diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..b772002 --- /dev/null +++ b/build.gradle @@ -0,0 +1,25 @@ +plugins { + // see https://fabricmc.net/develop/ for new versions + id 'net.fabricmc.fabric-loom-remap' version '1.16-SNAPSHOT' apply false + // see https://projects.neoforged.net/neoforged/moddevgradle for new versions + id 'net.neoforged.moddev' version '2.0.140' apply false + // see // https://github.com/modmuss50/mod-publish-plugin for new versions + id "me.modmuss50.mod-publish-plugin" version "1.1.0" apply false + + id 'com.diffplug.spotless' version '7.2.1' + id "checkstyle" +} + +allprojects { + apply plugin: 'com.diffplug.spotless' + + spotless { + format 'misc', { + target '*.gradle', '.gitattributes', '.gitignore' + + trimTrailingWhitespace() + leadingTabsToSpaces() + endWithNewline() + } + } +} diff --git a/build/reports/problems/problems-report.html b/build/reports/problems/problems-report.html new file mode 100644 index 0000000..5c058eb --- /dev/null +++ b/build/reports/problems/problems-report.html @@ -0,0 +1,666 @@ + + + + + + + + + + + + + Gradle Configuration Cache + + + +
+ +
+ Loading... +
+ + + + + + diff --git a/build/tmp/spotless-register-dependencies b/build/tmp/spotless-register-dependencies new file mode 100644 index 0000000..56a6051 --- /dev/null +++ b/build/tmp/spotless-register-dependencies @@ -0,0 +1 @@ +1 \ No newline at end of file diff --git a/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.bin b/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.bin new file mode 100644 index 0000000..148bc96 Binary files /dev/null and b/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.bin differ diff --git a/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.lock b/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.lock new file mode 100644 index 0000000..9801bf0 Binary files /dev/null and b/buildSrc/.gradle/9.5.0/executionHistory/executionHistory.lock differ diff --git a/buildSrc/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/buildSrc/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000..1dd97e5 Binary files /dev/null and b/buildSrc/.gradle/buildOutputCleanup/buildOutputCleanup.lock differ diff --git a/buildSrc/.gradle/buildOutputCleanup/cache.properties b/buildSrc/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 0000000..9191a78 --- /dev/null +++ b/buildSrc/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Mon May 11 11:35:36 EEST 2026 +gradle.version=9.5.0 diff --git a/buildSrc/.gradle/buildOutputCleanup/outputFiles.bin b/buildSrc/.gradle/buildOutputCleanup/outputFiles.bin new file mode 100644 index 0000000..3470963 Binary files /dev/null and b/buildSrc/.gradle/buildOutputCleanup/outputFiles.bin differ diff --git a/buildSrc/.gradle/file-system.probe b/buildSrc/.gradle/file-system.probe new file mode 100644 index 0000000..537abcd Binary files /dev/null and b/buildSrc/.gradle/file-system.probe differ diff --git a/buildSrc/build.gradle b/buildSrc/build.gradle new file mode 100644 index 0000000..1957c33 --- /dev/null +++ b/buildSrc/build.gradle @@ -0,0 +1,3 @@ +plugins { + id 'groovy-gradle-plugin' +} \ No newline at end of file diff --git a/buildSrc/build/classes/java/main/MultiloaderCommonPlugin.class b/buildSrc/build/classes/java/main/MultiloaderCommonPlugin.class new file mode 100644 index 0000000..414e861 Binary files /dev/null and b/buildSrc/build/classes/java/main/MultiloaderCommonPlugin.class differ diff --git a/buildSrc/build/classes/java/main/MultiloaderLoaderPlugin.class b/buildSrc/build/classes/java/main/MultiloaderLoaderPlugin.class new file mode 100644 index 0000000..7b66fff Binary files /dev/null and b/buildSrc/build/classes/java/main/MultiloaderLoaderPlugin.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderCommonPlugin.java b/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderCommonPlugin.java new file mode 100644 index 0000000..f6f76cb --- /dev/null +++ b/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderCommonPlugin.java @@ -0,0 +1,45 @@ +//CHECKSTYLE:OFF +import org.gradle.util.GradleVersion; +import org.gradle.groovy.scripts.BasicScript; +import org.gradle.groovy.scripts.ScriptSource; +import org.gradle.groovy.scripts.TextResourceScriptSource; +import org.gradle.internal.resource.StringTextResource; +/** + * Precompiled multiloader-common script plugin. + **/ +@SuppressWarnings("DefaultPackage") +public class MultiloaderCommonPlugin implements org.gradle.api.Plugin { + private static final String MIN_SUPPORTED_GRADLE_VERSION = "7.0"; + @Override + public void apply(org.gradle.api.internal.project.ProjectInternal target) { + assertSupportedByCurrentGradleVersion(); + try { + Class pluginsBlockClass = Class.forName("cp_precompiled_MultiloaderCommon").asSubclass(BasicScript.class); + BasicScript pluginsBlockScript = pluginsBlockClass.getDeclaredConstructor().newInstance(); + pluginsBlockScript.setScriptSource(scriptSource(pluginsBlockClass)); + pluginsBlockScript.init(target, target.getServices()); + pluginsBlockScript.run(); + target.getPluginManager().apply("java-library"); + target.getPluginManager().apply("maven-publish"); + target.getPluginManager().apply("checkstyle"); + + + Class precompiledScriptClass = Class.forName("precompiled_MultiloaderCommon").asSubclass(BasicScript.class); + BasicScript script = precompiledScriptClass.getDeclaredConstructor().newInstance(); + script.setScriptSource(scriptSource(precompiledScriptClass)); + script.init(target, target.getServices()); + script.run(); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + private static ScriptSource scriptSource(Class scriptClass) { + return new TextResourceScriptSource(new StringTextResource(scriptClass.getSimpleName(), "")); + } + private static void assertSupportedByCurrentGradleVersion() { + if (GradleVersion.current().getBaseVersion().compareTo(GradleVersion.version(MIN_SUPPORTED_GRADLE_VERSION)) < 0) { + throw new RuntimeException("Precompiled Groovy script plugins built by Gradle 9.5.0 require Gradle "+MIN_SUPPORTED_GRADLE_VERSION+" or higher"); + } + } +} +//CHECKSTYLE:ON diff --git a/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderLoaderPlugin.java b/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderLoaderPlugin.java new file mode 100644 index 0000000..f85858f --- /dev/null +++ b/buildSrc/build/groovy-dsl-plugins/output/adapter-src/MultiloaderLoaderPlugin.java @@ -0,0 +1,44 @@ +//CHECKSTYLE:OFF +import org.gradle.util.GradleVersion; +import org.gradle.groovy.scripts.BasicScript; +import org.gradle.groovy.scripts.ScriptSource; +import org.gradle.groovy.scripts.TextResourceScriptSource; +import org.gradle.internal.resource.StringTextResource; +/** + * Precompiled multiloader-loader script plugin. + **/ +@SuppressWarnings("DefaultPackage") +public class MultiloaderLoaderPlugin implements org.gradle.api.Plugin { + private static final String MIN_SUPPORTED_GRADLE_VERSION = "7.0"; + @Override + public void apply(org.gradle.api.internal.project.ProjectInternal target) { + assertSupportedByCurrentGradleVersion(); + try { + Class pluginsBlockClass = Class.forName("cp_precompiled_MultiloaderLoader").asSubclass(BasicScript.class); + BasicScript pluginsBlockScript = pluginsBlockClass.getDeclaredConstructor().newInstance(); + pluginsBlockScript.setScriptSource(scriptSource(pluginsBlockClass)); + pluginsBlockScript.init(target, target.getServices()); + pluginsBlockScript.run(); + target.getPluginManager().apply("multiloader-common"); + target.getPluginManager().apply("me.modmuss50.mod-publish-plugin"); + + + Class precompiledScriptClass = Class.forName("precompiled_MultiloaderLoader").asSubclass(BasicScript.class); + BasicScript script = precompiledScriptClass.getDeclaredConstructor().newInstance(); + script.setScriptSource(scriptSource(precompiledScriptClass)); + script.init(target, target.getServices()); + script.run(); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + private static ScriptSource scriptSource(Class scriptClass) { + return new TextResourceScriptSource(new StringTextResource(scriptClass.getSimpleName(), "")); + } + private static void assertSupportedByCurrentGradleVersion() { + if (GradleVersion.current().getBaseVersion().compareTo(GradleVersion.version(MIN_SUPPORTED_GRADLE_VERSION)) < 0) { + throw new RuntimeException("Precompiled Groovy script plugins built by Gradle 9.5.0 require Gradle "+MIN_SUPPORTED_GRADLE_VERSION+" or higher"); + } + } +} +//CHECKSTYLE:ON diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class new file mode 100644 index 0000000..0e362a1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure1.class new file mode 100644 index 0000000..c387733 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class new file mode 100644 index 0000000..edaa369 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49.class new file mode 100644 index 0000000..61ca1e3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure49.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class new file mode 100644 index 0000000..83bb022 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class new file mode 100644 index 0000000..61dca9d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class new file mode 100644 index 0000000..d629b6e Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50.class new file mode 100644 index 0000000..55b3e0c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10$_closure50.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10.class new file mode 100644 index 0000000..2eeb377 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure10.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure2.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure2.class new file mode 100644 index 0000000..5d9494f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure2.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class new file mode 100644 index 0000000..b042ddf Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class new file mode 100644 index 0000000..cb3fc78 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class new file mode 100644 index 0000000..8e2cedf Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12.class new file mode 100644 index 0000000..55b65ac Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure12.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class new file mode 100644 index 0000000..b64c2ff Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class new file mode 100644 index 0000000..a3545c6 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class new file mode 100644 index 0000000..e3c223b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13.class new file mode 100644 index 0000000..eb674d4 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure13.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure14.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure14.class new file mode 100644 index 0000000..a140573 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure14.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure15.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure15.class new file mode 100644 index 0000000..3467955 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure15.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure16.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure16.class new file mode 100644 index 0000000..7ba1976 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure16.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure17.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure17.class new file mode 100644 index 0000000..85d826a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure17.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class new file mode 100644 index 0000000..a7299b5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class new file mode 100644 index 0000000..f4b4026 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class new file mode 100644 index 0000000..b0cd0e3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18.class new file mode 100644 index 0000000..55e03ed Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure18.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class new file mode 100644 index 0000000..3ac9011 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class new file mode 100644 index 0000000..1e8dcd7 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class new file mode 100644 index 0000000..2ef3cd5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19.class new file mode 100644 index 0000000..1825076 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure19.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure20.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure20.class new file mode 100644 index 0000000..0d3551d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure20.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class new file mode 100644 index 0000000..d64f68d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21.class new file mode 100644 index 0000000..d9ecb5f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure21.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure22.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure22.class new file mode 100644 index 0000000..101f2de Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure22.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure23.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure23.class new file mode 100644 index 0000000..b401fa5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure23.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure24.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure24.class new file mode 100644 index 0000000..f13cff1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3$_closure24.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3.class new file mode 100644 index 0000000..44dd207 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure3.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure38.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure38.class new file mode 100644 index 0000000..1728d4d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure38.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure39.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure39.class new file mode 100644 index 0000000..0b2759b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure39.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure40.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure40.class new file mode 100644 index 0000000..36f38c8 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4$_closure40.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4.class new file mode 100644 index 0000000..046661c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure4.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure41.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure41.class new file mode 100644 index 0000000..658e7d0 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure41.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure42.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure42.class new file mode 100644 index 0000000..f81f5b4 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5$_closure42.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5.class new file mode 100644 index 0000000..0c34299 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure5.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class new file mode 100644 index 0000000..89ab0dd Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43.class new file mode 100644 index 0000000..14983bc Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6$_closure43.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6.class new file mode 100644 index 0000000..5458a25 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure6.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class new file mode 100644 index 0000000..c1ded77 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45.class new file mode 100644 index 0000000..8bffe0c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure45.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure46.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure46.class new file mode 100644 index 0000000..2f1a241 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7$_closure46.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7.class new file mode 100644 index 0000000..3479c36 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure7.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8$_closure48.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8$_closure48.class new file mode 100644 index 0000000..76d0136 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8$_closure48.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8.class new file mode 100644 index 0000000..0411b46 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure8.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure9.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure9.class new file mode 100644 index 0000000..92288f3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon$_run_closure9.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon.class new file mode 100644 index 0000000..5009f5b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderCommon.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure8.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure8.class new file mode 100644 index 0000000..878e6db Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure8.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure9.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure9.class new file mode 100644 index 0000000..ae39ce2 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1$_closure9.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1.class new file mode 100644 index 0000000..7526444 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class new file mode 100644 index 0000000..d6be7f0 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10.class new file mode 100644 index 0000000..9f47c4f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2$_closure10.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2.class new file mode 100644 index 0000000..bb6783b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure2.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure3.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure3.class new file mode 100644 index 0000000..bbb4204 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure3.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure4.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure4.class new file mode 100644 index 0000000..573f1c9 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure4.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure5.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure5.class new file mode 100644 index 0000000..e27aa99 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure5.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure6.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure6.class new file mode 100644 index 0000000..d688df2 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure6.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure12.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure12.class new file mode 100644 index 0000000..5181243 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure12.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure13.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure13.class new file mode 100644 index 0000000..d96d9ac Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure13.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure14.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure14.class new file mode 100644 index 0000000..f79d8e5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure14.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class new file mode 100644 index 0000000..4e86644 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15.class new file mode 100644 index 0000000..6c514a1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7$_closure15.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7.class new file mode 100644 index 0000000..ee7e2fd Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader$_run_closure7.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader.class new file mode 100644 index 0000000..d13213b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-classes/precompiled_MultiloaderLoader.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon$_run_closure1.class new file mode 100644 index 0000000..12b7dbc Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon.class new file mode 100644 index 0000000..4b7625a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderCommon.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader$_run_closure1.class new file mode 100644 index 0000000..2ed808a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader.class new file mode 100644 index 0000000..92f129f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests-staging/cp_precompiled_MultiloaderLoader.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon$_run_closure1.class new file mode 100644 index 0000000..12b7dbc Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon.class new file mode 100644 index 0000000..4b7625a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/cp_precompiled_MultiloaderCommon.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/metadata.bin b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/metadata.bin new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-common/metadata.bin differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader$_run_closure1.class new file mode 100644 index 0000000..2ed808a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader.class b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader.class new file mode 100644 index 0000000..92f129f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/cp_precompiled_MultiloaderLoader.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/metadata.bin b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/metadata.bin new file mode 100644 index 0000000..f76dd23 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/output/plugin-requests/multiloader-loader/metadata.bin differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class new file mode 100644 index 0000000..0e362a1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_createModVersionRange_closure11.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure1.class new file mode 100644 index 0000000..c387733 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class new file mode 100644 index 0000000..edaa369 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49$_closure51.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49.class new file mode 100644 index 0000000..61ca1e3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure49.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class new file mode 100644 index 0000000..83bb022 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure53.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class new file mode 100644 index 0000000..61dca9d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52$_closure54.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class new file mode 100644 index 0000000..d629b6e Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50$_closure52.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50.class new file mode 100644 index 0000000..55b3e0c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10$_closure50.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10.class new file mode 100644 index 0000000..2eeb377 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure10.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure2.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure2.class new file mode 100644 index 0000000..5d9494f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure2.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class new file mode 100644 index 0000000..b042ddf Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25$_closure27.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class new file mode 100644 index 0000000..cb3fc78 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure25.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class new file mode 100644 index 0000000..8e2cedf Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12$_closure26.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12.class new file mode 100644 index 0000000..55b65ac Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure12.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class new file mode 100644 index 0000000..b64c2ff Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure28.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class new file mode 100644 index 0000000..a3545c6 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure29.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class new file mode 100644 index 0000000..e3c223b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13$_closure30.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13.class new file mode 100644 index 0000000..eb674d4 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure13.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure14.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure14.class new file mode 100644 index 0000000..a140573 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure14.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure15.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure15.class new file mode 100644 index 0000000..3467955 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure15.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure16.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure16.class new file mode 100644 index 0000000..7ba1976 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure16.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure17.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure17.class new file mode 100644 index 0000000..85d826a Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure17.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class new file mode 100644 index 0000000..a7299b5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31$_closure33.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class new file mode 100644 index 0000000..f4b4026 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure31.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class new file mode 100644 index 0000000..b0cd0e3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18$_closure32.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18.class new file mode 100644 index 0000000..55e03ed Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure18.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class new file mode 100644 index 0000000..3ac9011 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34$_closure36.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class new file mode 100644 index 0000000..1e8dcd7 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure34.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class new file mode 100644 index 0000000..2ef3cd5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19$_closure35.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19.class new file mode 100644 index 0000000..1825076 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure19.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure20.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure20.class new file mode 100644 index 0000000..0d3551d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure20.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class new file mode 100644 index 0000000..d64f68d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21$_closure37.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21.class new file mode 100644 index 0000000..d9ecb5f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure21.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure22.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure22.class new file mode 100644 index 0000000..101f2de Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure22.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure23.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure23.class new file mode 100644 index 0000000..b401fa5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure23.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure24.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure24.class new file mode 100644 index 0000000..f13cff1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3$_closure24.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3.class new file mode 100644 index 0000000..44dd207 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure3.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure38.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure38.class new file mode 100644 index 0000000..1728d4d Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure38.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure39.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure39.class new file mode 100644 index 0000000..0b2759b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure39.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure40.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure40.class new file mode 100644 index 0000000..36f38c8 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4$_closure40.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4.class new file mode 100644 index 0000000..046661c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure4.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure41.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure41.class new file mode 100644 index 0000000..658e7d0 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure41.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure42.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure42.class new file mode 100644 index 0000000..f81f5b4 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5$_closure42.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5.class new file mode 100644 index 0000000..0c34299 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure5.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class new file mode 100644 index 0000000..89ab0dd Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43$_closure44.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43.class new file mode 100644 index 0000000..14983bc Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6$_closure43.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6.class new file mode 100644 index 0000000..5458a25 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure6.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class new file mode 100644 index 0000000..c1ded77 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45$_closure47.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45.class new file mode 100644 index 0000000..8bffe0c Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure45.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure46.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure46.class new file mode 100644 index 0000000..2f1a241 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7$_closure46.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7.class new file mode 100644 index 0000000..3479c36 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure7.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8$_closure48.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8$_closure48.class new file mode 100644 index 0000000..76d0136 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8$_closure48.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8.class new file mode 100644 index 0000000..0411b46 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure8.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure9.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure9.class new file mode 100644 index 0000000..92288f3 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon$_run_closure9.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon.class new file mode 100644 index 0000000..5009f5b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-common/precompiled_MultiloaderCommon.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure8.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure8.class new file mode 100644 index 0000000..878e6db Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure8.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure9.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure9.class new file mode 100644 index 0000000..ae39ce2 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1$_closure9.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1.class new file mode 100644 index 0000000..7526444 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure1.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class new file mode 100644 index 0000000..d6be7f0 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10$_closure11.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10.class new file mode 100644 index 0000000..9f47c4f Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2$_closure10.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2.class new file mode 100644 index 0000000..bb6783b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure2.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure3.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure3.class new file mode 100644 index 0000000..bbb4204 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure3.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure4.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure4.class new file mode 100644 index 0000000..573f1c9 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure4.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure5.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure5.class new file mode 100644 index 0000000..e27aa99 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure5.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure6.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure6.class new file mode 100644 index 0000000..d688df2 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure6.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure12.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure12.class new file mode 100644 index 0000000..5181243 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure12.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure13.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure13.class new file mode 100644 index 0000000..d96d9ac Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure13.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure14.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure14.class new file mode 100644 index 0000000..f79d8e5 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure14.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class new file mode 100644 index 0000000..4e86644 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15$_closure16.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15.class new file mode 100644 index 0000000..6c514a1 Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7$_closure15.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7.class new file mode 100644 index 0000000..ee7e2fd Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader$_run_closure7.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader.class b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader.class new file mode 100644 index 0000000..d13213b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/classes/multiloader-loader/precompiled_MultiloaderLoader.class differ diff --git a/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-common/metadata.bin b/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-common/metadata.bin new file mode 100644 index 0000000..03afaa5 --- /dev/null +++ b/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-common/metadata.bin @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-loader/metadata.bin b/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-loader/metadata.bin new file mode 100644 index 0000000..bdc955b Binary files /dev/null and b/buildSrc/build/groovy-dsl-plugins/work/metadata/multiloader-loader/metadata.bin differ diff --git a/buildSrc/build/libs/buildSrc.jar b/buildSrc/build/libs/buildSrc.jar new file mode 100644 index 0000000..54e12ee Binary files /dev/null and b/buildSrc/build/libs/buildSrc.jar differ diff --git a/buildSrc/build/pluginDescriptors/multiloader-common.properties b/buildSrc/build/pluginDescriptors/multiloader-common.properties new file mode 100644 index 0000000..cc557e8 --- /dev/null +++ b/buildSrc/build/pluginDescriptors/multiloader-common.properties @@ -0,0 +1 @@ +implementation-class=MultiloaderCommonPlugin diff --git a/buildSrc/build/pluginDescriptors/multiloader-loader.properties b/buildSrc/build/pluginDescriptors/multiloader-loader.properties new file mode 100644 index 0000000..f50dfac --- /dev/null +++ b/buildSrc/build/pluginDescriptors/multiloader-loader.properties @@ -0,0 +1 @@ +implementation-class=MultiloaderLoaderPlugin diff --git a/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-common.properties b/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-common.properties new file mode 100644 index 0000000..cc557e8 --- /dev/null +++ b/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-common.properties @@ -0,0 +1 @@ +implementation-class=MultiloaderCommonPlugin diff --git a/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-loader.properties b/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-loader.properties new file mode 100644 index 0000000..f50dfac --- /dev/null +++ b/buildSrc/build/resources/main/META-INF/gradle-plugins/multiloader-loader.properties @@ -0,0 +1 @@ +implementation-class=MultiloaderLoaderPlugin diff --git a/buildSrc/build/tmp/compileJava/previous-compilation-data.bin b/buildSrc/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000..cd1d524 Binary files /dev/null and b/buildSrc/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/buildSrc/build/tmp/jar/MANIFEST.MF b/buildSrc/build/tmp/jar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/buildSrc/build/tmp/jar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/buildSrc/src/main/groovy/multiloader-common.gradle b/buildSrc/src/main/groovy/multiloader-common.gradle new file mode 100644 index 0000000..e1c47c2 --- /dev/null +++ b/buildSrc/src/main/groovy/multiloader-common.gradle @@ -0,0 +1,212 @@ +plugins { + id 'java-library' + id 'maven-publish' + id "checkstyle" +} + +base { + archivesName = "${mod_id}-${project.name}-${minecraft_version}" +} + +java { + toolchain.languageVersion = JavaLanguageVersion.of(java_version) + withSourcesJar() +// withJavadocJar() +} + +repositories { + mavenCentral() + // https://docs.gradle.org/current/userguide/declaring_repositories.html#declaring_content_exclusively_found_in_one_repository + exclusiveContent { + forRepository { + maven { + name = 'Sponge' + url = 'https://repo.spongepowered.org/repository/maven-public' + } + } + filter { includeGroupAndSubgroups('org.spongepowered') } + } + exclusiveContent { + forRepositories( + maven { + name = 'ParchmentMC' + url = 'https://maven.parchmentmc.org/' + }, + maven { + name = "NeoForge" + url = 'https://maven.neoforged.net/releases' + } + ) + filter { includeGroup('org.parchmentmc.data') } + } + maven { + name = 'BlameJared' + url = 'https://maven.blamejared.com' + } + + maven { url = "https://maven.ithundxr.dev/hidden" } // Registrate + maven { url = "https://maven.ithundxr.dev/snapshots" } // Registrate + maven { url = "https://maven.createmod.net" } // Ponder + + exclusiveContent { + forRepository { + maven { + name = "Modrinth" + url = "https://api.modrinth.com/maven" + } + } + filter { + includeGroup "maven.modrinth" + } + } + + exclusiveContent { + forRepository { + maven { + url = "https://cursemaven.com" + } + } + filter { + includeGroup "curse.maven" + } + } + + maven { url = "https://maven.tterrag.com" } // Flywheel + + maven { + url = "https://maven.squiddev.cc" + content { + includeGroup("cc.tweaked") + } + } + maven { url = "https://raw.githubusercontent.com/Fuzss/modresources/main/maven/" } + + maven { + name = "Mortuusars Github Maven" + url = "https://raw.githubusercontent.com/mortuusars/resources/main/maven/" + } + maven { + url = "https://maven.ryanhcode.dev/releases" + } +} + +dependencies { + compileOnly "maven.modrinth:lithium:mc1.21.1-0.15.3-neoforge" + compileOnly "maven.modrinth:sodium:$sodium_version" + compileOnly "maven.modrinth:iris:$iris_version" + compileOnly "maven.modrinth:distanthorizons:$distant_horizons_version" + compileOnly("cc.tweaked:cc-tweaked-$minecraft_version-forge:$cc_tweaked_version") + compileOnly("io.github.mortuusars.exposure:exposure-${minecraft_version}-neoforge:${exposure_version}") { transitive = false } + compileOnly("maven.modrinth:jade:${project.jade_version}+neoforge") { transitive = false } + compileOnly("maven.modrinth:jade-addons-forge:${project.jade_addons_version}+neoforge") { transitive = false } + compileOnly("maven.modrinth:moonlight:${project.moonlight_version}-neoforge") + compileOnly("curse.maven:vista-1368607:$vista_version") +} + +// Declare capabilities on the outgoing configurations. +// Read more about capabilities here: https://docs.gradle.org/current/userguide/component_capabilities.html#sec:declaring-additional-capabilities-for-a-local-component +['apiElements', 'runtimeElements', 'sourcesElements'/*, 'javadocElements'*/].each { variant -> + configurations."$variant".outgoing { + capability("$group:${base.archivesName.get()}:$version") + capability("$group:$mod_id-${project.name}-${minecraft_version}:$version") + capability("$group:$mod_id:$version") + } + publishing.publications.configureEach { + suppressPomMetadataWarningsFor(variant) + } +} + +sourcesJar { + from(rootProject.file('LICENSE.md')) { + rename { "${it}" } + } +} + +jar { + from(rootProject.file('LICENSE.md')) { + rename { "${it}" } + } + + manifest { + attributes([ + 'Specification-Title' : mod_name, + 'Specification-Vendor' : mod_author, + 'Specification-Version' : project.jar.archiveVersion, + 'Implementation-Title' : project.name, + 'Implementation-Version': project.jar.archiveVersion, + 'Implementation-Vendor' : mod_author, + 'Built-On-Minecraft' : minecraft_version + ]) + } +} + +String createModVersionRange() { + def createNeoforgeVersion = create_version.split("-")[0] + def parts = createNeoforgeVersion.split("\\.").collect {it.toInteger() } + def newMinor = parts[1] + 1 + def upperBounds = "${parts[0]}.$newMinor.0" + + return "[$createNeoforgeVersion,$upperBounds)" +} + +processResources { + var expandProps = [ + 'version' : version, + 'group' : project.group, //Else we target the task's group. + 'minecraft_version' : minecraft_version, + 'minecraft_version_range' : minecraft_version_range, + 'create_version_range' : createModVersionRange(), + 'fabric_version' : fabric_version, + 'fabric_loader_version' : fabric_loader_version, + 'mod_name' : mod_name, + 'mod_author' : mod_author, + 'mod_id' : mod_id, + 'license' : license, + 'issues' : issues, + 'description' : project.description, + 'neoforge_version' : neoforge_version, + 'neoforge_loader_version_range': neoforge_loader_version_range, + 'credits' : credits, + 'java_version' : java_version, + 'veil_version' : veil_version, + 'sable_companion_version' : sable_companion_version + ] + + filesMatching(['pack.mcmeta', 'fabric.mod.json', 'META-INF/mods.toml', 'META-INF/neoforge.mods.toml', '*.mixins.json']) { + expand expandProps + } + inputs.properties(expandProps) +} + + +checkstyleMain { + configFile = rootProject.file('config/checkstyle/checkstyle.xml') + configProperties = [ 'checkstyle.cache.file': "${buildDir}/checkstyle.cache" ] + ignoreFailures = true + showViolations = true +} + +publishing { + publications { + mavenJava(MavenPublication) { + artifactId = base.archivesName.get() + from components.java + } + } + + repositories { + mavenLocal() + maven { + url = System.getenv('local_maven_url') + + credentials { + username = System.getenv('local_maven_user') + password = System.getenv('local_maven_token') + } + + authentication { + basic(BasicAuthentication) + } + } + } +} \ No newline at end of file diff --git a/buildSrc/src/main/groovy/multiloader-loader.gradle b/buildSrc/src/main/groovy/multiloader-loader.gradle new file mode 100644 index 0000000..f12f761 --- /dev/null +++ b/buildSrc/src/main/groovy/multiloader-loader.gradle @@ -0,0 +1,131 @@ +plugins { + id "multiloader-common" + id "me.modmuss50.mod-publish-plugin" // https://github.com/modmuss50/mod-publish-plugin +} + +configurations { + commonJava{ + canBeResolved = true + } + commonResources{ + canBeResolved = true + } +} + +dependencies { + compileOnly(project(':common')) { + capabilities { + requireCapability "$group:$mod_id" + } + } + commonJava project(path: ':common', configuration: 'commonJava') + commonResources project(path: ':common', configuration: 'commonResources') +} + +tasks.named('compileJava', JavaCompile) { + dependsOn(configurations.commonJava) + source(configurations.commonJava) +} + +processResources { + dependsOn(configurations.commonResources) + from(configurations.commonResources) +} + +tasks.named('javadoc', Javadoc).configure { + dependsOn(configurations.commonJava) + source(configurations.commonJava) +} + +tasks.named('sourcesJar', Jar) { + dependsOn(configurations.commonJava) + from(configurations.commonJava) + dependsOn(configurations.commonResources) + from(configurations.commonResources) +} + +publishMods { + def isFabric = project.name == "fabric" + def loaderName = isFabric ? "Fabric" : "NeoForge" + def changelogFile = rootProject.file("changelog.md") + + type = STABLE + + file = isFabric ? project.tasks.remapJar.archiveFile : jar.archiveFile + changelog = changelogFile.text + + version = "$project.version+mc$minecraft_version" + displayName = "$mod_name $loaderName $project.version for mc$minecraft_version" + modLoaders.add(project.name) + + curseforge { + accessToken = providers.environmentVariable("CURSEFORGE_API_KEY") + projectId = "1312371" + projectSlug = "sable" + minecraftVersions.add(minecraft_version) + + clientRequired = true + serverRequired = true + + if (project.name.contains("neoforge")) { + optional("create") + } + + if (isFabric) { + requires("fabric-api") + embeds("forge-config-api-port") + } + + embeds("veil-lib") + optional "imguimc" + } + + modrinth { + accessToken = providers.environmentVariable("MODRINTH_TOKEN") + projectId = "T9PomCSv" + minecraftVersions.add(minecraft_version) + + if (project.name.contains("neoforge")) { + optional("create") + } + + if (isFabric) { + requires("fabric-api") + embeds("forge-config-api-port") + } + + embeds("veil") + optional "imguimc" + } + + github { + repository = "ryanhcode/sable" + accessToken = providers.environmentVariable("GITHUB_TOKEN") + tagName = "mc$minecraft_version-$project.version-$project.name" + commitish = "main" + + file.unset() + file.unsetConvention() + + allowEmptyFiles = true + } + + // We only want to send one message + if (!isFabric) { + discord { + webhookUrl = providers.environmentVariable("DISCORD_WEBHOOK") + + avatarUrl = "https://cdn.modrinth.com/data/T9PomCSv/8c0a8c64c9a5a8d446d0aa23d244cb9b52314a1d.png" + username = "Sable Updates" + + def modrinthLink = "https://modrinth.com/mod/sable" + def curseForgeLink = "" + + setPlatforms(publishMods.platforms.modrinth) + + content = changelog.map { + "# Sable release $project.version \n$it\nModrinth: $modrinthLink\nCurseForge: $curseForgeLink" + } + } + } +} \ No newline at end of file diff --git a/common/build.gradle b/common/build.gradle new file mode 100644 index 0000000..51aa461 --- /dev/null +++ b/common/build.gradle @@ -0,0 +1,261 @@ +import org.apache.tools.ant.taskdefs.condition.Os +import net.jpountz.lz4.LZ4FrameOutputStream + +import java.nio.file.Files + +buildscript { + dependencies { + classpath 'at.yawk.lz4:lz4-java:1.11.0' + } +} + +plugins { + id 'multiloader-common' + id 'net.neoforged.moddev' +} + +def mac(arch) { + [triple: "${arch}-apple-darwin", suffix: "", arch: arch, os: "macos", ext: "dylib", lib: true] +} + +def linux(arch) { + [triple: "${arch}-unknown-linux-gnu", suffix: ".2.17", arch: arch, os: "linux", ext: "so", lib: true] +} + +def freebsd(arch) { + [triple: "${arch}-unknown-freebsd", suffix: "", arch: arch, os: "freebsd", ext: "so", lib: true] +} + +def windows(arch) { + [triple: "${arch}-pc-windows-msvc", suffix: "", arch: arch, os: "windows", ext: "dll", lib: false] +} + +def supportedTargets = [ + mac("x86_64"), + mac("aarch64"), + linux("x86_64"), + linux("aarch64"), + windows("x86_64"), + windows("aarch64"), +// freebsd("x86_64"), + // freebsd("aarch64"), +] +def pinnedRustVersion = 'nightly-2026-01-29' +def rustRootDir = file("src/main/rust") +def rustProjectDir = file("$rustRootDir/rapier") +def nativesDir = file("src/main/resources/natives/sable_rapier") +def cargoCacheDir = project.layout.buildDirectory.file("cargo").get().asFile +def docker = Os.isFamily(Os.FAMILY_MAC) ? "/usr/local/bin/docker" : "docker" +def xWinImage = 'sable-build-xwin' +def zigbuildImage = 'sable-build-zigbuild' + +def baseDockerCommand = [ + docker, + 'run', + '--rm', + '-v', + "$rustRootDir:/io", + '-v', + "$cargoCacheDir/git:/usr/local/cargo/git", + '-v', + "$cargoCacheDir/registry:/usr/local/cargo/registry", + '-w', + '/io/rapier', +] +project.ext.zigbuildCargo = [baseDockerCommand, zigbuildImage, 'cargo'].flatten() +project.ext.xWinCargo = [baseDockerCommand, xWinImage, 'cargo'].flatten() + +tasks.register('createContainersDirectory') { + doLast { + if (!cargoCacheDir.exists()) { + cargoCacheDir.mkdirs() + } + } +} + + +tasks.register('buildZigbuildImage', Exec) { + group = 'rust' + workingDir rustRootDir + commandLine docker, 'build', '-t', zigbuildImage, 'container/zigbuild', '--build-arg', "RUST_VERSION=${pinnedRustVersion}" + dependsOn createContainersDirectory +} +tasks.register('buildXWinImage', Exec) { + group = 'rust' + workingDir rustRootDir + commandLine docker, 'build', '-t', xWinImage, 'container/xwin', '--build-arg', "RUST_VERSION=${pinnedRustVersion}" + dependsOn createContainersDirectory +} + +tasks.register('buildImages') { + group = 'rust' + dependsOn buildZigbuildImage, buildXWinImage +} + +tasks.register('cleanRust', Exec) { + group = 'rust' + workingDir rustProjectDir + commandLine project.ext.zigbuildCargo + // only need to use zigbuild cargo since both containers share the same target folder + args 'clean' + dependsOn createContainersDirectory +} + +def compileRustTaskName = { target -> + "compileRust-${target.os}-${target.arch}" +} + +def commandLineForTarget(target) { + if (target.triple.contains('msvc')) { + [project.ext.xWinCargo, 'xwin', 'build', '--target', target.triple + target.suffix].flatten() + // support meme platforms, this does nothing by default because the target is disabled + } else if (target.triple == 'aarch64-unknown-freebsd') { + [project.ext.zigbuildCargo, 'zigbuild', '-Z', 'build-std', '--target', target.triple + target.suffix].flatten() + } else { + [project.ext.zigbuildCargo, 'zigbuild', '--target', target.triple + target.suffix].flatten() + } +} + +def nativesNameForTarget(target) { + "sable_rapier_${target.arch}_${target.os}.${target.ext}" +} + +supportedTargets.forEach { target -> + tasks.register(compileRustTaskName(target), Exec) { + group = 'rust' + workingDir rustProjectDir + description = "Cross-compiles natives for the ${target.triple} target" + def commands= commandLineForTarget(target) + commands.add('--release') + commandLine = commands + } +} + +tasks.register("compileRustDev", Exec) { + group = 'rust' + workingDir rustProjectDir + description = "Compiles debug natives" + commandLine = [project.ext.zigbuildCargo, 'zigbuild'].flatten() +} + +tasks.register('buildRustNatives') { + group = 'build' + description = 'Compiles all Rust natives and moves them to resources.' + + dependsOn = supportedTargets.stream().map(compileRustTaskName).collect() + finalizedBy copyRustNatives +} + +tasks.register('buildRustNativesDev') { + group = 'build' + description = 'Compiles all Rust natives and moves them to resources.' + + dependsOn compileRustDev + finalizedBy copyRustNativesDev +} + +tasks.register('copyRustNatives', Copy) { + group = 'rust' + into nativesDir + mustRunAfter(buildRustNatives) + + supportedTargets.forEach { target -> + from(file("$rustRootDir/target/${target.triple}/release/${if (target.lib) { "lib" } else { "" }}sable_rapier.${target.ext}")) { + rename { nativesNameForTarget(target) } + } + } + finalizedBy packRustNatives +} + +tasks.register('copyRustNativesDev', Copy) { + group = 'rust' + into nativesDir + mustRunAfter(buildRustNativesDev) + + supportedTargets.forEach { target -> + var library = file("$rustRootDir/target/debug/${if (target.lib) { "lib" } else { "" }}sable_rapier.${target.ext}") + if (!library.exists()) return + + from(library) { + rename { nativesNameForTarget(target) } + } + } + finalizedBy packRustNatives +} +tasks.register('packRustNatives', Zip) { + group = 'rust' + archiveFile.set file("${nativesDir}/sable_rapier_binaries.zip.l4z") + entryCompression = ZipEntryCompression.STORED + into nativesDir + + mustRunAfter copyRustNatives, copyRustNativesDev + supportedTargets.forEach { target -> + var f = nativesNameForTarget(target) + // No, you can't use rename here in case you were wondering. + from(file("${nativesDir}/${f}")) { eachFile { setPath f } } + } + doLast { + byte[] bytes = Files.readAllBytes(getArchiveFile().get().asFile.toPath()) + try (var f = new FileOutputStream(getArchiveFile().get().asFile)) { + try (var x = new LZ4FrameOutputStream(f, LZ4FrameOutputStream.BLOCKSIZE.SIZE_4MB, bytes.length, LZ4FrameOutputStream.FLG.Bits.BLOCK_INDEPENDENCE)) { + x.write(bytes) + } + } + supportedTargets.forEach { t -> + delete(file("${nativesDir}/${nativesNameForTarget(t)}")) + } + } +} + +neoForge { + neoFormVersion = neo_form_version + // Automatically enable AccessTransformers if the file exists + def at = file('src/main/resources/META-INF/accesstransformer.cfg') + if (at.exists()) { + accessTransformers.from(at.absolutePath) + } + parchment { + minecraftVersion = parchment_minecraft + mappingsVersion = parchment_version + } +} + +configurations { + commonJava { + canBeResolved = false + canBeConsumed = true + } + commonResources { + canBeResolved = false + canBeConsumed = true + } +} + +artifacts { + commonJava sourceSets.main.java.sourceDirectories.singleFile + commonResources sourceSets.main.resources.sourceDirectories.singleFile +} + +dependencies { + compileOnly "net.fabricmc:sponge-mixin:0.15.2+mixin.0.8.7" + + // fabric and neoforge both bundle mixinextras, so it is safe to use it in common + compileOnly "io.github.llamalad7:mixinextras-common:0.5.3" + annotationProcessor "io.github.llamalad7:mixinextras-common:0.5.3" + + implementation "org.apache.maven:maven-artifact:3.8.5" + + api "dev.ryanhcode.sable-companion:sable-companion-common-$minecraft_version:$sable_companion_version" + + implementation("foundry.veil:veil-common-${project.minecraft_version}:${project.veil_version}") { + exclude group: "maven.modrinth" + } + compileOnly("foundry.imguimc:imguimc-common-${project.minecraft_version}:${project.imguimc_version}") + + compileOnly("fuzs.forgeconfigapiport:forgeconfigapiport-fabric:${forgeconfigapiport_version}") { + transitive = false + } + + implementation "fuzs.forgeconfigapiport:forgeconfigapiport-common-neoforgeapi:${forgeconfigapiport_version}" + //source: https://github.com/Fuzss/forgeconfigapiport +} diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class b/common/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/Sable.class b/common/build/classes/java/main/dev/ryanhcode/sable/Sable.class new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/Sable.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/SableClient.class b/common/build/classes/java/main/dev/ryanhcode/sable/SableClient.class new file mode 100644 index 0000000..c666468 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/SableClient.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class b/common/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class b/common/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class b/common/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class new file mode 100644 index 0000000..89b8a65 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class b/common/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class new file mode 100644 index 0000000..c0e73eb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class new file mode 100644 index 0000000..1026631 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class new file mode 100644 index 0000000..aae566b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class new file mode 100644 index 0000000..c9ed17b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class new file mode 100644 index 0000000..af4022d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class new file mode 100644 index 0000000..733d33c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class new file mode 100644 index 0000000..610565f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class new file mode 100644 index 0000000..3464c21 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class new file mode 100644 index 0000000..39e9670 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class new file mode 100644 index 0000000..525fb26 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class new file mode 100644 index 0000000..5d66be0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class new file mode 100644 index 0000000..434344e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class new file mode 100644 index 0000000..1fc791c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class new file mode 100644 index 0000000..0c9d71d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class new file mode 100644 index 0000000..079f351 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class new file mode 100644 index 0000000..e6138d2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class new file mode 100644 index 0000000..10d2d8c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class new file mode 100644 index 0000000..51c0bfd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class new file mode 100644 index 0000000..08fd351 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class new file mode 100644 index 0000000..423b5c0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class new file mode 100644 index 0000000..8a0954a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class new file mode 100644 index 0000000..8771605 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class new file mode 100644 index 0000000..fd0a104 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class new file mode 100644 index 0000000..bce5725 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class new file mode 100644 index 0000000..2183483 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class new file mode 100644 index 0000000..2aec611 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class new file mode 100644 index 0000000..74ad06a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class new file mode 100644 index 0000000..42b9c14 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class new file mode 100644 index 0000000..5d54876 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class new file mode 100644 index 0000000..f305911 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class new file mode 100644 index 0000000..809312a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class new file mode 100644 index 0000000..198224c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class new file mode 100644 index 0000000..190dff9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class new file mode 100644 index 0000000..fbcbb69 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class new file mode 100644 index 0000000..58bb168 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class new file mode 100644 index 0000000..3b19972 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class b/common/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class new file mode 100644 index 0000000..4d52ba9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class b/common/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class new file mode 100644 index 0000000..5455a00 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class b/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class b/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class new file mode 100644 index 0000000..23e9c30 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class b/common/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class new file mode 100644 index 0000000..5eede4b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class new file mode 100644 index 0000000..c258c3d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class new file mode 100644 index 0000000..67dcfac Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class new file mode 100644 index 0000000..823d3b3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class new file mode 100644 index 0000000..7ef868b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class new file mode 100644 index 0000000..8ced17b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class new file mode 100644 index 0000000..61138b0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class new file mode 100644 index 0000000..16c06b8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class new file mode 100644 index 0000000..051093c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class new file mode 100644 index 0000000..20de185 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class new file mode 100644 index 0000000..e191a06 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class new file mode 100644 index 0000000..6e3eb14 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class new file mode 100644 index 0000000..d4c7c8c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class new file mode 100644 index 0000000..b3ab5e4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class new file mode 100644 index 0000000..cd7230f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class new file mode 100644 index 0000000..74363a0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class new file mode 100644 index 0000000..7d775de Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class new file mode 100644 index 0000000..8e21133 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class new file mode 100644 index 0000000..17ecb7f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class new file mode 100644 index 0000000..431bab0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class new file mode 100644 index 0000000..f7a69e9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class new file mode 100644 index 0000000..68138eb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class new file mode 100644 index 0000000..766c813 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class new file mode 100644 index 0000000..abdac57 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class new file mode 100644 index 0000000..539603e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..628beff Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class new file mode 100644 index 0000000..6d632ab Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..c2813a6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class new file mode 100644 index 0000000..a36e468 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class new file mode 100644 index 0000000..312294b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class new file mode 100644 index 0000000..cbacd2c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class new file mode 100644 index 0000000..909752d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class new file mode 100644 index 0000000..c471d1d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class new file mode 100644 index 0000000..a6c95c5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class new file mode 100644 index 0000000..b32c2f4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class new file mode 100644 index 0000000..8772a57 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class new file mode 100644 index 0000000..7d6062c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class new file mode 100644 index 0000000..cebd1f9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class new file mode 100644 index 0000000..1c8aba2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class new file mode 100644 index 0000000..78518da Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class new file mode 100644 index 0000000..535056a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class new file mode 100644 index 0000000..55d95e2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class new file mode 100644 index 0000000..3b188b7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class new file mode 100644 index 0000000..ae91fb9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class new file mode 100644 index 0000000..d7fce6b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class new file mode 100644 index 0000000..81657ad Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class new file mode 100644 index 0000000..f4af1c5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class new file mode 100644 index 0000000..a09ae3e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class new file mode 100644 index 0000000..cc00b9e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class new file mode 100644 index 0000000..509cbaa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class new file mode 100644 index 0000000..33c3a8b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class new file mode 100644 index 0000000..bf9116a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class new file mode 100644 index 0000000..95c9d01 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class new file mode 100644 index 0000000..32d4f9a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class new file mode 100644 index 0000000..88c2183 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..20c380a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..066f4d5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class new file mode 100644 index 0000000..262c341 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class new file mode 100644 index 0000000..e8c3768 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class new file mode 100644 index 0000000..51bae22 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class new file mode 100644 index 0000000..6034a80 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class new file mode 100644 index 0000000..e2ae5a9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class new file mode 100644 index 0000000..920550e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class new file mode 100644 index 0000000..394c68d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class new file mode 100644 index 0000000..fe54551 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class new file mode 100644 index 0000000..37db6d2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class new file mode 100644 index 0000000..d06fd51 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class new file mode 100644 index 0000000..a24bb03 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class new file mode 100644 index 0000000..83ef171 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class new file mode 100644 index 0000000..408d1e8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class new file mode 100644 index 0000000..76cd830 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class new file mode 100644 index 0000000..6b05ccd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class new file mode 100644 index 0000000..92ca85e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class new file mode 100644 index 0000000..1331e88 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class new file mode 100644 index 0000000..4cac8e2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class new file mode 100644 index 0000000..090e843 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class new file mode 100644 index 0000000..54676b9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class new file mode 100644 index 0000000..c8fff11 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class new file mode 100644 index 0000000..2b7041e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class new file mode 100644 index 0000000..9085f85 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class new file mode 100644 index 0000000..d1bd1cc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class new file mode 100644 index 0000000..6e19d5f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class new file mode 100644 index 0000000..ba06ff1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class new file mode 100644 index 0000000..de6dba5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class new file mode 100644 index 0000000..5ac31ca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class new file mode 100644 index 0000000..afc93f1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class new file mode 100644 index 0000000..ce58101 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class new file mode 100644 index 0000000..405e874 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class new file mode 100644 index 0000000..02318c4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class new file mode 100644 index 0000000..66c5ebe Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class new file mode 100644 index 0000000..5e5d783 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class new file mode 100644 index 0000000..11f86ca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class new file mode 100644 index 0000000..2b12481 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class new file mode 100644 index 0000000..2c3f203 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class new file mode 100644 index 0000000..9bfd627 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class new file mode 100644 index 0000000..5fd8f9e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class new file mode 100644 index 0000000..87393f4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class new file mode 100644 index 0000000..11cde9a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class new file mode 100644 index 0000000..eff0ad6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class new file mode 100644 index 0000000..75e676c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class new file mode 100644 index 0000000..b65537b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class new file mode 100644 index 0000000..74d0967 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class new file mode 100644 index 0000000..459d881 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class new file mode 100644 index 0000000..14015f7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class new file mode 100644 index 0000000..520b615 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class new file mode 100644 index 0000000..a874594 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class new file mode 100644 index 0000000..14e54bd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class new file mode 100644 index 0000000..0edffaf Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class new file mode 100644 index 0000000..a554055 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class new file mode 100644 index 0000000..9bd51e3 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class new file mode 100644 index 0000000..5cab9e8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class new file mode 100644 index 0000000..31a08cd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class new file mode 100644 index 0000000..e3fd49f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class new file mode 100644 index 0000000..400ca4f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class new file mode 100644 index 0000000..5fc6f2e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class new file mode 100644 index 0000000..85c89f5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class new file mode 100644 index 0000000..fb8a141 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class new file mode 100644 index 0000000..2a00017 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class new file mode 100644 index 0000000..5cfd483 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class new file mode 100644 index 0000000..ec87fd9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class new file mode 100644 index 0000000..24e8b4b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class new file mode 100644 index 0000000..1b09755 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class new file mode 100644 index 0000000..868fab1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class new file mode 100644 index 0000000..733e8f9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class new file mode 100644 index 0000000..47b40e1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class new file mode 100644 index 0000000..182b0a6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class new file mode 100644 index 0000000..d834279 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class new file mode 100644 index 0000000..1ceff3c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class new file mode 100644 index 0000000..7ca0481 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class new file mode 100644 index 0000000..1bce084 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class new file mode 100644 index 0000000..4a2067b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class new file mode 100644 index 0000000..0eb24df Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class new file mode 100644 index 0000000..43f455b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class new file mode 100644 index 0000000..10a4b5f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class new file mode 100644 index 0000000..304a6d0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class new file mode 100644 index 0000000..3c4388d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class new file mode 100644 index 0000000..7a61ffc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class new file mode 100644 index 0000000..1ef4e64 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class new file mode 100644 index 0000000..67de96e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class new file mode 100644 index 0000000..fd7340d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class new file mode 100644 index 0000000..bd39b56 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class new file mode 100644 index 0000000..bd5c0b9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class new file mode 100644 index 0000000..632880e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class new file mode 100644 index 0000000..d9f493d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class new file mode 100644 index 0000000..cfed937 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class new file mode 100644 index 0000000..25fe482 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class new file mode 100644 index 0000000..63104bb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class new file mode 100644 index 0000000..2e29cfa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class new file mode 100644 index 0000000..103f9c0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class new file mode 100644 index 0000000..6504207 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class new file mode 100644 index 0000000..bf9dde7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class new file mode 100644 index 0000000..f58a67e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class new file mode 100644 index 0000000..0ffdef2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class new file mode 100644 index 0000000..74d1e11 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class new file mode 100644 index 0000000..a86d790 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class new file mode 100644 index 0000000..fbdaafe Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class new file mode 100644 index 0000000..2a0dfa7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class b/common/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class b/common/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class new file mode 100644 index 0000000..44816f6 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class new file mode 100644 index 0000000..6da544f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class new file mode 100644 index 0000000..210fbc8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class new file mode 100644 index 0000000..9c5f1d2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class new file mode 100644 index 0000000..475d584 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class new file mode 100644 index 0000000..ae5fb75 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class new file mode 100644 index 0000000..e39006f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class new file mode 100644 index 0000000..6b03900 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class new file mode 100644 index 0000000..392731b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class new file mode 100644 index 0000000..8a68f11 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class new file mode 100644 index 0000000..4595c49 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class new file mode 100644 index 0000000..cd7f3a8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class new file mode 100644 index 0000000..9843ce5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class new file mode 100644 index 0000000..51d80a0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class new file mode 100644 index 0000000..e667cca Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class new file mode 100644 index 0000000..3c8a374 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class new file mode 100644 index 0000000..74cbc4c Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class new file mode 100644 index 0000000..360b03f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class new file mode 100644 index 0000000..753f554 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class new file mode 100644 index 0000000..67629db Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class new file mode 100644 index 0000000..de6168d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class new file mode 100644 index 0000000..73989be Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class new file mode 100644 index 0000000..971aa0e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class new file mode 100644 index 0000000..eb827a9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class new file mode 100644 index 0000000..1e6cd2f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class new file mode 100644 index 0000000..14a3c70 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class new file mode 100644 index 0000000..b62bea4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class new file mode 100644 index 0000000..71ed48b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class new file mode 100644 index 0000000..4bf05c8 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class new file mode 100644 index 0000000..345b09d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class new file mode 100644 index 0000000..d23c1f2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class new file mode 100644 index 0000000..08861aa Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class new file mode 100644 index 0000000..de79875 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class new file mode 100644 index 0000000..5e23b7d Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class new file mode 100644 index 0000000..7514c92 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class new file mode 100644 index 0000000..535c57f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class new file mode 100644 index 0000000..cd62410 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class new file mode 100644 index 0000000..5a8a580 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class new file mode 100644 index 0000000..267decd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class new file mode 100644 index 0000000..c2abb1b Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class new file mode 100644 index 0000000..5903e99 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class new file mode 100644 index 0000000..539578a Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class new file mode 100644 index 0000000..8f7f30e Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class new file mode 100644 index 0000000..22a8134 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class new file mode 100644 index 0000000..fad2235 Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class differ diff --git a/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class b/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class new file mode 100644 index 0000000..337387f Binary files /dev/null and b/common/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class differ diff --git a/common/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h b/common/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h new file mode 100644 index 0000000..76465da --- /dev/null +++ b/common/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/common/build/libs/sable-common-1.21.1-1.2.2-sources.jar b/common/build/libs/sable-common-1.21.1-1.2.2-sources.jar new file mode 100644 index 0000000..1dbc42f Binary files /dev/null and b/common/build/libs/sable-common-1.21.1-1.2.2-sources.jar differ diff --git a/common/build/libs/sable-common-1.21.1-1.2.2.jar b/common/build/libs/sable-common-1.21.1-1.2.2.jar new file mode 100644 index 0000000..91cdac4 Binary files /dev/null and b/common/build/libs/sable-common-1.21.1-1.2.2.jar differ diff --git a/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-client-extra-aka-minecraft-resources.jar b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-client-extra-aka-minecraft-resources.jar new file mode 100644 index 0000000..b26c422 Binary files /dev/null and b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-client-extra-aka-minecraft-resources.jar differ diff --git a/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-merged.jar b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-merged.jar new file mode 100644 index 0000000..96b35cc Binary files /dev/null and b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-merged.jar differ diff --git a/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-sources.jar b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-sources.jar new file mode 100644 index 0000000..e7f2a3e Binary files /dev/null and b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430-sources.jar differ diff --git a/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430.jar b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430.jar new file mode 100644 index 0000000..c4d36e1 Binary files /dev/null and b/common/build/moddev/artifacts/vanilla-1.21.1-20240808.144430.jar differ diff --git a/common/build/reports/checkstyle/main.html b/common/build/reports/checkstyle/main.html new file mode 100644 index 0000000..f826733 --- /dev/null +++ b/common/build/reports/checkstyle/main.html @@ -0,0 +1,73 @@ + + + + Checkstyle Violations + + + +

+ +

Checkstyle Results

+ +

+
+

Summary

+ + + + + + + +
Total files checkedTotal violationsFiles with violations
51600
+
+
+

Violations

+

+ No violations were found. +

+
+
+

+ Generated by Gradle 9.5.0 with Checkstyle 10.24.0. +

+ + diff --git a/common/build/reports/checkstyle/main.xml b/common/build/reports/checkstyle/main.xml new file mode 100644 index 0000000..9f1bd46 --- /dev/null +++ b/common/build/reports/checkstyle/main.xml @@ -0,0 +1,1035 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/common/build/resources/main/META-INF/accesstransformer.cfg b/common/build/resources/main/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..f24e1c9 --- /dev/null +++ b/common/build/resources/main/META-INF/accesstransformer.cfg @@ -0,0 +1,67 @@ +public net.minecraft.client.renderer.block.ModelBlockRenderer$Cache +public net.minecraft.server.level.ChunkHolder entityTickingChunkFuture +public net.minecraft.server.level.ChunkHolder tickingChunkFuture +public net.minecraft.server.level.ChunkHolder fullChunkFuture +public net.minecraft.client.renderer.block.BlockRenderDispatcher modelRenderer +public net.minecraft.client.renderer.block.ModelBlockRenderer$AmbientOcclusionFace +public net.minecraft.server.level.ServerChunkCache$MainThreadExecutor +public net.minecraft.client.renderer.LevelRenderer cullingFrustum +public net.minecraft.world.entity.projectile.AbstractHurtingProjectile accelerationPower +public net.minecraft.world.entity.projectile.Projectile Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +public-f net.minecraft.client.renderer.chunk.SectionRenderDispatcher bufferPool +public-f net.minecraft.world.entity.ai.attributes.AttributeSupplier instances +public net.minecraft.server.level.ServerPlayer findRespawnAndUseSpawnBlock(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection updateGlobalBlockEntities(Ljava/util/Collection;)V +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection setCompiled(Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +public net.minecraft.world.entity.Entity removalReason +public net.minecraft.world.entity.Entity levelCallback +public-f net.minecraft.world.entity.Entity getEyePosition(F)Lnet/minecraft/world/phys/Vec3; +public-f net.minecraft.world.entity.Entity setRemoved(Lnet/minecraft/world/entity/Entity$RemovalReason;)V +public net.minecraft.server.level.ChunkLevel ENTITY_TICKING_LEVEL +public net.minecraft.server.level.ChunkLevel BLOCK_TICKING_LEVEL +public net.minecraft.world.entity.decoration.HangingEntity calculateSupportBox()Lnet/minecraft/world/phys/AABB; +public net.minecraft.world.entity.LivingEntity dismountVehicle(Lnet/minecraft/world/entity/Entity;)V +public net.minecraft.world.level.lighting.LevelLightEngine skyEngine +public net.minecraft.world.level.lighting.LevelLightEngine blockEngine +public net.minecraft.server.level.ThreadedLevelLightEngine runUpdate()V +public net.minecraft.server.level.ThreadedLevelLightEngine updateChunkStatus(Lnet/minecraft/world/level/ChunkPos;)V +public net.minecraft.client.renderer.block.ModelBlockRenderer CACHE +public net.minecraft.server.network.PlayerChunkSender sendChunk(Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V +public net.minecraft.server.network.ServerCommonPacketListenerImpl connection +public net.minecraft.client.multiplayer.ClientChunkCache$Storage +public net.minecraft.network.Connection channel +public net.minecraft.client.renderer.RenderStateShard name +public net.minecraft.client.renderer.ShaderInstance samplerLocations +public net.minecraft.world.level.entity.PersistentEntitySectionManager sectionStorage +public net.minecraft.world.level.storage.DimensionDataStorage dataFolder +public net.minecraft.client.renderer.GameRenderer getFov(Lnet/minecraft/client/Camera;FZ)D +public-f net.minecraft.server.level.GenerationChunkHolder rescheduleChunkTask(Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V +public net.minecraft.client.particle.Particle zo +public net.minecraft.client.particle.Particle yo +public net.minecraft.client.particle.Particle xo +public net.minecraft.client.particle.Particle x +public net.minecraft.client.particle.Particle y +public net.minecraft.client.particle.Particle zd +public net.minecraft.client.particle.Particle z +public net.minecraft.client.particle.Particle yd +public net.minecraft.client.particle.Particle xd +public net.minecraft.world.level.ClipContext collisionContext +public net.minecraft.world.level.ClipContext fluid +public net.minecraft.world.level.ClipContext block +public net.minecraft.server.level.ChunkMap$DistanceManager +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +public net.minecraft.server.level.ChunkMap unloadQueue +public net.minecraft.server.level.ChunkMap toDrop +public net.minecraft.server.level.ChunkMap updatingChunkMap +public net.minecraft.server.level.ChunkMap visibleChunkMap +public net.minecraft.server.level.ChunkMap modified +public net.minecraft.server.level.ChunkMap chunkSaveCooldowns +public net.minecraft.server.level.ChunkMap scheduleUnload(JLnet/minecraft/server/level/ChunkHolder;)V +public net.minecraft.server.level.ChunkMap onFullChunkStatusChange(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V +public net.minecraft.server.level.ChunkMap getChunks()Ljava/lang/Iterable; +public net.minecraft.server.level.ChunkMap saveChunkIfNeeded(Lnet/minecraft/server/level/ChunkHolder;)Z +public net.minecraft.server.level.ServerLevel entityManager + diff --git a/common/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion b/common/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion new file mode 100644 index 0000000..a9131c7 --- /dev/null +++ b/common/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion @@ -0,0 +1 @@ +dev.ryanhcode.sable.ActiveSableCompanion \ No newline at end of file diff --git a/common/build/resources/main/architectury.common.json b/common/build/resources/main/architectury.common.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/common/build/resources/main/architectury.common.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/common/build/resources/main/assets/sable/lang/en_us.json b/common/build/resources/main/assets/sable/lang/en_us.json new file mode 100644 index 0000000..13042f0 --- /dev/null +++ b/common/build/resources/main/assets/sable/lang/en_us.json @@ -0,0 +1,148 @@ +{ + "menu.savingSubLevels": "Saving sub-levels", + + "commands.sable.helper.missing_sub_level_container": "Couldn't find sub-level container for this level!", + "commands.sable.helper.missing_physics_system": "Couldn't find sub-level physics system for this level!", + + "commands.sable.sub_level": "sub-level", + "commands.sable.sub_levels": "%s sub-levels", + + "commands.sable.physics.global": "global", + "commands.sable.physics.local": "local", + + "commands.sable.spawn.success": "Spawned %s", + "commands.sable.spawn.clone.success": "Cloned sublevel", + + "commands.sable.physics.impulse.angular.success": "Applied %s angular impulse to %s of %s", + "commands.sable.physics.impulse.linear.success": "Applied %s linear impulse to %s of %s", + "commands.sable.physics.rotation.add.success": "Added %s rotation to %s of %s", + "commands.sable.physics.rotation.set.success": "Set rotation of %s to %s", + "commands.sable.physics.translation.add.success": "Added %s translation to %s of %s", + "commands.sable.physics.translation.set.success": "Set translation of %s to %s", + + "commands.sable.joint.missing_sublevel_target": "Failed to find sub-level for joint", + "commands.sable.joint.success": "Successfully created joint", + + "commands.sable.sub_level.set_name.success_singular": "Set name of sub-level to %s", + "commands.sable.sub_level.set_name.success_multiple": "Set name of %s sub-levels to %s", + + "commands.sable.sub_level.get_name.success": "Name of sub-level is %s", + "commands.sable.sub_level.get_name.failure_unnamed": "Sub-level has no name", + + "commands.sable.sub_level.clear_name.success_singular": "Cleared name of sub-level", + "commands.sable.sub_level.clear_name.success_multiple": "Cleared name of %s sub-levels", + + "commands.sable.sub_level.teleport_with_orientation.success": "Teleported %s to %.2f, %.2f, %.2f facing %.2f, %.2f", + "commands.sable.sub_level.teleport.success": "Teleported %s to %.2f, %.2f, %.2f", + "commands.sable.sub_level.remove.success": "Removed %s", + "commands.sable.sub_level.assemble.no_blocks": "Couldn't assemble sub-level, no valid blocks found", + "commands.sable.sub_level.assemble.connected.too_many_blocks": "Couldn't assemble sub-level, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.no_blocks": "Couldn't shatter into sub-levels, no valid blocks found", + "commands.sable.sub_level.shatter.connected.too_many_blocks": "Couldn't shatter into sub-levels, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.region.success": "Shattered a region with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.connected.success": "Shattered %s connected blocks into new sub-levels", + "commands.sable.sub_level.shatter.range.success": "Shattered a range with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.radius.success": "Shattered a radius with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.sub_level.success": "Shattered %s into %s new sub-levels", + "commands.sable.sub_level.shatter.sub_level.only_single_block": "Can't shatter single-block sub-levels", + "commands.sable.sub_level.assemble.region.success": "Assembled a region %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.connected.success": "Assembled %s connected blocks to a new sub-level", + "commands.sable.sub_level.assemble.radius.success": "Assembled a radius with %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.range.success": "Assembled a range with %s blocks to a new sub-level", + + "commands.sable.physics.paused.success": "Set physics paused to be %s", + "commands.sable.physics.paused_toggled.success": "Toggled physics paused to be %s", + + "commands.sable.place_schematic.failure": "Couldn't find schematic!", + "commands.sable.place_schematic.success": "Placed schematic!", + + "commands.sable.fail.not_inside_sub_level": "Position outside of sub-level plot", + "commands.sable.fail.no_sub_levels": "No sub-levels found", + "commands.sable.fail.unmodified": "No sub-levels were modified", + "commands.sable.fail.no_axis_for_rotation": "No axis for rotation", + + "commands.sable.info.count": "Found %s sub-levels:", + "commands.sable.info.name": "%s:", + "commands.sable.info.name.tooltip": "Serialization Pointer: %s", + "commands.sable.info.position": " Position: %.2f %.2f %.2f", + "commands.sable.info.orientation": " Orientation: %.2f %.2f %.2f %.2f", + "commands.sable.info.linear_velocity": " Linear Velocity: %.2f %.2f %.2f", + "commands.sable.info.angular_velocity": " Angular Velocity: %.2f %.2f %.2f", + "commands.sable.info.mass": " Mass: %.2f", + "commands.sable.info.world_bounds": " World Bounds: %.2f x %.2f x %.2f", + + "commands.data.sub_level.get": "%s on sub-level %s after scale factor of %s is %s", + "commands.data.sub_level.modified": "Modified sub-level auxiliary data of %s", + "commands.data.sub_level.query": "%s has the following auxiliary sub-level data: %s", + + "argument.sable.body.selector.all": "All sub-levels", + "argument.sable.body.selector.nearest": "Nearest sub-level", + "argument.sable.body.selector.random": "Random sub-level", + "argument.sable.body.selector.viewed": "Viewed sub-level", + "argument.sable.body.selector.latest": "Latest sub-level", + "argument.sable.body.selector.tracking": "Tracking sub-level", + "argument.sable.body.selector.inside": "Inside sub-level", + "argument.sable.body.static_world": "The static world", + + "argument.sable.sub_level.modifier.distance": "Distance to sub-level", + "argument.sable.sub_level.modifier.x": "x position", + "argument.sable.sub_level.modifier.y": "y position", + "argument.sable.sub_level.modifier.z": "z position", + "argument.sable.sub_level.modifier.dx": "Sub-levels between x and x + dx", + "argument.sable.sub_level.modifier.dy": "Sub-levels between y and y + dy", + "argument.sable.sub_level.modifier.dz": "Sub-levels between z and z + dz", + "argument.sable.sub_level.modifier.vx": "x velocity", + "argument.sable.sub_level.modifier.vy": "y velocity", + "argument.sable.sub_level.modifier.vz": "z velocity", + "argument.sable.sub_level.modifier.speed": "Sub-level speed", + "argument.sable.sub_level.modifier.mass": "Sub-level weight", + "argument.sable.sub_level.modifier.volume": "Volume of sub-level bounding box", + "argument.sable.sub_level.modifier.width": "X axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.height": "Y axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.length": "Z axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.limit": "Maximum number of sub-levels to return", + "argument.sable.sub_level.modifier.name": "Sub-level name", + "argument.sable.sub_level.modifier.sort": "Sort the sub-levels by distance", + "argument.sable.unexpected_end_of_input": "Unexpected end of input", + "argument.sable.single_sub_level_required": "Only one sub-level is allowed, but the provided selector allows more than one", + "argument.sable.sub_level.invalid": "Invalid sub-level selector", + "argument.sable.sub_level.expected_end_of_modifier": "Expected end of modifier", + "argument.sable.sub_level.expected_positive_integer": "Expected a positive integer", + "argument.sable.sub_level.expected_positive_decimal": "Expected a positive decimal", + "argument.sable.sub_level.expected_positive_range": "Expected a positive range", + "argument.sable.sub_level.expected_sorting": "Expected sorting type of either nearest or furthest", + + "inspector.sable.sub_level_container.title": "Sub-level Container", + + "attribute.name.player.sub_level_punch_strength": "Push Strength", + "attribute.name.player.sub_level_punch_cooldown": "Push Cooldown", + + "options.sable_menu": "Sub-Level Settings... ", + "options.physics_steps": "Physics Steps", + "options.physics_steps_template": "%s steps / second", + "options.physics_steps.tooltip": "How many times the physics simulation is stepped in every second. Higher values will be significantly more performance intensive, but will have higher accuracy.", + + "sub_level.toast.checkLog": "See log for more details", + "sub_level.toast.loadFailure": "Failed to load sub-level at %s", + "sub_level.toast.saveFailure": "Failed to save sub-level at %s", + "sub_level.toast.physicsFailure": "Physics failure for sub-level at %s", + "sub_level.toast.attemptingRecovery": "Attempting recovery", + + "camera_type.sub_level_view": "Entering Contraption Camera", + "camera_type.sub_level_view_unlocked": "Entering Unlocked Contraption Camera", + + "force_group.sable.gravity": "Gravity", + "force_group.sable.drag": "Drag", + "force_group.sable.levitation": "Levitation", + "force_group.sable.balloon_lift": "Balloon Lift", + "force_group.sable.propulsion": "Propulsion", + "force_group.sable.lift": "Lift", + "force_group.sable.magnetic_force": "Magnetic", + + "schematic.sable.mirror_not_supported": "Cannot mirror schematics containing sub-levels!", + + "death.attack.fall.from_sublevel": "%1$s fell from %2$s", + + "sable.create.mechanical_arm.points_removed_sublevel_and_range": "%1$s selected interaction point(s) removed due to range limitations or not being anchored.", + "sable.create.remove.points_removed_sublevel" : "%1$s selected interaction point(s) removed due to not being anchored" +} diff --git a/common/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl b/common/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl new file mode 100644 index 0000000..f9a32df --- /dev/null +++ b/common/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl @@ -0,0 +1,61 @@ +layout(location = 0) in vec3 QuadPosition; +layout(location = 1) in vec3 SableNormal; +layout(location = 2) in uvec2 SableData; + +layout(std140) uniform SableSprites { + vec4 sableSprites[2 * SABLE_TEXTURE_CACHE_SIZE]; +}; + +uniform mat4 SableTransform; + +vec3 Position; +vec3 Normal; +vec4 Color; +vec2 UV0; +ivec2 UV2; + +void _sable_unpack() { + uint vertexIndex = uint(gl_VertexID) & 0x3u; + + // Packed data format: + // TTTTTTTTTTTTLLLLLLLLZZZZYYYYXXXX + // T = Texture ID + // L = Packed Light + // Z = Relative Z position + // Y = Relative Y position + // X = Relative X position + uint posX = SableData.x & 15u; + uint posY = (SableData.x >> 4) & 15u; + uint posZ = (SableData.x >> 8) & 15u; + uint packedLight = (SableData.x >> 12) & 255u; + uint textureId = SableData.x >> 20u; + + // Packed data format: + // AAAAAAAAYYYYYYYYZZZZZZZZXXXXXXXX + // A = Ambient Occlusion + // Y = Section Y + // Z = Section Z + // X = Section X + uint xOffset = (SableData.y) & 0xFFu; + uint yOffset = (SableData.y >> 8) & 0xFFu; + uint zOffset = (SableData.y >> 16) & 0xFFu; + uint ambientOcclusion = (SableData.y >> (24u + (vertexIndex << 1u))) & 0x3u; + + // 0,0 == 0b00 + // 0,1 == 0b01 + // 1,1 == 0b10 + // 1,0 == 0b11 + uint lower = uint(gl_VertexID) & 1u; + uint upper = (uint(gl_VertexID) >> 1) & 1u; + vec2 uv = vec2(float(upper), float(lower ^ upper)); + uint textureOffset = vertexIndex << 3u; + + vec4 textureU = sableSprites[(textureId << 1u)]; + vec4 textureV = sableSprites[(textureId << 1u) + 1u]; + + Position = (SableTransform * vec4(QuadPosition + vec3(float((xOffset << 4u) + posX), float((yOffset << 4u) + posY), float((zOffset << 4u) + posZ)), 1.0)).xyz; + Normal = (SableTransform * vec4(SableNormal, 0.0)).xyz; + Color = vec4(1.0, 1.0, 1.0, 1.0) * vec4(vec3(1.0 - 0.2 * float(ambientOcclusion)), 1.0); + UV0 = vec2(textureU[vertexIndex], textureV[vertexIndex]); + UV2 = ivec2(packedLight & 0xF0u, (packedLight << 4) & 0xF0u); +} \ No newline at end of file diff --git a/common/build/resources/main/data/c/tags/block/end_stones.json b/common/build/resources/main/data/c/tags/block/end_stones.json new file mode 100644 index 0000000..146dcd9 --- /dev/null +++ b/common/build/resources/main/data/c/tags/block/end_stones.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:end_stone" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/floating_materials/end_stone.json b/common/build/resources/main/data/sable/floating_materials/end_stone.json new file mode 100644 index 0000000..b5f5be3 --- /dev/null +++ b/common/build/resources/main/data/sable/floating_materials/end_stone.json @@ -0,0 +1,10 @@ +{ + "prevent_self_lift": true, + "scale_friction_with_gravity":true, + "lift_strength": 2, + "transition_speed": 2, + "slow_vertical_friction": 0.4, + "fast_vertical_friction": 0.02, + "slow_horizontal_friction": 0.3, + "fast_horizontal_friction": 0.01 +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json b/common/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json new file mode 100644 index 0000000..5addf33 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:bedrock", + + "properties": { + "sable:mass": 1000.0 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/bouncy.json b/common/build/resources/main/data/sable/physics_block_properties/bouncy.json new file mode 100644 index 0000000..8da9bbb --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/bouncy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:bouncy", + + "properties": { + "sable:restitution": 0.5 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json b/common/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json new file mode 100644 index 0000000..e120d72 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json @@ -0,0 +1,13 @@ +{ + "selector": "minecraft:end_stone_brick_slab", + + "properties": { + "sable:floating_material": "sable:end_stone", + "sable:floating_scale": 0.5 + }, + "overrides": { + "type=double": { + "sable:floating_scale": 1.0 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/end_stones.json b/common/build/resources/main/data/sable/physics_block_properties/end_stones.json new file mode 100644 index 0000000..87c896d --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/end_stones.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:end_stones", + + "properties": { + "sable:floating_material": "sable:end_stone" + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/flywheel.json b/common/build/resources/main/data/sable/physics_block_properties/flywheel.json new file mode 100644 index 0000000..b7ab63c --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/flywheel.json @@ -0,0 +1,19 @@ +{ + "selector": "create:flywheel", + + "properties": { + "sable:mass":4.0 + }, + + "overrides":{ + "axis=x": { + "sable:inertia": [2.25,1.125,1.125] + }, + "axis=y": { + "sable:inertia": [1.125,2.25,1.125] + }, + "axis=z": { + "sable:inertia": [1.125,1.125,2.25] + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/fragile.json b/common/build/resources/main/data/sable/physics_block_properties/fragile.json new file mode 100644 index 0000000..4254f91 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/fragile.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:fragile", + + "properties": { + "sable:fragile": true + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/grindstone.json b/common/build/resources/main/data/sable/physics_block_properties/grindstone.json new file mode 100644 index 0000000..150c03f --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/grindstone.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:grindstone", + + "properties": { + "sable:friction": 0.05 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/half_volume.json b/common/build/resources/main/data/sable/physics_block_properties/half_volume.json new file mode 100644 index 0000000..7f016a4 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/half_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:half_volume", + + "properties": { + "sable:volume": 0.5 + }, + + "overrides": { + "type=double": { + "sable:volume": 1.0 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/heavy.json b/common/build/resources/main/data/sable/physics_block_properties/heavy.json new file mode 100644 index 0000000..7576d35 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:heavy", + + "properties": { + "sable:mass": 2.0 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/light.json b/common/build/resources/main/data/sable/physics_block_properties/light.json new file mode 100644 index 0000000..58e4125 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/light.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:light", + + "properties": { + "sable:mass": 0.5 + }, + + "overrides": { + "type=double": { + "sable:mass": 1.0 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/mud.json b/common/build/resources/main/data/sable/physics_block_properties/mud.json new file mode 100644 index 0000000..ff67e5e --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/mud.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:mud", + + "properties": { + "sable:friction": 0.25 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/piston.json b/common/build/resources/main/data/sable/physics_block_properties/piston.json new file mode 100644 index 0000000..18ec882 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/piston.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:pistons", + + "properties": { + "sable:mass": 1.0 + }, + + "overrides": { + "extended=true": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/quarter_volume.json b/common/build/resources/main/data/sable/physics_block_properties/quarter_volume.json new file mode 100644 index 0000000..b5f0cbd --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/quarter_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:quarter_volume", + + "properties": { + "sable:volume": 0.25 + }, + + "overrides": { + "type=double": { + "sable:volume": 0.5 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/slippery.json b/common/build/resources/main/data/sable/physics_block_properties/slippery.json new file mode 100644 index 0000000..e1e4f59 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/slippery.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:slippery", + + "properties": { + "sable:friction": 0.0 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/sticky.json b/common/build/resources/main/data/sable/physics_block_properties/sticky.json new file mode 100644 index 0000000..d831295 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/sticky.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:frictive", + + "properties": { + "sable:friction": 1.65 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/super_heavy.json b/common/build/resources/main/data/sable/physics_block_properties/super_heavy.json new file mode 100644 index 0000000..83392dc --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/super_heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:super_heavy", + + "properties": { + "sable:mass": 4.0 + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/physics_block_properties/super_light.json b/common/build/resources/main/data/sable/physics_block_properties/super_light.json new file mode 100644 index 0000000..1281080 --- /dev/null +++ b/common/build/resources/main/data/sable/physics_block_properties/super_light.json @@ -0,0 +1,14 @@ +{ + "priority": 1001, + "selector": "#sable:super_light", + + "properties": { + "sable:mass": 0.25 + }, + + "overrides": { + "type=double": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/schematics/vinalilime.nbt b/common/build/resources/main/data/sable/schematics/vinalilime.nbt new file mode 100644 index 0000000..bffb43f Binary files /dev/null and b/common/build/resources/main/data/sable/schematics/vinalilime.nbt differ diff --git a/common/build/resources/main/data/sable/schematics/vostone_2.nbt b/common/build/resources/main/data/sable/schematics/vostone_2.nbt new file mode 100644 index 0000000..b612af5 Binary files /dev/null and b/common/build/resources/main/data/sable/schematics/vostone_2.nbt differ diff --git a/common/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt b/common/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt new file mode 100644 index 0000000..e7681ca Binary files /dev/null and b/common/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt differ diff --git a/common/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt b/common/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt new file mode 100644 index 0000000..ad6c3b5 Binary files /dev/null and b/common/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt differ diff --git a/common/build/resources/main/data/sable/structure/physicstest.gravity.nbt b/common/build/resources/main/data/sable/structure/physicstest.gravity.nbt new file mode 100644 index 0000000..4e3e84c Binary files /dev/null and b/common/build/resources/main/data/sable/structure/physicstest.gravity.nbt differ diff --git a/common/build/resources/main/data/sable/structure/physicstest.snag.nbt b/common/build/resources/main/data/sable/structure/physicstest.snag.nbt new file mode 100644 index 0000000..a29e87e Binary files /dev/null and b/common/build/resources/main/data/sable/structure/physicstest.snag.nbt differ diff --git a/common/build/resources/main/data/sable/tags/block/always_chunk_rendering.json b/common/build/resources/main/data/sable/tags/block/always_chunk_rendering.json new file mode 100644 index 0000000..671a331 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/always_chunk_rendering.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + { "id": "computercraft:monitor_normal", "required": false }, + { "id": "computercraft:monitor_advanced", "required": false }, + + { "id": "computercraft:turtle_normal", "required": false }, + { "id": "computercraft:turtle_advanced", "required": false }, + + { "id": "computercraft:computer_normal", "required": false }, + { "id": "computercraft:computer_advanced", "required": false }, + { "id": "computercraft:computer_command", "required": false } + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/bouncy.json b/common/build/resources/main/data/sable/tags/block/bouncy.json new file mode 100644 index 0000000..f3c5414 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/bouncy.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:slime_block" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/diode.json b/common/build/resources/main/data/sable/tags/block/diode.json new file mode 100644 index 0000000..eebbbce --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/diode.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:repeater", + "minecraft:comparator", + { "id": "create:powered_toggle_latch", "required": false }, + { "id": "create:powered_latch", "required": false }, + { "id": "create:pulse_timer", "required": false }, + { "id": "create:pulse_extender", "required": false }, + { "id": "create:pulse_repeater", "required": false } + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/end_stones.json b/common/build/resources/main/data/sable/tags/block/end_stones.json new file mode 100644 index 0000000..ac17a72 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/end_stones.json @@ -0,0 +1,17 @@ +{ + "replace": false, + "values": [ + "#c:end_stones", + "minecraft:end_stone_bricks", + "minecraft:end_stone_brick_stairs", + "minecraft:end_stone_brick_wall", + + { "id": "supplementaries:end_stone_lamp", "required": false }, + + { "id": "architects_palette:choral_end_stone_bricks", "required": false }, + { "id": "architects_palette:cracked_end_stone_bricks", "required": false }, + { "id": "architects_palette:chiseled_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_cracked_end_stone_bricks", "required": false } + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/fragile.json b/common/build/resources/main/data/sable/tags/block/fragile.json new file mode 100644 index 0000000..3942c98 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/fragile.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:leaves", + "minecraft:bamboo", + "minecraft:melon", + "minecraft:pumpkin", + "minecraft:cactus", + "minecraft:ice", + "minecraft:frosted_ice", + "minecraft:lily_pad" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/frictive.json b/common/build/resources/main/data/sable/tags/block/frictive.json new file mode 100644 index 0000000..684d0c6 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/frictive.json @@ -0,0 +1,16 @@ +{ + "replace": false, + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:honey_block", + "minecraft:cactus", + + { "id": "create:belt", "required": false }, + + { "id": "architects_palette:tread_plate", "required": false }, + { "id": "architects_palette:tread_plate_slab", "required": false }, + { "id": "architects_palette:tread_plate_stairs", "required": false }, + { "id": "architects_palette:tread_plate_wall", "required": false } + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/half_volume.json b/common/build/resources/main/data/sable/tags/block/half_volume.json new file mode 100644 index 0000000..4f29698 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/half_volume.json @@ -0,0 +1,22 @@ +{ + "replace": false, + "values": [ + "#minecraft:slabs", + "#minecraft:stairs", + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "quark:feeding_trough", "required": false }, + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:jar", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false } + + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/heavy.json b/common/build/resources/main/data/sable/tags/block/heavy.json new file mode 100644 index 0000000..4396b4d --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/heavy.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#c:stones", + "#c:cobblestones", + "minecraft:blackstone", + "minecraft:basalt", + "minecraft:smooth_basalt", + "minecraft:polished_basalt", + "minecraft:obsidian", + "minecraft:crying_obsidian" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/light.json b/common/build/resources/main/data/sable/tags/block/light.json new file mode 100644 index 0000000..de8caa4 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/light.json @@ -0,0 +1,72 @@ +{ + "replace": false, + "values": [ + "#minecraft:planks", + "#minecraft:logs", + "#minecraft:slabs", + "#minecraft:stairs", + "minecraft:piston_head", + "minecraft:barrel", + "minecraft:chest", + "#minecraft:bamboo_blocks", + "#c:clusters", + "#c:chests/wooden", + { "id": "create:belt", "required": false }, + { "id": "create:track", "required": false }, + { "id": "create:nixie_tube", "required": false }, + { "id": "create:desk_bell", "required": false }, + { "id": "create:piston_extension_pole", "required": false }, + { "id": "create:turntable", "required": false }, + { "id": "create:andesite_funnel", "required": false }, + { "id": "create:brass_funnel", "required": false }, + { "id": "create:factory_gauge", "required": false }, + { "id": "create:display_link", "required": false }, + { "id": "create:stock_link", "required": false }, + { "id": "create:cardboard_block", "required": false }, + { "id": "create:bound_cardboard_block", "required": false }, + + { "id": "create:andesite_encased_shaft", "required": false }, + { "id": "create:andesite_encased_cogwheel", "required": false }, + { "id": "create:andesite_encased_large_cogwheel", "required": false }, + + { "id": "create:brass_encased_shaft", "required": false }, + { "id": "create:brass_encased_cogwheel", "required": false }, + { "id": "create:brass_encased_large_cogwheel", "required": false }, + + { "id": "create:shaft", "required": false }, + { "id": "create:cogwheel", "required": false }, + { "id": "create:large_cogwheel", "required": false }, + + { "id": "create:hand_crank", "required": false }, + { "id": "#create:valve_handles", "required": false }, + { "id": "#create:seats", "required": false }, + + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:beams", "required": false }, + + { "id": "#woodworks:wooden_boards", "required": false }, + + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hollow_logs", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:presents", "required": false }, + { "id": "#supplementaries:trapped_presents", "required": false }, + + { "id": "#architects_palette:boards", "required": false }, + + { "id": "#storagedrawers:full_drawers", "required": false }, + { "id": "#storagedrawers:trim", "required": false }, + + { "id": "#another_furniture:drawers", "required": false } + ], + "remove": [ + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#quark:wooden_vertical_slabs" + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/pistons.json b/common/build/resources/main/data/sable/tags/block/pistons.json new file mode 100644 index 0000000..5570772 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/pistons.json @@ -0,0 +1,6 @@ +{ + "values": [ + "minecraft:piston", + "minecraft:sticky_piston" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/quarter_volume.json b/common/build/resources/main/data/sable/tags/block/quarter_volume.json new file mode 100644 index 0000000..ad2762c --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/quarter_volume.json @@ -0,0 +1,99 @@ +{ + "replace": false, + "values": [ + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:moss_carpet", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + "#sable:diode", + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "#quark:posts", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/slippery.json b/common/build/resources/main/data/sable/tags/block/slippery.json new file mode 100644 index 0000000..d8480b4 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/slippery.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:ice", + + { "id": "architects_palette:polished_packed_ice", "required": false }, + { "id": "architects_palette:polished_packed_ice_slab", "required": false }, + { "id": "architects_palette:polished_packed_ice_stairs", "required": false }, + { "id": "architects_palette:polished_packed_ice_wall", "required": false }, + { "id": "architects_palette:chiseled_packed_ice", "required": false }, + { "id": "architects_palette:packed_ice_pillar", "required": false } + ] +} diff --git a/common/build/resources/main/data/sable/tags/block/super_heavy.json b/common/build/resources/main/data/sable/tags/block/super_heavy.json new file mode 100644 index 0000000..95d1e9f --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/super_heavy.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + "#c:storage_blocks", + "#minecraft:anvil", + "minecraft:heavy_core" + ], + "remove": [ + { "id": "create:cardboard_block", "required": false }, + "minecraft:copper_block", + "minecraft:slime_block", + "minecraft:bone_block" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/block/super_light.json b/common/build/resources/main/data/sable/tags/block/super_light.json new file mode 100644 index 0000000..73de5e9 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/block/super_light.json @@ -0,0 +1,118 @@ +{ + "replace": false, + "values": [ + "#minecraft:wool", + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:leaves", + "#minecraft:saplings", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:lily_pad", + "minecraft:big_dripleaf", + "minecraft:turtle_egg", + "minecraft:moss_carpet", + "minecraft:snow", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + "#sable:diode", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + { "id": "#create:windmill_sails", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "#farmersdelight:straw_blocks", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:feeding_trough", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "quark:paper_lantern", "required": false }, + { "id": "quark:paper_lantern_sakura", "required": false }, + { "id": "#quark:wooden_vertical_slabs", "required": false }, + { "id": "#quark:posts", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:jar", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false }, + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/common/build/resources/main/data/sable/tags/entity_type/create_contraption.json b/common/build/resources/main/data/sable/tags/entity_type/create_contraption.json new file mode 100644 index 0000000..f83a24f --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/create_contraption.json @@ -0,0 +1,10 @@ +{ + "replace": false, + "values": [ + { "id": "create:contraption", "required": false }, + { "id": "create:stationary_contraption", "required": false }, + { "id": "create:oriented_contraption", "required": false }, + { "id": "create:gantry_contraption", "required": false }, + { "id": "create:carriage_contraption", "required": false } + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json b/common/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json new file mode 100644 index 0000000..131ae63 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + { "id": "exposure:camera_stand", "required": false }, + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json b/common/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json new file mode 100644 index 0000000..96d7061 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#sable:super_glue", + { "id": "create:seat", "required": false }, + "#sable:create_contraption" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json b/common/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json new file mode 100644 index 0000000..d82b0b6 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json @@ -0,0 +1,27 @@ +{ + "replace": false, + "values": [ + "#sable:create_contraption", + "#sable:super_glue", + "#sable:wall_entities", + { "id": "create:seat", "required": false }, + { "id": "blockbox:seat", "required": false }, + { "id": "botania:mana_burst", "required": false }, + { "id": "botania:corporea_burst", "required": false }, + { "id": "botania:spark", "required": false }, + { "id": "exposure:camera_stand", "required": false }, + "minecraft:snow_golem", + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart", + "minecraft:command_block_minecart", + "minecraft:block_display", + "minecraft:item_display", + "minecraft:text_display", + "minecraft:marker", + "minecraft:leash_knot" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/entity_type/super_glue.json b/common/build/resources/main/data/sable/tags/entity_type/super_glue.json new file mode 100644 index 0000000..7fc40eb --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/super_glue.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + { "id": "create:super_glue", "required": false } + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/entity_type/wall_entities.json b/common/build/resources/main/data/sable/tags/entity_type/wall_entities.json new file mode 100644 index 0000000..c36c99c --- /dev/null +++ b/common/build/resources/main/data/sable/tags/entity_type/wall_entities.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:painting", + "minecraft:item_frame", + "minecraft:glow_item_frame", + { "id": "create:crafting_blueprint", "required": false }, + { "id": "exposure:glass_photograph_frame", "required": false }, + { "id": "exposure:photograph_frame", "required": false }, + { "id": "labels:label", "required": false } + ] +} \ No newline at end of file diff --git a/common/build/resources/main/data/sable/tags/item/paddles.json b/common/build/resources/main/data/sable/tags/item/paddles.json new file mode 100644 index 0000000..6fa1ee7 --- /dev/null +++ b/common/build/resources/main/data/sable/tags/item/paddles.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#minecraft:shovels" + ] +} \ No newline at end of file diff --git a/common/build/resources/main/natives/sable_rapier/LICENSE-RAPIER b/common/build/resources/main/natives/sable_rapier/LICENSE-RAPIER new file mode 100644 index 0000000..97f4383 --- /dev/null +++ b/common/build/resources/main/natives/sable_rapier/LICENSE-RAPIER @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Sébastien Crozet + + 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 + + http://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. diff --git a/common/build/resources/main/natives/sable_rapier/README.md b/common/build/resources/main/natives/sable_rapier/README.md new file mode 100644 index 0000000..e774f58 --- /dev/null +++ b/common/build/resources/main/natives/sable_rapier/README.md @@ -0,0 +1,2 @@ +The natives in this folder are for Sable's Rapier physics pipeline. +They contain a slightly modified version of Rapier visible at https://github.com/ryanhcode/rapier (view LICENSE-RAPIER). \ No newline at end of file diff --git a/common/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z b/common/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z new file mode 100644 index 0000000..022e303 Binary files /dev/null and b/common/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z differ diff --git a/common/build/resources/main/sable.accesswidener b/common/build/resources/main/sable.accesswidener new file mode 100644 index 0000000..0258ae4 --- /dev/null +++ b/common/build/resources/main/sable.accesswidener @@ -0,0 +1,118 @@ +accessWidener v2 named + +accessible class net/minecraft/client/multiplayer/ClientChunkCache$Storage + +accessible field net/minecraft/server/level/ChunkHolder fullChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder tickingChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder entityTickingChunkFuture Ljava/util/concurrent/CompletableFuture; + +accessible class net/minecraft/server/level/ServerChunkCache$ChunkAndHolder +accessible method net/minecraft/server/level/ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V + +accessible field net/minecraft/server/network/ServerCommonPacketListenerImpl connection Lnet/minecraft/network/Connection; + +accessible field net/minecraft/server/level/ChunkMap updatingChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; +accessible field net/minecraft/server/level/ChunkMap visibleChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; + +accessible field net/minecraft/server/level/ChunkLevel ENTITY_TICKING_LEVEL I +accessible field net/minecraft/server/level/ChunkLevel BLOCK_TICKING_LEVEL I +accessible method net/minecraft/server/network/PlayerChunkSender sendChunk (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V + +accessible field net/minecraft/world/level/ClipContext block Lnet/minecraft/world/level/ClipContext$Block; +accessible field net/minecraft/world/level/ClipContext fluid Lnet/minecraft/world/level/ClipContext$Fluid; +accessible field net/minecraft/world/level/ClipContext collisionContext Lnet/minecraft/world/phys/shapes/CollisionContext; + +accessible method net/minecraft/server/level/ChunkMap onFullChunkStatusChange (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V + +accessible field net/minecraft/client/particle/Particle xo D +accessible field net/minecraft/client/particle/Particle yo D +accessible field net/minecraft/client/particle/Particle zo D +accessible field net/minecraft/client/particle/Particle x D +accessible field net/minecraft/client/particle/Particle y D +accessible field net/minecraft/client/particle/Particle z D + + +accessible field net/minecraft/world/level/lighting/LevelLightEngine blockEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible field net/minecraft/world/level/lighting/LevelLightEngine skyEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible method net/minecraft/server/level/ThreadedLevelLightEngine runUpdate ()V + +extendable method net/minecraft/server/level/GenerationChunkHolder rescheduleChunkTask (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + +accessible method net/minecraft/server/level/ThreadedLevelLightEngine updateChunkStatus (Lnet/minecraft/world/level/ChunkPos;)V + +accessible field net/minecraft/client/renderer/block/BlockRenderDispatcher modelRenderer Lnet/minecraft/client/renderer/block/ModelBlockRenderer; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace +accessible field net/minecraft/client/renderer/RenderStateShard name Ljava/lang/String; + +# Assembly +accessible method net/minecraft/world/entity/decoration/HangingEntity calculateSupportBox ()Lnet/minecraft/world/phys/AABB; + +# Directional Shading +accessible field net/minecraft/client/renderer/block/ModelBlockRenderer CACHE Ljava/lang/ThreadLocal; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$Cache + +# UDP Networking +accessible field net/minecraft/network/Connection channel Lio/netty/channel/Channel; + +# Serialization +accessible field net/minecraft/world/level/storage/DimensionDataStorage dataFolder Ljava/io/File; +accessible method net/minecraft/server/level/ChunkMap getChunks ()Ljava/lang/Iterable; +accessible method net/minecraft/server/level/ChunkMap scheduleUnload (JLnet/minecraft/server/level/ChunkHolder;)V +accessible field net/minecraft/server/level/ChunkMap toDrop Lit/unimi/dsi/fastutil/longs/LongSet; +accessible field net/minecraft/server/level/ChunkMap modified Z +accessible field net/minecraft/server/level/ChunkMap unloadQueue Ljava/util/Queue; +accessible method net/minecraft/server/level/ChunkMap saveChunkIfNeeded (Lnet/minecraft/server/level/ChunkHolder;)Z +accessible field net/minecraft/server/level/ChunkMap chunkSaveCooldowns Lit/unimi/dsi/fastutil/longs/Long2LongMap; + +# Shadows +accessible field net/minecraft/client/renderer/ShaderInstance samplerLocations Ljava/util/List; + +# Particles +accessible field net/minecraft/client/particle/Particle xd D +accessible field net/minecraft/client/particle/Particle yd D +accessible field net/minecraft/client/particle/Particle zd D + +# Attributes +accessible field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; +mutable field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; + +# Entity Storage +accessible field net/minecraft/server/level/ServerLevel entityManager Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; +accessible field net/minecraft/world/level/entity/PersistentEntitySectionManager sectionStorage Lnet/minecraft/world/level/entity/EntitySectionStorage; + +# Lithum Compat +accessible class net/minecraft/server/level/ServerChunkCache$MainThreadExecutor + +# Entity Kicking +accessible field net/minecraft/world/entity/Entity levelCallback Lnet/minecraft/world/level/entity/EntityInLevelCallback; + +# Distance Manager +accessible class net/minecraft/server/level/ChunkMap$DistanceManager + +# Gizmo +accessible method net/minecraft/client/renderer/GameRenderer getFov (Lnet/minecraft/client/Camera;FZ)D + +# Sub-Level rendering +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection updateGlobalBlockEntities (Ljava/util/Collection;)V +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection setCompiled (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +accessible field net/minecraft/client/renderer/LevelRenderer cullingFrustum Lnet/minecraft/client/renderer/culling/Frustum; +accessible field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; +mutable field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; + +# Entity Getting +accessible method net/minecraft/world/level/Level getEntities ()Lnet/minecraft/world/level/entity/LevelEntityGetter; + +# Respawning +accessible class net/minecraft/server/level/ServerPlayer$RespawnPosAngle +accessible method net/minecraft/server/level/ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +accessible method net/minecraft/server/level/ServerPlayer findRespawnAndUseSpawnBlock (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; + +# Entity Riding +accessible method net/minecraft/world/entity/LivingEntity dismountVehicle (Lnet/minecraft/world/entity/Entity;)V +accessible field net/minecraft/world/entity/Entity removalReason Lnet/minecraft/world/entity/Entity$RemovalReason; + +extendable method net/minecraft/world/entity/Entity getEyePosition (F)Lnet/minecraft/world/phys/Vec3; +extendable method net/minecraft/world/entity/Entity setRemoved (Lnet/minecraft/world/entity/Entity$RemovalReason;)V + +#Abstract hurting projectile accel +accessible field net/minecraft/world/entity/projectile/AbstractHurtingProjectile accelerationPower D \ No newline at end of file diff --git a/common/build/resources/main/sable.mixins.json b/common/build/resources/main/sable.mixins.json new file mode 100644 index 0000000..ad2263a --- /dev/null +++ b/common/build/resources/main/sable.mixins.json @@ -0,0 +1,223 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_decal_render.LevelRendererMixin", + "camera.camera_rotation.CompassItemPropertyFunctionMixin", + "camera.camera_rotation.EntityMixin", + "camera.camera_rotation.GuiMixin", + "camera.camera_zoom.CameraMixin", + "camera.camera_zoom.MouseHandlerMixin", + "camera.new_camera_types.CameraTypeMixin", + "camera.new_camera_types.GameRendererMixin", + "camera.new_camera_types.MinecraftMixin", + "clip_overwrite.ClientLevelMixin", + "clip_overwrite.GameRendererMixin", + "compatibility.iris.ExtendedShaderMixin", + "config.GameRendererAccessor", + "debug_render.DebugRendererMixin", + "debug_render.DebugScreenOverlayMixin", + "debug_render.LevelRendererMixin", + "dynamic_directional_shading.AmbientOcclusionFaceMixin", + "dynamic_directional_shading.ModelBlockRendererCacheMixin", + "dynamic_directional_shading.ModelBlockRendererMixin", + "entity.entities_stick_sublevels.ClientPacketListenerMixin", + "entity.entities_stick_sublevels.EntityRenderDispatcherMixin", + "entity.entities_stick_sublevels.effects.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.RemotePlayerMixin", + "entity.entities_turn_with_sub_levels.GameRendererMixin", + "entity.entity_leashing.EntityRendererMixin", + "entity.entity_rendering.EntityRendererMixin", + "entity.entity_rendering.LevelRendererMixin", + "entity.entity_rendering.shadows.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.ClientPacketListenerMixin", + "entity.entity_rotations_and_riding.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.EntityRendererMixin", + "entity.entity_rotations_and_riding.LocalPlayerMixin", + "entity.entity_sublevel_collision.CameraMixin", + "entity.entity_swimming.CameraMixin", + "options.OptionsScreenMixin", + "particle.BlockMarkerMixin", + "particle.ClientLevelMixin", + "particle.FlameParticleMixin", + "particle.LevelRendererMixin", + "particle.ParticleEngineMixin", + "particle.ParticleMixin", + "particle.SuspendedParticleMixin", + "particle.TerrainParticleMixin", + "player_freezing.LocalPlayerMixin", + "plot.ClientChunkCacheMixin", + "plot.MinecraftMixin", + "plot.lighting.ClientPacketListenerMixin", + "plot.lighting.RenderChunkRegionMixin", + "punching.MinecraftMixin", + "punching.MultiPlayerGameModeMixin", + "respawn_point.sleeping.LivingEntityRendererMixin", + "sky_light_shadow.LevelRendererMixin", + "stop_rain.LevelRenderMixin", + "sublevel_render.BlockEntityRenderDispatcherMixin", + "sublevel_render.LevelRendererMixin", + "sublevel_render.RenderSectionAccessor", + "sublevel_render.RenderSectionMixin", + "sublevel_render.block_entity_render.LevelRendererMixin", + "sublevel_render.fancy.ProgramMixin", + "sublevel_render.impl.sodium.LevelRendererMixin", + "sublevel_render.impl.sodium.SodiumWorldRendererMixin", + "sublevel_render.impl.vanilla.LevelRendererMixin", + "sublevel_render.impl.vanilla.ViewAreaMixin", + "sublevel_render.impl.vanilla.water_occlusion.LevelRendererMixin", + "sublevel_sounds.AbstractSoundInstanceMixin", + "sublevel_sounds.ChannelAccessor", + "sublevel_sounds.ClientLevelMixin", + "sublevel_sounds.SoundEngineMixin", + "toast.IntegratedServerMixin", + "water_occlusion.CameraMixin", + "water_occlusion.FogRendererMixin", + "water_occlusion.GameRendererMixin" + ], + "mixins": [ + "assembly.AbstractFurnaceBlockEntityMixin", + "block_decal_render.ServerLevelMixin", + "block_placement.BlockPlaceContextMixin", + "block_placement.EntityGetterMixin", + "block_placement.UseOnContextMixin", + "block_properties.BlockStateMixin", + "chunk_container_replacement.LevelChunkSectionMixin", + "climbing_sub_levels.LivingEntityMixin", + "clip_overwrite.BlockGetterMixin", + "clip_overwrite.ClipContextMixin", + "clip_overwrite.EntityMixin", + "clip_overwrite.HitResultMixin", + "command.ArgumentTypeInfosMixin", + "command.DataCommandsMixin", + "command.ExecuteCommandMixin", + "compatibility.computercraft.WirelessNetworkMixin", + "compatibility.exposure.CameraPosesMixin", + "compatibility.exposure.CameraStandEntityMixin", + "compatibility.jade.BlockAccessorImplMixin", + "compatibility.jade.RayTracingMixin", + "compatibility.jadeaddons.CreatePluginMixin", + "compatibility.vista.LODMixin", + "compatibility.vista.ViewFinderAccessMixin", + "compatibility.vista.ViewFinderControllerMixin", + "death_message.CombatTrackerMixin", + "death_message.EntityMixin", + "enchanting_table.EnchantingTableBlockEntityMixin", + "entity.arrows_hit_blocks.AbstractArrowMixin", + "entity.entities_in_blocks.EntityMixin", + "entity.entities_stick_sublevels.EntityMixin", + "entity.entities_stick_sublevels.LivingEntityMixin", + "entity.entities_stick_sublevels.ServerEntityMixin", + "entity.entities_stick_sublevels.effects.EntityMixin", + "entity.entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosRotMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundTeleportEntityPacketMixin", + "entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketMixin", + "entity.entities_stick_sublevels.player.ServerGamePacketListenerImplMixin", + "entity.entities_stick_sublevels.player.ServerPlayerMixin", + "entity.entity_aabb_lookup.LevelsMixin", + "entity.entity_ai.EatBlockGoalMixin", + "entity.entity_collision.CollisionContextMixin", + "entity.entity_collision.EntityMixin", + "entity.entity_interaction.ProjectileUtilMixin", + "entity.entity_kicking.BlockMixin", + "entity.entity_kicking.ServerLevelMixin", + "entity.entity_leashing.LeashableMixin", + "entity.entity_pathfinding.FlyNodeEvaluatorMixin", + "entity.entity_pathfinding.GroundPathNavigationMixin", + "entity.entity_pathfinding.PathfindingContextMixin", + "entity.entity_pathfinding.PathMixin", + "entity.entity_pathfinding.PathNavigationMixin", + "entity.entity_pathfinding.RandomPosMixin", + "entity.entity_pathfinding.WalkNodeEvaluatorMixin", + "entity.entity_rotations_and_riding.BlockMixin", + "entity.entity_rotations_and_riding.EntityMixin", + "entity.entity_rotations_and_riding.EntityTypeMixin", + "entity.entity_rotations_and_riding.LivingEntityMixin", + "entity.entity_rotations_and_riding.PlayerMixin", + "entity.entity_rotations_and_riding.ServerEntityMixin", + "entity.entity_rotations_and_riding.ServerPlayerMixin", + "entity.entity_sublevel_collision.AbstractMinecartMixin", + "entity.entity_sublevel_collision.EntityMixin", + "entity.entity_sublevel_collision.ItemEntityMixin", + "entity.entity_sublevel_collision.LevelMixin", + "entity.entity_sublevel_collision.LivingEntityMixin", + "entity.entity_sublevel_collision.PlayerMixin", + "entity.entity_sublevel_collision.ServerGamePacketListenerImplMixin", + "entity.entity_tracking.TrackedEntityMixin", + "entity.entity_unloading.PersistentEntitySectionManagerMixin", + "entity.falling_block.FallingBlockEntityMixin", + "entity.projectile.ProjectileMixin", + "entity.server_entities_tick.ChunkMapMixin", + "entity.server_entities_tick.ServerLevelMixin", + "entity.sublevels_block_sky.SubLevelsBlockSkyMixin", + "entity.tamed_teleport.TamableAnimalMixin", + "entity.teleport_players.ServerPlayerMixin", + "entity.tnt_jumps.PrimedTntMixin", + "entity.trident.ThrownTridentMixin", + "explosion.ExplosionMixin", + "explosion.ServerLevelMixin", + "extension.EntityMixin", + "fluids_on_sub_levels.FlowingFluidMixin", + "game_test.GameTestInfoMixin", + "game_test.StructureUtilsMixin", + "game_test.TestCommandMixin", + "impact.BeehiveBlockMixin", + "impact.BellBlockMixin", + "impact.TntBlockMixin", + "interaction_distance.EntityMixin", + "interaction_distance.PlayerMixin", + "level_accelerator.ServerChunkCacheAccessor", + "particle.ServerLevelMixin", + "physics.ServerLevelMixin", + "player_freezing.PlayerListMixin", + "player_freezing.PlayerMixin", + "player_freezing.ServerPlayerMixin", + "plot.ChunkMapMixin", + "plot.LevelChunkMixin", + "plot.LevelsMixin", + "plot.PlayerListMixin", + "plot.ServerChunkCacheMixin", + "plot.ServerLevelMixin", + "plot.lighting.BlockAndTintGetterMixin", + "plot.lighting.LevelChunkMixin", + "plot.serialization.ChunkMapMixin", + "plot.serialization.LevelChunkTicksMixin", + "portal.EntityMixin", + "portal.NetherPortalBlockMixin", + "prevent_freezing.BiomeMixin", + "prevent_overgrowth.VineBlockMixin", + "punching.ItemInvoker", + "recoil.ProjectileDispenseBehaviorMixin", + "respawn_point.ServerPlayerMixin", + "respawn_point.sleeping.LivingEntityMixin", + "respawn_point.sleeping.ServerPlayerMixin", + "sculk_vibrations.EuclideanGameEventListenerRegistryMixin", + "sculk_vibrations.GameEventDispatcherMixin", + "sculk_vibrations.VibrationSystemListenerMixin", + "sculk_vibrations.VibrationSystemTickerMixin", + "sign_interaction.SignBlockEntityMixin", + "tracking_points.EntityMixin", + "tracking_points.ServerPlayerMixin", + "udp.ConnectionMixin", + "udp.MinecraftServerMixin", + "udp.PlayerListMixin", + "udp.ServerConnectionListenerMixin", + "voxel_shape_iteration.BitSetDiscreteVoxelShapeAccessor", + "voxel_shape_iteration.DiscreteVoxelShapeAccessor", + "voxel_shape_iteration.VoxelShapeMixin", + "water_occlusion.EntityMixin", + "water_occlusion.LevelsMixin", + "water_occlusion.WaterFluidMixin", + "world_border.LevelMixin", + "world_border.WorldBorderMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId207 b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId207 new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId207 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId261 b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId261 new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId261 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId1 b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId1 new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId1 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId274 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId274 new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId274 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId202 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId202 new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId202 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId115 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId115 new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId115 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId212 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId212 new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId212 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId312 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId312 new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId312 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId334 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId334 new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId334 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId109 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId109 new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId109 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId214 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId214 new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId214 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId266 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId266 new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId266 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId48 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId48 new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId48 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId349 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId349 new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId349 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId292 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId292 new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId292 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId60 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId60 new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId60 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId122 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId122 new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId122 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId198 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId198 new file mode 100644 index 0000000..610565f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId198 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId242 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId242 new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId242 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId246 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId246 new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId246 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId163 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId163 new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId163 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId291 b/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId291 new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId291 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId12 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId12 new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId12 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId328 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId328 new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId328 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId353 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId353 new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId353 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId102 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId102 new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId102 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId13 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId13 new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId13 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId244 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId244 new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId244 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId44 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId44 new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId44 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId67 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId67 new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId67 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId288 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId288 new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId288 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId42 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId42 new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId42 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId180 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId180 new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId180 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId201 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId201 new file mode 100644 index 0000000..1c8aba2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId201 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId22 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId22 new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId22 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId8 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId8 new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId8 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId277 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId277 new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId277 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId293 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId293 new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId293 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId55 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId55 new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId55 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId355 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId355 new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId355 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId208 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId208 new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId208 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId137 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId137 new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId137 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId356 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId356 new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId356 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId306 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId306 new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId306 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId35 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId35 new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId35 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId94 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId94 new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId94 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId173 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId173 new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId173 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId203 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId203 new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId203 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId340 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId340 new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId340 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId264 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId264 new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId264 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId351 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId351 new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId351 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId116 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId116 new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId116 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId126 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId126 new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId126 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId57 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId57 new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId57 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId160 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId160 new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId160 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId187 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId187 new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId187 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId251 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId251 new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId251 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId59 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId59 new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId59 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId339 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId339 new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId339 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId68 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId68 new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId68 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId268 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId268 new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId268 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId75 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId75 new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId75 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId239 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId239 new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId239 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId123 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId123 new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId123 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId294 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId294 new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId294 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId357 b/common/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId357 new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId357 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId216 b/common/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId216 new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId216 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId172 b/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId172 new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId172 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId135 b/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId135 new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId135 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId88 b/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId88 new file mode 100644 index 0000000..4a2067b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId88 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId270 b/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId270 new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId270 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId231 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId231 new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId231 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId2 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId2 new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId2 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId366 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId366 new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId366 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId229 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId229 new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId229 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId100 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId100 new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId100 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId112 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId112 new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId112 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId154 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId154 new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId154 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId174 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId174 new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId174 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId200 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId200 new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId200 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId240 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId240 new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId240 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId289 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId289 new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId289 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId361 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId361 new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId361 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId97 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId97 new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId97 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId196 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId196 new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId196 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId177 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId177 new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId177 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId218 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId218 new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId218 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId329 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId329 new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId329 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId362 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId362 new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId362 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId47 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId47 new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId47 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId80 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId80 new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId80 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId317 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId317 new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId317 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId236 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId236 new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId236 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId283 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId283 new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId283 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId16 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId16 new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId16 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId165 b/common/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId165 new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId165 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId96 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId96 new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId96 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId151 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId151 new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId151 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId241 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId241 new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId241 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId190 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId190 new file mode 100644 index 0000000..392731b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId190 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId250 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId250 new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId250 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId52 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId52 new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId52 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId260 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId260 new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId260 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId95 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId95 new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId95 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId220 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId220 new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId220 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId107 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId107 new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId107 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId113 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId113 new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId113 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId104 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId104 new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId104 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId134 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId134 new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId134 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId7 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId7 new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId7 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId118 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId118 new file mode 100644 index 0000000..24e8b4b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId118 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId342 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId342 new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId342 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId168 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId168 new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId168 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId152 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId152 new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId152 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId148 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId148 new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId148 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId195 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId195 new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId195 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId206 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId206 new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId206 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId256 b/common/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId256 new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId256 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId222 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId222 new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId222 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId11 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId11 new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId11 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId183 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId183 new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId183 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId93 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId93 new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId93 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId233 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId233 new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId233 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId330 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId330 new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId330 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId189 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId189 new file mode 100644 index 0000000..539603e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId189 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId299 b/common/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId299 new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId299 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId365 b/common/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId365 new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId365 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId257 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId257 new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId257 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId41 b/common/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId41 new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId41 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId258 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId258 new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId258 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId368 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId368 new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId368 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId15 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId15 new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId15 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId248 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId248 new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId248 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId279 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId279 new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId279 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId247 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId247 new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId247 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId20 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId20 new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId20 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId136 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId136 new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId136 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId169 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId169 new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId169 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId243 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId243 new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId243 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId255 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId255 new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId255 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId28 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId28 new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId28 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId30 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId30 new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId30 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId37 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId37 new file mode 100644 index 0000000..b3ab5e4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId37 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId5 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId5 new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId5 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId157 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId157 new file mode 100644 index 0000000..ae91fb9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId157 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId155 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId155 new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId155 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId210 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId210 new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId210 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId313 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId313 new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId313 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId327 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId327 new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId327 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId46 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId46 new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId46 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId90 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId90 new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId90 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId84 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId84 new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId84 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId103 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId103 new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId103 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId211 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId211 new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId211 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId245 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId245 new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId245 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId249 b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId249 new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId249 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId194 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId194 new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId194 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId341 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId341 new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId341 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId53 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId53 new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId53 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId139 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId139 new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId139 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId287 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId287 new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId287 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId280 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId280 new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId280 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId364 b/common/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId364 new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId364 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId167 b/common/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId167 new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId167 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId79 b/common/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId79 new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId79 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId149 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId149 new file mode 100644 index 0000000..78518da Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId149 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId290 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId290 new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId290 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId120 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId120 new file mode 100644 index 0000000..535056a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId120 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId309 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId309 new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId309 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId58 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId58 new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId58 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId181 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId181 new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId181 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId21 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId21 new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId21 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId343 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId343 new file mode 100644 index 0000000..182b0a6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId343 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId38 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId38 new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId38 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId144 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId144 new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId144 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId369 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId369 new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId369 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId61 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId61 new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId61 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId85 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId85 new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId85 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId307 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId307 new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId307 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId82 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId82 new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId82 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId197 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId197 new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId197 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId303 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId303 new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId303 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId325 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId325 new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId325 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId354 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId354 new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId354 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId310 b/common/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId310 new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId310 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId117 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId117 new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId117 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId36 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId36 new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId36 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId308 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId308 new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId308 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId130 b/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId130 new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId130 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId17 b/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId17 new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId17 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId87 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId87 new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId87 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId105 b/common/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId105 new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId105 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId262 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId262 new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId262 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId191 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId191 new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId191 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId170 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId170 new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId170 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId304 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId304 new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId304 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId311 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId311 new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId311 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId26 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId26 new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId26 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId18 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId18 new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId18 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId286 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId286 new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId286 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId69 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId69 new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId69 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId101 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId101 new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId101 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId315 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId315 new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId315 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId153 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId153 new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId153 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId192 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId192 new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId192 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId171 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId171 new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId171 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId14 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId14 new file mode 100644 index 0000000..809312a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId14 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId332 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId332 new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId332 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId333 b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId333 new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId333 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId322 b/common/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId322 new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId322 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId106 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId106 new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId106 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId344 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId344 new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId344 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId323 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId323 new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId323 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId321 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId321 new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId321 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId348 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId348 new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId348 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId25 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId25 new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId25 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId121 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId121 new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId121 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId360 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId360 new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId360 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId213 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId213 new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId213 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId272 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId272 new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId272 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId230 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId230 new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId230 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId265 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId265 new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId265 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId142 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId142 new file mode 100644 index 0000000..539578a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId142 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId225 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId225 new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId225 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId184 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId184 new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId184 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId326 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId326 new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId326 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId319 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId319 new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId319 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId254 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId254 new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId254 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId275 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId275 new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId275 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId284 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId284 new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId284 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId138 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId138 new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId138 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId86 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId86 new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId86 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId45 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId45 new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId45 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId295 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId295 new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId295 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId133 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId133 new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId133 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId271 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId271 new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId271 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId205 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId205 new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId205 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId146 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId146 new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId146 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId227 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId227 new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId227 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId32 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId32 new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId32 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId199 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId199 new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId199 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId175 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId175 new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId175 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId336 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId336 new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId336 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId161 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId161 new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId161 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId129 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId129 new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId129 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId221 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId221 new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId221 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId158 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId158 new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId158 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId141 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId141 new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId141 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId156 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId156 new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId156 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId219 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId219 new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId219 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId316 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId316 new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId316 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId70 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId70 new file mode 100644 index 0000000..d7fce6b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId70 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId215 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId215 new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId215 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId124 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId124 new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId124 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId209 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId209 new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId209 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId223 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId223 new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId223 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId27 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId27 new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId27 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId320 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId320 new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId320 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 new file mode 100644 index 0000000..312294b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId91 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId91 new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId91 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId108 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId108 new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId108 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId252 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId252 new file mode 100644 index 0000000..5710c4f Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId252 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId337 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId337 new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId337 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId43 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId43 new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId43 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId179 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId179 new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId179 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId300 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId300 new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId300 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId19 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId19 new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId19 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId204 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId204 new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId204 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId359 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId359 new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId359 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId281 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId281 new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId281 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId62 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId62 new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId62 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId363 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId363 new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId363 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId54 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId54 new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId54 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId162 b/common/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId162 new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId162 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId76 b/common/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId76 new file mode 100644 index 0000000..909752d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId76 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId143 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId143 new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId143 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId39 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId39 new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId39 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId72 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId72 new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId72 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId228 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId228 new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId228 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId253 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId253 new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId253 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId159 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId159 new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId159 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId367 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId367 new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId367 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId224 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId224 new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId224 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId267 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId267 new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId267 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId127 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId127 new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId127 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId318 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId318 new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId318 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId237 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId237 new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId237 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId273 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId273 new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId273 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId314 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId314 new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId314 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId98 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId98 new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId98 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId9 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId9 new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId9 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId99 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId99 new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId99 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId298 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId298 new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId298 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId324 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId324 new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId324 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId301 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId301 new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId301 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId263 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId263 new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId263 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId111 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId111 new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId111 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId74 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId74 new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId74 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId269 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId269 new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId269 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId182 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId182 new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId182 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId335 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId335 new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId335 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId350 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId350 new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId350 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId92 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId92 new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId92 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId29 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId29 new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId29 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId235 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId235 new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId235 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId164 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId164 new file mode 100644 index 0000000..69e65dd Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId164 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId132 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId132 new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId132 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId346 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId346 new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId346 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId234 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId234 new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId234 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId73 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId73 new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId73 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId50 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId50 new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId50 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId176 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId176 new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId176 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId282 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId282 new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId282 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId140 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId140 new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId140 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId345 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId345 new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId345 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId193 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId193 new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId193 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId147 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId147 new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId147 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId276 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId276 new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId276 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId347 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId347 new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId347 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId10 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId10 new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId10 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId89 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId89 new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId89 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId63 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId63 new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId63 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId186 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId186 new file mode 100644 index 0000000..198224c Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId186 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId31 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId31 new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId31 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId217 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId217 new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId217 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId33 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId33 new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId33 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId34 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId34 new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId34 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId302 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId302 new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId302 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId285 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId285 new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId285 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId66 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId66 new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId66 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId185 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId185 new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId185 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId24 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId24 new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId24 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId56 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId56 new file mode 100644 index 0000000..5455a00 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId56 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId352 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId352 new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId352 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId119 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId119 new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId119 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId297 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId297 new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId297 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId114 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId114 new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId114 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId145 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId145 new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId145 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId278 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId278 new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId278 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId178 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId178 new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId178 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId259 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId259 new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId259 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId4 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId4 new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId4 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId125 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId125 new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId125 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId110 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId110 new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId110 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId128 b/common/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId128 new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId128 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId166 b/common/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId166 new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId166 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId338 b/common/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId338 new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId338 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId238 b/common/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId238 new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId238 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId51 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId51 new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId51 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId226 b/common/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId226 new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId226 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId49 b/common/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId49 new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId49 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId296 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId296 new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId296 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId150 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId150 new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId150 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId23 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId23 new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId23 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId65 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId65 new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId65 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId0 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId0 new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId0 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId131 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId131 new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId131 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId77 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId77 new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId77 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId64 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId64 new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId64 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId81 b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId81 new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId81 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId3 b/common/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId3 new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId3 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId305 b/common/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId305 new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId305 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId331 b/common/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId331 new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId331 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId71 b/common/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId71 new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId71 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId78 b/common/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId78 new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/common/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId78 differ diff --git a/common/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId188 b/common/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId188 new file mode 100644 index 0000000..76465da --- /dev/null +++ b/common/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId188 @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/common/build/tmp/compileJava/previous-compilation-data.bin b/common/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000..6132524 Binary files /dev/null and b/common/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/common/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json b/common/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/common/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/common/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties b/common/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties new file mode 100644 index 0000000..507b4d2 --- /dev/null +++ b/common/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties @@ -0,0 +1,109 @@ +# +#Mon May 11 13:49:56 EEST 2026 +ca.weblite\:java-objc-bridge\:1.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\ca.weblite\\java-objc-bridge\\1.1\\1227f9e0666314f9de41477e3ec277e542ed7f7b\\java-objc-bridge-1.1.jar +com.github.oshi\:oshi-core\:6.4.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.github.oshi\\oshi-core\\6.4.10\\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\\oshi-core-6.4.10.jar +com.google.code.findbugs\:jsr305\:3.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.findbugs\\jsr305\\3.0.2\\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\\jsr305-3.0.2.jar +com.google.code.gson\:gson\:2.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.gson\\gson\\2.10.1\\b3add478d4382b78ea20b1671390a858002feb6c\\gson-2.10.1.jar +com.google.guava\:failureaccess\:1.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\failureaccess\\1.0.1\\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\\failureaccess-1.0.1.jar +com.google.guava\:guava\:32.1.2-jre=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\guava\\32.1.2-jre\\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\\guava-32.1.2-jre.jar +com.ibm.icu\:icu4j\:73.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.ibm.icu\\icu4j\\73.2\\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\\icu4j-73.2.jar +com.mojang\:authlib\:6.0.54=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\authlib\\6.0.54\\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\\authlib-6.0.54.jar +com.mojang\:blocklist\:1.0.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\blocklist\\1.0.10\\5c685c5ffa94c4cd39496c7184c1d122e515ecef\\blocklist-1.0.10.jar +com.mojang\:brigadier\:1.3.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\brigadier\\1.3.10\\d15b53a14cf20fdcaa98f731af5dda654452c010\\brigadier-1.3.10.jar +com.mojang\:datafixerupper\:8.0.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\datafixerupper\\8.0.16\\67d4de6d7f95d89bcf5862995fb854ebaec02a34\\datafixerupper-8.0.16.jar +com.mojang\:logging\:1.2.7=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\logging\\1.2.7\\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\\logging-1.2.7.jar +com.mojang\:patchy\:2.2.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\patchy\\2.2.10\\da05971b07cbb379d002cf7eaec6a2048211fefc\\patchy-2.2.10.jar +com.mojang\:text2speech\:1.17.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\text2speech\\1.17.9\\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\\text2speech-1.17.9.jar +com.nothome\:javaxdelta\:2.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.nothome\\javaxdelta\\2.0.1\\d4f5d077f1b15c6f67595015d69572303ad3f66d\\javaxdelta-2.0.1.jar +commons-codec\:commons-codec\:1.16.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-codec\\commons-codec\\1.16.0\\4e3eb3d79888d76b54e28b350915b5dc3919c9de\\commons-codec-1.16.0.jar +commons-io\:commons-io\:2.15.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-io\\commons-io\\2.15.1\\f11560da189ab563a5c8e351941415430e9304ea\\commons-io-2.15.1.jar +commons-logging\:commons-logging\:1.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-logging\\commons-logging\\1.2\\4bfc12adfe4842bf07b657f0369c4cb522955686\\commons-logging-1.2.jar +de.siegmar\:fastcsv\:2.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\de.siegmar\\fastcsv\\2.0.0\\b615f26c03edeac966618b93b9ee4f4eed50aae1\\fastcsv-2.0.0.jar +io.codechicken\:DiffPatch\:2.0.0.36\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.codechicken\\DiffPatch\\2.0.0.36\\5b32f9baa0c0371c0dc80a3b88794960af0c6b44\\DiffPatch-2.0.0.36-all.jar +io.netty\:netty-buffer\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-buffer\\4.1.97.Final\\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\\netty-buffer-4.1.97.Final.jar +io.netty\:netty-codec\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-codec\\4.1.97.Final\\384ba4d75670befbedb45c4d3b497a93639c206d\\netty-codec-4.1.97.Final.jar +io.netty\:netty-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-common\\4.1.97.Final\\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\\netty-common-4.1.97.Final.jar +io.netty\:netty-handler\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-handler\\4.1.97.Final\\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\\netty-handler-4.1.97.Final.jar +io.netty\:netty-resolver\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-resolver\\4.1.97.Final\\cec8348108dc76c47cf87c669d514be52c922144\\netty-resolver-4.1.97.Final.jar +io.netty\:netty-transport-classes-epoll\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-classes-epoll\\4.1.97.Final\\795da37ded759e862457a82d9d92c4d39ce8ecee\\netty-transport-classes-epoll-4.1.97.Final.jar +io.netty\:netty-transport-native-unix-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-native-unix-common\\4.1.97.Final\\d469d84265ab70095b01b40886cabdd433b6e664\\netty-transport-native-unix-common-4.1.97.Final.jar +io.netty\:netty-transport\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport\\4.1.97.Final\\f37380d23c9bb079bc702910833b2fd532c9abd0\\netty-transport-4.1.97.Final.jar +it.unimi.dsi\:fastutil\:8.3.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.3.1\\ff33b340d60b81f4c1015fa8008bb30ff0a0d53b\\fastutil-8.3.1.jar +it.unimi.dsi\:fastutil\:8.5.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.5.12\\c24946d46824bd528054bface3231d2ecb7e95e8\\fastutil-8.5.12.jar +net.covers1624\:Quack\:0.4.10.101=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.covers1624\\Quack\\0.4.10.101\\970b7f652b5c40c893ef9a4bf13a97a291587d74\\Quack-0.4.10.101.jar +net.java.dev.jna\:jna-platform\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna-platform\\5.14.0\\28934d48aed814f11e4c584da55c49fa7032b31b\\jna-platform-5.14.0.jar +net.java.dev.jna\:jna\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna\\5.14.0\\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\\jna-5.14.0.jar +net.minecraftforge\:mergetool\:1.1.7\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\mergetool\\1.1.7\\3d41564f78f123d64573cae7948014baf3aaba3f\\mergetool-1.1.7-fatjar.jar +net.minecraftforge\:srgutils\:0.4.15=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\srgutils\\0.4.15\\ca408b131759478f164e010fae0d73997e125fb5\\srgutils-0.4.15.jar +net.neoforged.accesstransformers\:at-parser\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.accesstransformers\\at-parser\\13.0.1\\32c7515f7d07f8099642dab5825cd6cfec86e4e\\at-parser-13.0.1.jar +net.neoforged.installertools\:binarypatcher\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\binarypatcher\\4.0.12\\806a085347408d6883b1317959a8b4b6161596cb\\binarypatcher-4.0.12.jar +net.neoforged.installertools\:cli-utils\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\cli-utils\\4.0.12\\b00bf1b512f149f9f16890a966352f680e1b02b8\\cli-utils-4.0.12.jar +net.neoforged.installertools\:installertools\:2.1.2\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\2.1.2\\62740d5aa8f75f4a4d542d363bdda5b64a198f7a\\installertools-2.1.2-fatjar.jar +net.neoforged.installertools\:installertools\:4.0.12\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\4.0.12\\94b6e47c3f51f8ca40f8c54720369a952b821e95\\installertools-4.0.12-fatjar.jar +net.neoforged.javadoctor\:gson-io\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\gson-io\\2.0.17\\40edf7077205615bffe214a9d250c50cd0d13de\\gson-io-2.0.17.jar +net.neoforged.javadoctor\:spec\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\spec\\2.0.17\\fbe5da0da41957dccf9004014781bd8d05d16192\\spec-2.0.17.jar +net.neoforged.jst\:jst-cli-bundle\:2.0.6=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.jst\\jst-cli-bundle\\2.0.6\\41bc2dcac9fe41493bee064a7e07b63a5d08348\\jst-cli-bundle-2.0.6.jar +net.neoforged\:AutoRenamingTool\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\453980338983da2c30a37774d625fd2dac7cea4f\\AutoRenamingTool-2.0.17.jar +net.neoforged\:AutoRenamingTool\:2.0.17\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\9388df4c3589faf10c35d9154cfb2451c83bd717\\AutoRenamingTool-2.0.17-all.jar +net.neoforged\:AutoRenamingTool\:2.0.3\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.3\\d9890c71b4366f886c2b1006782043a6a6816eb6\\AutoRenamingTool-2.0.3-all.jar +net.neoforged\:accesstransformers\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\accesstransformers\\13.0.1\\5c6200bc80dc1d38b984a106a04d488dddcd642c\\accesstransformers-13.0.1.jar +net.neoforged\:mergetool\:2.0.3\:api=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\1275202cbbb248f49345cf6787ce299afd9a02fb\\mergetool-2.0.3-api.jar +net.neoforged\:mergetool\:2.0.3\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\85c096b0155715275f84922d41462484c9a0285c\\mergetool-2.0.3-fatjar.jar +net.neoforged\:neoform\:1.21.1-20240808.144430@zip=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoform\\1.21.1-20240808.144430\\811e2bd86fa2cda2812e5e8e51d718ea8bd6d3f4\\neoform-1.21.1-20240808.144430.zip +net.neoforged\:srgutils\:1.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\srgutils\\1.0.0\\b9fe6cdab494983217cbc14cc6f92c8e6c616526\\srgutils-1.0.0.jar +net.sf.jopt-simple\:jopt-simple\:5.0.4=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\5.0.4\\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\\jopt-simple-5.0.4.jar +net.sf.jopt-simple\:jopt-simple\:6.0-alpha-3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\6.0-alpha-3\\2ab1a73e1e22d2b73469362a0908a98644b681d\\jopt-simple-6.0-alpha-3.jar +org.apache.commons\:commons-compress\:1.18=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.18\\1191f9f2bc0c47a8cce69193feb1ff0a8bcb37d5\\commons-compress-1.18.jar +org.apache.commons\:commons-compress\:1.26.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.26.0\\659feffdd12280201c8aacb8f7be94f9a883c824\\commons-compress-1.26.0.jar +org.apache.commons\:commons-lang3\:3.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.14.0\\1ed471194b02f2c6cb734a0cd6f6f107c673afae\\commons-lang3-3.14.0.jar +org.apache.commons\:commons-lang3\:3.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.9\\122c7cee69b53ed4a7681c03d4ee4c0e2765da5\\commons-lang3-3.9.jar +org.apache.httpcomponents\:httpclient\:4.5.13=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpclient\\4.5.13\\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\\httpclient-4.5.13.jar +org.apache.httpcomponents\:httpcore\:4.4.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpcore\\4.4.16\\51cf043c87253c9f58b539c9f7e44c8894223850\\httpcore-4.4.16.jar +org.apache.logging.log4j\:log4j-api\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-api\\2.22.1\\bea6fede6328fabafd7e68363161a7ea6605abd1\\log4j-api-2.22.1.jar +org.apache.logging.log4j\:log4j-core\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-core\\2.22.1\\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\\log4j-core-2.22.1.jar +org.apache.logging.log4j\:log4j-slf4j2-impl\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-slf4j2-impl\\2.22.1\\d7e6693c2606cb7e7335047d7bb96dec52db5665\\log4j-slf4j2-impl-2.22.1.jar +org.jcraft\:jorbis\:0.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jcraft\\jorbis\\0.0.17\\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\\jorbis-0.0.17.jar +org.jetbrains\:annotations\:24.1.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jetbrains\\annotations\\24.1.0\\7af6a669488450c4a07c2c3254e2151df42d7d04\\annotations-24.1.0.jar +org.joml\:joml\:1.10.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.joml\\joml\\1.10.5\\22566d58af70ad3d72308bab63b8339906deb649\\joml-1.10.5.jar +org.lwjgl\:lwjgl-freetype\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\\lwjgl-freetype-3.3.3.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\81091b006dbb43fab04c8c638e9ac87c51b4096d\\lwjgl-freetype-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\82028265a0a2ff33523ca75137ada7dc176e5210\\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\\lwjgl-freetype-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-glfw\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\efa1eb78c5ccd840e9f329717109b5e892d72f8e\\lwjgl-glfw-3.3.3.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\e449e28b4891fc423c54c85fbc5bb0b9efece67a\\lwjgl-glfw-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\f27018dc74f6289574502b46cce55d52817554e2\\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\32334f3fd5270a59bad9939a93115acb6de36dcf\\lwjgl-glfw-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\b543467b7ff3c6920539a88ee602d34098628be5\\lwjgl-jemalloc-3.3.3.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\426222fc027602a5f21b9c0fe79cde6a4c7a011f\\lwjgl-jemalloc-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\f6063b6e0f23be483c5c88d84ce51b39dc69126c\\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-openal\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\\lwjgl-openal-3.3.3.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\cf83862ae95d98496b26915024c7e666d8ab1c8f\\lwjgl-openal-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\8e0615235116b9e4160dfe87bec90f5f6378bf72\\lwjgl-openal-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\\lwjgl-openal-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-opengl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\2f6b0147078396a58979125a4c947664e98293a\\lwjgl-opengl-3.3.3.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\e6c1eec8be8a71951b830a4d69efc01c6531900c\\lwjgl-opengl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\65e956d3735a1abdc82eff4baec1b61174697d4b\\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\d32d833dcaa2f355a886eaf21f0408b5f03241d\\lwjgl-opengl-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-stb\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\25dd6161988d7e65f71d5065c99902402ee32746\\lwjgl-stb-3.3.3.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\1d9facdf6541de114b0f963be33505b7679c78cb\\lwjgl-stb-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\a584ab44de569708871f0a79561f4d8c37487f2c\\lwjgl-stb-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\b5c874687b9aac1a936501d4ed2c49567fd1b575\\lwjgl-stb-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\\lwjgl-tinyfd-3.3.3.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a6697981b0449a5087c1d546fc08b4f73e8f98c9\\lwjgl-tinyfd-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a88c494f3006eb91a7433b12a3a55a9a6c20788b\\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\c336c84ee88cccb495c6ffa112395509e7378e8a\\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\\lwjgl-3.3.3.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\\lwjgl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\e9aca8c5479b520a2a7f0d542a118140e812c5e8\\lwjgl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\9e670718e050aeaeea0c2d5b907cffb142f2e58f\\lwjgl-3.3.3-natives-windows-x86.jar +org.lz4\:lz4-java\:1.8.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lz4\\lz4-java\\1.8.0\\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\\lz4-java-1.8.0.jar +org.ow2.asm\:asm-analysis\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.5\\490bacc77de7cbc0be1a30bb3471072d705be4a4\\asm-analysis-9.5.jar +org.ow2.asm\:asm-commons\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.9.1\\ab35de4c537184a09339069f1a3b3aacf2289149\\asm-commons-9.9.1.jar +org.ow2.asm\:asm-tree\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.9.1\\b6b1b3366296163b4b1f540731aad0a2baa484d8\\asm-tree-9.9.1.jar +org.ow2.asm\:asm-util\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.5\\64b5a1fc8c1b15ed2efd6a063e976bc8d3dc5ffe\\asm-util-9.5.jar +org.ow2.asm\:asm\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.9.1\\2ceea6ab43bcae1979b2a6d85fc0ca429877e5ab\\asm-9.9.1.jar +org.slf4j\:slf4j-api\:2.0.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.slf4j\\slf4j-api\\2.0.9\\7cf2726fdcfbc8610f9a71fb3ed639871f315340\\slf4j-api-2.0.9.jar +org.tukaani\:xz\:1.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.tukaani\\xz\\1.10\\1be8166f89e035a56c6bfc67dbc423996fe577e2\\xz-1.10.jar +org.vineflower\:vineflower\:1.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.vineflower\\vineflower\\1.10.1\\4f48c5947b21f9ebc743e7c80215ee839d3dc668\\vineflower-1.10.1.jar +trove\:trove\:1.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\trove\\trove\\1.0.2\\112b40581ab9a4d3de4636d49985a7f686d181c8\\trove-1.0.2.jar diff --git a/common/build/tmp/jar/MANIFEST.MF b/common/build/tmp/jar/MANIFEST.MF new file mode 100644 index 0000000..b703fe1 --- /dev/null +++ b/common/build/tmp/jar/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Specification-Title: Sable +Specification-Vendor: RyanHCode +Specification-Version: 1.2.2 +Implementation-Title: common +Implementation-Version: 1.2.2 +Implementation-Vendor: RyanHCode +Built-On-Minecraft: 1.21.1 + diff --git a/common/build/tmp/neoformruntime/20260511-113857_transformSources/console_output.txt b/common/build/tmp/neoformruntime/20260511-113857_transformSources/console_output.txt new file mode 100644 index 0000000..72b494c --- /dev/null +++ b/common/build/tmp/neoformruntime/20260511-113857_transformSources/console_output.txt @@ -0,0 +1,26 @@ +-------------------------------------------------------------------------------- + +Command-Line: + - C:\Users\user\.jdks\ms-21.0.8\bin\java.exe + - -jar + - C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.jst\jst-cli-bundle\2.0.6\41bc2dcac9fe41493bee064a7e07b63a5d08348\jst-cli-bundle-2.0.6.jar + - --problems-report + - C:\Users\user\IdeaProjects\sable\common\build\tmp\neoformruntime\20260511-113857_transformSources\problems.json + - --libraries-list + - ./libraries.txt + - --in-format + - ARCHIVE + - --out-format + - ARCHIVE + - --enable-accesstransformers + - --access-transformer + - C:\Users\user\IdeaProjects\sable\common\src\main\resources\META-INF\accesstransformer.cfg + - --enable-parchment + - --parchment-mappings=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.parchmentmc.data\parchment-1.21\2024.11.10\4ad04bf9902dca40a36c40ee658fcfb02e53bb1b\parchment-1.21-2024.11.10.zip + - --parchment-conflict-prefix=p_ + - C:\Users\user\.gradle\caches\neoformruntime\intermediate_results\patch_4082d790c2083ce7ace6d8e1617d0474fab5a351_output.zip + - ./output.zip +-------------------------------------------------------------------------------- + +Loading mapping file C:\Users\user\.gradle\caches\modules-2\files-2.1\org.parchmentmc.data\parchment-1.21\2024.11.10\4ad04bf9902dca40a36c40ee658fcfb02e53bb1b\parchment-1.21-2024.11.10.zip +Access transformer PUBLIC LEAVE C:\Users\user\IdeaProjects\sable\common\src\main\resources\META-INF\accesstransformer.cfg:10, targeting net.minecraft.world.entity.projectile.Projectile METHOD Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V did not apply as its target doesn't exist diff --git a/common/build/tmp/neoformruntime/20260511-113857_transformSources/libraries.txt b/common/build/tmp/neoformruntime/20260511-113857_transformSources/libraries.txt new file mode 100644 index 0000000..8249c3d --- /dev/null +++ b/common/build/tmp/neoformruntime/20260511-113857_transformSources/libraries.txt @@ -0,0 +1,74 @@ +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.ibm.icu\icu4j\73.2\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\icu4j-73.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\blocklist\1.0.10\5c685c5ffa94c4cd39496c7184c1d122e515ecef\blocklist-1.0.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\patchy\2.2.10\da05971b07cbb379d002cf7eaec6a2048211fefc\patchy-2.2.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\text2speech\1.17.9\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\text2speech-1.17.9.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-codec\commons-codec\1.16.0\4e3eb3d79888d76b54e28b350915b5dc3919c9de\commons-codec-1.16.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-logging\commons-logging\1.2\4bfc12adfe4842bf07b657f0369c4cb522955686\commons-logging-1.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-compress\1.26.0\659feffdd12280201c8aacb8f7be94f9a883c824\commons-compress-1.26.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpclient\4.5.13\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\httpclient-4.5.13.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.4.16\51cf043c87253c9f58b539c9f7e44c8894223850\httpcore-4.4.16.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\lwjgl-freetype-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\81091b006dbb43fab04c8c638e9ac87c51b4096d\lwjgl-freetype-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\82028265a0a2ff33523ca75137ada7dc176e5210\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\lwjgl-freetype-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\efa1eb78c5ccd840e9f329717109b5e892d72f8e\lwjgl-glfw-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\e449e28b4891fc423c54c85fbc5bb0b9efece67a\lwjgl-glfw-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\f27018dc74f6289574502b46cce55d52817554e2\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\32334f3fd5270a59bad9939a93115acb6de36dcf\lwjgl-glfw-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\b543467b7ff3c6920539a88ee602d34098628be5\lwjgl-jemalloc-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\426222fc027602a5f21b9c0fe79cde6a4c7a011f\lwjgl-jemalloc-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\f6063b6e0f23be483c5c88d84ce51b39dc69126c\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\lwjgl-openal-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\cf83862ae95d98496b26915024c7e666d8ab1c8f\lwjgl-openal-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\8e0615235116b9e4160dfe87bec90f5f6378bf72\lwjgl-openal-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\lwjgl-openal-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\2f6b0147078396a58979125a4c947664e98293a\lwjgl-opengl-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\e6c1eec8be8a71951b830a4d69efc01c6531900c\lwjgl-opengl-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\65e956d3735a1abdc82eff4baec1b61174697d4b\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\d32d833dcaa2f355a886eaf21f0408b5f03241d\lwjgl-opengl-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\25dd6161988d7e65f71d5065c99902402ee32746\lwjgl-stb-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\1d9facdf6541de114b0f963be33505b7679c78cb\lwjgl-stb-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\a584ab44de569708871f0a79561f4d8c37487f2c\lwjgl-stb-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\b5c874687b9aac1a936501d4ed2c49567fd1b575\lwjgl-stb-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\lwjgl-tinyfd-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a6697981b0449a5087c1d546fc08b4f73e8f98c9\lwjgl-tinyfd-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a88c494f3006eb91a7433b12a3a55a9a6c20788b\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\c336c84ee88cccb495c6ffa112395509e7378e8a\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\lwjgl-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\lwjgl-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\e9aca8c5479b520a2a7f0d542a118140e812c5e8\lwjgl-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\9e670718e050aeaeea0c2d5b907cffb142f2e58f\lwjgl-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\ca.weblite\java-objc-bridge\1.1\1227f9e0666314f9de41477e3ec277e542ed7f7b\java-objc-bridge-1.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.3\1275202cbbb248f49345cf6787ce299afd9a02fb\mergetool-2.0.3-api.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\24.1.0\7af6a669488450c4a07c2c3254e2151df42d7d04\annotations-24.1.0.jar diff --git a/common/build/tmp/neoformruntime/20260511-113857_transformSources/problems.json b/common/build/tmp/neoformruntime/20260511-113857_transformSources/problems.json new file mode 100644 index 0000000..5486207 --- /dev/null +++ b/common/build/tmp/neoformruntime/20260511-113857_transformSources/problems.json @@ -0,0 +1,18 @@ +[ + { + "problemId": { + "id": "missing-target", + "displayName": "Missing Target", + "group": { + "id": "access-transformer", + "displayName": "Access Transformers" + } + }, + "severity": "ERROR", + "location": { + "file": "C:\\Users\\user\\IdeaProjects\\sable\\common\\src\\main\\resources\\META-INF\\accesstransformer.cfg", + "line": 10 + }, + "contextualLabel": "The target net.minecraft.world.entity.projectile.Projectile METHOD Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V does not exist." + } +] \ No newline at end of file diff --git a/common/build/tmp/sourcesJar/MANIFEST.MF b/common/build/tmp/sourcesJar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/common/build/tmp/sourcesJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/common/src/main/hexpat/sblvlr.hexpat b/common/src/main/hexpat/sblvlr.hexpat new file mode 100644 index 0000000..3e5d461 --- /dev/null +++ b/common/src/main/hexpat/sblvlr.hexpat @@ -0,0 +1,113 @@ +import std.sys; + +import std.mem; +import std.core; +#pragma endian big + +enum Tag : u8 { + End = 0, + Byte = 1, + Short = 2, + Int = 3, + Long = 4, + Float = 5, + Double = 6, + ByteArray = 7, + String = 8, + List = 9, + Compound = 10, + IntArray = 11, + LongArray = 12 +}; + +enum Version: u8 { + Internal = 0, + External = 128 +}; + +using Element; + +struct Value { + if (parent.tag == Tag::Byte) + s8 value; + else if (parent.tag == Tag::Short) + s16 value; + else if (parent.tag == Tag::Int) + s32 value; + else if (parent.tag == Tag::Long) + s64 value; + else if (parent.tag == Tag::Float) + float value; + else if (parent.tag == Tag::Double) + double value; + else if (parent.tag == Tag::ByteArray) { + s32 arrayLength; + s8 value[arrayLength] [[sealed]]; + } else if (parent.tag == Tag::String) { + u16 stringLength; + char value[stringLength]; + } else if (parent.tag == Tag::List) { + Tag tag; + s32 listLength; + Value values[listLength] [[static]]; + } else if (parent.tag == Tag::Compound) { + Element values[while(true)]; + } else if (parent.tag == Tag::IntArray){ + s32 arrayLength; + s32 value[arrayLength] [[sealed]]; + } else if (parent.tag == Tag::LongArray) { + s32 arrayLength; + s64 value[arrayLength] [[sealed]]; + } else { + std::error(std::format("Invalid tag {}", parent.tag)); + continue; + } +} [[inline]]; + +struct Element { + Tag tag; + if (tag == Tag::End) + break; + else { + u16 nameLength; + + char name[nameLength]; + + Value value; + } +}; + +struct NBT { + Element element[while(true)] [[inline]]; +}; + +struct Allocation { + u24 position; + u8 size; + + if (position == 0 || size == 0) { + continue; + } else { + + + u32 start = position * 128; + u32 dataSize @ start; + Version version @ start + 4; + + if (version == Version::Internal) { + NBT data @ start + 5; + } + } +}; + +struct Header { + Allocation pointer[1024]; +}; + +struct File { + Header header; +}; + + + +File file @ 0x00; \ No newline at end of file diff --git a/common/src/main/hexpat/sblvls.hexpat b/common/src/main/hexpat/sblvls.hexpat new file mode 100644 index 0000000..9ad4f9c --- /dev/null +++ b/common/src/main/hexpat/sblvls.hexpat @@ -0,0 +1,114 @@ +import std.sys; + +import std.mem; +import std.core; +#pragma endian big +#pragma pattern_limit 512000 + +enum Tag : u8 { + End = 0, + Byte = 1, + Short = 2, + Int = 3, + Long = 4, + Float = 5, + Double = 6, + ByteArray = 7, + String = 8, + List = 9, + Compound = 10, + IntArray = 11, + LongArray = 12 +}; + +enum Version: u8 { + Internal = 0, + External = 128 +}; + +using Element; + +struct Value { + if (parent.tag == Tag::Byte) + s8 value; + else if (parent.tag == Tag::Short) + s16 value; + else if (parent.tag == Tag::Int) + s32 value; + else if (parent.tag == Tag::Long) + s64 value; + else if (parent.tag == Tag::Float) + float value; + else if (parent.tag == Tag::Double) + double value; + else if (parent.tag == Tag::ByteArray) { + s32 arrayLength; + s8 value[arrayLength] [[sealed]]; + } else if (parent.tag == Tag::String) { + u16 stringLength; + char value[stringLength]; + } else if (parent.tag == Tag::List) { + Tag tag; + s32 listLength; + Value values[listLength] [[static]]; + } else if (parent.tag == Tag::Compound) { + Element values[while(true)]; + } else if (parent.tag == Tag::IntArray){ + s32 arrayLength; + s32 value[arrayLength] [[sealed]]; + } else if (parent.tag == Tag::LongArray) { + s32 arrayLength; + s64 value[arrayLength] [[sealed]]; + } else { + std::error(std::format("Invalid tag {}", parent.tag)); + continue; + } +} [[inline]]; + +struct Element { + Tag tag; + if (tag == Tag::End) + break; + else { + u16 nameLength; + + char name[nameLength]; + + Value value; + } +}; + +struct NBT { + Element element[while(true)] [[inline]]; +}; + +struct Allocation { + u24 position; + u8 size; + + if (position == 0 || size == 0) { + continue; + } else { + + + u32 start = position * 4096; + u32 dataSize @ start; + Version version @ start + 4; + + if (version == Version::Internal) { + NBT data @ start + 5; + } + } +}; + +struct Header { + Allocation pointer[1024]; +}; + +struct File { + Header header; +}; + + + +File file @ 0x00; \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/ActiveSableCompanion.java b/common/src/main/java/dev/ryanhcode/sable/ActiveSableCompanion.java new file mode 100644 index 0000000..ddc8c23 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/ActiveSableCompanion.java @@ -0,0 +1,499 @@ +package dev.ryanhcode.sable; + +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.SableCompanion; +import dev.ryanhcode.sable.companion.SubLevelAccess; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.SableDistUtil; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Position; +import net.minecraft.core.SectionPos; +import net.minecraft.core.Vec3i; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; +import java.util.UUID; +import java.util.function.BiFunction; + +/** + * The default Sable companion for when Sable is loaded + */ +public class ActiveSableCompanion implements SableCompanion { + + @Override + public Iterable getAllIntersecting(final Level level, final BoundingBox3dc bounds) { + if (!(level instanceof final SubLevelContainerHolder holder)) { + return List.of(); + } + + final SubLevelContainer plotContainer = holder.sable$getPlotContainer(); + + if (plotContainer instanceof final ServerSubLevelContainer serverContainer) { + final SubLevelPhysicsSystem physicsSystem = serverContainer.physicsSystem(); + + return physicsSystem.queryIntersecting(bounds); + } else { + return plotContainer.queryIntersecting(bounds); + } + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final int chunkX, final int chunkZ) { + if (!(level instanceof SubLevelContainerHolder)) { + return null; + } + + final SubLevelContainer container = ((SubLevelContainerHolder) level).sable$getPlotContainer(); + if (container == null) { + return null; + } + + final LevelPlot plot = container.getPlot(chunkX, chunkZ); + return plot != null ? plot.getSubLevel() : null; + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final ChunkPos chunkPos) { + return this.getContaining(level, chunkPos.x, chunkPos.z); + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final SectionPos pos) { + return this.getContaining(level, pos.getX(), pos.getZ()); + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final Vec3i pos) { + return this.getContaining(level, pos.getX() >> SectionPos.SECTION_BITS, pos.getZ() >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final Position pos) { + return this.getContaining(level, Mth.floor(pos.x()) >> SectionPos.SECTION_BITS, Mth.floor(pos.z()) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final Vector3dc pos) { + return this.getContaining(level, Mth.floor(pos.x()) >> SectionPos.SECTION_BITS, Mth.floor(pos.z()) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable SubLevel getContaining(final Level level, final double blockX, final double blockZ) { + return this.getContaining(level, Mth.floor(blockX) >> SectionPos.SECTION_BITS, Mth.floor(blockZ) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable SubLevel getContaining(final Entity entity) { + final ChunkPos chunkPos = entity.chunkPosition(); + return this.getContaining(entity.level(), chunkPos.x, chunkPos.z); + } + + @Override + public @Nullable SubLevel getContaining(final BlockEntity blockEntity) { + final BlockPos pos = blockEntity.getBlockPos(); + return this.getContaining(blockEntity.getLevel(), pos.getX() >> SectionPos.SECTION_BITS, pos.getZ() >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final int chunkX, final int chunkZ) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), chunkX, chunkZ); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final ChunkPos chunkPos) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), chunkPos.x, chunkPos.z); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final Position pos) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), Mth.floor(pos.x()) >> SectionPos.SECTION_BITS, Mth.floor(pos.z()) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final Vector3dc pos) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), Mth.floor(pos.x()) >> SectionPos.SECTION_BITS, Mth.floor(pos.z()) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final SectionPos pos) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), pos.x(), pos.z()); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final Vec3i pos) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), pos.getX() >> SectionPos.SECTION_BITS, pos.getZ() >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final double blockX, final double blockZ) { + return (ClientSubLevel) this.getContaining(SableDistUtil.getClientLevel(), Mth.floor(blockX) >> SectionPos.SECTION_BITS, Mth.floor(blockZ) >> SectionPos.SECTION_BITS); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final Entity entity) { + final ChunkPos chunkPos = entity.chunkPosition(); + return (ClientSubLevel) this.getContaining(entity.level(), chunkPos.x, chunkPos.z); + } + + @Override + public @Nullable ClientSubLevel getContainingClient(final BlockEntity blockEntity) { + final BlockPos pos = blockEntity.getBlockPos(); + return (ClientSubLevel) this.getContaining(blockEntity.getLevel(), pos.getX() >> SectionPos.SECTION_BITS, pos.getZ() >> SectionPos.SECTION_BITS); + } + + @Override + public Vector3d projectOutOfSubLevel(final Level level, final Vector3dc pos, final Vector3d dest) { + final SubLevel subLevel = this.getContaining(level, pos); + + if (subLevel == null) return dest.set(pos); + + final Pose3dc pose; + if (level instanceof final LevelPoseProviderExtension extension) { + pose = extension.sable$getPose(subLevel); + } else { + pose = subLevel.logicalPose(); + } + + return pose.transformPosition(pos, dest); + } + + @Override + public Vec3 projectOutOfSubLevel(final Level level, final Vec3 pos) { + return this.projectOutOfSubLevel(level, (Position) pos); + } + + @Override + public Vec3 projectOutOfSubLevel(final Level level, final Position pos) { + final SubLevel subLevel = this.getContaining(level, pos); + + if (subLevel == null) return pos instanceof final Vec3 vec ? vec : new Vec3(pos.x(), pos.y(), pos.z()); + + final Pose3dc pose; + if (level instanceof final LevelPoseProviderExtension extension) { + pose = extension.sable$getPose(subLevel); + } else { + pose = subLevel.logicalPose(); + } + + return JOMLConversion.toMojang(pose.transformPosition(JOMLConversion.toJOML(pos))); + } + + @Override + public @Nullable T runIncludingSubLevels(final Level level, final Vec3 origin, final boolean shouldCheckOrigin, @Nullable final S subLevel, final BiFunction converter) { + return this.runIncludingSubLevels(level, (Position) origin, shouldCheckOrigin, subLevel, converter); + } + + @SuppressWarnings("unchecked") + @Override + public @Nullable T runIncludingSubLevels(final Level level, final Position origin, final boolean shouldCheckOrigin, @Nullable final S subLevel, final BiFunction converter) { + final BlockPos.MutableBlockPos mutableBlockPos = new BlockPos.MutableBlockPos(origin.x(), origin.y(), origin.z()); + final Vector3d mutablePos = JOMLConversion.toJOML(origin); + T test; + + // Initial test + if (shouldCheckOrigin) { + test = converter.apply(subLevel, mutableBlockPos.immutable()); + if (test != null) + return test; + } + + // Test projectedPos + if (subLevel != null) { + subLevel.logicalPose().transformPosition(mutablePos); + mutableBlockPos.set(mutablePos.x, mutablePos.y, mutablePos.z); + + test = converter.apply(null, mutableBlockPos.immutable()); + if (test != null) + return test; + } + + final Vec3 copyPos = JOMLConversion.toMojang(mutablePos); + + // Test other sub-level plots + final Iterable subLevels = this.getAllIntersecting(level, new BoundingBox3d(BlockPos.containing(JOMLConversion.toMojang(mutablePos)))); + for (final SubLevel otherSubLevel : subLevels) { + if (otherSubLevel == subLevel) // Ignore sub-level if it has already been checked + continue; + + mutablePos.set(copyPos.x, copyPos.y, copyPos.z); + + otherSubLevel.logicalPose().transformPositionInverse(mutablePos); + mutableBlockPos.set(mutablePos.x, mutablePos.y, mutablePos.z); + + test = converter.apply((S) otherSubLevel, mutableBlockPos.immutable()); + if (test != null) + return test; + } + + return null; // Return null if no valid position was found + } + + @Override + public boolean findIncludingSubLevels(final Level level, final Vec3 origin, final boolean shouldCheckOrigin, @Nullable final S subLevel, final BiFunction converter) { + return this.findIncludingSubLevels(level, (Position) origin, shouldCheckOrigin, subLevel, converter); + } + + @Override + public boolean findIncludingSubLevels(final Level level, final Position origin, final boolean shouldCheckOrigin, @Nullable final S subLevel, final BiFunction converter) { + return Boolean.TRUE.equals( + this.runIncludingSubLevels( + level, origin, shouldCheckOrigin, subLevel, + (candidateSublevel, pos) -> Boolean.TRUE.equals(converter.apply(candidateSublevel, pos)) ? true : null //Null is treated as false as a fallback + ) + ); + } + + @Override + public double distanceSquaredWithSubLevels(final Level level, final Vector3dc a, final Vector3dc b) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, a, new Vector3d()); + final Vector3dc globalB = this.projectOutOfSubLevel(level, b, new Vector3d()); + + return globalA.distanceSquared(globalB); + } + + @Override + public double distanceSquaredWithSubLevels(final Level level, final Position a, final Position b) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(a)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(b)); + + return globalA.distanceSquared(globalB); + } + + @Override + public double distanceSquaredWithSubLevels(final Level level, final Vector3dc a, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, a, new Vector3d()); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return globalA.distanceSquared(globalB); + } + + @Override + public double distanceSquaredWithSubLevels(final Level level, final Position a, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(a)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return globalA.distanceSquared(globalB); + } + + @Override + public double distanceSquaredWithSubLevels(final Level level, final double aX, final double aY, final double aZ, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, new Vector3d(aX, aY, aZ)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return globalA.distanceSquared(globalB); + } + + private static double rectilinearDistance(final Vector3dc a, final Vector3dc b) { + final double d0 = Math.abs(b.x() - a.x()); + final double d1 = Math.abs(b.y() - a.y()); + final double d2 = Math.abs(b.z() - a.z()); + return Math.max(d0, Math.max(d1, d2)); + } + + @Override + public double rectilinearDistanceWithSubLevels(final Level level, final Vector3dc a, final Vector3dc b) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, a, new Vector3d()); + final Vector3dc globalB = this.projectOutOfSubLevel(level, b, new Vector3d()); + + return rectilinearDistance(globalA, globalB); + } + + @Override + public double rectilinearDistanceWithSubLevels(final Level level, final Position a, final Position b) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(a)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(b)); + + return rectilinearDistance(globalA, globalB); + } + + @Override + public double rectilinearDistanceWithSubLevels(final Level level, final Vector3dc a, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, a, new Vector3d()); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return rectilinearDistance(globalA, globalB); + } + + @Override + public double rectilinearDistanceWithSubLevels(final Level level, final Position a, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, JOMLConversion.toJOML(a)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return rectilinearDistance(globalA, globalB); + } + + @Override + public double rectilinearDistanceWithSubLevels(final Level level, final double aX, final double aY, final double aZ, final double bX, final double bY, final double bZ) { + final Vector3dc globalA = this.projectOutOfSubLevel(level, new Vector3d(aX, aY, aZ)); + final Vector3dc globalB = this.projectOutOfSubLevel(level, new Vector3d(bX, bY, bZ)); + + return rectilinearDistance(globalA, globalB); + } + + @Override + public Vector3d getVelocity(final Level level, final Vector3dc pos, final Vector3d dest) { + final SubLevel subLevel = this.getContaining(level, pos); + + if (subLevel == null) return dest.zero(); + + return this.getVelocity(level, subLevel, pos, dest); + } + + @Override + public Vec3 getVelocity(final Level level, final Vec3 pos) { + return JOMLConversion.toMojang(this.getVelocity(level, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public Vec3 getVelocity(final Level level, final Position pos) { + return JOMLConversion.toMojang(this.getVelocity(level, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public Vector3d getVelocity(final Level level, final SubLevelAccess subLevel, final Vector3dc pos, final Vector3d dest) { + final Pose3dc pose = subLevel.logicalPose(); + + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + final ServerSubLevelContainer container = SubLevelContainer.getContainer((ServerLevel) level); + assert container != null; + + final RigidBodyHandle handle = container.physicsSystem().getPhysicsHandle(serverSubLevel); + final Vector3dc linearVelocity = handle.getLinearVelocity(new Vector3d()); + final Vector3dc angularVelocity = handle.getAngularVelocity(new Vector3d()); + + // Use dest as a "temp" variable for calculating the local pos, then set it to the real value after + final Vector3dc localPos = pose.transformPosition(pos, dest).sub(pose.position()); + + return angularVelocity.cross(localPos, dest).add(linearVelocity); + } + + // This uses dest to store the transformed position in, then immediately stores the real value after + return pose.transformPosition(pos, new Vector3d()) + .sub(subLevel.lastPose().transformPosition(pos, dest), dest) + .mul(20.0); + } + + @Override + public Vec3 getVelocity(final Level level, final SubLevelAccess subLevel, final Vec3 pos) { + return JOMLConversion.toMojang(Sable.HELPER.getVelocity(level, subLevel, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public Vec3 getVelocity(final Level level, final SubLevelAccess subLevel, final Position pos) { + return JOMLConversion.toMojang(Sable.HELPER.getVelocity(level, subLevel, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public Vector3d getVelocityRelativeToAir(final Level level, final Vector3dc pos, final Vector3d dest) { + return SubLevelHelper.getVelocityRelativeToAir(level, pos, dest); + } + + @Override + public Vec3 getVelocityRelativeToAir(final Level level, final Vec3 pos) { + return JOMLConversion.toMojang(SubLevelHelper.getVelocityRelativeToAir(level, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public Vec3 getVelocityRelativeToAir(final Level level, final Position pos) { + return JOMLConversion.toMojang(SubLevelHelper.getVelocityRelativeToAir(level, JOMLConversion.toJOML(pos), new Vector3d())); + } + + @Override + public boolean isInPlotGrid(final Level level, final int chunkX, final int chunkZ) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + return container != null && container.inBounds(chunkX, chunkZ); + } + + @Override + public @Nullable SubLevel getTrackingSubLevel(final Entity entity) { + return ((EntityMovementExtension) entity).sable$getTrackingSubLevel(); + } + + @Override + public @Nullable SubLevel getLastTrackingSubLevel(final Entity entity) { + final UUID uuid = ((EntityMovementExtension) entity).sable$getLastTrackingSubLevelID(); + if (uuid != null) { + final SubLevelContainer container = SubLevelContainer.getContainer(entity.level()); + return container.getSubLevel(uuid); + } + return null; + } + + @Override + public @Nullable SubLevel getTrackingOrVehicleSubLevel(final Entity entity) { + SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + + if (trackingSubLevel == null) { + trackingSubLevel = Sable.HELPER.getVehicleSubLevel(entity); + } + + return trackingSubLevel; + } + + @Override + public @Nullable SubLevel getVehicleSubLevel(final Entity entity) { + if (entity.getVehicle() != null) { + return Sable.HELPER.getContaining(entity.getVehicle()); + } + + return null; + } + + @Override + public @NotNull Vec3 getEyePositionInterpolated(final Entity entity, final float partialTicks) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingOrVehicleSubLevel(entity); + + if (trackingSubLevel instanceof final ClientSubLevel clientSubLevel) { + final Vector3d startPos = new Vector3d(entity.xo, entity.yo + entity.getEyeHeight(), entity.zo); + final Vector3d endPos = new Vector3d(entity.getX(), entity.getY() + entity.getEyeHeight(), entity.getZ()); + + final Pose3dc renderPose = clientSubLevel.renderPose(partialTicks); + clientSubLevel.lastPose().transformPositionInverse(startPos); + clientSubLevel.logicalPose().transformPositionInverse(endPos); + + startPos.lerp(endPos, partialTicks); + renderPose.transformPosition(startPos); + + return new Vec3(startPos.x, startPos.y, startPos.z); + } else { + return entity.getEyePosition(partialTicks); + } + } + + @Override + public @NotNull Vector3d getFeetPos(final Entity entity, final float distanceDown) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, 1.0f); + return Sable.HELPER.getFeetPos(entity, distanceDown, orientation); + } + + @Override + public Level getClientLevel() { + throw new UnsupportedOperationException("Should not be called"); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/Sable.java b/common/src/main/java/dev/ryanhcode/sable/Sable.java new file mode 100644 index 0000000..47d9fac --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/Sable.java @@ -0,0 +1,123 @@ +package dev.ryanhcode.sable; + +import com.mojang.logging.LogUtils; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.SableCompanion; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.network.tcp.SableTCPPackets; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinitionLoader; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; +import dev.ryanhcode.sable.physics.impl.rapier.RapierPhysicsPipeline; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.sublevel.system.SubLevelTrackingSystem; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointObserver; +import net.minecraft.Util; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; +import org.slf4j.Logger; + +import java.time.DayOfWeek; +import java.time.LocalDate; +import java.util.List; + +public final class Sable { + + public static final String MOD_NAME = "Sable"; + public static final String MOD_ID = "sable"; + + public static final String ISSUE_TRACKER_URL = "https://github.com/ryanhcode/sable/issues"; + + public static final Logger LOGGER = LogUtils.getLogger(); + public static final ActiveSableCompanion HELPER = (ActiveSableCompanion) SableCompanion.INSTANCE; + + @ApiStatus.Internal + public static void init() { + SableTCPPackets.init(); + SableTags.register(); + PhysicsBlockPropertyTypes.register(); + ForceGroups.register(); + + LOGGER.info("{} loaded!", MOD_NAME); + } + + /** + * Creates a physics pipeline with the current configuration. + */ + public static PhysicsPipeline createPhysicsPipeline(final ServerLevel level) { + return new RapierPhysicsPipeline(level); + } + + /** + * @param path the path to the resource + * @return a {@link ResourceLocation} with a {@link Sable#MOD_ID} namespace + */ + public static ResourceLocation sablePath(final String path) { + return ResourceLocation.fromNamespaceAndPath(MOD_ID, path); + } + + /** + * Initializes & sets up sub-level containers to contain physics systems and tracking systems by default. + * + * @param level the level to initialize the container for + * @param container the sub-level container to initialize + */ + @ApiStatus.Internal + public static void defaultSubLevelContainerInitializer(final Level level, final SubLevelContainer container) { + if (container instanceof final ServerSubLevelContainer serverContainer) { + final ServerLevel serverLevel = serverContainer.getLevel(); + + // Give the container a physics system + final SubLevelPhysicsSystem physicsSystem = new SubLevelPhysicsSystem(serverLevel); + physicsSystem.initialize(); + serverContainer.takePhysicsSystem(physicsSystem); + + // Give it a tracking system to notify clients + final SubLevelTrackingSystem trackingSystem = new SubLevelTrackingSystem(serverLevel); + serverContainer.takeTrackingSystem(trackingSystem); + + serverContainer.addObserver(physicsSystem); + serverContainer.addObserver(trackingSystem); + serverContainer.addObserver(new SubLevelTrackingPointObserver(serverLevel)); + + PhysicsBlockPropertiesDefinitionLoader.INSTANCE.applyAll(); + } + } + + private static final List WITTIER_COMMENTS = List.of( + "Hi. I'm Sable and I dislike float casts", + "*plays dead*", + "It wasn't me (it probably was)", + "Lets see if this is repro or cosmic radiation", + "What did you do", + "ooprs", + "dude... thats so mossed up...", + "What is this thing", + "I am capable of so much more than being a crash log. There has to be more to this world.", + "tfw no sable gf", + "someone please advice devs that pancakes are serve" + ); + + private static String getWittierComment() { + try { + if (LocalDate.now().getDayOfWeek() == DayOfWeek.SUNDAY && Util.getMillis() % 2 == 0) { + return "It's sable sunday"; + } + return WITTIER_COMMENTS.get((int) (Util.getMillis() % WITTIER_COMMENTS.size())); + } catch (final Throwable t) { + return "Wittier comment unavailable :("; + } + } + + public static String getCrashHeader() { + return "\n// " + getWittierComment() + + "\nPlease make sure this issue is not caused by Sable before reporting it to other mod authors." + + "\nIf you cannot reproduce it without Sable, file a report on the issue tracker" + + "\n" + ISSUE_TRACKER_URL + + "\n"; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/SableClient.java b/common/src/main/java/dev/ryanhcode/sable/SableClient.java new file mode 100644 index 0000000..32efaed --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/SableClient.java @@ -0,0 +1,48 @@ +package dev.ryanhcode.sable; + +import dev.ryanhcode.sable.debug.SableClientGizmoHandler; +import dev.ryanhcode.sable.network.client.SableClientNetworkEventLoop; +import dev.ryanhcode.sable.render.dynamic_shade.SableDynamicDirectionalShadingPreProcessor; +import dev.ryanhcode.sable.render.sky_light_shadow.SableDynamicSkyLightShadowPreProcessor; +import dev.ryanhcode.sable.render.sky_light_shadow.SableSkyLightShadows; +import dev.ryanhcode.sable.render.water_occlusion.SableWaterOcclusionPreProcessor; +import dev.ryanhcode.sable.render.water_occlusion.WaterOcclusionRenderer; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelShaderProcessor; +import dev.ryanhcode.sable.sublevel.storage.debug.SubLevelContainerInspector; +import foundry.veil.api.client.editor.EditorManager; +import foundry.veil.api.client.render.VeilRenderSystem; +import foundry.veil.platform.VeilEventPlatform; +import net.minecraft.client.Minecraft; + +public class SableClient { + + public static final SableClientGizmoHandler GIZMO_HANDLER = new SableClientGizmoHandler(); + public static SableClientNetworkEventLoop NETWORK_EVENT_LOOP = new SableClientNetworkEventLoop(); + public static WaterOcclusionRenderer WATER_OCCLUSION_RENDERER = new WaterOcclusionRenderer(); + + public static void init() { + VeilEventPlatform.INSTANCE.onVeilRendererAvailable(renderer -> { + if (VeilRenderSystem.hasImGui()) { + final EditorManager editorManager = renderer.getEditorManager(); + + editorManager.add(new SubLevelContainerInspector()); + } + }); + + VeilEventPlatform.INSTANCE.onVeilAddShaderProcessors((provider, registry) -> { + registry.addPreprocessor(new SableDynamicDirectionalShadingPreProcessor(), false); + registry.addPreprocessor(new SableDynamicSkyLightShadowPreProcessor(), false); + registry.addPreprocessor(new SableWaterOcclusionPreProcessor(), false); + registry.addPreprocessor(new FancySubLevelShaderProcessor(), false); + }); + + VeilEventPlatform.INSTANCE.onVeilRenderLevelStage(SableSkyLightShadows::renderShadowMap); + + GIZMO_HANDLER.init(); + } + + public static boolean useNativeTransport() { + final Minecraft client = Minecraft.getInstance(); + return client.options.useNativeTransport(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/SableClientConfig.java b/common/src/main/java/dev/ryanhcode/sable/SableClientConfig.java new file mode 100644 index 0000000..738e880 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/SableClientConfig.java @@ -0,0 +1,101 @@ +package dev.ryanhcode.sable; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixin.config.GameRendererAccessor; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.render.dynamic_shade.SableDynamicDirectionalShading; +import dev.ryanhcode.sable.render.sky_light_shadow.SableSkyLightShadows; +import dev.ryanhcode.sable.render.water_occlusion.WaterOcclusionRenderer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderer; +import foundry.veil.api.client.render.VeilRenderSystem; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.neoforged.neoforge.common.ModConfigSpec; +import org.jetbrains.annotations.ApiStatus; + +import java.util.Arrays; + +public final class SableClientConfig { + + public static final ModConfigSpec SPEC; + + public static final ModConfigSpec.BooleanValue SUB_LEVEL_DYNAMIC_SHADING; + public static final ModConfigSpec.BooleanValue SUB_LEVEL_WATER_OCCLUSION; + public static final ModConfigSpec.BooleanValue SUB_LEVEL_SKYLIGHT_SHADOWS; + public static final ModConfigSpec.DoubleValue INTERPOLATION_DELAY; + public static final ModConfigSpec.EnumValue SELECTED_RENDERER; + public static final ModConfigSpec.DoubleValue ZOOM_SENSITIVITY; + + static { + final ModConfigSpec.Builder builder = new ModConfigSpec.Builder(); + + SUB_LEVEL_DYNAMIC_SHADING = builder + .comment("Whether sub-levels should apply block shading dynamically") + .define("sub_level_dynamic_shading", true); + SUB_LEVEL_WATER_OCCLUSION = builder + .comment("Whether sub-levels can occlude the water surface") + .define("sub_level_water_occlusion", true); + SUB_LEVEL_SKYLIGHT_SHADOWS = builder + .comment("Whether sub-levels should cast a shadow on the world") + .define("sub_level_skylight_shadows", false); + INTERPOLATION_DELAY = builder + .comment("The distance back in game-ticks that the snapshot interpolation should operate") + .defineInRange("sub_level_snapshot_interpolation_delay_ticks", 1.5, 0.0, 100.0); + SELECTED_RENDERER = builder + .comment("The renderer to use for sub-levels") + .defineEnum("sub_level_renderer", SubLevelRenderer.DEFAULT, Arrays.stream(SubLevelRenderer.SelectedRenderer.values()) + .filter(SubLevelRenderer.SelectedRenderer::isSupported) + .toArray(SubLevelRenderer.SelectedRenderer[]::new)); + ZOOM_SENSITIVITY = builder + .comment("The zoom sensitivity for sub-level camera types") + .defineInRange("sub_level_zoom_sensitivity", 0.2, 0.0, 100.0); + + + SPEC = builder.build(); + } + + @ApiStatus.Internal + public static void onUpdate(final boolean notify) { + boolean reloadShaders = false; + boolean reloadChunks = false; + + if (SableDynamicDirectionalShading.isEnabled() != SableClientConfig.SUB_LEVEL_DYNAMIC_SHADING.getAsBoolean()) { + SableDynamicDirectionalShading.setIsEnabled(SableClientConfig.SUB_LEVEL_DYNAMIC_SHADING.getAsBoolean()); + reloadShaders = true; + reloadChunks = true; + } + + if (SableSkyLightShadows.isEnabled() != SableClientConfig.SUB_LEVEL_SKYLIGHT_SHADOWS.getAsBoolean()) { + SableSkyLightShadows.setIsEnabled(SableClientConfig.SUB_LEVEL_SKYLIGHT_SHADOWS.getAsBoolean()); + reloadShaders = true; + } + + if (WaterOcclusionRenderer.isEnabled() != SableClientConfig.SUB_LEVEL_WATER_OCCLUSION.getAsBoolean()) { + WaterOcclusionRenderer.setIsEnabled(SableClientConfig.SUB_LEVEL_WATER_OCCLUSION.getAsBoolean()); + reloadShaders = true; + } + + Minecraft.getInstance().execute(() -> SubLevelRenderer.setImpl(SableClientConfig.SELECTED_RENDERER.get())); + + if (notify) { + if (reloadShaders) { + VeilRenderSystem.renderer().getVanillaShaderCompiler().reload(((GameRendererAccessor) Minecraft.getInstance().gameRenderer).getShaders().values()); + } + + if (reloadChunks) { + Minecraft.getInstance().execute(() -> { + VeilRenderSystem.rebuildChunks(); + final ClientLevel level = Minecraft.getInstance().level; + if (level != null) { + final SubLevelContainer plotContainer = ((SubLevelContainerHolder) level).sable$getPlotContainer(); + for (final SubLevel sublevel : plotContainer.getAllSubLevels()) { + ((ClientSubLevel) sublevel).getRenderData().rebuild(); + } + } + }); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/SableCommonEvents.java b/common/src/main/java/dev/ryanhcode/sable/SableCommonEvents.java new file mode 100644 index 0000000..cd57d9d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/SableCommonEvents.java @@ -0,0 +1,98 @@ +package dev.ryanhcode.sable; + +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundFloatingBlockMaterialPacket; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundPhysicsPropertyPacket; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinitionLoader; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockController; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import dev.ryanhcode.sable.sublevel.plot.heat.SubLevelHeatMapManager; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import foundry.veil.api.network.VeilPacketManager; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; + +/** + * Common events either dispatched to from mixins for hotswapping convenience, or dispatched to from platform-specific events + */ +public class SableCommonEvents { + /** + * Handles a change in blockstate in a chunk at chunk-relative position x, y, z. + * Only called server-side. + */ + public static void handleBlockChange(final ServerLevel level, final LevelChunk chunk, final int x, final int y, final int z, final BlockState oldState, final BlockState newState) { + final ChunkPos chunkPos = chunk.getPos(); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + + final PlotChunkHolder plotChunk = container.getChunkHolder(chunkPos); + + final int localX = x & SectionPos.SECTION_MASK; + final int localZ = z & SectionPos.SECTION_MASK; + + if (plotChunk != null) { + final LevelPlot plot = container.getPlot(chunkPos); + final BlockPos blockPos = new BlockPos(x, y, z); + + plotChunk.handleBlockChange(localX, y, localZ, oldState, newState); + plot.updateBoundingBox(); + plot.expandIfNecessary(blockPos); + + final SubLevel subLevel = plot.getSubLevel(); + + final WaterOcclusionContainer waterOcclusionContainer = WaterOcclusionContainer.getContainer(level); + + if (waterOcclusionContainer != null) { + if (VoxelNeighborhoodState.isSolid(level, blockPos, oldState) != VoxelNeighborhoodState.isSolid(level, blockPos, newState)) { + waterOcclusionContainer.markDirty(blockPos); + } + } + + // Handle heatmap addition / removal + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + final SubLevelHeatMapManager heatMapManager = serverSubLevel.getHeatMapManager(); + final FloatingBlockController floatingBlockController = serverSubLevel.getFloatingBlockController(); + + if (oldState != newState){ + floatingBlockController.queueRemoveFloatingBlock(oldState, blockPos); + floatingBlockController.queueAddFloatingBlock(newState, blockPos); + } + + if (oldState.isAir() && !newState.isAir()) { + heatMapManager.onSolidAdded(blockPos); + } + + if (!oldState.isAir() && newState.isAir()) { + heatMapManager.onSolidRemoved(blockPos); + } + } + + if (subLevel.isRemoved()) { + return; + } + } + + final int idx = chunk.getSectionIndex(y); + final LevelChunkSection section = chunk.getSection(idx); + final SectionPos sectionPos = SectionPos.of(chunkPos, chunk.getSectionYFromSectionIndex(idx)); + + container.physicsSystem().handleBlockChange(sectionPos, section, localX, y & 15, localZ, oldState, newState); + } + + public static void syncDataPacket(final VeilPacketManager.PacketSink sink) { + sink.sendPacket(PhysicsBlockPropertiesDefinitionLoader.INSTANCE.getDefinitions().stream().map(ClientboundPhysicsPropertyPacket::new).toArray(CustomPacketPayload[]::new)); + sink.sendPacket(FloatingBlockMaterialDataHandler.allMaterials.entrySet().stream().map(e -> new ClientboundFloatingBlockMaterialPacket(e.getKey(), e.getValue())).toArray(CustomPacketPayload[]::new)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/SableConfig.java b/common/src/main/java/dev/ryanhcode/sable/SableConfig.java new file mode 100644 index 0000000..27f47db --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/SableConfig.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable; + +import net.neoforged.neoforge.common.ModConfigSpec; + +public final class SableConfig { + + public static final ModConfigSpec SPEC; + + public static final ModConfigSpec.BooleanValue SUB_LEVEL_SPLITTING; + public static final ModConfigSpec.IntValue SUB_LEVEL_SPLITTING_HEATMAP_STEPS_PER_TICK; + public static final ModConfigSpec.DoubleValue SUB_LEVEL_TRACKING_RANGE; + public static final ModConfigSpec.DoubleValue SUB_LEVEL_REMOVE_MIN; + public static final ModConfigSpec.DoubleValue SUB_LEVEL_REMOVE_MAX; + public static final ModConfigSpec.DoubleValue VELOCITY_RETAINED_ON_LOAD; + public static final ModConfigSpec.DoubleValue SUB_LEVEL_PUNCH_STRENGTH_MULTIPLIER; + public static final ModConfigSpec.DoubleValue SUB_LEVEL_PUNCH_DOWNWARD_STRENGTH_MULTIPLIER; + public static final ModConfigSpec.IntValue SUB_LEVEL_PUNCH_COOLDOWN_TICKS; + public static final ModConfigSpec.BooleanValue DISABLE_UDP_PIPELINE; + public static final ModConfigSpec.BooleanValue ATTEMPT_UDP_NETWORKING; + + static { + final ModConfigSpec.Builder builder = new ModConfigSpec.Builder(); + + SUB_LEVEL_SPLITTING = builder + .comment("Whether sub-levels can split when parts are separated") + .define("sub_level_splitting", true); + SUB_LEVEL_SPLITTING_HEATMAP_STEPS_PER_TICK = builder + .comment("Sub-level splitting heatmap steps that take place per tick") + .defineInRange("sub_level_splitting_heatmap_steps", 200, 1, Integer.MAX_VALUE); + SUB_LEVEL_TRACKING_RANGE = builder + .comment("The distance to network sub-levels to players at") + .defineInRange("sub_level_tracking_range", 320.0, 1.0, Double.MAX_VALUE); + SUB_LEVEL_REMOVE_MIN = builder + .comment("The minimum y coordinate sub-levels can exist at") + .defineInRange("sub_level_remove_min", -10_000, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY); + SUB_LEVEL_REMOVE_MAX = builder + .comment("The maximum y coordinate sub-levels can exist at") + .defineInRange("sub_level_remove_max", 100_000, Double.NEGATIVE_INFINITY, Double.POSITIVE_INFINITY); + VELOCITY_RETAINED_ON_LOAD = builder + .comment("The fraction of velocity that is retained when a sub-level is loaded in. A value of 0.0 will " + + "indicate that no velocity should be carried over, while a value of 1.0 would carry over 100% of " + + "velocity on load.") + .defineInRange("sub_level_velocity_retained_on_load", 0.9, 0.0, 1.0); + SUB_LEVEL_PUNCH_STRENGTH_MULTIPLIER = builder + .comment("The strength multiplier applied to sub-level punching impulses") + .defineInRange("sub_level_punch_strength_multiplier", 2.1, 0.0, Double.POSITIVE_INFINITY); + SUB_LEVEL_PUNCH_DOWNWARD_STRENGTH_MULTIPLIER = builder + .comment("The strength multiplier applied to the vertical component of downward sub-level punching impulses (to prevent jumping by punching the ground while standing on something light)") + .defineInRange("sub_level_punch_downward_strength_multiplier", 0.175, 0.0, Double.POSITIVE_INFINITY); + SUB_LEVEL_PUNCH_COOLDOWN_TICKS = builder + .comment("The cooldown in ticks between sub-level punches") + .defineInRange("sub_level_punch_cooldown_ticks", 3, 0, Integer.MAX_VALUE); + DISABLE_UDP_PIPELINE = builder + .comment("If the entire Sable UDP Networking pipeline should be disabled. This can improve compatibility with certain mods like Replay mod and certain networking setups, but will have worse performance and latency for networking sub-levels.") + .define("disable_udp_pipeline", false); + ATTEMPT_UDP_NETWORKING = builder + .comment("If Sable should attempt to authenticate with clients and send them sub-level data over UDP") + .define("attempt_udp_networking", true); + + SPEC = builder.build(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.java b/common/src/main/java/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.java new file mode 100644 index 0000000..9e3df64 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.annotation; + +import java.lang.annotation.ElementType; +import java.lang.annotation.Retention; +import java.lang.annotation.RetentionPolicy; +import java.lang.annotation.Target; + +@Target(ElementType.TYPE) +@Retention(RetentionPolicy.RUNTIME) +public @interface MixinModVersionConstraint { + /** + * The version range in maven format + */ + String value(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.java b/common/src/main/java/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.java new file mode 100644 index 0000000..c95b740 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.java @@ -0,0 +1,543 @@ +package dev.ryanhcode.sable.api; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockSubLevelAssemblyListener; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.platform.SableAssemblyPlatform; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import dev.ryanhcode.sable.sublevel.tracking_points.TrackingPoint; +import dev.ryanhcode.sable.util.BoundedBitVolume3i; +import dev.ryanhcode.sable.util.LevelAccelerator; +import it.unimi.dsi.fastutil.Pair; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.SectionPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.FullChunkStatus; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.Clearable; +import net.minecraft.world.RandomizableContainer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.decoration.HangingEntity; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.BellBlock; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BellAttachType; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector2i; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.*; + +/** + * Utility class for mass movement of collections of blocks between world and plot. + */ +public class SubLevelAssemblyHelper { + + /** + * Assembles a collection of blocks into a sub-level. + * + * @param level the level in which the blocks are located + * @param anchor the block that will be placed at the center of the sub-level + * @param blocks all blocks that will be assembled into the sub-level + * @param bounds the bounds in which {@link TrackingPoint tracking points} and retained entities will be moved + */ + public static ServerSubLevel assembleBlocks(final ServerLevel level, final BlockPos anchor, final Iterable blocks, final BoundingBox3ic bounds) { + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + assert container != null; + + final SubLevel containingSubLevel = Sable.HELPER.getContaining(level, anchor); + final Pose3d pose = new Pose3d(); + + pose.position().set(anchor.getX() + 0.5, anchor.getY() + 0.5, anchor.getZ() + 0.5); + if (containingSubLevel != null) { + final Pose3d containingPose = containingSubLevel.logicalPose(); + containingPose.transformPosition(pose.position()); + pose.orientation().set(containingPose.orientation()); + } + + final ServerSubLevel subLevel = (ServerSubLevel) container.allocateNewSubLevel(pose); + + final LevelPlot plot = subLevel.getPlot(); + plot.newEmptyChunk(plot.getCenterChunk()); + + final BlockPos plotAnchor = plot.getCenterBlock(); + final SubLevelAssemblyHelper.AssemblyTransform transform = new SubLevelAssemblyHelper.AssemblyTransform(anchor, plotAnchor, 0, Rotation.NONE, level); + SubLevelAssemblyHelper.moveOtherStuff(level, transform, blocks, bounds); + SubLevelAssemblyHelper.moveBlocks(level, transform, blocks); + + final Vector3dc centerOfMass = subLevel.getMassTracker().getCenterOfMass(); + Vec3 subLevelCenter = Vec3.atLowerCornerOf(anchor); + + if (centerOfMass != null) { + subLevelCenter = subLevelCenter + .subtract(Vec3.atLowerCornerOf(plotAnchor)) + .add(centerOfMass.x(), centerOfMass.y(), centerOfMass.z()); + } else { + subLevel.logicalPose().rotationPoint() + .set(plotAnchor.getX() + 0.5, plotAnchor.getY() + 0.5, plotAnchor.getZ() + 0.5); + } + + subLevel.logicalPose().position().set(subLevelCenter.x, subLevelCenter.y, subLevelCenter.z); + + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + final PhysicsPipeline pipeline = physicsSystem.getPipeline(); + + if (containingSubLevel != null) { + kickFromContainingSubLevel(level, physicsSystem, pipeline, subLevel, containingSubLevel); + } + + pipeline.teleport(subLevel, subLevel.logicalPose().position(), subLevel.logicalPose().orientation()); + subLevel.updateLastPose(); + + SubLevelAssemblyHelper.moveTrackingPoints(level, bounds, subLevel, transform); + + return subLevel; + } + + @ApiStatus.Internal + public static void kickFromContainingSubLevel(final ServerLevel level, + final SubLevelPhysicsSystem physicsSystem, + final PhysicsPipeline pipeline, + final ServerSubLevel subLevel, + final SubLevel containingSubLevel) { + final Pose3d originalPose = new Pose3d(subLevel.logicalPose()); + + final Vector3d velocity = Sable.HELPER.getVelocity(level, subLevel.logicalPose().position(), new Vector3d()); + final RigidBodyHandle containingHandle = physicsSystem.getPhysicsHandle((ServerSubLevel) containingSubLevel); + pipeline.addLinearAndAngularVelocity(subLevel, velocity, containingHandle.getAngularVelocity()); + + // re-transform after center of mass is fixed + // we don't need to set the orientation again as it couldn't have changed + final Pose3d containingPose = containingSubLevel.logicalPose(); + containingPose.transformPosition(subLevel.logicalPose().position()); + + subLevel.setSplitFrom((ServerSubLevel) containingSubLevel, originalPose); + } + + /** + * Attempts to gather all connected blocks from a given assembly origin.
+ * searches in a 3x3x3 area around every block + * + * @param gatherOrigin Origin of the gathering process. + * @param level The level this gathering is taking place in. + * @param maximumBlocksToAssemble the maximum blocks to gather. + * @param frontierPredicate A specific predicate analysed per blockpos visited that is not an AIR block. Exposes the current BlockPos candidate and its blockstate. + * @return a {@link GatherResult gather result} that holds the blocks gathered, bounds of the volume, and an error state if gathering was unsuccessful. + */ + public static @NotNull SubLevelAssemblyHelper.GatherResult gatherConnectedBlocks(final BlockPos gatherOrigin, final ServerLevel level, final int maximumBlocksToAssemble, @Nullable final FrontierPredicate frontierPredicate) { + final LinkedHashSet> frontier = new LinkedHashSet<>(1 << 12); + final Set blocks = new ObjectOpenHashSet<>(1 << 10); + final LevelAccelerator accelerator = new LevelAccelerator(level); + + final BlockState gatherOriginState = accelerator.getBlockState(gatherOrigin); + + if (gatherOriginState.isAir()) { + return new GatherResult(null, 0, null, GatherResult.State.NO_BLOCKS); + } + + frontier.add(Pair.of(gatherOrigin, gatherOriginState)); + + int minX = gatherOrigin.getX(), minY = gatherOrigin.getY(), minZ = gatherOrigin.getZ(); + int maxX = gatherOrigin.getX(), maxY = gatherOrigin.getY(), maxZ = gatherOrigin.getZ(); + + + int blockCount = 0; + final BlockPos.MutableBlockPos mutablePos = new BlockPos.MutableBlockPos(); + while (!frontier.isEmpty()) { + final Pair pair = frontier.removeFirst(); + final BlockPos pos = pair.key(); + + blockCount++; + if (blockCount > maximumBlocksToAssemble) { + return new GatherResult(null, blockCount, null, GatherResult.State.TOO_MANY_BLOCKS); + } + + minX = Math.min(minX, pos.getX()); + minY = Math.min(minY, pos.getY()); + minZ = Math.min(minZ, pos.getZ()); + + maxX = Math.max(maxX, pos.getX()); + maxY = Math.max(maxY, pos.getY()); + maxZ = Math.max(maxZ, pos.getZ()); + + blocks.add(pos); + + for (int x = -1; x <= 1; x++) { + for (int y = -1; y <= 1; y++) { + for (int z = -1; z <= 1; z++) { + if (x == 0 && y == 0 && z == 0) { + continue; + } + + // don't connect corners, only edges + final int absTotal = Math.abs(x) + Math.abs(y) + Math.abs(z); + if (absTotal == 3) { + continue; + } + + final BlockPos candidate = mutablePos.set(pos.getX() + x, pos.getY() + y, pos.getZ() + z); + + if (frontier.contains(candidate)) { + continue; + } + + final Direction direction = absTotal == 1 ? Direction.fromDelta(x, y, z) : null; + final BlockState candidateState = accelerator.getBlockState(candidate); + + if (candidateState.isAir()) { + continue; + } + + if (frontierPredicate != null && !frontierPredicate.isValidConnection(pos, pair.second(), candidate, candidateState, direction)) { + continue; + } + + if (!blocks.contains(candidate)) { + frontier.add(Pair.of(candidate.immutable(), candidateState)); + } + } + } + } + } + + final BoundingBox3i bounds = new BoundingBox3i( + minX, minY, minZ, + maxX, maxY, maxZ + ); + + if (blocks.isEmpty()) { + return new GatherResult(null, blockCount, null, GatherResult.State.NO_BLOCKS); + } + + return new GatherResult(blocks, blockCount, bounds, GatherResult.State.SUCCESS); + } + + public static void moveTrackingPoints(final ServerLevel level, final BoundingBox3ic bounds, final ServerSubLevel subLevel, final AssemblyTransform transform) { + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad(level); + final Iterable> points = data.getAllTrackingPoints(bounds); + + for (final Pair entry : points) { + final UUID key = entry.key(); + final TrackingPoint point = new TrackingPoint( + subLevel != null, + subLevel != null ? subLevel.getUniqueId() : null, + subLevel != null ? subLevel.getLastSerializationPointer() : null, + JOMLConversion.toJOML(transform.apply(JOMLConversion.toMojang(entry.value().point()))), + entry.value().globalPlaceholderPosition() + ); + + data.setTrackingPoint(key, point); + } + } + + public static void moveOtherStuff(final ServerLevel level, final AssemblyTransform transform, final Iterable blocks, final BoundingBox3ic bounds) { + final List entities = level.getEntitiesOfClass(Entity.class, bounds.toAABB().inflate(2.0)); + final boolean needsBitSet = needsBitSet(level, bounds, entities); + + if (!needsBitSet) return; + + final BoundedBitVolume3i volume = BoundedBitVolume3i.fromBlocks(blocks); + assert volume != null; + + for (final Entity entity : entities) { + boolean moveEntity = false; + + if (entity instanceof final HangingEntity hangingEntity) { + moveEntity = BlockPos.betweenClosedStream(hangingEntity.calculateSupportBox()).anyMatch(blockPos -> + volume.getOccupied(blockPos.getX(), blockPos.getY(), blockPos.getZ())); + } + + if (moveEntity) { + entity.setPos(transform.apply(entity.position())); + } + } + } + + private static boolean needsBitSet(final ServerLevel level, final BoundingBox3ic bounds, final List entities) { + return !entities.isEmpty(); + } + + /** + * For what good is the movement of a king if his people do not follow? + */ + public static void moveBlocks(final ServerLevel level, final AssemblyTransform transform, final Iterable blocks) { + final ServerLevel resultingLevel = transform.resultingLevel; + + final LevelAccelerator accelerator = new LevelAccelerator(level); + final LevelAccelerator resultingAccelerator = new LevelAccelerator(resultingLevel); + + final List states = new ArrayList<>(); + + BlockPos firstBlock = null; + Vector2i chunkBoundsMin = null; + Vector2i chunkBoundsMax = null; + for (final BlockPos block : blocks) { + if (firstBlock == null) { + firstBlock = block; + } + final ChunkPos chunk = new ChunkPos(transform.apply(block)); + + final Vector2i jomlChunkPos = new Vector2i(chunk.x, chunk.z); + if (chunkBoundsMin == null) { + chunkBoundsMin = new Vector2i(jomlChunkPos); + chunkBoundsMax = new Vector2i(jomlChunkPos); + } + + chunkBoundsMin.min(jomlChunkPos); + chunkBoundsMax.max(jomlChunkPos); + } + + final SubLevel subLevel = Sable.HELPER.getContaining(level, transform.apply(firstBlock)); + if (subLevel != null) { + final LevelPlot plot = subLevel.getPlot(); + + for (int chunkX = chunkBoundsMin.x; chunkX <= chunkBoundsMax.x; chunkX++) { + for (int chunkZ = chunkBoundsMin.y; chunkZ <= chunkBoundsMax.y; chunkZ++) { + if (plot.getChunkHolder(plot.toLocal(new ChunkPos(chunkX, chunkZ))) == null) { + plot.newEmptyChunk(new ChunkPos(chunkX, chunkZ)); + } + } + } + } + + SableAssemblyPlatform.INSTANCE.setIgnoreOnPlace(resultingLevel, true); + for (final BlockPos block : blocks) { + final BlockState state = accelerator.getBlockState(block); + final BlockPos newPos = transform.apply(block); + + try { + final BlockState subLevelState = transform.apply(state); + + if (state.getBlock() instanceof final BlockSubLevelAssemblyListener listener) { + listener.beforeMove(level, resultingLevel, state, block, newPos); + } + + final BlockEntity blockEntity = level.getBlockEntity(block); + + CompoundTag tag = null; + + if (blockEntity != null) { + tag = blockEntity.saveWithFullMetadata(level.registryAccess()); + + tag.putInt("x", newPos.getX()); + tag.putInt("y", newPos.getY()); + tag.putInt("z", newPos.getZ()); + } + + if (blockEntity instanceof final RandomizableContainer container) { + container.setLootTable(null); + } + if (blockEntity instanceof final Clearable clearable) { + clearable.clearContent(); + } + + final LevelChunk chunk = resultingAccelerator.getChunk(SectionPos.blockToSectionCoord(newPos.getX()), SectionPos.blockToSectionCoord(newPos.getZ())); + + chunk.setBlockState(newPos, subLevelState, true); + states.add(subLevelState); + + final BlockEntity newBlockEntity = resultingLevel.getBlockEntity(newPos); + + if (newBlockEntity != null && tag != null) { + newBlockEntity.loadWithComponents(tag, level.registryAccess()); + } + + if (state.getBlock() instanceof final BlockSubLevelAssemblyListener listener) { + listener.afterMove(level, resultingLevel, state, block, newPos); + } + } catch (final Exception e) { + Sable.LOGGER.error("Failed to move block {} at {} to {}", state, block, newPos, e); + } + } + SableAssemblyPlatform.INSTANCE.setIgnoreOnPlace(resultingLevel, false); + + int i = 0; + for (final BlockPos untransformed : blocks) { + final BlockPos pos = transform.apply(untransformed); + + try { + final LevelChunk levelchunk = resultingAccelerator.getChunk(SectionPos.blockToSectionCoord(pos.getX()), SectionPos.blockToSectionCoord(pos.getZ())); + final BlockState subLevelState = states.get(i); + SubLevelAssemblyHelper.markAndNotifyBlock(resultingLevel, pos, levelchunk, Blocks.AIR.defaultBlockState(), subLevelState, 3, 512); + } catch (final Exception e) { + Sable.LOGGER.error("Failed to mark & notify block {} (untransformed = {})", pos, untransformed, e); + } + + i++; + } + + SableAssemblyPlatform.INSTANCE.setIgnoreOnPlace(resultingLevel, true); + // destroy all the old blocks + for (final BlockPos block : blocks) { + final BlockState subLevelState = Blocks.AIR.defaultBlockState(); + + try { + final LevelChunk chunk = accelerator.getChunk(SectionPos.blockToSectionCoord(block.getX()), + SectionPos.blockToSectionCoord(block.getZ())); + + chunk.setBlockState(block, subLevelState, true); + } catch (final Exception e) { + Sable.LOGGER.error("Failed to destroy old block during assembly {}", block, e); + } + } + SableAssemblyPlatform.INSTANCE.setIgnoreOnPlace(resultingLevel, false); + + for (final BlockPos block : blocks) { + final BlockState subLevelState = Blocks.AIR.defaultBlockState(); + resultingLevel.sendBlockUpdated(block, Blocks.STONE.defaultBlockState(), subLevelState, 3); + } + } + + public static void markAndNotifyBlock(final Level level, final BlockPos pPos, @Nullable final LevelChunk levelchunk, final BlockState oldState, final BlockState newState, final int pFlags, final int pRecursionLeft) { + final Block block = newState.getBlock(); + final BlockState worldState = level.getBlockState(pPos); + if (worldState == newState) { + if (oldState != worldState) { + level.setBlocksDirty(pPos, oldState, worldState); + } + + if ((pFlags & 2) != 0 && levelchunk.getFullStatus() != null && levelchunk.getFullStatus().isOrAfter(FullChunkStatus.BLOCK_TICKING)) { + level.sendBlockUpdated(pPos, oldState, newState, pFlags); + } + + if ((pFlags & 1) != 0) { + level.blockUpdated(pPos, oldState.getBlock()); + if (newState.hasAnalogOutputSignal()) { + level.updateNeighbourForOutputSignal(pPos, block); + } + } + + if ((pFlags & 16) == 0 && pRecursionLeft > 0) { + final int i = pFlags & -34; + oldState.updateIndirectNeighbourShapes(level, pPos, i, pRecursionLeft - 1); + newState.updateNeighbourShapes(level, pPos, i, pRecursionLeft - 1); + newState.updateIndirectNeighbourShapes(level, pPos, i, pRecursionLeft - 1); + } + + level.onBlockStateChange(pPos, oldState, worldState); + } + } + + @FunctionalInterface + public interface FrontierPredicate { + + /** + * @param originPos the pos that is attempting to connect to `pos` + * @param originState the state that is attempting to connect to `pos` + * @param pos the block we are trying to connect to + * @param state the state of the block we are trying to connect to + * @param directionFrom the direction we are checking connection from, or null if the connection is along diagonals + * @return if the connection is valid + */ + boolean isValidConnection(BlockPos originPos, BlockState originState, BlockPos pos, BlockState state, @Nullable Direction directionFrom); + + } + + /** + * Transform for assembly/dissasembly + */ + public static class AssemblyTransform { + + private final BlockPos anchorPos; + private final BlockPos resultingAnchorPos; + + /** + * 90-degree counter clockwise increments + */ + private final int angle; + private final Rotation rotation; + + private final ServerLevel resultingLevel; + + public AssemblyTransform(final BlockPos anchorPos, + final BlockPos resultingAnchorPos, + final int angle, + final Rotation rotation, + final ServerLevel resultingLevel) { + this.anchorPos = anchorPos; + this.resultingAnchorPos = resultingAnchorPos; + this.angle = angle; + this.rotation = rotation; + this.resultingLevel = resultingLevel; + } + + public Vec3 apply(Vec3 pos) { + pos = pos.subtract(this.anchorPos.getCenter()) + .yRot((float) (this.angle * Math.PI / 2.0)) + .add(this.resultingAnchorPos.getCenter()); + return pos; + } + + public BlockPos apply(final BlockPos pos) { + return BlockPos.containing(this.apply(pos.getCenter())); + } + + public BlockState apply(BlockState state) { + final Block block = state.getBlock(); + + if (block instanceof BellBlock) { + if (state.getValue(BlockStateProperties.BELL_ATTACHMENT) == BellAttachType.DOUBLE_WALL) + state = state.setValue(BlockStateProperties.BELL_ATTACHMENT, BellAttachType.SINGLE_WALL); + return state.setValue(BellBlock.FACING, + this.rotation.rotate(state.getValue(BellBlock.FACING))); + } + + return state.rotate(this.rotation); + } + + public ServerLevel getLevel() { + return this.resultingLevel; + } + + public Rotation getRotation() { + return this.rotation; + } + } + + /** + * The result of {@link SubLevelAssemblyHelper#gatherConnectedBlocks(BlockPos, ServerLevel, int, FrontierPredicate)} gather connected blocks. + * + * @param blocks The blocks gathered during the process. + * @param boundingBox The total bounding box for this gathering + * @param checkedBlocks How many blocks were checked in the process. + * @param assemblyState The error state of this process. + */ + public record GatherResult(@Nullable Set blocks, int checkedBlocks, @Nullable BoundingBox3i boundingBox, + State assemblyState) { + public enum State { + SUCCESS("commands.sable.sub_level.assemble.connected.success"), + TOO_MANY_BLOCKS("commands.sable.sub_level.assemble.connected.too_many_blocks"), + NO_BLOCKS("commands.sable.sub_level.assemble.no_blocks"); + + public final String errorKey; + + State(final String errorKey) { + this.errorKey = errorKey; + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/SubLevelHelper.java b/common/src/main/java/dev/ryanhcode/sable/api/SubLevelHelper.java new file mode 100644 index 0000000..29be370 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/SubLevelHelper.java @@ -0,0 +1,240 @@ +package dev.ryanhcode.sable.api; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.mixinterface.EntityExtension; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.commands.arguments.EntityAnchorArgument; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Collection; +import java.util.function.BiFunction; + +/** + * A helper class for handling interactions between sub-levels<->sub-levels and sub-levels<->levels + */ +@ApiStatus.Internal +public final class SubLevelHelper { + + private static final ThreadLocal oldRot = ThreadLocal.withInitial(EntityRot::new); + private static final ObjectList> windProviders = new ObjectArrayList<>(); + + /** + * Projects a full entity into a subLevel, rotation and all. + * Pushing an entity into local space of a sub-level caches old values for its old rotations. + * As such, it is important to call {@link SubLevelHelper#popEntityLocal} after calling {@link SubLevelHelper#pushEntityLocal} before pushing another entity. + * Projects the entity position, not the eye position. + * + * @param subLevel The subLevel to project into + * @param entity The entity to project + */ + public static void pushEntityLocal(final SubLevel subLevel, final Entity entity) { + SubLevelHelper.pushEntityLocal(subLevel, entity, EntityAnchorArgument.Anchor.FEET); + } + + /** + * Projects a full entity out of a subLevel, rotation and all. + * Uses the cached values from {@link SubLevelHelper#pushEntityLocal}. + * Projects the entity position, not the eye position. + * + * @param subLevel The subLevel to project out of + * @param player The entity to project + */ + public static void popEntityLocal(final SubLevel subLevel, final Entity player) { + SubLevelHelper.popEntityLocal(subLevel, player, EntityAnchorArgument.Anchor.FEET); + } + + /** + * Projects a full entity into a subLevel, rotation and all. + * Pushing an entity into local space of a sub-level caches old values for its old rotations. + * As such, it is important to call {@link SubLevelHelper#popEntityLocal} after calling {@link SubLevelHelper#pushEntityLocal} before pushing another entity. + * + * @param subLevel The subLevel to project into + * @param entity The entity to project + * @param anchor The anchor that should be projected + */ + public static void pushEntityLocal(final SubLevel subLevel, final Entity entity, final EntityAnchorArgument.Anchor anchor) { + if (anchor == EntityAnchorArgument.Anchor.FEET) { + ((EntityExtension) entity).sable$setPosSuperRaw(subLevel.logicalPose().transformPositionInverse(entity.position())); + } else { + ((EntityExtension) entity).sable$setPosSuperRaw(subLevel.logicalPose().transformPositionInverse(entity.getEyePosition()).add(0.0, -entity.getEyeHeight(), 0.0)); + } + + Vec3 playerLookAngle = entity.getLookAngle(); + playerLookAngle = subLevel.logicalPose().transformNormalInverse(playerLookAngle); + oldRot.get().copy(entity); + + final Vec3 pTarget = entity.getEyePosition().add(playerLookAngle); + final Vec3 vec3 = entity.getEyePosition(); + final double d0 = pTarget.x - vec3.x; + final double d1 = pTarget.y - vec3.y; + final double d2 = pTarget.z - vec3.z; + final double d3 = Math.sqrt(d0 * d0 + d2 * d2); + entity.setXRot(Mth.wrapDegrees((float) (-(Mth.atan2(d1, d3) * (double) (180F / (float) Math.PI))))); + entity.setYRot(Mth.wrapDegrees((float) (Mth.atan2(d2, d0) * (double) (180F / (float) Math.PI)) - 90.0F)); + entity.setYHeadRot(entity.getYRot()); + + entity.setDeltaMovement(subLevel.logicalPose().transformNormalInverse(entity.getDeltaMovement())); + } + + /** + * Projects a full entity out of a subLevel, rotation and all. + * Uses the cached values from {@link SubLevelHelper#pushEntityLocal}. + * + * @param subLevel The subLevel to project out of + * @param entity The entity to project + * @param anchor The anchor that should be projected + */ + public static void popEntityLocal(final SubLevel subLevel, final Entity entity, final EntityAnchorArgument.Anchor anchor) { + if (anchor == EntityAnchorArgument.Anchor.FEET) { + ((EntityExtension) entity).sable$setPosSuperRaw(subLevel.logicalPose().transformPosition(entity.position())); + } else { + ((EntityExtension) entity).sable$setPosSuperRaw(subLevel.logicalPose().transformPosition(entity.getEyePosition()).add(0.0, -entity.getEyeHeight(), 0.0)); + } + + oldRot.get().apply(entity); + entity.setDeltaMovement(subLevel.logicalPose().transformNormal(entity.getDeltaMovement())); + } + + /** + * Gets the global velocity of a point in a level relative to the air, taking into account sublevels and their plots/poses + * + * @param level the level to check + * @param pos the position of the point + * @param dest the vector to hold the result + * @return the global velocity of the point stored in dest [m/s] + */ + public static Vector3d getVelocityRelativeToAir(final Level level, final Vector3dc pos, final Vector3d dest) { + final Vector3d probePos = new Vector3d(pos); + final Vector3d velocity = Sable.HELPER.getVelocity(level, pos, dest); + + for (final BiFunction windProvider : windProviders) { + final Vector3dc airVelocity = windProvider.apply(probePos, level); + + if (airVelocity != null) { + velocity.sub(airVelocity); + } + } + + return velocity; + } + + /** + * Registers a function to get the air velocity of a point in a level + * + * @param function the function to register + */ + public static void registerWindProvider(final BiFunction function) { + windProviders.add(function); + } + + /** + * @return the chain of sub-levels that should load / unload with the given one + */ + public static Collection getLoadingDependencyChain(final ServerSubLevel subLevel) { + final ObjectOpenHashSet visited = new ObjectOpenHashSet<>(); + final ObjectOpenHashSet frontier = new ObjectOpenHashSet<>(); + + frontier.add(subLevel); + + while (!frontier.isEmpty()) { + final ServerSubLevel current = frontier.iterator().next(); + + frontier.remove(current); + visited.add(current); + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(current.getLevel(), new BoundingBox3d(current.boundingBox())); + + // Intersecting dependencies + for (final SubLevel neighbor : intersecting) { + final ServerSubLevel serverNeighbor = (ServerSubLevel) neighbor; + + if (!visited.contains(serverNeighbor)) { + frontier.add(serverNeighbor); + } + } + + // Actor dependencies + for (final BlockEntitySubLevelActor actor : current.getPlot().getBlockEntityActors()) { + final Iterable loadingDependencies = actor.sable$getLoadingDependencies(); + + if (loadingDependencies == null) continue; + + for (final SubLevel dependency : loadingDependencies) { + final ServerSubLevel serverDependency = (ServerSubLevel) dependency; + + if (!visited.contains(serverDependency)) { + frontier.add(serverDependency); + } + } + } + + } + + return visited; + } + + /** + * @return the chain of sub-levels considered connected + */ + public static Collection getConnectedChain(final SubLevel subLevel) { + final ObjectOpenHashSet visited = new ObjectOpenHashSet<>(); + final ObjectOpenHashSet frontier = new ObjectOpenHashSet<>(); + + frontier.add(subLevel); + + while (!frontier.isEmpty()) { + final SubLevel current = frontier.iterator().next(); + + frontier.remove(current); + visited.add(current); + + // Actor dependencies + for (final BlockEntitySubLevelActor actor : current.getPlot().getBlockEntityActors()) { + final Iterable dependencies = actor.sable$getConnectionDependencies(); + + if (dependencies == null) continue; + + for (final SubLevel dependency : dependencies) { + final SubLevel serverDependency = dependency; + + if (!visited.contains(serverDependency)) { + frontier.add(serverDependency); + } + } + } + } + + return visited; + } + + private static class EntityRot { + + private float xRot; + private float yRot; + private float yHeadRot; + + public void apply(final Entity entity) { + entity.setXRot(this.xRot); + entity.setYRot(this.yRot); + entity.setYHeadRot(this.yHeadRot); + } + + public void copy(final Entity entity) { + this.xRot = entity.getXRot(); + this.yRot = entity.getYRot(); + this.yHeadRot = entity.getYHeadRot(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.java new file mode 100644 index 0000000..0a9e759 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.java @@ -0,0 +1,56 @@ +package dev.ryanhcode.sable.api.block; + +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * An interface for sub-classes of {@link net.minecraft.world.level.block.entity.BlockEntity} to implement behaviour + * when mounted on a sub-level. + */ +public interface BlockEntitySubLevelActor { + + /** + * Called once per server game tick when this actor is on a {@link SubLevel} + */ + default void sable$tick(final ServerSubLevel subLevel) {} + + /** + * Called once per **physics** tick when this actor is on a {@link SubLevel}. + * There may be multiple physics ticks per tick. + * + * @param subLevel the sub-level this block entity is on + * @param timeStep the time this physics tick is stepping + */ + default void sable$physicsTick(final ServerSubLevel subLevel, final RigidBodyHandle handle, final double timeStep) {} + + /** + * Returns the loading dependencies this block-entity has on other sub-levels. + * Loading dependencies are used to unload and load a group of sub-levels together. + * By default, loading dependencies are assumed from the connection dependencies. + *

+ * Note that this may be called after chunks have been un-loaded, and as such, direct level access + * should not be done to fetch the dependencies. + * + * @return a collection of loading dependencies on other loaded sub-levels, or null for none + */ + @Nullable + default Iterable<@NotNull SubLevel> sable$getLoadingDependencies() { + return this.sable$getConnectionDependencies(); + } + + /** + * Returns the connections this block-entity has on other sub-levels. + * Connections are used to dictate sub-levels that should be treated as one by many systems. + *

+ * Note that this may be called after chunks have been un-loaded, and as such, direct level access + * should not be done to fetch the dependencies. + * @return a collection of connection dependencies on other loaded sub-levels, or null for none + */ + @Nullable + default Iterable<@NotNull SubLevel> sable$getConnectionDependencies() { + return null; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.java new file mode 100644 index 0000000..ae99628 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.api.block; + +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; + +/** + * An interface for sub-classes of {@link net.minecraft.world.level.block.entity.BlockEntity} to provide angular momentum + * when mounted on a sub-level. + */ +public interface BlockEntitySubLevelReactionWheel { + /** + * Get the angular velocity of this reaction wheel, in radians per second. + * The total angular momentum given to the sublevel is this velocity scaled by {@link dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes#INERTIA} + * and by {@link dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes#MASS}. + * + * @param angularVelocity Angular velocity to be set, using {@link org.joml.Vector3d#set(double, double, double)} or similar + */ + void sable$getAngularVelocity(Vector3d angularVelocity); + + /** + * The default block state getter for block entities + * @return The block state for this block entity + */ + BlockState getBlockState(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.java new file mode 100644 index 0000000..f9f58a7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.api.block; + +import dev.ryanhcode.sable.api.SubLevelAssemblyHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; + +/** + * An interface for sub-classes of {@link net.minecraft.world.level.block.Block} to implement that indicates the + * {@link SubLevelAssemblyHelper} should notify the block any time it is "moved" as a part of sub-level assembly. + */ +public interface BlockSubLevelAssemblyListener { + + /** + * Called before the {@link SubLevelAssemblyHelper} has moved a block of state newState from oldPos to newPos. + * + * @param originLevel the level the block will be moved from + * @param resultingLevel the level the block will be moved to + * @param newState the new block state + * @param oldPos the old block position + * @param newPos the new block position + */ + default void beforeMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + + } + + + + /** + * Called after the {@link SubLevelAssemblyHelper} has moved a block of state newState from oldPos to newPos. + * At this point in time during the move, the old block has not been removed. + * + * @param originLevel the level the block was moved from + * @param resultingLevel the level the block was moved to + * @param newState the new block state + * @param oldPos the old block position + * @param newPos the new block position + */ + void afterMove(ServerLevel originLevel, ServerLevel resultingLevel, BlockState newState, BlockPos oldPos, BlockPos newPos); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.java new file mode 100644 index 0000000..12b0ea8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.api.block; + +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.shapes.VoxelShape; + +/** + * Interface for sub-classes of {@link net.minecraft.world.level.block.Block} to implement to specify a separate + * collision shape for sub-level physics. + */ +public interface BlockSubLevelCollisionShape { + + /** + * Gets the collision shape that will be baked for a given block-state of this block. + * + * @param blockGetter the blockGetter to bake the collision shape for + * @param state the block state to bake the collision shape for + * @return the collision shape that should be used for this block state + */ + VoxelShape getSubLevelCollisionShape(final BlockGetter blockGetter, final BlockState state); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.java new file mode 100644 index 0000000..5aef82f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.api.block; + +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3dc; + +/** + * Interface for sub-classes of {@link net.minecraft.world.level.block.Block} to implement to specify a custom center + * of mass for sub-level physics. + */ +public interface BlockSubLevelCustomCenterOfMass { + + /** + * Gets the center of mass that will be baked for a given block-state of this block. + * + * @param blockGetter the blockGetter to bake the center of mass for + * @param state the block state to bake the center of mass for + * @return the center of mass relative to the lower corner of the block + */ + Vector3dc getCenterOfMass(final BlockGetter blockGetter, final BlockState state); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.java new file mode 100644 index 0000000..993b006 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.api.block; + +import dev.ryanhcode.sable.api.physics.collider.VoxelColliderData; + +/** + * An interface for sub-classes of {@link net.minecraft.world.level.block.Block} to implement that indicates they + * have a dynamic collider. Dynamic colliders will be significantly more performance + */ +public interface BlockSubLevelDynamicCollider { + + void buildBoxes(VoxelColliderData data); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.java new file mode 100644 index 0000000..0233bb3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.java @@ -0,0 +1,244 @@ +package dev.ryanhcode.sable.api.block; + +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Collection; +import java.util.List; +import java.util.Set; + +public interface BlockSubLevelLiftProvider { + + Direction[] DIRECTIONS = Direction.values(); + + // memory optimization + Vector3d LIFT_FORCE = new Vector3d(); + Vector3d LIFT_POS = new Vector3d(); + Vector3d LIFT_NORMAL = new Vector3d(); + + Vector3d LIFT_VELO = new Vector3d(); + Vector3d DRAG = new Vector3d(); + Vector3d TEMP = new Vector3d(); + + /** + * Resets the vectors to their identity. + */ + static void resetVectors() { + LIFT_VELO.set(0, 0, 0); + LIFT_POS.set(0, 0, 0); + LIFT_FORCE.set(0, 0, 0); + LIFT_NORMAL.set(0, 0, 0); + DRAG.set(0, 0, 0); + } + + static List groupLiftProviders(final Collection liftProviders) { + final List groups = new ObjectArrayList<>(); + final Set positions = new ObjectOpenHashSet<>(liftProviders.size()); + + for (final LiftProviderContext liftProvider : liftProviders) { + positions.add(liftProvider.pos); + } + + while (!positions.isEmpty()) { + // run a flood-fill + final Set groupBlocks = new ObjectOpenHashSet<>(); + final List toVisit = new ObjectArrayList<>(); + + toVisit.add(positions.iterator().next()); + + while (!toVisit.isEmpty()) { + final BlockPos pos = toVisit.removeLast(); + + if (groupBlocks.contains(pos)) { + continue; + } + + groupBlocks.add(pos); + positions.remove(pos); + + for (final Direction direction : DIRECTIONS) { + final BlockPos offsetPos = pos.relative(direction); + + if (positions.contains(offsetPos)) { + toVisit.add(offsetPos); + } + } + } + + groups.add(new LiftProviderGroup(groupBlocks)); + } + + return groups; + } + + /** + * @param state The current blockstate of this lift provider + * @return The normal of this lift provider + */ + @NotNull + Direction sable$getNormal(BlockState state); + + /** + * Adjust {@link BlockSubLevelLiftProvider#sable$getDirectionlessDragScalar()} if this value is changed
+ * @return How effective this lift provider is at producing drag parallel to the normal. + */ + default float sable$getParallelDragScalar() { + return 0.75F; + } + + /** + * {@code parallelDragScalar = k1, liftScalar = k2 }
+ * Should be at minimum {@code (-k1 + sqrt(k1^2 + k2^2)) / 2} to prevent exponential velocity gain.
+ * @return How effective this lift provider is at producing directionless drag. + */ + default float sable$getDirectionlessDragScalar() { + return 0.06888202261f; // (-0.75 + sqrt(0.75^2 + 0.475^2)) / 2 + } + + /** + * Adjust {@link BlockSubLevelLiftProvider#sable$getDirectionlessDragScalar()} if this value is changed
+ * @return How effective this lift provider is at producing lift. + */ + default float sable$getLiftScalar() { + return 0.475f; + } + + /** + * Called once per **physics** tick when this LiftProvider is on a {@link SubLevel}. + * There may be multiple physics ticks per tick.
+ * + * @param ctx The in world context of this lift provider. + * @param subLevel The sub-level this lift provider is on + * @param localPose The pose of the contraption this lift provider is in, if any + * @param timeStep The time step between physics ticks + * @param linearVelocity The linear velocity of the data + * @param angularVelocity The angular velocity of the data + * @param linearImpulse Mutable vector to sum the linear impulse + * @param angularImpulse Mutable vector to sum the angular impulse + */ + default void sable$contributeLiftAndDrag(final LiftProviderContext ctx, final ServerSubLevel subLevel, + @NotNull final Pose3d localPose, final double timeStep, + final Vector3dc linearVelocity, final Vector3dc angularVelocity, + final Vector3d linearImpulse, final Vector3d angularImpulse, + @Nullable final LiftProviderGroup group) { + resetVectors(); + LIFT_NORMAL.set(ctx.dir.x(), ctx.dir.y(), ctx.dir.z()); + LIFT_POS.set(ctx.pos.getX() + 0.5, ctx.pos.getY() + 0.5, ctx.pos.getZ() + 0.5); + + if (localPose != null) { + localPose.transformNormal(LIFT_NORMAL); + localPose.transformPosition(LIFT_POS); + } + + final Pose3d pose = subLevel.logicalPose(); + final double pressure = DimensionPhysicsData.getAirPressure(subLevel.getLevel(), pose.transformPosition(LIFT_POS, TEMP)); + + // transform VELO to be the local velocity at the center of the block + // TEMP = transformed POS + // VELO = linVel + angVel cross TEMP + // VELO = inv transformed VELO + pose.transformPosition(LIFT_POS, TEMP).sub(pose.position()); + LIFT_VELO.set(linearVelocity).add(angularVelocity.cross(TEMP, TEMP)); + pose.transformNormalInverse(LIFT_VELO); + + LIFT_FORCE.zero(); + + if (this.sable$getParallelDragScalar() > 0) { + // DRAG = NORMAL * (NORMAL dot VELO) + // FORCE = DRAG * scalars + final double dragStrength = LIFT_NORMAL.dot(LIFT_VELO) * this.sable$getParallelDragScalar() * pressure * timeStep; + final Vector3d parallelDrag = LIFT_NORMAL.mul(dragStrength, DRAG); + LIFT_FORCE.add(parallelDrag); + + if (group != null) { + group.totalDrag.sub(parallelDrag); + group.dragCenter.fma(Math.abs(dragStrength), LIFT_POS); + group.totalDragStrength += Math.abs(dragStrength); + } + } + + if (this.sable$getDirectionlessDragScalar() > 0) { + // TEMP = VELO * scalars + // FORCE += TEMP + final double dragStrength = this.sable$getDirectionlessDragScalar() * pressure * timeStep; + final Vector3d directionlessDrag = LIFT_VELO.mul(dragStrength, TEMP); + LIFT_FORCE.add(directionlessDrag); + + if (group != null) { + group.totalDrag.sub(directionlessDrag); + group.dragCenter.fma(directionlessDrag.length(), LIFT_POS); + group.totalDragStrength += directionlessDrag.length(); + } + } + + if (this.sable$getLiftScalar() > 0) { + // TEMP = VELO - DRAG + // TEMP = NORMAL * |TEMP| * scalars + // FORCE += TEMP + final double liftStrength = LIFT_VELO.sub(DRAG, TEMP).length() * this.sable$getLiftScalar() * pressure * timeStep; + final Vector3d lift = LIFT_NORMAL.mul(liftStrength, TEMP); + LIFT_FORCE.add(lift); + + if (group != null) { + group.totalLift.sub(lift); + group.liftCenter.fma(Math.abs(liftStrength), LIFT_POS); + group.totalLiftStrength += liftStrength; + } + } + + // why is this all negative of what it should be? + linearImpulse.sub(LIFT_FORCE); + LIFT_POS.sub(subLevel.getMassTracker().getCenterOfMass(), TEMP); + angularImpulse.sub(TEMP.cross(LIFT_FORCE)); + resetVectors(); + } + + record LiftProviderContext(BlockPos pos, BlockState state, Vec3 dir) { + } + + final class LiftProviderGroup { + private final Set positions; + private final Vector3d totalLift = new Vector3d(); + private final Vector3d liftCenter = new Vector3d(); + private final Vector3d totalDrag = new Vector3d(); + private final Vector3d dragCenter = new Vector3d(); + public double totalLiftStrength; + public double totalDragStrength; + + public LiftProviderGroup(final Set positions) { + this.positions = positions; + } + + public Set positions() { + return this.positions; + } + + public Vector3d totalLift() { + return this.totalLift; + } + + public Vector3d liftCenter() { + return this.liftCenter; + } + + public Vector3d totalDrag() { + return this.totalDrag; + } + + public Vector3d dragCenter() { + return this.dragCenter; + } + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.java b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.java new file mode 100644 index 0000000..b929f86 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.api.block; + +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.mixinterface.block_properties.BlockStateExtension; +import dev.ryanhcode.sable.physics.callback.FragileBlockCallback; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; +import net.minecraft.world.level.block.state.BlockState; + +/** + * Interface for sub-classes of {@link net.minecraft.world.level.block.Block} to implement for physics collision callbacks. + */ +public interface BlockWithSubLevelCollisionCallback { + + /** + * Gets the collision callback a given block state should have + * @param state the block state to check + * @return the block collision callback that should be used for that state + */ + static BlockSubLevelCollisionCallback sable$getCallback(final BlockState state) { + if (state.getBlock() instanceof final BlockWithSubLevelCollisionCallback blockCollisionCallback) { + return blockCollisionCallback.sable$getCallback(); + } + + if (((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.FRAGILE.get())) { + return FragileBlockCallback.INSTANCE; + } + + return null; + } + + /** + * Checks if a block state should have a collision callback used + * @param state the block state to check + * @return if the block state should have collision callbacks used + */ + static boolean hasCallback(final BlockState state) { + return sable$getCallback(state) != null; + } + + BlockSubLevelCollisionCallback sable$getCallback(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.java b/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.java new file mode 100644 index 0000000..b278d6c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.java @@ -0,0 +1,74 @@ +package dev.ryanhcode.sable.api.block.propeller; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import org.joml.Vector3d; + +/** + * Spinny spin spin, woosh woosh! + */ +public interface BlockEntityPropeller { + + /** + * @return the direction of the propeller + */ + Direction getBlockDirection(); + + /** + * @return airflow in units of [m/s] + */ + double getAirflow(); + + /** + * @return thrust in [pN] + */ + double getThrust(); + + /** + * @return if the propeller is active / thrust should be computed + */ + boolean isActive(); + + /** + * @return the thrust scaled by -1 * airflow scaling * air pressure + */ + default double getScaledThrust() { + return -this.getThrust() * this.getAirflowScaling() * this.getCurrentAirPressure(); + } + + default double getCurrentAirPressure() { + final Level level = this.getLevel(); + return DimensionPhysicsData.getAirPressure(level, Sable.HELPER.projectOutOfSubLevel(level, JOMLConversion.toJOML(this.getBlockPos().getCenter()))); + } + + default double getAirflowScaling() { + final double airflow = this.getAirflow(); + + if (Math.abs(airflow) <= 0.001) { + return 1.0; + } + + final Level level = this.getLevel(); + final Vector3d pos = JOMLConversion.toJOML(this.getBlockPos().getCenter()); + final SubLevel subLevel = Sable.HELPER.getContaining(level, this.getBlockPos()); + + if (subLevel == null) { + return 1.0; + } + + final Vector3d velocity = Sable.HELPER.getVelocity(level, subLevel, pos, new Vector3d()); + final Vector3d thrustDirection = subLevel.logicalPose().transformNormal(JOMLConversion.atLowerCornerOf(this.getBlockDirection().getNormal())); + + return Math.clamp((airflow + velocity.dot(thrustDirection.x, thrustDirection.y, thrustDirection.z)) / airflow, 0, 1); + } + + Level getLevel(); + + BlockPos getBlockPos(); +} + diff --git a/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.java b/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.java new file mode 100644 index 0000000..cf663aa --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.api.block.propeller; + +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.physics.force.QueuedForceGroup; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +public interface BlockEntitySubLevelPropellerActor extends BlockEntitySubLevelActor { + + Vector3d THRUST_VECTOR = new Vector3d(); + Vector3d THRUST_POSITION = new Vector3d(); + + BlockEntityPropeller getPropeller(); + + @Override + default void sable$physicsTick(final ServerSubLevel subLevel, final RigidBodyHandle handle, final double timeStep) { + final BlockEntityPropeller prop = this.getPropeller(); + + if (prop.isActive()) { + final Vec3 thrustDirection = Vec3.atLowerCornerOf(prop.getBlockDirection().getNormal()); + this.applyForces(subLevel, thrustDirection, timeStep); + } + } + + default void applyForces(final ServerSubLevel subLevel, final Vec3 thrustDirection, final double timeStep) { + final BlockEntityPropeller prop = this. getPropeller(); + final Vec3 thrust = thrustDirection.scale(prop.getScaledThrust() * timeStep); + + THRUST_POSITION.set(JOMLConversion.atCenterOf(prop.getBlockPos())); + THRUST_VECTOR.set(thrust.x, thrust.y, thrust.z); + + final QueuedForceGroup forceGroup = subLevel.getOrCreateQueuedForceGroup(ForceGroups.PROPULSION.get()); + forceGroup.applyAndRecordPointForce(new Vector3d(THRUST_POSITION), new Vector3d(THRUST_VECTOR)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/command/SableCommandHelper.java b/common/src/main/java/dev/ryanhcode/sable/api/command/SableCommandHelper.java new file mode 100644 index 0000000..fb4141e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/command/SableCommandHelper.java @@ -0,0 +1,136 @@ +package dev.ryanhcode.sable.api.command; + +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; + +import java.util.Collection; + +public class SableCommandHelper { + + private static final SimpleCommandExceptionType MISSING_SUBLEVEL_CONTAINER + = new SimpleCommandExceptionType(Component.translatable("commands.sable.helper.missing_sub_level_container")); + private static final SimpleCommandExceptionType MISSING_PHYSICS_SYSTEM + = new SimpleCommandExceptionType(Component.translatable("commands.sable.helper.missing_physics_system")); + public static final SimpleCommandExceptionType ERROR_NO_SUB_LEVELS_FOUND = new SimpleCommandExceptionType(Component.translatable("commands.sable.fail.no_sub_levels")); + public static final SimpleCommandExceptionType ERROR_NOT_INSIDE_SUB_LEVEL = new SimpleCommandExceptionType(Component.translatable("commands.sable.fail.not_inside_sub_level")); + public static final SimpleCommandExceptionType ERROR_NO_AXIS_FOR_ROTATION = new SimpleCommandExceptionType(Component.translatable("commands.sable.fail.no_axis_for_rotation")); + public static final SimpleCommandExceptionType ERROR_NO_SUB_LEVELS_MODIFIED = new SimpleCommandExceptionType(Component.translatable("commands.sable.fail.unmodified")); + public static final SimpleCommandExceptionType ERROR_SUB_LEVEL_UNNAMED = new SimpleCommandExceptionType(Component.translatable("commands.sable.sub_level.get_name.failure_unnamed")); + + // Component utilities related to sub-levels + + /** + * Returns a formatted component, with one of the arguments describing the subLevels parameter, being either: + *

    + *
  • The name of the data or "sub-level" if there is only one sub-level
  • + *
  • The number of sub-levels in the collection if there are multiple
  • + *
+ * + * @param translationKey The translation key to use + * @param subLevels The collection of sub-levels to describe + * @param subLevelsDescriptionIndex The index of the sub-levels description in the args array + * @param additionalArguments The additional arguments to pass to the translation key + */ + public static Component getResultComponentForSublevelCollection(final String translationKey, final Collection subLevels, + final int subLevelsDescriptionIndex, final Object... additionalArguments) { + final boolean isPlural = subLevels.size() != 1; + + // Varargs of an Object type don't handle arrays so it has to be manually collected + final Object[] translationArguments = new Object[additionalArguments.length + 1]; + System.arraycopy(additionalArguments, 0, translationArguments, 1, additionalArguments.length); + + if (isPlural) { + translationArguments[0] = Component.translatable("commands.sable.sub_levels", subLevels.size()); + } else { + final SubLevel subLevel = subLevels.iterator().next(); + final Object name = subLevel.getName() == null ? Component.translatable("commands.sable.sub_level") : subLevel.getName(); + translationArguments[0] = name; + } + + if (subLevelsDescriptionIndex != 0) { + final Object swap = translationArguments[subLevelsDescriptionIndex]; + translationArguments[subLevelsDescriptionIndex] = translationArguments[0]; + translationArguments[0] = swap; + } + + return Component.translatable(translationKey, translationArguments); + } + + /** + * Sends a formatted component, where the specified translation key is given a description of the sub-levels collection
+ * See {@link SableCommandHelper#getResultComponentForSublevelCollection} for more info about the description + * Functionally an overload of {@link SableCommandHelper#getResultComponentForSublevelCollection}, but with a different name due to the Object varargs. + * @param translationKey The translation key to use + * @param context The command context to send the message to + * @param subLevels The collection of sub-levels to describe + * @param additionalArguments The additional arguments to pass to the translation key + */ + public static void sendSuccessDescribingSubLevels(final String translationKey, final CommandContext context, final Collection subLevels, + final Object... additionalArguments) { + sendSuccessDescribingSubLevelsAtIndex(translationKey, context, subLevels, 0, additionalArguments); + } + + /** + * Sends a formatted component, where the specified translation key is given a description of the sub-levels collection, in the index specified
+ * See {@link SableCommandHelper#getResultComponentForSublevelCollection} for more info about the description + * @param translationKey The translation key to use + * @param context The command context to send the message to + * @param subLevels The collection of sub-levels to describe + * @param subLevelsDescriptionIndex The index of the sub-levels description in the args array + * @param additionalArguments The additional arguments to pass to the translation key + */ + public static void sendSuccessDescribingSubLevelsAtIndex(final String translationKey, final CommandContext context, final Collection subLevels, + final int subLevelsDescriptionIndex, final Object... additionalArguments) { + context.getSource().sendSuccess( + () -> getResultComponentForSublevelCollection(translationKey, subLevels, subLevelsDescriptionIndex, additionalArguments), + true + ); + } + + //Requires with a command exception + + public static ServerSubLevelContainer requireSubLevelContainer(final CommandContext context) throws CommandSyntaxException { + return requireSubLevelContainer(context.getSource()); + } + + public static ServerSubLevelContainer requireSubLevelContainer(final CommandSourceStack source) throws CommandSyntaxException { + final ServerLevel level = source.getLevel(); + return requireNotNull(SubLevelContainer.getContainer(level), MISSING_SUBLEVEL_CONTAINER); + } + + public static SubLevelPhysicsSystem requireSubLevelPhysicsSystem(final ServerSubLevelContainer subLevelContainer) throws CommandSyntaxException { + return requireNotNull(subLevelContainer.physicsSystem(), MISSING_PHYSICS_SYSTEM); + } + + //Overloads from context only + + public static SubLevelPhysicsSystem requireSubLevelPhysicsSystem(final CommandContext context) throws CommandSyntaxException { + return requireSubLevelPhysicsSystem( + requireSubLevelContainer(context) + ); + } + + public static PhysicsPipeline requireSubLevelPhysicsPipeline(final CommandContext context) throws CommandSyntaxException { + return requireSubLevelPhysicsSystem(context).getPipeline(); + } + + // + + public static T requireNotNull(final T value, final SimpleCommandExceptionType message) throws CommandSyntaxException { + if (value == null) { + throw message.create(); + } + return value; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/command/SubLevelArgumentType.java b/common/src/main/java/dev/ryanhcode/sable/api/command/SubLevelArgumentType.java new file mode 100644 index 0000000..cd82145 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/command/SubLevelArgumentType.java @@ -0,0 +1,303 @@ +package dev.ryanhcode.sable.api.command; + +import com.google.gson.JsonObject; +import com.mojang.brigadier.Message; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.arguments.ArgumentType; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import com.mojang.brigadier.suggestion.Suggestions; +import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import dev.ryanhcode.sable.command.argument.SubLevelSelector; +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.command.argument.SubLevelSelectorType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.Pair; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.synchronization.ArgumentTypeInfo; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.chat.Component; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + +public class SubLevelArgumentType implements ArgumentType { + + public static final Function> NO_SUGGESTIONS = SuggestionsBuilder::buildFuture; + private static final SimpleCommandExceptionType ERROR_SINGLE_SUB_LEVEL_REQUIRED = + new SimpleCommandExceptionType(Component.translatable("argument.sable.single_sub_level_required")); + private static final SimpleCommandExceptionType ERROR_INVALID_SUBLEVEL = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.invalid")); + private static final SimpleCommandExceptionType UNEXPECTED_END_OF_INPUT = + new SimpleCommandExceptionType(Component.translatable("argument.sable.unexpected_end_of_input")); + private static final String STATIC_WORLD = "static_world"; + private static final Collection EXAMPLES = Arrays.stream(SubLevelSelectorType.values()) + .map(type -> "@" + type.getChar()).toList(); + private static Function> suggestions = NO_SUGGESTIONS; + private final boolean allowStaticLevel; + private final boolean allowMultiple; + + public SubLevelArgumentType(final boolean allowStaticLevel, final boolean allowMultiple) { + this.allowStaticLevel = allowStaticLevel; + this.allowMultiple = allowMultiple; + } + + public static Collection getSubLevels(final CommandContext ctx, final String name) throws CommandSyntaxException { + return ctx.getArgument(name, SubLevelSelector.class).getSubLevels(ctx.getSource()); + } + + public static ServerSubLevel getSingleSubLevel(final CommandContext ctx, final String name) throws CommandSyntaxException { + final Collection subLevels = ctx.getArgument(name, SubLevelSelector.class).getSubLevels(ctx.getSource()); + if (subLevels.size() > 1) { + throw ERROR_SINGLE_SUB_LEVEL_REQUIRED.create(); + } + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + return subLevels.stream().findFirst().orElseThrow(); + } + + public static SubLevelArgumentType singleSubLevel() { + return new SubLevelArgumentType(false, false); + } + + public static SubLevelArgumentType subLevels() { + return new SubLevelArgumentType(false, true); + } + + public static SubLevelArgumentType subLevelsOrLevel() { + return new SubLevelArgumentType(true, true); + } + + private static @NotNull List> parseSelectorArguments(final StringReader reader) throws CommandSyntaxException { + final List> modifiers = new ObjectArrayList<>(); + setSuggestions(reader, "["); + + final List> permittedPreEntryToken = new ArrayList<>(SubLevelSelectorModifierType.getAllNamesWithTooltip() + .stream().map(s -> Pair.of(s.first() + "=", s.second())).toList()); + permittedPreEntryToken.add(Pair.of("]", null)); + boolean isFirstEntry = true; + + if (reader.canRead() && reader.peek() == '[') { + reader.skip(); + + setSuggestionsWithTooltip(reader, permittedPreEntryToken); + while (reader.canRead() && reader.peek() != ']') { + if (reader.peek() == ',') { + reader.skip(); + } + setSuggestionsWithTooltip(reader, permittedPreEntryToken); + + final String propertyName = readUntilEndOrCharacter(reader, '='); + + if (!reader.canRead() || reader.peek() != '=') { + throw UNEXPECTED_END_OF_INPUT.createWithContext(reader); + } + reader.skip(); + + final SubLevelSelectorModifierType modifierType = SubLevelSelectorModifierType.getModifier(propertyName, reader); + if (modifierType == null) { + throw UNEXPECTED_END_OF_INPUT.createWithContext(reader); + } + final SubLevelSelectorModifierType.Modifier modifier = modifierType.getParser().parse(reader); + modifiers.add(Pair.of(modifierType, modifier)); + + setSuggestionsWithTooltip(reader, permittedPreEntryToken); + if (isFirstEntry) { + permittedPreEntryToken.add(Pair.of(",", null)); + isFirstEntry = false; + } + } + + if (reader.canRead() && reader.peek() == ']') { + reader.skip(); + } else { + throw UNEXPECTED_END_OF_INPUT.createWithContext(reader); + } + } + + return modifiers; + } + + public static void setSuggestions(final StringReader reader, final String... suggested) { + setSuggestions(reader, Arrays.asList(suggested)); + } + + public static void setSuggestions(final StringReader reader, final List suggested) { + setSuggestionsWithTooltip(reader, suggested.stream().map(s -> Pair.of(s, (Message) null)).toList()); + } + + @SafeVarargs + public static void setSuggestionsWithTooltip(final StringReader reader, final Pair... suggested) { + setSuggestionsWithTooltip(reader, Arrays.asList(suggested)); + } + + public static void setSuggestionsWithTooltip(final StringReader reader, final List> suggested) { + final int cursor = reader.getCursor(); + suggestions = builder -> { + final SuggestionsBuilder nextSuggestion = builder.createOffset(cursor); + for (final Pair suggestion : suggested) { + if (!suggestion.first().startsWith(builder.getInput().substring(cursor))) { + continue; + } + if (suggestion.second() != null) { + nextSuggestion.suggest(suggestion.first(), suggestion.second()); + } else { + nextSuggestion.suggest(suggestion.first()); + } + } + return nextSuggestion.buildFuture(); + }; + } + + public static String readUntilEndOrCharacter(final StringReader reader, final char character) throws CommandSyntaxException { + final StringBuilder builder = new StringBuilder(); + while (reader.canRead() && reader.peek() != character) { + builder.append(reader.read()); + } + if (builder.isEmpty()) { + throw UNEXPECTED_END_OF_INPUT.create(); + } + return builder.toString(); + } + + @Override + public SubLevelSelector parse(final StringReader reader) throws CommandSyntaxException { + final ObjectList> allowedSelectors = new ObjectArrayList<>(); + if (this.allowStaticLevel) { + allowedSelectors.add(Pair.of(STATIC_WORLD, Component.translatable("argument.sable.body.static_world"))); + } + for (final SubLevelSelectorType selector : SubLevelSelectorType.values()) { + allowedSelectors.add(Pair.of("@" + selector.getChar(), selector.getTooltip())); + } + setSuggestionsWithTooltip(reader, allowedSelectors); + + if (this.allowStaticLevel && reader.canRead(STATIC_WORLD.length()) && reader.peek() == STATIC_WORLD.charAt(0)) { + final String staticWorld = reader.readString(); + + if (!staticWorld.equals(STATIC_WORLD)) { + throw ERROR_INVALID_SUBLEVEL.create(); + } + + return new SubLevelSelector(null, new ObjectArrayList<>()); + } + + if (!reader.canRead()) { + throw ERROR_INVALID_SUBLEVEL.create(); + } + + final char firstChar = reader.read(); + + if (!reader.canRead() || firstChar != '@') { + throw ERROR_INVALID_SUBLEVEL.create(); + } + + if (!reader.canRead()) { + throw ERROR_INVALID_SUBLEVEL.create(); + } + + final SubLevelSelectorType selectorType = SubLevelSelectorType.of(reader.read()); + if (selectorType == null) { + throw ERROR_INVALID_SUBLEVEL.create(); + } + + int maximumResults = Integer.MAX_VALUE; + + if (selectorType.single()) { + maximumResults = 1; + } + + final List> modifiers = parseSelectorArguments(reader); + + for (final Pair modifierPair : modifiers) { + maximumResults = Math.min(maximumResults, modifierPair.second().getMaxResults()); + } + + // If we don't allow multiple sub-levels and we have more than one, throw a fit + if (maximumResults > 1 && !this.allowMultiple) { + throw ERROR_SINGLE_SUB_LEVEL_REQUIRED.create(); + } + + return new SubLevelSelector(selectorType, modifiers); + } + + @Override + public CompletableFuture listSuggestions(final CommandContext pContext, final SuggestionsBuilder builder) { + final StringReader stringreader = new StringReader(builder.getInput()); + stringreader.setCursor(builder.getStart()); + suggestions = NO_SUGGESTIONS; + try { + this.parse(stringreader); + } catch (final CommandSyntaxException ignored) { + } + return suggestions.apply(builder); + } + + @Override + public Collection getExamples() { + return EXAMPLES; + } + + public static class Info implements ArgumentTypeInfo { + private static final byte FLAG_MULTIPLE = 1; + private static final byte FLAG_STATIC_ALLOWED = 2; + + public void serializeToNetwork(final SubLevelArgumentType.Info.Template template, final FriendlyByteBuf byteBuf) { + int serialized = 0; + if (template.allowMultiple) { + serialized |= FLAG_MULTIPLE; + } + + if (template.allowStaticLevel) { + serialized |= FLAG_STATIC_ALLOWED; + } + + byteBuf.writeByte(serialized); + } + + public SubLevelArgumentType.Info.Template deserializeFromNetwork(final FriendlyByteBuf arg) { + final byte serialized = arg.readByte(); + return new SubLevelArgumentType.Info.Template((serialized & FLAG_MULTIPLE) != 0, (serialized & FLAG_STATIC_ALLOWED) != 0); + } + + public void serializeToJson(final SubLevelArgumentType.Info.Template arg, final JsonObject jsonObject) { + jsonObject.addProperty("amount", arg.allowMultiple ? "single" : "multiple"); + jsonObject.addProperty("type", arg.allowStaticLevel ? "players" : "entities"); + } + + public SubLevelArgumentType.Info.Template unpack(final SubLevelArgumentType arg) { + return new Template(arg.allowMultiple, arg.allowStaticLevel); + } + + public final class Template implements ArgumentTypeInfo.Template { + final boolean allowMultiple; + final boolean allowStaticLevel; + + Template(final boolean allowMultiple, final boolean allowStaticLevel) { + this.allowMultiple = allowMultiple; + this.allowStaticLevel = allowStaticLevel; + } + + public SubLevelArgumentType instantiate(final CommandBuildContext commandBuildContext) { + return new SubLevelArgumentType(this.allowStaticLevel, this.allowMultiple); + } + + public ArgumentTypeInfo type() { + return SubLevelArgumentType.Info.this; + } + } + } + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.java b/common/src/main/java/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.java new file mode 100644 index 0000000..a5b9313 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.java @@ -0,0 +1,99 @@ +package dev.ryanhcode.sable.api.entity; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.commands.arguments.EntityAnchorArgument; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.item.FallingBlockEntity; +import net.minecraft.world.entity.projectile.AbstractArrow; +import net.minecraft.world.entity.projectile.AbstractHurtingProjectile; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3d; + +/** + * Utility for operations regarding entities and sub-levels + */ +public class EntitySubLevelUtil { + + /** + * Sets the old pos of an entity for no apparent movement, taking their tracking sub-level + * into account. + * + * @param entity the entity to set the old pos of + */ + public static void setOldPosNoMovement(final Entity entity) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + + if (trackingSubLevel != null) { + final Vec3 entityPos = entity.position(); + final Vec3 oldPos = trackingSubLevel.lastPose().transformPosition(trackingSubLevel.logicalPose().transformPositionInverse(entityPos)); + + entity.xOld = oldPos.x; + entity.xo = oldPos.x; + entity.yOld = oldPos.y; + entity.yo = oldPos.y; + entity.zOld = oldPos.z; + entity.zo = oldPos.z; + } else { + entity.xOld = entity.getX(); + entity.xo = entity.getX(); + entity.yOld = entity.getY(); + entity.yo = entity.getY(); + entity.zOld = entity.getZ(); + entity.zo = entity.getZ(); + } + } + + /** + * Kicks an entity out of a sub-level, including velocity and position. + * + * @param subLevel The sub-level to kick the entity out of + * @param entity The entity to kick + */ + public static void kickEntity(final SubLevel subLevel, final Entity entity) { + final Vector3d subLevelGainedVelo = new Vector3d(); + if (entity instanceof final AbstractHurtingProjectile ahp && ahp.accelerationPower == 0) { + Sable.HELPER.getVelocity(entity.level(), JOMLConversion.toJOML(entity.position()), subLevelGainedVelo); + } + + // convert from m/s to m/t + subLevelGainedVelo.mul(1.0 / 20.0); + + final Vec3 pos = entity.position(); + Vec3 anchor = Vec3.ZERO; + + if (entity instanceof FallingBlockEntity) { + anchor = new Vec3(0.0, entity.getBbHeight() / 2.0, 0.0); + } + + entity.moveTo(subLevel.logicalPose().transformPosition(pos.add(anchor)).subtract(anchor)); + entity.setDeltaMovement(subLevel.logicalPose().transformNormal(entity.getDeltaMovement()).add(subLevelGainedVelo.x, subLevelGainedVelo.y, subLevelGainedVelo.z)); + entity.lookAt(EntityAnchorArgument.Anchor.FEET, subLevel.logicalPose().transformNormal(entity.getLookAngle()).add(entity.position())); + + // Arrows use an incorrect Y and X rotation + if (entity instanceof AbstractArrow) { + final Vec3 deltaMovement = entity.getDeltaMovement(); + final double horizontal = deltaMovement.horizontalDistance(); + entity.setYRot((float) (Mth.atan2(deltaMovement.x, deltaMovement.z) * 180.0 / (float) Math.PI)); + entity.setXRot((float) (Mth.atan2(deltaMovement.y, horizontal) * 180.0 / (float) Math.PI)); + } + } + + public static boolean shouldKick(final Entity entity) { + return !entity.getType().is(SableTags.RETAIN_IN_SUB_LEVEL); + } + + @Nullable + public static Quaterniondc getCustomEntityOrientation(final Entity entity, final float partialTicks) { + return null; + } + + public static boolean hasCustomEntityOrientation(final Entity entity) { + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.java b/common/src/main/java/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.java new file mode 100644 index 0000000..b542050 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.api.event; + +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; + +/** + * Fired when Sable's {@link SubLevelPhysicsSystem} is complete with a physics tick. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +@FunctionalInterface +public interface SablePostPhysicsTickEvent { + + /** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is complete with a physics tick. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + void postPhysicsTick(SubLevelPhysicsSystem physicsSystem, double timeStep); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.java b/common/src/main/java/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.java new file mode 100644 index 0000000..80da5bd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.api.event; + +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; + +/** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is ticking physics. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +@FunctionalInterface +public interface SablePrePhysicsTickEvent { + + /** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is ticking physics. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + void prePhysicsTick(SubLevelPhysicsSystem physicsSystem, double timeStep); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.java b/common/src/main/java/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.java new file mode 100644 index 0000000..281542f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.api.event; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import net.minecraft.world.level.Level; + +/** + * Fired when Sable has finished initialization for a level and its sub-level container is ready to use. + */ +@FunctionalInterface +public interface SableSubLevelContainerReadyEvent { + + /** + * Called when a sub-level container is ready to use. + * + * @param level The level instance + * @param container The sub-level container that is ready + */ + void onSubLevelContainerReady(Level level, SubLevelContainer container); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/math/LevelReusedVectors.java b/common/src/main/java/dev/ryanhcode/sable/api/math/LevelReusedVectors.java new file mode 100644 index 0000000..b15031f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/math/LevelReusedVectors.java @@ -0,0 +1,119 @@ +package dev.ryanhcode.sable.api.math; + + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.Pose3d; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.joml.*; + +/** + * Class containing mutability optimization vectors for OBB SAT calculations + */ +public class LevelReusedVectors { + public final VoxelShape SCAFFOLDING_TOP = Shapes.create(new AABB(0, 15 / 16f, 0, 1f, 1f, 1f)); + + public final Vector3d tempVert6 = new Vector3d(); + public final Vector3d tempVert5 = new Vector3d(); + public final Vector3d tempVert4 = new Vector3d(); + public final Vector3d tempVert3 = new Vector3d(); + public final Vector3d tempVert2 = new Vector3d(); + public final Vector3d tempVert1 = new Vector3d(); + + public final Vector3dc zero = new Vector3d(); + public final Vector2d proj1 = new Vector2d(); + public final Vector2d proj2 = new Vector2d(); + public final Vector3d oppo = new Vector3d(); + public final Vector3d obbARight = new Vector3d(); + public final Vector3d obbAForward = new Vector3d(); + public final Vector3d obbAUp = new Vector3d(); + public final Vector3d obbBRight = new Vector3d(); + public final Vector3d obbBForward = new Vector3d(); + public final Vector3d obbBUp = new Vector3d(); + public final Vector3d checker = new Vector3d(); + public final BlockPos.MutableBlockPos minPos = new BlockPos.MutableBlockPos(); + public final BlockPos.MutableBlockPos maxPos = new BlockPos.MutableBlockPos(); + public final BlockPos.MutableBlockPos maxBlockPos = new BlockPos.MutableBlockPos(); + public final BlockPos.MutableBlockPos offsetPos = new BlockPos.MutableBlockPos(); + public final BoundingBox3d fullContextBounds = new BoundingBox3d(); + public final BoundingBox3d rotatedContextBounds = new BoundingBox3d(); + public final BoundingBox3d considerationBounds = new BoundingBox3d(); + public final BoundingBox3d localBounds = new BoundingBox3d(); + public final BoundingBox3d localBounds2 = new BoundingBox3d(); + public final Vector3d collisionMotion = new Vector3d(); + public final Vector3d velocityMotion = new Vector3d(); + public final Vector3d entityBoundsCenter = new Vector3d(); + public final Vector3d stepHeightEntityBoundsCenter = new Vector3d(); + public final Vector3d lastStepTestMTV = new Vector3d(); + public final Vector3d entityPosition = new Vector3d(); + public final Vector3d posMinusCenter = new Vector3d(); + public final Vector3d trackingPosition = new Vector3d(); + public final Pose3d lastPose = new Pose3d(); + public final Pose3d lastSubLevelPose = new Pose3d(); + public final Pose3d subLevelPose = new Pose3d(); + public final Matrix4d bakedMatrix = new Matrix4d(); + public final Vector3d mtv = new Vector3d(); + public final Vector3d normalizedMtv = new Vector3d(); + public final Vector3d localMtv = new Vector3d(); + public final Vector3d existingDeltaMovement = new Vector3d(); + public final Vector3d maxMTV = new Vector3d(); + public final BoundingBox3d maxAABB = new BoundingBox3d(); + public final Vector3d center = new Vector3d(); + public final BoundingBox3d offsetAABB = new BoundingBox3d(); + public final BoundingBox3d compressedMinAABB = new BoundingBox3d(); + public final BoundingBox3d compressedOffsetAABB = new BoundingBox3d(); + public final BoundingBox3d intersection = new BoundingBox3d(); + + public final Quaterniond entityBoxOrientation = new Quaterniond(); + public final Quaterniond entityCustomOrientation = new Quaterniond(); + public final Vector3d tempEyePosition = new Vector3d(); + public final Vector3d anchorRelativePosition = new Vector3d(); + + public final Vector3d[] a = { + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d(), + + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d() + }; + public final Vector3d[] b = { + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d(), + + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d() + }; + public final Vector3d[] checks = { + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d(), + + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d(), + + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d(), + + new Vector3d(), + new Vector3d(), + new Vector3d() + }; + protected final Vector3d tempmin = new Vector3d(); + protected final Vector3d tempmax = new Vector3d(); + public final Vector3d entityUpDirection = new Vector3d(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.java b/common/src/main/java/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.java new file mode 100644 index 0000000..a6ab28c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.java @@ -0,0 +1,327 @@ +package dev.ryanhcode.sable.api.math; + +import org.jetbrains.annotations.NotNull; +import org.joml.*; + +import java.lang.Math; +import java.util.Objects; + +/** + * Represents an oriented bounding box with extents, orientation, and positioning. + * The box is expected to be centered on the position. + */ +public class OrientedBoundingBox3d { + public static final Vector3dc RIGHT = new Vector3d(1, 0, 0); + public static final Vector3dc UP = new Vector3d(0, 1, 0); + public static final Vector3dc FORWARD = new Vector3d(0, 0, 1); + + private final Vector3d position = new Vector3d(); + private final Vector3d dimensions = new Vector3d(); + private final Quaterniond orientation = new Quaterniond(); + private final LevelReusedVectors sink; + + + /** + * Creates a new oriented bounding box. + */ + public OrientedBoundingBox3d(@NotNull final LevelReusedVectors sink) { + this.sink = sink; + } + + /** + * Creates a new oriented bounding box. + * + * @param position The center in global space + * @param dimensions The total dimensions + * @param orientation The unit quaternion rotation + */ + public OrientedBoundingBox3d(@NotNull final Vector3dc position, + @NotNull final Vector3dc dimensions, + @NotNull final Quaterniondc orientation, + @NotNull final LevelReusedVectors sink) { + this.position.set(position); + this.dimensions.set(dimensions); + this.orientation.set(orientation); + this.sink = sink; + } + + /** + * Creates a new oriented bounding box. + * + * @param x The center X in global space + * @param y The center Y in global space + * @param z The center Z in global space + * @param sizeX The total dimensions in the x-axis + * @param sizeY The total dimensions in the y-axis + * @param sizeZ The total dimensions in the z-axis + * @param orientation The unit quaternion rotation + */ + public OrientedBoundingBox3d(final double x, + final double y, + final double z, + final double sizeX, + final double sizeY, + final double sizeZ, + @NotNull final Quaterniondc orientation, + @NotNull final LevelReusedVectors sink) { + this.position.set(x, y, z); + this.dimensions.set(sizeX, sizeY, sizeZ); + this.orientation.set(orientation); + this.sink = sink; + } + + public void set(final Vector3dc position, final Vector3dc dimensions, final Quaterniondc orientation) { + this.position.set(position); + this.dimensions.set(dimensions); + this.orientation.set(orientation); + } + + public OrientedBoundingBox3d setPosition(final Vector3dc position) { + this.position.set(position); + return this; + } + + public OrientedBoundingBox3d setDimensions(final Vector3dc dimensions) { + this.dimensions.set(dimensions); + return this; + } + + public OrientedBoundingBox3d setOrientation(final Quaterniondc orientation) { + this.orientation.set(orientation); + return this; + } + + public Quaterniond getOrientation() { + return this.orientation; + } + + public Vector3d getPosition() { + return this.position; + } + + public Vector3d getDimensions() { + return this.dimensions; + } + + /** + * Computes all global vertices of this box. + */ + public Vector3d @NotNull [] vertices(final Vector3d[] result) { + this.dimensions.mul(0.5, this.sink.tempmin); + this.dimensions.mul(-0.5, this.sink.tempmax); + + this.orientation.transform(this.sink.tempmin, result[0]).add(this.position); + this.orientation.transform(this.sink.tempVert1.set(this.sink.tempmax.x, this.sink.tempmin.y, this.sink.tempmin.z), result[1]).add(this.position); + this.orientation.transform(this.sink.tempVert4.set(this.sink.tempmin.x, this.sink.tempmin.y, this.sink.tempmax.z), result[4]).add(this.position); + this.orientation.transform(this.sink.tempVert5.set(this.sink.tempmax.x, this.sink.tempmin.y, this.sink.tempmax.z), result[5]).add(this.position); + this.orientation.transform(this.sink.tempVert3.set(this.sink.tempmax.x, this.sink.tempmax.y, this.sink.tempmin.z), result[3]).add(this.position); + this.orientation.transform(this.sink.tempVert2.set(this.sink.tempmin.x, this.sink.tempmax.y, this.sink.tempmin.z), result[2]).add(this.position); + this.orientation.transform(this.sink.tempVert6.set(this.sink.tempmin.x, this.sink.tempmax.y, this.sink.tempmax.z), result[6]).add(this.position); + this.orientation.transform(this.sink.tempmax, result[7]).add(this.position); + + return result; + } + + + /** + * Rotates a vector from local space in this OBB to global space. + */ + public Vector3d rotate(@NotNull final Vector3d vec) { + return this.orientation.transform(vec); + } + + /** + * Checks if two intervals intersect. + */ + private static boolean doesOverlap(@NotNull final Vector2d a, @NotNull final Vector2d b) { + return a.x <= b.y && a.y >= b.x; + } + + /** + * @return The overlap of the two intervals. + */ + public static double getOverlap(@NotNull final Vector2d a, @NotNull final Vector2d b) { + if (!OrientedBoundingBox3d.doesOverlap(a, b)) { + return 0.f; + } + + return Math.min(a.y, b.y) - Math.max(a.x, b.x); + } + + /** + * Computes the MTV, or Minimum Translation Vector between the vertices of two OBBs. + */ + public static @NotNull Vector3d sat(@NotNull final OrientedBoundingBox3d obbA, @NotNull final OrientedBoundingBox3d obbB) { + return sat(obbA, obbB, new Vector3d()); + } + + /** + * Computes the MTV, or Minimum Translation Vector between the vertices of two OBBs. + */ + public static @NotNull Vector3d sat(@NotNull final OrientedBoundingBox3d obbA, @NotNull final OrientedBoundingBox3d obbB, @NotNull final Vector3d dest) { + Objects.requireNonNull(obbA, "obbA"); + Objects.requireNonNull(obbB, "obbB"); + Objects.requireNonNull(dest, "dest"); + + final LevelReusedVectors context = obbA.sink; + + final Vector3d[] verticesA = obbA.vertices(context.a); + final Vector3d[] verticesB = obbB.vertices(context.b); + + final Vector3d checker = obbA.position.sub(obbB.position, obbA.sink.checker).normalize(); + + final Vector3d aRight = obbA.rotate(context.obbARight.set(OrientedBoundingBox3d.RIGHT)); + final Vector3d aUp = obbA.rotate(context.obbAUp.set(OrientedBoundingBox3d.UP)); + final Vector3d aForward = obbA.rotate(context.obbAForward.set(OrientedBoundingBox3d.FORWARD)); + + final Vector3d bRight = obbB.rotate(context.obbBRight.set(OrientedBoundingBox3d.RIGHT)); + final Vector3d bUp = obbB.rotate(context.obbBUp.set(OrientedBoundingBox3d.UP)); + final Vector3d bForward = obbB.rotate(context.obbBForward.set(OrientedBoundingBox3d.FORWARD)); + + final Vector3d mtv = dest.set(Double.MAX_VALUE); + + OrientedBoundingBox3d.genChecks(aRight, aUp, aForward, bRight, bUp, bForward, context.checks); + + double minOverlap = Double.MAX_VALUE; + + for (final Vector3d check : context.checks) { + if (check.lengthSquared() <= 0) { + continue; + } + + check.normalize(); + + OrientedBoundingBox3d.checkSeparation(verticesA, check, context.proj1); + OrientedBoundingBox3d.checkSeparation(verticesB, check, context.proj2); + + if (check.dot(checker) > 0) { + check.mul(-1.0); + } + + final double overlap = OrientedBoundingBox3d.getOverlap(context.proj1, context.proj2); + + if (overlap == 0.f) { // shapes are not overlapping + return dest.zero(); + } else { + if (overlap < minOverlap) { + minOverlap = overlap; + mtv.set(check.mul(minOverlap)); + } + } + } + + final boolean facingOpposite = obbA.position.sub(obbB.position, context.oppo).dot(mtv) < 0; + + if (facingOpposite) { + mtv.mul(-1); + } + + return mtv; + } + + public static Vector3d[] genChecks(final Vector3d aRight, final Vector3d aUp, final Vector3d aForward, final Vector3d bRight, final Vector3d bUp, final Vector3d bForward, final Vector3d[] checks) { + checks[0].set(aRight); + checks[1].set(aUp); + checks[2].set(aForward); + checks[3].set(bRight); + checks[4].set(bUp); + checks[5].set(bForward); + aRight.cross(bRight, checks[6]); + aRight.cross(bUp, checks[7]); + aRight.cross(bForward, checks[8]); + aUp.cross(bRight, checks[9]); + aUp.cross(bUp, checks[10]); + aUp.cross(bForward, checks[11]); + aForward.cross(bRight, checks[12]); + aForward.cross(bUp, checks[13]); + aForward.cross(bForward, checks[14]); + + return checks; + } + + public static Vector3dc satToleranced(final OrientedBoundingBox3d entityOBB, final OrientedBoundingBox3d obbB, final double tolerance) { + Objects.requireNonNull(entityOBB, "entityOBB"); + Objects.requireNonNull(obbB, "obbB"); + + final LevelReusedVectors context = entityOBB.sink; + + final Vector3d[] verticesA = entityOBB.vertices(context.a); + final Vector3d[] verticesB = obbB.vertices(context.b); + + final Vector3d checker = entityOBB.position.sub(obbB.position, new Vector3d()).normalize(); + + final Vector3d aRight = entityOBB.rotate(context.obbARight.set(OrientedBoundingBox3d.RIGHT)); + final Vector3d aUp = entityOBB.rotate(context.obbAUp.set(OrientedBoundingBox3d.UP)); + final Vector3d aForward = entityOBB.rotate(context.obbAForward.set(OrientedBoundingBox3d.FORWARD)); + + final Vector3d bRight = obbB.rotate(context.obbBRight.set(OrientedBoundingBox3d.RIGHT)); + final Vector3d bUp = obbB.rotate(context.obbBUp.set(OrientedBoundingBox3d.UP)); + final Vector3d bForward = obbB.rotate(context.obbBForward.set(OrientedBoundingBox3d.FORWARD)); + + Vector3d mtv = new Vector3d(Double.MAX_VALUE); + + OrientedBoundingBox3d.genChecks(aRight, aUp, aForward, bRight, bUp, bForward, context.checks); + + double minOverlap = Double.MAX_VALUE; + + + int i = 0; + for (final Vector3d check : context.checks) { + if (check.lengthSquared() <= 0) { + continue; + } + + check.normalize(); + + OrientedBoundingBox3d.checkSeparation(verticesA, check, context.proj1); + OrientedBoundingBox3d.checkSeparation(verticesB, check, context.proj2); + + if (check.dot(checker) > 0) { + check.mul(-1.0); + } + + final double overlap = OrientedBoundingBox3d.getOverlap(context.proj1, context.proj2); + + if (overlap == 0.f) { // shapes are not overlapping + return context.zero; + } else { + if (overlap - (i == 14 ? 0.1 : 0.0) < minOverlap) { + minOverlap = overlap; + mtv = check.mul(minOverlap); + } + } + i++; + } + + + final boolean facingOpposite = entityOBB.position.sub(obbB.position, context.oppo).dot(mtv) < 0; + + if (facingOpposite) { + mtv.mul(-1); + } + + return mtv; + } + + /** + * Check separation along an axis for Separating Axis Theorem. + * + * @return a 2d vector with the first component representing minimum and second component maximum + */ + public static @NotNull Vector2d checkSeparation(final Vector3d @NotNull [] self, @NotNull final Vector3d axis, final Vector2d result) { + if (axis.lengthSquared() <= 0.0) { + return result.set(0, 0); + } + + double min = Double.MAX_VALUE; + double max = -Double.MAX_VALUE; + + for (final Vector3d vec : self) { + final double dot = vec.dot(axis); + min = Math.min(dot, min); + max = Math.max(dot, max); + } + + return result.set(min, max); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.java b/common/src/main/java/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.java new file mode 100644 index 0000000..f25dcff --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.api.particle; + +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import org.joml.Vector3dc; + +/** + * An interface for sub-classes of {@link net.minecraft.client.particle.Particle} to implement that indicates whether + * or not the particle should ever be kicked from the tracking sub-level + */ +public interface ParticleSubLevelKickable { + default boolean sable$shouldCareAboutIntersectingSubLevels() { + return true; + } + + boolean sable$shouldKickFromTracking(); + + boolean sable$shouldCollideWithTrackingSubLevel(); + + default Vector3dc sable$getUpDirection() { + return OrientedBoundingBox3d.UP; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipeline.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipeline.java new file mode 100644 index 0000000..c51e8b3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipeline.java @@ -0,0 +1,242 @@ +package dev.ryanhcode.sable.api.physics; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; +import dev.ryanhcode.sable.api.physics.object.box.BoxHandle; +import dev.ryanhcode.sable.api.physics.object.box.BoxPhysicsObject; +import dev.ryanhcode.sable.api.physics.object.rope.RopeHandle; +import dev.ryanhcode.sable.api.physics.object.rope.RopePhysicsObject; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.physics.config.PhysicsConfigData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.SectionPos; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunkSection; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * An abstracted physics engine & pipeline for handling {@link dev.ryanhcode.sable.sublevel.SubLevel} physics calculations. + */ +public interface PhysicsPipeline { + + /** + * Initializes the physics pipeline. + * + * @param gravity the gravity vector + * @param universalDrag the universal drag to apply to all bodies + */ + void init(Vector3dc gravity, double universalDrag); + + /** + * Disposes all resources used by the physics pipeline. + */ + void dispose(); + + /** + * Sets up for the physics ticking with a time step of {@code 1.0 / 20.0} seconds. + */ + void prePhysicsTicks(); + + /** + * Runs a physics substep with a time step of {@code 1.0 / 20.0 / substeps} seconds. + * + * @param timeStep the time step of this physics substep ({@code 1.0 / 20.0 / substeps}) [s] + */ + void physicsTick(double timeStep); + + /** + * Called after all physics substeps have been run, to finalize the physics tick. + */ + void postPhysicsTicks(); + + /** + * Runs a tick to update any separate data tracking / logic, even if physics is currently paused + */ + void tick(); + + /** + * Adds a {@link ServerSubLevel} to the physics pipeline. + */ + void add(ServerSubLevel subLevel, Pose3dc pose); + + /** + * Removes a {@link SubLevel} from the physics pipeline. + */ + void remove(ServerSubLevel subLevel); + + /** + * Adds a kinematic contraption to the scene + */ + void add(KinematicContraption contraption); + + /** + * Removes a kinematic contraption from the scene + */ + void remove(KinematicContraption contraption); + + /** + * Queries the physics pipeline for the current pose of a {@link SubLevel}. + * + * @param subLevel the sub-level to query + * @param dest the pose to write into + * @return the pose of the sub-level stored in dest + */ + @ApiStatus.OverrideOnly + Pose3d readPose(ServerSubLevel subLevel, Pose3d dest); + + /** + * Adds a rope to the physics pipeline + */ + @ApiStatus.OverrideOnly + RopeHandle addRope(RopePhysicsObject rope); + + /** + * Adds a box to the physics pipeline + */ + BoxHandle addBox(BoxPhysicsObject boxPhysicsObject); + + /** + * Handles the addition of a chunk to the physics context + * + * @param x the section x position + * @param y the section y position + * @param z the section z position + */ + void handleChunkSectionAddition(LevelChunkSection chunk, int x, int y, int z, boolean uploadDataIfGlobal); + + /** + * Handles the removal of a chunk section from the physics context + * + * @param x the section x position + * @param y the section y position + * @param z the section z position + */ + void handleChunkSectionRemoval(int x, int y, int z); + + /** + * Handles the change of a block (from oldState to newState) in a chunk at chunk-relative position x, y, z. + * Only called server-side. + * + * @param x chunk-relative x position + * @param z chunk-relative z position + * @param y chunk-relative y position + */ + void handleBlockChange(SectionPos sectionPos, LevelChunkSection chunk, int x, int y, int z, BlockState oldState, BlockState newState); + + /** + * Called to re-upload center of mass, mass properties, and local bounds to the physics pipeline + */ + default void onStatsChanged(@NotNull final ServerSubLevel serverSubLevel) { + + } + + /** + * Teleports the physics pipeline body to a given position. + * + * @param body the physics pipeline body to teleport + * @param position the new position to teleport to + * @param orientation the new orientation to teleport to + */ + void teleport(PhysicsPipelineBody body, Vector3dc position, Quaterniondc orientation); + + /** + * Adds a force at a given world position to a data containing the position + * + * @param body the physics pipeline body to apply the force to + * @param position the plot position to apply the force at [m] + * @param force the force to apply [N] + */ + void applyImpulse(PhysicsPipelineBody body, Vector3dc position, Vector3dc force); + + /** + * Adds a local force and torque + * + * @param body the body to apply the force to + * @param force the local force to apply [N] + * @param torque the local torque to apply [Nm] + * @param wakeUp if the physics pipeline body should be woken if it is sleeping + */ + void applyLinearAndAngularImpulse(PhysicsPipelineBody body, Vector3dc force, Vector3dc torque, boolean wakeUp); + + /** + * Adds linear and angular velocities to a physics pipeline body + * + * @param body the physics pipeline body to apply the velocities to + * @param linearVelocity the linear velocity to apply [m/s] + * @param angularVelocity the angular velocity to apply [rad/s] + */ + default void addLinearAndAngularVelocity(final PhysicsPipelineBody body, final Vector3dc linearVelocity, final Vector3dc angularVelocity) { + + } + + /** + * Resets the velocity of a physics pipeline body + * + * @param body the physics pipeline body to reset the velocity of + */ + default void resetVelocity(final PhysicsPipelineBody body) { + this.addLinearAndAngularVelocity(body, this.getLinearVelocity(body, new Vector3d()).negate(), this.getAngularVelocity(body, new Vector3d()).negate()); + } + + /** + * Gets the linear velocity of a physics pipeline body + * + * @param body the physics pipeline body to get the linear velocity from + * @return the global linear velocity of the body from the physics engine, stored in dest [m/s] + */ + default Vector3d getLinearVelocity(final PhysicsPipelineBody body, final Vector3d dest) { + return dest.zero(); + } + + /** + * Gets the angular velocity of a physics pipeline body + * + * @param body the physics pipeline body to get the angular velocity from + * @return the global angular velocity of the body from the physics engine, stored in dest [rad/s] + */ + default Vector3d getAngularVelocity(final PhysicsPipelineBody body, final Vector3d dest) { + return dest.zero(); + } + + /** + * "Wakes up" a physics pipeline body, indicating environmental or other changes have occurred that should resume physics if idled or sleeping + * + * @param body the physics pipeline body to wake up + */ + void wakeUp(PhysicsPipelineBody body); + + /** + * Adds a constraint to the engine, returning its handle + * + * @param sublevelA the first sub-level to constrain, or null to constrain the second sub-level to the world + * @param sublevelB the second sub-level to constrain, or null to constrain the first sub-level to the world + * @param configuration the configuration of the constraint + */ + default T addConstraint(@Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final PhysicsConstraintConfiguration configuration) { + throw new UnsupportedOperationException("Not implemented"); + } + + /** + * Updates the config of the physics engine from a data object + * + * @param data the data to update from + */ + @ApiStatus.OverrideOnly + default void updateConfigFrom(final PhysicsConfigData data) { + throw new UnsupportedOperationException("Not implemented"); + } + + /** + * @return the next runtime ID for a collider / sub-level + */ + int getNextRuntimeID(); + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.java new file mode 100644 index 0000000..6813b8d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.api.physics; + +import dev.ryanhcode.sable.api.physics.mass.MassData; + +/** + * A rigid-body tracked by a {@link PhysicsPipeline} + */ +public interface PhysicsPipelineBody { + + int NULL_RUNTIME_ID = -1; + + /** + * The runtime integer ID tracked by the {@link PhysicsPipeline} + */ + int getRuntimeId(); + + /** + * @return the mass data for this physics body + */ + MassData getMassTracker(); + + /** + * @return if this body has been removed by the pipeline + */ + boolean isRemoved(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.java new file mode 100644 index 0000000..cc2c88c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.api.physics.callback; + +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +public interface BlockSubLevelCollisionCallback { + + /** + * Called when a collision occurs between two blocks, from JNI / pipeline implementations + * + * @return tangent motion + */ + @ApiStatus.Internal + @SuppressWarnings("unused") + default double[] onCollision(final int x, + final int y, + final int z, + final double x1, + final double y1, + final double z1, + final double impactVelocity) { + final CollisionResult result = this.sable$onCollision(new BlockPos(x, y, z), new Vector3d(x1, y1, z1), impactVelocity); + final Vector3dc motion = result.tangentMotion; + + // TODO: this is stupid and moronic to pass through the removal as a double lmao, let's not do that in the future + return new double[]{motion.x(), motion.y(), motion.z(), result.removeCollision ? 1.0 : 0.0}; + } + + CollisionResult sable$onCollision(BlockPos blockPos, Vector3d pos, double impactVelocity); + + record CollisionResult(Vector3dc tangentMotion, boolean removeCollision) { + public static final CollisionResult NONE = new CollisionResult(JOMLConversion.ZERO, false); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.java new file mode 100644 index 0000000..dd3e5c1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.api.physics.collider; + +import dev.ryanhcode.sable.physics.impl.SableCollisionContextImpl; +import net.minecraft.world.phys.shapes.CollisionContext; + +/** + * Context used for getting collision shapes for sable physics pipelines. + */ +public interface SableCollisionContext extends CollisionContext { + + /** + * @return The collision context to use for getting shapes + */ + static SableCollisionContext get() { + return SableCollisionContextImpl.INSTANCE; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.java new file mode 100644 index 0000000..3521073 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.api.physics.collider; + +import org.joml.Vector3dc; + +public interface VoxelColliderData { + /** + * Adds a collision box to the block physics data entry. + * Coordinates are expected to be within a single voxel space of the block, 0-1. + * + * @param min the minimum corner of the box + * @param max the maximum corner of the box + */ + void addBox(Vector3dc min, Vector3dc max); + + /** + * Clears all collision boxes + */ + void clearBoxes(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.java new file mode 100644 index 0000000..1e88d77 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.api.physics.constraint; + +/** + * All degrees of freedom that joint motors and locks can be imposed on + */ +public enum ConstraintJointAxis { + LINEAR_X, + LINEAR_Y, + LINEAR_Z, + ANGULAR_X, + ANGULAR_Y, + ANGULAR_Z; + + public static final ConstraintJointAxis[] ALL = values(); + public static final ConstraintJointAxis[] LINEAR = {LINEAR_X, LINEAR_Y, LINEAR_Z}; + public static final ConstraintJointAxis[] ANGULAR = {ANGULAR_X, ANGULAR_Y, ANGULAR_Z}; +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.java new file mode 100644 index 0000000..b004f05 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.api.physics.constraint; + +/** + * A configuration for a physics constraint. + * @param the type of constraint handle this configuration produces + */ +public interface PhysicsConstraintConfiguration { + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.java new file mode 100644 index 0000000..26b97a1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.api.physics.constraint; + +import org.joml.Vector3d; + +/** + * An active constraint tracked by the physics world. + * Must be kept track of to be removed. + */ +public interface PhysicsConstraintHandle { + + /** + * Gets the latest global linear and angular joint impulses from the solver + */ + void getJointImpulses(Vector3d linearImpulseDest, Vector3d angularImpulseDest); + + /** + * Sets if contacts are enabled between the two bodies in the constraint + */ + void setContactsEnabled(boolean enabled); + + /** + * Adds / sets a motor on this joint + * + * @param axis The axis on which the motor operates + * @param target The target position along that axis [m | rad] + * @param stiffness How stiff the motor should act, or P in the PD controller + * @param damping How much damping the motor should have, or D in the PD controller + * @param hasMaxForce If the motor should have a force limit + * @param maxForce The maximum force the motor can apply + */ + void setMotor(ConstraintJointAxis axis, double target, double stiffness, double damping, boolean hasMaxForce, double maxForce); + + /** + * Removes the constraint from the active physics engine + */ + void remove(); + + /** + * @return if the constraint is still valid, and has not been removed by the engine + */ + boolean isValid(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.java new file mode 100644 index 0000000..edbe0ab --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.api.physics.constraint.fixed; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +/** + * A configuration for a fixed constraint, with both bodies locked to eachother. + * + * @param pos1 the position in world space assumed to be inside the plot of the first sub-level (ex. a block position). + * @param pos2 the position in world space assumed to be inside the plot of the second sub-level (ex. a block position). + * @param orientation the local orientation of the second body from the first. Motor axes will be relative to this frame + */ +public record FixedConstraintConfiguration(Vector3dc pos1, Vector3dc pos2, Quaterniondc orientation) implements PhysicsConstraintConfiguration { + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.java new file mode 100644 index 0000000..a1f7eb0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.java @@ -0,0 +1,10 @@ +package dev.ryanhcode.sable.api.physics.constraint.fixed; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; + +/** + * A fixed constraint between two bodies + */ +public interface FixedConstraintHandle extends PhysicsConstraintHandle { + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.java new file mode 100644 index 0000000..6ffb943 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.api.physics.constraint.free; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +/** + * A configuration for a free constraint, which imposes no locks + * + * @param pos1 the position in world space assumed to be inside the plot of the first sub-level (ex. a block position). + * @param pos2 the position in world space assumed to be inside the plot of the second sub-level (ex. a block position). + * @param orientation the local orientation of the second body from the first. Motor axes will be relative to this frame + */ +public record FreeConstraintConfiguration(Vector3dc pos1, Vector3dc pos2, Quaterniondc orientation) implements PhysicsConstraintConfiguration { + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.java new file mode 100644 index 0000000..2d224e3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.java @@ -0,0 +1,10 @@ +package dev.ryanhcode.sable.api.physics.constraint.free; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; + +/** + * A free constraint between two bodies + */ +public interface FreeConstraintHandle extends PhysicsConstraintHandle { + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.java new file mode 100644 index 0000000..5615040 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.api.physics.constraint.generic; + +import dev.ryanhcode.sable.api.physics.constraint.ConstraintJointAxis; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +import java.util.EnumSet; +import java.util.Set; + +/** + * A configuration for a generic constraint, with per-axis hard locks and re-anchorable local frames. + * + * @param pos1 the position in world space assumed to be inside the plot of the first sub-level (ex. a block position). + * @param pos2 the position in world space assumed to be inside the plot of the second sub-level (ex. a block position). + * @param orientation1 the local orientation of the joint frame on the first sub-level. + * @param orientation2 the local orientation of the joint frame on the second sub-level. + * @param lockedAxes the set of axes hard-locked by the solver; empty matches a free constraint. + * @since 1.1.0 + */ +public record GenericConstraintConfiguration( + Vector3dc pos1, + Vector3dc pos2, + Quaterniondc orientation1, + Quaterniondc orientation2, + Set lockedAxes +) implements PhysicsConstraintConfiguration { + + public GenericConstraintConfiguration(final Vector3dc pos1, final Vector3dc pos2, final Quaterniondc orientation1, final Quaterniondc orientation2) { + this(pos1, pos2, orientation1, orientation2, EnumSet.noneOf(ConstraintJointAxis.class)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.java new file mode 100644 index 0000000..5c714c8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.api.physics.constraint.generic; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +/** + * A generic constraint between two bodies. + * + * @since 1.1.0 + */ +public interface GenericConstraintHandle extends PhysicsConstraintHandle { + + /** + * Sets the local frame on the first body. + * + * @param localPosition the local anchor position + * @param localRotation the local frame orientation + */ + void setFrame1(Vector3dc localPosition, Quaterniondc localRotation); + + /** + * Sets the local frame on the second body. + * + * @param localPosition the local anchor position + * @param localRotation the local frame orientation + */ + void setFrame2(Vector3dc localPosition, Quaterniondc localRotation); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.java new file mode 100644 index 0000000..70d6e4c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.api.physics.constraint.rotary; + +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import org.joml.Vector3dc; + +/** + * A configuration for a rotary joint constraint, with a single angular DOF. + * @param pos1 the position in world space assumed to be inside the plot of the first sub-level (ex. a block position). + * @param pos2 the position in world space assumed to be inside the plot of the second sub-level (ex. a block positino). + * @param normal1 the local normal of the joint on the first sub-level. + * @param normal2 the local normal of the joint on the second sub-level. + */ +public record RotaryConstraintConfiguration(Vector3dc pos1, Vector3dc pos2, Vector3dc normal1, Vector3dc normal2) implements PhysicsConstraintConfiguration { + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.java new file mode 100644 index 0000000..fb0c5b4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.api.physics.constraint.rotary; + +import dev.ryanhcode.sable.api.physics.constraint.ConstraintJointAxis; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; + +/** + * A constraint handle for a rotary / motor constraint between two bodies + */ +public interface RotaryConstraintHandle extends PhysicsConstraintHandle { + + ConstraintJointAxis DEFAULT_AXIS = ConstraintJointAxis.ANGULAR_X; + + /** + * Sets the servo coefficients for this rotary constraint. + * + * @param angle the target angle [radians] + * @param stiffness the stiffness of the servo + * @param damping the damping of the servo + * @deprecated use {@link #setMotor(ConstraintJointAxis, double, double, double, boolean, double)} instead with {@link RotaryConstraintHandle#DEFAULT_AXIS}. + */ + @Deprecated(forRemoval = true) + default void setServoCoefficients(final double angle, final double stiffness, final double damping) { + this.setMotor(DEFAULT_AXIS, angle, stiffness, damping, false, 0.0); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroup.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroup.java new file mode 100644 index 0000000..e2c7b57 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroup.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.api.physics.force; + +import net.minecraft.network.chat.Component; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * A grouping of forces, for queued force totals & display to the user for making contraptions + * + * @param name the name of the force group + * @param description the description of the force group + * @param color the RGB color of the force group + * @param defaultDisplayed if the force group should be default displayed in GUIs + */ +public record ForceGroup(@NotNull Component name, @Nullable Component description, int color, boolean defaultDisplayed) { +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroups.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroups.java new file mode 100644 index 0000000..2d004f5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceGroups.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.api.physics.force; + +import dev.ryanhcode.sable.Sable; +import foundry.veil.platform.registry.RegistrationProvider; +import foundry.veil.platform.registry.RegistryObject; +import net.minecraft.core.Registry; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; + +/** + * All default force groups + */ +public class ForceGroups { + public static final ResourceKey> REGISTRY_KEY = ResourceKey.createRegistryKey(Sable.sablePath("force_groups")); + private static final RegistrationProvider VANILLA_PROVIDER; + public static final Registry REGISTRY; + + static { + VANILLA_PROVIDER = RegistrationProvider.get(REGISTRY_KEY, Sable.MOD_ID); + REGISTRY = VANILLA_PROVIDER.asVanillaRegistry(); + } + + public static final RegistryObject GRAVITY = VANILLA_PROVIDER.register(Sable.sablePath("gravity"), () -> new ForceGroup(Component.translatable("force_group.sable.gravity"), null, 0x216e55, false)); + public static final RegistryObject DRAG = VANILLA_PROVIDER.register(Sable.sablePath("drag"), () -> new ForceGroup(Component.translatable("force_group.sable.drag"), null, 0x834f31, false)); + public static final RegistryObject LEVITATION = VANILLA_PROVIDER.register(Sable.sablePath("levitation"), () -> new ForceGroup(Component.translatable("force_group.sable.levitation"), null, 0x734480, true)); + public static final RegistryObject BALLOON_LIFT = VANILLA_PROVIDER.register(Sable.sablePath("balloon_lift"), () -> new ForceGroup(Component.translatable("force_group.sable.balloon_lift"), null, 0xd2643e, true)); + public static final RegistryObject PROPULSION = VANILLA_PROVIDER.register(Sable.sablePath("propulsion"), () -> new ForceGroup(Component.translatable("force_group.sable.propulsion"), null, 0x5a7c9f, true)); + public static final RegistryObject LIFT = VANILLA_PROVIDER.register(Sable.sablePath("lift"), () -> new ForceGroup(Component.translatable("force_group.sable.lift"), null, 0x8cb6c6, true)); + public static final RegistryObject MAGNETIC_FORCE = VANILLA_PROVIDER.register(Sable.sablePath("magnetic_force"), () -> new ForceGroup(Component.translatable("force_group.sable.magnetic_force"), null, 0xe05343, false)); + + public static void register() { + // no-op + } + + /** + * + * The count of registered force groups + */ + public static int count() { + return REGISTRY.size(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceTotal.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceTotal.java new file mode 100644 index 0000000..47e587d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/ForceTotal.java @@ -0,0 +1,148 @@ +package dev.ryanhcode.sable.api.physics.force; + +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * Utility class for applying forces to {@link RigidBodyHandle rigid-body handles} + */ +public class ForceTotal { + + private final Vector3d temp = new Vector3d(); + private final Vector3d lastLocalForce = new Vector3d(); + private final Vector3d lastLocalTorque = new Vector3d(); + private final Vector3d localForce = new Vector3d(); + private final Vector3d localTorque = new Vector3d(); + + @ApiStatus.Internal + public void applyForces(final RigidBodyHandle handle) { + final boolean forceChanged = this.localForce.distanceSquared( this.lastLocalForce) > 1e-5; + final boolean torqueChanged = this.localTorque.distanceSquared(this.lastLocalTorque) > 1e-5; + + final boolean wakeUp = forceChanged || torqueChanged; + handle.applyLinearAndAngularImpulse(this.localForce, this.localTorque, wakeUp); + + this.lastLocalForce.set(this.localForce); + this.lastLocalTorque.set(this.localTorque); + + this.localForce.set(0.0, 0.0, 0.0); + this.localTorque.set(0.0, 0.0, 0.0); + } + + /** + * Resets the current force total + */ + public void reset() { + this.localForce.set(0.0, 0.0, 0.0); + this.localTorque.set(0.0, 0.0, 0.0); + } + + /** + * Applies another force total to this one + * + * @param other the other force total to apply + */ + public void applyForceTotal(final ForceTotal other) { + this.localForce.add(other.localForce); + this.localTorque.add(other.localTorque); + } + + /** + * Adds to both local linear and angular momenta + * + * @param impulse the local impulse to apply [N] + * @param torque the local torque to apply [Nm] + */ + public void applyLinearAndAngularImpulse(final Vector3dc impulse, final Vector3dc torque) { + this.localForce.add(impulse); + this.localTorque.add(torque); + } + + /** + * Adds to local linear momenta + * + * @param impulse the local impulse to apply [N] + */ + public void applyLinearImpulse(final Vector3dc impulse) { + this.applyLinearAndAngularImpulse(impulse, JOMLConversion.ZERO); + } + + /** + * Adds to local angular momenta + * + * @param impulse the local impulse to apply [N] + */ + public void applyAngularImpulse(final Vector3dc impulse) { + this.applyLinearAndAngularImpulse(JOMLConversion.ZERO, impulse); + } + + /** + * Adds to local angular momenta + * + * @param torque the local torque to apply [Nm] + */ + public void applyTorqueImpulse(final Vector3dc torque) { + this.applyAngularImpulse(torque); + } + + /** + * Adds a momenta impulse at a given world position to a data containing the position + * + * @param position the position inside the plot to apply the force at [m] + * @param force the local impulse to apply [N] + */ + public void applyImpulseAtPoint(final MassData massTracker, final Vector3dc position, final Vector3dc force) { + this.localForce.add(force); + position.sub(massTracker.getCenterOfMass(), this.temp); + this.localTorque.add(this.temp.cross(force)); + } + + /** + * Adds a momenta impulse at a given world position to a data containing the position + * + * @param position the position inside the plot to apply the force at [m] + * @param force the local impulse to apply [N] + */ + public void applyImpulseAtPoint(final ServerSubLevel massTracker, final Vector3dc position, final Vector3dc force) { + this.applyImpulseAtPoint( + massTracker.getMassTracker(), + position, + force + ); + } + + /** + * @return the current totalled local force + */ + public Vector3d getLocalForce() { + return this.localForce; + } + + /** + * @return the current totalled local torque + */ + public Vector3d getLocalTorque() { + return this.localTorque; + } + + /** + * Adds a momenta impulse at a given world position to a data containing the position + * + * @param position the position inside the plot to apply the force at [m] + * @param force the local impulse to apply [N] + */ + public void applyImpulseAtPoint(final MassTracker massTracker, final Vec3 position, final Vec3 force) { + this.applyImpulseAtPoint( + massTracker, + JOMLConversion.toJOML(position), + JOMLConversion.toJOML(force) + ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.java new file mode 100644 index 0000000..3cf9e6b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.api.physics.force; + +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import org.joml.Vector3dc; + +import java.util.List; + +/** + * A grouping of applied point forces, alongside a force total to be applied. + */ +public class QueuedForceGroup { + private final List appliedForces = new ObjectArrayList<>(); + private final ForceTotal forceTotal = new ForceTotal(); + private final ServerSubLevel subLevel; + + public QueuedForceGroup(final ServerSubLevel serverSubLevel) { + this.subLevel = serverSubLevel; + } + + public ForceTotal getForceTotal() { + return this.forceTotal; + } + + public void applyAndRecordPointForce(final Vector3dc point, final Vector3dc force) { + this.forceTotal.applyImpulseAtPoint(this.subLevel.getMassTracker(), point, force); + this.recordPointForce(point, force); + } + public void recordPointForce(final Vector3dc point, final Vector3dc force) { + if (!this.subLevel.isTrackingIndividualQueuedForces()) { + return; + } + + if (force.lengthSquared() > 0.001 * 0.001) { + this.appliedForces.add(new PointForce(point, force)); + } + } + + public List getRecordedPointForces() { + return this.appliedForces; + } + + public void reset() { + this.forceTotal.reset(); + this.appliedForces.clear(); + } + + public record PointForce(Vector3dc point, Vector3dc force) { + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.java new file mode 100644 index 0000000..3b6ff97 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.java @@ -0,0 +1,208 @@ +package dev.ryanhcode.sable.api.physics.handle; + +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.force.ForceTotal; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Contract; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * A handle for easy access to physics-related operations on a {@link dev.ryanhcode.sable.sublevel.ServerSubLevel}. + */ +public class RigidBodyHandle { + private final PhysicsPipelineBody body; + private final SubLevelPhysicsSystem physicsSystem; + + /** + * Obtains a handle for a given physics body. + * + * @param level the level to obtain the handle for + * @param body the sub-level to obtain the handle for + */ + @Contract("_,_ -> _") + public static @Nullable RigidBodyHandle of(final ServerLevel level, final PhysicsPipelineBody body) { + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + return null; + } + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + + return new RigidBodyHandle(body, physicsSystem); + } + + /** + * Obtains a handle for a given server sub-level. + *
+ * If the physics system is already available in-scope or this is being called in bulk, the handle should be obtained + * through {@link SubLevelPhysicsSystem#getPhysicsHandle(ServerSubLevel)}. + * + * @param subLevel the sub-level to obtain the handle for + */ + @Contract("_ -> new") + public static @Nullable RigidBodyHandle of(final ServerSubLevel subLevel) { + final ServerLevel level = subLevel.getLevel(); + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + return null; + } + + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + + return physicsSystem.getPhysicsHandle(subLevel); + } + + @ApiStatus.Internal + public RigidBodyHandle(final PhysicsPipelineBody body, final SubLevelPhysicsSystem physicsSystem) { + this.body = body; + this.physicsSystem = physicsSystem; + } + + /** + * Adds a momenta impulse at a given world position to a data containing the position + * + * @param position the position inside the plot to apply the force at [m] + * @param force the local impulse to apply [N] + */ + public void applyImpulseAtPoint(final Vector3dc position, final Vector3dc force) { + this.physicsSystem.getPipeline().applyImpulse(this.body, position, force); + } + + /** + * Adds a momenta impulse at a given world position to a data containing the position + * + * @param position the position inside the plot to apply the force at [m] + * @param force the local impulse to apply [N] + */ + public void applyImpulseAtPoint(final Vec3 position, final Vec3 force) { + this.physicsSystem.getPipeline().applyImpulse(this.body, JOMLConversion.toJOML(position), JOMLConversion.toJOML(force)); + } + + /** + * Adds to both local linear and angular momenta + * + * @param impulse the local impulse to apply [N] + * @param torque the local torque to apply [Nm] + */ + public void applyLinearAndAngularImpulse(final Vector3dc impulse, final Vector3dc torque) { + this.applyLinearAndAngularImpulse(impulse, torque, true); + } + + /** + * Adds to both local linear and angular momenta + * + * @param impulse the local impulse to apply [N] + * @param torque the local torque to apply [Nm] + */ + public void applyLinearAndAngularImpulse(final Vector3dc impulse, final Vector3dc torque, final boolean wakeUp) { + this.physicsSystem.getPipeline().applyLinearAndAngularImpulse(this.body, impulse, torque, wakeUp); + } + + /** + * Adds to local linear momenta + * + * @param impulse the local impulse to apply [N] + */ + public void applyLinearImpulse(final Vector3dc impulse) { + this.applyLinearAndAngularImpulse(impulse, JOMLConversion.ZERO); + } + + /** + * Adds to local angular momenta + * + * @param impulse the local impulse to apply [N] + */ + public void applyAngularImpulse(final Vector3dc impulse) { + this.applyLinearAndAngularImpulse(JOMLConversion.ZERO, impulse); + } + + /** + * Adds to local angular momenta + * + * @param torque the local torque to apply [Nm] + */ + public void applyTorqueImpulse(final Vector3dc torque) { + this.applyAngularImpulse(torque); + } + + /** + * @return the global linear velocity of the body from the physics engine [m/s] + * @deprecated Use {@link RigidBodyHandle#getLinearVelocity(Vector3d)} instead. + */ + @Deprecated + public Vector3dc getLinearVelocity() { + return this.physicsSystem.getPipeline().getLinearVelocity(this.body, new Vector3d()); + } + + /** + * @return the global angular velocity of the body from the physics engine [rad/s] + */ + @Deprecated + public Vector3dc getAngularVelocity() { + return this.physicsSystem.getPipeline().getAngularVelocity(this.body, new Vector3d()); + } + + /** + * @param dest the destination vector to store the result in + * @return the global linear velocity of the body from the physics engine, stored in dest [m/s] + */ + public Vector3d getLinearVelocity(final Vector3d dest) { + return this.physicsSystem.getPipeline().getLinearVelocity(this.body, dest); + } + + /** + * @param dest the destination vector to store the result in + * @return the global angular velocity of the body from the physics engine, stored in dest [rad/s] + */ + public Vector3d getAngularVelocity(final Vector3d dest) { + return this.physicsSystem.getPipeline().getAngularVelocity(this.body, dest); + } + + /** + * Applies forces from a force applicator to this body. + * If the forces have not changed significantly since the last time the force total was used, the rigid-body will not be woken up. + */ + public void applyForcesAndReset(final ForceTotal forceTotal) { + forceTotal.applyForces(this); + } + + /** + * Adds linear and angular velocities + * + * @param linearVelocity the linear velocity to apply [m/s] + * @param angularVelocity the angular velocity to apply [rad/s] + */ + public void addLinearAndAngularVelocity(final Vector3dc linearVelocity, final Vector3dc angularVelocity) { + this.physicsSystem.getPipeline().addLinearAndAngularVelocity(this.body, linearVelocity, angularVelocity); + } + + /** + * Teleports the physics pipeline body to a given position. + * + * @param position the new position to teleport to + * @param orientation the new orientation to teleport to + */ + public void teleport(final Vector3dc position, final Quaterniondc orientation) { + this.physicsSystem.getPipeline().teleport(this.body, position, orientation); + } + + /** + * Checks if this handle is valid. + * + * @return true if the handle is alid + */ + public boolean isValid() { + return !this.body.isRemoved(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassData.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassData.java new file mode 100644 index 0000000..ba4c8fa --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassData.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.api.physics.mass; + +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix3dc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +public interface MassData { + + /** + * @return total mass [kpg] + */ + double getMass(); + + /** + * @return total inverse mass [1/kpg] + */ + double getInverseMass(); + + /** + * @return inertia tensor in local space [kpg*m^2] + */ + Matrix3dc getInertiaTensor(); + + /** + * @return inverse inertia tensor in local space [1/(kpg*m^2)] + */ + Matrix3dc getInverseInertiaTensor(); + + /** + * @return the nullable location of the center-of-mass + */ + @Nullable + Vector3dc getCenterOfMass(); + + default boolean isInvalid() { + return this.getMass() <= 0.0; + } + + /** + * @param position the position to check the normal mass at, assumed to be in the plot + * @param direction the direction to check the normal mass along, local to the plot + * @return the normal mass, or effective mass at the plot position and direction + */ + default double getInverseNormalMass(final Vector3dc position, final Vector3dc direction) { + final Vector3d comLocalPos = position.sub(this.getCenterOfMass(), new Vector3d()); + final Vector3d normalizedDirection = direction.normalize(new Vector3d()); + final Vector3d cross = comLocalPos.cross(normalizedDirection, new Vector3d()); + + return cross.dot(this.getInverseInertiaTensor().transform(cross, new Vector3d())) + + this.getInverseMass(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassTracker.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassTracker.java new file mode 100644 index 0000000..e0b26a0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MassTracker.java @@ -0,0 +1,270 @@ +package dev.ryanhcode.sable.api.physics.mass; + +import dev.ryanhcode.sable.api.block.BlockSubLevelCustomCenterOfMass; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import dev.ryanhcode.sable.util.SableMathUtils; +import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix3d; +import org.joml.Matrix3dc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.function.BiFunction; + +/** + * Tracks the mass / inertia tensor of a structure + */ +public class MassTracker implements MassData { + private static final AABB UNIT_BOUNDS = new AABB(0, 0, 0, 1, 1, 1); + + /** + * The memoized internal center of masses for block-states + */ + public static BiFunction BLOCK_CENTER_OF_MASS = new BiFunction<>() { + private final Int2ObjectOpenHashMap cache = new Int2ObjectOpenHashMap<>(); + + @Override + public Vector3dc apply(final BlockGetter blockGetter, final BlockState state) { + return this.cache.computeIfAbsent(state.hashCode(), x -> { + if (state.isAir()) { + return JOMLConversion.HALF; + } + + if (state.getBlock() instanceof final BlockSubLevelCustomCenterOfMass customCenterOfMass) { + return customCenterOfMass.getCenterOfMass(blockGetter, state); + } + + final VoxelShape shape = state.getCollisionShape(blockGetter, BlockPos.ZERO); + + if (shape.isEmpty()) { + return JOMLConversion.HALF; + } + + if (state.isCollisionShapeFullBlock(blockGetter, BlockPos.ZERO)) { + return JOMLConversion.HALF; + } + + final AABB bounds = shape.bounds().intersect(UNIT_BOUNDS); + return JOMLConversion.toJOML(bounds.getCenter()); + }); + } + }; + + private static final Matrix3d BLOCK_INERTIA = new Matrix3d(); + /** + * The mass of the sub-level [kpg] + */ + private double mass; + /** + * The inertia tensor of the sub-level [kgm^2] + */ + private Matrix3d inertiaTensor; + /** + * 1 / mass of the sub-level [1 / kpg] + */ + private double inverseMass; + /** + * 1 / inertia tensor of the sub-level [1 / kgm^2] + */ + private Matrix3d inverseInertiaTensor; + /** + * The center of mass of the sub-level [m] + */ + private @Nullable Vector3d centerOfMass; + + /** + * The data to track the mass of + */ + public MassTracker() { + this.mass = 0.0; + this.centerOfMass = null; + this.inertiaTensor = new Matrix3d().zero(); + this.inverseInertiaTensor = new Matrix3d().zero(); + } + + /** + * Creates a new mass tracker for a sub-level. + */ + public static MassTracker build(final BlockGetter blockGetter, final BoundingBox3ic bounds) { + double mass = 0.0; + final Vector3d centerOfMass = new Vector3d(); + final Matrix3d inertiaTensor = new Matrix3d().zero(); + + final BlockPos.MutableBlockPos blockPos = new BlockPos.MutableBlockPos(); + final Vector3d blockCenter = new Vector3d(); + int blockCount = 0; + + for (int x = bounds.minX(); x <= bounds.maxX(); x++) { + for (int y = bounds.minY(); y <= bounds.maxY(); y++) { + for (int z = bounds.minZ(); z <= bounds.maxZ(); z++) { + final BlockState state = blockGetter.getBlockState(blockPos.set(x, y, z)); + + if (!VoxelNeighborhoodState.isSolid(blockGetter, blockPos, state)) { + continue; + } + + final double blockMass = PhysicsBlockPropertyHelper.getMass(blockGetter, blockPos, state); + blockCenter.set(x, y, z) + .add(BLOCK_CENTER_OF_MASS.apply(blockGetter, state)); + + mass += blockMass; + centerOfMass.fma(blockMass, blockCenter); + blockCount++; + } + } + } + + if (blockCount == 0) { + final MassTracker tracker = new MassTracker(); + tracker.mass = 0.0; + tracker.centerOfMass = null; + tracker.inertiaTensor = new Matrix3d().zero(); + tracker.inverseInertiaTensor = new Matrix3d().zero(); + return tracker; + } + + centerOfMass.div(mass); + + for (int x = bounds.minX(); x <= bounds.maxX(); x++) { + for (int y = bounds.minY(); y <= bounds.maxY(); y++) { + for (int z = bounds.minZ(); z <= bounds.maxZ(); z++) { + final BlockState state = blockGetter.getBlockState(blockPos.set(x, y, z)); + + if (!VoxelNeighborhoodState.isSolid(blockGetter, blockPos, state)) { + continue; + } + + blockCenter.set(x, y, z) + .add(BLOCK_CENTER_OF_MASS.apply(blockGetter, state)); + + final double blockMass = PhysicsBlockPropertyHelper.getMass(blockGetter, blockPos, state); + final Vec3 blockInertia = PhysicsBlockPropertyHelper.getInertia(blockGetter, blockPos, state); + final Vector3d r = blockCenter.sub(centerOfMass); + + MassTracker.addBlockInertia(r, blockMass, inertiaTensor, blockInertia); + } + } + } + + final Matrix3d inverseInertiaTensor = new Matrix3d(inertiaTensor).invert(); + final double inverseMass = 1.0 / mass; + + final MassTracker tracker = new MassTracker(); + + tracker.centerOfMass = centerOfMass; + tracker.mass = mass; + tracker.inverseMass = inverseMass; + tracker.inertiaTensor = inertiaTensor; + tracker.inverseInertiaTensor = inverseInertiaTensor; + + return tracker; + } + + private static Matrix3d addBlockInertia(final Vector3d blockPos, final double blockMass, final Matrix3d dest, final @Nullable Vec3 blockInertia) { + if (blockInertia == null) { + // block doesn't specify inertia, we assume it to be a cube + BLOCK_INERTIA.identity().scale(blockMass / 6.0); + } else { + // block specifies inertia, we use it as diagonals + BLOCK_INERTIA.identity(); + BLOCK_INERTIA.m00 = blockInertia.x * blockMass; + BLOCK_INERTIA.m11 = blockInertia.y * blockMass; + BLOCK_INERTIA.m22 = blockInertia.z * blockMass; + } + + dest.add(BLOCK_INERTIA); + SableMathUtils.fmaInertiaTensor(blockPos, blockMass, dest); + return dest; + } + + /** + * Adds the mass of a 1x1x1 cube to the sub-level. + * Negative mass is equivalent to the removal of a block. + * + * @param blockPos The position of the block + * @param blockMass The mass of the block [kpg] + */ + public void addBlockMass(final BlockGetter blockGetter, final BlockState state, final BlockPos blockPos, final double blockMass, final @Nullable Vec3 blockInertia) { + final double oldMass = this.mass; + final double newMass = oldMass + blockMass; + + final Vector3d blockCenter = new Vector3d(blockPos.getX(), blockPos.getY(), blockPos.getZ()) + .add(BLOCK_CENTER_OF_MASS.apply(blockGetter, state)); + + if (this.centerOfMass == null) { + this.centerOfMass = new Vector3d(blockCenter); + } + + final Vector3d blockCenterFromCOM = new Vector3d(blockCenter).sub(this.centerOfMass); + + addBlockInertia(blockCenterFromCOM, blockMass, this.inertiaTensor, blockInertia); + this.mass = newMass; + this.inverseMass = 1.0 / newMass; + + this.moveCenterOfMass(new Vector3d(this.centerOfMass).mul(oldMass).add(blockCenter.mul(blockMass)).div(newMass)); + } + + /** + * Moves the center of mass to a new position. + * + * @param newCenterOfMass The new center of mass + */ + public void moveCenterOfMass(final Vector3d newCenterOfMass) { + final Vector3d diff = new Vector3d(newCenterOfMass).sub(this.centerOfMass); + final Matrix3d outerProduct = new Matrix3d( + diff.x * diff.x, + diff.y * diff.x, + diff.z * diff.x, + + diff.x * diff.y, + diff.y * diff.y, + diff.z * diff.y, + + diff.x * diff.z, + diff.y * diff.z, + diff.z * diff.z + ); + + final Matrix3d inertia = new Matrix3d().scale(diff.lengthSquared()).sub(outerProduct).scale(this.mass); + + this.inertiaTensor.sub(inertia); + this.inverseInertiaTensor = new Matrix3d(this.inertiaTensor).invert(); + this.centerOfMass.set(newCenterOfMass); + } + + + @Override + public double getInverseMass() { + return this.inverseMass; + } + + @Override + public Matrix3dc getInverseInertiaTensor() { + return this.inverseInertiaTensor; + } + + @Override + public Matrix3dc getInertiaTensor() { + return this.inertiaTensor; + } + + @Override + public double getMass() { + return this.mass; + } + + @Override + public Vector3dc getCenterOfMass() { + return this.centerOfMass; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.java new file mode 100644 index 0000000..7ef2f05 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.java @@ -0,0 +1,175 @@ +package dev.ryanhcode.sable.api.physics.mass; + +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.SableMathUtils; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.*; + +import java.util.Collection; +import java.util.Objects; + +public class MergedMassTracker implements MassData { + private final MassTracker selfTracker; + /** + * The sub-level to track the merged mass of + */ + private final ServerSubLevel subLevel; + /** + * The merged mass of the sub-level, including contraptions [kpg] + */ + private double mass; + /** + * The merged inertia tensor of the sub-level, including contraptions [kgm^2] + */ + private final Matrix3d inertiaTensor = new Matrix3d().zero(); + /** + * 1 / merged mass of the sub-level, including contraptions [1 / kpg] + */ + private double inverseMass; + /** + * 1 / merged inertia tensor of the sub-level, including contraptions [1 / kgm^2] + */ + private final Matrix3d inverseInertiaTensor = new Matrix3d().zero(); + /** + * The merged center of mass of the sub-level, including contraptions [m] + */ + private @Nullable Vector3d centerOfMass; + + private double lastMass; + private @Nullable Vector3d lastCenterOfMass; + private @Nullable Matrix3d lastInertiaTensor; + + public MergedMassTracker(@NotNull final ServerSubLevel subLevel, final MassTracker selfTracker) { + this.subLevel = subLevel; + this.selfTracker = selfTracker; + } + + /** + * Updates the merged mass properties of this sub-level, and merges the contraption mass trackers into this one + */ + public void update(final float partialPhysicsTick) { + if (this.selfTracker.getCenterOfMass() == null) { + return; + } + + final Collection contraptions = this.subLevel.getPlot().getContraptions(); + + this.mass = this.selfTracker.getMass(); + this.centerOfMass = this.selfTracker.getCenterOfMass().mul(this.getMass(), new Vector3d()); + + for (final KinematicContraption contraption : contraptions) { + final MassTracker contraptionMassData = contraption.sable$getMassTracker(); + this.mass = this.getMass() + contraptionMassData.getMass(); + this.centerOfMass.fma(contraptionMassData.getMass(), contraption.sable$getPosition(partialPhysicsTick)); + } + + this.centerOfMass.mul(1 / this.getMass()); + + this.inertiaTensor.set(this.selfTracker.getInertiaTensor()); + final Vector3d localShift = this.centerOfMass.sub(this.selfTracker.getCenterOfMass(), new Vector3d()); + + // nudge inertia tensor + SableMathUtils.fmaInertiaTensor(localShift, this.selfTracker.getMass(), this.inertiaTensor); + + for (final KinematicContraption contraption : contraptions) { + final MassTracker contraptionMassData = contraption.sable$getMassTracker(); + + final Vector3d localPos = contraption.sable$getPosition(partialPhysicsTick).sub(this.centerOfMass, new Vector3d()); + SableMathUtils.fmaInertiaTensor(localPos, contraptionMassData.getMass(), this.inertiaTensor); + + final Quaterniond contraptionOrientation = contraption.sable$getOrientation(partialPhysicsTick); + + // Q * (I * (Q^-1 * v)) + final Matrix3d localInertiaTensor = new Matrix3d() + .rotateLocal(contraptionOrientation.conjugate(new Quaterniond())) + .mulLocal(contraptionMassData.getInertiaTensor()) + .rotateLocal(contraptionOrientation); + + this.inertiaTensor.add(localInertiaTensor); + } + + this.inverseMass = 1.0 / this.mass; + this.inertiaTensor.invert(this.inverseInertiaTensor); + + this.uploadData(); + this.setPreviousValues(); + } + + private void uploadData() { + if (this.centerOfMass != null && (this.mass != this.lastMass || + !Objects.equals(this.lastCenterOfMass, this.centerOfMass) || + !Objects.equals(this.lastInertiaTensor, this.inertiaTensor))) { + if (this.lastCenterOfMass == null || this.lastInertiaTensor == null) { + this.lastCenterOfMass = new Vector3d(this.centerOfMass); + this.lastInertiaTensor = new Matrix3d(this.inertiaTensor); + } + + final ServerLevel level = this.subLevel.getLevel(); + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + + final Vector3d movement = this.centerOfMass.sub(this.lastCenterOfMass, new Vector3d()); + + physicsSystem.updatePose(this.subLevel); + final Pose3d pose = this.subLevel.logicalPose(); + physicsSystem.getPipeline().teleport(this.subLevel, pose.position().add(pose.orientation().transform(movement)), pose.orientation()); + pose.rotationPoint().set(this.centerOfMass); + physicsSystem.getPipeline().onStatsChanged(this.subLevel); + } + } + + private void setPreviousValues() { + if (this.centerOfMass == null) { + this.lastCenterOfMass = null; + this.lastInertiaTensor = null; + } else { + if (this.lastCenterOfMass == null) { + this.lastCenterOfMass = new Vector3d(); + this.lastInertiaTensor = new Matrix3d().zero(); + } + this.lastCenterOfMass.set(this.centerOfMass); + this.lastInertiaTensor.set(this.inertiaTensor); + } + + this.lastMass = this.mass; + } + + @Override + public double getInverseMass() { + return this.inverseMass; + } + + @Override + public Matrix3dc getInverseInertiaTensor() { + return this.inverseInertiaTensor; + } + + @Override + public Matrix3dc getInertiaTensor() { + return this.inertiaTensor; + } + + @Override + public double getMass() { + return this.mass; + } + + @Override + public Vector3dc getCenterOfMass() { + return this.centerOfMass; + } + + /** + * @return the mass tracker for just the sub-level, not including merged masses + */ + public MassTracker getSelfMassTracker() { + return this.selfTracker; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.java new file mode 100644 index 0000000..fe9d1f4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.api.physics.object; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.world.level.ChunkPos; + +/** + * An arbitrary physics object in a {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} + */ +public interface ArbitraryPhysicsObject { + + /** + * Gathers the bounding box that the arbitrary physics object requires to be loaded. + * Chunk sections intersecting this bounding box will be synced to the physics engine. + * + * @param dest the destination the bounding box should be written into + */ + void getBoundingBox(final BoundingBox3d dest); + + /** + * Called upon the physics object entering unloaded chunks + */ + void onUnloaded(SubLevelHoldingChunkMap holdingChunkMap, ChunkPos chunkPos); + + /** + * Called upon the physics object being removed from the system through means other than unloading + */ + void onRemoved(); + + /** + * Called upon the physics object being added to the world + */ + void onAddition(final SubLevelPhysicsSystem physicsSystem); + + /** + * Called to wake up the physics object when nearby blocks were modified + */ + void wakeUp(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.java new file mode 100644 index 0000000..7b19d2f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.api.physics.object.box; + +import dev.ryanhcode.sable.companion.math.Pose3d; +import org.jetbrains.annotations.ApiStatus; + +/** + * A handle to an active box in the physics engine. + * + * @see BoxPhysicsObject + */ +public interface BoxHandle { + + /** + * Queries the pose of the box from the physics engine + */ + @ApiStatus.OverrideOnly + void readPose(Pose3d dest); + + /** + * Removes the box from the physics pipeline + */ + void remove(); + + /** + * Wakes up the box + */ + void wakeUp(); + + /** + * @return the runtime ID of the box + */ + int getRuntimeId(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.java new file mode 100644 index 0000000..ac4ead3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.java @@ -0,0 +1,178 @@ +package dev.ryanhcode.sable.api.physics.object.box; + +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import dev.ryanhcode.sable.api.physics.object.ArbitraryPhysicsObject; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix3d; +import org.joml.Matrix3dc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * A box cuboid physics object. Some may say. + */ +public class BoxPhysicsObject implements ArbitraryPhysicsObject, PhysicsPipelineBody { + + protected BoxHandle handle; + private final Pose3d pose = new Pose3d(); + private final Vector3d halfExtents = new Vector3d(); + private final double mass; + private boolean active = false; + + /** + * Constructs a box physics object + * @param pose the pose where the rotation point and scale are ignored + * @param halfExtents the half-extents of the box + * @param mass the mass of the box + */ + public BoxPhysicsObject(final Pose3dc pose, final Vector3dc halfExtents, final double mass) { + this.pose.set(pose); + this.halfExtents.set(halfExtents); + this.mass = mass; + } + + /** + * Gathers the bounding box that the arbitrary physics object requires to be loaded. + * Chunk sections intersecting this bounding box will be synced to the physics engine. + * + * @param dest the destination the bounding box should be written into + */ + @Override + public void getBoundingBox(final BoundingBox3d dest) { + final double max = this.halfExtents.get(this.halfExtents.maxComponent()); + + final Vector3d center = this.pose.position(); + dest.set(center.x, center.y, center.z, center.x, center.y, center.z); + dest.expand(max * 1.7321); + } + + /** + * Updates the pose of the box + */ + public void updatePose() { + this.handle.readPose(this.pose); + } + + /** + * Called upon the physics object entering unloaded chunks + */ + @Override + public void onUnloaded(final SubLevelHoldingChunkMap holdingChunkMap, final ChunkPos chunkPos) { + this.remove(); + } + + /** + * Called upon the physics object being removed from the system through means other than unloading + */ + @Override + public void onRemoved() { + this.remove(); + } + + protected void remove() { + this.active = false; + this.handle.remove(); + this.handle = null; + } + + /** + * Called upon the physics object being added to the world + */ + @Override + public void onAddition(final SubLevelPhysicsSystem physicsSystem) { + this.active = true; + this.handle = physicsSystem.getPipeline().addBox(this); + } + + /** + * Called to wake up the physics object when nearby blocks were modified + */ + @Override + public void wakeUp() { + this.handle.wakeUp(); + } + + /** + * @return the last updated pose + */ + public Pose3dc getPose() { + return this.pose; + } + + /** + * @return the half extents of the cube + */ + public Vector3dc getHalfExtents() { + return this.halfExtents; + } + + /** + * @return the mass of the cube + */ + public double getMass() { + return this.mass; + } + + public boolean isActive() { + return this.active; + } + + @Override + public int getRuntimeId() { + if (this.handle == null) { + return PhysicsPipelineBody.NULL_RUNTIME_ID; + } + return this.handle.getRuntimeId(); + } + + @Override + public MassData getMassTracker() { + return new BoxMassData(); + } + + @Override + public boolean isRemoved() { + return !this.active; + } + + /** + * Mass data for a box physics object + */ + private class BoxMassData implements MassData { + private final Matrix3dc inertia = new Matrix3d().scale(BoxPhysicsObject.this.mass / 6.0); + private final Matrix3dc inverseInertia = this.inertia.invert(new Matrix3d()); + + @Override + public double getMass() { + return BoxPhysicsObject.this.mass; + } + + @Override + public double getInverseMass() { + return 1.0 / BoxPhysicsObject.this.mass; + } + + @Override + public Matrix3dc getInertiaTensor() { + return this.inertia; + } + + @Override + public Matrix3dc getInverseInertiaTensor() { + return this.inverseInertia; + } + + @Override + public @Nullable Vector3dc getCenterOfMass() { + return JOMLConversion.ZERO; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.java new file mode 100644 index 0000000..6facfdf --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.java @@ -0,0 +1,61 @@ +package dev.ryanhcode.sable.api.physics.object.rope; + +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; + +/** + * A handle to an active rope in the physics engine. + * + * @see RopePhysicsObject + */ +public interface RopeHandle { + + /** + * Queries the points of the rope from the physics engine + */ + @ApiStatus.OverrideOnly + void readPose(List dest); + + /** + * Removes the rope from the physics pipeline + */ + void remove(); + + /** + * Sets the extension constraint length of the first segment + */ + void setFirstSegmentLength(double length); + + /** + * Removes the point at the beginning of the rope + */ + void removeFirstPoint(); + + /** + * Adds a point to the beginning of the rope + */ + void addPoint(final Vector3dc position); + + /** + * Sets an attachment + */ + void setAttachment(final AttachmentPoint attachmentPoint, final Vector3dc location, final ServerSubLevel subLevel); + + /** + * Wakes up the rope + */ + void wakeUp(); + + /** + * Rope attachment points + */ + enum AttachmentPoint { + START, + END + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.java b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.java new file mode 100644 index 0000000..94d2bc0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.java @@ -0,0 +1,166 @@ +package dev.ryanhcode.sable.api.physics.object.rope; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.physics.object.ArbitraryPhysicsObject; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import it.unimi.dsi.fastutil.objects.ObjectLists; +import net.minecraft.world.level.ChunkPos; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Collection; + +/** + * A rope made of points. Some may say. + */ +public class RopePhysicsObject implements ArbitraryPhysicsObject { + protected final ObjectList points; + protected final ObjectList pointsView; + protected final double collisionRadius; + protected boolean active; + protected RopeHandle handle; + + protected Vector3dc startAttachmentLocation = null; + protected ServerSubLevel startAttachmentSubLevel = null; + + public RopePhysicsObject(final Collection points, final double collisionRadius) { + this.points = new ObjectArrayList<>(points); + this.pointsView = ObjectLists.unmodifiable(this.points); + this.collisionRadius = collisionRadius; + this.active = false; + } + + /** + * Gathers the bounding box that the arbitrary physics object requires to be loaded. + * Chunk sections intersecting this bounding box will be synced to the physics engine. + * + * @param dest the destination the bounding box should be written into + */ + @Override + public void getBoundingBox(final BoundingBox3d dest) { + final Vector3d first = this.points.getFirst(); + dest.set(first.x, first.y, first.z, first.x, first.y, first.z); + for (final Vector3d point : this.points) { + dest.expandTo(point.x - this.collisionRadius, point.y - this.collisionRadius, point.z - this.collisionRadius); + dest.expandTo(point.x + this.collisionRadius, point.y + this.collisionRadius, point.z + this.collisionRadius); + } + } + + public double getCollisionRadius() { + return this.collisionRadius; + } + + /** + * @return A view of all points + */ + public ObjectList getPoints() { + return this.pointsView; + } + + /** + * Updates the points of the rope + */ + public void updatePose() { + this.handle.readPose(this.points); + } + + /** + * Sets the extension constraint length of the first segment + */ + public void setFirstSegmentLength(final double length) { + this.handle.setFirstSegmentLength(length); + } + + /** + * Removes the point at the beginning of the rope + */ + public void removeFirstPoint() { + this.points.removeFirst(); + + if (this.isActive()) { + this.handle.removeFirstPoint(); + } + + if (this.startAttachmentLocation != null) { + this.setAttachment(RopeHandle.AttachmentPoint.START, this.startAttachmentLocation, this.startAttachmentSubLevel); + } + } + + /** + * Adds a point to the beginning of the rope + */ + public void addPoint(final Vector3dc position) { + this.points.addFirst(new Vector3d(position)); + + if (this.isActive()) { + this.handle.addPoint(position); + } + + if (this.startAttachmentLocation != null) { + this.setAttachment(RopeHandle.AttachmentPoint.START, this.startAttachmentLocation, this.startAttachmentSubLevel); + } + } + + /** + * Sets an attachment + */ + public void setAttachment(final RopeHandle.AttachmentPoint attachmentPoint, final Vector3dc location, final ServerSubLevel subLevel) { + if (attachmentPoint == RopeHandle.AttachmentPoint.START) { + this.startAttachmentSubLevel = subLevel; + this.startAttachmentLocation = new Vector3d(location); + } + + if (this.isActive()) { + this.handle.setAttachment(attachmentPoint, location, subLevel); + } + } + + /** + * Called upon the physics object entering unloaded chnks + */ + @Override + public void onUnloaded(final SubLevelHoldingChunkMap holdingChunkMap, final ChunkPos chunkPos) { + this.remove(); + } + + /** + * Called upon the physics object being removed from the system through means other than unloading + */ + @Override + public void onRemoved() { + this.remove(); + } + + protected void remove() { + this.active = false; + this.handle.remove(); + this.handle = null; + } + + /** + * Called upon the physics object being added to the world + */ + @Override + public void onAddition(final SubLevelPhysicsSystem physicsSystem) { + this.active = true; + this.handle = physicsSystem.getPipeline().addRope(this); + } + + /** + * Called to wake up the physics object when nearby blocks were modified + */ + @Override + public void wakeUp() { + if (this.isActive()) { + this.handle.wakeUp(); + } + } + + public boolean isActive() { + return this.active; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.java b/common/src/main/java/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.java new file mode 100644 index 0000000..0881a1e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.java @@ -0,0 +1,95 @@ +package dev.ryanhcode.sable.api.schematic; + +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.sublevel.SubLevel; +import io.netty.util.concurrent.FastThreadLocal; +import it.unimi.dsi.fastutil.Function; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import net.minecraft.core.BlockPos; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +import java.util.Map; +import java.util.UUID; + +/** + * A global context for sub-levels being serialized/unserialized to/from schematics. + * Block-entities and pieces of content that rely on sub-level dependencies are encouraged + * to serialize differently using this context when being saved to schematics. + */ +public class SubLevelSchematicSerializationContext { + private static final FastThreadLocal THREAD_LOCAL = new FastThreadLocal<>(); + private final Map mappings = new Object2ObjectOpenHashMap<>(); + private Function placeTransform; + private Function setupTransform; + private final Type type; + private final BoundingBox3i boundingBox; + + public SubLevelSchematicSerializationContext(final Type type, final BoundingBox3i boundingBox) { + this.type = type; + this.boundingBox = boundingBox; + } + + public Type getType() { + return this.type; + } + + public BoundingBox3i getBoundingBox() { + return this.boundingBox; + } + + public static SubLevelSchematicSerializationContext getCurrentContext() { + return THREAD_LOCAL.get(); + } + + @ApiStatus.Internal + public static void setCurrentContext(@Nullable final SubLevelSchematicSerializationContext context) { + THREAD_LOCAL.set(context); + } + + public Function getPlaceTransform() { + return this.placeTransform; + } + + public Function getSetupTransform() { + return this.setupTransform; + } + + @ApiStatus.Internal + public void setPlaceTransform(final Function transform) { + this.placeTransform = transform; + } + + + @ApiStatus.Internal + public void setSetupTransform(final Function transform) { + this.setupTransform = transform; + } + + @Nullable + public SchematicMapping getMapping(final SubLevel subLevel) { + return this.mappings.get(subLevel.getUniqueId()); + } + + @Nullable + public SchematicMapping getMapping(final UUID uuid) { + return this.mappings.get(uuid); + } + + @ApiStatus.Internal + public Map getMappings() { + return this.mappings; + } + + public record SchematicMapping(Vector3dc newCorner, Quaterniondc newOrientation, UUID newUUID, + Function transform) { + } + + public enum Type { + PLACE, + SAVE + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.java new file mode 100644 index 0000000..75d2bdd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.java @@ -0,0 +1,107 @@ +package dev.ryanhcode.sable.api.sublevel; + + +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.network.client.ClientSableInterpolationState; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; + +import java.util.BitSet; +import java.util.List; +import java.util.UUID; +import java.util.function.Consumer; + +/** + * Holds all sub-levels and plots in a {@link ClientLevel} + */ +public class ClientSubLevelContainer extends SubLevelContainer { + private final ClientSableInterpolationState interpolation = new ClientSableInterpolationState(); + + /** + * Temp lighting scene IDs for flywheel + */ + private final BitSet lightingSceneIds; + + /** + * Creates a new sub-level container with the given side length and plot size. + * + * @param level the level of the plotgrid + * @param logSideLength the log_2 of the amount of chunks in the side of the plotgrid + * @param logPlotSize the log_2 of the amount of chunks in the side of a plot + * @param originX the X coordinate in plots of the origin of the plotgrid + * @param originZ the Z coordinate in plots of the origin of the plotgrid + */ + public ClientSubLevelContainer(final Level level, final int logSideLength, final int logPlotSize, final int originX, final int originZ) { + super(level, logSideLength, logPlotSize, originX, originZ); + this.lightingSceneIds = new BitSet(this.subLevels.length); + } + + @Override + protected SubLevel createSubLevel(final int globalPlotX, final int globalPlotZ, final Pose3d pose, final UUID uuid) { + final ClientSubLevel subLevel = new ClientSubLevel(this.getLevel(), globalPlotX, globalPlotZ, pose); + subLevel.setUniqueId(uuid); + return subLevel; + } + + /** + * Called every tick for the plotgrid. + */ + @Override + public void tick() { + this.interpolation.tick(); + super.tick(); + } + + @ApiStatus.Internal + public void addDebugInfo(final Consumer consumer) { + consumer.accept("Sub-Levels: " + this.getAllSubLevels().size()); + this.interpolation.addDebugInfo(consumer); + } + + @SuppressWarnings("unchecked") + @Override + public List getAllSubLevels() { + return (List) super.getAllSubLevels(); + } + + /** + * @return the level of the plotgrid. + */ + @Override + public ClientLevel getLevel() { + return (ClientLevel) super.getLevel(); + } + + public ClientSableInterpolationState getInterpolation() { + return this.interpolation; + } + + /** + * Gets the lighting scene ID for a sub-level. + */ + public int getLightingSceneId(final ClientSubLevel subLevel) { + synchronized (this.lightingSceneIds) { + if (subLevel.getLightingSceneId() >= 0) { + return subLevel.getLightingSceneId(); + } + + for (int i = 0; i < this.lightingSceneIds.size(); i++) { + if (!this.lightingSceneIds.get(i)) { + this.lightingSceneIds.set(i); + subLevel.setLightingSceneId(i + 1); + return subLevel.getLightingSceneId(); + } + } + + throw new IllegalStateException("Out of lighting scene ids, uh oh!"); + } + } + + @ApiStatus.Internal + public void freeLightingScene(final int lightingSceneId) { + this.lightingSceneIds.clear(lightingSceneId - 1); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/KinematicContraption.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/KinematicContraption.java new file mode 100644 index 0000000..a589cc4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/KinematicContraption.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.api.sublevel; + +import dev.ryanhcode.sable.api.block.BlockSubLevelLiftProvider; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.physics.floating_block.FloatingClusterContainer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import org.joml.Quaterniond; +import org.joml.Vector3dc; + +import java.util.Map; + +public interface KinematicContraption { + + void sable$getLocalBounds(final BoundingBox3i bounds); + BlockGetter sable$blockGetter(); + MassTracker sable$getMassTracker(); + Vector3dc sable$getPosition(double partialTick); + Quaterniond sable$getOrientation(double partialTick); + Map sable$liftProviders(); + FloatingClusterContainer sable$getFloatingClusterContainer(); + + boolean sable$shouldCollide(); + + boolean sable$isValid(); + + default Vector3dc sable$getPosition() { + return this.sable$getPosition(1.0f); + } + + default Quaterniond sable$getOrientation() { + return this.sable$getOrientation(1.0f); + } + + default Pose3d sable$getLocalPose(final Pose3d dest, final double partialTick) { + dest.rotationPoint().set(this.sable$getMassTracker().getCenterOfMass()); + dest.position().set(this.sable$getPosition(partialTick)); + dest.orientation().set(this.sable$getOrientation(partialTick)); + dest.scale().set(JOMLConversion.ONE); + return dest; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.java new file mode 100644 index 0000000..aa42be0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.java @@ -0,0 +1,183 @@ +package dev.ryanhcode.sable.api.sublevel; + + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelOccupancySavedData; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.sublevel.system.SubLevelTrackingSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.biome.Biome; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.List; +import java.util.Optional; +import java.util.UUID; + +/** + * Holds all sub-levels and plots in a {@link ServerLevel} + */ +public class ServerSubLevelContainer extends SubLevelContainer { + + /** + * The physics system in this container + */ + private @Nullable SubLevelPhysicsSystem physics; + + /** + * The tracking system in this container + */ + private @Nullable SubLevelTrackingSystem tracking; + + /** + * The holding chunk map for this sub-level container. + */ + private SubLevelHoldingChunkMap holdingChunkMap; + + /** + * Creates a new sub-level container with the given side length and plot size. + * + * @param level the level of the plotgrid + * @param logSideLength the log_2 of the amount of chunks in the side of the plotgrid + * @param logPlotSize the log_2 of the amount of chunks in the side of a plot + * @param originX the X coordinate in plots of the origin of the plotgrid + * @param originZ the Z coordinate in plots of the origin of the plotgrid + */ + public ServerSubLevelContainer(final Level level, final int logSideLength, final int logPlotSize, final int originX, final int originZ) { + super(level, logSideLength, logPlotSize, originX, originZ); + } + + /** + * Initialize after method construction is done + */ + public void initialize() { + this.holdingChunkMap = new SubLevelHoldingChunkMap(this.getLevel(), this); + this.holdingChunkMap.bootstrapAllHoldingChunks(); + } + + /** + * Called every tick for the plotgrid. + */ + @Override + public void tick() { + super.tick(); + this.holdingChunkMap.processChanges(); + } + + /** + * Sets the internal physics system. + */ + @ApiStatus.Internal + public void takePhysicsSystem(final SubLevelPhysicsSystem physics) { + this.physics = physics; + } + + /** + * Sets the internal tracking system. + */ + @ApiStatus.Internal + public void takeTrackingSystem(final SubLevelTrackingSystem tracking) { + this.tracking = tracking; + } + + /** + * @return the physics pipeline in this container + */ + public @NotNull SubLevelPhysicsSystem physicsSystem() { + assert this.physics != null; + return this.physics; + } + + /** + * @return the physics pipeline in this container + */ + public @NotNull SubLevelTrackingSystem trackingSystem() { + assert this.tracking != null; + return this.tracking; + } + + /** + * Removes a sub-level with a local plot coordinate + */ + @Override + public void removeSubLevel(final int x, final int z, final SubLevelRemovalReason reason) { + final ServerSubLevel subLevel = (ServerSubLevel) this.getSubLevel(x, z); + if (subLevel == null) { + throw new IllegalStateException("No sub-level at " + x + ", " + z); + } + + if (reason == SubLevelRemovalReason.REMOVED) { + subLevel.deleteAllEntities(); + } + + super.removeSubLevel(x, z, reason); + + if (reason == SubLevelRemovalReason.REMOVED) { + final ServerLevel level = this.getLevel(); + SubLevelOccupancySavedData.getOrLoad(level).setDirty(); + this.holdingChunkMap.queueDeletion(subLevel); + } + } + + @Override + protected SubLevel createSubLevel(final int globalPlotX, final int globalPlotZ, final Pose3d pose, final UUID uuid) { + final ServerLevel level = this.getLevel(); + final ServerSubLevel subLevel = new ServerSubLevel(level, globalPlotX, globalPlotZ, pose); + subLevel.setUniqueId(uuid); + + final Vector3d position = pose.position(); + final BlockPos blockPos = BlockPos.containing(position.x, position.y, position.z); + + if (level.isLoaded(blockPos)) { + final Holder holder = level.getBiome(blockPos); + final Optional> key = holder.unwrapKey(); + + //noinspection OptionalIsPresent + if (key.isPresent()) { + subLevel.getPlot().setBiome(key.get()); + } + } + + return subLevel; + } + + public SubLevelHoldingChunkMap getHoldingChunkMap() { + return this.holdingChunkMap; + } + + @SuppressWarnings("unchecked") + @Override + public List getAllSubLevels() { + return (List) super.getAllSubLevels(); + } + + /** + * @return the level of the plotgrid. + */ + @Override + public ServerLevel getLevel() { + return (ServerLevel) super.getLevel(); + } + + /** + * Frees all native resources + */ + public void close() { + try { + this.holdingChunkMap.close(); + } catch (final Exception e) { + Sable.LOGGER.error("Failed closing sub-level holding chunk map", e); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.java new file mode 100644 index 0000000..0e17ffd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.java @@ -0,0 +1,531 @@ +package dev.ryanhcode.sable.api.sublevel; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import dev.ryanhcode.sable.sublevel.storage.SubLevelOccupancySavedData; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.util.iterator.ListBackedFilterIterator; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.chunk.LevelChunk; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector2i; + +import java.util.*; + +/** + * Holds all sub-levels and plots in a {@link Level} + */ +public abstract class SubLevelContainer { + + public static int DEFAULT_LOG_SIZE_LENGTH = 7; + public static int DEFAULT_LOG_PLOT_SIZE = 7; + + /** + * The origin of the plotyard in plots. + * We want the plotyard to be over 30 million blocks out. + */ + public static final int DEFAULT_ORIGIN = 10000;//Mth.ceil(30_000_000.0 / (1 << DEFAULT_LOG_PLOT_SIZE)); + /** + * The plotgrid storage for all loaded sub-levels + */ + protected final SubLevel[] subLevels; + /** + * All of the loaded sub-levels in the plotgrid + */ + private final List allSubLevels = new ObjectArrayList<>(); + /** + * All of the loaded sub-levels in the plotgrid, by uuid + */ + private final Map subLevelsByUUID = new HashMap<>(); + /** + * The occupancy of the plotgrid, including loaded and unloaded plots + */ + private final BitSet occupancy; + /** + * All observers/listeners for the plotgrid + */ + private final List observers = new ObjectArrayList<>(); + + /** + * The level of the plotgrid + */ + private final Level level; + /** + * The log_2 of the side length of the plotgrid in plots + */ + private final int logSideLength; + /** + * The log_2 of the amount of chunks in the side of a plot + */ + private final int logPlotSize; + + /** + * The X origin of the plotgrid in plot coordinates + */ + private final int originX; + /** + * The Z origin of the plotgrid in plot coordinates + */ + private final int originZ; + + /** + * @param level the level + * @return the plot container in a level + */ + public static @Nullable SubLevelContainer getContainer(final Level level) { + if (level instanceof final SubLevelContainerHolder holder) { + return holder.sable$getPlotContainer(); + } + return null; + } + + /** + * @param level the level + * @return the plot container in a level + */ + public static @Nullable ServerSubLevelContainer getContainer(final ServerLevel level) { + if (level instanceof final SubLevelContainerHolder holder) { + return (ServerSubLevelContainer) holder.sable$getPlotContainer(); + } + return null; + } + + /** + * @param level the level + * @return the plot container in a level + */ + public static @Nullable ClientSubLevelContainer getContainer(final ClientLevel level) { + if (level instanceof final SubLevelContainerHolder holder) { + return (ClientSubLevelContainer) holder.sable$getPlotContainer(); + } + return null; + } + + /** + * Creates a new sub-level container with the given side length and plot size. + * + * @param level the level of the plotgrid + * @param logSideLength the log_2 of the amount of chunks in the side of the plotgrid + * @param logPlotSize the log_2 of the amount of chunks in the side of a plot + * @param originX the X coordinate in plots of the origin of the plotgrid + * @param originZ the Z coordinate in plots of the origin of the plotgrid + */ + public SubLevelContainer(final Level level, final int logSideLength, final int logPlotSize, final int originX, final int originZ) { + this.level = level; + this.logSideLength = logSideLength; + this.logPlotSize = logPlotSize; + this.originX = originX; + this.originZ = originZ; + this.subLevels = new SubLevel[(1 << logSideLength) * (1 << logSideLength)]; + this.occupancy = new BitSet(this.subLevels.length); + } + + /** + * Called every tick for the plotgrid. + */ + public void tick() { + this.allSubLevels.forEach(SubLevel::tick); + this.processSubLevelRemovals(); + + this.observers.forEach(observer -> observer.tick(this)); + } + + /** + * Processes & follows through on queued sub-level removals + */ + public void processSubLevelRemovals() { + for (final SubLevel subLevel : this.allSubLevels) { + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + if (!serverSubLevel.isRemoved() && serverSubLevel.getMassTracker().isInvalid()) { + serverSubLevel.getPlot().destroyAllBlocks(); + serverSubLevel.markRemoved(); + } + } + + if (subLevel.isRemoved()) { + final LevelPlot plot = subLevel.getPlot(); + final ChunkPos plotPos = plot.plotPos; + this.removeSubLevel(plotPos.x - this.originX, plotPos.z - this.originZ, SubLevelRemovalReason.REMOVED); + } + } + } + + /** + * Adds an observer to the plotgrid. + */ + public void addObserver(final SubLevelObserver observer) { + this.observers.add(observer); + } + + /** + * @return the first empty plot coordinate in the grid, using occupancy data + */ + private Vector2i getFirstEmptyPlot() { + for (int x = 0; x < (1 << this.logSideLength); x++) { + for (int z = 0; z < (1 << this.logSideLength); z++) { + if (!this.occupancy.get(this.getIndex(x, z))) { + return new Vector2i(x, z); + } + } + } + return null; + } + + /** + * @return the index of the plot at the given plot coordinates. + */ + @ApiStatus.Internal + public int getIndex(final int x, final int z) { + return x + (z << this.logSideLength); + } + + /** + * @return the plot at the given local plot coordinates. + */ + private @Nullable LevelPlot getLocalPlot(final int x, final int z) { + if (x < 0 || x >= (1 << this.logSideLength) || z < 0 || z >= (1 << this.logSideLength)) { + return null; // out of bounds + } + + final SubLevel subLevel = this.subLevels[this.getIndex(x, z)]; + + if (subLevel == null) { + return null; + } + + return subLevel.getPlot(); + } + + /** + * @return the sub-level at the given local plot coordinates. + */ + public @Nullable SubLevel getSubLevel(final int x, final int z) { + if (x < 0 || x >= (1 << this.logSideLength) || z < 0 || z >= (1 << this.logSideLength)) { + return null; // out of bounds + } + + return this.subLevels[this.getIndex(x, z)]; + } + + /** + * Allocates a new plot at the given local plot coordinates. + * + * @return the allocated plot + */ + public SubLevel allocateNewSubLevel(final Pose3d pose) { + final Vector2i firstEmptyPlot = this.getFirstEmptyPlot(); + + if (firstEmptyPlot == null) { + throw new IllegalStateException("No empty plots left in the plotgrid"); + } + + return this.allocateSubLevel(UUID.randomUUID(), firstEmptyPlot.x, firstEmptyPlot.y, pose); + } + + /** + * Allocates a new plot at the given local plot coordinates. + * + * @return the allocated plot + */ + public SubLevel allocateSubLevel(final UUID uuid, final int x, final int z, final Pose3d pose) { + if (this.getLocalPlot(x, z) != null) { + throw new IllegalArgumentException("Plot already exists at " + x + ", " + z); + } + + if (x < 0 || x >= (1 << this.logSideLength) || z < 0 || z >= (1 << this.logSideLength)) { + throw new IllegalArgumentException("Plot coordinates out of bounds: " + x + ", " + z); + } + + final SubLevel subLevel; + + // Create a new sub-level based on the level type + subLevel = this.createSubLevel(x + this.originX, z + this.originZ, pose, uuid); + + final int index = this.getIndex(x, z); + this.subLevels[index] = subLevel; + this.getOccupancy().set(index); + this.allSubLevels.add(subLevel); + this.subLevelsByUUID.put(subLevel.getUniqueId(), subLevel); + this.observers.forEach(observer -> observer.onSubLevelAdded(subLevel)); + + if (this.level instanceof final ServerLevel serverLevel) { + SubLevelOccupancySavedData.getOrLoad(serverLevel).setDirty(); + } + + return subLevel; + } + + /** + * Creates a new sub-level with the given global plot coordinates and pose. + * + * @param globalPlotX the global plot X coordinate + * @param globalPlotZ the global plot Z coordinate + * @param pose the initialization pose of the sub-level + * @param uuid the unique ID of the sub-level + * @return a new {@link SubLevel} instance + */ + protected abstract SubLevel createSubLevel(int globalPlotX, int globalPlotZ, Pose3d pose, UUID uuid); + + /** + * Gets a chunk from the plotgrid. + * + * @param pos the global chunk position + */ + public @Nullable LevelChunk getChunk(final ChunkPos pos) { + if (!this.inBounds(pos)) { + return null; + } + + final LevelPlot plot = this.getPlot(pos); + if (plot == null) { + return null; + } + + final ChunkPos local = plot.toLocal(pos); + return plot.getChunk(local); + } + + /** + * Gets a chunk holder from the plotgrid. + * + * @param pos the global chunk position + */ + public @Nullable PlotChunkHolder getChunkHolder(final ChunkPos pos) { + if (!this.inBounds(pos)) { + return null; + } + + final LevelPlot plot = this.getPlot(pos); + if (plot == null) { + return null; + } + + final ChunkPos local = plot.toLocal(pos); + return plot.getChunkHolder(local); + } + + /** + * Gets the plot at the given global chunk position. + * + * @param chunkX the global chunk X position + * @param chunkZ the global chunk Z position + */ + public @Nullable LevelPlot getPlot(final int chunkX, final int chunkZ) { + final int plotX = (chunkX >> this.logPlotSize) - this.originX; + final int plotZ = (chunkZ >> this.logPlotSize) - this.originZ; + + return this.getLocalPlot(plotX, plotZ); + } + + /** + * Gets the plot at the given global chunk position. + * + * @param pos the global chunk position + */ + public @Nullable LevelPlot getPlot(final ChunkPos pos) { + final int plotX = (pos.x >> this.logPlotSize) - this.originX; + final int plotZ = (pos.z >> this.logPlotSize) - this.originZ; + + return this.getLocalPlot(plotX, plotZ); + } + + /** + * @return if a global chunk position is within the plotgrid. + */ + public boolean inBounds(final ChunkPos pos) { + return this.inBounds(pos.x, pos.z); + } + + /** + * @return if a global block position is within the plotgrid. + */ + public boolean inBounds(final BlockPos pos) { + return this.inBounds(pos.getX() >> SectionPos.SECTION_BITS, pos.getZ() >> SectionPos.SECTION_BITS); + } + + /** + * @return if a global chunk position is within the plotgrid. + */ + public boolean inBounds(final int x, final int z) { + final int plotX = (x >> this.logPlotSize) - this.originX; + final int plotZ = (z >> this.logPlotSize) - this.originZ; + + final int sideLength = 1 << this.logSideLength; + return (plotX >= 0 && plotX < sideLength && plotZ >= 0 && plotZ < sideLength); + } + + /** + * Adds a populated chunk in the plotgrid at the given global chunk position. + * + * @param pos the global chunk position + */ + public void newPopulatedChunk(final ChunkPos pos, final LevelChunk chunk) { + if (!this.inBounds(pos)) { + return; + } + + final int plotX = (pos.x >> this.logPlotSize) - this.originX; + final int plotZ = (pos.z >> this.logPlotSize) - this.originZ; + + final LevelPlot plot = this.getLocalPlot(plotX, plotZ); + + if (plot == null) { + Sable.LOGGER.error("Cannot add chunk at {}, {} in nonexistent sub-level plot", plotX, plotZ); + return; + } + + final ChunkPos local = plot.toLocal(pos); + + if (plot.getChunkHolder(local) != null) { + throw new IllegalStateException("Chunk already exists at " + pos); + } + + final PlotChunkHolder holder = PlotChunkHolder.create(chunk.getLevel(), pos, plot.getLightEngine(), chunk); + + plot.addChunkHolder(local, holder, false); + } + + /** + * Gets the players tracking a plot chunk. + * + * @return the players tracking the chunk + */ + public List getPlayersTracking(final ChunkPos chunkPos) { + final LevelPlot plot = this.getPlot(chunkPos); + if (plot == null) { + return List.of(); + } + + final SubLevel subLevel = plot.getSubLevel(); + + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + final Collection trackingPlayers = serverSubLevel.getTrackingPlayers(); + final ObjectList players = new ObjectArrayList<>(trackingPlayers.size()); + + for (final UUID uuid : serverSubLevel.getTrackingPlayers()) { + final ServerPlayer player = this.level.getServer().getPlayerList().getPlayer(uuid); + + if (player != null) { + players.add(player); + } + } + + return players; + } + + return List.of(); + } + + /** + * @return all of the plots in the plotgrid. + */ + public List getAllSubLevels() { + return this.allSubLevels; + } + + /** + * @return the level of the plotgrid. + */ + public Level getLevel() { + return this.level; + } + + /** + * @return the log_2 of the side length of a plot + */ + public int getLogPlotSize() { + return this.logPlotSize; + } + + /** + * @return the log_2 of the side length of the plotgrid + */ + public int getLogSideLength() { + return this.logSideLength; + } + + /** + * @return the origin of the plotgrid in plot coordinates + */ + public Vector2i getOrigin() { + return new Vector2i(this.originX, this.originZ); + } + + + /** + * Removes a sub-level with a local plot coordinate + */ + public void removeSubLevel(final int x, final int z, final SubLevelRemovalReason reason) { + final SubLevel subLevel = this.getSubLevel(x, z); + if (subLevel == null) { + throw new IllegalStateException("No sub-level at " + x + ", " + z); + } + + this.observers.forEach(observer -> observer.onSubLevelRemoved(subLevel, reason)); + subLevel.onRemove(); + + final int index = this.getIndex(x, z); + this.subLevels[index] = null; + this.allSubLevels.remove(subLevel); + this.subLevelsByUUID.remove(subLevel.getUniqueId()); + + if (reason == SubLevelRemovalReason.REMOVED) { + this.getOccupancy().clear(index); + } + } + + /** + * @return the count of loaded sub-levels + */ + public int getLoadedCount() { + return this.allSubLevels.size(); + } + + public Iterable queryIntersecting(final BoundingBox3dc bounds) { + return () -> new ListBackedFilterIterator<>((subLevel) -> subLevel.boundingBox().intersects(bounds), this.allSubLevels); + } + + /** + * Removes a sub-level from the plotgrid. + * + * @param subLevel the sub-level to remove + * @param reason the reason for removal + */ + public void removeSubLevel(final SubLevel subLevel, final SubLevelRemovalReason reason) { + final int x = subLevel.getPlot().plotPos.x - this.originX; + final int z = subLevel.getPlot().plotPos.z - this.originZ; + this.removeSubLevel(x, z, reason); + } + + /** + * Retrieves a particular sub-level by its UUID. + * + * @param uuid the UUID of the sub-level + */ + public @Nullable SubLevel getSubLevel(final UUID uuid) { + return this.subLevelsByUUID.get(uuid); + } + + /** + * The occupancy of the plotgrid, including loaded and unloaded plots + */ + @ApiStatus.Internal + public BitSet getOccupancy() { + return this.occupancy; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.java new file mode 100644 index 0000000..59ac039 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.api.sublevel; + +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; + +/** + * Observes additions, removals, and ticking of sub-levels. + */ +public interface SubLevelObserver { + + /** + * Called after a sub-level is added to a {@link SubLevelContainer}. + * + * @param subLevel the sub-level that was added + */ + default void onSubLevelAdded(final SubLevel subLevel) { + } + + /** + * Called before a sub-level is removed from a {@link SubLevelContainer}. + * + * @param subLevel the sub-level that will be removed + */ + default void onSubLevelRemoved(final SubLevel subLevel, final SubLevelRemovalReason reason) { + } + + /** + * Called every tick for each {@link SubLevelContainer}. + * + * @param subLevels the sub-level container that is ticking + */ + default void tick(final SubLevelContainer subLevels) { + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.java b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.java new file mode 100644 index 0000000..6ad27a2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.api.sublevel; + +import java.util.UUID; + +/** + * Other mods or projects (looking at you, Simulated!) may want to piggyback off of the snapshot interpolation + * system so that their content can also abide by it and benefit from its improvements. As such, we expose + * "tracking" plugins for these projects to give us players that need to be informed about the interpolation tick + * at any given moment. + */ +public interface SubLevelTrackingPlugin { + + /** + * Players that need to be informed about the interpolation ticks from the server & + * the distances between them, and who should be actively running interpolation. + */ + Iterable neededPlayers(); + + /** + * Called when sub-level tracking data is sent + */ + void sendTrackingData(int interpolationTick); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableAssembleCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableAssembleCommands.java new file mode 100644 index 0000000..e9fb31e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableAssembleCommands.java @@ -0,0 +1,395 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.arguments.IntegerArgumentType; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.api.SubLevelAssemblyHelper; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.arguments.coordinates.BlockPosArgument; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.levelgen.structure.BoundingBox; + +import java.util.*; +import java.util.stream.IntStream; + +public class SableAssembleCommands { + + public static final int DEFAULT_CONNECTED_ASSEMBLY_CAPACITY = 256_000; + + /** + * Adds the following commands: + *
    + *
  • {@code /sable assemble area }
  • + *
  • {@code /sable assemble connected [] []}
  • + *
  • {@code /sable assemble sphere []}
  • + *
  • {@code /sable assemble cube []}
  • + *
  • {@code /sable shatter sub_level }
  • + *
  • {@code /sable shatter connected [] []}
  • + *
  • {@code /sable shatter sphere []}
  • + *
  • {@code /sable shatter cube []}
  • + *
  • {@code /sable shatter area }
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + sableBuilder + .then(Commands.literal("assemble") + .then(Commands.literal("shatter") + .then(Commands.literal("sub_level") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + .executes(SableAssembleCommands::executeShatterSubLevelCommand))) + .then(Commands.literal("connected") + .executes((ctx) -> + SableAssembleCommands.executeShatterConnected(ctx, BlockPos.containing(ctx.getSource().getPosition().subtract(0, 1, 0)), DEFAULT_CONNECTED_ASSEMBLY_CAPACITY)) + .then(Commands.argument("from", BlockPosArgument.blockPos()) + .executes((ctx) -> + SableAssembleCommands.executeShatterConnected(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "from"), DEFAULT_CONNECTED_ASSEMBLY_CAPACITY)) + .then(Commands.argument("capacity", IntegerArgumentType.integer(1, DEFAULT_CONNECTED_ASSEMBLY_CAPACITY * 100)) + .executes((ctx) -> + SableAssembleCommands.executeShatterConnected(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "from"), IntegerArgumentType.getInteger(ctx, "capacity")))))) + .then(Commands.literal("sphere") + .then(Commands.argument("radius", IntegerArgumentType.integer(0, 128)) + .executes((ctx) -> SableAssembleCommands.executeShatterSphereCommand(ctx, BlockPos.containing(ctx.getSource().getPosition()))) + .then(Commands.argument("origin", BlockPosArgument.blockPos()) + .executes((ctx) -> SableAssembleCommands.executeShatterSphereCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "origin")))))) + .then(Commands.literal("cube") + .then(Commands.argument("range", IntegerArgumentType.integer(0, 128)) + .executes((ctx) -> SableAssembleCommands.executeShatterCubeCommand(ctx, BlockPos.containing(ctx.getSource().getPosition()))) + .then(Commands.argument("origin", BlockPosArgument.blockPos()) + .executes((ctx) -> SableAssembleCommands.executeShatterCubeCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "origin")))))) + .then(Commands.literal("area") + .then(Commands.argument("from", BlockPosArgument.blockPos()) + .then(Commands.argument("to", BlockPosArgument.blockPos()) + .executes(SableAssembleCommands::executeShatterAreaCommand))))) + + .then(Commands.literal("area") + .then(Commands.argument("from", BlockPosArgument.blockPos()) + .then(Commands.argument("to", BlockPosArgument.blockPos()) + .executes(SableAssembleCommands::executeAssembleAreaCommand)))) + + .then(Commands.literal("connected") + .executes((ctx) -> + SableAssembleCommands.executeAssembleConnectedCommand(ctx, BlockPos.containing(ctx.getSource().getPosition().subtract(0, 1, 0)), DEFAULT_CONNECTED_ASSEMBLY_CAPACITY)) + .then(Commands.argument("from", BlockPosArgument.blockPos()) + .executes((ctx) -> + SableAssembleCommands.executeAssembleConnectedCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "from"), DEFAULT_CONNECTED_ASSEMBLY_CAPACITY)) + .then(Commands.argument("capacity", IntegerArgumentType.integer(1, DEFAULT_CONNECTED_ASSEMBLY_CAPACITY * 100)) + .executes((ctx) -> + SableAssembleCommands.executeAssembleConnectedCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "from"), IntegerArgumentType.getInteger(ctx, "capacity")))))) + + .then(Commands.literal("sphere") + .then(Commands.argument("radius", IntegerArgumentType.integer(0, 256)) + .executes(ctx -> SableAssembleCommands.executeAssembleSphereCommand(ctx, BlockPos.containing(ctx.getSource().getPosition()))) + .then(Commands.argument("origin", BlockPosArgument.blockPos()) + .executes(ctx -> SableAssembleCommands.executeAssembleSphereCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "origin")))))) + + .then(Commands.literal("cube") + .then(Commands.argument("range", IntegerArgumentType.integer(0, 256)) + .executes(ctx -> SableAssembleCommands.executeAssembleCubeCommand(ctx, BlockPos.containing(ctx.getSource().getPosition()))) + .then(Commands.argument("origin", BlockPosArgument.blockPos()) + .executes(ctx -> SableAssembleCommands.executeAssembleCubeCommand(ctx, BlockPosArgument.getLoadedBlockPos(ctx, "origin"))))))); + } + + private static int executeShatterConnected(final CommandContext ctx, final BlockPos assemblyOrigin, final int assemblyCapacity) throws CommandSyntaxException { + final ServerLevel level = ctx.getSource().getLevel(); + + final SubLevelAssemblyHelper.GatherResult result = SubLevelAssemblyHelper.gatherConnectedBlocks(assemblyOrigin, level, assemblyCapacity, null); + if (result.assemblyState() != SubLevelAssemblyHelper.GatherResult.State.SUCCESS) { + ctx.getSource().sendFailure(Component.translatable(switch (result.assemblyState()) { + case TOO_MANY_BLOCKS -> "commands.sable.sub_level.shatter.connected.too_many_blocks"; + case NO_BLOCKS -> "commands.sable.sub_level.shatter.no_blocks"; + default -> throw new IllegalStateException("Unexpected value: " + result.assemblyState()); + }, result.assemblyState() == SubLevelAssemblyHelper.GatherResult.State.TOO_MANY_BLOCKS ? assemblyCapacity : 0)); + return 0; + } + + final int blocksShattered = shatterBlocks(result.blocks(), level); + if (blocksShattered == 0) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.shatter.no_blocks")); + return 0; + } + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.connected.success", blocksShattered), true); + return blocksShattered; + } + + private static int executeShatterSubLevelCommand(final CommandContext ctx) throws CommandSyntaxException { + final ServerLevel level = ctx.getSource().getLevel(); + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, + "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final IntStream shatteredAmounts = subLevels + .stream() + .filter(subLevel -> { //Filter out single block sub-levels + int solidBlockCount = 0; + for (final Iterator it = BlockPos.betweenClosedStream(subLevel.getPlot().getBoundingBox().toMojang()).iterator(); it.hasNext(); ) { + final BlockPos pos = it.next(); + if (VoxelNeighborhoodState.isSolid(level, pos, level.getBlockState(pos))) { + solidBlockCount++; + if (solidBlockCount > 1) { + return true; + } + } + } + return false; + }) + .map(subLevel -> subLevel.getPlot().getBoundingBox()) + .mapToInt(bounds -> shatterBoundingBox(bounds, level)); + + int blocksShattered = 0; + int sublevelsShattered = 0; + + for (final PrimitiveIterator.OfInt it = shatteredAmounts.iterator(); it.hasNext(); ) { + final int i = it.next(); + blocksShattered += i; + sublevelsShattered ++; + } + + if (sublevelsShattered == 0) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.shatter.sub_level.only_single_block")); + return 0; + } + + final int finalSublevelsShattered = sublevelsShattered; + final int finalBlocksShattered = blocksShattered; + if (sublevelsShattered == 1) { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.sub_level.success", Component.translatable("commands.sable.sub_level"), finalBlocksShattered), true); + } else { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.sub_level.success", Component.translatable("commands.sable.sub_levels", finalSublevelsShattered), finalBlocksShattered), true); + } + return blocksShattered; + } + + private static int executeShatterAreaCommand(final CommandContext ctx) throws CommandSyntaxException { + final ServerLevel level = ctx.getSource().getLevel(); + final BoundingBox3i boundingBox = new BoundingBox3i(BlockPosArgument.getLoadedBlockPos(ctx, "from"), BlockPosArgument.getLoadedBlockPos(ctx, "to")); + + final int blocksShattered = shatterBoundingBox(boundingBox, level); + if (blocksShattered == 0) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.shatter.no_blocks")); + return 0; + } + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.region.success", blocksShattered), true); + return blocksShattered; + } + + private static int executeShatterSphereCommand(final CommandContext ctx, final BlockPos origin) { + final ServerLevel level = ctx.getSource().getLevel(); + final int radius = IntegerArgumentType.getInteger(ctx, "radius"); + final BoundingBox boundingBox = BoundingBox.fromCorners( + origin.offset(-radius, -radius, -radius), + origin.offset(radius, radius, radius) + ); + + final int radiusSquared = radius * radius; + + final List blocks = BlockPos.betweenClosedStream(boundingBox).map(BlockPos::immutable).toList(); + final List blocksInRadius = new ArrayList<>(); + for (final BlockPos blockPos : blocks) { + if (origin.distSqr(blockPos) > radiusSquared) { + continue; + } + blocksInRadius.add(blockPos); + } + final int blocksShattered = shatterBlocks(blocksInRadius, level); + if (blocksShattered == 0) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.shatter.no_blocks")); + return 0; + } + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.radius.success", blocksShattered), true); + return blocksShattered; + } + + private static int executeShatterCubeCommand(final CommandContext ctx, final BlockPos origin) { + final ServerLevel level = ctx.getSource().getLevel(); + final int radius = IntegerArgumentType.getInteger(ctx, "range"); + final BoundingBox3i boundingBox = new BoundingBox3i( + origin.offset(-radius, -radius, -radius), + origin.offset(radius, radius, radius) + ); + + final int blocksShattered = shatterBoundingBox(boundingBox, level); + if (blocksShattered == 0) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.shatter.no_blocks")); + return 0; + } + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.shatter.range.success", blocksShattered), true); + return blocksShattered; + } + + private static int shatterBoundingBox(final BoundingBox3ic boundingBox, final ServerLevel level) { + return shatterBlocks(BlockPos.betweenClosedStream(boundingBox.toMojang()).map(BlockPos::immutable).toList(), level); + } + + private static int shatterBlocks(final Collection blocks, final ServerLevel level) { + //Remove fragile blocks + for (final BlockPos pos : blocks) { + if (!VoxelNeighborhoodState.isSolid(level, pos, level.getBlockState(pos))) { + level.destroyBlock(pos, true); + } + } + int shattered = 0; + for (final BlockPos anchor : blocks) { + if (shatterBlockToSubLevel(level, anchor)) { + shattered++; + } + } + return shattered; + } + + private static boolean shatterBlockToSubLevel(final ServerLevel level, final BlockPos anchor) { + if (!VoxelNeighborhoodState.isSolid(level, anchor, level.getBlockState(anchor))) { + return false; + } + + final BoundingBox3i bounds = new BoundingBox3i(anchor.getX(), anchor.getY(), anchor.getZ(), anchor.getX() + 1, anchor.getY() + 1, anchor.getZ() + 1); + bounds.set( + bounds.minX - 1, + bounds.minY - 1, + bounds.minZ - 1, + bounds.maxX + 1, + bounds.maxY + 1, + bounds.maxZ + 1 + ); + SubLevelAssemblyHelper.assembleBlocks(level, anchor, List.of(anchor), bounds); + return true; + } + + private static int executeAssembleAreaCommand(final CommandContext ctx) throws CommandSyntaxException { + final ServerLevel level = ctx.getSource().getLevel(); + final BoundingBox boundingBox = BoundingBox.fromCorners(BlockPosArgument.getLoadedBlockPos(ctx, "from"), BlockPosArgument.getLoadedBlockPos(ctx, "to")); + + final List blocks = BlockPos.betweenClosedStream(boundingBox).map(BlockPos::immutable).toList(); + final BlockPos anchor = blocks.getFirst(); + + final BoundingBox3i bounds = new BoundingBox3i(boundingBox); + bounds.set( + bounds.minX - 1, + bounds.minY - 1, + bounds.minZ - 1, + bounds.maxX + 1, + bounds.maxY + 1, + bounds.maxZ + 1 + ); + + final ServerSubLevel subLevel = SubLevelAssemblyHelper.assembleBlocks(level, anchor, blocks, bounds); + if (subLevel.getMassTracker().isInvalid()) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.assemble.no_blocks")); + return 0; + } + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.assemble.region.success", blocks.size()), true); + return 1; + } + + private static int executeAssembleCubeCommand(final CommandContext ctx, final BlockPos origin) { + final ServerLevel level = ctx.getSource().getLevel(); + final int range = IntegerArgumentType.getInteger(ctx, "range"); + final BoundingBox boundingBox = BoundingBox.fromCorners(origin.offset(-range, -range, -range), origin.offset(range, range, range)); + + final List blocks = BlockPos.betweenClosedStream(boundingBox).map(BlockPos::immutable).toList(); + final BlockPos anchor = blocks.getFirst(); + + final BoundingBox3i bounds = new BoundingBox3i(boundingBox); + bounds.set( + bounds.minX - 1, + bounds.minY - 1, + bounds.minZ - 1, + bounds.maxX + 1, + bounds.maxY + 1, + bounds.maxZ + 1 + ); + + final ServerSubLevel subLevel = SubLevelAssemblyHelper.assembleBlocks(level, anchor, blocks, bounds); + if (subLevel.getMassTracker().isInvalid()) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.assemble.no_blocks")); + return 0; + } + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.assemble.range.success", blocks.size()), true); + return 1; + } + + private static int executeAssembleConnectedCommand(final CommandContext ctx, final BlockPos assemblyOrigin, final int assemblyCapacity) throws CommandSyntaxException { + final ServerLevel level = ctx.getSource().getLevel(); + + final SubLevelAssemblyHelper.GatherResult result = SubLevelAssemblyHelper.gatherConnectedBlocks(assemblyOrigin, level, assemblyCapacity, null); + if (result.assemblyState() != SubLevelAssemblyHelper.GatherResult.State.SUCCESS) { + ctx.getSource().sendFailure(Component.translatable(result.assemblyState().errorKey, result.assemblyState() == SubLevelAssemblyHelper.GatherResult.State.TOO_MANY_BLOCKS ? assemblyCapacity : 0)); + return 0; + } + + SubLevelAssemblyHelper.assembleBlocks(level, assemblyOrigin, result.blocks(), result.boundingBox()); + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.assemble.connected.success", result.blocks().size()), true); + return 1; + } + + private static int executeAssembleSphereCommand(final CommandContext ctx, final BlockPos origin) { + final int radius = IntegerArgumentType.getInteger(ctx, "radius"); + + final ServerLevel level = ctx.getSource().getLevel(); + + final Set blocks = new HashSet<>(); + + int minX = Integer.MAX_VALUE, minY = Integer.MAX_VALUE, minZ = Integer.MAX_VALUE; + int maxX = Integer.MIN_VALUE, maxY = Integer.MIN_VALUE, maxZ = Integer.MIN_VALUE; + + final int radiusSquared = radius * radius; + + for (int x = -radius; x <= radius; x++) { + for (int y = -radius; y <= radius; y++) { + for (int z = -radius; z <= radius; z++) { + if (x * x + y * y + z * z > radiusSquared) { + continue; + } + final BlockPos pos = origin.offset(x, y, z); + + if (level.isLoaded(pos) && !level.getBlockState(pos).isAir()) { + blocks.add(pos); + + minX = Math.min(minX, pos.getX()); + minY = Math.min(minY, pos.getY()); + minZ = Math.min(minZ, pos.getZ()); + + maxX = Math.max(maxX, pos.getX()); + maxY = Math.max(maxY, pos.getY()); + maxZ = Math.max(maxZ, pos.getZ()); + } + } + } + } + + if (blocks.isEmpty()) { + ctx.getSource().sendFailure(Component.translatable("commands.sable.sub_level.assemble.no_blocks")); + return 0; + } + + final BoundingBox3i bounds = new BoundingBox3i( + minX, minY, minZ, + maxX, maxY, maxZ + ); + + SubLevelAssemblyHelper.assembleBlocks(level, origin, blocks, bounds); + + final int finalBlocksCount = blocks.size(); + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.assemble.radius.success", finalBlocksCount), true); + return 1; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableCommand.java b/common/src/main/java/dev/ryanhcode/sable/command/SableCommand.java new file mode 100644 index 0000000..6f54408 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableCommand.java @@ -0,0 +1,155 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.CommandDispatcher; +import com.mojang.brigadier.arguments.BoolArgumentType; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundEnterGizmoPacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPEchoPacket; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import foundry.veil.api.network.VeilPacketManager; +import net.minecraft.ChatFormatting; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.network.chat.*; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerPlayer; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Collection; +import java.util.Formatter; +import java.util.Locale; + +public class SableCommand { + + public static void register(final CommandDispatcher dispatcher, final CommandBuildContext buildContext) { + final LiteralArgumentBuilder sableBuilder = Commands.literal("sable") + .requires(commandSourceStack -> commandSourceStack.hasPermission(2)); + + SablePhysicsCommands.register(sableBuilder, buildContext); + SableSpawnCommands.register(sableBuilder, buildContext); + SableSubLevelCommands.register(sableBuilder, buildContext); + SableAssembleCommands.register(sableBuilder, buildContext); + SableStorageCommands.register(sableBuilder, buildContext); + + final LiteralArgumentBuilder debugBuilder = Commands.literal("debug"); + + SableJointCommands.register(debugBuilder, buildContext); + SableConfigCommands.register(debugBuilder, buildContext); + + sableBuilder + .then(debugBuilder + .then(Commands.literal("udp_test").executes(ctx -> { + final SableUDPServer server = SableUDPServer.getServer(ctx.getSource().getServer()); + + if (server != null) { + server.sendUDPPacket(ctx.getSource().getPlayerOrException(), new SableUDPEchoPacket("Skibidi Toilet"), true); + } + + return 1; + })) + ); + + sableBuilder + .then(Commands.literal("engage_gizmo") + .executes(SableCommand::executeEnableGizmoCommand)) + + .then(Commands.literal("paused") + .executes(SableCommand::executeTogglePhysicsPausedCommand) + .then(Commands.argument("paused", BoolArgumentType.bool()) + .executes(SableCommand::executeSetPhysicsPausedCommand))) + + .then(Commands.literal("info").then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()).executes(ctx -> { + final CommandSourceStack source = ctx.getSource(); + final ServerSubLevelContainer container = SableCommandHelper.requireSubLevelContainer(source); + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + source.sendSuccess(() -> Component.translatable("commands.sable.info.count", subLevels.size()), false); + for (final ServerSubLevel subLevel : subLevels) { + final Pose3dc pose = subLevel.logicalPose(); + source.sendSuccess(() -> { + final Vector3dc pos = pose.position(); + final MutableComponent component = Component.translatable("commands.sable.info.name", Component.literal(subLevel.getName() != null ? subLevel.getName() : subLevel.getUniqueId().toString())); + final ResourceLocation dimension = subLevel.getLevel().dimension().location(); + final GlobalSavedSubLevelPointer pointer = subLevel.getLastSerializationPointer(); + final Component fileId = Component.translatable("commands.sable.info.name.tooltip", pointer != null ? pointer.toString() : "None yet"); + component.setStyle(Style.EMPTY.withClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, new Formatter().format(Locale.ROOT, "/execute in %s run tp @s %.2f %.2f %.2f", dimension, pos.x(), pos.y(), pos.z()).toString())) + .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, fileId)) + .withColor(ChatFormatting.GRAY)); + return component; + }, false); + source.sendSuccess(() -> { + final Vector3dc pos = pose.position(); + return Component.translatable("commands.sable.info.position", pos.x(), pos.y(), pos.z()); + }, false); + source.sendSuccess(() -> { + final Quaterniondc orientation = pose.orientation(); + return Component.translatable("commands.sable.info.orientation", orientation.x(), orientation.y(), orientation.z(), orientation.w()); + }, false); + source.sendSuccess(() -> { + return Component.translatable("commands.sable.info.mass", subLevel.getMassTracker().getMass()); + }, false); + + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle(subLevel); + source.sendSuccess(() -> { + final Vector3dc pos = handle.getLinearVelocity(new Vector3d()); + return Component.translatable("commands.sable.info.linear_velocity", + pos.x(), pos.y(), pos.z()); + }, false); + source.sendSuccess(() -> { + final Vector3dc pos = handle.getAngularVelocity(new Vector3d()); + return Component.translatable("commands.sable.info.angular_velocity", pos.x(), pos.y(), pos.z()); + }, false); + } + return subLevels.size(); + }))); + + + dispatcher.register(sableBuilder); + + } + + private static int executeEnableGizmoCommand(final CommandContext ctx) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + final ServerPlayer player = source.getPlayerOrException(); + + SableCommandHelper.requireSubLevelPhysicsSystem(ctx).setPaused(true); + + VeilPacketManager.player(player).sendPacket(new ClientboundEnterGizmoPacket()); + return 1; + } + + private static int executeTogglePhysicsPausedCommand(final CommandContext ctx) throws CommandSyntaxException { + final boolean pause = !SableCommandHelper.requireSubLevelPhysicsSystem(ctx).getPaused(); + SableCommandHelper.requireSubLevelPhysicsSystem(ctx).setPaused(pause); + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.physics.paused_toggled.success", Boolean.toString(pause)), true); + return 1; + } + + private static int executeSetPhysicsPausedCommand(final CommandContext ctx) throws CommandSyntaxException { + final boolean pause = BoolArgumentType.getBool(ctx, "paused"); + + SableCommandHelper.requireSubLevelPhysicsSystem(ctx).setPaused(pause); + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.physics.paused.success", Boolean.toString(pause)), true); + return 1; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableConfigCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableConfigCommands.java new file mode 100644 index 0000000..b077628 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableConfigCommands.java @@ -0,0 +1,97 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.arguments.FloatArgumentType; +import com.mojang.brigadier.arguments.IntegerArgumentType; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.physics.config.PhysicsConfigData; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; + +public class SableConfigCommands { + + /** + * Adds the following commands: + *
    + *
  • {@code /sable config }
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + + sableBuilder.then(Commands.literal("config") + .then(Commands.literal("min_island_size") + .then(Commands.argument("size", IntegerArgumentType.integer(0, Integer.MAX_VALUE)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.minDynamicBodiesPerIsland = IntegerArgumentType.getInteger(ctx, "size"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("contact_spring_natural_frequency") + .then(Commands.argument("natural_frequency", FloatArgumentType.floatArg(0.0f)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.contactSpringFrequency = FloatArgumentType.getFloat(ctx, "natural_frequency"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("contact_spring_damping_ratio") + .then(Commands.argument("damping_ratio", FloatArgumentType.floatArg(0.0f)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.contactSpringDampingRatio = FloatArgumentType.getFloat(ctx, "damping_ratio"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("solver_iterations") + .then(Commands.argument("iterations", IntegerArgumentType.integer(0, Integer.MAX_VALUE)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.solverIterations = IntegerArgumentType.getInteger(ctx, "iterations"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("stabilization_iterations") + .then(Commands.argument("iterations", IntegerArgumentType.integer(0, Integer.MAX_VALUE)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.stabilizationIterations = IntegerArgumentType.getInteger(ctx, "iterations"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("pgs_iterations") + .then(Commands.argument("iterations", IntegerArgumentType.integer(0, Integer.MAX_VALUE)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.pgsIterations = IntegerArgumentType.getInteger(ctx, "iterations"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + .then(Commands.literal("substeps") + .then(Commands.argument("substeps", IntegerArgumentType.integer(0, Integer.MAX_VALUE)) + .executes(ctx -> { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(ctx.getSource().getLevel()).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.substepsPerTick = IntegerArgumentType.getInteger(ctx, "substeps"); + physicsSystem.onConfigUpdated(); + return 0; + })) + ) + ); + + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableJointCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableJointCommands.java new file mode 100644 index 0000000..6a985bd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableJointCommands.java @@ -0,0 +1,87 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.constraint.rotary.RotaryConstraintConfiguration; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.arguments.coordinates.Vec3Argument; +import net.minecraft.network.chat.Component; +import net.minecraft.world.phys.Vec3; + +import java.util.Collection; + +public class SableJointCommands { + + public static final SimpleCommandExceptionType MISSING_JOINT_SUBLEVEL_TARGET = + new SimpleCommandExceptionType(Component.translatable("commands.sable.joint.missing_sublevel_target")); + + /** + * Adds the following commands: + *
    + *
  • {@code /sable joint add radial }
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + + sableBuilder.then(Commands.literal("joint") + .then(Commands.literal("add") + .then(Commands.argument("subLevel1", SubLevelArgumentType.subLevels()) + .then(Commands.argument("subLevel2", SubLevelArgumentType.subLevels()) + .then(Commands.literal("rotary") + .then(Commands.argument("pos1", Vec3Argument.vec3(false)) + .then(Commands.argument("pos2", Vec3Argument.vec3(false)) + .then(Commands.argument("axis1", Vec3Argument.vec3(false)) + .then(Commands.argument("axis2", Vec3Argument.vec3(false)) + .executes(SableJointCommands::executeAddJointCommand))))))))) + ); + + } + + private static int executeAddJointCommand(final CommandContext ctx) throws CommandSyntaxException { + final ServerSubLevelContainer container = SableCommandHelper.requireSubLevelContainer(ctx); + final PhysicsPipeline pipeline = SableCommandHelper.requireSubLevelPhysicsSystem(container).getPipeline(); + addRotaryJoint( + pipeline, + SubLevelArgumentType.getSubLevels(ctx, "subLevel1"), + SubLevelArgumentType.getSubLevels(ctx, "subLevel2"), + Vec3Argument.getVec3(ctx, "pos1"), Vec3Argument.getVec3(ctx, "pos2"), + Vec3Argument.getVec3(ctx, "axis1"), Vec3Argument.getVec3(ctx, "axis2") + ); + + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.joint.success"), true); + return 0; + } + + private static void addRotaryJoint( + final PhysicsPipeline pipeline, + final Collection subLevel1, + final Collection subLevel2, + final Vec3 pos1, final Vec3 pos2, + final Vec3 axis1, final Vec3 axis2 + ) throws CommandSyntaxException { + final RotaryConstraintConfiguration constraintConfig = new RotaryConstraintConfiguration( + JOMLConversion.toJOML(pos1), + JOMLConversion.toJOML(pos2), + JOMLConversion.toJOML(axis1), + JOMLConversion.toJOML(axis2) + ); + + final ServerSubLevel jointSubLevel1 = subLevel1.stream().findFirst() + .orElseThrow(MISSING_JOINT_SUBLEVEL_TARGET::create); + final ServerSubLevel jointSubLevel2 = subLevel2.stream().findFirst() + .orElseThrow(MISSING_JOINT_SUBLEVEL_TARGET::create); + + pipeline.addConstraint(jointSubLevel1, jointSubLevel2, constraintConfig); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SablePhysicsCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SablePhysicsCommands.java new file mode 100644 index 0000000..ef74ea7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SablePhysicsCommands.java @@ -0,0 +1,283 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.Command; +import com.mojang.brigadier.arguments.DoubleArgumentType; +import com.mojang.brigadier.builder.ArgumentBuilder; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.arguments.coordinates.RotationArgument; +import net.minecraft.commands.arguments.coordinates.Vec3Argument; +import net.minecraft.network.chat.Component; +import net.minecraft.world.phys.Vec2; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniond; +import org.joml.Vector3d; + +import java.util.Collection; +import java.util.function.Function; + +public class SablePhysicsCommands { + + /** + * Adds the following commands: + *
    + *
  • {@code /sable physics impulse }
  • + *
  • {@code /sable physics rotation }
  • + *
  • {@code /sable physics rotation }
  • + *
  • {@code /sable physics translation }
  • + *
  • {@code /sable physics translation }
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + sableBuilder.then(Commands.literal("physics") + .then(Commands.literal("impulse") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + .then(Commands.literal("linear") + .then(Commands.argument("impulse", Vec3ArgumentAbsolute.vec3()) + .executes((ctx) -> + SablePhysicsCommands.executeLinearImpulseCommand(ctx, true)) + .then(Commands.literal("global") + .executes((ctx) -> + SablePhysicsCommands.executeLinearImpulseCommand(ctx, true))) + .then(Commands.literal("local") + .executes((ctx) -> + SablePhysicsCommands.executeLinearImpulseCommand(ctx, false))) + )) + + .then(Commands.literal("angular") + .then(Commands.argument("impulse", Vec3ArgumentAbsolute.vec3()) + .executes((ctx) -> + SablePhysicsCommands.executeAngularImpulseCommand(ctx, true)) + .then(Commands.literal("global") + .executes((ctx) -> + SablePhysicsCommands.executeAngularImpulseCommand(ctx, true))) + .then(Commands.literal("local") + .executes((ctx) -> + SablePhysicsCommands.executeAngularImpulseCommand(ctx, false))) + )) + )) + .then(Commands.literal("rotation") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + .then(wrapRotationWithMode(true)) + .then(wrapRotationWithMode(false)) + )) + + .then(Commands.literal("translation") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + + .then(Commands.literal("add") + .then(Commands.argument("translation", Vec3ArgumentAbsolute.vec3()) + .executes((ctx) -> + SablePhysicsCommands.executeAddTranslationCommand(ctx, true)) + .then(Commands.literal("global") + .executes((ctx) -> + SablePhysicsCommands.executeAddTranslationCommand(ctx, true))) + .then(Commands.literal("local") + .executes((ctx) -> + SablePhysicsCommands.executeAddTranslationCommand(ctx, false))) + )) + + .then(Commands.literal("set") + .then(Commands.argument("translation", Vec3Argument.vec3(false)) + .executes(SablePhysicsCommands::executeSetTranslationCommand)))) + ) + ); + + } + + private static Component getGlobalComponent(final boolean global) { + return Component.translatable("commands.sable.physics." + (global ? "global" : "local")); + } + + private static int executeLinearImpulseCommand(final CommandContext ctx, final boolean global) throws CommandSyntaxException { + final SubLevelPhysicsSystem system = SableCommandHelper.requireSubLevelPhysicsSystem(ctx); + + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + final Vec3 impulse = ctx.getArgument("impulse", Vec3.class); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + for (final ServerSubLevel subLevel : subLevels) { + Vec3 subLevelImpulse = impulse; + if (global) { + subLevelImpulse = subLevel.logicalPose().transformNormalInverse(subLevelImpulse); + } + + system.getPhysicsHandle(subLevel) + .applyLinearImpulse( + JOMLConversion.toJOML(subLevelImpulse) + ); + } + + SableCommandHelper.sendSuccessDescribingSubLevelsAtIndex("commands.sable.physics.impulse.linear.success", ctx, subLevels, 1, + getGlobalComponent(global), impulse.x + ", " + impulse.y + ", " + impulse.z); + return 0; + } + + private static int executeAngularImpulseCommand(final CommandContext ctx, final boolean global) throws CommandSyntaxException { + final SubLevelPhysicsSystem system = SableCommandHelper.requireSubLevelPhysicsSystem(ctx); + + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + final Vec3 impulse = ctx.getArgument("impulse", Vec3.class); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + for (final ServerSubLevel subLevel : subLevels) { + Vec3 subLevelImpulse = impulse; + if (global) { + subLevelImpulse = subLevel.logicalPose().transformNormalInverse(subLevelImpulse); + } + + system.getPhysicsHandle(subLevel) + .applyAngularImpulse( + JOMLConversion.toJOML(subLevelImpulse) + ); + } + + SableCommandHelper.sendSuccessDescribingSubLevelsAtIndex("commands.sable.physics.impulse.angular.success", ctx, subLevels, 1, + getGlobalComponent(global), impulse.x + ", " + impulse.y + ", " + impulse.z); + return 0; + } + + private static ArgumentBuilder wrapRotationWithMode(final boolean add) { + return Commands.literal(add ? "add" : "set").then(wrapRotationWithReferenceFrame(add, false)).then(wrapRotationWithReferenceFrame(add, true)); + } + + private static ArgumentBuilder wrapRotationWithReferenceFrame(final boolean add, final boolean axis) { + final Command c = (ctx) -> SablePhysicsCommands.executeRotationCommand(ctx, add, axis, true); + final Function, ArgumentBuilder> f = (b) -> { + if (add) + b.then(wrapRotationWithGlobality(axis, true)).then(wrapRotationWithGlobality(axis, false)); + return b; + }; + final ArgumentBuilder b = axis ? + Commands.argument("axis", Vec3ArgumentAbsolute.vec3()).then(f.apply(Commands.argument("angle", DoubleArgumentType.doubleArg()).executes(c))) : + f.apply(Commands.argument("rotation", RotationArgument.rotation()).executes(c)); + + return Commands.literal(axis ? "axis" : "entity").then(b); + } + + private static ArgumentBuilder wrapRotationWithGlobality(final boolean axis, final boolean global) { + return Commands.literal(global ? "global" : "local").executes((ctx) -> + SablePhysicsCommands.executeRotationCommand(ctx, true, axis, global)); + } + + private static int executeRotationCommand(final CommandContext ctx, final boolean add, final boolean axis, final boolean global) throws CommandSyntaxException { + final PhysicsPipeline pipeline = SableCommandHelper.requireSubLevelPhysicsPipeline(ctx); + + final Quaterniond orientation = new Quaterniond(); + + Vec2 rotation2 = new Vec2(0, 0); + Vec3 rotationAxis = new Vec3(0, 0, 0); + double rotationAngle = 0; + + if (axis) { + rotationAxis = ctx.getArgument("axis", Vec3.class); + rotationAngle = ctx.getArgument("angle", Double.class); + orientation.fromAxisAngleDeg(rotationAxis.x, rotationAxis.y, rotationAxis.z, rotationAngle); + + if (rotationAxis.lengthSqr() == 0) { + throw SableCommandHelper.ERROR_NO_AXIS_FOR_ROTATION.create(); + } + } else { + rotation2 = RotationArgument.getRotation(ctx, "rotation").getRotation(ctx.getSource()); + orientation.rotateY(-Math.toRadians(rotation2.y)); + orientation.rotateX(Math.toRadians(rotation2.x)); + } + + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + for (final ServerSubLevel subLevel : subLevels) { + final Pose3d pose = subLevel.logicalPose(); + if (add) { + if (global) { + pose.orientation().premul(orientation); + } else { + pose.orientation().mul(orientation); + } + } else { + pose.orientation().set(orientation); + } + pipeline.teleport(subLevel, pose.position(), pose.orientation()); + } + + if (axis) { + SableCommandHelper.sendSuccessDescribingSubLevelsAtIndex( + add ? "commands.sable.physics.rotation.add.success" + : "commands.sable.physics.rotation.set.success", + ctx, subLevels, 1, + getGlobalComponent(global), rotationAxis.x + ", " + rotationAxis.y + ", " + rotationAxis.z + ", " + rotationAngle); + } else { + SableCommandHelper.sendSuccessDescribingSubLevelsAtIndex( + add ? "commands.sable.physics.rotation.add.success" + : "commands.sable.physics.rotation.set.success", + ctx, subLevels, 1, + getGlobalComponent(global), rotation2.x + ", " + rotation2.y); + } + return 0; + } + + private static int executeAddTranslationCommand(final CommandContext ctx, final boolean global) throws CommandSyntaxException { + final PhysicsPipeline pipeline = SableCommandHelper.requireSubLevelPhysicsPipeline(ctx); + + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final Vec3 translation = ctx.getArgument("translation", Vec3.class); + final Vector3d sublevelTranslation = new Vector3d(); + for (final ServerSubLevel subLevel : subLevels) { + JOMLConversion.toJOML(translation, sublevelTranslation); + + if (!global) { + subLevel.logicalPose().transformNormal(sublevelTranslation); + } + + pipeline.teleport(subLevel, subLevel.logicalPose().position().add(sublevelTranslation), subLevel.logicalPose().orientation()); + } + + SableCommandHelper.sendSuccessDescribingSubLevelsAtIndex("commands.sable.physics.translation.add.success", ctx, subLevels, 1, + getGlobalComponent(global), translation.x + ", " + translation.y + ", " + translation.z); + return 0; + } + + private static int executeSetTranslationCommand(final CommandContext ctx) throws CommandSyntaxException { + final PhysicsPipeline pipeline = SableCommandHelper.requireSubLevelPhysicsPipeline(ctx); + + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final Vector3d translation = JOMLConversion.toJOML(Vec3Argument.getVec3(ctx, "translation")); + for (final ServerSubLevel subLevel : subLevels) { + pipeline.teleport(subLevel, translation, subLevel.logicalPose().orientation()); + } + + SableCommandHelper.sendSuccessDescribingSubLevels("commands.sable.physics.translation.set.success", ctx, subLevels, translation.x + ", " + translation.y + ", " + translation.z); + return 0; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableSpawnCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableSpawnCommands.java new file mode 100644 index 0000000..0205af7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableSpawnCommands.java @@ -0,0 +1,523 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.arguments.IntegerArgumentType; +import com.mojang.brigadier.arguments.StringArgumentType; +import com.mojang.brigadier.builder.ArgumentBuilder; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.suggestion.SuggestionProvider; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; +import dev.ryanhcode.sable.api.physics.constraint.rotary.RotaryConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.object.rope.RopeHandle; +import dev.ryanhcode.sable.api.physics.object.rope.RopePhysicsObject; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.EmbeddedPlotLevelAccessor; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.ServerLevelPlot; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.SchematicLoader; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.SharedSuggestionProvider; +import net.minecraft.commands.arguments.blocks.BlockStateArgument; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.Mirror; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructurePlaceSettings; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Vector3d; + +import java.util.Collection; +import java.util.Locale; + +public class SableSpawnCommands { + + private static final SuggestionProvider SUGGEST_TEMPLATES = (commandContext, suggestionsBuilder) -> { + final MinecraftServer server = commandContext.getSource().getServer(); + return SchematicLoader.getSchematics(server).thenCompose(schematics -> { + final String remaining = suggestionsBuilder.getRemaining().toLowerCase(Locale.ROOT); + SharedSuggestionProvider.filterResources(schematics, remaining, resourceLocation -> resourceLocation, resourceLocation -> { + final String path = resourceLocation.getPath(); + suggestionsBuilder.suggest(path.substring("schematics/".length(), path.length() - ".nbt".length())); + }); + return suggestionsBuilder.buildFuture(); + }); + }; + + private static final BlockState DEFAULT_SPAWN_BLOCKSTATE = Blocks.STONE.defaultBlockState(); + + /** + * Adds the following commands: + *
    + *
  • {@code /sable spawn jenga [name]}
  • + *
  • {@code /sable spawn [block] [name]}
  • + *
  • {@code /sable spawn block [name]}
  • + *
  • {@code /sable spawn clone [name]}
  • + *
  • {@code /sable spawn schematic }
  • + *
  • {@code /sable spawn }
  • + *
  • {@code /sable spawn [name]}
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + + sableBuilder.then(Commands.literal("spawn") + .then(Commands.literal("jenga") + .then(namedSpawnFinale(Commands.argument("height", IntegerArgumentType.integer(1, 256)), SableSpawnCommands::spawnJenga))) + + .then(Commands.literal("clone") + .then(namedSpawnFinale(Commands.argument("sub_level", SubLevelArgumentType.singleSubLevel()), SableSpawnCommands::cloneSubLevel))) + + .then(Commands.literal("sphere") + .then(Commands.argument("radius", IntegerArgumentType.integer(2, 200)) + .executes((ctx) -> SableSpawnCommands.spawnSphere(ctx, DEFAULT_SPAWN_BLOCKSTATE, null)) + .then(namedSpawnFinale(Commands.argument("block", BlockStateArgument.block(buildContext)), + (ctx, name) -> SableSpawnCommands.spawnSphere(ctx, BlockStateArgument.getBlock(ctx, "block").getState(), name))))) + + .then(Commands.literal("schematic") + .then(Commands.argument("name", StringArgumentType.string()) + .suggests(SUGGEST_TEMPLATES) + .executes(SableSpawnCommands::executeSpawnSchematicCommand))) + + .then(Commands.literal("joint_test") + .executes(SableSpawnCommands::executeSpawnJointTestCommand)) + + .then(namedSpawnFinale(Commands.literal("slope_test"), SableSpawnCommands::spawnSlopeTest)) + + .then(Commands.literal("rope_test") + .executes(SableSpawnCommands::executeSpawnRopeTestCommand)) + + .then(Commands.literal("grid") + .then(Commands.argument("sideLength", IntegerArgumentType.integer(1, 32)) + .executes((ctx) -> SableSpawnCommands.spawnGrid(ctx, DEFAULT_SPAWN_BLOCKSTATE, null)) + .then(namedSpawnFinale(Commands.argument("block", BlockStateArgument.block(buildContext)), + (ctx, name) -> SableSpawnCommands.spawnGrid(ctx, BlockStateArgument.getBlock(ctx, "block").getState(), name))))) + + .then(Commands.literal("block") + .executes((ctx) -> spawnBlock(ctx, DEFAULT_SPAWN_BLOCKSTATE, null)) + .then(namedSpawnFinale(Commands.argument("block", BlockStateArgument.block(buildContext)), + (ctx, name) -> spawnBlock(ctx, BlockStateArgument.getBlock(ctx, "block").getState(), name)))) + + .then(Commands.literal("platform") + .then(Commands.argument("size", IntegerArgumentType.integer(1, 32)) + .executes((ctx) -> SableSpawnCommands.spawnPlatform(ctx, DEFAULT_SPAWN_BLOCKSTATE, null)) + .then(namedSpawnFinale(Commands.argument("block", BlockStateArgument.block(buildContext)), + (ctx, name) -> SableSpawnCommands.spawnPlatform(ctx, BlockStateArgument.getBlock(ctx, "block").getState(), name))))) + ); + + } + + @FunctionalInterface + private interface NamedSpawnInvoker { + int run(CommandContext ctx, @Nullable String name) throws CommandSyntaxException; + } + + private static > T namedSpawnFinale(final T builder, final NamedSpawnInvoker invoker) { + builder.executes((ctx) -> invoker.run(ctx, null)); + builder.then(Commands.argument("name", StringArgumentType.string()) + .executes((ctx) -> invoker.run(ctx, StringArgumentType.getString(ctx, "name")))); + return builder; + } + + private static int spawnJenga(final CommandContext ctx, @Nullable final String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + final SubLevelContainer container = SableCommandHelper.requireSubLevelContainer(ctx); + final Vec3 pos = Vec3.atCenterOf(BlockPos.containing(source.getPosition())); + final int height = IntegerArgumentType.getInteger(ctx, "height"); + + for (int yOffset = 0; yOffset < height; yOffset++) { + final Direction.Axis axis = yOffset % 2 == 0 ? Direction.Axis.X : Direction.Axis.Z; + final Direction.Axis perpendicular = axis == Direction.Axis.X ? Direction.Axis.Z : Direction.Axis.X; + + for (int index = -1; index <= 1; index++) { + final Pose3d pose = new Pose3d(); + final Vector3d position = pose.position(); + position.set(pos.x, pos.y, pos.z); + + if (index != 0) { + position.add(JOMLConversion.atLowerCornerOf(Direction.get(index == 1 ? Direction.AxisDirection.POSITIVE : Direction.AxisDirection.NEGATIVE, axis).getNormal())); + } + position.add(0.0, yOffset, 0.0); + final Vector3d positionBackup = new Vector3d(position); + + final SubLevel subLevel = container.allocateNewSubLevel(pose); + subLevel.setName(name); + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + plot.newEmptyChunk(center); + + + final EmbeddedPlotLevelAccessor accessor = plot.getEmbeddedLevelAccessor(); + accessor.setBlock(BlockPos.ZERO, Blocks.SPRUCE_PLANKS.defaultBlockState(), 3); + for (int block = -1; block <= 1; block++) { + final BlockPos blockPos = BlockPos.ZERO.relative(Direction.get(Direction.AxisDirection.POSITIVE, perpendicular), block); + + BlockState state = Blocks.OAK_PLANKS.defaultBlockState(); + + if (index == 0) { + state = Blocks.SPRUCE_PLANKS.defaultBlockState(); + } + + accessor.setBlock(blockPos, state, 3); + } + subLevel.logicalPose().position().set(positionBackup); + subLevel.updateLastPose(); + } + } + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "jenga"), false); + return 1; + } + + private static int cloneSubLevel(final CommandContext ctx, @Nullable final String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + final ServerSubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + final ServerSubLevel toClone = SubLevelArgumentType.getSingleSubLevel(ctx, "sub_level"); + + final BoundingBox3dc worldBounds = toClone.boundingBox(); + final double height = worldBounds.maxY() - worldBounds.minY(); + + final CompoundTag tag = toClone.getPlot().save(); + + final ServerSubLevel subLevel = (ServerSubLevel) plotContainer.allocateNewSubLevel( + new Pose3d( + toClone.logicalPose().position().add(0, height * 1.2 + 2, 0, new Vector3d()), + new Quaterniond(), new Vector3d(0), new Vector3d(1) + ) + ); + final ServerLevelPlot plot = subLevel.getPlot(); + plot.load(tag); + subLevel.updateLastPose(); + if (name != null) { + subLevel.setName(name); + } + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.clone.success"), false); + return 1; + } + + private static int spawnSphere(final CommandContext ctx, final BlockState material, @Nullable final String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final SubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + Vec3 playerPos = source.getPosition(); + playerPos = Vec3.atCenterOf(BlockPos.containing(playerPos)); + + final Pose3d pose = new Pose3d(); + pose.position().set(playerPos.x, playerPos.y, playerPos.z); + + final SubLevel subLevel = plotContainer.allocateNewSubLevel(pose); + subLevel.setName(name); + + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + + final int radius = IntegerArgumentType.getInteger(ctx, "radius"); + final int radiusChunks = (radius + 8) / 16; + for (int x = -radiusChunks; x <= radiusChunks; x++) { + for (int z = -radiusChunks; z <= radiusChunks; z++) { + plot.newEmptyChunk(new ChunkPos(center.x + x, center.z + z)); + } + } + + final BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); + for (int x = -radius; x <= radius; x++) { + for (int z = -radius; z <= radius; z++) { + for (int y = -radius; y <= radius; y++) { + pos.set(x, y, z); + if (pos.distSqr(BlockPos.ZERO) <= radius * radius) { + plot.getEmbeddedLevelAccessor().setBlock(pos, material, 3); + } + } + } + } + subLevel.updateLastPose(); + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "sphere"), false); + return 1; + } + + private static int executeSpawnSchematicCommand(final CommandContext ctx) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + final ServerLevel level = source.getLevel(); + + final StructureTemplate template = SchematicLoader.loadSchematic(level, ResourceLocation.fromNamespaceAndPath("sable", StringArgumentType.getString(ctx, "name"))); + + if (template == null) { + source.sendFailure(Component.translatable("commands.sable.place_schematic.failure")); + return 0; + } + + final SubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 spawnPos = source.getPosition(); + + final Pose3d pose = new Pose3d(); + pose.position().set(spawnPos.x, spawnPos.y, spawnPos.z); + + final SubLevel sublevel = plotContainer.allocateNewSubLevel(pose); + final LevelPlot plot = sublevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + + final BoundingBox bounds = template.getBoundingBox(BlockPos.ZERO, Rotation.NONE, BlockPos.ZERO, Mirror.NONE); + + final int minChunkX = bounds.minX() >> 4; + final int minChunkZ = bounds.minZ() >> 4; + + final int maxChunkX = bounds.maxX() >> 4; + final int maxChunkZ = bounds.maxZ() >> 4; + + for (int x = minChunkX; x <= maxChunkX; x++) { + for (int z = minChunkZ; z <= maxChunkZ; z++) { + plot.newEmptyChunk(new ChunkPos(center.x + x, center.z + z)); + } + } + + final EmbeddedPlotLevelAccessor embedded = plot.getEmbeddedLevelAccessor(); + template.placeInWorld(embedded, BlockPos.ZERO, BlockPos.ZERO, new StructurePlaceSettings(), RandomSource.create(), 3); + sublevel.updateLastPose(); + sublevel.logicalPose().position().set(spawnPos.x, spawnPos.y, spawnPos.z); + + source.sendSuccess(() -> Component.translatable("commands.sable.place_schematic.success"), false); + return 1; + } + + private static int executeSpawnRopeTestCommand(final CommandContext ctx) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final ServerSubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + final SubLevelPhysicsSystem system = SableCommandHelper.requireSubLevelPhysicsSystem(plotContainer); + + final Vec3 playerPos = Vec3.atCenterOf(BlockPos.containing(source.getPosition())); + final Collection points = new ObjectArrayList<>(); + + for (int i = 0; i < 10; i++) { + points.add(JOMLConversion.toJOML(playerPos).add(i, 0, 0)); + } + + final RopePhysicsObject object = new RopePhysicsObject(points, 0.25); + system.addObject(object); + object.setAttachment(RopeHandle.AttachmentPoint.START, JOMLConversion.toJOML(playerPos), null); + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "rope_test"), false); + return 1; + } + + + private static int executeSpawnJointTestCommand(final CommandContext ctx) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final ServerSubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 playerPos = Vec3.atCenterOf(BlockPos.containing(source.getPosition())); + + final Pose3d pose1 = new Pose3d(); + pose1.position().set(playerPos.x, playerPos.y, playerPos.z); + + final Pose3d pose2 = new Pose3d(); + pose2.position().set(playerPos.x, playerPos.y + 1.0, playerPos.z); + + final ServerSubLevel subLevelA = (ServerSubLevel) plotContainer.allocateNewSubLevel(pose1); + final ServerSubLevel subLevelB = (ServerSubLevel) plotContainer.allocateNewSubLevel(pose2); + + final LevelPlot plotA = subLevelA.getPlot(); + final LevelPlot plotB = subLevelB.getPlot(); + + plotA.newEmptyChunk(plotA.getCenterChunk()); + plotA.getEmbeddedLevelAccessor().setBlock(BlockPos.ZERO, Blocks.STONE.defaultBlockState(), 3); + + plotB.newEmptyChunk(plotB.getCenterChunk()); + plotB.getEmbeddedLevelAccessor().setBlock(BlockPos.ZERO, Blocks.STONE.defaultBlockState(), 3); + + final RotaryConstraintConfiguration config = new RotaryConstraintConfiguration( + JOMLConversion.atBottomCenterOf(plotA.getCenterBlock().above().above()), + JOMLConversion.atBottomCenterOf(plotB.getCenterBlock()), + JOMLConversion.atLowerCornerOf(Direction.UP.getNormal()), + JOMLConversion.atLowerCornerOf(Direction.UP.getNormal()) + ); +// final FreeConstraintConfiguration config = new FreeConstraintConfiguration(); + + final PhysicsConstraintHandle handle = SableCommandHelper.requireSubLevelPhysicsSystem(plotContainer) + .getPipeline().addConstraint(subLevelA, subLevelB, config); + + handle.setContactsEnabled(false); + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "joint_test"), false); + return 1; + } + + private static int spawnSlopeTest(final CommandContext ctx, final @Nullable String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final ServerSubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 playerPos = Vec3.atCenterOf(BlockPos.containing(source.getPosition())); + + final int gridSize = 9; + final double yawRange = Math.toRadians(90.0); + final double pitchRange = Math.toRadians(90.00); + final int rad = 3; + + final int spacing = rad * 2 + 2; + for (int xo = 0; xo <= gridSize; xo++) { + for (int zo = 0; zo <= gridSize; zo++) { + + final Pose3d pose1 = new Pose3d(); + pose1.position().set(playerPos.x, playerPos.y, playerPos.z); + + final ServerSubLevel subLevel = (ServerSubLevel) plotContainer.allocateNewSubLevel(pose1); + subLevel.setName(name); + + final LevelPlot plotA = subLevel.getPlot(); + + final BlockState block = Blocks.END_STONE.defaultBlockState(); + plotA.newEmptyChunk(plotA.getCenterChunk()); + + for (int lx = -rad; lx < rad; lx ++) { + for (int lz = -rad; lz < rad; lz++) { + plotA.getEmbeddedLevelAccessor().setBlock(new BlockPos(lx, 0, lz), block, 3); + } + } + + final Vector3d pos = new Vector3d(playerPos.x + xo * spacing, playerPos.y, playerPos.z + zo * spacing); + final Quaterniond orientation = new Quaterniond(); + + orientation.rotateY(xo * yawRange / gridSize); + orientation.rotateX(zo * pitchRange / gridSize); + + SableCommandHelper.requireSubLevelPhysicsPipeline(ctx).teleport(subLevel, pos, orientation); + } + } + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "slope_test"), false); + return 1; + } + + private static int spawnGrid(final CommandContext ctx, final BlockState material, final @Nullable String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final SubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 playerPos = source.getPosition(); + + final int sideLength = IntegerArgumentType.getInteger(ctx, "sideLength"); + + final Vec3[] positions = new Vec3[sideLength * sideLength * sideLength]; + + for (int x = 0; x < sideLength; x++) { + for (int z = 0; z < sideLength; z++) { + for (int y = 0; y < sideLength; y++) { + positions[x * sideLength * sideLength + z * sideLength + y] = new Vec3(x, y, z).scale(2.1).add(playerPos); + } + } + } + + for (final Vec3 subLevelPos : positions) { + final Pose3d pose = new Pose3d(); + pose.position().set(subLevelPos.x, subLevelPos.y, subLevelPos.z); + + final SubLevel subLevel = plotContainer.allocateNewSubLevel(pose); + subLevel.setName(name); + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + plot.newEmptyChunk(center); + + plot.getEmbeddedLevelAccessor().setBlock(BlockPos.ZERO, material, 3); + subLevel.updateLastPose(); + } + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "grid"), false); + return 1; + } + + private static int spawnBlock(final CommandContext ctx, final BlockState material, final @Nullable String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final SubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 playerPos = source.getPosition(); + + final Pose3d pose = new Pose3d(); + pose.position().set(playerPos.x, playerPos.y, playerPos.z); + + final SubLevel subLevel = plotContainer.allocateNewSubLevel(pose); + subLevel.setName(name); + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + plot.newEmptyChunk(center); + + plot.getEmbeddedLevelAccessor().setBlock(BlockPos.ZERO, material, 3); + subLevel.updateLastPose(); + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "block"), false); + return 1; + } + + private static int spawnPlatform(final CommandContext ctx, final BlockState material, final @Nullable String name) throws CommandSyntaxException { + final CommandSourceStack source = ctx.getSource(); + + final SubLevelContainer plotContainer = SableCommandHelper.requireSubLevelContainer(ctx); + + final Vec3 playerPos = source.getPosition(); + + final Pose3d pose = new Pose3d(); + pose.position().set(playerPos.x, playerPos.y, playerPos.z); + + final SubLevel subLevel = plotContainer.allocateNewSubLevel(pose); + subLevel.setName(name); + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + + final int size = IntegerArgumentType.getInteger(ctx, "size"); + final int radiusChunks = (size + 8) / 16; + for (int x = -radiusChunks; x <= radiusChunks; x++) { + for (int z = -radiusChunks; z <= radiusChunks; z++) { + plot.newEmptyChunk(new ChunkPos(center.x + x, center.z + z)); + } + } + for (int x = -size; x <= size; x++) { + for (int z = -size; z <= size; z++) { + plot.getEmbeddedLevelAccessor().setBlock(new BlockPos(x, 0, z), material, 2); + } + } + subLevel.updateLastPose(); + SableCommandHelper.requireSubLevelPhysicsPipeline(ctx).teleport( + (ServerSubLevel) subLevel, + new Vector3d(playerPos.x, playerPos.y, playerPos.z), + pose.orientation() + ); + + source.sendSuccess(() -> Component.translatable("commands.sable.spawn.success", "platform"), false); + return 1; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableStorageCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableStorageCommands.java new file mode 100644 index 0000000..6dcf559 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableStorageCommands.java @@ -0,0 +1,166 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.arguments.StringArgumentType; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.holding.SavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunk; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.storage.region.SubLevelRegionFile; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelStorage; +import net.minecraft.ChatFormatting; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.network.chat.*; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.io.File; +import java.util.Formatter; +import java.util.Locale; + +public class SableStorageCommands { + + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + sableBuilder.then(Commands.literal("storage") + .then(Commands.literal("find_all_sub_levels") + .executes(ctx -> { + final ServerLevel level = ctx.getSource().getLevel(); + final ServerSubLevelContainer container = ServerSubLevelContainer.getContainer(level); + final SubLevelHoldingChunkMap holdingChunkMap = container.getHoldingChunkMap(); + final SubLevelStorage storage = holdingChunkMap.getStorage(); + final CommandSourceStack source = ctx.getSource(); + + final File[] regionFiles = storage.getFolder().toFile().listFiles((dir, name) -> name.endsWith(SubLevelRegionFile.FILE_EXTENSION)); + + if (regionFiles != null) { + for (final File regionFile : regionFiles) { + final String fileName = regionFile.getName(); + final String withoutExtension = fileName.substring(0, fileName.length() - SubLevelRegionFile.FILE_EXTENSION.length()); + final String[] parts = withoutExtension.split("\\."); + if (parts.length != 3) continue; + + final int regionX, regionZ; + try { + regionX = Integer.parseInt(parts[1]); + regionZ = Integer.parseInt(parts[2]); + } catch (final NumberFormatException e) { + continue; + } + + for (int localX = 0; localX < SubLevelRegionFile.SIDE_LENGTH; localX++) { + for (int localZ = 0; localZ < SubLevelRegionFile.SIDE_LENGTH; localZ++) { + final ChunkPos chunkPos = new ChunkPos( + regionX * SubLevelRegionFile.SIDE_LENGTH + localX, + regionZ * SubLevelRegionFile.SIDE_LENGTH + localZ + ); + + final SubLevelHoldingChunk holdingChunk = storage.attemptLoadHoldingChunk(chunkPos); + if (holdingChunk == null) continue; + + for (final SavedSubLevelPointer pointer : holdingChunk.getSubLevelPointers()) { + final SubLevelData data = storage.attemptLoadSubLevel(chunkPos, pointer); + logFoundSubLevel(pointer, data, chunkPos, source, level); + } + } + } + } + } + return 1; + })) + .then(Commands.literal("find") + .then(Commands.argument("name", StringArgumentType.string()) + .executes(ctx -> { + final ServerLevel level = ctx.getSource().getLevel(); + final ServerSubLevelContainer container = ServerSubLevelContainer.getContainer(level); + final SubLevelHoldingChunkMap holdingChunkMap = container.getHoldingChunkMap(); + final SubLevelStorage storage = holdingChunkMap.getStorage(); + final CommandSourceStack source = ctx.getSource(); + final String nameArgument = StringArgumentType.getString(ctx, "name"); + + final File[] regionFiles = storage.getFolder().toFile().listFiles((dir, name) -> name.endsWith(SubLevelRegionFile.FILE_EXTENSION)); + + if (regionFiles != null) { + for (final File regionFile : regionFiles) { + final String fileName = regionFile.getName(); + final String withoutExtension = fileName.substring(0, fileName.length() - SubLevelRegionFile.FILE_EXTENSION.length()); + final String[] parts = withoutExtension.split("\\."); + if (parts.length != 3) continue; + + final int regionX, regionZ; + try { + regionX = Integer.parseInt(parts[1]); + regionZ = Integer.parseInt(parts[2]); + } catch (final NumberFormatException e) { + continue; + } + + for (int localX = 0; localX < SubLevelRegionFile.SIDE_LENGTH; localX++) { + for (int localZ = 0; localZ < SubLevelRegionFile.SIDE_LENGTH; localZ++) { + final ChunkPos chunkPos = new ChunkPos( + regionX * SubLevelRegionFile.SIDE_LENGTH + localX, + regionZ * SubLevelRegionFile.SIDE_LENGTH + localZ + ); + + final SubLevelHoldingChunk holdingChunk = storage.attemptLoadHoldingChunk(chunkPos); + if (holdingChunk == null) continue; + + for (final SavedSubLevelPointer pointer : holdingChunk.getSubLevelPointers()) { + final SubLevelData data = storage.attemptLoadSubLevel(chunkPos, pointer); + + final String name = data.fullTag().contains("display_name") + ? data.fullTag().getString("display_name") + : data.uuid().toString(); + if (name != null && name.equals(nameArgument)) { + logFoundSubLevel(pointer, data, chunkPos, source, level); + } + } + } + } + } + } + return 1; + }))) + + ); + } + + private static void logFoundSubLevel(final SavedSubLevelPointer pointer, final SubLevelData data, final ChunkPos chunkPos, final CommandSourceStack source, final ServerLevel level) { + if (data == null) return; + + final String name = data.fullTag().contains("display_name") + ? data.fullTag().getString("display_name") + : data.uuid().toString(); + final GlobalSavedSubLevelPointer globalPointer = new GlobalSavedSubLevelPointer(chunkPos, pointer.storageIndex(), pointer.subLevelIndex()); + + final Pose3d pose = data.pose(); + + source.sendSuccess(() -> { + final Vector3dc pos = pose.position(); + final MutableComponent component = Component.translatable("commands.sable.info.name", Component.literal(name)); + final ResourceLocation dimension = level.dimension().location(); + final Component fileId = Component.translatable("commands.sable.info.name.tooltip", globalPointer.toString()); + component.setStyle(Style.EMPTY.withClickEvent(new ClickEvent(ClickEvent.Action.SUGGEST_COMMAND, new Formatter().format(Locale.ROOT, "/execute in %s run tp @s %.2f %.2f %.2f", dimension, pos.x(), pos.y(), pos.z()).toString())) + .withHoverEvent(new HoverEvent(HoverEvent.Action.SHOW_TEXT, fileId)) + .withColor(ChatFormatting.GRAY)); + return component; + }, false); + + source.sendSuccess(() -> { + final Vector3dc pos = pose.position(); + return Component.translatable("commands.sable.info.position", pos.x(), pos.y(), pos.z()); + }, false); + + source.sendSuccess(() -> { + final Vector3d size = data.bounds().size(); + return Component.translatable("commands.sable.info.world_bounds", size.x, size.y, size.z); + }, false); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/SableSubLevelCommands.java b/common/src/main/java/dev/ryanhcode/sable/command/SableSubLevelCommands.java new file mode 100644 index 0000000..90a0ccf --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/SableSubLevelCommands.java @@ -0,0 +1,198 @@ +package dev.ryanhcode.sable.command; + +import com.mojang.brigadier.arguments.StringArgumentType; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import net.minecraft.commands.CommandBuildContext; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.arguments.coordinates.Coordinates; +import net.minecraft.commands.arguments.coordinates.RotationArgument; +import net.minecraft.commands.arguments.coordinates.Vec3Argument; +import net.minecraft.network.chat.Component; +import net.minecraft.world.phys.Vec2; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Vector2i; +import org.joml.Vector3d; + +import java.util.Collection; +import java.util.Objects; + +public class SableSubLevelCommands { + + /** + * Adds the following commands: + *
    + *
  • {@code /sable name set }
  • + *
  • {@code /sable name clear }
  • + *
  • {@code /sable name get }
  • + *
  • {@code /sable teleport }
  • + *
  • {@code /sable remove }
  • + *
+ */ + public static void register(final LiteralArgumentBuilder sableBuilder, final CommandBuildContext buildContext) { + sableBuilder + .then(Commands.literal("name") + .then(Commands.literal("set") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + .then(Commands.argument("name", StringArgumentType.string()) + .executes(SableSubLevelCommands::executeSetSubLevelNameCommand)))) + .then(Commands.literal("clear") + .then(Commands.argument("sub_level", SubLevelArgumentType.subLevels()) + .executes(SableSubLevelCommands::executeClearSubLevelNameCommand))) + .then(Commands.literal("get") + .then(Commands.argument("sub_level", SubLevelArgumentType.singleSubLevel()) + .executes(SableSubLevelCommands::executeGetSubLevelNameCommand)))) + + .then(Commands.literal("teleport") + .then(Commands.argument("targets", SubLevelArgumentType.subLevels()) + .then(Commands.argument("destination", Vec3Argument.vec3(false)) + .executes((ctx) -> SableSubLevelCommands.executeTeleportSubLevelCommand(ctx, null)) + .then(Commands.argument("angle", RotationArgument.rotation()) + .executes((ctx) -> SableSubLevelCommands.executeTeleportSubLevelCommand( + ctx, RotationArgument.getRotation(ctx, "angle")) + )) + ))) + + .then(Commands.literal("remove") + .then(Commands.argument("targets", SubLevelArgumentType.subLevels()) + .executes(SableSubLevelCommands::executeRemoveSubLevelCommand))); + } + + private static int setSubLevelNames(final Collection subLevels, @Nullable final String name) { + int modifiedCount = 0; + for (final SubLevel target : subLevels) { + if (!Objects.equals(target.getName(), name)) { + target.setName(name); + modifiedCount++; + } + } + return modifiedCount; + } + + private static int executeSetSubLevelNameCommand(final CommandContext ctx) throws CommandSyntaxException { + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + final String name = StringArgumentType.getString(ctx, "name"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final int modifiedCount = setSubLevelNames(subLevels, name); + + if (modifiedCount == 0) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_MODIFIED.create(); + } + + if (modifiedCount == 1) { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.set_name.success_singular", name), true); + } else { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.set_name.success_multiple", modifiedCount, name), true); + } + return modifiedCount; + } + + private static int executeClearSubLevelNameCommand(final CommandContext ctx) throws CommandSyntaxException { + final Collection subLevels = SubLevelArgumentType.getSubLevels(ctx, "sub_level"); + + if (subLevels.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final int modifiedCount = setSubLevelNames(subLevels, null); + + if (modifiedCount == 0) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_MODIFIED.create(); + } + + if (modifiedCount == 1) { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.clear_name.success_singular"), true); + } else { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.clear_name.success_multiple", modifiedCount), true); + } + return modifiedCount; + } + + private static int executeGetSubLevelNameCommand(final CommandContext ctx) throws CommandSyntaxException { + final SubLevel subLevel = SubLevelArgumentType.getSingleSubLevel(ctx, "sub_level"); + + if (subLevel.getName() == null) { + throw SableCommandHelper.ERROR_SUB_LEVEL_UNNAMED.create(); + } else { + ctx.getSource().sendSuccess(() -> Component.translatable("commands.sable.sub_level.get_name.success", subLevel.getName()), true); + return 1; + } + } + + private static int executeTeleportSubLevelCommand(final CommandContext ctx, final @Nullable Coordinates angle) throws CommandSyntaxException { + final PhysicsPipeline pipeline = SableCommandHelper.requireSubLevelPhysicsPipeline(ctx); + + final Collection targets = SubLevelArgumentType.getSubLevels(ctx, "targets"); + + if (targets.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + final Vector3d destination = JOMLConversion.toJOML(Vec3Argument.getVec3(ctx, "destination")); + + final Quaterniond orientation = new Quaterniond(); + + final Vec2 rotation = angle != null ? angle.getRotation(ctx.getSource()) : null; + if (angle != null) { + orientation.rotateY(-Math.toRadians(rotation.y)); + orientation.rotateX(Math.toRadians(rotation.x)); + } + + for (final ServerSubLevel target : targets) { + pipeline.resetVelocity(target); + pipeline.teleport(target, destination, angle != null ? orientation : target.logicalPose().orientation()); + } + + if (angle != null) { + SableCommandHelper.sendSuccessDescribingSubLevels( + "commands.sable.sub_level.teleport_with_orientation.success", + ctx, targets, + destination.x, destination.y, destination.z, + rotation.x, rotation.y + ); + } else { + SableCommandHelper.sendSuccessDescribingSubLevels( + "commands.sable.sub_level.teleport.success", + ctx, targets, + destination.x, destination.y, destination.z + ); + } + return 1; + } + + private static int executeRemoveSubLevelCommand(final CommandContext ctx) throws CommandSyntaxException { + final SubLevelContainer container = SableCommandHelper.requireSubLevelContainer(ctx); + + final Collection targets = SubLevelArgumentType.getSubLevels(ctx, "targets"); + + if (targets.isEmpty()) { + throw SableCommandHelper.ERROR_NO_SUB_LEVELS_FOUND.create(); + } + + for (final SubLevel target : targets) { + final LevelPlot plot = target.getPlot(); + final Vector2i origin = container.getOrigin(); + container.removeSubLevel(plot.plotPos.x - origin.x, plot.plotPos.z - origin.y, SubLevelRemovalReason.REMOVED); + } + + SableCommandHelper.sendSuccessDescribingSubLevels("commands.sable.sub_level.remove.success", ctx, targets); + return 1; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.java b/common/src/main/java/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.java new file mode 100644 index 0000000..0678ec1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.java @@ -0,0 +1,94 @@ +package dev.ryanhcode.sable.command; + +import com.google.common.base.Strings; +import com.google.common.collect.Lists; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.arguments.ArgumentType; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.suggestion.Suggestions; +import com.mojang.brigadier.suggestion.SuggestionsBuilder; +import net.minecraft.commands.Commands; +import net.minecraft.commands.SharedSuggestionProvider; +import net.minecraft.commands.arguments.coordinates.Vec3Argument; +import net.minecraft.world.phys.Vec3; + +import java.util.Arrays; +import java.util.Collection; +import java.util.List; +import java.util.concurrent.CompletableFuture; +import java.util.function.Predicate; + +import static net.minecraft.commands.arguments.coordinates.WorldCoordinate.ERROR_EXPECTED_DOUBLE; + +public class Vec3ArgumentAbsolute implements ArgumentType +{ + public static Vec3ArgumentAbsolute vec3() { + return new Vec3ArgumentAbsolute(); + } + private static final Collection EXAMPLES = Arrays.asList("0 0 0"); + @Override + public Vec3 parse(StringReader stringReader) throws CommandSyntaxException { + int i = stringReader.getCursor(); + double worldCoordinate = parseDouble(stringReader); + if (stringReader.canRead() && stringReader.peek() == ' ') { + stringReader.skip(); + double worldCoordinate2 = parseDouble(stringReader); + if (stringReader.canRead() && stringReader.peek() == ' ') { + stringReader.skip(); + double worldCoordinate3 = parseDouble(stringReader); + return new Vec3(worldCoordinate,worldCoordinate2,worldCoordinate3); + } else { + stringReader.setCursor(i); + throw Vec3Argument.ERROR_NOT_COMPLETE.createWithContext(stringReader); + } + } else { + stringReader.setCursor(i); + throw Vec3Argument.ERROR_NOT_COMPLETE.createWithContext(stringReader); + } + } + private double parseDouble(StringReader stringReader) throws CommandSyntaxException + { + if (!stringReader.canRead()) { + throw ERROR_EXPECTED_DOUBLE.createWithContext(stringReader); + } else { + int i = stringReader.getCursor(); + double d = stringReader.canRead() && stringReader.peek() != ' ' ? stringReader.readDouble() : (double)0.0F; + String string = stringReader.getString().substring(i, stringReader.getCursor()); + if (string.isEmpty()) { + return 0; + } else { + return d; + } + } + } + + public CompletableFuture listSuggestions(CommandContext commandContext, SuggestionsBuilder suggestionsBuilder) { + if (!(commandContext.getSource() instanceof SharedSuggestionProvider)) { + return Suggestions.empty(); + } else { + String string = suggestionsBuilder.getRemaining(); + List list = Lists.newArrayList(); + Predicate predicate = Commands.createValidator(this::parse); + String[] strings = Strings.isNullOrEmpty(string)? new String[0] : string.split(" "); + + for (int i = 3; i > strings.length; i--) { + StringBuilder s = new StringBuilder(); + for (int j = 0; j < i; j++) { + s.append(j < strings.length ? strings[j] : "0"); + if(j < i-1) + s.append(" "); + } + if(!predicate.test(s.toString()) && i == 3) + break; + list.add(s.toString()); + } + return SharedSuggestionProvider.suggest(list,suggestionsBuilder); + } + } + + @Override + public Collection getExamples() { + return EXAMPLES; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelector.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelector.java new file mode 100644 index 0000000..c74921c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelector.java @@ -0,0 +1,139 @@ +package dev.ryanhcode.sable.command.argument; + +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.Pair; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +import java.util.*; + +public class SubLevelSelector { + + private final SubLevelSelectorType type; + private final List> modifiers; + + public SubLevelSelector(final SubLevelSelectorType type, final List> modifiers) { + this.type = type; + this.modifiers = modifiers; + } + + public SubLevelSelectorType getSelectorType() { + return this.type; + } + + public Collection getSubLevels(final CommandSourceStack source) throws CommandSyntaxException { + if (this.type == null) { + return List.of(); + } + + final ServerLevel level = source.getLevel(); + final ServerSubLevelContainer container = SableCommandHelper.requireSubLevelContainer(source); + + final Iterable containerBodies = container.getAllSubLevels(); + final Collection bodies = new ObjectArrayList<>(); + + for (final ServerSubLevel subLevel : containerBodies) { + bodies.add(subLevel); + } + + if (bodies.isEmpty()) { + return Collections.emptySet(); + } + + final ActiveSableCompanion helper = Sable.HELPER; + final Collection collectedSubLevels = switch (this.type) { + case ALL -> new HashSet<>(bodies); + case NEAREST -> { + double closest = Double.MAX_VALUE; + ServerSubLevel closestSubLevel = null; + + for (final ServerSubLevel body : bodies) { + final Vec3 sourcePosition = helper.projectOutOfSubLevel(source.getLevel(), source.getPosition()); + final double distance = body.logicalPose().position().distance(sourcePosition.x, sourcePosition.y, sourcePosition.z); + + if (distance < closest) { + closest = distance; + closestSubLevel = body; + } + } + + yield Collections.singleton(closestSubLevel); + } + case RANDOM -> { + final List list = new ArrayList<>(bodies); + yield Collections.singleton(list.get(level.random.nextInt(list.size()))); + } + case INSIDE -> { + final ServerSubLevel subLevel = (ServerSubLevel) helper.getContaining(level, source.getPosition()); + if (subLevel != null) { + yield Collections.singleton(subLevel); + } else { + yield Collections.emptySet(); + } + } + case TRACKING -> { + if (source.getEntity() == null) { + yield Collections.emptySet(); + } + + final ServerSubLevel subLevel = (ServerSubLevel) Sable.HELPER.getTrackingSubLevel(source.getEntity()); + + if (subLevel != null) { + yield Collections.singleton(subLevel); + } else { + yield Collections.emptySet(); + } + } + case VIEWED -> { + if (source.getEntity() != null) { + final HitResult res = source.getEntity().pick(100.0, 1.0f, true); + + if (res instanceof final BlockHitResult blockHitResult) { + final ServerSubLevel containing = (ServerSubLevel) helper.getContaining(level, blockHitResult.getBlockPos()); + if (containing != null) { + yield Collections.singleton(containing); + } else { + yield Collections.emptySet(); + } + } else { + yield Collections.emptySet(); + } + } else { + yield Collections.emptySet(); + } + } + case LATEST -> { + final List subLevels = container.getAllSubLevels(); + if (subLevels.isEmpty()) { + yield Collections.emptySet(); + } + yield Collections.singleton(subLevels.getLast()); + } + }; + + List modifiedSubLevels = new ObjectArrayList<>(collectedSubLevels); + + final Vector3d position = new Vector3d(source.getPosition().x, source.getPosition().y, source.getPosition().z); + this.modifiers.sort( + Comparator.comparingInt(a -> a.first().getFilterPriority().ordinal()) + ); + for (final Pair modifier : this.modifiers) { + modifiedSubLevels = modifier.right().apply(modifiedSubLevels, position); + } + + return modifiedSubLevels; + } + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.java new file mode 100644 index 0000000..369dc62 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.java @@ -0,0 +1,99 @@ +package dev.ryanhcode.sable.command.argument; + +import com.mojang.brigadier.Message; +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.Pair; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import net.minecraft.network.chat.Component; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class SubLevelSelectorModifierType { + + private static final Map MODIFIERS_BY_NAME = new Object2ObjectOpenHashMap<>(); + + private static final SimpleCommandExceptionType UNKNOWN_PROPERTY_NAME = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.unknown_property")); + + private final String name; + private final Parser parser; + private final FilterPriority filterPriority; + + public SubLevelSelectorModifierType(final String name, final Parser parser, final FilterPriority priority) { + this.name = name; + this.parser = parser; + this.filterPriority = priority; + } + + public static void registerType(final String name, final Parser parser, final FilterPriority filterPriority) { + if (MODIFIERS_BY_NAME.containsKey(name)) { + throw new IllegalArgumentException("Modifier type " + name + " already registered"); + } + MODIFIERS_BY_NAME.put(name, new SubLevelSelectorModifierType(name, parser, filterPriority)); + } + + public static SubLevelSelectorModifierType getModifier(final String propertyName, final StringReader readerForErrorContext) throws CommandSyntaxException { + if (!MODIFIERS_BY_NAME.containsKey(propertyName)) { + throw UNKNOWN_PROPERTY_NAME.createWithContext(readerForErrorContext); + } + return MODIFIERS_BY_NAME.get(propertyName); + } + + public static void clearRegistry() { + MODIFIERS_BY_NAME.clear(); + } + + public static List> getAllNamesWithTooltip() { + final ArrayList> modifiers = new ArrayList<>(); + for (final SubLevelSelectorModifierType modifier : MODIFIERS_BY_NAME.values()) { + modifiers.add(Pair.of(modifier.name, Component.translatable("argument.sable.sub_level.modifier." + modifier.name))); + } + return modifiers; + } + + public Parser getParser() { + return this.parser; + } + + public FilterPriority getFilterPriority() { + return this.filterPriority; + } + + /** + * Ensures that something like {@code [limit=1,sort=nearest]} applies the sort first, then the limit + */ + public enum FilterPriority { + POSITION, + FILTER, + SORTING, + SORTING_SELECTION, + } + + public interface Parser { + SubLevelSelectorModifierType.Modifier parse(final StringReader value) throws CommandSyntaxException; + } + + public interface Modifier { + /** + * @return the maximum quantity of sub-levels this modifier could ever produce + */ + int getMaxResults(); + + /** + * Applies the modifier to the selected sub-levels + * + * @param selected The currently selected sub-levels + * @param sourcePos The position of the source, should only be modified by modifiers with priority of {@link FilterPriority#POSITION} + * @return The filtered sub-levels + */ + @Nullable List apply(final List selected, Vector3d sourcePos); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.java new file mode 100644 index 0000000..37ca0fe --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.java @@ -0,0 +1,211 @@ +package dev.ryanhcode.sable.command.argument; + +import com.mojang.brigadier.StringReader; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import com.mojang.brigadier.exceptions.SimpleCommandExceptionType; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.command.argument.modifier_type.*; +import net.minecraft.advancements.critereon.MinMaxBounds; +import net.minecraft.network.chat.Component; + +public class SubLevelSelectorModifiers { + + public static final SimpleCommandExceptionType EXPECTED_END_OF_MODIFIER = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.expected_end_of_modifier")); + public static final SimpleCommandExceptionType EXPECTED_POSITIVE_INTEGER = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.expected_positive_integer")); + public static final SimpleCommandExceptionType EXPECTED_POSITIVE_DECIMAL = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.expected_positive_decimal")); + public static final SimpleCommandExceptionType EXPECTED_SORTING_TYPE = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.expected_sorting")); + public static final SimpleCommandExceptionType EXPECTED_POSITIVE_RANGE = + new SimpleCommandExceptionType(Component.translatable("argument.sable.sub_level.expected_positive_range")); + + private static void registerDoubleArgument(final String name, final boolean onlyPositive, final SubLevelDoubleFilter.Factory factory) { + SubLevelSelectorModifierType.registerType(name, (reader) -> { + final int i = reader.getCursor(); + final double value = reader.readDouble(); + if (onlyPositive && value < 0) { + reader.setCursor(i); + throw EXPECTED_POSITIVE_DECIMAL.createWithContext(reader); + } + return factory.create(value); + }, SubLevelSelectorModifierType.FilterPriority.FILTER); + } + + private static void registerDoubleRangeArgument(final String name, final boolean onlyPositive, final SubLevelDoubleRangeFilter.Factory factory) { + SubLevelSelectorModifierType.registerType(name, (reader) -> { + final int i = reader.getCursor(); + final MinMaxBounds.Doubles doubles = MinMaxBounds.Doubles.fromReader(reader); + if (onlyPositive && (( + doubles.min().isPresent() && doubles.min().get() < 0 + ) || ( + doubles.max().isPresent() && doubles.max().get() < 0 + ))) { + reader.setCursor(i); + throw EXPECTED_POSITIVE_RANGE.createWithContext(reader); + } + return factory.create(doubles); + }, SubLevelSelectorModifierType.FilterPriority.FILTER); + } + + public static void registerModifiers() { + registerDoubleRangeArgument("distance", true, SubLevelDoubleRangeFilter.squared( + (subLevel, sourcePos) -> subLevel.logicalPose().position().distanceSquared(sourcePos) + )); + registerDoubleRangeArgument("x", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.logicalPose().position().x() + )); + registerDoubleRangeArgument("y", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.logicalPose().position().y() + )); + registerDoubleRangeArgument("z", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.logicalPose().position().z() + )); + registerDoubleArgument("dx", false, SubLevelDoubleFilter.factory( + (subLevel, sourcePos, value) -> { + final double dx = subLevel.logicalPose().position().x() - sourcePos.x(); + if (value < 0) { + return dx < 0 && dx > value; + } else { + return dx > 0 && dx < value; + } + } + )); + registerDoubleArgument("dy", false, SubLevelDoubleFilter.factory( + (subLevel, sourcePos, value) -> { + final double dy = subLevel.logicalPose().position().y() - sourcePos.y(); + if (value < 0) { + return dy < 0 && dy > value; + } else { + return dy > 0 && dy < value; + } + } + )); + registerDoubleArgument("dz", false, SubLevelDoubleFilter.factory( + (subLevel, sourcePos, value) -> { + final double dz = subLevel.logicalPose().position().z() - sourcePos.z(); + if (value < 0) { + return dz < 0 && dz > value; + } else { + return dz > 0 && dz < value; + } + } + )); + + registerDoubleRangeArgument("vx", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.latestLinearVelocity.x + )); + registerDoubleRangeArgument("vy", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.latestLinearVelocity.y + )); + registerDoubleRangeArgument("vz", false, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.latestLinearVelocity.z + )); + registerDoubleRangeArgument("speed", true, SubLevelDoubleRangeFilter.squared( + (subLevel, sourcePos) -> subLevel.latestLinearVelocity.lengthSquared() + )); + + registerDoubleRangeArgument("mass", true, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.getMassTracker().getMass() + )); + + registerDoubleRangeArgument("volume", true, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.getPlot().getBoundingBox().volume() + )); + registerDoubleRangeArgument("width", true, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.getPlot().getBoundingBox().width() + )); + registerDoubleRangeArgument("height", true, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.getPlot().getBoundingBox().height() + )); + registerDoubleRangeArgument("length", true, SubLevelDoubleRangeFilter.linear( + (subLevel, sourcePos) -> subLevel.getPlot().getBoundingBox().length() + )); + + SubLevelSelectorModifierType.registerType("name", (reader) -> { + final String name = readUntilEndOfModifier(reader); + return new SubLevelNameFilter(name); + }, SubLevelSelectorModifierType.FilterPriority.FILTER); + + SubLevelSelectorModifierType.registerType("sort", (reader) -> { + SubLevelArgumentType.setSuggestions(reader, "nearest", "furthest"); + final String filtering = tryReadString(reader, EXPECTED_SORTING_TYPE, "nearest", "furthest"); + expectEndOfModifier(reader); + return new SubLevelSortModifier(filtering); + }, SubLevelSelectorModifierType.FilterPriority.SORTING); + + SubLevelSelectorModifierType.registerType("limit", (reader) -> { + final int limit = readPositiveIntStrict(reader); + return new SubLevelLimitFilter(limit); + }, SubLevelSelectorModifierType.FilterPriority.SORTING_SELECTION); + } + + /** + * Normal {@link StringReader#readInt()} will try to read a {@code .} as a decimal point and fail, this will ignore all non 0-9 characters and terminate + */ + private static Integer readPositiveIntStrict(final StringReader reader) throws CommandSyntaxException { + final StringBuilder builder = new StringBuilder(); + while (reader.canRead() && reader.peek() >= '0' && reader.peek() <= '9') { + builder.append(reader.read()); + } + if (builder.isEmpty()) { + throw EXPECTED_POSITIVE_INTEGER.createWithContext(reader); + } + return Integer.parseInt(builder.toString()); + } + + private static boolean isEndOfModifier(final StringReader reader) { + return reader.peek() == ',' || reader.peek() == ']'; + } + + private static String readUntilEndOfModifier(final StringReader reader) throws CommandSyntaxException { + final StringBuilder builder = new StringBuilder(); + if (reader.canRead() && reader.peek() == '"') { + reader.skip(); + boolean thereIsNoEscape = false; + while (reader.canRead() && (thereIsNoEscape || reader.peek() != '"')) { + if (!thereIsNoEscape && reader.peek() == '\\') { + thereIsNoEscape = true; + reader.skip(); + } else { + builder.append(reader.read()); + thereIsNoEscape = false; + } + } + if (reader.canRead()) { + reader.skip(); + } else { + throw CommandSyntaxException.BUILT_IN_EXCEPTIONS.readerExpectedEndOfQuote().createWithContext(reader); + } + } else { + while (reader.canRead() && !isEndOfModifier(reader)) { + builder.append(reader.read()); + } + } + return builder.toString(); + } + + private static String tryReadString(final StringReader reader, final SimpleCommandExceptionType exception, final String... accepted) throws CommandSyntaxException { + final StringBuilder builder = new StringBuilder(); + while (reader.canRead()) { + if (isEndOfModifier(reader)) { + throw exception.createWithContext(reader); + } + builder.append(reader.read()); + for (final String s : accepted) { + if (builder.toString().equals(s)) { + return builder.toString(); + } + } + } + throw exception.createWithContext(reader); + } + + private static void expectEndOfModifier(final StringReader reader) throws CommandSyntaxException { + if (!reader.canRead() || !isEndOfModifier(reader)) { + throw EXPECTED_END_OF_MODIFIER.createWithContext(reader); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.java new file mode 100644 index 0000000..4a031bf --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.command.argument; + +import net.minecraft.network.chat.Component; + +public enum SubLevelSelectorType { + ALL('e', Component.translatable("argument.sable.body.selector.all"), false), + NEAREST('n', Component.translatable("argument.sable.body.selector.nearest"), true), + RANDOM('r', Component.translatable("argument.sable.body.selector.random"), true), + VIEWED('v', Component.translatable("argument.sable.body.selector.viewed"), true), + LATEST('l', Component.translatable("argument.sable.body.selector.latest"), true), + TRACKING('t', Component.translatable("argument.sable.body.selector.tracking"), true), + INSIDE('i', Component.translatable("argument.sable.body.selector.inside"), true); + + private final char selector; + private final Component tooltip; + private final boolean single; + + SubLevelSelectorType(final char selector, final Component tooltip, final boolean single) { + this.selector = selector; + this.tooltip = tooltip; + this.single = single; + } + + public static SubLevelSelectorType of(final char c) { + for (final SubLevelSelectorType type : SubLevelSelectorType.values()) { + if (type.selector == c) { + return type; + } + } + + return null; + } + + public char getChar() { + return this.selector; + } + + public Component getTooltip() { + return this.tooltip; + } + + public boolean single() { + return this.single; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.java new file mode 100644 index 0000000..d36d7a1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.java @@ -0,0 +1,59 @@ +package dev.ryanhcode.sable.command.argument.modifier_type; + +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; + +public class SubLevelDoubleFilter implements SubLevelSelectorModifierType.Modifier { + private final double value; + private final DoublePredicate valuePredicate; + + private SubLevelDoubleFilter(final double value, final DoublePredicate valuePredicate) { + this.value = value; + this.valuePredicate = valuePredicate; + } + + public static SubLevelDoubleFilter.Factory factory(final DoublePredicate valuePredicate) { + return new SubLevelDoubleFilter.Factory(valuePredicate); + } + + @Override + public int getMaxResults() { + return Integer.MAX_VALUE; + } + + @Override + public @Nullable List apply(final List selected, final Vector3d sourcePos) { + final List filtered = new ObjectArrayList<>(); + + for (final ServerSubLevel subLevel : selected) { + if (this.valuePredicate.fromSublevel(subLevel, sourcePos, this.value)) { + filtered.add(subLevel); + } + } + + return filtered; + } + + @FunctionalInterface + public interface DoublePredicate { + boolean fromSublevel(ServerSubLevel subLevel, Vector3dc sourcePos, double test); + } + + public static class Factory { + private final DoublePredicate doublePredicate; + + public Factory(final DoublePredicate doublePredicate) { + this.doublePredicate = doublePredicate; + } + + public SubLevelDoubleFilter create(final double value) { + return new SubLevelDoubleFilter(value, this.doublePredicate); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.java new file mode 100644 index 0000000..67d5200 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.java @@ -0,0 +1,75 @@ +package dev.ryanhcode.sable.command.argument.modifier_type; + +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.advancements.critereon.MinMaxBounds; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; + +public class SubLevelDoubleRangeFilter implements SubLevelSelectorModifierType.Modifier { + private final MinMaxBounds.Doubles range; + private final DoubleGetter valueGetter; + private final boolean squared; + + private SubLevelDoubleRangeFilter(final MinMaxBounds.Doubles range, final DoubleGetter valueGetter, final boolean squared) { + this.range = range; + this.valueGetter = valueGetter; + this.squared = squared; + } + + public static SubLevelDoubleRangeFilter.Factory linear(final DoubleGetter valueGetter) { + return new SubLevelDoubleRangeFilter.Factory(valueGetter, false); + } + + public static SubLevelDoubleRangeFilter.Factory squared(final DoubleGetter valueGetter) { + return new SubLevelDoubleRangeFilter.Factory(valueGetter, true); + } + + @Override + public int getMaxResults() { + return Integer.MAX_VALUE; + } + + @Override + public @Nullable List apply(final List selected, final Vector3d sourcePos) { + final List filtered = new ObjectArrayList<>(); + + for (final ServerSubLevel subLevel : selected) { + final double value = this.valueGetter.fromSublevel(subLevel, sourcePos); + if (this.squared) { + if (this.range.matchesSqr(value)) { + filtered.add(subLevel); + } + } else { + if (this.range.matches(value)) { + filtered.add(subLevel); + } + } + } + + return filtered; + } + + @FunctionalInterface + public interface DoubleGetter { + double fromSublevel(ServerSubLevel subLevel, Vector3dc sourcePos); + } + + public static class Factory { + private final DoubleGetter doubleGetter; + private final boolean squared; + + public Factory(final DoubleGetter doubleGetter, final boolean squared) { + this.doubleGetter = doubleGetter; + this.squared = squared; + } + + public SubLevelDoubleRangeFilter create(final MinMaxBounds.Doubles range) { + return new SubLevelDoubleRangeFilter(range, this.doubleGetter, this.squared); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.java new file mode 100644 index 0000000..c883280 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.command.argument.modifier_type; + +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.List; + +public class SubLevelLimitFilter implements SubLevelSelectorModifierType.Modifier { + private final int limit; + + public SubLevelLimitFilter(final int limit) { + this.limit = limit; + } + + @Override + public int getMaxResults() { + return this.limit; + } + + @Override + public @Nullable List apply(final List selected, final Vector3d sourcePos) { + if (selected.size() > this.limit) { + return new ObjectArrayList<>(selected.subList(0, this.limit)); + } + return selected; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.java new file mode 100644 index 0000000..f552a0f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.command.argument.modifier_type; + +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.List; + +public class SubLevelNameFilter implements SubLevelSelectorModifierType.Modifier { + private final String name; + + public SubLevelNameFilter(final String name) { + this.name = name; + } + + @Override + public int getMaxResults() { + return Integer.MAX_VALUE; + } + + @Override + public @Nullable List apply(final List selected, final Vector3d sourcePos) { + final List filtered = new ObjectArrayList<>(); + for (final ServerSubLevel subLevel : selected) { + if (subLevel.getName() != null && subLevel.getName().equals(this.name)) { + filtered.add(subLevel); + } + } + return filtered; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.java b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.java new file mode 100644 index 0000000..338a04e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.command.argument.modifier_type; + +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifierType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.Comparator; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +public class SubLevelSortModifier implements SubLevelSelectorModifierType.Modifier { + + private final String filtering; + + public SubLevelSortModifier(final String filtering) { + this.filtering = filtering; + } + + @Override + public int getMaxResults() { + return Integer.MAX_VALUE; + } + + @Override + public @Nullable List apply(final List selected, final Vector3d sourcePos) { + final Map distances = selected.stream().collect(Collectors.toMap( + subLevel -> subLevel, + subLevel -> subLevel.logicalPose().position() + .distanceSquared(sourcePos.x, sourcePos.y, sourcePos.z) + )); + if (this.filtering.equals("nearest")) { + selected.sort(Comparator.comparingDouble(distances::get)); + } else if (this.filtering.equals("furthest")) { + selected.sort(Comparator.comparingDouble(subLevel -> -distances.get(subLevel))); + } + + return selected; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.java b/common/src/main/java/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.java new file mode 100644 index 0000000..b5672a4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.java @@ -0,0 +1,69 @@ +package dev.ryanhcode.sable.command.data_accessor; + +import com.mojang.brigadier.builder.ArgumentBuilder; +import com.mojang.brigadier.context.CommandContext; +import com.mojang.brigadier.exceptions.CommandSyntaxException; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.commands.arguments.NbtPathArgument; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.nbt.Tag; +import net.minecraft.network.chat.Component; +import net.minecraft.server.commands.data.DataAccessor; +import net.minecraft.server.commands.data.DataCommands; + +import java.util.Locale; +import java.util.function.Function; + +public class SubLevelDataAccessor implements DataAccessor { + public static final Function PROVIDER = string -> new DataCommands.DataProvider() { + @Override + public DataAccessor access(final CommandContext commandContext) throws CommandSyntaxException { + return new SubLevelDataAccessor((ServerSubLevel) SubLevelArgumentType.getSingleSubLevel(commandContext, string)); + } + + @Override + public ArgumentBuilder wrap( + final ArgumentBuilder argumentBuilder, final Function, ArgumentBuilder> function + ) { + return argumentBuilder.then( + Commands.literal("sub_level").then(function.apply(Commands.argument(string, SubLevelArgumentType.singleSubLevel()))) + ); + } + }; + private final ServerSubLevel subLevel; + + public SubLevelDataAccessor(final ServerSubLevel subLevel) { + this.subLevel = subLevel; + } + + @Override + public void setData(final CompoundTag compoundTag) { + this.subLevel.setUserDataTag(compoundTag); + } + + @Override + public CompoundTag getData() { + final CompoundTag userTag = this.subLevel.getUserDataTag(); + return userTag != null ? userTag : new CompoundTag(); + } + + @Override + public Component getModifiedSuccess() { + return Component.translatable("commands.data.sub_level.modified", this.subLevel.toString()); + } + + @Override + public Component getPrintSuccess(final Tag tag) { + return Component.translatable("commands.data.sub_level.query", this.subLevel.toString(), NbtUtils.toPrettyComponent(tag)); + } + + @Override + public Component getPrintSuccess(final NbtPathArgument.NbtPath nbtPath, final double d, final int i) { + return Component.translatable( + "commands.data.sub_level.get", nbtPath.asString(), this.subLevel.toString(), String.format(Locale.ROOT, "%.2f", d), i + ); + }} diff --git a/common/src/main/java/dev/ryanhcode/sable/compatibility/SableIrisCompat.java b/common/src/main/java/dev/ryanhcode/sable/compatibility/SableIrisCompat.java new file mode 100644 index 0000000..cc8a93c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/compatibility/SableIrisCompat.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.compatibility; + +import dev.ryanhcode.sable.mixinterface.compatibility.iris.ExtendedShaderExtension; +import net.minecraft.client.renderer.ShaderInstance; + +public class SableIrisCompat { + + public static void refreshModelMatrices(final ShaderInstance shader) { + if (shader instanceof final ExtendedShaderExtension ext) { + ext.sable$refreshModelMatrices(); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/config/SubLevelSettingsScreen.java b/common/src/main/java/dev/ryanhcode/sable/config/SubLevelSettingsScreen.java new file mode 100644 index 0000000..818bc23 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/config/SubLevelSettingsScreen.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.config; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.physics.config.PhysicsConfigData; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.client.OptionInstance; +import net.minecraft.client.Options; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.options.OptionsSubScreen; +import net.minecraft.client.server.IntegratedServer; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; + +public class SubLevelSettingsScreen extends OptionsSubScreen { + public static final Component TITLE = Component.translatable("options.sable_menu"); + + public SubLevelSettingsScreen(final Screen optionsScreen, final Options options, final Component component) { + super(optionsScreen, options, component); + } + + @Override + protected void addOptions() { + final IntegratedServer singleplayerServer = this.minecraft.getSingleplayerServer(); + + + this.list.addBig(new OptionInstance<>( + "options.physics_steps", + OptionInstance.cachedConstantTooltip(Component.translatable("options.physics_steps.tooltip")), + (component, substeps) -> Options.genericValueLabel(component, Component.translatable("options.physics_steps_template", substeps * 20)), + new OptionInstance.IntRange(1, 10, false), + SubLevelContainer.getContainer(singleplayerServer.overworld()).physicsSystem().getConfig().substepsPerTick, + steps -> { + for (final ServerLevel level : singleplayerServer.getAllLevels()) { + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer(level).physicsSystem(); + final PhysicsConfigData config = physicsSystem.getConfig(); + config.substepsPerTick = steps; + physicsSystem.getPipeline().updateConfigFrom(config); + } + } + )); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/debug/GizmoScreen.java b/common/src/main/java/dev/ryanhcode/sable/debug/GizmoScreen.java new file mode 100644 index 0000000..ca3f8bc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/debug/GizmoScreen.java @@ -0,0 +1,119 @@ +package dev.ryanhcode.sable.debug; + +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.network.packets.tcp.ServerboundGizmoMoveSubLevelPacket; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.network.VeilPacketManager; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.GuiGraphics; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.Direction; +import net.minecraft.network.chat.Component; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.UUID; + +public class GizmoScreen extends Screen { + private boolean dragging; + private @Nullable GizmoSelection activeSelection; + + protected GizmoScreen() { + super(Component.literal("Gizmo Mode")); + } + + @Override + public void render(final GuiGraphics guiGraphics, final int i, final int j, final float f) { +// super.render(guiGraphics, i, j, f); + } + + @Override + public boolean mouseClicked(final double d, final double e, final int i) { + final SableClientGizmoHandler gizmoHandler = SableClient.GIZMO_HANDLER; + if (gizmoHandler.getSelection() != null) { + this.activeSelection = gizmoHandler.getSelection(); + this.dragging = true; + } + + return super.mouseClicked(d, e, i); + } + + @Override + public boolean mouseReleased(final double d, final double e, final int i) { + this.dragging = false; + this.activeSelection = null; + + return super.mouseReleased(d, e, i); + } + + @Override + public boolean mouseDragged(final double x, final double y, final int i, final double f, final double g) { + final SableClientGizmoHandler gizmoHandler = SableClient.GIZMO_HANDLER; + + if (this.dragging) { + final Minecraft minecraft = Minecraft.getInstance(); + final ClientLevel level = minecraft.level; + final SubLevelContainer container = SubLevelContainer.getContainer(level); + assert container != null; + + final UUID subLevelID = this.activeSelection.subLevel(); + final SubLevel subLevel = container.getSubLevel(subLevelID); + if (subLevel == null) { + this.cancel(); + return super.mouseDragged(x, y, i, f, g); + } + + final int ordinal = (this.activeSelection.axis().ordinal() + 1) % 3; + final Direction.Axis axis = Direction.Axis.VALUES[ordinal]; + + final Vector3d dragNormal = JOMLConversion.atLowerCornerOf(Direction.get(Direction.AxisDirection.POSITIVE, this.activeSelection.axis()).getNormal()); + + final Vector3d pos = JOMLConversion.toJOML(minecraft.player.getEyePosition()); + final Vector3d relativePos = new Vector3d(pos).sub(subLevel.logicalPose().position()); + + final Vector3d planeNormal = JOMLConversion.atLowerCornerOf(Direction.get(Direction.AxisDirection.POSITIVE, axis).getNormal()); + if (relativePos.dot(planeNormal) < 0.0) { + planeNormal.negate(); + } + + final Vector3d dir = JOMLConversion.toJOML(gizmoHandler.getMouseDir()); + + final boolean hitsPlane = dir.dot(planeNormal) < 0.0; + + if (hitsPlane) { + final Vector3d negatedPlaneNormal = planeNormal.negate(new Vector3d()); + final double d = planeNormal.dot(relativePos); + + final double rayLength = d / dir.dot(negatedPlaneNormal); + + final Vector3d hitPos = new Vector3d(pos).fma(rayLength, dir); + + final Vector3d subLevelPos = new Vector3d(subLevel.logicalPose().position()); + subLevelPos.fma(-subLevelPos.dot(dragNormal), dragNormal, subLevelPos); + subLevelPos.fma(hitPos.dot(dragNormal), dragNormal, subLevelPos); + + VeilPacketManager.server().sendPacket(new ServerboundGizmoMoveSubLevelPacket(this.activeSelection.subLevel(), subLevelPos)); + } + } + + return super.mouseDragged(x, y, i, f, g); + } + + @Override + public boolean isPauseScreen() { + return false; + } + + private void cancel() { + this.dragging = false; + this.activeSelection = null; + } + + @Override + public void onClose() { + SableClient.GIZMO_HANDLER.stop(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/debug/GizmoSelection.java b/common/src/main/java/dev/ryanhcode/sable/debug/GizmoSelection.java new file mode 100644 index 0000000..d0ff8a0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/debug/GizmoSelection.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.debug; + +import net.minecraft.core.Direction; + +import java.util.UUID; + +public record GizmoSelection(UUID subLevel, Direction.Axis axis) { +} diff --git a/common/src/main/java/dev/ryanhcode/sable/debug/SableClientGizmoHandler.java b/common/src/main/java/dev/ryanhcode/sable/debug/SableClientGizmoHandler.java new file mode 100644 index 0000000..89d4c0c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/debug/SableClientGizmoHandler.java @@ -0,0 +1,215 @@ +package dev.ryanhcode.sable.debug; + +import com.mojang.blaze3d.platform.Window; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.client.render.MatrixStack; +import foundry.veil.api.event.VeilRenderLevelStageEvent; +import foundry.veil.platform.VeilEventPlatform; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.MouseHandler; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.client.renderer.debug.DebugRenderer; +import net.minecraft.core.Direction; +import net.minecraft.core.Vec3i; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.*; + +import java.lang.Math; + + +/** + * Handler for debug client gizmos + */ +public class SableClientGizmoHandler { + + private Vec3 mouseDir = Vec3.ZERO; + private boolean enabled = false; + private @Nullable GizmoSelection selection; + + public void init() { + VeilEventPlatform.INSTANCE.onVeilRenderLevelStage(this::onRenderStage); + } + + public static Vec3 getRay(final Matrix4fc projectionMatrix, final float normalizedMouseX, final float normalizedMouseY) { + final Vector4f clipCoords = new Vector4f(-normalizedMouseX, -normalizedMouseY, -1.0F, 0.0F); + final Vector4f eyeSpace = toEyeCoords(projectionMatrix, clipCoords); + return new Vec3(eyeSpace.x, eyeSpace.y, eyeSpace.z).normalize(); + } + + private static Vector4f toEyeCoords(final Matrix4fc projectionMatrix, final Vector4fc clipCoords) { + final Matrix4f inverse = (projectionMatrix).invert(new Matrix4f()); + final Vector4f result = new Vector4f(clipCoords.x(), clipCoords.y(), clipCoords.z(), clipCoords.w()); + result.mul(inverse); + result.set(result.x(), result.y(), 1.0F, 0.0F); + return result; + } + + /** + * Gets the current mouse hover selection + * @return the current gizmo selection, or null if none is found + */ + public @Nullable GizmoSelection getSelection() { + return this.selection; + } + + + private void onRenderStage(final VeilRenderLevelStageEvent.Stage stage, + final LevelRenderer levelRenderer, + final MultiBufferSource.BufferSource bufferSource, + final MatrixStack matrixStack, + final Matrix4fc modelViewMat, + final Matrix4fc projMat, + final int renderTicks, + final DeltaTracker deltaTracker, + final Camera camera, + final Frustum frustum) { + + if (stage != VeilRenderLevelStageEvent.Stage.AFTER_WEATHER) { + return; + } + + if (!this.enabled) return; + + final float partialTicks = deltaTracker.getGameTimeDeltaPartialTick(false); + + final Minecraft minecraft = Minecraft.getInstance(); + final ClientLevel level = minecraft.level; + final Vec3 cameraPos = camera.getPosition(); + final SubLevelContainer container = SubLevelContainer.getContainer(level); + assert container != null; + + this.updateMouseDir(minecraft, partialTicks); + this.updateSelection(); + + final PoseStack poseStack = new PoseStack(); + for (final SubLevel subLevel : container.getAllSubLevels()) { + final ClientSubLevel clientSubLevel = (ClientSubLevel) subLevel; + + final Pose3dc renderPose = clientSubLevel.renderPose(); + final Vector3d renderPos = renderPose.position().sub(cameraPos.x, cameraPos.y, cameraPos.z, new Vector3d()); + + poseStack.pushPose(); + poseStack.translate(renderPos.x, renderPos.y, renderPos.z); + + DebugRenderer.renderFilledBox(poseStack, bufferSource, new AABB(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f).inflate(0.1d), 1.0f, 1.0f, 1.0f, 0.4f); + + for (final Direction.Axis axis : Direction.Axis.VALUES) { + final Direction dir = Direction.get(Direction.AxisDirection.POSITIVE, axis); + final Vec3i normal = dir.getNormal(); + + float r = (float) (Math.max(normal.getX(), 0.2) * 0.8); + float g = (float) (Math.max(normal.getY(), 0.2) * 0.8); + float b = (float) (Math.max(normal.getZ(), 0.2) * 0.8); + + final Vec3 normalD = new Vec3(normal.getX(), normal.getY(), normal.getZ()); + final Vec3 expandDir = normalD + .scale(2.0f); + + final float inflation = 0.04f; + final AABB bb = new AABB(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f).inflate(inflation).move(normalD.scale(0.125)).expandTowards(expandDir); + + + if (this.selection != null && this.selection.subLevel().equals(clientSubLevel.getUniqueId()) && this.selection.axis() == axis) { + r *= 1.2f; + g *= 1.2f; + b *= 1.2f; + } + + + DebugRenderer.renderFilledBox(poseStack, bufferSource, bb, r, g, b, 0.9f); + } + poseStack.popPose(); + } + } + + private void updateSelection() { + final Minecraft minecraft = Minecraft.getInstance(); + final ClientLevel level = minecraft.level; + final Vec3 cameraPos = minecraft.gameRenderer.getMainCamera().getPosition(); + + final PoseStack poseStack = new PoseStack(); + + final SubLevelContainer container = SubLevelContainer.getContainer(level); + assert container != null; + + for (final SubLevel subLevel : container.getAllSubLevels()) { + final ClientSubLevel clientSubLevel = (ClientSubLevel) subLevel; + + final Pose3dc renderPose = clientSubLevel.renderPose(); + final Vector3d renderPos = renderPose.position().sub(cameraPos.x, cameraPos.y, cameraPos.z, new Vector3d()); + + poseStack.pushPose(); + poseStack.translate(renderPos.x, renderPos.y, renderPos.z); + + for (final Direction.Axis axis : Direction.Axis.VALUES) { + final Direction dir = Direction.get(Direction.AxisDirection.POSITIVE, axis); + final Vec3i normal = dir.getNormal(); + + final Vec3 normalD = new Vec3(normal.getX(), normal.getY(), normal.getZ()); + final Vec3 expandDir = normalD + .scale(2.0f); + + final float inflation = 0.04f; + final AABB bb = new AABB(0.0f, 0.0f, 0.0f, 0.0f, 0.0f, 0.0f).inflate(inflation).move(normalD.scale(0.125)).expandTowards(expandDir); + + if (bb.move(renderPos.x, renderPos.y, renderPos.z).inflate(0.1f).clip(Vec3.ZERO, this.mouseDir.scale(100.0)).isPresent()) { + this.selection = new GizmoSelection(clientSubLevel.getUniqueId(), axis); + return; + } + } + } + + // No selection found + this.selection = null; + } + + private void updateMouseDir(final Minecraft minecraft, final float partialTicks) { + final LocalPlayer player = minecraft.player; + + final Window window = minecraft.getWindow(); + final MouseHandler mouseHandler = minecraft.mouseHandler; + + final double xPos = mouseHandler.xpos() / (double) window.getScreenWidth() * 2.0 - 1.0; + final double yPos = mouseHandler.ypos() / (double) window.getScreenHeight() * 2.0 - 1.0; + + final GameRenderer gameRenderer = minecraft.gameRenderer; + final double fov = gameRenderer.getFov(gameRenderer.getMainCamera(), partialTicks, true); + final Matrix4f proj = gameRenderer.getProjectionMatrix(fov); + + final float yaw = player.getViewYRot(partialTicks); + final float pitch = player.getViewXRot(partialTicks); + + this.mouseDir = getRay(proj, (float) xPos, (float) yPos).xRot((float) -Math.toRadians(pitch)).yRot((float) -Math.toRadians(yaw)); + } + + public void start() { + final Minecraft minecraft = Minecraft.getInstance(); + minecraft.setScreen(new GizmoScreen()); + this.enabled = true; + } + + public void stop() { + final Minecraft minecraft = Minecraft.getInstance(); + if (minecraft.screen instanceof GizmoScreen) { + minecraft.setScreen(null); + } + this.enabled = false; + } + + public Vec3 getMouseDir() { + return this.mouseDir; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/index/SableAttributes.java b/common/src/main/java/dev/ryanhcode/sable/index/SableAttributes.java new file mode 100644 index 0000000..dcd27fe --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/index/SableAttributes.java @@ -0,0 +1,44 @@ +package dev.ryanhcode.sable.index; + +import com.google.common.collect.ImmutableMap; +import net.minecraft.core.Holder; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.ai.attributes.*; + +import java.util.Map; +import java.util.Objects; + +public class SableAttributes { + + public static final String PUNCH_STRENGTH_NAME = "player.sub_level_punch_strength"; + public static final Attribute PUNCH_STRENGTH_ATTRIBUTE = new RangedAttribute("attribute.name." + PUNCH_STRENGTH_NAME, 1.0, -100.0, 100.0).setSyncable(true); + + public static final String PUNCH_COOLDOWN_NAME = "player.sub_level_punch_cooldown"; + public static final Attribute PUNCH_COOLDOWN_ATTRIBUTE = new RangedAttribute("attribute.name." + PUNCH_COOLDOWN_NAME, 0.0, 0, 10).setSyncable(true); + + /** + * Assigned by loader-specific code + */ + public static Holder PUNCH_STRENGTH; + public static Holder PUNCH_COOLDOWN; + + public static void register() { + + final AttributeSupplier supplier = DefaultAttributes.getSupplier(EntityType.PLAYER); + + final Map, AttributeInstance> additionalInstances = AttributeSupplier.builder().add(PUNCH_STRENGTH).add(PUNCH_COOLDOWN).build().instances; + + // java was tweaking with generics + //noinspection unchecked,rawtypes + supplier.instances = (Map, AttributeInstance>) (ImmutableMap) ImmutableMap.builder() + .putAll(supplier.instances) + .putAll(additionalInstances) + .buildKeepingLast(); + } + + public static int getPushCooldownTicks(final LivingEntity entity) { + return Mth.ceil(Objects.requireNonNull(entity.getAttribute(PUNCH_COOLDOWN)).getValue() * 20); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/index/SableTags.java b/common/src/main/java/dev/ryanhcode/sable/index/SableTags.java new file mode 100644 index 0000000..22dad65 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/index/SableTags.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.index; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.registries.Registries; +import net.minecraft.tags.TagKey; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.block.Block; + +public class SableTags { + public static final TagKey> RETAIN_IN_SUB_LEVEL = TagKey.create( + Registries.ENTITY_TYPE, + Sable.sablePath("retain_in_sub_level") + ); + public static final TagKey> DESTROY_WITH_SUB_LEVEL = TagKey.create( + Registries.ENTITY_TYPE, + Sable.sablePath("destroy_with_sub_level") + ); + public static final TagKey> DESTROY_WHEN_LEAVING_PLOT = TagKey.create( + Registries.ENTITY_TYPE, + Sable.sablePath("destroy_when_leaving_plot") + ); + + public static final TagKey ALWAYS_CHUNK_RENDERING = TagKey.create( + Registries.BLOCK, + Sable.sablePath("always_chunk_rendering") + ); + + public static final TagKey BOUNCY = TagKey.create( + Registries.BLOCK, + Sable.sablePath("bouncy") + ); + + public static final TagKey PADDLES = TagKey.create( + Registries.ITEM, + Sable.sablePath("paddles") + ); + + public static void register() { + // no-op + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/index/SableToasts.java b/common/src/main/java/dev/ryanhcode/sable/index/SableToasts.java new file mode 100644 index 0000000..e5a1304 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/index/SableToasts.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.index; + +import net.minecraft.client.gui.components.toasts.SystemToast; + +public class SableToasts { + public static final SystemToast.SystemToastId SUB_LEVEL_LOAD_FAILURE = new SystemToast.SystemToastId(); + public static final SystemToast.SystemToastId SUB_LEVEL_SAVE_FAILURE = new SystemToast.SystemToastId(); + public static final SystemToast.SystemToastId SUB_LEVEL_PHYSICS_FAILURE = new SystemToast.SystemToastId(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.java new file mode 100644 index 0000000..1265e07 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.java @@ -0,0 +1,120 @@ +package dev.ryanhcode.sable.mixin; + +import com.mojang.logging.LogUtils; +import dev.ryanhcode.sable.annotation.MixinModVersionConstraint; +import dev.ryanhcode.sable.platform.SableLoaderPlatform; +import foundry.veil.Veil; +import foundry.veil.api.compat.SodiumCompat; +import it.unimi.dsi.fastutil.objects.Object2BooleanMap; +import it.unimi.dsi.fastutil.objects.Object2BooleanOpenHashMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import org.apache.maven.artifact.versioning.ArtifactVersion; +import org.apache.maven.artifact.versioning.DefaultArtifactVersion; +import org.apache.maven.artifact.versioning.InvalidVersionSpecificationException; +import org.apache.maven.artifact.versioning.VersionRange; +import org.objectweb.asm.Type; +import org.objectweb.asm.tree.AnnotationNode; +import org.objectweb.asm.tree.ClassNode; +import org.slf4j.Logger; +import org.spongepowered.asm.mixin.extensibility.IMixinConfigPlugin; +import org.spongepowered.asm.mixin.extensibility.IMixinInfo; +import org.spongepowered.asm.service.MixinService; +import org.spongepowered.asm.util.Annotations; + +import java.util.List; +import java.util.Set; + +public abstract class AbstractSableMixinPlugin implements IMixinConfigPlugin { + public static final Logger LOGGER = LogUtils.getLogger(); + private final Object2BooleanMap modLoadedCache = new Object2BooleanOpenHashMap<>(); + private boolean sodiumPresent; + + @Override + public void onLoad(final String mixinPackage) { + this.sodiumPresent = SodiumCompat.isLoaded(); + + LOGGER.info("Using {} renderer mixins", this.sodiumPresent ? "Sodium" : "Vanilla"); + } + + @Override + public String getRefMapperConfig() { + return null; + } + + @Override + public boolean shouldApplyMixin(final String targetClassName, final String mixinClassName) { + // TODO: Housekeeping + if (mixinClassName.startsWith("dev.ryanhcode.sable.mixin.sublevel_render.impl")) { + return this.sodiumPresent ? mixinClassName.startsWith("dev.ryanhcode.sable.mixin.sublevel_render.impl.sodium") : mixinClassName.startsWith("dev.ryanhcode.sable.mixin.sublevel_render.impl.vanilla"); + } + + if (mixinClassName.startsWith("dev.ryanhcode.sable.mixin.compatibility.") || + mixinClassName.startsWith("dev.ryanhcode.sable.neoforge.mixin.compatibility.") || + mixinClassName.startsWith("dev.ryanhcode.sable.fabric.mixin.compatibility.") + ) { + final String[] parts = mixinClassName.split("\\."); + if (parts.length < 5) { + return true; + } + + final String modId = parts[3].equals("mixin") ? parts[5] : parts[6]; + + final boolean isModLoaded = this.modLoadedCache.computeIfAbsent(modId, x -> Veil.platform().isModLoaded(modId)); + return isModLoaded && MixinConstraints.handleClassAnnotation(mixinClassName, modId); + } + + return true; + } + + @Override + public void acceptTargets(final Set myTargets, final Set otherTargets) { + } + + @Override + public List getMixins() { + return null; + } + + @Override + public void preApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + } + + @Override + public void postApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + } + + // Constraint handling + static class MixinConstraints { + private static final Object2ObjectMap MOD_VERSION_CACHE = new Object2ObjectOpenHashMap<>(); + + // Looks for if there's a @MixinModVersionConstraint annotation which declares a range for when a mixin should be loaded + static boolean handleClassAnnotation(final String mixinClassName, final String modId) { + try { + final List nodes = MixinService.getService().getBytecodeProvider().getClassNode(mixinClassName).visibleAnnotations; + if (nodes == null) + return true; + + return shouldApply(nodes, modId); + } catch (final Throwable e) { + throw new RuntimeException(e); + } + } + + static boolean shouldApply(final List nodes, final String modId) throws InvalidVersionSpecificationException { + for (final AnnotationNode node : nodes) { + if (node.desc.equals(Type.getDescriptor(MixinModVersionConstraint.class))) { + final String range = Annotations.getValue(node, "value"); + final VersionRange versionRange = VersionRange.createFromVersionSpec(range); + + final String modVersion = MOD_VERSION_CACHE.computeIfAbsent(modId, x -> SableLoaderPlatform.INSTANCE.getModVersion(modId)); + final ArtifactVersion artifactVersion = new DefaultArtifactVersion(modVersion); + + return versionRange.containsVersion(artifactVersion); + } + } + + return true; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.java new file mode 100644 index 0000000..332e64e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.assembly; + +import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.Clearable; +import net.minecraft.world.level.block.entity.AbstractFurnaceBlockEntity; +import net.minecraft.world.level.block.entity.BaseContainerBlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(AbstractFurnaceBlockEntity.class) +public abstract class AbstractFurnaceBlockEntityMixin extends BaseContainerBlockEntity implements Clearable { + + @Shadow @Final private Object2IntOpenHashMap recipesUsed; + + protected AbstractFurnaceBlockEntityMixin(final BlockEntityType blockEntityType, final BlockPos blockPos, final BlockState blockState) { + super(blockEntityType, blockPos, blockState); + } + + @Override + public void clearContent() { + super.clearContent(); + this.recipesUsed.clear(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.java new file mode 100644 index 0000000..43b1333 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.mixin.block_decal_render; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyConstant; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Changes the distance block damage is rendered from, and transforms block damage rendering for sublevels. + */ +@Mixin(LevelRenderer.class) +public abstract class LevelRendererMixin { + + // Storage vectors to avoid repeated allocation + private final @Unique Quaternionf sable$orientationStorage = new Quaternionf(); + + @Shadow + @Nullable + private ClientLevel level; + + @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;last()Lcom/mojang/blaze3d/vertex/PoseStack$Pose;", shift = At.Shift.BEFORE)) + private void sable$preRenderBlockDamage(final DeltaTracker deltaTracker, final boolean bl, final Camera camera, final GameRenderer gameRenderer, final LightTexture lightTexture, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci, @Local(ordinal = 0) final PoseStack ps, @Local(ordinal = 0) final BlockPos pos) { + + final Vec3 plotPos = new Vec3(pos.getX(), pos.getY(), pos.getZ()); + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, plotPos); + + if (subLevel == null) { + return; + } + + final Pose3dc renderPose = subLevel.renderPose(); + final Vec3 cameraPos = camera.getPosition(); + final Vec3 projectedPos = renderPose.transformPosition(plotPos); + + ps.popPose(); + ps.pushPose(); + + ps.translate(projectedPos.x - cameraPos.x, projectedPos.y - cameraPos.y, projectedPos.z - cameraPos.z); + ps.mulPose(this.sable$orientationStorage.set(renderPose.orientation())); + } + + @ModifyConstant(method = "renderLevel", constant = @Constant(doubleValue = 1024.0, ordinal = 0)) + private double sable$blockDamageDistance(final double originalBlockDamageDistanceConstant) { + return Double.MAX_VALUE; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.java new file mode 100644 index 0000000..e30d9b1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.mixin.block_decal_render; + +import net.minecraft.server.level.ServerLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.ModifyConstant; + +/** + * Fixes {@link net.minecraft.network.protocol.game.ClientboundBlockDestructionPacket ClientboundBlockDestructionPackets} not being sent to players outside of a hardcoded range + */ +@Mixin(ServerLevel.class) +public class ServerLevelMixin { + + @ModifyConstant(method = "destroyBlockProgress", constant = @Constant(doubleValue = 1024.0, ordinal = 0)) + private double sable$blockDamageDistance(final double originalBlockDamageDistanceConstant) { + return Double.MAX_VALUE; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.java new file mode 100644 index 0000000..408b353 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.java @@ -0,0 +1,152 @@ +package dev.ryanhcode.sable.mixin.block_placement; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.api.math.LevelReusedVectors; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.Mth; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.item.context.UseOnContext; +import net.minecraft.world.phys.BlockHitResult; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Fixes the rotation of block placement to take into account orientation + *

+ * TODO: account for differing collision shapes + */ +@Mixin(BlockPlaceContext.class) +public abstract class BlockPlaceContextMixin extends UseOnContext { + + @Unique + private final LevelReusedVectors sable$sink = new LevelReusedVectors(); + @Shadow + protected boolean replaceClicked; + + public BlockPlaceContextMixin(final Player pPlayer, final InteractionHand pHand, final BlockHitResult pHitResult) { + super(pPlayer, pHand, pHitResult); + } + + @Shadow + public abstract BlockPos getClickedPos(); + + @Redirect(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/Direction;getFacingAxis(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction;")) + private Direction sable$getFacingAxis(final Entity player, final Direction.Axis axis) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.getLevel(), this.getClickedPos()); + + if (subLevel != null) { + SubLevelHelper.pushEntityLocal(subLevel, player); + final Direction facingAxis = Direction.getFacingAxis(player, axis); + SubLevelHelper.popEntityLocal(subLevel, player); + return facingAxis; + } + + return Direction.getFacingAxis(player, axis); + } + + @Redirect(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/Direction;orderedByNearest(Lnet/minecraft/world/entity/Entity;)[Lnet/minecraft/core/Direction;")) + private Direction[] sable$orderedByNearest(final Entity player) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.getLevel(), this.getClickedPos()); + + if (subLevel != null) { + SubLevelHelper.pushEntityLocal(subLevel, player); + final Direction[] nearest = Direction.orderedByNearest(player); + SubLevelHelper.popEntityLocal(subLevel, player); + return nearest; + } + + return Direction.orderedByNearest(player); + } + + @Inject(method = "canPlace", at = @At("HEAD"), cancellable = true) + private void sable$canPlace(final CallbackInfoReturnable cir) { + final BlockPos clicked = this.getClickedPos(); + final SubLevel subLevel = Sable.HELPER.getContaining(this.getLevel(), this.getClickedPos()); + + final BoundingBox3d placedBoxBoundingBox = new BoundingBox3d(clicked); + final Quaterniond placedBoxOrientation = new Quaterniond(); + + final Vector3d placedBoxPosition = new Vector3d(clicked.getX() + 0.5, clicked.getY() + 0.5, clicked.getZ() + 0.5); + + if (subLevel != null) { + subLevel.logicalPose().transformPosition(placedBoxPosition); + placedBoxOrientation.set(subLevel.logicalPose().orientation()); + + placedBoxBoundingBox.transform(subLevel.logicalPose(), placedBoxBoundingBox); + } + + final Iterable subLevels = Sable.HELPER.getAllIntersecting(this.getLevel(), placedBoxBoundingBox); + + for (final SubLevel otherSubLevel : subLevels) { + if (otherSubLevel == subLevel) { + continue; + } + + final boolean cancelled = this.sable$intersectBlocks(cir, otherSubLevel, placedBoxBoundingBox, this.sable$sink, placedBoxPosition, placedBoxOrientation); + if (cancelled) + return; + } + + this.sable$intersectBlocks(cir, null, placedBoxBoundingBox, this.sable$sink, placedBoxPosition, placedBoxOrientation); + } + + @Unique + private boolean sable$intersectBlocks(final CallbackInfoReturnable cir, @Nullable final SubLevel otherSubLevel, final BoundingBox3dc placedBoxBoundingBox, final LevelReusedVectors sink, final Vector3d placedBoxPosition, final Quaterniond placedBoxOrientation) { + final BoundingBox3d localBase = placedBoxBoundingBox.expand(0.8660254038 - 0.5, new BoundingBox3d()); + + if (otherSubLevel != null) { + localBase.transformInverse(otherSubLevel.logicalPose(), localBase); + } + + // all blocks + final Iterable stream = BlockPos.betweenClosed(Mth.floor(localBase.minX()), + Mth.floor(localBase.minY()), + Mth.floor(localBase.minZ()), + Mth.floor(localBase.maxX()), + Mth.floor(localBase.maxY()), + Mth.floor(localBase.maxZ())); + + for (final BlockPos position : stream) { + final boolean replaced = replaceClicked || this.getLevel().getBlockState(position).canBeReplaced((BlockPlaceContext) (Object) this); + + Vector3d inWorldBoxPosition = new Vector3d(position.getX() + 0.5, position.getY() + 0.5, position.getZ() + 0.5); + final Quaterniond inWorldBoxOrientation = new Quaterniond(); + + if (otherSubLevel != null) { + inWorldBoxPosition = otherSubLevel.logicalPose().transformPosition(inWorldBoxPosition); + inWorldBoxOrientation.set(otherSubLevel.logicalPose().orientation()); + } + + final OrientedBoundingBox3d inWorldBox = new OrientedBoundingBox3d( + inWorldBoxPosition, + new Vector3d(1.0, 1.0, 1.0), inWorldBoxOrientation, sink); + + final OrientedBoundingBox3d justPlacedBox = new OrientedBoundingBox3d(placedBoxPosition, new Vector3d(1.0, 1.0, 1.0), placedBoxOrientation, sink); + + if (!replaced && OrientedBoundingBox3d.sat( + inWorldBox, justPlacedBox + ).lengthSquared() > 0.05) { + cir.setReturnValue(false); + return true; + } + } + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.java new file mode 100644 index 0000000..97c0d6b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.java @@ -0,0 +1,70 @@ +package dev.ryanhcode.sable.mixin.block_placement; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.EntityGetter; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.shapes.BooleanOp; +import net.minecraft.world.phys.shapes.Shapes; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.List; + +/** + * Disallows placing blocks on sub-levels inside of entities + */ +@Mixin(EntityGetter.class) +public interface EntityGetterMixin { + + @Shadow + List getEntities(@org.jetbrains.annotations.Nullable Entity pEntity, AABB pArea); + + @Shadow + List players(); + + /** + * @author RyanH + * @reason Taking sub-levels into account + */ + @Overwrite + default boolean isUnobstructed(@Nullable final Entity pEntity, final VoxelShape voxelShape) { + if (voxelShape.isEmpty()) { + return true; + } else { + for (final Entity entity : this.getEntities(pEntity, voxelShape.bounds())) { + final AABB entityBounds = entity.getBoundingBox(); + + boolean fine = Shapes.joinIsNotEmpty(voxelShape, Shapes.create(entityBounds), BooleanOp.AND); + + final BoundingBox3d queryBounds = new BoundingBox3d(entityBounds); + queryBounds.expand(1.5, queryBounds); + final Iterable intersecting = Sable.HELPER.getAllIntersecting(entity.level(), queryBounds); + + for (final SubLevel subLevel : intersecting) { + if (fine) continue; + + final BoundingBox3d bb = new BoundingBox3d(entityBounds); + bb.transformInverse(subLevel.logicalPose(), bb); + bb.expand(-0.75 / 16.0, bb); + if (Shapes.joinIsNotEmpty(voxelShape, Shapes.create(bb.toMojang()), BooleanOp.AND)) + fine = true; + } + + if (!entity.isRemoved() && entity.blocksBuilding && (pEntity == null || !entity.isPassengerOfSameVehicle(pEntity)) && fine) { + return false; + } + } + + return true; + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.java new file mode 100644 index 0000000..589b83e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.java @@ -0,0 +1,65 @@ +package dev.ryanhcode.sable.mixin.block_placement; + + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.UseOnContext; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Fixes the rotation of block placement to take into account orientation + */ +@Mixin(UseOnContext.class) +public abstract class UseOnContextMixin { + + @Shadow + @Final + private Level level; + @Shadow + @Final + @Nullable + private Player player; + + @Shadow + public abstract BlockPos getClickedPos(); + + @Inject(method = "getHorizontalDirection", at = @At("HEAD"), cancellable = true) + private void sable$getHorizontalDirection(final CallbackInfoReturnable cir) { + if (this.player == null) return; + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, this.getClickedPos()); + + if (subLevel != null) { + SubLevelHelper.pushEntityLocal(subLevel, this.player); + final Direction dir = this.player.getDirection(); + SubLevelHelper.popEntityLocal(subLevel, this.player); + cir.setReturnValue(dir); + } + } + + @Inject(method = "getRotation", at = @At("HEAD"), cancellable = true) + private void sable$getRotation(final CallbackInfoReturnable cir) { + if (this.player == null) return; + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, this.getClickedPos()); + + if (subLevel != null) { + SubLevelHelper.pushEntityLocal(subLevel, this.player); + final float yRot = this.player.getYRot(); + SubLevelHelper.popEntityLocal(subLevel, this.player); + cir.setReturnValue(yRot); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.java new file mode 100644 index 0000000..c6267a9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.mixin.block_properties; + +import dev.ryanhcode.sable.mixinterface.block_properties.BlockStateExtension; +import dev.ryanhcode.sable.physics.config.block_properties.BlockStateConditionSet; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinition; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +import java.util.Map; + +/** + * Makes block states hold their physics properties + */ +@Mixin(BlockState.class) +public class BlockStateMixin implements BlockStateExtension { + + @Unique + @Nullable + private Object[] sable$properties = null; + + @Override + public void sable$loadProperties(final StateDefinition stateDefinition, final PhysicsBlockPropertiesDefinition definition) { + if (this.sable$properties == null) { + this.sable$properties = new Object[PhysicsBlockPropertyTypes.count()]; + } + + this.sable$applyPropertySet(definition.properties()); + + if (definition.overrides().isPresent()) { + for (final Map.Entry> override : definition.overrides().get().entrySet()) { + if (override.getKey().matches(stateDefinition, (BlockState) (Object) this)) { + this.sable$applyPropertySet(override.getValue()); + } + } + } + } + + @Unique + private void sable$applyPropertySet(final Map properties) { + for (final Map.Entry entry : properties.entrySet()) { + final int index = PhysicsBlockPropertyTypes.getPropertyType(entry.getKey()).id(); + this.sable$properties[index] = entry.getValue(); + } + } + + @Override + public T sable$getProperty(final PhysicsBlockPropertyTypes.PhysicsBlockPropertyType type) { + // return default if we have no properties or the property is not set on this block + if (this.sable$properties == null || this.sable$properties[type.id()] == null) { + return type.defaultValue(); + } + + //noinspection unchecked + return (T) this.sable$properties[type.id()]; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.java new file mode 100644 index 0000000..59d8c2f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.mixin.camera.camera_rotation; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.item.CompassItemPropertyFunction; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(CompassItemPropertyFunction.class) +public abstract class CompassItemPropertyFunctionMixin { + + /** + * @author RyanH + * @reason Take into account sub-levels + */ + @Overwrite + private double getAngleFromEntityToPos(final Entity entity, final BlockPos pos) { + Vec3 localPos = Vec3.atCenterOf(pos); + double entityX = entity.getX(); + double entityZ = entity.getZ(); + + final ActiveSableCompanion helper = Sable.HELPER; + SubLevel subLevel = helper.getContaining(entity); + + if (subLevel == null) { + final Entity vehicle = entity.getVehicle(); + + if (vehicle != null) { + subLevel = helper.getContaining(vehicle); + + if (subLevel != null) { + final Vec3 localEntityPos = subLevel.lastPose().transformPositionInverse(entity.position()); + entityX = localEntityPos.x; + entityZ = localEntityPos.z; + } + } + } + + if (subLevel != null) { + localPos = subLevel.lastPose().transformPositionInverse(localPos); + } + + return Math.atan2(localPos.z() - entityZ, localPos.x() - entityX) / (float) (Math.PI * 2); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.java new file mode 100644 index 0000000..84ebbf4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.mixin.camera.camera_rotation; + +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniond; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Function; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow private Level level; + + @Inject(method = "calculateViewVector", at = @At("RETURN"), cancellable = true) + public void sable$calculateViewVector(final float f, final float g, final CallbackInfoReturnable cir) { + final Function provider; + + if (this.level instanceof final LevelPoseProviderExtension levelPoseProvider) { + provider = levelPoseProvider::sable$getPose; + } else { + provider = SubLevel::logicalPose; + } + + final Quaterniond orientation = EntitySubLevelRotationHelper.getEntityOrientation((Entity) (Object) this, provider, 0.0f, EntitySubLevelRotationHelper.Type.CAMERA); + + if (orientation != null) { + final Vec3 viewVector = cir.getReturnValue(); + cir.setReturnValue(JOMLConversion.toMojang(orientation.transform(JOMLConversion.toJOML(viewVector)))); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.java new file mode 100644 index 0000000..832bef4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.java @@ -0,0 +1,69 @@ +package dev.ryanhcode.sable.mixin.camera.camera_rotation; + +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.Gui; +import net.minecraft.world.entity.Entity; +import org.joml.Matrix4f; +import org.joml.Matrix4fStack; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Fix f3 crosshair when riding entity in sub-level + */ +@Mixin(Gui.class) +public class GuiMixin { + + @Shadow @Final private Minecraft minecraft; + + @Inject(method = "renderCrosshair", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/systems/RenderSystem;getModelViewStack()Lorg/joml/Matrix4fStack;")) + private void sable$onRenderCrosshair(final CallbackInfo ci, @Share("mountedOrientation") final LocalRef mountedOrientation) { + final Camera camera = this.minecraft.gameRenderer.getMainCamera(); + final Entity entity = camera.getEntity(); + + final float pt = this.minecraft.getTimer().getGameTimeDeltaPartialTick(true); + final Quaterniond ridingOrientation = EntitySubLevelRotationHelper.getEntityOrientation(entity, (x) -> ((ClientSubLevel) x).renderPose(), pt, EntitySubLevelRotationHelper.Type.CAMERA); + mountedOrientation.set(ridingOrientation); + } + + @Redirect(method = "renderCrosshair", at = @At(value = "INVOKE", target = "Lorg/joml/Matrix4fStack;rotateX(F)Lorg/joml/Matrix4f;")) + private Matrix4f sable$redirectRotateX(final Matrix4fStack stack, final float angle, @Share("mountedOrientation") final LocalRef mountedOrientation) { + if (mountedOrientation.get() != null) { + final float pt = this.minecraft.getTimer().getGameTimeDeltaPartialTick(true); + final Camera camera = this.minecraft.gameRenderer.getMainCamera(); + final Entity entity = camera.getEntity(); + + return stack.rotateX(-entity.getViewXRot(pt) * (float) (Math.PI / 180.0)); + } + + return stack.rotateX(angle); + } + + @Redirect(method = "renderCrosshair", at = @At(value = "INVOKE", target = "Lorg/joml/Matrix4fStack;rotateY(F)Lorg/joml/Matrix4f;")) + private Matrix4f sable$redirectRotateY(final Matrix4fStack stack, final float angle, @Share("mountedOrientation") final LocalRef mountedOrientation) { + if (mountedOrientation.get() != null) { + final float pt = this.minecraft.getTimer().getGameTimeDeltaPartialTick(true); + final Camera camera = this.minecraft.gameRenderer.getMainCamera(); + final Entity entity = camera.getEntity(); + + stack.rotateY(entity.getViewYRot(pt) * (float) (Math.PI / 180.0)); + + return stack.rotate(new Quaternionf(mountedOrientation.get()).conjugate()); + } + + return stack.rotateY(angle); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.java new file mode 100644 index 0000000..ea7d00d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.java @@ -0,0 +1,179 @@ +package dev.ryanhcode.sable.mixin.camera.camera_zoom; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import dev.ryanhcode.sable.mixinterface.camera.camera_zoom.CameraZoomExtension; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3dc; +import org.joml.Vector3f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Collection; + +@Mixin(Camera.class) +public abstract class CameraMixin implements CameraZoomExtension { + + @Shadow + private BlockGetter level; + @Shadow + private Vec3 position; + @Shadow + @Final + private Vector3f forwards; + @Shadow + private Entity entity; + @Unique + private boolean sable$pushed = false; + @Unique + private float sable$zoomAmount; + @Unique + private float sable$interpolatedZoom; + @Unique + private float sable$lastInterpolatedZoom; + @Shadow + protected abstract void setPosition(double d, double e, double f); + + @Inject(method = "tick", at = @At("HEAD")) + private void sable$preTick(final CallbackInfo ci) { + this.sable$lastInterpolatedZoom = this.sable$interpolatedZoom; + this.sable$interpolatedZoom = Mth.lerp(0.725f, this.sable$interpolatedZoom, this.sable$zoomAmount); + } + + @Inject(method = "setup", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setPosition(DDD)V", shift = At.Shift.AFTER)) + private void sable$setup(final BlockGetter blockGetter, final Entity entity, final boolean bl, final boolean bl2, final float f, final CallbackInfo ci) { + final Minecraft minecraft = Minecraft.getInstance(); + + if (minecraft.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW || minecraft.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final Entity cameraEntity = minecraft.cameraEntity; + final Entity vehicle = cameraEntity.getVehicle(); + + if (vehicle != null) { + final SubLevel subLevel = Sable.HELPER.getContaining(minecraft.level, vehicle.position()); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final Vector3dc pos = clientSubLevel.renderPose().position(); + this.setPosition(pos.x(), pos.y(), pos.z()); + } + } + } + } + + @Unique + private float sable$clampZoom(final float maxZoom, final SubLevel ignoredSubLevel) { + float zoom = maxZoom; + + final float partialTick = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(false); + + final Level level = this.entity.level(); + final LevelPoseProviderExtension extension = ((LevelPoseProviderExtension) this.level); + assert extension != null; + + final Collection ignoredChain = SubLevelHelper.getConnectedChain(ignoredSubLevel); + + extension.sable$pushPoseSupplier((subLevel) -> ((ClientSubLevel) subLevel).renderPose(partialTick)); + + for (int i = 0; i < 8; i++) { + final float offsetX = (float) ((i & 1) * 2 - 1); + final float offsetY = (float) ((i >> 1 & 1) * 2 - 1); + final float offsetZ = (float) ((i >> 2 & 1) * 2 - 1); + + final Vec3 vec3 = this.position.add(offsetX * 0.1F, offsetY * 0.1F, offsetZ * 0.1F); + final Vec3 vec32 = vec3.add(new Vec3(this.forwards).scale(-zoom)); + + final ClipContext clipContext = new ClipContext(vec3, vec32, ClipContext.Block.VISUAL, ClipContext.Fluid.NONE, this.entity); + ((ClipContextExtension) clipContext).sable$setSubLevelIgnoring(ignoredChain::contains); + final HitResult hitResult = this.level.clip(clipContext); + + if (hitResult.getType() != HitResult.Type.MISS) { + final float l = (float) Sable.HELPER.distanceSquaredWithSubLevels(level, hitResult.getLocation(), this.position); + if (l < Mth.square(zoom)) { + zoom = Mth.sqrt(l); + } + } + } + + extension.sable$popPoseSupplier(); + + return zoom; + } + + @Inject(method = "getMaxZoom", at = @At(value = "HEAD"), cancellable = true) + private void sable$getMaxZoomHead(final float f, final CallbackInfoReturnable cir) { + final Minecraft minecraft = Minecraft.getInstance(); + + if (minecraft.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW || minecraft.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final Entity cameraEntity = minecraft.cameraEntity; + final Entity vehicle = cameraEntity.getVehicle(); + + final boolean isTypeValid = vehicle != null; + if (isTypeValid) { + final SubLevel subLevel = Sable.HELPER.getContaining(minecraft.level, vehicle.position()); + + if (subLevel != null) { + final float partialTick = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + final float zoomAmount = Mth.lerp(partialTick, this.sable$lastInterpolatedZoom, this.sable$interpolatedZoom); + + final BoundingBox3ic boundingBox = subLevel.getPlot().getBoundingBox(); + final Vec3 extents = new Vec3(boundingBox.maxX() - boundingBox.minX(), boundingBox.maxY() - boundingBox.minY(), boundingBox.maxZ() - boundingBox.minZ()); + final double maxDist = extents.scale(0.5).length(); + final float desiredDistance = (float) Math.max(f, maxDist) * (1.75f + zoomAmount); + cir.setReturnValue(this.sable$clampZoom(desiredDistance, subLevel)); + this.sable$pushed = false; + return; + } + } + } + + final LevelPoseProviderExtension extension = ((LevelPoseProviderExtension) minecraft.level); + assert extension != null; + extension.sable$pushPoseSupplier((subLevel) -> ((ClientSubLevel) subLevel).renderPose(minecraft.getTimer().getGameTimeDeltaPartialTick(false))); + this.sable$pushed = true; + } + + @Redirect(method = "getMaxZoom", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private double sable$getMaxZoom(final Vec3 instance, final Vec3 vec3) { + return Sable.HELPER.distanceSquaredWithSubLevels((Level) this.level, instance, vec3); + } + + @Inject(method = "getMaxZoom", at = @At(value = "RETURN")) + private void sable$getMaxZoomTail(final float f, final CallbackInfoReturnable cir) { + if (this.sable$pushed) { + final LevelPoseProviderExtension extension = ((LevelPoseProviderExtension) Minecraft.getInstance().level); + assert extension != null; + extension.sable$popPoseSupplier(); + this.sable$pushed = false; + } + } + + @Override + public float sable$getZoomAmount() { + return this.sable$zoomAmount; + } + + @Override + public void sable$setZoomAmount(final float sable$zoomAmount) { + this.sable$zoomAmount = Mth.clamp(sable$zoomAmount, 0.0f, 4.0f); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.java new file mode 100644 index 0000000..3fca8f4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.mixin.camera.camera_zoom; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.SableClientConfig; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import dev.ryanhcode.sable.mixinterface.camera.camera_zoom.CameraZoomExtension; +import net.minecraft.client.CameraType; +import net.minecraft.client.Minecraft; +import net.minecraft.client.MouseHandler; +import net.minecraft.world.entity.player.Inventory; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(MouseHandler.class) +public class MouseHandlerMixin { + + @Shadow @Final private Minecraft minecraft; + + @WrapOperation(method = "onScroll", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Inventory;swapPaint(D)V")) + private void sable$onScroll(final Inventory instance, final double d, final Operation original) { + final CameraType cameraType = this.minecraft.options.getCameraType(); + if (cameraType == SableCameraTypes.SUB_LEVEL_VIEW || cameraType == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final CameraZoomExtension extension = ((CameraZoomExtension) this.minecraft.gameRenderer.getMainCamera()); + + extension.sable$setZoomAmount((float) (extension.sable$getZoomAmount() - d * SableClientConfig.ZOOM_SENSITIVITY.get())); + return; + } + + original.call(instance, d); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.java new file mode 100644 index 0000000..da7fb9e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.java @@ -0,0 +1,68 @@ +package dev.ryanhcode.sable.mixin.camera.new_camera_types; + +import com.llamalad7.mixinextras.lib.apache.commons.ArrayUtils; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import net.minecraft.client.CameraType; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.gen.Invoker; + +/** + * thank you thunder i love enum mixins + */ +@Mixin(CameraType.class) +public class CameraTypeMixin { + @Shadow + @Final + @Mutable + private static CameraType[] $VALUES; + + @Final + @Shadow + @Mutable + private static CameraType[] VALUES; + + static { + final var subLevelView = create("SUB_LEVEL_VIEW", $VALUES.length, false, false); + + $VALUES = ArrayUtils.add($VALUES, subLevelView); + + VALUES = ArrayUtils.add(VALUES, subLevelView); + + final var subLevelViewUnlocked = create("SUB_LEVEL_VIEW_UNLOCKED", $VALUES.length, false, false); + + $VALUES = ArrayUtils.add($VALUES, subLevelViewUnlocked); + + VALUES = ArrayUtils.add(VALUES, subLevelViewUnlocked); + } + + @Invoker(value = "") + private static CameraType create(final String name, final int ordinal, final boolean firstPerson, final boolean mirrored) { + throw new IllegalStateException("Unreachable"); + } + + /** + * @author RyanH + * @reason Sable camera type. TODO: Make this not as incompatible + */ + @Overwrite + public CameraType cycle() { + if ((Object) this == SableCameraTypes.SUB_LEVEL_VIEW) { + return SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED; + } + + if ((Object) this == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + return CameraType.THIRD_PERSON_FRONT; + } + + return switch ((CameraType) (Object) this) { + case CameraType.FIRST_PERSON -> CameraType.THIRD_PERSON_BACK; + case CameraType.THIRD_PERSON_BACK -> SableCameraTypes.SUB_LEVEL_VIEW; + case CameraType.THIRD_PERSON_FRONT -> CameraType.FIRST_PERSON; + default -> null; + }; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.java new file mode 100644 index 0000000..97e80c4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.mixin.camera.new_camera_types; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.CameraType; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(GameRenderer.class) +public class GameRendererMixin { + + @Shadow @Final private Minecraft minecraft; + + @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setup(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V", shift = At.Shift.BEFORE)) + public void sable$setupCamera(final DeltaTracker deltaTracker, final CallbackInfo ci) { + final CameraType cameraType = this.minecraft.options.getCameraType(); + + if (cameraType == SableCameraTypes.SUB_LEVEL_VIEW || cameraType == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final Entity vehicle = this.minecraft.cameraEntity.getVehicle(); + + if (vehicle != null) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.minecraft.level, vehicle.position()); + + if (subLevel != null) { + return; + } + } + + this.minecraft.options.setCameraType(CameraType.FIRST_PERSON); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.java new file mode 100644 index 0000000..a5c3628 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.java @@ -0,0 +1,88 @@ +package dev.ryanhcode.sable.mixin.camera.new_camera_types; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import dev.ryanhcode.sable.mixinterface.camera.camera_zoom.CameraZoomExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.CameraType; +import net.minecraft.client.Minecraft; +import net.minecraft.client.Options; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.commands.arguments.EntityAnchorArgument; +import net.minecraft.network.chat.Component; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Minecraft.class) +public class MinecraftMixin { + + @Shadow + @Final + public Options options; + + @Shadow + @Nullable + public ClientLevel level; + + @Shadow + @Nullable + public Entity cameraEntity; + + @Shadow + @Nullable + public LocalPlayer player; + + @Shadow @Final public GameRenderer gameRenderer; + + @Inject(method = "handleKeybinds", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Options;setCameraType(Lnet/minecraft/client/CameraType;)V", shift = At.Shift.BEFORE)) + private void sable$preCycleCameraType(final CallbackInfo ci) { + if (this.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final Camera camera = this.gameRenderer.getMainCamera(); + ((CameraZoomExtension) camera).sable$setZoomAmount(0.0f); + + final SubLevel subLevel = Sable.HELPER.getVehicleSubLevel(this.cameraEntity); + + if (subLevel != null) { + final Vec3 globalLookDir = subLevel.logicalPose().transformNormalInverse(this.player.getLookAngle()); + this.player.lookAt(EntityAnchorArgument.Anchor.FEET, this.player.position().add(globalLookDir)); + } + } + } + + @Inject(method = "handleKeybinds", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Options;setCameraType(Lnet/minecraft/client/CameraType;)V", shift = At.Shift.AFTER)) + public void sable$postCycleCameraType(final CallbackInfo ci) { + while (this.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW || this.options.getCameraType() == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final SubLevel subLevel = Sable.HELPER.getVehicleSubLevel(this.cameraEntity); + if (subLevel != null) break; + + this.options.setCameraType(this.options.getCameraType().cycle()); + } + + final CameraType cameraType = this.options.getCameraType(); + + if (cameraType == SableCameraTypes.SUB_LEVEL_VIEW) { + this.player.displayClientMessage(Component.translatable("camera_type.sub_level_view").withColor(0xffaaaaaa), true); + } else if (cameraType == SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED) { + final SubLevel subLevel = Sable.HELPER.getVehicleSubLevel(this.cameraEntity); + + // View view orientation + if (subLevel != null) { + final Vec3 globalLookDir = subLevel.logicalPose().transformNormal(this.player.getLookAngle()); + this.player.lookAt(EntityAnchorArgument.Anchor.FEET, this.player.position().add(globalLookDir)); + } + + this.player.displayClientMessage(Component.translatable("camera_type.sub_level_view_unlocked").withColor(0xffaaaaaa), true); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.java new file mode 100644 index 0000000..84e5b01 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixin.chunk_container_replacement; + +import net.minecraft.world.level.chunk.LevelChunkSection; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(LevelChunkSection.class) +public class LevelChunkSectionMixin { +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.java new file mode 100644 index 0000000..1a8f751 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.java @@ -0,0 +1,70 @@ +package dev.ryanhcode.sable.mixin.climbing_sub_levels; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.platform.SablePlatform; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.tags.BlockTags; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Allows living entities to climb ladders on sub-levels + *

+ */ +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity { + + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Redirect(method = "onClimbable", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$redirectPos(final LivingEntity instance, @Share("subLevelBlockState") final LocalRef subLevelBlockState) { + final Level level = this.level(); + final LivingEntity self = (LivingEntity) (Object) this; + + final BlockPos defaultPos = ((EntityMovementExtension) this).sable$getInBlockStatePos(); + final BlockState defaultState = this.getInBlockState(); + + if (defaultState.is(BlockTags.CLIMBABLE) && SablePlatform.INSTANCE.isBlockstateLadder(defaultState, level, defaultPos, self)) { + return defaultPos; + } + + final Vector3d position = new Vector3d(); + final BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); + for (final SubLevel subLevel : Sable.HELPER.getAllIntersecting(level, new BoundingBox3d(this.getBoundingBox()))) { + subLevel.logicalPose().transformPositionInverse(JOMLConversion.toJOML(this.position(), position)); + pos.set(position.x, position.y, position.z); + final BlockState state = level.getBlockState(pos); + + if (state.is(BlockTags.CLIMBABLE) && SablePlatform.INSTANCE.isBlockstateLadder(state, level, pos, self)) { + subLevelBlockState.set(state); + return pos.immutable(); + } + } + + return defaultPos; + } + + + @WrapOperation(method = "onClimbable", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;getInBlockState()Lnet/minecraft/world/level/block/state/BlockState;")) + private BlockState getInBlockState(final LivingEntity instance, final Operation original, @Share("subLevelBlockState") final LocalRef subLevelBlockState) { + final BlockState state = subLevelBlockState.get(); + return state != null ? state : original.call(instance); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.java new file mode 100644 index 0000000..dc88ef0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.java @@ -0,0 +1,157 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; + +import java.util.function.Predicate; + +/** + * Overwrites raycasts to take sublevels into account + * + * TODO: The priority is currently higher simply to take priority over lithium, but usage of Lithium's raycast replacement alongside our sub-level stuff would be far nicer. + */ +@Mixin(value = BlockGetter.class, priority = 1100) +public interface BlockGetterMixin { + + @Shadow + BlockState getBlockState(BlockPos blockPos); + + /** + * @author RyanH + * @reason Overwrites raycasts to take sublevels into account + */ + @Overwrite + default BlockHitResult clip(ClipContext clipContext) { + final BlockGetter self = (BlockGetter) this; + + if (!(this instanceof final Level level) || (clipContext instanceof final ClipContextExtension extension && extension.sable$doNotProject())) { + // If the level cannot have sublevels, use the original method + return originalClip(self, clipContext); + } + + final SubLevel ignoredSubLevel = clipContext instanceof final ClipContextExtension extension ? + extension.sable$getIgnoredSubLevel() : null; + + final Predicate subLevelIgnoring = clipContext instanceof final ClipContextExtension extension ? + extension.sable$getSubLevelIgnoring() : null; + + final ActiveSableCompanion helper = Sable.HELPER; + + // if the context is already within a sub-level, project outward + final SubLevel fromSubLevel = helper.getContaining(level, clipContext.getFrom()); + if (fromSubLevel != null) { + Pose3dc pose = fromSubLevel.logicalPose(); + + if (level instanceof final LevelPoseProviderExtension extension) { + pose = extension.sable$getPose(fromSubLevel); + } + + final Vector3dc from = pose.transformPosition(JOMLConversion.toJOML(clipContext.getFrom())); + clipContext = new ClipContext(JOMLConversion.toMojang(from), clipContext.getTo(), clipContext.block, clipContext.fluid, clipContext.collisionContext); + } + + final SubLevel toSubLevel = helper.getContaining(level, clipContext.getTo()); + if (toSubLevel != null) { + Pose3dc pose = toSubLevel.logicalPose(); + + if (level instanceof final LevelPoseProviderExtension extension) { + pose = extension.sable$getPose(toSubLevel); + } + + final Vector3dc to = pose.transformPosition(JOMLConversion.toJOML(clipContext.getTo())); + clipContext = new ClipContext(clipContext.getFrom(), JOMLConversion.toMojang(to), clipContext.block, clipContext.fluid, clipContext.collisionContext); + } + + BlockHitResult minResult; + double minDistance = Double.MAX_VALUE; + + if (clipContext instanceof final ClipContextExtension extension && extension.sable$isIgnoreMainLevel()) { + final Vec3 diff = clipContext.getFrom().subtract(clipContext.getTo()); + minResult = BlockHitResult.miss(clipContext.getTo(), Direction.getNearest(diff.x, diff.y, diff.z), BlockPos.containing(clipContext.getTo())); + } else { + minResult = originalClip(self, clipContext); + minDistance = minResult.getLocation().distanceTo(clipContext.getFrom()); + } + + + final BoundingBox3d bounds = new BoundingBox3d(clipContext.getFrom(), clipContext.getTo()); + final Iterable subLevels = helper.getAllIntersecting(level, bounds); + + for (final SubLevel subLevel : subLevels) { + if (subLevel == ignoredSubLevel || (subLevelIgnoring != null && subLevelIgnoring.test(subLevel))) { + continue; // skip the data we are ignoring + } + + // Do the raycast within the data + Pose3dc pose = subLevel.logicalPose(); + + if (level instanceof final LevelPoseProviderExtension extension) { + pose = extension.sable$getPose(subLevel); + } + + final Vector3dc from = pose.transformPositionInverse(JOMLConversion.toJOML(clipContext.getFrom())); + final Vector3dc to = pose.transformPositionInverse(JOMLConversion.toJOML(clipContext.getTo())); + + if (helper.getContaining(level, from) != subLevel) + continue; // we projected the ray inward, but the start is not in the plot. something is weird. + + + final ClipContext subClipContext = new ClipContext(JOMLConversion.toMojang(from), JOMLConversion.toMojang(to), clipContext.block, clipContext.fluid, clipContext.collisionContext); + final BlockHitResult subResult = originalClip(subLevel.getLevel(), subClipContext); + final double distance = subResult.getLocation().distanceTo(subClipContext.getFrom()); + + if ((distance < minDistance || minResult.getType() == HitResult.Type.MISS) && subResult.getType() != HitResult.Type.MISS) { + minResult = subResult; + minDistance = distance; + } + } + + return minResult; + } + + @Unique + private static @NotNull BlockHitResult originalClip(final BlockGetter level, final ClipContext clipContext) { + return BlockGetter.traverseBlocks(clipContext.getFrom(), clipContext.getTo(), clipContext, (clipContextx, blockPos) -> { + final BlockState blockState = level.getBlockState(blockPos); + final FluidState fluidState = level.getFluidState(blockPos); + final Vec3 vec3 = clipContextx.getFrom(); + final Vec3 vec32 = clipContextx.getTo(); + final VoxelShape voxelShape = clipContextx.getBlockShape(blockState, level, blockPos); + final BlockHitResult blockHitResult = level.clipWithInteractionOverride(vec3, vec32, blockPos, voxelShape, blockState); + final VoxelShape voxelShape2 = clipContextx.getFluidShape(fluidState, level, blockPos); + final BlockHitResult blockHitResult2 = voxelShape2.clip(vec3, vec32, blockPos); + final double d = blockHitResult == null ? Double.MAX_VALUE : clipContextx.getFrom().distanceToSqr(blockHitResult.getLocation()); + final double e = blockHitResult2 == null ? Double.MAX_VALUE : clipContextx.getFrom().distanceToSqr(blockHitResult2.getLocation()); + return d <= e ? blockHitResult : blockHitResult2; + }, clipContextx -> { + final Vec3 vec3 = clipContextx.getFrom().subtract(clipContextx.getTo()); + return BlockHitResult.miss(clipContextx.getTo(), Direction.getNearest(vec3.x, vec3.y, vec3.z), BlockPos.containing(clipContextx.getTo())); + }); + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.java new file mode 100644 index 0000000..0db8610 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.Function; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.client.multiplayer.ClientLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +/** + * Implements an extension to allow for storage of a "pose supplier" for raycasts. + */ +@Mixin(ClientLevel.class) +public class ClientLevelMixin implements LevelPoseProviderExtension { + + @Unique + private final ObjectList> sable$poseSupplierStack = new ObjectArrayList<>() {{ + this.add((subLevel) -> ((SubLevel) subLevel).logicalPose()); + }}; + + @Override + public void sable$pushPoseSupplier(final Function supplier) { + this.sable$poseSupplierStack.add(supplier); + } + + @Override + public void sable$popPoseSupplier() { + this.sable$poseSupplierStack.removeLast(); + } + + @Override + public Pose3dc sable$getPose(final SubLevel subLevel) { + return this.sable$poseSupplierStack.getLast().apply(subLevel); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.java new file mode 100644 index 0000000..448fa45 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.java @@ -0,0 +1,68 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.level.ClipContext; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +import java.util.function.Predicate; + +@Mixin(ClipContext.class) +public class ClipContextMixin implements ClipContextExtension { + + @Unique + @Nullable + private SubLevel sable$ignoredSubLevel = null; + + @Unique + private boolean sable$ignoreMainLevel = false; + + @Unique + private boolean sable$doNotProject = false; + + @Unique + @Nullable + private Predicate sable$subLevelIgnoring = null; + + @Override + public @Nullable SubLevel sable$getIgnoredSubLevel() { + return this.sable$ignoredSubLevel; + } + + @Override + public @Nullable Predicate sable$getSubLevelIgnoring() { + return this.sable$subLevelIgnoring; + } + + @Override + public void sable$setIgnoredSubLevel(@Nullable final SubLevel ignoredSubLevel) { + this.sable$ignoredSubLevel = ignoredSubLevel; + } + + @Override + public void sable$setSubLevelIgnoring(@Nullable final Predicate subLevelIgnoring) { + this.sable$subLevelIgnoring = subLevelIgnoring; + } + + @Override + public void sable$setIgnoreMainLevel(final boolean ignoreWorld) { + this.sable$ignoreMainLevel = ignoreWorld; + } + + @Override + public boolean sable$isIgnoreMainLevel() { + return this.sable$ignoreMainLevel; + } + + @Override + public void sable$setDoNotProject(final boolean doNotProject) { + this.sable$doNotProject = doNotProject; + } + + @Override + public boolean sable$doNotProject() { + return this.sable$doNotProject; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.java new file mode 100644 index 0000000..5b044b9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(Entity.class) +public class EntityMixin { + + @Redirect(method = "pick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getEyePosition(F)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$getEyePosition(final Entity instance, final float partialTicks) { + return Sable.HELPER.getEyePositionInterpolated(instance, partialTicks); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.java new file mode 100644 index 0000000..3d077fc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.java @@ -0,0 +1,55 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.core.Position; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Changes the block picking distance check to take into account sublevels + */ +@Mixin(GameRenderer.class) +public class GameRendererMixin { + + @Shadow + @Final + private Minecraft minecraft; + + @Redirect(method = "filterHitResult", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;closerThan(Lnet/minecraft/core/Position;D)Z")) + private static boolean sable$closerThan(final Vec3 a, final Position b, final double d) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, a, new Vec3(b.x(), b.y(), b.z())) < d * d; + } + + @Redirect(method = "pick(Lnet/minecraft/world/entity/Entity;DDF)Lnet/minecraft/world/phys/HitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private double sable$distanceToSqr(final Vec3 instance, final Vec3 other) { + return Sable.HELPER.distanceSquaredWithSubLevels(this.minecraft.level, instance, other); + } + + @Redirect(method = "pick(Lnet/minecraft/world/entity/Entity;DDF)Lnet/minecraft/world/phys/HitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getEyePosition(F)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$getEyePosition(final Entity instance, final float partialTicks) { + return Sable.HELPER.getEyePositionInterpolated(instance, partialTicks); + } + + @WrapOperation(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/GameRenderer;pick(F)V")) + private void sable$renderLevel(final GameRenderer instance, final float f, final Operation original) { + final LevelPoseProviderExtension extension = ((LevelPoseProviderExtension) this.minecraft.level); + + extension.sable$pushPoseSupplier((subLevel) -> ((ClientSubLevel) subLevel).renderPose(f)); + original.call(instance, f); + extension.sable$popPoseSupplier(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.java new file mode 100644 index 0000000..414f476 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.clip_overwrite; + +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(HitResult.class) +public class HitResultMixin { + + @Shadow @Final protected Vec3 location; + + /** + * @author RyanH + * @reason Use the entity distance squared function instead of a manual one + */ + @Overwrite + public double distanceTo(final Entity entity) { + // `distanceTo` is a misleading name, as the original method calculates the distance *squared* + return entity.distanceToSqr(this.location); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.java new file mode 100644 index 0000000..712276b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.command; + +import com.mojang.brigadier.arguments.ArgumentType; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.command.Vec3ArgumentAbsolute; +import net.minecraft.commands.synchronization.ArgumentTypeInfo; +import net.minecraft.commands.synchronization.ArgumentTypeInfos; +import net.minecraft.commands.synchronization.SingletonArgumentInfo; +import net.minecraft.core.Registry; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ArgumentTypeInfos.class) +public abstract class ArgumentTypeInfosMixin { + + @Shadow + private static , T extends ArgumentTypeInfo.Template> ArgumentTypeInfo register(final Registry> arg, final String string, final Class class_, final ArgumentTypeInfo arg2) { + return null; + } + + @Inject(method = "bootstrap", at = @At("TAIL")) + private static void sable$bootstrap(final Registry> registry, final CallbackInfoReturnable> cir) { + register(registry, Sable.MOD_ID + ":sub_level", SubLevelArgumentType.class, new SubLevelArgumentType.Info()); + register(registry, Sable.MOD_ID + ":vec3_absolute", Vec3ArgumentAbsolute.class, SingletonArgumentInfo.contextFree(Vec3ArgumentAbsolute::vec3)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.java new file mode 100644 index 0000000..17e034e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.command; + +import com.google.common.collect.ImmutableList; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.command.data_accessor.SubLevelDataAccessor; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.server.commands.data.DataCommands; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.function.Function; + +@Mixin(DataCommands.class) +public class DataCommandsMixin { + + @WrapOperation(method = "", at = @At(value = "INVOKE", target = "Lcom/google/common/collect/ImmutableList;of(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/google/common/collect/ImmutableList;", remap = false)) + private static ImmutableList> sable$allProviders(final E e1, final E e2, final E e3, final Operation>> original) { + @SuppressWarnings("unchecked") + final ImmutableList> providers = (ImmutableList>) ((Operation) original).call(e1, e2, e3); + final ObjectArrayList> mutableList = new ObjectArrayList<>(providers); + mutableList.add(SubLevelDataAccessor.PROVIDER); + + return ImmutableList.copyOf(mutableList); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.java new file mode 100644 index 0000000..9f41869 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.java @@ -0,0 +1,96 @@ +package dev.ryanhcode.sable.mixin.command; + +import com.google.common.collect.Lists; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.brigadier.builder.ArgumentBuilder; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; +import com.mojang.brigadier.tree.LiteralCommandNode; +import dev.ryanhcode.sable.api.command.SableCommandHelper; +import dev.ryanhcode.sable.api.command.SubLevelArgumentType; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.commands.CommandSourceStack; +import net.minecraft.commands.Commands; +import net.minecraft.core.BlockPos; +import net.minecraft.server.commands.ExecuteCommand; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.phys.Vec2; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.List; + +@Mixin(ExecuteCommand.class) +public class ExecuteCommandMixin { + + /** + * TODO: Better injection target here would be nice. And to split these out of the mixins. + */ + @SuppressWarnings("unchecked") + @WrapOperation(method = "register", at = @At(value = "INVOKE", target = "Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;then(Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder;", ordinal = 31, remap = false)) + private static ArgumentBuilder sable$then(final LiteralArgumentBuilder instance, final ArgumentBuilder argumentBuilder, final Operation original, @Local final LiteralCommandNode literalCommandNode) { + return instance.then(argumentBuilder) + .then( + Commands.literal("in_sub_level") + .then( + Commands.argument("sub_levels", SubLevelArgumentType.subLevels()).fork(literalCommandNode, commandContext -> { + final List list = Lists.newArrayList(); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(commandContext.getSource().getLevel()); + for (final SubLevel subLevel : SubLevelArgumentType.getSubLevels(commandContext, "sub_levels")) { + final Pose3d pose = subLevel.logicalPose(); + final Vec3 localPos = pose.transformPositionInverse(commandContext.getSource().getPosition()); + + if (container.getPlot(new ChunkPos(BlockPos.containing(localPos))) != subLevel.getPlot()) { + throw SableCommandHelper.ERROR_NOT_INSIDE_SUB_LEVEL.create(); + } + + list.add(commandContext.getSource().withLevel((ServerLevel) subLevel.getLevel()).withPosition(localPos).withRotation(new Vec2(0, 0))); + } + + return list; + }))) + .then( + Commands.literal("out_sub_level") + .then( + Commands.argument("sub_levels", SubLevelArgumentType.subLevels()).fork(literalCommandNode, commandContext -> { + final List list = Lists.newArrayList(); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(commandContext.getSource().getLevel()); + for (final SubLevel subLevel : SubLevelArgumentType.getSubLevels(commandContext, "sub_levels")) { + final Pose3d pose = subLevel.logicalPose(); + final Vec3 sourcePosition = commandContext.getSource().getPosition(); + final Vec3 globalPos = pose.transformPosition(sourcePosition); + + if (container.getPlot(new ChunkPos(BlockPos.containing(sourcePosition))) != subLevel.getPlot()) { + throw SableCommandHelper.ERROR_NOT_INSIDE_SUB_LEVEL.create(); + } + + list.add(commandContext.getSource().withLevel((ServerLevel) subLevel.getLevel()).withPosition(globalPos).withRotation(new Vec2(0, 0))); + } + + return list; + }))) + .then( + Commands.literal("centered_in_sub_level") + .then( + Commands.argument("sub_levels", SubLevelArgumentType.subLevels()).fork(literalCommandNode, commandContext -> { + final List list = Lists.newArrayList(); + + for (final SubLevel subLevel : SubLevelArgumentType.getSubLevels(commandContext, "sub_levels")) { + final LevelPlot plot = subLevel.getPlot(); + final Vec3 center = plot.getCenterBlock().getCenter(); + list.add(commandContext.getSource().withLevel((ServerLevel) subLevel.getLevel()).withPosition(center).withRotation(new Vec2(0, 0))); + } + + return list; + }))); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.java new file mode 100644 index 0000000..ae619d3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.mixin.compatibility.computercraft; + +import com.llamalad7.mixinextras.sugar.Local; +import dan200.computercraft.api.network.PacketReceiver; +import dan200.computercraft.shared.peripheral.modem.wireless.WirelessNetwork; +import dev.ryanhcode.sable.Sable; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(WirelessNetwork.class) +public class WirelessNetworkMixin { + + @Redirect(remap = false, method = "tryTransmit", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double getPosition(final Vec3 a, final Vec3 b, @Local(ordinal = 0, argsOnly = true) final PacketReceiver packetReceiver) { + return Sable.HELPER.distanceSquaredWithSubLevels(packetReceiver.getLevel(), a, b); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.java new file mode 100644 index 0000000..e9e2cae --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.mixin.compatibility.exposure; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import io.github.mortuusars.exposure.client.animation.CameraPoses; +import io.github.mortuusars.exposure.world.entity.CameraStandEntity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(CameraPoses.class) +public class CameraPosesMixin { + + @WrapOperation(method = "applyStand", at = @At(value = "INVOKE", target = "Lio/github/mortuusars/exposure/world/entity/CameraStandEntity;getEyePosition()Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$applyStand(final CameraStandEntity instance, final Operation original) { + final Vec3 pos = original.call(instance); + return Sable.HELPER.projectOutOfSubLevel(instance.level(), pos); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.java new file mode 100644 index 0000000..c4fc79f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.mixin.compatibility.exposure; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import io.github.mortuusars.exposure.world.entity.CameraStandEntity; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(CameraStandEntity.class) +public abstract class CameraStandEntityMixin extends Entity { + + public CameraStandEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Override + public Vec3 getEyePosition(final float f) { + return Sable.HELPER.projectOutOfSubLevel(this.level(), super.getEyePosition(f)); + } + + @WrapOperation(method = "isInInteractionRange", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;getEyePosition()Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$isInInteractionRange(final LivingEntity instance, final Operation original) { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(instance.getEyePosition()); + } + return original.call(instance); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.java new file mode 100644 index 0000000..add5705 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.mixin.compatibility.iris; + +import com.mojang.blaze3d.shaders.Uniform; +import dev.ryanhcode.sable.mixinterface.compatibility.iris.ExtendedShaderExtension; +import net.irisshaders.iris.pipeline.programs.ExtendedShader; +import net.minecraft.client.renderer.ShaderInstance; +import org.joml.Matrix3f; +import org.joml.Matrix4f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(ExtendedShader.class) +public class ExtendedShaderMixin implements ExtendedShaderExtension { + + @Shadow + @Final + private Uniform modelViewInverse; + + @Shadow + @Final + private Uniform normalMatrix; + + @Shadow + @Final + private Matrix4f tempMatrix4f; + + @Shadow + @Final + private Matrix3f tempMatrix3f; + + @Shadow + @Final + private float[] tempFloats; + + @Shadow + @Final + private float[] tempFloats2; + + @Unique + @Override + public void sable$refreshModelMatrices() { + final var modelView = ((ShaderInstance) (Object) this).MODEL_VIEW_MATRIX; + + if (modelView != null) { + if (this.modelViewInverse != null) { + this.modelViewInverse.set(this.tempMatrix4f.set(modelView.getFloatBuffer()).invert().get(this.tempFloats)); + this.modelViewInverse.upload(); + } + + if (this.normalMatrix != null) { + this.normalMatrix.set(this.tempMatrix3f.set(this.tempMatrix4f.set(modelView.getFloatBuffer())).invert().transpose().get(this.tempFloats2)); + this.normalMatrix.upload(); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.java new file mode 100644 index 0000000..8eca919 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.mixin.compatibility.jade; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.server.level.ServerLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import snownee.jade.impl.BlockAccessorImpl; + +@Mixin(BlockAccessorImpl.class) +public class BlockAccessorImplMixin { + + @WrapOperation(method = "lambda$handleRequest$0", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;distSqr(Lnet/minecraft/core/Vec3i;)D")) + private static double sable$distSqr(final BlockPos instance, final Vec3i vec3i, final Operation original, @Local final ServerLevel world) { + return Sable.HELPER.distanceSquaredWithSubLevels(world, instance.getX(), instance.getY(), instance.getZ(), vec3i.getX() + 0.5, vec3i.getY() + 0.5, vec3i.getZ() + 0.5); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.java new file mode 100644 index 0000000..ca77a49 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.mixin.compatibility.jade; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import snownee.jade.overlay.RayTracing; + +import java.util.Optional; + +@Mixin(RayTracing.class) +public class RayTracingMixin { + + @WrapOperation(method = "getEntityHitResult", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;clip(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional;")) + private static Optional sable$clip(final AABB aabb, Vec3 start, Vec3 end, final Operation> original, @Local(argsOnly = true) final Level worldIn) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(worldIn, aabb.getCenter()); + if(subLevel != null) { + final Pose3dc renderPose = subLevel.renderPose(); + start = renderPose.transformPositionInverse(start); + end = renderPose.transformPositionInverse(end); + return aabb.clip(start, end); + } + + return original.call(aabb, start, end); + } + + @WrapOperation(method = "getEntityHitResult", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$distanceToSqr(final Vec3 instance, final Vec3 vec3, final Operation original, @Local(argsOnly = true) final Level worldIn) { + return original.call(instance, Sable.HELPER.projectOutOfSubLevel(worldIn, vec3)); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.java new file mode 100644 index 0000000..57d6000 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.compatibility.jadeaddons; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import snownee.jade.addon.create.CreatePlugin; + +@Mixin(CreatePlugin.class) +public class CreatePluginMixin { + + @WrapOperation(method = "lambda$registerClient$1", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getEyePosition(F)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getEyePosition(final Entity instance, final float f, final Operation original, @Local(argsOnly = true) final Entity e) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(e); + if(subLevel != null) { + return subLevel.renderPose().transformPositionInverse(original.call(instance, f)); + } + return original.call(instance, f); + } + + @WrapOperation(method = "lambda$registerClient$1", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getViewVector(F)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getViewVector(final Entity instance, final float f, final Operation original, @Local(argsOnly = true) final Entity e) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(e); + if(subLevel != null) { + return subLevel.renderPose().transformNormalInverse(original.call(instance, f)); + } + return original.call(instance, f); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.java new file mode 100644 index 0000000..60e2849 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable.mixin.compatibility.vista; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.mehvahdjukaar.moonlight.api.client.util.LOD; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LOD.class) +public class LODMixin { + + @Unique + private static final Vector3d sable$direction = new Vector3d(); + + @Shadow + @Final + @Mutable + private Vec3 objCenter; + + @Shadow + @Final + @Mutable + private double distSq; + + @Shadow + @Final + private Vec3 cameraPosition; + + @Unique + private Vec3 sable$localPos = null; + + @WrapMethod(method = "isPlaneCulled(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FF)Z") + private boolean sable$isPlaneCulled(Vec3 planeNormal, Vec3 offset, final float discRadius, final float cosTolerance, final Operation original) { + final ClientSubLevel clientSubLevel = Sable.HELPER.getContainingClient(this.sable$localPos); + + if (clientSubLevel != null) { + planeNormal = clientSubLevel.renderPose().transformNormal(planeNormal); + + if (offset != null) + offset = clientSubLevel.renderPose().transformNormal(offset); + } + + return original.call(planeNormal, offset, discRadius, cosTolerance); + } + + @Inject(method = "(Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/Vec3;)V", at = @At("TAIL")) + private void sable$init(final Camera camera, final Vec3 objCenter, final CallbackInfo ci) { + final ClientLevel level = Minecraft.getInstance().level; + this.sable$localPos = objCenter; + this.objCenter = Sable.HELPER.projectOutOfSubLevel(level, objCenter); + this.distSq = LOD.isScoping() ? (double) 1.0F : Sable.HELPER.distanceSquaredWithSubLevels(level, this.cameraPosition, objCenter); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.java new file mode 100644 index 0000000..36f1747 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.mixin.compatibility.vista; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import net.mehvahdjukaar.vista.common.view_finder.ViewFinderAccess; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Position; +import net.minecraft.world.entity.player.Player; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(ViewFinderAccess.Block.class) +public class ViewFinderAccessMixin { + + @WrapOperation(method = "stillValid", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;distToCenterSqr(Lnet/minecraft/core/Position;)D")) + private static double sable$distToCenterSqr(final BlockPos instance, final Position position, final Operation original, @Local(argsOnly = true) final Player player) { + return Sable.HELPER.distanceSquaredWithSubLevels(player.level(), position, instance.getX() + 0.5, instance.getY() + 0.5, instance.getZ() + 0.5); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.java new file mode 100644 index 0000000..9adc5cb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.mixin.compatibility.vista; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.mehvahdjukaar.vista.client.ViewFinderController; +import net.minecraft.client.Camera; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ViewFinderController.class) +public class ViewFinderControllerMixin { + + @Unique + private static final Quaternionf sable$orientation = new Quaternionf(); + + @Inject(method = "setupCamera", at = @At("TAIL")) + private static void sable$setupCamera(final Camera camera, final BlockGetter level, final Entity entity, final boolean detached, final boolean thirdPersonReverse, final float partialTick, final CallbackInfoReturnable cir, @Local(ordinal = 0) final Vec3 centerCannonPos) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(entity.level(), centerCannonPos); + if(subLevel != null) { + final Quaternionf rotation = camera.rotation(); + sable$orientation.set(subLevel.renderPose().orientation()); + + rotation.premul(sable$orientation, rotation); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.java new file mode 100644 index 0000000..de8e34e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.mixin.config; + +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.ShaderInstance; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +import java.util.Map; + +@Mixin(GameRenderer.class) +public interface GameRendererAccessor { + + @Accessor + Map getShaders(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.java new file mode 100644 index 0000000..fe41feb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.death_message; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.network.chat.Component; +import net.minecraft.network.chat.MutableComponent; +import net.minecraft.world.damagesource.CombatTracker; +import net.minecraft.world.entity.LivingEntity; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(CombatTracker.class) +public class CombatTrackerMixin { + + @Shadow + @Final + private LivingEntity mob; + + @WrapOperation(method = "getFallMessage", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/chat/Component;translatable(Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent;")) + private MutableComponent sable$getFallMessage(final String string, final Object[] objects, final Operation original) { + final LivingEntity entity = this.mob; + final SubLevel subLevel = Sable.HELPER.getLastTrackingSubLevel(entity); + if (subLevel != null && subLevel.getName() != null) { + if (!subLevel.getName().isEmpty() && Sable.HELPER.getTrackingSubLevel(entity) != subLevel) { + return Component.translatable("death.attack.fall.from_sublevel", entity.getDisplayName(), subLevel.getName()); + } + } + return original.call(string, objects); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/EntityMixin.java new file mode 100644 index 0000000..08a72bb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/death_message/EntityMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixin.death_message; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Inject(method = "tick", at = @At("RETURN")) + private void sable$updateLastSubLevelId(final CallbackInfo ci) { + final Entity self = (Entity) (Object) this; + + if (Sable.HELPER.getTrackingSubLevel(self) == null && self.onGround()) { + ((EntityMovementExtension) self).sable$setLastTrackingSubLevelID(null); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.java new file mode 100644 index 0000000..b9d392c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.mixin.debug_render; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.debug.DebugRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(DebugRenderer.class) +public class DebugRendererMixin { + + /** + * @author RyanH + * @reason Take into account sub-levels + */ + @Overwrite + public static void renderFilledBox(final PoseStack poseStack, final MultiBufferSource bufferSource, final BlockPos blockPos, final float f, final float g, final float h, final float i, final float j) { + final Camera camera = Minecraft.getInstance().gameRenderer.getMainCamera(); + if (camera.isInitialized()) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(blockPos); + + if (subLevel != null) { + poseStack.pushPose(); + final Pose3dc renderPose = subLevel.renderPose(); + final Vec3 pos = renderPose.transformPosition(blockPos.getCenter()).subtract(camera.getPosition()); + poseStack.translate(pos.x, pos.y, pos.z); + poseStack.mulPose(new Quaternionf(renderPose.orientation())); + DebugRenderer.renderFilledBox(poseStack, bufferSource, new AABB(0.0, 0.0, 0.0, 0.0, 0.0, 0.0).inflate(0.5).inflate(f), g, h, i, j); + poseStack.popPose(); + return; + } + + final Vec3 relativePos = camera.getPosition().reverse(); + final AABB box = new AABB(blockPos).move(relativePos).inflate(f); + + + DebugRenderer.renderFilledBox(poseStack, bufferSource, box, g, h, i, j); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.java new file mode 100644 index 0000000..aa3dc73 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.debug_render; + +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import net.minecraft.ChatFormatting; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.components.DebugScreenOverlay; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyVariable; + +import java.util.List; + +@Mixin(DebugScreenOverlay.class) +public abstract class DebugScreenOverlayMixin { + + @Shadow protected abstract Level getLevel(); + + @ModifyVariable(method = "getSystemInformation", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Minecraft;showOnlyReducedInfo()Z", shift = At.Shift.BEFORE), ordinal = 0) + public List sable$addDebugInfo(final List value) { + final SubLevelContainer container = SubLevelContainer.getContainer(Minecraft.getInstance().level); + + value.add(""); + value.add(ChatFormatting.UNDERLINE + "Sable"); + if (container instanceof final ClientSubLevelContainer clientContainer) { + clientContainer.addDebugInfo(value::add); + } + SubLevelRenderDispatcher.get().addDebugInfo(value::add); + + return value; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.java new file mode 100644 index 0000000..2cd51e8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.java @@ -0,0 +1,127 @@ +package dev.ryanhcode.sable.mixin.debug_render; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.client.ClientSableInterpolationState; +import dev.ryanhcode.sable.network.client.SubLevelSnapshotInterpolator; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.*; +import org.joml.Matrix4f; +import org.joml.Quaternionf; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Shadow + private ClientLevel level; + + @Inject(method = "renderLevel", at = @At("TAIL")) + private void renderLevel(final DeltaTracker deltaTracker, final boolean bl, final Camera camera, final GameRenderer gameRenderer, final LightTexture lightTexture, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci) { + final Minecraft minecraft = Minecraft.getInstance(); + + if (!minecraft.getEntityRenderDispatcher().shouldRenderHitBoxes() || Minecraft.getInstance().showOnlyReducedInfo()) { + return; + } + + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + final MultiBufferSource.BufferSource bufferSource = minecraft.renderBuffers().bufferSource(); + final VertexConsumer consumer = bufferSource.getBuffer(RenderType.LINES); + + final double cx = camera.getPosition().x; + final double cy = camera.getPosition().y; + final double cz = camera.getPosition().z; + + final PoseStack ps = new PoseStack(); + ps.mulPose(matrix4f); + + for (final SubLevel subLevel : container.getAllSubLevels()) { + final BoundingBox3dc bounds = subLevel.boundingBox(); + + LevelRenderer.renderLineBox( + ps, + consumer, + bounds.minX() - cx, + bounds.minY() - cy, + bounds.minZ() - cz, + bounds.maxX() - cx, + bounds.maxY() - cy, + bounds.maxZ() - cz, + 0.5f, 0.5f, 0.5f, 0.7f + ); + + ps.pushPose(); + final Pose3dc renderPose = ((ClientSubLevel) subLevel).renderPose(); + final BoundingBox3ic plotBounds = subLevel.getPlot().getBoundingBox(); + + final Vector3dc globalCenter = renderPose.position(); + final Vector3dc localCenter = renderPose.rotationPoint(); + + ps.translate(globalCenter.x() - cx, globalCenter.y() - cy, globalCenter.z() - cz); + ps.mulPose(new Quaternionf(renderPose.orientation())); + + LevelRenderer.renderLineBox( + ps, + consumer, + -2.0f / 16.0f, + -2.0f / 16.0f, + -2.0f / 16.0f, + 2.0f / 16.0f, + 2.0f / 16.0f, + 2.0f / 16.0f, + 0.7f, 0.7f, 0.5f, 1.0f + ); + + LevelRenderer.renderLineBox( + ps, + consumer, + plotBounds.minX() - localCenter.x(), + plotBounds.minY() - localCenter.y(), + plotBounds.minZ() - localCenter.z(), + plotBounds.maxX() + 1.0 - localCenter.x(), + plotBounds.maxY() + 1.0 - localCenter.y(), + plotBounds.maxZ() + 1.0 - localCenter.z(), + 0.9f, 0.5f, 0.5f, 1.0f + ); + ps.popPose(); + + if (ClientSableInterpolationState.RENDER_INTERPOLATION_BOUNDS) { + final Vector3d boundSize = bounds.size(new Vector3d()); + final SubLevelSnapshotInterpolator interpolator = ((ClientSubLevel) subLevel).getInterpolator(); + for (final SubLevelSnapshotInterpolator.Snapshot buffer : interpolator.buffer) { + final Pose3dc pose = buffer.pose(); + + LevelRenderer.renderLineBox( + ps, + consumer, + pose.position().x() - boundSize.x() / 2.0 - cx, + pose.position().y() - boundSize.y() / 2.0 - cy, + pose.position().z() - boundSize.z() / 2.0 - cz, + pose.position().x() + boundSize.x() / 2.0 - cx, + pose.position().y() + boundSize.y() / 2.0 - cy, + pose.position().z() + boundSize.z() / 2.0 - cz, + 0.0f, 1.0f, 1.0f, 0.5f + ); + } + } + } + + bufferSource.endLastBatch(); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.java new file mode 100644 index 0000000..2d1b0ae --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixin.dynamic_directional_shading; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import dev.ryanhcode.sable.render.dynamic_shade.SableDynamicDirectionalShading; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockAndTintGetter; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * Adds a hook to disable the directional shading on sub-level AO block faces. + */ +@Mixin(ModelBlockRenderer.AmbientOcclusionFace.class) +public class AmbientOcclusionFaceMixin { + + @WrapOperation(method = "calculate", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/BlockAndTintGetter;getShade(Lnet/minecraft/core/Direction;Z)F")) + private float calculate(final BlockAndTintGetter instance, final Direction direction, final boolean cull, final Operation original) { + final boolean onSubLevel = SableDynamicDirectionalShading.isEnabled() && ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$getOnSubLevel(); + return onSubLevel ? 1.0f : original.call(instance, direction, cull); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.java new file mode 100644 index 0000000..3170c82 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixin.dynamic_directional_shading; + +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(ModelBlockRenderer.Cache.class) +public class ModelBlockRendererCacheMixin implements ModelBlockRendererCacheExtension { + + @Unique + private boolean sable$onSubLevel; + + @Override + public void sable$setOnSubLevel(final boolean onSubLevel) { + this.sable$onSubLevel = onSubLevel; + } + + @Override + public boolean sable$getOnSubLevel() { + return this.sable$onSubLevel; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.java new file mode 100644 index 0000000..b22fbc8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.dynamic_directional_shading; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import dev.ryanhcode.sable.render.dynamic_shade.SableDynamicDirectionalShading; +import dev.ryanhcode.sable.render.dynamic_shade.SubLevelVertexConsumer; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockAndTintGetter; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyVariable; + +@Mixin(ModelBlockRenderer.class) +public class ModelBlockRendererMixin { + + @Shadow + @Final + public static ThreadLocal CACHE; + + @ModifyVariable(method = "putQuadData", at = @At("HEAD"), ordinal = 0, argsOnly = true) + private VertexConsumer sable$modifyConsumer(final VertexConsumer value) { + return SableDynamicDirectionalShading.isEnabled() && ((ModelBlockRendererCacheExtension) CACHE.get()).sable$getOnSubLevel() ? new SubLevelVertexConsumer(value) : value; + } + + @WrapOperation(method = "renderModelFaceFlat", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/BlockAndTintGetter;getShade(Lnet/minecraft/core/Direction;Z)F")) + public float getShade(final BlockAndTintGetter instance, final Direction direction, final boolean cull, final Operation original) { + final boolean onSubLevel = SableDynamicDirectionalShading.isEnabled() && ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$getOnSubLevel(); + return onSubLevel ? 1.0f : original.call(instance, direction, cull); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.java new file mode 100644 index 0000000..6d54016 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.mixin.enchanting_table; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.entity.EnchantingTableBlockEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(EnchantingTableBlockEntity.class) +public class EnchantingTableBlockEntityMixin { + + @Redirect(method = "bookAnimationTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getX()D")) + private static double sable$getPlayerX(final Player instance, @Local(argsOnly = true) final BlockPos blockPos) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance.level(), blockPos); + + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(instance.getEyePosition()).x(); + } + + return instance.getX(); + } + + @Redirect(method = "bookAnimationTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getZ()D")) + private static double sable$getPlayerZ(final Player instance, @Local(argsOnly = true) final BlockPos blockPos) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance.level(), blockPos); + + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(instance.getEyePosition()).z(); + } + + return instance.getZ(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.java new file mode 100644 index 0000000..592b245 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.java @@ -0,0 +1,112 @@ +package dev.ryanhcode.sable.mixin.entity.arrows_hit_blocks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.mixinhelpers.CanFallAtleastHelper; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.projectile.AbstractArrow; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Fixes the delta movement that arrows get & the direction they face when they hit blocks + */ +@Mixin(AbstractArrow.class) +public abstract class AbstractArrowMixin extends Entity { + + @Shadow + protected boolean inGround; + + public AbstractArrowMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Redirect(method = "onHitBlock", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/projectile/AbstractArrow;setDeltaMovement(Lnet/minecraft/world/phys/Vec3;)V")) + private void sable$setDeltaMovement(final AbstractArrow arrow, + final Vec3 difference, + @Local(argsOnly = true) final BlockHitResult blockHitResult, + @Share("difference") final LocalRef differenceRef, + @Share("subLevel") final LocalRef subLevelRef) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level(), blockHitResult.getLocation()); + + if (subLevel == null) { + arrow.setDeltaMovement(difference); + return; + } + + final Vec3 localPosition = subLevel.logicalPose().transformPositionInverse(this.position()); + final Vec3 diff = blockHitResult.getLocation().subtract(localPosition); + + if (!this.level().isClientSide && !this.inGround) { + final Vec3 localImpulse = subLevel.logicalPose().transformNormalInverse(this.getDeltaMovement()); + RigidBodyHandle.of((ServerSubLevel) subLevel).applyImpulseAtPoint(localPosition, localImpulse); + } + + arrow.setDeltaMovement(diff.x, diff.y, diff.z); + differenceRef.set(diff); + subLevelRef.set(subLevel); + } + + @Redirect(method = "onHitBlock", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/projectile/AbstractArrow;setPosRaw(DDD)V")) + private void sable$setPosRaw(final AbstractArrow instance, + final double x, + final double y, + final double z, + @Share("subLevel") final LocalRef subLevelRef, + @Share("difference") final LocalRef differenceRef) { + final Vec3 difference = differenceRef.get(); + + if (difference == null) { + instance.setPosRaw(x, y, z); + return; + } + + final Vec3 nudge = difference.normalize().scale(0.05F); + final SubLevel subLevel = subLevelRef.get(); + final Vec3 localPosition = subLevel.logicalPose().transformPositionInverse(this.position()); + + instance.setPosRaw(localPosition.x - nudge.x, localPosition.y - nudge.y, localPosition.z - nudge.z); + + final Vec3 vec3 = this.getDeltaMovement(); + final double d = vec3.horizontalDistance(); + this.setXRot((float) (Mth.atan2(vec3.y, d) * 57.2957763671875)); + this.setYRot((float) (Mth.atan2(vec3.x, vec3.z) * 57.2957763671875)); + + this.yRotO = this.getYRot(); + this.xRotO = this.getXRot(); + } + + @Inject(method = "startFalling", at = @At("TAIL")) + private void sable$startFalling(final CallbackInfo ci) { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + + if (subLevel != null) { + EntitySubLevelUtil.kickEntity(subLevel, this); + } + } + + @Redirect(method = "shouldFall", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;noCollision(Lnet/minecraft/world/phys/AABB;)Z")) + private boolean sable$noCollision(final Level level, final AABB aabb) { + final boolean original = level.noCollision(this, aabb); + + if (!original) return false; + + return CanFallAtleastHelper.canFallAtleastWithSubLevels(level, aabb) == null; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.java new file mode 100644 index 0000000..5a61684 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.java @@ -0,0 +1,74 @@ +package dev.ryanhcode.sable.mixin.entity.entities_in_blocks; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.CrashReport; +import net.minecraft.CrashReportCategory; +import net.minecraft.ReportedException; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + public abstract boolean isAlive(); + + @Shadow + public abstract AABB getBoundingBox(); + + @Shadow + private Level level; + + @Shadow + protected abstract void onInsideBlock(BlockState blockState); + + @Inject(method = "checkInsideBlocks", at = @At("TAIL")) + protected void checkInsideBlocks(final CallbackInfo ci) { + final AABB bounds = this.getBoundingBox(); + + final BoundingBox3d localBounds = new BoundingBox3d(bounds); + for (final SubLevel intersecting : Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(bounds))) { + localBounds.set(bounds); + localBounds.transformInverse(intersecting.logicalPose(), localBounds); + final BlockPos minPos = BlockPos.containing(localBounds.minX + 1.0E-7, localBounds.minY + 1.0E-7, localBounds.minZ + 1.0E-7); + final BlockPos maxPos = BlockPos.containing(localBounds.maxX - 1.0E-7, localBounds.maxY - 1.0E-7, localBounds.maxZ - 1.0E-7); + + if (this.level.hasChunksAt(minPos, maxPos)) { + final BlockPos.MutableBlockPos mutableBlockPos = new BlockPos.MutableBlockPos(); + + for (int i = minPos.getX(); i <= maxPos.getX(); i++) { + for (int j = minPos.getY(); j <= maxPos.getY(); j++) { + for (int k = minPos.getZ(); k <= maxPos.getZ(); k++) { + if (!this.isAlive()) { + return; + } + + mutableBlockPos.set(i, j, k); + final BlockState blockState = this.level.getBlockState(mutableBlockPos); + + try { + blockState.entityInside(this.level, mutableBlockPos, (Entity) (Object) this); + this.onInsideBlock(blockState); + } catch (final Throwable var12) { + final CrashReport crashReport = CrashReport.forThrowable(var12, "Colliding entity with block"); + final CrashReportCategory crashReportCategory = crashReport.addCategory("Block being collided with"); + CrashReportCategory.populateBlockDetails(crashReportCategory, this.level, mutableBlockPos, blockState); + throw new ReportedException(crashReport); + } + } + } + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.java new file mode 100644 index 0000000..b8bc2e5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.java @@ -0,0 +1,115 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.EntityStickExtension; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin.PacketActuallyInSubLevelExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.multiplayer.ClientPacketListener; +import net.minecraft.core.BlockPos; +import net.minecraft.network.protocol.game.ClientboundMoveEntityPacket; +import net.minecraft.network.protocol.game.ClientboundTeleportEntityPacket; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(ClientPacketListener.class) +public abstract class ClientPacketListenerMixin { + + @Shadow + private ClientLevel level; + + @WrapOperation(method = "handleTeleportEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;lerpTo(DDDFFI)V")) + private void sable$handleTeleportEntity(final Entity instance, + final double x, + final double y, + final double z, + final float yRot, + final float xRot, + final int lerpSteps, + final Operation original, + @Local(argsOnly = true) final ClientboundTeleportEntityPacket packet) { + this.sable$lerp(instance, x, y, z, yRot, xRot, lerpSteps, true, packet instanceof final PacketActuallyInSubLevelExtension extension && extension.sable$isActuallyInSubLevel()); + } + + @WrapOperation(method = "handleMoveEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;lerpTo(DDDFFI)V", ordinal = 0)) + private void sable$handleMoveEntity(final Entity instance, + final double x, + final double y, + final double z, + final float yRot, + final float xRot, + final int lerpSteps, + final Operation original, + @Local(argsOnly = true) final ClientboundMoveEntityPacket packet) { + this.sable$lerp(instance, x, y, z, yRot, xRot, lerpSteps, false, packet instanceof final PacketActuallyInSubLevelExtension extension && extension.sable$isActuallyInSubLevel()); + } + + @Unique + private void sable$lerp(final Entity entity, + final double pX, + final double pY, + final double pZ, + final float pYRot, + final float pXRot, + final int pLerpSteps, + final boolean pTeleport, + final boolean actuallyInSubLevel) { + final EntityStickExtension extension = (EntityStickExtension) entity; + Vec3 pos = new Vec3(pX, pY, pZ); + + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, pos); + final Vec3 plotPosition = extension.sable$getPlotPosition(); + + if (!actuallyInSubLevel && subLevel == null && container.inBounds(BlockPos.containing(pos))) { + return; + } + + if (subLevel != null && !actuallyInSubLevel) { + if (!(entity instanceof LivingEntity)) { + pos = subLevel.logicalPose().transformPosition(pos); + entity.lerpTo(pos.x, pos.y, pos.z, pYRot, pXRot, pLerpSteps); + return; + } + + if (plotPosition == null) { + // just jumped on a sub-level + extension.sable$setPlotPosition(subLevel.logicalPose().transformPositionInverse(entity.position())); + } else { + final SubLevel existingSubLevel = Sable.HELPER.getContaining(this.level, plotPosition); + if (existingSubLevel != null && subLevel != existingSubLevel) { + final Vec3 globalPlotPos = existingSubLevel.logicalPose().transformPosition(plotPosition); + extension.sable$setPlotPosition(subLevel.logicalPose().transformPositionInverse(globalPlotPos)); + } + } + + // The X/Y/Z are unused in the instance lerpTo call. This makes sure the entity rotation is lerped + entity.lerpTo(pX, pY, pZ, pYRot, pXRot, pLerpSteps); + + // This does a custom position lerp + extension.sable$plotLerpTo(pos, pLerpSteps); + } else { + final SubLevel existingSubLevel = Sable.HELPER.getContaining(this.level, entity.position()); + + if (subLevel != null && actuallyInSubLevel && existingSubLevel != subLevel) { + entity.setPos(subLevel.logicalPose().transformPositionInverse(entity.position())); + } else if (existingSubLevel != null && subLevel == null) { + entity.setPos(existingSubLevel.logicalPose().transformPosition(entity.position())); + } + + entity.lerpTo(pX, pY, pZ, pYRot, pXRot, pLerpSteps); + extension.sable$setPlotPosition(null); + } + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.java new file mode 100644 index 0000000..74c5db9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.java @@ -0,0 +1,94 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.EntityStickExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Allows entities to receive plot positions + */ +@Mixin(Entity.class) +public abstract class EntityMixin implements EntityStickExtension { + + @Shadow + private Level level; + + @Shadow + public abstract void setPos(Vec3 vec3); + + @Shadow + public abstract void moveTo(Vec3 vec3); + + @Shadow + public abstract void moveTo(double d, double e, double f); + + @Unique + private Vec3 sable$plotPosition = null; + + @Inject(method = "tick", at = @At("RETURN")) + private void sable$updateSubLevelPosition(final CallbackInfo ci) { + final Entity self = (Entity) (Object) this; + + // non wompy wompy + if (this.sable$plotPosition != null) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, this.sable$plotPosition); + + if (subLevel != null) { + this.setPos(subLevel.logicalPose().transformPosition(this.sable$plotPosition)); + ((EntityMovementExtension) this).sable$setTrackingSubLevel(subLevel); + } else { + this.sable$plotPosition = null; + } + } else if (this.level.isClientSide && !(self instanceof final Player player && player.isLocalPlayer()) && !(self instanceof ItemEntity)) { + // if we're on the client and the plot position doesn't exist, this must mean the entity was recently + // networked out of the plot, so let's get rid of the tracking sub-level + ((EntityMovementExtension) this).sable$setTrackingSubLevel(null); + } + } + + @Override + public void sable$plotLerpTo(final Vec3 pos, final int lerpSteps) { + this.sable$setPlotPosition(pos); + } + + @Override + public void sable$setPlotPosition(@Nullable final Vec3 position) { + this.sable$plotPosition = position; + } + + @Override + public @Nullable Vec3 sable$getPlotPosition() { + return this.sable$plotPosition; + } + + @Inject(method = "recreateFromPacket", at = @At("TAIL")) + public void sable$recreateFromPacket(final ClientboundAddEntityPacket packet, final CallbackInfo ci) { + if (!EntitySubLevelUtil.shouldKick((Entity) (Object) this)) return; + + final double packetX = packet.getX(); + final double packetY = packet.getY(); + final double packetZ = packet.getZ(); + + final SubLevel packetSubLevel = Sable.HELPER.getContaining(this.level, packetX, packetZ); + if (packetSubLevel != null) { + final Vector3d globalPacketPos = packetSubLevel.logicalPose().transformPosition(new Vector3d(packetX, packetY, packetZ)); + this.moveTo(globalPacketPos.x, globalPacketPos.y, globalPacketPos.z); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.java new file mode 100644 index 0000000..9dd2d39 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.java @@ -0,0 +1,73 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.EntityStickExtension; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.LivingEntityStickExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(EntityRenderDispatcher.class) +public class EntityRenderDispatcherMixin { + + @Inject(method = "renderHitbox", at = @At("TAIL")) + private static void renderHitbox(final PoseStack poseStack, final VertexConsumer vertexConsumer, final Entity entity, final float partialTicks, final float g, final float h, final float i, final CallbackInfo ci) { + // collision hitbox + final SubLevel tracking = Sable.HELPER.getTrackingSubLevel(entity); + + if (tracking instanceof final ClientSubLevel clientSubLevel) { + Quaterniondc customOrientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, partialTicks); + if (customOrientation == null) + customOrientation = JOMLConversion.QUAT_IDENTITY; + + final double yaw = SubLevelEntityCollision.getHitBoxYaw(clientSubLevel.renderPose()); + + poseStack.pushPose(); + final AABB bounds = entity.getBoundingBox().move(-entity.getX(), -entity.getY(), -entity.getZ()); + poseStack.translate(0.0, entity.getEyeHeight(), 0.0); + poseStack.mulPose(new Quaternionf(customOrientation).rotateY((float) yaw)); + poseStack.translate(0.0, -entity.getEyeHeight(), 0.0); + LevelRenderer.renderLineBox(poseStack, vertexConsumer, bounds, 1.0F, 1.0F, 0.0F, 0.4F); + poseStack.popPose(); + } + + final EntityStickExtension duck = (EntityStickExtension) entity; + final Vec3 plotPosition = duck.sable$getPlotPosition(); + if (plotPosition != null) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(entity.level(), plotPosition); + if (subLevel != null) { + final Vec3 cam = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + final Vec3 projectedPos = subLevel.renderPose().transformPosition(plotPosition); + + poseStack.popPose(); + final AABB aABB = entity.getType().getSpawnAABB(projectedPos.x - cam.x, projectedPos.y - cam.y, projectedPos.z - cam.z); + LevelRenderer.renderLineBox(poseStack, vertexConsumer, aABB, 0.0F, 1.0F, 0.0F, 0.2F); + + if (entity instanceof final LivingEntityStickExtension livingDuck) { + final Vec3 serverProjectedPos = subLevel.renderPose().transformPosition(livingDuck.sable$getLerpTarget()); + final AABB aABB3 = entity.getType().getSpawnAABB(serverProjectedPos.x - cam.x, serverProjectedPos.y - cam.y, serverProjectedPos.z - cam.z); + LevelRenderer.renderLineBox(poseStack, vertexConsumer, aABB3, 1.0F, 0.0F, 1.0F, 0.2F); + } + + poseStack.pushPose(); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.java new file mode 100644 index 0000000..b54bfb9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.java @@ -0,0 +1,172 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.LivingEntityStickExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.network.protocol.game.ClientboundAddEntityPacket; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyVariable; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity implements LivingEntityStickExtension { + + + @Shadow + protected int lerpSteps; + @Shadow + protected double lerpYRot; + @Shadow + protected double lerpXRot; + + @Shadow protected abstract void updateWalkAnimation(float f); + + @Unique + private Vec3 sable$lerpTarget = Vec3.ZERO; + + @Unique + private int sable$sableLerpSteps; + + @Unique + private int sable$sableRotLerpSteps; + + public LivingEntityMixin(final EntityType entityType, + final Level level) { + super(entityType, level); + } + + @Override + public void sable$setupLerp() { + // Prevent vanilla lerp from happening + if (this.sable$getPlotPosition() != null && this.lerpSteps > 0) { + this.sable$sableRotLerpSteps = this.lerpSteps; + this.lerpSteps = 0; + } + } + + @Override + public void sable$applyLerp() { + final Vec3 plotPos = this.sable$getPlotPosition(); + if (plotPos == null) { + this.sable$sableLerpSteps = 0; + this.sable$sableRotLerpSteps = 0; + return; + } + + if (this.sable$sableLerpSteps > 0) { + this.sable$setPlotPosition(plotPos.lerp(this.sable$lerpTarget, 1.0 / this.sable$sableLerpSteps)); + --this.sable$sableLerpSteps; + } + if (this.sable$sableRotLerpSteps > 0) { + final double difference = Mth.wrapDegrees(this.lerpYRot - (double) this.getYRot()); + this.setYRot(this.getYRot() + (float) difference / (float) this.sable$sableRotLerpSteps); + this.setXRot(this.getXRot() + (float) (this.lerpXRot - (double) this.getXRot()) / (float) this.sable$sableRotLerpSteps); + --this.sable$sableRotLerpSteps; + this.setRot(this.getYRot(), this.getXRot()); + } + } + + + @Override + public Vec3 sable$getLerpTarget() { + return this.sable$lerpTarget; + } + + @Inject(method = "aiStep", at = @At("HEAD")) + private void sable$updateRotLerp(final CallbackInfo ci) { + this.sable$setupLerp(); + } + + @Inject(method = "aiStep", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;setDeltaMovement(DDD)V", shift = At.Shift.BEFORE)) + private void sable$updatePlotPosition(final CallbackInfo ci) { + this.sable$applyLerp(); + } + + + @Override + public void sable$plotLerpTo(final Vec3 pos, final int lerpSteps) { + this.sable$lerpTarget = pos; + this.sable$sableLerpSteps = lerpSteps; + } + + @ModifyVariable(method = "tick", at = @At("STORE"), ordinal = 0) + private double sable$modifyXDifference(final double x) { + return this.sable$getDifference(true).x; + } + + + @ModifyVariable(method = "tick", at = @At("STORE"), ordinal = 1) + private double sable$modifyZDifference(final double x) { + return this.sable$getDifference(true).z; + } + + @Redirect(method = "calculateEntityAnimation", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;updateWalkAnimation(F)V")) + private void sable$walkAnimation(final LivingEntity instance, final float g, final boolean pIncludeHeight) { + final Vec3 delta = this.sable$getDifference(false); + final float f = (float) Mth.length(delta.x, pIncludeHeight ? delta.y : 0.0D, delta.z); + + this.updateWalkAnimation(f); + + } + + @Unique + private Vec3 sable$getDifference(final boolean countLocalPlayer) { + Vec3 currentPos = this.position(); + Vec3 oldPos = new Vec3(this.xo, this.yo, this.zo); + + Vec3 delta = currentPos.subtract(oldPos); + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this); + + if (trackingSubLevel != null && (countLocalPlayer || !(((Object)this) instanceof final Player player && player.isLocalPlayer()))) { + final Pose3d pose = trackingSubLevel.logicalPose(); + final Pose3dc lastPose = trackingSubLevel.lastPose(); + currentPos = pose.transformPositionInverse(currentPos); + oldPos = lastPose.transformPositionInverse(oldPos); + delta = currentPos.subtract(oldPos); + delta = pose.transformNormal(delta); + } + + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(this, 1.0f); + if (orientation != null) { + delta = JOMLConversion.toMojang(orientation.transformInverse(JOMLConversion.toJOML(delta))); + } + + + return delta; + } + + @Inject(method = "recreateFromPacket", at = @At("TAIL")) + public void sable$recreateFromPacket(final ClientboundAddEntityPacket packet, final CallbackInfo ci) { + if(!EntitySubLevelUtil.shouldKick(this)) return; + + final double packetX = packet.getX(); + final double packetY = packet.getY(); + final double packetZ = packet.getZ(); + + final SubLevel packetSubLevel = Sable.HELPER.getContaining(this.level(), packetX, packetZ); + if (packetSubLevel != null) { + final Vector3d globalPacketPos = packetSubLevel.logicalPose().transformPosition(new Vector3d(packetX, packetY, packetZ)); + this.setPos(globalPacketPos.x, globalPacketPos.y, globalPacketPos.z); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.java new file mode 100644 index 0000000..6bc9227 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.java @@ -0,0 +1,78 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalBooleanRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin.PacketActuallyInSubLevelExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.server.level.ServerEntity; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.function.Consumer; + +/** + * If an entity is currently tracking / standing on a {@link SubLevel}, network the position local to that data + */ +@Mixin(ServerEntity.class) +public class ServerEntityMixin { + + @Shadow + @Final + private Entity entity; + + @Shadow @Final private ServerLevel level; + @Unique + private Vec3 sable$oldPos = null; + + @Inject(method = "sendChanges", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;trackingPosition()Lnet/minecraft/world/phys/Vec3;", shift = At.Shift.BEFORE)) + private void sable$pre(final CallbackInfo ci, @Share("actuallyInSubLevel") final LocalBooleanRef actuallyInSubLevel) { + // TODO: Finish for non living entities + this.sable$oldPos = null; + + final SubLevel containingSubLevel = Sable.HELPER.getContaining(this.entity); + + if (containingSubLevel != null) { + actuallyInSubLevel.set(true); + } + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this.entity); + + Vec3 pos = this.entity.position(); + if (trackingSubLevel != null) { + this.sable$oldPos = new Vec3(pos.x, pos.y, pos.z); + pos = trackingSubLevel.lastPose().transformPositionInverse(pos); + + ((EntityMovementExtension) this.entity).sable$setPosField(pos); + } + } + + @Inject(method = "sendChanges", at = @At(value = "RETURN")) + private void sable$postTransform(final CallbackInfo ci) { + if (this.sable$oldPos != null) { + ((EntityMovementExtension) this.entity).sable$setPosField(this.sable$oldPos); + this.sable$oldPos = null; + } + } + + @WrapOperation(method = "sendChanges", at = @At(value = "INVOKE", target = "Ljava/util/function/Consumer;accept(Ljava/lang/Object;)V")) + private void sable$sendChanges(final Consumer instance, final Object t, final Operation original, @Share("actuallyInSubLevel") final LocalBooleanRef actuallyInSubLevel) { + if (actuallyInSubLevel.get() && t instanceof final PacketActuallyInSubLevelExtension extension) { + extension.sable$setActuallyInSubLevel(true); + } + original.call(instance, t); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.java new file mode 100644 index 0000000..0ebe8e5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.java @@ -0,0 +1,161 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.effects; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Optional; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + @Final + protected RandomSource random; + @Shadow + private Level level; + @Shadow + private BlockPos blockPosition; + + @Shadow + public abstract Vec3 position(); + + @Shadow + @Deprecated + public abstract BlockPos getOnPosLegacy(); + + @Shadow + public abstract Level level(); + + @Shadow + public abstract Vec3 getDeltaMovement(); + + @Shadow + public abstract double getX(); + + @Shadow + public abstract double getZ(); + + @Shadow + public abstract BlockPos blockPosition(); + + @Shadow public Optional mainSupportingBlockPos; + + @Shadow public abstract Vec3 getEyePosition(); + + @Inject(method = "spawnSprintParticle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;", shift = At.Shift.AFTER)) + private void sable$spawnSprintParticle(final CallbackInfo ci, @Local(ordinal = 0) final BlockPos blockPos, @Share("localPosition") final LocalRef localPosition) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, blockPos); + + final Vec3 feetPos = JOMLConversion.toMojang(Sable.HELPER.getFeetPos((Entity) (Object) this, 0.0f)); + localPosition.set(feetPos); + + if (subLevel != null) { + localPosition.set(subLevel.logicalPose().transformPositionInverse(feetPos)); + } + } + + @Redirect(method = "spawnSprintParticle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getX()D")) + private double sable$getX(final Entity entity, @Share("localPosition") final LocalRef localPosition) { + return localPosition.get().x; + } + + @Redirect(method = "spawnSprintParticle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getZ()D")) + private double sable$getZ(final Entity entity, @Share("localPosition") final LocalRef localPosition) { + return localPosition.get().z; + } + + @Redirect(method = "spawnSprintParticle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getY()D")) + private double sable$getY(final Entity entity, @Share("localPosition") final LocalRef localPosition) { + return localPosition.get().y; + } + + + @Redirect(method = "spawnSprintParticle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;addParticle(Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V")) + private void sable$addParticle(final Level instance, final ParticleOptions particleOptions, final double d, final double e, final double f, final double g, final double h, final double i, @Share("localPosition") final LocalRef localPosition, @Local(ordinal = 0) final BlockPos pos) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, pos); + + if (subLevel == null) { + instance.addParticle(particleOptions, d, e, f, g, h, i); + return; + } + + Vec3 upDir = new Vec3(0, 1, 0); + + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation((Entity) (Object) this, 1.0f); + if (orientation != null) { + final Vector3d upDirJOML = orientation.transform(OrientedBoundingBox3d.UP, new Vector3d()); + upDir = JOMLConversion.toMojang(upDirJOML); + } + + // magic number offset in original is 0.1 + final Vec3 p = new Vec3(d, e - 0.1, f).add(subLevel.logicalPose().transformNormalInverse(upDir.scale(0.1))); + Vec3 v = subLevel.logicalPose().transformNormalInverse(new Vec3(g, h, i)); + + if (orientation != null) { + v = this.getDeltaMovement().scale(-4.0); + + final double dot = v.dot(upDir); + v = v.subtract(upDir.x * dot, upDir.y * dot, upDir.z * dot).add(upDir.x * 1.5, upDir.y * 1.5, upDir.z * 1.5); + } + + instance.addParticle(particleOptions, p.x, p.y, p.z, v.x, v.y, v.z); + } + + /** + * Makes getOnPos fall back on a simple, single block check when standing on a sub-level + */ + @Inject(method = "getOnPos(F)Lnet/minecraft/core/BlockPos;", at = @At("HEAD"), cancellable = true) + private void sable$preGetOnPos(final float distance, final CallbackInfoReturnable cir) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel((Entity) (Object) this); + final Vec3 feetPos = JOMLConversion.toMojang(Sable.HELPER.getFeetPos((Entity) (Object) this, Math.max(0.1f, distance))); + + if (trackingSubLevel != null) { + final Vec3 localPos = trackingSubLevel.logicalPose().transformPositionInverse(feetPos); + cir.setReturnValue(BlockPos.containing(localPos)); + return; + } + + if (this.mainSupportingBlockPos.isEmpty()) { + final BoundingBox3d bounds = new BoundingBox3d(this.blockPosition); + bounds.expand(distance, bounds); + + final Iterable intersectingSubLevels = Sable.HELPER.getAllIntersecting(this.level, bounds); + + for (final SubLevel subLevel : intersectingSubLevels) { + final Vec3 localPos = subLevel.logicalPose().transformPositionInverse(feetPos); + final BlockPos localBlockPos = BlockPos.containing(localPos); + + // TODO: This should check if the collision shape is not empty, not if it's air + if (!this.level.getBlockState(localBlockPos).isAir()) { + cir.setReturnValue(localBlockPos); + return; + } + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.java new file mode 100644 index 0000000..349afa1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.effects; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.LivingEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(LivingEntity.class) +public class LivingEntityMixin { + + /** + * Make the fall particles work on when falling on sub-level blocks. I don't like that we don't keep track of + * supporting blocks for sub-levels, but I can change that later. + */ + @WrapOperation(method = "checkFallDamage", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$fallDamageParticlesPosition(final LivingEntity instance, final Operation original, @Local(argsOnly = true) final BlockPos blockPos) { + if (Sable.HELPER.getContaining(instance.level(), blockPos) != null) { + return blockPos; + } + + return original.call(instance); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.java new file mode 100644 index 0000000..7368e77 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.effects; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LocalPlayer.class) +public abstract class LocalPlayerMixin extends Entity { + + public LocalPlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "playSound", at = @At("HEAD"), cancellable = true) + private void sable$playSound(final SoundEvent soundEvent, final float f, final float g, final CallbackInfo ci) { + if (EntitySubLevelUtil.hasCustomEntityOrientation(this)) { + final Vector3d feet = Sable.HELPER.getFeetPos(this, 0.0f); + this.level().playSound(null, feet.x, feet.y, feet.z, soundEvent, this.getSoundSource(), f, g); + ci.cancel(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.java new file mode 100644 index 0000000..4e16623 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.packet_mixin; + +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin.PacketActuallyInSubLevelExtension; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.protocol.game.ClientboundMoveEntityPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ClientboundMoveEntityPacket.Pos.class) +public class ClientboundMoveEntityPacketPosMixin implements PacketActuallyInSubLevelExtension { + /** + * If the entity is actually in a sub-level, and not just networked aside one + */ + @Unique + private boolean sable$actuallyInSubLevel; + + @Inject(method = "write", at = @At("TAIL")) + private void sable$writeActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfo ci) { + friendlyByteBuf.writeBoolean(this.sable$actuallyInSubLevel); + } + + @Override + public void sable$setActuallyInSubLevel(final boolean actuallyInSubLevel) { + this.sable$actuallyInSubLevel = actuallyInSubLevel; + } + + @Override + public boolean sable$isActuallyInSubLevel() { + return this.sable$actuallyInSubLevel; + } + + @Inject(method = "read", at = @At("RETURN")) + private static void sable$readActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfoReturnable cir) { + ((PacketActuallyInSubLevelExtension) cir.getReturnValue()).sable$setActuallyInSubLevel(friendlyByteBuf.readBoolean()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.java new file mode 100644 index 0000000..d10d7a2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.packet_mixin; + +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin.PacketActuallyInSubLevelExtension; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.protocol.game.ClientboundMoveEntityPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ClientboundMoveEntityPacket.PosRot.class) +public class ClientboundMoveEntityPacketPosRotMixin implements PacketActuallyInSubLevelExtension { + /** + * If the entity is actually in a sub-level, and not just networked aside one + */ + @Unique + private boolean sable$actuallyInSubLevel; + + @Inject(method = "write", at = @At("TAIL")) + private void sable$writeActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfo ci) { + friendlyByteBuf.writeBoolean(this.sable$actuallyInSubLevel); + } + + @Override + public void sable$setActuallyInSubLevel(final boolean actuallyInSubLevel) { + this.sable$actuallyInSubLevel = actuallyInSubLevel; + } + + @Override + public boolean sable$isActuallyInSubLevel() { + return this.sable$actuallyInSubLevel; + } + + @Inject(method = "read", at = @At("RETURN")) + private static void sable$readActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfoReturnable cir) { + ((PacketActuallyInSubLevelExtension) cir.getReturnValue()).sable$setActuallyInSubLevel(friendlyByteBuf.readBoolean()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.java new file mode 100644 index 0000000..890a821 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.packet_mixin; + +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin.PacketActuallyInSubLevelExtension; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.protocol.game.ClientboundTeleportEntityPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ClientboundTeleportEntityPacket.class) +public class ClientboundTeleportEntityPacketMixin implements PacketActuallyInSubLevelExtension { + /** + * If the entity is actually in a sub-level, and not just networked aside one + */ + @Unique + private boolean sable$actuallyInSubLevel; + + @Inject(method = "(Lnet/minecraft/network/FriendlyByteBuf;)V", at = @At("RETURN")) + private void sable$readActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfo ci) { + this.sable$setActuallyInSubLevel(friendlyByteBuf.readBoolean()); + } + + @Inject(method = "write", at = @At("TAIL")) + private void sable$writeActuallyInSubLevel(final FriendlyByteBuf friendlyByteBuf, final CallbackInfo ci) { + friendlyByteBuf.writeBoolean(this.sable$actuallyInSubLevel); + } + + @Override + public void sable$setActuallyInSubLevel(final boolean actuallyInSubLevel) { + this.sable$actuallyInSubLevel = actuallyInSubLevel; + } + + @Override + public boolean sable$isActuallyInSubLevel() { + return this.sable$actuallyInSubLevel; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.java new file mode 100644 index 0000000..b11fd8e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.player; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LocalPlayer.class) +public abstract class LocalPlayerMixin extends Entity { + + @Unique + private Vec3 sable$oldPos; + + public LocalPlayerMixin(final EntityType pEntityType, final Level pLevel) { + super(pEntityType, pLevel); + } + + @Inject(method = "sendPosition", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;getX()D", ordinal = 0, shift = At.Shift.BEFORE)) + private void sable$preSendPosition(final CallbackInfo ci) { + this.sable$oldPos = null; + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this); + if (trackingSubLevel != null && !trackingSubLevel.isRemoved()) { + final Vec3 pos = this.position(); + this.sable$oldPos = new Vec3(pos.x, pos.y, pos.z); + + final Vec3 localPosition = trackingSubLevel.logicalPose().transformPositionInverse(pos); + ((EntityMovementExtension) this).sable$setPosField(localPosition); + } + } + + @Inject(method = "sendPosition", at = @At(value = "RETURN")) + private void sable$postSendPosition(final CallbackInfo ci) { + if (this.sable$oldPos != null) { + ((EntityMovementExtension) this).sable$setPosField(this.sable$oldPos); + this.sable$oldPos = null; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.java new file mode 100644 index 0000000..b98256e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.player; + +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.LivingEntityStickExtension; +import net.minecraft.client.player.RemotePlayer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(RemotePlayer.class) +public abstract class RemotePlayerMixin implements LivingEntityStickExtension { + + @Inject(method = "aiStep", at = @At("HEAD")) + private void sable$updateRotLerp(final CallbackInfo ci) { + this.sable$setupLerp(); + } + + @Inject(method = "aiStep", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/RemotePlayer;updateSwingTime()V", shift = At.Shift.BEFORE)) + private void sable$updateSubLevelPosition(final CallbackInfo ci) { + this.sable$applyLerp(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.java new file mode 100644 index 0000000..d7e9008 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.player; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketExtension; +import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.ServerGamePacketListenerImpl; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ServerGamePacketListenerImpl.class) +public class ServerGamePacketListenerImplMixin { + + @Shadow + public ServerPlayer player; + + @Inject(method = "handleMovePlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/protocol/PacketUtils;ensureRunningOnSameThread(Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/server/level/ServerLevel;)V", shift = At.Shift.AFTER)) + public void handleMovePlayer(final ServerboundMovePlayerPacket packet, final CallbackInfo ci) { + ((ServerboundMovePlayerPacketExtension) packet).sable$handle(this.player); + } + + /** + * FIXME: Don't just disable this check to handle sub-level freezing + */ + @WrapOperation(method = "handleMovePlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerPlayer;isChangingDimension()Z")) + private boolean sable$disableMovedTooQuicklyCheck(final ServerPlayer instance, final Operation original) { + if (Sable.HELPER.getTrackingSubLevel(instance) != null) { + return true; + } + + return original.call(instance); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.java new file mode 100644 index 0000000..23a238b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.player; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin extends Entity { + + @Unique + private final Vector3d sable$trackedSubLevelPos = new Vector3d(); + + public ServerPlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "tick", at = @At("HEAD")) + public void tick(final CallbackInfo ci) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this); + + if (trackingSubLevel != null && !trackingSubLevel.isRemoved()) { + final Vector3d entityCenter = JOMLConversion.getAABBCenter(this.getBoundingBox(), this.sable$trackedSubLevelPos); + final double entityCenterX = entityCenter.x(); + final double entityCenterY = entityCenter.y(); + final double entityCenterZ = entityCenter.z(); + + final Pose3dc pose = trackingSubLevel.logicalPose(); + final Pose3dc lastPose = trackingSubLevel.lastPose(); + + final Vector3d inherited = pose.transformPosition(lastPose.transformPositionInverse(entityCenter, entityCenter)); + + final Vec3 position = this.position(); + this.setPos(new Vec3( + position.x + inherited.x - entityCenterX, + position.y + inherited.y - entityCenterY, + position.z + inherited.z - entityCenterZ)); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.java new file mode 100644 index 0000000..c3c2047 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.mixin.entity.entities_stick_sublevels.player; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.network.protocol.game.ServerboundMovePlayerPacket; +import net.minecraft.server.level.ServerPlayer; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(ServerboundMovePlayerPacket.class) +public class ServerboundMovePlayerPacketMixin implements ServerboundMovePlayerPacketExtension { + + @Mutable + @Shadow + @Final + protected double x; + + @Mutable + @Shadow + @Final + protected double y; + + @Mutable + @Shadow + @Final + protected double z; + + @Shadow + @Final + protected boolean hasPos; + + @Override + public void sable$handle(final ServerPlayer player) { + if (!this.hasPos) return; + + final SubLevel subLevel = Sable.HELPER.getContaining(player.level(), this.x, this.z); + + if (subLevel == null) { + final SubLevelContainer container = SubLevelContainer.getContainer(player.level()); + + if (container != null && container.inBounds(BlockPos.containing(this.x, this.y, this.z))) { + this.x = player.getX(); + this.y = player.getY(); + this.z = player.getZ(); + ((EntityMovementExtension) player).sable$setTrackingSubLevel(null); + return; + } + } + + ((EntityMovementExtension) player).sable$setTrackingSubLevel(subLevel); + if (subLevel != null) { + final Vector3d newPos = subLevel.logicalPose().transformPosition(new Vector3d(this.x, this.y, this.z)); + + this.x = newPos.x; + this.y = newPos.y; + this.z = newPos.z; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.java new file mode 100644 index 0000000..a281335 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.java @@ -0,0 +1,77 @@ +package dev.ryanhcode.sable.mixin.entity.entities_turn_with_sub_levels; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.client.renderer.GameRenderer; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(GameRenderer.class) +public class GameRendererMixin { + + @Shadow @Final private Minecraft minecraft; + + @Unique + private final Quaterniond sable$lastOrientation = new Quaterniond(); + + @Unique + private final Quaterniond sable$relativeOrientation = new Quaterniond(); + + @Unique + private UUID sable$lastSubLevel = null; + + @Inject(method = "renderLevel", at = @At("HEAD")) + public void renderLevel(final DeltaTracker deltaTracker, final CallbackInfo ci) { + final LocalPlayer player = this.minecraft.player; + final SubLevel standingSubLevel = Sable.HELPER.getTrackingSubLevel(player); + + if (standingSubLevel != null && player.getVehicle() == null && !standingSubLevel.isRemoved() && !EntitySubLevelUtil.hasCustomEntityOrientation(player)) { + final Quaterniondc current = ((ClientSubLevel) standingSubLevel).renderPose().orientation(); + + if (this.sable$lastSubLevel == null || !this.sable$lastSubLevel.equals(standingSubLevel.getUniqueId())) { + this.sable$lastOrientation.set(current); + this.sable$lastSubLevel = standingSubLevel.getUniqueId(); + } + + final Quaterniond relativeOrientation; + final Quaterniondc customOrientation = EntitySubLevelUtil.getCustomEntityOrientation(player, 1.0f); + if (customOrientation != null) { + final Quaterniond inverseCustom = new Quaterniond(customOrientation).conjugate(); + final Quaterniond currentLocal = current.premul(inverseCustom, new Quaterniond()); + final Quaterniond lastLocal = this.sable$lastOrientation.premul(inverseCustom, new Quaterniond()); + relativeOrientation = currentLocal.div(lastLocal, this.sable$relativeOrientation); + } else { + current.div(this.sable$lastOrientation, this.sable$relativeOrientation); + relativeOrientation = current.div(this.sable$lastOrientation, this.sable$relativeOrientation); + } + + final double angleDiff = 2 * relativeOrientation.y / relativeOrientation.w; + final float delta = (float) Math.toDegrees(angleDiff); + + player.yBodyRot -= delta; + player.yBodyRotO -= delta; + player.yHeadRot -= delta; + player.yHeadRotO -= delta; + player.setYRot(player.getYRot() - delta); + player.yRotO -= delta; + + this.sable$lastOrientation.set(current); + } else { + this.sable$lastSubLevel = null; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.java new file mode 100644 index 0000000..1ecde68 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.mixin.entity.entity_aabb_lookup; + +import dev.ryanhcode.sable.util.SubLevelInclusiveLevelEntityGetter; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.entity.LevelEntityGetter; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Pseudo; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Wraps the client and server level {@link net.minecraft.world.level.entity.LevelEntityGetterAdapter} in a {@link SubLevelInclusiveLevelEntityGetter} + */ +@Pseudo +@Mixin({ServerLevel.class, ClientLevel.class,}) +public class LevelsMixin { + + @Inject(method = "getEntities()Lnet/minecraft/world/level/entity/LevelEntityGetter;", at = @At("RETURN"), cancellable = true) + private void sable$postGetEntities(final CallbackInfoReturnable> cir) { + cir.setReturnValue(new SubLevelInclusiveLevelEntityGetter<>((Level) (Object) this, cir.getReturnValue())); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.java new file mode 100644 index 0000000..6a1680c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.entity.entity_ai; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.ai.goal.EatBlockGoal; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(EatBlockGoal.class) +public class EatBlockGoalMixin { + + @WrapOperation(method = {"tick", "canUse"}, at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$blockPosition(Mob instance, Operation original) { + BlockPos pos = original.call(instance); + SubLevel subLevel = Sable.HELPER.getTrackingSubLevel(instance); + if(subLevel != null) { + Vec3 transformed = subLevel.logicalPose().transformPositionInverse(instance.position()); + pos = BlockPos.containing(transformed); + } + + return pos; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.java new file mode 100644 index 0000000..1a7ec55 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.entity.entity_collision; + +import dev.ryanhcode.sable.mixinterface.entity.entity_collision.EntityExtension; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(CollisionContext.class) +public interface CollisionContextMixin { + + @Shadow + static CollisionContext empty() { + return null; + } + + /** + * @author Ocelot + * @reason Use pre-allocated collision context instead + */ + @Overwrite + static CollisionContext of(final Entity entity) { + return entity != null ? ((EntityExtension) entity).sable$getCollisionContext() : empty(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.java new file mode 100644 index 0000000..a7f5029 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.mixin.entity.entity_collision; + +import dev.ryanhcode.sable.mixinhelpers.entity.entity_collision.TheFasterEntityCollisionContext; +import dev.ryanhcode.sable.mixinterface.entity.entity_collision.EntityExtension; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(Entity.class) +public class EntityMixin implements EntityExtension { + + @Unique + private final TheFasterEntityCollisionContext sable$collisionContext = new TheFasterEntityCollisionContext((Entity) (Object) this); + + @Override + public TheFasterEntityCollisionContext sable$getCollisionContext() { + return this.sable$collisionContext; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.java new file mode 100644 index 0000000..ea30563 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.java @@ -0,0 +1,77 @@ +package dev.ryanhcode.sable.mixin.entity.entity_interaction; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.projectile.ProjectileUtil; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import java.util.Optional; + +@Mixin(ProjectileUtil.class) +public class ProjectileUtilMixin { + + @Redirect(method = "getEntityHitResult(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$fixDistance(final Vec3 start, final Vec3 hitPos, @Local(argsOnly = true) final Entity source) { + return Sable.HELPER.distanceSquaredWithSubLevels(source.level(), start, hitPos); + } + + @Redirect(method = "getEntityHitResult(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$fixDistance2(final Vec3 start, final Vec3 hitPos, @Local(argsOnly = true) final Level level) { + return Sable.HELPER.distanceSquaredWithSubLevels(level, start, hitPos); + } + + @Redirect(method = "getEntityHitResult(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;clip(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional;")) + private static Optional sable$getBoundingBox(final AABB toClip, final Vec3 start, final Vec3 end, @Local(argsOnly = true) final Entity source, @Local(ordinal = 2) final Entity clipping) { + final ActiveSableCompanion helper = Sable.HELPER; + return sable$getHitPosWithSublevels(source.level(), toClip, start, end, helper.getContaining(source.level(), start), helper.getContaining(clipping.level(), clipping.position())); + } + + @Redirect(method = "getEntityHitResult(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;clip(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional;")) + private static Optional sable$getBoundingBox2(final AABB toClip, final Vec3 start, final Vec3 end, @Local(argsOnly = true) final Level level, @Local(ordinal = 2) final Entity clipping) { + final ActiveSableCompanion helper = Sable.HELPER; + return sable$getHitPosWithSublevels(level, toClip, start, end, helper.getContaining(level, start), helper.getContaining(clipping.level(), clipping.position())); + } + + @Unique + private static @NotNull Optional sable$getHitPosWithSublevels(final Level level, final AABB toClip, Vec3 start, Vec3 end, final SubLevel sourceSubLevel, final SubLevel clippingSubLevel) { + if (sourceSubLevel == clippingSubLevel) { // either both null, or both same + return toClip.clip(start, end); + } + + if (level instanceof final LevelPoseProviderExtension poseProvider) { + if (sourceSubLevel != null) { + start = poseProvider.sable$getPose(sourceSubLevel).transformPosition(start); + end = poseProvider.sable$getPose(sourceSubLevel).transformPosition(end); + } + + if (clippingSubLevel != null) { + start = poseProvider.sable$getPose(clippingSubLevel).transformPositionInverse(start); + end = poseProvider.sable$getPose(clippingSubLevel).transformPositionInverse(end); + } + } else { + if (sourceSubLevel != null) { + start = sourceSubLevel.logicalPose().transformPosition(start); + end = sourceSubLevel.logicalPose().transformPosition(end); + } + + if (clippingSubLevel != null) { + start = clippingSubLevel.logicalPose().transformPositionInverse(start); + end = clippingSubLevel.logicalPose().transformPositionInverse(end); + } + } + + return toClip.clip(start, end); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.java new file mode 100644 index 0000000..3e8425a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.entity.entity_kicking; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +import java.util.function.Supplier; + +@Mixin(Block.class) +public abstract class BlockMixin { + + @Shadow + private static void popResource(final Level arg, final Supplier supplier, final ItemStack arg2) { + } + + @Inject(method = "popResource(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/block/Block;popResource(Lnet/minecraft/world/level/Level;Ljava/util/function/Supplier;Lnet/minecraft/world/item/ItemStack;)V", shift = At.Shift.BEFORE), locals = LocalCapture.CAPTURE_FAILHARD, cancellable = true) + private static void sable$popResourceFromFace(final Level level, final BlockPos blockPos, final ItemStack itemStack, final CallbackInfo ci, final double yOffset, final double x, final double y, final double z) { + final SubLevel subLevel = Sable.HELPER.getContaining(level, blockPos); + + if (subLevel != null) { + popResource(level, () -> { + final ItemEntity itemEntity = new ItemEntity(level, x, y, z, itemStack); + + Vec3 deltaMovement = itemEntity.getDeltaMovement(); + + deltaMovement = subLevel.logicalPose().transformNormalInverse(deltaMovement); + + itemEntity.setDeltaMovement(deltaMovement); + + return itemEntity; + }, itemStack); + + ci.cancel(); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.java new file mode 100644 index 0000000..e216754 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.entity.entity_kicking; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Kicks entities out of sublevels if they are added to a {@link dev.ryanhcode.sable.sublevel.plot.LevelPlot} + */ +@Mixin(ServerLevel.class) +public class ServerLevelMixin { + + @Inject(method = "addFreshEntity", at = @At("HEAD")) + public void sable$kickEntity(final Entity entity, final CallbackInfoReturnable cir) { + if (!EntitySubLevelUtil.shouldKick(entity)) { + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(entity); + if (subLevel != null) { + EntitySubLevelUtil.kickEntity(subLevel, entity); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.java new file mode 100644 index 0000000..1b2de93 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.java @@ -0,0 +1,56 @@ +package dev.ryanhcode.sable.mixin.entity.entity_leashing; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.entity.EntityRenderer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(EntityRenderer.class) +public class EntityRendererMixin { + + @Redirect(method = "renderLeash", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getRopeHoldPosition(F)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$getRopeHoldPosition(final Entity instance, final float f, @Local(argsOnly = true, ordinal = 0) final Entity leashedEntity){ + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel leashedSubLevel = helper.getContaining(leashedEntity); + + final Vector3d ropeHoldPosition = JOMLConversion.toJOML(instance.getRopeHoldPosition(f)); + final SubLevel holdingSubLevel = helper.getContaining(leashedEntity.level(), ropeHoldPosition); + + if (holdingSubLevel != null) { + holdingSubLevel.logicalPose().transformPosition(ropeHoldPosition); + } + + if (leashedSubLevel != null) { + leashedSubLevel.logicalPose().transformPositionInverse(ropeHoldPosition); + } + + return JOMLConversion.toMojang(ropeHoldPosition); + } + + @Redirect(method = "renderLeash", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getEyePosition(F)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$getEyePosition(final Entity instance, final float f, @Local(argsOnly = true, ordinal = 0) final Entity leashedEntity){ + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel leashedSubLevel = helper.getContaining(leashedEntity); + + final Vector3d eyePosition = JOMLConversion.toJOML(instance.getEyePosition(f)); + final SubLevel holdingSubLevel = helper.getContaining(leashedEntity.level(), eyePosition); + + if (holdingSubLevel != null) { + holdingSubLevel.logicalPose().transformPosition(eyePosition); + } + + if (leashedSubLevel != null) { + leashedSubLevel.logicalPose().transformPositionInverse(eyePosition); + } + + return JOMLConversion.toMojang(eyePosition); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.java new file mode 100644 index 0000000..100c455 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.mixin.entity.entity_leashing; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.Leashable; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(Leashable.class) +public interface LeashableMixin { + + /** + * @author Ryan H + * @reason Take into account sub-levels + */ + @Overwrite + private static void legacyElasticRangeLeashBehaviour(final E leashedEntity, final Entity handlerEntity, final float f) { + final ActiveSableCompanion helper = Sable.HELPER; + final Level level = handlerEntity.level(); + final Vec3 handlerPos = helper.projectOutOfSubLevel(level, handlerEntity.position()); + final Vec3 leashedPos = helper.projectOutOfSubLevel(level, leashedEntity.position()); + final double d = (handlerPos.x - leashedPos.x) / (double)f; + final double e = (handlerPos.y - leashedPos.y) / (double)f; + final double g = (handlerPos.z - leashedPos.z) / (double)f; + + Vec3 impulse = leashedEntity.getDeltaMovement().add(Math.copySign(d * d * 0.4, d), Math.copySign(e * e * 0.4, e), Math.copySign(g * g * 0.4, g)); + final SubLevel leashedSubLevel = helper.getContaining(leashedEntity); + + if (leashedSubLevel != null) { + impulse = leashedSubLevel.logicalPose().transformNormalInverse(impulse); + } + + leashedEntity.setDeltaMovement(impulse); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.java new file mode 100644 index 0000000..f500e8e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.java @@ -0,0 +1,91 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.level.pathfinder.FlyNodeEvaluator; +import net.minecraft.world.level.pathfinder.Node; +import net.minecraft.world.level.pathfinder.NodeEvaluator; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; + +@Mixin(FlyNodeEvaluator.class) +public abstract class FlyNodeEvaluatorMixin extends NodeEvaluator { + + @Inject(method = "getStart", at = @At("HEAD")) + private void sable$init(final CallbackInfoReturnable cir, @Share("mobPosition") final LocalRef mobPosition) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this.mob); + + if (trackingSubLevel != null) { + mobPosition.set(trackingSubLevel.logicalPose().transformPositionInverse(this.mob.position())); + } else { + mobPosition.set(this.mob.position()); + } + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getBlockY()I")) + private int sable$redirectGetBlockY(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return Mth.floor(mobPosition.get().y); + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getX()D")) + private double sable$redirectGetX(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().x; + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getY()D")) + private double sable$redirectGetY(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().y; + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getZ()D")) + private double sable$redirectGetZ(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().z; + } + + /** + * @author RyanH + * @reason Work on sub-levels + */ + @Overwrite + private Iterable iteratePathfindingStartNodeCandidatePositions(final Mob mob) { + final AABB mobBounds = mob.getBoundingBox(); + final boolean small = mobBounds.getSize() < (double) 1.0F; + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this.mob); + + Vec3 localPosition = this.mob.position(); + + if (trackingSubLevel != null) + localPosition = trackingSubLevel.logicalPose().transformPositionInverse(localPosition); + + final AABB localMobBounds = mob.getBoundingBox().move(localPosition.subtract(this.mob.position())); + + if (!small) { + final int blockY = Mth.floor(localPosition.y); + return List.of(BlockPos.containing(localMobBounds.minX, blockY, localMobBounds.minZ), + BlockPos.containing(localMobBounds.minX, blockY, localMobBounds.maxZ), + BlockPos.containing(localMobBounds.maxX, blockY, localMobBounds.minZ), + BlockPos.containing(localMobBounds.maxX, blockY, localMobBounds.maxZ)); + } else { + final double xSize = Math.max(0.0F, (double) 1.1F - mobBounds.getXsize()); + final double ySize = Math.max(0.0F, (double) 1.1F - mobBounds.getYsize()); + final double zSize = Math.max(0.0F, (double) 1.1F - mobBounds.getZsize()); + final AABB localBounds = localMobBounds.inflate(xSize, ySize, zSize); + return BlockPos.randomBetweenClosed(mob.getRandom(), 10, Mth.floor(localBounds.minX), Mth.floor(localBounds.minY), Mth.floor(localBounds.minZ), Mth.floor(localBounds.maxX), Mth.floor(localBounds.maxY), Mth.floor(localBounds.maxZ)); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.java new file mode 100644 index 0000000..8eeb87a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.ai.navigation.GroundPathNavigation; +import net.minecraft.world.level.pathfinder.Path; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(GroundPathNavigation.class) +public abstract class GroundPathNavigationMixin { + + @Shadow public abstract Path createPath(BlockPos blockPos, int i); + + @Inject(method = "createPath(Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/level/pathfinder/Path;", at = @At("HEAD"), cancellable = true) + private void sable$createPath(final Entity entity, final int i, final CallbackInfoReturnable cir){ + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + if (trackingSubLevel != null) { + final BlockPos localPos = BlockPos.containing(trackingSubLevel.logicalPose().transformPositionInverse(entity.position())); + cir.setReturnValue(this.createPath(localPos, i)); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.java new file mode 100644 index 0000000..b1707be --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.java @@ -0,0 +1,77 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.mixinterface.entity.pathfinding.PathExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.pathfinder.Path; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Path.class) +public class PathMixin implements PathExtension { + + @Unique + private Level sable$level; + + @Unique + private boolean sable$project; + + @Inject(method = "getNextEntityPos", at = @At("RETURN"), cancellable = true) + private void sable$getNextEntityPos(final Entity entity, final CallbackInfoReturnable cir) { + if (!this.sable$project) { + return; + } + + cir.setReturnValue(Sable.HELPER.projectOutOfSubLevel(entity.level(), cir.getReturnValue())); + } + + @Inject(method = "getNextNodePos", at = @At("RETURN"), cancellable = true) + private void sable$getNextNodePos(final CallbackInfoReturnable cir) { + if (!this.sable$project) { + return; + } + + final BlockPos blockPos = cir.getReturnValue(); + + + final SubLevel subLevel = Sable.HELPER.getContaining(this.sable$level, blockPos); + if (subLevel == null) { + return; + } + + final BlockPos global = BlockPos.containing(subLevel.logicalPose().transformPosition(blockPos.getCenter())); + cir.setReturnValue(global); + } + + @Inject(method = "getNodePos", at = @At("RETURN"), cancellable = true) + private void sable$getNodePos(final int i, final CallbackInfoReturnable cir) { + if (!this.sable$project) { + return; + } + + final BlockPos blockPos = cir.getReturnValue(); + + final SubLevel subLevel = Sable.HELPER.getContaining(this.sable$level, blockPos); + if (subLevel == null) { + return; + } + + final BlockPos global = BlockPos.containing(subLevel.logicalPose().transformPosition(blockPos.getCenter())); + cir.setReturnValue(global); + } + + @Override + public void sable$setLocalPath(final Level level, final boolean project) { + this.sable$level = level; + this.sable$project = project; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.java new file mode 100644 index 0000000..4d3e63e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.java @@ -0,0 +1,113 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.mixinterface.entity.pathfinding.PathExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.ai.navigation.PathNavigation; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.PathNavigationRegion; +import net.minecraft.world.level.pathfinder.Path; +import net.minecraft.world.level.pathfinder.PathFinder; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Iterator; +import java.util.Set; + +@Mixin(PathNavigation.class) +public abstract class PathNavigationMixin { + + @Shadow + @Final + protected Mob mob; + @Shadow + @Nullable + protected Path path; + @Shadow + @Final + protected Level level; + @Shadow + @Nullable + private BlockPos targetPos; + @Shadow + private int reachRange; + @Shadow + @Final + private PathFinder pathFinder; + @Shadow + private float maxVisitedNodesMultiplier; + + @Shadow + protected abstract boolean canUpdatePath(); + + @Shadow + protected abstract void resetStuckTimeout(); + + @Inject(method = "createPath(Ljava/util/Set;IZIF)Lnet/minecraft/world/level/pathfinder/Path;", at = @At("HEAD"), cancellable = true) + private void sable$createPath(final Set globalSet, final int i, final boolean bl, final int j, final float f, final CallbackInfoReturnable cir) { + SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this.mob); + + final Iterator iter = globalSet.iterator(); + while (trackingSubLevel == null && iter.hasNext()) { + final BlockPos globalPos = iter.next(); + trackingSubLevel = Sable.HELPER.getContaining(this.level, globalPos); + } + + if (trackingSubLevel != null) { + if (globalSet.isEmpty()) { + cir.setReturnValue(null); + } else if (!this.canUpdatePath()) { + cir.setReturnValue(null); + } else if (this.path != null && !this.path.isDone() && globalSet.contains(this.targetPos)) { + cir.setReturnValue(this.path); + } else { + final Pose3d pose = trackingSubLevel.logicalPose(); + final Vec3 localMobPosition = pose.transformPositionInverse(this.mob.position()); + final BlockPos localMobBlockPosition = BlockPos.containing(localMobPosition); + + this.level.getProfiler().push("pathfind_sub_level"); + + // turn global set to local + final Set localSet = new ObjectOpenHashSet<>(); + + for (final BlockPos globalPos : globalSet) { + if (Sable.HELPER.getContaining(this.level, globalPos) == trackingSubLevel) { + localSet.add(globalPos); + continue; + } + final Vec3 globalPosVec = globalPos.getCenter(); + final Vec3 localPosVec = pose.transformPositionInverse(globalPosVec); + localSet.add(BlockPos.containing(localPosVec)); + } + + final BlockPos blockPos = bl ? localMobBlockPosition.above() : localMobBlockPosition; + final int k = (int) (f + (float) i); + final PathNavigationRegion pathNavigationRegion = new PathNavigationRegion(this.level, blockPos.offset(-k, -k, -k), blockPos.offset(k, k, k)); + final Path path = this.pathFinder.findPath(pathNavigationRegion, this.mob, localSet, f, j, this.maxVisitedNodesMultiplier); + this.level.getProfiler().pop(); + if (path != null && path.getTarget() != null) { + this.targetPos = path.getTarget(); + this.reachRange = j; + this.resetStuckTimeout(); + ((PathExtension) path).sable$setLocalPath(this.level, true); + } + + + cir.setReturnValue(path); + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.java new file mode 100644 index 0000000..b67f3ed --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.level.CollisionGetter; +import net.minecraft.world.level.pathfinder.PathfindingContext; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(PathfindingContext.class) +public class PathfindingContextMixin { + + @Shadow @Final @Mutable + private BlockPos mobPosition; + + @Inject(method = "", at = @At("TAIL")) + private void sable$init(final CollisionGetter collisionGetter, final Mob mob, final CallbackInfo ci) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(mob); + + if (trackingSubLevel != null) { + this.mobPosition = BlockPos.containing(trackingSubLevel.logicalPose().transformPositionInverse(mob.position())); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.java new file mode 100644 index 0000000..8779d20 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.entity.PathfinderMob; +import net.minecraft.world.entity.ai.util.RandomPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(RandomPos.class) +public class RandomPosMixin { + + /** + * @author RyanH + * @reason Wandering on sub-levels + */ + @Overwrite + public static BlockPos generateRandomPosTowardDirection(final PathfinderMob mob, final int someInteger, final RandomSource random, final BlockPos pos) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(mob); + Vec3 effectiveMobPos = mob.position(); + + if (trackingSubLevel != null) { + effectiveMobPos = trackingSubLevel.logicalPose().transformPositionInverse(effectiveMobPos); + } + + int ox = pos.getX(); + int oz = pos.getZ(); + + if (mob.hasRestriction() && someInteger > 1) { + final BlockPos blockPos = mob.getRestrictCenter(); + if (effectiveMobPos.x() > (double) blockPos.getX()) { + ox -= random.nextInt(someInteger / 2); + } else { + ox += random.nextInt(someInteger / 2); + } + + if (effectiveMobPos.z() > (double) blockPos.getZ()) { + oz -= random.nextInt(someInteger / 2); + } else { + oz += random.nextInt(someInteger / 2); + } + } + + return BlockPos.containing((double) ox + effectiveMobPos.x(), (double) pos.getY() + effectiveMobPos.y(), (double) oz + effectiveMobPos.z()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.java new file mode 100644 index 0000000..d911a73 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.java @@ -0,0 +1,110 @@ +package dev.ryanhcode.sable.mixin.entity.entity_pathfinding; + +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.level.pathfinder.Node; +import net.minecraft.world.level.pathfinder.NodeEvaluator; +import net.minecraft.world.level.pathfinder.WalkNodeEvaluator; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(WalkNodeEvaluator.class) +public abstract class WalkNodeEvaluatorMixin extends NodeEvaluator { + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getBlockY()I")) + private int sable$redirectGetBlockY(final Mob mob) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(mob); + + if (trackingSubLevel != null) { + return Mth.floor(trackingSubLevel.logicalPose().transformPositionInverse(mob.position()).y); + } else { + return mob.getBlockY(); + } + } + @Inject(method = "getStart", at = @At("HEAD")) + private void sable$init(final CallbackInfoReturnable cir, @Share("mobPosition") final LocalRef mobPosition) { + final SubLevel trackingSubLevel = this.sable$getTrackingSubLevel(); + + if (trackingSubLevel != null) { + mobPosition.set(trackingSubLevel.logicalPose().transformPositionInverse(this.mob.position())); + } else { + mobPosition.set(this.mob.position()); + } + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getX()D")) + private double sable$redirectGetX(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().x; + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getZ()D")) + private double sable$redirectGetZ(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().z; + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getY()D")) + private double sable$redirectGetY(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().y; + } + + @Redirect(method = "getStart", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$redirectBlockPosition(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return BlockPos.containing(mobPosition.get()); + } + + + @Inject(method = "canReachWithoutCollision", at = @At("HEAD")) + private void sable$canReachWithoutCollision(final CallbackInfoReturnable cir, @Share("mobPosition") final LocalRef mobPosition) { + final SubLevel trackingSubLevel = this.sable$getTrackingSubLevel(); + + if (trackingSubLevel != null) { + mobPosition.set(trackingSubLevel.logicalPose().transformPositionInverse(this.mob.position())); + } else { + mobPosition.set(this.mob.position()); + } + } + + @Unique + private SubLevel sable$getTrackingSubLevel() { + return Sable.HELPER.getTrackingSubLevel(this.mob); + } + + + @Redirect(method = "canReachWithoutCollision", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getX()D")) + private double sable$redirectGetX2(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().x; + } + + @Redirect(method = "canReachWithoutCollision", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getZ()D")) + private double sable$redirectGetZ2(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().z; + } + + @Redirect(method = "canReachWithoutCollision", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getY()D")) + private double sable$redirectGetY2(final Mob mob, @Share("mobPosition") final LocalRef mobPosition) { + return mobPosition.get().y; + } + + @Redirect(method = "canReachWithoutCollision", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Mob;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + private AABB sable$canReachWithoutCollision(final Mob instance) { + final SubLevel trackingSubLevel = this.sable$getTrackingSubLevel(); + + if (trackingSubLevel != null) { + return instance.getBoundingBox().move(trackingSubLevel.logicalPose().transformPositionInverse(this.mob.position()).subtract(this.mob.position())); + } + + return instance.getBoundingBox(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.java new file mode 100644 index 0000000..c0fa474 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.java @@ -0,0 +1,164 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rendering; + +import com.llamalad7.mixinextras.injector.ModifyReturnValue; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.client.renderer.entity.EntityRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.Leashable; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(EntityRenderer.class) +public abstract class EntityRendererMixin { + + @Shadow + @Final + protected EntityRenderDispatcher entityRenderDispatcher; + + @ModifyReturnValue(method = "getPackedLightCoords", at = @At("RETURN")) + public final int getPackedLightCoords(final int original, final Entity arg, final float f) { + final Vec3 lightProbeOffset = arg.getLightProbePosition(f).subtract(arg.getEyePosition(f)); + final Vector3d lightProbePosition = JOMLConversion.toJOML(Sable.HELPER.getEyePositionInterpolated(arg, f)).add(lightProbeOffset.x, lightProbeOffset.y, lightProbeOffset.z); + final BlockPos blockpos = BlockPos.containing(lightProbePosition.x, lightProbePosition.y, lightProbePosition.z); + return LightTexture.pack(sable$getSubLevelAccountedBlockLight(original, arg.level(), LightLayer.BLOCK, blockpos, lightProbePosition), + sable$getSubLevelAccountedSkyLight(original, arg.level(), LightLayer.SKY, blockpos, lightProbePosition)); + } + + @Redirect(method = "getSkyLightLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBrightness(Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/BlockPos;)I")) + private int sable$getSkyLightLevel(final Level instance, final LightLayer lightLayer, final BlockPos blockPos) { + return sable$getSubLevelAccountedSkyLight(-1, instance, lightLayer, blockPos, JOMLConversion.atCenterOf(blockPos)); + } + + @Unique + private static int sable$getSubLevelAccountedSkyLight(final int original, final Level instance, final LightLayer lightLayer, final BlockPos blockPos, final Vector3dc probePosition) { + final Iterable all = Sable.HELPER.getAllIntersecting(instance, new BoundingBox3d(blockPos)); + + int baseBrightness = original == -1 ? instance.getBrightness(lightLayer, blockPos) : LightTexture.sky(original); + final BlockPos.MutableBlockPos localPosition = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos heightmapPos = new BlockPos.MutableBlockPos(); + final Vector3d tempProbePosition = new Vector3d(); + + for (final SubLevel subLevel : all) { + final ClientSubLevel clientSubLevel = (ClientSubLevel) subLevel; + + clientSubLevel.renderPose().transformPositionInverse(probePosition, tempProbePosition); + localPosition.set(tempProbePosition.x, tempProbePosition.y, tempProbePosition.z); + + final Level level = subLevel.getLevel(); + heightmapPos.setWithOffset(localPosition, Direction.UP); + final LevelPlot plot = subLevel.getPlot(); + boolean isAboveGround = false; + + while (heightmapPos.getY() >= plot.getBoundingBox().minY()) { + if (!level.getBlockState(heightmapPos).isAir()) { + isAboveGround = true; + break; + } + + heightmapPos.move(Direction.DOWN); + } + + if (isAboveGround) { + if (lightLayer == LightLayer.BLOCK) { + baseBrightness = Math.max(baseBrightness, level.getBrightness(lightLayer, localPosition)); + } else if (lightLayer == LightLayer.SKY) { + final int brightness = clientSubLevel.scaleSkyLight(level.getBrightness(lightLayer, localPosition)); + baseBrightness = Math.min(baseBrightness, brightness); + } + } + } + + return baseBrightness; + } + + @Redirect(method = "getBlockLightLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBrightness(Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/BlockPos;)I")) + private int sable$getBlockLightLevel(final Level instance, final LightLayer lightLayer, final BlockPos blockPos) { + return sable$getSubLevelAccountedBlockLight(-1, instance, lightLayer, blockPos, JOMLConversion.atCenterOf(blockPos)); + } + + @Unique + private static int sable$getSubLevelAccountedBlockLight(final int original, final Level instance, final LightLayer lightLayer, final BlockPos blockPos, final Vector3dc lightProbePosition) { + final Iterable all = Sable.HELPER.getAllIntersecting(instance, new BoundingBox3d(blockPos).expand(2.0)); + + int l = original == -1 ? instance.getBrightness(lightLayer, blockPos) : LightTexture.block(original); + final BlockPos.MutableBlockPos probeBlockPos = new BlockPos.MutableBlockPos(); + final Vector3d tempProbePosition = new Vector3d(); + + for (final SubLevel subLevel : all) { + final ClientSubLevel clientSubLevel = (ClientSubLevel) subLevel; + clientSubLevel.renderPose().transformPositionInverse(lightProbePosition, tempProbePosition); + l = Math.max(l, subLevel.getLevel().getBrightness(lightLayer, probeBlockPos.set(tempProbePosition.x, tempProbePosition.y, tempProbePosition.z))); + } + return l; + } + + @Inject(method = "shouldRender", at = @At("HEAD"), cancellable = true) + private void sable$shouldRender(final E entity, final Frustum frustum, final double pCamX, final double pCamY, final double pCamZ, final CallbackInfoReturnable cir) { + if (entity.noCulling) { + cir.setReturnValue(true); + return; + } + + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(entity); + + if (subLevel != null) { + final Vec3 globalPos = subLevel.renderPose().transformPosition(entity.position()); + final AABB aabb = new AABB(globalPos.x - 2.0D, globalPos.y - 2.0D, globalPos.z - 2.0D, globalPos.x + 2.0D, globalPos.y + 2.0D, globalPos.z + 2.0D); + + cir.setReturnValue(frustum.isVisible(aabb)); + + return; + } + + // on fast moving sub-levels + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + + if (trackingSubLevel != null) { + final float pt = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + final Vec3 positionInterpolated = Sable.HELPER.getEyePositionInterpolated(entity, pt) + .subtract(0.0, entity.getEyeHeight(), 0.0); + + + AABB aABB = entity.getBoundingBoxForCulling().inflate(0.5); + if (aABB.hasNaN() || aABB.getSize() == 0.0) { + aABB = new AABB(entity.getX() - 2.0, entity.getY() - 2.0, entity.getZ() - 2.0, entity.getX() + 2.0, entity.getY() + 2.0, entity.getZ() + 2.0); + } + + aABB = aABB.move(positionInterpolated.subtract(entity.position())); + + if (frustum.isVisible(aABB)) { + cir.setReturnValue(true); + } else { + if (entity instanceof final Leashable leashable) { + final Entity entity2 = leashable.getLeashHolder(); + if (entity2 != null) { + cir.setReturnValue(frustum.isVisible(entity2.getBoundingBoxForCulling())); + return; + } + } + + cir.setReturnValue(false); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.java new file mode 100644 index 0000000..b5450c0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.java @@ -0,0 +1,108 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rendering; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalDoubleRef; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.client.render.MatrixStack; +import foundry.veil.api.client.render.VeilRenderBridge; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import org.joml.Quaternionf; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Inject(method = "renderEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getYRot()F")) + private void renderEntityOnSubLevel(final Entity entity, + final double cameraX, + final double cameraY, + final double cameraZ, + final float partialTick, + final PoseStack poseStack, + final MultiBufferSource multiBufferSource, + final CallbackInfo ci, + @Local(ordinal = 3) final LocalDoubleRef entityX, + @Local(ordinal = 4) final LocalDoubleRef entityY, + @Local(ordinal = 5) final LocalDoubleRef entityZ, + @Share("renderPose") final LocalRef renderPoseShare) { + // Render the entity on the data + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(entity); + + if (subLevel == null) { + // Tracking sub-levels + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + + if (trackingSubLevel instanceof final ClientSubLevel clientSubLevel && !entity.isPassenger()) { + final Vector3d oldTrackingPosLocal = trackingSubLevel.lastPose().transformPositionInverse(new Vector3d(entity.xOld, entity.yOld, entity.zOld)); + final Vector3d newTrackingPosLocal = trackingSubLevel.logicalPose().transformPositionInverse(JOMLConversion.toJOML(entity.position())); + + final Vector3d interpolatedTrackingPosLocal = new Vector3d( + Mth.lerp(partialTick, oldTrackingPosLocal.x, newTrackingPosLocal.x), + Mth.lerp(partialTick, oldTrackingPosLocal.y, newTrackingPosLocal.y), + Mth.lerp(partialTick, oldTrackingPosLocal.z, newTrackingPosLocal.z) + ); + + final Pose3dc renderPose = clientSubLevel.renderPose(partialTick); + renderPose.transformPosition(interpolatedTrackingPosLocal); + + entityX.set(interpolatedTrackingPosLocal.x); + entityY.set(interpolatedTrackingPosLocal.y); + entityZ.set(interpolatedTrackingPosLocal.z); + } + + return; + } + + final Pose3dc renderPose = subLevel.renderPose(partialTick); + final Vector3d transformedPosition = renderPose.transformPosition(new Vector3d(entityX.get(), entityY.get(), entityZ.get())); + + renderPoseShare.set(renderPose); + + entityX.set(transformedPosition.x); + entityY.set(transformedPosition.y); + entityZ.set(transformedPosition.z); + } + + @WrapOperation(method = "renderEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;render(Lnet/minecraft/world/entity/Entity;DDDFFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V")) + private void renderEntity(final EntityRenderDispatcher instance, + final Entity entity, + final double x, + final double y, + final double z, + final float g, + final float h, + final PoseStack poseStack, + final MultiBufferSource multiBufferSource, + final int i, + final Operation original, + @Share("renderPose") final LocalRef renderPoseShare) { + final Pose3dc pose = renderPoseShare.get(); + if (pose != null) { + final MatrixStack matrixStack = VeilRenderBridge.create(poseStack); + matrixStack.matrixPush(); + matrixStack.rotateAround(pose.orientation(), x, y, z); + original.call(instance, entity, x, y, z, g, h, poseStack, multiBufferSource, i); + matrixStack.matrixPop(); + } else { + original.call(instance, entity, x, y, z, g, h, poseStack, multiBufferSource, i); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.java new file mode 100644 index 0000000..f3e349c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rendering.shadows; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.mixinhelpers.entity.entity_rendering.shadows.SubLevelEntityShadowRenderer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.LevelReader; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Render shadows on sub-levels + */ +@Mixin(EntityRenderDispatcher.class) +public abstract class EntityRenderDispatcherMixin { + + @Inject(method = "renderShadow", at = @At("TAIL")) + private static void sable$renderShadowsOnSubLevels(final PoseStack poseStack, + final MultiBufferSource multiBufferSource, + final Entity entity, + final float f, + final float g, + final LevelReader levelReader, + final float shadowRadius, + final CallbackInfo ci, + @Local(ordinal = 0) final PoseStack.Pose pose, + @Local(ordinal = 0) final VertexConsumer vertexConsumer) { + SubLevelEntityShadowRenderer.renderEntityShadowOnSubLevels(entity, f, g, shadowRadius, vertexConsumer, pose); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.java new file mode 100644 index 0000000..4c2b9ae --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(Block.class) +public class BlockMixin { + + @Redirect(method = "updateEntityAfterFallOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;multiply(DDD)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$rotateWithEntity(final Vec3 instance, final double x, final double y, final double z, @Local(argsOnly = true) final Entity entity) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, 1.0f); + + if (orientation == null) { + return instance.multiply(x, y, z); + } + + final Vector3d up = orientation.transform(OrientedBoundingBox3d.UP, new Vector3d()); + final double dot = up.dot(instance.x, instance.y, instance.z); + return instance.subtract(up.x * dot, up.y * dot, up.z * dot); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.java new file mode 100644 index 0000000..f402bf2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientPacketListener; +import net.minecraft.network.protocol.game.ClientboundPlayerPositionPacket; +import net.minecraft.world.entity.player.Player; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ClientPacketListener.class) +public class ClientPacketListenerMixin { + + @Inject(method = "handleMovePlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/Connection;send(Lnet/minecraft/network/protocol/Packet;)V", ordinal = 0, shift = At.Shift.BEFORE)) + private void sable$onHandleMovePlayer(final ClientboundPlayerPositionPacket clientboundPlayerPositionPacket, final CallbackInfo ci) { + final Player player = Minecraft.getInstance().player; + + final SubLevel subLevel = Sable.HELPER.getContaining(player); + if (subLevel != null) { + player.setPos(subLevel.logicalPose().transformPosition(player.position())); + EntitySubLevelUtil.setOldPosNoMovement(player); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.java new file mode 100644 index 0000000..0a60981 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.java @@ -0,0 +1,159 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinhelpers.entity.entity_riding_sub_level_vehicle.EntityRidingSubLevelVehicleHelper; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import net.minecraft.commands.arguments.EntityAnchorArgument; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.Tag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + private Level level; + + @Shadow + @Nullable + private Entity vehicle; + + @Shadow + private Vec3 position; + + @Shadow + public abstract void setPos(Vec3 vec3); + + @Shadow + public abstract boolean hasPassenger(Entity entity); + + @Shadow + public abstract Vec3 position(); + + @Shadow + protected abstract ListTag newDoubleList(double... ds); + + @Shadow + public abstract double getX(); + + @Shadow + public abstract double getY(); + + @Shadow + public abstract double getZ(); + + @Shadow public abstract Level level(); + + @Shadow @Nullable public abstract Entity getVehicle(); + + @Shadow public abstract Vec3 getLookAngle(); + + @Shadow public abstract void lookAt(EntityAnchorArgument.Anchor arg, Vec3 arg2); + + @Shadow public abstract float getXRot(); + + @Shadow public abstract float getYRot(); + + @Shadow + protected static Vec3 getInputVector(final Vec3 vec3, final float f, final float g) { + return null; + } + + @Shadow public abstract void setDeltaMovement(Vec3 vec3); + + @Shadow public abstract Vec3 getDeltaMovement(); + + @WrapOperation(method = "move", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;horizontalDistance()D")) + private double sable$fixWalkDistance(final Vec3 vec, final Operation original) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation((Entity) (Object) this, 1.0f); + if (orientation == null) return original.call(vec); + + return original.call(JOMLConversion.toMojang(orientation.transformInverse(JOMLConversion.toJOML(vec)))); + } + + @Inject(method = "moveRelative", at = @At("HEAD"), cancellable = true) + public void moveRelative(final float f, final Vec3 vec3, final CallbackInfo ci) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation((Entity) (Object) this, 1.0f); + if (orientation == null) return; + + final Vec3 inputVector = getInputVector(vec3, f, this.getYRot()); + final Vec3 impulse = JOMLConversion.toMojang(orientation.transform(JOMLConversion.toJOML(inputVector))); + this.setDeltaMovement(this.getDeltaMovement().add(impulse)); + ci.cancel(); + } + + @Inject(method = "rideTick", at = @At("TAIL")) + public void sable$onRidingTick(final CallbackInfo ci) { + if (this.vehicle == null) return; + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel vehicleSubLevel = helper.getContaining(this.vehicle); + if (vehicleSubLevel == null) return; + if (helper.getContaining(this.level, this.position) != vehicleSubLevel) return; + + final Vec3 pos = EntityRidingSubLevelVehicleHelper.kickRidingEntity((Entity) (Object) this, vehicleSubLevel); + this.setPos(pos); + } + + @Inject(method = "positionRider(Lnet/minecraft/world/entity/Entity;)V", at = @At("TAIL")) + public void sable$onPositionRider(final Entity entity, final CallbackInfo ci) { + if (!this.hasPassenger(entity)) return; + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, entity.position()); + if (subLevel == null) return; + + final Vec3 pos = EntityRidingSubLevelVehicleHelper.kickRidingEntity(entity, subLevel); + entity.setPos(pos); + } + + @Redirect(method = "saveWithoutId", at = @At(value = "INVOKE", target = "Lnet/minecraft/nbt/CompoundTag;put(Ljava/lang/String;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag;", ordinal = 0)) + public Tag sable$fixPassengerSaving(final CompoundTag instance, final String string, final Tag tag) { + if (!EntitySubLevelUtil.shouldKick((Entity) (Object) this)) { + return instance.put(string, tag); + } + + final SubLevel subLevel = Sable.HELPER.getContaining(this.vehicle); + if (subLevel != null) { + final Tag newPositionTag = this.newDoubleList( + this.getX(), + this.getY(), + this.getZ() + ); + + if ((Object)this instanceof final ServerPlayer serverPlayer) { + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad((ServerLevel) this.level()); + final UUID loginPointUUID = data.generateTrackingPoint(serverPlayer, (ServerSubLevel) subLevel); + if (loginPointUUID != null) { + instance.putUUID("LoginPoint", loginPointUUID); + } + } + + return instance.put(string, newPositionTag); + } + + return instance.put(string, tag); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.java new file mode 100644 index 0000000..99e5e56 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.java @@ -0,0 +1,73 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Rotates entity rendering to match the sub-level's rotation + */ +@Mixin(EntityRenderDispatcher.class) +public class EntityRenderDispatcherMixin { + + @Shadow private Level level; + @Unique + private boolean sable$rotated = false; + + @Inject(method = "render", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V", shift = At.Shift.AFTER, ordinal = 0)) + private void sable$rotateEntity(final E entity, final double d, final double e, final double f, final float g, final float h, final PoseStack poseStack, final MultiBufferSource multiBufferSource, final int i, final CallbackInfo ci) { + if (!EntitySubLevelUtil.shouldKick(entity)) { + return; + } + + final Quaterniond orientation = EntitySubLevelRotationHelper.getEntityOrientation(entity, x -> ((ClientSubLevel) x).renderPose(), h, EntitySubLevelRotationHelper.Type.ENTITY); + + if (orientation == null) { + return; + } + + poseStack.pushPose(); + + final Vec3 eyeOffset = entity.getEyePosition().subtract(entity.position()); + + final Vec3 offset = Sable.HELPER.getEyePositionInterpolated(entity, h).subtract(entity.getEyePosition(h)); + poseStack.translate(offset.x, offset.y, offset.z); + + poseStack.translate(eyeOffset.x, eyeOffset.y, eyeOffset.z); + poseStack.mulPose(new Quaternionf(orientation)); + poseStack.translate(-eyeOffset.x, -eyeOffset.y, -eyeOffset.z); + + this.sable$rotated = true; + } + + @Inject(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;isInvisible()Z")) + private void sable$popPose1(final Entity entity, final double d, final double e, final double f, final float g, final float h, final PoseStack poseStack, final MultiBufferSource multiBufferSource, final int i, final CallbackInfo ci) { + if (this.sable$rotated) { + poseStack.popPose(); + this.sable$rotated = false; + } + } + + @Inject(method = "render", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;popPose()V", shift = At.Shift.BEFORE)) + private void sable$popPose2(final Entity entity, final double d, final double e, final double f, final float g, final float h, final PoseStack poseStack, final MultiBufferSource multiBufferSource, final int i, final CallbackInfo ci) { + if (this.sable$rotated) { + poseStack.popPose(); + this.sable$rotated = false; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.java new file mode 100644 index 0000000..32ffc34 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.client.renderer.entity.EntityRenderer; +import net.minecraft.world.entity.Entity; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(EntityRenderer.class) +public class EntityRendererMixin { + + @Redirect(method = "renderNameTag", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;cameraOrientation()Lorg/joml/Quaternionf;")) + private Quaternionf sable$renderNameTag(final EntityRenderDispatcher instance, @Local(argsOnly = true) final Entity entity) { + if (!EntitySubLevelUtil.shouldKick(entity)) { + return instance.cameraOrientation(); + } + + final float pt = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + final Quaterniond orientation = EntitySubLevelRotationHelper.getEntityOrientation(entity, x -> ((ClientSubLevel) x).renderPose(), pt, EntitySubLevelRotationHelper.Type.ENTITY); + if (orientation == null) { + return instance.cameraOrientation(); + } + + return new Quaternionf(orientation).conjugate().mul(instance.cameraOrientation()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.java new file mode 100644 index 0000000..1a8ac0a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.mixinhelpers.entity.entity_riding_sub_level_vehicle.EntityRidingSubLevelVehicleHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Function; + +@Mixin(EntityType.class) +public class EntityTypeMixin { + + @Inject(method = {"method_17843", "lambda$loadEntityRecursive$7"}, at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;startRiding(Lnet/minecraft/world/entity/Entity;Z)Z")) + private static void sable$startRidingEntity(final CompoundTag compoundTag, + final Level level, + final Function function, + final Entity entity, + final CallbackInfoReturnable cir, + @Local(ordinal = 1) final Entity newEntity) { + final SubLevel vehicleSubLevel = Sable.HELPER.getContaining(entity); + + if (vehicleSubLevel != null && EntitySubLevelUtil.shouldKick(newEntity)) { + final Vec3 pos = EntityRidingSubLevelVehicleHelper.kickRidingEntity(newEntity, vehicleSubLevel); + newEntity.setPos(pos); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.java new file mode 100644 index 0000000..0a2ef25 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.java @@ -0,0 +1,86 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity{ + + @Shadow protected abstract float getJumpPower(); + + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "jumpFromGround", at = @At("HEAD"), cancellable = true) + public void sable$jumpFromGround(final CallbackInfo ci) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(this, 1.0f); + if (orientation == null) return; + + final float power = this.getJumpPower(); + if (!(power <= 1.0E-5F)) { + final Vector3d deltaMovement = JOMLConversion.toJOML(this.getDeltaMovement()); + final Vector3d up = orientation.transform(OrientedBoundingBox3d.UP, new Vector3d()); + deltaMovement.fma(-up.dot(deltaMovement), up).fma(power, up); + this.setDeltaMovement(deltaMovement.x, deltaMovement.y, deltaMovement.z); + + if (this.isSprinting()) { + final float yRot = this.getYRot() * (float) (Math.PI / 180.0); + final Vec3 horizontalImpulse = new Vec3((double) (-Mth.sin(yRot)) * 0.2, 0.0, (double) Mth.cos(yRot) * 0.2); + this.addDeltaMovement(JOMLConversion.toMojang(orientation.transform(JOMLConversion.toJOML(horizontalImpulse)))); + } + + this.hasImpulse = true; + } + + ci.cancel(); + } + + @WrapOperation(method = "dismountVehicle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;dismountTo(DDD)V")) + public void sable$onDismountVehicle(final LivingEntity instance, final double x, final double y, final double z, final Operation original) { + final Vec3 dismountPosition = new Vec3(x, y, z); + final SubLevel subLevel = Sable.HELPER.getContaining(instance.level(), dismountPosition); + + if (subLevel == null) { + original.call(instance, x, y, z); + return; + } + + final Vec3 pos = subLevel.logicalPose().transformPosition(dismountPosition); + original.call(instance, pos.x, pos.y, pos.z); + } + + @Redirect(method = "dismountVehicle", at = @At(value = "INVOKE", target = "Ljava/lang/Math;max(DD)D")) + public double sable$maxAltitude(final double a, final double b, @Local(argsOnly = true) final Entity vehicle) { + final Vec3 vehiclePos = vehicle.position(); + final SubLevel subLevel = Sable.HELPER.getContaining(vehicle); + + if (subLevel != null) { + return Math.max(this.getY(), subLevel.logicalPose().transformPosition(vehiclePos).y); + } else { + return Math.max(a, b); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.java new file mode 100644 index 0000000..9e32066 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.java @@ -0,0 +1,128 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.mojang.authlib.GameProfile; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.commands.arguments.EntityAnchorArgument; +import net.minecraft.core.BlockPos; +import net.minecraft.tags.BlockTags; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(LocalPlayer.class) +public abstract class LocalPlayerMixin extends Player { + + public LocalPlayerMixin(final Level level, final BlockPos blockPos, final float f, final GameProfile gameProfile) { + super(level, blockPos, f, gameProfile); + } + + @Redirect(method = "aiStep", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;add(DDD)Lnet/minecraft/world/phys/Vec3;", ordinal = 0)) + private Vec3 sable$modifyFlightDir(final Vec3 instance, final double x, final double y, final double z) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(this, 1.0f); + if (orientation == null) { + return instance.add(x, y, z); + } + + final Vector3d dir = orientation.transform(new Vector3d(x, y, z)); + return instance.add(dir.x, dir.y, dir.z); + } + + @Unique + public final Vec3 sable$calculateViewVector2(final float f, final float g) { + final float h = f * (float) (Math.PI / 180.0); + final float i = -g * (float) (Math.PI / 180.0); + final float j = Mth.cos(i); + final float k = Mth.sin(i); + final float l = Mth.cos(h); + final float m = Mth.sin(h); + return new Vec3(k * l, -m, j * l); + } + + @Inject(method = "startRiding(Lnet/minecraft/world/entity/Entity;Z)Z", at = @At("RETURN")) + private void sable$onStartRiding(final Entity entity, final boolean bl, final CallbackInfoReturnable cir) { + if (!cir.getReturnValue() || !EntitySubLevelUtil.shouldKick(this)) { + return; + } + + final Entity vehicle = this.getVehicle(); + if (vehicle == null) { + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(vehicle); + if (subLevel != null && EntitySubLevelUtil.shouldKick(this)) { + final Vec3 lookDir = this.sable$calculateViewVector2(this.getXRot(), this.getYRot()); + final Vec3 localLookDir = subLevel.logicalPose().transformNormalInverse(lookDir); + + vehicle.positionRider(this); + EntitySubLevelUtil.setOldPosNoMovement(this); + this.lookAt(EntityAnchorArgument.Anchor.FEET, this.position().add(localLookDir)); + } + } + + @Inject(method = "removeVehicle", at = @At("HEAD")) + private void sable$onStopRiding(final CallbackInfo ci) { + if (!EntitySubLevelUtil.shouldKick(this)) { + return; + } + + final Entity vehicle = this.getVehicle(); + if (vehicle == null) { + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(vehicle); + if (subLevel != null) { + final Vec3 lookDir = this.sable$calculateViewVector2(this.getXRot(), this.getYRot()); + final Vec3 globalLookDir = subLevel.logicalPose().transformNormal(lookDir); + + this.lookAt(EntityAnchorArgument.Anchor.FEET, this.position().add(globalLookDir)); + } + } + + @Unique + private void sable$dismountVehicle(final Entity entity) { + final ActiveSableCompanion helper = Sable.HELPER; + final Level level = this.level(); + final Vector3d dismountPos; + + if (this.isRemoved()) { + dismountPos = JOMLConversion.toJOML(this.position()); + } else if (!entity.isRemoved() && !level.getBlockState(entity.blockPosition()).is(BlockTags.PORTALS)) { + dismountPos = JOMLConversion.toJOML(entity.getDismountLocationForPassenger(this)); + } else { + final double d = Math.max(this.getY(), helper.projectOutOfSubLevel(level, entity.position()).y); + dismountPos = new Vector3d(this.getX(), d, this.getZ()); + } + + helper.projectOutOfSubLevel(level, dismountPos); + this.setPos(dismountPos.x, dismountPos.y, dismountPos.z); + } + + @Override + public void stopRiding() { + final Entity vehicle = this.getVehicle(); + super.stopRiding(); + + if (this.level().isClientSide && vehicle != null && vehicle != this.getVehicle() && Sable.HELPER.getContaining(vehicle) != null) { + this.sable$dismountVehicle(vehicle); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.java new file mode 100644 index 0000000..e08fc54 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.java @@ -0,0 +1,85 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Fixes the bounding box used for touching nearby entities when riding an entity mounted to a sub-level + */ +@Mixin(Player.class) +public abstract class PlayerMixin extends LivingEntity { + + protected PlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "travel", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getDeltaMovement()Lnet/minecraft/world/phys/Vec3;", ordinal = 1)) + private void sable$storeUpDeltaMovement(final Vec3 vec3, + final CallbackInfo ci, + @Share("upDir") final LocalRef upDir, + @Share("upDeltaMovement") final LocalRef upDeltaMovement) { + final Quaterniondc orientation = EntitySubLevelUtil.getCustomEntityOrientation(this, 1.0f); + if (orientation == null) { + return; + } + + final Vector3d dir = orientation.transform(new Vector3d(OrientedBoundingBox3d.UP)); + upDir.set(new Vector3d(dir)); + + final Vec3 deltaMovement = this.getDeltaMovement(); + upDeltaMovement.set(dir.mul(dir.dot(deltaMovement.x, deltaMovement.y, deltaMovement.z))); + } + + @Redirect(method = "travel", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;setDeltaMovement(DDD)V")) + private void sable$modifyTravelSetDeltaMovement(final Player instance, + final double x, + final double y, + final double z, + @Share("upDir") final LocalRef upDir, + @Share("upDeltaMovement") final LocalRef upDeltaMovement) { + if (upDeltaMovement.get() == null) { + instance.setDeltaMovement(x, y, z); + return; + } + + final Vec3 deltaMovement = this.getDeltaMovement(); + final double dot = upDir.get().dot(deltaMovement.x, deltaMovement.y, deltaMovement.z); + + final double scalar = 0.6; + this.setDeltaMovement(deltaMovement + .subtract(dot * upDir.get().x, dot * upDir.get().y, dot * upDir.get().z) + .add(upDeltaMovement.get().x * scalar, upDeltaMovement.get().y * scalar, upDeltaMovement.get().z * scalar)); + } + + @Redirect(method = "aiStep", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;minmax(Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB;")) + public AABB sable$fixRidingBoundingBox(final AABB usBoundingBox, AABB vehicleBoundingBox) { + final Entity vehicle = this.getVehicle(); + final SubLevel vehicleSubLevel = Sable.HELPER.getContaining(vehicle); + if (vehicleSubLevel == null) return usBoundingBox.minmax(vehicleBoundingBox); + + final BoundingBox3d bb = new BoundingBox3d(vehicleBoundingBox); + vehicleBoundingBox = bb.transform(vehicleSubLevel.logicalPose(), bb).toMojang(); + + return usBoundingBox.minmax(vehicleBoundingBox); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.java new file mode 100644 index 0000000..bb388b2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import net.minecraft.server.level.ServerEntity; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(ServerEntity.class) +public abstract class ServerEntityMixin { + + @Shadow private List lastPassengers; + + @Shadow @Final private Entity entity; + + @Inject(method = "sendChanges", at = @At(value = "INVOKE", target = "Ljava/util/function/Consumer;accept(Ljava/lang/Object;)V")) + private void sable$beforeSendChanges(final CallbackInfo ci) { + final List passengers = this.entity.getPassengers(); + + if (Sable.HELPER.getContaining(this.entity) != null) { + this.lastPassengers = passengers; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.java new file mode 100644 index 0000000..880d004 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.mixin.entity.entity_rotations_and_riding; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.mojang.authlib.GameProfile; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.network.protocol.game.ClientboundPlayerPositionPacket; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.ServerGamePacketListenerImpl; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.Set; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin extends Player { + + @Shadow public ServerGamePacketListenerImpl connection; + + public ServerPlayerMixin(final Level level, final BlockPos blockPos, final float f, final GameProfile gameProfile) { + super(level, blockPos, f, gameProfile); + } + + @WrapOperation(method = "startRiding", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/network/ServerGamePacketListenerImpl;teleport(DDDFF)V")) + private void sable$adjustTeleportPacket(final ServerGamePacketListenerImpl instance, final double x, final double y, final double z, final float rot1, final float rot2, final Operation original) { + final Entity vehicle = this.getVehicle(); + + if (vehicle == null) { + original.call(instance, x, y, z, rot1, rot2); + return; + } + + final SubLevel containingSubLevel = Sable.HELPER.getContaining(vehicle); + + if (containingSubLevel == null) { + original.call(instance, x, y, z, rot1, rot2); + return; + } + + this.absMoveTo(x, y, z, rot1, rot2); + final Vec3 pos = containingSubLevel.logicalPose().transformPositionInverse(this.position()); + this.connection.send(new ClientboundPlayerPositionPacket(pos.x, pos.y, pos.z, rot1, rot2, Set.of(), -1)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.java new file mode 100644 index 0000000..a31c7a4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.vehicle.AbstractMinecart; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(AbstractMinecart.class) +public abstract class AbstractMinecartMixin extends Entity { + + + public AbstractMinecartMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "tick", at = @At("TAIL")) + private void sable$postTick(final CallbackInfo ci) { + if (!this.getType().is(SableTags.DESTROY_WHEN_LEAVING_PLOT)) { + return; + } + + final SubLevel containingSubLevel = Sable.HELPER.getContaining(this); + + // Destroy us if we're in #sable:destroy_when_leaving_plot and we've left the plot + if (containingSubLevel != null && !this.getBoundingBox().intersects(containingSubLevel.getPlot().getBoundingBox().toAABB().inflate(0.5))) { + this.kill(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.java new file mode 100644 index 0000000..fda99da --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.java @@ -0,0 +1,65 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Camera; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(Camera.class) +public class CameraMixin { + + @Shadow private float eyeHeightOld; + + @Shadow private float eyeHeight; + + @Unique + private final Vector3d sable$startPos = new Vector3d(); + + @Unique + private final Vector3d sable$endPos = new Vector3d(); + + @WrapOperation(method = "setup", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setPosition(DDD)V")) + private void sable$setPosition(final Camera instance, + final double x, + final double y, + final double z, + final Operation original, + @Local(argsOnly = true) final Entity entity, + @Local(argsOnly = true) final float partialTicks) { + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingOrVehicleSubLevel(entity); + + if (trackingSubLevel instanceof final ClientSubLevel clientSubLevel) { + final double yOffset = Mth.lerp(partialTicks, this.eyeHeightOld, this.eyeHeight); + + this.sable$startPos.set(entity.xo, entity.yo + yOffset, entity.zo); + this.sable$endPos.set(entity.getX(), entity.getY() + yOffset, entity.getZ()); + + final Pose3dc renderPose = clientSubLevel.renderPose(partialTicks); + clientSubLevel.lastPose().transformPositionInverse(this.sable$startPos); + clientSubLevel.logicalPose().transformPositionInverse(this.sable$endPos); + + this.sable$startPos.lerp(this.sable$endPos, partialTicks); + renderPose.transformPosition(this.sable$startPos); + + original.call(instance, this.sable$startPos.x, this.sable$startPos.y, this.sable$startPos.z); + return; + } + + original.call(instance, x, y, z); + + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.java new file mode 100644 index 0000000..dcd86f4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.java @@ -0,0 +1,320 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.mixinterface.EntityExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LevelExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LivingEntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.MoverType; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Iterator; +import java.util.UUID; + +@Mixin(value = Entity.class, priority = 1100) +public abstract class EntityMixin implements EntityMovementExtension { + +// /** +// * Pitch angle threshold for kicking +// */ +// private static final double TRACKING_LOCAL_UP_ANGLE_THRESHOLD = Math.cos(Math.toRadians(30.0)); + + @Shadow + public boolean horizontalCollision; + @Shadow + public boolean verticalCollision; + @Shadow + public boolean verticalCollisionBelow; + @Shadow + public boolean minorHorizontalCollision; + @Unique + private SubLevel sable$trackingSubLevel = null; + @Unique + private UUID sable$lastTrackingSubLevelId = null; + @Shadow + private Level level; + @Shadow + private Vec3 position; + @Shadow + @Nullable + private BlockState inBlockState; + @Shadow + private BlockPos blockPosition; + @Unique + private SubLevelEntityCollision.CollisionInfo sable$collisionInfo = null; + + @Shadow + protected abstract Vec3 collide(Vec3 vec3); + + @Shadow + protected abstract boolean isHorizontalCollisionMinor(Vec3 arg); + + @Unique + private BlockPos sable$inBlockStatePos = BlockPos.ZERO; + +// @Unique +// private Vector3d sable$trackStartUpDirection = null; +// +// @Unique +// private final Vector3d sable$localUpDirectionStorage = new Vector3d(); + + @Shadow + public abstract Level level(); + + @WrapOperation(method = "move(Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;setOnGroundWithMovement(ZLnet/minecraft/world/phys/Vec3;)V")) + public void sable$moveInject(final Entity instance, final boolean bl, final Vec3 arg, final Operation original) { + this.horizontalCollision = this.sable$collisionInfo.horizontalCollision; + this.verticalCollision = this.sable$collisionInfo.verticalCollision; + this.verticalCollisionBelow = this.sable$collisionInfo.verticalCollisionBelow; + this.minorHorizontalCollision = this.sable$collisionInfo.minorHorizontalCollision; + + original.call(instance, this.verticalCollisionBelow, arg); + } + + @WrapOperation(method = "move(Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/block/Block;updateEntityAfterFallOn(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;)V")) + public void updateEntityAfterFallOn(final Block instance, final BlockGetter arg, final Entity arg2, final Operation original) { + if (this.verticalCollision) { + original.call(instance, arg, arg2); + } + } + + @Redirect(method = "move(Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;collide(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$collideRedirect(final Entity entity, final Vec3 collisionMotion) { + final Entity self = (Entity) (Object) this; + final Vec3 motion = collisionMotion; + + Vec3 velocity = Vec3.ZERO; + + if (self instanceof final LivingEntity livingEntity) { + velocity = JOMLConversion.toMojang(((LivingEntityMovementExtension) livingEntity).sable$getInheritedVelocity()); + } + + final SubLevel preTrackingSubLevel = this.sable$trackingSubLevel; + final Vec3 preDeltaMovement = this.getDeltaMovement(); + +// if (this.sable$trackingSubLevel != null) { + // TODO: this would be nice to prevent "swing-around" but would need to happen *in* the substep loop, so there's + // no ticks on a continuous tilting airship flight where we're not tracking the ship. + // in testing, it also doesn't fully solve the intended issue either. +// if (this.sable$collisionInfo != null && this.sable$collisionInfo.trackingLocalUpDirection == null) { +// final Pose3d pose = this.sable$collisionInfo.trackingSubLevel.logicalPose(); +// +// if (this.sable$trackStartUpDirection != null && pose.transformNormalInverse(OrientedBoundingBox3d.UP, this.sable$localUpDirectionStorage).dot(this.sable$trackStartUpDirection) < TRACKING_LOCAL_UP_ANGLE_THRESHOLD) { +// this.sable$trackingSubLevel = null; +// } +// } +// } + + this.sable$collisionInfo = SubLevelEntityCollision.collide(entity, motion, velocity, ((LevelExtension) this.level).sable$getJOMLSink()); + this.sable$collisionInfo.preTrackingSubLevel = preTrackingSubLevel; + this.sable$collisionInfo.preDeltaMovement = preDeltaMovement; + + if (this.sable$collisionInfo.trackingSubLevel != null) { + if (this.sable$collisionInfo.verticalCollisionBelow) { + this.sable$trackingSubLevel = this.sable$collisionInfo.trackingSubLevel; + } + +// if (this.sable$collisionInfo.trackingLocalUpDirection != null) { +// if (this.sable$trackStartUpDirection == null) this.sable$trackStartUpDirection = new Vector3d(); +// this.sable$trackStartUpDirection.set(this.sable$collisionInfo.trackingLocalUpDirection); +// } + } else if (!(entity instanceof ServerPlayer)) { + this.sable$trackingSubLevel = null; + } + +// if (this.sable$trackingSubLevel == null) { +// this.sable$trackStartUpDirection = null; +// } + + final Vec3 beforeVanillaCollision = this.sable$collisionInfo.motion; + final Vec3 afterVanillaCollision = this.collide(beforeVanillaCollision); + + final boolean xCollision = !Mth.equal(beforeVanillaCollision.x, afterVanillaCollision.x); + final boolean zCollision = !Mth.equal(beforeVanillaCollision.z, afterVanillaCollision.z); + this.sable$collisionInfo.horizontalCollision |= xCollision || zCollision; + + if (beforeVanillaCollision.y != afterVanillaCollision.y) { + this.sable$trackingSubLevel = null; + } + + this.sable$collisionInfo.verticalCollision |= beforeVanillaCollision.y != afterVanillaCollision.y; + this.sable$collisionInfo.verticalCollisionBelow |= this.sable$collisionInfo.verticalCollision && collisionMotion.y < 0.0; + if (this.horizontalCollision) { + this.sable$collisionInfo.minorHorizontalCollision = this.isHorizontalCollisionMinor(afterVanillaCollision); + } + + if (this.sable$trackingSubLevel != null) { + if (this.sable$trackingSubLevel.isRemoved()) + this.sable$trackingSubLevel = null; + } + + return afterVanillaCollision; + } + + @Inject(method = "move(Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V", at = @At(value = "TAIL")) + public void sable$moveInject(final MoverType moverType, final Vec3 vec3, final CallbackInfo ci) { + if (this.sable$collisionInfo != null) { + this.horizontalCollision |= this.sable$collisionInfo.subLevelHorizontalCollision; + } + + if (!(((Object) this) instanceof LivingEntity)) { + if (this.sable$collisionInfo != null && this.sable$collisionInfo.inheritedMotion != null) { + if (this.sable$collisionInfo.inheritedMotion.lengthSqr() > Math.pow(0.000001, 2)) { + this.setPos(this.position.add(((EntityExtension) this).sable$vanillaCollide(this.sable$collisionInfo.inheritedMotion))); + } + } + } + } + + @Shadow + public abstract void setPos(Vec3 vec3); + + @Shadow + @Nullable + public abstract Entity getVehicle(); + + @Shadow + public abstract Vec3 getDeltaMovement(); + + @Shadow + public abstract AABB getBoundingBox(); + + @Shadow + public abstract void remove(Entity.RemovalReason removalReason); + + @Shadow + public abstract EntityType getType(); + + @Shadow + public abstract void kill(); + + @Inject(method = "tick", at = @At("TAIL")) + public void sable$tickInject(final CallbackInfo ci) { + final ActiveSableCompanion helper = Sable.HELPER; + final Entity vehicle = this.getVehicle(); + final SubLevel containingSubLevel = helper.getContaining((Entity) (Object) this); + + // we can't both be tracking a sub-level and be in one + if (containingSubLevel != null) { + this.sable$trackingSubLevel = null; + } else if (vehicle != null) { + final SubLevel vehicleSubLevel = helper.getContaining(vehicle); + + if (vehicleSubLevel != null) { + this.sable$trackingSubLevel = vehicleSubLevel; + } else { + this.sable$trackingSubLevel = Sable.HELPER.getTrackingSubLevel(vehicle); + } + } + + if (this.sable$trackingSubLevel != null) { + if (this.sable$trackingSubLevel.isRemoved()) + this.sable$trackingSubLevel = null; + } + + // Destroy us if we're in #sable:destroy_when_leaving_plot and we've left the plot + if (containingSubLevel != null) { + if (!this.getBoundingBox().intersects(containingSubLevel.getPlot().getBoundingBox().toAABB().inflate(1.0)) && this.getType().is(SableTags.DESTROY_WHEN_LEAVING_PLOT)) { + this.kill(); + } + } + } + + /** + * @return the position that the state returned by getInBlockState was gotten from + */ + @Override + public BlockPos sable$getInBlockStatePos() { + return this.sable$inBlockStatePos; + } + + /** + * @author RyanH + * @reason Take into account sub-levels + */ + @Overwrite + public BlockState getInBlockState() { + final Level level = this.level(); + + if (this.inBlockState == null || this.sable$trackingSubLevel != null) { + this.inBlockState = level.getBlockState(this.blockPosition); + this.sable$inBlockStatePos = this.blockPosition; + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(this.blockPosition)); + + final Iterator iter = intersecting.iterator(); + while (this.inBlockState.isAir() && iter.hasNext()) { + final SubLevel subLevel = iter.next(); + final BlockPos localBlockPos = BlockPos.containing(subLevel.logicalPose().transformPositionInverse(this.position.add(0.0, 0.001, 0.0))); + this.inBlockState = level.getBlockState(localBlockPos); + this.sable$inBlockStatePos = localBlockPos; + } + } + + return this.inBlockState; + } + + /** + * @return the sub-level the entity is standing on or locked to + */ + @Override + public SubLevel sable$getTrackingSubLevel() { + return this.sable$trackingSubLevel; + } + + @Override + public UUID sable$getLastTrackingSubLevelID() { + return this.sable$lastTrackingSubLevelId; + } + + @Override + public void sable$setTrackingSubLevel(final SubLevel subLevel) { + this.sable$trackingSubLevel = subLevel; + if (subLevel != null) { + this.sable$setLastTrackingSubLevelID(subLevel.getUniqueId()); + } + } + + @Override + public void sable$setLastTrackingSubLevelID(final UUID uuid) { + this.sable$lastTrackingSubLevelId = uuid; + } + + @Override + public SubLevelEntityCollision.CollisionInfo sable$getCollisionInfo() { + return this.sable$collisionInfo; + } + + @Override + public void sable$setPosField(final Vec3 newPosition) { + this.position = newPosition; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.java new file mode 100644 index 0000000..e3936d0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ItemEntity.class) +public abstract class ItemEntityMixin extends Entity { + + public ItemEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * if we're tracking a sub-level, force us to tick more often + */ + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;horizontalDistanceSqr()D")) + private double sable$shouldTickPhysics(final Vec3 instance) { + if (Sable.HELPER.getTrackingSubLevel(this) != null) + return 1.0; + + return instance.horizontalDistance(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.java new file mode 100644 index 0000000..365be2a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.api.math.LevelReusedVectors; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LevelExtension; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(Level.class) +public class LevelMixin implements LevelExtension { + + /** + * The JOML sink for this level. + * We store vectors here so that {@link dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision} doesn't have to + * repeatedly allocate new vectors. + */ + @Unique + private final LevelReusedVectors sable$reusedVectors = new LevelReusedVectors(); + + @Override + public LevelReusedVectors sable$getJOMLSink() { + return this.sable$reusedVectors; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.java new file mode 100644 index 0000000..cb688f2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.java @@ -0,0 +1,155 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.EntityExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LivingEntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity implements LivingEntityMovementExtension { + @Shadow public abstract LivingEntity.Fallsounds getFallSounds(); + + /** + * [m/t] + */ + @Unique + private final Vector3d sable$inheritedVelocity = new Vector3d(); + + @Unique + private final Vector3d sable$tempPlayerVelocity = new Vector3d(); + + @Unique + private final Vector3d sable$tempSubLevelVelocity = new Vector3d(); + + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * Before animation + */ + @Inject(method = "travel", at = @At(value = "RETURN")) + public void sable$beforeAnimation(final Vec3 vec3, final CallbackInfo ci) { + final SubLevelEntityCollision.CollisionInfo info = ((EntityMovementExtension) this).sable$getCollisionInfo(); + + if (info != null && info.inheritedMotion != null) { + this.setPos(this.position().add(((EntityExtension) this).sable$vanillaCollide(info.inheritedMotion))); + this.sable$inheritedVelocity.set(info.inheritedMotion.x, info.inheritedMotion.y, info.inheritedMotion.z); + } + + if (info != null && info.firstCollisions != null && !info.firstCollisions.isEmpty()) { + for (final var firstCollision : info.firstCollisions.entrySet()) { + final SubLevelEntityCollision.FirstCollisionInfo collisionInfo = firstCollision.getValue(); + final SubLevel subLevel = firstCollision.getKey(); + + if (!collisionInfo.horizontal() || subLevel == info.preTrackingSubLevel) { + continue; + } + + this.sable$computeCollisionEffects(info, subLevel, collisionInfo); + } + } + + final double threshold = 0.0000001; + if (this.sable$inheritedVelocity.lengthSquared() <= threshold) { + this.sable$inheritedVelocity.zero(); + } + + if ((info == null || info.inheritedMotion == null) && this.sable$inheritedVelocity.lengthSquared() > threshold) { + this.sable$applyDrag(); + } + } + + @Unique + private void sable$applyDrag() { + if (this.verticalCollision || this.onGround()) { + final double drag = 0.7; + this.sable$inheritedVelocity.mul(drag, 0.0, drag); + } + + if (this.horizontalCollision) { + final double drag = 0.8; + this.sable$inheritedVelocity.mul(drag, 0.6, drag); + } + + if ((Object) this instanceof final Player player && player.getAbilities().flying) { + this.sable$inheritedVelocity.mul(0.9); + } + + if (this.wasTouchingWater) { + this.sable$inheritedVelocity.mul(0.9); + } + + this.sable$inheritedVelocity.mul(0.99); + + if (Math.abs(this.sable$inheritedVelocity.y) < 0.01) { + this.sable$inheritedVelocity.y = 0.0; + } + } + + /** + * Computes collision damage & bounce + */ + @Unique + private void sable$computeCollisionEffects(final SubLevelEntityCollision.CollisionInfo info, final SubLevel collidedSubLevel, final SubLevelEntityCollision.FirstCollisionInfo collisionInfo) { + final Vector3d playerVelocity = JOMLConversion.toJOML(info.preDeltaMovement, this.sable$tempPlayerVelocity); + playerVelocity.add(this.sable$inheritedVelocity); + + final Level level = this.level(); + final Vector3d pointVelocity = Sable.HELPER.getVelocity(level, + collidedSubLevel, + collisionInfo.localLocation(), + this.sable$tempSubLevelVelocity) + .mul(1.0 / 20.0); + + final Vector3d relativeVelocity = playerVelocity.sub(pointVelocity).negate(); + final double magnitude = collisionInfo.globalDirection().dot(relativeVelocity); + + if (magnitude > 3.0 / 20.0) { + relativeVelocity.set(collisionInfo.globalDirection()).mul(-magnitude); + + if (collisionInfo.bouncy()) { + final SoundEvent sound = collisionInfo.block().getSoundType().getFallSound(); + level.playSound((Entity) this instanceof final Player player ? player : null, this.getX(), this.getY(), this.getZ(), sound, SoundSource.BLOCKS, .75f, 1); + + this.addDeltaMovement(JOMLConversion.toMojang(collisionInfo.globalDirection()).scale(relativeVelocity.length() * 0.65)); + + if (Sable.HELPER.getTrackingSubLevel(this) == null) { + this.addDeltaMovement(JOMLConversion.toMojang(pointVelocity)); + } + } else { + final float damageAmount = (float) (magnitude * 12.0 - 8.0); + + if (damageAmount > 0.0) { + this.playSound(damageAmount > 4 ? this.getFallSounds().big() : this.getFallSounds().small(), 1.0F, 1.0F); + this.hurt(this.damageSources().flyIntoWall(), damageAmount); + } + } + } + } + + @Override + public Vector3d sable$getInheritedVelocity() { + return this.sable$inheritedVelocity; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.java new file mode 100644 index 0000000..7db256e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.java @@ -0,0 +1,137 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.CanFallAtleastHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.MoverType; +import net.minecraft.world.entity.player.Abilities; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Player.class) +public abstract class PlayerMixin extends LivingEntity { + + @Shadow public float bob; + + @Shadow @Final private Abilities abilities; + + @Shadow protected abstract boolean isStayingOnGroundSurface(); + + @Shadow protected abstract boolean isAboveGround(float f); + + @Shadow protected abstract boolean canFallAtLeast(double d, double e, float f); + + protected PlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "maybeBackOffFromEdge", at = @At("HEAD"), cancellable = true) + private void sable$maybeBackOffFromEdge(final Vec3 movement, final MoverType moverType, final CallbackInfoReturnable cir) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this); + + if (trackingSubLevel != null) { + final float maxUpStep = this.maxUpStep(); + if (!this.abilities.flying + && !(movement.y > 0.0) + && (moverType == MoverType.SELF || moverType == MoverType.PLAYER) + && this.isStayingOnGroundSurface() + && this.isAboveGround(maxUpStep) + ) { + final Pose3dc pose = trackingSubLevel.lastPose(); + + final double originalYaw = pose.orientation().getEulerAnglesYXZ(new Vector3d()).y; + final Quaterniondc frameOrientation = new Quaterniond().rotateY(originalYaw); +// final Quaterniondc frameOrientation = new Quaterniond(pose.orientation()); + + final Vector3dc localMovement = frameOrientation.transformInverse(new Vector3d(movement.x, 0.0, movement.z)); + + double xMovement = localMovement.x(); + double zMovement = localMovement.z(); + final double step = 0.05; + + final double signedStep = Math.signum(xMovement) * step; + + + final double i; + + // reduce + for (i = Math.signum(zMovement) * step; xMovement != 0.0 && this.sable$wouldSlideOff(xMovement, 0.0, maxUpStep, frameOrientation); xMovement -= signedStep) { + if (Math.abs(xMovement) <= step) { + xMovement = 0.0; + break; + } + } + + while (zMovement != 0.0 && this.sable$wouldSlideOff(0.0, zMovement, maxUpStep, frameOrientation)) { + if (Math.abs(zMovement) <= step) { + zMovement = 0.0; + break; + } + + zMovement -= i; + } + + while (xMovement != 0.0 && zMovement != 0.0 && this.sable$wouldSlideOff(xMovement, zMovement, maxUpStep, frameOrientation)) { + if (Math.abs(xMovement) <= step) { + xMovement = 0.0; + } else { + xMovement -= signedStep; + } + + if (Math.abs(zMovement) <= step) { + zMovement = 0.0; + } else { + zMovement -= i; + } + } + + final Vector3d globalMovement = frameOrientation.transform(new Vector3d(xMovement, 0.0, zMovement)); + final Vec3 finalMovement = new Vec3(globalMovement.x, movement.y, globalMovement.z); + + cir.setReturnValue(finalMovement); + } + } + } + + @Unique + private boolean sable$wouldSlideOff(final double localXMovement, final double localZMovement, final float fallDistance, final Quaterniondc frameOrientation) { + final Vector3d movement = new Vector3d(localXMovement, 0.0, localZMovement); + frameOrientation.transform(movement); + + final double xMovement = movement.x; + final double zMovement = movement.z; + + final AABB bounds = this.getBoundingBox(); + final AABB boundsToCheck = new AABB(bounds.minX + xMovement, bounds.minY - (double) fallDistance - 1.0E-5F, bounds.minZ + zMovement, bounds.maxX + xMovement, bounds.minY, bounds.maxZ + zMovement); + + return CanFallAtleastHelper.canFallAtleastWithSubLevels(this.level(), boundsToCheck) == null; + } + + @Redirect(method = "canFallAtLeast", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;noCollision(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z")) + private boolean sable$noCollision(final Level level, final Entity entity, final AABB aabb) { + final boolean original = level.noCollision(entity, aabb); + + if (!original) return false; + + return CanFallAtleastHelper.canFallAtleastWithSubLevels(level, aabb) == null; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.java new file mode 100644 index 0000000..21ed4a4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.mixin.entity.entity_sublevel_collision; + +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.level.ServerPlayerGameMode; +import net.minecraft.server.network.ServerGamePacketListenerImpl; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ServerGamePacketListenerImpl.class) +public class ServerGamePacketListenerImplMixin { + + @Shadow public ServerPlayer player; + + // TODO: make this check if they're standing on a sub-level instead of disabling the check + @Redirect(method = "handleMovePlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerPlayerGameMode;isCreative()Z")) + private boolean sable$ignoreCreativeModeForSubLevelCollision(final ServerPlayerGameMode instance) {; + return true; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.java new file mode 100644 index 0000000..681e8c7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.java @@ -0,0 +1,89 @@ +package dev.ryanhcode.sable.mixin.entity.entity_swimming; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Camera; +import net.minecraft.core.BlockPos; +import net.minecraft.tags.FluidTags; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.FogType; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Arrays; + +@Mixin(Camera.class) +public abstract class CameraMixin { + + @Shadow + private Vec3 position; + + @Shadow + private BlockGetter level; + + @Shadow public abstract Camera.NearPlane getNearPlane(); + + @Inject(method = "getFluidInCamera", at = @At("RETURN"), cancellable = true) + public void sable$getFluidInCamera(final CallbackInfoReturnable cir) { + if (cir.getReturnValue() == FogType.NONE) { + final BoundingBox3d bounds = new BoundingBox3d(this.position.x - 0.5, this.position.y - 0.5, this.position.z - 0.5, + this.position.x + 0.5, this.position.y + 0.5, this.position.z + 0.5); + + final Iterable intersecting = Sable.HELPER.getAllIntersecting((Level) this.level, bounds); + + for (final SubLevel subLevel : intersecting) { + final FogType fogType = this.sable$getFluidInCameraAt(((ClientSubLevel) subLevel).renderPose()); + + if (fogType != null) { + cir.setReturnValue(fogType); + return; + } + } + } + } + + @Unique + private FogType sable$getFluidInCameraAt(final Pose3dc pose) { + final Vec3 localPosition = pose.transformPositionInverse(this.position); + final BlockPos localBlockPosition = BlockPos.containing(localPosition); + + final FluidState fluidState = this.level.getFluidState(localBlockPosition); + if (fluidState.is(FluidTags.WATER) && localPosition.y < (double) ((float) localBlockPosition.getY() + fluidState.getHeight(this.level, localBlockPosition))) { + return FogType.WATER; + } else { + final Camera.NearPlane nearPlane = this.getNearPlane(); + + for (final Vec3 planeDir : Arrays.asList(nearPlane.getPointOnPlane(0, 0), nearPlane.getTopLeft(), nearPlane.getTopRight(), nearPlane.getBottomLeft(), nearPlane.getBottomRight())) { + final Vec3 localPos = pose.transformPositionInverse(this.position.add(planeDir)); + + final BlockPos blockPos = BlockPos.containing(localPos); + final FluidState fluidState2 = this.level.getFluidState(blockPos); + if (fluidState2.is(FluidTags.LAVA)) { + if (localPos.y <= (double) (fluidState2.getHeight(this.level, blockPos) + (float) blockPos.getY())) { + return FogType.LAVA; + } + } else { + final BlockState blockState = this.level.getBlockState(blockPos); + if (blockState.is(Blocks.POWDER_SNOW)) { + return FogType.POWDER_SNOW; + } + } + } + + return FogType.NONE; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.java new file mode 100644 index 0000000..ee8f053 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.entity.entity_tracking; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(targets = "net.minecraft.server.level.ChunkMap$TrackedEntity") +public class TrackedEntityMixin { + + @Redirect(method = "updatePlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;position()Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$trackSubLevelEntities(final Entity instance) { + final Vec3 pos = instance.position(); + final SubLevel subLevel = Sable.HELPER.getContaining(instance.level(), pos); + + if (subLevel != null) { + return subLevel.logicalPose().transformPosition(pos); + } else { + return instance.position(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.java new file mode 100644 index 0000000..09f7c38 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.entity.entity_unloading; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.entity.EntityAccess; +import net.minecraft.world.level.entity.EntitySection; +import net.minecraft.world.level.entity.EntitySectionStorage; +import net.minecraft.world.level.entity.PersistentEntitySectionManager; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; + +/** + * Fix seats unloading on sub-levels + */ +@Mixin(PersistentEntitySectionManager.class) +public class PersistentEntitySectionManagerMixin { + + @Shadow + @Final + public EntitySectionStorage sectionStorage; + + @Inject(method = "processChunkUnload", at = @At("HEAD")) + private void processChunkUnload(final long l, final CallbackInfoReturnable cir) { + final List> sections = this.sectionStorage + .getExistingSectionsInChunk(l) + .toList(); + + for (final EntitySection section : sections) { + final List entities = section.getEntities().toList(); + + for (final EntityAccess entityAccess : entities) { + final Entity entity = ((Entity) entityAccess); + final boolean inPlot = SubLevelContainer.getContainer(entity.level()).inBounds(entity.chunkPosition()); + + if (inPlot && (entity.getRemovalReason() == null || entity.getRemovalReason().shouldSave())) { + if (entity.isVehicle() && entity.hasExactlyOnePlayerPassenger()) { + entity.getPassengers().getFirst().removeVehicle(); + } + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.java new file mode 100644 index 0000000..4646b14 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.java @@ -0,0 +1,35 @@ +package dev.ryanhcode.sable.mixin.entity.falling_block; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.item.FallingBlockEntity; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(FallingBlockEntity.class) +public abstract class FallingBlockEntityMixin extends Entity { + + public FallingBlockEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/item/FallingBlockEntity;onGround()Z", shift = At.Shift.BEFORE)) + private void sable$beforeOnGroundCheck(final CallbackInfo ci, @Local(ordinal = 0) final LocalRef blockPos) { + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(this); + + if (trackingSubLevel != null) { + blockPos.set(BlockPos.containing(trackingSubLevel.logicalPose().transformPositionInverse(this.position()))); + } + + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.java new file mode 100644 index 0000000..a428db6 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.java @@ -0,0 +1,54 @@ +package dev.ryanhcode.sable.mixin.entity.projectile; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LivingEntityMovementExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.projectile.Projectile; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.joml.Vector3f; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Makes projectiles acquire the shell velocity of their shooter + */ +@Mixin(Projectile.class) +public abstract class ProjectileMixin extends Entity { + + public ProjectileMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @WrapOperation(method = "shootFromRotation", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/projectile/Projectile;shoot(DDDFF)V")) + private void sable$zeroVelocityBeforeShooting(final Projectile instance, final double x, final double y, final double z, final float velocity, final float inaccuracy, final Operation original, @Local(argsOnly = true) final Entity shooter) { + final SubLevel containing = Sable.HELPER.getVehicleSubLevel(shooter); + + if (containing == null) { + original.call(instance, x, y, z, velocity, inaccuracy); + return; + } + + final Vector3d out = containing.logicalPose().transformNormal(new Vector3d(x, y, z)); + original.call(instance, out.x, out.y, out.z, velocity, inaccuracy); + } + + @Inject(method = "shootFromRotation", at = @At("TAIL")) + private void sable$shootFromRotation(final Entity entity, final float x, final float y, final float z, final float i, final float j, final CallbackInfo ci) { + if (entity instanceof final LivingEntityMovementExtension extension) { + this.setDeltaMovement(this.getDeltaMovement().add(JOMLConversion.toMojang(extension.sable$getInheritedVelocity()))); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.java new file mode 100644 index 0000000..d24c182 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.mixin.entity.server_entities_tick; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import net.minecraft.server.level.ChunkMap; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(ChunkMap.class) +public class ChunkMapMixin { + + @Shadow @Final private ServerLevel level; + + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ChunkMap$DistanceManager;inEntityTickingRange(J)Z")) + private boolean sable$wrapEntityTickingRange(final ChunkMap.DistanceManager instance, final long l, final Operation original) { + final ChunkPos chunkPos = new ChunkPos(l); + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + final PlotChunkHolder chunkHolder = container.getChunkHolder(chunkPos); + + if (chunkHolder != null) { + return true; + } + + return original.call(instance, l); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.java new file mode 100644 index 0000000..6eabbe8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.mixin.entity.server_entities_tick; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import net.minecraft.server.level.DistanceManager; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(ServerLevel.class) +public class ServerLevelMixin { + + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/DistanceManager;inEntityTickingRange(J)Z")) + private boolean sable$wrapEntityTickingRange(final DistanceManager instance, final long l, final Operation original) { + final ChunkPos chunkPos = new ChunkPos(l); + final SubLevelContainer container = SubLevelContainer.getContainer((Level) (Object) this); + + final PlotChunkHolder chunkHolder = container.getChunkHolder(chunkPos); + + if (chunkHolder != null) { + return true; + } + + return original.call(instance, l); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.java new file mode 100644 index 0000000..6f38334 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.mixin.entity.sublevels_block_sky; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.mixinhelpers.entity.sublevels_block_sky.SubLevelsBlockSkyMixinHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Mob; +import net.minecraft.world.entity.ai.goal.FleeSunGoal; +import net.minecraft.world.entity.ai.navigation.GroundPathNavigation; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin({Mob.class, FleeSunGoal.class, GroundPathNavigation.class}) +public class SubLevelsBlockSkyMixin { + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;canSeeSky(Lnet/minecraft/core/BlockPos;)Z")) + private boolean sable$subLevelsBlockSky(final Level instance, final BlockPos pos, final Operation original) { + final boolean canSeeOriginal = original.call(instance, pos); + + if (canSeeOriginal && pos.getY() < instance.getMaxBuildHeight()) { + //I can't think of a better way to approach this right now... --cyvack + if (SubLevelsBlockSkyMixinHelper.checkSkyWithSublevels(instance, pos)) { + return false; + } + } + + return canSeeOriginal; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.java new file mode 100644 index 0000000..81cd05a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.mixin.entity.tamed_teleport; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.TamableAnimal; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(TamableAnimal.class) +public class TamableAnimalMixin { + + @Unique + private static final BoundingBox3d sable$BOX = new BoundingBox3d(); + + @WrapOperation(method = "maybeTeleportTo", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/TamableAnimal;canTeleportTo(Lnet/minecraft/core/BlockPos;)Z")) + private static boolean sable$blockPosition(final TamableAnimal instance, final BlockPos blockPos, final Operation original) { + final SubLevel subLevel = Sable.HELPER.getTrackingSubLevel(instance.getOwner()); + if(subLevel != null) { + final BlockPos pos = BlockPos.containing(subLevel.logicalPose().transformPositionInverse(blockPos.getCenter())); + if (original.call(instance, pos)) { + final double dot = subLevel.logicalPose().transformNormal(new Vector3d(0, 1, 0)).dot(OrientedBoundingBox3d.UP); + + if (dot > 0.85) { + return true; + } + } + } + + sable$BOX.set(instance.getBoundingBox().move(blockPos.subtract(instance.blockPosition()))); + final Iterable subLevels = Sable.HELPER.getAllIntersecting(instance.level(), sable$BOX); + for (final SubLevel subLevel1 : subLevels) { + final Vector3d center = sable$BOX.center(); + final BlockPos pos = BlockPos.containing(subLevel1.logicalPose().transformPositionInverse(new Vec3(center.x(), center.y(), center.z()))); + if (!instance.level().getBlockState(pos).isAir()) { + return false; + } + } + + return original.call(instance, blockPos); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.java new file mode 100644 index 0000000..29f68cb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.mixin.entity.teleport_players; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.Sable; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.RelativeMovement; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; + +import java.util.Set; + +@Mixin(ServerPlayer.class) +public class ServerPlayerMixin { + + @WrapMethod(method = "teleportTo(Lnet/minecraft/server/level/ServerLevel;DDDLjava/util/Set;FF)Z") + public boolean sable$teleportTo(final ServerLevel serverLevel, final double x, final double y, final double z, final Set set, final float g, final float h, final Operation original) { + final Vector3d globalPos = Sable.HELPER.projectOutOfSubLevel(serverLevel, new Vector3d(x, y, z)); + return original.call(serverLevel, globalPos.x, globalPos.y, globalPos.z, set, g, h); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.java new file mode 100644 index 0000000..cead44b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixin.entity.tnt_jumps; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.item.PrimedTnt; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(PrimedTnt.class) +public abstract class PrimedTntMixin extends Entity { + + public PrimedTntMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "(Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/entity/LivingEntity;)V", at = @At("TAIL")) + private void sable$setTntJump(final Level level, final double d, final double e, final double f, final LivingEntity livingEntity, final CallbackInfo ci) { + final SubLevel subLevel = Sable.HELPER.getContaining(level, this.blockPosition()); + + if (subLevel != null) { + this.setDeltaMovement(subLevel.logicalPose().transformNormalInverse(this.getDeltaMovement())); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.java new file mode 100644 index 0000000..a39bb4e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.mixin.entity.trident; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.projectile.ThrownTrident; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ThrownTrident.class) +public abstract class ThrownTridentMixin extends Entity { + public ThrownTridentMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Inject(method = "tick", at= @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/projectile/ThrownTrident;setNoPhysics(Z)V")) + private void sable$startReturning(final CallbackInfo ci) { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + + if (subLevel != null) { + EntitySubLevelUtil.kickEntity(subLevel, this); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.java new file mode 100644 index 0000000..76ad749 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.java @@ -0,0 +1,158 @@ +package dev.ryanhcode.sable.mixin.explosion; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalFloatRef; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.projectile.windcharge.WindCharge; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.ExplosionDamageCalculator; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +import java.util.Optional; +import java.util.Set; + +@Mixin(Explosion.class) +public class ExplosionMixin { + + + @Shadow + @Final + private Level level; + + @Shadow + @Final + private double x; + + @Shadow + @Final + private double y; + + @Shadow + @Final + private double z; + + @Shadow + @Final + private ExplosionDamageCalculator damageCalculator; + + @Shadow @Final private @Nullable Entity source; + + @Inject(method = "explode", at = @At("HEAD")) + private void sable$preExplode(final CallbackInfo ci, @Share("explodedSet") final LocalRef> explodedSet) { + explodedSet.set(new ObjectOpenHashSet<>()); + } + + @Inject(method = "explode", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/ExplosionDamageCalculator;getBlockExplosionResistance(Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Ljava/util/Optional;"), locals = LocalCapture.CAPTURE_FAILHARD) + private void sable$redirectBlockExplosionResistance(final CallbackInfo ci, + final Set set, + final int i, + final int j, + final int k, + final int l, + final double d0, + final double d1, + final double d2, + final double d3, + float f, + final double d4, + final double d6, + final double d8, + final float f1, + BlockPos blockpos, + BlockState blockstate, + FluidState fluidstate, + @Local(ordinal = 0) final LocalFloatRef fReference, + @Share("explodedSet") final LocalRef> explodedSet) { + final Explosion self = (Explosion) (Object) this; + + if (!blockstate.isAir()) { + return; + } + + final BoundingBox3d globalBounds = new BoundingBox3d(blockpos); + final Iterable subLevels = Sable.HELPER.getAllIntersecting(this.level, globalBounds); + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + for (final SubLevel subLevel : subLevels) { + final Pose3d pose = subLevel.logicalPose(); + + final BoundingBox3d localBounds = new BoundingBox3d(); + globalBounds.transformInverse(pose, localBounds); + + final BoundingBox3i blockBounds = new BoundingBox3i( + Mth.floor(localBounds.minX()), + Mth.floor(localBounds.minY()), + Mth.floor(localBounds.minZ()), + Mth.floor(localBounds.maxX()), + Mth.floor(localBounds.maxY()), + Mth.floor(localBounds.maxZ()) + ); + + final Vec3 localExplosionPosition = pose.transformPositionInverse(new Vec3(this.x, this.y, this.z)); + + for (int x = blockBounds.minX(); x <= blockBounds.maxX(); x++) { + for (int z = blockBounds.minZ(); z <= blockBounds.maxZ(); z++) { + for (int y = blockBounds.minY(); y <= blockBounds.maxY(); y++) { + blockpos = new BlockPos(x, y, z); + blockstate = this.level.getBlockState(blockpos); + fluidstate = this.level.getFluidState(blockpos); + + final boolean canExplodeBefore = f > 0.0; + + final Optional optional = this.damageCalculator.getBlockExplosionResistance(self, this.level, blockpos, blockstate, fluidstate); + if (optional.isPresent()) { + f -= (optional.get() + 0.3F) * 0.3F; + } + + if (f > 0.0F && this.damageCalculator.shouldBlockExplode(self, this.level, blockpos, blockstate, f)) { + set.add(blockpos); + } + + final boolean wind = this.source instanceof WindCharge && !blockstate.isAir(); + if (canExplodeBefore && (f < 0.0f || wind) && explodedSet.get().add(blockpos)) { + explodedSet.get().add(blockpos); + + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + final SubLevelPhysicsSystem physicsSystem = ((ServerSubLevelContainer) container).physicsSystem(); + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle(serverSubLevel); + + final Vec3 pos = blockpos.getCenter(); + final Vec3 force = pos.subtract(localExplosionPosition).normalize().scale(5.0); + handle.applyImpulseAtPoint(pos, force); + } + } + } + } + } + } + + fReference.set(f); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.java new file mode 100644 index 0000000..73005ac --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.mixin.explosion; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.Holder; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.world.damagesource.DamageSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Explosion; +import net.minecraft.world.level.ExplosionDamageCalculator; +import net.minecraft.world.level.Level; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(ServerLevel.class) +public abstract class ServerLevelMixin { + + @Shadow + public abstract ServerLevel getLevel(); + + @WrapMethod(method = "explode") + public Explosion sable$preExplode(final Entity entity, + final DamageSource damageSource, + final ExplosionDamageCalculator explosionDamageCalculator, + final double d, + final double e, + final double f, + final float g, + final boolean bl, + final Level.ExplosionInteraction explosionInteraction, + final ParticleOptions particleOptions, + final ParticleOptions particleOptions2, + final Holder holder, + final Operation original) { + + final Vector3d projectedPos = Sable.HELPER.projectOutOfSubLevel(getLevel(), new Vector3d(d, e, f)); + return original.call(entity, damageSource, explosionDamageCalculator, projectedPos.x, projectedPos.y, projectedPos.z, g, bl, explosionInteraction, particleOptions, particleOptions2, holder); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/extension/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/extension/EntityMixin.java new file mode 100644 index 0000000..3743af7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/extension/EntityMixin.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.mixin.extension; + +import dev.ryanhcode.sable.mixinterface.EntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(Entity.class) +public abstract class EntityMixin implements EntityExtension { + @Shadow + private Vec3 position; + + @Shadow + private BlockPos blockPosition; + + @Shadow + private AABB bb; + + @Shadow + protected abstract AABB makeBoundingBox(); + + @Shadow protected abstract Vec3 collide(Vec3 vec3); + + @Override + public void sable$setPosSuperRaw(final Vec3 pos) { + this.position = pos; + this.blockPosition = BlockPos.containing(pos); + this.bb = this.makeBoundingBox(); + } + + @Override + public Vec3 sable$vanillaCollide(final Vec3 vec3) { + return this.collide(vec3); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.java new file mode 100644 index 0000000..17dd769 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.java @@ -0,0 +1,54 @@ +package dev.ryanhcode.sable.mixin.fluids_on_sub_levels; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.FlowingFluid; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Makes fluids refuse to flow off the edge of sub-levels + */ +@Mixin(FlowingFluid.class) +public class FlowingFluidMixin { + + + @Inject(at = @At("HEAD"), method = "canSpreadTo(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/Fluid;)Z", cancellable = true) + private void sable$canSpreadTo(final BlockGetter pLevel, final BlockPos pFromPos, final BlockState pFromBlockState, final Direction pDirection, final BlockPos pToPos, final BlockState pToBlockState, final FluidState pToFluidState, final Fluid pFluid, final CallbackInfoReturnable cir) { + if (!(pLevel instanceof final Level level)) { + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(level, Vec3.atCenterOf(pToPos)); + + if (subLevel != null) { + BlockPos mut = pToPos; + boolean ableToFlow = false; + + while (subLevel.getPlot().getBoundingBox().contains(mut.getX(), mut.getY(), mut.getZ())) { + mut = mut.below(); + + if (mut.getY() < 0 || !pLevel.getBlockState(mut).isAir()) { + ableToFlow = true; + break; + } + } + + if (!ableToFlow) { + cir.setReturnValue(false); + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.java new file mode 100644 index 0000000..7808b3e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixin.game_test; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import net.minecraft.gametest.framework.GameTestInfo; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(GameTestInfo.class) +public abstract class GameTestInfoMixin { + + @Shadow + public abstract ServerLevel getLevel(); + + @Inject(method = "succeed", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerLevel;getEntitiesOfClass(Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List;")) + public void removeSublevels(final CallbackInfo ci, @Local final AABB aabb) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.getLevel()); + if (container != null) { + for (final SubLevel subLevel : container.queryIntersecting(new BoundingBox3d(aabb))) { + container.removeSubLevel(subLevel, SubLevelRemovalReason.REMOVED); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.java new file mode 100644 index 0000000..9d9ec19 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.mixin.game_test; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import net.minecraft.gametest.framework.StructureUtils; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(StructureUtils.class) +public class StructureUtilsMixin { + + @Inject(method = "clearSpaceForStructure", at = @At("TAIL")) + private static void clearSpaceForStructure(final BoundingBox box, final ServerLevel level, final CallbackInfo ci) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + if (container != null) { + for (final SubLevel subLevel : container.queryIntersecting(new BoundingBox3d(box))) { + container.removeSubLevel(subLevel, SubLevelRemovalReason.REMOVED); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.java new file mode 100644 index 0000000..2d2db45 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.game_test; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import net.minecraft.gametest.framework.GameTestInfo; +import net.minecraft.gametest.framework.TestCommand; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(TestCommand.class) +public class TestCommandMixin { + + @Inject(method = "resetGameTestInfo", at = @At("HEAD")) + private static void resetGameTestInfo(final GameTestInfo gameTestInfo, final CallbackInfoReturnable cir) { + final SubLevelContainer container = SubLevelContainer.getContainer(gameTestInfo.getLevel()); + if (container != null) { + for (final SubLevel subLevel : container.queryIntersecting(new BoundingBox3d(gameTestInfo.getStructureBounds()))) { + container.removeSubLevel(subLevel, SubLevelRemovalReason.REMOVED); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.java new file mode 100644 index 0000000..7257784 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.mixin.impact; + +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.physics.callback.BeehiveBlockCallback; +import net.minecraft.world.level.block.BeehiveBlock; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(BeehiveBlock.class) +public abstract class BeehiveBlockMixin implements BlockWithSubLevelCollisionCallback { + + @Override + public BlockSubLevelCollisionCallback sable$getCallback() { + return BeehiveBlockCallback.INSTANCE; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.java new file mode 100644 index 0000000..669f23f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.mixin.impact; + +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.physics.callback.BellBlockCallback; +import net.minecraft.world.level.block.BellBlock; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(BellBlock.class) +public abstract class BellBlockMixin implements BlockWithSubLevelCollisionCallback { + + @Override + public BlockSubLevelCollisionCallback sable$getCallback() { + return BellBlockCallback.INSTANCE; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.java new file mode 100644 index 0000000..051dec7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.mixin.impact; + +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.physics.callback.ExplosiveBlockCallback; +import net.minecraft.world.level.block.TntBlock; +import org.spongepowered.asm.mixin.Mixin; + +/** + * Makes tnt explode on high velocity collisions. + * TODO: This process should be refined for adding collision callbacks to blocks. + * A mixin should not be absolutely necessary. + */ +@Mixin(TntBlock.class) +public abstract class TntBlockMixin implements BlockWithSubLevelCollisionCallback { + + @Override + public BlockSubLevelCollisionCallback sable$getCallback() { + return ExplosiveBlockCallback.INSTANCE; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.java new file mode 100644 index 0000000..87df807 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.mixin.interaction_distance; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +/** + * Changes distance checks in entities to take into account sublevels + */ +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + public abstract Vec3 position(); + + @Shadow + public abstract Level level(); + + /** + * @author RyanH + * @reason Overwrite to make distance checks take into account sublevels + */ + @Overwrite + public float distanceTo(final Entity entity) { + final Level level = this.level(); + final double distanceSquared = Sable.HELPER.distanceSquaredWithSubLevels(level, this.position(), entity.position()); + + return (float) Math.sqrt(distanceSquared); + } + + /** + * @author RyanH + * @reason Overwrite to make distance checks take into account sublevels + */ + @Overwrite + public double distanceToSqr(final double x, final double y, final double z) { + final Level level = this.level(); + + return Sable.HELPER.distanceSquaredWithSubLevels(level, this.position(), x, y, z); + } + + /** + * @author RyanH + * @reason Overwrite to make distance checks take into account sublevels + */ + @Overwrite + public double distanceToSqr(final Vec3 pos) { + final Level level = this.level(); + + return Sable.HELPER.distanceSquaredWithSubLevels(level, this.position(), pos); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.java new file mode 100644 index 0000000..3bd7ed3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.java @@ -0,0 +1,61 @@ +package dev.ryanhcode.sable.mixin.interaction_distance; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Fixes interaction distance on entity and block interactions + */ +@Mixin(Player.class) +public abstract class PlayerMixin extends LivingEntity { + + protected PlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Shadow + public abstract double blockInteractionRange(); + + @Inject(method = "canInteractWithBlock", at = @At("HEAD"), cancellable = true) + private void sable$canInteractWithBlock(final BlockPos pos, final double slop, final CallbackInfoReturnable cir) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level(), pos); + + if (subLevel != null) { + final double rangeWithSlop = this.blockInteractionRange() + slop; + final Vec3 eyePos = subLevel.logicalPose().transformPositionInverse(this.getEyePosition()); + + final boolean closeEnough = (new AABB(pos)).distanceToSqr(eyePos) < rangeWithSlop * rangeWithSlop; + + if (closeEnough) cir.setReturnValue(true); + } + } + + @Inject(method = "canInteractWithEntity(Lnet/minecraft/world/phys/AABB;D)Z", at = @At("HEAD"), cancellable = true) + private void sable$canInteractWithEntity(final AABB aabb, final double slop, final CallbackInfoReturnable cir) { + // should bottom center be assumed here? + final SubLevel subLevel = Sable.HELPER.getContaining(this.level(), aabb.getBottomCenter()); + + if (subLevel != null) { + final double rangeWithSlop = this.blockInteractionRange() + slop; + final Vec3 eyePos = subLevel.logicalPose().transformPositionInverse(this.getEyePosition()); + + final boolean closeEnough = aabb.distanceToSqr(eyePos) < rangeWithSlop * rangeWithSlop; + + if (closeEnough) cir.setReturnValue(true); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.java new file mode 100644 index 0000000..ef13a10 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.mixin.level_accelerator; + +import net.minecraft.server.level.ChunkHolder; +import net.minecraft.server.level.ServerChunkCache; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(ServerChunkCache.class) +public interface ServerChunkCacheAccessor { + + @Invoker + ChunkHolder invokeGetVisibleChunkIfPresent(long p_140328_); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.java new file mode 100644 index 0000000..c5d5d31 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.options; + +import dev.ryanhcode.sable.config.SubLevelSettingsScreen; +import net.minecraft.client.Options; +import net.minecraft.client.gui.components.Button; +import net.minecraft.client.gui.layouts.LayoutElement; +import net.minecraft.client.gui.layouts.LinearLayout; +import net.minecraft.client.gui.screens.Screen; +import net.minecraft.client.gui.screens.options.OptionsScreen; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Adds a button to access the sable menu on integrated servers to the {@link OptionsScreen} + */ +@Mixin(OptionsScreen.class) +public abstract class OptionsScreenMixin extends Screen { + + @Shadow @Final private Options options; + + protected OptionsScreenMixin(final Component component) { + super(component); + } + + @Inject(method = "createOnlineButton", at = @At("RETURN"), cancellable = true) + public void sable$createSableButton(final CallbackInfoReturnable cir) { + if (this.minecraft.level == null || !this.minecraft.hasSingleplayerServer()) { + return; + } + + final LinearLayout layout = LinearLayout.vertical(); + + final Button sableButton = Button.builder(SubLevelSettingsScreen.TITLE, (event) -> { + this.minecraft.setScreen(new SubLevelSettingsScreen(this, this.options, SubLevelSettingsScreen.TITLE)); + }).pos(0, 30).size(150, 20).build(); + + layout.addChild(cir.getReturnValue()); + layout.spacing(5); + layout.addChild(sableButton); + cir.setReturnValue(layout); + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.java new file mode 100644 index 0000000..28e9761 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.mixin.particle; + +import dev.ryanhcode.sable.api.particle.ParticleSubLevelKickable; +import net.minecraft.client.particle.BlockMarker; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(BlockMarker.class) +public class BlockMarkerMixin implements ParticleSubLevelKickable { + + @Override + public boolean sable$shouldKickFromTracking() { + return false; + } + + @Override + public boolean sable$shouldCollideWithTrackingSubLevel() { + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.java new file mode 100644 index 0000000..dbe4c44 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.java @@ -0,0 +1,73 @@ +package dev.ryanhcode.sable.mixin.particle; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.resources.ResourceKey; +import net.minecraft.util.Mth; +import net.minecraft.util.RandomSource; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.dimension.DimensionType; +import net.minecraft.world.level.storage.WritableLevelData; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.function.Supplier; + +/** + * Adds animate ticks for blocks on sub-levels. + */ +@Mixin(ClientLevel.class) +public abstract class ClientLevelMixin extends Level { + + @Shadow + public abstract void doAnimateTick(int i, int j, int k, int l, RandomSource randomSource, @Nullable Block block, BlockPos.MutableBlockPos mutableBlockPos); + + private ClientLevelMixin(final WritableLevelData writableLevelData, final ResourceKey resourceKey, final RegistryAccess registryAccess, final Holder holder, final Supplier supplier, final boolean bl, final boolean bl2, final long l, final int i) { + super(writableLevelData, resourceKey, registryAccess, holder, supplier, bl, bl2, l, i); + } + + @Inject(method = "animateTick", at = @At("TAIL")) + public void sable$subLevelAnimateTick(final int x, final int y, final int z, final CallbackInfo ci, @Local final RandomSource randomSource, @Local final Block block, @Local final BlockPos.MutableBlockPos pos) { + final Iterable intersectingSubLevels = Sable.HELPER.getAllIntersecting(this, new BoundingBox3d(x - 32, y - 32, z - 32, x + 32, y + 32, z + 32)); + + final BoundingBox3i tickingBounds = new BoundingBox3i(); + final Vector3d playerPos = new Vector3d(); + + for (final SubLevel subLevel : intersectingSubLevels) { + final Vector3d position = subLevel.logicalPose().transformPositionInverse(playerPos.set(x, y, z)); + tickingBounds.set( + Mth.floor(position.x), + Mth.floor(position.y), + Mth.floor(position.z), + Mth.floor(position.x), + Mth.floor(position.y), + Mth.floor(position.z)); + tickingBounds.expand(16, 16, 16); + tickingBounds.intersect(subLevel.getPlot().getBoundingBox()); + + // The extra random float at the end adds random variance to the selection, so tiny sub-levels are also ticked + final int randomCount = Mth.floor(667.0F * tickingBounds.volume() / (32 * 32 * 32) + randomSource.nextFloat()); + for (int i = 0; i < randomCount; i++) { + final int randomX = Mth.randomBetweenInclusive(randomSource, tickingBounds.minX, tickingBounds.maxX); + final int randomY = Mth.randomBetweenInclusive(randomSource, tickingBounds.minY, tickingBounds.maxY); + final int randomZ = Mth.randomBetweenInclusive(randomSource, tickingBounds.minZ, tickingBounds.maxZ); + this.doAnimateTick(randomX, randomY, randomZ, 1, randomSource, block, pos); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.java new file mode 100644 index 0000000..b95cb3e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.mixin.particle; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.particle.ParticleExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.FlameParticle; +import net.minecraft.client.particle.Particle; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(FlameParticle.class) +public abstract class FlameParticleMixin extends Particle implements ParticleExtension { + + protected FlameParticleMixin(final ClientLevel clientLevel, final double d, final double e, final double f) { + super(clientLevel, d, e, f); + } + + @WrapMethod(method = "move") + public void move(final double motionX, final double motionY, final double motionZ, final Operation original) { + final SubLevel trackingSubLevel = this.sable$getTrackingSubLevel(); + if (trackingSubLevel == null || trackingSubLevel.isRemoved()) { + original.call(motionX, motionY, motionZ); + return; + } + + final Pose3dc pose = trackingSubLevel.logicalPose(); + final Pose3dc last = trackingSubLevel.lastPose(); + + // Move with our current tracking sub-level + final Vector3dc globalBoundsCenter = JOMLConversion.getAABBCenter(this.getBoundingBox()); + final Vector3d localPosition = last.transformPositionInverse(globalBoundsCenter, new Vector3d()); + final Vector3d newGlobalPosition = pose.transformPosition(localPosition); + + original.call(motionX + newGlobalPosition.x - globalBoundsCenter.x(), + motionY + newGlobalPosition.y - globalBoundsCenter.y(), + motionZ + newGlobalPosition.z - globalBoundsCenter.z()); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.java new file mode 100644 index 0000000..7dd2bcb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.particle; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Shadow + @Nullable + private ClientLevel level; + + @Redirect(method = "addParticleInternal(Lnet/minecraft/core/particles/ParticleOptions;ZZDDDDDD)Lnet/minecraft/client/particle/Particle;", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(DDD)D")) + private double sable$addParticleInternal(final Vec3 vec, final double x, final double y, final double z) { + return Sable.HELPER.distanceSquaredWithSubLevels(this.level, vec, x, y, z); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.java new file mode 100644 index 0000000..67705db --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.java @@ -0,0 +1,78 @@ +package dev.ryanhcode.sable.mixin.particle; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.mixinterface.particle.ParticleExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.Particle; +import net.minecraft.client.particle.ParticleEngine; +import net.minecraft.client.particle.TerrainParticle; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Before ticking a particle, try and kick it from a {@link LevelPlot} + */ +@Mixin(ParticleEngine.class) +public abstract class ParticleEngineMixin { + + @Shadow public abstract void add(Particle particle); + + @Shadow protected ClientLevel level; + + @Inject(method = "add", at = @At("TAIL")) + private void sable$onParticleAdd(final Particle particle, final CallbackInfo ci) { + ((ParticleExtension) particle).sable$initialKickOut(); + } + + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/Particle;tick()V")) + private void sable$onParticleTick(final Particle instance, final Operation original) { + final ParticleExtension extension = ((ParticleExtension) instance); + + extension.sable$initialKickOut(); + original.call(instance); + extension.sable$moveWithInheritedVelocity(); + } + + @Redirect(method = "crack", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/TerrainParticle;setPower(F)Lnet/minecraft/client/particle/Particle;")) + private Particle sable$addCrackParticle(final TerrainParticle particle, final float v, @Local(argsOnly = true) final BlockPos pos, @Local final BlockState state) { + final Vec3 particlePosition = new Vec3(particle.x, particle.y, particle.z); + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, particlePosition); + if (subLevel != null) { + final Vec3 velocity = new Vec3(particle.xd, particle.yd, particle.zd); + final Vec3 globalVelocity = subLevel.logicalPose().transformNormal(velocity); + + particle.xd = globalVelocity.x; + particle.yd = globalVelocity.y; + particle.zd = globalVelocity.z; + + particle.setPower(v); + + final Vec3 localVelocity = subLevel.logicalPose().transformNormalInverse(new Vec3(particle.xd, particle.yd, particle.zd)); + + particle.xd = localVelocity.x; + particle.yd = localVelocity.y; + particle.zd = localVelocity.z; + ((ParticleExtension) particle).sable$setTrackingSubLevel((ClientSubLevel) subLevel, particlePosition); + + return particle; + } else { + return particle.setPower(v); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleMixin.java new file mode 100644 index 0000000..5d07245 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ParticleMixin.java @@ -0,0 +1,562 @@ +package dev.ryanhcode.sable.mixin.particle; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.api.particle.ParticleSubLevelKickable; +import dev.ryanhcode.sable.companion.math.*; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import dev.ryanhcode.sable.mixinterface.particle.ParticleExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectSet; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.Particle; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Constant; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyConstant; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; + +@Mixin(Particle.class) +public abstract class ParticleMixin implements ParticleExtension { + + @Unique + private static final double LIGHT_QUERY_AREA = 8.0F; + @Unique + private final static BoundingBox3d TEMP_BOX = new BoundingBox3d(); + @Unique + private final Vector3d sable$inheritedVelocity = new Vector3d(); + @Shadow + public double x; + @Shadow + public double y; + @Shadow + public double z; + @Shadow + protected double xd; + @Shadow + protected double zd; + @Shadow + protected double yd; + @Shadow + @Final + protected ClientLevel level; + @Shadow + protected boolean onGround; + @Unique + private boolean sable$checkedInitialKick = false; + @Unique + @Nullable + private ClientSubLevel sable$trackingSubLevel = null; + @Unique + @Nullable + private Vector3d sable$localTrackingAnchor = null; + @Unique + private List sable$nearbySubLevels; + @Shadow + private boolean stoppedByCollision; + + @Shadow + public abstract void setPos(double d, double e, double g); + + @Shadow + public abstract void move(double d, double e, double f); + + @Shadow + protected abstract void setLocationFromBoundingbox(); + + @Shadow + public abstract AABB getBoundingBox(); + + @Shadow + public abstract void setBoundingBox(AABB aABB); + + @Shadow + public abstract void tick(); + + //#region stupid vanilla velocity + @ModifyConstant(method = "Lnet/minecraft/client/particle/Particle;(Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V", constant = @Constant(ordinal = 13)) + private double sable$removeUpwardsVelocity(final double originalBlockDamageDistanceConstant) { + return 0.0; + } + //#endregion + + @Inject(method = "Lnet/minecraft/client/particle/Particle;(Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V", at = @At("TAIL")) + private void sable$addUpwardsVelocity(final ClientLevel clientLevel, final double d, final double e, final double f, final double g, final double h, final double i, final CallbackInfo ci) { + final Vec3 particlePosition = new Vec3(this.x, this.y, this.z); + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(particlePosition); + + if (subLevel != null) { + final Vec3 stupidVanillaVelocity = subLevel.logicalPose().transformNormalInverse(new Vec3(0.0, 0.1, 0.0)); + + this.xd += stupidVanillaVelocity.x; + this.yd += stupidVanillaVelocity.y; + this.zd += stupidVanillaVelocity.z; + + this.sable$setTrackingSubLevel(subLevel, particlePosition); + } + } + + @Override + public void sable$initialKickOut() { + final Vec3 particlePosition = new Vec3(this.x, this.y, this.z); + + if (!this.sable$checkedInitialKick) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(particlePosition); + + if (subLevel != null) { + // Kick the particle out! + final Pose3d pose = subLevel.logicalPose(); + + final Vec3 globalPosition = pose.transformPosition(particlePosition); + final Vec3 globalVelocity = pose.transformNormal(new Vec3(this.xd, this.yd, this.zd)); + + this.x = globalPosition.x; + this.y = globalPosition.y; + this.z = globalPosition.z; + + this.xd = globalVelocity.x; + this.yd = globalVelocity.y; + this.zd = globalVelocity.z; + + this.setPos(this.x, this.y, this.z); + + this.sable$setTrackingSubLevel(subLevel, particlePosition); + } + + this.sable$checkedInitialKick = true; + } + } + + private void sable$kickFromTracking() { + final Vector3d currentLocalPos = this.sable$trackingSubLevel.logicalPose().transformPositionInverse(new Vector3d(this.x, this.y, this.z)); + Sable.HELPER.getVelocity(this.level, currentLocalPos, this.sable$inheritedVelocity); + + // from m/s to m/t + this.sable$inheritedVelocity.mul(1.0 / 20.0); + this.sable$localTrackingAnchor = null; + this.sable$trackingSubLevel = null; + } + + @Override + public void sable$moveWithInheritedVelocity() { + + } + + @Override + public void sable$setTrackingSubLevel(final ClientSubLevel subLevel, final Vec3 particlePosition) { + this.sable$trackingSubLevel = subLevel; + this.sable$localTrackingAnchor = new Vector3d(); + this.sable$localTrackingAnchor.set(particlePosition.x, particlePosition.y, particlePosition.z); + this.sable$inheritedVelocity.zero(); + } + + @Override + public SubLevel sable$getTrackingSubLevel() { + return this.sable$trackingSubLevel; + } + + @WrapMethod(method = "move") + private void sable$moveWithSubLevels(final double motionX, final double motionY, final double motionZ, final Operation original) { + final AABB bounds = this.getBoundingBox(); + final BoundingBox3d globalBounds = new BoundingBox3d(bounds).expand(0.5); + final ObjectSet intersecting = new ObjectOpenHashSet<>(); + + final boolean ignoreIntersecting = this instanceof final ParticleSubLevelKickable kickable && !kickable.sable$shouldCareAboutIntersectingSubLevels(); + + if (!ignoreIntersecting) { + final Iterable subLevels = Sable.HELPER.getAllIntersecting(this.level, globalBounds); + for (final SubLevel subLevel : subLevels) { + intersecting.add(subLevel); + } + } + + if (this.sable$trackingSubLevel != null) { + intersecting.add(this.sable$trackingSubLevel); + } + + if (this.sable$trackingSubLevel != null && this.sable$trackingSubLevel.isRemoved()) { + this.sable$trackingSubLevel = null; + this.sable$localTrackingAnchor = null; + } + + final Vector3d movementFromPushing = new Vector3d(); + final Vector3d localPosition = new Vector3d(); + final Vector3d globalBoundsCenter = new Vector3d(); + final Vector3d localRayStart = new Vector3d(); + final Vector3d localRayEnd = new Vector3d(); + + final Vector3d movement = new Vector3d(motionX, motionY, motionZ); + movement.add(this.sable$inheritedVelocity); + + boolean isGrounded = false; + for (final SubLevel subLevel : intersecting) { + final Pose3dc pose = subLevel.logicalPose(); + final Pose3dc last = subLevel.lastPose(); + + movementFromPushing.zero(); + + if (this.sable$trackingSubLevel == subLevel) { + // Move with our current tracking sub-level + JOMLConversion.getAABBCenter(bounds, globalBoundsCenter); + last.transformPositionInverse(globalBoundsCenter, localPosition); + final Vector3d newGlobalPosition = pose.transformPosition(localPosition); + movementFromPushing.add(newGlobalPosition).sub(globalBoundsCenter); + } else { + // Handle sub-levels moving into the particle and pushing it + JOMLConversion.getAABBCenter(bounds, globalBoundsCenter); + last.transformPositionInverse(globalBoundsCenter, localRayStart); + pose.transformPositionInverse(globalBoundsCenter, localRayEnd); + + final ClipContext clipContext = new ClipContext(JOMLConversion.toMojang(localRayStart), + JOMLConversion.toMojang(localRayEnd), + ClipContext.Block.COLLIDER, + ClipContext.Fluid.NONE, + CollisionContext.empty()); + ((ClipContextExtension) clipContext).sable$setDoNotProject(true); + final BlockHitResult result = this.level.clip(clipContext); + + if (result.getType() == HitResult.Type.BLOCK) { + pose.transformPosition(JOMLConversion.toJOML(result.getLocation(), movementFromPushing)).sub(globalBoundsCenter); + + if (this.sable$trackingSubLevel == null) { + this.sable$setTrackingSubLevel((ClientSubLevel) subLevel, result.getLocation()); + } + } + } + + final boolean shouldCollide = !(this.sable$trackingSubLevel == subLevel && + this instanceof final ParticleSubLevelKickable kickable && + !kickable.sable$shouldCollideWithTrackingSubLevel()); + + if (shouldCollide) { + final Vector3dc pushedPosition = JOMLConversion.getAABBCenter(bounds, globalBoundsCenter).add(movementFromPushing); + pose.transformPositionInverse(pushedPosition, localRayStart); + pose.transformPositionInverse(pushedPosition.add(movement, localRayEnd)); + + final ClipContext clipContext = new ClipContext(JOMLConversion.toMojang(localRayStart), + JOMLConversion.toMojang(localRayEnd), + ClipContext.Block.COLLIDER, + ClipContext.Fluid.NONE, + CollisionContext.empty()); + ((ClipContextExtension) clipContext).sable$setDoNotProject(true); + final BlockHitResult result = this.level.clip(clipContext); + + if (result != null && result.getType() == HitResult.Type.BLOCK) { + final Vec3 diff = pose.transformPosition(result.getLocation()) + .subtract(pushedPosition.x(), pushedPosition.y(), pushedPosition.z()); + movement.set(diff.x, diff.y, diff.z); + } + } + + movement.add(movementFromPushing); + + //#region run cube collision to push us away from the block + if (shouldCollide) { + final Vec3 collisionBoxCenter = pose.transformPositionInverse(bounds.getCenter().add(movement.x, movement.y, movement.z)); + final double radius = Math.max(bounds.getXsize(), Math.max(bounds.getYsize(), bounds.getZsize())) / 2.0; + final BoundingBox3d collisionBounds = new BoundingBox3d(); + collisionBounds.set(collisionBoxCenter.x - radius, collisionBoxCenter.y - radius, collisionBoxCenter.z - radius, + collisionBoxCenter.x + radius, collisionBoxCenter.y + radius, collisionBoxCenter.z + radius + ); + final Vector3d mtv = this.resolveAABBCollision(collisionBounds); + if (mtv.lengthSquared() > 0.0) { + subLevel.logicalPose().transformNormal(mtv); + + final Vector3d nmtv = mtv.normalize(new Vector3d()); + + Vector3dc upDirection = OrientedBoundingBox3d.UP; + if (this instanceof final ParticleSubLevelKickable kickable) { + upDirection = kickable.sable$getUpDirection(); + } + + final double verticalDot = nmtv.dot(upDirection); + if (verticalDot > 0.6) { + isGrounded = true; + } + + final double dot = nmtv.dot(this.xd, this.yd, this.zd); + this.xd -= dot * nmtv.x; + this.yd -= dot * nmtv.y; + this.zd -= dot * nmtv.z; + + // emulate vanilla stopping particles when they reach stoppedByCollision + // as we can't actually stop their collision + if (verticalDot > 0.6 || verticalDot < 0.6) { + this.xd = upDirection.x() * this.xd; + this.yd = upDirection.y() * this.yd; + this.zd = upDirection.z() * this.zd; + } + + movement.add(mtv); + + if (this.sable$trackingSubLevel == null) { + this.sable$setTrackingSubLevel((ClientSubLevel) subLevel, collisionBoxCenter); + } + } + } + //#endregion + } + + original.call(movement.x, movement.y, movement.z); + this.onGround |= isGrounded; + + if (this.sable$trackingSubLevel != null && !(this instanceof final ParticleSubLevelKickable kickable && !kickable.sable$shouldKickFromTracking())) { + if (this.sable$trackingSubLevel.logicalPose().transformPosition(this.sable$localTrackingAnchor, new Vector3d()).distanceSquared(this.x, this.y, this.z) > 0.5 * 0.5) { + this.sable$kickFromTracking(); + } + } + } + + /** + * Resolves collisions between an AABB and nearby blocks, pushing the AABB out by the maximum MTV. + */ + private Vector3d resolveAABBCollision(final BoundingBox3d box) { + final Vector3d totalMTV = new Vector3d(); + final Vector3d mtv = new Vector3d(); + final double[] maxMTVLengthSq = {0.0}; + + final int minX = (int) Math.floor(box.minX()); + final int minY = (int) Math.floor(box.minY()); + final int minZ = (int) Math.floor(box.minZ()); + final int maxX = (int) Math.floor(box.maxX()); + final int maxY = (int) Math.floor(box.maxY()); + final int maxZ = (int) Math.floor(box.maxZ()); + + final BlockPos.MutableBlockPos mpos = new BlockPos.MutableBlockPos(); + for (int x = minX; x <= maxX; x++) { + for (int y = minY; y <= maxY; y++) { + for (int z = minZ; z <= maxZ; z++) { + final BlockPos blockPos = mpos.set(x, y, z); + final BlockState state = this.level.getBlockState(blockPos); + + if (!state.isAir()) { + final VoxelShape shape = state.getCollisionShape(this.level, blockPos); + if (!shape.isEmpty()) { + final int finalX = x; + final int finalY = y; + final int finalZ = z; + + if (state.isCollisionShapeFullBlock(this.level, blockPos)) { + TEMP_BOX.setUnchecked( + 0.0 + finalX, 0.0 + finalY, 0.0 + finalZ, + 1.0 + finalX, 1.0 + finalY, 1.0 + finalZ + ); + + mtv.zero(); + this.resolveAABBAABBCollision(box, TEMP_BOX, mtv); + + final double lenSq = mtv.lengthSquared(); + if (lenSq > maxMTVLengthSq[0]) { + maxMTVLengthSq[0] = lenSq; + totalMTV.set(mtv); + } + } else { + shape.forAllBoxes((minXb, minYb, minZb, maxXb, maxYb, maxZb) -> { + TEMP_BOX.setUnchecked( + minXb + finalX, minYb + finalY, minZb + finalZ, + maxXb + finalX, maxYb + finalY, maxZb + finalZ + ); + + mtv.zero(); + this.resolveAABBAABBCollision(box, TEMP_BOX, mtv); + + final double lenSq = mtv.lengthSquared(); + if (lenSq > maxMTVLengthSq[0]) { + maxMTVLengthSq[0] = lenSq; + totalMTV.set(mtv); + } + }); + } + } + } + } + } + } + + return totalMTV; + } + + /** + * Resolves collision between two AABBs, outputs MTV into mtv. + * Only resolves if they intersect. + */ + private void resolveAABBAABBCollision(final BoundingBox3d a, final BoundingBox3dc b, final Vector3d mtv) { + final double dx1 = b.maxX() - a.minX(); + final double dx2 = a.maxX() - b.minX(); + if (dx1 <= 0 || dx2 <= 0) { + return; + } + + final double dy1 = b.maxY() - a.minY(); + final double dy2 = a.maxY() - b.minY(); + if (dy1 <= 0 || dy2 <= 0) { + return; + } + + final double dz1 = b.maxZ() - a.minZ(); + final double dz2 = a.maxZ() - b.minZ(); + if (dz1 <= 0 || dz2 <= 0) { + return; + } + + double minOverlap = dx1; + mtv.set(dx1, 0, 0); + + if (dx2 < minOverlap) { + minOverlap = dx2; + mtv.set(-dx2, 0, 0); + } + + if (dy1 < minOverlap) { + minOverlap = dy1; + mtv.set(0, dy1, 0); + } + if (dy2 < minOverlap) { + minOverlap = dy2; + mtv.set(0, -dy2, 0); + } + + if (dz1 < minOverlap) { + minOverlap = dz1; + mtv.set(0, 0, dz1); + } + if (dz2 < minOverlap) { + minOverlap = dz2; + mtv.set(0, 0, -dz2); + } + } + + @Inject(method = "getLightColor", at = @At("HEAD"), cancellable = true) + private void sable$checkSubLevelLightColor(final float f, final CallbackInfoReturnable cir) { + final BlockPos pos = BlockPos.containing(this.x, this.y, this.z); + final boolean hasChunk = this.level.hasChunkAt(pos); + + if (!hasChunk) { + return; + } + + final BlockState state = this.level.getBlockState(pos); + if (state.emissiveRendering(this.level, pos)) { + cir.setReturnValue(LightTexture.FULL_BRIGHT); + return; + } + + int blockLight; + int skyLight; + + // If tracking a sub-level, then don't bother checking against others + if (this.sable$trackingSubLevel != null) { + blockLight = this.level.getBrightness(LightLayer.BLOCK, pos); + skyLight = this.level.getBrightness(LightLayer.SKY, pos); + + final Vector3d particlePos = new Vector3d(); + final BlockPos.MutableBlockPos localBlockPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos heightmapPos = new BlockPos.MutableBlockPos(); + + final Pose3d pose = this.sable$trackingSubLevel.logicalPose(); + pose.transformPositionInverse(particlePos.set(this.x, this.y, this.z)); + localBlockPos.set(particlePos.x, particlePos.y, particlePos.z); + blockLight = Math.max(blockLight, this.sable$trackingSubLevel.getLevel().getBrightness(LightLayer.BLOCK, localBlockPos)); + + heightmapPos.setWithOffset(localBlockPos, 0, 1, 0); + final LevelPlot plot = this.sable$trackingSubLevel.getPlot(); + boolean isAboveGround = false; + + while (heightmapPos.getY() >= plot.getBoundingBox().minY()) { + if (!this.level.getBlockState(heightmapPos).isAir()) { + isAboveGround = true; + break; + } + + heightmapPos.move(0, -1, 0); + } + + if (isAboveGround) { + skyLight = Math.min(skyLight, this.sable$trackingSubLevel.scaleSkyLight(this.level.getBrightness(LightLayer.SKY, localBlockPos))); + } + } else { + if (this.sable$nearbySubLevels == null) { + this.sable$nearbySubLevels = new ObjectArrayList<>(6); + final Iterable all = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(pos).expand(LIGHT_QUERY_AREA)); + for (final SubLevel subLevel : all) { + this.sable$nearbySubLevels.add((ClientSubLevel) subLevel); + } + } + if (this.sable$nearbySubLevels.isEmpty()) { + return; + } + + blockLight = this.level.getBrightness(LightLayer.BLOCK, pos); + skyLight = this.level.getBrightness(LightLayer.SKY, pos); + + final Vector3d particlePos = new Vector3d(); + final BlockPos.MutableBlockPos localBlockPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos heightmapPos = new BlockPos.MutableBlockPos(); + final BoundingBox3d box = new BoundingBox3d(pos).expand(0.5); + + for (final ClientSubLevel subLevel : this.sable$nearbySubLevels) { + if (!subLevel.boundingBox().intersects(box)) { + continue; + } + + final Pose3d pose = subLevel.logicalPose(); + pose.transformPositionInverse(particlePos.set(this.x, this.y, this.z)); + localBlockPos.set(particlePos.x, particlePos.y, particlePos.z); + blockLight = Math.max(blockLight, subLevel.getLevel().getBrightness(LightLayer.BLOCK, localBlockPos)); + + heightmapPos.setWithOffset(localBlockPos, 0, 1, 0); + final LevelPlot plot = subLevel.getPlot(); + boolean isAboveGround = false; + + while (heightmapPos.getY() >= plot.getBoundingBox().minY()) { + if (!this.level.getBlockState(heightmapPos).isAir()) { + isAboveGround = true; + break; + } + + heightmapPos.move(0, -1, 0); + } + + if (isAboveGround) { + skyLight = Math.min(skyLight, subLevel.scaleSkyLight(this.level.getBrightness(LightLayer.SKY, localBlockPos))); + } + } + } + + final int k = state.getLightEmission(); + if (blockLight < k) { + blockLight = k; + } + + cir.setReturnValue(LightTexture.pack(blockLight, skyLight)); + } +} + diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.java new file mode 100644 index 0000000..04258fb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.mixin.particle; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Position; +import net.minecraft.server.level.ServerLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes the particle distance check take into account sub-levels + */ +@Mixin(ServerLevel.class) +public class ServerLevelMixin { + + @Redirect(method = "sendParticles(Lnet/minecraft/server/level/ServerPlayer;ZDDDLnet/minecraft/network/protocol/Packet;)Z", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;closerToCenterThan(Lnet/minecraft/core/Position;D)Z")) + private boolean sable$sendParticlesCloserToCenterThan(final BlockPos blockPos, final Position pos, final double distance) { + return Sable.HELPER.distanceSquaredWithSubLevels((ServerLevel) (Object) this, pos, blockPos.getX() + 0.5, blockPos.getY() + 0.5, blockPos.getZ() + 0.5) < distance * distance; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.java new file mode 100644 index 0000000..e0badc3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.java @@ -0,0 +1,37 @@ +package dev.ryanhcode.sable.mixin.particle; + +import dev.ryanhcode.sable.api.particle.ParticleSubLevelKickable; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.Particle; +import net.minecraft.client.particle.SuspendedParticle; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(SuspendedParticle.class) +public abstract class SuspendedParticleMixin extends Particle implements ParticleSubLevelKickable { + + protected SuspendedParticleMixin(final ClientLevel clientLevel, final double d, final double e, final double f) { + super(clientLevel, d, e, f); + } + + @Override + public void move(final double d, final double e, final double f) { + super.move(d, e, f); + + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(this.level); + if (container != null && container.isOccluded(new Vec3(this.x, this.y, this.z))) { + this.remove(); + } + } + + @Override + public boolean sable$shouldKickFromTracking() { + return false; + } + + @Override + public boolean sable$shouldCollideWithTrackingSubLevel() { + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.java new file mode 100644 index 0000000..4f552c7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.mixin.particle; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.Particle; +import net.minecraft.client.particle.TerrainParticle; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockAndTintGetter; +import net.minecraft.world.level.ChunkPos; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(TerrainParticle.class) +public abstract class TerrainParticleMixin extends Particle { + + @Shadow + @Final + private BlockPos pos; + + protected TerrainParticleMixin(final ClientLevel clientLevel, final double d, final double e, final double f) { + super(clientLevel, d, e, f); + } + + @Redirect(method = "getLightColor", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;getLightColor(Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I")) + private int sable$getLightColor(final BlockAndTintGetter blockAndTintGetter, final BlockPos blockPos, @Local final int existingColor) { + + final ClientSubLevelContainer container = SubLevelContainer.getContainer(Minecraft.getInstance().level); + assert container != null; + final SubLevel subLevel = Sable.HELPER.getContainingClient(this.pos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final int color = LevelRenderer.getLightColor(blockAndTintGetter, blockPos); + return clientSubLevel.scaleLightColor(color); + } else if (container.inBounds(blockPos)) { + return existingColor; + } + + return LevelRenderer.getLightColor(blockAndTintGetter, blockPos); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.java new file mode 100644 index 0000000..4ab4c74 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.mixin.physics; + +import dev.ryanhcode.sable.mixinterface.physics.ServerLevelSceneExtension; +import net.minecraft.server.level.ServerLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(ServerLevel.class) +public class ServerLevelMixin implements ServerLevelSceneExtension { + + @Unique + private int sable$sceneID = -1; + + @Override + public int sable$getSceneID() { + return this.sable$sceneID; + } + + @Override + public void sable$setSceneID(final int sable$sceneID) { + this.sable$sceneID = sable$sceneID; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.java new file mode 100644 index 0000000..8ac4667 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.mixin.player_freezing; + +import com.mojang.authlib.GameProfile; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import java.util.UUID; + +@Mixin(LocalPlayer.class) +public abstract class LocalPlayerMixin extends Player implements PlayerFreezeExtension { + + public LocalPlayerMixin(final Level level, final BlockPos blockPos, final float f, final GameProfile gameProfile) { + super(level, blockPos, f, gameProfile); + } + + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;hasChunkAt(II)Z")) + private boolean sable$freezeTicking(final Level instance, final int x, final int z) { + this.sable$tickStopFreezing(); + + final UUID uuid = this.sable$getFrozenToSubLevel(); + + if (uuid != null) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level()); + assert container != null; + final ClientSubLevel subLevel = (ClientSubLevel) container.getSubLevel(uuid); + + if (subLevel == null || !subLevel.isFinalized()) { + return false; + } + + this.sable$teleport(); + this.sable$freezeTo(null, null); + } + + return instance.hasChunkAt(x, z); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.java new file mode 100644 index 0000000..4066326 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.mixin.player_freezing; + +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.mixinterface.respawn_point.ServerPlayerRespawnExtension; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundFreezePlayerPacket; +import net.minecraft.network.Connection; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.CommonListenerCookie; +import net.minecraft.server.players.PlayerList; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.UUID; + +@Mixin(PlayerList.class) +public class PlayerListMixin { + + @Inject(method = "placeNewPlayer", at = @At("TAIL")) + private void sable$player(final Connection connection, final ServerPlayer serverPlayer, final CommonListenerCookie commonListenerCookie, final CallbackInfo ci) { + final ServerSubLevelContainer container = SubLevelContainer.getContainer(serverPlayer.serverLevel()); + if (container != null) { + container.trackingSystem().refreshPlayer(serverPlayer); + } + + if (serverPlayer instanceof final PlayerFreezeExtension extension) { + final UUID uuid = extension.sable$getFrozenToSubLevel(); + + if (uuid != null) { + serverPlayer.connection.send(new ClientboundCustomPayloadPacket(new ClientboundFreezePlayerPacket(uuid, extension.sable$getFrozenToSubLevelAnchor()))); + } + } + } + + @Inject(method = "respawn", at = @At("TAIL")) + private void sable$respawn(final ServerPlayer oldPlayer, final boolean bl, final Entity.RemovalReason removalReason, final CallbackInfoReturnable cir) { + final ServerPlayer newPlayer = cir.getReturnValue(); + ((ServerPlayerRespawnExtension) newPlayer).sable$takeQueuedFreezeFrom(oldPlayer); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(newPlayer.serverLevel()); + if (container != null) { + container.trackingSystem().refreshPlayer(newPlayer); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.java new file mode 100644 index 0000000..0d98116 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.java @@ -0,0 +1,97 @@ +package dev.ryanhcode.sable.mixin.player_freezing; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LivingEntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(Player.class) +public abstract class PlayerMixin extends Entity implements PlayerFreezeExtension { + + @Unique + @Nullable + private UUID sable$frozenToSubLevel = null; + @Unique + @Nullable + private Vector3dc sable$frozenToSubLevelAnchor = null; + + @Unique + private int sable$frozenTicks = 0; + + public PlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + @Override + public @Nullable UUID sable$getFrozenToSubLevel() { + return this.sable$frozenToSubLevel; + } + + @Override + public @Nullable Vector3dc sable$getFrozenToSubLevelAnchor() { + return this.sable$frozenToSubLevelAnchor; + } + + @Inject(method = "tick", at = @At(value = "HEAD")) + private void sable$preFrozenTick(final CallbackInfo ci) { + this.sable$tickStopFreezing(); + } + + @Override + public void sable$tickStopFreezing() { + if (this.sable$frozenToSubLevel != null) { + if (this.sable$frozenTicks++ > 160) { + this.sable$freezeTo(null, null); + } + } + } + + @Override + public void sable$freezeTo(final UUID subLevelID, final Vector3dc localPosition) { + this.sable$frozenToSubLevel = subLevelID; + this.sable$frozenToSubLevelAnchor = localPosition; + + if (this.sable$frozenToSubLevel != null) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level()); + assert container != null; + + final SubLevel subLevel = container.getSubLevel(this.sable$frozenToSubLevel); + + if (subLevel != null) { + ((EntityMovementExtension) this).sable$setTrackingSubLevel(subLevel); + } + } + } + + @Override + public void sable$teleport() { + if (this.sable$frozenToSubLevel != null) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level()); + assert container != null; + + final SubLevel subLevel = container.getSubLevel(this.sable$frozenToSubLevel); + + if (subLevel != null) { + final Vector3d newPos = subLevel.lastPose().transformPosition(new Vector3d(this.sable$frozenToSubLevelAnchor)); + this.setPos(newPos.x, newPos.y, newPos.z); + ((EntityMovementExtension) this).sable$setTrackingSubLevel(subLevel); + ((LivingEntityMovementExtension) this).sable$getInheritedVelocity().zero(); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.java new file mode 100644 index 0000000..58be3f0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.player_freezing; + +import com.mojang.authlib.GameProfile; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin extends Player implements PlayerFreezeExtension { + + public ServerPlayerMixin(final Level level, final BlockPos blockPos, final float f, final GameProfile gameProfile) { + super(level, blockPos, f, gameProfile); + } + + @Inject(method = "tick", at = @At("HEAD")) + private void setSable$frozenToSubLevel(final CallbackInfo ci) { + this.sable$kick(); + } + + @Unique + private void sable$kick() { + final UUID uuid = this.sable$getFrozenToSubLevel(); + if (uuid != null) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level()); + assert container != null; + + final SubLevel subLevel = container.getSubLevel(uuid); + + if (subLevel != null) { + ((EntityMovementExtension) this).sable$setTrackingSubLevel(subLevel); + this.sable$teleport(); + this.sable$freezeTo(null, null); + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.java new file mode 100644 index 0000000..f02732b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.java @@ -0,0 +1,84 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import it.unimi.dsi.fastutil.longs.Long2ObjectLinkedOpenHashMap; +import net.minecraft.server.level.ChunkHolder; +import net.minecraft.server.level.ChunkMap; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.ChunkPos; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; + +/** + * Hooks into getPlayers so that packets sent regarding plot chunks are also sent to players tracking the sub-level containing the plot. + */ +@Mixin(ChunkMap.class) +public class ChunkMapMixin { + + @Shadow + @Final + private ServerLevel level; + + @Inject(method = "getPlayers", at = @At("HEAD"), cancellable = true) + private void sable$getPlayers(final ChunkPos chunkPos, final boolean bl, final CallbackInfoReturnable> cir) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container.inBounds(chunkPos)) { + final List players = container.getPlayersTracking(chunkPos); + cir.setReturnValue(players); + } + } + + @Inject(method = "saveChunkIfNeeded", at = @At("HEAD"), cancellable = true) + private void sable$saveChunkIfNeeded(final ChunkHolder chunkHolder, final CallbackInfoReturnable cir) { + if (chunkHolder instanceof PlotChunkHolder) { + cir.setReturnValue(false); + } + } + + /** + * Instead of only letting the server stop when the updating chunk map is empty, we stop when it is empty of **plot chunks**, because plot chunks do not unload through vanilla means. + * TODO: Remove when plot chunks are unloaded with their plots + */ + @Redirect(method = "hasWork", at = @At(value = "INVOKE", target = "Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap;isEmpty()Z", ordinal = 1, remap = false)) + private boolean sable$hasWork(final Long2ObjectLinkedOpenHashMap updatingChunkMap) { + return !updatingChunkMap.values().stream().anyMatch(chunkHolder -> !(chunkHolder instanceof PlotChunkHolder)); + } + + @Inject(method = "isChunkTracked", at = @At(value = "HEAD"), cancellable = true) + private void sable$isChunkTracked(final ServerPlayer serverPlayer, final int i, final int j, final CallbackInfoReturnable cir) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + final LevelPlot plot = container.getPlot(new ChunkPos(i, j)); + if (plot != null) { + final ServerSubLevel subLevel = (ServerSubLevel) plot.getSubLevel(); + cir.setReturnValue(subLevel.getTrackingPlayers().contains(serverPlayer.getGameProfile().getId())); + } + } + + @Inject(method = "anyPlayerCloseEnoughForSpawning", at = @At("HEAD"), cancellable = true) + private void sable$anyPlayerCloseEnoughForSpawning(final ChunkPos chunkPos, final CallbackInfoReturnable cir) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null; + + if (container.inBounds(chunkPos)) { + final LevelPlot plot = container.getPlot(chunkPos); + if (plot != null) { + final ServerSubLevel subLevel = (ServerSubLevel) plot.getSubLevel(); + cir.setReturnValue(!subLevel.getTrackingPlayers().isEmpty()); + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.java new file mode 100644 index 0000000..8e8e8ff --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.java @@ -0,0 +1,128 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.platform.SableChunkEventPlatform; +import net.minecraft.client.multiplayer.ClientChunkCache; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.protocol.game.ClientboundLevelChunkPacketData; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.status.ChunkStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.slf4j.Logger; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Consumer; + +/** + * Makes the chunk access methods in the client chunk cache use the plot system. + */ +@Mixin(ClientChunkCache.class) +public abstract class ClientChunkCacheMixin { + + @Shadow + @Final + private static Logger LOGGER; + @Shadow + @Final + private ClientLevel level; + @Shadow + @Final + private LevelChunk emptyChunk; + + @Shadow + private static boolean isValidChunk(@Nullable final LevelChunk levelChunk, final int i, final int j) { + return false; + } + + @Unique + private @NotNull SubLevelContainer sable$getPlotContainer() { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container == null) { + throw new IllegalStateException("Plot container not found in level"); + } + return container; + } + + @Inject(method = "getChunk(IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/LevelChunk;", at = @At("HEAD"), cancellable = true) + private void getChunk(final int x, final int z, final ChunkStatus status, final boolean create, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + if (container.inBounds(x, z)) { + final ChunkPos chunkPos = new ChunkPos(x, z); + final LevelChunk chunk = container.getChunk(chunkPos); + + if (chunk != null) { + cir.setReturnValue(chunk); + } else { + cir.setReturnValue(this.emptyChunk); + } + } + } + + @Inject(method = "drop", at = @At("HEAD"), cancellable = true) + private void drop(final ChunkPos chunkPos, final CallbackInfo ci) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + if (container.inBounds(chunkPos)) { + ci.cancel(); + throw new UnsupportedOperationException("Cannot drop chunks in plot"); + } + } + + @Inject(method = "replaceBiomes", at = @At("HEAD"), cancellable = true) + private void replaceBiomes(final int x, final int z, final FriendlyByteBuf friendlyByteBuf, final CallbackInfo ci) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + if (container.inBounds(x, z)) { + final ChunkPos chunkPos = new ChunkPos(x, z); + final LevelChunk levelChunk = container.getChunk(chunkPos); + + if (levelChunk == null || !isValidChunk(levelChunk, x, z)) { + LOGGER.warn("Ignoring chunk since it's not present: {}, {}", x, z); + } else { + levelChunk.replaceBiomes(friendlyByteBuf); + } + } + } + + @Inject(method = "replaceWithPacketData", at = @At("HEAD"), cancellable = true) + private void replaceWithPacketData(final int x, final int z, final FriendlyByteBuf friendlyByteBuf, final CompoundTag compoundTag, final Consumer consumer, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + if (container.inBounds(x, z)) { + final ChunkPos chunkPos = new ChunkPos(x, z); + LevelChunk levelChunk = container.getChunk(chunkPos); + if (!isValidChunk(levelChunk, x, z)) { + if (levelChunk != null) { + SableChunkEventPlatform.INSTANCE.onOldChunkInvalid(levelChunk); + this.level.unload(levelChunk); + } + levelChunk = new LevelChunk(this.level, chunkPos); + levelChunk.replaceWithPacketData(friendlyByteBuf, compoundTag, consumer); + container.newPopulatedChunk(chunkPos, levelChunk); + } else { + levelChunk.replaceWithPacketData(friendlyByteBuf, compoundTag, consumer); + } + + this.level.onChunkLoaded(chunkPos); + this.level.getLightEngine().setLightEnabled(chunkPos, true); + + SableChunkEventPlatform.INSTANCE.onChunkPacketReplaced(levelChunk); + cir.setReturnValue(levelChunk); + } + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.java new file mode 100644 index 0000000..d3c5541 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.java @@ -0,0 +1,71 @@ +package dev.ryanhcode.sable.mixin.plot; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableCommonEvents; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Hooks into setBlockState to notify plots & plot chunk holders of block changes. + */ +@Mixin(LevelChunk.class) +public class LevelChunkMixin { + + @Shadow + @Final + private Level level; + + @Unique + private BlockPos sable$blockSet = null; + + @Inject(method = "setBlockState", at = @At("HEAD")) + private void sable$preSetBlockState(final BlockPos pPos, final BlockState pState, final boolean pIsMoving, + final CallbackInfoReturnable cir) { + this.sable$blockSet = pPos; + } + + @Inject(method = "setBlockState", at = @At("RETURN")) + private void sable$postSetBlockState(final BlockPos pPos, final BlockState pState, final boolean pIsMoving, + final CallbackInfoReturnable cir) { + if (this.sable$blockSet != null) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, this.sable$blockSet); + + if (subLevel != null) { + subLevel.getPlot().onBlockChange(this.sable$blockSet, pState); + } + } + this.sable$blockSet = null; + } + + @WrapOperation(method = "setBlockState", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/chunk/LevelChunkSection;setBlockState(IIILnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState;")) + private BlockState sable$setBlockState(final LevelChunkSection instance, int pX, int pY, int pZ, final BlockState newState, final Operation original) { + final BlockState oldState = original.call(instance, pX, pY, pZ, newState); + + if (this.level instanceof final ServerLevel serverLevel && oldState != newState) { + pX = this.sable$blockSet.getX(); + pY = this.sable$blockSet.getY(); + pZ = this.sable$blockSet.getZ(); + + SableCommonEvents.handleBlockChange(serverLevel, (LevelChunk) (Object) this, pX, pY, pZ, oldState, newState); + } + + return oldState; + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelsMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelsMixin.java new file mode 100644 index 0000000..34e5051 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/LevelsMixin.java @@ -0,0 +1,60 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.platform.SableEventPublishPlatform; +import dev.ryanhcode.sable.platform.SablePlatform; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.dimension.DimensionType; +import net.minecraft.world.level.storage.WritableLevelData; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Pseudo; +import org.spongepowered.asm.mixin.Unique; + +import java.util.function.Supplier; + +/** + * Adds a {@link SubLevelContainer} to the server levels + */ +@Pseudo +@Mixin({ServerLevel.class, ClientLevel.class}) +public abstract class LevelsMixin extends Level implements SubLevelContainerHolder { + @Unique + private final SubLevelContainer sable$plotContainer = this.sable$createPlotContainer(); + + protected LevelsMixin(final WritableLevelData writableLevelData, final ResourceKey resourceKey, final RegistryAccess registryAccess, final Holder holder, final Supplier supplier, final boolean bl, final boolean bl2, final long l, final int i) { + super(writableLevelData, resourceKey, registryAccess, holder, supplier, bl, bl2, l, i); + } + + + @Unique + private SubLevelContainer sable$createPlotContainer() { + if (SablePlatform.INSTANCE.isWrappedLevel(this)) return null; + final SubLevelContainer container; + + if (!this.isClientSide) { + container = new ServerSubLevelContainer(this, SubLevelContainer.DEFAULT_LOG_SIZE_LENGTH, SubLevelContainer.DEFAULT_LOG_PLOT_SIZE, SubLevelContainer.DEFAULT_ORIGIN, SubLevelContainer.DEFAULT_ORIGIN); + } else { + container = new ClientSubLevelContainer(this, SubLevelContainer.DEFAULT_LOG_SIZE_LENGTH, SubLevelContainer.DEFAULT_LOG_PLOT_SIZE, SubLevelContainer.DEFAULT_ORIGIN, SubLevelContainer.DEFAULT_ORIGIN); + } + + Sable.defaultSubLevelContainerInitializer(this, container); + SableEventPublishPlatform.INSTANCE.onSubLevelContainerReady(this, container); + + return container; + } + + @Override + public SubLevelContainer sable$getPlotContainer() { + return this.sable$plotContainer; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.java new file mode 100644 index 0000000..1f6bcd7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Minecraft.class) +public class MinecraftMixin { + + @Shadow @Nullable public ClientLevel level; + + @Shadow private volatile boolean pause; + + @Inject(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/tutorial/Tutorial;onLookAt(Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/phys/HitResult;)V")) + private void sable$tickPlotContainer(final CallbackInfo ci) { + if (this.level != null) { + SableClient.NETWORK_EVENT_LOOP.runAllTasks(); + + if (!this.pause) { + ((SubLevelContainerHolder) this.level).sable$getPlotContainer().tick(); + } + } else { + SableClient.NETWORK_EVENT_LOOP.clear(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.java new file mode 100644 index 0000000..f6b2fd4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.network.protocol.Packet; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.players.PlayerList; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.List; + +/** + * Forces distance-based packet broadcasting to take into account sublevels + */ +@Mixin(PlayerList.class) +public class PlayerListMixin { + + @Shadow + @Final + private List players; + + /** + * @author RyanH + * @reason Overwrite to make distance checks take into account sublevels + */ + @Overwrite + public void broadcast(@Nullable final Player player, final double x, final double y, final double z, final double maxDistance, final ResourceKey resourceKey, final Packet packet) { + final ActiveSableCompanion helper = Sable.HELPER; + for (final ServerPlayer value : this.players) { + final Level level = value.level(); + if (value != player && level.dimension() == resourceKey) { + final double dist = helper.distanceSquaredWithSubLevels(level, value.position(), x, y, z); + + if (dist < maxDistance * maxDistance) { + value.connection.send(packet); + } + } + } + } +} + + diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.java new file mode 100644 index 0000000..08c2b71 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.java @@ -0,0 +1,165 @@ +package dev.ryanhcode.sable.mixin.plot; + +import com.mojang.datafixers.DataFixer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import net.minecraft.core.BlockPos; +import net.minecraft.core.registries.Registries; +import net.minecraft.server.level.*; +import net.minecraft.server.level.progress.ChunkProgressListener; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.biome.Biomes; +import net.minecraft.world.level.chunk.*; +import net.minecraft.world.level.chunk.status.ChunkStatus; +import net.minecraft.world.level.entity.ChunkStatusUpdateListener; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplateManager; +import net.minecraft.world.level.storage.LevelStorageSource; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; +import java.util.function.Consumer; +import java.util.function.Supplier; + +/** + * Makes the chunk access methods in server chunk caches use the plot system. + */ +@Mixin(ServerChunkCache.class) +public class ServerChunkCacheMixin { + + @Shadow + @Final + public ChunkMap chunkMap; + @Shadow + @Final + private ServerLevel level; + @Unique + private EmptyLevelChunk sable$emptyChunk; + + @Inject(method = "", at = @At("RETURN")) + public void init(final ServerLevel serverLevel, final LevelStorageSource.LevelStorageAccess levelStorageAccess, final DataFixer dataFixer, final StructureTemplateManager structureTemplateManager, final Executor executor, final ChunkGenerator chunkGenerator, final int i, final int j, final boolean bl, final ChunkProgressListener chunkProgressListener, final ChunkStatusUpdateListener chunkStatusUpdateListener, final Supplier supplier, final CallbackInfo ci) { + this.sable$emptyChunk = new EmptyLevelChunk(serverLevel, new ChunkPos(0, 0), serverLevel.registryAccess().registryOrThrow(Registries.BIOME).getHolderOrThrow(Biomes.PLAINS)); + } + + @Unique + private @NotNull SubLevelContainer sable$getPlotContainer() { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container == null) { + throw new IllegalStateException("Plot container not found in level"); + } + return container; + } + + @Inject(method = "getChunkNow", at = @At("HEAD"), cancellable = true) + private void getChunkNow(final int x, final int z, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(x, z)) { + final LevelChunk chunk = container.getChunk(new ChunkPos(x, z)); + + cir.setReturnValue(chunk); + } + } + + @Inject(method = "getChunkFutureMainThread", at = @At("HEAD"), cancellable = true) + private void getChunkFutureMainThread(final int x, final int z, final ChunkStatus chunkStatus, final boolean bl, final CallbackInfoReturnable>> cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + if (container.inBounds(x, z)) { + final ChunkPos chunkPos = new ChunkPos(x, z); + final LevelChunk chunk = container.getChunk(chunkPos); + + if (chunk != null) { + cir.setReturnValue(CompletableFuture.completedFuture(ChunkResult.of(chunk))); + } else { + cir.setReturnValue(CompletableFuture.completedFuture(ChunkResult.of(this.sable$emptyChunk))); + } + } + } + + @Inject(method = "hasChunk", at = @At("HEAD"), cancellable = true) + private void hasChunk(final int x, final int z, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(x, z)) { + final ChunkAccess chunk = container.getChunk(new ChunkPos(x, z)); + + cir.setReturnValue(chunk != null); + } + } + + + @Inject(method = "getChunkForLighting", at = @At("HEAD"), cancellable = true) + private void getChunkForLighting(final int x, final int z, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(x, z)) { + final LevelChunk chunk = container.getChunk(new ChunkPos(x, z)); + + cir.setReturnValue(chunk); + } + } + + @Inject(method = "isPositionTicking", at = @At("HEAD"), cancellable = true) + private void isPositionTicking(final long pos, final CallbackInfoReturnable cir) { + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(ChunkPos.getX(pos), ChunkPos.getZ(pos))) { + final ChunkPos chunkPos = new ChunkPos(pos); + final LevelChunk chunk = container.getChunk(chunkPos); + + cir.setReturnValue(chunk != null); + } + } + + @Inject(method = "getFullChunk", at = @At("HEAD"), cancellable = true) + private void getFullChunk(final long pos, final Consumer consumer, final CallbackInfo ci) { + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(ChunkPos.getX(pos), ChunkPos.getZ(pos))) { + final ChunkPos chunkPos = new ChunkPos(pos); + final LevelChunk chunk = container.getChunk(chunkPos); + + if (chunk != null) { + consumer.accept(chunk); + } + + ci.cancel(); + } + } + + @Inject(method = "blockChanged", at = @At("HEAD"), cancellable = true) + private void blockChanged(final BlockPos blockPos, final CallbackInfo ci) { + final SubLevelContainer container = this.sable$getPlotContainer(); + + final ChunkPos pos = new ChunkPos(blockPos); + if (container.inBounds(pos)) { + final PlotChunkHolder holder = container.getChunkHolder(pos); + + if (holder == null) { + throw new UnsupportedOperationException("Cannot change blocks in nonexistent plot holder"); + } + + holder.blockChanged(blockPos); + ci.cancel(); + } + } + + @Inject(method = "getVisibleChunkIfPresent", at = @At("HEAD"), cancellable = true) + private void getVisibleChunkIfPresent(final long l, final CallbackInfoReturnable cir) { + final int x = ChunkPos.getX(l); + final int z = ChunkPos.getZ(l); + + final SubLevelContainer container = this.sable$getPlotContainer(); + if (container.inBounds(x, z)) { + final ChunkPos chunkPos = new ChunkPos(x, z); + final PlotChunkHolder holder = container.getChunkHolder(chunkPos); + + cir.setReturnValue(holder); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.java new file mode 100644 index 0000000..47f50d5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.java @@ -0,0 +1,121 @@ +package dev.ryanhcode.sable.mixin.plot; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.platform.SablePlatform; +import dev.ryanhcode.sable.sublevel.storage.SubLevelOccupancySavedData; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.network.chat.Component; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.ProgressListener; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.TickRateManager; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.chunk.ChunkSource; +import net.minecraft.world.level.dimension.DimensionType; +import net.minecraft.world.level.storage.WritableLevelData; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.BooleanSupplier; +import java.util.function.Supplier; + +/** + * Ticks the sub-level container stored in the {@link LevelsMixin} for server levels + */ +@Mixin(ServerLevel.class) +public abstract class ServerLevelMixin extends Level { + + protected ServerLevelMixin(final WritableLevelData writableLevelData, final ResourceKey resourceKey, final RegistryAccess registryAccess, final Holder holder, final Supplier supplier, final boolean bl, final boolean bl2, final long l, final int i) { + super(writableLevelData, resourceKey, registryAccess, holder, supplier, bl, bl2, l, i); + } + + @Shadow + public abstract TickRateManager tickRateManager(); + + @Shadow + public abstract ChunkSource getChunkSource(); + + @Inject(method = "", at = @At("TAIL")) + private void sable$init(final CallbackInfo ci) { + // Load occupancy data if it isn't already + if (!SablePlatform.INSTANCE.isWrappedLevel((ServerLevel) (Object) this)) { + SubLevelOccupancySavedData.getOrLoad((ServerLevel) (Object) this); + } + + final ServerSubLevelContainer container = (ServerSubLevelContainer) SubLevelContainer.getContainer(this); + if (container != null) { + container.initialize(); + } + } + + @Inject(method = "close", at = @At("TAIL")) + private void sable$close(final CallbackInfo ci) { + final ServerSubLevelContainer container = (ServerSubLevelContainer) SubLevelContainer.getContainer(this); + if (container != null) { + container.close(); + } + } + + + /** + * high up injection so we're before normal chunk saving + */ + @Inject(method = "save", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerLevel;saveLevelData()V", shift = At.Shift.BEFORE)) + public void sable$saveSubLevels(final ProgressListener progressListener, final boolean bl, final boolean bl2, final CallbackInfo ci) { + Sable.LOGGER.info("Saving sub-levels for level '{}'/{}", this, this.dimension().location()); + + final ServerLevel self = (ServerLevel) (Object) this; + if (progressListener != null) { + progressListener.progressStartNoAbort(Component.translatable("menu.savingSubLevels")); + } + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(self); + assert container != null : "No sub-level container"; + + final SubLevelHoldingChunkMap holdingChunkMap = container.getHoldingChunkMap(); + holdingChunkMap.saveAll(); + } + + @Inject(method = "tick(Ljava/util/function/BooleanSupplier;)V", at = @At("HEAD")) + private void sable$tickPlotContainer(final BooleanSupplier booleanSupplier, final CallbackInfo ci) { + final TickRateManager tickRateManager = this.tickRateManager(); + final boolean runNormally = tickRateManager.runsNormally(); + + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer((ServerLevel) (Object) this); + assert plotContainer != null : "SubLevelContainer is null when ticking"; + + if (runNormally) { + plotContainer.tick(); + } + } + + @Inject(method = "shouldTickBlocksAt", at = @At("HEAD"), cancellable = true) + private void sable$shouldTickBlocksAt(final long l, final CallbackInfoReturnable cir) { + final SubLevelContainer plotContainer = SubLevelContainer.getContainer((ServerLevel) (Object) this); + assert plotContainer != null; + + if (plotContainer.getPlot(new ChunkPos(l)) != null) { + cir.setReturnValue(true); + } + } + + @Inject(method = "isNaturalSpawningAllowed(Lnet/minecraft/world/level/ChunkPos;)Z", at = @At("HEAD"), cancellable = true) + private void sable$isNaturalSpawningAllowed(final ChunkPos chunkPos, final CallbackInfoReturnable cir) { + final SubLevelContainer plotContainer = SubLevelContainer.getContainer((ServerLevel) (Object) this); + assert plotContainer != null; + + if (plotContainer.getPlot(chunkPos) != null) { + cir.setReturnValue(true); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.java new file mode 100644 index 0000000..888e5bb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.mixin.plot.lighting; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.BlockAndTintGetter; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.level.lighting.LevelLightEngine; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(BlockAndTintGetter.class) +public interface BlockAndTintGetterMixin { + + @Shadow LevelLightEngine getLightEngine(); + + /** + * @author RyanH + * @reason Make brightness queries in plots use the plot light engine + */ + @Overwrite + default int getBrightness(final LightLayer lightLayer, final BlockPos blockPos) { + LevelLightEngine engine = this.getLightEngine(); + + if (this instanceof final SubLevelContainerHolder holder) { + final SubLevelContainer plotContainer = holder.sable$getPlotContainer(); + + if (plotContainer.getLevel() instanceof ServerLevel) { + final LevelPlot plot = plotContainer.getPlot(new ChunkPos(blockPos)); + + if (plot != null) { + engine = plot.getLightEngine(); + } + } + } + + return engine.getLayerListener(lightLayer).getLightValue(blockPos); + } + + /** + * @author RyanH + * @reason Make brightness queries in plots use the plot light engine + */ + @Overwrite + default int getRawBrightness(final BlockPos blockPos, final int i) { + LevelLightEngine engine = this.getLightEngine(); + + if (this instanceof final SubLevelContainerHolder holder) { + final SubLevelContainer plotContainer = holder.sable$getPlotContainer(); + + if (plotContainer.getLevel() instanceof ServerLevel) { + final LevelPlot plot = plotContainer.getPlot(new ChunkPos(blockPos)); + + if (plot != null) { + engine = plot.getLightEngine(); + } + } + } + + return engine.getRawBrightness(blockPos, i); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.java new file mode 100644 index 0000000..efc4ecb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.mixin.plot.lighting; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.multiplayer.ClientPacketListener; +import net.minecraft.network.protocol.game.ClientboundLevelChunkWithLightPacket; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ClientPacketListener.class) +public class ClientPacketListenerMixin { + + @WrapOperation(method = "handleLevelChunkWithLight", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/multiplayer/ClientLevel;queueLightUpdate(Ljava/lang/Runnable;)V")) + private void sable$queueLightData(final ClientLevel instance, final Runnable task, final Operation original, @Local(argsOnly = true) final ClientboundLevelChunkWithLightPacket packet) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(instance); + + if (container.inBounds(packet.getX(), packet.getZ())) { + task.run(); + instance.getLightEngine().runLightUpdates(); + return; + } + + original.call(instance, task); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.java new file mode 100644 index 0000000..50deb31 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.mixin.plot.lighting; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.chunk.ChunkSource; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.lighting.LevelLightEngine; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(LevelChunk.class) +public class LevelChunkMixin { + + @Shadow @Final private Level level; + + /** + * Return the plot light engine if we're in a plot + */ + @Redirect(method ="setBlockState", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/chunk/ChunkSource;getLightEngine()Lnet/minecraft/world/level/lighting/LevelLightEngine;")) + public LevelLightEngine sable$getLightEngine(final ChunkSource instance) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container != null && this.level instanceof ServerLevel) { + final LevelChunk chunk = (LevelChunk) (Object) this; + final LevelPlot plot = container.getPlot(chunk.getPos()); + + if (plot != null) { + return plot.getLightEngine(); + } + } + + return instance.getLightEngine(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.java new file mode 100644 index 0000000..3265582 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.mixin.plot.lighting; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import net.minecraft.client.renderer.chunk.RenderChunkRegion; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(RenderChunkRegion.class) +public class RenderChunkRegionMixin implements SubLevelContainerHolder { + + + @Shadow @Final protected Level level; + + @Override + public SubLevelContainer sable$getPlotContainer() { + return SubLevelContainer.getContainer(this.level); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.java new file mode 100644 index 0000000..e4ace63 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable.mixin.plot.serialization; + +import com.mojang.datafixers.DataFixer; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import net.minecraft.server.level.ChunkMap; +import net.minecraft.server.level.FullChunkStatus; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.progress.ChunkProgressListener; +import net.minecraft.util.thread.BlockableEventLoop; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.chunk.ChunkGenerator; +import net.minecraft.world.level.chunk.LightChunkGetter; +import net.minecraft.world.level.entity.ChunkStatusUpdateListener; +import net.minecraft.world.level.entity.Visibility; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplateManager; +import net.minecraft.world.level.storage.LevelStorageSource; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedDeque; +import java.util.concurrent.Executor; +import java.util.function.Supplier; + +@Mixin(ChunkMap.class) +public class ChunkMapMixin { + + @Mutable + @Shadow + @Final + private Queue unloadQueue; + + @Shadow + @Final + private ServerLevel level; + + @Inject(method = "", at = @At("TAIL")) + private void sable$init(final ServerLevel serverLevel, final LevelStorageSource.LevelStorageAccess levelStorageAccess, final DataFixer dataFixer, final StructureTemplateManager structureTemplateManager, final Executor executor, final BlockableEventLoop blockableEventLoop, final LightChunkGetter lightChunkGetter, final ChunkGenerator chunkGenerator, final ChunkProgressListener chunkProgressListener, final ChunkStatusUpdateListener chunkStatusUpdateListener, final Supplier supplier, final int i, final boolean bl, final CallbackInfo ci) { + this.unloadQueue = new ConcurrentLinkedDeque<>(); + } + + @Inject(method = "onFullChunkStatusChange", at = @At("TAIL")) + private void sable$onStatusChange(final ChunkPos chunkPos, final FullChunkStatus fullChunkStatus, final CallbackInfo ci) { + final ServerSubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null : "Sub-level container is null"; + + if (container.inBounds(chunkPos)) { + return; + } + + final SubLevelHoldingChunkMap holdingChunkMap = container.getHoldingChunkMap(); + holdingChunkMap.updateChunkStatus(chunkPos, Visibility.fromFullChunkStatus(fullChunkStatus) != Visibility.HIDDEN); + + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.java new file mode 100644 index 0000000..099f384 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.mixin.plot.serialization; + +import dev.ryanhcode.sable.mixinterface.plot.serialization.LevelChunkTicksExtension; +import net.minecraft.world.ticks.LevelChunkTicks; +import net.minecraft.world.ticks.SavedTick; +import net.minecraft.world.ticks.ScheduledTick; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.List; +import java.util.Set; + +@Mixin(LevelChunkTicks.class) +public class LevelChunkTicksMixin implements LevelChunkTicksExtension { + + @Shadow + private @Nullable List> pendingTicks; + + @Shadow + @Final + private Set> ticksPerPosition; + + @SuppressWarnings("unchecked") + @Override + public void sable$copy(final LevelChunkTicks ticks) { + this.pendingTicks = ((LevelChunkTicksMixin) (Object) ticks).pendingTicks; + for (final SavedTick savedTick : this.pendingTicks) { + this.ticksPerPosition.add(ScheduledTick.probe(savedTick.type(), savedTick.pos())); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/portal/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/portal/EntityMixin.java new file mode 100644 index 0000000..513edf2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/portal/EntityMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.mixin.portal; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.BlockUtil; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityDimensions; +import net.minecraft.world.entity.Pose; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.portal.PortalShape; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + public abstract Vec3 position(); + + @Shadow + public abstract EntityDimensions getDimensions(Pose pose); + + @Shadow + public abstract Pose getPose(); + + @Shadow + public abstract Level level(); + + /** + * @author RyanH + * @reason Going through portals on sub-levels + */ + @Overwrite + public Vec3 getRelativePortalPosition(final Direction.Axis axis, final BlockUtil.FoundRectangle foundRectangle) { + final SubLevel subLevel = Sable.HELPER.getContaining(this.level(), foundRectangle.minCorner); + Vec3 position = this.position(); + + if (subLevel != null) { + position = subLevel.logicalPose().transformPositionInverse(position); + } + + return PortalShape.getRelativePosition(foundRectangle, axis, position, this.getDimensions(this.getPose())); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.java new file mode 100644 index 0000000..a9182fd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.mixin.portal; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.block.NetherPortalBlock; +import net.minecraft.world.level.border.WorldBorder; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(NetherPortalBlock.class) +public class NetherPortalBlockMixin { + + @Redirect(method = "getPortalDestination", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/border/WorldBorder;clampToBounds(DDD)Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$getPortalDestination(final WorldBorder instance, + final double x, + final double y, + final double z, + @Local(argsOnly = true) final Entity entity, + @Local(ordinal = 0) final double multiplier) { + final Vec3 position = new Vec3(entity.getX(), entity.getY(), entity.getZ()); + + final Vec3 globalPos = Sable.HELPER.projectOutOfSubLevel(entity.level(), position); + + return instance.clampToBounds( + globalPos.x * multiplier, + globalPos.y * multiplier, + globalPos.z * multiplier + ); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.java new file mode 100644 index 0000000..6842e50 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.mixin.prevent_freezing; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.biome.Biome; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(Biome.class) +public class BiomeMixin { + + @WrapMethod(method = "shouldFreeze(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Z)Z") + public boolean sable$preventFreezing(final LevelReader levelReader, final BlockPos blockPos, final boolean bl, final Operation original) { + if (!original.call(levelReader, blockPos, bl)) { + return false; + } + + if (levelReader instanceof final Level level) { + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel parent = helper.getContaining(level, blockPos); + BlockPos projectedPos = blockPos; + if (parent != null) { //inverse project block pos + projectedPos = BlockPos.containing(parent.logicalPose().transformPosition(projectedPos.getCenter())); + } + final BoundingBox3d bb3d = new BoundingBox3d(projectedPos); + + final Iterable allIntersecting = helper.getAllIntersecting(level, bb3d); + for (final SubLevel subLevel : allIntersecting) { + if (subLevel == parent) { + continue; + } + + bb3d.set(projectedPos.getX(), projectedPos.getY(), projectedPos.getZ(), projectedPos.getX() + 1, projectedPos.getY() + 1, projectedPos.getZ() + 1); + bb3d.transformInverse(subLevel.logicalPose()); + if (BlockPos.betweenClosedStream(bb3d.toMojang()).anyMatch(p -> !level.getBlockState(p).canBeReplaced())) { + return false; + } + } + } + + return true; + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.java new file mode 100644 index 0000000..590f775 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.mixin.prevent_overgrowth; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.VineBlock; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(VineBlock.class) +public class VineBlockMixin { + + @WrapOperation(method = "randomTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerLevel;setBlock(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z"), require = 0) + public boolean stopSpreadBeyondSubLevel(final ServerLevel level, final BlockPos spreadPos, final BlockState blockState, final int flags, final Operation original, @Local(argsOnly = true) final BlockPos vinePos) { + final SubLevel subLevel = Sable.HELPER.getContaining(level, vinePos); + if (subLevel != null && !subLevel.getPlot().getBoundingBox().contains(spreadPos.getX(), spreadPos.getY(), spreadPos.getZ())) { + return true; + } + return original.call(level, spreadPos, blockState, flags); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/punching/ItemInvoker.java b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/ItemInvoker.java new file mode 100644 index 0000000..175ac27 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/ItemInvoker.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.mixin.punching; + +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.BlockHitResult; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(Item.class) +public interface ItemInvoker { + @Invoker("getPlayerPOVHitResult") + static BlockHitResult sable$getPlayerPOVHitResult(final Level level, final Player player, final ClipContext.Fluid fluid) { + throw new AssertionError(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.java new file mode 100644 index 0000000..009a7da --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.mixin.punching; + +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.network.client.ClientSubLevelPunchHelper; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.multiplayer.ClientPacketListener; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Minecraft.class) +public abstract class MinecraftMixin { + @Shadow + @Nullable + public LocalPlayer player; + + @Shadow + @Nullable + public ClientLevel level; + + @Shadow + @Nullable + public abstract ClientPacketListener getConnection(); + + @Inject(method = "startAttack", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;resetAttackStrengthTicker()V")) + private void tryPaddling(final CallbackInfoReturnable cir) { + if (!this.player.getMainHandItem().is(SableTags.PADDLES) || + this.player.getCooldowns().isOnCooldown(this.player.getMainHandItem().getItem())) { + return; + } + + final BlockHitResult hitResult = ItemInvoker.sable$getPlayerPOVHitResult(this.level, this.player, ClipContext.Fluid.ANY); + + if (hitResult.getType() == HitResult.Type.BLOCK) { + final FluidState state = this.level.getFluidState(hitResult.getBlockPos()); + if (!state.isEmpty()) { + ClientSubLevelPunchHelper.clientTryPunch(hitResult, this.level, false); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.java new file mode 100644 index 0000000..cfcbc2e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.mixin.punching; + +import dev.ryanhcode.sable.network.client.ClientSubLevelPunchHelper; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.MultiPlayerGameMode; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.BlockHitResult; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(MultiPlayerGameMode.class) +public class MultiPlayerGameModeMixin { + @Shadow + @Final + private Minecraft minecraft; + + @Inject(method = "startDestroyBlock", at = @At("HEAD")) + private void onBlockBreakStart(final BlockPos blockPos, final Direction direction, final CallbackInfoReturnable cir) { + assert this.minecraft.player != null; + + if (this.minecraft.hitResult instanceof final BlockHitResult blockHitResult) { + ClientSubLevelPunchHelper.clientTryPunch(blockHitResult, this.minecraft.level, true); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.java new file mode 100644 index 0000000..f2ec401 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.java @@ -0,0 +1,46 @@ +package dev.ryanhcode.sable.mixin.recoil; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.Direction; +import net.minecraft.core.Position; +import net.minecraft.core.dispenser.BlockSource; +import net.minecraft.core.dispenser.ProjectileDispenseBehavior; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.item.ItemStack; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Give projectile behavior on dispensers recoil + */ +@Mixin(ProjectileDispenseBehavior.class) +public class ProjectileDispenseBehaviorMixin { + + + @Inject(method = "execute", at = @At("TAIL")) + private void sable$applyRecoil(final BlockSource blockSource, + final ItemStack itemStack, + final CallbackInfoReturnable cir, + @Local final Position position, + @Local final Direction direction){ + final ServerLevel level = blockSource.level(); + final SubLevel subLevel = Sable.HELPER.getContaining(level, position); + + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + final Vector3d impulse = new Vector3d(direction.getStepX(), direction.getStepY(), direction.getStepZ()) + .mul(-1.5); + + RigidBodyHandle.of(serverSubLevel) + .applyImpulseAtPoint(JOMLConversion.toJOML(position), impulse); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.java new file mode 100644 index 0000000..6eb6020 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.java @@ -0,0 +1,183 @@ +package dev.ryanhcode.sable.mixin.respawn_point; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.mixinterface.respawn_point.ServerPlayerRespawnExtension; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundFreezePlayerPacket; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import it.unimi.dsi.fastutil.Pair; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; +import net.minecraft.resources.ResourceKey; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.ServerGamePacketListenerImpl; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Optional; +import java.util.UUID; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin implements ServerPlayerRespawnExtension { + + @Shadow + @Final + public MinecraftServer server; + @Shadow + public ServerGamePacketListenerImpl connection; + @Shadow + private @Nullable BlockPos respawnPosition; + @Shadow + private ResourceKey respawnDimension; + @Shadow + private float respawnAngle; + @Shadow + private boolean respawnForced; + @Unique + @Nullable + private UUID sable$respawnPoint = null; + @Unique + private Pair sable$queuedFreeze = null; + + @Shadow + public static Optional findRespawnAndUseSpawnBlock(final ServerLevel serverLevel, final BlockPos blockPos, final float f, final boolean bl, final boolean bl2) { + return null; + } + + @Shadow + public abstract ServerLevel serverLevel(); + + @Shadow + public abstract void sendSystemMessage(Component component); + + @Override + public @Nullable UUID sable$getRespawnPoint() { + return this.sable$respawnPoint; + } + + @Inject(method = "setRespawnPosition", at = @At("HEAD"), cancellable = true) + private void sable$setRespawnPosition(final ResourceKey resourceKey, @Nullable final BlockPos blockPos, final float f, final boolean bl, final boolean sendMessage, final CallbackInfo ci) { + final ServerLevel level = this.serverLevel(); + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad(level); + + if (this.sable$respawnPoint != null) { + data.removeTrackingPoint(this.sable$respawnPoint); + this.sable$respawnPoint = null; + } + + if (blockPos != null) { + final SubLevel trackingSubLevel = Sable.HELPER.getContaining(level, blockPos); + + if (trackingSubLevel instanceof final ServerSubLevel serverSubLevel) { + this.sable$respawnPoint = data.generateTrackingPoint(Vec3.atCenterOf(blockPos), serverSubLevel); + + if (this.sable$respawnPoint != null) { + final boolean theSame = blockPos.equals(this.respawnPosition) && resourceKey.equals(this.respawnDimension); + if (sendMessage && !theSame) { + this.sendSystemMessage(Component.translatable("block.minecraft.set_spawn")); + } + + this.respawnPosition = blockPos; + this.respawnDimension = resourceKey; + this.respawnAngle = f; + this.respawnForced = bl; + ci.cancel(); + } + } + } + } + + @Inject(method = "addAdditionalSaveData", at = @At("TAIL")) + private void sable$addRespawnPoint(final CompoundTag compoundTag, final CallbackInfo ci) { + if (this.sable$respawnPoint != null) { + compoundTag.putUUID("RespawnPoint", this.sable$respawnPoint); + } + } + + @Inject(method = "readAdditionalSaveData", at = @At("TAIL")) + private void sable$readRespawnPoint(final CompoundTag compoundTag, final CallbackInfo ci) { + if (compoundTag.hasUUID("RespawnPoint")) { + this.sable$respawnPoint = compoundTag.getUUID("RespawnPoint"); + } + } + + /** + * @author RyanH + * @reason Respawning on sub-levels + */ + @Overwrite + public void copyRespawnPosition(final ServerPlayer serverPlayer) { + if (serverPlayer.getRespawnPosition() != null) { + this.sable$respawnPoint = ((ServerPlayerRespawnExtension) serverPlayer).sable$getRespawnPoint(); + this.respawnPosition = serverPlayer.getRespawnPosition(); + this.respawnDimension = serverPlayer.getRespawnDimension(); + this.respawnAngle = serverPlayer.getRespawnAngle(); + this.respawnForced = serverPlayer.isRespawnForced(); + } else { + this.sable$respawnPoint = null; + this.respawnPosition = null; + this.respawnDimension = Level.OVERWORLD; + this.respawnAngle = 0.0F; + this.respawnForced = false; + } + } + + @Override + public void sable$takeQueuedFreezeFrom(final ServerPlayer oldPlayer) { + final ServerPlayerRespawnExtension extension = (ServerPlayerRespawnExtension) oldPlayer; + final Pair queuedFreeze = extension.sable$getQueuedFreeze(); + + if (queuedFreeze != null) { + ((PlayerFreezeExtension) this).sable$freezeTo(queuedFreeze.first(), queuedFreeze.second()); + this.connection.send(new ClientboundCustomPayloadPacket(new ClientboundFreezePlayerPacket(queuedFreeze.first(), queuedFreeze.second()))); + } + } + + @Override + public @Nullable Pair sable$getQueuedFreeze() { + return this.sable$queuedFreeze; + } + + /** + * @author RyanH + * @reason Respawning on sub-levels + */ + @Redirect(method = "findRespawnPositionAndUseSpawnBlock", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerPlayer;findRespawnAndUseSpawnBlock(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional;")) + private Optional sable$findRespawnPosition(final ServerLevel level, final BlockPos blockPos, final float f1, final boolean b1, final boolean b2) { + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad(level); + + if (this.sable$respawnPoint != null) { + final SubLevelTrackingPointSavedData.TakenLoginPoint point = data.take(this.sable$respawnPoint, false); + + if (point == null) { + this.sable$respawnPoint = null; + return Optional.empty(); + } + + // TODO: do validation here + + if (point.subLevelId() != null) { + this.sable$queuedFreeze = Pair.of(point.subLevelId(), point.localAnchor()); + } + + return Optional.of(new ServerPlayer.RespawnPosAngle(JOMLConversion.toMojang(point.position()), f1)); + } + + return findRespawnAndUseSpawnBlock(level, blockPos, f1, b1, b2); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.java new file mode 100644 index 0000000..e28cdb4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.mixin.respawn_point.sleeping; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity { + + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * @author RyanH + * @reason Sleeping on sub-levels + */ + @Overwrite + private void setPosToBed(final BlockPos blockPos) { + final Vector3d coords = JOMLConversion.upFromBottomCenterOf(blockPos, 0.6875); + this.setPos(JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(this.level(), coords))); + } + + @SuppressWarnings("UnresolvedMixinReference") + @Redirect(method = {"method_18404", "lambda$stopSleeping$12"}, at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;setPos(DDD)V"), expect = 1, require = 1) + private void sable$stopSleeping(final LivingEntity instance, final double x, final double y, final double z) { + final double halfHeight = this.getBoundingBox().getYsize() / 2.0; + + final Vector3d coords = new Vector3d(x, y + halfHeight, z); + Sable.HELPER.projectOutOfSubLevel(this.level(), coords).sub(0.0, halfHeight, 0.0); + instance.setPos(JOMLConversion.toMojang(coords)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.java new file mode 100644 index 0000000..6a10393 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.mixin.respawn_point.sleeping; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.entity.LivingEntityRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.LivingEntity; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Optional; + +@Mixin(LivingEntityRenderer.class) +public class LivingEntityRendererMixin { + + @Inject(method = "render(Lnet/minecraft/world/entity/LivingEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;getBedOrientation()Lnet/minecraft/core/Direction;")) + private void sable$setupRotations(final LivingEntity livingEntity, final float f, final float g, final PoseStack poseStack, final MultiBufferSource multiBufferSource, final int i, final CallbackInfo ci) { + if (livingEntity.getBedOrientation() == null) { + return; + } + + final Optional sleepingPos = livingEntity.getSleepingPos(); + + if (sleepingPos.isPresent()) { + final BlockPos blockPos = sleepingPos.get(); + + final SubLevel subLevel = Sable.HELPER.getContaining(livingEntity.level(), blockPos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + poseStack.mulPose(new Quaternionf(clientSubLevel.renderPose().orientation())); + } + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.java new file mode 100644 index 0000000..60dc32a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.mixin.respawn_point.sleeping; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin extends Entity { + + public ServerPlayerMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * @author RyanH + * @reason Sleeping on sub-levels + */ + @Overwrite + private boolean isReachableBedBlock(final BlockPos blockPos) { + final Vec3 bedPos = Vec3.atBottomCenterOf(blockPos); + Vec3 pos = this.position(); + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level(), blockPos); + + if (subLevel != null) { + pos = subLevel.logicalPose().transformPositionInverse(pos); + } + + return Math.abs(pos.x - bedPos.x()) <= 3.0 && Math.abs(pos.y - bedPos.y()) <= 2.0 && Math.abs(pos.z - bedPos.z()) <= 3.0; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.java new file mode 100644 index 0000000..25bb103 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.mixin.sculk_vibrations; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.gameevent.EuclideanGameEventListenerRegistry; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(EuclideanGameEventListenerRegistry.class) +public class EuclideanGameEventListenerRegistryMixin { + + @WrapOperation(method = "getPostableListenerPosition", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;distSqr(Lnet/minecraft/core/Vec3i;)D")) + private static double replaceDistance(final BlockPos from, final Vec3i to, final Operation original, @Local(argsOnly = true) final ServerLevel level) { + return Sable.HELPER.distanceSquaredWithSubLevels(level, JOMLConversion.atLowerCornerOf(from), JOMLConversion.atLowerCornerOf(to)); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.java new file mode 100644 index 0000000..5879161 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.java @@ -0,0 +1,70 @@ +package dev.ryanhcode.sable.mixin.sculk_vibrations; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalIntRef; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; +import net.minecraft.core.SectionPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.gameevent.GameEvent; +import net.minecraft.world.level.gameevent.GameEventDispatcher; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(GameEventDispatcher.class) +public class GameEventDispatcherMixin { + + @Final + @Shadow + private ServerLevel level; + + @Inject(method = "post", at = @At(value = "NEW", target = "java/util/ArrayList")) + private void sable$useBBIntersection(final Holder gameEvent, final Vec3 pos, final GameEvent.Context context, final CallbackInfo ci, @Share("bb") final LocalRef bbRef, + @Local(ordinal = 1) final LocalIntRef x1, @Local(ordinal = 2) final LocalIntRef y1, @Local(ordinal = 3) final LocalIntRef z1, + @Local(ordinal = 4) final LocalIntRef x2, @Local(ordinal = 5) final LocalIntRef y2, @Local(ordinal = 6) final LocalIntRef z2) { + final BoundingBox3ic bb = bbRef.get(); + if (bb != null) { + x1.set(SectionPos.blockToSectionCoord(bb.minX())); + y1.set(SectionPos.blockToSectionCoord(bb.minY())); + z1.set(SectionPos.blockToSectionCoord(bb.minZ())); + x2.set(SectionPos.blockToSectionCoord(bb.maxX())); + y2.set(SectionPos.blockToSectionCoord(bb.maxY())); + z2.set(SectionPos.blockToSectionCoord(bb.maxZ())); + } + } + + @WrapMethod(method = "post") + private void sable$visitShipListeners(final Holder gameEvent, final Vec3 pos, final GameEvent.Context context, final Operation original, @Share("bb") final LocalRef bbRef) { + final Vec3 globalPos = Sable.HELPER.projectOutOfSubLevel(this.level, pos); + original.call(gameEvent, globalPos, context); + if (bbRef.get() != null) { + return; + } + + // For the first non-nested call, propagate the call to sub-levels + final int radius = gameEvent.value().notificationRadius(); + final BoundingBox3dc sourceBB = new BoundingBox3d(BlockPos.containing(globalPos)).expand(radius); + final BoundingBox3i intersection = new BoundingBox3i(); + + Sable.HELPER.getAllIntersecting(this.level, sourceBB).forEach(subLevel -> { + final BoundingBox3d plotBB = new BoundingBox3d(subLevel.getPlot().getBoundingBox()); + final BoundingBox3dc sourceInPlotBB = sourceBB.transformInverse(subLevel.logicalPose(), new BoundingBox3d()); + bbRef.set(intersection.set(plotBB.intersect(sourceInPlotBB))); + original.call(gameEvent, globalPos, context); + }); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.java new file mode 100644 index 0000000..7b2adcc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.mixin.sculk_vibrations; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.Holder; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.gameevent.GameEvent; +import net.minecraft.world.level.gameevent.vibrations.VibrationSystem; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(VibrationSystem.Listener.class) +public class VibrationSystemListenerMixin { + + @WrapMethod(method = "scheduleVibration") + private void sable$useGlobalPos(final ServerLevel level, final VibrationSystem.Data data, final Holder gameEvent, final GameEvent.Context context, final Vec3 pos, final Vec3 sensorPos, final Operation original) { + original.call(level, data, gameEvent, context, Sable.HELPER.projectOutOfSubLevel(level, pos), Sable.HELPER.projectOutOfSubLevel(level, sensorPos)); + } + + @WrapMethod(method = "isOccluded") + private static boolean sable$occlusionChecks(final Level level, final Vec3 pos1, final Vec3 pos2, final Operation original) { + final ActiveSableCompanion helper = Sable.HELPER; + + // Check occlusion in global space + final Vec3 global1 = helper.projectOutOfSubLevel(level, pos1); + final Vec3 global2 = helper.projectOutOfSubLevel(level, pos2); + if (original.call(level, global1, global2)) return true; + + // Check if in same sub-level + final SubLevel l1 = helper.getContaining(level, pos1); + final SubLevel l2 = helper.getContaining(level, pos2); + if (l1 == l2) { + // Was a global space interaction, already checked + if (l1 == null) { + return false; + } + return original.call(level, pos1, pos2); + } + + // Different sub-levels, check event transformed to user and vice versa + if (l2 != null && original.call(level, l2.logicalPose().transformPositionInverse(global1), pos2)) { + return true; + } + return l1 != null && original.call(level, l1.logicalPose().transformPositionInverse(global2), pos2); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.java new file mode 100644 index 0000000..1f17421 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.java @@ -0,0 +1,37 @@ +package dev.ryanhcode.sable.mixin.sculk_vibrations; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.gameevent.BlockPositionSource; +import net.minecraft.world.level.gameevent.PositionSource; +import net.minecraft.world.level.gameevent.vibrations.VibrationInfo; +import net.minecraft.world.level.gameevent.vibrations.VibrationSystem; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.Optional; + +@Mixin(VibrationSystem.Ticker.class) +public interface VibrationSystemTickerMixin { + + @WrapOperation(method = "receiveVibration", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;pos()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$useGlobalPos(final VibrationInfo instance, final Operation original, @Local(argsOnly = true) final ServerLevel level) { + return Sable.HELPER.projectOutOfSubLevel(level, original.call(instance)); + } + + @WrapOperation(method = {"receiveVibration", "lambda$trySelectAndScheduleVibration$0", "method_51408", "tryReloadVibrationParticle"}, expect = 3, require = 3, + at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;getPositionSource()Lnet/minecraft/world/level/gameevent/PositionSource;")) + private static PositionSource sable$useGlobalDestPos(final VibrationSystem.User instance, final Operation original, @Local(argsOnly = true) final ServerLevel level) { + final PositionSource origSource = original.call(instance); + final Optional optPos = origSource.getPosition(level); + if (optPos.isPresent()) { + return new BlockPositionSource(BlockPos.containing(Sable.HELPER.projectOutOfSubLevel(level, optPos.get()))); + } + return origSource; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.java new file mode 100644 index 0000000..a6cfcc0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.java @@ -0,0 +1,59 @@ +package dev.ryanhcode.sable.mixin.sign_interaction; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.SignBlock; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.entity.SignBlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +/** + * Fixes the method that determines if the player interacts with the front or back of a sign to take sub-levels into account. + */ +@Mixin(SignBlockEntity.class) +public abstract class SignBlockEntityMixin extends BlockEntity { + + public SignBlockEntityMixin(final BlockEntityType blockEntityType, final BlockPos blockPos, final BlockState blockState) { + super(blockEntityType, blockPos, blockState); + } + + /** + * @author RyanH + * @reason Overwrite to fix sign face interaction + */ + @Overwrite + public boolean isFacingFrontText(final Player player) { + final BlockState state = this.getBlockState(); + final Block block = state.getBlock(); + if (block instanceof final SignBlock signBlock) { + final ActiveSableCompanion helper = Sable.HELPER; + final BlockPos pos = this.getBlockPos(); + final Vector3d signCenterPos = JOMLConversion.toJOML(signBlock.getSignHitboxCenterPosition(state).add(pos.getX(), pos.getY(), pos.getZ())); + final Vector3d center = helper.projectOutOfSubLevel(this.level, signCenterPos); + final Vector3d deltaDir = JOMLConversion.toJOML(player.position()).sub(center).normalize(); + + final float signYRot = signBlock.getYRotationDegrees(state); + final Vector3d signNormal = new Vector3d(0.0, 0.0, 1.0).rotateY(Math.toRadians(-signYRot)); + + final SubLevel subLevel = helper.getContaining(this.level, pos); + + if (subLevel != null) { + subLevel.logicalPose().transformNormal(signNormal); + } + + return signNormal.dot(deltaDir.x, deltaDir.y, deltaDir.z) > 0.0; + } else { + return false; + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.java new file mode 100644 index 0000000..b9568d9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.mixin.sky_light_shadow; + +import net.minecraft.client.renderer.LevelRenderer; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + // TODO: neo dies +/* + @Inject(method = "renderSectionLayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/ShaderInstance;apply()V", shift = At.Shift.AFTER)) + private void sable$onRenderSectionLayer(final RenderType renderType, final double d, final double e, final double f, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci, @Local final ShaderInstance shader) { + SableSkyLightShadows.bindShadowMapTexture(shader); + } + + @WrapOperation(method = "renderSectionLayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;isEmpty(Lnet/minecraft/client/renderer/RenderType;)Z")) + private boolean sable$wrapRenderSectionLayer(final SectionRenderDispatcher.CompiledSection instance, final RenderType renderType, final Operation original) { + return SableSkyLightShadows.renderingShadowMap() || original.call(instance, renderType); + } + + *//** + * Don't render entities if we're rendering the shadow map + *//* + @WrapOperation(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;shouldRender(Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z")) + private boolean sable$wrapRenderLevel(final EntityRenderDispatcher instance, final Entity entity, final Frustum frustum, final double d, final double e, final double f, final Operation original) { + return !SableSkyLightShadows.renderingShadowMap() && original.call(instance, entity, frustum, d, e, f); + } + + @WrapWithCondition(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/particle/ParticleEngine;render(Lnet/minecraft/client/renderer/LightTexture;Lnet/minecraft/client/Camera;F)V")) + private boolean sable$wrapRenderParticles(final ParticleEngine instance, final LightTexture lightTexture, final Camera camera, final float f) { + return !SableSkyLightShadows.renderingShadowMap(); + }*/ +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.java new file mode 100644 index 0000000..f17ef5b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.java @@ -0,0 +1,75 @@ +package dev.ryanhcode.sable.mixin.stop_rain; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.LevelAccelerator; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelReader; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.Heightmap; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(LevelRenderer.class) +public class LevelRenderMixin { + + @Unique + private BlockPos.MutableBlockPos sable$tempPos; + + @Unique + private static int sable$getSubLevelHeight(final Level level, final int pX, final int yOffset, final int pZ) { + final LevelAccelerator accelerator = new LevelAccelerator(level); + + final BlockPos.MutableBlockPos mutableBlockPos = new BlockPos.MutableBlockPos(); + final Vector3d checkingPos = new Vector3d(); + final Vector3d localUp = new Vector3d(0, 1, 0); + + final BoundingBox3dc minMaxBB = new BoundingBox3d(pX, level.getMinBuildHeight(), pZ, pX + 1, level.getMaxBuildHeight(), pZ + 1); + int maxHeight = Integer.MIN_VALUE; + for (final SubLevel subLevel : Sable.HELPER.getAllIntersecting(level, minMaxBB)) { + subLevel.logicalPose().transformPositionInverse(checkingPos.set(pX + 0.5f, subLevel.boundingBox().maxY(), pZ + 0.5f)); + subLevel.logicalPose().transformNormalInverse(localUp.set(0, 1, 0)); + + final double checkingDistance = subLevel.boundingBox().maxY() - subLevel.boundingBox().minY(); + for (int i = 0; i < checkingDistance; i++) { + checkingPos.sub(localUp); + + final BlockState gatheredState = accelerator.getBlockState(mutableBlockPos.set(checkingPos.x, checkingPos.y, checkingPos.z)); + if (gatheredState.blocksMotion() || !gatheredState.getFluidState().isEmpty()) { + subLevel.logicalPose().transformPosition(checkingPos); + maxHeight = (int) Math.max(maxHeight, checkingPos.y + yOffset); + break; + } + } + } + + return maxHeight; + } + + @WrapOperation(method = "renderSnowAndRain", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getHeight(Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I")) + public int sable$preventRainThoughSubLevel(final Level instance, final Heightmap.Types types, final int i, final int j, final Operation original) { + return Math.max(original.call(instance, types, i, j), sable$getSubLevelHeight(instance, i, 1, j)); + } + + @WrapOperation(method = "tickRain", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/LevelReader;getHeightmapPos(Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos;")) + public BlockPos sable$stopSplashParticles(final LevelReader instance, final Heightmap.Types types, final BlockPos blockPos, final Operation original) { + int height = original.call(instance, types, blockPos).getY(); + if (instance instanceof final Level level) { + height = Math.max(height, sable$getSubLevelHeight(level, blockPos.getX(), 2, blockPos.getZ())); + } + + return new BlockPos(blockPos.getX(), height, blockPos.getZ()); + } + + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.java new file mode 100644 index 0000000..c9b9bd9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.mixin.sublevel_render; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.BlockEntityRenderDispatcherExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockAndTintGetter; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(BlockEntityRenderDispatcher.class) +public abstract class BlockEntityRenderDispatcherMixin implements BlockEntityRenderDispatcherExtension { + + @Unique + private Vec3 sable$cameraPos; + + @Redirect(method = "setupAndRender", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;getLightColor(Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I")) + private static int sable$getLightColor(final BlockAndTintGetter blockAndTintGetter, final BlockPos blockPos) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(blockPos); + + final int existingColor = LevelRenderer.getLightColor(blockAndTintGetter, blockPos); + return subLevel != null ? subLevel.scaleLightColor(existingColor) : existingColor; + } + + @ModifyArg(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;shouldRender(Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/phys/Vec3;)Z"), index = 1) + public Vec3 sable$moveCameraPosForCheck(final Vec3 pCameraPos) { + return this.sable$cameraPos != null ? this.sable$cameraPos : pCameraPos; + } + + @Override + public void sable$setCameraPosition(@Nullable final Vec3 pos) { + this.sable$cameraPos = pos; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.java new file mode 100644 index 0000000..b22388f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.mixin.sublevel_render; + +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Shadow + @Nullable + private ClientLevel level; + + @Inject(method = "allChanged", at = @At("TAIL")) + private void sable$allChanged(final CallbackInfo ci) { + if (this.level == null) { + return; + } + + SubLevelRenderDispatcher.get().rebuild(((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels()); + } + + @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/DimensionSpecialEffects;constantAmbientLight()Z", ordinal = 0, shift = At.Shift.BEFORE)) + private void sable$renderSingleBlockSubLevels(final DeltaTracker deltaTracker, final boolean bl, final Camera camera, final GameRenderer gameRenderer, final LightTexture lightTexture, final Matrix4f modelView, final Matrix4f projection, final CallbackInfo ci) { + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + final Vec3 cameraPosition = camera.getPosition(); + SubLevelRenderDispatcher.get().renderAfterSections(sublevels, cameraPosition.x, cameraPosition.y, cameraPosition.z, modelView, projection, deltaTracker.getGameTimeDeltaPartialTick(false)); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.java new file mode 100644 index 0000000..ac7a9c4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.mixin.sublevel_render; + +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +import java.util.Set; + +@Mixin(SectionRenderDispatcher.RenderSection.class) +public interface RenderSectionAccessor { + + @Accessor + Set getGlobalBlockEntities(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.java new file mode 100644 index 0000000..a64f980 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.java @@ -0,0 +1,75 @@ +package dev.ryanhcode.sable.mixin.sublevel_render; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.sublevel_render.vanilla.RenderSectionExtension; +import foundry.veil.api.client.render.VeilRenderSystem; +import it.unimi.dsi.fastutil.objects.ObjectArraySet; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Set; + +/** + * Fixes distance check used for priority and chunk building to take sublevels into account + */ +@Mixin(SectionRenderDispatcher.RenderSection.class) +public class RenderSectionMixin implements RenderSectionExtension { + + @Shadow + private AABB bb; + @Shadow + private boolean dirty; + + @Unique + private Set sable$listeners; + @Unique + private boolean sable$listening = true; + + @Inject(method = "setDirty", at = @At("HEAD")) + public void setDirty(final boolean playerChanged, final CallbackInfo ci) { + if (this.sable$listening && !this.dirty && this.sable$listeners != null) { + VeilRenderSystem.renderThreadExecutor().execute(() -> { + for (final DirtyListener listener : this.sable$listeners) { + listener.markDirty((SectionRenderDispatcher.RenderSection) (Object) this); + } + }); + } + } + + /** + * @author RyanH + * @reason Fixes distance check to take sublevels into account + */ + @Overwrite + public double getDistToPlayerSqr() { + final ClientLevel level = Minecraft.getInstance().level; + final Camera camera = Minecraft.getInstance().gameRenderer.getMainCamera(); + final double x = this.bb.minX + 8.0; + final double y = this.bb.minY + 8.0; + final double z = this.bb.minZ + 8.0; + return Sable.HELPER.distanceSquaredWithSubLevels(level, camera.getPosition(), x, y, z); + } + + @Override + public void sable$addDirtyListener(final DirtyListener listener) { + if (this.sable$listeners == null) { + this.sable$listeners = new ObjectArraySet<>(); + } + this.sable$listeners.add(listener); + } + + @Override + public void sable$setListening(final boolean listening) { + this.sable$listening = listening; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.java new file mode 100644 index 0000000..95944a7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.java @@ -0,0 +1,102 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.block_entity_render; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinhelpers.sublevel_render.vanilla.VanillaSubLevelBlockEntityRenderer; +import dev.ryanhcode.sable.mixinterface.BlockEntityRenderDispatcherExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.*; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.BlockDestructionProgress; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.joml.Vector3f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.SortedSet; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Shadow + @Nullable + private ClientLevel level; + + @Shadow + @Final + private BlockEntityRenderDispatcher blockEntityRenderDispatcher; + + @Shadow + @Final + private Long2ObjectMap> destructionProgress; + + @Unique + private VanillaSubLevelBlockEntityRenderer sable$subLevelBlockEntityRenderer; + + @Inject(method = "", at = @At("TAIL")) + public void init(final Minecraft minecraft, final EntityRenderDispatcher entityRenderDispatcher, final BlockEntityRenderDispatcher blockEntityRenderDispatcher, final RenderBuffers renderBuffers, final CallbackInfo ci) { + this.sable$subLevelBlockEntityRenderer = new VanillaSubLevelBlockEntityRenderer(blockEntityRenderDispatcher, renderBuffers, this.destructionProgress); + } + + @WrapOperation(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;render(Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V", ordinal = 1)) + public void sable$renderBlockEntities(final BlockEntityRenderDispatcher instance, final E blockEntity, final float pt, final PoseStack poseStack, final MultiBufferSource multiBufferSource, final Operation original, @Local final Camera camera) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(blockEntity); + if (subLevel == null) { + original.call(instance, blockEntity, pt, poseStack, multiBufferSource); + return; + } + + final BlockEntityRenderDispatcherExtension extension = (BlockEntityRenderDispatcherExtension) this.blockEntityRenderDispatcher; + final Vec3 cameraPosition = camera.getPosition(); + final BlockPos blockPos = blockEntity.getBlockPos(); + + poseStack.pushPose(); + poseStack.translate(-(blockPos.getX() - cameraPosition.x()), -(blockPos.getY() - cameraPosition.y()), -(blockPos.getZ() - cameraPosition.z())); //undo translation + + final Vector3f sableCameraPosition = new Vector3f(); + final SubLevelRenderData subLevelRenderData = subLevel.getRenderData(); + + final Vector3dc invChunkOffset = subLevel.renderPose().rotationPoint(); + final Matrix4f transformation = subLevelRenderData.getTransformation(cameraPosition.x, cameraPosition.y, cameraPosition.z); + + transformation.invert(new Matrix4f()).transformPosition(sableCameraPosition.zero()); + extension.sable$setCameraPosition(new Vec3(sableCameraPosition.x + invChunkOffset.x(), sableCameraPosition.y + invChunkOffset.y(), sableCameraPosition.z + invChunkOffset.z())); + + poseStack.mulPose(transformation); + this.sable$subLevelBlockEntityRenderer.renderSingleBE(blockEntity, poseStack, pt, invChunkOffset.x(), invChunkOffset.y(), invChunkOffset.z()); + + poseStack.popPose(); + extension.sable$setCameraPosition(null); + } + + @Inject(method = "renderLevel", at = @At(value = "FIELD", target = "Lnet/minecraft/client/renderer/LevelRenderer;globalBlockEntities:Ljava/util/Set;", shift = At.Shift.BEFORE, ordinal = 0)) + public void sable$preRenderBEs(final DeltaTracker deltaTracker, final boolean bl, final Camera camera, final GameRenderer gameRenderer, final LightTexture lightTexture, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci) { + final List subLevels = SubLevelContainer.getContainer(this.level).getAllSubLevels(); + final Vec3 cameraPosition = camera.getPosition(); + SubLevelRenderDispatcher.get().renderBlockEntities(subLevels, this.sable$subLevelBlockEntityRenderer, cameraPosition.x, cameraPosition.y, cameraPosition.z, deltaTracker.getGameTimeDeltaPartialTick(false)); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.java new file mode 100644 index 0000000..9b7f37f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.fancy; + +import com.mojang.blaze3d.shaders.Program; +import dev.ryanhcode.sable.mixinterface.sublevel_render.fancy.ProgramExtension; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +import static org.lwjgl.opengl.GL20C.glGetShaderSource; + +@Mixin(Program.class) +public class ProgramMixin implements ProgramExtension { + + @Shadow + private int id; + + @Override + public String sable$getSource() { + return glGetShaderSource(this.id); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.java new file mode 100644 index 0000000..a8da06c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.impl.sodium; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import net.caffeinemc.mods.sodium.client.render.SodiumWorldRenderer; +import net.caffeinemc.mods.sodium.client.world.LevelRendererExtension; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(value = LevelRenderer.class, priority = 1002) +public class LevelRendererMixin { + + @Shadow + @Nullable + private ClientLevel level; + + /** + * @author RyanH + * @reason Sable sodium compatibility + */ + @Overwrite + public boolean isSectionCompiled(final BlockPos pos) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container != null && container.inBounds(pos)) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, pos); + + if (subLevel == null) { + return false; + } else { + final SubLevelRenderData renderData = subLevel.getRenderData(); + final SectionPos sectionPos = SectionPos.of(pos); + return renderData.isSectionCompiled(sectionPos.x(), sectionPos.y(), sectionPos.z()); + } + } + + final SodiumWorldRenderer sodiumRenderer = ((LevelRendererExtension) this).sodium$getWorldRenderer(); + + return sodiumRenderer.isSectionReady(pos.getX() >> 4, pos.getY() >> 4, pos.getZ() >> 4); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.java new file mode 100644 index 0000000..6fd8a45 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.java @@ -0,0 +1,299 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.impl.sodium; + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.SodiumWorldRendererExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SodiumSubLevelRenderDispatcher; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import dev.ryanhcode.sable.sublevel.render.sodium.SodiumSubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.sodium.SubLevelRenderSectionManager; +import foundry.veil.api.client.render.VeilRenderBridge; +import foundry.veil.api.client.render.rendertype.VeilRenderType; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import net.caffeinemc.mods.sodium.client.SodiumClientMod; +import net.caffeinemc.mods.sodium.client.gl.device.CommandList; +import net.caffeinemc.mods.sodium.client.gl.device.RenderDevice; +import net.caffeinemc.mods.sodium.client.render.SodiumWorldRenderer; +import net.caffeinemc.mods.sodium.client.render.chunk.ChunkRenderMatrices; +import net.caffeinemc.mods.sodium.client.render.chunk.RenderSectionManager; +import net.caffeinemc.mods.sodium.client.render.viewport.Viewport; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.phys.Vec3; +import org.joml.Matrix4f; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; +import java.util.Map; +import java.util.Objects; + +@Mixin(value = SodiumWorldRenderer.class, remap = false) +public abstract class SodiumWorldRendererMixin implements SodiumWorldRendererExtension { + + @Unique + private final Object2ObjectMap sable$subLevelSectionManagers = new Object2ObjectOpenHashMap<>(); + @Shadow + private RenderSectionManager renderSectionManager; + @Shadow + private ClientLevel level; + @Shadow + @Final + private Minecraft client; + + + @Inject(method = "unloadLevel", at = @At("HEAD")) + private void sable$onUnloadLevel(final CallbackInfo ci) { + for (final RenderSectionManager manager : this.sable$subLevelSectionManagers.values()) { + manager.destroy(); + } + + this.sable$subLevelSectionManagers.clear(); + } + + @Inject(method = "scheduleTerrainUpdate", at = @At("HEAD")) + private void sable$onScheduleTerrainUpdate(final CallbackInfo ci) { + for (final RenderSectionManager manager : this.sable$subLevelSectionManagers.values()) { + manager.markGraphDirty(); + } + } + + /** + * @author RyanH + * @reason Account for sub-levels in the visible chunk count + */ + @Overwrite + public int getVisibleChunkCount() { + int sum = this.renderSectionManager.getVisibleChunkCount(); + + for (final RenderSectionManager manager : this.sable$subLevelSectionManagers.values()) { + sum += manager.getVisibleChunkCount(); + } + + return sum; + } + + @Inject(method = "isTerrainRenderComplete", at = @At("HEAD"), cancellable = true) + public void sable$isTerrainRenderComplete(final CallbackInfoReturnable cir) { + if (cir.getReturnValueZ()) { + for (final RenderSectionManager sectionManager : this.sable$subLevelSectionManagers.values()) { + if (!sectionManager.getBuilder().isBuildQueueEmpty()) { + cir.setReturnValue(false); + break; + } + } + } + } + + + @Inject(method = "setupTerrain", at = @At(value = "INVOKE", target = "Lnet/caffeinemc/mods/sodium/client/render/chunk/RenderSectionManager;markGraphDirty()V")) + public void sable$markGraphDirty(final Camera camera, final Viewport viewport, final boolean spectator, final boolean updateChunksImmediately, final CallbackInfo ci) { +// for (ClientSubLevel source : this.sable$subLevelSectionManagers.values()) { +// source.doFrustumUpdate(camera, frustum); +// } + + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + final Vec3 cameraPosition = camera.getPosition(); + final Minecraft minecraft = Minecraft.getInstance(); + final Frustum frustum = minecraft.levelRenderer.cullingFrustum; + SubLevelRenderDispatcher.get().updateCulling(sublevels, cameraPosition.x, cameraPosition.y, cameraPosition.z, VeilRenderBridge.create(frustum), minecraft.player.isSpectator()); + + this.sable$subLevelSectionManagers.values().forEach(RenderSectionManager::markGraphDirty); + } + + @Inject(method = "setupTerrain", at = @At("TAIL")) + public void sable$setupTerrain(final Camera camera, final Viewport viewport, final boolean spectator, final boolean updateChunksImmediately, final CallbackInfo ci) { + final ProfilerFiller profiler = this.client.getProfiler(); + + final SubLevelRenderDispatcher dispatcher = SubLevelRenderDispatcher.get(); + + if (!(dispatcher instanceof SodiumSubLevelRenderDispatcher)) { + dispatcher.preRenderChunks(camera); + + final Iterable sublevels = SubLevelContainer.getContainer(this.level).getAllSubLevels(); + final RenderRegionCache renderRegionCache = new RenderRegionCache(); + + final PrioritizeChunkUpdates chunkUpdates = SodiumClientMod.options().performance.alwaysDeferChunkUpdates ? PrioritizeChunkUpdates.NONE : PrioritizeChunkUpdates.NEARBY; + for (final ClientSubLevel sublevel : sublevels) { + sublevel.getRenderData().compileSections(chunkUpdates, renderRegionCache, camera); + } + return; + } + + for (final ClientSubLevel clientSubLevel : SubLevelContainer.getContainer(this.level).getAllSubLevels()) { + this.sable$getOrCreateSubLevelRenderSectionManager(clientSubLevel); + } + + final ObjectIterator> iter = this.sable$subLevelSectionManagers.entrySet().iterator(); + while (iter.hasNext()) { + final Map.Entry entry = iter.next(); + final ClientSubLevel subLevel = entry.getKey(); + final RenderSectionManager renderSectionManager = entry.getValue(); + + if (subLevel.isRemoved()) { + renderSectionManager.destroy(); + iter.remove(); + } else { + + final Vector3d cameraPos = JOMLConversion.toJOML(camera.getPosition()); + subLevel.renderPose().transformPositionInverse(cameraPos); + renderSectionManager.updateCameraState(cameraPos, camera); + + ((SodiumSubLevelRenderData) subLevel.getRenderData()).updateChunks(updateChunksImmediately); + } + } + + for (final RenderSectionManager renderSectionManager : this.sable$subLevelSectionManagers.values()) { + profiler.push("chunk_update"); + renderSectionManager.updateChunks(updateChunksImmediately); + profiler.popPush("chunk_upload"); + renderSectionManager.uploadChunks(); + + profiler.popPush("chunk_render_lists"); + renderSectionManager.update(camera, viewport, spectator); + + if (updateChunksImmediately) { + profiler.popPush("chunk_upload_immediately"); + renderSectionManager.uploadChunks(); + } + + profiler.popPush("chunk_render_tick"); + renderSectionManager.tickVisibleRenders(); + profiler.pop(); + } + } + + @Inject(method = "scheduleRebuildForChunk(IIIZ)V", at = @At("TAIL")) + public void sable$scheduleRebuildForChunk(final int x, final int y, final int z, final boolean playerChanged, final CallbackInfo ci) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container != null && container.inBounds(x, z)) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, new ChunkPos(x, z)); + + if (subLevel != null) + subLevel.getRenderData().setDirty(x, y, z, playerChanged); + } + + for (final RenderSectionManager manager : this.sable$subLevelSectionManagers.values()) { + manager.scheduleRebuild(x, y, z, playerChanged); + } + } + + +// @Inject(method = "processChunkEvents", at = @At("TAIL")) +// private void sable$onProcessChunkEvents(CallbackInfo ci) { +// for (RenderSectionManager manager : this.sable$subLevelSectionManagers.values()) { +// ChunkTracker tracker = ChunkTrackerHolder.get(this.level); +// Objects.requireNonNull(manager); +// +// ChunkTracker.ChunkEventHandler handler = manager::onChunkAdded; +// tracker.forEachEvent(handler, manager::onChunkRemoved); +// } +// } + + + @Inject(method = "drawChunkLayer", at = @At("TAIL")) + public void sable$drawRenderSources(final RenderType renderType, final ChunkRenderMatrices matrices, final double camX, final double camY, final double camZ, final CallbackInfo ci) { + final SubLevelRenderDispatcher renderDispatcher = SubLevelRenderDispatcher.get(); + + if (!(renderDispatcher instanceof SodiumSubLevelRenderDispatcher)) { + final Minecraft minecraft = Minecraft.getInstance(); + final float partialTicks = minecraft.getTimer().getGameTimeDeltaPartialTick(false); + final List subLevels = SubLevelContainer.getContainer(this.level).getAllSubLevels(); + + final Matrix4f modelView = new Matrix4f(matrices.modelView()); + final Matrix4f projection = new Matrix4f(matrices.projection()); + + { + renderType.setupRenderState(); + final ShaderInstance shader = Objects.requireNonNull(RenderSystem.getShader(), "shader"); + shader.setDefaultUniforms(VertexFormat.Mode.QUADS, modelView, projection, minecraft.getWindow()); + shader.apply(); + + renderDispatcher.renderSectionLayer(subLevels, renderType, shader, camX, camY, camZ, modelView, projection, partialTicks); + + shader.clear(); + renderType.clearRenderState(); + } + + RenderType unwrappedRenderType = renderType; + while (unwrappedRenderType instanceof final VeilRenderType.RenderTypeWrapper wrapper) { + unwrappedRenderType = wrapper.get(); + } + + if (unwrappedRenderType instanceof final VeilRenderType.LayeredRenderType layered) { + for (final RenderType layer : layered.getLayers()) { + layer.setupRenderState(); + final ShaderInstance shader = Objects.requireNonNull(RenderSystem.getShader(), "shader"); + shader.setDefaultUniforms(VertexFormat.Mode.QUADS, modelView, projection, minecraft.getWindow()); + shader.apply(); + + renderDispatcher.renderSectionLayer(subLevels, layer, shader, camX, camY, camZ, modelView, projection, partialTicks); + + shader.clear(); + layer.clearRenderState(); + } + } + + return; + } + + if (renderType == RenderType.solid() || renderType == RenderType.translucent()) { + for (final Map.Entry entry : this.sable$subLevelSectionManagers.entrySet()) { + final ClientSubLevel subLevel = entry.getKey(); + final RenderSectionManager manager = entry.getValue(); + + ((SodiumSubLevelRenderData) subLevel.getRenderData()).renderAdditional(); + + final SubLevelRenderSectionManager subLevelManager = (SubLevelRenderSectionManager) manager; + + subLevelManager.apply(matrices, camX, camY, camZ); + subLevelManager.render(matrices, renderType, camX, camY, camZ); + } + } + } + + + @Override + public SubLevelRenderSectionManager sable$getSubLevelRenderSectionManager(final ClientSubLevel subLevel) { + return (SubLevelRenderSectionManager) this.sable$subLevelSectionManagers.get(subLevel); + } + + @Override + public void sable$freeRenderSectionManager(final ClientSubLevel subLevel) { + final SubLevelRenderSectionManager manager = (SubLevelRenderSectionManager) this.sable$subLevelSectionManagers.remove(subLevel); + if (manager != null) { + manager.destroy(); + } + } + + @Unique + private SubLevelRenderSectionManager sable$getOrCreateSubLevelRenderSectionManager(final ClientSubLevel subLevel) { + return (SubLevelRenderSectionManager) this.sable$subLevelSectionManagers.computeIfAbsent(subLevel, s -> { + try (final CommandList commandList = RenderDevice.INSTANCE.createCommandList()) { + return new SubLevelRenderSectionManager(subLevel, subLevel.getLevel(), this.client.options.getEffectiveRenderDistance(), commandList); + } + }); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.java new file mode 100644 index 0000000..faf750d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.java @@ -0,0 +1,132 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.impl.vanilla; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import foundry.veil.api.client.render.VeilRenderBridge; +import foundry.veil.api.client.render.rendertype.VeilRenderType; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Objects; + +@Mixin(value = LevelRenderer.class, priority = 1002) // Higher priority to go after Flywheel +public abstract class LevelRendererMixin { + + @Shadow + private @Nullable ClientLevel level; + + @Shadow + @Final + private Minecraft minecraft; + + @Inject(method = "compileSections", at = @At("TAIL")) + private void sable$compileSections(final Camera camera, final CallbackInfo ci) { + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + final RenderRegionCache renderRegionCache = new RenderRegionCache(); + final PrioritizeChunkUpdates chunkUpdates = Minecraft.getInstance().options.prioritizeChunkUpdates().get(); + + for (final ClientSubLevel sublevel : sublevels) { + sublevel.getRenderData().compileSections(chunkUpdates, renderRegionCache, camera); + } + } + + @Inject(method = "setupRender", at = @At(value = "INVOKE_STRING", target = "Lnet/minecraft/util/profiling/ProfilerFiller;popPush(Ljava/lang/String;)V", args = "ldc=update")) + public void sable$cull(final Camera camera, final Frustum frustum, final boolean hasCapturedFrustum, final boolean isSpectator, final CallbackInfo ci) { + if (hasCapturedFrustum) { + return; + } + + final SubLevelRenderDispatcher dispatcher = SubLevelRenderDispatcher.get(); + dispatcher.preRenderChunks(camera); + + final ProfilerFiller profiler = this.minecraft.getProfiler(); + profiler.push("sub_level_section_occlusion_graph"); + + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + final Vec3 cameraPosition = camera.getPosition(); + dispatcher.updateCulling(sublevels, cameraPosition.x, cameraPosition.y, cameraPosition.z, VeilRenderBridge.create(frustum), isSpectator); + + profiler.pop(); + } + + @Inject(method = "isSectionCompiled", at = @At("HEAD"), cancellable = true) + private void sable$isSectionCompiled(final BlockPos blockPos, final CallbackInfoReturnable cir) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container == null) { + return; + } + + if (container.inBounds(blockPos)) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, blockPos); + + if (subLevel == null) { + cir.setReturnValue(false); + } else { + final SubLevelRenderData renderData = subLevel.getRenderData(); + final SectionPos sectionPos = SectionPos.of(blockPos); + cir.setReturnValue(renderData.isSectionCompiled(sectionPos.x(), sectionPos.y(), sectionPos.z())); + } + } + } + + @Inject(method = "renderSectionLayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/ShaderInstance;clear()V")) + public void sable$renderSubLevels(final RenderType renderType, final double x, final double y, final double z, final Matrix4f modelView, final Matrix4f projection, final CallbackInfo ci, @Local ShaderInstance shader) { + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + SubLevelRenderDispatcher.get().renderSectionLayer(sublevels, renderType, shader, x, y, z, modelView, projection, Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(false)); + } + + @Inject(method = "renderSectionLayer", at = @At("TAIL")) + public void sable$renderSubLevelLayers(final RenderType renderType, final double x, final double y, final double z, final Matrix4f modelView, final Matrix4f projection, final CallbackInfo ci) { + RenderType unwrappedRenderType = renderType; + while (unwrappedRenderType instanceof final VeilRenderType.RenderTypeWrapper wrapper) { + unwrappedRenderType = wrapper.get(); + } + + if (!(unwrappedRenderType instanceof final VeilRenderType.LayeredRenderType layered)) { + return; + } + + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) this.level).sable$getPlotContainer()).getAllSubLevels(); + final SubLevelRenderDispatcher renderDispatcher = SubLevelRenderDispatcher.get(); + for (final RenderType layer : layered.getLayers()) { + layer.setupRenderState(); + final ShaderInstance shader = Objects.requireNonNull(RenderSystem.getShader(), "shader"); + shader.setDefaultUniforms(VertexFormat.Mode.QUADS, modelView, projection, this.minecraft.getWindow()); + shader.apply(); + + renderDispatcher.renderSectionLayer(sublevels, renderType, shader, x, y, z, modelView, projection, Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(false)); + + shader.clear(); + layer.clearRenderState(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.java new file mode 100644 index 0000000..b27d4c7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.impl.vanilla; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ViewArea; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Makes view area calls redirect to data renderers + */ +@Mixin(ViewArea.class) +public class ViewAreaMixin { + + @Inject(method = "setDirty", at = @At("HEAD"), cancellable = true) + private void sable$setDirty(final int x, final int y, final int z, final boolean playerChanged, final CallbackInfo ci) { + final SubLevelContainer plotContainer = ((SubLevelContainerHolder) Minecraft.getInstance().level).sable$getPlotContainer(); + final LevelPlot plot = plotContainer.getPlot(x, z); + + if (plot != null) { + (((ClientSubLevel) plot.getSubLevel()).getRenderData()).setDirty(x, y, z, playerChanged); + ci.cancel(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.java new file mode 100644 index 0000000..68fafa3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.mixin.sublevel_render.impl.vanilla.water_occlusion; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.systems.RenderSystem; +import dev.ryanhcode.sable.SableClient; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.renderer.*; +import org.joml.Matrix4f; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LevelRenderer.class) +public class LevelRendererMixin { + + @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/RenderBuffers;crumblingBufferSource()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;", ordinal = 2, shift = At.Shift.AFTER)) + public void sable$preRenderSectionLayers(final DeltaTracker deltaTracker, final boolean bl, final Camera camera, final GameRenderer gameRenderer, final LightTexture lightTexture, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci) { + SableClient.WATER_OCCLUSION_RENDERER.preRenderTranslucent(RenderSystem.getModelViewMatrix(), RenderSystem.getProjectionMatrix()); + } + + @Inject(method = "renderSectionLayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/ShaderInstance;apply()V", shift = At.Shift.BEFORE)) + private void sable$onRenderSectionLayer(final RenderType renderType, final double d, final double e, final double f, final Matrix4f matrix4f, final Matrix4f matrix4f2, final CallbackInfo ci, @Local final ShaderInstance shader) { + if (renderType == RenderType.translucent()) { + SableClient.WATER_OCCLUSION_RENDERER.setupTranslucentShader(shader); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.java new file mode 100644 index 0000000..0640a95 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.mixin.sublevel_sounds; + +import dev.ryanhcode.sable.sound.MovingSoundInstanceDelegate; +import dev.ryanhcode.sable.sound.SoundInstanceDelegated; +import net.minecraft.client.resources.sounds.AbstractSoundInstance; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(AbstractSoundInstance.class) +public class AbstractSoundInstanceMixin implements SoundInstanceDelegated { + + @Unique + private MovingSoundInstanceDelegate sable$delegate; + + + @Override + public MovingSoundInstanceDelegate getDelegate() { + return this.sable$delegate; + } + + @Override + public void setDelegate(final MovingSoundInstanceDelegate delegate) { + this.sable$delegate = delegate; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.java new file mode 100644 index 0000000..48c484e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.java @@ -0,0 +1,12 @@ +package dev.ryanhcode.sable.mixin.sublevel_sounds; + +import com.mojang.blaze3d.audio.Channel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(Channel.class) +public interface ChannelAccessor { + + @Accessor + int getSource(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.java new file mode 100644 index 0000000..21ec5e5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.mixin.sublevel_sounds; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes sound distance checks take into account sublevels + */ +@Mixin(ClientLevel.class) +public class ClientLevelMixin { + + @Redirect(method = "playSound", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(DDD)D")) + private double sable$playSound(final Vec3 instance, final double x, final double y, final double z) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, x, y, z); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.java new file mode 100644 index 0000000..9f3d7d5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.mixin.sublevel_sounds; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sound.MovingSoundInstanceDelegate; +import dev.ryanhcode.sable.sound.SoundInstanceDelegated; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.resources.sounds.SoundInstance; +import net.minecraft.client.resources.sounds.TickableSoundInstance; +import net.minecraft.client.sounds.ChannelAccess; +import net.minecraft.client.sounds.SoundEngine; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyVariable; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +import java.util.Iterator; + +@Mixin(SoundEngine.class) +public class SoundEngineMixin { + + @ModifyVariable(method = "play", at = @At("HEAD"), argsOnly = true) + private SoundInstance sable$play(final SoundInstance instance) { + final ClientLevel level = Minecraft.getInstance().level; + if (level == null) { + return instance; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(level, instance.getX(), instance.getZ()); + if (subLevel != null) { + return new MovingSoundInstanceDelegate(instance, subLevel); + } + + return instance; + } + + @ModifyVariable(method = "stop(Lnet/minecraft/client/resources/sounds/SoundInstance;)V", at = @At("HEAD"), argsOnly = true) + private SoundInstance sable$stop(final SoundInstance instance) { + if (instance instanceof final SoundInstanceDelegated delegated) { + if (delegated.getDelegate() != null) { + return delegated.getDelegate(); + } + } + + return instance; + } + + @Inject(method = "tickNonPaused", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;execute(Ljava/util/function/Consumer;)V", shift = At.Shift.AFTER, ordinal = 0), locals = LocalCapture.CAPTURE_FAILEXCEPTION) + private void sable$tick(final CallbackInfo ci, final Iterator sounds, final TickableSoundInstance sound, + final float volume, final float pitch, final Vec3 pos, final ChannelAccess.ChannelHandle access) { + if (sound instanceof final MovingSoundInstanceDelegate delegated) { + access.execute(delegated::tickWithChannel); + } + } + + @Inject(method = "stop(Lnet/minecraft/client/resources/sounds/SoundInstance;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;execute(Ljava/util/function/Consumer;)V", shift = At.Shift.AFTER), locals = LocalCapture.CAPTURE_FAILEXCEPTION) + private void sable$clear(final SoundInstance sound, final CallbackInfo ci, final ChannelAccess.ChannelHandle access) { + if (sound instanceof final MovingSoundInstanceDelegate delegated) { + access.execute(delegated::unload); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.java new file mode 100644 index 0000000..2b3cc91 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.mixin.toast; + +import dev.ryanhcode.sable.index.SableToasts; +import dev.ryanhcode.sable.mixinterface.toast.SableToastableServer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import net.minecraft.ChatFormatting; +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.components.toasts.SystemToast; +import net.minecraft.client.server.IntegratedServer; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(IntegratedServer.class) +public class IntegratedServerMixin implements SableToastableServer { + @Shadow @Final private Minecraft minecraft; + + @Override + public void sable$reportSubLevelLoadFailure(final GlobalSavedSubLevelPointer pointer) { + SystemToast.addOrUpdate( + this.minecraft.getToasts(), + SableToasts.SUB_LEVEL_LOAD_FAILURE, + Component.translatable("sub_level.toast.loadFailure", Component.literal(pointer.toString())).withStyle(ChatFormatting.RED), + Component.translatable("sub_level.toast.checkLog") + ); + } + + @Override + public void sable$reportSubLevelSaveFailure(final SubLevelData data) { + SystemToast.addOrUpdate( + this.minecraft.getToasts(), + SableToasts.SUB_LEVEL_SAVE_FAILURE, + Component.translatable("sub_level.toast.saveFailure", Component.literal(data.toString())).withStyle(ChatFormatting.RED), + Component.translatable("sub_level.toast.checkLog") + ); + } + + @Override + public void sable$reportSubLevelPhysicsFailure(final ServerSubLevel data) { + SystemToast.addOrUpdate( + this.minecraft.getToasts(), + SableToasts.SUB_LEVEL_PHYSICS_FAILURE, + Component.translatable("sub_level.toast.physicsFailure", Component.literal(data.toString())).withStyle(ChatFormatting.RED), + Component.translatable("sub_level.toast.attemptingRecovery") + ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.java new file mode 100644 index 0000000..4d957a4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.mixin.tracking_points; + +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow private Level level; + + @Shadow public abstract void setPosRaw(double d, double e, double f); + + @Inject(method = "load", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;setPosRaw(DDD)V", shift = At.Shift.AFTER)) + private void sable$load(final CompoundTag compoundTag, final CallbackInfo ci) { + if (compoundTag.contains("LoginPoint")) { + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad((ServerLevel) this.level); + final SubLevelTrackingPointSavedData.TakenLoginPoint point = data.take(compoundTag.getUUID("LoginPoint"), true); + + if (point != null) { + final Vector3dc position = point.position(); + this.setPosRaw(position.x(), position.y(), position.z()); + + if (point.subLevelId() != null && this instanceof final PlayerFreezeExtension extension) { + extension.sable$freezeTo(point.subLevelId(), point.localAnchor().add(0.0, 0.2, 0.0)); + } + + // kick them out of vehicle + compoundTag.remove("RootVehicle"); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.java new file mode 100644 index 0000000..eaa5888 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.mixin.tracking_points; + +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(ServerPlayer.class) +public abstract class ServerPlayerMixin { + + @Shadow public abstract ServerLevel serverLevel(); + + @Inject(method = "addAdditionalSaveData", at = @At("TAIL")) + private void addAdditionalSaveData(final CompoundTag compoundTag, final CallbackInfo ci) { + final SubLevelTrackingPointSavedData data = SubLevelTrackingPointSavedData.getOrLoad(this.serverLevel()); + final UUID loginPointUUID = data.generateTrackingPoint((ServerPlayer) (Object) this); + if (loginPointUUID != null) { + compoundTag.putUUID("LoginPoint", loginPointUUID); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.java new file mode 100644 index 0000000..80a8722 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.java @@ -0,0 +1,112 @@ +package dev.ryanhcode.sable.mixin.udp; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.mixinterface.udp.ConnectionExtension; +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.handler.SableUDPChannelHandlerClient; +import io.netty.bootstrap.Bootstrap; +import io.netty.channel.*; +import io.netty.channel.epoll.Epoll; +import io.netty.channel.epoll.EpollDatagramChannel; +import io.netty.channel.local.LocalChannel; +import io.netty.channel.socket.nio.NioDatagramChannel; +import net.minecraft.network.Connection; +import net.minecraft.network.DisconnectionDetails; +import net.minecraft.network.protocol.PacketFlow; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.net.InetSocketAddress; +import java.net.SocketAddress; + +@Mixin(Connection.class) +public abstract class ConnectionMixin implements ConnectionExtension { + + @Unique + private Channel sable$udpChannel = null; + + @Override + public void sable$setUDPChannel(final Channel channel) { + this.sable$udpChannel = channel; + } + + @Inject(method = "disconnect(Lnet/minecraft/network/DisconnectionDetails;)V", at = @At("TAIL")) + private void sable$onDisconnect(final DisconnectionDetails disconnectionDetails, final CallbackInfo ci) { + final Channel channel = this.sable$udpChannel; + if (this.sable$udpChannel != null && this.sable$udpChannel.isOpen()) { + this.sable$udpChannel = null; + + channel.close().awaitUninterruptibly().addListener((x) -> { + if (x.isSuccess()) { + Sable.LOGGER.info("Closed UDP channel!"); + } else { + Sable.LOGGER.info("Failed to close UDP channel", x.cause()); + } + }); + } + } + + @Override + public Channel sable$getUDPChannel() { + return this.sable$udpChannel; + } + + @Inject(method = "connect", at = @At("TAIL")) + private static void sable$connect(final InetSocketAddress inetSocketAddress, final boolean bl, final Connection connection, final CallbackInfoReturnable cir) { + final boolean useNativeTransport = SableClient.useNativeTransport(); + + final Class channelClass; + final EventLoopGroup eventLoopGroup; + + if (Epoll.isAvailable() && useNativeTransport) { + channelClass = EpollDatagramChannel.class; + eventLoopGroup = Connection.NETWORK_EPOLL_WORKER_GROUP.get(); + } else { + channelClass = NioDatagramChannel.class; + eventLoopGroup = Connection.NETWORK_WORKER_GROUP.get(); + } + + Sable.LOGGER.info("Starting remote client UDP channel future"); + + final ChannelFuture channelFuture = new Bootstrap().group(eventLoopGroup).handler(new ChannelInitializer<>() { + @Override + protected void initChannel(final Channel channel) { + channel.config().setOption(ChannelOption.SO_KEEPALIVE, true); + SableUDPPacket.configureSerialization(channel.pipeline(), PacketFlow.CLIENTBOUND, false, null); + sable$setupChannel(channel, connection); + } + }) + .channel(channelClass) + .connect(inetSocketAddress.getAddress(), inetSocketAddress.getPort()); + + channelFuture.syncUninterruptibly(); + } + + @Inject(method = "connectToLocalServer", at = @At("TAIL")) + private static void sable$connectToLocalServer(final SocketAddress socketAddress, final CallbackInfoReturnable cir, @Local final Connection connection) { + Sable.LOGGER.info("Starting local client UDP channel future"); + + final ChannelFuture channelFuture = new Bootstrap().group(Connection.LOCAL_WORKER_GROUP.get()).handler(new ChannelInitializer<>() { + @Override + protected void initChannel(final Channel channel) { + SableUDPPacket.configureInMemoryPipeline(channel.pipeline(), PacketFlow.CLIENTBOUND); + sable$setupChannel(channel, connection); + } + }).channel(LocalChannel.class).connect(socketAddress).syncUninterruptibly(); + + channelFuture.syncUninterruptibly(); + } + + @Unique + private static void sable$setupChannel(final Channel channel, final Connection connection) { + final ChannelPipeline pipeline = channel.pipeline(); + pipeline.addLast(new SableUDPChannelHandlerClient(connection)); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.java new file mode 100644 index 0000000..b110766 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.mixin.udp; + +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import net.minecraft.server.MinecraftServer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.function.BooleanSupplier; + +@Mixin(MinecraftServer.class) +public class MinecraftServerMixin { + + @Unique + private long sable$lastPingTime = 0; + + @Inject(method = "tickServer", at = @At("TAIL")) + private void sable$keepUdpSocketsAlive(final BooleanSupplier booleanSupplier, final CallbackInfo ci) { + final SableUDPServer server = SableUDPServer.getServer((MinecraftServer) (Object) this); + if (server == null) { + return; + } + + final long time = System.currentTimeMillis(); + + if (time - this.sable$lastPingTime > SableUDPServer.PING_INTERVAL) { + server.sendPings(); + + this.sable$lastPingTime = time; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.java new file mode 100644 index 0000000..76da739 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixin.udp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import net.minecraft.network.Connection; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.server.network.CommonListenerCookie; +import net.minecraft.server.players.PlayerList; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Send a player a UDP authentication packet when they join the server in hopes for an {@link dev.ryanhcode.sable.network.packets.udp.SableUDPAuthenticationPacket} back + */ +@Mixin(PlayerList.class) +public class PlayerListMixin { + + @Inject(method = "placeNewPlayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/network/ServerGamePacketListenerImpl;send(Lnet/minecraft/network/protocol/Packet;)V", ordinal = 0, shift = At.Shift.AFTER)) + private void onPlayerJoin(final Connection connection, final ServerPlayer serverPlayer, final CommonListenerCookie commonListenerCookie, final CallbackInfo ci) { + final SableUDPServer server = SableUDPServer.getServer(serverPlayer.server); + + if (server == null) { + return; + } + + Sable.LOGGER.info("Beginning attempted authentication with player {}", serverPlayer.getName().getString()); + server.beginAuthentication(serverPlayer); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.java new file mode 100644 index 0000000..f3df9e7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.java @@ -0,0 +1,132 @@ +package dev.ryanhcode.sable.mixin.udp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.mixinterface.udp.ServerConnectionListenerExtension; +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import dev.ryanhcode.sable.network.udp.handler.SableUDPChannelHandlerServer; +import io.netty.bootstrap.Bootstrap; +import io.netty.channel.*; +import io.netty.channel.epoll.Epoll; +import io.netty.channel.epoll.EpollDatagramChannel; +import io.netty.channel.local.LocalAddress; +import io.netty.channel.local.LocalServerChannel; +import io.netty.channel.socket.nio.NioDatagramChannel; +import net.minecraft.network.protocol.PacketFlow; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.network.ServerConnectionListener; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.net.InetAddress; +import java.net.SocketAddress; +import java.util.List; + +@Mixin(ServerConnectionListener.class) +public class ServerConnectionListenerMixin implements ServerConnectionListenerExtension { + + @Shadow + @Final + private List channels; + + @Shadow + @Final + private MinecraftServer server; + + @Unique + private SableUDPServer sable$server = null; + + @Inject(method = "startTcpServerListener", at = @At("HEAD")) + private void sable$startTcpServerListener(final InetAddress inetAddress, final int port, final CallbackInfo ci) { + if (SableConfig.DISABLE_UDP_PIPELINE.get()) { + return; + } + + synchronized (this.channels) { + final Class channelClass; + final EventLoopGroup eventLoopGroup; + + if (Epoll.isAvailable() && this.server.isEpollEnabled()) { + channelClass = EpollDatagramChannel.class; + eventLoopGroup = ServerConnectionListener.SERVER_EPOLL_EVENT_GROUP.get(); + } else { + channelClass = NioDatagramChannel.class; + eventLoopGroup = ServerConnectionListener.SERVER_EVENT_GROUP.get(); + } + + Sable.LOGGER.info("Adding UDP server channel future"); + + this.channels.add(new Bootstrap() + .channel(channelClass) + .option(ChannelOption.SO_BROADCAST, true) + .handler(new ChannelInitializer<>() { + @Override + protected void initChannel(final Channel channel) { + SableUDPPacket.configureSerialization(channel.pipeline(), PacketFlow.SERVERBOUND, false, null); + ServerConnectionListenerMixin.this.sable$setupChannel(channel); + } + }) + .group(eventLoopGroup) + .localAddress(inetAddress, port) + .bind() + .syncUninterruptibly()); + } + } + + @Inject(method = "startMemoryChannel", at = @At("TAIL")) + private void sable$startMemoryChannel(final CallbackInfoReturnable cir) { + if (SableConfig.DISABLE_UDP_PIPELINE.get()) { + return; + } + + synchronized (this.channels) { + Sable.LOGGER.info("Adding local UDP server channel future"); + + this.channels.add(new Bootstrap() + .channel(LocalServerChannel.class) + .option(ChannelOption.SO_BROADCAST, true) + .handler(new ChannelInitializer<>() { + @Override + protected void initChannel(final Channel channel) { + SableUDPPacket.configureInMemoryPipeline(channel.pipeline(), PacketFlow.SERVERBOUND); + ServerConnectionListenerMixin.this.sable$setupChannel(channel); + } + }) + .group(ServerConnectionListener.SERVER_EVENT_GROUP.get()) + .localAddress(LocalAddress.ANY) + .bind() + .syncUninterruptibly()); + } + } + + @Unique + private void sable$setupChannel(final Channel channel) { + final ChannelPipeline pipeline = channel.pipeline(); + + pipeline.addLast(new SableUDPChannelHandlerServer(this.server, (ServerConnectionListener) (Object) this)); + } + + @Inject(method = "stop", at = @At("TAIL")) + private void sable$stop(final CallbackInfo ci) { + this.sable$server = null; + } + + @Override + public void sable$setupUDPServer(final Channel channel) { + this.sable$server = new SableUDPServer(this.server, channel); + } + + @Override + @Nullable + public SableUDPServer sable$getServer() { + return this.sable$server; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.java new file mode 100644 index 0000000..c71fa92 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixin.voxel_shape_iteration; + +import net.minecraft.world.phys.shapes.BitSetDiscreteVoxelShape; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; +import org.spongepowered.asm.mixin.gen.Invoker; + +import java.util.BitSet; + +@Mixin(BitSetDiscreteVoxelShape.class) +public interface BitSetDiscreteVoxelShapeAccessor extends DiscreteVoxelShapeAccessor { + + @Accessor + BitSet getStorage(); + + @Invoker + boolean invokeIsZStripFull(int i, int j, int k, int l); + + @Invoker + boolean invokeIsXZRectangleFull(int i, int j, int k, int l, int m); + + @Invoker + void invokeClearZStrip(int i, int j, int k, int l); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.java b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.java new file mode 100644 index 0000000..11e1e0b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.mixin.voxel_shape_iteration; + +import net.minecraft.world.phys.shapes.DiscreteVoxelShape; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(DiscreteVoxelShape.class) +public interface DiscreteVoxelShapeAccessor { + + @Accessor + int getXSize(); + + @Accessor + int getYSize(); + + @Accessor + int getZSize(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.java new file mode 100644 index 0000000..ac6b9d0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.mixin.voxel_shape_iteration; + +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.mixinhelpers.voxel_shape_iteration.FastVoxelShapeIterator; +import dev.ryanhcode.sable.mixinterface.voxel_shape_iteration.FastVoxelShapeIterable; +import it.unimi.dsi.fastutil.doubles.DoubleList; +import it.unimi.dsi.fastutil.longs.Long2ObjectArrayMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.shapes.DiscreteVoxelShape; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; + +import java.util.Iterator; + +@Mixin(VoxelShape.class) +public abstract class VoxelShapeMixin implements FastVoxelShapeIterable { + + @Unique + private final Long2ObjectMap sable$boxIterator = new Long2ObjectArrayMap<>(); + @Shadow + @Final + protected DiscreteVoxelShape shape; + + @Shadow + public abstract DoubleList getCoords(Direction.Axis axis); + + @Override + public Iterator sable$allBoxes() { + synchronized (this) { + final long id = Thread.currentThread().threadId(); + FastVoxelShapeIterator iterator = this.sable$boxIterator.get(id); + + if (iterator == null) { + // Make sure the client and server thread don't try to create a new iterator at the same time + iterator = this.sable$boxIterator.get(id); + if (iterator == null) { + this.sable$boxIterator.put(id, iterator = new FastVoxelShapeIterator( + this.shape, + this.getCoords(Direction.Axis.X).toDoubleArray(), + this.getCoords(Direction.Axis.Y).toDoubleArray(), + this.getCoords(Direction.Axis.Z).toDoubleArray())); + } + } + + iterator.reset(); + return iterator; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.java new file mode 100644 index 0000000..e32ff0f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import dev.ryanhcode.sable.mixinterface.water_occlusion.CameraWaterOcclusionExtension; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import net.minecraft.client.Camera; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.FogType; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(Camera.class) +public class CameraMixin implements CameraWaterOcclusionExtension { + + @Shadow + private Vec3 position; + + @Shadow + private BlockGetter level; + + @Unique + private boolean sable$ignoreOcclusion = false; + + @Inject(method = "getFluidInCamera", at = @At("RETURN"), cancellable = true) + public void sable$getFluidInCamera(final CallbackInfoReturnable cir) { + if (this.sable$ignoreOcclusion) { + return; + } + + if (cir.getReturnValue() == FogType.WATER || cir.getReturnValue() == FogType.LAVA) { + final boolean occluded = this.sable$isOccluded(); + + if (occluded) { + cir.setReturnValue(FogType.NONE); + } + } + } + + @Override + public void sable$setIgnoreOcclusion(final boolean ignore) { + this.sable$ignoreOcclusion = ignore; + } + + @Override + public boolean sable$isIgnoreOcclusion() { + return this.sable$ignoreOcclusion; + } + + @Override + public boolean sable$isOccluded() { + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer((Level) this.level); + + if (container == null) + return false; + + return container.isOccluded(this.position); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.java new file mode 100644 index 0000000..0989b11 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.java @@ -0,0 +1,86 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import net.minecraft.core.BlockPos; +import net.minecraft.tags.TagKey; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Makes entities not think they're in water when in occluded regions + */ +@Mixin(Entity.class) +public abstract class EntityMixin { + + @Shadow + private Level level; + + @Shadow + public abstract Vec3 position(); + + @Shadow + public abstract AABB getBoundingBox(); + + @Shadow public abstract double getX(); + + @Shadow public abstract double getEyeY(); + + @Shadow public abstract double getZ(); + + @Inject(method = "updateFluidHeightAndDoFluidPushing", at = @At("HEAD"), cancellable = true) + public void sable$updateFluidHeightAndDoFluidPushing(final TagKey tagKey, final double d, final CallbackInfoReturnable cir) { + final boolean occluded = this.sable$isOccluded(); + + if (occluded) { + cir.setReturnValue(false); + } + } + + @Unique + private boolean sable$isOccluded() { + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(this.level); + + if (container == null) + return false; + + return container.isOccluded(this.getBoundingBox().getCenter()) || + container.isOccluded(this.position()); + } + + @WrapOperation(method = "updateSwimming", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;setSwimming(Z)V")) + public void sable$inWaterCheck(final Entity instance, final boolean swimming, final Operation original) { + if (swimming && this.sable$isOccluded()) { + original.call(instance, false); + return; + } + + original.call(instance, swimming); + } + + @WrapOperation(method = "updateFluidOnEyes", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getFluidState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState;")) + public FluidState sable$occludeFluidOnEyes(final Level instance, final BlockPos pos, final Operation original) { + final FluidState originalState = original.call(instance, pos); + + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(this.level); + + if (!originalState.isEmpty() && container != null && container.isOccluded(new Vec3(this.getX(), this.getEyeY(), this.getZ()))) { + // If we're occluded, we don't want to return a fluid state + return Fluids.EMPTY.defaultFluidState(); + } + + return originalState; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.java new file mode 100644 index 0000000..e434b0c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.mixinterface.water_occlusion.CameraWaterOcclusionExtension; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.FogRenderer; +import net.minecraft.world.level.material.FogType; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * For now, we're okay with water fog in the camera. + */ +@Mixin(FogRenderer.class) +public class FogRendererMixin { + + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;getFluidInCamera()Lnet/minecraft/world/level/material/FogType;")) + private static FogType sable$getFluidinCamera(final Camera instance, final Operation original) { + final CameraWaterOcclusionExtension camera = (CameraWaterOcclusionExtension) Minecraft.getInstance().gameRenderer.getMainCamera(); + camera.sable$setIgnoreOcclusion(true); + final FogType type = original.call(instance); + camera.sable$setIgnoreOcclusion(false); + return type; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.java new file mode 100644 index 0000000..9a10ce0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import dev.ryanhcode.sable.SableClient; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.renderer.GameRenderer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(GameRenderer.class) +public class GameRendererMixin { + + @Inject(method = "render", at = @At("HEAD")) + public void sable$updateWaterOcclusionManager(final DeltaTracker deltaTracker, final boolean bl, final CallbackInfo ci) { + SableClient.WATER_OCCLUSION_RENDERER.update(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.java new file mode 100644 index 0000000..bb1e3cc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import dev.ryanhcode.sable.mixinterface.water_occlusion.WaterOcclusionContainerHolder; +import dev.ryanhcode.sable.platform.SablePlatform; +import dev.ryanhcode.sable.sublevel.water_occlusion.ClientWaterOcclusionContainer; +import dev.ryanhcode.sable.sublevel.water_occlusion.ServerWaterOcclusionContainer; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Pseudo; +import org.spongepowered.asm.mixin.Unique; + +/** + * Adds a {@link WaterOcclusionContainer} to the server levels + */ +@Pseudo +@Mixin({ServerLevel.class, ClientLevel.class}) +public class LevelsMixin implements WaterOcclusionContainerHolder { + @Unique + private final WaterOcclusionContainer sable$waterOcclusionContainer = this.sable$createWaterOcclusionContainer(); + + @Unique + private WaterOcclusionContainer sable$createWaterOcclusionContainer() { + final Level self = (Level) (Object) this; + if (SablePlatform.INSTANCE.isWrappedLevel(self)) return null; + + if (self.isClientSide) { + return ClientWaterOcclusionContainer.create(self); + } else { + return ServerWaterOcclusionContainer.create(self); + } + } + + @Override + public WaterOcclusionContainer sable$getWaterOcclusionContainer() { + return this.sable$waterOcclusionContainer; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.java new file mode 100644 index 0000000..08fcc52 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.mixin.water_occlusion; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.WaterFluid; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * Don't spawn underwater particles in occluded areas + */ +@Mixin(WaterFluid.class) +public class WaterFluidMixin { + + @WrapOperation(method = "animateTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;addParticle(Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V")) + public void sable$addUnderwaterParticle(final Level level, final ParticleOptions particleOptions, final double x, final double y, final double z, final double g, final double h, final double i, final Operation original) { + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(level); + + if (container == null) + return; + + final Vec3 pos = new Vec3(x, y, z); + if (container.isOccluded(pos)) { + return; + } + + original.call(level, particleOptions, x, y, z, g, h, i); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/LevelMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/LevelMixin.java new file mode 100644 index 0000000..217c107 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/LevelMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.mixin.world_border; + +import dev.ryanhcode.sable.mixinterface.world_border.WorldBorderExtension; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.border.WorldBorder; +import net.minecraft.world.level.storage.WritableLevelData; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.function.Supplier; + +@Mixin(Level.class) +public class LevelMixin { + + @Shadow @Final private WorldBorder worldBorder; + + @Inject(method = "", at = @At("TAIL")) + private void sable$initializeWorldBorder(final WritableLevelData writableLevelData, final ResourceKey resourceKey, final RegistryAccess registryAccess, final Holder holder, final Supplier supplier, final boolean bl, final boolean bl2, final long l, final int i, final CallbackInfo ci) { + ((WorldBorderExtension) this.worldBorder).sable$setLevel((Level) (Object) this); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.java b/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.java new file mode 100644 index 0000000..fc832ab --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.java @@ -0,0 +1,68 @@ +package dev.ryanhcode.sable.mixin.world_border; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.world_border.WorldBorderExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.border.WorldBorder; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(WorldBorder.class) +public class WorldBorderMixin implements WorldBorderExtension { + + @Unique + private Level sable$level; + + @Inject(method = "isWithinBounds(DDD)Z", at = @At("HEAD"), cancellable = true) + public void sable$isWithinBounds(final double x, final double z, final double offset, final CallbackInfoReturnable cir) { + if (this.sable$level == null) { + return; + } + + final SubLevelContainer container = SubLevelContainer.getContainer(this.sable$level); + + if (container != null && container.inBounds(Mth.floor(x) >> 4, Mth.floor(z) >> 4)) { + cir.setReturnValue(true); + } + } + + @Inject(method = "clampToBounds(DDD)Lnet/minecraft/core/BlockPos;", at = @At("HEAD"), cancellable = true) + private void sable$clampToBounds(final double x, final double y, final double z, final CallbackInfoReturnable cir) { + if (this.sable$level == null) { + return; + } + + final SubLevelContainer container = SubLevelContainer.getContainer(this.sable$level); + + if (container != null && container.inBounds(Mth.floor(x) >> 4, Mth.floor(z) >> 4)) { + cir.setReturnValue(BlockPos.containing(x, y, z)); + } + } + + @Inject(method = "isInsideCloseToBorder", at = @At("HEAD"), cancellable = true) + public void sable$isInsideCloseToBorder(final Entity entity, final AABB aABB, final CallbackInfoReturnable cir) { + if (this.sable$level == null) { + return; + } + + final SubLevelContainer container = SubLevelContainer.getContainer(this.sable$level); + + if (container != null && Sable.HELPER.getContaining(entity) != null) { + cir.setReturnValue(false); + } + } + + @Override + public void sable$setLevel(final Level level) { + this.sable$level = level; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.java new file mode 100644 index 0000000..1f1ec1e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.java @@ -0,0 +1,94 @@ +package dev.ryanhcode.sable.mixinhelpers; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.math.*; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LevelExtension; +import dev.ryanhcode.sable.mixinterface.voxel_shape_iteration.FastVoxelShapeIterable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.joml.Matrix4d; +import org.joml.Vector3d; + +import java.util.Iterator; + +public class CanFallAtleastHelper { + + public static Vector3d canFallAtleastWithSubLevels(final Level level, final AABB aabb) { + final BoundingBox3d considerationBounds = new BoundingBox3d(aabb); + considerationBounds.expand(1.05, considerationBounds); // fences + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(level, considerationBounds); + + final LevelReusedVectors sink = ((LevelExtension) level).sable$getJOMLSink(); + + sink.entityBoxOrientation.identity(); + final OrientedBoundingBox3d entityBoundsOBB = new OrientedBoundingBox3d( + (aabb.minX + aabb.maxX) / 2.0, + (aabb.minY + aabb.maxY) / 2.0, + (aabb.minZ + aabb.maxZ) / 2.0, + aabb.getXsize() - 0.1, + aabb.getYsize(), + aabb.getZsize() - 0.1, + sink.entityBoxOrientation, + sink); + + + final OrientedBoundingBox3d cubeOBB = new OrientedBoundingBox3d(sink); + final BoundingBox3d localBounds = new BoundingBox3d(); + final Matrix4d bakedPose = new Matrix4d(); + + final Vector3d center = new Vector3d(); + final Vector3d satResult = new Vector3d(); + + for (final SubLevel subLevel : intersecting) { + final Pose3dc pose = subLevel.lastPose(); + localBounds.set(aabb); + localBounds.expand(-0.05, 0.0, -0.05, localBounds); + localBounds.transformInverse(pose, bakedPose, localBounds); + localBounds.minY -= 1.0; // fences + + final Iterable blocks = BlockPos.betweenClosed(BlockPos.containing(localBounds.minX, localBounds.minY - 1, localBounds.minZ), BlockPos.containing(localBounds.maxX, localBounds.maxY, localBounds.maxZ)); + + cubeOBB.getOrientation().set(pose.orientation()); + + sink.entityBoxOrientation.identity().rotateY(SubLevelEntityCollision.getHitBoxYaw(pose)); + entityBoundsOBB.setOrientation(sink.entityBoxOrientation); + + for (final BlockPos block : blocks) { + final BlockState state = level.getBlockState(block); + final VoxelShape voxelShape = state.getCollisionShape(level, block); + + if (state.isAir()) { + continue; + } + + final Iterator iterator = ((FastVoxelShapeIterable) voxelShape).sable$allBoxes(); + while (iterator.hasNext()) { + final BoundingBox3dc box = iterator.next(); + box.center(center); + cubeOBB.getPosition().set(block.getX() + center.x, + block.getY() + center.y, + block.getZ() + center.z); + pose.transformPosition(cubeOBB.getPosition()); + box.size(cubeOBB.getDimensions()); + + OrientedBoundingBox3d.sat(entityBoundsOBB, cubeOBB, satResult); + if (satResult.lengthSquared() > 0 && satResult.x() != Double.MAX_VALUE && satResult.y() != Double.MAX_VALUE && satResult.z() != Double.MAX_VALUE) { + return satResult; + } + } + } + } + + return null; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.java new file mode 100644 index 0000000..c3ebd6b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.java @@ -0,0 +1,123 @@ +package dev.ryanhcode.sable.mixinhelpers.block_outline_render; + +import dev.ryanhcode.sable.companion.math.Pose3dc; +import net.minecraft.client.Camera; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.material.FogType; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.joml.Vector3f; + +@ApiStatus.Internal +public class SubLevelCamera extends Camera { + + private Camera renderCamera; + private final Quaterniond inverseOrientation = new Quaterniond(); + private final Quaternionf inverseOrientationf = new Quaternionf(); + private final Vector3f rotationYXZ = new Vector3f(); + + private final BlockPos.MutableBlockPos blockPosition = new BlockPos.MutableBlockPos(); + private Vec3 pos = Vec3.ZERO; + + public void setCamera(final Camera renderCamera) { + this.renderCamera = renderCamera; + } + + public void setPose(@Nullable final Pose3dc pose) { + if (pose != null) { + final Vec3 pos = pose.transformPositionInverse(this.renderCamera.getPosition()); + + final Quaternionf rotation = this.rotation(); + this.renderCamera.rotation().mul(this.inverseOrientationf.set(pose.orientation().invert(this.inverseOrientation)), rotation); + + this.blockPosition.set(pos.x, pos.y, pos.z); + this.pos = pos; + + rotation.getEulerAnglesYXZ(this.rotationYXZ); + + this.getLookVector().set(0.0F, 0.0F, -1.0F).rotate(rotation); + this.getUpVector().set(0.0F, 1.0F, 0.0F).rotate(rotation); + this.getLeftVector().set(-1.0F, 0.0F, 0.0F).rotate(rotation); + } else { + this.pos = this.renderCamera.getPosition(); + this.blockPosition.set(this.pos.x, this.pos.y, this.pos.z); + this.rotationYXZ.set(this.renderCamera.getXRot(), this.renderCamera.getYRot(), 0); + + final Quaternionf rotation = this.rotation(); + rotation.set(this.renderCamera.rotation()); + + this.getLookVector().set(0.0F, 0.0F, -1.0F).rotate(rotation); + this.getUpVector().set(0.0F, 1.0F, 0.0F).rotate(rotation); + this.getLeftVector().set(-1.0F, 0.0F, 0.0F).rotate(rotation); + } + } + + public void clear() { + this.renderCamera = null; + this.pos = Vec3.ZERO; + } + + @Override + public @NotNull Vec3 getPosition() { + return this.pos; + } + + @Override + public @NotNull BlockPos getBlockPosition() { + return this.blockPosition; + } + + @Override + public float getXRot() { + return (float) (180.0 / Math.PI * -this.rotationYXZ.x); + } + + @Override + public float getYRot() { + return (float) (180.0 / Math.PI * -this.rotationYXZ.y + 180.0); + } + + @Override + public @NotNull Entity getEntity() { + return this.renderCamera.getEntity(); + } + + @Override + public boolean isInitialized() { + return this.renderCamera.isInitialized(); + } + + @Override + public boolean isDetached() { + return this.renderCamera.isDetached(); + } + + @Override + public @NotNull NearPlane getNearPlane() { + return this.renderCamera.getNearPlane(); + } + + @Override + public @NotNull FogType getFluidInCamera() { + return this.renderCamera.getFluidInCamera(); + } + + @Override + public void reset() { + this.renderCamera.reset(); + } + + @Override + public float getPartialTickTime() { + return this.renderCamera.getPartialTickTime(); + } + + public Camera getRenderCamera() { + return this.renderCamera; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.java new file mode 100644 index 0000000..357023b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.java @@ -0,0 +1,98 @@ +package dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types.SableCameraTypes; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.entity.player.Player; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; + +import java.util.Optional; +import java.util.function.Function; + +public class EntitySubLevelRotationHelper { + + public enum Type { + CAMERA, ENTITY + } + public static boolean shouldCameraRotate() { + return Minecraft.getInstance().options.getCameraType() != SableCameraTypes.SUB_LEVEL_VIEW_UNLOCKED; + } + + /** + * @return the current camera rotation quaternion from sub-level riding, stored in dest + */ + @Nullable + public static Quaterniond getEntityOrientation(final Entity cameraEntity, final Function poseProvider, final float partialTicks, final Type type) { + final Quaterniond ridingOrientation = getSubLevelInheritedOrientation(cameraEntity, poseProvider, type); + + if (ridingOrientation != null) { + return ridingOrientation; + } + + final Quaterniondc entityOrientation = EntitySubLevelUtil.getCustomEntityOrientation(cameraEntity, partialTicks); + + if (entityOrientation != null) { + return new Quaterniond(entityOrientation); + } + + return null; + + } + + /** + * @return the current camera rotation quaternion from sub-level riding, stored in dest + */ + + public static Quaterniond getSubLevelInheritedOrientation(final Entity cameraEntity, final Function poseProvider, final Type type) { + if (type == Type.CAMERA && cameraEntity instanceof final Player player && player.isLocalPlayer() && !shouldCameraRotate()) { + return null; + } + + final ActiveSableCompanion helper = Sable.HELPER; + if (cameraEntity instanceof final LivingEntity livingEntity && livingEntity.isSleeping()) { + final Optional sleepingPos = livingEntity.getSleepingPos(); + + if (sleepingPos.isPresent()) { + final BlockPos pos = sleepingPos.get(); + + final SubLevel subLevel = helper.getContaining(livingEntity.level(), pos); + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + return new Quaterniond(clientSubLevel.renderPose().orientation()); + } + } + } + + if (cameraEntity == null) { + return null; + } + + Entity entity = cameraEntity.getVehicle(); + if (entity == null) { + if(cameraEntity instanceof Player) { + return null; + } else if(helper.getContaining(cameraEntity) != null) { + entity = cameraEntity; + } else { + return null; + } + } + + final SubLevel subLevel = helper.getContaining(entity); + if (subLevel == null) { + return null; + } + + return new Quaterniond(poseProvider.apply(subLevel).orientation()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.java new file mode 100644 index 0000000..7c7ae3e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinhelpers.camera.new_camera_types; + +import net.minecraft.client.CameraType; + +public class SableCameraTypes { + public static final CameraType SUB_LEVEL_VIEW = Enum.valueOf(CameraType.class, "SUB_LEVEL_VIEW"); + public static final CameraType SUB_LEVEL_VIEW_UNLOCKED = Enum.valueOf(CameraType.class, "SUB_LEVEL_VIEW_UNLOCKED"); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.java new file mode 100644 index 0000000..47453b1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.mixinhelpers.entity.entity_collision; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.item.Item; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.shapes.EntityCollisionContext; +import net.minecraft.world.phys.shapes.VoxelShape; + +public class TheFasterEntityCollisionContext extends EntityCollisionContext { + + private final Entity entity; + + public TheFasterEntityCollisionContext(final Entity entity) { + super(false, 0.0, ItemStack.EMPTY, atack -> false, entity); + this.entity = entity; + } + + @Override + public boolean isHoldingItem(final Item item) { + return this.entity instanceof final LivingEntity livingEntity && livingEntity.getMainHandItem().is(item); + } + + @Override + public boolean canStandOnFluid(final FluidState fluidState, final FluidState fluidState2) { + return this.entity instanceof final LivingEntity livingEntity && livingEntity.canStandOnFluid(fluidState) && !fluidState.getType().isSame(fluidState2.getType()); + } + + @Override + public boolean isDescending() { + return this.entity.isDescending(); + } + + @Override + public boolean isAbove(final VoxelShape shape, final BlockPos pos, final boolean bl) { + return this.entity.getY() > (double) pos.getY() + shape.max(Direction.Axis.Y) - 1.0E-5F; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.java new file mode 100644 index 0000000..d748a23 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.java @@ -0,0 +1,214 @@ +package dev.ryanhcode.sable.mixinhelpers.entity.entity_rendering.shadows; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.joml.*; + +import java.lang.Math; + +public class SubLevelEntityShadowRenderer { + + /** + * Shadow inflation factor above blocks + */ + public static final double INFLATION = 1.01; + + private static final Direction[] DIRECTIONS = Direction.values(); + private static final Vector3d CENTER = new Vector3d(); + private static final Vector3d ENTITY_RELATIVE_CENTER = new Vector3d(); + private static final Vector3d NORMAL = new Vector3d(); + private static final Vector3d LOCAL_POS = new Vector3d(); + private static final Vector3d ENTITY_LOCAL_POS = new Vector3d(); + private static final Vector3f RENDER_POSITION = new Vector3f(); + private static final BoundingBox3d BOUNDS = new BoundingBox3d(); + private static final BlockPos.MutableBlockPos TEMP = new BlockPos.MutableBlockPos(); + + private static final Vector3d[] CORNERS = new Vector3d[]{ + new Vector3d(), + new Vector3d(), + new Vector3d(), + new Vector3d() + }; + private static final Vector3d[] REVERSE_CORNERS = new Vector3d[]{ + CORNERS[3], + CORNERS[2], + CORNERS[1], + CORNERS[0] + }; + + /** + * Renders the shadows of entities on sub-levels. + */ + public static void renderEntityShadowOnSubLevels(final Entity entity, + final float f, + final float partialTick, + final float shadowRadius, + final VertexConsumer vertexConsumer, + final PoseStack.Pose pose) { + final Quaterniondc customOrientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, partialTick); + final Vec3 entityOrigin = entity.getPosition(partialTick); + Vec3 entityFeet = entityOrigin; + Vector3dc upDir = OrientedBoundingBox3d.UP; + + final Vec3 eyePos = entity.getEyePosition(partialTick); + if (customOrientation != null) { + entityFeet = eyePos.subtract(JOMLConversion.toMojang(customOrientation.transform(new Vector3d(0.0, entity.getEyeHeight(), 0.0)))); + upDir = customOrientation.transform(new Vector3d(upDir)); + } + + final Level level = entity.level(); + final float shadowHeight = Math.min(f / 0.5F, shadowRadius) * 3.0f; // TODO: Why 3.0? + + final BoundingBox3d bounds = new BoundingBox3d( + entityFeet.x - shadowRadius, + entityFeet.y - shadowHeight, + entityFeet.z - shadowRadius, + entityFeet.x + shadowRadius, + entityFeet.y + 0.2, + entityFeet.z + shadowRadius + ); + + final BoundingBox3d localBounds = new BoundingBox3d(); + + if (customOrientation != null) { + bounds.transform(new Matrix4d() + .translate(entityFeet.x, entityFeet.y, entityFeet.z) + .rotate(customOrientation) + .translate(-entityFeet.x, -entityFeet.y, -entityFeet.z), bounds); + } + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(level, bounds); + for (final SubLevel subLevel : intersecting) { + final Pose3dc renderPose = ((ClientSubLevel) subLevel).renderPose(); + bounds.transformInverse(renderPose, localBounds); + + for (final BlockPos subLevelBlockPos : BlockPos.betweenClosed( + Mth.floor(localBounds.minX), + Mth.floor(localBounds.minY), + Mth.floor(localBounds.minZ), + Mth.floor(localBounds.maxX), + Mth.floor(localBounds.maxY), + Mth.floor(localBounds.maxZ) + )) { + final BlockState blockState = level.getBlockState(subLevelBlockPos); + + if (blockState.getRenderShape() == RenderShape.INVISIBLE || level.getMaxLocalRawBrightness(entity.blockPosition()) <= 3) { + continue; + } + + if (!blockState.isCollisionShapeFullBlock(level, subLevelBlockPos)) { + continue; + } + + final VoxelShape voxelShape = blockState.getShape(level, subLevelBlockPos); + if (voxelShape.isEmpty()) { + continue; + } + + final float light = LightTexture.getBrightness(level.dimensionType(), level.getMaxLocalRawBrightness(entity.blockPosition())); + + // render the shadows for the faces of this voxelshape + final BoundingBox3d shapeBounds = BOUNDS.set(voxelShape.bounds()).move(subLevelBlockPos.getX(), subLevelBlockPos.getY(), subLevelBlockPos.getZ(), BOUNDS); + final Vector3d center = shapeBounds.center(CENTER); + final double centerX = center.x; + final double centerY = center.y; + final double centerZ = center.z; + renderPose.transformPosition(center); + + for (final Direction direction : DIRECTIONS) { + // if there's another full block collision shape block in the same direction, stop + final BlockPos offset = TEMP.setWithOffset(subLevelBlockPos, direction); + final BlockState offsetState = level.getBlockState(offset); + if (offsetState.getRenderShape() != RenderShape.INVISIBLE && offsetState.isCollisionShapeFullBlock(level, offset)) { + continue; + } + + if (renderPose.transformNormal(JOMLConversion.atLowerCornerOf(direction.getNormal(), NORMAL)).dot(upDir) < 0.6) { + continue; + } + + if (center.sub(entityFeet.x, entityFeet.y, entityFeet.z, ENTITY_RELATIVE_CENTER).dot(NORMAL) >= 0.0) { + continue; + } + + final double xHalfExtent = (shapeBounds.maxX - shapeBounds.minX) / 2.0; + final double zHalfExtent = (shapeBounds.maxZ - shapeBounds.minZ) / 2.0; + final double yHalfExtent = (shapeBounds.maxY - shapeBounds.minY) / 2.0; + + if (direction.getAxis() == Direction.Axis.Y) { + final double yStep = direction.getStepY() * INFLATION; + CORNERS[0].set(centerX - xHalfExtent, centerY + yStep * yHalfExtent, centerZ + zHalfExtent); + CORNERS[1].set(centerX + xHalfExtent, centerY + yStep * yHalfExtent, centerZ + zHalfExtent); + CORNERS[2].set(centerX + xHalfExtent, centerY + yStep * yHalfExtent, centerZ - zHalfExtent); + CORNERS[3].set(centerX - xHalfExtent, centerY + yStep * yHalfExtent, centerZ - zHalfExtent); + } else if (direction.getAxis() == Direction.Axis.X) { + final double xStep = direction.getStepX() * INFLATION; + CORNERS[0].set(centerX + xStep * xHalfExtent, centerY + yHalfExtent, centerZ + zHalfExtent); + CORNERS[1].set(centerX + xStep * xHalfExtent, centerY - yHalfExtent, centerZ + zHalfExtent); + CORNERS[2].set(centerX + xStep * xHalfExtent, centerY - yHalfExtent, centerZ - zHalfExtent); + CORNERS[3].set(centerX + xStep * xHalfExtent, centerY + yHalfExtent, centerZ - zHalfExtent); + } else if (direction.getAxis() == Direction.Axis.Z) { + final double zStep = direction.getStepZ() * INFLATION; + CORNERS[0].set(centerX + xHalfExtent, centerY + yHalfExtent, centerZ + zStep * zHalfExtent); + CORNERS[1].set(centerX - xHalfExtent, centerY + yHalfExtent, centerZ + zStep * zHalfExtent); + CORNERS[2].set(centerX - xHalfExtent, centerY - yHalfExtent, centerZ + zStep * zHalfExtent); + CORNERS[3].set(centerX + xHalfExtent, centerY - yHalfExtent, centerZ + zStep * zHalfExtent); + } + + // Reverse the order of the corners for negative directions, for flipping the quad + final Vector3dc[] corners = switch (direction.getAxisDirection()) { + case POSITIVE -> CORNERS; + case NEGATIVE -> REVERSE_CORNERS; + }; + + for (final Vector3dc corner : corners) { + renderPose.transformPosition(corner, LOCAL_POS).sub(entityFeet.x, entityFeet.y, entityFeet.z); + + final Vector3d entityLocalPos = ENTITY_LOCAL_POS.set(LOCAL_POS); + if (customOrientation != null) + customOrientation.transformInverse(entityLocalPos); + + final double yDiff = entityLocalPos.y; + final int alpha = Mth.floor((float) Math.max(0.0, (f - (float) -yDiff * 0.5F) * 0.5F * light) * 255.0F); + + LOCAL_POS.add(entityFeet.x - entityOrigin.x, entityFeet.y - entityOrigin.y, entityFeet.z - entityOrigin.z); + + shadowVertex(pose, + vertexConsumer, + alpha << 24 | 0xFFFFFF, + (float) LOCAL_POS.x, + (float) LOCAL_POS.y, + (float) LOCAL_POS.z, + (float) ((entityLocalPos.x + shadowRadius) / (shadowRadius * 2.0F)), + (float) ((entityLocalPos.z + shadowRadius) / (shadowRadius * 2.0F))); + } + } + } + } + } + + private static void shadowVertex(final PoseStack.Pose pose, final VertexConsumer vertexConsumer, final int i, final float f, final float g, final float h, final float j, final float k) { + final Vector3f vector3f = pose.pose().transformPosition(f, g, h, RENDER_POSITION); + vertexConsumer.addVertex(vector3f.x(), vector3f.y(), vector3f.z(), i, j, k, OverlayTexture.NO_OVERLAY, LightTexture.FULL_BRIGHT, 0.0F, 1.0F, 0.0F); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.java new file mode 100644 index 0000000..d3a8124 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.mixinhelpers.entity.entity_riding_sub_level_vehicle; + +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; + +public class EntityRidingSubLevelVehicleHelper { + + /** + * Returns the transformed, or "kicked" position of an entity riding a vehicle in a sub-level. + * We transform the entity by its eye position instead of its normal position. + */ + public static Vec3 kickRidingEntity(final Entity entity, final SubLevel subLevel) { + if (EntitySubLevelUtil.shouldKick(entity)) { + return kickRidingEntity(entity, entity.position(), subLevel); + } + + return entity.position(); + } + + public static Vec3 kickRidingEntity(final Entity entity, final Vec3 position, final SubLevel subLevel) { + final Vec3 eyePosition = entity.getEyePosition(); + final Vec3 feetPosition = entity.position(); + + return subLevel.logicalPose().transformPosition(position.add(eyePosition.subtract(feetPosition))).add(feetPosition.subtract(eyePosition)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.java new file mode 100644 index 0000000..87626a0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixinhelpers.entity.sublevels_block_sky; + +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SubLevelsBlockSkyMixinHelper { + + @ApiStatus.Internal + public static boolean checkSkyWithSublevels(final Level level, final BlockPos pos) { + final Vec3 start = Vec3.atBottomCenterOf(pos); + + final ClipContext context = new ClipContext( + start, + new Vec3(start.x, level.getMaxBuildHeight(), start.z), + ClipContext.Block.COLLIDER, + ClipContext.Fluid.ANY, + CollisionContext.empty() + ); + + ((ClipContextExtension) context).sable$setIgnoreMainLevel(true); + + return level.clip(context).getType() != HitResult.Type.MISS; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.java new file mode 100644 index 0000000..68d22d5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.mixinhelpers.sublevel_render.vanilla; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.SheetedDecalTextureGenerator; +import com.mojang.blaze3d.vertex.VertexConsumer; +import com.mojang.blaze3d.vertex.VertexMultiConsumer; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderBuffers; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.client.resources.model.ModelBakery; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.BlockDestructionProgress; +import net.minecraft.world.level.block.entity.BlockEntity; + +import java.util.Collection; +import java.util.SortedSet; + +public class VanillaSubLevelBlockEntityRenderer implements SubLevelRenderDispatcher.BlockEntityRenderer { + + private final BlockEntityRenderDispatcher blockEntityRenderDispatcher; + private final RenderBuffers renderBuffers; + private final Long2ObjectMap> destructionProgress; + + public VanillaSubLevelBlockEntityRenderer(final BlockEntityRenderDispatcher blockEntityRenderDispatcher, final RenderBuffers renderBuffers, final Long2ObjectMap> destructionProgress) { + this.blockEntityRenderDispatcher = blockEntityRenderDispatcher; + this.renderBuffers = renderBuffers; + this.destructionProgress = destructionProgress; + } + + @Override + public BlockEntityRenderDispatcher getBlockEntityRenderDispatcher() { + return this.blockEntityRenderDispatcher; + } + + @Override + public void renderSingleBE(final BlockEntity blockEntity, final PoseStack poseStack, final float partialTick, final double cameraX, final double cameraY, final double cameraZ) { + final BlockPos pos = blockEntity.getBlockPos(); + MultiBufferSource source = this.renderBuffers.bufferSource(); + + poseStack.pushPose(); + poseStack.translate((double) pos.getX() - cameraX, (double) pos.getY() - cameraY, (double) pos.getZ() - cameraZ); + + final SortedSet destructionProgresses = this.destructionProgress.get(pos.asLong()); + if (destructionProgresses != null && !destructionProgresses.isEmpty()) { + + final int progress = destructionProgresses.last().getProgress(); + if (progress >= 0) { + final PoseStack.Pose posestack$pose = poseStack.last(); + final VertexConsumer vertexconsumer = new SheetedDecalTextureGenerator(this.renderBuffers.crumblingBufferSource().getBuffer(ModelBakery.DESTROY_TYPES.get(progress)), posestack$pose, 1.0F); + source = type -> { + final VertexConsumer consumer = this.renderBuffers.bufferSource().getBuffer(type); + return type.affectsCrumbling() ? VertexMultiConsumer.create(vertexconsumer, consumer) : consumer; + }; + } + } + + this.blockEntityRenderDispatcher.render(blockEntity, partialTick, poseStack, source); + + poseStack.popPose(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.java new file mode 100644 index 0000000..aa51abf --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.java @@ -0,0 +1,121 @@ +package dev.ryanhcode.sable.mixinhelpers.voxel_shape_iteration; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import net.minecraft.core.Direction; +import net.minecraft.world.phys.shapes.BitSetDiscreteVoxelShape; +import net.minecraft.world.phys.shapes.DiscreteVoxelShape; +import org.jetbrains.annotations.ApiStatus; + +import java.util.Iterator; +import java.util.NoSuchElementException; + +@ApiStatus.Internal +public class FastVoxelShapeIterator implements Iterator { + + private final BoundingBox3d boundingBox; + + private final LongArrayDiscreteVoxelShape shape; + private final int xSize; + private final int ySize; + private final int zSize; + private final double[] xValues; + private final double[] yValues; + private final double[] zValues; + + private int x; + private int y; + private int z; + private int k; + private boolean hasNext; + + public FastVoxelShapeIterator(final DiscreteVoxelShape shape, final double[] xValues, final double[] yValues, final double[] zValues) { + final BitSetDiscreteVoxelShape sourceShape = new BitSetDiscreteVoxelShape(shape); + this.xSize = shape.getSize(Direction.Axis.X); + this.ySize = shape.getSize(Direction.Axis.Y); + this.zSize = shape.getSize(Direction.Axis.Z); + this.shape = new LongArrayDiscreteVoxelShape(sourceShape, this.xSize, this.ySize, this.zSize); + this.xValues = xValues; + this.yValues = yValues; + this.zValues = zValues; + + this.boundingBox = new BoundingBox3d(); + } + + public void reset() { + this.shape.reset(); + this.x = 0; + this.y = 0; + this.z = 0; + this.k = -1; + this.hasNext = false; + } + + private void findNext() { + for (; this.y < this.ySize; this.y++) { + for (; this.x < this.xSize; this.x++) { + for (; this.z <= this.zSize; this.z++) { + if (this.shape.isFullWide(this.x, this.y, this.z)) { + if (this.k == -1) { + this.k = this.z; + } + } else if (this.k != -1) { + int m = this.x; + int n = this.y; + this.shape.clearZStrip(this.k, this.z, this.x, this.y); + + while (this.shape.isZStripFull(this.k, this.z, m + 1, this.y)) { + this.shape.clearZStrip(this.k, this.z, m + 1, this.y); + m++; + } + + while (this.shape.isXZRectangleFull(this.x, m + 1, this.k, this.z, n + 1)) { + for (int o = this.x; o <= m; o++) { + this.shape.clearZStrip(this.k, this.z, o, n + 1); + } + + n++; + } + + this.boundingBox.set( + this.xValues[this.x], + this.yValues[this.y], + this.zValues[this.k], + this.xValues[m + 1], + this.yValues[n + 1], + this.zValues[this.z]); + this.hasNext = true; + this.k = -1; + return; + } + } + + this.k = -1; + this.z = 0; + } + this.x = 0; + } + this.y = 0; + } + + @Override + public boolean hasNext() { + if (!this.hasNext) { + this.findNext(); + } + return this.hasNext; + } + + @Override + public BoundingBox3dc next() { + if (!this.hasNext) { + this.findNext(); + if (!this.hasNext) { + throw new NoSuchElementException(); + } + } + + this.hasNext = false; + return this.boundingBox; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.java b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.java new file mode 100644 index 0000000..ca89082 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.java @@ -0,0 +1,135 @@ +package dev.ryanhcode.sable.mixinhelpers.voxel_shape_iteration; + +import net.minecraft.core.Direction; +import net.minecraft.world.phys.shapes.DiscreteVoxelShape; +import org.jetbrains.annotations.ApiStatus; + +import java.util.Arrays; +import java.util.BitSet; + +/** + * This manually replicates the behavior from {@link BitSet} with all checks removed. + * A second internal array exists for resetting to the original state. + * + * @author Ocelot + */ +@ApiStatus.Internal +public class LongArrayDiscreteVoxelShape extends DiscreteVoxelShape { + + private static final int ADDRESS_BITS_PER_WORD = 6; + private static final int BITS_PER_WORD = 1 << ADDRESS_BITS_PER_WORD; + private static final long WORD_MASK = 0xffffffffffffffffL; + + private final long[] baseWords; + private final long[] words; + + public LongArrayDiscreteVoxelShape(final DiscreteVoxelShape shape, final int xSize, final int ySize, final int zSize) { + super(xSize, ySize, zSize); + this.words = new long[wordIndex(xSize * ySize * zSize - 1) + 1]; + for (int x = 0; x < xSize; x++) { + for (int y = 0; y < ySize; y++) { + for (int z = 0; z < zSize; z++) { + if (shape.isFull(x, y, z)) { + final int bitIndex = this.getIndex(x, y, z); + this.words[wordIndex(bitIndex)] |= (1L << bitIndex); + } + } + } + } + this.baseWords = Arrays.copyOf(this.words, this.words.length); + } + + private static int wordIndex(final int bitIndex) { + return bitIndex >> ADDRESS_BITS_PER_WORD; + } + + private int getIndex(final int x, final int y, final int z) { + return (x * this.ySize + y) * this.zSize + z; + } + + private int nextClearBit(final int fromIndex) { + int u = wordIndex(fromIndex); + long word = ~words[u] & (WORD_MASK << fromIndex); + while (true) { + if (word != 0) { + return (u * BITS_PER_WORD) + Long.numberOfTrailingZeros(word); + } + if (++u == this.words.length) { + return this.words.length * BITS_PER_WORD; + } + word = ~words[u]; + } + } + + private void clear(final int fromIndex, int toIndex) { + final int startWordIndex = wordIndex(fromIndex); + int endWordIndex = wordIndex(toIndex - 1); + if (endWordIndex >= this.words.length) { + toIndex = BITS_PER_WORD * (this.words.length - 1) + (BITS_PER_WORD - Long.numberOfLeadingZeros(words[this.words.length - 1])); + endWordIndex = this.words.length - 1; + } + + final long firstWordMask = WORD_MASK << fromIndex; + final long lastWordMask = WORD_MASK >>> -toIndex; + if (startWordIndex == endWordIndex) { + // Case 1: One word + this.words[startWordIndex] &= ~(firstWordMask & lastWordMask); + } else { + // Case 2: Multiple words + // Handle first word + this.words[startWordIndex] &= ~firstWordMask; + + // Handle intermediate words, if any + for (int i = startWordIndex + 1; i < endWordIndex; i++) { + this.words[i] = 0; + } + + // Handle last word + this.words[endWordIndex] &= ~lastWordMask; + } + } + + public void reset() { + System.arraycopy(this.baseWords, 0, this.words, 0, this.words.length); + } + + public boolean isZStripFull(final int i, final int j, final int k, final int l) { + return k < this.xSize && l < this.ySize && this.nextClearBit(this.getIndex(k, l, i)) >= this.getIndex(k, l, j); + } + + public boolean isXZRectangleFull(final int i, final int j, final int k, final int l, final int m) { + for (int n = i; n < j; n++) { + if (!this.isZStripFull(k, l, n, m)) { + return false; + } + } + + return true; + } + + public void clearZStrip(final int i, final int j, final int k, final int l) { + this.clear(this.getIndex(k, l, i), this.getIndex(k, l, j)); + } + + @Override + public boolean isFull(final int x, final int y, final int z) { + final int bitIndex = this.getIndex(x, y, z); + final int wordIndex = wordIndex(bitIndex); + return (wordIndex < this.words.length) && (this.words[wordIndex] & (1L << bitIndex)) != 0; + } + + @Override + public void fill(final int i, final int j, final int k) { + throw new UnsupportedOperationException(); + } + + @Override + public int firstFull(final Direction.Axis axis) { + throw new UnsupportedOperationException(); + } + + @Override + public int lastFull(final Direction.Axis axis) { + throw new UnsupportedOperationException(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.java new file mode 100644 index 0000000..fc00f15 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinterface; + +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; + +public interface BlockEntityRenderDispatcherExtension { + void sable$setCameraPosition(@Nullable Vec3 pos); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/EntityExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/EntityExtension.java new file mode 100644 index 0000000..10a94da --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/EntityExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.mixinterface; + +import net.minecraft.world.phys.Vec3; + +public interface EntityExtension { + void sable$setPosSuperRaw(Vec3 pos); + + Vec3 sable$vanillaCollide(Vec3 vec3); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.java new file mode 100644 index 0000000..235ba06 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.mixinterface.block_properties; + +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinition; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; + +public interface BlockStateExtension { + void sable$loadProperties(final StateDefinition stateDefinition, PhysicsBlockPropertiesDefinition definition); + + T sable$getProperty(PhysicsBlockPropertyTypes.PhysicsBlockPropertyType type); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.java new file mode 100644 index 0000000..0c44a4c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.camera.camera_zoom; + +public interface CameraZoomExtension { + float sable$getZoomAmount(); + + void sable$setZoomAmount(float sable$zoomAmount); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.java new file mode 100644 index 0000000..189a889 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.mixinterface.clip_overwrite; + +import dev.ryanhcode.sable.sublevel.SubLevel; +import org.jetbrains.annotations.Nullable; + +import java.util.function.Predicate; + +public interface ClipContextExtension { + @Nullable SubLevel sable$getIgnoredSubLevel(); + + @Nullable Predicate sable$getSubLevelIgnoring(); + + void sable$setIgnoredSubLevel(@Nullable SubLevel sable$ignoredSubLevel); + + void sable$setSubLevelIgnoring(@Nullable Predicate sable$subLevelIgnoring); + + void sable$setIgnoreMainLevel(boolean ignoreWorld); + + boolean sable$isIgnoreMainLevel(); + + void sable$setDoNotProject(boolean doNotProject); + + boolean sable$doNotProject(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.java new file mode 100644 index 0000000..9cfbcf4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.mixinterface.clip_overwrite; + +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.Function; + +public interface LevelPoseProviderExtension { + void sable$pushPoseSupplier(Function supplier); + + void sable$popPoseSupplier(); + + Pose3dc sable$getPose(SubLevel subLevel); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.java new file mode 100644 index 0000000..488fc7d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.java @@ -0,0 +1,5 @@ +package dev.ryanhcode.sable.mixinterface.compatibility.iris; + +public interface ExtendedShaderExtension { + void sable$refreshModelMatrices(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.java new file mode 100644 index 0000000..23829f1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.mixinterface.dynamic_directional_shading; + +public interface ModelBlockRendererCacheExtension { + + void sable$setOnSubLevel(boolean onSubLevel); + + boolean sable$getOnSubLevel(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.java new file mode 100644 index 0000000..318552d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels; + +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; + +public interface EntityStickExtension { + + void sable$plotLerpTo(Vec3 pos, int lerpSteps); + + void sable$setPlotPosition(@Nullable Vec3 position); + + @Nullable Vec3 sable$getPlotPosition(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.java new file mode 100644 index 0000000..38c4fbd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels; + +import net.minecraft.world.phys.Vec3; + +public interface LivingEntityStickExtension extends EntityStickExtension { + void sable$setupLerp(); + + void sable$applyLerp(); + + Vec3 sable$getLerpTarget(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.java new file mode 100644 index 0000000..6509509 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.packet_mixin; + +public interface PacketActuallyInSubLevelExtension { + void sable$setActuallyInSubLevel(boolean actuallyInSubLevel); + + boolean sable$isActuallyInSubLevel(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.java new file mode 100644 index 0000000..35fe7be --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.entity.entities_stick_sublevels.player; + +import net.minecraft.server.level.ServerPlayer; + +public interface ServerboundMovePlayerPacketExtension { + void sable$handle(ServerPlayer player); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.java new file mode 100644 index 0000000..7d34f59 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinterface.entity.entity_collision; + +import dev.ryanhcode.sable.mixinhelpers.entity.entity_collision.TheFasterEntityCollisionContext; + +public interface EntityExtension { + + TheFasterEntityCollisionContext sable$getCollisionContext(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.java new file mode 100644 index 0000000..36b8940 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; + +import java.util.UUID; + +@ApiStatus.Internal +public interface EntityMovementExtension { + SubLevelEntityCollision.CollisionInfo sable$getCollisionInfo(); + + /** + * @return the sub-level the entity is standing on or locked to + */ + SubLevel sable$getTrackingSubLevel(); + + UUID sable$getLastTrackingSubLevelID(); + + void sable$setPosField(Vec3 vec3); + + void sable$setTrackingSubLevel(SubLevel subLevel); + + void sable$setLastTrackingSubLevelID(UUID uuid); + + /** + * @return the position that the state returned by getInBlockState was gotten from + */ + BlockPos sable$getInBlockStatePos(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.java new file mode 100644 index 0000000..46c1f34 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision; + +import dev.ryanhcode.sable.api.math.LevelReusedVectors; + +public interface LevelExtension { + + LevelReusedVectors sable$getJOMLSink(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.java new file mode 100644 index 0000000..c7c29a8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision; + +import org.joml.Vector3d; + +public interface LivingEntityMovementExtension { + Vector3d sable$getInheritedVelocity(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.java new file mode 100644 index 0000000..dc880f0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.entity.pathfinding; + +import net.minecraft.world.level.Level; + +public interface PathExtension { + void sable$setLocalPath(Level level, boolean project); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.java new file mode 100644 index 0000000..1b37c93 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.mixinterface.particle; + +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.phys.Vec3; + +public interface ParticleExtension { + + void sable$initialKickOut(); + + void sable$moveWithInheritedVelocity(); + + void sable$setTrackingSubLevel(ClientSubLevel subLevel, Vec3 particlePosition); + + SubLevel sable$getTrackingSubLevel(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.java new file mode 100644 index 0000000..0eeaf83 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.physics; + +public interface ServerLevelSceneExtension { + int sable$getSceneID(); + + void sable$setSceneID(int sable$sceneID); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.java new file mode 100644 index 0000000..f9ecc67 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.mixinterface.player_freezing; + +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3dc; + +import java.util.UUID; + +public interface PlayerFreezeExtension { + @Nullable UUID sable$getFrozenToSubLevel(); + + @Nullable Vector3dc sable$getFrozenToSubLevelAnchor(); + + void sable$tickStopFreezing(); + + void sable$freezeTo(UUID subLevelID, Vector3dc localPosition); + + void sable$teleport(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.java new file mode 100644 index 0000000..fb31cea --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.mixinterface.plot; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; + +public interface SubLevelContainerHolder { + + SubLevelContainer sable$getPlotContainer(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.java new file mode 100644 index 0000000..5ca7f71 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.mixinterface.plot.serialization; + +import java.util.Collection; + +public interface ChunkAccessExtension { + + /** + * Sets the file names of the sub-levels that this chunk holder contains. + */ + void sable$setContainingSubLevels(final Collection subLevels); + + /** + * @return the file names of the sub-levels that this chunk holder contains + */ + Collection sable$getContainingSubLevels(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.java new file mode 100644 index 0000000..15f061e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinterface.plot.serialization; + +import net.minecraft.world.ticks.LevelChunkTicks; + +public interface LevelChunkTicksExtension { + + void sable$copy(final LevelChunkTicks ticks); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.java new file mode 100644 index 0000000..d029687 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.mixinterface.respawn_point; + +import it.unimi.dsi.fastutil.Pair; +import net.minecraft.server.level.ServerPlayer; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.UUID; + +public interface ServerPlayerRespawnExtension { + @Nullable UUID sable$getRespawnPoint(); + + void sable$takeQueuedFreezeFrom(ServerPlayer oldPlayer); + + @Nullable Pair sable$getQueuedFreeze(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.java new file mode 100644 index 0000000..8396524 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.java @@ -0,0 +1,6 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.fancy; + +public interface ProgramExtension { + + String sable$getSource(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.java new file mode 100644 index 0000000..bd1c57a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.sodium; + +import net.caffeinemc.mods.sodium.client.render.viewport.CameraTransform; +import org.jetbrains.annotations.Nullable; + +public interface DefaultChunkRendererExtension { + void sable$setCameraTransform(@Nullable CameraTransform transform); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.java new file mode 100644 index 0000000..6563f6e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.sodium; + +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import org.jetbrains.annotations.Nullable; + +public interface OcclusionCullerExtension { + void sable$setSubLevel(@Nullable ClientSubLevel subLevel); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.java new file mode 100644 index 0000000..79c7f4b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.sodium; + +import net.caffeinemc.mods.sodium.client.render.chunk.ChunkRenderer; +import net.caffeinemc.mods.sodium.client.render.chunk.RenderSection; +import net.caffeinemc.mods.sodium.client.render.chunk.occlusion.OcclusionCuller; +import org.jetbrains.annotations.Nullable; + +public interface RenderSectionManagerExtension { + @Nullable RenderSection sable$getRenderSection(int sectionX, int sectionY, int sectionZ); + + void sable$setRenderSectionDirty(int sectionX, int sectionY, int sectionZ, boolean priority); + + OcclusionCuller sable$getOcclusionCuller(); + + ChunkRenderer sable$getChunkRenderer(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.java new file mode 100644 index 0000000..ad49764 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.sodium; + +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.sodium.SubLevelRenderSectionManager; +import org.jetbrains.annotations.Nullable; + +public interface SodiumWorldRendererExtension { + + @Nullable SubLevelRenderSectionManager sable$getSubLevelRenderSectionManager(ClientSubLevel subLevel); + + void sable$freeRenderSectionManager(ClientSubLevel subLevel); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.java new file mode 100644 index 0000000..3870d12 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.mixinterface.sublevel_render.vanilla; + +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; + +public interface RenderSectionExtension { + + void sable$addDirtyListener(DirtyListener listener); + + void sable$setListening(boolean listening); + + @FunctionalInterface + interface DirtyListener { + + void markDirty(SectionRenderDispatcher.RenderSection section); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.java new file mode 100644 index 0000000..1092535 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.mixinterface.toast; + +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; + +public interface SableToastableServer { + void sable$reportSubLevelLoadFailure(GlobalSavedSubLevelPointer data); + + void sable$reportSubLevelSaveFailure(SubLevelData data); + + void sable$reportSubLevelPhysicsFailure(ServerSubLevel data); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.java new file mode 100644 index 0000000..8a28cbe --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.mixinterface.udp; + +import io.netty.channel.Channel; + +public interface ConnectionExtension { + + void sable$setUDPChannel(final Channel channel); + + Channel sable$getUDPChannel(); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.java new file mode 100644 index 0000000..5507707 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.java @@ -0,0 +1,12 @@ +package dev.ryanhcode.sable.mixinterface.udp; + +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import io.netty.channel.Channel; +import org.jetbrains.annotations.Nullable; + +public interface ServerConnectionListenerExtension { + void sable$setupUDPServer(Channel channel); + + @Nullable + SableUDPServer sable$getServer(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.java new file mode 100644 index 0000000..e17ccb2 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.java @@ -0,0 +1,12 @@ +package dev.ryanhcode.sable.mixinterface.voxel_shape_iteration; + +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import org.jetbrains.annotations.ApiStatus; + +import java.util.Iterator; + +@ApiStatus.Internal +public interface FastVoxelShapeIterable { + + Iterator sable$allBoxes(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.java new file mode 100644 index 0000000..00480b9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.mixinterface.water_occlusion; + +public interface CameraWaterOcclusionExtension { + void sable$setIgnoreOcclusion(boolean ignore); + + boolean sable$isIgnoreOcclusion(); + + boolean sable$isOccluded(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.java new file mode 100644 index 0000000..51a5b61 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.water_occlusion; + +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; + +public interface WaterOcclusionContainerHolder { + WaterOcclusionContainer sable$getWaterOcclusionContainer(); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.java b/common/src/main/java/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.java new file mode 100644 index 0000000..81e4b30 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.mixinterface.world_border; + +import net.minecraft.world.level.Level; + +public interface WorldBorderExtension { + void sable$setLevel(Level level); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.java b/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.java new file mode 100644 index 0000000..ec4d9e5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.java @@ -0,0 +1,137 @@ +package dev.ryanhcode.sable.network.client; + +import dev.ryanhcode.sable.SableClientConfig; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.network.packets.PacketReceiveMode; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.ChatFormatting; +import net.minecraft.client.Minecraft; +import net.minecraft.util.Mth; +import org.jetbrains.annotations.ApiStatus; + +import java.util.function.Consumer; + +/** + * TODO: there's too large of a window that we're okay with being within for latency / delay. + */ +public class ClientSableInterpolationState { + public static final boolean RENDER_INTERPOLATION_BOUNDS = false; + + private final Minecraft minecraft = Minecraft.getInstance(); + + /** + * The most recent tick we have received from the server + */ + private double mostRecentTick = -1; + + /** + * If we have received any update so far + */ + private boolean receivedFirstUpdate; + + /** + * The current stepping interpolation tick. This *should* be as aligned as possible with the server tick, + * so that we can step back by the delay in ticks to use as a pointer for the snapshot interpolation. + */ + private double interpolationTick; + + /** + * The running estimate we have of the server tick speed, as a multiplier of the 20tps expected + */ + private double estimatedServerTickSpeed; + + /** + * The latest information from the server we have on the spacing between the latest server update and the previous one + */ + private float serverMsFromLastUpdate; + + /** + * If we should be receiving consistent updates from the server regarding the interpolation tick + */ + private boolean stopped = true; + + /** + * The receive mode of the most recent packet, for debug rendering + */ + private PacketReceiveMode receivingMode = PacketReceiveMode.UNKNOWN; + + private double latestDelay; + public double mostRecentInterpolationTick; + public double lastInterpolationTick; + + public void tick() { + if (!this.receivedFirstUpdate) { + return; + } + + final float rate = this.minecraft.level.tickRateManager().tickrate(); + final float expectedMsBetween = 1000.0f / rate; + + if (!this.stopped) { + this.estimatedServerTickSpeed = Mth.lerp(0.05, this.estimatedServerTickSpeed, expectedMsBetween / Math.max(1, this.serverMsFromLastUpdate)); + } + + this.interpolationTick += this.estimatedServerTickSpeed; + this.interpolationTick = Mth.clamp(this.interpolationTick, this.mostRecentTick - this.getInterpolationDelay(), this.mostRecentTick + 1.5); + + this.latestDelay = this.mostRecentTick - this.interpolationTick + this.getInterpolationDelay(); + + this.lastInterpolationTick = this.mostRecentInterpolationTick; + this.mostRecentInterpolationTick = this.getTickPointer(); + } + + /** + * The interpolation tick at which we are sampling from the snapshot buffers at + */ + public double getTickPointer() { + return this.interpolationTick - this.getInterpolationDelay(); + } + + public void receiveSnapshot(final ClientSubLevel clientSubLevel, final int gameTick, final Pose3dc data, final PacketReceiveMode packetReceiveMode) { + this.receivingMode = packetReceiveMode; + clientSubLevel.getInterpolator().receiveSnapshot(gameTick, data); + } + + @ApiStatus.Internal + public void addDebugInfo(final Consumer consumer) { + consumer.accept(String.format("Delay: %.2ft", this.latestDelay)); + consumer.accept(String.format("Estimated Send-rate: %.2ft", this.estimatedServerTickSpeed)); + + if (this.interpolationTick - this.getInterpolationDelay() > this.mostRecentTick) { + consumer.accept(ChatFormatting.RED + "Past most-recent tick"); + } + + consumer.accept("Interpolation " + (this.stopped ? "stopped" : "running")); + + final Minecraft minecraft = Minecraft.getInstance(); + if (minecraft.getSingleplayerServer() != null) { + consumer.accept("Networking locally"); + } else { + consumer.accept("Networking through " + this.receivingMode.name()); + } + } + + public double getInterpolationDelay() { +// return 1.5f; + return SableClientConfig.INTERPOLATION_DELAY.getAsDouble(); + } + + public void receiveInfo(final int msSinceLast, final int gameTick, final boolean stopped) { + if (gameTick < this.mostRecentTick) return; + + if (!this.receivedFirstUpdate || this.stopped && !stopped) { + this.interpolationTick = gameTick; + this.estimatedServerTickSpeed = 1.0f; + + this.receivedFirstUpdate = true; + } + + this.stopped = stopped; + this.mostRecentTick = gameTick; + this.serverMsFromLastUpdate = msSinceLast; + } + + public boolean isStopped() { + return this.stopped; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.java b/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.java new file mode 100644 index 0000000..ad8412f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.java @@ -0,0 +1,68 @@ +package dev.ryanhcode.sable.network.client; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.index.SableAttributes; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.network.packets.tcp.ServerboundPunchSubLevelPacket; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.network.protocol.common.ServerboundCustomPayloadPacket; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import org.joml.Vector3d; + +public class ClientSubLevelPunchHelper { + /** + * @param testCreativeBreaking whether to prevent pushing if a creative player will destroy the block + */ + public static void clientTryPunch(final BlockHitResult hitResult, final Level level, final boolean testCreativeBreaking) { + final Minecraft minecraft = Minecraft.getInstance(); + final LocalPlayer player = minecraft.player; + if (player.blockActionRestricted(level, hitResult.getBlockPos(), minecraft.gameMode.getPlayerMode()) || + player.getCooldowns().isOnCooldown(player.getMainHandItem().getItem())) { + return; + } + + if (player.isCreative() && testCreativeBreaking) { + final BlockState blockState = minecraft.level.getBlockState(hitResult.getBlockPos()); + + if (player.getMainHandItem().getItem().canAttackBlock(blockState, minecraft.level, hitResult.getBlockPos(), player)) { + return; + } + } + + final Vector3d hitPosition = JOMLConversion.toJOML(hitResult.getLocation()); + final Vector3d hitDirection = JOMLConversion.toJOML(player.getLookAngle()); + + final SubLevel targetSubLevel = Sable.HELPER.getContaining(level, hitPosition); + final SubLevel trackingSubLevel = ((EntityMovementExtension)player).sable$getTrackingSubLevel(); + + // do not try to punch the sublevel you are standing on. do not pass go. do not collect $200 + if (targetSubLevel == trackingSubLevel) { + return; + } + + // if we're punching a sub-level, store the hit position relative to its clientside COM + if (targetSubLevel != null) { + targetSubLevel.lastPose().transformPosition(hitPosition); + hitPosition.sub(targetSubLevel.lastPose().position()); + } + + // if we're standing on a sub-level, store the hit direction relative to its clientside orientation + if (trackingSubLevel != null) { + trackingSubLevel.lastPose().transformNormalInverse(hitDirection); + } + + final int customCooldown = SableAttributes.getPushCooldownTicks(player); + if (customCooldown > 0) { + player.getCooldowns().addCooldown(player.getMainHandItem().getItem(), customCooldown); + } + + minecraft.getConnection().send(new ServerboundCustomPayloadPacket(new ServerboundPunchSubLevelPacket( + hitResult.getBlockPos(), hitPosition, hitDirection + ))); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.java b/common/src/main/java/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.java new file mode 100644 index 0000000..22b711a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.network.client; + +import com.google.common.collect.Queues; +import com.mojang.logging.LogUtils; +import dev.ryanhcode.sable.Sable; + +import java.util.Queue; + +public class SableClientNetworkEventLoop { + private final Queue pendingRunnables = Queues.newConcurrentLinkedQueue(); + + public void tell(final Runnable runnable) { + this.pendingRunnables.add(runnable); + } + + public void runAllTasks() { + while (this.pollTask()); + } + + public boolean pollTask() { + final Runnable runnable = this.pendingRunnables.peek(); + if (runnable == null) { + return false; + } else { + this.doRunTask(this.pendingRunnables.remove()); + return true; + } + } + + protected void doRunTask(final Runnable runnable) { + try { + runnable.run(); + } catch (final Exception var3) { + Sable.LOGGER.error(LogUtils.FATAL_MARKER, "Error executing packet handle task", var3); + } + } + + public void clear() { + this.pendingRunnables.clear(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.java b/common/src/main/java/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.java new file mode 100644 index 0000000..c68db37 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.java @@ -0,0 +1,139 @@ +package dev.ryanhcode.sable.network.client; + +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.util.Mth; +import org.jetbrains.annotations.NotNull; + +import java.util.Comparator; + + +/** + * Manages snapshot interpolation for client sub-levels. + */ +public class SubLevelSnapshotInterpolator { + + /** + * The buffer of snapshots to interpolate between + */ + public final ObjectArrayList buffer = new ObjectArrayList<>(); + /** + * The current running interpolated snapshot + */ + private final Pose3d runningSnapshot = new Pose3d(); + private boolean stopped; + + public SubLevelSnapshotInterpolator(final Pose3d pose) { + this.runningSnapshot.set(pose); + } + + public void getSampleAt(final double gameTick, final Pose3d dest) { + // Find the two snapshots to interpolate between + int beforeIndex = -1; + Snapshot before = null; + Snapshot after = null; + + for (int i = 0; i < this.buffer.size(); i++) { + final Snapshot snapshot = this.buffer.get(i); + if (snapshot.gameTick == gameTick) { + dest.set(snapshot.pose); + return; + } + + if (snapshot.gameTick < gameTick) { + beforeIndex = i; + before = snapshot; + } else if (snapshot.gameTick > gameTick) { + after = snapshot; + break; + } + } + + // If we don't have two snapshots to interpolate between, we can't interpolate + if (before == null || after == null) { + if (before != null) { + dest.set(before.pose); + + // dead reckon for a single tick max + final int beforeBeforeIndex = beforeIndex - 1; + if (beforeBeforeIndex >= 0 && !this.stopped) { + final Snapshot beforeBefore = this.buffer.get(beforeBeforeIndex); + + final double deadReckoningTicks = Mth.clamp(gameTick - before.gameTick, 0, 1); + final double fraction = deadReckoningTicks / (before.gameTick - beforeBefore.gameTick); + + dest.set(beforeBefore.pose) + .lerp(before.pose, 1.0 + fraction); + } + } else if (after != null) { + dest.set(after.pose); + } + } else { + // Calculate the interpolation factor + final double factor = (gameTick - before.gameTick) / (double) (after.gameTick - before.gameTick); + + // Apply the interpolated snapshot + before.pose.lerp(after.pose, factor, dest); + } + } + + public void receiveSnapshot(final int gameTick, final Pose3dc data) { + synchronized (this.buffer) { + if (this.buffer.isEmpty() || this.buffer.getLast().gameTick != gameTick) + this.buffer.add(new Snapshot(gameTick, data)); + } + + this.stopped = false; + } + + public void setFirstPoses(final Pose3dc poseA, final Pose3dc poseB) { + this.runningSnapshot.rotationPoint().set(poseA.rotationPoint()); + this.runningSnapshot.position().set(poseB.position()); + } + + public Pose3dc getInterpolatedPose() { + return this.runningSnapshot; + } + + public void receiveStop() { + this.stopped = true; + } + + public void splitFrom(final SubLevelSnapshotInterpolator other, @NotNull final Pose3dc pose) { + for (final Snapshot otherSnapshot : other.buffer) { + if (otherSnapshot.gameTick >= this.buffer.getFirst().gameTick) continue; + final Pose3dc containingPose = otherSnapshot.pose; + final Pose3d madeUpPastPose = new Pose3d(pose); + + madeUpPastPose.orientation().set(containingPose.orientation()); + containingPose.transformPosition(madeUpPastPose.position()); + + this.buffer.add(new Snapshot(otherSnapshot.gameTick, madeUpPastPose)); + } + + // sort the buffer by timestamp + this.buffer.sort(Comparator.comparingDouble(a -> a.gameTick)); + } + + /** + * Ticks the snapshot interpolator + */ + public void tick(final double backTick) { + // Remove old snapshots + final int bufferStartTime = (int) (backTick - 6); + while (!this.buffer.isEmpty() && this.buffer.getFirst().gameTick < bufferStartTime) { + this.buffer.removeFirst(); + } + + // If we have no snapshots, we can't interpolate + if (this.buffer.isEmpty()) { + return; + } + + this.getSampleAt(backTick, this.runningSnapshot); + } + + public record Snapshot(int gameTick, Pose3dc pose) { + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.java new file mode 100644 index 0000000..1fd6986 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.java @@ -0,0 +1,139 @@ +package dev.ryanhcode.sable.network.packets; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import io.netty.buffer.ByteBuf; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import org.joml.Vector3f; +import org.joml.Vector3fc; + +import java.util.List; +import java.util.Objects; + +public final class ClientboundSableSnapshotDualPacket implements SableUDPPacket, SableTCPPacket { + public static final Type TYPE = new Type<>(Sable.sablePath("snapshot_packet")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.encode(buf), ClientboundSableSnapshotDualPacket::new); + private final int interpolationTick; + private final List entries; + + public ClientboundSableSnapshotDualPacket(final int interpolationTick, final List entries) { + this.interpolationTick = interpolationTick; + this.entries = entries; + } + + + @Override + public void handle(final PacketContext context) { + this.handleClient(context.level(), PacketReceiveMode.TCP); + } + + @Override + public Type type() { + return TYPE; + } + + public record Entry(long plotCoordinate, Pose3d pose, Vector3fc linearVelocity, + Vector3fc angularVelocity) { + + } + + public ClientboundSableSnapshotDualPacket(final ByteBuf buf) { + this(buf.readInt(), readList(buf)); + } + + private static List readList(final ByteBuf byteBuf) { + final FriendlyByteBuf buf = ((FriendlyByteBuf) byteBuf); + final List list = new ObjectArrayList<>(); + + final int length = buf.readVarInt(); + + for (int i = 0; i < length; i++) { + list.add(new Entry(buf.readLong(), SableBufferUtils.read(buf, new Pose3d()), SableBufferUtils.read(buf, new Vector3f()), SableBufferUtils.read(buf, new Vector3f()))); + } + + return list; + } + + public void encode(final ByteBuf byteBuf) { + final FriendlyByteBuf buf = ((FriendlyByteBuf) byteBuf); + + buf.writeInt(this.interpolationTick); + buf.writeVarInt(this.entries.size()); + for (final Entry entry : this.entries) { + buf.writeLong(entry.plotCoordinate); + SableBufferUtils.write(buf, entry.pose); + SableBufferUtils.write(buf, entry.linearVelocity); + SableBufferUtils.write(buf, entry.angularVelocity); + } + } + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.SNAPSHOT; + } + + @Override + public void handleClient(final Level level) { + this.handleClient(level, PacketReceiveMode.UDP); + } + + private void handleClient(final Level level, final PacketReceiveMode packetReceiveMode) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level movement packet for a level without a sub-level container"); + return; + } + + for (final Entry entry : this.entries) { + final SubLevel subLevel = container.getSubLevel(ChunkPos.getX(entry.plotCoordinate), ChunkPos.getZ(entry.plotCoordinate)); + + if (!(subLevel instanceof final ClientSubLevel clientSubLevel)) { + Sable.LOGGER.error("Received a sub-level movement packet for a non-existent sub-level"); + continue; + } + + ((ClientSubLevelContainer) container).getInterpolation() + .receiveSnapshot(clientSubLevel, this.interpolationTick, entry.pose, packetReceiveMode); + } + } + + public List entries() { + return this.entries; + } + + @Override + public boolean equals(final Object obj) { + if (obj == this) return true; + if (obj == null || obj.getClass() != this.getClass()) return false; + final var that = (ClientboundSableSnapshotDualPacket) obj; + return Objects.equals(this.entries, that.entries); + } + + @Override + public int hashCode() { + return Objects.hash(this.entries); + } + + @Override + public String toString() { + return "ClientboundSableSnapshotDualPacket[" + + "entries=" + this.entries + ']'; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.java new file mode 100644 index 0000000..eee126e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.java @@ -0,0 +1,69 @@ +package dev.ryanhcode.sable.network.packets; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import foundry.veil.api.network.handler.PacketContext; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.Level; + +public final class ClientboundSableSnapshotInfoDualPacket implements SableUDPPacket, SableTCPPacket { + public static final Type TYPE = new Type<>(Sable.sablePath("snapshot_info_packet")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.encode(buf), ClientboundSableSnapshotInfoDualPacket::new); + private final int msSinceLast; + private final int gameTick; + private final boolean stopped; + + public ClientboundSableSnapshotInfoDualPacket(final int msSinceLast, final int gameTick, final boolean stopped) { + this.msSinceLast = msSinceLast; + this.gameTick = gameTick; + this.stopped = stopped; + } + + public ClientboundSableSnapshotInfoDualPacket(final ByteBuf buf) { + this(buf.readInt(), buf.readInt(), buf.readBoolean()); + } + + @Override + public void handle(final PacketContext context) { + this.handleClient(context.level()); + } + + @Override + public Type type() { + return TYPE; + } + + public void encode(final ByteBuf byteBuf) { + final FriendlyByteBuf buf = ((FriendlyByteBuf) byteBuf); + + buf.writeInt(this.msSinceLast); + buf.writeInt(this.gameTick); + buf.writeBoolean(this.stopped); + } + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.SNAPSHOT_INFO; + } + + @Override + public void handleClient(final Level level) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level movement packet for a level without a sub-level container"); + return; + } + + ((ClientSubLevelContainer) container).getInterpolation() + .receiveInfo(this.msSinceLast, this.gameTick, this.stopped); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/PacketReceiveMode.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/PacketReceiveMode.java new file mode 100644 index 0000000..07f47d4 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/PacketReceiveMode.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.network.packets; + +public enum PacketReceiveMode { + TCP, + UDP, + UNKNOWN +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.java new file mode 100644 index 0000000..7d965ea --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; + +import java.util.Objects; + +public record ClientboundChangeBoundsSubLevelPacket(long plotCoordinate, + BoundingBox3ic bounds) implements SableTCPPacket { + + public static final Type TYPE = new CustomPacketPayload.Type<>(Sable.sablePath("change_bounds_sublevel")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundChangeBoundsSubLevelPacket::read); + + private static ClientboundChangeBoundsSubLevelPacket read(final FriendlyByteBuf buf) { + return new ClientboundChangeBoundsSubLevelPacket(buf.readLong(), SableBufferUtils.read(buf, new BoundingBox3i())); + } + + private void write(final FriendlyByteBuf buf) { + buf.writeLong(this.plotCoordinate); + SableBufferUtils.write(buf, this.bounds); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Level level = context.level(); + + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level tracking packet for a level without a sub-level container"); + return; + } + + final SubLevel subLevel = container.getSubLevel(ChunkPos.getX(this.plotCoordinate), ChunkPos.getZ(this.plotCoordinate)); + if (subLevel == null) { + Sable.LOGGER.error("Cannot change bounds of nonexistent sub-level plot"); + return; + } + + final LevelPlot plot = subLevel.getPlot(); + final BoundingBox3ic previousBoundingBox = new BoundingBox3i(plot.getBoundingBox()); + + plot.setBoundingBox(this.bounds); + + if (!Objects.equals(previousBoundingBox, this.bounds)) { + plot.getSubLevel().onPlotBoundsChanged(); + } + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.java new file mode 100644 index 0000000..056b887 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.java @@ -0,0 +1,44 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.core.UUIDUtil; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import org.jetbrains.annotations.Nullable; + +import java.util.Optional; +import java.util.UUID; + +public record ClientboundChangeSubLevelNamePacket(UUID subLevelID, @Nullable String name) implements SableTCPPacket { + public static Type TYPE = new Type<>(Sable.sablePath("change_sub_level_name")); + public static StreamCodec CODEC = StreamCodec.composite( + UUIDUtil.STREAM_CODEC, + ClientboundChangeSubLevelNamePacket::subLevelID, + ByteBufCodecs.optional(ByteBufCodecs.STRING_UTF8), + (packet) -> Optional.ofNullable(packet.name()), + (uuid, optionalName) -> new ClientboundChangeSubLevelNamePacket(uuid, optionalName.orElse(null))); + + public void handle(final PacketContext context) { + final SubLevelContainer container = SubLevelContainer.getContainer(context.level()); + if (container != null) { + final SubLevel subLevel = container.getSubLevel(this.subLevelID); + + if (subLevel != null) { + subLevel.setName(this.name); + } else { + Sable.LOGGER.error("Attempted to set name for a client sub-level that does not exist!"); + } + } + } + + @Override + public Type type() { + return TYPE; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.java new file mode 100644 index 0000000..6a7e0b0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ClientboundEnterGizmoPacket() implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("enter_gizmo_mode")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundEnterGizmoPacket::read); + + private static ClientboundEnterGizmoPacket read(final FriendlyByteBuf buf) { + return new ClientboundEnterGizmoPacket(); + } + + private void write(final FriendlyByteBuf buf) { + + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + SableClient.GIZMO_HANDLER.start(); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.java new file mode 100644 index 0000000..1d142e5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.java @@ -0,0 +1,55 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; + +public record ClientboundFinalizeSubLevelPacket(long plotCoordinate) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("finalize_sub_level")); + + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> + value.write(buf), ClientboundFinalizeSubLevelPacket::read); + + private void write(final FriendlyByteBuf buf) { + buf.writeLong(this.plotCoordinate); + } + + private static ClientboundFinalizeSubLevelPacket read(final FriendlyByteBuf buf) { + return new ClientboundFinalizeSubLevelPacket(buf.readLong()); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Level level = context.level(); + + final SubLevelContainer container = SubLevelContainer.getContainer(level); + if (container == null) { + Sable.LOGGER.error("Received a sub-level finalize packet for a level without a sub-level container"); + return; + } + + final SubLevel subLevel = container.getSubLevel(ChunkPos.getX(this.plotCoordinate), ChunkPos.getZ(this.plotCoordinate)); + if (!(subLevel instanceof final ClientSubLevel clientSubLevel)) { + Sable.LOGGER.error("Received a sub-level finalize packet for an unknown sub-level plot"); + return; + } + + clientSubLevel.setFinalized(); + clientSubLevel.updateRenderData(); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.java new file mode 100644 index 0000000..fd5f46b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockMaterial; +import foundry.veil.api.network.handler.PacketContext; +import io.netty.buffer.ByteBuf; +import net.minecraft.client.Minecraft; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.resources.ResourceLocation; + +public record ClientboundFloatingBlockMaterialPacket(ResourceLocation name, FloatingBlockMaterial material) implements SableTCPPacket { + public static final Type TYPE = new CustomPacketPayload.Type<>(Sable.sablePath("floating_material")); + + public static final StreamCodec CODEC = StreamCodec.composite( + ResourceLocation.STREAM_CODEC, ClientboundFloatingBlockMaterialPacket::name, + FloatingBlockMaterial.STREAM_CODEC, ClientboundFloatingBlockMaterialPacket::material, + ClientboundFloatingBlockMaterialPacket::new + ); + + @Override + public void handle(PacketContext context) { + Minecraft.getInstance().execute(() -> { + FloatingBlockMaterialDataHandler.addMaterial(this.name, this.material); + }); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.java new file mode 100644 index 0000000..49703f1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.java @@ -0,0 +1,44 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.player_freezing.PlayerFreezeExtension; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.entity.player.Player; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.UUID; + +public record ClientboundFreezePlayerPacket(UUID subLevelID, Vector3dc localPosition) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("freeze_player")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundFreezePlayerPacket::read); + + private static ClientboundFreezePlayerPacket read(final FriendlyByteBuf buf) { + return new ClientboundFreezePlayerPacket(buf.readUUID(), SableBufferUtils.read(buf, new Vector3d())); + } + + private void write(final FriendlyByteBuf buf) { + buf.writeUUID(this.subLevelID); + SableBufferUtils.write(buf, this.localPosition); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Player player = context.player(); + assert player != null; + + ((PlayerFreezeExtension) player).sable$freezeTo(this.subLevelID, this.localPosition); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.java new file mode 100644 index 0000000..f115f4a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinition; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinitionLoader; +import foundry.veil.api.network.handler.PacketContext; +import io.netty.buffer.ByteBuf; +import net.minecraft.client.Minecraft; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public record ClientboundPhysicsPropertyPacket(PhysicsBlockPropertiesDefinition definition) implements SableTCPPacket { + public static final Type TYPE = new CustomPacketPayload.Type<>(Sable.sablePath("physics_property")); + + public static final StreamCodec CODEC = StreamCodec.composite( + PhysicsBlockPropertiesDefinition.STREAM_CODEC, ClientboundPhysicsPropertyPacket::definition, + ClientboundPhysicsPropertyPacket::new + ); + + @Override + public void handle(final PacketContext context) { + Minecraft.getInstance().execute(() -> { + PhysicsBlockPropertiesDefinitionLoader.applyToBlocks(this.definition); + }); + } + + @Override + public Type type() { + return TYPE; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.java new file mode 100644 index 0000000..6da9492 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.java @@ -0,0 +1,48 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.core.UUIDUtil; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +import java.util.UUID; + +public record ClientboundRecentlySplitSubLevelPacket(UUID splitSubLevelID, UUID splitFromID, Pose3d pose) implements SableTCPPacket { + public static Type TYPE = new Type<>(Sable.sablePath("recently_split_sub_level")); + public static StreamCodec CODEC = StreamCodec.composite( + UUIDUtil.STREAM_CODEC, + ClientboundRecentlySplitSubLevelPacket::splitSubLevelID, + UUIDUtil.STREAM_CODEC, + ClientboundRecentlySplitSubLevelPacket::splitFromID, + SableBufferUtils.POSE3D_STREAM_CODEC, + ClientboundRecentlySplitSubLevelPacket::pose, + ClientboundRecentlySplitSubLevelPacket::new); + + public void handle(final PacketContext context) { + final SubLevelContainer container = SubLevelContainer.getContainer(context.level()); + if (container instanceof final ClientSubLevelContainer clientContainer) { + final SubLevel subLevel = container.getSubLevel(this.splitSubLevelID); + final SubLevel splitFrom = container.getSubLevel(this.splitFromID); + + if (subLevel != null && splitFrom != null) { + ((ClientSubLevel) subLevel).wasSplitFrom(clientContainer.getInterpolation(), (ClientSubLevel) splitFrom, this.pose); + } else { + Sable.LOGGER.error("Attempted to handle a recently split sub-level packet for a sub-level (or origin sub-level) that does not exist!"); + } + } + } + + @Override + public Type type() { + return TYPE; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.java new file mode 100644 index 0000000..14c05ac --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.java @@ -0,0 +1,60 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.udp.ConnectionExtension; +import dev.ryanhcode.sable.network.packets.udp.SableUDPAuthenticationPacket; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.network.udp.AddressedSableUDPPacket; +import foundry.veil.api.network.handler.PacketContext; +import io.netty.channel.Channel; +import io.netty.channel.ChannelFuture; +import io.netty.channel.ChannelFutureListener; +import net.minecraft.client.Minecraft; +import net.minecraft.network.Connection; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +import java.net.InetSocketAddress; +import java.util.UUID; + +public record ClientboundSableUDPActivationPacket(UUID uuid) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("udp_activation")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundSableUDPActivationPacket::read); + + private void write(final FriendlyByteBuf buf) { + buf.writeUUID(this.uuid); + } + + private static ClientboundSableUDPActivationPacket read(final FriendlyByteBuf buf) { + return new ClientboundSableUDPActivationPacket(buf.readUUID()); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Connection connection = Minecraft.getInstance().getConnection().getConnection(); + final ConnectionExtension connectionExtension = (ConnectionExtension) connection; + final Channel channel = connectionExtension.sable$getUDPChannel(); + + final InetSocketAddress baseAddress = ((InetSocketAddress) connection.getRemoteAddress()); + final InetSocketAddress remoteAddress = new InetSocketAddress(baseAddress.getAddress(), baseAddress.getPort()); + + Sable.LOGGER.info("Received authentication request, sending response over UDP to {}", remoteAddress); + + channel.eventLoop().execute(() -> { + final SableUDPAuthenticationPacket packet = new SableUDPAuthenticationPacket(this.uuid.toString()); + + final AddressedSableUDPPacket envelope = new AddressedSableUDPPacket(packet, remoteAddress); + final ChannelFuture writeFuture = channel.writeAndFlush(envelope); + + writeFuture.addListener(ChannelFutureListener.FIRE_EXCEPTION_ON_FAILURE); + }); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.java new file mode 100644 index 0000000..159e9ed --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.java @@ -0,0 +1,93 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.network.client.ClientSableInterpolationState; +import dev.ryanhcode.sable.network.client.SubLevelSnapshotInterpolator; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; + +import java.util.UUID; + +public record ClientboundStartTrackingSubLevelPacket(long plotCoordinate, UUID subLevelID, Pose3dc lastPose, Pose3d pose, + BoundingBox3ic bounds, @Nullable String name, int gameTick) implements SableTCPPacket { + + public static final Type TYPE = new CustomPacketPayload.Type<>(Sable.sablePath("start_tracking_sub_level")); + + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> + value.write(buf), ClientboundStartTrackingSubLevelPacket::read); + + private void write(final FriendlyByteBuf buf) { + buf.writeLong(this.plotCoordinate); + buf.writeUUID(this.subLevelID); + + SableBufferUtils.write(buf, this.lastPose); + SableBufferUtils.write(buf, this.pose); + SableBufferUtils.write(buf, this.bounds); + + buf.writeBoolean(this.name != null); + if (this.name != null) { + buf.writeUtf(this.name); + } + + buf.writeInt(this.gameTick); + } + + private static ClientboundStartTrackingSubLevelPacket read(final FriendlyByteBuf buf) { + return new ClientboundStartTrackingSubLevelPacket(buf.readLong(), buf.readUUID(), SableBufferUtils.read(buf, new Pose3d()), SableBufferUtils.read(buf, new Pose3d()), SableBufferUtils.read(buf, new BoundingBox3i()), buf.readBoolean() ? buf.readUtf() : null, buf.readInt()); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Level level = context.level(); + + final SubLevelContainer container = SubLevelContainer.getContainer(level); + if (!(container instanceof final ClientSubLevelContainer clientContainer)) { + Sable.LOGGER.error("Received a sub-level tracking packet for a level without a sub-level container"); + return; + } + + final ClientSubLevel subLevel = (ClientSubLevel) clientContainer.allocateSubLevel(this.subLevelID, ChunkPos.getX(this.plotCoordinate), ChunkPos.getZ(this.plotCoordinate), new Pose3d(this.lastPose)); + + final SubLevelSnapshotInterpolator interpolator = subLevel.getInterpolator(); + + interpolator.receiveSnapshot(this.gameTick - 1, this.lastPose); + interpolator.receiveSnapshot(this.gameTick, this.pose); + + final ClientSableInterpolationState interpolationState = clientContainer.getInterpolation(); + + if (!interpolationState.isStopped()) { + subLevel.setInitialPosesFrom(interpolationState); + } + + interpolator.setFirstPoses(this.pose, this.lastPose); + + subLevel.getPlot().setBoundingBox(this.bounds); + subLevel.forceUpdateBounds(); + // Create the initial render data after + subLevel.updateRenderData(); + + if (this.name != null) { + subLevel.setName(this.name); + } + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.java new file mode 100644 index 0000000..97184a6 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.java @@ -0,0 +1,55 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; + +public record ClientboundStopMovingSubLevelPacket(long plotCoordinate) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("stop_moving_sub_level")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundStopMovingSubLevelPacket::read); + + private void write(final FriendlyByteBuf buf) { + buf.writeLong(this.plotCoordinate); + } + + private static ClientboundStopMovingSubLevelPacket read(final FriendlyByteBuf buf) { + return new ClientboundStopMovingSubLevelPacket(buf.readLong()); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Level level = context.level(); + + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level movement packet for a level without a sub-level container"); + return; + } + + final SubLevel subLevel = container.getSubLevel(ChunkPos.getX(this.plotCoordinate), ChunkPos.getZ(this.plotCoordinate)); + assert subLevel != null : "Received a sub-level movement packet for a non-existent sub-level"; + + if (!(subLevel instanceof final ClientSubLevel clientSubLevel)) { + Sable.LOGGER.error("Client sub-level is not a client sub-level. How?"); + return; + } + + clientSubLevel.receiveServerMovementStop(); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.java new file mode 100644 index 0000000..68f0b40 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; + +public record ClientboundStopTrackingSubLevelPacket(long plotCoordinate) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("stop_tracking_sub_level")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ClientboundStopTrackingSubLevelPacket::read); + + private static ClientboundStopTrackingSubLevelPacket read(final FriendlyByteBuf buf) { + return new ClientboundStopTrackingSubLevelPacket(buf.readLong()); + } + + private void write(final FriendlyByteBuf buf) { + buf.writeLong(this.plotCoordinate); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final Level level = context.level(); + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level tracking packet for a level without a sub-level container"); + return; + } + + final int chunkX = ChunkPos.getX(this.plotCoordinate); + final int chunkZ = ChunkPos.getZ(this.plotCoordinate); + if (container.getSubLevel(chunkX, chunkZ) == null) { + Sable.LOGGER.error("Received a sub-level tracking removal packet for unknown sub-level: {}, {}", chunkX, chunkZ); + return; + } + container.removeSubLevel(chunkX, chunkZ, SubLevelRemovalReason.REMOVED); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.java new file mode 100644 index 0000000..96fb5b7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.server.level.ServerLevel; +import org.joml.Vector3d; + +import java.util.UUID; + +/** + * Gizmo movement packet + * + * @param subLevel sub-level id + * @param position position + */ +public record ServerboundGizmoMoveSubLevelPacket(UUID subLevel, Vector3d position) implements SableTCPPacket { + + public static final Type TYPE = new Type<>(Sable.sablePath("gizmo_move_sub_level")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ServerboundGizmoMoveSubLevelPacket::read); + + private static ServerboundGizmoMoveSubLevelPacket read(final FriendlyByteBuf buf) { + return new ServerboundGizmoMoveSubLevelPacket( + buf.readUUID(), + SableBufferUtils.read(buf, new Vector3d()) + ); + } + + private void write(final FriendlyByteBuf buf) { + buf.writeUUID(this.subLevel); + SableBufferUtils.write(buf, this.position); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final ServerLevel level = (ServerLevel) context.level(); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + + if (!context.player().hasPermissions(1)) { + Sable.LOGGER.warn("Player {} tried to move a sub-level with gizmo without permission", context.player().getGameProfile().getName()); + return; + } + + if (container == null) { + Sable.LOGGER.error("Received a gizmo movement packet for a level without a sub-level container"); + return; + } + + final SubLevel subLevel = container.getSubLevel(this.subLevel); + container.physicsSystem().getPipeline().teleport((ServerSubLevel) subLevel, this.position, subLevel.logicalPose().orientation()); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.java new file mode 100644 index 0000000..87355dd --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.java @@ -0,0 +1,223 @@ +package dev.ryanhcode.sable.network.packets.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.index.SableAttributes; +import dev.ryanhcode.sable.network.tcp.SableTCPPacket; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.SableBufferUtils; +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.core.BlockPos; +import net.minecraft.core.particles.BlockParticleOption; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.network.FriendlyByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvents; +import net.minecraft.sounds.SoundSource; +import net.minecraft.tags.FluidTags; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Objects; + +/** + * Sends hit position relative to center of mass of target sublevel, and target angle relative to sublevel player is tracking + * + * @param punchedBlock blockpos that is being punched. used to get target sublevel + * @param localPosition position relative to center of mass of hit sublevel in global space + * @param direction direction in world space (or plot space of tracking sublevel) + */ +public record ServerboundPunchSubLevelPacket(BlockPos punchedBlock, Vector3dc localPosition, + Vector3dc direction) implements SableTCPPacket { + public static final Type TYPE = new Type<>(Sable.sablePath("punch_sub_level")); + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> value.write(buf), ServerboundPunchSubLevelPacket::read); + + private static ServerboundPunchSubLevelPacket read(final FriendlyByteBuf buf) { + return new ServerboundPunchSubLevelPacket( + buf.readBlockPos(), SableBufferUtils.read(buf, new Vector3d()), SableBufferUtils.read(buf, new Vector3d())); + } + + private void write(final FriendlyByteBuf buf) { + buf.writeBlockPos(this.punchedBlock); + SableBufferUtils.write(buf, this.localPosition); + SableBufferUtils.write(buf, this.direction); + } + + @Override + public Type type() { + return TYPE; + } + + @Override + public void handle(final PacketContext context) { + final ServerLevel level = (ServerLevel) context.level(); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container == null) { + Sable.LOGGER.error("Received a sub-level punch packet for a level without a sub-level container"); + return; + } + + final Player player = context.player(); + if (!player.onGround() && !player.isInWater() && !player.getAbilities().flying && !player.onClimbable()) return; + + final ServerSubLevel standingSubLevel = (ServerSubLevel) Sable.HELPER.getTrackingSubLevel(player); + + final SubLevelPhysicsSystem physicsSystem = container.physicsSystem(); + final SubLevel targetSubLevel = Sable.HELPER.getContaining(level, this.punchedBlock); + + // Let's not let people punch the same sub-level they're standing on + if (standingSubLevel == targetSubLevel) return; + + final Vector3d localHitPosition = new Vector3d(this.localPosition); + final Vector3d globalDirection = new Vector3d(this.direction).normalize(); + + // If they're punching a sub-level, move the target into global space + if (targetSubLevel != null) { + localHitPosition.add(targetSubLevel.logicalPose().position()); + targetSubLevel.logicalPose().transformPositionInverse(localHitPosition); + } + + // If they're standing on a sub-level, move the direction into global space + if (standingSubLevel != null) { + standingSubLevel.logicalPose().transformNormal(globalDirection); + } + + final double attributeStrength = Objects.requireNonNull(player.getAttribute(SableAttributes.PUNCH_STRENGTH)).getValue(); + final int customCooldown = SableAttributes.getPushCooldownTicks(player); + if (!physicsSystem.tryPunch(player.getGameProfile().getId(), customCooldown)) { + return; + } + player.getCooldowns().addCooldown(player.getMainHandItem().getItem(), customCooldown); + + final double downwardStrengthMultiplier = SableConfig.SUB_LEVEL_PUNCH_DOWNWARD_STRENGTH_MULTIPLIER.getAsDouble(); + + if (globalDirection.y < 0.0) { + globalDirection.mul(1.0, downwardStrengthMultiplier, 1.0); + } + if (!(targetSubLevel instanceof final ServerSubLevel punchedSubLevel)) { + // The player punched the ground. Are they standing on a sub-level? + if (standingSubLevel != null) { + // They're standing on a sub-level. Let's push the sub-level they're standing on back. + + final Pose3d pose = standingSubLevel.logicalPose(); + final Vector3d localPosition = pose.transformPositionInverse(JOMLConversion.toJOML(player.position())); + final Vector3d localDirection = pose.transformNormalInverse(globalDirection); + localDirection.negate(); // We're pushing the sub-level away + + final double strengthScalar = computeStrengthScalar(standingSubLevel, localPosition, localDirection); + + physicsSystem.getPipeline().applyImpulse(standingSubLevel, localPosition, localDirection.mul(attributeStrength * strengthScalar, new Vector3d())); + } + } else { + // Punching a sub-level + final double strengthScalar; + final Vector3d localHitDirection = punchedSubLevel.logicalPose().transformNormalInverse(globalDirection, new Vector3d()); + + if (standingSubLevel == null) { + strengthScalar = computeStrengthScalar(punchedSubLevel, localHitPosition, localHitDirection); + } else { + final Vector3d localPosition = standingSubLevel.logicalPose().transformPositionInverse(JOMLConversion.toJOML(player.position())); + final Vector3d localDirection = standingSubLevel.logicalPose().transformNormalInverse(new Vector3d(globalDirection)); + + final double standingStrength = computeStrengthScalar(standingSubLevel, localPosition, localDirection); + final double punchedSubLevelScale = computeStrengthScalar(punchedSubLevel, localHitPosition, localHitDirection); + + strengthScalar = Math.min(punchedSubLevelScale, standingStrength); + + localDirection.negate(); // We're pushing the sub-level away + physicsSystem.getPipeline().applyImpulse(standingSubLevel, localPosition, localDirection.mul(attributeStrength * strengthScalar)); + } + + physicsSystem.getPipeline().applyImpulse(punchedSubLevel, localHitPosition, localHitDirection.mul(attributeStrength * strengthScalar)); + } + + final BlockState blockState = level.getBlockState(this.punchedBlock); + if (blockState.getFluidState().isEmpty()) { + final Vector3d particlePos = new Vector3d(localHitPosition).fma(-0.1, globalDirection); + + level.sendParticles( + new BlockParticleOption(ParticleTypes.BLOCK, blockState), + particlePos.x(), particlePos.y(), particlePos.z(), (int) (Math.random() * 3.0), 0.0, 0.0, 0.0, 0.0 + ); + } else { + this.sendFluidParticles(level, blockState, globalDirection); + } + } + + private void sendFluidParticles(final ServerLevel level, final BlockState blockState, final Vector3dc transformedDirection) { + // TODO: make some sort of "punch effect" system or registry + if (blockState.getFluidState().is(FluidTags.WATER)) { + final Vector3d particlePos = new Vector3d(this.localPosition).fma(0.1, transformedDirection); + level.sendParticles( + ParticleTypes.SPLASH, + particlePos.x(), particlePos.y(), particlePos.z(), 10, 0.2, 0.2, 0.2, 0.0 + ); + particlePos.fma(0.2, transformedDirection); + level.sendParticles( + ParticleTypes.BUBBLE, + particlePos.x(), particlePos.y(), particlePos.z(), 5, 0.2, 0.1, 0.2, 0.0 + ); + level.playSound(null, particlePos.x(), particlePos.y(), particlePos.z(), SoundEvents.PLAYER_SWIM, SoundSource.BLOCKS, 0.2F, 1.0F); + } else { + final Vector3d particlePos = new Vector3d(this.localPosition).fma(0.1, transformedDirection); + level.sendParticles( + new BlockParticleOption(ParticleTypes.BLOCK, blockState), + particlePos.x(), particlePos.y(), particlePos.z(), (int) (Math.random() * 3.0), 0.2, 0.2, 0.2, 0.0 + ); + } + } + + /** + * Tuning Desmos page + * @author Eriksonn + */ + public static double punchCurve(final double x) { + // falloff scale when x >= 1 + final double S = 2; + + // falloff exponent when x >= 1 + final double E = 0.5; + + // slope at mass = 1 + final double k = 0.8; + + // velocity impulse at zero mass + final double p = 1.75; + + final double u = x - 1; + final double g = k / (S * E); + + if (x < 1) { + return (((p + k - 2) * u + k - 1) * u + 1) * x; + } else { + final double inverseE = 1 / (E - 1); + return S * (Math.pow(u + Math.pow(g, inverseE), E) - Math.pow(g, E * inverseE)) + 1; + } + } + + private static double computeStrengthScalar(final ServerSubLevel standingSubLevel, final Vector3dc localPosition, final Vector3dc localDirection) { + final MassData massTracker = standingSubLevel.getMassTracker(); + + final double generalizedInverseMass = massTracker.getInverseNormalMass(localPosition, localDirection); + final double mass = 1.0 / generalizedInverseMass; + final double strengthMultiplier = SableConfig.SUB_LEVEL_PUNCH_STRENGTH_MULTIPLIER.getAsDouble(); + + return punchCurve(mass) * strengthMultiplier; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.java new file mode 100644 index 0000000..a4fddf7 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.network.packets.udp; + +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.server.MinecraftServer; + +import java.net.InetSocketAddress; +import java.util.UUID; + +public record SableUDPAuthenticationPacket(String token) implements SableUDPPacket { + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> buf.writeUtf(value.token), buf -> new SableUDPAuthenticationPacket(buf.readUtf())); + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.AUTH; + } + + @Override + public void handleServer(final MinecraftServer server, final InetSocketAddress sender) { + final SableUDPServer udpServer = SableUDPServer.getServer(server); + + if (udpServer != null) { + udpServer.receiveAuthenticationPacket(UUID.fromString(this.token), sender); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.java new file mode 100644 index 0000000..c499041 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.java @@ -0,0 +1,44 @@ +package dev.ryanhcode.sable.network.packets.udp; + +import dev.ryanhcode.sable.mixinterface.udp.ConnectionExtension; +import dev.ryanhcode.sable.network.udp.AddressedSableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import io.netty.channel.Channel; +import io.netty.channel.ChannelFuture; +import io.netty.channel.ChannelFutureListener; +import net.minecraft.client.Minecraft; +import net.minecraft.network.Connection; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.world.level.Level; + +import java.net.InetSocketAddress; + +public record SableUDPClientboundKeepAlivePacket() implements SableUDPPacket { + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> {}, buf -> new SableUDPClientboundKeepAlivePacket()); + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.KEEP_ALIVE_CLIENTBOUND; + } + + @Override + public void handleClient(final Level level) { + final Connection connection = Minecraft.getInstance().getConnection().getConnection(); + final ConnectionExtension connectionExtension = (ConnectionExtension) connection; + final Channel channel = connectionExtension.sable$getUDPChannel(); + + final InetSocketAddress baseAddress = ((InetSocketAddress) connection.getRemoteAddress()); + final InetSocketAddress remoteAddress = new InetSocketAddress(baseAddress.getAddress(), baseAddress.getPort()); + + channel.eventLoop().execute(() -> { + final SableUDPServerboundAlivePacket packet = new SableUDPServerboundAlivePacket(); + + final AddressedSableUDPPacket envelope = new AddressedSableUDPPacket(packet, remoteAddress); + final ChannelFuture writeFuture = channel.writeAndFlush(envelope); + + writeFuture.addListener(ChannelFutureListener.FIRE_EXCEPTION_ON_FAILURE); + }); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.java new file mode 100644 index 0000000..4148577 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.network.packets.udp; + +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import net.minecraft.client.Minecraft; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.chat.Component; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.world.level.Level; + +public record SableUDPEchoPacket(String text) implements SableUDPPacket { + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> buf.writeUtf(value.text), buf -> new SableUDPEchoPacket(buf.readUtf())); + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.PING; + } + + @Override + public void handleClient(final Level level) { + Minecraft.getInstance().player.sendSystemMessage(Component.literal("Received UDP Test Ping: " + this.text)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.java b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.java new file mode 100644 index 0000000..785b66b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.network.packets.udp; + +import dev.ryanhcode.sable.network.udp.SableUDPPacket; +import dev.ryanhcode.sable.network.udp.SableUDPPacketType; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.server.MinecraftServer; + +import java.net.InetSocketAddress; + +public record SableUDPServerboundAlivePacket() implements SableUDPPacket { + public static final StreamCodec CODEC = StreamCodec.of((buf, value) -> {}, buf -> new SableUDPServerboundAlivePacket()); + + @Override + public SableUDPPacketType getType() { + return SableUDPPacketType.ALIVE_SERVERBOUND; + } + + @Override + public void handleServer(final MinecraftServer server, final InetSocketAddress sender) { + final SableUDPServer udpServer = SableUDPServer.getServer(server); + + if (udpServer != null) { + udpServer.receiveAlivePacket(sender); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPacket.java new file mode 100644 index 0000000..5fac83e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPacket.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.network.tcp; + +import foundry.veil.api.network.handler.PacketContext; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; + +public interface SableTCPPacket extends CustomPacketPayload { + + void handle(PacketContext context); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPackets.java b/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPackets.java new file mode 100644 index 0000000..3ba9c15 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/tcp/SableTCPPackets.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.network.tcp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotDualPacket; +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotInfoDualPacket; +import dev.ryanhcode.sable.network.packets.tcp.*; +import foundry.veil.api.network.VeilPacketManager; + +public class SableTCPPackets { + + private static final VeilPacketManager PACKET_MANAGER = VeilPacketManager.create(Sable.MOD_ID, "1"); + + public static void init() { + PACKET_MANAGER.registerClientbound(ClientboundSableSnapshotDualPacket.TYPE, ClientboundSableSnapshotDualPacket.CODEC, ClientboundSableSnapshotDualPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundSableSnapshotInfoDualPacket.TYPE, ClientboundSableSnapshotInfoDualPacket.CODEC, ClientboundSableSnapshotInfoDualPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundStopMovingSubLevelPacket.TYPE, ClientboundStopMovingSubLevelPacket.CODEC, ClientboundStopMovingSubLevelPacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundChangeSubLevelNamePacket.TYPE, ClientboundChangeSubLevelNamePacket.CODEC, ClientboundChangeSubLevelNamePacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundStartTrackingSubLevelPacket.TYPE, ClientboundStartTrackingSubLevelPacket.CODEC, ClientboundStartTrackingSubLevelPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundFinalizeSubLevelPacket.TYPE, ClientboundFinalizeSubLevelPacket.CODEC, ClientboundFinalizeSubLevelPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundStopTrackingSubLevelPacket.TYPE, ClientboundStopTrackingSubLevelPacket.CODEC, ClientboundStopTrackingSubLevelPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundChangeBoundsSubLevelPacket.TYPE, ClientboundChangeBoundsSubLevelPacket.CODEC, ClientboundChangeBoundsSubLevelPacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundFreezePlayerPacket.TYPE, ClientboundFreezePlayerPacket.CODEC, ClientboundFreezePlayerPacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundPhysicsPropertyPacket.TYPE, ClientboundPhysicsPropertyPacket.CODEC, ClientboundPhysicsPropertyPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundFloatingBlockMaterialPacket.TYPE, ClientboundFloatingBlockMaterialPacket.CODEC, ClientboundFloatingBlockMaterialPacket::handle); + PACKET_MANAGER.registerClientbound(ClientboundRecentlySplitSubLevelPacket.TYPE, ClientboundRecentlySplitSubLevelPacket.CODEC, ClientboundRecentlySplitSubLevelPacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundSableUDPActivationPacket.TYPE, ClientboundSableUDPActivationPacket.CODEC, ClientboundSableUDPActivationPacket::handle); + + PACKET_MANAGER.registerClientbound(ClientboundEnterGizmoPacket.TYPE, ClientboundEnterGizmoPacket.CODEC, ClientboundEnterGizmoPacket::handle); + + PACKET_MANAGER.registerServerbound(ServerboundPunchSubLevelPacket.TYPE, ServerboundPunchSubLevelPacket.CODEC, ServerboundPunchSubLevelPacket::handle); + PACKET_MANAGER.registerServerbound(ServerboundGizmoMoveSubLevelPacket.TYPE, ServerboundGizmoMoveSubLevelPacket.CODEC, ServerboundGizmoMoveSubLevelPacket::handle); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.java new file mode 100644 index 0000000..4b01dc3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.java @@ -0,0 +1,10 @@ +package dev.ryanhcode.sable.network.udp; + +import java.net.InetSocketAddress; +import java.net.SocketAddress; + +/** + * A {@link SableUDPPacket} that has been addressed to a specific {@link SocketAddress} + */ +public record AddressedSableUDPPacket(SableUDPPacket packet, InetSocketAddress address) { +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.java new file mode 100644 index 0000000..8c9e93a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.java @@ -0,0 +1,85 @@ +package dev.ryanhcode.sable.network.udp; + +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +import java.net.InetSocketAddress; +import java.util.UUID; + +/** + * The authentication state for a player's connection to the server through UDP + */ +public class SableUDPAuthenticationState { + + private State state; + + private @Nullable UUID outgoingToken; + private long tokenAssignmentTime; + + private @Nullable InetSocketAddress activeAddress; + private int lastAlivePingIndex; + + public SableUDPAuthenticationState(final UUID token) { + this.assignToken(token); + } + + /** + * @return The current state of authentication for the player + */ + public State getState() { + return this.state; + } + + /** + * @return the active address of the player + */ + public @Nullable InetSocketAddress getActiveAddress() { + return this.activeAddress; + } + + /** + * @param token the token to test + * @return Whether the token is the expected token for the player + */ + public boolean isExpectedToken(final UUID token) { + return this.outgoingToken != null && this.outgoingToken.equals(token); + } + + /** + * Assigns a token to the player + * + * @param token the token to assign + */ + public void assignToken(final UUID token) { + this.outgoingToken = token; + this.tokenAssignmentTime = System.currentTimeMillis(); + this.state = State.AWAITING_AUTH; + } + + /** + * Assigns an address after authentication is complete + * + * @param address the address to assign + */ + public void assignAddress(@NotNull final InetSocketAddress address) { + this.activeAddress = address; + this.state = State.AUTHENTICATED; + + this.tokenAssignmentTime = -1; + this.outgoingToken = null; + } + + public void setLastAlivePingIndex(final int pingIndex) { + this.lastAlivePingIndex = pingIndex; + } + + public int getLastAlivePingIndex() { + return this.lastAlivePingIndex; + } + + public enum State { + AWAITING_AUTH, + AWAITING_CHALLENGE, + AUTHENTICATED, + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacket.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacket.java new file mode 100644 index 0000000..b1cc06f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacket.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.network.udp; + +import io.netty.channel.ChannelInboundHandler; +import io.netty.channel.ChannelOutboundHandler; +import io.netty.channel.ChannelPipeline; +import io.netty.handler.flow.FlowControlHandler; +import net.minecraft.network.*; +import net.minecraft.network.protocol.PacketFlow; +import net.minecraft.server.MinecraftServer; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.Nullable; + +import java.net.InetSocketAddress; + +public interface SableUDPPacket { + + static void configureSerialization(final ChannelPipeline pipeline, final PacketFlow flow, final boolean memoryOnly, @Nullable final BandwidthDebugMonitor debugMonitor) { + pipeline.addLast("splitter", createFrameDecoder(debugMonitor, memoryOnly)) + .addLast(new FlowControlHandler()) + .addLast("decoder", new SableUDPPacketDecoder()) + .addLast("prepender", createFrameEncoder(memoryOnly)) + .addLast("encoder", new SableUDPPacketEncoder()); + + } + + private static ChannelOutboundHandler createFrameEncoder(final boolean memoryOnly) { + return memoryOnly ? new NoOpFrameEncoder() : new Varint21LengthFieldPrepender(); + } + + private static ChannelInboundHandler createFrameDecoder(@Nullable final BandwidthDebugMonitor debugMonitor, final boolean memoryOnly) { + if (!memoryOnly) { + return new Varint21FrameDecoder(debugMonitor); + } else { + return debugMonitor != null ? new MonitorFrameDecoder(debugMonitor) : new NoOpFrameDecoder(); + } + } + + static void configureInMemoryPipeline(final ChannelPipeline channelPipeline, final PacketFlow arg) { + configureSerialization(channelPipeline, arg, true, null); + } + + SableUDPPacketType getType(); + + default void handleClient(final Level level) { + + } + + default void handleServer(final MinecraftServer server, final InetSocketAddress sender) { + + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.java new file mode 100644 index 0000000..ce68e60 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.network.udp; + +import dev.ryanhcode.sable.Sable; +import io.netty.buffer.ByteBuf; +import io.netty.channel.ChannelHandlerContext; +import io.netty.channel.socket.DatagramPacket; +import io.netty.handler.codec.MessageToMessageDecoder; +import net.minecraft.network.ProtocolSwapHandler; +import net.minecraft.network.RegistryFriendlyByteBuf; + +import java.io.IOException; +import java.util.List; + +public class SableUDPPacketDecoder extends MessageToMessageDecoder implements ProtocolSwapHandler { + + public SableUDPPacketDecoder() { + super(DatagramPacket.class); + } + + /** + * Decode from one message to an other. This method will be called for each written message that can be handled + * by this decoder. + * + * @param ctx the {@link ChannelHandlerContext} which this {@link MessageToMessageDecoder} belongs to + * @param msg the message to decode to an other one + * @param out the {@link List} to which decoded messages should be added + * @throws Exception is thrown if an error occurs + */ + @Override + protected void decode(final ChannelHandlerContext ctx, final DatagramPacket msg, final List out) throws Exception { + final ByteBuf byteBuf = msg.content(); + final int i = byteBuf.readableBytes(); + if (i != 0) { + final short packetID = byteBuf.readUnsignedByte(); + + if (packetID >= SableUDPPacketType.VALUES.length) { + throw new IOException("Received an invalid packet ID: " + packetID); + } + + final SableUDPPacketType packetType = SableUDPPacketType.VALUES[packetID]; + final SableUDPPacket packet; + + try { + packet = packetType.create(new RegistryFriendlyByteBuf(byteBuf, null)); + } catch (final Exception e) { + Sable.LOGGER.error("Failed to decode UDP packet of type {} from {}", packetType, msg.sender(), e); + return; + } + + if (byteBuf.readableBytes() > 0) { + Sable.LOGGER.error("SableUDPPacket {} ({}) was larger than expected, found {} bytes extra", packetType, packet.getClass().getSimpleName(), byteBuf.readableBytes()); + return; + } + + out.add(new AddressedSableUDPPacket(packet, msg.sender())); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.java new file mode 100644 index 0000000..aea1153 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.network.udp; + + +import io.netty.buffer.ByteBuf; +import io.netty.channel.ChannelHandlerContext; +import io.netty.channel.socket.DatagramPacket; +import io.netty.handler.codec.EncoderException; +import io.netty.handler.codec.MessageToMessageEncoder; +import net.minecraft.network.RegistryFriendlyByteBuf; + +import java.util.List; + +public class SableUDPPacketEncoder extends MessageToMessageEncoder { + + @Override + protected void encode(final ChannelHandlerContext ctx, final AddressedSableUDPPacket envelope, final List out) throws Exception { + final SableUDPPacket msg = envelope.packet(); + final SableUDPPacketType packetType = msg.getType(); + + try { + final ByteBuf buf = ctx.alloc().ioBuffer(); + buf.writeByte(packetType.ordinal()); + packetType.write(new RegistryFriendlyByteBuf(buf, null), msg); + +// out.add(new DefaultAddressedEnvelope(buf, envelope.address())); + out.add(new DatagramPacket(buf, envelope.address())); + } catch (final Exception e) { + throw new EncoderException("Failed to encode %s packet of type %s".formatted(msg.getClass().getSimpleName(), packetType), e); + } + } + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketType.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketType.java new file mode 100644 index 0000000..5b60f77 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPPacketType.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.network.udp; + +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotDualPacket; +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotInfoDualPacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPAuthenticationPacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPClientboundKeepAlivePacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPEchoPacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPServerboundAlivePacket; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; + +public enum SableUDPPacketType { + PING(SableUDPEchoPacket.CODEC), + SNAPSHOT(ClientboundSableSnapshotDualPacket.CODEC), + SNAPSHOT_INFO(ClientboundSableSnapshotInfoDualPacket.CODEC), + AUTH(SableUDPAuthenticationPacket.CODEC), + KEEP_ALIVE_CLIENTBOUND(SableUDPClientboundKeepAlivePacket.CODEC), + ALIVE_SERVERBOUND(SableUDPServerboundAlivePacket.CODEC); + + public static final SableUDPPacketType[] VALUES = SableUDPPacketType.values(); + + private final StreamCodec codec; + + SableUDPPacketType(final StreamCodec codec) { + this.codec = codec; + } + + public SableUDPPacket create(final RegistryFriendlyByteBuf buf) { + return this.codec.decode(buf); + } + + public void write(final RegistryFriendlyByteBuf buf, final SableUDPPacket packet) { + //noinspection unchecked,rawtypes + ((StreamCodec) this.codec).encode(buf, packet); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPServer.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPServer.java new file mode 100644 index 0000000..d17dce8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/SableUDPServer.java @@ -0,0 +1,248 @@ +package dev.ryanhcode.sable.network.udp; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.mixinterface.udp.ServerConnectionListenerExtension; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundSableUDPActivationPacket; +import dev.ryanhcode.sable.network.packets.udp.SableUDPClientboundKeepAlivePacket; +import dev.ryanhcode.sable.util.SableDistUtil; +import io.netty.buffer.Unpooled; +import io.netty.channel.Channel; +import io.netty.channel.ChannelFuture; +import io.netty.channel.ChannelFutureListener; +import io.netty.channel.local.LocalAddress; +import net.minecraft.network.Connection; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerPlayer; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.net.InetSocketAddress; +import java.util.*; + +/** + * Handles UDP authentication and communication + * + * @author RyanH, Ocelot + */ +public class SableUDPServer { + public static final long PING_INTERVAL = 2500; + private static final int MISSED_PINGS_ALLOWED = 10; + + private final Channel channel; + private final Map udpAuthStates; + private final MinecraftServer server; + private int pingIndex = 0; + + public SableUDPServer(final MinecraftServer server, final Channel channel) { + this.server = server; + this.channel = channel; + this.udpAuthStates = new WeakHashMap<>(); + } + + /** + * Retrieves the current instance of the UDP server from a {@link MinecraftServer} + */ + @ApiStatus.Internal + @Nullable + public static SableUDPServer getServer(final MinecraftServer server) { + return (((ServerConnectionListenerExtension) server.getConnection())).sable$getServer(); + } + + /*@Override + public void flushUDP() { + if (this.udpChannel.eventLoop().inEventLoop()) + throw new IllegalStateException("Cannot flush from event loop"); + + this.udpChannel.eventLoop().execute(() -> { + this.udpChannel.flush(); + }); + }*/ + + /** + * Checks if UDP packets can be sent to a player + * + * @param player the player to check + * @return if UDP packets can be sent to the player + */ + public boolean isConnectedTo(final ServerPlayer player) { + if (!SableConfig.ATTEMPT_UDP_NETWORKING.get()) { + return false; + } + + if (player.connection.getRemoteAddress() instanceof LocalAddress) { + if (player.server.isSingleplayer() && player.server.isSingleplayerOwner(player.getGameProfile())) + return true; + } + + final Connection connection = player.connection.connection; + final SableUDPAuthenticationState authState = this.udpAuthStates.get(connection); + return authState != null && authState.getState() == SableUDPAuthenticationState.State.AUTHENTICATED; + } + + /** + * Sends a UDP packet to a server player, flushing if requested + * + * @param player the player to send the packet to + * @param packet the packet to send + * @param flush whether to flush the packet immediately + * @return if the packet has been successfully sent + */ + public boolean sendUDPPacket(final ServerPlayer player, final SableUDPPacket packet, final boolean flush) { + if (this.channel.eventLoop().inEventLoop()) + throw new IllegalStateException("Cannot send packet from event loop"); + + final Connection connection = player.connection.connection; + + if (connection.getRemoteAddress() instanceof LocalAddress) { + // We can't turn a local address into an InetSocketAddress, because there's no net communication + // Let's instead locally send the packet. + + this.sendUDPPacketLocal(packet); + return true; + } + + final SableUDPAuthenticationState authenticationState = this.udpAuthStates.get(connection); + + if (authenticationState == null) { + Sable.LOGGER.error("Attempted to send packet to player \"{}\" without authentication state", player.getName().getString()); + return false; + } + + final InetSocketAddress inetSocketAddress = authenticationState.getActiveAddress(); + if (inetSocketAddress == null) { + Sable.LOGGER.error("No UDP address in authentication state for player \"{}\"", player.getName().getString()); + return false; + } + + this.channel.eventLoop().execute(() -> { + final AddressedSableUDPPacket envelope = new AddressedSableUDPPacket(packet, inetSocketAddress); + final ChannelFuture writeFuture = flush ? this.channel.writeAndFlush(envelope) : this.channel.write(envelope); + + writeFuture.addListener(ChannelFutureListener.FIRE_EXCEPTION_ON_FAILURE); + }); + + return true; + } + + /** + * Sends a UDP packet to the locally connected player + * + * @param packet the packet to send + */ + private void sendUDPPacketLocal(final SableUDPPacket packet) { + final RegistryFriendlyByteBuf buffer = new RegistryFriendlyByteBuf(Unpooled.buffer(), this.server.registryAccess()); + packet.getType().write(buffer, packet); + final SableUDPPacket decodedPacket = packet.getType().create(buffer); + SableClient.NETWORK_EVENT_LOOP.tell(() -> decodedPacket.handleClient(SableDistUtil.getClientLevel())); + } + + /** + * Begins the authentication process for a {@link ServerPlayer}, assigning and sending them a token + * + * @param player the player to authenticate + */ + @ApiStatus.Internal + public void beginAuthentication(final ServerPlayer player) { + if (player.connection.getRemoteAddress() instanceof LocalAddress) { + // No point in sending a UDP activation packet to a local player - local communication will be used anyway + // instead of the UDP channel + return; + } + + // Generate and store a token + final UUID token = UUID.randomUUID(); + final SableUDPAuthenticationState authState = new SableUDPAuthenticationState(token); + + this.udpAuthStates.put(player.connection.connection, authState); + + // Send the token to the client + if (SableConfig.ATTEMPT_UDP_NETWORKING.get()) { + player.connection.send(new ClientboundCustomPayloadPacket(new ClientboundSableUDPActivationPacket(token))); + } + } + + /** + * Called on reception of an authentication packet from a client + * + * @param uuid the UUID token received from the client + * @param inetSocketAddress the client address that broadcasted the token + */ + @ApiStatus.Internal + public void receiveAuthenticationPacket(final UUID uuid, final InetSocketAddress inetSocketAddress) { + for (final Map.Entry entry : this.udpAuthStates.entrySet()) { + final SableUDPAuthenticationState state = entry.getValue(); + + if (state.isExpectedToken(uuid)) { + state.assignAddress(inetSocketAddress); + state.setLastAlivePingIndex(this.pingIndex); + Sable.LOGGER.info("UDP authentication complete with {}, UDP routing to {}", entry.getKey().getRemoteAddress(), inetSocketAddress); + return; + } + } + } + + /** + * Sends keep-alive packets to all authenticated & connected clients + */ + public void sendPings() { + final Iterator> iter = this.udpAuthStates.entrySet().iterator(); + + while (iter.hasNext()) { + final Map.Entry entry = iter.next(); + final Connection connection = entry.getKey(); + final SableUDPAuthenticationState state = entry.getValue(); + + if (!connection.isConnected()) { + iter.remove(); + continue; + } + + if (state.getState() != SableUDPAuthenticationState.State.AUTHENTICATED) { + continue; + } + + if (this.pingIndex - state.getLastAlivePingIndex() > MISSED_PINGS_ALLOWED) { + Sable.LOGGER.warn("UDP connection with {} failed to respond to any keep-alive packets after ~{}ms, kicking them to TCP", connection.getRemoteAddress(), MISSED_PINGS_ALLOWED * PING_INTERVAL); + iter.remove(); + continue; + } + + final InetSocketAddress inetSocketAddress = state.getActiveAddress(); + + if (inetSocketAddress == null) { + continue; + } + + final SableUDPClientboundKeepAlivePacket packet = new SableUDPClientboundKeepAlivePacket(); + + this.channel.eventLoop().execute(() -> { + final AddressedSableUDPPacket envelope = new AddressedSableUDPPacket(packet, inetSocketAddress); + final ChannelFuture writeFuture = this.channel.writeAndFlush(envelope); + + writeFuture.addListener(ChannelFutureListener.FIRE_EXCEPTION_ON_FAILURE); + }); + } + + this.pingIndex ++; + } + + /** + * Marks a client as alive + */ + public void receiveAlivePacket(final InetSocketAddress sender) { + for (final SableUDPAuthenticationState state : this.udpAuthStates.values()) { + if (state.getState() != SableUDPAuthenticationState.State.AUTHENTICATED) { + continue; + } + + if (Objects.equals(state.getActiveAddress(), sender)) { + state.setLastAlivePingIndex(this.pingIndex); + return; + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.java new file mode 100644 index 0000000..ee1f0cb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.network.udp.handler; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.mixinterface.udp.ConnectionExtension; +import dev.ryanhcode.sable.network.udp.AddressedSableUDPPacket; +import io.netty.channel.Channel; +import io.netty.channel.ChannelHandlerContext; +import io.netty.channel.SimpleChannelInboundHandler; +import net.minecraft.client.Minecraft; +import net.minecraft.network.Connection; + +public class SableUDPChannelHandlerClient extends SimpleChannelInboundHandler { + + private final Connection connection; + private Channel channel; + + public SableUDPChannelHandlerClient(final Connection connection) { + super(AddressedSableUDPPacket.class); + this.connection = connection; + } + + @Override + public void exceptionCaught(final ChannelHandlerContext ctx, final Throwable cause) throws Exception { + super.exceptionCaught(ctx, cause); + Sable.LOGGER.error("UDP channel exception caught", cause); + } + + @Override + public void channelActive(final ChannelHandlerContext ctx) throws Exception { + super.channelActive(ctx); + Sable.LOGGER.info("Client UDP channel active"); + + this.channel = ctx.channel(); + ((ConnectionExtension) this.connection).sable$setUDPChannel(this.channel); + } + + + @Override + public void channelInactive(final ChannelHandlerContext ctx) throws Exception { + super.channelInactive(ctx); + Sable.LOGGER.info("Client UDP channel inactive"); + } + + @Override + protected void channelRead0(final ChannelHandlerContext ctx, final AddressedSableUDPPacket msg) throws Exception { + final Minecraft client = Minecraft.getInstance(); + + SableClient.NETWORK_EVENT_LOOP.tell(() -> { + msg.packet().handleClient(client.level); + }); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.java b/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.java new file mode 100644 index 0000000..c088adc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.network.udp.handler; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.udp.ServerConnectionListenerExtension; +import dev.ryanhcode.sable.network.udp.AddressedSableUDPPacket; +import io.netty.channel.ChannelHandlerContext; +import io.netty.channel.SimpleChannelInboundHandler; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.network.ServerConnectionListener; + +public class SableUDPChannelHandlerServer extends SimpleChannelInboundHandler { + + private final MinecraftServer server; + private final ServerConnectionListener serverConnectionListener; + + public SableUDPChannelHandlerServer(final MinecraftServer server, final ServerConnectionListener serverConnectionListener) { + super(AddressedSableUDPPacket.class); + this.server = server; + this.serverConnectionListener = serverConnectionListener; + } + + @Override + public void exceptionCaught(final ChannelHandlerContext ctx, final Throwable cause) throws Exception { + super.exceptionCaught(ctx, cause); + Sable.LOGGER.error("Server UDP channel caught exception", cause); + } + + @Override + public void channelActive(final ChannelHandlerContext ctx) throws Exception { + super.channelActive(ctx); + Sable.LOGGER.info("Server UDP channel active"); + ((ServerConnectionListenerExtension) this.serverConnectionListener).sable$setupUDPServer(ctx.channel()); + } + + @Override + protected void channelRead0(final ChannelHandlerContext ctx, final AddressedSableUDPPacket msg) throws Exception { + msg.packet().handleServer(this.server, msg.address()); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/ReactionWheelManager.java b/common/src/main/java/dev/ryanhcode/sable/physics/ReactionWheelManager.java new file mode 100644 index 0000000..c8f4cc5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/ReactionWheelManager.java @@ -0,0 +1,68 @@ +package dev.ryanhcode.sable.physics; + +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelReactionWheel; +import dev.ryanhcode.sable.api.physics.force.ForceTotal; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +import java.util.Map; + +public class ReactionWheelManager { + private static final Vector3d totalLocalAngularMomentum = new Vector3d(); + private static final Vector3d temp = new Vector3d(); + private final ServerSubLevel subLevel; + private final Vector3d previousAngularMomentum = new Vector3d(); + private final ForceTotal forceTotal = new ForceTotal(); + + public ReactionWheelManager(final ServerSubLevel subLevel) { + this.subLevel = subLevel; + } + + public void physicsTick(final RigidBodyHandle handle) { + if (!this.needsTicking()) + return; + + totalLocalAngularMomentum.zero(); + for (final Map.Entry wheelEntry : this.subLevel.getPlot().getBlockEntityReactionWheelMap()) { + + final BlockEntitySubLevelReactionWheel wheel = wheelEntry.getValue(); + final BlockPos pos = wheelEntry.getKey(); + this.addWheelMomentumToLocalVector(pos, wheel, totalLocalAngularMomentum); + } + this.subLevel.logicalPose().orientation().transform(totalLocalAngularMomentum); + final Vector3d impulse = totalLocalAngularMomentum.sub(this.previousAngularMomentum, temp); + + this.subLevel.logicalPose().orientation().transformInverse(impulse); + this.forceTotal.applyAngularImpulse(impulse); + handle.applyForcesAndReset(this.forceTotal); + + this.previousAngularMomentum.set(totalLocalAngularMomentum); + } + + public boolean needsTicking() { + return this.previousAngularMomentum.lengthSquared() > 0 || !this.subLevel.getPlot().getBlockEntityReactionWheels().isEmpty(); + } + + public void wheelChanged(final BlockPos pos, final BlockEntitySubLevelReactionWheel wheel, final boolean add) { + this.addWheelMomentumToLocalVector(pos, wheel, totalLocalAngularMomentum.zero()); + this.subLevel.logicalPose().orientation().transform(totalLocalAngularMomentum); + if (add) + this.previousAngularMomentum.add(totalLocalAngularMomentum); + else + this.previousAngularMomentum.sub(totalLocalAngularMomentum); + } + + void addWheelMomentumToLocalVector(final BlockPos pos, final BlockEntitySubLevelReactionWheel wheel, final Vector3d v) { + wheel.sable$getAngularVelocity(temp.zero()); + final Vec3 blockInertia = PhysicsBlockPropertyHelper.getInertia(this.subLevel.getLevel(), pos, wheel.getBlockState()); + if (blockInertia == null) + temp.mul(1 / 6.0);//default block inertia + else + temp.mul(blockInertia.x, blockInertia.y, blockInertia.z); + v.fma(PhysicsBlockPropertyHelper.getMass(this.subLevel.getLevel(), pos, wheel.getBlockState()), temp); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.java b/common/src/main/java/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.java new file mode 100644 index 0000000..54926a3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.physics.callback; + +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.block.BeehiveBlock; +import net.minecraft.world.level.block.entity.BeehiveBlockEntity; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +public class BeehiveBlockCallback extends FragileBlockCallback { + public static final BeehiveBlockCallback INSTANCE = new BeehiveBlockCallback(); + + public BeehiveBlockCallback() {} + + @Override + public boolean shouldTriggerFor(final BlockState state) { + return state.getBlock() instanceof BeehiveBlock; + } + + @Override + public double getTriggerVelocity() { + return 9.0; + } + + @Override + public CollisionResult onHit(final ServerLevel level, final BlockPos pos, final BlockState state, final Vector3d hitPos) { + final BlockEntity be = level.getBlockEntity(pos); + + if (be instanceof final BeehiveBlockEntity beehiveBlockEntity) { + final Vec3 center = pos.getCenter(); + + final Player nearbyPlayer = level.getNearestPlayer(center.x, center.y, center.z, 4, true); + beehiveBlockEntity.emptyAllLivingFromHive(nearbyPlayer, state, BeehiveBlockEntity.BeeReleaseStatus.EMERGENCY); + } + + return new CollisionResult(JOMLConversion.ZERO, false); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/callback/BellBlockCallback.java b/common/src/main/java/dev/ryanhcode/sable/physics/callback/BellBlockCallback.java new file mode 100644 index 0000000..690ff91 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/callback/BellBlockCallback.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.physics.callback; + +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.BellBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BellAttachType; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +public class BellBlockCallback extends FragileBlockCallback { + public static final BellBlockCallback INSTANCE = new BellBlockCallback(); + + public BellBlockCallback() {} + + @Override + public boolean shouldTriggerFor(final BlockState state) { + return state.getBlock() instanceof BellBlock; + } + + @Override + public CollisionResult onHit(final ServerLevel level, final BlockPos pos, final BlockState state, final Vector3d hitPos) { + final Vec3 hitDir = pos.getCenter().subtract(hitPos.x, hitPos.y, hitPos.z); + final Direction facing = state.getValue(BellBlock.FACING); + final BellAttachType attachment = state.getValue(BellBlock.ATTACHMENT); + + int xMul = Math.abs(facing.getStepX()); + int zMul = Math.abs(facing.getStepZ()); + + if (attachment == BellAttachType.CEILING) { + xMul = 1; + zMul = 1; + } + + final Direction direction = Direction.getNearest(hitDir.x * xMul, 0.0, hitDir.z * zMul); + ((BellBlock) state.getBlock()).attemptToRing(level, pos, direction.getOpposite()); + + return new CollisionResult(JOMLConversion.ZERO, false); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.java b/common/src/main/java/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.java new file mode 100644 index 0000000..3768350 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.physics.callback; + +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.item.PrimedTnt; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.TntBlock; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; + +public class ExplosiveBlockCallback extends FragileBlockCallback { + public static final ExplosiveBlockCallback INSTANCE = new ExplosiveBlockCallback(); + + public ExplosiveBlockCallback() {} + + @Override + public boolean shouldTriggerFor(final BlockState state) { + return state.getBlock() instanceof TntBlock; + } + + @Override + public double getTriggerVelocity() { + return 5.0; + } + + @Override + public CollisionResult onHit(final ServerLevel level, final BlockPos pos, final BlockState state, final Vector3d hitPos) { + final PrimedTnt primedTnt = new PrimedTnt(level, pos.getX() + 0.5, pos.getY(), pos.getZ() + 0.5, null); + primedTnt.setFuse(4); + level.addFreshEntity(primedTnt); + + level.setBlock(pos, Blocks.AIR.defaultBlockState(), 11); + return new CollisionResult(JOMLConversion.ZERO, true); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.java b/common/src/main/java/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.java new file mode 100644 index 0000000..fbc904a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.physics.callback; + +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.block_properties.BlockStateExtension; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyTypes; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.IceBlock; +import net.minecraft.world.level.block.LeavesBlock; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; + +public class FragileBlockCallback implements BlockSubLevelCollisionCallback { + + public static final FragileBlockCallback INSTANCE = new FragileBlockCallback(); + + protected FragileBlockCallback() {} + + public double getTriggerVelocity() { + return 4.0; + } + + @Override + public BlockSubLevelCollisionCallback.CollisionResult sable$onCollision(final BlockPos pos, final Vector3d pos1, final double impactVelocity) { + final double triggerVelocity = this.getTriggerVelocity(); + + if (impactVelocity * impactVelocity < triggerVelocity * triggerVelocity) { + return CollisionResult.NONE; + } + + final SubLevelPhysicsSystem system = SubLevelPhysicsSystem.getCurrentlySteppingSystem(); + final ServerLevel level = system.getLevel(); + + // Double check that we're actually fragile before breaking (in-case pipeline gave us a slightly off collision position) + final BlockState state = level.getBlockState(pos); + + if (state.getBlock() instanceof LeavesBlock && state.getValue(LeavesBlock.PERSISTENT)) + return CollisionResult.NONE; + + if (this.shouldTriggerFor(state)) { + return this.onHit(level, pos, state, pos1); + } + + return new CollisionResult(JOMLConversion.ZERO, true); + } + + public boolean shouldTriggerFor(final BlockState state) { + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.FRAGILE.get()); + } + + public CollisionResult onHit(final ServerLevel level, final BlockPos pos, final BlockState state, final Vector3d hitPos) { + level.destroyBlock(pos, true); + + // Melt ice on destruction + if (state.getBlock() instanceof IceBlock) { + final BlockState belowState = level.getBlockState(pos.below()); + + if (belowState.blocksMotion() || belowState.liquid()) { + level.setBlockAndUpdate(pos, IceBlock.meltsInto()); + } + } + + return new CollisionResult(JOMLConversion.ZERO, true); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.java b/common/src/main/java/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.java new file mode 100644 index 0000000..9df2f9d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.java @@ -0,0 +1,138 @@ +package dev.ryanhcode.sable.physics.chunk; + +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.util.LevelAccelerator; +import it.unimi.dsi.fastutil.ints.Int2BooleanOpenHashMap; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.KelpBlock; +import net.minecraft.world.level.block.KelpPlantBlock; +import net.minecraft.world.level.block.piston.MovingPistonBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import org.jetbrains.annotations.Nullable; + +import java.util.function.BiFunction; + +public enum VoxelNeighborhoodState { + EMPTY(0x000000), + FACE(0x8bd21c), + EDGE(0xe9eb0b), + CORNER(0xeb6c0b), + INTERIOR(0x000000); + + public static BiFunction IS_SOLID_MEMOIZED = new BiFunction<>() { + private final Int2BooleanOpenHashMap cache = new Int2BooleanOpenHashMap(); + + @Override + public Boolean apply(final BlockGetter blockGetter, final BlockState state) { + return this.cache.computeIfAbsent(state.hashCode(), x -> { + // TODO add the blockgetter and position as context + if (state.isAir()) + return false; + + if (state.getBlock() instanceof MovingPistonBlock) + return true; + + return !state.getCollisionShape(blockGetter, BlockPos.ZERO).isEmpty(); + }); + } + }; + + public static BiFunction IS_FULL_BLOCK = new BiFunction<>() { + private final Int2BooleanOpenHashMap cache = new Int2BooleanOpenHashMap(); + + @Override + public Boolean apply(final BlockGetter blockGetter, final BlockState state) { + return this.cache.computeIfAbsent(state.hashCode(), x -> { + // TODO add the blockgetter and position as context + if (state.isAir()) + return false; + + return state.isCollisionShapeFullBlock(blockGetter, BlockPos.ZERO); + }); + } + }; + + private final int debugColor; + + VoxelNeighborhoodState(final int debugColor) { + this.debugColor = debugColor; + } + + public static boolean isSolid(final BlockGetter blockGetter, final BlockPos pos, final BlockState state) { + return IS_SOLID_MEMOIZED.apply(blockGetter, state); + } + + public static boolean isFullBlock(final BlockGetter blockGetter, final BlockPos pos, final BlockState state) { + return IS_FULL_BLOCK.apply(blockGetter, state); + } + + public static boolean isLiquid(final BlockState state) { + return state.liquid() || state.getBlock() instanceof KelpPlantBlock || state.getBlock() instanceof KelpBlock; + } + + public static VoxelNeighborhoodState getState(final LevelAccelerator level, final BlockPos pos, @Nullable final LevelChunk chunk) { + final ChunkPos initialPos = new ChunkPos(pos); + final BlockState state = chunk != null ? level.getBlockState(chunk, pos) : level.getBlockState(pos); + + if (isLiquid(state) || BlockWithSubLevelCollisionCallback.hasCallback(state)) + return CORNER; + + if (!isSolid(level, pos, state)) { + return EMPTY; + } + + if (!isFullBlock(level, pos, state)) { + return CORNER; + } + + boolean allSolid = true; + boolean cornerSolid = true; + int bothSidesCount = 0; + + for (final Direction.Axis axis : Direction.Axis.VALUES) { + final BlockPos nPos = pos.relative(Direction.get(Direction.AxisDirection.NEGATIVE, axis)); + final BlockPos pPos = pos.relative(Direction.get(Direction.AxisDirection.POSITIVE, axis)); + + final BlockState nState = chunk != null && new ChunkPos(nPos).equals(initialPos) ? level.getBlockState(chunk, nPos) : level.getBlockState(nPos); + final BlockState pState = chunk != null && new ChunkPos(pPos).equals(initialPos) ? level.getBlockState(chunk, pPos) : level.getBlockState(pPos); + + final boolean negativeSolid = isSolid(level, nPos, nState) && isFullBlock(level, nPos, nState); + final boolean positiveSolid = isSolid(level, pPos, pState) && isFullBlock(level, pPos, pState); + + if (!negativeSolid || !positiveSolid) { + allSolid = false; + } + + if (negativeSolid && positiveSolid) { + cornerSolid = false; + bothSidesCount++; + } + } + + if (allSolid) { + return INTERIOR; + } + + if (bothSidesCount == 1) { + return EDGE; + } + + if (cornerSolid) { + return CORNER; + } + + return FACE; + } + + public int getDebugColor() { + return this.debugColor; + } + + public byte byteRepresentation() { + return (byte) this.ordinal(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.java new file mode 100644 index 0000000..d675690 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable.physics.config; + +import com.google.gson.Gson; +import com.google.gson.JsonElement; +import com.mojang.serialization.DataResult; +import com.mojang.serialization.JsonOps; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockMaterial; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.server.packs.resources.SimpleJsonResourceReloadListener; +import net.minecraft.util.profiling.ProfilerFiller; + +import java.util.HashMap; +import java.util.Map; + +public class FloatingBlockMaterialDataHandler { + public static HashMap allMaterials = new HashMap<>(); + + public static void addMaterial(final ResourceLocation id, final FloatingBlockMaterial material) { + allMaterials.put(id, material); + } + + public static void clearMaterials() { + allMaterials.clear(); + } + + public static class ReloadListener extends SimpleJsonResourceReloadListener { + public static final String NAME = "floating_block_material"; + public static final ResourceLocation ID = Sable.sablePath(NAME); + + private static final Gson GSON = new Gson(); + + public static final ReloadListener INSTANCE = new ReloadListener(); + + protected ReloadListener() { + super(ReloadListener.GSON, "floating_materials"); + } + + @Override + protected void apply(final Map map, final ResourceManager resourceManager, final ProfilerFiller profiler) { + FloatingBlockMaterialDataHandler.allMaterials.clear(); + for (final Map.Entry entry : map.entrySet()) { + final JsonElement element = entry.getValue(); + try { + final DataResult dataResult = FloatingBlockMaterial.CODEC.parse(JsonOps.INSTANCE, element); + + if (dataResult.error().isPresent()) { + Sable.LOGGER.error(String.valueOf(dataResult.error().get())); + } else { + final ResourceLocation loc = entry.getKey(); + final FloatingBlockMaterial floatingBlockMaterial = dataResult.result().orElseThrow(); + + FloatingBlockMaterialDataHandler.addMaterial(loc, floatingBlockMaterial); + } + } catch (final Exception ignored) { + + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/PhysicsConfigData.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/PhysicsConfigData.java new file mode 100644 index 0000000..d90d235 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/PhysicsConfigData.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.physics.config; + +public class PhysicsConfigData { + /** + * The number of solver iterations run by the constraints solver for calculating forces. + */ + public int solverIterations = 18; + + public int pgsIterations = 2; + public int stabilizationIterations = 2; + + /** + * The damping ratio used by the springs for contact constraint stabilization. + */ + public double contactSpringDampingRatio = 5.0; + + /** + * The natural frequency used by the springs for contact constraint regularization. + */ + public double contactSpringFrequency = 40.0; + + /** + * Minimum number of dynamic bodies in each active island. + */ + public int minDynamicBodiesPerIsland = 128; + + /** + * Physics ticks done per game tick in the physics pipeline. + */ + public int substepsPerTick = 2; +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.java new file mode 100644 index 0000000..8c3766e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.java @@ -0,0 +1,69 @@ +package dev.ryanhcode.sable.physics.config.block_properties; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.DataResult; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; +import net.minecraft.world.level.block.state.properties.Property; + +import java.util.ArrayList; +import java.util.List; + +public record BlockStateConditionSet(List blockStateConditions) { + + public static final Codec CODEC = Codec.STRING.comapFlatMap(BlockStateConditionSet::parse, BlockStateConditionSet::toString).stable(); + + public static DataResult parse(final String value) { + final String[] parts = value.split(","); + final List conditions = new ArrayList<>(); + try { + for (final String part : parts) { + conditions.add(BlockStateCondition.parse(part)); + } + } catch (final IllegalArgumentException exception) { + return DataResult.error(exception::getMessage); + } + return DataResult.success(new BlockStateConditionSet(conditions)); + } + + @Override + public String toString() { + return String.join(",", this.blockStateConditions.stream().map(BlockStateCondition::toString).toList()); + } + + public boolean matches(final StateDefinition stateDefinition, final BlockState state) { + for (final BlockStateCondition condition : this.blockStateConditions) { + final Property property = stateDefinition.getProperty(condition.property()); + if (property == null) { + return false; + } + + final Comparable expectedValue = property.getValue(condition.value()).orElse(null); + if (expectedValue == null) { + return false; + } + + if (!state.getValue(property).equals(expectedValue)) { + return false; + } + } + return true; + } + + public record BlockStateCondition(String property, String value) { + public static BlockStateCondition parse(final String value) { + final String[] parts = value.split("="); + if (parts.length != 2) { + throw new IllegalArgumentException("Invalid block state condition: " + value); + } + return new BlockStateCondition(parts[0], parts[1]); + } + + @Override + public String toString() { + return this.property + "=" + this.value; + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.java new file mode 100644 index 0000000..3962115 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.physics.config.block_properties; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.ExtraCodecs; + +import java.util.Map; +import java.util.Objects; +import java.util.Optional; + +/** + * The definition of the physics block properties for a block + */ +public record PhysicsBlockPropertiesDefinition(ExtraCodecs.TagOrElementLocation selector, + int priority, + Map properties, + Optional>> overrides) { + + public static final Codec> PROPERTIES_CODEC = + Codec.dispatchedMap(ResourceLocation.CODEC, PhysicsBlockPropertyTypes::getPropertyCodec); + + public static final Codec CODEC = + RecordCodecBuilder.create(i -> i.group( + ExtraCodecs.TAG_OR_ELEMENT_ID.fieldOf("selector").forGetter(PhysicsBlockPropertiesDefinition::selector), + Codec.intRange(0, Integer.MAX_VALUE).optionalFieldOf("priority", 1000).forGetter(PhysicsBlockPropertiesDefinition::priority), + PROPERTIES_CODEC.fieldOf("properties").forGetter(PhysicsBlockPropertiesDefinition::properties), + Codec.dispatchedMap(BlockStateConditionSet.CODEC, (ignored) -> PROPERTIES_CODEC) + .optionalFieldOf("overrides").forGetter(PhysicsBlockPropertiesDefinition::overrides) + ).apply(i, PhysicsBlockPropertiesDefinition::new)); + + public static final StreamCodec STREAM_CODEC = + ByteBufCodecs.fromCodec(CODEC); + + @Override + public int hashCode() { + return Objects.hash(this.selector); + } + + @Override + public String toString() { + return "PhysicsBlockPropertiesDefinition{selector=%s, properties=%s}".formatted(this.selector, this.properties); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.java new file mode 100644 index 0000000..d252df1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.java @@ -0,0 +1,122 @@ +package dev.ryanhcode.sable.physics.config.block_properties; + +import com.google.gson.Gson; +import com.google.gson.JsonElement; +import com.mojang.datafixers.util.Pair; +import com.mojang.serialization.DataResult; +import com.mojang.serialization.JsonOps; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.block_properties.BlockStateExtension; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.core.Holder; +import net.minecraft.core.HolderSet; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.server.packs.resources.SimpleJsonResourceReloadListener; +import net.minecraft.tags.TagKey; +import net.minecraft.util.ExtraCodecs; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.StateDefinition; + +import java.util.Collection; +import java.util.Comparator; +import java.util.Map; +import java.util.Optional; + +public class PhysicsBlockPropertiesDefinitionLoader extends SimpleJsonResourceReloadListener { + public static final String NAME = "physics_block_properties"; + public static final ResourceLocation ID = Sable.sablePath(NAME); + + protected static final Gson GSON = new Gson(); + public static final PhysicsBlockPropertiesDefinitionLoader INSTANCE = new PhysicsBlockPropertiesDefinitionLoader(); + private final ObjectList definitions = new ObjectArrayList<>(); + + private PhysicsBlockPropertiesDefinitionLoader() { + super(GSON, NAME); + } + + @Override + public String getName() { + return super.getName(); + } + + @Override + protected void apply(final Map map, final ResourceManager resourceManager, final ProfilerFiller profilerFiller) { + this.definitions.clear(); + + for (final Map.Entry entry : map.entrySet()) { + final ResourceLocation file = entry.getKey(); + final JsonElement json = entry.getValue(); + + final DataResult> decoded = PhysicsBlockPropertiesDefinition.CODEC.decode(JsonOps.INSTANCE, json); + + decoded.result().ifPresent(pair -> { + final PhysicsBlockPropertiesDefinition definition = pair.getFirst(); + this.definitions.add(definition); + }); + + decoded.error().ifPresent(error -> { + Sable.LOGGER.error("Error while loading physics block properties entry: {}", error); + }); + } + + // Sort by priority + this.definitions.sort(Comparator.comparingInt(PhysicsBlockPropertiesDefinition::priority)); + } + + /** + * Applies a singular physics definition to a block or set of blocks + */ + public static void applyToBlocks(final PhysicsBlockPropertiesDefinition definition) { + final ExtraCodecs.TagOrElementLocation selector = definition.selector(); + final ObjectArrayList blocks = new ObjectArrayList<>(16); + + if (selector.tag()) { + // The selector is a tag, let's pick all blocks + final TagKey tagKey = TagKey.create(Registries.BLOCK, selector.id()); + final Optional> tagBlocks = BuiltInRegistries.BLOCK.getTag(tagKey); + + if(tagBlocks.isPresent()) { + final HolderSet.Named blockHolders = tagBlocks.get(); + + for (final Holder blockHolder : blockHolders) { + final Block block = blockHolder.value(); + + blocks.add(block); + } + } else { + throw new IllegalStateException("Unknown tag: %s".formatted(selector.id())); + } + } else { + // The selector is not a tag, let's just get the block + final Block block = BuiltInRegistries.BLOCK.get(selector.id()); + + blocks.add(block); + } + + for (final Block block : blocks) { + final StateDefinition stateDefinition = block.getStateDefinition(); + for (final BlockState state : stateDefinition.getPossibleStates()) { + ((BlockStateExtension) state).sable$loadProperties(stateDefinition, definition); + } + } + } + + /** + * Applies all registered physics definitions to blocks + */ + public void applyAll() { + for (final PhysicsBlockPropertiesDefinition definition : this.definitions) { + applyToBlocks(definition); + } + } + + public Collection getDefinitions() { + return this.definitions; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.java new file mode 100644 index 0000000..40fb3c3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.java @@ -0,0 +1,105 @@ +package dev.ryanhcode.sable.physics.config.block_properties; + +import dev.ryanhcode.sable.mixinterface.block_properties.BlockStateExtension; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockMaterial; +import net.minecraft.core.BlockPos; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; + +public class PhysicsBlockPropertyHelper { + + /** + * Gets the mass of a block in [kpg] + * + * @param level The level + * @param pos The position of the block + * @param state The state of the block + * @return The mass of the block + */ + public static double getMass(final BlockGetter level, final BlockPos pos, final BlockState state) { + final boolean solid = VoxelNeighborhoodState.isSolid(level, pos, state); + + if (!solid) { + // TODO: Doing this means that sub-levels can end up with an existent bounding box but without any mass, invalidating them + return 0.0; + } + + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.MASS.get()); + } + + /** + * Gets the inertia of a block, if specified + * + * @param level The level + * @param pos The position of the block + * @param state The state of the block + * @return The inertia of the block + */ + @Nullable + public static Vec3 getInertia(final BlockGetter level, final BlockPos pos, final BlockState state) { + final boolean solid = VoxelNeighborhoodState.isSolid(level, pos, state); + + if (!solid) { + return null; + } + + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.INERTIA.get()); + } + + /** + * Gets the friction multiplier of a block + * + * @param state The state of the block + * @return The friction multiplier of the block + */ + public static double getFriction(final BlockState state) { + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.FRICTION.get()); + } + + /** + * Gets the buoyancy volume multiplier of a block + * + * @param state The state of the block + * @return The buoyancy volume of the block + */ + public static double getVolume(final BlockState state) { + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.VOLUME.get()); + } + + /** + * Gets the restitution of a block + * + * @param state The state of the block + * @return The restitution of the block + */ + public static double getRestitution(final BlockState state) { + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.RESTITUTION.get()); + } + + /** + * Gets the scale of the floating of a block + * @param state The state of the block + * @return The floating multiplier of the block + */ + public static double getFloatingScale(final BlockState state) { + return ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.FLOATING_SCALE.get()); + } + + /** + * Gets the floating material of a block + * @param state The state of the block + * @return The floating material of the block + */ + public static FloatingBlockMaterial getFloatingMaterial(final BlockState state) { + final ResourceLocation location = ((BlockStateExtension) state).sable$getProperty(PhysicsBlockPropertyTypes.FLOATING_MATERIAL.get()); + if (location == null) + return null; + return FloatingBlockMaterialDataHandler.allMaterials.get(location); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.java new file mode 100644 index 0000000..f1bb82d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.java @@ -0,0 +1,120 @@ +package dev.ryanhcode.sable.physics.config.block_properties; + +import com.mojang.serialization.Codec; +import dev.ryanhcode.sable.Sable; +import foundry.veil.platform.registry.RegistrationProvider; +import foundry.veil.platform.registry.RegistryObject; +import net.minecraft.core.Registry; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.phys.Vec3; + +/** + * All default physics block properties + */ +public class PhysicsBlockPropertyTypes { + public static final ResourceKey>> REGISTRY_KEY = ResourceKey.createRegistryKey(Sable.sablePath("physics_block_properties")); + private static final RegistrationProvider> VANILLA_PROVIDER; + private static final Registry> REGISTRY; + + static { + VANILLA_PROVIDER = RegistrationProvider.get(REGISTRY_KEY, Sable.MOD_ID); + REGISTRY = VANILLA_PROVIDER.asVanillaRegistry(); + } + + /** + * The mass of a block in [kpg] + */ + public static final RegistryObject> MASS = register(Sable.sablePath("mass"), Codec.DOUBLE, 1.0); + /** + * The optional 3d vector representing the principal inertia of the block + */ + public static final RegistryObject> INERTIA = register(Sable.sablePath("inertia"), Vec3.CODEC, null); + /** + * The volume of a block, used for buoyancy + */ + public static final RegistryObject> VOLUME = register(Sable.sablePath("volume"), Codec.DOUBLE, 1.0); + /** + * The restitution of a block + */ + public static final RegistryObject> RESTITUTION = register(Sable.sablePath("restitution"), Codec.DOUBLE, 0.0); + /** + * The friction multiplier of a block + */ + public static final RegistryObject> FRICTION = register(Sable.sablePath("friction"), Codec.DOUBLE, 1.0); + /** + * If this block is fragile + */ + public static final RegistryObject> FRAGILE = register(Sable.sablePath("fragile"), Codec.BOOL, false); + /** + * The floating material {@link ResourceLocation} this block should have + */ + public static final RegistryObject> FLOATING_MATERIAL = register(Sable.sablePath("floating_material"), ResourceLocation.CODEC, null); + /** + * The scale / multiplier of the effects caused by the floating material for this block + */ + public static final RegistryObject> FLOATING_SCALE = register(Sable.sablePath("floating_scale"), Codec.DOUBLE, 1.0); + + public static void register() { + // no-op + } + /** + * Registers a physics block property. + * + * @param id The id of the property + * @param codec The codec defining serialization/deserialization for the property + * @return The registered property + */ + private static RegistryObject> register(final ResourceLocation id, final Codec codec, final T defaultValue) { + // Throw if the property is already registered + if (REGISTRY.containsKey(id)) { + throw new IllegalArgumentException("Duplicate physics block property: %s".formatted(id)); + } + + return VANILLA_PROVIDER.register(id, () -> new PhysicsBlockPropertyType<>(REGISTRY.size(), codec, defaultValue)); + } + + /** + * The count of registered properties + */ + public static int count() { + return REGISTRY.size(); + } + + /** + * Gets the codec for a property. + * + * @param id The id of the property + * @return The codec for the property + */ + public static Codec getPropertyCodec(final ResourceLocation id) { + final PhysicsBlockPropertyType property = REGISTRY.get(id); + + if (property != null) { + //noinspection unchecked + return (Codec) property.codec; + } + + throw new IllegalArgumentException("Unknown physics block property: %s".formatted(id)); + } + + /** + * Gets a property type + * + * @param id The id of the property + * @return The property type + */ + public static PhysicsBlockPropertyType getPropertyType(final ResourceLocation id) { + final PhysicsBlockPropertyType property = REGISTRY.get(id); + + if (property != null) { + return property; + } + + throw new IllegalArgumentException("Unknown physics block property: %s".formatted(id)); + } + + public record PhysicsBlockPropertyType(int id, Codec codec, T defaultValue) { + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.java new file mode 100644 index 0000000..b0fca4d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.java @@ -0,0 +1,78 @@ +package dev.ryanhcode.sable.physics.config.dimension_physics; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.DataResult; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import dev.ryanhcode.sable.util.SableCodecUtil; + +import java.util.ArrayList; +import java.util.List; + +public class BezierResourceFunction { + public static final Codec CODEC = BezierPoint.CODEC.listOf().flatXmap( + (bezierPoints -> DataResult.success(new BezierResourceFunction(bezierPoints))), + (bezierResourceFunction -> DataResult.success(bezierResourceFunction.getPoints())) + ); + + private final List points; + + public BezierResourceFunction(final List points) { + this.points = points; + } + + public BezierResourceFunction() { + this.points = new ArrayList<>(); + } + + public List getPoints() { + return this.points; + } + + public void addPoint(final BezierPoint point) { + this.points.add(point); + } + + public int pointSize() { + return this.points.size(); + } + + public double evaluateFunction(final double position) { + if (this.points.isEmpty()) + return 1; + if (this.points.size() == 1) + return this.points.get(0).value; + int index = -1; + for (final BezierPoint point : this.points) { + if (position < point.altitude()) + break; + index++; + } + if (index == -1) + return this.points.get(0).value; + if (index >= this.points.size() - 1) + return this.points.get(this.points.size() - 1).value; + + final BezierPoint point1 = this.points.get(index); + final BezierPoint point2 = this.points.get(index + 1); + + final double relativeX = point2.altitude - point1.altitude; + final double relativeY = point2.value - point1.value; + final double slope1 = point1.slope; + final double slope2 = point2.slope; + final double t = (position - point1.altitude) / relativeX; + + final double cubicFactor = (slope1 + slope2) * relativeX - 2 * relativeY; + final double quadraticFactor = 3 * relativeY - (2 * slope1 + slope2) * relativeX; + final double linearFactor = relativeX * slope1; + + return Math.max(((cubicFactor * t + quadraticFactor) * t + linearFactor) * t + point1.value, 0); + } + + public record BezierPoint(double altitude, double value, double slope) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.DOUBLE.fieldOf("altitude").forGetter(BezierPoint::altitude), + SableCodecUtil.positiveDouble(true).fieldOf("value").forGetter(BezierPoint::value), + Codec.DOUBLE.fieldOf("slope").forGetter(BezierPoint::slope) + ).apply(instance, BezierPoint::new)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.java new file mode 100644 index 0000000..07413b6 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.java @@ -0,0 +1,80 @@ +package dev.ryanhcode.sable.physics.config.dimension_physics; + +import com.mojang.datafixers.kinds.Applicative; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.util.ExtraCodecs; +import net.minecraft.world.level.Level; +import org.joml.Vector3f; + +import java.util.Optional; + +public record DimensionPhysics(ResourceLocation dimension, int priority, Optional universalDrag, + Optional baseGravity, Optional basePressure, + Optional pressureFunction, Optional magneticNorth) { + public static final Vector3f DEFAULT_GRAVITY = new Vector3f(0.0f, -11.0f, 0.0f); + public static final Vector3f DEFAULT_MAGNETIC_NORTH = new Vector3f(0, 0, 0); + public static final double DEFAULT_PRESSURE = 1.0; + private static final float DEFAULT_UNIVERSAL_DRAG = 0.09f; + + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + ResourceLocation.CODEC.fieldOf("dimension").forGetter(DimensionPhysics::dimension), + Codec.intRange(0, Integer.MAX_VALUE).optionalFieldOf("priority", 1000).forGetter(DimensionPhysics::priority), + Codec.optionalField("universal_drag", Codec.FLOAT, false).forGetter(DimensionPhysics::universalDrag), + Codec.optionalField("base_gravity", ExtraCodecs.VECTOR3F, false).forGetter(DimensionPhysics::baseGravity), + Codec.optionalField("base_pressure", Codec.DOUBLE, false).forGetter(DimensionPhysics::basePressure), + Codec.optionalField("pressure_function", BezierResourceFunction.CODEC, false).forGetter(DimensionPhysics::pressureFunction), + Codec.optionalField("magnetic_north", ExtraCodecs.VECTOR3F, false).forGetter(DimensionPhysics::magneticNorth) + ).apply(Applicative.unbox(instance), DimensionPhysics::new)); + + public static DimensionPhysics createDefault(final Level level) { + // constructs a bezier air pressure curve approximating an exponential decay, centered around sea level + // clamped to at most 1.5 pressure underground, and with a 40-meter smooth drop-off at the build limit + final double seaLevel = level.getSeaLevel(); + + double currentAltitude = level.dimensionType().minY(); + final double maxAltitude = currentAltitude + level.dimensionType().logicalHeight(); + + final double baseSlope = -0.004; + final double maxPressure = 1.5; + final double maxStep = 200; + + final double smoothingAltitude = maxAltitude - 40; + + // clamps the bottom most point to have a pressure of 1.5 or less + currentAltitude = Math.max(currentAltitude, Math.log(maxPressure) / baseSlope + seaLevel); + + final BezierResourceFunction pressureFunction = new BezierResourceFunction(); + + while (true) { + final double currentPressure = Math.exp(baseSlope * (currentAltitude - seaLevel)); + final double currentSlope = currentPressure * baseSlope; + pressureFunction.addPoint(new BezierResourceFunction.BezierPoint(currentAltitude, currentPressure, currentSlope)); + + if (currentAltitude < seaLevel && currentAltitude + maxStep >= seaLevel) { + currentAltitude = seaLevel; + } else if (currentAltitude < smoothingAltitude && currentAltitude + maxStep >= smoothingAltitude) { + currentAltitude = smoothingAltitude; + } else if (currentAltitude >= smoothingAltitude) { + break; + } else { + currentAltitude += maxStep; + } + } + + final double smoothingPressure = pressureFunction.getPoints().get(pressureFunction.pointSize() - 1).value(); + final double finalSlope = -2 * smoothingPressure / (maxAltitude - smoothingAltitude); + pressureFunction.addPoint(new BezierResourceFunction.BezierPoint(maxAltitude, 0, finalSlope)); + + final Vector3f north = level.dimensionType().natural() ? DEFAULT_MAGNETIC_NORTH : new Vector3f(0, 0, 0); + + return new DimensionPhysics(level.dimension().location(), + 0, + Optional.of(DEFAULT_UNIVERSAL_DRAG), + Optional.of(DEFAULT_GRAVITY), + Optional.of(DEFAULT_PRESSURE), + Optional.of(pressureFunction), + Optional.of(north)); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.java b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.java new file mode 100644 index 0000000..32866d1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.java @@ -0,0 +1,134 @@ +package dev.ryanhcode.sable.physics.config.dimension_physics; + +import com.google.gson.Gson; +import com.google.gson.JsonElement; +import com.mojang.serialization.DataResult; +import com.mojang.serialization.JsonOps; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.server.packs.resources.SimpleJsonResourceReloadListener; +import net.minecraft.util.profiling.ProfilerFiller; +import net.minecraft.world.level.Level; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.joml.Vector3fc; + +import java.util.HashMap; +import java.util.Map; + +public class DimensionPhysicsData { + static final Map, DimensionPhysics> DIMENSION_PHYSICS_DATA = new HashMap<>(); + static final Map, DimensionPhysics> DEFAULT_DIMENSION_PHYSICS_DATA = new HashMap<>(); + + public static DimensionPhysics of(final Level level) { + final DimensionPhysics dimensionPhysics = DIMENSION_PHYSICS_DATA.get(level.dimension()); + if (dimensionPhysics == null) { + return getDefault(level); + } + + return dimensionPhysics; + } + + public static DimensionPhysics getDefault(final Level level) { + DimensionPhysics dimensionPhysics = DEFAULT_DIMENSION_PHYSICS_DATA.get(level.dimension()); + + if (dimensionPhysics == null) { + dimensionPhysics = DimensionPhysics.createDefault(level); + DEFAULT_DIMENSION_PHYSICS_DATA.put(level.dimension(), dimensionPhysics); + } + + return dimensionPhysics; + } + + public static Vector3d getGravity(final Level level) { + return getGravity(level, JOMLConversion.ZERO); + } + + public static Vector3d getGravity(final Level level, final Vector3dc pos) { + return getGravity(level, pos, new Vector3d()); + } + + public static Vector3d getGravity(final Level level, final Vector3dc pos, final Vector3d dest) { + final DimensionPhysics physics = DimensionPhysicsData.of(level); + final DimensionPhysics defaultPhysics = getDefault(level); + + final Vector3fc gravity = physics.baseGravity().orElseGet(defaultPhysics.baseGravity()::orElseThrow); + return dest.set(gravity); + } + + public static double getAirPressure(final Level level, final Vector3dc pos) { + final DimensionPhysics physics = DimensionPhysicsData.of(level); + final DimensionPhysics defaultPhysics = getDefault(level); + + final double pressure = physics.basePressure().orElseGet(defaultPhysics.basePressure()::orElseThrow); + final BezierResourceFunction curve = physics.pressureFunction().orElseGet(defaultPhysics.pressureFunction()::orElseThrow); + + return pressure * curve.evaluateFunction(pos.y()); + } + + public static Vector3fc getMagneticNorth(final Level level) { + final DimensionPhysics physics = DimensionPhysicsData.of(level); + final DimensionPhysics defaultPhysics = getDefault(level); + + return physics.magneticNorth().orElseGet(defaultPhysics.magneticNorth()::orElseThrow); + } + + public static double getUniversalDrag(final ServerLevel level) { + final DimensionPhysics physics = DimensionPhysicsData.of(level); + final DimensionPhysics defaultPhysics = getDefault(level); + + return physics.universalDrag().orElseGet(defaultPhysics.universalDrag()::orElseThrow); + } + + public static class ReloadListener extends SimpleJsonResourceReloadListener { + + private static final Gson GSON = new Gson(); + public static final ReloadListener INSTANCE = new ReloadListener(); + + public static final String NAME = "dimension_physics"; + public static final ResourceLocation ID = Sable.sablePath(NAME); + + public ReloadListener() { + super(ReloadListener.GSON, NAME); + } + + public static void addKeyWithPriority(final Map, DimensionPhysics> data, final ResourceKey key, final DimensionPhysics newProperties) { + final DimensionPhysics existing = data.get(key); + + if (existing != null) { + if (newProperties.priority() > existing.priority()) { + data.put(key, newProperties); + } + } else { + data.put(key, newProperties); + } + } + + @Override + protected void apply(final Map map, final ResourceManager resourceManager, final ProfilerFiller profiler) { + DIMENSION_PHYSICS_DATA.clear(); + + for (final Map.Entry entry : map.entrySet()) { + try { + final DataResult dataResult = DimensionPhysics.CODEC.parse(JsonOps.INSTANCE, entry.getValue()); + + if (dataResult.error().isPresent()) { + Sable.LOGGER.error(String.valueOf(dataResult.error().get())); + } + + final DimensionPhysics dimensionPhysics = dataResult.getOrThrow(); + final ResourceKey dimension = ResourceKey.create(Registries.DIMENSION, dimensionPhysics.dimension()); + + addKeyWithPriority(DIMENSION_PHYSICS_DATA, dimension, dimensionPhysics); + } catch (final Exception e) { + Sable.LOGGER.error("Error while loading dimension data \"{}\" : {} ", entry.getKey(), e.getMessage()); + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.java b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.java new file mode 100644 index 0000000..0293c3c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.physics.floating_block; + +public class FloatingBlockCluster { + private final FloatingBlockMaterial material; + private final FloatingBlockData blockData; + + public FloatingBlockCluster(final FloatingBlockMaterial material) { + this.material = material; + this.blockData = new FloatingBlockData(); + } + + public FloatingBlockMaterial getMaterial() { + return this.material; + } + + public FloatingBlockData getBlockData() { + return this.blockData; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.java b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.java new file mode 100644 index 0000000..b61a272 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.java @@ -0,0 +1,402 @@ +package dev.ryanhcode.sable.physics.floating_block; + +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.physics.force.QueuedForceGroup; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.util.SableMathUtils; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.*; + +import java.lang.Math; +import java.util.ArrayList; +import java.util.List; + +/** + * Clusters & manages forces caused by floating block materials + */ +public class FloatingBlockController { + private static final Vector3d frictionForce = new Vector3d(); + private static final Vector3d frictionTorque = new Vector3d(); + private static final Vector3d clusterFrictionForce = new Vector3d(); + private static final Vector3d clusterFrictionTorque = new Vector3d(); + private static final Vector3d localGravity = new Vector3d(); + private static final Vector3d localLinearVelocity = new Vector3d(); + private static final Vector3d localAngularVelocity = new Vector3d(); + private final FloatingClusterContainer sublevelContainer = new FloatingClusterContainer(); + List containers = new ArrayList<>(); + private final ServerSubLevel subLevel; + private final Vector3d previousCenterOfMass = new Vector3d(); + + + public FloatingBlockController(final ServerSubLevel subLevel) { + this.subLevel = subLevel; + } + + public void physicsTick(final double partialPhysicsTick, final double timeStep, final Vector3dc linearVelocity, final Vector3dc angularVelocity, final Vector3d linearImpulse, final Vector3d angularImpulse) { + + containers.clear(); + containers.add(sublevelContainer); + for(KinematicContraption contraption : subLevel.getPlot().getContraptions()) { + FloatingClusterContainer container = contraption.sable$getFloatingClusterContainer(); + + final Vector3dc lastPosition = new Vector3d(contraption.sable$getPosition(partialPhysicsTick - 1.0f)); + final Quaterniondc lastOrientation = new Quaterniond(contraption.sable$getOrientation(partialPhysicsTick - 1.0f)); + + container.positionOffset.set(contraption.sable$getPosition(partialPhysicsTick)); + container.rotationOffset.set(contraption.sable$getOrientation(partialPhysicsTick)); + + container.positionOffset.sub(lastPosition, container.velocity); + SableMathUtils.getAngularVelocity(lastOrientation, container.rotationOffset, container.angularVelocity); + + //System.out.println(lastOrientation.z()+" "+lastOrientation.w()); + //System.out.println(container.rotationOffset.z()+" "+container.rotationOffset.w()); + //System.out.println(container.angularVelocity.z); + + container.velocity.mul(20.0); + container.angularVelocity.mul(20.0); + //container.rotationOffset.transformInverse(container.velocity); + //container.rotationOffset.transformInverse(container.angularVelocity); + + container.positionOffset.sub(subLevel.getMassTracker().getCenterOfMass()); + + containers.add(container); + } + + + this.processBlockChanges(); + + localGravity.set(DimensionPhysicsData.getGravity(this.subLevel.getLevel(), this.subLevel.logicalPose().position())); + this.subLevel.logicalPose().orientation().transformInverse(localGravity); + if(!needsTicking()) + return; + + this.subLevel.logicalPose().orientation().transformInverse(linearVelocity, localLinearVelocity); + this.subLevel.logicalPose().orientation().transformInverse(angularVelocity, localAngularVelocity); + + frictionForce.zero(); + frictionTorque.zero(); + + final QueuedForceGroup dragGroup = this.subLevel.getOrCreateQueuedForceGroup(ForceGroups.DRAG.get()); + final List recordedFrictionForces = new ObjectArrayList<>(); + + for (FloatingClusterContainer container : containers) { + + for (final FloatingBlockCluster cluster : container.clusters) { + if (cluster.getMaterial().scaleWithPressure()) + cluster.getBlockData().computePressureScale(subLevel); + + this.applyFriction(container,cluster, localGravity, localLinearVelocity, localAngularVelocity, clusterFrictionForce, clusterFrictionTorque); + + final Vector3d recordedClusterFrictionForce = new Vector3d(clusterFrictionForce); + this.recordForce(container,cluster, dragGroup, recordedClusterFrictionForce); + recordedFrictionForces.add(recordedClusterFrictionForce); + + frictionForce.add(clusterFrictionForce); + frictionTorque.add(clusterFrictionTorque); + } + } + /*expectedVelocity.set(frictionForce); + expectedVelocity.mul(1 / this.subLevel.getMassTracker().getMass()); + expectedVelocity.mul(timeStep); + final double forceScale = this.getClampingFactor(localLinearVelocity, expectedVelocity); + + expectedVelocity.set(frictionTorque); + this.subLevel.getMassTracker().getInverseInertiaTensor().transform(expectedVelocity); + expectedVelocity.mul(timeStep); + final double torqueScale = this.getClampingFactor(localAngularVelocity, expectedVelocity); + + frictionForce.mul(forceScale); + frictionTorque.mul(torqueScale);*/ + + //final double forceScale = this.getKineticClampingFactor(localLinearVelocity,localAngularVelocity,frictionForce,frictionTorque,timeStep); + //frictionForce.mul(forceScale); + //frictionTorque.mul(forceScale); + + // scale recorded forces + for (final Vector3d force : recordedFrictionForces) { + force.mul(timeStep);//forceScale * + } + if(localGravity.lengthSquared()>0) + this.applyLift(localGravity, linearImpulse, angularImpulse, timeStep); + + linearImpulse.fma(timeStep, frictionForce); + angularImpulse.fma(timeStep, frictionTorque); + } + + public boolean needsTicking() + { + if(sublevelContainer.needsTicking()) + return true; + for (FloatingClusterContainer container : containers) { + if(container.needsTicking()) + return true; + } + return false; + } + + private void processBlockChanges() { + + this.previousCenterOfMass.sub(this.subLevel.getMassTracker().getCenterOfMass()); + for (final FloatingBlockCluster cluster : sublevelContainer.clusters) { + cluster.getBlockData().translateOrigin(this.previousCenterOfMass); + } + sublevelContainer.processBlockChanges(this.subLevel.getMassTracker().getCenterOfMass()); + this.previousCenterOfMass.set(this.subLevel.getMassTracker().getCenterOfMass()); + + } + //note on units: + // strength unit is the material strength + // weight unit is total material amount, scaled by individual block values + // strength and weight together is total mass lifting capacity for this cluster + + private static final Vector3d totalWeightedForce = new Vector3d();//strength * weight * position + private static final Vector3d averageForcePos = new Vector3d();//position + private static final Vector3d liftingForce = new Vector3d();//strength * weight * gravity + private static final Vector3d liftingTorque = new Vector3d();//strength * weight * gravity * position + private static final Vector3d torqueTemp = new Vector3d(); + private static final Vector3d weightedPositionTemp = new Vector3d();//weight * position + private static final Vector3d totalAcceleration = new Vector3d(); + + private void applyLift(final Vector3d localGravity, final Vector3d linearImpulse, final Vector3d angularImpulse, final double timeStep) { + double totalForce = 0;//strength * weight + + totalWeightedForce.set(0); + + for (FloatingClusterContainer container : containers) { + + for (final FloatingBlockCluster cluster : container.clusters) { + final FloatingBlockMaterial material = cluster.getMaterial(); + + if (material.liftStrength() == 0) continue; + + //unit: strength + double clusterForce = material.liftStrength(); + if (material.scaleWithPressure()) + clusterForce *= cluster.getBlockData().getPressureScale(); + + //unit: strength * weight + double weightedForce = clusterForce * cluster.getBlockData().totalScale; + + getTrueWeightedClusterPosition(container,cluster,weightedPositionTemp); + + if (material.preventSelfLift()) { + totalForce += weightedForce; + totalWeightedForce.fma(clusterForce, weightedPositionTemp); + } else { + + linearImpulse.fma(-weightedForce * timeStep, localGravity); + + if (this.subLevel.isTrackingIndividualQueuedForces()) { + final QueuedForceGroup levitationGroup = this.subLevel.getOrCreateQueuedForceGroup(ForceGroups.LEVITATION.get()); + + this.recordForce(container,cluster, levitationGroup, new Vector3d(localGravity).mul(-weightedForce * timeStep)); + } + + localGravity.cross(weightedPositionTemp, torqueTemp);//torqueTemp unit: weight * position * gravity + angularImpulse.fma(clusterForce * timeStep, torqueTemp); + } + + } + } + if (totalForce <= 0) + return; + + totalWeightedForce.div(totalForce, averageForcePos); + + liftingForce.set(localGravity).mul(-totalForce); + averageForcePos.cross(liftingForce, liftingTorque); + + this.subLevel.getMassTracker().getInverseInertiaTensor().transform(liftingTorque, torqueTemp).cross(averageForcePos, totalAcceleration); + totalAcceleration.fma(1 / this.subLevel.getMassTracker().getMass(), liftingForce); + + double scaleFactor = -localGravity.lengthSquared() / localGravity.dot(totalAcceleration); + + if (scaleFactor > 1) { + scaleFactor = 1; + } + + liftingForce.mul(scaleFactor); + liftingTorque.mul(scaleFactor); + + if (this.subLevel.isTrackingIndividualQueuedForces()) { + final QueuedForceGroup levitationGroup = this.subLevel.getOrCreateQueuedForceGroup(ForceGroups.LEVITATION.get()); + + for (FloatingClusterContainer container : containers) { + + for (final FloatingBlockCluster cluster : container.clusters) { + final FloatingBlockMaterial material = cluster.getMaterial(); + + final Vector3d force = new Vector3d(localGravity).mul(timeStep * -cluster.getBlockData().totalScale * material.liftStrength()); + force.mul(scaleFactor); + + this.recordForce(container,cluster, levitationGroup, force); + } + } + } + + //this.liftForceCombinator.apply(scaleFactor); + + linearImpulse.fma(timeStep, liftingForce); + angularImpulse.fma(timeStep, liftingTorque); + } + + private void recordForce(final FloatingClusterContainer container,final FloatingBlockCluster cluster, final QueuedForceGroup forceGroup, final Vector3d force) { + forceGroup.recordPointForce(getTrueWeightedClusterPosition(container,cluster,new Vector3d()).div(cluster.getBlockData().totalScale).add(this.subLevel.getMassTracker().getCenterOfMass()), force); + } + private Vector3d getTrueWeightedClusterPosition(final FloatingClusterContainer container,final FloatingBlockCluster cluster,final Vector3d pos) + { + container.rotationOffset.transform(cluster.getBlockData().weightedPosition,pos); + return pos.fma(cluster.getBlockData().totalScale,container.positionOffset); + } + + private static final Matrix3d containerRotation = new Matrix3d(); + private static final Vector3d clusterCenter = new Vector3d(); + private static final Vector3d totalAngularVelocity = new Vector3d(); + private static final Vector3d rotatedPos = new Vector3d(); + private static final Matrix3d slowDragMatrix = new Matrix3d(); + private static final Matrix3d fastDragMatrix = new Matrix3d(); + private static final Matrix3d averagePositionMatrix = new Matrix3d(); + private static final Matrix3d averagePositionMatrixInverse = new Matrix3d(); + private static final Matrix3d shiftedPositionMatrix = new Matrix3d(); + private static final Matrix3d shiftedPositionMatrixInverse = new Matrix3d(); + private static final Matrix3d tempTorqueMatrix = new Matrix3d(); + private static final Vector3d meanVelocity = new Vector3d(); + private static final Vector3d shiftedCenter = new Vector3d(); + private static final Vector3d linearSlowDrag = new Vector3d(); + + private void applyFriction(final FloatingClusterContainer container,final FloatingBlockCluster cluster, final Vector3dc localGravity, final Vector3dc linearVelocity, final Vector3dc angularVelocity, final Vector3d frictionForce, final Vector3d frictionTorque) { + + double frictionScale = 1; + if(cluster.getMaterial().scaleWithGravity()) + frictionScale = localGravity.length(); + if (cluster.getMaterial().scaleWithPressure()) + frictionScale *= cluster.getBlockData().getPressureScale(); + + double speedScale = 3 / (cluster.getMaterial().transitionSpeed() * cluster.getMaterial().transitionSpeed()); + if (cluster.getMaterial().transitionSpeed() == 0) + speedScale = 0; + + totalAngularVelocity.set(angularVelocity).add(container.angularVelocity); + getTrueWeightedClusterPosition(container,cluster,clusterCenter).div(cluster.getBlockData().totalScale); + + cluster.getBlockData().outerProduct.scale(1 / cluster.getBlockData().totalScale, averagePositionMatrix); + + //rotate averagePositionMatrix by container.rotationOffset + container.rotationOffset.get(containerRotation); + averagePositionMatrix.mulLocal(containerRotation); + averagePositionMatrix.mul(containerRotation.transpose()); + + //set up matrices + averagePositionMatrix.invert(averagePositionMatrixInverse); + shiftedPositionMatrixInverse.set(averagePositionMatrixInverse); + SableMathUtils.fmaInertiaTensor(totalAngularVelocity, speedScale, shiftedPositionMatrixInverse); + shiftedPositionMatrixInverse.invert(shiftedPositionMatrix); + + //velocity of the center of lift in local space + angularVelocity.cross(clusterCenter, meanVelocity); + container.rotationOffset.transform(cluster.getBlockData().weightedPosition,rotatedPos).div(cluster.getBlockData().totalScale); + Vector3d extraContainerVelocity = container.angularVelocity.cross(rotatedPos,rotatedPos); + meanVelocity.add(linearVelocity).add(container.velocity).add(extraContainerVelocity); + + //center of the shifted position distribution relative to clusterCenter, variance is shiftedPositionMatrix + totalAngularVelocity.cross(meanVelocity, shiftedCenter).mul(speedScale); + shiftedPositionMatrix.transform(shiftedCenter); + + double slowDragScale = Math.sqrt(shiftedPositionMatrix.determinant() / averagePositionMatrix.determinant()); + slowDragScale *= Math.exp(-0.5 * (speedScale * meanVelocity.dot(meanVelocity) - SableMathUtils.multiplyInnerProduct(shiftedCenter, shiftedPositionMatrixInverse, shiftedCenter))); + if (cluster.getMaterial().transitionSpeed() == 0) + slowDragScale = 0; + + //the drag matrices are for scaling forces in their horizontal and vertical components + this.getGravityMatrix(localGravity, cluster.getMaterial().slowVerticalFriction(), cluster.getMaterial().slowHorizontalFriction(), slowDragMatrix) + .scale(cluster.getBlockData().totalScale * frictionScale * slowDragScale); + + this.getGravityMatrix(localGravity, cluster.getMaterial().fastVerticalFriction(), cluster.getMaterial().fastHorizontalFriction(), fastDragMatrix) + .scale(cluster.getBlockData().totalScale * frictionScale); + + slowDragMatrix.transform(totalAngularVelocity.cross(shiftedCenter, linearSlowDrag).add(meanVelocity)); + fastDragMatrix.transform(meanVelocity, frictionForce).add(linearSlowDrag); + + clusterCenter.cross(frictionForce, frictionTorque); + final Vector3d torqueTemp = shiftedCenter.cross(linearSlowDrag, linearSlowDrag); + frictionTorque.add(torqueTemp); + tempTorqueMatrix.zero(); + this.matrixThingy(averagePositionMatrix, fastDragMatrix, tempTorqueMatrix); + this.matrixThingy(shiftedPositionMatrix, slowDragMatrix, tempTorqueMatrix); + tempTorqueMatrix.transform(totalAngularVelocity, torqueTemp); + frictionTorque.add(torqueTemp); + } + + private static final Matrix3d X2 = new Matrix3d(); + private static final Matrix3d Y2 = new Matrix3d(); + private static final Matrix3d YX = new Matrix3d(); + private static final Matrix3d traceMatrix = new Matrix3d(); + + //idk what to name this, sorry + private void matrixThingy(final Matrix3dc X, final Matrix3dc Y, final Matrix3d out) { + Y.mul(X, YX); + final double traceX = X.m00() + X.m11() + X.m22(); + final double traceY = Y.m00() + Y.m11() + Y.m22(); + final double traceYX = YX.m00() + YX.m11() + YX.m22(); + traceMatrix.identity().scale(traceX).sub(X, X2); + traceMatrix.identity().scale(traceY).sub(Y, Y2); + traceMatrix.identity().scale(traceYX).sub(YX, YX); + X2.mul(Y2); + out.add(X2).sub(YX); + } + + private Matrix3d getGravityMatrix(final Vector3dc g, final double verticalDrag, final double horizontalDrag, final Matrix3d target) { + if(g.lengthSquared() > 0.00001) + SableMathUtils.setOuterProduct(g, g, (horizontalDrag - verticalDrag) / g.dot(g), target); + else + target.identity(); + target.m00 -= horizontalDrag; + target.m11 -= horizontalDrag; + target.m22 -= horizontalDrag; + return target; + } + + private double getClampingFactor(final Vector3dc currentVelocity, final Vector3dc expectedVelocityChange) { + final double k = -currentVelocity.dot(expectedVelocityChange); + final double v = currentVelocity.lengthSquared(); + if (k < 0) //don't apply friction that increases velocity + return 0; + if (10 * k < v) //if the expected velocity is 10 times smaller than the actual velocity, dont bother with clamping it + return 1; + if (v < 1E-10) //simpler clamping for tiny values to avoid inaccuracies and numerical explosion + return v / (k + 1E-10); + return v * (1 - Math.exp(-k / v)) / k; + } + + private double getKineticClampingFactor(final Vector3dc currentLinearVelocity,final Vector3dc currentAngularVelocity,final Vector3d frictionForce,final Vector3d frictionTorque,final double timestep) { + + double numerator = currentLinearVelocity.dot(frictionForce) + currentAngularVelocity.dot(frictionTorque); + double denominator = frictionForce.dot(frictionForce)*subLevel.getMassTracker().getInverseMass() + + SableMathUtils.multiplyInnerProduct(frictionTorque,subLevel.getMassTracker().getInverseInertiaTensor(),frictionTorque); + denominator*=timestep; + if(denominator < 1E-10) + return 1; + double t = -numerator/denominator; + return Math.max(Math.min(t,1),0); + } + + public void addFloatingBlock(final BlockState state, final Vector3d pos) { + sublevelContainer.addFloatingBlock(state,pos); + } + + public void removeFloatingBlock(final BlockState state, final Vector3d pos) { + sublevelContainer.removeFloatingBlock(state,pos); + } + + public void queueAddFloatingBlock(final BlockState state, final BlockPos pos) { + sublevelContainer.queueAddFloatingBlock(state,pos); + } + + public void queueRemoveFloatingBlock(final BlockState state, final BlockPos pos) { + sublevelContainer.queueRemoveFloatingBlock(state,pos); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.java b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.java new file mode 100644 index 0000000..1e6a7cb --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.java @@ -0,0 +1,56 @@ +package dev.ryanhcode.sable.physics.floating_block; + +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableMathUtils; +import org.joml.Matrix3d; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +public class FloatingBlockData { + private static final Matrix3d tempMassMatrix = new Matrix3d(); + private static final Vector3d tempPosOffset = new Vector3d(); + protected Matrix3d outerProduct = new Matrix3d().scale(0); + protected Vector3d weightedPosition = new Vector3d(); + protected double totalScale; + protected int blockCount = 0; + protected double latestPressureScale = 1; + + public void addFloatingBlock(final Vector3dc pos, final double scale) { + this.addData(pos, scale); + this.blockCount++; + } + + public void removeFloatingBlock(final Vector3dc pos, final double scale) { + this.blockCount--; + this.addData(pos, -scale); + } + + private void addData(final Vector3dc pos, final double scale) { + this.weightedPosition.fma(scale, pos); + this.totalScale += scale; + + + pos.fma(-1 / this.totalScale, this.weightedPosition, tempPosOffset); + if (this.blockCount > 0) + SableMathUtils.fmaOuterProduct(tempPosOffset, tempPosOffset, scale * this.totalScale / (this.totalScale - scale), this.outerProduct); + + this.outerProduct.add(tempMassMatrix.identity().scale(scale / 6.0)); + } + + public void translateOrigin(final Vector3dc nudge) { + this.weightedPosition.fma(this.totalScale, nudge); + } + + public double getPressureScale() + { + return latestPressureScale; + } + static final Vector3d positionTemp = new Vector3d(); + public void computePressureScale(SubLevel subLevel) + { + subLevel.logicalPose().orientation().transform(weightedPosition, positionTemp); + subLevel.logicalPose().position().fma(1 / totalScale, positionTemp, positionTemp); + latestPressureScale = DimensionPhysicsData.getAirPressure(subLevel.getLevel(), positionTemp); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.java b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.java new file mode 100644 index 0000000..5b868b5 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.physics.floating_block; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.codec.ByteBufCodecs; +import net.minecraft.network.codec.StreamCodec; + +public record FloatingBlockMaterial(boolean preventSelfLift, boolean scaleWithPressure,boolean scaleWithGravity, double liftStrength, + double transitionSpeed, double slowVerticalFriction, double fastVerticalFriction, + double slowHorizontalFriction, double fastHorizontalFriction) { + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.BOOL.optionalFieldOf("prevent_self_lift", false).forGetter(FloatingBlockMaterial::preventSelfLift), + Codec.BOOL.optionalFieldOf("scale_with_pressure", false).forGetter(FloatingBlockMaterial::scaleWithPressure), + Codec.BOOL.optionalFieldOf("scale_friction_with_gravity", false).forGetter(FloatingBlockMaterial::scaleWithGravity), + Codec.DOUBLE.fieldOf("lift_strength").forGetter(FloatingBlockMaterial::liftStrength), + Codec.DOUBLE.optionalFieldOf("transition_speed", 0.0d).forGetter(FloatingBlockMaterial::transitionSpeed), + Codec.DOUBLE.optionalFieldOf("slow_vertical_friction", 0.0d).forGetter(FloatingBlockMaterial::slowVerticalFriction), + Codec.DOUBLE.optionalFieldOf("fast_vertical_friction", 0.0d).forGetter(FloatingBlockMaterial::fastVerticalFriction), + Codec.DOUBLE.optionalFieldOf("slow_horizontal_friction", 0.0d).forGetter(FloatingBlockMaterial::slowHorizontalFriction), + Codec.DOUBLE.optionalFieldOf("fast_horizontal_friction", 0.0d).forGetter(FloatingBlockMaterial::fastHorizontalFriction) + ).apply(instance, FloatingBlockMaterial::new)); + + public static final StreamCodec STREAM_CODEC = + ByteBufCodecs.fromCodec(CODEC); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.java b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.java new file mode 100644 index 0000000..6ea6e61 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.java @@ -0,0 +1,106 @@ +package dev.ryanhcode.sable.physics.floating_block; + +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class FloatingClusterContainer { + public List clusters = new ArrayList<>(); + private final Long2ObjectMap addedBlocks = new Long2ObjectOpenHashMap<>(); + private final Long2ObjectMap removedBlocks = new Long2ObjectOpenHashMap<>(); + + public final Vector3d positionOffset = new Vector3d(); + public final Quaterniond rotationOffset = new Quaterniond(); + public final Vector3d velocity = new Vector3d(); + public final Vector3d angularVelocity = new Vector3d(); + + public boolean needsTicking() + { + return !this.addedBlocks.isEmpty() || !this.clusters.isEmpty(); + } + + public void processBlockChanges(Vector3dc centerOfMass) { + + for (final Map.Entry entry : this.removedBlocks.entrySet()) { + final BlockPos blockPos = BlockPos.of(entry.getKey()); + final Vector3d pos = new Vector3d(blockPos.getX() + 0.5, blockPos.getY() + 0.5, blockPos.getZ() + 0.5).sub(centerOfMass); + this.removeFloatingBlock(entry.getValue(), pos); + } + + for (final Map.Entry entry : this.addedBlocks.entrySet()) { + final BlockPos blockPos = BlockPos.of(entry.getKey()); + final Vector3d pos = new Vector3d(blockPos.getX() + 0.5, blockPos.getY() + 0.5, blockPos.getZ() + 0.5).sub(centerOfMass); + this.addFloatingBlock(entry.getValue(), pos); + } + + + this.addedBlocks.clear(); + this.removedBlocks.clear(); + } + + public void addFloatingBlock(final BlockState state, final Vector3d pos) { + final FloatingBlockMaterial material = PhysicsBlockPropertyHelper.getFloatingMaterial(state); + assert material != null : "Floating Material desync on adding"; + + FloatingBlockCluster foundCluster = null; + for (final FloatingBlockCluster cluster : this.clusters) { + if (cluster.getMaterial().equals(material)) { + foundCluster = cluster; + break; + } + } + if (foundCluster == null) { + foundCluster = new FloatingBlockCluster(material); + this.clusters.add(foundCluster); + } + final double scale = PhysicsBlockPropertyHelper.getFloatingScale(state); + foundCluster.getBlockData().addFloatingBlock(pos, scale); + + } + + public void removeFloatingBlock(final BlockState state, final Vector3d pos) { + final FloatingBlockMaterial material = PhysicsBlockPropertyHelper.getFloatingMaterial(state); + + assert material != null : "Floating Material desync on removing"; + + FloatingBlockCluster foundCluster = null; + for (final FloatingBlockCluster cluster : this.clusters) { + if (cluster.getMaterial().equals(material)) { + foundCluster = cluster; + break; + } + } + + if (foundCluster != null) { + final double scale = PhysicsBlockPropertyHelper.getFloatingScale(state); + foundCluster.getBlockData().removeFloatingBlock(pos, scale); + if (foundCluster.getBlockData().blockCount == 0) + this.clusters.remove(foundCluster); + } + } + + public void queueAddFloatingBlock(final BlockState state, final BlockPos pos) { + final long longKey = pos.asLong(); + if (PhysicsBlockPropertyHelper.getFloatingMaterial(state) != null) { + if(!this.removedBlocks.remove(longKey,state)) + this.addedBlocks.put(longKey, state); + } + } + + public void queueRemoveFloatingBlock(final BlockState state, final BlockPos pos) { + final long longKey = pos.asLong(); + if (PhysicsBlockPropertyHelper.getFloatingMaterial(state) != null) { + if(!this.addedBlocks.remove(longKey,state)) + this.removedBlocks.put(longKey, state); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.java new file mode 100644 index 0000000..8bf65ef --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.physics.impl; + +import dev.ryanhcode.sable.api.physics.collider.SableCollisionContext; +import net.minecraft.core.BlockPos; +import net.minecraft.world.item.Item; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public enum SableCollisionContextImpl implements SableCollisionContext { + INSTANCE; + + @Override + public boolean isDescending() { + return false; + } + + @Override + public boolean isAbove(final VoxelShape shape, final BlockPos pos, final boolean canAscend) { + return canAscend; + } + + @Override + public boolean isHoldingItem(final Item item) { + return false; + } + + @Override + public boolean canStandOnFluid(final FluidState fluid1, final FluidState fluid2) { + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.java new file mode 100644 index 0000000..8c5bcc9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.physics.impl; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.shapes.EntityCollisionContext; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public final class SubLevelEntityCollisionContext extends EntityCollisionContext { + public SubLevelEntityCollisionContext(final Entity entity) { + super(entity); + } + + /** + * For scaffolding logic + */ + @Override + public boolean isAbove(final VoxelShape voxelShape, final BlockPos blockPos, final boolean bl) { + return false; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.java new file mode 100644 index 0000000..56be186 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.java @@ -0,0 +1,137 @@ +package dev.ryanhcode.sable.physics.impl.none; + +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.object.box.BoxHandle; +import dev.ryanhcode.sable.api.physics.object.box.BoxPhysicsObject; +import dev.ryanhcode.sable.api.physics.object.rope.RopeHandle; +import dev.ryanhcode.sable.api.physics.object.rope.RopePhysicsObject; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.core.SectionPos; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunkSection; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +/** + * A physics engine that does nothing, and keeps every sub-level static. + */ +public class StaticPhysicsPipeline implements PhysicsPipeline { + + @Override + public void init(final Vector3dc gravity, final double universalDrag) { + // no-op + } + + @Override + public void dispose() { + // no-op + } + + @Override + public void prePhysicsTicks() { + // no-op + } + + @Override + public void physicsTick(final double timeStep) { + // no-op + } + + @Override + public void postPhysicsTicks() { + // no-op + } + + @Override + public void tick() { + // no-op + } + + @Override + public void add(final ServerSubLevel subLevel, final Pose3dc pose) { + // no-op + } + + @Override + public void remove(final ServerSubLevel subLevel) { + // no-op + } + + @Override + public void add(final KinematicContraption contraption) { + + } + + @Override + public void remove(final KinematicContraption contraption) { + + } + + @Override + public Pose3d readPose(final ServerSubLevel subLevel, final Pose3d dest) { + return dest; + } + + /** + * Adds a rope to the physics pipeline + */ + @Override + public RopeHandle addRope(final RopePhysicsObject rope) { + return null; + } + + /** + * Adds a box to the physics pipeline + */ + @Override + public BoxHandle addBox(final BoxPhysicsObject boxPhysicsObject) { + return null; + } + + @Override + public void handleChunkSectionAddition(final LevelChunkSection chunk, final int x, final int y, final int z, final boolean uploadDataIfGlobal) { + // no-op + } + + @Override + public void handleChunkSectionRemoval(final int x, final int y, final int z) { + // no-op + } + + @Override + public void handleBlockChange(final SectionPos sectionPos, final LevelChunkSection chunk, final int x, final int y, final int z, final BlockState oldState, final BlockState newState) { + // no-op + } + + @Override + public void teleport(final PhysicsPipelineBody body, final Vector3dc position, final Quaterniondc orientation) { + if (body instanceof final ServerSubLevel subLevel) { + subLevel.logicalPose().position().set(position); + subLevel.logicalPose().orientation().set(orientation); + } + } + + @Override + public void applyImpulse(final PhysicsPipelineBody body, final Vector3dc position, final Vector3dc force) { + // no-op + } + + @Override + public void applyLinearAndAngularImpulse(final PhysicsPipelineBody body, final Vector3dc position, final Vector3dc torque, final boolean wakeUp) { + // no-op + } + + @Override + public void wakeUp(final PhysicsPipelineBody body) { + // no-op + } + + @Override + public int getNextRuntimeID() { + return 0; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.java new file mode 100644 index 0000000..880c10c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.java @@ -0,0 +1,671 @@ +package dev.ryanhcode.sable.physics.impl.rapier; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import dev.ryanhcode.sable.mixinterface.physics.ServerLevelSceneExtension; +import dev.ryanhcode.sable.physics.impl.rapier.collider.RapierVoxelColliderData; +import net.jpountz.lz4.LZ4FrameInputStream; +import net.minecraft.Util; +import net.minecraft.Util.OS; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Matrix3dc; +import org.joml.Vector3dc; + +import java.io.FileNotFoundException; +import java.io.InputStream; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.nio.file.StandardCopyOption; +import java.util.zip.ZipEntry; +import java.util.zip.ZipInputStream; + +/** + * Java side of the sable_rapier bridge for using the Rapier 3D physics engine. + */ +@ApiStatus.Internal +public class Rapier3D { + + private static final String NATIVE_DIR = ".sable/natives"; + private static final String LIB_NAME = "sable_rapier"; + public static boolean ENABLED = false; + + private static int countingSceneID = 0; + private static int countingObjectID = 0; + + static { + loadLibrary(); + } + + private static String getNativeName() { + final String arch; + if (System.getProperty("os.arch").equals("arm") || System.getProperty("os.arch").startsWith("aarch64")) { + arch = "aarch64"; + } else { + arch = "x86_64"; + } + + final OS os = Util.getPlatform(); + if (os == OS.WINDOWS) { + return LIB_NAME + "_" + arch + "_windows.dll"; + } else if (os == OS.OSX) { + return LIB_NAME + "_" + arch + "_macos.dylib"; + } else { + if (os != OS.LINUX) + Sable.LOGGER.error("Unknown platform '{}' detected, sable will attempt to use linux natives, this may or may not work.", System.getProperty("os.name")); + return LIB_NAME + "_" + arch + "_linux.so"; + } + } + + private static void loadLibrary() { + final String nativeName = getNativeName(); + try (final InputStream is = Rapier3D.class.getResourceAsStream("/natives/" + LIB_NAME + "/sable_rapier_binaries.zip.l4z")) { + if (is == null) { + throw new FileNotFoundException("sable_rapier_binaries.zip.l4z"); + } + + final Path dir = Paths.get(NATIVE_DIR); + if (!Files.exists(dir)) { + Files.createDirectories(dir); + } + + try (final LZ4FrameInputStream is2 = new LZ4FrameInputStream(is); + final ZipInputStream ti = new ZipInputStream(is2)) { + + ZipEntry entry; + while ((entry = ti.getNextEntry()) != null) { + if (entry.getName().equals(nativeName)) { + final Path tempFile = dir.resolve(nativeName); + Files.copy(ti, tempFile, StandardCopyOption.REPLACE_EXISTING); + System.load(tempFile.toAbsolutePath().toString()); + ENABLED = true; + return; + } + } + + throw new FileNotFoundException(nativeName); + } + } catch (final Throwable t) { + ENABLED = false; + + Sable.LOGGER.error( + "Sable has failed to load the natives needed for its Rapier pipeline. Native library name {}. Please report with system details and logs to {}", + nativeName, Sable.ISSUE_TRACKER_URL, t); + } + } + + /** + * Retrieves the body ID for a given server sub level + * + * @return the ID + */ + @ApiStatus.Internal + public static int getID(final PhysicsPipelineBody body) { + return body.getRuntimeId(); + } + + @ApiStatus.Internal + public static synchronized int nextBodyID() { + return countingObjectID++; + } + + /** + * Retrieves the dimension / scene ID for a given server level + * + * @return the dimension ID + */ + @ApiStatus.Internal + public static synchronized int getID(final ServerLevel level) { + if (!(level instanceof final ServerLevelSceneExtension extension)) { + throw new IllegalArgumentException("ServerLevel must implement ServerLevelSceneExtension to be used with Rapier"); + } + + if (extension.sable$getSceneID() == -1) { + extension.sable$setSceneID(countingSceneID++); + Sable.LOGGER.info("Assigned physics scene ID {} to {}", extension.sable$getSceneID(), level.dimension().location()); + } + + return extension.sable$getSceneID(); + } + + @ApiStatus.Internal + public static native void initialize(final int dimensionID, double gravityX, double gravityY, double gravityZ, double universalDrag); + + @ApiStatus.Internal + public static native void tick(final int dimensionID, double timeStep); + + + @ApiStatus.Internal + public static native void step(final int dimensionID, double timeStep); + + /** + * All poses are formatted in a double array as: + * [x, y, z, qx, qy, qz, qw] + */ + + @ApiStatus.Internal + public static native void createSubLevel(final int dimensionID, int id, double[] pose); + + /** + * Removes an object from the physics world. + */ + @ApiStatus.Internal + public static native void removeSubLevel(final int dimensionID, int id); + + /** + * All poses are formatted in a double array as: + * [x, y, z, qx, qy, qz, qw] + */ + @ApiStatus.Internal + public static native void createBox(final int dimensionID, int id, double mass, double halfExtentsX, double halfExtentsY, double halfExtentsZ, double[] pose); + + /** + * All poses are formatted in a double array as: + * [x, y, z, qx, qy, qz, qw] + */ + @ApiStatus.Internal + public static native void removeBox(final int dimensionID, int id); + + /** + * Gets the pose of an object. + * + * @param id the object ID + * @param store The array to store pose of the object in the format [x, y, z, qx, qy, qz, qw] + */ + @ApiStatus.Internal + public static native void getPose(final int dimensionID, int id, double[] store); + + /** + * Sets the center of mass in block coordinates. + * + * @param id the object ID + * @param x the x position of the center of mass + * @param y the y position of the center of mass + * @param z the z position of the center of mass + */ + @ApiStatus.Internal + public static native void setCenterOfMass(final int dimensionID, int id, double x, double y, double z); + + /** + * Sets the local block bounds of an object. + * + * @param id the object ID + * @param minX the minimum x bound (inclusive) + * @param minY the minimum y bound (inclusive) + * @param minZ the minimum z bound (inclusive) + * @param maxX the maximum x bound (inclusive) + * @param maxY the maximum y bound (inclusive) + * @param maxZ the maximum z bound (inclusive) + */ + @ApiStatus.Internal + public static native void setLocalBounds(final int dimensionID, int id, int minX, int minY, int minZ, int maxX, int maxY, int maxZ); + + /** + * Sets a chunk at given chunk coordinates. + * + * @param x the chunk x coordinate + * @param y the chunk y coordinate + * @param z the chunk z coordinate + * @param chunk a 4096-long (16x16x16) integer array stored in xzy order, with x fastest changing. + * @param global if the chunk is a part of the global world + * @param id the object ID the chunk is in, if not global + */ + @ApiStatus.Internal + public static native void addChunk(final int dimensionID, int x, int y, int z, int[] chunk, boolean global, int id); + + /** + * Removes a chunk at given chunk coordinates. + * + * @param x the chunk x coordinate + * @param y the chunk y coordinate + * @param z the chunk z coordinate + * @param global if the chunk is a part of the global world + */ + @ApiStatus.Internal + public static native void removeChunk(final int dimensionID, int x, int y, int z, boolean global); + + /** + * Sets a block if it is inside a tracked chunk. + * + * @param x the block x coordinate + * @param y the block y coordinate + * @param z the block z coordinate + * @param newState the new physics block ID + 1 of the block, or 0 for empty + */ + @ApiStatus.Internal + public static native void changeBlock(final int dimensionID, int x, int y, int z, int newState); + + /** + * Adds a new voxel collider data entry. + * + * @param frictionMultiplier the friction multiplier + * @param isFluid if the block should be treated as a fluid + * @param contactEvents if the block has special contact event behavior + * @return the ID of the new block collider data entry + */ + @ApiStatus.Internal + protected static native int newVoxelCollider(double frictionMultiplier, double volume, double restitution, boolean isFluid, BlockSubLevelCollisionCallback contactEvents); + + /** + * Adds a new box to a voxel collider data entry. + * + * @param index the ID of the block physics data entry from {@link Rapier3D#newVoxelCollider(double, double, double, boolean, BlockSubLevelCollisionCallback)}} + * @param bounds a 6-long double array, formatted [minX, minY, minZ, maxX, maxY, maxZ] + */ + @ApiStatus.Internal + public static native void addVoxelColliderBox(int index, double[] bounds); + + /** + * Clears all boxes from a voxel collider data entry. + * + * @param index the ID of the block physics data entry from {@link Rapier3D#newVoxelCollider(double, double, double, boolean, BlockSubLevelCollisionCallback)}} + */ + @ApiStatus.Internal + public static native void clearVoxelColliderBoxes(int index); + + /** + * Sets the mass, center of mass, and inertia tensor of a block physics data entry. + * + * @param index the ID of the physics object + */ + @ApiStatus.Internal + protected static native void setMassProperties(final int dimensionID, int index, double mass, double[] centerOfMass, double[] inertiaTensor); + + /** + * Allocates a new block physics data entry + * + * @param frictionMultiplier the friction multiplier + * @param isFluid if the block should be treated as a fluid + * @param contactEvents if the block has special contact event behavior + * @return the handle of the new block physics data entry + */ + @ApiStatus.Internal + public static RapierVoxelColliderData createVoxelColliderEntry(final double frictionMultiplier, final double volume, final double restitution, final boolean isFluid, final BlockSubLevelCollisionCallback contactEvents) { + return new RapierVoxelColliderData(Rapier3D.newVoxelCollider(frictionMultiplier, volume, restitution, isFluid, contactEvents)); + } + + /** + * Teleports an object to a new position. + * + * @param id the object ID + * @param x the new x position + * @param y the new y position + * @param z the new z position + */ + @ApiStatus.Internal + public static native void teleportObject(final int dimensionID, int id, double x, double y, double z, double i, double j, double k, double r); + + /** + * "Wakes up" an object, indicating environmental or other changes have occurred that should resume physics if idled or sleeping + * + * @param id the object ID + */ + @ApiStatus.Internal + public static native void wakeUpObject(final int dimensionID, int id); + + /** + * Adds a rotational constraint between two objects. + * + * @param id the object ID + * @param otherId the other object ID + * @param localAnchorXA the local anchor X on the first object + * @param localAnchorYA the local anchor Y on the first object + * @param localAnchorZA the local anchor Z on the first object + * @param localAnchorXB the local anchor X on the second object + * @param localAnchorYB the local anchor Y on the second object + * @param localAnchorZB the local anchor Z on the second object + * @param localAxisXA the local axis X on the first object + * @param localAxisYA the local axis Y on the first object + * @param localAxisZA the local axis Z on the first object + * @param localAxisXB the local axis X on the second object + * @param localAxisYB the local axis Y on the second object + * @param localAxisZB the local axis Z on the second object + */ + @ApiStatus.Internal + public static native long addRotaryConstraint(final int dimensionID, + int id, + int otherId, + double localAnchorXA, + double localAnchorYA, + double localAnchorZA, + double localAnchorXB, + double localAnchorYB, + double localAnchorZB, + double localAxisXA, + double localAxisYA, + double localAxisZA, + double localAxisXB, + double localAxisYB, + double localAxisZB); + + /** + * Adds a fixed constraint between two objects. + * + * @param id the object ID + * @param otherId the other object ID + * @param localAnchorXA the local anchor X on the first object + * @param localAnchorYA the local anchor Y on the first object + * @param localAnchorZA the local anchor Z on the first object + * @param localAnchorXB the local anchor X on the second object + * @param localAnchorYB the local anchor Y on the second object + * @param localAnchorZB the local anchor Z on the second object + * @param localOrientationXB the local orientation X of the second object relative to the first + * @param localOrientationYB the local orientation Y of the second object relative to the first + * @param localOrientationZB the local orientation Z of the second object relative to the first + * @param localOrientationWB the local orientation W of the second object relative to the first + */ + @ApiStatus.Internal + public static native long addFixedConstraint(final int dimensionID, + int id, + int otherId, + double localAnchorXA, + double localAnchorYA, + double localAnchorZA, + double localAnchorXB, + double localAnchorYB, + double localAnchorZB, + double localOrientationXB, + double localOrientationYB, + double localOrientationZB, + double localOrientationWB); + + /** + * Adds a free constraint between two objects. + * + * @param id the object ID + * @param otherId the other object ID + */ + @ApiStatus.Internal + public static native long addFreeConstraint(final int dimensionID, + int id, + int otherId, + double localAnchorXA, + double localAnchorYA, + double localAnchorZA, + double localAnchorXB, + double localAnchorYB, + double localAnchorZB, + double localOrientationXB, + double localOrientationYB, + double localOrientationZB, + double localOrientationWB); + + /** + * Adds a generic constraint between two objects. + * + * @param id the object ID + * @param otherId the other object ID + * @param localAnchorXA the local anchor X on the first object + * @param localAnchorYA the local anchor Y on the first object + * @param localAnchorZA the local anchor Z on the first object + * @param localOrientationXA the local orientation X of the first object + * @param localOrientationYA the local orientation Y of the first object + * @param localOrientationZA the local orientation Z of the first object + * @param localOrientationWA the local orientation W of the first object + * @param localAnchorXB the local anchor X on the second object + * @param localAnchorYB the local anchor Y on the second object + * @param localAnchorZB the local anchor Z on the second object + * @param localOrientationXB the local orientation X of the second object + * @param localOrientationYB the local orientation Y of the second object + * @param localOrientationZB the local orientation Z of the second object + * @param localOrientationWB the local orientation W of the second object + * @param lockedAxesMask bit mask of locked axes; bit {@code n} corresponds to {@link dev.ryanhcode.sable.api.physics.constraint.ConstraintJointAxis#ordinal()} + */ + @ApiStatus.Internal + public static native long addGenericConstraint(final int dimensionID, + int id, + int otherId, + double localAnchorXA, + double localAnchorYA, + double localAnchorZA, + double localOrientationXA, + double localOrientationYA, + double localOrientationZA, + double localOrientationWA, + double localAnchorXB, + double localAnchorYB, + double localAnchorZB, + double localOrientationXB, + double localOrientationYB, + double localOrientationZB, + double localOrientationWB, + int lockedAxesMask); + + /** + * Sets the local frame on one side of a constraint. + * + * @param handle the handle of the constraint + * @param side {@code 0} for the first body, {@code 1} for the second body + */ + @ApiStatus.Internal + public static native void setConstraintFrame(final int dimensionID, long handle, int side, double localPosX, double localPosY, double localPosZ, double localOrientationX, double localOrientationY, double localOrientationZ, double localOrientationW); + + /** + * Sets if contacts are enabled between the two bodies in the constraint + * + * @param handle the handle of the constraint + */ + @ApiStatus.Internal + public static native void setConstraintContactsEnabled(final int dimensionID, long handle, boolean contactsEnabled); + + /** + * Gets the latest joint impulses + * + * @param handle the handle of the constraint + */ + @ApiStatus.Internal + public static native void getConstraintImpulses(final int dimensionID, long handle, final double[] store); + + /** + * Checks if a constraint is valid + * + * @param handle the handle of the constraint + */ + @ApiStatus.Internal + public static native boolean isConstraintValid(final int dimensionID, long handle); + + /** + * Removes a constraint with a handle + * + * @param handle the handle of the constraint + */ + @ApiStatus.Internal + public static native void removeConstraint(final int dimensionID, long handle); + + + /** + * Sets a constraint to a servo, with a desired angle and PD controller coefficients. + * + * @param dimensionID the ID of the dimension + * @param handle the handle of the constraint + */ + @ApiStatus.Internal + public static native void setConstraintMotor(final int dimensionID, long handle, int axis, double desiredPosition, double stiffness, double damping, boolean hasForceLimit, double maxForce); + + /** + * Adds linear and angular velocities + * + * @param bodyId the ID of an already created rigid-body + * @param linearX x component of the linear velocity to add [m/s] + * @param linearY y component of the linear velocity to add [m/s] + * @param linearZ z component of the linear velocity to add [m/s] + * @param angularX x component of the angular velocity to add [rad/s] + * @param angularY y component of the angular velocity to add [rad/s] + * @param angularZ z component of the angular velocity to add [rad/s] + */ + @ApiStatus.Internal + public static native void addLinearAngularVelocities(final int dimensionID, int bodyId, double linearX, double linearY, double linearZ, double angularX, double angularY, double angularZ, final boolean wakeUp); + + /** + * Reads & clears all reported collisions from the physics engine. + *

+ * Each collision is formatted as: + * [body_a, body_b, force_amount, local_normal_a, local_normal_b, local_point_a, local_point_b] + */ + @ApiStatus.Internal + public static native double[] clearCollisions(int dimensionID); + + /** + * Applies a force to a given body + * + * @param bodyID the ID of an already created rigid-body + * @param x the x position of the force relative to the center of mass + * @param y the y position of the force relative to the center of mass + * @param z the z position of the force relative to the center of mass + * @param fx the x component of the force to apply [N] + * @param fy the y component of the force to apply [N] + * @param fz the z component of the force to apply [N] + */ + @ApiStatus.Internal + public static native void applyForce(final int dimensionID, final int bodyID, final double x, final double y, final double z, final double fx, final double fy, final double fz, final boolean wakeUp); + + /** + * Applies a force to a given body + * + * @param bodyID the ID of an already created rigid-body + * @param fx the x component of the force to apply [N] + * @param fy the y component of the force to apply [N] + * @param fz the z component of the force to apply [N] + * @param tx the x component of the torque to apply [Nm] + * @param ty the y component of the torque to apply [Nm] + * @param tz the z component of the torque to apply [Nm] + */ + @ApiStatus.Internal + public static native void applyForceAndTorque(final int dimensionID, final int bodyID, final double fx, final double fy, final double fz, final double tx, final double ty, final double tz, final boolean wakeUp); + + /** + * Gets the linear velocity of a given body + * + * @param bodyID the ID of an already created rigid-body + * @param store The array to store the linear velocity of the body in the format [x, y, z] + */ + @ApiStatus.Internal + public static native void getLinearVelocity(final int dimensionID, final int bodyID, final double[] store); + + /** + * Gets the angular velocity of a given body + * + * @param bodyID the ID of an already created rigid-body + * @param store The array to store the angular velocity of the body in the format [x, y, z] + */ + @ApiStatus.Internal + public static native void getAngularVelocity(final int dimensionID, final int bodyID, final double[] store); + + /** + * Creates a kinematic sub-level within a scene. + * + * @param sceneId the scene ID + * @param mountId the mount rigid body ID (or -1 for ground) + * @param id the kinematic sub-level ID + * @param pose a 7-long double array, formatted [x, y, z, qx, qy, qz, qw] for position and quaternion + */ + @ApiStatus.Internal + public static native void createKinematicContraption(final int sceneId, int mountId, int id, double[] pose); + + /** + * Removes a kinematic sub-level from a scene. + * + * @param sceneId the scene ID + * @param id the kinematic sub-level ID to remove + */ + @ApiStatus.Internal + public static native void removeKinematicContraption(final int sceneId, int id); + + /** + * Sets the transform (position/quaternion) of a kinematic sub-level's center of mass relative to its parent. + * + * @param sceneId the scene ID + * @param id the kinematic sub-level ID + * @param pose a 7-long double array, formatted [x, y, z, qx, qy, qz, qw] for position and quaternion + */ + @ApiStatus.Internal + public static native void setKinematicContraptionTransform(final int sceneId, int id, double[] centerOfMass, double[] pose, double[] velocities); + + /** + * Adds a chunk to a kinematic sub-level (4096 blocks, each as packed int). + * + * @param sceneId the scene ID + * @param id the kinematic sub-level ID + * @param x the chunk x coordinate + * @param y the chunk y coordinate + * @param z the chunk z coordinate + * @param data a 4096-long int array containing packed block data (block_collider_id << 16 | voxel_state_id) + */ + @ApiStatus.Internal + public static native void addKinematicContraptionChunkSection(final int sceneId, int id, int x, int y, int z, int[] data); + + /** + * Creates a rope + * + * @return a rope id + */ + @ApiStatus.Internal + public static native long createRope(final int dimensionID, final double pointRadius, final double firstJointLength, final double[] points, final int pointCount); + + /** + * Removes a rope + * + * @param ropeId a rope id + */ + @ApiStatus.Internal + public static native long removeRope(final int dimensionID, final long ropeId); + + @ApiStatus.Internal + public static native void setRopeAttachment(final int dimensionID, final long ropeId, final int subLevelId, final double x, final double y, final double z, final boolean end); + + @ApiStatus.Internal + public static native void addRopePointAtStart(final int dimensionID, final long ropeId, final double x, final double y, final double z); + + @ApiStatus.Internal + public static native void removeRopePointAtStart(final int dimensionID, final long ropeId); + + @ApiStatus.Internal + public static native void wakeUpRope(final int dimensionID, final long ropeId); + + @ApiStatus.Internal + public static native void setRopeFirstSegmentLength(final int dimensionID, final long ropeId, final double firstSegmentLength); + + + /** + * Queries a rope + * + * @param ropeId a rope id + */ + @ApiStatus.Internal + public static native double[] queryRope(final int dimensionID, final long ropeId); + + @ApiStatus.Internal + public static native void configFrequencyAndDamping( + double contactNaturalFrequency, + double contactDampingRatio); + + @ApiStatus.Internal + public static native void configSolverIterations(int solverIterations, int pgsIterations, int stabilizationIterations); + + @ApiStatus.Internal + public static native void configMinIslandSize(int islandSize); + + @ApiStatus.Internal + public static native void dispose(); + + @ApiStatus.Internal + public static void setMassPropertiesFrom(final int dimensionID, final int id, final MassData massTracker) { + final Matrix3dc inertiaTensor = massTracker.getInertiaTensor(); + final Vector3dc centerOfMass = massTracker.getCenterOfMass(); + final double mass = massTracker.getMass(); + + // This is only called in one location and the center of mass can't be null + //noinspection DataFlowIssue + final double[] centerOfMassArray = new double[]{centerOfMass.x(), centerOfMass.y(), centerOfMass.z()}; + final double[] inertiaTensorArray = new double[]{ + inertiaTensor.m00(), inertiaTensor.m01(), inertiaTensor.m02(), + inertiaTensor.m10(), inertiaTensor.m11(), inertiaTensor.m12(), + inertiaTensor.m20(), inertiaTensor.m21(), inertiaTensor.m22() + }; + + Rapier3D.setMassProperties(dimensionID, id, mass, centerOfMassArray, inertiaTensorArray); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.java new file mode 100644 index 0000000..011e020 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.java @@ -0,0 +1,676 @@ +package dev.ryanhcode.sable.physics.impl.rapier; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; +import dev.ryanhcode.sable.api.physics.constraint.fixed.FixedConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.free.FreeConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.generic.GenericConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.rotary.RotaryConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.api.physics.object.box.BoxHandle; +import dev.ryanhcode.sable.api.physics.object.box.BoxPhysicsObject; +import dev.ryanhcode.sable.api.physics.object.rope.RopeHandle; +import dev.ryanhcode.sable.api.physics.object.rope.RopePhysicsObject; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.*; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.physics.config.PhysicsConfigData; +import dev.ryanhcode.sable.physics.impl.rapier.box.RapierBoxHandle; +import dev.ryanhcode.sable.physics.impl.rapier.collider.RapierVoxelColliderBakery; +import dev.ryanhcode.sable.physics.impl.rapier.collider.RapierVoxelColliderData; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.fixed.RapierFixedConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.free.RapierFreeConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.generic.RapierGenericConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.rotary.RapierRotaryConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.rope.RapierRopeHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.LevelAccelerator; +import dev.ryanhcode.sable.util.SableMathUtils; +import it.unimi.dsi.fastutil.ints.Int2ObjectArrayMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2LongOpenHashMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import net.minecraft.CrashReport; +import net.minecraft.ReportedException; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.SectionPos; +import net.minecraft.core.particles.BlockParticleOption; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.SoundType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * Implementation of {@link PhysicsPipeline} for the rust Rapier 3D physics engine. + */ +public class RapierPhysicsPipeline implements PhysicsPipeline { + + /** + * Distance threshold for uploading sub-contraptions to the physics pipeline + */ + private static final double DISTANCE_THRESHOLD = 1e-7; + + /** + * Angle threshold for uploading sub-contraptions to the physics pipeline + */ + private static final double ANGULAR_THRESHOLD = 1e-7; + + private record TrackedKinematicContraption(Vector3d lastUploadedPosition, Quaterniond lastUploadedOrientation, Vector3d lastUploadedLinVel, Vector3d lastUploadedAngVel, int id) {} + private final ServerLevel level; + private final LevelAccelerator accelerator; + private final RapierVoxelColliderBakery colliderBakery; + private final Int2ObjectMap activeSubLevels = new Int2ObjectArrayMap<>(); + private final Object2ObjectMap activeContraptions = new Object2ObjectOpenHashMap<>(); + private final Long2LongOpenHashMap recentCollisions = new Long2LongOpenHashMap(); + private final int sceneId; + private final double[] cache; + + public RapierPhysicsPipeline(final ServerLevel level) { + this.level = level; + this.accelerator = new LevelAccelerator(level); + this.colliderBakery = new RapierVoxelColliderBakery(this.accelerator); + this.recentCollisions.defaultReturnValue(-1); + this.sceneId = Rapier3D.getID(this.level); + this.cache = new double[7]; + } + + /** + * Packs a voxel collider ID and neighborhood state into an integer the rapier companion library will re-interpret as a block-state. + * @return the packed block state + */ + private static int packBlockState(final VoxelNeighborhoodState state, final int colliderID) { + return ((int) state.byteRepresentation()) | (colliderID << 16); + } + + /** + * Initializes the physics pipeline. + * + * @param gravity the gravity vector + * @param universalDrag the universal drag to apply to all bodies + */ + @Override + public void init(final Vector3dc gravity, final double universalDrag) { + try { + Rapier3D.initialize(this.sceneId, gravity.x(), gravity.y(), gravity.z(), universalDrag); + } catch (final UnsatisfiedLinkError e) { + Sable.LOGGER.error("Sable has failed to link with the natives for its Rapier pipeline. Please report with system details to " + Sable.ISSUE_TRACKER_URL); + final CrashReport crashReport = CrashReport.forThrowable(e, "Sable linking with Rapier natives"); + throw new ReportedException(crashReport); + } + } + + /** + * Disposes all resources used by the physics pipeline. + */ + @Override + public void dispose() { + Rapier3D.dispose(); + } + + /** + * Runs a physics tick with a time step of {@code 1.0 / 20.0} seconds. + */ + @Override + public void prePhysicsTicks() { + final double timeStep = 1.0 / 20.0; + Rapier3D.tick(this.sceneId, timeStep); + } + + /** + * Runs a physics substep with a time step of {@code 1.0 / 20.0 / substeps} seconds. + * + * @param timeStep the time step of this physics substep [s] + */ + @Override + public void physicsTick(final double timeStep) { + this.updateContraptionPoses(); + Rapier3D.step(this.sceneId, timeStep); + } + + private void updateContraptionPoses() { + for (final KinematicContraption contraption : this.activeContraptions.keySet()) { + final TrackedKinematicContraption trackedContraption = this.activeContraptions.get(contraption); + final SubLevelPhysicsSystem system = SubLevelPhysicsSystem.require(this.level); + final double partialPhysicsTick = system.getPartialPhysicsTick(); + + final SubLevel mountSubLevel = Sable.HELPER.getContaining(this.level, contraption.sable$getPosition()); + final Vector3dc parentCenterOfMass = mountSubLevel != null ? ((ServerSubLevel) mountSubLevel).getMassTracker().getCenterOfMass() : JOMLConversion.ZERO; + + final Vector3dc lastPosition = new Vector3d(contraption.sable$getPosition(partialPhysicsTick - 1.0f)); + final Quaterniondc lastOrientation = new Quaterniond(contraption.sable$getOrientation(partialPhysicsTick - 1.0f)); + + final Vector3d pos = new Vector3d(contraption.sable$getPosition(partialPhysicsTick)); + final Quaterniondc rot = contraption.sable$getOrientation(partialPhysicsTick); + + final Vector3d linVel = pos.sub(lastPosition, new Vector3d()); + final Vector3d angVel = SableMathUtils.getAngularVelocity(lastOrientation, rot, new Vector3d()); + + linVel.mul(20.0); + angVel.mul(20.0); + rot.transformInverse(linVel); + rot.transformInverse(angVel); + + pos.sub(parentCenterOfMass); + + if ( + pos.distanceSquared(trackedContraption.lastUploadedPosition()) > DISTANCE_THRESHOLD * DISTANCE_THRESHOLD || + linVel.distanceSquared(trackedContraption.lastUploadedLinVel()) > DISTANCE_THRESHOLD * DISTANCE_THRESHOLD || + angVel.distanceSquared(trackedContraption.lastUploadedAngVel()) > DISTANCE_THRESHOLD * DISTANCE_THRESHOLD || + rot.div(trackedContraption.lastUploadedOrientation(), new Quaterniond()).angle() > ANGULAR_THRESHOLD * ANGULAR_THRESHOLD + ) { + final MassTracker massTracker = contraption.sable$getMassTracker(); + final Vector3dc centerOfMass = massTracker.getCenterOfMass(); + + final double[] centerOfMassArray = new double[]{centerOfMass.x(), centerOfMass.y(), centerOfMass.z()}; + final double[] poseArray = {pos.x(), pos.y(), pos.z(), rot.x(), rot.y(), rot.z(), rot.w()}; + final double[] velocityArray = {linVel.x(), linVel.y(), linVel.z(), angVel.x(), angVel.y(), angVel.z()}; + Rapier3D.setKinematicContraptionTransform(this.sceneId, trackedContraption.id(), centerOfMassArray, poseArray, velocityArray); + + trackedContraption.lastUploadedPosition().set(pos); + trackedContraption.lastUploadedLinVel().set(linVel); + trackedContraption.lastUploadedAngVel().set(angVel); + trackedContraption.lastUploadedOrientation().set(rot); + } + } + } + + /** + * Called after all physics substeps have been run, to finalize the physics tick. + */ + @Override + public void postPhysicsTicks() { + this.processCollisionEffects(); + } + + private void processCollisionEffects() { + this.recentCollisions.long2LongEntrySet().removeIf(entry -> this.level.getGameTime() - entry.getLongValue() > 2); + + final Vector3d localPointA = new Vector3d(); + final Vector3d localPointB = new Vector3d(); + final Vector3d localNormalA = new Vector3d(); + final Vector3d localNormalB = new Vector3d(); + + final Vector3d globalPointA = new Vector3d(); + final Vector3d globalPointB = new Vector3d(); + + final double[] collisions = Rapier3D.clearCollisions(this.sceneId); + + final BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos cornerPos = new BlockPos.MutableBlockPos(); + + for (int i = 0; i < collisions.length / 15; i++) { + final int startIndex = i * 15; + final int idA = (int) collisions[startIndex]; + final int idB = (int) collisions[startIndex + 1]; + + final double forceAmount = collisions[startIndex + 2]; + localNormalA.set(collisions[startIndex + 3], collisions[startIndex + 4], collisions[startIndex + 5]); + localNormalB.set(collisions[startIndex + 6], collisions[startIndex + 7], collisions[startIndex + 8]); + localPointA.set(collisions[startIndex + 9], collisions[startIndex + 10], collisions[startIndex + 11]); + localPointB.set(collisions[startIndex + 12], collisions[startIndex + 13], collisions[startIndex + 14]); + + final ServerSubLevel subLevelA = this.activeSubLevels.get(idA); + final ServerSubLevel subLevelB = this.activeSubLevels.get(idB); + + final double minMass = Math.min(subLevelA != null ? subLevelA.getMassTracker().getMass() : Double.MAX_VALUE, subLevelB != null ? subLevelB.getMassTracker().getMass() : Double.MAX_VALUE); + + if (forceAmount > 25.0 * minMass) { + BlockState stateA = Blocks.STONE.defaultBlockState(); + BlockState stateB = stateA; + + if (subLevelA != null) { + final Pose3d pose = subLevelA.logicalPose(); + pos.set(localPointA.x + pose.rotationPoint().x, localPointA.y + pose.rotationPoint().y, localPointA.z + pose.rotationPoint().z); + cornerPos.set(localPointA.x + pose.rotationPoint().x + 0.5, localPointA.y + pose.rotationPoint().y + 0.5, localPointA.z + pose.rotationPoint().z + 0.5); + + final long exists = this.recentCollisions.put(cornerPos.asLong(), this.level.getGameTime()); + + if (exists != -1) { + continue; + } + + stateA = this.accelerator.getBlockState(pos); + } + + + if (subLevelB != null) { + final Pose3d pose = subLevelB.logicalPose(); + pos.set(localPointB.x + pose.rotationPoint().x, localPointB.y + pose.rotationPoint().y, localPointB.z + pose.rotationPoint().z); + cornerPos.set(localPointB.x + pose.rotationPoint().x + 0.5, localPointB.y + pose.rotationPoint().y + 0.5, localPointB.z + pose.rotationPoint().z + 0.5); + + final long exists = this.recentCollisions.put(cornerPos.asLong(), this.level.getGameTime()); + + if (exists != -1) { + continue; + } + + stateB = this.accelerator.getBlockState(pos); + } + + globalPointA.set(localPointA); + globalPointB.set(localPointB); + + if (subLevelA != null) { + final Pose3d pose = subLevelA.logicalPose(); + pose.orientation().transform(globalPointA).add(pose.position()); + } + + if (subLevelB != null) { + final Pose3d pose = subLevelB.logicalPose(); + pose.orientation().transform(globalPointB).add(pose.position()); + } + + final BlockState state = stateB; + this.level.sendParticles(new BlockParticleOption(ParticleTypes.BLOCK, state), globalPointA.x, globalPointA.y, globalPointA.z, 2, 0.0, 0.0, 0.0, 0.1); + + final Vec3 position = JOMLConversion.toMojang(globalPointA); + final float volumeScale = 0.4f; + final SoundType soundType = state.getSoundType(); + + this.level.playSound(null, position.x, position.y, position.z, soundType.getStepSound(), SoundSource.BLOCKS, 0.2f * volumeScale, (float) (0.6 - 0.2 + Math.random() * 0.4)); + this.level.playSound(null, position.x, position.y, position.z, soundType.getHitSound(), SoundSource.BLOCKS, 0.2f * volumeScale, (float) (Math.random() * 0.4)); + this.level.playSound(null, position.x, position.y, position.z, soundType.getPlaceSound(), SoundSource.BLOCKS, 0.2f * volumeScale, (float) (0.5 - 0.2 + Math.random() * 0.4)); + } + } + } + + /** + * Runs a tick to update any separate sub-level tracking / logic, even if physics is currently paused + */ + @Override + public void tick() { + this.accelerator.clearCache(); + } + + /** + * Adds a {@link SubLevel} to the physics pipeline. + */ + @Override + public void add(final ServerSubLevel subLevel, final Pose3dc pose) { + final Vector3dc pos = pose.position(); + final Quaterniondc rot = pose.orientation(); + + subLevel.buildMassTracker(); + + final int id = Rapier3D.getID(subLevel); + Rapier3D.createSubLevel(this.sceneId, id, new double[]{pos.x(), pos.y(), pos.z(), rot.x(), rot.y(), rot.z(), rot.w()}); + + subLevel.updateMergedMassData(1.0f); + final Vector3dc centerOfMass = subLevel.getMassTracker().getCenterOfMass(); + + if (centerOfMass != null) { + subLevel.logicalPose().rotationPoint().set(centerOfMass); + + this.onStatsChanged(subLevel); + } + + this.activeSubLevels.put(Rapier3D.getID(subLevel), subLevel); + } + + /** + * Removes a {@link SubLevel} from the physics pipeline. + */ + @Override + public void remove(final ServerSubLevel subLevel) { + Rapier3D.removeSubLevel(this.sceneId, Rapier3D.getID(subLevel)); + this.activeSubLevels.remove(Rapier3D.getID(subLevel)); + } + + /** + * Adds a kinematic contraption to the scene + */ + @Override + public void add(final KinematicContraption contraption) { + if (this.activeContraptions.containsKey(contraption)) { + throw new IllegalStateException("Contraption " + contraption + " is already present in pipeline"); + } + + final int id = this.getNextRuntimeID(); + this.activeContraptions.put(contraption, new TrackedKinematicContraption(new Vector3d(), new Quaterniond(), new Vector3d(), new Vector3d(), id)); + + final SubLevel mountSubLevel = Sable.HELPER.getContaining(this.level, contraption.sable$getPosition()); + final int mountId = mountSubLevel != null ? Rapier3D.getID((ServerSubLevel) mountSubLevel) : -1; + + final BoundingBox3i localBounds = new BoundingBox3i(); + contraption.sable$getLocalBounds(localBounds); + + final Vector3dc pos = contraption.sable$getPosition(); + final Quaterniond rot = contraption.sable$getOrientation(); + final double[] pose = {pos.x(), pos.y(), pos.z(), rot.x(), rot.y(), rot.z(), rot.w()}; + + Rapier3D.createKinematicContraption(this.sceneId, mountId, id, pose); + + // collect chunks + + record UploadingContraptionChunk(int[] data) { } + final Long2ObjectMap chunks = new Long2ObjectOpenHashMap<>(); + + final BlockPos.MutableBlockPos blockPos = new BlockPos.MutableBlockPos(); + for (int x = localBounds.minX(); x <= localBounds.maxX(); x++) { + for (int z = localBounds.minZ(); z <= localBounds.maxZ(); z++) { + for (int y = localBounds.minY(); y <= localBounds.maxY(); y++) { + final BlockState blockState = contraption.sable$blockGetter().getBlockState(blockPos.set(x, y, z)); + + if (blockState.isAir()) continue; + + final SectionPos sectionPos = SectionPos.of(blockPos); + final UploadingContraptionChunk chunk = chunks.computeIfAbsent(sectionPos.asLong(), longPos -> new UploadingContraptionChunk(new int[LevelChunkSection.SECTION_SIZE])); + + final VoxelNeighborhoodState state = VoxelNeighborhoodState.CORNER; + final RapierVoxelColliderData colliderData = this.colliderBakery.getPhysicsDataForBlock(blockState); + + final int index = (x & 15) + ((z & 15) << 4) + ((y & 15) << 8); + + final int colliderValue = colliderData == null ? 0 : colliderData.handle() + 1; + chunk.data[index] = packBlockState(state, colliderValue); + } + } + } + + if (contraption.sable$shouldCollide()) { + for (final Long2ObjectMap.Entry entry : chunks.long2ObjectEntrySet()) { + final SectionPos sectionPos = SectionPos.of(entry.getLongKey()); + final UploadingContraptionChunk chunk = entry.getValue(); + Rapier3D.addKinematicContraptionChunkSection(this.sceneId, id, sectionPos.x(), sectionPos.y(), sectionPos.z(), chunk.data()); + } + } + + Rapier3D.setLocalBounds(this.sceneId, id, localBounds.minX, localBounds.minY, localBounds.minZ, localBounds.maxX, localBounds.maxY, localBounds.maxZ); + } + + /** + * Removes a kinematic contraption from the scene + */ + @Override + public void remove(final KinematicContraption contraption) { + final TrackedKinematicContraption removed = this.activeContraptions.remove(contraption); + + if (removed == null) { + return; + } + + Rapier3D.removeKinematicContraption(this.sceneId, removed.id()); + } + + /** + * Queries the physics pipeline for the current pose of a {@link SubLevel}. + */ + @Override + public Pose3d readPose(final ServerSubLevel body, final Pose3d dest) { + Rapier3D.getPose(this.sceneId, Rapier3D.getID(body), this.cache); + + dest.position().set(this.cache[0], this.cache[1], this.cache[2]); + dest.orientation().set(this.cache[3], this.cache[4], this.cache[5], this.cache[6]); + + return dest; + } + + /** + * Adds a rope to the physics pipeline + */ + @Override + public RopeHandle addRope(final RopePhysicsObject rope) { + return RapierRopeHandle.create(this.sceneId, rope.getCollisionRadius(), rope.getPoints()); + } + + /** + * Adds a box to the physics pipeline + */ + @Override + public BoxHandle addBox(final BoxPhysicsObject box) { + return RapierBoxHandle.create(this.sceneId, box.getPose(), box.getHalfExtents(), box.getMass()); + } + + /** + * Handles the addition of a chunk section to the physics context + */ + @Override + public void handleChunkSectionAddition(final LevelChunkSection section, final int x, final int y, final int z, final boolean uploadDataIfGlobal) { + this.accelerator.clearCache(); + + // this means the x coordinate is the fastest changing, then z, then y + final int[] array = new int[LevelChunkSection.SECTION_SIZE]; + + final SectionPos sectionPos = SectionPos.of(x, y, z); + + // if it's only air, all zeros will do. it'll default to empty neighborhood state and 0 (empty) collider ID + if (!section.hasOnlyAir()) { + final LevelChunk chunk = this.accelerator.getChunk(x, z); + + for (int bx = 0; bx < 16; bx++) { + for (int bz = 0; bz < 16; bz++) { + for (int by = 0; by < 16; by++) { + final BlockPos globalPos = new BlockPos(bx, by, bz).offset(sectionPos.minBlockX(), sectionPos.minBlockY(), sectionPos.minBlockZ()); + final VoxelNeighborhoodState state = VoxelNeighborhoodState.getState(this.accelerator, globalPos, chunk); + final RapierVoxelColliderData colliderData = this.colliderBakery.getPhysicsDataForBlock(this.accelerator.getBlockState(globalPos)); + + final int index = bx + (bz << 4) + (by << 8); + + final int colliderValue = colliderData == null ? 0 : colliderData.handle() + 1; + array[index] = packBlockState(state, colliderValue); + } + } + } + } + + final LevelPlot plot = SubLevelContainer.getContainer(this.level).getPlot(x, z); + final boolean global = plot == null; + int id = -1; + + if (plot != null && uploadDataIfGlobal) id = Rapier3D.getID(((ServerSubLevel) plot.getSubLevel())); + Rapier3D.addChunk(this.sceneId, x, y, z, array, global, id); + } + + /** + * Handles the removal of a chunk section from the physics context + */ + @Override + public void handleChunkSectionRemoval(final int x, final int y, final int z) { + Rapier3D.removeChunk(this.sceneId, x, y, z, !SubLevelContainer.getContainer(this.level).inBounds(x, z)); + } + + /** + * Handles the change of a block (from oldState to newState) in a chunk at chunk-relative position x, y, z. + * Only called server-side. + * + * @param x chunk-relative x position + * @param y chunk-relative y position + * @param z chunk-relative z position + */ + @Override + public void handleBlockChange(final SectionPos sectionPos, final LevelChunkSection chunk, int x, int y, int z, final BlockState oldState, final BlockState newState) { + x = (sectionPos.x() << 4) + x; + y = (sectionPos.y() << 4) + y; + z = (sectionPos.z() << 4) + z; + + final BlockPos globalBlockPos = new BlockPos(x, y, z); + + for (final Direction dir : Direction.values()) { + final BlockPos pos = globalBlockPos.relative(dir); + final VoxelNeighborhoodState state = VoxelNeighborhoodState.getState(this.accelerator, pos, null); + final RapierVoxelColliderData colliderData = this.colliderBakery.getPhysicsDataForBlock(this.level.getBlockState(pos)); + + final int colliderValue = colliderData == null ? 0 : colliderData.handle() + 1; + Rapier3D.changeBlock(this.sceneId, pos.getX(), pos.getY(), pos.getZ(), packBlockState(state, colliderValue)); + } + + // do it for the block without offset + final VoxelNeighborhoodState state = VoxelNeighborhoodState.getState(this.accelerator, globalBlockPos, null); + final RapierVoxelColliderData colliderData = this.colliderBakery.getPhysicsDataForBlock(newState); + + final int colliderValue = colliderData == null ? 0 : colliderData.handle() + 1; + Rapier3D.changeBlock(this.sceneId, x, y, z, packBlockState(state, colliderValue)); + } + + @Override + public void onStatsChanged(@NotNull final ServerSubLevel serverSubLevel) { + final BoundingBox3ic plotBounds = serverSubLevel.getPlot().getBoundingBox(); + + final int id = Rapier3D.getID(serverSubLevel); + + final Vector3dc centerOfMass = serverSubLevel.getMassTracker().getCenterOfMass(); + if (centerOfMass != null) { + Rapier3D.setCenterOfMass(this.sceneId, id, centerOfMass.x(), centerOfMass.y(), centerOfMass.z()); + Rapier3D.setMassPropertiesFrom(this.sceneId, id, serverSubLevel.getMassTracker()); + } + + Rapier3D.setLocalBounds(this.sceneId, id, plotBounds.minX(), plotBounds.minY(), plotBounds.minZ(), plotBounds.maxX(), plotBounds.maxY(), plotBounds.maxZ()); + } + + /** + * Teleports the physics body of a sub-level to a given position. + * + * @param body the physics pipeline body to teleport + * @param position the new position to teleport to + * @param orientation the new orientation to teleport to + */ + @Override + public void teleport(final PhysicsPipelineBody body, final Vector3dc position, final Quaterniondc orientation) { + Rapier3D.teleportObject(this.sceneId, Rapier3D.getID(body), position.x(), position.y(), position.z(), orientation.x(), orientation.y(), orientation.z(), orientation.w()); + if (body instanceof final ServerSubLevel subLevel) { + subLevel.logicalPose().position().set(position); + subLevel.logicalPose().orientation().set(orientation); + } + } + + /** + * Adds a force at a given world position to a sub-level containing the position + * + * @param body the sub-level to apply the force to + * @param position the position to apply the force at [m] + * @param force the force to apply [N] + */ + @Override + public void applyImpulse(final PhysicsPipelineBody body, final Vector3dc position, final Vector3dc force) { + final Vector3dc centerOfMass = body.getMassTracker().getCenterOfMass(); + + Rapier3D.applyForce(this.sceneId, Rapier3D.getID(body), position.x() - centerOfMass.x(), position.y() - centerOfMass.y(), position.z() - centerOfMass.z(), force.x(), force.y(), force.z(), true); + } + + /** + * Adds a local force and torque + * + * @param body the sub-level to apply the force to + * @param torque the local torque to apply [Nm] + */ + @Override + public void applyLinearAndAngularImpulse(final PhysicsPipelineBody body, final Vector3dc force, final Vector3dc torque, final boolean wakeUp) { + Rapier3D.applyForceAndTorque(this.sceneId, Rapier3D.getID(body), force.x(), force.y(), force.z(), torque.x(), torque.y(), torque.z(), wakeUp); + } + + /** + * Adds linear and angular velocities to a sub-level + * + * @param body the sub-level to apply the velocities to + * @param linearVelocity the linear velocity to apply [m/s] + * @param angularVelocity the angular velocity to apply [rad/s] + */ + @Override + public void addLinearAndAngularVelocity(final PhysicsPipelineBody body, final Vector3dc linearVelocity, final Vector3dc angularVelocity) { + Rapier3D.addLinearAngularVelocities(this.sceneId, Rapier3D.getID(body), linearVelocity.x(), linearVelocity.y(), linearVelocity.z(), angularVelocity.x(), angularVelocity.y(), angularVelocity.z(), true); + } + + @Override + public Vector3d getLinearVelocity(final PhysicsPipelineBody body, final Vector3d dest) { + Rapier3D.getLinearVelocity(this.sceneId, Rapier3D.getID(body), this.cache); + return dest.set(this.cache); + } + + @Override + public Vector3d getAngularVelocity(final PhysicsPipelineBody body, final Vector3d dest) { + Rapier3D.getAngularVelocity(this.sceneId, Rapier3D.getID(body), this.cache); + return dest.set(this.cache); + } + + /** + * "Wakes up" a sub-level, indicating environmental or other changes have occurred that should resume physics for idled or sleeping sub-levels. + * + * @param body the sub-level to wake up + */ + @Override + public void wakeUp(final PhysicsPipelineBody body) { + Rapier3D.wakeUpObject(this.sceneId, Rapier3D.getID(body)); + } + + /** + * Adds a constraint to the engine, returning its handle + * + * @param sublevelA the first sub-level to constrain, or null to constrain the second sub-level to the world + * @param sublevelB the second sub-level to constrain, or null to constrain the first sub-level to the world + * @param configuration the configuration of the constraint + */ + @SuppressWarnings("unchecked") + @Override + public T addConstraint(@Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final PhysicsConstraintConfiguration configuration) { + if (sublevelA == null && sublevelB == null) { + Sable.LOGGER.error("Cannot add a constraint between the static world and static world"); + return null; + } + + if (sublevelA == sublevelB) { + Sable.LOGGER.error("Cannot add a constraint between a sub-level and itself"); + return null; + } + + if (configuration instanceof final RotaryConstraintConfiguration config) { + return (T) RapierRotaryConstraintHandle.create(this.level, sublevelA, sublevelB, config); + } + + if (configuration instanceof final FixedConstraintConfiguration config) { + return (T) RapierFixedConstraintHandle.create(this.level, sublevelA, sublevelB, config); + } + + if (configuration instanceof final FreeConstraintConfiguration config) { + return (T) RapierFreeConstraintHandle.create(this.level, sublevelA, sublevelB, config); + } + + if (configuration instanceof final GenericConstraintConfiguration config) { + return (T) RapierGenericConstraintHandle.create(this.level, sublevelA, sublevelB, config); + } + + Sable.LOGGER.error("Unknown constraint configuration type: {}", configuration.getClass().getName()); + return null; + } + + /** + * Updates the config of the physics engine from a data object + * + * @param data the data to update from + */ + @Override + public void updateConfigFrom(final PhysicsConfigData data) { + Rapier3D.configFrequencyAndDamping(data.contactSpringFrequency, data.contactSpringDampingRatio); + Rapier3D.configSolverIterations(data.solverIterations, data.pgsIterations, data.stabilizationIterations); + Rapier3D.configMinIslandSize(data.minDynamicBodiesPerIsland); + } + + /** + * @return the next runtime ID for a collider / sub-level + */ + @Override + public int getNextRuntimeID() { + return Rapier3D.nextBodyID(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.java new file mode 100644 index 0000000..b1c9d6f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.java @@ -0,0 +1,57 @@ +package dev.ryanhcode.sable.physics.impl.rapier.box; + +import dev.ryanhcode.sable.api.physics.object.box.BoxHandle; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +@ApiStatus.Internal +public record RapierBoxHandle(int sceneId, int id, double[] poseCache) implements BoxHandle { + + public static RapierBoxHandle create(final int sceneId, final Pose3dc pose, final Vector3dc halfExtents, final double mass) { + final Vector3dc pos = pose.position(); + final Quaterniondc rot = pose.orientation(); + + final int id = Rapier3D.nextBodyID(); + Rapier3D.createBox(sceneId, id, mass, halfExtents.x(), halfExtents.y(), halfExtents.z(), new double[]{pos.x(), pos.y(), pos.z(), rot.x(), rot.y(), rot.z(), rot.w()}); + return new RapierBoxHandle(sceneId, id, new double[7]); + } + + /** + * Queries the pose of the box from the physics engine + */ + @Override + public void readPose(final Pose3d dest) { + Rapier3D.getPose(this.sceneId, this.id, this.poseCache); + + dest.position().set(this.poseCache[0], this.poseCache[1], this.poseCache[2]); + dest.orientation().set(this.poseCache[3], this.poseCache[4], this.poseCache[5], this.poseCache[6]); + } + + /** + * Removes the rope from the physics pipeline + */ + @Override + public void remove() { + Rapier3D.removeBox(this.sceneId, this.id); + } + + /** + * Wakes up the rope + */ + @Override + public void wakeUp() { + Rapier3D.wakeUpObject(this.sceneId, this.id); + } + + /** + * @return the runtime ID of the box + */ + @Override + public int getRuntimeId() { + return this.id; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.java new file mode 100644 index 0000000..0d94379 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.java @@ -0,0 +1,56 @@ +package dev.ryanhcode.sable.physics.impl.rapier.collider; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.Fluids; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Physics data is specific for each block regardless of where it's placed or what possible block entity state may exist. + * This class makes sure any blocks that attempt to change state based on their neighbors will not cause crashes. + */ +@ApiStatus.Internal +public final class PhysicsColliderBlockGetter implements BlockGetter { + + private final BlockGetter level; + private BlockState state; + + public PhysicsColliderBlockGetter(final BlockGetter level) { + this.level = level; + } + + public void setup(final BlockState state) { + this.state = state; + } + + @Override + public @Nullable BlockEntity getBlockEntity(final @NotNull BlockPos pos) { + return null; + } + + @Override + public @NotNull BlockState getBlockState(@NotNull final BlockPos pos) { + return BlockPos.ZERO.equals(pos) ? this.state : Blocks.AIR.defaultBlockState(); + } + + @Override + public @NotNull FluidState getFluidState(@NotNull final BlockPos pos) { + return BlockPos.ZERO.equals(pos) ? this.state.getFluidState() : Fluids.EMPTY.defaultFluidState(); + } + + @Override + public int getHeight() { + return this.level.getHeight(); + } + + @Override + public int getMinBuildHeight() { + return this.level.getMinBuildHeight(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.java new file mode 100644 index 0000000..993c6b3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.java @@ -0,0 +1,101 @@ +package dev.ryanhcode.sable.physics.impl.rapier.collider; + +import dev.ryanhcode.sable.api.block.BlockSubLevelCollisionShape; +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.collider.SableCollisionContext; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.physics.chunk.VoxelNeighborhoodState; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import net.minecraft.Util; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.function.Function; + +/** + * A collider bakery that creates and caches collision shapes for blocks in Rapier + * + * @author RyanH + */ +public class RapierVoxelColliderBakery { + private final @NotNull BlockGetter level; + private final Function blockPhysicsDataBuilder = Util.memoize(this::buildPhysicsDataForBlock); + + /** + * Creates a new level collider for the given level + * + * @param blockGetter the level to collide with + */ + public RapierVoxelColliderBakery(@NotNull final BlockGetter blockGetter) { + this.level = new PhysicsColliderBlockGetter(blockGetter); + } + + /** + * @return the level this collider is for + */ + public @NotNull BlockGetter getLevel() { + return this.level; + } + + /** + * Builds a box or compound collision shape + * + * @param childState the state to build the shape for + * @return the physics data ID for the block at the given position, or null for empty + */ + private @NotNull RapierVoxelColliderData buildPhysicsDataForBlock(final BlockState childState) { + final boolean liquid = VoxelNeighborhoodState.isLiquid(childState); + + final double friction = PhysicsBlockPropertyHelper.getFriction(childState); + final double volume = PhysicsBlockPropertyHelper.getVolume(childState); + final double restitution = PhysicsBlockPropertyHelper.getRestitution(childState); + final BlockSubLevelCollisionCallback callback = BlockWithSubLevelCollisionCallback.sable$getCallback(childState); + final RapierVoxelColliderData entry = Rapier3D.createVoxelColliderEntry(friction, volume, restitution, liquid, callback); + + if (liquid) { + entry.addBox(JOMLConversion.ZERO, new Vector3d(1.0, 1.0, 1.0)); + return entry; + } + + final VoxelShape shape; + + if (childState.getBlock() instanceof final BlockSubLevelCollisionShape extension) { + shape = extension.getSubLevelCollisionShape(this.level, childState); + } else { + shape = childState.getCollisionShape(this.level, BlockPos.ZERO, SableCollisionContext.get()); + } + + if (shape.isEmpty()) { + return RapierVoxelColliderData.EMPTY; + } + + shape.forAllBoxes((minX, minY, minZ, maxX, maxY, maxZ) -> { + // limit each block to the bounds of the unit cube, + // so that fences / walls do not have unexpected behaviour + entry.addBox( + new Vector3d(Math.max(minX, 0.0), Math.max(minY, 0.0), Math.max(minZ, 0.0)), + new Vector3d(Math.min(maxX, 1.0), Math.min(maxY, 1.0), Math.min(maxZ, 1.0)) + ); + }); + + return entry; + } + + /** + * Builds / gets a saved box or compound collision shape for a block + * + * @param state the state to build the shape for + * @return the physics data ID for the block at the given position, or null for empty + */ + public @Nullable RapierVoxelColliderData getPhysicsDataForBlock(final BlockState state) { + final RapierVoxelColliderData data = this.blockPhysicsDataBuilder.apply(state); + return data == RapierVoxelColliderData.EMPTY ? null : data; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.java new file mode 100644 index 0000000..b800fe9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.physics.impl.rapier.collider; + +import dev.ryanhcode.sable.api.physics.collider.VoxelColliderData; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import org.joml.Vector3dc; + +/** + * Represents a block physics data entry in the physics world. + * + * @param handle the internal integer handle of the block physics data entry + */ +public record RapierVoxelColliderData(int handle) implements VoxelColliderData { + public static final RapierVoxelColliderData EMPTY = new RapierVoxelColliderData(-1); + + /** + * Adds a collision box to the block physics data entry. + * Coordinates are expected to be within a single voxel space of the block, 0-1. + * + * @param min the minimum corner of the box + * @param max the maximum corner of the box + */ + @Override + public void addBox(final Vector3dc min, final Vector3dc max) { + Rapier3D.addVoxelColliderBox(this.handle, new double[]{min.x(), min.y(), min.z(), max.x(), max.y(), max.z()}); + } + + /** + * Clears all collision boxes + */ + @Override + public void clearBoxes() { + Rapier3D.clearVoxelColliderBoxes(this.handle); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.java new file mode 100644 index 0000000..7adfc13 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.java @@ -0,0 +1,84 @@ +package dev.ryanhcode.sable.physics.impl.rapier.constraint; + +import dev.ryanhcode.sable.api.physics.constraint.ConstraintJointAxis; +import dev.ryanhcode.sable.api.physics.constraint.PhysicsConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; + +@ApiStatus.Internal +public abstract class RapierConstraintHandle implements PhysicsConstraintHandle { + + /** + * The handle to use for {@link dev.ryanhcode.sable.physics.impl.rapier.Rapier3D} methods + */ + protected final long handle; + + /** + * The scene ID that this constraint is in + */ + protected final int sceneID; + + private final double[] impulseCache; + + /** + * Creates a new constraint handle + * + * @param sceneID the scene ID that this constraint is in + * @param handle the handle from the physics engine + */ + protected RapierConstraintHandle(final int sceneID, final long handle) { + this.sceneID = sceneID; + this.handle = handle; + this.impulseCache = new double[6]; + } + + /** + * Sets if contacts are enabled between the two bodies in the constraint + */ + @Override + public void setContactsEnabled(final boolean enabled) { + Rapier3D.setConstraintContactsEnabled(this.sceneID, this.handle, enabled); + } + + /** + * Gets the latest linear and angular joint impulses from the solver + */ + @Override + public void getJointImpulses(final Vector3d linearImpulseDest, final Vector3d angularImpulseDest) { + Rapier3D.getConstraintImpulses(this.sceneID, this.handle, this.impulseCache); + linearImpulseDest.set(this.impulseCache[0], this.impulseCache[1], this.impulseCache[2]); + angularImpulseDest.set(this.impulseCache[3], this.impulseCache[4], this.impulseCache[5]); + } + + /** + * Adds / sets a motor on this joint + * + * @param axis The axis on which the motor operates + * @param target The target position along that axis [m | rad] + * @param stiffness How stiff the motor should act, or P in the PD controller + * @param damping How much damping the motor should have, or D in the PD controller + * @param hasForceLimit If the motor should have a force limit + * @param maxForce The maximum force the motor can apply + */ + @Override + public void setMotor(final ConstraintJointAxis axis, final double target, final double stiffness, final double damping, final boolean hasForceLimit, final double maxForce) { + Rapier3D.setConstraintMotor(this.sceneID, this.handle, axis.ordinal(), target, stiffness, damping, hasForceLimit, maxForce); + } + + /** + * Removes the constraint from the active physics engine + */ + @Override + public void remove() { + Rapier3D.removeConstraint(this.sceneID, this.handle); + } + + /** + * @return if the constraint is still valid, and has not been removed by the engine + */ + @Override + public boolean isValid() { + return Rapier3D.isConstraintValid(this.sceneID, this.handle); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.java new file mode 100644 index 0000000..0fbcb28 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.physics.impl.rapier.constraint.fixed; + +import dev.ryanhcode.sable.api.physics.constraint.fixed.FixedConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.fixed.FixedConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.RapierConstraintHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.Nullable; + +public class RapierFixedConstraintHandle extends RapierConstraintHandle implements FixedConstraintHandle { + /** + * Creates a rapier constraint handle + */ + public static RapierFixedConstraintHandle create(final ServerLevel serverLevel, @Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final FixedConstraintConfiguration config) { + final int sceneID = Rapier3D.getID(serverLevel); + + final long handle = Rapier3D.addFixedConstraint( + sceneID, + sublevelA == null ? -1 : Rapier3D.getID(sublevelA), + sublevelB == null ? -1 : Rapier3D.getID(sublevelB), + config.pos1().x(), + config.pos1().y(), + config.pos1().z(), + config.pos2().x(), + config.pos2().y(), + config.pos2().z(), + config.orientation().x(), + config.orientation().y(), + config.orientation().z(), + config.orientation().w() + ); + + return new RapierFixedConstraintHandle(sceneID, handle); + } + + /** + * Creates a new constraint handle + * + * @param sceneID the scene ID that this constraint is in + * @param handle the handle from the physics engine + */ + public RapierFixedConstraintHandle(final int sceneID, final long handle) { + super(sceneID, handle); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.java new file mode 100644 index 0000000..4bfd6f9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.physics.impl.rapier.constraint.free; + +import dev.ryanhcode.sable.api.physics.constraint.free.FreeConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.free.FreeConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.RapierConstraintHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.Nullable; + +public class RapierFreeConstraintHandle extends RapierConstraintHandle implements FreeConstraintHandle { + /** + * Creates a rapier constraint handle + */ + public static RapierFreeConstraintHandle create(final ServerLevel serverLevel, @Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final FreeConstraintConfiguration config) { + final int sceneID = Rapier3D.getID(serverLevel); + + final long handle = Rapier3D.addFreeConstraint( + sceneID, + sublevelA == null ? -1 : Rapier3D.getID(sublevelA), + sublevelB == null ? -1 : Rapier3D.getID(sublevelB), + config.pos1().x(), + config.pos1().y(), + config.pos1().z(), + config.pos2().x(), + config.pos2().y(), + config.pos2().z(), + config.orientation().x(), + config.orientation().y(), + config.orientation().z(), + config.orientation().w() + ); + + return new RapierFreeConstraintHandle(sceneID, handle); + } + + /** + * Creates a new constraint handle + * + * @param sceneID the scene ID that this constraint is in + * @param handle the handle from the physics engine + */ + public RapierFreeConstraintHandle(final int sceneID, final long handle) { + super(sceneID, handle); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.java new file mode 100644 index 0000000..2416074 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.java @@ -0,0 +1,83 @@ +package dev.ryanhcode.sable.physics.impl.rapier.constraint.generic; + +import dev.ryanhcode.sable.api.physics.constraint.ConstraintJointAxis; +import dev.ryanhcode.sable.api.physics.constraint.generic.GenericConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.generic.GenericConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.RapierConstraintHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Vector3dc; + +@ApiStatus.Internal +public class RapierGenericConstraintHandle extends RapierConstraintHandle implements GenericConstraintHandle { + + private static final int FRAME_SIDE_FIRST = 0; + private static final int FRAME_SIDE_SECOND = 1; + + /** + * Creates a rapier constraint handle + */ + public static RapierGenericConstraintHandle create(final ServerLevel serverLevel, @Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final GenericConstraintConfiguration config) { + final int sceneID = Rapier3D.getID(serverLevel); + + int lockedAxesMask = 0; + for (final ConstraintJointAxis axis : config.lockedAxes()) { + lockedAxesMask |= 1 << axis.ordinal(); + } + + final long handle = Rapier3D.addGenericConstraint( + sceneID, + sublevelA == null ? -1 : Rapier3D.getID(sublevelA), + sublevelB == null ? -1 : Rapier3D.getID(sublevelB), + config.pos1().x(), + config.pos1().y(), + config.pos1().z(), + config.orientation1().x(), + config.orientation1().y(), + config.orientation1().z(), + config.orientation1().w(), + config.pos2().x(), + config.pos2().y(), + config.pos2().z(), + config.orientation2().x(), + config.orientation2().y(), + config.orientation2().z(), + config.orientation2().w(), + lockedAxesMask + ); + + return new RapierGenericConstraintHandle(sceneID, handle); + } + + /** + * Creates a new constraint handle + * + * @param sceneID the scene ID that this constraint is in + * @param handle the handle from the physics engine + */ + public RapierGenericConstraintHandle(final int sceneID, final long handle) { + super(sceneID, handle); + } + + @Override + public void setFrame1(final Vector3dc localPosition, final Quaterniondc localRotation) { + Rapier3D.setConstraintFrame( + this.sceneID, this.handle, FRAME_SIDE_FIRST, + localPosition.x(), localPosition.y(), localPosition.z(), + localRotation.x(), localRotation.y(), localRotation.z(), localRotation.w() + ); + } + + @Override + public void setFrame2(final Vector3dc localPosition, final Quaterniondc localRotation) { + Rapier3D.setConstraintFrame( + this.sceneID, this.handle, FRAME_SIDE_SECOND, + localPosition.x(), localPosition.y(), localPosition.z(), + localRotation.x(), localRotation.y(), localRotation.z(), localRotation.w() + ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.java new file mode 100644 index 0000000..b30563d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.java @@ -0,0 +1,48 @@ +package dev.ryanhcode.sable.physics.impl.rapier.constraint.rotary; + +import dev.ryanhcode.sable.api.physics.constraint.rotary.RotaryConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.rotary.RotaryConstraintHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import dev.ryanhcode.sable.physics.impl.rapier.constraint.RapierConstraintHandle; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.Nullable; + +public class RapierRotaryConstraintHandle extends RapierConstraintHandle implements RotaryConstraintHandle { + /** + * Creates a rapier constraint handle + */ + public static RapierRotaryConstraintHandle create(final ServerLevel serverLevel, @Nullable final ServerSubLevel sublevelA, @Nullable final ServerSubLevel sublevelB, final RotaryConstraintConfiguration config) { + final int sceneID = Rapier3D.getID(serverLevel); + + final long handle = Rapier3D.addRotaryConstraint( + sceneID, + sublevelA == null ? -1 : Rapier3D.getID(sublevelA), + sublevelB == null ? -1 : Rapier3D.getID(sublevelB), + config.pos1().x(), + config.pos1().y(), + config.pos1().z(), + config.pos2().x(), + config.pos2().y(), + config.pos2().z(), + config.normal1().x(), + config.normal1().y(), + config.normal1().z(), + config.normal2().x(), + config.normal2().y(), + config.normal2().z() + ); + + return new RapierRotaryConstraintHandle(sceneID, handle); + } + + /** + * Creates a new constraint handle + * + * @param sceneID the scene ID that this constraint is in + * @param handle the handle from the physics engine + */ + public RapierRotaryConstraintHandle(final int sceneID, final long handle) { + super(sceneID, handle); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.java b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.java new file mode 100644 index 0000000..28b87d9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.java @@ -0,0 +1,87 @@ +package dev.ryanhcode.sable.physics.impl.rapier.rope; + +import dev.ryanhcode.sable.api.physics.object.rope.RopeHandle; +import dev.ryanhcode.sable.physics.impl.rapier.Rapier3D; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; + +@ApiStatus.Internal +public record RapierRopeHandle(int sceneId, long handle) implements RopeHandle { + + public static RapierRopeHandle create(final int sceneId, final double pointRadius, final List points) { + final double[] coordinates = new double[points.size() * 3]; + + for (int i = 0; i < points.size(); i++) { + final Vector3d point = points.get(i); + coordinates[i * 3] = point.x; + coordinates[i * 3 + 1] = point.y; + coordinates[i * 3 + 2] = point.z; + } + + final long handle = Rapier3D.createRope(sceneId, pointRadius, points.get(0).distance(points.get(1)), coordinates, points.size()); + return new RapierRopeHandle(sceneId, handle); + } + + /** + * Queries the points of the rope from the physics engine + */ + @Override + public void readPose(final List dest) { + final double[] coordinates = Rapier3D.queryRope(this.sceneId, this.handle); + for (int i = 0; i < coordinates.length; i += 3) { + dest.get(i / 3).set(coordinates[i], coordinates[i + 1], coordinates[i + 2]); + } + } + + /** + * Removes the rope from the physics pipeline + */ + @Override + public void remove() { + Rapier3D.removeRope(this.sceneId, this.handle); + } + + /** + * Sets the extension constraint length of the first segment + */ + @Override + public void setFirstSegmentLength(final double length) { + Rapier3D.setRopeFirstSegmentLength(this.sceneId, this.handle, length); + } + + /** + * Removes the point at the beginning of the rope + */ + @Override + public void removeFirstPoint() { + Rapier3D.removeRopePointAtStart(this.sceneId, this.handle); + } + + /** + * Adds a point to the beginning of the rope + */ + @Override + public void addPoint(final Vector3dc position) { + Rapier3D.addRopePointAtStart(this.sceneId, this.handle, position.x(), position.y(), position.z()); + } + + /** + * Sets an attachment + */ + @Override + public void setAttachment(final AttachmentPoint attachmentPoint, final Vector3dc location, final ServerSubLevel subLevel) { + Rapier3D.setRopeAttachment(this.sceneId, this.handle, subLevel == null ? -1 : Rapier3D.getID(subLevel), location.x(), location.y(), location.z(), attachmentPoint == AttachmentPoint.END); + } + + /** + * Wakes up the rope + */ + @Override + public void wakeUp() { + Rapier3D.wakeUpRope(this.sceneId, this.handle); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableAssemblyPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableAssemblyPlatform.java new file mode 100644 index 0000000..9ffa434 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableAssemblyPlatform.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.platform; + +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public interface SableAssemblyPlatform { + SableAssemblyPlatform INSTANCE = SablePlatformUtil.load(SableAssemblyPlatform.class); + + void setIgnoreOnPlace(final Level level, final boolean ignore); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableChunkEventPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableChunkEventPlatform.java new file mode 100644 index 0000000..26ac1ae --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableChunkEventPlatform.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.platform; + +import net.minecraft.world.level.chunk.LevelChunk; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public interface SableChunkEventPlatform { + SableChunkEventPlatform INSTANCE = SablePlatformUtil.load(SableChunkEventPlatform.class); + + void onChunkPacketReplaced(final LevelChunk chunk); + + void onOldChunkInvalid(final LevelChunk chunk); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPlatform.java new file mode 100644 index 0000000..ceacf24 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPlatform.java @@ -0,0 +1,37 @@ +package dev.ryanhcode.sable.platform; + +import dev.ryanhcode.sable.api.event.SablePostPhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SablePrePhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SableSubLevelContainerReadyEvent; + +public interface SableEventPlatform { + SableEventPlatform INSTANCE = SablePlatformUtil.load(SableEventPlatform.class); + + /** + * Registers a listener for when Sable has finished initialization for a level and its sub-level container is ready + * to use. + * @param event The event to register + */ + void onSubLevelContainerReady(final SableSubLevelContainerReadyEvent event); + + /** + * Registers a listener for when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is + * ticking physics. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ + void onPhysicsTick(final SablePrePhysicsTickEvent event); + + /** + * Registers a listener for when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is + * complete with a physics tick. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ + void onPostPhysicsTick(final SablePostPhysicsTickEvent event); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPublishPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPublishPlatform.java new file mode 100644 index 0000000..b440374 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableEventPublishPlatform.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.platform; + +import dev.ryanhcode.sable.api.event.SablePostPhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SablePrePhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SableSubLevelContainerReadyEvent; +import org.jetbrains.annotations.ApiStatus; + +/** + * Platform responsible for publishing sable events. + */ +@ApiStatus.Internal +public interface SableEventPublishPlatform extends SableSubLevelContainerReadyEvent, SablePrePhysicsTickEvent, SablePostPhysicsTickEvent { + SableEventPublishPlatform INSTANCE = SablePlatformUtil.load(SableEventPublishPlatform.class); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableLoaderPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableLoaderPlatform.java new file mode 100644 index 0000000..174e394 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableLoaderPlatform.java @@ -0,0 +1,10 @@ +package dev.ryanhcode.sable.platform; + +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public interface SableLoaderPlatform { + SableLoaderPlatform INSTANCE = SablePlatformUtil.load(SableLoaderPlatform.class); + + String getModVersion(String modId); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatform.java new file mode 100644 index 0000000..6a89cbc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatform.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.platform; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +@ApiStatus.Internal +public interface SablePlatform { + SablePlatform INSTANCE = SablePlatformUtil.load(SablePlatform.class); + + /** + * Checks if the specified level is a wrapped level from Create. + * + * @param level The level to check + * @return If the level is wrapped + */ + boolean isWrappedLevel(@Nullable final Level level); + + boolean isBlockstateLadder(BlockState state, Level level, BlockPos pos, LivingEntity entity); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatformUtil.java b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatformUtil.java new file mode 100644 index 0000000..6b1ce2a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlatformUtil.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.platform; + +import java.util.ServiceLoader; + +public class SablePlatformUtil { + public static T load(Class clazz) { + return ServiceLoader.load(clazz, SablePlatformUtil.class.getClassLoader()) + .findFirst() + .orElseThrow(() -> new NullPointerException("Failed to load service for " + clazz.getName())); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SablePlotPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlotPlatform.java new file mode 100644 index 0000000..64f44b9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SablePlotPlatform.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.platform; + +import net.minecraft.core.RegistryAccess; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.chunk.LevelChunk; + +public interface SablePlotPlatform { + SablePlotPlatform INSTANCE = SablePlatformUtil.load(SablePlotPlatform.class); + + void readLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk); + + void readChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk); + + void postLoad(final CompoundTag tag, final LevelChunk chunk); + + void writeLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk); + + void writeChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.java b/common/src/main/java/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.java new file mode 100644 index 0000000..a2490ed --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.platform; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.sublevel.render.vanilla.SingleBlockSubLevelWrapper; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +@ApiStatus.Internal +public interface SableSubLevelRenderPlatform { + SableSubLevelRenderPlatform INSTANCE = SablePlatformUtil.load(SableSubLevelRenderPlatform.class); + + void tesselateBlock( + final SingleBlockSubLevelWrapper blockAndTintGetter, + final BakedModel bakedModel, + final BlockState blockState, + final BlockPos pos, + final PoseStack poseStack, + final VertexConsumer vertexConsumer, + final RandomSource randomSource, + final long seed, + final int packedOverlay, + final @Nullable RenderType renderType); + + List getRenderLayers( + final SingleBlockSubLevelWrapper blockAndTintGetter, + final BakedModel bakedModel, + final BlockState blockState, + final BlockPos pos, + final RandomSource randomSource); + + void tryAddFlywheelVisual(final BlockEntity blockEntity); +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.java b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.java new file mode 100644 index 0000000..d6845b0 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.render.dynamic_biome; + +import com.mojang.blaze3d.vertex.VertexFormat; +import net.minecraft.client.renderer.RenderType; + +public class DynamicBiomeTintRenderTypes extends RenderType { + private static final String NAME = "dynamic_biome_tint"; + + public DynamicBiomeTintRenderTypes(final String string, final VertexFormat vertexFormat, final VertexFormat.Mode mode, final int i, final boolean bl, final boolean bl2, final Runnable runnable, final Runnable runnable2) { + super(string, vertexFormat, mode, i, bl, bl2, runnable, runnable2); + } +// +// public static void hello() { +// RenderType.CompositeState rendertype$state = RenderType.CompositeState.builder() +// .setShaderState(VeilRenderBridge.shaderState(Sable.path("hello_there"))) +// .setTextureState(BLOCK_SHEET_MIPPED) +// .setLightmapState(LIGHTMAP) +// .createCompositeState(true); +// +// RenderType.create(NAME,DefaultVertexFormat.BLOCK, VertexFormat.Mode.QUADS, RenderType.BIG_BUFFER_SIZE, true, false, rendertype$state); +// +// } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.java b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.java new file mode 100644 index 0000000..6e6344d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.render.dynamic_shade; + + +public class SableDynamicDirectionalShading { + + private static boolean isEnabled = false; + + public static boolean isEnabled() { + return isEnabled; + } + + public static void setIsEnabled(final boolean isEnabled) { + SableDynamicDirectionalShading.isEnabled = isEnabled; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.java b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.java new file mode 100644 index 0000000..f9f863e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.java @@ -0,0 +1,86 @@ +package dev.ryanhcode.sable.render.dynamic_shade; + +import foundry.veil.Veil; +import foundry.veil.api.client.render.shader.processor.ShaderPreProcessor; +import io.github.ocelot.glslprocessor.api.GlslInjectionPoint; +import io.github.ocelot.glslprocessor.api.GlslParser; +import io.github.ocelot.glslprocessor.api.GlslSyntaxException; +import io.github.ocelot.glslprocessor.api.node.GlslNode; +import io.github.ocelot.glslprocessor.api.node.GlslNodeList; +import io.github.ocelot.glslprocessor.api.node.GlslTree; +import io.github.ocelot.glslprocessor.api.node.expression.GlslAssignmentNode; +import io.github.ocelot.glslprocessor.api.node.expression.GlslOperationNode; +import io.github.ocelot.glslprocessor.api.node.function.GlslInvokeFunctionNode; +import io.github.ocelot.glslprocessor.api.node.variable.GlslVariableNode; +import io.github.ocelot.glslprocessor.lib.anarres.cpp.LexerException; +import net.minecraft.client.renderer.RenderType; + +import java.io.IOException; +import java.util.List; + +public class SableDynamicDirectionalShadingPreProcessor implements ShaderPreProcessor { + + @Override + public void modify(final Context ctx, final GlslTree tree) throws GlslSyntaxException, IOException, LexerException { + if (!SableDynamicDirectionalShading.isEnabled()) { + return; + } + + if (ctx instanceof final MinecraftContext minecraftContext) { + final List renderTypes = RenderType.chunkBufferLayers(); + + boolean anyMatches = false; + + for (final RenderType renderType : renderTypes) { + if (ctx.isVertex() && minecraftContext.shaderInstance().equals("rendertype_%s".formatted(renderType.name))) { + anyMatches = true; + } + } + + if (!anyMatches) { + return; + } + } else { + return; + } + + ctx.include(tree, Veil.veilPath("light"), IncludeOverloadStrategy.SOURCE); + + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform float SableEnableNormalLighting;")); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform float SableSkyLightScale;")); + + // Add NormalMat if we're lacking it + if (tree.field("NormalMat").isEmpty()) { + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform mat3 NormalMat;")); + } + + final List body = tree.mainFunction().orElseThrow().getBody(); + body.add(GlslParser.parseExpression("vertexColor.rgb *= mix(vec3(1.0), vec3(block_brightness(inverse(NormalMat) * (ModelViewMat * vec4(Normal, 0.0)).xyz)), SableEnableNormalLighting);")); + + final GlslNodeList mainFunctionBody = tree.mainFunction().orElseThrow().getBody(); + assert mainFunctionBody != null; + for (int i = 0; i < mainFunctionBody.size(); i++) { + final GlslNode node = mainFunctionBody.get(i); + + if (node instanceof final GlslAssignmentNode assignmentNode && assignmentNode.getOperand() == GlslAssignmentNode.Operand.EQUAL) { + // We can be for sure it's an assignment. Now let's check that it's calling + // minecraft_sample_lightmap + final GlslNode second = assignmentNode.getSecond(); + + if (second instanceof final GlslOperationNode operationNode && operationNode.getOperand() == GlslOperationNode.Operand.MULTIPLY) { + if (operationNode.getSecond() instanceof final GlslInvokeFunctionNode invokeNode && invokeNode.getHeader() instanceof final GlslVariableNode variableNode && variableNode.getName().equals("minecraft_sample_lightmap")) { + final List replacementNodes = GlslParser.parseExpressionList("vertexColor = Color * minecraft_sample_lightmap(Sampler2, ivec2(UV2 * vec2(1.0, SableSkyLightScale)));"); + + mainFunctionBody.set(i, replacementNodes.getFirst()); + + for (int j = 1; j < replacementNodes.size(); j++) { + mainFunctionBody.add(i + j, replacementNodes.get(j)); + } + + break; + } + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.java b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.java new file mode 100644 index 0000000..ade183d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.render.dynamic_shade; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.client.renderer.block.model.BakedQuad; + +/** + * Make all shade-less things have a normal pointing straight up for dynamic shading! + */ +public class SubLevelVertexConsumer implements VertexConsumer { + private final VertexConsumer delegate; + private boolean verticalNormal; + + public SubLevelVertexConsumer(final VertexConsumer delegate) { + this.delegate = delegate; + } + + + @Override + public VertexConsumer addVertex(final float f, final float g, final float h) { + this.delegate.addVertex(f, g, h); + return this; + } + + @Override + public VertexConsumer setColor(final int i, final int j, final int k, final int l) { + this.delegate.setColor(i, j, k, l); + return this; + } + + @Override + public VertexConsumer setUv(final float f, final float g) { + this.delegate.setUv(f, g); + return this; + } + + @Override + public VertexConsumer setUv1(final int i, final int j) { + this.delegate.setUv1(i, j); + return this; + } + + @Override + public VertexConsumer setUv2(final int i, final int j) { + this.delegate.setUv2(i, j); + return this; + } + + @Override + public VertexConsumer setNormal(final float pX, final float pY, final float pZ) { + if (this.verticalNormal) { + this.delegate.setNormal(0f, 1f, 0f); + } else { + this.delegate.setNormal(pX, pY, pZ); + } + return this; + } + + @Override + public void putBulkData(final PoseStack.Pose pose, final BakedQuad bakedQuad, final float[] fs, final float f, final float g, final float h, final float i, final int[] is, final int j, final boolean bl) { + this.verticalNormal = !bakedQuad.isShade(); + VertexConsumer.super.putBulkData(pose, bakedQuad, fs, f, g, h, i, is, j, bl); + this.verticalNormal = false; + } + +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.java b/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.java new file mode 100644 index 0000000..c967e3a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.java @@ -0,0 +1,121 @@ +package dev.ryanhcode.sable.render.region; + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.BufferBuilder; +import com.mojang.blaze3d.vertex.Tesselator; +import com.mojang.blaze3d.vertex.VertexBuffer; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Matrix4f; +import org.joml.Quaternionf; +import org.joml.Vector3i; + +import java.util.Collection; + +@ApiStatus.Internal +public abstract class SimpleCulledRenderRegion { + private Collection unbuiltData; + private boolean built = false; + private VertexBuffer buffer; + private Vec3 origin; + + public SimpleCulledRenderRegion(final Collection blocks) { + this.unbuiltData = blocks; + } + + public void render(final Matrix4f modelView, final Matrix4f projectionMatrix) { + if (!this.built) { + this.build(); + } + + final ShaderInstance shader = RenderSystem.getShader(); + assert shader != null; + + final Minecraft client = Minecraft.getInstance(); + final SubLevel subLevel = Sable.HELPER.getContaining(client.level, this.origin); + + Vec3 globalOrigin = this.origin; + final Quaternionf globalOrientation = new Quaternionf(); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final Pose3dc renderPose = clientSubLevel.renderPose(); + globalOrigin = renderPose.transformPosition(globalOrigin); + globalOrientation.set(renderPose.orientation()); + } + + final Vec3 relativePos = globalOrigin.subtract(client.gameRenderer.getMainCamera().getPosition()); + + final Matrix4f modelViewMatrix = new Matrix4f(modelView) + .setTranslation(0.0f, 0.0f, 0.0f) + .translate((float) relativePos.x, (float) relativePos.y, (float) relativePos.z) + .rotate(globalOrientation); + + shader.setDefaultUniforms(VertexFormat.Mode.QUADS, modelViewMatrix, projectionMatrix, client.getWindow()); + shader.apply(); + + this.buffer.bind(); + this.buffer.draw(); + + VertexBuffer.unbind(); + } + + public void build() { + final BlockPos firstBlock = this.unbuiltData.stream().findFirst().orElseThrow(); + final Vector3i minBlock = new Vector3i(firstBlock.getX(), firstBlock.getY(), firstBlock.getZ()); + final Vector3i maxBlock = new Vector3i(firstBlock.getX(), firstBlock.getY(), firstBlock.getZ()); + final Vector3i currentBlock = new Vector3i(); + + for (final BlockPos block : this.unbuiltData) { + currentBlock.set(block.getX(), block.getY(), block.getZ()); + minBlock.min(currentBlock); + maxBlock.max(currentBlock); + } + + int gridSize = maxBlock.x() - minBlock.x() + 1; + gridSize = Math.max(gridSize, maxBlock.y() - minBlock.y() + 1); + gridSize = Math.max(gridSize, maxBlock.z() - minBlock.z() + 1); + + final BlockPos originBlock = new BlockPos(minBlock.x(), minBlock.y(), minBlock.z()); + this.origin = Vec3.atLowerCornerOf(originBlock); + + final SimpleCulledRenderRegionBuilder builder = this.createMeshBuilder(gridSize); + + for (final BlockPos blockPos : this.unbuiltData) { + builder.add(blockPos.getX() - originBlock.getX(), blockPos.getY() - originBlock.getY(), blockPos.getZ() - originBlock.getZ()); + } + + builder.buildNoGreedy(); + + final BufferBuilder bufferBuilder = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, this.getVertexFormat()); + builder.render(new Matrix4f(), bufferBuilder); + + this.unbuiltData = null; + this.buffer = new VertexBuffer(VertexBuffer.Usage.STATIC); + this.buffer.bind(); + this.buffer.upload(bufferBuilder.buildOrThrow()); + this.built = true; + } + + public Vec3 getOrigin() { + return this.origin; + } + + public abstract SimpleCulledRenderRegionBuilder createMeshBuilder(int gridSize); + + public abstract VertexFormat getVertexFormat(); + + public void free() { + if (this.built) { + this.buffer.close(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.java b/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.java new file mode 100644 index 0000000..b11c21e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.java @@ -0,0 +1,405 @@ +package dev.ryanhcode.sable.render.region; + +import com.mojang.blaze3d.vertex.VertexConsumer; +import net.minecraft.core.Direction; +import org.jetbrains.annotations.NotNull; +import org.joml.Matrix4f; + +import java.util.BitSet; +import java.util.Comparator; +import java.util.LinkedList; +import java.util.List; + +/** + *

Constructs a voxel-based shadow mesh for chunks. + * Voxels are added with {@link #add(int, int, int)} and inserted into "grids".

+ *

After inserting all voxels, {@link #build()} will calculate the + * optimal merging of all voxels into a set of cubes.

+ *

Finally, {@link #render(Matrix4f, VertexConsumer)} will put all calculated shapes + * into a buffer for later rendering.

+ * + * @author Ocelot + */ +public class SimpleCulledRenderRegionBuilder { + + protected static final Comparator Z_SORTER = Comparator.comparingInt(cube -> cube.x + cube.sizeX); + protected static final Comparator Y_SORTER = Z_SORTER.thenComparingInt(cube -> cube.z + cube.sizeZ); + + protected final int gridSize; + protected final List cubes; + protected final BitSet grid; + + /** + * Creates a new mesh builder with the specified grid size. + * + * @param gridSize The number of voxels in each axis + */ + public SimpleCulledRenderRegionBuilder(final int gridSize) { + this.gridSize = gridSize; + this.cubes = new LinkedList<>(); + this.grid = new BitSet(this.gridSize * this.gridSize * this.gridSize); + } + + private int getGridIndex(final int x, final int y, final int z) { + return (z * this.gridSize + y) * this.gridSize + x; + } + + private boolean hasVoxel(final int x, final int y, final int z) { + for (int i = 0; i < 1; i++) { + + final int vx = x >> i; + final int vy = y >> i; + final int vz = z >> i; + + final int sideLength = this.gridSize >> i; + if (vx < 0 || vx >= sideLength || + vy < 0 || vy >= sideLength || + vz < 0 || vz >= sideLength) { + return false; + } + + if (this.grid.get(this.getGridIndex(vx, vy, vz))) { + return true; + } + } + + return false; + } + + protected boolean shouldFaceRender(@NotNull final Cube cube, @NotNull final Direction direction) { + final int x0 = cube.x; + final int y0 = cube.y; + final int z0 = cube.z; + final int x1 = cube.x + cube.sizeX; + final int y1 = cube.y + cube.sizeY; + final int z1 = cube.z + cube.sizeZ; + + return switch (direction) { + case DOWN -> { + for (int x = x0; x < x1; x++) { + for (int z = z0; z < z1; z++) { + if (!this.hasVoxel(x, y0 - 1, z)) { + yield true; + } + } + } + + yield false; + } + case UP -> { + for (int x = x0; x < x1; x++) { + for (int z = z0; z < z1; z++) { + if (!this.hasVoxel(x, y1, z)) { + yield true; + } + } + } + + yield false; + } + case NORTH -> { + for (int x = x0; x < x1; x++) { + for (int y = y0; y < y1; y++) { + if (!this.hasVoxel(x, y, z0 - 1)) { + yield true; + } + } + } + + yield false; + } + case SOUTH -> { + for (int x = x0; x < x1; x++) { + for (int y = y0; y < y1; y++) { + if (!this.hasVoxel(x, y, z1)) { + yield true; + } + } + } + + yield false; + } + case WEST -> { + for (int z = z0; z < z1; z++) { + for (int y = y0; y < y1; y++) { + if (!this.hasVoxel(x0 - 1, y, z)) { + yield true; + } + } + } + + yield false; + } + case EAST -> { + for (int z = z0; z < z1; z++) { + for (int y = y0; y < y1; y++) { + if (!this.hasVoxel(x1, y, z)) { + yield true; + } + } + } + + yield false; + } + }; + } + + private void mergeX() { + for (int y = 0; y < this.gridSize; y++) { + for (int z = 0; z < this.gridSize; z++) { + + int startX = -1; + for (int x = 0; x < this.gridSize; x++) { + final boolean set = this.grid.get(this.getGridIndex(x, y, z)); + + if (startX == -1) { + if (set) { + startX = x; + } + continue; + } + + if (set) { + continue; + } + + this.cubes.add(new Cube(startX, y, z, x - startX, 1, 1)); + startX = -1; + } + + if (startX != -1) { + this.cubes.add(new Cube(startX, y, z, this.gridSize - startX, 1, 1)); + } + } + } + } + + private void mergeZ() { + this.cubes.sort(Z_SORTER); + + int startIndex = -1; + int x = 0; + int y = 0; + int sizeX = 0; + int sizeZ = 0; + int nextZ = 0; + for (int i = 0; i < this.cubes.size(); i++) { + final Cube cube = this.cubes.get(i); + if (startIndex == -1) { + startIndex = i; + x = cube.x; + y = cube.y; + sizeX = cube.sizeX; + sizeZ = cube.sizeZ; + nextZ = cube.z + sizeZ; + continue; + } + + if (cube.sizeX == sizeX && + cube.sizeZ == sizeZ && + cube.x == x && + cube.y == y && + cube.z == nextZ) { + + // If there are more cubes, try to merge + if (i < this.cubes.size() - 1) { + nextZ += sizeZ; + continue; + } + i++; + } + + final int length = i - startIndex - 1; + if (length > 0) { + final Cube start = this.cubes.get(startIndex); + final Cube end = this.cubes.get(startIndex + length); + for (int j = 0; j <= length; j++) { + this.cubes.remove(startIndex); + } + this.cubes.add(startIndex, new Cube(start.x, + start.y, + start.z, + sizeX, + start.sizeY, + end.z - start.z + end.sizeZ)); + } + + startIndex = -1; + i -= length + 1; + } + } + + private void mergeY() { + this.cubes.sort(Y_SORTER); + + int startIndex = -1; + int x = 0; + int z = 0; + int sizeX = 0; + int sizeY = 0; + int sizeZ = 0; + int nextY = 0; + for (int i = 0; i < this.cubes.size(); i++) { + final Cube cube = this.cubes.get(i); + if (startIndex == -1) { + startIndex = i; + x = cube.x; + z = cube.z; + sizeX = cube.sizeX; + sizeY = cube.sizeY; + sizeZ = cube.sizeZ; + nextY = cube.y + sizeY; + continue; + } + + if (cube.sizeX == sizeX && + cube.sizeZ == sizeZ && + cube.x == x && + cube.y == nextY && + cube.z == z) { + + // If there are more cubes, try to merge + if (i < this.cubes.size() - 1) { + nextY += sizeY; + continue; + } + i++; + } + + final int length = i - startIndex - 1; + if (length > 0) { + final Cube start = this.cubes.get(startIndex); + final Cube end = this.cubes.get(startIndex + length); + for (int j = 0; j <= length; j++) { + this.cubes.remove(startIndex); + } + this.cubes.add(startIndex, new Cube(start.x, + start.y, + start.z, + sizeX, + end.y - start.y + end.sizeY, + sizeZ)); + } + + startIndex = -1; + i -= length + 1; + } + } + + /** + * Adds a voxel at the specified position and size. + * + * @param x The single x position + * @param y The single y position + * @param z The single z position + */ + public void add(final int x, final int y, final int z) { + this.grid.set(this.getGridIndex(x, y, z)); + } + + /** + * Converts the generated voxel grids into renderable shapes. + */ + public void build() { + this.cubes.clear(); + + this.mergeX(); + this.mergeZ(); + this.mergeY(); + } + + /** + * Converts the generated voxel grids into renderable shapes. + */ + public void buildNoGreedy() { + this.cubes.clear(); + + for (int y = 0; y < this.gridSize; y++) { + for (int z = 0; z < this.gridSize; z++) { + for (int x = 0; x < this.gridSize; x++) { + if (this.grid.get(this.getGridIndex(x, y, z))) { + this.cubes.add(new Cube(x, y, z, 1, 1, 1)); + } + } + } + } + } + + /** + * Renders all cubes into the specified consumer. + * + * @param consumer The consumer to draw cubes into + */ + public void render(@NotNull final Matrix4f matrix4f, @NotNull final VertexConsumer consumer) { + for (final Cube cube : this.cubes) { + final int x0 = cube.x; + final int y0 = cube.y; + final int z0 = cube.z; + final int x1 = cube.x + cube.sizeX; + final int y1 = cube.y + cube.sizeY; + final int z1 = cube.z + cube.sizeZ; + + if (this.shouldFaceRender(cube, Direction.NORTH)) { + consumer.addVertex(matrix4f, x0, y0, z0); + consumer.addVertex(matrix4f, x0, y1, z0); + consumer.addVertex(matrix4f, x1, y1, z0); + consumer.addVertex(matrix4f, x1, y0, z0); + } + + if (this.shouldFaceRender(cube, Direction.EAST)) { + consumer.addVertex(matrix4f, x1, y0, z0); + consumer.addVertex(matrix4f, x1, y1, z0); + consumer.addVertex(matrix4f, x1, y1, z1); + consumer.addVertex(matrix4f, x1, y0, z1); + } + + if (this.shouldFaceRender(cube, Direction.SOUTH)) { + consumer.addVertex(matrix4f, x1, y0, z1); + consumer.addVertex(matrix4f, x1, y1, z1); + consumer.addVertex(matrix4f, x0, y1, z1); + consumer.addVertex(matrix4f, x0, y0, z1); + } + + if (this.shouldFaceRender(cube, Direction.WEST)) { + consumer.addVertex(matrix4f, x0, y0, z1); + consumer.addVertex(matrix4f, x0, y1, z1); + consumer.addVertex(matrix4f, x0, y1, z0); + consumer.addVertex(matrix4f, x0, y0, z0); + } + + if (this.shouldFaceRender(cube, Direction.DOWN)) { + consumer.addVertex(matrix4f, x0, y0, z0); + consumer.addVertex(matrix4f, x1, y0, z0); + consumer.addVertex(matrix4f, x1, y0, z1); + consumer.addVertex(matrix4f, x0, y0, z1); + } + + if (this.shouldFaceRender(cube, Direction.UP)) { + consumer.addVertex(matrix4f, x0, y1, z1); + consumer.addVertex(matrix4f, x1, y1, z1); + consumer.addVertex(matrix4f, x1, y1, z0); + consumer.addVertex(matrix4f, x0, y1, z0); + } + } + } + + /** + * @return All cubes in this mesh + */ + public @NotNull List getCubes() { + return this.cubes; + } + + /** + * A single cube segment of a mesh. + * + * @param x The x-coordinate of the cube + * @param y The y-coordinate of the cube + * @param z The z-coordinate of the cube + * @param sizeX The size in the x of the cube + * @param sizeY The size in the y of the cube + * @param sizeZ The size in the z of the cube + */ + public record Cube(int x, int y, int z, int sizeX, int sizeY, int sizeZ) { + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.java b/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.java new file mode 100644 index 0000000..a16137c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.java @@ -0,0 +1,129 @@ +package dev.ryanhcode.sable.render.sky_light_shadow; + +import foundry.veil.api.client.render.shader.processor.ShaderPreProcessor; +import io.github.ocelot.glslprocessor.api.GlslInjectionPoint; +import io.github.ocelot.glslprocessor.api.GlslParser; +import io.github.ocelot.glslprocessor.api.GlslSyntaxException; +import io.github.ocelot.glslprocessor.api.node.GlslNode; +import io.github.ocelot.glslprocessor.api.node.GlslNodeList; +import io.github.ocelot.glslprocessor.api.node.GlslTree; +import io.github.ocelot.glslprocessor.api.node.expression.GlslAssignmentNode; +import io.github.ocelot.glslprocessor.api.node.expression.GlslOperationNode; +import io.github.ocelot.glslprocessor.api.node.function.GlslInvokeFunctionNode; +import io.github.ocelot.glslprocessor.api.node.variable.GlslVariableNode; +import net.minecraft.client.renderer.RenderType; + +import java.util.List; + +public class SableDynamicSkyLightShadowPreProcessor implements ShaderPreProcessor { + public static final String SAMPLER_NAME = "SableShadowSampler"; + public static final String SHADOW_VOLUME_SIZE_UNIFORM = "SableShadowVolumeSize"; + public static final String ENABLE_UNIFORM = "SableShadowsEnabled"; + public static final String SHADOW_ORIGIN_UNIFORM = "SableShadowOrigin"; + + @Override + public void modify(final Context ctx, final GlslTree tree) throws GlslSyntaxException { + if (!SableSkyLightShadows.isEnabled()) { + return; + } + + if (!ctx.isSourceFile()) { + return; + } + + if (ctx instanceof final MinecraftContext minecraftContext) { + final List renderTypes = RenderType.chunkBufferLayers(); + + boolean anyMatches = false; + + for (final RenderType renderType : renderTypes) { + if (ctx.isVertex() && minecraftContext.shaderInstance().equals("rendertype_%s".formatted(renderType.name))) { + anyMatches = true; + } + } + + if (!anyMatches) { + return; + } + } else { + return; + } + + final GlslNodeList mainFunctionBody = tree.mainFunction().orElseThrow().getBody(); + assert mainFunctionBody != null; + + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform sampler2D %s;".formatted(SAMPLER_NAME))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform float %s;".formatted(SHADOW_VOLUME_SIZE_UNIFORM))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform float %s;".formatted(ENABLE_UNIFORM))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform vec3 %s;".formatted(SHADOW_ORIGIN_UNIFORM))); + + for (int i = 0; i < mainFunctionBody.size(); i++) { + final GlslNode node = mainFunctionBody.get(i); + + if (node instanceof final GlslAssignmentNode assignmentNode && assignmentNode.getOperand() == GlslAssignmentNode.Operand.EQUAL) { + // We can be for sure it's an assignment. Now let's check that it's calling + // minecraft_sample_lightmap + final GlslNode second = assignmentNode.getSecond(); + + if (second instanceof final GlslOperationNode operationNode && operationNode.getOperand() == GlslOperationNode.Operand.MULTIPLY) { +// Sable.LOGGER.info("Found a multiply operation ", operationNode); + + if (operationNode.getSecond() instanceof final GlslInvokeFunctionNode invokeNode && invokeNode.getHeader() instanceof final GlslVariableNode variableNode && variableNode.getName().equals("minecraft_sample_lightmap")) { + final List replacementNodes = GlslParser.parseExpressionList(""" + + float skyLightScale; + if (%s > 0.0) { + float volumeSize = %s; + vec3 shadowOrigin = %s; + vec2 shadowUv = ((pos.xz - shadowOrigin.xz) * vec2(1.0, -1.0) + volumeSize) / (volumeSize * 2.0); + + float sampleAverage = 0.0; + int sampleRadius = 3; + float spacing = 1.0; + + for (int i = -sampleRadius; i <= sampleRadius; i++) { + for (int j = -sampleRadius; j <= sampleRadius; j++) { + float depthSample = texture(%s, shadowUv + vec2(i, j) * spacing / (volumeSize * 2.0)).r; + + // TODO: Pass shadow near plane in + float depth = 0.5 + depthSample * (volumeSize - 0.5); + + float y = shadowOrigin.y - depth; + + // pos = Position + ChunkOffset; + // pos.y = y; + // gl_Position = ProjMat * ModelViewMat * vec4(pos, 1.0); + + if (y >= pos.y) { + float strength = max(min((y - pos.y - 2.0) / 15.0, 1.0), 0.0); + float scale = (i + j) / float(sampleRadius); + sampleAverage += max(1.0 - scale, 0.0) * 0.6 * strength; + } + } + } + + sampleAverage /= float((sampleRadius * 2 + 1) * (sampleRadius * 2 + 1)); + skyLightScale = smoothstep(0.0, 1.0, 1.0 - sampleAverage); + } else { + skyLightScale = 1.0; + } + + vec2 sableLightModification = vec2(1.0, skyLightScale); + + vertexColor = Color * minecraft_sample_lightmap(Sampler2, ivec2(UV2 * sableLightModification)); + + """.formatted(ENABLE_UNIFORM, SHADOW_VOLUME_SIZE_UNIFORM, SHADOW_ORIGIN_UNIFORM, SAMPLER_NAME)); + + mainFunctionBody.set(i, replacementNodes.get(0)); + + for (int j = 1; j < replacementNodes.size(); j++) { + mainFunctionBody.add(i + j, replacementNodes.get(j)); + } + + break; + } + } + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.java b/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.java new file mode 100644 index 0000000..a53f3ab --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.java @@ -0,0 +1,114 @@ +package dev.ryanhcode.sable.render.sky_light_shadow; + +import com.mojang.blaze3d.platform.Window; +import com.mojang.blaze3d.shaders.Uniform; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import foundry.veil.api.client.render.MatrixStack; +import foundry.veil.api.client.render.VeilLevelPerspectiveRenderer; +import foundry.veil.api.client.render.VeilRenderSystem; +import foundry.veil.api.client.render.framebuffer.AdvancedFbo; +import foundry.veil.api.event.VeilRenderLevelStageEvent; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; +import org.joml.Matrix4fc; +import org.joml.Quaternionf; +import org.joml.Vector3d; +import org.lwjgl.opengl.GL30; + +public class SableSkyLightShadows { + + public static final float SHADOW_VOLUME_SIZE = 256f / 2f; + + private static final ResourceLocation FRAMEBUFFER_NAME = Sable.sablePath("sub_level_shadow"); + private static final Matrix4f PROJECTION_MAT = new Matrix4f(); + private static final Vector3d SHADOW_CAMERA_POSITION = new Vector3d(); + private static final Quaternionf SHADOW_CAMERA_ORIENTATION = new Quaternionf(); + + private static boolean isRenderingShadowMap = false; + private static boolean isEnabled = false; + + public static boolean isEnabled() { + return isEnabled; + } + + public static void setIsEnabled(final boolean isEnabled) { + SableSkyLightShadows.isEnabled = isEnabled; + } + + public static void renderShadowMap(final VeilRenderLevelStageEvent.Stage stage, final LevelRenderer levelRenderer, final MultiBufferSource.BufferSource bufferSource, final MatrixStack matrixStack, final Matrix4fc frustumMatrix, final Matrix4fc projectionMatrix, final int renderTick, final DeltaTracker deltaTracker, final Camera camera, final Frustum frustum) { + if (!SableSkyLightShadows.isEnabled()) { + return; + } + if (VeilLevelPerspectiveRenderer.isRenderingPerspective()) { + return; + } + if (stage != VeilRenderLevelStageEvent.Stage.AFTER_LEVEL) { + return; + } + + final AdvancedFbo fbo = getShadowsFramebuffer(); + + + if (fbo != null) { + fbo.bind(true); + GL30.glClearColor(1.0f, 1.0f, 1.0f, 0.0f); + fbo.clear(); + + final Minecraft client = Minecraft.getInstance(); + final Level level = client.level; + final Window window = client.getWindow(); + + final Matrix4f modelView = new Matrix4f(); + PROJECTION_MAT.identity().ortho(-SHADOW_VOLUME_SIZE, SHADOW_VOLUME_SIZE, -SHADOW_VOLUME_SIZE, SHADOW_VOLUME_SIZE, 0.5f, SHADOW_VOLUME_SIZE); + + // account for the smaller screen size + final Vec3 cameraPosition = camera.getPosition(); + final Vec3 shadowCameraPosition = new Vec3(cameraPosition.x, cameraPosition.y + SHADOW_VOLUME_SIZE / 2.0f, cameraPosition.z); + + JOMLConversion.toJOML(shadowCameraPosition, SHADOW_CAMERA_POSITION); + SHADOW_CAMERA_POSITION.set(Math.floor(SHADOW_CAMERA_POSITION.x), SHADOW_CAMERA_POSITION.y, Math.floor(SHADOW_CAMERA_POSITION.z)); + isRenderingShadowMap = true; + VeilLevelPerspectiveRenderer.render(fbo, modelView, PROJECTION_MAT, SHADOW_CAMERA_POSITION, SHADOW_CAMERA_ORIENTATION.identity().rotateX((float) (Math.PI / 2)), SHADOW_VOLUME_SIZE / 16f, deltaTracker, false); + isRenderingShadowMap = false; + } + } + + public static @Nullable AdvancedFbo getShadowsFramebuffer() { + return VeilRenderSystem.renderer().getFramebufferManager().getFramebuffer(FRAMEBUFFER_NAME); + } + + public static boolean renderingShadowMap() { + return isRenderingShadowMap; + } + + public static void bindShadowMapTexture(final ShaderInstance shader) { + if (!SableSkyLightShadows.isEnabled()) { + return; + } + + final Uniform volumeSizeUniform = shader.getUniform(SableDynamicSkyLightShadowPreProcessor.SHADOW_VOLUME_SIZE_UNIFORM); + if (volumeSizeUniform != null) { + volumeSizeUniform.set(SableSkyLightShadows.SHADOW_VOLUME_SIZE); + } + + final Uniform offsetUniform = shader.getUniform(SableDynamicSkyLightShadowPreProcessor.SHADOW_ORIGIN_UNIFORM); + if (offsetUniform != null) { + final Vec3 camera = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + offsetUniform.set((float) (SHADOW_CAMERA_POSITION.x - camera.x), (float) (SHADOW_CAMERA_POSITION.y - camera.y), (float) (SHADOW_CAMERA_POSITION.z - camera.z)); + } + + final AdvancedFbo fbo = getShadowsFramebuffer(); + shader.setSampler(SableDynamicSkyLightShadowPreProcessor.SAMPLER_NAME, fbo.getDepthTextureAttachment()); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.java b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.java new file mode 100644 index 0000000..83f2ac6 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.render.water_occlusion; + +import foundry.veil.api.client.render.shader.processor.ShaderPreProcessor; +import io.github.ocelot.glslprocessor.api.GlslInjectionPoint; +import io.github.ocelot.glslprocessor.api.GlslParser; +import io.github.ocelot.glslprocessor.api.GlslSyntaxException; +import io.github.ocelot.glslprocessor.api.node.GlslNodeList; +import io.github.ocelot.glslprocessor.api.node.GlslTree; + +public class SableWaterOcclusionPreProcessor implements ShaderPreProcessor { + public static final String CLOSE_SAMPLER_NAME = "SableCloseSampler"; + public static final String FAR_SAMPLER_NAME = "SableFarSampler"; + public static final String ENABLE_UNIFORM = "SableWaterOcclusionEnabled"; + + @Override + public void modify(final Context ctx, final GlslTree tree) throws GlslSyntaxException { + if (!WaterOcclusionRenderer.isEnabled()) { + return; + } + + if (!ctx.isSourceFile()) { + return; + } + + if (!(ctx instanceof final MinecraftContext minecraftContext)) { + return; + } + + if (!ctx.isFragment() || !minecraftContext.shaderInstance().equals("rendertype_translucent")) { + return; + } + + final GlslNodeList mainFunctionBody = tree.mainFunction().orElseThrow().getBody(); + assert mainFunctionBody != null; + + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform vec2 %s;".formatted("ScreenSize"))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform sampler2D %s;".formatted(CLOSE_SAMPLER_NAME))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform sampler2D %s;".formatted(FAR_SAMPLER_NAME))); + tree.getBody().add(GlslInjectionPoint.BEFORE_MAIN, GlslParser.parseExpression("uniform float %s;".formatted(ENABLE_UNIFORM))); + + mainFunctionBody.add(1, GlslParser.parseExpression(""" + if(%s > 0.0) { + float closeDepth = texture(%s, gl_FragCoord.xy / ScreenSize).r; + float farDepth = texture(%s, gl_FragCoord.xy / ScreenSize).r; + float waterDepth = gl_FragCoord.z; + if (waterDepth > closeDepth && waterDepth < farDepth) { discard; } + } + """.formatted(ENABLE_UNIFORM, CLOSE_SAMPLER_NAME, FAR_SAMPLER_NAME).trim())); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.java b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.java new file mode 100644 index 0000000..ba6c343 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.render.water_occlusion; + +import com.mojang.blaze3d.vertex.DefaultVertexFormat; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.ryanhcode.sable.render.region.SimpleCulledRenderRegion; +import dev.ryanhcode.sable.render.region.SimpleCulledRenderRegionBuilder; +import net.minecraft.core.BlockPos; + +import java.util.Collection; + +public class WaterOcclusionRenderRegion extends SimpleCulledRenderRegion { + public WaterOcclusionRenderRegion(final Collection blocks) { + super(blocks); + } + + @Override + public SimpleCulledRenderRegionBuilder createMeshBuilder(final int gridSize) { + return new SimpleCulledRenderRegionBuilder(gridSize); + } + + @Override + public VertexFormat getVertexFormat() { + return DefaultVertexFormat.POSITION; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.java b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.java new file mode 100644 index 0000000..14a9568 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.java @@ -0,0 +1,175 @@ +package dev.ryanhcode.sable.render.water_occlusion; + +import com.mojang.blaze3d.pipeline.RenderTarget; +import com.mojang.blaze3d.platform.Window; +import com.mojang.blaze3d.shaders.Uniform; +import com.mojang.blaze3d.systems.RenderSystem; +import dev.ryanhcode.sable.render.region.SimpleCulledRenderRegion; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import foundry.veil.api.client.render.framebuffer.AdvancedFbo; +import foundry.veil.api.client.render.shader.program.ShaderProgram; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.GameRenderer; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4f; + +import java.util.Collection; +import java.util.Set; + +import static org.lwjgl.opengl.GL11C.*; +import static org.lwjgl.opengl.GL32C.GL_DEPTH_CLAMP; + +/** + * Manages water occlusion rendering for sub-levels + */ +@ApiStatus.Internal +public class WaterOcclusionRenderer { + private final Set regions = new ObjectOpenHashSet<>(); + private AdvancedFbo closeBuffer; + private AdvancedFbo farBuffer; + private Level level; + + private static boolean isEnabled = false; + + public static boolean isEnabled() { + return isEnabled; + } + + public static void setIsEnabled(final boolean isEnabled) { + WaterOcclusionRenderer.isEnabled = isEnabled; + } + + @Nullable + @ApiStatus.Internal + public SimpleCulledRenderRegion addRegion(final Collection blocks) { + if (blocks.isEmpty()) { + return null; + } + + final SimpleCulledRenderRegion region = new WaterOcclusionRenderRegion(blocks); + this.regions.add(region); + return region; + } + + public void removeRegion(final SimpleCulledRenderRegion region) { + region.free(); + this.regions.remove(region); + } + + private void updateFramebuffers(final boolean needed) { + final Minecraft minecraft = Minecraft.getInstance(); + final RenderTarget renderTarget = minecraft.getMainRenderTarget(); + + if (!needed && this.closeBuffer != null) { + this.closeBuffer.free(); + this.farBuffer.free(); + this.closeBuffer = null; + this.farBuffer = null; + } + + if (needed && (this.closeBuffer == null || renderTarget.width != this.closeBuffer.getWidth() || renderTarget.height != this.farBuffer.getHeight())) { + if (this.closeBuffer != null) { + this.closeBuffer.free(); + this.farBuffer.free(); + } + + this.closeBuffer = AdvancedFbo.withSize(renderTarget.width, renderTarget.height).addColorTextureBuffer().setDepthTextureBuffer().build(true); + this.farBuffer = AdvancedFbo.withSize(renderTarget.width, renderTarget.height).addColorTextureBuffer().setDepthTextureBuffer().build(true); + } + } + + public void preRenderTranslucent(final Matrix4f modelView, final Matrix4f projMat) { + if (!isEnabled()) { + return; + } + + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(this.level); + final boolean needed = !this.regions.isEmpty() || container == null; + + this.updateFramebuffers(needed); + + if (!needed) { + return; + } + + final Vec3 cameraPos = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + + this.closeBuffer.bind(true); + + // if we're inside any of the regions, we need to clear the depth to 0 + final boolean cameraOccluded = container.isOccluded(cameraPos); + + RenderSystem.enableDepthTest(); + RenderSystem.depthMask(true); + RenderSystem.setShaderColor(1.0f, 1.0f, 1.0f, 1.0f); + RenderSystem.setShader(GameRenderer::getPositionShader); + + glEnable(GL_DEPTH_CLAMP); + this.closeBuffer.clear(0.0F, 0.0F, 0.0F, 0.0F, cameraOccluded ? 0.0F : 1.0F, this.closeBuffer.getClearMask()); + glCullFace(GL_BACK); + + for (final SimpleCulledRenderRegion region : this.regions) { + region.render(modelView, projMat); + } + AdvancedFbo.unbind(); + + this.farBuffer.bind(true); + this.farBuffer.clear(); + glCullFace(GL_FRONT); + + for (final SimpleCulledRenderRegion region : this.regions) { + region.render(modelView, projMat); + } + AdvancedFbo.unbind(); + + // reset state + glCullFace(GL_BACK); + glDisable(GL_DEPTH_CLAMP); + ShaderProgram.unbind(); + } + + public void setupTranslucentShader(final ShaderInstance shader) { + if (!isEnabled()) { + return; + } + + final Uniform uniform = shader.getUniform(SableWaterOcclusionPreProcessor.ENABLE_UNIFORM); + + if (this.closeBuffer == null) { + if (uniform != null) { + uniform.set(0.0F); + } + return; + } + + final Window window = Minecraft.getInstance().getWindow(); + final Uniform screenSize = shader.getUniform("ScreenSize"); + if (screenSize != null) { + screenSize.set((float) window.getWidth(), (float) window.getHeight()); + } + if (uniform != null) { + uniform.set(1.0F); + } + + shader.setSampler(SableWaterOcclusionPreProcessor.CLOSE_SAMPLER_NAME, this.closeBuffer.getDepthTextureAttachment()); + shader.setSampler(SableWaterOcclusionPreProcessor.FAR_SAMPLER_NAME, this.farBuffer.getDepthTextureAttachment()); + } + + public void update() { + final Minecraft minecraft = Minecraft.getInstance(); + + if (minecraft.level != this.level) { + this.level = minecraft.level; + + this.regions.forEach(SimpleCulledRenderRegion::free); + this.regions.clear(); + } + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.java b/common/src/main/java/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.java new file mode 100644 index 0000000..f1c74a1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.java @@ -0,0 +1,174 @@ +package dev.ryanhcode.sable.sound; + +import com.mojang.blaze3d.audio.Channel; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixin.sublevel_sounds.ChannelAccessor; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.resources.sounds.Sound; +import net.minecraft.client.resources.sounds.SoundInstance; +import net.minecraft.client.resources.sounds.TickableSoundInstance; +import net.minecraft.client.sounds.SoundManager; +import net.minecraft.client.sounds.WeighedSoundEvents; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.sounds.SoundSource; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3d; + +import static org.lwjgl.openal.AL11.*; + +/** + * A moving sound instance that delegates to another sound instance for the sound data + */ +public class MovingSoundInstanceDelegate implements SoundInstance, TickableSoundInstance { + + private SubLevel subLevel; + private double latestX, latestY, latestZ; + public SoundInstance instance; + + public MovingSoundInstanceDelegate(final SoundInstance instance, final SubLevel subLevel) { + this.instance = instance; + this.subLevel = subLevel; + + if (this.instance instanceof SoundInstanceDelegated) { + ((SoundInstanceDelegated) this.instance).setDelegate(this); + } + } + + /** + * Ticks and updates the velocity of the sound source + * + * @param channel The channel to update + */ + public void tickWithChannel(final Channel channel) { + final int source = ((ChannelAccessor) channel).getSource(); + + if (this.subLevel != null && this.subLevel.isRemoved()) this.subLevel = null; + if (this.subLevel == null) { + alSource3f(source, AL_VELOCITY, 0, 0, 0); + return; + } + + final Vector3d instancePos = new Vector3d(this.instance.getX(), this.instance.getY(), this.instance.getZ()); + final Vector3d motion = Sable.HELPER.getVelocity(Minecraft.getInstance().level, instancePos); + final Entity player = Minecraft.getInstance().getCameraEntity(); + + if (player == null) { + alSource3f(source, AL_VELOCITY, 0, 0, 0); + return; + } + + final Vector3d playerPosition = JOMLConversion.toJOML(player.position()); + final Vector3d playerMotion = playerPosition.sub(player.xo, player.yo, player.zo).mul(20.0); // 20 ticks per second + + alSpeedOfSound(1800.0F); + alDopplerFactor(0.4F); + + alSource3f(source, AL_VELOCITY, + (float) (motion.x - playerMotion.x), + (float) (motion.y - playerMotion.y), + (float) (motion.z - playerMotion.z)); + } + + public void unload(final Channel channel) { + alSource3f(((ChannelAccessor) channel).getSource(), AL_VELOCITY, 0, 0, 0); + } + + @Override + public @NotNull ResourceLocation getLocation() { + return this.instance.getLocation(); + } + + @Override + public WeighedSoundEvents resolve(final SoundManager pManager) { + return this.instance.resolve(pManager); + } + + @Override + public @NotNull Sound getSound() { + return this.instance.getSound(); + } + + @Override + public @NotNull SoundSource getSource() { + return this.instance.getSource(); + } + + @Override + public boolean isLooping() { + return this.instance.isLooping(); + } + + @Override + public boolean isRelative() { + return this.instance.isRelative(); + } + + @Override + public int getDelay() { + return this.instance.getDelay(); + } + + @Override + public float getVolume() { + return this.instance.getVolume(); + } + + @Override + public float getPitch() { + return this.instance.getPitch(); + } + + @Override + public double getX() { + if (this.subLevel == null) return this.latestX; + return this.latestX = this.subLevel.logicalPose().transformPosition(new Vec3(this.instance.getX(), this.instance.getY(), this.instance.getZ())).x; + } + + @Override + public double getY() { + if (this.subLevel == null) return this.latestY; + return this.latestY = this.subLevel.logicalPose().transformPosition(new Vec3(this.instance.getX(), this.instance.getY(), this.instance.getZ())).y; + } + + @Override + public double getZ() { + if (this.subLevel == null) return this.latestZ; + return this.latestZ = this.subLevel.logicalPose().transformPosition(new Vec3(this.instance.getX(), this.instance.getY(), this.instance.getZ())).z; + } + + @Override + public boolean canStartSilent() { + return this.instance.canStartSilent(); + } + + @Override + public boolean canPlaySound() { + return this.instance.canPlaySound(); + } + + @Override + public Attenuation getAttenuation() { + return this.instance.getAttenuation(); + } + + @Override + public boolean isStopped() { + if (this.instance instanceof final TickableSoundInstance tickable) { + return tickable.isStopped(); + } + + return !this.instance.canPlaySound(); + } + + @Override + public void tick() { + if (this.instance instanceof final TickableSoundInstance tickable) { + tickable.tick(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sound/SoundInstanceDelegated.java b/common/src/main/java/dev/ryanhcode/sable/sound/SoundInstanceDelegated.java new file mode 100644 index 0000000..af5b58e --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sound/SoundInstanceDelegated.java @@ -0,0 +1,12 @@ +package dev.ryanhcode.sable.sound; + +/** + * Stores the parent delegate for a delegated {@link net.minecraft.client.resources.sounds.SoundInstance} + */ +public interface SoundInstanceDelegated { + + MovingSoundInstanceDelegate getDelegate(); + + void setDelegate(MovingSoundInstanceDelegate delegate); + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/ClientSubLevel.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/ClientSubLevel.java new file mode 100644 index 0000000..c0fc0c8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/ClientSubLevel.java @@ -0,0 +1,377 @@ +package dev.ryanhcode.sable.sublevel; + +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.ClientSubLevelAccess; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.network.client.ClientSableInterpolationState; +import dev.ryanhcode.sable.network.client.SubLevelSnapshotInterpolator; +import dev.ryanhcode.sable.sublevel.plot.ClientLevelPlot; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import net.minecraft.CrashReport; +import net.minecraft.CrashReportCategory; +import net.minecraft.ReportedException; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LightLayer; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +/** + * A sub-level in a {@link net.minecraft.client.multiplayer.ClientLevel} + */ +public class ClientSubLevel extends SubLevel implements ClientSubLevelAccess { + + /** + * The renderer for this sub-level + */ + private SubLevelRenderData renderData; + + /** + * The latest networked velocity received from the server [m/s] + */ + private final Vector3d latestNetworkedVelocity = new Vector3d(); + + /** + * The latest networked angular velocity received from the server [rad/s] + */ + private final Vector3d latestNetworkedAngularVelocity = new Vector3d(); + + /** + * Storage pose for the current frame render pose + */ + private final Pose3d renderPose = new Pose3d(); + + /** + * The interpolation buffer for the latest server snapshots + */ + private final SubLevelSnapshotInterpolator interpolator; + /** + * Storage for swept bounds to not instantiate new bounding boxes for every {@link ClientSubLevel#boundingBox()} call + */ + private final BoundingBox3d sweptBounds = new BoundingBox3d(); + /** + * Last center of the bounds used for sky light calculation + */ + private final Vector3d lastBoundsCenter = new Vector3d(); + + /** + * Latest sub-level sky light scaling + */ + private int latestSkyLightScale = -1; + + /** + * Last partial tick used for rendering interpolation + */ + private float lastRenderPosePartialTick = -1; + + /** + * Flywheel lighting scene ID + */ + private int lightingSceneId = -1; + + /** + * If we've received all initial data regarding this sub-level from the server (all chunks, bounds, data, etc.) + */ + private boolean finalized = false; + + /** + * Creates a new sub-level with the given parent level and pose. + * + * @param level the parent level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param pose the initialization pose of the sub-level + */ + public ClientSubLevel(final Level level, final int plotX, final int plotY, final Pose3d pose) { + super(level, plotX, plotY, pose); + + this.logicalPose().set(pose); + this.interpolator = new SubLevelSnapshotInterpolator(pose); + } + + /** + * Creates the plot for this sub-level. + * + * @param plotContainer the parent plot container of this sub-level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param logPlotSize the log_2 of the side length of a plot, in chunks + * @return a new {@link LevelPlot} instance for this sub-level + */ + @Override + protected LevelPlot createPlot(final SubLevelContainer plotContainer, final int plotX, final int plotY, final int logPlotSize) { + return new ClientLevelPlot(plotContainer, plotX, plotY, plotContainer.getLogPlotSize(), this); + } + + /** + * Ticks this sub-level, updating the global bounding box and components. + */ + @Override + public void tick() { + this.updateLastPose(); + super.tick(); + + this.lastRenderPosePartialTick = -1.0f; + final Pose3d logicalPose = this.logicalPose(); + + final ClientSubLevelContainer container = ClientSubLevelContainer.getContainer(this.getLevel()); + assert container != null; + this.interpolator.tick(container.getInterpolation().getTickPointer()); + final Pose3dc interpolatedPose = this.interpolator.getInterpolatedPose(); + + logicalPose.set(interpolatedPose); + + this.updateBoundingBox(); + + if (this.lastGlobalBounds.minX == 0 && this.lastGlobalBounds.maxX == 0) { + // we can assume that we don't have a last bounds yet + this.sweptBounds.set(this.globalBounds); + } else { + this.sweptBounds.set(this.lastGlobalBounds).expandTo(this.globalBounds, this.sweptBounds); + } + + this.latestSkyLightScale = this.computeSubLevelSkyLight(this.logicalPose()); + } + + public void forceUpdateBounds() { + this.updateBoundingBox(); + this.lastGlobalBounds.set(this.globalBounds); + this.sweptBounds.set(this.globalBounds); + } + + /** + * Scales a sky light value by this sub-level sky light scale + */ + public int scaleSkyLight(final int skyLight) { + return (int) (skyLight * (this.getLatestSkyLightScale() / 15.0f)); + } + + /** + * Scales a light color value by this sub-level sky light scale + */ + public int scaleLightColor(int lightColor) { + final int skyLightScale = this.getLatestSkyLightScale(); + + final int newSkyLight = (int) ((lightColor >> 20) * (skyLightScale / 15.0f)); + lightColor = (lightColor & 0xfffff) | (newSkyLight << 20); + + return lightColor; + } + + /** + * @return the latest computed sky-light scaling of the sub-level + */ + public int getLatestSkyLightScale() { + if (this.latestSkyLightScale == -1) { + this.latestSkyLightScale = this.computeSubLevelSkyLight(this.logicalPose()); + } + return this.latestSkyLightScale; + } + + /** + * Computes the sky-light scaling of this sub-level + */ + public int computeSubLevelSkyLight(final Pose3dc pose) { + final Vector3dc pos = pose.position(); + final ClientLevel level = this.getLevel(); + + if (this.boundingBox().volume() < 9) { + int skyLight = level.getBrightness(LightLayer.SKY, BlockPos.containing(pos.x(), pos.y(), pos.z())); + + if (skyLight == 0) + skyLight = level.getBrightness(LightLayer.SKY, BlockPos.containing(pos.x(), pos.y() + 1, pos.z())); + + if (skyLight == 0) + skyLight = level.getBrightness(LightLayer.SKY, BlockPos.containing(pos.x(), pos.y() - 1, pos.z())); + + return skyLight; + } + + final BoundingBox3dc box = this.boundingBox(); + final Vector3dc center = box.center(this.lastBoundsCenter); + final double xMin = box.minX(); + final double xMax = box.maxX(); + final double zMin = box.minZ(); + final double zMax = box.maxZ(); + + int maxLight = 0; + + final double sampleY = center.y() + 0.1; + maxLight = Math.max(maxLight, level.getBrightness(LightLayer.SKY, BlockPos.containing(center.x(), sampleY, center.z()))); + + maxLight = Math.max(maxLight, level.getBrightness(LightLayer.SKY, BlockPos.containing(xMin, sampleY, zMin))); + maxLight = Math.max(maxLight, level.getBrightness(LightLayer.SKY, BlockPos.containing(xMax, sampleY, zMin))); + maxLight = Math.max(maxLight, level.getBrightness(LightLayer.SKY, BlockPos.containing(xMin, sampleY, zMax))); + maxLight = Math.max(maxLight, level.getBrightness(LightLayer.SKY, BlockPos.containing(xMax, sampleY, zMax))); + + return maxLight; + } + + /** + * @return the global bounding box of this sub-level + */ + @Override + public BoundingBox3dc boundingBox() { + return this.sweptBounds; + } + + /** + * Called when the bounds of the inner plot have changed. + */ + @Override + public void onPlotBoundsChanged() { + this.renderData = SubLevelRenderDispatcher.get().resize(this, this.renderData); + } + + @Override + public void onRemove() { + if (this.lightingSceneId != -1) { + SubLevelContainer.getContainer(this.getLevel()) + .freeLightingScene(this.lightingSceneId); + this.lightingSceneId = -1; + } + + super.onRemove(); + this.renderData.close(); + } + + /** + * Re-creates the render data using the current renderer. + */ + public void updateRenderData() { + try { + if (this.renderData != null) { + this.renderData.close(); + } + this.renderData = SubLevelRenderDispatcher.get().createRenderData(this); + } catch (final Throwable t) { + final CrashReport crashreport = CrashReport.forThrowable(t, "Updating render data"); + final CrashReportCategory crashreportcategory = crashreport.addCategory("Render Dispatcher"); + crashreportcategory.setDetail("Class", () -> SubLevelRenderDispatcher.get().getClass().getName()); + throw new ReportedException(crashreport); + } + } + + /** + * @return the renderer for this sub-level + */ + public SubLevelRenderData getRenderData() { + return this.renderData; + } + + @Override + public ClientLevel getLevel() { + return (ClientLevel) super.getLevel(); + } + + /** + * @return the plot containing the contents of this sub-level + */ + @Override + public ClientLevelPlot getPlot() { + return (ClientLevelPlot) super.getPlot(); + } + + @ApiStatus.Internal + public void setLightingSceneId(final int lightingSceneId) { + this.lightingSceneId = lightingSceneId; + } + + @ApiStatus.Internal + public int getLightingSceneId() { + return this.lightingSceneId; + } + + /** + * @return the pose for rendering with the current partialtick + */ + @Override + public Pose3dc renderPose() { + final float pt = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + + if (this.lastRenderPosePartialTick == pt) { + this.lastRenderPosePartialTick = pt; + return this.renderPose; + } + + return this.renderPose(pt); + } + + /** + * @return the pose for rendering with a given partialtick + */ + @Override + public Pose3dc renderPose(final float pt) { + if (this.lastRenderPosePartialTick == pt) { + this.lastRenderPosePartialTick = pt; + return this.renderPose; + } + + final Pose3d renderPose = this.renderPose.set(this.lastPose()); + final Pose3d target = this.logicalPose(); + + renderPose.position().lerp(target.position(), pt); + renderPose.orientation().slerp(target.orientation(), pt); + renderPose.rotationPoint().lerp(target.rotationPoint(), pt); + renderPose.scale().lerp(target.scale(), pt); + + return renderPose; + } + + public void receiveServerMovementStop() { + this.latestNetworkedVelocity.zero(); + this.latestNetworkedAngularVelocity.zero(); + this.interpolator.receiveStop(); + } + + @ApiStatus.Internal + public void wasSplitFrom(final ClientSableInterpolationState state, @NotNull final ClientSubLevel splitFrom, @NotNull final Pose3dc pose) { + final SubLevelSnapshotInterpolator otherInterpolator = splitFrom.getInterpolator(); + + this.interpolator.splitFrom(otherInterpolator, pose); + + this.setInitialPosesFrom(state); + } + + @ApiStatus.Internal + public void setInitialPosesFrom(final ClientSableInterpolationState state) { + if (!state.isStopped()) { + this.interpolator.getSampleAt(state.mostRecentInterpolationTick, this.logicalPose()); + this.interpolator.getSampleAt(state.lastInterpolationTick, this.lastPose); + } + } + + public SubLevelSnapshotInterpolator getInterpolator() { + return this.interpolator; + } + + @Override + public String toString() { + return "ClientSubLevel" + super.toString(); + } + + /** + * Sets this sub-level as finalized. This means we've received all initial data regarding this sub-level from the + * server. + */ + public void setFinalized() { + this.finalized = true; + } + + /** + * If we've received all initial data regarding this sub-level from the server (all chunks, bounds, data, etc.) + */ + public boolean isFinalized() { + return this.finalized; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/ServerSubLevel.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/ServerSubLevel.java new file mode 100644 index 0000000..ed65bf1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/ServerSubLevel.java @@ -0,0 +1,566 @@ +package dev.ryanhcode.sable.sublevel; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.block.BlockSubLevelLiftProvider; +import dev.ryanhcode.sable.api.physics.PhysicsPipelineBody; +import dev.ryanhcode.sable.api.physics.force.ForceGroup; +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.physics.force.QueuedForceGroup; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.api.physics.mass.MergedMassTracker; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.network.packets.tcp.ClientboundChangeSubLevelNamePacket; +import dev.ryanhcode.sable.physics.ReactionWheelManager; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockController; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.ServerLevelPlot; +import dev.ryanhcode.sable.sublevel.plot.heat.SubLevelHeatMapManager; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.LevelAccelerator; +import foundry.veil.api.network.VeilPacketManager; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectCollection; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.*; + +/** + * A sub-level in a {@link ServerLevel} + */ +public class ServerSubLevel extends SubLevel implements PhysicsPipelineBody { + + /** + * The latest linear velocity of this sub-level + */ + @ApiStatus.Internal + public final Vector3d latestLinearVelocity = new Vector3d(); + + /** + * The latest angular velocity of this sub-level + */ + @ApiStatus.Internal + public final Vector3d latestAngularVelocity = new Vector3d(); + + /** + * All players currently tracking this sub-level + */ + private final Set trackingPlayers = new ObjectOpenHashSet<>(); + + /** + * The last pose sent out to players + */ + private final Pose3d lastNetworkedPose = new Pose3d(); + + /** + * The last plot bounding box sent out to players + */ + private final BoundingBox3i lastNetworkedBoundingBox = new BoundingBox3i(); + + /** + * The runtime ID of this sub-level + */ + private final int runtimeId; + + /** + * The manager for the heatmap of this sub-level + */ + private final SubLevelHeatMapManager heatMapManager = new SubLevelHeatMapManager(this); + /** + * The floating block controller for this sub-level + */ + private final FloatingBlockController floatingBlockController = new FloatingBlockController(this); + + private final ReactionWheelManager reactionWheelManager = new ReactionWheelManager(this); + /** + * Nullable lazy map of force group -> force totals + */ + @Nullable + private Object2ObjectMap queuedForceGroups = null; + /** + * The merged mass tracker for this sub-level (including merged masses from subcontraptions) + */ + private MergedMassTracker massTracker; + /** + * The last stopped status sent out to players (if the sub-level is standing still) + */ + private boolean lastNetworkedStopped = false; + /** + * The sub-level that this was split from, if any. + */ + @Nullable + private UUID splitFromSubLevel = null; + /** + * The original pose of the sub-level before it was projected out of the containing sub-level. + */ + @Nullable + private Pose3d splitFromPose = null; + /** + * The last place this sub-level was saved to + */ + @ApiStatus.Internal + private GlobalSavedSubLevelPointer lastSerializationPointer = null; + /** + * The user data tag, if any exists. + * This tag will be serialized & stored with the sub-level + */ + @Nullable + private CompoundTag userDataTag; + /** + * If individual queued forces should be kept track of + */ + private boolean trackIndividualQueuedForces = false; + + /** + * Creates a new sub-level with the given parent level and pose. + * + * @param level the parent level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param pose the initialization pose of the sub-level + */ + public ServerSubLevel(final ServerLevel level, final int plotX, final int plotY, final Pose3d pose) { + super(level, plotX, plotY, pose); + + final SubLevelPhysicsSystem physicsSystem = SubLevelPhysicsSystem.get(level); + + assert physicsSystem != null; + this.runtimeId = physicsSystem.getNextRuntimeID(); + } + + /** + * @return all uuids of players currently tracking this sub-level + */ + public Collection getTrackingPlayers() { + return this.trackingPlayers; + } + + /** + * @return packet sink for all players currently tracking this sub-level + */ + public VeilPacketManager.PacketSink playerSink() { + return packet -> { + for (final UUID uuid : this.trackingPlayers) { + final ServerPlayer player = (ServerPlayer) this.getLevel().getPlayerByUUID(uuid); + if (player instanceof ServerPlayer) { + player.connection.send(packet); + } + } + }; + } + + /** + * @return the last pose sent out to players + */ + public Pose3d lastNetworkedPose() { + return this.lastNetworkedPose; + } + + /** + * @return the last plot bounding box sent out to players + */ + public BoundingBox3i lastNetworkedBoundingBox() { + return this.lastNetworkedBoundingBox; + } + + /** + * The unique runtime ID of this sub-level + * + * @return the runtime ID + */ + @Override + public int getRuntimeId() { + return this.runtimeId; + } + + /** + * Creates the plot for this sub-level. + * + * @param plotContainer the parent plot container of this sub-level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param logPlotSize the log_2 of the side length of a plot, in chunks + * @return a new {@link LevelPlot} instance for this sub-level + */ + @Override + protected LevelPlot createPlot(final SubLevelContainer plotContainer, final int plotX, final int plotY, final int logPlotSize) { + return new ServerLevelPlot(plotContainer, plotX, plotY, plotContainer.getLogPlotSize(), this); + } + + @Override + @ApiStatus.Internal + public void onPlotBoundsChanged() { + final BoundingBox3ic bounds = this.getPlot().getBoundingBox(); + + if (bounds == BoundingBox3i.EMPTY || bounds.volume() <= 0) { + this.markRemoved(); + } + } + + /** + * Ticks this sub-level, updating the global bounding box and components. + */ + @Override + @ApiStatus.Internal + public void tick() { + super.tick(); + this.updateBoundingBox(); + + final BoundingBox3dc bounds = this.boundingBox(); + + if (!this.isRemoved() && (bounds.minY() < SableConfig.SUB_LEVEL_REMOVE_MIN.getAsDouble() || bounds.maxY() > SableConfig.SUB_LEVEL_REMOVE_MAX.getAsDouble())) { + Sable.LOGGER.info("Sub-level {} has an extreme Y coordinate range, removing", this); + this.markRemoved(); + return; + } + + if (SableConfig.SUB_LEVEL_SPLITTING.getAsBoolean()) { + this.heatMapManager.tick(); + } + } + + /** + * @return the last stopped status sent out to players + */ + @ApiStatus.Internal + public boolean getLastNetworkedStopped() { + return this.lastNetworkedStopped; + } + + /** + * Sets the last stopped status sent out to players + * + * @param stopped the last stopped status + */ + @ApiStatus.Internal + public void setLastNetworkedStopped(final boolean stopped) { + this.lastNetworkedStopped = stopped; + } + + /** + * Updates & merges the mass trackers for this sub-level. + * Called before physics ticking, before the physics tick event is dispatched, + * and before {@link ServerSubLevel#prePhysicsTick(SubLevelPhysicsSystem, RigidBodyHandle, double)}. + */ + @ApiStatus.Internal + public void updateMergedMassData(final float partialPhysicsTick) { + if (this.massTracker != null) { + this.massTracker.update(partialPhysicsTick); + } + } + + /** + * Called before the physics tick begins. + */ + @ApiStatus.Internal + public void prePhysicsTickBegin() { + if (this.queuedForceGroups != null) { + this.queuedForceGroups.values().forEach(QueuedForceGroup::reset); + } + } + + public void applyQueuedForces(final SubLevelPhysicsSystem physicsSystem, final RigidBodyHandle handle, final double timeStep) { + if (this.queuedForceGroups != null) { + for (final Map.Entry entry : this.queuedForceGroups.entrySet()) { + final QueuedForceGroup group = entry.getValue(); + + handle.applyForcesAndReset(group.getForceTotal()); + } + } + } + + /** + * Called once per **physics** tick. + * There may be multiple physics ticks per tick.
+ * + * @param handle The physics pipeline handle for sub-level + * @param timeStep The time step between physics ticks + */ + @ApiStatus.Internal + public void prePhysicsTick(final SubLevelPhysicsSystem physicsSystem, final RigidBodyHandle handle, final double timeStep) { + final ServerLevelPlot plot = this.getPlot(); + for (final BlockEntitySubLevelActor actor : plot.getBlockEntityActors()) { + actor.sable$physicsTick(this, handle, timeStep); + } + + final ObjectCollection liftProviders = plot.getLiftProviders(); + final ObjectCollection contraptions = plot.getContraptions(); + + + if (!liftProviders.isEmpty() || this.floatingBlockController.needsTicking() || this.reactionWheelManager.needsTicking() || !contraptions.isEmpty()) { + final boolean trackForces = this.isTrackingIndividualQueuedForces(); + + final Vector3d linearVelocity = handle.getLinearVelocity(new Vector3d()); + final Vector3d angularVelocity = handle.getAngularVelocity(new Vector3d()); + + final Vector3d linearImpulse = new Vector3d(); + final Vector3d angularImpulse = new Vector3d(); + + final List groups = trackForces ? BlockSubLevelLiftProvider.groupLiftProviders(liftProviders) : List.of(); + + // main sub-level lift & drag + for (final BlockSubLevelLiftProvider.LiftProviderContext context : liftProviders) { + BlockSubLevelLiftProvider.LiftProviderGroup group = null; + + // TODO: don't do this, bad for performance + for (final BlockSubLevelLiftProvider.LiftProviderGroup g : groups) { + if (g.positions().contains(context.pos())) { + group = g; + break; + } + } + + ((BlockSubLevelLiftProvider) context.state().getBlock()).sable$contributeLiftAndDrag(context, this, null, timeStep, linearVelocity, angularVelocity, linearImpulse, angularImpulse, group); + } + + for (final BlockSubLevelLiftProvider.LiftProviderGroup group : groups) { + if (group.totalLift().lengthSquared() >= 0.001 * 0.001) + this.getOrCreateQueuedForceGroup(ForceGroups.LIFT.get()) + .recordPointForce(group.liftCenter().div(group.totalLiftStrength), group.totalLift()); + + if (group.totalDrag().lengthSquared() >= 0.001 * 0.001) + this.getOrCreateQueuedForceGroup(ForceGroups.DRAG.get()) + .recordPointForce(group.dragCenter().div(group.totalDragStrength), group.totalDrag()); + } + + // contraption lift & drag + if (!contraptions.isEmpty()) { + final Pose3d localContraptionPose = new Pose3d(); + + for (final KinematicContraption contraption : contraptions) { + final Collection contraptionProviders = contraption.sable$liftProviders().values(); + + contraption.sable$getLocalPose(localContraptionPose, physicsSystem.getPartialPhysicsTick()); + final List contraptionGroups = trackForces ? BlockSubLevelLiftProvider.groupLiftProviders(contraptionProviders) : List.of(); + + for (final BlockSubLevelLiftProvider.LiftProviderContext context : contraptionProviders) { + BlockSubLevelLiftProvider.LiftProviderGroup group = null; + + // TODO: don't do this + for (final BlockSubLevelLiftProvider.LiftProviderGroup g : contraptionGroups) { + if (g.positions().contains(context.pos())) { + group = g; + break; + } + } + + ((BlockSubLevelLiftProvider) context.state().getBlock()) + .sable$contributeLiftAndDrag(context, this, localContraptionPose, timeStep, linearVelocity, angularVelocity, linearImpulse, angularImpulse, group); + } + + for (final BlockSubLevelLiftProvider.LiftProviderGroup group : contraptionGroups) { + if (group.totalLift().lengthSquared() >= 0.001 * 0.001) + this.getOrCreateQueuedForceGroup(ForceGroups.LIFT.get()) + .recordPointForce(group.liftCenter().div(group.totalLiftStrength), group.totalLift()); + + if (group.totalDrag().lengthSquared() >= 0.001 * 0.001) + this.getOrCreateQueuedForceGroup(ForceGroups.DRAG.get()) + .recordPointForce(group.dragCenter().div(group.totalDragStrength), group.totalDrag()); + } + } + } + + // TODO: what. + linearVelocity.fma(-1.0 / 2.1 * timeStep, DimensionPhysicsData.getGravity(this.getLevel())); + + this.floatingBlockController.physicsTick(physicsSystem.getPartialPhysicsTick(),timeStep, linearVelocity, angularVelocity, linearImpulse, angularImpulse); + this.reactionWheelManager.physicsTick(handle); + + handle.applyLinearAndAngularImpulse(linearImpulse, angularImpulse, false); + } + } + + /** + * Gets or creates a queued force group for the given force group. + * + * @param forceGroup the force group to get or create a queued force group for + * @return the queued force group + */ + public QueuedForceGroup getOrCreateQueuedForceGroup(final ForceGroup forceGroup) { + if (this.queuedForceGroups == null) { + this.queuedForceGroups = new Object2ObjectOpenHashMap<>(); + } + + return this.queuedForceGroups.computeIfAbsent(forceGroup, fg -> new QueuedForceGroup(this)); + } + + /** + * Deletes all entities inside the plot + */ + public void deleteAllEntities() { + this.getPlot().kickAllEntities(); + } + + @Override + public void setName(@Nullable final String name) { + if (!Objects.equals(name, this.getName())) { + this.playerSink().sendPacket(new ClientboundChangeSubLevelNamePacket(this.getUniqueId(), name)); + } + + super.setName(name); + } + + public SubLevelHeatMapManager getHeatMapManager() { + return this.heatMapManager; + } + + public FloatingBlockController getFloatingBlockController() { + return this.floatingBlockController; + } + + public ReactionWheelManager getReactionWheelManager() + { + return this.reactionWheelManager; + } + + /** + * Sets that this sub-level was split from another sub-level, + * and that this should be conveyed to the client for snapshot interpolation to + * maintain smoothness + * + * @param containingSubLevel the sub-level that this was split from + * @param originalPose the original pose of the sub-level before it was projected out of the containing sub-level + */ + public void setSplitFrom(final ServerSubLevel containingSubLevel, final Pose3d originalPose) { + this.splitFromSubLevel = containingSubLevel.getUniqueId(); + this.splitFromPose = originalPose; + } + + /** + * Gets the sub-level that this was split from, if any. + */ + @Nullable + public UUID getSplitFromSubLevel() { + return this.splitFromSubLevel; + } + + /** + * Gets the original pose of the sub-level before it was projected out of the containing sub-level. + */ + @Nullable + public Pose3d getSplitFromPose() { + return this.splitFromPose; + } + + /** + * Clears the split from sub-level and original pose. + */ + public void clearSplitFrom() { + this.splitFromSubLevel = null; + this.splitFromPose = null; + } + + /** + * @return the parent level of this sub-level + */ + @Override + public ServerLevel getLevel() { + return (ServerLevel) super.getLevel(); + } + + /** + * @return the plot containing the contents of this sub-level + */ + @Override + public ServerLevelPlot getPlot() { + return (ServerLevelPlot) super.getPlot(); + } + + /** + * The mass & inertia tracker for this sub-level + */ + @Override + public MassData getMassTracker() { + return this.massTracker; + } + + @ApiStatus.Internal + public void buildMassTracker() { + final MassTracker internalTracker = MassTracker.build(new LevelAccelerator(this.getLevel()), this.getPlot().getBoundingBox()); + this.massTracker = new MergedMassTracker(this, internalTracker); + } + + /** + * @return the mass tracker for just the sub-level, not including merged masses + */ + public MassTracker getSelfMassTracker() { + return this.massTracker.getSelfMassTracker(); + } + + /** + * @return the last place this sub-level was saved + */ + @ApiStatus.Internal + public GlobalSavedSubLevelPointer getLastSerializationPointer() { + return this.lastSerializationPointer; + } + + /** + * Sets the last place this sub-level was saved to. + * + * @param lastSerializationPointer the pointer to the last serialization location + */ + @ApiStatus.Internal + public void setLastSerializationPointer(final GlobalSavedSubLevelPointer lastSerializationPointer) { + this.lastSerializationPointer = lastSerializationPointer; + } + + /** + * Sets if individual queued forces should be kept track of + */ + public void enableIndividualQueuedForcesTracking(final boolean enable) { + this.trackIndividualQueuedForces = enable; + } + + /** + * @return if individual queued forces are being tracked + */ + public boolean isTrackingIndividualQueuedForces() { + return this.trackIndividualQueuedForces; + } + + /** + * @return a map of force group -> queued force groups + */ + public @Nullable Object2ObjectMap getQueuedForceGroups() { + return this.queuedForceGroups; + } + + /** + * @return the user-data compound tag if any exists, which is saved and serialized with this sub-level + */ + public @Nullable CompoundTag getUserDataTag() { + return this.userDataTag; + } + + /** + * Sets the user-data compound tag, which is saved and serialized with this sub-level + * + * @param userDataTag the user-data compound tag + */ + public void setUserDataTag(final CompoundTag userDataTag) { + this.userDataTag = userDataTag; + } + + @Override + public String toString() { + return "ServerSubLevel" + super.toString(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/SubLevel.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/SubLevel.java new file mode 100644 index 0000000..3ae8649 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/SubLevel.java @@ -0,0 +1,230 @@ +package dev.ryanhcode.sable.sublevel; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.SubLevelAccess; +import dev.ryanhcode.sable.companion.math.*; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4d; + +import java.util.UUID; + +/** + * A sub-level is a subdivision of a level, containing: + *
    + *
  • An isolated chunk grid, stored in a {@link LevelPlot}
  • + *
  • An Isometry, or a 3D pose with translation, rotation, and scale.
  • + *
+ */ +public abstract class SubLevel implements SubLevelAccess { + + /** + * The parent level of this sub-level + */ + private final Level level; + + /** + * The current, logical pose + */ + private final Pose3d pose; + + /** + * The logical pose from the previous tick + */ + protected final Pose3d lastPose; + + /** + * The global bounding box of this sub-level. + * Typically, updated per-tick to reflect the current pose. + */ + protected final BoundingBox3d globalBounds = new BoundingBox3d(0, 0, 0, 0, 0, 0); + + /** + * The last global bounding box of this sub-level. + */ + protected final BoundingBox3d lastGlobalBounds = new BoundingBox3d(0, 0, 0, 0, 0, 0); + + /** + * + */ + private final Matrix4d globalBoundsTransform = new Matrix4d(); + + /** + * The plot of this sub-level + */ + private final LevelPlot plot; + + /** + * If this sub-level is removed / should be removed + */ + private boolean isRemoved = false; + + /** + * The unique ID of this sub-level. Will persist throughout lifetime, stay consistent between client and server, + * and persist across serialization. + */ + private UUID uniqueId = null; + + /** + * The display name of this sub-level. + * Can be set to null to indicate no name. + */ + @Nullable + private String name = null; + + /** + * Creates a new sub-level with the given parent level and pose. + * + * @param level the parent level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param pose the initialization pose of the sub-level + */ + protected SubLevel(final Level level, final int plotX, final int plotY, final Pose3d pose) { + this.level = level; + + final SubLevelContainer plotContainer = SubLevelContainer.getContainer(this.level); + if (plotContainer == null) { + throw new IllegalStateException("Level does not have a plot container"); + } + + this.plot = this.createPlot(plotContainer, plotX, plotY, plotContainer.getLogPlotSize()); + this.pose = new Pose3d(pose); + this.lastPose = new Pose3d(pose); + } + + /** + * Creates the plot for this sub-level. + * @param plotContainer the parent plot container of this sub-level + * @param plotX the global plot x coordinate + * @param plotY the global plot y coordinate + * @param logPlotSize the log_2 of the side length of a plot, in chunks + * @return a new {@link LevelPlot} instance for this sub-level + */ + protected abstract LevelPlot createPlot(SubLevelContainer plotContainer, int plotX, int plotY, int logPlotSize); + + /** + * Called when the bounds of the inner plot have changed. + */ + public void onPlotBoundsChanged() { + } + + /** + * Sets the last pose to the current pose. + */ + public void updateLastPose() { + this.lastPose.set(this.pose); + } + + /** + * Ticks this sub-level, updating the global bounding box and components. + */ + public void tick() { + this.plot.tick(); + } + + public void updateBoundingBox() { + final BoundingBox3ic plotBounds = this.plot.getBoundingBox(); + assert plotBounds != null : "Plot bounds are null"; + + this.lastGlobalBounds.set(this.globalBounds); + this.globalBounds.set(plotBounds.minX(), plotBounds.minY(), plotBounds.minZ(), plotBounds.maxX() + 1.0, plotBounds.maxY() + 1.0, plotBounds.maxZ() + 1.0); + this.globalBounds.transform(this.pose, this.globalBoundsTransform, this.globalBounds); + } + + /** + * @return the parent level of this sub-level + */ + public Level getLevel() { + return this.level; + } + + /** + * @return the current pose of this sub-level + */ + @Override + public Pose3d logicalPose() { + return this.pose; + } + + /** + * @return the pose of this sub-level from the previous tick + */ + @Override + public Pose3dc lastPose() { + return this.lastPose; + } + + /** + * @return the global bounding box of this sub-level + */ + @Override + public BoundingBox3dc boundingBox() { + return this.globalBounds; + } + + /** + * @return the plot containing the contents of this sub-level + */ + public LevelPlot getPlot() { + return this.plot; + } + + /** + * Removes this sub-level from the parent level. + */ + @ApiStatus.Internal + public void onRemove() { + this.plot.onRemove(); + this.markRemoved(); + } + + /** + * If sub-level is removed / is marked for removal + * + * @return if sub-level is removed / marked for removal + */ + public boolean isRemoved() { + return this.isRemoved; + } + + /** + * Marks sub-level as removed / for removal. + * The {@link SubLevelContainer} will remove it from on the next tick. + */ + public void markRemoved() { + this.isRemoved = true; + } + + @ApiStatus.Internal + public void setUniqueId(final UUID uniqueId) { + this.uniqueId = uniqueId; + } + + @Override + public @NotNull UUID getUniqueId() { + return this.uniqueId; + } + + @Override + public @Nullable String getName() { + return this.name; + } + + /** + * Sets the display name of this sub-level. + * + * @param name the new name of this sub-level, or null to indicate no name + */ + public void setName(@Nullable final String name) { + this.name = name; + } + + @Override + public String toString() { + return "[name=" + this.name + ", global_plot=" + this.plot.plotPos.x + "," + this.plot.plotPos.z + "]"; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.java new file mode 100644 index 0000000..fdd62ea --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.java @@ -0,0 +1,618 @@ +package dev.ryanhcode.sable.sublevel.entity_collision; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.LevelReusedVectors; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.*; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.mixinterface.EntityExtension; +import dev.ryanhcode.sable.mixinterface.voxel_shape_iteration.FastVoxelShapeIterable; +import dev.ryanhcode.sable.physics.impl.SubLevelEntityCollisionContext; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.LevelAccelerator; +import dev.ryanhcode.sable.util.SableMathUtils; +import it.unimi.dsi.fastutil.objects.Object2ObjectArrayMap; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectSet; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.ScaffoldingBlock; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.jetbrains.annotations.NotNull; +import org.joml.*; + +import java.lang.Math; +import java.util.Iterator; +import java.util.Map; + +/** + * Handles collision between an {@link Entity} and {@link SubLevel SubLevels} + */ +public class SubLevelEntityCollision { + + /** + * Handles collision between an {@link Entity} and {@link SubLevel SubLevels} + *

+ * cursed as hell but we ball + * + * @param entity The entity to collide + * @param collisionMotionMoj The motion of the entity + * @return The new motion of the entity after collision + */ + public static CollisionInfo collide(final Entity entity, final Vec3 collisionMotionMoj, final Vec3 velocityMotionMoj, final LevelReusedVectors sink) { + if (entity instanceof ServerPlayer) { + final CollisionInfo collisionInfo = new CollisionInfo(); + collisionInfo.motion = collisionMotionMoj; + + final SubLevel trackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + if (trackingSubLevel != null) { + entity.setOnGround(true); + collisionInfo.verticalCollisionBelow = true; + collisionInfo.verticalCollision = true; + collisionInfo.trackingSubLevel = trackingSubLevel; + if (entity.getDeltaMovement().y < 0) { + entity.setDeltaMovement(entity.getDeltaMovement().multiply(1.0, 0.0, 1.0)); + } + } + return collisionInfo; + } + + final SubLevel existingTrackingSubLevel = Sable.HELPER.getTrackingSubLevel(entity); + + if (existingTrackingSubLevel != null && + EntitySubLevelUtil.shouldKick(entity) && + existingTrackingSubLevel.getPlot().contains(entity.position())) { + EntitySubLevelUtil.kickEntity(existingTrackingSubLevel, entity); + } + + final BoundingBox3d fullContextBounds = sink.fullContextBounds.set(entity.getBoundingBox().minmax(entity.getBoundingBox().move(collisionMotionMoj))); + final BoundingBox3d rotatedContextBounds = sink.rotatedContextBounds; + final AABB entityBounds = entity.getBoundingBox(); + + final Vector3d collisionMotion = sink.collisionMotion.set(collisionMotionMoj.x, collisionMotionMoj.y, collisionMotionMoj.z); + final Vector3d velocityMotion = sink.velocityMotion.set(velocityMotionMoj.x, velocityMotionMoj.y, velocityMotionMoj.z); + + final Level level = entity.level(); + final LevelAccelerator accel = new LevelAccelerator(level); + + Quaterniondc customEntityOrientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, 0.0f); + sink.entityUpDirection.set(OrientedBoundingBox3d.UP); + + final BoundingBox3d considerationBounds = sink.considerationBounds.set(fullContextBounds); + + if (customEntityOrientation != null) { + customEntityOrientation.transform(sink.entityUpDirection); + considerationBounds.expand(entity.getEyeHeight()); // just in case tm + } + considerationBounds.expand(1.0); // fences + + final ObjectSet intersecting = new ObjectOpenHashSet<>(); + + for (final SubLevel subLevel : Sable.HELPER.getAllIntersecting(level, considerationBounds)) { + intersecting.add(subLevel); + } + + final CollisionInfo collisionInfo = new CollisionInfo(); + collisionInfo.trackingSubLevel = existingTrackingSubLevel; + + if (collisionInfo.trackingSubLevel != null) { + intersecting.add(collisionInfo.trackingSubLevel); + } + + if (!intersecting.iterator().hasNext()) { + collisionInfo.motion = collisionMotionMoj.add(velocityMotionMoj); + return collisionInfo; + } + + final BoundingBox3d localBounds = sink.localBounds; + final BoundingBox3d localBounds2 = sink.localBounds2; + + int substeps = Math.min(10, Math.max(1, (int) (collisionMotion.length() / (0.25 / 16.0)))); + + if (entity instanceof final Player player && player.isLocalPlayer()) { + substeps = 8; + } + + final Vec3 originalEntityPosition = entity.position(); + final Vector3dc originalEntityFootPosition = Sable.HELPER.getFeetPos(entity, 0.0f, customEntityOrientation); + + final Vector3d entityBoundsCenter = JOMLConversion.getAABBCenter(entityBounds, sink.entityBoundsCenter); + transformEntityBoundsCenter(sink, customEntityOrientation, entity, entityBoundsCenter); + + sink.entityBoxOrientation.identity(); + final OrientedBoundingBox3d entityBoundsOBB = new OrientedBoundingBox3d( + entityBoundsCenter.x + collisionMotion.x + velocityMotion.x, + entityBoundsCenter.y + collisionMotion.y + velocityMotion.y, + entityBoundsCenter.z + collisionMotion.z + velocityMotion.z, + entityBounds.getXsize(), + entityBounds.getYsize(), + entityBounds.getZsize(), + sink.entityBoxOrientation, + sink); + + final OrientedBoundingBox3d cubeOBB = new OrientedBoundingBox3d(sink); + + final Pose3d lastPose = sink.lastPose; + final Pose3d lastSubLevelPose = sink.lastSubLevelPose; + final Pose3d subLevelPose = sink.subLevelPose; + final Matrix4d bakedMatrix = sink.bakedMatrix; + + final Vector3d mtv = sink.mtv; + final Vector3d normalizedMtv = sink.normalizedMtv; + final Vector3d existingDeltaMovement = sink.existingDeltaMovement; + final Vector3d maxMTV = sink.maxMTV; + final BoundingBox3d maxAABB = sink.maxAABB; + final Vector3d center = sink.center; + + collisionMotion.zero(); + + final Vector3dc steppingMotion = JOMLConversion.toJOML(collisionMotionMoj); + final Vector3dc steppingVelocityMotion = JOMLConversion.toJOML(velocityMotionMoj); + + boolean swappedTrackingAlready = false; // prevent flickering between tracking 2 sub-levels + boolean stopTrackingAtEnd = false; + + final Map firstCollisions = new Object2ObjectArrayMap<>(); + + for (int i = 1; i <= substeps; i++) { + final double delta = 1.0 / substeps; + collisionMotion.fma(delta, steppingMotion); + + if (collisionInfo.trackingSubLevel == null) { + collisionMotion.fma(delta, steppingVelocityMotion); + } + + // Entity box handling + sink.entityBoxOrientation.identity(); + final double yaw = getHitBoxYaw(subLevelPose); + sink.entityBoxOrientation.rotateY(yaw); + + final Vector3d entityUp = sink.entityUpDirection; + + if (customEntityOrientation != null) { + entityBoundsCenter.fma(entity.getEyeHeight() - entity.getBoundingBox().getYsize() / 2.0, entityUp); + customEntityOrientation = EntitySubLevelUtil.getCustomEntityOrientation(entity, (float) i / substeps); + + entityUp.set(OrientedBoundingBox3d.UP); + transformEntityBoundingBox(customEntityOrientation, sink.entityBoxOrientation, entityUp); + entityBoundsCenter.fma(-(entity.getEyeHeight() - entity.getBoundingBox().getYsize() / 2.0), entityUp); + } else { + entityUp.set(OrientedBoundingBox3d.UP); + } + entityBoundsOBB.setOrientation(sink.entityBoxOrientation); + + entityBoundsCenter.add(collisionMotion, entityBoundsOBB.getPosition()); + + // iterate through all sub-levels that COULD intersect + for (final SubLevel subLevel : intersecting) { + if (Sable.HELPER.getVehicleSubLevel(entity) == subLevel) { + continue; + } + + final Pose3d logicalPose = subLevel.logicalPose(); + + lastPose.set(subLevel.lastPose()); + if (lastPose.rotationPoint().lengthSquared() <= 0.0) { + lastPose.rotationPoint().set(logicalPose.rotationPoint()); + } + + lastPose.lerp(logicalPose, (double) (i - 1) / substeps, lastSubLevelPose); + lastPose.lerp(logicalPose, (double) (i) / substeps, subLevelPose); + + rotatedContextBounds.set(fullContextBounds); + if (customEntityOrientation != null) { + entityBoundsOBB.vertices(sink.a); + + for (final Vector3d vec : sink.a) { + rotatedContextBounds.expandTo(vec); + rotatedContextBounds.expandTo(vec.sub(collisionMotion.x, collisionMotion.y, collisionMotion.z)); + } + + rotatedContextBounds.expand(0.35f); + } + rotatedContextBounds.transformInverse(lastPose, bakedMatrix, localBounds); + rotatedContextBounds.transformInverse(logicalPose, bakedMatrix, localBounds2); + + localBounds.expandTo(localBounds2, localBounds); + + if (localBounds.volume() > 500 * 500 * 500) { + Sable.LOGGER.info("Enormous local sub-level collision bounds, quitting."); + continue; + } + + // We subtract 1 from y to allow for fences and similar blocks + final Iterable blocks = BlockPos.betweenClosed(sink.minPos.set(localBounds.minX, localBounds.minY - 1, localBounds.minZ), sink.maxPos.set(localBounds.maxX, localBounds.maxY, localBounds.maxZ)); + + cubeOBB.getOrientation().set(subLevelPose.orientation()); + + if (collisionInfo.trackingSubLevel == subLevel) { + // Subtract, then add so the vector can be re-used + final float verticalAnchorPosition = 0; + + final Vector3dc feetOffset = entityUp.mul(verticalAnchorPosition - entity.getBoundingBox().getYsize() / 2.0, sink.posMinusCenter); + sink.trackingPosition.set(entityBoundsCenter).add(feetOffset); + subLevelPose.transformPosition(lastSubLevelPose.transformPositionInverse(sink.trackingPosition)).sub(feetOffset, entityBoundsCenter); + entityBoundsCenter.add(collisionMotion, entityBoundsOBB.getPosition()); + entityBoundsCenter.fma(verticalAnchorPosition - entity.getBoundingBox().getYsize() / 2.0, entityUp, sink.tempEyePosition).sub(0.0, verticalAnchorPosition, 0.0); + ((EntityExtension) entity).sable$setPosSuperRaw(new Vec3(sink.tempEyePosition.x, sink.tempEyePosition.y, sink.tempEyePosition.z)); + + boolean anySurroundingBlocksSolid = false; + + for (final BlockPos block : blocks) { + if (!accel.getBlockState(block).isAir()) { + anySurroundingBlocksSolid = true; + break; + } + } + + if (!anySurroundingBlocksSolid) { + stopTrackingAtEnd = true; + } + } + + for (int maxIter = 0; maxIter < 4; maxIter++) { + mtv.set(Double.MAX_VALUE); + maxMTV.zero(); + double maxMTVLength = Double.MIN_VALUE; + final BlockPos.MutableBlockPos maxBlockPos = sink.maxBlockPos; + BlockState maxBlockState = null; + + // iterate through all blocks + for (final BlockPos block : blocks) { + final BlockState state = accel.getBlockState(block); + final VoxelShape voxelShape = getSubLevelEntityCollisionShape(entity, entityBoundsCenter, subLevelPose, state, accel, block, sink); + + if (state.isAir()) { + continue; + } + + final Iterator iterator = ((FastVoxelShapeIterable) voxelShape).sable$allBoxes(); + while (iterator.hasNext()) { + final BoundingBox3dc box = iterator.next(); + box.center(center); + cubeOBB.getPosition().set(block.getX() + center.x, + block.getY() + center.y, + block.getZ() + center.z); + subLevelPose.transformPosition(cubeOBB.getPosition()); + box.size(cubeOBB.getDimensions()); + + OrientedBoundingBox3d.sat(entityBoundsOBB, cubeOBB, mtv); + + if (mtv.lengthSquared() > 0.0 && mtv.x != Double.MAX_VALUE && mtv.y != Double.MAX_VALUE && mtv.z != Double.MAX_VALUE) { + final double lengthMtv = mtv.lengthSquared(); + if (lengthMtv > maxMTVLength) { + maxMTVLength = lengthMtv; + maxMTV.set(mtv); + + box.move(block.getX(), block.getY(), block.getZ(), maxAABB); + maxBlockPos.set(block); + maxBlockState = state; + } + } + } + } + + if (maxMTV.lengthSquared() > 0.0) { + // start tracking + if (collisionInfo.trackingSubLevel == null) { + collisionInfo.trackingSubLevel = subLevel; +// collisionInfo.trackingLocalUpDirection = subLevelPose.transformNormalInverse(new Vector3d(0.0, 1.0, 0.0)); + stopTrackingAtEnd = false; + } + + final Vector3dc localMtv = subLevelPose.transformNormalInverse(maxMTV, sink.localMtv).normalize(); + + final int offsetX = (int) Math.round(localMtv.x()); + final int offsetY = (int) Math.round(localMtv.y()); + final int offsetZ = (int) Math.round(localMtv.z()); + final BlockPos newPos = sink.offsetPos.setWithOffset(maxBlockPos, offsetX, offsetY, offsetZ); + final BlockState offsetState = accel.getBlockState(newPos); + final VoxelShape offsetShape = getSubLevelEntityCollisionShape(entity, entityBoundsCenter, subLevelPose, offsetState, accel, newPos, sink); + final Direction direction = Direction.get(Direction.AxisDirection.POSITIVE, Direction.getNearest(offsetX, offsetY, offsetZ).getAxis()); + + final BoundingBox3d offsetAABB = sink.offsetAABB; + final BoundingBox3d compressedMinAABB = sink.compressedMinAABB; + final BoundingBox3d compressedOffsetAABB = sink.compressedOffsetAABB; + final BoundingBox3d intersection = sink.intersection; + + boolean discard = false; + final Iterator iterator = ((FastVoxelShapeIterable) offsetShape).sable$allBoxes(); + while (iterator.hasNext()) { + final BoundingBox3dc box = iterator.next(); + box.move(newPos.getX(), newPos.getY(), newPos.getZ(), offsetAABB).expand(0.001); + if (!maxAABB.intersects(offsetAABB)) { + continue; + } + + compressedMinAABB.set( + maxAABB.minX * (1.0 - direction.getStepX()), + maxAABB.minY * (1.0 - direction.getStepY()), + maxAABB.minZ * (1.0 - direction.getStepZ()), + maxAABB.maxX * (1.0 - direction.getStepX()) + direction.getStepX(), + maxAABB.maxY * (1.0 - direction.getStepY()) + direction.getStepY(), + maxAABB.maxZ * (1.0 - direction.getStepZ()) + direction.getStepZ() + ); + + compressedOffsetAABB.set( + offsetAABB.minX * (1.0 - direction.getStepX()), + offsetAABB.minY * (1.0 - direction.getStepY()), + offsetAABB.minZ * (1.0 - direction.getStepZ()), + offsetAABB.maxX * (1.0 - direction.getStepX()) + direction.getStepX(), + offsetAABB.maxY * (1.0 - direction.getStepY()) + direction.getStepY(), + offsetAABB.maxZ * (1.0 - direction.getStepZ()) + direction.getStepZ() + ); + + compressedMinAABB.intersect(compressedOffsetAABB, intersection); + if (Math.abs(intersection.volume() - compressedMinAABB.volume()) < 0.01) { + discard = true; + break; + } + } + + // if the collision is deemed to be interior, let's discard it + if (discard) { + continue; + } + + // now let's actually handle it + maxMTV.normalize(normalizedMtv); + final double dot = normalizedMtv.dot(entityUp); + + final boolean verticalCollision = Math.abs(dot) > 0.6; + + // record the first collision w/ the sub-level + final BlockState collidedBlockState = maxBlockState; + + firstCollisions.computeIfAbsent(subLevel, (sl) -> { + final Vector3d localBoundsCenter = subLevelPose.transformPositionInverse(new Vector3d(entityBoundsCenter)); + return new FirstCollisionInfo(localBoundsCenter, + new Vector3d(maxMTV).normalize(), + !verticalCollision, + collidedBlockState.is(SableTags.BOUNCY), + collidedBlockState); + }); + + if (verticalCollision) { + collisionInfo.verticalCollision = true; + + if (dot > 0.0) { + entity.setOnGround(true); + collisionInfo.verticalCollisionBelow = true; + + if (collisionInfo.trackingSubLevel != subLevel && !swappedTrackingAlready) { + swappedTrackingAlready = true; + collisionInfo.trackingSubLevel = subLevel; +// collisionInfo.trackingLocalUpDirection = subLevelPose.transformNormalInverse(new Vector3d(0.0, 1.0, 0.0)); + } + } + if (dot > 0.8) { + final double preLength = maxMTV.length(); + entityUp.mul(maxMTV.dot(entityUp), maxMTV).normalize(preLength); + } + } else { + collisionInfo.subLevelHorizontalCollision |= !tryStepUp(entity, + accel, + sink, + subLevelPose, + blocks, + entityBoundsCenter, + entityBounds, + entityBoundsOBB, + cubeOBB, + maxMTV, + normalizedMtv, + collisionMotion); + + if (collisionInfo.subLevelHorizontalCollision) { + // TODO: We really should be going through the vanilla horizontal collision / minor horizontal collision + JOMLConversion.toJOML(entity.getDeltaMovement(), existingDeltaMovement); + final Vector3d deltaMovementLoss = normalizedMtv.mul(normalizedMtv.dot(existingDeltaMovement)); + + if (deltaMovementLoss.length() > existingDeltaMovement.length() * 0.1) { + entity.setSprinting(false); + } + + // TODO: Vanilla has friction values for these. We should be using those + final double friction = 0.995; + final Vector3d newDeltaMovement = existingDeltaMovement.sub(deltaMovementLoss); + + + final double upVelocity = entityUp.dot(newDeltaMovement); + newDeltaMovement.fma(-upVelocity, entityUp).mul(friction).fma(upVelocity, entityUp); + + entity.setDeltaMovement(JOMLConversion.toMojang(newDeltaMovement)); + } + } + + collisionMotion.add(maxMTV); + entityBoundsCenter.add(collisionMotion, entityBoundsOBB.getPosition()); + } + } + } + } + + collisionInfo.inheritedMotion = JOMLConversion.toMojang( + Sable.HELPER.getFeetPos(entity, 0.0f, customEntityOrientation) + .sub(originalEntityFootPosition)); + + if (collisionInfo.inheritedMotion.lengthSqr() < 1e-8) { + collisionInfo.inheritedMotion = null; + } + + if (stopTrackingAtEnd) { + collisionInfo.trackingSubLevel = null; + } + + ((EntityExtension) entity).sable$setPosSuperRaw(originalEntityPosition); + + collisionInfo.motion = JOMLConversion.toMojang(collisionMotion); + collisionInfo.firstCollisions = firstCollisions; + return collisionInfo; + } + + public static void transformEntityBoundsCenter(final LevelReusedVectors sink, final Quaterniondc customOrientation, final Entity entity, final Vector3d center) { + if (customOrientation == null) { + return; + } + + final Vector3d offset = sink.anchorRelativePosition.set(0.0, entity.getEyeHeight() - entity.getBoundingBox().getYsize() / 2.0, 0.0); + center.add(offset).sub(customOrientation.transform(offset)); + } + + public static void transformEntityBoundingBox(final Quaterniondc customOrientation, final Quaterniond bounds, final Vector3d upDir) { + if (customOrientation == null) { + return; + } + + bounds.premul(customOrientation); + customOrientation.transform(upDir); + } + + public static double getHitBoxYaw(final Pose3dc subLevelPose) { + final Quaterniondc subLevelOrientation = subLevelPose.orientation(); + final Quaterniond snapped = SableMathUtils.clampQuaternionToGrid(subLevelOrientation, SableMathUtils.GridQuats.REAL, new Quaterniond()); + final Quaterniond relativeOrientation = subLevelOrientation.div(snapped, snapped); + + final double dot = OrientedBoundingBox3d.UP.dot(new Vector3d(relativeOrientation.x(), relativeOrientation.y(), relativeOrientation.z())); + + return -2.0 * Math.atan2(-dot, relativeOrientation.w()); + } + + private static @NotNull VoxelShape getSubLevelEntityCollisionShape(final Entity entity, + final Vector3dc boundsCenter, + final Pose3dc subLevelPose, + final BlockState state, + final LevelAccelerator level, + final BlockPos pos, + final LevelReusedVectors sink) { + if (state.getBlock() instanceof ScaffoldingBlock) { + final VoxelShape originalShape = state.getCollisionShape(level, pos, new SubLevelEntityCollisionContext(entity)); + final double skew = 0.05; + if (entity.isShiftKeyDown()) + return originalShape; + else if (subLevelPose.transformPositionInverse(boundsCenter.fma(-(entity.getBoundingBox().getYsize() / 2.0 - skew), sink.entityUpDirection, new Vector3d())).y > pos.getY() + 1.0 + skew) + return sink.SCAFFOLDING_TOP; + return originalShape; + } + + return state.getCollisionShape(level, pos); + } + + private static boolean tryStepUp(final Entity entity, + final LevelAccelerator accel, + final LevelReusedVectors sink, + final Pose3dc subLevelPose, + final Iterable blocks, + final Vector3dc entityBoundsCenter, + final AABB entityBounds, + final OrientedBoundingBox3d entityBoundsOBB, + final OrientedBoundingBox3d cubeOBB, + final Vector3dc maxMTV, + final Vector3dc normalizedMTV, + final Vector3d collisionMotion) { + if (!entity.onGround()) return false; + if (collisionMotion.dot(normalizedMTV) > 0.0) return true; + + final double checkIncrement = 1.0 / 16.0; + final double maxStepHeight = entity.maxUpStep(); + double currentStepUp; + + final Vector3d lastStepTestMTV = sink.lastStepTestMTV.zero(); + int collidingCount = 0; + int freeCount = 0; + + final double inflation = 0.1; + entityBoundsOBB.getDimensions().set(entityBounds.getXsize(), entityBounds.getYsize(), entityBounds.getZsize()) + .add(inflation, inflation, inflation); + + for (currentStepUp = 0; currentStepUp <= maxStepHeight; currentStepUp += checkIncrement) { + final Vector3d boundsCenter = sink.stepHeightEntityBoundsCenter; + + boundsCenter.set(entityBoundsCenter).fma(currentStepUp, sink.entityUpDirection).fma(-2.0 / 16.0, normalizedMTV); + + if (hasCollision(accel, sink, subLevelPose, blocks, entityBoundsOBB, cubeOBB, boundsCenter)) { + lastStepTestMTV.set(sink.mtv); + collidingCount++; + } else { + freeCount++; + break; + } + } + + entityBoundsOBB.getDimensions().set(entityBounds.getXsize(), entityBounds.getYsize(), entityBounds.getZsize()); + + if (freeCount > 0 && collidingCount > 0 && lastStepTestMTV.normalize().dot(sink.entityUpDirection) > 0.8) { + collisionMotion.fma(currentStepUp, sink.entityUpDirection).fma(-1.0 / 16.0, normalizedMTV); + return true; + } + + return false; + } + + private static boolean hasCollision(final LevelAccelerator accel, final LevelReusedVectors sink, final Pose3dc subLevelPose, final Iterable blocks, final OrientedBoundingBox3d entityBoundsOBB, final OrientedBoundingBox3d cubeOBB, final Vector3d boundsCenter) { + entityBoundsOBB.setPosition(boundsCenter); + + // iterate through all blocks + for (final BlockPos block : blocks) { + final BlockState state = accel.getBlockState(block); + final VoxelShape voxelShape = state.getCollisionShape(accel, block); + + if (state.isAir()) { + continue; + } + + final Iterator iterator = ((FastVoxelShapeIterable) voxelShape).sable$allBoxes(); + final Vector3d center = sink.center; + final Vector3d mtv = sink.mtv; + + while (iterator.hasNext()) { + final BoundingBox3dc box = iterator.next(); + box.center(center); + cubeOBB.getPosition().set(block.getX() + center.x, + block.getY() + center.y, + block.getZ() + center.z); + subLevelPose.transformPosition(cubeOBB.getPosition()); + box.size(cubeOBB.getDimensions()); + + OrientedBoundingBox3d.sat(entityBoundsOBB, cubeOBB, mtv); + + if (mtv.lengthSquared() > 0.0 && mtv.x != Double.MAX_VALUE && mtv.y != Double.MAX_VALUE && mtv.z != Double.MAX_VALUE) { + return true; + } + } + } + return false; + } + + /** + * The first collision with a sub-level during a collision check + */ + public record FirstCollisionInfo(Vector3dc localLocation, Vector3dc globalDirection, boolean horizontal, + boolean bouncy, BlockState block) { + } + + public static class CollisionInfo { + public SubLevel preTrackingSubLevel; + public Vec3 preDeltaMovement; + + public boolean subLevelHorizontalCollision; + public boolean horizontalCollision; + public boolean verticalCollision; + public boolean verticalCollisionBelow; + public boolean minorHorizontalCollision; + public Vec3 inheritedMotion; + public Vec3 motion; + public SubLevel trackingSubLevel; + public Map firstCollisions; +// public Vector3d trackingLocalUpDirection = null; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.java new file mode 100644 index 0000000..221a89d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.lighting.LevelLightEngine; + +/** + * An allocated & reserved space in a level belonging to a {@link SubLevel}, holding its own chunk grid. + */ +public class ClientLevelPlot extends LevelPlot { + /** + * Creates a new plot at the given plot coordinate. + * + * @param plotContainer the parent plot container of this level plot + * @param x the global X coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param z the global Z coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param logSize the log_2 of the side length of a plot + * @param subLevel the sub-level using this plot + */ + public ClientLevelPlot(final SubLevelContainer plotContainer, final int x, final int z, final int logSize, final ClientSubLevel subLevel) { + super(plotContainer, x, z, logSize, subLevel); + } + + /** + * Returns the lighting engine this sub-level should use. + * This is done due to {@link ServerSubLevel ServerSubLevels} having their own lighting engine, + * + * @return the lighting engine for this plot, or null if not set + */ + @Override + public LevelLightEngine getLightEngine() { + return this.getSubLevel().getLevel().getLightEngine(); + } + + /** + * @return the sub-level using this plot. + */ + @Override + public ClientSubLevel getSubLevel() { + return (ClientSubLevel) super.getSubLevel(); + } + + @Override + protected void onRemoveChunkHolder(final LevelChunk levelChunk) { + ((ClientLevel) levelChunk.getLevel()).unload(levelChunk); + } + + @Override + public void addChunkHolder(final ChunkPos localChunkPos, final PlotChunkHolder holder, final boolean initializeLighting) { + super.addChunkHolder(localChunkPos, holder, initializeLighting); + + for (final BlockEntity blockEntity : holder.getChunk().getBlockEntities().values()) { + final BlockEntitySubLevelActor actor = blockEntity instanceof BlockEntitySubLevelActor ? (BlockEntitySubLevelActor) blockEntity : null; + + if (actor != null) { + this.blockEntityActors.put(blockEntity.getBlockPos(), actor); + } + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.java new file mode 100644 index 0000000..3d9ad83 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.java @@ -0,0 +1,276 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.Holder; +import net.minecraft.core.RegistryAccess; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.sounds.SoundEvent; +import net.minecraft.sounds.SoundSource; +import net.minecraft.util.RandomSource; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.flag.FeatureFlagSet; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.CommonLevelAccessor; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.biome.BiomeManager; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.border.WorldBorder; +import net.minecraft.world.level.chunk.ChunkAccess; +import net.minecraft.world.level.chunk.ChunkSource; +import net.minecraft.world.level.chunk.status.ChunkStatus; +import net.minecraft.world.level.dimension.DimensionType; +import net.minecraft.world.level.entity.EntityTypeTest; +import net.minecraft.world.level.gameevent.GameEvent; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.lighting.LevelLightEngine; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.storage.LevelData; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.ticks.LevelTickAccess; +import org.jetbrains.annotations.Nullable; + +import java.util.List; +import java.util.function.Predicate; + +/** + * A {@link CommonLevelAccessor} utility for a {@link LevelPlot} that places (0, 0, 0) at the plot center + */ +public class EmbeddedPlotLevelAccessor implements CommonLevelAccessor, ServerLevelAccessor { + + /** + * The plot that this level accessor is embedded in + */ + private final LevelPlot plot; + + /** + * The center of the plot + */ + private final BlockPos center; + + /** + * The center chunk of the plot + */ + private final ChunkPos centerChunk; + + /** + * The level of the plot + */ + private final Level level; + + /** + * Creates a new embedded plot level accessor + * + * @param plot The plot to embed + */ + public EmbeddedPlotLevelAccessor(final LevelPlot plot) { + this.plot = plot; + this.level = plot.getSubLevel().getLevel(); + this.center = plot.getCenterBlock(); + this.centerChunk = plot.getCenterChunk(); + } + + @Override + public float getShade(final Direction direction, final boolean bl) { + return this.level.getShade(direction, bl); + } + + @Override + public LevelLightEngine getLightEngine() { + return this.level.getLightEngine(); + } + + @Override + public WorldBorder getWorldBorder() { + return this.level.getWorldBorder(); + } + + @Override + public @Nullable BlockEntity getBlockEntity(final BlockPos blockPos) { + return this.level.getBlockEntity(blockPos.offset(this.center)); + } + + @Override + public BlockState getBlockState(final BlockPos blockPos) { + return this.level.getBlockState(blockPos.offset(this.center)); + } + + @Override + public FluidState getFluidState(final BlockPos blockPos) { + return this.level.getFluidState(blockPos.offset(this.center)); + } + + @Override + public List getEntities(@Nullable final Entity entity, final AABB aABB, final Predicate predicate) { + return this.level.getEntities(entity, aABB.move(this.center.getX(), this.center.getY(), this.center.getZ()), predicate); + } + + @Override + public List getEntities(final EntityTypeTest entityTypeTest, final AABB aABB, final Predicate predicate) { + return this.level.getEntities(entityTypeTest, aABB.move(this.center.getX(), this.center.getY(), this.center.getZ()), predicate); + } + + @Override + public List players() { + return this.level.players(); + } + + @Override + public @Nullable ChunkAccess getChunk(final int i, final int j, final ChunkStatus chunkStatus, final boolean bl) { + return this.level.getChunk(i + this.centerChunk.x, j + this.centerChunk.z, chunkStatus, bl); + } + + @Override + public long nextSubTickCount() { + return this.level.nextSubTickCount(); + } + + @Override + public LevelTickAccess getBlockTicks() { + return this.level.getBlockTicks(); + } + + @Override + public LevelTickAccess getFluidTicks() { + return this.level.getFluidTicks(); + } + + @Override + public LevelData getLevelData() { + return this.level.getLevelData(); + } + + @Override + public DifficultyInstance getCurrentDifficultyAt(final BlockPos blockPos) { + return this.level.getCurrentDifficultyAt(blockPos.offset(this.center)); + } + + @Override + public @Nullable MinecraftServer getServer() { + return this.level.getServer(); + } + + @Override + public ChunkSource getChunkSource() { + return this.level.getChunkSource(); + } + + @Override + public boolean hasChunk(final int i, final int j) { + return this.level.hasChunk(i + this.centerChunk.x, j + this.centerChunk.z); + } + + @Override + public RandomSource getRandom() { + return this.level.getRandom(); + } + + @Override + public void playSound(@Nullable final Player player, final BlockPos blockPos, final SoundEvent soundEvent, final SoundSource soundSource, final float f, final float g) { + this.level.playSound(player, blockPos.offset(this.center), soundEvent, soundSource, f, g); + } + + @Override + public void addParticle(final ParticleOptions particleOptions, final double d, final double e, final double f, final double g, final double h, final double i) { + this.level.addParticle(particleOptions, d + this.center.getX(), e + this.center.getY(), f + this.center.getZ(), g, h, i); + } + + @Override + public void levelEvent(@Nullable final Player player, final int i, final BlockPos blockPos, final int j) { + this.level.levelEvent(player, i, blockPos.offset(this.center), j); + } + + @Override + public void gameEvent(final Holder holder, final Vec3 vec3, final GameEvent.Context context) { + this.level.gameEvent(holder, vec3, context); + } + + @Override + public int getHeight(final Heightmap.Types types, final int i, final int j) { + return this.level.getHeight(types, i + this.center.getX(), j + this.center.getZ()); + } + + @Override + public int getSkyDarken() { + return this.level.getSkyDarken(); + } + + @Override + public BiomeManager getBiomeManager() { + return this.level.getBiomeManager(); + } + + @Override + public Holder getUncachedNoiseBiome(final int i, final int j, final int k) { + return this.level.getUncachedNoiseBiome(i + this.center.getX(), j + this.center.getY(), k + this.center.getZ()); + } + + @Override + public boolean isClientSide() { + return this.level.isClientSide(); + } + + /** + * @deprecated + */ + @Override + @Deprecated + public int getSeaLevel() { + return this.level.getSeaLevel(); + } + + @Override + public DimensionType dimensionType() { + return this.level.dimensionType(); + } + + @Override + public RegistryAccess registryAccess() { + return this.level.registryAccess(); + } + + @Override + public FeatureFlagSet enabledFeatures() { + return this.level.enabledFeatures(); + } + + @Override + public boolean isStateAtPosition(final BlockPos blockPos, final Predicate predicate) { + return this.level.isStateAtPosition(blockPos.offset(this.center), predicate); + } + + @Override + public boolean isFluidAtPosition(final BlockPos blockPos, final Predicate predicate) { + return this.level.isFluidAtPosition(blockPos.offset(this.center), predicate); + } + + @Override + public boolean setBlock(final BlockPos blockPos, final BlockState blockState, final int i, final int j) { + return this.level.setBlock(blockPos.offset(this.center), blockState, i, j); + } + + @Override + public boolean removeBlock(final BlockPos blockPos, final boolean bl) { + return this.level.removeBlock(blockPos.offset(this.center), bl); + } + + @Override + public boolean destroyBlock(final BlockPos blockPos, final boolean bl, @Nullable final Entity entity, final int i) { + return this.level.destroyBlock(blockPos.offset(this.center), bl, entity, i); + } + + @Override + public ServerLevel getLevel() { + return (ServerLevel) this.level; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.java new file mode 100644 index 0000000..96fe38f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.sublevel.plot; + +/** + * A chunk section that contains auxiliary data for managing sub-level splitting + */ +public class HeatDataChunkSection { + + /** + * The number of heatmap data points + */ + public static final int SIZE = 16 * 16 * 16; + + /** + * The data points + */ + private final short[] data = new short[SIZE]; + + /** + * Gets the index of a data point at a position local to the section + */ + public static int getIndex(final int x, final int y, final int z) { + return (y << 8) | (z << 4) | x; + } + + /** + * Gets the data point at a position local to the section + */ + public short get(final int x, final int y, final int z) { + return this.data[getIndex(x, y, z)]; + } + + /** + * Sets the data point at a position local to the section + */ + public void set(final int x, final int y, final int z, final short value) { + this.data[getIndex(x, y, z)] = value; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/LevelPlot.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/LevelPlot.java new file mode 100644 index 0000000..272b8be --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/LevelPlot.java @@ -0,0 +1,440 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelReactionWheel; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.*; +import net.minecraft.core.registries.Registries; +import net.minecraft.resources.ResourceKey; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.biome.Biomes; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import net.minecraft.world.level.chunk.PalettedContainer; +import net.minecraft.world.level.chunk.UpgradeData; +import net.minecraft.world.level.lighting.LevelLightEngine; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.ticks.LevelChunkTicks; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3dc; + +import java.util.*; + +/** + * An allocated & reserved space in a level belonging to a {@link SubLevel}, holding its own chunk grid. + */ +public abstract class LevelPlot { + + /** + * The minimum chunk X and Z coordinates of the plot, in units of {@code 1 << logSize} chunks. + *

+ * Ex. a plot with {@code pos = (0, 0)} and a log size of 4 has its chunks in the range {@code [0, 16)}. + */ + public final ChunkPos plotPos; + + /** + * The plotgrid containing this plot. + */ + protected final SubLevelContainer container; + + /** + * The log_2 of the side length of a plot. + */ + protected final int logSize; + + /** + * The chunk storage for this plot. + */ + private final PlotChunkHolder[] chunks; + + /** + * The sub-level using this plot. + */ + private final @NotNull SubLevel subLevel; + + /** + * All loaded chunkholders in this plot. + */ + private final List loadedChunks = new ObjectArrayList<>(); + + /** + * All block entity actors within this plot + */ + protected final Object2ObjectOpenHashMap blockEntityActors = new Object2ObjectOpenHashMap<>(); + + /** + * All block entity reaction wheels within this plot + */ + private final Object2ObjectOpenHashMap blockEntityReactionWheels = new Object2ObjectOpenHashMap<>(); + /** + * If the plot should expand and add new chunks when blocks reach the edge of existing chunks. + */ + protected boolean expandPlotIfNecessary = true; + /** + * The local, block-aligned, and inclusive bounding box of this sub-level. + */ + @Nullable + protected BoundingBox3i localBounds = null; + /** + * The biome for the whole plot + */ + protected ResourceKey biome = Biomes.PLAINS; + + /** + * Creates a new plot at the given plot coordinate. + * + * @param container the parent plot container of this level plot + * @param x the global X coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param z the global Z coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param logSize the log_2 of the side length of a plot + * @param subLevel the sub-level using this plot + */ + public LevelPlot(final SubLevelContainer container, final int x, final int z, final int logSize, final SubLevel subLevel) { + this.container = container; + this.plotPos = new ChunkPos(x, z); + this.logSize = logSize; + this.chunks = new PlotChunkHolder[(1 << logSize) * (1 << logSize)]; + this.subLevel = subLevel; + } + + /** + * Ticks this plot, running lighting updates + */ + public void tick() { + + } + + /** + * @return a {@link LevelAccessor} for this plot centered with 0, 0, 0 at {@link LevelPlot#getCenterBlock()}. + */ + public EmbeddedPlotLevelAccessor getEmbeddedLevelAccessor() { + return new EmbeddedPlotLevelAccessor(this); + } + + /** + * @return the center block position in the plot + */ + public BlockPos getCenterBlock() { + // TODO make this the actual center + final ChunkPos centerChunk = this.getCenterChunk(); + return new BlockPos(centerChunk.getMinBlockX() + 8, 128, centerChunk.getMinBlockZ() + 8); + } + + /** + * Adds a chunk in the plotgrid at the given global chunk position. + * + * @param pos the global chunk position + */ + protected void newChunk(final ChunkPos pos, final LevelChunk chunk, final boolean initializeLighting) { + final ChunkPos local = this.toLocal(pos); + + if (this.getChunkHolder(local) != null) { + throw new IllegalStateException("Chunk already exists at %s".formatted(pos)); + } + + final PlotChunkHolder holder = PlotChunkHolder.create(chunk.getLevel(), pos, this.getLightEngine(), chunk); + this.addChunkHolder(local, holder, initializeLighting); + } + + /** + * Returns the lighting engine this sub-level should use. + * This is done due to {@link dev.ryanhcode.sable.sublevel.ServerSubLevel ServerSubLevels} having their own lighting engine, + * @return the lighting engine for this plot, or null if not set + */ + public abstract LevelLightEngine getLightEngine(); + + /** + * Adds a new, empty chunk at the given global chunk position, and initializes lighting for it. + */ + public void newEmptyChunk(final ChunkPos pos) { + final Level level = this.container.getLevel(); + + final int sectionCount = level.getSectionsCount(); + final LevelChunkSection[] sections = new LevelChunkSection[sectionCount]; + + for (int i = 0; i < sectionCount; ++i) { + final Registry biomeRegistry = level.registryAccess().registryOrThrow(Registries.BIOME); + final PalettedContainer states = new PalettedContainer(Block.BLOCK_STATE_REGISTRY, Blocks.AIR.defaultBlockState(), PalettedContainer.Strategy.SECTION_STATES); + final PalettedContainer> biomes = new PalettedContainer(biomeRegistry.asHolderIdMap(), biomeRegistry.getHolderOrThrow(this.biome), PalettedContainer.Strategy.SECTION_BIOMES); + + sections[i] = new LevelChunkSection(states, biomes); + } + + final LevelChunk chunk = new LevelChunk(level, pos, UpgradeData.EMPTY, new LevelChunkTicks<>(), new LevelChunkTicks<>(), 0L, sections, null, null); + this.newChunk(pos, chunk, true); + } + + + /** + * @return the sub-level using this plot. + */ + public SubLevel getSubLevel() { + return this.subLevel; + } + + /** + * @return if a point is inside the plot. + */ + public boolean contains(final double x, final double z) { + final int logBlockSize = this.logSize + SectionPos.SECTION_BITS; + return x >= this.plotPos.x << logBlockSize && x < (this.plotPos.x + 1) << logBlockSize + && z >= this.plotPos.z << logBlockSize && z < (this.plotPos.z + 1) << logBlockSize; + } + + /** + * @return if a vector is inside the plot. + */ + public boolean contains(final Vec3 point) { + return this.contains(point.x(), point.z()); + } + + /** + * @return if a vector is inside the plot. + */ + public boolean contains(final Vector3dc point) { + return this.contains(point.x(), point.z()); + } + + /** + * @return the minimum chunk position of the plot. + */ + public ChunkPos getChunkMin() { + return new ChunkPos(this.plotPos.x << this.logSize, this.plotPos.z << this.logSize); + } + + /** + * @return the maximum chunk position of the plot. + */ + public ChunkPos getChunkMax() { + return new ChunkPos(((this.plotPos.x + 1) << this.logSize) - 1, ((this.plotPos.z + 1) << this.logSize) - 1); + } + + /** + * @return if the given chunk is within this plot. + */ + public boolean contains(final ChunkPos chunk) { + return chunk.x >> this.logSize == this.plotPos.x && chunk.z >> this.logSize == this.plotPos.z; + } + + /** + * @return the local chunk position inside the plot for a global chunk position + */ + public ChunkPos toLocal(final ChunkPos global) { + return new ChunkPos(global.x - (this.plotPos.x << this.logSize), global.z - (this.plotPos.z << this.logSize)); + } + + /** + * @return the global chunk position for a local chunk position inside the plot + */ + public ChunkPos toGlobal(final ChunkPos local) { + return new ChunkPos(local.x + (this.plotPos.x << this.logSize), local.z + (this.plotPos.z << this.logSize)); + } + + /** + * @return the chunk holder at the local position in the plot + */ + public @Nullable PlotChunkHolder getChunkHolder(final ChunkPos local) { + if (local.x < 0 || local.x >= 1 << this.logSize || local.z < 0 || local.z >= 1 << this.logSize) { + return null; + } + + return this.chunks[local.z << this.logSize | local.x]; + } + + /** + * Sets a chunk at the local position in the plot + * + * @param localChunkPos the local chunk position in the plot + * @param holder the chunk holder to set + * @param initializeLighting if true, initializes lighting for the chunk + */ + @ApiStatus.Internal + public void addChunkHolder(final ChunkPos localChunkPos, final PlotChunkHolder holder, final boolean initializeLighting) { + if (holder == null) { + throw new IllegalArgumentException("Chunk cannot be null"); + } + + this.loadedChunks.add(holder); + this.chunks[localChunkPos.z << this.logSize | localChunkPos.x] = holder; + + this.updateBoundingBox(); + } + + /** + * @return the chunk at the local position in the plot + */ + public LevelChunk getChunk(final ChunkPos local) { + final PlotChunkHolder holder = this.getChunkHolder(local); + return holder == null ? null : holder.getChunk(); + } + + /** + * @return the chunk at the global position in the center of the plot + */ + public ChunkPos getCenterChunk() { + return new ChunkPos((this.plotPos.x << this.logSize) + (1 << (this.logSize - 1)), (this.plotPos.z << this.logSize) + (1 << (this.logSize - 1))); + } + + public Collection getLoadedChunks() { + return this.loadedChunks; + } + + /** + * Updates & rebuilds the block bounding box of this plot. + */ + public void updateBoundingBox() { + if (this.subLevel.getLevel().isClientSide) { + return; + } + + final BoundingBox3i previousBounds = this.localBounds; + this.localBounds = null; + + final BoundingBox3i temp = new BoundingBox3i(0, 0, 0, 0, 0, 0); + for (final PlotChunkHolder chunk : this.loadedChunks) { + final ChunkPos pos = chunk.getPos(); + + final BoundingBox3ic chunkLocalBounds = chunk.getBoundingBox(); + + if (chunkLocalBounds == null) { + continue; + } + + final BoundingBox3i chunkBounds = chunkLocalBounds.move(pos.getMinBlockX(), 0, pos.getMinBlockZ(), temp); + + if (chunkBounds != null) { + if (this.localBounds == null) { + this.localBounds = new BoundingBox3i(chunkBounds); + } else { + this.localBounds = this.localBounds.expandTo(chunkBounds, this.localBounds); + } + } + } + + if (!Objects.equals(previousBounds, this.localBounds)) { + this.subLevel.onPlotBoundsChanged(); + } + } + + /** + * @return the block-aligned, and inclusive bounding box of sub-level, or the empty box if not set. + */ + public BoundingBox3ic getBoundingBox() { + return this.localBounds != null ? this.localBounds : BoundingBox3i.EMPTY; + } + + /** + * Sets the local bounding box. + * + * @param bounds the new bounding box + */ + public void setBoundingBox(final BoundingBox3ic bounds) { + if (this.localBounds == null) { + this.localBounds = new BoundingBox3i(bounds); + } else { + this.localBounds.set(bounds); + } + } + + /** + * Removes all chunks from this plot. + */ + public void onRemove() { + for (final PlotChunkHolder chunk : this.loadedChunks) { + final LevelChunk levelChunk = chunk.getChunk(); + assert levelChunk != null; + + // TODO: neo & fabric chunk unload events + levelChunk.setLoaded(false); + + this.onRemoveChunkHolder(levelChunk); + } + + this.loadedChunks.clear(); + this.localBounds = null; + } + + protected abstract void onRemoveChunkHolder(final LevelChunk levelChunk); + + /** + * Expands the plot if necessary to include the given block and adjacent neighbors + */ + public void expandIfNecessary(final BlockPos blockPos) { + if (!this.expandPlotIfNecessary) { + return; + } + + for (final Direction direction : Direction.values()) { + // One block of margin to prevent black face lighting at the edges of chunks + final BlockPos offsetPos = blockPos.relative(direction, 2); + + final ChunkPos globalChunk = new ChunkPos(offsetPos); + + if (this.getChunk(this.toLocal(globalChunk)) == null) { + // Add the chunk if it's missing + this.newEmptyChunk(globalChunk); + } + } + } + + + /** + * Handles a change in block-state in the plot at global block position x, y, z. + * + * @param state the new block-state + */ + public void onBlockChange(final BlockPos pos, final BlockState state) { + final Level level = this.subLevel.getLevel(); + + final BlockEntity blockEntity = level.getBlockEntity(pos); + final BlockEntitySubLevelActor actor = blockEntity instanceof BlockEntitySubLevelActor ? (BlockEntitySubLevelActor) blockEntity : null; + + if (actor != null) { + this.blockEntityActors.put(pos, actor); + } else { + this.blockEntityActors.remove(pos); + } + + if (blockEntity instanceof final BlockEntitySubLevelReactionWheel reactionWheel) { + this.blockEntityReactionWheels.put(pos, reactionWheel); + + if (this.subLevel instanceof final ServerSubLevel serverSubLevel) + serverSubLevel.getReactionWheelManager().wheelChanged(pos, reactionWheel, true); + } else { + final BlockEntitySubLevelReactionWheel reactionWheel = this.blockEntityReactionWheels.remove(pos); + + if (reactionWheel != null && this.subLevel instanceof final ServerSubLevel serverSubLevel) + serverSubLevel.getReactionWheelManager().wheelChanged(pos, reactionWheel, false); + } + } + + /** + * Gets all active actors in the plot + */ + public Iterable getBlockEntityActors() { + return this.blockEntityActors.values(); + } + + public Collection getBlockEntityReactionWheels() { + return this.blockEntityReactionWheels.values(); + } + + public Set> getBlockEntityReactionWheelMap() { + return this.blockEntityReactionWheels.entrySet(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.java new file mode 100644 index 0000000..48be798 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.java @@ -0,0 +1,202 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import net.minecraft.Util; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.server.level.*; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelHeightAccessor; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import net.minecraft.world.level.chunk.status.ChunkStatus; +import net.minecraft.world.level.lighting.LevelLightEngine; +import org.jetbrains.annotations.Nullable; + +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; + +/** + * A chunk holder for chunks that live inside a {@link LevelPlot}. + */ +public class PlotChunkHolder extends ChunkHolder { + + private final LevelChunk chunk; + private final HeatDataChunkSection[] heatSections; + + private @Nullable BoundingBox3i boundingBox; + + /** + * Creates a new plot chunk holder with a level & chunk position. + * Builds a bounding box for the chunk if non-empty. + */ + public PlotChunkHolder(final LevelChunk chunk, final ChunkPos pos, final LevelHeightAccessor levelHeightAccessor, final LevelLightEngine levelLightEngine, final LevelChangeListener levelChangeListener, final PlayerProvider playerProvider) { + super(pos, ChunkLevel.ENTITY_TICKING_LEVEL, levelHeightAccessor, levelLightEngine, levelChangeListener, playerProvider); + + if (chunk == null) { + throw Util.pauseInIde(new IllegalStateException("Chunk not found in plot container")); + } + + this.chunk = chunk; + this.heatSections = new HeatDataChunkSection[chunk.getSectionsCount()]; + this.tickingChunkFuture = CompletableFuture.completedFuture(ChunkResult.of(chunk)); + this.entityTickingChunkFuture = CompletableFuture.completedFuture(ChunkResult.of(chunk)); + this.fullChunkFuture = CompletableFuture.completedFuture(ChunkResult.of(chunk)); + + if (!this.chunk.isEmpty()) { + this.buildBoundingBox(); + } + } + + /** + * Creates a new plot chunk holder with a level & chunk position. + */ + public static PlotChunkHolder create(final Level level, final ChunkPos pos, final LevelLightEngine lightEngine, final LevelChunk chunk) { + ChunkMap chunkMap = null; + + if (level.getChunkSource() instanceof final ServerChunkCache chunkCache) { + chunkMap = chunkCache.chunkMap; + } + + return new PlotChunkHolder(chunk, pos, level, lightEngine, null, chunkMap); + } + + /** + * Builds the bounding box of this chunk holder. + * TODO: avoid bulk scans like this + */ + protected void buildBoundingBox() { + this.boundingBox = null; + + final LevelChunkSection[] sections = this.chunk.getSections(); + for (int i = 0; i < sections.length; i++) { + final LevelChunkSection section = sections[i]; + final int sectionMinY = this.chunk.getSectionYFromSectionIndex(i) << 4; + + if (section != null && !section.hasOnlyAir()) { + // the section has blocks. lets find them + for (int x = 0; x < SectionPos.SECTION_SIZE; x++) { + for (int y = 0; y < SectionPos.SECTION_SIZE; y++) { + for (int z = 0; z < SectionPos.SECTION_SIZE; z++) { + if (!section.getBlockState(x, y, z).isAir()) { + if (this.boundingBox == null) { + this.boundingBox = new BoundingBox3i(x, y + sectionMinY, z, x, y + sectionMinY, z); + } else { + this.boundingBox = this.boundingBox.expandTo(x, y + sectionMinY, z, this.boundingBox); + } + } + } + } + } + } + } + } + + /** + * Handles a block change to update bounding box and collision data + */ + public void handleBlockChange(final int x, final int y, final int z, final BlockState oldState, final BlockState newState) { + if (this.chunk.getLevel().isClientSide) return; + if (oldState.isAir() && !newState.isAir()) { + // block placed, expand or create bounding box + if (this.boundingBox == null) { + this.boundingBox = new BoundingBox3i(x, y, z, x, y, z); + } else { + this.boundingBox = this.boundingBox.expandTo(x, y, z, this.boundingBox); + } + } else if (!oldState.isAir() && newState.isAir()) { + // block removed, shrink or remove bounding box + if (this.boundingBox != null) { + if ( + this.boundingBox.minX == x || + this.boundingBox.maxX == x || + this.boundingBox.minY == y || + this.boundingBox.maxY == y || + this.boundingBox.minZ == z || + this.boundingBox.maxZ == z + ) { + // TODO: do a more optimized contraction + this.buildBoundingBox(); + } + } + } + } + + @Override + public void blockChanged(final BlockPos blockPos) { + super.blockChanged(blockPos); + } + + /** + * We don't want normal future handling, so we let ourselves handle updating the futures. + */ + @Override + protected void updateFutures(final ChunkMap chunkMap, final Executor executor) { + + } + + @Override + public boolean isReadyForSaving() { + return false; + } + + public LevelChunk getChunk() { + return this.chunk; + } + + /** + * @return the bounding box of this chunk holder + */ + public BoundingBox3ic getBoundingBox() { + return this.boundingBox; + } + + @Override + public void rescheduleChunkTask(final ChunkMap chunkMap, @Nullable final ChunkStatus chunkStatus) { + // no-op, don't make generation tasks + } + + /** + * Disables saving of this chunk through the normal chunk map. + */ + @Override + public boolean wasAccessibleSinceLastSave() { + return false; + } + + @Override + public @Nullable LevelChunk getTickingChunk() { + return this.chunk; + } + + /** + * @param y the section Y + * @return the heat section at that section Y + */ + public @Nullable HeatDataChunkSection getHeatSection(final int y) { + final int index = y - this.chunk.getMinSection(); + + if (index < 0 || index >= this.heatSections.length) { + return null; + } + + return this.heatSections[index]; + } + + /** + * @param y the section Y + * @param section the heat section to set + */ + public void setHeatSection(final int y, final HeatDataChunkSection section) { + final int index = y - this.chunk.getMinSection(); + + if (index < 0 || index >= this.heatSections.length) { + return; + } + + this.heatSections[index] = section; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.java new file mode 100644 index 0000000..1bc7964 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.java @@ -0,0 +1,683 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import com.mojang.serialization.Codec; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockSubLevelLiftProvider; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.mixinterface.plot.serialization.LevelChunkTicksExtension; +import dev.ryanhcode.sable.platform.SablePlotPlatform; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.objects.*; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Holder; +import net.minecraft.core.Registry; +import net.minecraft.core.SectionPos; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.core.registries.Registries; +import net.minecraft.nbt.*; +import net.minecraft.resources.ResourceKey; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.level.FullChunkStatus; +import net.minecraft.server.level.ServerChunkCache; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.level.biome.Biome; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.*; +import net.minecraft.world.level.chunk.storage.ChunkSerializer; +import net.minecraft.world.level.entity.EntitySection; +import net.minecraft.world.level.entity.PersistentEntitySectionManager; +import net.minecraft.world.level.levelgen.Heightmap; +import net.minecraft.world.level.lighting.LevelLightEngine; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.ticks.LevelChunkTicks; + +import java.util.EnumSet; +import java.util.List; +import java.util.Map; +import java.util.stream.Stream; + +/** + * An allocated & reserved space in a level belonging to a {@link SubLevel}, holding its own chunk grid. + */ +public class ServerLevelPlot extends LevelPlot { + protected static final int DATA_VERSION = 1; + private static final Codec> BLOCK_STATE_CODEC = PalettedContainer.codecRW( + Block.BLOCK_STATE_REGISTRY, BlockState.CODEC, PalettedContainer.Strategy.SECTION_STATES, Blocks.AIR.defaultBlockState() + ); + + /** + * The light engine for this plot + */ + protected final LevelLightEngine lightEngine; + + /** + * All kinematic contraption children + */ + private final ObjectSet contraptions = new ObjectOpenHashSet<>(); + + /** + * All LiftProviders within this plot. + */ + private final Object2ObjectMap liftProviders = new Object2ObjectOpenHashMap<>(); + + /** + * Creates a new plot at the given plot coordinate. + * + * @param plotContainer the parent plot container of this level plot + * @param x the global X coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param z the global Z coordinate of the plot, in units of {@code 1 << logSize} chunks + * @param logSize the log_2 of the side length of a plot + * @param subLevel the sub-level using this plot + */ + public ServerLevelPlot(final SubLevelContainer plotContainer, final int x, final int z, final int logSize, final ServerSubLevel subLevel) { + super(plotContainer, x, z, logSize, subLevel); + + final Level level = subLevel.getLevel(); + final LevelLightEngine parentLightEngine = level.getLightEngine(); + final ChunkSource chunkSource = level.getChunkSource(); + this.lightEngine = new LevelLightEngine(chunkSource, parentLightEngine.blockEngine != null, parentLightEngine.skyEngine != null); + } + + /** + * Adds a kinematic contraption to this plot + */ + public void addContraption(final KinematicContraption contraption) { + this.contraptions.add(contraption); + } + + /** + * Removes a kinematic contraption from this plot + */ + public void removeContraption(final KinematicContraption contraption) { + this.contraptions.remove(contraption); + } + + /** + * @return all kinematic contraption children + */ + public ObjectCollection getContraptions() { + return this.contraptions; + } + + /** + * Logs loading errors for a plot chunk section + */ + private static void logLoadingErrors(final ChunkPos chunkPos, final int y, final String errorText) { + Sable.LOGGER.error("Recoverable errors when loading plot section [{}, {}, {}]: {}", chunkPos.x, y, chunkPos.z, errorText); + } + + /** + * Ticks this plot, running lighting updates + */ + @Override + public void tick() { + do { + this.lightEngine.runLightUpdates(); + } while (this.lightEngine.hasLightWork()); + + this.contraptions.removeIf(contraption -> !contraption.sable$isValid()); + } + + /** + * @return the light engine responsible for lighting this plot + */ + @Override + public LevelLightEngine getLightEngine() { + return this.lightEngine; + } + + @Override + protected void onRemoveChunkHolder(final LevelChunk levelChunk) { + final ChunkPos pos = levelChunk.getPos(); + final ServerLevel serverLevel = this.getSubLevel().getLevel(); + + if (serverLevel.getChunkSource() instanceof final ServerChunkCache cache) { + cache.chunkMap.updatingChunkMap.remove(pos.toLong()); + cache.chunkMap.modified = true; + } + + levelChunk.setLoaded(false); + + // TODO: This clears block entities in the chunk, which calls a neoforge extension that notifies block entities they're unloaded and not deleted. + // Should we be calling this extension? + serverLevel.unload(levelChunk); + + this.lightEngine.retainData(pos, false); + this.lightEngine.setLightEnabled(pos, false); + for (int idx = this.lightEngine.getMinLightSection(); idx < this.lightEngine.getMaxLightSection(); idx++) { + this.lightEngine.queueSectionData(LightLayer.BLOCK, SectionPos.of(pos, idx), null); + this.lightEngine.queueSectionData(LightLayer.SKY, SectionPos.of(pos, idx), null); + } + + for (int idx = serverLevel.getMinSection(); idx < serverLevel.getMaxSection(); idx++) { + this.lightEngine.updateSectionStatus(SectionPos.of(pos, idx), true); + } + + serverLevel.entityManager.updateChunkStatus(pos, FullChunkStatus.INACCESSIBLE); + } + + public void setBiome(final ResourceKey biome) { + this.biome = biome; + } + + private void initializeLight(final LevelChunk chunk) { + final LevelChunkSection[] alevelchunksection = chunk.getSections(); + final Level level = chunk.getLevel(); + final ChunkPos pos = chunk.getPos(); + final LevelLightEngine lightEngine = this.lightEngine; + + for (int i = 0; i < chunk.getSectionsCount(); i++) { + final LevelChunkSection levelchunksection = alevelchunksection[i]; + if (!levelchunksection.hasOnlyAir()) { + this.lightEngine.updateSectionStatus(SectionPos.of(pos, level.getSectionYFromSectionIndex(i)), false); + } + } + + lightEngine.setLightEnabled(pos, chunk.isLightCorrect()); + lightEngine.retainData(pos, false); + } + + private void correctLight(final LevelChunk chunk) { + if (chunk.isLightCorrect()) { + return; + } + + this.lightEngine.propagateLightSources(chunk.getPos()); + chunk.setLightCorrect(true); + } + + private void lightChunk(final LevelChunk chunk) { + chunk.initializeLightSources(); + this.initializeLight(chunk); + this.correctLight(chunk); + } + + /** + * Sets a chunk at the local position in the plot + * + * @param localChunkPos the local chunk position in the plot + * @param holder the chunk holder to add + * @param initializeLighting whether to initialize lighting for the chunk + */ + @Override + public void addChunkHolder(final ChunkPos localChunkPos, final PlotChunkHolder holder, final boolean initializeLighting) { + final ServerLevel level = this.getSubLevel().getLevel(); + + final ChunkPos globalChunkPos = this.toGlobal(localChunkPos); + final LevelChunk chunk = holder.getChunk(); + + // Update the chunk map if one exists + if (level.getChunkSource() instanceof final ServerChunkCache cache) { + cache.chunkMap.updatingChunkMap.put(globalChunkPos.toLong(), holder); + cache.chunkMap.modified = true; + } + + super.addChunkHolder(localChunkPos, holder, initializeLighting); + + chunk.setLightCorrect(false); + // light chunk + if (initializeLighting) { + this.lightChunk(chunk); + } + + chunk.setFullStatus(holder::getFullStatus); + chunk.runPostLoad(); + chunk.setLoaded(true); + chunk.registerAllBlockEntitiesAfterLevelLoad(); + chunk.registerTickContainerInLevel(level); + + level.entityManager.updateChunkStatus(chunk.getPos(), FullChunkStatus.ENTITY_TICKING); + level.getChunkSource().chunkMap.onFullChunkStatusChange(globalChunkPos, FullChunkStatus.ENTITY_TICKING); + + do { + this.lightEngine.runLightUpdates(); + } while (this.lightEngine.hasLightWork()); + + final Iterable players = this.container.getPlayersTracking(globalChunkPos); + + for (final ServerPlayer player : players) { + SubLevelPlayerChunkSender.sendChunk(player.connection::send, this.lightEngine, chunk); + SubLevelPlayerChunkSender.sendChunkPoiData(level, chunk); + } + } + + + /** + * Deletes all entities in the plot + */ + public void kickAllEntities() { + final ServerSubLevel subLevel = this.getSubLevel(); + final PersistentEntitySectionManager manager = subLevel.getLevel().entityManager; + for (final PlotChunkHolder chunk : this.getLoadedChunks()) { + final Stream> sections = manager.sectionStorage.getExistingSectionsInChunk(chunk.getPos().toLong()); + + for (final EntitySection section : sections.toList()) { + final List entities = section.getEntities().toList(); + + for (final Entity entity : entities) { + if (entity.getType().is(SableTags.DESTROY_WITH_SUB_LEVEL)) { + entity.remove(Entity.RemovalReason.KILLED); + } else { + EntitySubLevelUtil.kickEntity(subLevel, entity); + final ServerLevel level = subLevel.getLevel(); + + entity.levelCallback.onRemove(Entity.RemovalReason.CHANGED_DIMENSION); + level.addDuringTeleport(entity); + } + + section.remove(entity); + } + } + } + } + + /** + * Destroys all blocks within the plot + */ + public void destroyAllBlocks() { + if (this.localBounds == null || this.localBounds == BoundingBox3i.EMPTY) { + return; + } + + final Level level = this.getSubLevel().getLevel(); + final BoundingBox3i bounds = this.localBounds; + + for (int x = bounds.minX(); x <= bounds.maxX(); x++) { + for (int y = bounds.minY(); y <= bounds.maxY(); y++) { + for (int z = bounds.minZ(); z <= bounds.maxZ(); z++) { + final BlockPos pos = new BlockPos(x, y, z); + + level.destroyBlock(pos, true); + } + } + } + } + + /** + * Adds a new, empty chunk at the given global chunk position. + * Does not initialize light, as this chunk is expected to be populated and for light to be initialized afterwards. + */ + private void newNonLitChunk(final ChunkPos pos) { + final Level level = this.container.getLevel(); + + final int sectionCount = level.getSectionsCount(); + final LevelChunkSection[] sections = new LevelChunkSection[sectionCount]; + + for (int i = 0; i < sectionCount; ++i) { + sections[i] = new LevelChunkSection(level.registryAccess().registryOrThrow(Registries.BIOME)); + } + + final LevelChunk chunk = new LevelChunk(level, pos, UpgradeData.EMPTY, new LevelChunkTicks<>(), new LevelChunkTicks<>(), 0L, sections, null, null); + this.newChunk(pos, chunk, false); + } + + /** + * Serializes this plot & all loaded chunks to an NBT tag + */ + public CompoundTag save() { + final CompoundTag tag = new CompoundTag(); + tag.putInt("plot_x", this.plotPos.x - this.container.getOrigin().x); + tag.putInt("plot_z", this.plotPos.z - this.container.getOrigin().y); + tag.putInt("log_size", this.logSize); + tag.putString("biome", this.biome.location().toString()); + tag.putInt("data_version", DATA_VERSION); + + final ServerLevel level = this.getSubLevel().getLevel(); + + final CompoundTag chunks = new CompoundTag(); + for (final PlotChunkHolder chunkHolder : this.getLoadedChunks()) { + final ChunkPos global = chunkHolder.getPos(); + final ChunkPos local = this.toLocal(global); + final LevelChunk chunk = chunkHolder.getChunk(); + + final CompoundTag chunkTag = new CompoundTag(); + final CompoundTag sectionsTag = new CompoundTag(); + + for (int idx = 0; idx < chunk.getSectionsCount(); idx++) { + final LevelChunkSection section = chunk.getSection(idx); + + if (section.hasOnlyAir()) { + continue; + } + + final CompoundTag sectionTag = new CompoundTag(); + sectionTag.put("block_states", BLOCK_STATE_CODEC.encodeStart(NbtOps.INSTANCE, section.getStates()).getOrThrow()); + + final SectionPos sectionPos = SectionPos.of(global, level.getSectionYFromSectionIndex(idx)); + final DataLayer blockLight = this.lightEngine.getLayerListener(LightLayer.BLOCK).getDataLayerData(sectionPos); + final DataLayer skyLight = this.lightEngine.getLayerListener(LightLayer.SKY).getDataLayerData(sectionPos); + + if (blockLight != null && !blockLight.isEmpty()) { + sectionTag.putByteArray("BlockLight", blockLight.getData()); + } + + if (skyLight != null && !skyLight.isEmpty()) { + sectionTag.putByteArray("SkyLight", skyLight.getData()); + } + + sectionsTag.put(String.valueOf(idx), sectionTag); + } + chunkTag.put("sections", sectionsTag); + + tag.putBoolean("isLightOn", chunk.isLightCorrect()); + + final ListTag blockEntitiesTag = new ListTag(); + + for (final BlockPos blockPos : chunk.getBlockEntitiesPos()) { + final CompoundTag blockEntityNBT = chunk.getBlockEntityNbtForSaving(blockPos, level.registryAccess()); + + if (blockEntityNBT != null) { + blockEntitiesTag.add(blockEntityNBT); + } + } + + chunkTag.put("block_entities", blockEntitiesTag); + + final ChunkAccess.TicksToSave ticksToSave = chunk.getTicksForSerialization(); + final long gameTime = level.getGameTime(); + chunkTag.put("block_ticks", ticksToSave.blocks().save(gameTime, block -> BuiltInRegistries.BLOCK.getKey(block).toString())); + chunkTag.put("fluid_ticks", ticksToSave.fluids().save(gameTime, fluid -> BuiltInRegistries.FLUID.getKey(fluid).toString())); + + final CompoundTag heightMapsTag = new CompoundTag(); + + for (final Map.Entry entry : chunk.getHeightmaps()) { + if (chunk.getPersistedStatus().heightmapsAfter().contains(entry.getKey())) { + heightMapsTag.put(entry.getKey().getSerializationKey(), new LongArrayTag(entry.getValue().getRawData())); + } + } + + chunkTag.put("heightmaps", heightMapsTag); + + SablePlotPlatform.INSTANCE.writeLightData(tag, level.registryAccess(), chunk); + SablePlotPlatform.INSTANCE.writeChunkAttachments(tag, level.registryAccess(), chunk); + + chunks.put(String.valueOf(ChunkPos.asLong(local.x, local.z)), chunkTag); + } + + tag.put("chunks", chunks); + return tag; + } + + /** + * Deserializes a plot from an NBT tag + */ + public void load(final CompoundTag tag) { + final int logSize = tag.getInt("log_size"); + if (logSize != this.logSize) { + throw new IllegalArgumentException("Log size mismatch"); + } + + final int dataVersion = tag.contains("data_version") ? tag.getInt("data_version") : 0; + if (dataVersion < 0 || dataVersion > DATA_VERSION) { + throw new IllegalArgumentException("Unsupported version: " + dataVersion); + } + + final ServerSubLevel subLevel = this.getSubLevel(); + final ServerLevel level = subLevel.getLevel(); + + if (tag.contains("biome")) { + final ResourceLocation location = ResourceLocation.tryParse(tag.getString("biome")); + + if (location != null) { + this.biome = ResourceKey.create(Registries.BIOME, location); + } + } + + final CompoundTag chunks = tag.getCompound("chunks"); + for (final String key : chunks.getAllKeys()) { + final long chunkPos = Long.parseLong(key); + + final int x = ChunkPos.getX(chunkPos); + final int z = ChunkPos.getZ(chunkPos); + final ChunkPos local = new ChunkPos(x, z); + final ChunkPos global = this.toGlobal(local); + + final CompoundTag chunkTag = chunks.getCompound(key); + final CompoundTag sectionsTag = chunkTag.getCompound("sections"); + + this.newNonLitChunk(global); + final LevelChunk chunk = this.getChunk(local); + + boolean hasLit = false; + for (final String sectionKey : sectionsTag.getAllKeys()) { + final int yIndex = Integer.parseInt(sectionKey); + + + final LevelChunkSection[] sections = chunk.getSections(); + + final PalettedContainer palettedContainer; + final CompoundTag sectionTag = sectionsTag.getCompound(sectionKey); + + palettedContainer = BLOCK_STATE_CODEC.parse(NbtOps.INSTANCE, sectionTag.getCompound("block_states")) + .promotePartial(string -> logLoadingErrors(new ChunkPos(chunkPos), chunk.getSectionYFromSectionIndex(yIndex), string)) + .getOrThrow(ChunkSerializer.ChunkReadException::new); + + final Registry biomeRegistry = level.registryAccess().registryOrThrow(Registries.BIOME); + final PalettedContainer> biomeContainer = new PalettedContainer<>(biomeRegistry.asHolderIdMap(), biomeRegistry.getHolderOrThrow(this.biome), PalettedContainer.Strategy.SECTION_BIOMES); + + sections[yIndex] = new LevelChunkSection(palettedContainer, biomeContainer); + + final SectionPos sectionPos = SectionPos.of(global, level.getSectionYFromSectionIndex(yIndex)); + + final boolean hasBlockLight = this.lightEngine.blockEngine != null && sectionTag.contains("BlockLight", Tag.TAG_BYTE_ARRAY); + final boolean hasSkyLight = this.lightEngine.skyEngine != null && level.dimensionType().hasSkyLight() && sectionTag.contains("SkyLight", Tag.TAG_BYTE_ARRAY); + if (hasBlockLight || hasSkyLight) { + if (!hasLit) { + this.lightEngine.retainData(global, true); + hasLit = true; + } + + if (hasBlockLight) { + this.lightEngine.queueSectionData(LightLayer.BLOCK, sectionPos, new DataLayer(sectionTag.getByteArray("BlockLight"))); + } + + if (hasSkyLight) { + this.lightEngine.queueSectionData(LightLayer.SKY, sectionPos, new DataLayer(sectionTag.getByteArray("SkyLight"))); + } + } + } + + if (dataVersion >= 0) { + final LevelChunkTicks blockTicks = LevelChunkTicks.load( + chunkTag.getList("block_ticks", Tag.TAG_COMPOUND), id -> BuiltInRegistries.BLOCK.getOptional(ResourceLocation.tryParse(id)), global + ); + final LevelChunkTicks fluidTicks = LevelChunkTicks.load( + chunkTag.getList("fluid_ticks", Tag.TAG_COMPOUND), id -> BuiltInRegistries.FLUID.getOptional(ResourceLocation.tryParse(id)), global + ); + + //noinspection unchecked + ((LevelChunkTicksExtension) chunk.getBlockTicks()).sable$copy(blockTicks); + //noinspection unchecked + ((LevelChunkTicksExtension) chunk.getFluidTicks()).sable$copy(fluidTicks); + + final CompoundTag heightMapsTag = chunkTag.getCompound("heightmaps"); + final EnumSet enumset = EnumSet.noneOf(Heightmap.Types.class); + + for (final Heightmap.Types heightMapType : chunk.getPersistedStatus().heightmapsAfter()) { + final String heightMapKey = heightMapType.getSerializationKey(); + if (heightMapsTag.contains(heightMapKey, Tag.TAG_LONG_ARRAY)) { + chunk.setHeightmap(heightMapType, heightMapsTag.getLongArray(heightMapKey)); + } else { + enumset.add(heightMapType); + } + } + + Heightmap.primeHeightmaps(chunk, enumset); + + SablePlotPlatform.INSTANCE.readLightData(chunkTag, level.registryAccess(), chunk); + + chunk.setLightCorrect(chunkTag.getBoolean("isLightOn")); + } + + // Setup lighting + this.lightChunk(chunk); + + SablePlotPlatform.INSTANCE.readChunkAttachments(chunkTag, level.registryAccess(), chunk); + + final ListTag blockEntitiesTag = chunkTag.getList("block_entities", 10); + + // Add block entities + for (int i = 0; i < blockEntitiesTag.size(); i++) { + final CompoundTag blockEntityTag = blockEntitiesTag.getCompound(i); + final boolean keepBlockEntityPacked = blockEntityTag.getBoolean("keepPacked"); + + if (keepBlockEntityPacked) { + chunk.setBlockEntityNbt(blockEntityTag); + } else { + final BlockPos blockPos = BlockEntity.getPosFromTag(blockEntityTag); + final BlockEntity blockEntity = BlockEntity.loadStatic(blockPos, chunk.getBlockState(blockPos), blockEntityTag, level.registryAccess()); + if (blockEntity != null) { + chunk.setBlockEntity(blockEntity); + } + } + } + + chunk.registerAllBlockEntitiesAfterLevelLoad(); + level.startTickingChunk(chunk); + SablePlotPlatform.INSTANCE.postLoad(chunkTag, chunk); + } + + // Before we send the chunks, let's ensure our lighting data is complete + do { + this.lightEngine.runLightUpdates(); + } while (this.lightEngine.hasLightWork()); + + final SubLevelPhysicsSystem physicsSystem = ((ServerSubLevelContainer) this.container).physicsSystem(); + + final BlockPos.MutableBlockPos globalBlockPos = new BlockPos.MutableBlockPos(); + + // go through them all again + for (final String key : chunks.getAllKeys()) { + final long chunkPos = Long.parseLong(key); + + final int x = ChunkPos.getX(chunkPos); + final int z = ChunkPos.getZ(chunkPos); + final ChunkPos local = new ChunkPos(x, z); + final ChunkPos global = this.toGlobal(local); + + final PlotChunkHolder chunkHolder = this.getChunkHolder(local); + final LevelChunk chunk = this.getChunk(local); + final LevelChunkSection[] levelChunkSections = chunk.getSections(); + + final Iterable players = this.container.getPlayersTracking(global); + for (final ServerPlayer player : players) { + SubLevelPlayerChunkSender.sendChunk(player.connection::send, this.lightEngine, chunk); + SubLevelPlayerChunkSender.sendChunkPoiData(level, chunk); + } + + for (int i = 0; i < chunk.getSectionsCount(); i++) { + final LevelChunkSection section = levelChunkSections[i]; + if (!section.hasOnlyAir()) { + final int sectionY = chunk.getSectionYFromSectionIndex(i); + final int chunkMinX = global.getMinBlockX(); + final int chunkMinY = sectionY << 4; + final int chunkMinZ = global.getMinBlockZ(); + + final boolean expandPlotBackup = this.expandPlotIfNecessary; + + // We don't want to expand the plot while loading it + this.expandPlotIfNecessary = false; + + final BlockState airState = Blocks.AIR.defaultBlockState(); + for (int xOff = 0; xOff < 16; xOff++) { + for (int yOff = 0; yOff < 16; yOff++) { + for (int zOff = 0; zOff < 16; zOff++) { + final BlockState state = section.getBlockState(xOff, yOff, zOff); + + if (!state.isAir()) { + globalBlockPos.set(xOff + chunkMinX, yOff + chunkMinY, zOff + chunkMinZ); + final BlockPos immutable = globalBlockPos.immutable(); + + chunkHolder.handleBlockChange(xOff, chunkMinY + yOff, zOff, airState, state); + subLevel.getHeatMapManager().onSolidAdded(immutable); + subLevel.getFloatingBlockController().queueAddFloatingBlock(state, immutable); + physicsSystem.updateMassDataFromBlockChange(subLevel, globalBlockPos, airState, state, false); + this.onBlockChange(immutable, state); + } + } + } + } + + // upload + this.expandPlotIfNecessary = expandPlotBackup; + } + } + } + + this.updateBoundingBox(); + subLevel.updateMergedMassData(1.0f); + physicsSystem.getPipeline().onStatsChanged(subLevel); + + for (final String key : chunks.getAllKeys()) { + final long chunkPos = Long.parseLong(key); + + final int x = ChunkPos.getX(chunkPos); + final int z = ChunkPos.getZ(chunkPos); + final ChunkPos local = new ChunkPos(x, z); + final ChunkPos global = this.toGlobal(local); + + final LevelChunk chunk = this.getChunk(local); + final LevelChunkSection[] levelChunkSections = chunk.getSections(); + + for (int i = 0; i < chunk.getSectionsCount(); i++) { + final LevelChunkSection section = levelChunkSections[i]; + if (!section.hasOnlyAir()) { + final int sectionY = chunk.getSectionYFromSectionIndex(i); + physicsSystem.getTicketManager().addTicketForSection(level, SectionPos.of(global.x, sectionY, global.z)); + physicsSystem.getPipeline().handleChunkSectionAddition(section, global.x, sectionY, global.z, true); + } + } + } + + subLevel.updateMergedMassData(1.0f); + physicsSystem.getPipeline().onStatsChanged(subLevel); + + } + + /** + * Handles a change in block-state in the plot at global block position x, y, z. + * + * @param state the new block-state + */ + @Override + public void onBlockChange(final BlockPos pos, final BlockState state) { + super.onBlockChange(pos, state); + + this.liftProviders.remove(pos); + + if (state.getBlock() instanceof final BlockSubLevelLiftProvider prov) { + this.liftProviders.put(pos, new BlockSubLevelLiftProvider.LiftProviderContext(pos, state, Vec3.atLowerCornerOf(prov.sable$getNormal(state).getNormal()))); + } + } + + /** + * Gets all lift providers + */ + public ObjectCollection getLiftProviders() { + return this.liftProviders.values(); + } + + /** + * @return the sub-level using this plot. + */ + @Override + public ServerSubLevel getSubLevel() { + return (ServerSubLevel) super.getSubLevel(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.java new file mode 100644 index 0000000..da36c45 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.sublevel.plot; + +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.network.protocol.game.ClientboundLevelChunkWithLightPacket; +import net.minecraft.network.protocol.game.DebugPackets; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.lighting.LevelLightEngine; + +import java.util.function.Consumer; + +public class SubLevelPlayerChunkSender { + + /** + * A version of {@link net.minecraft.server.network.PlayerChunkSender} that uses the plots light engine + */ + public static void sendChunk(final Consumer> listener, final LevelLightEngine lightEngine, final LevelChunk chunk) { + listener.accept(new ClientboundLevelChunkWithLightPacket(chunk, lightEngine, null, null)); + } + + /** + * A version of {@link net.minecraft.server.network.PlayerChunkSender} that uses the plots light engine + */ + public static void sendChunkPoiData(final ServerLevel level, final LevelChunk chunk) { + final ChunkPos chunkPos = chunk.getPos(); + DebugPackets.sendPoiPacketsForChunk(level, chunkPos); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.java new file mode 100644 index 0000000..c37a15a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.sublevel.plot.heat; + +public enum HeatMapPropagationState { + CLEARING, + FILLING, + IDLE +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.java new file mode 100644 index 0000000..7cce3aa --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.java @@ -0,0 +1,392 @@ +package dev.ryanhcode.sable.sublevel.plot.heat; + +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.api.SubLevelAssemblyHelper; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.plot.HeatDataChunkSection; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.ints.IntArrayList; +import it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectArraySet; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.NotNull; + +import java.util.*; + +/** + * Manages the heatmap and flood-fill for sub-level splitting + */ +public class SubLevelHeatMapManager { + + private static final Collection LISTENERS = new ObjectArraySet<>(); + + /** + * All directions to check for solid blocks in 3D (including diagonals) + */ + private static final BlockPos[] DIRECTION_OFFSETS = new BlockPos[] { + new BlockPos(1, 0, 0), + new BlockPos(-1, 0, 0), + new BlockPos(0, 1, 0), + new BlockPos(0, -1, 0), + new BlockPos(0, 0, 1), + new BlockPos(0, 0, -1), + new BlockPos(1, 1, 0), + new BlockPos(-1, -1, 0), + new BlockPos(1, -1, 0), + new BlockPos(-1, 1, 0), + new BlockPos(1, 0, 1), + new BlockPos(-1, 0, -1), + new BlockPos(1, 0, -1), + new BlockPos(-1, 0, 1), + new BlockPos(0, 1, 1), + new BlockPos(0, -1, -1), + new BlockPos(0, -1, 1), + new BlockPos(0, 1, -1) + }; + + @NotNull + private final ServerSubLevel subLevel; + + /** + * {@link BlockPos} to partial sub-level indices + */ + private final Long2IntOpenHashMap subLevelSplits = new Long2IntOpenHashMap();// + private final ObjectList floodfill = new ObjectArrayList<>(); + private final ObjectList removed = new ObjectArrayList<>(); + private final ObjectList newStarts = new ObjectArrayList<>(); + private final IntArrayList splitIndexMap = new IntArrayList(); // from partial indices to the actual indices + private HeatMapPropagationState state = HeatMapPropagationState.FILLING; + private boolean initialized = false; //set to true on the first placed block + private boolean splitComplete = false; //set to true on first completed flood-fill + private int solidCount = 0; + + public SubLevelHeatMapManager(@NotNull final ServerSubLevel subLevel) { + this.subLevel = subLevel; + } + + /** + * Ticks the heatmap manager, performing {@link SableConfig#SUB_LEVEL_SPLITTING_HEATMAP_STEPS_PER_TICK} steps + */ + public void tick() { + final int steps = SableConfig.SUB_LEVEL_SPLITTING_HEATMAP_STEPS_PER_TICK.getAsInt(); + for (int i = 0; i < steps; i++) { + if (this.step()) break; + } + } + + /** + * @return true if nothing left to do + */ + private boolean step() { + if (this.state == HeatMapPropagationState.FILLING) { + if (!this.floodfill.isEmpty()) { + final BlockPos p = new BlockPos(this.floodfill.getFirst()); + this.floodfill.removeFirst(); + if (this.heatMapContains(p)) { + final int currentHeat = this.heatMapGet(p); + for (final BlockPos dir : DIRECTION_OFFSETS) { + final BlockPos p2 = p.offset(dir); + final boolean solid = this.isSolidAt(p2); + final boolean contains = this.heatMapContains(p2); + + if (solid && !contains) { + this.heatMapSet(p2, (short) (currentHeat + 1)); + this.subLevelSplits.remove(p2.asLong()); + this.floodfill.add(p2); + } + } + } + } + if (this.floodfill.isEmpty()) { + this.splitComplete = true; + this.state = HeatMapPropagationState.CLEARING; + + // Split off separated regions! + if (!this.subLevelSplits.isEmpty()) + this.split(); + } + } + if (this.state == HeatMapPropagationState.CLEARING) { + if (!this.floodfill.isEmpty()) { + final BlockPos p = new BlockPos(this.floodfill.getFirst()); + this.floodfill.removeFirst(); + if (this.heatMapContains(p)) { + final int currentHeat = this.heatMapGet(p); + final int currentIndex = this.splitIndexMap.getInt(this.subLevelSplits.get(p.asLong())); + for (final BlockPos dir : DIRECTION_OFFSETS) { + final BlockPos p2 = p.offset(dir); + if (this.isSolidAt(p2)) { + if (this.subLevelSplits.containsKey(p2.asLong())) { + final int otherIndex = this.splitIndexMap.getInt(this.subLevelSplits.get(p2.asLong())); + if (currentIndex != otherIndex) { + // two different floodfills have collided, sacrifice the index mapping of the other one + this.splitIndexMap.set(this.subLevelSplits.get(p2.asLong()), currentIndex); + } + } + if (this.heatMapContains(p2)) { + if (this.heatMapGet(p2) > currentHeat) { + this.floodfill.add(p2); + this.subLevelSplits.put(p2.asLong(), currentIndex); + } else { + this.newStarts.add(p2); + } + } + } + } + this.heatMapRemove(p); + } + } else if (!this.removed.isEmpty()) { + for (final BlockPos index : this.removed) { + final BlockPos p = new BlockPos(index); + if (this.heatMapContains(p)) { + final int currentHeat = this.heatMapGet(p); + for (final BlockPos dir : DIRECTION_OFFSETS) { + final BlockPos p2 = p.offset(dir); + if (this.isSolidAt(p2) && this.heatMapContains(p2) && this.heatMapGet(p2) > currentHeat) { + + boolean canRemove = true; + for (final BlockPos dir2 : DIRECTION_OFFSETS) { + if (new BlockPos(-dir.getX(), -dir.getY(), -dir.getZ()).equals(dir2)) + continue; + final BlockPos p3 = p2.offset(dir2); + if (this.isSolidAt(p3) && this.heatMapContains(p3) && this.heatMapGet(p3) < this.heatMapGet(p2)) + canRemove = false; + } + if (canRemove) { + //start new floodfill from this source, with fresh split index + this.floodfill.add(p2); + final int newIndex = this.splitIndexMap.size(); + this.subLevelSplits.put(p2.asLong(), newIndex); + this.splitIndexMap.add(newIndex); + } + } + } + } + this.heatMapRemove(p); + } + this.removed.clear(); + } else if (!this.newStarts.isEmpty()) { + this.floodfill.addAll(this.newStarts); + this.newStarts.clear(); + this.state = HeatMapPropagationState.FILLING; + } else if (!this.subLevelSplits.isEmpty()) { + this.splitComplete = true; + // Split off separated regions! + this.split(); + } else { + this.splitComplete = true; + // Nothing left to do, stop looping + return true; + } + } + return false; + } + + private void split() { + final Int2ObjectMap> newSubLevelBlocks = new Int2ObjectOpenHashMap<>(); + for (final long l : this.subLevelSplits.keySet()) { + final int splitIndex = this.splitIndexMap.get(this.subLevelSplits.get(l)); + newSubLevelBlocks.computeIfAbsent(splitIndex, x -> new ObjectArrayList<>()).add(BlockPos.of(l)); + } + + final boolean splittingWholeSubLevel = newSubLevelBlocks.size() == 1 && this.solidCount == newSubLevelBlocks.values().stream().findFirst().orElseThrow().size(); + // in the case there is only a single split, and it is the entire sub-level, let's just clear the splits and + // not do anything (ideally). we have to rebuild the heatmap though, as the root is gone... + if (splittingWholeSubLevel) { + final List allBlocks = newSubLevelBlocks.values().stream().findFirst().orElseThrow(); + this.rebuildHeatmapFrom(allBlocks); + + newSubLevelBlocks.clear(); + } + + // if the sum of the newSubLevelBlocks sizes is equal to the heatmap block count, we are about to split + // the entire sub-level, deleting the original. this will mean the client will receive multiple new sub-levels + // with no previous "owner" sub-level to trace back the motion of the new sub-levels from. + // let's avoid this by getting rid of one of the splits to keep it in our sub-level + int totalSplitBlocks = 0; + + for (final List blocks : newSubLevelBlocks.values()) { + totalSplitBlocks += blocks.size(); + } + + if (!splittingWholeSubLevel && totalSplitBlocks != 0 && totalSplitBlocks == this.solidCount) { + final Map.Entry> minSize = newSubLevelBlocks.entrySet().stream().sorted(Comparator.comparingInt(a -> -a.getValue().size())).findFirst().orElseThrow(); + this.rebuildHeatmapFrom(minSize.getValue()); + newSubLevelBlocks.remove((int) minSize.getKey()); + } + + this.subLevelSplits.clear(); + this.splitIndexMap.clear(); + this.splitIndexMap.add(0); + final Level level = this.subLevel.getLevel(); + + for (final List blocks : newSubLevelBlocks.values()) { + final BoundingBox3i bounds = Objects.requireNonNull(BoundingBox3i.from(blocks)).expand(1, 1, 1); + + for (final SplitListener listener : LISTENERS) { + listener.addBlocks(level, bounds, blocks); + } + + final ServerSubLevel subLevel = SubLevelAssemblyHelper.assembleBlocks((ServerLevel) level, blocks.get(0), blocks, bounds); + + // Protect against split sub-levels that have zero mass. + if (subLevel.getMassTracker().getCenterOfMass() == null || subLevel.getMassTracker().getMass() <= 0.0) { + subLevel.getPlot().destroyAllBlocks(); + + final SubLevelContainer container = Objects.requireNonNull(SubLevelContainer.getContainer(level)); + container.removeSubLevel(subLevel, SubLevelRemovalReason.REMOVED); + } + } + } + + private void rebuildHeatmapFrom(final List blocks) { + this.state = HeatMapPropagationState.FILLING; + + this.initialized = false; + this.splitComplete = false; + this.solidCount = 0; + + this.newStarts.clear(); + this.floodfill.clear(); + this.removed.clear(); + + blocks.forEach(this::heatMapRemove); + blocks.forEach(this::onSolidAdded); + } + + private boolean isSolidAt(final BlockPos blockPos) { + final Level level = this.subLevel.getLevel(); + return !level.getBlockState(blockPos).isAir(); + } + + /** + * Called whenever a block at a position becomes solid + * + * @param blockPos the position of the block + */ + public void onSolidAdded(final BlockPos blockPos) { + this.solidCount++; + + if (!this.initialized) { + this.initialized = true; + this.heatMapSet(blockPos, (short) 1); + this.floodfill.add(blockPos); + this.splitIndexMap.add(0); // index zero reserved for in-air placements + return; + } + + int minimumAdjacentHeat = Integer.MAX_VALUE; + if (this.removed.remove(blockPos)) + return; + + for (final BlockPos direction : DIRECTION_OFFSETS) { + final BlockPos neighbor = blockPos.offset(direction); + + if (this.heatMapContains(neighbor)) { + final short heat = this.heatMapGet(neighbor); + + if (heat < minimumAdjacentHeat) { + minimumAdjacentHeat = heat; + } + } + } + + if (minimumAdjacentHeat == Integer.MAX_VALUE) { + // block placed in thin air + // assume it is a split section + + if (!this.splitComplete) + this.subLevelSplits.put(blockPos.asLong(), 0); + + } else { + this.heatMapSet(blockPos, (short) (minimumAdjacentHeat + 1)); + if (this.state == HeatMapPropagationState.FILLING) + this.floodfill.add(blockPos); + else + this.newStarts.add(blockPos); + } + + } + + /** + * Called whenever a block at a position becomes non-solid + * + * @param blockPos the position of the block + */ + public void onSolidRemoved(final BlockPos blockPos) { + this.solidCount--; + this.removed.add(blockPos); + } + + private void heatMapRemove(final BlockPos blockPos) { + this.heatMapSet(blockPos, (short) 0); + } + + private boolean heatMapContains(final BlockPos neighbor) { + return this.heatMapGet(neighbor) != 0; + } + + private short heatMapGet(final BlockPos blockPos) { + final LevelPlot plot = this.subLevel.getPlot(); + final SectionPos section = SectionPos.of(blockPos); + final PlotChunkHolder chunkHolder = plot.getChunkHolder(plot.toLocal(section.chunk())); + + if (chunkHolder == null) { + return 0; + } + + final HeatDataChunkSection heatSection = chunkHolder.getHeatSection(section.y()); + + if (heatSection == null) { + return 0; + } + + return heatSection.get(blockPos.getX() & 15, blockPos.getY() & 15, blockPos.getZ() & 15); + } + + private void heatMapSet(final BlockPos blockPos, final short value) { + final LevelPlot plot = this.subLevel.getPlot(); + final SectionPos section = SectionPos.of(blockPos); + final PlotChunkHolder chunkHolder = plot.getChunkHolder(plot.toLocal(section.chunk())); + + if (chunkHolder == null) { + return; + } + + HeatDataChunkSection heatSection = chunkHolder.getHeatSection(section.y()); + + if (heatSection == null) { + heatSection = new HeatDataChunkSection(); + chunkHolder.setHeatSection(section.y(), heatSection); + } + + heatSection.set(blockPos.getX() & 15, blockPos.getY() & 15, blockPos.getZ() & 15, value); + } + + /** + * Adds a split listener + * @param listener the listener to add + */ + public static void addSplitListener(final SplitListener listener) { + LISTENERS.add(listener); + } + + @FunctionalInterface + public interface SplitListener { + + void addBlocks(final Level level, final BoundingBox3ic assemblyBounds, final Collection blocks); + + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.java new file mode 100644 index 0000000..76802ae --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.java @@ -0,0 +1,80 @@ +package dev.ryanhcode.sable.sublevel.render; + +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import org.joml.*; + +import java.io.Closeable; + +public interface SubLevelRenderData extends Closeable { + + @Override + void close(); + + /** + * Forces the sections in this renderer to rebuild. + */ + void rebuild(); + + /** + * Checks if a section in global section coordinates is compiled + * + * @param x the global x coordinate + * @param y the global y coordinate + * @param z the global z coordinate + * @return if the section exists and is compiled + */ + boolean isSectionCompiled(int x, int y, int z); + + /** + * Sets a section in global section coordinates as dirty + * + * @param x the global x coordinate + * @param y the global y coordinate + * @param z the global z coordinate + * @param playerChanged if the section is dirty from a player action + */ + void setDirty(final int x, final int y, final int z, final boolean playerChanged); + + /** + * Compiles all dirty sections in this renderer. + * + * @param chunkUpdates The chunk update mode + * @param renderRegionCache The render region cache instance for compiling sections + * @param camera The camera instance + */ + void compileSections(PrioritizeChunkUpdates chunkUpdates, final RenderRegionCache renderRegionCache, Camera camera); + + default Matrix4f getTransformation(final double camX, final double camY, final double camZ) { + return this.getTransformation(camX, camY, camZ, new Matrix4f()); + } + + default Matrix4f getTransformation(final double camX, final double camY, final double camZ, final Matrix4f store) { + store.identity(); + + final Pose3dc pose = this.getSubLevel().renderPose(); + + final Vector3dc pos = pose.position(); + final Vector3dc scale = pose.scale(); + final Quaterniondc orientation = pose.orientation(); + + store.translate((float) (pos.x() - camX), (float) (pos.y() - camY), (float) (pos.z() - camZ)); + store.rotate(new Quaternionf(orientation)); + store.scale((float) scale.x(), (float) scale.y(), (float) scale.z()); + + return store; + } + + ClientSubLevel getSubLevel(); + + default Vector3d getChunkOffset() { + return this.getChunkOffset(new Vector3d()); + } + + default Vector3d getChunkOffset(final Vector3d dest) { + return this.getSubLevel().renderPose().rotationPoint().negate(dest); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.java new file mode 100644 index 0000000..e5a66c1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.java @@ -0,0 +1,105 @@ +package dev.ryanhcode.sable.sublevel.render; + +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.dispatcher.ReachAroundSubLevelRenderDispatcher; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import dev.ryanhcode.sable.sublevel.render.dispatcher.VanillaSubLevelRenderDispatcher; +import foundry.veil.api.compat.SodiumCompat; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; + +/** + * Renders sub-levels in the world. + */ +public final class SubLevelRenderer { + + public static final SelectedRenderer DEFAULT; + + static { + SelectedRenderer impl = null; + for (final SelectedRenderer render : SelectedRenderer.values()) { + if (render.isSupported()) { + impl = render; + break; + } + } + + if (impl == null) { + throw new RuntimeException("Failed to find a supported sub-level renderer"); + } + + DEFAULT = impl; + } + + private static SubLevelRenderDispatcher dispatcher; + private static SelectedRenderer selected = DEFAULT; + + public static void setImpl(final SelectedRenderer impl) { + final SelectedRenderer newImpl = !impl.isSupported() ? DEFAULT : impl; + if (selected.equals(newImpl)) { + return; + } + + selected = newImpl; + + if (dispatcher != null) { + dispatcher.free(); + dispatcher = null; + + final ClientLevel level = Minecraft.getInstance().level; + + if (level != null) { + final Iterable sublevels = ((ClientSubLevelContainer) ((SubLevelContainerHolder) level).sable$getPlotContainer()).getAllSubLevels(); + + for (final ClientSubLevel sublevel : sublevels) { + sublevel.updateRenderData(); + } + } + } + } + + public static void free() { + if (dispatcher != null) { + dispatcher.free(); + dispatcher = null; + } + } + + public static SubLevelRenderDispatcher getDispatcher() { + if (dispatcher == null) { + dispatcher = selected.create(); + } + return dispatcher; + } + + public enum SelectedRenderer { + VANILLA { + @Override + public boolean isSupported() { + return !SodiumCompat.isLoaded(); + } + + @Override + public SubLevelRenderDispatcher create() { + return new VanillaSubLevelRenderDispatcher(); + } + }, + SODIUM_REACHAROUND { + @Override + public boolean isSupported() { + return SodiumCompat.isLoaded(); + } + + @Override + public SubLevelRenderDispatcher create() { + return new ReachAroundSubLevelRenderDispatcher(); + } + }; + + public abstract boolean isSupported(); + + public abstract SubLevelRenderDispatcher create(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.java new file mode 100644 index 0000000..deb5386 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.java @@ -0,0 +1,319 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.VertexFormat; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.render.sky_light_shadow.SableDynamicSkyLightShadowPreProcessor; +import dev.ryanhcode.sable.render.sky_light_shadow.SableSkyLightShadows; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelCommandBuilder; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelOcclusionData; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelSectionCompiler; +import dev.ryanhcode.sable.sublevel.render.staging.StagingBuffer; +import foundry.veil.api.client.render.CullFrustum; +import foundry.veil.api.client.render.VeilRenderSystem; +import foundry.veil.api.client.render.shader.program.ShaderProgram; +import foundry.veil.api.client.render.shader.uniform.ShaderUniform; +import foundry.veil.api.client.render.vertex.VertexArray; +import foundry.veil.api.client.render.vertex.VertexArrayBuilder; +import foundry.veil.impl.client.render.dynamicbuffer.VanillaShaderCompiler; +import it.unimi.dsi.fastutil.ints.Int2ObjectArrayMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectArrayMap; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.core.BlockPos; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.util.Mth; +import org.jetbrains.annotations.Nullable; +import org.joml.*; +import org.lwjgl.system.MemoryStack; + +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.util.Map; +import java.util.Objects; +import java.util.concurrent.CompletableFuture; +import java.util.function.Consumer; + +import static org.lwjgl.opengl.GL20C.*; + +public class FancySubLevelRenderDispatcher implements SubLevelRenderDispatcher { + + private static final Matrix4f TRANSFORM = new Matrix4f(); + private static final int VERTEX_SIZE = 8; + + private final Map> dynamicPrograms; + private final StagingBuffer stagingBuffer; + private final FancySubLevelSectionCompiler sectionCompiler; + private final FancySubLevelCommandBuilder commandBuilder; + private final VertexArray vertexArray; + + public FancySubLevelRenderDispatcher() { + this.dynamicPrograms = new Object2ObjectArrayMap<>(); + + this.stagingBuffer = StagingBuffer.create(); + this.sectionCompiler = new FancySubLevelSectionCompiler(this.stagingBuffer, Minecraft.getInstance().getBlockRenderer(), Minecraft.getInstance().getBlockEntityRenderDispatcher()); + this.commandBuilder = new FancySubLevelCommandBuilder(this.stagingBuffer); + + this.vertexArray = VertexArray.create(); + final int vbo = this.vertexArray.getOrCreateBuffer(VertexArray.VERTEX_BUFFER); + + try (final MemoryStack stack = MemoryStack.stackPush()) { + final ByteBuffer buffer = stack.malloc(6 * 4 * VERTEX_SIZE); + // Down + buffer.put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) -1).put((byte) 0).put((byte) 0); + buffer.put((byte) 0).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) -1).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) -1).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) -1).put((byte) 0).put((byte) 0); + // Up + buffer.put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0); + buffer.put((byte) 0).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0); + // North + buffer.put((byte) 1).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) -1).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) -1).put((byte) 0); + buffer.put((byte) 0).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) -1).put((byte) 0); + buffer.put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) -1).put((byte) 0); + // South + buffer.put((byte) 0).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0); + buffer.put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0); + buffer.put((byte) 1).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0); + // West + buffer.put((byte) 0).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) -1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 0).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) -1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 0).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) -1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 0).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) -1).put((byte) 0).put((byte) 0).put((byte) 0); + // East + buffer.put((byte) 1).put((byte) 1).put((byte) 1).put((byte) 0) + .put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 1).put((byte) 0) + .put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0) + .put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.put((byte) 1).put((byte) 1).put((byte) 0).put((byte) 0) + .put((byte) 1).put((byte) 0).put((byte) 0).put((byte) 0); + buffer.flip(); + + final ByteBuffer indices = stack.bytes((byte) 0, (byte) 1, (byte) 2, (byte) 2, (byte) 3, (byte) 0); + + VertexArray.upload(vbo, buffer, VertexArray.DrawUsage.STATIC); + this.vertexArray.uploadIndexBuffer(indices, VertexArray.IndexType.BYTE); + } + + this.vertexArray.editFormat() + .defineVertexBuffer(0, vbo, 0, VERTEX_SIZE, 0) + .setVertexAttribute(0, 0, 3, VertexArrayBuilder.DataType.BYTE, false, 0) + .setVertexAttribute(1, 0, 3, VertexArrayBuilder.DataType.BYTE, false, 4) + .setVertexIAttribute(2, 1, 2, VertexArrayBuilder.DataType.UNSIGNED_INT, 0); + } + + @Override + public void onResourceManagerReload(final ResourceManager resourceManager) { + this.freePrograms(); + } + + @Override + public SubLevelRenderData resize(final ClientSubLevel subLevel, final SubLevelRenderData renderData) { + ((FancySubLevelRenderData) renderData).resize(); + return renderData; + } + + @Override + public SubLevelRenderData createRenderData(final ClientSubLevel subLevel) { + return new FancySubLevelRenderData(subLevel, this.sectionCompiler); + } + + private @Nullable ShaderProgram getDynamicProgram(final ShaderInstance vanillaProgram) { + final String name = VanillaShaderCompiler.getActiveDynamicBuffers(vanillaProgram) + "/" + vanillaProgram.getName(); + final CompletableFuture future = this.dynamicPrograms.get(name); + if (future != null) { + return future.getNow(null); + } + + try (final MemoryStack stack = MemoryStack.stackPush()) { + final int size = glGetProgrami(vanillaProgram.getId(), GL_ATTACHED_SHADERS); + final Int2ObjectMap sources = new Int2ObjectArrayMap<>(size); + final IntBuffer shaders = stack.mallocInt(size); + glGetAttachedShaders(vanillaProgram.getId(), null, shaders); + for (int i = 0; i < shaders.limit(); i++) { + final int shader = shaders.get(i); + final int type = glGetShaderi(shader, GL_SHADER_TYPE); + sources.put(type, glGetShaderSource(shader)); + } + + this.dynamicPrograms.put(name, VeilRenderSystem.renderer().getShaderManager().createDynamicProgram(Sable.sablePath("dynamic_sublevel/" + name), sources) + .thenApplyAsync(shader -> { + final ShaderUniform sableEnableNormalLighting = shader.getUniform("SableEnableNormalLighting"); + if (sableEnableNormalLighting != null) { + sableEnableNormalLighting.setFloat(1.0F); + } + + final ShaderUniform sableEnableSkyLightShadows = shader.getUniform(SableDynamicSkyLightShadowPreProcessor.ENABLE_UNIFORM); + if (sableEnableSkyLightShadows != null) { + sableEnableSkyLightShadows.setFloat(SableSkyLightShadows.isEnabled() ? 1.0F : 0.0F); + } + + return shader; + }, Minecraft.getInstance())); + } + return null; + } + + @Override + public void rebuild(final Iterable sublevels) { + this.sectionCompiler.getBuffer().clear(); + SubLevelRenderDispatcher.super.rebuild(sublevels); + } + + @Override + public void updateCulling(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final CullFrustum cullFrustum, final boolean isSpectator) { + final BlockPos.MutableBlockPos pos = new BlockPos.MutableBlockPos(); + + for (final ClientSubLevel subLevel : sublevels) { + final FancySubLevelRenderData renderData = (FancySubLevelRenderData) subLevel.getRenderData(); + final Pose3dc renderPose = subLevel.renderPose(); + final Vector3d plotPos = renderPose.transformPositionInverse(new Vector3d(cameraX, cameraY, cameraZ)); + final Vector3ic chunkOrigin = renderData.getChunkOrigin(); + + pos.set(plotPos.x, plotPos.y, plotPos.z); + final ClientLevel level = subLevel.getLevel(); + + boolean smartCull = Minecraft.getInstance().smartCull; + if (isSpectator && level.getBlockState(pos).isSolidRender(level, pos)) { + smartCull = false; + } + + renderData.getOcclusionData().update((pos.getX() >> 4) - chunkOrigin.x(), (pos.getY() >> 4) - chunkOrigin.y(), (pos.getZ() >> 4) - chunkOrigin.z(), smartCull, cullFrustum); + } + } + + @Override + public void renderSectionLayer(final Iterable sublevels, final RenderType renderType, final ShaderInstance shader, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + final ShaderProgram program = this.getDynamicProgram(shader); + if (program == null) { + return; + } + + if (!program.isValid()) { + return; + } + + boolean setup = false; + final SubLevelTextureCache textureCache = this.sectionCompiler.getTextureCache(); + final ShaderUniform sableSkyLightScale = program.getUniform("SableSkyLightScale"); + final ShaderUniform sableTransform = program.getUniform("SableTransform"); + + // Try to clear pending areas + this.stagingBuffer.updateFencedAreas(); + for (final ClientSubLevel subLevel : sublevels) { + final FancySubLevelRenderData renderData = (FancySubLevelRenderData) subLevel.getRenderData(); + final FancySubLevelOcclusionData occlusionData = renderData.getOcclusionData(); + + if (!occlusionData.hasLayer(renderType)) { + continue; + } + + if (!setup) { + program.bind(); + program.setDefaultUniforms(VertexFormat.Mode.TRIANGLES, modelView, projection); + program.bindSamplers(0); + + textureCache.bind(); + + this.vertexArray.bind(); + this.sectionCompiler.getBuffer().bind(this.vertexArray); + + this.commandBuilder.setup(); + setup = true; + } + + if (sableSkyLightScale != null) { + final int skyLight = subLevel.getLatestSkyLightScale(); + sableSkyLightScale.setFloat(skyLight / 15.0f); + } + + final Pose3dc renderPose = subLevel.renderPose(); + final Vector3dc renderPos = renderPose.position(); + final Quaterniondc renderRot = renderPose.orientation(); + final Vector3d renderCOR = renderRot.transform(new Vector3d(renderPose.rotationPoint()).sub(renderData.getOrigin())); + + if (sableTransform != null) { + final Matrix4f transform = TRANSFORM.identity(); + + transform.translate((float) (renderPos.x() - renderCOR.x - cameraX), (float) (renderPos.y() - renderCOR.y - cameraY), (float) (renderPos.z() - renderCOR.z - cameraZ)); + transform.rotate(new Quaternionf(renderRot)); + + sableTransform.setMatrix(transform); + } + + final Vector3d plotPos = renderPose.transformPositionInverse(new Vector3d(VeilRenderSystem.getCullingFrustum().getPosition())); + this.commandBuilder.draw(renderData, renderType, Mth.floor(plotPos.x) >> 4, Mth.floor(plotPos.y) >> 4, Mth.floor(plotPos.z) >> 4); + } + + // One again after to free some memory + this.stagingBuffer.updateFencedAreas(); + + if (setup) { + this.commandBuilder.clear(); + } + } + + @Override + public void renderAfterSections(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + + } + + @Override + public void renderBlockEntities(final Iterable sublevels, final BlockEntityRenderer blockEntityRenderer, final double cameraX, final double cameraY, final double cameraZ, final float partialTick) { + // TODO + } + + @Override + public void addDebugInfo(final Consumer consumer) { + consumer.accept("Staging Buffer: Used %.1f / %d MiB".formatted(this.stagingBuffer.getUsedSize() / 1024L / 1024.0, this.stagingBuffer.getSize() / 1024L / 1024L)); + } + + private void freePrograms() { + for (final CompletableFuture future : this.dynamicPrograms.values()) { + future.thenAcceptAsync(ShaderProgram::free, Minecraft.getInstance()); + } + this.dynamicPrograms.clear(); + } + + @Override + public void free() { + this.commandBuilder.free(); + this.sectionCompiler.free(); + this.stagingBuffer.free(); + this.vertexArray.free(); + this.freePrograms(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.java new file mode 100644 index 0000000..c12a771 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.java @@ -0,0 +1,87 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.vanilla.VanillaChunkedSubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.vanilla.VanillaSingleSubLevelRenderData; +import net.minecraft.Util; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.RenderBuffers; +import net.minecraft.client.renderer.SectionBufferBuilderPool; +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; + +public class ReachAroundSubLevelRenderDispatcher extends VanillaSubLevelRenderDispatcher { + + private SectionBufferBuilderPool sectionBufferPool; + private SectionRenderDispatcher sectionRenderDispatcher; + + public ReachAroundSubLevelRenderDispatcher() { + final int processors = Runtime.getRuntime().availableProcessors(); + final int num = Math.max(1, processors / 4); + this.sectionBufferPool = SectionBufferBuilderPool.allocate(num); + } + + private SectionRenderDispatcher getSectionRenderDispatcher(final LevelRenderer levelRenderer, final ClientLevel level) { + if (this.sectionRenderDispatcher == null) { + final Minecraft minecraft = Minecraft.getInstance(); + final RenderBuffers renderBuffers = minecraft.renderBuffers(); + + this.sectionRenderDispatcher = new SectionRenderDispatcher( + level, levelRenderer, Util.backgroundExecutor(), renderBuffers, minecraft.getBlockRenderer(), minecraft.getBlockEntityRenderDispatcher() + ); + + this.sectionRenderDispatcher.bufferPool = this.sectionBufferPool; + } + + this.sectionRenderDispatcher.setLevel(level); + return this.sectionRenderDispatcher; + } + + @Override + public void rebuild(final Iterable sublevels) { + if (this.sectionRenderDispatcher != null) { + this.sectionRenderDispatcher.blockUntilClear(); + } + + super.rebuild(sublevels); + } + + @Override + public SubLevelRenderData createRenderData(final ClientSubLevel subLevel) { + if (isSingleBlock(subLevel)) { + return new VanillaSingleSubLevelRenderData(subLevel); + } + + final Minecraft minecraft = Minecraft.getInstance(); + final LevelRenderer levelRenderer = minecraft.levelRenderer; + final SectionRenderDispatcher sectionRenderDispatcher = this.getSectionRenderDispatcher(levelRenderer, subLevel.getLevel()); + + return new VanillaChunkedSubLevelRenderData(subLevel, sectionRenderDispatcher); + } + + @Override + public void preRenderChunks(final Camera camera) { + if (this.sectionRenderDispatcher != null) { + final Minecraft minecraft = Minecraft.getInstance(); + this.sectionRenderDispatcher.setCamera(camera.getPosition()); + + minecraft.getProfiler().push("sub_level_upload"); + this.sectionRenderDispatcher.uploadAllPendingUploads(); + minecraft.getProfiler().pop(); + } + } + + @Override + public void free() { + if (this.sectionRenderDispatcher != null) { + this.sectionRenderDispatcher.dispose(); + this.sectionRenderDispatcher = null; + this.sectionBufferPool = null; + } + + super.free(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.java new file mode 100644 index 0000000..a333341 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.sodium.SodiumSubLevelRenderData; +import foundry.veil.api.client.render.CullFrustum; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.server.packs.resources.ResourceManager; +import org.joml.Matrix4f; + +import java.util.function.Consumer; + +public class SodiumSubLevelRenderDispatcher implements SubLevelRenderDispatcher { + + @Override + public SubLevelRenderData resize(final ClientSubLevel subLevel, final SubLevelRenderData renderData) { + ((SodiumSubLevelRenderData) renderData).resize(); + return renderData; + } + + + @Override + public SubLevelRenderData createRenderData(final ClientSubLevel subLevel) { + return new SodiumSubLevelRenderData(subLevel); + } + + + @Override + public void updateCulling(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final CullFrustum cullFrustum, final boolean isSpectator) { + + } + + @Override + public void renderSectionLayer(final Iterable sublevels, final RenderType renderType, final ShaderInstance shader, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + + } + + @Override + public void renderAfterSections(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + + } + + @Override + public void renderBlockEntities(final Iterable sublevels, final BlockEntityRenderer blockEntityRenderer, final double cameraX, final double cameraY, final double cameraZ, final float partialTick) { + + } + + @Override + public void addDebugInfo(final Consumer consumer) { + + } + + @Override + public void onResourceManagerReload(final ResourceManager resourceManager) { + + } + + @Override + public void free() { + + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.java new file mode 100644 index 0000000..3682284 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.java @@ -0,0 +1,121 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderer; +import foundry.veil.api.client.render.CullFrustum; +import net.minecraft.client.Camera; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.server.packs.resources.ResourceManagerReloadListener; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.jetbrains.annotations.ApiStatus; +import org.joml.Matrix4f; +import org.lwjgl.system.NativeResource; + +import java.util.Collection; +import java.util.function.Consumer; + +/** + * Renders sub-levels into the world. + */ +@ApiStatus.Internal +public interface SubLevelRenderDispatcher extends NativeResource, ResourceManagerReloadListener { + + /** + * @return The current sub-level renderer instance + */ + static SubLevelRenderDispatcher get() { + return SubLevelRenderer.getDispatcher(); + } + + /** + * Resizes the specified render data. + * + * @param subLevel The sub-level to resize + * @param renderData The current render data + * @return The new render data to use + */ + SubLevelRenderData resize(final ClientSubLevel subLevel, final SubLevelRenderData renderData); + + /** + * Creates a new render data instance for the specified sub-level. + * + * @param subLevel The sub-level to create render data for + * @return A new render data instance + */ + SubLevelRenderData createRenderData(final ClientSubLevel subLevel); + + /** + * Rebuilds the specified sub-levels when F3+A is pressed. + * + * @param sublevels The sub-levels to rebuild + */ + default void rebuild(final Iterable sublevels) { + for (final ClientSubLevel sublevel : sublevels) { + sublevel.getRenderData().rebuild(); + } + } + + /** + * Updates the current culling state for all sub-levels. + * + * @param sublevels The sub-levels to update + * @param cameraX The x position of the camera + * @param cameraY The y position of the camera + * @param cameraZ The z position of the camera + * @param cullFrustum The current frustum used for culling + * @param isSpectator Whether the player is in spectator mode + */ + void updateCulling(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final CullFrustum cullFrustum, boolean isSpectator); + + /** + * Renders all sub-levels into the specified section layer. + * + * @param sublevels The sub-levels to render + * @param renderType The render type being rendered + * @param shader The currently bound shader + * @param cameraX The x position of the camera + * @param cameraY The y position of the camera + * @param cameraZ The z position of the camera + * @param modelView The modelview matrix + * @param projection The projection matrix + * @param partialTicks The percentage from last tick to this tick + */ + void renderSectionLayer(final Iterable sublevels, final RenderType renderType, final ShaderInstance shader, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks); + + /** + * Renders all sub-levels after the section layers have been rendered. + * + * @param sublevels The sub-levels to render + * @param cameraX The x position of the camera + * @param cameraY The y position of the camera + * @param cameraZ The z position of the camera + * @param modelView The modelview matrix + * @param projection The projection matrix + * @param partialTicks The percentage from last tick to this tick + */ + void renderAfterSections(final Iterable sublevels, final double cameraX, double cameraY, double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks); + + void renderBlockEntities(final Iterable sublevels, final BlockEntityRenderer blockEntityRenderer, final double cameraX, double cameraY, double cameraZ, final float partialTick); + + void addDebugInfo(final Consumer consumer); + + default void preRenderChunks(final Camera camera) { + } + + interface BlockEntityRenderer { + + default void renderBlockEntities(final Collection blockEntities, final PoseStack poseStack, final float partialTick, final double cameraX, final double cameraY, final double cameraZ) { + for (final BlockEntity blockEntity : blockEntities) { + this.renderSingleBE(blockEntity, poseStack, partialTick, cameraX, cameraY, cameraZ); + } + } + + void renderSingleBE(final BlockEntity blockEntity, final PoseStack poseStack, final float partialTick, final double cameraX, final double cameraY, final double cameraZ); + + BlockEntityRenderDispatcher getBlockEntityRenderDispatcher(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.java new file mode 100644 index 0000000..0749749 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.java @@ -0,0 +1,109 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelShaderProcessor; +import foundry.veil.api.client.render.VeilRenderSystem; +import foundry.veil.api.client.render.shader.block.DynamicShaderBlock; +import foundry.veil.api.client.render.shader.block.ShaderBlock; +import it.unimi.dsi.fastutil.objects.Object2IntArrayMap; +import it.unimi.dsi.fastutil.objects.Object2IntMap; +import it.unimi.dsi.fastutil.objects.Object2IntMaps; +import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; +import net.minecraft.client.renderer.block.model.BakedQuad; +import org.lwjgl.system.NativeResource; + +import java.util.Arrays; +import java.util.Objects; + +public class SubLevelTextureCache implements NativeResource { + + private static final int SPRITE_SIZE = 8 * Float.BYTES; + private static final int DEFAULT_SPRITE_COUNT = 32; + + private final Object2IntMap textures = Object2IntMaps.synchronize(new Object2IntOpenHashMap<>()); + private final Object2IntMap newTextures = new Object2IntArrayMap<>(); + + private DynamicShaderBlock textureBlock; + + public SubLevelTextureCache() { + this.textureBlock = null; + VeilRenderSystem.renderer().getShaderDefinitions().set(FancySubLevelShaderProcessor.BUFFER_SIZE, Integer.toString(DEFAULT_SPRITE_COUNT)); + } + + public int getTextureId(final BakedQuad quad) { + final int[] vertices = quad.getVertices(); + final float u0 = Float.intBitsToFloat(vertices[4]); + final float v0 = Float.intBitsToFloat(vertices[5]); + final float u1 = Float.intBitsToFloat(vertices[8 + 4]); + final float v1 = Float.intBitsToFloat(vertices[8 + 5]); + final float u2 = Float.intBitsToFloat(vertices[16 + 4]); + final float v2 = Float.intBitsToFloat(vertices[16 + 5]); + final float u3 = Float.intBitsToFloat(vertices[24 + 4]); + final float v3 = Float.intBitsToFloat(vertices[24 + 5]); + return this.textures.computeIfAbsent(new PackedTexture(u0, v0, u1, v1, u2, v2, u3, v3), texture -> { + final int textureId = this.textures.size(); + this.newTextures.put((PackedTexture) texture, textureId); + return textureId; + }); + } + + public void flush() { + if (this.newTextures.isEmpty()) { + return; + } + + if (this.textureBlock == null) { + this.textureBlock = ShaderBlock.dynamic(ShaderBlock.BufferBinding.UNIFORM, DEFAULT_SPRITE_COUNT * SPRITE_SIZE, (packedTextures, byteBuffer) -> { + for (final PackedTexture texture : packedTextures) { + if (texture == null) { + break; + } + byteBuffer.putFloat(texture.u0); + byteBuffer.putFloat(texture.u1); + byteBuffer.putFloat(texture.u2); + byteBuffer.putFloat(texture.u3); + byteBuffer.putFloat(texture.v0); + byteBuffer.putFloat(texture.v1); + byteBuffer.putFloat(texture.v2); + byteBuffer.putFloat(texture.v3); + } + }); + this.textureBlock.set(new PackedTexture[DEFAULT_SPRITE_COUNT]); + } + + final int expectedSize = this.textures.size() + this.newTextures.size(); + if (expectedSize * SPRITE_SIZE > this.textureBlock.getSize()) { + final int newSize = (int) (expectedSize * 1.5); + this.textureBlock.setSize(newSize * SPRITE_SIZE); + + final PackedTexture[] packedTextures = Objects.requireNonNull(this.textureBlock.getValue()); + this.textureBlock.set(Arrays.copyOf(packedTextures, newSize)); + VeilRenderSystem.renderer().getShaderDefinitions().set(FancySubLevelShaderProcessor.BUFFER_SIZE, Long.toString(newSize)); + } + + final PackedTexture[] packedTextures = Objects.requireNonNull(this.textureBlock.getValue()); + for (final Object2IntMap.Entry entry : this.newTextures.object2IntEntrySet()) { + packedTextures[entry.getIntValue()] = entry.getKey(); + } + this.newTextures.clear(); + this.textureBlock.set(packedTextures); + } + + public void bind() { + this.flush(); + if (this.textureBlock != null) { + VeilRenderSystem.bind("SableSprites", this.textureBlock); + } + } + + @Override + public void free() { + if (this.textureBlock != null) { + VeilRenderSystem.unbind(this.textureBlock); + this.textureBlock.free(); + this.textureBlock = null; + } + } + + private record PackedTexture(float u0, float v0, float u1, float v1, float u2, float v2, float u3, float v3) { + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.java new file mode 100644 index 0000000..13fc2dc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.java @@ -0,0 +1,264 @@ +package dev.ryanhcode.sable.sublevel.render.dispatcher; + +import com.mojang.blaze3d.shaders.FogShape; +import com.mojang.blaze3d.shaders.Uniform; +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.*; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.index.SableTags; +import dev.ryanhcode.sable.mixinterface.BlockEntityRenderDispatcherExtension; +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import dev.ryanhcode.sable.render.sky_light_shadow.SableDynamicSkyLightShadowPreProcessor; +import dev.ryanhcode.sable.render.sky_light_shadow.SableSkyLightShadows; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.vanilla.VanillaChunkedSubLevelRenderData; +import dev.ryanhcode.sable.sublevel.render.vanilla.VanillaSingleSubLevelRenderData; +import foundry.veil.api.client.render.CullFrustum; +import foundry.veil.api.client.render.MatrixStack; +import foundry.veil.api.client.render.VeilRenderBridge; +import foundry.veil.api.client.render.profiler.RenderProfilerCounter; +import foundry.veil.api.client.render.profiler.VeilRenderProfiler; +import net.minecraft.client.Minecraft; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; +import net.minecraft.core.BlockPos; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.joml.Matrix4f; +import org.joml.Vector3d; +import org.joml.Vector3f; + +import java.util.LinkedHashSet; +import java.util.List; +import java.util.Objects; +import java.util.SequencedSet; +import java.util.function.Consumer; + +public class VanillaSubLevelRenderDispatcher implements SubLevelRenderDispatcher { + + private final SequencedSet singleBlockLayers; + + public VanillaSubLevelRenderDispatcher() { + this.singleBlockLayers = new LinkedHashSet<>(); + } + + public static void setupDynamicEffects(final ShaderInstance shader, final boolean onSubLevel, final boolean upload) { + final Uniform sableEnableNormalLighting = shader.getUniform("SableEnableNormalLighting"); + final Uniform sableEnableSkyLightShadows = shader.getUniform(SableDynamicSkyLightShadowPreProcessor.ENABLE_UNIFORM); + + if (sableEnableNormalLighting != null) { + sableEnableNormalLighting.set(onSubLevel ? 1.0F : 0.0F); + if (upload) { + sableEnableNormalLighting.upload(); + } + } + + if (sableEnableSkyLightShadows != null) { + sableEnableSkyLightShadows.set(onSubLevel || !SableSkyLightShadows.isEnabled() ? 0.0F : 1.0F); + if (upload) { + sableEnableSkyLightShadows.upload(); + } + } + + final Uniform sableSkyLightScale = shader.getUniform("SableSkyLightScale"); + + if (sableSkyLightScale != null) { + sableSkyLightScale.set(1.0f); + if (upload) { + sableSkyLightScale.upload(); + } + } + } + + /** + * Checks if this sub-level is a single block, and therefore can use simpler batched rendering + */ + public static boolean isSingleBlock(final ClientSubLevel subLevel) { + final BoundingBox3ic bounds = subLevel.getPlot().getBoundingBox(); + final boolean isSingle = bounds != null && bounds.minX() == bounds.maxX() && bounds.minY() == bounds.maxY() && bounds.minZ() == bounds.maxZ(); + if (!isSingle) { + return false; + } + + final BlockState blockState = subLevel.getLevel().getBlockState(new BlockPos(bounds.minX(), bounds.minY(), bounds.minZ())); + return !blockState.is(SableTags.ALWAYS_CHUNK_RENDERING); + } + + @Override + public void onResourceManagerReload(@NotNull final ResourceManager resourceManager) { + } + + @Override + public SubLevelRenderData resize(final ClientSubLevel subLevel, final SubLevelRenderData renderData) { + if (renderData instanceof VanillaSingleSubLevelRenderData ^ isSingleBlock(subLevel)) { + renderData.close(); + + // Force-rebuild the data + final SubLevelRenderData data = this.createRenderData(subLevel); + if (data instanceof VanillaChunkedSubLevelRenderData) { + data.compileSections(PrioritizeChunkUpdates.NEARBY, new RenderRegionCache(), Minecraft.getInstance().gameRenderer.getMainCamera()); + } + + return data; + } + + if (renderData instanceof final VanillaChunkedSubLevelRenderData chunkedRenderData) { + chunkedRenderData.resize(); + chunkedRenderData.compileSections(PrioritizeChunkUpdates.NEARBY, new RenderRegionCache(), Minecraft.getInstance().gameRenderer.getMainCamera()); + } + return renderData; + } + + @Override + public SubLevelRenderData createRenderData(final ClientSubLevel subLevel) { + if (isSingleBlock(subLevel)) { + return new VanillaSingleSubLevelRenderData(subLevel); + } + + final SectionRenderDispatcher sectionRenderDispatcher = Minecraft.getInstance().levelRenderer.getSectionRenderDispatcher(); + return new VanillaChunkedSubLevelRenderData(subLevel, sectionRenderDispatcher); + } + + @Override + public void updateCulling(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final CullFrustum cullFrustum, final boolean isSpectator) { + // TODO + } + + @Override + public void renderSectionLayer(final Iterable sublevels, final RenderType renderType, final ShaderInstance shader, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + final FogShape fogShape = RenderSystem.getShaderFogShape(); + + if (shader.FOG_SHAPE != null && fogShape != FogShape.SPHERE) { + shader.FOG_SHAPE.set(FogShape.SPHERE.getIndex()); + shader.FOG_SHAPE.upload(); + } + + VanillaSubLevelRenderDispatcher.setupDynamicEffects(shader, true, true); + + final VeilRenderProfiler profiler = VeilRenderProfiler.get(); + profiler.push("sublevel_render", RenderProfilerCounter.STANDARD_GEOMETRY); + for (final ClientSubLevel sublevel : sublevels) { + final SubLevelRenderData data = sublevel.getRenderData(); + + // We'll render the single block sub-levels in a pass afterward + if (!(data instanceof final VanillaChunkedSubLevelRenderData chunkedRenderData)) { + this.singleBlockLayers.addLast(renderType); + continue; + } + + chunkedRenderData.renderChunkedSubLevel(renderType, shader, modelView, cameraX, cameraY, cameraZ); + } + profiler.pop(); + + if (shader.FOG_SHAPE != null && fogShape != FogShape.SPHERE) { + shader.FOG_SHAPE.set(fogShape.getIndex()); + } + + VanillaSubLevelRenderDispatcher.setupDynamicEffects(shader, false, false); + } + + @Override + public void renderAfterSections(final Iterable sublevels, final double cameraX, final double cameraY, final double cameraZ, final Matrix4f modelView, final Matrix4f projection, final float partialTicks) { + if (this.singleBlockLayers.isEmpty()) { + return; + } + + final ModelBlockRendererCacheExtension ext = (ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get(); + ext.sable$setOnSubLevel(true); + + final VeilRenderProfiler profiler = VeilRenderProfiler.get(); + profiler.push("sublevel_render_single", RenderProfilerCounter.STANDARD_GEOMETRY); + for (final RenderType layer : this.singleBlockLayers) { + final BufferBuilder consumer = Tesselator.getInstance().begin(VertexFormat.Mode.QUADS, DefaultVertexFormat.BLOCK); + + for (final ClientSubLevel sublevel : sublevels) { + final SubLevelRenderData data = sublevel.getRenderData(); + + if (!(data instanceof final VanillaSingleSubLevelRenderData singleRenderData)) { + continue; + } + + singleRenderData.renderSingleBlock(layer, consumer, modelView, cameraX, cameraY, cameraZ); + } + + final MeshData meshData = consumer.build(); + if (meshData != null) { + // Set up the state so the shader instance is updated + layer.setupRenderState(); + + final ShaderInstance shader = Objects.requireNonNull(RenderSystem.getShader()); + shader.setDefaultUniforms(VertexFormat.Mode.QUADS, modelView, projection, Minecraft.getInstance().getWindow()); + shader.apply(); + setupDynamicEffects(shader, true, true); + + layer.draw(meshData); + + // Match every setup with a clear + layer.clearRenderState(); + + setupDynamicEffects(shader, false, false); + shader.clear(); + } + } + profiler.pop(); + + ext.sable$setOnSubLevel(false); + + this.singleBlockLayers.clear(); + } + + @Override + public void renderBlockEntities(final Iterable sublevels, final BlockEntityRenderer blockEntityRenderer, final double cameraX, final double cameraY, final double cameraZ, final float partialTick) { + final Vector3f cameraPosition = new Vector3f(); + final Vector3d chunkOffset = new Vector3d(); + final Matrix4f transformation = new Matrix4f(); + final Matrix4f transformationInverse = new Matrix4f(); + final BlockEntityRenderDispatcherExtension dispatcher = (BlockEntityRenderDispatcherExtension) blockEntityRenderer.getBlockEntityRenderDispatcher(); + final PoseStack matrices = new PoseStack(); + final MatrixStack matrixStack = VeilRenderBridge.create(matrices); + + for (final ClientSubLevel sublevel : sublevels) { + final SubLevelRenderData data = sublevel.getRenderData(); + + sublevel.renderPose().rotationPoint().negate(chunkOffset.zero()); + data.getTransformation(cameraX, cameraY, cameraZ, transformation); + + transformation.invert(transformationInverse).transformPosition(cameraPosition.zero()); + dispatcher.sable$setCameraPosition(new Vec3(cameraPosition.x - chunkOffset.x(), cameraPosition.y - chunkOffset.y(), cameraPosition.z - chunkOffset.z())); + + matrixStack.clear(); + matrices.mulPose(transformation); + if (data instanceof final VanillaChunkedSubLevelRenderData chunkedRenderData) { + for (final SectionRenderDispatcher.RenderSection renderSection : chunkedRenderData.allRenderSections()) { + final List blockEntities = renderSection.getCompiled().getRenderableBlockEntities(); + if (!blockEntities.isEmpty()) { + blockEntityRenderer.renderBlockEntities(blockEntities, matrices, partialTick, -chunkOffset.x, -chunkOffset.y, -chunkOffset.z); + } + } + } else if (data instanceof final VanillaSingleSubLevelRenderData singleRenderData) { + final BlockEntity renderBlockEntity = singleRenderData.getRenderBlockEntity(); + if (renderBlockEntity != null) { + blockEntityRenderer.renderSingleBE(renderBlockEntity, matrices, partialTick, -chunkOffset.x, -chunkOffset.y, -chunkOffset.z); + } + } + } + + dispatcher.sable$setCameraPosition(null); + } + + @Override + public void addDebugInfo(final Consumer consumer) { + } + + @Override + public void free() { + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.java new file mode 100644 index 0000000..6e7436f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.java @@ -0,0 +1,160 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import com.mojang.blaze3d.platform.GlStateManager; +import com.mojang.blaze3d.systems.RenderSystem; +import dev.ryanhcode.sable.sublevel.render.staging.StagingBuffer; +import foundry.veil.api.client.render.vertex.VertexArray; +import org.lwjgl.system.MemoryUtil; +import org.lwjgl.system.NativeResource; + +import java.nio.IntBuffer; +import java.util.BitSet; + +import static org.lwjgl.opengl.ARBCopyBuffer.*; +import static org.lwjgl.opengl.GL15C.*; + +public class BucketRenderBuffer implements NativeResource { + + public static final int QUAD_SIZE = Integer.BYTES * 2; + private static final int DEFAULT_MAX_QUADS = 1000; + + private final StagingBuffer stagingBuffer; + private int buffer; + private boolean dirty; + + private int size; + private int maxSize; + private BitSet closedBuckets; + + public BucketRenderBuffer(final StagingBuffer stagingBuffer) { + this.stagingBuffer = stagingBuffer; + this.buffer = GlStateManager._glGenBuffers(); + RenderSystem.glBindBuffer(GL_ARRAY_BUFFER, this.buffer); + glBufferData(GL_ARRAY_BUFFER, DEFAULT_MAX_QUADS * QUAD_SIZE, GL_STREAM_DRAW); + this.maxSize = DEFAULT_MAX_QUADS; + this.closedBuckets = new BitSet(this.maxSize); + this.dirty = true; + } + + private void resize(final int newSize) { + final int copyDest = GlStateManager._glGenBuffers(); + RenderSystem.glBindBuffer(GL_COPY_READ_BUFFER, this.buffer); + RenderSystem.glBindBuffer(GL_COPY_WRITE_BUFFER, copyDest); + glBufferData(GL_COPY_WRITE_BUFFER, (long) newSize * QUAD_SIZE, GL_STREAM_DRAW); + glCopyBufferSubData(GL_COPY_READ_BUFFER, GL_COPY_WRITE_BUFFER, 0, 0, (long) this.maxSize * QUAD_SIZE); + RenderSystem.glDeleteBuffers(this.buffer); + this.buffer = copyDest; + this.maxSize = newSize; + final BitSet old = this.closedBuckets; + this.closedBuckets = new BitSet(this.maxSize); + this.closedBuckets.or(old); + this.dirty = true; + } + + public void clear() { + this.size = 0; + if (this.maxSize > DEFAULT_MAX_QUADS) { + RenderSystem.glBindBuffer(GL_ARRAY_BUFFER, this.buffer); + glBufferData(GL_ARRAY_BUFFER, DEFAULT_MAX_QUADS * QUAD_SIZE, GL_STREAM_DRAW); + this.maxSize = DEFAULT_MAX_QUADS; + this.closedBuckets = new BitSet(this.maxSize); + } else { + this.closedBuckets.clear(); + } + } + + public Slice allocate(final int quadCount) { + if (this.size + quadCount > this.maxSize) { + this.resize((int) ((this.size + quadCount) * 1.5)); + } + + int fromIndex = this.closedBuckets.nextClearBit(0); + int toIndex; + while (true) { + toIndex = this.closedBuckets.nextSetBit(fromIndex); + if (toIndex == -1) { + toIndex = fromIndex + quadCount - 1; + break; + } + if (toIndex - fromIndex >= quadCount) { + break; + } + fromIndex = this.closedBuckets.nextClearBit(toIndex); + } + + if (toIndex >= this.maxSize) { + this.resize((int) (toIndex * 1.5)); + } + + this.closedBuckets.set(fromIndex, toIndex + 1); + this.size += quadCount; + return new Slice(this, fromIndex, quadCount); + } + + public void free(final Slice slice) { + if (slice.closed) { + return; + } + + // The bucket is free to be used again + this.closedBuckets.clear(slice.offset, slice.offset + slice.length); + this.size -= slice.length; + slice.closed = true; +// Sable.LOGGER.info("Freed buffer from {} to {}", slice.offset, slice.offset + slice.length); + } + + public void bind(final VertexArray vertexArray) { + if (this.dirty) { + this.dirty = false; + vertexArray.editFormat().defineVertexBuffer(1, this.buffer, 0, QUAD_SIZE, 1); + } + } + + @Override + public void free() { + RenderSystem.glDeleteBuffers(this.buffer); + } + + public static class Slice implements NativeResource { + + private final BucketRenderBuffer renderBuffer; + private final int offset; + private final int length; + private boolean closed; + + private Slice(final BucketRenderBuffer renderBuffer, final int offset, final int length) { + this.renderBuffer = renderBuffer; + this.offset = offset; + this.length = length; + } + + public long write() { + return this.renderBuffer.stagingBuffer.reserve((long) this.length * QUAD_SIZE); + } + + public IntBuffer writeInt() { + final long pointer = this.write(); + if ((pointer & 3) == 0) { + return MemoryUtil.memIntBuffer(pointer, this.length * QUAD_SIZE / Integer.BYTES); + } + return MemoryUtil.memByteBuffer(pointer, this.length * QUAD_SIZE).asIntBuffer(); + } + + public void flush() { + this.renderBuffer.stagingBuffer.copy(this.renderBuffer.buffer, (long) this.offset * QUAD_SIZE); + } + + public int offset() { + return this.offset; + } + + public int length() { + return this.length; + } + + @Override + public void free() { + this.renderBuffer.free(this); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.java new file mode 100644 index 0000000..9d75bd3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.java @@ -0,0 +1,104 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import com.mojang.blaze3d.platform.GlStateManager; +import dev.ryanhcode.sable.sublevel.render.staging.StagingBuffer; +import foundry.veil.api.client.render.CullFrustum; +import foundry.veil.api.client.render.VeilRenderBridge; +import foundry.veil.api.client.render.VeilRenderSystem; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.core.Direction; +import net.minecraft.core.SectionPos; +import org.joml.Vector3dc; +import org.lwjgl.system.MemoryUtil; +import org.lwjgl.system.NativeResource; + +import java.util.Deque; +import java.util.concurrent.LinkedBlockingDeque; + +import static org.lwjgl.opengl.GL15C.*; +import static org.lwjgl.opengl.GL40C.GL_DRAW_INDIRECT_BUFFER; +import static org.lwjgl.opengl.GL43C.glMultiDrawElementsIndirect; + +public class FancySubLevelCommandBuilder implements NativeResource { + + private static final int MAX_SECTIONS = 16 * 1024 / Integer.BYTES; // Min uniform buffer size + private static final int INDIRECT_COMMAND_SIZE = 5 * Integer.BYTES; + private static final Direction[] DIRECTIONS = Direction.values(); + + private final StagingBuffer stagingBuffer; + private final int commandBuffer; + + private final Deque sectionQueue; + + private int drawCount; + + public FancySubLevelCommandBuilder(final StagingBuffer stagingBuffer) { + this.stagingBuffer = stagingBuffer; + this.commandBuffer = GlStateManager._glGenBuffers(); + glBindBuffer(GL_DRAW_INDIRECT_BUFFER, this.commandBuffer); + glBufferData(GL_DRAW_INDIRECT_BUFFER, MAX_SECTIONS * INDIRECT_COMMAND_SIZE, GL_STREAM_DRAW); + glBindBuffer(GL_DRAW_INDIRECT_BUFFER, 0); + this.sectionQueue = new LinkedBlockingDeque<>(); + } + + private void flush() { + if (this.drawCount > 0) { + this.stagingBuffer.copy(this.commandBuffer, 0); + glMultiDrawElementsIndirect(GL_TRIANGLES, GL_UNSIGNED_BYTE, 0L, this.drawCount, 0); + } + this.drawCount = 0; + } + + public void setup() { + glBindBuffer(GL_DRAW_INDIRECT_BUFFER, this.commandBuffer); + } + + public void clear() { + this.flush(); + glBindBuffer(GL_DRAW_INDIRECT_BUFFER, 0); + } + + @Override + public void free() { + GlStateManager._glDeleteBuffers(this.commandBuffer); + } + + public void draw(final FancySubLevelRenderData data, final RenderType renderType, final int sectionX, final int sectionY, final int sectionZ) { + for (final FancySubLevelSectionCompiler.RenderSection section : data.getOcclusionData().getVisibleSections()) { + final SectionPos pos = section.getPos(); + final int dx = pos.getX() - sectionX; + final int dy = pos.getY() - sectionY; + final int dz = pos.getZ() - sectionZ; + + final FancySubLevelSectionCompiler.CompiledSection compiledSection = section.getCompiledSection(); + for (final Direction direction : DIRECTIONS) { + final BucketRenderBuffer.Slice slice = compiledSection.get(renderType, direction); + if (slice == null) { + continue; + } + + // TODO replace with occlusion culling + final int dot = direction.getStepX() * dx + direction.getStepY() * dy + direction.getStepZ() * dz; + if (dot > 0) { + continue; + } + + final long pointer = this.stagingBuffer.reserve(INDIRECT_COMMAND_SIZE); + MemoryUtil.memPutInt(pointer, 6); + MemoryUtil.memPutInt(pointer + 4, slice.length()); + MemoryUtil.memPutInt(pointer + 8, 0); + MemoryUtil.memPutInt(pointer + 12, direction.get3DDataValue() * 4); + MemoryUtil.memPutInt(pointer + 16, slice.offset()); + + this.drawCount++; + if (this.drawCount >= MAX_SECTIONS) { + this.flush(); + } + } + } + + this.flush(); + this.sectionQueue.clear(); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.java new file mode 100644 index 0000000..d03f655 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.java @@ -0,0 +1,149 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import foundry.veil.api.client.render.CullFrustum; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.Reference2ObjectArrayMap; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.core.SectionPos; +import org.joml.Matrix4d; +import org.joml.Vector3d; +import org.joml.Vector3i; +import org.joml.Vector3ic; + +import java.util.Deque; +import java.util.List; +import java.util.Map; +import java.util.concurrent.LinkedBlockingDeque; +import java.util.concurrent.atomic.AtomicInteger; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; + +public class FancySubLevelOcclusionData { + + private static final int MIN_OCCLUSION_COUNT = 3 * 3 * 3; + + private final FancySubLevelRenderData data; + private final Vector3i cameraSection; + private final Deque sectionQueue; + private final List renderSections; + private final List visibleSections; + private final Map visibleSectionCount; + private final Lock sectionLock = new ReentrantLock(); + + public FancySubLevelOcclusionData(final FancySubLevelRenderData data) { + this.data = data; + this.cameraSection = new Vector3i(); + this.sectionQueue = new LinkedBlockingDeque<>(); + this.renderSections = new ObjectArrayList<>(); + this.visibleSections = new ObjectArrayList<>(); + this.visibleSectionCount = new Reference2ObjectArrayMap<>(); + } + + public void invalidate() { + this.cameraSection.set(Integer.MAX_VALUE); + this.renderSections.clear(); + this.visibleSections.clear(); + this.visibleSectionCount.clear(); + } + + private void addAll() { + final Vector3ic origin = this.data.getChunkOrigin(); + final Vector3ic size = this.data.getSize(); + + for (int z = 0; z < size.z(); z++) { + for (int x = 0; x < size.x(); x++) { + for (int y = 0; y < size.y(); y++) { + final FancySubLevelSectionCompiler.RenderSection section = this.data.getRenderSection(origin.x() + x, origin.y() + y, origin.z() + z); + if (section != null) { + this.addSection(section); + } + } + } + } + } + + public void update(final int sectionX, final int sectionY, final int sectionZ, final boolean smartCull, final CullFrustum cullFrustum) { + try { + this.sectionLock.lock(); + if (!this.cameraSection.equals(sectionX, sectionY, sectionZ)) { + this.cameraSection.set(sectionX, sectionY, sectionZ); + this.renderSections.clear(); + // TODO + + this.addAll(); + +// final Vector3ic size = this.data.getSize(); +// if (size.x() * size.y() * size.z() < MIN_OCCLUSION_COUNT) { +// this.addAll(); +// return; +// } +// +// final Vector3ic origin = this.data.getChunkOrigin(); +// +// final FancySubLevelSectionCompiler.RenderSection currentSection = data.getRenderSection(origin.x() + sectionX, origin.y() + sectionY, origin.z() + sectionZ); +// if (currentSection != null) { +// this.sectionQueue.add(currentSection); +// } +// +// if (this.sectionQueue.isEmpty()) { +// return; // TODO +// } +// +// while (!this.sectionQueue.isEmpty()) { +// final FancySubLevelSectionCompiler.RenderSection section = this.sectionQueue.poll(); +// +// } + } + + final Matrix4d transform = this.data.getSubLevel().renderPose().bakeIntoMatrix(new Matrix4d()); + final Vector3d pos = new Vector3d(); + + this.visibleSections.clear(); + for (final AtomicInteger value : this.visibleSectionCount.values()) { + value.set(0); + } + + for (final FancySubLevelSectionCompiler.RenderSection section : this.renderSections) { + final SectionPos sectionPos = section.getPos(); + + transform.transformPosition(sectionPos.minBlockX() + 8, sectionPos.minBlockY() + 8, sectionPos.minBlockZ() + 8, pos); + if (cullFrustum.testSphere(pos, 14F)) { + this.visibleSections.add(section); + + final FancySubLevelSectionCompiler.CompiledSection compiledSection = section.getCompiledSection(); + for (final RenderType layer : compiledSection.getLayers()) { + this.visibleSectionCount.computeIfAbsent(layer, unused -> new AtomicInteger()).incrementAndGet(); + } + } + } + } finally { + this.sectionLock.unlock(); + } + } + + public void addSection(final FancySubLevelSectionCompiler.RenderSection renderSection) { + try { + this.sectionLock.lock(); + final FancySubLevelSectionCompiler.CompiledSection compiledSection = renderSection.getCompiledSection(); + if (compiledSection.hasNoRenderableLayers()) { + this.renderSections.remove(renderSection); + return; + } + + if (!this.renderSections.contains(renderSection)) { + this.renderSections.add(renderSection); + } + } finally { + this.sectionLock.unlock(); + } + } + + public List getVisibleSections() { + return this.visibleSections; + } + + public boolean hasLayer(final RenderType renderType) { + final AtomicInteger count = this.visibleSectionCount.get(renderType); + return count != null && count.get() > 0; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.java new file mode 100644 index 0000000..129948a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.java @@ -0,0 +1,198 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.client.Camera; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.core.SectionPos; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.joml.Vector3i; +import org.joml.Vector3ic; + +import java.util.LinkedList; +import java.util.List; + +public class FancySubLevelRenderData implements SubLevelRenderData { + + private final ClientSubLevel subLevel; + private final FancySubLevelSectionCompiler compiler; + + private final Vector3d origin = new Vector3d(); + private final Vector3i chunkOrigin = new Vector3i(); + private final Vector3i size = new Vector3i(); + + private final List allRenderSections = new ObjectArrayList<>(); + private final List dirtyRenderSections = new LinkedList<>(); + private final FancySubLevelOcclusionData occlusionData; + private FancySubLevelSectionCompiler.RenderSection[] renderSections; + + public FancySubLevelRenderData(final ClientSubLevel subLevel, final FancySubLevelSectionCompiler compiler) { + this.subLevel = subLevel; + this.compiler = compiler; + this.occlusionData = new FancySubLevelOcclusionData(this); + this.resize(); + } + + /** + * Gets an index in the render section grid from a global position + */ + private int getIndex(final int x, final int y, final int z) { + return (x - this.chunkOrigin.x()) + (y - this.chunkOrigin.y()) * this.size.x() + (z - this.chunkOrigin.z()) * this.size.x() * this.size.y(); + } + + /** + * Checks if a global section coordinate is in bounds + */ + private boolean inBounds(final int x, final int y, final int z) { + final int localX = x - this.chunkOrigin.x(); + final int localY = y - this.chunkOrigin.y(); + final int localZ = z - this.chunkOrigin.z(); + return localX >= 0 && localY >= 0 && localZ >= 0 && + localX < this.size.x() && localY < this.size.y() && localZ < this.size.z(); + + } + + public void resize() { + final BoundingBox3ic bounds = this.subLevel.getPlot().getBoundingBox(); + for (final FancySubLevelSectionCompiler.RenderSection section : this.allRenderSections) { + section.free(); + } + this.allRenderSections.clear(); + this.dirtyRenderSections.clear(); + + if (bounds != null && !bounds.equals(BoundingBox3i.EMPTY) && bounds.volume() > 0.0) { + final Vector3i minChunkPos = new Vector3i(bounds.minX() >> 4, bounds.minY() >> 4, bounds.minZ() >> 4); + final Vector3i maxChunkPos = new Vector3i(bounds.maxX() >> 4, bounds.maxY() >> 4, bounds.maxZ() >> 4); + + this.size.set(maxChunkPos.x() - minChunkPos.x() + 1, maxChunkPos.y() - minChunkPos.y() + 1, maxChunkPos.z() - minChunkPos.z() + 1); + this.chunkOrigin.set(minChunkPos); + this.origin.set(minChunkPos.x() << 4, minChunkPos.y() << 4, minChunkPos.z() << 4); + + this.renderSections = new FancySubLevelSectionCompiler.RenderSection[this.size.x() * this.size.y() * this.size.z()]; + + for (int z = minChunkPos.z(); z <= maxChunkPos.z(); z++) { + for (int x = minChunkPos.x(); x <= maxChunkPos.x(); x++) { + for (int y = minChunkPos.y(); y <= maxChunkPos.y(); y++) { + final FancySubLevelSectionCompiler.RenderSection section = new FancySubLevelSectionCompiler.RenderSection(SectionPos.of(x, y, z), minChunkPos); + this.renderSections[this.getIndex(x, y, z)] = section; + this.allRenderSections.add(section); + if (section.isDirty()) { + this.dirtyRenderSections.add(section); + } + } + } + } + } + + this.occlusionData.invalidate(); + } + + /** + * Retrieves a render section relative to this plot. + * + * @param x The x-relative position + * @param y The y-relative position + * @param z The z-relative position + * @return The section at that location or null if out of bounds + */ + public @Nullable FancySubLevelSectionCompiler.RenderSection getRenderSection(final int x, final int y, final int z) { + final int index = this.getIndex(x, y, z); + return index >= 0 && index < this.renderSections.length ? this.renderSections[index] : null; + } + + public Vector3dc getOrigin() { + return this.origin; + } + + public Vector3ic getChunkOrigin() { + return this.chunkOrigin; + } + + public Vector3ic getSize() { + return this.size; + } + + @Override + public void rebuild() { + // Since the buffer is fully cleared by the dispatcher, there's no point in looping through every section to free it + this.allRenderSections.clear(); + this.resize(); + } + + /** + * Checks if a section in global section coordinates is compiled + * + * @param x the global x coordinate + * @param y the global y coordinate + * @param z the global z coordinate + * @return if the section exists and is compiled + */ + @Override + public boolean isSectionCompiled(final int x, final int y, final int z) { + final FancySubLevelSectionCompiler.RenderSection section = this.getRenderSection(x, y, z); + return section != null && section.getCompiledSection() != FancySubLevelSectionCompiler.CompiledSection.UNCOMPILED; + } + + @Override + public void setDirty(final int x, final int y, final int z, final boolean playerChanged) { + final int index = this.getIndex(x, y, z); + if (index < 0 || index >= this.renderSections.length) { + return; + } + + final FancySubLevelSectionCompiler.RenderSection section = this.renderSections[index]; + if (section == null) { + return; + } + + if (!section.isDirty()) { + section.setDirty(playerChanged); + this.dirtyRenderSections.add(section); + } + } + + @Override + public void compileSections(final PrioritizeChunkUpdates chunkUpdates, final RenderRegionCache renderRegionCache, final Camera camera) { + if (this.dirtyRenderSections.isEmpty()) { + return; + } + + final ClientLevel level = this.subLevel.getLevel(); + final Vector3d cameraPos = JOMLConversion.atCenterOf(camera.getBlockPosition()).sub(8, 8, 8); + this.subLevel.logicalPose().transformPositionInverse(cameraPos); + + for (final FancySubLevelSectionCompiler.RenderSection section : this.dirtyRenderSections) { + final SectionPos origin = section.getPos(); + final double distanceSq = cameraPos.distanceSquared( + origin.x() << SectionPos.SECTION_BITS, + origin.y() << SectionPos.SECTION_BITS, + origin.z() << SectionPos.SECTION_BITS); + + this.compiler.getScheduler().scheduleCompile(section, renderRegionCache.createRegion(level, section.getPos()), distanceSq, this.occlusionData::addSection); + section.setNotDirty(); + } + + this.dirtyRenderSections.clear(); + } + + @Override + public ClientSubLevel getSubLevel() { + return this.subLevel; + } + + @Override + public void close() { + } + + public FancySubLevelOcclusionData getOcclusionData() { + return this.occlusionData; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.java new file mode 100644 index 0000000..e055c03 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.java @@ -0,0 +1,221 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import com.google.common.collect.Lists; +import com.mojang.blaze3d.vertex.MeshData; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelTextureCache; +import dev.ryanhcode.sable.sublevel.render.fancy.task.FancySubLevelTaskScheduler; +import dev.ryanhcode.sable.sublevel.render.fancy.task.SubLevelTask; +import dev.ryanhcode.sable.sublevel.render.staging.StagingBuffer; +import foundry.veil.api.client.render.VeilRenderSystem; +import it.unimi.dsi.fastutil.ints.IntList; +import it.unimi.dsi.fastutil.objects.Reference2ObjectArrayMap; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.block.BlockRenderDispatcher; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.client.renderer.chunk.VisibilitySet; +import net.minecraft.core.Direction; +import net.minecraft.core.SectionPos; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3ic; +import org.lwjgl.system.NativeResource; + +import java.util.ArrayList; +import java.util.Collection; +import java.util.List; +import java.util.Map; +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.atomic.AtomicReference; + +public class FancySubLevelSectionCompiler implements SubLevelTask.MeshUploader, NativeResource { + + private final BucketRenderBuffer buffer; + private final SubLevelTextureCache textureCache; + private final SubLevelMeshBuilder meshBuilder; + private final FancySubLevelTaskScheduler scheduler; + + public FancySubLevelSectionCompiler(final StagingBuffer stagingBuffer, final BlockRenderDispatcher blockRenderDispatcher, final BlockEntityRenderDispatcher blockEntityRenderDispatcher) { + this.buffer = new BucketRenderBuffer(stagingBuffer); + this.textureCache = new SubLevelTextureCache(); + this.meshBuilder = new SubLevelMeshBuilder(blockRenderDispatcher, blockEntityRenderDispatcher, this.textureCache); + this.scheduler = new FancySubLevelTaskScheduler(this, Runtime.getRuntime().availableProcessors()); + this.scheduler.start(); + } + + @Override + public CompletableFuture upload(final SubLevelMeshBuilder.QuadMesh mesh) { + return CompletableFuture.supplyAsync(() -> { + final IntList[] faces = mesh.getFaces(); + final BucketRenderBuffer.Slice[] slices = new BucketRenderBuffer.Slice[faces.length]; + for (int i = 0; i < faces.length; i++) { + final IntList array = faces[i]; + if (!array.isEmpty()) { + final BucketRenderBuffer.Slice slice = this.buffer.allocate(array.size() * Integer.BYTES / BucketRenderBuffer.QUAD_SIZE); + slice.writeInt().put(array.toIntArray()); + slice.flush(); + slices[i] = slice; + } + } + return slices; + }, Minecraft.getInstance()); + } + + public BucketRenderBuffer getBuffer() { + return this.buffer; + } + + public SubLevelTextureCache getTextureCache() { + return this.textureCache; + } + + @Override + public SubLevelMeshBuilder getMeshBuilder() { + return this.meshBuilder; + } + + public FancySubLevelTaskScheduler getScheduler() { + return this.scheduler; + } + + @Override + public void free() { + this.buffer.free(); + this.textureCache.free(); + } + + public static class RenderSection implements NativeResource { + + private final SectionPos pos; + private final Vector3ic origin; + private final AtomicReference compiledSection; + private boolean dirty; + private boolean dirtyFromPlayer; + + public RenderSection(final SectionPos pos, final Vector3ic origin) { + this.pos = pos; + this.origin = origin; + this.compiledSection = new AtomicReference<>(CompiledSection.UNCOMPILED); + this.dirty = true; + this.dirtyFromPlayer = false; + } + + public void setCompiledSection(final CompiledSection compiledSection) { + final CompiledSection oldSection = this.compiledSection.getAndSet(compiledSection); + if (oldSection != null) { + // Make sure the old section waits until the next frame to be destroyed + VeilRenderSystem.renderThreadExecutor().execute(oldSection::free); + } + } + + public void setDirty(final boolean playerChanged) { + this.dirty = true; + this.dirtyFromPlayer |= playerChanged; + } + + public void setNotDirty() { + this.dirty = false; + this.dirtyFromPlayer = false; + } + + public SectionPos getPos() { + return this.pos; + } + + public Vector3ic getOrigin() { + return this.origin; + } + + public CompiledSection getCompiledSection() { + return this.compiledSection.get(); + } + + public boolean isDirty() { + return this.dirty; + } + + public boolean isDirtyFromPlayer() { + return this.dirtyFromPlayer; + } + + @Override + public void free() { + this.compiledSection.getAndSet(CompiledSection.UNCOMPILED).free(); + } + } + + public static class CompiledSection implements NativeResource { + + public static final CompiledSection UNCOMPILED = new CompiledSection() { + public boolean facesCanSeeEachother(final Direction face, final Direction otherFace) { + return false; + } + }; + public static final CompiledSection EMPTY = new CompiledSection() { + public boolean facesCanSeeEachother(final Direction face, final Direction otherFace) { + return true; + } + }; + + private final Map quadLayers = new Reference2ObjectArrayMap<>(RenderType.chunkBufferLayers().size()); + private final List renderableBlockEntities = Lists.newArrayList(); + private VisibilitySet visibilitySet = new VisibilitySet(); + @Nullable + private MeshData.SortState transparencyState; + + public static CompiledSection create(final SubLevelMeshBuilder.Results results, final SubLevelTask.MeshUploader meshUploader) { + try (results) { + final FancySubLevelSectionCompiler.CompiledSection compiledSection = new FancySubLevelSectionCompiler.CompiledSection(); + compiledSection.visibilitySet = results.visibilitySet; + compiledSection.renderableBlockEntities.addAll(results.blockEntities); + compiledSection.transparencyState = results.transparencyState; + + final List> futures = new ArrayList<>(results.renderedQuadLayers.size()); + for (final Map.Entry entry : results.renderedQuadLayers.entrySet()) { + futures.add(meshUploader.upload(entry.getValue()) + .thenAcceptAsync(slice -> compiledSection.quadLayers.put(entry.getKey(), slice), Minecraft.getInstance())); + } + + CompletableFuture.allOf(futures.toArray(CompletableFuture[]::new)).join(); + return compiledSection; + } + } + + public Collection getLayers() { + return this.quadLayers.keySet(); + } + + public boolean hasNoRenderableLayers() { + return this.quadLayers.isEmpty(); + } + + public @Nullable BucketRenderBuffer.Slice get(final RenderType renderType, final Direction face) { + final BucketRenderBuffer.Slice[] slices = this.quadLayers.get(renderType); + return slices != null ? slices[face.get3DDataValue()] : null; + } + + public boolean isEmpty(final RenderType renderType) { + return !this.quadLayers.containsKey(renderType); + } + + public List getRenderableBlockEntities() { + return this.renderableBlockEntities; + } + + public boolean facesCanSeeEachother(final Direction face, final Direction otherFace) { + return this.visibilitySet.visibilityBetween(face, otherFace); + } + + @Override + public void free() { + for (final BucketRenderBuffer.Slice[] value : this.quadLayers.values()) { + for (final BucketRenderBuffer.Slice slice : value) { + if (slice != null) { + slice.free(); + } + } + } + this.quadLayers.clear(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.java new file mode 100644 index 0000000..e38ba57 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import dev.ryanhcode.sable.Sable; +import foundry.veil.api.client.render.shader.processor.ShaderPreProcessor; +import io.github.ocelot.glslprocessor.api.GlslParser; +import io.github.ocelot.glslprocessor.api.GlslSyntaxException; +import io.github.ocelot.glslprocessor.api.grammar.GlslTypeQualifier; +import io.github.ocelot.glslprocessor.api.node.GlslNodeList; +import io.github.ocelot.glslprocessor.api.node.GlslTree; +import io.github.ocelot.glslprocessor.api.node.variable.GlslNewFieldNode; +import io.github.ocelot.glslprocessor.lib.anarres.cpp.LexerException; +import net.minecraft.resources.ResourceLocation; + +import java.io.IOException; +import java.util.Objects; + +public class FancySubLevelShaderProcessor implements ShaderPreProcessor { + + public static final String BUFFER_SIZE = "SABLE_TEXTURE_CACHE_SIZE"; + + @Override + public void modify(final Context ctx, final GlslTree tree) throws IOException, GlslSyntaxException, LexerException { + if (!(ctx instanceof final VeilContext veilContext) || !veilContext.isDynamic()) { + return; + } + + final ResourceLocation name = Objects.requireNonNull(veilContext.name(), "name"); + if (!name.getNamespace().equals(Sable.MOD_ID) || !name.getPath().startsWith("dynamic_sublevel/")) { + return; + } + + if (ctx.isVertex()) { + veilContext.addDefinitionDependency(BUFFER_SIZE); + + // Remove all inputs + tree.getBody().removeIf(next -> next instanceof final GlslNewFieldNode field && field.getType().getQualifiers().contains(GlslTypeQualifier.StorageType.IN)); + ctx.include(tree, Sable.sablePath("fancy_sublevel_vertex"), IncludeOverloadStrategy.FAIL); + + final GlslNodeList body = Objects.requireNonNull(tree.mainFunction().orElseThrow().getBody()); + body.add(0, GlslParser.parseExpression("_sable_unpack()")); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.java new file mode 100644 index 0000000..27618ad --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.java @@ -0,0 +1,289 @@ +package dev.ryanhcode.sable.sublevel.render.fancy; + +import com.mojang.blaze3d.vertex.ByteBufferBuilder; +import com.mojang.blaze3d.vertex.MeshData; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelTextureCache; +import it.unimi.dsi.fastutil.ints.IntArrayList; +import it.unimi.dsi.fastutil.ints.IntList; +import it.unimi.dsi.fastutil.objects.Reference2ObjectArrayMap; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.*; +import net.minecraft.client.renderer.block.BlockRenderDispatcher; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.client.renderer.block.model.BakedQuad; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.chunk.RenderChunkRegion; +import net.minecraft.client.renderer.chunk.VisGraph; +import net.minecraft.client.renderer.chunk.VisibilitySet; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.SectionPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.BlockAndTintGetter; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3ic; +import org.lwjgl.system.NativeResource; + +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class SubLevelMeshBuilder { + + private static final Direction[] DIRECTIONS = Direction.values(); + + private final BlockRenderDispatcher blockRenderer; + private final BlockEntityRenderDispatcher blockEntityRenderer; + private final SubLevelTextureCache textureCache; + + public SubLevelMeshBuilder( + final BlockRenderDispatcher blockRenderDispatcher, + final BlockEntityRenderDispatcher blockEntityRenderDispatcher, + final SubLevelTextureCache textureCache) { + this.blockRenderer = blockRenderDispatcher; + this.blockEntityRenderer = blockEntityRenderDispatcher; + this.textureCache = textureCache; + } + + public Results compile(final Vector3ic origin, final SectionPos sectionPos, final RenderChunkRegion renderChunkRegion, final SectionBufferBuilderPack sectionBufferBuilderPack) { + final Results results = new Results(); + final BlockPos min = sectionPos.origin(); + final BlockPos max = min.offset(15, 15, 15); + final VisGraph visGraph = new VisGraph(); + final PoseStack poseStack = new PoseStack(); + ModelBlockRenderer.enableCaching(); + final Map faceMeshes = new Reference2ObjectArrayMap<>(RenderType.chunkBufferLayers().size()); + final RandomSource randomSource = RandomSource.create(); + final BlockPos.MutableBlockPos offsetPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos rightPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos upPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos forwardPos = new BlockPos.MutableBlockPos(); + final BlockPos.MutableBlockPos aoOffsetPos = new BlockPos.MutableBlockPos(); + + for (final BlockPos pos : BlockPos.betweenClosed(min, max)) { + final BlockState blockState = renderChunkRegion.getBlockState(pos); + if (blockState.isSolidRender(renderChunkRegion, pos)) { + visGraph.setOpaque(pos); + } + + if (blockState.hasBlockEntity()) { + final BlockEntity blockEntity = renderChunkRegion.getBlockEntity(pos); + if (blockEntity != null) { + this.handleBlockEntity(results, blockEntity); + } + } + + // TODO +// final FluidState fluidState = blockState.getFluidState(); +// if (!fluidState.isEmpty()) { +// final RenderType renderType = ItemBlockRenderTypes.getRenderLayer(fluidState); +// final BufferBuilder bufferBuilder = this.getOrBeginLayer(map, sectionBufferBuilderPack, renderType); +// this.blockRenderer.renderLiquid(blockPos3, renderChunkRegion, bufferBuilder, blockState, fluidState); +// } + + if (blockState.getRenderShape() == RenderShape.MODEL) { + final RenderType renderType = ItemBlockRenderTypes.getChunkRenderType(blockState); + + final BakedModel model = this.blockRenderer.getBlockModel(blockState); + final long seed = blockState.getSeed(pos); + + randomSource.setSeed(seed); + final List unculledQuads = model.getQuads(blockState, null, randomSource); + if (unculledQuads.isEmpty()) { + final BakedQuad[] quads = new BakedQuad[6]; + boolean valid = true; + + for (final Direction direction : DIRECTIONS) { + randomSource.setSeed(seed); + final List culledQuads = model.getQuads(blockState, direction, randomSource); + if (culledQuads.size() != 1) { + valid = false; + break; + } + + final BakedQuad quad = culledQuads.getFirst(); + if (!isAxisAligned(quad)) { + valid = false; + break; + } + + quads[direction.get3DDataValue()] = quad; + } + + if (valid) { + final QuadMesh mesh = faceMeshes.computeIfAbsent(renderType, unused -> new QuadMesh()); + + final int posX = pos.getX() & 15; + final int posY = pos.getY() & 15; + final int posZ = pos.getZ() & 15; + + for (final Direction direction : DIRECTIONS) { + offsetPos.setWithOffset(pos, direction); + if (Block.shouldRenderFace(blockState, renderChunkRegion, pos, direction, offsetPos)) { + final int packedLight = LevelRenderer.getLightColor(renderChunkRegion, blockState, offsetPos); + final int blockLight = LightTexture.block(packedLight); + final int skyLight = LightTexture.sky(packedLight); + final int textureId = this.textureCache.getTextureId(quads[direction.get3DDataValue()]); + final int packedData = posX | posY << 4 | posZ << 8 | skyLight << 12 | blockLight << 16 | textureId << 20; + final IntList face = mesh.faces[direction.get3DDataValue()]; + face.add(packedData); + face.add((sectionPos.x() - origin.x()) | ((sectionPos.y() - origin.y()) << 8) | ((sectionPos.z() - origin.z()) << 16) | getFaceAO(renderChunkRegion, offsetPos, direction, aoOffsetPos, rightPos, upPos, forwardPos)); + } + } + continue; + } + } + + System.out.printf("Block at %s isn't a cube %n", pos); + // TODO +// poseStack.pushPose(); +// poseStack.translate((float) SectionPos.sectionRelative(pos.getX()), (float) SectionPos.sectionRelative(pos.getY()), (float) SectionPos.sectionRelative(pos.getZ())); +// this.blockRenderer.renderBatched(blockState, pos, renderChunkRegion, poseStack, bufferBuilder, true, randomSource); +// poseStack.popPose(); + } + } + + results.renderedQuadLayers.putAll(faceMeshes); + + ModelBlockRenderer.clearCache(); + results.visibilitySet = visGraph.resolve(); + return results; + } + + private static int getFaceAO(final BlockAndTintGetter level, final BlockPos pos, final Direction direction, final BlockPos.MutableBlockPos offset, final BlockPos.MutableBlockPos right, final BlockPos.MutableBlockPos up, final BlockPos.MutableBlockPos forward) { + if (!Minecraft.useAmbientOcclusion()) { + return 0; + } + + switch (direction) { + case DOWN -> { + right.set(0, 0, -1); + up.set(1, 0, 0); + } + case UP -> { + right.set(0, 0, 1); + up.set(1, 0, 0); + } + case NORTH -> { + right.set(-1, 0, 0); + up.set(0, 1, 0); + } + case SOUTH -> { + right.set(1, 0, 0); + up.set(0, 1, 0); + } + case WEST -> { + right.set(0, 0, 1); + up.set(0, 1, 0); + } + case EAST -> { + right.set(0, 0, -1); + up.set(0, 1, 0); + } + } + + offset.setWithOffset(pos, -up.getX(), -up.getY(), -up.getZ()); + final boolean downAO = isOpaque(level, offset); + final boolean downLeftAO = isOpaque(level, offset.move(-right.getX(), -right.getY(), -right.getZ())); + final boolean leftAO = isOpaque(level, offset.move(up.getX(), up.getY(), up.getZ())); + final boolean upLeftAO = isOpaque(level, offset.move(up.getX(), up.getY(), up.getZ())); + final boolean upAO = isOpaque(level, offset.move(right.getX(), right.getY(), right.getZ())); + final boolean upRightAO = isOpaque(level, offset.move(right.getX(), right.getY(), right.getZ())); + final boolean rightAO = isOpaque(level, offset.move(-up.getX(), -up.getY(), -up.getZ())); + final boolean downRightAO = isOpaque(level, offset.move(-up.getX(), -up.getY(), -up.getZ())); + + final int ao0 = vertexAO(downAO, leftAO, downLeftAO); + final int ao1 = vertexAO(downAO, rightAO, downRightAO); + final int ao2 = vertexAO(upAO, rightAO, upRightAO); + final int ao3 = vertexAO(upAO, leftAO, upLeftAO); + + return switch (direction) { + case NORTH, SOUTH, WEST, EAST -> ao3 << 24 | ao0 << 26 | ao1 << 28 | ao2 << 30; + default -> ao0 << 24 | ao1 << 26 | ao2 << 28 | ao3 << 30; + }; + } + + private static int vertexAO(final boolean side1, final boolean side2, final boolean corner) { + if (side1 && side2) { + return 3; + } + + return (side1 ? 1 : 0) + (side2 ? 1 : 0) + (corner ? 1 : 0); + } + + private static boolean isOpaque(final BlockAndTintGetter level, final BlockPos pos) { + return level.getBlockState(pos).isCollisionShapeFullBlock(level, pos); + } + + private static boolean isAxisAligned(final BakedQuad quad) { + final int[] vertices = quad.getVertices(); + for (int i = 0; i < vertices.length / 8; i++) { + final float x = Float.intBitsToFloat(vertices[i * 8]); + final float y = Float.intBitsToFloat(vertices[i * 8 + 1]); + final float z = Float.intBitsToFloat(vertices[i * 8 + 2]); + if (Math.abs(x - Math.round(x)) > 1e-2 || Math.abs(y - Math.round(y)) > 1e-2 || Math.abs(z - Math.round(z)) > 1e-2) { + return false; + } + } + return true; + } + + private ByteBufferBuilder getOrBeginQuadLayer(final Map map, final SectionBufferBuilderPack pack, final RenderType renderType) { + ByteBufferBuilder bufferBuilder = map.get(renderType); + if (bufferBuilder == null) { + bufferBuilder = pack.buffer(renderType); + map.put(renderType, bufferBuilder); + } + + return bufferBuilder; + } + + private void handleBlockEntity(final Results results, final E blockEntity) { + final BlockEntityRenderer blockEntityRenderer = this.blockEntityRenderer.getRenderer(blockEntity); + if (blockEntityRenderer != null) { + if (blockEntityRenderer.shouldRenderOffScreen(blockEntity)) { + results.globalBlockEntities.add(blockEntity); + } else { + results.blockEntities.add(blockEntity); + } + } + } + + public static class QuadMesh { + + private final IntList[] faces; + + public QuadMesh() { + this.faces = new IntArrayList[DIRECTIONS.length]; + for (int i = 0; i < this.faces.length; i++) { + this.faces[i] = new IntArrayList(); + } + } + + public IntList[] getFaces() { + return this.faces; + } + } + + public static final class Results implements NativeResource { + public final List globalBlockEntities = new ArrayList<>(); + public final List blockEntities = new ArrayList<>(); + public final Map renderedQuadLayers = new Reference2ObjectArrayMap<>(); + public final Map renderedModelLayers = new Reference2ObjectArrayMap<>(); + public VisibilitySet visibilitySet = new VisibilitySet(); + @Nullable + public MeshData.SortState transparencyState; + + @Override + public void free() { + this.renderedModelLayers.values().forEach(MeshData::close); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.java new file mode 100644 index 0000000..ad85737 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.java @@ -0,0 +1,132 @@ +package dev.ryanhcode.sable.sublevel.render.fancy.task; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.render.fancy.FancySubLevelSectionCompiler; +import dev.ryanhcode.sable.sublevel.render.fancy.SubLevelMeshBuilder; +import net.minecraft.client.renderer.SectionBufferBuilderPack; +import net.minecraft.client.renderer.chunk.RenderChunkRegion; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3i; +import org.joml.Vector3ic; + +import java.util.Queue; +import java.util.concurrent.PriorityBlockingQueue; +import java.util.concurrent.atomic.AtomicBoolean; +import java.util.concurrent.locks.Condition; +import java.util.concurrent.locks.Lock; +import java.util.concurrent.locks.ReentrantLock; +import java.util.function.Consumer; + +public class FancySubLevelTaskScheduler { + + private final SubLevelTask.MeshUploader meshUploader; + private final Thread[] threads; + private final AtomicBoolean running; + private final Lock taskLock; + private final Condition hasWork; + private final Queue tasks; + + public FancySubLevelTaskScheduler(final SubLevelTask.MeshUploader meshUploader, final int threadCount) { + this.meshUploader = meshUploader; + this.threads = new Thread[threadCount]; + this.running = new AtomicBoolean(false); + this.taskLock = new ReentrantLock(); + this.hasWork = this.taskLock.newCondition(); + this.tasks = new PriorityBlockingQueue<>(); + } + + private void runTask() { + try (final SectionBufferBuilderPack pack = new SectionBufferBuilderPack()) { + while (true) { + final Task task; + + try { + this.taskLock.lock(); + task = this.tasks.poll(); + if (task == null) { + if (this.running.get()) { + this.hasWork.awaitUninterruptibly(); + continue; + } + + break; + } + } finally { + this.taskLock.unlock(); + } + + try { + task.task.process(pack, this.meshUploader); + } catch (final Throwable t) { + Sable.LOGGER.error("Error running sub-level task", t); + } + if (task.onComplete != null) { + task.onComplete.run(); + } + } + } + } + + public void start() { + if (!this.running.compareAndSet(false, true)) { + return; + } + + for (int i = 0; i < this.threads.length; i++) { + final Thread thread = new Thread(this::runTask, "FancySubLevelTaskScheduler#" + i); + thread.setPriority(Thread.NORM_PRIORITY - 2); + thread.start(); + this.threads[i] = thread; + } + } + + public void stop() { + if (!this.running.compareAndSet(true, false)) { + return; + } + + this.hasWork.signalAll(); + for (final Thread thread : this.threads) { + try { + thread.join(); + } catch (final InterruptedException e) { + Sable.LOGGER.error("Error shutting down task thread", e); + } + } + } + + public void schedule(final SubLevelTask task, final double distance, @Nullable final Runnable onComplete) { + if (!this.running.get()) { + throw new IllegalStateException("SubLevelTaskScheduler is not running"); + } + + try { + this.taskLock.lock(); + this.tasks.add(new Task(task, distance, onComplete)); + this.hasWork.signal(); + } finally { + this.taskLock.unlock(); + } + } + + public void scheduleCompile(final FancySubLevelSectionCompiler.RenderSection section, @Nullable final RenderChunkRegion renderChunkRegion, final double distance, @Nullable final Consumer onComplete) { + if (renderChunkRegion == null) { + section.setCompiledSection(FancySubLevelSectionCompiler.CompiledSection.EMPTY); + return; + } + + this.schedule((pack, uploader) -> { + final SubLevelMeshBuilder.Results results = uploader.getMeshBuilder().compile(section.getOrigin(), section.getPos(), renderChunkRegion, pack); + section.setCompiledSection(FancySubLevelSectionCompiler.CompiledSection.create(results, uploader)); + }, distance, onComplete != null ? () -> onComplete.accept(section) : null); + } + + private record Task(SubLevelTask task, double distance, @Nullable Runnable onComplete) implements Comparable { + + @Override + public int compareTo(@NotNull final FancySubLevelTaskScheduler.Task o) { + return Double.compare(this.distance, o.distance); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.java new file mode 100644 index 0000000..073ed04 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.sublevel.render.fancy.task; + +import dev.ryanhcode.sable.sublevel.render.fancy.BucketRenderBuffer; +import dev.ryanhcode.sable.sublevel.render.fancy.SubLevelMeshBuilder; +import net.minecraft.client.renderer.SectionBufferBuilderPack; + +import java.util.concurrent.CompletableFuture; + +@FunctionalInterface +public interface SubLevelTask { + + void process(final SectionBufferBuilderPack pack, final MeshUploader uploader); + + interface MeshUploader { + CompletableFuture upload(final SubLevelMeshBuilder.QuadMesh mesh); + + SubLevelMeshBuilder getMeshBuilder(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.java new file mode 100644 index 0000000..1cd677b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.java @@ -0,0 +1,187 @@ +package dev.ryanhcode.sable.sublevel.render.sodium; + +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.RenderSectionManagerExtension; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.SodiumWorldRendererExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import it.unimi.dsi.fastutil.objects.ObjectSet; +import net.caffeinemc.mods.sodium.client.render.SodiumWorldRenderer; +import net.caffeinemc.mods.sodium.client.render.chunk.RenderSection; +import net.minecraft.client.Camera; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.core.SectionPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.lighting.LevelLightEngine; +import org.joml.Vector3d; +import org.joml.Vector3i; + +import java.util.Iterator; + +public class SodiumSubLevelRenderData implements SubLevelRenderData { + + + public final Vector3d origin = new Vector3d(); + /** + * The origin(minimum) of the render section grid + */ + public final Vector3i chunkOrigin = new Vector3i(); + /** + * The sub-level this renderer is for + */ + private final ClientSubLevel subLevel; + /** + * The size of the render section grid + */ + private final Vector3i size = new Vector3i(); + private boolean initialized = false; + + private final ObjectSet newSections = new ObjectOpenHashSet<>(); + private final ObjectSet visibleSections = new ObjectOpenHashSet<>(); + + /** + * Creates a new renderer for the given sub-level + * + * @param subLevel the sub-level to render + */ + public SodiumSubLevelRenderData(final ClientSubLevel subLevel) { + this.subLevel = subLevel; + + this.resize(); + } + + public void resize() { + final SodiumWorldRenderer worldRenderer = SodiumWorldRenderer.instance(); + final SubLevelRenderSectionManager renderSectionManager = ((SodiumWorldRendererExtension) worldRenderer).sable$getSubLevelRenderSectionManager(this.subLevel); + + if (renderSectionManager == null) { + return; + } + + this.initialized = true; + + final BoundingBox3ic bounds = this.subLevel.getPlot().getBoundingBox(); + + if (bounds != null && !bounds.equals(BoundingBox3i.EMPTY) && bounds.volume() > 0.0) { + final Vector3i minChunkPos = new Vector3i(bounds.minX() >> 4, bounds.minY() >> 4, bounds.minZ() >> 4); + final Vector3i maxChunkPos = new Vector3i(bounds.maxX() >> 4, bounds.maxY() >> 4, bounds.maxZ() >> 4); + + final Vector3i oldSize = new Vector3i(this.size); + final Vector3i oldOrigin = new Vector3i(this.chunkOrigin); + + this.size.set(maxChunkPos.x() - minChunkPos.x() + 1, maxChunkPos.y() - minChunkPos.y() + 1, maxChunkPos.z() - minChunkPos.z() + 1); + this.chunkOrigin.set(minChunkPos); + this.origin.set(minChunkPos.x() << 4, minChunkPos.y() << 4, minChunkPos.z() << 4); + + + final RenderSectionManagerExtension renderSectionManagerExtension = (RenderSectionManagerExtension) renderSectionManager; + + for (int x = minChunkPos.x(); x <= maxChunkPos.x(); x++) { + for (int y = minChunkPos.y(); y <= maxChunkPos.y(); y++) { + for (int z = minChunkPos.z(); z <= maxChunkPos.z(); z++) { + if (!this.visibleSections.contains(SectionPos.of(x, y, z))) { + this.newSections.add(SectionPos.of(x, y, z)); + } + } + } + } + +// ObjectIterator iter = this.visibleSections.iterator(); +// while (iter.hasNext()) { +// SectionPos pos = iter.next(); +// if (pos.x() < minChunkPos.x() || pos.x() > maxChunkPos.x() || pos.y() < minChunkPos.y() || pos.y() > maxChunkPos.y() || pos.z() < minChunkPos.z() || pos.z() > maxChunkPos.z()) { +// iter.remove(); +// } +// } + } + } + + @Override + public void rebuild() { + // TODO + } + + @Override + public boolean isSectionCompiled(final int x, final int y, final int z) { + // TODO + return false; + } + + @Override + public void setDirty(final int x, final int y, final int z, final boolean playerChanged) { + // TODO + } + + @Override + public void compileSections(final PrioritizeChunkUpdates chunkUpdates, final RenderRegionCache renderRegionCache, final Camera camera) { + // TODO + } + + @Override + public ClientSubLevel getSubLevel() { + return this.subLevel; + } + + public void renderAdditional() { + if (!this.initialized) { + this.resize(); + } + } + + public void updateChunks(final boolean updateChunksImmediately) { + if (this.newSections.isEmpty()) { + return; + } + + + final Level level = this.subLevel.getLevel(); + final LevelLightEngine lightEngine = level.getLightEngine(); + final Iterator iterator = this.newSections.iterator(); + int count = 0; + + final SubLevelRenderSectionManager renderSectionManager = ((SodiumWorldRendererExtension) SodiumWorldRenderer.instance()).sable$getSubLevelRenderSectionManager(this.subLevel); + + final RenderSectionManagerExtension renderSectionManagerExtension = (RenderSectionManagerExtension) renderSectionManager; + + + while (iterator.hasNext() && count < 1000) { + final SectionPos newSection = iterator.next(); + if (lightEngine.lightOnInSection(newSection) && this.add(renderSectionManagerExtension, newSection, updateChunksImmediately)) { +// iterator.remove(); + } + count++; + } + + } + + private boolean add(final RenderSectionManagerExtension manager, final SectionPos section, final boolean updateChunksImmediately) { + RenderSection renderChunk = manager.sable$getRenderSection(section.x(), section.y(), section.z()); + + if (renderChunk == null) { + manager.sable$setRenderSectionDirty(section.x(), section.y(), section.z(), false); + return false; + } + + + if (renderChunk.getOriginX() != section.origin().getX() || renderChunk.getOriginY() != section.origin().getY() || renderChunk.getOriginZ() != section.origin().getZ()) { + manager.sable$setRenderSectionDirty(section.x(), section.y(), section.z(), false); + renderChunk = manager.sable$getRenderSection(section.x(), section.y(), section.z()); + + if (renderChunk == null || (renderChunk.getOriginX() != section.origin().getX() || renderChunk.getOriginY() != section.origin().getY() || renderChunk.getOriginZ() != section.origin().getZ())) { + return false; + } + } + + manager.sable$setRenderSectionDirty(section.x(), section.y(), section.z(), true); + return true; + + } + + @Override + public void close() { + ((SodiumWorldRendererExtension) SodiumWorldRenderer.instance()).sable$freeRenderSectionManager(this.subLevel); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.java new file mode 100644 index 0000000..7590534 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.java @@ -0,0 +1,93 @@ +package dev.ryanhcode.sable.sublevel.render.sodium; + + +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.DefaultChunkRendererExtension; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.OcclusionCullerExtension; +import dev.ryanhcode.sable.mixinterface.sublevel_render.sodium.RenderSectionManagerExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import net.caffeinemc.mods.sodium.client.gl.device.CommandList; +import net.caffeinemc.mods.sodium.client.render.chunk.ChunkRenderMatrices; +import net.caffeinemc.mods.sodium.client.render.chunk.RenderSectionManager; +import net.caffeinemc.mods.sodium.client.render.chunk.terrain.DefaultTerrainRenderPasses; +import net.caffeinemc.mods.sodium.client.render.viewport.CameraTransform; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.RenderType; +import org.joml.*; + +public class SubLevelRenderSectionManager extends RenderSectionManager { + + private final Vector3d chunkOffset = new Vector3d(); + private final Matrix4f projection = new Matrix4f(); + private final Matrix4f modelView = new Matrix4f(); + private final ClientSubLevel subLevel; + private CameraTransform cameraTransform; + + public SubLevelRenderSectionManager(final ClientSubLevel subLevel, final ClientLevel level, final int renderDistance, final CommandList commandList) { + super(level, renderDistance, commandList); + + this.subLevel = subLevel; + + final OcclusionCullerExtension culler = (OcclusionCullerExtension) ((RenderSectionManagerExtension) this).sable$getOcclusionCuller(); + culler.sable$setSubLevel(subLevel); + } + + public void apply(final ChunkRenderMatrices matrices, final double camX, final double camY, final double camZ) { + final SubLevelRenderData renderer = this.subLevel.getRenderData(); + + this.modelView.set(matrices.modelView()); + this.projection.set(RenderSystem.getProjectionMatrix()); + renderer.getChunkOffset(this.chunkOffset); + + final Vector3f pos = new Vector3f((float) camX, (float) camY, (float) camZ); + renderer.getTransformation(0, 0, 0).invert().transformPosition(pos); + this.cameraTransform = new CameraTransform(pos.x - this.chunkOffset.x, pos.y - this.chunkOffset.y, pos.z - this.chunkOffset.z); + + } + + + public void render(final ChunkRenderMatrices originalMatrices, final RenderType layer, final double camX, final double camY, final double camZ) { + final DefaultChunkRendererExtension chunkRenderer = (DefaultChunkRendererExtension) ((RenderSectionManagerExtension) this).sable$getChunkRenderer(); + chunkRenderer.sable$setCameraTransform(this.cameraTransform); + + final PoseStack matrixStack = new PoseStack(); + matrixStack.mulPose(new Matrix4f(originalMatrices.modelView())); + matrixStack.pushPose(); + + final Pose3dc pose = this.subLevel.renderPose(); + + final Vector3dc spos = pose.position(); + final Vector3dc scale = pose.scale(); + final Quaterniondc orientation = pose.orientation(); + + matrixStack.translate(spos.x() - camX, spos.y() - camY, spos.z() - camZ); + matrixStack.mulPose(new Quaternionf(orientation)); + matrixStack.scale((float) scale.x(), (float) scale.y(), (float) scale.z()); + + this.modelView.set(matrixStack.last().pose()); + matrixStack.popPose(); + final ChunkRenderMatrices matrices = new ChunkRenderMatrices(RenderSystem.getProjectionMatrix(), this.modelView); + + + if (layer == RenderType.solid()) { + this.renderLayer(matrices, DefaultTerrainRenderPasses.SOLID, -this.chunkOffset.x, -this.chunkOffset.y, -this.chunkOffset.z); + this.renderLayer(matrices, DefaultTerrainRenderPasses.CUTOUT, -this.chunkOffset.x, -this.chunkOffset.y, -this.chunkOffset.z); + } else if (layer == RenderType.translucent()) { + this.renderLayer(matrices, DefaultTerrainRenderPasses.TRANSLUCENT, -this.chunkOffset.x, -this.chunkOffset.y, -this.chunkOffset.z); + } + + chunkRenderer.sable$setCameraTransform(null); + } + + + /** + * @return if occlusion culling should be disabled for this section manager + */ + public boolean shouldDisableOcclusionCulling() { + return true; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.java new file mode 100644 index 0000000..6651e97 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.java @@ -0,0 +1,197 @@ +package dev.ryanhcode.sable.sublevel.render.staging; + +import com.mojang.blaze3d.platform.GlStateManager; +import it.unimi.dsi.fastutil.longs.LongArrayList; +import it.unimi.dsi.fastutil.longs.LongList; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; +import org.lwjgl.system.MemoryStack; + +import java.nio.IntBuffer; +import java.util.Collections; +import java.util.Iterator; +import java.util.List; + +import static org.lwjgl.opengl.GL30C.GL_MAP_WRITE_BIT; +import static org.lwjgl.opengl.GL44C.GL_MAP_PERSISTENT_BIT; +import static org.lwjgl.opengl.GL45C.*; + +@ApiStatus.Internal +public class DSAStagingBuffer extends StagingBuffer { + + private final long size; + private final int buffer; + private final long pointer; + /** + * The offset to the next location in the buffer data can be written to. + */ + private long writePointer; + /** + * The size of the chunk of memory available to be written to from write pointer. + */ + private long writeRegionSize; + /** + * A list of all regions ready to be flushed. + */ + private final LongList flushRegions; + private final List fences; + + DSAStagingBuffer(final long size) { + this.size = size; + this.buffer = GlStateManager._glGenBuffers(); + glNamedBufferStorage(this.buffer, size, GL_MAP_WRITE_BIT | GL_MAP_PERSISTENT_BIT | GL_CLIENT_STORAGE_BIT); + this.pointer = nglMapNamedBufferRange(this.buffer, 0, size, GL_MAP_WRITE_BIT | GL_MAP_INVALIDATE_BUFFER_BIT | GL_MAP_PERSISTENT_BIT | GL_MAP_FLUSH_EXPLICIT_BIT); + this.flushRegions = new LongArrayList(); + this.fences = new ObjectArrayList<>(); + + this.writePointer = 0; + this.writeRegionSize = size; + } + + @Override + public void updateFencedAreas() { + if (this.fences.isEmpty()) { + return; + } + + try (final MemoryStack stack = MemoryStack.stackPush()) { + final IntBuffer size = stack.mallocInt(1); + + final Iterator iterator = this.fences.iterator(); + while (iterator.hasNext()) { + final FencedArea area = iterator.next(); + final long fence = area.fence; + + final int status = glGetSynci(fence, GL_SYNC_STATUS, size); + if (size.get(0) != 1) { + throw new IllegalStateException("Expected 1 value from fence"); + } + + if (status == GL_SIGNALED) { + glDeleteSync(fence); + iterator.remove(); + } + } + } + } + + private long allocate(final long size) { + final long pointer = this.pointer + this.writePointer; + if (!this.flushRegions.isEmpty()) { + final long offset = this.flushRegions.getLong(this.flushRegions.size() - 2); + final long length = this.flushRegions.getLong(this.flushRegions.size() - 1); + if (offset + length == this.writePointer) { + // Since the elements are next to each other, just expand the + // previous region so the merger doesn't have to work so hard + this.flushRegions.set(this.flushRegions.size() - 1, length + size); + } else { + this.flushRegions.add(this.writePointer); + this.flushRegions.add(size); + } + } else { + this.flushRegions.add(this.writePointer); + this.flushRegions.add(size); + } + this.writePointer += size; + this.writeRegionSize -= size; + return pointer; + } + + @Override + public long reserve(final long size) { + if (this.writePointer + size >= this.writeRegionSize) { + // Since there is no more space, flush the fences early + this.updateFencedAreas(); + + // No fences left, so just restart + if (this.fences.isEmpty()) { + this.writePointer = 0; + this.writeRegionSize = this.size; + return this.allocate(size); + } + + // If there's space, then go after the fences + // Otherwise, try to go to the start + final FencedArea fence = this.fences.getLast(); + if (fence.offset + fence.length + size < this.size) { + // Check if the region has already been written to + long end = fence.offset + fence.length; + for (int i = 0; i < this.flushRegions.size(); i += 2) { + final long offset = this.flushRegions.getLong(i); + final long length = this.flushRegions.getLong(this.flushRegions.size() - 1); + if (offset + length + size >= this.size) { + this.writePointer = 0; + this.writeRegionSize = this.fences.getFirst().offset; + return this.allocate(size); + } else if (offset + length > end) { + end = offset + length; + } + } + + this.writePointer = end; + this.writeRegionSize = this.size - this.writePointer; + return this.allocate(size); + } + + // Otherwise, just go to the start + this.writePointer = 0; + this.writeRegionSize = this.fences.getFirst().offset; + } + return this.allocate(size); + } + + @Override + public void copy(final int buffer, final long writeOffset) { + if (this.flushRegions.isEmpty()) { + return; + } + + long writeRegionOffset = 0; + long offset = this.flushRegions.getLong(0); + long length = this.flushRegions.getLong(1); + for (int i = 2; i < this.flushRegions.size(); i += 2) { + final long regionOffset = this.flushRegions.getLong(i); + final long regionLength = this.flushRegions.getLong(i + 1); + if (offset + length == regionOffset) { + length += regionLength; + } else { + glFlushMappedNamedBufferRange(this.buffer, offset, length); + glCopyNamedBufferSubData(this.buffer, buffer, offset, writeRegionOffset + writeOffset, length); + this.fences.add(new FencedArea(glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0), offset, length)); + writeRegionOffset += length; + offset = regionOffset; + length = regionLength; + } + } + glFlushMappedNamedBufferRange(this.buffer, offset, length); + glCopyNamedBufferSubData(this.buffer, buffer, offset, writeRegionOffset + writeOffset, length); + this.fences.add(new FencedArea(glFenceSync(GL_SYNC_GPU_COMMANDS_COMPLETE, 0), offset, length)); + this.flushRegions.clear(); + + Collections.sort(this.fences); + } + + @Override + public long getSize() { + return this.size; + } + + @Override + public long getUsedSize() { + return this.writePointer; + } + + @Override + public void free() { + glUnmapNamedBuffer(this.buffer); + glDeleteBuffers(this.buffer); + } + + private record FencedArea(long fence, long offset, long length) implements Comparable { + @Override + public int compareTo(@NotNull final DSAStagingBuffer.FencedArea o) { + return Long.compare(this.offset, o.offset); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.java new file mode 100644 index 0000000..99c2369 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.java @@ -0,0 +1,72 @@ +package dev.ryanhcode.sable.sublevel.render.staging; + +import foundry.veil.api.client.render.VeilRenderSystem; +import org.lwjgl.opengl.GL; +import org.lwjgl.opengl.GLCapabilities; +import org.lwjgl.system.NativeResource; + +import java.util.function.LongFunction; + +public abstract class StagingBuffer implements NativeResource { + + private static StagingBufferType stagingBufferType; + + public static StagingBuffer create() { + return create(16L * 1024L * 1024L); + } + + public static StagingBuffer create(final long size) { + if (stagingBufferType == null) { + final GLCapabilities caps = GL.getCapabilities(); + if (caps.OpenGL44 || caps.GL_ARB_buffer_storage) { + stagingBufferType = VeilRenderSystem.directStateAccessSupported() ? StagingBufferType.DSA : StagingBufferType.ARB; + } else { + stagingBufferType = StagingBufferType.LEGACY; + } + } + return stagingBufferType.factory.apply(size); + } + + /** + * Attempts to free space in the buffer by checking the status of existing syncs. + */ + public abstract void updateFencedAreas(); + + /** + * Queues the specified data to be written to the staging buffer for a future copy. + * + * @param size The size of the region to allocate + * @return A pointer data can be written to + */ + public abstract long reserve(final long size); + + /** + * Copies the current region of the buffer into the specified buffer. + * + * @param buffer The buffer to copy into + * @param offset The offset into the buffer to copy at + */ + public abstract void copy(final int buffer, long offset); + + /** + * @return The total size of the buffer + */ + public abstract long getSize(); + + /** + * @return The size of the used portion of the buffer + */ + public abstract long getUsedSize(); + + private enum StagingBufferType { + LEGACY(DSAStagingBuffer::new), + ARB(DSAStagingBuffer::new), + DSA(DSAStagingBuffer::new); + + private final LongFunction factory; + + StagingBufferType(final LongFunction factory) { + this.factory = factory; + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.java new file mode 100644 index 0000000..1e4efed --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.java @@ -0,0 +1,107 @@ +package dev.ryanhcode.sable.sublevel.render.vanilla; + +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockAndTintGetter; +import net.minecraft.world.level.ColorResolver; +import net.minecraft.world.level.LightLayer; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.lighting.LevelLightEngine; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.Fluids; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +public final class SingleBlockSubLevelWrapper implements BlockAndTintGetter { + + private ClientLevel level; + private final BlockPos.MutableBlockPos globalPos; + private final BlockPos.MutableBlockPos localPos; + private BlockState state; + + public SingleBlockSubLevelWrapper() { + this.globalPos = new BlockPos.MutableBlockPos(); + this.localPos = new BlockPos.MutableBlockPos(); + } + + public void setup(final ClientLevel level, final double x, final double y, final double z, final BlockPos localPos, final BlockState state) { + this.level = level; + this.globalPos.set(x, y, z); + this.localPos.set(localPos); + this.state = state; + } + + public void clear() { + this.level = null; + } + + @Override + public float getShade(final Direction direction, final boolean bl) { + return this.level.getShade(direction, bl); + } + + @Override + public @NotNull LevelLightEngine getLightEngine() { + return this.level.getLightEngine(); + } + + @Override + public int getBrightness(final LightLayer lightLayer, final BlockPos pos) { + return this.getLightEngine().getLayerListener(lightLayer).getLightValue(this.globalPos); + } + + @Override + public int getRawBrightness(final BlockPos pos, final int i) { + return this.getLightEngine().getRawBrightness(this.globalPos, i); + } + + @Override + public boolean canSeeSky(final BlockPos pos) { + return this.getBrightness(LightLayer.SKY, this.globalPos) >= this.getMaxLightLevel(); + } + + @Override + public int getBlockTint(final BlockPos pos, final ColorResolver colorResolver) { + return this.level.getBlockTint(pos, colorResolver); + } + + @Override + public @Nullable BlockEntity getBlockEntity(final BlockPos pos) { + return this.level.getBlockEntity(pos); + } + + @Override + public @NotNull BlockState getBlockState(final BlockPos pos) { + if (pos.equals(this.localPos)) { + return this.state; + } + + return Blocks.AIR.defaultBlockState(); + } + + @Override + public @NotNull FluidState getFluidState(final BlockPos pos) { + if (pos.equals(this.localPos)) { + return this.state.getFluidState(); + } + + return Fluids.EMPTY.defaultFluidState(); + } + + @Override + public int getHeight() { + return this.level.getHeight(); + } + + @Override + public int getMinBuildHeight() { + return this.level.getMinBuildHeight(); + } + + public ClientLevel getLevel() { + return this.level; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.java new file mode 100644 index 0000000..544a351 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.java @@ -0,0 +1,382 @@ +package dev.ryanhcode.sable.sublevel.render.vanilla; + +import com.mojang.blaze3d.shaders.Uniform; +import com.mojang.blaze3d.systems.RenderSystem; +import com.mojang.blaze3d.vertex.VertexBuffer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.compatibility.SableIrisCompat; +import dev.ryanhcode.sable.mixin.sublevel_render.RenderSectionAccessor; +import dev.ryanhcode.sable.mixinterface.sublevel_render.vanilla.RenderSectionExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionContainer; +import dev.ryanhcode.sable.sublevel.water_occlusion.WaterOcclusionRegion; +import foundry.veil.api.compat.IrisCompat; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.ShaderInstance; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.client.renderer.chunk.SectionRenderDispatcher; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.util.profiling.ProfilerFiller; +import org.joml.*; + +import java.util.Collection; +import java.util.Set; + +/** + * A renderer and view area for a {@link dev.ryanhcode.sable.sublevel.SubLevel}. + */ +public class VanillaChunkedSubLevelRenderData implements SubLevelRenderData { + + private static final Matrix4f TRANSFORM = new Matrix4f(); + private static final Matrix4f MODEL_MATRIX = new Matrix4f(); + + private final Vector3d origin = new Vector3d(); + /** + * The origin(minimum) of the render section grid + */ + private final Vector3i chunkOrigin = new Vector3i(); + /** + * The sub-level this renderer is for + */ + private final ClientSubLevel subLevel; + /** + * The size of the render section grid + */ + private final Vector3i size = new Vector3i(); + /** + * All render sections this renderer stores + */ + private final ObjectList allRenderSections = new ObjectArrayList<>(); + /** + * All dirty render sections this renderer stores + */ + private final ObjectList dirtyRenderSections = new ObjectArrayList<>(); + /** + * The grid of render sections + */ + private SectionRenderDispatcher.RenderSection[] renderSections = null; + /** + * The section render dispatcher to build sections through + */ + private final SectionRenderDispatcher sectionRenderDispatcher; + + /** + * Creates a new renderer for the given sub-level + * + * @param subLevel the sub-level to render + */ + public VanillaChunkedSubLevelRenderData(final ClientSubLevel subLevel, final SectionRenderDispatcher sectionRenderDispatcher) { + this.subLevel = subLevel; + this.sectionRenderDispatcher = sectionRenderDispatcher; + this.resize(); + } + + /** + * Gets a section in global section coordinates + * + * @param sections the section array + * @param size the dimensions of the section grid + * @param origin the origin of the section grid + * @param x the global x coordinate + * @param y the global y coordinate + * @param z the global z coordinate + * @return the section if it exists + */ + private static SectionRenderDispatcher.RenderSection getSection(final SectionRenderDispatcher.RenderSection[] sections, final Vector3i size, final Vector3i origin, final int x, final int y, final int z) { + final int relX = (x - origin.x()); + final int relY = (y - origin.y()); + final int relZ = (z - origin.z()); + + if (relX < 0 || relY < 0 || relZ < 0) { + return null; + } + + if (relX >= size.x() || relY >= size.y() || relZ >= size.z()) { + return null; + } + + return sections[relX + relY * size.x() + relZ * size.x() * size.y()]; + } + + /** + * Gets an index in the render section grid from a global position + */ + private int getIndex(final int x, final int y, final int z) { + return (x - this.chunkOrigin.x()) + (y - this.chunkOrigin.y()) * this.size.x() + (z - this.chunkOrigin.z()) * this.size.x() * this.size.y(); + } + + /** + * Checks if a global section coordinate is in bounds + */ + private boolean inBounds(final int x, final int y, final int z) { + final int localX = x - this.chunkOrigin.x(); + final int localY = y - this.chunkOrigin.y(); + final int localZ = z - this.chunkOrigin.z(); + return localX >= 0 && localY >= 0 && localZ >= 0 && + localX < this.size.x() && localY < this.size.y() && localZ < this.size.z(); + + } + + public void resize() { + final SectionRenderDispatcher.RenderSection[] oldRenderSections = this.renderSections; + final Collection oldRenderSectionsList = new ObjectArrayList<>(this.allRenderSections); + + this.renderSections = null; + this.allRenderSections.clear(); + this.dirtyRenderSections.clear(); + + final BoundingBox3ic bounds = this.subLevel.getPlot().getBoundingBox(); + + if (bounds != null && !bounds.equals(BoundingBox3i.EMPTY) && bounds.volume() > 0.0) { + final Vector3i minChunkPos = new Vector3i(bounds.minX() >> 4, bounds.minY() >> 4, bounds.minZ() >> 4); + final Vector3i maxChunkPos = new Vector3i(bounds.maxX() >> 4, bounds.maxY() >> 4, bounds.maxZ() >> 4); + + final Vector3i oldSize = new Vector3i(this.size); + final Vector3i oldOrigin = new Vector3i(this.chunkOrigin); + + this.size.set(maxChunkPos.x() - minChunkPos.x() + 1, maxChunkPos.y() - minChunkPos.y() + 1, maxChunkPos.z() - minChunkPos.z() + 1); + this.chunkOrigin.set(minChunkPos); + this.origin.set(minChunkPos.x() << 4, minChunkPos.y() << 4, minChunkPos.z() << 4); + + this.renderSections = new SectionRenderDispatcher.RenderSection[this.size.x() * this.size.y() * this.size.z()]; + + for (int x = minChunkPos.x(); x <= maxChunkPos.x(); x++) { + for (int y = minChunkPos.y(); y <= maxChunkPos.y(); y++) { + for (int z = minChunkPos.z(); z <= maxChunkPos.z(); z++) { + final SectionRenderDispatcher.RenderSection oldSection = getSection(oldRenderSections, oldSize, oldOrigin, x, y, z); + final SectionRenderDispatcher.RenderSection newSection; + + if (oldRenderSections != null && oldSection != null) { + newSection = oldSection; + } else { + newSection = this.sectionRenderDispatcher.new RenderSection(-1, x << 4, y << 4, z << 4); + ((RenderSectionExtension) newSection).sable$addDirtyListener(this.dirtyRenderSections::add); + } + + if (newSection.isDirty()) { + this.dirtyRenderSections.add(newSection); + } + this.renderSections[this.getIndex(x, y, z)] = newSection; + this.allRenderSections.add(newSection); + } + } + } + + // free old chunks + if (oldRenderSections != null) { + for (final SectionRenderDispatcher.RenderSection oldSection : oldRenderSectionsList) { + // if not in bounds + final SectionPos oldSectionPos = SectionPos.of(oldSection.getOrigin()); + if (oldSectionPos.getX() < minChunkPos.x() || oldSectionPos.getX() > maxChunkPos.x() || + oldSectionPos.getY() < minChunkPos.y() || oldSectionPos.getY() > maxChunkPos.y() || + oldSectionPos.getZ() < minChunkPos.z() || oldSectionPos.getZ() > maxChunkPos.z()) { + + oldSection.releaseBuffers(); + oldSection.updateGlobalBlockEntities(Set.of()); + oldSection.setCompiled(SectionRenderDispatcher.CompiledSection.EMPTY); + } + } + } + } + } + + @Override + public void rebuild() { + for (final SectionRenderDispatcher.RenderSection renderSection : this.allRenderSections) { + renderSection.setDirty(true); + ((RenderSectionAccessor) renderSection).getGlobalBlockEntities().clear(); + } + } + + @Override + public void compileSections(final PrioritizeChunkUpdates chunkUpdates, final RenderRegionCache renderRegionCache, final Camera camera) { + if (this.dirtyRenderSections.isEmpty()) { + return; + } + + final ProfilerFiller profiler = Minecraft.getInstance().getProfiler(); + final Vector3d cameraPos = JOMLConversion.atCenterOf(camera.getBlockPosition()).sub(8, 8, 8); + this.subLevel.logicalPose().transformPositionInverse(cameraPos); + + for (final SectionRenderDispatcher.RenderSection renderSection : this.dirtyRenderSections) { + ((RenderSectionExtension) renderSection).sable$setListening(false); + + boolean buildSync = false; + if (chunkUpdates == PrioritizeChunkUpdates.NEARBY) { + final BlockPos origin = renderSection.getOrigin(); + buildSync = cameraPos.distanceSquared(origin.getX(), origin.getY(), origin.getZ()) < 768.0 || renderSection.isDirtyFromPlayer(); + } else if (chunkUpdates == PrioritizeChunkUpdates.PLAYER_AFFECTED) { + buildSync = renderSection.isDirtyFromPlayer(); + } + + if (buildSync) { + profiler.push("sublevel_build_near_sync"); + this.sectionRenderDispatcher.rebuildSectionSync(renderSection, renderRegionCache); + profiler.pop(); + } else { + profiler.push("sublevel_schedule_async_compile"); + renderSection.rebuildSectionAsync(this.sectionRenderDispatcher, renderRegionCache); + profiler.pop(); + } + + renderSection.setNotDirty(); + ((RenderSectionExtension) renderSection).sable$setListening(true); + } + this.dirtyRenderSections.clear(); + } + + @Override + public ClientSubLevel getSubLevel() { + return this.subLevel; + } + + @Override + public boolean isSectionCompiled(final int x, final int y, final int z) { + if (this.renderSections == null) { + return false; + } + + if (!this.inBounds(x, y, z)) { + return true; + } + + final int index = this.getIndex(x, y, z); + return index >= 0 && index < this.renderSections.length && this.renderSections[index].compiled.get() != SectionRenderDispatcher.CompiledSection.UNCOMPILED; + } + + @Override + public void setDirty(final int x, final int y, final int z, final boolean playerChanged) { + if (this.renderSections == null) { + return; + } + + if (!this.inBounds(x, y, z)) { + return; + } + + final int index = this.getIndex(x, y, z); + if (index >= 0 && index < this.renderSections.length) { + this.renderSections[index].setDirty(playerChanged); + } + } + + /** + * @return all render sections this renderer stores + */ + public ObjectList allRenderSections() { + return this.allRenderSections; + } + + public void renderChunkedSubLevel(final RenderType layer, final ShaderInstance shader, final Matrix4f modelView, final double camX, final double camY, final double camZ) { + final Pose3dc renderPose = this.subLevel.renderPose(); + final Vector3d renderPos = new Vector3d(renderPose.position()); + final Quaterniondc renderRot = renderPose.orientation(); + final Vector3d renderCOR = renderRot.transform(new Vector3d(renderPose.rotationPoint()).sub(this.origin)); + + float[] oldFogColor = null; + + if (shader.FOG_COLOR != null) { + final WaterOcclusionContainer container = WaterOcclusionContainer.getContainer(this.subLevel.getLevel()); + + final Camera camera = Minecraft.getInstance().gameRenderer.getMainCamera(); + final WaterOcclusionRegion occludingRegion = container.getOccludingRegion(camera.getPosition()); + + // TODO: Redo to swap to main fog instead of just getting rid of it + if (occludingRegion != null && Sable.HELPER.getContaining(this.subLevel.getLevel(), occludingRegion.getVolume().getMinBlockPos()) == this.subLevel) { + oldFogColor = RenderSystem.getShaderFogColor(); + shader.FOG_COLOR.set(0.0f, 0.0f, 0.0f, 0.0f); + shader.FOG_COLOR.upload(); + } + } + + final Uniform sableSkyLightScale = shader.getUniform("SableSkyLightScale"); + if (sableSkyLightScale != null) { + final int skyLight = this.subLevel.getLatestSkyLightScale(); + sableSkyLightScale.set(skyLight / 15.0f); + sableSkyLightScale.upload(); + } + + renderPos.sub(renderCOR); + + final Matrix4f transform = TRANSFORM.identity(); + + // convert the camera pos to local to the origin / rotated + final Vector3d fogOffset = new Vector3d(camX, camY, camZ).sub(renderPos).mul(-1.0); + + transform.translate((float) (renderPos.x() - camX - fogOffset.x), (float) (renderPos.y() - camY - fogOffset.y), (float) (renderPos.z() - camZ - fogOffset.z)); + transform.rotate(new Quaternionf(renderRot)); + + if (shader.MODEL_VIEW_MATRIX != null) { + shader.MODEL_VIEW_MATRIX.set(modelView.mul(transform, MODEL_MATRIX)); + shader.MODEL_VIEW_MATRIX.upload(); + + if (IrisCompat.isLoaded()) { + SableIrisCompat.refreshModelMatrices(shader); + } + } + + // TODO: sorting + final Uniform chunkOffsetUniform = shader.CHUNK_OFFSET; + + for (final SectionRenderDispatcher.RenderSection renderSection : this.allRenderSections) { + if (renderSection.getCompiled().isEmpty(layer)) { + continue; + } + + if (chunkOffsetUniform != null) { + final BlockPos pos = renderSection.getOrigin(); + final Vector3d fogOffsetRot = renderRot.transformInverse(fogOffset, new Vector3d()); + chunkOffsetUniform.set((float) (pos.getX() - this.origin.x() + fogOffsetRot.x), (float) (pos.getY() - this.origin.y() + fogOffsetRot.y), (float) (pos.getZ() - this.origin.z() + fogOffsetRot.z)); + chunkOffsetUniform.upload(); + } + + final VertexBuffer buffer = renderSection.getBuffer(layer); + buffer.bind(); + buffer.draw(); + } + + if (chunkOffsetUniform != null) { + chunkOffsetUniform.set(0f, 0f, 0f); + } + + if (oldFogColor != null) { + shader.FOG_COLOR.set(oldFogColor[0], oldFogColor[1], oldFogColor[2], oldFogColor[3]); + } + } + + @Override + public void close() { + for (final SectionRenderDispatcher.RenderSection section : this.allRenderSections) { + section.releaseBuffers(); + section.updateGlobalBlockEntities(Set.of()); + section.setCompiled(SectionRenderDispatcher.CompiledSection.EMPTY); + } + this.allRenderSections.clear(); + this.renderSections = null; + } + + public SectionRenderDispatcher.RenderSection getRenderSection(final SectionPos sectionPos) { + if (this.renderSections == null) { + return null; + } + + final int index = this.getIndex(sectionPos.getX(), sectionPos.getY(), sectionPos.getZ()); + + if (index < 0 || index >= this.renderSections.length) { + return null; + } + + return this.renderSections[index]; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.java new file mode 100644 index 0000000..0695d6a --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.java @@ -0,0 +1,200 @@ +package dev.ryanhcode.sable.sublevel.render.vanilla; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderData; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.client.PrioritizeChunkUpdates; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.chunk.RenderRegionCache; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.Nullable; +import org.joml.*; + +import java.util.List; +import java.util.Objects; +import java.util.Set; + +/** + * A renderer and view area for a {@link dev.ryanhcode.sable.sublevel.SubLevel}. + */ +public class VanillaSingleSubLevelRenderData implements SubLevelRenderData { + + private static final RandomSource RANDOM = RandomSource.create(); + private static final SingleBlockSubLevelWrapper LEVEL_WRAPPER = new SingleBlockSubLevelWrapper(); + private static final Matrix4f TRANSFORM = new Matrix4f(); + private static final Vector3d CENTER_OF_ROT = new Vector3d(); + + /** + * The sub-level this renderer is for + */ + private final ClientSubLevel subLevel; + + /** + * The cached block state for single block rendering + */ + private BlockState singleBlockState = null; + + /** + * The cached block position for single block rendering + */ + private BlockPos singleBlockPos = null; + + /** + * The cached block seed for single block rendering + */ + private long singleBlockSeed = 42L; + + /** + * The cached block entity position for single block rendering + */ + private BlockEntity singleBlockEntity = null; + private boolean singleBlockEntityGlobal = false; + + /** + * Creates a new renderer for the given sub-level + * + * @param subLevel the sub-level to render + */ + public VanillaSingleSubLevelRenderData(final ClientSubLevel subLevel) { + this.subLevel = subLevel; + this.rebuild(); + } + + private void handleBlockEntity(@Nullable final E blockEntity) { + if (Objects.equals(this.singleBlockEntity, blockEntity)) { + return; + } + + if (blockEntity == null) { + this.removeBlockEntity(); + return; + } + + final BlockEntityRenderer blockEntityRenderer = Minecraft.getInstance().getBlockEntityRenderDispatcher().getRenderer(blockEntity); + if (blockEntityRenderer == null) { + this.removeBlockEntity(); + return; + } + + this.singleBlockEntity = blockEntity; + this.singleBlockEntityGlobal = blockEntityRenderer.shouldRenderOffScreen(blockEntity); + } + + private void removeBlockEntity() { + if (this.singleBlockEntity != null && this.singleBlockEntityGlobal) { + Minecraft.getInstance().levelRenderer.updateGlobalBlockEntities(Set.of(this.singleBlockEntity), Set.of()); + } + this.singleBlockEntity = null; + this.singleBlockEntityGlobal = false; + } + + public void renderSingleBlock(final RenderType layer, final VertexConsumer consumer, final Matrix4f modelView, final double camX, final double camY, final double camZ) { + final Minecraft client = Minecraft.getInstance(); + if (this.singleBlockState.isAir()) { + this.rebuild(); + } + + if (this.singleBlockState.getRenderShape() != RenderShape.MODEL) { + return; + } + + final BakedModel bakedModel = client.getBlockRenderer().getBlockModel(this.singleBlockState); + final Pose3dc renderPose = this.subLevel.renderPose(); + final Vector3dc renderPos = renderPose.position(); + LEVEL_WRAPPER.setup(this.subLevel.getLevel(), renderPos.x(), renderPos.y(), renderPos.z(), this.singleBlockPos, this.singleBlockState); + + RANDOM.setSeed(this.singleBlockSeed); + final List renderLayers = SableSubLevelRenderPlatform.INSTANCE.getRenderLayers(LEVEL_WRAPPER, bakedModel, this.singleBlockState, this.singleBlockPos, RANDOM); + if (!renderLayers.contains(layer)) { + LEVEL_WRAPPER.clear(); + return; + } + + final PoseStack stack = new PoseStack(); + + // These NEED to be here because renderPos is mutated below + final double renderX = renderPos.x(); + final double renderY = renderPos.y(); + final double renderZ = renderPos.z(); + { + final Quaterniondc renderRot = renderPose.orientation(); + final Vector3d renderCOR = renderRot.transform(CENTER_OF_ROT.set(renderPose.rotationPoint()).sub(this.singleBlockPos.getX(), this.singleBlockPos.getY(), this.singleBlockPos.getZ())); + + renderCOR.negate().add(renderX, renderY, renderZ); + + final Matrix4f transform = TRANSFORM.identity(); + + // convert the camera pos to local to the origin / rotated + transform.translate((float) (renderCOR.x() - camX), (float) (renderCOR.y() - camY), (float) (renderCOR.z() - camZ)); + transform.rotate(new Quaternionf(renderRot)); + + stack.last().pose().mul(modelView).mul(transform); + transform.normal(stack.last().normal()); + } + + SableSubLevelRenderPlatform.INSTANCE.tesselateBlock(LEVEL_WRAPPER, bakedModel, this.singleBlockState, this.singleBlockPos, stack, consumer, RANDOM, this.singleBlockSeed, OverlayTexture.NO_OVERLAY, layer); + LEVEL_WRAPPER.clear(); + } + + public @Nullable BlockEntity getRenderBlockEntity() { + if (this.singleBlockState.isAir()) { + this.rebuild(); + } + return this.singleBlockEntity; + } + + @Override + public void rebuild() { + final BoundingBox3ic bounds = this.subLevel.getPlot().getBoundingBox(); + final BlockPos pos = new BlockPos(bounds.minX(), bounds.minY(), bounds.minZ()); + + final BlockState blockState = this.subLevel.getLevel().getBlockState(pos); + + this.singleBlockState = blockState; + this.singleBlockPos = pos; + this.singleBlockSeed = blockState.getSeed(pos); + + this.handleBlockEntity(blockState.hasBlockEntity() ? this.subLevel.getLevel().getBlockEntity(pos) : null); + + if (this.singleBlockEntity != null) { + SableSubLevelRenderPlatform.INSTANCE.tryAddFlywheelVisual(this.singleBlockEntity); + } + } + + @Override + public void compileSections(final PrioritizeChunkUpdates chunkUpdates, final RenderRegionCache renderRegionCache, final Camera camera) { + } + + @Override + public ClientSubLevel getSubLevel() { + return this.subLevel; + } + + @Override + public void setDirty(final int x, final int y, final int z, final boolean playerChanged) { + this.rebuild(); + } + + @Override + public boolean isSectionCompiled(final int x, final int y, final int z) { + return true; + } + + @Override + public void close() { + this.removeBlockEntity(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.java new file mode 100644 index 0000000..f730ae8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.sublevel.storage; + +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import org.jetbrains.annotations.NotNull; + +import java.util.Objects; + +public final class HoldingSubLevel { + private final @NotNull SubLevelData data; + private GlobalSavedSubLevelPointer pointer; + + public HoldingSubLevel(@NotNull final SubLevelData data, final GlobalSavedSubLevelPointer pointer) { + this.data = data; + this.pointer = pointer; + } + + public @NotNull SubLevelData data() { + return this.data; + } + + public GlobalSavedSubLevelPointer pointer() { + return this.pointer; + } + + public void setPointer(final GlobalSavedSubLevelPointer pointer) { + this.pointer = pointer; + } + + @Override + public boolean equals(final Object obj) { + if (obj == this) return true; + if (obj == null || obj.getClass() != this.getClass()) return false; + final var that = (HoldingSubLevel) obj; + return Objects.equals(this.data, that.data) && + Objects.equals(this.pointer, that.pointer); + } + + @Override + public int hashCode() { + return Objects.hash(this.data, this.pointer); + } + + @Override + public String toString() { + return "HoldingSubLevel[" + + "data=" + this.data + ", " + + "pointer=" + this.pointer + ']'; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.java new file mode 100644 index 0000000..eb1bec9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.sublevel.storage; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.datafix.DataFixTypes; +import net.minecraft.world.level.saveddata.SavedData; + +import java.util.BitSet; + +/** + * Stores the map for which plots are occupied + */ +public class SubLevelOccupancySavedData extends SavedData { + public static final String FILE_ID = "sable_sub_level_occupancy"; + private final ServerLevel level; + + private SubLevelOccupancySavedData(final ServerLevel level) { + this.level = level; + } + + public static SubLevelOccupancySavedData getOrLoad(final ServerLevel level) { + return level.getChunkSource().getDataStorage().computeIfAbsent( + new Factory<>( + () -> new SubLevelOccupancySavedData(level), + (tag, provider) -> SubLevelOccupancySavedData.load(level, tag), + DataFixTypes.LEVEL + ), + SubLevelOccupancySavedData.FILE_ID); + } + + + private static SubLevelOccupancySavedData load(final ServerLevel level, final CompoundTag tag) { + final SubLevelOccupancySavedData data = new SubLevelOccupancySavedData(level); + + final long[] longArray = tag.getLongArray("sub_level_occupancy"); + + if (longArray.length > 0) { + final BitSet occupancyData = BitSet.valueOf(longArray); + final SubLevelContainer container = SubLevelContainer.getContainer(level); + assert container != null : "Sub-level container is null"; + + // clone into the container + final BitSet occupancy = container.getOccupancy(); + occupancy.clear(); + occupancy.or(occupancyData); + } + + return data; + } + + @Override + public CompoundTag save(final CompoundTag compoundTag, final HolderLookup.Provider provider) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null : "Sub-level container is null"; + + final BitSet occupancy = container.getOccupancy(); + + final long[] longArray = occupancy.toLongArray(); + + compoundTag.putLongArray("sub_level_occupancy", longArray); + + return compoundTag; + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.java new file mode 100644 index 0000000..66cff57 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.sublevel.storage; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; + +/** + * The reason a sub-level was removed from a {@link SubLevelContainer} + */ +public enum SubLevelRemovalReason { + /** + * The sub-level was removed because it was unloaded, not clearing occupancy data + */ + UNLOADED, + + /** + * The sub-level was removed because it was removed from the container, clearing occupancy data + */ + REMOVED +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.java new file mode 100644 index 0000000..f84fa1c --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.java @@ -0,0 +1,122 @@ +package dev.ryanhcode.sable.sublevel.storage.debug; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.api.client.editor.SingleWindowInspector; +import imgui.ImDrawList; +import imgui.ImGui; +import imgui.ImVec2; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.server.IntegratedServer; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; + +import java.util.BitSet; + +public class SubLevelContainerInspector extends SingleWindowInspector { + public static final Component TITLE = Component.translatable("inspector.sable.sub_level_container.title"); + + @Override + protected void renderComponents() { + + final IntegratedServer singleplayerServer = Minecraft.getInstance().getSingleplayerServer(); + final Minecraft minecraft = Minecraft.getInstance(); + final ClientLevel clientLevel = minecraft.level; + + if (clientLevel != null) { + + final SubLevelContainer clientPlotContainer = ((SubLevelContainerHolder) clientLevel).sable$getPlotContainer(); + this.renderPlotContainer("Client", clientPlotContainer); + + if (singleplayerServer != null) { + final ServerLevel serverLevel = singleplayerServer.getLevel(clientLevel.dimension()); + assert serverLevel != null : "Server level is null"; + + ImGui.sameLine(); + + final SubLevelContainer serverPlotContainer = ((SubLevelContainerHolder) serverLevel).sable$getPlotContainer(); + this.renderPlotContainer("Server", serverPlotContainer); + } + + } else { + ImGui.textDisabled("No level loaded"); + } + } + + private void renderPlotContainer(final String name, final SubLevelContainer plotContainer) { + final int sideLength = 1 << plotContainer.getLogSideLength(); + + final float buttonStartX = ImGui.getCursorScreenPosX(); + final float buttonStartY = ImGui.getCursorScreenPosY(); + + final float sizePixels = ImGui.getWindowHeight() - 40f; + ImGui.button(name, sizePixels, sizePixels); + + final ImDrawList drawList = ImGui.getWindowDrawList(); + drawList.addRect(buttonStartX, buttonStartY, buttonStartX + sizePixels, buttonStartY + sizePixels, 0xFFFFFFFF); + + final ImVec2 mousePos = ImGui.getMousePos(); + + final float mouseX = mousePos.x - buttonStartX; + final float mouseY = mousePos.y - buttonStartY; + + final int selectedXCell = (int) (mouseX / (sizePixels / sideLength)); + final int selectedYCell = (int) (mouseY / (sizePixels / sideLength)); + + final boolean hovered = ImGui.isItemHovered(); + + for (int x = 0; x < sideLength; x++) { + for (int z = 0; z < sideLength; z++) { + final BitSet occupancy = plotContainer.getOccupancy(); + final boolean isOccupied = occupancy.get(plotContainer.getIndex(x, z)); + final boolean hasSubLevel = plotContainer.getAllSubLevels().get(plotContainer.getIndex(x, z)) != null; + + final float xStart = buttonStartX + x * (sizePixels / sideLength); + final float zStart = buttonStartY + z * (sizePixels / sideLength); + + final float xEnd = xStart + (sizePixels / sideLength); + final float zEnd = zStart + (sizePixels / sideLength); + + final boolean cellSelected = hovered && x == selectedXCell && z == selectedYCell; + + final int occupiedColor = hasSubLevel ? 0xFF00FF00 : 0xFF006600; + drawList.addRectFilled(xStart, zStart, xEnd, zEnd, isOccupied ? occupiedColor : 0xFF333333); + drawList.addRect(xStart, zStart, xEnd, zEnd, 0xff444444); + + if (cellSelected) { + drawList.addRectFilled(xStart, zStart, xEnd, zEnd, 0xaa888888); + } + } + } + + final SubLevel selectedSubLevel = plotContainer.getSubLevel(selectedXCell, selectedYCell); + + // The tooltip + + if (selectedSubLevel != null) { + final int chunkCount = selectedSubLevel.getPlot().getLoadedChunks().size(); + ImGui.setTooltip(String.format("Loaded SubLevel\nChunks: %d", chunkCount)); + } + + // draw hovered coordinate + if (hovered) { + final float textY = buttonStartY + sizePixels - 20f; + final String text = String.format("%d, %d", selectedXCell, selectedYCell); + + final float textWidth = ImGui.calcTextSize(text).x; + final float textX = buttonStartX + sizePixels - textWidth - 5f; + + drawList.addText(textX, textY, 0xFFFFFFFF, text); + } + drawList.addText(buttonStartX + 5f, buttonStartY + 5f, 0xFFFFFFFF, name); + drawList.addText(buttonStartX + 5f, buttonStartY + 25f, 0xFFFFFFFF, "%d loaded sub-level(s)".formatted(plotContainer.getLoadedCount())); + + } + + @Override + public Component getDisplayName() { + return TITLE; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.java new file mode 100644 index 0000000..be13040 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.sublevel.storage.holding; + +import com.mojang.datafixers.kinds.Applicative; +import com.mojang.serialization.Codec; +import com.mojang.serialization.codecs.RecordCodecBuilder; +import net.minecraft.world.level.ChunkPos; + +/** + * A global location of sub-level storage + */ +public record GlobalSavedSubLevelPointer(ChunkPos chunkPos, short storageIndex, short subLevelIndex) { + + public static final Codec CODEC = RecordCodecBuilder.create(instance -> instance.group( + Codec.INT.fieldOf("chunk_x").forGetter(x -> x.chunkPos().x), + Codec.INT.fieldOf("chunk_z").forGetter(x -> x.chunkPos().z), + Codec.SHORT.fieldOf("storage_index").forGetter(GlobalSavedSubLevelPointer::storageIndex), + Codec.SHORT.fieldOf("sub_level_index").forGetter(GlobalSavedSubLevelPointer::subLevelIndex) + ).apply(Applicative.unbox(instance), (chunkX, chunkZ, storage, subLevel) -> new GlobalSavedSubLevelPointer(new ChunkPos(chunkX, chunkZ), storage, subLevel))); + + public SavedSubLevelPointer local() { + return new SavedSubLevelPointer(this.storageIndex, this.subLevelIndex); + } + + @Override + public String toString() { + return "global->[" + + "chunkPos=" + this.chunkPos + + ", storageIndex=" + this.storageIndex + + ", subLevelIndex=" + this.subLevelIndex + + ']'; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.java new file mode 100644 index 0000000..4c45dec --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.sublevel.storage.holding; + +public record SavedSubLevelPointer(short storageIndex, short subLevelIndex) { + + public int packed() { + return (this.storageIndex << 16) | (this.subLevelIndex & 0xFFFF); + } + + public static SavedSubLevelPointer unpack(final int packed) { + final short storageIndex = (short) (packed >> 16); + final short subLevelIndex = (short) (packed & 0xFFFF); + return new SavedSubLevelPointer(storageIndex, subLevelIndex); + } + + @Override + public String toString() { + return "local->[" + + "storageIndex=" + this.storageIndex + + ", subLevelIndex=" + this.subLevelIndex + + ']'; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.java new file mode 100644 index 0000000..d1e3ee3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.java @@ -0,0 +1,145 @@ +package dev.ryanhcode.sable.sublevel.storage.holding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.sublevel.storage.HoldingSubLevel; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import dev.ryanhcode.sable.sublevel.system.ticket.PhysicsChunkTicketManager; +import it.unimi.dsi.fastutil.objects.*; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.level.ChunkPos; + +import java.util.*; + +public class SubLevelHoldingChunk { + private final ObjectList alsoLoad = new ObjectArrayList<>(); + private final ObjectList pointers = new ObjectArrayList<>(); + private final Object2ObjectMap loadedHoldingSubLevels = new Object2ObjectOpenHashMap<>(); + private final ChunkPos pos; + final ObjectOpenHashSet visitedSet = new ObjectOpenHashSet<>(); + + public SubLevelHoldingChunk(final ChunkPos pos) { + this.pos = pos; + } + + public void acceptHoldingSubLevel(final HoldingSubLevel subLevelData) { + this.loadedHoldingSubLevels.put(subLevelData.data().uuid(), subLevelData); + } + + public Iterable getLoadedHoldingSubLevels() { + return this.loadedHoldingSubLevels.values(); + } + + /** + * Collects all sub-levels that are completely ready for loading. + * In this process, these ready holding sub-levels will be removed. + */ + public void collectReadySubLevels(final ServerLevel level, final Object2ObjectMap readySubLevels) { + // Don't bother allocating an iterator if there's nothing to collect + if (this.loadedHoldingSubLevels.isEmpty()) { + return; + } + + this.visitedSet.clear(); + final Iterator> iter = this.loadedHoldingSubLevels.entrySet().iterator(); + + checkingLoop: while (iter.hasNext()) { + final Map.Entry entry = iter.next(); + if (this.visitedSet.contains(entry.getKey())) { + continue; + } + + final HoldingSubLevel holdingSubLevel = entry.getValue(); + final SubLevelData data = holdingSubLevel.data(); + final List relations = data.dependencies(); + + this.visitedSet.add(entry.getKey()); + this.visitedSet.addAll(relations); + + for (final UUID uuid : relations) { + final HoldingSubLevel dependencySubLevel = this.loadedHoldingSubLevels.get(uuid); + + if (dependencySubLevel == null) { + Sable.LOGGER.error("Sub-level dependency does not exist in chunk. Something has gone terribly wrong."); + iter.remove(); + continue checkingLoop; + } + + if (!canLoadSubLevel(level, dependencySubLevel.data())) { + continue checkingLoop; + } + } + + final boolean allChunksLoaded = canLoadSubLevel(level, data); + + if (allChunksLoaded) { + readySubLevels.put(data.uuid(), holdingSubLevel); + iter.remove(); + + for (final UUID uuid : relations) { + final HoldingSubLevel dependencySubLevel = this.loadedHoldingSubLevels.get(uuid); + if (dependencySubLevel != null) { + this.alsoLoad.add(dependencySubLevel); + } + } + } + } + + for (final HoldingSubLevel holdingSubLevel : this.alsoLoad) { + final UUID uuid = holdingSubLevel.data().uuid(); + this.loadedHoldingSubLevels.remove(uuid); + readySubLevels.put(uuid, holdingSubLevel); + } + this.alsoLoad.clear(); + } + + private static boolean canLoadSubLevel(final ServerLevel level, final SubLevelData data) { + final BoundingBox3dc bounds = data.bounds(); + + final BoundingBox3i chunkBounds = new BoundingBox3i( + Mth.floor(bounds.minX() - 1.0) >> 4, + Mth.floor(bounds.minY() - 1.0) >> 4, + Mth.floor(bounds.minZ() - 1.0) >> 4, + Mth.floor(bounds.maxX() + 1.0) >> 4, + Mth.floor(bounds.maxY() + 1.0) >> 4, + Mth.floor(bounds.maxZ() + 1.0) >> 4 + ); + + boolean allChunksLoaded = true; + xLoop: + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + if (!PhysicsChunkTicketManager.isChunkLoadedEnough(level, x, z)) { + allChunksLoaded = false; + break xLoop; + } + } + } + return allChunksLoaded; + } + + public static SubLevelHoldingChunk from(final ChunkPos pos, final CompoundTag tag) { + final SubLevelHoldingChunk chunk = new SubLevelHoldingChunk(pos); + + final int[] pointer = tag.getIntArray("pointers"); + chunk.pointers.addAll(Arrays.stream(pointer).mapToObj(SavedSubLevelPointer::unpack).toList()); + + return chunk; + } + + public void writeTo(final CompoundTag tag) { + final int[] pointers = this.pointers.stream().mapToInt(SavedSubLevelPointer::packed).toArray(); + tag.putIntArray("pointers", pointers); + } + + public ChunkPos getChunkPos() { + return this.pos; + } + + public List getSubLevelPointers() { + return this.pointers; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.java new file mode 100644 index 0000000..2624523 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.java @@ -0,0 +1,626 @@ +package dev.ryanhcode.sable.sublevel.storage.holding; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.toast.SableToastableServer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.HoldingSubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.sublevel.storage.region.SubLevelRegionFile; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelSerializer; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelStorage; +import dev.ryanhcode.sable.sublevel.tracking_points.SubLevelTrackingPointSavedData; +import dev.ryanhcode.sable.sublevel.tracking_points.TrackingPoint; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.longs.LongOpenHashSet; +import it.unimi.dsi.fastutil.longs.LongSet; +import it.unimi.dsi.fastutil.objects.*; +import net.minecraft.core.BlockPos; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.Contract; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.io.File; +import java.io.IOException; +import java.util.*; + +public class SubLevelHoldingChunkMap implements AutoCloseable { + public static boolean VERBOSE = false; + private static final boolean ALWAYS_LOADED = true; + private final ServerLevel level; + private final ServerSubLevelContainer container; + + private final SubLevelStorage storage; + + /** + * All sub-levels currently in holding, queryable by UUID so that systems such as tracking points can locate sub-levels for poses + */ + private final Object2ObjectMap allHoldingSubLevels = new Object2ObjectOpenHashMap<>(); + + /** + * All currently loaded sub-level holding chunks + */ + private final Long2ObjectMap loadedHoldingChunks = new Long2ObjectOpenHashMap<>(); + + /** + * The set of all dirty sub-level holding chunks, that need to be saved during the next autosave + */ + private final LongSet dirtyHoldingChunks = new LongOpenHashSet(); + + /** + * The set of all holding chunks that can be gotten rid of after the next auto-save, and are no longer needed + */ + private final ObjectSet queuedUnloads = new ObjectOpenHashSet<>(); + + /** + * The set of all deleted sub-levels, which need to be cleared from their holding chunks and their data storages + */ + private final ObjectSet queuedDeletion = new ObjectOpenHashSet<>(); + + /** + * The set of all chunk positions that have unloaded in the previous tick + */ + private final LongSet chunksToUnload = new LongOpenHashSet(); + + /** + * The set of all chunk positions that have loaded in the previous tick + */ + private final LongSet chunksToLoad = new LongOpenHashSet(); + + public SubLevelHoldingChunkMap(final ServerLevel level, final ServerSubLevelContainer container) { + this.level = level; + this.container = container; + + final File worldFolder = level.getChunkSource().getDataStorage().dataFolder.getParentFile(); + final File subLevelsFolder = new File(worldFolder, "sublevels"); + + subLevelsFolder.mkdirs(); + + this.storage = new SubLevelStorage(subLevelsFolder.toPath()); + } + + public void bootstrapAllHoldingChunks() { + final File[] regionFiles = this.storage.getFolder().toFile().listFiles((dir, name) -> name.endsWith(SubLevelRegionFile.FILE_EXTENSION)); + + if (regionFiles == null) { + return; + } + + for (final File regionFile : regionFiles) { + final String fileName = regionFile.getName(); + final String withoutExtension = fileName.substring(0, fileName.length() - SubLevelRegionFile.FILE_EXTENSION.length()); + final String[] parts = withoutExtension.split("\\."); + if (parts.length != 3) { + continue; + } + + final int regionX; + final int regionZ; + try { + regionX = Integer.parseInt(parts[1]); + regionZ = Integer.parseInt(parts[2]); + } catch (final NumberFormatException ignored) { + continue; + } + + for (int localX = 0; localX < SubLevelRegionFile.SIDE_LENGTH; localX++) { + for (int localZ = 0; localZ < SubLevelRegionFile.SIDE_LENGTH; localZ++) { + this.getOrLoadHoldingChunk(new ChunkPos( + regionX * SubLevelRegionFile.SIDE_LENGTH + localX, + regionZ * SubLevelRegionFile.SIDE_LENGTH + localZ + ), false); + } + } + } + + this.processChanges(); + } + + public void updateChunkStatus(final ChunkPos chunkPos, final boolean loaded) { + if (ALWAYS_LOADED) { + return; + } + + final long key = chunkPos.toLong(); + + if (!loaded) { + this.chunksToUnload.add(key); + this.chunksToLoad.remove(key); + } else { + this.chunksToLoad.add(key); + this.chunksToUnload.remove(key); + } + } + + private void processLoad(final ChunkPos chunkPos) { + if (VERBOSE) { + Sable.LOGGER.info("Processing load of chunk at {}", chunkPos); + } + + if (this.queuedUnloads.contains(chunkPos)) { + if (VERBOSE) { + Sable.LOGGER.info("Removing chunk at {} from queued unloads", chunkPos); + } + this.queuedUnloads.remove(chunkPos); + } + + if (this.loadedHoldingChunks.containsKey(chunkPos.toLong())) { + return; + } + + // when the chunk is loaded, we have to also load the holding chunk if it exists + this.getOrLoadHoldingChunk(chunkPos, false); + } + + private void processUnload(final ChunkPos chunkPos) { + if (!this.loadedHoldingChunks.containsKey(chunkPos.toLong())) { + return; + } + + if (VERBOSE) { + Sable.LOGGER.info("Processing unload for chunk {}", chunkPos); + } + + final BoundingBox3d bounds = new BoundingBox3d(chunkPos.x << 4, -Double.MAX_VALUE, chunkPos.z << 4, (chunkPos.x << 4) + 16, Double.MAX_VALUE, (chunkPos.z << 4) + 16); + + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null : "Sub-level container is null"; + + final Iterable toUnloadIterator = container.queryIntersecting(bounds); + final ObjectOpenHashSet toUnload = new ObjectOpenHashSet<>(); + for (final SubLevel subLevel : toUnloadIterator) { + toUnload.add(subLevel); + } + + if (VERBOSE) { + Sable.LOGGER.info("Adding chunk {} to queued unloads", chunkPos); + } + this.queuedUnloads.add(chunkPos); + + if (toUnload.isEmpty()) { + return; + } + + final SubLevelHoldingChunk holdingChunk = this.getOrLoadHoldingChunk(chunkPos, true); + final ObjectSet visited = new ObjectOpenHashSet<>(); + + for (final SubLevel subLevel : toUnload) { + if (visited.contains(subLevel)) { + continue; + } + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + final Collection chain = SubLevelHelper.getLoadingDependencyChain(serverSubLevel); + visited.addAll(chain); + + final List uuids = chain.stream().map(SubLevel::getUniqueId).toList(); + + for (final ServerSubLevel chainedSubLevel : chain) { + final GlobalSavedSubLevelPointer pointer = chainedSubLevel.getLastSerializationPointer(); + + if (VERBOSE) { + Sable.LOGGER.info("Unloading sub-level {} with pointer {} to chunk {} as holding sub-level", chainedSubLevel, pointer, chunkPos); + } + + final SubLevelData data = SubLevelSerializer.toData(chainedSubLevel, uuids); + final HoldingSubLevel holdingSubLevel = new HoldingSubLevel(data, pointer); + holdingChunk.acceptHoldingSubLevel(holdingSubLevel); + this.allHoldingSubLevels.put(holdingSubLevel.data().uuid(), holdingSubLevel); + + container.removeSubLevel(chainedSubLevel, SubLevelRemovalReason.UNLOADED); + } + } + } + + /** + * Saves the whole holding chunk map to disk. + */ + public void saveAll() { + if (VERBOSE) { + Sable.LOGGER.info("Saving holding chunk-map"); + } + + this.processChanges(); + + for (final GlobalSavedSubLevelPointer deletion : this.queuedDeletion) { + if (VERBOSE) { + Sable.LOGGER.info("Processing queued deletion & clearing data for {}", deletion); + } + this.storage.attemptSaveSubLevel(deletion, null); + } + this.queuedDeletion.clear(); + + final List subLevels = this.container.getAllSubLevels(); + final Collection toMove = new ObjectArrayList<>(subLevels); + final Collection moved = new ObjectArraySet<>(toMove.size()); + + for (final ServerSubLevel subLevel : toMove) { + if (moved.contains(subLevel)) { + continue; + } + + // We save all intersecting sub-levels in the chain to the first one's chunk + final Vector3d currentPosition = subLevel.logicalPose().position(); + final ChunkPos moveToChunk = new ChunkPos(BlockPos.containing(currentPosition.x, currentPosition.y, currentPosition.z)); + + final Collection chain = SubLevelHelper.getLoadingDependencyChain(subLevel); + moved.addAll(chain); + + final List uuids = chain.stream().map(SubLevel::getUniqueId).toList(); + for (final ServerSubLevel chainedSubLevel : chain) { + if (VERBOSE) { + Sable.LOGGER.info("Moving sub-level {} with last pointer {}", chainedSubLevel, chainedSubLevel.getLastSerializationPointer()); + } + this.moveAndSaveSubLevel(chainedSubLevel, moveToChunk, uuids); + } + } + + for (final SubLevelHoldingChunk holdingChunk : this.loadedHoldingChunks.values()) { + final ChunkPos holdingChunkPos = holdingChunk.getChunkPos(); + + for (final HoldingSubLevel holdingSubLevel : holdingChunk.getLoadedHoldingSubLevels()) { + if (VERBOSE) { + Sable.LOGGER.info("Processing holding sub-level {} stored in chunk {} with pointer {}", holdingSubLevel, holdingChunkPos, holdingSubLevel.pointer()); + } + + if (holdingSubLevel.pointer() == null || !Objects.equals(holdingSubLevel.pointer().chunkPos(), holdingChunkPos)) { + if (VERBOSE) { + Sable.LOGGER.info("Chunk position of holding chunk and pointer mis-match. Moving"); + } + final GlobalSavedSubLevelPointer newPointer = this.moveAndSaveSubLevel(null, holdingSubLevel.data(), holdingSubLevel.pointer(), holdingChunkPos); + holdingSubLevel.setPointer(newPointer); + } else { + this.storage.attemptSaveSubLevel(holdingSubLevel.pointer(), holdingSubLevel.data()); + } + } + } + + for (final ChunkPos unload : this.queuedUnloads) { + final SubLevelHoldingChunk holdingChunk = this.loadedHoldingChunks.get(unload.toLong()); + + if (VERBOSE) { + Sable.LOGGER.info("Processing queued unload for chunk {} at position {}", holdingChunk, holdingChunk != null ? holdingChunk.getChunkPos() : null); + } + + if (holdingChunk != null) { + for (final HoldingSubLevel holdingSubLevel : holdingChunk.getLoadedHoldingSubLevels()) { + this.allHoldingSubLevels.remove(holdingSubLevel.data().uuid()); + } + this.setDirty(unload); + } + } + + for (final long longKey : this.dirtyHoldingChunks) { + final ChunkPos chunkPos = new ChunkPos(longKey); + + final SubLevelHoldingChunk holdingChunk = this.loadedHoldingChunks.get(longKey); + + if (VERBOSE) { + Sable.LOGGER.info("Saving holding chunk {} at {}", holdingChunk, chunkPos); + } + + if (holdingChunk != null) { + this.storage.attemptSaveHoldingChunk(chunkPos, holdingChunk); + } + } + + for (final ChunkPos unload : this.queuedUnloads) { + this.loadedHoldingChunks.remove(unload.toLong()); + } + this.queuedUnloads.clear(); + + try { + if (VERBOSE) { + Sable.LOGGER.info("Flushing storage"); + } + + this.storage.flush(); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to flush sub-level storage to disk", e); + } + } + + private void moveAndSaveSubLevel(final ServerSubLevel subLevel, final ChunkPos moveToChunk, final List uuids) { + final GlobalSavedSubLevelPointer lastPointer = subLevel.getLastSerializationPointer(); + final SubLevelData data = SubLevelSerializer.toData(subLevel, uuids); + subLevel.setLastSerializationPointer(this.moveAndSaveSubLevel(subLevel, data, lastPointer, moveToChunk)); + + if (VERBOSE) { + Sable.LOGGER.info("Moved sub-level {}. {} -> {}", subLevel, lastPointer, subLevel.getLastSerializationPointer()); + } + } + + /** + * Removes sub-level data from a previous pointer, and moves it to a new one. + * + * @param data the data to move + * @param lastPointer the previous pointer of the data + * @param moveToChunk the chunk to move to + * @return the new pointer + */ + private GlobalSavedSubLevelPointer moveAndSaveSubLevel(final @Nullable ServerSubLevel subLevel, final SubLevelData data, final GlobalSavedSubLevelPointer lastPointer, final ChunkPos moveToChunk) { + final ChunkPos oldChunkPos = lastPointer != null ? lastPointer.chunkPos() : null; + + if (Objects.equals(oldChunkPos, moveToChunk)) { + if (this.getOrLoadHoldingChunk(moveToChunk, false) == null) { + throw new IllegalStateException("this shouldn't be possible"); + } + + if (VERBOSE) { + Sable.LOGGER.info("Old chunk is the same as the new chunk position ({}, {})", oldChunkPos, moveToChunk); + Sable.LOGGER.info("Saving sub-level data to {}", lastPointer); + } + + // re-save the data in-case the sub-level changed + this.storage.attemptSaveSubLevel(lastPointer, data); + this.setDirty(moveToChunk); + return lastPointer; + } else { + if (VERBOSE) { + Sable.LOGGER.info("Saving sub-level data to storage in new chunk, {}", moveToChunk); + } + // we moved chunks! remove us from the old one and save to the new one + final GlobalSavedSubLevelPointer newPointer = this.storage.attemptSaveSubLevel(moveToChunk, data); + + if (newPointer == null) { + final MinecraftServer server = this.level.getServer(); + if (server instanceof final SableToastableServer toastable) { + toastable.sable$reportSubLevelSaveFailure(data); + } + return null; + } + + if (VERBOSE) { + Sable.LOGGER.info("New pointer {}", newPointer); + } + + // move all the tracking points + final SubLevelTrackingPointSavedData trackingPoints = SubLevelTrackingPointSavedData.getOrLoad(this.level); + for (final Map.Entry entry : trackingPoints.getAllTrackingPoints()) { + final TrackingPoint point = entry.getValue(); + if (!point.inSubLevel()) { + continue; + } + + final boolean movingPointers = point.lastSavedSubLevelPointer() != null && point.lastSavedSubLevelPointer().equals(lastPointer); + final boolean pointerInSubLevel = subLevel != null && Sable.HELPER.getContaining(this.level, point.point()) == subLevel; + + if (movingPointers || pointerInSubLevel) { + trackingPoints.setTrackingPoint(entry.getKey(), new TrackingPoint( + true, point.subLevelID(), newPointer, point.point(), null + )); + } + } + + if (VERBOSE) { + Sable.LOGGER.info("Clearing last pointer (if exists) {}", lastPointer); + } + + if (lastPointer != null) { + this.storage.attemptSaveSubLevel(lastPointer, null); + } + + if (oldChunkPos != null) { + final SavedSubLevelPointer localPointer = lastPointer.local(); + final SubLevelHoldingChunk oldHoldingChunk = this.getOrLoadHoldingChunk(oldChunkPos, false); + + if (VERBOSE) { + Sable.LOGGER.info("Removing pointer from last holding chunk {}", oldHoldingChunk); + } + + if (oldHoldingChunk != null) { + // remove the sub-level from the old holding chunk + oldHoldingChunk.getSubLevelPointers().remove(localPointer); + this.setDirty(oldChunkPos); + } else { + if (VERBOSE) { + Sable.LOGGER.info("Old holding chunk doesn't exist at {}! This may be a problem", oldChunkPos); + } + } + } + + final SubLevelHoldingChunk newHoldingChunk = this.getOrLoadHoldingChunk(moveToChunk, true); + + if (VERBOSE) { + Sable.LOGGER.info("Adding pointer to new holding chunk."); + } + + // add the sub-level to the new holding chunk + final SavedSubLevelPointer newLocalPointer = newPointer.local(); + newHoldingChunk.getSubLevelPointers().add(newLocalPointer); + this.setDirty(moveToChunk); + + return newPointer; + } + } + + /** + * Gets, or loads a holding chunk for the given chunk position. + * + * @param chunkPos the chunk position to get or load the holding chunk for + * @param create whether to create a new holding chunk if it doesn't exist + */ + @Contract("_, true -> !null") + private @Nullable SubLevelHoldingChunk getOrLoadHoldingChunk(final ChunkPos chunkPos, final boolean create) { + final long longKey = chunkPos.toLong(); + final SubLevelHoldingChunk holdingChunk = this.loadedHoldingChunks.get(longKey); + + if (holdingChunk != null) { + return holdingChunk; // already loaded + } + + // try to load the holding chunk from disk + final SubLevelHoldingChunk loadedChunk = this.storage.attemptLoadHoldingChunk(chunkPos); + if (loadedChunk != null) { + if (VERBOSE) { + Sable.LOGGER.info("Loaded chunk at {} from disk", chunkPos); + } + + final List pointerQueue = loadedChunk.getSubLevelPointers(); + for (final SavedSubLevelPointer pointer : pointerQueue) { + if (VERBOSE) { + Sable.LOGGER.info("Attempting to read pointer at {} into sub-level data", pointer); + } + + final SubLevelData subLevelData = this.storage.attemptLoadSubLevel(chunkPos, pointer); + + if (subLevelData == null) { + Sable.LOGGER.error("Due to a failed storage sub-level data load, we can't add a holding sub-level for pointer {}. This will cause issues later down the line.", pointer); + continue; + } + + final GlobalSavedSubLevelPointer globalPointer = new GlobalSavedSubLevelPointer(chunkPos, pointer.storageIndex(), pointer.subLevelIndex()); + + final HoldingSubLevel holdingSubLevel = new HoldingSubLevel(subLevelData, globalPointer); + loadedChunk.acceptHoldingSubLevel(holdingSubLevel); + this.allHoldingSubLevels.put(holdingSubLevel.data().uuid(), holdingSubLevel); + } + + this.loadedHoldingChunks.put(longKey, loadedChunk); + return loadedChunk; + } + + if (create) { + // create a new holding chunk if it doesn't exist + final SubLevelHoldingChunk newHoldingChunk = new SubLevelHoldingChunk(chunkPos); + this.loadedHoldingChunks.put(longKey, newHoldingChunk); + return newHoldingChunk; + } + return null; + } + + private void setDirty(final ChunkPos chunkPos) { + if (VERBOSE) { + Sable.LOGGER.info("Setting chunk at {} as dirty", chunkPos); + } + + this.dirtyHoldingChunks.add(chunkPos.toLong()); + } + + /** + * Ticks the holding chunk map, checking for sub-levels that are ready to be loaded. + */ + public void processChanges() { + this.processUnloads(); + + final Object2ObjectMap readySubLevels = new Object2ObjectOpenHashMap<>(); + + for (final SubLevelHoldingChunk chunk : this.loadedHoldingChunks.values()) { + if (this.queuedUnloads.contains(chunk.getChunkPos())) { + continue; + } + chunk.collectReadySubLevels(this.level, readySubLevels); + } + + for (final HoldingSubLevel holdingSubLevel : readySubLevels.values()) { + if (VERBOSE) { + Sable.LOGGER.info("Holding sub-level {} with pointer {} reportedly ready to load", holdingSubLevel, holdingSubLevel.pointer()); + } + + final ServerSubLevel subLevel = SubLevelSerializer.fullyLoad(this.level, holdingSubLevel.data()); + + if (subLevel != null) { + subLevel.setLastSerializationPointer(holdingSubLevel.pointer()); + } else { + final MinecraftServer server = this.level.getServer(); + if (server instanceof final SableToastableServer toastable) { + toastable.sable$reportSubLevelLoadFailure(holdingSubLevel.pointer()); + } + Sable.LOGGER.info("Failed to load holding sub-level {} with pointer {}. This is a problem.", holdingSubLevel, holdingSubLevel.pointer()); + } + + this.allHoldingSubLevels.remove(holdingSubLevel.data().uuid()); + } + } + + /** + * Queries a currently loaded holding-sub-level, waiting either to be added to the level or to be unloaded + * + * @param uuid the uuid to query + * @return the holding sub-level, if one exists. + */ + public @Nullable HoldingSubLevel getHoldingSubLevel(final UUID uuid) { + return this.allHoldingSubLevels.get(uuid); + } + + private void processUnloads() { + if (ALWAYS_LOADED) { + this.chunksToUnload.clear(); + this.chunksToLoad.clear(); + return; + } + + for (final long l : this.chunksToUnload) { + this.processUnload(new ChunkPos(l)); + } + + for (final long l : this.chunksToLoad) { + this.processLoad(new ChunkPos(l)); + } + this.chunksToUnload.clear(); + this.chunksToLoad.clear(); + } + + public void moveToUnloaded(final ServerSubLevel subLevel, final ChunkPos pos) { + if (VERBOSE) { + Sable.LOGGER.info("Sub-level {} with pointer {} detected unloaded chunk, moving to {}", subLevel, subLevel.getLastSerializationPointer(), pos); + } + + final Collection chain = SubLevelHelper.getLoadingDependencyChain(subLevel); + final List uuids = chain.stream().map(SubLevel::getUniqueId).toList(); + + final SubLevelHoldingChunk holdingChunk = this.getOrLoadHoldingChunk(pos, true); + for (final ServerSubLevel chainSubLevel : chain) { + final SubLevelData data = SubLevelSerializer.toData(chainSubLevel, uuids); + + final HoldingSubLevel holdingSubLevel = new HoldingSubLevel(data, chainSubLevel.getLastSerializationPointer()); + holdingChunk.acceptHoldingSubLevel(holdingSubLevel); + this.allHoldingSubLevels.put(holdingSubLevel.data().uuid(), holdingSubLevel); + + if (VERBOSE) { + Sable.LOGGER.info("Added {} to holding chunk {}", chainSubLevel, holdingChunk); + } + + this.container.removeSubLevel(chainSubLevel, SubLevelRemovalReason.UNLOADED); + } + + this.setDirty(pos); + } + + public void queueDeletion(final ServerSubLevel subLevel) { + final GlobalSavedSubLevelPointer pointer = subLevel.getLastSerializationPointer(); + + if (VERBOSE) { + Sable.LOGGER.info("Queuing sub-level {} with pointer {} for deletion", subLevel, pointer); + } + + if (pointer != null) { + final ChunkPos chunkPos = pointer.chunkPos(); + final SubLevelHoldingChunk holdingChunk = this.getOrLoadHoldingChunk(chunkPos, false); + + if (holdingChunk != null) { + holdingChunk.getSubLevelPointers().remove(pointer.local()); + this.setDirty(chunkPos); + } + this.queuedDeletion.add(pointer); + } + } + + public SubLevelStorage getStorage() { + return this.storage; + } + + @Override + public void close() throws Exception { + this.storage.close(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.java new file mode 100644 index 0000000..d138887 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.java @@ -0,0 +1,64 @@ +package dev.ryanhcode.sable.sublevel.storage.region; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunk; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.Nullable; + +import java.io.IOException; +import java.nio.file.Path; + +/** + * A sub-level region file, mapping local chunk positions + * to collections of sub-level file pointers. + *
+ * Region files are always formatted (x_z.slvlr), with x and z + * representing the coordinates of the region in chunks. + * Sub-level file pointers are a single byte to represent the + * index of the storage file, and a short (max 1024) to represent + * the index of the sub-level in the storage file. + *
+ * Each region is sized 32x32 chunks + */ +public class SubLevelRegionFile extends SubLevelStorageFile { + public static final String FILE_EXTENSION = ".slvlr"; + public static int SECTOR_SIZE = 128; + public static int SIDE_LENGTH = 32; + public static int LOG_SIDE_LENGTH = 5; // log2(32) = 5 + + public SubLevelRegionFile(final Path path, final Path externalFilePath) throws IOException { + super(path, externalFilePath, SECTOR_SIZE); + } + + public void trySave(final int localX, final int localZ, final SubLevelHoldingChunk chunk) { + final CompoundTag tag = new CompoundTag(); + + try { + chunk.writeTo(tag); + this.write(this.getIndex(localX, localZ), tag); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to write sub-level holding chunk at ({}, {})", localX, localZ, e); + } + } + + @Nullable + public SubLevelHoldingChunk read(final ChunkPos chunkPos) { + final int localX = chunkPos.getRegionLocalX(); + final int localZ = chunkPos.getRegionLocalZ(); + try { + final CompoundTag tag = this.read(this.getIndex(localX, localZ)); + if (tag == null) { + return null; + } + return SubLevelHoldingChunk.from(chunkPos, tag); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to read sub-level holding chunk at ({}, {})", localX, localZ, e); + return null; + } + } + + public int getIndex(final int localX, final int localZ) { + return localX | (localZ << LOG_SIDE_LENGTH); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.java new file mode 100644 index 0000000..bd76a2f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.java @@ -0,0 +1,440 @@ +package dev.ryanhcode.sable.sublevel.storage.region; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtAccounter; +import net.minecraft.nbt.NbtIo; +import org.jetbrains.annotations.Nullable; + +import java.io.*; +import java.nio.ByteBuffer; +import java.nio.IntBuffer; +import java.nio.channels.FileChannel; +import java.nio.file.Files; +import java.nio.file.Path; +import java.nio.file.StandardCopyOption; +import java.nio.file.StandardOpenOption; +import java.util.BitSet; + +/** + * A storage file for sub-levels. + * One SubLevelStorage file can store 1,024 sub-levels, + * each occupying a span of sectors in the file. + */ +public class SubLevelStorageFile implements AutoCloseable { + public static final String FILE_EXTENSION = ".slvls"; + public static final String SINGLE_FILE_EXTENSION = ".slvl"; + private static final ByteBuffer PADDING_BUFFER = ByteBuffer.allocateDirect(1); + public static boolean COMPRESS_DATA = true; + public static int EXTERNAL_MASK = 16; + /** + * A bit set of occupied sectors. False sector indices do not contain any data, + * and true sector indices contain current sub-level data. + */ + protected final BitSet usedSectors = new BitSet(); + protected final BitSet usedIndices = new BitSet(); + private final int beginningSectorSize = 4096; + private final int sectorSize; + private final Path path; + private final Path externalFileDir; + private final FileChannel file; + /** + * The header of the file + */ + private final ByteBuffer header; + + /** + * A buffer containing the offsets of each sub-level in the file, stored in the header of the storage files. + * Each span value follows the format 0xPPPPPPLL, with PPPPP being the offset of the sub-level in the file and + * LL being the length of the sub-level in sectors. + */ + private final IntBuffer sectorSpans; + + public SubLevelStorageFile(final Path path, final Path externalFileDir, final int sectorSize) throws IOException { + this.path = path; + this.externalFileDir = externalFileDir; + + this.sectorSize = sectorSize; + this.file = FileChannel.open(path, StandardOpenOption.CREATE, StandardOpenOption.READ, StandardOpenOption.WRITE, StandardOpenOption.DSYNC); + + final int totalIndexCount = this.beginningSectorSize / Integer.BYTES; + this.header = ByteBuffer.allocateDirect(this.beginningSectorSize); + this.sectorSpans = this.header.asIntBuffer(); + this.sectorSpans.limit(totalIndexCount); + + this.header.position(0); + this.usedSectors.set(0, this.beginningSectorSize / this.sectorSize, true); + + final long existingSize = Files.size(path); + final int headerBytesRead = this.file.read(this.header, 0L); + + if (headerBytesRead != -1) { + if (headerBytesRead != this.beginningSectorSize) { + Sable.LOGGER.error("Sub-level storage file {} has truncated header: {}", path, headerBytesRead); + } + + for (int spanIndex = 0; spanIndex < totalIndexCount; spanIndex++) { + final int span = this.sectorSpans.get(spanIndex); + + this.usedIndices.set(spanIndex, span != 0); + + if (span == 0) { + continue; + } + + final int spanStart = this.getSpanStart(span); + final int spanLength = this.getSpanLength(span); + + if (((long) spanStart) * sectorSize > existingSize) { + // we're out of bounds of the file + Sable.LOGGER.warn("SubLevelStorageFile: Start of span at index {} in file {} is out of bounds (span start: {}, span length: {}, file size: {})", + spanIndex, path, spanStart, spanLength, existingSize); + } + + if (spanStart < 0 || spanLength <= 0) { + Sable.LOGGER.warn("SubLevelStorageFile: Invalid span at index {} in file {}", spanIndex, path); + continue; + } + + // if already occupied we have overlap + for (int i = spanStart; i < spanStart + spanLength; i++) { + if (this.usedSectors.get(i)) { + Sable.LOGGER.warn("SubLevelStorageFile: Overlapping span at index {} in file {}", spanIndex, path); + } + } + + this.usedSectors.set(spanStart, spanStart + spanLength, true); + } + } + } + + public SubLevelStorageFile(final Path path, final Path externalFileDir) throws IOException { + this(path, externalFileDir, 4096); + } + + private static boolean isExternalStreamChunk(final byte b) { + return (b & EXTERNAL_MASK) != 0; + } + + public int findFreeIndex() { + return this.usedIndices.nextClearBit(0); + } + + public int getTotalIndexCapacity() { + return this.beginningSectorSize / Integer.BYTES; + } + + private int sizeToSectors(final int sizeBytes) { + return (sizeBytes + this.sectorSize - 1) / this.sectorSize; + } + + private Path getExternalFilePath(final int index) { + final String string = index + SINGLE_FILE_EXTENSION; + return this.externalFileDir.resolve(string); + } + + private InputStream createExternalSubLevelInputStream(final int index) throws IOException { + final Path path = this.getExternalFilePath(index); + if (Files.isRegularFile(path)) { + return Files.newInputStream(path); + } + + throw new IOException("External sub-level path " + path + " is not file"); + } + + @Nullable + public DataInputStream getSubLevelDataInputStream(final int index) throws IOException { + final int span = this.sectorSpans.get(index); + + final int spanStart = this.getSpanStart(span); + final int spanLength = this.getSpanLength(span); + + if (spanStart == 0) { + return null; + } + + if (spanLength <= 0 || spanStart + spanLength > this.usedSectors.length()) { + Sable.LOGGER.error("SubLevelStorageFile: Invalid span at index {} in file {}", index, this.path); + return null; + } + + final int bufferSize = spanLength * this.sectorSize; + final ByteBuffer byteBuffer = ByteBuffer.allocate(bufferSize); + this.file.read(byteBuffer, (long) spanStart * this.sectorSize); + byteBuffer.flip(); + + if (byteBuffer.remaining() < Integer.BYTES + 1) { + Sable.LOGGER.error("SubLevelStorageFile: Not enough data to read sector data header at index {} in file {}", index, this.path); + return null; + } + + final int subLevelRemainingBytes = byteBuffer.getInt(); + final byte dataType = byteBuffer.get(); + + if (subLevelRemainingBytes == 0) { + Sable.LOGGER.warn("SubLevelStorageFile: Invalid sector data size at index {} in file {}: {}", index, this.path, subLevelRemainingBytes); + return null; + } + + final int actualRemainingBytes = subLevelRemainingBytes - 1; + + if (isExternalStreamChunk(dataType)) { + if (actualRemainingBytes != 0) { + Sable.LOGGER.warn("Sub-level has both internal and external streams"); + } + + return new DataInputStream(this.createExternalSubLevelInputStream(index)); + } else if (actualRemainingBytes > byteBuffer.remaining()) { + Sable.LOGGER.error("Sub-level {} stream is truncated: expected {} but read {}", index, actualRemainingBytes, byteBuffer.remaining()); + return null; + } else if (actualRemainingBytes < 0) { + Sable.LOGGER.error("Declared size {} of sub-level {} is negative", subLevelRemainingBytes, index); + return null; + } + + return new DataInputStream(new ByteArrayInputStream(byteBuffer.array(), byteBuffer.position(), actualRemainingBytes)); + } + + private void writeHeader() throws IOException { + this.header.position(0); + this.file.write(this.header, 0L); + } + + private ByteBuffer createExternalStub() { + final ByteBuffer byteBuffer = ByteBuffer.allocate(5); + byteBuffer.putInt(1); + byteBuffer.put((byte) EXTERNAL_MASK); + byteBuffer.flip(); + return byteBuffer; + } + + /** + * Writes a sub-levels data to disk + * + * @param index the index of the sub-level to write + * @param byteBuffer the byte buffer containing the sub-level data + * @throws IOException if an I/O error occurs while writing to the file + */ + protected void write(final int index, final ByteBuffer byteBuffer) throws IOException { + // get the previous span so we can clear it if it was used + final int oldSpan = this.sectorSpans.get(index); + final int oldSectorStart = this.getSpanStart(oldSpan); + final int oldSpanLength = this.getSpanLength(oldSpan); + + // allocate space according to the size of the byte buffer + final int remaining = byteBuffer.remaining(); + int sectorsNeeded = this.sizeToSectors(remaining); + + boolean savingToExternalFile = false; + Path temporaryExternalFile = null; + + if (sectorsNeeded > 255) { + // Too large for one span! Let's store to an external file. + savingToExternalFile = true; + // We only need 1 sector to store the stub that points to the external file + sectorsNeeded = 1; + } + + final int sectorWriteStart = this.allocateSpace(sectorsNeeded); + + if (savingToExternalFile) { + temporaryExternalFile = this.writeToExternalFile(byteBuffer); + + final ByteBuffer stub = this.createExternalStub(); + this.file.write(stub, (long) sectorWriteStart * this.sectorSize); + } else { + // write into that space + this.file.write(byteBuffer, (long) sectorWriteStart * this.sectorSize); + } + + this.sectorSpans.put(index, this.packSpan(sectorWriteStart, sectorsNeeded)); + this.usedIndices.set(index, true); + this.writeHeader(); + + if (savingToExternalFile) { + Files.move(temporaryExternalFile, this.getExternalFilePath(index), StandardCopyOption.REPLACE_EXISTING); + } else { + Files.deleteIfExists(this.getExternalFilePath(index)); + } + + // clear the previous span of sectors if we used to store data there for this sub-level index + if (oldSectorStart != 0) { + this.usedSectors.clear(oldSectorStart, oldSectorStart + oldSpanLength); + } + } + + private Path writeToExternalFile(final ByteBuffer byteBuffer) throws IOException { + final Path tempFile = Files.createTempFile(this.externalFileDir, "tmp", null); + + try (final FileChannel fileChannel = FileChannel.open(tempFile, StandardOpenOption.CREATE, StandardOpenOption.WRITE)) { + byteBuffer.position(5); + fileChannel.write(byteBuffer); + } + + return tempFile; + } + + /** + * Allocates sectors for a sub-level. + * Finds an open space `spaceNeeded` sectors long in the used sectors bitset, + * and marks that space as used, returning the start index. + * + * @param spaceNeeded the number of sectors needed for the sub-level data + * @return the starting index of the allocated space in the used sectors bitset + */ + public int allocateSpace(final int spaceNeeded) { + int j = 0; + + while (true) { + final int start = this.usedSectors.nextClearBit(j); + final int nextSetBit = this.usedSectors.nextSetBit(start); + if (nextSetBit == -1 || nextSetBit - start >= spaceNeeded) { + this.usedSectors.set(start, start + spaceNeeded); + return start; + } + + j = nextSetBit; + } + } + + /** + * Writes a sub-level tag to the storage file. + * + * @param index the index of the sub-level to write + * @param compoundTag the NBT tag containing the sub-level data, or null to clear the sub-level + * @throws IOException if an I/O error occurs while writing to the file + */ + public void write(final int index, @Nullable final CompoundTag compoundTag) throws IOException { + if (compoundTag == null) { + this.clear(index); + return; + } + + try (final DataOutputStream dataOutputStream = this.getSubLevelDataOutputStream(index)) { + if (COMPRESS_DATA) { + NbtIo.writeCompressed(compoundTag, dataOutputStream); + } else { + NbtIo.write(compoundTag, dataOutputStream); + } + } + } + + /** + * Reads a sub-level tag from the storage file. + * + * @param index the index of the sub-level to read + * @throws IOException + */ + public CompoundTag read(final int index) throws IOException { + final DataInputStream dataInputStream = this.getSubLevelDataInputStream(index); + if (dataInputStream == null) { + return null; + } + + try (dataInputStream) { + if (COMPRESS_DATA) { + return NbtIo.readCompressed(dataInputStream, NbtAccounter.unlimitedHeap()); + } else { + return NbtIo.read(dataInputStream); + } + } + } + + private void clear(final int index) throws IOException { + final int span = this.sectorSpans.get(index); + + if (span != 0) { + this.sectorSpans.put(index, 0); + this.usedIndices.clear(index); + + final int spanStart = this.getSpanStart(span); + this.usedSectors.clear(spanStart, spanStart + this.getSpanLength(span)); + + this.writeHeader(); + } + } + + public DataOutputStream getSubLevelDataOutputStream(final int index) { + return new DataOutputStream(new SectorSpanDataBuffer(index)); + } + + public Path getPath() { + return this.path; + } + + public int getSpanStart(final int span) { + return span >> 8 & 0xFFFFFF; // Extract the offset + } + + public int getSpanLength(final int span) { + return span & 0xFF; // Extract the length + } + + public int packSpan(final int start, final int length) { + if (start < 0 || length <= 0 || length > 255) { + throw new IllegalArgumentException("Invalid span: start=" + start + ", length=" + length); + } + return (start << 8) | length; // Pack the offset and length into a single integer + } + + /** + * Frees any native resources held by this object. + */ + @Override + public void close() throws IOException { + try { + this.padOrTruncateToFullSector(); + } finally { + try { + this.file.force(true); + } finally { + this.file.close(); + } + } + } + + public void flush() throws IOException { + this.file.force(true); + } + + private void padOrTruncateToFullSector() throws IOException { + // how many sectors of data are we using? + final int bytesNeededForFile = this.usedSectors.length() * this.sectorSize; + final int currentFileSize = (int) this.file.size(); + + if (currentFileSize > bytesNeededForFile) { + this.file.truncate(bytesNeededForFile); + } else { + final int desiredSize = bytesNeededForFile; + + if (currentFileSize < desiredSize) { + final ByteBuffer byteBuffer = PADDING_BUFFER.duplicate(); + byteBuffer.position(0); + this.file.write(byteBuffer, desiredSize - 1); + } + } + } + + class SectorSpanDataBuffer extends ByteArrayOutputStream { + private final int subLevelIndex; + + public SectorSpanDataBuffer(final int subLevelIndex) { + super(SubLevelStorageFile.this.sectorSize); + super.write(0); + super.write(0); + super.write(0); + super.write(0); + super.write(0); + this.subLevelIndex = subLevelIndex; + } + + @Override + public void close() throws IOException { + final ByteBuffer byteBuffer = ByteBuffer.wrap(this.buf, 0, this.count); + + final int start = this.count - 4; + byteBuffer.putInt(0, start); + SubLevelStorageFile.this.write(this.subLevelIndex, byteBuffer); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.java new file mode 100644 index 0000000..d21af44 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.java @@ -0,0 +1,86 @@ +package dev.ryanhcode.sable.sublevel.storage.serialization; + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.Pose3d; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.NotNull; + +import java.util.List; +import java.util.Objects; +import java.util.UUID; + +/** + * A half-loaded sub-level data stored inside a chunk + */ +public final class SubLevelData { + private final @NotNull UUID uuid; + private final @NotNull BoundingBox3d bounds; + private final @NotNull Pose3d pose; + private final @NotNull List relations; + private final @NotNull CompoundTag fullTag; + private ChunkPos originLoadedChunk = null; + + public SubLevelData(@NotNull final UUID uuid, @NotNull final BoundingBox3d bounds, @NotNull final Pose3d pose, @NotNull final List relations, @NotNull final CompoundTag fullTag) { + this.uuid = uuid; + this.bounds = bounds; + this.pose = pose; + this.relations = relations; + this.fullTag = fullTag; + } + + public ChunkPos getOriginLoadedChunk() { + return this.originLoadedChunk; + } + + public void setOriginLoadedChunk(final ChunkPos originLoadedChunk) { + this.originLoadedChunk = originLoadedChunk; + } + + public @NotNull UUID uuid() { + return this.uuid; + } + + public @NotNull BoundingBox3d bounds() { + return this.bounds; + } + + public @NotNull Pose3d pose() { + return this.pose; + } + + public @NotNull List dependencies() { + return this.relations; + } + + public @NotNull CompoundTag fullTag() { + return this.fullTag; + } + + @Override + public boolean equals(final Object obj) { + if (obj == this) return true; + if (obj == null || obj.getClass() != this.getClass()) return false; + final var that = (SubLevelData) obj; + return Objects.equals(this.uuid, that.uuid) && + Objects.equals(this.bounds, that.bounds) && + Objects.equals(this.pose, that.pose) && + Objects.equals(this.relations, that.relations) && + Objects.equals(this.fullTag, that.fullTag); + } + + @Override + public int hashCode() { + return Objects.hash(this.uuid, this.bounds, this.pose, this.relations, this.fullTag); + } + + @Override + public String toString() { + return "HalfLoadedSublevel[" + + "uuid=" + this.uuid + ", " + + "bounds=" + this.bounds + ", " + + "pose=" + this.pose + ", " + + "relations=" + this.relations + ']'; + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.java new file mode 100644 index 0000000..41feb36 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.java @@ -0,0 +1,219 @@ +package dev.ryanhcode.sable.sublevel.storage.serialization; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.plot.ServerLevelPlot; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import dev.ryanhcode.sable.util.SableNBTUtils; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.nbt.Tag; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; +import java.util.UUID; + +/** + * Serializes and saves sub-levels to disk. + */ +public class SubLevelSerializer { + + /** + * For when absolutely everything is broken, and I need to step through the state management. + */ + public static final boolean SUPER_DEBUG_MODE = false; + + private static @NotNull CompoundTag serialize(final ServerSubLevel subLevel, final List dependencies) { + final CompoundTag tag = new CompoundTag(); + final ServerLevelPlot plot = subLevel.getPlot(); + final ListTag dependencyTags = new ListTag(); + + for (final UUID dependency : dependencies) { + dependencyTags.add(NbtUtils.createUUID(dependency)); + } + + final Pose3d serializedPose = new Pose3d(subLevel.logicalPose()); + final Vector3dc selfCenterOfMass = subLevel.getSelfMassTracker().getCenterOfMass(); + serializedPose.position().set(subLevel.logicalPose().transformPosition(new Vector3d(selfCenterOfMass))); + serializedPose.rotationPoint().set(selfCenterOfMass); + + tag.putUUID("uuid", subLevel.getUniqueId()); + tag.put("plot", plot.save()); + tag.put("pose", SableNBTUtils.writePose3d(serializedPose)); + tag.put("world_bounds", SableNBTUtils.writeBoundingBox(subLevel.boundingBox())); + + final RigidBodyHandle handle = RigidBodyHandle.of(subLevel); + if (handle != null) { + final Vector3d linearVelocity = handle.getLinearVelocity(new Vector3d()); + final Vector3d angularVelocity = handle.getAngularVelocity(new Vector3d()); + + if (linearVelocity.lengthSquared() > 0.1 * 0.1) { + tag.put("linear_velocity", SableNBTUtils.writeVector3d(linearVelocity)); + } + + if (angularVelocity.lengthSquared() > Math.toRadians(1.0)) { + tag.put("angular_velocity", SableNBTUtils.writeVector3d(angularVelocity)); + } + } + + if (subLevel.getName() != null) { + tag.putString("display_name", subLevel.getName()); + } + + if (!dependencies.isEmpty()) { + tag.put("loading_dependencies", dependencyTags); + } + + final CompoundTag userDataTag = subLevel.getUserDataTag(); + if (userDataTag != null) { + tag.put("user_data", userDataTag); + } + + return tag; + } + + /** + * Loads a sub-level from the level data folder with a name + * + * @param tag tag to load from + * @return the half loaded sub-level, or null if the loading fails + */ + @Nullable + public static SubLevelData fromData(final CompoundTag tag) { + final UUID uuid = tag.getUUID("uuid"); + + List dependencies = List.of(); + if (tag.contains("loading_dependencies")) { + final ListTag dependencyUUIDS = tag.getList("loading_dependencies", Tag.TAG_INT_ARRAY); + + dependencies = new ObjectArrayList<>(); + + for (final Tag dependencyUUIDTag : dependencyUUIDS) { + final UUID dependencyUUID = NbtUtils.loadUUID(dependencyUUIDTag); + + dependencies.add(dependencyUUID); + } + } + + return new SubLevelData( + uuid, + SableNBTUtils.readBoundingBox(tag.getCompound("world_bounds")), + SableNBTUtils.readPose3d(tag.getCompound("pose")), + dependencies, + tag + ); + } + + /** + * Fully loads a sub-level, adding it to the level + * + * @param level the level to load the sub-level into + * @param halfLoadedSubLevel the half loaded sub-level to fully load + */ + public static ServerSubLevel fullyLoad(final ServerLevel level, final SubLevelData halfLoadedSubLevel) { + final CompoundTag tag = halfLoadedSubLevel.fullTag(); + final CompoundTag plotTag = tag.getCompound("plot"); + + final int plotX = plotTag.getInt("plot_x"); + final int plotZ = plotTag.getInt("plot_z"); + + final Pose3d pose = SableNBTUtils.readPose3d(tag.getCompound("pose")); + + final Vector3d position = pose.position(); + final Vector3d cor = pose.rotationPoint(); + if (Double.isNaN(position.x) || + Double.isNaN(position.y) || + Double.isNaN(position.z) || + Double.isNaN(cor.x) || + Double.isNaN(cor.y) || + Double.isNaN(cor.z) + ) { + Sable.LOGGER.error("Failed to load sub-level, invalid pose: {}", pose); + return null; + } + + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer(level); + + final ServerSubLevel subLevel; + try { + subLevel = (ServerSubLevel) plotContainer.allocateSubLevel(halfLoadedSubLevel.uuid(), plotX, plotZ, pose); + } catch (final IllegalArgumentException e) { + Sable.LOGGER.error("Failed to load sub-level, skipping", halfLoadedSubLevel, e); + return null; + } + + final ServerLevelPlot plot = subLevel.getPlot(); + plot.load(plotTag); + + if (plot.getBoundingBox() == BoundingBox3i.EMPTY || plot.getBoundingBox().volume() <= 0) { + Sable.LOGGER.error("Failed to load sub-level, invalid plot bounds: {}", plot.getBoundingBox() == BoundingBox3i.EMPTY ? "EMPTY" : plot.getBoundingBox()); + plotContainer.removeSubLevel(subLevel, SubLevelRemovalReason.REMOVED); + return null; + } + + final SubLevelPhysicsSystem physicsSystem = plotContainer.physicsSystem(); + subLevel.logicalPose().set(pose); + physicsSystem.getPipeline().teleport(subLevel, position, pose.orientation()); + subLevel.updateLastPose(); + + Vector3dc linearVelocity = JOMLConversion.ZERO; + Vector3dc angularVelocity = JOMLConversion.ZERO; + + if (tag.contains("linear_velocity")) { + linearVelocity = SableNBTUtils.readVector3d(tag.getCompound("linear_velocity")) + .mul(SableConfig.VELOCITY_RETAINED_ON_LOAD.getAsDouble()); + } + + if (tag.contains("angular_velocity")) { + angularVelocity = SableNBTUtils.readVector3d(tag.getCompound("angular_velocity")) + .mul(SableConfig.VELOCITY_RETAINED_ON_LOAD.getAsDouble()); + } + + physicsSystem.getPipeline().addLinearAndAngularVelocity(subLevel, linearVelocity, angularVelocity); + + if (tag.contains("display_name")) { + subLevel.setName(tag.getString("display_name")); + } + + if (tag.contains("user_data")) { + subLevel.setUserDataTag(tag.getCompound("user_data")); + } + + return subLevel; + } + + /** + * Serializes a sub-level and converts it to a {@link SubLevelData} + * + * @param subLevel the sub-level to serialize + */ + public static SubLevelData toData(final ServerSubLevel subLevel, final @NotNull List dependencies) { + final List filteredDependencies = new ObjectArrayList<>(dependencies); + filteredDependencies.remove(subLevel.getUniqueId()); + + final CompoundTag tag = serialize(subLevel, filteredDependencies); + + return new SubLevelData( + subLevel.getUniqueId(), + new BoundingBox3d(subLevel.boundingBox()), + new Pose3d(subLevel.logicalPose()), + filteredDependencies, + tag + ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.java new file mode 100644 index 0000000..5c07713 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.java @@ -0,0 +1,266 @@ +package dev.ryanhcode.sable.sublevel.storage.serialization; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.holding.SavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunk; +import dev.ryanhcode.sable.sublevel.storage.region.SubLevelRegionFile; +import dev.ryanhcode.sable.sublevel.storage.region.SubLevelStorageFile; +import it.unimi.dsi.fastutil.longs.Long2ObjectLinkedOpenHashMap; +import net.minecraft.FileUtil; +import net.minecraft.core.SectionPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.util.ExceptionCollector; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.NotNull; + +import java.io.IOException; +import java.nio.file.Path; + +/** + * Manages the sub-level holding chunks and regions for a level + */ +public class SubLevelStorage implements AutoCloseable { + public static int MAX_CACHE_SIZE = 128; + private final Long2ObjectLinkedOpenHashMap regionCache = new Long2ObjectLinkedOpenHashMap<>(); + private final Long2ObjectLinkedOpenHashMap storageCache = new Long2ObjectLinkedOpenHashMap<>(); + + private final Path folder; + + public SubLevelStorage(final Path folder) { + this.folder = folder; + } + + private static @NotNull String getFileName(final ChunkPos chunkPos) { + return "r." + chunkPos.getRegionX() + "." + chunkPos.getRegionZ(); + } + + private static @NotNull String getFileName(final ChunkPos chunkPos, final int index) { + return "r." + chunkPos.getRegionX() + "." + chunkPos.getRegionZ() + "." + index; + } + + private SubLevelRegionFile getRegionFile(final ChunkPos chunkPos) throws IOException { + final long longKey = ChunkPos.asLong(chunkPos.getRegionX(), chunkPos.getRegionZ()); + final SubLevelRegionFile existingFile = this.regionCache.getAndMoveToFirst(longKey); + + if (existingFile != null) { + return existingFile; + } + + if (this.regionCache.size() >= MAX_CACHE_SIZE) { + this.regionCache.removeLast().close(); + } + + final Path path = this.getPath(chunkPos); + final Path externalPath = this.getExternalPath(chunkPos); + final SubLevelRegionFile loadedRegion = new SubLevelRegionFile(path, externalPath); + this.regionCache.putAndMoveToFirst(longKey, loadedRegion); + return loadedRegion; + } + + private SubLevelStorageFile getRegionStorageFile(final ChunkPos chunkPos, final int index) throws IOException { + final long longKey = SectionPos.asLong(chunkPos.getRegionX(), index, chunkPos.getRegionZ()); + final SubLevelStorageFile existingFile = this.storageCache.getAndMoveToFirst(longKey); + + if (existingFile != null) { + return existingFile; + } + + if (this.storageCache.size() >= MAX_CACHE_SIZE) { + this.storageCache.removeLast().close(); + } + + FileUtil.createDirectoriesSafe(this.folder); + final Path path = this.getPath(chunkPos, index); + final Path externalPath = this.getExternalPath(chunkPos); + + FileUtil.createDirectoriesSafe(externalPath); + + final SubLevelStorageFile loadedRegion = new SubLevelStorageFile(path, externalPath); + this.storageCache.putAndMoveToFirst(longKey, loadedRegion); + return loadedRegion; + } + + public SubLevelHoldingChunk attemptLoadHoldingChunk(final ChunkPos chunkPos) { + try { + final SubLevelRegionFile regionFile = this.getRegionFile(chunkPos); + return regionFile.read(chunkPos); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to load holding chunk for {}", chunkPos, e); + return null; + } + } + + public void attemptSaveHoldingChunk(final ChunkPos chunkPos, final SubLevelHoldingChunk holdingChunk) { + try { + final SubLevelRegionFile regionFile = this.getRegionFile(chunkPos); + regionFile.trySave(chunkPos.getRegionLocalX(), chunkPos.getRegionLocalZ(), holdingChunk); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to save holding chunk for {}", chunkPos, e); + + } + } + + /** + * Attempts to load a {@link SubLevelData} from a position and pointer + * + * @param chunkPos the chunk position to load the sub-level from + * @param pointer the pointer to the sub-level in the storage file + */ + public SubLevelData attemptLoadSubLevel(final ChunkPos chunkPos, final SavedSubLevelPointer pointer) { + try { + final SubLevelStorageFile storageFile = this.getRegionStorageFile(chunkPos, pointer.storageIndex()); + final CompoundTag tag = storageFile.read(pointer.subLevelIndex()); + + if (tag == null) { + Sable.LOGGER.error("Couldn't find sub-level at index {} in storage file for chunk {}", pointer.subLevelIndex(), chunkPos); + return null; + } + final SubLevelData subLevel = SubLevelSerializer.fromData(tag); + + if (subLevel != null) { + subLevel.setOriginLoadedChunk(chunkPos); + } else { + Sable.LOGGER.error("Failed to load sub-level at index {} in storage file for chunk {}", pointer.subLevelIndex(), chunkPos); + } + + return subLevel; + } catch (final IOException e) { + Sable.LOGGER.error("Failed to load sub-level for {}", chunkPos, e); + return null; + } + } + + /** + * Attempts to save a {@link SubLevelData} to a position, finding a non-occupied pointer. + * This method will create a new storage file if necessary. + * This will NOT save the sub-level to the chunk in the region. + * + * @param chunkPos the chunk position to save the sub-level to + * @param subLevel the serialized sub-level to save + * @return a new {@link GlobalSavedSubLevelPointer} containing the chunk position, storage index, and sub-level index + */ + public GlobalSavedSubLevelPointer attemptSaveSubLevel(final ChunkPos chunkPos, final SubLevelData subLevel) { + try { + // until we find a storage index that is not fully occupied in indices + int storageIndex = 0; + + while (true) { + final SubLevelStorageFile storageFile = this.getRegionStorageFile(chunkPos, storageIndex); + final int subLevelIndex = storageFile.findFreeIndex(); + + if (subLevelIndex != -1 && subLevelIndex < storageFile.getTotalIndexCapacity()) { + // we found a free index, save the sub-level + storageFile.write(subLevelIndex, subLevel.fullTag()); + return new GlobalSavedSubLevelPointer(chunkPos, (short) storageIndex, (short) subLevelIndex); + } + + // increment the storage index to try the next one + storageIndex++; + } + } catch (final IOException e) { + Sable.LOGGER.error("Failed to save sub-level for {}", chunkPos, e); + } + return null; + } + + /** + * Saves a sub-level to an already existing global pointer. + * + * @param pointer the global pointer containing the chunk position, storage index, and sub-level index + * @param subLevel the serialized sub-level to save + */ + public void attemptSaveSubLevel(final GlobalSavedSubLevelPointer pointer, final SubLevelData subLevel) { + try { + final SubLevelStorageFile storageFile = this.getRegionStorageFile(pointer.chunkPos(), pointer.storageIndex()); + storageFile.write(pointer.subLevelIndex(), subLevel != null ? subLevel.fullTag() : null); + } catch (final IOException e) { + Sable.LOGGER.error("Failed to save sub-level for {}", pointer.chunkPos(), e); + } + } + + /** + * Gets the external path for large storage files for a given chunk position. + * + * @param chunkPos the chunk position to get the storage file for + * @return the storage file for the chunk position + */ + private @NotNull Path getExternalPath(final ChunkPos chunkPos) { + return this.folder.resolve(getFileName(chunkPos) + ".r"); + } + + /** + * Gets the external path for large storage files for a given chunk position. + * + * @param chunkPos the chunk position to get the path for + * @param index the index of the storage file (used for multiple storage files in a region) + * @return the path to the storage file + */ + private @NotNull Path getExternalPath(final ChunkPos chunkPos, final int index) { + return this.folder.resolve(getFileName(chunkPos, index) + ".s"); + } + + /** + * Gets a storage file for a given chunk position. + * + * @param chunkPos the chunk position to get the storage file for + * @return the storage file for the chunk position + */ + private @NotNull Path getPath(final ChunkPos chunkPos) { + return this.folder.resolve(getFileName(chunkPos) + SubLevelRegionFile.FILE_EXTENSION); + } + + /** + * Gets the path for a storage file for a given chunk position. + * + * @param chunkPos the chunk position to get the path for + * @param index the index of the storage file (used for multiple storage files in a region) + * @return the path to the storage file + */ + private @NotNull Path getPath(final ChunkPos chunkPos, final int index) { + return this.folder.resolve(getFileName(chunkPos, index) + SubLevelStorageFile.FILE_EXTENSION); + } + + @Override + public void close() throws IOException { + final ExceptionCollector exceptionCollector = new ExceptionCollector<>(); + + for (final SubLevelStorageFile storageFile : this.storageCache.values()) { + try { + storageFile.close(); + } catch (final IOException e) { + exceptionCollector.add(e); + } + } + + for (final SubLevelRegionFile regionFile : this.regionCache.values()) { + try { + regionFile.close(); + } catch (final IOException e) { + exceptionCollector.add(e); + } + } + + exceptionCollector.throwIfPresent(); + } + + @NotNull + @ApiStatus.Internal + public Path getFolder() { + return this.folder; + } + + /** + * Flushes all cached region and storage files to disk. + */ + public void flush() throws IOException { + for (final SubLevelRegionFile regionFile : this.regionCache.values()) { + regionFile.flush(); + } + + for (final SubLevelStorageFile regionFile : this.storageCache.values()) { + regionFile.flush(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.java new file mode 100644 index 0000000..33e5755 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.java @@ -0,0 +1,600 @@ +package dev.ryanhcode.sable.sublevel.system; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.api.physics.object.ArbitraryPhysicsObject; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelObserver; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.mixinterface.plot.SubLevelContainerHolder; +import dev.ryanhcode.sable.mixinterface.toast.SableToastableServer; +import dev.ryanhcode.sable.physics.config.PhysicsConfigData; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.platform.SableEventPublishPlatform; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import dev.ryanhcode.sable.sublevel.plot.ServerLevelPlot; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.sublevel.system.ticket.PhysicsChunkTicketManager; +import it.unimi.dsi.fastutil.objects.Object2IntMap; +import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.CrashReport; +import net.minecraft.CrashReportCategory; +import net.minecraft.ReportedException; +import net.minecraft.core.BlockPos; +import net.minecraft.core.SectionPos; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.joml.Math; +import org.joml.Quaterniond; +import org.joml.Vector3d; + +import java.util.Collection; +import java.util.Objects; +import java.util.UUID; + +/** + * Runs a physics pipeline on sub-levels. + */ +public class SubLevelPhysicsSystem implements SubLevelObserver { + + /** + * Default capacity in a physics chunk for sub-levels + */ + public static final int DEFAULT_RESIDENT_CAPACITY = 8; + + /** + * If tickets are used for queries + */ + public static final boolean USE_TICKETS_FOR_QUERIES = false; + /** + * TODO: Nuke this for threading + */ + public static SubLevelPhysicsSystem currentlySteppingSystem; + /** + * The current physics pipeline. + */ + private final PhysicsPipeline pipeline; + /** + * The level that this system is running on. + */ + private final ServerLevel level; + /** + * Punch cooldowns for every player + */ + private final Object2IntMap punchCooldowns = new Object2IntOpenHashMap<>(); + /** + * The current physics config + */ + private final PhysicsConfigData config = new PhysicsConfigData(); + + /** + * The ticket manager for physics chunks + */ + private final PhysicsChunkTicketManager ticketManager = new PhysicsChunkTicketManager(); + /** + * For allocation optimization + */ + private final Pose3d storagePose = new Pose3d(); + /** + * All arbitrary objects currently loaded + */ + private final Collection arbitraryObjects = new ObjectOpenHashSet<>(); + /** + * If physics should be paused. + */ + private boolean paused; + /** + * The substep / physics tick we're currently on + */ + private int currentSubstep; + + /** + * Creates a new physics system. + */ + public SubLevelPhysicsSystem(final ServerLevel level) { + this.level = level; + this.pipeline = Sable.createPhysicsPipeline(this.level); + } + + /** + * @return the physics system associated with a level, or null if none + */ + public static SubLevelPhysicsSystem get(final Level level) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container instanceof final ServerSubLevelContainer serverContainer) { + return serverContainer.physicsSystem(); + } + + return null; + } + + /** + * @return the physics system associated with a level, or null if none + */ + public static @NotNull SubLevelPhysicsSystem require(final Level level) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + if (container instanceof final ServerSubLevelContainer serverContainer) { + return Objects.requireNonNull(serverContainer.physicsSystem()); + } + + throw new IllegalArgumentException("Sub-level container not found"); + } + + public static SubLevelPhysicsSystem getCurrentlySteppingSystem() { + if (SubLevelPhysicsSystem.currentlySteppingSystem == null) { + throw new IllegalStateException("No physics system is currently stepping"); + } + return SubLevelPhysicsSystem.currentlySteppingSystem; + } + + /** + * Initializes the physics pipeline. + */ + public void initialize() { + final Vector3d gravity = new Vector3d(DimensionPhysicsData.getGravity(this.level)); + final double universalDrag = DimensionPhysicsData.getUniversalDrag(this.level); + + this.pipeline.init(gravity, universalDrag); + this.pipeline.updateConfigFrom(this.config); + } + + /** + * Signals that the physics config has been updated + */ + public void onConfigUpdated() { + this.pipeline.updateConfigFrom(this.config); + } + + /** + * Called after a sub-level is added to a {@link SubLevelContainer}. + * + * @param subLevel the sub-level that was added + */ + @Override + public void onSubLevelAdded(final SubLevel subLevel) { + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + this.pipeline.add(serverSubLevel, serverSubLevel.logicalPose()); + } else { + throw new UnsupportedOperationException("Client sub-levels are not supported by the physics system. How did we end up here?"); + } + } + + /** + * Called before a sub-level is removed from a {@link SubLevelContainer}. + * + * @param subLevel the sub-level that will be removed + */ + @Override + public void onSubLevelRemoved(final SubLevel subLevel, final SubLevelRemovalReason reason) { + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + this.pipeline.remove(serverSubLevel); + } else { + throw new UnsupportedOperationException("Client sub-levels are not supported by the physics system"); + } + } + + /** + * Called every tick for each {@link SubLevelContainer}. + * + * @param sidelessContainer the sub-level container that is ticking + */ + @Override + public void tick(final SubLevelContainer sidelessContainer) { + final ServerSubLevelContainer container = (ServerSubLevelContainer) sidelessContainer; + this.tickPunchCooldowns(); + + this.ticketManager.update(this.level, container, this, this.pipeline, 1.0 / 20.0); + + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + subLevel.updateLastPose(); + for (final BlockEntitySubLevelActor actor : subLevel.getPlot().getBlockEntityActors()) { + actor.sable$tick(subLevel); + } + } + + this.pipeline.tick(); + + if (!this.paused) { + SubLevelPhysicsSystem.currentlySteppingSystem = this; + + // tick the pipeline physics + try { + this.tickPipelinePhysics(container); + } catch (final Exception e) { + final CrashReport crashReport = CrashReport.forThrowable(e, "Sable ticking physics"); + final CrashReportCategory crashReportCategory = crashReport.addCategory("Current physics state"); + crashReportCategory.setDetail("Dimension", this.level.dimension()); + throw new ReportedException(crashReport); + } + + SubLevelPhysicsSystem.currentlySteppingSystem = null; + } + } + + private void tickPipelinePhysics(final ServerSubLevelContainer container) { + this.pipeline.prePhysicsTicks(); + + for (this.currentSubstep = 0; this.currentSubstep < this.config.substepsPerTick; this.currentSubstep++) { + final double substepTimeStep = 1.0 / 20.0 / this.config.substepsPerTick; + + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) continue; + subLevel.prePhysicsTickBegin(); + } + + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) continue; + subLevel.updateMergedMassData((float) this.getPartialPhysicsTick()); + } + + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) continue; + subLevel.prePhysicsTick(this, this.getPhysicsHandle(subLevel), substepTimeStep); + } + + SableEventPublishPlatform.INSTANCE.prePhysicsTick(this, substepTimeStep); + + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) continue; + subLevel.applyQueuedForces(this, this.getPhysicsHandle(subLevel), substepTimeStep); + } + + this.pipeline.physicsTick(substepTimeStep); + + // if any blocks were modified due to, say, fragile blocks breaking + // sub-levels could have been removed during the physics tick + // we must therefore process removals every physics tick + container.processSubLevelRemovals(); + this.updateAllPoses(container); + + SableEventPublishPlatform.INSTANCE.postPhysicsTick(this, substepTimeStep); + } + + this.pipeline.postPhysicsTicks(); + this.currentSubstep = this.config.substepsPerTick; + } + + private void updateAllPoses(final ServerSubLevelContainer container) { + for (final ServerSubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) continue; + + this.updatePose(subLevel); + } + } + + /** + * Updates the pose of a {@link ServerSubLevel} from the current {@link PhysicsPipeline}, updating relevant data. + * + * @param serverSubLevel the sub-level to update + */ + public void updatePose(final ServerSubLevel serverSubLevel) { + this.pipeline.readPose(serverSubLevel, this.storagePose); + + { + final Vector3d position = this.storagePose.position(); + final Quaterniond orientation = this.storagePose.orientation(); + + if (Double.isNaN(position.x) || + Double.isNaN(position.y) || + Double.isNaN(position.z) || + Double.isNaN(orientation.x) || + Double.isNaN(orientation.y) || + Double.isNaN(orientation.z) || + Double.isNaN(orientation.w)) { + Sable.LOGGER.info("Invalid position {} or orientation {} received for sub-level {} from pipeline.", this.storagePose.position(), this.storagePose.orientation(), serverSubLevel); + if (!this.recoverSubLevel(serverSubLevel)) { + return; + } + this.pipeline.readPose(serverSubLevel, this.storagePose); + } + } + + final Pose3d logicalPose = serverSubLevel.logicalPose(); + logicalPose.position().set(this.storagePose.position()); + logicalPose.orientation().set(this.storagePose.orientation()); + + // Update latest velocities + logicalPose.position().sub(serverSubLevel.lastPose().position(), serverSubLevel.latestLinearVelocity); + + final Quaterniond difference = logicalPose.orientation().difference(serverSubLevel.lastPose().orientation(), new Quaterniond()).conjugate(); + final Vector3d angularVelocity = serverSubLevel.latestAngularVelocity.set(difference.x, difference.y, difference.z); + if (angularVelocity.lengthSquared() <= 1E-15) + angularVelocity.mul(2.0 / difference.w); + else { + angularVelocity.normalize().mul(2.0 * Math.safeAcos(difference.w)); + } + + // [m/t] to [m/s] + serverSubLevel.latestLinearVelocity.mul(20.0); + serverSubLevel.latestAngularVelocity.mul(20.0); + } + + /** + * Attempts to recover a sub-level that the pipeline messed up the state for (ex. NaNs) + * Will remove and re-add it to the pipeline. + * + * @param serverSubLevel the sub-level to recover + */ + public boolean recoverSubLevel(final ServerSubLevel serverSubLevel) { + Sable.LOGGER.info("Attempting to recover physics state for sub-level {}. Removing and re-adding from pipeline.", serverSubLevel); + + final MinecraftServer server = this.level.getServer(); + if (server instanceof final SableToastableServer toastable) { + toastable.sable$reportSubLevelPhysicsFailure(serverSubLevel); + } + + // The sub-level has NaN'ed! + // We need to remove it and re-add from the physics world. + this.pipeline.remove(serverSubLevel); + this.pipeline.add(serverSubLevel, serverSubLevel.logicalPose()); + + if (serverSubLevel.getMassTracker().getCenterOfMass() == null) { + // there's no center of mass for the body, which means it's effectively removed + Sable.LOGGER.info("Sub-level recovery added sub-level to pipeline, but center of mass is null. Aborting and removing sub-level."); + SubLevelContainer.getContainer(this.level).removeSubLevel(serverSubLevel, SubLevelRemovalReason.REMOVED); + return false; + } + + final ServerLevelPlot plot = serverSubLevel.getPlot(); + + for (final PlotChunkHolder holder : plot.getLoadedChunks()) { + final LevelChunk chunk = holder.getChunk(); + final ChunkPos global = chunk.getPos(); + + final LevelChunkSection[] levelChunkSections = chunk.getSections(); + for (int i = 0; i < chunk.getSectionsCount(); i++) { + final LevelChunkSection section = levelChunkSections[i]; + + if (!section.hasOnlyAir()) { + final int sectionY = chunk.getSectionYFromSectionIndex(i); + this.pipeline.handleChunkSectionAddition(section, global.x, sectionY, global.z, true); + } + } + } + + return true; + } + + private void tickPunchCooldowns() { + // Decrement punch cooldowns + final ObjectIterator> punchCooldownIter = this.punchCooldowns.object2IntEntrySet().iterator(); + + while (punchCooldownIter.hasNext()) { + final Object2IntMap.Entry entry = punchCooldownIter.next(); + final int cooldown = entry.getIntValue() - 1; + + if (cooldown <= 0) { + punchCooldownIter.remove(); + } else { + entry.setValue(cooldown); + } + } + } + + public boolean tryPunch(final UUID player, final int cooldownAttempt) { + final int cooldown = this.punchCooldowns.getOrDefault(player, 0); + + if (cooldown > 0) { + return false; + } + + final int newCooldown = Math.max(SableConfig.SUB_LEVEL_PUNCH_COOLDOWN_TICKS.getAsInt(), cooldownAttempt); + this.punchCooldowns.put(player, newCooldown); + return true; + } + + /** + * @return the physics pipeline + */ + public PhysicsPipeline getPipeline() { + return this.pipeline; + } + + /** + * Gets a physics handle for a sub-level + * + * @param subLevel the sub-level to get the handle for + * @return the physics handle for the sub-level + */ + public RigidBodyHandle getPhysicsHandle(@NotNull final ServerSubLevel subLevel) { + return new RigidBodyHandle(Objects.requireNonNull(subLevel), this); + } + + /** + * Handles a block change in the world. + * + * @param sectionPos the section position + * @param section the chunk section + * @param localX the local x position + * @param localY the local y position + * @param localZ the local z position + * @param oldState the old block state + * @param newState the new block state + */ + public void handleBlockChange(final SectionPos sectionPos, final LevelChunkSection section, final int localX, final int localY, final int localZ, final BlockState oldState, final BlockState newState) { + final ChunkPos chunk = sectionPos.chunk(); + final LevelPlot plot = ((SubLevelContainerHolder) this.level).sable$getPlotContainer().getPlot(chunk); + if (plot != null) { + this.ticketManager.addSectionIfNotTracked(this.level, section, sectionPos, this.pipeline); + } + + final int x = (sectionPos.x() << SectionPos.SECTION_BITS) + localX; + final int y = (sectionPos.y() << SectionPos.SECTION_BITS) + localY; + final int z = (sectionPos.z() << SectionPos.SECTION_BITS) + localZ; + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, sectionPos); + final BlockPos globalBlockPos = new BlockPos(x, y, z); + + this.updateMassDataFromBlockChange(subLevel, globalBlockPos, oldState, newState, true); + + this.pipeline.handleBlockChange(sectionPos, section, localX, localY, localZ, oldState, newState); + + this.wakeUpObjectsAt(x, y, z); + } + + /** + * Wakes up all sub-levels that intersect with the given block position. + * + * @param x the x position + * @param y the y position + * @param z the z position + */ + public void wakeUpObjectsAt(final int x, final int y, final int z) { + // Wake up intersecting sub-levels + final BoundingBox3d bounds = new BoundingBox3d(x, y, z, x + 1, y + 1, z + 1); + bounds.expand(0.1, bounds); + final Iterable intersectingSubLevels = Sable.HELPER.getAllIntersecting(this.level, bounds); + + for (final SubLevel intersectingSubLevel : intersectingSubLevels) { + if (intersectingSubLevel instanceof final ServerSubLevel intersectingServerSubLevel) { + this.pipeline.wakeUp(intersectingServerSubLevel); + } + } + + if (this.arbitraryObjects.isEmpty()) return; + final BoundingBox3d objectBounds = new BoundingBox3d(); + for (final ArbitraryPhysicsObject object : this.arbitraryObjects) { + object.getBoundingBox(objectBounds); + + if (objectBounds.intersects(bounds)) { + object.wakeUp(); + } + } + } + + public void updateMassDataFromBlockChange(final SubLevel subLevel, final BlockPos globalBlockPos, final BlockState oldState, final BlockState newState, final boolean notifyPipeline) { + if ((subLevel instanceof final ServerSubLevel serverSubLevel)) { + + final Vec3 oldInertia = oldState.isAir() ? null : PhysicsBlockPropertyHelper.getInertia(this.level, globalBlockPos, oldState); + final Vec3 inertia = newState.isAir() ? null : PhysicsBlockPropertyHelper.getInertia(this.level, globalBlockPos, newState); + + final double oldMass = oldState.isAir() ? 0.0 : PhysicsBlockPropertyHelper.getMass(this.level, globalBlockPos, oldState); + final double mass = newState.isAir() ? 0.0 : PhysicsBlockPropertyHelper.getMass(this.level, globalBlockPos, newState); + + if (mass != oldMass || (newState != oldState && (oldMass != 0.0 || mass != 0.0)) || oldInertia != inertia) { + final Level level = subLevel.getLevel(); + final MassTracker massTracker = serverSubLevel.getSelfMassTracker(); + + if (mass != 0.0) massTracker.addBlockMass(level, newState, globalBlockPos, mass, inertia); + if (oldMass != 0.0) massTracker.addBlockMass(level, oldState, globalBlockPos, -oldMass, oldInertia); + + if (!subLevel.isRemoved() && massTracker.isInvalid()) { + serverSubLevel.getPlot().destroyAllBlocks(); + serverSubLevel.markRemoved(); + return; + } + + if (notifyPipeline) { + serverSubLevel.updateMergedMassData((float) this.getPartialPhysicsTick()); + this.pipeline.onStatsChanged(serverSubLevel); + } + } + } + } + + /** + * Returns the current fraction between the last physics tick and the next one. + * + * @return 0.0 - 1.0, 0.0 at beginning of the physics tick and (substeps - 1) / (substeps) at the last substep in the tick + */ + public double getPartialPhysicsTick() { + return (double) (this.currentSubstep + 1) / this.config.substepsPerTick; + } + + /** + * @return whether the physics system is currently paused or not + */ + public boolean getPaused() { + return this.paused; + } + + /** + * @param paused whether the physics system should be paused or not + */ + public void setPaused(final boolean paused) { + this.paused = paused; + } + + /** + * Queries all intersecting sub-levels with the given bounds. + * + * @param bounds the bounds to query + * @return the intersecting sub-levels + */ + public Iterable queryIntersecting(final BoundingBox3dc bounds) { + if (USE_TICKETS_FOR_QUERIES) { + return this.ticketManager.queryIntersecting(bounds); + } else { + // Brute force check all of them + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null : "No sub-level container found for level that somehow also has a physics system"; + + return container.queryIntersecting(bounds); + } + } + + /** + * @return the current physics config + */ + public PhysicsConfigData getConfig() { + return this.config; + } + + public Iterable getArbitraryObjects() { + return this.arbitraryObjects; + } + + public ServerLevel getLevel() { + return this.level; + } + + public PhysicsChunkTicketManager getTicketManager() { + return this.ticketManager; + } + + /** + * Adds an arbitrary physics object to the system + */ + public void addObject(final ArbitraryPhysicsObject object) { + if (this.arbitraryObjects.add(object)) { + object.onAddition(this); + } + } + + /** + * Removes an arbitrary physics object from the system + */ + public void removeObject(final ArbitraryPhysicsObject object) { + if (this.arbitraryObjects.remove(object)) { + object.onRemoved(); + } + } + + /** + * @return the next runtime ID from the physics pipeline + */ + public int getNextRuntimeID() { + return this.pipeline.getNextRuntimeID(); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.java new file mode 100644 index 0000000..2274684 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.java @@ -0,0 +1,445 @@ +package dev.ryanhcode.sable.sublevel.system; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelObserver; +import dev.ryanhcode.sable.api.sublevel.SubLevelTrackingPlugin; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotDualPacket; +import dev.ryanhcode.sable.network.packets.ClientboundSableSnapshotInfoDualPacket; +import dev.ryanhcode.sable.network.packets.tcp.*; +import dev.ryanhcode.sable.network.udp.SableUDPServer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.plot.PlotChunkHolder; +import dev.ryanhcode.sable.sublevel.plot.SubLevelPlayerChunkSender; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import foundry.veil.api.network.VeilPacketManager; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.network.protocol.Packet; +import net.minecraft.network.protocol.common.ClientboundCustomPayloadPacket; +import net.minecraft.network.protocol.common.custom.CustomPacketPayload; +import net.minecraft.network.protocol.game.ClientGamePacketListener; +import net.minecraft.network.protocol.game.ClientboundBundlePacket; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.ChunkPos; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector2i; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.joml.Vector3f; + +import java.util.*; + +/** + * Handles the loading and unloading of {@link SubLevel SubLevels} for {@link ServerPlayer ServerPlayers}. + */ +public class SubLevelTrackingSystem implements SubLevelObserver { + private final ServerLevel level; + private final List additionQueue = new ObjectArrayList<>(); + private final Set currentlyUpdatingPlayers = new ObjectOpenHashSet<>(); + private final Set pluginNeededPlayers = new ObjectOpenHashSet<>(); + private final List plugins = new ObjectArrayList<>(); + private int interpolationTick; + private long lastSendMs = -1; + + public SubLevelTrackingSystem(final ServerLevel level) { + this.level = level; + } + + private static long getSubLevelLong(final ServerSubLevel subLevel, final SubLevelContainer subLevels) { + final Vector2i origin = subLevels.getOrigin(); + final ChunkPos plotPos = subLevel.getPlot().plotPos; + return ChunkPos.asLong(plotPos.x - origin.x, plotPos.z - origin.y); + } + + private boolean shouldLoad(final Player player, final Vector3dc entityPosition) { + return true; + } + + @Override + public void onSubLevelAdded(final SubLevel subLevel) { + this.additionQueue.add(subLevel); + } + + @Override + public void onSubLevelRemoved(final SubLevel subLevel, final SubLevelRemovalReason reason) { + this.additionQueue.remove(subLevel); + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + this.sendRemoval(this.serverWidePlayerSink(serverSubLevel), serverSubLevel); + } + + public VeilPacketManager.PacketSink serverWidePlayerSink(final ServerSubLevel serverSubLevel) { + return packet -> { + for (final UUID uuid : serverSubLevel.getTrackingPlayers()) { + final ServerPlayer player = this.level.getServer().getPlayerList().getPlayer(uuid); + + if (player instanceof ServerPlayer) { + player.connection.send(packet); + } + } + }; + } + + private void collectPlayers(final Vector3d position, final Collection tracking) { + for (final ServerPlayer player : this.level.players()) { + if (this.shouldLoad(player, position)) { + tracking.add(player.getGameProfile().getId()); + } + } + } + + private void sendFullSync(final ServerPlayer player, final ServerSubLevel subLevel, @Nullable final CustomPacketPayload extraPacket) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null; + + final long l = getSubLevelLong(subLevel, container); + + final LevelPlot plot = subLevel.getPlot(); + + final Collection chunks = plot.getLoadedChunks(); + final ObjectList> packets = new ObjectArrayList<>(3 + chunks.size()); + + packets.add(new ClientboundCustomPayloadPacket(new ClientboundStartTrackingSubLevelPacket(l, subLevel.getUniqueId(), subLevel.lastPose(), subLevel.logicalPose(), plot.getBoundingBox(), subLevel.getName(), this.interpolationTick))); + + if (extraPacket != null) { + packets.add(new ClientboundCustomPayloadPacket(extraPacket)); + } + + for (final PlotChunkHolder chunk : chunks) { + SubLevelPlayerChunkSender.sendChunk(packets::add, plot.getLightEngine(), chunk.getChunk()); + } + + packets.add(new ClientboundCustomPayloadPacket(new ClientboundFinalizeSubLevelPacket(l))); + player.connection.send(new ClientboundBundlePacket(packets)); + + for (final PlotChunkHolder chunk : chunks) { + SubLevelPlayerChunkSender.sendChunkPoiData(this.level, chunk.getChunk()); + } + } + + private void sendRemoval(final VeilPacketManager.PacketSink sink, final ServerSubLevel subLevel) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null; + + final long l = getSubLevelLong(subLevel, container); + sink.sendPacket(new ClientboundStopTrackingSubLevelPacket(l)); + } + + public void refreshPlayer(final ServerPlayer player) { + if (player.level() != this.level) { + return; + } + + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null; + + for (final SubLevel subLevel : container.getAllSubLevels()) { + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + serverSubLevel.getTrackingPlayers().remove(player.getUUID()); + this.sendRemoval(VeilPacketManager.player(player), serverSubLevel); + } + + for (final SubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) { + continue; + } + + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + serverSubLevel.getTrackingPlayers().add(player.getUUID()); + this.sendFullSync(player, serverSubLevel, null); + } + } + + @Override + public void tick(final SubLevelContainer container) { + for (final SubLevel subLevel : this.additionQueue) { + // If the sub-level has been removed before we could even send it to clients, skip it + if (subLevel.isRemoved()) { + continue; + } + + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + final Collection tracking = serverSubLevel.getTrackingPlayers(); + final Vector3d position = subLevel.logicalPose().position(); + + this.collectPlayers(position, tracking); + + final UUID splitFromSubLevelID = serverSubLevel.getSplitFromSubLevel(); + final SubLevel splitFromSubLevel = splitFromSubLevelID != null ? container.getSubLevel(splitFromSubLevelID) : null; + + for (final UUID uuid : tracking) { + final ServerPlayer player = (ServerPlayer) this.level.getPlayerByUUID(uuid); + + if (player == null) { + throw new IllegalStateException("Player not found immediately after tracking initializes"); + } + + + CustomPacketPayload extraPacket = null; + + if (splitFromSubLevelID != null && splitFromSubLevel != null) { + extraPacket = new ClientboundRecentlySplitSubLevelPacket( + serverSubLevel.getUniqueId(), + splitFromSubLevel.getUniqueId(), + serverSubLevel.getSplitFromPose() + ); + } + + this.sendFullSync(player, serverSubLevel, extraPacket); + } + + serverSubLevel.clearSplitFrom(); + } + this.additionQueue.clear(); + + for (final SubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) { + continue; + } + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + final Collection tracking = serverSubLevel.getTrackingPlayers(); + final Vector3dc entityPos = subLevel.logicalPose().position(); + + final Iterator iter = tracking.iterator(); + while (iter.hasNext()) { + final UUID uuid = iter.next(); + + final ServerPlayer player = (ServerPlayer) this.level.getPlayerByUUID(uuid); + + if (player == null) { + // player has been removed + final ServerPlayer serverWidePlayer = this.level.getServer().getPlayerList().getPlayer(uuid); + + if (serverWidePlayer != null) { + // they are still online, just not in this world + this.sendRemoval(VeilPacketManager.player(serverWidePlayer), serverSubLevel); + } + + iter.remove(); + continue; + } + + if (!this.shouldLoad(player, entityPos)) { + this.sendRemoval(VeilPacketManager.player(player), serverSubLevel); + iter.remove(); + } + } + + // add players who SHOULD be tracking but aren't + for (final ServerPlayer player : this.level.players()) { + final UUID uuid = player.getGameProfile().getId(); + if (this.shouldLoad(player, entityPos) && !tracking.contains(uuid)) { + tracking.add(uuid); + this.sendFullSync(player, serverSubLevel, null); + } + } + } + + // send positional updates separately + this.sendBoundsUpdates(container); + this.sendMovementUpdates(container); + } + + /** + * Sends updates regarding sub-level plot bound changes to all tracking players + * + * @param container the sublevels to send updates for + */ + private void sendBoundsUpdates(final SubLevelContainer container) { + for (final SubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) { + continue; + } + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + final BoundingBox3ic plotBounds = serverSubLevel.getPlot().getBoundingBox(); + final BoundingBox3i lastNetworkedBounds = serverSubLevel.lastNetworkedBoundingBox(); + + if (!plotBounds.equals(lastNetworkedBounds)) { + lastNetworkedBounds.set(plotBounds); + + final long l = getSubLevelLong(serverSubLevel, container); + serverSubLevel.playerSink().sendPacket(new ClientboundChangeBoundsSubLevelPacket(l, plotBounds)); + } + } + } + + public int getInterpolationTick() { + return this.interpolationTick; + } + + /** + * Sends updates regarading sub-level movement to all tracking players + * + * @param container the sublevels to send updates for + */ + private void sendMovementUpdates(final SubLevelContainer container) { + // we want to batch updates we send to players, so we'll collect them here + final Map> movementUpdates = new Object2ObjectOpenHashMap<>(); + + for (final SubLevel subLevel : container.getAllSubLevels()) { + if (subLevel.isRemoved()) { + continue; + } + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + final Collection tracking = serverSubLevel.getTrackingPlayers(); + SubLevelUpdateTicket.UpdateTicketType type = SubLevelUpdateTicket.UpdateTicketType.MOVE; + + if (!serverSubLevel.logicalPose().withinTolerance(serverSubLevel.lastNetworkedPose(), 0.015 / 16.0, Math.toRadians(0.015))) { + serverSubLevel.lastNetworkedPose().set(serverSubLevel.logicalPose()); + serverSubLevel.setLastNetworkedStopped(false); + } else { + if (!serverSubLevel.getLastNetworkedStopped()) { + type = SubLevelUpdateTicket.UpdateTicketType.STOP; + serverSubLevel.setLastNetworkedStopped(true); + } else { + continue; + } + } + + for (final UUID uuid : tracking) { + final ServerPlayer player = (ServerPlayer) this.level.getPlayerByUUID(uuid); + + if (player == null) { + continue; + } + + final List playerUpdates = movementUpdates.computeIfAbsent(uuid, (p) -> new ArrayList<>()); + playerUpdates.add(new SubLevelUpdateTicket(serverSubLevel, type)); + } + } + + final long ms = System.currentTimeMillis(); + final int msSinceLastSend; + if (this.lastSendMs == -1) { + msSinceLastSend = (int) (1000.0 / this.level.getServer().tickRateManager().tickrate()); + } else { + msSinceLastSend = (int) (ms - this.lastSendMs); + } + this.lastSendMs = ms; + + this.pluginNeededPlayers.clear(); + for (final SubLevelTrackingPlugin plugin : this.plugins) { + for (final UUID neededPlayer : plugin.neededPlayers()) { + this.pluginNeededPlayers.add(neededPlayer); + } + } + + this.currentlyUpdatingPlayers.addAll(movementUpdates.keySet()); + this.currentlyUpdatingPlayers.addAll(this.pluginNeededPlayers); + + final Iterator currentlyUpdatingIter = this.currentlyUpdatingPlayers.iterator(); + while (currentlyUpdatingIter.hasNext()) { + final UUID uuid = currentlyUpdatingIter.next(); + + final ServerPlayer player = (ServerPlayer) this.level.getPlayerByUUID(uuid); + if (player == null) { + currentlyUpdatingIter.remove(); + continue; + } + + if (!movementUpdates.containsKey(uuid)) { + if (this.pluginNeededPlayers.contains(uuid)) { + player.connection.send(new ClientboundCustomPayloadPacket(new ClientboundSableSnapshotInfoDualPacket(msSinceLastSend, this.interpolationTick, false))); + continue; + } + + player.connection.send(new ClientboundCustomPayloadPacket(new ClientboundSableSnapshotInfoDualPacket(msSinceLastSend, this.interpolationTick, true))); + + currentlyUpdatingIter.remove(); + } + } + + for (final SubLevelTrackingPlugin plugin : this.plugins) { + plugin.sendTrackingData(this.interpolationTick); + } + + for (final Map.Entry> entry : movementUpdates.entrySet()) { + final UUID uuid = entry.getKey(); + final ServerPlayer player = (ServerPlayer) this.level.getPlayerByUUID(uuid); + + final List toUpdate = entry.getValue(); + final List entries = new ObjectArrayList<>(); + + for (final SubLevelUpdateTicket ticket : toUpdate) { + final ServerSubLevel serverSubLevel = (ServerSubLevel) ticket.subLevels; + final long l = getSubLevelLong(serverSubLevel, container); + + switch (ticket.type) { + case STOP -> player.connection.send(new ClientboundCustomPayloadPacket(new ClientboundStopMovingSubLevelPacket(l))); + case MOVE -> { + final Vector3f linearVelocity = new Vector3f((float) serverSubLevel.latestLinearVelocity.x, (float) serverSubLevel.latestLinearVelocity.y, (float) serverSubLevel.latestLinearVelocity.z); + final Vector3f angularVelocity = new Vector3f((float) serverSubLevel.latestAngularVelocity.x, (float) serverSubLevel.latestAngularVelocity.y, (float) serverSubLevel.latestAngularVelocity.z); + entries.add(new ClientboundSableSnapshotDualPacket.Entry(l, serverSubLevel.logicalPose(), linearVelocity, angularVelocity)); + } + } + } + + final int maxBatchSize = 16; + + final SableUDPServer udpServer = SableUDPServer.getServer(this.level.getServer()); + if (udpServer != null && udpServer.isConnectedTo(player)) { + final Iterator iter = entries.iterator(); + + udpServer.sendUDPPacket(player, new ClientboundSableSnapshotInfoDualPacket(msSinceLastSend, this.interpolationTick, false), true); + while (iter.hasNext()) { + final List batch = new ObjectArrayList<>(); + + for (int i = 0; i < maxBatchSize && iter.hasNext(); i++) { + batch.add(iter.next()); + } + + udpServer.sendUDPPacket(player, new ClientboundSableSnapshotDualPacket(this.interpolationTick, batch), true); + } + } else { + // We have to fallback to TCP, unfortunately... + final Iterator iter = entries.iterator(); + + while (iter.hasNext()) { + final List batch = new ObjectArrayList<>(); + + for (int i = 0; i < maxBatchSize && iter.hasNext(); i++) { + batch.add(iter.next()); + } + + player.connection.send( + new ClientboundBundlePacket(List.of( + new ClientboundCustomPayloadPacket(new ClientboundSableSnapshotInfoDualPacket(msSinceLastSend, this.interpolationTick, false)), + new ClientboundCustomPayloadPacket(new ClientboundSableSnapshotDualPacket(this.interpolationTick, batch)) + ))); + } + } + } + + this.interpolationTick++; + } + + /** + * Other mods or projects (looking at you, Simulated!) may want to piggyback off of the snapshot interpolation + * system so that their content can also abide by it and benefit from its improvements. As such, we expose + * "tracking" plugins for these projects to give us players that need to be informed about the interpolation tick + * at any given moment. + */ + public void addTrackingPlugin(final SubLevelTrackingPlugin plugin) { + if (this.plugins.contains(plugin)) { + return; + } + this.plugins.add(plugin); + } + + private record SubLevelUpdateTicket(SubLevel subLevels, UpdateTicketType type) { + private enum UpdateTicketType { + STOP, + MOVE + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.java new file mode 100644 index 0000000..67f00bc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.java @@ -0,0 +1,64 @@ +package dev.ryanhcode.sable.sublevel.system.ticket; + +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.SectionPos; +import net.minecraft.world.level.Level; + +import java.util.Collection; +import java.util.Objects; + +/** + * A ticket for a chunk tracked by a {@link PhysicsChunkTicketManager} + */ +public final class PhysicsChunkTicket { + private final SectionPos pos; + private final Collection residentSubLevels; + private long lastInhabitedTick; + + /** + * @param pos the position of the chunk + * @param lastInhabitedTick the last tick ({@link Level#getGameTime()}) the chunk was inhabited + */ + public PhysicsChunkTicket(final SectionPos pos, final long lastInhabitedTick, final Collection residentSubLevels) { + this.pos = pos; + this.lastInhabitedTick = lastInhabitedTick; + this.residentSubLevels = residentSubLevels; + } + + public SectionPos pos() { + return this.pos; + } + + public long lastInhabitedTick() { + return this.lastInhabitedTick; + } + + public void setLastInhabitedTick(final long lastInhabitedTick) { + this.lastInhabitedTick = lastInhabitedTick; + } + + public Collection residentSubLevels() { + return this.residentSubLevels; + } + + @Override + public boolean equals(final Object obj) { + if (obj == this) return true; + if (obj == null || obj.getClass() != this.getClass()) return false; + final var that = (PhysicsChunkTicket) obj; + return Objects.equals(this.pos, that.pos); + } + + @Override + public int hashCode() { + return Objects.hash(this.pos, this.lastInhabitedTick); + } + + @Override + public String toString() { + return "PhysicsChunkTicket[" + + "pos=" + this.pos + ", " + + "lastInhabitedTick=" + this.lastInhabitedTick + ", " + + "residentSubLevels=" + this.residentSubLevels + ']'; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.java new file mode 100644 index 0000000..f04cec8 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.java @@ -0,0 +1,310 @@ +package dev.ryanhcode.sable.sublevel.system.ticket; + +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.physics.object.ArbitraryPhysicsObject; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.longs.LongOpenHashSet; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectArraySet; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.core.SectionPos; +import net.minecraft.server.level.DistanceManager; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.util.Mth; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3d; + +import java.util.Collection; +import java.util.Iterator; +import java.util.Map; + +public class PhysicsChunkTicketManager { + + public static final double MAX_PREDICTION_DISTANCE = 20.0; + + /** + * The physics chunks that are currently loaded. + */ + private final Map physicsChunks = new Object2ObjectOpenHashMap<>(); + + /** + * Updates the state of the ticket manager. + * This will: + *

    + *
  • Remove outdated tickets that have not been inhabited for more than 20 ticks and are not part of a plot
  • + *
  • Remove tickets for chunks that no longer exist
  • + *
  • Add new tickets for chunks that have sub-levels in them
  • + *
  • Remove / unload sub-levels that are in unloaded chunks
  • + *
  • Update the last inhabited tick for tickets that are still valid to reflect the game time
  • + *
+ * + * @param level the level to update the ticket manager for + * @param container the sub-level container to update the ticket manager for + * @param pipeline the physics pipeline to update the ticket manager for + */ + public void update(final ServerLevel level, final ServerSubLevelContainer container, final SubLevelPhysicsSystem system, final PhysicsPipeline pipeline, final double timeStep) { + final SubLevelHoldingChunkMap holdingChunkMap = container.getHoldingChunkMap(); + final long gameTime = level.getGameTime(); + final Iterator> chunkIter = this.physicsChunks.entrySet().iterator(); + + while (chunkIter.hasNext()) { + final Map.Entry entry = chunkIter.next(); + final SectionPos sectionPos = entry.getKey(); + final PhysicsChunkTicket ticket = entry.getValue(); + + final LevelPlot plot = SubLevelContainer.getContainer(level).getPlot(sectionPos.chunk()); + + final boolean outdated = ticket.lastInhabitedTick() < gameTime - 20 && plot == null; + final boolean noLongerExistent = !isChunkLoadedEnough(level, sectionPos.x(), sectionPos.z()); + if (outdated || noLongerExistent) { + pipeline.handleChunkSectionRemoval(sectionPos.x(), sectionPos.y(), sectionPos.z()); + chunkIter.remove(); + } else { + if (SubLevelPhysicsSystem.USE_TICKETS_FOR_QUERIES && ticket.residentSubLevels() != null) { + if (!ticket.residentSubLevels().isEmpty()) + ticket.residentSubLevels().clear(); + } + } + } + + final LongOpenHashSet unloadedChunks = new LongOpenHashSet(); + + final BoundingBox3d b = new BoundingBox3d(); + final BoundingBox3d b2 = new BoundingBox3d(); + final Vector3d velocity = new Vector3d(); + + final Iterator objectIter = system.getArbitraryObjects().iterator(); + arbitraryObjectLoop: + while (objectIter.hasNext()) { + final ArbitraryPhysicsObject arbitraryObject = objectIter.next(); + arbitraryObject.getBoundingBox(b); + b.expand(1.0, b); + + final BoundingBox3i chunkBounds = new BoundingBox3i( + Mth.floor(b.minX()) >> 4, + Mth.floor(b.minY()) >> 4, + Mth.floor(b.minZ()) >> 4, + Mth.floor(b.maxX()) >> 4, + Mth.floor(b.maxY()) >> 4, + Mth.floor(b.maxZ()) >> 4 + ); + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + final long l = ChunkPos.asLong(x, z); + + if (!isChunkLoadedEnough(level, x, z) || unloadedChunks.contains(l)) { + arbitraryObject.onUnloaded(holdingChunkMap, new ChunkPos(x, z)); + unloadedChunks.add(l); + objectIter.remove(); + continue arbitraryObjectLoop; + } + } + } + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + for (int y = chunkBounds.minY(); y <= chunkBounds.maxY(); y++) { + final SectionPos sectionPos = SectionPos.of(x, y, z); + + final int index = level.getSectionIndexFromSectionY(y); + + if (index >= 0 && index < level.getSectionsCount()) { + this.addTicket(level, pipeline, sectionPos, x, y, z, index, gameTime); + } + } + } + } + } + + subLevelLoop: + for (int i = 0; i < container.getAllSubLevels().size(); i++) { + final ServerSubLevel subLevel = container.getAllSubLevels().get(i); + if (subLevel.isRemoved()) continue; + + b.set(subLevel.boundingBox()); + b2.set(b); + + // Only do velocity prediction if there's at-least some movement (1 m/s) + if (subLevel.lastPose().position().distanceSquared(subLevel.logicalPose().position()) > 0.05 * 0.05) { + system.getPipeline().getLinearVelocity(subLevel, velocity.zero()).mul(timeStep); + b2.move(0.0, Mth.clamp(velocity.y, -MAX_PREDICTION_DISTANCE, MAX_PREDICTION_DISTANCE), 0.0); + b.expandTo(b2); + } + + b.expand(1.0, b); + + final BoundingBox3i chunkBounds = b.chunkBoundsFrom(); + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + final long l = ChunkPos.asLong(x, z); + + if (!isChunkLoadedEnough(level, x, z) || unloadedChunks.contains(l)) { + // The sub-level has now entered an unloaded chunk. + unloadedChunks.add(l); + + holdingChunkMap.moveToUnloaded(subLevel, new ChunkPos(x, z)); + + // Because we just removed this sub-level, we need to decrement the index to avoid skipping the next sub-level + i--; + + continue subLevelLoop; + } + } + } + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + for (int y = chunkBounds.minY(); y <= chunkBounds.maxY(); y++) { + final SectionPos sectionPos = SectionPos.of(x, y, z); + + final int index = level.getSectionIndexFromSectionY(y); + + if (index >= 0 && index < level.getSectionsCount()) { + final PhysicsChunkTicket ticket = this.addTicket(level, pipeline, sectionPos, x, y, z, index, gameTime); + + if (SubLevelPhysicsSystem.USE_TICKETS_FOR_QUERIES) { + ticket.residentSubLevels().add(subLevel); + } + } + } + } + } + } + } + + private @NotNull PhysicsChunkTicket addTicket(final Level level, + final PhysicsPipeline pipeline, + final SectionPos sectionPos, + final int x, + final int y, + final int z, + final int index, + final long gameTime) { + PhysicsChunkTicket existingTicket = this.physicsChunks.get(sectionPos); + if (existingTicket == null) { + final LevelChunk chunk = level.getChunk(x, z); + + pipeline.handleChunkSectionAddition(chunk.getSection(index), x, y, z, false); + + final Collection residents = SubLevelPhysicsSystem.USE_TICKETS_FOR_QUERIES ? new ObjectArraySet<>(SubLevelPhysicsSystem.DEFAULT_RESIDENT_CAPACITY) : null; + final PhysicsChunkTicket newTicket = new PhysicsChunkTicket(sectionPos, gameTime, residents); + this.physicsChunks.put(sectionPos, newTicket); + + existingTicket = newTicket; + } + + existingTicket.setLastInhabitedTick(gameTime); + return existingTicket; + } + + /** + * Adds a chunk section if it is not currently tracked, and a ticket does not currently exist. + * This will notify the given pipeline of the addition, and add a new ticket for the section and current game time. + * + * @param level the server level to add the section to + * @param section the section to add + * @param sectionPos the position of the section + * @param pipeline the physics pipeline to notify of the addition + */ + public void addSectionIfNotTracked(final ServerLevel level, final LevelChunkSection section, final SectionPos sectionPos, final PhysicsPipeline pipeline) { + if (!this.physicsChunks.containsKey(sectionPos)) { + pipeline.handleChunkSectionAddition(section, sectionPos.x(), sectionPos.y(), sectionPos.z(), false); + + final PhysicsChunkTicket ticket = new PhysicsChunkTicket(sectionPos, level.getGameTime(), null); + this.physicsChunks.put(sectionPos, ticket); + } + } + + public void addTicketForSection(final ServerLevel level, final SectionPos sectionPos) { + final PhysicsChunkTicket ticket = new PhysicsChunkTicket(sectionPos, level.getGameTime(), null); + this.physicsChunks.put(sectionPos, ticket); + } + + /** + * Queries all sub-levels that intersect with the given bounds. + * This will iterate through all chunk sections in the bounds, and return all sub-levels that are tracked as residents. + * + * @param bounds the bounding box to query for intersecting sub-levels + * @return an iterable of sub-levels that intersect with the given bounds + */ + public Iterable queryIntersecting(final BoundingBox3dc bounds) { + if (!SubLevelPhysicsSystem.USE_TICKETS_FOR_QUERIES) { + throw new IllegalStateException("Cannot query intersecting sub-levels when tickets are not used for queries."); + } + + final ObjectList intersecting = new ObjectArrayList<>(16); + + final BoundingBox3i chunkBounds = bounds.chunkBoundsFrom(); + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + for (int y = chunkBounds.minY(); y <= chunkBounds.maxY(); y++) { + final SectionPos sectionPos = SectionPos.of(x, y, z); + + final PhysicsChunkTicket ticket = this.physicsChunks.get(sectionPos); + if (ticket != null) { + final Collection residents = ticket.residentSubLevels(); + + if (residents == null) { + continue; + } + + for (final SubLevel subLevel : residents) { + if (!subLevel.boundingBox().intersects(bounds)) { + continue; + } + + intersecting.add(subLevel); + } + } + } + } + } + return intersecting; + } + + /** + * Checks if an arbitrary physics object would be loaded + */ + public boolean wouldBeLoaded(final Level level, final ArbitraryPhysicsObject object) { + final BoundingBox3d b = new BoundingBox3d(); + object.getBoundingBox(b); + b.expand(1.0, b); + + final BoundingBox3i chunkBounds = b.chunkBoundsFrom(); + + for (int x = chunkBounds.minX(); x <= chunkBounds.maxX(); x++) { + for (int z = chunkBounds.minZ(); z <= chunkBounds.maxZ(); z++) { + if (!isChunkLoadedEnough((ServerLevel) level, x, z)) { + return false; + } + } + } + + return true; + } + + /** + * @return if a chunk is considered loaded enough to contain and tick sub-levels + */ + @SuppressWarnings("BooleanMethodIsAlwaysInverted") + public static boolean isChunkLoadedEnough(final ServerLevel level, final int x, final int z) { + return true; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.java new file mode 100644 index 0000000..086a512 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.sublevel.tracking_points; + +import dev.ryanhcode.sable.api.sublevel.SubLevelObserver; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.SubLevelRemovalReason; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.server.level.ServerLevel; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.List; +import java.util.Map; +import java.util.UUID; + +public class SubLevelTrackingPointObserver implements SubLevelObserver { + private final ServerLevel serverLevel; + + public SubLevelTrackingPointObserver(final ServerLevel serverLevel) { + this.serverLevel = serverLevel; + } + + /** + * Called before a sub-level is removed from a {@link dev.ryanhcode.sable.api.sublevel.SubLevelContainer}. + * + * @param subLevel the sub-level that will be removed + */ + @Override + public void onSubLevelRemoved(final SubLevel subLevel, final SubLevelRemovalReason reason) { + if (reason == SubLevelRemovalReason.REMOVED) { + final SubLevelTrackingPointSavedData data = this.getTrackingPointData(); + + final List toProject = getTrackingPoints((ServerSubLevel) subLevel, data); + + for (final UUID uuid : toProject) { + final TrackingPoint trackingPoint = data.getTrackingPoint(uuid); + + if (trackingPoint != null) { + final Vector3dc point = subLevel.logicalPose().transformPosition(trackingPoint.point()); + data.setTrackingPoint(uuid, new TrackingPoint(false, null, null, new Vector3d(point), null)); + } + } + } + } + + private static @NotNull List getTrackingPoints(final ServerSubLevel subLevel, final SubLevelTrackingPointSavedData data) { + final List toProject = new ObjectArrayList<>(); + + for (final Map.Entry entry : data.getAllTrackingPoints()) { + final TrackingPoint trackingPoint = entry.getValue(); + + final GlobalSavedSubLevelPointer pointer = trackingPoint.lastSavedSubLevelPointer(); + if (trackingPoint.inSubLevel() && pointer != null && pointer.equals(subLevel.getLastSerializationPointer())) { + toProject.add(entry.getKey()); + } + } + return toProject; + } + + private SubLevelTrackingPointSavedData getTrackingPointData() { + return SubLevelTrackingPointSavedData.getOrLoad(this.serverLevel); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.java new file mode 100644 index 0000000..ee7155f --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.java @@ -0,0 +1,259 @@ +package dev.ryanhcode.sable.sublevel.tracking_points; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelObserver; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.storage.HoldingSubLevel; +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import dev.ryanhcode.sable.sublevel.storage.holding.SubLevelHoldingChunkMap; +import dev.ryanhcode.sable.sublevel.storage.serialization.SubLevelData; +import dev.ryanhcode.sable.util.SableNBTUtils; +import it.unimi.dsi.fastutil.Pair; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtOps; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.level.saveddata.SavedData; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.Map; +import java.util.UUID; + +public class SubLevelTrackingPointSavedData extends SavedData implements SubLevelObserver { + public static final String FILE_ID = "sable_tracking_points"; + private final ServerLevel level; + private final Map trackingPoints = new Object2ObjectOpenHashMap<>(); + + private SubLevelTrackingPointSavedData(final ServerLevel level) { + this.level = level; + } + + public static SubLevelTrackingPointSavedData getOrLoad(final ServerLevel level) { + return level.getDataStorage().computeIfAbsent( + new Factory<>( + () -> new SubLevelTrackingPointSavedData(level), + (tag, provider) -> SubLevelTrackingPointSavedData.load(level, tag), + null + ), + SubLevelTrackingPointSavedData.FILE_ID); + } + + private static SubLevelTrackingPointSavedData load(final ServerLevel level, final CompoundTag tag) { + final SubLevelTrackingPointSavedData data = new SubLevelTrackingPointSavedData(level); + + final CompoundTag trackingPointsTag = tag.getCompound("tracking_points"); + + for (final String key : trackingPointsTag.getAllKeys()) { + final UUID uuid = UUID.fromString(key); + final CompoundTag pointTag = trackingPointsTag.getCompound(key); + + final boolean inSubLevel = pointTag.getBoolean("InSubLevel"); + final GlobalSavedSubLevelPointer pointer = pointTag.contains("SubLevelPointer") ? + GlobalSavedSubLevelPointer.CODEC.parse(NbtOps.INSTANCE, pointTag.getCompound("SubLevelPointer")).getOrThrow() : + null; + final Vector3d point = SableNBTUtils.readVector3d(pointTag.getCompound("Point")); + + Vector3d globalPlaceholder = null; + + if (pointTag.contains("GlobalPlaceholder")) { + globalPlaceholder = SableNBTUtils.readVector3d(pointTag.getCompound("GlobalPlaceholder")); + } + + UUID subLevelID = null; + + if (pointTag.contains("SubLevelID")) { + subLevelID = pointTag.getUUID("SubLevelID"); + } + + final TrackingPoint trackingPoint = new TrackingPoint(inSubLevel, subLevelID, pointer, point, globalPlaceholder); + data.trackingPoints.put(uuid, trackingPoint); + } + + return data; + } + + @Override + public @NotNull CompoundTag save(final @NotNull CompoundTag compoundTag, final HolderLookup.@NotNull Provider provider) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + assert container != null : "Sub-level container is null"; + + final CompoundTag loginPointsTag = new CompoundTag(); + + for (final Map.Entry entry : this.trackingPoints.entrySet()) { + final CompoundTag pointTag = new CompoundTag(); + + final TrackingPoint trackingPoint = entry.getValue(); + pointTag.putBoolean("InSubLevel", trackingPoint.inSubLevel()); + if (trackingPoint.lastSavedSubLevelPointer() != null) { + pointTag.put("SubLevelPointer", GlobalSavedSubLevelPointer.CODEC.encodeStart(NbtOps.INSTANCE, trackingPoint.lastSavedSubLevelPointer()).getOrThrow()); + } + pointTag.put("Point", SableNBTUtils.writeVector3d(trackingPoint.point())); + + if (trackingPoint.globalPlaceholderPosition() != null) { + pointTag.put("GlobalPlaceholder", SableNBTUtils.writeVector3d(trackingPoint.globalPlaceholderPosition())); + } + + if (trackingPoint.subLevelID() != null) { + pointTag.putUUID("SubLevelID", trackingPoint.subLevelID()); + } + + loginPointsTag.put(entry.getKey().toString(), pointTag); + } + + compoundTag.put("tracking_points", loginPointsTag); + + return compoundTag; + } + + /** + * Generates a tracking point for a player to spawn at + */ + public @Nullable UUID generateTrackingPoint(final ServerPlayer player) { + final ServerSubLevel subLevel = (ServerSubLevel) Sable.HELPER.getTrackingSubLevel(player); + + return this.generateTrackingPoint(player, subLevel); + } + + /** + * Generates a tracking point for a player + */ + public @Nullable UUID generateTrackingPoint(final ServerPlayer player, final ServerSubLevel subLevel) { + if (subLevel == null) return null; + + final GlobalSavedSubLevelPointer pointer = subLevel.getLastSerializationPointer(); + final Vector3d globalPlaceholderPosition = pointer == null ? JOMLConversion.toJOML(player.position()) : null; + final TrackingPoint trackingPoint = new TrackingPoint(true, subLevel.getUniqueId(), pointer, subLevel.logicalPose().transformPositionInverse(JOMLConversion.toJOML(player.position())), globalPlaceholderPosition); + final UUID uuid = player.getUUID(); + + this.trackingPoints.put(uuid, trackingPoint); + this.setDirty(true); + + return uuid; + } + + /** + * Generates a tracking point for a player + */ + public @Nullable UUID generateTrackingPoint(final Vec3 pos, final ServerSubLevel subLevel) { + if (subLevel == null) return null; + + final Pose3d pose = subLevel.logicalPose(); + + final GlobalSavedSubLevelPointer pointer = subLevel.getLastSerializationPointer(); + final Vector3d globalPlaceholderPosition = pointer == null ? pose.transformPosition(JOMLConversion.toJOML(pos)) : null; + final TrackingPoint trackingPoint = new TrackingPoint(true, subLevel.getUniqueId(), pointer, JOMLConversion.toJOML(pos), globalPlaceholderPosition); + final UUID uuid = UUID.randomUUID(); + + this.trackingPoints.put(uuid, trackingPoint); + this.setDirty(true); + + return uuid; + } + + public record TakenLoginPoint(Vector3dc position, @Nullable UUID subLevelId, @Nullable Vector3d localAnchor) { } + + public TakenLoginPoint take(final UUID uuid, final boolean remove) { + final TrackingPoint point = remove ? this.trackingPoints.remove(uuid) : this.trackingPoints.get(uuid); + + if (remove) { + this.setDirty(true); + } + + if (point == null) { + return null; + } + + if (point.inSubLevel()) { + final SubLevel existingSubLevel = Sable.HELPER.getContaining(this.level, point.point()); + + if (existingSubLevel != null) { + return new TakenLoginPoint(existingSubLevel.logicalPose().transformPosition(new Vector3d(point.point())), existingSubLevel.getUniqueId(), new Vector3d(point.point())); + } else { + final ServerSubLevelContainer container = ServerSubLevelContainer.getContainer(this.level); + final SubLevelHoldingChunkMap holdingMap = container.getHoldingChunkMap(); + + if (point.subLevelID() != null) { + final HoldingSubLevel holdingSubLevel = holdingMap.getHoldingSubLevel(point.subLevelID()); + + if (holdingSubLevel != null) { + final SubLevelData data = holdingSubLevel.data(); + return new TakenLoginPoint(data.pose().transformPosition(new Vector3d(point.point())), data.uuid(), new Vector3d(point.point())); + } + } + + final GlobalSavedSubLevelPointer pointer = point.lastSavedSubLevelPointer(); + + if (pointer != null) { + Sable.LOGGER.info("Player logged in with tracking point in non-loaded sub-level. Attempting to load."); + + final SubLevelData data = holdingMap.getStorage().attemptLoadSubLevel(pointer.chunkPos(), pointer.local()); + + if (data == null) { + Sable.LOGGER.warn("Failed to load sub-level at pointer {} for tracking point", point.lastSavedSubLevelPointer()); + return null; + } + return new TakenLoginPoint(data.pose().transformPosition(new Vector3d(point.point())), data.uuid(), new Vector3d(point.point())); + } else { + Sable.LOGGER.warn("Player logged in with tracking point in non-loaded sub-level without a pointer toward one. Placing them at their global placeholder."); + + final Vector3d placeholder = point.globalPlaceholderPosition(); + + if (placeholder != null) { + return new TakenLoginPoint(placeholder, null, null); + } else { + Sable.LOGGER.error("Player logged in with tracking point in non-loaded sub-level without a pointer toward one, and without a placeholder. Something has gone wrong."); + return null; + } + } + } + } + + return new TakenLoginPoint(point.point(), null, null); + } + + public Iterable> getAllTrackingPoints() { + return new ObjectArrayList<>(this.trackingPoints.entrySet()); + } + + + public Iterable> getAllTrackingPoints(final BoundingBox3ic bounds) { + final ObjectArrayList> keys = new ObjectArrayList<>(); + + for (final Map.Entry entry : this.trackingPoints.entrySet()) { + final Vector3d point = entry.getValue().point(); + if (bounds.contains(point)) { + keys.add(Pair.of(entry.getKey(), entry.getValue())); + } + } + + return keys; + } + + public void setTrackingPoint(final UUID key, final TrackingPoint point) { + this.trackingPoints.put(key, point); + this.setDirty(true); + } + + public void removeTrackingPoint(final UUID key) { + this.trackingPoints.remove(key); + this.setDirty(true); + } + + @Nullable + public TrackingPoint getTrackingPoint(final UUID uuid) { + return this.trackingPoints.get(uuid); + } +} \ No newline at end of file diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.java new file mode 100644 index 0000000..0cdcb00 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.sublevel.tracking_points; + +import dev.ryanhcode.sable.sublevel.storage.holding.GlobalSavedSubLevelPointer; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; + +import java.util.UUID; + +/** + * @param globalPlaceholderPosition we store a global placeholder for tracking points that are made before a sub-level is + * saved, that is removed when it is moved & saved in the holding chunk map + */ +public record TrackingPoint(boolean inSubLevel, @Nullable UUID subLevelID, @Nullable GlobalSavedSubLevelPointer lastSavedSubLevelPointer, Vector3d point, Vector3d globalPlaceholderPosition) { +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.java new file mode 100644 index 0000000..a0e7401 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.sublevel.water_occlusion; + +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.render.region.SimpleCulledRenderRegion; +import dev.ryanhcode.sable.util.BoundedBitVolume3i; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; + +import java.util.List; + +/** + * TODO: Re-do all of this state management & how we're interacting with the water occlusion renderer + */ +public class ClientWaterOcclusionContainer extends WaterOcclusionContainer { + public ClientWaterOcclusionContainer(final Level level) { + super(level); + } + + public static ClientWaterOcclusionContainer create(final Level level) { + return new ClientWaterOcclusionContainer(level); + } + + @Override + public void removeRegion(final WaterOcclusionRegion region) { + this.regions.remove(region); + + SableClient.WATER_OCCLUSION_RENDERER.removeRegion(((ClientWaterOcclusionRegion) region).renderRegion); + } + + @Override + public ClientWaterOcclusionRegion addRegion(final BoundedBitVolume3i bitSet) { + final ClientWaterOcclusionRegion region = new ClientWaterOcclusionRegion(bitSet); + this.regions.add(region); + + final BoundedBitVolume3i volume = region.getVolume(); + + final List blocks = BlockPos.betweenClosedStream(volume.getMinBlockPos(), volume.getMaxBlockPos()) + .map(BlockPos::immutable).filter(x -> volume.getOccupied(x.getX(), x.getY(), x.getZ())) + .toList(); + + region.renderRegion = SableClient.WATER_OCCLUSION_RENDERER.addRegion(blocks); + + return region; + } + + protected static class ClientWaterOcclusionRegion extends WaterOcclusionRegion { + private SimpleCulledRenderRegion renderRegion; + + public ClientWaterOcclusionRegion(final BoundedBitVolume3i bitSet) { + super(bitSet); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.java new file mode 100644 index 0000000..1e60690 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.sublevel.water_occlusion; + +import dev.ryanhcode.sable.util.BoundedBitVolume3i; +import net.minecraft.world.level.Level; + +public class ServerWaterOcclusionContainer extends WaterOcclusionContainer { + + public static ServerWaterOcclusionContainer create(final Level level) { + return new ServerWaterOcclusionContainer(level); + } + + public ServerWaterOcclusionContainer(final Level level) { + super(level); + } + + @Override + public void removeRegion(final WaterOcclusionRegion region) { + this.regions.remove(region); + } + + @Override + public WaterOcclusionRegion addRegion(final BoundedBitVolume3i bitSet) { + final WaterOcclusionRegion region = new WaterOcclusionRegion(bitSet); + this.regions.add(region); + return region; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.java new file mode 100644 index 0000000..3112b8d --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.java @@ -0,0 +1,118 @@ +package dev.ryanhcode.sable.sublevel.water_occlusion; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.mixinterface.water_occlusion.WaterOcclusionContainerHolder; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.BoundedBitVolume3i; +import it.unimi.dsi.fastutil.objects.ObjectOpenHashSet; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.util.Mth; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; + +import java.util.Set; + +/** + * Stores water occlusion regions for a level. Water occlusion regions are not networked. + */ +public abstract class WaterOcclusionContainer { + + /** + * All water occlusion regions within this level + */ + protected final Set regions = new ObjectOpenHashSet<>(); + + /** + * The level this storage is for + */ + private final Level level; + + public WaterOcclusionContainer(final Level level) { + this.level = level; + } + + /** + * @param level the level + * @return the water occlusion container in a level + */ + public static @Nullable WaterOcclusionContainer getContainer(final Level level) { + if (level instanceof final WaterOcclusionContainerHolder holder) { + return holder.sable$getWaterOcclusionContainer(); + } + return null; + } + + /** + * Checks if a given location is in any water-occluded regions. + * + * @param location the location to check + * @return if the location is in any regions of water occlusion + */ + public boolean isOccluded(final Vec3 location) { + ActiveSableCompanion helper = Sable.HELPER; + for (final T region : this.regions) { + final BoundedBitVolume3i bitSet = region.getVolume(); + final SubLevel subLevel = helper.getContaining(this.level, bitSet.getMinBlockPos()); + + final Vec3 localLocation = subLevel != null ? + subLevel.logicalPose().transformPositionInverse(location) + : location; + + if (bitSet.getOccupied(Mth.floor(localLocation.x), Mth.floor(localLocation.y), Mth.floor(localLocation.z))) { + return true; + } + } + + return false; + } + + /** + * Checks if a given location is in any water-occluded regions. + * + * @param location the location to check + * @return if the location is in any regions of water occlusion + */ + @Nullable + public T getOccludingRegion(final Vec3 location) { + ActiveSableCompanion helper = Sable.HELPER; + for (final T region : this.regions) { + final BoundedBitVolume3i bitSet = region.getVolume(); + final SubLevel subLevel = helper.getContaining(this.level, bitSet.getMinBlockPos()); + + final Vec3 localLocation = subLevel != null ? + subLevel.logicalPose().transformPositionInverse(location) + : location; + + if (bitSet.getOccupied(Mth.floor(localLocation.x), Mth.floor(localLocation.y), Mth.floor(localLocation.z))) { + return region; + } + } + + return null; + } + + public void markDirty(final BlockPos pos) { + for (final T region : this.regions) { + final BoundedBitVolume3i bitSet = region.getVolume(); + + for (final Direction direction : Direction.values()) { + final BlockPos rel = pos.relative(direction); + if (bitSet.getOccupied(rel.getX(), rel.getY(), rel.getZ())) { + region.markDirty(); + break; + } + } + } + } + + public abstract void removeRegion(final WaterOcclusionRegion region); + + public abstract WaterOcclusionRegion addRegion(final BoundedBitVolume3i region); + + public Set getRegions() { + return this.regions; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.java b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.java new file mode 100644 index 0000000..3526989 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.sublevel.water_occlusion; + +import dev.ryanhcode.sable.util.BoundedBitVolume3i; + +public class WaterOcclusionRegion { + private final BoundedBitVolume3i bitSet; + private boolean dirty = false; + + public WaterOcclusionRegion(final BoundedBitVolume3i bitSet) { + this.bitSet = bitSet; + } + + public BoundedBitVolume3i getVolume() { + return this.bitSet; + } + + public void markDirty() { + this.dirty = true; + } + + public boolean isDirty() { + return this.dirty; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/BoundedBitVolume3i.java b/common/src/main/java/dev/ryanhcode/sable/util/BoundedBitVolume3i.java new file mode 100644 index 0000000..e4dc148 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/BoundedBitVolume3i.java @@ -0,0 +1,128 @@ +package dev.ryanhcode.sable.util; + +import net.minecraft.core.BlockPos; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3i; + +import java.util.BitSet; + +/** + * Bounded 3D bit-set, with a single bit per block in the bounds. + */ +public class BoundedBitVolume3i { + private final int minX, minY, minZ; + private final int maxX, maxY, maxZ; + private final BitSet bitSet; + + public BoundedBitVolume3i(final int minX, final int minY, final int minZ, final int maxX, final int maxY, final int maxZ) { + if (maxX < minX || maxY < minY || maxZ < minZ) { + throw new IllegalArgumentException("Invalid bounding box construction"); + } + + this.minX = minX; + this.minY = minY; + this.minZ = minZ; + this.maxX = maxX; + this.maxY = maxY; + this.maxZ = maxZ; + this.bitSet = new BitSet(this.volume()); + } + + @Nullable + public static BoundedBitVolume3i fromBlocks(final Iterable blocks) { + Vector3i minBlockPos = null; + Vector3i maxBlockPos = null; + + for (final BlockPos block : blocks) { + if (minBlockPos == null) { + minBlockPos = new Vector3i().set(block.getX(), block.getY(), block.getZ()); + maxBlockPos = new Vector3i().set(block.getX(), block.getY(), block.getZ()); + } + + final Vector3i blockVector3i = new Vector3i(block.getX(), block.getY(), block.getZ()); + minBlockPos.min(blockVector3i); + maxBlockPos.max(blockVector3i); + } + + if (minBlockPos == null) { + return null; + } + + final BoundedBitVolume3i set = new BoundedBitVolume3i(minBlockPos.x, minBlockPos.y, minBlockPos.z, maxBlockPos.x, maxBlockPos.y, maxBlockPos.z); + + for (final BlockPos block : blocks) { + set.setOccupied(block.getX(), block.getY(), block.getZ(), true); + } + + return set; + } + + /** + * Sets the occupied status for a global cell + */ + public void setOccupied(final int x, final int y, final int z, final boolean occupied) { + if (!this.isInBounds(x, y, z)) { + throw new IllegalArgumentException("Cannot set out of bounds!"); + } + + this.bitSet.set(this.getIndex(x, y, z), occupied); + } + + /** + * Gets the occupied status for a global cell + * + * @return the occupied status for the cell, or false if out of bounds + */ + public boolean getOccupied(final int x, final int y, final int z) { + if (!this.isInBounds(x, y, z)) { + return false; + } + + return this.bitSet.get(this.getIndex(x, y, z)); + } + + /** + * @return the index for a global coordinate, or -1 if out of bounds + */ + public int getIndex(final int x, final int y, final int z) { + if (!this.isInBounds(x, y, z)) { + return -1; + } + + final int localX = x - this.minX; + final int localY = y - this.minY; + final int localZ = z - this.minZ; + + return (localX * this.zSpan() * this.ySpan()) + (localZ * this.ySpan()) + localY; + } + + public int volume() { + return this.xSpan() * this.ySpan() * this.zSpan(); + } + + public int xSpan() { + return this.maxX - this.minX + 1; + } + + public int ySpan() { + return this.maxY - this.minY + 1; + } + + public int zSpan() { + return this.maxZ - this.minZ + 1; + } + + public boolean isInBounds(final int x, final int y, final int z) { + return x >= this.minX && x <= this.maxX && + y >= this.minY && y <= this.maxY && + z >= this.minZ && z <= this.maxZ; + } + + public BlockPos getMinBlockPos() { + return new BlockPos(this.minX, this.minY, this.minZ); + } + + public BlockPos getMaxBlockPos() { + return new BlockPos(this.maxX, this.maxY, this.maxZ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/LevelAccelerator.java b/common/src/main/java/dev/ryanhcode/sable/util/LevelAccelerator.java new file mode 100644 index 0000000..358f402 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/LevelAccelerator.java @@ -0,0 +1,148 @@ +package dev.ryanhcode.sable.util; + +import dev.ryanhcode.sable.mixin.level_accelerator.ServerChunkCacheAccessor; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.server.level.ChunkHolder; +import net.minecraft.server.level.ChunkResult; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.LevelChunkSection; +import net.minecraft.world.level.material.FluidState; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; + +/** + * Speeds up block/fluid state, chunk, and level access with caching and raw access. + */ +public class LevelAccelerator implements BlockGetter { + public static final boolean USE_CACHE_MAP = false; + + private final Level level; + private long cachedChunkPos = 0L; + private LevelChunk cachedChunkObj = null; + private final int minBuildHeight; + private final int minSection; + private final int maxBuildHeight; + private final Long2ObjectMap cachedLevelChunks = new Long2ObjectOpenHashMap<>(); + + public LevelAccelerator(final Level level) { + this.level = level; + this.minBuildHeight = level.getMinBuildHeight(); + this.maxBuildHeight = level.getMaxBuildHeight(); + this.minSection = level.getMinSection(); + } + + public void clearCache() { + this.cachedLevelChunks.clear(); + this.cachedChunkObj = null; + this.cachedChunkPos = 0L; + } + + public void setBlockFast(final BlockPos blockPos, final BlockState blockState) { + final LevelChunk chunk = this.getChunk(blockPos); + final BlockState blockState2 = chunk.setBlockState(blockPos, blockState, false); + if (blockState2 == null) { + return; + } + + this.level.sendBlockUpdated(blockPos, blockState2, blockState, 3); + } + + @Override + public @Nullable BlockEntity getBlockEntity(final BlockPos blockPos) { + return this.level.getBlockEntity(blockPos); + } + + @Override + public BlockState getBlockState(final BlockPos pos) { + final LevelChunk chunk = this.getChunk(pos); + return this.getBlockState(chunk, pos); + } + + /** + * Gets the blockstate at a position in a chunk given that the chunk is already known. + * + * @param chunk The chunk to get the blockstate from + * @param pos The position to get the blockstate from + * @return The blockstate at the position + */ + public BlockState getBlockState(final LevelChunk chunk, final BlockPos pos) { + if (pos.getY() < this.minBuildHeight || pos.getY() >= this.maxBuildHeight) { + return Blocks.AIR.defaultBlockState(); + } + + final LevelChunkSection section = chunk.getSection((pos.getY() >> 4) - this.minSection); + return section.getBlockState(pos.getX() & 15, pos.getY() & 15, pos.getZ() & 15); + } + + @Override + public FluidState getFluidState(final BlockPos pos) { + final LevelChunk chunk = this.getChunk(pos); + + return chunk.getFluidState(pos); + } + + public LevelChunk getChunk(final BlockPos pos) { + return this.getChunk(pos.getX() >> 4, pos.getZ() >> 4); + } + + public LevelChunk getChunk(final int chunkX, final int chunkZ) { + final long pos = ChunkPos.asLong(chunkX, chunkZ); + + if (pos == this.cachedChunkPos && this.cachedChunkObj != null) { + return this.cachedChunkObj; + } + + final LevelChunk chunk; + + if (USE_CACHE_MAP) { + chunk = this.cachedLevelChunks.computeIfAbsent(pos, x -> this.grabChunkFast(chunkX, chunkZ, pos)); + } else { + chunk = this.grabChunkFast(chunkX, chunkZ, pos); + } + + this.cachedChunkObj = chunk; + this.cachedChunkPos = pos; + + return chunk; + } + + private @NotNull LevelChunk grabChunkFast(final int chunkX, final int chunkZ, final long pos) { + if (this.level.isClientSide) { + return this.level.getChunk(chunkX, chunkZ); + } + + final ChunkHolder holder = ((ServerChunkCacheAccessor) this.level.getChunkSource()).invokeGetVisibleChunkIfPresent(pos); + + if (holder != null) { + final LevelChunk res = holder.getFullChunkFuture().getNow(ChunkResult.error("No chunk at position")).orElse(null); + + if (res != null) + return res; + } + + return this.level.getChunk(chunkX, chunkZ); + } + + public boolean isOutsideBuildHeight(final Vec3i pos) { + return pos.getY() < this.minBuildHeight || pos.getY() >= this.maxBuildHeight; + } + + @Override + public int getHeight() { + return this.level.getHeight(); + } + + @Override + public int getMinBuildHeight() { + return this.minBuildHeight; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SableBufferUtils.java b/common/src/main/java/dev/ryanhcode/sable/util/SableBufferUtils.java new file mode 100644 index 0000000..10e74c9 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SableBufferUtils.java @@ -0,0 +1,74 @@ +package dev.ryanhcode.sable.util; + +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import io.netty.buffer.ByteBuf; +import net.minecraft.network.RegistryFriendlyByteBuf; +import net.minecraft.network.codec.StreamCodec; +import org.joml.*; + +public class SableBufferUtils { + + public static final StreamCodec POSE3D_STREAM_CODEC = StreamCodec.of(SableBufferUtils::write, + (buf) -> SableBufferUtils.read(buf, new Pose3d())); + + public static void write(final ByteBuf buf, final Vector3dc vec) { + buf.writeDouble(vec.x()); + buf.writeDouble(vec.y()); + buf.writeDouble(vec.z()); + } + + public static void write(final ByteBuf buf, final Vector3fc vec) { + buf.writeFloat(vec.x()); + buf.writeFloat(vec.y()); + buf.writeFloat(vec.z()); + } + + public static Vector3d read(final ByteBuf buf, final Vector3d dest) { + return dest.set(buf.readDouble(), buf.readDouble(), buf.readDouble()); + } + + public static Vector3f read(final ByteBuf buf, final Vector3f dest) { + return dest.set(buf.readFloat(), buf.readFloat(), buf.readFloat()); + } + + public static void write(final ByteBuf buf, final Quaterniondc quat) { + buf.writeFloat((float) quat.x()); + buf.writeFloat((float) quat.y()); + buf.writeFloat((float) quat.z()); + buf.writeFloat((float) quat.w()); + } + + public static Quaterniond read(final ByteBuf buf, final Quaterniond dest) { + return dest.set(buf.readFloat(), buf.readFloat(), buf.readFloat(), buf.readFloat()); + } + + public static void write(final ByteBuf buf, final Pose3dc pose) { + SableBufferUtils.write(buf, pose.position()); + SableBufferUtils.write(buf, pose.orientation()); + SableBufferUtils.write(buf, pose.rotationPoint()); + } + + public static Pose3d read(final ByteBuf buf, final Pose3d pose) { + SableBufferUtils.read(buf, pose.position()); + SableBufferUtils.read(buf, pose.orientation()); + SableBufferUtils.read(buf, pose.rotationPoint()); + return pose; + } + + public static void write(final ByteBuf buf, final BoundingBox3ic bounds) { + buf.writeInt(bounds.minX()); + buf.writeInt(bounds.minY()); + buf.writeInt(bounds.minZ()); + buf.writeInt(bounds.maxX()); + buf.writeInt(bounds.maxY()); + buf.writeInt(bounds.maxZ()); + } + + public static BoundingBox3i read(final ByteBuf buf, final BoundingBox3i dest) { + return dest.set(buf.readInt(), buf.readInt(), buf.readInt(), buf.readInt(), buf.readInt(), buf.readInt()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SableCodecUtil.java b/common/src/main/java/dev/ryanhcode/sable/util/SableCodecUtil.java new file mode 100644 index 0000000..8ecd450 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SableCodecUtil.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.util; + +import com.mojang.serialization.Codec; +import com.mojang.serialization.DataResult; + +import java.util.function.Function; + +public class SableCodecUtil { + + public static Function> checkPositive(final boolean includeZero) { + return (value) -> { + if(includeZero) { + if(value.doubleValue() < 0) return DataResult.error(() -> "Value " + value + " is not positive or 0"); + } else { + if(value.doubleValue() <= 0) return DataResult.error(() -> "Value " + value + " is not positive"); + } + + return DataResult.success(value); + }; + } + + public static Codec positiveDouble(final boolean includeZero) { + return Codec.DOUBLE.flatXmap(checkPositive(includeZero), checkPositive(includeZero)); + } + + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SableDistUtil.java b/common/src/main/java/dev/ryanhcode/sable/util/SableDistUtil.java new file mode 100644 index 0000000..6bcc287 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SableDistUtil.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.util; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.level.Level; + +public class SableDistUtil { + + /** + * @return the client level + */ + public static Level getClientLevel() { + return Minecraft.getInstance().level; + } + + /** + * @return if level inherits from {@link ClientLevel} + */ + public static boolean isClientLevel(final Level level) { + return level instanceof ClientLevel; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SableMathUtils.java b/common/src/main/java/dev/ryanhcode/sable/util/SableMathUtils.java new file mode 100644 index 0000000..ca902fc --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SableMathUtils.java @@ -0,0 +1,223 @@ +package dev.ryanhcode.sable.util; + +import dev.ryanhcode.sable.api.physics.force.ForceTotal; +import dev.ryanhcode.sable.api.physics.mass.MassData; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectIterable; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import it.unimi.dsi.fastutil.objects.ObjectList; +import org.jetbrains.annotations.NotNull; +import org.joml.*; +import org.joml.Math; + +public class SableMathUtils { + private static final Vector3d temp = new Vector3d(); + private static final Quaterniondc[] ALL_QUATS = new Quaterniondc[]{ + new Quaterniond(0, 0, 0, 1), + new Quaterniond(1, 0, 0, 0), + new Quaterniond(0, 1, 0, 0), + new Quaterniond(0, 0, 1, 0), + new Quaterniond(1, 0, 0, 1).normalize(), + new Quaterniond(0, 1, 0, 1).normalize(), + new Quaterniond(0, 0, 1, 1).normalize(), + new Quaterniond(0, 1, 1, 0).normalize(), + new Quaterniond(1, 0, 1, 0).normalize(), + new Quaterniond(1, 1, 0, 0).normalize(), + new Quaterniond(1, 1, 1, 1).normalize() + }; + + public static Matrix3d setOuterProduct(final Vector3dc u, final Vector3dc v, final Matrix3d target) { + target.m00 = u.x() * v.x(); + target.m01 = u.y() * v.x(); + target.m02 = u.z() * v.x(); + target.m10 = u.x() * v.y(); + target.m11 = u.y() * v.y(); + target.m12 = u.z() * v.y(); + target.m20 = u.x() * v.z(); + target.m21 = u.y() * v.z(); + target.m22 = u.z() * v.z(); + return target; + } + + public static Matrix3d setOuterProduct(final Vector3dc u, final Vector3dc v, final double scale, final Matrix3d target) { + target.m00 = u.x() * v.x() * scale; + target.m01 = u.y() * v.x() * scale; + target.m02 = u.z() * v.x() * scale; + target.m10 = u.x() * v.y() * scale; + target.m11 = u.y() * v.y() * scale; + target.m12 = u.z() * v.y() * scale; + target.m20 = u.x() * v.z() * scale; + target.m21 = u.y() * v.z() * scale; + target.m22 = u.z() * v.z() * scale; + return target; + } + + public static Matrix3d addOuterProduct(final Vector3dc u, final Vector3dc v, final Matrix3d target) { + target.m00 += u.x() * v.x(); + target.m01 += u.y() * v.x(); + target.m02 += u.z() * v.x(); + target.m10 += u.x() * v.y(); + target.m11 += u.y() * v.y(); + target.m12 += u.z() * v.y(); + target.m20 += u.x() * v.z(); + target.m21 += u.y() * v.z(); + target.m22 += u.z() * v.z(); + return target; + } + + public static Matrix3d fmaOuterProduct(final Vector3dc u, final Vector3dc v, final double scale, final Matrix3d target) { + target.m00 += u.x() * v.x() * scale; + target.m01 += u.y() * v.x() * scale; + target.m02 += u.z() * v.x() * scale; + target.m10 += u.x() * v.y() * scale; + target.m11 += u.y() * v.y() * scale; + target.m12 += u.z() * v.y() * scale; + target.m20 += u.x() * v.z() * scale; + target.m21 += u.y() * v.z() * scale; + target.m22 += u.z() * v.z() * scale; + return target; + } + + /** + * equivalent to identity.scale(u.dot(u))-fmaOuterProduct(u,u) + */ + public static Matrix3d fmaInertiaTensor(final Vector3dc u, final double scale, final Matrix3d target) { + target.m00 += (u.y() * u.y() + u.z() * u.z()) * scale; + target.m01 -= u.y() * u.x() * scale; + target.m02 -= u.z() * u.x() * scale; + target.m10 -= u.x() * u.y() * scale; + target.m11 += (u.z() * u.z() + u.x() * u.x()) * scale; + target.m12 -= u.z() * u.y() * scale; + target.m20 -= u.x() * u.z() * scale; + target.m21 -= u.y() * u.z() * scale; + target.m22 += (u.x() * u.x() + u.y() * u.y()) * scale; + return target; + } + + public static double multiplyInnerProduct(final Vector3dc u, final Matrix3dc A, final Vector3dc v) { + A.transform(v, temp); + return temp.dot(u); + } + static final Quaterniond difference = new Quaterniond(); + public static Vector3d getAngularVelocity(final Quaterniondc lastOrientation, final Quaterniondc orientation, final Vector3d dest) { + orientation.difference(lastOrientation, difference).conjugate(); + + if(difference.w<0) + difference.mul(-1); + + final Vector3d angularVelocity = dest.set(difference.x, difference.y, difference.z); + + if (angularVelocity.lengthSquared() <= 1E-15) + angularVelocity.mul(2.0 / difference.w); + else { + angularVelocity.normalize().mul(2.0 * Math.safeAcos(difference.w)); + } + + return dest; + } + + public static Quaterniond clampQuaternionToGrid(final Quaterniondc q, final Iterable gridQuats, final Quaterniond dest) { + //negative of sign of each component of q + final int signX = q.x() < 0 ? -1 : 1; + final int signY = q.y() < 0 ? -1 : 1; + final int signZ = q.z() < 0 ? -1 : 1; + final int signW = q.w() < 0 ? -1 : 1; + + dest.set(q); + //enforce q to only have non-positive entries, so that adding behaves like subtraction + dest.x *= -signX; + dest.y *= -signY; + dest.z *= -signZ; + dest.w *= -signW; + + final Quaterniond temp = new Quaterniond(); + final Quaterniond best = new Quaterniond(); + double distance = 10; + + for (final Quaterniondc gq : gridQuats) { + final double currentDist = dest.add(gq, temp).lengthSquared(); + if (currentDist < distance) { + distance = currentDist; + best.set(gq); + } + } + + dest.set(best); + dest.x *= signX; + dest.y *= signY; + dest.z *= signZ; + dest.w *= signW; + return dest; + } + + /** + * @param massData the mass-tracker for the sub-level being damped + * @param frictionForce the desired friction force + * @param frictionTorque the desired friction torque + * @param localLinearVelocity the current local linear velocity of the sub-level + * @param localAngularVelocity the current local angular velocity of the sub-level + * @param timeStep the time-step to apply the force over + * @param forceTotal the force total to store the resulting damping force into + */ + public static void dampSubLevel(final MassData massData, + final Vector3d frictionForce, + final Vector3d frictionTorque, + final Vector3dc localLinearVelocity, + final Vector3dc localAngularVelocity, + final double timeStep, + final ForceTotal forceTotal) { + final Vector3d expectedVelocity = new Vector3d(); + expectedVelocity.set(frictionForce); + expectedVelocity.mul(massData.getInverseMass()); + expectedVelocity.mul(timeStep); + final double forceScale = getClampingFactor(localLinearVelocity, expectedVelocity); + + expectedVelocity.set(frictionTorque); + massData.getInverseInertiaTensor().transform(expectedVelocity); + expectedVelocity.mul(timeStep); + final double torqueScale = getClampingFactor(localAngularVelocity, expectedVelocity); + + frictionForce.mul(forceScale); + frictionTorque.mul(torqueScale); + forceTotal.applyLinearAndAngularImpulse(frictionForce, frictionTorque); + } + + private static double getClampingFactor(final Vector3dc currentVelocity, final Vector3dc expectedVelocityChange) { + final double k = -currentVelocity.dot(expectedVelocityChange); + final double v = currentVelocity.lengthSquared(); + if (k < 0) // don't apply friction that increases velocity + return 0; + if (10 * k < v) // if the expected velocity is 10 times smaller than the actual velocity, dont bother with clamping it + return 1 - k / (2 * v); + if (v < 1E-10) // simpler clamping for tiny values to avoid inaccuracies and numerical explosion + return v / (k + 1E-10); + return v * (1 - java.lang.Math.exp(-k / v)) / k; + } + + public enum GridQuats implements ObjectIterable { + ALL(0b11111111111), + X_AXIS(0b10011), + Y_AXIS(0b100101), + Z_AXIS(0b1001001), + REAL(0b10001110001); + + private final ObjectList currentQuats = new ObjectArrayList<>(ALL_QUATS.length); + private final ObjectList oppositeQuats = new ObjectArrayList<>(ALL_QUATS.length); + + GridQuats(int bitPattern) { + for (final Quaterniondc q : ALL_QUATS) { + (((bitPattern & 1) > 0) ? this.currentQuats : this.oppositeQuats).add(q); + bitPattern >>= 1; + } + } + + public ObjectIterable opposite() { + return this.oppositeQuats::iterator; + } + + @Override + public @NotNull ObjectIterator iterator() { + return this.currentQuats.iterator(); + } + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SableNBTUtils.java b/common/src/main/java/dev/ryanhcode/sable/util/SableNBTUtils.java new file mode 100644 index 0000000..61dd760 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SableNBTUtils.java @@ -0,0 +1,86 @@ +package dev.ryanhcode.sable.util; + + +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3dc; +import dev.ryanhcode.sable.companion.math.Pose3d; +import net.minecraft.nbt.CompoundTag; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +public class SableNBTUtils { + + public static CompoundTag writePose3d(final Pose3d pose) { + final CompoundTag tag = new CompoundTag(); + + tag.put("position", writeVector3d(pose.position())); + tag.put("orientation", writeQuaternion(pose.orientation())); + tag.put("rotation_point", writeVector3d(pose.rotationPoint())); + + return tag; + } + + public static Pose3d readPose3d(final CompoundTag tag) { + return new Pose3d( + readVector3d(tag.getCompound("position")), + readQuaternion(tag.getCompound("orientation")), + readVector3d(tag.getCompound("rotation_point")), + new Vector3d(1.0) + ); + } + + public static CompoundTag writeQuaternion(final Quaterniondc quat) { + final CompoundTag tag = new CompoundTag(); + + tag.putDouble("x", quat.x()); + tag.putDouble("y", quat.y()); + tag.putDouble("z", quat.z()); + tag.putDouble("w", quat.w()); + + return tag; + } + + public static Quaterniond readQuaternion(final CompoundTag tag) { + return new Quaterniond(tag.getDouble("x"), tag.getDouble("y"), tag.getDouble("z"), tag.getDouble("w")); + } + + public static CompoundTag writeVector3d(final Vector3dc vector) { + final CompoundTag tag = new CompoundTag(); + + tag.putDouble("x", vector.x()); + tag.putDouble("y", vector.y()); + tag.putDouble("z", vector.z()); + + return tag; + } + + public static Vector3d readVector3d(final CompoundTag tag) { + return new Vector3d(tag.getDouble("x"), tag.getDouble("y"), tag.getDouble("z")); + } + + public static CompoundTag writeBoundingBox(final BoundingBox3dc bounds) { + final CompoundTag tag = new CompoundTag(); + + tag.putDouble("minX", bounds.minX()); + tag.putDouble("minY", bounds.minY()); + tag.putDouble("minZ", bounds.minZ()); + tag.putDouble("maxX", bounds.maxX()); + tag.putDouble("maxY", bounds.maxY()); + tag.putDouble("maxZ", bounds.maxZ()); + + return tag; + } + + public static BoundingBox3d readBoundingBox(final CompoundTag tag) { + return new BoundingBox3d( + tag.getDouble("minX"), + tag.getDouble("minY"), + tag.getDouble("minZ"), + tag.getDouble("maxX"), + tag.getDouble("maxY"), + tag.getDouble("maxZ") + ); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SchematicLoader.java b/common/src/main/java/dev/ryanhcode/sable/util/SchematicLoader.java new file mode 100644 index 0000000..459de20 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SchematicLoader.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.util; + +import net.minecraft.Util; +import net.minecraft.core.registries.Registries; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtAccounter; +import net.minecraft.nbt.NbtIo; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.MinecraftServer; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.packs.resources.Resource; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import org.jetbrains.annotations.Nullable; + +import java.io.IOException; +import java.io.InputStream; +import java.util.Optional; +import java.util.Set; +import java.util.concurrent.CompletableFuture; + +/** + * Handles loading schematics + */ +public class SchematicLoader { + + public static @Nullable StructureTemplate loadSchematic(final ServerLevel level, final ResourceLocation location) { + final String namespace = location.getNamespace(); + final String path = "schematics/" + location.getPath() + ".nbt"; + final ResourceLocation location1 = ResourceLocation.fromNamespaceAndPath(namespace, path); + + final Optional option = level.getServer().getResourceManager().getResource(location1); + if (option.isEmpty()) { + return null; + } + + final Resource resource = option.get(); + + try (final InputStream stream = resource.open()) { + final StructureTemplate template = new StructureTemplate(); + final CompoundTag nbt = NbtIo.readCompressed(stream, NbtAccounter.create(0x20000000L)); + template.load(level.holderLookup(Registries.BLOCK), nbt); + return template; + } catch (final IOException e) { + return null; + } + } + + public static CompletableFuture> getSchematics(final MinecraftServer server) { + return CompletableFuture.supplyAsync(() -> server.getResourceManager().listResources("schematics", path -> path.getPath().endsWith(".nbt")).keySet(), Util.backgroundExecutor()); + } + +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.java b/common/src/main/java/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.java new file mode 100644 index 0000000..c02e6a3 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.java @@ -0,0 +1,129 @@ +package dev.ryanhcode.sable.util; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.util.AbortableIterationConsumer; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.entity.EntityAccess; +import net.minecraft.world.level.entity.EntityTypeTest; +import net.minecraft.world.level.entity.LevelEntityGetter; +import net.minecraft.world.phys.AABB; +import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; +import org.joml.Matrix4d; + +import java.util.UUID; +import java.util.function.Consumer; + +/** + * A {@link LevelEntityGetter} that delegates all calls to a child, taking into account sub-levels and their plots + * + * @param + */ +public class SubLevelInclusiveLevelEntityGetter implements LevelEntityGetter { + public static final int MAX_GET_SIDE_LENGTH = 100_000; + + private final Level level; + private final LevelEntityGetter delegate; + + public SubLevelInclusiveLevelEntityGetter(final Level level, final LevelEntityGetter delegate) { + this.level = level; + this.delegate = delegate; + } + + private static void logError(final AABB aabb) { + Sable.LOGGER.error("Aborting entity get for abnormally large AABB: {}", aabb, new Throwable("Stack Trace")); + } + + @Override + public @Nullable T get(final int i) { + return this.delegate.get(i); + } + + @Override + public @Nullable T get(final UUID uUID) { + return this.delegate.get(uUID); + } + + @Override + public @NotNull Iterable getAll() { + return this.delegate.getAll(); + } + + @Override + public void get(final EntityTypeTest entityTypeTest, final AbortableIterationConsumer abortableIterationConsumer) { + this.delegate.get(entityTypeTest, abortableIterationConsumer); + } + + @Override + public void get(AABB aABB, final Consumer consumer) { + if (aABB.getSize() > MAX_GET_SIDE_LENGTH) { + logError(aABB); + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, aABB.getCenter()); + + this.delegate.get(aABB, consumer); + + final BoundingBox3d bb = new BoundingBox3d(aABB); + final Matrix4d bakedMatrix = new Matrix4d(); + if (subLevel != null) { + aABB = bb.transform(subLevel.logicalPose(), bb).toMojang(); + + this.delegate.get(aABB, consumer); + } + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(bb)); + + for (final SubLevel otherSubLevel : intersecting) { + if (otherSubLevel == subLevel) { + continue; + } + + final AABB localBounds = bb.set(aABB).transformInverse(otherSubLevel.logicalPose(), bakedMatrix, bb).toMojang(); + + this.delegate.get(localBounds, consumer); + } + } + + @Override + public void get(final EntityTypeTest entityTypeTest, AABB aABB, final AbortableIterationConsumer abortableIterationConsumer) { + if (aABB.getSize() > MAX_GET_SIDE_LENGTH) { + logError(aABB); + return; + } + + final SubLevel subLevel = Sable.HELPER.getContaining(this.level, aABB.getCenter()); + this.delegate.get(entityTypeTest, aABB, abortableIterationConsumer); + + final BoundingBox3d bb = new BoundingBox3d(aABB); + if (subLevel != null) { + aABB = bb.transform(subLevel.logicalPose(), bb).toMojang(); + + this.delegate.get(entityTypeTest, aABB, abortableIterationConsumer); + } + + final Iterable intersecting = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(bb)); + + for (final SubLevel otherSubLevel : intersecting) { + if (otherSubLevel == subLevel) { + continue; + } + + final AABB localBounds = bb.set(aABB).transformInverse(otherSubLevel.logicalPose(), bb).toMojang(); + + this.delegate.get(entityTypeTest, localBounds, abortableIterationConsumer); + } + } + + public void getIgnoringSubLevels(final AABB aABB, final Consumer consumer) { + this.delegate.get(aABB, consumer); + } + + public void getIgnoringSubLevels(final EntityTypeTest entityTypeTest, final AABB aABB, final AbortableIterationConsumer abortableIterationConsumer) { + this.delegate.get(entityTypeTest, aABB, abortableIterationConsumer); + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.java b/common/src/main/java/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.java new file mode 100644 index 0000000..228c5a1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.util; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniondc; +import org.joml.Quaternionf; +import org.joml.Vector3dc; + +public class SublevelRenderOffsetHelper { + /** + * @param subLevel Sub-level to move PoseStack from + * @param ps Pose stack to be manipulated + * @usage Called before the PoseStack is translated to its plot position, or before anything is rendered with the plot position + */ + public static void posePlotToProjected(final SubLevel subLevel, final PoseStack ps) { + if (subLevel != null) { + final Vec3 camera = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + + final Pose3dc pose = ((ClientSubLevel) subLevel).renderPose(); + + final Vector3dc pos = pose.position(); + final Vector3dc scale = pose.scale(); + final Quaterniondc orientation = pose.orientation(); + + ps.translate(pos.x() - camera.x, pos.y() - camera.y, pos.z() - camera.z); + ps.mulPose(new Quaternionf(orientation)); + ps.translate(camera.x, camera.y, camera.z); + ps.scale((float) scale.x(), (float) scale.y(), (float) scale.z()); + } + } + + public static Vec3 translation(final Vec3 center) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(center); + if (subLevel != null) { + final Pose3dc pose = subLevel.renderPose(); + return JOMLConversion.toMojang(pose.rotationPoint()).scale(1.0); + } + return Vec3.ZERO; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.java b/common/src/main/java/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.java new file mode 100644 index 0000000..eb8fca1 --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.util.iterator; + +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.util.Iterator; +import java.util.NoSuchElementException; +import java.util.function.Predicate; + +@ApiStatus.Internal +public class IteratorBackedFilterIterator implements Iterator { + + private final Predicate filter; + private final Iterator backingIterator; + + private T nextObject; + + public IteratorBackedFilterIterator(final Predicate filter, final Iterator backingIterator) { + this.filter = filter; + this.backingIterator = backingIterator; + } + + public @Nullable T findNextObject() { + if (this.nextObject != null) { + return this.nextObject; + } + + while (this.backingIterator.hasNext()) { + final T next = this.backingIterator.next(); + if (this.filter.test(next)) { + return this.nextObject = next; + } + } + + return null; + } + + @Override + public boolean hasNext() { + return this.findNextObject() != null; + } + + @Override + public T next() { + if (this.findNextObject() == null) { + throw new NoSuchElementException(); + } + + final T result = this.nextObject; + this.nextObject = null; + return result; + } +} diff --git a/common/src/main/java/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.java b/common/src/main/java/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.java new file mode 100644 index 0000000..9ca4b5b --- /dev/null +++ b/common/src/main/java/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.util.iterator; + +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.util.Iterator; +import java.util.List; +import java.util.NoSuchElementException; +import java.util.function.Predicate; + +@ApiStatus.Internal +public class ListBackedFilterIterator implements Iterator { + + private final Predicate filter; + private final List backingList; + + private int index; + private T nextObject; + + public ListBackedFilterIterator(final Predicate filter, final List backingList) { + this.filter = filter; + this.backingList = backingList; + } + + + public @Nullable T findNextObject() { + if (this.nextObject != null) { + return this.nextObject; + } + + for (; this.index < this.backingList.size(); this.index++) { + final T next = this.backingList.get(this.index); + + if (this.filter.test(next)) { + this.index++; + return this.nextObject = next; + } + } + + return null; + } + + @Override + public boolean hasNext() { + return this.findNextObject() != null; + } + + @Override + public T next() { + if (this.findNextObject() == null) { + throw new NoSuchElementException(); + } + + final T result = this.nextObject; + this.nextObject = null; + return result; + } +} diff --git a/common/src/main/resources/META-INF/accesstransformer.cfg b/common/src/main/resources/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..f24e1c9 --- /dev/null +++ b/common/src/main/resources/META-INF/accesstransformer.cfg @@ -0,0 +1,67 @@ +public net.minecraft.client.renderer.block.ModelBlockRenderer$Cache +public net.minecraft.server.level.ChunkHolder entityTickingChunkFuture +public net.minecraft.server.level.ChunkHolder tickingChunkFuture +public net.minecraft.server.level.ChunkHolder fullChunkFuture +public net.minecraft.client.renderer.block.BlockRenderDispatcher modelRenderer +public net.minecraft.client.renderer.block.ModelBlockRenderer$AmbientOcclusionFace +public net.minecraft.server.level.ServerChunkCache$MainThreadExecutor +public net.minecraft.client.renderer.LevelRenderer cullingFrustum +public net.minecraft.world.entity.projectile.AbstractHurtingProjectile accelerationPower +public net.minecraft.world.entity.projectile.Projectile Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +public-f net.minecraft.client.renderer.chunk.SectionRenderDispatcher bufferPool +public-f net.minecraft.world.entity.ai.attributes.AttributeSupplier instances +public net.minecraft.server.level.ServerPlayer findRespawnAndUseSpawnBlock(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection updateGlobalBlockEntities(Ljava/util/Collection;)V +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection setCompiled(Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +public net.minecraft.world.entity.Entity removalReason +public net.minecraft.world.entity.Entity levelCallback +public-f net.minecraft.world.entity.Entity getEyePosition(F)Lnet/minecraft/world/phys/Vec3; +public-f net.minecraft.world.entity.Entity setRemoved(Lnet/minecraft/world/entity/Entity$RemovalReason;)V +public net.minecraft.server.level.ChunkLevel ENTITY_TICKING_LEVEL +public net.minecraft.server.level.ChunkLevel BLOCK_TICKING_LEVEL +public net.minecraft.world.entity.decoration.HangingEntity calculateSupportBox()Lnet/minecraft/world/phys/AABB; +public net.minecraft.world.entity.LivingEntity dismountVehicle(Lnet/minecraft/world/entity/Entity;)V +public net.minecraft.world.level.lighting.LevelLightEngine skyEngine +public net.minecraft.world.level.lighting.LevelLightEngine blockEngine +public net.minecraft.server.level.ThreadedLevelLightEngine runUpdate()V +public net.minecraft.server.level.ThreadedLevelLightEngine updateChunkStatus(Lnet/minecraft/world/level/ChunkPos;)V +public net.minecraft.client.renderer.block.ModelBlockRenderer CACHE +public net.minecraft.server.network.PlayerChunkSender sendChunk(Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V +public net.minecraft.server.network.ServerCommonPacketListenerImpl connection +public net.minecraft.client.multiplayer.ClientChunkCache$Storage +public net.minecraft.network.Connection channel +public net.minecraft.client.renderer.RenderStateShard name +public net.minecraft.client.renderer.ShaderInstance samplerLocations +public net.minecraft.world.level.entity.PersistentEntitySectionManager sectionStorage +public net.minecraft.world.level.storage.DimensionDataStorage dataFolder +public net.minecraft.client.renderer.GameRenderer getFov(Lnet/minecraft/client/Camera;FZ)D +public-f net.minecraft.server.level.GenerationChunkHolder rescheduleChunkTask(Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V +public net.minecraft.client.particle.Particle zo +public net.minecraft.client.particle.Particle yo +public net.minecraft.client.particle.Particle xo +public net.minecraft.client.particle.Particle x +public net.minecraft.client.particle.Particle y +public net.minecraft.client.particle.Particle zd +public net.minecraft.client.particle.Particle z +public net.minecraft.client.particle.Particle yd +public net.minecraft.client.particle.Particle xd +public net.minecraft.world.level.ClipContext collisionContext +public net.minecraft.world.level.ClipContext fluid +public net.minecraft.world.level.ClipContext block +public net.minecraft.server.level.ChunkMap$DistanceManager +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +public net.minecraft.server.level.ChunkMap unloadQueue +public net.minecraft.server.level.ChunkMap toDrop +public net.minecraft.server.level.ChunkMap updatingChunkMap +public net.minecraft.server.level.ChunkMap visibleChunkMap +public net.minecraft.server.level.ChunkMap modified +public net.minecraft.server.level.ChunkMap chunkSaveCooldowns +public net.minecraft.server.level.ChunkMap scheduleUnload(JLnet/minecraft/server/level/ChunkHolder;)V +public net.minecraft.server.level.ChunkMap onFullChunkStatusChange(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V +public net.minecraft.server.level.ChunkMap getChunks()Ljava/lang/Iterable; +public net.minecraft.server.level.ChunkMap saveChunkIfNeeded(Lnet/minecraft/server/level/ChunkHolder;)Z +public net.minecraft.server.level.ServerLevel entityManager + diff --git a/common/src/main/resources/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion b/common/src/main/resources/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion new file mode 100644 index 0000000..a9131c7 --- /dev/null +++ b/common/src/main/resources/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion @@ -0,0 +1 @@ +dev.ryanhcode.sable.ActiveSableCompanion \ No newline at end of file diff --git a/common/src/main/resources/architectury.common.json b/common/src/main/resources/architectury.common.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/common/src/main/resources/architectury.common.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/common/src/main/resources/assets/sable/lang/en_us.json b/common/src/main/resources/assets/sable/lang/en_us.json new file mode 100644 index 0000000..13042f0 --- /dev/null +++ b/common/src/main/resources/assets/sable/lang/en_us.json @@ -0,0 +1,148 @@ +{ + "menu.savingSubLevels": "Saving sub-levels", + + "commands.sable.helper.missing_sub_level_container": "Couldn't find sub-level container for this level!", + "commands.sable.helper.missing_physics_system": "Couldn't find sub-level physics system for this level!", + + "commands.sable.sub_level": "sub-level", + "commands.sable.sub_levels": "%s sub-levels", + + "commands.sable.physics.global": "global", + "commands.sable.physics.local": "local", + + "commands.sable.spawn.success": "Spawned %s", + "commands.sable.spawn.clone.success": "Cloned sublevel", + + "commands.sable.physics.impulse.angular.success": "Applied %s angular impulse to %s of %s", + "commands.sable.physics.impulse.linear.success": "Applied %s linear impulse to %s of %s", + "commands.sable.physics.rotation.add.success": "Added %s rotation to %s of %s", + "commands.sable.physics.rotation.set.success": "Set rotation of %s to %s", + "commands.sable.physics.translation.add.success": "Added %s translation to %s of %s", + "commands.sable.physics.translation.set.success": "Set translation of %s to %s", + + "commands.sable.joint.missing_sublevel_target": "Failed to find sub-level for joint", + "commands.sable.joint.success": "Successfully created joint", + + "commands.sable.sub_level.set_name.success_singular": "Set name of sub-level to %s", + "commands.sable.sub_level.set_name.success_multiple": "Set name of %s sub-levels to %s", + + "commands.sable.sub_level.get_name.success": "Name of sub-level is %s", + "commands.sable.sub_level.get_name.failure_unnamed": "Sub-level has no name", + + "commands.sable.sub_level.clear_name.success_singular": "Cleared name of sub-level", + "commands.sable.sub_level.clear_name.success_multiple": "Cleared name of %s sub-levels", + + "commands.sable.sub_level.teleport_with_orientation.success": "Teleported %s to %.2f, %.2f, %.2f facing %.2f, %.2f", + "commands.sable.sub_level.teleport.success": "Teleported %s to %.2f, %.2f, %.2f", + "commands.sable.sub_level.remove.success": "Removed %s", + "commands.sable.sub_level.assemble.no_blocks": "Couldn't assemble sub-level, no valid blocks found", + "commands.sable.sub_level.assemble.connected.too_many_blocks": "Couldn't assemble sub-level, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.no_blocks": "Couldn't shatter into sub-levels, no valid blocks found", + "commands.sable.sub_level.shatter.connected.too_many_blocks": "Couldn't shatter into sub-levels, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.region.success": "Shattered a region with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.connected.success": "Shattered %s connected blocks into new sub-levels", + "commands.sable.sub_level.shatter.range.success": "Shattered a range with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.radius.success": "Shattered a radius with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.sub_level.success": "Shattered %s into %s new sub-levels", + "commands.sable.sub_level.shatter.sub_level.only_single_block": "Can't shatter single-block sub-levels", + "commands.sable.sub_level.assemble.region.success": "Assembled a region %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.connected.success": "Assembled %s connected blocks to a new sub-level", + "commands.sable.sub_level.assemble.radius.success": "Assembled a radius with %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.range.success": "Assembled a range with %s blocks to a new sub-level", + + "commands.sable.physics.paused.success": "Set physics paused to be %s", + "commands.sable.physics.paused_toggled.success": "Toggled physics paused to be %s", + + "commands.sable.place_schematic.failure": "Couldn't find schematic!", + "commands.sable.place_schematic.success": "Placed schematic!", + + "commands.sable.fail.not_inside_sub_level": "Position outside of sub-level plot", + "commands.sable.fail.no_sub_levels": "No sub-levels found", + "commands.sable.fail.unmodified": "No sub-levels were modified", + "commands.sable.fail.no_axis_for_rotation": "No axis for rotation", + + "commands.sable.info.count": "Found %s sub-levels:", + "commands.sable.info.name": "%s:", + "commands.sable.info.name.tooltip": "Serialization Pointer: %s", + "commands.sable.info.position": " Position: %.2f %.2f %.2f", + "commands.sable.info.orientation": " Orientation: %.2f %.2f %.2f %.2f", + "commands.sable.info.linear_velocity": " Linear Velocity: %.2f %.2f %.2f", + "commands.sable.info.angular_velocity": " Angular Velocity: %.2f %.2f %.2f", + "commands.sable.info.mass": " Mass: %.2f", + "commands.sable.info.world_bounds": " World Bounds: %.2f x %.2f x %.2f", + + "commands.data.sub_level.get": "%s on sub-level %s after scale factor of %s is %s", + "commands.data.sub_level.modified": "Modified sub-level auxiliary data of %s", + "commands.data.sub_level.query": "%s has the following auxiliary sub-level data: %s", + + "argument.sable.body.selector.all": "All sub-levels", + "argument.sable.body.selector.nearest": "Nearest sub-level", + "argument.sable.body.selector.random": "Random sub-level", + "argument.sable.body.selector.viewed": "Viewed sub-level", + "argument.sable.body.selector.latest": "Latest sub-level", + "argument.sable.body.selector.tracking": "Tracking sub-level", + "argument.sable.body.selector.inside": "Inside sub-level", + "argument.sable.body.static_world": "The static world", + + "argument.sable.sub_level.modifier.distance": "Distance to sub-level", + "argument.sable.sub_level.modifier.x": "x position", + "argument.sable.sub_level.modifier.y": "y position", + "argument.sable.sub_level.modifier.z": "z position", + "argument.sable.sub_level.modifier.dx": "Sub-levels between x and x + dx", + "argument.sable.sub_level.modifier.dy": "Sub-levels between y and y + dy", + "argument.sable.sub_level.modifier.dz": "Sub-levels between z and z + dz", + "argument.sable.sub_level.modifier.vx": "x velocity", + "argument.sable.sub_level.modifier.vy": "y velocity", + "argument.sable.sub_level.modifier.vz": "z velocity", + "argument.sable.sub_level.modifier.speed": "Sub-level speed", + "argument.sable.sub_level.modifier.mass": "Sub-level weight", + "argument.sable.sub_level.modifier.volume": "Volume of sub-level bounding box", + "argument.sable.sub_level.modifier.width": "X axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.height": "Y axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.length": "Z axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.limit": "Maximum number of sub-levels to return", + "argument.sable.sub_level.modifier.name": "Sub-level name", + "argument.sable.sub_level.modifier.sort": "Sort the sub-levels by distance", + "argument.sable.unexpected_end_of_input": "Unexpected end of input", + "argument.sable.single_sub_level_required": "Only one sub-level is allowed, but the provided selector allows more than one", + "argument.sable.sub_level.invalid": "Invalid sub-level selector", + "argument.sable.sub_level.expected_end_of_modifier": "Expected end of modifier", + "argument.sable.sub_level.expected_positive_integer": "Expected a positive integer", + "argument.sable.sub_level.expected_positive_decimal": "Expected a positive decimal", + "argument.sable.sub_level.expected_positive_range": "Expected a positive range", + "argument.sable.sub_level.expected_sorting": "Expected sorting type of either nearest or furthest", + + "inspector.sable.sub_level_container.title": "Sub-level Container", + + "attribute.name.player.sub_level_punch_strength": "Push Strength", + "attribute.name.player.sub_level_punch_cooldown": "Push Cooldown", + + "options.sable_menu": "Sub-Level Settings... ", + "options.physics_steps": "Physics Steps", + "options.physics_steps_template": "%s steps / second", + "options.physics_steps.tooltip": "How many times the physics simulation is stepped in every second. Higher values will be significantly more performance intensive, but will have higher accuracy.", + + "sub_level.toast.checkLog": "See log for more details", + "sub_level.toast.loadFailure": "Failed to load sub-level at %s", + "sub_level.toast.saveFailure": "Failed to save sub-level at %s", + "sub_level.toast.physicsFailure": "Physics failure for sub-level at %s", + "sub_level.toast.attemptingRecovery": "Attempting recovery", + + "camera_type.sub_level_view": "Entering Contraption Camera", + "camera_type.sub_level_view_unlocked": "Entering Unlocked Contraption Camera", + + "force_group.sable.gravity": "Gravity", + "force_group.sable.drag": "Drag", + "force_group.sable.levitation": "Levitation", + "force_group.sable.balloon_lift": "Balloon Lift", + "force_group.sable.propulsion": "Propulsion", + "force_group.sable.lift": "Lift", + "force_group.sable.magnetic_force": "Magnetic", + + "schematic.sable.mirror_not_supported": "Cannot mirror schematics containing sub-levels!", + + "death.attack.fall.from_sublevel": "%1$s fell from %2$s", + + "sable.create.mechanical_arm.points_removed_sublevel_and_range": "%1$s selected interaction point(s) removed due to range limitations or not being anchored.", + "sable.create.remove.points_removed_sublevel" : "%1$s selected interaction point(s) removed due to not being anchored" +} diff --git a/common/src/main/resources/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl b/common/src/main/resources/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl new file mode 100644 index 0000000..f9a32df --- /dev/null +++ b/common/src/main/resources/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl @@ -0,0 +1,61 @@ +layout(location = 0) in vec3 QuadPosition; +layout(location = 1) in vec3 SableNormal; +layout(location = 2) in uvec2 SableData; + +layout(std140) uniform SableSprites { + vec4 sableSprites[2 * SABLE_TEXTURE_CACHE_SIZE]; +}; + +uniform mat4 SableTransform; + +vec3 Position; +vec3 Normal; +vec4 Color; +vec2 UV0; +ivec2 UV2; + +void _sable_unpack() { + uint vertexIndex = uint(gl_VertexID) & 0x3u; + + // Packed data format: + // TTTTTTTTTTTTLLLLLLLLZZZZYYYYXXXX + // T = Texture ID + // L = Packed Light + // Z = Relative Z position + // Y = Relative Y position + // X = Relative X position + uint posX = SableData.x & 15u; + uint posY = (SableData.x >> 4) & 15u; + uint posZ = (SableData.x >> 8) & 15u; + uint packedLight = (SableData.x >> 12) & 255u; + uint textureId = SableData.x >> 20u; + + // Packed data format: + // AAAAAAAAYYYYYYYYZZZZZZZZXXXXXXXX + // A = Ambient Occlusion + // Y = Section Y + // Z = Section Z + // X = Section X + uint xOffset = (SableData.y) & 0xFFu; + uint yOffset = (SableData.y >> 8) & 0xFFu; + uint zOffset = (SableData.y >> 16) & 0xFFu; + uint ambientOcclusion = (SableData.y >> (24u + (vertexIndex << 1u))) & 0x3u; + + // 0,0 == 0b00 + // 0,1 == 0b01 + // 1,1 == 0b10 + // 1,0 == 0b11 + uint lower = uint(gl_VertexID) & 1u; + uint upper = (uint(gl_VertexID) >> 1) & 1u; + vec2 uv = vec2(float(upper), float(lower ^ upper)); + uint textureOffset = vertexIndex << 3u; + + vec4 textureU = sableSprites[(textureId << 1u)]; + vec4 textureV = sableSprites[(textureId << 1u) + 1u]; + + Position = (SableTransform * vec4(QuadPosition + vec3(float((xOffset << 4u) + posX), float((yOffset << 4u) + posY), float((zOffset << 4u) + posZ)), 1.0)).xyz; + Normal = (SableTransform * vec4(SableNormal, 0.0)).xyz; + Color = vec4(1.0, 1.0, 1.0, 1.0) * vec4(vec3(1.0 - 0.2 * float(ambientOcclusion)), 1.0); + UV0 = vec2(textureU[vertexIndex], textureV[vertexIndex]); + UV2 = ivec2(packedLight & 0xF0u, (packedLight << 4) & 0xF0u); +} \ No newline at end of file diff --git a/common/src/main/resources/data/c/tags/block/end_stones.json b/common/src/main/resources/data/c/tags/block/end_stones.json new file mode 100644 index 0000000..146dcd9 --- /dev/null +++ b/common/src/main/resources/data/c/tags/block/end_stones.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:end_stone" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/floating_materials/end_stone.json b/common/src/main/resources/data/sable/floating_materials/end_stone.json new file mode 100644 index 0000000..b5f5be3 --- /dev/null +++ b/common/src/main/resources/data/sable/floating_materials/end_stone.json @@ -0,0 +1,10 @@ +{ + "prevent_self_lift": true, + "scale_friction_with_gravity":true, + "lift_strength": 2, + "transition_speed": 2, + "slow_vertical_friction": 0.4, + "fast_vertical_friction": 0.02, + "slow_horizontal_friction": 0.3, + "fast_horizontal_friction": 0.01 +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/bedrock_absurdity.json b/common/src/main/resources/data/sable/physics_block_properties/bedrock_absurdity.json new file mode 100644 index 0000000..5addf33 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/bedrock_absurdity.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:bedrock", + + "properties": { + "sable:mass": 1000.0 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/bouncy.json b/common/src/main/resources/data/sable/physics_block_properties/bouncy.json new file mode 100644 index 0000000..8da9bbb --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/bouncy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:bouncy", + + "properties": { + "sable:restitution": 0.5 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/end_stone_brick_slab.json b/common/src/main/resources/data/sable/physics_block_properties/end_stone_brick_slab.json new file mode 100644 index 0000000..e120d72 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/end_stone_brick_slab.json @@ -0,0 +1,13 @@ +{ + "selector": "minecraft:end_stone_brick_slab", + + "properties": { + "sable:floating_material": "sable:end_stone", + "sable:floating_scale": 0.5 + }, + "overrides": { + "type=double": { + "sable:floating_scale": 1.0 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/end_stones.json b/common/src/main/resources/data/sable/physics_block_properties/end_stones.json new file mode 100644 index 0000000..87c896d --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/end_stones.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:end_stones", + + "properties": { + "sable:floating_material": "sable:end_stone" + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/flywheel.json b/common/src/main/resources/data/sable/physics_block_properties/flywheel.json new file mode 100644 index 0000000..b7ab63c --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/flywheel.json @@ -0,0 +1,19 @@ +{ + "selector": "create:flywheel", + + "properties": { + "sable:mass":4.0 + }, + + "overrides":{ + "axis=x": { + "sable:inertia": [2.25,1.125,1.125] + }, + "axis=y": { + "sable:inertia": [1.125,2.25,1.125] + }, + "axis=z": { + "sable:inertia": [1.125,1.125,2.25] + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/fragile.json b/common/src/main/resources/data/sable/physics_block_properties/fragile.json new file mode 100644 index 0000000..4254f91 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/fragile.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:fragile", + + "properties": { + "sable:fragile": true + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/grindstone.json b/common/src/main/resources/data/sable/physics_block_properties/grindstone.json new file mode 100644 index 0000000..150c03f --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/grindstone.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:grindstone", + + "properties": { + "sable:friction": 0.05 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/half_volume.json b/common/src/main/resources/data/sable/physics_block_properties/half_volume.json new file mode 100644 index 0000000..7f016a4 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/half_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:half_volume", + + "properties": { + "sable:volume": 0.5 + }, + + "overrides": { + "type=double": { + "sable:volume": 1.0 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/heavy.json b/common/src/main/resources/data/sable/physics_block_properties/heavy.json new file mode 100644 index 0000000..7576d35 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:heavy", + + "properties": { + "sable:mass": 2.0 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/light.json b/common/src/main/resources/data/sable/physics_block_properties/light.json new file mode 100644 index 0000000..58e4125 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/light.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:light", + + "properties": { + "sable:mass": 0.5 + }, + + "overrides": { + "type=double": { + "sable:mass": 1.0 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/mud.json b/common/src/main/resources/data/sable/physics_block_properties/mud.json new file mode 100644 index 0000000..ff67e5e --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/mud.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:mud", + + "properties": { + "sable:friction": 0.25 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/piston.json b/common/src/main/resources/data/sable/physics_block_properties/piston.json new file mode 100644 index 0000000..18ec882 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/piston.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:pistons", + + "properties": { + "sable:mass": 1.0 + }, + + "overrides": { + "extended=true": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/quarter_volume.json b/common/src/main/resources/data/sable/physics_block_properties/quarter_volume.json new file mode 100644 index 0000000..b5f0cbd --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/quarter_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:quarter_volume", + + "properties": { + "sable:volume": 0.25 + }, + + "overrides": { + "type=double": { + "sable:volume": 0.5 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/slippery.json b/common/src/main/resources/data/sable/physics_block_properties/slippery.json new file mode 100644 index 0000000..e1e4f59 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/slippery.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:slippery", + + "properties": { + "sable:friction": 0.0 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/sticky.json b/common/src/main/resources/data/sable/physics_block_properties/sticky.json new file mode 100644 index 0000000..d831295 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/sticky.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:frictive", + + "properties": { + "sable:friction": 1.65 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/super_heavy.json b/common/src/main/resources/data/sable/physics_block_properties/super_heavy.json new file mode 100644 index 0000000..83392dc --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/super_heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:super_heavy", + + "properties": { + "sable:mass": 4.0 + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/physics_block_properties/super_light.json b/common/src/main/resources/data/sable/physics_block_properties/super_light.json new file mode 100644 index 0000000..1281080 --- /dev/null +++ b/common/src/main/resources/data/sable/physics_block_properties/super_light.json @@ -0,0 +1,14 @@ +{ + "priority": 1001, + "selector": "#sable:super_light", + + "properties": { + "sable:mass": 0.25 + }, + + "overrides": { + "type=double": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/schematics/vinalilime.nbt b/common/src/main/resources/data/sable/schematics/vinalilime.nbt new file mode 100644 index 0000000..bffb43f Binary files /dev/null and b/common/src/main/resources/data/sable/schematics/vinalilime.nbt differ diff --git a/common/src/main/resources/data/sable/schematics/vostone_2.nbt b/common/src/main/resources/data/sable/schematics/vostone_2.nbt new file mode 100644 index 0000000..b612af5 Binary files /dev/null and b/common/src/main/resources/data/sable/schematics/vostone_2.nbt differ diff --git a/common/src/main/resources/data/sable/structure/assemblytest.brittlebreak.nbt b/common/src/main/resources/data/sable/structure/assemblytest.brittlebreak.nbt new file mode 100644 index 0000000..e7681ca Binary files /dev/null and b/common/src/main/resources/data/sable/structure/assemblytest.brittlebreak.nbt differ diff --git a/common/src/main/resources/data/sable/structure/physicstest.continuouscollision.nbt b/common/src/main/resources/data/sable/structure/physicstest.continuouscollision.nbt new file mode 100644 index 0000000..ad6c3b5 Binary files /dev/null and b/common/src/main/resources/data/sable/structure/physicstest.continuouscollision.nbt differ diff --git a/common/src/main/resources/data/sable/structure/physicstest.gravity.nbt b/common/src/main/resources/data/sable/structure/physicstest.gravity.nbt new file mode 100644 index 0000000..4e3e84c Binary files /dev/null and b/common/src/main/resources/data/sable/structure/physicstest.gravity.nbt differ diff --git a/common/src/main/resources/data/sable/structure/physicstest.snag.nbt b/common/src/main/resources/data/sable/structure/physicstest.snag.nbt new file mode 100644 index 0000000..a29e87e Binary files /dev/null and b/common/src/main/resources/data/sable/structure/physicstest.snag.nbt differ diff --git a/common/src/main/resources/data/sable/tags/block/always_chunk_rendering.json b/common/src/main/resources/data/sable/tags/block/always_chunk_rendering.json new file mode 100644 index 0000000..671a331 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/always_chunk_rendering.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + { "id": "computercraft:monitor_normal", "required": false }, + { "id": "computercraft:monitor_advanced", "required": false }, + + { "id": "computercraft:turtle_normal", "required": false }, + { "id": "computercraft:turtle_advanced", "required": false }, + + { "id": "computercraft:computer_normal", "required": false }, + { "id": "computercraft:computer_advanced", "required": false }, + { "id": "computercraft:computer_command", "required": false } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/bouncy.json b/common/src/main/resources/data/sable/tags/block/bouncy.json new file mode 100644 index 0000000..f3c5414 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/bouncy.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:slime_block" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/diode.json b/common/src/main/resources/data/sable/tags/block/diode.json new file mode 100644 index 0000000..eebbbce --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/diode.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:repeater", + "minecraft:comparator", + { "id": "create:powered_toggle_latch", "required": false }, + { "id": "create:powered_latch", "required": false }, + { "id": "create:pulse_timer", "required": false }, + { "id": "create:pulse_extender", "required": false }, + { "id": "create:pulse_repeater", "required": false } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/end_stones.json b/common/src/main/resources/data/sable/tags/block/end_stones.json new file mode 100644 index 0000000..ac17a72 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/end_stones.json @@ -0,0 +1,17 @@ +{ + "replace": false, + "values": [ + "#c:end_stones", + "minecraft:end_stone_bricks", + "minecraft:end_stone_brick_stairs", + "minecraft:end_stone_brick_wall", + + { "id": "supplementaries:end_stone_lamp", "required": false }, + + { "id": "architects_palette:choral_end_stone_bricks", "required": false }, + { "id": "architects_palette:cracked_end_stone_bricks", "required": false }, + { "id": "architects_palette:chiseled_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_cracked_end_stone_bricks", "required": false } + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/fragile.json b/common/src/main/resources/data/sable/tags/block/fragile.json new file mode 100644 index 0000000..3942c98 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/fragile.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:leaves", + "minecraft:bamboo", + "minecraft:melon", + "minecraft:pumpkin", + "minecraft:cactus", + "minecraft:ice", + "minecraft:frosted_ice", + "minecraft:lily_pad" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/frictive.json b/common/src/main/resources/data/sable/tags/block/frictive.json new file mode 100644 index 0000000..684d0c6 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/frictive.json @@ -0,0 +1,16 @@ +{ + "replace": false, + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:honey_block", + "minecraft:cactus", + + { "id": "create:belt", "required": false }, + + { "id": "architects_palette:tread_plate", "required": false }, + { "id": "architects_palette:tread_plate_slab", "required": false }, + { "id": "architects_palette:tread_plate_stairs", "required": false }, + { "id": "architects_palette:tread_plate_wall", "required": false } + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/half_volume.json b/common/src/main/resources/data/sable/tags/block/half_volume.json new file mode 100644 index 0000000..4f29698 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/half_volume.json @@ -0,0 +1,22 @@ +{ + "replace": false, + "values": [ + "#minecraft:slabs", + "#minecraft:stairs", + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "quark:feeding_trough", "required": false }, + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:jar", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false } + + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/heavy.json b/common/src/main/resources/data/sable/tags/block/heavy.json new file mode 100644 index 0000000..4396b4d --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/heavy.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#c:stones", + "#c:cobblestones", + "minecraft:blackstone", + "minecraft:basalt", + "minecraft:smooth_basalt", + "minecraft:polished_basalt", + "minecraft:obsidian", + "minecraft:crying_obsidian" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/light.json b/common/src/main/resources/data/sable/tags/block/light.json new file mode 100644 index 0000000..de8caa4 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/light.json @@ -0,0 +1,72 @@ +{ + "replace": false, + "values": [ + "#minecraft:planks", + "#minecraft:logs", + "#minecraft:slabs", + "#minecraft:stairs", + "minecraft:piston_head", + "minecraft:barrel", + "minecraft:chest", + "#minecraft:bamboo_blocks", + "#c:clusters", + "#c:chests/wooden", + { "id": "create:belt", "required": false }, + { "id": "create:track", "required": false }, + { "id": "create:nixie_tube", "required": false }, + { "id": "create:desk_bell", "required": false }, + { "id": "create:piston_extension_pole", "required": false }, + { "id": "create:turntable", "required": false }, + { "id": "create:andesite_funnel", "required": false }, + { "id": "create:brass_funnel", "required": false }, + { "id": "create:factory_gauge", "required": false }, + { "id": "create:display_link", "required": false }, + { "id": "create:stock_link", "required": false }, + { "id": "create:cardboard_block", "required": false }, + { "id": "create:bound_cardboard_block", "required": false }, + + { "id": "create:andesite_encased_shaft", "required": false }, + { "id": "create:andesite_encased_cogwheel", "required": false }, + { "id": "create:andesite_encased_large_cogwheel", "required": false }, + + { "id": "create:brass_encased_shaft", "required": false }, + { "id": "create:brass_encased_cogwheel", "required": false }, + { "id": "create:brass_encased_large_cogwheel", "required": false }, + + { "id": "create:shaft", "required": false }, + { "id": "create:cogwheel", "required": false }, + { "id": "create:large_cogwheel", "required": false }, + + { "id": "create:hand_crank", "required": false }, + { "id": "#create:valve_handles", "required": false }, + { "id": "#create:seats", "required": false }, + + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:beams", "required": false }, + + { "id": "#woodworks:wooden_boards", "required": false }, + + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hollow_logs", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:presents", "required": false }, + { "id": "#supplementaries:trapped_presents", "required": false }, + + { "id": "#architects_palette:boards", "required": false }, + + { "id": "#storagedrawers:full_drawers", "required": false }, + { "id": "#storagedrawers:trim", "required": false }, + + { "id": "#another_furniture:drawers", "required": false } + ], + "remove": [ + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#quark:wooden_vertical_slabs" + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/pistons.json b/common/src/main/resources/data/sable/tags/block/pistons.json new file mode 100644 index 0000000..5570772 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/pistons.json @@ -0,0 +1,6 @@ +{ + "values": [ + "minecraft:piston", + "minecraft:sticky_piston" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/quarter_volume.json b/common/src/main/resources/data/sable/tags/block/quarter_volume.json new file mode 100644 index 0000000..ad2762c --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/quarter_volume.json @@ -0,0 +1,99 @@ +{ + "replace": false, + "values": [ + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:moss_carpet", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + "#sable:diode", + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "#quark:posts", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/slippery.json b/common/src/main/resources/data/sable/tags/block/slippery.json new file mode 100644 index 0000000..d8480b4 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/slippery.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:ice", + + { "id": "architects_palette:polished_packed_ice", "required": false }, + { "id": "architects_palette:polished_packed_ice_slab", "required": false }, + { "id": "architects_palette:polished_packed_ice_stairs", "required": false }, + { "id": "architects_palette:polished_packed_ice_wall", "required": false }, + { "id": "architects_palette:chiseled_packed_ice", "required": false }, + { "id": "architects_palette:packed_ice_pillar", "required": false } + ] +} diff --git a/common/src/main/resources/data/sable/tags/block/super_heavy.json b/common/src/main/resources/data/sable/tags/block/super_heavy.json new file mode 100644 index 0000000..95d1e9f --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/super_heavy.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + "#c:storage_blocks", + "#minecraft:anvil", + "minecraft:heavy_core" + ], + "remove": [ + { "id": "create:cardboard_block", "required": false }, + "minecraft:copper_block", + "minecraft:slime_block", + "minecraft:bone_block" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/block/super_light.json b/common/src/main/resources/data/sable/tags/block/super_light.json new file mode 100644 index 0000000..73de5e9 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/block/super_light.json @@ -0,0 +1,118 @@ +{ + "replace": false, + "values": [ + "#minecraft:wool", + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:leaves", + "#minecraft:saplings", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:lily_pad", + "minecraft:big_dripleaf", + "minecraft:turtle_egg", + "minecraft:moss_carpet", + "minecraft:snow", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + "#sable:diode", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + { "id": "#create:windmill_sails", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "#farmersdelight:straw_blocks", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:feeding_trough", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "quark:paper_lantern", "required": false }, + { "id": "quark:paper_lantern_sakura", "required": false }, + { "id": "#quark:wooden_vertical_slabs", "required": false }, + { "id": "#quark:posts", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:jar", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false }, + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/common/src/main/resources/data/sable/tags/entity_type/create_contraption.json b/common/src/main/resources/data/sable/tags/entity_type/create_contraption.json new file mode 100644 index 0000000..f83a24f --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/create_contraption.json @@ -0,0 +1,10 @@ +{ + "replace": false, + "values": [ + { "id": "create:contraption", "required": false }, + { "id": "create:stationary_contraption", "required": false }, + { "id": "create:oriented_contraption", "required": false }, + { "id": "create:gantry_contraption", "required": false }, + { "id": "create:carriage_contraption", "required": false } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/entity_type/destroy_when_leaving_plot.json b/common/src/main/resources/data/sable/tags/entity_type/destroy_when_leaving_plot.json new file mode 100644 index 0000000..131ae63 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/destroy_when_leaving_plot.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + { "id": "exposure:camera_stand", "required": false }, + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/entity_type/destroy_with_sub_level.json b/common/src/main/resources/data/sable/tags/entity_type/destroy_with_sub_level.json new file mode 100644 index 0000000..96d7061 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/destroy_with_sub_level.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#sable:super_glue", + { "id": "create:seat", "required": false }, + "#sable:create_contraption" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/entity_type/retain_in_sub_level.json b/common/src/main/resources/data/sable/tags/entity_type/retain_in_sub_level.json new file mode 100644 index 0000000..d82b0b6 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/retain_in_sub_level.json @@ -0,0 +1,27 @@ +{ + "replace": false, + "values": [ + "#sable:create_contraption", + "#sable:super_glue", + "#sable:wall_entities", + { "id": "create:seat", "required": false }, + { "id": "blockbox:seat", "required": false }, + { "id": "botania:mana_burst", "required": false }, + { "id": "botania:corporea_burst", "required": false }, + { "id": "botania:spark", "required": false }, + { "id": "exposure:camera_stand", "required": false }, + "minecraft:snow_golem", + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart", + "minecraft:command_block_minecart", + "minecraft:block_display", + "minecraft:item_display", + "minecraft:text_display", + "minecraft:marker", + "minecraft:leash_knot" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/entity_type/super_glue.json b/common/src/main/resources/data/sable/tags/entity_type/super_glue.json new file mode 100644 index 0000000..7fc40eb --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/super_glue.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + { "id": "create:super_glue", "required": false } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/entity_type/wall_entities.json b/common/src/main/resources/data/sable/tags/entity_type/wall_entities.json new file mode 100644 index 0000000..c36c99c --- /dev/null +++ b/common/src/main/resources/data/sable/tags/entity_type/wall_entities.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:painting", + "minecraft:item_frame", + "minecraft:glow_item_frame", + { "id": "create:crafting_blueprint", "required": false }, + { "id": "exposure:glass_photograph_frame", "required": false }, + { "id": "exposure:photograph_frame", "required": false }, + { "id": "labels:label", "required": false } + ] +} \ No newline at end of file diff --git a/common/src/main/resources/data/sable/tags/item/paddles.json b/common/src/main/resources/data/sable/tags/item/paddles.json new file mode 100644 index 0000000..6fa1ee7 --- /dev/null +++ b/common/src/main/resources/data/sable/tags/item/paddles.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#minecraft:shovels" + ] +} \ No newline at end of file diff --git a/common/src/main/resources/natives/sable_rapier/LICENSE-RAPIER b/common/src/main/resources/natives/sable_rapier/LICENSE-RAPIER new file mode 100644 index 0000000..97f4383 --- /dev/null +++ b/common/src/main/resources/natives/sable_rapier/LICENSE-RAPIER @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Sébastien Crozet + + 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 + + http://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. diff --git a/common/src/main/resources/natives/sable_rapier/README.md b/common/src/main/resources/natives/sable_rapier/README.md new file mode 100644 index 0000000..e774f58 --- /dev/null +++ b/common/src/main/resources/natives/sable_rapier/README.md @@ -0,0 +1,2 @@ +The natives in this folder are for Sable's Rapier physics pipeline. +They contain a slightly modified version of Rapier visible at https://github.com/ryanhcode/rapier (view LICENSE-RAPIER). \ No newline at end of file diff --git a/common/src/main/resources/natives/sable_rapier/sable_rapier_binaries.zip.l4z b/common/src/main/resources/natives/sable_rapier/sable_rapier_binaries.zip.l4z new file mode 100644 index 0000000..022e303 Binary files /dev/null and b/common/src/main/resources/natives/sable_rapier/sable_rapier_binaries.zip.l4z differ diff --git a/common/src/main/resources/sable.accesswidener b/common/src/main/resources/sable.accesswidener new file mode 100644 index 0000000..0258ae4 --- /dev/null +++ b/common/src/main/resources/sable.accesswidener @@ -0,0 +1,118 @@ +accessWidener v2 named + +accessible class net/minecraft/client/multiplayer/ClientChunkCache$Storage + +accessible field net/minecraft/server/level/ChunkHolder fullChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder tickingChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder entityTickingChunkFuture Ljava/util/concurrent/CompletableFuture; + +accessible class net/minecraft/server/level/ServerChunkCache$ChunkAndHolder +accessible method net/minecraft/server/level/ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V + +accessible field net/minecraft/server/network/ServerCommonPacketListenerImpl connection Lnet/minecraft/network/Connection; + +accessible field net/minecraft/server/level/ChunkMap updatingChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; +accessible field net/minecraft/server/level/ChunkMap visibleChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; + +accessible field net/minecraft/server/level/ChunkLevel ENTITY_TICKING_LEVEL I +accessible field net/minecraft/server/level/ChunkLevel BLOCK_TICKING_LEVEL I +accessible method net/minecraft/server/network/PlayerChunkSender sendChunk (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V + +accessible field net/minecraft/world/level/ClipContext block Lnet/minecraft/world/level/ClipContext$Block; +accessible field net/minecraft/world/level/ClipContext fluid Lnet/minecraft/world/level/ClipContext$Fluid; +accessible field net/minecraft/world/level/ClipContext collisionContext Lnet/minecraft/world/phys/shapes/CollisionContext; + +accessible method net/minecraft/server/level/ChunkMap onFullChunkStatusChange (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V + +accessible field net/minecraft/client/particle/Particle xo D +accessible field net/minecraft/client/particle/Particle yo D +accessible field net/minecraft/client/particle/Particle zo D +accessible field net/minecraft/client/particle/Particle x D +accessible field net/minecraft/client/particle/Particle y D +accessible field net/minecraft/client/particle/Particle z D + + +accessible field net/minecraft/world/level/lighting/LevelLightEngine blockEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible field net/minecraft/world/level/lighting/LevelLightEngine skyEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible method net/minecraft/server/level/ThreadedLevelLightEngine runUpdate ()V + +extendable method net/minecraft/server/level/GenerationChunkHolder rescheduleChunkTask (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + +accessible method net/minecraft/server/level/ThreadedLevelLightEngine updateChunkStatus (Lnet/minecraft/world/level/ChunkPos;)V + +accessible field net/minecraft/client/renderer/block/BlockRenderDispatcher modelRenderer Lnet/minecraft/client/renderer/block/ModelBlockRenderer; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace +accessible field net/minecraft/client/renderer/RenderStateShard name Ljava/lang/String; + +# Assembly +accessible method net/minecraft/world/entity/decoration/HangingEntity calculateSupportBox ()Lnet/minecraft/world/phys/AABB; + +# Directional Shading +accessible field net/minecraft/client/renderer/block/ModelBlockRenderer CACHE Ljava/lang/ThreadLocal; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$Cache + +# UDP Networking +accessible field net/minecraft/network/Connection channel Lio/netty/channel/Channel; + +# Serialization +accessible field net/minecraft/world/level/storage/DimensionDataStorage dataFolder Ljava/io/File; +accessible method net/minecraft/server/level/ChunkMap getChunks ()Ljava/lang/Iterable; +accessible method net/minecraft/server/level/ChunkMap scheduleUnload (JLnet/minecraft/server/level/ChunkHolder;)V +accessible field net/minecraft/server/level/ChunkMap toDrop Lit/unimi/dsi/fastutil/longs/LongSet; +accessible field net/minecraft/server/level/ChunkMap modified Z +accessible field net/minecraft/server/level/ChunkMap unloadQueue Ljava/util/Queue; +accessible method net/minecraft/server/level/ChunkMap saveChunkIfNeeded (Lnet/minecraft/server/level/ChunkHolder;)Z +accessible field net/minecraft/server/level/ChunkMap chunkSaveCooldowns Lit/unimi/dsi/fastutil/longs/Long2LongMap; + +# Shadows +accessible field net/minecraft/client/renderer/ShaderInstance samplerLocations Ljava/util/List; + +# Particles +accessible field net/minecraft/client/particle/Particle xd D +accessible field net/minecraft/client/particle/Particle yd D +accessible field net/minecraft/client/particle/Particle zd D + +# Attributes +accessible field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; +mutable field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; + +# Entity Storage +accessible field net/minecraft/server/level/ServerLevel entityManager Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; +accessible field net/minecraft/world/level/entity/PersistentEntitySectionManager sectionStorage Lnet/minecraft/world/level/entity/EntitySectionStorage; + +# Lithum Compat +accessible class net/minecraft/server/level/ServerChunkCache$MainThreadExecutor + +# Entity Kicking +accessible field net/minecraft/world/entity/Entity levelCallback Lnet/minecraft/world/level/entity/EntityInLevelCallback; + +# Distance Manager +accessible class net/minecraft/server/level/ChunkMap$DistanceManager + +# Gizmo +accessible method net/minecraft/client/renderer/GameRenderer getFov (Lnet/minecraft/client/Camera;FZ)D + +# Sub-Level rendering +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection updateGlobalBlockEntities (Ljava/util/Collection;)V +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection setCompiled (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +accessible field net/minecraft/client/renderer/LevelRenderer cullingFrustum Lnet/minecraft/client/renderer/culling/Frustum; +accessible field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; +mutable field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; + +# Entity Getting +accessible method net/minecraft/world/level/Level getEntities ()Lnet/minecraft/world/level/entity/LevelEntityGetter; + +# Respawning +accessible class net/minecraft/server/level/ServerPlayer$RespawnPosAngle +accessible method net/minecraft/server/level/ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +accessible method net/minecraft/server/level/ServerPlayer findRespawnAndUseSpawnBlock (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; + +# Entity Riding +accessible method net/minecraft/world/entity/LivingEntity dismountVehicle (Lnet/minecraft/world/entity/Entity;)V +accessible field net/minecraft/world/entity/Entity removalReason Lnet/minecraft/world/entity/Entity$RemovalReason; + +extendable method net/minecraft/world/entity/Entity getEyePosition (F)Lnet/minecraft/world/phys/Vec3; +extendable method net/minecraft/world/entity/Entity setRemoved (Lnet/minecraft/world/entity/Entity$RemovalReason;)V + +#Abstract hurting projectile accel +accessible field net/minecraft/world/entity/projectile/AbstractHurtingProjectile accelerationPower D \ No newline at end of file diff --git a/common/src/main/resources/sable.mixins.json b/common/src/main/resources/sable.mixins.json new file mode 100644 index 0000000..ad2263a --- /dev/null +++ b/common/src/main/resources/sable.mixins.json @@ -0,0 +1,223 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_decal_render.LevelRendererMixin", + "camera.camera_rotation.CompassItemPropertyFunctionMixin", + "camera.camera_rotation.EntityMixin", + "camera.camera_rotation.GuiMixin", + "camera.camera_zoom.CameraMixin", + "camera.camera_zoom.MouseHandlerMixin", + "camera.new_camera_types.CameraTypeMixin", + "camera.new_camera_types.GameRendererMixin", + "camera.new_camera_types.MinecraftMixin", + "clip_overwrite.ClientLevelMixin", + "clip_overwrite.GameRendererMixin", + "compatibility.iris.ExtendedShaderMixin", + "config.GameRendererAccessor", + "debug_render.DebugRendererMixin", + "debug_render.DebugScreenOverlayMixin", + "debug_render.LevelRendererMixin", + "dynamic_directional_shading.AmbientOcclusionFaceMixin", + "dynamic_directional_shading.ModelBlockRendererCacheMixin", + "dynamic_directional_shading.ModelBlockRendererMixin", + "entity.entities_stick_sublevels.ClientPacketListenerMixin", + "entity.entities_stick_sublevels.EntityRenderDispatcherMixin", + "entity.entities_stick_sublevels.effects.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.RemotePlayerMixin", + "entity.entities_turn_with_sub_levels.GameRendererMixin", + "entity.entity_leashing.EntityRendererMixin", + "entity.entity_rendering.EntityRendererMixin", + "entity.entity_rendering.LevelRendererMixin", + "entity.entity_rendering.shadows.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.ClientPacketListenerMixin", + "entity.entity_rotations_and_riding.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.EntityRendererMixin", + "entity.entity_rotations_and_riding.LocalPlayerMixin", + "entity.entity_sublevel_collision.CameraMixin", + "entity.entity_swimming.CameraMixin", + "options.OptionsScreenMixin", + "particle.BlockMarkerMixin", + "particle.ClientLevelMixin", + "particle.FlameParticleMixin", + "particle.LevelRendererMixin", + "particle.ParticleEngineMixin", + "particle.ParticleMixin", + "particle.SuspendedParticleMixin", + "particle.TerrainParticleMixin", + "player_freezing.LocalPlayerMixin", + "plot.ClientChunkCacheMixin", + "plot.MinecraftMixin", + "plot.lighting.ClientPacketListenerMixin", + "plot.lighting.RenderChunkRegionMixin", + "punching.MinecraftMixin", + "punching.MultiPlayerGameModeMixin", + "respawn_point.sleeping.LivingEntityRendererMixin", + "sky_light_shadow.LevelRendererMixin", + "stop_rain.LevelRenderMixin", + "sublevel_render.BlockEntityRenderDispatcherMixin", + "sublevel_render.LevelRendererMixin", + "sublevel_render.RenderSectionAccessor", + "sublevel_render.RenderSectionMixin", + "sublevel_render.block_entity_render.LevelRendererMixin", + "sublevel_render.fancy.ProgramMixin", + "sublevel_render.impl.sodium.LevelRendererMixin", + "sublevel_render.impl.sodium.SodiumWorldRendererMixin", + "sublevel_render.impl.vanilla.LevelRendererMixin", + "sublevel_render.impl.vanilla.ViewAreaMixin", + "sublevel_render.impl.vanilla.water_occlusion.LevelRendererMixin", + "sublevel_sounds.AbstractSoundInstanceMixin", + "sublevel_sounds.ChannelAccessor", + "sublevel_sounds.ClientLevelMixin", + "sublevel_sounds.SoundEngineMixin", + "toast.IntegratedServerMixin", + "water_occlusion.CameraMixin", + "water_occlusion.FogRendererMixin", + "water_occlusion.GameRendererMixin" + ], + "mixins": [ + "assembly.AbstractFurnaceBlockEntityMixin", + "block_decal_render.ServerLevelMixin", + "block_placement.BlockPlaceContextMixin", + "block_placement.EntityGetterMixin", + "block_placement.UseOnContextMixin", + "block_properties.BlockStateMixin", + "chunk_container_replacement.LevelChunkSectionMixin", + "climbing_sub_levels.LivingEntityMixin", + "clip_overwrite.BlockGetterMixin", + "clip_overwrite.ClipContextMixin", + "clip_overwrite.EntityMixin", + "clip_overwrite.HitResultMixin", + "command.ArgumentTypeInfosMixin", + "command.DataCommandsMixin", + "command.ExecuteCommandMixin", + "compatibility.computercraft.WirelessNetworkMixin", + "compatibility.exposure.CameraPosesMixin", + "compatibility.exposure.CameraStandEntityMixin", + "compatibility.jade.BlockAccessorImplMixin", + "compatibility.jade.RayTracingMixin", + "compatibility.jadeaddons.CreatePluginMixin", + "compatibility.vista.LODMixin", + "compatibility.vista.ViewFinderAccessMixin", + "compatibility.vista.ViewFinderControllerMixin", + "death_message.CombatTrackerMixin", + "death_message.EntityMixin", + "enchanting_table.EnchantingTableBlockEntityMixin", + "entity.arrows_hit_blocks.AbstractArrowMixin", + "entity.entities_in_blocks.EntityMixin", + "entity.entities_stick_sublevels.EntityMixin", + "entity.entities_stick_sublevels.LivingEntityMixin", + "entity.entities_stick_sublevels.ServerEntityMixin", + "entity.entities_stick_sublevels.effects.EntityMixin", + "entity.entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosRotMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundTeleportEntityPacketMixin", + "entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketMixin", + "entity.entities_stick_sublevels.player.ServerGamePacketListenerImplMixin", + "entity.entities_stick_sublevels.player.ServerPlayerMixin", + "entity.entity_aabb_lookup.LevelsMixin", + "entity.entity_ai.EatBlockGoalMixin", + "entity.entity_collision.CollisionContextMixin", + "entity.entity_collision.EntityMixin", + "entity.entity_interaction.ProjectileUtilMixin", + "entity.entity_kicking.BlockMixin", + "entity.entity_kicking.ServerLevelMixin", + "entity.entity_leashing.LeashableMixin", + "entity.entity_pathfinding.FlyNodeEvaluatorMixin", + "entity.entity_pathfinding.GroundPathNavigationMixin", + "entity.entity_pathfinding.PathfindingContextMixin", + "entity.entity_pathfinding.PathMixin", + "entity.entity_pathfinding.PathNavigationMixin", + "entity.entity_pathfinding.RandomPosMixin", + "entity.entity_pathfinding.WalkNodeEvaluatorMixin", + "entity.entity_rotations_and_riding.BlockMixin", + "entity.entity_rotations_and_riding.EntityMixin", + "entity.entity_rotations_and_riding.EntityTypeMixin", + "entity.entity_rotations_and_riding.LivingEntityMixin", + "entity.entity_rotations_and_riding.PlayerMixin", + "entity.entity_rotations_and_riding.ServerEntityMixin", + "entity.entity_rotations_and_riding.ServerPlayerMixin", + "entity.entity_sublevel_collision.AbstractMinecartMixin", + "entity.entity_sublevel_collision.EntityMixin", + "entity.entity_sublevel_collision.ItemEntityMixin", + "entity.entity_sublevel_collision.LevelMixin", + "entity.entity_sublevel_collision.LivingEntityMixin", + "entity.entity_sublevel_collision.PlayerMixin", + "entity.entity_sublevel_collision.ServerGamePacketListenerImplMixin", + "entity.entity_tracking.TrackedEntityMixin", + "entity.entity_unloading.PersistentEntitySectionManagerMixin", + "entity.falling_block.FallingBlockEntityMixin", + "entity.projectile.ProjectileMixin", + "entity.server_entities_tick.ChunkMapMixin", + "entity.server_entities_tick.ServerLevelMixin", + "entity.sublevels_block_sky.SubLevelsBlockSkyMixin", + "entity.tamed_teleport.TamableAnimalMixin", + "entity.teleport_players.ServerPlayerMixin", + "entity.tnt_jumps.PrimedTntMixin", + "entity.trident.ThrownTridentMixin", + "explosion.ExplosionMixin", + "explosion.ServerLevelMixin", + "extension.EntityMixin", + "fluids_on_sub_levels.FlowingFluidMixin", + "game_test.GameTestInfoMixin", + "game_test.StructureUtilsMixin", + "game_test.TestCommandMixin", + "impact.BeehiveBlockMixin", + "impact.BellBlockMixin", + "impact.TntBlockMixin", + "interaction_distance.EntityMixin", + "interaction_distance.PlayerMixin", + "level_accelerator.ServerChunkCacheAccessor", + "particle.ServerLevelMixin", + "physics.ServerLevelMixin", + "player_freezing.PlayerListMixin", + "player_freezing.PlayerMixin", + "player_freezing.ServerPlayerMixin", + "plot.ChunkMapMixin", + "plot.LevelChunkMixin", + "plot.LevelsMixin", + "plot.PlayerListMixin", + "plot.ServerChunkCacheMixin", + "plot.ServerLevelMixin", + "plot.lighting.BlockAndTintGetterMixin", + "plot.lighting.LevelChunkMixin", + "plot.serialization.ChunkMapMixin", + "plot.serialization.LevelChunkTicksMixin", + "portal.EntityMixin", + "portal.NetherPortalBlockMixin", + "prevent_freezing.BiomeMixin", + "prevent_overgrowth.VineBlockMixin", + "punching.ItemInvoker", + "recoil.ProjectileDispenseBehaviorMixin", + "respawn_point.ServerPlayerMixin", + "respawn_point.sleeping.LivingEntityMixin", + "respawn_point.sleeping.ServerPlayerMixin", + "sculk_vibrations.EuclideanGameEventListenerRegistryMixin", + "sculk_vibrations.GameEventDispatcherMixin", + "sculk_vibrations.VibrationSystemListenerMixin", + "sculk_vibrations.VibrationSystemTickerMixin", + "sign_interaction.SignBlockEntityMixin", + "tracking_points.EntityMixin", + "tracking_points.ServerPlayerMixin", + "udp.ConnectionMixin", + "udp.MinecraftServerMixin", + "udp.PlayerListMixin", + "udp.ServerConnectionListenerMixin", + "voxel_shape_iteration.BitSetDiscreteVoxelShapeAccessor", + "voxel_shape_iteration.DiscreteVoxelShapeAccessor", + "voxel_shape_iteration.VoxelShapeMixin", + "water_occlusion.EntityMixin", + "water_occlusion.LevelsMixin", + "water_occlusion.WaterFluidMixin", + "world_border.LevelMixin", + "world_border.WorldBorderMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/common/src/main/rust/.cargo/config.toml b/common/src/main/rust/.cargo/config.toml new file mode 100644 index 0000000..d9d6d37 --- /dev/null +++ b/common/src/main/rust/.cargo/config.toml @@ -0,0 +1,6 @@ +[target.x86_64-pc-windows-gnu] +rustflags = ["-C", "link-arg=-Wl,-Brepro"] + +[target.x86_64-apple-darwin] +# Required to avoid a rustc hang when building for this target. +rustflags = ["-C", "codegen-units=2"] diff --git a/common/src/main/rust/Cargo.lock b/common/src/main/rust/Cargo.lock new file mode 100644 index 0000000..d75741c --- /dev/null +++ b/common/src/main/rust/Cargo.lock @@ -0,0 +1,1502 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 4 + +[[package]] +name = "aho-corasick" +version = "1.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ddd31a130427c27518df266943a5308ed92d4b226cc639f5a8f1002816174301" +dependencies = [ + "memchr", +] + +[[package]] +name = "alloca" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5a7d05ea6aea7e9e64d25b9156ba2fee3fdd659e34e41063cd2fc7cd020d7f4" +dependencies = [ + "cc", +] + +[[package]] +name = "allocator-api2" +version = "0.2.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923" + +[[package]] +name = "anes" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4b46cbb362ab8752921c97e041f5e366ee6297bd428a31275b9fcf1e380f7299" + +[[package]] +name = "anstyle" +version = "1.0.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "940b3a0ca603d1eade50a4846a2afffd5ef57a9feac2c0e2ec2e14f9ead76000" + +[[package]] +name = "approx" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6" +dependencies = [ + "num-traits", +] + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "autocfg" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08606f8c3cbf4ce6ec8e28fb0014a2c086708fe954eaa885384a6165172e7e8" + +[[package]] +name = "bitflags" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "843867be96c8daad0d758b57df9392b6d8d271134fce549de6ce169ff98a92af" + +[[package]] +name = "bumpalo" +version = "3.20.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5d20789868f4b01b2f2caec9f5c4e0213b41e3e5702a50157d699ae31ced2fcb" + +[[package]] +name = "bytemuck" +version = "1.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8efb64bd706a16a1bdde310ae86b351e4d21550d98d056f22f8a7f7a2183fec" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33" + +[[package]] +name = "cast" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37b2a672a2cb129a2e41c10b1224bb368f9f37a2b16b612598138befd7b37eb5" + +[[package]] +name = "cc" +version = "1.2.57" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a0dd1ca384932ff3641c8718a02769f1698e7563dc6974ffd03346116310423" +dependencies = [ + "find-msvc-tools", + "shlex", +] + +[[package]] +name = "cesu8" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c" + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half", +] + +[[package]] +name = "clap" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b193af5b67834b676abd72466a96c1024e6a6ad978a1f484bd90b85c94041351" +dependencies = [ + "clap_builder", +] + +[[package]] +name = "clap_builder" +version = "4.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "714a53001bf66416adb0e2ef5ac857140e7dc3a0c48fb28b2f10762fc4b5069f" +dependencies = [ + "anstyle", + "clap_lex", +] + +[[package]] +name = "clap_lex" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9" + +[[package]] +name = "colored" +version = "1.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a5f741c91823341bebf717d4c71bda820630ce065443b58bd1b7451af008355" +dependencies = [ + "is-terminal", + "lazy_static", + "winapi", +] + +[[package]] +name = "colored" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "117725a109d387c937a1533ce01b450cbde6b88abceea8473c4d7a85853cda3c" +dependencies = [ + "lazy_static", + "windows-sys 0.59.0", +] + +[[package]] +name = "combine" +version = "4.6.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd" +dependencies = [ + "bytes", + "memchr", +] + +[[package]] +name = "criterion" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "950046b2aa2492f9a536f5f4f9a3de7b9e2476e575e05bd6c333371add4d98f3" +dependencies = [ + "alloca", + "anes", + "cast", + "ciborium", + "clap", + "criterion-plot", + "itertools", + "num-traits", + "oorandom", + "page_size", + "plotters", + "rayon", + "regex", + "serde", + "serde_json", + "tinytemplate", + "walkdir", +] + +[[package]] +name = "criterion-plot" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8d80a2f4f5b554395e47b5d8305bc3d27813bacb73493eb1001e8f76dae29ea" +dependencies = [ + "cast", + "itertools", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28" + +[[package]] +name = "crunchy" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "460fbee9c2c2f33933d720630a6a0bac33ba7053db5344fac858d4b8952d77d5" + +[[package]] +name = "dashmap" +version = "7.0.0-rc2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e4a1e35a65fe0538a60167f0ada6e195ad5d477f6ddae273943596d4a1a5730b" +dependencies = [ + "cfg-if", + "crossbeam-utils", + "equivalent", + "hashbrown 0.15.5", + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "downcast-rs" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "117240f60069e65410b3ae1bb213295bd828f707b5bec6596a1afc8793ce0cbc" + +[[package]] +name = "either" +version = "1.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "48c757948c5ede0e46177b7add2e67155f70e33c07fea8284df6576da70b3719" + +[[package]] +name = "ena" +version = "0.14.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eabffdaee24bd1bf95c5ef7cec31260444317e72ea56c4c91750e8b7ee58d5f1" +dependencies = [ + "log", +] + +[[package]] +name = "equivalent" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "877a4ace8713b0bcf2a4e7eec82529c029f1d0619886d18145fea96c3ffe5c0f" + +[[package]] +name = "fern" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9f0c14694cbd524c8720dd69b0e3179344f04ebb5f90f2e4a440c6ea3b2f1ee" +dependencies = [ + "colored 1.9.4", + "log", +] + +[[package]] +name = "find-msvc-tools" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5baebc0774151f905a1a2cc41989300b1e6fbb29aff0ceffa1064fdd3088d582" + +[[package]] +name = "foldhash" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9c4f5dac5e15c24eb999c26181a6ca40b39fe946cbe4c263c7209467bc83af2" + +[[package]] +name = "foldhash" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77ce24cb58228fbb8aa041425bb1050850ac19177686ea6e0f41a70416f56fdb" + +[[package]] +name = "glam" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "333928d5eb103c5d4050533cec0384302db6be8ef7d3cebd30ec6a35350353da" + +[[package]] +name = "glam" +version = "0.15.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3abb554f8ee44336b72d522e0a7fe86a29e09f839a36022fa869a7dfe941a54b" + +[[package]] +name = "glam" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4126c0479ccf7e8664c36a2d719f5f2c140fbb4f9090008098d2c291fa5b3f16" + +[[package]] +name = "glam" +version = "0.17.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01732b97afd8508eee3333a541b9f7610f454bb818669e66e90f5f57c93a776" + +[[package]] +name = "glam" +version = "0.18.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "525a3e490ba77b8e326fb67d4b44b4bd2f920f44d4cc73ccec50adc68e3bee34" + +[[package]] +name = "glam" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b8509e6791516e81c1a630d0bd7fbac36d2fa8712a9da8662e716b52d5051ca" + +[[package]] +name = "glam" +version = "0.20.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f43e957e744be03f5801a55472f593d43fabdebf25a4585db250f04d86b1675f" + +[[package]] +name = "glam" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "518faa5064866338b013ff9b2350dc318e14cc4fcd6cb8206d7e7c9886c98815" + +[[package]] +name = "glam" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "12f597d56c1bd55a811a1be189459e8fad2bbc272616375602443bdfb37fa774" + +[[package]] +name = "glam" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e4afd9ad95555081e109fe1d21f2a30c691b5f0919c67dfa690a2e1eb6bd51c" + +[[package]] +name = "glam" +version = "0.24.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5418c17512bdf42730f9032c74e1ae39afc408745ebb2acf72fbc4691c17945" + +[[package]] +name = "glam" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "151665d9be52f9bb40fc7966565d39666f2d1e69233571b71b87791c7e0528b3" + +[[package]] +name = "glam" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e05e7e6723e3455f4818c7b26e855439f7546cf617ef669d1adedb8669e5cb9" + +[[package]] +name = "glam" +version = "0.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "779ae4bf7e8421cf91c0b3b64e7e8b40b862fba4d393f59150042de7c4965a94" + +[[package]] +name = "glam" +version = "0.29.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8babf46d4c1c9d92deac9f7be466f76dfc4482b6452fc5024b5e8daf6ffeb3ee" + +[[package]] +name = "glam" +version = "0.30.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19fc433e8437a212d1b6f1e68c7824af3aed907da60afa994e7f542d18d12aa9" +dependencies = [ + "approx", + "libm", +] + +[[package]] +name = "glamx" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "375b4fa374a343fef990a18a6e0413d54bd990c6d7b8c7ada2d3c884275edea3" +dependencies = [ + "approx", + "glam 0.30.10", + "nalgebra", + "num-traits", + "simba", +] + +[[package]] +name = "half" +version = "2.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ea2d84b969582b4b1864a92dc5d27cd2b77b622a8d79306834f1be5ba20d84b" +dependencies = [ + "cfg-if", + "crunchy", + "zerocopy", +] + +[[package]] +name = "hash32" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47d60b12902ba28e2730cd37e95b8c9223af2808df9e902d4df49588d1470606" +dependencies = [ + "byteorder", +] + +[[package]] +name = "hashbrown" +version = "0.15.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1" +dependencies = [ + "allocator-api2", + "equivalent", + "foldhash 0.1.5", +] + +[[package]] +name = "hashbrown" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" +dependencies = [ + "foldhash 0.2.0", +] + +[[package]] +name = "heapless" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0bfb9eb618601c89945a70e254898da93b13be0388091d42117462b265bb3fad" +dependencies = [ + "hash32", + "stable_deref_trait", +] + +[[package]] +name = "hermit-abi" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fc0fef456e4baa96da950455cd02c081ca953b141298e41db3fc7e36b1da849c" + +[[package]] +name = "humantime" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "135b12329e5e3ce057a9f972339ea52bc954fe1e9358ef27f95e89716fbc5424" + +[[package]] +name = "is-terminal" +version = "0.4.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3640c1c38b8e4e43584d8df18be5fc6b0aa314ce6ebf51b53313d4306cca8e46" +dependencies = [ + "hermit-abi", + "libc", + "windows-sys 0.61.2", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f42a60cbdf9a97f5d2305f08a87dc4e09308d1276d28c869c684d7777685682" + +[[package]] +name = "jni" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97" +dependencies = [ + "cesu8", + "cfg-if", + "combine", + "jni-sys 0.3.1", + "log", + "thiserror 1.0.69", + "walkdir", + "windows-sys 0.45.0", +] + +[[package]] +name = "jni-sys" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41a652e1f9b6e0275df1f15b32661cf0d4b78d4d87ddec5e0c3c20f097433258" +dependencies = [ + "jni-sys 0.4.1", +] + +[[package]] +name = "jni-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c6377a88cb3910bee9b0fa88d4f42e1d2da8e79915598f65fb0c7ee14c878af2" +dependencies = [ + "jni-sys-macros", +] + +[[package]] +name = "jni-sys-macros" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" +dependencies = [ + "quote", + "syn", +] + +[[package]] +name = "js-sys" +version = "0.3.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49715b7073f385ba4bc528e5747d02e66cb39c6146efb66b781f131f0fb399c" +dependencies = [ + "once_cell", + "wasm-bindgen", +] + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" + +[[package]] +name = "libc" +version = "0.2.183" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b646652bf6661599e1da8901b3b9522896f01e736bad5f723fe7a3a27f899d" + +[[package]] +name = "libm" +version = "0.2.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6d2cec3eae94f9f509c767b45932f1ada8350c4bdb85af2fcab4a3c14807981" + +[[package]] +name = "lock_api" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "224399e74b87b5f3557511d98dff8b14089b3dadafcab6bb93eab67d3aace965" +dependencies = [ + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.29" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e5032e24019045c762d3c0f28f5b6b8bbf38563a65908389bf7978758920897" + +[[package]] +name = "marten" +version = "0.1.0" +dependencies = [ + "colored 2.2.0", + "fern", + "humantime", + "jni", + "log", +] + +[[package]] +name = "matrixmultiply" +version = "0.3.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a06de3016e9fae57a36fd14dba131fccf49f74b40b7fbdb472f96e361ec71a08" +dependencies = [ + "autocfg", + "rawpointer", +] + +[[package]] +name = "memchr" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8ca58f447f06ed17d5fc4043ce1b10dd205e060fb3ce5b979b8ed8e59ff3f79" + +[[package]] +name = "nalgebra" +version = "0.34.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4d5b3eff5cd580f93da45e64715e8c20a3996342f1e466599cf7a267a0c2f5f" +dependencies = [ + "approx", + "glam 0.14.0", + "glam 0.15.2", + "glam 0.16.0", + "glam 0.17.3", + "glam 0.18.0", + "glam 0.19.0", + "glam 0.20.5", + "glam 0.21.3", + "glam 0.22.0", + "glam 0.23.0", + "glam 0.24.2", + "glam 0.25.0", + "glam 0.27.0", + "glam 0.28.0", + "glam 0.29.3", + "glam 0.30.10", + "matrixmultiply", + "nalgebra-macros", + "num-complex", + "num-rational", + "num-traits", + "simba", + "typenum", +] + +[[package]] +name = "nalgebra-macros" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "973e7178a678cfd059ccec50887658d482ce16b0aa9da3888ddeab5cd5eb4889" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-derive" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "once_cell" +version = "1.21.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f7c3e4beb33f85d45ae3e3a1792185706c8e16d043238c593331cc7cd313b50" + +[[package]] +name = "oorandom" +version = "11.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d6790f58c7ff633d8771f42965289203411a5e5c68388703c06e14f24770b41e" + +[[package]] +name = "ordered-float" +version = "5.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f4779c6901a562440c3786d08192c6fbda7c1c2060edd10006b05ee35d10f2d" +dependencies = [ + "num-traits", +] + +[[package]] +name = "page_size" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30d5b2194ed13191c1999ae0704b7839fb18384fa22e49b57eeaa97d79ce40da" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2621685985a2ebf1c516881c026032ac7deafcda1a2c9b7850dc81e3dfcb64c1" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-link", +] + +[[package]] +name = "parry3d" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2e04d21bda5249438b5695e7f08f1655524a6025bcdb186c324b7a66562f2d61" +dependencies = [ + "approx", + "arrayvec", + "bitflags", + "downcast-rs", + "either", + "ena", + "foldhash 0.2.0", + "glamx", + "hashbrown 0.16.1", + "log", + "num-derive", + "num-traits", + "ordered-float", + "rstar", + "simba", + "slab", + "smallvec", + "spade", + "static_assertions", + "thiserror 2.0.18", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "plotters" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aeb6f403d7a4911efb1e33402027fc44f29b5bf6def3effcc22d7bb75f2b747" +dependencies = [ + "num-traits", + "plotters-backend", + "plotters-svg", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "plotters-backend" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df42e13c12958a16b3f7f4386b9ab1f3e7933914ecea48da7139435263a4172a" + +[[package]] +name = "plotters-svg" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51bae2ac328883f7acdfea3d66a7c35751187f870bc81f94563733a154d7a670" +dependencies = [ + "plotters-backend", +] + +[[package]] +name = "proc-macro2" +version = "1.0.106" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fd00f0bb2e90d81d1044c2b32617f68fcb9fa3bb7640c23e9c748e53fb30934" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "profiling" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3eb8486b569e12e2c32ad3e204dbaba5e4b5b216e9367044f25f1dba42341773" +dependencies = [ + "profiling-procmacros", +] + +[[package]] +name = "profiling-procmacros" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "52717f9a02b6965224f95ca2a81e2e0c5c43baacd28ca057577988930b6c3d5b" +dependencies = [ + "quote", + "syn", +] + +[[package]] +name = "quote" +version = "1.0.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41f2619966050689382d2b44f664f4bc593e129785a36d6ee376ddf37259b924" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "rapier3d" +version = "0.32.0" +source = "git+https://github.com/ryanhcode/rapier?rev=38e92f117590862481a53df6fc69a5d893e29186#38e92f117590862481a53df6fc69a5d893e29186" +dependencies = [ + "approx", + "bitflags", + "glamx", + "log", + "nalgebra", + "num-traits", + "parry3d", + "profiling", + "rayon", + "serde", + "simba", + "static_assertions", + "thiserror 2.0.18", + "wide", +] + +[[package]] +name = "rawpointer" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60a357793950651c4ed0f3f52338f53b2f809f32d83a07f72909fa13e4c6c1e3" + +[[package]] +name = "rayon" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368f01d005bf8fd9b1206fb6fa653e6c4a81ceb1466406b81792d87c5677a58f" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22e18b0f0062d30d4230b2e85ff77fdfe4326feb054b9783a3460d8435c8ab91" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "redox_syscall" +version = "0.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed2bf2547551a7053d6fdfafda3f938979645c44812fbfcda098faae3f1a362d" +dependencies = [ + "bitflags", +] + +[[package]] +name = "regex" +version = "1.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e10754a14b9137dd7b1e3e5b0493cc9171fdd105e0ab477f51b72e7f3ac0e276" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6e1dd4122fc1595e8162618945476892eefca7b88c52820e74af6262213cae8f" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc897dd8d9e8bd1ed8cdad82b5966c3e0ecae09fb1907d58efaa013543185d0a" + +[[package]] +name = "robust" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e27ee8bb91ca0adcf0ecb116293afa12d393f9c2b9b9cd54d33e8078fe19839" + +[[package]] +name = "rstar" +version = "0.12.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "421400d13ccfd26dfa5858199c30a5d76f9c54e0dba7575273025b43c5175dbb" +dependencies = [ + "heapless", + "num-traits", + "smallvec", +] + +[[package]] +name = "rustversion" +version = "1.0.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d" + +[[package]] +name = "sable_rapier" +version = "0.1.0" +dependencies = [ + "colored 2.2.0", + "criterion", + "dashmap", + "fern", + "humantime", + "jni", + "log", + "marten", + "rapier3d", + "rayon", +] + +[[package]] +name = "safe_arch" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96b02de82ddbe1b636e6170c21be622223aea188ef2e139be0a5b219ec215323" +dependencies = [ + "bytemuck", +] + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "serde" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a8e94ea7f378bd32cbbd37198a4a91436180c5bb472411e48b5ec2e2124ae9e" +dependencies = [ + "serde_core", + "serde_derive", +] + +[[package]] +name = "serde_core" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41d385c7d4ca58e59fc732af25c3983b67ac852c1a25000afe1175de458b67ad" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.228" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "serde_json" +version = "1.0.149" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "83fc039473c5595ace860d8c4fafa220ff474b3fc6bfdb4293327f1a37e94d86" +dependencies = [ + "itoa", + "memchr", + "serde", + "serde_core", + "zmij", +] + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "simba" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c99284beb21666094ba2b75bbceda012e610f5479dfcc2d6e2426f53197ffd95" +dependencies = [ + "approx", + "num-complex", + "num-traits", + "paste", + "wide", +] + +[[package]] +name = "slab" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c790de23124f9ab44544d7ac05d60440adc586479ce501c1d6d7da3cd8c9cf5" + +[[package]] +name = "smallvec" +version = "1.15.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67b1b7a3b5fe4f1376887184045fcf45c69e92af734b7aaddc05fb777b6fbd03" + +[[package]] +name = "spade" +version = "2.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb313e1c8afee5b5647e00ee0fe6855e3d529eb863a0fdae1d60006c4d1e9990" +dependencies = [ + "hashbrown 0.15.5", + "num-traits", + "robust", + "smallvec", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ce2be8dc25455e1f91df71bfa12ad37d7af1092ae736f3a6cd0e37bc7810596" + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "syn" +version = "2.0.117" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e665b8803e7b1d2a727f4023456bbbbe74da67099c585258af0ad9c5013b9b99" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "thiserror" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52" +dependencies = [ + "thiserror-impl 1.0.69", +] + +[[package]] +name = "thiserror" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4288b5bcbc7920c07a1149a35cf9590a2aa808e0bc1eafaade0b80947865fbc4" +dependencies = [ + "thiserror-impl 2.0.18", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.69" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "thiserror-impl" +version = "2.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "tinytemplate" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4d6b5f19ff7664e8c98d03e2139cb510db9b0a60b55f8e8709b689d939b6bc" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "typenum" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "562d481066bde0658276a35467c4af00bdc6ee726305698a55b86e61d7ad82bb" + +[[package]] +name = "unicode-ident" +version = "1.0.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e4313cd5fcd3dad5cafa179702e2b244f760991f45397d14d4ebf38247da75" + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "wasm-bindgen" +version = "0.2.114" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6532f9a5c1ece3798cb1c2cfdba640b9b3ba884f5db45973a6f442510a87d38e" +dependencies = [ + "cfg-if", + "once_cell", + "rustversion", + "wasm-bindgen-macro", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.114" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18a2d50fcf105fb33bb15f00e7a77b772945a2ee45dcf454961fd843e74c18e6" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.114" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03ce4caeaac547cdf713d280eda22a730824dd11e6b8c3ca9e42247b25c631e3" +dependencies = [ + "bumpalo", + "proc-macro2", + "quote", + "syn", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.114" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75a326b8c223ee17883a4251907455a2431acc2791c98c26279376490c378c16" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "web-sys" +version = "0.3.91" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "854ba17bb104abfb26ba36da9729addc7ce7f06f5c0f90f3c391f8461cca21f9" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "wide" +version = "0.7.33" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce5da8ecb62bcd8ec8b7ea19f69a51275e91299be594ea5cc6ef7819e16cd03" +dependencies = [ + "bytemuck", + "safe_arch", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2a7b1c03c876122aa43f3020e6c3c3ee5c05081c9a00739faf7503aeba10d22" +dependencies = [ + "windows-sys 0.61.2", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-sys" +version = "0.45.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" +dependencies = [ + "windows-targets 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "windows-targets" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "zerocopy" +version = "0.8.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "efbb2a062be311f2ba113ce66f697a4dc589f85e78a4aea276200804cea0ed87" +dependencies = [ + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.8.47" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e8bc7269b54418e7aeeef514aa68f8690b8c0489a06b0136e5f57c4c5ccab89" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "zmij" +version = "1.0.21" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8848ee67ecc8aedbaf3e4122217aff892639231befc6a1b58d29fff4c2cabaa" diff --git a/common/src/main/rust/Cargo.toml b/common/src/main/rust/Cargo.toml new file mode 100644 index 0000000..0600e54 --- /dev/null +++ b/common/src/main/rust/Cargo.toml @@ -0,0 +1,24 @@ +[workspace] +resolver = "3" +members = ["marten", "rapier"] + +[workspace.package] +edition = "2024" +version = "0.1.0" + +[workspace.dependencies] +marten = { path = "marten" } + +log = "0.4.22" +jni = "0.21.1" +colored = "2.1.0" +fern = { version = "0.6.2", features = ["colored"] } +humantime = "2.1.0" + + +[profile.release] +lto = "thin" +codegen-units = 1 + +[profile.bench] +debug = true diff --git a/common/src/main/rust/container/xwin/Dockerfile b/common/src/main/rust/container/xwin/Dockerfile new file mode 100644 index 0000000..3167083 --- /dev/null +++ b/common/src/main/rust/container/xwin/Dockerfile @@ -0,0 +1,10 @@ +# Build container versions pinned on 04-18-26 +FROM messense/cargo-xwin@sha256:f3e680c963eff35f77908c78d97ac095d4bef1f69e4fe200447576b34cd251cb + +ARG RUST_VERSION +RUN rustup default ${RUST_VERSION} +RUN rustup target add x86_64-pc-windows-msvc +RUN rustup target add aarch64-pc-windows-msvc +RUN cargo xwin cache xwin + +WORKDIR / diff --git a/common/src/main/rust/container/zigbuild/Dockerfile b/common/src/main/rust/container/zigbuild/Dockerfile new file mode 100644 index 0000000..ce7850e --- /dev/null +++ b/common/src/main/rust/container/zigbuild/Dockerfile @@ -0,0 +1,14 @@ +# Build container versions pinned on 04-18-26 +FROM messense/cargo-zigbuild@sha256:4c18634a3d9c7775683b0f1e313584770d32216623a1273a104b634fa294bf4c + +ARG RUST_VERSION +RUN rustup default ${RUST_VERSION} +RUN rustup target add x86_64-apple-darwin +RUN rustup target add aarch64-apple-darwin +RUN rustup target add x86_64-unknown-linux-gnu +RUN rustup target add aarch64-unknown-linux-gnu +RUN rustup target add x86_64-unknown-freebsd +# used for AArch64 FreeBSD +#RUN rustup component add rust-src + +WORKDIR / \ No newline at end of file diff --git a/common/src/main/rust/marten/Cargo.toml b/common/src/main/rust/marten/Cargo.toml new file mode 100644 index 0000000..21e9e23 --- /dev/null +++ b/common/src/main/rust/marten/Cargo.toml @@ -0,0 +1,11 @@ +[package] +name = "marten" +version.workspace = true +edition.workspace = true + +[dependencies] +jni.workspace = true +log.workspace = true +fern.workspace = true +humantime.workspace = true +colored.workspace = true \ No newline at end of file diff --git a/common/src/main/rust/marten/src/level.rs b/common/src/main/rust/marten/src/level.rs new file mode 100644 index 0000000..2f3b491 --- /dev/null +++ b/common/src/main/rust/marten/src/level.rs @@ -0,0 +1,151 @@ +//! A sparse voxel world. + +use crate::octree::SubLevelOctree; +use jni::JNIEnv; +use jni::descriptors::Desc; +use jni::objects::{GlobalRef, JMethodID}; + +/// log_2 of the size of a chunk +pub const CHUNK_SHIFT: u8 = 4; + +/// The size of a chunk in blocks +pub const CHUNK_SIZE: u8 = 1 << CHUNK_SHIFT; + +/// Bitwise mask to apply to a block coordinate to get the chunk-relative coordinate of the block +pub const CHUNK_MASK: i32 = (CHUNK_SIZE - 1) as i32; + +/// (Block Physics ID, Voxel Physics State) +pub type BlockState = (u32, VoxelPhysicsState); + +/// A 16x16x16 voxel chunk. +/// Blocks are stored in xzy order. (x fastest changing) +#[derive(Debug)] +pub struct ChunkSection { + blocks: Vec, +} + +impl ChunkSection { + /// Creates a new chunk section with the given blocks. + pub fn new(blocks: Vec) -> Self { + // Panic if the block count is invalid + if blocks.len() != (CHUNK_SIZE as usize).pow(3) { + panic!("Invalid block count: {}", blocks.len()); + } + + Self { blocks } + } + + /// Computes the index of a coordinate inside the chunk. + /// + /// # Safety + /// This method assumes that the coordinate is > than 0 and < than `CHUNK_SIZE` on all axes. + #[inline(always)] + fn get_index(&self, x: i32, y: i32, z: i32) -> usize { + (x + (z << 4) + (y << 8)) as usize + } + + /// Sets the block at the given coordinate. + /// + /// # Safety + /// This method assumes that the coordinate is > than 0 and < than `CHUNK_SIZE` on all axes. + /// If the coordinate is out of bounds, behavior is undefined. + pub fn set_block(&mut self, x: i32, y: i32, z: i32, state: BlockState) { + let index = self.get_index(x, y, z); + self.blocks[index] = state; + } + + /// Gets the block at the given coordinate. + /// + /// # Safety + /// This method assumes that the coordinate is >= than 0 and < than `CHUNK_SIZE` on all axes. + /// If the coordinate is out of bounds, behavior is undefined. + pub fn get_block(&self, x: i32, y: i32, z: i32) -> BlockState { + let index = self.get_index(x, y, z); + unsafe { *self.blocks.get_unchecked(index) } + } +} + +#[derive(Debug)] +pub struct SableMethodID(pub JMethodID); + +unsafe impl<'local> Desc<'local, JMethodID> for &SableMethodID { + type Output = JMethodID; + + fn lookup(self, _env: &mut JNIEnv<'local>) -> jni::errors::Result { + Ok(self.0) + } +} + +/// The physics data of a blockstate +#[derive(Debug)] +pub struct VoxelColliderData { + /// Collision boxes within the 0-1 voxel space. + /// Formatted [min_x, min_y, min_z, max_x, max_y, max_z] + pub collision_boxes: Vec<(f32, f32, f32, f32, f32, f32)>, + + /// If this should be treated as a fluid for buoyancy + pub is_fluid: bool, + + /// The friction multiplier + pub friction: f32, + pub volume: f32, + pub restitution: f32, + + /// If this block has special contact behavior + pub contact_events: Option, + + pub contact_method: Option, + + pub dynamic: bool, +} + +pub const NEEDS_HOOKS_USER_DATA: u32 = 1; +pub const NO_HOOKS_USER_DATA: u32 = 0; + +impl VoxelColliderData { + pub fn get_user_data(&self) -> u32 { + if self.contact_events.is_some() || self.friction != 1.0 || self.restitution != 0.0 { + NEEDS_HOOKS_USER_DATA + } else { + NO_HOOKS_USER_DATA + } + } + + pub fn needs_hooks(data: u32) -> bool { + data & NEEDS_HOOKS_USER_DATA > 0 + } +} + +pub const OCTREE_CHUNK_SHIFT: i32 = 6; +pub const OCTREE_CHUNK_SIZE: i32 = 1 << OCTREE_CHUNK_SHIFT; + +pub struct OctreeChunkSection { + pub octree: SubLevelOctree, + pub liquid_octree: SubLevelOctree, +} + +impl OctreeChunkSection { + pub fn new() -> Self { + Self { + octree: SubLevelOctree::new(OCTREE_CHUNK_SHIFT), + liquid_octree: SubLevelOctree::new(OCTREE_CHUNK_SHIFT), + } + } +} + +#[derive(Debug, Clone, Copy, PartialEq, Eq)] +pub enum VoxelPhysicsState { + Empty, + Face, + Edge, + Corner, + Interior, +} + +pub const ALL_VOXEL_PHYSICS_STATES: [VoxelPhysicsState; 5] = [ + VoxelPhysicsState::Empty, + VoxelPhysicsState::Face, + VoxelPhysicsState::Edge, + VoxelPhysicsState::Corner, + VoxelPhysicsState::Interior, +]; diff --git a/common/src/main/rust/marten/src/lib.rs b/common/src/main/rust/marten/src/lib.rs new file mode 100644 index 0000000..6e74d2d --- /dev/null +++ b/common/src/main/rust/marten/src/lib.rs @@ -0,0 +1,4 @@ +pub mod level; +pub mod octree; + +pub type Real = f32; diff --git a/common/src/main/rust/marten/src/octree.rs b/common/src/main/rust/marten/src/octree.rs new file mode 100644 index 0000000..9433a81 --- /dev/null +++ b/common/src/main/rust/marten/src/octree.rs @@ -0,0 +1,266 @@ +//! Flat octree for integer data + +/// The max size we allow an octree buffer to occupy +const MAX_SIZE: i32 = i32::MAX - 8 * 2; + +/// The fraction to resize an octree buffer by when it is full +const RESIZE_FRACTION: f32 = 1.5; + +/// An octree containing collision data about sublevels +#[derive(Debug)] +pub struct SubLevelOctree { + /// log_2 of the side length of the octree. + /// Ex. for a 16x16x16 tree, this would be 4. + /// + pub log_size: i32, + + /// For the goal of cache-coherency, the octree representing a sublevels collision data + /// is stored in a flat array. + /// + /// Nodes are stored as signed integers in the buffer, with the following format: + /// - Positive -> Branch node; int is the index of first child (with the other 7 following afterward). + /// - Negative -> Leaf node; int is the negation of the block ID - 1 (ex block ID 0 -> -1 in the array). + /// - Zero -> Empty node + /// + /// This implementation is inspired by + /// [this stackoverflow response](https://stackoverflow.com/questions/41946007/efficient-and-well-explained-implementation-of-a-quadtree-for-2d-collision-det#answer-48330314) + pub buffer: Vec, + + /// The occupied size of the buffer in nodes. + size: i32, + + /// The head of a singly linked list of free space in the buffer. + free_space_index_head: i32, + // last_access_positions: Vec<(i32, i32, i32)>, + // last_access_indices: Vec +} + +impl SubLevelOctree { + /// Creates a new octree with a given log_2 size + /// + /// # Arguments + /// + /// * `log_size` - the log_2 of the size of the octree + /// + pub fn new(log_size: i32) -> Self { + Self { + log_size, + buffer: vec![0; 256], + size: 1, + free_space_index_head: -1, + // last_access_positions: vec![(0, 0, 0); 8], + // last_access_indices: vec![-1; 8], + } + } + + /// @return a unique 0-7 index from a given x, y, z position in 0-1 ranges + #[inline(always)] + fn get_octant_index(x: i32, y: i32, z: i32) -> i32 { + (x & 1) | ((y & 1) << 1) | ((z & 1) << 2) + } + + /// Finds space to allocate 8 children in the buffer. + /// This does not clear the returned index or space after the returned index. + /// + /// @return the index of the first child + fn allocate_branch(&mut self) -> i32 { + // start at the head of the free space list + if self.free_space_index_head != -1 { + let index = self.free_space_index_head - 1; + self.free_space_index_head = self.buffer[index as usize]; + + return index; + } + + // if there is no free space, allocate at the end + if self.size + 8 > self.buffer.len() as i32 { + let new_size = (self.buffer.len() as f32 * RESIZE_FRACTION).ceil() as i32; + + if new_size > MAX_SIZE { + panic!("Octree buffer is full"); + } + + let mut new_buffer = vec![0; new_size as usize]; + new_buffer[..self.buffer.capacity()].copy_from_slice(&self.buffer); + self.buffer = new_buffer; + } + + let index = self.size; + self.size += 8; + + index + } + + /// Splits a node at an index + /// + /// # Arguments + /// + /// * `index` - the index of the node to split + /// + fn split(&mut self, index: i32) { + let node = self.buffer[index as usize]; + let branch_start_index = self.allocate_branch(); + self.buffer[index as usize] = branch_start_index; + + for i in 0..8 { + self.buffer[(branch_start_index + i) as usize] = node; + } + } + + /// Merges a branch node at an index if possible + /// + /// # Arguments + /// + /// * `index` - the index of the branch node + pub fn merge(&mut self, index: i32) { + let branch_start_index = self.buffer[index as usize]; + let node = self.buffer[branch_start_index as usize]; + + for i in 1..8 { + if self.buffer[(branch_start_index + i) as usize] != node { + return; + } + } + + if node == 0 { + self.buffer[index as usize] = node; + self.delete_children(branch_start_index); + self.free_space_index_head = branch_start_index + 1; + } + } + + /// Deletes 8 children and adds the branch node to the free space list + /// + /// # Arguments + /// + /// * `branch_start_index` - the starting index of the 8 children + fn delete_children(&mut self, branch_start_index: i32) { + self.buffer[branch_start_index as usize] = self.free_space_index_head; + self.free_space_index_head = branch_start_index; + for i in 1..8 { + self.buffer[(branch_start_index + i) as usize] = 0; + } + } + + /// Sets the block at a given position in the octree + /// + /// # Arguments + /// + /// * `x` - the x position + /// * `y` - the y position + /// * `z` - the z position + /// * `block` - the block ID + /// + /// # Returns + /// + /// * `bool` - if the insert modified the tree + pub fn insert(&mut self, x: i32, y: i32, z: i32, block: i32) -> bool { + let mut shift = self.log_size - 1; + let mut index = 0; + let mut node = self.buffer[index as usize]; + + let mut branch_index = 0; + let mut branches_visited = vec![0; self.log_size as usize]; + + while shift >= 0 { + if node == self.block_id_to_node(block) { + return false; // already equivalent + } + + let octant_index = Self::get_octant_index(x >> shift, y >> shift, z >> shift); + + if node > 0 { + branches_visited[branch_index as usize] = index; + branch_index += 1; + } else { + self.split(index); + } + + let branch_start_index = self.buffer[index as usize]; + index = branch_start_index + octant_index; + node = self.buffer[index as usize]; + + shift -= 1; + } + + self.buffer[index as usize] = self.block_id_to_node(block); + + // reduce + for i in (0..self.log_size).rev() { + self.merge(branches_visited[i as usize]); + } + + true + } + + /// Queries the block at a given position in the octree + /// + /// # Arguments + /// + /// * `x` - the x position + /// * `y` - the y position + /// * `z` - the z position + /// * `log_size_of_target` - the log size of the target + /// + /// # Returns + /// + /// * `i32` - the block ID at the position, or -2 if the position is empty + pub fn query(&self, x: i32, y: i32, z: i32, log_size_of_target: i32) -> i32 { + let size = 1 << self.log_size; + // check if out of bounds + if x < 0 || y < 0 || z < 0 || x >= size || y >= size || z >= size { + return -2; + } + + let mut shift = self.log_size - 1; + let mut index = 0; + let mut node: i32 = *unsafe { self.buffer.get_unchecked(index as usize) }; + + while shift >= log_size_of_target { + if node < 0 { + return self.node_to_block_id(node); + } else if node == 0 { + return -2; + } + + let octant_index = Self::get_octant_index(x >> shift, y >> shift, z >> shift); + + index = node + octant_index; + node = *unsafe { self.buffer.get_unchecked(index as usize) }; + + shift -= 1; + } + match node { + ..0 => self.node_to_block_id(node), + 0 => -2, + _ => -1, + } + } + + /// Converts a block ID to a node value to put in the buffer + /// + /// # Arguments + /// + /// * `block` - the block ID + /// + /// # Returns + /// + /// * `i32` - the node value + fn block_id_to_node(&self, block: i32) -> i32 { + -block - 1 + } + + /// Converts a node value in the buffer to a block ID + /// + /// # Arguments + /// + /// * `node` - the node value + /// + /// # Returns + /// + /// * `i32` - the block ID + #[inline(always)] + fn node_to_block_id(&self, node: i32) -> i32 { + -node - 1 + } +} diff --git a/common/src/main/rust/rapier/Cargo.toml b/common/src/main/rust/rapier/Cargo.toml new file mode 100644 index 0000000..ccdfa03 --- /dev/null +++ b/common/src/main/rust/rapier/Cargo.toml @@ -0,0 +1,34 @@ +[package] +name = "sable_rapier" +version.workspace = true +edition.workspace = true + +[dependencies] +marten.workspace = true + +fern.workspace = true +jni.workspace = true +colored.workspace = true +log.workspace = true +humantime.workspace = true + +rapier3d = { git = "https://github.com/ryanhcode/rapier", rev = "38e92f117590862481a53df6fc69a5d893e29186", features = [ + "simd-nightly", + "parallel", +] } +#rapier3d = { version = "0.26.1", features = [ "simd-stable" ] } + +rayon = "1.10.0" +dashmap = "7.0.0-rc2" + +[lib] +crate-type = ["cdylib", "lib"] +name = "sable_rapier" +path = "src/lib.rs" + +[[bench]] +name = "collision_benchmark" +harness = false + +[dev-dependencies] +criterion = "0.8.2" diff --git a/common/src/main/rust/rapier/benches/collision_benchmark.rs b/common/src/main/rust/rapier/benches/collision_benchmark.rs new file mode 100644 index 0000000..aa8afd7 --- /dev/null +++ b/common/src/main/rust/rapier/benches/collision_benchmark.rs @@ -0,0 +1,162 @@ +use criterion::{Criterion, criterion_group, criterion_main}; +use marten::Real; +use marten::octree::SubLevelOctree; +use rapier3d::math::Pose3; +use rapier3d::na::Vector3; +use rapier3d::prelude::ColliderHandle; +use sable_rapier::ActiveLevelColliderInfo; +use sable_rapier::algo::{DEFAULT_COLLISION_PARALLEL_CUTOFF, find_collision_pairs}; +use std::hint::black_box; + +fn setup_dummy_sable_handle_a() -> ActiveLevelColliderInfo { + let mut octree = SubLevelOctree::new(7); + setup_sphere(&mut octree); + + ActiveLevelColliderInfo { + static_mount: None, + collider: ColliderHandle::default(), + local_bounds_min: Some(Vector3::::new(0, 0, 0)), + local_bounds_max: Some(Vector3::::new(128, 128, 128)), + center_of_mass: Some(Vector3::::new(62.5, 62.5, 62.5)), + octree: Some(octree), + chunk_map: None, + scene_id: 0, + fake_velocities: None, + } +} + +fn setup_dummy_sable_handle_b() -> ActiveLevelColliderInfo { + let mut octree = SubLevelOctree::new(7); + setup_sphere(&mut octree); + + ActiveLevelColliderInfo { + static_mount: None, + collider: ColliderHandle::default(), + local_bounds_min: Some(Vector3::::new(128, 0, 0)), + local_bounds_max: Some(Vector3::::new(256, 128, 128)), + center_of_mass: Some(Vector3::::new(128.0 + 64.5, 64.5, 64.5)), + octree: Some(octree), + chunk_map: None, + scene_id: 0, + fake_velocities: None, + } +} + +fn setup_sphere(octree: &mut SubLevelOctree) { + // sphere + for x in 0..128 { + for y in 0..128 { + for z in 0..128 { + let dx = x as f64 - 64.5; + let dy = y as f64 - 64.5; + let dz = z as f64 - 64.5; + if dx * dx + dy * dy + dz * dz <= 63.5 * 63.5 { + octree.insert(x, y, z, 1); + } + } + } + } +} + +fn benchmark_find_collision_pairs(c: &mut Criterion) { + let sable_body_a = setup_dummy_sable_handle_a(); + let sable_body_b = setup_dummy_sable_handle_b(); + let prediction = 0.0 as Real; + + // for i in 0..100000 { + // let isometry = Isometry3::new(Vector3::new(123.5, 0.0, 0.0), Vector3::new(0.0, 0.0, 0.0)); // No rotation/translation + // let result = find_collision_pairs(&sable_body_a, Some(&sable_body_b), &isometry, prediction, 256); + // black_box(result); + // + // } + // + // if (true){ return;} + + // { + // let mut group = c.benchmark_group("find_pairs_parallel_cutoff"); + // + // for cutoff in [0, 64, 128, 256, 512, 1024, 2048, 4096].iter() { + // group.throughput(criterion::Throughput::Elements(1)); + // group.bench_with_input(criterion::BenchmarkId::from_parameter(cutoff), cutoff, |b, &penetration| { + // let isometry = Isometry3::new(Vector3::new(120.0, 0.0, 0.0), Vector3::new(0.0, 0.0, 0.0)); // No rotation/translation + // b.iter(|| { + // let result = find_collision_pairs(&sable_body_a, Some(&sable_body_b), &isometry, prediction, *cutoff as usize); + // black_box(result) + // }); + // }); + // } + // } + // + // + // if (true){ return; } + { + let mut group = c.benchmark_group("find_pairs_parallel"); + + for penetration in [0.0, 0.5, 1.0].iter() { + group.throughput(criterion::Throughput::Elements(1)); + group.bench_with_input( + criterion::BenchmarkId::from_parameter(penetration), + penetration, + |b, &penetration| { + let pose = Pose3::translation(124.25 - penetration * 8.0, 0.0, 0.0); + b.iter(|| { + let result = find_collision_pairs( + &sable_body_a, + Some(&sable_body_b), + &pose, + prediction, + DEFAULT_COLLISION_PARALLEL_CUTOFF, + false, + ); + black_box(result) + }); + }, + ); + } + } + + { + let mut group = c.benchmark_group("find_pairs_sequential"); + + for penetration in [0.0, 0.5, 1.0].iter() { + group.throughput(criterion::Throughput::Elements(1)); + group.bench_with_input( + criterion::BenchmarkId::from_parameter(penetration), + penetration, + |b, &penetration| { + let pose = Pose3::translation(124.25 - penetration * 8.0, 0.0, 0.0); + b.iter(|| { + let result = find_collision_pairs( + &sable_body_a, + Some(&sable_body_b), + &pose, + prediction, + usize::MAX, + false, + ); + black_box(result) + }); + }, + ); + } + } + + // criterion_group!(benches, benchmark_find_collision_pairs); + // criterion_main!(benches); + // c.bench_function("find_collision_pairs_parallel", |b| { + // b.iter(|| { + // let result = find_collision_pairs(&sable_body_a, Some(&sable_body_b), &isometry, prediction); + // black_box(result) + // }) + // }); + + // c.bench_function("find_collision_pairs_sequential", |b| { + // b.iter(|| { + // let result = find_collision_pairs_sequential(&sable_body_a, Some(&sable_body_b), &isometry, prediction); + // black_box(result) + // }) + // }); +} + +criterion_group!(benches, benchmark_find_collision_pairs); +criterion_main!(benches); diff --git a/common/src/main/rust/rapier/src/algo.rs b/common/src/main/rust/rapier/src/algo.rs new file mode 100644 index 0000000..0bace9e --- /dev/null +++ b/common/src/main/rust/rapier/src/algo.rs @@ -0,0 +1,308 @@ +use std::cmp::min; + +use marten::Real; +use marten::level::OCTREE_CHUNK_SHIFT; +use rapier3d::glamx::Pose3; +use rapier3d::math::Vector; +use rapier3d::na::{SimdComplexField, Vector3}; +use rayon::iter::ParallelIterator; +use rayon::prelude::{IntoParallelRefIterator, ParallelExtend}; + +use crate::scene::{PhysicsScene, pack_section_pos}; +use crate::{ActiveLevelColliderInfo, get_scene_mut}; + +pub const DEFAULT_COLLISION_PARALLEL_CUTOFF: usize = 256; + +/// Detects the collision pairs of a sable body +pub fn find_collision_pairs( + sable_body: &ActiveLevelColliderInfo, + other_sable_body: Option<&ActiveLevelColliderInfo>, + isometry: &Pose3, + prediction: Real, + cutoff: usize, + liquid: bool, +) -> Vec<(Vector3, Vector3)> { + struct StackObject { + index: u32, + depth: u32, + min: Vector3, + } + + let Some(octree) = &sable_body.octree else { + panic!("No octree!") + }; + + let local_bounds_min = sable_body.local_bounds_min.unwrap(); + + let center_of_mass = sable_body.center_of_mass.unwrap(); + + let offset = Vector3::new( + local_bounds_min.x as f64 - center_of_mass.x, + local_bounds_min.y as f64 - center_of_mass.y, + local_bounds_min.z as f64 - center_of_mass.z, + ); + let offset = Vector3::new(offset.x as Real, offset.y as Real, offset.z as Real); + + let offset = isometry.rotation.mul_vec3(offset.into()); + let translation = isometry.translation + offset; + + // start with the root node + let mut current_level = Vec::with_capacity(128); + + let com_offset: Vector3 = if let Some(other_handle) = other_sable_body { + let com = other_handle.center_of_mass.unwrap(); + Vector3::new(com.x, com.y, com.z) + } else { + Vector3::new(0.0, 0.0, 0.0) + }; + + current_level.push(StackObject { + index: 0, + depth: 0, + min: Vector3::new(0, 0, 0), + }); + + let mut pairs = Vec::with_capacity(16); + // process nodes level by level to maintain some structure while parallelizing + while !current_level.is_empty() { + type LevelData = ( + Option>, + Option, Vector3)>>, + ); + let mut next_level_data = Vec::::with_capacity(8); + + let do_level_parallel = current_level.len() >= cutoff; + + let process_stack_object = |entry: &StackObject| -> LevelData { + let node = *unsafe { octree.buffer.get_unchecked(entry.index as usize) }; + let node_size = 1 << (octree.log_size as u32 - entry.depth); + + // Calculate the center and radius for this node + let node_center = Vector3::new( + entry.min.x as Real + node_size as Real / 2.0, + entry.min.y as Real + node_size as Real / 2.0, + entry.min.z as Real + node_size as Real / 2.0, + ); + let node_center = Vector::new(node_center.x, node_center.y, node_center.z); + let transformed_center = isometry.rotation.mul_vec3(node_center) + translation; + let radius = node_size as Real / 2.0 * 1.7321 + prediction; + + let scene = get_scene_mut(sable_body.scene_id); + + let (has_any_intersections, blocks_opt) = get_overlapping_nodes( + other_sable_body, + com_offset, + transformed_center.into(), + radius, + scene, + node >= 0, + liquid, + ); + + if !has_any_intersections { + return (None, None); + } + + // leaf node - add collision pairs + if node < 0 { + let mut local_pairs = Vec::new(); + for static_block in blocks_opt.unwrap().iter() { + local_pairs.push((*static_block, entry.min + local_bounds_min)); + } + + return (None, Some(local_pairs)); + } + + if node > 0 { + let mut local_next_level = Vec::with_capacity(8); + + for i in 0..8 { + local_next_level.push(StackObject { + index: (node + i) as u32, + depth: entry.depth + 1, + min: entry.min + + Vector3::new( + (i & 1) * node_size / 2, + ((i >> 1) & 1) * node_size / 2, + ((i >> 2) & 1) * node_size / 2, + ), + }); + } + + (Some(local_next_level), None) + } else { + (None, None) + } + }; + + if do_level_parallel { + next_level_data.par_extend(current_level.par_iter().map(process_stack_object)) + } else { + next_level_data.extend(current_level.iter().map(process_stack_object)) + } + + let (a_parts, b_parts): (Vec<_>, Vec<_>) = next_level_data.into_iter().unzip(); + + // filter out none's and add them + for local_pairs in b_parts.into_iter().flatten() { + pairs.extend(local_pairs); + } + + current_level = a_parts.into_iter().flatten().flatten().collect(); + } + + pairs +} + +fn get_overlapping_nodes( + other_handle: Option<&ActiveLevelColliderInfo>, + com_offset: Vector3, + pos: Vector3, + dist: Real, + scene: &PhysicsScene, + cancel_early: bool, + liquid: bool, +) -> (bool, Option>>) { + // biggest power of two that doesn't go over radius + let log2 = ((dist * 2.0).simd_ln() / 2.0f32.simd_ln()).floor() as i32; + + let log2 = if let Some(other_handle) = other_handle { + let Some(oct) = &other_handle.octree else { + panic!("No octree!") + }; + min(log2, oct.log_size) + } else { + min(log2, OCTREE_CHUNK_SHIFT) + }; + + let min_block_pos = Vector3::new( + ((pos.x - dist) as f64 + com_offset.x).floor() as i32, + ((pos.y - dist) as f64 + com_offset.y).floor() as i32, + ((pos.z - dist) as f64 + com_offset.z).floor() as i32, + ); + let max_block_pos = Vector3::new( + ((pos.x + dist) as f64 + com_offset.x).floor() as i32, + ((pos.y + dist) as f64 + com_offset.y).floor() as i32, + ((pos.z + dist) as f64 + com_offset.z).floor() as i32, + ); + + if let Some(other_handle) = other_handle { + let other_min = other_handle.local_bounds_min.unwrap(); + + let min_pos = Vector3::new( + (min_block_pos.x - other_min.x) >> log2, + (min_block_pos.y - other_min.y) >> log2, + (min_block_pos.z - other_min.z) >> log2, + ) + .map(|x| x.max(0)); + + let max_pos = Vector3::new( + (max_block_pos.x - other_min.x) >> log2, + (max_block_pos.y - other_min.y) >> log2, + (max_block_pos.z - other_min.z) >> log2, + ); + + let Some(oct) = &other_handle.octree else { + panic!("No octree!") + }; + + let mut blocks = if cancel_early { + None + } else { + Some(Vec::with_capacity(16)) + }; + for x in min_pos.x..=max_pos.x { + for y in min_pos.y..=max_pos.y { + for z in min_pos.z..=max_pos.z { + if oct.query(x << log2, y << log2, z << log2, log2) > -2 { + if cancel_early { + return (true, None); + } else { + blocks.as_mut().unwrap().push(Vector3::new( + (x << log2) + other_min.x, + (y << log2) + other_min.y, + (z << log2) + other_min.z, + )); + } + } + } + } + } + + if cancel_early { + return (false, None); + } else { + return (!blocks.as_ref().unwrap().is_empty(), blocks); + } + } + + // find all the octrees + let min_octree_pos = Vector3::new( + min_block_pos.x >> OCTREE_CHUNK_SHIFT, + min_block_pos.y >> OCTREE_CHUNK_SHIFT, + min_block_pos.z >> OCTREE_CHUNK_SHIFT, + ); + let max_octree_pos = Vector3::new( + max_block_pos.x >> OCTREE_CHUNK_SHIFT, + max_block_pos.y >> OCTREE_CHUNK_SHIFT, + max_block_pos.z >> OCTREE_CHUNK_SHIFT, + ); + + let mut blocks = if cancel_early { + None + } else { + Some(Vec::with_capacity(8)) + }; + for ox in min_octree_pos.x..=max_octree_pos.x { + for oy in min_octree_pos.y..=max_octree_pos.y { + for oz in min_octree_pos.z..=max_octree_pos.z { + let chunk = scene.octree_chunks.get(&pack_section_pos(ox, oy, oz)); + let Some(chunk) = chunk else { + continue; + }; + + let min_x = min_block_pos.x >> log2; + let min_y = min_block_pos.y >> log2; + let min_z = min_block_pos.z >> log2; + let max_x = max_block_pos.x >> log2; + let max_y = max_block_pos.y >> log2; + let max_z = max_block_pos.z >> log2; + let chunk_octree = if liquid { + &chunk.liquid_octree + } else { + &chunk.octree + }; + + for x in min_x..=max_x { + for y in min_y..=max_y { + for z in min_z..=max_z { + if chunk_octree.query( + (x << log2) - (ox << OCTREE_CHUNK_SHIFT), + (y << log2) - (oy << OCTREE_CHUNK_SHIFT), + (z << log2) - (oz << OCTREE_CHUNK_SHIFT), + log2, + ) > -2 + { + if cancel_early { + return (true, None); + } else { + blocks.as_mut().unwrap().push(Vector3::new( + x << log2, + y << log2, + z << log2, + )); + } + } + } + } + } + } + } + } + + if cancel_early { + (false, None) + } else { + (!blocks.as_ref().unwrap().is_empty(), blocks) + } +} diff --git a/common/src/main/rust/rapier/src/boxes.rs b/common/src/main/rust/rapier/src/boxes.rs new file mode 100644 index 0000000..cb22eb9 --- /dev/null +++ b/common/src/main/rust/rapier/src/boxes.rs @@ -0,0 +1,85 @@ +use jni::JNIEnv; +use jni::objects::{JClass, JDoubleArray}; +use jni::sys::{jdouble, jint}; +use marten::Real; +use rapier3d::dynamics::RigidBodyBuilder; +use rapier3d::geometry::{ColliderBuilder, SharedShape}; +use rapier3d::glamx::Quat; +use rapier3d::math::Vector; + +use crate::get_scene_mut; +use crate::scene::LevelColliderID; + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + mass: jdouble, + half_extent_x: jdouble, + half_extent_y: jdouble, + half_extent_z: jdouble, + pose: JDoubleArray<'local>, +) { + let mut pose_arr: [jdouble; 7] = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]; + env.get_double_array_region(pose, 0, &mut pose_arr).unwrap(); + + let quat = Quat::from_xyzw( + pose_arr[3] as Real, + pose_arr[4] as Real, + pose_arr[5] as Real, + pose_arr[6] as Real, + ); + + let mut rigid_body = RigidBodyBuilder::dynamic() + .ccd_enabled(true) + .translation(Vector::new( + pose_arr[0] as Real, + pose_arr[1] as Real, + pose_arr[2] as Real, + )) + .build(); + rigid_body.set_rotation(quat, false); + + let scene = get_scene_mut(scene_id); + + let handle = scene.rigid_body_set.insert(rigid_body); + + // make a level collider + let collider = ColliderBuilder::new(SharedShape::cuboid( + half_extent_x as Real, + half_extent_y as Real, + half_extent_z as Real, + )) + .mass(mass as Real) + .friction(0.45) + .build(); + + scene + .collider_set + .insert_with_parent(collider, handle, &mut scene.rigid_body_set); + + scene.rigid_bodies.insert(id as LevelColliderID, handle); +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, +) { + let scene = get_scene_mut(scene_id); + let handle = scene.rigid_bodies[&(id as LevelColliderID)]; + scene.rigid_body_set.remove( + handle, + &mut scene.island_manager, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + true, + ); + + scene.rigid_bodies.remove(&(id as LevelColliderID)); +} diff --git a/common/src/main/rust/rapier/src/buoyancy.rs b/common/src/main/rust/rapier/src/buoyancy.rs new file mode 100644 index 0000000..a0e1d4a --- /dev/null +++ b/common/src/main/rust/rapier/src/buoyancy.rs @@ -0,0 +1,217 @@ +use crate::scene::ChunkAccess; +use crate::{ + algo::{DEFAULT_COLLISION_PARALLEL_CUTOFF, find_collision_pairs}, + get_physics_state_mut, + scene::PhysicsScene, +}; +use marten::Real; +use rapier3d::dynamics::RigidBody; +use rapier3d::geometry::Aabb; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::prelude::RigidBodyVelocity; + +pub fn compute_buoyancy(scene: &mut PhysicsScene) { + let state = unsafe { get_physics_state_mut() }; + for (id, body_handle) in scene.rigid_bodies.iter() { + let info = scene.level_colliders.get(id); + + if info.is_none() { + continue; + } + let info = info.unwrap(); + let Some(body) = scene.rigid_body_set.get_mut(*body_handle) else { + panic!("No body with given handle!"); + }; + + let Some(center_of_mass) = info.center_of_mass else { + panic!("No center of mass for body!"); + }; + + let Some(local_bounds_min) = info.local_bounds_min else { + panic!("No local bounds for body!"); + }; + let Some(local_bounds_max) = info.local_bounds_max else { + panic!("No local bounds for body!"); + }; + body.reset_forces(false); + body.reset_torques(false); + let pairs = find_collision_pairs( + info, + None, + body.position(), + 0.0, + DEFAULT_COLLISION_PARALLEL_CUTOFF, + true, + ); + let vels: RigidBodyVelocity = *body.vels(); + + let complex = (local_bounds_max - local_bounds_min).sum() < 10; + for (static_pos, dynamic_pos) in pairs.iter() { + let local_pos = Vector3::::new( + dynamic_pos.x as f64 + 0.5, + dynamic_pos.y as f64 + 0.5, + dynamic_pos.z as f64 + 0.5, + ); + let local_pos = Vector::new( + (local_pos.x - center_of_mass.x) as Real, + (local_pos.y - center_of_mass.y) as Real, + (local_pos.z - center_of_mass.z) as Real, + ); + if complex { + for i in 0..8 { + let x = (i & 1) * 2 - 1; + let y = ((i >> 1) & 1) * 2 - 1; + let z = ((i >> 2) & 1) * 2 - 1; + let local_pos = Vector::new( + local_pos.x + x as Real * 0.25, + local_pos.y + y as Real * 0.25, + local_pos.z + z as Real * 0.25, + ); + do_drag(body, &vels, static_pos, &local_pos, 0.25, 1.0); + } + } else { + do_drag(body, &vels, static_pos, &local_pos, 0.5, 1.0); + } + } + let scene = state.scenes.get_mut(&scene.scene_id).unwrap(); + for (static_pos, dynamic_pos) in pairs.iter() { + let chunk = scene.get_chunk(dynamic_pos.x >> 4, dynamic_pos.y >> 4, dynamic_pos.z >> 4); + + if chunk.is_none() { + continue; + } + + let (block_id, _voxel_collider_state) = chunk.unwrap().get_block( + dynamic_pos.x & 15, + dynamic_pos.y & 15, + dynamic_pos.z & 15, + ); + + // block id's are unsigned, and offset by 1 to allow for a single "empty" at 0 + if block_id == 0 { + continue; + } + + let voxel_collider_data = &state.voxel_collider_map.get( + (block_id - 1) as usize, + Vector3::new(dynamic_pos.x, dynamic_pos.y, dynamic_pos.z), + ); + + let Some(voxel_collider_data) = &voxel_collider_data else { + continue; + }; + + let local_pos = Vector3::::new( + dynamic_pos.x as f64 + 0.5, + dynamic_pos.y as f64 + 0.5, + dynamic_pos.z as f64 + 0.5, + ); + let local_pos = Vector::new( + (local_pos.x - center_of_mass.x) as Real, + (local_pos.y - center_of_mass.y) as Real, + (local_pos.z - center_of_mass.z) as Real, + ); + let complex = (local_bounds_max - local_bounds_min).sum() < 10; + if complex { + for i in 0..8 { + let x = (i & 1) * 2 - 1; + let y = ((i >> 1) & 1) * 2 - 1; + let z = ((i >> 2) & 1) * 2 - 1; + let local_pos = Vector::new( + local_pos.x + x as Real * 0.25, + local_pos.y + y as Real * 0.25, + local_pos.z + z as Real * 0.25, + ); + do_float( + body, + static_pos, + &local_pos, + 0.25, + voxel_collider_data.volume, + ); + } + } else { + do_float( + body, + static_pos, + &local_pos, + 0.5, + voxel_collider_data.volume, + ); + } + } + } +} + +fn do_drag( + body: &mut RigidBody, + vels: &RigidBodyVelocity, + static_pos: &Vector3, + point: &Vector, + size: Real, + strength: Real, +) { + let point = body.position().transform_point(*point); + + let overlap = Aabb::new(point - Vector::splat(size), point + Vector::splat(size)).intersection( + &Aabb::new( + Vector::new( + static_pos.x as Real, + static_pos.y as Real, + static_pos.z as Real, + ), + Vector::new( + static_pos.x as Real + 1.0, + static_pos.y as Real + 1.0, + static_pos.z as Real + 1.0, + ), + ), + ); + + if overlap.is_none() { + return; + } + + let volume = overlap.unwrap().volume(); + let velo = vels.velocity_at_point(point, body.mass_properties().world_com); + + body.add_force_at_point(-velo * 1.7 * volume * strength, point, false); +} + +fn do_float( + body: &mut RigidBody, + static_pos: &Vector3, + point: &Vector, + size: Real, + strength: Real, +) { + let point = body.position().transform_point(*point); + + let overlap = Aabb::new(point - Vector::splat(size), point + Vector::splat(size)).intersection( + &Aabb::new( + Vector::new( + static_pos.x as Real, + static_pos.y as Real, + static_pos.z as Real, + ), + Vector::new( + static_pos.x as Real + 1.0, + static_pos.y as Real + 1.0, + static_pos.z as Real + 1.0, + ), + ), + ); + + if overlap.is_none() { + return; + } + + let volume = overlap.unwrap().volume(); + + body.add_force_at_point( + Vector::new(0.0, 10.5 * volume * strength, 0.0), + point, + false, + ); +} diff --git a/common/src/main/rust/rapier/src/collider.rs b/common/src/main/rust/rapier/src/collider.rs new file mode 100644 index 0000000..b1eecb4 --- /dev/null +++ b/common/src/main/rust/rapier/src/collider.rs @@ -0,0 +1,156 @@ +use crate::PHYSICS_STATE; +use crate::scene::LevelColliderID; +use rapier3d::dynamics::MassProperties; +use rapier3d::geometry::{Shape, ShapeType, TypedShape}; +use rapier3d::math::Vector; +use rapier3d::parry::bounding_volume::{Aabb, BoundingSphere}; +use rapier3d::prelude::*; +use std::f32::consts::PI; + +const WORLD_SIZE: Real = 30_000_000.0; + +#[derive(Debug, Clone, Copy)] +pub struct LevelCollider { + /// Index in PhysicsState#sable_bodies + pub id: Option, + + /// If this is the static world collider + pub is_static: bool, + + pub scene_id: i32, +} + +impl LevelCollider { + #[must_use] + pub fn new(id: Option, is_static: bool, scene_id: i32) -> Self { + Self { + id, + is_static, + scene_id, + } + } + + fn scaled(self, _scale: &Vector) -> Self { + Self { ..self } + } +} + +impl RayCast for LevelCollider { + fn cast_local_ray_and_get_normal( + &self, + _ray: &rapier3d::parry::query::Ray, + _max_time_of_impact: Real, + _solid: bool, + ) -> Option { + todo!() + } +} + +impl PointQuery for LevelCollider { + fn project_local_point( + &self, + _pt: Vector, + _solid: bool, + ) -> rapier3d::parry::query::PointProjection { + todo!() + } + + fn project_local_point_and_get_feature( + &self, + _pt: Vector, + ) -> (rapier3d::parry::query::PointProjection, FeatureId) { + todo!() + } +} + +impl Shape for LevelCollider { + fn compute_local_aabb(&self) -> Aabb { + if self.is_static { + Aabb::new( + Vector::new(-WORLD_SIZE, -WORLD_SIZE, -WORLD_SIZE), + Vector::new(WORLD_SIZE, WORLD_SIZE, WORLD_SIZE), + ) + } else { + unsafe { + let Some(state) = &PHYSICS_STATE else { + panic!("no physics state!") + }; + + let Some(scene) = state.scenes.get(&self.scene_id) else { + panic!("No scene with given ID!"); + }; + + let sable_body = &scene.level_colliders[&{ self.id.unwrap() }]; + + let center_of_mass = sable_body.center_of_mass.unwrap(); + let local_min = sable_body.local_bounds_min.unwrap(); + let local_max = sable_body.local_bounds_max.unwrap(); + + let min = Vector::new( + (local_min.x as f64 - center_of_mass.x) as Real, + (local_min.y as f64 - center_of_mass.y) as Real, + (local_min.z as f64 - center_of_mass.z) as Real, + ); + + let max = Vector::new( + ((local_max.x + 1) as f64 - center_of_mass.x) as Real, + ((local_max.y + 1) as f64 - center_of_mass.y) as Real, + ((local_max.z + 1) as f64 - center_of_mass.z) as Real, + ); + + Aabb::new(min, max) + } + } + } + + fn compute_local_bounding_sphere(&self) -> BoundingSphere { + if self.is_static { + BoundingSphere::new(Vector::ZERO, WORLD_SIZE) + } else { + BoundingSphere::new(Vector::ZERO, 1.0) + // Bounding sphere that covers the entire bounding box + // unsafe { + // let Some(state) = &PHYSICS_STATE else { + // panic!("no physics state!") + // }; + // + // let local_aabb = self.compute_local_aabb(); + // + // local_aabb.bounding_sphere() + // } + } + } + + fn clone_dyn(&self) -> Box { + Box::new(*self) + } + + fn scale_dyn(&self, scale: Vector, _num_subdivisions: u32) -> Option> { + Some(Box::new(self.scaled(&scale))) + } + + fn mass_properties(&self, _density: Real) -> MassProperties { + MassProperties { + inv_mass: 0.0, + inv_principal_inertia: AngVector::new(0.0, 0.0, 0.0), + local_com: Vector::ZERO, + principal_inertia_local_frame: Default::default(), + } + } + + fn shape_type(&self) -> ShapeType { + ShapeType::Custom + } + + fn as_typed_shape(&self) -> TypedShape<'_> { + TypedShape::Custom(self) + } + + fn ccd_thickness(&self) -> Real { + 0.25 + } + + fn ccd_angular_thickness(&self) -> Real { + PI / 8.0 + } +} diff --git a/common/src/main/rust/rapier/src/config.rs b/common/src/main/rust/rapier/src/config.rs new file mode 100644 index 0000000..62db42c --- /dev/null +++ b/common/src/main/rust/rapier/src/config.rs @@ -0,0 +1,77 @@ +use jni::JNIEnv; +use jni::objects::JClass; +use jni::sys::{jdouble, jint}; +use marten::Real; + +use crate::PHYSICS_STATE; + +/// Global spring frequency for joints (Hz) +pub const JOINT_SPRING_FREQUENCY: Real = 550.0; + +/// Global damping ratio for joints +pub const JOINT_SPRING_DAMPING_RATIO: Real = 4.0; + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + collision_natural_frequency: jdouble, + collision_damping_ratio: jdouble, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + state + .integration_parameters + .contact_softness + .natural_frequency = collision_natural_frequency as Real; + state.integration_parameters.contact_softness.damping_ratio = + collision_damping_ratio as Real; + } else { + panic!("No physics state!"); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + num_solver_iterations: jint, + num_internal_pgs_iterations: jint, + num_internal_stabilization_iterations: jint, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + state.integration_parameters.num_solver_iterations = num_solver_iterations as usize; + state.integration_parameters.num_internal_pgs_iterations = + num_internal_pgs_iterations as usize; + state + .integration_parameters + .num_internal_stabilization_iterations = + num_internal_stabilization_iterations as usize; + } else { + panic!("No physics state!"); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + island_size: jint, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + state.integration_parameters.min_island_size = island_size as usize; + } else { + panic!("No physics state!"); + } + } +} diff --git a/common/src/main/rust/rapier/src/contraptions.rs b/common/src/main/rust/rapier/src/contraptions.rs new file mode 100644 index 0000000..1611453 --- /dev/null +++ b/common/src/main/rust/rapier/src/contraptions.rs @@ -0,0 +1,250 @@ +use std::collections::HashMap; + +use jni::JNIEnv; +use jni::objects::{JClass, JDoubleArray, JIntArray}; +use jni::sys::{jdouble, jint}; +use marten::Real; +use rapier3d::dynamics::RigidBodyBuilder; +use rapier3d::geometry::{ColliderBuilder, SharedShape}; +use rapier3d::glamx::{Pose3, Quat}; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::pipeline::{ActiveEvents, ActiveHooks}; +use rapier3d::prelude::{RigidBodyHandle, RigidBodyVelocity}; + +use crate::collider::LevelCollider; +use crate::groups::LEVEL_GROUP; +use crate::scene::LevelColliderID; +use crate::{ActiveLevelColliderInfo, get_scene_mut_ref}; + +macro_rules! extract_jdouble_array { + ($env:expr, $jarr:expr, $len:expr) => {{ + let mut arr = [0.0 as jdouble; $len]; + $env.get_double_array_region($jarr, 0, &mut arr).unwrap(); + arr + }}; +} + +macro_rules! extract_jint_array { + ($env:expr, $jarr:expr, $len:expr) => {{ + let mut arr = [0 as jint; $len]; + $env.get_int_array_region($jarr, 0, &mut arr).unwrap(); + arr + }}; +} + +// Helper for getting a mutable kinematic sub-level collider info +fn get_kinematic_collider_info( + scene: &mut crate::scene::PhysicsScene, + id: jint, +) -> &mut ActiveLevelColliderInfo { + scene + .level_colliders + .get_mut(&(id as LevelColliderID)) + .expect("No kinematic contraption with given ID!") +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + mount_id: jint, + id: jint, + _pose: JDoubleArray<'local>, +) { + let scene = get_scene_mut_ref(scene_id); + + let should_be_static = mount_id == -1; + let mount_rigid_body = if should_be_static { + let new_body = scene + .rigid_body_set + .insert(RigidBodyBuilder::kinematic_position_based()); + Some(new_body) + } else { + Some( + *scene + .rigid_bodies + .get(&(mount_id as LevelColliderID)) + .unwrap(), + ) + }; + + let mount_rigid_body: RigidBodyHandle = if let Some(body) = mount_rigid_body { + body + } else { + panic!("woops!") + }; + + let level_collider = LevelCollider::new(Some(id as LevelColliderID), false, scene_id); + + let collider = ColliderBuilder::new(SharedShape::new(level_collider)) + .friction(0.45) + .active_events(ActiveEvents::CONTACT_FORCE_EVENTS) + .active_hooks(ActiveHooks::MODIFY_SOLVER_CONTACTS) + .density(0.0) + .collision_groups(LEVEL_GROUP) + .build(); + + let collider_handle = scene.collider_set.insert_with_parent( + collider, + mount_rigid_body, + &mut scene.rigid_body_set, + ); + + let mut info = ActiveLevelColliderInfo::new(collider_handle, scene_id); + if should_be_static { + info.static_mount = Some(mount_rigid_body); + } + + info.chunk_map = Some(HashMap::new()); // Use a dedicated chunk map as it doesn't have a plot java-side + scene.level_colliders.insert(id as LevelColliderID, info); +} + +/// Set the transform (position/orientation) of a kinematic sub-level's center of mass relative to its parent +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + center_of_mass: JDoubleArray<'local>, + pose: JDoubleArray<'local>, + velocities: JDoubleArray<'local>, +) { + let center_of_mass_arr = extract_jdouble_array!(env, center_of_mass, 3); + let pose_arr = extract_jdouble_array!(env, pose, 7); + let velocities_arr = extract_jdouble_array!(env, velocities, 6); + let translation = Vector3::new( + pose_arr[0] as Real, + pose_arr[1] as Real, + pose_arr[2] as Real, + ); + let quat = Quat::from_xyzw( + pose_arr[3] as Real, + pose_arr[4] as Real, + pose_arr[5] as Real, + pose_arr[6] as Real, + ); + + let scene = get_scene_mut_ref(scene_id); + let info = get_kinematic_collider_info(scene, id); + let collider_handle = info.collider; + + let scene = get_scene_mut_ref(scene_id); + let collider = scene.collider_set.get_mut(collider_handle); + + if collider.is_none() { + return; + } + + let isometry = Pose3 { + rotation: quat, + translation: Vector::new(translation.x, translation.y, translation.z), + }; + + // if (info.static_mount.is_some()) { + // let body = scene.rigid_body_set.get_mut(info.static_mount.unwrap()).unwrap(); + // + // if (info.fake_velocities.is_none()) { + // body.set_position(isometry, true); + // } + // + // // body.set_next_kinematic_position(isometry); + // scene.impulse_joint_set.remove_joints_attached_to_rigid_body(info.static_mount.unwrap()); + // } else { + let collider = collider.unwrap(); + + collider.set_position_wrt_parent(isometry); + // } + + info.center_of_mass = Some(Vector3::new( + center_of_mass_arr[0], + center_of_mass_arr[1], + center_of_mass_arr[2], + )); + + info.fake_velocities = Some(RigidBodyVelocity::new( + Vector::new( + velocities_arr[0] as Real, + velocities_arr[1] as Real, + velocities_arr[2] as Real, + ), + Vector::new( + velocities_arr[3] as Real, + velocities_arr[4] as Real, + velocities_arr[5] as Real, + ), + )); +} + +/// Add a chunk to a kinematic sub-level (4096 blocks, each as packed int) +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + x: jint, + y: jint, + z: jint, + data: JIntArray<'local>, +) { + let ints = extract_jint_array!(env, data, 4096); + let mut blocks = Vec::with_capacity(ints.len()); + for block in ints { + let block_collider_id = (block >> 16) as u16; + let voxel_state_id = (block & 0xFFFF) as u16; + blocks.push(( + block_collider_id as u32, + crate::ALL_VOXEL_PHYSICS_STATES[voxel_state_id as usize], + )); + } + let chunk = marten::level::ChunkSection::new(blocks); + + let scene = get_scene_mut_ref(scene_id); + + let info = get_kinematic_collider_info(scene, id); + if let Some(chunk_map) = &mut info.chunk_map { + chunk_map.insert(crate::scene::pack_section_pos(x, y, z), chunk); + } +} + +/// Remove a kinematic sub-level from a scene +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, +) { + let scene = get_scene_mut_ref(scene_id); + let info = scene.level_colliders.remove(&(id as LevelColliderID)); + let info = info.unwrap(); + + scene.collider_set.remove( + info.collider, + &mut scene.island_manager, + &mut scene.rigid_body_set, + true, + ); + + if let Some(mount_handle) = info.static_mount { + scene.rigid_body_set.remove( + mount_handle, + &mut scene.island_manager, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + true, + ); + } +} diff --git a/common/src/main/rust/rapier/src/dispatcher.rs b/common/src/main/rust/rapier/src/dispatcher.rs new file mode 100644 index 0000000..98be179 --- /dev/null +++ b/common/src/main/rust/rapier/src/dispatcher.rs @@ -0,0 +1,883 @@ +use crate::collider::LevelCollider; +use log::info; +use rapier3d::geometry::{ContactManifoldData, Shape}; +use rapier3d::glamx::Pose3; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::parry::query::details::{NormalConstraints, contact_manifold_cuboid_cuboid_shapes}; +use rapier3d::parry::query::{ + ClosestPoints, Contact, ContactManifold, ContactManifoldsWorkspace, DefaultQueryDispatcher, + NonlinearRigidMotion, PersistentQueryDispatcher, QueryDispatcher, ShapeCastHit, + ShapeCastOptions, Unsupported, +}; +use rapier3d::prelude::ShapeType::Custom; +use rapier3d::prelude::{Aabb, Real}; + +use crate::algo::find_collision_pairs; +use crate::scene::{ChunkAccess, LevelColliderID, SableManifoldInfo}; +use crate::{ActiveLevelColliderInfo, PhysicsState, get_physics_state, get_scene_ref}; +use marten::level::VoxelPhysicsState::{Edge, Face, Interior}; +use marten::level::{NEEDS_HOOKS_USER_DATA, VoxelPhysicsState}; +use std::sync::atomic::Ordering; + +/// The distance we scale collision points local to the box collider for before we check interior collisions +/// This helps avoid a missed interior collision when points are slightly outside of their voxel on an axis +/// not aligned with their normal. Example: A horizontal interior collision with a point 0.5001 above the +/// block center. +const INTERIOR_COLLISION_SCALE_FACTOR: Real = 0.99; + +/// The distance at which we offset the normal of a collision point to check if it is inside a voxel collider +/// to rule it as an interior collision +const INTERIOR_COLLISION_CHECK_DISTANCE: f64 = 0.015; + +type IVec3 = Vector3; + +pub struct SableDispatcher; + +impl SableDispatcher { + /// Computes the local, inclusive block bounds of a global aabb with inflation + #[allow(clippy::cast_possible_truncation)] + #[allow(unused)] + fn get_local_block_bounds(mut local_aabb: Aabb, inflation: Real) -> (IVec3, IVec3) { + // Inflate the aabb by the prediction distance + local_aabb.maxs += Vector::splat(inflation); + local_aabb.mins -= Vector::splat(inflation); + + let local_min = IVec3::new( + local_aabb.mins.x.floor() as i32, + local_aabb.mins.y.floor() as i32, + local_aabb.mins.z.floor() as i32, + ); + + let local_max = IVec3::new( + local_aabb.maxs.x.floor() as i32, + local_aabb.maxs.y.floor() as i32, + local_aabb.maxs.z.floor() as i32, + ); + + (local_min, local_max) + } +} + +impl QueryDispatcher for SableDispatcher { + fn intersection_test( + &self, + _pos12: &Pose3, + g1: &dyn Shape, + g2: &dyn Shape, + ) -> Result { + info!("intersect {:?} <-> {:?}", g1.shape_type(), g2.shape_type()); + Err(Unsupported) + } + + fn distance( + &self, + _pos12: &Pose3, + g1: &dyn Shape, + g2: &dyn Shape, + ) -> Result { + info!("distance {:?} <-> {:?}", g1.shape_type(), g2.shape_type()); + Err(Unsupported) + } + + fn contact( + &self, + _pos12: &Pose3, + g1: &dyn Shape, + g2: &dyn Shape, + _prediction: Real, + ) -> Result, Unsupported> { + info!("contact {:?} <-> {:?}", g1.shape_type(), g2.shape_type()); + Err(Unsupported) + } + + fn closest_points( + &self, + _pos12: &Pose3, + g1: &dyn Shape, + g2: &dyn Shape, + _max_dist: Real, + ) -> Result { + info!( + "closest points {:?} <-> {:?}", + g1.shape_type(), + g2.shape_type() + ); + Err(Unsupported) + } + + fn cast_shapes( + &self, + _pos12: &Pose3, + _local_vel12: Vector, + _g1: &dyn Shape, + _g2: &dyn Shape, + _options: ShapeCastOptions, + ) -> Result, Unsupported> { + Err(Unsupported) + } + + fn cast_shapes_nonlinear( + &self, + _motion1: &NonlinearRigidMotion, + _g1: &dyn Shape, + _motion2: &NonlinearRigidMotion, + _g2: &dyn Shape, + _start_time: Real, + _end_time: Real, + _stop_at_penetration: bool, + ) -> Result, Unsupported> { + Err(Unsupported) + } +} + +impl PersistentQueryDispatcher for SableDispatcher +where + ContactData: Default + Copy, +{ + fn contact_manifolds( + &self, + pos12: &Pose3, + g1: &dyn Shape, + g2: &dyn Shape, + prediction: Real, + manifolds: &mut Vec>, + _workspace: &mut Option, + ) -> Result<(), Unsupported> { + if g1.shape_type() != Custom && g2.shape_type() != Custom { + return Err(Unsupported); + } + + if g1.shape_type() == Custom && g2.shape_type() != Custom { + Self::static_world_vs_collider::( + pos12, + g1.as_shape::().unwrap(), + g2, + prediction, + manifolds, + false, + ); + } else if g1.shape_type() != Custom && g2.shape_type() == Custom { + Self::static_world_vs_collider::( + &pos12.inverse(), + g2.as_shape::().unwrap(), + g1, + prediction, + manifolds, + true, + ); + } else { + assert_eq!(g1.shape_type(), Custom); + assert_eq!(g2.shape_type(), Custom); + + // cast to LevelCollider + let g1 = g1.as_shape::().unwrap(); + let g2 = g2.as_shape::().unwrap(); + + let scene = get_scene_ref(g1.scene_id); + + if g1.is_static && !g2.is_static { + Self::world_vs_world::(pos12, g1, g2, prediction, manifolds, false); + } else if !g1.is_static && !g2.is_static { + let body_1 = g1 + .id + .map(|id| &scene.level_colliders[&(id as LevelColliderID)]) + .unwrap(); + let body_2 = g2 + .id + .map(|id| &scene.level_colliders[&(id as LevelColliderID)]) + .unwrap(); + + let extents_1 = body_1.local_bounds_max.unwrap() - body_1.local_bounds_min.unwrap() + + Vector3::new(1, 1, 1); + let extents_2 = body_2.local_bounds_max.unwrap() - body_2.local_bounds_min.unwrap() + + Vector3::new(1, 1, 1); + + let volume_1 = extents_1.x * extents_1.y * extents_1.z; + let volume_2 = extents_2.x * extents_2.y * extents_2.z; + + // Swap the bodies so we're always doing the least amount of work possible for collision detection + let swap = volume_1 < volume_2; + + if swap { + Self::world_vs_world::( + &pos12.inverse(), + g2, + g1, + prediction, + manifolds, + true, + ); + } else { + Self::world_vs_world::( + pos12, g1, g2, prediction, manifolds, false, + ); + } + } + } + + Ok(()) + } + + fn contact_manifold_convex_convex( + &self, + _pos12: &Pose3, + _g1: &dyn Shape, + _g2: &dyn Shape, + _normal_constraints1: Option<&dyn NormalConstraints>, + _normal_constraints2: Option<&dyn NormalConstraints>, + _prediction: Real, + _manifold: &mut ContactManifold, + ) -> Result<(), Unsupported> { + info!( + "manifolds convex convex {:?} <-> {:?}", + _g1.shape_type(), + _g2.shape_type() + ); + + Err(Unsupported) + } +} + +impl SableDispatcher { + fn static_world_vs_collider( + pos12: &Pose3, + g1: &LevelCollider, + g2: &dyn Shape, + prediction: Real, + manifolds: &mut Vec>, + swap: bool, + ) { + let physics_state = unsafe { get_physics_state() }; + let scene = get_scene_ref(g1.scene_id); + + let collider_info = g1 + .id + .map(|id| &scene.level_colliders[&(id as LevelColliderID)]); + let center_of_mass_1 = + collider_info.map_or(Vector3::zeros(), |b| b.center_of_mass.unwrap()); + + let mut local_aabb = g2.compute_aabb(pos12); + + let margin: Real = 0.1; + local_aabb.maxs += Vector::splat(prediction + margin); + local_aabb.mins -= Vector::splat(prediction + margin); + let local_aabb = + Self::adjust_aabb_for_body(local_aabb, collider_info, center_of_mass_1, prediction); + let (local_min, local_max) = + Self::calculate_local_bounds(local_aabb, center_of_mass_1, prediction); + + let mut manifold_index = 0; + + let chunk_access: &dyn ChunkAccess = if let Some(info) = collider_info + && info.has_own_chunks() + { + info + } else { + scene + }; + + for x in local_min.x..=local_max.x { + for y in local_min.y..=local_max.y { + for z in local_min.z..=local_max.z { + let Some(chunk) = chunk_access.get_chunk(x >> 4, y >> 4, z >> 4) else { + // chunk doesn't exist + continue; + }; + let (block_id, _voxel_collider_state) = chunk.get_block(x & 15, y & 15, z & 15); + + // block id's are unsigned, and offset by 1 to allow for a single "empty" at 0 + if block_id == 0 { + continue; + } + + let voxel_collider_data = &physics_state + .voxel_collider_map + .get((block_id - 1) as usize, IVec3::new(x, y, z)); + + if voxel_collider_data.is_none() { + continue; + } + + let Some(voxel_collider_data) = &voxel_collider_data else { + unreachable!() + }; + + if voxel_collider_data.is_fluid { + continue; + } + + for (min_x, min_y, min_z, max_x, max_y, max_z) in + &voxel_collider_data.collision_boxes + { + if manifolds.len() <= manifold_index { + manifolds.push(ContactManifold::new()); + } + + let center = Vector3::new( + ((min_x + max_x) / 2.0) as f64, + ((min_y + max_y) / 2.0) as f64, + ((min_z + max_z) / 2.0) as f64, + ) + Vector3::new(x as f64, y as f64, z as f64) + - center_of_mass_1; + let center = + Vector::new(center.x as Real, center.y as Real, center.z as Real); + + let half_extents = Vector::new( + (max_x - min_x) / 2.0, + (max_y - min_y) / 2.0, + (max_z - min_z) / 2.0, + ); + + // Translate to match the center of the current block + let mut block_isometry = *pos12; + block_isometry.translation -= center; + + if !swap { + DefaultQueryDispatcher + .contact_manifold_convex_convex( + &block_isometry, + &rapier3d::parry::shape::Cuboid::new(Vector::new( + half_extents.x, + half_extents.y, + half_extents.z, + )), + g2, + None, + None, + prediction, + &mut manifolds[manifold_index], + ) + .expect("uh oh"); + } else { + DefaultQueryDispatcher + .contact_manifold_convex_convex( + &block_isometry.inverse(), + g2, + &rapier3d::parry::shape::Cuboid::new(Vector::new( + half_extents.x, + half_extents.y, + half_extents.z, + )), + None, + None, + prediction, + &mut manifolds[manifold_index], + ) + .expect("uh oh"); + } + + manifolds[manifold_index].data.user_data = + voxel_collider_data.get_user_data(); + + if collider_info.is_some() + && let Some(_velocities) = collider_info.unwrap().fake_velocities + { + manifolds[manifold_index].data.user_data |= NEEDS_HOOKS_USER_DATA; + } + + for point in &mut manifolds[manifold_index].points { + let diff = Vector::new(center.x, center.y, center.z); + match swap { + true => point.local_p2 -= diff, + false => point.local_p1 += diff, + } + } + + manifold_index += 1; + } + } + } + } + + if manifolds.len() > manifold_index { + manifolds.truncate(manifold_index); + } + } + + fn world_vs_world( + pos12: &Pose3, + g1: &LevelCollider, + g2: &LevelCollider, + prediction: Real, + manifolds: &mut Vec>, + swap: bool, + ) { + let physics_state = unsafe { get_physics_state() }; + let scene = get_scene_ref(g1.scene_id); + + let collider_info_1 = g1 + .id + .map(|id| &scene.level_colliders[&(id as LevelColliderID)]); + let collider_info_2 = &scene.level_colliders[&(g2.id.unwrap() as LevelColliderID)]; + let center_of_mass_1 = + collider_info_1.map_or(Vector3::zeros(), |b| b.center_of_mass.unwrap()); + let center_of_mass_2 = collider_info_2.center_of_mass.unwrap(); + + let chunk_access_1: &dyn ChunkAccess = if let Some(info) = collider_info_1 + && info.has_own_chunks() + { + info + } else { + scene + }; + + let chunk_access_2: &dyn ChunkAccess = if collider_info_2.has_own_chunks() { + collider_info_2 + } else { + scene + }; + + // let local_aabb = g2.compute_aabb(&pos12); + // let local_aabb = Self::adjust_aabb_for_body(local_aabb, body_1, center_of_mass_1, prediction); + // let (local_min, local_max) = Self::calculate_local_bounds(local_aabb, center_of_mass_1, prediction); + + let mut manifold_index = 0; + + let pairs = find_collision_pairs( + collider_info_2, + collider_info_1, + pos12, + prediction, + 256, + false, + ); + // if (true) { + // return; + // } + for (static_pos, dynamic_pos) in pairs.iter() { + let static_x = static_pos.x; + let static_y = static_pos.y; + let static_z = static_pos.z; + + let other_bx = dynamic_pos.x; + let other_by = dynamic_pos.y; + let other_bz = dynamic_pos.z; + + let Some(chunk) = chunk_access_1.get_chunk(static_x >> 4, static_y >> 4, static_z >> 4) + else { + // chunk doesn't exist + continue; + }; + let (block_id, voxel_collider_state) = + chunk.get_block(static_x & 15, static_y & 15, static_z & 15); + + // block id's are unsigned, and offset by 1 to allow for a single "empty" at 0 + if block_id == 0 { + continue; + } + + let voxel_collider_data = &physics_state.voxel_collider_map.get( + (block_id - 1) as usize, + IVec3::new(static_x, static_y, static_z), + ); + + let Some(voxel_collider_data) = &voxel_collider_data else { + continue; + }; + + for (min_x, min_y, min_z, max_x, max_y, max_z) in &voxel_collider_data.collision_boxes { + if manifolds.len() <= manifold_index { + manifolds.push(ContactManifold::new()); + } + + let center = Vector3::new( + ((min_x + max_x) / 2.0) as f64, + ((min_y + max_y) / 2.0) as f64, + ((min_z + max_z) / 2.0) as f64, + ) + Vector3::new(static_x as f64, static_y as f64, static_z as f64) + - center_of_mass_1; + let center = Vector3::new(center.x as Real, center.y as Real, center.z as Real); + + let half_extents = Vector3::new( + (max_x - min_x) / 2.0, + (max_y - min_y) / 2.0, + (max_z - min_z) / 2.0, + ); + + // Translate to match the center of the current block + let mut block_isometry = *pos12; + block_isometry.translation -= Vector::new(center.x, center.y, center.z); + + // let block_bounds = Aabb::new( + // Point3::new(-half_extents.x, -half_extents.y, -half_extents.z) + // + center, + // Point3::new(half_extents.x, half_extents.y, half_extents.z) + // + center, + // ) + // .transform_by(&pos12.inverse()); + + // let (other_block_min, other_block_max) = Self::calculate_local_bounds(block_bounds, center_of_mass_2, prediction); + + // for other_bx in other_block_min.x..=other_block_max.x { + // for other_by in other_block_min.y..=other_block_max.y { + // for other_bz in other_block_min.z..=other_block_max.z { + let Some(other_chunk) = + chunk_access_2.get_chunk(other_bx >> 4, other_by >> 4, other_bz >> 4) + else { + // chunk doesn't exist + continue; + }; + let (other_block_id, other_voxel_collider_state) = + other_chunk.get_block(other_bx & 15, other_by & 15, other_bz & 15); + + // block id's are unsigned, and offset by 1 to allow for a single "empty" at 0 + if other_block_id == 0 { + continue; + } + + if Self::can_ignore_collision(voxel_collider_state, other_voxel_collider_state) { + continue; + } + + let other_voxel_collider_data = &physics_state.voxel_collider_map.get( + (other_block_id - 1) as usize, + IVec3::new(other_bx, other_by, other_bz), + ); + + let Some(other_voxel_collider_data) = &other_voxel_collider_data else { + continue; + }; + + for ( + other_min_x, + other_min_y, + other_min_z, + other_max_x, + other_max_y, + other_max_z, + ) in &other_voxel_collider_data.collision_boxes + { + if manifolds.len() <= manifold_index { + manifolds.push(ContactManifold::new()); + } + + let other_center = + Vector3::new( + ((other_min_x + other_max_x) / 2.0) as f64, + ((other_min_y + other_max_y) / 2.0) as f64, + ((other_min_z + other_max_z) / 2.0) as f64, + ) + Vector3::new(other_bx as f64, other_by as f64, other_bz as f64) + - center_of_mass_2; + let other_center = Vector3::new( + other_center.x as Real, + other_center.y as Real, + other_center.z as Real, + ); + + let other_half_extents = Vector3::new( + (other_max_x - other_min_x) / 2.0, + (other_max_y - other_min_y) / 2.0, + (other_max_z - other_min_z) / 2.0, + ); + + // combine block isometries + let mut combined_block_isometry = block_isometry; + + let transformed = combined_block_isometry.rotation.mul_vec3(Vector::new( + other_center.x, + other_center.y, + other_center.z, + )); + + combined_block_isometry.translation += transformed; + + let mut new_manifold: ContactManifold = + ContactManifold::new(); + contact_manifold_cuboid_cuboid_shapes( + &combined_block_isometry, + &rapier3d::parry::shape::Cuboid::new(Vector::new( + half_extents.x, + half_extents.y, + half_extents.z, + )), + &rapier3d::parry::shape::Cuboid::new(Vector::new( + other_half_extents.x, + other_half_extents.y, + other_half_extents.z, + )), + prediction, + &mut new_manifold, + ); + + if !is_interior_collision( + chunk_access_1, + chunk_access_2, + collider_info_1, + collider_info_2, + IVec3::new(static_x, static_y, static_z), + IVec3::new(other_bx, other_by, other_bz), + center, + other_center, + center_of_mass_1, + center_of_mass_2, + &mut new_manifold, + ) { + let index = scene + .manifold_info_map + .counter + .fetch_add(1, Ordering::Relaxed); + + scene.manifold_info_map.list.insert( + index, + if swap { + SableManifoldInfo { + pos_a: IVec3::new(other_bx, other_by, other_bz), + pos_b: IVec3::new(static_x, static_y, static_z), + col_a: other_block_id as usize, + col_b: block_id as usize, + } + } else { + SableManifoldInfo { + pos_a: IVec3::new(static_x, static_y, static_z), + pos_b: IVec3::new(other_bx, other_by, other_bz), + col_a: block_id as usize, + col_b: other_block_id as usize, + } + }, + ); + + new_manifold.data.user_data = voxel_collider_data.get_user_data() + | other_voxel_collider_data.get_user_data() + | ((index << 1) as u32); + + if let Some(_velocities) = collider_info_2.fake_velocities { + new_manifold.data.user_data |= NEEDS_HOOKS_USER_DATA; + } + if let Some(info) = collider_info_1 + && info.fake_velocities.is_some() + { + new_manifold.data.user_data |= NEEDS_HOOKS_USER_DATA; + } + + manifolds[manifold_index] = new_manifold; + + for point in &mut manifolds[manifold_index].points { + point.local_p1 += Vector::new(center.x, center.y, center.z); + point.local_p2 += + Vector::new(other_center.x, other_center.y, other_center.z); + } + + manifold_index += 1; + } + } + } + } + + // swap bodies in the manifolds + if swap { + for manifold in manifolds.iter_mut() { + for point in &mut manifold.points { + // swap positions + std::mem::swap(&mut point.local_p1, &mut point.local_p2); + } + + // swap normals + std::mem::swap(&mut manifold.local_n1, &mut manifold.local_n2); + } + } + + if manifolds.len() > manifold_index { + manifolds.truncate(manifold_index); + } + } + + /// Adjusts the AABB for a given body + #[inline(always)] + fn adjust_aabb_for_body( + mut local_aabb: Aabb, + body: Option<&ActiveLevelColliderInfo>, + center_of_mass: Vector3, + prediction: Real, + ) -> Aabb { + if let Some(body) = body { + let local_bounds_min = body.local_bounds_min.unwrap(); + let local_bounds_max = body.local_bounds_max.unwrap(); + + let body_aabb = Aabb::new( + Vector::new( + (local_bounds_min.x as f64 - center_of_mass.x) as Real - prediction, + (local_bounds_min.y as f64 - center_of_mass.y) as Real - prediction, + (local_bounds_min.z as f64 - center_of_mass.z) as Real - prediction, + ), + Vector::new( + ((local_bounds_max.x + 1) as f64 - center_of_mass.x) as Real + prediction, + ((local_bounds_max.y + 1) as f64 - center_of_mass.y) as Real + prediction, + ((local_bounds_max.z + 1) as f64 - center_of_mass.z) as Real + prediction, + ), + ); + + local_aabb = local_aabb.intersection(&body_aabb).unwrap_or(local_aabb); + } + + local_aabb + } + + /// Calculates local bounds based on AABB and prediction + #[inline(always)] + fn calculate_local_bounds( + aabb: Aabb, + center_of_mass: Vector3, + prediction: Real, + ) -> (IVec3, IVec3) { + let maxs = Vector3::::new( + aabb.maxs.x as f64 + center_of_mass.x, + aabb.maxs.y as f64 + center_of_mass.y, + aabb.maxs.z as f64 + center_of_mass.z, + ) + Vector3::repeat(prediction as f64); + + let mins = Vector3::::new( + aabb.mins.x as f64 + center_of_mass.x, + aabb.mins.y as f64 + center_of_mass.y, + aabb.mins.z as f64 + center_of_mass.z, + ) - Vector3::repeat(prediction as f64); + + let local_min = IVec3::new( + mins.x.floor() as i32, + mins.y.floor() as i32, + mins.z.floor() as i32, + ); + + let local_max = IVec3::new( + maxs.x.floor() as i32, + maxs.y.floor() as i32, + maxs.z.floor() as i32, + ); + + (local_min, local_max) + } + + #[inline(always)] + #[must_use] + fn can_ignore_collision( + voxel_collider_state: VoxelPhysicsState, + other_voxel_collider_state: VoxelPhysicsState, + ) -> bool { + (other_voxel_collider_state == voxel_collider_state && voxel_collider_state == Face) + || voxel_collider_state == Interior + || other_voxel_collider_state == Interior + || (voxel_collider_state == Edge && other_voxel_collider_state == Face) + || (voxel_collider_state == Face && other_voxel_collider_state == Edge) + } +} + +fn to_f64(vec: Vector) -> Vector3 { + Vector3::new(vec.x as f64, vec.y as f64, vec.z as f64) +} + +fn get_block_pos(vec: Vector3) -> IVec3 { + IVec3::new( + vec.x.floor() as i32, + vec.y.floor() as i32, + vec.z.floor() as i32, + ) +} + +fn is_interior_collision( + chunk_access_1: &dyn ChunkAccess, + chunk_access_2: &dyn ChunkAccess, + collider_info_1: Option<&ActiveLevelColliderInfo>, + collider_info_2: &ActiveLevelColliderInfo, + block_a: IVec3, + block_b: IVec3, + center: Vector3, + other_center: Vector3, + center_of_mass_1: Vector3, + center_of_mass_2: Vector3, + manifold: &mut ContactManifold, +) -> bool { + let physics_state = unsafe { get_physics_state() }; + + manifold.points.retain(|point| { + if collider_info_1.is_none() + || (collider_info_1.unwrap().local_bounds_min.unwrap() + != collider_info_1.unwrap().local_bounds_max.unwrap()) + { + let world_p1 = + to_f64(point.local_p1 * 0.997 + Vector::new(center.x, center.y, center.z)) + + center_of_mass_1; + + let normal1 = to_f64(manifold.local_n1); + let displaced_p1 = world_p1 + normal1 * 0.01; + + if is_inside_voxel_collider(chunk_access_1, physics_state, block_a, displaced_p1) { + return false; + } + } + + if collider_info_2.local_bounds_min.unwrap() != collider_info_2.local_bounds_max.unwrap() { + let normal2 = to_f64(manifold.local_n2); + + // we have to "pull in the points" a tiny bit incase they're outside of the block slightly off-normal + let world_p2 = to_f64( + point.local_p2 * INTERIOR_COLLISION_SCALE_FACTOR + + Vector::new(other_center.x, other_center.y, other_center.z), + ) + center_of_mass_2; + + let displaced_p2 = world_p2 + normal2 * INTERIOR_COLLISION_CHECK_DISTANCE; + + if is_inside_voxel_collider(chunk_access_2, physics_state, block_b, displaced_p2) { + return false; + } + } + + true + }); + + false +} + +fn is_inside_voxel_collider( + chunk_access: &dyn ChunkAccess, + physics_state: &PhysicsState, + ignore_block: IVec3, + world_pos: Vector3, +) -> bool { + let block_pos = get_block_pos(world_pos); + + if ignore_block == block_pos { + return false; + } + + let Some(chunk) = chunk_access.get_chunk(block_pos.x >> 4, block_pos.y >> 4, block_pos.z >> 4) + else { + return false; + }; + let (block_id, _) = chunk.get_block(block_pos.x & 15, block_pos.y & 15, block_pos.z & 15); + + if block_id == 0 { + return false; + } + + let voxel_data = physics_state + .voxel_collider_map + .get((block_id - 1) as usize, block_pos); + + let Some(voxel_data) = voxel_data else { + return false; + }; + + if voxel_data.is_fluid { + return false; + } + + let local_pos = Vector3::new( + world_pos.x - block_pos.x as f64, + world_pos.y - block_pos.y as f64, + world_pos.z - block_pos.z as f64, + ); + + for &(min_x, min_y, min_z, max_x, max_y, max_z) in &voxel_data.collision_boxes { + if local_pos.x as Real >= min_x + && local_pos.x as Real <= max_x + && local_pos.y as Real >= min_y + && local_pos.y as Real <= max_y + && local_pos.z as Real >= min_z + && local_pos.z as Real <= max_z + { + return true; + } + } + + false +} diff --git a/common/src/main/rust/rapier/src/event_handler.rs b/common/src/main/rust/rapier/src/event_handler.rs new file mode 100644 index 0000000..b527431 --- /dev/null +++ b/common/src/main/rust/rapier/src/event_handler.rs @@ -0,0 +1,90 @@ +use crate::collider::LevelCollider; +use crate::{PHYSICS_STATE, ReportedCollision}; +use rapier3d::dynamics::RigidBodySet; +use rapier3d::geometry::{ColliderSet, CollisionEvent, ContactPair}; +use rapier3d::na::Vector3; +use rapier3d::pipeline::EventHandler; +use rapier3d::prelude::*; + +pub struct SableEventHandler { + pub scene_id: i32, +} + +impl EventHandler for SableEventHandler { + fn handle_collision_event( + &self, + _bodies: &RigidBodySet, + _colliders: &ColliderSet, + _event: CollisionEvent, + _contact_pair: Option<&ContactPair>, + ) { + } + + fn handle_contact_force_event( + &self, + _dt: Real, + _bodies: &RigidBodySet, + colliders: &ColliderSet, + contact_pair: &ContactPair, + total_force_magnitude: Real, + ) { + let Some(state) = (unsafe { &mut PHYSICS_STATE }) else { + panic!("no physics state!") + }; + + let Some(scene) = state.scenes.get_mut(&self.scene_id) else { + panic!("No scene with given ID!"); + }; + + if total_force_magnitude < 0.1 { + return; + } + + for manifold in contact_pair.manifolds.iter() { + for point in manifold.points.iter() { + let collider_a = colliders.get(contact_pair.collider1).unwrap(); + let collider_b = colliders.get(contact_pair.collider2).unwrap(); + let Some(level_collider_a) = collider_a.shape().as_shape::() else { + continue; + }; + let Some(level_collider_b) = collider_b.shape().as_shape::() else { + continue; + }; + + let local_n1 = manifold.local_n1; + let local_n2 = manifold.local_n2; + + let local_p1 = point.local_p1; + let local_p2 = point.local_p2; + + let collision = ReportedCollision { + body_a: level_collider_a.id, + body_b: level_collider_b.id, + force_amount: total_force_magnitude as f64, + local_normal_a: Vector3::::new( + local_n1.x as f64, + local_n1.y as f64, + local_n1.z as f64, + ), + local_normal_b: Vector3::::new( + local_n2.x as f64, + local_n2.y as f64, + local_n2.z as f64, + ), + local_point_a: Vector3::::new( + local_p1.x as f64, + local_p1.y as f64, + local_p1.z as f64, + ), + local_point_b: Vector3::::new( + local_p2.x as f64, + local_p2.y as f64, + local_p2.z as f64, + ), + }; + + scene.reported_collisions.push(collision); + } + } + } +} diff --git a/common/src/main/rust/rapier/src/groups.rs b/common/src/main/rust/rapier/src/groups.rs new file mode 100644 index 0000000..71e75b3 --- /dev/null +++ b/common/src/main/rust/rapier/src/groups.rs @@ -0,0 +1,9 @@ +use rapier3d::prelude::{Group, InteractionGroups, InteractionTestMode}; + +pub const LEVEL_GROUP: InteractionGroups = InteractionGroups::new( + Group::GROUP_1, + Group::GROUP_1.union(Group::GROUP_2), + InteractionTestMode::Or, +); +pub const ROPE_GROUP: InteractionGroups = + InteractionGroups::new(Group::GROUP_2, Group::GROUP_1, InteractionTestMode::Or); diff --git a/common/src/main/rust/rapier/src/hooks.rs b/common/src/main/rust/rapier/src/hooks.rs new file mode 100644 index 0000000..0ab3fbd --- /dev/null +++ b/common/src/main/rust/rapier/src/hooks.rs @@ -0,0 +1,260 @@ +use jni::objects::{JDoubleArray, JObject, JValue}; +use jni::signature::ReturnType; +use jni::sys::{jdouble, jint, jvalue}; +use marten::Real; +use marten::level::VoxelColliderData; +use rapier3d::geometry::{Collider, SolverContact}; +use rapier3d::math::{Pose, Vec3, Vector}; +use rapier3d::na::Vector3; +use rapier3d::pipeline::{ContactModificationContext, PhysicsHooks}; + +use crate::collider::LevelCollider; +use crate::scene::LevelColliderID; +use crate::{get_physics_state, get_scene_mut, get_scene_ref}; + +pub struct SablePhysicsHooks; + +impl PhysicsHooks for SablePhysicsHooks { + fn modify_solver_contacts(&self, context: &mut ContactModificationContext) { + if !VoxelColliderData::needs_hooks(*context.user_data) { + return; + } + + let mut remove = false; + for contact in context.solver_contacts.iter_mut() { + let Some(collider_a) = context.colliders.get(context.collider1) else { + panic!("No collider A!"); + }; + + let Some(collider_b) = context.colliders.get(context.collider2) else { + panic!("No collider B!"); + }; + + let level_collider_a = collider_a.shape().as_shape::(); + let level_collider_b = collider_b.shape().as_shape::(); + + if level_collider_a.is_none() && level_collider_b.is_none() { + continue; + } + + let mut tangent_velo: Vector = Vector::ZERO; + + let mut velocity = 0.0; + let mut friction_multiplier = 1.0; + + if let Some(handle) = context.rigid_body1 { + let mut velo_1 = context + .bodies + .get(handle) + .unwrap() + .velocity_at_point(contact.point); + velo_1 += Self::get_fake_velocity(contact, collider_a, level_collider_a); + velocity += velo_1.dot(*context.normal); + } + if let Some(handle) = context.rigid_body2 { + let mut velo_2 = context + .bodies + .get(handle) + .unwrap() + .velocity_at_point(contact.point); + velo_2 += Self::get_fake_velocity(contact, collider_a, level_collider_a); + velocity -= velo_2.dot(*context.normal); + } + + velocity = velocity.abs(); + + let mut restitution: Real = 0.0; + + let manifold_index = (*context.user_data >> 1) as usize; + + if let Some(level_collider_a) = level_collider_a { + let (add_velo, remove_a, friction_mult, block_restitution) = handle_block_params( + collider_a.position(), + collider_a, + Some(level_collider_a), + &contact.point, + velocity, + manifold_index, + true, + ); + tangent_velo += add_velo; + remove |= remove_a; + friction_multiplier *= friction_mult; + restitution = restitution.max(block_restitution); + } + + if let Some(level_collider_b) = level_collider_b { + let (add_velo, remove_b, friction_mult, block_restitution) = handle_block_params( + collider_b.position(), + collider_b, + Some(level_collider_b), + &contact.point, + velocity, + manifold_index, + false, + ); + tangent_velo -= add_velo; + remove |= remove_b; + friction_multiplier *= friction_mult; + restitution = restitution.max(block_restitution); + } + + tangent_velo -= *context.normal * tangent_velo.dot(*context.normal); + + contact.tangent_velocity = tangent_velo; + contact.friction *= friction_multiplier; + contact.restitution = contact.restitution.max(restitution); + } + + if remove { + context.solver_contacts.clear() + } + } +} + +impl SablePhysicsHooks { + fn get_fake_velocity( + contact: &SolverContact, + collider_a: &Collider, + level_collider_a: Option<&LevelCollider>, + ) -> Vector { + if let Some(level_collider_a) = level_collider_a + && level_collider_a.id.is_some() + { + let scene_id = level_collider_a.scene_id; + let scene = get_scene_ref(scene_id); + + let collider_info = + &scene.level_colliders[&(level_collider_a.id.unwrap() as LevelColliderID)]; + + if let Some(fake_velo) = collider_info.fake_velocities { + let transform = collider_a.position(); + return transform.transform_vector(fake_velo.velocity_at_point( + transform.inverse_transform_point(contact.point), + Vector::ZERO, + )); + }; + } + Vector::new(0.0, 0.0, 0.0) + } +} + +fn handle_block_params( + isometry: &Pose, + _collider: &Collider, + level_collider: Option<&LevelCollider>, + global_point: &Vector, + velocity: Real, + manifold_index: usize, + body_a: bool, +) -> (Vector, bool, Real, Real) { + let state = unsafe { get_physics_state() }; + let scene = get_scene_mut(level_collider.unwrap().scene_id); + + let collider_info = level_collider.and_then(|lc| lc.id.map(|id| &scene.level_colliders[&(id)])); + + let mut tangent_velo: Vector = Vector::ZERO; + + if collider_info.is_some() + && let Some(fake_velo) = collider_info.unwrap().fake_velocities + { + tangent_velo += isometry.transform_vector(fake_velo.velocity_at_point( + isometry.inverse_transform_point(*global_point), + Vector::ZERO, + )); + }; + + // Get manifold info from the map + let Some(manifold_info) = scene.manifold_info_map.list.get(&manifold_index) else { + return (tangent_velo, false, 1.0, 0.0); + }; + + let block_coord = if body_a { + manifold_info.pos_a + } else { + manifold_info.pos_b + }; + + let block_id = if body_a { + manifold_info.col_a as u32 + } else { + manifold_info.col_b as u32 + }; + + let center_of_mass = collider_info.map_or(Vector3::zeros(), |b| b.center_of_mass.unwrap()); + let local = isometry.inverse_transform_point(*global_point); + let block_coord_d: Vector3 = + Vector3::new(local.x as f64, local.y as f64, local.z as f64) + center_of_mass; + + if block_id == 0 { + return (tangent_velo, false, 1.0, 0.0); + } + + let voxel_collider_data = &state + .voxel_collider_map + .voxel_colliders + .get((block_id - 1) as usize); + let mut friction_multiplier = 1.0; + let mut restitution = 0.0; + + if voxel_collider_data.is_none() { + return (tangent_velo, false, friction_multiplier, restitution); + } + + let voxel_collider_data = voxel_collider_data.unwrap().as_ref().unwrap(); + friction_multiplier *= voxel_collider_data.friction; + restitution = voxel_collider_data.restitution; + + let Some(contact_events) = voxel_collider_data.contact_events.as_ref() else { + return (tangent_velo, false, friction_multiplier, restitution); + }; + + if collider_info.is_some() && collider_info.unwrap().has_own_chunks() { + return (tangent_velo, false, friction_multiplier, restitution); + } + + let Some(current_step_vm) = &mut scene.current_step_vm else { + panic!("No current step env!"); + }; + + let Some(method) = &voxel_collider_data.contact_method else { + panic!("No contact method!"); + }; + + let args = &[ + JValue::Int(block_coord.x as jint), + JValue::Int(block_coord.y as jint), + JValue::Int(block_coord.z as jint), + JValue::Double(block_coord_d.x), + JValue::Double(block_coord_d.y), + JValue::Double(block_coord_d.z), + JValue::Double(velocity as jdouble), + ]; + + let args: Vec = args.iter().map(|v| v.as_jni()).collect(); + + let mut guard = current_step_vm.attach_current_thread().unwrap(); + + let result = + unsafe { guard.call_method_unchecked(contact_events, method, ReturnType::Array, &args) } + .unwrap(); + let arr = JDoubleArray::from(JObject::try_from(result).unwrap()); + + let mut velo_arr: [jdouble; 4] = [0.0, 0.0, 0.0, 0.0]; + guard + .get_double_array_region(arr, 0, &mut velo_arr) + .unwrap(); + + let velo = Vec3::new( + velo_arr[0] as Real, + velo_arr[1] as Real, + velo_arr[2] as Real, + ); + + ( + tangent_velo + isometry.transform_vector(velo), + velo_arr[3] > 0.0, + friction_multiplier, + restitution, + ) +} diff --git a/common/src/main/rust/rapier/src/joints.rs b/common/src/main/rust/rapier/src/joints.rs new file mode 100644 index 0000000..71f6a7d --- /dev/null +++ b/common/src/main/rust/rapier/src/joints.rs @@ -0,0 +1,639 @@ +use crate::config::{JOINT_SPRING_DAMPING_RATIO, JOINT_SPRING_FREQUENCY}; +use crate::scene::LevelColliderID; +use crate::{get_scene_mut_ref, get_scene_ref}; +use jni::JNIEnv; +use jni::objects::{JClass, JDoubleArray}; +use jni::sys::{jboolean, jdouble, jint, jlong}; +use marten::Real; +use rapier3d::dynamics::{ + GenericJointBuilder, JointAxesMask, JointAxis, RevoluteJointBuilder, SpringCoefficients, +}; +use rapier3d::glamx::Quat; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::prelude::{FixedJointBuilder, ImpulseJointHandle}; +use std::collections::HashMap; + +type SableJointHandle = jlong; +type RapierJointHandle = ImpulseJointHandle; + +struct SubLevelJoint { + id_a: Option, + id_b: Option, + + pos_a: Vector3, + pos_b: Vector3, + normal_a: Vector3, + normal_b: Vector3, + + rotation_a: Option, + rotation_b: Option, + + handle: RapierJointHandle, + + fixed: bool, + contacts_enabled: bool, +} + +pub struct SableJointSet { + joints: HashMap, +} + +impl SableJointSet { + #[must_use] + pub fn new() -> Self { + Self { + joints: HashMap::new(), + } + } +} + +pub fn tick(scene_id: jint) { + let scene = get_scene_mut_ref(scene_id); + // filter the joints + scene + .joint_set + .joints + .retain(|_handle, joint| scene.impulse_joint_set.contains(joint.handle)); + // update every joint + for (_handle, joint) in scene.joint_set.joints.iter_mut() { + let impulse_joint = scene + .impulse_joint_set + .get_mut(joint.handle, false) + .unwrap(); + impulse_joint.data.contacts_enabled = joint.contacts_enabled; + if !joint.fixed && joint.rotation_a.is_none() { + impulse_joint.data.set_local_axis1(Vector::new( + joint.normal_a.x as Real, + joint.normal_a.y as Real, + joint.normal_a.z as Real, + )); + } + let local_anchor_1 = joint.pos_a + - if let Some(id_a) = joint.id_a { + let rb_a = &scene.level_colliders[&id_a]; + rb_a.center_of_mass.unwrap() + } else { + Vector3::new(0.0, 0.0, 0.0) + }; + impulse_joint.data.set_local_anchor1(Vector::new( + local_anchor_1.x as Real, + local_anchor_1.y as Real, + local_anchor_1.z as Real, + )); + if !joint.fixed && joint.rotation_b.is_none() { + impulse_joint.data.set_local_axis2(Vector::new( + joint.normal_b.x as Real, + joint.normal_b.y as Real, + joint.normal_b.z as Real, + )); + } + let local_anchor_2 = joint.pos_b + - if let Some(id_b) = joint.id_b { + let rb_b = &scene.level_colliders[&id_b]; + rb_b.center_of_mass.unwrap() + } else { + Vector3::new(0.0, 0.0, 0.0) + }; + impulse_joint.data.set_local_anchor2(Vector::new( + local_anchor_2.x as Real, + local_anchor_2.y as Real, + local_anchor_2.z as Real, + )); + if let Some(rotation_a) = joint.rotation_a { + impulse_joint.data.local_frame1.rotation = rotation_a; + } + if let Some(rotation_b) = joint.rotation_b { + impulse_joint.data.local_frame2.rotation = rotation_b; + } + } +} + +const AXES: [JointAxis; 6] = [ + JointAxis::LinX, + JointAxis::LinY, + JointAxis::LinZ, + JointAxis::AngX, + JointAxis::AngY, + JointAxis::AngZ, +]; + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, + axis: jint, + target_pos: jdouble, + stiffness: jdouble, + damping: jdouble, + has_max_force: jboolean, + max_force: jdouble, +) { + let scene = get_scene_mut_ref(scene_id); + let Some(joint) = scene.joint_set.joints.get(&joint_id) else { + return; + }; + + let data = &mut scene + .impulse_joint_set + .get_mut(joint.handle, false) + .unwrap() + .data; + data.set_motor_position( + AXES[axis as usize], + target_pos as Real, + stiffness as Real, + damping as Real, + ); + + if has_max_force > 0 { + data.motors[axis as usize].max_force = max_force as Real + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, +) -> jboolean { + let scene = get_scene_ref(scene_id); + if scene.joint_set.joints.contains_key(&joint_id) { + 1 + } else { + 0 + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, + store: JDoubleArray<'local>, +) { + let scene = get_scene_ref(scene_id); + let joint = scene.joint_set.joints.get(&joint_id).unwrap(); + let impulse_joint = scene.impulse_joint_set.get(joint.handle).unwrap(); + let impulses = impulse_joint.impulses; + + let arr: [jdouble; 6] = [ + impulses[0] as jdouble, + impulses[1] as jdouble, + impulses[2] as jdouble, + impulses[3] as jdouble, + impulses[4] as jdouble, + impulses[5] as jdouble, + ]; + + env.set_double_array_region(&store, 0, &arr).unwrap(); +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, + enabled: jboolean, +) { + let scene = get_scene_mut_ref(scene_id); + let Some(joint) = scene.joint_set.joints.get_mut(&joint_id) else { + return; + }; + + joint.contacts_enabled = enabled > 0; +} + +// removes a constraint +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, +) { + let scene = get_scene_mut_ref(scene_id); + if let Some(joint) = scene.joint_set.joints.remove(&joint_id) { + scene.impulse_joint_set.remove(joint.handle, true); + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id_a: jint, + id_b: jint, + local_x_a: jdouble, + local_y_a: jdouble, + local_z_a: jdouble, + local_x_b: jdouble, + local_y_b: jdouble, + local_z_b: jdouble, + axis_x_a: jdouble, + axis_y_a: jdouble, + axis_z_a: jdouble, + axis_x_b: jdouble, + axis_y_b: jdouble, + axis_z_b: jdouble, +) -> SableJointHandle { + let scene = get_scene_mut_ref(scene_id); + + let rb_a = if id_a == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_a as LevelColliderID)] + }; + + let rb_b = if id_b == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_b as LevelColliderID)] + }; + + let revolute = RevoluteJointBuilder::new( + Vector::new(axis_x_a as Real, axis_y_a as Real, axis_z_a as Real).normalize(), + ) + .local_anchor1(Vector::ZERO) + .local_anchor2(Vector::ZERO) + .softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )); + + let handle = scene + .impulse_joint_set + .insert(rb_a, rb_b, revolute.build(), true); + + let (index, generation) = handle.0.into_raw_parts(); + let handle_long: SableJointHandle = index as jlong | (generation as jlong) << 32; + + scene.joint_set.joints.insert( + handle_long, + SubLevelJoint { + id_a: if id_a == -1 { + None + } else { + Some(id_a as LevelColliderID) + }, + id_b: if id_b == -1 { + None + } else { + Some(id_b as LevelColliderID) + }, + + pos_a: Vector3::new(local_x_a, local_y_a, local_z_a), + pos_b: Vector3::new(local_x_b, local_y_b, local_z_b), + + normal_a: Vector3::new(axis_x_a, axis_y_a, axis_z_a), + normal_b: Vector3::new(axis_x_b, axis_y_b, axis_z_b), + + rotation_a: None, + rotation_b: None, + + handle, + + fixed: false, + contacts_enabled: true, + }, + ); + + handle_long +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id_a: jint, + id_b: jint, + local_x_a: jdouble, + local_y_a: jdouble, + local_z_a: jdouble, + local_x_b: jdouble, + local_y_b: jdouble, + local_z_b: jdouble, + local_q_x: jdouble, + local_q_y: jdouble, + local_q_z: jdouble, + local_q_w: jdouble, +) -> SableJointHandle { + let scene = get_scene_mut_ref(scene_id); + + let rb_a = if id_a == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_a as LevelColliderID)] + }; + + let rb_b = if id_b == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_b as LevelColliderID)] + }; + + let quat = Quat::from_xyzw( + local_q_x as Real, + local_q_y as Real, + local_q_z as Real, + local_q_w as Real, + ); + let mut revolute = FixedJointBuilder::new() + .local_anchor1(Vector::ZERO) + .local_anchor2(Vector::ZERO) + .softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )); + revolute.0.data.local_frame1.rotation = quat; + + let handle = scene + .impulse_joint_set + .insert(rb_a, rb_b, revolute.build(), true); + + let (index, generation) = handle.0.into_raw_parts(); + let handle_long: SableJointHandle = index as jlong | (generation as jlong) << 32; + + scene.joint_set.joints.insert( + handle_long, + SubLevelJoint { + id_a: if id_a == -1 { + None + } else { + Some(id_a as LevelColliderID) + }, + id_b: if id_b == -1 { + None + } else { + Some(id_b as LevelColliderID) + }, + + pos_a: Vector3::new(local_x_a, local_y_a, local_z_a), + pos_b: Vector3::new(local_x_b, local_y_b, local_z_b), + + normal_a: Vector3::new(0.0, 0.0, 0.0), + normal_b: Vector3::new(0.0, 0.0, 0.0), + + rotation_a: None, + rotation_b: None, + + handle, + + fixed: true, + contacts_enabled: false, + }, + ); + + handle_long +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id_a: jint, + id_b: jint, + local_x_a: jdouble, + local_y_a: jdouble, + local_z_a: jdouble, + local_x_b: jdouble, + local_y_b: jdouble, + local_z_b: jdouble, + local_q_x: jdouble, + local_q_y: jdouble, + local_q_z: jdouble, + local_q_w: jdouble, +) -> SableJointHandle { + let scene = get_scene_mut_ref(scene_id); + + let rb_a = if id_a == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_a as LevelColliderID)] + }; + + let rb_b = if id_b == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_b as LevelColliderID)] + }; + + let mut joint = GenericJointBuilder::new(JointAxesMask::empty()).softness( + SpringCoefficients::new(JOINT_SPRING_FREQUENCY, JOINT_SPRING_DAMPING_RATIO), + ); + + let quat = Quat::from_xyzw( + local_q_x as Real, + local_q_y as Real, + local_q_z as Real, + local_q_w as Real, + ); + joint.0.local_frame1.rotation = quat; + + let handle = scene + .impulse_joint_set + .insert(rb_a, rb_b, joint.build(), true); + + let (index, generation) = handle.0.into_raw_parts(); + let handle_long: SableJointHandle = index as jlong | (generation as jlong) << 32; + + scene.joint_set.joints.insert( + handle_long, + SubLevelJoint { + id_a: if id_a == -1 { + None + } else { + Some(id_a as LevelColliderID) + }, + id_b: if id_b == -1 { + None + } else { + Some(id_b as LevelColliderID) + }, + + pos_a: Vector3::new(local_x_a, local_y_a, local_z_a), + pos_b: Vector3::new(local_x_b, local_y_b, local_z_b), + + normal_a: Vector3::new(0.0, 0.0, 0.0), + normal_b: Vector3::new(0.0, 0.0, 0.0), + + rotation_a: None, + rotation_b: None, + + handle, + + fixed: true, + contacts_enabled: true, + }, + ); + + handle_long +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id_a: jint, + id_b: jint, + local_x_a: jdouble, + local_y_a: jdouble, + local_z_a: jdouble, + local_q_x_a: jdouble, + local_q_y_a: jdouble, + local_q_z_a: jdouble, + local_q_w_a: jdouble, + local_x_b: jdouble, + local_y_b: jdouble, + local_z_b: jdouble, + local_q_x_b: jdouble, + local_q_y_b: jdouble, + local_q_z_b: jdouble, + local_q_w_b: jdouble, + locked_axes_mask: jint, +) -> SableJointHandle { + let scene = get_scene_mut_ref(scene_id); + + let rb_a = if id_a == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_a as LevelColliderID)] + }; + + let rb_b = if id_b == -1 { + scene.ground_handle.unwrap() + } else { + scene.rigid_bodies[&(id_b as LevelColliderID)] + }; + + let locked_axes = JointAxesMask::from_bits_truncate(locked_axes_mask as u8); + + let rotation_a = Quat::from_xyzw( + local_q_x_a as Real, + local_q_y_a as Real, + local_q_z_a as Real, + local_q_w_a as Real, + ); + let rotation_b = Quat::from_xyzw( + local_q_x_b as Real, + local_q_y_b as Real, + local_q_z_b as Real, + local_q_w_b as Real, + ); + + let mut joint = GenericJointBuilder::new(locked_axes).softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )); + joint.0.local_frame1.rotation = rotation_a; + joint.0.local_frame2.rotation = rotation_b; + + let handle = scene + .impulse_joint_set + .insert(rb_a, rb_b, joint.build(), true); + + let (index, generation) = handle.0.into_raw_parts(); + let handle_long: SableJointHandle = index as jlong | (generation as jlong) << 32; + + scene.joint_set.joints.insert( + handle_long, + SubLevelJoint { + id_a: if id_a == -1 { + None + } else { + Some(id_a as LevelColliderID) + }, + id_b: if id_b == -1 { + None + } else { + Some(id_b as LevelColliderID) + }, + + pos_a: Vector3::new(local_x_a as f64, local_y_a as f64, local_z_a as f64), + pos_b: Vector3::new(local_x_b as f64, local_y_b as f64, local_z_b as f64), + + normal_a: Vector3::new(0.0, 0.0, 0.0), + normal_b: Vector3::new(0.0, 0.0, 0.0), + + rotation_a: Some(rotation_a), + rotation_b: Some(rotation_b), + + handle, + + fixed: true, + contacts_enabled: true, + }, + ); + + handle_long +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + joint_id: jlong, + side: jint, + local_x: jdouble, + local_y: jdouble, + local_z: jdouble, + local_q_x: jdouble, + local_q_y: jdouble, + local_q_z: jdouble, + local_q_w: jdouble, +) { + let scene = get_scene_mut_ref(scene_id); + let Some(joint) = scene.joint_set.joints.get_mut(&joint_id) else { + return; + }; + + let position = Vector3::new(local_x as f64, local_y as f64, local_z as f64); + let rotation = Quat::from_xyzw( + local_q_x as Real, + local_q_y as Real, + local_q_z as Real, + local_q_w as Real, + ); + + match side { + 0 => { + joint.pos_a = position; + joint.rotation_a = Some(rotation); + } + 1 => { + joint.pos_b = position; + joint.rotation_b = Some(rotation); + } + _ => panic!("Invalid constraint frame side: {}", side), + } +} diff --git a/common/src/main/rust/rapier/src/lib.rs b/common/src/main/rust/rapier/src/lib.rs new file mode 100644 index 0000000..e842b50 --- /dev/null +++ b/common/src/main/rust/rapier/src/lib.rs @@ -0,0 +1,1396 @@ +#![allow(static_mut_refs)] + +pub mod algo; +pub mod boxes; +mod buoyancy; +mod collider; +mod config; +mod contraptions; +mod dispatcher; +mod event_handler; +mod groups; +mod hooks; +mod joints; +pub mod rope; +mod scene; +mod voxel_collider; + +use jni::objects::{JClass, JDoubleArray, JIntArray}; +use jni::sys::{jboolean, jdouble, jint}; +use jni::{JNIEnv, JavaVM}; +use rapier3d::glamx::Quat; +use rapier3d::math::Vector; +use std::collections::HashMap; + +use fern::colors::{Color, ColoredLevelConfig}; +use log::info; + +use crate::buoyancy::compute_buoyancy; +use crate::collider::LevelCollider; +use crate::dispatcher::SableDispatcher; +use crate::event_handler::SableEventHandler; +use crate::groups::LEVEL_GROUP; +use crate::joints::SableJointSet; +use crate::rope::RopeMap; +use crate::scene::{ChunkAccess, ChunkMap, SableManifoldInfoMap, pack_section_pos}; +use crate::voxel_collider::VoxelColliderMap; +use hooks::SablePhysicsHooks; +use marten::Real; +use marten::level::VoxelPhysicsState::Interior; +use marten::level::{ + ALL_VOXEL_PHYSICS_STATES, BlockState, CHUNK_SHIFT, ChunkSection, OCTREE_CHUNK_SHIFT, + OCTREE_CHUNK_SIZE, OctreeChunkSection, VoxelPhysicsState, +}; +use marten::octree::SubLevelOctree; +use rapier3d::na::{Matrix3, Vector3 as NaVector3}; +use rapier3d::parry::query::{DefaultQueryDispatcher, QueryDispatcher}; +use rapier3d::prelude::*; +use scene::{LevelColliderID, PhysicsScene}; + +#[derive(Debug)] +pub struct ActiveLevelColliderInfo { + pub collider: ColliderHandle, + pub static_mount: Option, + pub fake_velocities: Option>, + pub local_bounds_min: Option>, + pub local_bounds_max: Option>, + pub center_of_mass: Option>, + pub octree: Option, + pub chunk_map: Option, + pub scene_id: jint, +} + +impl ChunkAccess for ActiveLevelColliderInfo { + fn get_chunk_mut(&mut self, x: i32, y: i32, z: i32) -> Option<&mut ChunkSection> { + self.chunk_map + .as_mut() + .unwrap() + .get_mut(&pack_section_pos(x, y, z)) + } + + fn get_chunk(&self, x: i32, y: i32, z: i32) -> Option<&ChunkSection> { + self.chunk_map + .as_ref() + .unwrap() + .get(&pack_section_pos(x, y, z)) + } +} + +pub fn get_scene<'a>(scene_id: jint) -> &'a PhysicsScene { + let physics_state = unsafe { &mut PHYSICS_STATE }; + let scene = if physics_state.is_none() { + None + } else { + physics_state.as_ref().unwrap().scenes.get(&scene_id) + }; + + scene.unwrap() +} + +pub fn get_scene_mut<'a>(scene_id: jint) -> &'a mut PhysicsScene { + let physics_state = unsafe { &mut PHYSICS_STATE }; + let scene = if physics_state.is_none() { + None + } else { + physics_state.as_mut().unwrap().scenes.get_mut(&scene_id) + }; + + scene.unwrap() +} + +impl ActiveLevelColliderInfo { + /// Creates a new handle for a sable object with rigidbody and collider handles + #[must_use] + pub fn new(collider: ColliderHandle, scene_id: i32) -> Self { + Self { + collider, + static_mount: None, + fake_velocities: None, + chunk_map: None, + local_bounds_min: None, + local_bounds_max: None, + center_of_mass: None, + octree: None, + scene_id, + } + } + + pub fn has_own_chunks(&self) -> bool { + self.chunk_map.is_some() + } + + /// Sets the local bounds for the object + pub fn set_local_bounds(&mut self, min: NaVector3, max: NaVector3, scene_id: jint) { + if Some(min) != self.local_bounds_min || Some(max) != self.local_bounds_max { + self.local_bounds_min = Some(min); + self.local_bounds_max = Some(max); + + let max_axis = (max - min).max() as u32 + 1; + let smallest_pow_2_above = max_axis.next_power_of_two(); + + let chunk_min = NaVector3::new( + min.x >> CHUNK_SHIFT, + min.y >> CHUNK_SHIFT, + min.z >> CHUNK_SHIFT, + ); + let chunk_max = NaVector3::new( + max.x >> CHUNK_SHIFT, + max.y >> CHUNK_SHIFT, + max.z >> CHUNK_SHIFT, + ); + + self.octree = Some(SubLevelOctree::new( + smallest_pow_2_above.trailing_zeros() as i32 + )); + + let Some(physics_state) = (unsafe { &PHYSICS_STATE }) else { + panic!("No physics state!"); + }; + let Some(scene) = physics_state.scenes.get(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let has_own_chunks = self.has_own_chunks(); + + for cx in chunk_min.x..=chunk_max.x { + for cy in chunk_min.y..=chunk_max.y { + for cz in chunk_min.z..=chunk_max.z { + let chunk = if has_own_chunks { + self.chunk_map + .as_ref() + .unwrap() + .get(&pack_section_pos(cx, cy, cz)) + } else { + scene.get_chunk(cx, cy, cz) + }; + + if let Some(chunk_section) = chunk { + for x in 0..16 { + for y in 0..16 { + for z in 0..16 { + let block_owned = chunk_section.get_block(x, y, z); + if block_owned.1 == VoxelPhysicsState::Empty { + continue; + } + + insert_block_octree( + self.octree.as_mut().unwrap(), + &block_owned, + false, + (x + (cx << CHUNK_SHIFT)) - min.x, + (y + (cy << CHUNK_SHIFT)) - min.y, + (z + (cz << CHUNK_SHIFT)) - min.z, + ); + } + } + } + } + // let chunk = scene.main_level_chunks.get(&pack_section_pos(cx, cy, cz)); + + // if let Some(chunk) = chunk { + // self.insert_chunk(chunk, cx, cy, cz); + // } + } + } + } + } + self.local_bounds_min = Some(min); + self.local_bounds_max = Some(max); + } + + fn insert_chunk(&mut self, chunk_section: &ChunkSection, cx: i32, cy: i32, cz: i32) { + for x in 0..16 { + for y in 0..16 { + for z in 0..16 { + self.insert_block( + x + (cx << CHUNK_SHIFT), + y + (cy << CHUNK_SHIFT), + z + (cz << CHUNK_SHIFT), + &chunk_section.get_block(x, y, z), + false, + ); + } + } + } + } + + fn insert_block(&mut self, x: i32, y: i32, z: i32, state: &BlockState, remove: bool) { + let local_min = self.local_bounds_min.unwrap(); + let x = x - local_min.x; + let y = y - local_min.y; + let z = z - local_min.z; + + let Some(octree) = &mut self.octree else { + panic!("No octree!"); + }; + insert_block_octree(octree, state, remove, x, y, z); + } + + fn contains(&self, x: i32, y: i32, z: i32) -> bool { + if self.local_bounds_min.is_none() || self.local_bounds_max.is_none() { + return false; + } + + let local_min = self.local_bounds_min.unwrap(); + let local_max = self.local_bounds_max.unwrap(); + + x >= local_min.x + && x <= local_max.x + && y >= local_min.y + && y <= local_max.y + && z >= local_min.z + && z <= local_max.z + } +} + +/// The current physics engine state, holding all scenes +pub struct PhysicsState { + /// The integration parameters, updated every time-step + integration_parameters: IntegrationParameters, + + /// An array of i32 IDs -> block collider entries + voxel_collider_map: VoxelColliderMap, + + /// A map of dimension ID -> scene + scenes: HashMap, +} + +/// A collision to report to the Java side. +#[derive(Debug, Clone)] +pub struct ReportedCollision { + body_a: Option, + body_b: Option, + local_point_a: NaVector3, + local_point_b: NaVector3, + local_normal_a: NaVector3, + local_normal_b: NaVector3, + force_amount: f64, +} + +/// The current physics engine state, set during initialization. +pub static mut PHYSICS_STATE: Option = None; +//TODO: safer static state + +#[inline(always)] +pub unsafe fn get_physics_state_mut() -> &'static mut PhysicsState { + unsafe { PHYSICS_STATE.as_mut().expect("No physics state!") } +} + +#[inline(always)] +pub unsafe fn get_physics_state() -> &'static PhysicsState { + unsafe { PHYSICS_STATE.as_ref().expect("No physics state!") } +} + +#[inline(always)] +pub fn get_scene_mut_ref(scene_id: jint) -> &'static mut PhysicsScene { + unsafe { + get_physics_state_mut() + .scenes + .get_mut(&scene_id) + .expect("No scene with given ID!") + } +} + +#[inline(always)] +pub fn get_scene_ref(scene_id: jint) -> &'static PhysicsScene { + unsafe { + get_physics_state() + .scenes + .get(&scene_id) + .expect("No scene with given ID!") + } +} + +#[inline(always)] +pub fn get_rigid_body_mut(scene: &mut PhysicsScene, id: LevelColliderID) -> &mut RigidBody { + let handle = scene.rigid_bodies.get(&id).expect("No rigid body for id"); + &mut scene.rigid_body_set[*handle] +} + +#[inline(always)] +pub fn get_rigid_body(scene: &PhysicsScene, id: LevelColliderID) -> &RigidBody { + let handle = scene.rigid_bodies.get(&id).expect("No rigid body for id"); + &scene.rigid_body_set[*handle] +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + x: jdouble, + y: jdouble, + z: jdouble, + universal_drag: jdouble, +) { + if unsafe { &PHYSICS_STATE }.is_none() { + let colors = ColoredLevelConfig::new() + .info(Color::Green) + .error(Color::Red) + .debug(Color::Blue); + + let _ = fern::Dispatch::new() + .format(move |out, message, record| { + out.finish(format_args!( + "[{}] [{}] ({}) {}", + humantime::format_rfc3339(std::time::SystemTime::now()), + colors.color(record.level()), + record.target(), + message + )) + }) + .level(log::LevelFilter::Info) + .level_for("jni", log::LevelFilter::Error) + .chain(std::io::stdout()) + .apply(); + + unsafe { + PHYSICS_STATE = Some(PhysicsState { + integration_parameters: IntegrationParameters { + dt: 1.0 / 20.0, + + max_ccd_substeps: 3, + normalized_prediction_distance: 0.005, + + contact_softness: SpringCoefficients { + natural_frequency: 30.0, + damping_ratio: 5.0, + }, + // joint_softness: SpringCoefficients { + // natural_frequency: 1.0e2, + // damping_ratio: 1.0, + // }, + normalized_max_corrective_velocity: 50.0, + normalized_allowed_linear_error: 0.0025, + + ..IntegrationParameters::default() + }, + voxel_collider_map: VoxelColliderMap::new(), + scenes: HashMap::new(), + }); + } + } + + unsafe { + let ground = RigidBodyBuilder::fixed(); + + if let Some(state) = &mut PHYSICS_STATE { + let collider = + ColliderBuilder::new(SharedShape::new(LevelCollider::new(None, true, scene_id))) + .collision_groups(LEVEL_GROUP) + .build(); + + let mut scene = PhysicsScene { + scene_id, + pipeline: PhysicsPipeline::new(), + rigid_body_set: RigidBodySet::new(), + collider_set: ColliderSet::new(), + island_manager: IslandManager::new(), + broad_phase: DefaultBroadPhase::new(), + narrow_phase: NarrowPhase::with_query_dispatcher( + SableDispatcher.chain(DefaultQueryDispatcher), + ), + impulse_joint_set: ImpulseJointSet::new(), + multibody_joint_set: MultibodyJointSet::new(), + ccd_solver: CCDSolver::new(), + physics_hooks: SablePhysicsHooks, + event_handler: SableEventHandler { scene_id }, + main_level_chunks: HashMap::::new(), + octree_chunks: HashMap::::new(), + reported_collisions: Vec::with_capacity(16), + joint_set: SableJointSet::new(), + ground_handle: None, + rope_map: RopeMap::default(), + level_colliders: HashMap::::new(), + rigid_bodies: HashMap::::new(), + current_step_vm: None, + gravity: Vector::new(x as Real, y as Real, z as Real), + universal_drag: universal_drag as Real, + manifold_info_map: SableManifoldInfoMap::default(), + }; + + scene.collider_set.insert(collider); + scene.ground_handle = Some(scene.rigid_body_set.insert(ground)); + scene.current_step_vm = + Some(JavaVM::from_raw(env.get_java_vm().unwrap().get_java_vm_pointer()).unwrap()); + state.scenes.insert(scene_id, scene); + } + } + + info!("Rapier initialized scene {}", scene_id); +} + +/// Computes buoyancy +/// Extracts a message from a caught panic payload +fn panic_message(payload: &Box) -> String { + if let Some(s) = payload.downcast_ref::<&str>() { + s.to_string() + } else if let Some(s) = payload.downcast_ref::() { + s.clone() + } else { + "unknown panic".to_string() + } +} + +/// Catches a panic and throws a JVM RuntimeException with the panic message +fn throw_on_panic(env: &mut JNIEnv, result: Result<(), Box>) { + if let Err(payload) = result { + let msg = format!("Rapier native panic: {}", panic_message(&payload)); + let _ = env.throw_new("java/lang/RuntimeException", &msg); + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick<'local>( + mut env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + _time_step: jdouble, +) { + let result = std::panic::catch_unwind(std::panic::AssertUnwindSafe(|| { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + rope::tick(scene_id); + joints::tick(scene_id); + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + compute_buoyancy(scene); + } + } + })); + throw_on_panic(&mut env, result); +} + +/// Steps physics +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step<'local>( + mut env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + time_step: jdouble, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + rope::tick(scene_id); + joints::tick(scene_id); + + state.integration_parameters.dt = time_step as f32; + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + scene.manifold_info_map = SableManifoldInfoMap::default(); + + let result = std::panic::catch_unwind(std::panic::AssertUnwindSafe(|| { + scene.pipeline.step( + scene.gravity, + &state.integration_parameters, + &mut scene.island_manager, + &mut scene.broad_phase, + &mut scene.narrow_phase, + &mut scene.rigid_body_set, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + &mut scene.ccd_solver, + &scene.physics_hooks, + &scene.event_handler, + ); + })); + throw_on_panic(&mut env, result); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + store: JDoubleArray<'local>, +) { + unsafe { + let Some(scene) = get_physics_state().scenes.get(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let rb: &RigidBody = &scene.rigid_body_set[scene.rigid_bodies[&(id as LevelColliderID)]]; + + let arr: [jdouble; 7] = [ + rb.translation().x as jdouble, + rb.translation().y as jdouble, + rb.translation().z as jdouble, + rb.rotation().x as jdouble, + rb.rotation().y as jdouble, + rb.rotation().z as jdouble, + rb.rotation().w as jdouble, + ]; + + env.set_double_array_region(&store, 0, &arr).unwrap(); + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + x: jdouble, + y: jdouble, + z: jdouble, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + scene + .level_colliders + .get_mut(&(id as LevelColliderID)) + .unwrap() + .center_of_mass = Some(NaVector3::new(x, y, z)); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + min_x: jint, + min_y: jint, + min_z: jint, + max_x: jint, + max_y: jint, + max_z: jint, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + scene + .level_colliders + .get_mut(&(id as LevelColliderID)) + .unwrap() + .set_local_bounds( + NaVector3::new(min_x, min_y, min_z), + NaVector3::new(max_x, max_y, max_z), + scene_id, + ); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + pose: JDoubleArray<'local>, +) { + let mut pose_arr: [jdouble; 7] = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]; + env.get_double_array_region(pose, 0, &mut pose_arr).unwrap(); + + let quat = Quat::from_xyzw( + pose_arr[3] as Real, + pose_arr[4] as Real, + pose_arr[5] as Real, + pose_arr[6] as Real, + ); + + let mut rigid_body = RigidBodyBuilder::dynamic() + .ccd_enabled(true) + .translation(Vector::new( + pose_arr[0] as Real, + pose_arr[1] as Real, + pose_arr[2] as Real, + )) + .build(); + rigid_body.set_rotation(quat, false); + let activation_params = rigid_body.activation_mut(); + activation_params.angular_threshold = 0.15; + activation_params.normalized_linear_threshold = 0.15; + + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + rigid_body.set_linear_damping(scene.universal_drag); + rigid_body.set_angular_damping(scene.universal_drag); + rigid_body.enable_gyroscopic_forces(true); + + let handle = scene.rigid_body_set.insert(rigid_body); + + // make a level collider + let collider = ColliderBuilder::new(SharedShape::new(LevelCollider::new( + Some(id as LevelColliderID), + false, + scene_id, + ))) + .friction(0.525) + .active_events(ActiveEvents::CONTACT_FORCE_EVENTS) + .active_hooks(ActiveHooks::MODIFY_SOLVER_CONTACTS) + .density(0.0) + .collision_groups(LEVEL_GROUP) + .build(); + + let collider_handle = + scene + .collider_set + .insert_with_parent(collider, handle, &mut scene.rigid_body_set); + + scene.level_colliders.insert( + id as LevelColliderID, + ActiveLevelColliderInfo::new(collider_handle, scene_id), + ); + + scene.rigid_bodies.insert(id as LevelColliderID, handle); + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel< + 'local, +>( + mut _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let handle = scene.rigid_bodies[&(id as LevelColliderID)]; + scene.rigid_body_set.remove( + handle, + &mut scene.island_manager, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + true, + ); + + scene.level_colliders.remove(&(id as LevelColliderID)); + scene.rigid_bodies.remove(&(id as LevelColliderID)); + } + } +} + +pub fn insert_block_octree( + octree: &mut SubLevelOctree, + state: &BlockState, + remove: bool, + x: i32, + y: i32, + z: i32, +) { + let block_collider_id = state.0; + let block_collider = if block_collider_id > 0 { + let phys_state = unsafe { get_physics_state() }; + Some( + phys_state + .voxel_collider_map + .voxel_colliders + .get(block_collider_id as usize - 1) + .unwrap(), + ) + } else { + None + }; + let voxel_state = state.1; + + let solid = voxel_state != Interior + && voxel_state != VoxelPhysicsState::Empty + && (block_collider_id > 0 + && !block_collider + .unwrap() + .as_ref() + .unwrap() + .collision_boxes + .is_empty()); + + if remove && !solid { + octree.insert(x, y, z, -1); + } + + if solid { + octree.insert(x, y, z, block_collider_id as i32); + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + x: jint, + y: jint, + z: jint, + data: JIntArray<'local>, + global: jboolean, + object_id: jint, +) { + let mut ints: [jint; 4096] = [0; 4096]; + env.get_int_array_region(data, 0, &mut ints).unwrap(); + + let mut blocks = Vec::with_capacity(ints.len()); + + for block in ints { + // split it in half + let block_collider_id = (block >> 16) as u16; + let voxel_state_id = (block & 0xFFFF) as u16; + + blocks.push(( + block_collider_id as u32, + ALL_VOXEL_PHYSICS_STATES[voxel_state_id as usize], + )); + } + + let chunk = ChunkSection::new(blocks); + + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + scene + .main_level_chunks + .insert(pack_section_pos(x, y, z), chunk); + + let chunk = scene + .main_level_chunks + .get(&pack_section_pos(x, y, z)) + .unwrap(); + if global == 0 { + // println!("receving non global physics chunk"); + // println!("object id {:?}", object_id); + if object_id != -1 { + let body = scene + .level_colliders + .get_mut(&(object_id as LevelColliderID)) + .unwrap(); + + body.insert_chunk(chunk, x, y, z); + // println!("inserting blocks to octree"); + // println!("post octree {:?}", body.octree); + // println!("post min {:?}", body.local_bounds_min); + // println!("post max {:?}", body.local_bounds_max); + // println!("post com {:?}", body.center_of_mass); + } + } else { + for bx in 0..16 { + for by in 0..16 { + for bz in 0..16 { + let block = chunk.get_block(bx, by, bz); + let x = bx + (x << CHUNK_SHIFT); + let y = by + (y << CHUNK_SHIFT); + let z = bz + (z << CHUNK_SHIFT); + + // insert into level octree + let ox = x >> OCTREE_CHUNK_SHIFT; + let oy = y >> OCTREE_CHUNK_SHIFT; + let oz = z >> OCTREE_CHUNK_SHIFT; + + let mut octree_chunk = + scene.octree_chunks.get_mut(&pack_section_pos(ox, oy, oz)); + + if octree_chunk.is_none() { + scene.octree_chunks.insert( + pack_section_pos(ox, oy, oz), + OctreeChunkSection::new(), + ); + octree_chunk = + scene.octree_chunks.get_mut(&pack_section_pos(ox, oy, oz)); + } + + let Some(octree_chunk) = octree_chunk else { + panic!("No octree chunk!") + }; + + if block.0 == 0 { + insert_block_octree( + &mut octree_chunk.liquid_octree, + &block, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + insert_block_octree( + &mut octree_chunk.octree, + &block, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } else { + if state.voxel_collider_map.voxel_colliders[(block.0 - 1) as usize] + .as_ref() + .unwrap() + .is_fluid + { + insert_block_octree( + &mut octree_chunk.liquid_octree, + &block, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } else { + insert_block_octree( + &mut octree_chunk.octree, + &block, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } + } + } + } + } + } + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + x: jint, + y: jint, + z: jint, + global: jboolean, +) { + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + scene.main_level_chunks.remove(&pack_section_pos(x, y, z)); + + if global > 0 { + let octree_chunk = scene.octree_chunks.get_mut(&pack_section_pos( + (x << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + (y << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + (z << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + )); + + if let Some(octree_chunk) = octree_chunk { + for bx in 0..16 { + for by in 0..16 { + for bz in 0..16 { + let x = bx + (x << CHUNK_SHIFT); + let y = by + (y << CHUNK_SHIFT); + let z = bz + (z << CHUNK_SHIFT); + + insert_block_octree( + &mut octree_chunk.octree, + &(0, VoxelPhysicsState::Empty), + true, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + insert_block_octree( + &mut octree_chunk.liquid_octree, + &(0, VoxelPhysicsState::Empty), + true, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } + } + } + + if octree_chunk.octree.buffer[0] == 0 + && octree_chunk.liquid_octree.buffer[0] == 0 + { + scene.octree_chunks.remove(&pack_section_pos( + (x << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + (y << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + (z << CHUNK_SHIFT) >> OCTREE_CHUNK_SHIFT, + )); + } + } + } + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + x: jint, + y: jint, + z: jint, + block: jint, +) { + let block_collider_id = (block >> 16) as u16; + let voxel_state_id = (block & 0xFFFF) as u16; + + unsafe { + if let Some(state) = &mut PHYSICS_STATE { + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let chunk = scene + .main_level_chunks + .get_mut(&pack_section_pos(x >> 4, y >> 4, z >> 4)); + if let Some(chunk) = chunk { + let block_state = ( + block_collider_id as u32, + ALL_VOXEL_PHYSICS_STATES[voxel_state_id as usize], + ); + + chunk.set_block(x & 15, y & 15, z & 15, block_state); + + let mut any = false; + for (_, sable_body) in scene.level_colliders.iter_mut() { + if sable_body.contains(x, y, z) { + sable_body.insert_block(x, y, z, &block_state, true); + any = true; + break; + } + } + + if !any { + // insert into level octree + let ox = x >> OCTREE_CHUNK_SHIFT; + let oy = y >> OCTREE_CHUNK_SHIFT; + let oz = z >> OCTREE_CHUNK_SHIFT; + + let mut octree_chunk = + scene.octree_chunks.get_mut(&pack_section_pos(ox, oy, oz)); + + if octree_chunk.is_none() { + scene + .octree_chunks + .insert(pack_section_pos(ox, oy, oz), OctreeChunkSection::new()); + octree_chunk = scene.octree_chunks.get_mut(&pack_section_pos(ox, oy, oz)); + } + + let Some(octree_chunk) = octree_chunk else { + panic!("No octree chunk!") + }; + + if block_collider_id == 0 { + insert_block_octree( + &mut octree_chunk.octree, + &block_state, + true, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + insert_block_octree( + &mut octree_chunk.liquid_octree, + &block_state, + true, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } else { + if state + .voxel_collider_map + .voxel_colliders + .get(block_collider_id as usize - 1) + .unwrap() + .as_ref() + .unwrap() + .is_fluid + { + insert_block_octree( + &mut octree_chunk.liquid_octree, + &block_state, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } else { + insert_block_octree( + &mut octree_chunk.octree, + &block_state, + false, + x & (OCTREE_CHUNK_SIZE - 1), + y & (OCTREE_CHUNK_SIZE - 1), + z & (OCTREE_CHUNK_SIZE - 1), + ); + } + } + } + } + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + mass: jdouble, + center_of_mass: JDoubleArray<'local>, + inertia: JDoubleArray<'local>, +) { + let mut com: [jdouble; 3] = [0.0, 0.0, 0.0]; + env.get_double_array_region(center_of_mass, 0, &mut com) + .unwrap(); + + let mut inertia_arr: [jdouble; 9] = [0.0; 9]; + env.get_double_array_region(inertia, 0, &mut inertia_arr) + .unwrap(); + + let inertia_tensor = Matrix3::new( + inertia_arr[0] as Real, + inertia_arr[1] as Real, + inertia_arr[2] as Real, + inertia_arr[3] as Real, + inertia_arr[4] as Real, + inertia_arr[5] as Real, + inertia_arr[6] as Real, + inertia_arr[7] as Real, + inertia_arr[8] as Real, + ); + + let scene = get_scene_mut_ref(scene_id); + + let rb = &mut scene.rigid_body_set[scene.rigid_bodies[&(id as LevelColliderID)]]; + + rb.set_additional_mass_properties( + MassProperties::with_inertia_matrix(Vector::ZERO, mass as Real, inertia_tensor.into()), + true, + ); +} + +/// Teleports the object to the given position. +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + x: jdouble, + y: jdouble, + z: jdouble, + i: jdouble, + j: jdouble, + k: jdouble, + r: jdouble, +) { + let scene = get_scene_mut_ref(scene_id); + let rb = &mut scene.rigid_body_set[scene.rigid_bodies[&(id as LevelColliderID)]]; + + let mut pose = *rb.position(); + pose.translation = Vector::new(x as Real, y as Real, z as Real); + pose.rotation = Quat::from_xyzw(i as Real, j as Real, k as Real, r as Real); + rb.set_position(pose, true); +} + +/// Wakes up an object. +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, +) { + let scene = get_scene_mut_ref(scene_id); + let rb = &mut scene.rigid_body_set[scene.rigid_bodies[&(id as LevelColliderID)]]; + rb.wake_up(true); +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + linear_x: jdouble, + linear_y: jdouble, + linear_z: jdouble, + angular_x: jdouble, + angular_y: jdouble, + angular_z: jdouble, + wake_up: jboolean, +) { + let scene = get_scene_mut_ref(scene_id); + let rb = get_rigid_body_mut(scene, id as LevelColliderID); + + if wake_up == 0 && rb.is_sleeping() { + return; + } + + rb.set_linvel( + rb.linvel() + Vector::new(linear_x as Real, linear_y as Real, linear_z as Real), + wake_up > 0, + ); + rb.set_angvel( + rb.angvel() + Vector::new(angular_x as Real, angular_y as Real, angular_z as Real), + wake_up > 0, + ); +} + +/// Clears & queries all collisions +/// +/// TODO: Do not pass body IDs as doubles, stupid as hell lmao +/// +/// A collision is formatted as follows: +/// [body_a, body_b, force_amount, local_normal_a, local_normal_b, local_point_a, local_point_b] +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, +) -> JDoubleArray<'local> { + let scene = get_scene_mut_ref(scene_id); + + let max_collisions = 100; + + scene.reported_collisions.truncate(max_collisions); + let mut arr: Vec = Vec::with_capacity(scene.reported_collisions.len() * 15); + + for collision in scene.reported_collisions.iter() { + let body_a = if let Some(id) = collision.body_a { + id as jdouble + } else { + -1.0 + }; + + let body_b = if let Some(id) = collision.body_b { + id as jdouble + } else { + -1.0 + }; + + arr.push(body_a); + arr.push(body_b); + arr.push(collision.force_amount as jdouble); + arr.push(collision.local_normal_a.x as jdouble); + arr.push(collision.local_normal_a.y as jdouble); + arr.push(collision.local_normal_a.z as jdouble); + arr.push(collision.local_normal_b.x as jdouble); + arr.push(collision.local_normal_b.y as jdouble); + arr.push(collision.local_normal_b.z as jdouble); + arr.push(collision.local_point_a.x as jdouble); + arr.push(collision.local_point_a.y as jdouble); + arr.push(collision.local_point_a.z as jdouble); + arr.push(collision.local_point_b.x as jdouble); + arr.push(collision.local_point_b.y as jdouble); + arr.push(collision.local_point_b.z as jdouble); + } + + let double_array = _env.new_double_array(arr.len() as jint).unwrap(); + _env.set_double_array_region(&double_array, 0, &arr) + .unwrap(); + + scene.reported_collisions.clear(); + + double_array +} + +/// Applies a force to a body +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + x: jdouble, + y: jdouble, + z: jdouble, + fx: jdouble, + fy: jdouble, + fz: jdouble, + wake_up: jboolean, +) { + unsafe { + let Some(state) = &mut PHYSICS_STATE else { + panic!("No physics state!"); + }; + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let body = scene.rigid_bodies.get(&(id as LevelColliderID)).unwrap(); + let rb = &mut scene.rigid_body_set[*body]; + + if wake_up == 0 && rb.is_sleeping() { + return; + } + + let force: Vector = rb + .rotation() + .mul_vec3(Vector::new(fx as Real, fy as Real, fz as Real)); + let force_pos = rb + .position() + .transform_point(Vector::new(x as Real, y as Real, z as Real)); + + rb.apply_impulse(force, wake_up > 0); + + let torque_impulse = (force_pos - rb.position().translation).cross(force); + rb.apply_torque_impulse(torque_impulse, wake_up > 0); + } +} + +/// Applies a force and torque +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + fx: jdouble, + fy: jdouble, + fz: jdouble, + tx: jdouble, + ty: jdouble, + tz: jdouble, + wake_up: jboolean, +) { + unsafe { + let Some(state) = &mut PHYSICS_STATE else { + panic!("No physics state!"); + }; + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let body = scene.rigid_bodies.get(&(id as LevelColliderID)).unwrap(); + let rb = &mut scene.rigid_body_set[*body]; + + if wake_up == 0 && rb.is_sleeping() { + return; + } + + let force: Vector = rb + .rotation() + .mul_vec3(Vector::new(fx as Real, fy as Real, fz as Real)); + rb.apply_impulse(force, wake_up > 0); + + let torque: Vector = rb + .rotation() + .mul_vec3(Vector::new(tx as Real, ty as Real, tz as Real)); + rb.apply_torque_impulse(torque, wake_up > 0); + } +} + +/// Gets the linear velocity of a body +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + store: JDoubleArray<'local>, +) { + unsafe { + let Some(state) = &mut PHYSICS_STATE else { + panic!("No physics state!"); + }; + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let body = scene.rigid_bodies.get(&(id as LevelColliderID)).unwrap(); + let rb = &scene.rigid_body_set[*body]; + + let vel = rb.linvel(); + + _env.set_double_array_region( + &store, + 0, + &[vel.x as jdouble, vel.y as jdouble, vel.z as jdouble], + ) + .unwrap(); + } +} + +/// Gets the angular velocity of a body +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jint, + store: JDoubleArray<'local>, +) { + unsafe { + let Some(state) = &mut PHYSICS_STATE else { + panic!("No physics state!"); + }; + + let Some(scene) = state.scenes.get_mut(&scene_id) else { + panic!("No scene with given ID!"); + }; + + let body = scene.rigid_bodies.get(&(id as LevelColliderID)).unwrap(); + let rb = &scene.rigid_body_set[*body]; + + let vel = rb.angvel(); + + _env.set_double_array_region( + &store, + 0, + &[vel.x as jdouble, vel.y as jdouble, vel.z as jdouble], + ) + .unwrap(); + } +} diff --git a/common/src/main/rust/rapier/src/rope.rs b/common/src/main/rust/rapier/src/rope.rs new file mode 100644 index 0000000..f2758e2 --- /dev/null +++ b/common/src/main/rust/rapier/src/rope.rs @@ -0,0 +1,502 @@ +use std::collections::HashMap; + +use jni::JNIEnv; +use jni::objects::{JClass, JDoubleArray}; +use jni::sys::{jboolean, jdouble, jint, jlong, jsize}; +use marten::Real; +use rapier3d::dynamics::{GenericJointBuilder, JointAxis, RigidBodyBuilder, SpringCoefficients}; +use rapier3d::geometry::{ColliderBuilder, SharedShape}; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::prelude::{ + ImpulseJointHandle, ImpulseJointSet, JointAxesMask, RigidBodyHandle, RopeJointBuilder, +}; + +use crate::config::{JOINT_SPRING_DAMPING_RATIO, JOINT_SPRING_FREQUENCY}; +use crate::get_scene_mut_ref; +use crate::groups::ROPE_GROUP; +use crate::scene::LevelColliderID; + +const MIN_BOUND_STIFFNESS: Real = 150.0; +const MIN_BOUND_DAMPING: Real = 10.0; + +struct RopeAttachment { + joint: ImpulseJointHandle, + sub_level_id: Option, + location: Vector3, +} + +struct RopeStrand { + points: Vec, + joints: Vec<(ImpulseJointHandle, ImpulseJointHandle)>, + + point_radius: Real, + first_joint_length: Real, + + start_attachment: Option, + end_attachment: Option, +} +#[derive(Default)] +pub struct RopeMap { + counting_id: usize, + ropes: HashMap, +} + +pub fn tick(scene_id: jint) { + let scene = get_scene_mut_ref(scene_id); + for (_, rope) in scene.rope_map.ropes.iter_mut() { + if rope.start_attachment.is_some() { + let attachment = rope.start_attachment.as_ref().unwrap(); + if !scene.impulse_joint_set.contains(attachment.joint) { + rope.start_attachment = None; + } else { + let local_anchor = attachment.location + - if let Some(id_b) = attachment.sub_level_id { + let rb_b = &scene.level_colliders[&id_b]; + rb_b.center_of_mass.unwrap() + } else { + Vector3::new(0.0, 0.0, 0.0) + }; + + let impulse_joint = scene + .impulse_joint_set + .get_mut(attachment.joint, false) + .unwrap(); + impulse_joint + .data + .set_local_anchor1(Vector::from(local_anchor.map(|x| x as Real))); + } + } + + if rope.end_attachment.is_some() { + let attachment = rope.end_attachment.as_ref().unwrap(); + if !scene.impulse_joint_set.contains(attachment.joint) { + rope.end_attachment = None; + } else { + let local_anchor = attachment.location + - if let Some(id_b) = attachment.sub_level_id { + let rb_b = &scene.level_colliders[&id_b]; + rb_b.center_of_mass.unwrap() + } else { + Vector3::new(0.0, 0.0, 0.0) + }; + + let impulse_joint = scene + .impulse_joint_set + .get_mut(attachment.joint, false) + .unwrap(); + impulse_joint.data.set_local_anchor1(Vector::new( + local_anchor.x as Real, + local_anchor.y as Real, + local_anchor.z as Real, + )); + } + } + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + point_radius: jdouble, + first_joint_length: jdouble, + points: JDoubleArray<'local>, + num_points: jint, +) -> jlong { + let mut coordinates = vec![0.0; (num_points * 3) as usize]; + env.get_double_array_region(points, 0, &mut coordinates) + .unwrap(); + + let scene = get_scene_mut_ref(scene_id); + + let mut vec = Vec::with_capacity(num_points as usize); + for i in 0..(num_points as usize) { + let coordinate = Vector::new( + coordinates[i * 3] as Real, + coordinates[i * 3 + 1] as Real, + coordinates[i * 3 + 2] as Real, + ); + + let handle = create_rope_body(scene_id, coordinate, point_radius as Real); + + vec.push(handle); + } + + let mut joints: Vec<(ImpulseJointHandle, ImpulseJointHandle)> = + Vec::with_capacity(vec.len() - 1); + for i in 0..vec.len() - 1 { + let point_handle_0 = &vec[i]; + let point_handle_1 = &vec[i + 1]; + + let length = if i == 0 { + first_joint_length as Real + } else { + 1.0 + }; + joints.push(add_rope_joint( + &mut scene.impulse_joint_set, + point_handle_0, + point_handle_1, + length, + )); + } + + let strand = RopeStrand { + points: vec, + point_radius: point_radius as Real, + first_joint_length: first_joint_length as Real, + start_attachment: None, + end_attachment: None, + joints, + }; + + scene.rope_map.counting_id += 1; + let id = scene.rope_map.counting_id; + + scene.rope_map.ropes.insert(id, strand); + + id as jlong +} + +fn add_rope_joint( + impulse_joint_set: &mut ImpulseJointSet, + point_handle_0: &RigidBodyHandle, + point_handle_1: &RigidBodyHandle, + length: Real, +) -> (ImpulseJointHandle, ImpulseJointHandle) { + let mut joint = RopeJointBuilder::new(length) + .local_anchor1(Vector::ZERO) + .local_anchor2(Vector::ZERO) + .softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )); + joint.0.data.set_limits(JointAxis::LinX, [0.0, length]); + joint.0.data.set_motor_position( + JointAxis::LinX, + length, + MIN_BOUND_STIFFNESS, + MIN_BOUND_DAMPING, + ); + let handle = impulse_joint_set.insert(*point_handle_0, *point_handle_1, joint.build(), true); + let damp_handle = impulse_joint_set.insert( + *point_handle_0, + *point_handle_1, + GenericJointBuilder::new(JointAxesMask::empty()) + .softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )) + .build(), + true, + ); + + let damp_joint = &mut impulse_joint_set.get_mut(damp_handle, false).unwrap().data; + + let damping_strength = 18.0; + damp_joint.set_motor_velocity(JointAxis::LinX, 0.0, damping_strength); + damp_joint.set_motor_velocity(JointAxis::LinY, 0.0, damping_strength); + damp_joint.set_motor_velocity(JointAxis::LinZ, 0.0, damping_strength); + + (handle, damp_handle) +} + +fn create_rope_body(scene_id: i32, coordinate: Vector, point_radius: Real) -> RigidBodyHandle { + let scene = get_scene_mut_ref(scene_id); + let mut rigid_body = RigidBodyBuilder::dynamic() + .translation(coordinate) + .lock_rotations() + .build(); + + rigid_body.set_linear_damping(scene.universal_drag); + rigid_body.set_angular_damping(scene.universal_drag); + + let handle = scene.rigid_body_set.insert(rigid_body); + let collider = ColliderBuilder::new(SharedShape::cuboid( + point_radius as Real, + point_radius as Real, + point_radius as Real, + )) + .friction(0.15) + .mass(0.35) + .collision_groups(ROPE_GROUP) + .build(); + + scene + .collider_set + .insert_with_parent(collider, handle, &mut scene.rigid_body_set); + + handle +} + +/// Removes a rope +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope<'local>( + env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jlong, +) -> JDoubleArray<'local> { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get(&(id as usize)).unwrap(); + + let flattened: Vec = strand + .points + .iter() + .flat_map(|x| { + let pos = scene.rigid_body_set.get(*x).unwrap().position().translation; + vec![pos.x as f64, pos.y as f64, pos.z as f64] + }) + .collect(); + + let double_array = env + .new_double_array((strand.points.len() * 3) as jsize) + .unwrap(); + env.set_double_array_region(&double_array, 0, &flattened) + .unwrap(); + double_array +} + +/// Removes a rope +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jlong, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.remove(&(id as usize)).unwrap(); + for handle in strand.points { + scene.rigid_body_set.remove( + handle, + &mut scene.island_manager, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + true, + ); + } +} + +/// Sets the joint +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jlong, + length: jdouble, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get_mut(&(id as usize)).unwrap(); + + strand.first_joint_length = length as Real; + let first_joint = &mut scene + .impulse_joint_set + .get_mut(strand.joints.first().unwrap().0, true) + .unwrap() + .data; + first_joint.set_limits(JointAxis::LinX, [0.0, length as Real]); + first_joint.set_motor_position( + JointAxis::LinX, + length as Real, + MIN_BOUND_STIFFNESS, + MIN_BOUND_DAMPING, + ); +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jlong, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get_mut(&(id as usize)).unwrap(); + let point = strand.points.remove(0); + strand.joints.remove(0); + scene.rigid_body_set.remove( + point, + &mut scene.island_manager, + &mut scene.collider_set, + &mut scene.impulse_joint_set, + &mut scene.multibody_joint_set, + true, + ); + + let new_first_joint = &mut scene + .impulse_joint_set + .get_mut(strand.joints.first().unwrap().0, false) + .unwrap() + .data; + new_first_joint.set_limits(JointAxis::LinX, [0.0, strand.first_joint_length]); + new_first_joint.set_motor_position( + JointAxis::LinX, + strand.first_joint_length, + MIN_BOUND_STIFFNESS, + MIN_BOUND_DAMPING, + ); + + if strand.start_attachment.is_some() { + scene + .impulse_joint_set + .remove(strand.start_attachment.as_ref().unwrap().joint, true); + strand.start_attachment = None; + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + id: jlong, + x: jdouble, + y: jdouble, + z: jdouble, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get_mut(&(id as usize)).unwrap(); + let point_radius = strand.point_radius; + + // set joint that will no longer be the first + let old_joint = &mut scene + .impulse_joint_set + .get_mut(strand.joints.first().unwrap().0, false) + .unwrap() + .data; + old_joint.set_limits(JointAxis::LinX, [0.0, 1.0]); + old_joint.set_motor_position(JointAxis::LinX, 1.0, MIN_BOUND_STIFFNESS, MIN_BOUND_DAMPING); + + let handle = create_rope_body( + scene_id, + Vector::new(x as Real, y as Real, z as Real), + point_radius, + ); + strand.joints.insert( + 0, + add_rope_joint( + &mut scene.impulse_joint_set, + &handle, + strand.points.first().unwrap(), + strand.first_joint_length, + ), + ); + strand.points.insert(0, handle); + + if strand.start_attachment.is_some() { + scene + .impulse_joint_set + .remove(strand.start_attachment.as_ref().unwrap().joint, true); + strand.start_attachment = None; + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope<'local>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + rope_id: jlong, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get_mut(&(rope_id as usize)).unwrap(); + + for point in &strand.points { + scene.rigid_body_set.get_mut(*point).unwrap().wake_up(true); + } +} + +/// Sets the attachment at a given end +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + scene_id: jint, + rope_id: jlong, + sub_level_id: jint, + x: jdouble, + y: jdouble, + z: jdouble, + end: jboolean, +) { + let scene = get_scene_mut_ref(scene_id); + + let strand = scene.rope_map.ropes.get_mut(&(rope_id as usize)).unwrap(); + + let rope_body = if end > 0 { + strand.points.last() + } else { + strand.points.first() + } + .unwrap(); + let sub_level_body = if sub_level_id == -1 { + scene.ground_handle.unwrap() + } else { + *scene + .rigid_bodies + .get(&(sub_level_id as LevelColliderID)) + .unwrap() + }; + + let joint = RopeJointBuilder::new(0.0) + .local_anchor1(Vector::ZERO) + .local_anchor2(Vector::ZERO) + .softness(SpringCoefficients::new( + JOINT_SPRING_FREQUENCY, + JOINT_SPRING_DAMPING_RATIO, + )); + let joint = scene + .impulse_joint_set + .insert(sub_level_body, *rope_body, joint.build(), true); + + if if end > 0 { + &strand.end_attachment + } else { + &strand.start_attachment + } + .is_some() + { + let attachment = if end > 0 { + &strand.end_attachment + } else { + &strand.start_attachment + } + .as_ref() + .unwrap(); + scene.impulse_joint_set.remove(attachment.joint, true); + } + let attachment = RopeAttachment { + sub_level_id: if sub_level_id == -1 { + None + } else { + Some(sub_level_id as LevelColliderID) + }, + joint, + location: Vector3::new(x, y, z), + }; + + if end > 0 { + strand.end_attachment = Some(attachment); + } else { + strand.start_attachment = Some(attachment); + } +} diff --git a/common/src/main/rust/rapier/src/scene.rs b/common/src/main/rust/rapier/src/scene.rs new file mode 100644 index 0000000..0a0d609 --- /dev/null +++ b/common/src/main/rust/rapier/src/scene.rs @@ -0,0 +1,121 @@ +use crate::event_handler::SableEventHandler; +use crate::hooks::SablePhysicsHooks; +use crate::joints::SableJointSet; +use crate::rope::RopeMap; +use crate::{ActiveLevelColliderInfo, ReportedCollision}; +use dashmap::DashMap; +use jni::JavaVM; +use marten::Real; +use marten::level::{ChunkSection, OctreeChunkSection}; +use rapier3d::dynamics::{ + CCDSolver, ImpulseJointSet, IslandManager, MultibodyJointSet, RigidBodyHandle, RigidBodySet, +}; +use rapier3d::geometry::{ColliderSet, DefaultBroadPhase, NarrowPhase}; +use rapier3d::math::Vector; +use rapier3d::na::Vector3; +use rapier3d::pipeline::PhysicsPipeline; +use std::collections::HashMap; +use std::sync::atomic::AtomicUsize; + +pub type LevelColliderID = usize; + +pub trait ChunkAccess { + #[allow(unused)] + fn get_chunk_mut(&mut self, x: i32, y: i32, z: i32) -> Option<&mut ChunkSection>; + fn get_chunk(&self, x: i32, y: i32, z: i32) -> Option<&ChunkSection>; +} + +#[inline(always)] +pub fn pack_section_pos(i: i32, j: i32, k: i32) -> i64 { + let mut l: i64 = 0; + l |= (i as i64 & 4194303i64) << 42; + l |= j as i64 & 1048575i64; + l | (k as i64 & 4194303i64) << 20 +} + +pub type ChunkMap = HashMap; + +/// A physics scene +pub struct PhysicsScene { + pub scene_id: i32, + pub pipeline: PhysicsPipeline, + pub rigid_body_set: RigidBodySet, + pub collider_set: ColliderSet, + + pub island_manager: IslandManager, + pub broad_phase: DefaultBroadPhase, + pub narrow_phase: NarrowPhase, + pub impulse_joint_set: ImpulseJointSet, + pub multibody_joint_set: MultibodyJointSet, + pub ccd_solver: CCDSolver, + pub physics_hooks: SablePhysicsHooks, + pub event_handler: SableEventHandler, + + /// A 3-dimensional map of chunk sections for collision. + /// chunk coordinates -> chunk section + pub main_level_chunks: ChunkMap, + pub octree_chunks: HashMap, + + /// All collisions substantial enough to be considered for collision events. + pub reported_collisions: Vec, + + /// The companion joint set + pub joint_set: SableJointSet, + + /// Rope map + pub rope_map: RopeMap, + + /// The handle to a static rigidbody + pub ground_handle: Option, + + /// A map of unique IDs -> rigid bodies for the Java side in sable to reference. + pub level_colliders: HashMap, + pub rigid_bodies: HashMap, + pub current_step_vm: Option, + + /// The current gravity vector for all bodies. [m/s^2] + pub gravity: Vector, + + /// Universal linear drag applied to all bodies + pub universal_drag: Real, + + /// Universal angular drag applied to all bodies + pub manifold_info_map: SableManifoldInfoMap, +} +#[derive(Default)] +pub struct SableManifoldInfoMap { + pub list: DashMap, + pub counter: AtomicUsize, +} + +pub struct SableManifoldInfo { + pub pos_a: Vector3, + pub pos_b: Vector3, + pub col_a: usize, + pub col_b: usize, +} + +impl ChunkAccess for PhysicsScene { + fn get_chunk_mut(&mut self, x: i32, y: i32, z: i32) -> Option<&mut ChunkSection> { + self.main_level_chunks.get_mut(&pack_section_pos(x, y, z)) + } + + fn get_chunk(&self, x: i32, y: i32, z: i32) -> Option<&ChunkSection> { + self.main_level_chunks.get(&pack_section_pos(x, y, z)) + } +} + +impl PhysicsScene { + pub fn get_octree_chunk(&self, x: i32, y: i32, z: i32) -> Option<&OctreeChunkSection> { + self.octree_chunks.get(&pack_section_pos(x, y, z)) + } + + pub fn get_octree_chunk_mut( + &mut self, + x: i32, + y: i32, + z: i32, + ) -> Option<&mut OctreeChunkSection> { + self.octree_chunks.get_mut(&pack_section_pos(x, y, z)) + } +} diff --git a/common/src/main/rust/rapier/src/voxel_collider.rs b/common/src/main/rust/rapier/src/voxel_collider.rs new file mode 100644 index 0000000..2badf7f --- /dev/null +++ b/common/src/main/rust/rapier/src/voxel_collider.rs @@ -0,0 +1,140 @@ +use std::collections::HashMap; + +use jni::JNIEnv; +use jni::objects::{JClass, JDoubleArray, JObject}; +use jni::sys::{jboolean, jdouble, jint}; +use marten::Real; +use marten::level::{SableMethodID, VoxelColliderData}; +use rapier3d::na::Vector3; + +use crate::get_physics_state_mut; + +type IVec3 = Vector3; + +/// The physics data of a blockstate +#[derive(Debug)] +pub struct VoxelColliderMap { + pub(crate) voxel_colliders: Vec>, + dynamic_colliders: HashMap>, +} + +impl VoxelColliderMap { + pub fn new() -> Self { + Self { + voxel_colliders: Vec::new(), + dynamic_colliders: HashMap::new(), + } + } + + pub fn get(&self, index: usize, block_pos: IVec3) -> Option<&VoxelColliderData> { + let collider = &self.voxel_colliders[index]; + + if collider.is_some() && collider.as_ref().unwrap().dynamic { + let dynamic_collider = self.dynamic_colliders.get(&block_pos); + + if let Some(data) = dynamic_collider { + return data.as_ref(); + } + } + + collider.as_ref() + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider< + 'local, +>( + mut env: JNIEnv<'static>, + _class: JClass<'local>, + friction: jdouble, + volume: jdouble, + restitution: jdouble, + is_fluid: jboolean, + contact_events: JObject, + dynamic: jboolean, +) -> jint { + let state = unsafe { get_physics_state_mut() }; + + let next_index = state.voxel_collider_map.voxel_colliders.len(); + + let global_ref = if contact_events.is_null() { + None + } else { + Some(env.new_global_ref(contact_events).unwrap()) + }; + + let global_method = if let Some(global_ref_value) = &global_ref { + let class = env.get_object_class(global_ref_value).unwrap(); + + let id = SableMethodID( + env.get_method_id( + class, + String::from("onCollision"), + String::from("(IIIDDDD)[D"), + ) + .unwrap(), + ); + Some(id) + } else { + None + }; + + state + .voxel_collider_map + .voxel_colliders + .push(Some(VoxelColliderData { + collision_boxes: Vec::new(), + is_fluid: is_fluid > 0, + friction: friction as Real, + volume: volume as Real, + restitution: restitution as Real, + contact_events: global_ref, + contact_method: global_method, + dynamic: dynamic > 0, + })); + + next_index as jint +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox< + 'local, +>( + env: JNIEnv<'local>, + _class: JClass<'local>, + index: jint, + box_bounds: JDoubleArray<'local>, +) { + let state = unsafe { get_physics_state_mut() }; + + let mut bounds: [jdouble; 6] = [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]; + env.get_double_array_region(box_bounds, 0, &mut bounds) + .unwrap(); + + if let Some(data) = &mut state.voxel_collider_map.voxel_colliders[index as usize] { + data.collision_boxes.push(( + bounds[0] as f32, + bounds[1] as f32, + bounds[2] as f32, + bounds[3] as f32, + bounds[4] as f32, + bounds[5] as f32, + )); + } +} + +#[unsafe(no_mangle)] +pub extern "system" fn Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes< + 'local, +>( + _env: JNIEnv<'local>, + _class: JClass<'local>, + index: jint, +) { + let state = unsafe { get_physics_state_mut() }; + + if let Some(data) = &mut state.voxel_collider_map.voxel_colliders[index as usize] { + data.collision_boxes.clear() + } +} diff --git a/common/src/main/rust/rust-toolchain.toml b/common/src/main/rust/rust-toolchain.toml new file mode 100644 index 0000000..ff98d58 --- /dev/null +++ b/common/src/main/rust/rust-toolchain.toml @@ -0,0 +1,2 @@ +[toolchain] +channel = "nightly-2026-01-29" diff --git a/config/checkstyle/checkstyle.xml b/config/checkstyle/checkstyle.xml new file mode 100644 index 0000000..80e8fe0 --- /dev/null +++ b/config/checkstyle/checkstyle.xml @@ -0,0 +1,8 @@ + + + + + + diff --git a/fabric/.gradle/loom-cache/launch.cfg b/fabric/.gradle/loom-cache/launch.cfg new file mode 100644 index 0000000..6955ea2 --- /dev/null +++ b/fabric/.gradle/loom-cache/launch.cfg @@ -0,0 +1,13 @@ +commonProperties + fabric.development=true + log4j.configurationFile=C:\Users\user\IdeaProjects\sable\fabric\.gradle\loom-cache\log4j.xml + log4j2.formatMsgNoLookups=true + fabric.defaultModDistributionNamespace=intermediary + fabric.defaultMixinRemapType=mixin + fabric.remapClasspathFile=C:\Users\user\IdeaProjects\sable\fabric\.gradle\loom-cache\remapClasspath.txt + fabric.log.disableAnsi=false +clientArgs + --assetIndex + 1.21.1-17 + --assetsDir + C:\Users\user\.gradle\caches\fabric-loom\assets \ No newline at end of file diff --git a/fabric/.gradle/loom-cache/log4j.xml b/fabric/.gradle/loom-cache/log4j.xml new file mode 100644 index 0000000..068c203 --- /dev/null +++ b/fabric/.gradle/loom-cache/log4j.xml @@ -0,0 +1,69 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/fabric/.gradle/loom-cache/remapClasspath.txt b/fabric/.gradle/loom-cache/remapClasspath.txt new file mode 100644 index 0000000..4c1a748 --- /dev/null +++ b/fabric/.gradle/loom-cache/remapClasspath.txt @@ -0,0 +1 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.ibm.icu\icu4j\73.2\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\icu4j-73.2.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\blocklist\1.0.10\5c685c5ffa94c4cd39496c7184c1d122e515ecef\blocklist-1.0.10.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\patchy\2.2.10\da05971b07cbb379d002cf7eaec6a2048211fefc\patchy-2.2.10.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\text2speech\1.17.9\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\text2speech-1.17.9.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-codec\commons-codec\1.16.0\4e3eb3d79888d76b54e28b350915b5dc3919c9de\commons-codec-1.16.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-logging\commons-logging\1.2\4bfc12adfe4842bf07b657f0369c4cb522955686\commons-logging-1.2.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-compress\1.26.0\659feffdd12280201c8aacb8f7be94f9a883c824\commons-compress-1.26.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpclient\4.5.13\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\httpclient-4.5.13.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.4.16\51cf043c87253c9f58b539c9f7e44c8894223850\httpcore-4.4.16.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\lwjgl-freetype-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\efa1eb78c5ccd840e9f329717109b5e892d72f8e\lwjgl-glfw-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\b543467b7ff3c6920539a88ee602d34098628be5\lwjgl-jemalloc-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\lwjgl-openal-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\2f6b0147078396a58979125a4c947664e98293a\lwjgl-opengl-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\25dd6161988d7e65f71d5065c99902402ee32746\lwjgl-stb-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\lwjgl-tinyfd-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\lwjgl-3.3.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\54188f271e388e7f313aea995e82f58ce2cdb809\netty-transport-native-epoll-4.1.97.Final-linux-x86_64.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\5514744c588190ffda076b35a9b8c9f24946a960\netty-transport-native-epoll-4.1.97.Final-linux-aarch_64.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\dev.ryanhcode.sable-companion\sable-companion-fabric-1.21.1\1.6.0\1abf7be9716f9b736256123e871d99749f18d92\sable-companion-fabric-1.21.1-1.6.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\foundry.veil\veil-fabric-1.21.1\4.0.0\61bcdc2ee8c6b0c3656818961e47c4185802c244\veil-fabric-1.21.1-4.0.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\fuzs.forgeconfigapiport\forgeconfigapiport-fabric\21.1.3\280eeeefcd96b0cebd3bb1d57ebcf87e0e8798df\forgeconfigapiport-fabric-21.1.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\fabric-loader\0.18.4\dc4682125d5db647d6ce80a98b98945835adcd4b\fabric-loader-0.18.4.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\24.0.1\13c5c75c4206580aa4d683bffee658caae6c9f43\annotations-24.0.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\gg.moonflower\molang-compiler\3.1.1.19\c7c0f9a9d0431c3485a0b6d2a4fb87e3de415ff9\molang-compiler-3.1.1.19.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\io.github.ocelot\glsl-processor\0.2.3\f43cf0a51050fcdcbe8253368f0d77cf0439bf04\glsl-processor-0.2.3.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-api\0.102.0+1.21.1\669a75bcbba10bc3fa15f31733587cefb8779064\fabric-api-0.102.0+1.21.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-data-generation-api-v1\20.2.16+16c4ae256a\7a00ce812a6a282c56cffb80fd28535bc0b68ed0\fabric-data-generation-api-v1-20.2.16+16c4ae256a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-screen-handler-api-v1\1.3.86+b55973446a\e583e7b3eef6e767aebda6eb5a4d8c15afae76c8\fabric-screen-handler-api-v1-1.3.86+b55973446a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-registry-sync-v0\5.3.1+e3eddc2119\245b0ea9614f6e3cdbb2b6a72652b04fc08f3566\fabric-registry-sync-v0-5.3.1+e3eddc2119.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-transfer-api-v1\5.1.16+3dccd3436a\362e0ad3635e1708ade3555e93814708fce3c441\fabric-transfer-api-v1-5.1.16+3dccd3436a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-api-lookup-api-v1\1.6.68+b55973446a\bb92963d820a6a4ee138a06e389ba3dcb63373a5\fabric-api-lookup-api-v1-1.6.68+b55973446a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-content-registries-v0\8.0.16+b55973446a\3639f615fad08884a535ab66d35fc90c7c878bc0\fabric-content-registries-v0-8.0.16+b55973446a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-convention-tags-v1\2.0.19+7f945d5b6a\240eebde0b7c929147eb74cb3f72e759db158920\fabric-convention-tags-v1-2.0.19+7f945d5b6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-convention-tags-v2\2.5.0+c5e2b5c66a\d1d0eaedd31dc8670506a7b54ec7431f1b3ed65d\fabric-convention-tags-v2-2.5.0+c5e2b5c66a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-lifecycle-events-v1\2.6.0+0865547519\8ebc6b6193c200c1a3f59da46b272b8776902fcd\fabric-lifecycle-events-v1-2.6.0+0865547519.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-gametest-api-v1\2.0.4+6fc22b996a\b8cf7427857e15c76b3f2a34f5487d0ded2dae66\fabric-gametest-api-v1-2.0.4+6fc22b996a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-item-group-api-v1\4.1.4+780172706a\8fd41c0ae17ca6cb1d9047e90757d7b4f9508b55\fabric-item-group-api-v1-4.1.4+780172706a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-loot-api-v2\3.0.14+3f89f5a56a\1b47d084ef2d32c8ecb2ab8968daa9e1040c7014\fabric-loot-api-v2-3.0.14+3f89f5a56a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-loot-api-v3\1.0.2+3f89f5a56a\db810ce86f6b725796c738332bdfed3410e95fc3\fabric-loot-api-v3-1.0.2+3f89f5a56a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-data-attachment-api-v1\1.1.27+1daea2156a\ce110e6eff44e042c63e0c244b4cb512ea285d72\fabric-data-attachment-api-v1-1.1.27+1daea2156a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-object-builder-api-v1\15.2.0+40875a936a\b592717fbcf782813f4ec3cab7e46d462e4dee48\fabric-object-builder-api-v1-15.2.0+40875a936a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-resource-loader-v0\1.3.1+5b5275af19\c99e9676a0f0780f57641b66e416d0c1fd2d1a6f\fabric-resource-loader-v0-1.3.1+5b5275af19.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-events-interaction-v0\0.7.12+ba9dae066a\94d8bc50d65beabf92bf1edceb9d8710fe5d29ad\fabric-events-interaction-v0-0.7.12+ba9dae066a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-recipe-api-v1\5.0.12+650897126a\b570a8ab4059806c987fc2b602d17e96724dd9a7\fabric-recipe-api-v1-5.0.12+650897126a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-networking-api-v1\4.3.0+c7469b2119\b0aa856f0852b5b4027f3302e19719bb98d710e0\fabric-networking-api-v1-4.3.0+c7469b2119.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-command-api-v1\1.2.49+f71b366f6a\7d7b2c6bee160df485c19f277f0cfc0394bb0c0d\fabric-command-api-v1-1.2.49+f71b366f6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-commands-v0\0.2.66+df3654b36a\30a84c55454632b7635e2167d58ff8fb8ec4c34e\fabric-commands-v0-0.2.66+df3654b36a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-command-api-v2\2.2.28+6ced4dd919\165a5de823fd40d68b15a1c5aa7a23873cf54137\fabric-command-api-v2-2.2.28+6ced4dd919.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-keybindings-v0\0.2.45+df3654b36a\3ef85f29a47c8b8b7ac1fcd0576bf98e162746d6\fabric-keybindings-v0-0.2.45+df3654b36a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-key-binding-api-v1\1.0.47+0af3f5a719\56e37a44bd5344e7373cf6c60b351bc0a2340570\fabric-key-binding-api-v1-1.0.47+0af3f5a719.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-renderer-registries-v1\3.2.68+df3654b36a\3421a595a53bf562d5c3603766ca6e1b67eac51f\fabric-renderer-registries-v1-3.2.68+df3654b36a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-rendering-v0\1.1.71+df3654b36a\e65ef15eca7894a8c9a93d4c0cacd9eeac19ff29\fabric-rendering-v0-1.1.71+df3654b36a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-rendering-v1\5.1.0+ab4c25a019\41fbcf454400758ee4fae9877dfed982860465c1\fabric-rendering-v1-5.1.0+ab4c25a019.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-renderer-indigo\1.7.0+c705a49c6a\85b6fcb2de444ba9331694bcb3f6a3c33a101fca\fabric-renderer-indigo-1.7.0+c705a49c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-renderer-api-v1\3.4.1+b4d813fc19\b5bdc59274c144eee79f3a0f3f238beb9a981e51\fabric-renderer-api-v1-3.4.1+b4d813fc19.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.0\861dbcf2757dd6701c98b3949198549ccb5f62ff\toml-3.8.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.0\2498dd2b3120dd49e963e2feab8fa5d0c5f80e0a\core-3.8.0.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.6\c0cdda9d211e965d2a4448aa3fd86110f2f8c2de\asm-tree-9.6.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-blockrenderlayer-v1\1.1.52+0af3f5a76a\96710d9c23b9289bc637ba526cf7244936a3241d\fabric-blockrenderlayer-v1-1.1.52+0af3f5a76a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-client-tags-api-v1\1.1.15+6573ed8c6a\a3a3e0e97035f2f8c9d024579409ca12e6aef6fe\fabric-client-tags-api-v1-1.1.15+6573ed8c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-entity-events-v1\1.6.12+6fc22b996a\a21690aa4608c010dd30291b782999c1ddf71276\fabric-entity-events-v1-1.6.12+6fc22b996a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-item-api-v1\11.0.0+afdfc9216a\5f7e5b3cf0e5d2d388759356f838953b941ba9d6\fabric-item-api-v1-11.0.0+afdfc9216a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-message-api-v1\6.0.13+6573ed8c6a\84636ce6eca1f4b97ad3802058834c7ce43f30a5\fabric-message-api-v1-6.0.13+6573ed8c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-model-loading-api-v1\2.0.0+fe474d6b6a\89fa93a6cc378fa83478c0d178daa3062a0a66bc\fabric-model-loading-api-v1-2.0.0+fe474d6b6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-particles-v1\4.0.2+6573ed8c6a\30c85ac1f9186fd6c1fdcc0129b6234ffad815e9\fabric-particles-v1-4.0.2+6573ed8c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-rendering-fluids-v1\3.1.6+1daea2156a\6cde66be9a6a4ecb35dbd555c0b05ea0f6cad4e2\fabric-rendering-fluids-v1-3.1.6+1daea2156a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-screen-api-v1\2.0.24+b55973446a\ba0d1e51360f34295658d054e6ed865372d97d9a\fabric-screen-api-v1-2.0.24+b55973446a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-api-base\0.4.42+6573ed8c19\9e1ebdffd8b009ea65606652109b102b86f3b0b3\fabric-api-base-0.4.42+6573ed8c19.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-biome-api-v1\13.0.29+5bd9f1bc6a\2c55357809f20957196adfaa8b1d819d919c263d\fabric-biome-api-v1-13.0.29+5bd9f1bc6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-block-api-v1\1.0.22+0af3f5a76a\4ff0b591abd0aae959020e30b2344b25a621cf97\fabric-block-api-v1-1.0.22+0af3f5a76a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-rendering-data-attachment-v1\0.3.48+73761d2e6a\4d5775dfa1b3309dcb52a96714bb5faa7665ee16\fabric-rendering-data-attachment-v1-0.3.48+73761d2e6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-block-view-api-v2\1.0.10+6573ed8c6a\4672479968c7382697b592b0444ba1023c8fd985\fabric-block-view-api-v2-1.0.10+6573ed8c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-crash-report-info-v1\0.2.29+0af3f5a76a\f38e6948a56340dc0fb35c6d94e0ed10a20f3f84\fabric-crash-report-info-v1-0.2.29+0af3f5a76a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-dimensions-v1\4.0.0+6fc22b996a\2c53f9a05960a789f63953344c35c56890e5759a\fabric-dimensions-v1-4.0.0+6fc22b996a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-game-rule-api-v1\1.0.53+6ced4dd96a\81383af132c059b5073efc60ff0630ce46cabc74\fabric-game-rule-api-v1-1.0.53+6ced4dd96a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-resource-conditions-api-v1\4.3.0+8dc279b16a\69639037004b589d0707a2608c77eae06ac62f52\fabric-resource-conditions-api-v1-4.3.0+8dc279b16a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-sound-api-v1\1.0.23+6573ed8c6a\f3d1c18352282da965d5d8aef178f97fd1b2023e\fabric-sound-api-v1-1.0.23+6573ed8c6a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-transitive-access-wideners-v1\6.1.0+1daea2156a\d6022a6f78f4edec1198b949105007598359b622\fabric-transitive-access-wideners-v1-6.1.0+1daea2156a.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.6\aa205cf0a06dbd8e04ece91c0b37c3f5d567546a\asm-9.6.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\fabric-loader\0.16.9\7eaa23079ac1569963e488054db124c7eb984f05\fabric-loader-0.16.9.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-convention-tags-v2\2.9.2+e60e56d419\5867f1476800317df330bc1e97c38b02d742fd4b\fabric-convention-tags-v2-2.9.2+e60e56d419.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc.fabric-api\fabric-lifecycle-events-v1\2.5.0+01d9a51c19\74153e47879888adb54eace4209d8da57ab36655\fabric-lifecycle-events-v1-2.5.0+01d9a51c19.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\maven.modrinth\sodium\mc1.21.1-0.6.13-neoforge\38af70fa4dc4b2aaac636e92fdba3bedd5a025e1\sodium-mc1.21.1-0.6.13-neoforge.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\maven.modrinth\distanthorizons\2.2.1-a-1.21.1\302ad0271f1b3d9029361c94cd5cf753a60960e5\distanthorizons-2.2.1-a-1.21.1.jar;C:\Users\user\.gradle\caches\modules-2\files-2.1\maven.modrinth\sodium-extras\fabric-1.21.1-1.0.8\4cf42ca95c94491d0af73aa443d17fca29ad83c0\sodium-extras-fabric-1.21.1-1.0.8.jar;C:\Users\user\.gradle\caches\fabric-loom\minecraftMaven\net\minecraft\minecraft-merged-intermediary\1.21.1-loom.mappings.1_21_1.layered+hash.288375958-v2\minecraft-merged-intermediary-1.21.1-loom.mappings.1_21_1.layered+hash.288375958-v2.jar \ No newline at end of file diff --git a/fabric/.gradle/loom-cache/source_mappings/064d447f0917575d05ecaaab2ab7614edd9e842c.tiny b/fabric/.gradle/loom-cache/source_mappings/064d447f0917575d05ecaaab2ab7614edd9e842c.tiny new file mode 100644 index 0000000..5a1197f --- /dev/null +++ b/fabric/.gradle/loom-cache/source_mappings/064d447f0917575d05ecaaab2ab7614edd9e842c.tiny @@ -0,0 +1,152950 @@ +tiny 2 0 named official intermediary +c com/mojang/math/Axis a net/minecraft/class_7833 + f Lcom/mojang/math/Axis; XN a field_40713 + f Lcom/mojang/math/Axis; XP b field_40714 + f Lcom/mojang/math/Axis; YN c field_40715 + f Lcom/mojang/math/Axis; YP d field_40716 + f Lcom/mojang/math/Axis; ZN e field_40717 + f Lcom/mojang/math/Axis; ZP f field_40718 + m (F)Lorg/joml/Quaternionf; method_46349 a method_46349 + m (Lorg/joml/Vector3f;F)Lorg/joml/Quaternionf; method_46350 a method_46350 + m (F)Lorg/joml/Quaternionf; method_46351 b method_46351 + m (F)Lorg/joml/Quaternionf; method_46352 c method_46352 + m (F)Lorg/joml/Quaternionf; method_46353 d method_46353 + m (F)Lorg/joml/Quaternionf; method_46354 e method_46354 + m (F)Lorg/joml/Quaternionf; method_46355 f method_46355 + m (Lorg/joml/Vector3f;)Lcom/mojang/math/Axis; of of method_46356 + p 0 axis + m ()V +c com/mojang/math/Constants b net/minecraft/class_5973 + f F PI a field_29658 + f F RAD_TO_DEG b field_29659 + f F DEG_TO_RAD c field_29660 + f F EPSILON d field_29661 + m ()V +c com/mojang/math/Divisor c net/minecraft/class_7836 + f I denominator a field_40738 + f I quotient b field_40739 + f I mod c field_40740 + f I returnedParts d field_40741 + f I remainder e field_40742 + m (II)Ljava/lang/Iterable; asIterable a method_46402 + p 0 numerator + p 1 denominator + m (II)Ljava/util/Iterator; method_46403 b method_46403 + m (II)V + p 1 numerator + p 2 denominator +c com/mojang/math/FieldsAreNonnullByDefault d net/minecraft/class_6037 +c com/mojang/math/GivensParameters e net/minecraft/class_8218 + f F sinHalf a comp_1317 + f F cosHalf b comp_1318 + m ()Lcom/mojang/math/GivensParameters; inverse a method_49725 + m (F)Lcom/mojang/math/GivensParameters; fromPositiveAngle a method_49726 + p 0 angle + m (FF)Lcom/mojang/math/GivensParameters; fromUnnormalized a method_49727 + p 0 sinHalf + p 1 cosHalf + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundX a method_49728 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundX a method_49729 + p 1 quaternion + m ()F cos b method_49730 + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundY b method_49731 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundY b method_49732 + p 1 quaternion + m ()F sin c method_49733 + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundZ c method_49734 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundZ c method_49735 + p 1 quaternion + m ()F sinHalf d comp_1317 + m ()F cosHalf e comp_1318 + m (FF)V +c com/mojang/math/MatrixUtil f net/minecraft/class_7837 + f F G a field_40746 + f Lcom/mojang/math/GivensParameters; PI_4 b field_43146 + m (FF)Lcom/mojang/math/GivensParameters; qrGivensQuat a method_46410 + p 0 input1 + p 1 input2 + m (FFF)Lcom/mojang/math/GivensParameters; approxGivensQuat a method_46411 + m (Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple; svdDecompose a method_46412 + p 0 matrix + m (Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf; eigenvalueJacobi a method_49741 + p 0 input + p 1 iterations + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)V similarityTransform a method_49742 + p 0 input + p 1 tempStorage + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)V stepJacobi a method_46415 + p 0 input + p 1 tempStorage + p 2 resultEigenvector + p 3 resultEigenvalue + m (Lorg/joml/Matrix4f;)Z isPureTranslation a method_56826 + p 0 matrix + m (Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f; mulComponentWise a method_46414 + p 0 matrix + p 1 scalar + m (Lorg/joml/Matrix4f;)Z isOrthonormal b method_56827 + p 0 matrix + m ()V + m ()V +c com/mojang/math/MethodsReturnNonnullByDefault g net/minecraft/class_6216 +c com/mojang/math/OctahedralGroup h net/minecraft/class_4990 + f Lcom/mojang/math/OctahedralGroup; INVERT_Y A field_23266 + f Lcom/mojang/math/OctahedralGroup; INVERT_Z B field_23267 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NNN C field_23268 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NNP D field_23269 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NPN E field_23270 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NPP F field_23271 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PNN G field_23272 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PNP H field_23273 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PPN I field_23274 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PPP J field_23275 + f Lcom/mojang/math/OctahedralGroup; SWAP_XY K field_23276 + f Lcom/mojang/math/OctahedralGroup; SWAP_YZ L field_23277 + f Lcom/mojang/math/OctahedralGroup; SWAP_XZ M field_23278 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_XY N field_23279 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_YZ O field_23280 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_XZ P field_23281 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_X_NEG Q field_23282 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_X_POS R field_23283 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Y_NEG S field_23284 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Y_POS T field_23285 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Z_NEG U field_23286 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Z_POS V field_23287 + f Lorg/joml/Matrix3f; transformation X field_23288 + f Ljava/lang/String; name Y field_23289 + f Ljava/util/Map; rotatedDirections Z field_23290 + f Lcom/mojang/math/OctahedralGroup; IDENTITY a field_23292 + f Z invertX aa field_23291 + f Z invertY ab field_23293 + f Z invertZ ac field_23294 + f Lcom/mojang/math/SymmetricGroup3; permutation ad field_23295 + f [[Lcom/mojang/math/OctahedralGroup; cayleyTable ae field_23296 + f [Lcom/mojang/math/OctahedralGroup; inverseTable af field_23297 + f [Lcom/mojang/math/OctahedralGroup; $VALUES ag field_23298 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_XY b field_23299 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_XZ c field_23300 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_YZ d field_23301 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NNN e field_23302 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NNP f field_23303 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NPN g field_23304 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NPP h field_23305 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PNN i field_23306 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PNP j field_23307 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PPN k field_23308 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PPP l field_23309 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XY_NEG m field_23310 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XY_POS n field_23311 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XZ_NEG o field_23312 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XZ_POS p field_23313 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_YZ_NEG q field_23314 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_YZ_POS r field_23315 + f Lcom/mojang/math/OctahedralGroup; ROT_90_X_NEG s field_23316 + f Lcom/mojang/math/OctahedralGroup; ROT_90_X_POS t field_23317 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Y_NEG u field_23318 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Y_POS v field_23319 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Z_NEG w field_23320 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Z_POS x field_23321 + f Lcom/mojang/math/OctahedralGroup; INVERSION y field_23322 + f Lcom/mojang/math/OctahedralGroup; INVERT_X z field_23323 + m ()Lcom/mojang/math/OctahedralGroup; inverse a method_35813 + m (I)[Lcom/mojang/math/OctahedralGroup; method_26384 a method_26384 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; compose a method_26385 + p 1 other + m (Lcom/mojang/math/OctahedralGroup;Lcom/mojang/math/OctahedralGroup;)Z method_26386 a method_26386 + m (Lnet/minecraft/core/Direction$Axis;)Z inverts a method_26387 + p 1 axis + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_26388 + p 1 direction + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/core/FrontAndTop; rotate a method_26389 + p 1 frontAndTop + m ([[Lcom/mojang/math/OctahedralGroup;)V method_26390 a method_26390 + m ()Lorg/joml/Matrix3f; transformation b method_35814 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; method_26392 b method_26392 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; method_26393 c method_26393 + m ()Lit/unimi/dsi/fastutil/booleans/BooleanList; packInversions d method_26391 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/datafixers/util/Pair; method_26394 d method_26394 + m ()[Lcom/mojang/math/OctahedralGroup; $values e method_36928 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/SymmetricGroup3;ZZZ)V + p 3 name + p 4 permutation + p 5 invertX + p 6 invertY + p 7 invertZ + m ()V +c com/mojang/math/OctahedralGroup$1 h$1 net/minecraft/class_4990$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_23324 + m ()V +c com/mojang/math/SymmetricGroup3 i net/minecraft/class_4998 + c The symmetric group S3, also known as all the permutation orders of three elements. + f Lcom/mojang/math/SymmetricGroup3; P123 a field_23362 + f Lcom/mojang/math/SymmetricGroup3; P213 b field_23363 + f Lcom/mojang/math/SymmetricGroup3; P132 c field_23364 + f Lcom/mojang/math/SymmetricGroup3; P231 d field_23365 + f Lcom/mojang/math/SymmetricGroup3; P312 e field_23366 + f Lcom/mojang/math/SymmetricGroup3; P321 f field_23367 + f [I permutation g field_23368 + f Lorg/joml/Matrix3f; transformation h field_23369 + f I ORDER i field_33113 + f [[Lcom/mojang/math/SymmetricGroup3; cayleyTable j field_23370 + f [Lcom/mojang/math/SymmetricGroup3; $VALUES k field_23371 + m ()Lorg/joml/Matrix3f; transformation a method_26416 + m (I)I permutation a method_26417 + p 1 element + m (Lcom/mojang/math/SymmetricGroup3;)Lcom/mojang/math/SymmetricGroup3; compose a method_26418 + p 1 other + m ([ILcom/mojang/math/SymmetricGroup3;)Z method_26419 a method_26419 + m ([[Lcom/mojang/math/SymmetricGroup3;)V method_26420 a method_26420 + m ()[Lcom/mojang/math/SymmetricGroup3; $values b method_36937 + m (Ljava/lang/String;IIII)V + p 3 first + p 4 second + p 5 third + m ()V +c com/mojang/math/Transformation j net/minecraft/class_4590 + f Lcom/mojang/serialization/Codec; CODEC a field_42532 + f Lcom/mojang/serialization/Codec; EXTENDED_CODEC b field_42533 + f Lorg/joml/Matrix4f; matrix c field_20900 + f Z decomposed d field_20901 + f Lorg/joml/Vector3f; translation e field_20902 + f Lorg/joml/Quaternionf; leftRotation f field_20903 + f Lorg/joml/Vector3f; scale g field_20904 + f Lorg/joml/Quaternionf; rightRotation h field_20905 + f Lcom/mojang/math/Transformation; IDENTITY i field_20906 + m ()Lcom/mojang/math/Transformation; identity a method_22931 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49059 a method_49059 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; compose a method_22933 + p 1 other + m (Lcom/mojang/math/Transformation;F)Lcom/mojang/math/Transformation; slerp a method_35864 + p 1 transformation + p 2 delta + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;)Lorg/joml/Matrix4f; compose a method_22934 + p 0 translation + p 1 leftRotation + p 2 scale + p 3 rightRotation + m ()Lcom/mojang/math/Transformation; inverse b method_22935 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Quaternionf; method_49062 b method_49062 + m ()Lorg/joml/Matrix4f; getMatrix c method_22936 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Vector3f; method_49063 c method_49063 + m ()Lorg/joml/Vector3f; getTranslation d method_35865 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Quaternionf; method_49064 d method_49064 + m ()Lorg/joml/Quaternionf; getLeftRotation e method_22937 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Vector3f; method_49065 e method_49065 + m ()Lorg/joml/Vector3f; getScale f method_35866 + m ()Lorg/joml/Quaternionf; getRightRotation g method_35867 + m ()V ensureDecomposed h method_22938 + m ()Lcom/mojang/math/Transformation; method_22939 i method_22939 + m (Lorg/joml/Matrix4f;)V + p 1 matrix + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;)V + p 1 translation + p 2 leftRotation + p 3 scale + p 4 rightRotation + m ()V +c com/mojang/math/package-info k net/minecraft/class_6305 +c net/minecraft/BlockUtil l net/minecraft/class_5459 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getTopConnectedBlock a method_34851 + p 0 getter + p 1 pos + p 2 baseBlock + p 3 direction + p 4 endBlock + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;I)I getLimit a method_30575 + c Finds the distance we can travel in the given direction while the predicate returns true + p 0 posPredicate + p 1 centerPos + p 2 direction + p 3 max + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;ILnet/minecraft/core/Direction$Axis;ILjava/util/function/Predicate;)Lnet/minecraft/BlockUtil$FoundRectangle; getLargestRectangleAround a method_30574 + c Finds the rectangle with the largest area containing centerPos within the blocks specified by the predicate + p 0 centerPos + p 1 axis1 + p 2 max1 + p 3 axis2 + p 4 max2 + p 5 posPredicate + m ([I)Lcom/mojang/datafixers/util/Pair; getMaxRectangleLocation a method_30576 + c Finds the largest rectangle within the array of heights + p 0 heights + m ()V +c net/minecraft/BlockUtil$FoundRectangle l$a net/minecraft/class_5459$class_5460 + f Lnet/minecraft/core/BlockPos; minCorner a field_25936 + c Starting position of the rectangle represented by this result + f I axis1Size b field_25937 + c Distance between minimum and maximum values on the first axis argument + f I axis2Size c field_25938 + c Distance between minimum and maximum values on the second axis argument + m (Lnet/minecraft/core/BlockPos;II)V + p 1 minCorner + p 2 axis1Size + p 3 axis2Size +c net/minecraft/BlockUtil$IntBounds l$b net/minecraft/class_5459$class_5461 + f I min a field_25939 + c The minimum bound + f I max b field_25940 + c The maximum bound + m (II)V + p 1 min + p 2 max +c net/minecraft/CharPredicate m net/minecraft/class_5462 + m (C)Z method_36124 a method_36124 + m (Lnet/minecraft/CharPredicate;C)Z method_36126 a method_36126 + m (Lnet/minecraft/CharPredicate;)Lnet/minecraft/CharPredicate; and and method_36125 + p 1 predicate + m (Lnet/minecraft/CharPredicate;C)Z method_36128 b method_36128 + m ()Lnet/minecraft/CharPredicate; negate negate method_36123 + m (Lnet/minecraft/CharPredicate;)Lnet/minecraft/CharPredicate; or or method_36127 + p 1 predicate +c net/minecraft/ChatFormatting n net/minecraft/class_124 + f Ljava/lang/String; name A field_1057 + c The name of this color/formatting + f C code B field_1059 + f Z isFormat C field_1081 + f Ljava/lang/String; toString D field_1069 + f I id E field_1071 + c The numerical index that represents this color + f Ljava/lang/Integer; color F field_1053 + f [Lnet/minecraft/ChatFormatting; $VALUES G field_1072 + f Lnet/minecraft/ChatFormatting; BLACK a field_1074 + f Lnet/minecraft/ChatFormatting; DARK_BLUE b field_1058 + f Lnet/minecraft/ChatFormatting; DARK_GREEN c field_1077 + f Lnet/minecraft/ChatFormatting; DARK_AQUA d field_1062 + f Lnet/minecraft/ChatFormatting; DARK_RED e field_1079 + f Lnet/minecraft/ChatFormatting; DARK_PURPLE f field_1064 + f Lnet/minecraft/ChatFormatting; GOLD g field_1065 + f Lnet/minecraft/ChatFormatting; GRAY h field_1080 + f Lnet/minecraft/ChatFormatting; DARK_GRAY i field_1063 + f Lnet/minecraft/ChatFormatting; BLUE j field_1078 + f Lnet/minecraft/ChatFormatting; GREEN k field_1060 + f Lnet/minecraft/ChatFormatting; AQUA l field_1075 + f Lnet/minecraft/ChatFormatting; RED m field_1061 + f Lnet/minecraft/ChatFormatting; LIGHT_PURPLE n field_1076 + f Lnet/minecraft/ChatFormatting; YELLOW o field_1054 + f Lnet/minecraft/ChatFormatting; WHITE p field_1068 + f Lnet/minecraft/ChatFormatting; OBFUSCATED q field_1051 + f Lnet/minecraft/ChatFormatting; BOLD r field_1067 + f Lnet/minecraft/ChatFormatting; STRIKETHROUGH s field_1055 + f Lnet/minecraft/ChatFormatting; UNDERLINE t field_1073 + f Lnet/minecraft/ChatFormatting; ITALIC u field_1056 + f Lnet/minecraft/ChatFormatting; RESET v field_1070 + f Lcom/mojang/serialization/Codec; CODEC w field_39218 + f C PREFIX_CODE x field_33292 + f Ljava/util/Map; FORMATTING_BY_NAME y field_1052 + f Ljava/util/regex/Pattern; STRIP_FORMATTING_PATTERN z field_1066 + m ()C getChar a method_36145 + m (C)Lnet/minecraft/ChatFormatting; getByCode a method_544 + p 0 formattingCode + m (I)Lnet/minecraft/ChatFormatting; getById a method_534 + c Get a TextFormatting from its color index + p 0 index + m (Ljava/lang/String;)Ljava/lang/String; stripFormatting a method_539 + c Returns a copy of the given string, with formatting codes stripped away. + p 0 text + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/ChatFormatting; method_541 a method_541 + m (ZZ)Ljava/util/Collection; getNames a method_540 + c Gets all the valid values. + p 0 getColor + p 1 getFancyStyling + m ()I getId b method_536 + c Returns the numerical color index that represents this formatting + m (Ljava/lang/String;)Lnet/minecraft/ChatFormatting; getByName b method_533 + c Gets a value by its friendly name null if the given name does not map to a defined value. + p 0 friendlyName + m (Lnet/minecraft/ChatFormatting;)Ljava/lang/String; method_531 b method_531 + m (Ljava/lang/String;)Ljava/lang/String; cleanName c method_535 + p 0 string + m ()Z isFormat d method_542 + c False if this is just changing the color or resetting true otherwise. + m ()Z isColor e method_543 + c Checks if this is a color code. + m ()Ljava/lang/Integer; getColor f method_532 + m ()Ljava/lang/String; getName g method_537 + c Gets the friendly name of this value. + m ()[Lnet/minecraft/ChatFormatting; $values h method_36946 + m (Ljava/lang/String;ILjava/lang/String;CILjava/lang/Integer;)V + p 3 name + p 4 code + p 5 id + p 6 color + m (Ljava/lang/String;ILjava/lang/String;CZ)V + p 3 name + p 4 code + p 5 isFormat + m (Ljava/lang/String;ILjava/lang/String;CZILjava/lang/Integer;)V + p 3 name + p 4 code + p 5 isFormat + p 6 id + p 7 color + m ()V +c net/minecraft/CrashReport o net/minecraft/class_128 + f Lorg/slf4j/Logger; LOGGER a field_1091 + f Ljava/time/format/DateTimeFormatter; DATE_TIME_FORMATTER b field_39880 + f Ljava/lang/String; title c field_1087 + f Ljava/lang/Throwable; exception d field_1093 + f Ljava/util/List; details e field_1089 + f Ljava/nio/file/Path; saveFile f field_1090 + f Z trackingStackTrace g field_1086 + f [Ljava/lang/StackTraceElement; uncategorizedStackTrace h field_1088 + f Lnet/minecraft/SystemReport; systemReport i field_1092 + m ()Ljava/lang/String; getTitle a method_561 + c Returns the description of the Crash Report. + m (Ljava/lang/String;)Lnet/minecraft/CrashReportCategory; addCategory a method_562 + c Creates a CrashReportCategory + p 1 name + m (Ljava/lang/String;I)Lnet/minecraft/CrashReportCategory; addCategory a method_556 + c Creates a CrashReportCategory for the given stack trace depth + p 1 categoryName + p 2 stacktraceLength + m (Ljava/lang/StringBuilder;)V getDetails a method_555 + c Gets the various sections of the crash report into the given StringBuilder + p 1 builder + m (Ljava/lang/Throwable;Ljava/lang/String;)Lnet/minecraft/CrashReport; forThrowable a method_560 + c Creates a crash report for the exception + p 0 cause + p 1 description + m (Ljava/nio/file/Path;Lnet/minecraft/ReportType;)Z saveToFile a method_60919 + p 1 path + p 2 type + m (Ljava/nio/file/Path;Lnet/minecraft/ReportType;Ljava/util/List;)Z saveToFile a method_569 + p 1 path + p 2 type + p 3 links + m (Lnet/minecraft/ReportType;)Ljava/lang/String; getFriendlyReport a method_60920 + p 1 type + m (Lnet/minecraft/ReportType;Ljava/util/List;)Ljava/lang/String; getFriendlyReport a method_60921 + p 1 type + p 2 links + m ()Ljava/lang/Throwable; getException b method_564 + c Returns the Throwable object that is the cause for the crash and Crash Report. + m ()Ljava/lang/String; getDetails c method_36147 + m ()Ljava/lang/String; getExceptionMessage d method_557 + c Gets the stack trace of the Throwable that caused this crash report, or if that fails, the cause {@code .toString()}. + m ()Ljava/nio/file/Path; getSaveFile e method_572 + m ()Lnet/minecraft/SystemReport; getSystemReport f method_567 + m ()V preload g method_24305 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 title + p 2 exception + m ()V +c net/minecraft/CrashReportCategory p net/minecraft/class_129 + f Ljava/lang/String; title a field_1096 + f Ljava/util/List; entries b field_1094 + f [Ljava/lang/StackTraceElement; stackTrace c field_1097 + m ()[Ljava/lang/StackTraceElement; getStacktrace a method_575 + m (I)I fillInStackTrace a method_579 + c Resets our stack trace according to the current trace, pruning the deepest 3 entries. The parameter indicates how many additional deepest entries to prune. Returns the number of entries in the resulting pruned stack trace. + p 1 size + m (Lnet/minecraft/world/level/LevelHeightAccessor;DDD)Ljava/lang/String; formatLocation a method_583 + p 0 levelHeightAccess + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;III)Ljava/lang/String; formatLocation a method_581 + p 0 levelHeightAccess + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; formatLocation a method_582 + p 0 levelHeightAccess + p 1 pos + m (Ljava/lang/StackTraceElement;Ljava/lang/StackTraceElement;)Z validateStackTrace a method_584 + c Do the deepest two elements of our saved stack trace match the given elements, in order from the deepest? + p 1 s1 + p 2 s2 + m (Ljava/lang/String;Ljava/lang/Object;)Lnet/minecraft/CrashReportCategory; setDetail a method_578 + c Adds a Crashreport section with the given name with the given value (converted {@code .toString()}) + p 1 sectionName + p 2 value + m (Ljava/lang/String;Ljava/lang/Throwable;)V setDetailError a method_585 + c Adds a Crashreport section with the given name with the given Throwable + p 1 sectionName + p 2 throwable + m (Ljava/lang/String;Lnet/minecraft/CrashReportDetail;)Lnet/minecraft/CrashReportCategory; setDetail a method_577 + c Adds a section to this crash report category, resolved by calling the given callable.\n\nIf the given callable throws an exception, a detail containing that exception will be created instead. + p 1 name + p 2 detail + m (Ljava/lang/StringBuilder;)V getDetails a method_574 + p 1 builder + m (Lnet/minecraft/CrashReportCategory;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V populateBlockDetails a method_586 + p 0 category + p 1 levelHeightAccessor + p 2 pos + p 3 state + m (I)V trimStacktrace b method_580 + c Removes the given number entries from the bottom of the stack trace. + p 1 amount + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; method_576 b method_576 + m (Ljava/lang/String;)V + p 1 title +c net/minecraft/CrashReportCategory$Entry p$a net/minecraft/class_129$class_130 + f Ljava/lang/String; key a field_1098 + f Ljava/lang/String; value b field_1099 + m ()Ljava/lang/String; getKey a method_588 + m ()Ljava/lang/String; getValue b method_587 + m (Ljava/lang/String;Ljava/lang/Object;)V + p 1 key + p 2 value +c net/minecraft/CrashReportDetail q net/minecraft/class_133 +c net/minecraft/DefaultUncaughtExceptionHandler r net/minecraft/class_140 + f Lorg/slf4j/Logger; logger a field_1113 + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/DefaultUncaughtExceptionHandlerWithName s net/minecraft/class_143 + f Lorg/slf4j/Logger; logger a field_1115 + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/DetectedVersion t net/minecraft/class_3797 + f Lnet/minecraft/WorldVersion; BUILT_IN a field_25319 + f Lorg/slf4j/Logger; LOGGER b field_16741 + f Ljava/lang/String; id c field_16738 + f Ljava/lang/String; name d field_16733 + f Z stable e field_16737 + f Lnet/minecraft/world/level/storage/DataVersion; worldVersion f field_16736 + f I protocolVersion g field_16735 + f I resourcePackVersion h field_27843 + f I dataPackVersion i field_16734 + f Ljava/util/Date; buildTime j field_16739 + m ()Lnet/minecraft/WorldVersion; tryDetectVersion a method_16672 + c Creates a new instance containing world version data from version.json (or fallback data if necessary).\n\nFor getting data, use {@link SharedConstants#getCurrentVersion} instead, as that is cached. + m ()V + m (Lcom/google/gson/JsonObject;)V + p 1 json + m ()V +c net/minecraft/FieldsAreNonnullByDefault u net/minecraft/class_6319 +c net/minecraft/FileUtil v net/minecraft/class_4239 + f Ljava/util/regex/Pattern; COPY_COUNTER_PATTERN a field_18956 + f I MAX_FILE_NAME b field_33384 + f Ljava/util/regex/Pattern; RESERVED_WINDOWS_FILENAMES c field_18955 + f Ljava/util/regex/Pattern; STRICT_PATH_SEGMENT_CHECK d field_40712 + m (Ljava/lang/String;)Ljava/lang/String; sanitizeName a method_61105 + p 0 name + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_49680 a method_49680 + m (Ljava/nio/file/Path;)Z isPathNormalized a method_20200 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; findAvailableName a method_19773 + p 0 dirPath + p 1 fileName + p 2 fileFormat + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/nio/file/Path; resolvePath a method_46344 + p 0 path + p 1 subdirectories + m ([Ljava/lang/String;)V validatePath a method_46345 + p 0 elements + m (Ljava/lang/String;)Ljava/lang/String; getFullResourcePath b method_34675 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_49681 b method_49681 + m (Ljava/nio/file/Path;)Z isPathPortable b method_20201 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/nio/file/Path; createPathToResource b method_20202 + p 0 dirPath + p 1 locationPath + p 2 fileFormat + m (Ljava/lang/String;)Ljava/lang/String; normalizeResourcePath c method_34676 + p 0 path + m (Ljava/nio/file/Path;)V createDirectoriesSafe c method_47525 + p 0 path + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; decomposePath d method_46346 + p 0 path + m (Ljava/lang/String;)Z isValidStrictPathSegment e method_46347 + p 0 segment + m (Ljava/lang/String;)Ljava/lang/String; method_49682 f method_49682 + m (Ljava/lang/String;)Ljava/lang/String; method_49683 g method_49683 + m ()V + m ()V +c net/minecraft/MethodsReturnNonnullByDefault w net/minecraft/class_6328 +c net/minecraft/Optionull x net/minecraft/class_8144 + m (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; map a method_49077 + p 0 value + p 1 mapper + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; mapOrDefault a method_49078 + p 0 value + p 1 mapper + p 2 defaultValue + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/lang/Object; mapOrElse a method_49079 + p 0 value + p 1 mapper + p 2 supplier + m (Ljava/util/Collection;)Ljava/lang/Object; first a method_49080 + p 0 collection + m (Ljava/util/Collection;Ljava/lang/Object;)Ljava/lang/Object; firstOrDefault a method_49081 + p 0 collection + p 1 defaultValue + m (Ljava/util/Collection;Ljava/util/function/Supplier;)Ljava/lang/Object; firstOrElse a method_49082 + p 0 collection + p 1 supplier + m ([B)Z isNullOrEmpty a method_49083 + p 0 array + m ([C)Z isNullOrEmpty a method_49084 + p 0 array + m ([D)Z isNullOrEmpty a method_49085 + p 0 array + m ([F)Z isNullOrEmpty a method_49086 + p 0 array + m ([I)Z isNullOrEmpty a method_49087 + p 0 array + m ([J)Z isNullOrEmpty a method_49088 + p 0 array + m ([Ljava/lang/Object;)Z isNullOrEmpty a method_49089 + p 0 array + m ([S)Z isNullOrEmpty a method_49090 + p 0 array + m ([Z)Z isNullOrEmpty a method_49091 + p 0 array + m ()V +c net/minecraft/ReportType y net/minecraft/class_9813 + f Lnet/minecraft/ReportType; CRASH a field_52181 + f Lnet/minecraft/ReportType; PROFILE b field_52182 + f Lnet/minecraft/ReportType; TEST c field_52183 + f Lnet/minecraft/ReportType; NETWORK_PROTOCOL_ERROR d field_52184 + f Lnet/minecraft/ReportType; CHUNK_IO_ERROR e field_52284 + f Ljava/lang/String; header f comp_2856 + f Ljava/util/List; nuggets g comp_2857 + m ()Ljava/lang/String; getErrorComment a method_60927 + m (Ljava/lang/StringBuilder;Ljava/util/List;)V appendHeader a method_60928 + p 1 builder + p 2 links + m ()Ljava/lang/String; header b comp_2856 + m ()Ljava/util/List; nuggets c comp_2857 + m (Ljava/lang/String;Ljava/util/List;)V + m ()V +c net/minecraft/ReportedException z net/minecraft/class_148 + f Lnet/minecraft/CrashReport; report a field_1119 + m ()Lnet/minecraft/CrashReport; getReport a method_631 + c Gets the CrashReport wrapped by this exception. + m (Lnet/minecraft/CrashReport;)V + p 1 report +c net/minecraft/ResourceLocationException aa net/minecraft/class_151 + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/SharedConstants ab net/minecraft/class_155 + c Shared global constants.\n\n

Note: The majority of the fields within this class are {@code public static final} with constant expressions (constants), and are inlined by the Java compiler at all places which reference these constant fields. Therefore, changing the value of these constant fields will have no effect on already compiled code.

\n\n

In addition, it is presumed that a large portion of these constant fields (such as those prefixed with {@code DEBUG_} are used as 'flags', for manually toggling code meant for use by Mojang developers in debugging. Therefore, optimizing compilers (which include the Java compiler) may omit the code hidden behind disabled flags, and will result in these flags having no apparent use in the code (when in reality, the optimizing compiler has removed the code which uses them).

\n\n@see The Java® Language Specification, Java SE 16 Edition, § 15.29. "Constant Expressions"\n@see The Java® Language Specification, Java SE 16 Edition, § 14.22. "Unreachable Statements" + f Z DEBUG_SUPPORT_BLOCKS A field_44779 + f Z DEBUG_SHAPES B field_29754 + f Z DEBUG_NEIGHBORSUPDATE C field_29755 + f Z DEBUG_STRUCTURES D field_29756 + f Z DEBUG_LIGHT E field_29676 + f Z DEBUG_SKY_LIGHT_SECTIONS F field_44582 + f Z DEBUG_WORLDGENATTEMPT G field_29677 + f Z DEBUG_SOLID_FACE H field_29678 + f Z DEBUG_CHUNKS I field_29679 + f Z DEBUG_GAME_EVENT_LISTENERS J field_29680 + f Z DEBUG_DUMP_TEXTURE_ATLAS K field_29681 + f Z DEBUG_DUMP_INTERPOLATED_TEXTURE_FRAMES L field_29682 + f Z DEBUG_STRUCTURE_EDIT_MODE M field_29683 + f Z DEBUG_SAVE_STRUCTURES_AS_SNBT N field_29684 + f Z DEBUG_SYNCHRONOUS_GL_LOGS O field_29685 + f Z DEBUG_VERBOSE_SERVER_EVENTS P field_29686 + f Z DEBUG_NAMED_RUNNABLES Q field_29687 + f Z DEBUG_GOAL_SELECTOR R field_29688 + f Z DEBUG_VILLAGE_SECTIONS S field_29689 + f Z DEBUG_BRAIN T field_29690 + f Z DEBUG_BEES U field_29691 + f Z DEBUG_RAIDS V field_29692 + f Z DEBUG_BLOCK_BREAK W field_29693 + f Z DEBUG_RESOURCE_LOAD_TIMES X field_29694 + f Z DEBUG_MONITOR_TICK_TIMES Y field_29695 + f Z DEBUG_KEEP_JIGSAW_BLOCKS_DURING_STRUCTURE_GEN Z field_29696 + f Z DEBUG_DISABLE_ORE_VEINS aA field_33555 + f Z DEBUG_DISABLE_BLENDING aB field_35438 + f Z DEBUG_DISABLE_BELOW_ZERO_RETROGENERATION aC field_35439 + f I DEFAULT_MINECRAFT_PORT aD field_29719 + c The default port used by Minecraft for communication between servers and clients.\n\n

This is not a registered port at the Internet Assigned Numbers Authority, and therefore may conflict with existing applications. Minecraft servers may be hosted at other ports, in which case the clients must supply the correct port when connecting to the server.

\n\n@see https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?&page=128 Internet Assigned Numbers Authority, Internet Service Name and Transport Protocol Port Number Registry + f Z INGAME_DEBUG_OUTPUT aE field_29720 + f Z DEBUG_SUBTITLES aF field_29721 + f I FAKE_MS_LATENCY aG field_29722 + f I FAKE_MS_JITTER aH field_29723 + f Lio/netty/util/ResourceLeakDetector$Level; NETTY_LEAK_DETECTION aI field_1124 + f Z COMMAND_STACK_TRACES aJ field_29724 + f Z DEBUG_WORLD_RECREATE aK field_29725 + f Z DEBUG_SHOW_SERVER_DEBUG_VALUES aL field_29726 + f Z DEBUG_FEATURE_COUNT aM field_35652 + f Z DEBUG_RESOURCE_GENERATION_OVERRIDE aN field_39961 + f Z DEBUG_FORCE_TELEMETRY aO field_41533 + f Z DEBUG_DONT_SEND_TELEMETRY_TO_BACKEND aP field_44780 + f J MAXIMUM_TICK_TIME_NANOS aQ field_22251 + f F MAXIMUM_BLOCK_EXPLOSION_RESISTANCE aR field_49016 + f Z USE_WORKFLOWS_HOOKS aS field_44583 + f Z USE_DEVONLY aT field_49773 + f Z CHECK_DATA_FIXER_SCHEMA aU field_25135 + f Z IS_RUNNING_IN_IDE aV field_1125 + f I WORLD_RESOLUTION aW field_29729 + f I MAX_CHAT_LENGTH aX field_29730 + c The maximum length of a chat message that can be typed by a player. + f I MAX_USER_INPUT_COMMAND_LENGTH aY field_29731 + f Z SNAPSHOT a field_29709 + c Indicates whether the currently running game version is a snapshot version.\n\n@see com.mojang.bridge.game.GameVersion#isStable()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#isStable()} instead. + f I MAX_FUNCTION_COMMAND_LENGTH aZ field_49017 + f Z DEBUG_DONT_SAVE_WORLD aa field_29697 + f Z DEBUG_LARGE_DRIPSTONE ab field_29698 + f Z DEBUG_CARVERS ac field_29700 + f Z DEBUG_ORE_VEINS ad field_33554 + f Z DEBUG_SCULK_CATALYST ae field_37273 + f Z DEBUG_BYPASS_REALMS_VERSION_CHECK af field_39090 + f Z DEBUG_SOCIAL_INTERACTIONS ag field_39460 + f Z DEBUG_VALIDATE_RESOURCE_PATH_CASE ah field_39962 + f Z DEBUG_UNLOCK_ALL_TRADES ai field_46154 + f Z DEBUG_BREEZE_MOB aj field_47176 + f Z DEBUG_TRIAL_SPAWNER_DETECTS_SHEEP_AS_PLAYERS ak field_47177 + f Z DEBUG_VAULT_DETECTS_SHEEP_AS_PLAYERS al field_48778 + f Z DEBUG_FORCE_ONBOARDING_SCREEN am field_47178 + f Z DEBUG_IGNORE_LOCAL_MOB_CAP an field_34368 + f Z DEBUG_DISABLE_LIQUID_SPREADING ao field_29710 + f Z DEBUG_AQUIFERS ap field_34369 + f Z DEBUG_JFR_PROFILING_ENABLE_LEVEL_LOADING aq field_34370 + f Z debugGenerateSquareTerrainWithoutNoise ar field_34371 + f Z debugGenerateStripedTerrainWithoutNoise as field_34372 + f Z DEBUG_ONLY_GENERATE_HALF_THE_WORLD at field_29711 + f Z DEBUG_DISABLE_FLUID_GENERATION au field_29712 + f Z DEBUG_DISABLE_AQUIFERS av field_29713 + f Z DEBUG_DISABLE_SURFACE aw field_29715 + f Z DEBUG_DISABLE_CARVERS ax field_29716 + f Z DEBUG_DISABLE_STRUCTURES ay field_29717 + f Z DEBUG_DISABLE_FEATURES az field_29718 + f I WORLD_VERSION b field_29732 + c The numeric format number for worlds used by this game version.\n\n@see com.mojang.bridge.game.GameVersion#getWorldVersion()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#getWorldVersion()} instead. + f I MAX_PLAYER_NAME_LENGTH ba field_49170 + f I MAX_CHAINED_NEIGHBOR_UPDATES bb field_38052 + f I MAX_RENDER_DISTANCE bc field_39898 + f [C ILLEGAL_FILE_CHARACTERS bd field_1126 + c The characters which may not form part of a file's name. Used in various file processing methods to replace these illegal characters with valid characters, such as the underscore "{@code _}".\n\n

This collection of characters is a subset of the forbidden characters listed in the documentation for Microsoft Windows, with the addition of the backtick ({@code `}).\n\n@see Microsoft Corporation, "Naming Files, Paths, and Namespaces", § Naming Conventions + f I TICKS_PER_SECOND be field_29702 + c The amount of game ticks within a real-life second.\n\n

This is not guaranteed by a running server to be an accurate measurement of real-life seconds. Heavy load on the server may cause the actual tick-to-second ratio to go below this defined ratio.

+ f I MILLIS_PER_TICK bf field_44973 + f I TICKS_PER_MINUTE bg field_29703 + c The amount of game ticks within a real-life minute. This is equal to {@code TICKS_PER_SECOND * 60}, and falls under the same guarantees and restrictions as {@link #TICKS_PER_SECOND}.\n\n@see #TICKS_PER_SECOND + f I TICKS_PER_GAME_DAY bh field_29704 + c The amount of game ticks within a game day. A game day is defined as 20 real-life minutes, so this is equal to {@code TICKS_PER_MINUTE * 20}. This falls under the same guarantees and restrictions as {@link #TICKS_PER_SECOND}. + f F AVERAGE_GAME_TICKS_PER_RANDOM_TICK_PER_BLOCK bi field_29705 + f F AVERAGE_RANDOM_TICKS_PER_BLOCK_PER_MINUTE bj field_29706 + f F AVERAGE_RANDOM_TICKS_PER_BLOCK_PER_GAME_DAY bk field_29707 + f I WORLD_ICON_SIZE bl field_44922 + f I SNAPSHOT_PROTOCOL_BIT bm field_29708 + c The bit in the networking protocol version for denoting {@linkplain #SNAPSHOT snapshot versions}.\n\n@see #SNAPSHOT_NETWORK_PROTOCOL_VERSION + f Lnet/minecraft/WorldVersion; CURRENT_VERSION bn field_16742 + f Ljava/lang/String; SERIES c field_34373 + f Ljava/lang/String; VERSION_STRING d field_29733 + c The human readable name of this game version.\n\n@see com.mojang.bridge.game.GameVersion#getName()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#getName()} instead. + f I RELEASE_NETWORK_PROTOCOL_VERSION e field_29735 + c The numeric format number for the networking protocol used by the release target of this game version.\n\n

This protocol version is used when this game version is a release version, not a {@linkplain #SNAPSHOT snapshots}. For snapshots, see {@link #SNAPSHOT_NETWORK_PROTOCOL_VERSION}.

\n\n@see #getProtocolVersion()\n@deprecated Use {@link #getProtocolVersion()} instead. + f I SNAPSHOT_NETWORK_PROTOCOL_VERSION f field_29736 + c The numeric format number for the networking protocol used by the snapshot of this game version.\n\n

This protocol version is used when this game version is a {@linkplain #SNAPSHOT snapshot version}. For releases, see {@link #RELEASE_NETWORK_PROTOCOL_VERSION}.

\n\n

The actual networking protocol version used in snapshot versions is the combination (bitwise OR) of this number and the bit at the position marked by {@link #SNAPSHOT_PROTOCOL_BIT}.

\n\n@see #getProtocolVersion()\n@deprecated Use {@link #getProtocolVersion()} instead. + f I SNBT_NAG_VERSION g field_29737 + f Z CRASH_EAGERLY h field_36325 + f I RESOURCE_PACK_FORMAT i field_29738 + c The format of the resource packs used by this game version. Resource packs contain client-side assets, such as translation files, models, and textures.\n\n@see com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)\n@deprecated Use {@link #getCurrentVersion()}, {@link com.mojang.bridge.game.GameVersion#com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)}, and com.mojang.bridge.game.PackType#RESOURCE instead. + f I DATA_PACK_FORMAT j field_29739 + c The format of the data packs used by this game version. Data packs contain server-side data such as recipes, loot tables, and tags.\n\n@see com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)\n@deprecated Use {@link #getCurrentVersion()}, {@link com.mojang.bridge.game.GameVersion#com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)}, and com.mojang.bridge.game.PackType#DATA instead. + f I LANGUAGE_FORMAT k field_39963 + f I REPORT_FORMAT_VERSION l field_39964 + f Ljava/lang/String; DATA_VERSION_TAG m field_29740 + c The key for the NBT tag which contains the data version of some data, for use in datafixing.\n\n

For various objects, their stored data in a {@link net.minecraft.nbt.CompoundTag} will usually contain a {@link net.minecraft.nbt.IntTag} indexed with this key, which stores the data version when the data for that object was written out. This is used by the datafixer system to determine which fixers needs to be applied to the data.

\n\n@see com.mojang.bridge.game.GameVersion#getWorldVersion() + f Z FIX_TNT_DUPE n field_29745 + f Z FIX_SAND_DUPE o field_33851 + f Z USE_DEBUG_FEATURES p field_29747 + f Z DEBUG_OPEN_INCOMPATIBLE_WORLDS q field_35006 + f Z DEBUG_ALLOW_LOW_SIM_DISTANCE r field_35563 + f Z DEBUG_HOTKEYS s field_29748 + f Z DEBUG_UI_NARRATION t field_33753 + f Z DEBUG_RENDER u field_29749 + f Z DEBUG_PATHFINDING v field_29750 + f Z DEBUG_WATER w field_29751 + f Z DEBUG_HEIGHTMAP x field_29752 + f Z DEBUG_COLLISION y field_29753 + f Z DEBUG_SHOW_LOCAL_SERVER_ENTITY_HIT_BOXES z field_52311 + m ()V tryDetectVersion a method_36208 + m (Lnet/minecraft/WorldVersion;)V setVersion a method_34872 + c Sets the world version, failing if a different world version is already present.\n\n@throws IllegalStateException if a different world version has already been set previously + p 0 version + c the world version to set + m (Lnet/minecraft/world/level/ChunkPos;)Z debugVoidTerrain a method_37896 + p 0 chunkPos + m ()Lnet/minecraft/WorldVersion; getCurrentVersion b method_16673 + c {@return the {@link WorldVersion world version}}\n\n@throws IllegalStateException if a world version has not been set previously + m ()I getProtocolVersion c method_31372 + c {@return the networking protocol version in use by this game version}\n\n

For releases, this will be equivalent to {@link #RELEASE_NETWORK_PROTOCOL_VERSION}. For snapshot versions, this will be the combination (bitwise OR) of {@link #SNAPSHOT_NETWORK_PROTOCOL_VERSION} and the bit marked by {@link #SNAPSHOT_PROTOCOL_BIT}.

+ m ()V + m ()V +c net/minecraft/SystemReport ac net/minecraft/class_6396 + f J BYTES_PER_MEBIBYTE a field_33852 + f J ONE_GIGA b field_33853 + f Lorg/slf4j/Logger; LOGGER c field_33854 + f Ljava/lang/String; OPERATING_SYSTEM d field_33855 + f Ljava/lang/String; JAVA_VERSION e field_33856 + f Ljava/lang/String; JAVA_VM_VERSION f field_33857 + f Ljava/util/Map; entries g field_33858 + m ()Ljava/lang/String; toLineSeparatedString a method_37120 + m (J)F sizeInMiB a method_59895 + p 0 bytes + m (Ljava/lang/String;)V putSpaceForProperty a method_59896 + p 1 property + m (Ljava/lang/String;Ljava/lang/Runnable;)V ignoreErrors a method_37121 + p 1 groupIdentifier + p 2 executor + m (Ljava/lang/String;Ljava/lang/String;)V setDetail a method_37122 + p 1 identifier + p 2 value + m (Ljava/lang/String;Ljava/util/function/Supplier;)V setDetail a method_37123 + p 1 identifier + p 2 valueSupplier + m (Ljava/lang/StringBuilder;)V appendToCrashReportString a method_37124 + p 1 reportAppender + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_37125 a method_37125 + m (Ljava/util/List;)V putPhysicalMemory a method_37126 + p 1 memorySlots + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_37127 a method_37127 + m (Loshi/SystemInfo;)V putHardware a method_37128 + p 1 info + m (Loshi/hardware/CentralProcessor$ProcessorIdentifier;)Ljava/lang/String; method_37129 a method_37129 + m (Loshi/hardware/CentralProcessor;)V putProcessor a method_37130 + p 1 cpu + m (Loshi/hardware/GlobalMemory;)V putMemory a method_37131 + p 1 memory + m (Loshi/hardware/GraphicsCard;)Ljava/lang/String; method_37132 a method_37132 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37133 a method_37133 + m (Loshi/hardware/PhysicalMemory;)Ljava/lang/String; method_37134 a method_37134 + m (Loshi/hardware/VirtualMemory;)V putVirtualMemory a method_37135 + p 1 memory + m ()V putStorage b method_59897 + m (Ljava/lang/String;)Ljava/lang/String; method_59898 b method_59898 + m (Ljava/lang/String;Ljava/util/function/Supplier;)V putSpaceForPath b method_59899 + p 1 property + p 2 valueSupplier + m (Ljava/util/List;)V putGraphics b method_37137 + p 1 gpus + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37138 b method_37138 + m (Loshi/hardware/GlobalMemory;)V method_37139 b method_37139 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37140 b method_37140 + m (Loshi/hardware/PhysicalMemory;)Ljava/lang/String; method_37141 b method_37141 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37142 b method_37142 + m ()Ljava/lang/String; method_59900 c method_59900 + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37144 c method_37144 + m (Loshi/hardware/GlobalMemory;)V method_37145 c method_37145 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37146 c method_37146 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37147 c method_37147 + m ()Ljava/lang/String; method_37136 d method_37136 + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37149 d method_37149 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37150 d method_37150 + m ()V method_37143 e method_37143 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37152 e method_37152 + m ()Ljava/lang/String; method_37148 f method_37148 + m ()Ljava/lang/String; method_37151 g method_37151 + m ()V + m ()V +c net/minecraft/Util ad net/minecraft/class_156 + f I LINEAR_LOOKUP_THRESHOLD a field_46220 + f J NANOS_PER_MILLI b field_45714 + f Lnet/minecraft/util/TimeSource$NanoTimeSource; timeSource c field_1128 + f Lcom/google/common/base/Ticker; TICKER d field_37250 + f Ljava/util/UUID; NIL_UUID e field_25140 + f Ljava/nio/file/spi/FileSystemProvider; ZIP_FILE_SYSTEM_PROVIDER f field_33859 + f Lorg/slf4j/Logger; LOGGER g field_1129 + f I DEFAULT_MAX_THREADS h field_34891 + f I DEFAULT_SAFE_FILE_OPERATION_RETRIES i field_46764 + f Ljava/lang/String; MAX_THREADS_SYSTEM_PROPERTY j field_34892 + f Ljava/util/concurrent/ExecutorService; BACKGROUND_EXECUTOR k field_18035 + f Ljava/util/concurrent/ExecutorService; IO_POOL l field_24477 + f Ljava/util/concurrent/ExecutorService; DOWNLOAD_POOL m field_47571 + f Ljava/time/format/DateTimeFormatter; FILENAME_DATE_TIME_FORMATTER n field_39824 + f Ljava/util/Set; ALLOWED_UNTRUSTED_LINK_PROTOCOLS o field_52196 + f Ljava/util/function/Consumer; thePauser p field_34893 + m ()Ljava/util/stream/Collector; toMap a method_664 + m (I)Ljava/lang/String; method_49399 a method_49399 + m (IILjava/util/List;)Z isSymmetrical a method_59901 + p 0 width + p 1 height + p 2 list + m (ILjava/lang/String;[Ljava/util/function/BooleanSupplier;)Z runWithRetries a method_30622 + p 0 maxTries + p 1 actionName + p 2 suppliers + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; fetchChoiceType a method_29187 + p 0 type + p 1 choiceName + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/Typed; writeAndReadTypedOrThrow a method_54907 + p 0 typed + p 1 type + p 2 operator + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/Typed; readTypedOrThrow a method_54908 + p 0 type + p 1 data + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;Z)Lcom/mojang/datafixers/Typed; readTypedOrThrow a method_55333 + p 0 type + p 1 data + p 2 partial + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Object;)Ljava/lang/String; getPropertyName a method_650 + p 0 property + p 1 value + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy a method_43027 + p 0 list + p 1 random + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; findNextInIterable a method_660 + p 0 iterable + p 1 element + m (Ljava/lang/Object;)Z method_56612 a method_56612 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; copyAndAdd a method_58272 + p 0 value + p 1 list + m (Ljava/lang/Object;Ljava/util/function/Consumer;)Ljava/lang/Object; make a method_654 + p 0 object + p 1 consumer + m (Ljava/lang/Runnable;Ljava/util/function/Supplier;)Ljava/lang/Runnable; name a method_18839 + p 0 item + p 1 nameSupplier + m (Ljava/lang/String;)Ljava/net/URI; parseAndValidateUntrustedUri a method_60931 + p 0 uri + m (Ljava/lang/String;II)I offsetByCodepoints a method_27761 + p 0 text + p 1 cursorPos + p 2 direction + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; makeDescriptionId a method_646 + p 0 type + p 1 id + m (Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Runnable; wrapThreadWithTaskName a method_33787 + p 0 name + p 1 task + m (Ljava/lang/String;Ljava/lang/Throwable;)V logAndPauseIfInIde a method_39977 + p 0 message + p 1 error + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread; method_28123 a method_28123 + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;ZLjava/lang/Runnable;)Ljava/lang/Thread; method_27956 a method_27956 + m (Ljava/lang/String;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; prefix a method_29188 + p 0 prefix + p 1 expectedSize + m (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/function/Supplier; wrapThreadWithTaskName a method_37910 + p 0 name + p 1 task + m (Ljava/lang/String;Lnet/minecraft/CharPredicate;)Ljava/lang/String; sanitizeName a method_30309 + p 0 fileName + p 1 characterValidator + m (Ljava/lang/String;Z)Ljava/util/concurrent/ExecutorService; makeIoExecutor a method_27959 + p 0 name + p 1 daemon + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V onThreadException a method_18347 + p 0 thread + p 1 throwable + m (Ljava/lang/Throwable;)V throwAsRuntime a method_24155 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createDeleter a method_30624 + p 0 filePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createRenamer a method_30625 + p 0 filePath + p 1 newName + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V safeReplaceFile a method_30626 + p 0 current + p 1 latest + p 2 oldBackup + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)Z safeReplaceOrMoveFile a method_41204 + p 0 current + p 1 latest + p 2 oldBackup + m (Ljava/nio/file/spi/FileSystemProvider;)Z method_37153 a method_37153 + m (Ljava/util/List;)Ljava/util/function/Predicate; allOf a method_56613 + p 0 predicates + m (Ljava/util/List;I)Lcom/mojang/serialization/DataResult; fixedSize a method_33141 + p 0 list + p 1 expectedSize + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getRandom a method_32309 + p 0 selections + p 1 random + m (Ljava/util/List;Ljava/lang/Object;)Ljava/util/List; copyAndAdd a method_57108 + p 0 list + p 1 value + m (Ljava/util/List;Ljava/lang/Void;)Ljava/util/List; method_43368 a method_43368 + m (Ljava/util/List;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; fallibleSequence a method_43370 + p 0 completableFutures + p 1 throwableConsumer + m (Ljava/util/List;[Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Consumer;Ljava/util/concurrent/CompletableFuture;)V method_43371 a method_43371 + m (Ljava/util/Map;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map; copyAndPut a method_57109 + p 0 map + p 1 key + p 2 value + m (Ljava/util/Optional;Ljava/util/function/Consumer;Ljava/lang/Runnable;)Ljava/util/Optional; ifElse a method_17974 + p 0 opt + p 1 consumer + p 2 orElse + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/List;Ljava/lang/Throwable;)V method_43369 a method_43369 + m (Ljava/util/concurrent/ExecutorService;)V shutdownExecutor a method_27957 + p 0 service + m (Ljava/util/function/BiFunction;)Ljava/util/function/BiFunction; memoize a method_34865 + p 0 memoBiFunction + m (Ljava/util/function/Consumer;)V setPause a method_38646 + p 0 thePauser + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/lang/String;)V method_29189 a method_29189 + m (Ljava/util/function/Consumer;Ljava/util/List;ILjava/lang/Object;Ljava/lang/Throwable;)V method_43372 a method_43372 + m (Ljava/util/function/Function;)Lnet/minecraft/util/SingleKeyCache; singleKeyCache a method_48746 + p 0 computeValue + m (Ljava/util/function/Function;Ljava/util/function/Predicate;)Ljava/lang/Object; blockUntilDone a method_43498 + p 0 task + p 1 donePredicate + m (Ljava/util/function/Supplier;)Ljava/lang/Object; make a method_656 + p 0 supplier + m (Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Ljava/util/function/Supplier; name a method_41238 + p 0 item + p 1 nameSupplier + m (Ljava/util/stream/IntStream;I)Lcom/mojang/serialization/DataResult; fixedSize a method_29190 + p 0 stream + p 1 size + m (Ljava/util/stream/IntStream;Lnet/minecraft/util/RandomSource;)Lit/unimi/dsi/fastutil/ints/IntArrayList; toShuffledList a method_43251 + p 0 stream + p 1 random + m (Ljava/util/stream/LongStream;I)Lcom/mojang/serialization/DataResult; fixedSize a method_51822 + p 0 stream + p 1 expectedSize + m (Ljava/util/stream/Stream;Lnet/minecraft/util/RandomSource;)Ljava/util/List; toShuffledList a method_43252 + p 0 stream + p 1 random + m (Lnet/minecraft/core/Registry;Ljava/lang/Object;)Ljava/lang/String; getRegisteredName a method_57107 + p 0 registry + p 1 value + m (Lnet/minecraft/CharPredicate;I)Ljava/lang/String; method_30623 a method_30623 + m ([ILnet/minecraft/util/RandomSource;)I getRandom a method_27172 + p 0 selections + p 1 random + m ([Ljava/lang/Object;Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getRandom a method_27173 + p 0 selections + p 1 random + m ([Ljava/util/function/BooleanSupplier;)Z executeInSequence a method_30627 + p 0 suppliers + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_56614 a method_56614 + m ()Ljava/util/stream/Collector; toMutableList b method_58579 + m (I)Ljava/lang/String; method_51823 b method_51823 + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; doFetchChoiceType b method_29191 + p 0 type + p 1 choiceName + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; findPreviousInIterable b method_645 + p 0 iterable + p 1 current + m (Ljava/lang/Object;)Z method_56615 b method_56615 + m (Ljava/lang/String;)V logAndPauseIfInIde b method_33559 + p 0 error + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_33790 b method_33790 + m (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/lang/Object; method_37911 b method_37911 + m (Ljava/lang/Throwable;)Ljava/lang/Throwable; pauseInIde b method_22320 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createFileDeletedCheck b method_30628 + p 0 filePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V copyBetweenDirs b method_29775 + p 0 fromDirectory + p 1 toDirectory + p 2 filePath + m (Ljava/util/List;)Ljava/util/function/Predicate; anyOf b method_56616 + p 0 predicates + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomSafe b method_40083 + p 0 selections + p 1 random + m (Ljava/util/List;Ljava/lang/Void;)Ljava/util/List; method_40082 b method_40082 + m (Ljava/util/function/Function;)Ljava/util/function/Function; memoize b method_34866 + p 0 memoFunction + m ([Ljava/lang/Object;Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy b method_43253 + p 0 array + p 1 random + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_56617 b method_56617 + m ()J getMillis c method_658 + m (I)Ljava/lang/String; method_49400 c method_49400 + m (Ljava/lang/String;)Ljava/util/concurrent/ExecutorService; makeExecutor c method_28122 + p 0 serviceName + m (Ljava/lang/Throwable;)Ljava/lang/String; describeError c method_22321 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createFileCreatedCheck c method_30629 + p 0 filePath + m (Ljava/util/List;)Ljava/lang/Object; lastOf c method_20793 + p 0 list + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)V shuffle c method_43028 + p 0 list + p 1 random + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; blockUntilDone c method_43499 + p 0 task + m ()J getNanos d method_648 + m (I)[Ljava/util/function/Predicate; method_61111 d method_61111 + m (Ljava/lang/String;)V doPause d method_33560 + p 0 message + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequence d method_33791 + c Takes a list of futures and returns a future of list that completes when all of them succeed or any of them error, + p 0 futures + m ()J getEpochMillis e method_659 + m (I)[Ljava/util/function/Predicate; method_61112 e method_61112 + m (Ljava/lang/String;)Z method_666 e method_666 + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequenceFailFast e method_652 + p 0 completableFutures + m ()Ljava/lang/String; getFilenameFormattedDateTime f method_44893 + m (Ljava/lang/String;)V method_38647 f method_38647 + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequenceFailFastAndCancel f method_43373 + p 0 completableFutures + m ()Ljava/util/concurrent/ExecutorService; backgroundExecutor g method_18349 + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; createIndexLookup g method_43658 + p 0 list + m ()Ljava/util/concurrent/ExecutorService; ioPool h method_27958 + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; createIndexIdentityLookup h method_53909 + p 0 list + m ()Ljava/util/concurrent/ExecutorService; nonCriticalIoPool i method_55473 + m ()V shutdownExecutors j method_18350 + m ()Lnet/minecraft/Util$OS; getPlatform k method_668 + m ()Ljava/util/stream/Stream; getVmArguments l method_651 + m ()V startTimerHackThread m method_29476 + m ()I getMaxThreads n method_38648 + m ()Ljava/lang/IllegalStateException; method_37154 o method_37154 + m ()V + m ()V +c net/minecraft/Util$1 ad$1 net/minecraft/class_156$1 + m ()V +c net/minecraft/Util$10 ad$2 net/minecraft/class_156$2 + f Ljava/util/function/Function; val$function a field_29654 + f Ljava/util/Map; cache b field_29655 + m (Ljava/util/function/Function;)V +c net/minecraft/Util$11 ad$3 net/minecraft/class_156$3 + f Ljava/util/function/BiFunction; val$function a field_29656 + f Ljava/util/Map; cache b field_29657 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Object; method_34867 a method_34867 + m (Ljava/util/function/BiFunction;)V +c net/minecraft/Util$2 ad$4 net/minecraft/class_156$4 + m (Ljava/util/concurrent/ForkJoinPool;)V +c net/minecraft/Util$5 ad$5 net/minecraft/class_156$5 + f Ljava/nio/file/Path; val$from a field_26348 + f Ljava/nio/file/Path; val$to b field_26349 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V +c net/minecraft/Util$6 ad$6 net/minecraft/class_156$6 + f Ljava/nio/file/Path; val$target a field_26352 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$7 ad$7 net/minecraft/class_156$7 + f Ljava/nio/file/Path; val$target a field_37251 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$8 ad$8 net/minecraft/class_156$8 + f Ljava/nio/file/Path; val$target a field_37274 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$9 ad$9 net/minecraft/class_156$9 + m (Ljava/lang/String;)V +c net/minecraft/Util$OS ad$a net/minecraft/class_156$class_158 + f Lnet/minecraft/Util$OS; LINUX a field_1135 + f Lnet/minecraft/Util$OS; SOLARIS b field_1134 + f Lnet/minecraft/Util$OS; WINDOWS c field_1133 + f Lnet/minecraft/Util$OS; OSX d field_1137 + f Lnet/minecraft/Util$OS; UNKNOWN e field_1132 + f Ljava/lang/String; telemetryName f field_34894 + f [Lnet/minecraft/Util$OS; $VALUES g field_1136 + m ()Ljava/lang/String; telemetryName a method_38649 + m (Ljava/io/File;)V openFile a method_672 + p 1 file + m (Ljava/lang/String;)V openUri a method_670 + p 1 uri + m (Ljava/net/URI;)V openUri a method_673 + p 1 uri + m (Ljava/nio/file/Path;)V openPath a method_60932 + p 1 path + m ()[Lnet/minecraft/Util$OS; $values b method_36579 + m (Ljava/net/URI;)[Ljava/lang/String; getOpenUriArguments b method_674 + p 1 uri + m (Ljava/net/URI;)Ljava/lang/Process; method_671 c method_671 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 telemetryName + m ()V +c net/minecraft/Util$OS$1 ad$a$1 net/minecraft/class_156$class_158$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/Util$OS$2 ad$a$2 net/minecraft/class_156$class_158$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/WorldVersion ae net/minecraft/class_6489 + m (Lnet/minecraft/server/packs/PackType;)I getPackVersion a method_48017 + p 1 packType + m ()Ljava/lang/String; getId b method_48018 + m ()Ljava/lang/String; getName c method_48019 + m ()Lnet/minecraft/world/level/storage/DataVersion; getDataVersion d method_37912 + m ()I getProtocolVersion e method_48020 + m ()Ljava/util/Date; getBuildTime f method_48021 + m ()Z isStable g method_48022 +c net/minecraft/advancements/Advancement af net/minecraft/class_161 + f Lcom/mojang/serialization/Codec; CODEC a field_47179 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47996 + f Ljava/util/Optional; parent c comp_1912 + f Ljava/util/Optional; display d comp_1913 + f Lnet/minecraft/advancements/AdvancementRewards; rewards e comp_1914 + f Ljava/util/Map; criteria f comp_1915 + f Lnet/minecraft/advancements/AdvancementRequirements; requirements g comp_1916 + f Z sendsTelemetryEvent h comp_1917 + f Ljava/util/Optional; name i comp_1918 + f Lcom/mojang/serialization/Codec; CRITERIA_CODEC j field_47180 + m ()Z isRoot a method_53630 + m (Lnet/minecraft/advancements/Advancement;)Lcom/mojang/serialization/DataResult; validate a method_54910 + p 0 advancement + m (Lnet/minecraft/advancements/Advancement;Lnet/minecraft/advancements/AdvancementRequirements;)Lnet/minecraft/advancements/Advancement; method_54911 a method_54911 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/chat/Component; name a method_53622 + p 0 advancement + m (Lnet/minecraft/advancements/DisplayInfo;)Lnet/minecraft/network/chat/Component; decorateName a method_53623 + p 0 display + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;)V validate a method_54912 + p 1 reporter + p 2 lootData + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V method_54913 a method_54913 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54914 a method_54914 + m (Ljava/util/Map;)Lnet/minecraft/advancements/AdvancementRequirements; method_54915 a method_54915 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Ljava/util/Optional;Ljava/lang/Boolean;)Lnet/minecraft/advancements/Advancement; method_54916 a method_54916 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_53627 + p 1 buffer + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_53629 a method_53629 + m ()Ljava/util/Optional; parent b comp_1912 + m (Lnet/minecraft/advancements/Advancement;)Ljava/util/Optional; method_54917 b method_54917 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/chat/Component; method_53631 b method_53631 + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_54918 b method_54918 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/advancements/Advancement; read b method_53632 + p 0 buffer + m ()Ljava/util/Optional; display c comp_1913 + m ()Lnet/minecraft/advancements/AdvancementRewards; rewards d comp_1914 + m ()Ljava/util/Map; criteria e comp_1915 + m ()Lnet/minecraft/advancements/AdvancementRequirements; requirements f comp_1916 + m ()Z sendsTelemetryEvent g comp_1917 + m ()Ljava/util/Optional; name h comp_1918 + m ()Ljava/lang/String; method_54919 i method_54919 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Lnet/minecraft/advancements/AdvancementRequirements;Z)V + p 1 parent + p 2 display + p 3 rewards + p 4 criteria + p 5 requirements + p 6 sendsTelemetryEvent + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Lnet/minecraft/advancements/AdvancementRequirements;ZLjava/util/Optional;)V + m ()V +c net/minecraft/advancements/Advancement$Builder af$a net/minecraft/class_161$class_162 + f Ljava/util/Optional; parent a field_1149 + f Ljava/util/Optional; display b field_1147 + f Lnet/minecraft/advancements/AdvancementRewards; rewards c field_1153 + f Lcom/google/common/collect/ImmutableMap$Builder; criteria d field_1148 + f Ljava/util/Optional; requirements e field_1150 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; requirementsStrategy f field_1151 + f Z sendsTelemetryEvent g field_44783 + m ()Lnet/minecraft/advancements/Advancement$Builder; advancement a method_707 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/Advancement$Builder; parent a method_701 + p 1 parent + m (Lnet/minecraft/advancements/AdvancementRequirements$Strategy;)Lnet/minecraft/advancements/Advancement$Builder; requirements a method_704 + p 1 requirementsStrategy + m (Lnet/minecraft/advancements/AdvancementRequirements;)Lnet/minecraft/advancements/Advancement$Builder; requirements a method_34884 + p 1 requirements + m (Lnet/minecraft/advancements/AdvancementRewards$Builder;)Lnet/minecraft/advancements/Advancement$Builder; rewards a method_703 + p 1 rewardsBuilder + m (Lnet/minecraft/advancements/AdvancementRewards;)Lnet/minecraft/advancements/Advancement$Builder; rewards a method_706 + p 1 rewards + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Advancement$Builder; parent a method_708 + p 1 parentId + m (Lnet/minecraft/advancements/DisplayInfo;)Lnet/minecraft/advancements/Advancement$Builder; display a method_693 + p 1 display + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementType;ZZZ)Lnet/minecraft/advancements/Advancement$Builder; display a method_20416 + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementType;ZZZ)Lnet/minecraft/advancements/Advancement$Builder; display a method_697 + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/advancements/Advancement$Builder; addCriterion a method_705 + p 1 key + p 2 criterion + m (Ljava/util/Map;)Lnet/minecraft/advancements/AdvancementRequirements; method_53633 a method_53633 + m (Ljava/util/function/Consumer;Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; save a method_694 + p 1 output + p 2 id + m ()Lnet/minecraft/advancements/Advancement$Builder; recipeAdvancement b method_51698 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; build b method_695 + p 1 id + m ()Lnet/minecraft/advancements/Advancement$Builder; sendsTelemetryEvent c method_53634 + m ()V +c net/minecraft/advancements/AdvancementHolder ag net/minecraft/class_8779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48180 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC b field_48181 + f Lnet/minecraft/resources/ResourceLocation; id c comp_1919 + f Lnet/minecraft/advancements/Advancement; value d comp_1920 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1919 + m ()Lnet/minecraft/advancements/Advancement; value b comp_1920 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/Advancement;)V + m ()V +c net/minecraft/advancements/AdvancementNode ah net/minecraft/class_8781 + f Lnet/minecraft/advancements/AdvancementHolder; holder a field_46077 + f Lnet/minecraft/advancements/AdvancementNode; parent b field_46078 + f Ljava/util/Set; children c field_46079 + m ()Lnet/minecraft/advancements/Advancement; advancement a method_53647 + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/advancements/AdvancementNode; getRoot a method_53648 + p 0 node + m ()Lnet/minecraft/advancements/AdvancementHolder; holder b method_53649 + m (Lnet/minecraft/advancements/AdvancementNode;)V addChild b method_53650 + p 1 child + m ()Lnet/minecraft/advancements/AdvancementNode; parent c method_53651 + m ()Lnet/minecraft/advancements/AdvancementNode; root d method_53652 + m ()Ljava/lang/Iterable; children e method_53653 + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementNode;)V + p 1 holder + p 2 parent +c net/minecraft/advancements/AdvancementProgress ai net/minecraft/class_167 + f Lcom/mojang/serialization/Codec; CODEC a field_46080 + f Ljava/time/format/DateTimeFormatter; OBTAINED_TIME_FORMAT b field_46081 + f Lcom/mojang/serialization/Codec; OBTAINED_TIME_CODEC c field_46082 + f Lcom/mojang/serialization/Codec; CRITERIA_CODEC d field_46083 + f Ljava/util/Map; criteria e field_1160 + f Lnet/minecraft/advancements/AdvancementRequirements; requirements f field_1161 + m ()Z isDone a method_740 + m (Lnet/minecraft/advancements/AdvancementProgress;)I compareTo a method_738 + p 1 other + m (Lnet/minecraft/advancements/AdvancementRequirements;)V update a method_727 + p 1 requirements + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53654 a method_53654 + m (Ljava/lang/String;)Z grantProgress a method_743 + p 1 criterionName + m (Ljava/time/Instant;)Ljava/time/temporal/TemporalAccessor; method_53655 a method_53655 + m (Ljava/util/Map$Entry;)Ljava/time/Instant; method_53656 a method_53656 + m (Ljava/util/Map;)Ljava/util/Map; method_53657 a method_53657 + m (Ljava/util/Map;Ljava/lang/Boolean;)Lnet/minecraft/advancements/AdvancementProgress; method_53658 a method_53658 + m (Ljava/util/Set;Ljava/util/Map$Entry;)Z method_730 a method_730 + m (Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_733 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/advancements/CriterionProgress;)V method_33895 a method_33895 + m ()Z hasProgress b method_742 + m (Lnet/minecraft/advancements/AdvancementProgress;)Ljava/util/Map; method_53659 b method_53659 + m (Ljava/lang/String;)Z revokeProgress b method_729 + p 1 criterionName + m (Ljava/util/Map$Entry;)Z method_53660 b method_53660 + m (Ljava/util/Map;)Ljava/util/Map; method_53661 b method_53661 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/advancements/AdvancementProgress; fromNetwork b method_732 + p 0 buffer + m ()F getPercent c method_735 + m (Ljava/lang/String;)Lnet/minecraft/advancements/CriterionProgress; getCriterion c method_737 + p 1 criterionName + m (Ljava/util/Map$Entry;)Lnet/minecraft/advancements/CriterionProgress; method_53662 c method_53662 + m ()Lnet/minecraft/network/chat/Component; getProgressText d method_728 + m (Ljava/lang/String;)Z isCriterionDone d method_53663 + p 1 criterionName + m ()Ljava/lang/Iterable; getRemainingCriteria e method_731 + m ()Ljava/lang/Iterable; getCompletedCriteria f method_734 + m ()Ljava/time/Instant; getFirstProgressDate g method_741 + m ()I countCompletedRequirements h method_736 + m (Ljava/util/Map;)V + p 1 criteria + m ()V + m ()V +c net/minecraft/advancements/AdvancementRequirements aj net/minecraft/class_8782 + f Lcom/mojang/serialization/Codec; CODEC a field_47184 + f Lnet/minecraft/advancements/AdvancementRequirements; EMPTY b field_46084 + f Ljava/util/List; requirements c comp_1922 + m ()I size a method_53664 + m (Ljava/util/Collection;)Lnet/minecraft/advancements/AdvancementRequirements; allOf a method_53668 + p 0 requirements + m (Ljava/util/List;Ljava/util/function/Predicate;)Z anyMatch a method_53671 + p 0 requirements + p 1 predicate + m (Ljava/util/Set;)Lcom/mojang/serialization/DataResult; validate a method_54925 + p 1 requirements + m (Ljava/util/Set;Ljava/util/Set;)Ljava/lang/String; method_54926 a method_54926 + m (Ljava/util/function/Predicate;)Z test a method_53669 + p 1 predicate + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53670 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Ljava/util/List;)V method_54927 a method_54927 + m ()Z isEmpty b method_53677 + m (Ljava/util/Collection;)Lnet/minecraft/advancements/AdvancementRequirements; anyOf b method_53674 + p 0 criteria + m (Ljava/util/function/Predicate;)I count b method_53675 + p 1 filter + m (Lnet/minecraft/network/FriendlyByteBuf;)Ljava/util/List; method_54928 b method_54928 + m ()Ljava/util/Set; names c method_53678 + m ()Ljava/util/List; requirements d comp_1922 + m ()Ljava/lang/String; method_54929 e method_54929 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/AdvancementRequirements$Strategy aj$a net/minecraft/class_8782$class_8797 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; AND a field_16882 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; OR b field_1257 + m ()V +c net/minecraft/advancements/AdvancementRewards ak net/minecraft/class_170 + f Lcom/mojang/serialization/Codec; CODEC a field_47185 + f Lnet/minecraft/advancements/AdvancementRewards; EMPTY b field_1167 + f I experience c comp_2025 + f Ljava/util/List; loot d comp_2026 + f Ljava/util/List; recipes e comp_2027 + f Ljava/util/Optional; function f comp_2028 + m ()I experience a comp_2025 + m (Lnet/minecraft/server/level/ServerPlayer;)V grant a method_748 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54930 a method_54930 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/commands/functions/CommandFunction;)V method_17978 a method_17978 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/commands/CacheableFunction;)Ljava/util/Optional; method_54931 a method_54931 + m ()Ljava/util/List; loot b comp_2026 + m ()Ljava/util/List; recipes c comp_2027 + m ()Ljava/util/Optional; function d comp_2028 + m (ILjava/util/List;Ljava/util/List;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/AdvancementRewards$Builder ak$a net/minecraft/class_170$class_171 + f I experience a field_1169 + f Lcom/google/common/collect/ImmutableList$Builder; loot b field_1171 + f Lcom/google/common/collect/ImmutableList$Builder; recipes c field_1168 + f Ljava/util/Optional; function d field_1170 + m ()Lnet/minecraft/advancements/AdvancementRewards; build a method_751 + m (I)Lnet/minecraft/advancements/AdvancementRewards$Builder; experience a method_750 + c Creates a new builder with the given amount of experience as a reward + p 0 experience + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/AdvancementRewards$Builder; loot a method_34899 + p 0 lootTable + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; recipe a method_753 + c Creates a new builder with the given recipe as a reward. + p 0 recipeId + m (I)Lnet/minecraft/advancements/AdvancementRewards$Builder; addExperience b method_749 + c Adds the given amount of experience. (Not a direct setter) + p 1 experience + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/AdvancementRewards$Builder; addLootTable b method_34900 + p 1 lootTable + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; addRecipe b method_752 + c Adds the given recipe to the rewards. + p 1 recipeId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; function c method_34901 + p 0 functionId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; runs d method_34902 + p 1 functionId + m ()V +c net/minecraft/advancements/AdvancementTree al net/minecraft/class_163 + f Lorg/slf4j/Logger; LOGGER a field_1158 + f Ljava/util/Map; nodes b field_1157 + f Ljava/util/Set; roots c field_1154 + f Ljava/util/Set; tasks d field_1156 + f Lnet/minecraft/advancements/AdvancementTree$Listener; listener e field_1155 + m ()V clear a method_714 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/AdvancementNode; get a method_53690 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V remove a method_718 + p 1 node + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementNode; get a method_716 + p 1 id + m (Lnet/minecraft/advancements/AdvancementTree$Listener;)V setListener a method_717 + p 1 listener + m (Ljava/util/Collection;)V addAll a method_53691 + p 1 advancements + m (Ljava/util/Set;)V remove a method_713 + p 1 advancements + m ()Ljava/lang/Iterable; roots b method_715 + m (Lnet/minecraft/advancements/AdvancementHolder;)Z tryInsert b method_53692 + p 1 advancement + m ()Ljava/util/Collection; nodes c method_53693 + m ()V + m ()V +c net/minecraft/advancements/AdvancementTree$Listener al$a net/minecraft/class_163$class_164 + m ()V onAdvancementsCleared a method_722 + m (Lnet/minecraft/advancements/AdvancementNode;)V onAddAdvancementRoot a method_723 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onRemoveAdvancementRoot b method_720 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onAddAdvancementTask c method_721 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onRemoveAdvancementTask d method_719 + p 1 advancement +c net/minecraft/advancements/AdvancementType am net/minecraft/class_189 + f Lnet/minecraft/advancements/AdvancementType; TASK a field_1254 + f Lnet/minecraft/advancements/AdvancementType; CHALLENGE b field_1250 + f Lnet/minecraft/advancements/AdvancementType; GOAL c field_1249 + f Lcom/mojang/serialization/Codec; CODEC d field_47186 + f Ljava/lang/String; name e field_1251 + f Lnet/minecraft/ChatFormatting; chatColor f field_1255 + f Lnet/minecraft/network/chat/Component; displayName g field_26386 + f [Lnet/minecraft/advancements/AdvancementType; $VALUES h field_1253 + m ()Lnet/minecraft/ChatFormatting; getChatColor a method_830 + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/MutableComponent; createAnnouncement a method_54932 + p 1 advancement + p 2 player + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_30756 + m ()[Lnet/minecraft/advancements/AdvancementType; $values d method_36593 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 name + p 4 chatColor + m ()V +c net/minecraft/advancements/CriteriaTriggers an net/minecraft/class_174 + f Lnet/minecraft/advancements/critereon/ConsumeItemTrigger; CONSUME_ITEM A field_1198 + f Lnet/minecraft/advancements/critereon/EffectsChangedTrigger; EFFECTS_CHANGED B field_1193 + f Lnet/minecraft/advancements/critereon/UsedTotemTrigger; USED_TOTEM C field_1204 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; NETHER_TRAVEL D field_1211 + f Lnet/minecraft/advancements/critereon/FishingRodHookedTrigger; FISHING_ROD_HOOKED E field_1203 + f Lnet/minecraft/advancements/critereon/ChanneledLightningTrigger; CHANNELED_LIGHTNING F field_1202 + f Lnet/minecraft/advancements/critereon/ShotCrossbowTrigger; SHOT_CROSSBOW G field_1196 + f Lnet/minecraft/advancements/critereon/KilledByCrossbowTrigger; KILLED_BY_CROSSBOW H field_1197 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; RAID_WIN I field_19250 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; RAID_OMEN J field_19251 + f Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger; HONEY_BLOCK_SLIDE K field_21628 + f Lnet/minecraft/advancements/critereon/BeeNestDestroyedTrigger; BEE_NEST_DESTROYED L field_21629 + f Lnet/minecraft/advancements/critereon/TargetBlockTrigger; TARGET_BLOCK_HIT M field_22450 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; ITEM_USED_ON_BLOCK N field_24478 + f Lnet/minecraft/advancements/critereon/DefaultBlockInteractionTrigger; DEFAULT_BLOCK_USE O field_48268 + f Lnet/minecraft/advancements/critereon/AnyBlockInteractionTrigger; ANY_BLOCK_USE P field_48269 + f Lnet/minecraft/advancements/critereon/LootTableTrigger; GENERATE_LOOT Q field_24479 + f Lnet/minecraft/advancements/critereon/PickedUpItemTrigger; THROWN_ITEM_PICKED_UP_BY_ENTITY R field_24480 + f Lnet/minecraft/advancements/critereon/PickedUpItemTrigger; THROWN_ITEM_PICKED_UP_BY_PLAYER S field_38700 + f Lnet/minecraft/advancements/critereon/PlayerInteractTrigger; PLAYER_INTERACTED_WITH_ENTITY T field_25694 + f Lnet/minecraft/advancements/critereon/StartRidingTrigger; START_RIDING_TRIGGER U field_33870 + f Lnet/minecraft/advancements/critereon/LightningStrikeTrigger; LIGHTNING_STRIKE V field_33871 + f Lnet/minecraft/advancements/critereon/UsingItemTrigger; USING_ITEM W field_33872 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; FALL_FROM_HEIGHT X field_35013 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; RIDE_ENTITY_IN_LAVA_TRIGGER Y field_35014 + f Lnet/minecraft/advancements/critereon/KilledTrigger; KILL_MOB_NEAR_SCULK_CATALYST Z field_38376 + f Lcom/mojang/serialization/Codec; CODEC a field_47187 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; ALLAY_DROP_ITEM_ON_BLOCK aa field_38701 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; AVOID_VIBRATION ab field_38838 + f Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger; RECIPE_CRAFTED ac field_44587 + f Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger; CRAFTER_RECIPE_CRAFTED ad field_49922 + f Lnet/minecraft/advancements/critereon/FallAfterExplosionTrigger; FALL_AFTER_EXPLOSION ae field_49923 + f Lnet/minecraft/advancements/critereon/ImpossibleTrigger; IMPOSSIBLE b field_1184 + f Lnet/minecraft/advancements/critereon/KilledTrigger; PLAYER_KILLED_ENTITY c field_1192 + f Lnet/minecraft/advancements/critereon/KilledTrigger; ENTITY_KILLED_PLAYER d field_1188 + f Lnet/minecraft/advancements/critereon/EnterBlockTrigger; ENTER_BLOCK e field_1180 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger; INVENTORY_CHANGED f field_1195 + f Lnet/minecraft/advancements/critereon/RecipeUnlockedTrigger; RECIPE_UNLOCKED g field_1207 + f Lnet/minecraft/advancements/critereon/PlayerHurtEntityTrigger; PLAYER_HURT_ENTITY h field_1199 + f Lnet/minecraft/advancements/critereon/EntityHurtPlayerTrigger; ENTITY_HURT_PLAYER i field_1209 + f Lnet/minecraft/advancements/critereon/EnchantedItemTrigger; ENCHANTED_ITEM j field_1181 + f Lnet/minecraft/advancements/critereon/FilledBucketTrigger; FILLED_BUCKET k field_1208 + f Lnet/minecraft/advancements/critereon/BrewedPotionTrigger; BREWED_POTION l field_1213 + f Lnet/minecraft/advancements/critereon/ConstructBeaconTrigger; CONSTRUCT_BEACON m field_1189 + f Lnet/minecraft/advancements/critereon/UsedEnderEyeTrigger; USED_ENDER_EYE n field_1186 + f Lnet/minecraft/advancements/critereon/SummonedEntityTrigger; SUMMONED_ENTITY o field_1182 + f Lnet/minecraft/advancements/critereon/BredAnimalsTrigger; BRED_ANIMALS p field_1190 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; LOCATION q field_1194 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; SLEPT_IN_BED r field_1212 + f Lnet/minecraft/advancements/critereon/CuredZombieVillagerTrigger; CURED_ZOMBIE_VILLAGER s field_1210 + f Lnet/minecraft/advancements/critereon/TradeTrigger; TRADE t field_1206 + f Lnet/minecraft/advancements/critereon/ItemDurabilityTrigger; ITEM_DURABILITY_CHANGED u field_1185 + f Lnet/minecraft/advancements/critereon/LevitationTrigger; LEVITATION v field_1200 + f Lnet/minecraft/advancements/critereon/ChangeDimensionTrigger; CHANGED_DIMENSION w field_1183 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; TICK x field_1187 + f Lnet/minecraft/advancements/critereon/TameAnimalTrigger; TAME_ANIMAL y field_1201 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; PLACED_BLOCK z field_1191 + m (Ljava/lang/String;Lnet/minecraft/advancements/CriterionTrigger;)Lnet/minecraft/advancements/CriterionTrigger; register a method_767 + p 0 name + p 1 trigger + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/advancements/CriterionTrigger; bootstrap a method_54933 + p 0 registry + m ()V + m ()V +c net/minecraft/advancements/Criterion ao net/minecraft/class_175 + f Lcom/mojang/serialization/Codec; CODEC a field_47188 + f Lnet/minecraft/advancements/CriterionTrigger; trigger b comp_1923 + f Lnet/minecraft/advancements/CriterionTriggerInstance; triggerInstance c comp_1924 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC d field_47189 + m ()Lnet/minecraft/advancements/CriterionTrigger; trigger a comp_1923 + m (Lnet/minecraft/advancements/CriterionTrigger;)Lcom/mojang/serialization/Codec; criterionCodec a method_54935 + p 0 trigger + m (Lnet/minecraft/advancements/CriterionTrigger;Lnet/minecraft/advancements/CriterionTriggerInstance;)Lnet/minecraft/advancements/Criterion; method_54936 a method_54936 + m ()Lnet/minecraft/advancements/CriterionTriggerInstance; triggerInstance b comp_1924 + m (Lnet/minecraft/advancements/CriterionTrigger;Lnet/minecraft/advancements/CriterionTriggerInstance;)V + m ()V +c net/minecraft/advancements/CriterionProgress ap net/minecraft/class_178 + f Ljava/time/Instant; obtained a field_1219 + m ()Z isDone a method_784 + m (Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_787 + p 1 buffer + m ()V grant b method_789 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/advancements/CriterionProgress; fromNetwork b method_785 + p 0 buffer + m ()V revoke c method_790 + m ()Ljava/time/Instant; getObtained d method_786 + m ()V + m (Ljava/time/Instant;)V + p 1 obtained +c net/minecraft/advancements/CriterionTrigger aq net/minecraft/class_179 + m ()Lcom/mojang/serialization/Codec; codec a method_54937 + m (Lnet/minecraft/server/PlayerAdvancements;)V removePlayerListeners a method_791 + p 1 playerAdvancements + m (Lnet/minecraft/server/PlayerAdvancements;Lnet/minecraft/advancements/CriterionTrigger$Listener;)V addPlayerListener a method_792 + p 1 playerAdvancements + p 2 listener + m (Lnet/minecraft/advancements/CriterionTriggerInstance;)Lnet/minecraft/advancements/Criterion; createCriterion a method_53699 + p 1 triggerInstance + m (Lnet/minecraft/server/PlayerAdvancements;Lnet/minecraft/advancements/CriterionTrigger$Listener;)V removePlayerListener b method_793 + p 1 playerAdvancements + p 2 listener +c net/minecraft/advancements/CriterionTrigger$Listener aq$a net/minecraft/class_179$class_180 + f Lnet/minecraft/advancements/CriterionTriggerInstance; trigger a comp_1925 + f Lnet/minecraft/advancements/AdvancementHolder; advancement b comp_1926 + f Ljava/lang/String; criterion c comp_1927 + m ()Lnet/minecraft/advancements/CriterionTriggerInstance; trigger a comp_1925 + m (Lnet/minecraft/server/PlayerAdvancements;)V run a method_796 + p 1 playerAdvancements + m ()Lnet/minecraft/advancements/AdvancementHolder; advancement b comp_1926 + m ()Ljava/lang/String; criterion c comp_1927 + m (Lnet/minecraft/advancements/CriterionTriggerInstance;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)V +c net/minecraft/advancements/CriterionTriggerInstance ar net/minecraft/class_184 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;)V validate a method_54938 + p 1 validator +c net/minecraft/advancements/DisplayInfo as net/minecraft/class_185 + f Lcom/mojang/serialization/Codec; CODEC a field_47190 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48276 + f Lnet/minecraft/network/chat/Component; title c field_1240 + f Lnet/minecraft/network/chat/Component; description d field_1242 + f Lnet/minecraft/world/item/ItemStack; icon e field_1241 + f Ljava/util/Optional; background f field_1243 + f Lnet/minecraft/advancements/AdvancementType; type g field_1237 + f Z showToast h field_1239 + f Z announceChat i field_1238 + f Z hidden j field_1236 + f F x k field_1245 + f F y l field_1244 + m ()Lnet/minecraft/network/chat/Component; getTitle a method_811 + m (FF)V setLocation a method_816 + p 1 x + p 2 y + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54939 a method_54939 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V serializeToNetwork a method_813 + p 1 buffer + m ()Lnet/minecraft/network/chat/Component; getDescription b method_817 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/advancements/DisplayInfo; fromNetwork b method_820 + p 0 buffer + m ()Lnet/minecraft/world/item/ItemStack; getIcon c method_821 + m ()Ljava/util/Optional; getBackground d method_812 + m ()Lnet/minecraft/advancements/AdvancementType; getType e method_815 + m ()F getX f method_818 + m ()F getY g method_819 + m ()Z shouldShowToast h method_823 + m ()Z shouldAnnounceChat i method_808 + m ()Z isHidden j method_824 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementType;ZZZ)V + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m ()V +c net/minecraft/advancements/TreeNodePosition at net/minecraft/class_194 + f Lnet/minecraft/advancements/AdvancementNode; node a field_46086 + f Lnet/minecraft/advancements/TreeNodePosition; parent b field_1258 + f Lnet/minecraft/advancements/TreeNodePosition; previousSibling c field_1260 + f I childIndex d field_1261 + f Ljava/util/List; children e field_1267 + f Lnet/minecraft/advancements/TreeNodePosition; ancestor f field_1262 + f Lnet/minecraft/advancements/TreeNodePosition; thread g field_1264 + f I x h field_1259 + f F y i field_1269 + f F mod j field_1268 + f F change k field_1266 + f F shift l field_1265 + m ()V firstWalk a method_847 + m (F)V thirdWalk a method_843 + p 1 y + m (FIF)F secondWalk a method_842 + p 1 offsetY + p 2 columnX + p 3 subtreeTopY + m (Lnet/minecraft/advancements/AdvancementNode;)V run a method_852 + p 0 rootNode + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; addChild a method_846 + p 1 child + p 2 previousSibling + m (Lnet/minecraft/advancements/DisplayInfo;)V method_53710 a method_53710 + m (Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; apportion a method_841 + p 1 node + m (Lnet/minecraft/advancements/TreeNodePosition;F)V moveSubtree a method_848 + p 1 node + p 2 shift + m (Lnet/minecraft/advancements/TreeNodePosition;Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; getAncestor a method_845 + p 1 self + p 2 other + m ()V executeShifts b method_850 + m ()Lnet/minecraft/advancements/TreeNodePosition; previousOrThread c method_849 + m ()Lnet/minecraft/advancements/TreeNodePosition; nextOrThread d method_844 + m ()V finalizePosition e method_851 + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/TreeNodePosition;Lnet/minecraft/advancements/TreeNodePosition;II)V + p 1 node + p 2 parent + p 3 previousSibling + p 4 childIndex + p 5 x +c net/minecraft/advancements/critereon/AnyBlockInteractionTrigger au net/minecraft/class_9104 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V trigger a method_56049 + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/AnyBlockInteractionTrigger$TriggerInstance;)Z method_56050 a method_56050 + m ()V +c net/minecraft/advancements/critereon/AnyBlockInteractionTrigger$TriggerInstance au$a net/minecraft/class_9104$class_9105 + f Lcom/mojang/serialization/Codec; CODEC a field_48277 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2203 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_56051 a method_56051 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56052 a method_56052 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_56053 + p 1 context + m ()Ljava/util/Optional; location b comp_2203 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/BeeNestDestroyedTrigger av net/minecraft/class_4708 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_23875 + p 1 player + p 2 state + p 3 stack + p 4 numBees + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/BeeNestDestroyedTrigger$TriggerInstance;)Z method_23872 a method_23872 + m ()V +c net/minecraft/advancements/critereon/BeeNestDestroyedTrigger$TriggerInstance av$a net/minecraft/class_4708$class_4709 + f Lcom/mojang/serialization/Codec; CODEC a field_47217 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2030 + f Ljava/util/Optional; item d comp_2031 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; beesInside e comp_2032 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54940 a method_54940 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; destroyedBeeNest a method_23879 + p 0 block + p 1 item + p 2 numBees + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;I)Z matches a method_23878 + p 1 state + p 2 stack + p 3 numBees + m ()Ljava/util/Optional; block b comp_2030 + m ()Ljava/util/Optional; item c comp_2031 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; beesInside d comp_2032 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/BlockPredicate aw net/minecraft/class_4550 + f Lcom/mojang/serialization/Codec; CODEC a field_45723 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49181 + f Ljava/util/Optional; blocks c comp_1732 + f Ljava/util/Optional; properties d comp_1733 + f Ljava/util/Optional; nbt e comp_1734 + m ()Z requiresNbt a method_57143 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22454 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57144 a method_57144 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/advancements/critereon/NbtPredicate;)Z matchesBlockEntity a method_57145 + p 0 level + p 1 blockEntity + p 2 nbtPredicate + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matchesState a method_57146 + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z matches a method_57147 + p 1 block + m ()Ljava/util/Optional; blocks b comp_1732 + m ()Ljava/util/Optional; properties c comp_1733 + m ()Ljava/util/Optional; nbt d comp_1734 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/BlockPredicate$Builder aw$a net/minecraft/class_4550$class_4710 + f Ljava/util/Optional; blocks a field_21572 + f Ljava/util/Optional; properties b field_21574 + f Ljava/util/Optional; nbt c field_21575 + m ()Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; block a method_23880 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_29233 + p 1 tag + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; setProperties a method_27963 + p 1 properties + m (Ljava/util/Collection;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_37214 + p 1 blocks + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; hasNbt a method_35042 + p 1 nbt + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_27962 + p 1 blocks + m ()Lnet/minecraft/advancements/critereon/BlockPredicate; build b method_23882 + m ()V +c net/minecraft/advancements/critereon/BredAnimalsTrigger ax net/minecraft/class_196 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;)V trigger a method_855 + p 1 player + p 2 parent + p 3 partner + p 4 child + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/BredAnimalsTrigger$TriggerInstance;)Z method_22455 a method_22455 + m ()V +c net/minecraft/advancements/critereon/BredAnimalsTrigger$TriggerInstance ax$a net/minecraft/class_196$class_198 + f Lcom/mojang/serialization/Codec; CODEC a field_47228 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; parent c comp_2033 + f Ljava/util/Optional; partner d comp_2034 + f Ljava/util/Optional; child e comp_2035 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; bredAnimals a method_861 + p 0 child + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54952 a method_54952 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_862 + p 1 parentContext + p 2 partnerContext + p 3 childContext + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_53075 + p 0 predicate + p 1 context + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; bredAnimals a method_29918 + p 0 parent + p 1 partner + p 2 child + m ()Lnet/minecraft/advancements/Criterion; bredAnimals b method_860 + m ()Ljava/util/Optional; parent c comp_2033 + m ()Ljava/util/Optional; partner d comp_2034 + m ()Ljava/util/Optional; child e comp_2035 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 parent + p 3 partner + p 4 child + m ()V +c net/minecraft/advancements/critereon/BrewedPotionTrigger ay net/minecraft/class_1996 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/Holder;)V trigger a method_8784 + p 1 player + p 2 potion + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/BrewedPotionTrigger$TriggerInstance;)Z method_22456 a method_22456 + m ()V +c net/minecraft/advancements/critereon/BrewedPotionTrigger$TriggerInstance ay$a net/minecraft/class_1996$class_1998 + f Lcom/mojang/serialization/Codec; CODEC a field_47229 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; potion c comp_2036 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54953 a method_54953 + m (Lnet/minecraft/core/Holder;)Z matches a method_8790 + p 1 potion + m ()Lnet/minecraft/advancements/Criterion; brewedPotion b method_8791 + m ()Ljava/util/Optional; potion c comp_2036 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ChangeDimensionTrigger az net/minecraft/class_1999 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/advancements/critereon/ChangeDimensionTrigger$TriggerInstance;)Z method_22457 a method_22457 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V trigger a method_8794 + p 1 player + p 2 fromLevel + p 3 toLevel + m ()V +c net/minecraft/advancements/critereon/ChangeDimensionTrigger$TriggerInstance az$a net/minecraft/class_1999$class_2001 + f Lcom/mojang/serialization/Codec; CODEC a field_47230 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; from c comp_2037 + f Ljava/util/Optional; to d comp_2038 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimensionTo a method_8799 + p 0 to + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimension a method_35068 + p 0 from + p 1 to + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54954 a method_54954 + m ()Lnet/minecraft/advancements/Criterion; changedDimension b method_35070 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimensionFrom b method_35069 + p 0 from + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Z matches b method_8800 + p 1 fromLevel + p 2 toLevel + m ()Ljava/util/Optional; from c comp_2037 + m ()Ljava/util/Optional; to d comp_2038 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ChanneledLightningTrigger ba net/minecraft/class_2002 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; method_27791 a method_27791 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/Collection;)V trigger a method_8803 + p 1 player + p 2 entityTriggered + m (Ljava/util/List;Lnet/minecraft/advancements/critereon/ChanneledLightningTrigger$TriggerInstance;)Z method_22458 a method_22458 + m ()V +c net/minecraft/advancements/critereon/ChanneledLightningTrigger$TriggerInstance ba$a net/minecraft/class_2002$class_2004 + f Lcom/mojang/serialization/Codec; CODEC a field_47231 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/List; victims c comp_2039 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54955 a method_54955 + m (Ljava/util/Collection;)Z matches a method_8808 + p 1 victims + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; channeledLightning a method_8809 + p 0 victims + m ()Ljava/util/List; victims b comp_2039 + m (Ljava/util/Optional;Ljava/util/List;)V + p 1 player + p 2 victims + m ()V +c net/minecraft/advancements/critereon/CollectionContentsPredicate bb net/minecraft/class_9639 + m ()Ljava/util/List; unpack a method_59605 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59606 + p 0 testCodec + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/CollectionContentsPredicate; of a method_59607 + p 0 tests + m ([Ljava/util/function/Predicate;)Lnet/minecraft/advancements/critereon/CollectionContentsPredicate; of a method_59608 + p 0 tests +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Multiple bb$a net/minecraft/class_9639$class_9640 + f Ljava/util/List; tests a comp_2611 + m (Ljava/lang/Iterable;)Z test a method_59609 + p 1 contents + m (Ljava/lang/Object;Ljava/util/function/Predicate;)Z method_59610 a method_59610 + m ()Ljava/util/List; tests b comp_2611 + m (Ljava/util/List;)V +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Single bb$b net/minecraft/class_9639$class_9641 + f Ljava/util/function/Predicate; test a comp_2612 + m (Ljava/lang/Iterable;)Z test a method_59611 + p 1 contents + m ()Ljava/util/function/Predicate; test b comp_2612 + m (Ljava/util/function/Predicate;)V +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Zero bb$c net/minecraft/class_9639$class_9642 + m (Ljava/lang/Iterable;)Z test a method_59612 + p 1 contents + m ()V +c net/minecraft/advancements/critereon/CollectionCountsPredicate bc net/minecraft/class_9643 + m ()Ljava/util/List; unpack a method_59613 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59614 + p 0 testCodec + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/CollectionCountsPredicate; of a method_59615 + p 0 entries + m ([Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry;)Lnet/minecraft/advancements/critereon/CollectionCountsPredicate; of a method_59616 + p 0 entries +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Entry bc$a net/minecraft/class_9643$class_9644 + f Ljava/util/function/Predicate; test a comp_2613 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_2614 + m ()Ljava/util/function/Predicate; test a comp_2613 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59617 + p 0 testCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59618 a method_59618 + m (Ljava/lang/Iterable;)Z test a method_59619 + p 1 collection + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_2614 + m (Ljava/util/function/Predicate;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Multiple bc$b net/minecraft/class_9643$class_9645 + f Ljava/util/List; entries a comp_2615 + m (Ljava/lang/Iterable;)Z test a method_59620 + p 1 collection + m ()Ljava/util/List; entries b comp_2615 + m (Ljava/util/List;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Single bc$c net/minecraft/class_9643$class_9646 + f Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry; entry a comp_2616 + m (Ljava/lang/Iterable;)Z test a method_59621 + p 1 collection + m ()Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry; entry b comp_2616 + m (Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Zero bc$d net/minecraft/class_9643$class_9647 + m (Ljava/lang/Iterable;)Z test a method_59622 + p 1 collection + m ()V +c net/minecraft/advancements/critereon/CollectionPredicate bd net/minecraft/class_9648 + f Ljava/util/Optional; contains a comp_2617 + f Ljava/util/Optional; counts b comp_2618 + f Ljava/util/Optional; size c comp_2619 + m ()Ljava/util/Optional; contains a comp_2617 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59623 + p 0 testCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59624 a method_59624 + m (Ljava/lang/Iterable;)Z test a method_59625 + p 1 collection + m ()Ljava/util/Optional; counts b comp_2618 + m ()Ljava/util/Optional; size c comp_2619 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V +c net/minecraft/advancements/critereon/ConstructBeaconTrigger be net/minecraft/class_2006 + m (ILnet/minecraft/advancements/critereon/ConstructBeaconTrigger$TriggerInstance;)Z method_22459 a method_22459 + m (Lnet/minecraft/server/level/ServerPlayer;I)V trigger a method_8812 + p 1 player + p 2 level + m ()V +c net/minecraft/advancements/critereon/ConstructBeaconTrigger$TriggerInstance be$a net/minecraft/class_2006$class_2008 + f Lcom/mojang/serialization/Codec; CODEC a field_47232 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_2040 + m (I)Z matches a method_8817 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54956 a method_54956 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; constructedBeacon a method_8818 + p 0 level + m ()Lnet/minecraft/advancements/Criterion; constructedBeacon b method_35110 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_2040 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 level + m ()V +c net/minecraft/advancements/critereon/ConsumeItemTrigger bf net/minecraft/class_2010 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8821 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ConsumeItemTrigger$TriggerInstance;)Z method_22460 a method_22460 + m ()V +c net/minecraft/advancements/critereon/ConsumeItemTrigger$TriggerInstance bf$a net/minecraft/class_2010$class_2012 + f Lcom/mojang/serialization/Codec; CODEC a field_47233 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2041 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54957 a method_54957 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; usedItem a method_35112 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_8826 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; usedItem a method_8828 + p 0 item + m ()Lnet/minecraft/advancements/Criterion; usedItem b method_8827 + m ()Ljava/util/Optional; item c comp_2041 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/ContextAwarePredicate bg net/minecraft/class_5258 + f Lcom/mojang/serialization/Codec; CODEC a field_47234 + f Ljava/util/List; conditions b field_24389 + f Ljava/util/function/Predicate; compositePredicates c field_24390 + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)Ljava/util/List; method_54958 a method_54958 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_27806 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_54959 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; create a method_27973 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/advancements/critereon/CriterionValidator bh net/minecraft/class_8944 + f Lnet/minecraft/util/ProblemReporter; reporter a field_47235 + f Lnet/minecraft/core/HolderGetter$Provider; lootData b field_47236 + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/lang/String;)V validate a method_54961 + p 1 entity + p 2 contextParams + p 3 name + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Ljava/lang/String;)V validateEntity a method_54962 + p 1 entity + p 2 name + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_54963 a method_54963 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/lang/String;)V validate a method_54964 + p 1 entities + p 2 contextParams + p 3 name + m (Ljava/util/List;Ljava/lang/String;)V validateEntities a method_54965 + p 1 entities + p 2 name + m (Ljava/util/Optional;Ljava/lang/String;)V validateEntity a method_54966 + p 1 entity + p 2 name + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 reporter + p 2 lootData +c net/minecraft/advancements/critereon/CuredZombieVillagerTrigger bi net/minecraft/class_2014 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/monster/Zombie;Lnet/minecraft/world/entity/npc/Villager;)V trigger a method_8831 + p 1 player + p 2 zombie + p 3 villager + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/CuredZombieVillagerTrigger$TriggerInstance;)Z method_22461 a method_22461 + m ()V +c net/minecraft/advancements/critereon/CuredZombieVillagerTrigger$TriggerInstance bi$a net/minecraft/class_2014$class_2016 + f Lcom/mojang/serialization/Codec; CODEC a field_47237 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; zombie c comp_2042 + f Ljava/util/Optional; villager d comp_2043 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54972 a method_54972 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_8837 + p 1 zombie + p 2 villager + m ()Lnet/minecraft/advancements/Criterion; curedZombieVillager b method_8836 + m ()Ljava/util/Optional; zombie c comp_2042 + m ()Ljava/util/Optional; villager d comp_2043 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 zombie + p 3 villager + m ()V +c net/minecraft/advancements/critereon/DamagePredicate bj net/minecraft/class_2019 + f Lcom/mojang/serialization/Codec; CODEC a field_47238 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage b comp_1735 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage c comp_1736 + f Ljava/util/Optional; sourceEntity d comp_1737 + f Ljava/util/Optional; blocked e comp_1738 + f Ljava/util/Optional; type f comp_1739 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage a comp_1735 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_8838 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54973 a method_54973 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage b comp_1736 + m ()Ljava/util/Optional; sourceEntity c comp_1737 + m ()Ljava/util/Optional; blocked d comp_1738 + m ()Ljava/util/Optional; type e comp_1739 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DamagePredicate$Builder bj$a net/minecraft/class_2019$class_2020 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage a field_9530 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage b field_9527 + f Ljava/util/Optional; sourceEntity c field_9528 + f Ljava/util/Optional; blocked d field_9526 + f Ljava/util/Optional; type e field_9529 + m ()Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; damageInstance a method_8844 + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; type a method_8842 + p 1 typeBuilder + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; type a method_35116 + p 1 type + m (Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; sourceEntity a method_35117 + p 1 sourceEntity + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; dealtDamage a method_35118 + p 1 dealtDamage + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; blocked a method_8841 + p 1 blocked + m ()Lnet/minecraft/advancements/critereon/DamagePredicate; build b method_8843 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; takenDamage b method_35119 + p 1 takenDamage + m ()V +c net/minecraft/advancements/critereon/DamageSourcePredicate bk net/minecraft/class_2022 + f Lcom/mojang/serialization/Codec; CODEC a field_45727 + f Ljava/util/List; tags b comp_1740 + f Ljava/util/Optional; directEntity c comp_1741 + f Ljava/util/Optional; sourceEntity d comp_1742 + f Ljava/util/Optional; isDirect e comp_2793 + m ()Ljava/util/List; tags a comp_1740 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_8845 + p 1 level + p 2 position + p 3 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_8847 + p 1 player + p 2 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53116 a method_53116 + m ()Ljava/util/Optional; directEntity b comp_1741 + m ()Ljava/util/Optional; sourceEntity c comp_1742 + m ()Ljava/util/Optional; isDirect d comp_2793 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DamageSourcePredicate$Builder bk$a net/minecraft/class_2022$class_2023 + f Lcom/google/common/collect/ImmutableList$Builder; tags a field_42273 + f Ljava/util/Optional; directEntity b field_9544 + f Ljava/util/Optional; sourceEntity c field_9545 + f Ljava/util/Optional; isDirect d field_51883 + m ()Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; damageType a method_8855 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; direct a method_8854 + p 1 directEntity + m (Lnet/minecraft/advancements/critereon/TagPredicate;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; tag a method_48785 + p 1 tag + m (Z)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; isDirect a method_60488 + p 1 isDirect + m ()Lnet/minecraft/advancements/critereon/DamageSourcePredicate; build b method_8851 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; source b method_35131 + p 1 sourceEntity + m ()V +c net/minecraft/advancements/critereon/DefaultBlockInteractionTrigger bl net/minecraft/class_9107 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)V trigger a method_56066 + p 1 player + p 2 pos + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/DefaultBlockInteractionTrigger$TriggerInstance;)Z method_56067 a method_56067 + m ()V +c net/minecraft/advancements/critereon/DefaultBlockInteractionTrigger$TriggerInstance bl$a net/minecraft/class_9107$class_9108 + f Lcom/mojang/serialization/Codec; CODEC a field_48317 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2204 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_56068 a method_56068 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56069 a method_56069 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_56070 + p 1 context + m ()Ljava/util/Optional; location b comp_2204 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DistancePredicate bm net/minecraft/class_2025 + f Lcom/mojang/serialization/Codec; CODEC a field_45728 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_1743 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_1744 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_1745 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontal e comp_1746 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; absolute f comp_1747 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_1743 + m (DDDDDD)Z matches a method_8859 + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53118 a method_53118 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; horizontal a method_8860 + p 0 horizontal + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_1744 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; vertical b method_8856 + p 0 vertical + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_1745 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; absolute c method_37223 + p 0 absolute + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontal d comp_1746 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; absolute e comp_1747 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + p 1 x + p 2 y + p 3 z + p 4 horizontal + p 5 absolute + m ()V +c net/minecraft/advancements/critereon/DistanceTrigger bn net/minecraft/class_2108 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;)V trigger a method_9080 + p 1 player + p 2 position + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/advancements/critereon/DistanceTrigger$TriggerInstance;)Z method_22486 a method_22486 + m ()V +c net/minecraft/advancements/critereon/DistanceTrigger$TriggerInstance bn$a net/minecraft/class_2108$class_2110 + f Lcom/mojang/serialization/Codec; CODEC a field_47239 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; startPosition c comp_2044 + f Ljava/util/Optional; distance d comp_2045 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z matches a method_9086 + p 1 level + p 2 startPosition + p 3 currentPosition + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; travelledThroughNether a method_9085 + p 0 distance + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; rideEntityInLava a method_38850 + p 0 player + p 1 distance + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DistancePredicate;Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/Criterion; fallFromHeight a method_38851 + p 0 player + p 1 distance + p 2 startPosition + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54976 a method_54976 + m ()Ljava/util/Optional; startPosition b comp_2044 + m ()Ljava/util/Optional; distance c comp_2045 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 startPosition + p 3 distance + m ()V +c net/minecraft/advancements/critereon/EffectsChangedTrigger bo net/minecraft/class_2027 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)V trigger a method_8863 + p 1 player + p 2 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/EffectsChangedTrigger$TriggerInstance;)Z method_22462 a method_22462 + m ()V +c net/minecraft/advancements/critereon/EffectsChangedTrigger$TriggerInstance bo$a net/minecraft/class_2027$class_2029 + f Lcom/mojang/serialization/Codec; CODEC a field_47240 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; effects c comp_2046 + f Ljava/util/Optional; source d comp_2047 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_8868 + p 1 player + p 2 lootContext + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; gotEffectsFrom a method_37224 + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54977 a method_54977 + m (Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder;)Lnet/minecraft/advancements/Criterion; hasEffects a method_8869 + p 0 effects + m ()Ljava/util/Optional; effects b comp_2046 + m ()Ljava/util/Optional; source c comp_2047 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 effects + p 3 source + m ()V +c net/minecraft/advancements/critereon/EnchantedItemTrigger bp net/minecraft/class_2030 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_8870 + p 1 player + p 2 item + p 3 levelsSpent + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/EnchantedItemTrigger$TriggerInstance;)Z method_22463 a method_22463 + m ()V +c net/minecraft/advancements/critereon/EnchantedItemTrigger$TriggerInstance bp$a net/minecraft/class_2030$class_2032 + f Lcom/mojang/serialization/Codec; CODEC a field_47241 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2048 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; levels d comp_2049 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54978 a method_54978 + m (Lnet/minecraft/world/item/ItemStack;I)Z matches a method_8878 + p 1 item + p 2 levels + m ()Lnet/minecraft/advancements/Criterion; enchantedItem b method_8877 + m ()Ljava/util/Optional; item c comp_2048 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; levels d comp_2049 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 item + p 3 levels + m ()V +c net/minecraft/advancements/critereon/EnchantmentPredicate bq net/minecraft/class_2035 + f Lcom/mojang/serialization/Codec; CODEC a field_45741 + f Ljava/util/Optional; enchantments b comp_2665 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_1749 + m ()Ljava/util/Optional; enchantments a comp_2665 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53126 a method_53126 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Z containedIn a method_8880 + p 1 enchantments + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/core/Holder;)Z matchesEnchantment a method_59916 + p 1 itemEnchantments + p 2 enchantment + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level b comp_1749 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 enchantment + p 2 level + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 enchantments + p 2 level + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/EnterBlockTrigger br net/minecraft/class_2037 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;)V trigger a method_8885 + p 1 player + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Z method_22465 a method_22465 + m ()V +c net/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance br$a net/minecraft/class_2037$class_2039 + f Lcom/mojang/serialization/Codec; CODEC a field_47242 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2050 + f Ljava/util/Optional; state d comp_2051 + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; validate a method_54979 + p 0 triggerInstance + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_54980 a method_54980 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54981 a method_54981 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; entersBlock a method_8890 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_8891 + p 1 state + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_54982 a method_54982 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_54983 a method_54983 + m ()Ljava/util/Optional; block b comp_2050 + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; method_54984 b method_54984 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_54985 b method_54985 + m ()Ljava/util/Optional; state c comp_2051 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityEquipmentPredicate bs net/minecraft/class_3735 + f Lcom/mojang/serialization/Codec; CODEC a field_45744 + f Ljava/util/Optional; head b comp_1750 + f Ljava/util/Optional; chest c comp_1751 + f Ljava/util/Optional; legs d comp_1752 + f Ljava/util/Optional; feet e comp_1753 + f Ljava/util/Optional; body f comp_2620 + f Ljava/util/Optional; mainhand g comp_1754 + f Ljava/util/Optional; offhand h comp_1755 + m ()Ljava/util/Optional; head a comp_1750 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_16226 + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53129 a method_53129 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate; captainPredicate a method_58057 + p 0 patternRegistry + m ()Ljava/util/Optional; chest b comp_1751 + m ()Ljava/util/Optional; legs c comp_1752 + m ()Ljava/util/Optional; feet d comp_1753 + m ()Ljava/util/Optional; body e comp_2620 + m ()Ljava/util/Optional; mainhand f comp_1754 + m ()Ljava/util/Optional; offhand g comp_1755 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder bs$a net/minecraft/class_3735$class_5278 + f Ljava/util/Optional; head a field_24482 + f Ljava/util/Optional; chest b field_24483 + f Ljava/util/Optional; legs c field_24484 + f Ljava/util/Optional; feet d field_24485 + f Ljava/util/Optional; body e field_51371 + f Ljava/util/Optional; mainhand f field_24486 + f Ljava/util/Optional; offhand g field_24487 + m ()Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; equipment a method_27965 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; head a method_27966 + p 1 head + m ()Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate; build b method_27967 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; chest b method_27968 + p 1 chest + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; legs c method_27969 + p 1 legs + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; feet d method_27970 + p 1 feet + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; body e method_59651 + p 1 body + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; mainhand f method_35195 + p 1 mainhand + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; offhand g method_35196 + p 1 offhand + m ()V +c net/minecraft/advancements/critereon/EntityFlagsPredicate bt net/minecraft/class_2040 + f Lcom/mojang/serialization/Codec; CODEC a field_45745 + f Ljava/util/Optional; isOnGround b comp_2666 + f Ljava/util/Optional; isOnFire c comp_1756 + f Ljava/util/Optional; isCrouching d comp_1757 + f Ljava/util/Optional; isSprinting e comp_1758 + f Ljava/util/Optional; isSwimming f comp_1759 + f Ljava/util/Optional; isFlying g comp_2667 + f Ljava/util/Optional; isBaby h comp_1760 + m ()Ljava/util/Optional; isOnGround a comp_2666 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_8892 + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53131 a method_53131 + m ()Ljava/util/Optional; isOnFire b comp_1756 + m ()Ljava/util/Optional; isCrouching c comp_1757 + m ()Ljava/util/Optional; isSprinting d comp_1758 + m ()Ljava/util/Optional; isSwimming e comp_1759 + m ()Ljava/util/Optional; isFlying f comp_2667 + m ()Ljava/util/Optional; isBaby g comp_1760 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityFlagsPredicate$Builder bt$a net/minecraft/class_2040$class_2041 + f Ljava/util/Optional; isOnGround a field_51567 + f Ljava/util/Optional; isOnFire b field_9587 + f Ljava/util/Optional; isCrouching c field_9586 + f Ljava/util/Optional; isSprinting d field_9588 + f Ljava/util/Optional; isSwimming e field_9585 + f Ljava/util/Optional; isFlying f field_51568 + f Ljava/util/Optional; isBaby g field_9584 + m ()Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; flags a method_8897 + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setOnGround a method_59918 + p 1 onGround + m ()Lnet/minecraft/advancements/critereon/EntityFlagsPredicate; build b method_8899 + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setOnFire b method_8898 + p 1 onFire + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setCrouching c method_35203 + p 1 isCrouching + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setSprinting d method_35204 + p 1 isSprinting + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setSwimming e method_35205 + p 1 isSwimming + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setIsFlying f method_59919 + p 1 isFlying + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setIsBaby g method_29935 + p 1 isBaby + m ()V +c net/minecraft/advancements/critereon/EntityHurtPlayerTrigger bu net/minecraft/class_2044 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)V trigger a method_22467 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZLnet/minecraft/advancements/critereon/EntityHurtPlayerTrigger$TriggerInstance;)Z method_22468 a method_22468 + m ()V +c net/minecraft/advancements/critereon/EntityHurtPlayerTrigger$TriggerInstance bu$a net/minecraft/class_2044$class_2046 + f Lcom/mojang/serialization/Codec; CODEC a field_47249 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; damage c comp_2052 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_8907 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityHurtPlayer a method_8908 + p 0 damage + m (Lnet/minecraft/advancements/critereon/DamagePredicate;)Lnet/minecraft/advancements/Criterion; entityHurtPlayer a method_35209 + p 0 damage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54988 a method_54988 + m ()Lnet/minecraft/advancements/Criterion; entityHurtPlayer b method_35210 + m ()Ljava/util/Optional; damage c comp_2052 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 damage + m ()V +c net/minecraft/advancements/critereon/EntityPredicate bv net/minecraft/class_2048 + f Lcom/mojang/serialization/Codec; CODEC a field_45746 + f Lcom/mojang/serialization/Codec; ADVANCEMENT_CODEC b field_47250 + f Ljava/util/Optional; entityType c comp_1761 + f Ljava/util/Optional; distanceToPlayer d comp_1762 + f Ljava/util/Optional; movement e comp_2668 + f Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper; location f comp_1763 + f Ljava/util/Optional; effects g comp_1765 + f Ljava/util/Optional; nbt h comp_1766 + f Ljava/util/Optional; flags i comp_1767 + f Ljava/util/Optional; equipment j comp_1768 + f Ljava/util/Optional; subPredicate k comp_1769 + f Ljava/util/Optional; periodicTick l comp_2669 + f Ljava/util/Optional; vehicle m comp_1770 + f Ljava/util/Optional; passenger n comp_1771 + f Ljava/util/Optional; targetedEntity o comp_1772 + f Ljava/util/Optional; team p comp_1773 + f Ljava/util/Optional; slots q comp_2446 + m ()Ljava/util/Optional; entityType a comp_1761 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z matches a method_8909 + p 1 level + p 2 position + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Z matches a method_8914 + p 1 player + p 2 entity + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; wrap a method_53134 + p 0 builder + m (Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; wrap a method_51704 + p 0 predicate + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_53135 a method_53135 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53136 a method_53136 + m (Ljava/util/Optional;)Ljava/util/Optional; wrap a method_53137 + p 0 predicate + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Ljava/util/List; wrap a method_53139 + p 0 builders + m ()Ljava/util/Optional; distanceToPlayer b comp_1762 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_37227 b method_37227 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; createContext b method_27802 + p 0 player + p 1 entity + m ()Ljava/util/Optional; movement c comp_2668 + m ()Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper; location d comp_1763 + m ()Ljava/util/Optional; effects e comp_1765 + m ()Ljava/util/Optional; nbt f comp_1766 + m ()Ljava/util/Optional; flags g comp_1767 + m ()Ljava/util/Optional; equipment h comp_1768 + m ()Ljava/util/Optional; subPredicate i comp_1769 + m ()Ljava/util/Optional; periodicTick j comp_2669 + m ()Ljava/util/Optional; vehicle k comp_1770 + m ()Ljava/util/Optional; passenger l comp_1771 + m ()Ljava/util/Optional; targetedEntity m comp_1772 + m ()Ljava/util/Optional; team n comp_1773 + m ()Ljava/util/Optional; slots o comp_2446 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityPredicate$Builder bv$a net/minecraft/class_2048$class_2049 + f Ljava/util/Optional; entityType a field_9607 + f Ljava/util/Optional; distanceToPlayer b field_9602 + f Ljava/util/Optional; fallDistance c field_51572 + f Ljava/util/Optional; movement d field_51573 + f Ljava/util/Optional; location e field_9604 + f Ljava/util/Optional; located f field_51937 + f Ljava/util/Optional; steppingOnLocation g field_33915 + f Ljava/util/Optional; movementAffectedBy h field_51938 + f Ljava/util/Optional; effects i field_9605 + f Ljava/util/Optional; nbt j field_9603 + f Ljava/util/Optional; flags k field_9606 + f Ljava/util/Optional; equipment l field_16491 + f Ljava/util/Optional; subPredicate m field_38722 + f Ljava/util/Optional; periodicTick n field_51574 + f Ljava/util/Optional; vehicle o field_24490 + f Ljava/util/Optional; passenger p field_33917 + f Ljava/util/Optional; targetedEntity q field_24491 + f Ljava/util/Optional; team r field_20700 + f Ljava/util/Optional; slots s field_49721 + m ()Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; entity a method_8916 + m (I)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; periodicTick a method_59929 + p 1 periodicTick + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; of a method_8922 + p 1 entityTypeTag + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; distance a method_8924 + p 1 distanceToPlayer + m (Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; equipment a method_53141 + p 1 equipment + m (Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; equipment a method_16227 + p 1 equipment + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; of a method_8921 + p 1 entityType + m (Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; flags a method_8919 + p 1 flags + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; vehicle a method_27971 + p 1 vehicle + m (Lnet/minecraft/advancements/critereon/EntitySubPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; subPredicate a method_43094 + p 1 subPredicate + m (Lnet/minecraft/advancements/critereon/EntityTypePredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; entityType a method_8917 + p 1 entityType + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; located a method_8918 + p 1 location + m (Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; effects a method_8923 + p 1 effects + m (Lnet/minecraft/advancements/critereon/MovementPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; moving a method_59930 + p 1 movement + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; nbt a method_8915 + p 1 nbt + m (Lnet/minecraft/advancements/critereon/SlotsPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; slots a method_58058 + p 1 slots + m (Ljava/lang/String;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; team a method_22470 + p 1 team + m ()Lnet/minecraft/advancements/critereon/EntityPredicate; build b method_8920 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; passenger b method_37229 + p 1 passenger + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; steppingOn b method_37230 + p 1 steppingOnLocation + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; targetedEntity c method_27972 + p 1 targetedEntity + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; movementAffectedBy c method_60611 + p 1 movementAffectedBy + m ()V +c net/minecraft/advancements/critereon/EntityPredicate$LocationWrapper bv$b net/minecraft/class_2048$class_9777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51939 + f Ljava/util/Optional; located b comp_2813 + f Ljava/util/Optional; steppingOn c comp_2814 + f Ljava/util/Optional; affectsMovement d comp_2815 + m ()Ljava/util/Optional; located a comp_2813 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60612 a method_60612 + m ()Ljava/util/Optional; steppingOn b comp_2814 + m ()Ljava/util/Optional; affectsMovement c comp_2815 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicate bw net/minecraft/class_7376 + f Lcom/mojang/serialization/Codec; CODEC a field_45747 + m ()Lcom/mojang/serialization/MapCodec; codec a method_58152 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Z matches a method_22497 + p 1 entity + p 2 level + p 3 position + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicates bx net/minecraft/class_7378 + f Lcom/mojang/serialization/MapCodec; LIGHTNING a field_38725 + f Lcom/mojang/serialization/MapCodec; FISHING_HOOK b field_38726 + f Lcom/mojang/serialization/MapCodec; PLAYER c field_38727 + f Lcom/mojang/serialization/MapCodec; SLIME d field_38728 + f Lcom/mojang/serialization/MapCodec; RAIDER e field_50135 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; AXOLOTL f field_41534 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; BOAT g field_41535 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; FOX h field_41536 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; MOOSHROOM i field_41537 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; RABBIT j field_41539 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; HORSE k field_41540 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; LLAMA l field_41541 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; VILLAGER m field_41542 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; PARROT n field_41543 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; TROPICAL_FISH o field_41544 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; PAINTING p field_41538 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; CAT q field_38729 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; FROG r field_38730 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; WOLF s field_49973 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_58351 a method_58351 + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; register a method_58352 + p 0 name + p 1 predicateType + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; register a method_58155 + p 0 name + p 1 predicateType + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; register a method_58156 + p 0 name + p 1 codec + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; catVariant a method_58153 + p 0 catVariant + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; wolfVariant a method_59667 + p 0 wolfVariant + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_58157 + p 0 registry + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47829 b method_47829 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; frogVariant b method_58154 + p 0 frogVariant + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47830 c method_47830 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47831 d method_47831 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47832 e method_47832 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47833 f method_47833 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47834 g method_47834 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47835 h method_47835 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47836 i method_47836 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47837 j method_47837 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47838 k method_47838 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47839 l method_47839 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_43100 m method_43100 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_43102 n method_43102 + m ()V + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType bx$a net/minecraft/class_7378$class_9419 + f Lcom/mojang/serialization/MapCodec; codec a field_49974 + f Ljava/util/function/Function; getter b field_49975 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58353 a method_58353 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; create a method_58354 + p 0 registryKey + p 1 getter + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance;)Lnet/minecraft/core/HolderSet; method_58355 a method_58355 + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; createPredicate a method_58356 + p 1 variants + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance; method_58357 b method_58357 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)V + p 1 registryKey + p 2 getter +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance bx$a$a net/minecraft/class_7378$class_9419$class_9420 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; field_49976 b field_49976 + f Lnet/minecraft/core/HolderSet; variants c field_49977 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType;Lnet/minecraft/core/HolderSet;)V + p 2 variants +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType bx$b net/minecraft/class_7378$class_7380 + f Lcom/mojang/serialization/MapCodec; codec a field_49794 + f Ljava/util/function/Function; getter b field_38741 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance;)Ljava/lang/Object; method_58158 a method_58158 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43115 a method_43115 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; create a method_47840 + p 0 codec + p 1 getter + m (Ljava/lang/Object;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; createPredicate a method_43117 + p 1 variant + m (Lnet/minecraft/core/Registry;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; create a method_43116 + p 0 variantRegistry + p 1 getter + m (Ljava/lang/Object;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance; method_58159 b method_58159 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)V + p 1 codec + p 2 getter +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance bx$b$a net/minecraft/class_7378$class_7380$class_9353 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; field_49795 b field_49795 + f Ljava/lang/Object; variant c field_49796 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType;Ljava/lang/Object;)V + p 2 variant +c net/minecraft/advancements/critereon/EntityTypePredicate by net/minecraft/class_2050 + f Lcom/mojang/serialization/Codec; CODEC a field_45749 + f Lnet/minecraft/core/HolderSet; types b comp_1775 + m ()Lnet/minecraft/core/HolderSet; types a comp_1775 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/EntityTypePredicate; of a method_8926 + p 0 tag + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/advancements/critereon/EntityTypePredicate; of a method_8929 + p 0 type + m (Lnet/minecraft/world/entity/EntityType;)Z matches b method_8925 + p 1 type + m (Lnet/minecraft/core/HolderSet;)V + m ()V +c net/minecraft/advancements/critereon/FallAfterExplosionTrigger bz net/minecraft/class_9421 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)V trigger a method_58358 + p 1 player + p 2 pos + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/FallAfterExplosionTrigger$TriggerInstance;)Z method_58359 a method_58359 + m ()V +c net/minecraft/advancements/critereon/FallAfterExplosionTrigger$TriggerInstance bz$a net/minecraft/class_9421$class_9422 + f Lcom/mojang/serialization/Codec; CODEC a field_49978 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; startPosition c comp_2488 + f Ljava/util/Optional; distance d comp_2489 + f Ljava/util/Optional; cause e comp_2490 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_58360 + p 1 level + p 2 startPosition + p 3 endPosition + p 4 context + m (Lnet/minecraft/advancements/critereon/DistancePredicate;Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; fallAfterExplosion a method_58361 + p 0 distance + p 1 cause + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58362 a method_58362 + m ()Ljava/util/Optional; startPosition b comp_2488 + m ()Ljava/util/Optional; distance c comp_2489 + m ()Ljava/util/Optional; cause d comp_2490 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FilledBucketTrigger ca net/minecraft/class_2054 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8932 + p 1 player + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/FilledBucketTrigger$TriggerInstance;)Z method_22471 a method_22471 + m ()V +c net/minecraft/advancements/critereon/FilledBucketTrigger$TriggerInstance ca$a net/minecraft/class_2054$class_2056 + f Lcom/mojang/serialization/Codec; CODEC a field_47251 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2053 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54991 a method_54991 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; filledBucket a method_8937 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_8938 + p 1 stack + m ()Ljava/util/Optional; item b comp_2053 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/FishingHookPredicate cb net/minecraft/class_4965 + f Lnet/minecraft/advancements/critereon/FishingHookPredicate; ANY b field_23137 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45750 + f Ljava/util/Optional; inOpenWater d comp_1779 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53150 a method_53150 + m (Z)Lnet/minecraft/advancements/critereon/FishingHookPredicate; inOpenWater a method_26095 + p 0 inOpenWater + m ()Ljava/util/Optional; inOpenWater b comp_1779 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FishingRodHookedTrigger cc net/minecraft/class_2058 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/projectile/FishingHook;Ljava/util/Collection;)V trigger a method_8939 + p 1 player + p 2 rod + p 3 entity + p 4 stacks + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/Collection;Lnet/minecraft/advancements/critereon/FishingRodHookedTrigger$TriggerInstance;)Z method_22472 a method_22472 + m ()V +c net/minecraft/advancements/critereon/FishingRodHookedTrigger$TriggerInstance cc$a net/minecraft/class_2058$class_2060 + f Lcom/mojang/serialization/Codec; CODEC a field_47259 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; rod c comp_2054 + f Ljava/util/Optional; entity d comp_2055 + f Ljava/util/Optional; item e comp_2056 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54992 a method_54992 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/Collection;)Z matches a method_27810 + p 1 rod + p 2 context + p 3 stacks + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; fishedItem a method_8947 + p 0 rod + p 1 entity + p 2 item + m ()Ljava/util/Optional; rod b comp_2054 + m ()Ljava/util/Optional; entity c comp_2055 + m ()Ljava/util/Optional; item d comp_2056 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 rod + p 3 entity + p 4 item + m ()V +c net/minecraft/advancements/critereon/FluidPredicate cd net/minecraft/class_4551 + f Lcom/mojang/serialization/Codec; CODEC a field_45753 + f Ljava/util/Optional; fluids b comp_2372 + f Ljava/util/Optional; properties c comp_1782 + m ()Ljava/util/Optional; fluids a comp_2372 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22475 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53156 a method_53156 + m ()Ljava/util/Optional; properties b comp_1782 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FluidPredicate$Builder cd$a net/minecraft/class_4551$class_6079 + f Ljava/util/Optional; fluids a field_30913 + f Ljava/util/Optional; properties b field_30914 + m ()Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; fluid a method_35221 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; setProperties a method_35223 + p 1 properties + m (Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; of a method_35224 + p 1 fluid + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; of a method_35222 + m ()Lnet/minecraft/advancements/critereon/FluidPredicate; build b method_35225 + m ()V +c net/minecraft/advancements/critereon/GameTypePredicate ce net/minecraft/class_9789 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; ANY a field_52012 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; SURVIVAL_LIKE b field_52013 + f Lcom/mojang/serialization/Codec; CODEC c field_52014 + f Ljava/util/List; types d comp_2829 + m ()Ljava/util/List; types a comp_2829 + m (Lnet/minecraft/world/level/GameType;)Z matches a method_60723 + p 1 type + m ([Lnet/minecraft/world/level/GameType;)Lnet/minecraft/advancements/critereon/GameTypePredicate; of a method_60724 + p 0 types + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ImpossibleTrigger cf net/minecraft/class_2062 + m ()V +c net/minecraft/advancements/critereon/ImpossibleTrigger$TriggerInstance cf$a net/minecraft/class_2062$class_2063 + f Lcom/mojang/serialization/Codec; CODEC a field_47262 + m ()V + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger cg net/minecraft/class_2066 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8950 + p 1 player + p 2 inventory + p 3 stack + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;III)V trigger a method_24362 + p 1 player + p 2 inventory + p 3 stack + p 4 full + p 5 empty + p 6 occupied + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;IIILnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance;)Z method_22476 a method_22476 + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance cg$a net/minecraft/class_2066$class_2068 + f Lcom/mojang/serialization/Codec; CODEC a field_47263 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; slots c comp_2057 + f Ljava/util/List; items d comp_2058 + m (I)[Lnet/minecraft/advancements/critereon/ItemPredicate; method_53158 a method_53158 + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;III)Z matches a method_8958 + p 1 inventory + p 2 stack + p 3 full + p 4 empty + p 5 occupied + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54997 a method_54997 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ItemPredicate;)Z method_24363 a method_24363 + m ([Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; hasItems a method_53160 + p 0 items + m ([Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; hasItems a method_8957 + p 0 items + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; hasItems a method_8959 + p 0 items + m ()Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; slots b comp_2057 + m ()Ljava/util/List; items c comp_2058 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots;Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots cg$a$a net/minecraft/class_2066$class_2068$class_8948 + f Lcom/mojang/serialization/Codec; CODEC a field_47264 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; ANY b field_47265 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; occupied c comp_2059 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; full d comp_2060 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; empty e comp_2061 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; occupied a comp_2059 + m (III)Z matches a method_54998 + p 1 full + p 2 empty + p 3 occupied + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54999 a method_54999 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; full b comp_2060 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; empty c comp_2061 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemAttributeModifiersPredicate ch net/minecraft/class_9653 + f Lcom/mojang/serialization/Codec; CODEC a field_51378 + f Ljava/util/Optional; modifiers c comp_2623 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59668 a method_59668 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Z matches a method_59669 + p 1 stack + p 2 value + m ()Ljava/util/Optional; modifiers b comp_2623 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemAttributeModifiersPredicate$EntryPredicate ch$a net/minecraft/class_9653$class_9654 + f Lcom/mojang/serialization/Codec; CODEC a field_51379 + f Ljava/util/Optional; attribute b comp_2624 + f Ljava/util/Optional; id c comp_2625 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; amount d comp_2627 + f Ljava/util/Optional; operation e comp_2628 + f Ljava/util/Optional; slot f comp_2629 + m ()Ljava/util/Optional; attribute a comp_2624 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59670 a method_59670 + m (Lnet/minecraft/world/item/component/ItemAttributeModifiers$Entry;)Z test a method_59671 + p 1 entry + m ()Ljava/util/Optional; id b comp_2625 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; amount c comp_2627 + m ()Ljava/util/Optional; operation d comp_2628 + m ()Ljava/util/Optional; slot e comp_2629 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemBundlePredicate ci net/minecraft/class_9655 + f Lcom/mojang/serialization/Codec; CODEC a field_51380 + f Ljava/util/Optional; items c comp_2630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59672 a method_59672 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/BundleContents;)Z matches a method_59673 + p 1 stack + p 2 value + m ()Ljava/util/Optional; items b comp_2630 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemContainerPredicate cj net/minecraft/class_9656 + f Lcom/mojang/serialization/Codec; CODEC a field_51381 + f Ljava/util/Optional; items c comp_2631 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59674 a method_59674 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemContainerContents;)Z matches a method_59675 + p 1 stack + p 2 value + m ()Ljava/util/Optional; items b comp_2631 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemCustomDataPredicate ck net/minecraft/class_9354 + f Lcom/mojang/serialization/Codec; CODEC a field_49797 + f Lnet/minecraft/advancements/critereon/NbtPredicate; value c comp_2458 + m ()Lnet/minecraft/advancements/critereon/NbtPredicate; value a comp_2458 + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)Lnet/minecraft/advancements/critereon/ItemCustomDataPredicate; customData a method_58162 + p 0 value + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)V + m ()V +c net/minecraft/advancements/critereon/ItemDamagePredicate cl net/minecraft/class_9355 + f Lcom/mojang/serialization/Codec; CODEC a field_49798 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability c comp_2459 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; damage d comp_2460 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58164 a method_58164 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Integer;)Z matches a method_58166 + p 1 stack + p 2 value + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/ItemDamagePredicate; durability a method_58165 + p 0 damage + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability b comp_2459 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; damage c comp_2460 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemDurabilityTrigger cm net/minecraft/class_2069 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_8960 + p 1 player + p 2 item + p 3 newDurability + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/ItemDurabilityTrigger$TriggerInstance;)Z method_22477 a method_22477 + m ()V +c net/minecraft/advancements/critereon/ItemDurabilityTrigger$TriggerInstance cm$a net/minecraft/class_2069$class_2071 + f Lcom/mojang/serialization/Codec; CODEC a field_47266 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2062 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability d comp_2063 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; delta e comp_2064 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55000 a method_55000 + m (Lnet/minecraft/world/item/ItemStack;I)Z matches a method_8968 + p 1 item + p 2 durability + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; changedDurability a method_35229 + p 0 item + p 1 durability + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; changedDurability a method_8967 + p 0 player + p 1 item + p 2 durability + m ()Ljava/util/Optional; item b comp_2062 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability c comp_2063 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; delta d comp_2064 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 item + p 3 durability + p 4 delta + m ()V +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate cn net/minecraft/class_9356 + f Ljava/util/List; enchantments a field_49799 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Z matches a method_58172 + p 1 stack + p 2 enchantments + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/ItemEnchantmentsPredicate$Enchantments; enchantments a method_58173 + p 0 enchantments + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; codec a method_58174 + p 0 predicateFactory + m ()Ljava/util/List; enchantments b method_58175 + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/ItemEnchantmentsPredicate$StoredEnchantments; storedEnchantments b method_58176 + p 0 enchantments + m (Ljava/util/List;)V + p 1 enchantments +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate$Enchantments cn$a net/minecraft/class_9356$class_9357 + f Lcom/mojang/serialization/Codec; CODEC a field_49800 + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate$StoredEnchantments cn$b net/minecraft/class_9356$class_9358 + f Lcom/mojang/serialization/Codec; CODEC a field_49801 + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworkExplosionPredicate co net/minecraft/class_9657 + f Lcom/mojang/serialization/Codec; CODEC a field_51382 + f Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate; predicate c comp_2632 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/FireworkExplosion;)Z matches a method_59676 + p 1 stack + p 2 value + m ()Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate; predicate b comp_2632 + m (Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate co$a net/minecraft/class_9657$class_9658 + f Lcom/mojang/serialization/Codec; CODEC a field_51383 + f Ljava/util/Optional; shape b comp_2633 + f Ljava/util/Optional; twinkle c comp_2634 + f Ljava/util/Optional; trail d comp_2635 + m ()Ljava/util/Optional; shape a comp_2633 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59677 a method_59677 + m (Lnet/minecraft/world/item/component/FireworkExplosion;)Z test a method_59678 + p 1 explosion + m ()Ljava/util/Optional; twinkle b comp_2634 + m ()Ljava/util/Optional; trail c comp_2635 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworksPredicate cp net/minecraft/class_9659 + f Lcom/mojang/serialization/Codec; CODEC a field_51384 + f Ljava/util/Optional; explosions c comp_2636 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; flightDuration d comp_2637 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59680 a method_59680 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/Fireworks;)Z matches a method_59681 + p 1 stack + p 2 value + m ()Ljava/util/Optional; explosions b comp_2636 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; flightDuration c comp_2637 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemJukeboxPlayablePredicate cq net/minecraft/class_9790 + f Lcom/mojang/serialization/Codec; CODEC a field_52020 + f Ljava/util/Optional; song c comp_2830 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60730 a method_60730 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/JukeboxPlayable;)Z matches a method_60731 + p 1 stack + p 2 value + m ()Lnet/minecraft/advancements/critereon/ItemJukeboxPlayablePredicate; any b method_60732 + m ()Ljava/util/Optional; song c comp_2830 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemPotionsPredicate cr net/minecraft/class_9359 + f Lcom/mojang/serialization/Codec; CODEC a field_49802 + f Lnet/minecraft/core/HolderSet; potions c comp_2461 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/alchemy/PotionContents;)Z matches a method_58177 + p 1 stack + p 2 value + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/ItemSubPredicate; potions a method_58178 + p 0 potions + m ()Lnet/minecraft/core/HolderSet; potions b comp_2461 + m (Lnet/minecraft/core/HolderSet;)V + m ()V +c net/minecraft/advancements/critereon/ItemPredicate cs net/minecraft/class_2073 + f Lcom/mojang/serialization/Codec; CODEC a field_45754 + f Ljava/util/Optional; items b comp_1784 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count c comp_1785 + f Lnet/minecraft/core/component/DataComponentPredicate; components d comp_2374 + f Ljava/util/Map; subPredicates e comp_2462 + m ()Ljava/util/Optional; items a comp_1784 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57298 a method_57298 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_8970 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_1785 + m ()Lnet/minecraft/core/component/DataComponentPredicate; components c comp_2374 + m ()Ljava/util/Map; subPredicates d comp_2462 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/core/component/DataComponentPredicate;Ljava/util/Map;)V + m ()V +c net/minecraft/advancements/critereon/ItemPredicate$Builder cs$a net/minecraft/class_2073$class_2074 + f Ljava/util/Optional; items a field_9650 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b field_9648 + f Lnet/minecraft/core/component/DataComponentPredicate; components c field_49235 + f Lcom/google/common/collect/ImmutableMap$Builder; subPredicates d field_49803 + m ()Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; item a method_8973 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; of a method_8975 + p 1 tag + m (Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type;Lnet/minecraft/advancements/critereon/ItemSubPredicate;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; withSubPredicate a method_58179 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/core/Holder; method_53166 a method_53166 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; withCount a method_35233 + p 1 count + m (Lnet/minecraft/core/component/DataComponentPredicate;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; hasComponents a method_57299 + p 1 components + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; of a method_8977 + p 1 items + m ()Lnet/minecraft/advancements/critereon/ItemPredicate; build b method_8976 + m ()V +c net/minecraft/advancements/critereon/ItemSubPredicate ct net/minecraft/class_9360 + f Lcom/mojang/serialization/Codec; CODEC b field_49805 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_58161 + p 1 stack + m ()V +c net/minecraft/advancements/critereon/ItemSubPredicate$Type ct$a net/minecraft/class_9360$class_8745 + f Lcom/mojang/serialization/Codec; codec a comp_1774 + m ()Lcom/mojang/serialization/Codec; codec a comp_1774 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/advancements/critereon/ItemSubPredicates cu net/minecraft/class_9361 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; DAMAGE a field_49806 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ENCHANTMENTS b field_49807 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; STORED_ENCHANTMENTS c field_49808 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; POTIONS d field_49809 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; CUSTOM_DATA e field_49810 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; CONTAINER f field_51386 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; BUNDLE_CONTENTS g field_51387 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; FIREWORK_EXPLOSION h field_51388 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; FIREWORKS i field_51389 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; WRITABLE_BOOK j field_51390 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; WRITTEN_BOOK k field_51391 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ATTRIBUTE_MODIFIERS l field_51392 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ARMOR_TRIM m field_51393 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; JUKEBOX_PLAYABLE n field_52024 + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; register a method_58180 + p 0 name + p 1 codec + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; bootstrap a method_58181 + p 0 registry + m ()V + m ()V +c net/minecraft/advancements/critereon/ItemTrimPredicate cv net/minecraft/class_9660 + f Lcom/mojang/serialization/Codec; CODEC a field_51394 + f Ljava/util/Optional; material c comp_2638 + f Ljava/util/Optional; pattern d comp_2639 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59685 a method_59685 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/armortrim/ArmorTrim;)Z matches a method_59686 + p 1 stack + p 2 value + m ()Ljava/util/Optional; material b comp_2638 + m ()Ljava/util/Optional; pattern c comp_2639 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemUsedOnLocationTrigger cw net/minecraft/class_4711 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V trigger a method_23889 + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance;)Z method_23888 a method_23888 + m ()V +c net/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance cw$a net/minecraft/class_4711$class_4712 + f Lcom/mojang/serialization/Codec; CODEC a field_47267 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2065 + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_51708 a method_51708 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_55003 a method_55003 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55004 a method_55004 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; itemUsedOnBlock a method_27981 + p 0 location + p 1 tool + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedBlock a method_51710 + p 0 block + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_51711 + p 1 context + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/advancements/Criterion; placedBlock a method_51712 + p 0 conditions + m ()Ljava/util/Optional; location b comp_2065 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; allayDropItemOnBlock b method_43125 + p 0 location + p 1 tool + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance; itemUsedOnLocation c method_51709 + p 0 location + p 1 tool + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 location + m ()V +c net/minecraft/advancements/critereon/ItemWritableBookPredicate cx net/minecraft/class_9661 + f Lcom/mojang/serialization/Codec; CODEC a field_51395 + f Ljava/util/Optional; pages c comp_2640 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59687 a method_59687 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/WritableBookContent;)Z matches a method_59688 + p 1 stack + p 2 value + m ()Ljava/util/Optional; pages b comp_2640 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemWritableBookPredicate$PagePredicate cx$a net/minecraft/class_9661$class_9662 + f Lcom/mojang/serialization/Codec; CODEC a field_51396 + f Ljava/lang/String; contents b comp_2641 + m ()Ljava/lang/String; contents a comp_2641 + m (Lnet/minecraft/server/network/Filterable;)Z test a method_59689 + p 1 contents + m (Ljava/lang/String;)V + m ()V +c net/minecraft/advancements/critereon/ItemWrittenBookPredicate cy net/minecraft/class_9663 + f Lcom/mojang/serialization/Codec; CODEC a field_51400 + f Ljava/util/Optional; pages c comp_2642 + f Ljava/util/Optional; author d comp_2643 + f Ljava/util/Optional; title e comp_2644 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; generation f comp_2645 + f Ljava/util/Optional; resolved g comp_2646 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59696 a method_59696 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/WrittenBookContent;)Z matches a method_59697 + p 1 stack + p 2 value + m ()Ljava/util/Optional; pages b comp_2642 + m ()Ljava/util/Optional; author c comp_2643 + m ()Ljava/util/Optional; title d comp_2644 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; generation e comp_2645 + m ()Ljava/util/Optional; resolved f comp_2646 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemWrittenBookPredicate$PagePredicate cy$a net/minecraft/class_9663$class_9664 + f Lcom/mojang/serialization/Codec; CODEC a field_51401 + f Lnet/minecraft/network/chat/Component; contents b comp_2647 + m ()Lnet/minecraft/network/chat/Component; contents a comp_2647 + m (Lnet/minecraft/server/network/Filterable;)Z test a method_59698 + p 1 contents + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/advancements/critereon/KilledByCrossbowTrigger cz net/minecraft/class_2076 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/Collection;)V trigger a method_8980 + p 1 player + p 2 entities + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/advancements/critereon/KilledByCrossbowTrigger$TriggerInstance;)Z method_22478 a method_22478 + m ()V +c net/minecraft/advancements/critereon/KilledByCrossbowTrigger$TriggerInstance cz$a net/minecraft/class_2076$class_2078 + f Lcom/mojang/serialization/Codec; CODEC a field_47268 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/List; victims c comp_2066 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; uniqueEntityTypes d comp_2067 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55005 a method_55005 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; crossbowKilled a method_8987 + p 0 uniqueEntityTypes + m (Ljava/util/Collection;I)Z matches a method_8988 + p 1 contexts + p 2 bounds + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; crossbowKilled a method_8986 + p 0 victims + m ()Ljava/util/List; victims b comp_2066 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; uniqueEntityTypes c comp_2067 + m (Ljava/util/Optional;Ljava/util/List;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 victims + p 3 uniqueEntityTypes + m ()V +c net/minecraft/advancements/critereon/KilledTrigger da net/minecraft/class_2080 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V trigger a method_8990 + p 1 player + p 2 entity + p 3 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/advancements/critereon/KilledTrigger$TriggerInstance;)Z method_22479 a method_22479 + m ()V +c net/minecraft/advancements/critereon/KilledTrigger$TriggerInstance da$a net/minecraft/class_2080$class_2083 + f Lcom/mojang/serialization/Codec; CODEC a field_47304 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entityPredicate c comp_2068 + f Ljava/util/Optional; killingBlow d comp_2069 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_9000 + p 1 player + p 2 context + p 3 source + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_8997 + p 0 entityPredicate + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_9001 + p 0 entityPredicate + p 1 killingBlow + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35247 + p 0 entityPredicate + p 1 killingBlow + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55050 a method_55050 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35248 + p 0 entityPredicate + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35249 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35250 + p 0 entityPredicate + p 1 killingBlow + m ()Lnet/minecraft/advancements/Criterion; playerKilledEntity b method_8999 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35251 + p 0 entityPredicate + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35252 + p 0 entityPredicate + p 1 killingBlow + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35253 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35254 + p 0 entityPredicate + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35255 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35256 + p 0 entityPredicate + p 1 killingBlow + m ()Lnet/minecraft/advancements/Criterion; playerKilledEntityNearSculkCatalyst c method_42671 + m ()Lnet/minecraft/advancements/Criterion; entityKilledPlayer d method_8998 + m ()Ljava/util/Optional; entityPredicate e comp_2068 + m ()Ljava/util/Optional; killingBlow f comp_2069 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entityPredicate + p 3 killingBlow + m ()V +c net/minecraft/advancements/critereon/LevitationTrigger db net/minecraft/class_2085 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;I)V trigger a method_9008 + p 1 player + p 2 startPos + p 3 duration + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;ILnet/minecraft/advancements/critereon/LevitationTrigger$TriggerInstance;)Z method_22480 a method_22480 + m ()V +c net/minecraft/advancements/critereon/LevitationTrigger$TriggerInstance db$a net/minecraft/class_2085$class_2087 + f Lcom/mojang/serialization/Codec; CODEC a field_47305 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; distance c comp_2070 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration d comp_2071 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;I)Z matches a method_9014 + p 1 player + p 2 startPos + p 3 duration + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; levitated a method_9013 + p 0 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55051 a method_55051 + m ()Ljava/util/Optional; distance b comp_2070 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration c comp_2071 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 distance + p 3 duration + m ()V +c net/minecraft/advancements/critereon/LightPredicate dc net/minecraft/class_4552 + f Lcom/mojang/serialization/Codec; CODEC a field_45757 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite b comp_1791 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite a comp_1791 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22483 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53172 a method_53172 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 composite + m ()V +c net/minecraft/advancements/critereon/LightPredicate$Builder dc$a net/minecraft/class_4552$class_6087 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite a field_31078 + m ()Lnet/minecraft/advancements/critereon/LightPredicate$Builder; light a method_35271 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/LightPredicate$Builder; setComposite a method_35272 + p 1 composite + m ()Lnet/minecraft/advancements/critereon/LightPredicate; build b method_35273 + m ()V +c net/minecraft/advancements/critereon/LightningBoltPredicate dd net/minecraft/class_6404 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45759 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; blocksSetOnFire c comp_1792 + f Ljava/util/Optional; entityStruck d comp_1793 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_37235 a method_37235 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53175 a method_53175 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/LightningBoltPredicate; blockSetOnFire a method_37237 + p 0 blocksSetOnFire + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; blocksSetOnFire b comp_1792 + m ()Ljava/util/Optional; entityStruck c comp_1793 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/LightningStrikeTrigger de net/minecraft/class_6405 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; method_37239 a method_37239 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/LightningBolt;Ljava/util/List;)V trigger a method_37240 + p 1 player + p 2 lightning + p 3 nearbyEntities + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;Lnet/minecraft/advancements/critereon/LightningStrikeTrigger$TriggerInstance;)Z method_37242 a method_37242 + m ()V +c net/minecraft/advancements/critereon/LightningStrikeTrigger$TriggerInstance de$a net/minecraft/class_6405$class_6406 + f Lcom/mojang/serialization/Codec; CODEC a field_47306 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; lightning c comp_2072 + f Ljava/util/Optional; bystander d comp_2073 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55058 a method_55058 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;)Z matches a method_37244 + p 1 playerContext + p 2 entityContexts + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; lightningStrike a method_37243 + p 0 lightning + p 1 bystander + m ()Ljava/util/Optional; lightning b comp_2072 + m ()Ljava/util/Optional; bystander c comp_2073 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 lightning + p 3 bystander + m ()V +c net/minecraft/advancements/critereon/LocationPredicate df net/minecraft/class_2090 + f Lcom/mojang/serialization/Codec; CODEC a field_45760 + f Ljava/util/Optional; position b comp_1794 + f Ljava/util/Optional; biomes c comp_2375 + f Ljava/util/Optional; structures d comp_2376 + f Ljava/util/Optional; dimension e comp_1797 + f Ljava/util/Optional; smokey f comp_1798 + f Ljava/util/Optional; light g comp_1799 + f Ljava/util/Optional; block h comp_1800 + f Ljava/util/Optional; fluid i comp_1801 + f Ljava/util/Optional; canSeeSky j comp_2771 + m ()Ljava/util/Optional; position a comp_1794 + m (Lnet/minecraft/server/level/ServerLevel;DDD)Z matches a method_9018 + p 1 level + p 2 x + p 4 y + p 6 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53178 a method_53178 + m ()Ljava/util/Optional; biomes b comp_2375 + m ()Ljava/util/Optional; structures c comp_2376 + m ()Ljava/util/Optional; dimension d comp_1797 + m ()Ljava/util/Optional; smokey e comp_1798 + m ()Ljava/util/Optional; light f comp_1799 + m ()Ljava/util/Optional; block g comp_1800 + m ()Ljava/util/Optional; fluid h comp_1801 + m ()Ljava/util/Optional; canSeeSky i comp_2771 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/LocationPredicate$Builder df$a net/minecraft/class_2090$class_2091 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a field_9693 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b field_9689 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c field_9692 + f Ljava/util/Optional; biomes d field_9690 + f Ljava/util/Optional; structures e field_9688 + f Ljava/util/Optional; dimension f field_9691 + f Ljava/util/Optional; smokey g field_24501 + f Ljava/util/Optional; light h field_20717 + f Ljava/util/Optional; block i field_20718 + f Ljava/util/Optional; fluid j field_20719 + f Ljava/util/Optional; canSeeSky k field_51778 + m ()Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; location a method_22484 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inDimension a method_53182 + p 0 dimension + m (Lnet/minecraft/advancements/critereon/BlockPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setBlock a method_27989 + p 1 block + m (Lnet/minecraft/advancements/critereon/FluidPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setFluid a method_35274 + p 1 fluid + m (Lnet/minecraft/advancements/critereon/LightPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setLight a method_35275 + p 1 light + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; atYLocation a method_53181 + p 0 y + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inBiome a method_53180 + p 0 biome + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setBiomes a method_9024 + p 1 biomes + m (Z)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setSmokey a method_27990 + p 1 smokey + m ()Lnet/minecraft/advancements/critereon/LocationPredicate; build b method_9023 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setDimension b method_35279 + p 1 dimension + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setX b method_35276 + p 1 x + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inStructure b method_53183 + p 0 structure + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setStructures b method_35277 + p 1 structures + m (Z)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setCanSeeSky b method_60275 + p 1 canSeeSky + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setY c method_35278 + p 1 y + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setZ d method_35280 + p 1 z + m ()V +c net/minecraft/advancements/critereon/LocationPredicate$PositionPredicate df$b net/minecraft/class_2090$class_8747 + f Lcom/mojang/serialization/Codec; CODEC a field_45761 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_1802 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_1803 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_1804 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_1802 + m (DDD)Z matches a method_53184 + p 1 x + p 3 y + p 5 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53186 a method_53186 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Ljava/util/Optional; of a method_53185 + p 0 x + p 1 y + p 2 z + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_1803 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_1804 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + m ()V +c net/minecraft/advancements/critereon/LootTableTrigger dg net/minecraft/class_5282 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/advancements/critereon/LootTableTrigger$TriggerInstance;)Z method_27992 a method_27992 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceKey;)V trigger a method_27993 + p 1 player + p 2 lootTable + m ()V +c net/minecraft/advancements/critereon/LootTableTrigger$TriggerInstance dg$a net/minecraft/class_5282$class_5283 + f Lcom/mojang/serialization/Codec; CODEC a field_47307 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceKey; lootTable c comp_2074 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; lootTableUsed a method_27995 + p 0 lootTable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55060 a method_55060 + m ()Lnet/minecraft/resources/ResourceKey; lootTable b comp_2074 + m (Lnet/minecraft/resources/ResourceKey;)Z matches b method_27996 + p 1 lootTable + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds dh net/minecraft/class_2096 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EMPTY a field_9700 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SWAPPED b field_9701 + m ()Ljava/util/Optional; min a comp_1805 + m (Lcom/mojang/brigadier/StringReader;)Z isAllowedInputChat a method_9040 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFromReaderFactory;Ljava/util/function/Function;Ljava/util/function/Supplier;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds; fromReader a method_9043 + p 0 reader + p 1 boundedFactory + p 2 valueFactory + p 3 commandExceptionSupplier + p 4 formatter + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Optional; readNumber a method_9037 + p 0 reader + p 1 stringToValueFunction + p 2 commandExceptionSupplier + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;)Lcom/mojang/serialization/Codec; createCodec a method_53191 + p 0 codec + p 1 boundsFactory + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53192 a method_53192 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53188 a method_53188 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Ljava/lang/Number;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53189 a method_53189 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds;)Lcom/mojang/datafixers/util/Either; method_53190 a method_53190 + m ()Ljava/util/Optional; max b comp_1806 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53193 b method_53193 + m ()Z isAny c method_9041 + m ()Ljava/util/Optional; unwrapPoint d method_53194 + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory dh$a net/minecraft/class_2096$class_2097 +c net/minecraft/advancements/critereon/MinMaxBounds$BoundsFromReaderFactory dh$b net/minecraft/class_2096$class_2098 +c net/minecraft/advancements/critereon/MinMaxBounds$Doubles dh$c net/minecraft/class_2096$class_2099 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; ANY c field_9705 + f Lcom/mojang/serialization/Codec; CODEC d field_45762 + f Ljava/util/Optional; min e comp_1805 + f Ljava/util/Optional; max f comp_1806 + f Ljava/util/Optional; minSq g comp_1807 + f Ljava/util/Optional; maxSq h comp_1808 + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; exactly a method_35284 + p 0 value + m (DD)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; between a method_35285 + p 0 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fromReader a method_9049 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; create a method_9046 + p 0 reader + p 1 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fromReader a method_9048 + p 0 reader + p 1 formatter + m (Ljava/lang/Double;)Ljava/lang/Double; method_9052 a method_9052 + m (Ljava/util/Optional;)Ljava/util/Optional; squareOpt a method_9044 + p 0 value + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; atLeast b method_9050 + p 0 min + m (Ljava/lang/Double;)Ljava/lang/Double; method_53195 b method_53195 + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; atMost c method_35286 + p 0 max + m (D)Z matches d method_9047 + p 1 value + m ()Ljava/util/Optional; minSq e comp_1807 + m (D)Z matchesSqr e method_9045 + p 1 value + m ()Ljava/util/Optional; maxSq f comp_1808 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds$Ints dh$d net/minecraft/class_2096$class_2100 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; ANY c field_9708 + f Lcom/mojang/serialization/Codec; CODEC d field_45763 + f Ljava/util/Optional; min e comp_1805 + f Ljava/util/Optional; max f comp_1806 + f Ljava/util/Optional; minSq g comp_1809 + f Ljava/util/Optional; maxSq h comp_1810 + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; exactly a method_9058 + p 0 value + m (II)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; between a method_35287 + p 0 min + p 1 max + m (J)Z matchesSqr a method_35288 + p 1 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; fromReader a method_9060 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; create a method_9055 + p 0 reader + p 1 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; fromReader a method_9057 + p 0 reader + p 1 valueFunction + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_9061 a method_9061 + m (Ljava/util/Optional;)Ljava/util/Optional; squareOpt a method_9059 + p 0 value + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; atLeast b method_9053 + p 0 min + m (Ljava/lang/Integer;)Ljava/lang/Long; method_53197 b method_53197 + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; atMost c method_35289 + p 0 max + m (Ljava/lang/Integer;)Ljava/lang/Long; method_53198 c method_53198 + m (I)Z matches d method_9054 + p 1 value + m ()Ljava/util/Optional; minSq e comp_1809 + m ()Ljava/util/Optional; maxSq f comp_1810 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate di net/minecraft/class_2102 + f Lcom/mojang/serialization/Codec; CODEC a field_45764 + f Ljava/util/Map; effectMap b comp_1811 + m ()Ljava/util/Map; effectMap a comp_1811 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_9062 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z matches a method_9067 + p 1 entity + m (Ljava/util/Map;)Z matches a method_9063 + p 1 effects + m (Ljava/util/Map;)V + p 1 effectMap + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate$Builder di$a net/minecraft/class_2102$class_8748 + f Lcom/google/common/collect/ImmutableMap$Builder; effectMap a field_45765 + m ()Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; effects a method_53200 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; and a method_53201 + p 1 effect + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MobEffectsPredicate$MobEffectInstancePredicate;)Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; and a method_53202 + p 1 effect + p 2 predicate + m ()Ljava/util/Optional; build b method_53203 + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate$MobEffectInstancePredicate di$b net/minecraft/class_2102$class_2103 + f Lcom/mojang/serialization/Codec; CODEC a field_45766 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; amplifier b comp_1812 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration c comp_1813 + f Ljava/util/Optional; ambient d comp_1814 + f Ljava/util/Optional; visible e comp_1815 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; amplifier a comp_1812 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z matches a method_9069 + p 1 effect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53204 a method_53204 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration b comp_1813 + m ()Ljava/util/Optional; ambient c comp_1814 + m ()Ljava/util/Optional; visible d comp_1815 + m ()V + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MovementPredicate dj net/minecraft/class_9750 + f Lcom/mojang/serialization/Codec; CODEC a field_51786 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_2772 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_2773 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_2774 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; speed e comp_2775 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontalSpeed f comp_2776 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; verticalSpeed g comp_2777 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fallDistance h comp_2778 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_2772 + m (DDDD)Z matches a method_60277 + p 1 x + p 3 y + p 5 z + p 7 fallDistance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60278 a method_60278 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; speed a method_60279 + p 0 speed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_2773 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; horizontalSpeed b method_60280 + p 0 horizontalSpeed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_2774 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; verticalSpeed c method_60281 + p 0 verticalSpeed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; speed d comp_2775 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; fallDistance d method_60282 + p 0 fallDistance + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontalSpeed e comp_2776 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; verticalSpeed f comp_2777 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fallDistance g comp_2778 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + m ()V +c net/minecraft/advancements/critereon/NbtPredicate dk net/minecraft/class_2105 + f Lcom/mojang/serialization/Codec; CODEC a field_45768 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49244 + f Lnet/minecraft/nbt/CompoundTag; tag c comp_1816 + m ()Lnet/minecraft/nbt/CompoundTag; tag a comp_1816 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_9072 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9074 + p 1 stack + m (Lnet/minecraft/nbt/Tag;)Z matches a method_9077 + p 1 tag + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/nbt/CompoundTag; getEntityTagToCompare b method_9076 + p 0 entity + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/advancements/critereon/PickedUpItemTrigger dl net/minecraft/class_5279 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)V trigger a method_27975 + p 1 player + p 2 stack + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/PickedUpItemTrigger$TriggerInstance;)Z method_27976 a method_27976 + m ()V +c net/minecraft/advancements/critereon/PickedUpItemTrigger$TriggerInstance dl$a net/minecraft/class_5279$class_5280 + f Lcom/mojang/serialization/Codec; CODEC a field_47316 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2075 + f Ljava/util/Optional; entity d comp_2076 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_27979 + p 1 player + p 2 stack + p 3 context + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; thrownItemPickedUpByEntity a method_27978 + p 0 player + p 1 item + p 2 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55068 a method_55068 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; thrownItemPickedUpByPlayer a method_43277 + p 0 player + p 1 item + p 2 entity + m ()Ljava/util/Optional; item b comp_2075 + m ()Ljava/util/Optional; entity c comp_2076 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerHurtEntityTrigger dm net/minecraft/class_2115 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;FFZ)V trigger a method_9097 + p 1 player + p 2 entity + p 3 source + p 4 amountDealt + p 5 amountTaken + p 6 blocked + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;FFZLnet/minecraft/advancements/critereon/PlayerHurtEntityTrigger$TriggerInstance;)Z method_22493 a method_22493 + m ()V +c net/minecraft/advancements/critereon/PlayerHurtEntityTrigger$TriggerInstance dm$a net/minecraft/class_2115$class_2117 + f Lcom/mojang/serialization/Codec; CODEC a field_47317 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; damage c comp_2077 + f Ljava/util/Optional; entity d comp_2078 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_9104 + p 1 player + p 2 context + p 3 damage + p 4 dealt + p 5 taken + p 6 blocked + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerHurtEntityWithDamage a method_35297 + p 0 damage + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity a method_9103 + p 0 damage + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55069 a method_55069 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntityWithDamage a method_35296 + p 0 damage + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity a method_35294 + p 0 damage + p 1 entity + m ()Lnet/minecraft/advancements/Criterion; playerHurtEntity b method_35298 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity b method_35295 + p 0 entity + m ()Ljava/util/Optional; damage c comp_2077 + m ()Ljava/util/Optional; entity d comp_2078 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 damage + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerInteractTrigger dn net/minecraft/class_5409 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)V trigger a method_30097 + p 1 player + p 2 item + p 3 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/PlayerInteractTrigger$TriggerInstance;)Z method_30095 a method_30095 + m ()V +c net/minecraft/advancements/critereon/PlayerInteractTrigger$TriggerInstance dn$a net/minecraft/class_5409$class_5410 + f Lcom/mojang/serialization/Codec; CODEC a field_47318 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2079 + f Ljava/util/Optional; entity d comp_2080 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55070 a method_55070 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; itemUsedOnEntity a method_43278 + p 0 item + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_30100 + p 1 item + p 2 lootContext + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; itemUsedOnEntity a method_30099 + p 0 player + p 1 item + p 2 entity + m ()Ljava/util/Optional; item b comp_2079 + m ()Ljava/util/Optional; entity c comp_2080 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate dp net/minecraft/class_4553 + f I LOOKING_AT_RANGE b field_33928 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45770 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level d comp_1817 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType e comp_1818 + f Ljava/util/List; stats f comp_1819 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes g comp_1820 + f Ljava/util/Map; advancements h comp_1821 + f Ljava/util/Optional; lookingAt i comp_1822 + m (Lnet/minecraft/world/entity/Entity;)Z method_37250 a method_37250 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53219 a method_53219 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level b comp_1817 + m ()Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType c comp_1818 + m ()Ljava/util/List; stats d comp_1819 + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes e comp_1820 + m ()Ljava/util/Map; advancements f comp_1821 + m ()Ljava/util/Optional; lookingAt g comp_1822 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/GameTypePredicate;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;Ljava/util/Map;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementCriterionsPredicate dp$a net/minecraft/class_4553$class_4554 + f Lcom/mojang/serialization/Codec; CODEC a field_45771 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; criterions c comp_1823 + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; criterions a comp_1823 + m (Lnet/minecraft/advancements/AdvancementProgress;)Z test a method_22504 + p 1 progress + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;)V + p 1 criterions + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementDonePredicate dp$b net/minecraft/class_4553$class_4555 + f Lcom/mojang/serialization/Codec; CODEC a field_45772 + f Z state c comp_1824 + m ()Z state a comp_1824 + m (Lnet/minecraft/advancements/AdvancementProgress;)Z test a method_22505 + p 1 progress + m (Z)V + p 1 state + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementPredicate dp$c net/minecraft/class_4553$class_4556 + f Lcom/mojang/serialization/Codec; CODEC b field_45773 + m (Lnet/minecraft/advancements/critereon/PlayerPredicate$AdvancementPredicate;)Lcom/mojang/datafixers/util/Either; method_53223 a method_53223 + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$Builder dp$d net/minecraft/class_4553$class_4557 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level a field_20730 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType b field_20731 + f Lcom/google/common/collect/ImmutableList$Builder; stats c field_20732 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes d field_20733 + f Ljava/util/Map; advancements e field_20734 + f Ljava/util/Optional; lookingAt f field_33930 + m ()Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; player a method_35310 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; checkAdvancementCriterions a method_35314 + p 1 advancement + p 2 criterions + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; addRecipe a method_35315 + p 1 recipe + p 2 unlocked + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; addStat a method_35311 + p 1 type + p 2 value + p 3 range + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setLookingAt a method_37251 + p 1 lookingAt + m (Lnet/minecraft/advancements/critereon/GameTypePredicate;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setGameType a method_35312 + p 1 gameType + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setLevel a method_35313 + p 1 level + m ()Lnet/minecraft/advancements/critereon/PlayerPredicate; build b method_22507 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; checkAdvancementDone b method_35316 + p 1 advancement + p 2 done + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$StatMatcher dp$e net/minecraft/class_4553$class_8749 + f Lcom/mojang/serialization/Codec; CODEC a field_45774 + f Lnet/minecraft/stats/StatType; type b comp_1825 + f Lnet/minecraft/core/Holder; value c comp_1826 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; range d comp_1827 + f Ljava/util/function/Supplier; stat e comp_1828 + m ()Lnet/minecraft/stats/StatType; type a comp_1825 + m (Lnet/minecraft/stats/StatType;)Lcom/mojang/serialization/MapCodec; createTypedCodec a method_53224 + p 0 statType + m (Lnet/minecraft/stats/StatType;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53225 a method_53225 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;)Lnet/minecraft/stats/Stat; method_53226 a method_53226 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$StatMatcher; method_53227 a method_53227 + m (Lnet/minecraft/stats/StatsCounter;)Z matches a method_53228 + p 1 statsCounter + m ()Lnet/minecraft/core/Holder; value b comp_1826 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; range c comp_1827 + m ()Ljava/util/function/Supplier; stat d comp_1828 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 type + p 2 value + p 3 range + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/function/Supplier;)V + m ()V +c net/minecraft/advancements/critereon/PlayerTrigger dq net/minecraft/class_2135 + m (Lnet/minecraft/server/level/ServerPlayer;)V trigger a method_9141 + p 1 player + m (Lnet/minecraft/advancements/critereon/PlayerTrigger$TriggerInstance;)Z method_29964 a method_29964 + m ()V +c net/minecraft/advancements/critereon/PlayerTrigger$TriggerInstance dq$a net/minecraft/class_2135$class_2137 + f Lcom/mojang/serialization/Codec; CODEC a field_47326 + f Ljava/util/Optional; player b comp_2029 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; located a method_53788 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55105 a method_55105 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/Criterion; located a method_43137 + p 0 location + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/advancements/Criterion; walkOnBlockWithEquipment a method_43136 + p 0 block + p 1 equipment + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; located a method_43135 + p 0 entity + m ()Lnet/minecraft/advancements/Criterion; sleptInBed b method_43138 + m ()Lnet/minecraft/advancements/Criterion; raidWon c method_43139 + m ()Lnet/minecraft/advancements/Criterion; avoidVibration d method_43279 + m ()Lnet/minecraft/advancements/Criterion; tick e method_49195 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/RaiderPredicate dr net/minecraft/class_9471 + f Lcom/mojang/serialization/MapCodec; CODEC b field_50162 + f Lnet/minecraft/advancements/critereon/RaiderPredicate; CAPTAIN_WITHOUT_RAID c field_50163 + f Z hasRaid d comp_2549 + f Z isCaptain e comp_2550 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58678 a method_58678 + m ()Z hasRaid b comp_2549 + m ()Z isCaptain c comp_2550 + m (ZZ)V + m ()V +c net/minecraft/advancements/critereon/RecipeCraftedTrigger ds net/minecraft/class_8508 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger$TriggerInstance;)Z method_51349 a method_51349 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V trigger a method_51350 + p 1 player + p 2 recipeId + p 3 items + m ()V +c net/minecraft/advancements/critereon/RecipeCraftedTrigger$TriggerInstance ds$a net/minecraft/class_8508$class_8509 + f Lcom/mojang/serialization/Codec; CODEC a field_47327 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceLocation; recipeId c comp_2087 + f Ljava/util/List; ingredients d comp_2088 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; craftedItem a method_51352 + p 0 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)Lnet/minecraft/advancements/Criterion; craftedItem a method_51353 + p 0 recipeId + p 1 ingredients + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55106 a method_55106 + m ()Lnet/minecraft/resources/ResourceLocation; recipeId b comp_2087 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; crafterCraftedItem b method_58450 + p 0 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)Z matches b method_51354 + p 1 recipeId + p 2 items + m ()Ljava/util/List; ingredients c comp_2088 + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 player + p 2 recipeId + p 3 ingredients + m ()V +c net/minecraft/advancements/critereon/RecipeUnlockedTrigger dt net/minecraft/class_2119 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; unlocked a method_27847 + p 0 recipeId + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;)V trigger a method_9107 + p 1 player + p 2 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/advancements/critereon/RecipeUnlockedTrigger$TriggerInstance;)Z method_22508 a method_22508 + m ()V +c net/minecraft/advancements/critereon/RecipeUnlockedTrigger$TriggerInstance dt$a net/minecraft/class_2119$class_2121 + f Lcom/mojang/serialization/Codec; CODEC a field_47333 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceLocation; recipe c comp_2089 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55118 a method_55118 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z matches a method_9112 + p 1 recipe + m ()Lnet/minecraft/resources/ResourceLocation; recipe b comp_2089 + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceLocation;)V + p 1 player + p 2 recipe + m ()V +c net/minecraft/advancements/critereon/ShotCrossbowTrigger du net/minecraft/class_2123 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9115 + p 1 shooter + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ShotCrossbowTrigger$TriggerInstance;)Z method_22509 a method_22509 + m ()V +c net/minecraft/advancements/critereon/ShotCrossbowTrigger$TriggerInstance du$a net/minecraft/class_2123$class_2125 + f Lcom/mojang/serialization/Codec; CODEC a field_47334 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2090 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55123 a method_55123 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9121 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; shotCrossbow a method_9120 + p 0 item + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; shotCrossbow a method_35323 + p 0 item + m ()Ljava/util/Optional; item b comp_2090 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/SimpleCriterionTrigger dv net/minecraft/class_4558 + f Ljava/util/Map; players a field_20735 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Predicate;)V trigger a method_22510 + p 1 player + p 2 testTrigger + m (Lnet/minecraft/server/PlayerAdvancements;)Ljava/util/Set; method_22512 b method_22512 + m ()V +c net/minecraft/advancements/critereon/SimpleCriterionTrigger$SimpleInstance dv$a net/minecraft/class_4558$class_8788 + m ()Ljava/util/Optional; player a comp_2029 +c net/minecraft/advancements/critereon/SingleComponentItemPredicate dw net/minecraft/class_9365 + m ()Lnet/minecraft/core/component/DataComponentType; componentType a method_58163 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Object;)Z matches a method_58167 + p 1 stack + p 2 value +c net/minecraft/advancements/critereon/SlideDownBlockTrigger dx net/minecraft/class_4713 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;)V trigger a method_23909 + p 1 player + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Z method_23906 a method_23906 + m ()V +c net/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance dx$a net/minecraft/class_4713$class_4714 + f Lcom/mojang/serialization/Codec; CODEC a field_47335 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2091 + f Ljava/util/Optional; state d comp_2092 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55125 a method_55125 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; slidesDownBlock a method_23912 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_23913 + p 1 state + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; validate a method_55126 + p 0 triggerInstance + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_55127 a method_55127 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_55128 a method_55128 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55129 a method_55129 + m ()Ljava/util/Optional; block b comp_2091 + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; method_55130 b method_55130 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_55131 b method_55131 + m ()Ljava/util/Optional; state c comp_2092 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/SlimePredicate dy net/minecraft/class_7383 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45776 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; size c comp_1829 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53234 a method_53234 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/SlimePredicate; sized a method_43157 + p 0 size + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; size b comp_1829 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 size + m ()V +c net/minecraft/advancements/critereon/SlotsPredicate dz net/minecraft/class_9350 + f Lcom/mojang/serialization/Codec; CODEC a field_49755 + f Ljava/util/Map; slots b comp_2455 + m ()Ljava/util/Map; slots a comp_2455 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_58119 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/advancements/critereon/ItemPredicate;Lit/unimi/dsi/fastutil/ints/IntList;)Z matchSlots a method_58120 + p 0 entity + p 1 predicate + p 2 slots + m (Ljava/util/Map;)V + m ()V +c net/minecraft/advancements/critereon/StartRidingTrigger ea net/minecraft/class_6407 + m (Lnet/minecraft/server/level/ServerPlayer;)V trigger a method_37257 + p 1 player + m (Lnet/minecraft/advancements/critereon/StartRidingTrigger$TriggerInstance;)Z method_37259 a method_37259 + m ()V +c net/minecraft/advancements/critereon/StartRidingTrigger$TriggerInstance ea$a net/minecraft/class_6407$class_6408 + f Lcom/mojang/serialization/Codec; CODEC a field_47337 + f Ljava/util/Optional; player b comp_2029 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerStartsRiding a method_37260 + p 0 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55134 a method_55134 + m (Ljava/util/Optional;)V + p 1 player + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate eb net/minecraft/class_4559 + f Lcom/mojang/serialization/Codec; CODEC a field_45777 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49396 + f Ljava/util/List; properties c comp_1830 + f Lcom/mojang/serialization/Codec; PROPERTIES_CODEC d field_45778 + m ()Ljava/util/List; properties a comp_1830 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_22514 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/Optional; checkState a method_53235 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/StateHolder;)Z matches a method_22515 + p 1 properties + p 2 targetProperty + m (Lnet/minecraft/world/level/material/FluidState;)Z matches a method_22518 + p 1 state + m (Ljava/util/List;)Ljava/util/Map; method_53236 a method_53236 + m (Ljava/util/Map$Entry;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$PropertyMatcher; method_53237 a method_53237 + m (Ljava/util/Map;)Ljava/util/List; method_53238 a method_53238 + m (Ljava/util/List;)V + p 1 properties + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$Builder eb$a net/minecraft/class_4559$class_4560 + f Lcom/google/common/collect/ImmutableList$Builder; matchers a field_20738 + m ()Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; properties a method_22523 + m (Lnet/minecraft/world/level/block/state/properties/Property;I)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22524 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22525 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22526 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Z)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22527 + p 1 property + p 2 value + m ()Ljava/util/Optional; build b method_22528 + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$ExactMatcher eb$b net/minecraft/class_4559$class_4561 + f Lcom/mojang/serialization/Codec; CODEC a field_45779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49397 + f Ljava/lang/String; value e comp_1831 + m ()Ljava/lang/String; value a comp_1831 + m (Ljava/lang/String;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$PropertyMatcher eb$c net/minecraft/class_4559$class_4562 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49398 + f Ljava/lang/String; name b comp_1832 + f Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher; valueMatcher c comp_1833 + m ()Ljava/lang/String; name a comp_1832 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/Optional; checkState a method_22531 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/StateHolder;)Z match a method_22530 + p 1 properties + p 2 propertyToMatch + m ()Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher; valueMatcher b comp_1833 + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$RangedMatcher eb$d net/minecraft/class_4559$class_4563 + f Lcom/mojang/serialization/Codec; CODEC a field_45780 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49399 + f Ljava/util/Optional; minValue e comp_1834 + f Ljava/util/Optional; maxValue f comp_1835 + m ()Ljava/util/Optional; minValue a comp_1834 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53239 a method_53239 + m ()Ljava/util/Optional; maxValue b comp_1835 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher eb$e net/minecraft/class_4559$class_8750 + f Lcom/mojang/serialization/Codec; CODEC c field_45781 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49400 + m (Lnet/minecraft/world/level/block/state/StateHolder;Lnet/minecraft/world/level/block/state/properties/Property;)Z match a method_22532 + p 1 stateHolder + p 2 property + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)Lcom/mojang/datafixers/util/Either; method_57564 a method_57564 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)Lcom/mojang/datafixers/util/Either; method_53243 b method_53243 + m ()V +c net/minecraft/advancements/critereon/SummonedEntityTrigger ec net/minecraft/class_2128 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)V trigger a method_9124 + p 1 player + p 2 entity + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/SummonedEntityTrigger$TriggerInstance;)Z method_22537 a method_22537 + m ()V +c net/minecraft/advancements/critereon/SummonedEntityTrigger$TriggerInstance ec$a net/minecraft/class_2128$class_2130 + f Lcom/mojang/serialization/Codec; CODEC a field_47338 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entity c comp_2093 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; summonedEntity a method_9129 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55135 a method_55135 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_9130 + p 1 lootContext + m ()Ljava/util/Optional; entity b comp_2093 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entity + m ()V +c net/minecraft/advancements/critereon/TagPredicate ed net/minecraft/class_8129 + f Lnet/minecraft/tags/TagKey; tag a comp_1836 + f Z expected b comp_1837 + m ()Lnet/minecraft/tags/TagKey; tag a comp_1836 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_53245 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53246 a method_53246 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/TagPredicate; is a method_48965 + p 0 tag + m (Lnet/minecraft/core/Holder;)Z matches a method_48967 + p 1 value + m ()Z expected b comp_1837 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/TagPredicate; isNot b method_48968 + p 0 tag + m (Lnet/minecraft/tags/TagKey;Z)V + p 1 tag + p 2 expected +c net/minecraft/advancements/critereon/TameAnimalTrigger ee net/minecraft/class_2131 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/animal/Animal;)V trigger a method_9132 + p 1 player + p 2 entity + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/TameAnimalTrigger$TriggerInstance;)Z method_22538 a method_22538 + m ()V +c net/minecraft/advancements/critereon/TameAnimalTrigger$TriggerInstance ee$a net/minecraft/class_2131$class_2133 + f Lcom/mojang/serialization/Codec; CODEC a field_47344 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entity c comp_2094 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; tamedAnimal a method_16114 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55136 a method_55136 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_9139 + p 1 lootContext + m ()Lnet/minecraft/advancements/Criterion; tamedAnimal b method_9138 + m ()Ljava/util/Optional; entity c comp_2094 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entity + m ()V +c net/minecraft/advancements/critereon/TargetBlockTrigger ef net/minecraft/class_4851 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;I)V trigger a method_24861 + p 1 player + p 2 projectile + p 3 vector + p 4 signalStrength + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/phys/Vec3;ILnet/minecraft/advancements/critereon/TargetBlockTrigger$TriggerInstance;)Z method_24951 a method_24951 + m ()V +c net/minecraft/advancements/critereon/TargetBlockTrigger$TriggerInstance ef$a net/minecraft/class_4851$class_4852 + f Lcom/mojang/serialization/Codec; CODEC a field_47345 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; signalStrength c comp_2095 + f Ljava/util/Optional; projectile d comp_2096 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55137 a method_55137 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; targetHit a method_24865 + p 0 signalStrength + p 1 projectile + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/phys/Vec3;I)Z matches a method_24952 + p 1 context + p 2 vector + p 3 signalStrength + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; signalStrength b comp_2095 + m ()Ljava/util/Optional; projectile c comp_2096 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + p 1 player + p 2 signalStrength + p 3 projectile + m ()V +c net/minecraft/advancements/critereon/TradeTrigger eg net/minecraft/class_2140 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/npc/AbstractVillager;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9146 + p 1 player + p 2 villager + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/TradeTrigger$TriggerInstance;)Z method_22539 a method_22539 + m ()V +c net/minecraft/advancements/critereon/TradeTrigger$TriggerInstance eg$a net/minecraft/class_2140$class_2142 + f Lcom/mojang/serialization/Codec; CODEC a field_47347 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; villager c comp_2097 + f Ljava/util/Optional; item d comp_2098 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; tradedWithVillager a method_38914 + p 0 villager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55138 a method_55138 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)Z matches a method_9154 + p 1 context + p 2 stack + m ()Lnet/minecraft/advancements/Criterion; tradedWithVillager b method_9153 + m ()Ljava/util/Optional; villager c comp_2097 + m ()Ljava/util/Optional; item d comp_2098 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 villager + p 3 item + m ()V +c net/minecraft/advancements/critereon/UsedEnderEyeTrigger eh net/minecraft/class_2143 + m (DLnet/minecraft/advancements/critereon/UsedEnderEyeTrigger$TriggerInstance;)Z method_22540 a method_22540 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)V trigger a method_9157 + p 1 player + p 2 pos + m ()V +c net/minecraft/advancements/critereon/UsedEnderEyeTrigger$TriggerInstance eh$a net/minecraft/class_2143$class_2145 + f Lcom/mojang/serialization/Codec; CODEC a field_47350 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance c comp_2099 + m (D)Z matches a method_9162 + p 1 distanceSq + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55142 a method_55142 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance b comp_2099 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + p 1 player + p 2 distance + m ()V +c net/minecraft/advancements/critereon/UsedTotemTrigger ei net/minecraft/class_2148 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9165 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/UsedTotemTrigger$TriggerInstance;)Z method_22541 a method_22541 + m ()V +c net/minecraft/advancements/critereon/UsedTotemTrigger$TriggerInstance ei$a net/minecraft/class_2148$class_2150 + f Lcom/mojang/serialization/Codec; CODEC a field_47351 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2100 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55143 a method_55143 + m (Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; usedTotem a method_35399 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9171 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; usedTotem a method_9170 + p 0 item + m ()Ljava/util/Optional; item b comp_2100 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/UsingItemTrigger ej net/minecraft/class_6409 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_37262 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/UsingItemTrigger$TriggerInstance;)Z method_37263 a method_37263 + m ()V +c net/minecraft/advancements/critereon/UsingItemTrigger$TriggerInstance ej$a net/minecraft/class_6409$class_6410 + f Lcom/mojang/serialization/Codec; CODEC a field_47353 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2101 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; lookingAt a method_37265 + p 0 player + p 1 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55144 a method_55144 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_37266 + p 1 item + m ()Ljava/util/Optional; item b comp_2101 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/WrappedMinMaxBounds ek net/minecraft/class_2152 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; ANY a field_9780 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INTS_ONLY b field_9781 + f Ljava/lang/Float; min c comp_1840 + f Ljava/lang/Float; max d comp_1841 + m ()Lcom/google/gson/JsonElement; serializeToJson a method_35407 + m (D)Z matchesSqr a method_35400 + p 1 value + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; exactly a method_35401 + p 0 value + m (FF)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; between a method_35402 + p 0 min + p 1 max + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromJson a method_35403 + p 0 json + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromReader a method_35404 + p 0 reader + p 1 isFloatingPoint + m (Lcom/mojang/brigadier/StringReader;ZLjava/util/function/Function;)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromReader a method_9172 + p 0 reader + p 1 isFloatingPoint + p 2 valueFactory + m (Ljava/lang/Float;)Ljava/lang/Float; method_35405 a method_35405 + m (Ljava/lang/Float;Ljava/util/function/Function;)Ljava/lang/Float; optionallyFormat a method_9174 + p 0 value + p 1 valueFactory + m ()Ljava/lang/Float; min b comp_1840 + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; atLeast b method_35406 + p 0 min + m (Lcom/mojang/brigadier/StringReader;Z)Ljava/lang/Float; readNumber b method_9176 + p 0 reader + p 1 isFloatingPoint + m ()Ljava/lang/Float; max c comp_1841 + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; atMost c method_35408 + p 0 max + m (Lcom/mojang/brigadier/StringReader;Z)Z isAllowedNumber c method_9173 + p 0 reader + p 1 isFloatingPoint + m (F)Z matches d method_35409 + p 1 value + m (Ljava/lang/Float;Ljava/lang/Float;)V + p 1 min + p 2 max + m ()V +c net/minecraft/advancements/critereon/package-info el net/minecraft/class_6129 +c net/minecraft/advancements/package-info em net/minecraft/class_6132 +c net/minecraft/commands/BrigadierExceptions en net/minecraft/class_2156 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; DISPATCHER_PARSE_EXCEPTION A field_9790 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; DOUBLE_TOO_SMALL a field_9799 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; DOUBLE_TOO_BIG b field_9788 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; FLOAT_TOO_SMALL c field_9802 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; FLOAT_TOO_BIG d field_9795 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; INTEGER_TOO_SMALL e field_9784 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; INTEGER_TOO_BIG f field_9793 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; LONG_TOO_SMALL g field_18140 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; LONG_TOO_BIG h field_18141 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; LITERAL_INCORRECT i field_9796 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_START_OF_QUOTE j field_9783 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_END_OF_QUOTE k field_9803 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_ESCAPE l field_9791 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_BOOL m field_9789 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_INT n field_9786 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_INT o field_9801 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_LONG p field_18142 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_LONG q field_18143 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_DOUBLE r field_9800 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_DOUBLE s field_9798 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_FLOAT t field_9804 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_FLOAT u field_9787 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_BOOL v field_9794 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_EXPECTED_SYMBOL w field_9785 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_UNKNOWN_COMMAND x field_9797 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_UNKNOWN_ARGUMENT y field_9792 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_EXPECTED_ARGUMENT_SEPARATOR z field_9782 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9184 a method_9184 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18479 a method_18479 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9188 b method_9188 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18480 b method_18480 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9179 c method_9179 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9186 c method_9186 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9182 d method_9182 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9190 d method_9190 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18481 e method_18481 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9178 e method_9178 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9181 f method_9181 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9180 f method_9180 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9185 g method_9185 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9183 g method_9183 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9191 h method_9191 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9187 h method_9187 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9189 i method_9189 + m ()V + m ()V +c net/minecraft/commands/CacheableFunction eo net/minecraft/class_2159 + f Lcom/mojang/serialization/Codec; CODEC a field_47409 + f Lnet/minecraft/resources/ResourceLocation; id b field_9807 + f Z resolved c field_9810 + f Ljava/util/Optional; function d field_9808 + m ()Lnet/minecraft/resources/ResourceLocation; getId a method_9197 + m (Lnet/minecraft/server/ServerFunctionManager;)Ljava/util/Optional; get a method_9196 + p 1 functionManager + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + m ()V +c net/minecraft/commands/CommandBuildContext ep net/minecraft/class_7157 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/commands/CommandBuildContext; simple a method_46722 + p 0 provider + p 1 enabledFeatures +c net/minecraft/commands/CommandBuildContext$1 ep$1 net/minecraft/class_7157$1 + f Lnet/minecraft/core/HolderLookup$Provider; val$access a field_40908 + f Lnet/minecraft/world/flag/FeatureFlagSet; val$enabledFeatures b field_40909 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_56810 a method_56810 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;)V +c net/minecraft/commands/CommandResultCallback eq net/minecraft/class_8935 + f Lnet/minecraft/commands/CommandResultCallback; EMPTY a field_47158 + m (Lnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/CommandResultCallback;ZI)V method_54880 a method_54880 + m ()V +c net/minecraft/commands/CommandResultCallback$1 eq$1 net/minecraft/class_8935$1 + m ()V +c net/minecraft/commands/CommandSigningContext er net/minecraft/class_7448 + f Lnet/minecraft/commands/CommandSigningContext; ANONYMOUS a field_39901 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; getArgument a method_44907 + p 1 name + m ()V +c net/minecraft/commands/CommandSigningContext$1 er$1 net/minecraft/class_7448$1 + m ()V +c net/minecraft/commands/CommandSigningContext$SignedArguments er$a net/minecraft/class_7448$class_7449 + f Ljava/util/Map; arguments b comp_971 + m ()Ljava/util/Map; arguments a comp_971 + m (Ljava/util/Map;)V +c net/minecraft/commands/CommandSource es net/minecraft/class_2165 + f Lnet/minecraft/commands/CommandSource; NULL a field_17395 + c A {@code CommandSource} that ignores all messages. + m ()Z shouldInformAdmins M_ method_9201 + m (Lnet/minecraft/network/chat/Component;)V sendSystemMessage a method_43496 + p 1 component + m ()Z acceptsSuccess k_ method_9200 + m ()Z alwaysAccepts l_ method_36320 + m ()Z acceptsFailure w_ method_9202 + m ()V +c net/minecraft/commands/CommandSource$1 es$1 net/minecraft/class_2165$1 + m ()V +c net/minecraft/commands/CommandSourceStack et net/minecraft/class_2168 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_PLAYER a field_9824 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_ENTITY b field_9827 + f Lnet/minecraft/commands/CommandSource; source c field_9819 + f Lnet/minecraft/world/phys/Vec3; worldPosition d field_9817 + f Lnet/minecraft/server/level/ServerLevel; level e field_9828 + f I permissionLevel f field_9815 + f Ljava/lang/String; textName g field_9826 + f Lnet/minecraft/network/chat/Component; displayName h field_9825 + f Lnet/minecraft/server/MinecraftServer; server i field_9818 + f Z silent j field_9823 + f Lnet/minecraft/world/entity/Entity; entity k field_9820 + f Lnet/minecraft/commands/CommandResultCallback; resultCallback l field_47159 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor m field_9816 + f Lnet/minecraft/world/phys/Vec2; rotation n field_9822 + f Lnet/minecraft/commands/CommandSigningContext; signingContext o field_39183 + f Lnet/minecraft/util/TaskChainer; chatMessageChainer p field_39834 + m ()Lnet/minecraft/commands/CommandSourceStack; withSuppressedOutput a method_9217 + m (I)Lnet/minecraft/commands/CommandSourceStack; withPermission a method_9206 + p 1 permissionLevel + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/CommandSourceStack; withLevel a method_9227 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Z shouldFilterMessageTo a method_45067 + p 1 receiver + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/commands/CommandSourceStack; withEntity a method_9232 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)Lnet/minecraft/commands/CommandSourceStack; facing a method_9220 + p 1 entity + p 2 anchor + m (Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/CommandSourceStack; withCallback a method_9231 + p 1 callback + m (Lnet/minecraft/commands/CommandResultCallback;Ljava/util/function/BinaryOperator;)Lnet/minecraft/commands/CommandSourceStack; withCallback a method_9209 + p 1 callback + p 2 operator + m (Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/util/TaskChainer;)Lnet/minecraft/commands/CommandSourceStack; withSigningContext a method_43735 + p 1 signingContext + p 2 chatMessageChainer + m (Lnet/minecraft/commands/CommandSource;)Lnet/minecraft/commands/CommandSourceStack; withSource a method_36321 + p 1 source + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/commands/CommandSourceStack; withRotation a method_9216 + p 1 rotation + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/commands/CommandSourceStack; withPosition a method_9208 + p 1 pos + m (Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/core/Registry;)Ljava/util/concurrent/CompletableFuture; method_41212 a method_41212 + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)Lnet/minecraft/commands/CommandSourceStack; withAnchor a method_9218 + p 1 anchor + m (Ljava/util/function/Supplier;Z)V sendSuccess a method_9226 + p 1 messageSupplier + p 2 allowLogging + m (Lnet/minecraft/network/chat/Component;)V sendSystemMessage a method_45068 + p 1 message + m (Lnet/minecraft/network/chat/OutgoingChatMessage;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendChatMessage a method_44749 + p 1 message + p 2 shouldFilter + p 3 boundChatType + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_9223 + m (I)Lnet/minecraft/commands/CommandSourceStack; withMaximumPermission b method_9230 + p 1 permissionLevel + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/commands/CommandSourceStack; facing b method_9221 + p 1 lookPos + m (Lnet/minecraft/network/chat/Component;)V sendFailure b method_9213 + p 1 message + m ()Ljava/lang/String; getTextName c method_9214 + m (Lnet/minecraft/network/chat/Component;)V broadcastToAdmins c method_9212 + p 1 message + m ()Lnet/minecraft/world/phys/Vec3; getPosition d method_9222 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel e method_9225 + m ()Lnet/minecraft/world/entity/Entity; getEntity f method_9228 + m ()Lnet/minecraft/world/entity/Entity; getEntityOrException g method_9229 + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayerOrException h method_9207 + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayer i method_44023 + m ()Z isPlayer j method_43737 + m ()Lnet/minecraft/world/phys/Vec2; getRotation k method_9210 + m ()Lnet/minecraft/server/MinecraftServer; getServer l method_9211 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getAnchor m method_9219 + m ()Lnet/minecraft/commands/CommandSigningContext; getSigningContext n method_43738 + m ()Lnet/minecraft/util/TaskChainer; getChatMessageChainer o method_44909 + m (Lnet/minecraft/commands/CommandSource;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;Lnet/minecraft/server/level/ServerLevel;ILjava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/Entity;)V + p 1 source + p 2 worldPosition + p 3 rotation + p 4 level + p 5 permissionLevel + p 6 textName + p 7 displayName + p 8 server + p 9 entity + m (Lnet/minecraft/commands/CommandSource;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;Lnet/minecraft/server/level/ServerLevel;ILjava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/util/TaskChainer;)V + p 1 source + p 2 worldPosition + p 3 rotation + p 4 level + p 5 permissionLevel + p 6 textName + p 7 displayName + p 8 server + p 9 entity + p 10 silent + p 11 resultCallback + p 12 anchor + p 13 signingContext + p 14 chatMessageChainer + m ()V +c net/minecraft/commands/Commands eu net/minecraft/class_2170 + f I LEVEL_ALL a field_31837 + f I LEVEL_MODERATORS b field_31838 + f I LEVEL_GAMEMASTERS c field_31839 + f I LEVEL_ADMINS d field_31840 + f I LEVEL_OWNERS e field_31841 + f Ljava/lang/ThreadLocal; CURRENT_EXECUTION_CONTEXT f field_46823 + f Lorg/slf4j/Logger; LOGGER g field_9833 + f Lcom/mojang/brigadier/CommandDispatcher; dispatcher h field_9832 + m ()Lcom/mojang/brigadier/CommandDispatcher; getDispatcher a method_9235 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendCommands a method_9241 + p 1 player + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Collection;)V method_41710 a method_41710 + m (Lcom/mojang/brigadier/ParseResults;)V validateParseResults a method_54312 + p 0 parseResults + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;)V performCommand a method_9249 + p 1 parseResults + p 2 command + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)Lcom/mojang/brigadier/context/ContextChain; finishParsing a method_54492 + p 0 parseResults + p 1 command + p 2 source + m (Lcom/mojang/brigadier/ParseResults;Ljava/util/function/UnaryOperator;)Lcom/mojang/brigadier/ParseResults; mapSource a method_45018 + p 0 parseResults + p 1 mapper + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Ljava/lang/String; method_30851 a method_30851 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_9246 a method_9246 + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Map;)V fillUsableCommands a method_9239 + p 1 rootCommandSource + p 2 rootSuggestion + p 3 source + p 4 commandNodeToSuggestionNode + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)V performPrefixedCommand a method_44252 + p 1 source + p 2 command + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Consumer;)V executeCommandInContext a method_54313 + p 0 source + p 1 contextConsumer + m (Lnet/minecraft/commands/Commands$ParseFunction;)Ljava/util/function/Predicate; createValidator a method_9238 + p 0 parser + m (Lnet/minecraft/commands/Commands$ParseFunction;Ljava/lang/String;)Z method_9240 a method_9240 + m (Lnet/minecraft/commands/SharedSuggestionProvider;)Z method_9245 a method_9245 + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; literal a method_9247 + c Creates a new argument. Intended to be imported statically. The benefit of this over the brigadier {@link LiteralArgumentBuilder#literal} method is that it is typed to {@link CommandSource}. + p 0 name + m (Ljava/lang/String;Lcom/mojang/brigadier/arguments/ArgumentType;)Lcom/mojang/brigadier/builder/RequiredArgumentBuilder; argument a method_9244 + c Creates a new argument. Intended to be imported statically. The benefit of this over the brigadier {@link RequiredArgumentBuilder#argument} method is that it is typed to {@link CommandSource}. + p 0 name + p 1 type + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;)V method_54314 a method_54314 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_54493 a method_54493 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/commands/CommandBuildContext; createValidationContext a method_46732 + p 0 provider + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_9242 a method_9242 + m ()V validate b method_30852 + m (Lcom/mojang/brigadier/ParseResults;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; getParseException b method_23917 + p 0 result + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Z method_30853 b method_30853 + m (Ljava/lang/String;)Ljava/lang/String; method_44253 b method_44253 + m (Lcom/mojang/brigadier/ParseResults;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_54494 c method_54494 + m (Lnet/minecraft/commands/Commands$CommandSelection;Lnet/minecraft/commands/CommandBuildContext;)V + p 1 selection + p 2 context + m ()V +c net/minecraft/commands/Commands$1 eu$1 net/minecraft/class_2170$1 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries a field_40921 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup$Delegate; createLookup a method_56811 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/commands/Commands$1$1 eu$1$1 net/minecraft/class_2170$1$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$original a field_40922 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; method_46734 c method_46734 + m (Lnet/minecraft/commands/Commands$1;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/commands/Commands$CommandSelection eu$a net/minecraft/class_2170$class_5364 + f Lnet/minecraft/commands/Commands$CommandSelection; ALL a field_25419 + f Lnet/minecraft/commands/Commands$CommandSelection; DEDICATED b field_25420 + f Lnet/minecraft/commands/Commands$CommandSelection; INTEGRATED c field_25421 + f Z includeIntegrated d field_25422 + f Z includeDedicated e field_25423 + f [Lnet/minecraft/commands/Commands$CommandSelection; $VALUES f field_25424 + m ()[Lnet/minecraft/commands/Commands$CommandSelection; $values a method_36791 + m (Ljava/lang/String;IZZ)V + p 3 includeIntegrated + p 4 includeDedicated + m ()V +c net/minecraft/commands/Commands$ParseFunction eu$b net/minecraft/class_2170$class_2171 +c net/minecraft/commands/ExecutionCommandSource ev net/minecraft/class_8839 + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54316 a method_54316 + m (Lcom/mojang/brigadier/exceptions/CommandExceptionType;Lcom/mojang/brigadier/Message;ZLnet/minecraft/commands/execution/TraceCallbacks;)V handleError a method_54491 + p 1 exceptionType + p 2 message + p 3 success + p 4 traceCallbacks + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;ZLnet/minecraft/commands/execution/TraceCallbacks;)V handleError a method_54495 + p 1 exception + p 2 success + p 3 traceCallbacks + m ()Lnet/minecraft/commands/ExecutionCommandSource; clearCallbacks a_ method_54311 + m (Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/ExecutionCommandSource; withCallback b method_54307 + p 1 callback + m ()Lcom/mojang/brigadier/ResultConsumer; resultConsumer b_ method_54317 + m (I)Z hasPermission c method_9259 + p 1 permissionLevel + m ()Lnet/minecraft/commands/CommandResultCallback; callback p method_54881 + m ()Lcom/mojang/brigadier/CommandDispatcher; dispatcher x method_54310 + m ()Z isSilent y method_54882 +c net/minecraft/commands/FunctionInstantiationException ew net/minecraft/class_8643 + f Lnet/minecraft/network/chat/Component; messageComponent a field_45154 + m ()Lnet/minecraft/network/chat/Component; messageComponent a method_52600 + m (Lnet/minecraft/network/chat/Component;)V + p 1 messageComponent +c net/minecraft/commands/ParserUtils ex net/minecraft/class_9010 + f Ljava/lang/reflect/Field; JSON_READER_POS a field_47525 + f Ljava/lang/reflect/Field; JSON_READER_LINESTART b field_47526 + m ()Ljava/lang/reflect/Field; method_55375 a method_55375 + m (Lcom/google/gson/stream/JsonReader;)I getPos a method_55376 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/CharPredicate;)Ljava/lang/String; readWhile a method_58128 + p 0 reader + p 1 predicate + m (Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/brigadier/StringReader;Lcom/mojang/serialization/Codec;)Ljava/lang/Object; parseJson a method_55377 + p 0 registries + p 1 reader + p 2 codec + m ()Ljava/lang/reflect/Field; method_55378 b method_55378 + m ()V + m ()V +c net/minecraft/commands/SharedSuggestionProvider ey net/minecraft/class_2172 + m ()Ljava/util/Collection; getSelectedEntities A method_9269 + m ()Ljava/util/Collection; getRelevantCoordinates B method_17771 + m ()Ljava/util/Collection; getAbsoluteCoordinates C method_17772 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; suggestRegistryElements a method_41213 + p 1 resourceKey + p 2 registryKey + p 3 builder + p 4 context + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_9263 a method_9263 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; customSuggestion a method_9261 + p 1 context + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/resources/ResourceLocation;)V method_9275 a method_9275 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V method_9266 a method_9266 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)V method_9256 a method_9256 + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9270 + p 0 resources + p 1 builder + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9258 + p 0 resources + p 1 builder + p 2 prefix + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9255 + p 0 resources + p 1 builder + p 2 locationFunction + p 3 suggestionFunction + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V filterResources a method_9250 + p 0 resources + p 1 remaining + p 2 prefix + p 3 locationFunction + p 4 resourceConsumer + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V filterResources a method_9268 + p 0 resources + p 1 input + p 2 locationFunction + p 3 resourceConsumer + m (Ljava/lang/String;Ljava/lang/String;)Z matchesSubStr a method_27136 + p 0 input + p 1 substring + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; suggestCoordinates a method_9260 + p 0 remaining + p 1 coordinates + p 2 builder + p 3 validator + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9257 + p 0 resourceLocations + p 1 builder + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_40182 + p 0 resources + p 1 builder + p 2 prefix + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9271 + p 0 resources + p 1 builder + p 2 locationFunction + p 3 suggestionFunction + m (Lnet/minecraft/core/Registry;Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V suggestRegistryElements a method_41214 + p 1 registry + p 2 type + p 3 builder + m ([Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest a method_9253 + p 0 strings + p 1 builder + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_9251 b method_9251 + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest b method_9265 + p 0 strings + p 1 builder + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggest b method_35510 + p 0 resources + p 1 builder + p 2 stringFunction + p 3 suggestionFunction + m (Ljava/lang/String;Ljava/lang/String;)Z method_9272 b method_9272 + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; suggest2DCoordinates b method_9252 + p 0 remaining + p 1 coordinates + p 2 builder + p 3 validator + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest b method_9264 + p 0 strings + p 1 builder + m (I)Z hasPermission c method_9259 + p 1 permissionLevel + m ()Ljava/util/Collection; getOnlinePlayerNames q method_9262 + m ()Ljava/util/Collection; getAllTeams r method_9267 + m ()Ljava/util/stream/Stream; getAvailableSounds s method_9254 + m ()Ljava/util/stream/Stream; getRecipeNames t method_9273 + m ()Ljava/util/Set; levels u method_29310 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess v method_30497 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures w method_45549 + m ()Ljava/util/Collection; getCustomTabSugggestions z method_44750 +c net/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType ey$a net/minecraft/class_2172$class_7078 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; TAGS a field_37262 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; ELEMENTS b field_37263 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; ALL c field_37264 + f [Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; $VALUES d field_37265 + m ()Z shouldSuggestTags a method_41215 + m ()Z shouldSuggestElements b method_41216 + m ()[Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; $values c method_41217 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/commands/SharedSuggestionProvider$TextCoordinates ey$b net/minecraft/class_2172$class_2173 + f Lnet/minecraft/commands/SharedSuggestionProvider$TextCoordinates; DEFAULT_LOCAL a field_9834 + f Lnet/minecraft/commands/SharedSuggestionProvider$TextCoordinates; DEFAULT_GLOBAL b field_9838 + f Ljava/lang/String; x c field_9835 + f Ljava/lang/String; y d field_9836 + f Ljava/lang/String; z e field_9837 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 x + p 2 y + p 3 z + m ()V +c net/minecraft/commands/arguments/AngleArgument ez net/minecraft/class_5473 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_26368 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_ANGLE b field_27345 + f Ljava/util/Collection; EXAMPLES c field_26369 + m ()Lnet/minecraft/commands/arguments/AngleArgument; angle a method_30658 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/AngleArgument$SingleAngle; parse a method_30659 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)F getAngle a method_30660 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/AngleArgument$SingleAngle ez$a net/minecraft/class_5473$class_5474 + f F angle a field_26370 + f Z isRelative b field_26371 + m (Lnet/minecraft/commands/CommandSourceStack;)F getAngle a method_30661 + p 1 source + m (FZ)V + p 1 angle + p 2 isRelative +c net/minecraft/commands/arguments/ArgumentSignatures fa net/minecraft/class_7450 + f Lnet/minecraft/commands/arguments/ArgumentSignatures; EMPTY a field_39807 + f Ljava/util/List; entries b comp_912 + f I MAX_ARGUMENT_COUNT c field_39418 + f I MAX_ARGUMENT_NAME_LENGTH d field_39185 + m ()Ljava/util/List; entries a comp_912 + m (Lnet/minecraft/commands/arguments/ArgumentSignatures$Signer;Lnet/minecraft/network/chat/SignableCommand$Argument;)Lnet/minecraft/commands/arguments/ArgumentSignatures$Entry; method_45561 a method_45561 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_43749 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/arguments/ArgumentSignatures$Entry;)V method_44799 a method_44799 + m (Lnet/minecraft/network/chat/SignableCommand;Lnet/minecraft/commands/arguments/ArgumentSignatures$Signer;)Lnet/minecraft/commands/arguments/ArgumentSignatures; signCommand a method_44797 + p 0 command + p 1 signer + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/commands/arguments/ArgumentSignatures$Entry fa$a net/minecraft/class_7450$class_7599 + f Ljava/lang/String; name a comp_913 + f Lnet/minecraft/network/chat/MessageSignature; signature b comp_914 + m ()Ljava/lang/String; name a comp_913 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44800 + p 1 buffer + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_914 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Lnet/minecraft/network/chat/MessageSignature;)V +c net/minecraft/commands/arguments/ArgumentSignatures$Signer fa$b net/minecraft/class_7450$class_7600 +c net/minecraft/commands/arguments/ColorArgument fb net/minecraft/class_2177 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9840 + f Ljava/util/Collection; EXAMPLES b field_9839 + m ()Lnet/minecraft/commands/arguments/ColorArgument; color a method_9276 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/ChatFormatting; parse a method_9279 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/ChatFormatting; getColor a method_9277 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9278 a method_9278 + m ()V + m ()V +c net/minecraft/commands/arguments/ComponentArgument fc net/minecraft/class_2178 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_JSON a field_9842 + f Ljava/util/Collection; EXAMPLES b field_9841 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48917 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/network/chat/Component; parse a method_9283 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getComponent a method_9280 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ComponentArgument; textComponent a method_9281 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9282 a method_9282 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/CompoundTagArgument fd net/minecraft/class_2179 + f Ljava/util/Collection; EXAMPLES a field_9843 + m ()Lnet/minecraft/commands/arguments/CompoundTagArgument; compoundTag a method_9284 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/CompoundTag; parse a method_9286 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; getCompoundTag a method_9285 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/DimensionArgument fe net/minecraft/class_2181 + f Ljava/util/Collection; EXAMPLES a field_9844 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE b field_9845 + m ()Lnet/minecraft/commands/arguments/DimensionArgument; dimension a method_9288 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_9291 a method_9291 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; parse a method_9287 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ServerLevel; getDimension a method_9289 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9290 a method_9290 + m ()V + m ()V +c net/minecraft/commands/arguments/EntityAnchorArgument ff net/minecraft/class_2183 + f Ljava/util/Collection; EXAMPLES a field_9847 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID b field_9846 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument; anchor a method_9295 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; parse a method_9292 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getAnchor a method_9294 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9293 a method_9293 + m ()V + m ()V +c net/minecraft/commands/arguments/EntityAnchorArgument$Anchor ff$a net/minecraft/class_2183$class_2184 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; FEET a field_9853 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; EYES b field_9851 + f Ljava/util/Map; BY_NAME c field_9852 + f Ljava/lang/String; name d field_9849 + f Ljava/util/function/BiFunction; transform e field_9848 + f [Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; $VALUES f field_9850 + m ()[Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; $values a method_36814 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; apply a method_9302 + c Gets the coordinate based on the given entity's position. + p 1 entity + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec3; apply a method_9299 + c Gets the coordinate based on the given command source's position. If the source is not an entity, no offsetting occurs. + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_9298 a method_9298 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getByName a method_9296 + p 0 name + m (Ljava/util/HashMap;)V method_9297 a method_9297 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_9300 b method_9300 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 3 name + p 4 transform + m ()V +c net/minecraft/commands/arguments/EntityArgument fg net/minecraft/class_2186 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_SINGLE_ENTITY a field_9860 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_SINGLE_PLAYER b field_9864 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ONLY_PLAYERS_ALLOWED c field_9861 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_ENTITIES_FOUND d field_9863 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_PLAYERS_FOUND e field_9856 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELECTORS_NOT_ALLOWED f field_9862 + f Ljava/util/Collection; EXAMPLES g field_9859 + f Z single h field_9858 + f Z playersOnly i field_9857 + m ()Lnet/minecraft/commands/arguments/EntityArgument; entity a method_9309 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_61178 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_61179 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_9318 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/entity/Entity; getEntity a method_9313 + p 0 context + p 1 name + m (Lnet/minecraft/commands/SharedSuggestionProvider;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9311 a method_9311 + m ()Lnet/minecraft/commands/arguments/EntityArgument; entities b method_9306 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getEntities b method_9317 + p 0 context + p 1 name + m ()Lnet/minecraft/commands/arguments/EntityArgument; player c method_9305 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getOptionalEntities c method_9307 + p 0 context + p 1 name + m ()Lnet/minecraft/commands/arguments/EntityArgument; players d method_9308 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getOptionalPlayers d method_9310 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ServerPlayer; getPlayer e method_9315 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getPlayers f method_9312 + p 0 context + p 1 name + m (ZZ)V + p 1 single + p 2 playersOnly + m ()V +c net/minecraft/commands/arguments/EntityArgument$Info fg$a net/minecraft/class_2186$class_2187 + f B FLAG_SINGLE a field_37850 + f B FLAG_PLAYERS_ONLY b field_37851 + m (Lnet/minecraft/commands/arguments/EntityArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_9319 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/EntityArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_9320 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/EntityArgument;)Lnet/minecraft/commands/arguments/EntityArgument$Info$Template; unpack a method_41727 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/EntityArgument$Info$Template; deserializeFromNetwork a method_9321 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/EntityArgument$Info$Template fg$a$a net/minecraft/class_2186$class_2187$class_7171 + f Lnet/minecraft/commands/arguments/EntityArgument$Info; field_37852 a field_37852 + f Z single b field_37853 + f Z playersOnly c field_37854 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/EntityArgument; instantiate a method_41729 + p 1 context + m (Lnet/minecraft/commands/arguments/EntityArgument$Info;ZZ)V + p 2 single + p 3 playersOnly +c net/minecraft/commands/arguments/GameModeArgument fh net/minecraft/class_7918 + f Ljava/util/Collection; EXAMPLES a field_41088 + f [Lnet/minecraft/world/level/GameType; VALUES b field_41089 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID c field_41090 + m ()Lnet/minecraft/commands/arguments/GameModeArgument; gameMode a method_47383 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/level/GameType; parse a method_47384 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/GameType; getGameMode a method_47385 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47386 a method_47386 + m ()V + m ()V +c net/minecraft/commands/arguments/GameProfileArgument fi net/minecraft/class_2191 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_UNKNOWN_PLAYER a field_9869 + f Ljava/util/Collection; EXAMPLES b field_9868 + m ()Lnet/minecraft/commands/arguments/GameProfileArgument; gameProfile a method_9329 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_61180 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_61181 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_9331 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getGameProfiles a method_9330 + p 0 context + p 1 name + m (Lnet/minecraft/commands/SharedSuggestionProvider;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9332 a method_9332 + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/Collection; method_9328 a method_9328 + m ()V + m ()V +c net/minecraft/commands/arguments/GameProfileArgument$Result fi$a net/minecraft/class_2191$class_2192 +c net/minecraft/commands/arguments/GameProfileArgument$SelectorResult fi$b net/minecraft/class_2191$class_2193 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector a field_9870 + m (Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 selector +c net/minecraft/commands/arguments/HeightmapTypeArgument fj net/minecraft/class_8199 + f Lcom/mojang/serialization/Codec; LOWER_CASE_CODEC a field_42994 + m ()Lnet/minecraft/commands/arguments/HeightmapTypeArgument; heightmap a method_49542 + m (I)[Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_49543 a method_49543 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightmap a method_49544 + p 0 context + p 1 argument + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Types; keptTypes b method_49546 + m (Ljava/lang/String;)Ljava/lang/String; method_49547 b method_49547 + m ()V + m ()V +c net/minecraft/commands/arguments/MessageArgument fk net/minecraft/class_2196 + f Ljava/util/Collection; EXAMPLES a field_9876 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; TOO_LONG b field_51482 + m ()Lnet/minecraft/commands/arguments/MessageArgument; message a method_9340 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/MessageArgument$Message; parse a method_9338 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/MessageArgument$Message; parse a method_61182 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getMessage a method_9339 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Consumer;)V resolveChatMessage a method_45562 + p 0 context + p 1 key + p 2 callback + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/concurrent/CompletableFuture; filterPlainText a method_45563 + p 0 source + p 1 message + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59836 a method_59836 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)V resolveSignedMessage a method_45566 + p 0 callback + p 1 source + p 2 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lnet/minecraft/server/network/FilteredText;)V method_45568 a method_45568 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)V resolveDisguisedMessage b method_45569 + p 0 callback + p 1 source + p 2 message + m ()V + m ()V +c net/minecraft/commands/arguments/MessageArgument$Message fk$a net/minecraft/class_2196$class_2197 + f Ljava/lang/String; text a comp_2653 + f [Lnet/minecraft/commands/arguments/MessageArgument$Part; parts b comp_2654 + m ()Ljava/lang/String; text a comp_2653 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/MessageArgument$Message; parseText a method_9342 + c Parses a message. The algorithm for this is simply to run through and look for selectors, ignoring any invalid selectors in the text (since players may type e.g. "[@]"). + p 0 reader + p 1 allowSelectors + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/Component; resolveComponent a method_44268 + p 1 source + m (Lnet/minecraft/commands/CommandSourceStack;Z)Lnet/minecraft/network/chat/Component; toComponent a method_9341 + c Converts this message into a text component, replacing any selectors in the text with the actual evaluated selector. + p 1 source + p 2 allowSelectors + m ()[Lnet/minecraft/commands/arguments/MessageArgument$Part; parts b comp_2654 + m (Ljava/lang/String;[Lnet/minecraft/commands/arguments/MessageArgument$Part;)V + p 1 text + p 2 parts +c net/minecraft/commands/arguments/MessageArgument$Part fk$b net/minecraft/class_2196$class_2198 + f I start a comp_2655 + f I end b comp_2656 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector c comp_2657 + m ()I start a comp_2655 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/Component; toComponent a method_9345 + c Runs the selector and returns the component produced by it. This method does not actually appear to ever return null. + p 1 source + m ()I end b comp_2656 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; selector c comp_2657 + m (IILnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 start + p 2 end + p 3 selector +c net/minecraft/commands/arguments/NbtPathArgument fl net/minecraft/class_2203 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_NODE a field_9900 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DATA_TOO_DEEP b field_41706 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOTHING_FOUND c field_9899 + f Ljava/util/Collection; EXAMPLES d field_9898 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_LIST e field_41708 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_INDEX f field_41709 + f C INDEX_MATCH_START g field_32182 + f C INDEX_MATCH_END h field_32183 + f C KEY_MATCH_START i field_32184 + f C KEY_MATCH_END j field_32185 + f C QUOTED_KEY_START k field_32186 + f C SINGLE_QUOTED_KEY_START l field_44920 + m ()Lnet/minecraft/commands/arguments/NbtPathArgument; nbtPath a method_9360 + m (C)Z isAllowedInUnquotedName a method_9355 + c @return {@code true} if the given character is normal for a tag name; otherwise {@code false} if it has special meaning for paths. + p 0 ch + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; parse a method_9362 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$Node; readObjectNode a method_9352 + p 0 reader + p 1 name + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/NbtPathArgument$Node; parseNode a method_9361 + p 0 reader + p 1 first + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; getPath a method_9358 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47969 a method_47969 + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/function/Predicate; createTagPredicate a method_9359 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)Z method_9353 a method_9353 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; readUnquotedName b method_9357 + c Reads a tag name until the next special character. Throws if the result would be a 0-length string. Does not handle quoted tag names. + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47970 b method_47970 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9356 c method_9356 + m ()V + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$AllElementsNode fl$a net/minecraft/class_2203$class_2204 + f Lnet/minecraft/commands/arguments/NbtPathArgument$AllElementsNode; INSTANCE a field_9901 + m ()V + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$CompoundChildNode fl$b net/minecraft/class_2203$class_2205 + f Ljava/lang/String; name a field_9902 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/commands/arguments/NbtPathArgument$IndexedElementNode fl$c net/minecraft/class_2203$class_2206 + f I index a field_9903 + m (I)V + p 1 index +c net/minecraft/commands/arguments/NbtPathArgument$MatchElementNode fl$d net/minecraft/class_2203$class_2207 + f Lnet/minecraft/nbt/CompoundTag; pattern a field_9904 + f Ljava/util/function/Predicate; predicate b field_9905 + m (Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;)V method_9365 a method_9365 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 pattern +c net/minecraft/commands/arguments/NbtPathArgument$MatchObjectNode fl$e net/minecraft/class_2203$class_2208 + f Ljava/lang/String; name a field_9906 + f Lnet/minecraft/nbt/CompoundTag; pattern b field_9907 + f Ljava/util/function/Predicate; predicate c field_9908 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V + p 1 name + p 2 pattern +c net/minecraft/commands/arguments/NbtPathArgument$MatchRootObjectNode fl$f net/minecraft/class_2203$class_3707 + f Ljava/util/function/Predicate; predicate a field_16319 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/commands/arguments/NbtPathArgument$NbtPath fl$g net/minecraft/class_2203$class_2209 + f Lcom/mojang/serialization/Codec; CODEC a field_50034 + f Ljava/lang/String; original b field_9909 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; nodeToOriginalPosition c field_9910 + f [Lnet/minecraft/commands/arguments/NbtPathArgument$Node; nodes d field_9911 + m ()Ljava/lang/String; asString a method_54100 + m (ILnet/minecraft/nbt/CompoundTag;Ljava/util/List;)I insert a method_47972 + p 1 index + p 2 rootTag + p 3 tagsToInsert + m (Lnet/minecraft/commands/arguments/NbtPathArgument$Node;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; createNotFoundException a method_9375 + p 1 node + m (Lnet/minecraft/commands/arguments/NbtPathArgument$Node;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Ljava/lang/Integer; method_47973 a method_47973 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/lang/Integer; method_9370 a method_9370 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; of a method_58472 + p 0 path + m (Ljava/lang/String;Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Ljava/lang/String; method_58473 a method_58473 + m (Ljava/util/List;Ljava/util/function/Function;)I apply a method_9371 + p 0 tags + p 1 function + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_47974 a method_47974 + m (Lnet/minecraft/nbt/Tag;)Ljava/util/List; get a method_9366 + p 1 tag + m (Lnet/minecraft/nbt/Tag;I)Z isTooDeep a method_47975 + p 0 tag + p 1 currentDepth + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;)Ljava/util/List; getOrCreate a method_9367 + p 1 tag + p 2 supplier + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)I set a method_35722 + p 1 tag + p 2 other + m ()I estimatePathDepth b method_47971 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_58474 b method_58474 + m (Lnet/minecraft/nbt/Tag;)I countMatching b method_9374 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)I remove c method_9372 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/util/List; getOrCreateParents d method_9369 + p 1 tag + m (Ljava/lang/String;[Lnet/minecraft/commands/arguments/NbtPathArgument$Node;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 original + p 2 nodes + p 3 nodeToOriginPosition + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$Node fl$h net/minecraft/class_2203$class_2210 + m ()Lnet/minecraft/nbt/Tag; createPreferredParentTag a method_9382 + c Creates an empty element of the type read by this node. + m (Ljava/util/List;)Ljava/util/List; get a method_9381 + p 1 tags + m (Ljava/util/List;Ljava/util/function/BiConsumer;)Ljava/util/List; collect a method_9384 + p 1 tags + p 2 consumer + m (Ljava/util/List;Ljava/util/function/Supplier;)Ljava/util/List; getOrCreate a method_9377 + p 1 tags + p 2 supplier + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;Ljava/util/List;)V method_9379 a method_9379 + m (Lnet/minecraft/nbt/Tag;)I removeTag a method_9383 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Ljava/util/List;)V getTag a method_9378 + p 1 tag + p 2 tags + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;)I setTag a method_9376 + p 1 tag + p 2 supplier + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;Ljava/util/List;)V getOrCreateTag a method_9380 + p 1 tag + p 2 supplier + p 3 tags +c net/minecraft/commands/arguments/NbtTagArgument fm net/minecraft/class_2212 + f Ljava/util/Collection; EXAMPLES a field_9918 + m ()Lnet/minecraft/commands/arguments/NbtTagArgument; nbtTag a method_9389 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/Tag; parse a method_9388 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/nbt/Tag; getNbtTag a method_9390 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ObjectiveArgument fn net/minecraft/class_2214 + f Ljava/util/Collection; EXAMPLES a field_9919 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_OBJECTIVE_NOT_FOUND b field_9922 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_OBJECTIVE_READ_ONLY c field_9921 + m ()Lnet/minecraft/commands/arguments/ObjectiveArgument; objective a method_9391 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_9396 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getObjective a method_9395 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9392 a method_9392 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getWritableObjective b method_9393 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9397 b method_9397 + m ()V + m ()V +c net/minecraft/commands/arguments/ObjectiveCriteriaArgument fo net/minecraft/class_2216 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9927 + f Ljava/util/Collection; EXAMPLES b field_9926 + m ()Lnet/minecraft/commands/arguments/ObjectiveCriteriaArgument; criteria a method_9399 + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)Ljava/lang/String; getName a method_9400 + p 1 type + p 2 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; parse a method_9403 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;ILjava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17949 a method_17949 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; getCriteria a method_9402 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9401 a method_9401 + m ()V + m ()V +c net/minecraft/commands/arguments/OperationArgument fp net/minecraft/class_2218 + f Ljava/util/Collection; EXAMPLES a field_9929 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_OPERATION b field_9931 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DIVIDE_BY_ZERO c field_9930 + m ()Lnet/minecraft/commands/arguments/OperationArgument; operation a method_9404 + m (II)I method_9414 a method_9414 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; parse a method_9412 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; getOperation a method_9409 + p 0 context + p 1 name + m (Lnet/minecraft/world/scores/ScoreAccess;Lnet/minecraft/world/scores/ScoreAccess;)V method_9410 a method_9410 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; getOperation a method_9413 + c Makes an {@link net.minecraft.commands.arguments.OperationArgument.Operation} instance based on the given name. This method handles all operations. + p 0 name + m (II)I method_9411 b method_9411 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$SimpleOperation; getSimpleOperation b method_9407 + c Makes an {@link net.minecraft.commands.arguments.OperationArgument.Operation} instance based on the given name. This method actually returns {@link net.minecraft.commands.arguments.OperationArgument.SimpleOperation}, which is used as a functional interface target with 2 ints. It handles all operations other than swap (><). + p 0 name + m (II)I method_9415 c method_9415 + m (II)I method_9408 d method_9408 + m (II)I method_9406 e method_9406 + m ()V + m ()V +c net/minecraft/commands/arguments/OperationArgument$Operation fp$a net/minecraft/class_2218$class_2219 +c net/minecraft/commands/arguments/OperationArgument$SimpleOperation fp$b net/minecraft/class_2218$class_2220 +c net/minecraft/commands/arguments/ParticleArgument fq net/minecraft/class_2223 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PARTICLE a field_9936 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_OPTIONS b field_51438 + f Ljava/util/Collection; EXAMPLES c field_9935 + f Lnet/minecraft/core/HolderLookup$Provider; registries d field_48929 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/particles/ParticleOptions; parse a method_9416 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45582 a method_45582 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/particles/ParticleOptions; readParticle a method_9418 + p 0 reader + p 1 registries + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/HolderLookup;)Lnet/minecraft/core/particles/ParticleType; readParticleType a method_45583 + p 0 reader + p 1 particleTypeLookup + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/particles/ParticleOptions; readParticle a method_9420 + p 0 reader + p 1 particleType + p 2 registries + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/particles/ParticleOptions; getParticle a method_9421 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ParticleArgument; particle a method_9417 + p 0 buildContext + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59751 a method_59751 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9419 b method_9419 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 buildContext + m ()V +c net/minecraft/commands/arguments/RangeArgument fr net/minecraft/class_2224 + m ()Lnet/minecraft/commands/arguments/RangeArgument$Ints; intRange a method_9422 + c Note: this class is missing several fields and methods due to them not being used in particular FloatRange has no way of being created. + m ()Lnet/minecraft/commands/arguments/RangeArgument$Floats; floatRange b method_30918 +c net/minecraft/commands/arguments/RangeArgument$Floats fr$a net/minecraft/class_2224$class_2225 + f Ljava/util/Collection; EXAMPLES a field_9937 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; parse a method_9423 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; getRange a method_35738 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/RangeArgument$Ints fr$b net/minecraft/class_2224$class_2227 + f Ljava/util/Collection; EXAMPLES a field_9938 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; parse a method_9426 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; getRange a method_9425 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ResourceArgument fs net/minecraft/class_7733 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_RESOURCE a field_40401 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_RESOURCE_TYPE b field_40402 + f Ljava/util/Collection; EXAMPLES c field_40403 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_SUMMONABLE_ENTITY d field_40404 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_40405 + f Lnet/minecraft/core/HolderLookup; registryLookup f field_40406 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/Holder$Reference; parse a method_45600 + p 1 builder + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45599 a method_45599 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getAttribute a method_45601 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getResource a method_45602 + p 0 context + p 1 argument + p 2 registryKey + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceArgument; resource a method_45603 + p 0 context + p 1 registryKey + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45604 a method_45604 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45605 a method_45605 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45606 a method_45606 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getConfiguredFeature b method_45607 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructure c method_45608 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getEntityType d method_45609 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getSummonableEntityType e method_45610 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getMobEffect f method_45611 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getEnchantment g method_45612 + p 0 context + p 1 argument + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)V + p 1 context + p 2 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceArgument$Info fs$a net/minecraft/class_7733$class_7734 + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_45613 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_45614 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceArgument;)Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template; unpack a method_45615 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template; deserializeFromNetwork a method_45616 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceArgument$Info$Template fs$a$a net/minecraft/class_7733$class_7734$class_7735 + f Lnet/minecraft/commands/arguments/ResourceArgument$Info; field_40407 a field_40407 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_40408 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceArgument; instantiate a method_45617 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceKeyArgument ft net/minecraft/class_7079 + f Ljava/util/Collection; EXAMPLES a field_37269 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_FEATURE b field_37271 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_STRUCTURE c field_39191 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_TEMPLATE_POOL d field_39192 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_37272 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceKeyArgument; key a method_41224 + p 0 registryKey + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceKey; parse a method_41218 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Registry; getRegistry a method_41221 + p 0 context + p 1 registryKey + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getConfiguredFeature a method_41225 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/resources/ResourceKey; getRegistryKey a method_41220 + p 0 context + p 1 argument + p 2 registryKey + p 3 exception + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_43775 a method_43775 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43776 a method_43776 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructure b method_43779 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/core/Holder$Reference; resolveKey b method_43777 + p 0 context + p 1 argument + p 2 registryKey + p 3 exception + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41222 b method_41222 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43778 b method_43778 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructureTemplatePool c method_43780 + p 0 context + p 1 argument + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41226 c method_41226 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceKeyArgument$Info ft$a net/minecraft/class_7079$class_7080 + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41229 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41230 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument;)Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template; unpack a method_41903 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template; deserializeFromNetwork a method_41231 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceKeyArgument$Info$Template ft$a$a net/minecraft/class_7079$class_7080$class_7197 + f Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info; field_37916 a field_37916 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37917 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceKeyArgument; instantiate a method_41904 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceLocationArgument fu net/minecraft/class_2232 + f Ljava/util/Collection; EXAMPLES a field_9946 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ADVANCEMENT b field_9945 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_RECIPE c field_9947 + m ()Lnet/minecraft/commands/arguments/ResourceLocationArgument; id a method_9441 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17788 a method_17788 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; parse a method_9446 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; getAdvancement a method_9439 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9444 a method_9444 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe b method_9442 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9440 b method_9440 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getId c method_9443 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ResourceOrIdArgument fv net/minecraft/class_9433 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_FAILED_TO_PARSE a field_50037 + f Ljava/util/Collection; EXAMPLES b field_50038 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID c field_50039 + f Lnet/minecraft/core/HolderLookup$Provider; registryLookup d field_50040 + f Z hasRegistry e field_50041 + f Lcom/mojang/serialization/Codec; codec f field_50042 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/Holder; parse a method_58479 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58480 a method_58480 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootTable a method_58481 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootTableArgument; lootTable a method_58482 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58483 a method_58483 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/Tag; parseInlineOrId b method_58484 + p 0 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootModifier b method_58485 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootModifierArgument; lootModifier b method_58486 + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Z hasConsumedWholeArg c method_58487 + p 0 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootPredicate c method_58488 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootPredicateArgument; lootPredicate c method_58489 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getResource d method_58490 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)V + p 1 registryLookup + p 2 registryKey + p 3 codec + m ()V +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootModifierArgument fv$a net/minecraft/class_9433$class_9434 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootPredicateArgument fv$b net/minecraft/class_9433$class_9435 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootTableArgument fv$c net/minecraft/class_9433$class_9436 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrTagArgument fw net/minecraft/class_7737 + f Ljava/util/Collection; EXAMPLES a field_40417 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_TAG b field_40418 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_TAG_TYPE c field_40419 + f Lnet/minecraft/core/HolderLookup; registryLookup d field_40420 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_40421 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45632 a method_45632 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderSet$Named;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45633 a method_45633 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result; parse a method_45635 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45634 a method_45634 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result; getResourceOrTag a method_45636 + p 0 context + p 1 argument + p 2 registryKey + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument; resourceOrTag a method_45637 + p 0 context + p 1 registryKey + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45638 a method_45638 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45639 a method_45639 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45640 a method_45640 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45641 b method_45641 + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)V + p 1 context + p 2 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Info fw$a net/minecraft/class_7737$class_7738 + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_45642 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_45643 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template; unpack a method_45644 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template; deserializeFromNetwork a method_45645 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template fw$a$a net/minecraft/class_7737$class_7738$class_7739 + f Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info; field_40422 a field_40422 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_40423 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument; instantiate a method_45646 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceOrTagArgument$ResourceResult fw$b net/minecraft/class_7737$class_7740 + f Lnet/minecraft/core/Holder$Reference; value a comp_1023 + m (Lnet/minecraft/core/Holder;)Z test a method_45649 + p 1 holder + m ()Lnet/minecraft/core/Holder$Reference; value c comp_1023 + m (Lnet/minecraft/core/Holder$Reference;)V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Result fw$c net/minecraft/class_7737$class_7741 + m ()Lcom/mojang/datafixers/util/Either; unwrap a method_45647 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast a method_45648 + p 1 registryKey + m ()Ljava/lang/String; asPrintable b method_45650 +c net/minecraft/commands/arguments/ResourceOrTagArgument$TagResult fw$d net/minecraft/class_7737$class_7742 + f Lnet/minecraft/core/HolderSet$Named; tag a comp_1024 + m (Lnet/minecraft/core/Holder;)Z test a method_45651 + p 1 holder + m ()Lnet/minecraft/core/HolderSet$Named; tag c comp_1024 + m (Lnet/minecraft/core/HolderSet$Named;)V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument fx net/minecraft/class_7066 + f Ljava/util/Collection; EXAMPLES a field_37223 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37226 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument; resourceOrTagKey a method_41170 + p 0 registryKey + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result; parse a method_41164 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result; getResourceOrTagKey a method_41166 + p 0 context + p 1 argument + p 2 registryKey + p 3 dynamicCommandExceptionType + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41167 a method_41167 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info fx$a net/minecraft/class_7066$class_7069 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41177 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41178 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template; unpack a method_41912 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template; deserializeFromNetwork a method_41179 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template fx$a$a net/minecraft/class_7066$class_7069$class_7199 + f Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info; field_37928 a field_37928 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37929 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument; instantiate a method_41913 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$ResourceResult fx$b net/minecraft/class_7066$class_7067 + f Lnet/minecraft/resources/ResourceKey; key a comp_522 + m (Lnet/minecraft/core/Holder;)Z test a method_41174 + p 1 holder + m ()Lnet/minecraft/resources/ResourceKey; key c comp_522 + m (Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result fx$c net/minecraft/class_7066$class_7068 + m ()Lcom/mojang/datafixers/util/Either; unwrap a method_41173 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast a method_41175 + p 1 registryKey + m ()Ljava/lang/String; asPrintable b method_41176 +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$TagResult fx$d net/minecraft/class_7066$class_7070 + f Lnet/minecraft/tags/TagKey; key a comp_523 + m (Lnet/minecraft/core/Holder;)Z test a method_41180 + p 1 holder + m ()Lnet/minecraft/tags/TagKey; key c comp_523 + m (Lnet/minecraft/tags/TagKey;)V +c net/minecraft/commands/arguments/ScoreHolderArgument fy net/minecraft/class_2233 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_SCORE_HOLDERS a field_9951 + f Ljava/util/Collection; EXAMPLES b field_9948 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_RESULTS c field_9950 + f Z multiple d field_9949 + m ()Lnet/minecraft/commands/arguments/ScoreHolderArgument; scoreHolder a method_9447 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_61183 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_61184 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_9453 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9455 a method_9455 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/ScoreHolder; getName a method_9452 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/Collection; getNames a method_9450 + c Gets one or more score holders. + p 0 context + p 1 name + p 2 objectives + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9457 a method_9457 + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55587 a method_55587 + m (Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9456 a method_9456 + m (Ljava/util/UUID;Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55588 a method_55588 + m ()Lnet/minecraft/commands/arguments/ScoreHolderArgument; scoreHolders b method_9451 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9448 b method_9448 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getNames b method_9458 + c Gets one or more score holders, with no objectives list. + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getNamesWithDefaultWildcard c method_9449 + c Gets one or more score holders, using the server's complete list of objectives. + p 0 context + p 1 name + m (Z)V + p 1 multiple + m ()V +c net/minecraft/commands/arguments/ScoreHolderArgument$Info fy$a net/minecraft/class_2233$class_2236 + f B FLAG_MULTIPLE a field_37930 + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_9459 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_9461 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template; unpack a method_41914 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template; deserializeFromNetwork a method_9460 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ScoreHolderArgument$Info$Template fy$a$a net/minecraft/class_2233$class_2236$class_7200 + f Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info; field_37931 a field_37931 + f Z multiple b field_37932 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ScoreHolderArgument; instantiate a method_41915 + p 1 context + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info;Z)V + p 2 multiple +c net/minecraft/commands/arguments/ScoreHolderArgument$Result fy$b net/minecraft/class_2233$class_2234 +c net/minecraft/commands/arguments/ScoreHolderArgument$SelectorResult fy$c net/minecraft/class_2233$class_2235 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector a field_9952 + m (Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 selector +c net/minecraft/commands/arguments/ScoreboardSlotArgument fz net/minecraft/class_2239 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9954 + f Ljava/util/Collection; EXAMPLES b field_9953 + m ()Lnet/minecraft/commands/arguments/ScoreboardSlotArgument; displaySlot a method_9468 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/scores/DisplaySlot; parse a method_9466 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/DisplaySlot; getDisplaySlot a method_9465 + p 0 context + p 1 slot + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9467 a method_9467 + m ()V + m ()V +c net/minecraft/commands/arguments/SignedArgument ga net/minecraft/class_7451 +c net/minecraft/commands/arguments/SlotArgument gb net/minecraft/class_2240 + f Ljava/util/Collection; EXAMPLES a field_9956 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SLOT b field_9955 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ONLY_SINGLE_SLOT_ALLOWED c field_49766 + m ()Lnet/minecraft/commands/arguments/SlotArgument; slot a method_9473 + m (C)Z method_58129 a method_58129 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; parse a method_9470 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)I getSlot a method_9469 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9472 a method_9472 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9471 b method_9471 + m ()V + m ()V +c net/minecraft/commands/arguments/SlotsArgument gc net/minecraft/class_9351 + f Ljava/util/Collection; EXAMPLES a field_49767 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SLOT b field_49768 + m ()Lnet/minecraft/commands/arguments/SlotsArgument; slots a method_58130 + m (C)Z method_58131 a method_58131 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/inventory/SlotRange; parse a method_58132 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/inventory/SlotRange; getSlots a method_58133 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58134 a method_58134 + m ()V + m ()V +c net/minecraft/commands/arguments/StringRepresentableArgument gd net/minecraft/class_7485 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_39361 + f Lcom/mojang/serialization/Codec; codec b field_39362 + f Ljava/util/function/Supplier; values c field_39363 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Enum; parse a method_44091 + p 1 stringReader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_44093 a method_44093 + m (Ljava/lang/Object;)Ljava/lang/String; method_44092 a method_44092 + m (Ljava/lang/String;)Ljava/lang/String; convertId a method_49545 + p 1 id + m (Ljava/lang/Object;)Ljava/lang/String; method_44094 b method_44094 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_44095 c method_44095 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)V + p 1 codec + p 2 values + m ()V +c net/minecraft/commands/arguments/StyleArgument ge net/minecraft/class_9019 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_JSON a field_47553 + f Ljava/util/Collection; EXAMPLES b field_47554 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48932 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/network/chat/Style; parse a method_55447 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Style; getStyle a method_55448 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/StyleArgument; style a method_55446 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_55449 a method_55449 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/TeamArgument gf net/minecraft/class_2243 + f Ljava/util/Collection; EXAMPLES a field_9964 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TEAM_NOT_FOUND b field_9963 + m ()Lnet/minecraft/commands/arguments/TeamArgument; team a method_9482 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_9483 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getTeam a method_9480 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9481 a method_9481 + m ()V + m ()V +c net/minecraft/commands/arguments/TemplateMirrorArgument gg net/minecraft/class_7486 + m ()Lnet/minecraft/commands/arguments/StringRepresentableArgument; templateMirror a method_44100 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/block/Mirror; getMirror a method_44101 + p 0 context + p 1 name + m ()V +c net/minecraft/commands/arguments/TemplateRotationArgument gh net/minecraft/class_7487 + m ()Lnet/minecraft/commands/arguments/TemplateRotationArgument; templateRotation a method_44102 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/block/Rotation; getRotation a method_44103 + p 0 context + p 1 name + m ()V +c net/minecraft/commands/arguments/TimeArgument gi net/minecraft/class_2245 + f Ljava/util/Collection; EXAMPLES a field_9969 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_UNIT b field_9970 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TICK_COUNT_TOO_LOW c field_41857 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; UNITS d field_9972 + f I minimum e field_41858 + m ()Lnet/minecraft/commands/arguments/TimeArgument; time a method_9489 + m (I)Lnet/minecraft/commands/arguments/TimeArgument; time a method_48287 + p 0 minimum + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; parse a method_9490 + p 1 reader + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9491 a method_9491 + m (I)V + p 1 minimum + m ()V +c net/minecraft/commands/arguments/TimeArgument$Info gi$a net/minecraft/class_2245$class_8033 + m (Lnet/minecraft/commands/arguments/TimeArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_48288 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/TimeArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_48289 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/TimeArgument;)Lnet/minecraft/commands/arguments/TimeArgument$Info$Template; unpack a method_48290 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/TimeArgument$Info$Template; deserializeFromNetwork a method_48291 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/TimeArgument$Info$Template gi$a$a net/minecraft/class_2245$class_8033$class_8034 + f Lnet/minecraft/commands/arguments/TimeArgument$Info; field_41859 a field_41859 + f I min b field_41860 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/TimeArgument; instantiate a method_48292 + p 1 context + m (Lnet/minecraft/commands/arguments/TimeArgument$Info;I)V + p 2 min +c net/minecraft/commands/arguments/UuidArgument gj net/minecraft/class_5242 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_UUID a field_24318 + f Ljava/util/Collection; EXAMPLES b field_24319 + f Ljava/util/regex/Pattern; ALLOWED_CHARACTERS c field_24320 + m ()Lnet/minecraft/commands/arguments/UuidArgument; uuid a method_27643 + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/UUID; parse a method_27644 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/UUID; getUuid a method_27645 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/blocks/BlockInput gk net/minecraft/class_2247 + f Lnet/minecraft/world/level/block/state/BlockState; state a field_10632 + f Ljava/util/Set; properties b field_10631 + f Lnet/minecraft/nbt/CompoundTag; tag c field_10633 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState a method_9494 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z test a method_35758 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;I)Z place a method_9495 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9493 + p 1 block + m ()Ljava/util/Set; getDefinedProperties b method_35759 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Set;Lnet/minecraft/nbt/CompoundTag;)V + p 1 state + p 2 properties + p 3 tag +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument gl net/minecraft/class_2252 + f Ljava/util/Collection; EXAMPLES a field_10672 + f Lnet/minecraft/core/HolderLookup; blocks b field_37963 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; parse a method_9642 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/function/Predicate; getBlockPredicate a method_9644 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument; blockPredicate a method_9645 + p 0 context + m (Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; method_41951 a method_41951 + m (Lnet/minecraft/commands/arguments/blocks/BlockStateParser$TagResult;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; method_41952 a method_41952 + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; parse a method_41953 + p 0 lookup + p 1 reader + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$BlockPredicate gl$a net/minecraft/class_2252$class_2253 + f Lnet/minecraft/world/level/block/state/BlockState; state a field_10674 + f Ljava/util/Set; properties b field_10673 + f Lnet/minecraft/nbt/CompoundTag; nbt c field_10675 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9648 + p 1 block + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Set;Lnet/minecraft/nbt/CompoundTag;)V + p 1 state + p 2 properties + p 3 nbt +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result gl$b net/minecraft/class_2252$class_2254 + m ()Z requiresNbt a method_38559 +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$TagPredicate gl$c net/minecraft/class_2252$class_2255 + f Lnet/minecraft/core/HolderSet; tag a field_10676 + f Lnet/minecraft/nbt/CompoundTag; nbt b field_10677 + f Ljava/util/Map; vagueProperties c field_10678 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9649 + p 1 block + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + p 2 vagueProperties + p 3 nbt +c net/minecraft/commands/arguments/blocks/BlockStateArgument gm net/minecraft/class_2257 + f Ljava/util/Collection; EXAMPLES a field_10679 + f Lnet/minecraft/core/HolderLookup; blocks b field_37964 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockInput; parse a method_9654 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/blocks/BlockInput; getBlock a method_9655 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/blocks/BlockStateArgument; block a method_9653 + p 0 buildContext + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 buildContext + m ()V +c net/minecraft/commands/arguments/blocks/BlockStateParser gn net/minecraft/class_2259 + f Ljava/util/function/Function; suggestions A field_10696 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_TAGS_ALLOWED a field_10691 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_BLOCK b field_10690 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_PROPERTY c field_10695 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_DUPLICATE_PROPERTY d field_10692 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_VALUE e field_10683 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_EXPECTED_VALUE f field_10688 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_END_OF_PROPERTIES g field_10684 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG h field_37965 + f C SYNTAX_START_PROPERTIES i field_32800 + f C SYNTAX_START_NBT j field_32801 + f C SYNTAX_END_PROPERTIES k field_32802 + f C SYNTAX_EQUALS l field_32803 + f C SYNTAX_PROPERTY_SEPARATOR m field_32804 + f C SYNTAX_TAG n field_32805 + f Ljava/util/function/Function; SUGGEST_NOTHING o field_10682 + f Lnet/minecraft/core/HolderLookup; blocks p field_37966 + f Lcom/mojang/brigadier/StringReader; reader q field_10698 + f Z forTesting r field_10687 + f Z allowNbt s field_37967 + f Ljava/util/Map; properties t field_10699 + f Ljava/util/Map; vagueProperties u field_10685 + f Lnet/minecraft/resources/ResourceLocation; id v field_10697 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition w field_10689 + f Lnet/minecraft/world/level/block/state/BlockState; state x field_10686 + f Lnet/minecraft/nbt/CompoundTag; nbt y field_10693 + f Lnet/minecraft/core/HolderSet; tag z field_10681 + m ()V parse a method_9678 + m (I)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17956 a method_17956 + m (ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41954 a method_41954 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_41959 a method_41959 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestPropertyNameOrEnd a method_9671 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/world/level/block/state/properties/Property;)Lcom/mojang/brigadier/suggestion/SuggestionsBuilder; addSuggestions a method_9662 + p 0 builder + p 1 property + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyValue a method_9690 + p 1 builder + p 2 propertyName + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/lang/String; serialize a method_9685 + p 0 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9684 a method_9684 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;I)V setValue a method_9668 + p 1 property + p 2 value + p 3 valuePosition + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41958 a method_41958 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9686 a method_9686 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9660 a method_9660 + m (Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9683 a method_9683 + m (Ljava/lang/StringBuilder;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V appendProperty a method_9663 + p 0 builder + p 1 property + p 2 value + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult; parseForBlock a method_41955 + p 0 lookup + p 1 reader + p 2 allowNbt + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;ZZ)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9666 + p 0 lookup + p 1 builder + p 2 forTesting + p 3 allowNbt + m (Lnet/minecraft/core/HolderLookup;Ljava/lang/String;Z)Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult; parseForBlock a method_41957 + p 0 lookup + p 1 input + p 2 allowNbt + m ()Z hasBlockEntity b method_9676 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyNameOrEnd b method_9674 + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9682 b method_9682 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9691 b method_9691 + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;Z)Lcom/mojang/datafixers/util/Either; parseForTesting b method_41960 + p 0 lookup + p 1 reader + p 2 allowNbt + m (Lnet/minecraft/core/HolderLookup;Ljava/lang/String;Z)Lcom/mojang/datafixers/util/Either; parseForTesting b method_41962 + p 0 lookup + p 1 input + p 2 allowNbt + m ()V readBlock c method_9675 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestPropertyName c method_9665 + p 1 builder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9661 c method_9661 + m ()V readTag d method_9677 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyName d method_9667 + p 1 builder + m ()V readProperties e method_9659 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenNbt e method_9687 + p 1 builder + m ()V readVagueProperties f method_9680 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestEquals f method_9693 + p 1 builder + m ()V readNbt g method_9672 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestNextPropertyOrEnd g method_9689 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenVaguePropertiesOrNbt h method_9679 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenPropertiesOrNbt i method_9681 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTag j method_9670 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestItem k method_41963 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestBlockIdOrTag l method_9673 + p 1 builder + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;ZZ)V + p 1 blocks + p 2 reader + p 3 forTesting + p 4 allowNbt + m ()V +c net/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult gn$a net/minecraft/class_2259$class_7211 + f Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_622 + f Ljava/util/Map; properties b comp_623 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_624 + m ()Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_622 + m ()Ljava/util/Map; properties b comp_623 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_624 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/commands/arguments/blocks/BlockStateParser$TagResult gn$b net/minecraft/class_2259$class_7212 + f Lnet/minecraft/core/HolderSet; tag a comp_625 + f Ljava/util/Map; vagueProperties b comp_626 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_627 + m ()Lnet/minecraft/core/HolderSet; tag a comp_625 + m ()Ljava/util/Map; vagueProperties b comp_626 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_627 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/commands/arguments/blocks/package-info go net/minecraft/class_6251 +c net/minecraft/commands/arguments/coordinates/BlockPosArgument gp net/minecraft/class_2262 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_LOADED a field_10703 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OUT_OF_WORLD b field_10704 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OUT_OF_BOUNDS c field_29499 + f Ljava/util/Collection; EXAMPLES d field_10702 + m ()Lnet/minecraft/commands/arguments/coordinates/BlockPosArgument; blockPos a method_9698 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9699 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getLoadedBlockPos a method_48298 + p 0 context + p 1 level + p 2 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getLoadedBlockPos a method_9696 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getBlockPos b method_48299 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getSpawnablePos c method_9697 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/ColumnPosArgument gq net/minecraft/class_2264 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10706 + f Ljava/util/Collection; EXAMPLES b field_10705 + m ()Lnet/minecraft/commands/arguments/coordinates/ColumnPosArgument; columnPos a method_9701 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9703 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ColumnPos; getColumnPos a method_9702 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/Coordinates gr net/minecraft/class_2267 + m ()Z isXRelative a method_9705 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec3; getPosition a method_9708 + p 1 source + m ()Z isYRelative b method_9706 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec2; getRotation b method_9709 + p 1 source + m ()Z isZRelative c method_9707 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/core/BlockPos; getBlockPos c method_9704 + p 1 source +c net/minecraft/commands/arguments/coordinates/LocalCoordinates gs net/minecraft/class_2268 + f C PREFIX_LOCAL_COORDINATE a field_32941 + f D left b field_10714 + f D up c field_10713 + f D forwards d field_10712 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/LocalCoordinates; parse a method_9711 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;I)D readDouble a method_9710 + p 0 reader + p 1 start + m (DDD)V + p 1 left + p 3 up + p 5 forwards +c net/minecraft/commands/arguments/coordinates/RotationArgument gt net/minecraft/class_2270 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10736 + f Ljava/util/Collection; EXAMPLES b field_10735 + m ()Lnet/minecraft/commands/arguments/coordinates/RotationArgument; rotation a method_9717 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9718 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; getRotation a method_9716 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/SwizzleArgument gu net/minecraft/class_2273 + f Ljava/util/Collection; EXAMPLES a field_10740 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID b field_10741 + m ()Lnet/minecraft/commands/arguments/coordinates/SwizzleArgument; swizzle a method_9721 + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/EnumSet; parse a method_9722 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/EnumSet; getSwizzle a method_9720 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/Vec2Argument gv net/minecraft/class_2274 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10743 + f Ljava/util/Collection; EXAMPLES b field_10742 + f Z centerCorrect c field_10744 + m ()Lnet/minecraft/commands/arguments/coordinates/Vec2Argument; vec2 a method_9723 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9725 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/phys/Vec2; getVec2 a method_9724 + p 0 context + p 1 name + m (Z)Lnet/minecraft/commands/arguments/coordinates/Vec2Argument; vec2 a method_35802 + p 0 centerCorrect + m (Z)V + p 1 centerCorrect + m ()V +c net/minecraft/commands/arguments/coordinates/Vec3Argument gw net/minecraft/class_2277 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10755 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MIXED_TYPE b field_10757 + f Ljava/util/Collection; EXAMPLES c field_10754 + f Z centerCorrect d field_10756 + m ()Lnet/minecraft/commands/arguments/coordinates/Vec3Argument; vec3 a method_9737 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9738 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/phys/Vec3; getVec3 a method_9736 + p 0 context + p 1 name + m (Z)Lnet/minecraft/commands/arguments/coordinates/Vec3Argument; vec3 a method_9735 + p 0 centerCorrect + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; getCoordinates b method_9734 + p 0 context + p 1 name + m (Z)V + p 1 centerCorrect + m ()V +c net/minecraft/commands/arguments/coordinates/WorldCoordinate gx net/minecraft/class_2278 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_DOUBLE a field_10759 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_INT b field_10761 + f C PREFIX_RELATIVE c field_32972 + f Z relative d field_10760 + f D value e field_10758 + m ()Z isRelative a method_9741 + m (D)D get a method_9740 + p 1 coord + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; parseInt a method_9739 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; parseDouble a method_9743 + p 0 reader + p 1 centerCorrect + m (Lcom/mojang/brigadier/StringReader;)Z isRelative b method_9742 + p 0 reader + m (ZD)V + p 1 relative + p 2 value + m ()V +c net/minecraft/commands/arguments/coordinates/WorldCoordinates gy net/minecraft/class_2280 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; x a field_10765 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; y b field_10764 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; z c field_10766 + m (DDD)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; absolute a method_35810 + p 0 x + p 2 y + p 4 z + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; parseInt a method_9749 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; parseDouble a method_9750 + p 0 reader + p 1 centerCorrect + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; absolute a method_35811 + p 0 vector + m ()Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; current d method_9751 + c A location with a delta of 0 for all values (equivalent to ~ ~ ~ or ~0 ~0 ~0) + m (Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;)V + p 1 x + p 2 y + p 3 z +c net/minecraft/commands/arguments/coordinates/package-info gz net/minecraft/class_6271 +c net/minecraft/commands/arguments/item/ComponentPredicateParser ha net/minecraft/class_9437 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/lang/Object; method_58492 a method_58492 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58493 a method_58493 + m (Lnet/minecraft/util/parsing/packrat/Scope;)Lnet/minecraft/util/Unit; method_58494 a method_58494 + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)Lnet/minecraft/util/parsing/packrat/commands/Grammar; createGrammar a method_58495 + p 0 context + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58496 a method_58496 + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/lang/Object; method_58497 a method_58497 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58498 a method_58498 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58499 b method_58499 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58500 b method_58500 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58501 c method_58501 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58502 d method_58502 + m ()V +c net/minecraft/commands/arguments/item/ComponentPredicateParser$ComponentLookupRule ha$a net/minecraft/class_9437$class_9438 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$Context ha$b net/minecraft/class_9437$class_9439 + m ()Ljava/util/stream/Stream; listElementTypes a method_58503 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; forElementType a method_58504 + p 1 reader + p 2 elementType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;)Ljava/lang/Object; createComponentTest a method_58505 + p 1 reader + p 2 context + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; createComponentTest a method_58506 + p 1 reader + p 2 context + p 3 value + m (Ljava/lang/Object;)Ljava/lang/Object; negate a method_58507 + p 1 value + m (Ljava/util/List;)Ljava/lang/Object; anyOf a method_58508 + p 1 values + m ()Ljava/util/stream/Stream; listTagTypes b method_58509 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; forTagType b method_58510 + p 1 reader + p 2 tagType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; createPredicateTest b method_58511 + p 1 reader + p 2 predicate + p 3 value + m ()Ljava/util/stream/Stream; listComponentTypes c method_58512 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; lookupComponentType c method_58513 + p 1 reader + p 2 componentType + m ()Ljava/util/stream/Stream; listPredicateTypes d method_58514 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; lookupPredicateType d method_58515 + p 1 reader + p 2 predicateType +c net/minecraft/commands/arguments/item/ComponentPredicateParser$ElementLookupRule ha$c net/minecraft/class_9437$class_9440 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$PredicateLookupRule ha$d net/minecraft/class_9437$class_9441 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$TagLookupRule ha$e net/minecraft/class_9437$class_9442 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/FunctionArgument hb net/minecraft/class_2284 + f Ljava/util/Collection; EXAMPLES a field_10783 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG b field_10782 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_FUNCTION c field_10784 + m ()Lnet/minecraft/commands/arguments/item/FunctionArgument; functions a method_9760 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17959 a method_17959 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/FunctionArgument$Result; parse a method_9764 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/functions/CommandFunction; getFunction a method_9761 + p 0 context + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getFunctions a method_9769 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9762 a method_9762 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getFunctionTag b method_9767 + p 0 context + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getFunctionOrTag b method_9768 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9765 b method_9765 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getFunctionCollection c method_55590 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/item/FunctionArgument$1 hb$1 net/minecraft/class_2284$1 + f Lnet/minecraft/resources/ResourceLocation; val$id a field_10785 + m (Lnet/minecraft/commands/arguments/item/FunctionArgument;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/commands/arguments/item/FunctionArgument$2 hb$2 net/minecraft/class_2284$2 + f Lnet/minecraft/resources/ResourceLocation; val$id a field_10787 + m (Lnet/minecraft/commands/arguments/item/FunctionArgument;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/commands/arguments/item/FunctionArgument$Result hb$a net/minecraft/class_2284$class_2285 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; create a method_9771 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; unwrap b method_9770 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; unwrapToCollection c method_55591 + p 1 context +c net/minecraft/commands/arguments/item/ItemArgument hc net/minecraft/class_2287 + f Ljava/util/Collection; EXAMPLES a field_10790 + f Lnet/minecraft/commands/arguments/item/ItemParser; parser b field_48954 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemInput; parse a method_9778 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/item/ItemInput; getItem a method_9777 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/item/ItemArgument; item a method_9776 + p 0 context + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/item/ItemInput hd net/minecraft/class_2290 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_STACK_TOO_BIG a field_10797 + f Lnet/minecraft/core/Holder; item b field_10796 + f Lnet/minecraft/core/component/DataComponentPatch; components c field_49570 + m ()Lnet/minecraft/world/item/Item; getItem a method_9785 + m (IZ)Lnet/minecraft/world/item/ItemStack; createItemStack a method_9781 + p 1 count + p 2 allowOversizedStacks + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_60378 a method_60378 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_57800 a method_57800 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9784 a method_9784 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; serialize a method_9782 + p 1 levelRegistry + m ()Ljava/lang/String; getItemName b method_41967 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; serializeComponents b method_57801 + p 1 levelRegistries + m ()Ljava/lang/Object; method_41968 c method_41968 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V + p 1 item + p 2 components + m ()V +c net/minecraft/commands/arguments/item/ItemParser he net/minecraft/class_2291 + f C SYNTAX_START_COMPONENTS a field_50044 + f C SYNTAX_END_COMPONENTS b field_50045 + f C SYNTAX_COMPONENT_SEPARATOR c field_50046 + f C SYNTAX_COMPONENT_ASSIGNMENT d field_50047 + f C SYNTAX_REMOVED_COMPONENT e field_51831 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ITEM f field_50048 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_COMPONENT g field_50049 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_COMPONENT h field_50050 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_COMPONENT i field_50051 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_REPEATED_COMPONENT j field_50052 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_MALFORMED_ITEM k field_51458 + f Ljava/util/function/Function; SUGGEST_NOTHING l field_50053 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; items m field_50054 + f Lcom/mojang/serialization/DynamicOps; registryOps n field_50055 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemParser$ItemResult; parse a method_9789 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/commands/arguments/item/ItemParser$Visitor;)V parse a method_58517 + p 1 reader + p 2 visitor + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_59768 a method_59768 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V validateComponents a method_59769 + p 0 reader + p 1 item + p 2 components + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9793 + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59770 a method_59770 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58519 a method_58519 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58518 b method_58518 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58520 c method_58520 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58521 d method_58521 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/item/ItemParser$1 he$1 net/minecraft/class_2291$1 + f Lorg/apache/commons/lang3/mutable/MutableObject; val$itemResult a field_48956 + f Lnet/minecraft/core/component/DataComponentPatch$Builder; val$componentsBuilder b field_49571 + m (Lnet/minecraft/commands/arguments/item/ItemParser;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/component/DataComponentPatch$Builder;)V +c net/minecraft/commands/arguments/item/ItemParser$ItemResult he$a net/minecraft/class_2291$class_7215 + f Lnet/minecraft/core/Holder; item a comp_628 + f Lnet/minecraft/core/component/DataComponentPatch; components b comp_2439 + m ()Lnet/minecraft/core/Holder; item a comp_628 + m ()Lnet/minecraft/core/component/DataComponentPatch; components b comp_2439 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V +c net/minecraft/commands/arguments/item/ItemParser$State he$b net/minecraft/class_2291$class_9217 + f Lnet/minecraft/commands/arguments/item/ItemParser; field_48970 a field_48970 + f Lcom/mojang/brigadier/StringReader; reader b field_48971 + f Lnet/minecraft/commands/arguments/item/ItemParser$Visitor; visitor c field_48972 + m ()V parse a method_56869 + m (ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_56873 a method_56873 + m (ILnet/minecraft/core/component/DataComponentType;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_57806 a method_57806 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/component/DataComponentType; readComponentType a method_57807 + p 0 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestStartComponents a method_57808 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestComponent a method_60380 + p 1 builder + p 2 suffix + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Ljava/util/Map$Entry;)V method_60381 a method_60381 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_60382 a method_60382 + m (Lnet/minecraft/core/component/DataComponentType;)V readComponent a method_57811 + p 1 componentType + m ()V readItem b method_56872 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestNextOrEndComponents b method_57812 + p 1 builder + m ()V readComponents c method_57814 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestAssignment c method_57813 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestItem d method_56874 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestComponentAssignmentOrRemoval e method_60383 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestComponent f method_60384 + p 1 builder + m (Lnet/minecraft/commands/arguments/item/ItemParser;Lcom/mojang/brigadier/StringReader;Lnet/minecraft/commands/arguments/item/ItemParser$Visitor;)V + p 2 reader + p 3 visitor +c net/minecraft/commands/arguments/item/ItemParser$SuggestionsVisitor he$c net/minecraft/class_2291$class_9218 + f Ljava/util/function/Function; suggestions a field_48973 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/StringReader;)Ljava/util/concurrent/CompletableFuture; resolveSuggestions a method_56879 + p 1 builder + p 2 reader + m ()V +c net/minecraft/commands/arguments/item/ItemParser$Visitor he$d net/minecraft/class_2291$class_9219 + m (Ljava/util/function/Function;)V visitSuggestions a method_56880 + p 1 suggestions + m (Lnet/minecraft/core/Holder;)V visitItem a method_56853 + p 1 item + m (Lnet/minecraft/core/component/DataComponentType;)V visitRemovedComponent a method_60379 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V visitComponent a method_57802 + p 1 componentType + p 2 value +c net/minecraft/commands/arguments/item/ItemPredicateArgument hf net/minecraft/class_2293 + f Ljava/util/Collection; EXAMPLES a field_10812 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ITEM b field_50056 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG c field_50057 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_COMPONENT d field_50058 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_COMPONENT e field_50059 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PREDICATE f field_50060 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_PREDICATE g field_50061 + f Lnet/minecraft/resources/ResourceLocation; COUNT_ID h field_50062 + f Ljava/util/Map; PSEUDO_COMPONENTS i field_50063 + f Ljava/util/Map; PSEUDO_PREDICATES j field_50064 + f Lnet/minecraft/util/parsing/packrat/commands/Grammar; grammarWithContext k field_50065 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$Result; parse a method_9800 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$Result; getItemPredicate a method_9804 + p 0 context + p 1 name + m (Lnet/minecraft/world/item/ItemStack;)Z method_58522 a method_58522 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Ljava/util/function/Predicate; method_58523 a method_58523 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/item/ItemStack;)Z method_58524 a method_58524 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument; itemPredicate a method_9801 + p 0 context + m (Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; method_58525 a method_58525 + m (Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper; method_58526 a method_58526 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58527 a method_58527 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58528 a method_58528 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Ljava/util/function/Predicate; method_58529 b method_58529 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/item/ItemStack;)Z method_58530 b method_58530 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58531 b method_58531 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58532 b method_58532 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58533 c method_58533 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58534 d method_58534 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper hf$a net/minecraft/class_2293$class_9444 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2527 + f Ljava/util/function/Predicate; presenceChecker b comp_2528 + f Lcom/mojang/serialization/Decoder; valueChecker c comp_2529 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2527 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; decode a method_58535 + p 1 reader + p 2 ops + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; create a method_58536 + p 0 reader + p 1 id + p 2 componentType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58537 a method_58537 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;)Z method_58538 a method_58538 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/util/function/Predicate; method_58539 a method_58539 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Lnet/minecraft/world/item/ItemStack;)Z method_58540 a method_58540 + m ()Ljava/util/function/Predicate; presenceChecker b comp_2528 + m ()Lcom/mojang/serialization/Decoder; valueChecker c comp_2529 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Predicate;Lcom/mojang/serialization/Decoder;)V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$Context hf$b net/minecraft/class_2293$class_9445 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; items a field_50066 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; components b field_50067 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; predicates c field_50068 + f Lnet/minecraft/resources/RegistryOps; registryOps d field_50069 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;)Ljava/util/function/Predicate; createComponentTest a method_58541 + p 1 reader + p 2 context + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; createComponentTest a method_58542 + p 1 reader + p 2 context + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; createPredicateTest a method_58543 + p 1 reader + p 2 predicate + p 3 value + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; negate a method_58547 + p 1 value + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58544 a method_58544 + m (Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/item/ItemStack;)Z method_58545 a method_58545 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/item/ItemStack;)Z method_58546 a method_58546 + m (Ljava/util/List;)Ljava/util/function/Predicate; anyOf b method_58549 + p 1 values + m (Lnet/minecraft/core/Holder$Reference;)Z method_58548 b method_58548 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Predicate; forElementType e method_58550 + p 1 reader + p 2 elementType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Predicate; forTagType f method_58551 + p 1 reader + p 2 tagType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; lookupComponentType g method_58552 + p 1 reader + p 2 componentType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper; lookupPredicateType h method_58553 + p 1 reader + p 2 predicateType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58554 i method_58554 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58555 j method_58555 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58556 k method_58556 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58557 l method_58557 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper hf$c net/minecraft/class_2293$class_9446 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2530 + f Lcom/mojang/serialization/Decoder; type b comp_2531 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2530 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; decode a method_58559 + p 1 reader + p 2 ops + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58560 a method_58560 + m (Lnet/minecraft/advancements/critereon/ItemSubPredicate;)Ljava/util/function/Predicate; method_58558 a method_58558 + m ()Lcom/mojang/serialization/Decoder; type b comp_2531 + m (Lnet/minecraft/core/Holder$Reference;)V + p 1 predicate + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/Decoder;)V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$Result hf$d net/minecraft/class_2293$class_2295 +c net/minecraft/commands/arguments/item/package-info hg net/minecraft/class_6277 +c net/minecraft/commands/arguments/package-info hh net/minecraft/class_6278 +c net/minecraft/commands/arguments/selector/EntitySelector hi net/minecraft/class_2300 + f I INFINITE a field_33068 + f Ljava/util/function/BiConsumer; ORDER_ARBITRARY b field_41524 + f Lnet/minecraft/world/level/entity/EntityTypeTest; ANY_TYPE c field_27774 + f I maxResults d field_10822 + f Z includesEntities e field_10830 + f Z worldLimited f field_10829 + f Ljava/util/List; contextFreePredicates g field_52308 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; range h field_10825 + f Ljava/util/function/Function; position i field_10823 + f Lnet/minecraft/world/phys/AABB; aabb j field_10824 + f Ljava/util/function/BiConsumer; order k field_10826 + f Z currentEntity l field_10828 + f Ljava/lang/String; playerName m field_10831 + f Ljava/util/UUID; entityUUID n field_10821 + f Lnet/minecraft/world/level/entity/EntityTypeTest; type o field_10832 + f Z usesSelector p field_10827 + m ()I getMaxResults a method_9815 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/entity/Entity;)Z method_61159 a method_61159 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/entity/Entity; findSingleEntity a method_9809 + p 1 source + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;)Z method_9810 a method_9810 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; getAbsoluteAabb a method_61160 + p 1 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_9812 a method_9812 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/function/Predicate; getPredicate a method_9817 + p 1 pos + p 2 box + p 3 enabledFeatures + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)Ljava/util/List; sortAndLimit a method_9814 + p 1 pos + p 2 entities + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; joinNames a method_9822 + p 0 names + m (Ljava/util/List;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)V addEntities a method_9823 + p 1 entities + p 2 level + p 3 box + p 4 predicate + m ()Z includesEntities b method_9819 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/List; findEntities b method_9816 + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_47802 b method_47802 + m ()Z isSelfSelector c method_9820 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/server/level/ServerPlayer; findSinglePlayer c method_9811 + p 1 source + m ()Z isWorldLimited d method_9821 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/List; findPlayers d method_9813 + p 1 source + m ()Z usesSelector e method_35815 + m (Lnet/minecraft/commands/CommandSourceStack;)V checkPermissions e method_9818 + p 1 source + m ()I getResultLimit f method_47803 + m (IZZLjava/util/List;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/function/Function;Lnet/minecraft/world/phys/AABB;Ljava/util/function/BiConsumer;ZLjava/lang/String;Ljava/util/UUID;Lnet/minecraft/world/entity/EntityType;Z)V + p 1 maxResults + p 2 includesEntities + p 3 worldLimited + p 4 contextFreePredicates + p 5 range + p 6 position + p 7 aabb + p 8 order + p 9 currentEntity + p 10 playerName + p 11 entityUUID + p 12 type + p 13 usesSelector + m ()V +c net/minecraft/commands/arguments/selector/EntitySelector$1 hi$1 net/minecraft/class_2300$1 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; tryCast a method_32203 + m ()V +c net/minecraft/commands/arguments/selector/EntitySelectorParser hj net/minecraft/class_2303 + c

Interface {@link net.fabricmc.fabric.api.command.v2.FabricEntitySelectorReader} injected by mod fabric-command-api-v2

+ f Z includesEntities A field_10843 + f Z worldLimited B field_10866 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance C field_10838 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level D field_10842 + f Ljava/lang/Double; x E field_10857 + f Ljava/lang/Double; y F field_10872 + f Ljava/lang/Double; z G field_10839 + f Ljava/lang/Double; deltaX H field_10862 + f Ljava/lang/Double; deltaY I field_10852 + f Ljava/lang/Double; deltaZ J field_10881 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; rotX K field_10877 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; rotY L field_10859 + f Ljava/util/List; predicates M field_10870 + f Ljava/util/function/BiConsumer; order N field_10847 + f Z currentEntity O field_10879 + f Ljava/lang/String; playerName P field_10876 + f I startPosition Q field_10861 + f Ljava/util/UUID; entityUUID R field_10878 + f Ljava/util/function/BiFunction; suggestions S field_10848 + f Z hasNameEquals T field_10854 + f Z hasNameNotEquals U field_10874 + f Z isLimited V field_10851 + f Z isSorted W field_10873 + f Z hasGamemodeEquals X field_10849 + f Z hasGamemodeNotEquals Y field_10871 + f Z hasTeamEquals Z field_10845 + f C SYNTAX_SELECTOR_START a field_33069 + f Z hasTeamNotEquals aa field_10868 + f Lnet/minecraft/world/entity/EntityType; type ab field_10863 + f Z typeInverse ac field_10865 + f Z hasScores ad field_10841 + f Z hasAdvancements ae field_10864 + f Z usesSelectors af field_10840 + f C SYNTAX_OPTIONS_KEY_VALUE_SEPARATOR b field_33070 + f C SYNTAX_NOT c field_33071 + f C SYNTAX_TAG d field_33072 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_NAME_OR_UUID e field_10875 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SELECTOR_TYPE f field_10853 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELECTORS_NOT_ALLOWED g field_10880 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MISSING_SELECTOR_TYPE h field_10844 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_END_OF_OPTIONS i field_10837 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_OPTION_VALUE j field_10855 + f Ljava/util/function/BiConsumer; ORDER_NEAREST k field_10869 + f Ljava/util/function/BiConsumer; ORDER_FURTHEST l field_10882 + f Ljava/util/function/BiConsumer; ORDER_RANDOM m field_10850 + f Ljava/util/function/BiFunction; SUGGEST_NOTHING n field_10867 + f C SYNTAX_OPTIONS_START o field_33073 + f C SYNTAX_OPTIONS_END p field_33074 + f C SYNTAX_OPTIONS_SEPARATOR q field_33075 + f C SELECTOR_NEAREST_PLAYER r field_33076 + f C SELECTOR_ALL_PLAYERS s field_33077 + f C SELECTOR_RANDOM_PLAYERS t field_33078 + f C SELECTOR_CURRENT_ENTITY u field_33079 + f C SELECTOR_ALL_ENTITIES v field_33080 + f C SELECTOR_NEAREST_ENTITY w field_52174 + f Lcom/mojang/brigadier/StringReader; reader x field_10860 + f Z allowSelectors y field_10846 + f I maxResults z field_10858 + m ()Z hasGamemodeNotEquals A method_9837 + m ()Z hasTeamEquals B method_9904 + m ()Z hasTeamNotEquals C method_35816 + m ()V setTypeLimitedInversely D method_9860 + m ()Z isTypeLimited E method_9886 + m ()Z isTypeLimitedInversely F method_9910 + m ()Z hasScores G method_9843 + m ()Z hasAdvancements H method_9861 + m ()V finalizePredicates I method_9878 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector a method_9871 + m (D)V setX a method_9850 + p 1 x + m (DDD)Lnet/minecraft/world/phys/AABB; createAabb a method_9894 + p 1 sizeX + p 3 sizeY + p 5 sizeZ + m (I)V setMaxResults a method_9900 + p 1 maxResults + m (Lnet/minecraft/world/entity/Entity;)Z method_9856 a method_9856 + m (Lnet/minecraft/world/entity/EntityType;)V limitToType a method_9842 + p 1 type + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V fillSelectorSuggestions a method_9896 + p 0 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9908 + p 1 builder + p 2 consumer + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V setDistance a method_9870 + p 1 distance + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V setLevel a method_9846 + p 1 level + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;)V setRotX a method_9898 + p 1 rotX + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;Ljava/util/function/ToDoubleFunction;)Ljava/util/function/Predicate; createRotationPredicate a method_9859 + p 1 angleBounds + p 2 angleFunction + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_9872 a method_9872 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_9862 a method_9862 + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9867 a method_9867 + m (Ljava/lang/Object;)Z allowSelectors a method_61185 + m (Ljava/util/function/BiConsumer;)V setOrder a method_9845 + p 1 order + m (Ljava/util/function/BiFunction;)V setSuggestions a method_9875 + p 1 suggestionHandler + m (Ljava/util/function/Predicate;)V addPredicate a method_9916 + p 1 predicate + m (Ljava/util/function/ToDoubleFunction;DDLnet/minecraft/world/entity/Entity;)Z method_9881 a method_9881 + m (Z)V setIncludesEntities a method_9841 + p 1 includesEntities + m ()V parseSelector b method_9917 + m (D)V setY b method_9864 + p 1 y + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestNameOrSelector b method_9880 + p 1 builder + p 2 consumer + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;)V setRotY b method_9855 + p 1 rotY + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_9869 b method_9869 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_9897 b method_9897 + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9901 b method_9901 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9903 b method_9903 + m (Z)V setHasNameEquals b method_9899 + p 1 hasNameEquals + m ()V parseNameOrUUID c method_9849 + m (D)V setZ c method_9879 + p 1 z + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestName c method_9858 + p 1 builder + p 2 consumer + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9888 c method_9888 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9863 c method_9863 + m (Z)V setHasNameNotEquals c method_9913 + p 1 hasNameNotEquals + m ()V parseOptions d method_9874 + m (D)V setDeltaX d method_9891 + p 1 deltaX + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestSelector d method_9834 + p 1 builder + p 2 consumer + m (Z)V setLimited d method_9877 + p 1 isLimited + m ()Z shouldInvertValue e method_9892 + m (D)V setDeltaY e method_9905 + p 1 deltaY + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOpenOptions e method_9893 + p 1 builder + p 2 consumer + m (Z)V setSorted e method_9887 + p 1 isSorted + m ()Z isTag f method_9915 + m (D)V setDeltaZ f method_9918 + p 1 deltaZ + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsKeyOrClose f method_9911 + p 1 builder + p 2 consumer + m (Z)V setHasGamemodeEquals f method_9890 + p 1 hasGamemodeEquals + m ()Lcom/mojang/brigadier/StringReader; getReader g method_9835 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsKey g method_9909 + p 1 builder + p 2 consumer + m (Z)V setHasGamemodeNotEquals g method_9857 + p 1 hasGamemodeNotEquals + m ()V setWorldLimited h method_9852 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsNextOrClose h method_9847 + p 1 builder + p 2 consumer + m (Z)V setHasTeamEquals h method_9865 + p 1 hasTeamEquals + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; getDistance i method_9873 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestEquals i method_35817 + p 1 builder + p 2 consumer + m (Z)V setHasTeamNotEquals i method_9833 + p 1 hasTeamNotEquals + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; getLevel j method_9895 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9854 j method_9854 + m (Z)V setHasScores j method_9848 + p 1 hasScores + m ()Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; getRotX k method_9883 + m (Z)V setHasAdvancements k method_9906 + p 1 hasAdvancements + m ()Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; getRotY l method_9853 + m ()Ljava/lang/Double; getX m method_9902 + m ()Ljava/lang/Double; getY n method_9884 + m ()Ljava/lang/Double; getZ o method_9868 + m ()Ljava/lang/Double; getDeltaX p method_9851 + m ()Ljava/lang/Double; getDeltaY q method_9840 + m ()Ljava/lang/Double; getDeltaZ r method_9907 + m ()Ljava/util/function/BiConsumer; getOrder s method_35818 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; parse t method_9882 + m ()Z isCurrentEntity u method_9885 + m ()Z hasNameEquals v method_9912 + m ()Z hasNameNotEquals w method_9844 + m ()Z isLimited x method_9866 + m ()Z isSorted y method_9889 + m ()Z hasGamemodeEquals z method_9839 + m (Lcom/mojang/brigadier/StringReader;Z)V + p 1 reader + p 2 allowSelectors + m ()V + m (Lcom/mojang/brigadier/StringReader;)V + p 1 reader +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions hk net/minecraft/class_2306 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_OPTION a field_10885 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INAPPLICABLE_OPTION b field_10887 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_NEGATIVE c field_10890 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_LEVEL_NEGATIVE d field_10893 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_LIMIT_TOO_SMALL e field_10886 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SORT_UNKNOWN f field_10888 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GAME_MODE_INVALID g field_10889 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ENTITY_TYPE_INVALID h field_10892 + f Ljava/util/Map; OPTIONS i field_10891 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9928 A method_9928 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9963 B method_9963 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9947 C method_9947 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9962 D method_9962 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9925 E method_9925 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9977 F method_9977 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9944 G method_9944 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9978 H method_9978 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9942 I method_9942 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9979 J method_9979 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9945 K method_9945 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9980 L method_9980 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9934 M method_9934 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9981 N method_9981 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9943 O method_9943 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9982 P method_9982 + m ()V bootStrap a method_9960 + m (Lnet/minecraft/resources/ResourceKey;ZLnet/minecraft/world/entity/Entity;)Z method_22823 a method_22823 + m (Lnet/minecraft/tags/TagKey;ZLnet/minecraft/world/entity/Entity;)Z method_9950 a method_9950 + m (Lnet/minecraft/world/entity/EntityType;ZLnet/minecraft/world/entity/Entity;)Z method_9919 a method_9919 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9967 a method_9967 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_22822 a method_22822 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17961 a method_17961 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V suggestNames a method_9930 + p 0 parser + p 1 builder + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9921 a method_9921 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Ljava/lang/String;I)Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; get a method_9976 + p 0 parser + p 1 id + p 2 cursor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9964 a method_9964 + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier;Ljava/util/function/Predicate;Lnet/minecraft/network/chat/Component;)V register a method_9961 + p 0 id + p 1 handler + p 2 predicate + p 3 tooltip + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9965 a method_9965 + m (Ljava/util/Map;Lnet/minecraft/advancements/AdvancementProgress;)Z method_9929 a method_9929 + m (Ljava/util/Map;Lnet/minecraft/world/entity/Entity;)Z method_9958 a method_9958 + m (Lnet/minecraft/nbt/CompoundTag;ZLnet/minecraft/world/entity/Entity;)Z method_9957 a method_9957 + m (ZLnet/minecraft/advancements/AdvancementProgress;)Z method_9936 a method_9936 + m (ZLnet/minecraft/advancements/CriterionProgress;)Z method_9931 a method_9931 + m (ZLnet/minecraft/world/level/GameType;Lnet/minecraft/world/entity/Entity;)Z method_9924 a method_9924 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_22824 b method_22824 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9946 b method_9946 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9932 b method_9932 + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9922 b method_9922 + m (Ljava/util/Map;Lnet/minecraft/world/entity/Entity;)Z method_9937 b method_9937 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9926 c method_9926 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9956 c method_9956 + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9920 c method_9920 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9974 d method_9974 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9923 d method_9923 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9927 e method_9927 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9959 e method_9959 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9975 f method_9975 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9941 g method_9941 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9966 h method_9966 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9938 i method_9938 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9968 j method_9968 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9939 k method_9939 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9973 l method_9973 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9940 m method_9940 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9951 n method_9951 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9952 o method_9952 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9948 p method_9948 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9949 q method_9949 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9953 r method_9953 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9954 s method_9954 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9969 t method_9969 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9955 u method_9955 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9970 v method_9970 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9935 w method_9935 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9971 x method_9971 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9933 y method_9933 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9972 z method_9972 + m ()V + m ()V +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier hk$a net/minecraft/class_2306$class_2307 +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Option hk$b net/minecraft/class_2306$class_2308 + f Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; modifier a comp_1063 + f Ljava/util/function/Predicate; canUse b comp_1064 + f Lnet/minecraft/network/chat/Component; description c comp_1065 + m ()Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; modifier a comp_1063 + m ()Ljava/util/function/Predicate; canUse b comp_1064 + m ()Lnet/minecraft/network/chat/Component; description c comp_1065 + m (Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier;Ljava/util/function/Predicate;Lnet/minecraft/network/chat/Component;)V + p 1 modifier + p 2 canUse + p 3 description +c net/minecraft/commands/arguments/selector/options/package-info hl net/minecraft/class_6279 +c net/minecraft/commands/arguments/selector/package-info hm net/minecraft/class_6280 +c net/minecraft/commands/execution/ChainModifiers hn net/minecraft/class_8936 + f Lnet/minecraft/commands/execution/ChainModifiers; DEFAULT a field_47160 + f B flags b comp_2020 + f B FLAG_FORKED c field_47161 + f B FLAG_IS_RETURN d field_47162 + m ()Z isForked a method_54884 + m (B)Lnet/minecraft/commands/execution/ChainModifiers; setFlag a method_54885 + p 1 flag + m ()Lnet/minecraft/commands/execution/ChainModifiers; setForked b method_54886 + m ()Z isReturn c method_54887 + m ()Lnet/minecraft/commands/execution/ChainModifiers; setReturn d method_54888 + m ()B flags e comp_2020 + m (B)V + m ()V +c net/minecraft/commands/execution/CommandQueueEntry ho net/minecraft/class_8847 + f Lnet/minecraft/commands/execution/Frame; frame a comp_2021 + f Lnet/minecraft/commands/execution/EntryAction; action b comp_1993 + m ()Lnet/minecraft/commands/execution/Frame; frame a comp_2021 + m (Lnet/minecraft/commands/execution/ExecutionContext;)V execute a method_54388 + p 1 context + m ()Lnet/minecraft/commands/execution/EntryAction; action b comp_1993 + m (Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/EntryAction;)V +c net/minecraft/commands/execution/CustomCommandExecutor hp net/minecraft/class_8848 + m (Ljava/lang/Object;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54290 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl +c net/minecraft/commands/execution/CustomCommandExecutor$CommandAdapter hp$a net/minecraft/class_8848$class_8849 +c net/minecraft/commands/execution/CustomCommandExecutor$WithErrorHandling hp$b net/minecraft/class_8848$class_8850 + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/TraceCallbacks;)V onError a method_54255 + p 1 error + p 2 source + p 3 chainModifiers + p 4 traceCallbacks + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54389 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded b method_54259 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m ()V +c net/minecraft/commands/execution/CustomModifierExecutor hq net/minecraft/class_8851 + m (Ljava/lang/Object;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54270 + p 1 originalSource + p 2 soruces + p 3 contextChain + p 4 chainModifiers + p 5 executionControl +c net/minecraft/commands/execution/CustomModifierExecutor$ModifierAdapter hq$a net/minecraft/class_8851$class_8852 +c net/minecraft/commands/execution/EntryAction hr net/minecraft/class_8853 +c net/minecraft/commands/execution/ExecutionContext hs net/minecraft/class_8854 + f I MAX_QUEUE_DEPTH a field_46729 + f Lorg/slf4j/Logger; LOGGER b field_46730 + f I commandLimit c field_46731 + f I forkLimit d field_46732 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler e field_46733 + f Lnet/minecraft/commands/execution/TraceCallbacks; tracer f field_46734 + f I commandQuota g field_46735 + f Z queueOverflow h field_46736 + f Ljava/util/Deque; commandQueue i field_46737 + f Ljava/util/List; newTopCommands j field_46738 + f I currentFrameDepth k field_47705 + m ()V runCommandQueue a method_54390 + m (I)V discardAtDepthOrHigher a method_54391 + p 1 depth + m (Lnet/minecraft/commands/execution/CommandQueueEntry;)V queueNext a method_54392 + p 1 entry + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/execution/Frame; createTopFrame a method_54889 + p 0 executionContext + p 1 returnValueConsumer + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/CommandResultCallback;)V queueInitialFunctionCall a method_54395 + p 0 executionContext + p 1 function + p 2 source + p 3 returnValueConsumer + m (Lnet/minecraft/commands/execution/ExecutionContext;Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/CommandResultCallback;)V queueInitialCommandExecution a method_54393 + p 0 executionContext + p 1 commandInput + p 2 command + p 3 source + p 4 returnValueConsumer + m (Lnet/minecraft/commands/execution/TraceCallbacks;)V tracer a method_54394 + p 1 tracer + m ()Lnet/minecraft/commands/execution/TraceCallbacks; tracer b method_54396 + m (I)Lnet/minecraft/commands/execution/Frame$FrameControl; frameControlForDepth b method_54890 + p 1 depth + m ()Lnet/minecraft/util/profiling/ProfilerFiller; profiler c method_54397 + m (I)V method_54891 c method_54891 + m ()I forkLimit d method_54398 + m ()V incrementCost e method_54399 + m ()V handleQueueOverflow f method_54400 + m ()V pushNewCommands g method_55594 + m (IILnet/minecraft/util/profiling/ProfilerFiller;)V + p 1 commandLimit + p 2 forkLimit + p 3 profiler + m ()V +c net/minecraft/commands/execution/ExecutionControl ht net/minecraft/class_8855 + m ()Lnet/minecraft/commands/execution/TraceCallbacks; tracer a method_54404 + m (Lnet/minecraft/commands/execution/EntryAction;)V queueNext a method_54402 + p 1 entry + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)Lnet/minecraft/commands/execution/ExecutionControl; create a method_54892 + p 0 executionContext + p 1 frame + m (Lnet/minecraft/commands/execution/TraceCallbacks;)V tracer a method_54403 + p 1 tracer + m ()Lnet/minecraft/commands/execution/Frame; currentFrame b method_54893 +c net/minecraft/commands/execution/ExecutionControl$1 ht$1 net/minecraft/class_8855$1 + f Lnet/minecraft/commands/execution/ExecutionContext; val$context a field_46742 + f Lnet/minecraft/commands/execution/Frame; val$frame b field_47163 + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V +c net/minecraft/commands/execution/Frame hu net/minecraft/class_8937 + f I depth a comp_2022 + f Lnet/minecraft/commands/CommandResultCallback; returnValueConsumer b comp_2023 + f Lnet/minecraft/commands/execution/Frame$FrameControl; frameControl c comp_2024 + m ()V returnFailure a method_54894 + m (I)V returnSuccess a method_54895 + p 1 result + m ()V discard b method_54896 + m ()I depth c comp_2022 + m ()Lnet/minecraft/commands/CommandResultCallback; returnValueConsumer d comp_2023 + m ()Lnet/minecraft/commands/execution/Frame$FrameControl; frameControl e comp_2024 + m (ILnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/execution/Frame$FrameControl;)V +c net/minecraft/commands/execution/Frame$FrameControl hu$a net/minecraft/class_8937$class_8938 +c net/minecraft/commands/execution/TraceCallbacks hv net/minecraft/class_6346 + m (ILnet/minecraft/resources/ResourceLocation;I)V onCall a method_36351 + p 1 depth + p 2 function + p 3 commands + m (ILjava/lang/String;)V onCommand a method_36349 + p 1 depth + p 2 command + m (ILjava/lang/String;I)V onReturn a method_36350 + p 1 depth + p 2 command + p 3 returnValue + m (Ljava/lang/String;)V onError a method_36352 + p 1 errorMessage +c net/minecraft/commands/execution/UnboundEntryAction hw net/minecraft/class_8856 + m (Ljava/lang/Object;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54405 a method_54405 +c net/minecraft/commands/execution/package-info hx net/minecraft/class_8857 +c net/minecraft/commands/execution/tasks/BuildContexts hy net/minecraft/class_8858 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_FORK_LIMIT_REACHED a field_46739 + f Ljava/lang/String; commandInput b field_46740 + f Lcom/mojang/brigadier/context/ContextChain; command c field_46741 + m ()Ljava/lang/String; method_54406 a method_54406 + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54897 a method_54897 + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/ChainModifiers;)V execute a method_54410 + p 1 originalSource + p 2 sources + p 3 context + p 4 frame + p 5 chainModifiers + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V traceCommandStart a method_54407 + p 1 executionContext + p 2 frame + m (Lnet/minecraft/commands/execution/tasks/ExecuteCommand;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/ExecutionCommandSource;)Lnet/minecraft/commands/execution/CommandQueueEntry; method_54408 a method_54408 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54409 a method_54409 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;)V + p 1 commandInput + p 2 command + m ()V +c net/minecraft/commands/execution/tasks/BuildContexts$Continuation hy$a net/minecraft/class_8858$class_8859 + f Lnet/minecraft/commands/execution/ChainModifiers; modifiers b field_47164 + f Lnet/minecraft/commands/ExecutionCommandSource; originalSource c field_47165 + f Ljava/util/List; sources d field_46745 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;)V + p 1 commandInput + p 2 command + p 3 modifiers + p 4 originalSource + p 5 sources +c net/minecraft/commands/execution/tasks/BuildContexts$TopLevel hy$b net/minecraft/class_8858$class_8860 + f Lnet/minecraft/commands/ExecutionCommandSource; source b field_46746 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/ExecutionCommandSource;)V + p 1 commandInput + p 2 command + p 3 source +c net/minecraft/commands/execution/tasks/BuildContexts$Unbound hy$c net/minecraft/class_8858$class_8861 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54412 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;)V +c net/minecraft/commands/execution/tasks/CallFunction hz net/minecraft/class_8862 + f Lnet/minecraft/commands/functions/InstantiatedFunction; function a field_46747 + f Lnet/minecraft/commands/CommandResultCallback; resultCallback b field_47166 + f Z returnParentFrame c field_47167 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54851 + p 1 source + p 2 executionContext + p 3 frame + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/UnboundEntryAction;)Lnet/minecraft/commands/execution/CommandQueueEntry; method_54898 a method_54898 + m (Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandResultCallback;Z)V + p 1 function + p 2 resultCallback + p 3 returnParentFrame +c net/minecraft/commands/execution/tasks/ContinuationTask ia net/minecraft/class_8863 + f Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider; taskFactory a field_46748 + f Ljava/util/List; arguments b field_46749 + f Lnet/minecraft/commands/execution/CommandQueueEntry; selfEntry c field_46750 + f I index d field_46751 + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;Ljava/util/List;Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider;)V schedule a method_54414 + p 0 executionContext + p 1 frame + p 2 arguments + p 3 taskProvider + m (Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider;Ljava/util/List;Lnet/minecraft/commands/execution/Frame;)V + p 1 taskFactory + p 2 arguments + p 3 frame +c net/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider ia$a net/minecraft/class_8863$class_8864 +c net/minecraft/commands/execution/tasks/ExecuteCommand ib net/minecraft/class_8865 + f Ljava/lang/String; commandInput a field_46752 + f Lnet/minecraft/commands/execution/ChainModifiers; modifiers b field_47168 + f Lcom/mojang/brigadier/context/CommandContext; executionContext c field_46754 + m ()Ljava/lang/String; method_54415 a method_54415 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54416 + p 1 source + p 2 executionContext + p 3 frame + m (Ljava/lang/String;Lnet/minecraft/commands/execution/ChainModifiers;Lcom/mojang/brigadier/context/CommandContext;)V + p 1 commandInput + p 2 modifiers + p 3 executionContext +c net/minecraft/commands/execution/tasks/FallthroughTask ic net/minecraft/class_8939 + f Lnet/minecraft/commands/execution/tasks/FallthroughTask; INSTANCE a field_47169 + m ()Lnet/minecraft/commands/execution/EntryAction; instance a method_54899 + m ()V + m ()V +c net/minecraft/commands/execution/tasks/IsolatedCall id net/minecraft/class_8940 + f Ljava/util/function/Consumer; taskProducer a field_47170 + f Lnet/minecraft/commands/CommandResultCallback; output b field_47171 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandResultCallback;)V + p 1 taskProducer + p 2 output +c net/minecraft/commands/execution/tasks/package-info ie net/minecraft/class_8866 +c net/minecraft/commands/functions/CommandFunction ig net/minecraft/class_2158 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;)Lnet/minecraft/commands/functions/CommandFunction; fromLines a method_9195 + p 0 id + p 1 dispatcher + p 2 source + p 3 lines + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/execution/UnboundEntryAction; parseCommand a method_54417 + p 0 dispatcher + p 1 source + p 2 command + m (Ljava/lang/CharSequence;)V checkCommandLineLength a method_57057 + p 0 command + m (Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/commands/functions/InstantiatedFunction; instantiate a method_52595 + p 1 arguments + p 2 dispatcher + m (Ljava/lang/CharSequence;)Z shouldConcatenateNextLine b method_52592 + p 0 line +c net/minecraft/commands/functions/FunctionBuilder ih net/minecraft/class_8867 + f Ljava/util/List; plainEntries a field_46755 + f Ljava/util/List; macroEntries b field_46756 + f Ljava/util/List; macroArguments c field_46757 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/functions/CommandFunction; build a method_54418 + p 1 id + m (Lnet/minecraft/commands/execution/UnboundEntryAction;)V addCommand a method_54419 + p 1 command + m (Ljava/lang/String;)I getArgumentIndex a method_54420 + p 1 argument + m (Ljava/lang/String;ILnet/minecraft/commands/ExecutionCommandSource;)V addMacro a method_54421 + p 1 name + p 2 lineNumber + p 3 compilationContext + m (Ljava/util/List;)Lit/unimi/dsi/fastutil/ints/IntList; convertToIndices a method_54422 + p 1 arguments + m ()V +c net/minecraft/commands/functions/InstantiatedFunction ii net/minecraft/class_8868 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + m ()Ljava/util/List; entries b comp_1995 +c net/minecraft/commands/functions/MacroFunction ij net/minecraft/class_8641 + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_46190 + f I MAX_CACHE_ENTRIES b field_45150 + f Ljava/util/List; parameters c field_45149 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap; cache d field_45151 + f Lnet/minecraft/resources/ResourceLocation; id e field_46758 + f Ljava/util/List; entries f field_46759 + m (Ljava/text/DecimalFormat;)V method_54423 a method_54423 + m (Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;Ljava/util/List;)V lookupValues a method_54424 + p 0 arguments + p 1 parameters + p 2 output + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; method_54425 a method_54425 + m (Ljava/util/List;Ljava/util/List;I)V method_54426 a method_54426 + m (Ljava/util/List;Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/commands/functions/InstantiatedFunction; substituteAndParse a method_52597 + p 1 argumentNames + p 2 argumentValues + p 3 dispatcher + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; stringify a method_53840 + p 0 tag + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/List;)V + p 1 id + p 2 entries + p 3 parameters + m ()V +c net/minecraft/commands/functions/MacroFunction$Entry ij$a net/minecraft/class_8641$class_8869 + m ()Lit/unimi/dsi/fastutil/ints/IntList; parameters a method_54428 + m (Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/execution/UnboundEntryAction; instantiate a method_54429 + p 1 arguments + p 2 dispatcher + p 3 function +c net/minecraft/commands/functions/MacroFunction$MacroEntry ij$b net/minecraft/class_8641$class_8870 + f Lnet/minecraft/commands/functions/StringTemplate; template a field_46760 + f Lit/unimi/dsi/fastutil/ints/IntList; parameters b field_46761 + f Lnet/minecraft/commands/ExecutionCommandSource; compilationContext c field_47891 + m (Lnet/minecraft/commands/functions/StringTemplate;Lit/unimi/dsi/fastutil/ints/IntList;Lnet/minecraft/commands/ExecutionCommandSource;)V + p 1 template + p 2 parameters + p 3 compilationContext +c net/minecraft/commands/functions/MacroFunction$PlainTextEntry ij$c net/minecraft/class_8641$class_8871 + f Lnet/minecraft/commands/execution/UnboundEntryAction; compiledAction a field_46762 + m (Lnet/minecraft/commands/execution/UnboundEntryAction;)V + p 1 compiledAction +c net/minecraft/commands/functions/PlainTextFunction ik net/minecraft/class_8872 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + f Ljava/util/List; entries b comp_1995 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V +c net/minecraft/commands/functions/StringTemplate il net/minecraft/class_8873 + f Ljava/util/List; segments a comp_1996 + f Ljava/util/List; variables b comp_1997 + m ()Ljava/util/List; segments a comp_1996 + m (Ljava/lang/String;)Z isValidVariableName a method_54431 + p 0 variableName + m (Ljava/lang/String;I)Lnet/minecraft/commands/functions/StringTemplate; fromString a method_54432 + p 0 name + p 1 lineNumber + m (Ljava/util/List;)Ljava/lang/String; substitute a method_54433 + p 1 arguments + m ()Ljava/util/List; variables b comp_1997 + m (Ljava/util/List;Ljava/util/List;)V +c net/minecraft/commands/functions/package-info im net/minecraft/class_8874 +c net/minecraft/commands/package-info in net/minecraft/class_6281 +c net/minecraft/commands/synchronization/ArgumentTypeInfo io net/minecraft/class_2314 + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; unpack a method_41726 + p 1 argument + m (Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10006 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10007 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; deserializeFromNetwork b method_10005 + p 1 buffer +c net/minecraft/commands/synchronization/ArgumentTypeInfo$Template io$a net/minecraft/class_2314$class_7217 + m ()Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; type a method_41728 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/ArgumentType; instantiate b method_41730 + p 1 context +c net/minecraft/commands/synchronization/ArgumentTypeInfos ip net/minecraft/class_2316 + f Ljava/util/Map; BY_CLASS a field_10921 + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; byClass a method_41983 + p 0 argument + m (Ljava/lang/Class;)Z isClassRecognized a method_41984 + p 0 clazz + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; bootstrap a method_10015 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Ljava/lang/Class;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; register a method_10017 + p 0 registry + p 1 id + p 2 argumentClass + p 3 info + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; unpack b method_41985 + p 0 argument + m (Ljava/lang/Class;)Ljava/lang/Class; fixClassType b method_41181 + p 0 type + m ()V + m ()V +c net/minecraft/commands/synchronization/ArgumentUtils iq net/minecraft/class_7218 + f Lorg/slf4j/Logger; LOGGER a field_37975 + f B NUMBER_FLAG_MIN b field_37976 + f B NUMBER_FLAG_MAX c field_37977 + m (B)Z numberHasMin a method_41986 + p 0 number + m (Lcom/google/gson/JsonObject;Lcom/mojang/brigadier/arguments/ArgumentType;)V serializeArgumentToJson a method_41987 + p 0 json + p 1 type + m (Lcom/google/gson/JsonObject;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_41988 + p 0 json + p 1 template + m (Lcom/google/gson/JsonObject;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_41989 + p 0 json + p 1 argumentTypeInfo + p 2 template + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;)Lcom/google/gson/JsonObject; serializeNodeToJson a method_41990 + p 0 dispatcher + p 1 node + m (Lcom/mojang/brigadier/tree/CommandNode;)Ljava/util/Set; findUsedArgumentTypes a method_41991 + p 0 node + m (Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Set;Ljava/util/Set;)V findUsedArgumentTypes a method_41992 + p 0 node + p 1 types + p 2 nodes + m (Ljava/util/Set;Ljava/util/Set;Lcom/mojang/brigadier/tree/CommandNode;)V method_41993 a method_41993 + m (ZZ)I createNumberFlags a method_41994 + p 0 min + p 1 max + m (B)Z numberHasMax b method_41995 + p 0 number + m ()V + m ()V +c net/minecraft/commands/synchronization/SingletonArgumentInfo ir net/minecraft/class_2319 + f Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; template a field_37978 + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41996 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41997 + p 1 template + p 2 buffer + m (Ljava/util/function/Function;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; contextAware a method_41998 + p 0 argumentType + m (Ljava/util/function/Supplier;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; contextFree a method_41999 + p 0 argumentTypeSupplier + m (Ljava/util/function/Supplier;Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/ArgumentType; method_42000 a method_42000 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; deserializeFromNetwork a method_42001 + p 1 buffer + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; unpack b method_42002 + p 1 argument + m (Ljava/util/function/Function;)V + p 1 constructor +c net/minecraft/commands/synchronization/SingletonArgumentInfo$Template ir$a net/minecraft/class_2319$class_7219 + f Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; field_37979 a field_37979 + f Ljava/util/function/Function; constructor b field_37980 + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo;Ljava/util/function/Function;)V + p 2 constructor +c net/minecraft/commands/synchronization/SuggestionProviders is net/minecraft/class_2321 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; ASK_SERVER a field_10933 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; ALL_RECIPES b field_10932 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; AVAILABLE_SOUNDS c field_10934 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUMMONABLE_ENTITIES d field_10935 + f Ljava/util/Map; PROVIDERS_BY_NAME e field_10931 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_NAME f field_10930 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; getProvider a method_10024 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; register a method_10022 + p 0 name + p 1 provider + m (Lnet/minecraft/world/entity/EntityType;)Lcom/mojang/brigadier/Message; method_10023 a method_10023 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/entity/EntityType;)Z method_45916 a method_45916 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10028 a method_10028 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lnet/minecraft/resources/ResourceLocation; getName a method_10027 + c Gets the ID for the given provider. If the provider is not a wrapped one created via {@link #register}, then it returns {@link #ASK_SERVER_ID} instead, as there is no known ID but ASK_SERVER always works. + p 0 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10025 b method_10025 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; safelySwap b method_10026 + c Checks to make sure that the given suggestion provider is a wrapped one that was created via {@link #register}. If not, returns {@link #ASK_SERVER}. Needed because custom providers don't have a known ID to send to the client, but ASK_SERVER always works. + p 0 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10030 c method_10030 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10029 d method_10029 + m ()V + m ()V +c net/minecraft/commands/synchronization/SuggestionProviders$Wrapper is$a net/minecraft/class_2321$class_2322 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; delegate a field_10937 + f Lnet/minecraft/resources/ResourceLocation; name b field_10936 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)V + p 1 name + p 2 delegate +c net/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo it net/minecraft/class_2326 + m (Lcom/mojang/brigadier/arguments/DoubleArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template; unpack a method_42003 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10043 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10041 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template; deserializeFromNetwork a method_10042 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template it$a net/minecraft/class_2326$class_7220 + f Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo; field_37981 a field_37981 + f D min b field_37982 + f D max c field_37983 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/DoubleArgumentType; instantiate a method_42004 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo;DD)V + p 2 min + p 4 max +c net/minecraft/commands/synchronization/brigadier/FloatArgumentInfo iu net/minecraft/class_2327 + m (Lcom/mojang/brigadier/arguments/FloatArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template; unpack a method_42005 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10046 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10044 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template; deserializeFromNetwork a method_10045 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template iu$a net/minecraft/class_2327$class_7221 + f Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo; field_37984 a field_37984 + f F min b field_37985 + f F max c field_37986 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/FloatArgumentType; instantiate a method_42006 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo;FF)V + p 2 min + p 3 max +c net/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo iv net/minecraft/class_2330 + m (Lcom/mojang/brigadier/arguments/IntegerArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template; unpack a method_42007 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10049 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10048 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template; deserializeFromNetwork a method_10050 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template iv$a net/minecraft/class_2330$class_7222 + f Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo; field_37987 a field_37987 + f I min b field_37988 + f I max c field_37989 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/IntegerArgumentType; instantiate a method_42008 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo;II)V + p 2 min + p 3 max +c net/minecraft/commands/synchronization/brigadier/LongArgumentInfo iw net/minecraft/class_4461 + m (Lcom/mojang/brigadier/arguments/LongArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template; unpack a method_42009 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_21689 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_21690 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template; deserializeFromNetwork a method_21691 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template iw$a net/minecraft/class_4461$class_7223 + f Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo; field_37990 a field_37990 + f J min b field_37991 + f J max c field_37992 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/LongArgumentType; instantiate a method_42010 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo;JJ)V + p 2 min + p 4 max +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer ix net/minecraft/class_2332 + m (Lcom/mojang/brigadier/arguments/StringArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template; unpack a method_42011 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10051 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10053 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template; deserializeFromNetwork a method_10052 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$1 ix$1 net/minecraft/class_2332$1 + f [I $SwitchMap$com$mojang$brigadier$arguments$StringArgumentType$StringType a field_10952 + m ()V +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template ix$a net/minecraft/class_2332$class_7224 + f Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer; field_37993 a field_37993 + f Lcom/mojang/brigadier/arguments/StringArgumentType$StringType; type b field_37994 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/StringArgumentType; instantiate a method_42012 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer;Lcom/mojang/brigadier/arguments/StringArgumentType$StringType;)V + p 2 type +c net/minecraft/commands/synchronization/brigadier/package-info iy net/minecraft/class_6282 +c net/minecraft/commands/synchronization/package-info iz net/minecraft/class_6283 +c net/minecraft/core/AxisCycle ja net/minecraft/class_2335 + f Lnet/minecraft/core/AxisCycle; NONE a field_10962 + f Lnet/minecraft/core/AxisCycle; FORWARD b field_10963 + f Lnet/minecraft/core/AxisCycle; BACKWARD c field_10965 + f [Lnet/minecraft/core/Direction$Axis; AXIS_VALUES d field_10961 + f [Lnet/minecraft/core/AxisCycle; VALUES e field_10960 + f [Lnet/minecraft/core/AxisCycle; $VALUES f field_10964 + m ()Lnet/minecraft/core/AxisCycle; inverse a method_10055 + m (DDDLnet/minecraft/core/Direction$Axis;)D cycle a method_35819 + p 1 x + p 3 y + p 5 z + p 7 axis + m (IIILnet/minecraft/core/Direction$Axis;)I cycle a method_10056 + p 1 x + p 2 y + p 3 z + p 4 axis + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction$Axis; cycle a method_10058 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/AxisCycle; between a method_10057 + p 0 to + p 1 axis2 + m ()[Lnet/minecraft/core/AxisCycle; $values b method_36930 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/AxisCycle$1 ja$1 net/minecraft/class_2335$1 + m (Ljava/lang/String;I)V +c net/minecraft/core/AxisCycle$2 ja$2 net/minecraft/class_2335$2 + m (Ljava/lang/String;I)V +c net/minecraft/core/AxisCycle$3 ja$3 net/minecraft/class_2335$3 + m (Ljava/lang/String;I)V +c net/minecraft/core/BlockBox jb net/minecraft/class_9380 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49907 + f Lnet/minecraft/core/BlockPos; min b comp_2466 + f Lnet/minecraft/core/BlockPos; max c comp_2467 + m ()Z isBlock a method_58235 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; of a method_58236 + p 0 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; of a method_58237 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockBox; extend a method_58238 + p 1 direction + p 2 amount + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockBox; offset a method_58239 + p 1 vector + m ()Lnet/minecraft/world/phys/AABB; aabb b method_58240 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; include b method_58241 + p 1 pos + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockBox; move b method_58242 + p 1 direction + p 2 amount + m ()I sizeX c method_58243 + m (Lnet/minecraft/core/BlockPos;)Z contains c method_58244 + p 1 pos + m ()I sizeY d method_58245 + m ()I sizeZ e method_58246 + m ()Lnet/minecraft/core/BlockPos; min f comp_2466 + m ()Lnet/minecraft/core/BlockPos; max g comp_2467 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V + p 1 min + p 2 max + m ()V +c net/minecraft/core/BlockBox$1 jb$1 net/minecraft/class_9380$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockBox; decode a method_58247 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockBox;)V encode a method_58248 + m ()V +c net/minecraft/core/BlockMath jc net/minecraft/class_4609 + f Ljava/util/Map; VANILLA_UV_TRANSFORM_LOCAL_TO_GLOBAL a field_21021 + f Ljava/util/Map; VANILLA_UV_TRANSFORM_GLOBAL_TO_LOCAL b field_21022 + f Lorg/slf4j/Logger; LOGGER c field_21023 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; blockCenterToCorner a method_23220 + p 0 transformation + m (Lcom/mojang/math/Transformation;Lnet/minecraft/core/Direction;)Lcom/mojang/math/Transformation; getUVLockTransform a method_23221 + p 0 transformation + p 1 direction + m (Ljava/util/EnumMap;)V method_23222 a method_23222 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; blockCornerToCenter b method_35829 + p 0 transformation + m (Ljava/util/EnumMap;)V method_23223 b method_23223 + m ()V + m ()V +c net/minecraft/core/BlockPos jd net/minecraft/class_2338 + f Lcom/mojang/serialization/Codec; CODEC a field_25064 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48404 + f Lnet/minecraft/core/BlockPos; ZERO c field_10980 + c An immutable BlockPos with zero as all coordinates. + f I PACKED_Y_LENGTH d field_10975 + f Lorg/slf4j/Logger; LOGGER e field_18789 + f I PACKED_X_LENGTH h field_10978 + f I PACKED_Z_LENGTH i field_10977 + f J PACKED_X_MASK j field_10976 + f J PACKED_Y_MASK k field_10974 + f J PACKED_Z_MASK l field_10973 + f I Y_OFFSET m field_33083 + f I Z_OFFSET n field_10983 + f I X_OFFSET o field_10981 + m ()J asLong a method_10063 + m (DDD)Lnet/minecraft/core/BlockPos; containing a method_49637 + p 0 x + p 2 y + p 4 z + m (I)Lnet/minecraft/core/BlockPos; multiply a method_35830 + p 1 scalar + m (III)J asLong a method_10064 + p 0 x + p 1 y + p 2 z + m (IIIIII)Ljava/util/stream/Stream; betweenClosedStream a method_17962 + p 0 minX + p 1 minY + p 2 minZ + p 3 maxX + p 4 maxY + p 5 maxZ + m (IIIIIII)Ljava/util/Iterator; method_25995 a method_25995 + m (IILnet/minecraft/util/RandomSource;IIIII)Ljava/util/Iterator; method_27155 a method_27155 + m (J)I getX a method_10061 + p 0 packedPos + m (JIII)J offset a method_10096 + p 0 pos + p 2 dx + p 3 dy + p 4 dz + m (JLnet/minecraft/core/Direction;)J offset a method_10060 + p 0 pos + p 2 direction + m (Lnet/minecraft/util/RandomSource;IIIIIII)Ljava/lang/Iterable; randomBetweenClosed a method_27156 + p 0 random + p 1 amount + p 2 minX + p 3 minY + p 4 minZ + p 5 maxX + p 6 maxY + p 7 maxZ + m (Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;I)Ljava/lang/Iterable; randomInCube a method_34848 + p 0 random + p 1 amount + p 2 center + p 3 radius + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; rotate a method_10070 + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/util/stream/Stream; betweenClosedStream a method_23627 + p 0 box + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; betweenClosedStream a method_29715 + p 0 aabb + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; clampLocationWithin a method_60913 + p 1 pos + m (Ljava/util/Queue;ILnet/minecraft/core/BlockPos;)V method_49926 a method_49926 + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29094 a method_29094 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; squareOutSouthEast a method_51686 + p 0 pos + m (Lnet/minecraft/core/BlockPos;III)Ljava/lang/Iterable; withinManhattan a method_25996 + p 0 pos + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/BiConsumer;Ljava/util/function/Predicate;)I breadthFirstTraversal a method_49925 + p 0 startPos + p 1 depth + p 2 visitLimit + p 3 action + p 4 predicate + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/Predicate;)Ljava/util/Optional; findClosestMatch a method_25997 + p 0 pos + p 1 width + p 2 height + p 3 posFilter + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Ljava/lang/Iterable; spiralAround a method_30512 + p 0 center + p 1 size + p 2 rotationDirection + p 3 expansionDirection + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; min a method_58249 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/core/BlockPos; relative a method_30513 + p 1 axis + p 2 amount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; relative a method_10093 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockPos; relative a method_10079 + c Offsets this Vector by the given distance in the specified direction. + p 1 direction + p 2 distance + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;I)Ljava/util/Iterator; method_30514 a method_30514 + m (Lnet/minecraft/core/Position;)Lnet/minecraft/core/BlockPos; containing a method_49638 + p 0 position + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; offset a method_10081 + p 1 vector + m ([I)Lnet/minecraft/core/BlockPos; method_29095 a method_29095 + m ()Lnet/minecraft/world/phys/Vec3; getCenter b method_46558 + m (I)Lnet/minecraft/core/BlockPos; above b method_10086 + c Offset this vector upwards by the given distance. + p 1 distance + m (III)Lnet/minecraft/core/BlockPos; offset b method_10069 + p 1 dx + p 2 dy + p 3 dz + m (IIIIII)Ljava/lang/Iterable; betweenClosed b method_10094 + c Creates an Iterable that returns all positions in the box specified by the given corners. Coordinates must be in order. e.g. x1 <= x2.\n\nThis method uses {@link BlockPos.MutableBlockPos MutableBlockPos} instead of regular BlockPos, which grants better performance. However, the resulting BlockPos instances can only be used inside the iteration loop (as otherwise the value will change), unless {@link #toImmutable()} is called. This method is ideal for searching large areas and only storing a few locations.\n\n@see #betweenClosed(BlockPos, BlockPos)\n@see #betweenClosed(int, int, int, int, int, int) + p 0 x1 + p 1 y1 + p 2 z1 + p 3 x2 + p 4 y2 + p 5 z2 + m (J)I getY b method_10071 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/IntStream; method_29093 b method_29093 + m (Lnet/minecraft/core/BlockPos;III)Ljava/util/stream/Stream; withinManhattanStream b method_25998 + c Returns a stream of positions in a box shape, ordered by closest to furthest. Returns by definition the given position as first element in the stream. + p 0 pos + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; max b method_58250 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; subtract b method_10059 + p 1 vector + m ()Lnet/minecraft/world/phys/Vec3; getBottomCenter c method_61082 + m (I)Lnet/minecraft/core/BlockPos; below c method_10087 + c Offset this vector downwards by the given distance. + p 1 distance + m (IIIIII)Ljava/util/Iterator; method_10073 c method_10073 + m (J)I getZ c method_10083 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/lang/Iterable; betweenClosed c method_10097 + p 0 firstPos + p 1 secondPos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; cross c method_10075 + c Calculate the cross product of this and the given Vector + p 1 vector + m ()Lnet/minecraft/core/BlockPos; above d method_10084 + c Offset this vector 1 unit up + m (I)Lnet/minecraft/core/BlockPos; north d method_10076 + p 1 distance + m (J)Lnet/minecraft/core/BlockPos; of d method_10092 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; betweenClosedStream d method_20437 + p 0 firstPos + p 1 secondPos + m ()Lnet/minecraft/core/BlockPos; below e method_10074 + c Offset this vector 1 unit down + m (I)Lnet/minecraft/core/BlockPos; south e method_10077 + p 1 distance + m (J)J getFlatIndex e method_10091 + p 0 packedPos + m ()Lnet/minecraft/core/BlockPos; north f method_10095 + m (I)Lnet/minecraft/core/BlockPos; west f method_10088 + p 1 distance + m ()Lnet/minecraft/core/BlockPos; south g method_10072 + m (I)Lnet/minecraft/core/BlockPos; east g method_10089 + p 1 distance + m ()Lnet/minecraft/core/BlockPos; west h method_10067 + m (I)Lnet/minecraft/core/BlockPos; atY h method_33096 + p 1 y + m ()Lnet/minecraft/core/BlockPos; east i method_10078 + m ()Lnet/minecraft/core/BlockPos; immutable j method_10062 + c Returns a version of this BlockPos that is guaranteed to be immutable.\n\n

When storing a BlockPos given to you for an extended period of time, make sure you\nuse this in case the value is changed internally.

+ m ()Lnet/minecraft/core/BlockPos$MutableBlockPos; mutable k method_25503 + m (III)V + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/Vec3i;)V + p 1 vector + m ()V +c net/minecraft/core/BlockPos$1 jd$1 net/minecraft/class_2338$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockPos; decode a method_56156 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockPos;)V encode a method_56157 + m ()V +c net/minecraft/core/BlockPos$2 jd$2 net/minecraft/class_2338$2 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; nextPos a field_48405 + f I counter b field_48406 + f I val$limit c field_48407 + f I val$minX d field_48408 + f Lnet/minecraft/util/RandomSource; val$random e field_48409 + f I val$width f field_48410 + f I val$minY g field_48411 + f I val$height h field_48412 + f I val$minZ i field_48413 + f I val$depth j field_48414 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_25999 + m (IILnet/minecraft/util/RandomSource;IIIII)V +c net/minecraft/core/BlockPos$3 jd$3 net/minecraft/class_2338$3 + f I val$originZ a field_48415 + f I val$maxDepth b field_48416 + f I val$reachX c field_48417 + f I val$reachY d field_48418 + f I val$reachZ e field_48419 + f I val$originX f field_48420 + f I val$originY g field_48421 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor h field_23380 + f I currentDepth i field_48422 + f I maxX j field_48423 + f I maxY k field_48424 + f I x l field_48425 + f I y m field_48426 + f Z zMirror n field_48427 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_10106 + m (IIIIIII)V +c net/minecraft/core/BlockPos$4 jd$4 net/minecraft/class_2338$4 + f I val$end a field_48428 + f I val$width b field_48429 + f I val$height c field_48430 + f I val$minX d field_48431 + f I val$minY e field_48432 + f I val$minZ f field_48433 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor g field_48434 + f I index h field_48435 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_30515 + m (IIIIII)V +c net/minecraft/core/BlockPos$5 jd$5 net/minecraft/class_2338$5 + f Lnet/minecraft/core/Direction; val$firstDirection a field_48436 + f Lnet/minecraft/core/Direction; val$secondDirection b field_48437 + f Lnet/minecraft/core/BlockPos; val$center c field_48438 + f I val$radius d field_48439 + f [Lnet/minecraft/core/Direction; directions e field_48440 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor f field_48441 + f I legs g field_48442 + f I leg h field_48443 + f I legSize i field_48444 + f I legIndex j field_48445 + f I lastX k field_48446 + f I lastY l field_48447 + f I lastZ m field_48448 + m ()Lnet/minecraft/core/BlockPos$MutableBlockPos; computeNext a method_27157 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;I)V +c net/minecraft/core/BlockPos$6 jd$6 net/minecraft/class_2338$6 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11006 + f [I $SwitchMap$net$minecraft$core$Direction$Axis b field_23955 + m ()V +c net/minecraft/core/BlockPos$MutableBlockPos jd$a net/minecraft/class_2338$class_2339 + m (Lnet/minecraft/core/AxisCycle;III)Lnet/minecraft/core/BlockPos$MutableBlockPos; set a method_17965 + p 1 cycle + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;II)Lnet/minecraft/core/BlockPos$MutableBlockPos; clamp a method_27158 + p 1 axis + p 2 min + p 3 max + m (Lnet/minecraft/core/Vec3i;III)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_25504 + p 1 vector + p 2 offsetX + p 3 offsetY + p 4 offsetZ + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_25505 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_35831 + p 1 pos + p 2 offset + m (DDD)Lnet/minecraft/core/BlockPos$MutableBlockPos; set b method_10102 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos; move c method_10098 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockPos$MutableBlockPos; move c method_10104 + p 1 direction + p 2 n + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; set d method_10103 + p 1 x + p 2 y + p 3 z + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; move e method_10100 + p 1 x + p 2 y + p 3 z + m (J)Lnet/minecraft/core/BlockPos$MutableBlockPos; set f method_16363 + p 1 packedPos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; set g method_10101 + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; move h method_30927 + p 1 offset + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setX p method_33097 + p 1 x + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setY q method_33098 + p 1 y + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setZ r method_33099 + p 1 z + m ()V + m (III)V + p 1 x + p 2 y + p 3 z + m (DDD)V + p 1 x + p 3 y + p 5 z +c net/minecraft/core/Cloner je net/minecraft/class_8990 + f Lcom/mojang/serialization/Codec; directCodec a field_47486 + m (Ljava/lang/Object;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/Object; clone a method_55277 + p 1 object + p 2 lookupProvider1 + p 3 lookupProvider2 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55278 a method_55278 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55279 b method_55279 + m (Lcom/mojang/serialization/Codec;)V + p 1 directCodec +c net/minecraft/core/Cloner$Factory je$a net/minecraft/class_8990$class_8991 + f Ljava/util/Map; codecs a field_47487 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Cloner; cloner a method_55280 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lnet/minecraft/core/Cloner$Factory; addCodec a method_55281 + p 1 registryKey + p 2 codec + m ()V +c net/minecraft/core/Cursor3D jf net/minecraft/class_3980 + f I TYPE_INSIDE a field_33084 + f I TYPE_FACE b field_33085 + f I TYPE_EDGE c field_33086 + f I TYPE_CORNER d field_33087 + f I originX e field_17683 + f I originY f field_17684 + f I originZ g field_17685 + f I width h field_17686 + f I height i field_17687 + f I depth j field_17688 + f I end k field_23112 + f I index l field_23113 + f I x m field_18233 + f I y n field_18234 + f I z o field_18235 + m ()Z advance a method_17963 + m ()I nextX b method_18671 + m ()I nextY c method_18672 + m ()I nextZ d method_18673 + m ()I getNextType e method_20789 + m (IIIIII)V + p 1 originX + p 2 originY + p 3 originZ + p 4 endX + p 5 endY + p 6 endZ +c net/minecraft/core/DefaultedMappedRegistry jg net/minecraft/class_2348 + f Lnet/minecraft/resources/ResourceLocation; defaultKey b field_11014 + f Lnet/minecraft/core/Holder$Reference; defaultValue c field_11015 + m ()Ljava/util/Optional; method_40219 w method_40219 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Z)V + p 1 defaultKey + p 2 key + p 3 registryLifecycle + p 4 hasIntrusiveHolders +c net/minecraft/core/DefaultedRegistry jh net/minecraft/class_7922 + m ()Lnet/minecraft/resources/ResourceLocation; getDefaultKey b method_10137 +c net/minecraft/core/Direction ji net/minecraft/class_2350 + f Lnet/minecraft/core/Direction; DOWN a field_11033 + f Lnet/minecraft/core/Direction; UP b field_11036 + f Lnet/minecraft/core/Direction; NORTH c field_11043 + f Lnet/minecraft/core/Direction; SOUTH d field_11035 + f Lnet/minecraft/core/Direction; WEST e field_11039 + f Lnet/minecraft/core/Direction; EAST f field_11034 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC g field_29502 + f Lcom/mojang/serialization/Codec; VERTICAL_CODEC h field_35088 + f Ljava/util/function/IntFunction; BY_ID i field_48449 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_48450 + f I data3d k field_11032 + c Ordering index for D-U-N-S-W-E + f I oppositeIndex l field_11031 + c Index of the opposite Direction in the VALUES array + f I data2d m field_11030 + c Ordering index for the HORIZONTALS field (S-W-N-E) + f Ljava/lang/String; name n field_11046 + f Lnet/minecraft/core/Direction$Axis; axis o field_11047 + f Lnet/minecraft/core/Direction$AxisDirection; axisDirection p field_11044 + f Lnet/minecraft/core/Vec3i; normal q field_11042 + c Normalized vector that points in the direction of this Direction + f [Lnet/minecraft/core/Direction; VALUES r field_11040 + f [Lnet/minecraft/core/Direction; BY_3D_DATA s field_11038 + f [Lnet/minecraft/core/Direction; BY_2D_DATA t field_11041 + c All Facings with horizontal axis in order S-W-N-E + f [Lnet/minecraft/core/Direction; $VALUES u field_11037 + m ()Ljava/util/stream/Stream; stream a method_42013 + m (D)Lnet/minecraft/core/Direction; fromYRot a method_10150 + c @return the Direction corresponding to the given angle in degrees (0-360). Out of bounds values are wrapped around. An angle of 0 is SOUTH, an angle of 90 would be WEST. + p 0 angle + m (DDD)Lnet/minecraft/core/Direction; getNearest a method_10142 + p 0 x + p 2 y + p 4 z + m (F)Z isFacingAngle a method_30928 + p 1 degrees + m (FFF)Lnet/minecraft/core/Direction; getNearest a method_10147 + p 0 x + p 1 y + p 2 z + m (I)Lnet/minecraft/core/Direction; from3DDataValue a method_10143 + c @return the {@code Direction} corresponding to the given index (0-5). Out of bounds values are wrapped around. The order is D-U-N-S-W-E.\n@see #get3DDataValue + p 0 index + m (III)Lnet/minecraft/core/Direction; fromDelta a method_50026 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Collection; allShuffled a method_42014 + p 0 random + m (Lnet/minecraft/world/entity/Entity;)[Lnet/minecraft/core/Direction; orderedByNearest a method_10159 + c Gets the {@code Direction} values for the provided entity's\nlooking direction. Dependent on yaw and pitch of entity looking. + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getFacingAxis a method_32801 + p 0 entity + p 1 axis + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/Direction; getNearest a method_58251 + p 0 ois + m (Ljava/lang/String;)Lnet/minecraft/core/Direction; byName a method_10168 + c @return the Direction specified by the given name or null if no such Direction exists + p 0 name + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getClockWise a method_35833 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Direction$AxisDirection;)Lnet/minecraft/core/Direction; fromAxisAndDirection a method_10169 + p 0 axis + p 1 axisDirection + m (Lnet/minecraft/core/Direction$AxisDirection;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; get a method_10156 + p 0 axisDirection + p 1 axis + m (Lnet/minecraft/core/Direction;)Lcom/mojang/serialization/DataResult; verifyVertical a method_38940 + p 0 direction + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[Lnet/minecraft/core/Direction; makeDirectionArray a method_10145 + p 0 first + p 1 second + p 2 third + m (Lorg/joml/Matrix4f;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_23225 + p 0 matrix + p 1 direction + m ()Lorg/joml/Quaternionf; getRotation b method_23224 + m (I)Lnet/minecraft/core/Direction; from2DDataValue b method_10139 + c @return the Direction corresponding to the given horizontal index (0-3). Out of bounds values are wrapped around. The order is S-W-N-E.\n@see #get2DDataValue + p 0 horizontalIndex + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandom b method_10162 + p 0 random + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getCounterClockWise b method_35834 + p 1 axis + m (Lnet/minecraft/core/Direction;)I method_10141 b method_10141 + m (I)[Lnet/minecraft/core/Direction; method_10158 c method_10158 + m (Lnet/minecraft/core/Direction;)Z method_10155 c method_10155 + m ()I get3DDataValue d method_10146 + c @return the index of this Direction (0-5). The order is D-U-N-S-W-E + m (I)[Lnet/minecraft/core/Direction; method_10157 d method_10157 + m (Lnet/minecraft/core/Direction;)I method_10140 d method_10140 + m ()I get2DDataValue e method_10161 + c @return the index of this horizontal facing (0-3). The order is S-W-N-E + m ()Lnet/minecraft/core/Direction$AxisDirection; getAxisDirection f method_10171 + m ()Lnet/minecraft/core/Direction; getOpposite g method_10153 + c @return the opposite Direction (e.g. DOWN => UP) + m ()Lnet/minecraft/core/Direction; getClockWise h method_10170 + c Rotate this Direction around the Y axis clockwise (NORTH => EAST => SOUTH => WEST => NORTH) + m ()Lnet/minecraft/core/Direction; getCounterClockWise i method_10160 + c Rotate this Direction around the Y axis counter-clockwise (NORTH => WEST => SOUTH => EAST => NORTH) + m ()I getStepX j method_10148 + c @return the offset in the x direction + m ()I getStepY k method_10164 + c @return the offset in the y direction + m ()I getStepZ l method_10165 + c @return the offset in the z direction + m ()Lorg/joml/Vector3f; step m method_23955 + m ()Ljava/lang/String; getName n method_10151 + m ()Lnet/minecraft/core/Direction$Axis; getAxis o method_10166 + m ()F toYRot p method_10144 + c @return the angle in degrees corresponding to this Direction.\n@see #fromYRot + m ()Lnet/minecraft/core/Vec3i; getNormal q method_10163 + c @return the normalized Vector that points in the direction of this Direction. + m ()Lnet/minecraft/core/Direction; getClockWiseX r method_35835 + m ()Lnet/minecraft/core/Direction; getCounterClockWiseX s method_35836 + m ()Lnet/minecraft/core/Direction; getClockWiseZ t method_35837 + m ()Lnet/minecraft/core/Direction; getCounterClockWiseZ u method_35838 + m ()Ljava/lang/String; method_49639 v method_49639 + m ()[Lnet/minecraft/core/Direction; $values w method_36931 + m (Ljava/lang/String;IIIILjava/lang/String;Lnet/minecraft/core/Direction$AxisDirection;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Vec3i;)V + p 3 data3d + p 4 oppositeIndex + p 5 data2d + p 6 name + p 7 axisDirection + p 8 axis + p 9 normal + m ()V +c net/minecraft/core/Direction$Axis ji$a net/minecraft/class_2350$class_2351 + f Lnet/minecraft/core/Direction$Axis; X a field_11048 + f Lnet/minecraft/core/Direction$Axis; Y b field_11052 + f Lnet/minecraft/core/Direction$Axis; Z c field_11051 + f [Lnet/minecraft/core/Direction$Axis; VALUES d field_23780 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_25065 + f Ljava/lang/String; name f field_11053 + f [Lnet/minecraft/core/Direction$Axis; $VALUES g field_11049 + m ()Ljava/lang/String; getName a method_10174 + m (DDD)D choose a method_10172 + p 1 x + p 3 y + p 5 z + m (III)I choose a method_10173 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction$Axis; getRandom a method_16699 + p 0 random + m (Ljava/lang/String;)Lnet/minecraft/core/Direction$Axis; byName a method_10177 + c @return the Axis specified by the given name or {@code null} if no such Axis exists + p 0 name + m (Lnet/minecraft/core/Direction;)Z test a method_10176 + p 1 direction + m ()Z isVertical b method_10178 + m ()Z isHorizontal d method_10179 + c @return whether this Axis is on the horizontal plane (true for X and Z) + m ()Lnet/minecraft/core/Direction$Plane; getPlane e method_10180 + c @return this Axis' Plane (VERTICAL for Y, HORIZONTAL for X and Z) + m ()[Lnet/minecraft/core/Direction$Axis; $values f method_36932 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/core/Direction$Axis$1 ji$a$1 net/minecraft/class_2350$class_2351$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$Axis$2 ji$a$2 net/minecraft/class_2350$class_2351$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$Axis$3 ji$a$3 net/minecraft/class_2350$class_2351$3 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$AxisDirection ji$b net/minecraft/class_2350$class_2352 + f Lnet/minecraft/core/Direction$AxisDirection; POSITIVE a field_11056 + f Lnet/minecraft/core/Direction$AxisDirection; NEGATIVE b field_11060 + f I step c field_11059 + f Ljava/lang/String; name d field_11057 + f [Lnet/minecraft/core/Direction$AxisDirection; $VALUES e field_11058 + m ()I getStep a method_10181 + c @return the offset for this AxisDirection. 1 for POSITIVE, -1 for NEGATIVE + m ()Ljava/lang/String; getName b method_35839 + m ()Lnet/minecraft/core/Direction$AxisDirection; opposite c method_26424 + m ()[Lnet/minecraft/core/Direction$AxisDirection; $values d method_36933 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 step + p 4 name + m ()V +c net/minecraft/core/Direction$Plane ji$c net/minecraft/class_2350$class_2353 + f Lnet/minecraft/core/Direction$Plane; HORIZONTAL a field_11062 + f Lnet/minecraft/core/Direction$Plane; VERTICAL b field_11064 + f [Lnet/minecraft/core/Direction; faces c field_11061 + f [Lnet/minecraft/core/Direction$Axis; axis d field_11065 + f [Lnet/minecraft/core/Direction$Plane; $VALUES e field_11063 + m ()Ljava/util/stream/Stream; stream a method_29716 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandomDirection a method_10183 + p 1 random + m (Lnet/minecraft/core/Direction;)Z test a method_10182 + p 1 direction + m ()I length b method_57092 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction$Axis; getRandomAxis b method_33465 + p 1 random + m ()[Lnet/minecraft/core/Direction$Plane; $values c method_36934 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy c method_43342 + p 1 random + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;[Lnet/minecraft/core/Direction$Axis;)V + p 3 faces + p 4 axis + m ()V +c net/minecraft/core/Direction8 jj net/minecraft/class_2355 + f Lnet/minecraft/core/Direction8; NORTH a field_11069 + f Lnet/minecraft/core/Direction8; NORTH_EAST b field_11074 + f Lnet/minecraft/core/Direction8; EAST c field_11075 + f Lnet/minecraft/core/Direction8; SOUTH_EAST d field_11070 + f Lnet/minecraft/core/Direction8; SOUTH e field_11073 + f Lnet/minecraft/core/Direction8; SOUTH_WEST f field_11068 + f Lnet/minecraft/core/Direction8; WEST g field_11072 + f Lnet/minecraft/core/Direction8; NORTH_WEST h field_11076 + f Ljava/util/Set; directions i field_11078 + f Lnet/minecraft/core/Vec3i; step j field_37995 + f [Lnet/minecraft/core/Direction8; $VALUES k field_11071 + m ()Ljava/util/Set; getDirections a method_10186 + m ()I getStepX b method_42015 + m ()I getStepZ c method_42016 + m ()[Lnet/minecraft/core/Direction8; $values d method_36935 + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;)V + p 3 directions + m ()V +c net/minecraft/core/FrontAndTop jk net/minecraft/class_5000 + f Lnet/minecraft/core/FrontAndTop; DOWN_EAST a field_23381 + f Lnet/minecraft/core/FrontAndTop; DOWN_NORTH b field_23382 + f Lnet/minecraft/core/FrontAndTop; DOWN_SOUTH c field_23383 + f Lnet/minecraft/core/FrontAndTop; DOWN_WEST d field_23384 + f Lnet/minecraft/core/FrontAndTop; UP_EAST e field_23385 + f Lnet/minecraft/core/FrontAndTop; UP_NORTH f field_23386 + f Lnet/minecraft/core/FrontAndTop; UP_SOUTH g field_23387 + f Lnet/minecraft/core/FrontAndTop; UP_WEST h field_23388 + f Lnet/minecraft/core/FrontAndTop; WEST_UP i field_23389 + f Lnet/minecraft/core/FrontAndTop; EAST_UP j field_23390 + f Lnet/minecraft/core/FrontAndTop; NORTH_UP k field_23391 + f Lnet/minecraft/core/FrontAndTop; SOUTH_UP l field_23392 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; LOOKUP_TOP_FRONT m field_23393 + f Ljava/lang/String; name n field_23394 + f Lnet/minecraft/core/Direction; top o field_23395 + f Lnet/minecraft/core/Direction; front p field_23396 + f [Lnet/minecraft/core/FrontAndTop; $VALUES q field_23397 + m ()Lnet/minecraft/core/Direction; front a method_26426 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_35840 a method_35840 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/FrontAndTop; fromFrontAndTop a method_26425 + p 0 front + p 1 top + m ()Lnet/minecraft/core/Direction; top b method_26428 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)I lookupKey b method_26427 + p 0 front + p 1 top + m ()[Lnet/minecraft/core/FrontAndTop; $values d method_36936 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)V + p 3 name + p 4 front + p 5 top + m ()V +c net/minecraft/core/GlobalPos jl net/minecraft/class_4208 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_49583 + f Lcom/mojang/serialization/Codec; CODEC b field_25066 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_48451 + f Lnet/minecraft/resources/ResourceKey; dimension d comp_2207 + f Lnet/minecraft/core/BlockPos; pos e comp_2208 + m ()Lnet/minecraft/resources/ResourceKey; dimension a comp_2207 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/GlobalPos; of a method_19443 + p 0 dimension + p 1 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29096 a method_29096 + m ()Lnet/minecraft/core/BlockPos; pos b comp_2208 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)V + p 1 dimension + p 2 pos + m ()V +c net/minecraft/core/Holder jm net/minecraft/class_6880 + m ()Ljava/lang/Object; value a comp_349 + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_40225 + p 1 resourceKey + m (Lnet/minecraft/resources/ResourceLocation;)Z is a method_40226 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Z is a method_40220 + p 1 tagKey + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder; direct a method_40223 + p 0 value + m (Ljava/util/function/Predicate;)Z is a method_40224 + p 1 predicate + m (Lnet/minecraft/core/Holder;)Z is a method_55838 + p 1 holder + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46745 + p 1 owner + m ()Z isBound b method_40227 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55839 b method_55839 + m ()Ljava/util/stream/Stream; tags c method_40228 + m ()Lcom/mojang/datafixers/util/Either; unwrap d method_40229 + m ()Ljava/util/Optional; unwrapKey e method_40230 + m ()Lnet/minecraft/core/Holder$Kind; kind f method_40231 + m ()Ljava/lang/String; getRegisteredName g method_55840 +c net/minecraft/core/Holder$Direct jm$a net/minecraft/class_6880$class_6881 + f Ljava/lang/Object; value a comp_349 + m (Ljava/lang/Object;)V +c net/minecraft/core/Holder$Kind jm$b net/minecraft/class_6880$class_6882 + f Lnet/minecraft/core/Holder$Kind; REFERENCE a field_36446 + f Lnet/minecraft/core/Holder$Kind; DIRECT b field_36447 + f [Lnet/minecraft/core/Holder$Kind; $VALUES c field_36448 + m ()[Lnet/minecraft/core/Holder$Kind; $values a method_40232 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/Holder$Reference jm$c net/minecraft/class_6880$class_6883 + f Lnet/minecraft/core/HolderOwner; owner a field_40930 + f Ljava/util/Set; tags b field_36450 + f Lnet/minecraft/core/Holder$Reference$Type; type c field_36451 + f Lnet/minecraft/resources/ResourceKey; key d field_36452 + f Ljava/lang/Object; value e field_36453 + m (Ljava/util/Collection;)V bindTags a method_40235 + p 1 tags + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; createStandAlone a method_40234 + p 0 owner + p 1 key + m (Lnet/minecraft/core/HolderOwner;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; createIntrusive a method_40233 + p 0 owner + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)V bindKey b method_45917 + p 1 key + m (Ljava/lang/Object;)V bindValue b method_45918 + p 1 value + m ()Lnet/minecraft/resources/ResourceKey; key h method_40237 + m (Lnet/minecraft/core/Holder$Reference$Type;Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)V + p 1 type + p 2 owner + p 3 key + p 4 value +c net/minecraft/core/Holder$Reference$Type jm$c$a net/minecraft/class_6880$class_6883$class_6884 + f Lnet/minecraft/core/Holder$Reference$Type; STAND_ALONE a field_36454 + f Lnet/minecraft/core/Holder$Reference$Type; INTRUSIVE b field_36455 + f [Lnet/minecraft/core/Holder$Reference$Type; $VALUES c field_36456 + m ()[Lnet/minecraft/core/Holder$Reference$Type; $values a method_40238 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/HolderGetter jn net/minecraft/class_7871 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_46746 + p 1 resourceKey + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; get a method_46733 + p 1 tagKey + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrThrow b method_46747 + p 1 resourceKey + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; getOrThrow b method_46735 + p 1 tagKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46748 c method_46748 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/IllegalStateException; method_46749 c method_46749 +c net/minecraft/core/HolderGetter$Provider jn$a net/minecraft/class_7871$class_7872 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46750 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_58561 + p 1 registryKey + p 2 key + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderGetter;)Ljava/util/Optional; method_58562 a method_58562 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderGetter; lookupOrThrow b method_46751 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46752 c method_46752 +c net/minecraft/core/HolderLookup jo net/minecraft/class_7225 + m ()Ljava/util/stream/Stream; listElements b method_42017 + m ()Ljava/util/stream/Stream; listElementIds c method_46754 + m ()Ljava/util/stream/Stream; listTags d method_42020 + m ()Ljava/util/stream/Stream; listTagIds e method_46755 +c net/minecraft/core/HolderLookup$Provider jo$a net/minecraft/class_7225$class_7874 + m ()Ljava/util/stream/Stream; listRegistries a method_55282 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46759 + p 1 registryKey + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/resources/RegistryOps; createSerializationContext a method_57093 + p 1 ops + m (Ljava/util/stream/Stream;)Lnet/minecraft/core/HolderLookup$Provider; create a method_46761 + p 0 lookupStream + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_46760 a method_46760 + m ()Lnet/minecraft/core/HolderGetter$Provider; asGetterLookup b method_46758 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup$RegistryLookup; lookupOrThrow b method_46762 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46763 e method_46763 +c net/minecraft/core/HolderLookup$Provider$1 jo$a$1 net/minecraft/class_7225$class_7874$1 + f Lnet/minecraft/core/HolderLookup$Provider; field_40934 a field_40934 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderGetter; method_46764 a method_46764 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/core/HolderLookup$Provider$2 jo$a$2 net/minecraft/class_7225$class_7874$2 + f Ljava/util/Map; val$map a field_40935 + m (Ljava/util/Map;)V +c net/minecraft/core/HolderLookup$RegistryLookup jo$b net/minecraft/class_7225$class_7226 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/core/HolderLookup$RegistryLookup; filterFeatures a method_45919 + p 1 enabledFeatures + m (Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/lang/Object;)Z method_45920 a method_45920 + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/HolderLookup$RegistryLookup; filterElements a method_56882 + p 1 predicate + m ()Lnet/minecraft/resources/ResourceKey; key f method_46765 + m ()Lcom/mojang/serialization/Lifecycle; registryLifecycle g method_46766 +c net/minecraft/core/HolderLookup$RegistryLookup$1 jo$b$1 net/minecraft/class_7225$class_7226$1 + f Ljava/util/function/Predicate; val$filter a field_40931 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; field_40932 b field_40932 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/Holder$Reference;)Z method_46756 a method_46756 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/Holder$Reference;)Z method_46757 b method_46757 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Ljava/util/function/Predicate;)V +c net/minecraft/core/HolderLookup$RegistryLookup$Delegate jo$b$a net/minecraft/class_7225$class_7226$class_7875 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; parent a method_46725 +c net/minecraft/core/HolderOwner jp net/minecraft/class_7876 + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46767 + p 1 owner +c net/minecraft/core/HolderSet jq net/minecraft/class_6885 + m ()Ljava/util/stream/Stream; stream a method_40239 + m (I)Lnet/minecraft/core/Holder; get a method_40240 + p 1 index + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomElement a method_40243 + p 1 random + m (Ljava/util/List;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40242 + p 0 contents + m (Ljava/util/function/Function;Ljava/util/Collection;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40244 + p 0 holderFactory + p 1 values + m (Ljava/util/function/Function;[Ljava/lang/Object;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40245 + p 0 holderFactory + p 1 values + m (Lnet/minecraft/core/Holder;)Z contains a method_40241 + p 1 holder + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46768 + p 1 owner + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; emptyNamed a method_45924 + p 0 owner + p 1 key + m ([Lnet/minecraft/core/Holder;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40246 + p 0 contents + m ()I size b method_40247 + m ()Lcom/mojang/datafixers/util/Either; unwrap c method_40248 + m ()Ljava/util/Optional; unwrapKey d method_45925 + m ()Lnet/minecraft/core/HolderSet; empty e method_58563 +c net/minecraft/core/HolderSet$1 jq$1 net/minecraft/class_6885$1 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)V +c net/minecraft/core/HolderSet$Direct jq$a net/minecraft/class_6885$class_6886 + f Lnet/minecraft/core/HolderSet$Direct; EMPTY a field_50070 + f Ljava/util/List; contents b field_36457 + f Ljava/util/Set; contentsSet c field_36458 + m (Ljava/util/List;)V + p 1 contents + m ()V +c net/minecraft/core/HolderSet$ListBacked jq$b net/minecraft/class_6885$class_6887 + m ()Ljava/util/List; contents f method_40249 + m ()V +c net/minecraft/core/HolderSet$Named jq$c net/minecraft/class_6885$class_6888 + f Lnet/minecraft/core/HolderOwner; owner a field_40936 + f Lnet/minecraft/tags/TagKey; key b field_36459 + f Ljava/util/List; contents c field_36460 + m (Ljava/util/List;)V bind b method_40250 + p 1 contents + m ()Lnet/minecraft/tags/TagKey; key g method_40251 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)V + p 1 owner + p 2 key +c net/minecraft/core/IdMap jr net/minecraft/class_2359 + f I DEFAULT a field_34829 + m (I)Ljava/lang/Object; byId a method_10200 + p 1 id + m (Ljava/lang/Object;)I getId a method_10206 + c @return the integer ID used to identify the given object + p 1 value + m (I)Ljava/lang/Object; byIdOrThrow b method_39974 + p 1 id + m ()I size c method_10204 + m (Ljava/lang/Object;)I getIdOrThrow c method_56158 + p 1 value +c net/minecraft/core/IdMapper js net/minecraft/class_2361 + f I nextId b field_11099 + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; tToId c field_11100 + f Ljava/util/List; idToT d field_11098 + m (Ljava/lang/Object;I)V addMapping a method_10203 + p 1 key + p 2 value + m (Ljava/lang/Object;)V add b method_10205 + p 1 key + m (I)Z contains c method_35841 + p 1 id + m ()V + m (I)V + p 1 expectedSize +c net/minecraft/core/LayeredRegistryAccess jt net/minecraft/class_7780 + f Ljava/util/List; keys a field_40581 + f Ljava/util/List; values b field_40582 + f Lnet/minecraft/core/RegistryAccess$Frozen; composite c field_40583 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; compositeAccess a method_45926 + m (II)Lnet/minecraft/core/RegistryAccess$Frozen; getCompositeAccessForLayers a method_45927 + p 1 startIndex + p 2 endIndex + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getLayer a method_45928 + p 1 key + m (Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; replaceFrom a method_45929 + p 1 key + p 2 values + m (Ljava/lang/Object;[Lnet/minecraft/core/RegistryAccess$Frozen;)Lnet/minecraft/core/LayeredRegistryAccess; replaceFrom a method_45930 + p 1 key + p 2 values + m (Ljava/util/List;)Ljava/util/List; method_45931 a method_45931 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_45932 a method_45932 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess;)V method_45933 a method_45933 + m (Ljava/util/stream/Stream;)Ljava/util/Map; collectRegistries a method_45934 + p 0 accesses + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getAccessForLoading b method_45935 + p 1 key + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getAccessFrom c method_45936 + p 1 key + m (Ljava/lang/Object;)I getLayerIndexOrThrow d method_45937 + p 1 key + m (Ljava/util/List;)V + p 1 keys + m (Ljava/util/List;Ljava/util/List;)V + p 1 keys + p 2 values +c net/minecraft/core/MappedRegistry ju net/minecraft/class_2370 + f Lorg/slf4j/Logger; LOGGER b field_36635 + f Lnet/minecraft/resources/ResourceKey; key c field_41126 + f Lit/unimi/dsi/fastutil/objects/ObjectList; byId d field_26682 + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; toId e field_26683 + f Ljava/util/Map; byLocation f field_11107 + f Ljava/util/Map; byKey g field_25067 + f Ljava/util/Map; byValue h field_36461 + f Ljava/util/Map; registrationInfos i field_49135 + f Lcom/mojang/serialization/Lifecycle; registryLifecycle j field_26732 + f Ljava/util/Map; tags k field_36462 + f Z frozen l field_36463 + f Ljava/util/Map; unregisteredIntrusiveHolders m field_40584 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup n field_41127 + f Ljava/lang/Object; tagAdditionLock o field_51521 + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_39665 a method_39665 + m (Ljava/lang/Object;Lnet/minecraft/core/Holder$Reference;)V method_45938 a method_45938 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_41199 a method_41199 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;Ljava/util/List;)V method_40258 a method_40258 + m (Ljava/util/Map;Lnet/minecraft/core/Holder$Reference;)V method_40259 a method_40259 + m (Lnet/minecraft/core/Holder$Reference;)Ljava/lang/Object; getValueFromNullable a method_40253 + p 0 holder + m (Lnet/minecraft/core/HolderSet$Named;)V method_40255 a method_40255 + m ()V validateWrite b method_45939 + m (Ljava/util/Map$Entry;)Z method_40256 b method_40256 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;Ljava/util/List;)V method_40263 b method_40263 + m (Lnet/minecraft/core/Holder$Reference;)V method_40261 b method_40261 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_40262 c method_40262 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; createTag d method_40562 + p 1 key + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40563 e method_40563 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; method_40271 g method_40271 + m (Lnet/minecraft/resources/ResourceKey;)V validateWrite h method_40274 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrCreateHolderOrThrow i method_44298 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_44299 j method_44299 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_56594 k method_56594 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;)V + p 1 key + p 2 registryLifecycle + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Z)V + p 1 key + p 2 registryLifecycle + p 3 hasIntrusiveHolders + m ()V +c net/minecraft/core/MappedRegistry$1 ju$1 net/minecraft/class_2370$1 + f Lnet/minecraft/core/MappedRegistry; field_36468 a field_36468 + m (Lnet/minecraft/core/MappedRegistry;)V +c net/minecraft/core/MappedRegistry$2 ju$2 net/minecraft/class_2370$2 + f Lnet/minecraft/core/MappedRegistry; field_40937 a field_40937 + m (Lnet/minecraft/core/MappedRegistry;)V +c net/minecraft/core/NonNullList jv net/minecraft/class_2371 + f Ljava/util/List; list a field_11115 + f Ljava/lang/Object; defaultValue b field_11116 + m ()Lnet/minecraft/core/NonNullList; create a method_10211 + m (I)Lnet/minecraft/core/NonNullList; createWithCapacity a method_37434 + p 0 initialCapacity + m (ILjava/lang/Object;)Lnet/minecraft/core/NonNullList; withSize a method_10213 + c Creates a new NonNullList with fixed size and default value. The list will be filled with the default value. + p 0 size + p 1 defaultValue + m (Ljava/lang/Object;[Ljava/lang/Object;)Lnet/minecraft/core/NonNullList; of a method_10212 + p 0 defaultValue + p 1 elements + m (Ljava/util/List;Ljava/lang/Object;)V + p 1 list + p 2 defaultValue +c net/minecraft/core/Position jw net/minecraft/class_2374 + m ()D x a method_10216 + m ()D y b method_10214 + m ()D z c method_10215 +c net/minecraft/core/QuartPos jx net/minecraft/class_5742 + c Used to convert between chunk positions (referred to here as sections, from {@link net.minecraft.world.level.chunk.LevelChunkSection}), block positions, and quart positions.\nThe latter is used to query biomes from a noise biome source. + f I BITS a field_33089 + f I SIZE b field_33090 + f I MASK c field_34830 + f I SECTION_TO_QUARTS_BITS d field_33091 + m (I)I fromBlock a method_33100 + p 0 value + m (I)I quartLocal b method_39920 + p 0 value + m (I)I toBlock c method_33101 + p 0 value + m (I)I fromSection d method_33102 + p 0 value + m (I)I toSection e method_33103 + p 0 value + m ()V +c net/minecraft/core/RegistrationInfo jy net/minecraft/class_9248 + f Lnet/minecraft/core/RegistrationInfo; BUILT_IN a field_49136 + f Ljava/util/Optional; knownPackInfo b comp_2354 + f Lcom/mojang/serialization/Lifecycle; lifecycle c comp_2355 + m ()Ljava/util/Optional; knownPackInfo a comp_2354 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_2355 + m (Ljava/util/Optional;Lcom/mojang/serialization/Lifecycle;)V + m ()V +c net/minecraft/core/Registry jz net/minecraft/class_2378 + m ()Ljava/util/Optional; getAny a method_60385 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/Object; get a method_29107 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; get a method_10223 + p 1 name + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; getOrCreateTag a method_40260 + p 1 key + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomElementOf a method_56159 + p 1 key + p 2 random + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom a method_10240 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/HolderSet$Named;)Ljava/util/Optional; method_56160 a method_56160 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; method_34028 a method_34028 + m (Ljava/util/Map;)V bindTags a method_40257 + p 1 tagMap + m (Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/serialization/Lifecycle; method_57060 a method_57060 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/DataResult; safeCastToReference a method_57061 + p 1 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Ljava/lang/Object; register a method_39197 + p 0 registry + p 1 key + p 2 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)Ljava/lang/Object; register a method_10230 + p 0 registry + p 1 name + p 2 value + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; register a method_10226 + p 0 registry + p 1 name + p 2 value + m ()Lcom/mojang/serialization/Codec; referenceHolderWithLifecycle b method_57059 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getHolder b method_40264 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getOptional b method_17966 + p 1 name + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; getTag b method_40266 + p 1 key + m (Ljava/lang/Object;)Lnet/minecraft/resources/ResourceLocation; getKey b method_10221 + c @return the name used to identify the given object within this registry or {@code null} if the object is not within this registry + p 1 value + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_57062 b method_57062 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_57063 b method_57063 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47984 + p 0 registry + p 1 key + p 2 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47985 + p 0 registry + p 1 name + p 2 value + m (I)Ljava/util/Optional; getHolder c method_40265 + p 1 id + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; registrationInfo c method_57058 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getHolder c method_55841 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/Iterable; getTagOrEmpty c method_40286 + p 1 key + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_57064 c method_57064 + m ()Lnet/minecraft/resources/ResourceKey; key d method_30517 + m (Lnet/minecraft/resources/ResourceKey;)Z containsKey d method_35842 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Z containsKey d method_10250 + p 1 name + m (Ljava/lang/Object;)Ljava/util/Optional; getResourceKey d method_29113 + p 1 value + m ()Lcom/mojang/serialization/Lifecycle; registryLifecycle e method_31138 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getOptional e method_31189 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_57065 e method_57065 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder; wrapAsHolder e method_47983 + p 1 value + m ()Ljava/util/Set; keySet f method_10235 + c @return all keys in this registry + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/Object; getOrThrow f method_31140 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_57066 f method_57066 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; createIntrusiveHolder f method_40269 + p 1 value + m ()Ljava/util/Set; registryKeySet g method_42021 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getHolderOrThrow g method_40290 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57067 g method_57067 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_47448 g method_47448 + m ()Ljava/util/Set; entrySet h method_29722 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_47446 h method_47446 + m ()Ljava/util/stream/Stream; holders i method_40270 + m ()Ljava/util/stream/Stream; getTags j method_40272 + m ()Ljava/util/stream/Stream; getTagNames k method_40273 + m ()Lnet/minecraft/core/Registry; freeze m method_40276 + m ()V resetTags n method_40278 + m ()Lnet/minecraft/core/HolderOwner; holderOwner p method_46770 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; asLookup q method_46771 + m ()Lcom/mojang/serialization/Codec; byNameCodec r method_39673 + m ()Lcom/mojang/serialization/Codec; holderByNameCodec s method_40294 + m ()Ljava/util/stream/Stream; stream t method_10220 + m ()Lnet/minecraft/core/IdMap; asHolderIdMap u method_40295 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; asTagAddingLookup v method_46772 +c net/minecraft/core/Registry$1 jz$1 net/minecraft/class_2378$1 + f Lnet/minecraft/core/Registry; field_40939 b field_40939 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_46773 a method_46773 + m (Lnet/minecraft/core/Holder;)I getId a method_46774 + c @return the integer ID used to identify the given object + p 1 value + m (I)Lnet/minecraft/core/Holder; byId c method_46775 + p 1 id + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/Registry$2 jz$2 net/minecraft/class_2378$2 + f Lnet/minecraft/core/Registry; field_40940 a field_40940 + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryAccess ka net/minecraft/class_5455 + c The root level registry, essentially a registry of registries. It is also an access point, hence the name, for other dynamic registries. + f Lorg/slf4j/Logger; LOGGER a field_25918 + f Lnet/minecraft/core/RegistryAccess$Frozen; EMPTY b field_40585 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/RegistryAccess$Frozen; fromRegistryOfRegistries a method_40302 + p 0 registryOfRegistries + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Lcom/mojang/serialization/Lifecycle; method_41200 a method_41200 + m ()Ljava/util/stream/Stream; registries c method_40311 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; registry c method_33310 + c Get the registry owned by this registry access by the given key. If it doesn't exist, the default registry of registries is queried instead, which contains static registries such as blocks.\nThe returned registry can not guarantee that it is writable here, so the return type is widened to {@code Registry} instead. + p 1 registryKey + m ()Lnet/minecraft/core/RegistryAccess$Frozen; freeze d method_40316 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Registry; registryOrThrow d method_30530 + c A variant of {@link #registry(ResourceKey)} that throws if the registry does not exist. + p 1 registryKey + m ()Lcom/mojang/serialization/Lifecycle; allRegistriesLifecycle e method_41201 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_30534 f method_30534 + m ()V +c net/minecraft/core/RegistryAccess$1 ka$1 net/minecraft/class_5455$1 + f Lnet/minecraft/core/Registry; val$registries c field_36470 + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryAccess$1FrozenAccess ka$a net/minecraft/class_5455$class_7781 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)V + p 2 registries +c net/minecraft/core/RegistryAccess$Frozen ka$b net/minecraft/class_5455$class_6890 +c net/minecraft/core/RegistryAccess$ImmutableRegistryAccess ka$c net/minecraft/class_5455$class_6891 + f Ljava/util/Map; registries c field_36471 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Registry; method_45942 b method_45942 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Registry; method_45943 c method_45943 + m (Ljava/util/List;)V + p 1 registries + m (Ljava/util/Map;)V + p 1 registries + m (Ljava/util/stream/Stream;)V + p 1 registries +c net/minecraft/core/RegistryAccess$RegistryEntry ka$d net/minecraft/class_5455$class_6892 + f Lnet/minecraft/resources/ResourceKey; key a comp_350 + f Lnet/minecraft/core/Registry; value b comp_351 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_350 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;)Lnet/minecraft/core/RegistryAccess$RegistryEntry; fromUntyped a method_40331 + p 0 key + p 1 value + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/RegistryAccess$RegistryEntry; fromMapEntry a method_40330 + p 0 mapEntry + m ()Lnet/minecraft/core/Registry; value b comp_351 + m ()Lnet/minecraft/core/RegistryAccess$RegistryEntry; freeze c method_40332 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryCodecs kb net/minecraft/class_6895 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; homogeneousList a method_40340 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; homogeneousList a method_40341 + p 0 registryKey + p 1 elementCodec + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; homogeneousList a method_40343 + p 0 registryKey + p 1 elementCodec + p 2 disallowInline + m (Lnet/minecraft/resources/ResourceKey;Z)Lcom/mojang/serialization/Codec; homogeneousList a method_40349 + p 0 registryKey + p 1 disallowInline + m ()V +c net/minecraft/core/RegistrySetBuilder kc net/minecraft/class_7877 + f Ljava/util/List; entries a field_40941 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/HolderOwner;Ljava/util/Map;)Lnet/minecraft/core/HolderLookup$RegistryLookup; lookupFromMap a method_55283 + p 0 registryKey + p 1 registryLifecycle + p 2 owner + p 3 elements + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)Lnet/minecraft/core/RegistrySetBuilder; add a method_46776 + p 1 key + p 2 lifecycle + p 3 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)Lnet/minecraft/core/RegistrySetBuilder; add a method_46777 + p 1 key + p 2 bootstrap + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceKey;)V method_55293 a method_55293 + m (Ljava/util/Map;Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/Holder$Reference;)V method_55294 a method_55294 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_55288 a method_55288 + m (Ljava/util/Map;Lnet/minecraft/core/RegistrySetBuilder$RegistryContents;)V method_49352 a method_49352 + m (Ljava/util/Map;Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_57094 a method_57094 + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceKey;)Z method_55295 a method_55295 + m (Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/Object; method_55284 a method_55284 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderGetter; wrapContextLookup a method_46778 + p 0 owner + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_55285 a method_55285 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Lnet/minecraft/core/HolderLookup$RegistryLookup; createLazyFullPatchedRegistries a method_55286 + p 1 owner + p 2 clonerFactory + p 3 registryKey + p 4 registryLookupProvider + p 5 lookupProvider + p 6 object + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/Map;Lnet/minecraft/core/Holder$Reference;)V method_55287 a method_55287 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/HolderLookup$Provider; build a method_46780 + p 1 registryAccess + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/Cloner$Factory;)Lnet/minecraft/core/RegistrySetBuilder$PatchedRegistries; buildPatch a method_46781 + p 1 registryAccess + p 2 lookupProvider + p 3 clonerFactory + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/Cloner$Factory;Ljava/util/Map;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; createLazyFullPatchedRegistries a method_55289 + p 1 registry + p 2 lookupProvider + p 3 clonerFactory + p 4 registries + p 5 registryLookupProvider + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryContents;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_55291 a method_55291 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)Lnet/minecraft/core/RegistrySetBuilder$RegistryContents; method_46782 a method_46782 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_55292 a method_55292 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)Lnet/minecraft/core/HolderLookup$Provider; buildProviderWithContext a method_55290 + p 0 owner + p 1 registryAccess + p 2 lookups + m (Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/Object; method_55296 b method_55296 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/RegistrySetBuilder$BuildState; createState b method_46784 + p 1 registryAccess + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_46785 b method_46785 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)V method_46786 c method_46786 + m ()V +c net/minecraft/core/RegistrySetBuilder$1 kc$1 net/minecraft/class_7877$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$original a field_40942 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/core/RegistrySetBuilder$2 kc$2 net/minecraft/class_7877$2 + f Lnet/minecraft/resources/ResourceKey; val$key a field_47488 + f Lcom/mojang/serialization/Lifecycle; val$lifecycle b field_47489 + f Ljava/util/Map; val$entries c field_40947 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$3 kc$3 net/minecraft/class_7877$3 + f Ljava/util/Map; val$lookups a field_49167 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getEntry c method_57095 + p 1 registryKey + m (Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$3$1 kc$3$1 net/minecraft/class_7877$3$1 + f Lnet/minecraft/core/RegistrySetBuilder$3; field_49168 a field_49168 + m (Lnet/minecraft/core/RegistrySetBuilder$3;)V +c net/minecraft/core/RegistrySetBuilder$1Entry kc$a net/minecraft/class_7877$class_9256 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup a comp_2360 + f Lnet/minecraft/resources/RegistryOps$RegistryInfo; opsInfo b comp_2361 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup a comp_2360 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/RegistrySetBuilder$1Entry; createForContextRegistry a method_57096 + p 0 lookup + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/RegistrySetBuilder$1Entry; createForNewRegistry a method_57097 + p 0 owner + p 1 lookup + m ()Lnet/minecraft/resources/RegistryOps$RegistryInfo; opsInfo b comp_2361 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/resources/RegistryOps$RegistryInfo;)V +c net/minecraft/core/RegistrySetBuilder$BuildState kc$b net/minecraft/class_7877$class_7878 + f Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner; owner a comp_1135 + f Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup; lookup b comp_1136 + f Ljava/util/Map; registries c comp_1137 + f Ljava/util/Map; registeredValues d comp_1138 + f Ljava/util/List; errors e comp_1139 + m ()Lnet/minecraft/data/worldgen/BootstrapContext; bootstrapContext a method_46787 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue;)V method_55297 a method_55297 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_46790 a method_46790 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup;Lnet/minecraft/resources/ResourceKey;)V method_46791 a method_46791 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)Lnet/minecraft/core/RegistrySetBuilder$BuildState; create a method_46796 + p 0 registryAccess + p 1 registries + m ()V reportUnclaimedRegisteredValues b method_55298 + m ()V reportNotCollectedHolders c method_55299 + m ()V throwOnError d method_46798 + m ()Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner; owner e comp_1135 + m ()Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup; lookup f comp_1136 + m ()Ljava/util/Map; registries g comp_1137 + m ()Ljava/util/Map; registeredValues h comp_1138 + m ()Ljava/util/List; errors i comp_1139 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup;Ljava/util/Map;Ljava/util/Map;Ljava/util/List;)V +c net/minecraft/core/RegistrySetBuilder$BuildState$1 kc$b$1 net/minecraft/class_7877$class_7878$1 + f Lnet/minecraft/core/RegistrySetBuilder$BuildState; field_40943 a field_40943 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)V +c net/minecraft/core/RegistrySetBuilder$EmptyTagLookup kc$c net/minecraft/class_7877$class_7880 + f Lnet/minecraft/core/HolderOwner; owner d field_40945 + m (Lnet/minecraft/core/HolderOwner;)V + p 1 owner +c net/minecraft/core/RegistrySetBuilder$EmptyTagLookupWrapper kc$d net/minecraft/class_7877$class_9257 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; parent a field_49169 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V + p 1 owner + p 2 parent +c net/minecraft/core/RegistrySetBuilder$EmptyTagRegistryLookup kc$e net/minecraft/class_7877$class_9258 + m (Lnet/minecraft/core/HolderOwner;)V +c net/minecraft/core/RegistrySetBuilder$LazyHolder kc$f net/minecraft/class_7877$class_8992 + f Ljava/util/function/Supplier; supplier a field_47490 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;)V + p 1 owner + p 2 key +c net/minecraft/core/RegistrySetBuilder$PatchedRegistries kc$g net/minecraft/class_7877$class_8993 + f Lnet/minecraft/core/HolderLookup$Provider; full a comp_2113 + f Lnet/minecraft/core/HolderLookup$Provider; patches b comp_2114 + m ()Lnet/minecraft/core/HolderLookup$Provider; full a comp_2113 + m ()Lnet/minecraft/core/HolderLookup$Provider; patches b comp_2114 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/core/RegistrySetBuilder$RegisteredValue kc$h net/minecraft/class_7877$class_7881 + f Ljava/lang/Object; value a comp_1140 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1141 + m ()Ljava/lang/Object; value a comp_1140 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1141 + m (Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)V +c net/minecraft/core/RegistrySetBuilder$RegistryBootstrap kc$i net/minecraft/class_7877$class_7882 +c net/minecraft/core/RegistrySetBuilder$RegistryContents kc$j net/minecraft/class_7877$class_7883 + f Lnet/minecraft/resources/ResourceKey; key a comp_1305 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1306 + f Ljava/util/Map; values c comp_1143 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1305 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;)Lnet/minecraft/core/HolderLookup$RegistryLookup; buildAsLookup a method_46802 + p 1 owner + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Ljava/util/Map$Entry;)Lnet/minecraft/core/Holder$Reference; method_55301 a method_55301 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1306 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Ljava/util/Map$Entry;)Lnet/minecraft/core/Holder$Reference; method_55302 b method_55302 + m ()Ljava/util/Map; values c comp_1143 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$RegistryStub kc$k net/minecraft/class_7877$class_7884 + f Lnet/minecraft/resources/ResourceKey; key a comp_1144 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1145 + f Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap; bootstrap c comp_1146 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1144 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)Lnet/minecraft/core/RegistrySetBuilder$RegistryContents; collectRegisteredValues a method_46805 + p 1 buildState + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1145 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)V apply b method_46806 + p 1 state + m ()Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap; bootstrap c comp_1146 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)V +c net/minecraft/core/RegistrySetBuilder$UniversalLookup kc$l net/minecraft/class_7877$class_7885 + f Ljava/util/Map; holders a field_40948 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrCreate c method_46807 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_46808 d method_46808 + m (Lnet/minecraft/core/HolderOwner;)V + p 1 owner +c net/minecraft/core/RegistrySetBuilder$UniversalOwner kc$m net/minecraft/class_7877$class_7879 + m ()Lnet/minecraft/core/HolderOwner; cast a method_55300 + m ()V +c net/minecraft/core/RegistrySetBuilder$ValueAndHolder kc$n net/minecraft/class_7877$class_7886 + f Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue; value a comp_1147 + f Ljava/util/Optional; holder b comp_1148 + m ()Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue; value a comp_1147 + m ()Ljava/util/Optional; holder b comp_1148 + m (Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue;Ljava/util/Optional;)V +c net/minecraft/core/RegistrySynchronization kd net/minecraft/class_7782 + f Ljava/util/Set; NETWORKABLE_REGISTRIES a field_48771 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;)V packRegistry a method_56597 + p 0 ops + p 1 registryData + p 2 registryAccess + p 3 packs + p 4 packetSender + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;)V packRegistries a method_56598 + p 0 ops + p 1 registryAccess + p 2 packs + p 3 packetSender + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)V method_56599 a method_56599 + m (Ljava/util/Set;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Registry;)V method_56596 a method_56596 + m (Lnet/minecraft/core/Holder$Reference;Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_56600 a method_56600 + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/stream/Stream; networkedRegistries a method_47449 + p 0 registryAccess + m (Lnet/minecraft/core/Registry;Ljava/util/Set;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lcom/mojang/serialization/DynamicOps;Ljava/util/List;Lnet/minecraft/core/Holder$Reference;)V method_56595 a method_56595 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Z method_56601 a method_56601 + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/stream/Stream; ownedNetworkableRegistries a method_45956 + p 0 registryAccess + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/stream/Stream; networkSafeRegistries b method_45953 + p 0 registryAccess + m ()V + m ()V +c net/minecraft/core/RegistrySynchronization$PackedRegistryEntry kd$a net/minecraft/class_7782$class_9176 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48772 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2256 + f Ljava/util/Optional; data c comp_2257 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2256 + m ()Ljava/util/Optional; data b comp_2257 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V + m ()V +c net/minecraft/core/Rotations ke net/minecraft/class_2379 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48452 + f F x b field_11165 + c Rotation on the X axis + f F y c field_11164 + c Rotation on the Y axis + f F z d field_11163 + c Rotation on the Z axis + m ()Lnet/minecraft/nbt/ListTag; save a method_10255 + m ()F getX b method_10256 + c @return the X axis rotation + m ()F getY c method_10257 + c @return the Y axis rotation + m ()F getZ d method_10258 + c @return the Z axis rotation + m ()F getWrappedX e method_35845 + m ()F getWrappedY f method_35846 + m ()F getWrappedZ g method_35847 + m (FFF)V + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/nbt/ListTag;)V + p 1 tag + m ()V +c net/minecraft/core/Rotations$1 ke$1 net/minecraft/class_2379$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/Rotations; decode a method_56161 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/Rotations;)V encode a method_56162 + m ()V +c net/minecraft/core/SectionPos kf net/minecraft/class_4076 + f I SECTION_BITS a field_33096 + f I SECTION_SIZE b field_33097 + f I SECTION_MASK c field_33100 + f I SECTION_HALF_SIZE d field_33098 + f I SECTION_MAX_INDEX e field_33099 + f I PACKED_X_LENGTH h field_33101 + f I PACKED_Y_LENGTH i field_33102 + f I PACKED_Z_LENGTH j field_33103 + f J PACKED_X_MASK k field_33104 + f J PACKED_Y_MASK l field_33105 + f J PACKED_Z_MASK m field_33106 + f I Y_OFFSET n field_33107 + f I Z_OFFSET o field_33108 + f I X_OFFSET p field_33109 + f I RELATIVE_X_SHIFT q field_33110 + f I RELATIVE_Y_SHIFT r field_33111 + f I RELATIVE_Z_SHIFT s field_33112 + m ()I x a method_18674 + m (D)I posToSectionCoord a method_32204 + p 0 pos + m (I)I blockToSectionCoord a method_18675 + p 0 blockCoord + m (II)I sectionToBlockCoord a method_32205 + p 0 pos + p 1 offset + m (III)Lnet/minecraft/core/SectionPos; of a method_18676 + p 0 chunkX + p 1 chunkY + p 2 chunkZ + m (IIIIII)Ljava/util/stream/Stream; betweenClosedStream a method_20438 + p 0 x1 + p 1 y1 + p 2 z1 + p 3 x2 + p 4 y2 + p 5 z2 + m (IIILit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39489 + p 0 x + p 1 y + p 2 z + p 3 consumer + m (J)Lnet/minecraft/core/SectionPos; of a method_18677 + p 0 packed + m (JIII)J offset a method_18678 + p 0 packed + p 2 dx + p 3 dy + p 4 dz + m (JLit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39490 + p 0 pos + p 2 consumer + m (JLnet/minecraft/core/Direction;)J offset a method_18679 + p 0 packed + p 2 direction + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/core/SectionPos; of a method_18681 + p 0 chunkPos + p 1 y + m (Lnet/minecraft/world/level/ChunkPos;III)Ljava/util/stream/Stream; aroundChunk a method_22446 + p 0 chunkPos + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/core/SectionPos; bottomOf a method_33705 + p 0 chunk + m (Lnet/minecraft/world/level/entity/EntityAccess;)Lnet/minecraft/core/SectionPos; of a method_42614 + p 0 entity + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/SectionPos; of a method_18682 + p 0 pos + m (Lnet/minecraft/core/BlockPos;Lit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39491 + p 0 pos + p 1 consumer + m (Lnet/minecraft/core/Position;)Lnet/minecraft/core/SectionPos; of a method_18680 + p 0 position + m (Lnet/minecraft/core/SectionPos;I)Ljava/util/stream/Stream; cube a method_20439 + p 0 center + p 1 radius + m (S)I sectionRelativeX a method_30551 + p 0 x + m ()I y b method_18683 + m (D)I blockToSectionCoord b method_42615 + p 0 coord + m (I)I sectionRelative b method_18684 + p 0 rel + m (II)J getZeroNode b method_51687 + p 0 x + p 1 z + m (III)J asLong b method_18685 + p 0 x + p 1 y + p 2 z + m (J)I x b method_18686 + p 0 packed + m (Lnet/minecraft/core/BlockPos;)S sectionRelativePos b method_19454 + p 0 pos + m (S)I sectionRelativeY b method_30552 + p 0 y + m ()I z c method_18687 + m (I)I sectionToBlockCoord c method_18688 + p 0 sectionCoord + m (J)I y c method_18689 + p 0 packed + m (Lnet/minecraft/core/BlockPos;)J asLong c method_33706 + p 0 blockPos + m (S)I sectionRelativeZ c method_30553 + p 0 z + m ()I minBlockX d method_19527 + m (III)Lnet/minecraft/core/SectionPos; offset d method_34591 + p 1 dx + p 2 dy + p 3 dz + m (J)I z d method_18690 + p 0 packed + m (S)I relativeToBlockX d method_30554 + p 1 x + m ()I minBlockY e method_19528 + m (J)J blockToSection e method_18691 + p 0 levelPos + m (S)I relativeToBlockY e method_30555 + p 1 y + m ()I minBlockZ f method_19529 + m (J)J getZeroNode f method_18693 + p 0 pos + m (S)I relativeToBlockZ f method_30556 + p 1 z + m ()I maxBlockX g method_19530 + m (S)Lnet/minecraft/core/BlockPos; relativeToBlockPos g method_30557 + p 1 pos + m ()I maxBlockY h method_19531 + m ()I maxBlockZ i method_19532 + m ()Lnet/minecraft/core/BlockPos; origin j method_19767 + m ()Lnet/minecraft/core/BlockPos; center k method_19768 + m ()Lnet/minecraft/world/level/ChunkPos; chunk r method_18692 + m ()J asLong s method_18694 + m ()Ljava/util/stream/Stream; blocksInside t method_19533 + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/core/SectionPos$1 kf$1 net/minecraft/class_4076$1 + f Lnet/minecraft/core/Cursor3D; cursor a field_19263 + f I val$minX b field_19264 + f I val$minY c field_19265 + f I val$minZ d field_19266 + f I val$maxX e field_19267 + f I val$maxY f field_19268 + f I val$maxZ g field_19269 + m (JIIIIIII)V +c net/minecraft/core/UUIDUtil kg net/minecraft/class_4844 + f Lcom/mojang/serialization/Codec; CODEC a field_25122 + f Lcom/mojang/serialization/Codec; CODEC_SET b field_47491 + f Lcom/mojang/serialization/Codec; CODEC_LINKED_SET c field_48974 + f Lcom/mojang/serialization/Codec; STRING_CODEC d field_41525 + f Lcom/mojang/serialization/Codec; AUTHLIB_CODEC e field_40825 + f Lcom/mojang/serialization/Codec; LENIENT_CODEC f field_46588 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_48453 + f I UUID_BYTES h field_39211 + f Ljava/lang/String; UUID_PREFIX_OFFLINE_PLAYER i field_38907 + m (JJ)[I leastMostToIntArray a method_26274 + p 0 most + p 2 least + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/UUID; readUUID a method_35848 + p 0 dynamic + m (Ljava/lang/String;)Ljava/util/UUID; createOfflinePlayerUUID a method_43344 + p 0 username + m (Ljava/lang/String;Ljava/lang/IllegalArgumentException;)Ljava/lang/String; method_49645 a method_49645 + m (Ljava/util/UUID;)[I uuidToIntArray a method_26275 + p 0 uuid + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29122 a method_29122 + m ([I)Ljava/util/UUID; uuidFromIntArray a method_26276 + p 0 bits + m (Ljava/lang/String;)Lcom/mojang/authlib/GameProfile; createOfflineProfile b method_54140 + p 0 username + m (Ljava/lang/String;Ljava/lang/IllegalArgumentException;)Ljava/lang/String; method_49646 b method_49646 + m (Ljava/util/UUID;)[B uuidToByteArray b method_44827 + p 0 uuid + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_46560 c method_46560 + m (Ljava/util/UUID;)Ljava/util/stream/IntStream; method_29727 c method_29727 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47804 d method_47804 + m ()V + m ()V +c net/minecraft/core/UUIDUtil$1 kg$1 net/minecraft/class_4844$1 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; decode a method_56163 + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V encode a method_56164 + m ()V +c net/minecraft/core/Vec3i kh net/minecraft/class_2382 + f I x a field_11175 + f I y b field_11174 + f I z c field_11173 + f Lcom/mojang/serialization/Codec; CODEC f field_25123 + f Lnet/minecraft/core/Vec3i; ZERO g field_11176 + c An immutable vector with zero as all coordinates. + m (ILnet/minecraft/core/Vec3i;)Lcom/mojang/serialization/DataResult; method_48305 a method_48305 + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29125 a method_29125 + m (Lnet/minecraft/core/Direction$Axis;)I get a method_30558 + p 1 axis + m (Lnet/minecraft/core/Position;D)Z closerToCenterThan a method_19769 + p 1 position + p 2 distance + m (Lnet/minecraft/core/Vec3i;)Ljava/util/stream/IntStream; method_29124 a method_29124 + m (Lnet/minecraft/core/Vec3i;D)Z closerThan a method_19771 + p 1 vector + p 2 distance + m ([I)Lnet/minecraft/core/Vec3i; method_29126 a method_29126 + m (ILnet/minecraft/core/Vec3i;)Ljava/lang/String; method_49647 b method_49647 + m (Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/core/Vec3i; relative b method_35850 + p 1 axis + p 2 amount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Vec3i; relative b method_35851 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/Vec3i; relative b method_23226 + c Offsets this Vector by the given distance in the specified direction. + p 1 direction + p 2 distance + m (Lnet/minecraft/core/Position;)D distToCenterSqr b method_19770 + p 1 position + m (DDD)D distToCenterSqr c method_10268 + p 1 x + p 3 y + p 5 z + m (III)Lnet/minecraft/core/Vec3i; offset c method_34592 + p 1 dx + p 2 dy + p 3 dz + m (DDD)D distToLowCornerSqr d method_40081 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; cross d method_10259 + c Calculate the cross product of this and the given Vector + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; subtract e method_35852 + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; offset f method_35853 + p 1 vector + m (I)Lnet/minecraft/core/Vec3i; east i method_35854 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)I compareTo i method_10265 + p 1 other + m (I)Lnet/minecraft/core/Vec3i; west j method_35856 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)D distSqr j method_10262 + c Calculate squared distance to the given Vector + p 1 vector + m (I)Lnet/minecraft/core/Vec3i; south k method_35858 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)I distManhattan k method_19455 + p 1 vector + m ()Lnet/minecraft/core/Vec3i; east l method_35855 + m (I)Lnet/minecraft/core/Vec3i; north l method_35860 + p 1 distance + m ()Lnet/minecraft/core/Vec3i; west m method_35857 + m (I)Lnet/minecraft/core/Vec3i; below m method_23227 + c Offset this vector downwards by the given distance. + p 1 distance + m ()Lnet/minecraft/core/Vec3i; south n method_35859 + m (I)Lnet/minecraft/core/Vec3i; above n method_30930 + c Offset this vector upwards by the given distance. + p 1 distance + m ()Lnet/minecraft/core/Vec3i; north o method_35861 + m (I)Lnet/minecraft/core/Vec3i; multiply o method_35862 + p 1 scalar + m ()Lnet/minecraft/core/Vec3i; below p method_23228 + c Offset this vector 1 unit down + m ()Lnet/minecraft/core/Vec3i; above q method_30931 + c Offset this vector 1 unit up + m (I)Lnet/minecraft/core/Vec3i; setZ s method_20788 + p 1 z + m (I)Lnet/minecraft/core/Vec3i; setY t method_10099 + p 1 y + m ()I getX u method_10263 + m (I)Lnet/minecraft/core/Vec3i; setX u method_20787 + p 1 x + m ()I getY v method_10264 + m (I)Lcom/mojang/serialization/Codec; offsetCodec v method_39677 + p 0 maxOffset + m ()I getZ w method_10260 + m ()Ljava/lang/String; toShortString x method_23854 + m (III)V + p 1 x + p 2 y + p 3 z + m ()V +c net/minecraft/core/WritableRegistry ki net/minecraft/class_2385 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Lnet/minecraft/core/RegistrationInfo;)Lnet/minecraft/core/Holder$Reference; register a method_10272 + p 1 key + p 2 value + p 3 registrationInfo + m ()Z isEmpty l method_35863 + m ()Lnet/minecraft/core/HolderGetter; createRegistrationLookup o method_46769 +c net/minecraft/core/cauldron/CauldronInteraction kj net/minecraft/class_5620 + f Ljava/util/Map; INTERACTIONS a field_46589 + f Lcom/mojang/serialization/Codec; CODEC b field_46590 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; EMPTY c field_27775 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; WATER d field_27776 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; LAVA e field_27777 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; POWDER_SNOW f field_28011 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_WATER g field_27778 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_LAVA h field_27779 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_POWDER_SNOW i field_28012 + f Lnet/minecraft/core/cauldron/CauldronInteraction; SHULKER_BOX j field_27780 + f Lnet/minecraft/core/cauldron/CauldronInteraction; BANNER k field_27781 + f Lnet/minecraft/core/cauldron/CauldronInteraction; DYED_ITEM l field_27782 + m ()V bootStrap a method_32212 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/ItemInteractionResult; emptyBucket a method_32207 + p 0 level + p 1 pos + p 2 player + p 3 hand + p 4 filledStack + p 5 state + p 6 emptySound + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32696 a method_32696 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32209 a method_32209 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/ItemInteractionResult; fillBucket a method_32210 + p 0 state + p 1 level + p 2 pos + p 3 player + p 4 hand + p 5 emptyStack + p 6 filledStack + p 7 statePredicate + p 8 fillSound + m (Ljava/lang/String;)Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; newInteractionMap a method_32206 + p 0 name + m (Ljava/util/Map;)V addDefaultInteractions a method_34850 + p 0 interactionsMap + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32208 b method_32208 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32214 b method_32214 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32213 c method_32213 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32215 c method_32215 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32697 d method_32697 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32216 e method_32216 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32217 f method_32217 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32698 g method_32698 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32218 h method_32218 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32219 i method_32219 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32220 j method_32220 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32221 k method_32221 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32222 l method_32222 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32223 m method_32223 + m ()V +c net/minecraft/core/cauldron/CauldronInteraction$InteractionMap kj$a net/minecraft/class_5620$class_8821 + f Ljava/lang/String; name a comp_1981 + f Ljava/util/Map; map b comp_1982 + m ()Ljava/lang/String; name a comp_1981 + m ()Ljava/util/Map; map b comp_1982 + m (Ljava/lang/String;Ljava/util/Map;)V +c net/minecraft/core/cauldron/package-info kk net/minecraft/class_6666 +c net/minecraft/core/component/DataComponentHolder kl net/minecraft/class_9322 + m ()Lnet/minecraft/core/component/DataComponentMap; getComponents a method_57353 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_57824 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_57825 + p 1 component + p 2 defaultValue + m (Lnet/minecraft/core/component/DataComponentType;)Z has b method_57826 + p 1 component +c net/minecraft/core/component/DataComponentMap km net/minecraft/class_9323 + f Lnet/minecraft/core/component/DataComponentMap; EMPTY a field_49584 + f Lcom/mojang/serialization/Codec; CODEC b field_50234 + m ()Lnet/minecraft/core/component/DataComponentMap$Builder; builder a method_57827 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; makeCodec a method_60386 + p 0 codec + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/component/DataComponentMap; filter a method_57828 + p 1 predicate + m (Lnet/minecraft/core/component/DataComponentMap;)Lcom/mojang/serialization/DataResult; method_60387 a method_60387 + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentMap; composite a method_59771 + p 0 map1 + p 1 map2 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_57829 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_57830 + p 1 component + p 2 defaultValue + m ()Ljava/util/Set; keySet b method_57831 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; makeCodecFromMap b method_60388 + p 0 codec + m (Lnet/minecraft/core/component/DataComponentType;)Z has b method_57832 + p 1 component + m ()Ljava/util/stream/Stream; stream c method_57833 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; getTyped c method_57834 + p 1 component + m ()I size d method_57835 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; method_57836 d method_57836 + m ()Z isEmpty e method_57837 + m ()V +c net/minecraft/core/component/DataComponentMap$1 km$1 net/minecraft/class_9323$1 + m ()V +c net/minecraft/core/component/DataComponentMap$2 km$2 net/minecraft/class_9323$2 + f Lnet/minecraft/core/component/DataComponentMap; val$overrides c field_51459 + f Lnet/minecraft/core/component/DataComponentMap; val$prototype d field_51460 + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/core/component/DataComponentMap$3 km$3 net/minecraft/class_9323$3 + f Ljava/util/function/Predicate; val$predicate c field_51461 + f Lnet/minecraft/core/component/DataComponentMap; field_51462 d field_51462 + m (Lnet/minecraft/core/component/DataComponentMap;Ljava/util/function/Predicate;)V +c net/minecraft/core/component/DataComponentMap$Builder km$a net/minecraft/class_9323$class_9324 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map a field_49587 + m ()Lnet/minecraft/core/component/DataComponentMap; build a method_57838 + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentMap; buildFromMapTrusted a method_58755 + p 0 map + m (Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentMap$Builder; addAll a method_57839 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentMap$Builder; set a method_57840 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V setUnchecked b method_58756 + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentMap$Builder$SimpleMap km$a$a net/minecraft/class_9323$class_9324$class_9325 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map c comp_2440 + m ()Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map f comp_2440 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V +c net/minecraft/core/component/DataComponentPatch kn net/minecraft/class_9326 + f Lnet/minecraft/core/component/DataComponentPatch; EMPTY a field_49588 + f Lcom/mojang/serialization/Codec; CODEC b field_49589 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49590 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map d field_49591 + f Ljava/lang/String; REMOVED_PREFIX e field_49592 + m ()Lnet/minecraft/core/component/DataComponentPatch$Builder; builder a method_57841 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Ljava/lang/String; toString a method_57842 + p 0 map + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentPatch; method_57843 a method_57843 + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/component/DataComponentPatch; forget a method_58757 + p 1 predicate + m (Lnet/minecraft/core/component/DataComponentMap$Builder;Ljava/util/Set;Lnet/minecraft/core/component/DataComponentType;Ljava/util/Optional;)V method_58758 a method_58758 + m (Lnet/minecraft/core/component/DataComponentPatch;)Ljava/util/Map; method_57844 a method_57844 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/Optional; get a method_57845 + p 1 component + m ()Ljava/util/Set; entrySet b method_57846 + m ()I size c method_57847 + m ()Z isEmpty d method_57848 + m ()Lnet/minecraft/core/component/DataComponentPatch$SplitResult; split e method_58759 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V + p 1 map + m ()V +c net/minecraft/core/component/DataComponentPatch$1 kn$1 net/minecraft/class_9326$1 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/component/DataComponentPatch; decode a method_57849 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentPatch;)V encode a method_57850 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V encodeComponent a method_57851 + p 0 buffer + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentPatch$Builder kn$a net/minecraft/class_9326$class_9327 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map a field_49593 + m ()Lnet/minecraft/core/component/DataComponentPatch; build a method_57852 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/DataComponentPatch$Builder; remove a method_57853 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentPatch$Builder; set a method_57854 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/TypedDataComponent;)Lnet/minecraft/core/component/DataComponentPatch$Builder; set a method_57855 + p 1 component + m ()V +c net/minecraft/core/component/DataComponentPatch$PatchKey kn$b net/minecraft/class_9326$class_9328 + f Lcom/mojang/serialization/Codec; CODEC a field_49594 + f Lnet/minecraft/core/component/DataComponentType; type b comp_2441 + f Z removed c comp_2442 + m ()Lcom/mojang/serialization/Codec; valueCodec a method_57856 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57857 a method_57857 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57858 a method_57858 + m (Lnet/minecraft/core/component/DataComponentPatch$PatchKey;)Lcom/mojang/serialization/DataResult; method_57859 a method_57859 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_57860 a method_57860 + m ()Lnet/minecraft/core/component/DataComponentType; type b comp_2441 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57861 b method_57861 + m ()Z removed c comp_2442 + m (Lnet/minecraft/core/component/DataComponentType;Z)V + m ()V +c net/minecraft/core/component/DataComponentPatch$SplitResult kn$c net/minecraft/class_9326$class_9484 + f Lnet/minecraft/core/component/DataComponentPatch$SplitResult; EMPTY a field_50235 + f Lnet/minecraft/core/component/DataComponentMap; added b comp_2554 + f Ljava/util/Set; removed c comp_2555 + m ()Lnet/minecraft/core/component/DataComponentMap; added a comp_2554 + m ()Ljava/util/Set; removed b comp_2555 + m (Lnet/minecraft/core/component/DataComponentMap;Ljava/util/Set;)V + m ()V +c net/minecraft/core/component/DataComponentPredicate ko net/minecraft/class_9329 + f Lcom/mojang/serialization/Codec; CODEC a field_49595 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49596 + f Lnet/minecraft/core/component/DataComponentPredicate; EMPTY c field_49597 + f Ljava/util/List; expectedComponents d field_49598 + m ()Lnet/minecraft/core/component/DataComponentPredicate$Builder; builder a method_57862 + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentPredicate; method_57863 a method_57863 + m (Lnet/minecraft/core/component/DataComponentHolder;)Z test a method_57864 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentPredicate; allOf a method_57865 + p 0 expectedComponents + m (Lnet/minecraft/core/component/DataComponentPredicate;)Ljava/util/List; method_57866 a method_57866 + m (Lnet/minecraft/core/component/TypedDataComponent;)Z method_58760 a method_58760 + m ()Z alwaysMatches b method_57867 + m (Lnet/minecraft/core/component/DataComponentMap;)Z test b method_57868 + p 1 components + m (Lnet/minecraft/core/component/DataComponentPredicate;)Ljava/util/Map; method_57869 b method_57869 + m ()Lnet/minecraft/core/component/DataComponentPatch; asPatch c method_57870 + m (Ljava/util/List;)V + p 1 expectedComponents + m ()V +c net/minecraft/core/component/DataComponentPredicate$Builder ko$a net/minecraft/class_9329$class_9330 + f Ljava/util/List; expectedComponents a field_49599 + m ()Lnet/minecraft/core/component/DataComponentPredicate; build a method_57871 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentPredicate$Builder; expect a method_57872 + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentType kp net/minecraft/class_9331 + f Lcom/mojang/serialization/Codec; CODEC a field_49600 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49601 + f Lcom/mojang/serialization/Codec; PERSISTENT_CODEC c field_50236 + f Lcom/mojang/serialization/Codec; VALUE_MAP_CODEC d field_50237 + m ()Lnet/minecraft/core/component/DataComponentType$Builder; builder a method_57873 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_58761 a method_58761 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57874 a method_57874 + m ()Lcom/mojang/serialization/Codec; codec b method_57875 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_58762 b method_58762 + m ()Lcom/mojang/serialization/Codec; codecOrThrow c method_57876 + m ()Z isTransient d method_57877 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec e method_57878 + m ()Lcom/mojang/serialization/Codec; method_57879 f method_57879 + m ()V +c net/minecraft/core/component/DataComponentType$Builder kp$a net/minecraft/class_9331$class_9332 + f Lcom/mojang/serialization/Codec; codec a field_49602 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec b field_49603 + f Z cacheEncoding c field_51517 + m ()Lnet/minecraft/core/component/DataComponentType$Builder; cacheEncoding a method_59871 + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/core/component/DataComponentType$Builder; persistent a method_57881 + p 1 codec + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/core/component/DataComponentType$Builder; networkSynchronized a method_57882 + p 1 streamCodec + m ()Lnet/minecraft/core/component/DataComponentType; build b method_57880 + m ()Lnet/minecraft/network/codec/StreamCodec; method_57883 c method_57883 + m ()V +c net/minecraft/core/component/DataComponentType$Builder$SimpleType kp$a$a net/minecraft/class_9331$class_9332$class_9333 + f Lcom/mojang/serialization/Codec; codec e field_49604 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec f field_49605 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/network/codec/StreamCodec;)V + p 1 codec + p 2 streamCodec +c net/minecraft/core/component/DataComponents kq net/minecraft/class_9334 + f Lnet/minecraft/core/component/DataComponentType; MAP_COLOR A field_49645 + f Lnet/minecraft/core/component/DataComponentType; MAP_ID B field_49646 + f Lnet/minecraft/core/component/DataComponentType; MAP_DECORATIONS C field_49647 + f Lnet/minecraft/core/component/DataComponentType; MAP_POST_PROCESSING D field_49648 + f Lnet/minecraft/core/component/DataComponentType; CHARGED_PROJECTILES E field_49649 + f Lnet/minecraft/core/component/DataComponentType; BUNDLE_CONTENTS F field_49650 + f Lnet/minecraft/core/component/DataComponentType; POTION_CONTENTS G field_49651 + f Lnet/minecraft/core/component/DataComponentType; SUSPICIOUS_STEW_EFFECTS H field_49652 + f Lnet/minecraft/core/component/DataComponentType; WRITABLE_BOOK_CONTENT I field_49653 + f Lnet/minecraft/core/component/DataComponentType; WRITTEN_BOOK_CONTENT J field_49606 + f Lnet/minecraft/core/component/DataComponentType; TRIM K field_49607 + f Lnet/minecraft/core/component/DataComponentType; DEBUG_STICK_STATE L field_49608 + f Lnet/minecraft/core/component/DataComponentType; ENTITY_DATA M field_49609 + f Lnet/minecraft/core/component/DataComponentType; BUCKET_ENTITY_DATA N field_49610 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_ENTITY_DATA O field_49611 + f Lnet/minecraft/core/component/DataComponentType; INSTRUMENT P field_49612 + f Lnet/minecraft/core/component/DataComponentType; OMINOUS_BOTTLE_AMPLIFIER Q field_50238 + f Lnet/minecraft/core/component/DataComponentType; JUKEBOX_PLAYABLE R field_52175 + f Lnet/minecraft/core/component/DataComponentType; RECIPES S field_49613 + f Lnet/minecraft/core/component/DataComponentType; LODESTONE_TRACKER T field_49614 + f Lnet/minecraft/core/component/DataComponentType; FIREWORK_EXPLOSION U field_49615 + f Lnet/minecraft/core/component/DataComponentType; FIREWORKS V field_49616 + f Lnet/minecraft/core/component/DataComponentType; PROFILE W field_49617 + f Lnet/minecraft/core/component/DataComponentType; NOTE_BLOCK_SOUND X field_49618 + f Lnet/minecraft/core/component/DataComponentType; BANNER_PATTERNS Y field_49619 + f Lnet/minecraft/core/component/DataComponentType; BASE_COLOR Z field_49620 + f Lnet/minecraft/util/EncoderCache; ENCODER_CACHE a field_51518 + f Lnet/minecraft/core/component/DataComponentType; POT_DECORATIONS aa field_49621 + f Lnet/minecraft/core/component/DataComponentType; CONTAINER ab field_49622 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_STATE ac field_49623 + f Lnet/minecraft/core/component/DataComponentType; BEES ad field_49624 + f Lnet/minecraft/core/component/DataComponentType; LOCK ae field_49625 + f Lnet/minecraft/core/component/DataComponentType; CONTAINER_LOOT af field_49626 + f Lnet/minecraft/core/component/DataComponentMap; COMMON_ITEM_COMPONENTS ag field_49627 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_DATA b field_49628 + f Lnet/minecraft/core/component/DataComponentType; MAX_STACK_SIZE c field_50071 + f Lnet/minecraft/core/component/DataComponentType; MAX_DAMAGE d field_50072 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE e field_49629 + f Lnet/minecraft/core/component/DataComponentType; UNBREAKABLE f field_49630 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_NAME g field_49631 + f Lnet/minecraft/core/component/DataComponentType; ITEM_NAME h field_50239 + f Lnet/minecraft/core/component/DataComponentType; LORE i field_49632 + f Lnet/minecraft/core/component/DataComponentType; RARITY j field_50073 + f Lnet/minecraft/core/component/DataComponentType; ENCHANTMENTS k field_49633 + f Lnet/minecraft/core/component/DataComponentType; CAN_PLACE_ON l field_49634 + f Lnet/minecraft/core/component/DataComponentType; CAN_BREAK m field_49635 + f Lnet/minecraft/core/component/DataComponentType; ATTRIBUTE_MODIFIERS n field_49636 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_MODEL_DATA o field_49637 + f Lnet/minecraft/core/component/DataComponentType; HIDE_ADDITIONAL_TOOLTIP p field_49638 + f Lnet/minecraft/core/component/DataComponentType; HIDE_TOOLTIP q field_50074 + f Lnet/minecraft/core/component/DataComponentType; REPAIR_COST r field_49639 + f Lnet/minecraft/core/component/DataComponentType; CREATIVE_SLOT_LOCK s field_49640 + f Lnet/minecraft/core/component/DataComponentType; ENCHANTMENT_GLINT_OVERRIDE t field_49641 + f Lnet/minecraft/core/component/DataComponentType; INTANGIBLE_PROJECTILE u field_49642 + f Lnet/minecraft/core/component/DataComponentType; FOOD v field_50075 + f Lnet/minecraft/core/component/DataComponentType; FIRE_RESISTANT w field_50076 + f Lnet/minecraft/core/component/DataComponentType; TOOL x field_50077 + f Lnet/minecraft/core/component/DataComponentType; STORED_ENCHANTMENTS y field_49643 + f Lnet/minecraft/core/component/DataComponentType; DYED_COLOR z field_49644 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57931 A method_57931 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57932 B method_57932 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57884 C method_57884 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57885 D method_57885 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57886 E method_57886 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57887 F method_57887 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57888 G method_57888 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57889 H method_57889 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58564 I method_58564 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58565 J method_58565 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58566 K method_58566 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57890 L method_57890 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57891 M method_57891 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57892 N method_57892 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57893 O method_57893 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58567 P method_58567 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57894 Q method_57894 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57895 R method_57895 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57896 S method_57896 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57897 T method_57897 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57898 U method_57898 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57899 V method_57899 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58568 W method_58568 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57900 X method_57900 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58763 Y method_58763 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57901 Z method_57901 + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/core/component/DataComponentType; register a method_57906 + p 0 name + p 1 builder + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/component/DataComponentType; bootstrap a method_57905 + p 0 registry + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57907 a method_57907 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57902 aa method_57902 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57903 ab method_57903 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58569 ac method_58569 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58570 ad method_58570 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57904 ae method_57904 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57908 b method_57908 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57909 c method_57909 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57910 d method_57910 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57911 e method_57911 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57912 f method_57912 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57913 g method_57913 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57914 h method_57914 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57915 i method_57915 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57916 j method_57916 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57917 k method_57917 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57918 l method_57918 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57919 m method_57919 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57920 n method_57920 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60914 o method_60914 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58764 p method_58764 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57921 q method_57921 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57922 r method_57922 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57923 s method_57923 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57924 t method_57924 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57925 u method_57925 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57926 v method_57926 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57927 w method_57927 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57928 x method_57928 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57929 y method_57929 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57930 z method_57930 + m ()V + m ()V +c net/minecraft/core/component/PatchedDataComponentMap kr net/minecraft/class_9335 + f Lnet/minecraft/core/component/DataComponentMap; prototype c field_49654 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; patch d field_49655 + f Z copyOnWrite e field_49656 + m (Lnet/minecraft/core/component/DataComponentMap;)V setAll a method_57933 + p 1 map + m (Lnet/minecraft/core/component/DataComponentMap;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Z isPatchSanitized a method_57934 + p 0 prototype + p 1 map + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentPatch;)Lnet/minecraft/core/component/PatchedDataComponentMap; fromPatch a method_57935 + p 0 prototype + p 1 patch + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyPatch a method_57936 + p 1 patch + m (Lnet/minecraft/core/component/DataComponentType;Ljava/util/Optional;)V applyPatch a method_57937 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentPatch;)V restorePatch b method_59772 + p 1 patch + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; set b method_57938 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; remove d method_57939 + p 1 component + m ()Lnet/minecraft/core/component/DataComponentPatch; asPatch f method_57940 + m ()Lnet/minecraft/core/component/PatchedDataComponentMap; copy g method_57941 + m ()V ensureMapOwnership h method_57942 + m (Lnet/minecraft/core/component/DataComponentMap;)V + p 1 prototype + m (Lnet/minecraft/core/component/DataComponentMap;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;Z)V + p 1 prototype + p 2 patch + p 3 copyOnWtite +c net/minecraft/core/component/TypedDataComponent ks net/minecraft/class_9336 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49657 + f Lnet/minecraft/core/component/DataComponentType; type b comp_2443 + f Ljava/lang/Object; value c comp_2444 + m ()Lnet/minecraft/core/component/DataComponentType; type a comp_2443 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; encodeValue a method_57943 + p 1 ops + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/component/TypedDataComponent; fromEntryUnchecked a method_57944 + p 0 entry + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/TypedDataComponent; createUnchecked a method_57945 + p 0 type + p 1 value + m (Lnet/minecraft/core/component/PatchedDataComponentMap;)V applyTo a method_57946 + p 1 map + m ()Ljava/lang/Object; value b comp_2444 + m ()Ljava/lang/String; method_57947 c method_57947 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V + m ()V +c net/minecraft/core/component/TypedDataComponent$1 ks$1 net/minecraft/class_9336$1 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/component/TypedDataComponent; decode a method_57948 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; decodeTyped a method_57949 + p 0 buffer + p 1 component + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/TypedDataComponent;)V encode a method_57950 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/TypedDataComponent;)V encodeCap b method_57951 + p 0 buffer + p 1 component + m ()V +c net/minecraft/core/component/package-info kt net/minecraft/class_9337 +c net/minecraft/core/dispenser/BlockSource ku net/minecraft/class_2342 + f Lnet/minecraft/server/level/ServerLevel; level a comp_1967 + f Lnet/minecraft/core/BlockPos; pos b comp_1968 + f Lnet/minecraft/world/level/block/state/BlockState; state c comp_1969 + f Lnet/minecraft/world/level/block/entity/DispenserBlockEntity; blockEntity d comp_1970 + m ()Lnet/minecraft/world/phys/Vec3; center a method_53906 + m ()Lnet/minecraft/server/level/ServerLevel; level b comp_1967 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1968 + m ()Lnet/minecraft/world/level/block/state/BlockState; state d comp_1969 + m ()Lnet/minecraft/world/level/block/entity/DispenserBlockEntity; blockEntity e comp_1970 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/DispenserBlockEntity;)V +c net/minecraft/core/dispenser/BoatDispenseItemBehavior kv net/minecraft/class_2967 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_13360 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; type d field_13361 + f Z isChestBoat e field_38465 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)V + p 1 type + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)V + p 1 type + p 2 isChestBoat +c net/minecraft/core/dispenser/DefaultDispenseItemBehavior kw net/minecraft/class_2347 + f I DEFAULT_ACCURACY c field_51916 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;Lnet/minecraft/core/Position;)V spawnItem a method_10134 + p 0 level + p 1 stack + p 2 speed + p 3 facing + p 4 position + m (Lnet/minecraft/core/dispenser/BlockSource;)V playSound a method_10136 + p 1 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; execute a method_10135 + p 1 blockSource + p 2 item + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; consumeWithRemainder a method_60577 + p 1 blockSource + p 2 stack + p 3 remainder + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)V playAnimation a method_10133 + p 1 blockSource + p 2 direction + m (Lnet/minecraft/core/dispenser/BlockSource;)V playDefaultSound b method_60578 + p 0 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)V addToInventoryOrDispense b method_60579 + p 1 blockSource + p 2 remainder + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)V playDefaultAnimation b method_60580 + p 0 blockSource + p 1 direction + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior kx net/minecraft/class_2357 + f Lorg/slf4j/Logger; LOGGER a field_34020 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; NOOP b field_16902 + m ()V bootStrap a method_18346 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_16812 a method_16812 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$1 kx$1 net/minecraft/class_2357$1 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$10 kx$2 net/minecraft/class_2357$2 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$11 kx$3 net/minecraft/class_2357$3 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$12 kx$4 net/minecraft/class_2357$4 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$13 kx$5 net/minecraft/class_2357$5 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$14 kx$6 net/minecraft/class_2357$6 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_58770 a method_58770 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; takeLiquid b method_58771 + p 1 source + p 2 emptyItem + p 3 fullItem + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$15 kx$7 net/minecraft/class_2357$7 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$16 kx$8 net/minecraft/class_2357$8 + m (Lnet/minecraft/world/item/Item;)V method_58772 a method_58772 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$17 kx$9 net/minecraft/class_2357$9 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$18 kx$10 net/minecraft/class_2357$10 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_49137 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$2 kx$11 net/minecraft/class_2357$11 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/decoration/ArmorStand;)V method_58765 a method_58765 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$3 kx$12 net/minecraft/class_2357$12 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_58766 a method_58766 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$4 kx$13 net/minecraft/class_2357$13 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Z method_58767 a method_58767 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$5 kx$14 net/minecraft/class_2357$14 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)Z method_58768 a method_58768 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$6 kx$15 net/minecraft/class_2357$15 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_50240 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$7 kx$16 net/minecraft/class_2357$16 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$8 kx$17 net/minecraft/class_2357$17 + m (Lnet/minecraft/world/item/Item;)V method_58769 a method_58769 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$9 kx$18 net/minecraft/class_2357$18 + m ()V +c net/minecraft/core/dispenser/OptionalDispenseItemBehavior ky net/minecraft/class_2969 + f Z success c field_13364 + m (Z)V setSuccess a method_27955 + p 1 success + m ()Z isSuccess b method_27954 + m ()V +c net/minecraft/core/dispenser/ProjectileDispenseBehavior kz net/minecraft/class_2965 + f Lnet/minecraft/world/item/ProjectileItem; projectileItem c field_50243 + f Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; dispenseConfig d field_50244 + m (Lnet/minecraft/world/item/Item;)V + p 1 projectile +c net/minecraft/core/dispenser/ShearsDispenseItemBehavior la net/minecraft/class_5168 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z tryShearBeehive a method_27162 + p 0 level + p 1 pos + m (Lnet/minecraft/world/item/Item;)V method_56167 a method_56167 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40054 a method_40054 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z tryShearLivingEntity b method_27163 + p 0 level + p 1 pos + m ()V +c net/minecraft/core/dispenser/ShulkerBoxDispenseBehavior lb net/minecraft/class_2970 + f Lorg/slf4j/Logger; LOGGER c field_33680 + m ()V + m ()V +c net/minecraft/core/dispenser/package-info lc net/minecraft/class_6284 +c net/minecraft/core/package-info ld net/minecraft/class_6285 +c net/minecraft/core/particles/BlockParticleOption le net/minecraft/class_2388 + f Lcom/mojang/serialization/Codec; BLOCK_STATE_CODEC a field_51463 + f Lnet/minecraft/core/particles/ParticleType; type b field_11183 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_11182 + m (Lnet/minecraft/core/particles/BlockParticleOption;)Lnet/minecraft/world/level/block/state/BlockState; method_56168 a method_56168 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_29128 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/particles/BlockParticleOption; method_56169 a method_56169 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState b method_10278 + m (Lnet/minecraft/core/particles/BlockParticleOption;)Lnet/minecraft/world/level/block/state/BlockState; method_29127 b method_29127 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56170 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/particles/BlockParticleOption; method_29129 b method_29129 + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 state + m ()V +c net/minecraft/core/particles/ColorParticleOption lf net/minecraft/class_9381 + f Lnet/minecraft/core/particles/ParticleType; type a field_49909 + f I color b field_49910 + m (Lnet/minecraft/core/particles/ColorParticleOption;)Ljava/lang/Integer; method_58253 a method_58253 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_58254 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;FFF)Lnet/minecraft/core/particles/ColorParticleOption; create a method_58255 + p 0 type + p 1 red + p 2 green + p 3 blue + m (Lnet/minecraft/core/particles/ParticleType;I)Lnet/minecraft/core/particles/ColorParticleOption; create a method_58256 + p 0 type + p 1 color + m (Lnet/minecraft/core/particles/ParticleType;Ljava/lang/Integer;)Lnet/minecraft/core/particles/ColorParticleOption; method_58258 a method_58258 + m ()F getRed b method_58259 + m (Lnet/minecraft/core/particles/ColorParticleOption;)Ljava/lang/Integer; method_58260 b method_58260 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_58261 + p 0 type + m (Lnet/minecraft/core/particles/ParticleType;Ljava/lang/Integer;)Lnet/minecraft/core/particles/ColorParticleOption; method_58262 b method_58262 + m ()F getGreen c method_58263 + m ()F getBlue d method_58264 + m ()F getAlpha e method_58265 + m (Lnet/minecraft/core/particles/ParticleType;I)V + p 1 type + p 2 color +c net/minecraft/core/particles/DustColorTransitionOptions lg net/minecraft/class_5743 + f Lorg/joml/Vector3f; SCULK_PARTICLE_COLOR a field_28267 + f Lnet/minecraft/core/particles/DustColorTransitionOptions; SCULK_TO_REDSTONE b field_28268 + f Lcom/mojang/serialization/MapCodec; CODEC c field_28269 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48454 + f Lorg/joml/Vector3f; fromColor h field_51491 + f Lorg/joml/Vector3f; toColor i field_28271 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33107 a method_33107 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_56172 a method_56172 + m ()Lorg/joml/Vector3f; getFromColor b method_33110 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_56173 b method_56173 + m ()Lorg/joml/Vector3f; getToColor c method_33112 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_33109 c method_33109 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_33111 d method_33111 + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;F)V + p 1 color + p 2 toColor + p 3 scale + m ()V +c net/minecraft/core/particles/DustParticleOptions lh net/minecraft/class_2390 + f Lorg/joml/Vector3f; REDSTONE_PARTICLE_COLOR a field_28272 + f Lnet/minecraft/core/particles/DustParticleOptions; REDSTONE b field_11188 + f Lcom/mojang/serialization/MapCodec; CODEC c field_25124 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48455 + f Lorg/joml/Vector3f; color h field_51492 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33115 a method_33115 + m (Lnet/minecraft/core/particles/DustParticleOptions;)Lorg/joml/Vector3f; method_56175 a method_56175 + m ()Lorg/joml/Vector3f; getColor b method_59843 + m (Lnet/minecraft/core/particles/DustParticleOptions;)Lorg/joml/Vector3f; method_33117 b method_33117 + m (Lorg/joml/Vector3f;F)V + p 1 color + p 2 scale + m ()V +c net/minecraft/core/particles/ItemParticleOption li net/minecraft/class_2392 + f Lcom/mojang/serialization/Codec; ITEM_CODEC a field_51464 + f Lnet/minecraft/core/particles/ParticleType; type b field_11193 + f Lnet/minecraft/world/item/ItemStack; itemStack c field_11192 + m (Lnet/minecraft/core/particles/ItemParticleOption;)Lnet/minecraft/world/item/ItemStack; method_56176 a method_56176 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_29136 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/particles/ItemParticleOption; method_56177 a method_56177 + m ()Lnet/minecraft/world/item/ItemStack; getItem b method_10289 + m (Lnet/minecraft/core/particles/ItemParticleOption;)Lnet/minecraft/world/item/ItemStack; method_29135 b method_29135 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56178 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/particles/ItemParticleOption; method_29137 b method_29137 + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)V + p 1 type + p 2 itemStack + m ()V +c net/minecraft/core/particles/ParticleGroup lj net/minecraft/class_5878 + f Lnet/minecraft/core/particles/ParticleGroup; SPORE_BLOSSOM a field_29077 + f I limit b field_29078 + m ()I getLimit a method_34045 + m (I)V + p 1 limit + m ()V +c net/minecraft/core/particles/ParticleOptions lk net/minecraft/class_2394 + m ()Lnet/minecraft/core/particles/ParticleType; getType a method_10295 +c net/minecraft/core/particles/ParticleType ll net/minecraft/class_2396 + f Z overrideLimiter a field_11196 + m ()Z getOverrideLimiter b method_10299 + m ()Lcom/mojang/serialization/MapCodec; codec c method_29138 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec d method_56179 + m (Z)V + p 1 overrideLimitter +c net/minecraft/core/particles/ParticleTypes lm net/minecraft/class_2398 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST_EMITTER_SMALL A field_49139 + f Lnet/minecraft/core/particles/SimpleParticleType; SONIC_BOOM B field_38908 + f Lnet/minecraft/core/particles/ParticleType; FALLING_DUST C field_11206 + f Lnet/minecraft/core/particles/SimpleParticleType; FIREWORK D field_11248 + f Lnet/minecraft/core/particles/SimpleParticleType; FISHING E field_11244 + f Lnet/minecraft/core/particles/SimpleParticleType; FLAME F field_11240 + f Lnet/minecraft/core/particles/SimpleParticleType; INFESTED G field_50245 + f Lnet/minecraft/core/particles/SimpleParticleType; CHERRY_LEAVES H field_43379 + f Lnet/minecraft/core/particles/SimpleParticleType; SCULK_SOUL I field_38002 + f Lnet/minecraft/core/particles/ParticleType; SCULK_CHARGE J field_38003 + f Lnet/minecraft/core/particles/SimpleParticleType; SCULK_CHARGE_POP K field_38004 + f Lnet/minecraft/core/particles/SimpleParticleType; SOUL_FIRE_FLAME L field_22246 + f Lnet/minecraft/core/particles/SimpleParticleType; SOUL M field_23114 + f Lnet/minecraft/core/particles/SimpleParticleType; FLASH N field_17909 + f Lnet/minecraft/core/particles/SimpleParticleType; HAPPY_VILLAGER O field_11211 + f Lnet/minecraft/core/particles/SimpleParticleType; COMPOSTER P field_17741 + f Lnet/minecraft/core/particles/SimpleParticleType; HEART Q field_11201 + f Lnet/minecraft/core/particles/SimpleParticleType; INSTANT_EFFECT R field_11213 + f Lnet/minecraft/core/particles/ParticleType; ITEM S field_11218 + f Lnet/minecraft/core/particles/ParticleType; VIBRATION T field_28275 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_SLIME U field_11246 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_COBWEB V field_50246 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_SNOWBALL W field_11230 + f Lnet/minecraft/core/particles/SimpleParticleType; LARGE_SMOKE X field_11237 + f Lnet/minecraft/core/particles/SimpleParticleType; LAVA Y field_11239 + f Lnet/minecraft/core/particles/SimpleParticleType; MYCELIUM Z field_11219 + f Lnet/minecraft/core/particles/SimpleParticleType; ASH aA field_22247 + f Lnet/minecraft/core/particles/SimpleParticleType; CRIMSON_SPORE aB field_22248 + f Lnet/minecraft/core/particles/SimpleParticleType; WARPED_SPORE aC field_22249 + f Lnet/minecraft/core/particles/SimpleParticleType; SPORE_BLOSSOM_AIR aD field_28803 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_OBSIDIAN_TEAR aE field_22446 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_OBSIDIAN_TEAR aF field_22447 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_OBSIDIAN_TEAR aG field_22448 + f Lnet/minecraft/core/particles/SimpleParticleType; REVERSE_PORTAL aH field_23190 + f Lnet/minecraft/core/particles/SimpleParticleType; WHITE_ASH aI field_23956 + f Lnet/minecraft/core/particles/SimpleParticleType; SMALL_FLAME aJ field_27783 + f Lnet/minecraft/core/particles/SimpleParticleType; SNOWFLAKE aK field_28013 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_DRIPSTONE_LAVA aL field_28076 + f Lnet/minecraft/core/particles/SimpleParticleType; ANGRY_VILLAGER a field_11231 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_DRIPSTONE_LAVA aM field_28077 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_DRIPSTONE_WATER aN field_28078 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_DRIPSTONE_WATER aO field_28079 + f Lnet/minecraft/core/particles/SimpleParticleType; GLOW_SQUID_INK aP field_28478 + f Lnet/minecraft/core/particles/SimpleParticleType; GLOW aQ field_28479 + f Lnet/minecraft/core/particles/SimpleParticleType; WAX_ON aR field_29642 + f Lnet/minecraft/core/particles/SimpleParticleType; WAX_OFF aS field_29643 + f Lnet/minecraft/core/particles/SimpleParticleType; ELECTRIC_SPARK aT field_29644 + f Lnet/minecraft/core/particles/SimpleParticleType; SCRAPE aU field_29645 + f Lnet/minecraft/core/particles/ParticleType; SHRIEK aV field_38357 + f Lnet/minecraft/core/particles/SimpleParticleType; EGG_CRACK aW field_43380 + f Lnet/minecraft/core/particles/SimpleParticleType; DUST_PLUME aX field_46763 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_SPAWNER_DETECTED_PLAYER aY field_47493 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_SPAWNER_DETECTED_PLAYER_OMINOUS aZ field_50247 + f Lnet/minecraft/core/particles/SimpleParticleType; NOTE aa field_11224 + f Lnet/minecraft/core/particles/SimpleParticleType; POOF ab field_11203 + f Lnet/minecraft/core/particles/SimpleParticleType; PORTAL ac field_11214 + f Lnet/minecraft/core/particles/SimpleParticleType; RAIN ad field_11242 + f Lnet/minecraft/core/particles/SimpleParticleType; SMOKE ae field_11251 + f Lnet/minecraft/core/particles/SimpleParticleType; WHITE_SMOKE af field_46911 + f Lnet/minecraft/core/particles/SimpleParticleType; SNEEZE ag field_11234 + f Lnet/minecraft/core/particles/SimpleParticleType; SPIT ah field_11228 + f Lnet/minecraft/core/particles/SimpleParticleType; SQUID_INK ai field_11233 + f Lnet/minecraft/core/particles/SimpleParticleType; SWEEP_ATTACK aj field_11227 + f Lnet/minecraft/core/particles/SimpleParticleType; TOTEM_OF_UNDYING ak field_11220 + f Lnet/minecraft/core/particles/SimpleParticleType; UNDERWATER al field_11210 + f Lnet/minecraft/core/particles/SimpleParticleType; SPLASH am field_11202 + f Lnet/minecraft/core/particles/SimpleParticleType; WITCH an field_11249 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE_POP ao field_11241 + f Lnet/minecraft/core/particles/SimpleParticleType; CURRENT_DOWN ap field_11243 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE_COLUMN_UP aq field_11238 + f Lnet/minecraft/core/particles/SimpleParticleType; NAUTILUS ar field_11229 + f Lnet/minecraft/core/particles/SimpleParticleType; DOLPHIN as field_11222 + f Lnet/minecraft/core/particles/SimpleParticleType; CAMPFIRE_COSY_SMOKE at field_17430 + f Lnet/minecraft/core/particles/SimpleParticleType; CAMPFIRE_SIGNAL_SMOKE au field_17431 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_HONEY av field_20534 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_HONEY aw field_20535 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_HONEY ax field_20536 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_NECTAR ay field_20537 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_SPORE_BLOSSOM az field_28802 + f Lnet/minecraft/core/particles/ParticleType; BLOCK b field_11217 + f Lnet/minecraft/core/particles/SimpleParticleType; VAULT_CONNECTION ba field_48975 + f Lnet/minecraft/core/particles/ParticleType; DUST_PILLAR bb field_50248 + f Lnet/minecraft/core/particles/SimpleParticleType; OMINOUS_SPAWNING bc field_50249 + f Lnet/minecraft/core/particles/SimpleParticleType; RAID_OMEN bd field_50250 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_OMEN be field_50251 + f Lcom/mojang/serialization/Codec; CODEC bf field_25125 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC bg field_48456 + f Lnet/minecraft/core/particles/ParticleType; BLOCK_MARKER c field_35434 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE d field_11247 + f Lnet/minecraft/core/particles/SimpleParticleType; CLOUD e field_11204 + f Lnet/minecraft/core/particles/SimpleParticleType; CRIT f field_11205 + f Lnet/minecraft/core/particles/SimpleParticleType; DAMAGE_INDICATOR g field_11209 + f Lnet/minecraft/core/particles/SimpleParticleType; DRAGON_BREATH h field_11216 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_LAVA i field_11223 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_LAVA j field_18304 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_LAVA k field_18305 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_WATER l field_11232 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_WATER m field_18306 + f Lnet/minecraft/core/particles/ParticleType; DUST n field_11212 + f Lnet/minecraft/core/particles/ParticleType; DUST_COLOR_TRANSITION o field_28276 + f Lnet/minecraft/core/particles/SimpleParticleType; EFFECT p field_11245 + f Lnet/minecraft/core/particles/SimpleParticleType; ELDER_GUARDIAN q field_11250 + f Lnet/minecraft/core/particles/SimpleParticleType; ENCHANTED_HIT r field_11208 + f Lnet/minecraft/core/particles/SimpleParticleType; ENCHANT s field_11215 + f Lnet/minecraft/core/particles/SimpleParticleType; END_ROD t field_11207 + f Lnet/minecraft/core/particles/ParticleType; ENTITY_EFFECT u field_11226 + f Lnet/minecraft/core/particles/SimpleParticleType; EXPLOSION_EMITTER v field_11221 + f Lnet/minecraft/core/particles/SimpleParticleType; EXPLOSION w field_11236 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST x field_47494 + f Lnet/minecraft/core/particles/SimpleParticleType; SMALL_GUST y field_50252 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST_EMITTER_LARGE z field_49140 + m (Ljava/lang/String;Z)Lnet/minecraft/core/particles/SimpleParticleType; register a method_10303 + p 0 key + p 1 overrideLimiter + m (Ljava/lang/String;ZLjava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/core/particles/ParticleType; register a method_42022 + p 0 name + p 1 overrideLimitter + p 2 codecGetter + p 3 streamCodecGetter + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56180 a method_56180 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_42616 b method_42616 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56181 c method_56181 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_33121 d method_33121 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56182 e method_56182 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_42023 f method_42023 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56183 g method_56183 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_33122 h method_33122 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56184 i method_56184 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_29139 j method_29139 + m ()V + m ()V +c net/minecraft/core/particles/ParticleTypes$1 lm$1 net/minecraft/class_2398$1 + f Ljava/util/function/Function; val$codec a field_25126 + f Ljava/util/function/Function; val$streamCodec b field_48457 + m (ZLjava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/core/particles/ScalableParticleOptionsBase ln net/minecraft/class_9679 + f F scale a field_51493 + f F MIN_SCALE e field_51494 + f F MAX_SCALE f field_51495 + f Lcom/mojang/serialization/Codec; SCALE g field_51496 + m (Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_59844 a method_59844 + m (Ljava/lang/Float;)Ljava/lang/String; method_59845 b method_59845 + m ()F getScale d method_59846 + m (F)V + p 1 scale + m ()V +c net/minecraft/core/particles/SculkChargeParticleOptions lo net/minecraft/class_7227 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38005 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48458 + f F roll c comp_632 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42024 a method_42024 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;)Ljava/lang/Float; method_56185 a method_56185 + m ()F roll b comp_632 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;)Ljava/lang/Float; method_42025 b method_42025 + m (F)V + m ()V +c net/minecraft/core/particles/ShriekParticleOption lp net/minecraft/class_7290 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38358 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48459 + f I delay c field_38360 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42617 a method_42617 + m (Lnet/minecraft/core/particles/ShriekParticleOption;)Ljava/lang/Integer; method_56186 a method_56186 + m ()I getDelay b method_42619 + m (Lnet/minecraft/core/particles/ShriekParticleOption;)Ljava/lang/Integer; method_42618 b method_42618 + m (I)V + p 1 delay + m ()V +c net/minecraft/core/particles/SimpleParticleType lq net/minecraft/class_2400 + f Lcom/mojang/serialization/MapCodec; codec a field_25127 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec b field_48460 + m ()Lnet/minecraft/core/particles/SimpleParticleType; getType e method_29140 + m (Z)V + p 1 overrideLimiter +c net/minecraft/core/particles/VibrationParticleOption lr net/minecraft/class_5745 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28277 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48461 + f Lcom/mojang/serialization/Codec; SAFE_POSITION_SOURCE_CODEC c field_51465 + f Lnet/minecraft/world/level/gameevent/PositionSource; destination d field_38361 + f I arrivalInTicks e field_38362 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42622 a method_42622 + m (Lnet/minecraft/world/level/gameevent/PositionSource;)Lcom/mojang/serialization/DataResult; method_59773 a method_59773 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getDestination b method_33125 + m ()I getArrivalInTicks c method_42624 + m ()Ljava/lang/String; method_59774 d method_59774 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 destination + p 2 arrivalInTicks + m ()V +c net/minecraft/core/particles/package-info ls net/minecraft/class_6286 +c net/minecraft/core/registries/BuiltInRegistries lt net/minecraft/class_7923 + f Lnet/minecraft/core/DefaultedRegistry; SENSOR_TYPE A field_41130 + f Lnet/minecraft/core/Registry; SCHEDULE B field_41131 + f Lnet/minecraft/core/Registry; ACTIVITY C field_41132 + f Lnet/minecraft/core/Registry; LOOT_POOL_ENTRY_TYPE D field_41133 + f Lnet/minecraft/core/Registry; LOOT_FUNCTION_TYPE E field_41134 + f Lnet/minecraft/core/Registry; LOOT_CONDITION_TYPE F field_41135 + f Lnet/minecraft/core/Registry; LOOT_NUMBER_PROVIDER_TYPE G field_41136 + f Lnet/minecraft/core/Registry; LOOT_NBT_PROVIDER_TYPE H field_41137 + f Lnet/minecraft/core/Registry; LOOT_SCORE_PROVIDER_TYPE I field_41138 + f Lnet/minecraft/core/Registry; FLOAT_PROVIDER_TYPE J field_41139 + f Lnet/minecraft/core/Registry; INT_PROVIDER_TYPE K field_41140 + f Lnet/minecraft/core/Registry; HEIGHT_PROVIDER_TYPE L field_41141 + f Lnet/minecraft/core/Registry; BLOCK_PREDICATE_TYPE M field_41142 + f Lnet/minecraft/core/Registry; CARVER N field_41143 + f Lnet/minecraft/core/Registry; FEATURE O field_41144 + f Lnet/minecraft/core/Registry; STRUCTURE_PLACEMENT P field_41145 + f Lnet/minecraft/core/Registry; STRUCTURE_PIECE Q field_41146 + f Lnet/minecraft/core/Registry; STRUCTURE_TYPE R field_41147 + f Lnet/minecraft/core/Registry; PLACEMENT_MODIFIER_TYPE S field_41148 + f Lnet/minecraft/core/Registry; BLOCKSTATE_PROVIDER_TYPE T field_41149 + f Lnet/minecraft/core/Registry; FOLIAGE_PLACER_TYPE U field_41150 + f Lnet/minecraft/core/Registry; TRUNK_PLACER_TYPE V field_41151 + f Lnet/minecraft/core/Registry; ROOT_PLACER_TYPE W field_41152 + f Lnet/minecraft/core/Registry; TREE_DECORATOR_TYPE X field_41153 + f Lnet/minecraft/core/Registry; FEATURE_SIZE_TYPE Y field_41155 + f Lnet/minecraft/core/Registry; BIOME_SOURCE Z field_41156 + f Lnet/minecraft/core/Registry; REGISTRY aA field_41167 + f Lorg/slf4j/Logger; LOGGER aB field_41168 + f Ljava/util/Map; LOADERS aC field_41169 + f Lnet/minecraft/core/WritableRegistry; WRITABLE_REGISTRY aD field_41170 + f Lnet/minecraft/core/DefaultedRegistry; GAME_EVENT a field_41171 + f Lnet/minecraft/core/Registry; CHUNK_GENERATOR aa field_41157 + f Lnet/minecraft/core/Registry; MATERIAL_CONDITION ab field_41158 + f Lnet/minecraft/core/Registry; MATERIAL_RULE ac field_41159 + f Lnet/minecraft/core/Registry; DENSITY_FUNCTION_TYPE ad field_41160 + f Lnet/minecraft/core/Registry; BLOCK_TYPE ae field_46591 + f Lnet/minecraft/core/Registry; STRUCTURE_PROCESSOR af field_41161 + f Lnet/minecraft/core/Registry; STRUCTURE_POOL_ELEMENT ag field_41162 + f Lnet/minecraft/core/Registry; POOL_ALIAS_BINDING_TYPE ah field_46912 + f Lnet/minecraft/core/Registry; CAT_VARIANT ai field_41163 + f Lnet/minecraft/core/Registry; FROG_VARIANT aj field_41164 + f Lnet/minecraft/core/Registry; INSTRUMENT ak field_41166 + f Lnet/minecraft/core/Registry; DECORATED_POT_PATTERN al field_42940 + f Lnet/minecraft/core/Registry; CREATIVE_MODE_TAB am field_44687 + f Lnet/minecraft/core/Registry; TRIGGER_TYPES an field_47496 + f Lnet/minecraft/core/Registry; NUMBER_FORMAT_TYPE ao field_47555 + f Lnet/minecraft/core/Registry; ARMOR_MATERIAL ap field_48976 + f Lnet/minecraft/core/Registry; DATA_COMPONENT_TYPE aq field_49658 + f Lnet/minecraft/core/Registry; ENTITY_SUB_PREDICATE_TYPE ar field_49911 + f Lnet/minecraft/core/Registry; ITEM_SUB_PREDICATE_TYPE as field_49912 + f Lnet/minecraft/core/Registry; MAP_DECORATION_TYPE at field_50078 + f Lnet/minecraft/core/Registry; ENCHANTMENT_EFFECT_COMPONENT_TYPE au field_51832 + f Lnet/minecraft/core/Registry; ENCHANTMENT_LEVEL_BASED_VALUE_TYPE av field_51833 + f Lnet/minecraft/core/Registry; ENCHANTMENT_ENTITY_EFFECT_TYPE aw field_51834 + f Lnet/minecraft/core/Registry; ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE ax field_51835 + f Lnet/minecraft/core/Registry; ENCHANTMENT_VALUE_EFFECT_TYPE ay field_51836 + f Lnet/minecraft/core/Registry; ENCHANTMENT_PROVIDER_TYPE az field_51837 + f Lnet/minecraft/core/Registry; SOUND_EVENT b field_41172 + f Lnet/minecraft/core/DefaultedRegistry; FLUID c field_41173 + f Lnet/minecraft/core/Registry; MOB_EFFECT d field_41174 + f Lnet/minecraft/core/DefaultedRegistry; BLOCK e field_41175 + f Lnet/minecraft/core/DefaultedRegistry; ENTITY_TYPE f field_41177 + f Lnet/minecraft/core/DefaultedRegistry; ITEM g field_41178 + f Lnet/minecraft/core/Registry; POTION h field_41179 + f Lnet/minecraft/core/Registry; PARTICLE_TYPE i field_41180 + f Lnet/minecraft/core/Registry; BLOCK_ENTITY_TYPE j field_41181 + f Lnet/minecraft/core/Registry; CUSTOM_STAT k field_41183 + f Lnet/minecraft/core/DefaultedRegistry; CHUNK_STATUS l field_41184 + f Lnet/minecraft/core/Registry; RULE_TEST m field_41185 + f Lnet/minecraft/core/Registry; RULE_BLOCK_ENTITY_MODIFIER n field_43381 + f Lnet/minecraft/core/Registry; POS_RULE_TEST o field_41186 + f Lnet/minecraft/core/Registry; MENU p field_41187 + f Lnet/minecraft/core/Registry; RECIPE_TYPE q field_41188 + f Lnet/minecraft/core/Registry; RECIPE_SERIALIZER r field_41189 + f Lnet/minecraft/core/Registry; ATTRIBUTE s field_41190 + f Lnet/minecraft/core/Registry; POSITION_SOURCE_TYPE t field_41191 + f Lnet/minecraft/core/Registry; COMMAND_ARGUMENT_TYPE u field_41192 + f Lnet/minecraft/core/Registry; STAT_TYPE v field_41193 + f Lnet/minecraft/core/DefaultedRegistry; VILLAGER_TYPE w field_41194 + f Lnet/minecraft/core/DefaultedRegistry; VILLAGER_PROFESSION x field_41195 + f Lnet/minecraft/core/Registry; POINT_OF_INTEREST_TYPE y field_41128 + f Lnet/minecraft/core/DefaultedRegistry; MEMORY_MODULE_TYPE z field_41129 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47451 A method_47451 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47452 B method_47452 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47453 C method_47453 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47454 D method_47454 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47455 E method_47455 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47456 F method_47456 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47457 G method_47457 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47459 H method_47459 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47460 I method_47460 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47461 J method_47461 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47462 K method_47462 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_49927 L method_49927 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_60389 M method_60389 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47465 N method_47465 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47466 O method_47466 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47467 P method_47467 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47469 Q method_47469 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47470 R method_47470 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47471 S method_47471 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47472 T method_47472 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47474 U method_47474 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47475 V method_47475 + m ()V bootStrap a method_47476 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55303 a method_55303 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/DefaultedRegistry; registerDefaulted a method_47481 + p 0 key + p 1 defaultKey + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/WritableRegistry; internalRegister a method_47478 + p 0 key + p 1 registry + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/Registry; registerSimple a method_47479 + p 0 key + p 1 bootstrap + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V method_47482 a method_47482 + m (Lnet/minecraft/core/Registry;)V validate a method_47483 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/Registry;)V method_47484 a method_47484 + m (Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;Lnet/minecraft/core/WritableRegistry;)Ljava/lang/Object; method_47485 a method_47485 + m ()V createContents b method_47487 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/DefaultedRegistry; registerDefaultedWithIntrusiveHolders b method_47489 + p 0 key + p 1 defaultKey + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/Registry; registerSimpleWithIntrusiveHolders b method_53495 + p 0 key + p 1 bootstrap + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47492 b method_47492 + m ()V freeze c method_47491 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47493 c method_47493 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47494 d method_47494 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47495 e method_47495 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47496 f method_47496 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47497 g method_47497 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47498 h method_47498 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47499 i method_47499 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47500 j method_47500 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47501 k method_47501 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47502 l method_47502 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47503 m method_47503 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47504 n method_47504 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47505 o method_47505 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47506 p method_47506 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47507 q method_47507 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47508 r method_47508 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47509 s method_47509 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47510 t method_47510 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47511 u method_47511 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47512 v method_47512 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47513 w method_47513 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47514 x method_47514 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47515 y method_47515 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47450 z method_47450 + m ()V + m ()V +c net/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap lt$a net/minecraft/class_7923$class_6889 +c net/minecraft/core/registries/Registries lu net/minecraft/class_7924 + f Lnet/minecraft/resources/ResourceKey; FEATURE A field_41267 + f Lnet/minecraft/resources/ResourceKey; FEATURE_SIZE_TYPE B field_41268 + f Lnet/minecraft/resources/ResourceKey; FLOAT_PROVIDER_TYPE C field_41269 + f Lnet/minecraft/resources/ResourceKey; FLUID D field_41270 + f Lnet/minecraft/resources/ResourceKey; FOLIAGE_PLACER_TYPE E field_41271 + f Lnet/minecraft/resources/ResourceKey; FROG_VARIANT F field_41272 + f Lnet/minecraft/resources/ResourceKey; GAME_EVENT G field_41273 + f Lnet/minecraft/resources/ResourceKey; HEIGHT_PROVIDER_TYPE H field_41274 + f Lnet/minecraft/resources/ResourceKey; INSTRUMENT I field_41275 + f Lnet/minecraft/resources/ResourceKey; INT_PROVIDER_TYPE J field_41196 + f Lnet/minecraft/resources/ResourceKey; ITEM K field_41197 + f Lnet/minecraft/resources/ResourceKey; JUKEBOX_SONG L field_52176 + f Lnet/minecraft/resources/ResourceKey; LOOT_CONDITION_TYPE M field_41198 + f Lnet/minecraft/resources/ResourceKey; LOOT_FUNCTION_TYPE N field_41199 + f Lnet/minecraft/resources/ResourceKey; LOOT_NBT_PROVIDER_TYPE O field_41200 + f Lnet/minecraft/resources/ResourceKey; LOOT_NUMBER_PROVIDER_TYPE P field_41201 + f Lnet/minecraft/resources/ResourceKey; LOOT_POOL_ENTRY_TYPE Q field_41202 + f Lnet/minecraft/resources/ResourceKey; LOOT_SCORE_PROVIDER_TYPE R field_41203 + f Lnet/minecraft/resources/ResourceKey; MATERIAL_CONDITION S field_41204 + f Lnet/minecraft/resources/ResourceKey; MATERIAL_RULE T field_41205 + f Lnet/minecraft/resources/ResourceKey; MEMORY_MODULE_TYPE U field_41206 + f Lnet/minecraft/resources/ResourceKey; MENU V field_41207 + f Lnet/minecraft/resources/ResourceKey; MOB_EFFECT W field_41208 + f Lnet/minecraft/resources/ResourceKey; PAINTING_VARIANT X field_41209 + f Lnet/minecraft/resources/ResourceKey; PARTICLE_TYPE Y field_41210 + f Lnet/minecraft/resources/ResourceKey; PLACEMENT_MODIFIER_TYPE Z field_41211 + f Lnet/minecraft/resources/ResourceKey; DATA_COMPONENT_TYPE aA field_49659 + f Lnet/minecraft/resources/ResourceKey; ENTITY_SUB_PREDICATE_TYPE aB field_49913 + f Lnet/minecraft/resources/ResourceKey; ITEM_SUB_PREDICATE_TYPE aC field_49914 + f Lnet/minecraft/resources/ResourceKey; MAP_DECORATION_TYPE aD field_50082 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_EFFECT_COMPONENT_TYPE aE field_51838 + f Lnet/minecraft/resources/ResourceKey; BIOME aF field_41236 + f Lnet/minecraft/resources/ResourceKey; CHAT_TYPE aG field_41237 + f Lnet/minecraft/resources/ResourceKey; CONFIGURED_CARVER aH field_41238 + f Lnet/minecraft/resources/ResourceKey; CONFIGURED_FEATURE aI field_41239 + f Lnet/minecraft/resources/ResourceKey; DENSITY_FUNCTION aJ field_41240 + f Lnet/minecraft/resources/ResourceKey; DIMENSION_TYPE aK field_41241 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT aL field_41265 + f Lnet/minecraft/resources/ResourceLocation; ROOT_REGISTRY_NAME a field_47497 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_PROVIDER aM field_51839 + f Lnet/minecraft/resources/ResourceKey; FLAT_LEVEL_GENERATOR_PRESET aN field_41242 + f Lnet/minecraft/resources/ResourceKey; NOISE_SETTINGS aO field_41243 + f Lnet/minecraft/resources/ResourceKey; NOISE aP field_41244 + f Lnet/minecraft/resources/ResourceKey; PLACED_FEATURE aQ field_41245 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE aR field_41246 + f Lnet/minecraft/resources/ResourceKey; PROCESSOR_LIST aS field_41247 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_SET aT field_41248 + f Lnet/minecraft/resources/ResourceKey; TEMPLATE_POOL aU field_41249 + f Lnet/minecraft/resources/ResourceKey; TRIGGER_TYPE aV field_47498 + f Lnet/minecraft/resources/ResourceKey; TRIM_MATERIAL aW field_42083 + f Lnet/minecraft/resources/ResourceKey; TRIM_PATTERN aX field_42082 + f Lnet/minecraft/resources/ResourceKey; WORLD_PRESET aY field_41250 + f Lnet/minecraft/resources/ResourceKey; MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST aZ field_43089 + f Lnet/minecraft/resources/ResourceKey; POINT_OF_INTEREST_TYPE aa field_41212 + f Lnet/minecraft/resources/ResourceKey; POSITION_SOURCE_TYPE ab field_41213 + f Lnet/minecraft/resources/ResourceKey; POS_RULE_TEST ac field_41214 + f Lnet/minecraft/resources/ResourceKey; POTION ad field_41215 + f Lnet/minecraft/resources/ResourceKey; RECIPE_SERIALIZER ae field_41216 + f Lnet/minecraft/resources/ResourceKey; RECIPE_TYPE af field_41217 + f Lnet/minecraft/resources/ResourceKey; ROOT_PLACER_TYPE ag field_41218 + f Lnet/minecraft/resources/ResourceKey; RULE_TEST ah field_41219 + f Lnet/minecraft/resources/ResourceKey; RULE_BLOCK_ENTITY_MODIFIER ai field_43382 + f Lnet/minecraft/resources/ResourceKey; SCHEDULE aj field_41220 + f Lnet/minecraft/resources/ResourceKey; SENSOR_TYPE ak field_41221 + f Lnet/minecraft/resources/ResourceKey; SOUND_EVENT al field_41225 + f Lnet/minecraft/resources/ResourceKey; STAT_TYPE am field_41226 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PIECE an field_41227 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PLACEMENT ao field_41228 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_POOL_ELEMENT ap field_41229 + f Lnet/minecraft/resources/ResourceKey; POOL_ALIAS_BINDING aq field_46913 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PROCESSOR ar field_41230 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_TYPE as field_41231 + f Lnet/minecraft/resources/ResourceKey; TREE_DECORATOR_TYPE at field_41232 + f Lnet/minecraft/resources/ResourceKey; TRUNK_PLACER_TYPE au field_41233 + f Lnet/minecraft/resources/ResourceKey; VILLAGER_PROFESSION av field_41234 + f Lnet/minecraft/resources/ResourceKey; VILLAGER_TYPE aw field_41235 + f Lnet/minecraft/resources/ResourceKey; DECORATED_POT_PATTERN ax field_42941 + f Lnet/minecraft/resources/ResourceKey; NUMBER_FORMAT_TYPE ay field_47556 + f Lnet/minecraft/resources/ResourceKey; ARMOR_MATERIAL az field_48977 + f Lnet/minecraft/resources/ResourceKey; ACTIVITY b field_41222 + f Lnet/minecraft/resources/ResourceKey; DIMENSION ba field_41223 + f Lnet/minecraft/resources/ResourceKey; LEVEL_STEM bb field_41224 + f Lnet/minecraft/resources/ResourceKey; LOOT_TABLE bc field_50079 + f Lnet/minecraft/resources/ResourceKey; ITEM_MODIFIER bd field_50080 + f Lnet/minecraft/resources/ResourceKey; PREDICATE be field_50081 + f Lnet/minecraft/resources/ResourceKey; ADVANCEMENT bf field_52177 + f Lnet/minecraft/resources/ResourceKey; RECIPE bg field_52178 + f Lnet/minecraft/resources/ResourceKey; ATTRIBUTE c field_41251 + f Lnet/minecraft/resources/ResourceKey; BANNER_PATTERN d field_41252 + f Lnet/minecraft/resources/ResourceKey; BIOME_SOURCE e field_41253 + f Lnet/minecraft/resources/ResourceKey; BLOCK f field_41254 + f Lnet/minecraft/resources/ResourceKey; BLOCK_TYPE g field_46592 + f Lnet/minecraft/resources/ResourceKey; BLOCK_ENTITY_TYPE h field_41255 + f Lnet/minecraft/resources/ResourceKey; BLOCK_PREDICATE_TYPE i field_41256 + f Lnet/minecraft/resources/ResourceKey; BLOCK_STATE_PROVIDER_TYPE j field_41257 + f Lnet/minecraft/resources/ResourceKey; CARVER k field_41258 + f Lnet/minecraft/resources/ResourceKey; CAT_VARIANT l field_41259 + f Lnet/minecraft/resources/ResourceKey; WOLF_VARIANT m field_49772 + f Lnet/minecraft/resources/ResourceKey; CHUNK_GENERATOR n field_41260 + f Lnet/minecraft/resources/ResourceKey; CHUNK_STATUS o field_41261 + f Lnet/minecraft/resources/ResourceKey; COMMAND_ARGUMENT_TYPE p field_41262 + f Lnet/minecraft/resources/ResourceKey; CREATIVE_MODE_TAB q field_44688 + f Lnet/minecraft/resources/ResourceKey; CUSTOM_STAT r field_41263 + f Lnet/minecraft/resources/ResourceKey; DAMAGE_TYPE s field_42534 + f Lnet/minecraft/resources/ResourceKey; DENSITY_FUNCTION_TYPE t field_41264 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_ENTITY_EFFECT_TYPE u field_51840 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_LEVEL_BASED_VALUE_TYPE v field_51841 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE w field_51842 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_PROVIDER_TYPE x field_51843 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_VALUE_EFFECT_TYPE y field_51844 + f Lnet/minecraft/resources/ResourceKey; ENTITY_TYPE z field_41266 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; levelStemToLevel a method_47516 + p 0 levelStem + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createRegistryKey a method_47517 + p 0 name + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; levelToLevelStem b method_47518 + p 0 level + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; elementsDirPath c method_60915 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; tagsDirPath d method_60916 + p 0 registryKey + m ()V + m ()V +c net/minecraft/core/registries/package-info lv net/minecraft/class_7925 +c net/minecraft/data/BlockFamilies lw net/minecraft/class_5793 + f Lnet/minecraft/data/BlockFamily; EXPOSED_CUT_COPPER A field_28518 + f Lnet/minecraft/data/BlockFamily; WAXED_EXPOSED_COPPER B field_33687 + f Lnet/minecraft/data/BlockFamily; WAXED_EXPOSED_CUT_COPPER C field_28519 + f Lnet/minecraft/data/BlockFamily; WEATHERED_COPPER D field_33688 + f Lnet/minecraft/data/BlockFamily; WEATHERED_CUT_COPPER E field_28520 + f Lnet/minecraft/data/BlockFamily; WAXED_WEATHERED_COPPER F field_33681 + f Lnet/minecraft/data/BlockFamily; WAXED_WEATHERED_CUT_COPPER G field_28521 + f Lnet/minecraft/data/BlockFamily; OXIDIZED_COPPER H field_33682 + f Lnet/minecraft/data/BlockFamily; OXIDIZED_CUT_COPPER I field_28522 + f Lnet/minecraft/data/BlockFamily; WAXED_OXIDIZED_COPPER J field_33683 + f Lnet/minecraft/data/BlockFamily; WAXED_OXIDIZED_CUT_COPPER K field_33419 + f Lnet/minecraft/data/BlockFamily; COBBLESTONE L field_28523 + f Lnet/minecraft/data/BlockFamily; MOSSY_COBBLESTONE M field_28524 + f Lnet/minecraft/data/BlockFamily; DIORITE N field_28525 + f Lnet/minecraft/data/BlockFamily; POLISHED_DIORITE O field_28480 + f Lnet/minecraft/data/BlockFamily; GRANITE P field_28481 + f Lnet/minecraft/data/BlockFamily; POLISHED_GRANITE Q field_28482 + f Lnet/minecraft/data/BlockFamily; TUFF R field_47131 + f Lnet/minecraft/data/BlockFamily; POLISHED_TUFF S field_47132 + f Lnet/minecraft/data/BlockFamily; TUFF_BRICKS T field_47133 + f Lnet/minecraft/data/BlockFamily; NETHER_BRICKS U field_28483 + f Lnet/minecraft/data/BlockFamily; RED_NETHER_BRICKS V field_28484 + f Lnet/minecraft/data/BlockFamily; PRISMARINE W field_28485 + f Lnet/minecraft/data/BlockFamily; PURPUR X field_28486 + f Lnet/minecraft/data/BlockFamily; PRISMARINE_BRICKS Y field_28487 + f Lnet/minecraft/data/BlockFamily; DARK_PRISMARINE Z field_28488 + f Lnet/minecraft/data/BlockFamily; ACACIA_PLANKS a field_28500 + f Lnet/minecraft/data/BlockFamily; QUARTZ aa field_28489 + f Lnet/minecraft/data/BlockFamily; SMOOTH_QUARTZ ab field_28490 + f Lnet/minecraft/data/BlockFamily; SANDSTONE ac field_28491 + f Lnet/minecraft/data/BlockFamily; CUT_SANDSTONE ad field_28492 + f Lnet/minecraft/data/BlockFamily; SMOOTH_SANDSTONE ae field_28493 + f Lnet/minecraft/data/BlockFamily; RED_SANDSTONE af field_28494 + f Lnet/minecraft/data/BlockFamily; CUT_RED_SANDSTONE ag field_28495 + f Lnet/minecraft/data/BlockFamily; SMOOTH_RED_SANDSTONE ah field_28496 + f Lnet/minecraft/data/BlockFamily; STONE ai field_28497 + f Lnet/minecraft/data/BlockFamily; STONE_BRICK aj field_28498 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE ak field_28946 + f Lnet/minecraft/data/BlockFamily; COBBLED_DEEPSLATE al field_29079 + f Lnet/minecraft/data/BlockFamily; POLISHED_DEEPSLATE am field_28947 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE_BRICKS an field_28949 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE_TILES ao field_28948 + f Ljava/util/Map; MAP ap field_28499 + f Ljava/lang/String; RECIPE_GROUP_PREFIX_WOODEN aq field_33117 + f Ljava/lang/String; RECIPE_UNLOCKED_BY_HAS_PLANKS ar field_33118 + f Lnet/minecraft/data/BlockFamily; CHERRY_PLANKS b field_42942 + f Lnet/minecraft/data/BlockFamily; BIRCH_PLANKS c field_28501 + f Lnet/minecraft/data/BlockFamily; CRIMSON_PLANKS d field_28502 + f Lnet/minecraft/data/BlockFamily; JUNGLE_PLANKS e field_28503 + f Lnet/minecraft/data/BlockFamily; OAK_PLANKS f field_28504 + f Lnet/minecraft/data/BlockFamily; DARK_OAK_PLANKS g field_28505 + f Lnet/minecraft/data/BlockFamily; SPRUCE_PLANKS h field_28506 + f Lnet/minecraft/data/BlockFamily; WARPED_PLANKS i field_28507 + f Lnet/minecraft/data/BlockFamily; MANGROVE_PLANKS j field_38007 + f Lnet/minecraft/data/BlockFamily; BAMBOO_PLANKS k field_40589 + f Lnet/minecraft/data/BlockFamily; BAMBOO_MOSAIC l field_40590 + f Lnet/minecraft/data/BlockFamily; MUD_BRICKS m field_38008 + f Lnet/minecraft/data/BlockFamily; ANDESITE n field_28508 + f Lnet/minecraft/data/BlockFamily; POLISHED_ANDESITE o field_28509 + f Lnet/minecraft/data/BlockFamily; BLACKSTONE p field_28510 + f Lnet/minecraft/data/BlockFamily; POLISHED_BLACKSTONE q field_28511 + f Lnet/minecraft/data/BlockFamily; POLISHED_BLACKSTONE_BRICKS r field_28512 + f Lnet/minecraft/data/BlockFamily; BRICKS s field_28513 + f Lnet/minecraft/data/BlockFamily; END_STONE_BRICKS t field_28514 + f Lnet/minecraft/data/BlockFamily; MOSSY_STONE_BRICKS u field_28515 + f Lnet/minecraft/data/BlockFamily; COPPER_BLOCK v field_33684 + f Lnet/minecraft/data/BlockFamily; CUT_COPPER w field_28516 + f Lnet/minecraft/data/BlockFamily; WAXED_COPPER_BLOCK x field_33685 + f Lnet/minecraft/data/BlockFamily; WAXED_CUT_COPPER y field_28517 + f Lnet/minecraft/data/BlockFamily; EXPOSED_COPPER z field_33686 + m ()Ljava/util/stream/Stream; getAllFamilies a method_33467 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; familyBuilder a method_33468 + p 0 baseBlock + m ()V + m ()V +c net/minecraft/data/BlockFamily lx net/minecraft/class_5794 + f Lnet/minecraft/world/level/block/Block; baseBlock a field_28526 + f Ljava/util/Map; variants b field_28527 + f Z generateModel c field_28528 + f Z generateRecipe d field_28529 + f Ljava/lang/String; recipeGroupPrefix e field_28530 + f Ljava/lang/String; recipeUnlockedBy f field_28531 + m ()Lnet/minecraft/world/level/block/Block; getBaseBlock a method_33469 + m (Lnet/minecraft/data/BlockFamily$Variant;)Lnet/minecraft/world/level/block/Block; get a method_33470 + p 1 variant + m ()Ljava/util/Map; getVariants b method_33474 + m ()Z shouldGenerateModel c method_33477 + m ()Z shouldGenerateRecipe d method_33478 + m ()Ljava/util/Optional; getRecipeGroupPrefix e method_33479 + m ()Ljava/util/Optional; getRecipeUnlockedBy f method_33480 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 baseBlock +c net/minecraft/data/BlockFamily$Builder lx$a net/minecraft/class_5794$class_5795 + f Lnet/minecraft/data/BlockFamily; family a field_28532 + m ()Lnet/minecraft/data/BlockFamily; getFamily a method_33481 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; button a method_33482 + p 1 buttonBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; sign a method_33483 + p 1 signBlock + p 2 wallSignBlock + m (Ljava/lang/String;)Lnet/minecraft/data/BlockFamily$Builder; recipeGroupPrefix a method_33484 + p 1 recipeGroupPrefix + m ()Lnet/minecraft/data/BlockFamily$Builder; dontGenerateModel b method_33485 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; chiseled b method_33486 + p 1 chiseledBlock + m (Ljava/lang/String;)Lnet/minecraft/data/BlockFamily$Builder; recipeUnlockedBy b method_33487 + p 1 recipeUnlockedBy + m ()Lnet/minecraft/data/BlockFamily$Builder; dontGenerateRecipe c method_33488 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; mosaic c method_45965 + p 1 mosaicBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; cracked d method_34593 + p 1 crackedBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; cut e method_36544 + p 1 cutBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; door f method_33489 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; customFence g method_45966 + p 1 customFenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; fence h method_33490 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; customFenceGate i method_45967 + p 1 customFenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; fenceGate j method_33491 + p 1 fenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; slab k method_33492 + p 1 slabBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; stairs l method_33493 + p 1 stairsBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; pressurePlate m method_33494 + p 1 pressurePlateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; polished n method_33495 + p 1 polishedBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; trapdoor o method_33496 + p 1 trapdoorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; wall p method_33497 + p 1 wallBlock + m (Lnet/minecraft/world/level/block/Block;)V + p 1 baseBlock +c net/minecraft/data/BlockFamily$Variant lx$b net/minecraft/class_5794$class_5796 + f Lnet/minecraft/data/BlockFamily$Variant; BUTTON a field_28533 + f Lnet/minecraft/data/BlockFamily$Variant; CHISELED b field_28534 + f Lnet/minecraft/data/BlockFamily$Variant; CRACKED c field_29503 + f Lnet/minecraft/data/BlockFamily$Variant; CUT d field_33689 + f Lnet/minecraft/data/BlockFamily$Variant; DOOR e field_28535 + f Lnet/minecraft/data/BlockFamily$Variant; CUSTOM_FENCE f field_40592 + f Lnet/minecraft/data/BlockFamily$Variant; FENCE g field_28536 + f Lnet/minecraft/data/BlockFamily$Variant; CUSTOM_FENCE_GATE h field_40593 + f Lnet/minecraft/data/BlockFamily$Variant; FENCE_GATE i field_28537 + f Lnet/minecraft/data/BlockFamily$Variant; MOSAIC j field_40594 + f Lnet/minecraft/data/BlockFamily$Variant; SIGN k field_28538 + f Lnet/minecraft/data/BlockFamily$Variant; SLAB l field_28539 + f Lnet/minecraft/data/BlockFamily$Variant; STAIRS m field_28540 + f Lnet/minecraft/data/BlockFamily$Variant; PRESSURE_PLATE n field_28541 + f Lnet/minecraft/data/BlockFamily$Variant; POLISHED o field_28542 + f Lnet/minecraft/data/BlockFamily$Variant; TRAPDOOR p field_28543 + f Lnet/minecraft/data/BlockFamily$Variant; WALL q field_28544 + f Lnet/minecraft/data/BlockFamily$Variant; WALL_SIGN r field_28545 + f Ljava/lang/String; recipeGroup s field_28546 + f [Lnet/minecraft/data/BlockFamily$Variant; $VALUES t field_28547 + m ()Ljava/lang/String; getRecipeGroup a method_33498 + m ()[Lnet/minecraft/data/BlockFamily$Variant; $values b method_36938 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 variantName + m ()V +c net/minecraft/data/CachedOutput ly net/minecraft/class_7403 + f Lnet/minecraft/data/CachedOutput; NO_CACHE a field_39439 + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V method_44300 a method_44300 + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V writeIfNeeded writeIfNeeded method_43346 + p 1 filePath + p 2 data + p 3 hashCode + m ()V +c net/minecraft/data/DataGenerator lz net/minecraft/class_2403 + f Lorg/slf4j/Logger; LOGGER a field_11275 + f Ljava/nio/file/Path; rootOutputFolder b field_40595 + f Lnet/minecraft/data/PackOutput; vanillaPackOutput c field_40596 + f Ljava/util/Set; allProviderIds d field_40826 + f Ljava/util/Map; providersToRun e field_38909 + f Lnet/minecraft/WorldVersion; version f field_38910 + f Z alwaysGenerate g field_38911 + m ()V run a method_10315 + c Runs all the previously registered data providers. + m (Lnet/minecraft/data/HashCache;Lcom/google/common/base/Stopwatch;Ljava/lang/String;Lnet/minecraft/data/DataProvider;)V method_46563 a method_46563 + m (Z)Lnet/minecraft/data/DataGenerator$PackGenerator; getVanillaPack a method_46564 + p 1 toRun + m (ZLjava/lang/String;)Lnet/minecraft/data/DataGenerator$PackGenerator; getBuiltinDatapack a method_46565 + p 1 toRun + p 2 providerPrefix + m (Ljava/nio/file/Path;Lnet/minecraft/WorldVersion;Z)V + p 1 rootOutputFolder + p 2 version + p 3 alwaysGenerate + m ()V +c net/minecraft/data/DataGenerator$PackGenerator lz$a net/minecraft/class_2403$class_7856 + f Lnet/minecraft/data/DataGenerator; field_40827 a field_40827 + f Z toRun b field_40828 + f Ljava/lang/String; providerPrefix c field_40829 + f Lnet/minecraft/data/PackOutput; output d field_40830 + m (Lnet/minecraft/data/DataProvider$Factory;)Lnet/minecraft/data/DataProvider; addProvider a method_46566 + p 1 factory + m (Lnet/minecraft/data/DataGenerator;ZLjava/lang/String;Lnet/minecraft/data/PackOutput;)V + p 2 toRun + p 3 providerPrefix + p 4 output +c net/minecraft/data/DataProvider ma net/minecraft/class_2405 + f Ljava/util/function/ToIntFunction; FIXED_ORDER_FIELDS a field_39212 + f Ljava/util/Comparator; KEY_COMPARATOR b field_39213 + f Lorg/slf4j/Logger; LOGGER c field_40831 + m ()Ljava/lang/String; getName a method_10321 + c Gets a name for this provider, to use in logging. + m (Lcom/google/gson/JsonElement;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)V method_46567 a method_46567 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_43808 a method_43808 + m (Ljava/lang/String;)Ljava/lang/String; method_43809 a method_43809 + m (Lnet/minecraft/data/CachedOutput;)Ljava/util/concurrent/CompletableFuture; run a method_10319 + p 1 output + m (Lnet/minecraft/data/CachedOutput;Lcom/google/gson/JsonElement;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; saveStable a method_10320 + p 0 output + p 1 json + p 2 path + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; saveStable a method_53496 + p 0 output + p 1 registries + p 2 codec + p 3 value + p 4 path + m ()V +c net/minecraft/data/DataProvider$Factory ma$a net/minecraft/class_2405$class_7857 +c net/minecraft/data/HashCache mb net/minecraft/class_2408 + f Lorg/slf4j/Logger; LOGGER a field_11287 + f Ljava/lang/String; HEADER_MARKER b field_38912 + f Ljava/nio/file/Path; rootDir c field_11285 + f Ljava/nio/file/Path; cacheDir d field_38913 + f Ljava/lang/String; versionId e field_38914 + f Ljava/util/Map; caches f field_40832 + f Ljava/util/Set; cachesToWrite g field_38916 + f Ljava/util/Set; cachePaths h field_38917 + f I initialCount i field_38918 + f I writes j field_40833 + m ()V purgeStaleAndWrite a method_10326 + c Writes the cache file containing the hashes of newly created files to the disk, and deletes any stale files. + m (Ljava/lang/String;)Z shouldRunInThisVersion a method_43347 + p 1 provider + m (Ljava/lang/String;Lnet/minecraft/data/HashCache$UpdateFunction;)Ljava/util/concurrent/CompletableFuture; generateUpdate a method_46570 + p 1 provider + p 2 updateFunction + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/data/HashCache$ProviderCache; readCache a method_43348 + p 0 rootDir + p 1 cachePath + m (Ljava/util/Set;Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;)V method_46571 a method_46571 + m (Lnet/minecraft/data/HashCache$CacheUpdater;Ljava/lang/Object;)Lnet/minecraft/data/HashCache$UpdateResult; method_46568 a method_46568 + m (Lnet/minecraft/data/HashCache$UpdateResult;)V applyUpdate a method_46569 + p 1 updateResult + m (Ljava/lang/String;)Ljava/nio/file/Path; getProviderCachePath b method_43353 + p 1 provider + m (Ljava/nio/file/Path;Ljava/util/Collection;Lnet/minecraft/WorldVersion;)V + p 1 rootDir + p 2 providers + p 3 version + m ()V +c net/minecraft/data/HashCache$1 mb$1 net/minecraft/class_2408$1 + f Lorg/apache/commons/lang3/mutable/MutableInt; val$found a field_48462 + f Ljava/util/Set; val$allowedFiles b field_48463 + f Lorg/apache/commons/lang3/mutable/MutableInt; val$removed c field_48464 + f Lnet/minecraft/data/HashCache; field_48465 d field_48465 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_56187 + m (Lnet/minecraft/data/HashCache;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Set;Lorg/apache/commons/lang3/mutable/MutableInt;)V +c net/minecraft/data/HashCache$CacheUpdater mb$a net/minecraft/class_2408$class_7404 + f Ljava/lang/String; provider b field_40835 + f Lnet/minecraft/data/HashCache$ProviderCache; oldCache c field_38919 + f Lnet/minecraft/data/HashCache$ProviderCacheBuilder; newCache d field_38920 + f Ljava/util/concurrent/atomic/AtomicInteger; writes e field_38921 + f Z closed f field_40836 + m ()Lnet/minecraft/data/HashCache$UpdateResult; close a method_46572 + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Z shouldWrite a method_43355 + p 1 key + p 2 value + m (Lnet/minecraft/data/HashCache;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;)V + p 2 provider + p 3 version + p 4 oldCache +c net/minecraft/data/HashCache$ProviderCache mb$b net/minecraft/class_2408$class_7405 + f Ljava/lang/String; version a comp_729 + f Lcom/google/common/collect/ImmutableMap; data b comp_730 + m ()I count a method_43356 + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/nio/file/Path;Ljava/lang/String;)V method_43361 a method_43361 + m (Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; get a method_43357 + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/data/HashCache$ProviderCache; load a method_43359 + p 0 rootDir + p 1 cachePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/lang/String;)V save a method_43360 + p 1 rootDir + p 2 cachePath + p 3 date + m ()Ljava/lang/String; version b comp_729 + m ()Lcom/google/common/collect/ImmutableMap; data c comp_730 + m (Ljava/lang/String;Lcom/google/common/collect/ImmutableMap;)V +c net/minecraft/data/HashCache$ProviderCacheBuilder mb$c net/minecraft/class_2408$class_7858 + f Ljava/lang/String; version a comp_1122 + f Ljava/util/concurrent/ConcurrentMap; data b comp_1123 + m ()Lnet/minecraft/data/HashCache$ProviderCache; build a method_46573 + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)V put a method_46574 + p 1 key + p 2 value + m ()Ljava/lang/String; version b comp_1122 + m ()Ljava/util/concurrent/ConcurrentMap; data c comp_1123 + m (Ljava/lang/String;)V + p 1 version + m (Ljava/lang/String;Ljava/util/concurrent/ConcurrentMap;)V +c net/minecraft/data/HashCache$UpdateFunction mb$d net/minecraft/class_2408$class_7859 +c net/minecraft/data/HashCache$UpdateResult mb$e net/minecraft/class_2408$class_7860 + f Ljava/lang/String; providerId a comp_1124 + f Lnet/minecraft/data/HashCache$ProviderCache; cache b comp_1125 + f I writes c comp_1126 + m ()Ljava/lang/String; providerId a comp_1124 + m ()Lnet/minecraft/data/HashCache$ProviderCache; cache b comp_1125 + m ()I writes c comp_1126 + m (Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;I)V +c net/minecraft/data/PackOutput mc net/minecraft/class_7784 + f Ljava/nio/file/Path; outputFolder a field_40597 + m ()Ljava/nio/file/Path; getOutputFolder a method_45971 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/PackOutput$PathProvider; createRegistryElementsPathProvider a method_60917 + p 1 registryKey + m (Lnet/minecraft/data/PackOutput$Target;)Ljava/nio/file/Path; getOutputFolder a method_45972 + p 1 target + m (Lnet/minecraft/data/PackOutput$Target;Ljava/lang/String;)Lnet/minecraft/data/PackOutput$PathProvider; createPathProvider a method_45973 + p 1 target + p 2 kind + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/PackOutput$PathProvider; createRegistryTagsPathProvider b method_60918 + p 1 registryKey + m (Ljava/nio/file/Path;)V + p 1 outputFolder +c net/minecraft/data/PackOutput$PathProvider mc$a net/minecraft/class_7784$class_7489 + f Ljava/nio/file/Path; root a field_39365 + f Ljava/lang/String; kind b field_39366 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/nio/file/Path; json a method_44107 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/nio/file/Path; file a method_44108 + p 1 location + p 2 extension + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/data/PackOutput$Target;Ljava/lang/String;)V + p 1 output + p 2 target + p 3 kind +c net/minecraft/data/PackOutput$Target mc$b net/minecraft/class_7784$class_7490 + f Lnet/minecraft/data/PackOutput$Target; DATA_PACK a field_39367 + f Lnet/minecraft/data/PackOutput$Target; RESOURCE_PACK b field_39368 + f Lnet/minecraft/data/PackOutput$Target; REPORTS c field_39369 + f Ljava/lang/String; directory d field_39370 + f [Lnet/minecraft/data/PackOutput$Target; $VALUES e field_39371 + m ()[Lnet/minecraft/data/PackOutput$Target; $values a method_44109 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 directory + m ()V +c net/minecraft/data/advancements/AdvancementProvider md net/minecraft/class_2409 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider d field_39372 + f Ljava/util/List; subProviders e field_11289 + f Ljava/util/concurrent/CompletableFuture; registries f field_40949 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46575 a method_46575 + m (Ljava/util/Set;Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/advancements/AdvancementHolder;)V method_10333 a method_10333 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46809 a method_46809 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)V + p 1 output + p 2 registries + p 3 subProviders +c net/minecraft/data/advancements/AdvancementSubProvider me net/minecraft/class_7785 + m (Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; createPlaceholder a method_55578 + p 0 location + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/function/Consumer;)V generate a method_10335 + p 1 registries + p 2 writer +c net/minecraft/data/advancements/package-info mf net/minecraft/class_6287 +c net/minecraft/data/advancements/packs/VanillaAdvancementProvider mg net/minecraft/class_7786 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/advancements/AdvancementProvider; create a method_45974 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/advancements/packs/VanillaAdventureAdvancements mh net/minecraft/class_2412 + f Ljava/util/List; MOBS_TO_KILL a field_11294 + f I DISTANCE_FROM_BOTTOM_TO_TOP b field_35091 + f I Y_COORDINATE_AT_TOP c field_35092 + f I Y_COORDINATE_AT_BOTTOM d field_35093 + f I BEDROCK_THICKNESS e field_35094 + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51818 a method_51818 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; smithingWithStyle a method_51689 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/resources/ResourceLocation;)V method_54650 a method_54650 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_55580 a method_55580 + m (Lnet/minecraft/advancements/Advancement$Builder;Lcom/mojang/datafixers/util/Pair;)V method_54651 a method_54651 + m (Lnet/minecraft/advancements/Advancement$Builder;Ljava/util/List;)Lnet/minecraft/advancements/Advancement$Builder; addMobsToKill a method_10336 + p 0 builder + p 1 mobs + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)Lnet/minecraft/advancements/Advancement$Builder; addBiomes a method_10337 + p 0 builder + p 1 levelRegistry + p 2 biomes + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)V method_51690 a method_51690 + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/function/Consumer;Ljava/util/List;)Lnet/minecraft/advancements/AdvancementHolder; createMonsterHunterAdvancement a method_55581 + p 0 advancement + p 1 output + p 2 typesRequired + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)Lnet/minecraft/advancements/Criterion; lookAtThroughItem a method_37315 + p 0 entity + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedBlockReadByComparator a method_51815 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder; method_51816 a method_51816 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; fireCountAndBystander a method_37316 + p 0 fireCount + p 1 bystander + m (Ljava/util/Set;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)Z method_54652 a method_54652 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51817 a method_51817 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/function/Consumer;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)V createAdventuringTime a method_49356 + p 0 levelRegistry + p 1 writer + p 2 parent + p 3 preset + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51820 b method_51820 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; craftingANewLook b method_51691 + p 0 builder + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedComparatorReadingBlock b method_51819 + p 0 block + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; respectingTheRemnantsCriterions c method_51692 + p 0 builder + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaHusbandryAdvancements mi net/minecraft/class_2414 + f Ljava/util/List; BREEDABLE_ANIMALS a field_11296 + f Ljava/util/List; INDIRECTLY_BREEDABLE_ANIMALS b field_38467 + f [Lnet/minecraft/world/item/Item; WAX_SCRAPING_TOOLS c field_33964 + f [Lnet/minecraft/world/item/Item; FISH d field_11295 + f [Lnet/minecraft/world/item/Item; FISH_BUCKETS e field_11297 + f [Lnet/minecraft/world/item/Item; EDIBLE_ITEMS f field_11298 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addLeashedFrogVariants a method_43362 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_48497 a method_48497 + m (Lnet/minecraft/advancements/Advancement$Builder;Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Lnet/minecraft/advancements/Advancement$Builder; addBreedable a method_10342 + p 0 builder + p 1 breedableAnimals + p 2 indirectlyBreedableAnimals + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/Holder$Reference;)V method_16117 a method_16117 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/advancements/Advancement$Builder; addTamedWolfVariants a method_59775 + p 0 builder + p 1 registries + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/function/Consumer;Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Lnet/minecraft/advancements/AdvancementHolder; createBreedAllAnimalsAdvancement a method_47810 + p 0 parent + p 1 writer + p 2 breedableAnimals + p 3 indirectlyBreedableAnimals + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58572 a method_58572 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/resources/ResourceKey;)V method_59776 a method_59776 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFood b method_10341 + c Adds all the items in {@link #EDIBLE_ITEMS} to the given advancement's criteria + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_48498 b method_48498 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/Holder$Reference;)V method_43363 b method_43363 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFishBuckets c method_10340 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFish d method_10339 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addCatVariants e method_16118 + p 0 builder + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaNetherAdvancements mj net/minecraft/class_2416 + f Lnet/minecraft/advancements/critereon/ContextAwarePredicate; DISTRACT_PIGLIN_PLAYER_ARMOR_PREDICATE a field_25712 + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaStoryAdvancements mk net/minecraft/class_2417 + m ()V +c net/minecraft/data/advancements/packs/VanillaTheEndAdvancements ml net/minecraft/class_2419 + m ()V +c net/minecraft/data/advancements/packs/package-info mm net/minecraft/class_7787 +c net/minecraft/data/info/BiomeParametersDumpReport mn net/minecraft/class_7228 + f Lorg/slf4j/Logger; LOGGER d field_38012 + f Ljava/nio/file/Path; topPath e field_39373 + f Ljava/util/concurrent/CompletableFuture; registries f field_40950 + f Lcom/mojang/serialization/MapCodec; ENTRY_CODEC g field_43090 + f Lcom/mojang/serialization/Codec; CODEC h field_43091 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46576 a method_46576 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/nio/file/Path; createPath a method_42032 + p 1 location + m (Ljava/nio/file/Path;Ljava/lang/String;)V method_42031 a method_42031 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; dumpValue a method_42030 + p 0 path + p 1 output + p 2 ops + p 3 encoder + p 4 value + m (Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;Lnet/minecraft/world/level/biome/Climate$ParameterList;)V method_49648 a method_49648 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46810 a method_46810 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/info/BlockListReport mo net/minecraft/class_2422 + f Lnet/minecraft/data/PackOutput; output d field_40599 + f Ljava/util/concurrent/CompletableFuture; registries e field_49660 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_57952 a method_57952 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/AssertionError; method_57953 a method_57953 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_57954 a method_57954 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/CommandsReport mp net/minecraft/class_2425 + f Lnet/minecraft/data/PackOutput; output d field_40600 + f Ljava/util/concurrent/CompletableFuture; registries e field_40951 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46811 a method_46811 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/ItemListReport mq net/minecraft/class_9338 + f Lnet/minecraft/data/PackOutput; output d field_49661 + f Ljava/util/concurrent/CompletableFuture; registries e field_49662 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_57955 a method_57955 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_60581 a method_60581 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_57959 a method_57959 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/PacketReport mr net/minecraft/class_9827 + f Lnet/minecraft/data/PackOutput; output d field_52278 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/ConnectionProtocol;Ljava/util/List;)V method_61083 a method_61083 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/ProtocolInfo$Unbound;)V method_61084 a method_61084 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/protocol/PacketType;I)V method_61085 a method_61085 + m ()Lcom/google/gson/JsonElement; serializePackets b method_61086 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/info/RegistryDumpReport ms net/minecraft/class_2427 + f Lnet/minecraft/data/PackOutput; output d field_40601 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_17174 a method_17174 + m (Lnet/minecraft/core/Registry;)Lcom/google/gson/JsonElement; dumpRegistry a method_17175 + p 0 registry + m (Lnet/minecraft/core/Registry;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_40564 a method_40564 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/info/package-info mt net/minecraft/class_6288 +c net/minecraft/data/loot/BlockLootSubProvider mu net/minecraft/class_7788 + c

Interface {@link net.fabricmc.fabric.api.datagen.v1.loot.FabricBlockLootTableGenerator} injected by mod fabric-data-generation-api-v1

+ f Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; HAS_SHEARS a field_40604 + f Lnet/minecraft/core/HolderLookup$Provider; registries b field_51845 + f Ljava/util/Set; explosionResistant c field_40608 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d field_40609 + f Ljava/util/Map; map e field_40610 + f [F NORMAL_LEAVES_SAPLING_CHANCES f field_40605 + f [F NORMAL_LEAVES_STICK_CHANCES g field_40611 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasSilkTouch a method_60390 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTable a method_45976 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; applyExplosionDecay a method_45977 + p 1 item + p 2 functionBuilder + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; applyExplosionCondition a method_45978 + p 1 item + p 2 conditionBuilder + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTable a method_45979 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSlabItemTable a method_45980 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createOreDrop a method_45981 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCropDrops a method_45982 + c If {@code dropGrownCropCondition} fails (i.e. crop is not ready), drops 1 {@code seedsItem}.\nIf {@code dropGrownCropCondition} succeeds (i.e. crop is ready), drops 1 {@code grownCropItem}, and 0-3 {@code seedsItem} with fortune applied. + p 1 cropBlock + p 2 grownCropItem + p 3 seedsItem + p 4 dropGrownCropCondition + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTableWithSilkTouch a method_45983 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTableWithSilkTouch a method_45984 + p 1 block + p 2 item + p 3 count + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoublePlantWithSeedDrops a method_45985 + p 1 block + p 2 sheared + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;[F)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createLeavesDrops a method_45986 + c Used for all leaves, drops self with silk touch, otherwise drops the second Block param with the passed chances for fortune levels, adding in sticks. + p 1 leavesBlock + p 2 saplingBlock + p 3 chances + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSinglePropConditionTable a method_45987 + p 1 block + p 2 property + p 3 value + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_45988 + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchDispatchTable a method_45989 + c If the block is mined with Silk Touch, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMultifaceBlockDrops a method_45990 + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSelfDropDispatchTable a method_45991 + c If the condition from {@code conditionBuilder} succeeds, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code alternativeBuilder}. + p 0 block + p 1 conditionBuilder + p 2 alternativeBuilder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_49357 a method_49357 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/Function;)V add a method_45994 + p 1 block + p 2 factory + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_45992 a method_45992 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; doesNotHaveSilkTouch b method_60391 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShearsOnlyDrop b method_45995 + p 0 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createNameableBlockEntityTable b method_45996 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createStemDrops b method_45997 + c Creates a builder that drops the given IItemProvider in amounts between 0 and 3, based on the AGE property. Only used in vanilla for pumpkin and melon stems. + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMushroomBlockDrop b method_45998 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V addNetherVinesDropTable b method_45999 + p 1 vines + p 2 plant + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;[F)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createOakLeavesDrops b method_46000 + c Used for oak and dark oak, same as droppingWithChancesAndSticks but adding in apples. + p 1 oakLeavesBlock + p 2 saplingBlock + p 3 chances + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShearsDispatchTable b method_46001 + c If the block is mined with Shears, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_45993 b method_45993 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; noDrop c method_45975 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchOnlyTable c method_46003 + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShulkerBoxDrop c method_46004 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createAttachedStemDrops c method_46005 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)V dropOther c method_46006 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V otherWhenSilkTouch c method_46007 + p 1 block + p 2 other + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchOrShearsDispatchTable c method_46008 + c If the block is mined either with Silk Touch or Shears, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_46002 c method_46002 + m ()V generate d method_10379 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPotFlowerItemTable d method_46009 + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCopperOreDrops d method_46010 + p 1 block + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasShearsOrSilkTouch e method_60392 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createLapisOreDrops e method_46011 + p 1 block + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; doesNotHaveShearsOrSilkTouch f method_60393 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createRedstoneOreDrops f method_46012 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBannerDrop g method_46013 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBeeNestDrop h method_46014 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBeeHiveDrop i method_46015 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCaveVinesDrop j method_46016 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createGrassDrops k method_46017 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMangroveLeavesDrops l method_46018 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoublePlantShearsDrop m method_46019 + p 1 sheared + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCandleDrops n method_46020 + p 1 candleBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPetalsDrops o method_49358 + p 1 petalBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCandleCakeDrops p method_46021 + p 0 candleCakeBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoorTable q method_46022 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)V dropPottedContents r method_46023 + p 1 flowerPot + m (Lnet/minecraft/world/level/block/Block;)V dropWhenSilkTouch s method_46024 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)V dropSelf t method_46025 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46026 u method_46026 + m (Ljava/util/Set;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 explosionResistant + p 2 enabledFeatures + p 3 registries + m (Ljava/util/Set;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Map;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 explosionResistant + p 2 enabledFeatures + p 3 map + p 4 registries + m ()V +c net/minecraft/data/loot/EntityLootSubProvider mv net/minecraft/class_7789 + f Lnet/minecraft/core/HolderLookup$Provider; registries a field_51846 + f Ljava/util/Set; SPECIAL_LOOT_TABLE_TYPES b field_40613 + f Lnet/minecraft/world/flag/FeatureFlagSet; allowed c field_42084 + f Lnet/minecraft/world/flag/FeatureFlagSet; required d field_42085 + f Ljava/util/Map; map e field_40615 + m ()Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; shouldSmeltLoot a method_60394 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByFrogVariant a method_46030 + p 1 frogVariant + m (Lnet/minecraft/world/entity/EntityType;)Z canHaveLootTable a method_46027 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_46028 + p 1 entityType + p 2 defaultLootTable + p 3 builder + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_46029 + p 1 entityType + p 2 builder + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSheepTable a method_46031 + p 0 woolItem + m (Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder$Reference;)V method_46033 a method_46033 + m (Ljava/util/Set;Lnet/minecraft/core/Holder$Reference;Ljava/util/function/BiConsumer;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V method_46032 a method_46032 + m ()V generate b method_10400 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_58573 b method_58573 + m (Lnet/minecraft/world/entity/EntityType;)Ljava/util/Map; method_46035 b method_46035 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByFrog c method_46034 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 required + p 2 registries + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 allowed + p 2 required + p 3 registries + m ()V +c net/minecraft/data/loot/LootTableProvider mw net/minecraft/class_2438 + f Lorg/slf4j/Logger; LOGGER d field_11355 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider e field_39374 + f Ljava/util/Set; requiredTables f field_40617 + f Ljava/util/List; subProviders g field_11354 + f Ljava/util/concurrent/CompletableFuture; registries h field_48978 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46577 a method_46577 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceLocation; sequenceIdForLootTable a method_58574 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_10411 a method_10411 + m (Ljava/lang/String;Ljava/lang/String;)V method_10407 a method_10407 + m (Ljava/util/Map;Lnet/minecraft/data/loot/LootTableProvider$SubProviderEntry;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V method_10412 a method_10412 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/Map;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/data/loot/LootTableProvider$SubProviderEntry;)V method_10410 a method_10410 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletableFuture; run a method_56883 + p 1 output + p 2 provider + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_10408 a method_10408 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_56884 b method_56884 + m (Lnet/minecraft/data/PackOutput;Ljava/util/Set;Ljava/util/List;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 requiredTables + p 3 subProviders + p 4 registries + m ()V +c net/minecraft/data/loot/LootTableProvider$SubProviderEntry mw$a net/minecraft/class_2438$class_7790 + f Ljava/util/function/Function; provider a comp_1068 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet b comp_1069 + m ()Ljava/util/function/Function; provider a comp_1068 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet b comp_1069 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)V +c net/minecraft/data/loot/LootTableSubProvider mx net/minecraft/class_7791 + m (Ljava/util/function/BiConsumer;)V generate generate method_10399 + p 1 output +c net/minecraft/data/loot/package-info my net/minecraft/class_6289 +c net/minecraft/data/loot/packs/TradeRebalanceChestLoot mz net/minecraft/class_8794 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2785 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; pillagerOutpostLootTable a method_53849 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; desertPyramidLootTable b method_53850 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; ancientCityLootTable c method_53851 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; jungleTempleLootTable d method_53852 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries e comp_2785 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/TradeRebalanceLootTableProvider na net/minecraft/class_8795 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/loot/LootTableProvider; create a method_53853 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaArchaeologyLoot nb net/minecraft/class_8255 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2786 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2786 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaBlockLoot nc net/minecraft/class_2430 + f [F JUNGLE_LEAVES_SAPLING_CHANGES g field_11338 + f Ljava/util/Set; EXPLOSION_RESISTANT h field_11340 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16314 A method_16314 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46182 A method_46182 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16254 B method_16254 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46183 B method_46183 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34594 C method_34594 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46040 C method_46040 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16242 D method_16242 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46041 D method_46041 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34595 E method_34595 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46042 E method_46042 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_43810 F method_43810 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46043 F method_46043 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34047 G method_34047 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46044 G method_46044 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_23230 H method_23230 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46045 H method_46045 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_23231 I method_23231 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46046 I method_46046 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34596 J method_34596 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46047 J method_46047 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_30157 K method_30157 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46048 K method_46048 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34048 L method_34048 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46049 L method_46049 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16324 M method_16324 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46050 M method_46050 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16307 N method_16307 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46051 N method_46051 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16250 O method_16250 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46052 O method_46052 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_26277 P method_26277 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46053 P method_46053 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16290 Q method_16290 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46054 Q method_46054 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16280 R method_16280 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46055 R method_46055 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16266 S method_16266 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46056 S method_46056 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16264 T method_16264 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46057 T method_46057 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16243 U method_16243 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46058 U method_46058 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49950 V method_49950 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46059 V method_46059 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34050 W method_34050 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46060 W method_46060 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_33707 X method_33707 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46061 X method_46061 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49951 Y method_49951 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46062 Y method_46062 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_33708 Z method_33708 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46063 Z method_46063 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43812 a method_43812 + m (Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_49928 a method_49928 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60395 a method_60395 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46066 a method_46066 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16255 aA method_16255 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60396 aA method_60396 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16286 aB method_16286 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60397 aB method_60397 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16235 aC method_16235 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60398 aC method_60398 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34051 aD method_34051 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60399 aD method_60399 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16277 aE method_16277 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60400 aE method_60400 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16241 aF method_16241 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60401 aF method_60401 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16300 aG method_16300 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46117 aG method_46117 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34052 aH method_34052 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49952 aH method_49952 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_29399 aI method_29399 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49953 aI method_49953 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_29400 aJ method_29400 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49954 aJ method_49954 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16328 aK method_16328 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46119 aK method_46119 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16282 aL method_16282 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46120 aL method_46120 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16251 aM method_16251 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46121 aM method_46121 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16302 aN method_16302 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46122 aN method_46122 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16269 aO method_16269 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46067 aO method_46067 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16275 aP method_16275 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46068 aP method_46068 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16283 aQ method_16283 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46069 aQ method_46069 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16252 aR method_16252 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49929 aR method_49929 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16311 aS method_16311 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49930 aS method_49930 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_43813 aT method_43813 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49931 aT method_49931 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49932 aU method_49932 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49933 aV method_49933 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49934 aW method_49934 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49935 aX method_49935 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49936 aY method_49936 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49937 aZ method_49937 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16284 aa method_16284 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46064 aa method_46064 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16303 ab method_16303 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46065 ab method_46065 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16317 ac method_16317 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46093 ac method_46093 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16325 ad method_16325 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46094 ad method_46094 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16245 ae method_16245 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46095 ae method_46095 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34053 af method_34053 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46096 af method_46096 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34054 ag method_34054 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46097 ag method_46097 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34055 ah method_34055 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46098 ah method_46098 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16237 ai method_16237 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46099 ai method_46099 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34056 aj method_34056 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46100 aj method_46100 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16327 ak method_16327 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46101 ak method_46101 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16310 al method_16310 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46102 al method_46102 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16295 am method_16295 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46104 am method_46104 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16233 an method_16233 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46106 an method_46106 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16292 ao method_16292 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46107 ao method_46107 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16273 ap method_16273 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46109 ap method_46109 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16268 aq method_16268 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46111 aq method_46111 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16296 ar method_16296 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46112 ar method_46112 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16232 as method_16232 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46113 as method_46113 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16326 at method_16326 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46114 at method_46114 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16312 au method_16312 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46115 au method_46115 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16316 av method_16316 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60402 av method_60402 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16306 aw method_16306 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60403 aw method_60403 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16246 ax method_16246 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60404 ax method_60404 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16270 ay method_16270 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60405 ay method_60405 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16263 az method_16263 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60406 az method_60406 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43814 b method_43814 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60407 b method_60407 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46123 b method_46123 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49971 bA method_49971 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49972 bB method_49972 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49973 bC method_49973 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49974 bD method_49974 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49975 bE method_49975 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49976 bF method_49976 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49977 bG method_49977 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49978 bH method_49978 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49979 bI method_49979 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49980 bJ method_49980 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49981 bK method_49981 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49982 bL method_49982 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49955 bM method_49955 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49956 bN method_49956 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49371 bO method_49371 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49372 bP method_49372 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49373 bQ method_49373 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49366 bR method_49366 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49367 bS method_49367 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49368 bT method_49368 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49369 bU method_49369 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49370 bV method_49370 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60408 bW method_60408 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60409 bX method_60409 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60410 bY method_60410 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49938 ba method_49938 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49939 bb method_49939 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49940 bc method_49940 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49941 bd method_49941 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49942 be method_49942 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49943 bf method_49943 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49944 bg method_49944 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49945 bh method_49945 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49946 bi method_49946 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49947 bj method_49947 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49948 bk method_49948 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49949 bl method_49949 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49957 bm method_49957 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49958 bn method_49958 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49959 bo method_49959 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49960 bp method_49960 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49961 bq method_49961 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49962 br method_49962 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49963 bs method_49963 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49964 bt method_49964 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49965 bu method_49965 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49966 bv method_49966 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49967 bw method_49967 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49968 bx method_49968 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49969 by method_49969 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49970 bz method_49970 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46155 c method_46155 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_43815 c method_43815 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60411 c method_60411 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46156 c method_46156 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46157 d method_46157 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_32226 d method_32226 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46158 d method_46158 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPitcherCropLoot e method_49983 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46159 e method_46159 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60412 e method_60412 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46160 e method_46160 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46161 f method_46161 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60413 f method_60413 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46162 f method_46162 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46163 g method_46163 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60414 g method_60414 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46164 g method_46164 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60415 h method_60415 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46165 h method_46165 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60416 i method_60416 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46166 i method_46166 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60417 j method_60417 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60418 k method_60418 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46167 l method_46167 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46168 m method_46168 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46169 n method_46169 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46170 o method_46170 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46171 p method_46171 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46172 q method_46172 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46173 r method_46173 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46174 s method_46174 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46175 t method_46175 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDecoratedPotTable u method_49984 + p 1 block + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46176 u method_46176 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_36230 v method_36230 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46177 v method_46177 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34600 w method_34600 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46178 w method_46178 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34599 x method_34599 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46179 x method_46179 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34601 y method_34601 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46180 y method_46180 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34602 z method_34602 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46181 z method_46181 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaChestLoot nd net/minecraft/class_2432 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2787 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckSupplyLootTable a method_48499 + m (Ljava/util/function/BiConsumer;)V spawnerLootTables a method_55304 + p 1 output + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckMapLootTable b method_48500 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionHoglinStableLootTable c method_48501 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionBridgeLootTable d method_48502 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; endCityTreasureLootTable e method_48503 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; netherBridgeLootTable f method_48504 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionTreasureLootTable g method_48505 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionOtherLootTable h method_48506 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; woodlandMansionLootTable i method_48507 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; strongholdLibraryLootTable j method_48508 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; strongholdCorridorLootTable k method_48509 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; ancientCityLootTable l method_48510 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; jungleTempleLootTable m method_48511 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckTreasureLootTable n method_48512 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; pillagerOutpostLootTable o method_48513 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; desertPyramidLootTable p method_48514 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries q comp_2787 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaEntityLoot ne net/minecraft/class_2434 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; elderGuardianLootTable d method_48515 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/data/loot/packs/VanillaEquipmentLoot nf net/minecraft/class_9486 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2788 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2788 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/armortrim/ArmorTrim;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; trialChamberEquipment a method_60419 + p 0 helmet + p 1 chestplate + p 2 trim + p 3 enchantments + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaFishingLoot ng net/minecraft/class_2437 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2789 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; fishingFishLootTable a method_48516 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries b comp_2789 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaGiftLoot nh net/minecraft/class_3714 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2790 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2790 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaLootTableProvider ni net/minecraft/class_7794 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/loot/LootTableProvider; create a method_46184 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaPiglinBarterLoot nj net/minecraft/class_4845 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2791 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2791 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaShearingLoot nk net/minecraft/class_9340 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2792 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2792 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/package-info nl net/minecraft/class_7795 +c net/minecraft/data/metadata/PackMetadataGenerator nm net/minecraft/class_7796 + f Lnet/minecraft/data/PackOutput; output d field_40619 + f Ljava/util/Map; elements e field_40620 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionType;Ljava/lang/Object;)Lnet/minecraft/data/metadata/PackMetadataGenerator; add a method_46185 + p 1 type + p 2 value + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/util/function/Supplier;)V method_46186 a method_46186 + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/data/metadata/PackMetadataGenerator; forFeaturePack a method_46812 + p 0 output + p 1 description + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/data/metadata/PackMetadataGenerator; forFeaturePack a method_46187 + p 0 output + p 1 description + p 2 flags + m (Lnet/minecraft/server/packs/metadata/MetadataSectionType;Ljava/lang/Object;)Lcom/google/gson/JsonElement; method_46188 b method_46188 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/metadata/package-info nn net/minecraft/class_7797 +c net/minecraft/data/models/BlockModelGenerators no net/minecraft/class_4910 + f Ljava/util/List; MULTIFACE_GENERATOR a field_28548 + f Ljava/util/function/Consumer; blockStateOutput b field_22830 + f Ljava/util/function/BiConsumer; modelOutput c field_22831 + f Ljava/util/function/Consumer; skippedAutoModelsOutput d field_22832 + f Ljava/util/List; nonOrientableTrapdoor e field_28549 + f Ljava/util/Map; fullBlockModelCustomGenerators f field_29504 + f Ljava/util/Map; texturedModels g field_28551 + f Ljava/util/Map; SHAPE_CONSUMERS h field_28552 + f Ljava/util/Map; CHISELED_BOOKSHELF_SLOT_MODEL_CACHE i field_41526 + m ()V createCauldrons A method_25709 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createFloorFireModels A method_25700 + p 1 fireBlock + m ()V createChorusFlower B method_25711 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createSideFireModels B method_25702 + p 1 fireBlock + m ()V createCrafterBlock C method_54654 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createTopFireModels C method_25704 + p 1 fireBlock + m ()V createEndPortalFrame D method_25712 + m (Lnet/minecraft/world/level/block/Block;)V createLantern D method_25706 + p 1 lanternBlock + m ()V createChorusPlant E method_25508 + m (Lnet/minecraft/world/level/block/Block;)V createNonTemplateHorizontalBlock E method_25708 + p 1 horizontalBlock + m ()V createComposter F method_25509 + m (Lnet/minecraft/world/level/block/Block;)V createMultiface F method_33520 + p 1 multifaceBlock + m ()V createAmethystClusters G method_32227 + m (Lnet/minecraft/world/level/block/Block;)V createShulkerBox G method_25710 + p 1 shulkerBoxBlock + m ()V createPointedDripstone H method_32802 + m ()V createDaylightDetector I method_25510 + m ()V createLightningRod J method_34852 + m ()V createFarmland K method_25512 + m ()V createFire L method_25513 + m ()V createSoulFire M method_25514 + m ()V createMuddyMangroveRoots N method_42033 + m ()V createMangrovePropagule O method_42034 + m ()V createFrostedIce P method_25515 + m ()V createGrassBlocks Q method_25516 + m ()V createCocoa R method_25517 + m ()V createDirtPath S method_25518 + m ()V createHopper T method_25519 + m ()V createIronBars U method_25520 + m ()V createLever V method_25521 + m ()V createLilyPad W method_25522 + m ()V createFrogspawnBlock X method_42035 + m ()V createNetherPortalBlock Y method_25523 + m ()V createNetherrack Z method_25524 + m ()V run a method_25534 + m (I)Ljava/util/List; createBambooModels a method_25535 + p 1 age + m (ILjava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;)Lnet/minecraft/resources/ResourceLocation; createTurtleEggModel a method_25536 + p 1 hatchAmount + p 2 variantName + p 3 textureMapping + m (Lnet/minecraft/resources/ResourceLocation;)[Lnet/minecraft/data/models/blockstates/Variant; createRotatedVariants a method_25584 + p 0 modelLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/entity/vault/VaultState;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_56885 a method_56885 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_55305 a method_55305 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;Lnet/minecraft/world/level/block/state/properties/RailShape;)Lnet/minecraft/data/models/blockstates/Variant; method_34628 a method_34628 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_54821 a method_54821 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase;)Lnet/minecraft/data/models/blockstates/Variant; method_49985 a method_49985 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_42036 a method_42036 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; blockEntityModels a method_25585 + p 1 entityBlockModelLocation + p 2 particleBlock + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34625 a method_34625 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34626 a method_34626 + m (Lnet/minecraft/world/item/Item;)V createSimpleFlatItemModel a method_25537 + p 1 flatItem + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V delegateItemModel a method_25538 + p 1 item + p 2 delegateModelLocation + m (Lnet/minecraft/world/item/SpawnEggItem;)V method_34603 a method_34603 + m (Lnet/minecraft/world/level/block/Block;)V createTrivialCube a method_25641 + p 1 block + m (Lnet/minecraft/world/level/block/Block;II)Lnet/minecraft/resources/ResourceLocation; method_34604 a method_34604 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V delegateItemModel a method_25623 + p 1 block + p 2 delegateModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createRotatedVariant a method_25645 + p 0 block + p 1 normalModelLocation + p 2 mirroredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createWall a method_25636 + p 0 wallBlock + p 1 postModelLocation + p 2 lowSideModelLocation + p 3 tallSideModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createCopperBulb a method_54822 + p 1 bulbBlock + p 2 unlit + p 3 unlitPowered + p 4 lit + p 5 litPowered + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createCustomFence a method_46189 + p 0 customFenceBlock + p 1 postModelId + p 2 northModelId + p 3 eastModelId + p 4 southModelId + p 5 westModelId + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createDoor a method_25609 + p 0 doorBlock + p 1 topLeftModelLocation + p 2 topLeftOpenModelLocation + p 3 topRightModelLocation + p 4 topRightOpenModelLocation + p 5 bottomLeftModelLocation + p 6 bottomLeftOpenModelLocation + p 7 bottomRightModelLocation + p 8 bottomRightOpenModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createFenceGate a method_25626 + p 0 fenceGateBlock + p 1 openModelLocation + p 2 closedModelLocation + p 3 wallOpenModelLocation + p 4 wallClosedModelLocation + p 5 uvLock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/blockstates/Variant;)V createGrassLikeBlock a method_25560 + p 1 grassLikeBlock + p 2 modelLocation + p 3 variant + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V createPistonVariant a method_25561 + p 1 pistonBlock + p 2 baseModelLocation + p 3 topTextureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createMirroredCubeGenerator a method_34608 + p 0 cubeBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)V createAirLikeBlock a method_25542 + p 1 airLikeBlock + p 2 particleItem + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyDoorModel a method_54823 + p 1 doorBlock + p 2 sourceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createHangingSign a method_46190 + p 1 particleBlock + p 2 hangingSignBlock + p 3 wallHangingSignBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCoral a method_25544 + p 1 coralBlock + p 2 deadCoralBlock + p 3 coralFullBlock + p 4 deadCoralFullBlock + p 5 coralFanBlock + p 6 deadCoralFanBlock + p 7 coralWallFanBlock + p 8 deadCoralWallFanBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiFunction;)V createCraftingTableLike a method_25546 + p 1 craftingTableBlock + p 2 craftingTableMaterialBlock + p 3 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createPlant a method_25545 + p 1 plantBlock + p 2 pottedPlantBlock + p 3 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/properties/Property;[I)V createCropBlock a method_25547 + p 1 cropBlock + p 2 ageProperty + p 3 ageToVisualStageMapping + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49376 a method_49376 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf;)Lnet/minecraft/data/models/blockstates/Variant; method_49986 a method_49986 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)V createSimpleFlatItemModel a method_25556 + p 1 flatBlock + p 2 layerZeroTextureSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/ModelTemplate;Ljava/util/function/Function;)Lnet/minecraft/resources/ResourceLocation; createSuffixedVariant a method_25557 + p 1 block + p 2 suffix + p 3 modelTemplate + p 4 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/Function;)V createBeeNest a method_25558 + p 1 beeNestBlock + p 2 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createCrossBlockWithDefaultItem a method_25548 + p 1 crossBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/world/level/block/state/properties/Property;[I)V createCrossBlock a method_49374 + p 1 crossBlock + p 2 tintState + p 3 property + p 4 propertyValues + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/data/models/model/TextureMapping;)V createCrossBlockWithDefaultItem a method_25549 + p 1 crossBlock + p 2 tintState + p 3 textureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;)V method_37366 a method_37366 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)V method_34605 a method_34605 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;)V createPumpkinVariant a method_25550 + p 1 pumpkinBlock + p 2 columnTextureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34606 a method_34606 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createPillarBlockUVLocked a method_47519 + p 0 block + p 1 textureMapping + p 2 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/model/ModelTemplate;)V createTrivialBlock a method_35868 + p 1 block + p 2 textureMapping + p 3 modelTemplate + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createAxisAlignedPillarBlock a method_25553 + p 1 axisAlignedPillarBlock + p 2 provider + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createRotatedPillarWithHorizontalVariant a method_25554 + p 1 rotatedPillarBlock + p 2 modelProvider + p 3 horizontalModelProvider + m (Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; createBooleanModelDispatch a method_25565 + p 0 property + p 1 trueModelLocation + p 2 falseModelLocation + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; createEmptyOrFullDispatch a method_25566 + p 0 property + p 1 minimumValueForFullVariant + p 2 fullVariantModelLocation + p 3 emptyVariantModelLocation + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Lnet/minecraft/data/models/blockstates/Variant; method_34610 a method_34610 + m (Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_34616 a method_34616 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Variant; method_34617 a method_34617 + m (Ljava/lang/Integer;)Lnet/minecraft/resources/ResourceLocation; method_49987 a method_49987 + m (Ljava/lang/Integer;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_34619 a method_34619 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Lnet/minecraft/resources/ResourceLocation; createTurtleEggModel a method_25581 + p 1 eggAmount + p 2 variantId + m (Ljava/lang/String;I)Lnet/minecraft/data/models/blockstates/Variant; method_34621 a method_34621 + m (Ljava/util/List;Ljava/util/function/UnaryOperator;)Ljava/util/List; wrapModels a method_25583 + p 0 modelLocations + p 1 variantMapper + m (Ljava/util/function/Function;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49988 a method_49988 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)Lnet/minecraft/data/models/blockstates/Variant; createPointedDripstoneVariant a method_32803 + p 1 direction + p 2 dripstoneThickness + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/data/models/blockstates/Variant; method_34611 a method_34611 + m (Lnet/minecraft/core/FrontAndTop;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; applyRotation a method_26433 + p 1 frontAndTop + p 2 variant + m (Lnet/minecraft/data/BlockFamily;)V method_34612 a method_34612 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/datafixers/util/Pair;)V method_47811 a method_47811 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)V addSlotStateAndRotationVariants a method_47812 + p 1 generator + p 2 condition + p 3 rotation + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;Lcom/mojang/datafixers/util/Pair;)V method_47813 a method_47813 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/data/models/model/ModelTemplate;Z)V addBookSlotModel a method_47814 + p 1 generator + p 2 condition + p 3 rotation + p 4 hasBookProperty + p 5 template + p 6 hasBook + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4;Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; configureDoorHalf a method_25572 + p 0 properties + p 1 half + p 2 leftModelLocation + p 3 leftOpenModelLocation + p 4 rightModelLocation + p 5 rightOpenModelLocation + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34615 a method_34615 + m (Lnet/minecraft/data/models/model/ModelTemplate;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/BlockModelGenerators$BookSlotModelCacheKey;)Lnet/minecraft/resources/ResourceLocation; method_47815 a method_47815 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34623 a method_34623 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; method_34624 a method_34624 + m (Lnet/minecraft/data/models/model/TexturedModel$Provider;[Lnet/minecraft/world/level/block/Block;)V createColoredBlockWithRandomRotations a method_25576 + p 1 modelProvider + p 2 coloredBlocks + m ([ILnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49375 a method_49375 + m ([ILit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34629 a method_34629 + m ([Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34630 a method_34630 + m ([Lnet/minecraft/world/level/block/Block;)V createCampfires a method_27166 + p 1 campfireBlocks + m ()V createInfestedDeepslate aA method_36440 + m ()V createRespawnAnchor aB method_26279 + m ()V createJigsaw aC method_26434 + m ()V createPetrifiedOakSlab aD method_33504 + m ()V createLightBlock aE method_39204 + m ()V createObserver aa method_25525 + m ()V createPistons ab method_25526 + m ()V createPistonHeads ac method_25527 + m ()V createTrialSpawner ad method_55306 + m ()V createVault ae method_56886 + m ()V createSculkSensor af method_33128 + m ()V createCalibratedSculkSensor ag method_49989 + m ()V createSculkShrieker ah method_42037 + m ()V createScaffolding ai method_25528 + m ()V createCaveVines aj method_33710 + m ()V createRedstoneLamp ak method_25529 + m ()V createRedstoneTorch al method_25530 + m ()V createRepeater am method_25531 + m ()V createSeaPickle an method_25532 + m ()V createSnowBlocks ao method_25533 + m ()V createStonecutter ap method_25590 + m ()V createStructureBlock aq method_25591 + m ()V createSweetBerryBush ar method_25592 + m ()V createTripwire as method_25593 + m ()V createTripwireHook at method_25594 + m ()V createTurtleEgg au method_25595 + m ()V createSnifferEgg av method_49990 + m ()V createSculkCatalyst aw method_42038 + m ()V createChiseledBookshelf ax method_46193 + m ()V createMagmaBlock ay method_25597 + m ()V createInfestedStone az method_25598 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createHorizontalFacingDispatch b method_25599 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43818 b method_43818 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase;)Lnet/minecraft/data/models/blockstates/Variant; method_34627 b method_34627 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34639 b method_34639 + m (Lnet/minecraft/world/level/block/Block;)V createGenericCube b method_51463 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createRotatedVariant b method_25634 + p 0 block + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createButton b method_25654 + p 0 buttonBlock + p 1 unpoweredModelLocation + p 2 poweredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createStairs b method_25646 + p 0 stairsBlock + p 1 innerModelLocation + p 2 straightModelLocation + p 3 outerModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createNorthWestMirroredCubeGenerator b method_42039 + p 0 cubeBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyTrapdoorModel b method_54824 + p 1 trapdoorBlock + p 2 sourceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createGrowingPlant b method_25602 + p 1 growingPlantBlock + p 2 plantBlock + p 3 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createCrossBlock b method_25603 + p 1 crossBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/data/models/model/TextureMapping;)V createCrossBlock b method_25604 + p 1 crossBlock + p 2 tintState + p 3 textureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createTrivialBlock b method_25622 + p 1 block + p 2 provider + m (Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34618 b method_34618 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/util/List; method_34634 b method_34634 + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/data/models/blockstates/Variant; method_54655 b method_54655 + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34633 b method_34633 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34636 b method_34636 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; method_34637 b method_34637 + m (Lnet/minecraft/data/models/model/TexturedModel$Provider;[Lnet/minecraft/world/level/block/Block;)V createColoredBlockWithStateRotations b method_25614 + p 1 modelProvider + p 2 coloredBlocks + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createHorizontalFacingDispatchAlt c method_25618 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43819 c method_43819 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34645 c method_34645 + m (Lnet/minecraft/world/level/block/Block;)V skipAutoItemBlock c method_25540 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createSimpleBlock c method_25644 + p 0 block + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createFence c method_25661 + p 0 fenceBlock + p 1 fencePostModelLocation + p 2 fenceSideModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createOrientableTrapdoor c method_25655 + p 0 orientableTrapdoorBlock + p 1 topModelLocation + p 2 bottomModelLocation + p 3 openModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createMirroredColumnGenerator c method_34631 + p 0 columnBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNonTemplateModelBlock c method_25543 + p 1 block + p 2 modelBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createDoublePlant c method_25621 + p 1 doublePlantBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createHorizontallyRotatedBlock c method_25605 + p 1 horizontallyRotatedBlock + p 2 provider + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34641 c method_34641 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34643 c method_34643 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createTorchHorizontalDispatch d method_25630 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43820 d method_43820 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34650 d method_34650 + m (Lnet/minecraft/world/level/block/Block;)V createSimpleFlatItemModel d method_25600 + p 1 flatBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createAxisAlignedPillarBlock d method_25653 + p 0 axisAlignedPillarBlock + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createRotatedPillarWithHorizontalVariant d method_25667 + p 0 rotatedPillarBlock + p 1 modelLocation + p 2 horizontalModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createTrapdoor d method_25662 + p 0 trapdoorBlock + p 1 topModelLocation + p 2 bottomModelLocation + p 3 openModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCoralFans d method_25601 + p 1 coralFanBlock + p 2 coralWallFanBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createFurnace d method_25652 + p 1 furnaceBlock + p 2 modelProvider + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34647 d method_34647 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_33509 d method_33509 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createFacingDispatch e method_25640 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43821 e method_43821 + m (Lnet/minecraft/world/level/block/Block;)V createRotatedMirroredVariantBlock e method_25619 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V createAxisAlignedPillarBlockCustomModel e method_31063 + p 1 axisAlignedPillarBlock + p 2 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createPressurePlate e method_25673 + p 0 pressurePlateBlock + p 1 unpoweredModelLocation + p 2 poweredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createSlab e method_25668 + p 0 slabBlock + p 1 bottomHalfModelLocation + p 2 topHalfModelLocation + p 3 doubleModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createStems e method_25620 + p 1 unattachedStemBlock + p 2 attachedStemBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34651 e method_34651 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_33512 e method_33512 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createRotatedPillar f method_25649 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43822 f method_43822 + m (Lnet/minecraft/world/level/block/Block;)V createRotatedVariantBlock f method_25631 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V createAirLikeBlock f method_25660 + p 1 airLikeBlock + p 2 particleTexture + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V createDoubleBlock f method_25678 + p 1 doubleBlock + p 2 topHalfModelLocation + p 3 bottomHalfModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; blockEntityModels f method_25632 + p 1 entityBlockBaseModel + p 2 particleBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34653 f method_34653 + m ()V createBigDripLeafBlock g method_33711 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43823 g method_43823 + m (Lnet/minecraft/world/level/block/Block;)V createBrushableBlock g method_49377 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createFullAndCarpetBlocks g method_25642 + p 1 fullBlock + p 2 carpetBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34655 g method_34655 + m ()V createPitcherPlant h method_49991 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_34657 h method_34657 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; family h method_25650 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createGlassBlocks h method_25651 + p 1 glassBlock + p 2 paneBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34656 h method_34656 + m ()V createPitcherCrop i method_49992 + m (Lnet/minecraft/world/level/block/Block;)V createDoor i method_25658 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyCopperBulbModel i method_54825 + p 1 bulbBlock + p 2 sourceBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34658 i method_34658 + m ()V createSunflower j method_25657 + m (Lnet/minecraft/world/level/block/Block;)V createOrientableTrapdoor j method_25665 + p 1 orientableTrapdoorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createWeightedPressurePlate j method_25666 + p 1 pressurePlateBlock + p 2 plateMaterialBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34659 j method_34659 + m ()V createTallSeagrass k method_25664 + m (Lnet/minecraft/world/level/block/Block;)V createTrapdoor k method_25671 + p 1 trapdoorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyModel k method_25672 + p 1 sourceBlock + p 2 targetBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_25656 k method_25656 + m ()V createSmallDripleaf l method_33712 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; woodProvider l method_25676 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNormalTorch l method_25677 + p 1 torchBlock + p 2 wallTorchBlock + m ()V createBamboo m method_25670 + m (Lnet/minecraft/world/level/block/Block;)V createNonTemplateModelBlock m method_25681 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createBedItem m method_25682 + p 1 bedBlock + p 2 woolBlock + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createColumnWithFacing n method_25675 + m (Lnet/minecraft/world/level/block/Block;)V createPassiveRail n method_25685 + p 1 railBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNetherRoots n method_25686 + p 1 plantBlock + p 2 pottedPlantBlock + m ()V createBarrel o method_25680 + m (Lnet/minecraft/world/level/block/Block;)V createActiveRail o method_25688 + p 1 railBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCandleAndCandleCake o method_32228 + p 1 candleBlock + p 2 candleCakeBlock + m ()V createBell p method_25684 + m (Lnet/minecraft/world/level/block/Block;)V createFlowerBed p method_49378 + p 1 flowerBedBlock + m ()V createGrindstone q method_25687 + m (Lnet/minecraft/world/level/block/Block;)V createCommandBlock q method_25690 + p 1 commandBlock + m ()V createBookshelf r method_25691 + m (Lnet/minecraft/world/level/block/Block;)V createAnvil r method_25692 + p 1 anvilBlock + m ()V createRedstoneWire s method_25693 + m (Lnet/minecraft/world/level/block/Block;)V createAzalea s method_33713 + p 1 azaleaBlock + m ()V createComparator t method_25695 + m (Lnet/minecraft/world/level/block/Block;)V createPottedAzalea t method_37317 + p 1 pottedAzaleaBlock + m ()V createSmoothStoneSlab u method_25697 + m (Lnet/minecraft/world/level/block/Block;)V createMushroomBlock u method_25694 + p 1 mushroomBlock + m ()V createBrewingStand v method_25699 + m (Lnet/minecraft/world/level/block/Block;)V createDispenserBlock v method_25696 + p 1 dispenserBlock + m ()V createCakeBlock w method_25701 + m (Lnet/minecraft/world/level/block/Block;)V createCopperBulb w method_54826 + p 1 bulbBlock + m ()V createCartographyTable x method_25703 + m (Lnet/minecraft/world/level/block/Block;)V createAmethystCluster x method_32229 + p 1 amethystBlock + m ()V createSmithingTable y method_25705 + m (Lnet/minecraft/world/level/block/Block;)V createNyliumBlock y method_25698 + p 1 nyliumBlock + m ()V createPumpkins z method_25707 + m (Lnet/minecraft/world/level/block/Block;)V createRotatableColumn z method_31064 + p 1 rotatableColumnBlock + m (Ljava/util/function/Consumer;Ljava/util/function/BiConsumer;Ljava/util/function/Consumer;)V + p 1 blockStateOutput + p 2 modelOutput + p 3 skippedAutoModelsOutput + m ()V +c net/minecraft/data/models/BlockModelGenerators$1 no$1 net/minecraft/class_4910$1 + f [I $SwitchMap$net$minecraft$core$FrontAndTop a field_23399 + f [I $SwitchMap$net$minecraft$world$level$block$entity$vault$VaultState b field_48979 + f [I $SwitchMap$net$minecraft$world$level$block$entity$trialspawner$TrialSpawnerState c field_47499 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape d field_22833 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$DoubleBlockHalf e field_43383 + m ()V +c net/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator no$a net/minecraft/class_4910$class_4911 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22834 a field_22834 + f Lnet/minecraft/resources/ResourceLocation; baseModel b field_22835 + m (Lnet/minecraft/data/models/model/ModelTemplate;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; createWithCustomBlockItemModel a method_25713 + p 1 modelTemplate + p 2 blocks + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; create a method_25714 + p 1 blocks + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; createWithoutBlockItem b method_25715 + p 1 blocks + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/Block;)V + p 2 baseModel + p 3 particleBlock +c net/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider no$b net/minecraft/class_4910$class_4912 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22836 a field_22836 + f Lnet/minecraft/data/models/model/TextureMapping; mapping b field_22837 + f Ljava/util/Map; models c field_28553 + f Lnet/minecraft/data/BlockFamily; family d field_28554 + f Lnet/minecraft/resources/ResourceLocation; fullBlock e field_22838 + f Ljava/util/Set; skipGeneratingModelsFor f field_47134 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; button a method_25716 + p 1 buttonBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; donateModelTo a method_54827 + p 1 sourceBlock + p 2 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fullBlock a method_25718 + p 1 block + p 2 modelTemplate + m (Lnet/minecraft/data/BlockFamily$Variant;Lnet/minecraft/world/level/block/Block;)V method_33521 a method_33521 + m (Lnet/minecraft/data/BlockFamily;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; generateFor a method_33522 + p 1 family + m (Lnet/minecraft/data/models/model/ModelTemplate;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getOrCreateModel a method_33524 + p 1 modelTemplate + p 2 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; wall b method_25720 + p 1 wallBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/resources/ResourceLocation; method_33525 b method_33525 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; customFence c method_46194 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fence d method_25721 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; customFenceGate e method_46195 + p 1 customFenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fenceGate f method_25722 + p 1 fenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; pressurePlate g method_25723 + p 1 pressurePlateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; sign h method_25717 + p 1 signBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; slab i method_25724 + p 1 slabBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; stairs j method_25725 + p 1 stairsBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fullBlockVariant k method_34661 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; door l method_33527 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)V trapdoor m method_33528 + p 1 trapdoorBlock + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/data/models/model/TextureMapping;)V + p 2 mapping +c net/minecraft/data/models/BlockModelGenerators$BlockStateGeneratorSupplier no$c net/minecraft/class_4910$class_5879 +c net/minecraft/data/models/BlockModelGenerators$BookSlotModelCacheKey no$d net/minecraft/class_4910$class_7987 + f Lnet/minecraft/data/models/model/ModelTemplate; template a comp_1175 + f Ljava/lang/String; modelSuffix b comp_1176 + m ()Lnet/minecraft/data/models/model/ModelTemplate; template a comp_1175 + m ()Ljava/lang/String; modelSuffix b comp_1176 + m (Lnet/minecraft/data/models/model/ModelTemplate;Ljava/lang/String;)V +c net/minecraft/data/models/BlockModelGenerators$TintState no$e net/minecraft/class_4910$class_4913 + f Lnet/minecraft/data/models/BlockModelGenerators$TintState; TINTED a field_22839 + f Lnet/minecraft/data/models/BlockModelGenerators$TintState; NOT_TINTED b field_22840 + f [Lnet/minecraft/data/models/BlockModelGenerators$TintState; $VALUES c field_22841 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getCross a method_25726 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getCrossPot b method_25727 + m ()[Lnet/minecraft/data/models/BlockModelGenerators$TintState; $values c method_36939 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/data/models/BlockModelGenerators$WoodProvider no$f net/minecraft/class_4910$class_4914 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22842 a field_22842 + f Lnet/minecraft/data/models/model/TextureMapping; logMapping b field_22843 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; wood a method_25728 + p 1 woodBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; log b method_25729 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; logWithHorizontal c method_25730 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; logUVLocked d method_47520 + p 1 logBlock + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/data/models/model/TextureMapping;)V + p 2 logMapping +c net/minecraft/data/models/ItemModelGenerators np net/minecraft/class_4915 + f Lnet/minecraft/resources/ResourceLocation; TRIM_TYPE_PREDICATE_ID a field_42086 + f Ljava/util/List; GENERATED_TRIM_MODELS b field_42087 + f Ljava/util/function/BiConsumer; output c field_22844 + m ()V run a method_25731 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V generateLayeredItem a method_48517 + p 1 modelLocation + p 2 layer0 + p 3 layer1 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V generateLayeredItem a method_48742 + p 1 modelLocation + p 2 layer0 + p 3 layer1 + p 4 layer2 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getItemModelForTrimMaterial a method_48518 + p 1 modelLocation + p 2 trimId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;Lnet/minecraft/core/Holder;)Lcom/google/gson/JsonObject; generateBaseArmorTrimTemplate a method_48519 + p 1 modelLocation + p 2 modelGetter + p 3 armorMaterial + m (Lnet/minecraft/world/item/ArmorItem;)V generateArmorTrims a method_48523 + p 1 armorItem + m (Lnet/minecraft/world/item/ArmorItem;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; method_48522 a method_48522 + m (Lnet/minecraft/world/item/Item;)V generateItemWithOverlay a method_57960 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25732 + p 1 item + p 2 layerZeroItem + p 3 modelTemplate + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25734 + p 1 item + p 2 modelLocationSuffix + p 3 modelTemplate + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25733 + p 1 item + p 2 modelTemplate + m (Lnet/minecraft/world/item/ArmorItem;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; method_48743 b method_48743 + m (Lnet/minecraft/world/item/Item;)V generateCompassItem b method_43228 + p 1 item + m (Lnet/minecraft/world/item/Item;)V generateClockItem c method_43229 + p 1 item + m (Ljava/util/function/BiConsumer;)V + p 1 output + m ()V +c net/minecraft/data/models/ItemModelGenerators$TrimModelData np$a net/minecraft/class_4915$class_8072 + f Ljava/lang/String; name a comp_1219 + f F itemModelIndex b comp_1220 + f Ljava/util/Map; overrideArmorMaterials c comp_1239 + m ()Ljava/lang/String; name a comp_1219 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; name a method_48744 + p 1 armorMaterial + m ()F itemModelIndex b comp_1220 + m ()Ljava/util/Map; overrideArmorMaterials c comp_1239 + m (Ljava/lang/String;FLjava/util/Map;)V +c net/minecraft/data/models/ModelProvider nq net/minecraft/class_4916 + f Lnet/minecraft/data/PackOutput$PathProvider; blockStatePathProvider d field_39375 + f Lnet/minecraft/data/PackOutput$PathProvider; modelPathProvider e field_39376 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46578 a method_46578 + m (Lnet/minecraft/world/level/block/Block;)Ljava/nio/file/Path; method_44110 a method_44110 + m (Ljava/util/Map$Entry;)Z method_53817 a method_53817 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V method_25740 a method_25740 + m (Ljava/util/Map;Lnet/minecraft/world/level/block/Block;)Z method_25738 a method_25738 + m (Ljava/util/Map;Lnet/minecraft/data/models/blockstates/BlockStateGenerator;)V method_25739 a method_25739 + m (Ljava/util/Set;Ljava/util/Map;Lnet/minecraft/world/level/block/Block;)V method_25741 a method_25741 + m (Ljava/util/function/Function;Lnet/minecraft/data/CachedOutput;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_25742 a method_25742 + m (Lnet/minecraft/data/CachedOutput;Ljava/util/Map;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; saveCollection a method_25735 + p 1 output + p 2 objectToJsonMap + p 3 resolveObjectPath + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/models/blockstates/BlockStateGenerator nr net/minecraft/class_4917 + m ()Lnet/minecraft/world/level/block/Block; getBlock a method_25743 +c net/minecraft/data/models/blockstates/Condition ns net/minecraft/class_4918 + m ()Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; condition a method_25744 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V validate a method_25745 + p 1 stateDefinition + m ([Lnet/minecraft/data/models/blockstates/Condition;)Lnet/minecraft/data/models/blockstates/Condition; and a method_35870 + p 0 conditions + m ([Lnet/minecraft/data/models/blockstates/Condition;)Lnet/minecraft/data/models/blockstates/Condition; or b method_25746 + p 0 conditions +c net/minecraft/data/models/blockstates/Condition$CompositeCondition ns$a net/minecraft/class_4918$class_4919 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; operation a field_22848 + f Ljava/util/List; subconditions b field_22849 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/data/models/blockstates/Condition;)V method_25747 a method_25747 + m ()Lcom/google/gson/JsonElement; get b method_25748 + m (Lnet/minecraft/data/models/blockstates/Condition$Operation;Ljava/util/List;)V + p 1 operation + p 2 subconditions +c net/minecraft/data/models/blockstates/Condition$Operation ns$b net/minecraft/class_4918$class_4920 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; AND a field_22850 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; OR b field_22851 + f Ljava/lang/String; id c field_22852 + f [Lnet/minecraft/data/models/blockstates/Condition$Operation; $VALUES d field_22853 + m ()[Lnet/minecraft/data/models/blockstates/Condition$Operation; $values a method_36940 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/data/models/blockstates/Condition$TerminalCondition ns$c net/minecraft/class_4918$class_4921 + f Ljava/util/Map; terms a field_22854 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)V method_25755 a method_25755 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;)Z method_25750 a method_25750 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; term a method_25751 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; term a method_25752 + p 1 property + p 2 firstValue + p 3 additionalValues + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)V putValue a method_25753 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/stream/Stream;)Ljava/lang/String; joinValues a method_25754 + p 0 property + p 1 valueStream + m ()Lcom/google/gson/JsonElement; get b method_25756 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; negatedTerm b method_35871 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; negatedTerm b method_35872 + p 1 property + p 2 firstValue + p 3 additionalValues + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Ljava/lang/String; getTerm c method_25757 + p 0 property + p 1 firstValue + p 2 additionalValues + m ()V +c net/minecraft/data/models/blockstates/MultiPartGenerator nt net/minecraft/class_4922 + f Lnet/minecraft/world/level/block/Block; block a field_22855 + f Ljava/util/List; parts b field_22856 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; multiPart a method_25758 + p 0 block + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/data/models/blockstates/MultiPartGenerator$Entry;)V method_25759 a method_25759 + m (Ljava/util/List;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25764 + p 1 variants + m (Lnet/minecraft/data/models/blockstates/Condition;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25761 + p 1 condition + p 2 variants + m (Lnet/minecraft/data/models/blockstates/Condition;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25760 + p 1 condition + p 2 variant + m (Lnet/minecraft/data/models/blockstates/Condition;[Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25762 + p 1 condition + p 2 variants + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25763 + p 1 variant + m ()Lcom/google/gson/JsonElement; get b method_25765 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/data/models/blockstates/MultiPartGenerator$ConditionalEntry nt$a net/minecraft/class_4922$class_4923 + f Lnet/minecraft/data/models/blockstates/Condition; condition a field_22857 + m (Lnet/minecraft/data/models/blockstates/Condition;Ljava/util/List;)V + p 1 condition + p 2 variants +c net/minecraft/data/models/blockstates/MultiPartGenerator$Entry nt$b net/minecraft/class_4922$class_4924 + f Ljava/util/List; variants a field_22858 + m ()Lcom/google/gson/JsonElement; get a method_25766 + m (Lcom/google/gson/JsonObject;)V decorate a method_25768 + p 1 jsonObject + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V validate a method_25767 + p 1 stateDefinition + m (Ljava/util/List;)V + p 1 variants +c net/minecraft/data/models/blockstates/MultiVariantGenerator nu net/minecraft/class_4925 + f Lnet/minecraft/world/level/block/Block; block a field_22859 + f Ljava/util/List; baseVariants b field_22860 + f Ljava/util/Set; seenProperties c field_22861 + f Ljava/util/List; declaredPropertySets d field_22862 + m (Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;)V method_25773 a method_25773 + m (Lcom/mojang/datafixers/util/Pair;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_25774 a method_25774 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25769 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25770 + p 0 block + p 1 variant + m (Lnet/minecraft/world/level/block/Block;[Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25771 + p 0 block + p 1 variants + m (Lnet/minecraft/world/level/block/state/properties/Property;)V method_25772 a method_25772 + m (Ljava/util/List;Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/data/models/blockstates/Variant;)V method_25776 a method_25776 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; mergeVariants a method_25777 + p 0 variants1 + p 1 variants2 + m (Ljava/util/Map;Lcom/google/gson/JsonObject;)V method_25778 a method_25778 + m (Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)V method_25779 a method_25779 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; with a method_25775 + p 1 propertyDispatch + m ()Lcom/google/gson/JsonElement; get b method_25780 + m (Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)Ljava/util/stream/Stream; method_25781 b method_25781 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/List;)V + p 1 block + p 2 baseVariants +c net/minecraft/data/models/blockstates/PropertyDispatch nv net/minecraft/class_4926 + f Ljava/util/Map; values a field_22863 + m ()Ljava/util/Map; getEntries a method_25782 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; property a method_25783 + p 0 property1 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; properties a method_25784 + p 0 property1 + p 1 property2 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; properties a method_25785 + p 0 property1 + p 1 property2 + p 2 property3 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; properties a method_25786 + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; properties a method_25787 + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + p 4 property5 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/data/models/blockstates/Selector;)Ljava/util/stream/Stream; method_25788 a method_25788 + m (Lnet/minecraft/data/models/blockstates/Selector;)Z method_25789 a method_25789 + m (Lnet/minecraft/data/models/blockstates/Selector;Ljava/util/List;)V putValue a method_25790 + p 1 selector + p 2 values + m ()Ljava/util/List; getDefinedProperties b method_25791 + m ()V verifyComplete c method_25792 + m ()V +c net/minecraft/data/models/blockstates/PropertyDispatch$C1 nv$a net/minecraft/class_4926$class_4927 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22864 + m (Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; select a method_25794 + p 1 propertyValue + p 2 variants + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; select a method_25793 + p 1 propertyValue + p 2 variant + m (Ljava/util/function/Function;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25795 + p 1 propertyValueToVariantMapper + m (Ljava/util/function/Function;Ljava/lang/Comparable;)V method_35877 a method_35877 + m (Ljava/util/function/Function;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35878 + p 1 propertyValueToVariantsMapper + m (Ljava/util/function/Function;Ljava/lang/Comparable;)V method_25796 b method_25796 + m (Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 +c net/minecraft/data/models/blockstates/PropertyDispatch$C2 nv$b net/minecraft/class_4926$class_4928 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22865 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22866 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; select a method_25798 + p 1 property1Value + p 2 property2Value + p 3 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; select a method_25797 + p 1 property1Value + p 2 property2Value + p 3 variant + m (Ljava/lang/Comparable;Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25799 a method_25799 + m (Ljava/util/function/BiFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25800 + p 1 propertyValuesToVariantMapper + m (Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25801 a method_25801 + m (Ljava/lang/Comparable;Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25802 b method_25802 + m (Ljava/util/function/BiFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_25803 + p 1 propertyValuesToVariantsMapper + m (Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25804 b method_25804 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 +c net/minecraft/data/models/blockstates/PropertyDispatch$C3 nv$c net/minecraft/class_4926$class_4929 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22867 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22868 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22869 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; select a method_25807 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; select a method_25806 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35879 a method_35879 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35880 a method_35880 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25805 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35881 a method_35881 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25810 b method_25810 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25809 b method_25809 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35882 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25808 b method_25808 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 +c net/minecraft/data/models/blockstates/PropertyDispatch$C4 nv$d net/minecraft/class_4926$class_4930 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22870 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22871 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22872 + f Lnet/minecraft/world/level/block/state/properties/Property; property4 d field_22873 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; select a method_25812 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; select a method_25811 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35883 a method_35883 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35884 a method_35884 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35885 a method_35885 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_35886 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35887 a method_35887 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35888 b method_35888 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35889 b method_35889 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35890 b method_35890 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35891 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35892 b method_35892 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 + p 4 property4 +c net/minecraft/data/models/blockstates/PropertyDispatch$C5 nv$e net/minecraft/class_4926$class_4931 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22874 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22875 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22876 + f Lnet/minecraft/world/level/block/state/properties/Property; property4 d field_22877 + f Lnet/minecraft/world/level/block/state/properties/Property; property5 e field_22878 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; select a method_25814 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 property5Value + p 6 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; select a method_25813 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 property5Value + p 6 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35893 a method_35893 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35894 a method_35894 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35895 a method_35895 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35896 a method_35896 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_35897 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35898 a method_35898 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35899 b method_35899 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35900 b method_35900 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35901 b method_35901 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35902 b method_35902 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35903 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35904 b method_35904 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 + p 4 property4 + p 5 property5 +c net/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction nv$f net/minecraft/class_4926$class_6290 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply method_35905 + p 1 p1 + p 2 p2 + p 3 p3 + p 4 p4 + p 5 p5 +c net/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction nv$g net/minecraft/class_4926$class_6291 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply method_35906 + p 1 p1 + p 2 p2 + p 3 p3 + p 4 p4 +c net/minecraft/data/models/blockstates/PropertyDispatch$TriFunction nv$h net/minecraft/class_4926$class_4932 +c net/minecraft/data/models/blockstates/Selector nw net/minecraft/class_4934 + f Lnet/minecraft/data/models/blockstates/Selector; EMPTY a field_22881 + f Ljava/util/Comparator; COMPARE_BY_NAME b field_22882 + f Ljava/util/List; values c field_22883 + m ()Lnet/minecraft/data/models/blockstates/Selector; empty a method_25818 + m (Lnet/minecraft/world/level/block/state/properties/Property$Value;)Lnet/minecraft/data/models/blockstates/Selector; extend a method_25819 + p 1 value + m (Lnet/minecraft/data/models/blockstates/Selector;)Lnet/minecraft/data/models/blockstates/Selector; extend a method_25820 + p 1 selector + m ([Lnet/minecraft/world/level/block/state/properties/Property$Value;)Lnet/minecraft/data/models/blockstates/Selector; of a method_25821 + p 0 values + m ()Ljava/lang/String; getKey b method_25822 + m (Lnet/minecraft/world/level/block/state/properties/Property$Value;)Ljava/lang/String; method_25823 b method_25823 + m (Ljava/util/List;)V + p 1 values + m ()V +c net/minecraft/data/models/blockstates/Variant nx net/minecraft/class_4935 + f Ljava/util/Map; values a field_22884 + m ()Lnet/minecraft/data/models/blockstates/Variant; variant a method_25824 + m (Lcom/google/gson/JsonArray;Lnet/minecraft/data/models/blockstates/Variant;)V method_25825 a method_25825 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/data/models/blockstates/VariantProperty$Value;)V method_25826 a method_25826 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; convertList a method_25829 + p 0 definitions + m (Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; merge a method_25827 + p 0 definition1 + p 1 definition2 + m (Lnet/minecraft/data/models/blockstates/VariantProperty;Ljava/lang/Object;)Lnet/minecraft/data/models/blockstates/Variant; with a method_25828 + p 1 property + p 2 value + m ()Lcom/google/gson/JsonElement; get b method_25830 + m ()V +c net/minecraft/data/models/blockstates/VariantProperties ny net/minecraft/class_4936 + f Lnet/minecraft/data/models/blockstates/VariantProperty; X_ROT a field_22885 + f Lnet/minecraft/data/models/blockstates/VariantProperty; Y_ROT b field_22886 + f Lnet/minecraft/data/models/blockstates/VariantProperty; MODEL c field_22887 + f Lnet/minecraft/data/models/blockstates/VariantProperty; UV_LOCK d field_22888 + f Lnet/minecraft/data/models/blockstates/VariantProperty; WEIGHT e field_22889 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/google/gson/JsonElement; method_25832 a method_25832 + m (Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)Lcom/google/gson/JsonElement; method_25831 a method_25831 + m (Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)Lcom/google/gson/JsonElement; method_25833 b method_25833 + m ()V + m ()V +c net/minecraft/data/models/blockstates/VariantProperties$Rotation ny$a net/minecraft/class_4936$class_4937 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R0 a field_22890 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R90 b field_22891 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R180 c field_22892 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R270 d field_22893 + f I value e field_22894 + f [Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; $VALUES f field_22895 + m ()[Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; $values a method_36941 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/data/models/blockstates/VariantProperty nz net/minecraft/class_4938 + f Ljava/lang/String; key a field_22896 + f Ljava/util/function/Function; serializer b field_22897 + m (Ljava/lang/Object;)Lnet/minecraft/data/models/blockstates/VariantProperty$Value; withValue a method_25836 + p 1 value + m (Ljava/lang/String;Ljava/util/function/Function;)V + p 1 key + p 2 serializer +c net/minecraft/data/models/blockstates/VariantProperty$Value nz$a net/minecraft/class_4938$class_4939 + f Lnet/minecraft/data/models/blockstates/VariantProperty; field_22898 a field_22898 + f Ljava/lang/Object; value b field_22899 + m ()Lnet/minecraft/data/models/blockstates/VariantProperty; getKey a method_35907 + m (Lcom/google/gson/JsonObject;)V addToVariant a method_25838 + p 1 jsonObject + m (Lnet/minecraft/data/models/blockstates/VariantProperty;Ljava/lang/Object;)V + p 2 value +c net/minecraft/data/models/blockstates/package-info oa net/minecraft/class_6292 +c net/minecraft/data/models/model/DelegatedModel ob net/minecraft/class_4940 + f Lnet/minecraft/resources/ResourceLocation; parent a field_22900 + m ()Lcom/google/gson/JsonElement; get a method_25839 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 parent +c net/minecraft/data/models/model/ModelLocationUtils oc net/minecraft/class_4941 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25840 + p 0 item + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25841 + p 0 item + p 1 modelLocationSuffix + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25842 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25843 + p 0 block + p 1 modelLocationSuffix + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; decorateBlockModelLocation a method_25844 + p 0 blockModelLocation + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46196 a method_46196 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; decorateItemModelLocation b method_25845 + p 0 itemModelLocation + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46197 b method_46197 + m ()V +c net/minecraft/data/models/model/ModelTemplate od net/minecraft/class_4942 + f Ljava/util/Optional; model a field_22901 + f Ljava/util/Set; requiredSlots b field_22902 + f Ljava/util/Optional; suffix c field_22903 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; createBaseTemplate a method_48524 + p 1 modelLocation + p 2 modelGetter + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25852 + p 1 modelLocation + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;Lnet/minecraft/data/models/model/ModelTemplate$JsonFactory;)Lnet/minecraft/resources/ResourceLocation; create a method_48525 + p 1 modelLocation + p 2 textureMapping + p 3 modelOutput + p 4 factory + m (Lcom/google/gson/JsonObject;Lnet/minecraft/resources/ResourceLocation;)V method_48526 a method_48526 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)V method_48527 a method_48527 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getDefaultModelLocation a method_54828 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix a method_25847 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 textureMapping + p 4 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25846 + p 1 modelBlock + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/data/models/model/ModelTemplate$JsonFactory;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonElement; method_48528 a method_48528 + m (Lnet/minecraft/data/models/model/TextureMapping;)Ljava/util/Map; createMap a method_25850 + p 1 textureMapping + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithOverride b method_25853 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 textureMapping + p 4 modelOutput + m (Ljava/util/Optional;Ljava/util/Optional;[Lnet/minecraft/data/models/model/TextureSlot;)V + p 1 model + p 2 suffix + p 3 requiredSlots +c net/minecraft/data/models/model/ModelTemplate$JsonFactory od$a net/minecraft/class_4942$class_8073 +c net/minecraft/data/models/model/ModelTemplates oe net/minecraft/class_4943 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_LEFT_OPEN A field_38021 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_RIGHT B field_38022 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_RIGHT_OPEN C field_38023 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_POST D field_40630 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_NORTH E field_40631 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_EAST F field_40621 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_SOUTH G field_40622 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_WEST H field_40623 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_INVENTORY I field_40624 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_POST J field_22988 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_SIDE K field_22989 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_INVENTORY L field_22990 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_POST M field_22991 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_LOW_SIDE N field_22992 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_TALL_SIDE O field_22993 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_INVENTORY P field_22994 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_CLOSED Q field_40625 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_OPEN R field_40626 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_WALL_CLOSED S field_40627 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_WALL_OPEN T field_40628 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_CLOSED U field_22995 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_OPEN V field_22996 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_WALL_CLOSED W field_22904 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_WALL_OPEN X field_22905 + f Lnet/minecraft/data/models/model/ModelTemplate; PRESSURE_PLATE_UP Y field_22906 + f Lnet/minecraft/data/models/model/ModelTemplate; PRESSURE_PLATE_DOWN Z field_22907 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_4 aA field_42950 + f Lnet/minecraft/data/models/model/ModelTemplate; CORAL_FAN aB field_22946 + f Lnet/minecraft/data/models/model/ModelTemplate; CORAL_WALL_FAN aC field_22947 + f Lnet/minecraft/data/models/model/ModelTemplate; GLAZED_TERRACOTTA aD field_22948 + f Lnet/minecraft/data/models/model/ModelTemplate; CHORUS_FLOWER aE field_22949 + f Lnet/minecraft/data/models/model/ModelTemplate; DAYLIGHT_DETECTOR aF field_22950 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_NOSIDE aG field_22951 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_NOSIDE_ALT aH field_22952 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_POST aI field_22953 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_SIDE aJ field_22954 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_SIDE_ALT aK field_22955 + f Lnet/minecraft/data/models/model/ModelTemplate; COMMAND_BLOCK aL field_22956 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE a field_22942 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_LEFT aM field_41527 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_MID aN field_41528 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_RIGHT aO field_41529 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_LEFT aP field_41530 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_MID aQ field_41531 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_RIGHT aR field_41532 + f Lnet/minecraft/data/models/model/ModelTemplate; ANVIL aS field_22957 + f [Lnet/minecraft/data/models/model/ModelTemplate; STEMS aT field_22958 + f Lnet/minecraft/data/models/model/ModelTemplate; ATTACHED_STEM aU field_22959 + f Lnet/minecraft/data/models/model/ModelTemplate; CROP aV field_22960 + f Lnet/minecraft/data/models/model/ModelTemplate; FARMLAND aW field_22961 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_FLOOR aX field_22962 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_SIDE aY field_22963 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_SIDE_ALT aZ field_22964 + f Lnet/minecraft/data/models/model/ModelTemplate; PARTICLE_ONLY aa field_22908 + f Lnet/minecraft/data/models/model/ModelTemplate; SLAB_BOTTOM ab field_22909 + f Lnet/minecraft/data/models/model/ModelTemplate; SLAB_TOP ac field_22910 + f Lnet/minecraft/data/models/model/ModelTemplate; LEAVES ad field_22911 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_STRAIGHT ae field_22912 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_INNER af field_22913 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_OUTER ag field_22914 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_TOP ah field_22915 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_BOTTOM ai field_22916 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_OPEN aj field_22917 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_TOP ak field_22918 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_BOTTOM al field_22919 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_OPEN am field_22920 + f Lnet/minecraft/data/models/model/ModelTemplate; POINTED_DRIPSTONE an field_28080 + f Lnet/minecraft/data/models/model/ModelTemplate; CROSS ao field_22921 + f Lnet/minecraft/data/models/model/ModelTemplate; TINTED_CROSS ap field_22922 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWER_POT_CROSS aq field_22923 + f Lnet/minecraft/data/models/model/ModelTemplate; TINTED_FLOWER_POT_CROSS ar field_22924 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_FLAT as field_22925 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_CURVED at field_22926 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_RAISED_NE au field_22927 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_RAISED_SW av field_22928 + f Lnet/minecraft/data/models/model/ModelTemplate; CARPET aw field_22929 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_1 ax field_42947 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_2 ay field_42948 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_3 az field_42949 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_ROD_ITEM bA field_22940 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_LAYERED_ITEM bB field_42232 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_LAYERED_ITEM bC field_42233 + f Lnet/minecraft/data/models/model/ModelTemplate; SHULKER_BOX_INVENTORY bD field_22941 + f Lnet/minecraft/data/models/model/ModelTemplate; BED_INVENTORY bE field_22943 + f Lnet/minecraft/data/models/model/ModelTemplate; BANNER_INVENTORY bF field_22944 + f Lnet/minecraft/data/models/model/ModelTemplate; SKULL_INVENTORY bG field_22945 + f Lnet/minecraft/data/models/model/ModelTemplate; CANDLE bH field_27785 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_CANDLES bI field_27786 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_CANDLES bJ field_27787 + f Lnet/minecraft/data/models/model/ModelTemplate; FOUR_CANDLES bK field_27788 + f Lnet/minecraft/data/models/model/ModelTemplate; CANDLE_CAKE bL field_27789 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_DIRECTIONAL b field_23400 + f Lnet/minecraft/data/models/model/ModelTemplate; SCULK_SHRIEKER bM field_38469 + f Lnet/minecraft/data/models/model/ModelTemplate; VAULT bN field_48980 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_MACE_ITEM bO field_49915 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_UP ba field_22965 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_UP_ALT bb field_22966 + f Lnet/minecraft/data/models/model/ModelTemplate; CAMPFIRE bc field_23957 + f Lnet/minecraft/data/models/model/ModelTemplate; LANTERN bd field_22967 + f Lnet/minecraft/data/models/model/ModelTemplate; HANGING_LANTERN be field_22968 + f Lnet/minecraft/data/models/model/ModelTemplate; TORCH bf field_22969 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_TORCH bg field_22970 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON bh field_22971 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON_HEAD bi field_22930 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON_HEAD_SHORT bj field_22931 + f Lnet/minecraft/data/models/model/ModelTemplate; SEAGRASS bk field_22932 + f Lnet/minecraft/data/models/model/ModelTemplate; TURTLE_EGG bl field_22933 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_TURTLE_EGGS bm field_22934 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_TURTLE_EGGS bn field_22935 + f Lnet/minecraft/data/models/model/ModelTemplate; FOUR_TURTLE_EGGS bo field_22936 + f Lnet/minecraft/data/models/model/ModelTemplate; SINGLE_FACE bp field_22937 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_LEVEL1 bq field_28014 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_LEVEL2 br field_28015 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_FULL bs field_27784 + f Lnet/minecraft/data/models/model/ModelTemplate; AZALEA bt field_28804 + f Lnet/minecraft/data/models/model/ModelTemplate; POTTED_AZALEA bu field_33965 + f Lnet/minecraft/data/models/model/ModelTemplate; POTTED_FLOWERING_AZALEA bv field_43408 + f Lnet/minecraft/data/models/model/ModelTemplate; SNIFFER_EGG bw field_43384 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_ITEM bx field_22938 + f Lnet/minecraft/data/models/model/ModelTemplate; MUSIC_DISC by field_44581 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_ITEM bz field_22939 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ALL c field_22972 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ALL_INNER_FACES d field_47500 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_MIRRORED_ALL e field_22973 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_NORTH_WEST_MIRRORED_ALL f field_38015 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_X g field_41276 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_Y h field_41277 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_Z i field_41278 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN j field_22974 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_HORIZONTAL k field_22975 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_MIRRORED l field_29081 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_TOP m field_22976 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_BOTTOM_TOP n field_22977 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_BOTTOM_TOP_INNER_FACES o field_47501 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE p field_22978 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE_TOP_BOTTOM q field_22979 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE_VERTICAL r field_22980 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON s field_22981 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON_PRESSED t field_22982 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON_INVENTORY u field_22983 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_LEFT v field_38016 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_LEFT_OPEN w field_38017 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_RIGHT x field_38018 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_RIGHT_OPEN y field_38019 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_LEFT z field_38020 + m (I)[Lnet/minecraft/data/models/model/ModelTemplate; method_25854 a method_25854 + m (Ljava/lang/String;Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25855 + p 0 blockModelLocation + p 1 suffix + p 2 requiredSlots + m (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25856 + p 0 blockModelLocation + p 1 requiredSlots + m ([Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25857 + p 0 requiredSlots + m (I)Lnet/minecraft/data/models/model/ModelTemplate; method_25858 b method_25858 + m (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; createItem b method_25859 + p 0 itemModelLocation + p 1 requiredSlots + m ()V + m ()V +c net/minecraft/data/models/model/TextureMapping of net/minecraft/class_4944 + f Ljava/util/Map; slots a field_22997 + f Ljava/util/Set; forcedSlots b field_22998 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCube A method_25907 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCubeOnlyTop B method_25908 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCubeSameEnds C method_25909 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; top D method_25910 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; campfire E method_27167 + p 0 campfireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; layer0 F method_25911 + p 0 layerZeroBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getBlockTexture G method_25860 + p 0 block + m ()Ljava/util/stream/Stream; getForced a method_25861 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; defaultTexture a method_25869 + p 0 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; column a method_25870 + p 0 sideTextureLocation + p 1 endTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layered a method_48745 + p 0 layer0 + p 1 layer1 + p 2 layer2 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/models/model/TextureMapping; particleFromItem a method_25862 + p 0 particleItem + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getItemTexture a method_25863 + p 0 item + p 1 textureSuffix + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cube a method_25864 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; attachedStem a method_25865 + p 0 unattachedStemBlock + p 1 attachedStemBlock + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getBlockTexture a method_25866 + p 0 block + p 1 textureSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; trialSpawner a method_55307 + p 0 trialSpawnerBlock + p 1 sideSuffix + p 2 topSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; vault a method_56887 + p 0 vaultBlock + p 1 frontSuffix + p 2 sideSuffix + p 3 topSuffix + p 4 bottomSuffix + m (Lnet/minecraft/world/level/block/Block;Z)Lnet/minecraft/data/models/model/TextureMapping; candleCake a method_32231 + p 0 candleCakeBlock + p 1 lit + m (Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; snifferEgg a method_50027 + p 0 crackLevel + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46198 a method_46198 + m (Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/resources/ResourceLocation; get a method_25867 + p 1 textureSlot + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; put a method_25868 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureMapping; copySlot a method_35908 + p 1 sourceSlot + p 2 targetSlot + m (Z)Lnet/minecraft/data/models/model/TextureMapping; sculkShrieker a method_42753 + p 0 canSummon + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cube b method_25875 + p 0 allTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; door b method_35910 + p 0 topTextureLocation + p 1 bottomTextureLocation + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/models/model/TextureMapping; layer0 b method_25871 + p 0 layerZeroItem + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; defaultTexture b method_25872 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pane b method_25873 + p 0 glassBlock + p 1 paneBlock + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46199 b method_46199 + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; putForced b method_35909 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureMapping; copyForced b method_25874 + p 1 sourceSlot + p 2 targetSlot + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cross c method_25880 + p 0 crossTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layered c method_48529 + p 0 layer0 + p 1 layer1 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceLocation; getItemTexture c method_25876 + p 0 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cross c method_25877 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; craftingTable c method_25878 + p 0 craftingTableBlock + p 1 craftingTableMaterialBlock + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; copyAndUpdate c method_25879 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; plant d method_25884 + p 0 plantTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; plant d method_25881 + p 0 plantBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fletchingTable d method_25882 + p 0 fletchingTableBlock + p 1 fletchingTableMaterialBlock + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; singleSlot d method_25883 + p 0 textureSlot + p 1 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; rail e method_25886 + p 0 railTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; rail e method_25885 + p 0 railBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; wool f method_35911 + p 0 woolTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; wool f method_25887 + p 0 woolBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; crop g method_25889 + p 0 cropTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; flowerbed g method_49379 + p 0 flowerbedBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; particle h method_25891 + p 0 textureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; stem h method_25888 + p 0 stemBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; torch i method_25893 + p 0 torchTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pattern i method_25890 + p 0 patternBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cauldron j method_32232 + p 0 cauldronContentTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fan j method_25892 + p 0 fanBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layer0 k method_25895 + p 0 layerZeroTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; column k method_25894 + p 0 columnBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeTop l method_25896 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pottedAzalea m method_50028 + p 0 azaleaBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; logColumn n method_25897 + p 0 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fence o method_46200 + p 0 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; customParticle p method_46201 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeBottomTop q method_25898 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeBottomTopWithWall r method_25899 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; columnWithWall s method_27168 + p 0 columnBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; door t method_25900 + p 0 doorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; particle u method_25901 + p 0 particleBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fire0 v method_25902 + p 0 fireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fire1 w method_25903 + p 0 fireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; lantern x method_25904 + p 0 lanternBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; torch y method_25905 + p 0 torchBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; commandBlock z method_25906 + p 0 commandBlock + m ()V +c net/minecraft/data/models/model/TextureSlot og net/minecraft/class_4945 + f Lnet/minecraft/data/models/model/TextureSlot; CROP A field_22999 + f Lnet/minecraft/data/models/model/TextureSlot; DIRT B field_23000 + f Lnet/minecraft/data/models/model/TextureSlot; FIRE C field_23001 + f Lnet/minecraft/data/models/model/TextureSlot; LANTERN D field_23002 + f Lnet/minecraft/data/models/model/TextureSlot; PLATFORM E field_23003 + f Lnet/minecraft/data/models/model/TextureSlot; UNSTICKY F field_23004 + f Lnet/minecraft/data/models/model/TextureSlot; TORCH G field_23005 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER0 H field_23006 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER1 I field_42089 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER2 J field_42234 + f Lnet/minecraft/data/models/model/TextureSlot; LIT_LOG K field_23958 + f Lnet/minecraft/data/models/model/TextureSlot; CANDLE L field_27790 + f Lnet/minecraft/data/models/model/TextureSlot; INSIDE M field_27791 + f Lnet/minecraft/data/models/model/TextureSlot; CONTENT N field_27792 + f Lnet/minecraft/data/models/model/TextureSlot; INNER_TOP O field_38470 + f Lnet/minecraft/data/models/model/TextureSlot; FLOWERBED P field_42951 + f Ljava/lang/String; id Q field_23007 + f Lnet/minecraft/data/models/model/TextureSlot; parent R field_23008 + f Lnet/minecraft/data/models/model/TextureSlot; ALL a field_23010 + f Lnet/minecraft/data/models/model/TextureSlot; TEXTURE b field_23011 + f Lnet/minecraft/data/models/model/TextureSlot; PARTICLE c field_23012 + f Lnet/minecraft/data/models/model/TextureSlot; END d field_23013 + f Lnet/minecraft/data/models/model/TextureSlot; BOTTOM e field_23014 + f Lnet/minecraft/data/models/model/TextureSlot; TOP f field_23015 + f Lnet/minecraft/data/models/model/TextureSlot; FRONT g field_23016 + f Lnet/minecraft/data/models/model/TextureSlot; BACK h field_23017 + f Lnet/minecraft/data/models/model/TextureSlot; SIDE i field_23018 + f Lnet/minecraft/data/models/model/TextureSlot; NORTH j field_23019 + f Lnet/minecraft/data/models/model/TextureSlot; SOUTH k field_23020 + f Lnet/minecraft/data/models/model/TextureSlot; EAST l field_23021 + f Lnet/minecraft/data/models/model/TextureSlot; WEST m field_23022 + f Lnet/minecraft/data/models/model/TextureSlot; UP n field_23023 + f Lnet/minecraft/data/models/model/TextureSlot; DOWN o field_23024 + f Lnet/minecraft/data/models/model/TextureSlot; CROSS p field_23025 + f Lnet/minecraft/data/models/model/TextureSlot; PLANT q field_23026 + f Lnet/minecraft/data/models/model/TextureSlot; WALL r field_23027 + f Lnet/minecraft/data/models/model/TextureSlot; RAIL s field_23028 + f Lnet/minecraft/data/models/model/TextureSlot; WOOL t field_23029 + f Lnet/minecraft/data/models/model/TextureSlot; PATTERN u field_23030 + f Lnet/minecraft/data/models/model/TextureSlot; PANE v field_23031 + f Lnet/minecraft/data/models/model/TextureSlot; EDGE w field_23032 + f Lnet/minecraft/data/models/model/TextureSlot; FAN x field_23033 + f Lnet/minecraft/data/models/model/TextureSlot; STEM y field_23034 + f Lnet/minecraft/data/models/model/TextureSlot; UPPER_STEM z field_23035 + m ()Ljava/lang/String; getId a method_25912 + m (Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureSlot; create a method_27043 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureSlot; create a method_27044 + p 0 id + p 1 parent + m ()Lnet/minecraft/data/models/model/TextureSlot; getParent b method_25913 + m (Ljava/lang/String;Lnet/minecraft/data/models/model/TextureSlot;)V + p 1 id + p 2 parent + m ()V +c net/minecraft/data/models/model/TexturedModel oh net/minecraft/class_4946 + f Lnet/minecraft/data/models/model/TextureMapping; mapping A field_23058 + f Lnet/minecraft/data/models/model/ModelTemplate; template B field_23059 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE a field_23036 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_INNER_FACES b field_47502 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_MIRRORED c field_23037 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN d field_23038 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_HORIZONTAL e field_23039 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_TOP_BOTTOM f field_23040 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_TOP g field_23041 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ORIENTABLE_ONLY_TOP h field_23042 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ORIENTABLE i field_23043 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CARPET j field_23044 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_1 k field_42952 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_2 l field_42953 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_3 m field_42954 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_4 n field_42955 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; GLAZED_TERRACOTTA o field_23045 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CORAL_FAN p field_23046 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; PARTICLE_ONLY q field_23047 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ANVIL r field_23048 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; LEAVES s field_23049 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; LANTERN t field_23050 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; HANGING_LANTERN u field_23051 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; SEAGRASS v field_23054 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_ALT w field_23055 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_HORIZONTAL_ALT x field_23056 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; TOP_BOTTOM_WITH_WALL y field_23057 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_WITH_WALL z field_23959 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getTemplate a method_25914 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TexturedModel; createAllSame a method_25920 + p 0 allTextureLocation + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix a method_25915 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25916 + p 1 modelBlock + p 2 modelOutput + m (Ljava/util/function/Consumer;)Lnet/minecraft/data/models/model/TexturedModel; updateTextures a method_25917 + p 1 textureMappingConsumer + m (Ljava/util/function/Function;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/data/models/model/TexturedModel$Provider; createDefault a method_25918 + p 0 blockToTextureMapping + p 1 modelTemplate + m (Ljava/util/function/Function;Lnet/minecraft/data/models/model/ModelTemplate;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TexturedModel; method_25919 a method_25919 + m ()Lnet/minecraft/data/models/model/TextureMapping; getMapping b method_25921 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/model/ModelTemplate;)V + p 1 mapping + p 2 template + m ()V +c net/minecraft/data/models/model/TexturedModel$Provider oh$a net/minecraft/class_4946$class_4947 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TexturedModel; method_35913 a method_35913 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create create method_25923 + p 1 modelBlock + p 2 modelOutput + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix createWithSuffix method_25922 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 modelOutput + m (Ljava/util/function/Consumer;)Lnet/minecraft/data/models/model/TexturedModel$Provider; updateTexture updateTexture method_35912 + p 1 textureMappingConsumer +c net/minecraft/data/models/model/package-info oi net/minecraft/class_6293 +c net/minecraft/data/models/package-info oj net/minecraft/class_6294 +c net/minecraft/data/package-info ok net/minecraft/class_6295 +c net/minecraft/data/recipes/RecipeBuilder ol net/minecraft/class_5797 + f Lnet/minecraft/resources/ResourceLocation; ROOT_RECIPE_ADVANCEMENT a field_39377 + m ()Lnet/minecraft/world/item/Item; getResult a method_36441 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/resources/ResourceLocation; getDefaultRecipeId a method_36442 + p 0 itemLike + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/RecipeBuilder; group a method_33529 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/RecipeBuilder; unlockedBy a method_33530 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; determineBookCategory a method_55308 + p 0 category + m (Lnet/minecraft/data/recipes/RecipeOutput;)V save a method_10431 + p 1 recipeOutput + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_17972 + p 1 recipeOutput + p 2 id + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_36443 + p 1 recipeOutput + p 2 id + m ()V +c net/minecraft/data/recipes/RecipeBuilder$1 ol$1 net/minecraft/class_5797$1 + f [I $SwitchMap$net$minecraft$data$recipes$RecipeCategory a field_47503 + m ()V +c net/minecraft/data/recipes/RecipeCategory om net/minecraft/class_7800 + f Lnet/minecraft/data/recipes/RecipeCategory; BUILDING_BLOCKS a field_40634 + f Lnet/minecraft/data/recipes/RecipeCategory; DECORATIONS b field_40635 + f Lnet/minecraft/data/recipes/RecipeCategory; REDSTONE c field_40636 + f Lnet/minecraft/data/recipes/RecipeCategory; TRANSPORTATION d field_40637 + f Lnet/minecraft/data/recipes/RecipeCategory; TOOLS e field_40638 + f Lnet/minecraft/data/recipes/RecipeCategory; COMBAT f field_40639 + f Lnet/minecraft/data/recipes/RecipeCategory; FOOD g field_40640 + f Lnet/minecraft/data/recipes/RecipeCategory; BREWING h field_40641 + f Lnet/minecraft/data/recipes/RecipeCategory; MISC i field_40642 + f Ljava/lang/String; recipeFolderName j field_40643 + f [Lnet/minecraft/data/recipes/RecipeCategory; $VALUES k field_40644 + m ()Ljava/lang/String; getFolderName a method_46203 + m ()[Lnet/minecraft/data/recipes/RecipeCategory; $values b method_46204 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 recipeFolderName + m ()V +c net/minecraft/data/recipes/RecipeOutput on net/minecraft/class_8790 + m ()Lnet/minecraft/advancements/Advancement$Builder; advancement a method_53818 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/crafting/Recipe;Lnet/minecraft/advancements/AdvancementHolder;)V accept a method_53819 + p 1 location + p 2 recipe + p 3 advancement +c net/minecraft/data/recipes/RecipeProvider oo net/minecraft/class_2446 + f Lnet/minecraft/data/PackOutput$PathProvider; recipePathProvider d field_39378 + f Lnet/minecraft/data/PackOutput$PathProvider; advancementPathProvider e field_39379 + f Ljava/util/concurrent/CompletableFuture; registries f field_48981 + f Ljava/util/Map; SHAPE_BUILDERS g field_28555 + m (I)[Lnet/minecraft/advancements/critereon/ItemPredicate; method_53497 a method_53497 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/Criterion; has a method_10420 + p 0 tag + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/BlockFamily;Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/BlockFamily$Variant;Lnet/minecraft/world/level/block/Block;)V method_33534 a method_33534 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V method_34853 a method_34853 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)Z method_52186 a method_52186 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; has a method_10426 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; doorBuilder a method_33544 + p 0 door + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getConversionRecipeName a method_33714 + p 0 result + p 1 ingredient + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; insideOf a method_10422 + p 0 block + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; has a method_35914 + p 0 count + p 1 item + m (Lnet/minecraft/data/BlockFamily;Lnet/minecraft/data/BlockFamily$Variant;)Lnet/minecraft/world/level/block/Block; getBaseBlock a method_33533 + p 0 family + p 1 variant + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletableFuture; run a method_56888 + p 1 output + p 2 registries + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/advancements/AdvancementHolder;)Ljava/util/concurrent/CompletableFuture; buildAdvancement a method_46206 + p 1 output + p 2 registries + p 3 advancement + m (Lnet/minecraft/data/recipes/RecipeBuilder;Lnet/minecraft/data/BlockFamily$Variant;Ljava/lang/String;)V method_33536 a method_33536 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; slabBuilder a method_32804 + p 0 category + p 1 slab + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;)V buildRecipes a method_10419 + p 1 recipeOutput + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;)V generateForEnabledBlockFamilies a method_46207 + p 0 recipeOutput + p 1 enabledFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/BlockFamily;)V method_46210 a method_46210 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V trimSmithing a method_48530 + p 0 recipeOutput + p 1 ingredientItem + p 2 location + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/Item;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)V netheriteSmithing a method_29728 + p 0 recipeOutput + p 1 ingredientItem + p 2 category + p 3 resultItem + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;Ljava/lang/String;)V oreCooking a method_36232 + p 0 recipeOutput + p 1 serializer + p 2 recipeFactory + p 3 ingredients + p 4 category + p 5 result + p 6 experience + p 7 cookingTime + p 8 group + p 9 suffix + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;)V copySmithingTemplate a method_48532 + p 0 recipeOutput + p 1 template + p 2 baseMaterial + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;I)V planksFromLog a method_24475 + p 0 recipeOutput + p 1 planks + p 2 logs + p 3 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)V copySmithingTemplate a method_60922 + p 0 recipeOutput + p 1 template + p 2 baseItem + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V woodFromLogs a method_24476 + p 0 recipeOutput + p 1 wood + p 2 log + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;)V oneToOneConversionRecipe a method_36444 + p 0 recipeOutput + p 1 result + p 2 ingredient + p 3 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;I)V oneToOneConversionRecipe a method_36445 + p 0 recipeOutput + p 1 result + p 2 ingredient + p 3 group + p 4 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V grate a method_54829 + p 0 recipeOutput + p 1 grateBlock + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;I)V cookRecipes a method_17585 + p 0 recipeOutput + p 1 cookingMethod + p 2 cookingSerializer + p 3 recipeFactory + p 4 cookingTime + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;ILnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;F)V simpleCookingRecipe a method_36448 + p 0 recipeOutput + p 1 cookingMethod + p 2 cookingSerializer + p 3 recipeFactory + p 4 cookingTime + p 5 material + p 6 result + p 7 experience + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Ljava/util/List;Ljava/lang/String;)V colorBlockWithDye a method_51890 + p 0 recipeOutput + p 1 dyes + p 2 dyeableItems + p 3 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;)V oreSmelting a method_36233 + p 0 recipeOutput + p 1 ingredients + p 2 category + p 3 result + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/BlockFamily;Lnet/minecraft/world/flag/FeatureFlagSet;)V generateRecipes a method_33535 + p 0 recipeOutput + p 1 blockFamily + p 2 requiredFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V twoByTwoPacker a method_46209 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;I)V stonecutterResultFromBase a method_33715 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + p 4 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;)V threeByThreePacker a method_47521 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + p 4 criterionName + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)V nineBlockStorageRecipes a method_36325 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipesWithCustomPacking a method_36446 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 packedName + p 6 packedGroup + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipes a method_36447 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 packedName + p 6 packedGroup + p 7 unpackedName + p 8 unpackedGroup + m ([Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; inventoryTrigger a method_53499 + p 0 items + m ([Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; inventoryTrigger a method_10423 + p 0 predicates + m (I)[Ljava/util/concurrent/CompletableFuture; method_46579 b method_46579 + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getHasName b method_32807 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; stairBuilder b method_32808 + p 0 stairs + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_36546 b method_36546 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_56889 b method_56889 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; chiseledBuilder b method_32805 + p 0 category + p 1 chiseledResult + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;)V waxRecipes b method_34854 + p 0 recipeOutput + p 1 requiredFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;I)V planksFromLogs b method_24477 + p 0 recipeOutput + p 1 planks + p 2 logs + p 3 result + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V woodenBoat b method_24478 + p 0 recipeOutput + p 1 boat + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copperBulb b method_54830 + p 0 recipeOutput + p 1 bulbBlock + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;)V oreBlasting b method_36234 + p 0 recipeOutput + p 1 ingredients + p 2 category + p 3 result + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V threeByThreePacker b method_47522 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipesRecipesWithCustomUnpacking b method_36449 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 unpackedName + p 6 unpackedGroup + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getItemName c method_33716 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; trapdoorBuilder c method_33553 + p 0 trapdoor + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33556 c method_33556 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; pressurePlateBuilder c method_32806 + p 0 category + p 1 pressurePlate + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V chestBoat c method_42754 + p 0 recipeOutput + p 1 boat + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V slab c method_32814 + p 0 recipeOutput + p 1 category + p 2 slab + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getSimpleRecipeName d method_36450 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; buttonBuilder d method_33542 + p 0 button + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33532 d method_33532 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; wallBuilder d method_33531 + p 0 category + p 1 wall + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V pressurePlate d method_32813 + p 0 recipeOutput + p 1 pressurePlate + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V wall d method_32809 + p 0 recipeOutput + p 1 category + p 2 wall + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getSmeltingRecipeName e method_36451 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; fenceBuilder e method_33546 + p 0 fence + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33538 e method_33538 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; polishedBuilder e method_33537 + p 0 category + p 1 result + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V hangingSign e method_46208 + p 0 recipeOutput + p 1 sign + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V polished e method_32810 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getBlastingRecipeName f method_36452 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; fenceGateBuilder f method_33548 + p 0 fenceGate + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33541 f method_33541 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; cutBuilder f method_36547 + p 0 category + p 1 cutResult + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V carpet f method_24885 + p 0 recipeOutput + p 1 carpet + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V cut f method_32811 + p 0 recipeOutput + p 1 category + p 2 cutResult + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; method_33540 g method_33540 + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; signBuilder g method_33555 + p 0 sign + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33543 g method_33543 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V bedFromPlanksAndWool g method_24887 + p 0 recipeOutput + p 1 bed + p 2 wool + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V chiseled g method_32812 + p 0 recipeOutput + p 1 category + p 2 chiseledResult + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33545 h method_33545 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V banner h method_24889 + p 0 recipeOutput + p 1 banner + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V mosaicBuilder h method_46212 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33547 i method_33547 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassFromGlassAndDye i method_24890 + p 0 recipeOutput + p 1 stainedGlass + p 2 dye + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stonecutterResultFromBase i method_33717 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_46213 j method_46213 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassPaneFromStainedGlass j method_24891 + p 0 recipeOutput + p 1 stainedGlassPane + p 2 stainedGlass + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33549 k method_33549 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassPaneFromGlassPaneAndDye k method_24892 + p 0 recipeOutput + p 1 stainedGlassPane + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33551 l method_33551 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V coloredTerracottaFromTerracottaAndDye l method_24893 + p 0 recipeOutput + p 1 terracotta + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33550 m method_33550 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V concretePowder m method_24894 + p 0 recipeOutput + p 1 concretePowder + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_46214 n method_46214 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V candle n method_32233 + p 0 recipeOutput + p 1 candle + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33552 o method_33552 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V copySmithingTemplate o method_48533 + p 0 recipeOutput + p 1 template + p 2 baseItem + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33554 p method_33554 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V smeltingResultFromBase p method_34662 + p 0 recipeOutput + p 1 result + p 2 ingredient + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/recipes/RecipeProvider$1 oo$1 net/minecraft/class_2446$1 + f Ljava/util/Set; val$allRecipes a field_46145 + f Ljava/util/List; val$tasks b field_46146 + f Lnet/minecraft/data/CachedOutput; val$cache c field_46147 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries d field_48982 + f Lnet/minecraft/data/recipes/RecipeProvider; field_46148 e field_46148 + m (Lnet/minecraft/data/recipes/RecipeProvider;Ljava/util/Set;Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/recipes/ShapedRecipeBuilder op net/minecraft/class_2447 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40645 + f Lnet/minecraft/world/item/Item; result c field_11380 + f I count d field_11378 + f Ljava/util/List; rows e field_11377 + f Ljava/util/Map; key f field_11376 + f Ljava/util/Map; criteria g field_46149 + f Ljava/lang/String; group h field_11381 + f Z showNotification i field_42956 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; ensureValid a method_10432 + p 1 loaction + m (Ljava/lang/Character;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10433 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 tag + m (Ljava/lang/Character;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10428 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 ingredient + m (Ljava/lang/Character;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10434 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 item + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; shaped a method_10437 + c Creates a new builder for a shaped recipe. + p 0 category + p 1 result + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; shaped a method_10436 + c Creates a new builder for a shaped recipe. + p 0 category + p 1 result + p 2 count + m (Z)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; showNotification a method_49380 + p 1 showNotification + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; pattern b method_10439 + c Adds a new entry to the patterns for this recipe. + p 1 pattern + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; unlockedBy b method_10429 + p 1 name + p 2 criterion + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; group c method_10435 + p 1 groupName + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 result + p 3 count +c net/minecraft/data/recipes/ShapelessRecipeBuilder oq net/minecraft/class_2450 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40646 + f Lnet/minecraft/world/item/Item; result c field_11396 + f I count d field_11395 + f Lnet/minecraft/core/NonNullList; ingredients e field_11394 + f Ljava/util/Map; criteria f field_11393 + f Ljava/lang/String; group g field_11398 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_10445 + c Makes sure that this recipe is valid and obtainable. + p 1 id + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10446 + c Adds an ingredient that can be any item in the given tag. + p 1 tag + m (Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10451 + c Adds an ingredient. + p 1 ingredient + m (Lnet/minecraft/world/item/crafting/Ingredient;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10453 + c Adds an ingredient multiple times. + p 1 ingredient + p 2 quantity + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10449 + c Adds the given ingredient multiple times. + p 1 item + p 2 quantity + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; shapeless a method_10447 + c Creates a new builder for a shapeless recipe. + p 0 category + p 1 result + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; shapeless a method_10448 + c Creates a new builder for a shapeless recipe. + p 0 category + p 1 result + p 2 count + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires b method_10454 + c Adds an ingredient of the given item. + p 1 item + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; group b method_10452 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; unlockedBy b method_10442 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 result + p 3 count +c net/minecraft/data/recipes/SimpleCookingRecipeBuilder or net/minecraft/class_2454 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40647 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; bookCategory c field_40648 + f Lnet/minecraft/world/item/Item; result d field_11417 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient e field_11418 + f F experience f field_11414 + f I cookingTime g field_11415 + f Ljava/util/Map; criteria h field_46150 + f Ljava/lang/String; group i field_11419 + f Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory; factory j field_47504 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_10471 + c Makes sure that this obtainable. + p 1 id + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; campfireCooking a method_35916 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; generic a method_17801 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + p 5 cookingSerializer + p 6 factory + m (Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineRecipeCategory a method_46215 + p 0 serializer + p 1 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; blasting b method_10473 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineSmeltingRecipeCategory b method_46216 + p 0 result + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; group b method_35917 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; unlockedBy b method_10469 + p 1 name + p 2 criterion + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; smelting c method_17802 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineBlastingRecipeCategory c method_46217 + p 0 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; smoking d method_35918 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;FILnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;)V + p 1 category + p 2 bookCategory + p 3 result + p 4 ingredient + p 5 experience + p 6 cookingTime + p 7 factory +c net/minecraft/data/recipes/SingleItemRecipeBuilder os net/minecraft/class_3981 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40650 + f Lnet/minecraft/world/item/Item; result c field_17690 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient d field_17691 + f I count e field_17692 + f Ljava/util/Map; criteria f field_46151 + f Ljava/lang/String; group g field_17694 + f Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory; factory h field_47505 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_17973 + p 1 id + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; stonecutting a method_17968 + p 0 ingredient + p 1 category + p 2 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; stonecutting a method_17969 + p 0 ingredient + p 1 category + p 2 result + p 3 count + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; group b method_35919 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; unlockedBy b method_17970 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 factory + p 3 ingredient + p 4 result + p 5 count +c net/minecraft/data/recipes/SmithingTransformRecipeBuilder ot net/minecraft/class_8074 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42090 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42091 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42092 + f Lnet/minecraft/data/recipes/RecipeCategory; category d field_42093 + f Lnet/minecraft/world/item/Item; result e field_42094 + f Ljava/util/Map; criteria f field_46152 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_48534 + p 1 location + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/recipes/SmithingTransformRecipeBuilder; smithing a method_48535 + p 0 template + p 1 base + p 2 addition + p 3 category + p 4 result + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SmithingTransformRecipeBuilder; unlocks a method_48536 + p 1 key + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_48537 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_48538 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)V + p 1 template + p 2 base + p 3 addition + p 4 category + p 5 result +c net/minecraft/data/recipes/SmithingTrimRecipeBuilder ou net/minecraft/class_8076 + f Lnet/minecraft/data/recipes/RecipeCategory; category a field_42097 + f Lnet/minecraft/world/item/crafting/Ingredient; template b field_42098 + f Lnet/minecraft/world/item/crafting/Ingredient; base c field_42099 + f Lnet/minecraft/world/item/crafting/Ingredient; addition d field_42100 + f Ljava/util/Map; criteria e field_46153 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_48539 + p 1 location + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;)Lnet/minecraft/data/recipes/SmithingTrimRecipeBuilder; smithingTrim a method_48540 + p 0 template + p 1 base + p 2 addition + p 3 category + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SmithingTrimRecipeBuilder; unlocks a method_48541 + p 1 key + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_48542 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;)V + p 1 category + p 2 template + p 3 base + p 4 addition +c net/minecraft/data/recipes/SpecialRecipeBuilder ov net/minecraft/class_2456 + f Ljava/util/function/Function; factory a field_47506 + m (Ljava/util/function/Function;)Lnet/minecraft/data/recipes/SpecialRecipeBuilder; special a method_10476 + p 0 factory + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_10475 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_53820 + p 1 recipeOutput + p 2 recipeId + m (Ljava/util/function/Function;)V + p 1 factory +c net/minecraft/data/recipes/package-info ow net/minecraft/class_6296 +c net/minecraft/data/recipes/packs/BundleRecipeProvider ox net/minecraft/class_7801 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/data/recipes/packs/VanillaRecipeProvider oy net/minecraft/class_7803 + f Lcom/google/common/collect/ImmutableList; COAL_SMELTABLES d field_40652 + f Lcom/google/common/collect/ImmutableList; IRON_SMELTABLES e field_40653 + f Lcom/google/common/collect/ImmutableList; COPPER_SMELTABLES f field_40654 + f Lcom/google/common/collect/ImmutableList; GOLD_SMELTABLES g field_40655 + f Lcom/google/common/collect/ImmutableList; DIAMOND_SMELTABLES h field_40656 + f Lcom/google/common/collect/ImmutableList; LAPIS_SMELTABLES i field_40657 + f Lcom/google/common/collect/ImmutableList; REDSTONE_SMELTABLES j field_40658 + f Lcom/google/common/collect/ImmutableList; EMERALD_SMELTABLES k field_40659 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate; method_51693 a method_51693 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)V method_51695 a method_51695 + m ()Ljava/util/stream/Stream; smithingTrims b method_51694 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate oy$a net/minecraft/class_7803$class_8905 + f Lnet/minecraft/world/item/Item; template a comp_2012 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2013 + m ()Lnet/minecraft/world/item/Item; template a comp_2012 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2013 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/data/recipes/packs/package-info oz net/minecraft/class_7804 +c net/minecraft/data/registries/RegistriesDatapackGenerator pa net/minecraft/class_5475 + f Lnet/minecraft/data/PackOutput; output d field_40665 + f Ljava/util/concurrent/CompletableFuture; registries e field_40952 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46591 a method_46591 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Ljava/util/concurrent/CompletableFuture; method_46813 a method_46813 + m (Ljava/nio/file/Path;Lcom/mojang/serialization/DataResult$Error;)Ljava/util/concurrent/CompletableFuture; method_61090 a method_61090 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; dumpValue a method_39680 + p 0 valuePath + p 1 output + p 2 ops + p 3 encoder + p 4 value + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lcom/google/gson/JsonElement;)Ljava/util/concurrent/CompletableFuture; method_61091 a method_61091 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46814 a method_46814 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Ljava/util/Optional; dumpRegistryCap a method_39678 + p 1 output + p 2 registries + p 3 ops + p 4 registryData + m (Lnet/minecraft/data/PackOutput$PathProvider;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/Holder$Reference;)Ljava/util/concurrent/CompletableFuture; method_46592 a method_46592 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46815 b method_46815 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Ljava/util/stream/Stream; method_46816 b method_46816 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/registries/RegistryPatchGenerator pb net/minecraft/class_8931 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/core/RegistrySetBuilder;)Ljava/util/concurrent/CompletableFuture; createLookup a method_54840 + p 0 lookup + p 1 registrySetBuilder + m (Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)V method_55310 a method_55310 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_54838 a method_54838 + m (Lnet/minecraft/core/RegistrySetBuilder;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/RegistrySetBuilder$PatchedRegistries; method_54839 a method_54839 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_54841 b method_54841 + m ()V +c net/minecraft/data/registries/TradeRebalanceRegistries pc net/minecraft/class_9757 + f Lnet/minecraft/core/RegistrySetBuilder; BUILDER a field_51847 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletableFuture; createLookup a method_60420 + p 0 provider + m ()V + m ()V +c net/minecraft/data/registries/VanillaRegistries pd net/minecraft/class_7887 + f Lnet/minecraft/core/RegistrySetBuilder; BUILDER a field_40953 + m ()Lnet/minecraft/core/HolderLookup$Provider; createLookup a method_46817 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Z validatePlacedFeature a method_46818 + p 0 feature + m (Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V method_46819 a method_46819 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceKey;)V method_46820 a method_46820 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/Holder;)V method_46821 a method_46821 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/Holder$Reference;)V method_46822 a method_46822 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderLookup;)V validateThatAllBiomeFeaturesHaveBiomeFilter a method_49382 + p 0 features + p 1 biomes + m (Lnet/minecraft/core/HolderLookup$Provider;)V validateThatAllBiomeFeaturesHaveBiomeFilter a method_46823 + p 0 provider + m ()V + m ()V +c net/minecraft/data/registries/package-info pe net/minecraft/class_7888 +c net/minecraft/data/structures/NbtToSnbt pf net/minecraft/class_2461 + f Lorg/slf4j/Logger; LOGGER d field_11450 + f Ljava/lang/Iterable; inputFolders e field_40660 + f Lnet/minecraft/data/PackOutput; output f field_40661 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46580 a method_46580 + m (Ljava/nio/file/Path;)Z method_10495 a method_10495 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; getName a method_10496 + c Gets the name of the given NBT file, based on its path and the input directory. The result does not have the ".nbt" extension. + p 0 inputFolder + p 1 nbtPath + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46582 a method_46582 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46583 a method_46583 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/lang/String;)V writeSnbt a method_32234 + p 0 output + p 1 path + p 2 contents + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/lang/String;Ljava/nio/file/Path;)Ljava/nio/file/Path; convertStructure a method_10493 + p 0 output + p 1 nbtPath + p 2 name + p 3 directoryPath + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46581 a method_46581 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46584 b method_46584 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_10494 b method_10494 + m (Lnet/minecraft/data/PackOutput;Ljava/util/Collection;)V + p 1 output + p 2 inputFolders + m ()V +c net/minecraft/data/structures/SnbtDatafixer pg net/minecraft/class_8796 + m (Ljava/lang/String;)V updateInDirectory a method_53854 + p 0 path + m (Ljava/nio/file/Path;)V method_53855 a method_53855 + m ([Ljava/lang/String;)V main a method_53856 + p 0 args + m (Ljava/nio/file/Path;)Z method_53857 b method_53857 + m ()V +c net/minecraft/data/structures/SnbtToNbt ph net/minecraft/class_2463 + f Lorg/slf4j/Logger; LOGGER d field_11454 + f Lnet/minecraft/data/PackOutput; output e field_40662 + f Ljava/lang/Iterable; inputFolders f field_40663 + f Ljava/util/List; filters g field_20309 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46585 a method_46585 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; applyFilters a method_21673 + p 1 fileName + p 2 tag + m (Ljava/nio/file/Path;)Z method_10499 a method_10499 + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/data/structures/SnbtToNbt$TaskResult; readStructure a method_22144 + p 1 filePath + p 2 fileName + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; getName a method_10500 + c Gets the name of the given SNBT file, based on its path and the input directory. The result does not have the ".snbt" extension. + p 1 inputFolder + p 2 file + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)V method_46588 a method_46588 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46586 a method_46586 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46587 a method_46587 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46589 a method_46589 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/structures/SnbtToNbt$TaskResult;Ljava/nio/file/Path;)V storeStructureIfChanged a method_10497 + p 1 output + p 2 taskResult + p 3 directoryPath + m (Lnet/minecraft/data/structures/SnbtToNbt$Filter;)Lnet/minecraft/data/structures/SnbtToNbt; addFilter a method_21672 + p 1 filter + m (Lnet/minecraft/data/PackOutput;Ljava/lang/Iterable;)V + p 1 output + p 2 inputFolders + m ()V +c net/minecraft/data/structures/SnbtToNbt$Filter ph$a net/minecraft/class_2463$class_4460 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; apply apply method_21674 + p 1 structureLocationPath + p 2 tag +c net/minecraft/data/structures/SnbtToNbt$StructureConversionException ph$b net/minecraft/class_2463$class_5621 + c Wraps exceptions thrown while reading structures to include the path of the structure in the exception message. + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V + p 1 path + p 2 cause +c net/minecraft/data/structures/SnbtToNbt$TaskResult ph$c net/minecraft/class_2463$class_4511 + f Ljava/lang/String; name a comp_780 + f [B payload b comp_781 + f Lcom/google/common/hash/HashCode; hash c comp_783 + m ()Ljava/lang/String; name a comp_780 + m ()[B payload b comp_781 + m ()Lcom/google/common/hash/HashCode; hash c comp_783 + m (Ljava/lang/String;[BLcom/google/common/hash/HashCode;)V +c net/minecraft/data/structures/StructureUpdater pi net/minecraft/class_3843 + f Lorg/slf4j/Logger; LOGGER a field_24617 + f Ljava/lang/String; PREFIX b field_52179 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; update a method_32235 + p 0 structureLocationPath + p 1 tag + m ()V + m ()V +c net/minecraft/data/structures/package-info pj net/minecraft/class_6297 +c net/minecraft/data/tags/BannerPatternTagsProvider pk net/minecraft/class_7458 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/BiomeTagsProvider pl net/minecraft/class_6957 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/CatVariantTagsProvider pm net/minecraft/class_7393 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/DamageTypeTagsProvider pn net/minecraft/class_8142 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/EnchantmentTagsProvider po net/minecraft/class_9674 + m (Ljava/util/Set;Lnet/minecraft/core/Holder$Reference;)Z method_59779 a method_59779 + m (Lnet/minecraft/core/HolderLookup$Provider;[Lnet/minecraft/resources/ResourceKey;)V tooltipOrder a method_59781 + p 1 provider + p 2 values + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/EntityTypeTagsProvider pp net/minecraft/class_2467 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/resources/ResourceKey; method_46824 a method_46824 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/FlatLevelGeneratorPresetTagsProvider pq net/minecraft/class_7229 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/FluidTagsProvider pr net/minecraft/class_2469 + m (Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/resources/ResourceKey; method_46825 a method_46825 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/GameEventTagsProvider ps net/minecraft/class_5746 + f Ljava/util/List; VIBRATIONS_EXCEPT_FLAP d field_38363 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider + m ()V +c net/minecraft/data/tags/InstrumentTagsProvider pt net/minecraft/class_7459 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/IntrinsicHolderTagsProvider pu net/minecraft/class_7889 + f Ljava/util/function/Function; keyExtractor d field_40954 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; tag a method_46827 + p 1 tag + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 keyExtractor + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 parentProvider + p 5 keyExtractor +c net/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender pu$a net/minecraft/class_7889$class_7890 + f Ljava/util/function/Function; keyExtractor a field_40955 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; addTag a method_46828 + p 1 tag + m (Ljava/lang/Object;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; add a method_46829 + p 1 value + m ([Ljava/lang/Object;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; add a method_46830 + p 1 values + m (Lnet/minecraft/tags/TagBuilder;Ljava/util/function/Function;)V + p 1 builder + p 2 keyExtractor +c net/minecraft/data/tags/ItemTagsProvider pv net/minecraft/class_7805 + f Ljava/util/concurrent/CompletableFuture; blockTags d field_40664 + c A function that resolves block tag builders. + f Ljava/util/Map; tagsToCopy g field_43092 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V copy a method_46218 + c Copies the entries from a block tag into an item tag. + p 1 blockTag + p 2 itemTag + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; method_46831 a method_46831 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)Lnet/minecraft/core/HolderLookup$Provider; method_49649 a method_49649 + m (Lnet/minecraft/data/tags/TagsProvider$TagLookup;Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V method_49650 a method_49650 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; method_49652 b method_49652 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/IllegalStateException; method_49653 d method_49653 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider + p 3 blockTags + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider + p 3 parentProvider + p 4 blockTags +c net/minecraft/data/tags/PaintingVariantTagsProvider pw net/minecraft/class_7416 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/PoiTypeTagsProvider px net/minecraft/class_7491 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/StructureTagsProvider py net/minecraft/class_7071 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/TagsProvider pz net/minecraft/class_2474 + f Ljava/util/concurrent/CompletableFuture; lookupProvider d field_43107 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider e field_39380 + f Lnet/minecraft/resources/ResourceKey; registryKey f field_40957 + f Ljava/util/concurrent/CompletableFuture; contentsDone g field_43108 + f Ljava/util/concurrent/CompletableFuture; parentProvider h field_43093 + f Ljava/util/Map; builders i field_11481 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46590 a method_46590 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; method_27170 a method_27170 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; method_49656 a method_49656 + m (Ljava/lang/Void;)Lnet/minecraft/data/tags/TagsProvider$TagLookup; method_49661 a method_49661 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/tags/TagEntry;)Z method_49658 a method_49658 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/tags/TagsProvider$1CombinedData;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_27046 a method_27046 + m (Lnet/minecraft/core/HolderLookup$Provider;)V addTags a method_10514 + p 1 provider + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)Lnet/minecraft/data/tags/TagsProvider$1CombinedData; method_49657 a method_49657 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/resources/ResourceLocation;)Z method_46832 a method_46832 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/tags/TagsProvider$1CombinedData;)Ljava/util/concurrent/CompletionStage; method_49659 a method_49659 + m (Lnet/minecraft/data/tags/TagsProvider$1CombinedData;Lnet/minecraft/resources/ResourceLocation;)Z method_49660 a method_49660 + m ()Ljava/util/concurrent/CompletableFuture; createContentsProvider b method_49651 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; tag b method_10512 + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; method_49706 b method_49706 + m ()Ljava/util/concurrent/CompletableFuture; contentsGetter c method_49662 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/tags/TagBuilder; getOrCreateRawBuilder c method_27169 + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; method_49707 c method_49707 + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 parentProvider +c net/minecraft/data/tags/TagsProvider$1CombinedData pz$a net/minecraft/class_2474$class_8210 + f Lnet/minecraft/core/HolderLookup$Provider; contents a comp_1311 + f Lnet/minecraft/data/tags/TagsProvider$TagLookup; parent b comp_1312 + m ()Lnet/minecraft/core/HolderLookup$Provider; contents a comp_1311 + m ()Lnet/minecraft/data/tags/TagsProvider$TagLookup; parent b comp_1312 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)V +c net/minecraft/data/tags/TagsProvider$TagAppender pz$b net/minecraft/class_2474$class_5124 + f Lnet/minecraft/tags/TagBuilder; builder a field_23960 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; add a method_46835 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addOptional a method_35922 + p 1 location + m (Ljava/util/List;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addAll a method_55842 + p 1 keys + m ([Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; add a method_40565 + p 1 keys + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addOptionalTag b method_35923 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addTag b method_26792 + p 1 tag + m (Lnet/minecraft/tags/TagBuilder;)V + p 1 builder +c net/minecraft/data/tags/TagsProvider$TagLookup pz$c net/minecraft/class_2474$class_8211 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; method_49664 a method_49664 +c net/minecraft/data/tags/TradeRebalanceEnchantmentTagsProvider qa net/minecraft/class_9758 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 packOutput + p 2 provider +c net/minecraft/data/tags/TradeRebalanceStructureTagsProvider qb net/minecraft/class_8799 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaBlockTagsProvider qc net/minecraft/class_2466 + m (Lnet/minecraft/world/level/block/Block;)Z method_51274 a method_51274 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceKey; method_46837 b method_46837 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaEnchantmentTagsProvider qd net/minecraft/class_9676 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaItemTagsProvider qe net/minecraft/class_2471 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/data/tags/WorldPresetTagsProvider qf net/minecraft/class_7230 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/package-info qg net/minecraft/class_6298 +c net/minecraft/data/worldgen/AncientCityStructurePieces qh net/minecraft/class_7312 + f Lnet/minecraft/resources/ResourceKey; START a field_38471 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42755 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/AncientCityStructurePools qi net/minecraft/class_7313 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42756 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionBridgePools qj net/minecraft/class_5174 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27198 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionHoglinStablePools qk net/minecraft/class_5177 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27199 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionHousingUnitsPools ql net/minecraft/class_5178 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27200 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionPieces qm net/minecraft/class_5179 + f Lnet/minecraft/resources/ResourceKey; START a field_25941 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27201 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/BastionSharedPools qn net/minecraft/class_5181 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27203 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionTreasureRoomPools qo net/minecraft/class_5182 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27204 + p 0 context + m ()V +c net/minecraft/data/worldgen/BiomeDefaultFeatures qp net/minecraft/class_3864 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLushCavesVegetationFeatures A method_34663 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLushCavesSpecialOres B method_34664 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMountainTrees C method_16957 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMountainForestTrees D method_16958 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleTrees E method_16959 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSparseJungleTrees F method_16960 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandsTrees G method_16961 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSnowyTrees H method_16962 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleGrass I method_16965 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaGrass J method_16966 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addShatteredSavannaGrass K method_16967 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaExtraGrass L method_16968 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandGrass M method_16969 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addForestFlowers N method_16970 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addForestGrass O method_16971 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampVegetation P method_16972 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMangroveSwampVegetation Q method_43230 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMushroomFieldVegetation R method_16973 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addPlainVegetation S method_16974 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertVegetation T method_16975 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addGiantTaigaVegetation U method_16976 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultFlowers V method_16977 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addCherryGroveVegetation W method_49390 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMeadowVegetation X method_38567 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addWarmFlowers Y method_16978 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultGrass Z method_16979 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultCarversAndLakes a method_16983 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Z)V addDefaultOres a method_17006 + p 0 builder + p 1 largeOres + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V farmAnimals a method_30580 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;I)V commonSpawns a method_60650 + p 0 builder + p 1 skeletonWeight + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;II)V warmOceanSpawns a method_30678 + p 0 builder + p 1 squidWeight + p 2 squidMinCount + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;III)V oceanSpawns a method_30679 + p 0 builder + p 1 squidWeight + p 2 squidMaxCount + p 3 codWeight + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;IIIZ)V monsters a method_30578 + p 0 builder + p 1 zombieWeight + p 2 zombieVillagerWeight + p 3 skeletonWeight + p 4 isUnderwater + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTaigaGrass aa method_16980 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addPlainGrass ab method_16981 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultMushrooms ac method_16982 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultExtraVegetation ad method_16984 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandExtraVegetation ae method_16985 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleMelons af method_39931 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSparseJungleMelons ag method_39932 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleVines ah method_39933 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertExtraVegetation ai method_16987 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampExtraVegetation aj method_16988 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertExtraDecoration ak method_16989 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFossilDecoration al method_16990 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addColdOceanExtraVegetation am method_16991 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSeagrass an method_16992 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLukeWarmKelp ao method_16995 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSprings ap method_16996 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFrozenSprings aq method_39420 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addIcebergs ar method_16997 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBlueIce as method_16998 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSurfaceFreezing at method_16999 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addNetherDefaultOres au method_24382 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addAncientDebris av method_28439 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultCrystalFormations aw method_32236 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultMonsterRoom b method_17004 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V caveSpawns b method_30579 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultUndergroundVariety c method_17005 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V commonSpawns c method_30581 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDripstone d method_33131 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V plainsSpawns d method_30680 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSculk e method_42042 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V snowySpawns e method_30582 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultOres f method_38568 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V desertSpawns f method_30583 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addExtraGold g method_17007 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V dripstoneCavesSpawns g method_38941 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addExtraEmeralds h method_17008 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V mooshroomSpawns h method_30585 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addInfestedStone i method_17009 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V baseJungleSpawns i method_30586 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSoftDisks j method_17010 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V endSpawns j method_30587 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampClayDisk k method_17011 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMangroveSwampDisks l method_43231 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMossyStoneBlock m method_17012 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFerns n method_17013 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addRareBerryBushes o method_17014 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addCommonBerryBushes p method_17015 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLightBambooVegetation q method_17016 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBambooVegetation r method_17017 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTaigaTrees s method_17018 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addGroveTrees t method_38745 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addWaterTrees u method_17019 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBirchTrees v method_17020 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addOtherBirchTrees w method_17021 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTallBirchTrees x method_17022 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaTrees y method_17023 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addShatteredSavannaTrees z method_17024 + p 0 builder + m ()V +c net/minecraft/data/worldgen/BootstrapContext qq net/minecraft/class_7891 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderGetter; lookup a method_46799 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; register a method_46838 + p 1 key + p 2 value + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/core/Holder$Reference; register a method_46800 + p 1 key + p 2 value + p 3 registryLifecycle +c net/minecraft/data/worldgen/Carvers qr net/minecraft/class_5463 + f Lnet/minecraft/resources/ResourceKey; CAVE a field_33119 + f Lnet/minecraft/resources/ResourceKey; CAVE_EXTRA_UNDERGROUND b field_34968 + f Lnet/minecraft/resources/ResourceKey; CANYON c field_33120 + f Lnet/minecraft/resources/ResourceKey; NETHER_CAVE d field_25947 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_30588 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46843 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/DesertVillagePools qs net/minecraft/class_3868 + f Lnet/minecraft/resources/ResourceKey; START a field_25948 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40958 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TERMINATORS_KEY c field_40959 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_17037 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/DimensionTypes qt net/minecraft/class_7231 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42043 + p 0 context + m ()V +c net/minecraft/data/worldgen/NoiseData qu net/minecraft/class_6736 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; DEFAULT_SHIFT a field_40960 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39216 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;ILnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V registerBiomeNoises a method_39493 + p 0 context + p 1 firstOctave + p 2 temperature + p 3 vegetation + p 4 continentalness + p 5 erosion + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;ID[D)V register a method_39217 + p 0 context + p 1 key + p 2 firstOctave + p 3 amplitude + p 5 otherAmplitudes + m ()V + m ()V +c net/minecraft/data/worldgen/PillagerOutpostPools qv net/minecraft/class_3791 + f Lnet/minecraft/resources/ResourceKey; START a field_26252 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27235 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/PlainVillagePools qw net/minecraft/class_3815 + f Lnet/minecraft/resources/ResourceKey; START a field_26253 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40961 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16754 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/Pools qx net/minecraft/class_5468 + f Lnet/minecraft/resources/ResourceKey; EMPTY a field_26254 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46844 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_30599 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool;)V register a method_30600 + p 0 context + p 1 name + p 2 pool + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; parseKey b method_60923 + p 0 key + m ()V + m ()V +c net/minecraft/data/worldgen/ProcessorLists qy net/minecraft/class_5469 + f Lnet/minecraft/resources/ResourceKey; ROOF A field_26284 + f Lnet/minecraft/resources/ResourceKey; HIGH_WALL B field_26256 + f Lnet/minecraft/resources/ResourceKey; HIGH_RAMPART C field_26257 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_ROT D field_29537 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_COAL E field_29538 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_DIAMONDS F field_29539 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_START_DEGRADATION G field_38472 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_GENERIC_DEGRADATION H field_38473 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_WALLS_DEGRADATION I field_38474 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_HOUSES_ARCHAEOLOGY J field_44689 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ROADS_ARCHAEOLOGY K field_44690 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_TOWER_TOP_ARCHAEOLOGY L field_44691 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_COPPER_BULB_DEGRADATION M field_51848 + f Lnet/minecraft/resources/ResourceKey; EMPTY N field_26688 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_PLAINS a field_26259 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_SAVANNA b field_26260 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_SNOWY c field_26261 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TAIGA d field_26262 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_DESERT e field_26263 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_10_PERCENT f field_26264 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_20_PERCENT g field_26265 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_70_PERCENT h field_26266 + f Lnet/minecraft/resources/ResourceKey; STREET_PLAINS i field_26267 + f Lnet/minecraft/resources/ResourceKey; STREET_SAVANNA j field_26268 + f Lnet/minecraft/resources/ResourceKey; STREET_SNOWY_OR_TAIGA k field_26269 + f Lnet/minecraft/resources/ResourceKey; FARM_PLAINS l field_26270 + f Lnet/minecraft/resources/ResourceKey; FARM_SAVANNA m field_26271 + f Lnet/minecraft/resources/ResourceKey; FARM_SNOWY n field_26272 + f Lnet/minecraft/resources/ResourceKey; FARM_TAIGA o field_26273 + f Lnet/minecraft/resources/ResourceKey; FARM_DESERT p field_26274 + f Lnet/minecraft/resources/ResourceKey; OUTPOST_ROT q field_26689 + f Lnet/minecraft/resources/ResourceKey; BOTTOM_RAMPART r field_26275 + f Lnet/minecraft/resources/ResourceKey; TREASURE_ROOMS s field_26276 + f Lnet/minecraft/resources/ResourceKey; HOUSING t field_26277 + f Lnet/minecraft/resources/ResourceKey; SIDE_WALL_DEGRADATION u field_26278 + f Lnet/minecraft/resources/ResourceKey; STABLE_DEGRADATION v field_26279 + f Lnet/minecraft/resources/ResourceKey; BASTION_GENERIC_DEGRADATION w field_26280 + f Lnet/minecraft/resources/ResourceKey; RAMPART_DEGRADATION x field_26281 + f Lnet/minecraft/resources/ResourceKey; ENTRANCE_REPLACEMENT y field_26282 + f Lnet/minecraft/resources/ResourceKey; BRIDGE z field_26283 + m (Lnet/minecraft/resources/ResourceKey;I)Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor; trailsArchyLootProcessor a method_51464 + p 0 lootTable + p 1 limit + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46845 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46846 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V register a method_30601 + p 0 context + p 1 key + p 2 processors + m ()V + m ()V +c net/minecraft/data/worldgen/SavannaVillagePools qz net/minecraft/class_3834 + f Lnet/minecraft/resources/ResourceKey; START a field_26285 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40962 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TERMINATORS_KEY c field_40963 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16844 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/SnowyVillagePools ra net/minecraft/class_3836 + f Lnet/minecraft/resources/ResourceKey; START a field_26286 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40964 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16845 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/StructureSets rb net/minecraft/class_7072 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41182 + p 0 context +c net/minecraft/data/worldgen/Structures rc net/minecraft/class_5470 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride; method_60421 a method_60421 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_38569 + p 0 context + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_60422 b method_60422 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride; method_46847 c method_46847 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_46848 d method_46848 + m ()V +c net/minecraft/data/worldgen/SurfaceRuleData rd net/minecraft/class_6725 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SOUL_SAND A field_35335 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SOUL_SOIL B field_35336 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BASALT C field_35337 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BLACKSTONE D field_35338 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WARPED_WART_BLOCK E field_35339 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WARPED_NYLIUM F field_35310 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; NETHER_WART_BLOCK G field_35311 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; CRIMSON_NYLIUM H field_35312 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ENDSTONE I field_35313 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; AIR a field_35314 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BEDROCK b field_35639 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WHITE_TERRACOTTA c field_35315 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ORANGE_TERRACOTTA d field_35316 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; TERRACOTTA e field_35317 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; RED_SAND f field_35318 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; RED_SANDSTONE g field_35561 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; STONE h field_35319 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; DEEPSLATE i field_35640 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; DIRT j field_35320 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; PODZOL k field_35321 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; COARSE_DIRT l field_35322 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; MYCELIUM m field_35323 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; GRASS_BLOCK n field_35324 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; CALCITE o field_35325 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; GRAVEL p field_35326 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SAND q field_35327 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SANDSTONE r field_35562 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; PACKED_ICE s field_35328 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SNOW_BLOCK t field_35329 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; MUD u field_38808 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; POWDER_SNOW v field_35330 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ICE w field_35331 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WATER x field_35332 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; LAVA y field_35333 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; NETHERRACK z field_35334 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; overworld a method_39134 + m (D)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; surfaceNoiseAbove a method_39135 + p 0 value + m (I)[Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; method_39921 a method_39921 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; makeStateRule a method_39136 + p 0 block + m (ZZZ)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; overworldLike a method_39922 + p 0 aboveGround + p 1 bedrockRoof + p 2 bedrockFloor + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; nether b method_39138 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; end c method_39139 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; air d method_44325 + m ()V + m ()V +c net/minecraft/data/worldgen/TaigaVillagePools re net/minecraft/class_3870 + f Lnet/minecraft/resources/ResourceKey; START a field_26341 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40965 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_17038 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/TerrainProvider rf net/minecraft/class_6765 + f F DEEP_OCEAN_CONTINENTALNESS a field_38024 + f F OCEAN_CONTINENTALNESS b field_38025 + f F PLAINS_CONTINENTALNESS c field_38026 + f F BEACH_CONTINENTALNESS d field_38027 + f Lnet/minecraft/util/ToFloatFunction; NO_TRANSFORM e field_38028 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_OFFSET f field_38029 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_FACTOR g field_38030 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_JAGGEDNESS h field_38031 + m (F)F calculateMountainRidgeZeroContinentalnessPoint a method_42045 + m (FFF)F mountainContinentalness a method_42046 + m (FFFF)F calculateSlope a method_42047 + p 0 y1 + p 1 y2 + p 2 x1 + p 3 x2 + m (Lnet/minecraft/util/ToFloatFunction;FFFFFFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; ridgeSpline a method_42048 + p 0 ridgesFolded + p 1 y1 + p 2 y2 + p 3 y3 + p 4 y4 + p 5 y5 + p 6 minSmoothing + p 7 transform + m (Lnet/minecraft/util/ToFloatFunction;FLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildWeirdnessJaggednessSpline a method_42049 + p 0 ridges + p 2 transform + m (Lnet/minecraft/util/ToFloatFunction;FZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildMountainRidgeSplineWithPoints a method_42050 + p 0 ridgesFolded + p 3 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFFFFFZZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildErosionOffsetSpline a method_42051 + p 0 erosion + p 1 ridgesFolded + p 10 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildRidgeJaggednessSpline a method_42052 + p 0 ridges + p 1 ridgesFolded + p 4 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFFFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildErosionJaggednessSpline a method_42053 + p 0 erosion + p 1 ridges + p 2 ridgesFolded + p 7 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; getErosionFactor a method_42054 + p 0 erosion + p 1 ridges + p 2 ridgesFolded + p 5 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldFactor a method_42055 + p 0 continents + p 1 erosion + p 2 ridges + p 3 ridgesFolded + p 4 amplified + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldOffset a method_42056 + p 0 continents + p 1 erosion + p 2 ridgesFolded + p 3 amplified + m (F)F method_42057 b method_42057 + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldJaggedness b method_42058 + p 0 continents + p 1 erosion + p 2 ridges + p 3 ridgesFolded + p 4 amplified + m (F)F method_42059 c method_42059 + m (F)F method_42060 d method_42060 + m ()V + m ()V +c net/minecraft/data/worldgen/TrailRuinsStructurePools rg net/minecraft/class_8256 + f Lnet/minecraft/resources/ResourceKey; START a field_43386 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_49993 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/TrialChambersStructurePools rh net/minecraft/class_8998 + f Lnet/minecraft/resources/ResourceKey; START a field_47507 + f Lnet/minecraft/resources/ResourceKey; HALLWAY_FALLBACK b field_47508 + f Lnet/minecraft/resources/ResourceKey; CHAMBER_CAP_FALLBACK c field_47509 + f Ljava/util/List; ALIAS_BINDINGS d field_47510 + m (Ljava/lang/String;)Ljava/lang/String; spawner a method_55312 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_55313 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/VillagePools ri net/minecraft/class_3813 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27221 + p 0 context + m ()V +c net/minecraft/data/worldgen/biome/BiomeData rj net/minecraft/class_5504 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_40363 + p 0 context + m ()V +c net/minecraft/data/worldgen/biome/EndBiomes rk net/minecraft/class_6726 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)Lnet/minecraft/world/level/biome/Biome; baseEndBiome a method_39141 + p 0 generationSettings + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endBarrens a method_39140 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; theEnd b method_39142 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endMidlands c method_39143 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endHighlands d method_39144 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; smallEndIslands e method_39145 + p 0 placedFeatures + p 1 worldCarvers + m ()V +c net/minecraft/data/worldgen/biome/NetherBiomes rl net/minecraft/class_6727 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; netherWastes a method_39146 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; soulSandValley b method_39147 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; basaltDeltas c method_39148 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; crimsonForest d method_39149 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; warpedForest e method_39150 + p 0 placedFeatures + p 1 worldCarvers + m ()V +c net/minecraft/data/worldgen/biome/OverworldBiomes rm net/minecraft/class_5478 + f I NORMAL_WATER_COLOR a field_35340 + f I NORMAL_WATER_FOG_COLOR b field_35341 + f I SWAMP_SKELETON_WEIGHT c field_51968 + f I OVERWORLD_FOG_COLOR d field_35342 + f Lnet/minecraft/sounds/Music; NORMAL_MUSIC e field_35436 + m (F)I calculateSkyColor a method_30932 + p 0 temperature + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V globalOverworldGeneration a method_39153 + p 0 generationSettings + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;IILnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)Lnet/minecraft/world/level/biome/Biome; baseOcean a method_30692 + p 0 mobSpawnSettings + p 1 waterColor + p 2 waterFogColor + p 3 generationSettings + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; sparseJungle a method_30703 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;FZZZLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; baseJungle a method_30695 + p 0 placedFeatures + p 1 worldCarvers + p 2 downfall + p 3 isBambooJungle + p 4 isSparse + p 5 addBamboo + p 6 mobSpawnSettings + p 7 backgroudMusic + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; oldGrowthTaiga a method_30687 + p 0 placedFeatures + p 1 worldCarvers + p 2 isSpruce + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/biome/Biome; savanna a method_30694 + p 0 placedFeatures + p 1 worldCarvers + p 2 isShatteredSavanna + p 3 isPlateau + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZZ)Lnet/minecraft/world/level/biome/Biome; plains a method_30701 + p 0 placedFeatures + p 1 worldCarvers + p 2 isSunflowerPlains + p 3 isCold + p 4 isIceSpikes + m (ZFFIILjava/lang/Integer;Ljava/lang/Integer;Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; biome a method_39151 + p 0 hasPrecipitation + p 1 temperature + p 2 downfall + p 3 waterColor + p 4 waterFogColor + p 5 grassColorOverride + p 6 foliageColorOverride + p 7 mobSpawnSettings + p 8 generationSettings + p 9 backgroundMusic + m (ZFFLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; biome a method_39152 + p 0 hasPercipitation + p 1 temperature + p 2 downfall + p 3 mobSpawnSettings + p 4 generationSettings + p 5 backgroundMusic + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; jungle b method_30683 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; windsweptHills b method_30690 + p 0 placedFeatures + p 1 worldCarvers + p 2 isForest + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/biome/Biome; beach b method_30685 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + p 3 isStony + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZZ)Lnet/minecraft/world/level/biome/Biome; forest b method_30704 + p 0 placedFeatures + p 1 worldCarvers + p 2 isBirchForest + p 3 tallBirchTrees + p 4 isFlowerForest + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; bambooJungle c method_30714 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; badlands c method_30696 + p 0 placedFeatures + p 1 worldCarvers + p 2 trees + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; desert d method_30698 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; coldOcean d method_30702 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; mushroomFields e method_30684 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; ocean e method_30706 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; warmOcean f method_30723 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; lukeWarmOcean f method_30709 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; darkForest g method_30705 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; frozenOcean g method_30712 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; swamp h method_30708 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; taiga h method_30699 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; mangroveSwamp i method_43232 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; river i method_30686 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; theVoid j method_30726 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; meadowOrCherryGrove j method_38574 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCherryGrove + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; frozenPeaks k method_38575 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; jaggedPeaks l method_38576 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; stonyPeaks m method_38577 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; snowySlopes n method_38578 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; grove o method_38579 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; lushCaves p method_34674 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; dripstoneCaves q method_33132 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; deepDark r method_42061 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; baseOceanGeneration s method_31066 + p 0 placedFeatures + p 1 worldCarvers + m ()V + m ()V +c net/minecraft/data/worldgen/biome/package-info rn net/minecraft/class_6299 +c net/minecraft/data/worldgen/features/AquaticFeatures ro net/minecraft/class_6800 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SHORT a field_35762 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SLIGHTLY_LESS_SHORT b field_35763 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_MID c field_35764 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_TALL d field_35765 + f Lnet/minecraft/resources/ResourceKey; SEA_PICKLE e field_35766 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SIMPLE f field_35767 + f Lnet/minecraft/resources/ResourceKey; KELP g field_35768 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN_VEGETATION h field_35769 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46849 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/CaveFeatures rp net/minecraft/class_6801 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM a field_35770 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_COAL b field_35771 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_DIAMONDS c field_35772 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CLUSTER d field_35773 + f Lnet/minecraft/resources/ResourceKey; LARGE_DRIPSTONE e field_35774 + f Lnet/minecraft/resources/ResourceKey; POINTED_DRIPSTONE f field_35775 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_MAGMA g field_35776 + f Lnet/minecraft/resources/ResourceKey; GLOW_LICHEN h field_35777 + f Lnet/minecraft/resources/ResourceKey; ROOTED_AZALEA_TREE i field_35778 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINE j field_35779 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINE_IN_MOSS k field_35780 + f Lnet/minecraft/resources/ResourceKey; MOSS_VEGETATION l field_35781 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH m field_35782 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH_BONEMEAL n field_35783 + f Lnet/minecraft/resources/ResourceKey; DRIPLEAF o field_35784 + f Lnet/minecraft/resources/ResourceKey; CLAY_WITH_DRIPLEAVES p field_35785 + f Lnet/minecraft/resources/ResourceKey; CLAY_POOL_WITH_DRIPLEAVES q field_35786 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CLAY r field_35787 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH_CEILING s field_35788 + f Lnet/minecraft/resources/ResourceKey; SPORE_BLOSSOM t field_35789 + f Lnet/minecraft/resources/ResourceKey; AMETHYST_GEODE u field_35790 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_DEEP_DARK v field_38033 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_ANCIENT_CITY w field_38477 + f Lnet/minecraft/resources/ResourceKey; SCULK_VEIN x field_38034 + m ()Lnet/minecraft/core/Holder; makeSmallDripleaf a method_39686 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Holder; makeDripleaf a method_39687 + p 0 facingDirection + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46850 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/EndFeatures rq net/minecraft/class_6802 + f Lnet/minecraft/resources/ResourceKey; END_PLATFORM a field_52309 + f Lnet/minecraft/resources/ResourceKey; END_SPIKE b field_35795 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_RETURN c field_35796 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_DELAYED d field_35797 + f Lnet/minecraft/resources/ResourceKey; CHORUS_PLANT e field_35798 + f Lnet/minecraft/resources/ResourceKey; END_ISLAND f field_35799 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46851 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/FeatureUtils rr net/minecraft/class_6803 + m (ILnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simpleRandomPatchConfiguration a method_39703 + p 0 tries + p 1 feature + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39704 + p 0 feature + p 1 config + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39705 + p 0 feature + p 1 config + p 2 blocks + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Ljava/util/List;I)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39706 + p 0 feature + p 1 config + p 2 blocks + p 3 tries + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46852 + p 0 name + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; simplePatchPredicate a method_39709 + p 0 blocks + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39702 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/feature/Feature;)V register a method_40364 + p 0 context + p 1 key + p 2 feature + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V register a method_39708 + p 0 context + p 1 key + p 2 feature + p 3 config + m ()V +c net/minecraft/data/worldgen/features/MiscOverworldFeatures rs net/minecraft/class_6804 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKE a field_35800 + f Lnet/minecraft/resources/ResourceKey; ICE_PATCH b field_35801 + f Lnet/minecraft/resources/ResourceKey; FOREST_ROCK c field_35802 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PACKED d field_35803 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_BLUE e field_35804 + f Lnet/minecraft/resources/ResourceKey; BLUE_ICE f field_35805 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA g field_35806 + f Lnet/minecraft/resources/ResourceKey; DISK_CLAY h field_35807 + f Lnet/minecraft/resources/ResourceKey; DISK_GRAVEL i field_35808 + f Lnet/minecraft/resources/ResourceKey; DISK_SAND j field_35809 + f Lnet/minecraft/resources/ResourceKey; FREEZE_TOP_LAYER k field_35810 + f Lnet/minecraft/resources/ResourceKey; DISK_GRASS l field_38809 + f Lnet/minecraft/resources/ResourceKey; BONUS_CHEST m field_35811 + f Lnet/minecraft/resources/ResourceKey; VOID_START_PLATFORM n field_35812 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL o field_35813 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_OVERWORLD p field_35814 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_FROZEN q field_35815 + f Lnet/minecraft/resources/ResourceKey; SPRING_WATER r field_35816 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46853 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/NetherFeatures rt net/minecraft/class_6805 + f Lnet/minecraft/resources/ResourceKey; DELTA a field_35817 + f Lnet/minecraft/resources/ResourceKey; SMALL_BASALT_COLUMNS b field_35818 + f Lnet/minecraft/resources/ResourceKey; LARGE_BASALT_COLUMNS c field_35819 + f Lnet/minecraft/resources/ResourceKey; BASALT_BLOBS d field_35820 + f Lnet/minecraft/resources/ResourceKey; BLACKSTONE_BLOBS e field_35821 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE_EXTRA f field_35822 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION g field_35824 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION_BONEMEAL h field_35825 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETION i field_35827 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETATION_BONEMEAL j field_35828 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS k field_35829 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS_BONEMEAL l field_35830 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES m field_35831 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES_BONEMEAL n field_35832 + f Lnet/minecraft/resources/ResourceKey; WEEPING_VINES o field_35833 + f Lnet/minecraft/resources/ResourceKey; PATCH_CRIMSON_ROOTS p field_35834 + f Lnet/minecraft/resources/ResourceKey; BASALT_PILLAR q field_35835 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_NETHER r field_35836 + f Lnet/minecraft/resources/ResourceKey; SPRING_NETHER_CLOSED s field_35837 + f Lnet/minecraft/resources/ResourceKey; SPRING_NETHER_OPEN t field_35838 + f Lnet/minecraft/resources/ResourceKey; PATCH_FIRE u field_35839 + f Lnet/minecraft/resources/ResourceKey; PATCH_SOUL_FIRE v field_35840 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46854 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/OreFeatures ru net/minecraft/class_6806 + f Lnet/minecraft/resources/ResourceKey; ORE_EMERALD A field_35851 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_LARGE B field_35852 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_SMALL C field_35853 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPPER_SMALL D field_35854 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER_LARGE E field_35855 + f Lnet/minecraft/resources/ResourceKey; ORE_CLAY F field_35856 + f Lnet/minecraft/resources/ResourceKey; ORE_MAGMA a field_35868 + f Lnet/minecraft/resources/ResourceKey; ORE_SOUL_SAND b field_35869 + f Lnet/minecraft/resources/ResourceKey; ORE_NETHER_GOLD c field_35870 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ d field_35871 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL_NETHER e field_35872 + f Lnet/minecraft/resources/ResourceKey; ORE_BLACKSTONE f field_35873 + f Lnet/minecraft/resources/ResourceKey; ORE_DIRT g field_35874 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL h field_35875 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE i field_35876 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE j field_35877 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE k field_35878 + f Lnet/minecraft/resources/ResourceKey; ORE_TUFF l field_35879 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL m field_35880 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_BURIED n field_35881 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON o field_35882 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_SMALL p field_35841 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD q field_35842 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_BURIED r field_35843 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE s field_35844 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_SMALL t field_35845 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_MEDIUM u field_45663 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_LARGE v field_35846 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_BURIED w field_35847 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS x field_35848 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS_BURIED y field_35849 + f Lnet/minecraft/resources/ResourceKey; ORE_INFESTED z field_35850 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46855 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/PileFeatures rv net/minecraft/class_6807 + f Lnet/minecraft/resources/ResourceKey; PILE_HAY a field_35883 + f Lnet/minecraft/resources/ResourceKey; PILE_MELON b field_35884 + f Lnet/minecraft/resources/ResourceKey; PILE_SNOW c field_35885 + f Lnet/minecraft/resources/ResourceKey; PILE_ICE d field_35886 + f Lnet/minecraft/resources/ResourceKey; PILE_PUMPKIN e field_35887 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46856 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/TreeFeatures rw net/minecraft/class_6808 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_0002 A field_35922 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_002 B field_35923 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_005 C field_35924 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_0002 D field_35888 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_002 E field_35889 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_005 F field_35890 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_0002 G field_35891 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_002 H field_35892 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_005 I field_35893 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES J field_35894 + f Lnet/minecraft/resources/ResourceKey; CHERRY_BEES_005 K field_42959 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGUS a field_35899 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGUS_PLANTED b field_35900 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGUS c field_35901 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGUS_PLANTED d field_35902 + f Lnet/minecraft/resources/ResourceKey; HUGE_BROWN_MUSHROOM e field_35903 + f Lnet/minecraft/resources/ResourceKey; HUGE_RED_MUSHROOM f field_35904 + f Lnet/minecraft/resources/ResourceKey; OAK g field_35905 + f Lnet/minecraft/resources/ResourceKey; DARK_OAK h field_35906 + f Lnet/minecraft/resources/ResourceKey; BIRCH i field_35907 + f Lnet/minecraft/resources/ResourceKey; ACACIA j field_35908 + f Lnet/minecraft/resources/ResourceKey; SPRUCE k field_35909 + f Lnet/minecraft/resources/ResourceKey; PINE l field_35910 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE m field_35911 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK n field_35912 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE_NO_VINE o field_35913 + f Lnet/minecraft/resources/ResourceKey; MEGA_JUNGLE_TREE p field_35914 + f Lnet/minecraft/resources/ResourceKey; MEGA_SPRUCE q field_35915 + f Lnet/minecraft/resources/ResourceKey; MEGA_PINE r field_35916 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES_0002 s field_35917 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES t field_35918 + f Lnet/minecraft/resources/ResourceKey; SWAMP_OAK u field_35919 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_BUSH v field_35920 + f Lnet/minecraft/resources/ResourceKey; AZALEA_TREE w field_35921 + f Lnet/minecraft/resources/ResourceKey; MANGROVE x field_38810 + f Lnet/minecraft/resources/ResourceKey; TALL_MANGROVE y field_38811 + f Lnet/minecraft/resources/ResourceKey; CHERRY z field_42960 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createOak a method_39710 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;IIII)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createStraightBlobTree a method_39711 + p 0 logBlock + p 1 leavesBlock + p 2 baseHeight + p 3 heightRandA + p 4 heightRandB + p 5 radius + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46857 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createBirch b method_39712 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createSuperBirch c method_39713 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createJungleTree d method_39714 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createFancyOak e method_39715 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; cherry f method_49392 + m ()V + m ()V +c net/minecraft/data/worldgen/features/VegetationFeatures rx net/minecraft/class_6809 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST_VEGETATION A field_35966 + f Lnet/minecraft/resources/ResourceKey; TREES_FLOWER_FOREST B field_35925 + f Lnet/minecraft/resources/ResourceKey; MEADOW_TREES C field_35926 + f Lnet/minecraft/resources/ResourceKey; TREES_TAIGA D field_35927 + f Lnet/minecraft/resources/ResourceKey; TREES_GROVE E field_35928 + f Lnet/minecraft/resources/ResourceKey; TREES_SAVANNA F field_35929 + f Lnet/minecraft/resources/ResourceKey; BIRCH_TALL G field_35930 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_HILLS H field_35931 + f Lnet/minecraft/resources/ResourceKey; TREES_WATER I field_35932 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH_AND_OAK J field_35933 + f Lnet/minecraft/resources/ResourceKey; TREES_PLAINS K field_35934 + f Lnet/minecraft/resources/ResourceKey; TREES_SPARSE_JUNGLE L field_35935 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_SPRUCE_TAIGA M field_35936 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_PINE_TAIGA N field_35937 + f Lnet/minecraft/resources/ResourceKey; TREES_JUNGLE O field_35938 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_VEGETATION P field_35939 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_ISLAND_VEGETATION Q field_35940 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_VEGETATION R field_38812 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_NO_PODZOL a field_35941 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_SOME_PODZOL b field_35942 + f Lnet/minecraft/resources/ResourceKey; VINES c field_35943 + f Lnet/minecraft/resources/ResourceKey; PATCH_BROWN_MUSHROOM d field_35944 + f Lnet/minecraft/resources/ResourceKey; PATCH_RED_MUSHROOM e field_35945 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUNFLOWER f field_35946 + f Lnet/minecraft/resources/ResourceKey; PATCH_PUMPKIN g field_35947 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_BUSH h field_35948 + f Lnet/minecraft/resources/ResourceKey; PATCH_TAIGA_GRASS i field_35949 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS j field_35950 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_JUNGLE k field_35951 + f Lnet/minecraft/resources/ResourceKey; SINGLE_PIECE_OF_GRASS l field_35952 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH m field_35953 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON n field_35954 + f Lnet/minecraft/resources/ResourceKey; PATCH_WATERLILY o field_35955 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS p field_35956 + f Lnet/minecraft/resources/ResourceKey; PATCH_LARGE_FERN q field_35957 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS r field_35958 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE s field_35959 + f Lnet/minecraft/resources/ResourceKey; FLOWER_DEFAULT t field_35960 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FLOWER_FOREST u field_35961 + f Lnet/minecraft/resources/ResourceKey; FLOWER_SWAMP v field_35962 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAIN w field_35963 + f Lnet/minecraft/resources/ResourceKey; FLOWER_MEADOW x field_35964 + f Lnet/minecraft/resources/ResourceKey; FLOWER_CHERRY y field_42961 + f Lnet/minecraft/resources/ResourceKey; FOREST_FLOWERS z field_35965 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;I)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; grassPatch a method_39717 + p 0 stateProvider + p 1 tries + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46858 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/package-info ry net/minecraft/class_6810 +c net/minecraft/data/worldgen/package-info rz net/minecraft/class_6667 +c net/minecraft/data/worldgen/placement/AquaticPlacements sa net/minecraft/class_6811 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_WARM a field_35967 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_NORMAL b field_35968 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_COLD c field_35969 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_RIVER d field_35970 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SWAMP e field_35971 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP_WARM f field_35972 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP g field_35973 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP_COLD h field_35974 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SIMPLE i field_35975 + f Lnet/minecraft/resources/ResourceKey; SEA_PICKLE j field_35976 + f Lnet/minecraft/resources/ResourceKey; KELP_COLD k field_35977 + f Lnet/minecraft/resources/ResourceKey; KELP_WARM l field_35978 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN_VEGETATION m field_35979 + m (I)Ljava/util/List; seagrassPlacement a method_39731 + p 0 count + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46859 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/CavePlacements sb net/minecraft/class_6812 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM a field_35980 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM_DEEP b field_35981 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_UPPER c field_35982 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_LOWER d field_35983 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CLUSTER e field_35984 + f Lnet/minecraft/resources/ResourceKey; LARGE_DRIPSTONE f field_35985 + f Lnet/minecraft/resources/ResourceKey; POINTED_DRIPSTONE g field_35986 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_MAGMA h field_35987 + f Lnet/minecraft/resources/ResourceKey; GLOW_LICHEN i field_35988 + f Lnet/minecraft/resources/ResourceKey; ROOTED_AZALEA_TREE j field_35989 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINES k field_35990 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_VEGETATION l field_35991 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CLAY m field_35992 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CEILING_VEGETATION n field_35993 + f Lnet/minecraft/resources/ResourceKey; SPORE_BLOSSOM o field_35994 + f Lnet/minecraft/resources/ResourceKey; CLASSIC_VINES p field_35995 + f Lnet/minecraft/resources/ResourceKey; AMETHYST_GEODE q field_35996 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_DEEP_DARK r field_38036 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_ANCIENT_CITY s field_38478 + f Lnet/minecraft/resources/ResourceKey; SCULK_VEIN t field_38037 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46860 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/EndPlacements sc net/minecraft/class_6813 + f Lnet/minecraft/resources/ResourceKey; END_PLATFORM a field_52310 + f Lnet/minecraft/resources/ResourceKey; END_SPIKE b field_35997 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_RETURN c field_35998 + f Lnet/minecraft/resources/ResourceKey; CHORUS_PLANT d field_35999 + f Lnet/minecraft/resources/ResourceKey; END_ISLAND_DECORATED e field_36000 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46861 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/MiscOverworldPlacements sd net/minecraft/class_6814 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKE a field_36001 + f Lnet/minecraft/resources/ResourceKey; ICE_PATCH b field_36002 + f Lnet/minecraft/resources/ResourceKey; FOREST_ROCK c field_36003 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PACKED d field_36004 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_BLUE e field_36005 + f Lnet/minecraft/resources/ResourceKey; BLUE_ICE f field_36006 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA_UNDERGROUND g field_36007 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA_SURFACE h field_36008 + f Lnet/minecraft/resources/ResourceKey; DISK_CLAY i field_36009 + f Lnet/minecraft/resources/ResourceKey; DISK_GRAVEL j field_36010 + f Lnet/minecraft/resources/ResourceKey; DISK_SAND k field_36011 + f Lnet/minecraft/resources/ResourceKey; DISK_GRASS l field_38813 + f Lnet/minecraft/resources/ResourceKey; FREEZE_TOP_LAYER m field_36012 + f Lnet/minecraft/resources/ResourceKey; VOID_START_PLATFORM n field_36013 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL o field_36014 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA p field_36015 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_FROZEN q field_36016 + f Lnet/minecraft/resources/ResourceKey; SPRING_WATER r field_36017 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46862 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/NetherPlacements se net/minecraft/class_6815 + f Lnet/minecraft/resources/ResourceKey; DELTA a field_36018 + f Lnet/minecraft/resources/ResourceKey; SMALL_BASALT_COLUMNS b field_36019 + f Lnet/minecraft/resources/ResourceKey; LARGE_BASALT_COLUMNS c field_36020 + f Lnet/minecraft/resources/ResourceKey; BASALT_BLOBS d field_36021 + f Lnet/minecraft/resources/ResourceKey; BLACKSTONE_BLOBS e field_36022 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE_EXTRA f field_36023 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE g field_36024 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION h field_36025 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETATION i field_36026 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS j field_36027 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES k field_36028 + f Lnet/minecraft/resources/ResourceKey; WEEPING_VINES l field_36029 + f Lnet/minecraft/resources/ResourceKey; PATCH_CRIMSON_ROOTS m field_36030 + f Lnet/minecraft/resources/ResourceKey; BASALT_PILLAR n field_36031 + f Lnet/minecraft/resources/ResourceKey; SPRING_DELTA o field_36032 + f Lnet/minecraft/resources/ResourceKey; SPRING_CLOSED p field_36033 + f Lnet/minecraft/resources/ResourceKey; SPRING_CLOSED_DOUBLE q field_36034 + f Lnet/minecraft/resources/ResourceKey; SPRING_OPEN r field_36035 + f Lnet/minecraft/resources/ResourceKey; PATCH_SOUL_FIRE s field_36037 + f Lnet/minecraft/resources/ResourceKey; PATCH_FIRE t field_36038 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46863 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/OrePlacements sf net/minecraft/class_6816 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE_LOWER A field_36039 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND B field_36040 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_MEDIUM C field_45664 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_LARGE D field_36041 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_BURIED E field_36042 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS F field_36043 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS_BURIED G field_36044 + f Lnet/minecraft/resources/ResourceKey; ORE_INFESTED H field_36045 + f Lnet/minecraft/resources/ResourceKey; ORE_EMERALD I field_36046 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_LARGE J field_36047 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_SMALL K field_36048 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER L field_36049 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER_LARGE M field_36050 + f Lnet/minecraft/resources/ResourceKey; ORE_CLAY N field_36051 + f Lnet/minecraft/resources/ResourceKey; ORE_MAGMA a field_36052 + f Lnet/minecraft/resources/ResourceKey; ORE_SOUL_SAND b field_36053 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_DELTAS c field_36054 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ_DELTAS d field_36055 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_NETHER e field_36056 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ_NETHER f field_36057 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL_NETHER g field_36058 + f Lnet/minecraft/resources/ResourceKey; ORE_BLACKSTONE h field_36059 + f Lnet/minecraft/resources/ResourceKey; ORE_DIRT i field_36060 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL j field_36061 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE_UPPER k field_36062 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE_LOWER l field_36063 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE_UPPER m field_36064 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE_LOWER n field_36065 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE_UPPER o field_36066 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE_LOWER p field_36067 + f Lnet/minecraft/resources/ResourceKey; ORE_TUFF q field_36068 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_UPPER r field_36069 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_LOWER s field_36070 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_UPPER t field_36071 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_MIDDLE u field_36072 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_SMALL v field_36073 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_EXTRA w field_36074 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD x field_36075 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_LOWER y field_36076 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE z field_36077 + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; commonOrePlacement a method_39732 + p 0 count + p 1 heightRange + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; orePlacement a method_39733 + p 0 countPlacement + p 1 heightRange + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46864 + p 0 context + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; rareOrePlacement b method_39734 + p 0 chance + p 1 heightRange + m ()V + m ()V +c net/minecraft/data/worldgen/placement/PlacementUtils sg net/minecraft/class_6817 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP a field_36078 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_TOP_SOLID b field_36079 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_WORLD_SURFACE c field_36080 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_OCEAN_FLOOR d field_36081 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; FULL_RANGE e field_36082 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_10_10 f field_36083 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_8_8 g field_36084 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_4_4 h field_36085 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_BOTTOM_TO_MAX_TERRAIN_HEIGHT i field_36086 + m ()Lnet/minecraft/world/level/levelgen/placement/PlacementFilter; isEmpty a method_40371 + m (IFI)Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; countExtra a method_39736 + p 0 baseValue + p 1 chance + p 2 addedAmount + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter; filteredByBlockSurvival a method_40365 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/core/Holder; onlyWhenEmpty a method_40366 + p 0 feature + p 1 config + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/core/Holder; filtered a method_40367 + p 0 feature + p 1 config + p 2 predicate + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lnet/minecraft/core/Holder; inlinePlaced a method_40368 + p 0 feature + p 1 config + p 2 placements + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46865 + p 0 key + m (Lnet/minecraft/core/Holder;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lnet/minecraft/core/Holder; inlinePlaced a method_40369 + p 0 feature + p 1 placements + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39735 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;Ljava/util/List;)V register a method_39737 + p 0 context + p 1 key + p 2 configuredFeature + p 3 placements + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)V register a method_40370 + p 0 context + p 1 key + p 2 configuredFeature + p 3 placements + m ()V + m ()V +c net/minecraft/data/worldgen/placement/TreePlacements sh net/minecraft/class_6818 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_002 A field_36113 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES B field_36087 + f Lnet/minecraft/resources/ResourceKey; CHERRY_BEES_005 C field_42962 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGI a field_36088 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGI b field_36089 + f Lnet/minecraft/resources/ResourceKey; OAK_CHECKED c field_36090 + f Lnet/minecraft/resources/ResourceKey; DARK_OAK_CHECKED d field_36091 + f Lnet/minecraft/resources/ResourceKey; BIRCH_CHECKED e field_36092 + f Lnet/minecraft/resources/ResourceKey; ACACIA_CHECKED f field_36093 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_CHECKED g field_36094 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_CHECKED h field_38814 + f Lnet/minecraft/resources/ResourceKey; CHERRY_CHECKED i field_42963 + f Lnet/minecraft/resources/ResourceKey; PINE_ON_SNOW j field_36097 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_ON_SNOW k field_36098 + f Lnet/minecraft/resources/ResourceKey; PINE_CHECKED l field_36099 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE_CHECKED m field_36100 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_CHECKED n field_36101 + f Lnet/minecraft/resources/ResourceKey; MEGA_JUNGLE_TREE_CHECKED o field_36102 + f Lnet/minecraft/resources/ResourceKey; MEGA_SPRUCE_CHECKED p field_36103 + f Lnet/minecraft/resources/ResourceKey; MEGA_PINE_CHECKED q field_36104 + f Lnet/minecraft/resources/ResourceKey; TALL_MANGROVE_CHECKED r field_38815 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_BUSH s field_36105 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES_0002 t field_36106 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES u field_36107 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_0002 v field_36108 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_002 w field_36109 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_0002_PLACED x field_36110 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_002 y field_36111 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_0002 z field_36112 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46866 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/VegetationPlacements si net/minecraft/class_6819 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_DECORATED A field_36185 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_SWAMP B field_36114 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_DESERT C field_36115 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_BADLANDS D field_36116 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE E field_36117 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_NETHER F field_36118 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_NETHER G field_36119 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_NORMAL H field_36120 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_NORMAL I field_36121 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_TAIGA J field_36122 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_TAIGA K field_36123 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_OLD_GROWTH L field_36124 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_OLD_GROWTH M field_36125 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_SWAMP N field_36126 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_SWAMP O field_36127 + f Lnet/minecraft/resources/ResourceKey; FLOWER_WARM P field_36128 + f Lnet/minecraft/resources/ResourceKey; FLOWER_DEFAULT Q field_36129 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FLOWER_FOREST R field_36130 + f Lnet/minecraft/resources/ResourceKey; FLOWER_SWAMP S field_36131 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAINS T field_36132 + f Lnet/minecraft/resources/ResourceKey; FLOWER_MEADOW U field_36133 + f Lnet/minecraft/resources/ResourceKey; FLOWER_CHERRY V field_42964 + f Lnet/minecraft/resources/ResourceKey; TREES_PLAINS W field_36135 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST_VEGETATION X field_36136 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FOREST_FLOWERS Y field_36137 + f Lnet/minecraft/resources/ResourceKey; FOREST_FLOWERS Z field_36138 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_LIGHT a field_36140 + f Lnet/minecraft/resources/ResourceKey; TREES_FLOWER_FOREST aa field_36139 + f Lnet/minecraft/resources/ResourceKey; TREES_MEADOW ab field_36141 + f Lnet/minecraft/resources/ResourceKey; TREES_CHERRY ac field_42965 + f Lnet/minecraft/resources/ResourceKey; TREES_TAIGA ad field_36142 + f Lnet/minecraft/resources/ResourceKey; TREES_GROVE ae field_36143 + f Lnet/minecraft/resources/ResourceKey; TREES_BADLANDS af field_36144 + f Lnet/minecraft/resources/ResourceKey; TREES_SNOWY ag field_36145 + f Lnet/minecraft/resources/ResourceKey; TREES_SWAMP ah field_36146 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_SAVANNA ai field_36147 + f Lnet/minecraft/resources/ResourceKey; TREES_SAVANNA aj field_36148 + f Lnet/minecraft/resources/ResourceKey; BIRCH_TALL ak field_36149 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH al field_36150 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_FOREST am field_36151 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_HILLS an field_36152 + f Lnet/minecraft/resources/ResourceKey; TREES_WATER ao field_36153 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH_AND_OAK ap field_36154 + f Lnet/minecraft/resources/ResourceKey; TREES_SPARSE_JUNGLE aq field_36155 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_SPRUCE_TAIGA ar field_36156 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_PINE_TAIGA as field_36157 + f Lnet/minecraft/resources/ResourceKey; TREES_JUNGLE at field_36158 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_VEGETATION au field_36159 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_ISLAND_VEGETATION av field_36160 + f Lnet/minecraft/resources/ResourceKey; TREES_MANGROVE aw field_38816 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; TREE_THRESHOLD ax field_36134 + f Lnet/minecraft/resources/ResourceKey; BAMBOO b field_36161 + f Lnet/minecraft/resources/ResourceKey; VINES c field_36162 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUNFLOWER d field_36163 + f Lnet/minecraft/resources/ResourceKey; PATCH_PUMPKIN e field_36164 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_PLAIN f field_36165 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_FOREST g field_36166 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_BADLANDS h field_36167 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_SAVANNA i field_36168 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_NORMAL j field_36169 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_TAIGA_2 k field_36170 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_TAIGA l field_36171 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_JUNGLE m field_36172 + f Lnet/minecraft/resources/ResourceKey; GRASS_BONEMEAL n field_36173 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH_2 o field_36174 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH p field_36175 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH_BADLANDS q field_36176 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON r field_36177 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON_SPARSE s field_36292 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_COMMON t field_36178 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_RARE u field_36179 + f Lnet/minecraft/resources/ResourceKey; PATCH_WATERLILY v field_36180 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS_2 w field_36181 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS x field_36182 + f Lnet/minecraft/resources/ResourceKey; PATCH_LARGE_FERN y field_36183 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_DESERT z field_36184 + m (I)Ljava/util/List; worldSurfaceSquaredWithCount a method_39738 + p 0 count + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; getMushroomPlacement a method_39739 + p 0 rarity + p 1 placement + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; treePlacement a method_39740 + p 0 placement + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/block/Block;)Ljava/util/List; treePlacement a method_39741 + p 0 placement + p 1 saplingBlock + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46867 + p 0 context + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lcom/google/common/collect/ImmutableList$Builder; treePlacementBase b method_39742 + p 0 placement + m ()V + m ()V +c net/minecraft/data/worldgen/placement/VillagePlacements sj net/minecraft/class_6825 + f Lnet/minecraft/resources/ResourceKey; PILE_HAY_VILLAGE a field_36195 + f Lnet/minecraft/resources/ResourceKey; PILE_MELON_VILLAGE b field_36196 + f Lnet/minecraft/resources/ResourceKey; PILE_SNOW_VILLAGE c field_36197 + f Lnet/minecraft/resources/ResourceKey; PILE_ICE_VILLAGE d field_36198 + f Lnet/minecraft/resources/ResourceKey; PILE_PUMPKIN_VILLAGE e field_36199 + f Lnet/minecraft/resources/ResourceKey; OAK_VILLAGE f field_36200 + f Lnet/minecraft/resources/ResourceKey; ACACIA_VILLAGE g field_36201 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_VILLAGE h field_36202 + f Lnet/minecraft/resources/ResourceKey; PINE_VILLAGE i field_36203 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_VILLAGE j field_36204 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAIN_VILLAGE k field_36205 + f Lnet/minecraft/resources/ResourceKey; PATCH_TAIGA_GRASS_VILLAGE l field_36206 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_BUSH_VILLAGE m field_36207 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46868 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/package-info sk net/minecraft/class_6820 +c net/minecraft/gametest/framework/AfterBatch sl net/minecraft/class_6300 + c Annotate a method with this annotation in order to have it run after the specified {@link #batch()}. + m ()Ljava/lang/String; batch a method_35930 +c net/minecraft/gametest/framework/BeforeBatch sm net/minecraft/class_6301 + c Annotate a method with this annotation in order to have it run before the specified {@link #batch()}. + m ()Ljava/lang/String; batch a method_35931 +c net/minecraft/gametest/framework/ExhaustedAttemptsException sn net/minecraft/class_5622 + m (IILnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 madeAttempts + p 2 successfulAttempts + p 3 testInfo +c net/minecraft/gametest/framework/GameTest so net/minecraft/class_6302 + m ()I timeoutTicks a method_35932 + m ()Ljava/lang/String; batch b method_35933 + m ()Z skyAccess c method_57098 + m ()I rotationSteps d method_35934 + m ()Z required e method_35935 + m ()Z manualOnly f method_57962 + m ()Ljava/lang/String; template g method_35936 + m ()J setupTicks h method_35937 + m ()I attempts i method_35938 + m ()I requiredSuccesses j method_35939 +c net/minecraft/gametest/framework/GameTestAssertException sp net/minecraft/class_4512 + m (Ljava/lang/String;)V + p 1 exceptionMessage +c net/minecraft/gametest/framework/GameTestAssertPosException sq net/minecraft/class_4513 + f Lnet/minecraft/core/BlockPos; absolutePos a field_20541 + f Lnet/minecraft/core/BlockPos; relativePos b field_20542 + f J tick c field_21449 + m ()Ljava/lang/String; getMessageToShowAtBlock a method_22150 + m ()Lnet/minecraft/core/BlockPos; getRelativePos b method_35940 + m ()Lnet/minecraft/core/BlockPos; getAbsolutePos c method_22151 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;J)V + p 1 exceptionMessage + p 2 absolutePos + p 3 relativePos + p 4 tick +c net/minecraft/gametest/framework/GameTestBatch sr net/minecraft/class_4514 + f Ljava/lang/String; DEFAULT_BATCH_NAME a field_33145 + f Ljava/lang/String; name b comp_2209 + f Ljava/util/Collection; gameTestInfos c comp_2210 + f Ljava/util/function/Consumer; beforeBatchFunction d comp_2211 + f Ljava/util/function/Consumer; afterBatchFunction e comp_2212 + m ()Ljava/lang/String; name a comp_2209 + m ()Ljava/util/Collection; gameTestInfos b comp_2210 + m ()Ljava/util/function/Consumer; beforeBatchFunction c comp_2211 + m ()Ljava/util/function/Consumer; afterBatchFunction d comp_2212 + m (Ljava/lang/String;Ljava/util/Collection;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 name + p 2 gameTestInfos + p 3 beforeBatchFunction + p 4 afterBatchFunction +c net/minecraft/gametest/framework/GameTestBatchFactory ss net/minecraft/class_9113 + f I MAX_TESTS_PER_BATCH a field_48467 + m ()Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; fromGameTestInfo a method_56188 + m (I)Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; fromGameTestInfo a method_61092 + p 0 maxTests + m (ILjava/util/Collection;)Ljava/util/Collection; method_56193 a method_56193 + m (ILjava/util/Map$Entry;)Ljava/util/stream/Stream; method_56196 a method_56196 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;Ljava/util/List;J)Lnet/minecraft/gametest/framework/GameTestBatch; method_56189 a method_56189 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_56190 a method_56190 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/TestFunction;)Lnet/minecraft/gametest/framework/GameTestInfo; method_56191 a method_56191 + m (Ljava/lang/String;Ljava/util/List;J)Lnet/minecraft/gametest/framework/GameTestBatch; method_56192 a method_56192 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Collection; fromTestFunction a method_56194 + p 0 testFunctions + p 1 level + m (Ljava/util/Collection;Ljava/lang/String;J)Lnet/minecraft/gametest/framework/GameTestBatch; toGameTestBatch a method_56195 + p 0 gameTestInfos + p 1 functionName + p 2 index + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/String; method_56197 a method_56197 + m (Lnet/minecraft/gametest/framework/TestFunction;ILnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestInfo; toGameTestInfo a method_56198 + p 0 testFunction + p 1 rotationSteps + p 2 level + m ()V +c net/minecraft/gametest/framework/GameTestBatchListener st net/minecraft/class_9114 + m (Lnet/minecraft/gametest/framework/GameTestBatch;)V testBatchStarting a method_56199 + p 1 batch + m (Lnet/minecraft/gametest/framework/GameTestBatch;)V testBatchFinished b method_56200 + p 1 batch +c net/minecraft/gametest/framework/GameTestEvent su net/minecraft/class_4692 + f Ljava/lang/Long; expectedDelay a field_21450 + f Ljava/lang/Runnable; assertion b field_21451 + m (JLjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestEvent; create a method_35941 + p 0 expectedDelay + p 2 assertion + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestEvent; create a method_35942 + p 0 assertion + m (Ljava/lang/Long;Ljava/lang/Runnable;)V + p 1 expectedDelay + p 2 assertion +c net/minecraft/gametest/framework/GameTestGenerator sv net/minecraft/class_6303 +c net/minecraft/gametest/framework/GameTestHelper sw net/minecraft/class_4516 + f Lnet/minecraft/gametest/framework/GameTestInfo; testInfo a field_20558 + f Z finalCheckAdded b field_33146 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_35943 + m (I)V setDayTime a method_35944 + p 1 time + m (III)V pressButton a method_35945 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/block/Block;)V setBlock a method_35946 + p 1 x + p 2 y + p 3 z + p 4 block + m (IIILnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_35947 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Runnable;)V succeedOnTickWhen a method_35948 + p 1 tick + p 2 criterion + m (JLjava/lang/Runnable;)V runAtTickTime a method_35951 + p 1 tickTime + p 3 task + m (JLnet/minecraft/core/BlockPos;)V assertAtTickTimeContainerEmpty a method_35949 + p 1 tickTime + p 3 pos + m (JLnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V assertAtTickTimeContainerContains a method_35950 + p 1 tickTime + p 3 pos + p 4 item + m (Lnet/minecraft/resources/ResourceKey;)V setBiome a method_55451 + p 1 biome + m (Lnet/minecraft/world/entity/Entity;)Z method_52206 a method_52206 + m (Lnet/minecraft/world/entity/Entity;III)V assertEntityInstancePresent a method_35953 + p 1 entity + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_35954 a method_35954 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;Ljava/lang/String;)V assertEntityPosition a method_61173 + p 1 entity + p 2 box + p 3 exceptionMessage + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Function;Ljava/lang/String;Ljava/lang/Object;)V assertEntityProperty a method_35957 + p 1 entity + p 2 entityPropertyGetter + p 3 valueName + p 4 testEntityProperty + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Ljava/lang/String;)V assertEntityProperty a method_35958 + p 1 entity + p 2 predicate + p 3 name + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V assertEntityInstancePresent a method_35955 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/gametest/framework/GameTestAssertPosException; method_35956 a method_35956 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Entity; findOneEntity a method_56201 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;DDD)V assertEntityTouching a method_35960 + p 1 type + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/EntityType;FFF)Lnet/minecraft/world/entity/Entity; spawn a method_35961 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;I)V assertEntitiesPresent a method_55323 + p 1 entityType + p 2 count + m (Lnet/minecraft/world/entity/EntityType;III)Lnet/minecraft/world/entity/Entity; spawn a method_35962 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;IIID)Lnet/minecraft/world/entity/Entity; findClosestEntity a method_56202 + p 1 type + p 2 x + p 3 y + p 4 z + p 5 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/Entity; spawn a method_35963 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;D)Ljava/util/List; findEntities a method_56203 + p 1 type + p 2 pos + p 3 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V assertEntityPresent a method_46224 + p 1 entityType + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; spawn a method_35964 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;D)V assertEntityPresent a method_35965 + p 1 type + p 2 pos + p 3 expansionAmount + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;ID)V assertEntitiesPresent a method_44606 + p 1 entityType + p 2 pos + p 3 count + p 4 radius + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; makeAboutToDrown a method_35966 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;I)V assertLivingEntityHasMobEffect a method_52889 + p 1 entity + p 2 effect + p 3 amplifier + m (Lnet/minecraft/world/entity/Mob;FFF)V moveTo a method_57099 + p 1 mob + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;F)Lnet/minecraft/gametest/framework/GameTestSequence; walkTo a method_35967 + p 1 mob + p 2 pos + p 3 speed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V placeAt a method_47816 + p 1 player + p 2 stack + p 3 pos + p 4 direction + m (Lnet/minecraft/world/item/Item;)V assertItemEntityPresent a method_54143 + p 1 item + m (Lnet/minecraft/world/item/Item;FFF)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_35968 + p 1 item + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/ItemStack;)Z method_48000 a method_48000 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_57100 + p 1 item + p 2 pos + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_46225 + p 1 item + p 2 pos + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;D)V assertItemEntityPresent a method_35969 + p 1 item + p 2 pos + p 3 expansionAmount + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;DI)V assertItemEntityCountIs a method_35970 + p 1 item + p 2 pos + p 3 expansionAmount + p 5 count + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/entity/player/Player; makeMockPlayer a method_36021 + p 1 gameType + m (Lnet/minecraft/world/level/block/Block;III)V assertBlockPresent a method_35971 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V assertBlockPresent a method_35972 + p 1 block + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_35973 a method_35973 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Z method_35974 a method_35974 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/BlockState;)Z method_36000 a method_36000 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_42063 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;)V assertSameBlockStates a method_35977 + p 1 boundingBox + p 2 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;)Z method_56204 a method_56204 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; absoluteVec a method_35978 + p 1 relativeVec3 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_35979 a method_35979 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_56205 a method_56205 + m (Ljava/lang/Class;)V killAllEntitiesOfClass a method_52207 + p 1 entityClass + m (Ljava/lang/Object;)Z method_48002 a method_48002 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V assertValueEqual a method_56606 + p 1 actual + p 2 expected + p 3 valueName + m (Ljava/lang/Runnable;)V succeedIf a method_35993 + p 1 criterion + m (Ljava/lang/Runnable;J)V method_35994 a method_35994 + m (Ljava/lang/String;)V fail a method_35995 + p 1 exceptionMessage + m (Ljava/lang/String;Lnet/minecraft/world/entity/Entity;)V fail a method_35996 + p 1 exceptionMessage + p 2 entity + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)V fail a method_35997 + p 1 exceptionMessage + p 2 pos + m (Ljava/util/function/Consumer;)V forEveryBlockInStructure a method_35998 + p 1 consumer + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/BlockState;)Z method_35999 a method_35999 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_35980 + p 1 pos + m (Lnet/minecraft/core/BlockPos;J)V pulseRedstone a method_35981 + p 1 pos + p 2 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)V assertEntityIsHolding a method_48001 + p 1 pos + p 2 entityType + p 3 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V assertEntityData a method_35982 + p 1 pos + p 2 type + p 3 entityDataGetter + p 4 testEntityData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V useBlock a method_36034 + p 1 pos + p 2 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)V useBlock a method_47817 + p 1 pos + p 2 player + p 3 result + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V assertContainerContains a method_35983 + p 1 pos + p 2 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V setBlock a method_35984 + p 1 pos + p 2 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Z method_35985 a method_35985 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_35986 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V assertBlockProperty a method_35987 + p 1 pos + p 2 property + p 3 value + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;Ljava/lang/String;)V assertBlockProperty a method_35988 + p 1 pos + p 2 property + p 3 predicate + p 4 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;)V method_35989 a method_35989 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/lang/String;)V assertBlock a method_35991 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlock a method_35992 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V assertSameBlockState a method_35990 + p 1 testPos + p 2 comparisonPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Ljava/util/function/IntPredicate;Ljava/util/function/Supplier;)V assertRedstoneSignal a method_52225 + p 1 pos + p 2 direction + p 3 signalStrengthPredicate + p 4 exceptionMessage + m (ZLjava/lang/String;)V assertTrue a method_46226 + p 1 condition + p 2 failureMessage + m ()V killAllEntities b method_36001 + m (III)V pullLever b method_36002 + p 1 x + p 2 y + p 3 z + m (JLjava/lang/Runnable;)V runAfterDelay b method_36003 + p 1 delay + p 3 task + m (Lnet/minecraft/world/entity/EntityType;)V assertEntityPresent b method_35959 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;DDD)V assertEntityNotTouching b method_36005 + p 1 type + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/EntityType;FFF)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36006 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;III)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36007 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;IIID)Ljava/util/List; findEntities b method_56207 + p 1 type + p 2 x + p 3 y + p 4 z + p 5 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36008 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V assertEntityNotPresent b method_59872 + p 1 type + p 2 from + p 3 to + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36009 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;D)Ljava/util/List; getEntities b method_44335 + p 1 entityType + p 2 pos + p 3 radius + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; withLowHealth b method_51821 + p 1 entity + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;F)V method_36010 b method_36010 + m (Lnet/minecraft/world/item/Item;)V assertItemEntityNotPresent b method_54144 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;D)V assertItemEntityNotPresent b method_42762 + p 1 item + p 2 pos + p 3 radius + m (Lnet/minecraft/world/level/block/Block;III)V assertBlockNotPresent b method_36011 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V assertBlockNotPresent b method_36012 + p 1 block + p 2 pos + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; relativeVec b method_46227 + p 1 absoluteVec3 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_36013 b method_36013 + m (Ljava/lang/Runnable;)V succeedWhen b method_36018 + p 1 criterion + m (Ljava/lang/Runnable;J)V method_36019 b method_36019 + m (Ljava/lang/String;)Ljava/lang/String; method_36020 b method_36020 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity b method_36014 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)V assertEntityInventoryContains b method_48003 + p 1 pos + p 2 entityType + p 3 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V succeedWhenEntityData b method_36015 + p 1 pos + p 2 type + p 3 entityDataGetter + p 4 testEntityData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V method_36016 b method_36016 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlockState b method_36017 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (ZLjava/lang/String;)V assertFalse b method_49994 + p 1 condition + p 2 failureMessage + m ()Lnet/minecraft/server/level/ServerPlayer; makeMockServerPlayerInLevel c method_51891 + m (Lnet/minecraft/world/entity/EntityType;)Ljava/util/List; getEntities c method_56208 + p 1 entityType + m (Lnet/minecraft/world/entity/EntityType;III)V assertEntityPresent c method_36022 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V assertEntityPresent c method_36023 + p 1 type + p 2 pos + m (Lnet/minecraft/world/level/block/Block;III)V succeedWhenBlockPresent c method_36024 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V succeedWhenBlockPresent c method_36025 + p 1 block + p 2 pos + m (Ljava/lang/Runnable;)V failIf c method_36028 + p 1 criterion + m (Ljava/lang/String;)Ljava/lang/String; method_36029 c method_36029 + m (Lnet/minecraft/core/BlockPos;)V pressButton c method_36026 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V method_36027 c method_36027 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlockEntityData c method_60651 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m ()V setNight d method_36030 + m (Lnet/minecraft/world/entity/EntityType;)V assertEntityNotPresent d method_36004 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;III)V assertEntityNotPresent d method_36031 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V assertEntityNotPresent d method_36032 + p 1 type + p 2 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V method_36033 d method_36033 + m (Ljava/lang/Runnable;)V failIfEver d method_36035 + p 1 criterion + m (Lnet/minecraft/core/BlockPos;)V useBlock d method_46229 + p 1 pos + m ()V succeed e method_36036 + m (Lnet/minecraft/world/entity/EntityType;III)V succeedWhenEntityPresent e method_36037 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V succeedWhenEntityPresent e method_36038 + p 1 type + p 2 pos + m (Ljava/lang/Runnable;)V onEachTick e method_36040 + p 1 task + m (Lnet/minecraft/core/BlockPos;)V pullLever e method_36039 + p 1 pos + m ()V tickPrecipitation f method_55452 + m (Lnet/minecraft/world/entity/EntityType;III)V succeedWhenEntityNotPresent f method_36042 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V succeedWhenEntityNotPresent f method_36043 + p 1 type + p 2 pos + m (Lnet/minecraft/core/BlockPos;)V destroyBlock f method_36044 + p 1 pos + m ()Lnet/minecraft/gametest/framework/GameTestSequence; startSequence g method_36041 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V method_36046 g method_36046 + m (Lnet/minecraft/core/BlockPos;)V assertContainerEmpty g method_36047 + p 1 pos + m ()Lnet/minecraft/world/level/block/Rotation; getTestRotation h method_61093 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V method_36049 h method_36049 + m (Lnet/minecraft/core/BlockPos;)V randomTick h method_36050 + p 1 pos + m ()J getTick i method_36045 + m (Lnet/minecraft/core/BlockPos;)V tickPrecipitation i method_55453 + p 1 pos + m ()Lnet/minecraft/world/phys/AABB; getBounds j method_36051 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; absolutePos j method_36052 + p 1 pos + m ()V ensureSingleFinalCheck k method_36048 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; relativePos k method_36054 + p 1 pos + m ()Lnet/minecraft/world/phys/AABB; getRelativeBounds l method_36053 + m (Lnet/minecraft/core/BlockPos;)V method_36056 l method_36056 + m ()Ljava/lang/Exception; method_36055 m method_36055 + m (Lnet/minecraft/core/BlockPos;)V method_36058 m method_36058 + m ()Ljava/lang/String; method_36057 n method_36057 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 testInfo +c net/minecraft/gametest/framework/GameTestHelper$1 sw$1 net/minecraft/class_4516$1 + f Lnet/minecraft/world/level/GameType; val$gameType b field_48983 + m (Lnet/minecraft/gametest/framework/GameTestHelper;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLcom/mojang/authlib/GameProfile;Lnet/minecraft/world/level/GameType;)V +c net/minecraft/gametest/framework/GameTestHelper$2 sw$2 net/minecraft/class_4516$2 + m (Lnet/minecraft/gametest/framework/GameTestHelper;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerLevel;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)V +c net/minecraft/gametest/framework/GameTestInfo sx net/minecraft/class_4517 + f Lnet/minecraft/gametest/framework/TestFunction; testFunction a field_20559 + f Lnet/minecraft/core/BlockPos; structureBlockPos b field_20560 + f Lnet/minecraft/core/BlockPos; northWestCorner c field_48468 + f Lnet/minecraft/server/level/ServerLevel; level d field_20561 + f Ljava/util/Collection; listeners e field_20562 + f I timeoutTicks f field_20563 + f Ljava/util/Collection; sequences g field_21452 + f Lit/unimi/dsi/fastutil/objects/Object2LongMap; runAtTickTimeMap h field_21453 + f J startTick i field_21454 + f I ticksToWaitForChunkLoading j field_47172 + f Z placedStructure k field_47173 + f Z chunksLoaded l field_47174 + f J tickCount m field_21455 + f Z started n field_20565 + f Lnet/minecraft/gametest/framework/RetryOptions; retryOptions o field_48469 + f Lcom/google/common/base/Stopwatch; timer p field_21456 + f Z done q field_20567 + f Lnet/minecraft/world/level/block/Rotation; rotation r field_25301 + f Ljava/lang/Throwable; error s field_20569 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity; structureBlockEntity t field_27805 + m ()Ljava/util/stream/Stream; getListeners A method_56209 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; copyReset B method_56210 + m ()Z ensureStructureIsPlaced C method_56211 + m ()V tickInternal D method_33315 + m ()V startTest E method_23639 + m ()V finish F method_23640 + m ()Lnet/minecraft/core/BlockPos; getOrCalculateNorthwestCorner G method_56212 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; placeStructure a method_56213 + m (I)Lnet/minecraft/gametest/framework/GameTestInfo; startExecution a method_23634 + p 1 delay + m (JLjava/lang/Runnable;)V setRunAtTickTime a method_36060 + p 1 tickTime + p 3 task + m (Lnet/minecraft/world/entity/Entity;)V method_54434 a method_54434 + m (Lnet/minecraft/world/level/ChunkPos;)Z method_54900 a method_54900 + m (Ljava/lang/Throwable;)V fail a method_22168 + p 1 error + m (Lnet/minecraft/core/BlockPos;)V setStructureBlockPos a method_23635 + p 1 pos + m (Lnet/minecraft/gametest/framework/GameTestListener;)V addListener a method_22167 + p 1 listener + m (Lnet/minecraft/gametest/framework/GameTestRunner;)V tick a method_22165 + p 1 runner + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/GameTestListener;)V method_33316 a method_33316 + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V method_23636 a method_23636 + m ()Ljava/lang/String; getTestName b method_22169 + m (Lnet/minecraft/world/entity/Entity;)Z method_54435 b method_54435 + m (Lnet/minecraft/core/BlockPos;)V setNorthWestCorner b method_56214 + p 1 northWestCorner + m (Lnet/minecraft/gametest/framework/GameTestListener;)V method_22175 b method_22175 + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/GameTestListener;)V method_22171 b method_22171 + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V method_23637 b method_23637 + m ()Lnet/minecraft/core/BlockPos; getStructureBlockPos c method_22172 + m ()Lnet/minecraft/world/phys/AABB; getStructureBounds d method_36062 + m ()Lnet/minecraft/world/level/block/entity/StructureBlockEntity; getStructureBlockEntity e method_36059 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel f method_22176 + m ()Z hasSucceeded g method_22177 + m ()Z hasFailed h method_22178 + m ()Z hasStarted i method_22179 + m ()Z isDone j method_22180 + m ()J getRunTime k method_36063 + m ()V succeed l method_36064 + m ()Ljava/lang/Throwable; getError m method_22182 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; prepareTestStructure n method_22166 + m ()J getTick o method_36065 + m ()Lnet/minecraft/gametest/framework/GameTestSequence; createSequence p method_36066 + m ()Z isRequired q method_22183 + m ()Z isOptional r method_22184 + m ()Ljava/lang/String; getStructureName s method_23638 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation t method_29402 + m ()Lnet/minecraft/gametest/framework/TestFunction; getTestFunction u method_29403 + m ()I getTimeoutTicks v method_36067 + m ()Z isFlaky w method_32241 + m ()I maxAttempts x method_32242 + m ()I requiredSuccesses y method_32243 + m ()Lnet/minecraft/gametest/framework/RetryOptions; retryOptions z method_56215 + m (Lnet/minecraft/gametest/framework/TestFunction;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/RetryOptions;)V + p 1 testFunction + p 2 rotation + p 3 level + p 4 retryOptions +c net/minecraft/gametest/framework/GameTestListener sy net/minecraft/class_4518 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V testStructureLoaded a method_22188 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testAddedForRerun a method_56216 + p 1 oldTest + p 2 newTest + p 3 runner + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testPassed a method_33317 + p 1 test + p 2 runner + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testFailed b method_22190 + p 1 test + p 2 runner +c net/minecraft/gametest/framework/GameTestRegistry sz net/minecraft/class_4519 + f Ljava/util/Collection; TEST_FUNCTIONS a field_20570 + f Ljava/util/Set; TEST_CLASS_NAMES b field_20571 + f Ljava/util/Map; BEFORE_BATCH_FUNCTIONS c field_20572 + f Ljava/util/Map; AFTER_BATCH_FUNCTIONS d field_27806 + f Ljava/util/Set; LAST_FAILED_TESTS e field_25302 + m ()Ljava/util/Collection; getAllTestFunctions a method_22191 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56217 a method_56217 + m (Ljava/lang/Class;)V register a method_36068 + p 0 testClass + m (Ljava/lang/String;)Ljava/util/stream/Stream; getTestFunctionsForClassName a method_22193 + p 0 className + m (Ljava/lang/String;Lnet/minecraft/gametest/framework/TestFunction;)Z method_22194 a method_22194 + m (Ljava/lang/reflect/Method;)V register a method_36069 + p 0 testMethod + m (Ljava/lang/reflect/Method;Ljava/lang/Class;Ljava/util/function/Function;Ljava/util/Map;)V registerBatchFunction a method_36070 + p 0 testMethod + p 1 annotationType + p 2 valueGetter + p 3 positioning + m (Ljava/lang/reflect/Method;Ljava/lang/Object;)V method_36071 a method_36071 + m (Lnet/minecraft/gametest/framework/TestFunction;)V rememberFailedTest a method_29404 + p 0 testFunction + m (Lnet/minecraft/gametest/framework/TestFunction;Ljava/lang/String;)Z isTestFunctionPartOfClass a method_22192 + p 0 testFunction + p 1 className + m ()Ljava/util/Collection; getAllTestClassNames b method_22195 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56218 b method_56218 + m (Ljava/lang/String;)Z isTestClass b method_22196 + p 0 className + m (Ljava/lang/String;Lnet/minecraft/gametest/framework/TestFunction;)Z method_22197 b method_22197 + m (Ljava/lang/reflect/Method;)Ljava/util/Collection; useTestGeneratorMethod b method_36072 + p 0 testMethod + m ()Ljava/util/stream/Stream; getLastFailedTests c method_29405 + m (Ljava/lang/String;)Ljava/util/function/Consumer; getBeforeBatchFunction c method_22198 + p 0 functionName + m (Ljava/lang/reflect/Method;)Lnet/minecraft/gametest/framework/TestFunction; turnMethodIntoTestFunction c method_36073 + p 0 testMethod + m ()V forgetFailedTests d method_29406 + m (Ljava/lang/String;)Ljava/util/function/Consumer; getAfterBatchFunction d method_32244 + p 0 functionName + m (Ljava/lang/reflect/Method;)Ljava/util/function/Consumer; turnMethodIntoConsumer d method_36074 + p 0 testMethod + m (Ljava/lang/String;)Ljava/util/Optional; findTestFunction e method_22199 + p 0 testName + m (Ljava/lang/String;)Lnet/minecraft/gametest/framework/TestFunction; getTestFunction f method_22200 + p 0 testName + m ()V + m ()V +c net/minecraft/gametest/framework/GameTestRunner ta net/minecraft/class_4520 + f I DEFAULT_TESTS_PER_ROW a field_33151 + f Lorg/slf4j/Logger; LOGGER b field_48470 + f Lnet/minecraft/server/level/ServerLevel; level c field_48471 + f Lnet/minecraft/gametest/framework/GameTestTicker; testTicker d field_48472 + f Ljava/util/List; allTestInfos e field_48473 + f Lcom/google/common/collect/ImmutableList; batches f field_48474 + f Ljava/util/List; batchListeners g field_48475 + f Ljava/util/List; scheduledForRerun h field_48476 + f Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; testBatcher i field_48477 + f Z stopped j field_48478 + f Lnet/minecraft/gametest/framework/GameTestBatch; currentBatch k field_48479 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; existingStructureSpawner l field_48480 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; newStructureSpawner m field_48481 + f Z haltOnError n field_52279 + m ()Ljava/util/List; getTestInfos a method_56219 + m (I)V runBatch a method_56220 + p 1 index + m (Lnet/minecraft/server/level/ServerLevel;)V clearMarkers a method_22213 + p 0 serverLevel + m (Ljava/util/Collection;)Ljava/util/Collection; createStructuresForBatch a method_56221 + p 1 batch + m (Lnet/minecraft/gametest/framework/GameTestBatch;)Ljava/util/stream/Stream; method_56222 a method_56222 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V addListener a method_56223 + p 1 listener + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V rerunTest a method_56224 + p 1 test + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestListener;)V method_56225 a method_56225 + m ()V start b method_56226 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V method_56227 b method_56227 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; spawn b method_56228 + p 1 test + m ()V stop c method_56229 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/String; method_57072 c method_57072 + m ()V runScheduledRerunTests d method_56231 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56230 d method_56230 + m (Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher;Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestTicker;Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;Z)V + p 1 testBatcher + p 2 batches + p 3 level + p 4 testTicker + p 5 existingStructureSpawner + p 6 newStructureSpawner + p 7 haltOnError + m ()V +c net/minecraft/gametest/framework/GameTestRunner$1 ta$1 net/minecraft/class_4520$1 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; val$currentBatchTracker a field_48482 + f I val$batchIndex b field_48483 + f Lnet/minecraft/gametest/framework/GameTestRunner; field_48484 c field_48484 + m ()V testCompleted a method_56232 + m (J)V method_61094 a method_61094 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V method_56234 a method_56234 + m (J)V method_56233 b method_56233 + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/MultipleTestTracker;I)V +c net/minecraft/gametest/framework/GameTestRunner$Builder ta$a net/minecraft/class_4520$class_9115 + f Lnet/minecraft/server/level/ServerLevel; level a field_48485 + f Lnet/minecraft/gametest/framework/GameTestTicker; testTicker b field_48486 + f Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; batcher c field_48487 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; existingStructureSpawner d field_48488 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; newStructureSpawner e field_48489 + f Ljava/util/Collection; batches f field_48490 + f Z haltOnError g field_52280 + m ()Lnet/minecraft/gametest/framework/GameTestRunner; build a method_56235 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; fromBatches a method_56236 + p 0 batches + p 1 level + m (Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; batcher a method_61095 + p 1 batcher + m (Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; newStructureSpawner a method_56237 + p 1 newStructureSpawner + m (Lnet/minecraft/gametest/framework/StructureGridSpawner;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; existingStructureSpawner a method_61096 + p 1 existingStructureSpawner + m (Z)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; haltOnError a method_61097 + p 1 haltOnError + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; fromInfo b method_56238 + p 0 infos + p 1 level + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)V + p 1 batches + p 2 level +c net/minecraft/gametest/framework/GameTestRunner$GameTestBatcher ta$b net/minecraft/class_4520$class_9116 +c net/minecraft/gametest/framework/GameTestRunner$StructureSpawner ta$c net/minecraft/class_4520$class_9117 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; IN_PLACE a field_48491 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; NOT_SET b field_48492 + m (Lnet/minecraft/server/level/ServerLevel;)V onBatchStart a method_61098 + p 1 level + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; method_56239 a method_56239 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; method_56240 b method_56240 + m ()V +c net/minecraft/gametest/framework/GameTestSequence tb net/minecraft/class_4693 + f Lnet/minecraft/gametest/framework/GameTestInfo; parent a field_21457 + f Ljava/util/List; events b field_21458 + f J lastTick c field_21459 + m ()V thenSucceed a method_36075 + m (I)Lnet/minecraft/gametest/framework/GameTestSequence; thenIdle a method_36076 + p 1 tick + m (ILjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecuteAfter a method_36077 + p 1 tick + p 2 task + m (J)V tickAndContinue a method_23643 + p 1 tick + m (JLjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenWaitUntil a method_36078 + p 1 expectedDelay + p 3 task + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenWaitUntil a method_36079 + p 1 task + m (Ljava/util/function/Supplier;)V thenFail a method_36080 + p 1 exception + m (Lnet/minecraft/gametest/framework/GameTestSequence$Condition;)V method_36081 a method_36081 + m ()Lnet/minecraft/gametest/framework/GameTestSequence$Condition; thenTrigger b method_36083 + m (ILjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecuteFor b method_36084 + p 1 tick + p 2 task + m (J)V tickAndFailIfNotComplete b method_23644 + p 1 ticks + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecute b method_36085 + p 1 task + m (Ljava/util/function/Supplier;)V method_36086 b method_36086 + m ()V method_36087 c method_36087 + m (ILjava/lang/Runnable;)V method_36088 c method_36088 + m (J)V tick c method_23645 + p 1 tick + m (Ljava/lang/Runnable;)V executeWithoutFail c method_36089 + p 1 task + m (ILjava/lang/Runnable;)V method_36090 d method_36090 + m (Ljava/lang/Runnable;)V method_36091 d method_36091 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 testInfo +c net/minecraft/gametest/framework/GameTestSequence$Condition tb$a net/minecraft/class_4693$class_6304 + f Lnet/minecraft/gametest/framework/GameTestSequence; field_33153 a field_33153 + f J NOT_TRIGGERED b field_33154 + f J triggerTime c field_33155 + m ()V assertTriggeredThisTick a method_36092 + m (J)V trigger a method_36093 + p 1 triggerTime + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V +c net/minecraft/gametest/framework/GameTestServer tc net/minecraft/class_6306 + f Lorg/slf4j/Logger; LOGGER k field_33156 + f I PROGRESS_REPORT_INTERVAL l field_33157 + f I TEST_POSITION_RANGE m field_47175 + f Lnet/minecraft/server/Services; NO_SERVICES n field_39441 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; sampleLogger o field_48984 + f Ljava/util/List; testBatches p field_33158 + f Ljava/util/List; testFunctions q field_48493 + f Lnet/minecraft/core/BlockPos; spawnPos r field_33159 + f Lcom/google/common/base/Stopwatch; stopwatch s field_48494 + f Lnet/minecraft/world/level/GameRules; TEST_GAME_RULES t field_33160 + f Lnet/minecraft/world/level/levelgen/WorldOptions; WORLD_OPTIONS u field_33161 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; testTracker v field_33162 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lnet/minecraft/world/level/LevelSettings;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43615 a method_43615 + m (Lnet/minecraft/world/level/GameRules;)V method_36094 a method_36094 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_40377 a method_40377 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/gametest/framework/GameTestServer; create a method_40378 + p 0 serverThread + p 1 storageSource + p 2 packRepository + p 3 testBatches + p 4 spawnPos + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_36095 a method_36095 + m (Lnet/minecraft/server/level/ServerLevel;)V startTests b method_36096 + p 1 serverLevel + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_36097 b method_36097 + m ()Z haveTestsStarted br method_36098 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 testBatches + p 6 spawnPos + m ()V +c net/minecraft/gametest/framework/GameTestServer$1 tc$1 net/minecraft/class_6306$1 + m (Lnet/minecraft/gametest/framework/GameTestServer;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;I)V +c net/minecraft/gametest/framework/GameTestTicker td net/minecraft/class_4521 + f Lnet/minecraft/gametest/framework/GameTestTicker; SINGLETON a field_20574 + f Ljava/util/Collection; testInfos b field_20575 + f Lnet/minecraft/gametest/framework/GameTestRunner; runner c field_48495 + m ()V clear a method_22226 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V add a method_22227 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestRunner;)V setRunner a method_56241 + p 1 runner + m ()V tick b method_22228 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56242 b method_56242 + m ()V + m ()V +c net/minecraft/gametest/framework/GameTestTimeoutException te net/minecraft/class_4522 + m (Ljava/lang/String;)V + p 1 exceptionMessage +c net/minecraft/gametest/framework/GlobalTestReporter tf net/minecraft/class_5623 + f Lnet/minecraft/gametest/framework/TestReporter; DELEGATE a field_27807 + m ()V finish a method_36099 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestFailed a method_32245 + p 0 testInfo + m (Lnet/minecraft/gametest/framework/TestReporter;)V replaceWith a method_36100 + p 0 testReporter + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestSuccess b method_33319 + p 0 testInfo + m ()V + m ()V +c net/minecraft/gametest/framework/JUnitLikeTestReporter tg net/minecraft/class_6307 + f Lorg/w3c/dom/Document; document a field_33164 + f Lorg/w3c/dom/Element; testSuite b field_33165 + f Lcom/google/common/base/Stopwatch; stopwatch c field_33166 + f Ljava/io/File; destination d field_33167 + m (Ljava/io/File;)V save a method_36101 + p 1 destination + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)Lorg/w3c/dom/Element; createTestCase a method_36102 + p 1 testInfo + p 2 name + m (Ljava/io/File;)V + p 1 destination +c net/minecraft/gametest/framework/LogTestReporter th net/minecraft/class_4523 + f Lorg/slf4j/Logger; LOGGER a field_20576 + m ()V + m ()V +c net/minecraft/gametest/framework/MultipleTestTracker ti net/minecraft/class_4524 + f C NOT_STARTED_TEST_CHAR a field_33168 + f C ONGOING_TEST_CHAR b field_33169 + f C SUCCESSFUL_TEST_CHAR c field_33170 + f C FAILED_OPTIONAL_TEST_CHAR d field_33171 + f C FAILED_REQUIRED_TEST_CHAR e field_33172 + f Ljava/util/Collection; tests f field_20577 + f Ljava/util/Collection; listeners g field_25303 + m ()I getFailedRequiredCount a method_22229 + m (Ljava/lang/StringBuffer;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_22233 a method_22233 + m (Ljava/util/function/Consumer;)V addFailureListener a method_29407 + p 1 onFail + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V addTestToTrack a method_22230 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestListener;)V addListener a method_22231 + p 1 testListener + m (Lnet/minecraft/gametest/framework/GameTestListener;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_22232 a method_22232 + m ()I getFailedOptionalCount b method_22234 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V remove b method_56243 + p 1 gameTestInfo + m ()I getDoneCount c method_22235 + m ()Z hasFailedRequired d method_22236 + m ()Z hasFailedOptional e method_22237 + m ()Ljava/util/Collection; getFailedRequired f method_36103 + m ()Ljava/util/Collection; getFailedOptional g method_36104 + m ()I getTotalCount h method_22238 + m ()Z isDone i method_22239 + m ()Ljava/lang/String; getProgressBar j method_22240 + m ()V + m (Ljava/util/Collection;)V + p 1 testInfos +c net/minecraft/gametest/framework/MultipleTestTracker$1 ti$1 net/minecraft/class_4524$1 + f Ljava/util/function/Consumer; val$listener a field_25304 + m (Lnet/minecraft/gametest/framework/MultipleTestTracker;Ljava/util/function/Consumer;)V +c net/minecraft/gametest/framework/ReportGameListener tj net/minecraft/class_5624 + f I attempts a field_27808 + f I successes b field_27809 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/lang/String;)V showRedBox a method_32247 + p 0 serverLevel + p 1 pos + p 2 displayMessage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/ChatFormatting;Ljava/lang/String;)V say a method_32248 + p 0 serverLevel + p 1 formatting + p 2 message + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_32249 a method_32249 + m (Ljava/lang/String;Lnet/minecraft/ChatFormatting;Lnet/minecraft/server/level/ServerPlayer;)V method_32250 a method_32250 + m (Ljava/lang/String;ZLjava/lang/String;)Lnet/minecraft/world/item/ItemStack; createBook a method_32251 + p 0 testName + p 1 required + p 2 message + m (Ljava/lang/StringBuffer;Ljava/lang/String;)V method_32252 a method_32252 + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/world/level/block/Block;)V spawnBeacon a method_32253 + p 0 testInfo + p 1 block + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V reportPassed a method_33320 + p 0 testInfo + p 1 message + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/Throwable;)V reportFailure a method_32254 + p 0 testInfo + p 1 error + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;Z)V handleRetry a method_56244 + p 1 testInfo + p 2 runner + p 3 passed + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Lnet/minecraft/core/BlockPos; getBeaconPos b method_61099 + p 0 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/world/level/block/Block;)V updateBeaconGlass b method_61100 + p 0 testInfo + p 1 newBlock + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V visualizePassedTest b method_33321 + p 0 testInfo + p 1 message + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/Throwable;)V visualizeFailedTest b method_32255 + p 0 testInfo + p 1 error + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V spawnLectern c method_32256 + p 0 testInfo + p 1 message + m ()V +c net/minecraft/gametest/framework/RetryOptions tk net/minecraft/class_9118 + f I numberOfTries a comp_2213 + f Z haltOnFailure b comp_2214 + f Lnet/minecraft/gametest/framework/RetryOptions; NO_RETRIES c field_48496 + m ()Lnet/minecraft/gametest/framework/RetryOptions; noRetries a method_56245 + m (II)Z hasTriesLeft a method_56246 + p 1 attempts + p 2 successes + m ()Z unlimitedTries b method_56247 + m ()Z hasRetries c method_56248 + m ()I numberOfTries d comp_2213 + m ()Z haltOnFailure e comp_2214 + m (IZ)V + m ()V +c net/minecraft/gametest/framework/StructureBlockPosFinder tl net/minecraft/class_9119 +c net/minecraft/gametest/framework/StructureGridSpawner tm net/minecraft/class_9120 + f I SPACE_BETWEEN_COLUMNS c field_48497 + f I SPACE_BETWEEN_ROWS d field_48498 + f I testsPerRow e field_48499 + f I currentRowCount f field_48500 + f Lnet/minecraft/world/phys/AABB; rowBounds g field_48501 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; nextTestNorthWestCorner h field_48502 + f Lnet/minecraft/core/BlockPos; firstTestNorthWestCorner i field_48503 + f Z clearOnBatch j field_52281 + f F maxX k field_52282 + f Ljava/util/Collection; testInLastBatch l field_52283 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_61101 a method_61101 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 northTestNorthWestCorner + p 2 testsPerRow + p 3 clearOnBatch +c net/minecraft/gametest/framework/StructureUtils tn net/minecraft/class_4525 + f I DEFAULT_Y_SEARCH_RADIUS a field_51468 + f Ljava/lang/String; DEFAULT_TEST_STRUCTURES_DIR b field_33173 + f Ljava/lang/String; testStructuresDir c field_20579 + f Lorg/slf4j/Logger; LOGGER d field_27813 + m (I)Lnet/minecraft/world/level/block/Rotation; getRotationForRotationSteps a method_29408 + p 0 rotationSteps + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_22254 a method_22254 + m (ILnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)V clearBlock a method_22368 + p 0 structureBlockY + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)V method_54901 a method_54901 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_56250 a method_56250 + m (Lnet/minecraft/world/entity/Entity;)Z method_22241 a method_22241 + m (Lnet/minecraft/world/level/block/Rotation;)I getRotationStepsForRotation a method_36105 + p 0 rotation + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/world/phys/AABB; getStructureBounds a method_22242 + p 0 structureBlockEntity + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/server/level/ServerLevel;)V clearSpaceForStructure a method_22246 + p 0 boundingBox + p 1 level + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/server/level/ServerLevel;)V removeBarriers a method_57101 + p 0 bounds + p 1 level + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/server/level/ServerLevel;Z)V encaseStructure a method_57102 + p 0 bounds + p 1 level + p 2 placeBarriers + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_56251 a method_56251 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_59783 a method_59783 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)V createNewEmptyStructureBlock a method_22251 + p 0 structureName + p 1 pos + p 2 size + p 3 rotation + p 4 serverLevel + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; findStructureBlockContainingPos a method_22244 + p 0 pos + p 1 radius + p 2 serverLevel + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Ljava/util/stream/Stream; findStructureByTestFunction a method_59782 + p 0 pos + p 1 radius + p 2 level + p 3 testName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_22249 a method_22249 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/stream/Stream; lookedAtStructureBlockPos a method_56252 + p 0 pos + p 1 entity + p 2 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)I method_22245 a method_22245 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z doesStructureContain a method_22247 + p 0 structureBlockPos + p 1 posToTest + p 2 serverLevel + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57103 a method_57103 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)V addCommandBlockAndButtonToStartTest a method_22248 + p 0 structureBlockPos + p 1 offset + p 2 rotation + p 3 serverLevel + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57104 a method_57104 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getTransformedFarCorner a method_54847 + p 0 pos + p 1 offset + p 2 rotation + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/IllegalStateException; method_54902 a method_54902 + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; prepareTestStructure a method_54903 + p 0 gameTestInfo + p 1 pos + p 2 rotation + p 3 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_54845 b method_54845 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getStructureBoundingBox b method_29410 + p 0 structureBlockEntity + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/server/level/ServerLevel;)V forceLoadChunks b method_22256 + p 0 boundingBox + p 1 level + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; findNearestStructureBlock b method_22255 + p 0 pos + p 1 radius + p 2 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getStructureBoundingBox b method_29409 + p 0 pos + p 1 offset + p 2 rotation + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; createStructureBlock b method_22252 + p 0 gameTestInfo + p 1 pos + p 2 rotation + p 3 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; method_59784 c method_59784 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/core/BlockPos; getStructureOrigin c method_54849 + p 0 structureBlockEntity + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/stream/Stream; findStructureBlocks c method_22258 + p 0 pos + p 1 radius + p 2 level + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBoxAtGround d method_59785 + p 0 pos + p 1 radius + p 2 level + m ()V + m ()V +c net/minecraft/gametest/framework/StructureUtils$1 tn$1 net/minecraft/class_4525$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_33175 + m ()V +c net/minecraft/gametest/framework/TestClassNameArgument to net/minecraft/class_4526 + f Ljava/util/Collection; EXAMPLES a field_20580 + m ()Lnet/minecraft/gametest/framework/TestClassNameArgument; testClassName a method_22370 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_22261 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; getTestClassName a method_22262 + p 0 context + p 1 argument + m ()V + m ()V +c net/minecraft/gametest/framework/TestCommand tp net/minecraft/class_4527 + f I STRUCTURE_BLOCK_NEARBY_SEARCH_RADIUS a field_33180 + f I STRUCTURE_BLOCK_FULL_SEARCH_RADIUS b field_33181 + f Lorg/slf4j/Logger; LOGGER c field_45665 + f I DEFAULT_CLEAR_RADIUS d field_33178 + f I MAX_CLEAR_RADIUS e field_33179 + f I TEST_POS_Z_OFFSET_FROM_PLAYER f field_33182 + f I SHOW_POS_DURATION_MS g field_33183 + f I DEFAULT_X_SIZE h field_33184 + f I DEFAULT_Y_SIZE i field_33185 + f I DEFAULT_Z_SIZE j field_33186 + f Ljava/lang/String; STRUCTURE_BLOCK_ENTITY_COULD_NOT_BE_FOUND k field_48504 + f Lnet/minecraft/gametest/framework/TestFinder$Builder; testFinder l field_48505 + m ()I stopTests a method_56254 + m (ILnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/TestFunction;)Lnet/minecraft/gametest/framework/GameTestInfo; method_56255 a method_56255 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Z verifyStructureExists a method_54904 + p 0 level + p 1 structure + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;Lnet/minecraft/ChatFormatting;)V say a method_22275 + p 0 serverLevel + p 1 message + p 2 formatting + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57105 a method_57105 + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_22276 a method_22276 + m (Lnet/minecraft/world/entity/Entity;)V method_57106 a method_57106 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_22270 + p 0 dispatcher + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56256 a method_56256 + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptions a method_56257 + p 0 argumentBuilder + p 1 runnerGetter + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptions a method_56258 + p 0 argumentBuilder + p 1 runnerGetter + p 2 modifier + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22283 a method_22283 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/core/BlockPos; createTestPositionAround a method_54850 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestRunner;)I trackAndStartRunner a method_56259 + p 0 source + p 1 level + p 2 runner + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)I saveAndExportTestStructure a method_54905 + p 0 source + p 1 structureBlockEntity + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I showPos a method_22264 + p 0 source + p 1 variableName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;III)I createNewStructure a method_22268 + p 0 source + p 1 structureName + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_56260 a method_56260 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)Ljava/util/stream/Stream; toGameTestInfos a method_56261 + p 0 source + p 1 retryOptions + p 2 structureBlockPosFinder + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/TestFunctionFinder;I)Ljava/util/stream/Stream; toGameTestInfo a method_56262 + p 0 source + p 1 retryOptions + p 2 testFunctionFinder + p 3 rotationSteps + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/TestFunction;)Z method_56263 a method_56263 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52187 a method_52187 + m (Ljava/lang/String;Lnet/minecraft/ChatFormatting;Lnet/minecraft/server/level/ServerPlayer;)V method_22263 a method_22263 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52188 a method_52188 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56265 a method_56265 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56266 a method_56266 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/RetryOptions;)Ljava/util/Optional; createGameTestInfo a method_56264 + p 0 pos + p 1 level + p 2 retryOptions + m (Lnet/minecraft/gametest/framework/GameTestInfo;)I resetGameTestInfo a method_56267 + p 0 gameTestInfo + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptionsAndBuildInfo b method_56268 + p 0 argumentBuilder + p 1 runnerGetter + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22286 b method_22286 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I exportTestStructure b method_22282 + p 0 source + p 1 structurePath + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56269 b method_56269 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56270 b method_56270 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22287 c method_22287 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)V say c method_22278 + p 0 source + p 1 message + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56271 c method_56271 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23648 d method_23648 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I importTestStructure d method_22285 + p 0 source + p 1 structurePath + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56272 d method_56272 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22288 e method_22288 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56273 e method_56273 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56274 f method_56274 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22289 g method_22289 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56275 h method_56275 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56276 i method_56276 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56277 j method_56277 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56278 k method_56278 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56279 l method_56279 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56280 m method_56280 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56281 n method_56281 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22290 o method_22290 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56282 p method_56282 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56283 q method_56283 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56284 r method_56284 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_59786 s method_59786 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_61102 t method_61102 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_61103 u method_61103 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57963 v method_57963 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57964 w method_57964 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56285 x method_56285 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56286 y method_56286 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56287 z method_56287 + m ()V + m ()V +c net/minecraft/gametest/framework/TestCommand$Runner tp$a net/minecraft/class_4527$class_9121 + f Lnet/minecraft/gametest/framework/TestFinder; finder a field_48506 + m ()I reset a method_56288 + m (I)I run a method_56289 + p 1 rotationSteps + m (II)I run a method_56290 + p 1 rotationSteps + p 2 testsPerRow + m (Lnet/minecraft/server/level/ServerLevel;)V method_56291 a method_56291 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I method_56292 a method_56292 + m (Lnet/minecraft/server/level/ServerLevel;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)I method_56293 a method_56293 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Integer;)V method_56294 a method_56294 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_59788 a method_59788 + m (Ljava/util/stream/Stream;Ljava/util/function/ToIntFunction;Ljava/lang/Runnable;Ljava/util/function/Consumer;)V logAndRun a method_56295 + p 1 structureBlockPos + p 2 testCounter + p 3 onFail + p 4 onSuccess + m (Lnet/minecraft/core/BlockPos;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/BlockPos;)V method_59787 a method_59787 + m (Lnet/minecraft/gametest/framework/RetryOptions;)I run a method_56296 + p 1 retryOptions + m (Lnet/minecraft/gametest/framework/RetryOptions;I)I run a method_56297 + p 1 retryOptions + p 2 rotationSteps + m (Lnet/minecraft/gametest/framework/RetryOptions;II)I run a method_56298 + p 1 retryOptions + p 2 rotationSteps + p 3 testsPerRow + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_59789 a method_59789 + m ()I clear b method_56299 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56300 b method_56300 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Integer;)V method_56301 b method_56301 + m ()I export c method_56302 + m ()I run d method_56303 + m ()I locate e method_59790 + m ()I verify f method_61104 + m (Lnet/minecraft/gametest/framework/TestFinder;)V + p 1 finder +c net/minecraft/gametest/framework/TestCommand$TestBatchSummaryDisplayer tp$b net/minecraft/class_4527$class_9122 + f Lnet/minecraft/commands/CommandSourceStack; source a comp_2215 + m ()Lnet/minecraft/commands/CommandSourceStack; source a comp_2215 + m (Lnet/minecraft/commands/CommandSourceStack;)V +c net/minecraft/gametest/framework/TestCommand$TestSummaryDisplayer tp$c net/minecraft/class_4527$class_4528 + f Lnet/minecraft/server/level/ServerLevel; level a comp_2216 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; tracker b comp_2217 + m ()Lnet/minecraft/server/level/ServerLevel; level a comp_2216 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/MultipleTestTracker;)V showTestSummaryIfAllDone a method_56304 + p 0 level + p 1 tracker + m ()Lnet/minecraft/gametest/framework/MultipleTestTracker; tracker b comp_2217 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/MultipleTestTracker;)V + p 1 level + p 2 tracker +c net/minecraft/gametest/framework/TestFinder tq net/minecraft/class_9123 + f Lnet/minecraft/gametest/framework/TestFunctionFinder; NO_FUNCTIONS a field_48507 + f Lnet/minecraft/gametest/framework/StructureBlockPosFinder; NO_STRUCTURES b field_48508 + f Lnet/minecraft/gametest/framework/TestFunctionFinder; testFunctionFinder c field_48509 + f Lnet/minecraft/gametest/framework/StructureBlockPosFinder; structureBlockPosFinder d field_48510 + f Lnet/minecraft/commands/CommandSourceStack; source e field_48511 + f Ljava/util/function/Function; contextProvider f field_48512 + m ()Lnet/minecraft/commands/CommandSourceStack; source a method_56305 + m ()Ljava/lang/Object; get b method_56306 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Function;Lnet/minecraft/gametest/framework/TestFunctionFinder;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)V + p 1 source + p 2 contextProvider + p 3 testFunctionFinder + p 4 structureBlockPosFinder + m ()V +c net/minecraft/gametest/framework/TestFinder$Builder tq$a net/minecraft/class_9123$class_9124 + f Ljava/util/function/Function; contextProvider a field_48513 + f Ljava/util/function/UnaryOperator; testFunctionFinderWrapper b field_49663 + f Ljava/util/function/UnaryOperator; structureBlockPosFinderWrapper c field_49664 + m ()Ljava/util/stream/Stream; method_56307 a method_56307 + m (I)Lnet/minecraft/gametest/framework/TestFinder$Builder; createMultipleCopies a method_57965 + p 1 count + m (ILjava/util/function/Supplier;)Ljava/util/function/Supplier; method_57966 a method_57966 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; nearest a method_56309 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Ljava/lang/Object; radius a method_56310 + p 1 context + p 2 radius + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; allTestsInClass a method_56311 + p 1 context + p 2 className + m (Lcom/mojang/brigadier/context/CommandContext;Z)Ljava/lang/Object; failedTests a method_56312 + p 1 context + p 2 onlyRequired + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56313 a method_56313 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/TestFunctionFinder;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)Ljava/lang/Object; build a method_57967 + p 1 source + p 2 testFunctionFinder + p 3 structureBlockPosFinder + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_56315 a method_56315 + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_57968 a method_57968 + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56308 a method_56308 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56314 a method_56314 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)Ljava/util/stream/Stream; method_59791 a method_59791 + m (Lnet/minecraft/gametest/framework/TestFunction;)Z method_57969 a method_57969 + m (Z)Ljava/util/stream/Stream; method_56316 a method_56316 + m (ZLnet/minecraft/gametest/framework/TestFunction;)Z method_56317 a method_56317 + m (I)Ljava/util/function/UnaryOperator; createCopies b method_57970 + p 0 count + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; allNearby b method_56318 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; byArgument b method_56319 + p 1 context + p 2 argumentName + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_57971 b method_57971 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56320 b method_56320 + m (Lnet/minecraft/gametest/framework/TestFunction;)Z method_57972 b method_57972 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; lookedAt c method_56321 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; locateByName c method_59792 + p 1 context + p 2 name + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; allTests d method_56323 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/stream/Stream; method_56322 d method_56322 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; failedTests e method_56324 + p 1 context + m (Ljava/util/function/Function;)V + p 1 contextProvider + m (Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/util/function/UnaryOperator;)V + p 1 contextProvider + p 2 testFunctionFinderWrapper + p 3 structureBlockPosFinderWrapper +c net/minecraft/gametest/framework/TestFunction tr net/minecraft/class_4529 + f Ljava/lang/String; batchName a comp_2218 + f Ljava/lang/String; testName b comp_2219 + f Ljava/lang/String; structureName c comp_2220 + f Lnet/minecraft/world/level/block/Rotation; rotation d comp_2221 + f I maxTicks e comp_2222 + f J setupTicks f comp_2223 + f Z required g comp_2224 + f Z manualOnly h comp_2445 + f I maxAttempts i comp_2225 + f I requiredSuccesses j comp_2226 + f Z skyAccess k comp_2362 + f Ljava/util/function/Consumer; function l comp_2227 + m ()Z isFlaky a method_32257 + m (Lnet/minecraft/gametest/framework/GameTestHelper;)V run a method_22297 + p 1 gameTestHelper + m ()Ljava/lang/String; batchName b comp_2218 + m ()Ljava/lang/String; testName c comp_2219 + m ()Ljava/lang/String; structureName d comp_2220 + m ()Lnet/minecraft/world/level/block/Rotation; rotation e comp_2221 + m ()I maxTicks f comp_2222 + m ()J setupTicks g comp_2223 + m ()Z required h comp_2224 + m ()Z manualOnly i comp_2445 + m ()I maxAttempts j comp_2225 + m ()I requiredSuccesses k comp_2226 + m ()Z skyAccess l comp_2362 + m ()Ljava/util/function/Consumer; function m comp_2227 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IJZLjava/util/function/Consumer;)V + p 1 batchName + p 2 testName + p 3 structureName + p 4 maxTicks + p 5 setupTicks + p 7 required + p 8 function + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;IJZLjava/util/function/Consumer;)V + p 1 batchName + p 2 testName + p 3 structureName + p 4 rotation + p 5 maxTicks + p 6 setupTicks + p 8 required + p 9 function + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;IJZZIIZLjava/util/function/Consumer;)V +c net/minecraft/gametest/framework/TestFunctionArgument ts net/minecraft/class_4530 + f Ljava/util/Collection; EXAMPLES a field_20589 + m ()Lnet/minecraft/gametest/framework/TestFunctionArgument; testFunctionArgument a method_22371 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/gametest/framework/TestFunction; parse a method_22302 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTestFunction a method_56325 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/gametest/framework/TestFunction; getTestFunction a method_22303 + p 0 context + p 1 argument + m ()V + m ()V +c net/minecraft/gametest/framework/TestFunctionFinder tt net/minecraft/class_9125 +c net/minecraft/gametest/framework/TestReporter tu net/minecraft/class_4531 + m ()V finish a method_36109 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestFailed a method_22304 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestSuccess b method_33322 + p 1 testInfo +c net/minecraft/gametest/framework/package-info tv net/minecraft/class_6309 +c net/minecraft/locale/Language tw net/minecraft/class_2477 + f Ljava/lang/String; DEFAULT a field_33187 + f Lorg/slf4j/Logger; LOGGER b field_11490 + f Lcom/google/gson/Gson; GSON c field_25307 + f Ljava/util/regex/Pattern; UNSUPPORTED_FORMAT_PATTERN d field_11489 + c Pattern that matches numeric variable placeholders in a resource string, such as "%d", "%3$d", "%.2f" + f Lnet/minecraft/locale/Language; instance e field_11486 + m ()Lnet/minecraft/locale/Language; getInstance a method_10517 + c Return the StringTranslate singleton instance + m (Ljava/io/InputStream;Ljava/util/function/BiConsumer;)V loadFromJson a method_29425 + p 0 stream + p 1 output + m (Ljava/lang/String;)Ljava/lang/String; getOrDefault a method_48307 + p 1 id + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getOrDefault a method_4679 + p 1 key + p 2 defaultValue + m (Ljava/util/List;)Ljava/util/List; getVisualOrder a method_30933 + p 1 text + m (Ljava/util/function/BiConsumer;Ljava/lang/String;)V parseTranslations a method_51465 + p 0 output + p 1 languagePath + m (Lnet/minecraft/locale/Language;)V inject a method_29427 + p 0 instance + m (Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/util/FormattedCharSequence; getVisualOrder a method_30934 + p 1 text + m ()Z isDefaultRightToLeft b method_29428 + m (Ljava/lang/String;)Z has b method_4678 + p 1 id + m ()Lnet/minecraft/locale/Language; loadDefault c method_29429 + m ()V + m ()V +c net/minecraft/locale/Language$1 tw$1 net/minecraft/class_2477$1 + f Ljava/util/Map; val$storage b field_25308 + m (Lnet/minecraft/util/FormattedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_30935 a method_30935 + m (Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/util/FormattedCharSink;)Z method_30936 a method_30936 + m (Ljava/util/Map;)V +c net/minecraft/locale/package-info tx net/minecraft/class_6310 +c net/minecraft/nbt/ByteArrayTag ty net/minecraft/class_2479 + f Lnet/minecraft/nbt/TagType; TYPE a field_21024 + f I SELF_SIZE_IN_BYTES b field_41716 + f [B data c field_11493 + m (I)Lnet/minecraft/nbt/ByteTag; get a method_10523 + p 1 index + m (ILnet/minecraft/nbt/ByteTag;)Lnet/minecraft/nbt/ByteTag; set a method_17803 + p 1 index + p 2 tag + m (Ljava/util/List;)[B toArray a method_10522 + p 0 dataList + m (I)Lnet/minecraft/nbt/ByteTag; remove b method_17804 + p 1 index + m (ILnet/minecraft/nbt/ByteTag;)V add b method_17805 + p 1 index + p 2 tag + m ()[B getAsByteArray e method_10521 + m ([B)V + p 1 data + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/ByteArrayTag$1 ty$1 net/minecraft/class_2479$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ByteArrayTag; load a method_23232 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[B readAccounted d method_53886 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ByteTag tz net/minecraft/class_2481 + f Lnet/minecraft/nbt/TagType; TYPE a field_21025 + f Lnet/minecraft/nbt/ByteTag; ZERO b field_21026 + f Lnet/minecraft/nbt/ByteTag; ONE c field_21027 + f I SELF_SIZE_IN_BYTES w field_41717 + f B data x field_11498 + m (B)Lnet/minecraft/nbt/ByteTag; valueOf a method_23233 + p 0 data + m (Z)Lnet/minecraft/nbt/ByteTag; valueOf a method_23234 + p 0 data + m ()Lnet/minecraft/nbt/ByteTag; copy e method_10530 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (B)V + p 1 data + m ()V +c net/minecraft/nbt/ByteTag$1 tz$1 net/minecraft/class_2481$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ByteTag; load a method_23235 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)B readAccounted d method_53887 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ByteTag$Cache tz$a net/minecraft/class_2481$class_4610 + f [Lnet/minecraft/nbt/ByteTag; cache a field_21028 + m ()V + m ()V +c net/minecraft/nbt/CollectionTag ua net/minecraft/class_2483 + m (ILnet/minecraft/nbt/Tag;)Z setTag a method_10535 + p 1 index + p 2 tag + m (ILnet/minecraft/nbt/Tag;)Z addTag b method_10533 + p 1 index + p 2 tag + m (I)Lnet/minecraft/nbt/Tag; remove c method_10536 + p 1 index + m (ILnet/minecraft/nbt/Tag;)V add c method_10531 + p 1 index + p 2 tag + m (ILnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; set d method_10606 + p 1 index + p 2 tag + m ()B getElementType f method_10601 + m ()V +c net/minecraft/nbt/CompoundTag ub net/minecraft/class_2487 + f Lcom/mojang/serialization/Codec; CODEC a field_25128 + f Lnet/minecraft/nbt/TagType; TYPE b field_21029 + f I SELF_SIZE_IN_BYTES c field_41718 + f I MAP_ENTRY_SIZE_IN_BYTES w field_41719 + f Ljava/util/Map; tags x field_11515 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_29141 a method_29141 + m (Ljava/lang/String;)Ljava/util/UUID; getUUID a method_25926 + p 1 key + m (Ljava/lang/String;B)V putByte a method_10567 + p 1 key + p 2 value + m (Ljava/lang/String;D)V putDouble a method_10549 + p 1 key + p 2 value + m (Ljava/lang/String;F)V putFloat a method_10548 + p 1 key + p 2 value + m (Ljava/lang/String;I)V putInt a method_10569 + p 1 key + p 2 value + m (Ljava/lang/String;J)V putLong a method_10544 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)V putString a method_10582 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/util/List;)V putByteArray a method_36110 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/util/UUID;)V putUUID a method_25927 + p 1 key + p 2 value + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; put a method_10566 + p 1 key + p 2 value + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeNamedTag a method_10555 + p 0 name + p 1 tag + p 2 output + m (Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/ClassCastException;)Lnet/minecraft/CrashReport; createReport a method_10559 + p 1 tagName + p 2 type + p 3 exception + m (Ljava/lang/String;S)V putShort a method_10575 + p 1 key + p 2 value + m (Ljava/lang/String;Z)V putBoolean a method_10556 + p 1 key + p 2 value + m (Ljava/lang/String;[B)V putByteArray a method_10570 + p 1 key + p 2 value + m (Ljava/lang/String;[I)V putIntArray a method_10539 + p 1 key + p 2 value + m (Ljava/lang/String;[J)V putLongArray a method_10564 + p 1 key + p 2 value + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; merge a method_10543 + c Copies all the tags of {@code other} into this tag, then returns itself.\n@see #copy() + p 1 other + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49665 a method_49665 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNamedTagData a method_10581 + p 0 type + p 1 name + p 2 input + p 3 accounter + m (Ljava/lang/String;)Z hasUUID b method_25928 + p 1 key + m (Ljava/lang/String;I)Z contains b method_10573 + c Returns whether the tag of the specified {@code key} is a particular {@code tagType}. If the {@code tagType} is {@code 99}, all numeric tags will be checked against the type of the stored tag. + p 1 key + p 2 tagType + m (Ljava/lang/String;Ljava/util/List;)V putIntArray b method_10572 + p 1 key + p 2 value + m (Lnet/minecraft/nbt/CompoundTag;)Lcom/mojang/serialization/Dynamic; method_29142 b method_29142 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; get c method_10580 + p 1 key + m (Ljava/lang/String;I)Lnet/minecraft/nbt/ListTag; getList c method_10554 + p 1 key + p 2 tagType + m (Ljava/lang/String;Ljava/util/List;)V putLongArray c method_10538 + p 1 key + p 2 value + m (Ljava/lang/String;)B getTagType d method_10540 + c Gets the byte identifier of the tag of the specified {@code key}, or {@code 0} if no tag exists for the {@code key}. + p 1 key + m ()Ljava/util/Set; getAllKeys e method_10541 + m (Ljava/lang/String;)Z contains e method_10545 + p 1 key + m ()I size f method_10546 + m (Ljava/lang/String;)B getByte f method_10571 + p 1 key + m ()Z isEmpty g method_33133 + m (Ljava/lang/String;)S getShort g method_10568 + p 1 key + m ()Lnet/minecraft/nbt/CompoundTag; shallowCopy h method_59873 + m (Ljava/lang/String;)I getInt h method_10550 + p 1 key + m ()Lnet/minecraft/nbt/CompoundTag; copy i method_10553 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (Ljava/lang/String;)J getLong i method_10537 + p 1 key + m ()Ljava/util/Set; entrySet j method_59874 + m (Ljava/lang/String;)F getFloat j method_10583 + p 1 key + m (Ljava/lang/String;)D getDouble k method_10574 + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; getString l method_10558 + p 1 key + m (Ljava/lang/String;)[B getByteArray m method_10547 + p 1 key + m (Ljava/lang/String;)[I getIntArray n method_10561 + p 1 key + m (Ljava/lang/String;)[J getLongArray o method_10565 + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; getCompound p method_10562 + p 1 key + m (Ljava/lang/String;)Z getBoolean q method_10577 + p 1 key + m (Ljava/lang/String;)V remove r method_10551 + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; method_10579 s method_10579 + m (Ljava/util/Map;)V + p 1 tags + m ()V + m ()V +c net/minecraft/nbt/CompoundTag$1 ub$1 net/minecraft/class_2487$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; load a method_23240 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parseCompound c method_53888 + p 0 input + p 1 visitor + p 2 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; loadCompound d method_53889 + p 0 input + p 1 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/String; readString e method_53907 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/CompoundTag$2 ub$2 net/minecraft/class_2487$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$EntryResult a field_36243 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult b field_36244 + m ()V +c net/minecraft/nbt/DoubleTag uc net/minecraft/class_2489 + f Lnet/minecraft/nbt/DoubleTag; ZERO a field_21030 + f Lnet/minecraft/nbt/TagType; TYPE b field_21031 + f I SELF_SIZE_IN_BYTES c field_41720 + f D data w field_11520 + m (D)Lnet/minecraft/nbt/DoubleTag; valueOf a method_23241 + p 0 data + m ()Lnet/minecraft/nbt/DoubleTag; copy e method_10585 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (D)V + p 1 data + m ()V +c net/minecraft/nbt/DoubleTag$1 uc$1 net/minecraft/class_2489$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/DoubleTag; load a method_23242 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)D readAccounted d method_53890 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/EndTag ud net/minecraft/class_2491 + f Lnet/minecraft/nbt/TagType; TYPE a field_21032 + f Lnet/minecraft/nbt/EndTag; INSTANCE b field_21033 + f I SELF_SIZE_IN_BYTES c field_41721 + m ()Lnet/minecraft/nbt/EndTag; copy e method_10586 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()V + m ()V +c net/minecraft/nbt/EndTag$1 ud$1 net/minecraft/class_2491$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/EndTag; load a method_23243 + m ()V +c net/minecraft/nbt/FloatTag ue net/minecraft/class_2494 + f Lnet/minecraft/nbt/FloatTag; ZERO a field_21034 + f Lnet/minecraft/nbt/TagType; TYPE b field_21035 + f I SELF_SIZE_IN_BYTES c field_41722 + f F data w field_11523 + m (F)Lnet/minecraft/nbt/FloatTag; valueOf a method_23244 + p 0 data + m ()Lnet/minecraft/nbt/FloatTag; copy e method_10587 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (F)V + p 1 data + m ()V +c net/minecraft/nbt/FloatTag$1 ue$1 net/minecraft/class_2494$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/FloatTag; load a method_23245 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)F readAccounted d method_53891 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntArrayTag uf net/minecraft/class_2495 + f Lnet/minecraft/nbt/TagType; TYPE a field_21036 + f I SELF_SIZE_IN_BYTES b field_41723 + f [I data c field_11524 + m (I)Lnet/minecraft/nbt/IntTag; get a method_10589 + p 1 index + m (ILnet/minecraft/nbt/IntTag;)Lnet/minecraft/nbt/IntTag; set a method_17806 + p 1 index + p 2 tag + m (Ljava/util/List;)[I toArray a method_10590 + p 0 dataList + m (I)Lnet/minecraft/nbt/IntTag; remove b method_17807 + p 1 index + m (ILnet/minecraft/nbt/IntTag;)V add b method_17808 + p 1 index + p 2 tag + m ()Lnet/minecraft/nbt/IntArrayTag; copy e method_10591 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()[I getAsIntArray g method_10588 + m ([I)V + p 1 data + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/IntArrayTag$1 uf$1 net/minecraft/class_2495$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/IntArrayTag; load a method_23246 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[I readAccounted d method_53892 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntTag ug net/minecraft/class_2497 + f Lnet/minecraft/nbt/TagType; TYPE a field_21037 + f I SELF_SIZE_IN_BYTES b field_41724 + f I data c field_11525 + m (I)Lnet/minecraft/nbt/IntTag; valueOf a method_23247 + p 0 data + m ()Lnet/minecraft/nbt/IntTag; copy e method_10592 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (I)V + p 1 data + m ()V +c net/minecraft/nbt/IntTag$1 ug$1 net/minecraft/class_2497$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/IntTag; load a method_23248 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)I readAccounted d method_53893 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntTag$Cache ug$a net/minecraft/class_2497$class_4611 + f [Lnet/minecraft/nbt/IntTag; cache a field_21038 + f I HIGH b field_33197 + f I LOW c field_33198 + m ()V + m ()V +c net/minecraft/nbt/ListTag uh net/minecraft/class_2499 + f Lnet/minecraft/nbt/TagType; TYPE a field_21039 + f I SELF_SIZE_IN_BYTES b field_41725 + f Ljava/util/List; list c field_11550 + f B type w field_11551 + m (I)Lnet/minecraft/nbt/CompoundTag; getCompound a method_10602 + p 1 index + m (Lnet/minecraft/nbt/Tag;)Z updateType a method_10605 + p 1 tag + m (I)Lnet/minecraft/nbt/ListTag; getList b method_10603 + p 1 index + m (I)S getShort d method_10609 + p 1 index + m ()Lnet/minecraft/nbt/ListTag; copy e method_10612 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (I)I getInt e method_10600 + p 1 index + m (I)[I getIntArray f method_36111 + p 1 index + m ()V updateTypeAfterRemove g method_17809 + m (I)[J getLongArray g method_36112 + p 1 index + m (I)D getDouble h method_10611 + p 1 index + m (I)F getFloat i method_10604 + p 1 index + m (I)Ljava/lang/String; getString j method_10608 + p 1 index + m (I)Lnet/minecraft/nbt/Tag; get k method_10534 + p 1 index + m (Ljava/util/List;B)V + p 1 list + p 2 type + m ()V + m ()V +c net/minecraft/nbt/ListTag$1 uh$1 net/minecraft/class_2499$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ListTag; load a method_23249 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parseList c method_53894 + p 0 input + p 1 visitor + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ListTag; loadList d method_53895 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ListTag$2 uh$2 net/minecraft/class_2499$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36245 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$EntryResult b field_36246 + m ()V +c net/minecraft/nbt/LongArrayTag ui net/minecraft/class_2501 + f Lnet/minecraft/nbt/TagType; TYPE a field_21040 + f I SELF_SIZE_IN_BYTES b field_41726 + f [J data c field_11552 + m (I)Lnet/minecraft/nbt/LongTag; get a method_10616 + p 1 index + m (ILnet/minecraft/nbt/LongTag;)Lnet/minecraft/nbt/LongTag; set a method_17810 + p 1 index + p 2 tag + m (Ljava/util/List;)[J toArray a method_10617 + p 0 dataList + m (I)Lnet/minecraft/nbt/LongTag; remove b method_17811 + p 1 index + m (ILnet/minecraft/nbt/LongTag;)V add b method_17812 + p 1 index + p 2 tag + m ()Lnet/minecraft/nbt/LongArrayTag; copy e method_10618 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()[J getAsLongArray g method_10615 + m ([J)V + p 1 data + m (Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 dataSet + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/LongArrayTag$1 ui$1 net/minecraft/class_2501$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/LongArrayTag; load a method_23250 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[J readAccounted d method_53896 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/LongTag uj net/minecraft/class_2503 + f Lnet/minecraft/nbt/TagType; TYPE a field_21041 + f I SELF_SIZE_IN_BYTES b field_41727 + f J data c field_11553 + m (J)Lnet/minecraft/nbt/LongTag; valueOf a method_23251 + p 0 data + m ()Lnet/minecraft/nbt/LongTag; copy e method_10621 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (J)V + p 1 data + m ()V +c net/minecraft/nbt/LongTag$1 uj$1 net/minecraft/class_2503$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/LongTag; load a method_23252 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)J readAccounted d method_53897 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/LongTag$Cache uj$a net/minecraft/class_2503$class_4612 + f [Lnet/minecraft/nbt/LongTag; cache a field_21042 + f I HIGH b field_33202 + f I LOW c field_33203 + m ()V + m ()V +c net/minecraft/nbt/NbtAccounter uk net/minecraft/class_2505 + f I MAX_STACK_DEPTH a field_46208 + f J quota b field_11557 + f J usage c field_11555 + f I maxDepth d field_46209 + f I depth e field_46210 + m ()Lnet/minecraft/nbt/NbtAccounter; unlimitedHeap a method_53898 + m (J)Lnet/minecraft/nbt/NbtAccounter; create a method_53899 + p 0 quota + m (JJ)V accountBytes a method_53908 + p 1 bytesPerItem + p 3 items + m ()V pushDepth b method_53900 + m (J)V accountBytes b method_48004 + c Adds the bytes to the current number of read bytes. If the number of bytes is greater than the stored quota, an exception will occur.\n@throws RuntimeException if the number of {@code usage} bytes exceed the number of {@code quota} bytes + p 1 bytes + m ()V popDepth c method_53901 + m ()J getUsage d method_47987 + m ()I getDepth e method_53902 + m (JI)V + p 1 quota + p 3 maxDepth +c net/minecraft/nbt/NbtAccounterException ul net/minecraft/class_8801 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/nbt/NbtException um net/minecraft/class_8909 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/nbt/NbtFormatException un net/minecraft/class_8910 + m (Ljava/lang/String;)V +c net/minecraft/nbt/NbtIo uo net/minecraft/class_2507 + f [Ljava/nio/file/OpenOption; SYNC_OUTPUT_OPTIONS a field_47513 + m (Ljava/io/DataInput;)Lnet/minecraft/nbt/CompoundTag; read a method_10627 + c Reads a compound tag from a file. The size of the file can be infinite. + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; read a method_10625 + c Reads a compound tag from a file. The size of the file is limited by the {@code accounter}.\n@throws RuntimeException if the size of the file is larger than the maximum amount of bytes specified by the {@code accounter} + p 0 input + p 1 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;B)Lnet/minecraft/nbt/Tag; readTagSafe a method_52892 + p 0 input + p 1 accounter + p 2 type + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parse a method_39855 + p 0 input + p 1 visitor + p 2 accounter + m (Ljava/io/InputStream;)Ljava/io/DataInputStream; createDecompressorStream a method_40059 + p 0 zippedStream + m (Ljava/io/InputStream;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; readCompressed a method_10629 + p 0 zippedStream + p 1 accounter + m (Ljava/io/InputStream;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseCompressed a method_40058 + p 0 zippedStream + p 1 visitor + p 2 accounter + m (Ljava/io/OutputStream;)Ljava/io/DataOutputStream; createCompressorStream a method_54906 + p 0 outputSteam + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/CompoundTag; read a method_10633 + p 0 path + m (Ljava/nio/file/Path;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; readCompressed a method_30613 + p 0 path + p 1 accounter + m (Ljava/nio/file/Path;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseCompressed a method_40057 + p 0 path + p 1 visitor + p 2 accounter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/io/DataOutput;)V write a method_10628 + p 0 compoundTag + p 1 output + m (Lnet/minecraft/nbt/CompoundTag;Ljava/io/OutputStream;)V writeCompressed a method_10634 + c Writes and compresses a compound tag to a GNU zipped file.\n@see #writeCompressed(CompoundTag, File) + p 0 compoundTag + p 1 outputStream + m (Lnet/minecraft/nbt/CompoundTag;Ljava/nio/file/Path;)V writeCompressed a method_30614 + p 0 compoundTag + p 1 path + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeAnyTag a method_52893 + p 0 tag + p 1 output + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readAnyTag b method_52894 + p 0 input + p 1 accounter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/nio/file/Path;)V write b method_10630 + p 0 compoundTag + p 1 path + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeUnnamedTag b method_10631 + p 0 tag + p 1 output + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readUnnamedTag c method_10626 + p 0 input + p 1 accounter + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeUnnamedTagWithFallback c method_55324 + p 0 tag + p 1 output + m ()V + m ()V +c net/minecraft/nbt/NbtIo$1 uo$1 net/minecraft/class_2507$1 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36247 + m ()V +c net/minecraft/nbt/NbtIo$StringFallbackDataOutput uo$a net/minecraft/class_2507$class_9003 + m (Ljava/io/DataOutput;)V +c net/minecraft/nbt/NbtOps up net/minecraft/class_2509 + f Lnet/minecraft/nbt/NbtOps; INSTANCE a field_11560 + f Ljava/lang/String; WRAPPER_MARKER b field_40667 + m ()Lnet/minecraft/nbt/Tag; empty a method_10668 + m (B)Lnet/minecraft/nbt/Tag; createByte a method_10640 + p 1 data + m (D)Lnet/minecraft/nbt/Tag; createDouble a method_10652 + p 1 data + m (F)Lnet/minecraft/nbt/Tag; createFloat a method_10662 + p 1 data + m (I)Lnet/minecraft/nbt/Tag; createInt a method_10661 + p 1 data + m (J)Lnet/minecraft/nbt/Tag; createLong a method_10654 + p 1 data + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; convertTo a method_29146 + p 1 ops + p 2 tag + m (Ljava/lang/Number;)Lnet/minecraft/nbt/Tag; createNumeric a method_10660 + p 1 data + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; createString a method_10639 + p 1 data + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/nbt/Tag; createByteList a method_10657 + p 1 data + m (Ljava/util/List;)Ljava/lang/String; method_59875 a method_59875 + m (Ljava/util/List;Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/datafixers/util/Pair;)V method_29147 a method_29147 + m (Ljava/util/List;Lnet/minecraft/nbt/NbtOps$ListCollector;)Lcom/mojang/serialization/DataResult; method_46230 a method_46230 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_10638 a method_10638 + m (Ljava/util/stream/IntStream;)Lnet/minecraft/nbt/Tag; createIntList a method_10663 + p 1 data + m (Ljava/util/stream/LongStream;)Lnet/minecraft/nbt/Tag; createLongList a method_10643 + p 1 data + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/Tag; createMap a method_10655 + p 1 data + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/Tag; tryUnwrap a method_46232 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/datafixers/util/Pair;)V method_29152 a method_29152 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/BiConsumer;)V method_29153 a method_29153 + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Consumer;)V method_59876 a method_59876 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getNumberValue a method_10645 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap a method_29154 + p 1 map + p 2 otherMap + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lnet/minecraft/nbt/Tag; remove a method_10648 + p 1 map + p 2 removeKey + m (Lnet/minecraft/nbt/Tag;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList a method_29155 + p 1 list + p 2 tags + m (Lnet/minecraft/nbt/Tag;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59877 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/NbtOps$ListCollector;)Lcom/mojang/serialization/DataResult; method_46234 a method_46234 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; mergeToList a method_29156 + p 1 list + p 2 tag + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; mergeToMap a method_29157 + p 1 map + p 2 key + p 3 value + m (S)Lnet/minecraft/nbt/Tag; createShort a method_10635 + p 1 data + m (Z)Lnet/minecraft/nbt/Tag; createBoolean a method_23253 + p 1 data + m ()Ljava/lang/String; method_49667 b method_49667 + m (Ljava/util/List;)Ljava/lang/String; method_49666 b method_49666 + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/Tag; createList b method_10665 + p 1 data + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getStringValue b method_10656 + p 1 tag + m ()Ljava/lang/String; method_49668 c method_49668 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMapValues c method_10669 + p 1 map + m ()Ljava/lang/String; method_49669 d method_49669 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMapEntries d method_29162 + p 1 map + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMap e method_29163 + p 1 map + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getStream f method_10664 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getList g method_29164 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getByteBuffer h method_10646 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getIntStream i method_10651 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getLongStream j method_10637 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/util/Optional; createCollector k method_46235 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49670 l method_49670 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_10667 m method_10667 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_46236 n method_46236 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49671 o method_49671 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49672 p method_49672 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49673 q method_49673 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_59878 r method_59878 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49674 s method_49674 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49675 t method_49675 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49676 u method_49676 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; method_46237 v method_46237 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49677 w method_49677 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; method_46238 x method_46238 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49678 y method_49678 + m ()V + m ()V +c net/minecraft/nbt/NbtOps$1 up$1 net/minecraft/class_2509$1 + f Lnet/minecraft/nbt/CompoundTag; val$tag a field_25129 + f Lnet/minecraft/nbt/NbtOps; field_25130 b field_25130 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; get a method_29165 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_29166 a method_29166 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; get a method_29167 + m (Lnet/minecraft/nbt/NbtOps;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/nbt/NbtOps$ByteListCollector up$a net/minecraft/class_2509$class_7808 + f Lit/unimi/dsi/fastutil/bytes/ByteArrayList; values a field_40668 + m (B)V + p 1 value + m ([B)V + p 1 values +c net/minecraft/nbt/NbtOps$HeterogenousListCollector up$b net/minecraft/class_2509$class_7809 + f Lnet/minecraft/nbt/ListTag; result a field_40669 + m (B)V method_46241 a method_46241 + m (I)V method_46242 a method_46242 + m (J)V method_46243 a method_46243 + m (Lnet/minecraft/nbt/CompoundTag;)Z isWrapper a method_46244 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; wrapIfNeeded b method_46245 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/CompoundTag; wrapElement c method_46246 + p 0 tag + m ()V + m (Ljava/util/Collection;)V + p 1 tags + m (Lit/unimi/dsi/fastutil/ints/IntArrayList;)V + p 1 data + m (Lit/unimi/dsi/fastutil/bytes/ByteArrayList;)V + p 1 data + m (Lit/unimi/dsi/fastutil/longs/LongArrayList;)V + p 1 data +c net/minecraft/nbt/NbtOps$HomogenousListCollector up$c net/minecraft/class_2509$class_7810 + f Lnet/minecraft/nbt/ListTag; result a field_40670 + m (Lnet/minecraft/nbt/Tag;)V + p 1 value + m (Lnet/minecraft/nbt/ListTag;)V + p 1 values +c net/minecraft/nbt/NbtOps$InitialListCollector up$d net/minecraft/class_2509$class_7811 + f Lnet/minecraft/nbt/NbtOps$InitialListCollector; INSTANCE a field_40671 + m ()V + m ()V +c net/minecraft/nbt/NbtOps$IntListCollector up$e net/minecraft/class_2509$class_7812 + f Lit/unimi/dsi/fastutil/ints/IntArrayList; values a field_40672 + m (I)V + p 1 value + m ([I)V + p 1 values +c net/minecraft/nbt/NbtOps$ListCollector up$f net/minecraft/class_2509$class_7813 + m ()Lnet/minecraft/nbt/Tag; result a method_46239 + m (Ljava/lang/Iterable;)Lnet/minecraft/nbt/NbtOps$ListCollector; acceptAll a method_46247 + p 1 tags + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/NbtOps$ListCollector; acceptAll a method_46248 + p 1 tags + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/NbtOps$ListCollector; accept a method_46240 + p 1 tag +c net/minecraft/nbt/NbtOps$LongListCollector up$g net/minecraft/class_2509$class_7814 + f Lit/unimi/dsi/fastutil/longs/LongArrayList; values a field_40673 + m (J)V + p 1 value + m ([J)V + p 1 values +c net/minecraft/nbt/NbtOps$NbtRecordBuilder up$h net/minecraft/class_2509$class_5320 + m ()Lnet/minecraft/nbt/CompoundTag; initBuilder a method_29168 + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; append a method_29169 + p 1 key + p 2 value + p 3 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; build a method_29170 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49679 a method_49679 + m (Lnet/minecraft/nbt/NbtOps;)V +c net/minecraft/nbt/NbtUtils uq net/minecraft/class_2512 + f Ljava/lang/String; SNBT_DATA_TAG a field_33224 + f Ljava/util/Comparator; YXZ_LISTTAG_INT_COMPARATOR b field_27816 + f Ljava/util/Comparator; YXZ_LISTTAG_DOUBLE_COMPARATOR c field_27817 + f C PROPERTIES_START d field_33225 + f C PROPERTIES_END e field_33226 + f Ljava/lang/String; ELEMENT_SEPARATOR f field_33227 + f C KEY_VALUE_SEPARATOR g field_33228 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER h field_27818 + f Lcom/google/common/base/Splitter; COLON_SPLITTER i field_27819 + f Lorg/slf4j/Logger; LOGGER j field_11582 + f I INDENT k field_33229 + f I NOT_FOUND l field_33230 + m (ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder; indent a method_36114 + p 0 indentLevel + p 1 stringBuilder + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/nbt/CompoundTag; writeBlockState a method_10686 + p 0 state + m (Lnet/minecraft/world/level/block/state/StateHolder;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/state/StateHolder; setValueHelper a method_10682 + p 0 stateHolder + p 1 property + p 2 propertyName + p 3 propertiesTag + p 4 blockStateTag + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getName a method_10685 + p 0 property + p 1 value + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/nbt/CompoundTag; writeFluidState a method_36115 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; snbtToStructure a method_32260 + p 0 text + m (Ljava/lang/StringBuilder;Lnet/minecraft/nbt/Tag;IZ)Ljava/lang/StringBuilder; prettyPrint a method_36116 + p 0 stringBuilder + p 1 tag + p 2 indentLevel + p 3 prettyPrintArray + m (Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32261 a method_32261 + m (Ljava/util/UUID;)Lnet/minecraft/nbt/IntArrayTag; createUUID a method_25929 + p 0 uuid + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/nbt/Tag; writeBlockPos a method_10692 + p 0 pos + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/state/BlockState; readBlockState a method_10681 + p 0 blockGetter + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/String; structureToSnbt a method_32271 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; addDataVersion a method_48308 + p 0 tag + p 1 dataVersion + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Ljava/util/Optional; readBlockPos a method_10691 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Ljava/lang/String;)V method_32263 a method_32263 + m (Lnet/minecraft/nbt/ListTag;)D method_32264 a method_32264 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/CompoundTag;)V method_32265 a method_32265 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;)V method_32266 a method_32266 + m (Lnet/minecraft/nbt/Tag;)Ljava/util/UUID; loadUUID a method_25930 + p 0 tag + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;Z)Z compareNbt a method_10687 + p 0 tag + p 1 other + p 2 compareListTag + m (Lnet/minecraft/nbt/Tag;Z)Ljava/lang/String; prettyPrint a method_36117 + p 0 tag + p 1 prettyPrintArray + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; unpackBlockState b method_32267 + p 0 blockStateText + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; packStructureTemplate b method_32273 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;I)I getDataVersion b method_48309 + p 0 tag + p 1 defaultValue + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Ljava/lang/String; method_32262 b method_32262 + m (Lnet/minecraft/nbt/ListTag;)D method_32268 b method_32268 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; prettyPrint b method_36118 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; unpackStructureTemplate c method_32275 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)D method_32269 c method_32269 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; toPrettyComponent c method_32270 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/String; packBlockState d method_32277 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)I method_32272 d method_32272 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; addCurrentDataVersion e method_48310 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)I method_32274 e method_32274 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32278 f method_32278 + m (Lnet/minecraft/nbt/ListTag;)I method_32276 f method_32276 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32279 g method_32279 + m ()V + m ()V +c net/minecraft/nbt/NumericTag ur net/minecraft/class_2514 + m ()J getAsLong f method_10699 + m ()I getAsInt g method_10701 + m ()S getAsShort h method_10696 + m ()B getAsByte i method_10698 + m ()D getAsDouble j method_10697 + m ()F getAsFloat k method_10700 + m ()Ljava/lang/Number; getAsNumber l method_10702 + m ()V +c net/minecraft/nbt/ReportedNbtException us net/minecraft/class_8911 + m (Lnet/minecraft/CrashReport;)V +c net/minecraft/nbt/ShortTag ut net/minecraft/class_2516 + f Lnet/minecraft/nbt/TagType; TYPE a field_21043 + f I SELF_SIZE_IN_BYTES b field_41728 + f S data c field_11588 + m (S)Lnet/minecraft/nbt/ShortTag; valueOf a method_23254 + p 0 data + m ()Lnet/minecraft/nbt/ShortTag; copy e method_10704 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (S)V + p 1 data + m ()V +c net/minecraft/nbt/ShortTag$1 ut$1 net/minecraft/class_2516$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ShortTag; load a method_23255 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)S readAccounted d method_53903 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ShortTag$Cache ut$a net/minecraft/class_2516$class_4613 + f [Lnet/minecraft/nbt/ShortTag; cache a field_21044 + f I HIGH b field_33232 + f I LOW c field_33233 + m ()V + m ()V +c net/minecraft/nbt/SnbtPrinterTagVisitor uu net/minecraft/class_5625 + f Ljava/util/Map; KEY_ORDER a field_27820 + f Ljava/util/Set; NO_INDENTATION b field_27821 + f Ljava/util/regex/Pattern; SIMPLE_VALUE c field_27822 + f Ljava/lang/String; NAME_VALUE_SEPARATOR d field_27823 + f Ljava/lang/String; ELEMENT_SEPARATOR e field_27824 + f Ljava/lang/String; LIST_OPEN f field_33234 + f Ljava/lang/String; LIST_CLOSE g field_33235 + f Ljava/lang/String; LIST_TYPE_SEPARATOR h field_33236 + f Ljava/lang/String; ELEMENT_SPACING i field_33237 + f Ljava/lang/String; STRUCT_OPEN j field_33238 + f Ljava/lang/String; STRUCT_CLOSE k field_33239 + f Ljava/lang/String; NEWLINE l field_33240 + f Ljava/lang/String; indentation m field_27825 + f I depth n field_27826 + f Ljava/util/List; path o field_27827 + f Ljava/lang/String; result p field_27828 + m ()Ljava/lang/String; pathString a method_32280 + m (Ljava/lang/String;)Ljava/lang/String; handleEscapePretty a method_32281 + p 0 text + m (Ljava/util/HashMap;)V method_32282 a method_32282 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; visit a method_32283 + p 1 tag + m ()V popPath b method_32284 + m (Ljava/lang/String;)V pushPath b method_32285 + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/List; getKeys b method_32286 + p 1 tag + m ()V + m (Ljava/lang/String;ILjava/util/List;)V + p 1 indentation + p 2 depth + p 3 path + m ()V +c net/minecraft/nbt/StreamTagVisitor uv net/minecraft/class_6836 + m ()Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitEnd a method_39856 + m (B)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39857 + p 1 entry + m (D)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39858 + p 1 entry + m (F)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39859 + p 1 entry + m (I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39860 + p 1 entry + m (J)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39861 + p 1 entry + m (Ljava/lang/String;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39862 + p 1 entry + m (Lnet/minecraft/nbt/TagType;)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitEntry a method_39863 + p 1 type + m (Lnet/minecraft/nbt/TagType;I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitList a method_39864 + p 1 type + p 2 size + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitEntry a method_39865 + p 1 type + p 2 id + m (S)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39866 + p 1 entry + m ([B)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39867 + p 1 entry + m ([I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39868 + p 1 entry + m ([J)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39869 + p 1 entry + m ()Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitContainerEnd b method_39870 + m (Lnet/minecraft/nbt/TagType;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitRootEntry b method_39871 + p 1 type + m (Lnet/minecraft/nbt/TagType;I)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitElement b method_39872 + p 1 type + p 2 size +c net/minecraft/nbt/StreamTagVisitor$EntryResult uv$a net/minecraft/class_6836$class_6837 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; ENTER a field_36248 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; SKIP b field_36249 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; BREAK c field_36250 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; HALT d field_36251 + f [Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; $VALUES e field_36252 + m ()[Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; $values a method_39873 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/nbt/StreamTagVisitor$ValueResult uv$b net/minecraft/class_6836$class_6838 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; CONTINUE a field_36253 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; BREAK b field_36254 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; HALT c field_36255 + f [Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; $VALUES d field_36256 + m ()[Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; $values a method_39874 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/nbt/StringTag uw net/minecraft/class_2519 + f Ljava/lang/String; data A field_11590 + f Lnet/minecraft/nbt/TagType; TYPE a field_21045 + f I SELF_SIZE_IN_BYTES b field_41729 + f Lnet/minecraft/nbt/StringTag; EMPTY c field_21046 + f C DOUBLE_QUOTE w field_33242 + f C SINGLE_QUOTE x field_33243 + f C ESCAPE y field_33244 + f C NOT_SET z field_33245 + m (Ljava/io/DataInput;)V skipString a method_39875 + p 0 input + m (Ljava/lang/String;)Lnet/minecraft/nbt/StringTag; valueOf a method_23256 + p 0 data + m (Ljava/lang/String;)Ljava/lang/String; quoteAndEscape b method_10706 + p 0 text + m ()Lnet/minecraft/nbt/StringTag; copy e method_10705 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (Ljava/lang/String;)V + p 1 data + m ()V +c net/minecraft/nbt/StringTag$1 uw$1 net/minecraft/class_2519$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StringTag; load a method_23257 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/String; readAccounted d method_53904 + p 0 input + p 1 nbtAccounter + m ()V +c net/minecraft/nbt/StringTagVisitor ux net/minecraft/class_5626 + f Ljava/util/regex/Pattern; SIMPLE_VALUE a field_27829 + f Ljava/lang/StringBuilder; builder b field_27830 + m (Ljava/lang/String;)Ljava/lang/String; handleEscape a method_32287 + p 0 text + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; visit a method_32288 + p 1 tag + m ()V + m ()V +c net/minecraft/nbt/Tag uy net/minecraft/class_2520 + f I OBJECT_HEADER d field_33246 + f I ARRAY_HEADER e field_33247 + f I OBJECT_REFERENCE f field_33248 + f I STRING_SIZE g field_33249 + f B TAG_END h field_33250 + f B TAG_BYTE i field_33251 + f B TAG_SHORT j field_33252 + f B TAG_INT k field_33253 + f B TAG_LONG l field_33254 + f B TAG_FLOAT m field_33255 + f B TAG_DOUBLE n field_33256 + f B TAG_BYTE_ARRAY o field_33257 + f B TAG_STRING p field_33258 + f B TAG_LIST q field_33259 + f B TAG_COMPOUND r field_33260 + f B TAG_INT_ARRAY s field_33261 + f B TAG_LONG_ARRAY t field_33262 + f B TAG_ANY_NUMERIC u field_33263 + f I MAX_DEPTH v field_33264 + m ()I sizeInBytes a method_47988 + m (Ljava/io/DataOutput;)V write a method_10713 + p 1 output + m (Lnet/minecraft/nbt/StreamTagVisitor;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; accept a method_39850 + p 1 visitor + m (Lnet/minecraft/nbt/TagVisitor;)V accept a method_32289 + p 1 visitor + m ()B getId b method_10711 + m (Lnet/minecraft/nbt/StreamTagVisitor;)V acceptAsRoot b method_39876 + p 1 visitor + m ()Lnet/minecraft/nbt/TagType; getType c method_23258 + m ()Lnet/minecraft/nbt/Tag; copy d method_10707 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()Ljava/lang/String; getAsString s_ method_10714 +c net/minecraft/nbt/TagParser uz net/minecraft/class_2522 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TRAILING_DATA a field_11602 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_KEY b field_11608 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_VALUE c field_11605 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INSERT_MIXED_LIST d field_11603 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INSERT_MIXED_ARRAY e field_11597 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_ARRAY f field_11604 + f C ELEMENT_SEPARATOR g field_33265 + f C NAME_VALUE_SEPARATOR h field_33266 + f Lcom/mojang/serialization/Codec; AS_CODEC i field_45952 + f Lcom/mojang/serialization/Codec; LENIENT_CODEC j field_51469 + f C LIST_OPEN k field_33267 + f C LIST_CLOSE l field_33268 + f C STRUCT_CLOSE m field_33269 + f C STRUCT_OPEN n field_33270 + f Ljava/util/regex/Pattern; DOUBLE_PATTERN_NOSUFFIX o field_11607 + f Ljava/util/regex/Pattern; DOUBLE_PATTERN p field_11600 + f Ljava/util/regex/Pattern; FLOAT_PATTERN q field_11596 + f Ljava/util/regex/Pattern; BYTE_PATTERN r field_11606 + f Ljava/util/regex/Pattern; LONG_PATTERN s field_11609 + f Ljava/util/regex/Pattern; SHORT_PATTERN t field_11601 + f Ljava/util/regex/Pattern; INT_PATTERN u field_11599 + f Lcom/mojang/brigadier/StringReader; reader v field_11598 + m ()Lnet/minecraft/nbt/CompoundTag; readSingleStruct a method_10721 + m (C)V expect a method_10719 + p 1 expected + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10720 a method_10720 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10724 a method_10724 + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; parseTag a method_10718 + p 0 text + m (Lnet/minecraft/nbt/TagType;Lnet/minecraft/nbt/TagType;)Ljava/util/List; readArray a method_10728 + p 1 arrayType + p 2 elementType + m ()Ljava/lang/String; readKey b method_10725 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10730 b method_10730 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; type b method_10731 + p 1 value + m ()Lnet/minecraft/nbt/Tag; readTypedValue c method_10722 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53502 c method_53502 + m ()Lnet/minecraft/nbt/Tag; readValue d method_10723 + m ()Lnet/minecraft/nbt/Tag; readList e method_10717 + m ()Lnet/minecraft/nbt/CompoundTag; readStruct f method_10727 + m ()Lnet/minecraft/nbt/Tag; readListTag g method_10729 + m ()Lnet/minecraft/nbt/Tag; readArrayTag h method_10726 + m ()Z hasElementSeparator i method_10716 + m (Lcom/mojang/brigadier/StringReader;)V + p 1 reader + m ()V +c net/minecraft/nbt/TagType va net/minecraft/class_4614 + m ()Ljava/lang/String; getName a method_23259 + m (I)Lnet/minecraft/nbt/TagType; createInvalid a method_23260 + p 0 id + m (Ljava/io/DataInput;ILnet/minecraft/nbt/NbtAccounter;)V skip a method_39854 + p 1 input + p 2 entries + p 3 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parse a method_39852 + p 1 input + p 2 visitor + p 3 accounter + m ()Ljava/lang/String; getPrettyName b method_23261 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)V skip b method_39851 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseRoot b method_39877 + p 1 input + p 2 visitor + p 3 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; load c method_23262 + p 1 input + p 2 accounter + m ()Z isValue d method_23263 +c net/minecraft/nbt/TagType$1 va$1 net/minecraft/class_4614$1 + f I val$id a field_21047 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/EndTag; load a method_23264 + m ()Ljava/io/IOException; createException c method_39878 + m (I)V +c net/minecraft/nbt/TagType$2 va$2 net/minecraft/class_4614$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36257 + m ()V +c net/minecraft/nbt/TagType$StaticSize va$a net/minecraft/class_4614$class_6839 + m ()I size c method_39853 +c net/minecraft/nbt/TagType$VariableSize va$b net/minecraft/class_4614$class_6840 +c net/minecraft/nbt/TagTypes vb net/minecraft/class_4615 + f [Lnet/minecraft/nbt/TagType; TYPES a field_21048 + m (I)Lnet/minecraft/nbt/TagType; getType a method_23265 + p 0 id + m ()V + m ()V +c net/minecraft/nbt/TagVisitor vc net/minecraft/class_5627 + m (Lnet/minecraft/nbt/ByteArrayTag;)V visitByteArray a method_32290 + p 1 tag + m (Lnet/minecraft/nbt/ByteTag;)V visitByte a method_32291 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)V visitCompound a method_32292 + p 1 tag + m (Lnet/minecraft/nbt/DoubleTag;)V visitDouble a method_32293 + p 1 tag + m (Lnet/minecraft/nbt/EndTag;)V visitEnd a method_32294 + p 1 tag + m (Lnet/minecraft/nbt/FloatTag;)V visitFloat a method_32295 + p 1 tag + m (Lnet/minecraft/nbt/IntArrayTag;)V visitIntArray a method_32296 + p 1 tag + m (Lnet/minecraft/nbt/IntTag;)V visitInt a method_32297 + p 1 tag + m (Lnet/minecraft/nbt/ListTag;)V visitList a method_32298 + p 1 tag + m (Lnet/minecraft/nbt/LongArrayTag;)V visitLongArray a method_32299 + p 1 tag + m (Lnet/minecraft/nbt/LongTag;)V visitLong a method_32300 + p 1 tag + m (Lnet/minecraft/nbt/ShortTag;)V visitShort a method_32301 + p 1 tag + m (Lnet/minecraft/nbt/StringTag;)V visitString a method_32302 + p 1 tag +c net/minecraft/nbt/TextComponentTagVisitor vd net/minecraft/class_5628 + f Lnet/minecraft/network/chat/Component; FLOAT_TYPE A field_51918 + f Lnet/minecraft/network/chat/Component; DOUBLE_TYPE B field_51919 + f Lnet/minecraft/network/chat/Component; BYTE_ARRAY_TYPE C field_51920 + f Ljava/lang/String; indentation D field_27840 + f I indentDepth E field_51499 + f I depth F field_27841 + f Lnet/minecraft/network/chat/MutableComponent; result G field_27842 + f Lorg/slf4j/Logger; LOGGER a field_27831 + f I INLINE_LIST_THRESHOLD b field_33271 + f I MAX_DEPTH c field_51497 + f I MAX_LENGTH d field_51921 + f Lit/unimi/dsi/fastutil/bytes/ByteCollection; INLINE_ELEMENT_TYPES e field_27832 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_KEY f field_27833 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_STRING g field_27834 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_NUMBER h field_27835 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_NUMBER_TYPE i field_27836 + f Ljava/util/regex/Pattern; SIMPLE_VALUE j field_27837 + f Ljava/lang/String; LIST_OPEN k field_33272 + f Ljava/lang/String; LIST_CLOSE l field_33273 + f Ljava/lang/String; LIST_TYPE_SEPARATOR m field_33274 + f Ljava/lang/String; ELEMENT_SPACING n field_33275 + f Ljava/lang/String; STRUCT_OPEN o field_33276 + f Ljava/lang/String; STRUCT_CLOSE p field_33277 + f Ljava/lang/String; NEWLINE q field_33278 + f Ljava/lang/String; NAME_VALUE_SEPARATOR r field_51922 + f Ljava/lang/String; ELEMENT_SEPARATOR s field_27839 + f Ljava/lang/String; WRAPPED_ELEMENT_SEPARATOR t field_51923 + f Ljava/lang/String; SPACED_ELEMENT_SEPARATOR u field_51924 + f Lnet/minecraft/network/chat/Component; FOLDED v field_51925 + f Lnet/minecraft/network/chat/Component; BYTE_TYPE w field_51926 + f Lnet/minecraft/network/chat/Component; SHORT_TYPE x field_51927 + f Lnet/minecraft/network/chat/Component; INT_TYPE y field_51928 + f Lnet/minecraft/network/chat/Component; LONG_TYPE z field_51929 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; handleEscapePretty a method_32304 + p 0 text + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; visit a method_32305 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Z)V appendSubTag a method_60585 + p 1 tag + p 2 indent + m (Ljava/lang/String;)V + p 1 indentation + m ()V +c net/minecraft/nbt/package-info ve net/minecraft/class_6311 +c net/minecraft/nbt/visitors/CollectFields vf net/minecraft/class_6841 + f I fieldsToGetCount a field_36258 + f Ljava/util/Set; wantedTypes b field_36259 + f Ljava/util/Deque; stack c field_36260 + m ()I getMissingFieldCount c method_39879 + m ([Lnet/minecraft/nbt/visitors/FieldSelector;)V + p 1 selectors +c net/minecraft/nbt/visitors/CollectToTag vg net/minecraft/class_6844 + f Ljava/lang/String; lastId a field_36261 + f Lnet/minecraft/nbt/Tag; rootTag b field_36262 + f Ljava/util/Deque; consumerStack c field_36263 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39882 a method_39882 + m (Lnet/minecraft/nbt/Tag;)V appendEntry a method_39883 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39884 b method_39884 + m (Lnet/minecraft/nbt/Tag;)V method_39885 b method_39885 + m (Lnet/minecraft/nbt/TagType;)V enterContainerIfNeeded c method_39886 + p 1 type + m ()Lnet/minecraft/nbt/Tag; getResult d method_39887 + m ()I depth e method_39888 + m ()V +c net/minecraft/nbt/visitors/FieldSelector vh net/minecraft/class_6843 + f Ljava/util/List; path a comp_318 + f Lnet/minecraft/nbt/TagType; type b comp_319 + f Ljava/lang/String; name c comp_320 + m ()Ljava/util/List; path a comp_318 + m ()Lnet/minecraft/nbt/TagType; type b comp_319 + m ()Ljava/lang/String; name c comp_320 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 type + p 2 name + m (Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 element + p 2 type + p 3 name + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 firstElement + p 2 secondElement + p 3 type + p 4 name + m (Ljava/util/List;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V +c net/minecraft/nbt/visitors/FieldTree vi net/minecraft/class_6842 + f I depth a comp_315 + f Ljava/util/Map; selectedFields b comp_323 + f Ljava/util/Map; fieldsToRecurse c comp_317 + m ()Lnet/minecraft/nbt/visitors/FieldTree; createRoot a method_40060 + m (Ljava/lang/String;)Lnet/minecraft/nbt/visitors/FieldTree; method_39880 a method_39880 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)Z isSelected a method_40061 + p 1 type + p 2 name + m (Lnet/minecraft/nbt/visitors/FieldSelector;)V addEntry a method_39881 + p 1 selector + m ()I depth b comp_315 + m ()Ljava/util/Map; selectedFields c comp_323 + m ()Ljava/util/Map; fieldsToRecurse d comp_317 + m (I)V + p 1 depth + m (ILjava/util/Map;Ljava/util/Map;)V +c net/minecraft/nbt/visitors/SkipAll vj net/minecraft/class_6845 + f Lnet/minecraft/nbt/visitors/SkipAll; INSTANCE a field_36264 + m ()V +c net/minecraft/nbt/visitors/SkipAll$1 vj$1 net/minecraft/class_6845$1 + m ()V +c net/minecraft/nbt/visitors/SkipFields vk net/minecraft/class_6856 + f Ljava/util/Deque; stack a field_36378 + m ([Lnet/minecraft/nbt/visitors/FieldSelector;)V + p 1 selectors +c net/minecraft/nbt/visitors/package-info vl net/minecraft/class_6846 +c net/minecraft/network/BandwidthDebugMonitor vm net/minecraft/class_8762 + f Ljava/util/concurrent/atomic/AtomicInteger; bytesReceived a field_45953 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; bandwidthLogger b field_45954 + m ()V tick a method_53503 + m (I)V onReceive a method_53504 + p 1 amount + m (Lnet/minecraft/util/debugchart/LocalSampleLogger;)V + p 1 bandwithLogger +c net/minecraft/network/CipherBase vn net/minecraft/class_2524 + f Ljavax/crypto/Cipher; cipher a field_11612 + f [B heapIn b field_11613 + f [B heapOut c field_11614 + m (Lio/netty/buffer/ByteBuf;)[B bufToByte a method_10733 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encipher a method_10732 + p 1 input + p 2 out + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; decipher a method_10734 + p 1 ctx + p 2 buffer + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/CipherDecoder vo net/minecraft/class_2528 + c Channel handler that handles protocol decryption.\n\n@see Connection#setEncryptionKey + f Lnet/minecraft/network/CipherBase; cipher a field_11619 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V decode a method_10735 + p 1 context + p 2 in + p 3 out + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/CipherEncoder vp net/minecraft/class_2529 + c Channel handler that handles protocol encryption.\n\n@see Connection#setEncryptionKey + f Lnet/minecraft/network/CipherBase; cipher a field_11620 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10736 + p 1 context + p 2 message + p 3 out + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/ClientboundPacketListener vq net/minecraft/class_8697 +c net/minecraft/network/CompressionDecoder vr net/minecraft/class_2532 + c Handles decompression of network traffic.\n\n@see Connection#setupCompression + f I MAXIMUM_COMPRESSED_LENGTH a field_34057 + f I MAXIMUM_UNCOMPRESSED_LENGTH b field_33279 + f Ljava/util/zip/Inflater; inflater c field_11622 + f I threshold d field_11623 + f Z validateDecompressed e field_34058 + m (IZ)V setThreshold a method_10739 + p 1 threshold + p 2 validateDecompressed + m (Lio/netty/buffer/ByteBuf;)V setupInflaterInput a method_52896 + p 1 buffer + m (Lio/netty/channel/ChannelHandlerContext;I)Lio/netty/buffer/ByteBuf; inflate a method_52897 + p 1 context + p 2 size + m (IZ)V + p 1 threshold + p 2 validateDecompressed +c net/minecraft/network/CompressionEncoder vs net/minecraft/class_2534 + c Handles compression of network traffic.\n\n@see Connection#setupCompression + f [B encodeBuf a field_11637 + f Ljava/util/zip/Deflater; deflater b field_11638 + f I threshold c field_11636 + m ()I getThreshold a method_36120 + m (I)V setThreshold a method_10742 + p 1 threshold + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10741 + p 1 context + p 2 encodingByteBuf + p 3 byteBuf + m (I)V + p 1 threshold +c net/minecraft/network/Connection vt net/minecraft/class_2535 + f Lnet/minecraft/network/DisconnectionDetails; delayedDisconnect A field_44972 + f Lnet/minecraft/network/BandwidthDebugMonitor; bandwidthDebugMonitor B field_45955 + f Lorg/slf4j/Marker; ROOT_MARKER a field_11641 + f Lorg/slf4j/Marker; PACKET_MARKER b field_11639 + f Lorg/slf4j/Marker; PACKET_RECEIVED_MARKER c field_36379 + f Lorg/slf4j/Marker; PACKET_SENT_MARKER d field_36380 + f Ljava/util/function/Supplier; NETWORK_WORKER_GROUP e field_11650 + f Ljava/util/function/Supplier; NETWORK_EPOLL_WORKER_GROUP f field_11657 + f Ljava/util/function/Supplier; LOCAL_WORKER_GROUP g field_11649 + f F AVERAGE_PACKETS_SMOOTHING h field_33280 + f Lorg/slf4j/Logger; LOGGER i field_11642 + f Lnet/minecraft/network/ProtocolInfo; INITIAL_PROTOCOL j field_48514 + f Lnet/minecraft/network/protocol/PacketFlow; receiving k field_11643 + f Z sendLoginDisconnect l field_48515 + f Ljava/util/Queue; pendingActions m field_45668 + f Lio/netty/channel/Channel; channel n field_11651 + c The active channel + f Ljava/net/SocketAddress; address o field_11645 + c The address of the remote party + f Lnet/minecraft/network/PacketListener; disconnectListener p field_45669 + f Lnet/minecraft/network/PacketListener; packetListener q field_11652 + c The PacketListener instance responsible for processing received packets + f Lnet/minecraft/network/DisconnectionDetails; disconnectionDetails r field_52180 + f Z encrypted s field_11647 + f Z disconnectionHandled t field_11646 + f I receivedPackets u field_11658 + f I sentPackets v field_11656 + f F averageReceivedPackets w field_11654 + f F averageSentPackets x field_11653 + f I tickCount y field_11655 + f Z handlingFault z field_11640 + m ()V flushChannel a method_52915 + m (IZ)V setupCompression a method_10760 + c Enables or disables compression for this connection. If {@code threshold} is >= 0 then a {@link CompressionDecoder} and {@link CompressionEncoder}\nare installed in the pipeline or updated if they already exist. If {@code threshold} is < 0 then any such codec are removed.\n\nCompression is enabled as part of the connection handshake when the server sends {@link net.minecraft.network.protocol.login.ClientboundLoginCompressionPacket}. + p 1 threshold + p 2 validateDecompressed + m (Lnet/minecraft/util/debugchart/LocalSampleLogger;)V setBandwidthLogger a method_53505 + p 1 bandwithLogger + m (Lio/netty/channel/ChannelFuture;)V syncAfterConfigurationChange a method_59851 + p 0 future + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V channelRead0 a method_10770 + p 1 context + p 2 packet + m (Lio/netty/channel/ChannelPipeline;)V configurePacketHandler a method_53859 + p 1 pipeline + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/network/protocol/PacketFlow;)V configureInMemoryPipeline a method_52911 + p 0 pipeline + p 1 flow + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/network/protocol/PacketFlow;ZLnet/minecraft/network/BandwidthDebugMonitor;)V configureSerialization a method_48311 + p 0 pipeline + p 1 flow + p 2 memoryOnly + p 3 bandwithDebugMonitor + m (Ljava/lang/String;ILnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V initiateServerboundPlayConnection a method_52902 + p 1 hostName + p 2 port + p 3 packetListener + m (Ljava/lang/String;ILnet/minecraft/network/protocol/status/ClientStatusPacketListener;)V initiateServerboundStatusConnection a method_52903 + p 1 hostName + p 2 port + p 3 packetListener + m (Ljava/lang/String;ILnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Lnet/minecraft/network/protocol/handshake/ClientIntent;)V initiateServerboundConnection a method_52904 + p 1 hostName + p 2 port + p 3 serverboundProtocol + p 4 clientboundProtocol + p 5 packetListener + p 6 intention + m (Ljava/lang/String;ILnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Z)V initiateServerboundPlayConnection a method_56326 + p 1 hostName + p 2 port + p 3 serverboundProtocol + p 4 clientbountProtocol + p 5 packetListener + p 6 isTransfer + m (Ljava/net/InetSocketAddress;ZLnet/minecraft/util/debugchart/LocalSampleLogger;)Lnet/minecraft/network/Connection; connectToServer a method_10753 + p 0 address + p 1 useEpollIfAvailable + p 2 sampleLogger + m (Ljava/net/InetSocketAddress;ZLnet/minecraft/network/Connection;)Lio/netty/channel/ChannelFuture; connect a method_52271 + p 0 address + p 1 useEpollIfAvailable + p 2 connection + m (Ljava/net/SocketAddress;)Lnet/minecraft/network/Connection; connectToLocalServer a method_10769 + c Prepares a clientside Connection for a local in-memory connection ("single player").\nEstablishes a connection to the socket supplied and configures the channel pipeline (only the packet handler is necessary,\nsince this is for an in-memory connection). Returns the newly created instance. + p 0 address + m (Ljava/util/function/Consumer;)V runOnceConnected a method_52905 + p 1 action + m (Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V setEncryptionKey a method_10746 + c Enables encryption for this connection using the given decrypting and encrypting ciphers.\nThis adds new handlers to this connection's pipeline which handle the decrypting and encrypting.\nThis happens as part of the normal network handshake.\n\n@see net.minecraft.network.protocol.login.ClientboundHelloPacket\n@see net.minecraft.network.protocol.login.ServerboundKeyPacket + p 1 decryptingCipher + p 2 encryptingCipher + m (Lorg/slf4j/Marker;)V method_40062 a method_40062 + m (Lnet/minecraft/network/BandwidthDebugMonitor;Z)Lio/netty/channel/ChannelInboundHandler; createFrameDecoder a method_59852 + p 0 bandwithDebugMonitor + p 1 memoryOnly + m (Lnet/minecraft/network/DisconnectionDetails;)V disconnect a method_60924 + p 1 disconnectionDetails + m (Lnet/minecraft/network/PacketBundlePacker;Lio/netty/channel/ChannelHandlerContext;)V method_56327 a method_56327 + m (Lnet/minecraft/network/PacketBundleUnpacker;Lio/netty/channel/ChannelHandlerContext;)V method_56328 a method_56328 + m (Lnet/minecraft/network/PacketListener;)V setListenerForServerboundHandshake a method_52912 + p 1 packetListener + m (Lnet/minecraft/network/PacketSendListener;Lio/netty/util/concurrent/Future;)V method_45082 a method_45082 + m (Lnet/minecraft/network/ProtocolInfo;)V setupOutboundProtocol a method_56329 + p 1 protocolInfo + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Ljava/lang/String;ILnet/minecraft/network/protocol/handshake/ClientIntent;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/Connection;)V method_52900 a method_52900 + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/PacketListener;)V setupInboundProtocol a method_56330 + p 1 protocolInfo + p 2 packetInfo + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_10747 + c Closes the channel with a given reason. The reason is stored for later and will be used for informational purposes (info log on server,\ndisconnection screen on the client). This method is also called on the client when the server requests disconnection via\n{@code ClientboundDisconnectPacket}.\n\nClosing the channel this way does not send any disconnection packets, it simply terminates the underlying netty channel. + p 1 message + m (Lnet/minecraft/network/protocol/Packet;)V send a method_10743 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;)V genericsFtw a method_10759 + p 0 packet + p 1 listener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;)V send a method_10752 + p 1 packet + p 2 sendListener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V send a method_52906 + p 1 packet + p 2 listener + p 3 flush + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;ZLnet/minecraft/network/Connection;)V method_52907 a method_52907 + m (Z)Ljava/lang/String; getLoggableAddress a method_52909 + p 1 logIps + m (ZLio/netty/channel/ChannelHandlerContext;)V method_56331 a method_56331 + m ()V tick b method_10754 + c Checks timeouts and processes all packets received + m (Lorg/slf4j/Marker;)V method_40063 b method_40063 + m (Lnet/minecraft/network/DisconnectionDetails;)V method_60925 b method_60925 + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/PacketListener;)V validateListener b method_56332 + p 1 protocolInfo + p 2 packetListener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V sendPacket b method_10764 + p 1 packet + p 2 sendListener + p 3 flush + m (Z)Ljava/lang/String; outboundHandlerName b method_56333 + p 0 clientbound + m ()V tickSecond c method_30615 + m (Lorg/slf4j/Marker;)V method_40064 c method_40064 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V doSendPacket c method_36942 + p 1 packet + p 2 sendListener + p 3 flush + m (Z)Ljava/lang/String; inboundHandlerName c method_56334 + p 0 serverbound + m ()Ljava/net/SocketAddress; getRemoteAddress d method_10755 + c Returns the socket address of the remote side. Server-only. + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V method_52917 d method_52917 + m (Z)Lio/netty/channel/ChannelOutboundHandler; createFrameEncoder d method_59853 + p 0 memoryOnly + m ()Z isMemoryConnection e method_10756 + c True if this {@code Connection} uses a memory connection (single player game). False may imply both an active TCP connection or simply no active connection at all + m ()Lnet/minecraft/network/protocol/PacketFlow; getReceiving f method_36121 + c The receiving packet direction (i.e. SERVERBOUND on the server and CLIENTBOUND on the client). + m ()Lnet/minecraft/network/protocol/PacketFlow; getSending g method_36122 + c The sending packet direction (i.e. SERVERBOUND on the client and CLIENTBOUND on the server) + m ()Z isEncrypted h method_10771 + m ()Z isConnected i method_10758 + c Returns {@code true} if this {@code Connection} has an active channel, {@code false} otherwise. + m ()Z isConnecting j method_10772 + c Returns {@code true} while this connection is still connecting, i.e. {@link #channelActive} has not fired yet. + m ()Lnet/minecraft/network/PacketListener; getPacketListener k method_10744 + c Gets the current handler for processing packets + m ()Lnet/minecraft/network/DisconnectionDetails; getDisconnectionDetails l method_60926 + m ()V setReadOnly m method_10757 + c Switches the channel to manual reading modus + m ()V handleDisconnection n method_10768 + c Checks if the channel is no longer active and if so, processes the disconnection\nby notifying the current packet listener, which will handle things like removing the player from the world (serverside) or\nshowing the disconnection screen (clientside). + m ()F getAverageReceivedPackets o method_10762 + m ()F getAverageSentPackets p method_10745 + m ()V flush q method_52918 + m ()V flushQueue r method_10751 + c Will iterate through the outboundPacketQueue and dispatch all Packets + m ()Lnet/minecraft/network/DisconnectionDetails; method_52919 s method_52919 + m ()V method_52920 t method_52920 + m ()Lio/netty/channel/DefaultEventLoopGroup; method_10766 u method_10766 + m ()Lio/netty/channel/epoll/EpollEventLoopGroup; method_10765 v method_10765 + m ()Lio/netty/channel/nio/NioEventLoopGroup; method_10767 w method_10767 + m (Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 receiving + m ()V +c net/minecraft/network/Connection$1 vt$1 net/minecraft/class_2535$1 + f Lnet/minecraft/network/Connection; val$connection a field_11663 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/Connection$2 vt$2 net/minecraft/class_2535$2 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/Connection$3 vt$3 net/minecraft/class_2535$3 + f Lnet/minecraft/network/Connection; val$connection a field_48517 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/ConnectionProtocol vu net/minecraft/class_2539 + c Describes the set of packets a connection understands at a given point.\nA connection always starts out in state {@link #HANDSHAKING}. In this state the client sends its desired protocol using\n{@link ClientIntentionPacket}. The server then either accepts the connection and switches to the desired protocol or it disconnects the client (for example in case of an outdated client).\n\nEach protocol has a {@link PacketListener} implementation tied to it for server and client respectively.\n\nEvery packet must correspond to exactly one protocol. + f Lnet/minecraft/network/ConnectionProtocol; HANDSHAKING a field_20590 + c The handshake protocol. This is the initial protocol, in which the client tells the server its intention (i.e. which protocol it wants to use). + f Lnet/minecraft/network/ConnectionProtocol; PLAY b field_20591 + c The play protocol. This is the main protocol that is used while "in game" and most normal packets reside in here. + f Lnet/minecraft/network/ConnectionProtocol; STATUS c field_20592 + c The status protocol. This protocol is used when a client pings a server while on the multiplayer screen. + f Lnet/minecraft/network/ConnectionProtocol; LOGIN d field_20593 + c The login protocol. This is the first protocol the client switches to to join a server. It handles authentication with the mojang servers. After it is complete, the connection is switched to the PLAY protocol. + f Lnet/minecraft/network/ConnectionProtocol; CONFIGURATION e field_45671 + f Ljava/lang/String; id f field_20594 + f [Lnet/minecraft/network/ConnectionProtocol; $VALUES g field_11694 + m ()Ljava/lang/String; id a method_10785 + m ()[Lnet/minecraft/network/ConnectionProtocol; $values b method_36943 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/network/DisconnectionDetails vv net/minecraft/class_9812 + f Lnet/minecraft/network/chat/Component; reason a comp_2853 + f Ljava/util/Optional; report b comp_2854 + f Ljava/util/Optional; bugReportLink c comp_2855 + m ()Lnet/minecraft/network/chat/Component; reason a comp_2853 + m ()Ljava/util/Optional; report b comp_2854 + m ()Ljava/util/Optional; bugReportLink c comp_2855 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Ljava/util/Optional;)V +c net/minecraft/network/FriendlyByteBuf vw net/minecraft/class_2540 + f I DEFAULT_NBT_QUOTA a field_33287 + f S MAX_STRING_LENGTH b field_33283 + f I MAX_COMPONENT_STRING_LENGTH c field_33284 + f Lio/netty/buffer/ByteBuf; source d field_11695 + f I PUBLIC_KEY_SIZE e field_39381 + f I MAX_PUBLIC_KEY_HEADER_SIZE f field_39382 + f I MAX_PUBLIC_KEY_LENGTH g field_39383 + f Lcom/google/gson/Gson; GSON h field_42966 + m ()Lnet/minecraft/network/FriendlyByteBuf; markWriterIndex A method_52934 + m ()Lnet/minecraft/network/FriendlyByteBuf; resetWriterIndex B method_52935 + m ()Lnet/minecraft/network/FriendlyByteBuf; discardReadBytes C method_52936 + m ()Lnet/minecraft/network/FriendlyByteBuf; discardSomeReadBytes D method_52937 + m ()Lnet/minecraft/network/FriendlyByteBuf; retain E method_52938 + m ()Lnet/minecraft/network/FriendlyByteBuf; touch F method_52939 + m ()Lit/unimi/dsi/fastutil/ints/IntList; readIntIdList a method_34059 + c Read an IntList of VarInts from this buffer.\n\n@see #writeIntIdList + m (D)Lnet/minecraft/network/FriendlyByteBuf; writeDouble a method_52940 + p 1 value + m (F)Lnet/minecraft/network/FriendlyByteBuf; writeFloat a method_52941 + p 1 value + m (I)[B readByteArray a method_10803 + p 1 maxLength + m (ID)Lnet/minecraft/network/FriendlyByteBuf; setDouble a method_52942 + p 1 index + p 2 value + m (IF)Lnet/minecraft/network/FriendlyByteBuf; setFloat a method_52943 + p 1 index + p 2 value + m (II)Lnet/minecraft/network/FriendlyByteBuf; setIndex a method_52944 + p 1 readerIndex + p 2 writerIndex + m (IJ)Lnet/minecraft/network/FriendlyByteBuf; setLong a method_52945 + p 1 index + p 2 value + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52946 + p 1 index + p 2 destination + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52947 + p 1 index + p 2 destination + p 3 length + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52948 + p 1 index + p 2 destination + p 3 destinationIndex + p 4 length + m (ILjava/io/OutputStream;I)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52949 + p 1 index + p 2 out + p 3 length + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52950 + p 1 index + p 2 destination + m (ILjava/util/function/IntFunction;I)Ljava/lang/Object; method_37452 a method_37452 + m (IZ)Lnet/minecraft/network/FriendlyByteBuf; setBoolean a method_52951 + p 1 index + p 2 value + m (I[B)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52952 + p 1 index + p 2 destination + m (I[BII)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52953 + p 1 index + p 2 destination + p 3 destinationIndex + p 4 length + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeVarLong a method_10791 + c Writes a compressed long to the buffer. The smallest number of bytes to fit the passed long will be written. Of each such byte only 7 bits will be used to describe the actual value since its most significant bit dictates whether the next byte is part of that same long. Micro-optimization for long values that are usually small. + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; readResourceKey a method_44112 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/FriendlyByteBuf; writeResourceLocation a method_10812 + c Write a ResourceLocation using its String representation.\n\n@see #readResourceLocation + p 1 resourceLocation + m (Lcom/mojang/serialization/Codec;)Ljava/lang/Object; readJsonWithCodec a method_49394 + p 1 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V writeJsonWithCodec a method_49395 + p 1 codec + p 2 value + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)Ljava/lang/Object; readWithCodecTrusted a method_52954 + p 1 ops + p 2 codec + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; writeWithCodec a method_29172 + p 1 ops + p 2 codec + p 3 value + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/Object; readWithCodec a method_29171 + p 1 ops + p 2 codec + p 3 nbtAccounter + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/FriendlyByteBuf; writeChunkPos a method_36130 + c Writes a ChunkPos encoded as a long to the buffer.\n\n@see #readChunkPos + p 1 chunkPos + m (Lnet/minecraft/world/phys/BlockHitResult;)V writeBlockHitResult a method_17813 + c Write a BlockHitResult.\n\n@see #readBlockHitResult + p 1 result + m (Lnet/minecraft/world/phys/Vec3;)V writeVec3 a method_52955 + p 1 vec3 + m (Lio/netty/buffer/ByteBuf;)[B readByteArray a method_56890 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)[B readByteArray a method_56891 + p 0 buffer + p 1 maxSize + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52958 + p 1 destination + p 2 destinationIndex + p 3 length + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;Lnet/minecraft/network/codec/StreamEncoder;)V writeNullable a method_56892 + p 0 buffer + p 1 value + p 2 writer + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V writeUUID a method_56337 + p 0 buffer + p 1 id + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockPos;)V writeBlockPos a method_56336 + p 0 buffer + p 1 pos + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionf;)V writeQuaternion a method_56338 + p 0 buffer + p 1 quaternion + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3f;)V writeVector3f a method_56339 + p 0 buffer + p 1 vector3f + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNbt a method_56340 + p 0 buffer + p 1 nbtAccounter + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/Tag;)V writeNbt a method_56341 + p 0 buffer + p 1 nbt + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/lang/Object; readNullable a method_56893 + p 0 buffer + p 1 reader + m (Lio/netty/buffer/ByteBuf;[B)V writeByteArray a method_56894 + p 0 buffer + p 1 array + m (Lit/unimi/dsi/fastutil/ints/IntList;)V writeIntIdList a method_34060 + c Write an IntList to this buffer. Every element is encoded as a VarInt.\n\n@see #readIntIdList + p 1 itIdList + m (Ljava/io/OutputStream;I)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52959 + p 1 out + p 2 length + m (Ljava/lang/Class;)Ljava/util/EnumSet; readEnumSet a method_46251 + p 1 enumClass + m (Ljava/lang/Enum;)Lnet/minecraft/network/FriendlyByteBuf; writeEnum a method_10817 + c Writes an enum of the given type T using the ordinal encoded as a VarInt to the buffer.\n\n@see #readEnum + p 1 value + m (Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; touch a method_52960 + p 1 hint + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_49396 a method_49396 + m (Ljava/lang/Object;Lnet/minecraft/network/codec/StreamEncoder;)V writeNullable a method_43826 + p 1 value + p 2 writer + m (Ljava/lang/String;)Lnet/minecraft/network/FriendlyByteBuf; writeUtf a method_10814 + c Writes a String with a maximum length of {@code Short.MAX_VALUE}.\n\n@see #readUtf + p 1 string + m (Ljava/lang/String;I)Lnet/minecraft/network/FriendlyByteBuf; writeUtf a method_10788 + c Writes a String with a maximum length.\n\n@see #readUtf + p 1 string + p 2 maxLength + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52961 + p 1 destination + m (Ljava/security/PublicKey;)Lnet/minecraft/network/FriendlyByteBuf; writePublicKey a method_44114 + p 1 publicKey + m (Ljava/time/Instant;)V writeInstant a method_44115 + p 1 instant + m (Ljava/util/BitSet;)V writeBitSet a method_33557 + c Write a BitSet as a long[].\n\n@see #readBitSet + p 1 bitSet + m (Ljava/util/BitSet;I)V writeFixedBitSet a method_46252 + p 1 bitSet + p 2 size + m (Ljava/util/Collection;Lnet/minecraft/network/codec/StreamEncoder;)V writeCollection a method_34062 + p 1 collection + p 2 elementWriter + m (Ljava/util/Date;)Lnet/minecraft/network/FriendlyByteBuf; writeDate a method_10796 + c Write a timestamp as milliseconds since the unix epoch.\n\n@see #readDate + p 1 time + m (Ljava/util/EnumSet;Ljava/lang/Class;)V writeEnumSet a method_46253 + p 1 enumSet + p 2 enumClass + m (Ljava/util/Map;Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamEncoder;)V writeMap a method_34063 + p 1 map + p 2 keyWriter + p 3 valueWriter + m (Ljava/util/Optional;Lnet/minecraft/network/codec/StreamEncoder;)V writeOptional a method_37435 + p 1 optional + p 2 writer + m (Ljava/util/UUID;)Lnet/minecraft/network/FriendlyByteBuf; writeUUID a method_10797 + c Writes a UUID encoded as two longs to this buffer.\n\n@see #readUUID + p 1 uuid + m (Ljava/util/function/Consumer;)V readWithCount a method_34065 + c Read a VarInt N from this buffer, then reads N values by calling {@code reader}. + p 1 reader + m (Ljava/util/function/IntFunction;)Ljava/lang/Object; readById a method_52962 + p 1 idLookuo + m (Ljava/util/function/IntFunction;I)Ljava/util/function/IntFunction; limitValue a method_37453 + p 0 function + p 1 limit + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Collection; readCollection a method_34068 + p 1 collectionFactory + p 2 elementReader + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Map; readMap a method_34069 + p 1 mapFactory + p 2 keyReader + p 3 valueReader + m (Ljava/util/function/ToIntFunction;Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; writeById a method_52963 + p 1 idGetter + p 2 value + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/FriendlyByteBuf; writeBlockPos a method_10807 + c Writes a BlockPos encoded as a long to the buffer.\n\n@see #readBlockPos + p 1 pos + m (Lnet/minecraft/core/GlobalPos;)V writeGlobalPos a method_44113 + p 1 pos + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/network/FriendlyByteBuf; writeSectionPos a method_36131 + c Writes a SectionPos encoded as a long to the buffer.\n\n@see #readSectionPos + p 1 sectionPos + m (Lorg/joml/Quaternionf;)V writeQuaternion a method_49067 + p 1 quaternion + m (Lorg/joml/Vector3f;)V writeVector3f a method_49068 + p 1 vector3f + m (Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNbt a method_30616 + p 1 nbtAccounter + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/FriendlyByteBuf; writeNbt a method_10794 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_34070 a method_34070 + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/List; readList a method_34066 + p 1 elementReader + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Map; readMap a method_34067 + p 1 keyReader + p 2 valueReader + m (Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamEncoder;Ljava/lang/Object;Ljava/lang/Object;)V method_34064 a method_34064 + m (Z)Lnet/minecraft/network/FriendlyByteBuf; writeBoolean a method_52964 + p 1 value + m ([B)Lnet/minecraft/network/FriendlyByteBuf; writeByteArray a method_10813 + p 1 array + m ([BII)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52965 + p 1 destination + p 2 destinationIndex + p 3 length + m ([I)Lnet/minecraft/network/FriendlyByteBuf; writeVarIntArray a method_10806 + c Writes an array of VarInts to the buffer, prefixed by the length of the array (as a VarInt).\n\n@see #readVarIntArray + p 1 array + m ([J)Lnet/minecraft/network/FriendlyByteBuf; writeLongArray a method_10789 + c Writes an array of longs to the buffer, prefixed by the length of the array (as a VarInt).\n\n@see #readLongArray + p 1 array + m ([JI)[J readLongArray a method_10809 + c Reads a length-prefixed array of longs with a maximum length from the buffer.\nWill try to use the given long[] if possible. Note that if an array with the correct size is given, maxLength is ignored. + p 1 array + p 2 maxLength + m ()[B readByteArray b method_10795 + m (I)[I readVarIntArray b method_10799 + c Reads an array of VarInts with a maximum length from this buffer.\n\n@see #writeVarIntArray + p 1 maxLength + m (II)Lnet/minecraft/network/FriendlyByteBuf; setByte b method_52966 + p 1 index + p 2 value + m (IJ)Lnet/minecraft/network/FriendlyByteBuf; setLongLE b method_52967 + p 1 index + p 2 value + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52968 + p 1 index + p 2 source + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52969 + p 1 index + p 2 source + p 3 length + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52970 + p 1 index + p 2 source + p 3 sourceIndex + p 4 length + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52971 + p 1 index + p 2 source + m (I[B)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52972 + p 1 index + p 2 source + m (I[BII)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52973 + p 1 index + p 2 source + p 3 sourceIndex + p 4 length + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeLong b method_52974 + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)V writeResourceKey b method_44116 + p 1 resourceKey + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockPos; readBlockPos b method_56335 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; readBytes b method_52957 + p 1 destination + p 2 length + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52977 + p 1 source + p 2 sourceIndex + p 3 length + m (Ljava/lang/Class;)Ljava/lang/Enum; readEnum b method_10818 + c Reads an enum of the given type T using the ordinal encoded as a VarInt from the buffer.\n\n@see #writeEnum + p 1 enumClass + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_34061 b method_34061 + m (Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_49397 b method_49397 + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52978 + p 1 source + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Optional; readOptional b method_37436 + p 1 reader + m ([B)Lnet/minecraft/network/FriendlyByteBuf; readBytes b method_52979 + p 1 destination + m ([BII)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52980 + p 1 source + p 2 sourceIndex + p 3 length + m ([J)[J readLongArray b method_10801 + c Reads a length-prefixed array of longs from the buffer.\nWill try to use the given long[] if possible. Note that if an array with the correct size is given, maxLength is ignored. + p 1 array + m ()[I readVarIntArray c method_10787 + c Reads an array of VarInts from this buffer.\n\n@see #writeVarIntArray + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeVarInt c method_10804 + c Writes a compressed int to the buffer. The smallest number of bytes to fit the passed int will be written. Of each such byte only 7 bits will be used to describe the actual value since its most significant bit dictates whether the next byte is part of that same int. Micro-optimization for int values that are usually small. + p 1 input + m (II)Lnet/minecraft/network/FriendlyByteBuf; setShort c method_52981 + p 1 index + p 2 value + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeLongLE c method_52982 + p 1 value + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3f; readVector3f c method_56342 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; writeBytes c method_52976 + p 1 source + p 2 length + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/lang/Object; readNullable c method_43827 + p 1 reader + m ([B)Lnet/minecraft/network/FriendlyByteBuf; writeBytes c method_52983 + p 1 source + m ()[J readLongArray d method_33134 + c Reads a length-prefixed array of longs from the buffer. + m (I)Ljava/lang/String; readUtf d method_10800 + c Reads a string with a maximum length from this buffer.\n\n@see #writeUtf + p 1 maxLength + m (II)Lnet/minecraft/network/FriendlyByteBuf; setShortLE d method_52984 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionf; readQuaternion d method_56343 + p 0 buffer + m ()Lnet/minecraft/core/BlockPos; readBlockPos e method_10811 + c Reads a BlockPos encoded as a long from the buffer.\n\n@see #writeBlockPos + m (I)Ljava/util/BitSet; readFixedBitSet e method_46254 + p 1 size + m (II)Lnet/minecraft/network/FriendlyByteBuf; setMedium e method_52985 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; readUUID e method_56344 + p 0 buffer + m ()Lnet/minecraft/world/level/ChunkPos; readChunkPos f method_36133 + c Reads a ChunkPos encoded as a long from the buffer.\n\n@see #writeChunkPos + m (I)Lnet/minecraft/network/FriendlyByteBuf; capacity f method_52986 + p 1 newCapacity + m (II)Lnet/minecraft/network/FriendlyByteBuf; setMediumLE f method_52987 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/nbt/CompoundTag; readNbt f method_56345 + p 0 buffer + m ()Lnet/minecraft/core/SectionPos; readSectionPos g method_19456 + c Reads a SectionPos encoded as a long from the buffer.\n\n@see #writeSectionPos + m (I)Lnet/minecraft/network/FriendlyByteBuf; readerIndex g method_52988 + p 1 readerIndex + m (II)Lnet/minecraft/network/FriendlyByteBuf; setInt g method_52989 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; readBytes g method_52956 + p 1 destination + m ()Lnet/minecraft/core/GlobalPos; readGlobalPos h method_44117 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writerIndex h method_52990 + p 1 writerIndex + m (II)Lnet/minecraft/network/FriendlyByteBuf; setIntLE h method_52991 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; writeBytes h method_52975 + p 1 source + m ()Lorg/joml/Vector3f; readVector3f i method_49069 + m (I)Lnet/minecraft/network/FriendlyByteBuf; ensureWritable i method_52992 + p 1 size + m (II)Lnet/minecraft/network/FriendlyByteBuf; setChar i method_52993 + p 1 index + p 2 value + m ()Lorg/joml/Quaternionf; readQuaternion j method_49070 + m (I)Lnet/minecraft/network/FriendlyByteBuf; skipBytes j method_52994 + p 1 length + m (II)Lnet/minecraft/network/FriendlyByteBuf; setZero j method_52995 + p 1 index + p 2 length + m ()Lnet/minecraft/world/phys/Vec3; readVec3 k method_52996 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeByte k method_52997 + p 1 value + m ()I readVarInt l method_10816 + c Reads a compressed int from the buffer. To do so it maximally reads 5 byte-sized chunks whose most significant bit dictates whether another byte should be read.\n\n@see #writeVarInt + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeShort l method_52998 + p 1 value + m ()J readVarLong m method_10792 + c Reads a compressed long from the buffer. To do so it maximally reads 10 byte-sized chunks whose most significant bit dictates whether another byte should be read.\n\n@see #writeVarLong + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeShortLE m method_52999 + p 1 value + m ()Ljava/util/UUID; readUUID n method_10790 + c Reads a UUID encoded as two longs from this buffer.\n\n@see #writeUUID + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeMedium n method_53000 + p 1 value + m ()Lnet/minecraft/nbt/CompoundTag; readNbt o method_10798 + c Reads a NBT CompoundTag from this buffer.\n{@code null} is a valid value and may be returned.\n\nThis method will read a maximum of 0x200000 bytes.\n\n@see #writeNbt\n@see #readAnySizeNbt\n@see #readNbt(NbtAccounter) + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeMediumLE o method_53001 + p 1 value + m ()Ljava/lang/String; readUtf p method_19772 + c Reads a String with a maximum length of {@code Short.MAX_VALUE}.\n\n@see #readUtf(int)\n@see #writeUtf + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeInt p method_53002 + p 1 value + m ()Lnet/minecraft/resources/ResourceLocation; readResourceLocation q method_10810 + c Read a ResourceLocation using its String representation.\n\n@see #writeResourceLocation + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeIntLE q method_53003 + p 1 value + m ()Lnet/minecraft/resources/ResourceKey; readRegistryKey r method_53006 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeChar r method_53004 + p 1 value + m ()Ljava/util/Date; readDate s method_10802 + c Read a timestamp as milliseconds since the unix epoch.\n\n@see #writeDate + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeZero s method_53005 + p 1 length + m ()Ljava/time/Instant; readInstant t method_44118 + m (I)Lnet/minecraft/network/FriendlyByteBuf; retain t method_53007 + p 1 increment + m ()Ljava/security/PublicKey; readPublicKey u method_44119 + m ()Lnet/minecraft/world/phys/BlockHitResult; readBlockHitResult v method_17814 + c Read a BlockHitResult.\n\n@see #writeBlockHitResult + m ()Ljava/util/BitSet; readBitSet w method_33558 + c Read a BitSet as a long[].\n\n@see #writeBitSet + m ()Lnet/minecraft/network/FriendlyByteBuf; clear x method_52931 + m ()Lnet/minecraft/network/FriendlyByteBuf; markReaderIndex y method_52932 + m ()Lnet/minecraft/network/FriendlyByteBuf; resetReaderIndex z method_52933 + m (Lio/netty/buffer/ByteBuf;)V + p 1 source + m ()V +c net/minecraft/network/HandlerNames vx net/minecraft/class_9126 + f Ljava/lang/String; DECOMPRESS a field_48518 + f Ljava/lang/String; COMPRESS b field_48519 + f Ljava/lang/String; DECODER c field_48520 + f Ljava/lang/String; ENCODER d field_48521 + f Ljava/lang/String; INBOUND_CONFIG e field_48522 + f Ljava/lang/String; OUTBOUND_CONFIG f field_48523 + f Ljava/lang/String; SPLITTER g field_48524 + f Ljava/lang/String; PREPENDER h field_48525 + f Ljava/lang/String; DECRYPT i field_48526 + f Ljava/lang/String; ENCRYPT j field_48527 + f Ljava/lang/String; UNBUNDLER k field_48528 + f Ljava/lang/String; BUNDLER l field_48529 + f Ljava/lang/String; PACKET_HANDLER m field_48530 + f Ljava/lang/String; TIMEOUT n field_48531 + f Ljava/lang/String; LEGACY_QUERY o field_48532 + f Ljava/lang/String; LATENCY p field_48533 + m ()V +c net/minecraft/network/MonitorFrameDecoder vy net/minecraft/class_9680 + f Lnet/minecraft/network/BandwidthDebugMonitor; monitor a field_51500 + m (Lnet/minecraft/network/BandwidthDebugMonitor;)V + p 1 monitor +c net/minecraft/network/NoOpFrameDecoder vz net/minecraft/class_9681 + m ()V +c net/minecraft/network/NoOpFrameEncoder wa net/minecraft/class_9682 + m ()V +c net/minecraft/network/PacketBundlePacker wb net/minecraft/class_8035 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo a field_48534 + f Lnet/minecraft/network/protocol/BundlerInfo$Bundler; currentBundler b field_41869 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Ljava/util/List;)V decode a method_48318 + p 1 context + p 2 packet + m (Lnet/minecraft/network/protocol/Packet;)V verifyNonTerminalPacket a method_56346 + p 0 packet + m (Lnet/minecraft/network/protocol/BundlerInfo;)V + p 1 bundlerInfo +c net/minecraft/network/PacketBundleUnpacker wc net/minecraft/class_8036 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo a field_48535 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Ljava/util/List;)V encode a method_48319 + p 1 context + p 2 packet + m (Lnet/minecraft/network/protocol/BundlerInfo;)V + p 1 bundlerInfo +c net/minecraft/network/PacketDecoder wd net/minecraft/class_2543 + c Main netty packet decoder. Reads the packet ID as a VarInt and creates the corresponding packet\nbased on the current {@link ConnectionProtocol}. + f Lorg/slf4j/Logger; LOGGER a field_11715 + f Lnet/minecraft/network/ProtocolInfo; protocolInfo b field_48536 + m (Lnet/minecraft/network/ProtocolInfo;)V + p 1 protocolInfo + m ()V +c net/minecraft/network/PacketEncoder we net/minecraft/class_2545 + c Main netty packet encoder. Writes the packet ID as a VarInt based on the current {@link ConnectionProtocol} as well as the packet's data. + f Lorg/slf4j/Logger; LOGGER a field_11721 + f Lnet/minecraft/network/ProtocolInfo; protocolInfo b field_48537 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Lio/netty/buffer/ByteBuf;)V encode a method_10838 + m (Lnet/minecraft/network/ProtocolInfo;)V + p 1 protocolInfo + m ()V +c net/minecraft/network/PacketListener wf net/minecraft/class_2547 + c Describes how packets are handled. There are various implementations of this class for each possible protocol (e.g. PLAY, CLIENTBOUND; PLAY, SERVERBOUND; etc.) + m ()Lnet/minecraft/network/protocol/PacketFlow; flow a method_52895 + m (Lnet/minecraft/CrashReport;)V fillCrashReport a method_55622 + p 1 crashReport + m (Lnet/minecraft/CrashReport;Lnet/minecraft/CrashReportCategory;)V fillListenerSpecificCrashDetails a method_55597 + p 1 crashReport + p 2 category + m (Lnet/minecraft/network/DisconnectionDetails;)V onDisconnect a method_10839 + p 1 details + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)Lnet/minecraft/network/DisconnectionDetails; createDisconnectionInfo a method_60881 + p 1 reason + p 2 error + m (Lnet/minecraft/network/protocol/Packet;)Z shouldHandleMessage a method_52413 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Ljava/lang/Exception;)V onPacketError a method_59807 + p 1 packet + p 2 exception + m ()Lnet/minecraft/network/ConnectionProtocol; protocol b method_52280 + m ()Z isAcceptingMessages c method_48106 + m ()Ljava/lang/String; method_55623 d method_55623 + m ()Ljava/lang/String; method_55624 e method_55624 +c net/minecraft/network/PacketSendListener wg net/minecraft/class_7648 + m ()V onSuccess a method_45083 + m (Ljava/lang/Runnable;)Lnet/minecraft/network/PacketSendListener; thenRun a method_45084 + p 0 onSuccessOrFailure + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/PacketSendListener; exceptionallySend a method_45085 + p 0 exceptionalPacketSupplier + m ()Lnet/minecraft/network/protocol/Packet; onFailure b method_45086 +c net/minecraft/network/PacketSendListener$1 wg$1 net/minecraft/class_7648$1 + f Ljava/lang/Runnable; val$runnable a field_39939 + m (Ljava/lang/Runnable;)V +c net/minecraft/network/PacketSendListener$2 wg$2 net/minecraft/class_7648$2 + f Ljava/util/function/Supplier; val$handler a field_39940 + m (Ljava/util/function/Supplier;)V +c net/minecraft/network/ProtocolInfo wh net/minecraft/class_9127 + m ()Lnet/minecraft/network/ConnectionProtocol; id a comp_2234 + m ()Lnet/minecraft/network/protocol/PacketFlow; flow b comp_2235 + m ()Lnet/minecraft/network/codec/StreamCodec; codec c comp_2236 + m ()Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d comp_2237 +c net/minecraft/network/ProtocolInfo$Unbound wh$a net/minecraft/class_9127$class_9128 + m ()Lnet/minecraft/network/ConnectionProtocol; id a method_61106 + m (Ljava/util/function/Function;)Lnet/minecraft/network/ProtocolInfo; bind a method_61107 + p 1 bufferFactory + m (Lnet/minecraft/network/ProtocolInfo$Unbound$PacketVisitor;)V listPackets a method_61108 + p 1 visitor + m ()Lnet/minecraft/network/protocol/PacketFlow; flow b method_61109 +c net/minecraft/network/ProtocolInfo$Unbound$PacketVisitor wh$a$a net/minecraft/class_9127$class_9128$class_9828 +c net/minecraft/network/ProtocolSwapHandler wi net/minecraft/class_8700 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V handleInboundTerminalPacket a method_56347 + p 0 context + p 1 packet + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V handleOutboundTerminalPacket b method_56348 + p 0 context + p 1 packet +c net/minecraft/network/RateKickingConnection wj net/minecraft/class_5472 + c Variant of {@link Connection} that monitors the amount of received packets and disables receiving if the set limit is exceeded. + f Lorg/slf4j/Logger; LOGGER h field_26342 + f Lnet/minecraft/network/chat/Component; EXCEED_REASON i field_26343 + f I rateLimitPacketsPerSecond j field_26344 + m ()V method_30618 q method_30618 + m (I)V + p 1 rateLimitPacketsPerSecond + m ()V +c net/minecraft/network/RegistryFriendlyByteBuf wk net/minecraft/class_9129 + f Lnet/minecraft/core/RegistryAccess; registryAccess d field_48538 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess G method_56349 + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/function/Function; decorator a method_56350 + p 0 registry + m (Lnet/minecraft/core/RegistryAccess;Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/RegistryFriendlyByteBuf; method_56351 a method_56351 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/RegistryAccess;)V + p 1 source + p 2 registryAccess +c net/minecraft/network/ServerboundPacketListener wl net/minecraft/class_8701 +c net/minecraft/network/SkipPacketException wm net/minecraft/class_2548 + c Used to signify that a packet encoding error is not fatal. If a packet fails to encode, but {@link net.minecraft.network.protocol.Packet#isSkippable} returns true, then this exception is thrown instead and {@link Connection} will log a message instead of closing the connection. + m (Ljava/lang/Throwable;)V + p 1 cause +c net/minecraft/network/TickablePacketListener wn net/minecraft/class_7633 + m ()V tick d method_18784 +c net/minecraft/network/UnconfiguredPipelineHandler wo net/minecraft/class_9130 + m (Lio/netty/channel/ChannelInboundHandler;)Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask; setupInboundHandler a method_56352 + p 0 handler + m (Lio/netty/channel/ChannelInboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56353 a method_56353 + m (Lio/netty/channel/ChannelOutboundHandler;)Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask; setupOutboundHandler a method_56354 + p 0 handler + m (Lio/netty/channel/ChannelOutboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56355 a method_56355 + m (Lnet/minecraft/network/ProtocolInfo;)Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask; setupInboundProtocol a method_56356 + p 0 protocolInfo + m (Lnet/minecraft/network/ProtocolInfo;)Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask; setupOutboundProtocol b method_56357 + p 0 protocolInfo + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$Inbound wo$a net/minecraft/class_9130$class_9131 + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask wo$b net/minecraft/class_9130$class_9132 + m (Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask;Lio/netty/channel/ChannelHandlerContext;)V method_56358 a method_56358 +c net/minecraft/network/UnconfiguredPipelineHandler$Outbound wo$c net/minecraft/class_9130$class_9133 + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask wo$d net/minecraft/class_9130$class_9134 + m (Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask;Lio/netty/channel/ChannelHandlerContext;)V method_56359 a method_56359 +c net/minecraft/network/Utf8String wp net/minecraft/class_8702 + m (Lio/netty/buffer/ByteBuf;I)Ljava/lang/String; read a method_53012 + p 0 buffer + p 1 maxLength + m (Lio/netty/buffer/ByteBuf;Ljava/lang/CharSequence;I)V write a method_53013 + p 0 buffer + p 1 string + p 2 maxLength + m ()V +c net/minecraft/network/VarInt wq net/minecraft/class_8703 + f I MAX_VARINT_SIZE a field_45682 + f I DATA_BITS_MASK b field_45683 + f I CONTINUATION_BIT_MASK c field_45684 + f I DATA_BITS_PER_BYTE d field_45685 + m (B)Z hasContinuationBit a method_53014 + p 0 data + m (I)I getByteSize a method_53015 + p 0 data + m (Lio/netty/buffer/ByteBuf;)I read a method_53016 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; write a method_53017 + p 0 buffer + p 1 value + m ()V +c net/minecraft/network/VarLong wr net/minecraft/class_8704 + f I MAX_VARLONG_SIZE a field_45686 + f I DATA_BITS_MASK b field_45687 + f I CONTINUATION_BIT_MASK c field_45688 + f I DATA_BITS_PER_BYTE d field_45689 + m (B)Z hasContinuationBit a method_53018 + p 0 data + m (J)I getByteSize a method_53019 + p 0 data + m (Lio/netty/buffer/ByteBuf;)J read a method_53020 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;J)Lio/netty/buffer/ByteBuf; write a method_53021 + p 0 buffer + p 1 value + m ()V +c net/minecraft/network/Varint21FrameDecoder ws net/minecraft/class_2550 + c Counterpart to {@link Varint21LengthFieldPrepender}. Decodes each frame ("packet") by first reading its length and then its data. + f I MAX_VARINT21_BYTES a field_45690 + f Lio/netty/buffer/ByteBuf; helperBuf b field_45691 + f Lnet/minecraft/network/BandwidthDebugMonitor; monitor c field_45956 + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)Z copyVarint a method_53022 + p 0 in + p 1 out + m (Lnet/minecraft/network/BandwidthDebugMonitor;)V + p 1 monitor +c net/minecraft/network/Varint21LengthFieldPrepender wt net/minecraft/class_2552 + c Prepends each frame ("packet") with its length encoded as a VarInt. Every frame's length must fit within a 3-byte VarInt.\n\n@see Varint21FrameDecoder + f I MAX_VARINT21_BYTES a field_33288 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10840 + p 1 context + p 2 encoder + p 3 decoder + m ()V +c net/minecraft/network/chat/ChatDecorator wu net/minecraft/class_7492 + f Lnet/minecraft/network/chat/ChatDecorator; PLAIN a field_39384 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_44303 a method_44303 + m ()V +c net/minecraft/network/chat/ChatType wv net/minecraft/class_2556 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_39227 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51969 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_51970 + f Lnet/minecraft/network/chat/ChatTypeDecoration; DEFAULT_CHAT_DECORATION d field_39677 + f Lnet/minecraft/resources/ResourceKey; CHAT e field_11737 + f Lnet/minecraft/resources/ResourceKey; SAY_COMMAND f field_39228 + f Lnet/minecraft/resources/ResourceKey; MSG_COMMAND_INCOMING g field_39799 + f Lnet/minecraft/resources/ResourceKey; MSG_COMMAND_OUTGOING h field_39800 + f Lnet/minecraft/resources/ResourceKey; TEAM_MSG_COMMAND_INCOMING i field_39881 + f Lnet/minecraft/resources/ResourceKey; TEAM_MSG_COMMAND_OUTGOING j field_39882 + f Lnet/minecraft/resources/ResourceKey; EMOTE_COMMAND k field_39231 + f Lnet/minecraft/network/chat/ChatTypeDecoration; chat l comp_792 + f Lnet/minecraft/network/chat/ChatTypeDecoration; narration m comp_794 + m ()Lnet/minecraft/network/chat/ChatTypeDecoration; chat a comp_792 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44832 + p 0 chatTypeKey + p 1 entity + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44833 + p 0 chatTypeKey + p 1 source + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44834 + p 0 chatTypeKey + p 1 registryAccess + p 2 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43843 a method_43843 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43845 + p 0 key + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43844 + p 0 context + m ()Lnet/minecraft/network/chat/ChatTypeDecoration; narration b comp_794 + m (Lnet/minecraft/network/chat/ChatTypeDecoration;Lnet/minecraft/network/chat/ChatTypeDecoration;)V + m ()V +c net/minecraft/network/chat/ChatType$Bound wv$a net/minecraft/class_2556$class_7602 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48776 + f Lnet/minecraft/core/Holder; chatType b comp_919 + f Lnet/minecraft/network/chat/Component; name c comp_920 + f Ljava/util/Optional; targetName d comp_921 + m ()Lnet/minecraft/core/Holder; chatType a comp_919 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorate a method_44837 + p 1 content + m ()Lnet/minecraft/network/chat/Component; name b comp_920 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorateNarration b method_44838 + p 1 content + m ()Ljava/util/Optional; targetName c comp_921 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/ChatType$Bound; withTargetName c method_44839 + p 1 targetName + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;)V + p 1 chatType + p 2 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/chat/ChatTypeDecoration ww net/minecraft/class_7463 + f Lcom/mojang/serialization/Codec; CODEC a field_39219 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51971 + f Ljava/lang/String; translationKey c comp_788 + f Ljava/util/List; parameters d comp_789 + f Lnet/minecraft/network/chat/Style; style e comp_790 + m ()Ljava/lang/String; translationKey a comp_788 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43830 a method_43830 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; withSender a method_43831 + p 0 translationKey + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; decorate a method_43832 + p 1 content + p 2 boundChatType + m ()Ljava/util/List; parameters b comp_789 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; incomingDirectMessage b method_44779 + p 0 translationKey + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)[Lnet/minecraft/network/chat/Component; resolveParameters b method_43834 + p 1 content + p 2 boundChatType + m ()Lnet/minecraft/network/chat/Style; style c comp_790 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; outgoingDirectMessage c method_44780 + p 0 translationKey + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; teamMessage d method_43835 + p 0 translationKey + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/network/chat/Style;)V + m ()V +c net/minecraft/network/chat/ChatTypeDecoration$Parameter ww$a net/minecraft/class_7463$class_7464 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; SENDER a field_39220 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; TARGET b field_39221 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; CONTENT c field_39222 + f Lcom/mojang/serialization/Codec; CODEC d field_39223 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_51972 + f Ljava/util/function/IntFunction; BY_ID f field_51973 + f I id g field_51974 + f Ljava/lang/String; name h field_39224 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector; selector i field_39225 + f [Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; $VALUES j field_39226 + m ()[Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; $values a method_43836 + m (Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter;)I method_60652 a method_60652 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; select a method_43837 + p 1 content + p 2 boundChatType + m (Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter;)I method_60653 b method_60653 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43838 b method_43838 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43839 c method_43839 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43840 d method_43840 + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector;)V + p 3 id + p 4 name + p 5 selector + m ()V +c net/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector ww$a$a net/minecraft/class_7463$class_7464$class_7465 +c net/minecraft/network/chat/ClickEvent wx net/minecraft/class_2558 + f Lcom/mojang/serialization/Codec; CODEC a field_46594 + f Lnet/minecraft/network/chat/ClickEvent$Action; action b field_11741 + f Ljava/lang/String; value c field_11740 + m ()Lnet/minecraft/network/chat/ClickEvent$Action; getAction a method_10845 + c Gets the action to perform when this event is raised. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54149 a method_54149 + m (Lnet/minecraft/network/chat/ClickEvent;)Ljava/lang/String; method_54150 a method_54150 + m ()Ljava/lang/String; getValue b method_10844 + c Gets the value to perform the action on when this event is raised. For example, if the action is "open URL", this would be the URL to open. + m (Lnet/minecraft/network/chat/ClickEvent;)Lnet/minecraft/network/chat/ClickEvent$Action; method_54151 b method_54151 + m (Lnet/minecraft/network/chat/ClickEvent$Action;Ljava/lang/String;)V + p 1 action + p 2 value + m ()V +c net/minecraft/network/chat/ClickEvent$Action wx$a net/minecraft/class_2558$class_2559 + f Lnet/minecraft/network/chat/ClickEvent$Action; OPEN_URL a field_11749 + f Lnet/minecraft/network/chat/ClickEvent$Action; OPEN_FILE b field_11746 + f Lnet/minecraft/network/chat/ClickEvent$Action; RUN_COMMAND c field_11750 + f Lnet/minecraft/network/chat/ClickEvent$Action; SUGGEST_COMMAND d field_11745 + f Lnet/minecraft/network/chat/ClickEvent$Action; CHANGE_PAGE e field_11748 + f Lnet/minecraft/network/chat/ClickEvent$Action; COPY_TO_CLIPBOARD f field_21462 + f Lcom/mojang/serialization/MapCodec; UNSAFE_CODEC g field_46595 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46596 + f Z allowFromServer i field_11744 + f Ljava/lang/String; name j field_11742 + c The canonical name used to refer to this action. + f [Lnet/minecraft/network/chat/ClickEvent$Action; $VALUES k field_11747 + m ()Z isAllowedFromServer a method_10847 + c Indicates whether this event can be run from chat text. + m (Lnet/minecraft/network/chat/ClickEvent$Action;)Lcom/mojang/serialization/DataResult; filterForSerialization a method_54152 + p 0 action + m ()[Lnet/minecraft/network/chat/ClickEvent$Action; $values b method_36945 + m (Lnet/minecraft/network/chat/ClickEvent$Action;)Ljava/lang/String; method_54153 b method_54153 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 name + p 4 allowFromServer + m ()V +c net/minecraft/network/chat/CommonComponents wy net/minecraft/class_5244 + f Lnet/minecraft/network/chat/Component; EMPTY a field_39003 + f Lnet/minecraft/network/chat/Component; OPTION_ON b field_24332 + f Lnet/minecraft/network/chat/Component; OPTION_OFF c field_24333 + f Lnet/minecraft/network/chat/Component; GUI_DONE d field_24334 + f Lnet/minecraft/network/chat/Component; GUI_CANCEL e field_24335 + f Lnet/minecraft/network/chat/Component; GUI_YES f field_24336 + f Lnet/minecraft/network/chat/Component; GUI_NO g field_24337 + f Lnet/minecraft/network/chat/Component; GUI_OK h field_44914 + f Lnet/minecraft/network/chat/Component; GUI_PROCEED i field_24338 + f Lnet/minecraft/network/chat/Component; GUI_CONTINUE j field_41873 + f Lnet/minecraft/network/chat/Component; GUI_BACK k field_24339 + f Lnet/minecraft/network/chat/Component; GUI_TO_TITLE l field_43109 + f Lnet/minecraft/network/chat/Component; GUI_ACKNOWLEDGE m field_39742 + f Lnet/minecraft/network/chat/Component; GUI_OPEN_IN_BROWSER n field_44968 + f Lnet/minecraft/network/chat/Component; GUI_COPY_LINK_TO_CLIPBOARD o field_44969 + f Lnet/minecraft/network/chat/Component; GUI_DISCONNECT p field_45692 + f Lnet/minecraft/network/chat/Component; TRANSFER_CONNECT_FAILED q field_48539 + f Lnet/minecraft/network/chat/Component; CONNECT_FAILED r field_26625 + f Lnet/minecraft/network/chat/Component; NEW_LINE s field_33849 + f Lnet/minecraft/network/chat/Component; NARRATION_SEPARATOR t field_33850 + f Lnet/minecraft/network/chat/Component; ELLIPSIS u field_39678 + f Lnet/minecraft/network/chat/Component; SPACE v field_41874 + m ()Lnet/minecraft/network/chat/MutableComponent; space a method_48320 + m (J)Lnet/minecraft/network/chat/MutableComponent; days a method_44682 + p 0 days + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; joinLines a method_37109 + p 0 lines + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; optionNameValue a method_32700 + p 0 caption + p 1 valueMessage + m (Lnet/minecraft/network/chat/Component;Z)Lnet/minecraft/network/chat/MutableComponent; optionStatus a method_30619 + p 0 message + p 1 composed + m (Z)Lnet/minecraft/network/chat/Component; optionStatus a method_36134 + p 0 isEnabled + m ([Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; joinForNarration a method_37111 + p 0 components + m (J)Lnet/minecraft/network/chat/MutableComponent; hours b method_44683 + p 0 hours + m ([Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; joinLines b method_37110 + p 0 lines + m (J)Lnet/minecraft/network/chat/MutableComponent; minutes c method_44684 + p 0 minutes + m ()V + m ()V +c net/minecraft/network/chat/Component wz net/minecraft/class_2561 + m ()Lnet/minecraft/network/chat/Style; getStyle a method_10866 + c Gets the style of this component. + m (I)Ljava/lang/String; getString a method_10858 + c Get the plain text of this FormattedText, without any styling or formatting codes, limited to {@code maxLength} characters. + p 1 maxLength + m (ILjava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_27655 a method_27655 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; translationArg a method_54154 + p 0 location + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/network/chat/Component; translationArg a method_54155 + p 0 message + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/chat/Component; translationArg a method_54156 + p 0 chunkPos + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; nullToEmpty a method_30163 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; translatableWithFallback a method_48321 + p 0 key + p 1 fallback + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatableWithFallback a method_48322 + p 0 key + p 1 fallback + p 2 args + m (Ljava/lang/String;Ljava/util/Optional;)Lnet/minecraft/network/chat/MutableComponent; selector a method_43467 + p 0 pattern + p 1 separator + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)Lnet/minecraft/network/chat/MutableComponent; nbt a method_43468 + p 0 nbtPathPattern + p 1 interpreting + p 2 separator + p 3 dataSource + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatable a method_43469 + p 0 key + p 1 args + m (Ljava/net/URI;)Lnet/minecraft/network/chat/Component; translationArg a method_61110 + p 0 uri + m (Ljava/util/Date;)Lnet/minecraft/network/chat/Component; translationArg a method_54157 + p 0 date + m (Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_36135 a method_36135 + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/Component; translationArg a method_54158 + p 0 uuid + m (Lnet/minecraft/network/chat/Component;)Z contains a method_44745 + p 1 other + m (Lnet/minecraft/network/chat/Style;)Ljava/util/List; toFlatList a method_36136 + p 1 style + m ()Lnet/minecraft/network/chat/ComponentContents; getContents b method_10851 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; literal b method_43470 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; score b method_43466 + p 0 name + p 1 objective + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatableEscape b method_54159 + p 0 key + p 1 args + m ()Ljava/util/List; getSiblings c method_10855 + c Gets the sibling components of this one. + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; translatable c method_43471 + p 0 key + m ()Ljava/lang/String; tryCollapseToString d method_54160 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; keybind d method_43472 + p 0 name + m ()Lnet/minecraft/network/chat/MutableComponent; plainCopy e method_27662 + c Creates a copy of this component, losing any style or siblings. + m ()Lnet/minecraft/network/chat/MutableComponent; copy f method_27661 + c Creates a copy of this component and also copies the style and siblings. Note that the siblings are copied shallowly, meaning the siblings themselves are not copied. + m ()Lnet/minecraft/util/FormattedCharSequence; getVisualOrderText g method_30937 + m ()Ljava/util/List; toFlatList h method_44746 + m ()Lnet/minecraft/network/chat/MutableComponent; empty i method_43473 +c net/minecraft/network/chat/Component$Serializer wz$a net/minecraft/class_2561$class_2562 + f Lcom/google/gson/Gson; GSON a field_11754 + m (Lcom/google/gson/JsonElement;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJson a method_10872 + p 0 json + p 1 registries + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJson a method_10877 + p 0 json + p 1 registries + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; toJson a method_10867 + p 0 component + p 1 registries + m (Lcom/google/gson/JsonElement;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; deserialize b method_10871 + p 0 json + p 1 provider + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJsonLenient b method_10873 + p 0 json + p 1 registries + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Lcom/google/gson/JsonElement; serialize b method_10874 + p 0 component + p 1 provider + m ()V + m ()V +c net/minecraft/network/chat/Component$SerializerAdapter wz$b net/minecraft/class_2561$class_8822 + f Lnet/minecraft/core/HolderLookup$Provider; registries a field_49665 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/network/chat/MutableComponent; deserialize a method_54161 + p 1 json + p 2 typeOfT + p 3 context + m (Lnet/minecraft/network/chat/Component;Ljava/lang/reflect/Type;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement; serialize a method_54162 + p 1 src + p 2 typeOfSrc + p 3 context + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/network/chat/ComponentContents xa net/minecraft/class_7417 + m ()Lnet/minecraft/network/chat/ComponentContents$Type; type a method_54163 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/MutableComponent; resolve a method_10890 + p 1 nbtPathPattern + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/network/chat/FormattedText$ContentConsumer;)Ljava/util/Optional; visit a method_27659 + p 1 contentConsumer + m (Lnet/minecraft/network/chat/FormattedText$StyledContentConsumer;Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; visit a method_27660 + p 1 styledContentConsumer + p 2 style +c net/minecraft/network/chat/ComponentContents$Type xa$a net/minecraft/class_7417$class_8823 + f Lcom/mojang/serialization/MapCodec; codec a comp_1983 + f Ljava/lang/String; id b comp_1984 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1983 + m ()Ljava/lang/String; id b comp_1984 + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/String;)V +c net/minecraft/network/chat/ComponentSerialization xb net/minecraft/class_8824 + f Lcom/mojang/serialization/Codec; CODEC a field_46597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48540 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC c field_48985 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_STREAM_CODEC d field_49666 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_OPTIONAL_STREAM_CODEC e field_49667 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_CONTEXT_FREE_STREAM_CODEC f field_49668 + f Lcom/mojang/serialization/Codec; FLAT_CODEC g field_46598 + m (I)Lcom/mojang/serialization/Codec; flatCodec a method_57973 + p 0 maxSize + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/network/chat/Component; method_54165 a method_54165 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; createCodec a method_54166 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54167 a method_54167 + m (Ljava/util/List;)Lnet/minecraft/network/chat/MutableComponent; createFromList a method_54169 + p 0 components + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/MapEncoder; method_54171 a method_54171 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/datafixers/util/Either; method_54172 a method_54172 + m ([Lnet/minecraft/util/StringRepresentable;)[Lnet/minecraft/util/StringRepresentable; method_54173 a method_54173 + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; createLegacyComponentMatcher a method_54174 + p 0 types + p 1 codecGetter + p 2 typeGetter + p 3 typeFieldName + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/network/chat/Component; method_54175 b method_54175 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_54177 b method_54177 + m ()V + m ()V +c net/minecraft/network/chat/ComponentSerialization$1 xb$1 net/minecraft/class_8824$1 + f Lcom/mojang/serialization/Codec; val$stringCodec a field_49669 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/network/chat/Component;)Lcom/mojang/datafixers/util/Pair; method_57974 a method_57974 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Lcom/google/gson/JsonElement;)Lcom/mojang/serialization/DataResult; method_57975 a method_57975 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DynamicOps; asJsonOps a method_57976 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_57977 a method_57977 + m (Lnet/minecraft/network/chat/Component;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_57978 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/network/chat/ComponentSerialization$FuzzyCodec xb$a net/minecraft/class_8824$class_8825 + f Ljava/util/List; codecs a field_46599 + f Ljava/util/function/Function; encoderGetter b field_46600 + m ()Ljava/lang/String; method_54180 a method_54180 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapCodec;)Ljava/util/stream/Stream; method_54181 a method_54181 + m (Ljava/util/List;Ljava/util/function/Function;)V + p 1 codecs + p 2 encoderGetter +c net/minecraft/network/chat/ComponentSerialization$StrictEither xb$b net/minecraft/class_8824$class_8912 + f Ljava/lang/String; typeFieldName a field_46914 + f Lcom/mojang/serialization/MapCodec; typed b field_46915 + f Lcom/mojang/serialization/MapCodec; fuzzy c field_46916 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)V + p 1 typeFieldName + p 2 typed + p 3 fuzzy +c net/minecraft/network/chat/ComponentUtils xc net/minecraft/class_2564 + f Ljava/lang/String; DEFAULT_SEPARATOR_TEXT a field_33536 + f Lnet/minecraft/network/chat/Component; DEFAULT_SEPARATOR b field_33537 + f Lnet/minecraft/network/chat/Component; DEFAULT_NO_STYLE_SEPARATOR c field_33538 + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/network/chat/Component; fromMessage a method_10883 + p 0 message + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Optional;Lnet/minecraft/world/entity/Entity;I)Ljava/util/Optional; updateForEntity a method_36330 + p 0 commandSourceStack + p 1 optionalComponent + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/MutableComponent; updateForEntity a method_10881 + p 0 commandSourceStack + p 1 component + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Style;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/Style; resolveStyle a method_27663 + p 0 commandSourceStack + p 1 style + p 2 entity + p 3 recursionDepth + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; copyOnClickText a method_47523 + p 0 text + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_47524 a method_47524 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; formatList a method_10888 + p 0 elements + m (Ljava/util/Collection;Ljava/util/Optional;Ljava/util/function/Function;)Lnet/minecraft/network/chat/MutableComponent; formatList a method_36331 + p 0 elements + p 1 optionalSeparator + p 2 componentExtractor + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/network/chat/Component; formatAndSortList a method_10887 + p 0 elements + p 1 componentExtractor + m (Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; formatList a method_37112 + p 0 elements + p 1 separator + m (Ljava/util/Collection;Lnet/minecraft/network/chat/Component;Ljava/util/function/Function;)Lnet/minecraft/network/chat/MutableComponent; formatList a method_36332 + p 0 elements + p 1 separator + p 2 componentExtractor + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; wrapInSquareBrackets a method_10885 + c Wraps the text with square brackets. + p 0 toWrap + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; mergeStyles a method_10889 + c Merge the component's styles with the given Style. + p 0 component + p 1 style + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_10886 b method_10886 + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/network/chat/Component; formatList b method_10884 + p 0 elements + p 1 componentExtractor + m (Lnet/minecraft/network/chat/Component;)Z isTranslationResolvable b method_43476 + p 0 component + m ()V + m ()V +c net/minecraft/network/chat/FilterMask xd net/minecraft/class_7649 + f Lcom/mojang/serialization/Codec; CODEC a field_40837 + f Lnet/minecraft/network/chat/FilterMask; FULLY_FILTERED b field_39941 + f Lnet/minecraft/network/chat/FilterMask; PASS_THROUGH c field_39942 + f Lnet/minecraft/network/chat/Style; FILTERED_STYLE d field_40674 + f Lcom/mojang/serialization/MapCodec; PASS_THROUGH_CODEC e field_40838 + f Lcom/mojang/serialization/MapCodec; FULLY_FILTERED_CODEC f field_40839 + f Lcom/mojang/serialization/MapCodec; PARTIALLY_FILTERED_CODEC g field_40840 + f C HASH h field_39943 + f Ljava/util/BitSet; mask i field_39944 + f Lnet/minecraft/network/chat/FilterMask$Type; type j field_39945 + m ()Z isEmpty a method_45087 + m (I)V setFiltered a method_45088 + p 1 bitIndex + m (Ljava/lang/String;)Ljava/lang/String; apply a method_45089 + p 1 text + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/FilterMask; read a method_45090 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/FilterMask;)V write a method_45091 + p 0 buffer + p 1 mask + m ()Z isFullyFiltered b method_45093 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; applyWithFormatting b method_46256 + p 1 text + m ()Lnet/minecraft/network/chat/FilterMask$Type; type c method_46600 + m ()Ljava/util/BitSet; mask d method_46601 + m (Ljava/util/BitSet;Lnet/minecraft/network/chat/FilterMask$Type;)V + p 1 mask + p 2 type + m (Ljava/util/BitSet;)V + p 1 mask + m (I)V + p 1 size + m ()V +c net/minecraft/network/chat/FilterMask$Type xd$a net/minecraft/class_7649$class_7650 + f Lnet/minecraft/network/chat/FilterMask$Type; PASS_THROUGH a field_39947 + f Lnet/minecraft/network/chat/FilterMask$Type; FULLY_FILTERED b field_39948 + f Lnet/minecraft/network/chat/FilterMask$Type; PARTIALLY_FILTERED c field_39949 + f Ljava/lang/String; serializedName d field_40841 + f Ljava/util/function/Supplier; codec e field_40842 + f [Lnet/minecraft/network/chat/FilterMask$Type; $VALUES f field_39950 + m ()Lcom/mojang/serialization/MapCodec; codec a method_46602 + m ()Lcom/mojang/serialization/MapCodec; method_46603 b method_46603 + m ()Lcom/mojang/serialization/MapCodec; method_46604 d method_46604 + m ()Lcom/mojang/serialization/MapCodec; method_46605 e method_46605 + m ()[Lnet/minecraft/network/chat/FilterMask$Type; $values f method_45094 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 serializedName + p 4 codec + m ()V +c net/minecraft/network/chat/FormattedText xe net/minecraft/class_5348 + f Ljava/util/Optional; STOP_ITERATION a field_25309 + f Lnet/minecraft/network/chat/FormattedText; EMPTY b field_25310 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; of a method_29431 + p 0 text + p 1 style + m (Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_30067 a method_30067 + m (Ljava/util/List;)Lnet/minecraft/network/chat/FormattedText; composite a method_29432 + p 0 elements + m (Lnet/minecraft/network/chat/FormattedText$ContentConsumer;)Ljava/util/Optional; visit a method_27657 + p 1 acceptor + m (Lnet/minecraft/network/chat/FormattedText$StyledContentConsumer;Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; visit a method_27658 + p 1 acceptor + p 2 style + m ([Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/network/chat/FormattedText; composite a method_29433 + p 0 elements + m (Ljava/lang/String;)Lnet/minecraft/network/chat/FormattedText; of e method_29430 + p 0 text + m ()V +c net/minecraft/network/chat/FormattedText$1 xe$1 net/minecraft/class_5348$1 + m ()V +c net/minecraft/network/chat/FormattedText$2 xe$2 net/minecraft/class_5348$2 + f Ljava/lang/String; val$text c field_25311 + m (Ljava/lang/String;)V +c net/minecraft/network/chat/FormattedText$3 xe$3 net/minecraft/class_5348$3 + f Ljava/lang/String; val$text c field_25312 + f Lnet/minecraft/network/chat/Style; val$style d field_25313 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)V +c net/minecraft/network/chat/FormattedText$4 xe$4 net/minecraft/class_5348$4 + f Ljava/util/List; val$parts c field_25314 + m (Ljava/util/List;)V +c net/minecraft/network/chat/FormattedText$ContentConsumer xe$a net/minecraft/class_5348$class_5245 +c net/minecraft/network/chat/FormattedText$StyledContentConsumer xe$b net/minecraft/class_5348$class_5246 +c net/minecraft/network/chat/HoverEvent xf net/minecraft/class_2568 + f Lcom/mojang/serialization/Codec; CODEC a field_46601 + f Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; event b field_46602 + m ()Lnet/minecraft/network/chat/HoverEvent$Action; getAction a method_10892 + c Gets the action to perform when this event is raised. + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Ljava/lang/Object; getValue a method_10891 + p 1 actionType + m (Lnet/minecraft/network/chat/HoverEvent;)Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; method_54184 a method_54184 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Ljava/lang/Object;)V + p 1 action + p 2 value + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;)V + p 1 event + m ()V +c net/minecraft/network/chat/HoverEvent$Action xf$a net/minecraft/class_2568$class_5247 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_TEXT a field_24342 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_ITEM b field_24343 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_ENTITY c field_24344 + f Lcom/mojang/serialization/Codec; UNSAFE_CODEC d field_46603 + f Lcom/mojang/serialization/Codec; CODEC e field_46604 + f Ljava/lang/String; name f field_24346 + f Z allowFromServer g field_24347 + f Lcom/mojang/serialization/MapCodec; codec h field_46605 + f Lcom/mojang/serialization/MapCodec; legacyCodec i field_46606 + m ()Z isAllowedFromServer a method_27667 + c Indicates whether this event can be run from chat text. + m (Ljava/lang/Object;)Ljava/lang/Object; cast a method_27676 + p 1 parameter + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; method_57979 a method_57979 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/DataResult; filterForSerialization a method_54186 + p 0 action + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;)Ljava/lang/Object; method_54187 a method_54187 + m ()Ljava/lang/String; method_54188 b method_54188 + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; method_57980 b method_57980 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Ljava/lang/String; method_54190 b method_54190 + m ()[Lnet/minecraft/network/chat/HoverEvent$Action; method_54192 d method_54192 + m (Ljava/lang/String;ZLcom/mojang/serialization/Codec;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;)V + p 1 name + p 2 allowFromServer + p 3 codec + p 4 legacyConverter + m ()V +c net/minecraft/network/chat/HoverEvent$Action$1 xf$a$1 net/minecraft/class_2568$class_5247$1 + f Lnet/minecraft/network/chat/HoverEvent$LegacyConverter; val$legacyConverter a field_49670 + f Lnet/minecraft/network/chat/HoverEvent$Action; field_49671 b field_49671 + m ()Ljava/lang/String; method_57981 a method_57981 + m (Lcom/mojang/datafixers/util/Pair;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_57982 a method_57982 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_57983 a method_57983 + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_57984 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;)V +c net/minecraft/network/chat/HoverEvent$EntityTooltipInfo xf$b net/minecraft/class_2568$class_5248 + f Lcom/mojang/serialization/Codec; CODEC a field_46607 + f Lnet/minecraft/world/entity/EntityType; type b field_24351 + f Ljava/util/UUID; id c field_24352 + f Ljava/util/Optional; name d field_24353 + f Ljava/util/List; linesCache e field_24354 + m ()Ljava/util/List; getTooltipLines a method_27682 + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo; method_57985 a method_57985 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54193 a method_54193 + m (Ljava/lang/Exception;)Ljava/lang/String; method_54194 a method_54194 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; legacyCreate a method_54195 + p 0 name + p 1 ops + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Ljava/util/Optional; method_54196 a method_54196 + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Ljava/util/UUID; method_54197 b method_54197 + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Lnet/minecraft/world/entity/EntityType; method_54198 c method_54198 + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)V + p 1 type + p 2 id + p 3 name + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Ljava/util/Optional;)V + p 1 type + p 2 id + p 3 name + m ()V +c net/minecraft/network/chat/HoverEvent$ItemStackInfo xf$c net/minecraft/class_2568$class_5249 + f Lcom/mojang/serialization/Codec; FULL_CODEC a field_46608 + f Lcom/mojang/serialization/Codec; CODEC b field_46609 + f Lcom/mojang/serialization/Codec; SIMPLE_CODEC c field_49672 + f Lnet/minecraft/core/Holder; item d field_24355 + f I count e field_24356 + f Lnet/minecraft/core/component/DataComponentPatch; components f field_49673 + f Lnet/minecraft/world/item/ItemStack; itemStack g field_24358 + m ()Lnet/minecraft/world/item/ItemStack; getItemStack a method_27683 + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Ljava/lang/String; method_54200 a method_54200 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; legacyCreate a method_54203 + p 0 name + p 1 ops + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPatch;)V + p 1 item + p 2 count + p 3 components + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 stack + m ()V +c net/minecraft/network/chat/HoverEvent$LegacyConverter xf$d net/minecraft/class_2568$class_9341 +c net/minecraft/network/chat/HoverEvent$TypedHoverEvent xf$e net/minecraft/class_2568$class_8826 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46610 + f Lcom/mojang/serialization/MapCodec; LEGACY_CODEC b field_46611 + f Lnet/minecraft/network/chat/HoverEvent$Action; action c comp_1985 + f Ljava/lang/Object; value d comp_1986 + m ()Lnet/minecraft/network/chat/HoverEvent$Action; action a comp_1985 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/MapCodec; method_54208 a method_54208 + m ()Ljava/lang/Object; value b comp_1986 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/MapCodec; method_54209 b method_54209 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Ljava/lang/Object;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages xg net/minecraft/class_7635 + f Lcom/mojang/serialization/Codec; CODEC a field_40843 + f Lnet/minecraft/network/chat/LastSeenMessages; EMPTY b field_39883 + f I LAST_SEEN_MESSAGES_MAX_LENGTH c field_39884 + f Ljava/util/List; entries d comp_965 + m ()Ljava/util/List; entries a comp_965 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46257 + p 1 updaterOutput + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/LastSeenMessages$Packed; pack a method_46258 + p 1 signatureCache + m (Lnet/minecraft/network/chat/MessageSignatureCache;Lnet/minecraft/network/chat/MessageSignature;)Lnet/minecraft/network/chat/MessageSignature$Packed; method_46259 a method_46259 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages$Packed xg$a net/minecraft/class_7635$class_7815 + f Lnet/minecraft/network/chat/LastSeenMessages$Packed; EMPTY a field_40675 + f Ljava/util/List; entries b comp_1070 + m ()Ljava/util/List; entries a comp_1070 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_46260 + p 1 buffer + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46261 + p 1 signatureCache + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages$Update xg$b net/minecraft/class_7635$class_7636 + f I offset a comp_1071 + f Ljava/util/BitSet; acknowledged b comp_1072 + m ()I offset a comp_1071 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44983 + p 1 buffer + m ()Ljava/util/BitSet; acknowledged b comp_1072 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILjava/util/BitSet;)V +c net/minecraft/network/chat/LastSeenMessagesTracker xh net/minecraft/class_7637 + f [Lnet/minecraft/network/chat/LastSeenTrackedEntry; trackedMessages a field_40676 + f I tail b field_40677 + f I offset c field_40678 + f Lnet/minecraft/network/chat/MessageSignature; lastTrackedMessage d field_40679 + m ()I getAndClearOffset a method_46262 + m (Lnet/minecraft/network/chat/LastSeenTrackedEntry;)V addEntry a method_46263 + p 1 entry + m (Lnet/minecraft/network/chat/MessageSignature;)V ignorePending a method_46264 + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignature;Z)Z addPending a method_46265 + p 1 signature + p 2 acknowledged + m ()Lnet/minecraft/network/chat/LastSeenMessagesTracker$Update; generateAndApplyUpdate b method_46266 + m ()I offset c method_46267 + m (I)V + p 1 size +c net/minecraft/network/chat/LastSeenMessagesTracker$Update xh$a net/minecraft/class_7637$class_7816 + f Lnet/minecraft/network/chat/LastSeenMessages; lastSeen a comp_1073 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; update b comp_1074 + m ()Lnet/minecraft/network/chat/LastSeenMessages; lastSeen a comp_1073 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; update b comp_1074 + m (Lnet/minecraft/network/chat/LastSeenMessages;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V +c net/minecraft/network/chat/LastSeenMessagesValidator xi net/minecraft/class_7638 + f I lastSeenCount a field_40680 + f Lit/unimi/dsi/fastutil/objects/ObjectList; trackedMessages b field_40681 + f Lnet/minecraft/network/chat/MessageSignature; lastPendingMessage c field_40682 + m ()I trackedMessagesCount a method_46268 + m (I)Z applyOffset a method_46269 + p 1 offset + m (Lnet/minecraft/network/chat/LastSeenMessages$Update;)Ljava/util/Optional; applyUpdate a method_46270 + p 1 lastSeenUpdater + m (Lnet/minecraft/network/chat/MessageSignature;)V addPending a method_44989 + p 1 signature + m (I)V + p 1 lastSeenCount +c net/minecraft/network/chat/LastSeenTrackedEntry xj net/minecraft/class_7817 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1075 + f Z pending b comp_1076 + m ()Lnet/minecraft/network/chat/LastSeenTrackedEntry; acknowledge a method_46271 + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_1075 + m ()Z pending c comp_1076 + m (Lnet/minecraft/network/chat/MessageSignature;Z)V +c net/minecraft/network/chat/LocalChatSession xk net/minecraft/class_7818 + f Ljava/util/UUID; sessionId a comp_1077 + f Lnet/minecraft/world/entity/player/ProfileKeyPair; keyPair b comp_1078 + m ()Lnet/minecraft/network/chat/RemoteChatSession; asRemote a method_46275 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)Lnet/minecraft/network/chat/LocalChatSession; create a method_46273 + p 0 keyPair + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageChain$Encoder; createMessageEncoder a method_46274 + p 1 sender + m ()Ljava/util/UUID; sessionId b comp_1077 + m ()Lnet/minecraft/world/entity/player/ProfileKeyPair; keyPair c comp_1078 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfileKeyPair;)V +c net/minecraft/network/chat/MessageSignature xl net/minecraft/class_7469 + f Lcom/mojang/serialization/Codec; CODEC a field_40844 + f I BYTES b field_40683 + f [B bytes c comp_925 + m ()Ljava/nio/ByteBuffer; asByteBuffer a method_44994 + m (Lnet/minecraft/util/SignatureValidator;Lnet/minecraft/util/SignatureUpdater;)Z verify a method_44843 + p 1 validator + p 2 updater + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/MessageSignature; read a method_46276 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/MessageSignature;)V write a method_44845 + p 0 buffer + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/MessageSignature$Packed; pack a method_46277 + p 1 signatureCache + m ()[B bytes b comp_925 + m ([B)V + p 1 bytes + m ()V +c net/minecraft/network/chat/MessageSignature$Packed xl$a net/minecraft/class_7469$class_7819 + f I FULL_SIGNATURE a field_40684 + f I id b comp_1079 + f Lnet/minecraft/network/chat/MessageSignature; fullSignature c comp_1080 + m ()I id a comp_1079 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/MessageSignature$Packed; read a method_46278 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/MessageSignature$Packed;)V write a method_46279 + p 0 buffer + p 1 packed + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46280 + p 1 signatureCache + m ()Lnet/minecraft/network/chat/MessageSignature; fullSignature b comp_1080 + m (Lnet/minecraft/network/chat/MessageSignature;)V + p 1 fullSignature + m (I)V + p 1 id + m (ILnet/minecraft/network/chat/MessageSignature;)V +c net/minecraft/network/chat/MessageSignatureCache xm net/minecraft/class_7561 + f I NOT_FOUND a field_40845 + f I DEFAULT_CAPACITY b field_40686 + f [Lnet/minecraft/network/chat/MessageSignature; entries c field_40687 + m ()Lnet/minecraft/network/chat/MessageSignatureCache; createDefault a method_46281 + m (I)Lnet/minecraft/network/chat/MessageSignature; unpack a method_46606 + p 1 index + m (Ljava/util/ArrayDeque;)V push a method_46283 + p 1 deque + m (Ljava/util/List;)V push a method_46284 + p 1 chatMessages + m (Lnet/minecraft/network/chat/MessageSignature;)I pack a method_46607 + p 1 signature + m (Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/network/chat/MessageSignature;)V push a method_46286 + p 1 signedMessageBody + p 2 signature + m (I)V + p 1 size +c net/minecraft/network/chat/MutableComponent xn net/minecraft/class_5250 + c A Component which can have its Style and siblings modified. + f Lnet/minecraft/network/chat/ComponentContents; contents c field_39005 + f Ljava/util/List; siblings d field_39006 + f Lnet/minecraft/network/chat/Style; style e field_39007 + f Lnet/minecraft/util/FormattedCharSequence; visualOrderText f field_39008 + f Lnet/minecraft/locale/Language; decomposedWith g field_39009 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27694 + p 1 modifyFunc + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27692 + p 1 format + m (Lnet/minecraft/network/chat/ComponentContents;)Lnet/minecraft/network/chat/MutableComponent; create a method_43477 + p 0 contents + m ([Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27695 + p 1 formats + m (I)Lnet/minecraft/network/chat/MutableComponent; withColor b method_54663 + p 1 color + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; append b method_10852 + c Add the given component to this component's siblings.\n\nNote: If this component turns the text bold, that will apply to all the siblings until a later sibling turns the text something else. + p 1 sibling + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; setStyle b method_10862 + c Sets the style for this component and returns the component itself. + p 1 style + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; withStyle c method_27696 + p 1 style + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; append f method_27693 + c Add the given text to this component's siblings.\n\nNote: If this component turns the text bold, that will apply to all the siblings until a later sibling turns the text something else. + p 1 string + m (Lnet/minecraft/network/chat/ComponentContents;Ljava/util/List;Lnet/minecraft/network/chat/Style;)V + p 1 contents + p 2 siblings + p 3 style +c net/minecraft/network/chat/OutgoingChatMessage xo net/minecraft/class_7604 + m ()Lnet/minecraft/network/chat/Component; content a comp_1081 + m (Lnet/minecraft/server/level/ServerPlayer;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendToPlayer a method_45095 + p 1 player + p 2 filtered + p 3 boundType + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/OutgoingChatMessage; create a method_44857 + p 0 message +c net/minecraft/network/chat/OutgoingChatMessage$Disguised xo$a net/minecraft/class_7604$class_7606 + f Lnet/minecraft/network/chat/Component; content a comp_1081 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/network/chat/OutgoingChatMessage$Player xo$b net/minecraft/class_7604$class_7607 + f Lnet/minecraft/network/chat/PlayerChatMessage; message a comp_1082 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; message b comp_1082 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V +c net/minecraft/network/chat/PlayerChatMessage xp net/minecraft/class_7471 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_40846 + f Ljava/time/Duration; MESSAGE_EXPIRES_AFTER_SERVER b field_39786 + f Ljava/time/Duration; MESSAGE_EXPIRES_AFTER_CLIENT c field_39787 + f Lnet/minecraft/network/chat/SignedMessageLink; link d comp_1083 + f Lnet/minecraft/network/chat/MessageSignature; signature e comp_1084 + f Lnet/minecraft/network/chat/SignedMessageBody; signedBody f comp_928 + f Lnet/minecraft/network/chat/Component; unsignedContent g comp_830 + f Lnet/minecraft/network/chat/FilterMask; filterMask h comp_981 + f Ljava/util/UUID; SYSTEM_SENDER i field_40688 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; removeUnsignedContent a method_44607 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V method_46289 a method_46289 + m (Lnet/minecraft/util/SignatureUpdater$Output;Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/SignedMessageBody;)V updateSignature a method_46290 + p 0 output + p 1 link + p 2 body + m (Lnet/minecraft/util/SignatureValidator;)Z verify a method_44858 + p 1 validator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46608 a method_46608 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; system a method_45041 + p 0 content + m (Ljava/time/Instant;)Z hasExpiredServer a method_44747 + p 1 timestamp + m (Ljava/util/UUID;)Z hasSignatureFrom a method_45040 + p 1 uuid + m (Ljava/util/UUID;Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; unsigned a method_45098 + p 0 sender + p 1 content + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/PlayerChatMessage; withUnsignedContent a method_44863 + p 1 message + m (Lnet/minecraft/network/chat/FilterMask;)Lnet/minecraft/network/chat/PlayerChatMessage; filter a method_45097 + p 1 mask + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/Optional; method_46609 a method_46609 + m (Lnet/minecraft/network/chat/SignedMessageLink;Ljava/util/Optional;Lnet/minecraft/network/chat/SignedMessageBody;Ljava/util/Optional;Lnet/minecraft/network/chat/FilterMask;)Lnet/minecraft/network/chat/PlayerChatMessage; method_46610 a method_46610 + m (Z)Lnet/minecraft/network/chat/PlayerChatMessage; filter a method_45099 + p 1 shouldFilter + m ()Lnet/minecraft/network/chat/PlayerChatMessage; removeSignature b method_55625 + m (Ljava/time/Instant;)Z hasExpiredClient b method_44748 + p 1 timestamp + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/Optional; method_46611 b method_46611 + m ()Ljava/lang/String; signedContent c method_44862 + m ()Lnet/minecraft/network/chat/Component; decoratedContent d method_46291 + m ()Ljava/time/Instant; timeStamp e method_44864 + m ()J salt f method_44865 + m ()Ljava/util/UUID; sender g method_46292 + m ()Z isSystem h method_46293 + m ()Z hasSignature i method_46294 + m ()Z isFullyFiltered j method_45100 + m ()Lnet/minecraft/network/chat/SignedMessageLink; link k comp_1083 + m ()Lnet/minecraft/network/chat/MessageSignature; signature l comp_1084 + m ()Lnet/minecraft/network/chat/SignedMessageBody; signedBody m comp_928 + m ()Lnet/minecraft/network/chat/Component; unsignedContent n comp_830 + m ()Lnet/minecraft/network/chat/FilterMask; filterMask o comp_981 + m ()Lnet/minecraft/network/chat/Component; method_46295 p method_46295 + m (Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/FilterMask;)V + m ()V +c net/minecraft/network/chat/RemoteChatSession xq net/minecraft/class_7822 + f Ljava/util/UUID; sessionId a comp_1085 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; profilePublicKey b comp_1086 + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; asData a method_46298 + m (Ljava/time/Duration;)Lnet/minecraft/network/chat/SignedMessageValidator; createMessageValidator a method_46296 + p 1 duration + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageChain$Decoder; createMessageDecoder a method_46297 + p 1 sender + m ()Z hasExpired b method_51466 + m (Ljava/time/Duration;)Z method_53506 b method_53506 + m ()Ljava/util/UUID; sessionId c comp_1085 + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey; profilePublicKey d comp_1086 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey;)V +c net/minecraft/network/chat/RemoteChatSession$Data xq$a net/minecraft/class_7822$class_7823 + f Ljava/util/UUID; sessionId a comp_1087 + f Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; profilePublicKey b comp_1088 + m ()Ljava/util/UUID; sessionId a comp_1087 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/util/SignatureValidator;)Lnet/minecraft/network/chat/RemoteChatSession; validate a method_46300 + p 1 profile + p 2 signatureValidator + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/RemoteChatSession$Data; read a method_46301 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/RemoteChatSession$Data;)V write a method_46303 + p 0 buffer + p 1 data + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; profilePublicKey b comp_1088 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)V +c net/minecraft/network/chat/SignableCommand xr net/minecraft/class_7644 + f Ljava/util/List; arguments a comp_974 + m ()Ljava/util/List; arguments a comp_974 + m (Lcom/mojang/brigadier/ParseResults;)Z hasSignableArguments a method_58774 + p 0 parseResults + m (Ljava/lang/String;)Lnet/minecraft/network/chat/SignableCommand$Argument; getArgument a method_58775 + p 1 argument + m (Ljava/lang/String;Lcom/mojang/brigadier/context/CommandContextBuilder;)Ljava/util/List; collectArguments a method_45044 + p 0 key + p 1 contextBuilder + m (Lcom/mojang/brigadier/ParseResults;)Lnet/minecraft/network/chat/SignableCommand; of b method_45043 + p 0 results + m (Ljava/util/List;)V +c net/minecraft/network/chat/SignableCommand$Argument xr$a net/minecraft/class_7644$class_7645 + f Lcom/mojang/brigadier/tree/ArgumentCommandNode; node a comp_975 + f Ljava/lang/String; value b comp_1089 + m ()Ljava/lang/String; name a method_45046 + m ()Lcom/mojang/brigadier/tree/ArgumentCommandNode; node b comp_975 + m ()Ljava/lang/String; value c comp_1089 + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;Ljava/lang/String;)V +c net/minecraft/network/chat/SignedMessageBody xs net/minecraft/class_7608 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_40847 + f Ljava/lang/String; content b comp_929 + f Ljava/time/Instant; timeStamp c comp_930 + f J salt d comp_931 + f Lnet/minecraft/network/chat/LastSeenMessages; lastSeen e comp_932 + m ()Ljava/lang/String; content a comp_929 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46304 + p 1 output + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46612 a method_46612 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/SignedMessageBody; unsigned a method_46305 + p 0 content + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/SignedMessageBody$Packed; pack a method_46306 + p 1 signatureCache + m ()Ljava/time/Instant; timeStamp b comp_930 + m ()J salt c comp_931 + m ()Lnet/minecraft/network/chat/LastSeenMessages; lastSeen d comp_932 + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessages;)V + m ()V +c net/minecraft/network/chat/SignedMessageBody$Packed xs$a net/minecraft/class_7608$class_7824 + f Ljava/lang/String; content a comp_1090 + f Ljava/time/Instant; timeStamp b comp_1091 + f J salt c comp_1092 + f Lnet/minecraft/network/chat/LastSeenMessages$Packed; lastSeen d comp_1093 + m ()Ljava/lang/String; content a comp_1090 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_46307 + p 1 buffer + m (Lnet/minecraft/network/chat/LastSeenMessages;)Lnet/minecraft/network/chat/SignedMessageBody; method_46308 a method_46308 + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46309 + p 1 signatureCache + m ()Ljava/time/Instant; timeStamp b comp_1091 + m ()J salt c comp_1092 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Packed; lastSeen d comp_1093 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessages$Packed;)V +c net/minecraft/network/chat/SignedMessageChain xt net/minecraft/class_7610 + f Lorg/slf4j/Logger; LOGGER a field_40691 + f Lnet/minecraft/network/chat/SignedMessageLink; nextLink b field_40692 + f Ljava/time/Instant; lastTimeStamp c field_47703 + m (Lnet/minecraft/util/Signer;)Lnet/minecraft/network/chat/SignedMessageChain$Encoder; encoder a method_44880 + p 1 signer + m (Lnet/minecraft/util/Signer;Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/MessageSignature; method_46311 a method_46311 + m (Lnet/minecraft/world/entity/player/ProfilePublicKey;)Lnet/minecraft/network/chat/SignedMessageChain$Decoder; decoder a method_44874 + p 1 publicKey + m (Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/util/SignatureUpdater$Output;)V method_46313 a method_46313 + m (Ljava/util/UUID;Ljava/util/UUID;)V + p 1 sender + p 2 sessionId + m ()V +c net/minecraft/network/chat/SignedMessageChain$1 xt$1 net/minecraft/class_7610$1 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; val$profilePublicKey a field_50253 + f Lnet/minecraft/util/SignatureValidator; val$signatureValidator b field_50254 + f Lnet/minecraft/network/chat/SignedMessageChain; field_50255 c field_50255 + m (Lnet/minecraft/network/chat/SignedMessageChain;Lnet/minecraft/world/entity/player/ProfilePublicKey;Lnet/minecraft/util/SignatureValidator;)V +c net/minecraft/network/chat/SignedMessageChain$DecodeException xt$a net/minecraft/class_7610$class_7825 + f Lnet/minecraft/network/chat/Component; MISSING_PROFILE_KEY a field_50256 + f Lnet/minecraft/network/chat/Component; CHAIN_BROKEN b field_50257 + f Lnet/minecraft/network/chat/Component; EXPIRED_PROFILE_KEY c field_50258 + f Lnet/minecraft/network/chat/Component; INVALID_SIGNATURE d field_50259 + f Lnet/minecraft/network/chat/Component; OUT_OF_ORDER_CHAT e field_50260 + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/network/chat/SignedMessageChain$Decoder xt$b net/minecraft/class_7610$class_7611 + m (Ljava/util/function/BooleanSupplier;Ljava/util/UUID;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/PlayerChatMessage; method_46315 a method_46315 +c net/minecraft/network/chat/SignedMessageChain$Encoder xt$c net/minecraft/class_7610$class_7612 + f Lnet/minecraft/network/chat/SignedMessageChain$Encoder; UNSIGNED a field_40694 + m (Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/MessageSignature; method_46316 a method_46316 + m ()V +c net/minecraft/network/chat/SignedMessageLink xu net/minecraft/class_7826 + f Lcom/mojang/serialization/Codec; CODEC a field_40849 + f I index b comp_1094 + f Ljava/util/UUID; sender c comp_1095 + f Ljava/util/UUID; sessionId d comp_1096 + m ()Lnet/minecraft/network/chat/SignedMessageLink; advance a method_46317 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46318 + p 1 output + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46614 a method_46614 + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageLink; unsigned a method_46319 + p 0 sender + m (Ljava/util/UUID;Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageLink; root a method_46320 + p 0 sender + p 1 sessionId + m (Lnet/minecraft/network/chat/SignedMessageLink;)Z isDescendantOf a method_46321 + p 1 other + m ()I index b comp_1094 + m ()Ljava/util/UUID; sender c comp_1095 + m ()Ljava/util/UUID; sessionId d comp_1096 + m (ILjava/util/UUID;Ljava/util/UUID;)V + m ()V +c net/minecraft/network/chat/SignedMessageValidator xv net/minecraft/class_7615 + f Lorg/slf4j/Logger; LOGGER a field_45957 + f Lnet/minecraft/network/chat/SignedMessageValidator; ACCEPT_UNSIGNED b field_40695 + f Lnet/minecraft/network/chat/SignedMessageValidator; REJECT_ALL c field_40696 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/PlayerChatMessage; method_55626 a method_55626 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/PlayerChatMessage; updateAndValidate updateAndValidate method_45048 + p 1 message + m ()V +c net/minecraft/network/chat/SignedMessageValidator$KeyBased xv$a net/minecraft/class_7615$class_7616 + f Lnet/minecraft/util/SignatureValidator; validator d field_39822 + f Ljava/util/function/BooleanSupplier; expired e field_45958 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastMessage f field_40697 + f Z isChainValid g field_39821 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z validateChain a method_44996 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z validate b method_53509 + p 1 message + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/function/BooleanSupplier;)V + p 1 validator + p 2 expired +c net/minecraft/network/chat/Style xw net/minecraft/class_2583 + c A Style for {@link Component}.\nStores color, text formatting (bold, etc.) as well as possible HoverEvent/ClickEvent. + f Lnet/minecraft/network/chat/Style; EMPTY a field_24360 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_FONT b field_24359 + f Lnet/minecraft/network/chat/TextColor; color c field_11855 + f Ljava/lang/Boolean; bold d field_11856 + f Ljava/lang/Boolean; italic e field_11852 + f Ljava/lang/Boolean; underlined f field_11851 + f Ljava/lang/Boolean; strikethrough g field_11857 + f Ljava/lang/Boolean; obfuscated h field_11861 + f Lnet/minecraft/network/chat/ClickEvent; clickEvent i field_11853 + f Lnet/minecraft/network/chat/HoverEvent; hoverEvent j field_11858 + f Ljava/lang/String; insertion k field_11859 + f Lnet/minecraft/resources/ResourceLocation; font l field_24361 + m ()Lnet/minecraft/network/chat/TextColor; getColor a method_10973 + m (I)Lnet/minecraft/network/chat/Style; withColor a method_36139 + p 1 rgb + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Style; withFont a method_27704 + p 1 fontId + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withBold a method_10982 + p 1 bold + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Style; withInsertion a method_10975 + p 1 insertion + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/network/chat/Style; create a method_43870 + p 0 color + p 1 bold + p 2 italic + p 3 underlined + p 4 strikethrough + p 5 obfuscated + p 6 clickEvent + p 7 hoverEvent + p 8 insertion + p 9 font + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; withColor a method_10977 + p 1 formatting + m (Lnet/minecraft/network/chat/ClickEvent;)Lnet/minecraft/network/chat/Style; withClickEvent a method_10958 + p 1 clickEvent + m (Lnet/minecraft/network/chat/HoverEvent;)Lnet/minecraft/network/chat/Style; withHoverEvent a method_10949 + p 1 hoverEvent + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; applyTo a method_27702 + c Merges the style with another one. If either style is empty the other will be returned. If a value already exists on the current style it will not be overridden. + p 1 style + m (Lnet/minecraft/network/chat/Style;Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/network/chat/Style; checkEmptyAfterChange a method_54210 + p 0 style + p 1 oldValue + p 2 newValue + m (Lnet/minecraft/network/chat/TextColor;)Lnet/minecraft/network/chat/Style; withColor a method_27703 + p 1 color + m ([Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyFormats a method_27705 + p 1 formats + m ()Z isBold b method_10984 + c Whether text of this ChatStyle should be in bold. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withItalic b method_10978 + p 1 italic + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyFormat b method_27706 + p 1 formatting + m ()Z isItalic c method_10966 + c Whether text of this ChatStyle should be italicized. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withUnderlined c method_30938 + p 1 underlined + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyLegacyFormat c method_27707 + p 1 formatting + m ()Z isStrikethrough d method_10986 + c Whether to format text of this ChatStyle using strikethrough. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withStrikethrough d method_36140 + p 1 strikethrough + m ()Z isUnderlined e method_10965 + c Whether text of this ChatStyle should be underlined. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withObfuscated e method_36141 + p 1 obfuscated + m ()Z isObfuscated f method_10987 + c Whether text of this ChatStyle should be obfuscated. + m ()Z isEmpty g method_10967 + c Whether this style is empty (inherits everything from the parent). + m ()Lnet/minecraft/network/chat/ClickEvent; getClickEvent h method_10970 + c The effective chat click event. + m ()Lnet/minecraft/network/chat/HoverEvent; getHoverEvent i method_10969 + c The effective chat hover event. + m ()Ljava/lang/String; getInsertion j method_10955 + c Get the text to be inserted into Chat when the component is shift-clicked + m ()Lnet/minecraft/resources/ResourceLocation; getFont k method_27708 + c The font to use for this Style + m (Lnet/minecraft/network/chat/TextColor;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Lnet/minecraft/network/chat/ClickEvent;Lnet/minecraft/network/chat/HoverEvent;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V + p 1 color + p 2 bold + p 3 italic + p 4 underlined + p 5 strikethrough + p 6 obfuscated + p 7 clickEvent + p 8 hoverEvent + p 9 insertion + p 10 font + m ()V +c net/minecraft/network/chat/Style$1 xw$1 net/minecraft/class_2583$1 + f [I $SwitchMap$net$minecraft$ChatFormatting a field_11751 + m ()V +c net/minecraft/network/chat/Style$1Collector xw$a net/minecraft/class_2583$class_7418 + f Ljava/lang/StringBuilder; val$result a field_39010 + f Z isNotFirst b field_39012 + m ()V prependSeparator a method_43478 + m (Ljava/lang/String;Ljava/lang/Boolean;)V addFlagString a method_43479 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/Object;)V addValueString a method_43480 + p 1 key + p 2 value + m (Lnet/minecraft/network/chat/Style;Ljava/lang/StringBuilder;)V +c net/minecraft/network/chat/Style$Serializer xw$b net/minecraft/class_2583$class_2584 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_46612 + f Lcom/mojang/serialization/Codec; CODEC b field_46613 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_STREAM_CODEC c field_48541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54211 a method_54211 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54212 a method_54212 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54213 b method_54213 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54214 c method_54214 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54215 d method_54215 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54216 e method_54216 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54217 f method_54217 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54218 g method_54218 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54219 h method_54219 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54220 i method_54220 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54221 j method_54221 + m ()V + m ()V +c net/minecraft/network/chat/SubStringSource xx net/minecraft/class_5492 + f Ljava/lang/String; plainText a field_26626 + f Ljava/util/List; charStyles b field_26627 + f Lit/unimi/dsi/fastutil/ints/Int2IntFunction; reverseCharModifier c field_26628 + m ()Ljava/lang/String; getPlainText a method_30939 + m (I)I method_36142 a method_36142 + m (IIZ)Ljava/util/List; substring a method_30940 + p 1 fromIndex + p 2 toIndex + p 3 reversed + m (Ljava/lang/String;)Ljava/lang/String; method_36143 a method_36143 + m (Ljava/lang/StringBuilder;Ljava/util/List;ILnet/minecraft/network/chat/Style;I)Z method_30941 a method_30941 + m (Ljava/lang/StringBuilder;Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_30942 a method_30942 + m (Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/network/chat/SubStringSource; create a method_36144 + p 0 formattedText + m (Lnet/minecraft/network/chat/FormattedText;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/chat/SubStringSource; create a method_30943 + p 0 formattedText + p 1 reverseCharModifier + p 2 textTransformer + m (Ljava/lang/String;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)V + p 1 plainText + p 2 charStyles + p 3 reverseCharModifier +c net/minecraft/network/chat/TextColor xy net/minecraft/class_5251 + f Lcom/mojang/serialization/Codec; CODEC a field_39242 + f Ljava/lang/String; CUSTOM_COLOR_PREFIX b field_33291 + f Ljava/util/Map; LEGACY_FORMAT_TO_COLOR c field_24362 + f Ljava/util/Map; NAMED_COLORS d field_24363 + f I value e field_24364 + f Ljava/lang/String; name f field_24365 + m ()I getValue a method_27716 + m (I)Lnet/minecraft/network/chat/TextColor; fromRgb a method_27717 + p 0 color + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; parseColor a method_27719 + p 0 color + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/TextColor; fromLegacyFormat a method_27718 + p 0 formatting + m (Lnet/minecraft/network/chat/TextColor;)Ljava/lang/String; method_27720 a method_27720 + m ()Ljava/lang/String; serialize b method_27721 + m (Ljava/lang/String;)Ljava/lang/String; method_54222 b method_54222 + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/TextColor; method_27722 b method_27722 + m ()Ljava/lang/String; formatValue c method_27723 + m (Ljava/lang/String;)Ljava/lang/String; method_54223 c method_54223 + m (Ljava/lang/String;)Ljava/lang/String; method_54224 d method_54224 + m (ILjava/lang/String;)V + p 1 value + p 2 name + m (I)V + p 1 value + m ()V +c net/minecraft/network/chat/ThrowingComponent xz net/minecraft/class_7437 + f Lnet/minecraft/network/chat/Component; component a field_39084 + m ()Lnet/minecraft/network/chat/Component; getComponent a method_43626 + m (Lnet/minecraft/network/chat/Component;)V + p 1 component + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)V + p 1 component + p 2 cause +c net/minecraft/network/chat/contents/BlockDataSource ya net/minecraft/class_2575 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46614 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46615 + f Ljava/lang/String; posPattern d comp_733 + f Lnet/minecraft/commands/arguments/coordinates/Coordinates; compiledPos e comp_734 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54226 a method_54226 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; compilePos a method_16121 + p 0 posPattern + m ()Ljava/lang/String; posPattern b comp_733 + m ()Lnet/minecraft/commands/arguments/coordinates/Coordinates; compiledPos c comp_734 + m (Ljava/lang/String;)V + p 1 posPattern + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/coordinates/Coordinates;)V + m ()V +c net/minecraft/network/chat/contents/DataSource yb net/minecraft/class_7419 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46616 + m ()Lnet/minecraft/network/chat/contents/DataSource$Type; type a method_54225 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; getData a method_10916 + p 1 source + m ()V +c net/minecraft/network/chat/contents/DataSource$Type yb$a net/minecraft/class_7419$class_8827 + f Lcom/mojang/serialization/MapCodec; codec a comp_1987 + f Ljava/lang/String; id b comp_1988 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1987 + m ()Ljava/lang/String; id b comp_1988 + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/String;)V +c net/minecraft/network/chat/contents/EntityDataSource yc net/minecraft/class_2576 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46617 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46618 + f Ljava/lang/String; selectorPattern d comp_735 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; compiledSelector e comp_736 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54227 a method_54227 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; compileSelector a method_10923 + p 0 selectorPattern + m ()Ljava/lang/String; selectorPattern b comp_735 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; compiledSelector c comp_736 + m (Ljava/lang/String;)V + p 1 selectorPattern + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + m ()V +c net/minecraft/network/chat/contents/KeybindContents yd net/minecraft/class_2572 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46619 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46620 + f Ljava/lang/String; name c field_11767 + f Ljava/util/function/Supplier; nameResolver d field_11768 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54228 a method_54228 + m (Lnet/minecraft/network/chat/contents/KeybindContents;)Ljava/lang/String; method_54229 a method_54229 + m ()Ljava/lang/String; getName b method_10901 + m ()Lnet/minecraft/network/chat/Component; getNestedComponent c method_27691 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/network/chat/contents/KeybindResolver ye net/minecraft/class_7420 + f Ljava/util/function/Function; keyResolver a field_39013 + m (Ljava/lang/String;)Ljava/util/function/Supplier; method_43481 a method_43481 + m (Ljava/util/function/Function;)V setKeyResolver a method_43482 + p 0 keyResolver + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_43483 b method_43483 + m ()V + m ()V +c net/minecraft/network/chat/contents/NbtContents yf net/minecraft/class_2574 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46621 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46622 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; compiledNbtPath c field_11779 + f Lorg/slf4j/Logger; LOGGER d field_11777 + f Z interpreting e field_11778 + f Ljava/util/Optional; separator f field_33539 + f Ljava/lang/String; nbtPathPattern g field_11776 + f Lnet/minecraft/network/chat/contents/DataSource; dataSource h field_39014 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54230 a method_54230 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/lang/String;)Ljava/util/stream/Stream; method_10917 a method_10917 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; compileNbtPath a method_10919 + p 0 nbtPathPattern + m (Ljava/util/stream/Stream;)Lnet/minecraft/network/chat/MutableComponent; method_36333 a method_36333 + m (Ljava/util/stream/Stream;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_36334 a method_36334 + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/stream/Stream; method_10918 a method_10918 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_15880 a method_15880 + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_36335 a method_36335 + m ()Ljava/lang/String; getNbtPath b method_10920 + m ()Z isInterpreting c method_10921 + m ()Ljava/util/Optional; getSeparator d method_43484 + m ()Lnet/minecraft/network/chat/contents/DataSource; getDataSource e method_43485 + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)V + p 1 nbtPathPattern + p 2 interpreting + p 3 separator + p 4 dataSource + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)V + p 1 nbtPathPattern + p 2 compiledNbtPath + p 3 interpreting + p 4 separator + p 5 dataSource + m ()V +c net/minecraft/network/chat/contents/PlainTextContents yg net/minecraft/class_8828 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46623 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46624 + f Lnet/minecraft/network/chat/contents/PlainTextContents; EMPTY c field_46625 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54231 a method_54231 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/contents/PlainTextContents; create a method_54232 + p 0 text + m ()Ljava/lang/String; text b comp_737 + m ()V +c net/minecraft/network/chat/contents/PlainTextContents$1 yg$1 net/minecraft/class_8828$1 + m ()V +c net/minecraft/network/chat/contents/PlainTextContents$LiteralContents yg$a net/minecraft/class_8828$class_2585 + f Ljava/lang/String; text d comp_737 + m (Ljava/lang/String;)V +c net/minecraft/network/chat/contents/ScoreContents yh net/minecraft/class_2578 + f Lcom/mojang/serialization/MapCodec; INNER_CODEC a field_46626 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46627 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE c field_46628 + f Ljava/lang/String; name d field_11787 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector e field_11786 + f Ljava/lang/String; objective f field_11785 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54233 a method_54233 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/scores/ScoreHolder; findTargetName a method_27699 + p 1 source + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/MutableComponent; getScore a method_27700 + p 1 scoreHolder + p 2 source + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parseSelector a method_27701 + p 0 selector + m ()Ljava/lang/String; getName b method_10930 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector c method_36137 + m ()Ljava/lang/String; getObjective d method_10928 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 name + p 2 objective + m ()V +c net/minecraft/network/chat/contents/SelectorContents yi net/minecraft/class_2579 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46629 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46630 + f Ljava/util/Optional; separator c field_33540 + f Lorg/slf4j/Logger; LOGGER d field_11791 + f Ljava/lang/String; pattern e field_11789 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector f field_11790 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54234 a method_54234 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parseSelector a method_43486 + p 0 selector + m ()Ljava/lang/String; getPattern b method_10932 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector c method_36138 + m ()Ljava/util/Optional; getSeparator d method_36339 + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 pattern + p 2 separator + m ()V +c net/minecraft/network/chat/contents/StorageDataSource yj net/minecraft/class_4616 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46631 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46632 + f Lnet/minecraft/resources/ResourceLocation; id d comp_738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54235 a method_54235 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_738 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/network/chat/contents/TranslatableContents yk net/minecraft/class_2588 + f [Ljava/lang/Object; NO_ARGS a field_24367 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46633 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE c field_46634 + f Lcom/mojang/serialization/Codec; PRIMITIVE_ARG_CODEC d field_46635 + f Lcom/mojang/serialization/Codec; ARG_CODEC e field_46636 + f Lnet/minecraft/network/chat/FormattedText; TEXT_PERCENT f field_24368 + f Lnet/minecraft/network/chat/FormattedText; TEXT_NULL g field_24369 + f Ljava/lang/String; key h field_11876 + f Ljava/lang/String; fallback i field_41875 + f [Ljava/lang/Object; args j field_11875 + f Lnet/minecraft/locale/Language; decomposedWith k field_25317 + f Ljava/util/List; decomposedParts l field_11877 + c The discrete elements that make up this component. For example, this would be ["Prefix, ", "FirstArg", "SecondArg", " again ", "SecondArg", " and ", "FirstArg", " lastly ", "ThirdArg", " and also ", "FirstArg", " again!"] for "translation.test.complex" (see en_us.json) + f Ljava/util/regex/Pattern; FORMAT_PATTERN m field_11872 + m (I)Lnet/minecraft/network/chat/FormattedText; getArgument a method_29434 + p 1 index + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Object; method_54236 a method_54236 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54237 a method_54237 + m (Ljava/lang/Object;)Z isAllowedPrimitiveArgument a method_54238 + p 0 input + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/network/chat/contents/TranslatableContents; create a method_54239 + p 0 key + p 1 fallback + p 2 args + m (Ljava/lang/String;Ljava/util/function/Consumer;)V decomposeTemplate a method_11024 + p 1 formatTemplate + p 2 consumer + m (Ljava/util/List;)[Ljava/lang/Object; method_54240 a method_54240 + m (Ljava/util/Optional;)[Ljava/lang/Object; adjustArgs a method_54241 + p 0 args + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/Object; method_54242 a method_54242 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/util/Optional; method_54243 a method_54243 + m ([Ljava/lang/Object;)Ljava/util/Optional; adjustArgs a method_54244 + p 0 args + m ()Ljava/lang/String; getKey b method_11022 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; filterAllowedArguments b method_54245 + p 0 input + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/util/Optional; method_54246 b method_54246 + m ()Ljava/lang/String; getFallback c method_48323 + m (Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_54247 c method_54247 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/lang/String; method_54248 c method_54248 + m ()[Ljava/lang/Object; getArgs d method_11023 + m (Ljava/lang/Object;)Ljava/lang/Object; method_54249 d method_54249 + m ()V decompose e method_11025 + c Ensures that all the children are up to date with the most recent translation mapping. + m ()Ljava/lang/String; method_54250 f method_54250 + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V + p 1 key + p 2 fallback + p 3 args + m ()V +c net/minecraft/network/chat/contents/TranslatableFormatException yl net/minecraft/class_2590 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;Ljava/lang/String;)V + p 1 contents + p 2 error + m (Lnet/minecraft/network/chat/contents/TranslatableContents;I)V + p 1 component + p 2 invalidIndex + m (Lnet/minecraft/network/chat/contents/TranslatableContents;Ljava/lang/Throwable;)V + p 1 contents + p 2 cause +c net/minecraft/network/chat/contents/package-info ym net/minecraft/class_7421 +c net/minecraft/network/chat/numbers/BlankFormat yn net/minecraft/class_9020 + f Lnet/minecraft/network/chat/numbers/BlankFormat; INSTANCE a field_47557 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE b field_47558 + m ()V + m ()V +c net/minecraft/network/chat/numbers/BlankFormat$1 yn$1 net/minecraft/class_9020$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47559 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48542 + m ()V + m ()V +c net/minecraft/network/chat/numbers/FixedFormat yo net/minecraft/class_9021 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE a field_47560 + f Lnet/minecraft/network/chat/Component; value b field_47561 + m (Lnet/minecraft/network/chat/Component;)V + p 1 value + m ()V +c net/minecraft/network/chat/numbers/FixedFormat$1 yo$1 net/minecraft/class_9021$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47562 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48543 + m (Lnet/minecraft/network/chat/numbers/FixedFormat;)Lnet/minecraft/network/chat/Component; method_56361 a method_56361 + m (Lnet/minecraft/network/chat/numbers/FixedFormat;)Lnet/minecraft/network/chat/Component; method_55465 b method_55465 + m ()V + m ()V +c net/minecraft/network/chat/numbers/NumberFormat yp net/minecraft/class_9022 + m ()Lnet/minecraft/network/chat/numbers/NumberFormatType; type a method_55456 + m (I)Lnet/minecraft/network/chat/MutableComponent; format a method_55457 + p 1 number +c net/minecraft/network/chat/numbers/NumberFormatType yq net/minecraft/class_9023 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_55458 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56360 +c net/minecraft/network/chat/numbers/NumberFormatTypes yr net/minecraft/class_9024 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47563 + f Lcom/mojang/serialization/Codec; CODEC b field_47564 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_48544 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC d field_48545 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/network/chat/numbers/NumberFormatType; bootstrap a method_55466 + p 0 regsitry + m ()V + m ()V +c net/minecraft/network/chat/numbers/StyledFormat ys net/minecraft/class_9025 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE a field_47565 + f Lnet/minecraft/network/chat/numbers/StyledFormat; NO_STYLE b field_47566 + f Lnet/minecraft/network/chat/numbers/StyledFormat; SIDEBAR_DEFAULT c field_47567 + f Lnet/minecraft/network/chat/numbers/StyledFormat; PLAYER_LIST_DEFAULT d field_47568 + f Lnet/minecraft/network/chat/Style; style e field_47569 + m (Lnet/minecraft/network/chat/Style;)V + p 1 style + m ()V +c net/minecraft/network/chat/numbers/StyledFormat$1 ys$1 net/minecraft/class_9025$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47570 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48546 + m (Lnet/minecraft/network/chat/numbers/StyledFormat;)Lnet/minecraft/network/chat/Style; method_56362 a method_56362 + m (Lnet/minecraft/network/chat/numbers/StyledFormat;)Lnet/minecraft/network/chat/Style; method_55472 b method_55472 + m ()V + m ()V +c net/minecraft/network/chat/numbers/package-info yt net/minecraft/class_9026 +c net/minecraft/network/chat/package-info yu net/minecraft/class_6312 +c net/minecraft/network/codec/ByteBufCodecs yv net/minecraft/class_9135 + f I MAX_INITIAL_COLLECTION_SIZE a field_49674 + f Lnet/minecraft/network/codec/StreamCodec; BOOL b field_48547 + f Lnet/minecraft/network/codec/StreamCodec; BYTE c field_48548 + f Lnet/minecraft/network/codec/StreamCodec; SHORT d field_48549 + f Lnet/minecraft/network/codec/StreamCodec; UNSIGNED_SHORT e field_51470 + f Lnet/minecraft/network/codec/StreamCodec; INT f field_49675 + f Lnet/minecraft/network/codec/StreamCodec; VAR_INT g field_48550 + f Lnet/minecraft/network/codec/StreamCodec; VAR_LONG h field_48551 + f Lnet/minecraft/network/codec/StreamCodec; FLOAT i field_48552 + f Lnet/minecraft/network/codec/StreamCodec; DOUBLE j field_48553 + f Lnet/minecraft/network/codec/StreamCodec; BYTE_ARRAY k field_48987 + f Lnet/minecraft/network/codec/StreamCodec; STRING_UTF8 l field_48554 + f Lnet/minecraft/network/codec/StreamCodec; TAG m field_48555 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_TAG n field_49676 + f Lnet/minecraft/network/codec/StreamCodec; COMPOUND_TAG o field_48556 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_COMPOUND_TAG p field_49677 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_COMPOUND_TAG q field_48557 + f Lnet/minecraft/network/codec/StreamCodec; VECTOR3F r field_48558 + f Lnet/minecraft/network/codec/StreamCodec; QUATERNIONF s field_48559 + f Lnet/minecraft/network/codec/StreamCodec; GAME_PROFILE_PROPERTIES t field_49678 + f Lnet/minecraft/network/codec/StreamCodec; GAME_PROFILE u field_49679 + m ()Lnet/minecraft/network/codec/StreamCodec$CodecOperation; list a method_56363 + m (I)Lnet/minecraft/network/codec/StreamCodec; byteArray a method_56895 + p 0 maxSize + m (ILnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57986 a method_57986 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; registry a method_56365 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; registry a method_56366 + p 0 registryKey + p 1 idGetter + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; holder a method_56367 + p 0 registryKey + p 1 codec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecTrusted a method_57987 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lnet/minecraft/nbt/Tag; method_56369 a method_56369 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; fromCodec a method_57988 + p 0 codec + p 1 accounterSupplier + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; method_56370 a method_56370 + m (Lio/netty/buffer/ByteBuf;I)I readCount a method_57989 + p 0 buffer + p 1 maxSize + m (Lio/netty/buffer/ByteBuf;II)V writeCount a method_57990 + p 0 buffer + p 1 count + p 2 maxSize + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_56373 a method_56373 + m (Ljava/util/function/IntFunction;)Lnet/minecraft/network/codec/StreamCodec$CodecOperation; collection a method_56374 + p 0 factory + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)Lnet/minecraft/network/codec/StreamCodec; idMapper a method_56375 + p 0 idLookup + p 1 idGetter + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; collection a method_56376 + p 0 factory + p 1 codec + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;I)Lnet/minecraft/network/codec/StreamCodec; collection a method_57991 + p 0 factory + p 1 codec + p 2 maxSize + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; map a method_56377 + p 0 factory + p 1 keyCodec + p 2 valueCodec + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;I)Lnet/minecraft/network/codec/StreamCodec; map a method_57992 + p 0 factory + p 1 keyCodec + p 2 valueCodec + p 3 maxSize + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; tagCodec a method_56378 + p 0 accounter + m (Lnet/minecraft/core/IdMap;)Lnet/minecraft/network/codec/StreamCodec; idMapper a method_56371 + p 0 idMap + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/IdMap; method_56372 a method_56372 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/Tag; method_57993 a method_57993 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/CompoundTag; method_57994 a method_57994 + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_56381 a method_56381 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; optional a method_56382 + p 0 codec + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; either a method_57995 + p 0 leftCodec + p 1 rightCodec + m ()Lnet/minecraft/nbt/NbtAccounter; method_57996 b method_57996 + m (I)Lnet/minecraft/network/codec/StreamCodec; stringUtf8 b method_56364 + p 0 maxLength + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; holderRegistry b method_56383 + p 0 registryKey + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodec b method_56368 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistries b method_57997 + p 0 codec + p 1 accounterSupplier + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56384 b method_56384 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; compoundTagCodec b method_57998 + p 0 accounterSupplier + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56385 b method_56385 + m ()Lnet/minecraft/nbt/NbtAccounter; method_57999 c method_57999 + m (I)Lnet/minecraft/network/codec/StreamCodec$CodecOperation; list c method_58000 + p 0 maxSize + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; holderSet c method_58001 + p 0 registryKey + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistriesTrusted c method_58002 + p 0 codec + m ()Lnet/minecraft/nbt/NbtAccounter; method_58003 d method_58003 + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistries d method_56896 + p 0 codec + m ()Lnet/minecraft/nbt/NbtAccounter; method_58004 e method_58004 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$1 yv$1 net/minecraft/class_9135$1 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Boolean; decode a method_56386 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Boolean;)V encode a method_56387 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$10 yv$2 net/minecraft/class_9135$2 + f I val$maxSize a field_51478 + m (Lio/netty/buffer/ByteBuf;)[B decode a method_56403 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;[B)V encode a method_56404 + p 1 buffer + p 2 value + m (I)V +c net/minecraft/network/codec/ByteBufCodecs$11 yv$3 net/minecraft/class_9135$3 + m (Lio/netty/buffer/ByteBuf;)[B decode a method_59799 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;[B)V encode a method_59800 + p 1 buffer + p 2 value + m ()V +c net/minecraft/network/codec/ByteBufCodecs$12 yv$4 net/minecraft/class_9135$4 + f I val$maxStringLength a field_48988 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; decode a method_56897 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V encode a method_56898 + m (I)V +c net/minecraft/network/codec/ByteBufCodecs$13 yv$5 net/minecraft/class_9135$5 + f Ljava/util/function/Supplier; val$accounter a field_48565 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/nbt/Tag; decode a method_56405 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/Tag;)V encode a method_56406 + m (Ljava/util/function/Supplier;)V +c net/minecraft/network/codec/ByteBufCodecs$14 yv$6 net/minecraft/class_9135$6 + f Lnet/minecraft/network/codec/StreamCodec; val$tagCodec a field_49696 + f Lcom/mojang/serialization/Codec; val$codec b field_48989 + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_56899 a method_56899 + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_56900 a method_56900 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/lang/Object; decode a method_56901 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Ljava/lang/Object;)V encode a method_56902 + m (Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/network/codec/ByteBufCodecs$15 yv$7 net/minecraft/class_9135$7 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56411 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56412 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$16 yv$8 net/minecraft/class_9135$8 + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3f; decode a method_58022 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3f;)V encode a method_58023 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$17 yv$9 net/minecraft/class_9135$9 + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionf; decode a method_59801 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionf;)V encode a method_59802 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$18 yv$10 net/minecraft/class_9135$10 + f Lnet/minecraft/network/codec/StreamCodec; val$original a field_49697 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56415 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56416 + m (Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$19 yv$11 net/minecraft/class_9135$11 + f I val$maxSize a field_49682 + f Ljava/util/function/IntFunction; val$constructor b field_49685 + f Lnet/minecraft/network/codec/StreamCodec; val$elementCodec c field_51471 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Collection; decode a method_58005 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Collection;)V encode a method_58006 + m (ILjava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$2 yv$12 net/minecraft/class_9135$12 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Byte; decode a method_56391 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Byte;)V encode a method_56392 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$20 yv$13 net/minecraft/class_9135$13 + f I val$maxSize a field_49680 + f Lnet/minecraft/network/codec/StreamCodec; val$keyCodec b field_51472 + f Lnet/minecraft/network/codec/StreamCodec; val$valueCodec c field_51473 + f Ljava/util/function/IntFunction; val$constructor d field_48571 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Map; decode a method_56417 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Map;)V encode a method_56418 + m (Lnet/minecraft/network/codec/StreamCodec;Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;Ljava/lang/Object;)V method_59793 a method_59793 + m (ILnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/IntFunction;)V +c net/minecraft/network/codec/ByteBufCodecs$21 yv$14 net/minecraft/class_9135$14 + f Lnet/minecraft/network/codec/StreamCodec; val$leftCodec a field_49686 + f Lnet/minecraft/network/codec/StreamCodec; val$rightCodec b field_49687 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/datafixers/util/Either; decode a method_58008 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/datafixers/util/Either;)V encode a method_58009 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V method_58010 a method_58010 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V method_58011 b method_58011 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$22 yv$15 net/minecraft/class_9135$15 + f Ljava/util/function/IntFunction; val$byId a field_48572 + f Ljava/util/function/ToIntFunction; val$toId b field_48573 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56420 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56421 + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)V +c net/minecraft/network/codec/ByteBufCodecs$23 yv$16 net/minecraft/class_9135$16 + f Ljava/util/function/Function; val$mapExtractor a field_48574 + f Lnet/minecraft/resources/ResourceKey; val$registryKey b field_48575 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/lang/Object; decode a method_56422 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Ljava/lang/Object;)V encode a method_56423 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/IdMap; getRegistryOrThrow b method_56424 + p 1 buffer + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/network/codec/ByteBufCodecs$24 yv$17 net/minecraft/class_9135$17 + f Lnet/minecraft/resources/ResourceKey; val$registryKey a field_49688 + f Lnet/minecraft/network/codec/StreamCodec; val$directCodec b field_49690 + f I DIRECT_HOLDER_ID c field_51474 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/Holder; decode a method_58012 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/Holder;)V encode a method_58013 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/IdMap; getRegistryOrThrow b method_59794 + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$25 yv$18 net/minecraft/class_9135$18 + f Lnet/minecraft/resources/ResourceKey; val$registryKey a field_51475 + f I NAMED_SET b field_51476 + f Lnet/minecraft/network/codec/StreamCodec; holderCodec c field_51477 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/HolderSet; decode a method_59795 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/HolderSet;)V encode a method_59796 + m (Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/network/codec/ByteBufCodecs$26 yv$19 net/minecraft/class_9135$19 + f I MAX_PROPERTY_NAME_LENGTH a field_49691 + f I MAX_PROPERTY_VALUE_LENGTH b field_49692 + f I MAX_PROPERTY_SIGNATURE_LENGTH c field_49693 + f I MAX_PROPERTIES d field_49694 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/authlib/properties/PropertyMap; decode a method_58014 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/authlib/properties/PropertyMap;)V encode a method_58015 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V method_58016 a method_58016 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; method_58017 b method_58017 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$27 yv$20 net/minecraft/class_9135$20 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/authlib/GameProfile; decode a method_58018 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/authlib/GameProfile;)V encode a method_58019 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$28 yv$21 net/minecraft/class_9135$21 + f [I $SwitchMap$net$minecraft$core$Holder$Kind a field_48563 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$3 yv$22 net/minecraft/class_9135$22 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Short; decode a method_56393 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Short;)V encode a method_56394 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$4 yv$23 net/minecraft/class_9135$23 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56395 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56396 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$5 yv$24 net/minecraft/class_9135$24 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56397 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56398 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$6 yv$25 net/minecraft/class_9135$25 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56399 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56400 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$7 yv$26 net/minecraft/class_9135$26 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Long; decode a method_56401 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Long;)V encode a method_56402 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$8 yv$27 net/minecraft/class_9135$27 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Float; decode a method_58020 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Float;)V encode a method_58021 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$9 yv$28 net/minecraft/class_9135$28 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Double; decode a method_59797 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Double;)V encode a method_59798 + m ()V +c net/minecraft/network/codec/IdDispatchCodec yw net/minecraft/class_9136 + f I UNKNOWN_TYPE a field_48576 + f Ljava/util/function/Function; typeGetter b field_48577 + f Ljava/util/List; byId c field_48578 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; toId d field_48579 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56425 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56426 + p 1 buffer + p 2 value + m (Ljava/util/function/Function;)Lnet/minecraft/network/codec/IdDispatchCodec$Builder; builder a method_56427 + p 0 typeGetter + m (Ljava/util/function/Function;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 typeGetter + p 2 byId + p 3 toId +c net/minecraft/network/codec/IdDispatchCodec$Builder yw$a net/minecraft/class_9136$class_9137 + f Ljava/util/List; entries a field_48580 + f Ljava/util/function/Function; typeGetter b field_48581 + m ()Lnet/minecraft/network/codec/IdDispatchCodec; build a method_56428 + m (Ljava/lang/Object;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/IdDispatchCodec$Builder; add a method_56429 + p 1 type + p 2 serializer + m (Ljava/util/function/Function;)V + p 1 typeGetter +c net/minecraft/network/codec/IdDispatchCodec$Entry yw$b net/minecraft/class_9136$class_9138 + f Lnet/minecraft/network/codec/StreamCodec; serializer a comp_2228 + f Ljava/lang/Object; type b comp_2229 + m ()Lnet/minecraft/network/codec/StreamCodec; serializer a comp_2228 + m ()Ljava/lang/Object; type b comp_2229 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V +c net/minecraft/network/codec/StreamCodec yx net/minecraft/class_9139 + m ()Lnet/minecraft/network/codec/StreamCodec; cast a method_56430 + m (Ljava/lang/Object;)Lnet/minecraft/network/codec/StreamCodec; unit a method_56431 + p 0 expectedValue + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; map a method_56432 + p 1 factory + p 2 getter + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/codec/StreamCodec; recursive a method_58024 + p 0 modifier + m (Lnet/minecraft/network/codec/StreamCodec$CodecOperation;)Lnet/minecraft/network/codec/StreamCodec; apply a method_56433 + p 1 operation + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56434 + p 0 codec + p 1 getter + p 2 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/BiFunction;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56435 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function3;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56436 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function4;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56905 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function5;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56906 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 codec5 + p 9 getter5 + p 10 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function6;)Lnet/minecraft/network/codec/StreamCodec; composite a method_58025 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 codec5 + p 9 getter5 + p 10 codec6 + p 11 getter6 + p 12 factory + m (Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; of a method_56437 + p 0 encoder + p 1 decoder + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; ofMember a method_56438 + p 0 encoder + p 1 decoder + m (Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; mapStream b method_56439 + p 1 bufferFactory + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; dispatch b method_56440 + p 1 keyGetter + p 2 codecGetter +c net/minecraft/network/codec/StreamCodec$1 yx$1 net/minecraft/class_9139$1 + f Lnet/minecraft/network/codec/StreamDecoder; val$decoder a field_48582 + f Lnet/minecraft/network/codec/StreamEncoder; val$encoder b field_48583 + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamEncoder;)V +c net/minecraft/network/codec/StreamCodec$10 yx$2 net/minecraft/class_9139$2 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48991 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48992 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_48993 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_48994 + f Lcom/mojang/datafixers/util/Function4; val$constructor e field_48995 + f Ljava/util/function/Function; val$getter1 f field_48996 + f Ljava/util/function/Function; val$getter2 g field_48997 + f Ljava/util/function/Function; val$getter3 h field_48998 + f Ljava/util/function/Function; val$getter4 i field_48999 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function4;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$11 yx$3 net/minecraft/class_9139$3 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_49000 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_49001 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_49002 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_49003 + f Lnet/minecraft/network/codec/StreamCodec; val$codec5 e field_49004 + f Lcom/mojang/datafixers/util/Function5; val$constructor f field_49005 + f Ljava/util/function/Function; val$getter1 g field_49006 + f Ljava/util/function/Function; val$getter2 h field_49007 + f Ljava/util/function/Function; val$getter3 i field_49008 + f Ljava/util/function/Function; val$getter4 j field_49009 + f Ljava/util/function/Function; val$getter5 k field_49010 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function5;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$12 yx$4 net/minecraft/class_9139$4 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_49698 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_49699 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_49700 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_49701 + f Lnet/minecraft/network/codec/StreamCodec; val$codec5 e field_49702 + f Lnet/minecraft/network/codec/StreamCodec; val$codec6 f field_49703 + f Lcom/mojang/datafixers/util/Function6; val$constructor g field_49704 + f Ljava/util/function/Function; val$getter1 h field_49705 + f Ljava/util/function/Function; val$getter2 i field_49706 + f Ljava/util/function/Function; val$getter3 j field_49707 + f Ljava/util/function/Function; val$getter4 k field_49708 + f Ljava/util/function/Function; val$getter5 l field_49709 + f Ljava/util/function/Function; val$getter6 m field_49710 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function6;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$13 yx$5 net/minecraft/class_9139$5 + f Ljava/util/function/UnaryOperator; val$factory a field_49711 + f Ljava/util/function/Supplier; inner b field_49712 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/codec/StreamCodec; method_58026 b method_58026 + m (Ljava/util/function/UnaryOperator;)V +c net/minecraft/network/codec/StreamCodec$2 yx$6 net/minecraft/class_9139$6 + f Lnet/minecraft/network/codec/StreamDecoder; val$decoder a field_48584 + f Lnet/minecraft/network/codec/StreamMemberEncoder; val$encoder b field_48585 + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamMemberEncoder;)V +c net/minecraft/network/codec/StreamCodec$3 yx$7 net/minecraft/class_9139$7 + f Ljava/lang/Object; val$instance a field_48586 + m (Ljava/lang/Object;)V +c net/minecraft/network/codec/StreamCodec$4 yx$8 net/minecraft/class_9139$8 + f Ljava/util/function/Function; val$to a field_48587 + f Ljava/util/function/Function; val$from b field_48588 + f Lnet/minecraft/network/codec/StreamCodec; field_48589 c field_48589 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$5 yx$9 net/minecraft/class_9139$9 + f Ljava/util/function/Function; val$operation a field_48590 + f Lnet/minecraft/network/codec/StreamCodec; field_48591 b field_48591 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56441 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56442 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$CodecOperation yx$a net/minecraft/class_9139$class_9140 +c net/minecraft/network/codec/StreamCodec$6 yx$10 net/minecraft/class_9139$10 + f Ljava/util/function/Function; val$codec a field_48592 + f Ljava/util/function/Function; val$type b field_48593 + f Lnet/minecraft/network/codec/StreamCodec; field_48594 c field_48594 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$7 yx$11 net/minecraft/class_9139$11 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48595 + f Ljava/util/function/Function; val$constructor b field_48596 + f Ljava/util/function/Function; val$getter1 c field_48597 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$8 yx$12 net/minecraft/class_9139$12 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48598 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48599 + f Ljava/util/function/BiFunction; val$constructor c field_48600 + f Ljava/util/function/Function; val$getter1 d field_48601 + f Ljava/util/function/Function; val$getter2 e field_48602 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$9 yx$13 net/minecraft/class_9139$13 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48603 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48604 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_48605 + f Lcom/mojang/datafixers/util/Function3; val$constructor d field_48606 + f Ljava/util/function/Function; val$getter1 e field_48607 + f Ljava/util/function/Function; val$getter2 f field_48608 + f Ljava/util/function/Function; val$getter3 g field_48609 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function3;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamDecoder yy net/minecraft/class_9141 +c net/minecraft/network/codec/StreamEncoder yz net/minecraft/class_9142 +c net/minecraft/network/codec/StreamMemberEncoder za net/minecraft/class_9143 +c net/minecraft/network/codec/package-info zb net/minecraft/class_9144 +c net/minecraft/network/package-info zc net/minecraft/class_6313 +c net/minecraft/network/protocol/BundleDelimiterPacket zd net/minecraft/class_8037 + m ()V +c net/minecraft/network/protocol/BundlePacket ze net/minecraft/class_8038 + f Ljava/lang/Iterable; packets a field_41876 + m ()Ljava/lang/Iterable; subPackets b method_48324 + m (Ljava/lang/Iterable;)V + p 1 packets +c net/minecraft/network/protocol/BundlerInfo zf net/minecraft/class_8039 + f I BUNDLE_SIZE_LIMIT a field_41878 + m (Lnet/minecraft/network/protocol/Packet;)Lnet/minecraft/network/protocol/BundlerInfo$Bundler; startPacketBundling a method_48326 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/Consumer;)V unbundlePacket a method_48327 + p 1 packet + p 2 consumer + m (Lnet/minecraft/network/protocol/PacketType;Ljava/util/function/Function;Lnet/minecraft/network/protocol/BundleDelimiterPacket;)Lnet/minecraft/network/protocol/BundlerInfo; createForPacket a method_48325 + p 0 type + p 1 bundler + p 2 packet +c net/minecraft/network/protocol/BundlerInfo$1 zf$1 net/minecraft/class_8039$1 + f Lnet/minecraft/network/protocol/PacketType; val$bundlePacketType b field_48610 + f Lnet/minecraft/network/protocol/BundleDelimiterPacket; val$delimiterPacket c field_48611 + f Ljava/util/function/Function; val$constructor d field_48612 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/protocol/BundleDelimiterPacket;Ljava/util/function/Function;)V +c net/minecraft/network/protocol/BundlerInfo$1$1 zf$1$1 net/minecraft/class_8039$1$1 + f Lnet/minecraft/network/protocol/BundlerInfo$1; field_41883 a field_41883 + f Ljava/util/List; bundlePackets b field_41884 + m (Lnet/minecraft/network/protocol/BundlerInfo$1;)V +c net/minecraft/network/protocol/BundlerInfo$Bundler zf$a net/minecraft/class_8039$class_8040 + m (Lnet/minecraft/network/protocol/Packet;)Lnet/minecraft/network/protocol/Packet; addPacket a method_48328 + p 1 packet +c net/minecraft/network/protocol/Packet zg net/minecraft/class_2596 + m ()Lnet/minecraft/network/protocol/PacketType; type a method_55846 + m (Lnet/minecraft/network/PacketListener;)V handle a method_11054 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56443 + p 0 encoder + p 1 decoder + m ()Z isSkippable c method_11051 + c Whether decoding errors will be ignored for this packet. + m ()Z isTerminal d method_55943 +c net/minecraft/network/protocol/PacketFlow zh net/minecraft/class_2598 + c The direction of packets. + f Lnet/minecraft/network/protocol/PacketFlow; SERVERBOUND a field_11941 + f Lnet/minecraft/network/protocol/PacketFlow; CLIENTBOUND b field_11942 + f Ljava/lang/String; id c field_48613 + f [Lnet/minecraft/network/protocol/PacketFlow; $VALUES d field_11940 + m ()Lnet/minecraft/network/protocol/PacketFlow; getOpposite a method_36146 + m ()Ljava/lang/String; id b method_56444 + m ()[Lnet/minecraft/network/protocol/PacketFlow; $values c method_36947 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/network/protocol/PacketType zi net/minecraft/class_9145 + f Lnet/minecraft/network/protocol/PacketFlow; flow a comp_2230 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2231 + m ()Lnet/minecraft/network/protocol/PacketFlow; flow a comp_2230 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2231 + m (Lnet/minecraft/network/protocol/PacketFlow;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/PacketUtils zj net/minecraft/class_2600 + f Lorg/slf4j/Logger; LOGGER a field_20318 + m (Ljava/lang/Exception;Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;)Lnet/minecraft/ReportedException; makeReportedException a method_59854 + p 0 exception + p 1 packet + p 2 packetListener + m (Lnet/minecraft/CrashReport;Lnet/minecraft/network/PacketListener;Lnet/minecraft/network/protocol/Packet;)V fillCrashReport a method_59803 + p 0 crashReport + p 1 packetListener + p 2 packet + m (Lnet/minecraft/network/PacketListener;Lnet/minecraft/network/protocol/Packet;)V method_11072 a method_11072 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59804 a method_59804 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/server/level/ServerLevel;)V ensureRunningOnSameThread a method_11073 + c Ensures that the given packet is handled on the main thread. If the current thread is not the main thread, this method\nthrows {@link net.minecraft.server.RunningOnDifferentThreadException}, which is caught and ignored in the outer call ({@link net.minecraft.network.Connection#channelRead0(io.netty.channel.ChannelHandlerContext, net.minecraft.network.protocol.Packet)}). Additionally, it then re-schedules the packet to be handled on the main thread,\nwhich will then end up back here, but this time on the main thread. + p 0 packet + p 1 processor + p 2 level + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/util/thread/BlockableEventLoop;)V ensureRunningOnSameThread a method_11074 + c Ensures that the given packet is handled on the main thread. If the current thread is not the main thread, this method\nthrows {@link net.minecraft.server.RunningOnDifferentThreadException}, which is caught and ignored in the outer call ({@link net.minecraft.network.Connection#channelRead0(io.netty.channel.ChannelHandlerContext, net.minecraft.network.protocol.Packet)}). Additionally, it then re-schedules the packet to be handled on the main thread,\nwhich will then end up back here, but this time on the main thread. + p 0 packet + p 1 processor + p 2 executor + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59805 b method_59805 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59806 c method_59806 + m ()V + m ()V +c net/minecraft/network/protocol/ProtocolCodecBuilder zk net/minecraft/class_9146 + f Lnet/minecraft/network/codec/IdDispatchCodec$Builder; dispatchBuilder a field_48614 + f Lnet/minecraft/network/protocol/PacketFlow; flow b field_48615 + m ()Lnet/minecraft/network/codec/StreamCodec; build a method_56445 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/protocol/ProtocolCodecBuilder; add a method_56446 + p 1 packetType + p 2 codec + m (Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 flow +c net/minecraft/network/protocol/ProtocolInfoBuilder zl net/minecraft/class_9147 + f Lnet/minecraft/network/ConnectionProtocol; protocol a field_48616 + f Lnet/minecraft/network/protocol/PacketFlow; flow b field_48617 + f Ljava/util/List; codecs c field_48618 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d field_48619 + m ()Lnet/minecraft/network/ProtocolInfo$Unbound; buildUnbound a method_56447 + m (Ljava/util/function/Function;)Lnet/minecraft/network/ProtocolInfo; build a method_56449 + p 1 bufferFactory + m (Ljava/util/function/Function;Ljava/util/List;)Lnet/minecraft/network/codec/StreamCodec; buildPacketCodec a method_56450 + p 1 bufferFactory + p 2 codecs + m (Lnet/minecraft/network/ConnectionProtocol;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; serverboundProtocol a method_56451 + p 0 protocol + p 1 setup + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; protocol a method_56452 + p 0 protocol + p 1 flow + p 2 setup + m (Lnet/minecraft/network/protocol/PacketType;Ljava/util/function/Function;Lnet/minecraft/network/protocol/BundleDelimiterPacket;)Lnet/minecraft/network/protocol/ProtocolInfoBuilder; withBundlePacket a method_56453 + p 1 type + p 2 bundler + p 3 packet + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/protocol/ProtocolInfoBuilder; addPacket a method_56454 + p 1 type + p 2 serializer + m (Lnet/minecraft/network/ConnectionProtocol;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; clientboundProtocol b method_56455 + p 0 protocol + p 1 setup + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 protocol + p 2 flow +c net/minecraft/network/protocol/ProtocolInfoBuilder$1 zl$1 net/minecraft/class_9147$1 + f Ljava/util/List; val$codecs a field_52285 + f Lnet/minecraft/network/protocol/BundlerInfo; val$bundlerInfo b field_52286 + f Lnet/minecraft/network/protocol/ProtocolInfoBuilder; field_52287 c field_52287 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;Ljava/util/List;Lnet/minecraft/network/protocol/BundlerInfo;)V +c net/minecraft/network/protocol/ProtocolInfoBuilder$CodecEntry zl$a net/minecraft/class_9147$class_9148 + f Lnet/minecraft/network/protocol/PacketType; type a comp_2232 + f Lnet/minecraft/network/codec/StreamCodec; serializer b comp_2233 + m ()Lnet/minecraft/network/protocol/PacketType; type a comp_2232 + m (Lnet/minecraft/network/protocol/ProtocolCodecBuilder;Ljava/util/function/Function;)V addToBuilder a method_56459 + p 1 codecBuilder + p 2 bufferFactory + m ()Lnet/minecraft/network/codec/StreamCodec; serializer b comp_2233 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/protocol/ProtocolInfoBuilder$Implementation zl$b net/minecraft/class_9147$class_9149 + f Lnet/minecraft/network/ConnectionProtocol; id a comp_2234 + f Lnet/minecraft/network/protocol/PacketFlow; flow b comp_2235 + f Lnet/minecraft/network/codec/StreamCodec; codec c comp_2236 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d comp_2237 + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/protocol/BundlerInfo;)V +c net/minecraft/network/protocol/common/ClientCommonPacketListener zm net/minecraft/class_8705 + m (Lnet/minecraft/network/protocol/common/ClientboundCustomPayloadPacket;)V handleCustomPayload a method_52780 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundCustomReportDetailsPacket;)V handleCustomReportDetails a method_60883 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundDisconnectPacket;)V handleDisconnect a method_52781 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundKeepAlivePacket;)V handleKeepAlive a method_52782 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundPingPacket;)V handlePing a method_52783 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundResourcePackPopPacket;)V handleResourcePackPop a method_55512 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundResourcePackPushPacket;)V handleResourcePackPush a method_52784 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundServerLinksPacket;)V handleServerLinks a method_60884 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundStoreCookiePacket;)V handleStoreCookie a method_56149 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundTransferPacket;)V handleTransfer a method_56150 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundUpdateTagsPacket;)V handleUpdateTags a method_11126 + p 1 packet +c net/minecraft/network/protocol/common/ClientboundCustomPayloadPacket zn net/minecraft/class_2658 + f Lnet/minecraft/network/codec/StreamCodec; GAMEPLAY_STREAM_CODEC a field_48620 + f Lnet/minecraft/network/codec/StreamCodec; CONFIG_STREAM_CODEC b field_48621 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload c comp_1646 + f I MAX_PAYLOAD_SIZE d field_33326 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56460 a method_56460 + m (Ljava/util/ArrayList;)V method_58270 a method_58270 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_53024 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1646 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56461 b method_56461 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundCustomReportDetailsPacket zo net/minecraft/class_9814 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52185 + f Ljava/util/Map; details b comp_2858 + f I MAX_DETAIL_KEY_LENGTH c field_52186 + f I MAX_DETAIL_VALUE_LENGTH d field_52187 + f I MAX_DETAIL_COUNT e field_52188 + f Lnet/minecraft/network/codec/StreamCodec; DETAILS_STREAM_CODEC f field_52189 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_60929 + m ()Ljava/util/Map; details b comp_2858 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundDisconnectPacket zp net/minecraft/class_2661 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48622 + f Lnet/minecraft/network/chat/Component; reason b comp_2325 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11467 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; reason b comp_2325 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m ()V +c net/minecraft/network/protocol/common/ClientboundKeepAlivePacket zq net/minecraft/class_2670 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48623 + f J id b field_12211 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56463 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11518 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()J getId b method_11517 + m (J)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ClientboundPingPacket zr net/minecraft/class_6373 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48624 + f I id b field_33751 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56464 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_36949 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I getId b method_36950 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ClientboundResourcePackPopPacket zs net/minecraft/class_9053 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48625 + f Ljava/util/Optional; id b comp_2157 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56465 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_55582 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/Optional; id b comp_2157 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundResourcePackPushPacket zt net/minecraft/class_2720 + f I MAX_HASH_LENGTH a field_33340 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48626 + f Ljava/util/UUID; id c comp_2158 + f Ljava/lang/String; url d comp_2159 + f Ljava/lang/String; hash e comp_2160 + f Z required f comp_2161 + f Ljava/util/Optional; prompt g comp_2162 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11774 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/UUID; id b comp_2158 + m ()Ljava/lang/String; url e comp_2159 + m ()Ljava/lang/String; hash f comp_2160 + m ()Z required g comp_2161 + m ()Ljava/util/Optional; prompt h comp_2162 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLjava/util/Optional;)V + p 1 id + p 2 url + p 3 hash + p 4 required + p 5 prompt + m ()V +c net/minecraft/network/protocol/common/ClientboundServerLinksPacket zu net/minecraft/class_9815 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52190 + f Ljava/util/List; links b comp_2859 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_60930 + m ()Ljava/util/List; links b comp_2859 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundStoreCookiePacket zv net/minecraft/class_9150 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48627 + f Lnet/minecraft/network/codec/StreamCodec; PAYLOAD_STREAM_CODEC b field_49011 + f Lnet/minecraft/resources/ResourceLocation; key c comp_2238 + f [B payload d comp_2239 + f I MAX_PAYLOAD_SIZE e field_48628 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56467 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_56468 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2238 + m ()[B payload e comp_2239 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;[B)V + m ()V +c net/minecraft/network/protocol/common/ClientboundTransferPacket zw net/minecraft/class_9151 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48629 + f Ljava/lang/String; host b comp_2240 + f I port c comp_2241 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56469 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_56470 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/lang/String; host b comp_2240 + m ()I port e comp_2241 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/ClientboundUpdateTagsPacket zx net/minecraft/class_2790 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48630 + f Ljava/util/Map; tags b field_12757 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56471 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V method_34203 a method_34203 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_12001 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/Map; getTags b method_12000 + m (Ljava/util/Map;)V + p 1 tags + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/CommonPacketTypes zy net/minecraft/class_9152 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_PAYLOAD a field_48631 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_REPORT_DETAILS b field_52191 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DISCONNECT c field_48632 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_KEEP_ALIVE d field_48633 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PING e field_48634 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESOURCE_PACK_POP f field_48635 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESOURCE_PACK_PUSH g field_48636 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SERVER_LINKS h field_52192 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STORE_COOKIE i field_48637 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TRANSFER j field_48638 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_TAGS k field_48639 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CLIENT_INFORMATION l field_48640 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CUSTOM_PAYLOAD m field_48641 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_KEEP_ALIVE n field_48642 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PONG o field_48643 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RESOURCE_PACK p field_48644 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56472 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56473 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/common/ServerCommonPacketListener zz net/minecraft/class_8706 + m (Lnet/minecraft/network/protocol/common/ServerboundClientInformationPacket;)V handleClientInformation a method_12069 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundCustomPayloadPacket;)V handleCustomPayload a method_52392 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundKeepAlivePacket;)V handleKeepAlive a method_52393 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundPongPacket;)V handlePong a method_52394 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket;)V handleResourcePackResponse a method_52395 + p 1 packet +c net/minecraft/network/protocol/common/ServerboundClientInformationPacket aaa net/minecraft/class_2803 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48645 + f Lnet/minecraft/server/level/ClientInformation; information b comp_1963 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56474 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12133 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/server/level/ClientInformation; information b comp_1963 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/server/level/ClientInformation;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundCustomPayloadPacket aab net/minecraft/class_2817 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48646 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1647 + f I MAX_PAYLOAD_SIZE c field_33361 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56475 a method_56475 + m (Ljava/util/ArrayList;)V method_58271 a method_58271 + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12199 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1647 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundKeepAlivePacket aac net/minecraft/class_2827 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48647 + f J id b field_12883 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56476 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12266 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()J getId b method_12267 + m (J)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ServerboundPongPacket aad net/minecraft/class_6374 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48648 + f I id b field_33752 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56477 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_36959 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I getId b method_36960 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ServerboundResourcePackPacket aae net/minecraft/class_2856 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48649 + f Ljava/util/UUID; id b comp_2163 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; action c comp_2164 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56478 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12409 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/UUID; id b comp_2163 + m ()Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; action e comp_2164 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action aae$a net/minecraft/class_2856$class_2857 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; SUCCESSFULLY_LOADED a field_13017 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DECLINED b field_13018 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; FAILED_DOWNLOAD c field_13015 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; ACCEPTED d field_13016 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DOWNLOADED e field_47704 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; INVALID_URL f field_47667 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; FAILED_RELOAD g field_47668 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DISCARDED h field_47669 + f [Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; $VALUES i field_13019 + m ()Z isTerminal a method_55627 + m ()[Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; $values b method_36961 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/BeeDebugPayload aaf net/minecraft/class_8707 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48650 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48651 + f Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo; beeInfo c comp_1648 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53028 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo; beeInfo b comp_1648 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo aaf$a net/minecraft/class_8707$class_5243 + f Ljava/util/UUID; uuid a comp_1649 + f I id b comp_1650 + f Lnet/minecraft/world/phys/Vec3; pos c comp_1651 + f Lnet/minecraft/world/level/pathfinder/Path; path d comp_1652 + f Lnet/minecraft/core/BlockPos; hivePos e comp_1653 + f Lnet/minecraft/core/BlockPos; flowerPos f comp_1654 + f I travelTicks g comp_1655 + f Ljava/util/Set; goals h comp_1656 + f Ljava/util/List; blacklistedHives i comp_1657 + m ()Ljava/lang/String; generateName a method_53029 + m (Lnet/minecraft/core/BlockPos;)Z hasHive a method_27649 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53030 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Path;)V method_53031 a method_53031 + m ()Ljava/util/UUID; uuid b comp_1649 + m ()I id c comp_1650 + m ()Lnet/minecraft/world/phys/Vec3; pos d comp_1651 + m ()Lnet/minecraft/world/level/pathfinder/Path; path e comp_1652 + m ()Lnet/minecraft/core/BlockPos; hivePos f comp_1653 + m ()Lnet/minecraft/core/BlockPos; flowerPos g comp_1654 + m ()I travelTicks h comp_1655 + m ()Ljava/util/Set; goals i comp_1656 + m ()Ljava/util/List; blacklistedHives j comp_1657 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/pathfinder/Path;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ILjava/util/Set;Ljava/util/List;)V +c net/minecraft/network/protocol/common/custom/BrainDebugPayload aag net/minecraft/class_8708 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48652 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48653 + f Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump; brainDump c comp_1658 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56480 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump; brainDump b comp_1658 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V + m ()V +c net/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump aag$a net/minecraft/class_8708$class_4232 + f Ljava/util/UUID; uuid a comp_1659 + f I id b comp_1660 + f Ljava/lang/String; name c comp_1661 + f Ljava/lang/String; profession d comp_1662 + f I xp e comp_1663 + f F health f comp_1664 + f F maxHealth g comp_1665 + f Lnet/minecraft/world/phys/Vec3; pos h comp_1666 + f Ljava/lang/String; inventory i comp_1667 + f Lnet/minecraft/world/level/pathfinder/Path; path j comp_1668 + f Z wantsGolem k comp_1669 + f I angerLevel l comp_1670 + f Ljava/util/List; activities m comp_1671 + f Ljava/util/List; behaviors n comp_1672 + f Ljava/util/List; memories o comp_1673 + f Ljava/util/List; gossips p comp_1674 + f Ljava/util/Set; pois q comp_1675 + f Ljava/util/Set; potentialPois r comp_1676 + m ()Ljava/util/UUID; uuid a comp_1659 + m (Lnet/minecraft/core/BlockPos;)Z hasPoi a method_23151 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53032 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Path;)V method_53033 a method_53033 + m ()I id b comp_1660 + m (Lnet/minecraft/core/BlockPos;)Z hasPotentialPoi b method_29388 + p 1 pos + m ()Ljava/lang/String; name c comp_1661 + m ()Ljava/lang/String; profession d comp_1662 + m ()I xp e comp_1663 + m ()F health f comp_1664 + m ()F maxHealth g comp_1665 + m ()Lnet/minecraft/world/phys/Vec3; pos h comp_1666 + m ()Ljava/lang/String; inventory i comp_1667 + m ()Lnet/minecraft/world/level/pathfinder/Path; path j comp_1668 + m ()Z wantsGolem k comp_1669 + m ()I angerLevel l comp_1670 + m ()Ljava/util/List; activities m comp_1671 + m ()Ljava/util/List; behaviors n comp_1672 + m ()Ljava/util/List; memories o comp_1673 + m ()Ljava/util/List; gossips p comp_1674 + m ()Ljava/util/Set; pois q comp_1675 + m ()Ljava/util/Set; potentialPois r comp_1676 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILjava/lang/String;Ljava/lang/String;IFFLnet/minecraft/world/phys/Vec3;Ljava/lang/String;Lnet/minecraft/world/level/pathfinder/Path;ZILjava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/Set;Ljava/util/Set;)V +c net/minecraft/network/protocol/common/custom/BrandPayload aah net/minecraft/class_8709 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48654 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48655 + f Ljava/lang/String; brand c comp_1677 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56481 + p 1 buffer + m ()Ljava/lang/String; brand b comp_1677 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/common/custom/BreezeDebugPayload aai net/minecraft/class_9004 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48656 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48657 + f Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo; breezeInfo c comp_2115 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56482 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo; breezeInfo b comp_2115 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo aai$a net/minecraft/class_9004$class_9005 + f Ljava/util/UUID; uuid a comp_2116 + f I id b comp_2117 + f Ljava/lang/Integer; attackTarget c comp_2118 + f Lnet/minecraft/core/BlockPos; jumpTarget d comp_2119 + m ()Ljava/lang/String; generateName a method_55325 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55326 + p 1 buffer + m ()Ljava/util/UUID; uuid b comp_2116 + m ()I id c comp_2117 + m ()Ljava/lang/Integer; attackTarget d comp_2118 + m ()Lnet/minecraft/core/BlockPos; jumpTarget e comp_2119 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILjava/lang/Integer;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload aaj net/minecraft/class_8710 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a method_56479 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider;Ljava/util/List;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56485 + p 0 fallbackProvider + p 1 typeAndCodecs + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$TypeAndCodec;)Lnet/minecraft/resources/ResourceLocation; method_56486 a method_56486 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; createType a method_56483 + p 0 id + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56484 + p 0 encoder + p 1 decoder +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$1 aaj$1 net/minecraft/class_8710$1 + f Ljava/util/Map; val$idToType a field_48658 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider; val$fallback b field_48659 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; findCodec a method_56487 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; decode a method_56488 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V writeCap a method_56489 + p 1 buffer + p 2 type + p 3 payload + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V encode a method_56490 + p 1 buffer + p 2 value + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider aaj$a net/minecraft/class_8710$class_9153 +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$Type aaj$b net/minecraft/class_8710$class_9154 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2242 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2242 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$TypeAndCodec aaj$c net/minecraft/class_8710$class_9155 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a comp_2243 + f Lnet/minecraft/network/codec/StreamCodec; codec b comp_2244 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a comp_2243 + m ()Lnet/minecraft/network/codec/StreamCodec; codec b comp_2244 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/protocol/common/custom/DiscardedPayload aak net/minecraft/class_8711 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1678 + m (ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/common/custom/DiscardedPayload; method_56491 a method_56491 + m (Lnet/minecraft/network/protocol/common/custom/DiscardedPayload;Lnet/minecraft/network/FriendlyByteBuf;)V method_56493 a method_56493 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/network/codec/StreamCodec; codec a method_56492 + p 0 id + p 1 maxSize + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_1678 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/common/custom/GameEventDebugPayload aal net/minecraft/class_8712 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48660 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48661 + f Lnet/minecraft/resources/ResourceKey; gameEventType c comp_1679 + f Lnet/minecraft/world/phys/Vec3; pos d comp_1680 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56494 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceKey; gameEventType b comp_1679 + m ()Lnet/minecraft/world/phys/Vec3; pos c comp_1680 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V + m ()V +c net/minecraft/network/protocol/common/custom/GameEventListenerDebugPayload aam net/minecraft/class_8713 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48662 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48663 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerPos c comp_1681 + f I listenerRange d comp_1682 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; listenerPos b comp_1681 + m ()I listenerRange c comp_1682 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + m ()V +c net/minecraft/network/protocol/common/custom/GameTestAddMarkerDebugPayload aan net/minecraft/class_8714 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48664 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48665 + f Lnet/minecraft/core/BlockPos; pos c comp_1683 + f I color d comp_1684 + f Ljava/lang/String; text e comp_1685 + f I durationMs f comp_1686 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56495 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1683 + m ()I color c comp_1684 + m ()Ljava/lang/String; text d comp_1685 + m ()I durationMs e comp_1686 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/GameTestClearMarkersDebugPayload aao net/minecraft/class_8715 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48666 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48667 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56496 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V + m ()V +c net/minecraft/network/protocol/common/custom/GoalDebugPayload aap net/minecraft/class_8716 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48668 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48669 + f I entityId c comp_1687 + f Lnet/minecraft/core/BlockPos; pos d comp_1688 + f Ljava/util/List; goals e comp_1689 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56497 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/GoalDebugPayload$DebugGoal;)V method_53034 a method_53034 + m ()I entityId b comp_1687 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1688 + m ()Ljava/util/List; goals d comp_1689 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/core/BlockPos;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/GoalDebugPayload$DebugGoal aap$a net/minecraft/class_8716$class_8717 + f I priority a comp_1690 + f Z isRunning b comp_1691 + f Ljava/lang/String; name c comp_1692 + m ()I priority a comp_1690 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53035 + p 1 buffer + m ()Z isRunning b comp_1691 + m ()Ljava/lang/String; name c comp_1692 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IZLjava/lang/String;)V +c net/minecraft/network/protocol/common/custom/HiveDebugPayload aaq net/minecraft/class_8718 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48670 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48671 + f Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; hiveInfo c comp_1693 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56498 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; hiveInfo b comp_1693 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo aaq$a net/minecraft/class_8718$class_8719 + f Lnet/minecraft/core/BlockPos; pos a comp_1694 + f Ljava/lang/String; hiveType b comp_1695 + f I occupantCount c comp_1696 + f I honeyLevel d comp_1697 + f Z sedated e comp_1698 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1694 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53036 + p 1 buffer + m ()Ljava/lang/String; hiveType b comp_1695 + m ()I occupantCount c comp_1696 + m ()I honeyLevel d comp_1697 + m ()Z sedated e comp_1698 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;IIZ)V +c net/minecraft/network/protocol/common/custom/NeighborUpdatesDebugPayload aar net/minecraft/class_8720 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48672 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48673 + f J time c comp_1699 + f Lnet/minecraft/core/BlockPos; pos d comp_1700 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56499 + p 1 buffer + m ()J time b comp_1699 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1700 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (JLnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/network/protocol/common/custom/PathfindingDebugPayload aas net/minecraft/class_8721 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48674 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48675 + f I entityId c comp_1701 + f Lnet/minecraft/world/level/pathfinder/Path; path d comp_1702 + f F maxNodeDistance e comp_1703 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56500 + p 1 buffer + m ()I entityId b comp_1701 + m ()Lnet/minecraft/world/level/pathfinder/Path; path c comp_1702 + m ()F maxNodeDistance d comp_1703 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/world/level/pathfinder/Path;F)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiAddedDebugPayload aat net/minecraft/class_8722 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48676 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48677 + f Lnet/minecraft/core/BlockPos; pos c comp_1704 + f Ljava/lang/String; poiType d comp_1705 + f I freeTicketCount e comp_1706 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56501 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1704 + m ()Ljava/lang/String; poiType c comp_1705 + m ()I freeTicketCount d comp_1706 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiRemovedDebugPayload aau net/minecraft/class_8723 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48678 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48679 + f Lnet/minecraft/core/BlockPos; pos c comp_1707 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56502 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1707 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiTicketCountDebugPayload aav net/minecraft/class_8724 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48680 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48681 + f Lnet/minecraft/core/BlockPos; pos c comp_1708 + f I freeTicketCount d comp_1709 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56503 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1708 + m ()I freeTicketCount c comp_1709 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;I)V + m ()V +c net/minecraft/network/protocol/common/custom/RaidsDebugPayload aaw net/minecraft/class_8725 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48682 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48683 + f Ljava/util/List; raidCenters c comp_1710 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56504 + p 1 buffer + m ()Ljava/util/List; raidCenters b comp_1710 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/StructuresDebugPayload aax net/minecraft/class_8726 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48684 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48685 + f Lnet/minecraft/resources/ResourceKey; dimension c comp_1711 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; mainBB d comp_1712 + f Ljava/util/List; pieces e comp_1713 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56505 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V writeBoundingBox a method_53037 + p 0 buffer + p 1 boundingBox + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/StructuresDebugPayload$PieceInfo;)V method_53038 a method_53038 + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_1711 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; readBoundingBox b method_53039 + p 0 buffer + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; mainBB c comp_1712 + m ()Ljava/util/List; pieces d comp_1713 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/StructuresDebugPayload$PieceInfo aax$a net/minecraft/class_8726$class_8727 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox a comp_1714 + f Z isStart b comp_1715 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox a comp_1714 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53040 + p 1 buffer + m ()Z isStart b comp_1715 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Z)V +c net/minecraft/network/protocol/common/custom/VillageSectionsDebugPayload aay net/minecraft/class_8728 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48686 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48687 + f Ljava/util/Set; villageChunks c comp_1716 + f Ljava/util/Set; notVillageChunks d comp_1717 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56506 + p 1 buffer + m ()Ljava/util/Set; villageChunks b comp_1716 + m ()Ljava/util/Set; notVillageChunks c comp_1717 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Set;Ljava/util/Set;)V + m ()V +c net/minecraft/network/protocol/common/custom/WorldGenAttemptDebugPayload aaz net/minecraft/class_8729 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48688 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48689 + f Lnet/minecraft/core/BlockPos; pos c comp_1718 + f F scale d comp_1719 + f F red e comp_1720 + f F green f comp_1721 + f F blue g comp_1722 + f F alpha h comp_1723 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56507 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1718 + m ()F scale c comp_1719 + m ()F red d comp_1720 + m ()F green e comp_1721 + m ()F blue f comp_1722 + m ()F alpha g comp_1723 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;FFFFF)V + m ()V +c net/minecraft/network/protocol/common/custom/package-info aba net/minecraft/class_8730 +c net/minecraft/network/protocol/common/package-info abb net/minecraft/class_8731 +c net/minecraft/network/protocol/configuration/ClientConfigurationPacketListener abc net/minecraft/class_8732 + m (Lnet/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket;)V handleConfigurationFinished a method_52794 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundRegistryDataPacket;)V handleRegistryData a method_52795 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundResetChatPacket;)V handleResetChat a method_58577 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundSelectKnownPacks;)V handleSelectKnownPacks a method_57045 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundUpdateEnabledFeaturesPacket;)V handleEnabledFeatures a method_52796 + p 1 packet +c net/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket abd net/minecraft/class_8733 + f Lnet/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket; INSTANCE a field_48690 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48691 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_53041 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundRegistryDataPacket abe net/minecraft/class_8734 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48692 + f Lnet/minecraft/resources/ResourceKey; registry b comp_2258 + f Ljava/util/List; entries c comp_2259 + f Lnet/minecraft/network/codec/StreamCodec; REGISTRY_KEY_STREAM_CODEC d field_48777 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_53042 + m ()Lnet/minecraft/resources/ResourceKey; registry b comp_2258 + m ()Ljava/util/List; entries e comp_2259 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundResetChatPacket abf net/minecraft/class_9448 + f Lnet/minecraft/network/protocol/configuration/ClientboundResetChatPacket; INSTANCE a field_50083 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50084 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_58578 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundSelectKnownPacks abg net/minecraft/class_9250 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49141 + f Ljava/util/List; knownPacks b comp_2356 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_57073 + m ()Ljava/util/List; knownPacks b comp_2356 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundUpdateEnabledFeaturesPacket abh net/minecraft/class_7832 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48693 + f Ljava/util/Set; features b comp_1113 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_46348 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56509 + p 1 buffer + m ()Ljava/util/Set; features b comp_1113 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Set;)V + m ()V +c net/minecraft/network/protocol/configuration/ConfigurationPacketTypes abi net/minecraft/class_9156 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_FINISH_CONFIGURATION a field_48694 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REGISTRY_DATA b field_48695 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ENABLED_FEATURES c field_48696 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SELECT_KNOWN_PACKS d field_49018 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESET_CHAT e field_50085 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_FINISH_CONFIGURATION f field_48697 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SELECT_KNOWN_PACKS g field_49019 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56510 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56511 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ConfigurationProtocols abj net/minecraft/class_9157 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52194 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48698 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52195 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48699 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56512 a method_56512 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56513 b method_56513 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ServerConfigurationPacketListener abk net/minecraft/class_8735 + m (Lnet/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket;)V handleConfigurationFinished a method_52408 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ServerboundSelectKnownPacks;)V handleSelectKnownPacks a method_56909 + p 1 packet +c net/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket abl net/minecraft/class_8736 + f Lnet/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket; INSTANCE a field_48700 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48701 + m (Lnet/minecraft/network/protocol/configuration/ServerConfigurationPacketListener;)V handle a method_53043 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ServerboundSelectKnownPacks abm net/minecraft/class_9220 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49020 + f Ljava/util/List; knownPacks b comp_2326 + m (Lnet/minecraft/network/protocol/configuration/ServerConfigurationPacketListener;)V handle a method_56910 + m ()Ljava/util/List; knownPacks b comp_2326 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/package-info abn net/minecraft/class_8737 +c net/minecraft/network/protocol/cookie/ClientCookiePacketListener abo net/minecraft/class_9087 + m (Lnet/minecraft/network/protocol/cookie/ClientboundCookieRequestPacket;)V handleRequestCookie a method_55845 + p 1 packet +c net/minecraft/network/protocol/cookie/ClientboundCookieRequestPacket abp net/minecraft/class_9088 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47892 + f Lnet/minecraft/resources/ResourceLocation; key b comp_2194 + m (Lnet/minecraft/network/protocol/cookie/ClientCookiePacketListener;)V handle a method_55847 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55848 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2194 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/network/protocol/cookie/CookiePacketTypes abq net/minecraft/class_9089 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COOKIE_REQUEST a field_47893 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_COOKIE_RESPONSE b field_47894 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_55849 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_55850 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/cookie/ServerCookiePacketListener abr net/minecraft/class_9090 + m (Lnet/minecraft/network/protocol/cookie/ServerboundCookieResponsePacket;)V handleCookieResponse a method_55851 + p 1 packet +c net/minecraft/network/protocol/cookie/ServerboundCookieResponsePacket abs net/minecraft/class_9091 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47895 + f Lnet/minecraft/resources/ResourceLocation; key b comp_2195 + f [B payload c comp_2196 + m (Lnet/minecraft/network/protocol/cookie/ServerCookiePacketListener;)V handle a method_55852 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55853 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2195 + m ()[B payload e comp_2196 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;[B)V + m ()V +c net/minecraft/network/protocol/cookie/package-info abt net/minecraft/class_9092 +c net/minecraft/network/protocol/game/ClientGamePacketListener abu net/minecraft/class_2602 + c PacketListener for the client side of the PLAY protocol. + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)V handleAddEntity a method_11112 + c Spawns an instance of the objecttype indicated by the packet and sets its position and momentum + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAddExperienceOrbPacket;)V handleAddExperienceOrb a method_11091 + c Spawns an experience orb and sets its value (amount of XP) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAnimatePacket;)V handleAnimate a method_11160 + c Renders a specified animation: Waking up a player, a living entity swinging its currently held item, being hurt or receiving a critical hit by normal or magical means + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAwardStatsPacket;)V handleAwardStats a method_11129 + c Updates the players statistics or achievements + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockChangedAckPacket;)V handleBlockChangedAck a method_21707 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockDestructionPacket;)V handleBlockDestruction a method_11116 + c Updates all registered IWorldAccess instances with destroyBlockInWorldPartially + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket;)V handleBlockEntityData a method_11094 + c Updates the NBTTagCompound metadata of instances of the following entitytypes: Mob spawners, command blocks, beacons, skulls, flowerpot + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEventPacket;)V handleBlockEvent a method_11158 + c Triggers Block.onBlockEventReceived, which is implemented in BlockPistonBase for extension/retraction, BlockNote for setting the instrument (including audiovisual feedback) and in BlockContainer to set the number of players accessing a (Ender)Chest + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockUpdatePacket;)V handleBlockUpdate a method_11136 + c Updates the block and metadata and generates a blockupdate (and notify the clients) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket;)V handleBossUpdate a method_11078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBundlePacket;)V handleBundlePacket a method_48294 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChangeDifficultyPacket;)V handleChangeDifficulty a method_11140 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunkBatchFinishedPacket;)V handleChunkBatchFinished a method_52799 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket;)V handleChunkBatchStart a method_52800 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket;)V handleChunksBiomes a method_49631 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundClearTitlesPacket;)V handleTitlesClear a method_34071 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket;)V handleCommandSuggestions a method_11081 + c This method is only called for manual tab-completion (the {@link net.minecraft.commands.synchronization.SuggestionProviders#ASK_SERVER minecraft:ask_server} suggestion provider). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket;)V handleCommands a method_11145 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerClosePacket;)V handleContainerClose a method_11102 + c Resets the ItemStack held in hand and closes the window that is opened + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetContentPacket;)V handleContainerContent a method_11153 + c Handles the placement of a specified ItemStack in a specified container/inventory slot + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetDataPacket;)V handleContainerSetData a method_11131 + c Sets the progressbar of the opened window to the specified value + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetSlotPacket;)V handleContainerSetSlot a method_11109 + c Handles picking up an ItemStack or dropping one in your inventory or an open (non-creative) container + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCooldownPacket;)V handleItemCooldown a method_11087 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket;)V handleCustomChatCompletions a method_44763 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDamageEventPacket;)V handleDamageEvent a method_49034 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDebugSamplePacket;)V handleDebugSample a method_56607 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDeleteChatPacket;)V handleDeleteChat a method_44814 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDisguisedChatPacket;)V handleDisguisedChat a method_45724 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundEntityEventPacket;)V handleEntityEvent a method_11148 + c Invokes the entities' handleUpdateHealth method which is implemented in LivingBase (hurt/death), MinecartMobSpawner (spawn delay), FireworkRocket & MinecartTNT (explosion), IronGolem (throwing,...), Witch (spawn particles), Zombie (villager transformation), Animal (breeding mode particles), Horse (breeding/smoke particles), Sheep (...), Tameable (...), Villager (particles for breeding mode, angry and happy), Wolf (...) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundExplodePacket;)V handleExplosion a method_11124 + c Initiates a new explosion (sound, particles, drop spawn) for the affected blocks indicated by the packet. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket;)V handleForgetLevelChunk a method_11107 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket;)V handleGameEvent a method_11085 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundHorseScreenOpenPacket;)V handleHorseScreenOpen a method_11089 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundHurtAnimationPacket;)V handleHurtAnimation a method_48295 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundInitializeBorderPacket;)V handleInitializeBorder a method_34072 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket;)V handleLevelChunkWithLight a method_11128 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelEventPacket;)V handleLevelEvent a method_11098 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelParticlesPacket;)V handleParticleEvent a method_11077 + c Spawns a specified number of particles at the specified location with a randomized displacement according to specified bounds + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacket;)V handleLightUpdatePacket a method_11143 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLoginPacket;)V handleLogin a method_11120 + c Registers some server properties (gametype,hardcore-mode,terraintype,difficulty,player limit), creates a new WorldClient and sets the player initial dimension + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMapItemDataPacket;)V handleMapItemData a method_11088 + c Updates the worlds MapStorage with the specified MapData for the specified map-identifier and invokes a MapItemRenderer for it + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMerchantOffersPacket;)V handleMerchantOffers a method_17586 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket;)V handleMoveEntity a method_11155 + c Updates the specified entity's position by the specified relative moment and absolute rotation. Note that subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs. rotation or both). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMoveVehiclePacket;)V handleMoveVehicle a method_11134 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenBookPacket;)V handleOpenBook a method_17186 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenScreenPacket;)V handleOpenScreen a method_17587 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenSignEditorPacket;)V handleOpenSignEditor a method_11108 + c Creates a sign in the specified location if it didn't exist and opens the GUI to edit its text + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlaceGhostRecipePacket;)V handlePlaceRecipe a method_11090 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerAbilitiesPacket;)V handlePlayerAbilities a method_11154 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerChatPacket;)V handlePlayerChat a method_43595 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEndPacket;)V handlePlayerCombatEnd a method_34073 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket;)V handlePlayerCombatEnter a method_34074 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatKillPacket;)V handlePlayerCombatKill a method_34075 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoRemovePacket;)V handlePlayerInfoRemove a method_45725 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket;)V handlePlayerInfoUpdate a method_11113 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerLookAtPacket;)V handleLookAt a method_11092 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerPositionPacket;)V handleMovePlayer a method_11157 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundProjectilePowerPacket;)V handleProjectilePowerPacket a method_59504 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket;)V handleAddOrRemoveRecipes a method_11115 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRemoveEntitiesPacket;)V handleRemoveEntities a method_11095 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRemoveMobEffectPacket;)V handleRemoveMobEffect a method_11119 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundResetScorePacket;)V handleResetScore a method_55450 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRespawnPacket;)V handleRespawn a method_11117 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRotateHeadPacket;)V handleRotateMob a method_11139 + c Updates the direction in which the specified entity is looking, normally this head rotation is independent of the rotation of the entity itself + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket;)V handleChunkBlocksUpdate a method_11100 + c Received from the servers PlayerManager if between 1 and 64 blocks in a chunk are changed. If only one block requires an update, the server sends S23PacketBlockChange and if 64 or more blocks are changed, the server sends S21PacketChunkData + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSelectAdvancementsTabPacket;)V handleSelectAdvancementsTab a method_11161 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundServerDataPacket;)V handleServerData a method_44075 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket;)V setActionBarText a method_34076 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket;)V handleSetBorderCenter a method_34077 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderLerpSizePacket;)V handleSetBorderLerpSize a method_34078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderSizePacket;)V handleSetBorderSize a method_34079 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderWarningDelayPacket;)V handleSetBorderWarningDelay a method_34080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderWarningDistancePacket;)V handleSetBorderWarningDistance a method_34081 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetCameraPacket;)V handleSetCamera a method_11111 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetCarriedItemPacket;)V handleSetCarriedItem a method_11135 + c Updates which hotbar slot of the player is currently selected + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetChunkCacheCenterPacket;)V handleSetChunkCacheCenter a method_20320 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetChunkCacheRadiusPacket;)V handleSetChunkCacheRadius a method_20203 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetDefaultSpawnPositionPacket;)V handleSetSpawn a method_11142 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetDisplayObjectivePacket;)V handleSetDisplayObjective a method_11159 + c Removes or sets the ScoreObjective to be displayed at a particular scoreboard position (list, sidebar, below name) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityDataPacket;)V handleSetEntityData a method_11093 + c Invoked when the server registers new proximate objects in your watchlist or when objects in your watchlist have changed -> Registers any changes locally + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityLinkPacket;)V handleEntityLinkPacket a method_11110 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityMotionPacket;)V handleSetEntityMotion a method_11132 + c Sets the velocity of the specified entity to the specified value + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEquipmentPacket;)V handleSetEquipment a method_11151 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetExperiencePacket;)V handleSetExperience a method_11101 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetHealthPacket;)V handleSetHealth a method_11122 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetObjectivePacket;)V handleAddObjective a method_11144 + c May create a scoreboard objective, remove an objective from the scoreboard or update an objectives' displayname + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetPassengersPacket;)V handleSetEntityPassengersPacket a method_11080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket;)V handleSetPlayerTeamPacket a method_11099 + c Updates a team managed by the scoreboard: Create/Remove the team registration, Register/Remove the player-team-memberships, Set team displayname/prefix/suffix and/or whether friendly fire is enabled + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetScorePacket;)V handleSetScore a method_11118 + c Either updates the score with a specified value or removes the score for an objective + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetSimulationDistancePacket;)V handleSetSimulationDistance a method_39025 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetSubtitleTextPacket;)V setSubtitleText a method_34082 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTimePacket;)V handleSetTime a method_11079 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTitleTextPacket;)V setTitleText a method_34083 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTitlesAnimationPacket;)V setTitlesAnimation a method_34084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSoundEntityPacket;)V handleSoundEntityEvent a method_11125 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSoundPacket;)V handleSoundEvent a method_11146 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundStartConfigurationPacket;)V handleConfigurationStart a method_52798 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundStopSoundPacket;)V handleStopSoundEvent a method_11082 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSystemChatPacket;)V handleSystemChat a method_43596 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTabListPacket;)V handleTabListCustomisation a method_11105 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTagQueryPacket;)V handleTagQueryPacket a method_11127 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTakeItemEntityPacket;)V handleTakeItemEntity a method_11150 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTeleportEntityPacket;)V handleTeleportEntity a method_11086 + c Updates an entity's position and rotation as specified by the packet + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTickingStatePacket;)V handleTickingState a method_54806 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTickingStepPacket;)V handleTickingStep a method_54807 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket;)V handleUpdateAdvancementsPacket a method_11130 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket;)V handleUpdateAttributes a method_11149 + c Updates en entity's attributes and their respective modifiers, which are used for speed bonuses (player sprinting, animals fleeing, baby speed), weapon/tool attackDamage, hostiles followRange randomization, zombie maxHealth and knockback resistance as well as reinforcement spawning chance. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateMobEffectPacket;)V handleUpdateMobEffect a method_11084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket;)V handleUpdateRecipes a method_11106 + p 1 packet +c net/minecraft/network/protocol/game/ClientboundAddEntityPacket abv net/minecraft/class_2604 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47896 + f D MAGICAL_QUANTIZATION b field_33293 + f D LIMIT c field_33294 + f I id d field_11953 + f Ljava/util/UUID; uuid e field_11952 + f Lnet/minecraft/world/entity/EntityType; type f field_11955 + f D x g field_11948 + f D y h field_11946 + f D z i field_11956 + f I xa j field_11951 + f I ya k field_11950 + f I za l field_11949 + f B xRot m field_11947 + f B yRot n field_11957 + f B yHeadRot o field_38817 + f I data p field_11954 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11178 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55855 + p 1 buffer + m ()I getId b method_11167 + m ()Ljava/util/UUID; getUUID e method_11164 + m ()Lnet/minecraft/world/entity/EntityType; getType f method_11169 + m ()D getX g method_11175 + m ()D getY h method_11174 + m ()D getZ i method_11176 + m ()D getXa j method_11170 + m ()D getYa k method_11172 + m ()D getZa l method_11173 + m ()F getXRot m method_11171 + m ()F getYRot n method_11168 + m ()F getYHeadRot o method_43233 + m ()I getData p method_11166 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerEntity;)V + p 1 entity + p 2 serverEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerEntity;I)V + p 1 entity + p 2 serverEntity + p 3 data + m (Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;)V + p 1 entity + p 2 data + p 3 pos + m (ILjava/util/UUID;DDDFFLnet/minecraft/world/entity/EntityType;ILnet/minecraft/world/phys/Vec3;D)V + p 1 id + p 2 uuid + p 3 x + p 5 y + p 7 z + p 9 xRot + p 10 yRot + p 11 type + p 12 data + p 13 deltaMovement + p 14 yHeadRot + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAddExperienceOrbPacket abw net/minecraft/class_2606 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47897 + f I id b field_11974 + f D x c field_11972 + f D y d field_11971 + f D z e field_11970 + f I value f field_11973 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11182 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55856 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11183 + m ()D getX e method_11185 + m ()D getY f method_11181 + m ()D getZ g method_11180 + m ()I getValue h method_11184 + m (Lnet/minecraft/world/entity/ExperienceOrb;Lnet/minecraft/server/level/ServerEntity;)V + p 1 orb + p 2 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAnimatePacket abx net/minecraft/class_2616 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47898 + f I SWING_MAIN_HAND b field_33295 + f I WAKE_UP c field_33297 + f I SWING_OFF_HAND d field_33298 + f I CRITICAL_HIT e field_33299 + f I MAGIC_CRITICAL_HIT f field_33300 + f I id g field_12029 + f I action h field_12028 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11268 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55857 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11269 + m ()I getAction e method_11267 + m (Lnet/minecraft/world/entity/Entity;I)V + p 1 entity + p 2 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAwardStatsPacket aby net/minecraft/class_2617 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47899 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats b comp_2197 + f Lnet/minecraft/network/codec/StreamCodec; STAT_VALUES_STREAM_CODEC c field_47900 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11270 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats b comp_2197 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 stats + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockChangedAckPacket abz net/minecraft/class_4463 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47901 + f I sequence b comp_633 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_21708 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55858 + p 1 buffer + m ()I sequence b comp_633 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockDestructionPacket aca net/minecraft/class_2620 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47902 + f I id b field_12033 + f Lnet/minecraft/core/BlockPos; pos c field_12034 + f I progress d field_12032 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11279 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55859 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11280 + m ()Lnet/minecraft/core/BlockPos; getPos e method_11277 + m ()I getProgress f method_11278 + m (ILnet/minecraft/core/BlockPos;I)V + p 1 id + p 2 pos + p 3 progress + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket acb net/minecraft/class_2622 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47903 + f Lnet/minecraft/core/BlockPos; pos b field_12040 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type c field_12038 + c Used only for vanilla block entities + f Lnet/minecraft/nbt/CompoundTag; tag d field_12039 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11292 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; create a method_38585 + p 0 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/util/function/BiFunction;)Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; create a method_39026 + p 0 blockEntity + p 1 dataGetter + m ()Lnet/minecraft/core/BlockPos; getPos b method_11293 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; getType e method_11291 + m ()Lnet/minecraft/nbt/CompoundTag; getTag f method_11290 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 type + p 3 tag + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockEventPacket acc net/minecraft/class_2623 + c Triggers a block event on the client.\n\n@see Block#triggerEvent\n@see Level#blockEvent + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47904 + f Lnet/minecraft/core/BlockPos; pos b field_12044 + f I b0 c field_12042 + f I b1 d field_12041 + f Lnet/minecraft/world/level/block/Block; block e field_12043 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11297 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55860 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11298 + m ()I getB0 e method_11294 + c First parameter of the block event. The meaning of this value depends on the block. + m ()I getB1 f method_11296 + c Second parameter of the block event. The meaning of this value depends on the block. + m ()Lnet/minecraft/world/level/block/Block; getBlock g method_11295 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V + p 1 pos + p 2 block + p 3 b0 + c first parameter of the block event. The meaning of this value depends on the block. + p 4 b1 + c second parameter of the block event. The meaning of this value depends on the block. + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockUpdatePacket acd net/minecraft/class_2626 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47905 + f Lnet/minecraft/core/BlockPos; pos b field_12052 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_12051 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11310 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_11308 + m ()Lnet/minecraft/core/BlockPos; getPos e method_11309 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)V + p 1 blockGetter + p 2 pos + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket ace net/minecraft/class_2629 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47906 + f I FLAG_DARKEN b field_33314 + f I FLAG_MUSIC c field_33315 + f I FLAG_FOG d field_33316 + f Ljava/util/UUID; id e field_12074 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; operation f field_12075 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; REMOVE_OPERATION g field_29099 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11330 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler;)V dispatch a method_34091 + p 1 handler + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createAddPacket a method_34089 + p 0 event + m (Ljava/util/UUID;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createRemovePacket a method_34090 + p 0 id + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55861 + p 1 buffer + m (ZZZ)I encodeProperties a method_34095 + p 0 darkenScreen + p 1 playMusic + p 2 createWorldFog + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateProgressPacket b method_34094 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateNamePacket c method_34096 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateStylePacket d method_34097 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdatePropertiesPacket e method_34098 + p 0 event + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation;)V + p 1 id + p 2 operation + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$1 ace$1 net/minecraft/class_2629$1 + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$AddOperation ace$a net/minecraft/class_2629$class_5880 + f Lnet/minecraft/network/chat/Component; name a field_29100 + f F progress b field_29101 + f Lnet/minecraft/world/BossEvent$BossBarColor; color c field_29102 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay d field_29103 + f Z darkenScreen e field_29104 + f Z playMusic f field_29105 + f Z createWorldFog g field_29106 + m (Lnet/minecraft/world/BossEvent;)V + p 1 event + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler ace$b net/minecraft/class_2629$class_5881 + m (Ljava/util/UUID;)V remove a method_34099 + p 1 id + m (Ljava/util/UUID;F)V updateProgress a method_34100 + p 1 id + p 2 progress + m (Ljava/util/UUID;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V updateStyle a method_34101 + p 1 id + p 2 color + p 3 overlay + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)V updateName a method_34102 + p 1 id + p 2 name + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;ZZZ)V add a method_34103 + p 1 id + p 2 name + p 3 progress + p 4 color + p 5 overlay + p 6 darkenScreen + p 7 playMusic + p 8 createWorldFog + m (Ljava/util/UUID;ZZZ)V updateProperties a method_34104 + p 1 id + p 2 darkenScreen + p 3 playMusic + p 4 createWorldFog +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation ace$c net/minecraft/class_2629$class_5882 + m ()Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; getType a method_34105 + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler;)V dispatch a method_34106 + p 1 id + p 2 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_34107 + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType ace$d net/minecraft/class_2629$class_5883 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; ADD a field_29107 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; REMOVE b field_29108 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_PROGRESS c field_29109 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_NAME d field_29110 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_STYLE e field_29111 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_PROPERTIES f field_29112 + f Lnet/minecraft/network/codec/StreamDecoder; reader g field_29113 + f [Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; $VALUES h field_29114 + m ()[Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; $values a method_36948 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; method_34113 a method_34113 + m (Ljava/lang/String;ILnet/minecraft/network/codec/StreamDecoder;)V + p 3 reader + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateNameOperation ace$e net/minecraft/class_2629$class_5884 + f Lnet/minecraft/network/chat/Component; name a comp_2260 + m ()Lnet/minecraft/network/chat/Component; name b comp_2260 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/Component;)V + p 1 name +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateProgressOperation ace$f net/minecraft/class_2629$class_5885 + f F progress a comp_2261 + m ()F progress b comp_2261 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (F)V + p 1 progress +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdatePropertiesOperation ace$g net/minecraft/class_2629$class_5886 + f Z darkenScreen a field_29117 + f Z playMusic b field_29118 + f Z createWorldFog c field_29119 + m (ZZZ)V + p 1 darkenScreen + p 2 playMusic + p 3 createWorldFog + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateStyleOperation ace$h net/minecraft/class_2629$class_5887 + f Lnet/minecraft/world/BossEvent$BossBarColor; color a field_29120 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay b field_29121 + m (Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 color + p 2 overlay + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBundleDelimiterPacket acf net/minecraft/class_9093 + m ()V +c net/minecraft/network/protocol/game/ClientboundBundlePacket acg net/minecraft/class_8042 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_48329 + m (Ljava/lang/Iterable;)V +c net/minecraft/network/protocol/game/ClientboundChangeDifficultyPacket ach net/minecraft/class_2632 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47907 + f Lnet/minecraft/world/Difficulty; difficulty b field_12090 + f Z locked c field_12091 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11341 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55862 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isLocked b method_11340 + m ()Lnet/minecraft/world/Difficulty; getDifficulty e method_11342 + m (Lnet/minecraft/world/Difficulty;Z)V + p 1 difficulty + p 2 locked + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundChunkBatchFinishedPacket aci net/minecraft/class_8738 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47908 + f I batchSize b comp_1725 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_53044 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55863 + p 1 buffer + m ()I batchSize b comp_1725 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket acj net/minecraft/class_8739 + f Lnet/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket; INSTANCE a field_47909 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47910 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_53045 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunksBiomesPacket ack net/minecraft/class_8212 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47911 + f Ljava/util/List; chunkBiomeData b comp_1313 + f I TWO_MEGABYTES c field_43094 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_49687 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Ljava/util/List;)Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket; forChunks a method_49685 + p 0 chunks + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55864 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket$ChunkBiomeData;)V method_49686 a method_49686 + m ()Ljava/util/List; chunkBiomeData b comp_1313 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunksBiomesPacket$ChunkBiomeData ack$a net/minecraft/class_8212$class_8213 + f Lnet/minecraft/world/level/ChunkPos; pos a comp_1314 + f [B buffer b comp_1315 + m ()Lnet/minecraft/network/FriendlyByteBuf; getReadBuffer a method_49688 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)I calculateChunkSize a method_49689 + p 0 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_49690 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/chunk/LevelChunk;)V extractChunkData a method_49691 + p 0 buffer + p 1 chunk + m ()Lnet/minecraft/world/level/ChunkPos; pos b comp_1314 + m ()[B buffer c comp_1315 + m ()Lio/netty/buffer/ByteBuf; getWriteBuffer d method_49692 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/ChunkPos;[B)V +c net/minecraft/network/protocol/game/ClientboundClearTitlesPacket acl net/minecraft/class_5888 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47912 + f Z resetTimes b field_29122 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34115 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55865 + p 1 buffer + m ()Z shouldResetTimes b method_34116 + m (Z)V + p 1 resetTimes + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket acm net/minecraft/class_2639 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47913 + f I id b comp_2262 + f I start c comp_2263 + f I length d comp_2264 + f Ljava/util/List; suggestions e comp_2265 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11398 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lcom/mojang/brigadier/context/StringRange;Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry;)Lcom/mojang/brigadier/suggestion/Suggestion; method_56608 a method_56608 + m (Lcom/mojang/brigadier/suggestion/Suggestion;)Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry; method_56609 a method_56609 + m ()Lcom/mojang/brigadier/suggestion/Suggestions; toSuggestions b method_11397 + m ()I id e comp_2262 + m ()I start f comp_2263 + m ()I length g comp_2264 + m ()Ljava/util/List; suggestions h comp_2265 + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V + p 1 id + p 2 suggestions + m (IIILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry acm$a net/minecraft/class_2639$class_9177 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48779 + f Ljava/lang/String; text b comp_2266 + f Ljava/util/Optional; tooltip c comp_2267 + m ()Ljava/lang/String; text a comp_2266 + m ()Ljava/util/Optional; tooltip b comp_2267 + m (Ljava/lang/String;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandsPacket acn net/minecraft/class_2641 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47914 + f B MASK_TYPE b field_33317 + f B FLAG_EXECUTABLE c field_33318 + f B FLAG_REDIRECT d field_33319 + f B FLAG_CUSTOM_SUGGESTIONS e field_33320 + f B TYPE_ROOT f field_33321 + f B TYPE_LITERAL g field_33322 + f B TYPE_ARGUMENT h field_33323 + f I rootIndex i field_38038 + f Ljava/util/List; entries j field_38039 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11404 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lcom/mojang/brigadier/tree/CommandNode;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry; createEntry a method_11401 + p 0 node + p 1 nodes + m (Lcom/mojang/brigadier/tree/RootCommandNode;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; enumerateNodes a method_30944 + p 0 rootNode + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/tree/RootCommandNode; getRoot a method_11403 + p 1 context + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Ljava/util/List; createEntries a method_30945 + p 0 nodes + m (Ljava/util/List;)V validateEntries a method_30946 + p 0 entries + m (Ljava/util/List;Ljava/util/function/BiPredicate;)V validateEntries a method_42067 + p 0 entries + p 1 validator + m (Ljava/util/function/BiPredicate;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_42068 a method_42068 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55867 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;B)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub; read a method_11402 + p 0 buffer + p 1 flags + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry;)V method_34119 a method_34119 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry; readNode b method_11405 + p 0 buffer + m (Lcom/mojang/brigadier/tree/RootCommandNode;)V + p 1 root + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$ArgumentNodeStub acn$a net/minecraft/class_2641$class_7232 + f Ljava/lang/String; id a field_38040 + f Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; argumentType b field_38041 + f Lnet/minecraft/resources/ResourceLocation; suggestionId c field_38042 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lnet/minecraft/resources/ResourceLocation; getSuggestionId a method_42069 + p 0 provider + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_42072 + p 0 buffer + p 1 argumentInfoTemplate + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_42073 + p 0 buffer + p 1 argumentInfo + p 2 argumentInfoTemplate + m (Ljava/lang/String;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + p 2 argumentType + p 3 suggestionId + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;)V + p 1 argumentNode +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry acn$b net/minecraft/class_2641$class_2642 + f Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub; stub a field_38043 + f I flags b field_12124 + f I redirect c field_12126 + f [I children d field_12125 + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z canBuild a method_42074 + p 1 children + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_42075 + p 1 buffer + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z canResolve b method_42076 + p 1 children + m (Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub;II[I)V + p 1 stub + p 2 flags + p 3 redirect + p 4 children +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$LiteralNodeStub acn$c net/minecraft/class_2641$class_7233 + f Ljava/lang/String; id a field_38044 + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeResolver acn$d net/minecraft/class_2641$class_7234 + f Lnet/minecraft/commands/CommandBuildContext; context a field_38045 + f Ljava/util/List; entries b field_38046 + f Ljava/util/List; nodes c field_38047 + m (I)Lcom/mojang/brigadier/tree/CommandNode; resolve a method_42077 + p 1 index + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42078 a method_42078 + m (Lnet/minecraft/commands/CommandBuildContext;Ljava/util/List;)V + p 1 context + p 2 entries +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub acn$e net/minecraft/class_2641$class_7235 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/builder/ArgumentBuilder; build a method_42070 + p 1 context + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_42071 + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundContainerClosePacket aco net/minecraft/class_2645 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47915 + f I containerId b field_12137 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11427 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55868 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_36148 + m (I)V + p 1 containerId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetContentPacket acp net/minecraft/class_2649 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47916 + f I containerId b field_12146 + f I stateId c field_34034 + f Ljava/util/List; items d field_12147 + f Lnet/minecraft/world/item/ItemStack; carriedItem e field_34035 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11439 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55869 + p 1 buffer + m ()I getContainerId b method_11440 + m ()Ljava/util/List; getItems e method_11441 + m ()Lnet/minecraft/world/item/ItemStack; getCarriedItem f method_37437 + m ()I getStateId g method_37438 + m (IILnet/minecraft/core/NonNullList;Lnet/minecraft/world/item/ItemStack;)V + p 1 containerId + p 2 stateId + p 3 items + p 4 carriedItem + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetDataPacket acq net/minecraft/class_2651 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47917 + f I containerId b field_12150 + f I id c field_12149 + f I value d field_12148 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11447 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55870 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_11448 + m ()I getId e method_11445 + m ()I getValue f method_11446 + m (III)V + p 1 containerId + p 2 id + p 3 value + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetSlotPacket acr net/minecraft/class_2653 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47918 + f I CARRIED_ITEM b field_33324 + f I PLAYER_INVENTORY c field_33325 + f I containerId d field_12152 + f I stateId e field_34036 + f I slot f field_12151 + f Lnet/minecraft/world/item/ItemStack; itemStack g field_12153 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11451 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55871 + p 1 buffer + m ()I getContainerId b method_11452 + m ()I getSlot e method_11450 + m ()Lnet/minecraft/world/item/ItemStack; getItem f method_11449 + m ()I getStateId g method_37439 + m (IIILnet/minecraft/world/item/ItemStack;)V + p 1 containerId + p 2 stateId + p 3 slot + p 4 itemStack + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCooldownPacket acs net/minecraft/class_2656 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47919 + f Lnet/minecraft/world/item/Item; item b comp_2198 + f I duration c comp_2199 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11455 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/world/item/Item; item b comp_2198 + m ()I duration e comp_2199 + m (Lnet/minecraft/world/item/Item;I)V + p 1 item + p 2 duration + m ()V +c net/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket act net/minecraft/class_7597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47920 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; action b comp_908 + f Ljava/util/List; entries c comp_909 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44783 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55872 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; action b comp_908 + m ()Ljava/util/List; entries e comp_909 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action act$a net/minecraft/class_7597$class_7598 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; ADD a field_39801 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; REMOVE b field_39802 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; SET c field_39803 + f [Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; $VALUES d field_39804 + m ()[Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; $values a method_44784 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDamageEventPacket acu net/minecraft/class_8143 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47921 + f I entityId b comp_1267 + f Lnet/minecraft/core/Holder; sourceType c comp_1268 + f I sourceCauseId d comp_1269 + f I sourceDirectId e comp_1270 + f Ljava/util/Optional; sourcePosition f comp_1271 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_49074 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/damagesource/DamageSource; getSource a method_49071 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)I readOptionalEntityId a method_49075 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;I)V writeOptionalEntityId a method_49072 + p 0 buffer + p 1 optionalEntityId + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/phys/Vec3;)V method_49073 a method_49073 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55873 + p 1 buffer + m ()I entityId b comp_1267 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/phys/Vec3; method_49076 b method_49076 + m ()Lnet/minecraft/core/Holder; sourceType e comp_1268 + m ()I sourceCauseId f comp_1269 + m ()I sourceDirectId g comp_1270 + m ()Ljava/util/Optional; sourcePosition h comp_1271 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V + p 1 entity + p 2 damageSource + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/core/Holder;IILjava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDebugSamplePacket acv net/minecraft/class_9178 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48780 + f [J sample b comp_2268 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; debugSampleType c comp_2269 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_56610 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56611 + p 1 buffer + m ()[J sample b comp_2268 + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; debugSampleType e comp_2269 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ([JLnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDeleteChatPacket acw net/minecraft/class_7617 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47922 + f Lnet/minecraft/network/chat/MessageSignature$Packed; messageSignature b comp_938 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44889 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55874 + p 1 buffer + m ()Lnet/minecraft/network/chat/MessageSignature$Packed; messageSignature b comp_938 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/MessageSignature$Packed;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDisguisedChatPacket acx net/minecraft/class_7827 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47923 + f Lnet/minecraft/network/chat/Component; message b comp_1097 + f Lnet/minecraft/network/chat/ChatType$Bound; chatType c comp_1098 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_46324 + m ()Lnet/minecraft/network/chat/Component; message b comp_1097 + m ()Lnet/minecraft/network/chat/ChatType$Bound; chatType e comp_1098 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundEntityEventPacket acy net/minecraft/class_2663 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47924 + f I entityId b field_12175 + f B eventId c field_12174 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11471 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11469 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55876 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()B getEventId b method_11470 + m (Lnet/minecraft/world/entity/Entity;B)V + p 1 entity + p 2 eventId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundExplodePacket acz net/minecraft/class_2664 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47925 + f D x b field_12180 + f D y c field_12178 + f D z d field_12177 + f F power e field_12179 + f Ljava/util/List; toBlow f field_12181 + f F knockbackX g field_12176 + f F knockbackY h field_12183 + f F knockbackZ i field_12182 + f Lnet/minecraft/core/particles/ParticleOptions; smallExplosionParticles j field_47515 + f Lnet/minecraft/core/particles/ParticleOptions; largeExplosionParticles k field_47516 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; blockInteraction l field_47517 + f Lnet/minecraft/core/Holder; explosionSound m field_47518 + m (IIILnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/core/BlockPos; method_34121 a method_34121 + m (IIILnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/core/BlockPos;)V method_34122 a method_34122 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11480 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55877 + p 1 buffer + m ()F getKnockbackX b method_11472 + m ()F getKnockbackY e method_11473 + m ()F getKnockbackZ f method_11474 + m ()D getX g method_11475 + m ()D getY h method_11477 + m ()D getZ i method_11478 + m ()F getPower j method_11476 + m ()Ljava/util/List; getToBlow k method_11479 + m ()Lnet/minecraft/world/level/Explosion$BlockInteraction; getBlockInteraction l method_55328 + m ()Lnet/minecraft/core/particles/ParticleOptions; getSmallExplosionParticles m method_55329 + m ()Lnet/minecraft/core/particles/ParticleOptions; getLargeExplosionParticles n method_55330 + m ()Lnet/minecraft/core/Holder; getExplosionSound o method_55331 + m (DDDFLjava/util/List;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 x + p 3 y + p 5 z + p 7 power + p 8 toBlow + p 9 knockback + p 10 blockInteraction + p 11 smallExplosionParticles + p 12 largeExplosionParticles + p 13 explosionSound + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket ada net/minecraft/class_2666 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47926 + f Lnet/minecraft/world/level/ChunkPos; pos b comp_1726 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11486 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55878 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/level/ChunkPos; pos b comp_1726 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/ChunkPos;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundGameEventPacket adb net/minecraft/class_2668 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47927 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; NO_RESPAWN_BLOCK_AVAILABLE b field_25645 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; START_RAINING c field_25646 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; STOP_RAINING d field_25647 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; CHANGE_GAME_MODE e field_25648 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; WIN_GAME f field_25649 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; DEMO_EVENT g field_25650 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; ARROW_HIT_PLAYER h field_25651 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; RAIN_LEVEL_CHANGE i field_25652 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; THUNDER_LEVEL_CHANGE j field_25653 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; PUFFER_FISH_STING k field_25654 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; GUARDIAN_ELDER_EFFECT l field_25655 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; IMMEDIATE_RESPAWN m field_25656 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; LIMITED_CRAFTING n field_46189 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; LEVEL_CHUNKS_LOAD_START o field_46637 + f I DEMO_PARAM_INTRO p field_33328 + f I DEMO_PARAM_HINT_1 q field_33329 + f I DEMO_PARAM_HINT_2 r field_33330 + f I DEMO_PARAM_HINT_3 s field_33331 + f I DEMO_PARAM_HINT_4 t field_33332 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; event u field_12199 + f F param v field_12198 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11490 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55879 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; getEvent b method_11491 + m ()F getParam e method_11492 + m (Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type;F)V + p 1 event + p 2 param + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundGameEventPacket$Type adb$a net/minecraft/class_2668$class_5402 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; TYPES a field_25657 + f I id b field_25658 + m (I)V + p 1 id + m ()V +c net/minecraft/network/protocol/game/ClientboundHorseScreenOpenPacket adc net/minecraft/class_2648 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47928 + f I containerId b field_12144 + f I inventoryColumns c field_12143 + f I entityId d field_12142 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11437 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55880 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_11432 + m ()I getInventoryColumns e method_11434 + m ()I getEntityId f method_11433 + m (III)V + p 1 containerId + p 2 size + p 3 entityId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundHurtAnimationPacket add net/minecraft/class_8043 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47929 + f I id b comp_1202 + f F yaw c comp_1203 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_48330 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55881 + p 1 buffer + m ()I id b comp_1202 + m ()F yaw e comp_1203 + m (Lnet/minecraft/world/entity/LivingEntity;)V + p 1 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IF)V + m ()V +c net/minecraft/network/protocol/game/ClientboundInitializeBorderPacket ade net/minecraft/class_5889 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47930 + f D newCenterX b field_29123 + f D newCenterZ c field_29124 + f D oldSize d field_29125 + f D newSize e field_29126 + f J lerpTime f field_29127 + f I newAbsoluteMaxSize g field_29128 + f I warningBlocks h field_29129 + f I warningTime i field_29130 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34123 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55882 + p 1 buffer + m ()D getNewCenterX b method_34124 + m ()D getNewCenterZ e method_34125 + m ()D getNewSize f method_34126 + m ()D getOldSize g method_34127 + m ()J getLerpTime h method_34128 + m ()I getNewAbsoluteMaxSize i method_34129 + m ()I getWarningTime j method_34130 + m ()I getWarningBlocks k method_34131 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData adf net/minecraft/class_6603 + f I TWO_MEGABYTES a field_34862 + f Lnet/minecraft/nbt/CompoundTag; heightmaps b field_34863 + f [B buffer c field_34864 + f Ljava/util/List; blockEntitiesData d field_34865 + m ()Lnet/minecraft/network/FriendlyByteBuf; getReadBuffer a method_38586 + m (II)Ljava/util/function/Consumer; getBlockEntitiesTagsConsumer a method_38587 + p 1 chunkX + p 2 chunkZ + m (IILnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput;)V method_38588 a method_38588 + m (Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput;II)V getBlockEntitiesTags a method_38593 + p 1 output + p 2 chunkX + p 3 chunkZ + m (Lnet/minecraft/world/level/chunk/LevelChunk;)I calculateChunkSize a method_38589 + p 0 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/chunk/LevelChunk;)V extractChunkData a method_38591 + p 0 buffer + p 1 chunk + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_38590 + p 1 buffer + m ()Lnet/minecraft/nbt/CompoundTag; getHeightmaps b method_38594 + m ()Lio/netty/buffer/ByteBuf; getWriteBuffer c method_38595 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 levelChunk + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;II)V + p 1 buffer + p 2 x + p 3 z +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityInfo adf$a net/minecraft/class_6603$class_6604 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47931 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC b field_47932 + f I packedXZ c field_34866 + f I y d field_34867 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type e field_34868 + f Lnet/minecraft/nbt/CompoundTag; tag f field_34869 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityInfo; create a method_38596 + p 0 blockEntity + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_38597 + p 1 buffer + m (IILnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 packedXZ + p 2 y + p 3 type + p 4 tag + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput adf$b net/minecraft/class_6603$class_6605 +c net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket adg net/minecraft/class_2672 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47933 + f I x b field_12236 + f I z c field_12235 + f Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData; chunkData d field_34870 + f Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; lightData e field_34871 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11528 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55883 + p 1 buffer + m ()I getX b method_11523 + m ()I getZ e method_11524 + m ()Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData; getChunkData f method_38598 + m ()Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; getLightData g method_38599 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunk + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelEventPacket adh net/minecraft/class_2673 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47934 + f I type b field_12241 + f Lnet/minecraft/core/BlockPos; pos c field_12242 + f I data d field_12239 + c can be a block/item id or other depending on the soundtype + f Z globalEvent e field_12240 + c If true the sound is played across the server + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11535 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55884 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isGlobalEvent b method_11533 + m ()I getType e method_11532 + m ()I getData f method_11534 + m ()Lnet/minecraft/core/BlockPos; getPos g method_11531 + m (ILnet/minecraft/core/BlockPos;IZ)V + p 1 type + p 2 pos + p 3 data + p 4 globalEvent + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelParticlesPacket adi net/minecraft/class_2675 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47935 + f D x b field_12258 + f D y c field_12257 + f D z d field_12256 + f F xDist e field_12255 + f F yDist f field_12252 + f F zDist g field_12251 + f F maxSpeed h field_12260 + f I count i field_12253 + f Z overrideLimiter j field_12254 + f Lnet/minecraft/core/particles/ParticleOptions; particle k field_12259 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11553 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55885 + p 1 buffer + m ()Z isOverrideLimiter b method_11552 + m ()D getX e method_11544 + c Gets the x coordinate to spawn the particle. + m ()D getY f method_11547 + c Gets the y coordinate to spawn the particle. + m ()D getZ g method_11546 + c Gets the z coordinate to spawn the particle. + m ()F getXDist h method_11548 + c Gets the x coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getYDist i method_11549 + c Gets the y coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getZDist j method_11550 + c Gets the z coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getMaxSpeed k method_11543 + c Gets the speed of the particle animation (used in client side rendering). + m ()I getCount l method_11545 + c Gets the amount of particles to spawn + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle m method_11551 + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDFFFFI)V + p 1 particle + p 2 overrideLimiter + p 3 x + p 5 y + p 7 z + p 9 xDist + p 10 yDist + p 11 zDist + p 12 maxSpeed + p 13 count + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLightUpdatePacket adj net/minecraft/class_2676 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47936 + f I x b field_12265 + f I z c field_12264 + f Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; lightData d field_34872 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11560 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55886 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getX b method_11558 + m ()I getZ e method_11554 + m ()Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; getLightData f method_38600 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunkPos + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLightUpdatePacketData adk net/minecraft/class_6606 + f Lnet/minecraft/network/codec/StreamCodec; DATA_LAYER_STREAM_CODEC a field_48781 + f Ljava/util/BitSet; skyYMask b field_34873 + f Ljava/util/BitSet; blockYMask c field_34874 + f Ljava/util/BitSet; emptySkyYMask d field_34875 + f Ljava/util/BitSet; emptyBlockYMask e field_34876 + f Ljava/util/List; skyUpdates f field_34877 + f Ljava/util/List; blockUpdates g field_34878 + m ()Ljava/util/BitSet; getSkyYMask a method_38601 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/world/level/LightLayer;ILjava/util/BitSet;Ljava/util/BitSet;Ljava/util/List;)V prepareSectionData a method_38602 + p 1 chunkPos + p 2 levelLightEngine + p 3 lightLayer + p 4 index + p 5 skyLight + p 6 blockLight + p 7 updates + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_38603 + p 1 buffer + m ()Ljava/util/BitSet; getEmptySkyYMask b method_38604 + m ()Ljava/util/List; getSkyUpdates c method_38606 + m ()Ljava/util/BitSet; getBlockYMask d method_38608 + m ()Ljava/util/BitSet; getEmptyBlockYMask e method_38609 + m ()Ljava/util/List; getBlockUpdates f method_38610 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunkPos + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/FriendlyByteBuf;II)V + p 1 buffer + p 2 x + p 3 z + m ()V +c net/minecraft/network/protocol/game/ClientboundLoginPacket adl net/minecraft/class_2678 + c @param showDeathScreen Set to false when the doImmediateRespawn gamerule is true + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47937 + f I playerId b comp_88 + f Z hardcore c comp_89 + f Ljava/util/Set; levels d comp_92 + f I maxPlayers e comp_97 + f I chunkRadius f comp_98 + f I simulationDistance g comp_169 + f Z reducedDebugInfo h comp_99 + f Z showDeathScreen i comp_100 + c Set to false when the doImmediateRespawn gamerule is true + f Z doLimitedCrafting j comp_1964 + f Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo k comp_1727 + f Z enforcesSecureChat l comp_2200 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11567 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/resources/ResourceKey; method_34135 a method_34135 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55887 + p 1 buffer + m ()I playerId b comp_88 + m ()Z hardcore e comp_89 + m ()Ljava/util/Set; levels f comp_92 + m ()I maxPlayers g comp_97 + m ()I chunkRadius h comp_98 + m ()I simulationDistance i comp_169 + m ()Z reducedDebugInfo j comp_99 + m ()Z showDeathScreen k comp_100 + m ()Z doLimitedCrafting l comp_1964 + m ()Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo m comp_1727 + m ()Z enforcesSecureChat n comp_2200 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (IZLjava/util/Set;IIIZZZLnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo;Z)V + p 1 playerId + p 2 hardcore + p 3 levels + p 4 maxPlayers + p 5 chunkRadius + p 6 simulationDistance + p 7 reducedDebugInfo + p 8 showDeathScreen + c Set to false when the doImmediateRespawn gamerule is true + p 9 doLimitedCrafting + p 10 commonPlayerSpawnInfo + p 11 enforcesSecureChat + m ()V +c net/minecraft/network/protocol/game/ClientboundMapItemDataPacket adm net/minecraft/class_2683 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47938 + f Lnet/minecraft/world/level/saveddata/maps/MapId; mapId b comp_2270 + f B scale c comp_2271 + f Z locked d comp_2272 + f Ljava/util/Optional; decorations e comp_2273 + f Ljava/util/Optional; colorPatch f comp_2274 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11643 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V applyToMap a method_11642 + c Sets new MapData from the packet to given MapData param + p 1 mapData + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch;)V method_56618 a method_56618 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; mapId b comp_2270 + m ()B scale e comp_2271 + m ()Z locked f comp_2272 + m ()Ljava/util/Optional; decorations g comp_2273 + m ()Ljava/util/Optional; colorPatch h comp_2274 + m (Lnet/minecraft/world/level/saveddata/maps/MapId;BZLjava/util/Collection;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch;)V + p 1 mapId + p 2 scale + p 3 locked + p 4 decorations + p 5 colorPatch + m (Lnet/minecraft/world/level/saveddata/maps/MapId;BZLjava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundMerchantOffersPacket adn net/minecraft/class_3943 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47939 + f I containerId b field_17434 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers c field_17435 + f I villagerLevel d field_18801 + f I villagerXp e field_18802 + f Z showProgress f field_18803 + f Z canRestock g field_19376 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17588 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55889 + p 1 buffer + m ()I getContainerId b method_17589 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers e method_17590 + m ()I getVillagerLevel f method_19458 + m ()I getVillagerXp g method_19459 + m ()Z showProgress h method_19460 + m ()Z canRestock i method_20722 + m (ILnet/minecraft/world/item/trading/MerchantOffers;IIZZ)V + p 1 containerId + p 2 offers + p 3 villagerLevel + p 4 villagerXp + p 5 showProgress + p 6 canRestock + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket ado net/minecraft/class_2684 + f I entityId a field_12310 + f S xa b field_12309 + f S ya c field_12308 + f S za d field_12307 + f B yRot e field_12312 + f B xRot f field_12311 + f Z onGround g field_12306 + f Z hasRot h field_12305 + f Z hasPos i field_20849 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11651 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11645 + p 1 level + m ()S getXa b method_36150 + m ()S getYa e method_36151 + m ()S getZa f method_36152 + m ()B getyRot g method_11649 + m ()B getxRot h method_11650 + m ()Z hasRotation i method_11652 + m ()Z hasPosition j method_22826 + m ()Z isOnGround k method_11653 + m (ISSSBBZZZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 yRot + p 6 xRot + p 7 onGround + p 8 hasRot + p 9 hasPos +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Pos ado$a net/minecraft/class_2684$class_2685 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47940 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Pos; read a method_34138 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55890 + c Writes the raw packet data to the data stream. + p 1 buffer + m (ISSSZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$PosRot ado$b net/minecraft/class_2684$class_2686 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47941 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$PosRot; read a method_34139 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55891 + c Writes the raw packet data to the data stream. + p 1 buffer + m (ISSSBBZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 yRot + p 6 xRot + p 7 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Rot ado$c net/minecraft/class_2684$class_2687 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47942 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Rot; read a method_34140 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55892 + c Writes the raw packet data to the data stream. + p 1 buffer + m (IBBZ)V + p 1 entityId + p 2 yRot + p 3 xRot + p 4 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveVehiclePacket adp net/minecraft/class_2692 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47943 + f D x b field_12324 + f D y c field_12322 + f D z d field_12320 + f F yRot e field_12323 + f F xRot f field_12321 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11672 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55893 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_11673 + m ()D getY e method_11674 + m ()D getZ f method_11670 + m ()F getYRot g method_11675 + m ()F getXRot h method_11671 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenBookPacket adq net/minecraft/class_3895 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47944 + f Lnet/minecraft/world/InteractionHand; hand b field_17199 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17187 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55894 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_17188 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenScreenPacket adr net/minecraft/class_3944 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47945 + f I containerId b field_17436 + f Lnet/minecraft/world/inventory/MenuType; type c field_17437 + f Lnet/minecraft/network/chat/Component; title d field_17438 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17591 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I getContainerId b method_17592 + m ()Lnet/minecraft/world/inventory/MenuType; getType e method_17593 + m ()Lnet/minecraft/network/chat/Component; getTitle f method_17594 + m (ILnet/minecraft/world/inventory/MenuType;Lnet/minecraft/network/chat/Component;)V + p 1 containerId + p 2 menuType + p 3 title + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenSignEditorPacket ads net/minecraft/class_2693 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47946 + f Lnet/minecraft/core/BlockPos; pos b field_12325 + f Z isFrontText c field_43387 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11676 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55895 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11677 + m ()Z isFrontText e method_49995 + m (Lnet/minecraft/core/BlockPos;Z)V + p 1 pos + p 2 isFrontText + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlaceGhostRecipePacket adt net/minecraft/class_2695 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47947 + f I containerId b field_12333 + f Lnet/minecraft/resources/ResourceLocation; recipe c field_12332 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11686 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55896 + c Writes the raw packet data to the data stream. + p 1 byteBuf + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe b method_11684 + m ()I getContainerId e method_11685 + m (ILnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 containerId + p 2 recipe + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerAbilitiesPacket adu net/minecraft/class_2696 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47948 + f I FLAG_INVULNERABLE b field_33336 + f I FLAG_FLYING c field_33337 + f I FLAG_CAN_FLY d field_33338 + f I FLAG_INSTABUILD e field_33339 + f Z invulnerable f field_12339 + f Z isFlying g field_12338 + f Z canFly h field_12337 + f Z instabuild i field_12336 + f F flyingSpeed j field_12335 + f F walkingSpeed k field_12334 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11697 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55897 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isInvulnerable b method_11695 + m ()Z isFlying e method_11698 + m ()Z canFly f method_11699 + m ()Z canInstabuild g method_11696 + m ()F getFlyingSpeed h method_11690 + m ()F getWalkingSpeed i method_11691 + m (Lnet/minecraft/world/entity/player/Abilities;)V + p 1 abilities + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerChatPacket adv net/minecraft/class_7438 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47949 + f Ljava/util/UUID; sender b comp_1099 + f I index c comp_1100 + f Lnet/minecraft/network/chat/MessageSignature; signature d comp_1101 + f Lnet/minecraft/network/chat/SignedMessageBody$Packed; body e comp_1102 + f Lnet/minecraft/network/chat/Component; unsignedContent f comp_1103 + f Lnet/minecraft/network/chat/FilterMask; filterMask g comp_1104 + f Lnet/minecraft/network/chat/ChatType$Bound; chatType h comp_943 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_43629 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55898 + p 1 buffer + m ()Ljava/util/UUID; sender b comp_1099 + m ()I index e comp_1100 + m ()Lnet/minecraft/network/chat/MessageSignature; signature f comp_1101 + m ()Lnet/minecraft/network/chat/SignedMessageBody$Packed; body g comp_1102 + m ()Lnet/minecraft/network/chat/Component; unsignedContent h comp_1103 + m ()Lnet/minecraft/network/chat/FilterMask; filterMask i comp_1104 + m ()Lnet/minecraft/network/chat/ChatType$Bound; chatType j comp_943 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody$Packed;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/FilterMask;Lnet/minecraft/network/chat/ChatType$Bound;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatEndPacket adw net/minecraft/class_5890 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47950 + f I duration b field_29132 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34141 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55899 + p 1 buffer + m (Lnet/minecraft/world/damagesource/CombatTracker;)V + p 1 combatTracker + m (I)V + p 1 duration + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket adx net/minecraft/class_5891 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket; INSTANCE a field_47951 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47952 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34142 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatKillPacket ady net/minecraft/class_5892 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47953 + f I playerId b comp_2275 + f Lnet/minecraft/network/chat/Component; message c comp_2276 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34143 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I playerId b comp_2275 + m ()Lnet/minecraft/network/chat/Component; message e comp_2276 + m (ILnet/minecraft/network/chat/Component;)V + p 1 playerId + p 2 message + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoRemovePacket adz net/minecraft/class_7828 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47954 + f Ljava/util/List; profileIds b comp_1105 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_46325 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55901 + p 1 buffer + m ()Ljava/util/List; profileIds b comp_1105 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket aea net/minecraft/class_2703 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47955 + f Ljava/util/EnumSet; actions b field_40698 + f Ljava/util/List; entries c field_12369 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11721 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Ljava/util/Collection;)Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket; createPlayerInitializing a method_43886 + p 0 players + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry; method_46328 a method_46328 + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46326 a method_46326 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55902 + p 1 buffer + m ()Ljava/util/EnumSet; actions b method_46327 + m ()Ljava/util/List; entries e method_46329 + m ()Ljava/util/List; newEntries f method_46330 + m (Ljava/util/EnumSet;Ljava/util/Collection;)V + p 1 actions + p 2 players + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action;Lnet/minecraft/server/level/ServerPlayer;)V + p 1 action + p 2 player + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action aea$a net/minecraft/class_2703$class_5893 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; ADD_PLAYER a field_29136 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; INITIALIZE_CHAT b field_40699 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_GAME_MODE c field_29137 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_LISTED d field_40700 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_LATENCY e field_29138 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_DISPLAY_NAME f field_29139 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader; reader g field_40701 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer; writer h field_40702 + f [Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; $VALUES i field_29141 + m ()[Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; $values a method_36951 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46332 a method_46332 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46331 a method_46331 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46334 b method_46334 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46333 b method_46333 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46336 c method_46336 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46335 c method_46335 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46338 d method_46338 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46337 d method_46337 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46340 e method_46340 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46339 e method_46339 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46342 f method_46342 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46341 f method_46341 + m (Ljava/lang/String;ILnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer;)V + p 3 reader + p 4 writer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader aea$a$a net/minecraft/class_2703$class_5893$class_7829 +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer aea$a$b net/minecraft/class_2703$class_5893$class_7830 +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry aea$b net/minecraft/class_2703$class_2705 + f Ljava/util/UUID; profileId a comp_1106 + f Lcom/mojang/authlib/GameProfile; profile b comp_1107 + f Z listed c comp_1108 + f I latency d comp_1109 + f Lnet/minecraft/world/level/GameType; gameMode e comp_1110 + f Lnet/minecraft/network/chat/Component; displayName f comp_1111 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g comp_1112 + m ()Ljava/util/UUID; profileId a comp_1106 + m ()Lcom/mojang/authlib/GameProfile; profile b comp_1107 + m ()Z listed c comp_1108 + m ()I latency d comp_1109 + m ()Lnet/minecraft/world/level/GameType; gameMode e comp_1110 + m ()Lnet/minecraft/network/chat/Component; displayName f comp_1111 + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g comp_1112 + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player + m (Ljava/util/UUID;Lcom/mojang/authlib/GameProfile;ZILnet/minecraft/world/level/GameType;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/RemoteChatSession$Data;)V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder aea$c net/minecraft/class_2703$class_7831 + f Ljava/util/UUID; profileId a field_40703 + f Lcom/mojang/authlib/GameProfile; profile b field_40704 + f Z listed c field_40705 + f I latency d field_40706 + f Lnet/minecraft/world/level/GameType; gameMode e field_40707 + f Lnet/minecraft/network/chat/Component; displayName f field_40708 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g field_40709 + m ()Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry; build a method_46343 + m (Ljava/util/UUID;)V + p 1 profileId +c net/minecraft/network/protocol/game/ClientboundPlayerLookAtPacket aeb net/minecraft/class_2707 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47956 + f D x b field_12386 + f D y c field_12384 + f D z d field_12383 + f I entity e field_12388 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; fromAnchor f field_12385 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; toAnchor g field_12389 + f Z atEntity h field_12387 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11731 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3; getPosition a method_11732 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55903 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getFromAnchor b method_11730 + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;DDD)V + p 1 fromAnchor + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V + p 1 fromAnchor + p 2 entity + p 3 toAnchor + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerPositionPacket aec net/minecraft/class_2708 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47957 + f D x b field_12395 + f D y c field_12392 + f D z d field_12390 + f F yRot e field_12393 + f F xRot f field_12391 + f Ljava/util/Set; relativeArguments g field_12396 + f I id h field_12394 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11740 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55904 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_11734 + m ()D getY e method_11735 + m ()D getZ f method_11738 + m ()F getYRot g method_11736 + m ()F getXRot h method_11739 + m ()I getId i method_11737 + m ()Ljava/util/Set; getRelativeArguments j method_11733 + c Returns a set of which fields are relative. Items in this set indicate that the value is a relative change applied to the player's position, rather than an exact value. + m (DDDFFLjava/util/Set;I)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 relativeArguments + p 10 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundProjectilePowerPacket aed net/minecraft/class_9632 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51336 + f I id b field_51337 + f D accelerationPower c field_51849 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_59505 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_59506 + p 1 buffer + m ()I getId b method_59507 + m ()D getAccelerationPower e method_60423 + m (ID)V + p 1 id + p 2 accelerationPower + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRecipePacket aee net/minecraft/class_2713 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47958 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; state b field_12408 + f Ljava/util/List; recipes c field_12414 + f Ljava/util/List; toHighlight d field_12409 + f Lnet/minecraft/stats/RecipeBookSettings; bookSettings e field_25797 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11753 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55905 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/util/List; getRecipes b method_11750 + m ()Ljava/util/List; getHighlights e method_11757 + m ()Lnet/minecraft/stats/RecipeBookSettings; getBookSettings f method_11756 + m ()Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; getState g method_11751 + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State;Ljava/util/Collection;Ljava/util/Collection;Lnet/minecraft/stats/RecipeBookSettings;)V + p 1 state + p 2 recipes + p 3 toHighlight + p 4 bookSettings + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRecipePacket$State aee$a net/minecraft/class_2713$class_2714 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; INIT a field_12416 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; ADD b field_12415 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; REMOVE c field_12417 + f [Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; $VALUES d field_12418 + m ()[Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; $values a method_36953 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRemoveEntitiesPacket aef net/minecraft/class_2716 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47959 + f Lit/unimi/dsi/fastutil/ints/IntList; entityIds b field_33690 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11764 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55906 + p 1 buffer + m ()Lit/unimi/dsi/fastutil/ints/IntList; getEntityIds b method_36548 + m (Lit/unimi/dsi/fastutil/ints/IntList;)V + p 1 entityIds + m ([I)V + p 1 entityIds + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRemoveMobEffectPacket aeg net/minecraft/class_2718 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47960 + f I entityId b comp_2175 + f Lnet/minecraft/core/Holder; effect c comp_2176 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11769 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11767 + p 1 level + m ()I entityId b comp_2175 + m ()Lnet/minecraft/core/Holder; effect e comp_2176 + m (ILnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundResetScorePacket aeh net/minecraft/class_9006 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47961 + f Ljava/lang/String; owner b comp_2120 + f Ljava/lang/String; objectiveName c comp_2121 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_55332 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55908 + p 1 buffer + m ()Ljava/lang/String; owner b comp_2120 + m ()Ljava/lang/String; objectiveName e comp_2121 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRespawnPacket aei net/minecraft/class_2724 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47962 + f B KEEP_ATTRIBUTE_MODIFIERS b field_41730 + f B KEEP_ENTITY_DATA c field_41731 + f B KEEP_ALL_DATA d field_41732 + f Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo e comp_1728 + f B dataToKeep f comp_1729 + m (B)Z shouldKeep a method_48016 + p 1 data + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11782 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55909 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo b comp_1728 + m ()B dataToKeep e comp_1729 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo;B)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRotateHeadPacket aej net/minecraft/class_2726 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47963 + f I entityId b field_12437 + f B yHeadRot c field_12436 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11788 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11786 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55910 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()B getYHeadRot b method_11787 + m (Lnet/minecraft/world/entity/Entity;B)V + p 1 entity + p 2 yHeadRot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket aek net/minecraft/class_2637 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47964 + f I POS_IN_SECTION_BITS b field_33341 + f Lnet/minecraft/core/SectionPos; sectionPos c field_26345 + f [S positions d field_26346 + f [Lnet/minecraft/world/level/block/state/BlockState; states e field_26347 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11392 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/util/function/BiConsumer;)V runUpdates a method_30621 + p 1 consumer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55911 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/core/SectionPos;Lit/unimi/dsi/fastutil/shorts/ShortSet;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V + p 1 sectionPos + p 2 positions + p 3 section + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSelectAdvancementsTabPacket ael net/minecraft/class_2729 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47965 + f Lnet/minecraft/resources/ResourceLocation; tab b field_12440 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11794 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55912 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getTab b method_11793 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 tab + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundServerDataPacket aem net/minecraft/class_7495 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47966 + f Lnet/minecraft/network/chat/Component; motd b comp_2277 + f Ljava/util/Optional; iconBytes c comp_2278 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44131 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; motd b comp_2277 + m ()Ljava/util/Optional; iconBytes e comp_2278 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;)V + p 1 motd + p 2 iconBytes + m ()V +c net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket aen net/minecraft/class_5894 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47967 + f Lnet/minecraft/network/chat/Component; text b comp_2279 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34154 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2279 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket aeo net/minecraft/class_5895 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47968 + f D newCenterX b field_29143 + f D newCenterZ c field_29144 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34156 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55915 + p 1 buffer + m ()D getNewCenterZ b method_34157 + m ()D getNewCenterX e method_34158 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderLerpSizePacket aep net/minecraft/class_5896 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47969 + f D oldSize b field_29145 + f D newSize c field_29146 + f J lerpTime d field_29147 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34159 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55916 + p 1 buffer + m ()D getOldSize b method_34160 + m ()D getNewSize e method_34161 + m ()J getLerpTime f method_34162 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderSizePacket aeq net/minecraft/class_5897 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47970 + f D size b field_29148 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34163 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55917 + p 1 buffer + m ()D getSize b method_34164 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderWarningDelayPacket aer net/minecraft/class_5898 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47971 + f I warningDelay b field_29149 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34165 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55918 + p 1 buffer + m ()I getWarningDelay b method_34166 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderWarningDistancePacket aes net/minecraft/class_5899 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47972 + f I warningBlocks b field_29150 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34167 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55919 + p 1 buffer + m ()I getWarningBlocks b method_34168 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetCameraPacket aet net/minecraft/class_2734 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47973 + f I cameraId b field_12462 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11801 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11800 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55920 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/world/entity/Entity;)V + p 1 cameraEntity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetCarriedItemPacket aeu net/minecraft/class_2735 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47974 + f I slot b field_12463 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11802 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55921 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_11803 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetChunkCacheCenterPacket aev net/minecraft/class_4282 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47975 + f I x b field_19206 + f I z c field_19207 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_20321 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55922 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getX b method_20322 + m ()I getZ e method_20323 + m (II)V + p 1 x + p 2 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetChunkCacheRadiusPacket aew net/minecraft/class_4273 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47976 + f I radius b field_19146 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_20205 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55923 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getRadius b method_20206 + m (I)V + p 1 radius + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetDefaultSpawnPositionPacket aex net/minecraft/class_2759 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47977 + f Lnet/minecraft/core/BlockPos; pos b field_12615 + f F angle c field_26381 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11869 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55924 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11870 + m ()F getAngle e method_30732 + m (Lnet/minecraft/core/BlockPos;F)V + p 1 pos + p 2 angle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetDisplayObjectivePacket aey net/minecraft/class_2736 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47978 + f Lnet/minecraft/world/scores/DisplaySlot; slot b field_12464 + f Ljava/lang/String; objectiveName c field_12465 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11805 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55925 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/scores/DisplaySlot; getSlot b method_11806 + m ()Ljava/lang/String; getObjectiveName e method_11804 + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)V + p 1 slot + p 2 objective + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityDataPacket aez net/minecraft/class_2739 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47979 + f I EOF_MARKER b field_40850 + f I id c comp_1127 + f Ljava/util/List; packedItems d comp_1128 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11808 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/util/List;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V pack a method_46615 + p 0 dataValues + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/util/List; unpack a method_46616 + p 0 buffer + m ()I id b comp_1127 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write b method_55926 + p 1 buffer + m ()Ljava/util/List; packedItems e comp_1128 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (ILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityLinkPacket afa net/minecraft/class_2740 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47980 + f I sourceId b field_12479 + f I destId c field_12478 + c The entity that is holding the leash, or -1 to clear the holder. + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11811 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55927 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSourceId b method_11812 + m ()I getDestId e method_11810 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 source + p 2 destination + c The entity to link to or {@code null} to break any existing link. + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityMotionPacket afb net/minecraft/class_2743 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47981 + f I id b field_12564 + f I xa c field_12563 + f I ya d field_12562 + f I za e field_12561 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11817 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55928 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11818 + m ()D getXa e method_11815 + m ()D getYa f method_11816 + m ()D getZa g method_11819 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (ILnet/minecraft/world/phys/Vec3;)V + p 1 id + p 2 deltaMovement + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEquipmentPacket afc net/minecraft/class_2744 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47982 + f B CONTINUE_MASK b field_33342 + f I entity c field_12565 + f Ljava/util/List; slots d field_25721 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11823 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55929 + p 1 buffer + m ()I getEntity b method_11820 + m ()Ljava/util/List; getSlots e method_30145 + m (ILjava/util/List;)V + p 1 entity + p 2 slots + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetExperiencePacket afd net/minecraft/class_2748 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47983 + f F experienceProgress b field_12580 + f I totalExperience c field_12582 + f I experienceLevel d field_12581 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11829 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55930 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getExperienceProgress b method_11830 + m ()I getTotalExperience e method_11827 + m ()I getExperienceLevel f method_11828 + m (FII)V + p 1 experienceProgress + p 2 totalExperience + p 3 experienceLevel + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetHealthPacket afe net/minecraft/class_2749 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47984 + f F health b field_12584 + f I food c field_12585 + f F saturation d field_12583 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11832 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55931 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getHealth b method_11833 + m ()I getFood e method_11831 + m ()F getSaturation f method_11834 + m (FIF)V + p 1 health + p 2 food + p 3 saturation + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetObjectivePacket aff net/minecraft/class_2751 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47985 + f I METHOD_ADD b field_33343 + f I METHOD_REMOVE c field_33344 + f I METHOD_CHANGE d field_33345 + f Ljava/lang/String; objectiveName e field_12589 + f Lnet/minecraft/network/chat/Component; displayName f field_12591 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType g field_12592 + f Ljava/util/Optional; numberFormat h field_47519 + f I method i field_12590 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11838 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55932 + p 1 buffer + m ()Ljava/lang/String; getObjectiveName b method_11835 + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_11836 + m ()I getMethod f method_11837 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getRenderType g method_11839 + m ()Ljava/util/Optional; getNumberFormat h method_55336 + m (Lnet/minecraft/world/scores/Objective;I)V + p 1 objective + p 2 method + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPassengersPacket afg net/minecraft/class_2752 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47986 + f I vehicle b field_12594 + f [I passengers c field_12593 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11842 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55933 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()[I getPassengers b method_11840 + m ()I getVehicle e method_11841 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket afh net/minecraft/class_5900 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47987 + f I METHOD_ADD b field_33346 + f I METHOD_REMOVE c field_33347 + f I METHOD_CHANGE d field_33348 + f I METHOD_JOIN e field_33349 + f I METHOD_LEAVE f field_33350 + f I MAX_VISIBILITY_LENGTH g field_33351 + f I MAX_COLLISION_LENGTH h field_33352 + f I method i field_29151 + f Ljava/lang/String; name j field_29152 + f Ljava/util/Collection; players k field_29153 + f Ljava/util/Optional; parameters l field_29154 + m (I)Z shouldHavePlayerList a method_34169 + p 0 method + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34173 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createRemovePacket a method_34170 + p 0 team + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/lang/String;Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action;)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createPlayerPacket a method_34171 + p 0 team + p 1 playerName + p 2 action + m (Lnet/minecraft/world/scores/PlayerTeam;Z)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createAddOrModifyPacket a method_34172 + p 0 team + p 1 useAdd + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55934 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; getPlayerAction b method_34174 + m (I)Z shouldHaveParameters b method_34175 + p 0 method + m ()Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; getTeamAction e method_34176 + m ()Ljava/lang/String; getName f method_34177 + m ()Ljava/util/Collection; getPlayers g method_34178 + m ()Ljava/util/Optional; getParameters h method_34179 + m ()Ljava/lang/IllegalStateException; method_34180 i method_34180 + m (Ljava/lang/String;ILjava/util/Optional;Ljava/util/Collection;)V + p 1 name + p 2 method + p 3 parameters + p 4 players + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action afh$a net/minecraft/class_5900$class_5901 + f Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; ADD a field_29155 + f Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; REMOVE b field_29156 + f [Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; $VALUES c field_29157 + m ()[Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; $values a method_36954 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Parameters afh$b net/minecraft/class_5900$class_5902 + f Lnet/minecraft/network/chat/Component; displayName a field_29158 + f Lnet/minecraft/network/chat/Component; playerPrefix b field_29159 + f Lnet/minecraft/network/chat/Component; playerSuffix c field_29160 + f Ljava/lang/String; nametagVisibility d field_29161 + f Ljava/lang/String; collisionRule e field_29162 + f Lnet/minecraft/ChatFormatting; color f field_29163 + f I options g field_29164 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_34181 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_34182 + p 1 buffer + m ()I getOptions b method_34183 + m ()Lnet/minecraft/ChatFormatting; getColor c method_34184 + m ()Ljava/lang/String; getNametagVisibility d method_34185 + m ()Ljava/lang/String; getCollisionRule e method_34186 + m ()Lnet/minecraft/network/chat/Component; getPlayerPrefix f method_34187 + m ()Lnet/minecraft/network/chat/Component; getPlayerSuffix g method_34188 + m (Lnet/minecraft/world/scores/PlayerTeam;)V + p 1 team + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundSetScorePacket afi net/minecraft/class_2757 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47988 + f Ljava/lang/String; owner b comp_2122 + f Ljava/lang/String; objectiveName c comp_2123 + f I score d comp_2124 + f Ljava/util/Optional; display e comp_2125 + f Ljava/util/Optional; numberFormat f comp_2126 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11866 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Ljava/lang/String; owner b comp_2122 + m ()Ljava/lang/String; objectiveName e comp_2123 + m ()I score f comp_2124 + m ()Ljava/util/Optional; display g comp_2125 + m ()Ljava/util/Optional; numberFormat h comp_2126 + m (Ljava/lang/String;Ljava/lang/String;ILjava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetSimulationDistancePacket afj net/minecraft/class_6682 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47989 + f I simulationDistance b comp_170 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_39027 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55936 + p 1 buffer + m ()I simulationDistance b comp_170 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetSubtitleTextPacket afk net/minecraft/class_5903 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47990 + f Lnet/minecraft/network/chat/Component; text b comp_2280 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34189 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2280 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTimePacket afl net/minecraft/class_2761 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47991 + f J gameTime b field_12621 + f J dayTime c field_12620 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11872 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55938 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()J getGameTime b method_11871 + m ()J getDayTime e method_11873 + m (JJZ)V + p 1 gameTime + p 3 dayTime + p 5 daylightCycleEnabled + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTitleTextPacket afm net/minecraft/class_5904 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47992 + f Lnet/minecraft/network/chat/Component; text b comp_2281 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34191 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2281 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTitlesAnimationPacket afn net/minecraft/class_5905 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47993 + f I fadeIn b field_29167 + f I stay c field_29168 + f I fadeOut d field_29169 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34193 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55940 + p 1 buffer + m ()I getFadeIn b method_34194 + m ()I getStay e method_34195 + m ()I getFadeOut f method_34196 + m (III)V + p 1 fadeIn + p 2 stay + p 3 fadeOut + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSoundEntityPacket afo net/minecraft/class_2765 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47994 + f Lnet/minecraft/core/Holder; sound b field_12642 + f Lnet/minecraft/sounds/SoundSource; source c field_12641 + f I id d field_12640 + f F volume e field_12639 + f F pitch f field_12638 + f J seed g field_38819 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11884 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55941 + p 1 buffer + m ()Lnet/minecraft/core/Holder; getSound b method_11882 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11881 + m ()I getId f method_11883 + m ()F getVolume g method_11885 + m ()F getPitch h method_11880 + m ()J getSeed i method_43235 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/world/entity/Entity;FFJ)V + p 1 sound + p 2 source + p 3 entity + p 4 volume + p 5 pitch + p 6 seed + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSoundPacket afp net/minecraft/class_2767 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47995 + f F LOCATION_ACCURACY b field_33353 + f Lnet/minecraft/core/Holder; sound c field_12661 + f Lnet/minecraft/sounds/SoundSource; source d field_12660 + f I x e field_12659 + f I y f field_12658 + f I z g field_12657 + f F volume h field_12656 + f F pitch i field_12662 + f J seed j field_38820 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11895 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55942 + p 1 buffer + m ()Lnet/minecraft/core/Holder; getSound b method_11894 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11888 + m ()D getX f method_11890 + m ()D getY g method_11889 + m ()D getZ h method_11893 + m ()F getVolume i method_11891 + m ()F getPitch j method_11892 + m ()J getSeed k method_43236 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;DDDFFJ)V + p 1 sound + p 2 source + p 3 x + p 5 y + p 7 z + p 9 volume + p 10 pitch + p 11 seed + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundStartConfigurationPacket afq net/minecraft/class_8588 + f Lnet/minecraft/network/protocol/game/ClientboundStartConfigurationPacket; INSTANCE a field_47997 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47998 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_52272 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundStopSoundPacket afr net/minecraft/class_2770 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47999 + f I HAS_SOURCE b field_33354 + f I HAS_SOUND c field_33355 + f Lnet/minecraft/resources/ResourceLocation; name d field_12676 + f Lnet/minecraft/sounds/SoundSource; source e field_12677 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11905 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55944 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getName b method_11904 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11903 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V + p 1 name + p 2 source + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSystemChatPacket afs net/minecraft/class_7439 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48000 + f Lnet/minecraft/network/chat/Component; content b comp_763 + f Z overlay c comp_906 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_43631 + m ()Lnet/minecraft/network/chat/Component; content b comp_763 + m ()Z overlay e comp_906 + m (Lnet/minecraft/network/chat/Component;Z)V + m ()V +c net/minecraft/network/protocol/game/ClientboundTabListPacket aft net/minecraft/class_2772 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48001 + f Lnet/minecraft/network/chat/Component; header b comp_2282 + f Lnet/minecraft/network/chat/Component; footer c comp_2283 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11907 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; header b comp_2282 + m ()Lnet/minecraft/network/chat/Component; footer e comp_2283 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 header + p 2 footer + m ()V +c net/minecraft/network/protocol/game/ClientboundTagQueryPacket afu net/minecraft/class_2774 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48002 + f I transactionId b field_12691 + f Lnet/minecraft/nbt/CompoundTag; tag c field_12690 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11909 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55947 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getTransactionId b method_11910 + m ()Lnet/minecraft/nbt/CompoundTag; getTag e method_11911 + m (ILnet/minecraft/nbt/CompoundTag;)V + p 1 transactionId + p 2 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTakeItemEntityPacket afv net/minecraft/class_2775 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48003 + f I itemId b field_12694 + f I playerId c field_12693 + f I amount d field_12692 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11914 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55948 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getItemId b method_11915 + m ()I getPlayerId e method_11912 + m ()I getAmount f method_11913 + m (III)V + p 1 itemId + p 2 playerId + p 3 amount + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTeleportEntityPacket afw net/minecraft/class_2777 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48004 + f I id b field_12705 + f D x c field_12703 + f D y d field_12702 + f D z e field_12701 + f B yRot f field_12707 + f B xRot g field_12706 + f Z onGround h field_12704 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11922 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55949 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11916 + m ()D getX e method_11917 + m ()D getY f method_11919 + m ()D getZ g method_11918 + m ()B getyRot h method_11920 + m ()B getxRot i method_11921 + m ()Z isOnGround j method_11923 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTickingStatePacket afx net/minecraft/class_8913 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48005 + f F tickRate b comp_2014 + f Z isFrozen c comp_2015 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_54665 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/TickRateManager;)Lnet/minecraft/network/protocol/game/ClientboundTickingStatePacket; from a method_54664 + p 0 tickRateManager + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55950 + p 1 buffer + m ()F tickRate b comp_2014 + m ()Z isFrozen e comp_2015 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (FZ)V + m ()V +c net/minecraft/network/protocol/game/ClientboundTickingStepPacket afy net/minecraft/class_8914 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48006 + f I tickSteps b comp_2016 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_54667 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/TickRateManager;)Lnet/minecraft/network/protocol/game/ClientboundTickingStepPacket; from a method_54666 + p 0 tickRateManager + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55951 + p 1 buffer + m ()I tickSteps b comp_2016 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket afz net/minecraft/class_2779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48007 + f Z reset b field_12718 + f Ljava/util/List; added c field_12717 + f Ljava/util/Set; removed d field_12715 + f Ljava/util/Map; progress e field_12716 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11925 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/advancements/AdvancementProgress;)V method_34197 a method_34197 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55952 + p 1 buffer + m ()Ljava/util/List; getAdded b method_11928 + m ()Ljava/util/Set; getRemoved e method_11926 + m ()Ljava/util/Map; getProgress f method_11927 + m ()Z shouldReset g method_11924 + m (ZLjava/util/Collection;Ljava/util/Set;Ljava/util/Map;)V + p 1 reset + p 2 added + p 3 removed + p 4 progress + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket aga net/minecraft/class_2781 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48008 + f I entityId b field_12719 + f Ljava/util/List; attributes c field_12720 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11936 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I getEntityId b method_11937 + m ()Ljava/util/List; getValues e method_11938 + m (ILjava/util/Collection;)V + p 1 entityId + p 2 attributes + m (ILjava/util/List;)V + p 1 entityId + p 2 attributes + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket$AttributeSnapshot aga$a net/minecraft/class_2781$class_2782 + f Lnet/minecraft/network/codec/StreamCodec; MODIFIER_STREAM_CODEC a field_48009 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48010 + f Lnet/minecraft/core/Holder; attribute c comp_2177 + f D base d comp_2178 + f Ljava/util/Collection; modifiers e comp_2179 + m ()Lnet/minecraft/core/Holder; attribute a comp_2177 + m ()D base b comp_2178 + m ()Ljava/util/Collection; modifiers c comp_2179 + m (Lnet/minecraft/core/Holder;DLjava/util/Collection;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateMobEffectPacket agb net/minecraft/class_2783 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48011 + f I FLAG_AMBIENT b field_33356 + f I FLAG_VISIBLE c field_33357 + f I FLAG_SHOW_ICON d field_33358 + f I FLAG_BLEND e field_47706 + f I entityId f field_12727 + f Lnet/minecraft/core/Holder; effect g field_12725 + f I effectAmplifier h field_12729 + f I effectDurationTicks i field_12726 + f B flags j field_12728 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11948 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55954 + p 1 buffer + m ()I getEntityId b method_11943 + m ()Lnet/minecraft/core/Holder; getEffect e method_11946 + m ()I getEffectAmplifier f method_11945 + m ()I getEffectDurationTicks g method_11944 + m ()Z isEffectVisible h method_11949 + m ()Z isEffectAmbient i method_11950 + m ()Z effectShowsIcon j method_11942 + m ()Z shouldBlend k method_55629 + m (ILnet/minecraft/world/effect/MobEffectInstance;Z)V + p 1 entityId + p 2 effect + p 3 blend + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket agc net/minecraft/class_2788 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48012 + f Ljava/util/List; recipes b field_12751 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11997 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket;)Ljava/util/List; method_55955 a method_55955 + m ()Ljava/util/List; getRecipes b method_11998 + m (Ljava/util/Collection;)V + p 1 recipes + m ()V +c net/minecraft/network/protocol/game/CommonPlayerSpawnInfo agd net/minecraft/class_8589 + f Lnet/minecraft/core/Holder; dimensionType a comp_1553 + f Lnet/minecraft/resources/ResourceKey; dimension b comp_1554 + f J seed c comp_1555 + f Lnet/minecraft/world/level/GameType; gameType d comp_1556 + f Lnet/minecraft/world/level/GameType; previousGameType e comp_1557 + f Z isDebug f comp_1558 + f Z isFlat g comp_1559 + f Ljava/util/Optional; lastDeathLocation h comp_1560 + f I portalCooldown i comp_1561 + m ()Lnet/minecraft/core/Holder; dimensionType a comp_1553 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_52274 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_1554 + m ()J seed c comp_1555 + m ()Lnet/minecraft/world/level/GameType; gameType d comp_1556 + m ()Lnet/minecraft/world/level/GameType; previousGameType e comp_1557 + m ()Z isDebug f comp_1558 + m ()Z isFlat g comp_1559 + m ()Ljava/util/Optional; lastDeathLocation h comp_1560 + m ()I portalCooldown i comp_1561 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;ZZLjava/util/Optional;I)V +c net/minecraft/network/protocol/game/DebugEntityNameGenerator age net/minecraft/class_4617 + f [Ljava/lang/String; NAMES_FIRST_PART a field_21050 + f [Ljava/lang/String; NAMES_SECOND_PART b field_21051 + m (Lnet/minecraft/util/RandomSource;[Ljava/lang/String;)Ljava/lang/String; getRandomString a method_23266 + p 0 random + p 1 strings + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; getEntityName a method_36154 + p 0 entity + m (Ljava/util/UUID;)Ljava/lang/String; getEntityName a method_23267 + p 0 uuid + m (Ljava/util/UUID;)Lnet/minecraft/util/RandomSource; getRandom b method_23268 + p 0 uuid + m ()V + m ()V +c net/minecraft/network/protocol/game/DebugPackets agf net/minecraft/class_4209 + f Lorg/slf4j/Logger; LOGGER a field_18961 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_44135 a method_44135 + m (Lnet/minecraft/server/level/ServerLevel;)V sendGameTestClearPacket a method_22317 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V sendPacketToAllPlayers a method_22319 + p 0 level + p 1 payload + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)V method_36155 a method_36155 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)V sendPoiPacketsForChunk a method_19775 + p 0 level + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/resources/ResourceKey;)V method_55630 a method_55630 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/Object;)Ljava/lang/String; getShortDescription a method_36156 + p 0 level + p 1 object + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Collection;)V sendRaids a method_20575 + p 0 level + p 1 raids + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiAddedPacket a method_19776 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/lang/String;II)V sendGameTestAddMarker a method_22318 + p 0 level + p 1 pos + p 2 text + p 3 color + p 4 lifetimeMillis + m (Lnet/minecraft/world/entity/LivingEntity;)V sendEntityBrain a method_19774 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;J)Ljava/util/List; getMemoryDescriptions a method_36157 + p 0 entity + p 1 gameTime + m (Lnet/minecraft/world/entity/animal/Bee;)V sendBeeInfo a method_23855 + p 0 bee + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V sendBreezeInfo a method_54909 + p 0 breeze + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/goal/GoalSelector;)V sendGoalSelector a method_19469 + p 0 level + p 1 mob + p 2 goalSelector + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/pathfinder/Path;F)V sendPathFindingPacket a method_19470 + p 0 level + p 1 mob + p 2 path + p 3 maxDistanceToWaypoint + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/gameevent/GameEventListener;)V sendGameEventListenerInfo a method_33140 + p 0 level + p 1 gameEventListener + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V sendNeighborsUpdatePacket a method_19472 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V sendHiveInfo a method_23856 + p 0 level + p 1 pos + p 2 blockState + p 3 hiveBlockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V sendGameEventInfo a method_33139 + p 0 level + p 1 gameEvent + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V sendStructurePacket a method_19474 + p 0 level + p 1 structureStart + m (Ljava/lang/String;)Ljava/lang/String; method_52275 a method_52275 + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)V method_36162 a method_36162 + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/entity/ai/gossip/GossipType;Ljava/lang/Integer;)V method_52276 a method_52276 + m (Ljava/util/List;Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V method_52277 a method_52277 + m (Lnet/minecraft/core/Holder;)Z method_36159 a method_36159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiRemovedPacket b method_19777 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiTicketCountPacket c method_19778 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendVillageSectionsPacket d method_24819 + p 0 level + p 1 pos + m ()V + m ()V +c net/minecraft/network/protocol/game/GamePacketTypes agg net/minecraft/class_9094 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DEBUG_SAMPLE A field_48782 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DELETE_CHAT B field_48013 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DISGUISED_CHAT C field_48014 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ENTITY_EVENT D field_48015 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_EXPLODE E field_48016 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_FORGET_LEVEL_CHUNK F field_48017 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_GAME_EVENT G field_48018 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HORSE_SCREEN_OPEN H field_48019 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HURT_ANIMATION I field_48020 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_INITIALIZE_BORDER J field_48021 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_CHUNK_WITH_LIGHT K field_48022 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_EVENT L field_48023 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_PARTICLES M field_48024 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LIGHT_UPDATE N field_48025 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN O field_48026 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MAP_ITEM_DATA P field_48027 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MERCHANT_OFFERS Q field_48028 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_POS R field_48029 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_POS_ROT S field_48030 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_ROT T field_48031 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_VEHICLE U field_48032 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_BOOK V field_48033 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_SCREEN W field_48034 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_SIGN_EDITOR X field_48035 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLACE_GHOST_RECIPE Y field_48036 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_ABILITIES Z field_48037 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_DEFAULT_SPAWN_POSITION aA field_48091 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_DISPLAY_OBJECTIVE aB field_48040 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_DATA aC field_48041 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_LINK aD field_48042 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_MOTION aE field_48043 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_EQUIPMENT aF field_48044 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_EXPERIENCE aG field_48045 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_HEALTH aH field_48046 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_OBJECTIVE aI field_48047 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_PASSENGERS aJ field_48048 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_PLAYER_TEAM aK field_48049 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SCORE aL field_48050 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BUNDLE a field_48039 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SIMULATION_DISTANCE aM field_48051 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SUBTITLE_TEXT aN field_48052 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TIME aO field_48053 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TITLE_TEXT aP field_48054 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TITLES_ANIMATION aQ field_48055 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SOUND_ENTITY aR field_48056 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SOUND aS field_48057 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_START_CONFIGURATION aT field_48058 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STOP_SOUND aU field_48059 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SYSTEM_CHAT aV field_48060 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAB_LIST aW field_48061 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAG_QUERY aX field_48062 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAKE_ITEM_ENTITY aY field_48063 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TELEPORT_ENTITY aZ field_48064 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_CHAT aa field_48038 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_END ab field_48066 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_ENTER ac field_48067 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_KILL ad field_48068 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_INFO_REMOVE ae field_48069 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_INFO_UPDATE af field_48070 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_LOOK_AT ag field_48071 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_POSITION ah field_48072 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RECIPE ai field_48073 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REMOVE_ENTITIES aj field_48074 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REMOVE_MOB_EFFECT ak field_48075 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESPAWN al field_48076 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ROTATE_HEAD am field_48077 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SECTION_BLOCKS_UPDATE an field_48078 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SELECT_ADVANCEMENTS_TAB ao field_48079 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SERVER_DATA ap field_48080 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ACTION_BAR_TEXT aq field_48081 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_CENTER ar field_48082 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_LERP_SIZE as field_48083 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_SIZE at field_48084 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_WARNING_DELAY au field_48085 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_WARNING_DISTANCE av field_48086 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CAMERA aw field_48087 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CARRIED_ITEM ax field_48088 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CHUNK_CACHE_CENTER ay field_48089 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CHUNK_CACHE_RADIUS az field_48090 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_LOCK_DIFFICULTY bA field_48141 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_POS bB field_48142 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_POS_ROT bC field_48143 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_ROT bD field_48144 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_STATUS_ONLY bE field_48093 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_VEHICLE bF field_48094 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PADDLE_BOAT bG field_48095 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PICK_ITEM bH field_48096 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLACE_RECIPE bI field_48097 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_ABILITIES bJ field_48098 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_ACTION bK field_48099 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_COMMAND bL field_48100 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BUNDLE_DELIMITER b field_48092 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_INPUT bM field_48101 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RECIPE_BOOK_CHANGE_SETTINGS bN field_48102 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RECIPE_BOOK_SEEN_RECIPE bO field_48103 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RENAME_ITEM bP field_48104 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SEEN_ADVANCEMENTS bQ field_48105 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SELECT_TRADE bR field_48106 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_BEACON bS field_48107 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_CARRIED_ITEM bT field_48108 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_COMMAND_BLOCK bU field_48109 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_COMMAND_MINECART bV field_48110 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_CREATIVE_MODE_SLOT bW field_48111 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_JIGSAW_BLOCK bX field_48112 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_STRUCTURE_BLOCK bY field_48113 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SIGN_UPDATE bZ field_48114 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ADVANCEMENTS ba field_48065 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ATTRIBUTES bb field_48119 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_MOB_EFFECT bc field_48120 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_RECIPES bd field_48121 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PROJECTILE_POWER be field_51341 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_ACCEPT_TELEPORTATION bf field_48122 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_BLOCK_ENTITY_TAG_QUERY bg field_48123 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHANGE_DIFFICULTY bh field_48124 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_ACK bi field_48125 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_COMMAND bj field_48126 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_COMMAND_SIGNED bk field_50086 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT bl field_48127 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_SESSION_UPDATE bm field_48128 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHUNK_BATCH_RECEIVED bn field_48129 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CLIENT_COMMAND bo field_48130 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_COMMAND_SUGGESTION bp field_48131 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONFIGURATION_ACKNOWLEDGED bq field_48132 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_BUTTON_CLICK br field_48133 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_CLICK bs field_48134 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_CLOSE bt field_48135 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_SLOT_STATE_CHANGED bu field_48136 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_DEBUG_SAMPLE_SUBSCRIPTION bv field_48783 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_EDIT_BOOK bw field_48137 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_ENTITY_TAG_QUERY bx field_48138 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_INTERACT by field_48139 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_JIGSAW_GENERATE bz field_48140 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ADD_ENTITY c field_48145 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SWING ca field_48115 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_TELEPORT_TO_ENTITY cb field_48116 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_USE_ITEM_ON cc field_48117 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_USE_ITEM cd field_48118 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESET_SCORE ce field_48146 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TICKING_STATE cf field_48147 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TICKING_STEP cg field_48148 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ADD_EXPERIENCE_ORB d field_48149 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ANIMATE e field_48150 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_AWARD_STATS f field_48151 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_CHANGED_ACK g field_48152 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_DESTRUCTION h field_48153 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_ENTITY_DATA i field_48154 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_EVENT j field_48155 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_UPDATE k field_48156 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BOSS_EVENT l field_48157 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHANGE_DIFFICULTY m field_48158 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNK_BATCH_FINISHED n field_48159 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNK_BATCH_START o field_48160 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNKS_BIOMES p field_48161 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CLEAR_TITLES q field_48162 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COMMAND_SUGGESTIONS r field_48163 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COMMANDS s field_48164 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_CLOSE t field_48165 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_CONTENT u field_48166 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_DATA v field_48167 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_SLOT w field_48168 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COOLDOWN x field_48169 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_CHAT_COMPLETIONS y field_48170 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DAMAGE_EVENT z field_48171 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_55956 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_55957 + p 0 id + m ()V + m ()V +c net/minecraft/network/protocol/game/GameProtocols agh net/minecraft/class_9095 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_48172 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE b field_48173 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_55958 a method_55958 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_55959 b method_55959 + m ()V + m ()V +c net/minecraft/network/protocol/game/ServerGamePacketListener agi net/minecraft/class_2792 + c PacketListener for the server side of the PLAY protocol. + m (Lnet/minecraft/network/protocol/game/ServerboundAcceptTeleportationPacket;)V handleAcceptTeleportPacket a method_12050 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundBlockEntityTagQueryPacket;)V handleBlockEntityTagQuery a method_12072 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChangeDifficultyPacket;)V handleChangeDifficulty a method_19475 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatAckPacket;)V handleChatAck a method_44898 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandPacket;)V handleChatCommand a method_43667 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;)V handleSignedChatCommand a method_58580 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;)V handleChat a method_12048 + c Process chat messages (broadcast back to clients) and commands (executes) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatSessionUpdatePacket;)V handleChatSessionUpdate a method_46367 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChunkBatchReceivedPacket;)V handleChunkBatchReceived a method_52278 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket;)V handleClientCommand a method_12068 + c Processes the client status updates: respawn attempt from player, opening statistics or achievements, or acquiring 'open inventory' achievement + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket;)V handleCustomCommandSuggestions a method_12059 + c This method is only called for manual tab-completion (the {@link net.minecraft.commands.synchronization.SuggestionProviders#ASK_SERVER minecraft:ask_server} suggestion provider). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket;)V handleConfigurationAcknowledged a method_52279 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerButtonClickPacket;)V handleContainerButtonClick a method_12055 + c Enchants the item identified by the packet given some convoluted conditions (matching window, which should/shouldn't be in use?) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerClickPacket;)V handleContainerClick a method_12076 + c Executes a container/inventory slot manipulation as indicated by the packet. Sends the serverside result if they didn't match the indicated result and prevents further manipulation by the player until he confirms that it has the same open container/inventory + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerClosePacket;)V handleContainerClose a method_12054 + c Processes the client closing windows (container) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerSlotStateChangedPacket;)V handleContainerSlotStateChanged a method_54436 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundDebugSampleSubscriptionPacket;)V handleDebugSampleSubscription a method_56619 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundEditBookPacket;)V handleEditBook a method_12053 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundEntityTagQueryPacket;)V handleEntityTagQuery a method_12074 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket;)V handleInteract a method_12062 + c Processes left and right clicks on entities + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundJigsawGeneratePacket;)V handleJigsawGenerate a method_27273 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundLockDifficultyPacket;)V handleLockDifficulty a method_19476 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket;)V handleMovePlayer a method_12063 + c Processes clients perspective on player positioning and/or orientation + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundMoveVehiclePacket;)V handleMoveVehicle a method_12078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPaddleBoatPacket;)V handlePaddleBoat a method_12064 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPickItemPacket;)V handlePickItem a method_12084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlaceRecipePacket;)V handlePlaceRecipe a method_12061 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerAbilitiesPacket;)V handlePlayerAbilities a method_12083 + c Processes a player starting/stopping flying + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket;)V handlePlayerAction a method_12066 + c Processes the player initiating/stopping digging on a particular spot, as well as a player dropping items + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket;)V handlePlayerCommand a method_12045 + c Processes a range of action-types: sneaking, sprinting, waking from sleep, opening the inventory or setting jump height of the horse the player is riding + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerInputPacket;)V handlePlayerInput a method_12067 + c Processes player movement input. Includes walking, strafing, jumping, and sneaking. Excludes riding and toggling flying/sprinting. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRecipeBookChangeSettingsPacket;)V handleRecipeBookChangeSettingsPacket a method_30303 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRecipeBookSeenRecipePacket;)V handleRecipeBookSeenRecipePacket a method_12047 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRenameItemPacket;)V handleRenameItem a method_12060 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket;)V handleSeenAdvancements a method_12058 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSelectTradePacket;)V handleSelectTrade a method_12080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetBeaconPacket;)V handleSetBeaconPacket a method_12057 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCarriedItemPacket;)V handleSetCarriedItem a method_12056 + c Updates which quickbar slot is selected + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCommandBlockPacket;)V handleSetCommandBlock a method_12077 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCommandMinecartPacket;)V handleSetCommandMinecart a method_12049 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCreativeModeSlotPacket;)V handleSetCreativeModeSlot a method_12070 + c Update the server with an ItemStack in a slot. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetJigsawBlockPacket;)V handleSetJigsawBlock a method_16383 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetStructureBlockPacket;)V handleSetStructureBlock a method_12051 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;)V handleSignUpdate a method_12071 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSwingPacket;)V handleAnimate a method_12052 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundTeleportToEntityPacket;)V handleTeleportToEntityPacket a method_12073 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundUseItemOnPacket;)V handleUseItemOn a method_12046 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundUseItemPacket;)V handleUseItem a method_12065 + c Called when a client is using an item while not pointing at a block, but simply using an item + p 1 packet +c net/minecraft/network/protocol/game/ServerPacketListener agj net/minecraft/class_6857 + f Lorg/slf4j/Logger; LOGGER a field_51479 + m ()V +c net/minecraft/network/protocol/game/ServerboundAcceptTeleportationPacket agk net/minecraft/class_2793 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48174 + f I id b field_12758 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12085 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55960 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_12086 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundBlockEntityTagQueryPacket agl net/minecraft/class_2795 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48175 + f I transactionId b field_12762 + f Lnet/minecraft/core/BlockPos; pos c field_12763 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12095 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55961 + p 1 buffer + m ()I getTransactionId b method_12096 + m ()Lnet/minecraft/core/BlockPos; getPos e method_12094 + m (ILnet/minecraft/core/BlockPos;)V + p 1 transactionId + p 2 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundChangeDifficultyPacket agm net/minecraft/class_4210 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48176 + f Lnet/minecraft/world/Difficulty; difficulty b field_18805 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_19477 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55962 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/Difficulty; getDifficulty b method_19478 + m (Lnet/minecraft/world/Difficulty;)V + p 1 difficulty + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundChatAckPacket agn net/minecraft/class_7640 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48177 + f I offset b comp_1114 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_44998 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55963 + p 1 buffer + m ()I offset b comp_1114 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatCommandPacket ago net/minecraft/class_7472 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48178 + f Ljava/lang/String; command b comp_808 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_43897 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55964 + p 1 buffer + m ()Ljava/lang/String; command b comp_808 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket agp net/minecraft/class_9449 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_50087 + f Ljava/lang/String; command b comp_2532 + f Ljava/time/Instant; timeStamp c comp_2533 + f J salt d comp_2534 + f Lnet/minecraft/commands/arguments/ArgumentSignatures; argumentSignatures e comp_2535 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages f comp_2536 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_58581 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_58582 + p 1 buffer + m ()Ljava/lang/String; command b comp_2532 + m ()Ljava/time/Instant; timeStamp e comp_2533 + m ()J salt f comp_2534 + m ()Lnet/minecraft/commands/arguments/ArgumentSignatures; argumentSignatures g comp_2535 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages h comp_2536 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/commands/arguments/ArgumentSignatures;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatPacket agq net/minecraft/class_2797 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48179 + f Ljava/lang/String; message b comp_945 + f Ljava/time/Instant; timeStamp c comp_946 + f J salt d comp_947 + f Lnet/minecraft/network/chat/MessageSignature; signature e comp_948 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages f comp_970 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12115 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55965 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; message b comp_945 + m ()Ljava/time/Instant; timeStamp e comp_946 + m ()J salt f comp_947 + m ()Lnet/minecraft/network/chat/MessageSignature; signature g comp_948 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages h comp_970 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatSessionUpdatePacket agr net/minecraft/class_7861 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48182 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession b comp_1129 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_46617 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55966 + p 1 buffer + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession b comp_1129 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/RemoteChatSession$Data;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChunkBatchReceivedPacket ags net/minecraft/class_8590 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48183 + f F desiredChunksPerTick b comp_1730 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_52281 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55967 + p 1 buffer + m ()F desiredChunksPerTick b comp_1730 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (F)V + m ()V +c net/minecraft/network/protocol/game/ServerboundClientCommandPacket agt net/minecraft/class_2799 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48184 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; action b field_12773 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12120 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55968 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; getAction b method_12119 + m (Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action;)V + p 1 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action agt$a net/minecraft/class_2799$class_2800 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; PERFORM_RESPAWN a field_12774 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; REQUEST_STATS b field_12775 + f [Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; $VALUES c field_12776 + m ()[Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; $values a method_36955 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket agu net/minecraft/class_2805 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48185 + f I id b field_12784 + f Ljava/lang/String; command c field_12785 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12147 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55969 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_12149 + m ()Ljava/lang/String; getCommand e method_12148 + m (ILjava/lang/String;)V + p 1 id + p 2 command + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket agv net/minecraft/class_8591 + f Lnet/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket; INSTANCE a field_48186 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48187 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_52282 + m ()V + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerButtonClickPacket agw net/minecraft/class_2811 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48188 + f I containerId b comp_2649 + f I buttonId c comp_2650 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12185 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I containerId b comp_2649 + m ()I buttonId e comp_2650 + m (II)V + p 1 containerId + p 2 buttonId + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerClickPacket agx net/minecraft/class_2813 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48189 + f I MAX_SLOT_COUNT b field_34045 + f Lnet/minecraft/network/codec/StreamCodec; SLOTS_STREAM_CODEC c field_48190 + f I containerId d field_12819 + c The id of the window which was clicked. 0 for player inventory. + f I stateId e field_34037 + f I slotNum f field_12818 + c Id of the clicked slot + f I buttonNum g field_12817 + c Button used + f Lnet/minecraft/world/inventory/ClickType; clickType h field_12815 + c Inventory operation mode + f Lnet/minecraft/world/item/ItemStack; carriedItem i field_12816 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; changedSlots j field_29540 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12191 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55971 + p 1 buffer + m ()I getContainerId b method_12194 + m ()I getSlotNum e method_12192 + m ()I getButtonNum f method_12193 + m ()Lnet/minecraft/world/item/ItemStack; getCarriedItem g method_12190 + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; getChangedSlots h method_34678 + m ()Lnet/minecraft/world/inventory/ClickType; getClickType i method_12195 + m ()I getStateId j method_37440 + m (IIIILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/item/ItemStack;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;)V + p 1 containerId + p 2 stateId + p 3 slotNum + p 4 buttonNum + p 5 clickType + p 6 carriedItem + p 7 changedSlots + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerClosePacket agy net/minecraft/class_2815 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48191 + f I containerId b field_12827 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12198 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55972 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_36168 + m (I)V + p 1 containerId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerSlotStateChangedPacket agz net/minecraft/class_8875 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48192 + f I slotId b comp_1998 + f I containerId c comp_1999 + f Z newState d comp_2000 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_54437 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55973 + p 1 buffer + m ()I slotId b comp_1998 + m ()I containerId e comp_1999 + m ()Z newState f comp_2000 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IIZ)V + m ()V +c net/minecraft/network/protocol/game/ServerboundDebugSampleSubscriptionPacket aha net/minecraft/class_9179 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48784 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2284 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_56620 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56621 + p 1 buffer + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2284 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundEditBookPacket ahb net/minecraft/class_2820 + f I MAX_BYTES_PER_CHAR a field_34038 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48193 + f I slot c comp_2285 + f Ljava/util/List; pages d comp_2286 + f Ljava/util/Optional; title e comp_2287 + f I TITLE_MAX_CHARS f field_34039 + f I PAGE_MAX_CHARS g field_34040 + f I MAX_PAGES_COUNT h field_34046 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12236 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I slot b comp_2285 + m ()Ljava/util/List; pages e comp_2286 + m ()Ljava/util/Optional; title f comp_2287 + m (ILjava/util/List;Ljava/util/Optional;)V + p 1 slot + p 2 pages + p 3 title + m ()V +c net/minecraft/network/protocol/game/ServerboundEntityTagQueryPacket ahc net/minecraft/class_2822 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48194 + f I transactionId b field_12868 + f I entityId c field_12867 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12243 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55975 + p 1 buffer + m ()I getTransactionId b method_12245 + m ()I getEntityId e method_12244 + m (II)V + p 1 transactionId + p 2 entityId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket ahd net/minecraft/class_2824 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48195 + f I entityId b field_12870 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; action c field_12871 + f Z usingSecondaryAction d field_25660 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; ATTACK_ACTION e field_29170 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12251 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Handler;)V dispatch a method_34209 + p 1 handler + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; getTarget a method_12248 + p 1 level + m (Lnet/minecraft/world/entity/Entity;Z)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createAttackPacket a method_34206 + p 0 entity + p 1 usingSecondaryAction + m (Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/world/InteractionHand;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createInteractionPacket a method_34207 + p 0 entity + p 1 usingSecondaryAction + p 2 hand + m (Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createInteractionPacket a method_34208 + p 0 entity + p 1 usingSecondaryAction + p 2 hand + p 3 interactionLocation + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55976 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isUsingSecondaryAction b method_30007 + m (IZLnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action;)V + p 1 entityId + p 2 usingSecondaryAction + p 3 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$1 ahd$1 net/minecraft/class_2824$1 + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$Action ahd$a net/minecraft/class_2824$class_5906 + m ()Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; getType a method_34211 + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Handler;)V dispatch a method_34213 + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_34212 + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType ahd$b net/minecraft/class_2824$class_5907 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; INTERACT a field_29171 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; ATTACK b field_29172 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; INTERACT_AT c field_29173 + f Ljava/util/function/Function; reader d field_29174 + f [Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; $VALUES e field_29175 + m ()[Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; $values a method_36956 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; method_34216 a method_34216 + m (Ljava/lang/String;ILjava/util/function/Function;)V + p 3 reader + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$Handler ahd$c net/minecraft/class_2824$class_5908 + m ()V onAttack a method_34218 + m (Lnet/minecraft/world/InteractionHand;)V onInteraction a method_34219 + p 1 hand + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)V onInteraction a method_34220 + p 1 hand + p 2 interactionLocation +c net/minecraft/network/protocol/game/ServerboundInteractPacket$InteractionAction ahd$d net/minecraft/class_2824$class_5909 + f Lnet/minecraft/world/InteractionHand; hand a field_29176 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundInteractPacket$InteractionAtLocationAction ahd$e net/minecraft/class_2824$class_5910 + f Lnet/minecraft/world/InteractionHand; hand a field_29177 + f Lnet/minecraft/world/phys/Vec3; location b field_29178 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)V + p 1 hand + p 2 location + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundJigsawGeneratePacket ahe net/minecraft/class_5194 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48196 + f Lnet/minecraft/core/BlockPos; pos b field_24054 + f I levels c field_24055 + f Z keepJigsaws d field_25323 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_27274 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55977 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_27275 + m ()I levels e method_27276 + m ()Z keepJigsaws f method_29446 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 pos + p 2 levels + p 3 keepJigsaws + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundLockDifficultyPacket ahf net/minecraft/class_4211 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48197 + f Z locked b field_18806 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_19484 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55978 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isLocked b method_19485 + m (Z)V + p 1 locked + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket ahg net/minecraft/class_2828 + f D x a field_12889 + f D y b field_12886 + f D z c field_12884 + f F yRot d field_12887 + f F xRot e field_12885 + f Z onGround f field_29179 + f Z hasPos g field_12890 + f Z hasRot h field_12888 + m (D)D getX a method_12269 + p 1 defaultValue + m (F)F getYRot a method_12271 + p 1 defaultValue + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12272 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Z isOnGround b method_12273 + m (D)D getY b method_12268 + p 1 defaultValue + m (F)F getXRot b method_12270 + p 1 defaultValue + m (D)D getZ c method_12274 + p 1 defaultValue + m ()Z hasPosition e method_36171 + m ()Z hasRotation f method_36172 + m (DDDFFZZZ)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 onGround + p 10 hasPos + p 11 hasRot +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Pos ahg$a net/minecraft/class_2828$class_2829 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48198 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Pos; read a method_34221 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55979 + c Writes the raw packet data to the data stream. + p 1 buffer + m (DDDZ)V + p 1 x + p 3 y + p 5 z + p 7 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$PosRot ahg$b net/minecraft/class_2828$class_2830 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48199 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$PosRot; read a method_34222 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55980 + c Writes the raw packet data to the data stream. + p 1 buffer + m (DDDFFZ)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Rot ahg$c net/minecraft/class_2828$class_2831 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48200 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Rot; read a method_34223 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55981 + c Writes the raw packet data to the data stream. + p 1 buffer + m (FFZ)V + p 1 yRot + p 2 xRot + p 3 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$StatusOnly ahg$d net/minecraft/class_2828$class_5911 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48201 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$StatusOnly; read a method_34224 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55982 + p 1 buffer + m (Z)V + p 1 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMoveVehiclePacket ahh net/minecraft/class_2833 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48202 + f D x b field_12899 + f D y c field_12897 + f D z d field_12895 + f F yRot e field_12898 + f F xRot f field_12896 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12278 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55983 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_12279 + m ()D getY e method_12280 + m ()D getZ f method_12276 + m ()F getYRot g method_12281 + m ()F getXRot h method_12277 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPaddleBoatPacket ahi net/minecraft/class_2836 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48203 + f Z left b field_12907 + f Z right c field_12906 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12283 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55984 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z getLeft b method_12284 + m ()Z getRight e method_12285 + m (ZZ)V + p 1 left + p 2 right + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPickItemPacket ahj net/minecraft/class_2838 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48204 + f I slot b field_12908 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12292 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55985 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_12293 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlaceRecipePacket ahk net/minecraft/class_2840 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48205 + f I containerId b field_12933 + f Lnet/minecraft/resources/ResourceLocation; recipe c field_12931 + f Z shiftDown d field_12932 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12317 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55986 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_12318 + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe e method_12320 + m ()Z isShiftDown f method_12319 + m (ILnet/minecraft/world/item/crafting/RecipeHolder;Z)V + p 1 containerId + p 2 recipe + p 3 shiftDown + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerAbilitiesPacket ahl net/minecraft/class_2842 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48206 + f I FLAG_FLYING b field_33362 + f Z isFlying c field_12948 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12339 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55987 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isFlying b method_12346 + m (Lnet/minecraft/world/entity/player/Abilities;)V + p 1 abilities + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerActionPacket ahm net/minecraft/class_2846 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48207 + f Lnet/minecraft/core/BlockPos; pos b field_12967 + f Lnet/minecraft/core/Direction; direction c field_12965 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; action d field_12966 + c Status of the digging (started, ongoing, broken). + f I sequence e field_38048 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12361 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55988 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12362 + m ()Lnet/minecraft/core/Direction; getDirection e method_12360 + m ()Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; getAction f method_12363 + m ()I getSequence g method_42079 + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)V + p 1 action + p 2 pos + p 3 direction + p 4 sequence + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 action + p 2 pos + p 3 direction + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action ahm$a net/minecraft/class_2846$class_2847 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; START_DESTROY_BLOCK a field_12968 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; ABORT_DESTROY_BLOCK b field_12971 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; STOP_DESTROY_BLOCK c field_12973 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; DROP_ALL_ITEMS d field_12970 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; DROP_ITEM e field_12975 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; RELEASE_USE_ITEM f field_12974 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; SWAP_ITEM_WITH_OFFHAND g field_12969 + f [Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; $VALUES h field_12972 + m ()[Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; $values a method_36957 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerCommandPacket ahn net/minecraft/class_2848 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48208 + f I id b field_12977 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; action c field_12978 + f I data d field_12976 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12364 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55989 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_36173 + m ()Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; getAction e method_12365 + m ()I getData f method_12366 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action;)V + p 1 entity + p 2 action + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action;I)V + p 1 entity + p 2 action + p 3 data + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action ahn$a net/minecraft/class_2848$class_2849 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; PRESS_SHIFT_KEY a field_12979 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; RELEASE_SHIFT_KEY b field_12984 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_SLEEPING c field_12986 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_SPRINTING d field_12981 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_SPRINTING e field_12985 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_RIDING_JUMP f field_12987 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_RIDING_JUMP g field_12980 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; OPEN_INVENTORY h field_12988 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_FALL_FLYING i field_12982 + f [Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; $VALUES j field_12983 + m ()[Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; $values a method_36958 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerInputPacket aho net/minecraft/class_2851 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48209 + f I FLAG_JUMPING b field_33363 + f I FLAG_SHIFT_KEY_DOWN c field_33364 + f F xxa d field_12995 + c Positive for left strafe, negative for right + f F zza e field_12994 + f Z isJumping f field_12997 + f Z isShiftKeyDown g field_12996 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12369 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55990 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getXxa b method_12372 + m ()F getZza e method_12373 + m ()Z isJumping f method_12371 + m ()Z isShiftKeyDown g method_12370 + m (FFZZ)V + p 1 xxa + p 2 zza + p 3 isJumping + p 4 isShiftKeyDown + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRecipeBookChangeSettingsPacket ahp net/minecraft/class_5427 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48210 + f Lnet/minecraft/world/inventory/RecipeBookType; bookType b field_25798 + f Z isOpen c field_25799 + f Z isFiltering d field_25800 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_30304 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55991 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/inventory/RecipeBookType; getBookType b method_30305 + m ()Z isOpen e method_30306 + m ()Z isFiltering f method_30307 + m (Lnet/minecraft/world/inventory/RecipeBookType;ZZ)V + p 1 bookType + p 2 isOpen + p 3 isFiltering + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRecipeBookSeenRecipePacket ahq net/minecraft/class_2853 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48211 + f Lnet/minecraft/resources/ResourceLocation; recipe b field_13004 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12400 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55992 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe b method_12406 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 recipe + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRenameItemPacket ahr net/minecraft/class_2855 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48212 + f Ljava/lang/String; name b field_13013 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12408 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55993 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getName b method_12407 + m (Ljava/lang/String;)V + p 1 name + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket ahs net/minecraft/class_2859 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48213 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; action b field_13021 + f Lnet/minecraft/resources/ResourceLocation; tab c field_13020 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket; openedTab a method_12418 + p 0 advancement + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12417 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55994 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket; closedScreen b method_12414 + m ()Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; getAction e method_12415 + m ()Lnet/minecraft/resources/ResourceLocation; getTab f method_12416 + m (Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action;Lnet/minecraft/resources/ResourceLocation;)V + p 1 action + p 2 tab + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action ahs$a net/minecraft/class_2859$class_2860 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; OPENED_TAB a field_13024 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; CLOSED_SCREEN b field_13023 + f [Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; $VALUES c field_13022 + m ()[Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; $values a method_36962 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundSelectTradePacket aht net/minecraft/class_2863 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48214 + f I item b field_13036 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12430 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55995 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getItem b method_12431 + m (I)V + p 1 item + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetBeaconPacket ahu net/minecraft/class_2866 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48215 + f Ljava/util/Optional; primary b comp_2180 + f Ljava/util/Optional; secondary c comp_2181 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12434 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Ljava/util/Optional; primary b comp_2180 + m ()Ljava/util/Optional; secondary e comp_2181 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 primary + p 2 secondary + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCarriedItemPacket ahv net/minecraft/class_2868 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48216 + f I slot b field_13052 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12441 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55996 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_12442 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCommandBlockPacket ahw net/minecraft/class_2870 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48217 + f I FLAG_TRACK_OUTPUT b field_33365 + f I FLAG_CONDITIONAL c field_33366 + f I FLAG_AUTOMATIC d field_33367 + f Lnet/minecraft/core/BlockPos; pos e field_13065 + f Ljava/lang/String; command f field_13064 + f Z trackOutput g field_13063 + f Z conditional h field_13062 + f Z automatic i field_13061 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; mode j field_13060 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12469 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55997 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12473 + m ()Ljava/lang/String; getCommand e method_12470 + m ()Z isTrackOutput f method_12472 + m ()Z isConditional g method_12471 + m ()Z isAutomatic h method_12474 + m ()Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; getMode i method_12468 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;ZZZ)V + p 1 pos + p 2 command + p 3 mode + p 4 trackOutput + p 5 conditional + p 6 automatic + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCommandMinecartPacket ahx net/minecraft/class_2871 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48218 + f I entity b field_13067 + f Ljava/lang/String; command c field_13068 + f Z trackOutput d field_13066 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12477 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock a method_12476 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55998 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getCommand b method_12475 + m ()Z isTrackOutput e method_12478 + m (ILjava/lang/String;Z)V + p 1 entity + p 2 command + p 3 trackOutput + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCreativeModeSlotPacket ahy net/minecraft/class_2873 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48219 + f S slotNum b comp_2609 + f Lnet/minecraft/world/item/ItemStack; itemStack c comp_2610 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12480 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()S slotNum b comp_2609 + m ()Lnet/minecraft/world/item/ItemStack; itemStack e comp_2610 + m (ILnet/minecraft/world/item/ItemStack;)V + p 1 slotNum + p 2 itemStack + m (SLnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundSetJigsawBlockPacket ahz net/minecraft/class_3753 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48220 + f Lnet/minecraft/core/BlockPos; pos b field_16565 + f Lnet/minecraft/resources/ResourceLocation; name c field_16563 + f Lnet/minecraft/resources/ResourceLocation; target d field_16566 + f Lnet/minecraft/resources/ResourceLocation; pool e field_23401 + f Ljava/lang/String; finalState f field_16564 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint g field_23402 + f I selectionPriority h field_46917 + f I placementPriority i field_46918 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_16392 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56000 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_16396 + m ()Lnet/minecraft/resources/ResourceLocation; getName e method_16395 + m ()Lnet/minecraft/resources/ResourceLocation; getTarget f method_16394 + m ()Lnet/minecraft/resources/ResourceLocation; getPool g method_26435 + m ()Ljava/lang/String; getFinalState h method_16393 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; getJoint i method_26436 + m ()I getSelectionPriority j method_54668 + m ()I getPlacementPriority k method_54669 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;II)V + p 1 pos + p 2 name + p 3 target + p 4 pool + p 5 finalState + p 6 joint + p 7 selectionPriority + p 8 placementPriority + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetStructureBlockPacket aia net/minecraft/class_2875 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48221 + f I FLAG_IGNORE_ENTITIES b field_33368 + f I FLAG_SHOW_AIR c field_33369 + f I FLAG_SHOW_BOUNDING_BOX d field_33370 + f Lnet/minecraft/core/BlockPos; pos e field_13093 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; updateType f field_13082 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; mode g field_13084 + f Ljava/lang/String; name h field_13080 + f Lnet/minecraft/core/BlockPos; offset i field_13091 + f Lnet/minecraft/core/Vec3i; size j field_13083 + f Lnet/minecraft/world/level/block/Mirror; mirror k field_13081 + f Lnet/minecraft/world/level/block/Rotation; rotation l field_13088 + f Ljava/lang/String; data m field_13085 + f Z ignoreEntities n field_13089 + f Z showAir o field_13087 + f Z showBoundingBox p field_13086 + f F integrity q field_13090 + f J seed r field_13092 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12495 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56001 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12499 + m ()Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; getUpdateType e method_12500 + m ()Lnet/minecraft/world/level/block/state/properties/StructureMode; getMode f method_12504 + m ()Ljava/lang/String; getName g method_12502 + m ()Lnet/minecraft/core/BlockPos; getOffset h method_12496 + m ()Lnet/minecraft/core/Vec3i; getSize i method_12492 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror j method_12493 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation k method_12498 + m ()Ljava/lang/String; getData l method_12501 + m ()Z isIgnoreEntities m method_12506 + m ()Z isShowAir n method_12503 + m ()Z isShowBoundingBox o method_12505 + m ()F getIntegrity p method_12494 + m ()J getSeed q method_12497 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType;Lnet/minecraft/world/level/block/state/properties/StructureMode;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Ljava/lang/String;ZZZFJ)V + p 1 pos + p 2 updateType + p 3 mode + p 4 name + p 5 offset + p 6 size + p 7 mirror + p 8 rotation + p 9 data + p 10 ignoreEntities + p 11 showAir + p 12 showBoundingBox + p 13 integrity + p 14 seed + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSignUpdatePacket aib net/minecraft/class_2877 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48222 + f I MAX_STRING_LENGTH b field_33371 + f Lnet/minecraft/core/BlockPos; pos c field_13101 + f [Ljava/lang/String; lines d field_13100 + f Z isFrontText e field_43153 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12509 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56002 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12510 + m ()Z isFrontText e method_49751 + m ()[Ljava/lang/String; getLines f method_12508 + m (Lnet/minecraft/core/BlockPos;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 pos + p 2 isFrontText + p 3 line1 + p 4 line2 + p 5 line3 + p 6 line4 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSwingPacket aic net/minecraft/class_2879 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48223 + f Lnet/minecraft/world/InteractionHand; hand b field_13102 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12511 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56003 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12512 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundTeleportToEntityPacket aid net/minecraft/class_2884 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48224 + f Ljava/util/UUID; uuid b field_13129 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12542 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; getEntity a method_12541 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56004 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Ljava/util/UUID;)V + p 1 uuid + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundUseItemOnPacket aie net/minecraft/class_2885 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48225 + f Lnet/minecraft/world/phys/BlockHitResult; blockHit b field_17602 + f Lnet/minecraft/world/InteractionHand; hand c field_13134 + f I sequence d field_38049 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12547 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56005 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12546 + m ()Lnet/minecraft/world/phys/BlockHitResult; getHitResult e method_12543 + m ()I getSequence f method_42080 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;I)V + p 1 hand + p 2 blockHit + p 3 sequence + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundUseItemPacket aif net/minecraft/class_2886 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48226 + f Lnet/minecraft/world/InteractionHand; hand b field_13136 + f I sequence c field_38050 + f F yRot d field_51930 + f F xRot e field_51931 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12550 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56006 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12551 + m ()I getSequence e method_42081 + m ()F getYRot f method_60586 + m ()F getXRot g method_60587 + m (Lnet/minecraft/world/InteractionHand;IFF)V + p 1 hand + p 2 sequence + p 3 yRot + p 4 xRot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/VecDeltaCodec aig net/minecraft/class_7422 + f D TRUNCATION_STEPS a field_39015 + f Lnet/minecraft/world/phys/Vec3; base b field_39016 + m ()Lnet/minecraft/world/phys/Vec3; getBase a method_60933 + m (D)J encode a method_43487 + p 0 value + m (J)D decode a method_43488 + p 0 value + m (JJJ)Lnet/minecraft/world/phys/Vec3; decode a method_43489 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)J encodeX a method_43490 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)J encodeY b method_43491 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)J encodeZ c method_43492 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; delta d method_43493 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)V setBase e method_43494 + p 1 base + m ()V +c net/minecraft/network/protocol/game/package-info aih net/minecraft/class_6314 +c net/minecraft/network/protocol/handshake/ClientIntent aii net/minecraft/class_8592 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; STATUS a field_44974 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; LOGIN b field_44975 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; TRANSFER c field_48227 + f I STATUS_ID d field_44976 + f I LOGIN_ID e field_44977 + f I TRANSFER_ID f field_48228 + f [Lnet/minecraft/network/protocol/handshake/ClientIntent; $VALUES g field_44978 + m ()I id a method_52283 + m (I)Lnet/minecraft/network/protocol/handshake/ClientIntent; byId a method_52284 + p 0 id + m ()[Lnet/minecraft/network/protocol/handshake/ClientIntent; $values b method_52286 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/handshake/ClientIntentionPacket aij net/minecraft/class_2889 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48229 + f I protocolVersion b comp_1563 + f Ljava/lang/String; hostName c comp_1564 + f I port d comp_1565 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; intention e comp_1566 + f I MAX_HOST_LENGTH f field_33372 + m (Lnet/minecraft/network/protocol/handshake/ServerHandshakePacketListener;)V handle a method_12575 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56007 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I protocolVersion b comp_1563 + m ()Ljava/lang/String; hostName e comp_1564 + m ()I port f comp_1565 + m ()Lnet/minecraft/network/protocol/handshake/ClientIntent; intention g comp_1566 + m (ILjava/lang/String;ILnet/minecraft/network/protocol/handshake/ClientIntent;)V + p 1 protocolVersion + p 2 hostName + p 3 port + p 4 intention + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/handshake/HandshakePacketTypes aik net/minecraft/class_9096 + f Lnet/minecraft/network/protocol/PacketType; CLIENT_INTENTION a field_48230 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound a method_56008 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/handshake/HandshakeProtocols ail net/minecraft/class_9097 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52197 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48231 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56009 a method_56009 + m ()V + m ()V +c net/minecraft/network/protocol/handshake/ServerHandshakePacketListener aim net/minecraft/class_2890 + c PacketListener for the server side of the HANDSHAKING protocol. + m (Lnet/minecraft/network/protocol/handshake/ClientIntentionPacket;)V handleIntention a method_12576 + c There are two recognized intentions for initiating a handshake: logging in and acquiring server status. The NetworkManager's protocol will be reconfigured according to the specified intention, although a login-intention must pass a versioncheck or receive a disconnect otherwise + p 1 packet +c net/minecraft/network/protocol/handshake/package-info ain net/minecraft/class_6315 +c net/minecraft/network/protocol/login/ClientLoginPacketListener aio net/minecraft/class_2896 + c PacketListener for the client side of the LOGIN protocol. + m (Lnet/minecraft/network/protocol/login/ClientboundCustomQueryPacket;)V handleCustomQuery a method_12586 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundGameProfilePacket;)V handleGameProfile a method_12588 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundHelloPacket;)V handleHello a method_12587 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundLoginCompressionPacket;)V handleCompression a method_12585 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundLoginDisconnectPacket;)V handleDisconnect a method_12584 + p 1 packet +c net/minecraft/network/protocol/login/ClientboundCustomQueryPacket aip net/minecraft/class_2899 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48232 + f I transactionId b comp_1567 + f Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; payload c comp_1568 + f I MAX_PAYLOAD_SIZE d field_33373 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12591 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; readPayload a method_52287 + p 0 id + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56010 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I transactionId b comp_1567 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/DiscardedQueryPayload; readUnknownPayload b method_52288 + p 0 id + p 1 buffer + m ()Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; payload e comp_1568 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/network/protocol/login/custom/CustomQueryPayload;)V + m ()V +c net/minecraft/network/protocol/login/ClientboundGameProfilePacket aiq net/minecraft/class_2901 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48233 + f Lcom/mojang/authlib/GameProfile; gameProfile b comp_2363 + f Z strictErrorHandling c comp_2662 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12594 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lcom/mojang/authlib/GameProfile; gameProfile b comp_2363 + m ()Z strictErrorHandling e comp_2662 + m (Lcom/mojang/authlib/GameProfile;Z)V + m ()V +c net/minecraft/network/protocol/login/ClientboundHelloPacket air net/minecraft/class_2905 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48234 + f Ljava/lang/String; serverId b field_13209 + f [B publicKey c field_13211 + f [B challenge d field_13210 + f Z shouldAuthenticate e field_48235 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12612 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56012 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getServerId b method_12610 + m ()Ljava/security/PublicKey; getPublicKey e method_12611 + m ()[B getChallenge f method_12613 + m ()Z shouldAuthenticate g method_56013 + m (Ljava/lang/String;[B[BZ)V + p 1 serverId + p 2 publicKey + p 3 challenge + p 4 shouldAuthenticate + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ClientboundLoginCompressionPacket ais net/minecraft/class_2907 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48236 + f I compressionThreshold b field_13232 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12633 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56014 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getCompressionThreshold b method_12634 + m (I)V + p 1 compressionThreshold + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ClientboundLoginDisconnectPacket ait net/minecraft/class_2909 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48237 + f Lnet/minecraft/network/chat/Component; reason b field_13243 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12637 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56015 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/chat/Component; getReason b method_12638 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/LoginPacketTypes aiu net/minecraft/class_9098 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_QUERY a field_48238 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_GAME_PROFILE b field_48239 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HELLO c field_48240 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN_COMPRESSION d field_48241 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN_DISCONNECT e field_48242 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CUSTOM_QUERY_ANSWER f field_48243 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_HELLO g field_48244 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_KEY h field_48245 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_LOGIN_ACKNOWLEDGED i field_48246 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56016 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56017 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/login/LoginProtocols aiv net/minecraft/class_9099 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52198 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48247 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52199 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48248 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56018 a method_56018 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56019 b method_56019 + m ()V + m ()V +c net/minecraft/network/protocol/login/ServerLoginPacketListener aiw net/minecraft/class_2911 + c PacketListener for the server side of the LOGIN protocol. + m (Lnet/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket;)V handleCustomQueryPacket a method_12640 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundHelloPacket;)V handleHello a method_12641 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;)V handleKey a method_12642 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket;)V handleLoginAcknowledgement a method_52289 + p 1 packet +c net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket aix net/minecraft/class_2913 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48249 + f I transactionId b comp_1569 + f Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; payload c comp_1570 + f I MAX_PAYLOAD_SIZE d field_33374 + m (ILnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; readPayload a method_52290 + p 0 transactionId + p 1 buffer + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12645 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket; read a method_52292 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload;)V method_52291 a method_52291 + m ()I transactionId b comp_1569 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; readUnknownPayload b method_52293 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write c method_11052 + p 1 buffer + m ()Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; payload e comp_1570 + m (ILnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload;)V + m ()V +c net/minecraft/network/protocol/login/ServerboundHelloPacket aiy net/minecraft/class_2915 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48250 + f Ljava/lang/String; name b comp_765 + f Ljava/util/UUID; profileId c comp_907 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12649 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56020 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; name b comp_765 + m ()Ljava/util/UUID; profileId e comp_907 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/util/UUID;)V + m ()V +c net/minecraft/network/protocol/login/ServerboundKeyPacket aiz net/minecraft/class_2917 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48251 + f [B keybytes b field_13274 + f [B encryptedChallenge c field_39089 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12653 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/security/PrivateKey;)Ljavax/crypto/SecretKey; getSecretKey a method_12654 + p 1 key + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56021 + c Writes the raw packet data to the data stream. + p 1 buffer + m ([BLjava/security/PrivateKey;)Z isChallengeValid a method_43643 + p 1 expected + p 2 key + m (Ljavax/crypto/SecretKey;Ljava/security/PublicKey;[B)V + p 1 secretKey + p 2 publicKey + p 3 challenge + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket aja net/minecraft/class_8593 + f Lnet/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket; INSTANCE a field_48252 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48253 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_52294 + m ()V + m ()V +c net/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload ajb net/minecraft/class_8594 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52295 + p 1 buffer +c net/minecraft/network/protocol/login/custom/CustomQueryPayload ajc net/minecraft/class_8595 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1571 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52296 + p 1 buffer +c net/minecraft/network/protocol/login/custom/DiscardedQueryAnswerPayload ajd net/minecraft/class_8596 + f Lnet/minecraft/network/protocol/login/custom/DiscardedQueryAnswerPayload; INSTANCE a field_44980 + m ()V + m ()V +c net/minecraft/network/protocol/login/custom/DiscardedQueryPayload aje net/minecraft/class_8597 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1571 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/login/custom/package-info ajf net/minecraft/class_8598 +c net/minecraft/network/protocol/login/package-info ajg net/minecraft/class_6316 +c net/minecraft/network/protocol/package-info ajh net/minecraft/class_6317 +c net/minecraft/network/protocol/ping/ClientPongPacketListener aji net/minecraft/class_8763 + m (Lnet/minecraft/network/protocol/ping/ClientboundPongResponsePacket;)V handlePongResponse a method_12666 + p 1 packet +c net/minecraft/network/protocol/ping/ClientboundPongResponsePacket ajj net/minecraft/class_2923 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48254 + f J time b comp_2201 + m (Lnet/minecraft/network/protocol/ping/ClientPongPacketListener;)V handle a method_12670 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56022 + p 1 buffer + m ()J time b comp_2201 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (J)V + m ()V +c net/minecraft/network/protocol/ping/PingPacketTypes ajk net/minecraft/class_9100 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PONG_RESPONSE a field_48255 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PING_REQUEST b field_48256 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56023 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56024 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/ping/ServerPingPacketListener ajl net/minecraft/class_8740 + m (Lnet/minecraft/network/protocol/ping/ServerboundPingRequestPacket;)V handlePingRequest a method_12697 + p 1 packet +c net/minecraft/network/protocol/ping/ServerboundPingRequestPacket ajm net/minecraft/class_2935 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48257 + f J time b field_13292 + m (Lnet/minecraft/network/protocol/ping/ServerPingPacketListener;)V handle a method_12699 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lio/netty/buffer/ByteBuf;)V write a method_56025 + p 1 buffer + m ()J getTime b method_12700 + m (J)V + p 1 time + m (Lio/netty/buffer/ByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/ping/package-info ajn net/minecraft/class_9101 +c net/minecraft/network/protocol/status/ClientStatusPacketListener ajo net/minecraft/class_2921 + c PacketListener for the client side of the STATUS protocol. + m (Lnet/minecraft/network/protocol/status/ClientboundStatusResponsePacket;)V handleStatusResponse a method_12667 + p 1 packet +c net/minecraft/network/protocol/status/ClientboundStatusResponsePacket ajp net/minecraft/class_2924 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48258 + f Lnet/minecraft/network/protocol/status/ServerStatus; status b comp_1272 + m (Lnet/minecraft/network/protocol/status/ClientStatusPacketListener;)V handle a method_12671 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56026 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/status/ServerStatus; status b comp_1272 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/status/ServerStatus;)V + p 1 status + m ()V +c net/minecraft/network/protocol/status/ServerStatus ajq net/minecraft/class_2926 + f Lcom/mojang/serialization/Codec; CODEC a field_42535 + f Lnet/minecraft/network/chat/Component; description b comp_1273 + f Ljava/util/Optional; players c comp_1274 + f Ljava/util/Optional; version d comp_1275 + f Ljava/util/Optional; favicon e comp_1276 + f Z enforcesSecureChat f comp_1277 + m ()Lnet/minecraft/network/chat/Component; description a comp_1273 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49092 a method_49092 + m ()Ljava/util/Optional; players b comp_1274 + m ()Ljava/util/Optional; version c comp_1275 + m ()Ljava/util/Optional; favicon d comp_1276 + m ()Z enforcesSecureChat e comp_1277 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Z)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Favicon ajq$a net/minecraft/class_2926$class_8145 + f Lcom/mojang/serialization/Codec; CODEC a field_42538 + f [B iconBytes b comp_1278 + f Ljava/lang/String; PREFIX c field_42539 + m ()[B iconBytes a comp_1278 + m (Lnet/minecraft/network/protocol/status/ServerStatus$Favicon;)Ljava/lang/String; method_49093 a method_49093 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_49094 a method_49094 + m ()Ljava/lang/String; method_49401 b method_49401 + m ()Ljava/lang/String; method_49402 c method_49402 + m ([B)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Players ajq$b net/minecraft/class_2926$class_2927 + f Lcom/mojang/serialization/Codec; CODEC a field_42540 + f I max b comp_1279 + f I online c comp_1280 + f Ljava/util/List; sample d comp_1281 + f Lcom/mojang/serialization/Codec; PROFILE_CODEC e field_42541 + m ()I max a comp_1279 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49095 a method_49095 + m ()I online b comp_1280 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49096 b method_49096 + m ()Ljava/util/List; sample c comp_1281 + m (IILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Version ajq$c net/minecraft/class_2926$class_2930 + f Lcom/mojang/serialization/Codec; CODEC a field_42542 + f Ljava/lang/String; name b comp_1282 + f I protocol c comp_1283 + m ()Lnet/minecraft/network/protocol/status/ServerStatus$Version; current a method_49097 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49098 a method_49098 + m ()Ljava/lang/String; name b comp_1282 + m ()I protocol c comp_1283 + m (Ljava/lang/String;I)V + p 1 name + p 2 protocol + m ()V +c net/minecraft/network/protocol/status/ServerStatusPacketListener ajr net/minecraft/class_2933 + c PacketListener for the server side of the STATUS protocol. + m (Lnet/minecraft/network/protocol/status/ServerboundStatusRequestPacket;)V handleStatusRequest a method_12698 + p 1 packet +c net/minecraft/network/protocol/status/ServerboundStatusRequestPacket ajs net/minecraft/class_2937 + f Lnet/minecraft/network/protocol/status/ServerboundStatusRequestPacket; INSTANCE a field_48259 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48260 + m (Lnet/minecraft/network/protocol/status/ServerStatusPacketListener;)V handle a method_12701 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()V + m ()V +c net/minecraft/network/protocol/status/StatusPacketTypes ajt net/minecraft/class_9102 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STATUS_RESPONSE a field_48261 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_STATUS_REQUEST b field_48262 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56027 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56028 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/status/StatusProtocols aju net/minecraft/class_9103 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52200 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48263 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52201 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48264 + m (Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; method_60934 a method_60934 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56029 a method_56029 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56030 b method_56030 + m ()V + m ()V +c net/minecraft/network/protocol/status/package-info ajv net/minecraft/class_6318 +c net/minecraft/network/syncher/EntityDataAccessor ajw net/minecraft/class_2940 + c A Key for {@link SynchedEntityData}. + f I id a comp_2327 + f Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_2328 + m ()I id a comp_2327 + m ()Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_2328 + m (ILnet/minecraft/network/syncher/EntityDataSerializer;)V + p 1 id + p 2 serializer +c net/minecraft/network/syncher/EntityDataSerializer ajx net/minecraft/class_2941 + c Handles encoding and decoding of data for {@link SynchedEntityData}.\nNote that mods cannot add new serializers, because this is not a managed registry and the serializer ID is limited to 16. + m (I)Lnet/minecraft/network/syncher/EntityDataAccessor; createAccessor a method_12717 + p 1 id + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/syncher/EntityDataSerializer; forValueType a method_56031 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56032 b method_56032 + m (Ljava/lang/Object;)Ljava/lang/Object; copy copy method_12714 + p 1 value +c net/minecraft/network/syncher/EntityDataSerializer$ForValueType ajx$a net/minecraft/class_2941$class_7394 +c net/minecraft/network/syncher/EntityDataSerializers ajy net/minecraft/class_2943 + c Registry for {@link EntityDataSerializer}. + f Lnet/minecraft/network/syncher/EntityDataSerializer; PAINTING_VARIANT A field_39017 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ARMADILLO_STATE B field_47707 + f Lnet/minecraft/network/syncher/EntityDataSerializer; SNIFFER_STATE C field_42543 + f Lnet/minecraft/network/syncher/EntityDataSerializer; VECTOR3 D field_42237 + f Lnet/minecraft/network/syncher/EntityDataSerializer; QUATERNION E field_42235 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; SERIALIZERS F field_13328 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_BLOCK_STATE_CODEC G field_48265 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_UNSIGNED_INT_CODEC H field_48266 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BYTE a field_13319 + f Lnet/minecraft/network/syncher/EntityDataSerializer; INT b field_13327 + f Lnet/minecraft/network/syncher/EntityDataSerializer; LONG c field_39965 + f Lnet/minecraft/network/syncher/EntityDataSerializer; FLOAT d field_13320 + f Lnet/minecraft/network/syncher/EntityDataSerializer; STRING e field_13326 + f Lnet/minecraft/network/syncher/EntityDataSerializer; COMPONENT f field_13317 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_COMPONENT g field_13325 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ITEM_STACK h field_13322 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BLOCK_STATE i field_13312 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_BLOCK_STATE j field_42236 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BOOLEAN k field_13323 + f Lnet/minecraft/network/syncher/EntityDataSerializer; PARTICLE l field_13314 + f Lnet/minecraft/network/syncher/EntityDataSerializer; PARTICLES m field_49774 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ROTATIONS n field_13316 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BLOCK_POS o field_13324 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_BLOCK_POS p field_13315 + f Lnet/minecraft/network/syncher/EntityDataSerializer; DIRECTION q field_13321 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_UUID r field_13313 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_GLOBAL_POS s field_38825 + f Lnet/minecraft/network/syncher/EntityDataSerializer; COMPOUND_TAG t field_13318 + f Lnet/minecraft/network/syncher/EntityDataSerializer; VILLAGER_DATA u field_17207 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_UNSIGNED_INT v field_17910 + f Lnet/minecraft/network/syncher/EntityDataSerializer; POSE w field_18238 + f Lnet/minecraft/network/syncher/EntityDataSerializer; CAT_VARIANT x field_38826 + f Lnet/minecraft/network/syncher/EntityDataSerializer; WOLF_VARIANT y field_49713 + f Lnet/minecraft/network/syncher/EntityDataSerializer; FROG_VARIANT z field_38827 + m (I)Lnet/minecraft/network/syncher/EntityDataSerializer; getSerializer a method_12721 + p 0 id + m (Lnet/minecraft/network/syncher/EntityDataSerializer;)V registerSerializer a method_12720 + p 0 serializer + m (Lnet/minecraft/network/syncher/EntityDataSerializer;)I getSerializedId b method_12719 + p 0 serializer + m ()V + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$1 ajy$1 net/minecraft/class_2943$1 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; copy a method_12732 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$2 ajy$2 net/minecraft/class_2943$2 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56033 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56034 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$3 ajy$3 net/minecraft/class_2943$3 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; copy a method_56035 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$4 ajy$4 net/minecraft/class_2943$4 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/OptionalInt; decode a method_56036 + m (Lio/netty/buffer/ByteBuf;Ljava/util/OptionalInt;)V encode a method_56037 + m ()V +c net/minecraft/network/syncher/SyncedDataHolder ajz net/minecraft/class_9221 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)V onSyncedDataUpdated a method_5674 + p 1 dataAccessor + m (Ljava/util/List;)V onSyncedDataUpdated a method_48850 + p 1 newData +c net/minecraft/network/syncher/SynchedEntityData aka net/minecraft/class_2945 + c Keeps data in sync from server to client for an entity.\nA maximum of 254 parameters per entity class can be registered. The system then ensures that these values are updated on the client whenever they change on the server.\n\nUse {@link #defineId} to register a piece of data for your entity class.\nUse {@link #define} during {@link Entity#defineSynchedData} to set the default value for a given parameter. + f Lorg/slf4j/Logger; LOGGER a field_13334 + f I MAX_ID_VALUE b field_33378 + f Lnet/minecraft/util/ClassTreeIdRegistry; ID_REGISTRY c field_49021 + f Lnet/minecraft/network/syncher/SyncedDataHolder; entity d field_13333 + f [Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; itemsById e field_13331 + f Z isDirty f field_13329 + m ()Z isDirty a method_12786 + c Whether any keys have changed since the last synchronization packet to the client. + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)Ljava/lang/Object; get a method_12789 + c Get the value of the given key for this entity. + p 1 key + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)V set a method_12778 + c Set the value of the given key for this entity. + p 1 key + p 2 value + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;Z)V set a method_49743 + p 1 key + p 2 value + p 3 force + m (Lnet/minecraft/network/syncher/SynchedEntityData$DataItem;Lnet/minecraft/network/syncher/SynchedEntityData$DataValue;)V assignValue a method_12785 + p 1 target + p 2 entry + m (Ljava/lang/Class;Lnet/minecraft/network/syncher/EntityDataSerializer;)Lnet/minecraft/network/syncher/EntityDataAccessor; defineId a method_12791 + c Register a piece of data to be kept in sync for an entity class.\nThis method must be called during a static initializer of an entity class and the first parameter of this method must be that entity class. + p 0 clazz + p 1 serializer + m (Ljava/util/List;)V assignValues a method_12779 + c Updates the data using the given entries. Used on the client when the update packet is received. + p 1 entries + m ()Ljava/util/List; packDirty b method_12781 + c Gets all data entries which have changed since the last check and clears their dirty flag. + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; getItem b method_12783 + p 1 key + m ()Ljava/util/List; getNonDefaultValues c method_46357 + m (Lnet/minecraft/network/syncher/SyncedDataHolder;[Lnet/minecraft/network/syncher/SynchedEntityData$DataItem;)V + p 1 entity + p 2 itemsById + m ()V +c net/minecraft/network/syncher/SynchedEntityData$Builder aka$a net/minecraft/class_2945$class_9222 + f Lnet/minecraft/network/syncher/SyncedDataHolder; entity a field_49022 + f [Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; itemsById b field_49023 + m ()Lnet/minecraft/network/syncher/SynchedEntityData; build a method_56911 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)Lnet/minecraft/network/syncher/SynchedEntityData$Builder; define a method_56912 + p 1 accessor + p 2 value + m (Lnet/minecraft/network/syncher/SyncedDataHolder;)V + p 1 entity +c net/minecraft/network/syncher/SynchedEntityData$DataItem aka$b net/minecraft/class_2945$class_2946 + f Lnet/minecraft/network/syncher/EntityDataAccessor; accessor a field_13337 + f Ljava/lang/Object; value b field_13338 + f Ljava/lang/Object; initialValue c field_40719 + f Z dirty d field_13336 + m ()Lnet/minecraft/network/syncher/EntityDataAccessor; getAccessor a method_12797 + m (Ljava/lang/Object;)V setValue a method_12799 + p 1 value + m (Z)V setDirty a method_12795 + p 1 dirty + m ()Ljava/lang/Object; getValue b method_12794 + m ()Z isDirty c method_12796 + m ()Z isSetToDefault d method_46358 + m ()Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; value e method_46359 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)V + p 1 accessor + p 2 value +c net/minecraft/network/syncher/SynchedEntityData$DataValue aka$c net/minecraft/class_2945$class_7834 + f I id a comp_1115 + f Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_1116 + f Ljava/lang/Object; value c comp_1117 + m ()I id a comp_1115 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; create a method_46360 + p 0 dataAccessor + p 1 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_46361 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;I)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; read a method_46362 + p 0 buffer + p 1 id + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;ILnet/minecraft/network/syncher/EntityDataSerializer;)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; read a method_46363 + p 0 buffer + p 1 id + p 2 serializer + m ()Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_1116 + m ()Ljava/lang/Object; value c comp_1117 + m (ILnet/minecraft/network/syncher/EntityDataSerializer;Ljava/lang/Object;)V +c net/minecraft/network/syncher/package-info akb net/minecraft/class_6320 +c net/minecraft/obfuscate/package-info akc net/minecraft/class_6321 +c net/minecraft/package-info akd net/minecraft/class_6322 +c net/minecraft/recipebook/PlaceRecipe ake net/minecraft/class_2952 + m (IIILnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/Iterator;I)V placeRecipe a method_12816 + p 1 width + p 2 height + p 3 outputSlot + p 4 recipe + p 5 ingredients + p 6 maxAmount + m (Ljava/lang/Object;IIII)V addItemToSlot a method_12815 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y +c net/minecraft/recipebook/ServerPlaceRecipe akf net/minecraft/class_2955 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents a field_13347 + f Lnet/minecraft/world/entity/player/Inventory; inventory b field_13350 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu c field_13348 + f I ITEM_NOT_FOUND d field_51523 + m ()V clearGrid a method_12822 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;Z)V recipeClicked a method_12826 + p 1 player + p 2 recipe + p 3 placeAll + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;I)I moveItemToGrid a method_12824 + p 1 slot + p 2 stack + p 3 maxAmount + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Z)V handleRecipeClicked a method_12821 + p 1 recipe + p 2 placeAll + m (Ljava/lang/Integer;IIII)V addItemToSlot a method_59902 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (ZIZ)I getStackSize a method_12819 + p 1 placeAll + p 2 maxPossible + p 3 recipeMatches + m ()Z testClearGrid b method_12825 + c Places the output of the recipe into the player's inventory. + m ()I getAmountOfFreeSlotsInInventory c method_12823 + m (Lnet/minecraft/world/inventory/RecipeBookMenu;)V + p 1 menu +c net/minecraft/recipebook/package-info akg net/minecraft/class_6323 +c net/minecraft/references/Blocks akh net/minecraft/class_8803 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN a field_46221 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN_STEM b field_46222 + f Lnet/minecraft/resources/ResourceKey; ATTACHED_PUMPKIN_STEM c field_46223 + f Lnet/minecraft/resources/ResourceKey; MELON d field_46224 + f Lnet/minecraft/resources/ResourceKey; MELON_STEM e field_46225 + f Lnet/minecraft/resources/ResourceKey; ATTACHED_MELON_STEM f field_46226 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_53910 + p 0 id + m ()V + m ()V +c net/minecraft/references/Items aki net/minecraft/class_8804 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN_SEEDS a field_46227 + f Lnet/minecraft/resources/ResourceKey; MELON_SEEDS b field_46228 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_53911 + p 0 id + m ()V + m ()V +c net/minecraft/resources/DelegatingOps akj net/minecraft/class_5379 + c A {@link DynamicOps} that delegates all functionality to an internal delegate. Comments and parameters here are copied from {@link DynamicOps} in DataFixerUpper. + f Lcom/mojang/serialization/DynamicOps; delegate a field_25503 + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 delegate +c net/minecraft/resources/FileToIdConverter akk net/minecraft/class_7654 + f Ljava/lang/String; prefix a field_39966 + f Ljava/lang/String; extension b field_39967 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; idToFile a method_45112 + p 1 id + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; listMatchingResources a method_45113 + p 1 resourceManager + m (Ljava/lang/String;)Lnet/minecraft/resources/FileToIdConverter; json a method_45114 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; fileToId b method_45115 + p 1 file + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; listMatchingResourceStacks b method_45116 + p 1 resourceManager + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45117 c method_45117 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45118 d method_45118 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 prefix + p 2 extenstion +c net/minecraft/resources/HolderSetCodec akl net/minecraft/class_6898 + f Lnet/minecraft/resources/ResourceKey; registryKey a field_36480 + f Lcom/mojang/serialization/Codec; elementCodec b field_36481 + f Lcom/mojang/serialization/Codec; homogenousListCodec c field_36482 + f Lcom/mojang/serialization/Codec; registryAwareCodec d field_36483 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; create a method_40388 + p 0 registryKey + p 1 holderCodec + p 2 disallowInline + m (Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; method_58027 a method_58027 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/List; method_40380 a method_40380 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40381 a method_40381 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/HolderSet;)Lcom/mojang/datafixers/util/Pair; method_58028 a method_58028 + m (Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; homogenousList a method_40382 + p 0 holderCodec + p 1 disallowInline + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decodeWithoutRegistry a method_40383 + p 1 ops + p 2 input + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_58030 a method_58030 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49403 a method_49403 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; lookupTag a method_58029 + p 0 input + p 1 tagKey + m (Lnet/minecraft/core/HolderGetter;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40386 a method_40386 + m (Lnet/minecraft/core/HolderSet;)Ljava/lang/String; method_49404 a method_49404 + m (Lnet/minecraft/core/HolderSet;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_40384 + p 1 input + p 2 ops + p 3 prefix + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_58031 b method_58031 + m (Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_40387 b method_40387 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; method_40385 b method_40385 + m (Lnet/minecraft/core/HolderSet;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encodeWithoutRegistry b method_40389 + p 1 input + p 2 ops + p 3 prefix + m (Ljava/util/List;)Ljava/util/List; method_40390 c method_40390 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V + p 1 registryKey + p 2 elementCodec + p 3 disallowInline +c net/minecraft/resources/RegistryDataLoader akm net/minecraft/class_7655 + f Ljava/util/List; WORLDGEN_REGISTRIES a field_39968 + f Ljava/util/List; DIMENSION_REGISTRIES b field_39969 + f Ljava/util/List; SYNCHRONIZED_REGISTRIES c field_48709 + f Lorg/slf4j/Logger; LOGGER d field_39970 + f Lnet/minecraft/core/RegistrationInfo; NETWORK_REGISTRATION_INFO e field_49024 + f Ljava/util/function/Function; REGISTRATION_INFO_CACHE f field_49025 + m (Lnet/minecraft/resources/RegistryDataLoader$LoadingFunction;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_45120 a method_45120 + m (Lnet/minecraft/resources/RegistryDataLoader$LoadingFunction;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_45121 + p 0 loadingFunction + p 1 registryAccess + p 2 registryData + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryDataLoader$Loader;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V method_56514 a method_56514 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V loadContentsFromManager a method_45122 + p 0 resourceManager + p 1 registryInfoLookup + p 2 registry + p 3 codec + p 4 loadingErrors + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_56515 + p 0 resourceManager + p 1 registryAccess + p 2 registryData + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_45123 a method_45123 + m (Ljava/lang/Boolean;)Lcom/mojang/serialization/Lifecycle; method_56913 a method_56913 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_45125 a method_45125 + m (Ljava/util/Map;)V logErrors a method_45126 + p 0 errors + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_46621 a method_46621 + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Lnet/minecraft/resources/RegistryDataLoader$Loader; method_45127 a method_45127 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryDataLoader$Loader;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V method_56517 a method_56517 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V loadContentsFromNetwork a method_56518 + p 0 elements + p 1 resourceProvider + p 2 registryInfoLookup + p 3 registry + p 4 codec + p 5 loadingErrors + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_56519 + p 0 elements + p 1 resourceProvider + p 2 registryAccess + p 3 registryData + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_46622 a method_46622 + m (Ljava/util/Optional;)Lnet/minecraft/core/RegistrationInfo; method_56914 a method_56914 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; createInfoForContextRegistry a method_46618 + p 0 registry + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup; createContext a method_46619 + p 0 registryAccess + p 1 registryLoaders + m (Lnet/minecraft/core/WritableRegistry;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; createInfoForNewRegistry a method_46620 + p 0 registry + m (Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/server/packs/resources/Resource;Lnet/minecraft/core/RegistrationInfo;)V loadElementFromResource a method_56915 + p 0 registry + p 1 codec + p 2 ops + p 3 resourceKey + p 4 resource + p 5 registrationInfo + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_45129 b method_45129 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_45130 b method_45130 + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_45128 b method_45128 + m ()V + m ()V +c net/minecraft/resources/RegistryDataLoader$1 akm$1 net/minecraft/class_7655$1 + f Ljava/util/Map; val$result a field_40851 + m (Ljava/util/Map;)V +c net/minecraft/resources/RegistryDataLoader$Loader akm$a net/minecraft/class_7655$class_9158 + f Lnet/minecraft/resources/RegistryDataLoader$RegistryData; data a comp_2245 + f Lnet/minecraft/core/WritableRegistry; registry b comp_2246 + f Ljava/util/Map; loadingErrors c comp_2247 + m ()Lnet/minecraft/resources/RegistryDataLoader$RegistryData; data a comp_2245 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V loadFromResources a method_56520 + p 1 resouceManager + p 2 registryInfoLookup + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V loadFromNetwork a method_56521 + p 1 elements + p 2 resourceProvider + p 3 registryInfoLookup + m ()Lnet/minecraft/core/WritableRegistry; registry b comp_2246 + m ()Ljava/util/Map; loadingErrors c comp_2247 + m (Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/WritableRegistry;Ljava/util/Map;)V +c net/minecraft/resources/RegistryDataLoader$LoadingFunction akm$b net/minecraft/class_7655$class_7656 +c net/minecraft/resources/RegistryDataLoader$RegistryData akm$c net/minecraft/class_7655$class_7657 + f Lnet/minecraft/resources/ResourceKey; key a comp_985 + f Lcom/mojang/serialization/Codec; elementCodec b comp_986 + f Z requiredNonEmpty c comp_2664 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_985 + m (Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)Lnet/minecraft/resources/RegistryDataLoader$Loader; create a method_45131 + p 1 registryLifecycle + p 2 loadingErrors + m (Ljava/util/function/BiConsumer;)V runWithArguments a method_54920 + p 1 runner + m ()Lcom/mojang/serialization/Codec; elementCodec b comp_986 + m ()Z requiredNonEmpty c comp_2664 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)V + p 1 key + p 2 elementCodec + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V +c net/minecraft/resources/RegistryFileCodec akn net/minecraft/class_5381 + c A codec that wraps a single element, or "file", within a registry. Possibly allows inline definitions, and always falls back to the element codec (and thus writing the registry element inline) if it fails to decode from the registry. + f Lnet/minecraft/resources/ResourceKey; registryKey a field_25507 + f Lcom/mojang/serialization/Codec; elementCodec b field_25508 + f Z allowInline c field_26758 + m ()Ljava/lang/String; method_49405 a method_49405 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46624 a method_46624 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lnet/minecraft/resources/RegistryFileCodec; create a method_29749 + c Creates a codec for a single registry element, which is held as an un-resolved {@code Supplier}. Both inline definitions of the object, and references to an existing registry element id are allowed. + p 0 registryKey + c The registry which elements may belong to. + p 1 elementCodec + c The codec used to decode either inline definitions, or elements before entering them into the registry. + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lnet/minecraft/resources/RegistryFileCodec; create a method_31192 + p 0 registryKey + p 1 elementCodec + p 2 allowInline + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_29746 a method_29746 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/datafixers/util/Pair; method_45133 a method_45133 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_40393 a method_40393 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40392 a method_40392 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49406 a method_49406 + m (Lnet/minecraft/core/Holder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_29748 + p 1 input + p 2 ops + p 3 prefix + m ()Ljava/lang/String; method_49407 b method_49407 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49408 b method_49408 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40394 b method_40394 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V + p 1 registryKey + p 2 elementCodec + p 3 allowInline +c net/minecraft/resources/RegistryFixedCodec ako net/minecraft/class_6899 + f Lnet/minecraft/resources/ResourceKey; registryKey a field_36484 + m ()Ljava/lang/String; method_49409 a method_49409 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/RegistryFixedCodec; create a method_40400 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_46625 a method_46625 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/datafixers/util/Pair; method_44141 a method_44141 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_40395 a method_40395 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40397 a method_40397 + m (Ljava/util/Optional;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_44142 a method_44142 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49410 a method_49410 + m (Lnet/minecraft/core/Holder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_40396 + p 1 holder + p 2 ops + p 3 value + m ()Ljava/lang/String; method_49411 b method_49411 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49412 b method_49412 + m ()Ljava/lang/String; method_49413 c method_49413 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey +c net/minecraft/resources/RegistryOps akp net/minecraft/class_6903 + f Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup; lookupProvider b field_40852 + m ()Ljava/lang/String; method_49414 a method_49414 + m (Lnet/minecraft/resources/RegistryOps$RegistryInfo;)Lcom/mojang/serialization/DataResult; method_46626 a method_46626 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; owner a method_46628 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/RegistryOps$RegistryInfo;)Ljava/util/Optional; method_46629 a method_46629 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46630 a method_46630 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46631 a method_46631 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/core/HolderLookup$Provider;)Lcom/mojang/serialization/Dynamic; injectRegistryContext a method_56622 + p 0 dynamic + p 1 registries + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/resources/RegistryOps; withParent a method_57110 + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)Lnet/minecraft/resources/RegistryOps; create a method_40414 + p 0 delegate + p 1 lookupProvider + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/resources/RegistryOps; create a method_46632 + p 0 delegate + p 1 registries + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; method_46633 a method_46633 + m ()Ljava/lang/String; method_49415 b method_49415 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getter b method_46634 + p 1 registryKey + m (Ljava/lang/Object;)Lnet/minecraft/core/HolderGetter; method_46635 b method_46635 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; retrieveGetter c method_46636 + p 0 registryOps + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; retrieveElement d method_46637 + p 0 key + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46638 e method_46638 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49416 f method_49416 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46639 g method_46639 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49417 h method_49417 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V + p 1 delegate + p 2 lookupProvider +c net/minecraft/resources/RegistryOps$HolderLookupAdapter akp$a net/minecraft/class_6903$class_9683 + f Lnet/minecraft/core/HolderLookup$Provider; lookupProvider a field_51501 + f Ljava/util/Map; lookups b field_51502 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; createLookup b method_59855 + p 1 registryKey + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 lookupProvider +c net/minecraft/resources/RegistryOps$RegistryInfo akp$b net/minecraft/class_6903$class_7862 + f Lnet/minecraft/core/HolderOwner; owner a comp_1130 + f Lnet/minecraft/core/HolderGetter; getter b comp_1131 + f Lcom/mojang/serialization/Lifecycle; elementsLifecycle c comp_1132 + m ()Lnet/minecraft/core/HolderOwner; owner a comp_1130 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; fromRegistryLookup a method_57074 + p 0 registryLookup + m ()Lnet/minecraft/core/HolderGetter; getter b comp_1131 + m ()Lcom/mojang/serialization/Lifecycle; elementsLifecycle c comp_1132 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderGetter;Lcom/mojang/serialization/Lifecycle;)V +c net/minecraft/resources/RegistryOps$RegistryInfoLookup akp$c net/minecraft/class_6903$class_7863 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46623 + p 1 registryKey +c net/minecraft/resources/ResourceKey akq net/minecraft/class_5321 + c An immutable key for a resource, in terms of the name of its parent registry and its location in that registry.\n

\n{@link net.minecraft.core.Registry} uses this to return resource keys for registry objects via {@link net.minecraft.core.Registry#getResourceKey(Object)}. It also uses this class to store its name, with the parent registry name set to {@code minecraft:root}. When used in this way it is usually referred to as a "registry key".

\n

\n@param The type of the resource represented by this {@code ResourceKey}, or the type of the registry if it is a registry key.\n@see net.minecraft.resources.ResourceLocation + f Ljava/util/concurrent/ConcurrentMap; VALUES a field_25136 + f Lnet/minecraft/resources/ResourceLocation; registryName b field_25137 + c The name of the parent registry of the resource. + f Lnet/minecraft/resources/ResourceLocation; location c field_25138 + c The location of the resource within the registry. + m ()Lnet/minecraft/resources/ResourceLocation; location a method_29177 + m (Lnet/minecraft/resources/ResourceKey$InternKey;)Lnet/minecraft/resources/ResourceKey; method_29182 a method_29182 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_39154 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; create a method_29179 + c Constructs a new {@code ResourceKey} for a resource with the specified {@code location} within the registry specified by the given {@code registryKey}.\n\n@return the created resource key. The registry name is set to the location of the specified {@code registryKey} and with the specified {@code location} as the location of the resource. + p 0 registryKey + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; createRegistryKey a method_29180 + c @return the created registry key. The registry name is set to {@code minecraft:root} and the location the specified {@code registryName}. + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; create a method_29181 + p 0 registryName + p 1 location + m ()Lnet/minecraft/resources/ResourceLocation; registry b method_41185 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56038 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_56039 b method_56039 + m ()Lnet/minecraft/resources/ResourceKey; registryKey c method_58273 + m (Lnet/minecraft/resources/ResourceKey;)Z isFor c method_31163 + c @return {@code true} if this resource key is a direct child of the specified {@code registryKey}. + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_39155 c method_39155 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast d method_39752 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 registryName + p 2 location + m ()V +c net/minecraft/resources/ResourceKey$InternKey akq$a net/minecraft/class_5321$class_7892 + f Lnet/minecraft/resources/ResourceLocation; registry a comp_1149 + f Lnet/minecraft/resources/ResourceLocation; location b comp_1150 + m ()Lnet/minecraft/resources/ResourceLocation; registry a comp_1149 + m ()Lnet/minecraft/resources/ResourceLocation; location b comp_1150 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/resources/ResourceLocation akr net/minecraft/class_2960 + c An immutable location of a resource, in terms of a path and namespace.\n

\nThis is used as an identifier for a resource, usually for those housed in a {@link net.minecraft.core.Registry}, such as blocks and items.\n

\n{@code minecraft} is always taken as the default namespace for a resource location when none is explicitly stated. When using this for registering objects, this namespace should only be used for resources added by Minecraft itself.\n

\nGenerally, and by the implementation of {@link #toString()}, the string representation of this class is expressed in the form {@code namespace:path}. The colon is also used as the default separator for parsing strings as a {@code ResourceLocation}.\n@see net.minecraft.resources.ResourceKey + f Lcom/mojang/serialization/Codec; CODEC a field_25139 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48267 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID c field_13354 + f C NAMESPACE_SEPARATOR d field_33380 + f Ljava/lang/String; DEFAULT_NAMESPACE e field_33381 + f Ljava/lang/String; REALMS_NAMESPACE f field_33382 + f Z $assertionsDisabled g field_52202 + f Ljava/lang/String; namespace h field_13353 + f Ljava/lang/String; path i field_13355 + m ()Ljava/lang/String; getPath a method_12832 + m (C)Z isAllowedInResourceLocation a method_12831 + p 0 character + m (Lnet/minecraft/resources/ResourceLocation;)I compareTo a method_12833 + p 1 other + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; read a method_12835 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; parse a method_60654 + p 0 location + m (Ljava/lang/String;C)Lnet/minecraft/resources/ResourceLocation; bySeparator a method_12838 + p 0 location + p 1 seperator + m (Ljava/lang/String;Lnet/minecraft/ResourceLocationException;)Ljava/lang/String; method_49418 a method_49418 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; fromNamespaceAndPath a method_60655 + p 0 namespace + p 1 path + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/resources/ResourceLocation; withPath a method_45134 + p 1 pathOperator + m ()Ljava/lang/String; getNamespace b method_12836 + m (C)Z validPathChar b method_29184 + p 0 pathChar + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; readNonEmpty b method_58274 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withDefaultNamespace b method_60656 + p 0 location + m (Ljava/lang/String;C)Lnet/minecraft/resources/ResourceLocation; tryBySeparator b method_60935 + p 0 location + p 1 seperator + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; tryBuild b method_43902 + p 0 namespace + p 1 path + m ()Ljava/lang/String; toDebugFileName c method_36181 + m (C)Z validNamespaceChar c method_29185 + p 0 namespaceChar + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; readGreedy c method_58275 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; tryParse c method_12829 + c Attempts to parse the specified {@code location} as a {@code ResourceLocation} by splitting it into a\nnamespace and path by a colon.\n

\nIf no colon is present in the {@code location}, the namespace defaults to {@code minecraft}, taking the {@code location} as the path.\n@return the parsed resource location; otherwise {@code null} if there is a non {@code [a-z0-9_.-]} character in the decomposed namespace or a non {@code [a-z0-9/._-]} character in the decomposed path\n@see #of(String, char) + p 0 location + c the location string to try to parse as a {@code ResourceLocation} + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; toLanguageKey c method_48747 + p 1 type + p 2 key + m ()Ljava/lang/String; toLanguageKey d method_42094 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; read d method_29186 + p 0 location + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; createUntrusted d method_60936 + p 0 namespace + p 1 path + m ()Ljava/lang/String; toShortLanguageKey e method_43903 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withPath e method_45136 + p 1 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; assertValidNamespace e method_45135 + p 0 namespace + p 1 path + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withPrefix f method_45138 + p 1 pathPrefix + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; assertValidPath f method_45137 + p 0 namespace + p 1 path + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withSuffix g method_48331 + p 1 pathSuffix + m (Ljava/lang/String;)Ljava/lang/String; toLanguageKey h method_42093 + p 1 type + m (Ljava/lang/String;)Z isValidPath i method_20208 + c @return {@code true} if the specified {@code path} is valid: consists only of {@code [a-z0-9/._-]} characters + p 0 path + m (Ljava/lang/String;)Z isValidNamespace j method_20209 + c @return {@code true} if the specified {@code namespace} is valid: consists only of {@code [a-z0-9_.-]} characters + p 0 namespace + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 namespace + p 2 path + m ()V +c net/minecraft/resources/ResourceLocation$Serializer akr$a net/minecraft/class_2960$class_2961 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/reflect/Type;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement; serialize a method_12839 + p 1 src + p 2 typeOfSrc + p 3 context + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/resources/ResourceLocation; deserialize a method_12840 + p 1 json + p 2 typeOfT + p 3 context + m ()V +c net/minecraft/resources/package-info aks net/minecraft/class_6324 +c net/minecraft/server/Bootstrap akt net/minecraft/class_2966 + f Ljava/io/PrintStream; STDOUT a field_13358 + f Ljava/util/concurrent/atomic/AtomicLong; bootstrapDuration b field_44781 + f Z isBootstrapped c field_13357 + c Whether the blocks, items, etc have already been registered + f Lorg/slf4j/Logger; LOGGER d field_13359 + m ()V bootStrap a method_12851 + c Registers blocks, items, stats, etc. + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_17595 a method_17595 + m (Ljava/lang/Iterable;Ljava/util/function/Function;Ljava/util/Set;)V checkTranslations a method_12848 + p 0 objects + p 1 objectToKeyFunction + p 2 translationSet + m (Ljava/lang/String;)V realStdoutPrintln a method_12847 + p 0 message + m (Ljava/util/Set;)V checkGameruleTranslations a method_27732 + p 0 translations + m (Ljava/util/function/Function;Lnet/minecraft/locale/Language;Ljava/util/Set;Ljava/lang/Object;)V method_12850 a method_12850 + m (Ljava/util/function/Supplier;)V checkBootstrapCalled a method_36235 + p 0 callSite + m ()Ljava/util/Set; getMissingTranslations b method_17597 + m (Ljava/lang/String;)V method_36236 b method_36236 + m (Ljava/util/function/Supplier;)Ljava/lang/RuntimeException; createBootstrapException b method_36237 + p 0 callSite + m ()V validate c method_17598 + m ()V wrapStreams d method_12852 + c Redirect standard streams to logger. + m ()Ljava/lang/String; method_36238 e method_36238 + m ()V + m ()V +c net/minecraft/server/Bootstrap$1 akt$1 net/minecraft/class_2966$1 + f Lnet/minecraft/locale/Language; val$language a field_24373 + f Ljava/util/Set; val$missing b field_24374 + m (Lnet/minecraft/locale/Language;Ljava/util/Set;)V +c net/minecraft/server/ChainedJsonException aku net/minecraft/class_2973 + f Ljava/util/List; entries a field_13371 + f Ljava/lang/String; message b field_13372 + m (Ljava/lang/Exception;)Lnet/minecraft/server/ChainedJsonException; forException a method_12856 + p 0 exception + m (Ljava/lang/String;)V prependJsonKey a method_12854 + p 1 key + m (Ljava/lang/String;)V setFilenameAndFlush b method_12855 + p 1 filename + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/server/ChainedJsonException$Entry aku$a net/minecraft/class_2973$class_2974 + f Ljava/lang/String; filename a field_13373 + f Ljava/util/List; jsonKeys b field_13374 + m ()Ljava/lang/String; getFilename a method_36182 + m (Ljava/lang/String;)V addJsonKey a method_12858 + p 1 key + m ()Ljava/lang/String; getJsonKeys b method_12857 + m ()V +c net/minecraft/server/ConsoleInput akv net/minecraft/class_2976 + f Ljava/lang/String; msg a field_13377 + f Lnet/minecraft/commands/CommandSourceStack; source b field_13378 + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)V + p 1 msg + p 2 source +c net/minecraft/server/DebugLoggedPrintStream akw net/minecraft/class_2980 + f Lorg/slf4j/Logger; LOGGER b field_36382 + m (Ljava/lang/String;Ljava/io/OutputStream;)V + p 1 name + p 2 out + m ()V +c net/minecraft/server/Eula akx net/minecraft/class_2981 + f Lorg/slf4j/Logger; LOGGER a field_13381 + f Ljava/nio/file/Path; file b field_13380 + f Z agreed c field_13379 + m ()Z hasAgreedToEULA a method_12866 + m ()Z readFile b method_12867 + m ()V saveDefaults c method_12868 + m (Ljava/nio/file/Path;)V + p 1 file + m ()V +c net/minecraft/server/LoggedPrintStream aky net/minecraft/class_2983 + f Ljava/lang/String; name a field_13383 + f Lorg/slf4j/Logger; LOGGER b field_13384 + m (Ljava/lang/String;)V logLine a method_12870 + p 1 string + m (Ljava/lang/String;Ljava/io/OutputStream;)V + p 1 name + p 2 out + m ()V +c net/minecraft/server/PlayerAdvancements akz net/minecraft/class_2985 + f Lorg/slf4j/Logger; LOGGER a field_13394 + f Lcom/google/gson/Gson; GSON b field_13395 + f Lnet/minecraft/server/players/PlayerList; playerList c field_25325 + f Ljava/nio/file/Path; playerSavePath d field_41734 + f Lnet/minecraft/advancements/AdvancementTree; tree e field_46073 + f Ljava/util/Map; progress f field_41735 + f Ljava/util/Set; visible g field_13390 + f Ljava/util/Set; progressChanged h field_13388 + f Ljava/util/Set; rootsToUpdate i field_41736 + f Lnet/minecraft/server/level/ServerPlayer; player j field_13391 + f Lnet/minecraft/advancements/AdvancementHolder; lastSelectedTab k field_13387 + f Z isFirstPacket l field_13396 + f Lcom/mojang/serialization/Codec; codec m field_46074 + m ()V stopListening a method_12881 + m (Lnet/minecraft/advancements/AdvancementHolder;)V setSelectedTab a method_12888 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V startProgress a method_12884 + p 1 advancement + p 2 advancementProgress + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/DisplayInfo;)V method_53637 a method_53637 + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z award a method_12878 + p 1 advancement + p 2 criterionKey + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V registerListener a method_53638 + p 1 advancement + p 2 criterionKey + p 3 criterion + m (Lnet/minecraft/advancements/AdvancementNode;)Z method_48029 a method_48029 + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/Set;Ljava/util/Set;)V updateTreeVisibility a method_48025 + p 1 root + p 2 advancementOutput + p 3 idOutput + m (Lnet/minecraft/server/ServerAdvancementManager;)V reload a method_12886 + p 1 manager + m (Lnet/minecraft/server/ServerAdvancementManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementProgress;)V method_53639 a method_53639 + m (Lnet/minecraft/server/ServerAdvancementManager;Lnet/minecraft/server/PlayerAdvancements$Data;)V applyFrom a method_53640 + p 1 advancementManager + p 2 data + m (Lnet/minecraft/server/level/ServerPlayer;)V setPlayer a method_12875 + p 1 player + m (Ljava/util/Map;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V method_53641 a method_53641 + m (Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/advancements/AdvancementNode;Z)V method_48027 a method_48027 + m ()V save b method_12890 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/AdvancementProgress; getOrStartProgress b method_12882 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z revoke b method_12883 + p 1 advancement + p 2 criterionKey + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V removeListener b method_53642 + p 1 advancement + p 2 criterionKey + p 3 criterion + m (Lnet/minecraft/server/ServerAdvancementManager;)V registerListeners b method_12889 + p 1 manager + m (Lnet/minecraft/server/level/ServerPlayer;)V flushDirty b method_12876 + p 1 serverPlayer + m ()Lnet/minecraft/server/PlayerAdvancements$Data; asData c method_53643 + m (Lnet/minecraft/advancements/AdvancementHolder;)V markForVisibilityUpdate c method_48028 + p 1 advancement + m (Lnet/minecraft/server/ServerAdvancementManager;)V checkForAutomaticTriggers c method_12872 + p 1 manager + m (Lnet/minecraft/advancements/AdvancementHolder;)V registerListeners d method_12874 + p 1 advancement + m (Lnet/minecraft/server/ServerAdvancementManager;)V load d method_12873 + p 1 manager + m (Lnet/minecraft/advancements/AdvancementHolder;)V unregisterListeners e method_12880 + p 1 advancement + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/ServerAdvancementManager;Ljava/nio/file/Path;Lnet/minecraft/server/level/ServerPlayer;)V + p 1 dataFixer + p 2 playerList + p 3 manager + p 4 playerSavePath + p 5 player + m ()V +c net/minecraft/server/PlayerAdvancements$Data akz$a net/minecraft/class_2985$class_8780 + f Lcom/mojang/serialization/Codec; CODEC a field_46075 + f Ljava/util/Map; map b comp_1921 + m ()Ljava/util/Map; map a comp_1921 + m (Ljava/util/function/BiConsumer;)V forEach a method_53644 + p 1 action + m (Ljava/util/function/BiConsumer;Ljava/util/Map$Entry;)V method_53645 a method_53645 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/server/RegistryLayer ala net/minecraft/class_7659 + f Lnet/minecraft/server/RegistryLayer; STATIC a field_39971 + f Lnet/minecraft/server/RegistryLayer; WORLDGEN b field_39972 + f Lnet/minecraft/server/RegistryLayer; DIMENSIONS c field_39973 + f Lnet/minecraft/server/RegistryLayer; RELOADABLE d field_39974 + f Ljava/util/List; VALUES e field_39975 + f Lnet/minecraft/core/RegistryAccess$Frozen; STATIC_ACCESS f field_39976 + f [Lnet/minecraft/server/RegistryLayer; $VALUES g field_39977 + m ()Lnet/minecraft/core/LayeredRegistryAccess; createRegistryAccess a method_45139 + m ()[Lnet/minecraft/server/RegistryLayer; $values b method_45140 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/ReloadableServerRegistries alb net/minecraft/class_9383 + f Lorg/slf4j/Logger; LOGGER a field_49916 + f Lcom/google/gson/Gson; GSON b field_49917 + f Lnet/minecraft/core/RegistrationInfo; DEFAULT_REGISTRATION_INFO c field_49918 + m (Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/storage/loot/LootDataType;)Ljava/util/concurrent/CompletableFuture; method_58276 a method_58276 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; scheduleElementParse a method_58277 + p 0 lootDataType + p 1 registryOps + p 2 resourceManager + p 3 backgroundExecutor + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonElement;)V method_58278 a method_58278 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps;)Lnet/minecraft/core/WritableRegistry; method_58279 a method_58279 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_58280 a method_58280 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/core/RegistryAccess;)V validateRegistry a method_58281 + p 0 context + p 1 lootDataType + p 2 registryAccess + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/storage/loot/LootDataType;)V method_58282 a method_58282 + m (Ljava/lang/String;Ljava/lang/String;)V method_58283 a method_58283 + m (Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; reload a method_58284 + p 0 registries + p 1 resourceManager + p 2 backgroundExecutor + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; apply a method_58285 + p 0 registryAccess + p 1 registries + m (Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)V method_58286 a method_58286 + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; createUpdatedRegistries b method_58287 + p 0 registryAccess + p 1 registries + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; method_58288 c method_58288 + m ()V + m ()V +c net/minecraft/server/ReloadableServerRegistries$EmptyTagLookupWrapper alb$a net/minecraft/class_9383$class_9384 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_49919 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/server/ReloadableServerRegistries$Holder alb$b net/minecraft/class_9383$class_9385 + f Lnet/minecraft/core/RegistryAccess$Frozen; registries a field_49920 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; get a method_58289 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Collection; getKeys a method_58290 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Ljava/util/Optional; method_58291 a method_58291 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58292 a method_58292 + m (Lnet/minecraft/core/Registry;)Ljava/util/stream/Stream; method_58293 a method_58293 + m ()Lnet/minecraft/core/HolderGetter$Provider; lookup b method_58294 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/LootTable; getLootTable b method_58295 + p 1 lootTableKey + m (Lnet/minecraft/core/RegistryAccess$Frozen;)V + p 1 registries +c net/minecraft/server/ReloadableServerResources alc net/minecraft/class_5350 + f Lorg/slf4j/Logger; LOGGER a field_36491 + f Ljava/util/concurrent/CompletableFuture; DATA_RELOAD_INITIAL_TASK b field_25334 + f Lnet/minecraft/server/ReloadableServerRegistries$Holder; fullRegistryHolder c field_49921 + f Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup; registryLookup d field_48785 + f Lnet/minecraft/commands/Commands; commands e field_25336 + f Lnet/minecraft/world/item/crafting/RecipeManager; recipes f field_25337 + f Lnet/minecraft/tags/TagManager; tagManager g field_25338 + f Lnet/minecraft/server/ServerAdvancementManager; advancements h field_25341 + f Lnet/minecraft/server/ServerFunctionLibrary; functionLibrary i field_25342 + m ()Lnet/minecraft/server/ServerFunctionLibrary; getFunctionLibrary a method_29465 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map$Entry;)Lnet/minecraft/tags/TagKey; method_40424 a method_40424 + m (Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Object;)Lnet/minecraft/server/ReloadableServerResources; method_40425 a method_40425 + m (Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Object;Ljava/lang/Throwable;)V method_42095 a method_42095 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;ILjava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadResources a method_29466 + p 0 resourceManager + p 1 registries + p 2 enabledFeatures + p 3 commandSelection + p 4 functionCompilationLevel + p 5 backgroundExecutor + p 6 gameExecutor + m (Lnet/minecraft/tags/TagManager$LoadResult;)V method_40426 a method_40426 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;ILnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/concurrent/CompletionStage; method_58296 a method_58296 + m (Ljava/util/Map$Entry;)Ljava/util/List; method_40423 a method_40423 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/tags/TagManager$LoadResult;)V updateRegistryTags a method_40422 + p 0 registryAccess + p 1 loadResult + m ()Lnet/minecraft/server/ReloadableServerRegistries$Holder; fullRegistries b method_58297 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager c method_29471 + m ()Lnet/minecraft/commands/Commands; getCommands d method_29472 + m ()Lnet/minecraft/server/ServerAdvancementManager; getAdvancements e method_29473 + m ()Ljava/util/List; listeners f method_40427 + m ()V updateRegistryTags g method_40421 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;I)V + p 1 registryAccess + p 2 enabledFeatures + p 3 commandSelection + p 4 functionCompilationLevel + m ()V +c net/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup alc$a net/minecraft/class_5350$class_9180 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_48786 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; missingTagAccessPolicy b field_40912 + m (Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy;)V missingTagAccessPolicy a method_46724 + p 1 missingTagAccessPolicy + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; createDispatchedLookup a method_56623 + p 1 lookup + p 2 tagAddingLookup + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_56624 a method_56624 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup$1 alc$a$1 net/minecraft/class_5350$class_9180$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$originalLookup a field_40913 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$originalTagAddingLookup b field_40914 + f Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup; field_40915 c field_40915 + m (Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy alc$b net/minecraft/class_5350$class_7158 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; CREATE_NEW a field_37824 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; FAIL b field_37826 + f [Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; $VALUES c field_37827 + m ()[Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; $values a method_41701 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/RunningOnDifferentThreadException ald net/minecraft/class_2987 + f Lnet/minecraft/server/RunningOnDifferentThreadException; RUNNING_ON_DIFFERENT_THREAD a field_13400 + m ()V + m ()V +c net/minecraft/server/ServerAdvancementManager ale net/minecraft/class_2989 + f Lorg/slf4j/Logger; LOGGER a field_13406 + f Lcom/google/gson/Gson; GSON b field_13405 + f Ljava/util/Map; advancements c field_13404 + f Lnet/minecraft/advancements/AdvancementTree; tree d field_46076 + f Lnet/minecraft/core/HolderLookup$Provider; registries e field_48787 + m ()Lnet/minecraft/advancements/AdvancementTree; tree a method_53646 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonElement;)V method_20723 a method_20723 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; get a method_12896 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/Advancement;)V validate a method_54921 + p 1 location + p 2 advancement + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V method_54922 a method_54922 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_20724 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/util/Collection; getAllAdvancements b method_12893 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/server/ServerFunctionLibrary alf net/minecraft/class_5349 + f Lnet/minecraft/resources/ResourceKey; TYPE_KEY a field_51976 + f Lorg/slf4j/Logger; LOGGER b field_25326 + f Lnet/minecraft/resources/FileToIdConverter; LISTER c field_39978 + f Ljava/util/Map; functions d field_25329 + f Lnet/minecraft/tags/TagLoader; tagsLoader e field_25330 + f Ljava/util/Map; tags f field_25801 + f I functionCompilationLevel g field_25331 + f Lcom/mojang/brigadier/CommandDispatcher; dispatcher h field_25332 + m ()Ljava/util/Map; getFunctions a method_29447 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getFunction a method_29456 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/commands/functions/CommandFunction;Ljava/lang/Throwable;)Ljava/lang/Object; method_29457 a method_29457 + m (Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/List; readLines a method_29450 + p 0 resource + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45141 a method_45141 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/CompletableFuture;)V method_29452 a method_29452 + m (Lcom/mojang/datafixers/util/Pair;)V method_29453 a method_29453 + m (Ljava/util/Map$Entry;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/functions/CommandFunction; method_29451 a method_29451 + m (Ljava/util/Map;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/util/Map; method_29455 a method_29455 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_29449 a method_29449 + m ()Ljava/lang/Iterable; getAvailableTags b method_29458 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getTag b method_29459 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_33324 b method_33324 + m (ILcom/mojang/brigadier/CommandDispatcher;)V + p 1 functionCompilationLevel + p 2 dispatcher + m ()V +c net/minecraft/server/ServerFunctionManager alg net/minecraft/class_2991 + f Lorg/slf4j/Logger; LOGGER a field_47181 + f Lnet/minecraft/resources/ResourceLocation; TICK_FUNCTION_TAG b field_13417 + f Lnet/minecraft/resources/ResourceLocation; LOAD_FUNCTION_TAG c field_13412 + f Lnet/minecraft/server/MinecraftServer; server d field_13419 + f Ljava/util/List; ticking e field_13418 + f Z postReload f field_13422 + f Lnet/minecraft/server/ServerFunctionLibrary; library g field_25333 + m ()Lcom/mojang/brigadier/CommandDispatcher; getDispatcher a method_12900 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; get a method_12905 + p 1 functionIdentifier + m (Lnet/minecraft/server/ServerFunctionLibrary;)V replaceLibrary a method_29461 + p 1 reloader + m (Lnet/minecraft/commands/functions/CommandFunction;)Ljava/lang/String; method_54251 a method_54251 + m (Lnet/minecraft/commands/functions/CommandFunction;Lnet/minecraft/commands/CommandSourceStack;)V execute a method_12904 + p 1 function + p 2 source + m (Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;)V method_54252 a method_54252 + m (Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;)V executeTagFunctions a method_29460 + p 1 functionObjects + p 2 identifier + m ()V tick b method_18699 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getTag b method_29462 + p 1 functionTagIdentifier + m (Lnet/minecraft/server/ServerFunctionLibrary;)V postReload b method_29773 + p 1 reloader + m ()Lnet/minecraft/commands/CommandSourceStack; getGameLoopSender c method_12899 + m ()Ljava/lang/Iterable; getFunctionNames d method_29463 + m ()Ljava/lang/Iterable; getTagNames e method_29464 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/ServerFunctionLibrary;)V + p 1 server + p 2 library + m ()V +c net/minecraft/server/ServerInfo alh net/minecraft/class_8599 + m ()Ljava/lang/String; getServerVersion L method_3827 + m ()I getPlayerCount M method_3788 + m ()I getMaxPlayers N method_3802 + m ()Ljava/lang/String; getMotd af method_3818 +c net/minecraft/server/ServerInterface ali net/minecraft/class_2994 + m ()[Ljava/lang/String; getPlayerNames O method_3858 + c Returns an array of the usernames of all the connected players. + m ()Lnet/minecraft/server/dedicated/DedicatedServerProperties; getProperties a method_16705 + m (Ljava/lang/String;)Ljava/lang/String; runCommand a method_12934 + c Handle a command received by an RCon instance + p 1 command + m ()Ljava/lang/String; getServerIp b method_12929 + c Returns the server's hostname. + m ()I getServerPort d method_12918 + c Never used, but "getServerPort" is already taken. + m ()Ljava/lang/String; getServerName h method_12930 + c Returns the server message of the day + m ()Ljava/lang/String; getLevelIdName s method_3865 + m ()Ljava/lang/String; getPluginNames u method_12916 + c Used by RCon's Query in the form of "MajorServerMod 1.2.3: MyPlugin 1.3" AnotherPlugin 2.1" AndSoForth 1.0". +c net/minecraft/server/ServerLinks alj net/minecraft/class_9782 + f Lnet/minecraft/server/ServerLinks; EMPTY a field_51977 + f Lnet/minecraft/network/codec/StreamCodec; TYPE_STREAM_CODEC b field_52203 + f Lnet/minecraft/network/codec/StreamCodec; UNTRUSTED_LINKS_STREAM_CODEC c field_52204 + f Ljava/util/List; entries d comp_2826 + m ()Z isEmpty a method_60657 + m (Lnet/minecraft/server/ServerLinks$Entry;)Lnet/minecraft/server/ServerLinks$UntrustedEntry; method_60937 a method_60937 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)Ljava/util/Optional; findKnownType a method_60658 + p 1 type + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Lnet/minecraft/server/ServerLinks$Entry;)Z method_60659 a method_60659 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Lnet/minecraft/server/ServerLinks$KnownLinkType;)Ljava/lang/Boolean; method_60660 a method_60660 + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/Boolean; method_60661 a method_60661 + m ()Ljava/util/List; untrust b method_60938 + m ()Ljava/util/List; entries c comp_2826 + m (Ljava/util/List;)V + m ()V +c net/minecraft/server/ServerLinks$Entry alj$a net/minecraft/class_9782$class_9783 + f Lcom/mojang/datafixers/util/Either; type a comp_2827 + f Ljava/net/URI; link b comp_2828 + m ()Lnet/minecraft/network/chat/Component; displayName a method_60662 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; knownType a method_60663 + p 0 type + p 1 link + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_60664 a method_60664 + m (Lnet/minecraft/network/chat/Component;Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; custom a method_60665 + p 0 type + p 1 link + m ()Lcom/mojang/datafixers/util/Either; type b comp_2827 + m ()Ljava/net/URI; link c comp_2828 + m (Lcom/mojang/datafixers/util/Either;Ljava/net/URI;)V +c net/minecraft/server/ServerLinks$KnownLinkType alj$b net/minecraft/class_9782$class_9784 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; BUG_REPORT a field_51981 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; COMMUNITY_GUIDELINES b field_52205 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; SUPPORT c field_52206 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; STATUS d field_52207 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; FEEDBACK e field_52208 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; COMMUNITY f field_52209 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; WEBSITE g field_52210 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; FORUMS h field_52211 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; NEWS i field_52212 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; ANNOUNCEMENTS j field_52213 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC k field_51982 + f Ljava/util/function/IntFunction; BY_ID l field_51983 + f I id m field_51984 + f Ljava/lang/String; name n field_51985 + f [Lnet/minecraft/server/ServerLinks$KnownLinkType; $VALUES o field_51986 + m ()Lnet/minecraft/network/chat/Component; displayName a method_60666 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)I method_60667 a method_60667 + m (Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; create a method_60668 + p 1 uri + m ()[Lnet/minecraft/server/ServerLinks$KnownLinkType; $values b method_60669 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)I method_60670 b method_60670 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/server/ServerLinks$UntrustedEntry alj$c net/minecraft/class_9782$class_9816 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52214 + f Lcom/mojang/datafixers/util/Either; type b comp_2860 + f Ljava/lang/String; link c comp_2861 + m ()Lcom/mojang/datafixers/util/Either; type a comp_2860 + m ()Ljava/lang/String; link b comp_2861 + m (Lcom/mojang/datafixers/util/Either;Ljava/lang/String;)V + m ()V +c net/minecraft/server/ServerScoreboard alk net/minecraft/class_2995 + f Lnet/minecraft/server/MinecraftServer; server b field_13428 + f Ljava/util/Set; trackedObjectives c field_13427 + f Ljava/util/List; dirtyListeners d field_13426 + m ()V setDirty a method_12941 + m (Ljava/lang/Runnable;)V addDirtyListener a method_12935 + p 1 runnable + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/ScoreboardSaveData; createData a method_32704 + p 1 tag + p 2 registries + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; dataFactory b method_52297 + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/List; getStartTrackingPackets d method_12937 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V startTrackingObjective e method_12939 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/List; getStopTrackingPackets f method_12940 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V stopTrackingObjective g method_12938 + p 1 objective + m ()Lnet/minecraft/world/scores/ScoreboardSaveData; createData h method_32705 + m (Lnet/minecraft/world/scores/Objective;)I getObjectiveDisplaySlotCount h method_12936 + p 1 objective + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/ServerScoreboard$Method alk$a net/minecraft/class_2995$class_2996 + f Lnet/minecraft/server/ServerScoreboard$Method; CHANGE a field_13431 + f Lnet/minecraft/server/ServerScoreboard$Method; REMOVE b field_13430 + f [Lnet/minecraft/server/ServerScoreboard$Method; $VALUES c field_13429 + m ()[Lnet/minecraft/server/ServerScoreboard$Method; $values a method_36963 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/ServerTickRateManager all net/minecraft/class_8915 + f J remainingSprintTicks g field_46919 + f J sprintTickStartTime h field_46920 + f J sprintTimeSpend i field_46921 + f J scheduledCurrentSprintTicks j field_46922 + f Z previousIsFrozen k field_46923 + f Lnet/minecraft/server/MinecraftServer; server l field_46924 + m ()Z isSprinting a method_54670 + m (I)Z stepGameIfPaused a method_54672 + p 1 ticks + m (ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_54673 a method_54673 + m (Lnet/minecraft/server/level/ServerPlayer;)V updateJoiningPlayer a method_54674 + p 1 player + m ()Z stopStepping b method_54676 + m (I)Z requestGameToSprint b method_54677 + p 1 sprintTime + m ()Z stopSprinting c method_54678 + m ()Z checkShouldSprintThisTick d method_54679 + m ()V endTickWork e method_54680 + m ()V updateStateToClients n method_54681 + m ()V updateStepTicks o method_54682 + m ()V finishTickSprint p method_54683 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/Services alm net/minecraft/class_7497 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService a comp_837 + f Lcom/mojang/authlib/yggdrasil/ServicesKeySet; servicesKeySet b comp_838 + f Lcom/mojang/authlib/GameProfileRepository; profileRepository c comp_839 + f Lnet/minecraft/server/players/GameProfileCache; profileCache d comp_840 + f Ljava/lang/String; USERID_CACHE_FILE e field_39392 + m ()Lnet/minecraft/util/SignatureValidator; profileKeySignatureValidator a method_51467 + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Ljava/io/File;)Lnet/minecraft/server/Services; create a method_44143 + p 0 authenticationService + p 1 profileRepository + m ()Z canValidateProfileKeys b method_55595 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService c comp_837 + m ()Lcom/mojang/authlib/yggdrasil/ServicesKeySet; servicesKeySet d comp_838 + m ()Lcom/mojang/authlib/GameProfileRepository; profileRepository e comp_839 + m ()Lnet/minecraft/server/players/GameProfileCache; profileCache f comp_840 + m (Lcom/mojang/authlib/minecraft/MinecraftSessionService;Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/GameProfileRepository;Lnet/minecraft/server/players/GameProfileCache;)V +c net/minecraft/server/TickTask aln net/minecraft/class_3738 + f I tick a field_16504 + f Ljava/lang/Runnable; runnable b field_16505 + m ()I getTick a method_16338 + c Get the server time when this task was scheduled + m (ILjava/lang/Runnable;)V + p 1 tick + p 2 runnable +c net/minecraft/server/WorldLoader alo net/minecraft/class_7237 + f Lorg/slf4j/Logger; LOGGER a field_39979 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lnet/minecraft/server/WorldLoader$WorldDataSupplier;Lnet/minecraft/server/WorldLoader$ResultFactory;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; load a method_42098 + p 0 initConfig + p 1 worldDataSupplier + p 2 resultFactory + p 3 backgroundExecutor + p 4 gameExecutor + m (Lnet/minecraft/server/WorldLoader$ResultFactory;Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/WorldLoader$DataLoadOutput;Lnet/minecraft/server/ReloadableServerResources;)Ljava/lang/Object; method_42097 a method_42097 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Throwable;)V method_42096 a method_42096 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/RegistryLayer;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; loadLayer a method_45142 + p 0 resourceManager + p 1 registryAccess + p 2 registryLayer + p 3 registryData + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/RegistryLayer;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; loadAndReplaceLayer b method_45143 + p 0 resourceManager + p 1 registryAccess + p 2 registryLayer + p 3 registryData + m ()V + m ()V +c net/minecraft/server/WorldLoader$DataLoadContext alo$a net/minecraft/class_7237$class_7660 + f Lnet/minecraft/server/packs/resources/ResourceManager; resources a comp_987 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_988 + f Lnet/minecraft/core/RegistryAccess$Frozen; datapackWorldgen c comp_989 + f Lnet/minecraft/core/RegistryAccess$Frozen; datapackDimensions d comp_990 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; resources a comp_987 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_988 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; datapackWorldgen c comp_989 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; datapackDimensions d comp_990 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/world/level/WorldDataConfiguration;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/core/RegistryAccess$Frozen;)V +c net/minecraft/server/WorldLoader$DataLoadOutput alo$b net/minecraft/class_7237$class_7661 + f Ljava/lang/Object; cookie a comp_991 + f Lnet/minecraft/core/RegistryAccess$Frozen; finalDimensions b comp_992 + m ()Ljava/lang/Object; cookie a comp_991 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; finalDimensions b comp_992 + m (Ljava/lang/Object;Lnet/minecraft/core/RegistryAccess$Frozen;)V +c net/minecraft/server/WorldLoader$InitConfig alo$c net/minecraft/class_7237$class_6906 + f Lnet/minecraft/server/WorldLoader$PackConfig; packConfig a comp_634 + f Lnet/minecraft/commands/Commands$CommandSelection; commandSelection b comp_361 + f I functionCompilationLevel c comp_362 + m ()Lnet/minecraft/server/WorldLoader$PackConfig; packConfig a comp_634 + m ()Lnet/minecraft/commands/Commands$CommandSelection; commandSelection b comp_361 + m ()I functionCompilationLevel c comp_362 + m (Lnet/minecraft/server/WorldLoader$PackConfig;Lnet/minecraft/commands/Commands$CommandSelection;I)V +c net/minecraft/server/WorldLoader$PackConfig alo$d net/minecraft/class_7237$class_7238 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository a comp_635 + f Lnet/minecraft/world/level/WorldDataConfiguration; initialDataConfig b comp_636 + f Z safeMode c comp_637 + f Z initMode d comp_993 + m ()Lcom/mojang/datafixers/util/Pair; createResourceManager a method_42099 + m ()Lnet/minecraft/server/packs/repository/PackRepository; packRepository b comp_635 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; initialDataConfig c comp_636 + m ()Z safeMode d comp_637 + m ()Z initMode e comp_993 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;ZZ)V +c net/minecraft/server/WorldLoader$ResultFactory alo$e net/minecraft/class_7237$class_7239 +c net/minecraft/server/WorldLoader$WorldDataSupplier alo$f net/minecraft/class_7237$class_6907 +c net/minecraft/server/WorldStem alp net/minecraft/class_6904 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_356 + f Lnet/minecraft/server/ReloadableServerResources; dataPackResources b comp_357 + f Lnet/minecraft/core/LayeredRegistryAccess; registries c comp_358 + f Lnet/minecraft/world/level/storage/WorldData; worldData d comp_359 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_356 + m ()Lnet/minecraft/server/ReloadableServerResources; dataPackResources b comp_357 + m ()Lnet/minecraft/core/LayeredRegistryAccess; registries c comp_358 + m ()Lnet/minecraft/world/level/storage/WorldData; worldData d comp_359 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator alq net/minecraft/class_8005 + f I VISIBILITY_DEPTH a field_41737 + m (Lnet/minecraft/advancements/Advancement;Z)Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; evaluateVisibilityRule a method_48032 + p 0 advancement + p 1 alwaysShow + m (Lnet/minecraft/advancements/AdvancementNode;Lit/unimi/dsi/fastutil/Stack;Ljava/util/function/Predicate;Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output;)Z evaluateVisibility a method_48030 + p 0 advancement + p 1 visibilityRules + p 2 predicate + p 3 output + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/function/Predicate;Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output;)V evaluateVisibility a method_48031 + p 0 advancement + p 1 predicate + p 2 output + m (Lit/unimi/dsi/fastutil/Stack;)Z evaluateVisiblityForUnfinishedNode a method_48033 + p 0 visibilityRules + m ()V +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output alq$a net/minecraft/class_8005$class_8006 +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule alq$b net/minecraft/class_8005$class_8007 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; SHOW a field_41738 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; HIDE b field_41739 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; NO_CHANGE c field_41740 + f [Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; $VALUES d field_41741 + m ()[Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; $values a method_48034 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/advancements/package-info alr net/minecraft/class_8008 +c net/minecraft/server/bossevents/CustomBossEvent als net/minecraft/class_3002 + f Lnet/minecraft/resources/ResourceLocation; id h field_13441 + f Ljava/util/Set; players i field_13440 + f I value j field_13443 + f I max k field_13442 + m ()Lnet/minecraft/resources/ResourceLocation; getTextId a method_12959 + m (I)V setValue a method_12954 + p 1 value + m (Ljava/util/Collection;)Z setPlayers a method_12962 + p 1 serverPlayerList + m (Ljava/util/UUID;)V addOfflinePlayer a method_12964 + p 1 player + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_12963 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/server/bossevents/CustomBossEvent; load a method_12966 + p 0 tag + p 1 id + p 2 levelRegistry + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_12958 a method_12958 + m (I)V setMax b method_12956 + p 1 max + m ()I getValue c method_12955 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerConnect c method_12957 + p 1 player + m ()I getMax d method_12960 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerDisconnect d method_12961 + p 1 player + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_12965 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)V + p 1 id + p 2 name +c net/minecraft/server/bossevents/CustomBossEvents alt net/minecraft/class_3004 + f Ljava/util/Map; events a field_13447 + m ()Ljava/util/Collection; getIds a method_12968 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/bossevents/CustomBossEvent; get a method_12971 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/bossevents/CustomBossEvent; create a method_12970 + p 1 id + p 2 name + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)V remove a method_12973 + p 1 bossbar + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerConnect a method_12975 + p 1 player + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_12974 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V load a method_12972 + p 1 tag + p 2 levelRegistry + m ()Ljava/util/Collection; getEvents b method_12969 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerDisconnect b method_12976 + p 1 player + m ()V +c net/minecraft/server/bossevents/package-info alu net/minecraft/class_6325 +c net/minecraft/server/chase/ChaseClient alv net/minecraft/class_6630 + f Lorg/slf4j/Logger; LOGGER a field_34983 + f I RECONNECT_INTERVAL_SECONDS b field_34984 + f Ljava/lang/String; serverHost c field_34985 + f I serverPort d field_34986 + f Lnet/minecraft/server/MinecraftServer; server e field_34987 + f Z wantsToRun f field_34988 + f Ljava/net/Socket; socket g field_34989 + f Ljava/lang/Thread; thread h field_34990 + m ()V start a method_38755 + m (Lnet/minecraft/server/chase/ChaseClient$TeleportTarget;)V method_38758 a method_38758 + m (Ljava/lang/String;)V handleMessage a method_38756 + p 1 message + m (Ljava/util/Scanner;)V handleTeleport a method_38757 + p 1 scanner + m ()V stop b method_38759 + m (Ljava/lang/String;)V executeCommand b method_38760 + p 1 command + m (Ljava/util/Scanner;)Ljava/util/Optional; parseTarget b method_38761 + p 1 scanner + m ()V run c method_38762 + m (Ljava/lang/String;)V method_38763 c method_38763 + m (Ljava/lang/String;ILnet/minecraft/server/MinecraftServer;)V + p 1 serverHost + p 2 serverPort + p 3 server + m ()V +c net/minecraft/server/chase/ChaseClient$TeleportTarget alv$a net/minecraft/class_6630$class_6631 + f Lnet/minecraft/resources/ResourceKey; level a comp_138 + f Lnet/minecraft/world/phys/Vec3; pos b comp_139 + f Lnet/minecraft/world/phys/Vec2; rot c comp_140 + m ()Lnet/minecraft/resources/ResourceKey; level a comp_138 + m ()Lnet/minecraft/world/phys/Vec3; pos b comp_139 + m ()Lnet/minecraft/world/phys/Vec2; rot c comp_140 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;)V +c net/minecraft/server/chase/ChaseServer alw net/minecraft/class_6632 + f Lorg/slf4j/Logger; LOGGER a field_34991 + f Ljava/lang/String; serverBindAddress b field_34992 + f I serverPort c field_34993 + f Lnet/minecraft/server/players/PlayerList; playerList d field_34994 + f I broadcastIntervalMs e field_34995 + f Z wantsToRun f field_34996 + f Ljava/net/ServerSocket; serverSocket g field_34997 + f Ljava/util/concurrent/CopyOnWriteArrayList; clientSockets h field_34998 + m ()V start a method_38764 + m (Ljava/net/Socket;[B)V method_38765 a method_38765 + m ()V stop b method_38766 + m ()V runSender c method_38767 + m ()V runAcceptor d method_38768 + m ()Lnet/minecraft/server/chase/ChaseServer$PlayerPosition; getPlayerPosition e method_38959 + m (Ljava/lang/String;ILnet/minecraft/server/players/PlayerList;I)V + p 1 serverBindAddress + p 2 serverPort + p 3 playerList + p 4 broadcastIntervalMs + m ()V +c net/minecraft/server/chase/ChaseServer$PlayerPosition alw$a net/minecraft/class_6632$class_6668 + f Ljava/lang/String; dimensionName a comp_160 + f D x b comp_161 + f D y c comp_162 + f D z d comp_163 + f F yRot e comp_164 + f F xRot f comp_165 + m ()Ljava/lang/String; dimensionName a comp_160 + m ()D x b comp_161 + m ()D y c comp_162 + m ()D z d comp_163 + m ()F yRot e comp_164 + m ()F xRot f comp_165 + m ()Ljava/lang/String; format g method_38960 + m (Ljava/lang/String;DDDFF)V +c net/minecraft/server/chase/package-info alx net/minecraft/class_6633 +c net/minecraft/server/commands/AdvancementCommands aly net/minecraft/class_3008 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_ACTION_PERFORMED a field_47182 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_CRITERION_NOT_FOUND b field_47183 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_ADVANCEMENTS c field_13453 + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/List;)V addChildren a method_12990 + p 0 node + p 1 output + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/lang/String;Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51895 a method_51895 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51896 a method_51896 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_12980 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12995 a method_12995 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/server/commands/AdvancementCommands$Mode;)Ljava/util/List; getAdvancements a method_12996 + p 0 context + p 1 advancement + p 2 mode + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12992 a method_12992 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_12984 a method_12984 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/commands/AdvancementCommands$Action;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)I performCriterion a method_12981 + p 0 source + p 1 targets + p 2 action + p 3 advancement + p 4 criterionName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;)I perform a method_12988 + c Performs the given action on each advancement in the list, for each player.\n\n@return The number of affected advancements across all players. + p 0 source + p 1 targets + p 2 action + p 3 advancements + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54923 a method_54923 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54924 a method_54924 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/lang/String;Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51897 b method_51897 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51898 b method_51898 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12978 b method_12978 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12991 b method_12991 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51899 c method_51899 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12983 c method_12983 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12987 c method_12987 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51900 d method_51900 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12989 d method_12989 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12982 e method_12982 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12979 f method_12979 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12998 g method_12998 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12993 h method_12993 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12986 i method_12986 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12997 j method_12997 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12994 k method_12994 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12985 l method_12985 + m ()V + m ()V +c net/minecraft/server/commands/AdvancementCommands$Action aly$a net/minecraft/class_3008$class_3009 + f Lnet/minecraft/server/commands/AdvancementCommands$Action; GRANT a field_13457 + f Lnet/minecraft/server/commands/AdvancementCommands$Action; REVOKE b field_13456 + f Ljava/lang/String; key c field_13454 + f [Lnet/minecraft/server/commands/AdvancementCommands$Action; $VALUES d field_13455 + m ()Ljava/lang/String; getKey a method_13001 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/advancements/AdvancementHolder;)Z perform a method_13002 + p 1 player + p 2 advancement + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z performCriterion a method_13000 + p 1 player + p 2 advancement + p 3 criterionName + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Iterable;)I perform a method_12999 + c Applies this action to all the given advancements.\n\n@return The number of players affected. + p 1 player + p 2 advancements + m ()[Lnet/minecraft/server/commands/AdvancementCommands$Action; $values b method_36964 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 key + m ()V +c net/minecraft/server/commands/AdvancementCommands$Action$1 aly$a$1 net/minecraft/class_3008$class_3009$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/server/commands/AdvancementCommands$Action$2 aly$a$2 net/minecraft/class_3008$class_3009$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/server/commands/AdvancementCommands$Mode aly$b net/minecraft/class_3008$class_3010 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; ONLY a field_13464 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; THROUGH b field_13462 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; FROM c field_13458 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; UNTIL d field_13465 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; EVERYTHING e field_13461 + f Z parents f field_13460 + f Z children g field_13459 + f [Lnet/minecraft/server/commands/AdvancementCommands$Mode; $VALUES h field_13463 + m ()[Lnet/minecraft/server/commands/AdvancementCommands$Mode; $values a method_36965 + m (Ljava/lang/String;IZZ)V + p 3 parents + p 4 children + m ()V +c net/minecraft/server/commands/AttributeCommand alz net/minecraft/class_5252 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_LIVING_ENTITY a field_24376 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NO_SUCH_ATTRIBUTE b field_24377 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_NO_SUCH_MODIFIER c field_24378 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_MODIFIER_ALREADY_PRESENT d field_24379 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51902 a method_51902 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51903 a method_51903 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; getLivingEntity a method_27733 + p 0 target + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttributeInstance a method_27734 + p 0 entity + p 1 attribute + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_27735 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27736 a method_27736 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_27738 a method_27738 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I getAttributeValue a method_27739 + p 0 source + p 1 entity + p 2 attribute + p 3 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)I removeModifier a method_27740 + p 0 source + p 1 entity + p 2 attribute + p 3 id + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;D)I getAttributeModifier a method_27741 + p 0 source + p 1 entity + p 2 attribute + p 3 id + p 4 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)I addModifier a method_27742 + p 0 source + p 1 entity + p 2 attribute + p 3 id + p 4 amount + p 6 operation + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27743 a method_27743 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27744 a method_27744 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27745 a method_27745 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; getAttributeDescription a method_45144 + p 0 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51901 a method_51901 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51905 b method_51905 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/LivingEntity; getEntityWithAttribute b method_27746 + p 0 entity + p 1 attribute + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27747 b method_27747 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I getAttributeBase b method_27748 + p 0 source + p 1 entity + p 2 attribute + p 3 scale + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27749 b method_27749 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51904 b method_51904 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27750 c method_27750 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I setAttributeBase c method_27751 + p 0 source + p 1 entity + p 2 attribute + p 3 value + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51906 c method_51906 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27752 d method_27752 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27753 e method_27753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27754 f method_27754 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27755 g method_27755 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27756 h method_27756 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27757 i method_27757 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27758 j method_27758 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27759 k method_27759 + m ()V + m ()V +c net/minecraft/server/commands/BanIpCommands ama net/minecraft/class_3012 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_IP a field_13468 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_BANNED b field_13467 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13008 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13010 a method_13010 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13011 a method_13011 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I banIpOrName a method_13009 + p 0 source + p 1 username + p 2 reason + m (Ljava/lang/String;Lnet/minecraft/server/players/IpBanListEntry;)Lnet/minecraft/network/chat/Component; method_51907 a method_51907 + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_51908 a method_51908 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13006 b method_13006 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I banIp b method_13007 + p 0 source + p 1 ip + p 2 reason + m ()V + m ()V +c net/minecraft/server/commands/BanListCommands amb net/minecraft/class_3014 + m ()Lnet/minecraft/network/chat/Component; method_51909 a method_51909 + m (Lnet/minecraft/server/players/BanListEntry;)Lnet/minecraft/network/chat/Component; method_51910 a method_51910 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13014 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13017 a method_13017 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13018 a method_13018 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I showList a method_13015 + p 0 source + p 1 bannedPlayerList + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51911 a method_51911 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13013 b method_13013 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13016 c method_13016 + m ()V +c net/minecraft/server/commands/BanPlayerCommands amc net/minecraft/class_3016 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_BANNED a field_13473 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/players/UserBanListEntry;)Lnet/minecraft/network/chat/Component; method_51912 a method_51912 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13021 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13023 a method_13023 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13024 a method_13024 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)I banPlayers a method_13022 + p 0 source + p 1 gameProfiles + p 2 reason + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13020 b method_13020 + m ()V + m ()V +c net/minecraft/server/commands/BossBarCommands amd net/minecraft/class_3019 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_BOSS_BAR a field_13482 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_EXISTS b field_13478 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_DOESNT_EXIST c field_13486 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYER_CHANGE d field_13483 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_NAME_CHANGE e field_13476 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_COLOR_CHANGE f field_13480 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_STYLE_CHANGE g field_13481 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_VALUE_CHANGE h field_13477 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_MAX_CHANGE i field_13484 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_HIDDEN j field_13479 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_VISIBLE k field_13485 + m ()Lnet/minecraft/network/chat/Component; method_51913 a method_51913 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51914 a method_51914 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;I)Lnet/minecraft/network/chat/Component; method_51915 a method_51915 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51916 a method_51916 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13053 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/bossevents/CustomBossEvent; getBossBar a method_13054 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13044 a method_13044 + m (Lnet/minecraft/commands/CommandSourceStack;)I listBars a method_13045 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)I createBar a method_13049 + p 0 source + p 1 id + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getValue a method_13065 + p 0 source + p 1 bossbar + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;I)I setValue a method_13036 + p 0 source + p 1 bossbar + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/world/BossEvent$BossBarColor;)I setColor a method_13028 + p 0 source + p 1 bossbar + p 2 color + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/world/BossEvent$BossBarOverlay;)I setStyle a method_13050 + p 0 source + p 1 bossbar + p 2 style + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Ljava/util/Collection;)I setPlayers a method_13031 + p 0 source + p 1 bossbar + p 2 players + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/network/chat/Component;)I setName a method_13071 + p 0 source + p 1 bossbar + p 2 name + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Z)I setVisible a method_13068 + p 0 source + p 1 bossbar + p 2 visible + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13059 a method_13059 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51917 a method_51917 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51918 b method_51918 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;I)Lnet/minecraft/network/chat/Component; method_51919 b method_51919 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13029 b method_13029 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13035 b method_13035 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getMax b method_13056 + p 0 source + p 1 bossbar + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;I)I setMax b method_13066 + p 0 source + p 1 bossbar + p 2 max + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13063 b method_13063 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51920 c method_51920 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13033 c method_13033 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getVisible c method_13041 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51921 d method_51921 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13039 d method_13039 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getPlayers d method_13030 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51922 e method_51922 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13057 e method_13057 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I removeBar e method_13069 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51923 f method_51923 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13051 f method_13051 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51924 g method_51924 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13072 g method_13072 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51925 h method_51925 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13067 h method_13067 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51926 i method_51926 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13037 i method_13037 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51927 j method_51927 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13047 j method_13047 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51928 k method_51928 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13043 k method_13043 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51929 l method_51929 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13060 l method_13060 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51930 m method_51930 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13052 m method_13052 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51931 n method_51931 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13058 n method_13058 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13040 o method_13040 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13046 p method_13046 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13032 q method_13032 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13034 r method_13034 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13062 s method_13062 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13055 t method_13055 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13061 u method_13061 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13048 v method_13048 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13042 w method_13042 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13038 x method_13038 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13070 y method_13070 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13064 z method_13064 + m ()V + m ()V +c net/minecraft/server/commands/ChaseCommand ame net/minecraft/class_6634 + f Lcom/google/common/collect/BiMap; DIMENSION_NAMES a field_34999 + f Lorg/slf4j/Logger; LOGGER b field_44981 + f Ljava/lang/String; DEFAULT_CONNECT_HOST c field_35000 + f Ljava/lang/String; DEFAULT_BIND_ADDRESS d field_35001 + f I DEFAULT_PORT e field_35002 + f I BROADCAST_INTERVAL_MS f field_35003 + f Lnet/minecraft/server/chase/ChaseServer; chaseServer g field_35004 + f Lnet/minecraft/server/chase/ChaseClient; chaseClient h field_35005 + m ()Lnet/minecraft/network/chat/Component; method_51932 a method_51932 + m (I)Lnet/minecraft/network/chat/Component; method_51933 a method_51933 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_38770 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38771 a method_38771 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop a method_38772 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;I)I lead a method_38773 + p 0 source + p 1 bindAddress + p 2 port + m (Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_51934 a method_51934 + m ()Lnet/minecraft/network/chat/Component; method_51935 b method_51935 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38774 b method_38774 + m (Lnet/minecraft/commands/CommandSourceStack;)Z alreadyRunning b method_38775 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;I)I follow b method_38776 + p 0 source + p 1 host + p 2 port + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38777 c method_38777 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38778 d method_38778 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38779 e method_38779 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38780 f method_38780 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38781 g method_38781 + m ()V + m ()V +c net/minecraft/server/commands/ClearInventoryCommands amf net/minecraft/class_3020 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SINGLE a field_13487 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_MULTIPLE b field_13488 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51936 a method_51936 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13076 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13080 a method_13080 + m (Lnet/minecraft/world/item/ItemStack;)Z method_13081 a method_13081 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13082 a method_13082 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/function/Predicate;)I clearUnlimited a method_58032 + p 0 source + p 1 targets + p 2 filter + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/function/Predicate;I)I clearInventory a method_13077 + p 0 source + p 1 targetPlayers + p 2 itemPredicate + p 3 maxCount + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13079 a method_13079 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51937 b method_51937 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13073 b method_13073 + m (Lnet/minecraft/world/item/ItemStack;)Z method_13083 b method_13083 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13075 b method_13075 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51938 c method_51938 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13078 c method_13078 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51939 d method_51939 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13074 d method_13074 + m ()V + m ()V +c net/minecraft/server/commands/CloneCommands amg net/minecraft/class_3023 + f Ljava/util/function/Predicate; FILTER_AIR a field_13490 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OVERLAP b field_13493 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE c field_13491 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED d field_13492 + m (I)Lnet/minecraft/network/chat/Component; method_51940 a method_51940 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrapWithCloneMode a method_48035 + p 0 beginGetter + p 1 endGetter + p 2 targetGetter + p 3 filterGetter + p 4 argumentBuilder + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48036 a method_48036 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48037 a method_48037 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48038 a method_48038 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13089 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48039 a method_48039 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; getLoadedDimensionAndPosition a method_48040 + p 0 context + p 1 level + p 2 name + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48041 a method_48041 + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;)Lcom/mojang/brigadier/builder/ArgumentBuilder; beginEndDestinationAndModeSuffix a method_48042 + p 0 buildContext + p 1 levelGetter + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;)Lcom/mojang/brigadier/builder/ArgumentBuilder; destinationAndModeSuffix a method_48043 + p 0 buildContext + p 1 sourceLevelGetter + p 2 destinationLevelGetter + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13094 a method_13094 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Ljava/util/function/Predicate;Lnet/minecraft/server/commands/CloneCommands$Mode;)I clone a method_13090 + p 0 source + p 1 begin + p 2 end + p 3 target + p 4 filter + p 5 mode + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13099 a method_13099 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48044 b method_48044 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48045 b method_48045 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48046 b method_48046 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48047 b method_48047 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48048 b method_48048 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48049 c method_48049 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48050 c method_48050 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48051 c method_48051 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48052 c method_48052 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48053 c method_48053 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48054 d method_48054 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48055 d method_48055 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13096 d method_13096 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48056 e method_48056 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48057 f method_48057 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48058 g method_48058 + m ()V + m ()V +c net/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo amg$a net/minecraft/class_3023$class_9450 + f Lnet/minecraft/nbt/CompoundTag; tag a comp_2537 + f Lnet/minecraft/core/component/DataComponentMap; components b comp_2538 + m ()Lnet/minecraft/nbt/CompoundTag; tag a comp_2537 + m ()Lnet/minecraft/core/component/DataComponentMap; components b comp_2538 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/server/commands/CloneCommands$CloneBlockInfo amg$b net/minecraft/class_3023$class_3024 + f Lnet/minecraft/core/BlockPos; pos a comp_2539 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_2540 + f Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo; blockEntityInfo c comp_2541 + m ()Lnet/minecraft/core/BlockPos; pos a comp_2539 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_2540 + m ()Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo; blockEntityInfo c comp_2541 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo;)V +c net/minecraft/server/commands/CloneCommands$CommandFunction amg$c net/minecraft/class_3023$class_8009 +c net/minecraft/server/commands/CloneCommands$DimensionAndPosition amg$d net/minecraft/class_3023$class_8010 + f Lnet/minecraft/server/level/ServerLevel; dimension a comp_1185 + f Lnet/minecraft/core/BlockPos; position b comp_1186 + m ()Lnet/minecraft/server/level/ServerLevel; dimension a comp_1185 + m ()Lnet/minecraft/core/BlockPos; position b comp_1186 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/server/commands/CloneCommands$Mode amg$e net/minecraft/class_3023$class_3025 + f Lnet/minecraft/server/commands/CloneCommands$Mode; FORCE a field_13497 + f Lnet/minecraft/server/commands/CloneCommands$Mode; MOVE b field_13500 + f Lnet/minecraft/server/commands/CloneCommands$Mode; NORMAL c field_13499 + f Z canOverlap d field_13498 + f [Lnet/minecraft/server/commands/CloneCommands$Mode; $VALUES e field_13501 + m ()Z canOverlap a method_13109 + m ()[Lnet/minecraft/server/commands/CloneCommands$Mode; $values b method_36966 + m (Ljava/lang/String;IZ)V + p 3 canOverlap + m ()V +c net/minecraft/server/commands/DamageCommand amh net/minecraft/class_8102 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVULNERABLE a field_42238 + m (FLnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51941 a method_51941 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_48748 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48749 a method_48749 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48750 a method_48750 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)I damage a method_48751 + p 0 source + p 1 target + p 2 amount + p 3 damageType + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48752 b method_48752 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48753 c method_48753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48754 d method_48754 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48755 e method_48755 + m ()V + m ()V +c net/minecraft/server/commands/DataPackCommand ami net/minecraft/class_3027 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PACK a field_13503 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_PACK_ALREADY_ENABLED b field_13504 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_PACK_ALREADY_DISABLED c field_13505 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CANNOT_DISABLE_FEATURE d field_49775 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_PACK_FEATURES_NOT_ENABLED e field_39980 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SELECTED_PACKS f field_13506 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; UNSELECTED_PACKS g field_13502 + m ()Lnet/minecraft/network/chat/Component; method_51942 a method_51942 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_13134 a method_13134 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13125 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13138 a method_13138 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13120 a method_13120 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Z)Lnet/minecraft/server/packs/repository/Pack; getPack a method_13127 + p 0 context + p 1 name + p 2 enabling + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13112 a method_13112 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/server/packs/repository/Pack;)Z method_45145 a method_45145 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPacks a method_13121 + c Sends a list of both enabled and available packs to the user.\n\n@return The total number of packs. + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/packs/repository/Pack;)I disablePack a method_13140 + c Disables the given pack.\n\n@return The number of packs that are loaded after this operation. + p 0 source + p 1 pack + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/packs/repository/Pack;Lnet/minecraft/server/commands/DataPackCommand$Inserter;)I enablePack a method_13114 + c Enables the given pack.\n\n@return The number of packs that are loaded after this operation. + p 0 source + p 1 pack + p 2 priorityCallback + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58142 a method_58142 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45146 a method_45146 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51943 a method_51943 + m (Ljava/util/Collection;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/server/packs/repository/Pack;)Z method_29477 a method_29477 + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29776 a method_29776 + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_51944 a method_51944 + m (Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13139 a method_13139 + m ()Lnet/minecraft/network/chat/Component; method_51945 b method_51945 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_13132 b method_13132 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13111 b method_13111 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13136 b method_13136 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13133 b method_13133 + m (Lnet/minecraft/commands/CommandSourceStack;)I listAvailablePacks b method_13128 + c Sends a list of available packs to the user.\n\n@return The number of available packs. + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13131 b method_13131 + m (Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13122 b method_13122 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_51946 c method_51946 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13115 c method_13115 + m (Lnet/minecraft/commands/CommandSourceStack;)I listEnabledPacks c method_13126 + c Sends a list of enabled packs to the user.\n\n@return The number of enabled packs. + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13135 c method_13135 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_51947 d method_51947 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13118 d method_13118 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13119 d method_13119 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13117 d method_13117 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13130 e method_13130 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13123 f method_13123 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13141 g method_13141 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13137 h method_13137 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13116 i method_13116 + m ()V + m ()V +c net/minecraft/server/commands/DataPackCommand$Inserter ami$a net/minecraft/class_3027$class_3028 +c net/minecraft/server/commands/DeOpCommands amj net/minecraft/class_3030 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_OP a field_13507 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13143 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13146 a method_13146 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13145 a method_13145 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13147 a method_13147 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I deopPlayers a method_13144 + p 0 source + p 1 players + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51948 a method_51948 + m ()V + m ()V +c net/minecraft/server/commands/DebugCommand amk net/minecraft/class_3032 + f Lorg/slf4j/Logger; LOGGER a field_20283 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_RUNNING b field_13597 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_RUNNING c field_13596 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_RECURSIVE_TRACES d field_46638 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_RETURN_RUN e field_47151 + m ()Lnet/minecraft/network/chat/Component; method_51949 a method_51949 + m (DLnet/minecraft/util/profiling/ProfileResults;D)Lnet/minecraft/network/chat/Component; method_51950 a method_51950 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13156 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13154 a method_13154 + m (Lnet/minecraft/commands/CommandSourceStack;)I start a method_13159 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36353 b method_36353 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop b method_13158 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13161 c method_13161 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13157 d method_13157 + m ()V + m ()V +c net/minecraft/server/commands/DebugCommand$TraceCustomExecutor amk$a net/minecraft/class_3032$class_8829 + m (ILjava/util/Collection;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54253 a method_54253 + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded a method_54256 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Ljava/util/Collection;Lnet/minecraft/commands/CommandSourceStack;ILjava/lang/String;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54257 a method_54257 + m (ILjava/util/Collection;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54258 b method_54258 + m ()V +c net/minecraft/server/commands/DebugCommand$TraceCustomExecutor$1 amk$a$1 net/minecraft/class_3032$class_8829$1 + f Ljava/io/PrintWriter; val$output a field_46639 + f Lnet/minecraft/commands/functions/CommandFunction; val$function b field_46640 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54260 + m (Lnet/minecraft/server/commands/DebugCommand$TraceCustomExecutor;Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandResultCallback;ZLjava/io/PrintWriter;Lnet/minecraft/commands/functions/CommandFunction;)V +c net/minecraft/server/commands/DebugCommand$Tracer amk$b net/minecraft/class_3032$class_6347 + f I INDENT_OFFSET b field_33550 + f Ljava/io/PrintWriter; output c field_33551 + f I lastIndent d field_33552 + f Z waitingForResult e field_33553 + m (I)V indentAndSave a method_36355 + p 1 indent + m (I)V printIndent b method_36356 + p 1 indent + m ()V newLine e method_36357 + m (Ljava/io/PrintWriter;)V + p 1 output +c net/minecraft/server/commands/DebugConfigCommand aml net/minecraft/class_8600 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52298 a method_52298 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_52299 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52300 a method_52300 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_52301 a method_52301 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52302 a method_52302 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;)I config a method_52303 + p 0 source + p 1 target + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/UUID;)I unconfig a method_52304 + p 0 source + p 1 target + m (Lnet/minecraft/server/MinecraftServer;)Ljava/lang/Iterable; getUuidsInConfig a method_52305 + p 0 server + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52306 b method_52306 + m ()V +c net/minecraft/server/commands/DebugMobSpawningCommand amm net/minecraft/class_6326 + m (Lnet/minecraft/world/entity/MobCategory;Lcom/mojang/brigadier/context/CommandContext;)I method_36183 a method_36183 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_36184 + p 0 dispatcher + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36185 a method_36185 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;)I spawnMobs a method_36186 + p 0 source + p 1 mobCategory + p 2 pos + m ()V +c net/minecraft/server/commands/DebugPathCommand amn net/minecraft/class_6327 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_MOB a field_33387 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PATH b field_33388 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE c field_33389 + m ()Lnet/minecraft/network/chat/Component; method_51953 a method_51953 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_36187 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36188 a method_36188 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36189 a method_36189 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)I fillBlocks a method_36190 + p 0 stack + p 1 pos + m ()V + m ()V +c net/minecraft/server/commands/DefaultGameModeCommands amo net/minecraft/class_3035 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13166 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13165 a method_13165 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/network/chat/Component; method_51954 a method_51954 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13168 a method_13168 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/GameType;)I setMode a method_13167 + c Sets the {@link net.minecraft.world.level.GameType} of the player who ran the command. + p 0 commandSource + p 1 gamemode + m ()V +c net/minecraft/server/commands/DifficultyCommand amp net/minecraft/class_3036 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_DIFFICULT a field_13602 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/network/chat/Component; method_51955 a method_51955 + m (Lnet/minecraft/world/Difficulty;Lcom/mojang/brigadier/context/CommandContext;)I method_13174 a method_13174 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13169 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13171 a method_13171 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13172 a method_13172 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/Difficulty;)I setDifficulty a method_13173 + p 0 source + p 1 difficulty + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13170 a method_13170 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/network/chat/Component; method_51956 b method_51956 + m ()V + m ()V +c net/minecraft/server/commands/EffectCommands amq net/minecraft/class_3043 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_GIVE_FAILED a field_13607 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CLEAR_EVERYTHING_FAILED b field_13609 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CLEAR_SPECIFIC_FAILED c field_13608 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51957 a method_51957 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_51958 a method_51958 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13229 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48545 a method_48545 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13235 a method_13235 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I clearEffects a method_13230 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;)I clearEffect a method_13231 + p 0 source + p 1 targets + p 2 effect + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;Ljava/lang/Integer;IZ)I giveEffect a method_13227 + p 0 source + p 1 targets + p 2 effect + p 3 seconds + p 4 amplifier + p 5 showParticles + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51959 a method_51959 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51960 b method_51960 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_51961 b method_51961 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48546 b method_48546 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51962 b method_51962 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48547 c method_48547 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13234 d method_13234 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13225 e method_13225 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13233 f method_13233 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13226 g method_13226 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13232 h method_13232 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13228 i method_13228 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23650 j method_23650 + m ()V + m ()V +c net/minecraft/server/commands/EmoteCommands amr net/minecraft/class_3045 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13237 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13238 a method_13238 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_43645 a method_43645 + m ()V +c net/minecraft/server/commands/EnchantCommand ams net/minecraft/class_3048 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_LIVING_ENTITY a field_13629 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_ITEM b field_13631 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INCOMPATIBLE c field_13633 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_LEVEL_TOO_HIGH d field_13632 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOTHING_HAPPENED e field_13630 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13243 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13245 a method_13245 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13246 a method_13246 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;I)I enchant a method_13241 + p 0 source + p 1 targets + p 2 enchantment + p 3 level + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13244 a method_13244 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13248 a method_13248 + m (Lnet/minecraft/core/Holder;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51963 a method_51963 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13240 b method_13240 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13242 b method_13242 + m (Lnet/minecraft/core/Holder;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51964 b method_51964 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13247 c method_13247 + m ()V + m ()V +c net/minecraft/server/commands/ExecuteCommand amt net/minecraft/class_3050 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_FUNCTION_CONDITION_INSTANTATION_FAILURE a field_46642 + f I MAX_TEST_AREA b field_33390 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE c field_13635 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CONDITIONAL_FAILED d field_13636 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CONDITIONAL_FAILED_COUNT e field_13637 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_PREDICATE f field_20852 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13292 A method_13292 + m ()Lnet/minecraft/network/chat/Component; method_51965 a method_51965 + m (I)Lnet/minecraft/network/chat/Component; method_51966 a method_51966 + m (II)Z method_13302 a method_13302 + m (Lnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13296 a method_13296 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I checkMatchingData a method_13303 + p 0 accessor + p 1 path + m (Lnet/minecraft/server/commands/data/DataAccessor;ZLnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/function/IntFunction;ZI)V method_13294 a method_13294 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13317 a method_13317 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13309 a method_13309 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isChunkLoaded a method_48059 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Z)Ljava/util/OptionalInt; checkRegions a method_13261 + p 0 level + p 1 begin + p 2 end + p 3 destination + p 4 isMasked + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/stream/Stream; method_48060 a method_48060 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13271 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58033 a method_58033 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13275 a method_13275 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/ExecuteCommand$IntBiPredicate;)Z checkScore a method_13263 + p 0 source + p 1 predicate + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22831 a method_22831 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Z checkScore a method_13313 + p 0 context + p 1 bounds + m (Lcom/mojang/brigadier/context/CommandContext;Z)I checkIfRegions a method_13306 + p 0 context + p 1 isMasked + m (Lcom/mojang/brigadier/context/CommandContext;ZZ)Ljava/util/Collection; expect a method_13319 + c If actual and expected match, returns a collection containing only the source player. + p 0 context + p 1 actual + p 2 expected + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addConditional a method_13310 + p 0 commandNode + p 1 builder + p 2 value + p 3 test + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZZ)Lcom/mojang/brigadier/builder/ArgumentBuilder; addIfBlocksConditional a method_13320 + p 0 commandNode + p 1 literal + p 2 isIf + p 3 isMasked + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; createRelationOperations a method_48061 + p 0 node + p 1 argumentBuilder + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;ZLnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addConditionals a method_13298 + p 0 parent + p 1 literal + p 2 isIf + p 3 context + m (Lcom/mojang/brigadier/tree/CommandNode;ZLnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13258 a method_13258 + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13253 a method_13253 + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;Z)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrapStores a method_13289 + p 0 parent + p 1 literal + p 2 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13254 a method_13254 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;ZZ)Lnet/minecraft/commands/CommandSourceStack; storeValue a method_13297 + p 0 source + p 1 bar + p 2 storingValue + p 3 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/function/IntFunction;Z)Lnet/minecraft/commands/CommandSourceStack; storeData a method_13265 + p 0 source + p 1 accessor + p 2 path + p 3 tagConverter + p 4 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)Ljava/util/List; method_48062 a method_48062 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Z)Lnet/minecraft/commands/CommandSourceStack; storeValue a method_13290 + p 0 source + p 1 targets + p 2 objective + p 3 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/inventory/SlotRange;Ljava/util/function/Predicate;)I countItems a method_58034 + p 0 source + p 1 pos + p 2 slotRange + p 3 filter + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/commands/CommandSourceStack; spawnEntityAndRedirect a method_48756 + p 0 source + p 1 entityType + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;)Z checkCustomPredicate a method_22829 + p 0 source + p 1 condition + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Ljava/util/function/Function;Ljava/util/function/IntPredicate;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/ExecuteCommand$CommandGetter;Lnet/minecraft/commands/execution/ChainModifiers;)V scheduleFunctionConditionsAndTest a method_54264 + p 0 originalSource + p 1 sources + p 2 sourceModifier + p 3 successCheck + p 4 contextChain + p 5 arguments + p 6 executionControl + p 7 functions + p 8 chainModifiers + m (Ljava/lang/Iterable;Lnet/minecraft/world/inventory/SlotRange;Ljava/util/function/Predicate;)I countItems a method_58035 + p 0 targets + p 1 slotRange + p 2 filter + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13312 a method_13312 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54263 a method_54263 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Objective;ZZI)V method_13260 a method_13260 + m (Ljava/util/List;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;)V method_54852 a method_54852 + m (Ljava/util/OptionalInt;)Lnet/minecraft/network/chat/Component; method_51967 a method_51967 + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; expandOneToOneEntityRelation a method_48063 + p 0 relation + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48064 a method_48064 + m (Ljava/util/function/IntPredicate;Ljava/util/List;Lnet/minecraft/commands/ExecutionCommandSource;ZI)V method_54853 a method_54853 + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;)Lcom/mojang/brigadier/Command; createNumericConditionalHandler a method_13323 + p 0 isIf + p 1 predicate + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13270 a method_13270 + m (ZLnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13301 a method_13301 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13273 a method_13273 + m (ZZLnet/minecraft/server/bossevents/CustomBossEvent;ZI)V method_13277 a method_13277 + m (ZZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13287 a method_13287 + m ()Lnet/minecraft/network/chat/Component; method_51968 b method_51968 + m (II)Z method_13250 b method_13250 + m (Lnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13305 b method_13305 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13311 b method_13311 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48332 b method_48332 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58036 b method_58036 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13307 b method_13307 + m (Lcom/mojang/brigadier/context/CommandContext;Z)I checkUnlessRegions b method_13304 + p 0 context + p 1 isMasked + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13255 b method_13255 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13316 b method_13316 + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; expandOneToManyEntityRelation b method_48066 + p 0 relation + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48067 b method_48067 + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13267 b method_13267 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13315 b method_13315 + m ()Lnet/minecraft/network/chat/Component; method_51969 c method_51969 + m (II)Z method_13299 c method_13299 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13264 c method_13264 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48065 c method_48065 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_22830 c method_22830 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13276 c method_13276 + m (Lcom/mojang/brigadier/context/CommandContext;Z)Ljava/util/OptionalInt; checkRegions c method_13272 + p 0 context + p 1 isMasked + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58037 c method_58037 + m (II)Z method_13257 d method_13257 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13251 d method_13251 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48068 d method_48068 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13321 d method_13321 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13318 d method_13318 + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58038 d method_58038 + m (II)Z method_55338 e method_55338 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13256 e method_13256 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48069 e method_48069 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13262 e method_13262 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13283 e method_13283 + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13300 e method_13300 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13284 f method_13284 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48071 f method_48071 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13266 f method_13266 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13324 f method_13324 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13285 f method_13285 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48072 g method_48072 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13249 g method_13249 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13322 g method_13322 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48073 h method_48073 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13288 h method_13288 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13269 h method_13269 + m (Lnet/minecraft/world/entity/Entity;)Z method_48074 i method_48074 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13282 i method_13282 + m (Lnet/minecraft/world/entity/Entity;)Z method_48075 j method_48075 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13280 j method_13280 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48076 k method_48076 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48070 l method_48070 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_47527 m method_47527 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13274 n method_13274 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_48757 o method_48757 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13286 p method_13286 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13259 q method_13259 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13252 r method_13252 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13268 s method_13268 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13291 t method_13291 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13293 u method_13293 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13308 v method_13308 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_49419 w method_49419 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13281 x method_13281 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13314 y method_13314 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13295 z method_13295 + m ()V + m ()V +c net/minecraft/server/commands/ExecuteCommand$CommandGetter amt$a net/minecraft/class_3050$class_8830 +c net/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate amt$b net/minecraft/class_3050$class_3051 +c net/minecraft/server/commands/ExecuteCommand$CommandPredicate amt$c net/minecraft/class_3050$class_3052 +c net/minecraft/server/commands/ExecuteCommand$ExecuteIfFunctionCustomModifier amt$d net/minecraft/class_3050$class_8831 + f Ljava/util/function/IntPredicate; check a field_46643 + m (I)Z method_54268 a method_54268 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_54269 a method_54269 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54854 + p 1 originalSource + p 2 soruces + p 3 contextChain + p 4 chainModifiers + p 5 executionControl + m (I)Z method_54271 b method_54271 + m (Z)V + p 1 invert +c net/minecraft/server/commands/ExecuteCommand$IntBiPredicate amt$e net/minecraft/class_3050$class_9007 +c net/minecraft/server/commands/ExperienceCommand amu net/minecraft/class_3054 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SET_POINTS_INVALID a field_13638 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51970 a method_51970 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;Lnet/minecraft/server/level/ServerPlayer;I)Lnet/minecraft/network/chat/Component; method_51971 a method_51971 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13330 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13338 a method_13338 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13334 a method_13334 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/commands/ExperienceCommand$Type;)I queryExperience a method_13328 + p 0 source + p 1 player + p 2 type + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/server/commands/ExperienceCommand$Type;)I addExperience a method_13326 + p 0 source + p 1 targets + p 2 amount + p 3 type + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51972 b method_51972 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13327 b method_13327 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13335 b method_13335 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/server/commands/ExperienceCommand$Type;)I setExperience b method_13333 + p 0 source + p 1 targets + p 2 amount + p 3 type + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51973 c method_51973 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13332 c method_13332 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51974 d method_51974 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13336 d method_13336 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13331 e method_13331 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13329 f method_13329 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13339 g method_13339 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13337 h method_13337 + m ()V + m ()V +c net/minecraft/server/commands/ExperienceCommand$Type amu$a net/minecraft/class_3054$class_3055 + f Lnet/minecraft/server/commands/ExperienceCommand$Type; POINTS a field_13644 + f Lnet/minecraft/server/commands/ExperienceCommand$Type; LEVELS b field_13641 + f Ljava/util/function/BiConsumer; add c field_13639 + f Ljava/util/function/BiPredicate; set d field_13642 + f Ljava/lang/String; name e field_13643 + f Ljava/util/function/ToIntFunction; query f field_13645 + f [Lnet/minecraft/server/commands/ExperienceCommand$Type; $VALUES g field_13640 + m ()[Lnet/minecraft/server/commands/ExperienceCommand$Type; $values a method_36967 + m (Lnet/minecraft/server/level/ServerPlayer;)I method_13340 a method_13340 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Integer;)Z method_13342 a method_13342 + m (Lnet/minecraft/server/level/ServerPlayer;)I method_13341 b method_13341 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Integer;)Z method_13343 b method_13343 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiConsumer;Ljava/util/function/BiPredicate;Ljava/util/function/ToIntFunction;)V + p 3 name + p 4 add + p 5 set + p 6 query + m ()V +c net/minecraft/server/commands/FillBiomeCommand amv net/minecraft/class_7926 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_LOADED a field_41279 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_VOLUME_TOO_LARGE b field_41281 + m (I)I quantize a method_47528 + p 0 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Lcom/mojang/datafixers/util/Either; fill a method_55339 + p 0 level + p 1 from + p 2 to + p 3 biome + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Ljava/util/function/Predicate;Ljava/util/function/Consumer;)Lcom/mojang/datafixers/util/Either; fill a method_55340 + p 0 level + p 1 from + p 2 to + p 3 biome + p 4 filter + p 5 messageOutput + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_47529 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47818 a method_47818 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/function/Predicate;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/Holder;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_47534 a method_47534 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_47532 a method_47532 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)V method_55341 a method_55341 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;Ljava/util/function/Predicate;)I fill a method_47533 + p 0 source + p 1 from + p 2 to + p 3 biome + p 4 filter + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47536 a method_47536 + m (Ljava/util/function/Supplier;)V method_55343 a method_55343 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; quantize a method_47535 + p 0 pos + m (Lnet/minecraft/core/Holder;)Z method_55342 a method_55342 + m (Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Holder;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/biome/BiomeResolver; makeResolver a method_47531 + p 0 biomeEntries + p 1 chunk + p 2 targetRegion + p 3 replacementBiome + p 4 filter + m (Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/network/chat/Component; method_51975 a method_51975 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47530 b method_47530 + m (Lnet/minecraft/core/Holder;)Z method_47819 b method_47819 + m ()V + m ()V +c net/minecraft/server/commands/FillCommand amw net/minecraft/class_3057 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE a field_13649 + f Lnet/minecraft/commands/arguments/blocks/BlockInput; HOLLOW_CORE b field_13648 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED c field_13650 + m (I)Lnet/minecraft/network/chat/Component; method_51976 a method_51976 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13347 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13355 a method_13355 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13348 a method_13348 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13351 a method_13351 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/commands/FillCommand$Mode;Ljava/util/function/Predicate;)I fillBlocks a method_13354 + p 0 source + p 1 area + p 2 newBlock + p 3 mode + p 4 replacingPredicate + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13352 a method_13352 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13345 b method_13345 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13350 c method_13350 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13353 d method_13353 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13349 e method_13349 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13346 f method_13346 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13356 g method_13356 + m ()V + m ()V +c net/minecraft/server/commands/FillCommand$Mode amw$a net/minecraft/class_3057$class_3058 + f Lnet/minecraft/server/commands/FillCommand$Mode; REPLACE a field_13655 + f Lnet/minecraft/server/commands/FillCommand$Mode; OUTLINE b field_13652 + f Lnet/minecraft/server/commands/FillCommand$Mode; HOLLOW c field_13656 + f Lnet/minecraft/server/commands/FillCommand$Mode; DESTROY d field_13651 + f Lnet/minecraft/server/commands/SetBlockCommand$Filter; filter e field_13654 + f [Lnet/minecraft/server/commands/FillCommand$Mode; $VALUES f field_13653 + m ()[Lnet/minecraft/server/commands/FillCommand$Mode; $values a method_36968 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13360 a method_13360 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13361 b method_13361 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13359 c method_13359 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13358 d method_13358 + m (Ljava/lang/String;ILnet/minecraft/server/commands/SetBlockCommand$Filter;)V + p 3 filter + m ()V +c net/minecraft/server/commands/ForceLoadCommand amx net/minecraft/class_3060 + f I MAX_CHUNK_LIMIT a field_33392 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TOO_MANY_CHUNKS b field_13657 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NOT_TICKING c field_13659 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALL_ADDED d field_13658 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NONE_REMOVED e field_13660 + m (ILnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51977 a method_51977 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51978 a method_51978 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51979 a method_51979 + m (Lnet/minecraft/server/level/ServerLevel;J)V method_13377 a method_13377 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13365 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13375 a method_13375 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51980 a method_51980 + m (Lnet/minecraft/commands/CommandSourceStack;)I listForceLoad a method_13373 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ColumnPos;)I queryForceLoad a method_13374 + p 0 source + p 1 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ColumnPos;Lnet/minecraft/server/level/ColumnPos;Z)I changeForceLoad a method_13372 + p 0 source + p 1 from + p 2 to + p 3 add + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13369 a method_13369 + m (ZILnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/chat/Component; method_51982 a method_51982 + m (ZLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51981 a method_51981 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13363 b method_13363 + m (Lnet/minecraft/commands/CommandSourceStack;)I removeAll b method_13366 + p 0 source + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13376 b method_13376 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13368 c method_13368 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13371 c method_13371 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13370 d method_13370 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13367 e method_13367 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13364 f method_13364 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13378 g method_13378 + m ()V + m ()V +c net/minecraft/server/commands/FunctionCommand amy net/minecraft/class_3062 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_FUNCTION_INSTANTATION_FAILURE a field_46645 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_FUNCTION b field_13662 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ARGUMENT_NOT_COMPOUND c field_44982 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_FUNCTIONS d field_46644 + f Lnet/minecraft/server/commands/FunctionCommand$Callbacks; FULL_CONTEXT_CALLBACKS e field_46646 + m (Lnet/minecraft/server/commands/FunctionCommand$1Accumulator;Lnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54855 a method_54855 + m (Lnet/minecraft/server/commands/FunctionCommand$1Accumulator;ZI)V method_54856 a method_54856 + m (Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;ZI)V method_54857 a method_54857 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_52309 a method_52309 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13380 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13382 a method_13382 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/CommandSourceStack; modifySenderForExecution a method_54272 + p 0 source + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/CommandResultCallback; decorateOutputIfNeeded a method_54858 + p 0 source + p 1 callbacks + p 2 function + p 3 resultCallback + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/nbt/CompoundTag; getArgumentTag a method_52313 + p 0 nbtPath + p 1 dataAccessor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54273 a method_54273 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54274 a method_54274 + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;)V queueFunctionsAsReturn a method_54859 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 exectutionControl + p 5 callbacks + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/commands/execution/ChainModifiers;)V queueFunctions a method_54275 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 executionControl + p 5 callbacks + p 6 chainModifiers + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/execution/ExecutionControl;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/functions/CommandFunction;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;Z)V instantiateAndQueueFunctions a method_54860 + p 0 arguments + p 1 executionControl + p 2 dispatcher + p 3 source + p 4 function + p 5 functionId + p 6 resultCallback + p 7 returnParentFrame + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13384 b method_13384 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52314 b method_52314 + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;)V queueFunctionsNoReturn b method_54861 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 executionControl + p 5 callbacks + m ()V + m ()V +c net/minecraft/server/commands/FunctionCommand$1 amy$1 net/minecraft/class_3062$1 + f Lnet/minecraft/server/commands/data/DataCommands$DataProvider; val$provider a field_46647 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)V +c net/minecraft/server/commands/FunctionCommand$2 amy$2 net/minecraft/class_3062$2 + f Lnet/minecraft/server/commands/data/DataCommands$DataProvider; val$provider a field_46648 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)V +c net/minecraft/server/commands/FunctionCommand$3 amy$3 net/minecraft/class_3062$3 + m ()V +c net/minecraft/server/commands/FunctionCommand$4 amy$4 net/minecraft/class_3062$4 + m ()V +c net/minecraft/server/commands/FunctionCommand$5 amy$5 net/minecraft/class_3062$5 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/network/chat/Component; method_54278 a method_54278 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;I)V signalResult a method_54279 + m ()V +c net/minecraft/server/commands/FunctionCommand$1Accumulator amy$a net/minecraft/class_3062$class_8932 + f Z anyResult a field_47152 + f I sum b field_47153 + m (I)V add a method_54862 + p 1 result + m ()V +c net/minecraft/server/commands/FunctionCommand$Callbacks amy$b net/minecraft/class_3062$class_8832 + m (Ljava/lang/Object;Lnet/minecraft/resources/ResourceLocation;I)V signalResult a method_54280 + p 1 source + p 2 function + p 3 commands +c net/minecraft/server/commands/FunctionCommand$FunctionCustomExecutor amy$c net/minecraft/class_3062$class_8833 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/nbt/CompoundTag; arguments a method_54277 + p 1 context + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded a method_54283 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_54284 a method_54284 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_54285 b method_54285 + m ()V +c net/minecraft/server/commands/GameModeCommand amz net/minecraft/class_3064 + f I PERMISSION_LEVEL a field_33393 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_51987 a method_51987 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13388 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13386 a method_13386 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/world/level/GameType;)I setMode a method_13387 + p 0 source + p 1 players + p 2 gameType + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13389 a method_13389 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/GameType;)V logGamemodeChange a method_13390 + p 0 source + p 1 player + p 2 gameType + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_51988 a method_51988 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13391 b method_13391 + m ()V +c net/minecraft/server/commands/GameRuleCommand ana net/minecraft/class_3065 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13392 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/level/GameRules$Key;)I setRule a method_13394 + p 0 source + p 1 gameRule + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)Lnet/minecraft/network/chat/Component; method_51989 a method_51989 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13393 a method_13393 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/GameRules$Key;)I queryRule a method_13397 + p 0 source + p 1 gameRule + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)Lnet/minecraft/network/chat/Component; method_51990 b method_51990 + m ()V +c net/minecraft/server/commands/GameRuleCommand$1 ana$1 net/minecraft/class_3065$1 + f Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; val$base a field_19419 + m (Lnet/minecraft/world/level/GameRules$Key;Lcom/mojang/brigadier/context/CommandContext;)I method_20797 a method_20797 + m (Lnet/minecraft/world/level/GameRules$Key;Lcom/mojang/brigadier/context/CommandContext;)I method_20798 b method_20798 + m (Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)V +c net/minecraft/server/commands/GiveCommand anb net/minecraft/class_3068 + f I MAX_ALLOWED_ITEMSTACKS a field_33394 + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51991 a method_51991 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13402 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13403 a method_13403 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13404 a method_13404 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/item/ItemInput;Ljava/util/Collection;I)I giveItem a method_13401 + p 0 source + p 1 item + p 2 targets + p 3 count + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51992 b method_51992 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13400 b method_13400 + m ()V +c net/minecraft/server/commands/HelpCommand anc net/minecraft/class_3069 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13665 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13405 + p 0 dispatcher + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13407 a method_13407 + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51993 a method_51993 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51994 a method_51994 + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13406 b method_13406 + m ()V + m ()V +c net/minecraft/server/commands/ItemCommands and net/minecraft/class_5687 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_TARGET_NOT_A_CONTAINER a field_28018 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_SOURCE_NOT_A_CONTAINER b field_28020 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TARGET_INAPPLICABLE_SLOT c field_28019 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SOURCE_INAPPLICABLE_SLOT d field_28021 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TARGET_NO_CHANGES e field_28022 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TARGET_NO_CHANGES_KNOWN_ITEM f field_28023 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_MODIFIER g field_28024 + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/item/ItemStack; getEntityItem a method_32706 + p 0 entity + p 1 slot + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_32707 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32708 a method_32708 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_32709 a method_32709 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_32710 a method_32710 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/util/Collection;I)I entityToEntities a method_32713 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 targets + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/util/Collection;ILnet/minecraft/core/Holder;)I entityToEntities a method_32714 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 targets + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;I)I entityToBlock a method_32711 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I entityToBlock a method_32712 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/world/item/ItemStack;)I setEntityItem a method_32724 + p 0 source + p 1 targets + p 2 slot + p 3 item + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/core/Holder;)I modifyEntityItem a method_32725 + p 0 source + p 1 targets + p 2 sourceSlot + p 3 modifer + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/item/ItemStack; getBlockItem a method_32716 + p 0 source + p 1 pos + p 2 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/item/ItemStack;)I setBlockItem a method_32717 + p 0 source + p 1 pos + p 2 slot + p 3 item + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILjava/util/Collection;I)I blockToEntities a method_32721 + p 0 source + p 1 pos + p 2 sourceSlot + p 3 targets + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILjava/util/Collection;ILnet/minecraft/core/Holder;)I blockToEntities a method_32722 + p 0 source + p 1 pos + p 2 sourceSlot + p 3 targets + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos;I)I blockToBlock a method_32719 + p 0 source + p 1 sourcePos + p 2 sourceSlot + p 3 pos + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I blockToBlock a method_32720 + p 0 source + p 1 sourcePos + p 2 sourceSlot + p 3 pos + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I modifyBlockItem a method_32718 + p 0 source + p 1 pos + p 2 slot + p 3 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType;)Lnet/minecraft/world/Container; getContainer a method_32723 + p 0 source + p 1 pos + p 2 exception + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; applyModifier a method_32715 + p 0 source + p 1 modifier + p 2 stack + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32726 a method_32726 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32727 a method_32727 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32728 a method_32728 + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51996 a method_51996 + m (Ljava/util/Map$Entry;)Lnet/minecraft/network/chat/Component; method_51997 a method_51997 + m (Ljava/util/Map;)Lnet/minecraft/network/chat/Component; method_51998 a method_51998 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51995 a method_51995 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32729 b method_32729 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32730 b method_32730 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32731 b method_32731 + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_52000 b method_52000 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51999 b method_51999 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32732 c method_32732 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32733 c method_32733 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32734 d method_32734 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32735 e method_32735 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32736 f method_32736 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32737 g method_32737 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32738 h method_32738 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32739 i method_32739 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32740 j method_32740 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32741 k method_32741 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32742 l method_32742 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32743 m method_32743 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32744 n method_32744 + m ()V + m ()V +c net/minecraft/server/commands/JfrCommand ane net/minecraft/class_6607 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; START_FAILED a field_34880 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; DUMP_FAILED b field_34881 + m ()Lnet/minecraft/network/chat/Component; method_52001 a method_52001 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_38612 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38613 a method_38613 + m (Lnet/minecraft/commands/CommandSourceStack;)I startJfr a method_38614 + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_38615 a method_38615 + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_39499 a method_39499 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52002 a method_52002 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38616 b method_38616 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopJfr b method_38617 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_38618 c method_38618 + m ()V + m ()V +c net/minecraft/server/commands/KickCommand anf net/minecraft/class_3073 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_KICKING_OWNER a field_46229 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SINGLEPLAYER b field_47520 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52003 a method_52003 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13410 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13412 a method_13412 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13413 a method_13413 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)I kickPlayers a method_13411 + p 0 source + p 1 players + p 2 reason + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13409 b method_13409 + m ()V + m ()V +c net/minecraft/server/commands/KillCommand ang net/minecraft/class_3075 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13429 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13431 a method_13431 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13432 a method_13432 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I kill a method_13430 + p 0 source + p 1 targets + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52004 a method_52004 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22832 b method_22832 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52005 b method_52005 + m ()V +c net/minecraft/server/commands/ListPlayersCommand anh net/minecraft/class_3078 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/Component; method_30310 a method_30310 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13435 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13438 a method_13438 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPlayers a method_13437 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Function;)I format a method_13434 + p 0 source + p 1 nameExtractor + m (Ljava/util/List;Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52006 a method_52006 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13433 b method_13433 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPlayersWithUuids b method_13436 + p 0 source + m ()V +c net/minecraft/server/commands/LocateCommand ani net/minecraft/class_3079 + f Lorg/slf4j/Logger; LOGGER a field_41660 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_STRUCTURE_NOT_FOUND b field_39245 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_STRUCTURE_INVALID c field_39246 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_BIOME_NOT_FOUND d field_39247 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_POI_NOT_FOUND e field_39249 + f I MAX_STRUCTURE_SEARCH_RADIUS f field_39251 + f I MAX_BIOME_SEARCH_RADIUS g field_39252 + f I BIOME_SAMPLE_RESOLUTION_HORIZONTAL h field_39253 + f I BIOME_SAMPLE_RESOLUTION_VERTICAL i field_39254 + f I POI_SEARCH_RADIUS j field_39255 + m (IIII)F dist a method_13439 + p 0 x1 + p 1 z1 + p 2 x2 + p 3 z2 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_41004 a method_41004 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13443 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43904 a method_43904 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40998 a method_40998 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13448 a method_13448 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;)I locateBiome a method_43912 + p 0 source + p 1 biome + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I showLocateResult a method_45148 + p 0 source + p 1 result + p 2 sourcePosition + p 3 resultWithPosition + p 4 translationKey + p 5 absoluteY + p 6 duration + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)I locateStructure a method_43905 + p 0 source + p 1 structure + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I showLocateResult a method_24499 + p 0 source + p 1 result + p 2 sourcePosition + p 3 resultWithPosition + p 4 translationKey + p 5 absoluteY + p 6 duration + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/lang/String;Ljava/time/Duration;)I showLocateResult a method_45149 + p 0 source + p 1 sourcePosition + p 2 resultWithoutPosition + p 3 translationKey + p 4 absoluteY + p 5 elementName + p 6 duration + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/HolderSet$Named;)Ljava/lang/String; method_45150 a method_45150 + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/core/Holder$Reference;)Ljava/lang/String; method_45151 a method_45151 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_43906 a method_43906 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;Lnet/minecraft/core/Registry;)Ljava/util/Optional; getHolders a method_43907 + p 0 structure + p 1 structureRegistry + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43913 a method_43913 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; method_52007 a method_52007 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_13447 a method_13447 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/HolderSet$Direct; method_43908 a method_43908 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_43909 a method_43909 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43911 b method_43911 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;)I locatePoi b method_43915 + p 0 source + p 1 poiType + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43917 b method_43917 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43914 c method_43914 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41002 c method_41002 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39985 d method_39985 + m ()V + m ()V +c net/minecraft/server/commands/LootCommand anj net/minecraft/class_3039 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_LOOT_TABLE a field_13605 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_HELD_ITEMS b field_13604 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_LOOT_TABLE c field_13606 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13215 a method_13215 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/ItemStack;)V method_13179 a method_13179 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)Z distributeToContainer a method_13223 + p 0 container + p 1 item + m (Lnet/minecraft/world/entity/Entity;Ljava/util/List;IILjava/util/List;)V setSlots a method_16139 + p 0 target + p 1 items + p 2 startSlot + p 3 numSlots + p 4 setItems + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13193 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/LootCommand$TailProvider;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addTargets a method_13206 + p 0 builder + p 1 tailProvider + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropKillLoot a method_13189 + p 0 context + p 1 entity + p 2 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13210 a method_13210 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13220 a method_13220 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropBlockLoot a method_13219 + p 0 context + p 1 pos + p 2 tool + p 3 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropChestLoot a method_13197 + p 0 context + p 1 lootTable + p 2 dropCOnsimer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I drop a method_13180 + p 0 context + p 1 lootTable + p 2 params + p 3 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropFishingLoot a method_13199 + p 0 context + p 1 lootTable + p 2 pos + p 3 tool + p 4 dropConsumet + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_52008 a method_52008 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_52009 a method_52009 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canMergeItems a method_13218 + p 0 first + p 1 second + m (Lnet/minecraft/commands/CommandBuildContext;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13203 a method_13203 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13181 a method_13181 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V method_13185 a method_13185 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getSourceHandItem a method_13178 + p 0 source + p 1 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;)V method_13224 a method_13224 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec3;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I dropInWorld a method_13183 + p 0 source + p 1 pos + p 2 items + p 3 callback + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;)V callback a method_13213 + p 0 source + p 1 items + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V callback a method_13212 + p 0 source + p 1 items + p 2 lootTable + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/Container; getContainer a method_13207 + p 0 source + p 1 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;IILjava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I blockReplace a method_13209 + p 0 source + p 1 pos + p 2 slot + p 3 numSlots + p 4 items + p 5 callback + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I blockDistribute a method_13196 + p 0 source + p 1 pos + p 2 items + p 3 callback + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13217 a method_13217 + m (Ljava/util/Collection;IILjava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I entityReplace a method_13187 + p 0 targets + p 1 startSlot + p 2 numSlots + p 3 items + p 4 callback + m (Ljava/util/Collection;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I playerGive a method_13201 + p 0 targets + p 1 items + p 2 callback + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_52010 a method_52010 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_52011 a method_52011 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13222 b method_13222 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13191 b method_13191 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;)V method_13184 b method_13184 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13195 b method_13195 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13204 c method_13204 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13214 c method_13214 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13211 d method_13211 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_16339 d method_16339 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13198 e method_13198 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13202 e method_13202 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13177 f method_13177 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13221 f method_13221 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13188 g method_13188 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13182 g method_13182 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13216 h method_13216 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13205 i method_13205 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13208 j method_13208 + m ()V + m ()V +c net/minecraft/server/commands/LootCommand$Callback anj$a net/minecraft/class_3039$class_3040 +c net/minecraft/server/commands/LootCommand$DropConsumer anj$b net/minecraft/class_3039$class_3041 +c net/minecraft/server/commands/LootCommand$TailProvider anj$c net/minecraft/class_3039$class_3042 +c net/minecraft/server/commands/MsgCommand ank net/minecraft/class_3082 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13461 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13463 a method_13463 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_45153 a method_45153 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/PlayerChatMessage;)V sendMessage a method_13462 + p 0 source + p 1 targets + p 2 message + m ()V +c net/minecraft/server/commands/OpCommand anl net/minecraft/class_3083 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_OP a field_13667 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/lang/String; method_13469 a method_13469 + m (Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/level/ServerPlayer;)Z method_13466 a method_13466 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13464 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13468 a method_13468 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13467 a method_13467 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13470 a method_13470 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I opPlayers a method_13465 + p 0 source + p 1 gameProfiles + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52012 a method_52012 + m ()V + m ()V +c net/minecraft/server/commands/PardonCommand anm net/minecraft/class_3086 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_BANNED a field_13669 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52013 a method_52013 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13472 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13475 a method_13475 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13474 a method_13474 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13476 a method_13476 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I pardonPlayers a method_13473 + p 0 source + p 1 gameProfiles + m ()V + m ()V +c net/minecraft/server/commands/PardonIpCommand ann net/minecraft/class_3088 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID a field_13671 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_BANNED b field_13672 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13478 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13480 a method_13480 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13479 a method_13479 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13481 a method_13481 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I unban a method_13482 + p 0 source + p 1 ipAddress + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52014 a method_52014 + m ()V + m ()V +c net/minecraft/server/commands/ParticleCommand ano net/minecraft/class_3089 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13673 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13486 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13489 a method_13489 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13490 a method_13490 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FIZLjava/util/Collection;)I sendParticles a method_13491 + p 0 source + p 1 particleData + p 2 pos + p 3 delta + p 4 speed + p 5 count + p 6 force + p 7 viewers + m (Lnet/minecraft/core/particles/ParticleOptions;)Lnet/minecraft/network/chat/Component; method_52015 a method_52015 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13483 b method_13483 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13488 c method_13488 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13484 d method_13484 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13487 e method_13487 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13485 f method_13485 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13492 g method_13492 + m ()V + m ()V +c net/minecraft/server/commands/PerfCommand anp net/minecraft/class_6413 + f Lorg/slf4j/Logger; LOGGER a field_33985 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_RUNNING b field_33986 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_RUNNING c field_33987 + m ()Lnet/minecraft/network/chat/Component; method_52016 a method_52016 + m (DI)Lnet/minecraft/network/chat/Component; method_52017 a method_52017 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_37331 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37332 a method_37332 + m (Lnet/minecraft/commands/CommandSourceStack;)I startProfilingDedicatedServer a method_37333 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/util/profiling/ProfileResults;)V whenStopped a method_37334 + p 0 source + p 1 results + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/nio/file/Path;Lnet/minecraft/server/MinecraftServer;)V saveResults a method_37335 + p 0 source + p 1 path + p 2 server + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/MinecraftServer;Ljava/nio/file/Path;)V method_37336 a method_37336 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52018 a method_52018 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37337 b method_37337 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopProfilingDedicatedServer b method_37338 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/util/profiling/ProfileResults;)V method_37339 b method_37339 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_37340 c method_37340 + m ()V + m ()V +c net/minecraft/server/commands/PlaceCommand anq net/minecraft/class_6852 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FEATURE_FAILED a field_36324 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_JIGSAW_FAILED b field_39091 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_STRUCTURE_FAILED c field_39092 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TEMPLATE_INVALID d field_39256 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEMPLATE_FAILED e field_39257 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_TEMPLATES f field_39393 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52019 a method_52019 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)Z method_43646 a method_43646 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)V checkLoaded a method_43647 + p 0 level + p 1 start + p 2 end + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_39986 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43918 a method_43918 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_44145 a method_44145 + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/ChunkPos;)V method_43649 a method_43649 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_39988 a method_39988 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;FI)I placeTemplate a method_43919 + p 0 source + p 1 template + p 2 pos + p 3 rotation + p 4 mirror + p 5 integrity + p 6 seed + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/BlockPos;)I placeFeature a method_39989 + p 0 source + p 1 feature + p 2 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;ILnet/minecraft/core/BlockPos;)I placeJigsaw a method_43650 + p 0 source + p 1 templatePool + p 2 target + p 3 maxDepth + p 4 pos + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43920 a method_43920 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52021 a method_52021 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52020 a method_52020 + m (Lnet/minecraft/core/Holder;)Z method_43651 a method_43651 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43921 b method_43921 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/BlockPos;)I placeStructure b method_43654 + p 0 source + p 1 structure + p 2 pos + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52022 b method_52022 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43922 c method_43922 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43923 d method_43923 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43924 e method_43924 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43925 f method_43925 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43648 g method_43648 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43653 h method_43653 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43655 i method_43655 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43656 j method_43656 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39987 k method_39987 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39990 l method_39990 + m ()V + m ()V +c net/minecraft/server/commands/PlaySoundCommand anr net/minecraft/class_3091 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_FAR a field_13678 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52023 a method_52023 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/Collection; getCallingPlayerAsCollection a method_57111 + p 0 player + m (Lnet/minecraft/sounds/SoundSource;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; source a method_13497 + p 0 category + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13503 a method_13503 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13500 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57112 a method_57112 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13502 a method_13502 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/world/phys/Vec3;FFF)I playSound a method_13504 + p 0 source + p 1 targets + p 2 sound + p 3 category + p 4 pos + p 5 volume + p 6 pitch + p 7 minVolume + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52024 b method_52024 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13505 b method_13505 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13498 c method_13498 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13501 d method_13501 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13499 e method_13499 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_57113 f method_57113 + m ()V + m ()V +c net/minecraft/server/commands/PublishCommand ans net/minecraft/class_3093 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13680 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_PUBLISHED b field_13679 + m (I)Lnet/minecraft/network/chat/MutableComponent; getSuccessMessage a method_46869 + p 0 port + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13510 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13512 a method_13512 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13513 a method_13513 + m (Lnet/minecraft/commands/CommandSourceStack;IZLnet/minecraft/world/level/GameType;)I publish a method_13509 + p 0 source + p 1 port + p 2 cheats + p 3 gameMode + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13511 a method_13511 + m (I)Lnet/minecraft/network/chat/Component; method_52025 b method_52025 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46870 b method_46870 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46871 c method_46871 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13508 d method_13508 + m ()V + m ()V +c net/minecraft/server/commands/RaidCommand ant net/minecraft/class_6329 + m ()Lnet/minecraft/network/chat/Component; method_52026 a method_52026 + m (II)Lnet/minecraft/network/chat/Component; method_52027 a method_52027 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/entity/raid/Raid; getRaid a method_36191 + p 0 player + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_36192 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36193 a method_36193 + m (Lnet/minecraft/commands/CommandSourceStack;)I glow a method_36194 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I setRaidOmenLevel a method_36195 + p 0 source + p 1 level + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Component;)I playSound a method_36196 + p 0 source + p 1 type + m (Ljava/lang/StringBuilder;)Lnet/minecraft/network/chat/Component; method_52028 a method_52028 + m ()Lnet/minecraft/network/chat/Component; method_52029 b method_52029 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36197 b method_36197 + m (Lnet/minecraft/commands/CommandSourceStack;)I spawnLeader b method_36198 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I start b method_36199 + p 0 source + p 1 badOmenLevel + m (Ljava/lang/StringBuilder;)Lnet/minecraft/network/chat/Component; method_52030 b method_52030 + m ()Lnet/minecraft/network/chat/Component; method_52031 c method_52031 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36200 c method_36200 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop c method_36201 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36202 d method_36202 + m (Lnet/minecraft/commands/CommandSourceStack;)I check d method_36203 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36204 e method_36204 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36205 e method_36205 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36206 f method_36206 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36207 g method_36207 + m ()V +c net/minecraft/server/commands/RandomCommand anu net/minecraft/class_8602 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_TOO_LARGE a field_44983 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_TOO_SMALL b field_44984 + m (I)Lnet/minecraft/network/chat/Component; method_52316 a method_52316 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52317 a method_52317 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_52318 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52319 a method_52319 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestRandomSequence a method_52320 + p 0 context + p 1 suggestionsBuilder + m (Lnet/minecraft/commands/CommandSourceStack;)I resetAllSequences a method_52321 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;IZZ)I resetAllSequencesAndSetNewDefaults a method_52322 + p 0 source + p 1 seed + p 2 includeWorldSeed + p 3 includeSequenceId + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;)I resetSequence a method_52323 + p 0 source + p 1 sequence + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;IZZ)I resetSequence a method_52324 + p 0 source + p 1 sequence + p 2 seed + p 3 includeWorldSeed + p 4 includeSequenceId + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/resources/ResourceLocation;Z)I randomSample a method_52325 + p 0 source + p 1 range + p 2 sequence + p 3 displayResult + m (Ljava/lang/String;Z)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; drawRandomValueTree a method_52326 + p 0 subcommand + p 1 displayResult + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/RandomSequence;)V method_52327 a method_52327 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52328 a method_52328 + m (I)Lnet/minecraft/network/chat/Component; method_52329 b method_52329 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52330 b method_52330 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52331 b method_52331 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52332 b method_52332 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52333 b method_52333 + m (I)Lnet/minecraft/network/chat/Component; method_52334 c method_52334 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52335 c method_52335 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52336 c method_52336 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52337 d method_52337 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52338 e method_52338 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52339 f method_52339 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52340 g method_52340 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52341 h method_52341 + m ()V + m ()V +c net/minecraft/server/commands/RecipeCommand anv net/minecraft/class_3095 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_GIVE_FAILED a field_13681 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TAKE_FAILED b field_13682 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13517 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13521 a method_13521 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13522 a method_13522 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/Collection;)I giveRecipes a method_13520 + p 0 source + p 1 targets + p 2 recipes + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52032 a method_52032 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13515 b method_13515 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/Collection;)I takeRecipes b method_13518 + p 0 source + p 1 targets + p 2 recipes + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52033 b method_52033 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13519 c method_13519 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52034 c method_52034 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13516 d method_13516 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52035 d method_52035 + m ()V + m ()V +c net/minecraft/server/commands/ReloadCommand anw net/minecraft/class_3097 + f Lorg/slf4j/Logger; LOGGER a field_25343 + m ()Lnet/minecraft/network/chat/Component; method_52036 a method_52036 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/storage/WorldData;Ljava/util/Collection;)Ljava/util/Collection; discoverNewPacks a method_29478 + c Gets a list of IDs for the selected packs as well as all packs not disabled by the world config. + p 0 packRepository + p 1 worldData + p 2 selectedIds + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13529 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13530 a method_13530 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13531 a method_13531 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Throwable;)Ljava/lang/Void; method_29479 a method_29479 + m (Ljava/util/Collection;Lnet/minecraft/commands/CommandSourceStack;)V reloadPacks a method_29480 + p 0 selectedIds + p 1 source + m ()V + m ()V +c net/minecraft/server/commands/ReturnCommand anx net/minecraft/class_8503 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_51277 + p 0 dispatcher + m (Lnet/minecraft/commands/ExecutionCommandSource;)Z method_54286 a method_54286 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnFailCustomExecutor anx$a net/minecraft/class_8503$class_8933 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54863 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnFromCommandCustomModifier anx$b net/minecraft/class_8503$class_8834 + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54864 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnValueCustomExecutor anx$c net/minecraft/class_8503$class_8835 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54289 + m ()V +c net/minecraft/server/commands/RideCommand any net/minecraft/class_8011 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_RIDING a field_41742 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_ALREADY_RIDING b field_41743 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MOUNT_FAILED c field_41744 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MOUNTING_PLAYER d field_41745 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MOUNTING_LOOP e field_41746 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_WRONG_DIMENSION f field_42239 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52038 a method_52038 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_48078 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48079 a method_48079 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48080 a method_48080 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)I dismount a method_48081 + p 0 source + p 1 target + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I mount a method_48082 + p 0 source + p 1 target + p 2 vehicle + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48083 a method_48083 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48084 a method_48084 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52039 b method_52039 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48085 b method_48085 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48086 b method_48086 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_48077 c method_48077 + m ()V + m ()V +c net/minecraft/server/commands/SaveAllCommand anz net/minecraft/class_3104 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13701 + m ()Lnet/minecraft/network/chat/Component; method_52040 a method_52040 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13551 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13553 a method_13553 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13554 a method_13554 + m (Lnet/minecraft/commands/CommandSourceStack;Z)I saveAll a method_13550 + p 0 source + p 1 flush + m ()Lnet/minecraft/network/chat/Component; method_52041 b method_52041 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13549 b method_13549 + m ()V + m ()V +c net/minecraft/server/commands/SaveOffCommand aoa net/minecraft/class_3106 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_OFF a field_13703 + m ()Lnet/minecraft/network/chat/Component; method_52042 a method_52042 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13556 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13557 a method_13557 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13558 a method_13558 + m ()V + m ()V +c net/minecraft/server/commands/SaveOnCommand aob net/minecraft/class_3107 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_ON a field_13704 + m ()Lnet/minecraft/network/chat/Component; method_52043 a method_52043 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13559 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13560 a method_13560 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13561 a method_13561 + m ()V + m ()V +c net/minecraft/server/commands/SayCommand aoc net/minecraft/class_3110 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13562 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13563 a method_13563 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_43657 a method_43657 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13564 a method_13564 + m ()V +c net/minecraft/server/commands/ScheduleCommand aod net/minecraft/class_3112 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_TICK a field_13706 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CANT_REMOVE b field_20853 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_SCHEDULE c field_20854 + m (ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_52044 a method_52044 + m (Lnet/minecraft/resources/ResourceLocation;IJ)Lnet/minecraft/network/chat/Component; method_52045 a method_52045 + m (Lnet/minecraft/resources/ResourceLocation;ZLnet/minecraft/world/level/timers/TimerQueue;JLnet/minecraft/commands/CommandSourceStack;ILnet/minecraft/commands/functions/CommandFunction;)V method_13571 a method_13571 + m (Lnet/minecraft/resources/ResourceLocation;ZLnet/minecraft/world/level/timers/TimerQueue;JLnet/minecraft/commands/CommandSourceStack;ILjava/util/Collection;)V method_13570 a method_13570 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13567 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22834 a method_22834 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22835 a method_22835 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13569 a method_13569 + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/datafixers/util/Pair;IZ)I schedule a method_13566 + p 0 source + p 1 function + p 2 time + p 3 append + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I remove a method_22833 + p 0 source + p 1 function + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_22836 a method_22836 + m (Lnet/minecraft/resources/ResourceLocation;IJ)Lnet/minecraft/network/chat/Component; method_52046 b method_52046 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22837 b method_22837 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22838 c method_22838 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13568 d method_13568 + m ()V + m ()V +c net/minecraft/server/commands/ScoreboardCommand aoe net/minecraft/class_3115 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OBJECTIVE_ALREADY_EXISTS a field_13712 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DISPLAY_SLOT_ALREADY_EMPTY b field_13715 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DISPLAY_SLOT_ALREADY_SET c field_13713 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TRIGGER_ALREADY_ENABLED d field_13714 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_TRIGGER e field_13710 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NO_VALUE f field_13711 + m ()Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; createRenderTypeModify a method_13606 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52049 a method_52049 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52050 a method_52050 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55344 a method_55344 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13595 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13610 a method_13610 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13587 a method_13587 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/numbers/NumberFormat;)I method_55346 a method_55346 + m (Lnet/minecraft/commands/CommandBuildContext;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addNumberFormats a method_55345 + p 0 context + p 1 argumentBuilder + p 2 executor + m (Lnet/minecraft/commands/CommandSourceStack;)I listTrackedPlayers a method_13589 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/DisplaySlot;)I clearDisplaySlot a method_13592 + p 0 source + p 1 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)I setDisplaySlot a method_13596 + p 0 source + p 1 slot + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;)I removeObjective a method_13602 + p 0 source + p 1 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)I setRenderType a method_13581 + p 0 source + p 1 objective + p 2 renderType + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/Component;)I setDisplayName a method_13576 + p 0 source + p 1 objective + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/numbers/NumberFormat;)I setObjectiveFormat a method_55347 + p 0 source + p 1 objective + p 2 format + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Z)I setDisplayAutoUpdate a method_55348 + p 0 source + p 1 objective + p 2 displayAutoUpdate + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/ScoreHolder;)I listTrackedPlayerScores a method_13614 + p 0 source + p 1 score + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)I getScore a method_13607 + p 0 source + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)V method_52058 a method_52058 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;)I addObjective a method_13611 + p 0 source + p 1 name + p 2 criteria + p 3 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetScores a method_13575 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTriggers a method_13613 + p 0 source + p 1 targets + p 2 suggestions + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I enableTrigger a method_13609 + p 0 source + p 1 targets + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I setScore a method_13604 + p 0 source + p 1 targets + p 2 objective + p 3 newValue + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/commands/arguments/OperationArgument$Operation;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I performOperation a method_13584 + p 0 source + p 1 targets + p 2 targetObjectives + p 3 operation + p 4 sourceEntities + p 5 sourceObjective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/Component;)I setScoreDisplay a method_55349 + p 0 source + p 1 targets + p 2 objective + p 3 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/numbers/NumberFormat;)I setScoreNumberFormat a method_55350 + p 0 source + p 1 targets + p 2 objective + p 3 numberFormat + m (Lnet/minecraft/world/scores/DisplaySlot;)Lnet/minecraft/network/chat/Component; method_52047 a method_52047 + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52048 a method_52048 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52051 a method_52051 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52052 a method_52052 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52053 a method_52053 + m (Lnet/minecraft/world/scores/ScoreHolder;)Lnet/minecraft/network/chat/Component; method_52054 a method_52054 + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/ReadOnlyScoreInfo;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52055 a method_52055 + m (Lnet/minecraft/world/scores/ScoreHolder;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lnet/minecraft/network/chat/Component; method_52056 a method_52056 + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;Lcom/mojang/brigadier/context/CommandContext;)I method_13601 a method_13601 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lnet/minecraft/network/chat/Component; method_55351 a method_55351 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13605 a method_13605 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; getFirstTargetName a method_55352 + p 0 scores + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55353 a method_55353 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55354 a method_55354 + m ()Lnet/minecraft/network/chat/Component; method_52059 b method_52059 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52060 b method_52060 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52061 b method_52061 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55355 b method_55355 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55356 b method_55356 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/numbers/NumberFormat;)I method_55357 b method_55357 + m (Lnet/minecraft/commands/CommandSourceStack;)I listObjectives b method_13597 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I resetScore b method_13586 + p 0 source + p 1 targets + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I addScore b method_13578 + p 0 source + p 1 targets + p 2 objective + p 3 amount + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52062 b method_52062 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52063 b method_52063 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52064 b method_52064 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52057 b method_52057 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55358 b method_55358 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55359 b method_55359 + m ()Lnet/minecraft/network/chat/Component; method_52066 c method_52066 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55360 c method_55360 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55361 c method_55361 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13585 c method_13585 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I removeScore c method_13600 + p 0 source + p 1 targets + p 2 objective + p 3 amount + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52067 c method_52067 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52068 c method_52068 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52069 c method_52069 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52065 c method_52065 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55362 c method_55362 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55363 d method_55363 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13574 d method_13574 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55364 d method_55364 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52072 d method_52072 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52070 d method_52070 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55365 d method_55365 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13579 e method_13579 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55366 e method_55366 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52074 e method_52074 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52073 e method_52073 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55367 e method_55367 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13582 f method_13582 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55368 f method_55368 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55369 f method_55369 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13598 g method_13598 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55370 g method_55370 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13593 h method_13593 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52071 h method_52071 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13612 i method_13612 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13608 j method_13608 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13580 k method_13580 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13591 l method_13591 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13588 m method_13588 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13603 n method_13603 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13594 o method_13594 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55371 p method_55371 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13599 q method_13599 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13583 r method_13583 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13590 s method_13590 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13577 t method_13577 + m ()V + m ()V +c net/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor aoe$a net/minecraft/class_3115$class_9008 +c net/minecraft/server/commands/SeedCommand aof net/minecraft/class_3118 + m (Lcom/mojang/brigadier/CommandDispatcher;Z)V register a method_13616 + p 0 dispatcher + p 1 notIntegratedServer + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13617 a method_13617 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52075 a method_52075 + m (ZLnet/minecraft/commands/CommandSourceStack;)Z method_13618 a method_13618 + m ()V +c net/minecraft/server/commands/ServerPackCommand aog net/minecraft/class_9027 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_55474 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55475 a method_55475 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_55476 a method_55476 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)I pushPack a method_55477 + p 0 source + p 1 url + p 2 uuid + p 3 hash + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/UUID;)I popPack a method_55478 + p 0 source + p 1 uuid + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/protocol/Packet;)V sendToAllConnections a method_55479 + p 0 source + p 1 packet + m (Ljava/lang/String;)Ljava/util/UUID; method_55480 a method_55480 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/Connection;)V method_55481 a method_55481 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55482 b method_55482 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55483 c method_55483 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55484 d method_55484 + m ()V +c net/minecraft/server/commands/SetBlockCommand aoh net/minecraft/class_3119 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13719 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13623 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13626 a method_13626 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13624 a method_13624 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13627 a method_13627 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/commands/SetBlockCommand$Mode;Ljava/util/function/Predicate;)I setBlock a method_13620 + p 0 source + p 1 pos + p 2 state + p 3 mode + p 4 predicate + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52076 a method_52076 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13621 b method_13621 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13625 c method_13625 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13622 d method_13622 + m ()V + m ()V +c net/minecraft/server/commands/SetBlockCommand$Filter aoh$a net/minecraft/class_3119$class_3120 +c net/minecraft/server/commands/SetBlockCommand$Mode aoh$b net/minecraft/class_3119$class_3121 + f Lnet/minecraft/server/commands/SetBlockCommand$Mode; REPLACE a field_13722 + f Lnet/minecraft/server/commands/SetBlockCommand$Mode; DESTROY b field_13721 + f [Lnet/minecraft/server/commands/SetBlockCommand$Mode; $VALUES c field_13720 + m ()[Lnet/minecraft/server/commands/SetBlockCommand$Mode; $values a method_36969 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/commands/SetPlayerIdleTimeoutCommand aoi net/minecraft/class_3123 + m (I)Lnet/minecraft/network/chat/Component; method_52077 a method_52077 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13631 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13632 a method_13632 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13633 a method_13633 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setIdleTimeout a method_13630 + p 0 source + p 1 idleTimeout + m ()V +c net/minecraft/server/commands/SetSpawnCommand aoj net/minecraft/class_3127 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13641 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30733 a method_30733 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13644 a method_13644 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;F)I setSpawn a method_13645 + p 0 source + p 1 targets + p 2 pos + p 3 angle + m (Lnet/minecraft/core/BlockPos;FLjava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52078 a method_52078 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13643 b method_13643 + m (Lnet/minecraft/core/BlockPos;FLjava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52079 b method_52079 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13640 c method_13640 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13642 d method_13642 + m ()V +c net/minecraft/server/commands/SetWorldSpawnCommand aok net/minecraft/class_3128 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13647 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30734 a method_30734 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13649 a method_13649 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;F)I setSpawn a method_13650 + p 0 source + p 1 pos + p 2 angle + m (Lnet/minecraft/core/BlockPos;F)Lnet/minecraft/network/chat/Component; method_52080 a method_52080 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13648 b method_13648 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13646 c method_13646 + m ()V +c net/minecraft/server/commands/SpawnArmorTrimsCommand aol net/minecraft/class_8044 + f Ljava/util/Map; MATERIAL_AND_SLOT_TO_ITEM a field_41885 + f Ljava/util/List; VANILLA_TRIM_PATTERNS b field_41886 + f Ljava/util/List; VANILLA_TRIM_MATERIALS c field_41887 + f Ljava/util/function/ToIntFunction; TRIM_PATTERN_ORDER d field_41888 + f Ljava/util/function/ToIntFunction; TRIM_MATERIAL_ORDER e field_41889 + m ()Lnet/minecraft/network/chat/Component; method_52081 a method_52081 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_48333 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48334 a method_48334 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48335 a method_48335 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)I spawnArmorTrims a method_48336 + p 0 source + p 1 player + m (Ljava/util/HashMap;)V method_48341 a method_48341 + m (Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/Registry;Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;Lnet/minecraft/world/item/armortrim/TrimMaterial;)V method_48337 a method_48337 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimMaterial;)Ljava/lang/Integer; method_48338 a method_48338 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;)Ljava/lang/Integer; method_48339 a method_48339 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;)V method_48340 a method_48340 + m ()V + m ()V +c net/minecraft/server/commands/SpectateCommand aom net/minecraft/class_4694 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELF a field_21463 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_SPECTATOR b field_21464 + m ()Lnet/minecraft/network/chat/Component; method_52082 a method_52082 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52083 a method_52083 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_23653 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23654 a method_23654 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_23651 a method_23651 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerPlayer;)I spectate a method_23652 + p 0 source + p 1 target + p 2 player + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_23655 a method_23655 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23656 b method_23656 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23657 c method_23657 + m ()V + m ()V +c net/minecraft/server/commands/SpreadPlayersCommand aon net/minecraft/class_3131 + f I MAX_ITERATION_COUNT a field_33397 + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; ERROR_FAILED_TO_SPREAD_TEAMS b field_13734 + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; ERROR_FAILED_TO_SPREAD_ENTITIES c field_13735 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INVALID_MAX_HEIGHT d field_36326 + m (Lnet/minecraft/util/RandomSource;IDDDD)[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position; createInitialPositions a method_13653 + p 0 random + p 1 count + p 2 minX + p 4 minZ + p 6 maxX + p 8 maxZ + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13654 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_29193 a method_29193 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13659 a method_13659 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec2;FFIZLjava/util/Collection;)I spreadPlayers a method_13656 + p 0 source + p 1 center + p 2 spreadDistance + p 3 maxRange + p 4 maxHeight + p 5 respectTeams + p 6 targets + m (Lnet/minecraft/world/phys/Vec2;DLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;DDDDI[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;Z)V spreadPositions a method_13661 + p 0 center + p 1 spreadDistance + p 3 level + p 4 random + p 5 minX + p 7 minZ + p 9 maxX + p 11 maxZ + p 13 maxHeight + p 14 positions + p 15 respectTeams + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39991 a method_39991 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13660 a method_13660 + m (Ljava/util/Collection;)I getNumberOfTeams a method_13652 + c Gets the number of unique teams for the given list of entities. + p 0 entities + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;IZ)D setPlayerPositions a method_13657 + p 0 targets + p 1 level + p 2 positions + p 3 maxHeight + p 4 respectTeams + m (Z[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;Lnet/minecraft/world/phys/Vec2;D)Lnet/minecraft/network/chat/Component; method_52084 a method_52084 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13658 b method_13658 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13655 b method_13655 + m ()V + m ()V +c net/minecraft/server/commands/SpreadPlayersCommand$Position aon$a net/minecraft/class_3131$class_3132 + f D x a field_13737 + f D z b field_13736 + m ()V normalize a method_13671 + m (DDDD)Z clamp a method_13666 + p 1 minX + p 3 minZ + p 5 maxX + p 7 maxZ + m (Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;)D dist a method_13665 + p 1 other + m (Lnet/minecraft/util/RandomSource;DDDD)V randomize a method_13667 + p 1 random + p 2 minX + p 4 minZ + p 6 maxX + p 8 maxZ + m (Lnet/minecraft/world/level/BlockGetter;I)I getSpawnY a method_13669 + p 1 level + p 2 y + m ()D getLength b method_13668 + m (Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;)V moveAway b method_13670 + p 1 other + m (Lnet/minecraft/world/level/BlockGetter;I)Z isSafe b method_13662 + p 1 level + p 2 y + m ()V +c net/minecraft/server/commands/StopCommand aoo net/minecraft/class_3134 + m ()Lnet/minecraft/network/chat/Component; method_52085 a method_52085 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13675 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13676 a method_13676 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13677 a method_13677 + m ()V +c net/minecraft/server/commands/StopSoundCommand aop net/minecraft/class_3136 + m ()Lnet/minecraft/network/chat/Component; method_52086 a method_52086 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52087 a method_52087 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/network/chat/Component; method_52088 a method_52088 + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/network/chat/Component; method_52089 a method_52089 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13684 a method_13684 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13681 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13683 a method_13683 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13682 a method_13682 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/resources/ResourceLocation;)I stopSound a method_13685 + p 0 source + p 1 targets + p 2 category + p 3 sound + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13686 b method_13686 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13680 b method_13680 + m ()V +c net/minecraft/server/commands/SummonCommand aoq net/minecraft/class_3138 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13741 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DUPLICATE_UUID b field_26629 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; INVALID_POSITION c field_22254 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52090 a method_52090 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13690 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13692 a method_13692 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13693 a method_13693 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;Z)Lnet/minecraft/world/entity/Entity; createEntity a method_48758 + p 0 source + p 1 type + p 2 pos + p 3 tag + p 4 randomizeProperties + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_48759 a method_48759 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13689 b method_13689 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;Z)I spawnEntity b method_13694 + p 0 source + p 1 type + p 2 pos + p 3 tag + p 4 randomizeProperties + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13691 c method_13691 + m ()V + m ()V +c net/minecraft/server/commands/TagCommand aor net/minecraft/class_3140 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ADD_FAILED a field_13742 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_REMOVE_FAILED b field_13743 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52091 a method_52091 + m (Lnet/minecraft/world/entity/Entity;Ljava/util/Set;)Lnet/minecraft/network/chat/Component; method_52092 a method_52092 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13698 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13704 a method_13704 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13701 a method_13701 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13705 a method_13705 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I listTags a method_13700 + p 0 source + p 1 entities + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/lang/String;)I addTag a method_13702 + p 0 source + p 1 entities + p 2 tagName + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52093 a method_52093 + m (Ljava/util/Collection;)Ljava/util/Collection; getTags a method_13706 + c Gets all tags that are present on at least one of the given entities. + p 0 entities + m (Ljava/util/Collection;Ljava/util/Set;)Lnet/minecraft/network/chat/Component; method_52094 a method_52094 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13697 b method_13697 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/lang/String;)I removeTag b method_13699 + p 0 source + p 1 entities + p 2 tagName + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52095 b method_52095 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52096 b method_52096 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13703 c method_13703 + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52097 c method_52097 + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52098 d method_52098 + m ()V + m ()V +c net/minecraft/server/commands/TeamCommand aos net/minecraft/class_3142 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_EXISTS a field_13749 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_EMPTY b field_13751 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_NAME c field_13755 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_COLOR d field_13746 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYFIRE_ENABLED e field_13753 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYFIRE_DISABLED f field_13754 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYINVISIBLES_ENABLED g field_13747 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYINVISIBLES_DISABLED h field_13756 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_NAMETAG_VISIBLITY_UNCHANGED i field_13752 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_DEATH_MESSAGE_VISIBLITY_UNCHANGED j field_13757 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_COLLISION_UNCHANGED k field_13750 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13752 A method_13752 + m ()Lnet/minecraft/network/chat/Component; method_52099 a method_52099 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13736 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13712 a method_13712 + m (Lnet/minecraft/commands/CommandSourceStack;)I listTeams a method_13728 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I emptyTeam a method_13723 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$CollisionRule;)I setCollision a method_13713 + p 0 source + p 1 team + p 2 rule + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)I setNametagVisibility a method_13732 + p 0 source + p 1 team + p 2 visibility + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/Collection;)I joinTeam a method_13720 + p 0 source + p 1 team + p 2 players + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/ChatFormatting;)I setColor a method_13745 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setDisplayName a method_13711 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Z)I setFriendlySight a method_13751 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I createTeam a method_13757 + p 0 source + p 1 name + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I createTeam a method_13715 + p 0 source + p 1 name + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I leaveTeam a method_13714 + c Removes the listed players from their teams. + p 0 source + p 1 players + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52100 a method_52100 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$CollisionRule;)Lnet/minecraft/network/chat/Component; method_52101 a method_52101 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/network/chat/Component; method_52102 a method_52102 + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52103 a method_52103 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Component; method_52104 a method_52104 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; getFirstMemberName a method_55372 + p 0 scores + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52106 a method_52106 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52107 a method_52107 + m (ZLnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52108 a method_52108 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13717 b method_13717 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13719 b method_13719 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I deleteTeam b method_13747 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)I setDeathMessageVisibility b method_13735 + p 0 source + p 1 team + p 2 visibility + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setPrefix b method_13743 + p 0 source + p 1 team + p 2 prefix + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Z)I setFriendlyFire b method_13754 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52109 b method_52109 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/network/chat/Component; method_52110 b method_52110 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52105 b method_52105 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52112 b method_52112 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52113 b method_52113 + m (ZLnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52114 b method_52114 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13724 c method_13724 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I listMembers c method_13748 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setSuffix c method_13756 + p 0 source + p 1 team + p 2 suffix + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52115 c method_52115 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52111 c method_52111 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52117 c method_52117 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13739 d method_13739 + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52118 d method_52118 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52116 d method_52116 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13733 e method_13733 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13755 f method_13755 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13750 g method_13750 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13721 h method_13721 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13730 i method_13730 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13727 j method_13727 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13742 k method_13742 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13734 l method_13734 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13740 m method_13740 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13725 n method_13725 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13729 o method_13729 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13716 p method_13716 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13718 q method_13718 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13746 r method_13746 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13738 s method_13738 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13744 t method_13744 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13731 u method_13731 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13726 v method_13726 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13722 w method_13722 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13753 x method_13753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13749 y method_13749 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13737 z method_13737 + m ()V + m ()V +c net/minecraft/server/commands/TeamMsgCommand aot net/minecraft/class_3945 + f Lnet/minecraft/network/chat/Style; SUGGEST_STYLE a field_24380 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_ON_TEAM b field_17440 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/server/level/ServerPlayer;)Z method_45154 a method_45154 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_17600 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_17601 a method_17601 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Lnet/minecraft/network/chat/PlayerChatMessage;)V sendMessage a method_17599 + p 0 source + p 1 sender + p 2 team + p 3 teamMembers + p 4 chatMessage + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_45155 b method_45155 + m ()V + m ()V +c net/minecraft/server/commands/TeleportCommand aou net/minecraft/class_3143 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; INVALID_POSITION a field_22255 + m (D)Ljava/lang/String; formatDouble a method_36970 + p 0 value + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13760 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13769 a method_13769 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13763 a method_13763 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;DDDLjava/util/Set;FFLnet/minecraft/server/commands/TeleportCommand$LookAt;)V performTeleport a method_13766 + p 0 source + p 1 entity + p 2 level + p 3 x + p 5 y + p 7 z + p 9 relativeList + p 10 yaw + p 11 pitch + p 12 facing + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/commands/arguments/coordinates/Coordinates;Lnet/minecraft/commands/arguments/coordinates/Coordinates;Lnet/minecraft/server/commands/TeleportCommand$LookAt;)I teleportToPos a method_13765 + p 0 source + p 1 targets + p 2 level + p 3 position + p 4 rotation + p 5 facing + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)I teleportToEntity a method_13771 + p 0 source + p 1 targets + p 2 destination + m (Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52119 a method_52119 + m (Ljava/util/Collection;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/chat/Component; method_52120 a method_52120 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13758 b method_13758 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13764 b method_13764 + m (Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52121 b method_52121 + m (Ljava/util/Collection;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/chat/Component; method_52122 b method_52122 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13762 c method_13762 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13767 d method_13767 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13761 e method_13761 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13759 f method_13759 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13770 g method_13770 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13768 h method_13768 + m ()V + m ()V +c net/minecraft/server/commands/TeleportCommand$LookAt aou$a net/minecraft/class_3143$class_3144 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)V perform perform method_13772 + p 1 source + p 2 entity +c net/minecraft/server/commands/TeleportCommand$LookAtEntity aou$b net/minecraft/class_3143$class_9251 + f Lnet/minecraft/world/entity/Entity; entity a comp_2357 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor b comp_2358 + m ()Lnet/minecraft/world/entity/Entity; entity a comp_2357 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor b comp_2358 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V +c net/minecraft/server/commands/TeleportCommand$LookAtPosition aou$c net/minecraft/class_3143$class_9252 + f Lnet/minecraft/world/phys/Vec3; position a comp_2359 + m ()Lnet/minecraft/world/phys/Vec3; position a comp_2359 + m (Lnet/minecraft/world/phys/Vec3;)V +c net/minecraft/server/commands/TellRawCommand aov net/minecraft/class_3146 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13776 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13777 a method_13777 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13778 a method_13778 + m ()V +c net/minecraft/server/commands/TickCommand aow net/minecraft/class_8916 + f F MAX_TICKRATE a field_46925 + f Ljava/lang/String; DEFAULT_TICKRATE b field_46926 + m ()Lnet/minecraft/network/chat/Component; method_54684 a method_54684 + m (I)Lnet/minecraft/network/chat/Component; method_54685 a method_54685 + m (J)Ljava/lang/String; nanosToMilisString a method_54686 + p 0 nanos + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_54687 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54688 a method_54688 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54689 a method_54689 + m (Lnet/minecraft/commands/CommandSourceStack;)I tickQuery a method_54690 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;F)I setTickingRate a method_54691 + p 0 source + p 1 tickRate + m (Lnet/minecraft/commands/CommandSourceStack;I)I sprint a method_54692 + p 0 source + p 1 sprintTime + m (Lnet/minecraft/commands/CommandSourceStack;Z)I setFreeze a method_54693 + p 0 source + p 1 frozen + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54694 a method_54694 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54695 a method_54695 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54696 a method_54696 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[J)Lnet/minecraft/network/chat/Component; method_54697 a method_54697 + m ()Lnet/minecraft/network/chat/Component; method_54698 b method_54698 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54699 b method_54699 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54700 b method_54700 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopStepping b method_54701 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I step b method_54702 + p 0 source + p 1 ticks + m ()Lnet/minecraft/network/chat/Component; method_54703 c method_54703 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54704 c method_54704 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54705 c method_54705 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopSprinting c method_54706 + p 0 source + m ()Lnet/minecraft/network/chat/Component; method_54707 d method_54707 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54708 d method_54708 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_54709 d method_54709 + m ()Lnet/minecraft/network/chat/Component; method_54710 e method_54710 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54711 e method_54711 + m ()Lnet/minecraft/network/chat/Component; method_54712 f method_54712 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54713 f method_54713 + m ()Lnet/minecraft/network/chat/Component; method_55596 g method_55596 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54865 g method_54865 + m ()Lnet/minecraft/network/chat/Component; method_54714 h method_54714 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54715 h method_54715 + m ()Lnet/minecraft/network/chat/Component; method_54716 i method_54716 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54717 i method_54717 + m ()Lnet/minecraft/network/chat/Component; method_54718 j method_54718 + m ()V + m ()V +c net/minecraft/server/commands/TimeCommand aox net/minecraft/class_3149 + m (I)Lnet/minecraft/network/chat/Component; method_52123 a method_52123 + m (Lnet/minecraft/server/level/ServerLevel;)I getDayTime a method_13787 + c Returns the day time (time wrapped within a day) + p 0 level + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13786 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13795 a method_13795 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13791 a method_13791 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setTime a method_13784 + p 0 source + p 1 time + m (I)Lnet/minecraft/network/chat/Component; method_52124 b method_52124 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13783 b method_13783 + m (Lnet/minecraft/commands/CommandSourceStack;I)I addTime b method_13788 + p 0 source + p 1 amount + m (I)Lnet/minecraft/network/chat/Component; method_52125 c method_52125 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13790 c method_13790 + m (Lnet/minecraft/commands/CommandSourceStack;I)I queryTime c method_13796 + p 0 source + p 1 time + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13793 d method_13793 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13789 e method_13789 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13785 f method_13785 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13797 g method_13797 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13794 h method_13794 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13792 i method_13792 + m ()V +c net/minecraft/server/commands/TitleCommand aoy net/minecraft/class_3151 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13804 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13809 a method_13809 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13810 a method_13810 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I clearTitle a method_13805 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;III)I setTimes a method_13806 + p 0 source + p 1 target + p 2 fade + p 3 stay + p 4 fadeOut + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Ljava/util/function/Function;)I showTitle a method_13802 + p 0 source + p 1 targets + p 2 title + p 3 titleType + p 4 packetGetter + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52126 a method_52126 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52127 a method_52127 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13800 b method_13800 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetTitle b method_13799 + p 0 source + p 1 targets + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52128 b method_52128 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52129 b method_52129 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13808 c method_13808 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52130 c method_52130 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13801 d method_13801 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52131 d method_52131 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13807 e method_13807 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52132 e method_52132 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13803 f method_13803 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52133 f method_52133 + m ()V +c net/minecraft/server/commands/TransferCommand aoz net/minecraft/class_9159 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYERS a field_48710 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_56522 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56523 a method_56523 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_56524 a method_56524 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;ILjava/util/Collection;)I transfer a method_56525 + p 0 source + p 1 hostname + p 2 port + p 3 players + m (Ljava/util/Collection;Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_56526 a method_56526 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56527 b method_56527 + m (Ljava/util/Collection;Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_56528 b method_56528 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56529 c method_56529 + m ()V + m ()V +c net/minecraft/server/commands/TriggerCommand apa net/minecraft/class_3153 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_PRIMED a field_13763 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_OBJECTIVE b field_13764 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13813 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13816 a method_13816 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13814 a method_13814 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;)I simpleTrigger a method_13818 + p 0 source + p 1 player + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;I)I addValue a method_13817 + p 0 source + p 1 player + p 2 objective + p 3 value + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestObjectives a method_13819 + p 0 source + p 1 builder + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52134 a method_52134 + m (Lnet/minecraft/world/scores/Objective;I)Lnet/minecraft/network/chat/Component; method_52135 a method_52135 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ScoreAccess; getScore a method_13821 + p 0 scoreboard + p 1 scoreHolder + p 2 objective + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13812 b method_13812 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;I)I setValue b method_13820 + p 0 source + p 1 player + p 2 objective + p 3 value + m (Lnet/minecraft/world/scores/Objective;I)Lnet/minecraft/network/chat/Component; method_52136 b method_52136 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13815 c method_13815 + m ()V + m ()V +c net/minecraft/server/commands/WardenSpawnTrackerCommand apb net/minecraft/class_7240 + m (ILnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45156 a method_45156 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_42100 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42101 a method_42101 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_42102 a method_42102 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetTracker a method_42103 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;I)I setWarningLevel a method_42104 + p 0 source + p 1 targets + p 2 warningLevel + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52137 a method_52137 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42105 b method_42105 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52138 b method_52138 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52139 c method_52139 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52140 d method_52140 + m ()V +c net/minecraft/server/commands/WeatherCommand apc net/minecraft/class_3155 + f I DEFAULT_TIME a field_33398 + m ()Lnet/minecraft/network/chat/Component; method_52141 a method_52141 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13827 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13831 a method_13831 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13832 a method_13832 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setClear a method_13824 + p 0 source + p 1 time + m (Lnet/minecraft/commands/CommandSourceStack;ILnet/minecraft/util/valueproviders/IntProvider;)I getDuration a method_48087 + p 0 source + p 1 time + p 2 timeProvider + m ()Lnet/minecraft/network/chat/Component; method_52142 b method_52142 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13823 b method_13823 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setRain b method_13828 + p 0 source + p 1 time + m ()Lnet/minecraft/network/chat/Component; method_52143 c method_52143 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13830 c method_13830 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setThunder c method_13833 + p 0 source + p 1 time + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13825 d method_13825 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13829 e method_13829 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13826 f method_13826 + m ()V +c net/minecraft/server/commands/WhitelistCommand apd net/minecraft/class_3156 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_ENABLED a field_13767 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_DISABLED b field_13770 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_WHITELISTED c field_13768 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_WHITELISTED d field_13769 + m ()Lnet/minecraft/network/chat/Component; method_52144 a method_52144 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/lang/String; method_13844 a method_13844 + m (Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/level/ServerPlayer;)Z method_13841 a method_13841 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52145 a method_52145 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13836 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13851 a method_13851 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13849 a method_13849 + m (Lnet/minecraft/commands/CommandSourceStack;)I reload a method_13850 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I addPlayers a method_13838 + p 0 source + p 1 players + m ([Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52146 a method_52146 + m ()Lnet/minecraft/network/chat/Component; method_52147 b method_52147 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52148 b method_52148 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13834 b method_13834 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13848 b method_13848 + m (Lnet/minecraft/commands/CommandSourceStack;)I enableWhitelist b method_13839 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I removePlayers b method_13845 + p 0 source + p 1 players + m ()Lnet/minecraft/network/chat/Component; method_52149 c method_52149 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13843 c method_13843 + m (Lnet/minecraft/commands/CommandSourceStack;)I disableWhitelist c method_13837 + p 0 source + m ()Lnet/minecraft/network/chat/Component; method_52150 d method_52150 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13846 d method_13846 + m (Lnet/minecraft/commands/CommandSourceStack;)I showList d method_13840 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13842 e method_13842 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13847 e method_13847 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13835 f method_13835 + m ()V + m ()V +c net/minecraft/server/commands/WorldBorderCommand ape net/minecraft/class_3158 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_CENTER a field_13775 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_SIZE b field_13780 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_SMALL c field_13776 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_BIG d field_13779 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_FAR_OUT e field_36188 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_WARNING_TIME f field_13773 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_WARNING_DISTANCE g field_13777 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_DAMAGE_BUFFER h field_13778 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_DAMAGE_AMOUNT i field_13774 + m (D)Lnet/minecraft/network/chat/Component; method_52151 a method_52151 + m (DJ)Lnet/minecraft/network/chat/Component; method_52152 a method_52152 + m (F)Lnet/minecraft/network/chat/Component; method_52153 a method_52153 + m (I)Lnet/minecraft/network/chat/Component; method_52154 a method_52154 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13858 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13870 a method_13870 + m (Lnet/minecraft/commands/CommandSourceStack;)I getSize a method_13868 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;DJ)I setSize a method_13854 + p 0 source + p 1 newSize + p 3 time + m (Lnet/minecraft/commands/CommandSourceStack;F)I setDamageBuffer a method_13865 + p 0 source + p 1 distance + m (Lnet/minecraft/commands/CommandSourceStack;I)I setWarningTime a method_13856 + p 0 source + p 1 time + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec2;)I setCenter a method_13869 + p 0 source + p 1 pos + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/network/chat/Component; method_52155 a method_52155 + m (D)Lnet/minecraft/network/chat/Component; method_52156 b method_52156 + m (DJ)Lnet/minecraft/network/chat/Component; method_52157 b method_52157 + m (F)Lnet/minecraft/network/chat/Component; method_52158 b method_52158 + m (I)Lnet/minecraft/network/chat/Component; method_52159 b method_52159 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13855 b method_13855 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13862 b method_13862 + m (Lnet/minecraft/commands/CommandSourceStack;F)I setDamageAmount b method_13863 + p 0 source + p 1 damagePerBlock + m (Lnet/minecraft/commands/CommandSourceStack;I)I setWarningDistance b method_13859 + p 0 source + p 1 distance + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13861 c method_13861 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13866 d method_13866 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13860 e method_13860 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13857 f method_13857 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13872 g method_13872 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13867 h method_13867 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13864 i method_13864 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13871 j method_13871 + m ()V + m ()V +c net/minecraft/server/commands/data/BlockDataAccessor apf net/minecraft/class_3161 + f Ljava/util/function/Function; PROVIDER a field_13786 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_A_BLOCK_ENTITY b field_13785 + f Lnet/minecraft/world/level/block/entity/BlockEntity; entity c field_13784 + f Lnet/minecraft/core/BlockPos; pos d field_13783 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13878 a method_13878 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/BlockPos;)V + p 1 entity + p 2 pos + m ()V +c net/minecraft/server/commands/data/BlockDataAccessor$1 apf$1 net/minecraft/class_3161$1 + f Ljava/lang/String; val$argPrefix a field_13787 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/DataAccessor apg net/minecraft/class_3162 + m ()Lnet/minecraft/nbt/CompoundTag; getData a method_13881 + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;DI)Lnet/minecraft/network/chat/Component; getPrintSuccess a method_13879 + c Gets the message used as a result of querying the given path with a scale. + p 1 path + p 2 scale + p 4 value + m (Lnet/minecraft/nbt/CompoundTag;)V setData a method_13880 + p 1 other + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; getPrintSuccess a method_13882 + c Gets the message used as a result of querying the given NBT (both for /data get and /data get path) + p 1 nbt + m ()Lnet/minecraft/network/chat/Component; getModifiedSuccess b method_13883 +c net/minecraft/server/commands/data/DataCommands aph net/minecraft/class_3164 + f Ljava/util/List; ALL_PROVIDERS a field_13790 + f Ljava/util/List; TARGET_PROVIDERS b field_13798 + f Ljava/util/List; SOURCE_PROVIDERS c field_13792 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MERGE_UNCHANGED d field_13796 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GET_NOT_NUMBER e field_13791 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GET_NON_EXISTENT f field_13793 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MULTIPLE_TAGS g field_13794 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_OBJECT h field_13797 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_VALUE i field_41747 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INVALID_SUBSTRING j field_44916 + m (II)I getOffset a method_51824 + p 0 index + p 1 length + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52160 a method_52160 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;DI)Lnet/minecraft/network/chat/Component; method_52161 a method_52161 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/network/chat/Component; method_52162 a method_52162 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; method_52163 a method_52163 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13899 a method_13899 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48088 a method_48088 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48089 a method_48089 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lcom/mojang/brigadier/context/CommandContext;)I method_13900 a method_13900 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48090 a method_48090 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13923 a method_13923 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13912 a method_13912 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13905 + p 0 dispatcher + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/data/DataCommands$DataManipulatorDecorator;)V method_13895 a method_13895 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)Ljava/util/List; getSingletonSource a method_48091 + p 0 context + p 1 dataProvider + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Ljava/util/List;)I manipulateData a method_13920 + p 0 source + p 1 dataProvider + p 2 dataManipulator + p 3 tags + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48092 a method_48092 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47952 a method_47952 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13890 a method_13890 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;)I getData a method_13908 + c Gets all NBT on the object, and applies syntax highlighting.\n\n@return 1 + p 0 source + p 1 accessor + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I removeData a method_13885 + c Removes the tag at the end of the path.\n\n@return 1 + p 0 source + p 1 accessor + p 2 path + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;D)I getNumeric a method_13903 + c Gets a single numeric element, scaled by the given amount.\n\n@return The element's value, scaled by scale. + p 0 source + p 1 accessor + p 2 path + p 3 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/CompoundTag;)I mergeData a method_13901 + c Merges the given NBT into the targeted object's NBT.\n\n@return 1 + p 0 source + p 1 accessor + p 2 nbt + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/nbt/Tag; getSingleTag a method_13921 + p 0 path + p 1 accessor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48093 a method_48093 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52164 a method_52164 + m (Ljava/lang/String;)Ljava/lang/String; method_48094 a method_48094 + m (Ljava/lang/String;I)Ljava/lang/String; substring a method_51825 + p 0 source + p 1 start + m (Ljava/lang/String;II)Ljava/lang/String; validatedSubstring a method_52165 + p 0 source + p 1 start + p 2 end + m (Ljava/util/List;Lnet/minecraft/server/commands/data/DataCommands$StringProcessor;)Ljava/util/List; stringifyTagList a method_48095 + p 0 tagList + p 1 processor + m (Ljava/util/function/BiConsumer;)Lcom/mojang/brigadier/builder/ArgumentBuilder; decorateModification a method_13898 + p 0 decorator + m (Ljava/util/function/BiConsumer;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13922 a method_13922 + m (Ljava/util/function/Function;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13906 a method_13906 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; getAsText a method_48096 + p 0 tag + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52166 b method_52166 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13893 b method_13893 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48097 b method_48097 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13911 b method_13911 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13889 b method_13889 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13886 b method_13886 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)Ljava/util/List; resolveSourcePath b method_48098 + p 0 context + p 1 dataProvider + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48099 b method_48099 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_13888 b method_13888 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I getData b method_13916 + c Gets a value, which can be of any known NBT type.\n\n@return The value associated with the element: length for strings, size for lists and compounds, and numeric value for primitives. + p 0 source + p 1 accessor + p 2 path + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13907 b method_13907 + m (Ljava/lang/String;)Ljava/lang/String; method_48100 b method_48100 + m (Ljava/lang/String;II)Ljava/lang/String; substring b method_51826 + p 0 source + p 1 start + p 2 end + m (Ljava/util/function/Function;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13919 b method_13919 + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52167 c method_52167 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48101 c method_48101 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13896 c method_13896 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13904 c method_13904 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47953 c method_47953 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13892 c method_13892 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48102 d method_48102 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13909 d method_13909 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47954 d method_47954 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13902 d method_13902 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48103 e method_48103 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13887 e method_13887 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_13891 e method_13891 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48104 f method_48104 + m ()V + m ()V +c net/minecraft/server/commands/data/DataCommands$DataManipulator aph$a net/minecraft/class_3164$class_3165 +c net/minecraft/server/commands/data/DataCommands$DataManipulatorDecorator aph$b net/minecraft/class_3164$class_3166 +c net/minecraft/server/commands/data/DataCommands$DataProvider aph$c net/minecraft/class_3164$class_3167 + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrap a method_13925 + c Creates an argument used for accessing data related to this type of thing, including a literal to distinguish from other types. + p 1 builder + p 2 action + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/data/DataAccessor; access a method_13924 + c Creates an accessor based on the command context. This should only refer to arguments registered in {@link createArgument}. + p 1 context +c net/minecraft/server/commands/data/DataCommands$StringProcessor aph$d net/minecraft/class_3164$class_8569 +c net/minecraft/server/commands/data/EntityDataAccessor api net/minecraft/class_3169 + f Ljava/util/function/Function; PROVIDER a field_13800 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYERS b field_13799 + f Lnet/minecraft/world/entity/Entity; entity c field_13801 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13927 a method_13927 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m ()V +c net/minecraft/server/commands/data/EntityDataAccessor$1 api$1 net/minecraft/class_3169$1 + f Ljava/lang/String; val$arg a field_13802 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/StorageDataAccessor apj net/minecraft/class_4580 + f Ljava/util/function/Function; PROVIDER a field_20855 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_STORAGE b field_20856 + f Lnet/minecraft/world/level/storage/CommandStorage; storage c field_20857 + f Lnet/minecraft/resources/ResourceLocation; id d field_20858 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/world/level/storage/CommandStorage; getGlobalTags a method_22842 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22840 a method_22840 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_22841 a method_22841 + m (Lnet/minecraft/world/level/storage/CommandStorage;Lnet/minecraft/resources/ResourceLocation;)V + p 1 storage + p 2 id + m ()V +c net/minecraft/server/commands/data/StorageDataAccessor$1 apj$1 net/minecraft/class_4580$1 + f Ljava/lang/String; val$arg a field_20859 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/package-info apk net/minecraft/class_5974 +c net/minecraft/server/commands/package-info apl net/minecraft/class_5975 +c net/minecraft/server/dedicated/DedicatedPlayerList apm net/minecraft/class_3174 + f Lorg/slf4j/Logger; LOGGER h field_13804 + m ()V loadOps A method_13934 + m ()V saveOps B method_13935 + m ()V loadWhiteList C method_13936 + m ()V saveWhiteList D method_13937 + m ()Lnet/minecraft/server/dedicated/DedicatedServer; getServer b method_13938 + m ()V saveIpBanList w method_13932 + m ()V saveUserBanList x method_13930 + m ()V loadIpBanList y method_13931 + m ()V loadUserBanList z method_13933 + m (Lnet/minecraft/server/dedicated/DedicatedServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;)V + p 1 server + p 2 registries + p 3 playerIo + m ()V +c net/minecraft/server/dedicated/DedicatedServer apn net/minecraft/class_3176 + f Lorg/slf4j/Logger; LOGGER k field_13814 + f I CONVERSION_RETRY_DELAY_MS l field_29662 + f I CONVERSION_RETRIES m field_29663 + f Ljava/util/List; consoleInput n field_13815 + f Lnet/minecraft/server/rcon/thread/QueryThreadGs4; queryThreadGs4 o field_13816 + f Lnet/minecraft/server/rcon/RconConsoleSource; rconConsoleSource p field_13811 + f Lnet/minecraft/server/rcon/thread/RconThread; rconThread q field_13819 + f Lnet/minecraft/server/dedicated/DedicatedServerSettings; settings r field_16799 + f Lnet/minecraft/server/gui/MinecraftServerGui; gui s field_16800 + f Lnet/minecraft/server/network/TextFilterClient; textFilterClient t field_26898 + f Lnet/minecraft/util/debugchart/RemoteSampleLogger; tickTimeLogger u field_48788 + f Lnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker; debugSampleSubscriptionTracker v field_48789 + f Lnet/minecraft/server/ServerLinks; serverLinks w field_52215 + m (ILnet/minecraft/server/dedicated/DedicatedServerProperties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; method_16710 a method_16710 + m (Lnet/minecraft/server/dedicated/DedicatedServerProperties;)Ljava/util/Optional; parseBugReportLink a method_60939 + p 0 properties + m (Lnet/minecraft/server/dedicated/DedicatedServerSettings;)Lnet/minecraft/server/ServerLinks; createServerLinks a method_60940 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)V handleConsoleInput a method_13947 + p 1 msg + p 2 source + m (Ljava/net/URI;)Lnet/minecraft/server/ServerLinks; method_60941 a method_60941 + m (ZLnet/minecraft/server/dedicated/DedicatedServerProperties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; method_16711 a method_16711 + m ()V waitForRetry bD method_13942 + m ()Ljava/lang/String; method_13943 bE method_13943 + m ()Ljava/lang/String; method_13946 bF method_13946 + m ()V handleConsoleInputs br method_13941 + m ()Lnet/minecraft/server/dedicated/DedicatedPlayerList; getPlayerList bs method_13949 + m ()V showGui bt method_13948 + m ()Z convertOldUsers bu method_13951 + m ()J getMaxTickLength bv method_13944 + m (Ljava/lang/String;)V method_20799 e method_20799 + m (Z)V storeUsingWhiteList i method_16712 + p 1 isStoreUsingWhiteList + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 settings + p 6 fixerUpper + p 7 services + p 8 progressListenerFactory + m ()V +c net/minecraft/server/dedicated/DedicatedServer$1 apn$1 net/minecraft/class_3176$1 + f Lnet/minecraft/server/dedicated/DedicatedServer; field_13822 a field_13822 + m (Lnet/minecraft/server/dedicated/DedicatedServer;Ljava/lang/String;)V +c net/minecraft/server/dedicated/DedicatedServerProperties apo net/minecraft/class_3806 + f I spawnProtection A field_16816 + f I opPermissionLevel B field_16845 + f I functionPermissionLevel C field_20324 + f J maxTickTime D field_16815 + f I maxChainedNeighborUpdates E field_37275 + f I rateLimitPacketsPerSecond F field_25802 + f I viewDistance G field_16844 + f I simulationDistance H field_34883 + f I maxPlayers I field_16814 + f I networkCompressionThreshold J field_16842 + f Z broadcastRconToOps K field_16824 + f Z broadcastConsoleToOps L field_16802 + f I maxWorldSize M field_16812 + f Z syncChunkWrites N field_23785 + f Ljava/lang/String; regionFileComression O field_48711 + f Z enableJmxMonitoring P field_24056 + f Z enableStatus Q field_24453 + f Z hideOnlinePlayers R field_35564 + f I entityBroadcastRangePercentage S field_24454 + f Ljava/lang/String; textFilteringConfig T field_26899 + f Ljava/util/Optional; serverResourcePackInfo U field_39093 + f Lnet/minecraft/world/level/DataPackConfig; initialDataPackConfiguration V field_39981 + f Lnet/minecraft/server/dedicated/Settings$MutableValue; playerIdleTimeout W field_16817 + f Lnet/minecraft/server/dedicated/Settings$MutableValue; whiteList X field_16804 + f Z enforceSecureProfile Y field_39018 + f Z logIPs Z field_44985 + f Z onlineMode a field_16813 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions aa field_24623 + f Z acceptsTransfers ab field_48270 + f Lorg/slf4j/Logger; LOGGER ad field_37276 + f Ljava/util/regex/Pattern; SHA1 ae field_39094 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER af field_39982 + f Lnet/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData; worldDimensionData ag field_39983 + f Z preventProxyConnections b field_16839 + f Ljava/lang/String; serverIp c field_16829 + f Z spawnAnimals d field_16836 + f Z spawnNpcs e field_16809 + f Z pvp f field_16833 + f Z allowFlight g field_16807 + f Ljava/lang/String; motd h field_16825 + f Ljava/lang/String; bugReportLink i field_51987 + f Z forceGameMode j field_16827 + f Z enforceWhitelist k field_16805 + f Lnet/minecraft/world/Difficulty; difficulty l field_16840 + f Lnet/minecraft/world/level/GameType; gamemode m field_16841 + f Ljava/lang/String; levelName n field_16820 + f I serverPort o field_16837 + f Ljava/lang/Boolean; announcePlayerAchievements p field_16830 + f Z enableQuery q field_16819 + f I queryPort r field_16831 + f Z enableRcon s field_16818 + f I rconPort t field_16828 + f Ljava/lang/String; rconPassword u field_16823 + f Z hardcore v field_16838 + f Z allowNether w field_16811 + f Z spawnMonsters x field_16835 + f Z useNativeTransport y field_16832 + f Z enableCommandBlock z field_16806 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_27905 a method_27905 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/util/Optional; getServerPackInfo a method_43660 + p 0 id + p 1 url + p 2 sha1 + p 3 hash + p 4 isRequired + p 5 promptJson + m (Ljava/nio/file/Path;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; fromFile a method_16714 + p 0 path + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; createDimensions a method_45157 + p 1 registryAccess + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/Properties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; reload a method_16713 + p 1 registryAccess + p 2 properties + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_16715 b method_16715 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/DataPackConfig; getDatapackConfig b method_45159 + p 0 initalEnabledPacks + p 1 initialDisabledPacks + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; parseResourcePackPrompt c method_43661 + p 0 json + m (Ljava/lang/String;)Ljava/lang/String; method_41005 d method_41005 + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; method_41186 e method_41186 + m (Ljava/util/Properties;)V + p 1 properties + m ()V +c net/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData apo$a net/minecraft/class_3806$class_7044 + f Lcom/google/gson/JsonObject; generatorSettings a comp_459 + f Ljava/lang/String; levelType b comp_461 + f Ljava/util/Map; LEGACY_PRESET_NAMES c field_37277 + m ()Lcom/google/gson/JsonObject; generatorSettings a comp_459 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_41244 a method_41244 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder$Reference; method_45161 a method_45161 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_41241 a method_41241 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; create a method_41242 + p 1 registryAccess + m ()Ljava/lang/String; levelType b comp_461 + m ()Ljava/util/Optional; method_41245 c method_41245 + m ()Ljava/lang/IllegalStateException; method_41246 d method_41246 + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)V + m ()V +c net/minecraft/server/dedicated/DedicatedServerSettings app net/minecraft/class_3807 + f Ljava/nio/file/Path; source a field_16846 + f Lnet/minecraft/server/dedicated/DedicatedServerProperties; properties b field_16847 + m ()Lnet/minecraft/server/dedicated/DedicatedServerProperties; getProperties a method_16717 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/server/dedicated/DedicatedServerSettings; update a method_16718 + p 1 propertiesOperator + m ()V forceSave b method_16719 + m (Ljava/nio/file/Path;)V + p 1 source +c net/minecraft/server/dedicated/ServerWatchdog apq net/minecraft/class_3178 + f Lorg/slf4j/Logger; LOGGER a field_13825 + f J MAX_SHUTDOWN_TIME b field_29664 + f I SHUTDOWN_STATUS c field_29665 + f Lnet/minecraft/server/dedicated/DedicatedServer; server d field_13823 + f J maxTickTimeNanos e field_46927 + m ()V exit a method_13954 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/lang/String; method_31376 a method_31376 + m ()Ljava/lang/String; method_31377 b method_31377 + m ()Ljava/lang/String; method_31378 c method_31378 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)V + p 1 server + m ()V +c net/minecraft/server/dedicated/ServerWatchdog$1 apq$1 net/minecraft/class_3178$1 + m (Lnet/minecraft/server/dedicated/ServerWatchdog;)V +c net/minecraft/server/dedicated/Settings apr net/minecraft/class_3808 + f Lorg/slf4j/Logger; LOGGER a field_16849 + f Ljava/util/Properties; properties ac field_16848 + m ()Ljava/util/Properties; cloneProperties a method_16723 + m (Ljava/lang/String;)Ljava/lang/String; getLegacyString a method_16738 + p 1 key + m (Ljava/lang/String;I)I get a method_16726 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;J)J get a method_16725 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; get a method_16732 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object; getLegacy a method_16742 + p 1 key + p 2 serializer + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16737 + p 1 key + p 2 mapper + p 3 value + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16741 + p 1 key + p 2 serializer + p 3 deserializer + p 4 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16735 + p 1 key + p 2 serializer + p 3 modifier + p 4 deserializer + p 5 defaultValue + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;I)I get a method_16720 + p 1 key + p 2 modifier + p 3 defaultValue + m (Ljava/lang/String;Z)Z get a method_16740 + p 1 key + p 2 defaultValue + m (Ljava/util/function/Function;)Ljava/util/function/Function; wrapNumberDeserializer a method_16721 + p 0 parseFunc + m (Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Number; method_16733 a method_16733 + m (Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/lang/String;)Ljava/lang/Object; method_16731 a method_16731 + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;)Ljava/util/function/Function; dispatchNumberOrString a method_16722 + p 0 byId + p 1 byName + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Object; method_16729 a method_16729 + m (Ljava/lang/String;)Ljava/lang/Boolean; getLegacyBoolean b method_16736 + p 1 key + m (Ljava/lang/String;I)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16743 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16730 + p 1 key + p 2 serializer + p 3 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16724 + p 1 key + p 2 serializer + p 3 deserializer + p 4 defaultValue + m (Ljava/lang/String;Z)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16744 + p 1 key + p 2 defaultValue + m (Ljava/nio/file/Path;)Ljava/util/Properties; loadFromFile b method_16727 + p 0 path + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/Properties;)Lnet/minecraft/server/dedicated/Settings; reload b method_16739 + p 1 registryAccess + p 2 properties + m (Ljava/lang/String;)Ljava/lang/String; getStringRaw c method_16734 + p 1 key + m (Ljava/nio/file/Path;)V store c method_16728 + p 1 path + m (Ljava/util/Properties;)V + p 1 properties + m ()V +c net/minecraft/server/dedicated/Settings$MutableValue apr$a net/minecraft/class_3808$class_3809 + f Lnet/minecraft/server/dedicated/Settings; field_16853 a field_16853 + f Ljava/lang/String; key b field_16852 + f Ljava/lang/Object; value c field_16850 + f Ljava/util/function/Function; serializer d field_16851 + m (Lnet/minecraft/core/RegistryAccess;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings; update a method_16745 + p 1 registryAccess + p 2 newValue + m (Lnet/minecraft/server/dedicated/Settings;Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;)V + p 2 key + p 3 value + p 4 serializer +c net/minecraft/server/dedicated/package-info aps net/minecraft/class_5976 +c net/minecraft/server/gui/MinecraftServerGui apt net/minecraft/class_3182 + f Ljava/awt/Font; MONOSPACED a field_13837 + f Lorg/slf4j/Logger; LOGGER b field_13840 + f Ljava/lang/String; TITLE c field_29666 + f Ljava/lang/String; SHUTDOWN_TITLE d field_29667 + f Lnet/minecraft/server/dedicated/DedicatedServer; server e field_13839 + f Ljava/lang/Thread; logAppenderThread f field_13838 + f Ljava/util/Collection; finalizers g field_16855 + f Ljava/util/concurrent/atomic/AtomicBoolean; isClosing h field_16854 + m ()V start a method_13974 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)Lnet/minecraft/server/gui/MinecraftServerGui; showFrameFor a method_13969 + p 0 server + m (Ljava/lang/Runnable;)V addFinalizer a method_16746 + p 1 finalizer + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;)V method_13972 a method_13972 + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;Ljava/lang/String;)V print a method_13970 + p 1 textArea + p 2 scrollPane + p 3 line + m (Ljavax/swing/JTextField;Ljava/awt/event/ActionEvent;)V method_13977 a method_13977 + m ()V close b method_16750 + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;Ljava/lang/String;)V method_13971 b method_13971 + m ()Ljavax/swing/JComponent; buildInfoPanel c method_13976 + c Generates new StatsComponent and returns it. + m ()Ljavax/swing/JComponent; buildPlayerPanel d method_13975 + c Generates new PlayerListComponent and returns it. + m ()Ljavax/swing/JComponent; buildChatPanel e method_13973 + m ()V runFinalizers f method_16747 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)V + p 1 server + m ()V +c net/minecraft/server/gui/MinecraftServerGui$1 apt$1 net/minecraft/class_3182$1 + f Lnet/minecraft/server/gui/MinecraftServerGui; val$gui a field_16857 + f Ljavax/swing/JFrame; val$frame b field_16856 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$server c field_13841 + m (Lnet/minecraft/server/gui/MinecraftServerGui;Ljavax/swing/JFrame;Lnet/minecraft/server/dedicated/DedicatedServer;)V +c net/minecraft/server/gui/MinecraftServerGui$2 apt$2 net/minecraft/class_3182$2 + m (Lnet/minecraft/server/gui/MinecraftServerGui;)V +c net/minecraft/server/gui/PlayerListComponent apu net/minecraft/class_3184 + f Lnet/minecraft/server/MinecraftServer; server a field_13844 + f I tickCount b field_13843 + m ()V tick a method_18700 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/gui/StatsComponent apv net/minecraft/class_3186 + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_13846 + f [I values b field_13845 + f I vp c field_13848 + f [Ljava/lang/String; msgs d field_13847 + f Lnet/minecraft/server/MinecraftServer; server e field_13849 + f Ljavax/swing/Timer; timer f field_16858 + m ()V close a method_16751 + m (Ljava/awt/event/ActionEvent;)V method_13983 a method_13983 + m (Ljava/text/DecimalFormat;)V method_13981 a method_13981 + m ()V tick b method_13982 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/gui/package-info apw net/minecraft/class_5977 +c net/minecraft/server/level/BlockDestructionProgress apx net/minecraft/class_3191 + f I id a field_13859 + f Lnet/minecraft/core/BlockPos; pos b field_13860 + f I progress c field_13858 + f I updatedRenderTick d field_13857 + m ()I getId a method_34868 + m (I)V setProgress a method_13987 + c Inserts damage value into this partially destroyed Block. -1 causes client renderer to delete it, otherwise ranges from 1 to 10. + p 1 damage + m (Lnet/minecraft/server/level/BlockDestructionProgress;)I compareTo a method_23269 + p 1 other + m ()Lnet/minecraft/core/BlockPos; getPos b method_13991 + m (I)V updateTick b method_13989 + c Saves the current Cloud update tick into the PartiallyDestroyedBlock. + p 1 createdAtCloudUpdateTick + m ()I getProgress c method_13988 + m ()I getUpdatedRenderTick d method_13990 + c Retrieves the 'date' at which the PartiallyDestroyedBlock was created. + m (ILnet/minecraft/core/BlockPos;)V + p 1 id + p 2 pos +c net/minecraft/server/level/ChunkGenerationTask apy net/minecraft/class_9759 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a field_51850 + f Lnet/minecraft/server/level/GeneratingChunkMap; chunkMap b field_51851 + f Lnet/minecraft/world/level/ChunkPos; pos c field_51852 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; scheduledStatus d field_51853 + f Z markedForCancellation e field_51854 + f Ljava/util/List; scheduledLayer f field_51855 + f Lnet/minecraft/util/StaticCache2D; cache g field_51856 + f Z needsGeneration h field_51857 + m ()Ljava/util/concurrent/CompletableFuture; runUntilWait a method_60424 + m (Lnet/minecraft/server/level/GeneratingChunkMap;II)Lnet/minecraft/server/level/GenerationChunkHolder; method_60425 a method_60425 + m (Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/server/level/ChunkGenerationTask; create a method_60426 + p 0 chunkMap + p 1 targetStatus + p 2 pos + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Z)V scheduleLayer a method_60427 + p 1 status + p 2 needsGeneration + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;ZLnet/minecraft/server/level/GenerationChunkHolder;)Z scheduleChunkInLayer a method_60428 + p 1 status + p 2 needsGeneration + p 3 chunk + m ()V markForCancellation b method_60429 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Z)I getRadiusForLayer b method_60430 + p 1 status + p 2 needsGeneration + m ()Lnet/minecraft/server/level/GenerationChunkHolder; getCenter c method_60431 + m ()V scheduleNextLayer d method_60432 + m ()V releaseClaim e method_60433 + m ()Z canLoadWithoutGeneration f method_60434 + m ()Ljava/util/concurrent/CompletableFuture; waitForScheduledLayer g method_60435 + m (Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/util/StaticCache2D;)V + p 1 chunkMap + p 2 targetStatus + p 3 pos + p 4 cache +c net/minecraft/server/level/ChunkHolder apz net/minecraft/class_3193 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_LEVEL_CHUNK a field_16427 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_LEVEL_CHUNK_FUTURE e field_16429 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor f field_26929 + f Ljava/util/concurrent/CompletableFuture; fullChunkFuture g field_16431 + c A future that returns the chunk if it is a border chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f Ljava/util/concurrent/CompletableFuture; tickingChunkFuture h field_19333 + c A future that returns the chunk if it is a ticking chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f Ljava/util/concurrent/CompletableFuture; entityTickingChunkFuture i field_13865 + c A future that returns the chunk if it is an entity ticking chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f I oldTicketLevel j field_16432 + f I ticketLevel k field_13862 + f I queueLevel l field_17208 + f Z hasChangedSections m field_25803 + f [Lit/unimi/dsi/fastutil/shorts/ShortSet; changedBlocksPerSection n field_25804 + f Ljava/util/BitSet; blockChangedLightSectionFilter o field_13871 + f Ljava/util/BitSet; skyChangedLightSectionFilter p field_13870 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine q field_13863 + f Lnet/minecraft/server/level/ChunkHolder$LevelChangeListener; onLevelChange r field_17209 + f Lnet/minecraft/server/level/ChunkHolder$PlayerProvider; playerProvider s field_17210 + f Z wasAccessibleSinceLastSave t field_19238 + f Ljava/util/concurrent/CompletableFuture; pendingFullStateConfirmation u field_26930 + f Ljava/util/concurrent/CompletableFuture; sendSync v field_46085 + f Ljava/util/concurrent/CompletableFuture; saveSync w field_51858 + m ()Ljava/util/concurrent/CompletableFuture; getTickingChunkFuture a method_16145 + m (I)V setTicketLevel a method_15890 + p 1 level + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)V demoteFullChunk a method_31408 + p 1 chunkMap + p 2 fullChunkStatus + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;Lnet/minecraft/server/level/FullChunkStatus;)V scheduleFullChunkPromotion a method_31409 + p 1 chunkMap + p 2 future + p 3 executor + p 4 fullChunkStatus + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/Executor;)V updateFutures a method_14007 + p 1 chunkMap + p 2 executor + m (Lnet/minecraft/world/level/LightLayer;I)V sectionLightChanged a method_14012 + p 1 type + p 2 sectionY + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V broadcastChanges a method_14006 + p 1 chunk + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_39966 a method_39966 + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V broadcastBlockEntity a method_14009 + p 1 players + p 2 level + p 3 pos + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V broadcastBlockEntityIfNeeded a method_30311 + p 1 players + p 2 level + p 3 pos + p 4 state + m (Ljava/util/List;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_13992 + p 1 players + p 2 packet + m (Ljava/util/concurrent/CompletableFuture;)V addSendDependency a method_53680 + p 1 dependency + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/server/level/ChunkResult;)V method_57117 a method_57117 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_31410 a method_31410 + m (Lnet/minecraft/core/BlockPos;)V blockChanged a method_14002 + p 1 pos + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/server/level/ServerPlayer;)V method_13996 a method_13996 + m ()Ljava/util/concurrent/CompletableFuture; getEntityTickingChunkFuture b method_14003 + m (I)V setQueueLevel b method_17207 + p 1 queueLevel + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)V method_31412 b method_31412 + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_53679 b method_53679 + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_30312 b method_30312 + m (Ljava/util/concurrent/CompletableFuture;)V addSaveDependency b method_39967 + p 1 dependency + m ()Ljava/util/concurrent/CompletableFuture; getFullChunkFuture c method_20725 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getTickingChunk d method_16144 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getChunkToSend e method_53682 + m ()Ljava/util/concurrent/CompletableFuture; getSendSyncFuture f method_53681 + m ()Ljava/util/concurrent/CompletableFuture; getSaveSyncFuture g method_14000 + m ()Z isReadyForSaving h method_60436 + m ()Z wasAccessibleSinceLastSave k method_20384 + m ()V refreshAccessibility l method_20385 + m (Lnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/server/level/ChunkHolder$LevelChangeListener;Lnet/minecraft/server/level/ChunkHolder$PlayerProvider;)V + p 1 pos + p 2 ticketLevel + p 3 levelHeightAccessor + p 4 lightEngine + p 5 onLevelChange + p 6 playerProvider + m ()V +c net/minecraft/server/level/ChunkHolder$LevelChangeListener apz$a net/minecraft/class_3193$class_3896 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/IntSupplier;ILjava/util/function/IntConsumer;)V onLevelChange onLevelChange method_17209 + p 1 chunkPos + p 2 queueLevelGetter + p 3 ticketLevel + p 4 queueLevelSetter +c net/minecraft/server/level/ChunkHolder$PlayerProvider apz$b net/minecraft/class_3193$class_3897 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/util/List; getPlayers a method_17210 + c Returns the players tracking the given chunk. + p 1 pos + p 2 boundaryOnly +c net/minecraft/server/level/ChunkLevel aqa net/minecraft/class_8563 + f I RADIUS_AROUND_FULL_CHUNK a field_51859 + f I MAX_LEVEL b field_44849 + f I FULL_CHUNK_LEVEL c field_44850 + f I BLOCK_TICKING_LEVEL d field_44851 + f I ENTITY_TICKING_LEVEL e field_44852 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; FULL_CHUNK_STEP f field_51860 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; generationStatus a method_51827 + p 0 level + m (ILnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatusAroundFullChunk a method_60437 + p 0 distance + p 1 chunkStatus + m (Lnet/minecraft/server/level/FullChunkStatus;)I byStatus a method_51828 + p 0 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I byStatus a method_51829 + p 0 status + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatusAroundFullChunk b method_60438 + p 0 distance + m (I)Lnet/minecraft/server/level/FullChunkStatus; fullStatus c method_51830 + p 0 level + m (I)Z isEntityTicking d method_51831 + p 0 level + m (I)Z isBlockTicking e method_51832 + p 0 level + m (I)Z isLoaded f method_51833 + p 0 level + m ()V + m ()V +c net/minecraft/server/level/ChunkLevel$1 aqa$1 net/minecraft/class_8563$1 + f [I $SwitchMap$net$minecraft$server$level$FullChunkStatus a field_44853 + m ()V +c net/minecraft/server/level/ChunkMap aqb net/minecraft/class_3898 + f Z modified A field_17222 + c True if changes have been made to {@link #loadedChunks} and thus a new copy of the collection has to be made into {@link #immutableLoadedChunks}. + f Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter; queueSorter B field_17223 + f Lnet/minecraft/util/thread/ProcessorHandle; worldgenMailbox C field_17224 + f Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailbox D field_17226 + f Lnet/minecraft/server/level/progress/ChunkProgressListener; progressListener E field_17442 + f Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener; chunkStatusListener F field_26931 + f Lnet/minecraft/server/level/ChunkMap$DistanceManager; distanceManager G field_17228 + f Ljava/util/concurrent/atomic/AtomicInteger; tickingGenerated H field_17230 + f Ljava/lang/String; storageName I field_17707 + f Lnet/minecraft/server/level/PlayerMap; playerMap J field_18241 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; entityMap K field_18242 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunkTypeCache L field_23786 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; chunkSaveCooldowns M field_36383 + f Ljava/util/Queue; unloadQueue N field_19343 + f I serverViewDistance O field_18243 + f Lnet/minecraft/world/level/chunk/status/WorldGenContext; worldGenContext P field_51861 + f I MIN_VIEW_DISTANCE a field_29675 + f I MAX_VIEW_DISTANCE b field_29669 + f I FORCED_TICKET_LEVEL c field_29670 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_CHUNK_LIST_RESULT f field_51862 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_CHUNK_LIST_FUTURE g field_51863 + f B CHUNK_TYPE_REPLACEABLE h field_29671 + f B CHUNK_TYPE_UNKNOWN i field_29672 + f B CHUNK_TYPE_FULL j field_29673 + f Lorg/slf4j/Logger; LOGGER k field_17212 + f I CHUNK_SAVED_PER_TICK l field_29674 + f I CHUNK_SAVED_EAGERLY_PER_TICK m field_36291 + f I EAGER_CHUNK_SAVE_COOLDOWN_IN_MILLIS n field_36384 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; updatingChunkMap o field_17213 + c Chunks in memory. This should only ever be manipulated by the main thread. + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; visibleChunkMap p field_17220 + c Same as {@link #loadedChunks}, but immutable for access from other threads. This should never be mutated. + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; pendingUnloads q field_18807 + f Ljava/util/List; pendingGenerationTasks r field_51864 + f Lnet/minecraft/server/level/ServerLevel; level s field_17214 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine t field_17215 + f Lnet/minecraft/util/thread/BlockableEventLoop; mainThreadExecutor u field_17216 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState v field_37278 + f Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; chunkGeneratorState w field_40856 + f Ljava/util/function/Supplier; overworldDataStorage x field_17705 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager; poiManager y field_18808 + f Lit/unimi/dsi/fastutil/longs/LongSet; toDrop z field_17221 + c Chunks that have been requested to be unloaded, but haven't been unloaded yet. + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator a method_37897 + m (I)V setServerViewDistance a method_17214 + p 1 viewDistance + m (J)Lnet/minecraft/server/level/ChunkHolder; getUpdatingChunkIfPresent a method_17255 + p 1 chunkPos + m (JILnet/minecraft/server/level/ChunkHolder;I)Lnet/minecraft/server/level/ChunkHolder; updateChunkScheduling a method_17217 + c Sets level and loads/unloads chunk. + p 1 chunkPos + p 3 newLevel + p 4 holder + c The {@link net.minecraft.server.level.ChunkHolder} of the chunk if it is loaded, and null otherwise. + p 5 oldLevel + m (JLnet/minecraft/server/level/ChunkHolder;)V scheduleUnload a method_20458 + p 1 chunkPos + p 3 chunkHolder + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V runGenerationTask a method_60439 + p 1 task + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareEntityTickingChunk a method_17247 + p 1 chunk + m (Lnet/minecraft/server/level/ChunkHolder;ILjava/util/function/IntFunction;)Ljava/util/concurrent/CompletableFuture; getChunkRangeFuture a method_17220 + p 1 chunkHolder + p 2 range + p 3 statusGetter + m (Lnet/minecraft/server/level/ChunkHolder;J)V method_60440 a method_60440 + m (Lnet/minecraft/server/level/ChunkHolder;Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_53683 a method_53683 + m (Lnet/minecraft/server/level/ChunkHolder;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_53684 a method_53684 + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Runnable;)V method_20579 a method_20579 + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Void;Ljava/lang/Throwable;)V method_20604 a method_20604 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_20577 a method_20577 + m (Lnet/minecraft/server/level/ChunkResult;Ljava/lang/Throwable;)Ljava/lang/Object; method_51834 a method_51834 + m (Lnet/minecraft/server/level/ServerPlayer;)V move a method_18713 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;II)Z isChunkTracked a method_52345 + c Checks if a chunk is within a player's view distance. + p 1 player + p 2 x + p 3 z + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/level/ChunkTrackingView;)V applyChunkTrackingView a method_52346 + p 1 player + p 2 chunkTrackingView + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V markChunkPendingToSend a method_52347 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/chunk/LevelChunk;)V markChunkPendingToSend a method_52348 + p 0 player + p 1 chunk + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/List;)V method_49420 a method_49420 + m (Lnet/minecraft/server/level/ServerPlayer;Z)V updatePlayerStatus a method_18714 + p 1 player + p 2 track + m (Lnet/minecraft/world/entity/Entity;)V addEntity a method_18701 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_18702 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; getChunkDebugData a method_23272 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;I)V waitForLightBeforeSending a method_53685 + p 1 chunkPos + p 2 range + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V onFullChunkStatusChange a method_31414 + p 1 chunkPos + p 2 fullChunkStatus + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/Entity;)D euclideanDistanceSquared a method_18704 + c Returns the squared distance to the center of the chunk. + p 0 chunkPos + p 1 entity + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkType;)B markPosition a method_27053 + p 1 chunkPos + p 2 chunkType + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_57120 a method_57120 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_43375 a method_43375 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z save a method_17228 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V onChunkReadyToSend a method_53686 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;Ljava/lang/Object;)V method_53687 a method_53687 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;)Ljava/lang/String; method_60444 a method_60444 + m (Ljava/io/Writer;)V dumpChunks a method_21619 + p 1 writer + m (Ljava/lang/IllegalStateException;Ljava/lang/String;)Lnet/minecraft/ReportedException; debugFuturesAndCreateReportedException a method_40067 + p 1 exception + p 2 details + m (Ljava/lang/StringBuilder;Lnet/minecraft/server/level/ChunkHolder;)V method_40068 a method_40068 + m (Ljava/lang/StringBuilder;Lnet/minecraft/server/level/ChunkHolder;Lcom/mojang/datafixers/util/Pair;)V method_40069 a method_40069 + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; handleChunkLoadFailure a method_43376 + p 1 exception + p 2 chunkPos + m (Ljava/util/List;)V resendBiomesForChunks a method_49421 + p 1 chunks + m (Ljava/util/Optional;)Ljava/util/Optional; method_43377 a method_43377 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/lang/String; printFuture a method_21676 + p 0 future + m (Ljava/util/function/BooleanSupplier;)V tick a method_17233 + p 1 hasMoreTime + m (Lnet/minecraft/CrashReport;)V method_60445 a method_60445 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_20578 a method_20578 + m (Z)V saveAllChunks a method_17242 + p 1 flush + m ()Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; generatorState b method_46641 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; method_17245 b method_17245 + m (J)Lnet/minecraft/server/level/ChunkHolder; getVisibleChunkIfPresent b method_17216 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V method_60446 b method_60446 + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareTickingChunk b method_17235 + p 1 holder + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Runnable;)V method_19487 b method_19487 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_41235 b method_41235 + m (Lnet/minecraft/server/level/ServerPlayer;)I getPlayerViewDistance b method_52350 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;II)Z isChunkOnTrackedBorder b method_52351 + c Checks if a chunk is on the edge of the player's view distance. + p 1 player + p 2 x + p 3 z + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V dropChunk b method_52352 + p 0 player + p 1 chunkPos + m (Lnet/minecraft/world/entity/Entity;)V removeEntity b method_18716 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend b method_18717 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Z anyPlayerCloseEnoughForSpawning b method_38783 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_43374 b method_43374 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Ljava/util/Optional; method_43378 b method_43378 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Z method_43379 b method_43379 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/Optional; method_21620 b method_21620 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_39220 b method_39220 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_31416 b method_31416 + m (Ljava/util/function/BooleanSupplier;)V processUnloads b method_20605 + p 1 hasMoreTime + m (Lnet/minecraft/nbt/CompoundTag;)Z isChunkDataValid b method_43380 + p 0 tag + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c method_41247 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; method_17254 c method_17254 + m (J)Ljava/util/function/IntSupplier; getChunkQueueLevel c method_17604 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V method_60447 c method_60447 + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareAccessibleChunk c method_31417 + p 1 holder + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_17230 c method_17230 + m (Lnet/minecraft/server/level/ServerPlayer;)Z skipPlayer c method_18722 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)Z playerIsCloseEnoughForSpawning c method_38782 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; getPlayersCloseForSpawning c method_37907 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z method_20582 c method_20582 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_39221 c method_39221 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_41234 c method_41234 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag c method_43381 + p 1 tag + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; getLightEngine d method_17212 + m (Lnet/minecraft/server/level/ChunkHolder;)Z saveChunkIfNeeded d method_39925 + p 1 holder + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_51282 d method_51282 + m (Lnet/minecraft/server/level/ServerPlayer;)V updatePlayerPos d method_20726 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V method_52354 d method_52354 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_21621 d method_21621 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_17232 d method_17232 + m ()Z hasWork e method_39992 + m (J)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkToSend e method_53688 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkHolder;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_20584 e method_20584 + m (Lnet/minecraft/server/level/ServerPlayer;)V updateChunkTracking e method_17241 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V method_52355 e method_52355 + m (Ljava/util/List;)Lnet/minecraft/server/level/ChunkResult; method_60449 e method_60449 + m ()Z promoteChunkMap f method_17244 + m (J)I method_17605 f method_17605 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/List; method_49422 f method_49422 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; scheduleChunkLoad f method_20619 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; createEmptyChunk g method_43382 + p 1 chunkPos + m ()I getTickingGenerated h method_17253 + m (Lnet/minecraft/world/level/ChunkPos;)V markPositionReplaceable h method_27054 + p 1 chunkPos + m ()I size i method_17260 + m (Lnet/minecraft/world/level/ChunkPos;)Z isExistingChunkFull i method_27055 + p 1 chunkPos + m ()Lnet/minecraft/server/level/DistanceManager; getDistanceManager j method_17263 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; readChunk j method_43383 + p 1 pos + m ()Ljava/lang/Iterable; getChunks k method_17264 + c Gets an unmodifiable iterable of all loaded chunks in the chunk manager + m (Lnet/minecraft/world/level/ChunkPos;)V method_53689 k method_53689 + m ()V tick l method_18727 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager m method_19488 + m ()Ljava/lang/String; getStorageName n method_37476 + m ()Z method_20606 r method_20606 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/concurrent/Executor;Lnet/minecraft/util/thread/BlockableEventLoop;Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/server/level/progress/ChunkProgressListener;Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener;Ljava/util/function/Supplier;IZ)V + p 1 level + p 2 levelStorageAccess + p 3 fixerUpper + p 4 structureManager + p 5 dispatcher + p 6 mainThreadExecutor + p 7 lightChunk + p 8 generator + p 9 progressListener + p 10 chunkStatusListener + p 11 overworldDataStorage + p 12 viewDistance + p 13 sync + m ()V +c net/minecraft/server/level/ChunkMap$DistanceManager aqb$a net/minecraft/class_3898$class_3216 + f Lnet/minecraft/server/level/ChunkMap; field_17443 a field_17443 + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 2 dispatcher + p 3 mainThreadExecutor +c net/minecraft/server/level/ChunkMap$TrackedEntity aqb$b net/minecraft/class_3898$class_3208 + f Lnet/minecraft/server/level/ChunkMap; field_18245 a field_18245 + f Lnet/minecraft/server/level/ServerEntity; serverEntity b field_18246 + f Lnet/minecraft/world/entity/Entity; entity c field_18247 + f I range d field_18248 + f Lnet/minecraft/core/SectionPos; lastSectionPos e field_18249 + f Ljava/util/Set; seenBy f field_18250 + m ()V broadcastRemoved a method_18728 + m (I)I scaledRange a method_27906 + p 1 trackingDistance + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer a method_18733 + p 1 player + m (Ljava/util/List;)V updatePlayers a method_18729 + p 1 playersList + m (Lnet/minecraft/network/protocol/Packet;)V broadcast a method_18730 + p 1 packet + m ()I getEffectiveRange b method_22844 + m (Lnet/minecraft/server/level/ServerPlayer;)V updatePlayer b method_18736 + p 1 player + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend b method_18734 + p 1 packet + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/entity/Entity;IIZ)V + p 2 entity + p 3 range + p 4 updateInterval + p 5 trackDelta +c net/minecraft/server/level/ChunkResult aqc net/minecraft/class_9259 + m ()Z isSuccess a method_57122 + m (Lnet/minecraft/server/level/ChunkResult;Ljava/lang/Object;)Ljava/lang/Object; orElse a method_57123 + p 0 chunkResult + p 1 orElse + m (Ljava/lang/Object;)Lnet/minecraft/server/level/ChunkResult; of a method_57124 + p 0 value + m (Ljava/lang/String;)Lnet/minecraft/server/level/ChunkResult; error a method_57125 + p 0 error + m (Ljava/util/function/Consumer;)Lnet/minecraft/server/level/ChunkResult; ifSuccess a method_57126 + p 1 action + m (Ljava/util/function/Function;)Lnet/minecraft/server/level/ChunkResult; map a method_57127 + p 1 mappingFunction + m (Ljava/util/function/Supplier;)Lnet/minecraft/server/level/ChunkResult; error a method_57128 + p 0 errorSupplier + m ()Ljava/lang/String; getError b method_57129 + m (Ljava/lang/Object;)Ljava/lang/Object; orElse b method_57130 + p 1 value + m (Ljava/lang/String;)Ljava/lang/String; method_57131 b method_57131 + m (Ljava/util/function/Supplier;)Ljava/lang/Object; orElseThrow b method_57132 + p 1 exceptionSupplier +c net/minecraft/server/level/ChunkResult$Fail aqc$a net/minecraft/class_9259$class_9260 + f Ljava/util/function/Supplier; error a comp_2367 + m ()Ljava/util/function/Supplier; error c comp_2367 + m (Ljava/util/function/Supplier;)V +c net/minecraft/server/level/ChunkResult$Success aqc$b net/minecraft/class_9259$class_9261 + f Ljava/lang/Object; value a comp_2368 + m ()Ljava/lang/Object; value c comp_2368 + m (Ljava/lang/Object;)V +c net/minecraft/server/level/ChunkTaskPriorityQueue aqd net/minecraft/class_3899 + f I PRIORITY_LEVEL_COUNT a field_17241 + f Ljava/util/List; taskQueue b field_17243 + f I firstQueue c field_17244 + f Ljava/lang/String; name d field_17247 + f Lit/unimi/dsi/fastutil/longs/LongSet; acquired e field_17444 + f I maxTasks f field_17445 + m ()Ljava/util/stream/Stream; pop a method_17606 + m (I)Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; method_17271 a method_17271 + m (ILnet/minecraft/world/level/ChunkPos;I)V resortChunkTasks a method_17272 + p 1 queueLevel + p 2 chunkPos + p 3 ticketLevel + m (J)Ljava/lang/Runnable; acquire a method_17607 + p 1 chunkPos + m (JLjava/util/Optional;)Lcom/mojang/datafixers/util/Either; method_17608 a method_17608 + m (JZ)V release a method_17609 + p 1 chunkPos + p 3 fullClear + m (Ljava/util/Optional;)Z method_17610 a method_17610 + m (Ljava/util/Optional;JI)V submit a method_17274 + p 1 task + p 2 chunkPos + p 4 chunkLevel + m ()Z hasWork b method_39993 + m (J)Lcom/mojang/datafixers/util/Either; method_17611 b method_17611 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAcquired c method_21679 + m (J)V method_17612 c method_17612 + m (J)Ljava/util/List; method_17273 d method_17273 + m (J)Ljava/util/List; method_17277 e method_17277 + m (Ljava/lang/String;I)V + p 1 name + p 2 maxTasks + m ()V +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter aqe net/minecraft/class_3900 + f Lorg/slf4j/Logger; LOGGER a field_17248 + f Ljava/util/Map; queues b field_17249 + f Ljava/util/Set; sleeping c field_17250 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox d field_17251 + m ()Z hasWork a method_39994 + m (I)[Ljava/util/concurrent/CompletableFuture; method_41236 a method_41236 + m (ILnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/server/level/ChunkTaskPriorityQueue; method_17613 a method_17613 + m (ILnet/minecraft/world/level/ChunkPos;ILnet/minecraft/server/level/ChunkTaskPriorityQueue;)V method_17280 a method_17280 + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;)V pollTask a method_17630 + p 1 queue + p 2 processor + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;Ljava/lang/Void;)V method_17631 a method_17631 + m (Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/lang/Runnable;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_17629 + p 0 chunk + p 1 task + m (Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/util/function/Function;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_34870 + p 0 chunk + p 1 task + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/ProcessorHandle; getReleaseProcessor a method_17614 + p 1 processor + m (Lnet/minecraft/util/thread/ProcessorHandle;JLjava/lang/Runnable;Z)V release a method_17615 + p 1 processor + p 2 chunkPos + p 4 task + p 5 clearQueue + m (Lnet/minecraft/util/thread/ProcessorHandle;JZLjava/lang/Runnable;)V method_17616 a method_17616 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release;)V method_17621 a method_17621 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_17617 a method_17617 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;Z)V method_17618 a method_17618 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lcom/mojang/datafixers/util/Either;)Ljava/util/concurrent/CompletableFuture; method_17619 a method_17619 + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/Function;JLjava/util/function/IntSupplier;Z)V submit a method_17282 + p 1 processor + p 2 task + p 3 chunkPos + p 5 level + p 6 flush + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/IntSupplier;JLjava/util/function/Function;Z)V method_17620 a method_17620 + m (Lnet/minecraft/util/thread/ProcessorHandle;Z)Lnet/minecraft/util/thread/ProcessorHandle; getProcessor a method_17622 + p 1 processor + p 2 flush + m (Lnet/minecraft/util/thread/ProcessorHandle;ZLnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message;)V method_17624 a method_17624 + m (Lnet/minecraft/util/thread/ProcessorHandle;ZLnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_17623 a method_17623 + m (Ljava/lang/Long;)Ljava/lang/String; method_21681 a method_21681 + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_17625 a method_17625 + m (Ljava/lang/Runnable;JLjava/util/function/IntSupplier;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_17626 + p 0 task + p 1 pos + p 3 level + m (Ljava/lang/Runnable;JZ)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release; release a method_17627 + p 0 task + p 1 pos + p 3 clearQueue + m (Ljava/lang/Runnable;Lnet/minecraft/util/thread/ProcessorHandle;)Ljava/lang/Runnable; method_17628 a method_17628 + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_21682 a method_21682 + m (Ljava/util/function/Function;JLjava/util/function/IntSupplier;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_34871 + p 0 task + p 1 pos + p 3 level + m (Ljava/util/function/IntSupplier;Lnet/minecraft/world/level/ChunkPos;ILjava/util/function/IntConsumer;)V method_17285 a method_17285 + m ()Ljava/lang/String; getDebugStatus b method_21680 + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17635 b method_17635 + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/server/level/ChunkTaskPriorityQueue; getQueue b method_17632 + p 1 processor + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17633 b method_17633 + m (Ljava/lang/Runnable;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17634 b method_17634 + m (Ljava/util/List;Ljava/util/concurrent/Executor;I)V + p 1 queues + p 2 task + p 3 maxTasks + m ()V +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message aqe$a net/minecraft/class_3900$class_3946 + f Ljava/util/function/Function; task a field_17446 + f J pos b field_17447 + f Ljava/util/function/IntSupplier; level c field_17448 + m (Ljava/util/function/Function;JLjava/util/function/IntSupplier;)V + p 1 task + p 2 pos + p 4 level +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release aqe$b net/minecraft/class_3900$class_3947 + f Ljava/lang/Runnable; task a field_17449 + f J pos b field_17450 + f Z clearQueue c field_17451 + m (Ljava/lang/Runnable;JZ)V + p 1 task + p 2 pos + p 4 clearQueue +c net/minecraft/server/level/ChunkTracker aqf net/minecraft/class_3196 + m (J)I getLevelFromSource b method_14028 + p 1 pos + m (JIZ)V update b method_14027 + p 1 pos + p 3 level + p 4 isDecreasing + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/server/level/ChunkTrackingView aqg net/minecraft/class_8603 + f Lnet/minecraft/server/level/ChunkTrackingView; EMPTY a field_44986 + m (II)Z contains a method_52356 + p 1 x + p 2 z + m (IIIII)Z isInViewDistance a method_52357 + p 0 centerX + p 1 centerZ + p 2 viewDistance + p 3 x + p 4 z + m (IIIIIZ)Z isWithinDistance a method_52358 + c Check if a chunk {@code (x,z)} is within a {@code viewDistance} which is centered on {@code (centerX, centerZ)} + p 0 centerX + p 1 centerZ + p 2 viewDistance + p 3 x + p 4 z + p 5 includeOuterChunksAdjacentToViewBorder + m (IIZ)Z contains a method_52359 + p 1 x + p 2 z + p 3 includeOuterChunksAdjacentToViewBorder + m (Lnet/minecraft/server/level/ChunkTrackingView;Lnet/minecraft/server/level/ChunkTrackingView;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V difference a method_52360 + c Calculates the chunks that the player needs to drop in the {@code oldChunkTrackingView} and the chunks that need to be sent for the {@code newChunkTrackingView}. The chunks that overlap in both views can be kept. + p 0 oldChunkTrackingView + p 1 newChunkTrackingView + p 2 chunkMarker + p 3 chunkDropper + m (Lnet/minecraft/world/level/ChunkPos;)Z contains a method_52361 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/server/level/ChunkTrackingView; of a method_52362 + p 0 center + p 1 viewDistance + m (Ljava/util/function/Consumer;)V forEach a method_52363 + p 1 action + m (II)Z isInViewDistance b method_52364 + p 1 x + p 2 z + m ()V +c net/minecraft/server/level/ChunkTrackingView$1 aqg$1 net/minecraft/class_8603$1 + m ()V +c net/minecraft/server/level/ChunkTrackingView$Positioned aqg$a net/minecraft/class_8603$class_8604 + f Lnet/minecraft/world/level/ChunkPos; center b comp_1574 + f I viewDistance c comp_1575 + m ()Lnet/minecraft/world/level/ChunkPos; center a comp_1574 + m (Lnet/minecraft/server/level/ChunkTrackingView$Positioned;)Z squareIntersects a method_52365 + c Determines if another {@link ChunkTrackingView}'s bounds intersects with its own + p 1 other + m ()I viewDistance b comp_1575 + m ()I minX c method_52366 + m ()I minZ d method_52367 + m ()I maxX e method_52368 + m ()I maxZ f method_52369 + m (Lnet/minecraft/world/level/ChunkPos;I)V +c net/minecraft/server/level/ClientInformation aqh net/minecraft/class_8791 + f I MAX_LANGUAGE_LENGTH a field_46155 + f Ljava/lang/String; language b comp_1951 + f I viewDistance c comp_1952 + f Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility d comp_1953 + f Z chatColors e comp_1954 + f I modelCustomisation f comp_1955 + f Lnet/minecraft/world/entity/HumanoidArm; mainHand g comp_1956 + f Z textFilteringEnabled h comp_1957 + f Z allowsListing i comp_1958 + m ()Lnet/minecraft/server/level/ClientInformation; createDefault a method_53821 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53822 + p 1 buffer + m ()Ljava/lang/String; language b comp_1951 + m ()I viewDistance c comp_1952 + m ()Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility d comp_1953 + m ()Z chatColors e comp_1954 + m ()I modelCustomisation f comp_1955 + m ()Lnet/minecraft/world/entity/HumanoidArm; mainHand g comp_1956 + m ()Z textFilteringEnabled h comp_1957 + m ()Z allowsListing i comp_1958 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;ILnet/minecraft/world/entity/player/ChatVisiblity;ZILnet/minecraft/world/entity/HumanoidArm;ZZ)V +c net/minecraft/server/level/ColumnPos aqi net/minecraft/class_2265 + f I x a comp_638 + f I z b comp_639 + f J COORD_BITS c field_29757 + f J COORD_MASK d field_29758 + m ()Lnet/minecraft/world/level/ChunkPos; toChunkPos a method_34873 + m (II)J asLong a method_34874 + p 0 x + p 1 z + m (J)I getX a method_42106 + p 0 pos + m ()J toLong b method_34875 + m (J)I getZ b method_42107 + p 0 pos + m ()I x c comp_638 + m ()I z d comp_639 + m (II)V +c net/minecraft/server/level/DemoMode aqj net/minecraft/class_3201 + f I DEMO_DAYS a field_29762 + f I TOTAL_PLAY_TICKS b field_29763 + f Z displayedIntro e field_13890 + f Z demoHasEnded f field_13889 + f I demoEndedReminder g field_13888 + f I gameModeTicks h field_13887 + m ()V outputDemoReminder f method_14031 + c Sends a message to the player reminding them that this is the demo version + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player +c net/minecraft/server/level/DistanceManager aqk net/minecraft/class_3204 + f Lorg/slf4j/Logger; LOGGER a field_16211 + f I PLAYER_TICKET_LEVEL b field_17452 + f I INITIAL_TICKET_LIST_CAPACITY c field_29765 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; playersPerChunk d field_17453 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; tickets e field_13895 + f Lnet/minecraft/server/level/DistanceManager$ChunkTicketTracker; ticketTracker f field_18252 + f Lnet/minecraft/server/level/DistanceManager$FixedPlayerDistanceChunkTracker; naturalSpawnChunkCounter g field_17454 + f Lnet/minecraft/server/level/TickingTracker; tickingTicketsTracker h field_34886 + f Lnet/minecraft/server/level/DistanceManager$PlayerTicketTracker; playerTicketManager i field_17455 + f Ljava/util/Set; chunksToUpdateFutures j field_16210 + f Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter; ticketThrottler k field_17456 + f Lnet/minecraft/util/thread/ProcessorHandle; ticketThrottlerInput l field_17457 + f Lnet/minecraft/util/thread/ProcessorHandle; ticketThrottlerReleaser m field_17458 + f Lit/unimi/dsi/fastutil/longs/LongSet; ticketsToRelease n field_17459 + f Ljava/util/concurrent/Executor; mainThreadExecutor o field_17460 + f J ticketTickCounter p field_13894 + f I simulationDistance q field_34887 + m ()V purgeStaleTickets a method_14045 + m (I)V updatePlayerTickets a method_14049 + p 1 viewDistance + m (J)Z isChunkToRemove a method_14035 + p 1 chunkPos + m (JILnet/minecraft/server/level/ChunkHolder;I)Lnet/minecraft/server/level/ChunkHolder; updateChunkScheduling a method_14053 + p 1 chunkPos + p 3 newLevel + p 4 holder + p 5 oldLevel + m (JLnet/minecraft/server/level/ChunkResult;)V method_17642 a method_17642 + m (JLnet/minecraft/server/level/Ticket;)V addTicket a method_14042 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/ChunkMap;)Z runAllUpdates a method_15892 + p 1 chunkMap + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/ChunkHolder;)V method_15891 a method_15891 + m (Lnet/minecraft/server/level/Ticket;)Z method_14040 a method_14040 + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addTicket a method_17290 + p 1 type + p 2 pos + p 3 level + p 4 value + m (Lnet/minecraft/util/SortedArraySet;)I getTicketLevelAt a method_14046 + c Gets the {@linkplain net.minecraft.server.level.Ticket#getTicketLevel level} of the ticket. + p 0 tickets + m (Lnet/minecraft/world/level/ChunkPos;Z)V updateChunkForced a method_14036 + p 1 pos + p 2 add + m (Ljava/lang/String;)V dumpTickets a method_34876 + p 1 filename + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/server/level/ServerPlayer;)V addPlayer a method_14048 + p 1 sectionPos + p 2 player + m ()I getNaturalSpawnChunkCount b method_14052 + c Returns the number of chunks taken into account when calculating the mob cap + m (I)V updateSimulationDistance b method_38629 + p 1 simulationDistance + m (J)Lnet/minecraft/server/level/ChunkHolder; getChunk b method_14038 + p 1 chunkPos + m (JLnet/minecraft/server/level/Ticket;)V removeTicket b method_17645 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/ChunkHolder;)V method_60451 b method_60451 + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeTicket b method_20444 + p 1 type + p 2 pos + p 3 level + p 4 value + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/server/level/ServerPlayer;)V removePlayer b method_14051 + p 1 sectionPos + p 2 player + m ()Ljava/lang/String; getDebugStatus c method_21683 + m (J)Z inEntityTickingRange c method_38630 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addRegionTicket c method_17291 + p 1 type + p 2 pos + p 3 distance + p 4 value + m ()Lnet/minecraft/server/level/TickingTracker; tickingTracker d method_38631 + m (J)Z inBlockTickingRange d method_38632 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeRegionTicket d method_17292 + p 1 type + p 2 pos + p 3 distance + p 4 value + m ()V removeTicketsOnClosing e method_39995 + m (J)Ljava/lang/String; getTicketDebugString e method_21623 + p 1 chunkPos + m ()Z hasTickets f method_39996 + m (J)Z hasPlayersNearby f method_20800 + p 1 chunkPos + m ()I getPlayerTicketLevel g method_38633 + m (J)Lnet/minecraft/util/SortedArraySet; getTickets g method_14050 + p 1 chunkPos + m ()V method_17652 h method_17652 + m (J)Lit/unimi/dsi/fastutil/objects/ObjectSet; method_17655 h method_17655 + m (J)Lnet/minecraft/util/SortedArraySet; method_14041 i method_14041 + m (J)V method_17656 j method_17656 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 1 dispatcher + p 2 mainThreadExecutor + m ()V +c net/minecraft/server/level/DistanceManager$ChunkTicketTracker aqk$a net/minecraft/class_3204$class_4077 + f Lnet/minecraft/server/level/DistanceManager; field_18255 a field_18255 + f I MAX_LEVEL b field_44854 + m (I)I runDistanceUpdates a method_18746 + p 1 toUpdateCount + m (Lnet/minecraft/server/level/DistanceManager;)V + m ()V +c net/minecraft/server/level/DistanceManager$FixedPlayerDistanceChunkTracker aqk$b net/minecraft/class_3204$class_3205 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunks a field_13896 + c Chunks that are at most {@link #range} chunks away from the closest player. + f I maxDistance b field_17461 + f Lnet/minecraft/server/level/DistanceManager; field_17462 c field_17462 + m ()V runAllUpdates a method_14057 + m (JII)V onLevelChange a method_17657 + c Called after {@link PlayerChunkTracker#setLevel(long, int)} puts/removes chunk into/from {@link #chunksInRange}. + p 1 chunkPos + p 3 oldLevel + c Previous level of the chunk if it was smaller than {@link #range}, {@code range + 2} otherwise. + p 4 newLevel + m (Ljava/lang/String;)V dumpChunks a method_34878 + p 1 filename + m (J)Z havePlayer d method_14056 + p 1 chunkPos + m (Lnet/minecraft/server/level/DistanceManager;I)V + p 2 maxDistance +c net/minecraft/server/level/DistanceManager$PlayerTicketTracker aqk$c net/minecraft/class_3204$class_3948 + f Lnet/minecraft/server/level/DistanceManager; field_17463 d field_17463 + f I viewDistance g field_17464 + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; queueLevels h field_17465 + f Lit/unimi/dsi/fastutil/longs/LongSet; toUpdate i field_17466 + m (I)V updateViewDistance a method_17658 + p 1 viewDistance + m (JIZZ)V onLevelChange a method_17660 + p 1 chunkPos + p 3 level + p 4 hadTicket + p 5 hasTicket + m (JLnet/minecraft/server/level/Ticket;)V method_17661 a method_17661 + m (JI)V method_17662 b method_17662 + m (JLnet/minecraft/server/level/Ticket;)V method_17663 b method_17663 + m (I)Z haveTicketFor c method_17664 + p 1 level + m (JLnet/minecraft/server/level/Ticket;)V method_17665 c method_17665 + m ()V method_21693 d method_21693 + m (I)I method_17666 d method_17666 + m (J)I method_17659 d method_17659 + m (JLnet/minecraft/server/level/Ticket;)V method_17667 d method_17667 + m (Lnet/minecraft/server/level/DistanceManager;I)V + p 2 maxDistance +c net/minecraft/server/level/FullChunkStatus aql net/minecraft/class_3194 + f Lnet/minecraft/server/level/FullChunkStatus; INACCESSIBLE a field_19334 + f Lnet/minecraft/server/level/FullChunkStatus; FULL b field_44855 + f Lnet/minecraft/server/level/FullChunkStatus; BLOCK_TICKING c field_44856 + f Lnet/minecraft/server/level/FullChunkStatus; ENTITY_TICKING d field_13877 + f [Lnet/minecraft/server/level/FullChunkStatus; $VALUES e field_13878 + m ()[Lnet/minecraft/server/level/FullChunkStatus; $values a method_36576 + m (Lnet/minecraft/server/level/FullChunkStatus;)Z isOrAfter a method_14014 + p 1 status + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/level/GeneratingChunkMap aqm net/minecraft/class_9760 + m (Lnet/minecraft/server/level/GenerationChunkHolder;)V releaseGeneration a method_60441 + p 1 chunk + m (Lnet/minecraft/server/level/GenerationChunkHolder;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;)Ljava/util/concurrent/CompletableFuture; applyStep a method_60442 + p 1 chunk + p 2 step + p 3 cache + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/server/level/ChunkGenerationTask; scheduleGenerationTask a method_60443 + p 1 targetStatus + p 2 pos + m (J)Lnet/minecraft/server/level/GenerationChunkHolder; acquireGeneration d method_60448 + p 1 chunkPos + m ()V runGenerationTasks g method_60450 +c net/minecraft/server/level/GenerationChunkHolder aqn net/minecraft/class_9761 + f Ljava/util/List; CHUNK_STATUSES a field_51865 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_CHUNK b field_51866 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_CHUNK_FUTURE c field_51867 + f Lnet/minecraft/world/level/ChunkPos; pos d field_51868 + f Lnet/minecraft/server/level/ChunkResult; NOT_DONE_YET e field_51869 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; highestAllowedStatus f field_51870 + f Ljava/util/concurrent/atomic/AtomicReference; startedWork g field_51871 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; futures h field_51872 + f Ljava/util/concurrent/atomic/AtomicReference; task i field_51873 + f Ljava/util/concurrent/atomic/AtomicInteger; generationRefCount j field_51874 + m (ILjava/util/concurrent/CompletableFuture;)V failAndClearPendingFuture a method_60452 + p 1 status + p 2 future + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V removeTask a method_60453 + p 1 task + m (Lnet/minecraft/server/level/ChunkMap;)V updateHighestAllowedStatus a method_60454 + p 1 chunkMap + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V rescheduleChunkTask a method_60455 + p 1 chunkMap + p 2 targetStatus + m (Lnet/minecraft/world/level/chunk/ImposterProtoChunk;)V replaceProtoChunk a method_60456 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunkIfPresentUnchecked a method_60457 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/server/level/ChunkMap;)Ljava/util/concurrent/CompletableFuture; scheduleChunkGenerationTask a method_60458 + p 1 targetStatus + p 2 chunkMap + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/ChunkAccess;)V completeFuture a method_60459 + p 1 targetStatus + p 2 chunkAccess + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V failAndClearPendingFuturesBetween a method_60460 + p 1 highestAllowableStatus + p 2 currentStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/util/StaticCache2D;)Ljava/util/concurrent/CompletableFuture; applyStep a method_60461 + p 1 step + p 2 chunkMap + p 3 cache + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/lang/Throwable;)Lnet/minecraft/server/level/ChunkResult; method_60462 a method_60462 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunkIfPresent b method_60463 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Ljava/util/concurrent/CompletableFuture; getOrCreateFuture c method_60464 + p 1 targetStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; findHighestStatusWithPendingFuture d method_60465 + p 1 generationStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z acquireStatusBump e method_60466 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isStatusDisallowed f method_60467 + p 1 status + m ()I getTicketLevel i method_14005 + m ()I getQueueLevel j method_17208 + m ()V increaseGenerationRefCount m method_60468 + m ()V decreaseGenerationRefCount n method_60469 + m ()I getGenerationRefCount o method_60470 + m ()Lnet/minecraft/world/level/chunk/ChunkAccess; getLatestChunk p method_60471 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getPersistedStatus q method_60472 + m ()Lnet/minecraft/world/level/ChunkPos; getPos r method_60473 + m ()Lnet/minecraft/server/level/FullChunkStatus; getFullStatus s method_60474 + m ()Ljava/util/List; getAllFutures t method_60475 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getLatestStatus u method_60476 + m (Lnet/minecraft/world/level/ChunkPos;)V + p 1 pos + m ()V +c net/minecraft/server/level/PlayerMap aqo net/minecraft/class_3210 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; players a field_13910 + m ()Ljava/util/Set; getAllPlayers a method_14083 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer a method_14084 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Z)V addPlayer a method_14085 + p 1 player + p 2 skipPlayer + m (Lnet/minecraft/server/level/ServerPlayer;)V ignorePlayer b method_14086 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)V unIgnorePlayer c method_14087 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)Z ignoredOrUnknown d method_21715 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)Z ignored e method_14082 + p 1 player + m ()V +c net/minecraft/server/level/PlayerRespawnLogic aqp net/minecraft/class_5322 + m (Lnet/minecraft/server/level/ServerLevel;II)Lnet/minecraft/core/BlockPos; getOverworldRespawnPos a method_29194 + p 0 level + p 1 x + p 2 z + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; getSpawnPosInChunk a method_29196 + p 0 level + p 1 chunkPos + m ()V +c net/minecraft/server/level/SectionTracker aqq net/minecraft/class_4079 + m (J)I getLevelFromSource b method_18749 + p 1 pos + m (JIZ)V update b method_18750 + p 1 pos + p 3 level + p 4 isDecreasing + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/server/level/ServerBossEvent aqr net/minecraft/class_3213 + f Ljava/util/Set; players h field_13913 + f Ljava/util/Set; unmodifiablePlayers i field_13914 + f Z visible j field_13912 + m (Lnet/minecraft/server/level/ServerPlayer;)V addPlayer a method_14088 + c Makes the boss visible to the given player. + p 1 player + m (Ljava/util/function/Function;)V broadcast a method_14090 + p 1 packetGetter + m ()V removeAllPlayers b method_14094 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer b method_14089 + c Makes the boss non-visible to the given player. + p 1 player + m (Z)V setVisible d method_14091 + p 1 visible + m ()Z isVisible f method_14093 + m ()Ljava/util/Collection; getPlayers g method_14092 + c The returned collection is unmodifiable + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 name + p 2 color + p 3 overlay +c net/minecraft/server/level/ServerChunkCache aqs net/minecraft/class_3215 + f Lnet/minecraft/server/level/ChunkMap; chunkMap a field_17254 + f Ljava/util/List; CHUNK_STATUSES b field_13934 + f Lnet/minecraft/server/level/DistanceManager; distanceManager c field_17252 + f Lnet/minecraft/server/level/ServerLevel; level d field_13945 + f Ljava/lang/Thread; mainThread e field_17253 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine f field_13921 + f Lnet/minecraft/server/level/ServerChunkCache$MainThreadExecutor; mainThreadProcessor g field_18809 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; dataStorage h field_17708 + f J lastInhabitedUpdate i field_13928 + f Z spawnEnemies j field_13929 + f Z spawnFriendlies k field_13941 + f I CACHE_SIZE l field_29766 + f [J lastChunkPos m field_19335 + f [Lnet/minecraft/world/level/chunk/status/ChunkStatus; lastChunkStatus n field_19336 + f [Lnet/minecraft/world/level/chunk/ChunkAccess; lastChunk o field_19337 + f Lnet/minecraft/world/level/NaturalSpawner$SpawnState; lastSpawnState p field_24455 + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; getLightEngine a method_17293 + m (I)V setViewDistance a method_14144 + p 1 viewDistance + m (J)Z isPositionTicking a method_37114 + p 1 chunkPos + m (JLnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V storeInCache a method_21738 + p 1 chunkPos + p 3 chunk + p 4 chunkStatus + m (JLjava/util/function/Consumer;)V getFullChunk a method_27907 + p 1 chunkPos + p 3 fullChunkGetter + m (Lnet/minecraft/server/level/ChunkHolder;I)Z chunkAbsent a method_18752 + p 1 chunkHolder + p 2 status + m (Lnet/minecraft/server/level/ServerChunkCache$ChunkAndHolder;)V method_38784 a method_38784 + m (Lnet/minecraft/server/level/ServerPlayer;)V move a method_14096 + p 1 player + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addRegionTicket a method_17297 + p 1 type + p 2 pos + p 3 distance + p 4 value + m (Lnet/minecraft/world/entity/Entity;)V removeEntity a method_18753 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend a method_18751 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; getChunkDebugData a method_23273 + p 1 chunkPos + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_14159 a method_14159 + m (Lnet/minecraft/core/BlockPos;)V blockChanged a method_14128 + p 1 pos + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/LightLayer;)V method_14118 a method_14118 + m (Z)V save a method_17298 + p 1 flush + m ()I getTickingGenerated b method_17301 + m (I)V setSimulationDistance b method_38634 + p 1 simulationDistance + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; getChunkFuture b method_17299 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (J)Lnet/minecraft/server/level/ChunkHolder; getVisibleChunkIfPresent b method_14131 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeRegionTicket b method_17300 + p 1 type + p 2 pos + p 3 distance + p 4 value + m (Lnet/minecraft/world/entity/Entity;)V addEntity b method_18755 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcast b method_18754 + p 1 entity + p 2 packet + m ()Lnet/minecraft/world/level/Level; getLevel c method_16434 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; getChunkFutureMainThread c method_14134 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m ()Z pollTask d method_19492 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; method_14098 d method_14098 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; method_20586 e method_20586 + m ()I getPendingTasksCount f method_21694 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; getGenerator g method_12129 + m ()Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; getGeneratorState h method_46642 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState i method_41248 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; getDataStorage k method_17981 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager l method_19493 + m ()Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; chunkScanner m method_39777 + m ()Lnet/minecraft/world/level/NaturalSpawner$SpawnState; getLastSpawnState n method_27908 + m ()V removeTicketsOnClosing o method_39997 + m ()V clearCache r method_20587 + m ()Z runDistanceManagerUpdates s method_16155 + m ()V tickChunks t method_14161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/chunk/ChunkGenerator;IIZLnet/minecraft/server/level/progress/ChunkProgressListener;Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener;Ljava/util/function/Supplier;)V + p 1 level + p 2 levelStorageAccess + p 3 fixerUpper + p 4 structureManager + p 5 dispatcher + p 6 generator + p 7 viewDistance + p 8 simulationDistance + p 9 sync + p 10 progressListener + p 11 chunkStatusListener + p 12 overworldDataStorage + m ()V +c net/minecraft/server/level/ServerChunkCache$ChunkAndHolder aqs$a net/minecraft/class_3215$class_6635 + f Lnet/minecraft/world/level/chunk/LevelChunk; chunk a comp_141 + f Lnet/minecraft/server/level/ChunkHolder; holder b comp_142 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; chunk a comp_141 + m ()Lnet/minecraft/server/level/ChunkHolder; holder b comp_142 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +c net/minecraft/server/level/ServerChunkCache$MainThreadExecutor aqs$b net/minecraft/class_3215$class_4212 + f Lnet/minecraft/server/level/ServerChunkCache; field_18810 a field_18810 + m (Ljava/util/function/BooleanSupplier;)Z method_60477 a method_60477 + m (Lnet/minecraft/server/level/ServerChunkCache;Lnet/minecraft/world/level/Level;)V + p 2 level +c net/minecraft/server/level/ServerEntity aqt net/minecraft/class_3231 + f I FORCED_POS_UPDATE_PERIOD a field_44987 + f Lorg/slf4j/Logger; LOGGER b field_14041 + f I TOLERANCE_LEVEL_ROTATION c field_29767 + f D TOLERANCE_LEVEL_POSITION d field_44988 + f I FORCED_TELEPORT_PERIOD e field_44989 + f Lnet/minecraft/server/level/ServerLevel; level f field_18258 + f Lnet/minecraft/world/entity/Entity; entity g field_14049 + f I updateInterval h field_14037 + f Z trackDelta i field_14039 + f Ljava/util/function/Consumer; broadcast j field_18259 + f Lnet/minecraft/network/protocol/game/VecDeltaCodec; positionCodec k field_39019 + f I lastSentYRot l field_14060 + f I lastSentXRot m field_14047 + f I lastSentYHeadRot n field_14059 + f Lnet/minecraft/world/phys/Vec3; lastSentMovement o field_18278 + f I tickCount p field_14040 + f I teleportDelay q field_14043 + f Ljava/util/List; lastPassengers r field_14045 + f Z wasRiding s field_14051 + f Z wasOnGround t field_14036 + f Ljava/util/List; trackedDataValues u field_41697 + m ()V sendChanges a method_18756 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePairing a method_14302 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Consumer;)V sendPairingData a method_18757 + p 1 player + p 2 consumer + m (Lnet/minecraft/world/entity/Entity;)V method_49426 a method_49426 + m (Ljava/util/List;Lnet/minecraft/world/entity/Entity;)Z method_49752 a method_49752 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/stream/Stream; removedPassengers a method_49753 + p 0 initialPassengers + p 1 currentPassengers + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend a method_18758 + p 1 packet + m ()Lnet/minecraft/world/phys/Vec3; getPositionBase b method_60942 + m (Lnet/minecraft/server/level/ServerPlayer;)V addPairing b method_18760 + p 1 player + m ()Lnet/minecraft/world/phys/Vec3; getLastSentMovement c method_60943 + m ()F getLastSentXRot d method_60944 + m ()F getLastSentYRot e method_60945 + m ()F getLastSentYHeadRot f method_60946 + m ()V sendDirtyEntityData g method_14306 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;IZLjava/util/function/Consumer;)V + p 1 level + p 2 entity + p 3 updateInterval + p 4 trackDelta + p 5 broadcast + m ()V +c net/minecraft/server/level/ServerLevel aqu net/minecraft/class_3218 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f Lnet/minecraft/util/valueproviders/IntProvider; THUNDER_DELAY D field_41748 + f Lorg/slf4j/Logger; LOGGER E field_13952 + f I EMPTY_TIME_NO_TICK F field_29768 + f I MAX_SCHEDULED_TICKS_PER_TICK G field_35441 + f Ljava/util/List; players H field_18261 + f Lnet/minecraft/server/level/ServerChunkCache; chunkSource I field_24624 + f Lnet/minecraft/server/MinecraftServer; server J field_13959 + f Lnet/minecraft/world/level/storage/ServerLevelData; serverLevelData K field_24456 + f I lastSpawnChunkRadius L field_48271 + f Lnet/minecraft/world/level/entity/EntityTickList; entityTickList M field_26934 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; entityManager N field_26935 + f Lnet/minecraft/world/level/gameevent/GameEventDispatcher; gameEventDispatcher O field_39984 + f Lnet/minecraft/server/players/SleepStatus; sleepStatus P field_28859 + f I emptyTime Q field_13948 + f Lnet/minecraft/world/level/portal/PortalForcer; portalForcer R field_13956 + f Lnet/minecraft/world/ticks/LevelTicks; blockTicks S field_13949 + f Lnet/minecraft/world/ticks/LevelTicks; fluidTicks T field_13951 + f Lnet/minecraft/world/level/pathfinder/PathTypeCache; pathTypesByPosCache U field_49172 + f Ljava/util/Set; navigatingMobs V field_26932 + f Z isUpdatingNavigations W field_36317 + f Lit/unimi/dsi/fastutil/objects/ObjectLinkedOpenHashSet; blockEvents X field_13950 + f Ljava/util/List; blockEventsToReschedule Y field_35565 + f Z handlingTick Z field_13953 + f Lnet/minecraft/core/BlockPos; END_SPAWN_POINT a field_25144 + f Ljava/util/List; customSpawners aa field_25141 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight; dragonFight ab field_25142 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; dragonParts ac field_26933 + f Lnet/minecraft/world/level/StructureManager; structureManager ad field_23787 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheck; structureCheck ae field_36208 + f Z tickTime af field_25143 + f Lnet/minecraft/world/RandomSequences; randomSequences ag field_44857 + f Lnet/minecraft/util/valueproviders/IntProvider; RAIN_DELAY b field_41749 + f Lnet/minecraft/util/valueproviders/IntProvider; RAIN_DURATION c field_41750 + f Lnet/minecraft/util/valueproviders/IntProvider; THUNDER_DURATION d field_41751 + f Z noSave e field_13957 + f Lnet/minecraft/world/entity/raid/Raids; raids f field_18811 + m ()Ljava/lang/Iterable; getAllEntities A method_27909 + c Gets an unmodifiable iterator of all loaded entities in the world. + m ()Z isFlat B method_28125 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight; getDragonFight D method_29198 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; findLightningRod E method_31418 + p 1 pos + m ()Ljava/lang/String; getWatchdogStats F method_31268 + m (Lnet/minecraft/core/BlockPos;)V method_39222 F method_39222 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; method_34679 G method_34679 + m ()Lnet/minecraft/world/level/pathfinder/PathTypeCache; getPathTypeCache H method_57133 + m (Lnet/minecraft/core/BlockPos;)Z method_34680 H method_34680 + m ()Lnet/minecraft/world/RandomSequences; getRandomSequences L method_52168 + m ()Lnet/minecraft/world/level/StructureManager; structureManager a method_27056 + m (IIZ)Z setChunkForced a method_17988 + p 1 chunkX + p 2 chunkZ + p 3 add + m (IIZZ)V setWeatherParameters a method_27910 + p 1 clearTime + p 2 weatherTime + p 3 isRaining + p 4 isThundering + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; getRandomSequence a method_51836 + p 1 location + m (Lnet/minecraft/server/level/ServerPlayer;)V addNewPlayer a method_18213 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity$RemovalReason;)V removePlayerImmediately a method_18770 + p 1 player + p 2 reason + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/particles/ParticleOptions;ZDDDIDDDD)Z sendParticles a method_14166 + p 1 player + p 2 type + p 3 longDistance + p 4 posX + p 6 posY + p 8 posZ + p 10 particleCount + p 11 xOffset + p 13 yOffset + p 15 zOffset + p 17 speed + m (Lnet/minecraft/server/level/ServerPlayer;ZDDDLnet/minecraft/network/protocol/Packet;)Z sendParticles a method_14191 + p 1 player + p 2 longDistance + p 3 posX + p 5 posY + p 7 posZ + p 9 packet + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findNearestMapStructure a method_8487 + p 1 structureTag + p 2 pos + p 3 radius + p 4 skipExistingChunks + m (Lnet/minecraft/util/ProgressListener;ZZ)V save a method_14176 + p 1 progress + p 2 flush + p 3 skipSave + m (Lnet/minecraft/world/TickRateManager;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/world/entity/Entity;)V method_31420 a method_31420 + m (Lnet/minecraft/world/entity/Entity;)V tickNonPassenger a method_18762 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V tickPassenger a method_18763 + p 1 ridingEntity + p 2 passengerEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18199 a method_18199 + m (Lnet/minecraft/world/entity/ai/village/ReputationEventType;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/ReputationEventHandler;)V onReputationEvent a method_19496 + p 1 type + p 2 target + p 3 host + m (Lnet/minecraft/world/level/BlockEventData;)Z doBlockEvent a method_14174 + p 1 event + m (Lnet/minecraft/world/level/ChunkPos;)Z isNaturalSpawningAllowed a method_39998 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V onStructureStartsAvailable a method_39778 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V unload a method_18764 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;I)V tickChunk a method_18203 + p 1 chunk + p 2 randomTickSpeed + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight;)V setDragonFight a method_51837 + p 1 dragonFight + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_18198 + p 1 typeTest + p 2 predicate + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;Ljava/util/List;)V getEntities a method_47538 + p 1 typeTest + p 2 predicate + p 3 output + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;Ljava/util/List;I)V getEntities a method_47539 + p 1 typeTest + p 2 predicate + p 3 output + p 4 maxResults + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V clearBlockEvents a method_23658 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/BlockEventData;)Z method_23659 a method_23659 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Ljava/lang/String; method_31269 a method_31269 + m (Ljava/io/Writer;)V dumpBlockEntityTickers a method_21626 + p 1 output + m (Ljava/io/Writer;Ljava/lang/Iterable;)V dumpEntities a method_21624 + p 0 writer + p 1 entities + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Ljava/lang/String; getTypeCount a method_31270 + p 0 objects + p 1 typeGetter + m (Ljava/nio/file/Path;)V saveDebugReport a method_21625 + p 1 path + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; getEntity a method_14190 + p 1 uniqueId + m (Ljava/util/function/BooleanSupplier;)V tick a method_18765 + c Runs a single tick for the world + p 1 hasTimeLeft + m (Ljava/util/function/Predicate;)Ljava/util/List; getPlayers a method_18766 + p 1 predicate + m (Ljava/util/function/Predicate;I)Ljava/util/List; getPlayers a method_47540 + p 1 predicate + p 2 maxResults + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/world/entity/Entity;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47541 a method_47541 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;III)Lcom/mojang/datafixers/util/Pair; findClosestBiome3d a method_42108 + p 1 biomePredicate + p 2 pos + p 3 radius + p 4 horizontalStep + p 5 verticalStep + m (Ljava/util/stream/Stream;)V addLegacyChunkEntities a method_31423 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)V tickPrecipitation a method_52370 + p 1 blockPos + m (Lnet/minecraft/core/BlockPos;F)V setDefaultSpawnPos a method_8554 + p 1 pos + p 2 angle + m (Lnet/minecraft/core/BlockPos;I)Z isCloseToVillage a method_19497 + p 1 pos + p 2 sections + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)V tickFluid a method_14171 + p 1 pos + p 2 fluid + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19535 a method_19535 + m (Lnet/minecraft/core/Holder;)Z method_31421 a method_31421 + m (Lnet/minecraft/core/SectionPos;)Z isVillage a method_20588 + p 1 pos + m (Lnet/minecraft/core/particles/ParticleOptions;DDDIDDDD)I sendParticles a method_14199 + p 1 type + p 2 posX + p 4 posY + p 6 posZ + p 8 particleCount + p 9 xOffset + p 11 yOffset + p 13 zOffset + p 15 speed + m (Lnet/minecraft/server/MinecraftServer;)Lnet/minecraft/world/level/storage/DimensionDataStorage; method_17985 a method_17985 + m (ZZ)V tickCustomSpawners a method_29202 + p 1 spawnEnemies + p 2 spawnFriendlies + m ()V wakeUpAllPlayers as method_23660 + m ()V announceSleepStatus at method_33143 + m ()V advanceWeatherCycle au method_39501 + m ()V saveLevelData av method_14188 + c Saves the chunks to disk. + m ()V runBlockEvents aw method_14192 + m ()Ljava/lang/String; method_54438 ax method_54438 + m ()V tickTime b method_29203 + m (I)Lnet/minecraft/world/entity/Entity; getEntityOrPart b method_31424 + p 1 id + m (J)V setDayTime b method_29199 + p 1 time + m (Lnet/minecraft/server/level/ServerPlayer;)V addRespawnedPlayer b method_18215 + p 1 player + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_39926 b method_39926 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V startTickingChunk b method_39223 + p 1 chunk + m (Ljava/util/stream/Stream;)V addWorldGenChunkEntities b method_31426 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findLightningTargetAround b method_18210 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19499 b method_19499 + m (Lnet/minecraft/core/SectionPos;)I sectionsToVillage b method_19498 + p 1 pos + m ()Z isHandlingTick c method_14177 + m (J)Z areEntitiesLoaded c method_37116 + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V addPlayer c method_18771 + p 1 player + m (Lnet/minecraft/world/entity/Entity;)Z addWithUUID c method_18768 + c Used for "unnatural" ways of entities appearing in the world, e.g. summon command, interdimensional teleports + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isVillage c method_19500 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19536 c method_19536 + m ()Z canSleepThroughNights d method_33144 + m (J)Z isPositionTickingWithEntitiesLoaded d method_37117 + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V method_18773 d method_18773 + m (Lnet/minecraft/world/entity/Entity;)V addDuringTeleport d method_18769 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; getRaidAt d method_19502 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V tickBlock d method_14189 + p 1 pos + p 2 block + m ()V updateSleepingPlayerList e method_8448 + c Updates the flag that indicates whether all players in the world are sleeping. + m (J)Lnet/minecraft/world/RandomSequences; method_51838 e method_51838 + m (Lnet/minecraft/world/entity/Entity;)Z tryAddFreshEntityWithPassengers e method_30736 + c Attempts to summon an entity and it's passangers. They will only be summoned if all entities are unique and not already in queue to be summoned. + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isRaided e method_19503 + p 1 pos + m ()Lnet/minecraft/server/ServerScoreboard; getScoreboard f method_14170 + m (Lnet/minecraft/core/BlockPos;)Z isPositionEntityTicking f method_37118 + p 1 pos + m ()V resetWeatherCycle g method_14195 + m (Lnet/minecraft/core/BlockPos;)Z isNaturalSpawningAllowed g method_39999 + p 1 pos + m ()V resetEmptyTime h method_14197 + c Resets the updateEntityTick field to 0 + m ()Ljava/util/List; getDragons i method_18776 + m (Lnet/minecraft/world/entity/Entity;)Z shouldDiscardEntity i method_31430 + p 1 entity + m ()Lnet/minecraft/server/level/ServerPlayer; getRandomPlayer j method_18779 + m (Lnet/minecraft/world/entity/Entity;)Z addEntity j method_14175 + c Called when an entity is spawned in the world. This includes players. + p 1 entity + m ()I getLogicalHeight k method_32819 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_31431 k method_31431 + m ()Lnet/minecraft/server/level/ServerChunkCache; getChunkSource l method_14178 + c Gets the world's chunk provider + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_24310 l method_24310 + m ()Lnet/minecraft/world/ticks/LevelTicks; getBlockTicks m method_14196 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_18781 m method_18781 + m ()Lnet/minecraft/world/ticks/LevelTicks; getFluidTicks n method_14179 + m ()Lnet/minecraft/world/level/portal/PortalForcer; getPortalForcer p method_14173 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; getStructureManager q method_14183 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; getDataStorage u method_17983 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getForcedChunks w method_17984 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager y method_19494 + m ()Lnet/minecraft/world/entity/raid/Raids; getRaids z method_19495 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/storage/ServerLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;Lnet/minecraft/server/level/progress/ChunkProgressListener;ZJLjava/util/List;ZLnet/minecraft/world/RandomSequences;)V + p 1 server + p 2 dispatcher + p 3 levelStorageAccess + p 4 serverLevelData + p 5 dimension + p 6 levelStem + p 7 progressListener + p 8 isDebug + p 9 biomeZoomSeed + p 11 customSpawners + p 12 tickTime + p 13 randomSequences + m ()V +c net/minecraft/server/level/ServerLevel$EntityCallbacks aqu$a net/minecraft/class_3218$class_5526 + f Lnet/minecraft/server/level/ServerLevel; field_26936 a field_26936 + m (Lnet/minecraft/world/entity/Entity;)V onCreated a method_31432 + m (Lnet/minecraft/world/entity/Entity;)V onDestroyed b method_31433 + m (Lnet/minecraft/world/entity/Entity;)V onTickingStart c method_31434 + m (Lnet/minecraft/world/entity/Entity;)V onTickingEnd d method_31435 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingStart e method_31436 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingEnd f method_31437 + m (Lnet/minecraft/world/entity/Entity;)V onSectionChange g method_43030 + m (Lnet/minecraft/server/level/ServerLevel;)V +c net/minecraft/server/level/ServerPlayer aqv net/minecraft/class_3222 + f D INTERACTION_DISTANCE_VERIFICATION_BUFFER b field_47708 + f I NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_XZ cA field_29769 + f I NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_Y cB field_29770 + f I FLY_STAT_RECORDING_SPEED cD field_46928 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; CREATIVE_BLOCK_INTERACTION_RANGE_MODIFIER cE field_47709 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; CREATIVE_ENTITY_INTERACTION_RANGE_MODIFIER cF field_47710 + f Lnet/minecraft/server/PlayerAdvancements; advancements cG field_13970 + f Lnet/minecraft/stats/ServerStatsCounter; stats cH field_13966 + f F lastRecordedHealthAndAbsorption cI field_13963 + c the total health of the player, includes actual health and absorption health. Updated every tick. + f I lastRecordedFoodLevel cJ field_13983 + f I lastRecordedAirLevel cK field_13968 + f I lastRecordedArmor cL field_13982 + f Lnet/minecraft/server/network/ServerGamePacketListenerImpl; connection c field_13987 + f I lastRecordedLevel cM field_13965 + f I lastRecordedExperience cN field_13980 + f F lastSentHealth cO field_13997 + f I lastSentFood cP field_13979 + f Z lastFoodSaturationZero cQ field_13972 + f I lastSentExp cR field_13978 + f I spawnInvulnerableTime cS field_13998 + f Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility cT field_13993 + f Z canChatColor cU field_13971 + f J lastActionTime cV field_13976 + f Lnet/minecraft/world/entity/Entity; camera cW field_13984 + c The entity the player is currently spectating through. + f Z isChangingDimension cX field_13985 + f Lnet/minecraft/stats/ServerRecipeBook; recipeBook cY field_13996 + f Lnet/minecraft/world/phys/Vec3; levitationStartPos cZ field_13992 + f Lorg/slf4j/Logger; LOGGER cz field_13975 + f Lnet/minecraft/server/MinecraftServer; server d field_13995 + f I levitationStartTime da field_13973 + f Z disconnected db field_13964 + f I requestedViewDistance dc field_44990 + f Ljava/lang/String; language dd field_46156 + f Lnet/minecraft/world/phys/Vec3; startingToFallPosition de field_35007 + f Lnet/minecraft/world/phys/Vec3; enteredNetherPosition df field_13994 + f Lnet/minecraft/world/phys/Vec3; enteredLavaOnVehiclePosition dg field_35008 + f Lnet/minecraft/core/SectionPos; lastSectionPos dh field_13990 + c Player section position as last updated by TicketManager, used by ChunkManager + f Lnet/minecraft/server/level/ChunkTrackingView; chunkTrackingView di field_44991 + f Lnet/minecraft/resources/ResourceKey; respawnDimension dj field_23191 + f Lnet/minecraft/core/BlockPos; respawnPosition dk field_23192 + f Z respawnForced dl field_23193 + f F respawnAngle dm field_26353 + f Lnet/minecraft/server/network/TextFilter; textFilter dn field_26821 + f Z textFilteringEnabled do field_28860 + f Z allowsListing dp field_35566 + f Z spawnExtraParticlesOnFall dq field_49776 + f Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker; wardenSpawnTracker dr field_39985 + f Lnet/minecraft/core/BlockPos; raidOmenPosition ds field_50088 + f Lnet/minecraft/world/phys/Vec3; lastKnownClientMovement dt field_51875 + f Lnet/minecraft/world/inventory/ContainerSynchronizer; containerSynchronizer du field_29180 + f Lnet/minecraft/world/inventory/ContainerListener; containerListener dv field_29181 + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession dw field_39986 + f I containerCounter dx field_13986 + f Lnet/minecraft/server/level/ServerPlayerGameMode; gameMode e field_13974 + f Z seenCredits f field_13969 + f Ljava/lang/Object; object g field_49777 + f Z wonGame h field_13989 + m ()Lnet/minecraft/server/level/ServerLevel; serverLevel A method_51469 + m ()Ljava/lang/String; getIpAddress B method_14209 + c Gets the player's IP address. Used in /banip. + m ()Lnet/minecraft/server/level/ClientInformation; clientInformation C method_53823 + m ()Z canChatInColor D method_34879 + m ()Lnet/minecraft/world/entity/player/ChatVisiblity; getChatVisibility E method_14238 + m ()I requestedViewDistance F method_52371 + m ()V resetLastActionTime H method_14234 + m ()Lnet/minecraft/stats/ServerStatsCounter; getStats I method_14248 + m ()Lnet/minecraft/stats/ServerRecipeBook; getRecipeBook J method_14253 + m ()Lnet/minecraft/world/entity/Entity; getCamera L method_14242 + m ()J getLastActionTime N method_14219 + m ()Lnet/minecraft/network/chat/Component; getTabListDisplayName O method_14206 + c Returns null which indicates the tab list should just display the player's name, return a different value to display the specified text instead of the player's name + m ()Z isChangingDimension P method_14208 + m ()V hasChangedDimension Q method_14240 + m ()Lnet/minecraft/server/PlayerAdvancements; getAdvancements R method_14236 + m ()Lnet/minecraft/core/BlockPos; getRespawnPosition S method_26280 + m ()F getRespawnAngle T method_30631 + m ()Lnet/minecraft/resources/ResourceKey; getRespawnDimension U method_26281 + m ()Z isRespawnForced V method_26282 + m ()Lnet/minecraft/core/SectionPos; getLastSectionPos W method_14232 + m ()Lnet/minecraft/server/level/ChunkTrackingView; getChunkTrackingView X method_52372 + m ()Lnet/minecraft/server/network/TextFilter; getTextFilter Y method_31273 + m (DDDZ)V doCheckFallDamage a method_14207 + p 1 movementX + p 3 movementY + p 5 movementZ + p 7 onGround + m (FFZZ)V setPlayerInput a method_14218 + p 1 strafe + p 2 forward + p 3 jumping + p 4 sneaking + m (I)V setExperiencePoints a method_14228 + p 1 experiencePoints + m (ILnet/minecraft/world/scores/ScoreAccess;)V method_14221 a method_14221 + m (Lnet/minecraft/network/protocol/status/ServerStatus;)V sendServerStatus a method_43930 + p 1 serverStatus + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;FZZ)V setRespawnPosition a method_26284 + p 1 dimension + p 2 position + p 3 angle + p 4 forced + p 5 sendMessage + m (Lnet/minecraft/server/level/ChunkTrackingView;)V setChunkTrackingView a method_52373 + p 1 chunkTrackingView + m (Lnet/minecraft/server/level/ClientInformation;)V updateOptions a method_14213 + p 1 clientInformation + m (Lnet/minecraft/server/level/ServerLevel;)V setServerLevel a method_51468 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;DDDFF)V teleportTo a method_14251 + p 1 newLevel + p 2 x + p 4 y + p 6 z + p 8 yaw + p 9 pitch + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; findRespawnAndUseSpawnBlock a method_60588 + p 0 level + p 1 pos + p 2 angle + p 3 forced + p 4 keepInventory + m (Lnet/minecraft/server/level/ServerPlayer;Z)V restoreFrom a method_14203 + p 1 that + p 2 keepEverything + m (Lnet/minecraft/util/Unit;)V method_19504 a method_19504 + m (Lnet/minecraft/world/entity/Mob;)V method_29777 a method_29777 + m (Lnet/minecraft/world/entity/monster/Monster;)Z method_26283 a method_26283 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45164 a method_45164 + m (Lnet/minecraft/world/entity/player/Inventory;I)V method_37412 a method_37412 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V initMenu a method_14235 + p 1 menu + m (Lnet/minecraft/world/level/GameType;)Z setGameMode a method_7336 + p 1 gameMode + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/ScoreHolder;[Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;)V handleTeamKill a method_14227 + p 1 scoreHolder + p 2 teamMember + p 3 crtieria + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;I)V updateScoreForCriteria a method_14212 + p 1 criteria + p 2 points + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V lookAt a method_14222 + p 1 fromAnchor + p 2 entity + p 3 toAnchor + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; method_60589 a method_60589 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z bedInRange a method_26285 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/SectionPos;)V setLastSectionPos a method_17668 + p 1 sectionPos + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/world/level/GameType; readPlayerMode a method_32745 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_58583 a method_58583 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_14210 a method_14210 + m (Lnet/minecraft/network/chat/OutgoingChatMessage;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendChatMessage a method_43505 + p 1 message + p 2 filtered + p 3 boundType + m (Lnet/minecraft/network/chat/RemoteChatSession;)V setChatSession a method_46364 + p 1 chatSession + m (Z)Z drop a method_37413 + p 1 dropStack + c Whether to drop the entire stack of items. If {@code false}, drops a single item. + m (ZLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; findRespawnPositionAndUseSpawnBlock a method_60590 + p 1 keepInventory + p 2 postDimensionTransition + m ()Z allowsListing aa method_39426 + m ()Lnet/minecraft/network/chat/RemoteChatSession; getChatSession ac method_45163 + m ()V clearRaidOmenPosition ae method_58584 + m ()Lnet/minecraft/core/BlockPos; getRaidOmenPosition af method_58585 + m (DDD)V checkMovementStatistics b method_54720 + p 1 dx + p 3 dy + p 5 dz + m (I)V setExperienceLevels b method_14252 + p 1 level + m (ILnet/minecraft/world/scores/ScoreAccess;)V method_14250 b method_14250 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/stream/Stream; method_54934 b method_54934 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; createCommonSpawnInfo b method_52374 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)V copyRespawnPosition b method_60592 + p 1 player + m (Lnet/minecraft/world/entity/Mob;)Z method_29778 b method_29778 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/GameType; calculateGameModeForNewPlayer b method_32746 + p 1 gameType + m (Lnet/minecraft/world/phys/Vec3;)V setKnownMovement b method_52208 + p 1 knownMovement + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; method_60593 b method_60593 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z bedBlocked b method_26286 + p 1 pos + p 2 direction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29205 b method_29205 + m (Lnet/minecraft/network/chat/Component;Z)V sendSystemMessage b method_43502 + p 1 component + p 2 bypassHiddenChat + m (Z)V setSpawnExtraParticlesOnFall b method_58143 + p 1 spawnExtraParticlesOnFall + m (Lnet/minecraft/server/level/ServerLevel;)V triggerDimensionChangeTriggers c method_18783 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Z shouldFilterMessageTo c method_33795 + p 1 player + m (Lnet/minecraft/core/BlockPos;)V setRaidOmenPosition c method_58586 + p 1 raidOmenPosition + m (Lnet/minecraft/nbt/CompoundTag;)V loadGameTypes c method_32748 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_45165 c method_45165 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/protocol/Packet; method_43507 c method_43507 + m (Lnet/minecraft/world/entity/Entity;)V setCamera d method_14224 + p 1 entityToSpectate + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/protocol/Packet; method_14223 d method_14223 + m ()V updatePlayerAttributes gD method_55633 + m ()V tellNeutralMobsThatIDied gE method_29779 + m ()Z isPvpAllowed gF method_14230 + c Returns if other players can attack this player + m ()V nextContainerCounter gG method_14237 + c Gets the next window id to use. + m ()Z acceptsChatMessages gH method_44706 + m ()V initInventoryMenu h method_34225 + m (Lnet/minecraft/core/BlockPos;)Z isReachableBedBlock i method_26287 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V method_58587 j method_58587 + m (Lnet/minecraft/nbt/CompoundTag;)V storeGameTypes k method_32749 + p 1 tag + m ()V doTick m method_14226 + m ()V trackStartFallingPosition o method_38786 + m ()V trackEnteredOrExitedLavaOnVehicle p method_38787 + m ()V showEndCredits q method_60594 + m (DDD)V checkRidingStatistics q method_54721 + p 1 dx + p 3 dy + p 5 dz + m (DDD)Z didNotMove r method_54722 + p 0 dx + p 2 dy + p 4 dz + m (I)I getCoprime t method_14244 + p 1 spawnArea + m ()V disconnect v method_14231 + m ()Z hasDisconnected w method_14239 + m ()V resetSentInfo x method_14217 + c This function is called when a player's inventory is sent to him, {@code lastHealth} is updated on any dimension transitions, then reset. + m (Z)Z acceptsSystemMessages x method_44707 + p 1 bypassHiddenChat + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerLevel;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)V + p 1 server + p 2 level + p 3 gameProfile + p 4 clientInformation + m ()V +c net/minecraft/server/level/ServerPlayer$1 aqv$1 net/minecraft/class_3222$1 + f Lnet/minecraft/server/level/ServerPlayer; field_29182 a field_29182 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V broadcastDataValue b method_34227 + p 1 container + p 2 id + p 3 value + m (Lnet/minecraft/server/level/ServerPlayer;)V +c net/minecraft/server/level/ServerPlayer$2 aqv$2 net/minecraft/class_3222$2 + f Lnet/minecraft/server/level/ServerPlayer; field_29183 a field_29183 + m (Lnet/minecraft/server/level/ServerPlayer;)V +c net/minecraft/server/level/ServerPlayer$RespawnPosAngle aqv$a net/minecraft/class_3222$class_9773 + f Lnet/minecraft/world/phys/Vec3; position a comp_2811 + f F yaw b comp_2812 + m ()Lnet/minecraft/world/phys/Vec3; position a comp_2811 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; of a method_60595 + p 0 position + p 1 towardsPos + m ()F yaw b comp_2812 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)F calculateLookAtYaw b method_60596 + p 0 position + p 1 towardsPos + m (Lnet/minecraft/world/phys/Vec3;F)V +c net/minecraft/server/level/ServerPlayerGameMode aqw net/minecraft/class_3225 + f Lorg/slf4j/Logger; LOGGER a field_20325 + f Lnet/minecraft/world/level/GameType; gameModeForPlayer b field_14005 + f Lnet/minecraft/server/level/ServerLevel; level c field_14007 + f Lnet/minecraft/server/level/ServerPlayer; player d field_14008 + f Lnet/minecraft/world/level/GameType; previousGameModeForPlayer e field_25715 + f Z isDestroyingBlock f field_14003 + f I destroyProgressStart g field_20326 + f Lnet/minecraft/core/BlockPos; destroyPos h field_20327 + f I gameTicks i field_14000 + f Z hasDelayedDestroy j field_20328 + f Lnet/minecraft/core/BlockPos; delayedDestroyPos k field_20329 + f I delayedTickStart l field_20330 + f I lastSentState m field_20331 + m ()V tick a method_14264 + m (Lnet/minecraft/server/level/ServerLevel;)V setLevel a method_14259 + c Sets the world instance. + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; useItem a method_14256 + p 1 player + p 2 level + p 3 stack + p 4 hand + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useItemOn a method_14262 + p 1 player + p 2 level + p 3 stack + p 4 hand + p 5 hitResult + m (Lnet/minecraft/world/item/Item;)V method_59904 a method_59904 + m (Lnet/minecraft/world/level/GameType;)Z changeGameModeForPlayer a method_30118 + p 1 gameModeForPlayer + m (Lnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;)V setGameModeForPlayer a method_14261 + p 1 gameModeForPlayer + p 2 previousGameModeForPlayer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)F incrementDestroyProgress a method_21716 + p 1 state + p 2 pos + p 3 startTick + m (Lnet/minecraft/core/BlockPos;)Z destroyBlock a method_14266 + c Attempts to harvest a block + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;)V destroyAndAck a method_21717 + p 1 pos + p 2 sequence + p 3 message + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/Direction;II)V handleBlockBreakAction a method_14263 + p 1 pos + p 2 action + p 3 face + p 4 maxBuildHeight + p 5 sequence + m (Lnet/minecraft/core/BlockPos;ZILjava/lang/String;)V debugLogging a method_41250 + p 1 pos + p 2 terminate + p 3 sequence + p 4 message + m ()Lnet/minecraft/world/level/GameType; getGameModeForPlayer b method_14257 + m ()Lnet/minecraft/world/level/GameType; getPreviousGameModeForPlayer c method_30119 + m ()Z isSurvival d method_14267 + m ()Z isCreative e method_14268 + c Get if we are in creative game mode. + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player + m ()V +c net/minecraft/server/level/ThreadedLevelLightEngine aqx net/minecraft/class_3227 + f I DEFAULT_BATCH_SIZE a field_44692 + f Lorg/slf4j/Logger; LOGGER d field_14020 + f Lnet/minecraft/util/thread/ProcessorMailbox; taskMailbox e field_17255 + f Lit/unimi/dsi/fastutil/objects/ObjectList; lightTasks f field_17256 + f Lnet/minecraft/server/level/ChunkMap; chunkMap g field_17257 + f Lnet/minecraft/util/thread/ProcessorHandle; sorterMailbox h field_17259 + f I taskPerBatch i field_17260 + f Ljava/util/concurrent/atomic/AtomicBoolean; scheduled j field_18812 + m (II)Ljava/util/concurrent/CompletableFuture; waitForPendingTasks a method_53694 + p 1 x + p 2 z + m (IILnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V addTask a method_17308 + p 1 chunkX + p 2 chunkZ + p 3 type + p 4 task + m (IILjava/lang/Runnable;)V method_53695 a method_53695 + m (IILjava/util/function/IntSupplier;Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V addTask a method_17307 + p 1 chunkX + p 2 chunkZ + p 3 queueLevelSupplier + p 4 type + p 5 task + m (Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V method_17313 a method_17313 + m (Lnet/minecraft/world/level/ChunkPos;)V updateChunkStatus a method_20386 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Runnable;)V method_17306 a method_17306 + m (Lnet/minecraft/world/level/ChunkPos;ZLnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_51284 a method_51284 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_17309 a method_17309 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;)V method_51288 a method_51288 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Z)Ljava/util/concurrent/CompletableFuture; initializeLight a method_51285 + p 1 chunk + p 2 lightEnabled + m (ZLnet/minecraft/world/level/ChunkPos;)V method_51470 a method_51470 + m ()V tryScheduleUpdate b method_17303 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Runnable;)V method_51287 b method_51287 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/DataLayer;)V method_14280 b method_14280 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Z)Ljava/util/concurrent/CompletableFuture; lightChunk b method_17310 + p 1 chunk + p 2 isLighted + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/String; method_18846 b method_18846 + m (Lnet/minecraft/core/SectionPos;)Ljava/lang/String; method_18844 b method_18844 + m (Lnet/minecraft/core/SectionPos;Z)Ljava/lang/String; method_18847 b method_18847 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_51286 c method_51286 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/lang/String; method_18845 c method_18845 + m (Lnet/minecraft/core/BlockPos;)V method_14279 c method_14279 + m (Lnet/minecraft/core/SectionPos;Z)V method_14273 c method_14273 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_20624 d method_20624 + m (Lnet/minecraft/world/level/ChunkPos;Z)V method_20626 d method_20626 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_51472 e method_51472 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/lang/String; method_51473 e method_51473 + m ()V runUpdate f method_14277 + m (Lnet/minecraft/world/level/ChunkPos;)V method_51474 f method_51474 + m (Lnet/minecraft/world/level/ChunkPos;Z)V method_51475 f method_51475 + m ()V method_53696 g method_53696 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_20387 g method_20387 + m ()V method_19505 h method_19505 + m (Lnet/minecraft/world/level/ChunkPos;)V method_20388 h method_20388 + m ()I method_20625 i method_20625 + m ()I method_20607 j method_20607 + m ()I method_17314 k method_17314 + m ()I method_20389 l method_20389 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/server/level/ChunkMap;ZLnet/minecraft/util/thread/ProcessorMailbox;Lnet/minecraft/util/thread/ProcessorHandle;)V + p 1 lightChunk + p 2 chunkMap + p 3 skyLight + p 4 taskMailbox + p 5 sorterMailbox + m ()V +c net/minecraft/server/level/ThreadedLevelLightEngine$TaskType aqx$a net/minecraft/class_3227$class_3901 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; PRE_UPDATE a field_17261 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; POST_UPDATE b field_17262 + f [Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; $VALUES c field_17263 + m ()[Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; $values a method_36577 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/level/Ticket aqy net/minecraft/class_3228 + f Lnet/minecraft/server/level/TicketType; type a field_14023 + f I ticketLevel b field_14025 + f Ljava/lang/Object; key c field_14022 + f J createdTick d field_14024 + m ()Lnet/minecraft/server/level/TicketType; getType a method_14281 + m (J)V setCreatedTick a method_23956 + p 1 timestamp + m (Lnet/minecraft/server/level/Ticket;)I compareTo a method_14285 + p 1 other + m ()I getTicketLevel b method_14283 + m (J)Z timedOut b method_20627 + p 1 currentTime + m (Lnet/minecraft/server/level/TicketType;ILjava/lang/Object;)V + p 1 type + p 2 ticketLevel + p 3 key +c net/minecraft/server/level/TicketType aqz net/minecraft/class_3230 + f Lnet/minecraft/server/level/TicketType; START a field_14030 + f Lnet/minecraft/server/level/TicketType; DRAGON b field_17264 + f Lnet/minecraft/server/level/TicketType; PLAYER c field_14033 + f Lnet/minecraft/server/level/TicketType; FORCED d field_14031 + f Lnet/minecraft/server/level/TicketType; PORTAL e field_19280 + f Lnet/minecraft/server/level/TicketType; POST_TELEPORT f field_19347 + f Lnet/minecraft/server/level/TicketType; UNKNOWN g field_14032 + f Ljava/lang/String; name h field_14034 + f Ljava/util/Comparator; comparator i field_14029 + f J timeout j field_19348 + m ()Ljava/util/Comparator; getComparator a method_14292 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)I method_17315 a method_17315 + m (Ljava/lang/String;Ljava/util/Comparator;)Lnet/minecraft/server/level/TicketType; create a method_14291 + p 0 name + p 1 comparator + m (Ljava/lang/String;Ljava/util/Comparator;I)Lnet/minecraft/server/level/TicketType; create a method_20628 + p 0 name + p 1 comparator + p 2 lifespan + m ()J timeout b method_20629 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)I method_17316 b method_17316 + m (Ljava/lang/String;Ljava/util/Comparator;J)V + p 1 name + p 2 comparator + p 3 timeout + m ()V +c net/minecraft/server/level/TickingTracker ara net/minecraft/class_6609 + f I MAX_LEVEL a field_44858 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunks b field_34888 + f I INITIAL_TICKET_LIST_CAPACITY c field_34889 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; tickets d field_34890 + m ()V runAllUpdates a method_38635 + m (I)V replacePlayerTicketsLevel a method_38636 + p 1 ticketLevel + m (JLnet/minecraft/server/level/Ticket;)V addTicket a method_38637 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addTicket a method_38638 + p 1 type + p 2 chunkPos + p 3 ticketLevel + p 4 key + m (Lnet/minecraft/util/SortedArraySet;)I getTicketLevelAt a method_38639 + p 1 tickets + m (Lnet/minecraft/world/level/ChunkPos;)I getLevel a method_38640 + p 1 chunkPos + m (JLnet/minecraft/server/level/Ticket;)V removeTicket b method_38641 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeTicket b method_38642 + p 1 type + p 2 chunkPos + p 3 ticketLevel + p 4 key + m (J)Ljava/lang/String; getTicketDebugString d method_38643 + p 1 chunkPos + m (J)Lnet/minecraft/util/SortedArraySet; getTickets g method_38644 + p 1 chunkPos + m (J)Lnet/minecraft/util/SortedArraySet; method_38645 h method_38645 + m ()V +c net/minecraft/server/level/WorldGenRegion arb net/minecraft/class_3233 + f Lorg/slf4j/Logger; LOGGER a field_14092 + f Lnet/minecraft/util/StaticCache2D; cache b field_14098 + f Lnet/minecraft/world/level/chunk/ChunkAccess; center c field_28557 + f Lnet/minecraft/server/level/ServerLevel; level d field_14093 + f J seed e field_14087 + f Lnet/minecraft/world/level/storage/LevelData; levelData f field_14097 + f Lnet/minecraft/util/RandomSource; random g field_14091 + f Lnet/minecraft/world/level/dimension/DimensionType; dimensionType h field_14096 + f Lnet/minecraft/world/ticks/WorldGenTickAccess; blockTicks i field_14099 + f Lnet/minecraft/world/ticks/WorldGenTickAccess; fluidTicks j field_14094 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager k field_20668 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; generatingStep l field_51876 + f Ljava/util/function/Supplier; currentlyGenerating m field_33756 + f Ljava/util/concurrent/atomic/AtomicLong; subTickCount n field_35442 + f Lnet/minecraft/resources/ResourceLocation; WORLDGEN_REGION_RANDOM o field_38683 + m ()Lnet/minecraft/world/level/ChunkPos; getCenter a method_33561 + m (Lnet/minecraft/server/level/GenerationChunkHolder;)Ljava/lang/String; method_60479 a method_60479 + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround a method_42109 + p 1 pos + p 2 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Ljava/lang/String; method_60480 a method_60480 + m (Lnet/minecraft/core/BlockPos;)V markPosForPostprocessing f method_14338 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/TickContainerAccess; method_14337 g method_14337 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/TickContainerAccess; method_14340 k method_14340 + m ()Ljava/lang/String; method_60481 p method_60481 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/world/level/chunk/ChunkAccess;)V + p 1 level + p 2 cache + p 3 generatingStep + p 4 center + m ()V +c net/minecraft/server/level/package-info arc net/minecraft/class_5978 +c net/minecraft/server/level/progress/ChunkProgressListener ard net/minecraft/class_3949 + m ()V start a method_17675 + m (I)I calculateDiameter a method_56041 + p 0 radius + m (Lnet/minecraft/world/level/ChunkPos;)V updateSpawnPos a method_17669 + p 1 center + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V onStatusChange a method_17670 + p 1 chunkPos + p 2 chunkStatus + m ()V stop b method_17671 +c net/minecraft/server/level/progress/ChunkProgressListenerFactory are net/minecraft/class_3950 +c net/minecraft/server/level/progress/LoggerChunkProgressListener arf net/minecraft/class_3951 + f Lorg/slf4j/Logger; LOGGER a field_17467 + f I maxCount b field_17468 + f I count c field_17469 + f J startTime d field_17470 + f J nextTickTime e field_17471 + m (I)Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; createFromGameruleRadius b method_56042 + p 0 radius + m ()Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; createCompleted c method_56043 + m (I)Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; create c method_56044 + p 0 radius + m ()I getProgress d method_17672 + m (I)V + p 1 maxCount + m ()V +c net/minecraft/server/level/progress/ProcessorChunkProgressListener arg net/minecraft/class_3952 + f Lnet/minecraft/server/level/progress/ChunkProgressListener; delegate a field_17472 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox b field_17473 + f Z started c field_48272 + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;Ljava/util/concurrent/Executor;)Lnet/minecraft/server/level/progress/ProcessorChunkProgressListener; createStarted a method_34228 + p 0 delegate + p 1 dispatcher + m (Lnet/minecraft/world/level/ChunkPos;)V method_17673 b method_17673 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V method_17674 b method_17674 + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;Ljava/util/concurrent/Executor;)V + p 1 delegate + p 2 dispatcher +c net/minecraft/server/level/progress/StoringChunkProgressListener arh net/minecraft/class_3953 + f Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; delegate a field_17474 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; statuses b field_17475 + f Lnet/minecraft/world/level/ChunkPos; spawnPos c field_17476 + f I fullDiameter d field_17477 + f I radius e field_17478 + f I diameter f field_17479 + f Z started g field_17480 + m (II)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatus a method_17676 + p 1 x + p 2 z + m (I)Lnet/minecraft/server/level/progress/StoringChunkProgressListener; createFromGameruleRadius b method_56045 + p 0 radius + m ()Lnet/minecraft/server/level/progress/StoringChunkProgressListener; createCompleted c method_56046 + m (I)Lnet/minecraft/server/level/progress/StoringChunkProgressListener; create c method_56047 + p 0 radius + m ()I getFullDiameter d method_17677 + m ()I getDiameter e method_17678 + m ()I getProgress f method_17679 + m (Lnet/minecraft/server/level/progress/LoggerChunkProgressListener;III)V + p 1 delegate + p 2 fullDiameter + p 3 radius + p 4 diameter +c net/minecraft/server/level/progress/package-info ari net/minecraft/class_5979 +c net/minecraft/server/network/CommonListenerCookie arj net/minecraft/class_8792 + f Lcom/mojang/authlib/GameProfile; gameProfile a comp_1959 + f I latency b comp_1960 + f Lnet/minecraft/server/level/ClientInformation; clientInformation c comp_1961 + f Z transferred d comp_2202 + m ()Lcom/mojang/authlib/GameProfile; gameProfile a comp_1959 + m (Lcom/mojang/authlib/GameProfile;Z)Lnet/minecraft/server/network/CommonListenerCookie; createInitial a method_53824 + p 0 gameProfile + p 1 transferred + m ()I latency b comp_1960 + m ()Lnet/minecraft/server/level/ClientInformation; clientInformation c comp_1961 + m ()Z transferred d comp_2202 + m (Lcom/mojang/authlib/GameProfile;ILnet/minecraft/server/level/ClientInformation;Z)V +c net/minecraft/server/network/ConfigurationTask ark net/minecraft/class_8605 + m ()Lnet/minecraft/server/network/ConfigurationTask$Type; type a method_52375 + m (Ljava/util/function/Consumer;)V start a method_52376 + p 1 task +c net/minecraft/server/network/ConfigurationTask$Type ark$a net/minecraft/class_8605$class_8606 + f Ljava/lang/String; id a comp_1576 + m ()Ljava/lang/String; id a comp_1576 + m (Ljava/lang/String;)V +c net/minecraft/server/network/Filterable arl net/minecraft/class_9262 + f Ljava/lang/Object; raw a comp_2369 + f Ljava/util/Optional; filtered b comp_2370 + m ()Ljava/lang/Object; raw a comp_2369 + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; from a method_57134 + p 0 filteredText + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_57135 + p 0 codec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57136 a method_57136 + m (Ljava/lang/Object;)Lnet/minecraft/server/network/Filterable; passThrough a method_57137 + p 0 value + m (Ljava/util/function/Function;)Lnet/minecraft/server/network/Filterable; map a method_57138 + p 1 mappingFunction + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_57139 + p 0 codec + m (Z)Ljava/lang/Object; get a method_57140 + p 1 filtered + m ()Ljava/util/Optional; filtered b comp_2370 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve b method_57141 + p 1 resolver + m (Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/server/network/FilteredText arm net/minecraft/class_5837 + f Lnet/minecraft/server/network/FilteredText; EMPTY a field_28863 + f Ljava/lang/String; raw b comp_841 + f Lnet/minecraft/network/chat/FilterMask; mask c comp_978 + m ()Ljava/lang/String; filtered a method_45059 + m (Ljava/lang/String;)Lnet/minecraft/server/network/FilteredText; passThrough a method_45060 + p 0 raw + m ()Ljava/lang/String; filteredOrEmpty b method_45061 + m (Ljava/lang/String;)Lnet/minecraft/server/network/FilteredText; fullyFiltered b method_45062 + p 0 raw + m ()Z isFiltered c method_45063 + m ()Ljava/lang/String; raw d comp_841 + m ()Lnet/minecraft/network/chat/FilterMask; mask e comp_978 + m (Ljava/lang/String;Lnet/minecraft/network/chat/FilterMask;)V + m ()V +c net/minecraft/server/network/LegacyProtocolUtils arn net/minecraft/class_8607 + f I CUSTOM_PAYLOAD_PACKET_ID a field_44992 + f Ljava/lang/String; CUSTOM_PAYLOAD_PACKET_PING_CHANNEL b field_44993 + f I GET_INFO_PACKET_ID c field_44994 + f I GET_INFO_PACKET_VERSION_1 d field_44995 + f I DISCONNECT_PACKET_ID e field_44996 + f I FAKE_PROTOCOL_VERSION f field_44997 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; readLegacyString a method_52377 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V writeLegacyString a method_52378 + p 0 buffer + p 1 string + m ()V +c net/minecraft/server/network/LegacyQueryHandler aro net/minecraft/class_3238 + f Lorg/slf4j/Logger; LOGGER a field_14101 + f Lnet/minecraft/server/ServerInfo; server b field_44998 + m (Lnet/minecraft/server/ServerInfo;)Ljava/lang/String; createVersion0Response a method_52379 + p 0 server + m (Lio/netty/buffer/ByteBuf;)Z readCustomPayloadPacket a method_52380 + p 0 buffer + m (Lio/netty/buffer/ByteBufAllocator;Ljava/lang/String;)Lio/netty/buffer/ByteBuf; createLegacyDisconnectPacket a method_52381 + p 0 bufferAllocator + p 1 reason + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V sendFlushAndClose a method_14344 + p 0 context + p 1 buffer + m (Lnet/minecraft/server/ServerInfo;)Ljava/lang/String; createVersion1Response b method_52382 + p 0 server + m (Lnet/minecraft/server/ServerInfo;)V + p 1 server + m ()V +c net/minecraft/server/network/MemoryServerHandshakePacketListenerImpl arp net/minecraft/class_3240 + f Lnet/minecraft/server/MinecraftServer; server b field_14104 + f Lnet/minecraft/network/Connection; connection c field_14103 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;)V + p 1 server + p 2 connection +c net/minecraft/server/network/PlayerChunkSender arq net/minecraft/class_8608 + f F MIN_CHUNKS_PER_TICK a field_45000 + f F MAX_CHUNKS_PER_TICK b field_45001 + f Lorg/slf4j/Logger; LOGGER c field_45002 + f F START_CHUNKS_PER_TICK d field_45003 + f I MAX_UNACKNOWLEDGED_BATCHES e field_45004 + f Lit/unimi/dsi/fastutil/longs/LongSet; pendingChunks f field_45005 + f Z memoryConnection g field_45006 + f F desiredChunksPerTick h field_45007 + f F batchQuota i field_45008 + f I unacknowledgedBatches j field_45009 + f I maxUnacknowledgedBatches k field_45010 + m (F)V onChunkBatchReceivedByClient a method_52383 + p 1 desiredBatchSize + m (J)Z isPending a method_52384 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; collectChunksToSend a method_52385 + p 1 chunkMap + p 2 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V sendNextChunks a method_52386 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V dropChunk a method_52387 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V sendChunk a method_52388 + p 0 packetListener + p 1 level + p 2 chunk + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/LevelChunk;)I method_52389 a method_52389 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V markChunkPendingToSend a method_52390 + p 1 chunk + m (Z)V + p 1 memoryConnection + m ()V +c net/minecraft/server/network/ServerCommonPacketListenerImpl arr net/minecraft/class_8609 + f I LATENCY_CHECK_INTERVAL b field_45011 + f Lnet/minecraft/network/chat/Component; DISCONNECT_UNEXPECTED_QUERY c field_48273 + f Lnet/minecraft/server/MinecraftServer; server d field_45012 + f Lnet/minecraft/network/Connection; connection e field_45013 + f Lorg/slf4j/Logger; LOGGER f field_45014 + f I CLOSED_LISTENER_TIMEOUT g field_51342 + f Lnet/minecraft/network/chat/Component; TIMEOUT_DISCONNECTION_MESSAGE h field_45015 + f Z transferred i field_48274 + f J keepAliveTime j field_45016 + f Z keepAlivePending k field_45017 + f J keepAliveChallenge l field_45018 + f J closedListenerTime m field_51343 + f Z closed n field_51344 + f I latency o field_45019 + f Z suspendFlushingOnServerThread p field_45715 + m (J)Z checkIfClosed a method_59511 + p 1 time + m (Lnet/minecraft/server/level/ClientInformation;)Lnet/minecraft/server/network/CommonListenerCookie; createCookie a method_53825 + p 1 clientInformation + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_52396 + p 1 reason + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;)V send a method_52391 + p 1 packet + p 2 listener + m (Lnet/minecraft/network/DisconnectionDetails;)V disconnect b method_60673 + p 1 disconnectionDetails + m (Lnet/minecraft/network/protocol/Packet;)V send b method_14364 + p 1 packet + m (Lnet/minecraft/network/DisconnectionDetails;)V method_60674 c method_60674 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_52399 c method_52399 + m ()V keepConnectionAlive e method_52400 + m ()V suspendFlushing f method_53046 + m ()V resumeFlushing g method_53047 + m ()Z isSingleplayerOwner h method_52402 + m ()Lcom/mojang/authlib/GameProfile; playerProfile i method_52403 + m ()Lcom/mojang/authlib/GameProfile; getOwner j method_52404 + m ()I latency k method_52405 + m ()V close l method_59512 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 cookie + m ()V +c net/minecraft/server/network/ServerConfigurationPacketListenerImpl ars net/minecraft/class_8610 + c

Interface {@link net.fabricmc.fabric.api.networking.v1.FabricServerConfigurationNetworkHandler} injected by mod fabric-networking-api-v1

+ f Lorg/slf4j/Logger; LOGGER f field_45020 + f Lnet/minecraft/network/chat/Component; DISCONNECT_REASON_INVALID_DATA g field_45021 + f Lcom/mojang/authlib/GameProfile; gameProfile h field_45022 + f Ljava/util/Queue; configurationTasks i field_45023 + f Lnet/minecraft/server/network/ConfigurationTask; currentTask j field_45024 + f Lnet/minecraft/server/level/ClientInformation; clientInformation k field_46157 + f Lnet/minecraft/server/network/config/SynchronizeRegistriesTask; synchronizeRegistriesTask l field_49026 + m (Lnet/minecraft/server/network/ConfigurationTask$Type;)V finishCurrentTask a method_52406 + p 1 taskType + m (Lnet/minecraft/server/packs/PackResources;)Ljava/util/stream/Stream; method_56530 a method_56530 + m (Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo;)V method_52407 a method_52407 + m ()V startConfiguration l method_52409 + m ()V returnToWorld m method_52410 + m ()V addOptionalTasks n method_52411 + m ()V startNextTask o method_52412 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 cookie + m ()V +c net/minecraft/server/network/ServerConnectionListener art net/minecraft/class_3242 + f Ljava/util/function/Supplier; SERVER_EVENT_GROUP a field_14111 + f Ljava/util/function/Supplier; SERVER_EPOLL_EVENT_GROUP b field_14105 + f Z running c field_14108 + c True if this NetworkSystem has never had his endpoints terminated + f Lorg/slf4j/Logger; LOGGER d field_14110 + f Lnet/minecraft/server/MinecraftServer; server e field_14109 + c Reference to the MinecraftServer object. + f Ljava/util/List; channels f field_14106 + c Contains all endpoints added to this NetworkSystem + f Ljava/util/List; connections g field_14107 + c A list containing all NetworkManager instances of all endpoints + m ()Ljava/net/SocketAddress; startMemoryChannel a method_14353 + c Adds a channel that listens locally + m (Ljava/net/InetAddress;I)V startTcpServerListener a method_14354 + c Adds a channel that listens on publicly accessible network ports + p 1 address + p 2 port + m (Lnet/minecraft/network/Connection;Lnet/minecraft/network/chat/Component;)V method_14352 a method_14352 + m ()V stop b method_14356 + c Shuts down all open endpoints (with immediate effect?) + m ()V tick c method_14357 + c Will try to process the packets received by each NetworkManager, gracefully manage processing failures and cleans up dead connections + m ()Lnet/minecraft/server/MinecraftServer; getServer d method_14351 + m ()Ljava/util/List; getConnections e method_37909 + m ()Lio/netty/channel/epoll/EpollEventLoopGroup; method_14349 f method_14349 + m ()Lio/netty/channel/nio/NioEventLoopGroup; method_14348 g method_14348 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/network/ServerConnectionListener$1 art$1 net/minecraft/class_3242$1 + f Lnet/minecraft/server/network/ServerConnectionListener; field_14112 a field_14112 + m (Lnet/minecraft/server/network/ServerConnectionListener;)V +c net/minecraft/server/network/ServerConnectionListener$2 art$2 net/minecraft/class_3242$2 + f Lnet/minecraft/server/network/ServerConnectionListener; field_14113 a field_14113 + m (Lnet/minecraft/server/network/ServerConnectionListener;)V +c net/minecraft/server/network/ServerConnectionListener$LatencySimulator art$a net/minecraft/class_3242$class_5980 + f Lio/netty/util/Timer; TIMER a field_29772 + f I delay b field_29773 + f I jitter c field_29774 + f Ljava/util/List; queuedMessages d field_29775 + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V delayDownstream a method_34880 + p 1 ctx + p 2 msg + m (Lio/netty/util/Timeout;)V onTimeout a method_34881 + p 1 timeout + m (II)V + p 1 delay + p 2 jitter + m ()V +c net/minecraft/server/network/ServerConnectionListener$LatencySimulator$DelayedMessage art$a$a net/minecraft/class_3242$class_5980$class_5981 + f Lio/netty/channel/ChannelHandlerContext; ctx a field_29776 + f Ljava/lang/Object; msg b field_29777 + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V + p 1 ctx + p 2 msg +c net/minecraft/server/network/ServerGamePacketListenerImpl aru net/minecraft/class_3244 + f D vehicleFirstGoodY A field_14124 + f D vehicleFirstGoodZ B field_14142 + f D vehicleLastGoodX C field_14122 + f D vehicleLastGoodY D field_14141 + f D vehicleLastGoodZ E field_14120 + f Lnet/minecraft/world/phys/Vec3; awaitingPositionFromClient F field_14119 + f I awaitingTeleport G field_14123 + f I awaitingTeleportTime H field_14139 + f Z clientIsFloating I field_14131 + f I aboveGroundTickCount J field_14138 + c Used to keep track of how the player is floating while gamerules should prevent that. Surpassing 80 ticks means kick + f Z clientVehicleIsFloating K field_14129 + f I aboveGroundVehicleTickCount L field_14137 + f I receivedMovePacketCount M field_14117 + f I knownMovePacketCount N field_14135 + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession O field_40720 + f Lnet/minecraft/network/chat/SignedMessageChain$Decoder; signedMessageDecoder P field_39805 + f Lnet/minecraft/network/chat/LastSeenMessagesValidator; lastSeenMessages Q field_39825 + f Lnet/minecraft/network/chat/MessageSignatureCache; messageSignatureCache R field_39987 + f Lnet/minecraft/util/FutureChain; chatMessageChain S field_39826 + f Z waitingForSwitchToConfig T field_45025 + f Lnet/minecraft/server/level/ServerPlayer; player f field_14140 + f Lnet/minecraft/server/network/PlayerChunkSender; chunkSender g field_45026 + f Lorg/slf4j/Logger; LOGGER h field_14121 + f I NO_BLOCK_UPDATES_TO_ACK i field_37281 + f I TRACKED_MESSAGE_DISCONNECT_THRESHOLD j field_39989 + f I MAXIMUM_FLYING_TICKS k field_49027 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_FAILED l field_39990 + f Lnet/minecraft/network/chat/Component; INVALID_COMMAND_SIGNATURE m field_50089 + f I MAX_COMMAND_SUGGESTIONS n field_49778 + f I tickCount o field_14118 + f I ackBlockChangesUpTo p field_37282 + f I chatSpamTickCount q field_14116 + c Incremented by 20 each time a user sends a chat message, decreased by one every tick. Non-ops kicked when over 200 + f I dropSpamTickCount r field_14133 + f D firstGoodX s field_14130 + f D firstGoodY t field_14146 + f D firstGoodZ u field_14128 + f D lastGoodX v field_14145 + f D lastGoodY w field_14126 + f D lastGoodZ x field_14144 + f Lnet/minecraft/world/entity/Entity; lastVehicle y field_14147 + f D vehicleFirstGoodX z field_14143 + m (D)D clampHorizontal a method_34882 + p 0 value + m (DDDFF)V teleport a method_14363 + p 1 x + p 3 y + p 5 z + p 7 yaw + p 8 pitch + m (DDDFFLjava/util/Set;)V teleport a method_14360 + c Teleports the player position to the (relative) values specified, and syncs to the client + p 1 x + p 3 y + p 5 z + p 7 yaw + p 8 pitch + p 9 relativeSet + m (I)V ackBlockChangesUpTo a method_41255 + p 1 sequence + m (ILjava/util/List;)V method_31274 a method_31274 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Ljava/util/Optional;)V method_58588 a method_58588 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Lnet/minecraft/network/chat/LastSeenMessages;)V performSignedChatCommand a method_45010 + p 1 packet + p 2 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Lnet/minecraft/network/chat/SignableCommand;Lnet/minecraft/network/chat/LastSeenMessages;)Ljava/util/Map; collectSignedArguments a method_45006 + p 1 packet + p 2 command + p 3 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;Ljava/util/Optional;)V method_44900 a method_44900 + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;Lnet/minecraft/network/chat/LastSeenMessages;)Lnet/minecraft/network/chat/PlayerChatMessage; getSignedMessage a method_45011 + p 1 packet + p 2 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket;Lcom/mojang/brigadier/suggestion/Suggestions;)V method_14365 a method_14365 + m (Lnet/minecraft/network/protocol/game/ServerboundPlaceRecipePacket;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_17820 a method_17820 + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;Ljava/util/List;)V updateSignText a method_31282 + p 1 packet + p 2 filteredText + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)Z wasBlockPlacementAttempt a method_27913 + p 0 player + p 1 stack + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; filterableFromOutgoing a method_57142 + p 1 filteredText + m (Lnet/minecraft/server/network/FilteredText;Ljava/util/List;I)V signBook a method_31276 + p 1 title + p 2 pages + p 3 index + m (Lnet/minecraft/world/entity/Entity;)I getMaximumFlyingTicks a method_56922 + p 1 entity + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/phys/AABB;DDD)Z isPlayerCollidingWithAnythingNew a method_20630 + p 1 level + p 2 box + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/CommandSourceStack; method_45002 a method_45002 + m (Ljava/lang/Object;)Ljava/lang/Object; method_31284 a method_31284 + m (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31275 + p 1 message + p 2 processor + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31277 + p 1 text + m (Ljava/lang/String;Ljava/lang/Runnable;)V tryHandleChat a method_44337 + p 1 message + p 2 handler + m (Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/network/chat/SignedMessageChain$DecodeException; createSignedArgumentMismatchException a method_58589 + p 0 command + p 1 signedArguments + p 2 unsignedArguments + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31279 + p 1 texts + m (Ljava/util/List;I)V updateBookContents a method_31278 + p 1 pages + p 2 index + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V sendDisguisedChatMessage a method_45168 + p 1 message + p 2 boundType + m (Lnet/minecraft/network/chat/LastSeenMessages$Update;)Ljava/util/Optional; unpackAndApplyLastSeen a method_45169 + p 1 update + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V addPendingMessage a method_44897 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/ChatType$Bound;)V sendPlayerChatMessage a method_45170 + p 1 chatMessage + p 2 boundType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/network/FilteredText;)V method_45064 a method_45064 + m (Lnet/minecraft/network/chat/RemoteChatSession;)V resetPlayerChatState a method_46365 + p 1 chatSession + m (Lnet/minecraft/network/chat/SignedMessageChain$DecodeException;)V handleMessageDecodeFailure a method_45171 + p 1 exception + m (D)D clampVertical b method_34883 + p 0 value + m (DDDFF)Z containsInvalidValues b method_14371 + p 0 x + p 2 y + p 4 z + p 6 yRot + p 7 xRot + m (ILjava/util/List;)V method_31283 b method_31283 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandPacket;)V method_44356 b method_44356 + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;Ljava/util/List;)V method_31285 b method_31285 + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; method_33799 b method_33799 + m (Lnet/minecraft/world/entity/Entity;)Z noBlocksAround b method_29780 + p 1 entity + m (Ljava/lang/String;)V performUnsignedChatCommand b method_58590 + p 1 command + m (Ljava/util/List;)Ljava/util/Map; collectUnsignedArguments b method_58591 + p 1 arguments + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V broadcastChatMessage b method_44155 + p 1 message + m (Lnet/minecraft/network/chat/RemoteChatSession;)V method_54439 b method_54439 + m (Ljava/lang/String;)Lcom/mojang/brigadier/ParseResults; parseCommand c method_45003 + p 1 command + m (Ljava/lang/String;)Z isChatMessageIllegal d method_43508 + p 0 message + m ()V resetPosition l method_14372 + m ()Ljava/net/SocketAddress; getRemoteAddress m method_48107 + m ()V switchToConfig n method_52414 + m ()Z updateAwaitingTeleport p method_60947 + m ()V removePlayerFromWorld q method_52415 + m ()V detectRateSpam r method_43669 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 player + p 4 cookie + m ()V +c net/minecraft/server/network/ServerGamePacketListenerImpl$1 aru$1 net/minecraft/class_3244$1 + f Lnet/minecraft/server/level/ServerLevel; val$level a field_39991 + f Lnet/minecraft/world/entity/Entity; val$target b field_28962 + f Lnet/minecraft/server/network/ServerGamePacketListenerImpl; field_28963 c field_28963 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/server/network/ServerGamePacketListenerImpl$EntityInteraction;)V performInteraction a method_33897 + p 1 hand + p 2 entityInteraction + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; method_33898 a method_33898 + m (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V +c net/minecraft/server/network/ServerGamePacketListenerImpl$2 aru$2 net/minecraft/class_3244$2 + f [I $SwitchMap$net$minecraft$world$level$block$entity$CommandBlockEntity$Mode a field_28964 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundPlayerActionPacket$Action b field_28965 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundPlayerCommandPacket$Action c field_28966 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundClientCommandPacket$Action d field_28967 + m ()V +c net/minecraft/server/network/ServerGamePacketListenerImpl$EntityInteraction aru$a net/minecraft/class_3244$class_5860 +c net/minecraft/server/network/ServerHandshakePacketListenerImpl arv net/minecraft/class_3246 + f Lnet/minecraft/network/chat/Component; IGNORE_STATUS_REASON b field_24457 + f Lnet/minecraft/server/MinecraftServer; server c field_14154 + f Lnet/minecraft/network/Connection; connection d field_14153 + m (Lnet/minecraft/network/protocol/handshake/ClientIntentionPacket;Z)V beginLogin a method_56048 + p 1 packet + p 2 transferred + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;)V + p 1 server + p 2 connection + m ()V +c net/minecraft/server/network/ServerHandshakePacketListenerImpl$1 arv$1 net/minecraft/class_3246$1 + f [I $SwitchMap$net$minecraft$network$protocol$handshake$ClientIntent a field_14155 + m ()V +c net/minecraft/server/network/ServerLoginPacketListenerImpl arw net/minecraft/class_3248 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID b field_14157 + f Lorg/slf4j/Logger; LOGGER c field_14166 + f I MAX_TICKS_BEFORE_LOGIN d field_29779 + f [B challenge e field_14167 + f Lnet/minecraft/server/MinecraftServer; server f field_14162 + f Lnet/minecraft/network/Connection; connection g field_14158 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; state h field_14163 + f I tick i field_14156 + c How long has player been trying to login into the server. + f Ljava/lang/String; requestedUsername j field_45028 + f Lcom/mojang/authlib/GameProfile; authenticatedProfile k field_45029 + f Ljava/lang/String; serverId l field_14165 + f Z transferred m field_48275 + m (Lcom/mojang/authlib/GameProfile;)Z isPlayerAlreadyInWorld a method_52416 + p 1 profile + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_14380 + p 1 reason + m (Lcom/mojang/authlib/GameProfile;)V startClientVerification b method_52417 + p 1 authenticatedProfile + m (Lcom/mojang/authlib/GameProfile;)V verifyLoginAndFinishConnectionSetup c method_52419 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)V finishLoginAndWaitForClient d method_52420 + p 1 profile + m ()Ljava/lang/String; getUserName e method_14383 + m ()Ljava/lang/String; method_55598 f method_55598 + m ()V method_52421 g method_52421 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Z)V + p 1 server + p 2 connection + p 3 transferred + m ()V +c net/minecraft/server/network/ServerLoginPacketListenerImpl$1 arw$1 net/minecraft/class_3248$1 + f Ljava/lang/String; val$digest a field_26900 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl; field_14176 b field_14176 + m ()Ljava/net/InetAddress; getAddress a method_14386 + m (Lnet/minecraft/server/network/ServerLoginPacketListenerImpl;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/server/network/ServerLoginPacketListenerImpl$State arw$a net/minecraft/class_3248$class_3249 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; HELLO a field_14170 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; KEY b field_14175 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; AUTHENTICATING c field_14169 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; NEGOTIATING d field_14173 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; VERIFYING e field_45030 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; WAITING_FOR_DUPE_DISCONNECT f field_45031 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; PROTOCOL_SWITCHING g field_45032 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; ACCEPTED h field_14172 + f [Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; $VALUES i field_14174 + m ()[Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; $values a method_36581 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/network/ServerPlayerConnection arx net/minecraft/class_5629 + m (Lnet/minecraft/network/protocol/Packet;)V send b method_14364 + p 1 packet + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayer o method_32311 +c net/minecraft/server/network/ServerStatusPacketListenerImpl ary net/minecraft/class_3251 + f Lnet/minecraft/network/chat/Component; DISCONNECT_REASON b field_14179 + f Lnet/minecraft/network/protocol/status/ServerStatus; status c field_42544 + f Lnet/minecraft/network/Connection; connection d field_14178 + f Z hasRequestedStatus e field_14177 + m (Lnet/minecraft/network/protocol/status/ServerStatus;Lnet/minecraft/network/Connection;)V + p 1 status + p 2 connection + m ()V +c net/minecraft/server/network/TextFilter arz net/minecraft/class_5513 + f Lnet/minecraft/server/network/TextFilter; DUMMY a field_28862 + m ()V join a method_31287 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; processStreamMessage a method_31288 + p 1 text + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; processMessageBundle a method_31289 + p 1 texts + m ()V leave b method_31290 + m ()V +c net/minecraft/server/network/TextFilter$1 arz$1 net/minecraft/class_5513$1 + m ()V +c net/minecraft/server/network/TextFilterClient asa net/minecraft/class_5514 + f Lorg/slf4j/Logger; LOGGER a field_26823 + f Ljava/util/concurrent/atomic/AtomicInteger; WORKER_COUNT b field_26824 + f Ljava/util/concurrent/ThreadFactory; THREAD_FACTORY c field_26825 + f Ljava/lang/String; DEFAULT_ENDPOINT d field_38055 + f Ljava/net/URL; chatEndpoint e field_26826 + f Lnet/minecraft/server/network/TextFilterClient$MessageEncoder; chatEncoder f field_38056 + f Ljava/net/URL; joinEndpoint g field_26827 + f Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder; joinEncoder h field_38057 + f Ljava/net/URL; leaveEndpoint i field_26828 + f Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder; leaveEncoder j field_38058 + f Ljava/lang/String; authKey k field_26829 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; chatIgnoreStrategy l field_26832 + f Ljava/util/concurrent/ExecutorService; workerPool m field_26833 + m (ILjava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_42110 a method_42110 + m (Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Lcom/mojang/authlib/GameProfile;Ljava/net/URL;)V method_31296 a method_31296 + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getEndpointFromConfig a method_42111 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Lcom/google/gson/JsonObject; processRequestResponse a method_31295 + p 1 json + p 2 requestUrl + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/server/network/TextFilter; createContext a method_31297 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;)Lnet/minecraft/server/network/FilteredText; method_31294 a method_31294 + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; requestMessageProcessing a method_31298 + p 1 profile + p 2 text + p 3 ignoreStrategy + p 4 executor + m (Lcom/mojang/authlib/GameProfile;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/util/concurrent/Executor;)V processJoinOrLeave a method_31299 + p 1 profile + p 2 url + p 3 encoder + p 4 executor + m (Ljava/io/InputStream;)V drainStream a method_31300 + p 1 stream + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_31301 a method_31301 + m (Ljava/lang/String;)Lnet/minecraft/server/network/TextFilterClient; createFromConfig a method_33805 + p 0 config + m (Ljava/lang/String;Lcom/google/gson/JsonArray;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;)Lnet/minecraft/network/chat/FilterMask; parseMask a method_45066 + p 1 text + p 2 hashes + p 3 ignoreStrategy + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;)Lcom/google/gson/JsonObject; method_42112 a method_42112 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_42113 a method_42113 + m (Ljava/net/URI;Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL; getEndpoint a method_41206 + p 0 uri + p 1 json + p 2 memberName + p 3 fallback + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)V processRequest b method_31304 + p 1 json + p 2 requestUrl + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Ljava/net/HttpURLConnection; makeRequest c method_31306 + p 1 json + p 2 requestUrl + m (Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$MessageEncoder;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;I)V + p 1 chatEndpoint + p 2 chatEncoder + p 3 joinEndpoint + p 4 joinEncoder + p 5 leaveEndpoint + p 6 leaveEncoder + p 7 authKey + p 8 chatIgnoreStrategy + p 9 workerThreadCount + m ()V +c net/minecraft/server/network/TextFilterClient$IgnoreStrategy asa$a net/minecraft/class_5514$class_5515 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; NEVER_IGNORE a field_26834 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; IGNORE_FULLY_FILTERED b field_26835 + m (ILjava/lang/String;I)Z method_33807 a method_33807 + m (Ljava/lang/String;I)Z method_31310 a method_31310 + m (Ljava/lang/String;I)Z method_31312 b method_31312 + m (I)Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; ignoreOverThreshold ignoreOverThreshold method_33806 + p 0 threshold + m (I)Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; select select method_33808 + p 0 threshold + m ()V +c net/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder asa$b net/minecraft/class_5514$class_7241 +c net/minecraft/server/network/TextFilterClient$MessageEncoder asa$c net/minecraft/class_5514$class_7242 +c net/minecraft/server/network/TextFilterClient$PlayerContext asa$d net/minecraft/class_5514$class_5516 + f Lnet/minecraft/server/network/TextFilterClient; field_26836 b field_26836 + f Lcom/mojang/authlib/GameProfile; profile c field_26837 + f Ljava/util/concurrent/Executor; streamExecutor d field_26838 + m (Ljava/lang/Throwable;)Ljava/util/List; method_33809 a method_33809 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_31315 b method_31315 + m (Lnet/minecraft/server/network/TextFilterClient;Lcom/mojang/authlib/GameProfile;)V + p 2 profile +c net/minecraft/server/network/TextFilterClient$RequestFailedException asa$e net/minecraft/class_5514$class_5517 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/server/network/config/JoinWorldTask asb net/minecraft/class_8611 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_45033 + m ()V + m ()V +c net/minecraft/server/network/config/ServerResourcePackConfigurationTask asc net/minecraft/class_8612 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_45034 + f Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo; info b field_45035 + m (Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo;)V + p 1 info + m ()V +c net/minecraft/server/network/config/SynchronizeRegistriesTask asd net/minecraft/class_9223 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_49028 + f Ljava/util/List; requestedPacks b field_49029 + f Lnet/minecraft/core/LayeredRegistryAccess; registries c field_49030 + m (Ljava/util/List;Ljava/util/function/Consumer;)V handleResponse a method_56923 + p 1 packs + p 2 packetSender + m (Ljava/util/function/Consumer;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V method_56924 a method_56924 + m (Ljava/util/function/Consumer;Ljava/util/Set;)V sendRegistries a method_56925 + p 1 packetSender + p 2 packs + m (Ljava/util/List;Lnet/minecraft/core/LayeredRegistryAccess;)V + p 1 requestedPacks + p 2 registries + m ()V +c net/minecraft/server/network/config/package-info ase net/minecraft/class_8613 +c net/minecraft/server/network/package-info asf net/minecraft/class_5982 +c net/minecraft/server/package-info asg net/minecraft/class_5983 +c net/minecraft/server/packs/AbstractPackResources ash net/minecraft/class_3255 + f Lorg/slf4j/Logger; LOGGER c field_14182 + f Lnet/minecraft/server/packs/PackLocationInfo; location d field_49031 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/io/InputStream;)Ljava/lang/Object; getMetadataFromStream a method_14392 + p 0 deserializer + p 1 inputStream + m (Lnet/minecraft/server/packs/PackLocationInfo;)V + p 1 location + m ()V +c net/minecraft/server/packs/BuiltInMetadata asi net/minecraft/class_7662 + f Lnet/minecraft/server/packs/BuiltInMetadata; EMPTY a field_39994 + f Ljava/util/Map; values b field_39995 + m ()Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45172 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/lang/Object; get a method_45173 + p 1 serializer + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45174 + p 0 serializer + p 1 value + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45175 + p 0 serializer1 + p 1 value1 + p 2 serializer2 + p 3 value2 + m (Ljava/util/Map;)V + p 1 values + m ()V +c net/minecraft/server/packs/CompositePackResources asj net/minecraft/class_8614 + f Lnet/minecraft/server/packs/PackResources; primaryPackResources c field_45036 + f Ljava/util/List; packResourcesStack d field_45037 + m (Lnet/minecraft/server/packs/PackResources;Ljava/util/List;)V + p 1 primaryPackResources + p 2 packResourcesStack +c net/minecraft/server/packs/DownloadCacheCleaner ask net/minecraft/class_9055 + f Lorg/slf4j/Logger; LOGGER a field_47674 + m (Ljava/nio/file/Path;)Ljava/util/List; listFilesWithModificationTimes a method_55599 + p 0 path + m (Ljava/nio/file/Path;I)V vacuumCacheDir a method_55600 + p 0 path + p 1 maxEntries + m (Ljava/util/List;)Ljava/util/List; prioritizeFilesInDirs a method_55601 + p 0 paths + m ()V + m ()V +c net/minecraft/server/packs/DownloadCacheCleaner$1 ask$1 net/minecraft/class_9055$1 + f Ljava/nio/file/Path; val$cacheDir a field_47675 + f Ljava/util/List; val$unsortedFiles b field_47676 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_55602 + p 1 path + p 2 file + m (Ljava/nio/file/Path;Ljava/util/List;)V +c net/minecraft/server/packs/DownloadCacheCleaner$PathAndPriority ask$a net/minecraft/class_9055$class_9056 + f Ljava/util/Comparator; HIGHEST_PRIORITY_FIRST a field_47677 + f Ljava/nio/file/Path; path b comp_2168 + f I removalPriority c comp_2169 + m ()Ljava/nio/file/Path; path a comp_2168 + m ()I removalPriority b comp_2169 + m (Ljava/nio/file/Path;I)V + m ()V +c net/minecraft/server/packs/DownloadCacheCleaner$PathAndTime ask$b net/minecraft/class_9055$class_9057 + f Ljava/util/Comparator; NEWEST_FIRST a field_47678 + f Ljava/nio/file/Path; path b comp_2170 + f Ljava/nio/file/attribute/FileTime; modifiedTime c comp_2171 + m ()Ljava/nio/file/Path; path a comp_2170 + m ()Ljava/nio/file/attribute/FileTime; modifiedTime b comp_2171 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/FileTime;)V + m ()V +c net/minecraft/server/packs/DownloadQueue asl net/minecraft/class_9028 + f Lorg/slf4j/Logger; LOGGER a field_47572 + f I MAX_KEPT_PACKS b field_47679 + f Ljava/nio/file/Path; cacheDir c field_47573 + f Lnet/minecraft/util/eventlog/JsonEventLog; eventLog d field_47574 + f Lnet/minecraft/util/thread/ProcessorMailbox; tasks e field_47575 + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;Ljava/util/UUID;Lnet/minecraft/server/packs/DownloadQueue$DownloadRequest;)V method_55485 a method_55485 + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; downloadBatch a method_55486 + p 1 batchConfig + p 2 downloads + m (Ljava/nio/file/Path;)Lcom/mojang/datafixers/util/Either; getFileInfo a method_55487 + p 1 path + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Lnet/minecraft/server/packs/DownloadQueue$BatchResult; runDownload b method_55488 + p 1 batchConfig + p 2 downloads + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Lnet/minecraft/server/packs/DownloadQueue$BatchResult; method_55489 c method_55489 + m (Ljava/nio/file/Path;)V + p 1 cacheDir + m ()V +c net/minecraft/server/packs/DownloadQueue$BatchConfig asl$a net/minecraft/class_9028$class_9029 + f Lcom/google/common/hash/HashFunction; hashFunction a comp_2138 + f I maxSize b comp_2139 + f Ljava/util/Map; headers c comp_2140 + f Ljava/net/Proxy; proxy d comp_2141 + f Lnet/minecraft/util/HttpUtil$DownloadProgressListener; listener e comp_2142 + m ()Lcom/google/common/hash/HashFunction; hashFunction a comp_2138 + m ()I maxSize b comp_2139 + m ()Ljava/util/Map; headers c comp_2140 + m ()Ljava/net/Proxy; proxy d comp_2141 + m ()Lnet/minecraft/util/HttpUtil$DownloadProgressListener; listener e comp_2142 + m (Lcom/google/common/hash/HashFunction;ILjava/util/Map;Ljava/net/Proxy;Lnet/minecraft/util/HttpUtil$DownloadProgressListener;)V +c net/minecraft/server/packs/DownloadQueue$BatchResult asl$b net/minecraft/class_9028$class_9030 + f Ljava/util/Map; downloaded a comp_2143 + f Ljava/util/Set; failed b comp_2144 + m ()Ljava/util/Map; downloaded a comp_2143 + m ()Ljava/util/Set; failed b comp_2144 + m ()V + m (Ljava/util/Map;Ljava/util/Set;)V +c net/minecraft/server/packs/DownloadQueue$DownloadRequest asl$c net/minecraft/class_9028$class_9031 + f Ljava/net/URL; url a comp_2145 + f Lcom/google/common/hash/HashCode; hash b comp_2146 + m ()Ljava/net/URL; url a comp_2145 + m ()Lcom/google/common/hash/HashCode; hash b comp_2146 + m (Ljava/net/URL;Lcom/google/common/hash/HashCode;)V +c net/minecraft/server/packs/DownloadQueue$FileInfoEntry asl$d net/minecraft/class_9028$class_9032 + f Lcom/mojang/serialization/Codec; CODEC a field_47576 + f Ljava/lang/String; name b comp_2147 + f J size c comp_2148 + m ()Ljava/lang/String; name a comp_2147 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55490 a method_55490 + m ()J size b comp_2148 + m (Ljava/lang/String;J)V + m ()V +c net/minecraft/server/packs/DownloadQueue$LogEntry asl$e net/minecraft/class_9028$class_9033 + f Lcom/mojang/serialization/Codec; CODEC a field_47577 + f Ljava/util/UUID; id b comp_2149 + f Ljava/lang/String; url c comp_2150 + f Ljava/time/Instant; time d comp_2151 + f Ljava/util/Optional; hash e comp_2152 + f Lcom/mojang/datafixers/util/Either; errorOrFileInfo f comp_2153 + m ()Ljava/util/UUID; id a comp_2149 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55491 a method_55491 + m ()Ljava/lang/String; url b comp_2150 + m ()Ljava/time/Instant; time c comp_2151 + m ()Ljava/util/Optional; hash d comp_2152 + m ()Lcom/mojang/datafixers/util/Either; errorOrFileInfo e comp_2153 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/time/Instant;Ljava/util/Optional;Lcom/mojang/datafixers/util/Either;)V + m ()V +c net/minecraft/server/packs/FeatureFlagsMetadataSection asm net/minecraft/class_7663 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_39996 + f Lnet/minecraft/world/flag/FeatureFlagSet; flags b comp_994 + f Lcom/mojang/serialization/Codec; CODEC c field_39997 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; flags a comp_994 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45176 a method_45176 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)V + m ()V +c net/minecraft/server/packs/FilePackResources asn net/minecraft/class_3258 + f Lorg/slf4j/Logger; LOGGER c field_39096 + f Lnet/minecraft/server/packs/FilePackResources$SharedZipFileAccess; zipFileAccess d field_45038 + f Ljava/lang/String; prefix e field_45039 + m (Ljava/lang/String;)Ljava/lang/String; addPrefix a method_52422 + p 1 resourcePath + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; extractNamespace a method_52423 + p 0 directory + p 1 name + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; getPathFromLocation b method_45177 + p 0 packType + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource b method_14391 + p 1 resourcePath + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/FilePackResources$SharedZipFileAccess;Ljava/lang/String;)V + p 1 location + p 2 zipFileAccess + p 3 prefix + m ()V +c net/minecraft/server/packs/FilePackResources$FileResourcesSupplier asn$a net/minecraft/class_3258$class_8615 + f Ljava/io/File; content a field_45040 + m (Ljava/nio/file/Path;)V + p 1 content + m (Ljava/io/File;)V + p 1 content +c net/minecraft/server/packs/FilePackResources$SharedZipFileAccess asn$b net/minecraft/class_3258$class_8616 + f Ljava/io/File; file a field_45042 + f Ljava/util/zip/ZipFile; zipFile b field_45043 + f Z failedToLoad c field_45044 + m ()Ljava/util/zip/ZipFile; getOrCreateZipFile a method_52426 + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/packs/OverlayMetadataSection aso net/minecraft/class_8617 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_45045 + f Ljava/util/List; overlays b comp_1577 + f Ljava/util/regex/Pattern; DIR_VALIDATOR c field_45046 + f Lcom/mojang/serialization/Codec; CODEC d field_45047 + m ()Ljava/util/List; overlays a comp_1577 + m (I)Ljava/util/List; overlaysForVersion a method_52427 + p 1 version + m (ILnet/minecraft/server/packs/OverlayMetadataSection$OverlayEntry;)Z method_52428 a method_52428 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52429 a method_52429 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; validateOverlayDir a method_52430 + p 0 directoryName + m (Ljava/lang/String;)Ljava/lang/String; method_52431 b method_52431 + m (Ljava/util/List;)V + m ()V +c net/minecraft/server/packs/OverlayMetadataSection$OverlayEntry aso$a net/minecraft/class_8617$class_8618 + f Lnet/minecraft/util/InclusiveRange; format a comp_1578 + f Ljava/lang/String; overlay b comp_1579 + f Lcom/mojang/serialization/Codec; CODEC c field_45048 + m ()Lnet/minecraft/util/InclusiveRange; format a comp_1578 + m (I)Z isApplicable a method_52432 + p 1 version + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52433 a method_52433 + m ()Ljava/lang/String; overlay b comp_1579 + m (Lnet/minecraft/util/InclusiveRange;Ljava/lang/String;)V + m ()V +c net/minecraft/server/packs/PackLocationInfo asp net/minecraft/class_9224 + f Ljava/lang/String; id a comp_2329 + f Lnet/minecraft/network/chat/Component; title b comp_2330 + f Lnet/minecraft/server/packs/repository/PackSource; source c comp_2331 + f Ljava/util/Optional; knownPackInfo d comp_2332 + m ()Ljava/lang/String; id a comp_2329 + m (ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; createChatLink a method_56927 + p 1 enabled + p 2 text + m (ZLnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_56928 a method_56928 + m ()Lnet/minecraft/network/chat/Component; title b comp_2330 + m ()Lnet/minecraft/server/packs/repository/PackSource; source c comp_2331 + m ()Ljava/util/Optional; knownPackInfo d comp_2332 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/packs/repository/PackSource;Ljava/util/Optional;)V +c net/minecraft/server/packs/PackResources asq net/minecraft/class_3262 + f Ljava/lang/String; METADATA_EXTENSION a field_29780 + f Ljava/lang/String; PACK_META b field_29781 + m ()Lnet/minecraft/server/packs/PackLocationInfo; location a method_56926 + m (Lnet/minecraft/server/packs/PackType;)Ljava/util/Set; getNamespaces a method_14406 + p 1 type + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource a method_14405 + p 1 packType + p 2 location + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;)V listResources a method_14408 + p 1 packType + p 2 namespace + p 3 path + p 4 resourceOutput + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/lang/Object; getMetadataSection a method_14407 + p 1 deserializer + m ([Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getRootResource a method_14410 + p 1 elements + m ()Ljava/lang/String; packId b method_14409 + m ()Ljava/util/Optional; knownPackInfo c method_56929 +c net/minecraft/server/packs/PackResources$ResourceOutput asq$a net/minecraft/class_3262$class_7664 +c net/minecraft/server/packs/PackSelectionConfig asr net/minecraft/class_9225 + f Z required a comp_2333 + f Lnet/minecraft/server/packs/repository/Pack$Position; defaultPosition b comp_2334 + f Z fixedPosition c comp_2335 + m ()Z required a comp_2333 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; defaultPosition b comp_2334 + m ()Z fixedPosition c comp_2335 + m (ZLnet/minecraft/server/packs/repository/Pack$Position;Z)V +c net/minecraft/server/packs/PackType ass net/minecraft/class_3264 + f Lnet/minecraft/server/packs/PackType; CLIENT_RESOURCES a field_14188 + f Lnet/minecraft/server/packs/PackType; SERVER_DATA b field_14190 + f Ljava/lang/String; directory c field_14189 + f [Lnet/minecraft/server/packs/PackType; $VALUES d field_14191 + m ()Ljava/lang/String; getDirectory a method_14413 + m ()[Lnet/minecraft/server/packs/PackType; $values b method_36582 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 directory + m ()V +c net/minecraft/server/packs/PathPackResources ast net/minecraft/class_3259 + f Lorg/slf4j/Logger; LOGGER c field_14187 + f Lcom/google/common/base/Joiner; PATH_JOINER d field_40000 + f Ljava/nio/file/Path; root e field_40001 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45179 a method_45179 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource a method_45180 + p 0 location + p 1 path + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/util/List;)V method_45181 a method_45181 + m (Ljava/lang/String;Lcom/mojang/serialization/DataResult$Error;)V method_45182 a method_45182 + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;Lnet/minecraft/server/packs/PackResources$ResourceOutput;)V listPath a method_45183 + p 0 namespace + p 1 namespacePath + p 2 decomposedPath + p 3 resourceOutput + m (Ljava/nio/file/Path;)Z validatePath a method_14402 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/nio/file/Path;)V method_45184 a method_45184 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_45185 a method_45185 + m (Ljava/nio/file/Path;Ljava/util/List;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45186 a method_45186 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/resources/IoSupplier; returnFileIfExists b method_45187 + p 0 path + m (Lnet/minecraft/server/packs/PackLocationInfo;Ljava/nio/file/Path;)V + p 1 location + p 2 root + m ()V +c net/minecraft/server/packs/PathPackResources$PathResourcesSupplier ast$a net/minecraft/class_3259$class_8619 + f Ljava/nio/file/Path; content a field_45049 + m (Ljava/nio/file/Path;)V + p 1 content +c net/minecraft/server/packs/VanillaPackResources asu net/minecraft/class_3268 + f Lorg/slf4j/Logger; LOGGER c field_14195 + f Lnet/minecraft/server/packs/PackLocationInfo; location d field_49032 + f Lnet/minecraft/server/packs/BuiltInMetadata; metadata e field_26938 + f Ljava/util/Set; namespaces f field_14193 + f Ljava/util/List; rootPaths g field_40002 + f Ljava/util/Map; pathsForType h field_40003 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_45188 a method_45188 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackType;Ljava/util/List;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45189 a method_45189 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackType;Ljava/util/function/Consumer;Ljava/util/List;)V method_45190 a method_45190 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45191 a method_45191 + m (Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;)V getResources a method_14418 + p 0 resourceOutput + p 1 namespace + p 2 root + p 3 paths + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V listRawPaths a method_45192 + p 1 packType + p 2 packLocation + p 3 output + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/lang/String;Ljava/util/List;)V method_45193 a method_45193 + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/Resource; method_45194 a method_45194 + m (Ljava/lang/String;Lcom/mojang/serialization/DataResult$Error;)V method_45195 a method_45195 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)V method_45196 b method_45196 + m ()Lnet/minecraft/server/packs/resources/ResourceProvider; asProvider d method_43032 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/BuiltInMetadata;Ljava/util/Set;Ljava/util/List;Ljava/util/Map;)V + p 1 location + p 2 metadata + p 3 namespaces + p 4 rootPaths + p 5 pathsForType + m ()V +c net/minecraft/server/packs/VanillaPackResourcesBuilder asv net/minecraft/class_7665 + f Ljava/util/function/Consumer; developmentConfig a field_40004 + f Lorg/slf4j/Logger; LOGGER b field_40005 + f Ljava/util/Map; ROOT_DIR_BY_TYPE c field_40006 + f Ljava/util/Set; rootPaths d field_40007 + f Ljava/util/Map; pathsForType e field_40008 + f Lnet/minecraft/server/packs/BuiltInMetadata; metadata f field_40009 + f Ljava/util/Set; namespaces g field_40010 + m ()Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushJarResources a method_45197 + m (Lnet/minecraft/server/packs/BuiltInMetadata;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; setMetadata a method_45198 + p 1 metadata + m (Lnet/minecraft/server/packs/PackLocationInfo;)Lnet/minecraft/server/packs/VanillaPackResources; build a method_45210 + p 1 location + m (Lnet/minecraft/server/packs/PackType;)Ljava/util/Set; method_45199 a method_45199 + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/Class;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushClasspathResources a method_45200 + p 1 packType + p 2 clazz + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushAssetPath a method_45201 + p 1 packType + p 2 path + m (Lnet/minecraft/server/packs/VanillaPackResourcesBuilder;)V method_45202 a method_45202 + m (Ljava/net/URI;)Ljava/nio/file/Path; safeGetPath a method_45203 + p 0 uri + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushUniversalPath a method_45204 + p 1 path + m (Ljava/util/Collection;)Ljava/util/List; copyAndReverse a method_45205 + p 0 paths + m ([Ljava/lang/String;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; exposeNamespace a method_45206 + p 1 namespaces + m ()Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; applyDevelopmentConfig b method_45207 + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)V pushPathForType b method_45208 + p 1 packType + p 2 path + m (Ljava/nio/file/Path;)Z validateDirPath b method_45209 + p 1 path + m ()Lcom/google/common/collect/ImmutableMap; method_45213 c method_45213 + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)V method_45211 c method_45211 + m (Ljava/nio/file/Path;)V pushRootPath c method_45212 + p 1 rootPath + m ()V + m ()V +c net/minecraft/server/packs/linkfs/DummyFileAttributes asw net/minecraft/class_7666 + f Ljava/nio/file/attribute/FileTime; EPOCH a field_40011 + m ()V + m ()V +c net/minecraft/server/packs/linkfs/LinkFSFileStore asx net/minecraft/class_7667 + f Ljava/lang/String; name a field_40012 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/server/packs/linkfs/LinkFSPath asy net/minecraft/class_7668 + f Ljava/nio/file/attribute/BasicFileAttributes; DIRECTORY_ATTRIBUTES a field_40013 + f Ljava/nio/file/attribute/BasicFileAttributes; FILE_ATTRIBUTES b field_40014 + f Ljava/util/Comparator; PATH_COMPARATOR c field_40015 + f Ljava/lang/String; name d field_40016 + f Lnet/minecraft/server/packs/linkfs/LinkFileSystem; fileSystem e field_40017 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; parent f field_40018 + f Ljava/util/List; pathToRoot g field_40019 + f Ljava/lang/String; pathString h field_40020 + f Lnet/minecraft/server/packs/linkfs/PathContents; pathContents i field_40021 + m ()Lnet/minecraft/server/packs/linkfs/LinkFileSystem; getFileSystem a method_45214 + m (I)Lnet/minecraft/server/packs/linkfs/LinkFSPath; getName a method_45215 + p 1 index + m (II)Lnet/minecraft/server/packs/linkfs/LinkFSPath; subpath a method_45216 + p 1 start + p 2 end + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; createRelativePath a method_45217 + p 1 parent + p 2 name + m (Lnet/minecraft/server/packs/linkfs/PathContents;)Z isRelativeOrMissing a method_45218 + p 0 pathContents + m (Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolveName a method_45219 + p 1 name + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolve a method_45220 + p 1 path + m (Ljava/util/List;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolve a method_45221 + p 1 names + m ([Ljava/nio/file/LinkOption;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toRealPath a method_45222 + p 1 options + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getRoot b method_45223 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; relativize b method_45224 + p 1 path + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getFileName c method_45225 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toLinkPath c method_45226 + p 1 path + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getParent d method_45227 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; normalize e method_45228 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; toAbsolutePath f method_45229 + m ()Z exists g method_45230 + m ()Ljava/nio/file/Path; getTargetPath h method_45231 + m ()Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents; getDirectoryContents i method_45232 + m ()Ljava/nio/file/attribute/BasicFileAttributeView; getBasicAttributeView j method_45233 + m ()Ljava/nio/file/attribute/BasicFileAttributes; getBasicAttributes k method_45234 + m ()Ljava/util/List; pathToRoot l method_45235 + m ()Z hasRealContents m method_45236 + m ()Ljava/lang/String; pathToString n method_45237 + m (Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Lnet/minecraft/server/packs/linkfs/PathContents;)V + p 1 fileSystem + p 2 name + p 3 parent + p 4 pathContents + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$1 asy$1 net/minecraft/class_7668$1 + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$2 asy$2 net/minecraft/class_7668$2 + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$3 asy$3 net/minecraft/class_7668$3 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; field_40022 a field_40022 + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;)V +c net/minecraft/server/packs/linkfs/LinkFSProvider asz net/minecraft/class_7669 + f Ljava/lang/String; SCHEME a field_40023 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toLinkPath a method_45238 + p 0 path + m ()V +c net/minecraft/server/packs/linkfs/LinkFSProvider$1 asz$1 net/minecraft/class_7669$1 + f Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents; val$directoryContents a field_40024 + f Ljava/nio/file/DirectoryStream$Filter; val$filter b field_40025 + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Ljava/nio/file/Path; method_45239 a method_45239 + m (Ljava/nio/file/DirectoryStream$Filter;Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Z method_45240 a method_45240 + m (Lnet/minecraft/server/packs/linkfs/LinkFSProvider;Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents;Ljava/nio/file/DirectoryStream$Filter;)V +c net/minecraft/server/packs/linkfs/LinkFSProvider$2 asz$2 net/minecraft/class_7669$2 + f [I $SwitchMap$java$nio$file$AccessMode a field_40027 + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem ata net/minecraft/class_7670 + f Ljava/lang/String; PATH_SEPARATOR a field_40028 + f Ljava/util/Set; VIEWS b field_40029 + f Lcom/google/common/base/Splitter; PATH_SPLITTER c field_40030 + f Ljava/nio/file/FileStore; store d field_40031 + f Ljava/nio/file/spi/FileSystemProvider; provider e field_40032 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; root f field_40033 + m ()Ljava/nio/file/FileStore; store a method_45241 + m (Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; buildPath a method_45242 + p 0 directory + p 1 fileSystem + p 2 name + p 3 parent + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;)V method_45243 a method_45243 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;Ljava/nio/file/Path;)V method_45244 a method_45244 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; rootPath b method_45245 + m ()Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; builder c method_45246 + m (Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;)V + p 1 name + p 2 root + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem$Builder ata$a net/minecraft/class_7670$class_7671 + f Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry; root a field_40034 + m (Ljava/lang/String;)Ljava/nio/file/FileSystem; build a method_45247 + p 1 name + m (Ljava/util/List;Ljava/lang/String;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; put a method_45248 + p 1 pathString + p 2 fileName + p 3 filePath + m (Ljava/util/List;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; put a method_45249 + p 1 pathString + p 2 filePath + m (Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry; method_45250 b method_45250 + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry ata$b net/minecraft/class_7670$class_7672 + f Ljava/util/Map; children a comp_995 + f Ljava/util/Map; files b comp_996 + m ()Ljava/util/Map; children a comp_995 + m ()Ljava/util/Map; files b comp_996 + m ()V + m (Ljava/util/Map;Ljava/util/Map;)V +c net/minecraft/server/packs/linkfs/PathContents atb net/minecraft/class_7673 + f Lnet/minecraft/server/packs/linkfs/PathContents; MISSING a field_40035 + f Lnet/minecraft/server/packs/linkfs/PathContents; RELATIVE b field_40036 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$1 atb$1 net/minecraft/class_7673$1 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$2 atb$2 net/minecraft/class_7673$2 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$DirectoryContents atb$a net/minecraft/class_7673$class_7674 + f Ljava/util/Map; children c comp_997 + m ()Ljava/util/Map; children a comp_997 + m (Ljava/util/Map;)V +c net/minecraft/server/packs/linkfs/PathContents$FileContents atb$b net/minecraft/class_7673$class_7675 + f Ljava/nio/file/Path; contents c comp_998 + m ()Ljava/nio/file/Path; contents a comp_998 + m (Ljava/nio/file/Path;)V +c net/minecraft/server/packs/linkfs/package-info atc net/minecraft/class_7676 +c net/minecraft/server/packs/metadata/MetadataSectionSerializer atd net/minecraft/class_3270 + m ()Ljava/lang/String; getMetadataSectionName a method_14420 + c The name of this section type as it appears in JSON. + m (Lcom/google/gson/JsonObject;)Ljava/lang/Object; fromJson a method_14421 + p 1 json +c net/minecraft/server/packs/metadata/MetadataSectionType ate net/minecraft/class_7677 + m (Ljava/lang/Object;)Lcom/google/gson/JsonObject; toJson a method_45251 + p 1 data + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/server/packs/metadata/MetadataSectionType; fromCodec a method_45252 + p 0 name + p 1 codec +c net/minecraft/server/packs/metadata/MetadataSectionType$1 ate$1 net/minecraft/class_7677$1 + f Ljava/lang/String; val$name a field_40037 + f Lcom/mojang/serialization/Codec; val$codec b field_40038 + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)V +c net/minecraft/server/packs/metadata/pack/PackMetadataSection atf net/minecraft/class_3272 + f Lcom/mojang/serialization/Codec; CODEC a field_45051 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE b field_14202 + f Lnet/minecraft/network/chat/Component; description c comp_1580 + f I packFormat d comp_1581 + f Ljava/util/Optional; supportedFormats e comp_1582 + m ()Lnet/minecraft/network/chat/Component; description a comp_1580 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52434 a method_52434 + m ()I packFormat b comp_1581 + m ()Ljava/util/Optional; supportedFormats c comp_1582 + m (Lnet/minecraft/network/chat/Component;ILjava/util/Optional;)V + m ()V +c net/minecraft/server/packs/metadata/pack/package-info atg net/minecraft/class_5984 +c net/minecraft/server/packs/metadata/package-info ath net/minecraft/class_5985 +c net/minecraft/server/packs/package-info ati net/minecraft/class_5986 +c net/minecraft/server/packs/repository/BuiltInPackSource atj net/minecraft/class_7678 + f Ljava/lang/String; VANILLA_ID a field_40039 + f Lnet/minecraft/server/packs/repository/KnownPack; CORE_PACK_INFO b field_49033 + f Lorg/slf4j/Logger; LOGGER c field_40040 + f Lnet/minecraft/server/packs/PackType; packType d field_40041 + f Lnet/minecraft/server/packs/VanillaPackResources; vanillaPack e field_40042 + f Lnet/minecraft/resources/ResourceLocation; packDir f field_40043 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator g field_45052 + m ()Lnet/minecraft/server/packs/VanillaPackResources; getVanillaPack a method_45256 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/repository/Pack; createVanillaPack a method_45257 + p 1 resources + m (Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Ljava/lang/String;)Lnet/minecraft/server/packs/repository/Pack; method_45258 a method_45258 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getPackTitle a method_45259 + p 1 id + m (Ljava/lang/String;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/repository/Pack; createBuiltinPack a method_45260 + p 1 id + p 2 resources + p 3 title + m (Ljava/nio/file/Path;)Ljava/lang/String; pathToId a method_45261 + p 0 path + m (Ljava/nio/file/Path;Ljava/util/function/BiConsumer;)V discoverPacksInPath a method_45262 + p 1 directoryPath + p 2 packGetter + m (Ljava/util/function/BiConsumer;)V populatePackList a method_45263 + p 1 populator + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;)V method_45264 a method_45264 + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;)V method_45265 a method_45265 + m (Ljava/util/function/Consumer;)V listBundledPacks a method_45267 + p 1 packConsumer + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;)V method_45266 a method_45266 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; fixedResources b method_52435 + p 0 resources + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/VanillaPackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 packType + p 2 vanillaPack + p 3 packDir + p 4 validator + m ()V +c net/minecraft/server/packs/repository/BuiltInPackSource$1 atj$1 net/minecraft/class_7678$1 + f Lnet/minecraft/server/packs/PackResources; val$instance a field_45053 + m (Lnet/minecraft/server/packs/PackResources;)V +c net/minecraft/server/packs/repository/FolderRepositorySource atk net/minecraft/class_3279 + f Lorg/slf4j/Logger; LOGGER a field_40044 + f Lnet/minecraft/server/packs/PackSelectionConfig; DISCOVERED_PACK_SELECTION_CONFIG b field_49034 + f Ljava/nio/file/Path; folder c field_14218 + f Lnet/minecraft/server/packs/PackType; packType d field_40045 + f Lnet/minecraft/server/packs/repository/PackSource; packSource e field_25345 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator f field_45054 + m (Ljava/nio/file/Path;)Ljava/lang/String; nameFromPath a method_45273 + p 0 path + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;Ljava/util/function/BiConsumer;)V discoverPacks a method_45271 + p 0 folder + p 1 validator + p 2 output + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;)V method_45272 a method_45272 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/PackLocationInfo; createDiscoveredFilePackInfo b method_56930 + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/repository/PackSource;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 folder + p 2 packType + p 3 packSource + p 4 validator + m ()V +c net/minecraft/server/packs/repository/FolderRepositorySource$FolderPackDetector atk$a net/minecraft/class_3279$class_8620 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; createZipPack a method_52436 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; createDirectoryPack b method_52437 + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V +c net/minecraft/server/packs/repository/KnownPack atl net/minecraft/class_9226 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49035 + f Ljava/lang/String; VANILLA_NAMESPACE b field_49036 + f Ljava/lang/String; namespace c comp_2336 + f Ljava/lang/String; id d comp_2337 + f Ljava/lang/String; version e comp_2338 + m ()Z isVanilla a method_56931 + m (Ljava/lang/String;)Lnet/minecraft/server/packs/repository/KnownPack; vanilla a method_56932 + p 0 name + m ()Ljava/lang/String; namespace b comp_2336 + m ()Ljava/lang/String; id c comp_2337 + m ()Ljava/lang/String; version d comp_2338 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/server/packs/repository/Pack atm net/minecraft/class_3288 + f Lorg/slf4j/Logger; LOGGER a field_14279 + f Lnet/minecraft/server/packs/PackLocationInfo; location b field_49037 + f Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; resources c field_14273 + f Lnet/minecraft/server/packs/repository/Pack$Metadata; metadata d field_49038 + f Lnet/minecraft/server/packs/PackSelectionConfig; selectionConfig e field_49039 + m ()Lnet/minecraft/server/packs/PackLocationInfo; location a method_56933 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;I)Lnet/minecraft/server/packs/repository/Pack$Metadata; readPackMetadata a method_45274 + p 0 location + p 1 resources + p 2 version + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackSelectionConfig;)Lnet/minecraft/server/packs/repository/Pack; readMetaAndCreate a method_45275 + p 0 location + p 1 resources + p 2 packType + p 3 selectionConfig + m (Ljava/lang/String;Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection;)Lnet/minecraft/util/InclusiveRange; getDeclaredPackVersions a method_52440 + p 0 id + p 1 metadata + m (Z)Lnet/minecraft/network/chat/Component; getChatLink a method_14461 + p 1 green + c used to indicate either a successful operation or datapack enabled status + m ()Lnet/minecraft/network/chat/Component; getTitle b method_14457 + m ()Lnet/minecraft/network/chat/Component; getDescription c method_14459 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; getCompatibility d method_14460 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; getRequestedFeatures e method_45276 + m ()Lnet/minecraft/server/packs/PackResources; open f method_14458 + m ()Ljava/lang/String; getId g method_14463 + m ()Lnet/minecraft/server/packs/PackSelectionConfig; selectionConfig h method_56934 + m ()Z isRequired i method_14464 + m ()Z isFixedPosition j method_14465 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; getDefaultPosition k method_14466 + m ()Lnet/minecraft/server/packs/repository/PackSource; getPackSource l method_29483 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/server/packs/repository/Pack$Metadata;Lnet/minecraft/server/packs/PackSelectionConfig;)V + p 1 location + p 2 resources + p 3 metadata + p 4 selectionConfig + m ()V +c net/minecraft/server/packs/repository/Pack$Metadata atm$a net/minecraft/class_3288$class_7679 + f Lnet/minecraft/network/chat/Component; description a comp_999 + f Lnet/minecraft/server/packs/repository/PackCompatibility; compatibility b comp_1583 + f Lnet/minecraft/world/flag/FeatureFlagSet; requestedFeatures c comp_1001 + f Ljava/util/List; overlays d comp_1584 + m ()Lnet/minecraft/network/chat/Component; description a comp_999 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; compatibility b comp_1583 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; requestedFeatures c comp_1001 + m ()Ljava/util/List; overlays d comp_1584 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/packs/repository/PackCompatibility;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/List;)V +c net/minecraft/server/packs/repository/Pack$Position atm$b net/minecraft/class_3288$class_3289 + f Lnet/minecraft/server/packs/repository/Pack$Position; TOP a field_14280 + f Lnet/minecraft/server/packs/repository/Pack$Position; BOTTOM b field_14281 + f [Lnet/minecraft/server/packs/repository/Pack$Position; $VALUES c field_14282 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; opposite a method_14467 + m (Ljava/util/List;Ljava/lang/Object;Ljava/util/function/Function;Z)I insert a method_14468 + p 1 list + p 2 element + p 3 packFactory + p 4 flipPosition + m ()[Lnet/minecraft/server/packs/repository/Pack$Position; $values b method_36583 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/packs/repository/Pack$ResourcesSupplier atm$c net/minecraft/class_3288$class_7680 + m (Lnet/minecraft/server/packs/PackLocationInfo;)Lnet/minecraft/server/packs/PackResources; openPrimary a method_52424 + p 1 location + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$Metadata;)Lnet/minecraft/server/packs/PackResources; openFull a method_52425 + p 1 location + p 2 metadata +c net/minecraft/server/packs/repository/PackCompatibility atn net/minecraft/class_3281 + f Lnet/minecraft/server/packs/repository/PackCompatibility; TOO_OLD a field_14223 + f Lnet/minecraft/server/packs/repository/PackCompatibility; TOO_NEW b field_14220 + f Lnet/minecraft/server/packs/repository/PackCompatibility; COMPATIBLE c field_14224 + f Lnet/minecraft/network/chat/Component; description d field_14219 + f Lnet/minecraft/network/chat/Component; confirmation e field_14222 + f [Lnet/minecraft/server/packs/repository/PackCompatibility; $VALUES f field_14221 + m ()Z isCompatible a method_14437 + m (Lnet/minecraft/util/InclusiveRange;I)Lnet/minecraft/server/packs/repository/PackCompatibility; forVersion a method_14436 + p 0 range + p 1 version + m ()Lnet/minecraft/network/chat/Component; getDescription b method_14439 + m ()Lnet/minecraft/network/chat/Component; getConfirmation c method_14438 + m ()[Lnet/minecraft/server/packs/repository/PackCompatibility; $values d method_36584 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 type + m ()V +c net/minecraft/server/packs/repository/PackDetector ato net/minecraft/class_8621 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator a field_45057 + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/Object; detectPackResources a method_52441 + p 1 path + p 2 forbiddenSymlinkInfos + m (Ljava/nio/file/Path;)Ljava/lang/Object; createDirectoryPack c method_52438 + p 1 path + m (Ljava/nio/file/Path;)Ljava/lang/Object; createZipPack d method_52439 + p 1 path + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 validator +c net/minecraft/server/packs/repository/PackRepository atp net/minecraft/class_3283 + f Ljava/util/Set; sources a field_14227 + f Ljava/util/Map; available b field_14226 + f Ljava/util/List; selected c field_14225 + m ()V reload a method_14445 + m (Lnet/minecraft/server/packs/repository/Pack;)Ljava/lang/String; method_59808 a method_59808 + m (Ljava/lang/String;)Z addPack a method_49427 + p 1 id + m (Ljava/util/Collection;)Ljava/lang/String; displayPackList a method_59809 + p 0 packs + m (Ljava/util/Map;Lnet/minecraft/server/packs/repository/Pack;)V method_29484 a method_29484 + m ()Ljava/util/Collection; getAvailableIds b method_29206 + m (Ljava/lang/String;)Z removePack b method_49428 + p 1 id + m (Ljava/util/Collection;)V setSelected b method_14447 + p 1 ids + m ()Ljava/util/Collection; getAvailablePacks c method_14441 + c Gets all known packs, including those that are not enabled. + m (Ljava/lang/String;)Lnet/minecraft/server/packs/repository/Pack; getPack c method_14449 + p 1 id + m (Ljava/util/Collection;)Ljava/util/List; rebuildSelected c method_29208 + p 1 ids + m ()Ljava/util/Collection; getSelectedIds d method_29210 + m (Ljava/lang/String;)Z isAvailable d method_29207 + p 1 id + m (Ljava/util/Collection;)Ljava/util/stream/Stream; getAvailablePacks d method_29209 + p 1 ids + m ()Lnet/minecraft/world/flag/FeatureFlagSet; getRequestedFeatureFlags e method_45278 + m ()Ljava/util/Collection; getSelectedPacks f method_14444 + c Gets all packs that have been enabled. + m ()Ljava/util/List; openAllSelected g method_29211 + m ()Ljava/util/Map; discoverAvailable h method_29212 + m ([Lnet/minecraft/server/packs/repository/RepositorySource;)V + p 1 sources +c net/minecraft/server/packs/repository/PackSource atq net/minecraft/class_5352 + f Ljava/util/function/UnaryOperator; NO_DECORATION a field_40047 + f Lnet/minecraft/server/packs/repository/PackSource; DEFAULT b field_25347 + f Lnet/minecraft/server/packs/repository/PackSource; BUILT_IN c field_25348 + f Lnet/minecraft/server/packs/repository/PackSource; FEATURE d field_40048 + f Lnet/minecraft/server/packs/repository/PackSource; WORLD e field_25349 + f Lnet/minecraft/server/packs/repository/PackSource; SERVER f field_25350 + m ()Z shouldAddAutomatically a method_45279 + m (Ljava/lang/String;)Ljava/util/function/UnaryOperator; decorateWithSource a method_45280 + p 0 translationKey + m (Ljava/util/function/UnaryOperator;Z)Lnet/minecraft/server/packs/repository/PackSource; create a method_45281 + p 0 decorator + p 1 shouldAddAutomatically + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorate a method_45282 + p 1 name + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_45283 a method_45283 + m ()V +c net/minecraft/server/packs/repository/PackSource$1 atq$1 net/minecraft/class_5352$1 + f Ljava/util/function/UnaryOperator; val$decorator g field_40049 + f Z val$addAutomatically h field_40050 + m (Ljava/util/function/UnaryOperator;Z)V +c net/minecraft/server/packs/repository/RepositorySource atr net/minecraft/class_3285 + m (Ljava/util/function/Consumer;)V loadPacks loadPacks method_14453 + p 1 onLoad +c net/minecraft/server/packs/repository/ServerPacksSource ats net/minecraft/class_3286 + f Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection; VERSION_METADATA_SECTION c field_40051 + f Lnet/minecraft/server/packs/FeatureFlagsMetadataSection; FEATURE_FLAGS_METADATA_SECTION d field_40052 + f Lnet/minecraft/server/packs/BuiltInMetadata; BUILT_IN_METADATA e field_26939 + f Lnet/minecraft/server/packs/PackLocationInfo; VANILLA_PACK_INFO f field_49040 + f Lnet/minecraft/server/packs/PackSelectionConfig; VANILLA_SELECTION_CONFIG g field_49041 + f Lnet/minecraft/server/packs/PackSelectionConfig; FEATURE_SELECTION_CONFIG h field_49042 + f Lnet/minecraft/resources/ResourceLocation; PACKS_DIR i field_40053 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Lnet/minecraft/server/packs/repository/PackRepository; createPackRepository a method_45285 + p 0 level + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/PackLocationInfo; createBuiltInPackLocation a method_56935 + p 0 id + p 1 title + m (Ljava/nio/file/Path;)Z method_52442 a method_52442 + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;)Lnet/minecraft/server/packs/repository/PackRepository; createPackRepository a method_45286 + p 0 folder + p 1 validator + m ()Lnet/minecraft/server/packs/VanillaPackResources; createVanillaPackSource b method_45287 + m ()Lnet/minecraft/server/packs/repository/PackRepository; createVanillaTrustedRepository c method_52443 + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 validator + m ()V +c net/minecraft/server/packs/repository/package-info att net/minecraft/class_5987 +c net/minecraft/server/packs/resources/CloseableResourceManager atu net/minecraft/class_6860 +c net/minecraft/server/packs/resources/FallbackResourceManager atv net/minecraft/class_3294 + f Ljava/util/List; fallbacks a field_14283 + f Lorg/slf4j/Logger; LOGGER c field_14285 + f Lnet/minecraft/server/packs/PackType; type d field_14284 + f Ljava/lang/String; namespace e field_21561 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/server/packs/resources/IoSupplier; createStackMetadataFinder a method_43035 + p 1 location + p 2 fallbackIndex + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/IoSupplier; wrapForDebug a method_45288 + p 0 location + p 1 packResources + p 2 stream + m (Lnet/minecraft/server/packs/PackResources;)V push a method_24233 + p 1 resources + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45289 a method_45289 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/Resource; createResource a method_45290 + p 0 source + p 1 location + p 2 streamSupplier + p 3 metadataSupplier + m (Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V push a method_41256 + p 1 resources + p 2 filter + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;)Lnet/minecraft/server/packs/PackResources; method_41257 a method_41257 + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/Map;)V listPackResources a method_41258 + p 1 entry + p 2 path + p 3 filter + p 4 output + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;Ljava/util/Map;)V applyPackFiltersToExistingResources a method_41259 + p 0 packEntry + p 1 resources + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/IoSupplier; convertToMetadata a method_45291 + p 0 streamSupplier + m (Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackResources;)Ljava/io/InputStream; method_45292 a method_45292 + m (Ljava/lang/String;Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V pushInternal a method_41260 + p 1 name + p 2 resources + p 3 filter + m (Ljava/lang/String;Ljava/util/function/Predicate;)V pushFilterOnly a method_41261 + p 1 name + p 2 filter + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/FallbackResourceManager$1ResourceWithSourceAndIndex;)V method_45293 a method_45293 + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;ILjava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;)V method_45294 a method_45294 + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;)V method_45295 a method_45295 + m (Lnet/minecraft/resources/ResourceLocation;)Z isMetadata b method_45296 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_43037 b method_43037 + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/ResourceMetadata; parseMetadata b method_45297 + p 0 streamSupplier + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getResourceLocationFromMetadata c method_45298 + p 0 metadataResourceLocation + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45299 c method_45299 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getMetadataLocation d method_14473 + p 0 location + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;)V + p 1 type + p 2 namespace + m ()V +c net/minecraft/server/packs/resources/FallbackResourceManager$1ResourceWithSourceAndIndex atv$a net/minecraft/class_3294$class_7681 + f Lnet/minecraft/server/packs/PackResources; packResources a comp_1002 + f Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1003 + f I packIndex c comp_1004 + m ()Lnet/minecraft/server/packs/PackResources; packResources a comp_1002 + m ()Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1003 + m ()I packIndex c comp_1004 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;I)V +c net/minecraft/server/packs/resources/FallbackResourceManager$EntryStack atv$b net/minecraft/class_3294$class_7081 + f Lnet/minecraft/resources/ResourceLocation; fileLocation a comp_1005 + f Lnet/minecraft/resources/ResourceLocation; metadataLocation b comp_527 + f Ljava/util/List; fileSources c comp_1006 + f Ljava/util/Map; metaSources d comp_1007 + m ()Lnet/minecraft/resources/ResourceLocation; fileLocation a comp_1005 + m ()Lnet/minecraft/resources/ResourceLocation; metadataLocation b comp_527 + m ()Ljava/util/List; fileSources c comp_1006 + m ()Ljava/util/Map; metaSources d comp_1007 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 fileLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Map;)V +c net/minecraft/server/packs/resources/FallbackResourceManager$LeakedResourceWarningInputStream atv$c net/minecraft/class_3294$class_3295 + f Ljava/util/function/Supplier; message a field_14288 + f Z closed b field_14287 + m (Ljava/lang/Exception;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/lang/String; method_45300 a method_45300 + m (Ljava/io/InputStream;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 inputStream + p 2 resourceLocation + p 3 packName +c net/minecraft/server/packs/resources/FallbackResourceManager$PackEntry atv$d net/minecraft/class_3294$class_7082 + f Ljava/lang/String; name a comp_529 + f Lnet/minecraft/server/packs/PackResources; resources b comp_530 + f Ljava/util/function/Predicate; filter c comp_531 + m ()Ljava/lang/String; name a comp_529 + m (Lnet/minecraft/resources/ResourceLocation;)Z isFiltered a method_41269 + p 1 location + m (Ljava/util/Collection;)V filterAll a method_41268 + p 1 locations + m ()Lnet/minecraft/server/packs/PackResources; resources b comp_530 + m ()Ljava/util/function/Predicate; filter c comp_531 + m (Ljava/lang/String;Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V +c net/minecraft/server/packs/resources/FallbackResourceManager$ResourceWithSource atv$e net/minecraft/class_3294$class_7682 + f Lnet/minecraft/server/packs/PackResources; source a comp_1008 + f Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1009 + m ()Lnet/minecraft/server/packs/PackResources; source a comp_1008 + m ()Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1009 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)V +c net/minecraft/server/packs/resources/IoSupplier atw net/minecraft/class_7367 + m (Ljava/nio/file/Path;)Ljava/io/InputStream; method_45301 a method_45301 + m (Ljava/util/zip/ZipFile;Ljava/util/zip/ZipEntry;)Ljava/io/InputStream; method_45302 a method_45302 +c net/minecraft/server/packs/resources/MultiPackResourceManager atx net/minecraft/class_6861 + f Lorg/slf4j/Logger; LOGGER a field_37288 + f Ljava/util/Map; namespacedManagers c field_36389 + f Ljava/util/List; packs d field_36390 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/resources/ResourceFilterSection; getPackFilterSection a method_41274 + p 1 packResources + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackResources;)Ljava/util/stream/Stream; method_41275 a method_41275 + m (Lnet/minecraft/server/packs/resources/ResourceFilterSection;Lnet/minecraft/resources/ResourceLocation;)Z method_41276 a method_41276 + m (Ljava/lang/String;)V checkTrailingDirectoryPath a method_45303 + p 0 path + m (Lnet/minecraft/server/packs/PackType;Ljava/util/List;)V + p 1 type + p 2 packs + m ()V +c net/minecraft/server/packs/resources/PreparableReloadListener aty net/minecraft/class_3302 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; reload a method_25931 + p 1 preparationBarrier + p 2 resourceManager + p 3 preparationsProfiler + p 4 reloadProfiler + p 5 backgroundExecutor + p 6 gameExecutor + m ()Ljava/lang/String; getName c method_22322 +c net/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier aty$a net/minecraft/class_3302$class_4045 + m (Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; wait a method_18352 + p 1 backgroundResult +c net/minecraft/server/packs/resources/ProfiledReloadInstance atz net/minecraft/class_4010 + f Lorg/slf4j/Logger; LOGGER c field_17918 + f Lcom/google/common/base/Stopwatch; total d field_17919 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;Lnet/minecraft/util/profiling/ActiveProfiler;Lnet/minecraft/util/profiling/ActiveProfiler;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Void;)Lnet/minecraft/server/packs/resources/ProfiledReloadInstance$State; method_18356 a method_18356 + m (Ljava/lang/Runnable;Ljava/util/concurrent/atomic/AtomicLong;)V method_18353 a method_18353 + m (Ljava/util/List;)Ljava/util/List; finish a method_18238 + p 1 datapoints + m (Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_18355 a method_18355 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Runnable;)V method_18354 a method_18354 + m (Ljava/lang/Runnable;Ljava/util/concurrent/atomic/AtomicLong;)V method_18357 b method_18357 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Runnable;)V method_18358 b method_18358 + m ()I method_18224 e method_18224 + m ()I method_18225 f method_18225 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)V + p 1 resourceManager + p 2 listeners + p 3 backgroundExecutor + p 4 gameExecutor + p 5 alsoWaitedFor + m ()V +c net/minecraft/server/packs/resources/ProfiledReloadInstance$State atz$a net/minecraft/class_4010$class_4046 + f Ljava/lang/String; name a field_18037 + f Lnet/minecraft/util/profiling/ProfileResults; preparationResult b field_18038 + f Lnet/minecraft/util/profiling/ProfileResults; reloadResult c field_18039 + f Ljava/util/concurrent/atomic/AtomicLong; preparationNanos d field_18040 + f Ljava/util/concurrent/atomic/AtomicLong; reloadNanos e field_18041 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/ProfileResults;Lnet/minecraft/util/profiling/ProfileResults;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;)V + p 1 name + p 2 preperationResult + p 3 reloadResult + p 4 preperationNanos + p 5 reloadNanos +c net/minecraft/server/packs/resources/ReloadInstance aua net/minecraft/class_4011 + m ()Ljava/util/concurrent/CompletableFuture; done a method_18364 + m ()F getActualProgress b method_18229 + m ()Z isDone c method_18787 + m ()V checkExceptions d method_18849 +c net/minecraft/server/packs/resources/ReloadableResourceManager aub net/minecraft/class_3304 + f Lorg/slf4j/Logger; LOGGER a field_14295 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resources c field_36391 + f Ljava/util/List; listeners d field_17935 + f Lnet/minecraft/server/packs/PackType; type e field_14294 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;)V registerReloadListener a method_14477 + p 1 listener + m (Ljava/util/List;)Ljava/lang/Object; method_29491 a method_29491 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lnet/minecraft/server/packs/resources/ReloadInstance; createReload a method_18232 + p 1 backgroundExecutor + p 2 gameExecutor + p 3 waitingFor + p 4 resourcePacks + m (Lnet/minecraft/server/packs/PackType;)V + p 1 type + m ()V +c net/minecraft/server/packs/resources/Resource auc net/minecraft/class_3298 + f Lnet/minecraft/server/packs/PackResources; source a field_40054 + f Lnet/minecraft/server/packs/resources/IoSupplier; streamSupplier b field_38685 + f Lnet/minecraft/server/packs/resources/IoSupplier; metadataSupplier c field_38686 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; cachedMetadata d field_38687 + m ()Lnet/minecraft/server/packs/PackResources; source a method_45304 + m ()Ljava/lang/String; sourcePackId b method_14480 + m ()Ljava/util/Optional; knownPackInfo c method_56936 + m ()Ljava/io/InputStream; open d method_14482 + m ()Ljava/io/BufferedReader; openAsReader e method_43039 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata f method_14481 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/server/packs/resources/IoSupplier;)V + p 1 source + p 2 streamSupplier + p 3 metadataSupplier + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)V + p 1 source + p 2 streamSupplier +c net/minecraft/server/packs/resources/ResourceFilterSection aud net/minecraft/class_7084 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_40055 + f Lcom/mojang/serialization/Codec; CODEC b field_37291 + f Ljava/util/List; blockList c field_37292 + m (Lnet/minecraft/server/packs/resources/ResourceFilterSection;)Ljava/util/List; method_41277 a method_41277 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41278 a method_41278 + m (Ljava/lang/String;)Z isNamespaceFiltered a method_41279 + p 1 namespace + m (Ljava/lang/String;Lnet/minecraft/util/ResourceLocationPattern;)Z method_41280 a method_41280 + m (Ljava/lang/String;)Z isPathFiltered b method_41281 + p 1 path + m (Ljava/lang/String;Lnet/minecraft/util/ResourceLocationPattern;)Z method_41282 b method_41282 + m (Ljava/util/List;)V + p 1 blockList + m ()V +c net/minecraft/server/packs/resources/ResourceManager aue net/minecraft/class_3300 + m ()Ljava/util/Set; getNamespaces a method_14487 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; getResourceStack a method_14489 + p 1 location + m ()Ljava/util/stream/Stream; listPacks b method_29213 + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; listResources b method_14488 + p 1 path + p 2 filter + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; listResourceStacks c method_41265 + p 1 path + p 2 filter +c net/minecraft/server/packs/resources/ResourceManager$Empty aue$a net/minecraft/class_3300$class_5353 + f Lnet/minecraft/server/packs/resources/ResourceManager$Empty; INSTANCE a field_25351 + f [Lnet/minecraft/server/packs/resources/ResourceManager$Empty; $VALUES c field_25352 + m ()[Lnet/minecraft/server/packs/resources/ResourceManager$Empty; $values c method_36585 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/packs/resources/ResourceManagerReloadListener auf net/minecraft/class_4013 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V onResourceManagerReload a method_14491 + p 1 resourceManager + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/server/packs/resources/ResourceManager;)V method_29490 a method_29490 +c net/minecraft/server/packs/resources/ResourceMetadata aug net/minecraft/class_7368 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; EMPTY a field_38688 + f Lnet/minecraft/server/packs/resources/IoSupplier; EMPTY_SUPPLIER b field_40056 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45306 a method_45306 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/util/Optional; getSection a method_43041 + p 1 serializer + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)V copySection a method_52444 + p 1 builder + p 2 serializer + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)V method_52445 a method_52445 + m (Ljava/io/InputStream;)Lnet/minecraft/server/packs/resources/ResourceMetadata; fromJsonStream a method_43042 + p 0 stream + m (Ljava/util/Collection;)Lnet/minecraft/server/packs/resources/ResourceMetadata; copySections a method_52446 + p 1 serializers + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$1 aug$1 net/minecraft/class_7368$1 + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$2 aug$2 net/minecraft/class_7368$2 + f Lcom/google/gson/JsonObject; val$metadata c field_38689 + m (Lcom/google/gson/JsonObject;)V +c net/minecraft/server/packs/resources/ResourceMetadata$Builder aug$a net/minecraft/class_7368$class_8622 + f Lcom/google/common/collect/ImmutableMap$Builder; map a field_45058 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; build a method_52447 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder; put a method_52448 + p 1 key + p 2 value + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$Builder$1 aug$a$1 net/minecraft/class_7368$class_8622$1 + f Lcom/google/common/collect/ImmutableMap; val$map c field_45059 + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lcom/google/common/collect/ImmutableMap;)V +c net/minecraft/server/packs/resources/ResourceProvider auh net/minecraft/class_5912 + f Lnet/minecraft/server/packs/resources/ResourceProvider; EMPTY b field_49043 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_45307 a method_45307 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/io/FileNotFoundException; method_43043 b method_43043 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_56937 c method_56937 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getResource getResource method_14486 + p 1 location + m ()V +c net/minecraft/server/packs/resources/SimpleJsonResourceReloadListener aui net/minecraft/class_4309 + f Lorg/slf4j/Logger; LOGGER a field_19377 + f Lcom/google/gson/Gson; gson b field_19379 + f Ljava/lang/String; directory c field_19380 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/Map; prepare a method_20731 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;Lcom/google/gson/Gson;Ljava/util/Map;)V scanDirectory a method_51148 + p 0 resourceManager + p 1 name + p 2 gson + p 3 output + m (Lcom/google/gson/Gson;Ljava/lang/String;)V + p 1 gson + p 2 directory + m ()V +c net/minecraft/server/packs/resources/SimplePreparableReloadListener auj net/minecraft/class_4080 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/lang/Object; method_18791 a method_18791 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/lang/Object;)V method_18790 a method_18790 + m (Ljava/lang/Object;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18788 + p 1 object + p 2 resourceManager + p 3 profiler + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/lang/Object; prepare b method_18789 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ()V +c net/minecraft/server/packs/resources/SimpleReloadInstance auk net/minecraft/class_4014 + f Ljava/util/concurrent/CompletableFuture; allPreparations a field_18042 + f Ljava/util/concurrent/CompletableFuture; allDone b field_18043 + f I PREPARATION_PROGRESS_WEIGHT c field_29784 + f I EXTRA_RELOAD_PROGRESS_WEIGHT d field_29785 + f I LISTENER_PROGRESS_WEIGHT e field_29786 + f Ljava/util/Set; preparingListeners f field_18044 + f I listenerCount g field_18045 + f I startedReloads h field_18046 + f I finishedReloads i field_18047 + f Ljava/util/concurrent/atomic/AtomicInteger; startedTaskCounter j field_18048 + f Ljava/util/concurrent/atomic/AtomicInteger; doneTaskCounter k field_18049 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/server/packs/resources/SimpleReloadInstance; of a method_18369 + p 0 resourceManager + p 1 listeners + p 2 backgroundExecutor + p 3 gameExecutor + p 4 alsoWaitedFor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Z)Lnet/minecraft/server/packs/resources/ReloadInstance; create a method_40087 + p 0 resourceManager + p 1 listeners + p 2 backgroundExecutor + p 3 gameExecutor + p 4 alsoWaitedFor + p 5 profiled + m (Ljava/lang/Runnable;)V method_18365 a method_18365 + m (Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_18368 a method_18368 + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_18367 a method_18367 + m (Ljava/lang/Runnable;)V method_18371 b method_18371 + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_18372 b method_18372 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Lnet/minecraft/server/packs/resources/SimpleReloadInstance$StateFactory;Ljava/util/concurrent/CompletableFuture;)V + p 1 backgroundExecutor + p 2 gameExecutor + p 3 resourceManager + p 4 listeners + p 5 stateFactory + p 6 alsoWaitedFor +c net/minecraft/server/packs/resources/SimpleReloadInstance$1 auk$1 net/minecraft/class_4014$1 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor a field_18050 + f Lnet/minecraft/server/packs/resources/PreparableReloadListener; val$listener b field_18051 + f Ljava/util/concurrent/CompletableFuture; val$previousTask c field_18052 + f Lnet/minecraft/server/packs/resources/SimpleReloadInstance; field_18053 d field_18053 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;)V method_18374 a method_18374 + m (Ljava/lang/Object;Lnet/minecraft/util/Unit;Ljava/lang/Object;)Ljava/lang/Object; method_18373 a method_18373 + m (Lnet/minecraft/server/packs/resources/SimpleReloadInstance;Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/server/packs/resources/SimpleReloadInstance$StateFactory auk$a net/minecraft/class_4014$class_4047 +c net/minecraft/server/packs/resources/package-info aul net/minecraft/class_5988 +c net/minecraft/server/players/BanListEntry aum net/minecraft/class_3309 + f Ljava/text/SimpleDateFormat; DATE_FORMAT a field_14308 + f Ljava/lang/String; EXPIRES_NEVER b field_29787 + f Ljava/util/Date; created c field_14306 + f Ljava/lang/String; source d field_14304 + f Ljava/util/Date; expires e field_14305 + f Ljava/lang/String; reason f field_14307 + m ()Ljava/util/Date; getCreated a method_34885 + m ()Ljava/lang/String; getSource b method_14501 + m ()Ljava/util/Date; getExpires c method_14502 + m ()Ljava/lang/String; getReason d method_14503 + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_14504 + m (Ljava/lang/Object;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 user + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Ljava/lang/Object;Lcom/google/gson/JsonObject;)V + p 1 user + p 2 entryData + m ()V +c net/minecraft/server/players/GameProfileCache aun net/minecraft/class_3312 + f Lorg/slf4j/Logger; LOGGER a field_25805 + f I GAMEPROFILES_MRU_LIMIT b field_29788 + f I GAMEPROFILES_EXPIRATION_MONTHS c field_29789 + f Z usesAuthentication d field_14313 + f Ljava/util/Map; profilesByName e field_14312 + c A map between player usernames and + f Ljava/util/Map; profilesByUUID f field_14310 + c A map between and + f Ljava/util/Map; requests g field_33860 + f Lcom/mojang/authlib/GameProfileRepository; profileRepository h field_14315 + f Lcom/google/gson/Gson; gson i field_14318 + f Ljava/io/File; file j field_14314 + f Ljava/util/concurrent/atomic/AtomicLong; operationCount k field_25724 + f Ljava/util/concurrent/Executor; executor l field_33861 + m ()V clearExecutor a method_39753 + m (I)Ljava/util/stream/Stream; getTopMRUProfiles a method_14516 + p 1 limit + m (Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;)V safeAdd a method_30164 + p 1 profile + m (Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;Ljava/text/DateFormat;)Lcom/google/gson/JsonElement; writeGameProfile a method_30165 + p 0 profileInfo + p 1 dateFormat + m (Lcom/google/gson/JsonArray;Ljava/text/DateFormat;Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;)V method_30166 a method_30166 + m (Lcom/google/gson/JsonElement;Ljava/text/DateFormat;)Ljava/util/Optional; readGameProfile a method_30167 + p 0 json + p 1 dateFormat + m (Lcom/mojang/authlib/GameProfile;)V add a method_14508 + c Add an entry to this cache + p 1 gameProfile + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/lang/String;)Ljava/util/Optional; lookupGameProfile a method_14509 + p 0 profileRepo + p 1 name + m (Ljava/lang/String;)Ljava/util/Optional; get a method_14515 + c Get a player's GameProfile given their username. Mojang's servers will be contacted if the entry is not cached locally. + p 1 name + m (Ljava/lang/String;Ljava/util/Optional;Ljava/lang/Throwable;)V method_37155 a method_37155 + m (Ljava/text/DateFormat;Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30168 a method_30168 + m (Ljava/util/UUID;)Ljava/util/Optional; get a method_14512 + p 1 uuid + c Get a player's {@link GameProfile} given their UUID + m (Ljava/util/concurrent/Executor;)V setExecutor a method_37157 + p 1 exectutor + m (Z)V setUsesAuthentication a method_14510 + p 0 onlineMode + m ()Ljava/util/List; load b method_14517 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; getAsync b method_37156 + p 1 name + m ()V save c method_14518 + c Save the cached profiles to disk + m (Ljava/lang/String;)Ljava/util/Optional; createUnknownProfile c method_53912 + p 0 profileName + m ()Z usesAuthentication d method_14514 + m (Ljava/lang/String;)Ljava/util/Optional; method_37159 d method_37159 + m ()J getNextOperation e method_30169 + m ()Ljava/text/DateFormat; createDateFormat f method_30170 + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/io/File;)V + p 1 profileRepository + p 2 file + m ()V +c net/minecraft/server/players/GameProfileCache$1 aun$1 net/minecraft/class_3312$1 + f Ljava/util/concurrent/atomic/AtomicReference; val$result a field_25725 + m (Ljava/util/concurrent/atomic/AtomicReference;)V +c net/minecraft/server/players/GameProfileCache$GameProfileInfo aun$a net/minecraft/class_3312$class_3313 + f Lcom/mojang/authlib/GameProfile; profile a field_14321 + c The player's GameProfile + f Ljava/util/Date; expirationDate b field_14319 + c The date that this entry will expire + f J lastAccess c field_25726 + m ()Lcom/mojang/authlib/GameProfile; getProfile a method_14519 + c Get the player's GameProfile + m (J)V setLastAccess a method_30171 + p 1 lastAccess + m ()Ljava/util/Date; getExpirationDate b method_14520 + c Get the date that this entry will expire + m ()J getLastAccess c method_30172 + m (Lcom/mojang/authlib/GameProfile;Ljava/util/Date;)V + p 1 profile + p 2 expirationDate +c net/minecraft/server/players/IpBanList auo net/minecraft/class_3317 + m (Ljava/lang/String;)Z isBanned a method_14529 + p 1 address + m (Ljava/net/SocketAddress;)Z isBanned a method_14527 + p 1 address + m (Ljava/net/SocketAddress;)Lnet/minecraft/server/players/IpBanListEntry; get b method_14528 + p 1 address + m (Ljava/net/SocketAddress;)Ljava/lang/String; getIpFromAddress c method_14526 + p 1 address + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/IpBanListEntry aup net/minecraft/class_3320 + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; createIpInfo b method_14532 + p 0 json + m (Ljava/lang/String;)V + p 1 ip + m (Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 ip + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/OldUsersConverter auq net/minecraft/class_3321 + f Ljava/io/File; OLD_IPBANLIST a field_14324 + f Ljava/io/File; OLD_USERBANLIST b field_14328 + f Ljava/io/File; OLD_OPLIST c field_14327 + f Ljava/io/File; OLD_WHITELIST d field_14325 + f Lorg/slf4j/Logger; LOGGER e field_14326 + m ()Z areOldUserlistsRemoved a method_14541 + m (I)[Ljava/lang/String; method_14551 a method_14551 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)Z convertPlayers a method_14550 + p 0 server + m (Ljava/io/File;)V ensureDirectoryExists a method_14534 + p 0 dir + m (Ljava/io/File;Ljava/util/Map;)Ljava/util/List; readOldListFormat a method_14543 + p 0 inFile + p 1 read + m (Ljava/lang/String;)Z method_14552 a method_14552 + m (Ljava/lang/String;Ljava/util/Date;)Ljava/util/Date; parseDate a method_14535 + p 0 input + p 1 defaultValue + m (Lnet/minecraft/server/MinecraftServer;)Z convertUserBanlist a method_14547 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;Ljava/lang/String;)Ljava/util/UUID; convertMobOwnerIfNecessary a method_14546 + p 0 server + p 1 username + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/Collection;Lcom/mojang/authlib/ProfileLookupCallback;)V lookupPlayers a method_14538 + p 0 server + p 1 names + p 2 callback + m (Ljava/io/File;)V renameOldFile b method_14549 + p 0 convertedFile + m (Lnet/minecraft/server/MinecraftServer;)Z convertIpBanlist b method_14545 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z convertOpsList c method_14539 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z convertWhiteList d method_14533 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z serverReadyAfterUserconversion e method_14540 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z areOldPlayersConverted f method_14542 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Ljava/io/File; getWorldPlayersDirectory g method_14536 + p 0 server + m ()V + m ()V +c net/minecraft/server/players/OldUsersConverter$1 auq$1 net/minecraft/class_3321$1 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14331 + f Ljava/util/Map; val$userMap b field_14330 + f Lnet/minecraft/server/players/UserBanList; val$bans c field_14329 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/Map;Lnet/minecraft/server/players/UserBanList;)V +c net/minecraft/server/players/OldUsersConverter$2 auq$2 net/minecraft/class_3321$2 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14332 + f Lnet/minecraft/server/players/ServerOpList; val$opsList b field_14333 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/players/ServerOpList;)V +c net/minecraft/server/players/OldUsersConverter$3 auq$3 net/minecraft/class_3321$3 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14335 + f Lnet/minecraft/server/players/UserWhiteList; val$whitelist b field_14334 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/players/UserWhiteList;)V +c net/minecraft/server/players/OldUsersConverter$4 auq$4 net/minecraft/class_3321$4 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14336 + f Ljava/util/List; val$profiles b field_14337 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/List;)V +c net/minecraft/server/players/OldUsersConverter$5 auq$5 net/minecraft/class_3321$5 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$server a field_14341 + f Ljava/io/File; val$worldNewPlayerDirectory b field_14342 + f Ljava/io/File; val$unknownPlayerDirectory c field_14339 + f Ljava/io/File; val$worldPlayerDirectory d field_14338 + f [Ljava/lang/String; val$names e field_14340 + m (Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V movePlayerFile a method_14553 + p 1 file + p 2 oldFileName + p 3 newFileName + m (Ljava/lang/String;)Ljava/lang/String; getFileNameForProfile a method_14554 + p 1 profileName + m (Lnet/minecraft/server/dedicated/DedicatedServer;Ljava/io/File;Ljava/io/File;Ljava/io/File;[Ljava/lang/String;)V +c net/minecraft/server/players/OldUsersConverter$ConversionError auq$a net/minecraft/class_3321$class_3322 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/server/players/PlayerList aur net/minecraft/class_3324 + f I sendAllPlayerInfoIn A field_14357 + f Ljava/io/File; USERBANLIST_FILE a field_14355 + f Ljava/io/File; IPBANLIST_FILE b field_14364 + f Ljava/io/File; OPLIST_FILE c field_14348 + f Ljava/io/File; WHITELIST_FILE d field_14343 + f Lnet/minecraft/network/chat/Component; CHAT_FILTERED_FULL e field_39921 + f Lnet/minecraft/network/chat/Component; DUPLICATE_LOGIN_DISCONNECT_MESSAGE f field_45061 + f I maxPlayers g field_14347 + f Lorg/slf4j/Logger; LOGGER h field_14349 + f I SEND_PLAYER_INFO_INTERVAL i field_29790 + f Ljava/text/SimpleDateFormat; BAN_DATE_FORMAT j field_14356 + f Lnet/minecraft/server/MinecraftServer; server k field_14360 + f Ljava/util/List; players l field_14351 + f Ljava/util/Map; playersByUUID m field_14354 + c A map containing the key-value pairs for UUIDs and their EntityPlayerMP objects. + f Lnet/minecraft/server/players/UserBanList; bans n field_14344 + f Lnet/minecraft/server/players/IpBanList; ipBans o field_14345 + f Lnet/minecraft/server/players/ServerOpList; ops p field_14353 + f Lnet/minecraft/server/players/UserWhiteList; whitelist q field_14361 + f Ljava/util/Map; stats r field_14362 + f Ljava/util/Map; advancements s field_14346 + f Lnet/minecraft/world/level/storage/PlayerDataStorage; playerIo t field_14358 + f Z doWhiteList u field_14352 + f Lnet/minecraft/core/LayeredRegistryAccess; registries v field_24626 + f I viewDistance w field_14359 + f I simulationDistance x field_34895 + f Z allowCommandsForAllPlayers y field_14350 + f Z ALLOW_LOGOUTIVATOR z field_29791 + m ()V reloadWhiteList a method_14599 + m (I)V setViewDistance a method_14608 + p 1 viewDistance + m (Lnet/minecraft/server/ServerScoreboard;Lnet/minecraft/server/level/ServerPlayer;)V updateEntireScoreboard a method_14588 + p 1 scoreboard + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;)V addWorldborderListener a method_14591 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_18241 a method_18241 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/Optional; load a method_14600 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;I)V sendPlayerPermissionLevel a method_14596 + p 1 player + p 2 permLevel + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/level/ServerLevel;)V sendLevelInfo a method_14606 + c Updates the time and weather for the given player to those of the given world + p 1 player + p 2 level + m (Lnet/minecraft/server/level/ServerPlayer;ZLnet/minecraft/world/entity/Entity$RemovalReason;)Lnet/minecraft/server/level/ServerPlayer; respawn a method_14556 + p 1 player + p 2 keepInventory + p 3 reason + m (Lnet/minecraft/world/entity/Entity;)V method_31441 a method_31441 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/server/network/ServerGamePacketListenerImpl;)V sendActiveEffects a method_60597 + p 1 entity + p 2 connection + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/stats/ServerStatsCounter; getPlayerStats a method_14583 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;DDDDLnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_14605 + p 1 except + p 2 x + p 4 y + p 6 z + p 8 radius + p 10 dimension + p 11 packet + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V broadcastSystemToTeam a method_14564 + p 1 player + p 2 message + m (Lcom/mojang/authlib/GameProfile;)V op a method_14582 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)Lnet/minecraft/server/level/ServerPlayer; getPlayerForLogin a method_14613 + p 1 gameProfile + p 2 clientInformation + m (Ljava/lang/String;)Lnet/minecraft/server/level/ServerPlayer; getPlayerByName a method_14566 + p 1 username + m (Ljava/net/SocketAddress;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; canPlayerLogin a method_14586 + p 1 socketAddress + p 2 gameProfile + m (Ljava/util/UUID;)Lnet/minecraft/server/level/ServerPlayer; getPlayer a method_14602 + c Gets the ServerPlayer object representing the player with the UUID. + p 1 playerUUID + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; method_55634 a method_55634 + m (Lnet/minecraft/network/Connection;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/network/CommonListenerCookie;)V placeNewPlayer a method_14570 + p 1 connection + p 2 player + p 3 cookie + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/Component; method_43511 a method_43511 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Function;Z)V broadcastSystemMessage a method_43512 + p 1 serverMessage + p 2 playerMessageFactory + p 3 bypassHiddenChat + m (Lnet/minecraft/network/chat/Component;Z)V broadcastSystemMessage a method_43514 + p 1 message + p 2 bypassHiddenChat + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z verifyChatTrusted a method_44793 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_43673 + p 1 message + p 2 sender + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_44166 + p 1 message + p 2 sender + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_44791 + p 1 message + p 2 shouldFilterMessageTo + p 3 sender + p 4 boundChatType + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAll a method_14581 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/resources/ResourceKey;)V broadcastAll a method_14589 + p 1 packet + p 2 dimension + m (Z)V setUsingWhiteList a method_14557 + p 1 whitelistEnabled + m (I)V setSimulationDistance b method_38650 + p 1 simulationDistance + m (Lnet/minecraft/server/level/ServerPlayer;)V save b method_14577 + c Also stores the NBTTags if this is an IntegratedPlayerList. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V broadcastSystemToAllExceptTeam b method_14565 + p 1 player + p 2 message + m (Lcom/mojang/authlib/GameProfile;)V deop b method_14604 + p 1 profile + m (Ljava/lang/String;)Ljava/util/List; getPlayersWithAddress b method_14559 + p 1 address + m (Z)V setAllowCommandsForAllPlayers b method_14607 + p 1 allowCommandsForAllPlayers + m ()Lnet/minecraft/server/MinecraftServer; getServer c method_14561 + m (Lnet/minecraft/server/level/ServerPlayer;)V remove c method_14611 + c Called when a player disconnects from the game. Writes player data to disk and removes them from the world. + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z isWhiteListed c method_14587 + p 1 profile + m ()V tick d method_14601 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendActivePlayerEffects d method_60598 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z canBypassPlayerLimit d method_14609 + p 1 profile + m ()[Ljava/lang/String; getPlayerNamesArray e method_14580 + c Returns an array of the usernames of all the connected players. + m (Lnet/minecraft/server/level/ServerPlayer;)V sendPlayerPermissionLevel e method_14576 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z disconnectAllPlayersWithProfile e method_52449 + p 1 gameProfile + m ()Lnet/minecraft/server/players/UserBanList; getBans f method_14563 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendAllPlayerInfo f method_14594 + c Sends the players inventory to himself. + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z isOp f method_14569 + p 1 profile + m ()Lnet/minecraft/server/players/IpBanList; getIpBans g method_14585 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/PlayerAdvancements; getPlayerAdvancements g method_14578 + p 1 player + m ()V saveAll h method_14617 + c Saves all of the players' current states. + m ()Lnet/minecraft/server/players/UserWhiteList; getWhiteList i method_14590 + m ()[Ljava/lang/String; getWhiteListNames j method_14560 + m ()Lnet/minecraft/server/players/ServerOpList; getOps k method_14603 + m ()[Ljava/lang/String; getOpNames l method_14584 + m ()I getPlayerCount m method_14574 + c Returns the number of players currently on the server. + m ()I getMaxPlayers n method_14592 + c Returns the maximum number of players allowed on the server. + m ()Z isUsingWhitelist o method_14614 + m ()I getViewDistance p method_14568 + c Gets the view distance, in chunks. + m ()I getSimulationDistance q method_38651 + m ()Lnet/minecraft/nbt/CompoundTag; getSingleplayerData r method_14567 + c On integrated servers, returns the host's player data to be written to level.dat. + m ()V removeAll s method_14597 + c Kicks everyone with "Server closed" as reason. + m ()Ljava/util/List; getPlayers t method_14571 + m ()V reloadResources u method_14572 + m ()Z isAllowCommandsForAllPlayers v method_14579 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;I)V + p 1 server + p 2 registries + p 3 playerIo + p 4 maxPlayers + m ()V +c net/minecraft/server/players/PlayerList$1 aur$1 net/minecraft/class_3324$1 + f Lnet/minecraft/server/players/PlayerList; field_14365 a field_14365 + m (Lnet/minecraft/server/players/PlayerList;)V +c net/minecraft/server/players/ServerOpList aus net/minecraft/class_3326 + m (I)[Ljava/lang/String; method_32820 a method_32820 + m (Lcom/mojang/authlib/GameProfile;)Z canBypassPlayerLimit a method_14620 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14619 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/ServerOpListEntry aut net/minecraft/class_3327 + f I level a field_14366 + f Z bypassesPlayerLimit b field_14367 + m ()I getLevel a method_14623 + c Gets the permission level of the user, as defined in the "level" attribute of the ops.json file + m ()Z getBypassesPlayerLimit b method_14622 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14621 + p 0 profileData + m (Lcom/mojang/authlib/GameProfile;IZ)V + p 1 user + p 2 level + p 3 bypassesPlayerLimit + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/SleepStatus auu net/minecraft/class_5838 + f I activePlayers a field_28866 + f I sleepingPlayers b field_28867 + m ()V removeAllSleepers a method_33811 + m (I)Z areEnoughSleeping a method_33812 + p 1 requiredSleepPercentage + m (ILjava/util/List;)Z areEnoughDeepSleeping a method_33813 + p 1 requiredSleepPercentage + p 2 sleepingPlayers + m (Ljava/util/List;)Z update a method_33814 + p 1 players + m ()I amountSleeping b method_33815 + m (I)I sleepersNeeded b method_33816 + p 1 requiredSleepPercentage + m ()V +c net/minecraft/server/players/StoredUserEntry auv net/minecraft/class_3330 + f Ljava/lang/Object; user a field_14368 + m (Lcom/google/gson/JsonObject;)V serialize a method_24896 + p 1 data + m ()Z hasExpired f method_14627 + m ()Ljava/lang/Object; getUser g method_14626 + m (Ljava/lang/Object;)V + p 1 user +c net/minecraft/server/players/StoredUserList auw net/minecraft/class_3331 + f Lorg/slf4j/Logger; LOGGER a field_14373 + f Lcom/google/gson/Gson; GSON b field_14374 + f Ljava/io/File; file c field_14370 + f Ljava/util/Map; map d field_14371 + m ()[Ljava/lang/String; getUserList a method_14636 + m (Lnet/minecraft/server/players/StoredUserEntry;)V add a method_14633 + c Adds an entry to the list + p 1 entry + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/server/players/StoredUserEntry; createEntry a method_14642 + p 1 entryData + m (Ljava/lang/Object;)Ljava/lang/String; getKeyForUser a method_14634 + c Gets the key value for the given object + p 1 obj + m ()Ljava/io/File; getFile b method_14643 + m (Lnet/minecraft/server/players/StoredUserEntry;)V remove b method_14638 + p 1 entry + m (Ljava/lang/Object;)Lnet/minecraft/server/players/StoredUserEntry; get b method_14640 + p 1 obj + m ()Z isEmpty c method_14641 + m (Lnet/minecraft/server/players/StoredUserEntry;)Lcom/google/gson/JsonObject; method_24897 c method_24897 + m (Ljava/lang/Object;)V remove c method_14635 + p 1 user + m ()Ljava/util/Collection; getEntries d method_14632 + m (Ljava/lang/Object;)Z contains d method_14644 + p 1 entry + m ()V save e method_14629 + m ()V load f method_14630 + m ()V removeExpired g method_14631 + c Removes expired bans from the list. See {@link BanEntry#hasBanExpired} + m (Ljava/io/File;)V + p 1 file + m ()V +c net/minecraft/server/players/UserBanList auy net/minecraft/class_3335 + m (I)[Ljava/lang/String; method_32821 a method_32821 + m (Lcom/mojang/authlib/GameProfile;)Z isBanned a method_14650 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14649 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/UserBanListEntry auz net/minecraft/class_3336 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14651 + c Convert a {@linkplain com.google.gson.JsonObject JsonObject} into a {@linkplain com.mojang.authlib.GameProfile}. The json object must have {@code uuid} and {@code name} attributes or {@code null} will be returned. + p 0 json + m (Lcom/mojang/authlib/GameProfile;)V + p 1 user + m (Lcom/mojang/authlib/GameProfile;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 profile + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/UserWhiteList ava net/minecraft/class_3337 + m (I)[Ljava/lang/String; method_32822 a method_32822 + m (Lcom/mojang/authlib/GameProfile;)Z isWhiteListed a method_14653 + c Returns {@code true} if the profile is in the whitelist. + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14652 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/UserWhiteListEntry avb net/minecraft/class_3340 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14656 + p 0 json + m (Lcom/mojang/authlib/GameProfile;)V + p 1 user + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/package-info avc net/minecraft/class_5989 +c net/minecraft/server/rcon/NetworkDataOutputStream avd net/minecraft/class_3345 + f Ljava/io/ByteArrayOutputStream; outputStream a field_14395 + f Ljava/io/DataOutputStream; dataOutputStream b field_14396 + m ()[B toByteArray a method_14689 + c Returns the contents of the output stream as a byte array + m (F)V writeFloat a method_34886 + p 1 data + m (I)V write a method_14692 + c Writes the given int to the output stream + p 1 data + m (Ljava/lang/String;)V writeString a method_14690 + c Writes the given String to the output stream + p 1 data + m (S)V writeShort a method_14691 + c Writes the given short to the output stream + p 1 data + m ([B)V writeBytes a method_14694 + c Writes the given byte array to the output stream + p 1 data + m ()V reset b method_14693 + c Resets the byte array output. + m (I)V writeInt b method_34887 + p 1 data + m (I)V + p 1 capacity +c net/minecraft/server/rcon/PktUtils ave net/minecraft/class_3347 + f I MAX_PACKET_SIZE a field_29792 + f [C HEX_CHAR b field_14398 + m (B)Ljava/lang/String; toHexString a method_14699 + c Returns a String representation of the byte in hexadecimal format + p 0 input + m ([BI)I intFromByteArray a method_14695 + c Read 4 bytes from the + p 0 input + p 1 offset + m ([BII)Ljava/lang/String; stringFromByteArray a method_14697 + c Read a null-terminated string from the given byte array + p 0 input + p 1 offset + p 2 length + m ([BII)I intFromByteArray b method_14696 + c Read 4 bytes from the given array in little-endian format and return them as an int + p 0 input + p 1 offset + p 2 length + m ([BII)I intFromNetworkByteArray c method_14698 + c Read 4 bytes from the given array in big-endian format and return them as an int + p 0 input + p 1 offset + p 2 length + m ()V + m ()V +c net/minecraft/server/rcon/RconConsoleSource avf net/minecraft/class_3350 + f Ljava/lang/String; RCON b field_29793 + f Lnet/minecraft/network/chat/Component; RCON_COMPONENT c field_25146 + f Ljava/lang/StringBuffer; buffer d field_14404 + f Lnet/minecraft/server/MinecraftServer; server e field_14405 + m ()V prepareForCommand e method_14702 + c Clears the RCon log + m ()Ljava/lang/String; getCommandResponse f method_14701 + c Gets the contents of the RCon log + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack g method_14700 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/rcon/package-info avg net/minecraft/class_5990 +c net/minecraft/server/rcon/thread/GenericThread avh net/minecraft/class_3359 + f Z running a field_14431 + f Ljava/lang/String; name b field_14424 + f Ljava/lang/Thread; thread c field_14423 + f Lorg/slf4j/Logger; LOGGER d field_14430 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID e field_14428 + f I MAX_STOP_WAIT f field_29794 + m ()Z start a method_14728 + m ()V stop b method_18050 + m ()Z isRunning c method_14731 + c Returns {@code true} if the Thread is running, {@code false} otherwise. + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/server/rcon/thread/QueryThreadGs4 avi net/minecraft/class_3364 + f Lorg/slf4j/Logger; LOGGER d field_23963 + f Ljava/lang/String; GAME_TYPE e field_29795 + f Ljava/lang/String; GAME_ID f field_29796 + f J CHALLENGE_CHECK_INTERVAL g field_29797 + f J RESPONSE_CACHE_TIME h field_29798 + f J lastChallengeCheck i field_14443 + f I port j field_14442 + f I serverPort k field_14457 + f I maxPlayers l field_14456 + f Ljava/lang/String; serverName m field_14445 + f Ljava/lang/String; worldName n field_14447 + f Ljava/net/DatagramSocket; socket o field_14449 + f [B buffer p field_14452 + f Ljava/lang/String; hostIp q field_14444 + f Ljava/lang/String; serverIp r field_14454 + f Ljava/util/Map; validChallenges s field_14453 + f Lnet/minecraft/server/rcon/NetworkDataOutputStream; rulesResponse t field_14446 + f J lastRulesResponse u field_14450 + f Lnet/minecraft/server/ServerInterface; serverInterface v field_23964 + m (JLnet/minecraft/server/rcon/thread/QueryThreadGs4$RequestChallenge;)Z method_27174 a method_27174 + m (Lnet/minecraft/server/ServerInterface;)Lnet/minecraft/server/rcon/thread/QueryThreadGs4; create a method_30737 + p 0 serverInterface + m (Ljava/lang/Exception;)V recoverSocketError a method_14752 + c Stops the query server and reports the given Exception + p 1 exception + m (Ljava/net/DatagramPacket;)Z processPacket a method_14750 + c Parses an incoming DatagramPacket, returning true if the packet was valid + p 1 requestPacket + m (Ljava/net/SocketAddress;)[B getIdentBytes a method_14748 + c Returns the request ID provided by the authorized client + p 1 address + m ([BLjava/net/DatagramPacket;)V sendTo a method_14751 + c Sends a byte array as a DatagramPacket response to the client who sent the given DatagramPacket + p 1 data + p 2 requestPacket + m (Ljava/net/DatagramPacket;)[B buildRuleResponse b method_14747 + c Creates a query response as a byte array for the specified query DatagramPacket + p 1 requestPacket + m (Ljava/net/DatagramPacket;)Ljava/lang/Boolean; validChallenge c method_14753 + c Returns {@code true} if the client has a valid auth, otherwise {@code false}. + p 1 requestPacket + m ()V pruneChallenges d method_14746 + c Removes all clients whose auth is no longer valid + m (Ljava/net/DatagramPacket;)V sendChallenge d method_14749 + c Sends an auth challenge DatagramPacket to the client and adds the client to the queryClients map + p 1 requestPacket + m ()Z initSocket e method_14754 + c Initializes the query system by binding it to a port + m (Lnet/minecraft/server/ServerInterface;I)V + p 1 serverInterface + p 2 port + m ()V +c net/minecraft/server/rcon/thread/QueryThreadGs4$RequestChallenge avi$a net/minecraft/class_3364$class_3365 + f J time a field_14459 + f I challenge b field_14458 + f [B identBytes c field_14460 + f [B challengeBytes d field_14461 + f Ljava/lang/String; ident e field_14462 + m ()I getChallenge a method_14756 + c Returns the random challenge number assigned to this auth + m (J)Ljava/lang/Boolean; before a method_14755 + c Returns {@code true} if the auth's creation timestamp is less than the given time, otherwise {@code false}. + p 1 currentTime + m ()[B getChallengeBytes b method_14757 + c Returns the auth challenge value + m ()[B getIdentBytes c method_14758 + c Returns the request ID provided by the client. + m ()Ljava/lang/String; getIdent d method_34888 + m (Ljava/net/DatagramPacket;)V + p 1 datagramPacket +c net/minecraft/server/rcon/thread/RconClient avj net/minecraft/class_3389 + f Lorg/slf4j/Logger; LOGGER d field_14491 + f I SERVERDATA_AUTH e field_29799 + f I SERVERDATA_EXECCOMMAND f field_29800 + f I SERVERDATA_RESPONSE_VALUE g field_29801 + f I SERVERDATA_AUTH_RESPONSE h field_29802 + f I SERVERDATA_AUTH_FAILURE i field_29803 + f Z authed j field_14488 + f Ljava/net/Socket; client k field_14489 + f [B buf l field_14490 + f Ljava/lang/String; rconPassword m field_14492 + f Lnet/minecraft/server/ServerInterface; serverInterface n field_23965 + m (IILjava/lang/String;)V send a method_14790 + c Sends the given response message to the client + p 1 id + p 2 type + p 3 message + m (ILjava/lang/String;)V sendCmdResponse a method_14789 + c Splits the response message into individual packets and sends each one + p 1 id + p 2 message + m ()V sendAuthFailure d method_14787 + c Sends the standard RCon 'authorization failed' response packet + m ()V closeSocket e method_14788 + c Closes the client socket + m (Lnet/minecraft/server/ServerInterface;Ljava/lang/String;Ljava/net/Socket;)V + p 1 serverInterface + p 2 rconPassword + p 3 client + m ()V +c net/minecraft/server/rcon/thread/RconThread avk net/minecraft/class_3408 + f Lorg/slf4j/Logger; LOGGER d field_23966 + f Ljava/net/ServerSocket; socket e field_14511 + f Ljava/lang/String; rconPassword f field_14512 + f Ljava/util/List; clients g field_14514 + f Lnet/minecraft/server/ServerInterface; serverInterface h field_23967 + m (Lnet/minecraft/server/ServerInterface;)Lnet/minecraft/server/rcon/thread/RconThread; create a method_30738 + p 0 serverInterface + m (Lnet/minecraft/server/rcon/thread/RconClient;)Z method_27175 a method_27175 + m (Ljava/net/ServerSocket;)V closeSocket a method_27176 + p 1 socket + m ()V clearClients d method_14820 + c Cleans up the clientThreads map by removing client Threads that are not running + m (Lnet/minecraft/server/ServerInterface;Ljava/net/ServerSocket;Ljava/lang/String;)V + p 1 serverInterface + p 2 socket + p 3 rconPassword + m ()V +c net/minecraft/server/rcon/thread/package-info avl net/minecraft/class_5991 +c net/minecraft/sounds/Music avm net/minecraft/class_5195 + f Lcom/mojang/serialization/Codec; CODEC a field_24627 + f Lnet/minecraft/core/Holder; event b field_24057 + f I minDelay c field_24058 + f I maxDelay d field_24059 + f Z replaceCurrentMusic e field_24060 + m ()Lnet/minecraft/core/Holder; getEvent a method_27279 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Boolean; method_28127 a method_28127 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28128 a method_28128 + m ()I getMinDelay b method_27280 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Integer; method_28129 b method_28129 + m ()I getMaxDelay c method_27281 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Integer; method_28130 c method_28130 + m ()Z replaceCurrentMusic d method_27282 + m (Lnet/minecraft/sounds/Music;)Lnet/minecraft/core/Holder; method_28131 d method_28131 + m (Lnet/minecraft/core/Holder;IIZ)V + p 1 event + p 2 minDelay + p 3 maxDelay + p 4 replaceCurrentMusic + m ()V +c net/minecraft/sounds/Musics avn net/minecraft/class_1143 + f Lnet/minecraft/sounds/Music; MENU a field_5585 + f Lnet/minecraft/sounds/Music; CREATIVE b field_5581 + f Lnet/minecraft/sounds/Music; CREDITS c field_5578 + f Lnet/minecraft/sounds/Music; END_BOSS d field_5580 + f Lnet/minecraft/sounds/Music; END e field_5583 + f Lnet/minecraft/sounds/Music; UNDER_WATER f field_5576 + f Lnet/minecraft/sounds/Music; GAME g field_5586 + f I ONE_SECOND h field_29804 + f I THIRTY_SECONDS i field_29805 + f I TEN_MINUTES j field_29806 + f I TWENTY_MINUTES k field_29807 + f I FIVE_MINUTES l field_29808 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/sounds/Music; createGameMusic a method_27283 + p 0 event + m ()V + m ()V +c net/minecraft/sounds/SoundEvent avo net/minecraft/class_3414 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_41698 + f Lcom/mojang/serialization/Codec; CODEC b field_41699 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC c field_48278 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48279 + f F DEFAULT_RANGE e field_41661 + f Lnet/minecraft/resources/ResourceLocation; location f field_14533 + f F range g field_38690 + f Z newSystem h field_38691 + m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_14833 + m (F)F getRange a method_43044 + p 1 volume + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; createVariableRangeEvent a method_47908 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;F)Lnet/minecraft/sounds/SoundEvent; createFixedRangeEvent a method_47909 + p 0 location + p 1 range + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Float;)Lnet/minecraft/sounds/SoundEvent; method_47955 a method_47955 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)Lnet/minecraft/sounds/SoundEvent; create a method_47956 + p 0 location + p 1 range + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47957 a method_47957 + m ()Ljava/util/Optional; fixedRange b method_47959 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; method_47960 b method_47960 + m (Lnet/minecraft/resources/ResourceLocation;FZ)V + p 1 location + p 2 range + p 3 newSystem + m ()V +c net/minecraft/sounds/SoundEvents avp net/minecraft/class_3417 + f Lnet/minecraft/sounds/SoundEvent; VAULT_ACTIVATE AA field_48796 + f Lnet/minecraft/sounds/SoundEvent; VAULT_AMBIENT AB field_48797 + f Lnet/minecraft/sounds/SoundEvent; VAULT_BREAK AC field_48798 + f Lnet/minecraft/sounds/SoundEvent; VAULT_CLOSE_SHUTTER AD field_48799 + f Lnet/minecraft/sounds/SoundEvent; VAULT_DEACTIVATE AE field_48800 + f Lnet/minecraft/sounds/SoundEvent; VAULT_EJECT_ITEM AF field_48801 + f Lnet/minecraft/sounds/SoundEvent; VAULT_REJECT_REWARDED_PLAYER AG field_51988 + f Lnet/minecraft/sounds/SoundEvent; VAULT_FALL AH field_48802 + f Lnet/minecraft/sounds/SoundEvent; VAULT_HIT AI field_48790 + f Lnet/minecraft/sounds/SoundEvent; VAULT_INSERT_ITEM AJ field_48791 + f Lnet/minecraft/sounds/SoundEvent; VAULT_INSERT_ITEM_FAIL AK field_48792 + f Lnet/minecraft/sounds/SoundEvent; VAULT_OPEN_SHUTTER AL field_48793 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS A field_15028 + f Lnet/minecraft/sounds/SoundEvent; VAULT_PLACE AM field_48794 + f Lnet/minecraft/sounds/SoundEvent; VAULT_STEP AN field_48795 + f Lnet/minecraft/sounds/SoundEvent; VEX_AMBIENT AO field_14812 + f Lnet/minecraft/sounds/SoundEvent; VEX_CHARGE AP field_14898 + f Lnet/minecraft/sounds/SoundEvent; VEX_DEATH AQ field_14964 + f Lnet/minecraft/sounds/SoundEvent; VEX_HURT AR field_15072 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_AMBIENT AS field_15175 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_CELEBRATE AT field_19152 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_DEATH AU field_15225 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_HURT AV field_15139 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_NO AW field_15008 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_TRADE AX field_14933 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_YES AY field_14815 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_ARMORER AZ field_20669 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_BREAK Aa field_46951 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_FALL Ab field_46952 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_HIT Ac field_46953 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_PLACE Ad field_46954 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_STEP Ae field_46955 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_AMBIENT_LAND Af field_14722 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_DEATH Ag field_14856 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_DEATH_BABY Ah field_14618 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_BREAK Ai field_14687 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_CRACK Aj field_15109 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_HATCH Ak field_14902 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_HURT Al field_15183 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_HURT_BABY Am field_15070 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_LAY_EGG An field_14634 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SHAMBLE Ao field_14549 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SHAMBLE_BABY Ap field_14864 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SWIM Aq field_14764 + f Lnet/minecraft/core/Holder$Reference; UI_BUTTON_CLICK Ar field_15015 + f Lnet/minecraft/sounds/SoundEvent; UI_LOOM_SELECT_PATTERN As field_14920 + f Lnet/minecraft/sounds/SoundEvent; UI_LOOM_TAKE_RESULT At field_15096 + f Lnet/minecraft/sounds/SoundEvent; UI_CARTOGRAPHY_TABLE_TAKE_RESULT Au field_17484 + f Lnet/minecraft/sounds/SoundEvent; UI_STONECUTTER_TAKE_RESULT Av field_17710 + f Lnet/minecraft/sounds/SoundEvent; UI_STONECUTTER_SELECT_RECIPE Aw field_17711 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_CHALLENGE_COMPLETE Ax field_15195 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_IN Ay field_14561 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_OUT Az field_14641 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DRINK_POTION BA field_18313 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_HURT BB field_17749 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_NO BC field_17750 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_REAPPEARED BD field_18314 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_TRADE BE field_17751 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_YES BF field_17752 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_AGITATED BG field_38061 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_AMBIENT BH field_38062 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ANGRY BI field_38063 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ATTACK_IMPACT BJ field_38064 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_DEATH BK field_38065 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_DIG BL field_38066 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS_RARE B field_15068 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_EMERGE BM field_38067 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_HEARTBEAT BN field_38068 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_HURT BO field_38069 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_LISTENING BP field_38070 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_LISTENING_ANGRY BQ field_38071 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSE BR field_38072 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSER BS field_38073 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSEST BT field_38074 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ROAR BU field_38075 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SNIFF BV field_38076 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SONIC_BOOM BW field_38830 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SONIC_CHARGE BX field_38831 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_STEP BY field_38077 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_TENDRIL_CLICKS BZ field_38078 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_BUTCHER Ba field_20670 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_CARTOGRAPHER Bb field_20671 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_CLERIC Bc field_20672 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FARMER Bd field_20673 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FISHERMAN Be field_20674 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FLETCHER Bf field_20675 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_LEATHERWORKER Bg field_20676 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_LIBRARIAN Bh field_20677 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_MASON Bi field_20678 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_SHEPHERD Bj field_20679 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_TOOLSMITH Bk field_20680 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_WEAPONSMITH Bl field_20681 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_AMBIENT Bm field_14735 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_CELEBRATE Bn field_19151 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_DEATH Bo field_14642 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_HURT Bp field_14558 + f Lnet/minecraft/sounds/SoundEvent; VINE_BREAK Bq field_28617 + f Lnet/minecraft/sounds/SoundEvent; VINE_FALL Br field_28618 + f Lnet/minecraft/sounds/SoundEvent; VINE_HIT Bs field_28619 + f Lnet/minecraft/sounds/SoundEvent; VINE_PLACE Bt field_28620 + f Lnet/minecraft/sounds/SoundEvent; VINE_STEP Bu field_23061 + f Lnet/minecraft/sounds/SoundEvent; LILY_PAD_PLACE Bv field_15173 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_AMBIENT Bw field_17747 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DEATH Bx field_17748 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DISAPPEARED By field_18315 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DRINK_MILK Bz field_18316 + f Lnet/minecraft/sounds/SoundEvent; WITHER_DEATH CA field_15136 + f Lnet/minecraft/sounds/SoundEvent; WITHER_HURT CB field_14688 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SHOOT CC field_14588 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_AMBIENT CD field_15214 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_DEATH CE field_15122 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_HURT CF field_15027 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_STEP CG field_14955 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SPAWN CH field_14792 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_BREAK CI field_49174 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_CRACK CJ field_49175 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_DAMAGE CK field_49176 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_REPAIR CL field_49177 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS_ULTRA_RARE C field_15178 + f Lnet/minecraft/sounds/SoundEvent; WOLF_AMBIENT CM field_14724 + f Lnet/minecraft/sounds/SoundEvent; WOLF_DEATH CN field_14659 + f Lnet/minecraft/sounds/SoundEvent; WOLF_GROWL CO field_14575 + f Lnet/minecraft/sounds/SoundEvent; WOLF_HOWL CP field_15117 + f Lnet/minecraft/sounds/SoundEvent; WOLF_HURT CQ field_15218 + f Lnet/minecraft/sounds/SoundEvent; WOLF_PANT CR field_14922 + f Lnet/minecraft/sounds/SoundEvent; WOLF_SHAKE CS field_15042 + f Lnet/minecraft/sounds/SoundEvent; WOLF_STEP CT field_14772 + f Lnet/minecraft/sounds/SoundEvent; WOLF_WHINE CU field_14807 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_DOOR_CLOSE CV field_14541 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_DOOR_OPEN CW field_14664 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_TRAPDOOR_CLOSE CX field_15080 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_TRAPDOOR_OPEN CY field_14932 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_BUTTON_CLICK_OFF CZ field_15105 + f Lnet/minecraft/sounds/SoundEvent; WAXED_HANGING_SIGN_INTERACT_FAIL Ca field_46651 + f Lnet/minecraft/sounds/SoundEvent; WAXED_SIGN_INTERACT_FAIL Cb field_43167 + f Lnet/minecraft/sounds/SoundEvent; WATER_AMBIENT Cc field_15237 + f Lnet/minecraft/sounds/SoundEvent; WEATHER_RAIN Cd field_14946 + f Lnet/minecraft/sounds/SoundEvent; WEATHER_RAIN_ABOVE Ce field_15020 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_BREAK Cf field_15120 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_FALL Cg field_15207 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_HIT Ch field_14953 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_PLACE Ci field_15025 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_STEP Cj field_14774 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_BREAK Ck field_45967 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_DRIES Cl field_49173 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_FALL Cm field_45968 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_HIT Cn field_45959 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_PLACE Co field_45960 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_STEP Cp field_45961 + f Lnet/minecraft/core/Holder$Reference; WIND_CHARGE_BURST Cq field_49044 + f Lnet/minecraft/sounds/SoundEvent; WIND_CHARGE_THROW Cr field_49045 + f Lnet/minecraft/sounds/SoundEvent; WITCH_AMBIENT Cs field_14736 + f Lnet/minecraft/sounds/SoundEvent; WITCH_CELEBRATE Ct field_19153 + f Lnet/minecraft/sounds/SoundEvent; WITCH_DEATH Cu field_14820 + f Lnet/minecraft/sounds/SoundEvent; WITCH_DRINK Cv field_14565 + f Lnet/minecraft/sounds/SoundEvent; WITCH_HURT Cw field_14645 + f Lnet/minecraft/sounds/SoundEvent; WITCH_THROW Cx field_15067 + f Lnet/minecraft/sounds/SoundEvent; WITHER_AMBIENT Cy field_15163 + f Lnet/minecraft/sounds/SoundEvent; WITHER_BREAK_BLOCK Cz field_15236 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_AMBIENT DA field_15154 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_DEATH DB field_14543 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_HURT DC field_15179 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HURT DD field_15088 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_INFECT DE field_14986 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_AMBIENT DF field_14926 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_ANGRY DG field_14852 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_DEATH DH field_14743 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_HURT DI field_14710 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_STEP DJ field_14621 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_AMBIENT DK field_15056 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_CONVERTED DL field_15168 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_BREAK D field_26979 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_CURE DM field_14905 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_DEATH DN field_14996 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_HURT DO field_14728 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_STEP DP field_14841 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_BAD_OMEN DQ field_50090 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_TRIAL_OMEN DR field_50091 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_RAID_OMEN DS field_50092 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_BUTTON_CLICK_ON Da field_14699 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_PRESSURE_PLATE_CLICK_OFF Db field_15002 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_PRESSURE_PLATE_CLICK_ON Dc field_14961 + f Lnet/minecraft/sounds/SoundEvent; WOOD_BREAK Dd field_15215 + f Lnet/minecraft/sounds/SoundEvent; WOOD_FALL De field_14607 + f Lnet/minecraft/sounds/SoundEvent; WOOD_HIT Df field_14808 + f Lnet/minecraft/sounds/SoundEvent; WOOD_PLACE Dg field_14718 + f Lnet/minecraft/sounds/SoundEvent; WOOD_STEP Dh field_15053 + f Lnet/minecraft/sounds/SoundEvent; WOOL_BREAK Di field_14983 + f Lnet/minecraft/sounds/SoundEvent; WOOL_FALL Dj field_15048 + f Lnet/minecraft/sounds/SoundEvent; WOOL_HIT Dk field_14628 + f Lnet/minecraft/sounds/SoundEvent; WOOL_PLACE Dl field_15226 + f Lnet/minecraft/sounds/SoundEvent; WOOL_STEP Dm field_15181 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_AMBIENT Dn field_23672 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_ANGRY Do field_23673 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_ATTACK Dp field_23674 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_DEATH Dq field_23675 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_HURT Dr field_23676 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_STEP Ds field_23677 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_AMBIENT Dt field_15174 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_ATTACK_WOODEN_DOOR Du field_14562 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_ATTACK_IRON_DOOR Dv field_14670 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_BREAK_WOODEN_DOOR Dw field_14742 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_CONVERTED_TO_DROWNED Dx field_14850 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_DEATH Dy field_14930 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_DESTROY_EGG Dz field_15023 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_CHIME E field_26980 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_FALL F field_26981 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_HIT G field_26982 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_PLACE H field_26940 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_RESONATE I field_43154 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_STEP J field_26941 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_BREAK K field_26942 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_FALL L field_26943 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_HIT M field_26944 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_PLACE N field_26945 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_STEP O field_26946 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_BREAK P field_21891 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_STEP Q field_21906 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_PLACE R field_21929 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_HIT S field_21930 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_FALL T field_21936 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_BREAK U field_14542 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_DESTROY V field_14665 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_FALL W field_14727 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_HIT X field_14927 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_LAND Y field_14833 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_PLACE Z field_14785 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_BREAK aA field_15118 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_FALL aB field_15186 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_HIT aC field_14897 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_PLACE aD field_14969 + f Lnet/minecraft/sounds/SoundEvent; ARROW_HIT aE field_15151 + f Lnet/minecraft/sounds/SoundEvent; ARROW_HIT_PLAYER aF field_15224 + f Lnet/minecraft/sounds/SoundEvent; ARROW_SHOOT aG field_14600 + f Lnet/minecraft/sounds/SoundEvent; AXE_STRIP aH field_14675 + f Lnet/minecraft/sounds/SoundEvent; AXE_SCRAPE aI field_29541 + f Lnet/minecraft/sounds/SoundEvent; AXE_WAX_OFF aJ field_29542 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_ATTACK aK field_28287 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_DEATH aL field_28288 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_AMBIENT_WITH_ITEM a field_38365 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_HURT aM field_28289 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_IDLE_AIR aN field_28290 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_IDLE_WATER aO field_28291 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_SPLASH aP field_28292 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_SWIM aQ field_28293 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_BREAK aR field_28560 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_FALL aS field_28561 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_HIT aT field_28562 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_PLACE aU field_28563 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_STEP aV field_28564 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_BREAK aW field_28565 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_FALL aX field_28566 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_HIT aY field_28567 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_PLACE aZ field_28558 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_STEP aa field_14695 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_USE ab field_14559 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_EAT ac field_47711 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_HURT ad field_47712 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_HURT_REDUCED ae field_48712 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_AMBIENT af field_47713 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_STEP ag field_47714 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_DEATH ah field_47715 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_ROLL ai field_47716 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_LAND aj field_47717 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_SCUTE_DROP ak field_47718 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_UNROLL_FINISH al field_49046 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_PEEK am field_49047 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_UNROLL_START an field_49048 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_BRUSH ao field_47720 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_CHAIN ap field_15191 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_DIAMOND aq field_15103 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_ELYTRA ar field_14966 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_GENERIC as field_14883 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_GOLD at field_14761 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_IRON au field_14862 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_LEATHER av field_14581 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_NETHERITE aw field_21866 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_TURTLE ax field_14684 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_WOLF ay field_47721 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_UNEQUIP_WOLF az field_47722 + f Lnet/minecraft/sounds/SoundEvent; BASALT_BREAK bA field_21867 + f Lnet/minecraft/sounds/SoundEvent; BASALT_STEP bB field_21868 + f Lnet/minecraft/sounds/SoundEvent; BASALT_PLACE bC field_21869 + f Lnet/minecraft/sounds/SoundEvent; BASALT_HIT bD field_21870 + f Lnet/minecraft/sounds/SoundEvent; BASALT_FALL bE field_21871 + f Lnet/minecraft/sounds/SoundEvent; BAT_AMBIENT bF field_15009 + f Lnet/minecraft/sounds/SoundEvent; BAT_DEATH bG field_14911 + f Lnet/minecraft/sounds/SoundEvent; BAT_HURT bH field_14746 + f Lnet/minecraft/sounds/SoundEvent; BAT_LOOP bI field_14845 + f Lnet/minecraft/sounds/SoundEvent; BAT_TAKEOFF bJ field_14610 + f Lnet/minecraft/sounds/SoundEvent; BEACON_ACTIVATE bK field_14703 + f Lnet/minecraft/sounds/SoundEvent; BEACON_AMBIENT bL field_15045 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_AMBIENT_WITHOUT_ITEM b field_38366 + f Lnet/minecraft/sounds/SoundEvent; BEACON_DEACTIVATE bM field_19344 + f Lnet/minecraft/sounds/SoundEvent; BEACON_POWER_SELECT bN field_14891 + f Lnet/minecraft/sounds/SoundEvent; BEE_DEATH bO field_20602 + f Lnet/minecraft/sounds/SoundEvent; BEE_HURT bP field_20603 + f Lnet/minecraft/sounds/SoundEvent; BEE_LOOP_AGGRESSIVE bQ field_20604 + f Lnet/minecraft/sounds/SoundEvent; BEE_LOOP bR field_20605 + f Lnet/minecraft/sounds/SoundEvent; BEE_STING bS field_20606 + f Lnet/minecraft/sounds/SoundEvent; BEE_POLLINATE bT field_20607 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_DRIP bU field_20608 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_ENTER bV field_20609 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_EXIT bW field_20610 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_SHEAR bX field_20611 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_WORK bY field_20612 + f Lnet/minecraft/sounds/SoundEvent; BELL_BLOCK bZ field_17265 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_STEP ba field_28559 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_BREAK bb field_14740 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_FALL bc field_14906 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_HIT bd field_14811 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_PLACE be field_14719 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_STEP bf field_14635 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_BREAK bg field_14629 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_HIT bh field_15227 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_PLACE bi field_15125 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BREAK bj field_40057 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FALL bk field_40058 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HIT bl field_40059 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PLACE bm field_40060 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_STEP bn field_40061 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_DOOR_CLOSE bo field_40062 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_DOOR_OPEN bp field_40063 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_TRAPDOOR_CLOSE bq field_40064 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_TRAPDOOR_OPEN br field_40065 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BUTTON_CLICK_OFF bs field_40066 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BUTTON_CLICK_ON bt field_40067 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF bu field_40068 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON bv field_40069 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FENCE_GATE_CLOSE bw field_40070 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FENCE_GATE_OPEN bx field_40071 + f Lnet/minecraft/sounds/SoundEvent; BARREL_CLOSE by field_17603 + f Lnet/minecraft/sounds/SoundEvent; BARREL_OPEN bz field_17604 + f Lnet/minecraft/sounds/SoundEvent; BLASTFURNACE_FIRE_CRACKLE cA field_17605 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_EMPTY cB field_14826 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_FILL cC field_14779 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_FILL_DRAGONBREATH cD field_15029 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_CHARGE cE field_47724 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_DEFLECT cF field_47725 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_INHALE cG field_47192 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_IDLE_GROUND cH field_47193 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_IDLE_AIR cI field_47194 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_SHOOT cJ field_47195 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_JUMP cK field_47196 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_LAND cL field_47197 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_DEATH c field_38367 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_SLIDE cM field_47198 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_DEATH cN field_47199 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_HURT cO field_47200 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_WHIRL cP field_47723 + f Lnet/minecraft/core/Holder$Reference; BREEZE_WIND_CHARGE_BURST cQ field_49049 + f Lnet/minecraft/sounds/SoundEvent; BREWING_STAND_BREW cR field_14978 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GENERIC cS field_43155 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_SAND cT field_43156 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GRAVEL cU field_43157 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_SAND_COMPLETED cV field_43158 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GRAVEL_COMPLETED cW field_43159 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_BUBBLE_POP cX field_15065 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_UPWARDS_AMBIENT cY field_15161 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_UPWARDS_INSIDE cZ field_19195 + f Lnet/minecraft/sounds/SoundEvent; BELL_RESONATE ca field_19167 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_BREAK cb field_28568 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_FALL cc field_28569 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_HIT cd field_28570 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_PLACE ce field_28571 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_STEP cf field_28572 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_AMBIENT cg field_14991 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_BURN ch field_14734 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_DEATH ci field_14580 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_HURT cj field_14842 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_SHOOT ck field_14970 + f Lnet/minecraft/sounds/SoundEvent; BOAT_PADDLE_LAND cl field_14886 + f Lnet/minecraft/sounds/SoundEvent; BOAT_PADDLE_WATER cm field_15171 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_AMBIENT cn field_49142 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_DEATH co field_49143 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_HURT cp field_49144 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_SHEAR cq field_49178 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_STEP cr field_49145 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_BREAK cs field_21872 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_FALL ct field_21873 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_HIT cu field_21874 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_PLACE cv field_21875 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_STEP cw field_21876 + f Lnet/minecraft/sounds/SoundEvent; BONE_MEAL_USE cx field_33433 + f Lnet/minecraft/sounds/SoundEvent; BOOK_PAGE_TURN cy field_17481 + f Lnet/minecraft/sounds/SoundEvent; BOOK_PUT cz field_17482 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DEATH dA field_40075 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_EAT dB field_40076 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_HURT dC field_40077 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_SADDLE dD field_40078 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_SIT dE field_40079 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STAND dF field_40080 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STEP dG field_40081 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STEP_SAND dH field_40082 + f Lnet/minecraft/sounds/SoundEvent; CAMPFIRE_CRACKLE dI field_17483 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_AMBIENT dJ field_26953 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_BREAK dK field_26954 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_EXTINGUISH dL field_26955 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_HURT d field_38369 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_FALL dM field_26956 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_HIT dN field_26957 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_PLACE dO field_26958 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_STEP dP field_26959 + f Lnet/minecraft/sounds/SoundEvent; CAT_AMBIENT dQ field_15051 + f Lnet/minecraft/sounds/SoundEvent; CAT_STRAY_AMBIENT dR field_16440 + f Lnet/minecraft/sounds/SoundEvent; CAT_DEATH dS field_14971 + f Lnet/minecraft/sounds/SoundEvent; CAT_EAT dT field_16439 + f Lnet/minecraft/sounds/SoundEvent; CAT_HISS dU field_14938 + f Lnet/minecraft/sounds/SoundEvent; CAT_BEG_FOR_FOOD dV field_16438 + f Lnet/minecraft/sounds/SoundEvent; CAT_HURT dW field_14867 + f Lnet/minecraft/sounds/SoundEvent; CAT_PURR dX field_14741 + f Lnet/minecraft/sounds/SoundEvent; CAT_PURREOW dY field_14589 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_BREAK dZ field_28576 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_WHIRLPOOL_AMBIENT da field_14650 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_WHIRLPOOL_INSIDE db field_19196 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY dc field_14834 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_AXOLOTL dd field_28294 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_FISH de field_14912 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_LAVA df field_15010 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_POWDER_SNOW dg field_27847 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_TADPOLE dh field_37300 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL di field_15126 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_AXOLOTL dj field_28295 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_FISH dk field_14568 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_LAVA dl field_15202 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_POWDER_SNOW dm field_27846 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_TADPOLE dn field_37301 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_DROP_CONTENTS do field_34375 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_INSERT dp field_34376 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_REMOVE_ONE dq field_34377 + f Lnet/minecraft/sounds/SoundEvent; CAKE_ADD_CANDLE dr field_26947 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_BREAK ds field_26948 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_STEP dt field_26949 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_PLACE du field_26950 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_HIT dv field_26951 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_FALL dw field_26952 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_AMBIENT dx field_40072 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DASH dy field_40073 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DASH_READY dz field_40074 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_BREAK eA field_42562 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_FALL eB field_42563 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_HIT eC field_42564 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_PLACE eD field_42565 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_DOOR_CLOSE eE field_42566 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_DOOR_OPEN eF field_42567 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_TRAPDOOR_CLOSE eG field_42568 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_TRAPDOOR_OPEN eH field_42569 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BUTTON_CLICK_OFF eI field_42570 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BUTTON_CLICK_ON eJ field_42571 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PRESSURE_PLATE_CLICK_OFF eK field_42572 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PRESSURE_PLATE_CLICK_ON eL field_42574 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_ITEM_GIVEN e field_38370 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FENCE_GATE_CLOSE eM field_42575 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FENCE_GATE_OPEN eN field_42576 + f Lnet/minecraft/sounds/SoundEvent; CHEST_CLOSE eO field_14823 + f Lnet/minecraft/sounds/SoundEvent; CHEST_LOCKED eP field_14731 + f Lnet/minecraft/sounds/SoundEvent; CHEST_OPEN eQ field_14982 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_AMBIENT eR field_14871 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_DEATH eS field_15140 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_EGG eT field_15219 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_HURT eU field_14601 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_STEP eV field_14685 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_BREAK eW field_40967 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_FALL eX field_40968 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_HIT eY field_40969 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_INSERT eZ field_40970 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_FALL ea field_28577 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_HIT eb field_28578 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_PLACE ec field_28573 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_STEP ed field_28574 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_PICK_BERRIES ee field_28575 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_BREAK ef field_24065 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_FALL eg field_24061 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_HIT eh field_24062 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_PLACE ei field_24063 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_STEP ej field_24064 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BREAK ek field_42573 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FALL el field_42547 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HIT em field_42548 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PLACE en field_42549 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_STEP eo field_42550 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_BREAK ep field_42551 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_FALL eq field_42552 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_HIT er field_42553 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_PLACE es field_42554 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_STEP et field_42555 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_BREAK eu field_42556 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_FALL ev field_42557 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_HIT ew field_42558 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_PLACE ex field_42559 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_STEP ey field_42560 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_STEP ez field_42561 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_DEACTIVATE fA field_14979 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_BREAK fB field_46929 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_STEP fC field_46930 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_PLACE fD field_46931 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_HIT fE field_46932 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_FALL fF field_46933 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_TURN_ON fG field_46934 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_TURN_OFF fH field_46935 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BREAK fI field_26960 + f Lnet/minecraft/sounds/SoundEvent; COPPER_STEP fJ field_26961 + f Lnet/minecraft/sounds/SoundEvent; COPPER_PLACE fK field_26962 + f Lnet/minecraft/sounds/SoundEvent; COPPER_HIT fL field_26963 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_ITEM_TAKEN f field_38371 + f Lnet/minecraft/sounds/SoundEvent; COPPER_FALL fM field_26964 + f Lnet/minecraft/sounds/SoundEvent; COPPER_DOOR_CLOSE fN field_46936 + f Lnet/minecraft/sounds/SoundEvent; COPPER_DOOR_OPEN fO field_46937 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_BREAK fP field_46938 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_STEP fQ field_46939 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_PLACE fR field_46940 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_HIT fS field_46941 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_FALL fT field_46942 + f Lnet/minecraft/sounds/SoundEvent; COPPER_TRAPDOOR_CLOSE fU field_46943 + f Lnet/minecraft/sounds/SoundEvent; COPPER_TRAPDOOR_OPEN fV field_46944 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_BREAK fW field_14804 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_FALL fX field_14551 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_HIT fY field_14672 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_PLACE fZ field_15087 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_INSERT_ENCHANTED fa field_40971 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_STEP fb field_40972 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PICKUP fc field_40973 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PICKUP_ENCHANTED fd field_40974 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PLACE fe field_40975 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FLOWER_DEATH ff field_14739 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FLOWER_GROW fg field_14817 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FRUIT_TELEPORT fh field_14890 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_BREAK fi field_50093 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_STEP fj field_50094 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_PLACE fk field_50095 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_HIT fl field_50096 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_FALL fm field_50097 + f Lnet/minecraft/sounds/SoundEvent; COD_AMBIENT fn field_15083 + f Lnet/minecraft/sounds/SoundEvent; COD_DEATH fo field_15003 + f Lnet/minecraft/sounds/SoundEvent; COD_FLOP fp field_14918 + f Lnet/minecraft/sounds/SoundEvent; COD_HURT fq field_14851 + f Lnet/minecraft/sounds/SoundEvent; COMPARATOR_CLICK fr field_14762 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_EMPTY fs field_17606 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_FILL ft field_17607 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_FILL_SUCCESS fu field_17608 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_READY fv field_17609 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_ACTIVATE fw field_14700 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_AMBIENT fx field_14632 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_AMBIENT_SHORT fy field_15071 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_ATTACK_TARGET fz field_15177 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_STEP gA field_42580 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_PLACE gB field_42581 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_SHATTER gC field_42582 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_BREAK gD field_28968 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_FALL gE field_28969 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_HIT gF field_28970 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_PLACE gG field_28971 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_STEP gH field_28972 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BREAK gI field_28973 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_FALL gJ field_28974 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_HIT gK field_28975 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_PLACE gL field_28976 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_THROW g field_38923 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_STEP gM field_28977 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_BREAK gN field_28978 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_FALL gO field_28979 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_HIT gP field_28980 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_PLACE gQ field_28981 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_STEP gR field_28982 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_DISPENSE gS field_14611 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_FAIL gT field_14701 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_LAUNCH gU field_14711 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_AMBIENT gV field_14799 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_AMBIENT_WATER gW field_14881 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_ATTACK gX field_14992 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_DEATH gY field_15101 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_EAT gZ field_14590 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_STEP ga field_14935 + f Lnet/minecraft/sounds/SoundEvent; COW_AMBIENT gb field_14780 + f Lnet/minecraft/sounds/SoundEvent; COW_DEATH gc field_14857 + f Lnet/minecraft/sounds/SoundEvent; COW_HURT gd field_14597 + f Lnet/minecraft/sounds/SoundEvent; COW_MILK ge field_14691 + f Lnet/minecraft/sounds/SoundEvent; COW_STEP gf field_15110 + f Lnet/minecraft/sounds/SoundEvent; CRAFTER_CRAFT gg field_46765 + f Lnet/minecraft/sounds/SoundEvent; CRAFTER_FAIL gh field_46766 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_DEATH gi field_14907 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_HURT gj field_15192 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_PRIMED gk field_15057 + f Lnet/minecraft/sounds/SoundEvent; CROP_BREAK gl field_17610 + f Lnet/minecraft/sounds/SoundEvent; CROP_PLANTED gm field_17611 + f Lnet/minecraft/sounds/SoundEvent; CROSSBOW_HIT gn field_14636 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_END go field_14626 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_MIDDLE gp field_14860 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_START gq field_14765 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_1 gr field_15011 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_2 gs field_14916 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_3 gt field_15089 + f Lnet/minecraft/sounds/SoundEvent; CROSSBOW_SHOOT gu field_15187 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_BREAK gv field_42577 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_FALL gw field_42578 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_HIT gx field_42579 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_INSERT gy field_46649 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_INSERT_FAIL gz field_46650 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_WATER_INTO_CAULDRON hA field_28037 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_TILT_DOWN hB field_28579 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_TILT_UP hC field_28580 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_AMBIENT hD field_15030 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_AMBIENT_WATER hE field_14980 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_DEATH hF field_15066 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_DEATH_WATER hG field_15162 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_HURT hH field_14571 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_HURT_WATER hI field_14651 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_SHOOT hJ field_14753 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_STEP hK field_14835 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_SWIM hL field_14913 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CAVE h field_14564 + f Lnet/minecraft/sounds/SoundEvent; DYE_USE hM field_28391 + f Lnet/minecraft/sounds/SoundEvent; EGG_THROW hN field_15012 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_AMBIENT hO field_15127 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_AMBIENT_LAND hP field_14569 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_CURSE hQ field_15203 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_DEATH hR field_15052 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_DEATH_LAND hS field_14973 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_FLOP hT field_14939 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_HURT hU field_14868 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_HURT_LAND hV field_14652 + f Lnet/minecraft/sounds/SoundEvent; ELYTRA_FLYING hW field_14572 + f Lnet/minecraft/sounds/SoundEvent; ENCHANTMENT_TABLE_USE hX field_15119 + f Lnet/minecraft/sounds/SoundEvent; ENDER_CHEST_CLOSE hY field_15206 + f Lnet/minecraft/sounds/SoundEvent; ENDER_CHEST_OPEN hZ field_14952 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_HURT ha field_15216 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_JUMP hb field_14707 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_PLAY hc field_14972 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_SPLASH hd field_14887 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_SWIM he field_15172 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_AMBIENT hf field_15094 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_ANGRY hg field_14661 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_CHEST hh field_14598 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_DEATH hi field_14827 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_EAT hj field_24629 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_HURT hk field_14781 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_JUMP hl field_49179 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_BREAK hm field_28038 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_STEP hn field_28039 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_PLACE ho field_28025 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_HIT hp field_28026 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_FALL hq field_28027 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_BREAK hr field_28028 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_STEP hs field_28029 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_PLACE ht field_28030 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_HIT hu field_28031 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_FALL hv field_28032 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_LAND hw field_28033 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_LAVA hx field_28034 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_WATER hy field_28035 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_LAVA_INTO_CAULDRON hz field_28036 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_DEATH iA field_14599 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_FANGS_ATTACK iB field_14692 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_HURT iC field_15111 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_ATTACK iD field_14908 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_SUMMON iE field_15193 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_WOLOLO iF field_15058 + f Lnet/minecraft/sounds/SoundEvent; EXPERIENCE_BOTTLE_THROW iG field_14637 + f Lnet/minecraft/sounds/SoundEvent; EXPERIENCE_ORB_PICKUP iH field_14627 + f Lnet/minecraft/sounds/SoundEvent; FENCE_GATE_CLOSE iI field_14861 + f Lnet/minecraft/sounds/SoundEvent; FENCE_GATE_OPEN iJ field_14766 + f Lnet/minecraft/sounds/SoundEvent; FIRECHARGE_USE iK field_15013 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_BLAST iL field_14917 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_ADDITIONS i field_23790 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_BLAST_FAR iM field_15090 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LARGE_BLAST iN field_15188 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LARGE_BLAST_FAR iO field_14612 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LAUNCH iP field_14702 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_SHOOT iQ field_14712 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_TWINKLE iR field_14800 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_TWINKLE_FAR iS field_14882 + f Lnet/minecraft/sounds/SoundEvent; FIRE_AMBIENT iT field_14993 + f Lnet/minecraft/sounds/SoundEvent; FIRE_EXTINGUISH iU field_15102 + f Lnet/minecraft/sounds/SoundEvent; FISH_SWIM iV field_14591 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_RETRIEVE iW field_15093 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_SPLASH iX field_14660 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_THROW iY field_14596 + f Lnet/minecraft/sounds/SoundEvent; FLINTANDSTEEL_USE iZ field_15145 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_AMBIENT ia field_15024 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_DEATH ib field_14773 + f Lnet/minecraft/sounds/SoundEvent; DRAGON_FIREBALL_EXPLODE ic field_14803 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_FLAP id field_14550 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_GROWL ie field_14671 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_HURT if field_15086 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_SHOOT ig field_14934 + f Lnet/minecraft/sounds/SoundEvent; ENDER_EYE_DEATH ih field_15210 + f Lnet/minecraft/sounds/SoundEvent; ENDER_EYE_LAUNCH ii field_15155 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_AMBIENT ij field_14696 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_DEATH ik field_14608 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_HURT il field_14797 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_SCREAM im field_14713 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_STARE in field_14967 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_TELEPORT io field_14879 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_AMBIENT ip field_15137 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_DEATH iq field_15230 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_HURT ir field_14582 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_STEP is field_14678 + f Lnet/minecraft/sounds/SoundEvent; ENDER_PEARL_THROW it field_14757 + f Lnet/minecraft/sounds/SoundEvent; END_GATEWAY_SPAWN iu field_14816 + f Lnet/minecraft/sounds/SoundEvent; END_PORTAL_FRAME_FILL iv field_19197 + f Lnet/minecraft/sounds/SoundEvent; END_PORTAL_SPAWN iw field_14981 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_AMBIENT ix field_14782 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_CAST_SPELL iy field_14858 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_CELEBRATE iz field_19147 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_BREAK jA field_37302 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_FALL jB field_37303 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_HIT jC field_37304 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_PLACE jD field_37305 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_STEP jE field_37306 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWNSTEP jF field_37307 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_BREAK jG field_37308 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_FALL jH field_37309 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_HATCH jI field_37310 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_HIT jJ field_37311 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_PLACE jK field_37312 + f Lnet/minecraft/sounds/SoundEvent; FROG_AMBIENT jL field_37313 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_LOOP j field_23791 + f Lnet/minecraft/sounds/SoundEvent; FROG_DEATH jM field_37314 + f Lnet/minecraft/sounds/SoundEvent; FROG_EAT jN field_37315 + f Lnet/minecraft/sounds/SoundEvent; FROG_HURT jO field_37316 + f Lnet/minecraft/sounds/SoundEvent; FROG_LAY_SPAWN jP field_37317 + f Lnet/minecraft/sounds/SoundEvent; FROG_LONG_JUMP jQ field_37318 + f Lnet/minecraft/sounds/SoundEvent; FROG_STEP jR field_37319 + f Lnet/minecraft/sounds/SoundEvent; FROG_TONGUE jS field_37320 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_BREAK jT field_21877 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_STEP jU field_21878 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_PLACE jV field_21879 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_HIT jW field_21880 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_FALL jX field_21881 + f Lnet/minecraft/sounds/SoundEvent; FURNACE_FIRE_CRACKLE jY field_15006 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_BIG_FALL jZ field_14928 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_BREAK ja field_28581 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_FALL jb field_28582 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_HIT jc field_28583 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_PLACE jd field_28584 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_STEP je field_28585 + f Lnet/minecraft/sounds/SoundEvent; FOX_AGGRO jf field_18055 + f Lnet/minecraft/sounds/SoundEvent; FOX_AMBIENT jg field_18056 + f Lnet/minecraft/sounds/SoundEvent; FOX_BITE jh field_18058 + f Lnet/minecraft/sounds/SoundEvent; FOX_DEATH ji field_18059 + f Lnet/minecraft/sounds/SoundEvent; FOX_EAT jj field_18060 + f Lnet/minecraft/sounds/SoundEvent; FOX_HURT jk field_18061 + f Lnet/minecraft/sounds/SoundEvent; FOX_SCREECH jl field_18265 + f Lnet/minecraft/sounds/SoundEvent; FOX_SLEEP jm field_18062 + f Lnet/minecraft/sounds/SoundEvent; FOX_SNIFF jn field_18063 + f Lnet/minecraft/sounds/SoundEvent; FOX_SPIT jo field_18054 + f Lnet/minecraft/sounds/SoundEvent; FOX_TELEPORT jp field_24630 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_BREAK jq field_42583 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_STEP jr field_42584 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_PLACE js field_42585 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_HIT jt field_42586 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_FALL ju field_42587 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_BREAK jv field_43160 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_STEP jw field_43161 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_PLACE jx field_43162 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_HIT jy field_43163 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_FALL jz field_43164 + f Lnet/minecraft/sounds/SoundEvent; GLOW_INK_SAC_USE kA field_28392 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_ADD_ITEM kB field_29188 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_BREAK kC field_29189 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_PLACE kD field_29190 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_REMOVE_ITEM kE field_29191 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_ROTATE_ITEM kF field_29192 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_AMBIENT kG field_28393 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_DEATH kH field_28394 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_HURT kI field_28395 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_SQUIRT kJ field_28396 + f Lnet/minecraft/sounds/SoundEvent; GOAT_AMBIENT kK field_29809 + f Lnet/minecraft/sounds/SoundEvent; GOAT_DEATH kL field_29810 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_MOOD k field_23792 + f Lnet/minecraft/sounds/SoundEvent; GOAT_EAT kM field_33437 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HURT kN field_29811 + f Lnet/minecraft/sounds/SoundEvent; GOAT_LONG_JUMP kO field_33438 + f Lnet/minecraft/sounds/SoundEvent; GOAT_MILK kP field_29812 + f Lnet/minecraft/sounds/SoundEvent; GOAT_PREPARE_RAM kQ field_29813 + f Lnet/minecraft/sounds/SoundEvent; GOAT_RAM_IMPACT kR field_33439 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HORN_BREAK kS field_39024 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HORN_PLAY kT field_39025 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_AMBIENT kU field_29814 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_DEATH kV field_29815 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_EAT kW field_33440 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_HURT kX field_29816 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_LONG_JUMP kY field_33434 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_MILK kZ field_29817 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_BURN ka field_14821 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_DEATH kb field_14732 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_DRINK kc field_20613 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_EAT kd field_20614 + f Lnet/minecraft/core/Holder$Reference; GENERIC_EXPLODE ke field_15152 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_EXTINGUISH_FIRE kf field_15222 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_HURT kg field_14940 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SMALL_FALL kh field_15018 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SPLASH ki field_14737 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SWIM kj field_14818 + f Lnet/minecraft/sounds/SoundEvent; GHAST_AMBIENT kk field_14566 + f Lnet/minecraft/sounds/SoundEvent; GHAST_DEATH kl field_14648 + f Lnet/minecraft/sounds/SoundEvent; GHAST_HURT km field_15054 + f Lnet/minecraft/sounds/SoundEvent; GHAST_SCREAM kn field_14958 + f Lnet/minecraft/sounds/SoundEvent; GHAST_SHOOT ko field_15231 + f Lnet/minecraft/sounds/SoundEvent; GHAST_WARN kp field_15130 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_BREAK kq field_24066 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_FALL kr field_24067 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_HIT ks field_24068 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_PLACE kt field_24069 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_STEP ku field_24070 + f Lnet/minecraft/sounds/SoundEvent; GLASS_BREAK kv field_15081 + f Lnet/minecraft/sounds/SoundEvent; GLASS_FALL kw field_14666 + f Lnet/minecraft/sounds/SoundEvent; GLASS_HIT kx field_14583 + f Lnet/minecraft/sounds/SoundEvent; GLASS_PLACE ky field_14843 + f Lnet/minecraft/sounds/SoundEvent; GLASS_STEP kz field_14769 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_HIT lA field_28588 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_PLACE lB field_28589 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_STEP lC field_28590 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_STEP lD field_40083 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_BREAK lE field_40084 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_FALL lF field_40085 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_HIT lG field_40086 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_PLACE lH field_40087 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_BREAK lI field_49779 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_FALL lJ field_49780 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_HIT lK field_49781 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_PLACE lL field_49782 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_ADDITIONS l field_22451 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_STEP lM field_49783 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_STEP lN field_40976 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_BREAK lO field_40977 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_FALL lP field_40978 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_HIT lQ field_40979 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_PLACE lR field_40980 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_STEP lS field_40981 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_BREAK lT field_40982 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_FALL lU field_40983 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_HIT lV field_40984 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_PLACE lW field_40985 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_BREAK lX field_47201 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_STEP lY field_47202 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_PLACE lZ field_47203 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_PREPARE_RAM la field_33435 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_RAM_IMPACT lb field_33436 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_HORN_BREAK lc field_39026 + f Lnet/minecraft/sounds/SoundEvent; GOAT_STEP ld field_29819 + f Lnet/minecraft/sounds/SoundEvent; GRASS_BREAK le field_15037 + f Lnet/minecraft/sounds/SoundEvent; GRASS_FALL lf field_14965 + f Lnet/minecraft/sounds/SoundEvent; GRASS_HIT lg field_14720 + f Lnet/minecraft/sounds/SoundEvent; GRASS_PLACE lh field_14653 + f Lnet/minecraft/sounds/SoundEvent; GRASS_STEP li field_14573 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_BREAK lj field_15211 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_FALL lk field_15156 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_HIT ll field_14697 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_PLACE lm field_14609 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_STEP ln field_14798 + f Lnet/minecraft/sounds/SoundEvent; GRINDSTONE_USE lo field_16865 + f Lnet/minecraft/sounds/SoundEvent; GROWING_PLANT_CROP lp field_34896 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_AMBIENT lq field_14714 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_AMBIENT_LAND lr field_14968 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_ATTACK ls field_14880 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_DEATH lt field_15138 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_DEATH_LAND lu field_15232 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_FLOP lv field_14584 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_HURT lw field_14679 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_HURT_LAND lx field_14758 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_BREAK ly field_28586 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_FALL lz field_28587 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_SLIDE mA field_21074 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_STEP mB field_21075 + f Lnet/minecraft/sounds/SoundEvent; HONEYCOMB_WAX_ON mC field_29543 + f Lnet/minecraft/sounds/SoundEvent; HONEY_DRINK mD field_20615 + f I GOAT_HORN_VARIANT_COUNT mE field_39027 + f Lcom/google/common/collect/ImmutableList; GOAT_HORN_SOUND_VARIANTS mF field_39028 + f Lnet/minecraft/sounds/SoundEvent; HORSE_AMBIENT mG field_14947 + f Lnet/minecraft/sounds/SoundEvent; HORSE_ANGRY mH field_15043 + f Lnet/minecraft/sounds/SoundEvent; HORSE_ARMOR mI field_15141 + f Lnet/minecraft/sounds/SoundEvent; HORSE_BREATHE mJ field_14556 + f Lnet/minecraft/sounds/SoundEvent; HORSE_DEATH mK field_15166 + f Lnet/minecraft/sounds/SoundEvent; HORSE_EAT mL field_15099 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_LOOP m field_22452 + f Lnet/minecraft/sounds/SoundEvent; HORSE_GALLOP mM field_14987 + f Lnet/minecraft/sounds/SoundEvent; HORSE_HURT mN field_14923 + f Lnet/minecraft/sounds/SoundEvent; HORSE_JUMP mO field_14831 + f Lnet/minecraft/sounds/SoundEvent; HORSE_LAND mP field_14783 + f Lnet/minecraft/sounds/SoundEvent; HORSE_SADDLE mQ field_14704 + f Lnet/minecraft/sounds/SoundEvent; HORSE_STEP mR field_14613 + f Lnet/minecraft/sounds/SoundEvent; HORSE_STEP_WOOD mS field_15061 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_BIG_FALL mT field_15157 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_DEATH mU field_14899 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_HURT mV field_14994 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SMALL_FALL mW field_14754 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SPLASH mX field_14836 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SWIM mY field_14630 + f Lnet/minecraft/sounds/SoundEvent; HUSK_AMBIENT mZ field_14680 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_HIT ma field_47204 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_FALL mb field_47205 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_MOB mc field_47206 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_ABOUT_TO_SPAWN_ITEM md field_50098 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_ITEM me field_50099 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_ITEM_BEGIN mf field_50100 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_DETECT_PLAYER mg field_47207 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_OMINOUS_ACTIVATE mh field_50101 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_AMBIENT mi field_47208 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_AMBIENT_OMINOUS mj field_50102 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_OPEN_SHUTTER mk field_47209 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_CLOSE_SHUTTER ml field_47210 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_EJECT_ITEM mm field_47211 + f Lnet/minecraft/sounds/SoundEvent; HOE_TILL mn field_14846 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_AMBIENT mo field_22256 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_ANGRY mp field_22257 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_ATTACK mq field_22258 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_CONVERTED_TO_ZOMBIFIED mr field_23671 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_DEATH ms field_22259 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_HURT mt field_22260 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_RETREAT mu field_22261 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_STEP mv field_22262 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_BREAK mw field_21070 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_FALL mx field_21071 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_HIT my field_21072 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_PLACE mz field_21073 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_ROTATE_ITEM nA field_15038 + f Lnet/minecraft/sounds/SoundEvent; ITEM_BREAK nB field_15075 + f Lnet/minecraft/sounds/SoundEvent; ITEM_PICKUP nC field_15197 + f Lnet/minecraft/sounds/SoundEvent; LADDER_BREAK nD field_14546 + f Lnet/minecraft/sounds/SoundEvent; LADDER_FALL nE field_14646 + f Lnet/minecraft/sounds/SoundEvent; LADDER_HIT nF field_14775 + f Lnet/minecraft/sounds/SoundEvent; LADDER_PLACE nG field_14853 + f Lnet/minecraft/sounds/SoundEvent; LADDER_STEP nH field_14948 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_BREAK nI field_17745 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_FALL nJ field_17746 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_HIT nK field_17742 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_PLACE nL field_17743 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_MOOD n field_22453 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_STEP nM field_17744 + f Lnet/minecraft/sounds/SoundEvent; LARGE_AMETHYST_BUD_BREAK nN field_26966 + f Lnet/minecraft/sounds/SoundEvent; LARGE_AMETHYST_BUD_PLACE nO field_26965 + f Lnet/minecraft/sounds/SoundEvent; LAVA_AMBIENT nP field_15021 + f Lnet/minecraft/sounds/SoundEvent; LAVA_EXTINGUISH nQ field_19198 + f Lnet/minecraft/sounds/SoundEvent; LAVA_POP nR field_14576 + f Lnet/minecraft/sounds/SoundEvent; LEASH_KNOT_BREAK nS field_15184 + f Lnet/minecraft/sounds/SoundEvent; LEASH_KNOT_PLACE nT field_15062 + f Lnet/minecraft/sounds/SoundEvent; LEVER_CLICK nU field_14962 + f Lnet/minecraft/sounds/SoundEvent; LIGHTNING_BOLT_IMPACT nV field_14956 + f Lnet/minecraft/sounds/SoundEvent; LIGHTNING_BOLT_THUNDER nW field_14865 + f Lnet/minecraft/sounds/SoundEvent; LINGERING_POTION_THROW nX field_14767 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_AMBIENT nY field_14682 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_ANGRY nZ field_14586 + f Lnet/minecraft/sounds/SoundEvent; HUSK_CONVERTED_TO_ZOMBIE na field_15128 + f Lnet/minecraft/sounds/SoundEvent; HUSK_DEATH nb field_14892 + f Lnet/minecraft/sounds/SoundEvent; HUSK_HURT nc field_15196 + f Lnet/minecraft/sounds/SoundEvent; HUSK_STEP nd field_15046 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_AMBIENT ne field_14644 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_CAST_SPELL nf field_14545 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_DEATH ng field_15153 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_HURT nh field_15223 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_MIRROR_MOVE ni field_14941 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_PREPARE_BLINDNESS nj field_15019 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_PREPARE_MIRROR nk field_14738 + f Lnet/minecraft/sounds/SoundEvent; INK_SAC_USE nl field_28397 + f Lnet/minecraft/sounds/SoundEvent; IRON_DOOR_CLOSE nm field_14819 + f Lnet/minecraft/sounds/SoundEvent; IRON_DOOR_OPEN nn field_14567 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_ATTACK no field_14649 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_DAMAGE np field_21076 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_DEATH nq field_15055 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_HURT nr field_14959 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_REPAIR ns field_21077 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_STEP nt field_15233 + f Lnet/minecraft/sounds/SoundEvent; IRON_TRAPDOOR_CLOSE nu field_15131 + f Lnet/minecraft/sounds/SoundEvent; IRON_TRAPDOOR_OPEN nv field_15082 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_ADD_ITEM nw field_14667 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_BREAK nx field_14585 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_PLACE ny field_14844 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_REMOVE_ITEM nz field_14770 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_PLACE oA field_37324 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_STEP oB field_37325 + f Lnet/minecraft/sounds/SoundEvent; MEDIUM_AMETHYST_BUD_BREAK oC field_26967 + f Lnet/minecraft/sounds/SoundEvent; MEDIUM_AMETHYST_BUD_PLACE oD field_26968 + f Lnet/minecraft/sounds/SoundEvent; METAL_BREAK oE field_15044 + f Lnet/minecraft/sounds/SoundEvent; METAL_FALL oF field_15142 + f Lnet/minecraft/sounds/SoundEvent; METAL_HIT oG field_14557 + f Lnet/minecraft/sounds/SoundEvent; METAL_PLACE oH field_15167 + f Lnet/minecraft/sounds/SoundEvent; METAL_PRESSURE_PLATE_CLICK_OFF oI field_15100 + f Lnet/minecraft/sounds/SoundEvent; METAL_PRESSURE_PLATE_CLICK_ON oJ field_14988 + f Lnet/minecraft/sounds/SoundEvent; METAL_STEP oK field_14924 + f Lnet/minecraft/sounds/SoundEvent; MINECART_INSIDE_UNDERWATER oL field_26969 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_ADDITIONS o field_22454 + f Lnet/minecraft/sounds/SoundEvent; MINECART_INSIDE oM field_14832 + f Lnet/minecraft/sounds/SoundEvent; MINECART_RIDING oN field_14784 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_CONVERT oO field_18266 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_EAT oP field_18267 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_MILK oQ field_18268 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_MILK_SUSPICIOUSLY oR field_18269 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_SHEAR oS field_14705 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_BREAK oT field_28591 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_FALL oU field_28592 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_HIT oV field_28593 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_PLACE oW field_28594 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_STEP oX field_28595 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_BREAK oY field_42588 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_FALL oZ field_42589 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_CHEST oa field_15097 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_DEATH ob field_15189 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_EAT oc field_14884 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_HURT od field_15031 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_SPIT oe field_14789 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_STEP of field_14795 + f Lnet/minecraft/core/Holder; LLAMA_SWAG og field_14554 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_DEATH_SMALL oh field_14889 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_BREAK oi field_23194 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_STEP oj field_23195 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_PLACE ok field_23196 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_HIT ol field_23197 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_FALL om field_23198 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_COMPASS_LOCK on field_23199 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_AIR oo field_49784 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_GROUND op field_49785 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_GROUND_HEAVY oq field_49924 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_DEATH or field_14662 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_HURT os field_14747 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_HURT_SMALL ot field_15005 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_JUMP ou field_14847 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_SQUISH ov field_14949 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_SQUISH_SMALL ow field_14749 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_BREAK ox field_37321 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_FALL oy field_37322 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_HIT oz field_37323 + f Lnet/minecraft/sounds/SoundEvent; MULE_DEATH pA field_15158 + f Lnet/minecraft/sounds/SoundEvent; MULE_EAT pB field_24632 + f Lnet/minecraft/sounds/SoundEvent; MULE_HURT pC field_14900 + f Lnet/minecraft/sounds/SoundEvent; MULE_JUMP pD field_49180 + f Lnet/minecraft/core/Holder$Reference; MUSIC_CREATIVE pE field_14995 + f Lnet/minecraft/core/Holder$Reference; MUSIC_CREDITS pF field_14755 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_5 pG field_38924 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_11 pH field_14654 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_13 pI field_14592 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_BLOCKS pJ field_14829 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CAT pK field_14744 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CHIRP pL field_15039 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_LOOP p field_22455 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_FAR pM field_14944 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_MALL pN field_15059 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_MELLOHI pO field_15169 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_PIGSTEP pP field_23968 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_STAL pQ field_14578 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_STRAD pR field_14656 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_WAIT pS field_14759 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_WARD pT field_14838 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_OTHERSIDE pU field_35343 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_RELIC pV field_44700 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CREATOR pW field_51524 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CREATOR_MUSIC_BOX pX field_51525 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_PRECIPICE pY field_51526 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DRAGON pZ field_14837 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_HIT pa field_42590 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_PLACE pb field_42591 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_STEP pc field_42592 + f Lnet/minecraft/sounds/SoundEvent; MOSS_BREAK pd field_28596 + f Lnet/minecraft/sounds/SoundEvent; MOSS_FALL pe field_28597 + f Lnet/minecraft/sounds/SoundEvent; MOSS_HIT pf field_28598 + f Lnet/minecraft/sounds/SoundEvent; MOSS_PLACE pg field_28599 + f Lnet/minecraft/sounds/SoundEvent; MOSS_STEP ph field_28600 + f Lnet/minecraft/sounds/SoundEvent; MUD_BREAK pi field_37329 + f Lnet/minecraft/sounds/SoundEvent; MUD_FALL pj field_37330 + f Lnet/minecraft/sounds/SoundEvent; MUD_HIT pk field_37331 + f Lnet/minecraft/sounds/SoundEvent; MUD_PLACE pl field_37332 + f Lnet/minecraft/sounds/SoundEvent; MUD_STEP pm field_37333 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_BREAK pn field_37334 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_FALL po field_37335 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_HIT pp field_37336 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_PLACE pq field_37337 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_STEP pr field_37338 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_BREAK ps field_37339 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_FALL pt field_37340 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_HIT pu field_37326 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_PLACE pv field_37327 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_STEP pw field_37328 + f Lnet/minecraft/sounds/SoundEvent; MULE_AMBIENT px field_14614 + f Lnet/minecraft/sounds/SoundEvent; MULE_ANGRY py field_24631 + f Lnet/minecraft/sounds/SoundEvent; MULE_CHEST pz field_15063 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BAMBOO_JUNGLE qA field_44699 + f Lnet/minecraft/core/Holder$Reference; MUSIC_UNDER_WATER qB field_15198 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_BREAK qC field_21882 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_STEP qD field_21883 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_PLACE qE field_21884 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_HIT qF field_21885 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_FALL qG field_21886 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WART_BREAK qH field_17612 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WART_PLANTED qI field_17613 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BREAK qJ field_40097 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FALL qK field_40098 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HIT qL field_40099 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_MOOD q field_22456 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PLACE qM field_40100 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_STEP qN field_40101 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_DOOR_CLOSE qO field_40102 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_DOOR_OPEN qP field_40088 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_TRAPDOOR_CLOSE qQ field_40089 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_TRAPDOOR_OPEN qR field_40090 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BUTTON_CLICK_OFF qS field_40091 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BUTTON_CLICK_ON qT field_40092 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PRESSURE_PLATE_CLICK_OFF qU field_40093 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PRESSURE_PLATE_CLICK_ON qV field_40094 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FENCE_GATE_CLOSE qW field_40095 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FENCE_GATE_OPEN qX field_40096 + f Lnet/minecraft/sounds/SoundEvent; EMPTY qY field_42593 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_BREAK qZ field_37346 + f Lnet/minecraft/core/Holder$Reference; MUSIC_END qa field_14631 + f Lnet/minecraft/core/Holder$Reference; MUSIC_GAME qb field_14681 + f Lnet/minecraft/core/Holder$Reference; MUSIC_MENU qc field_15129 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BASALT_DELTAS qd field_23793 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_CRIMSON_FOREST qe field_23796 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DEEP_DARK qf field_37345 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DRIPSTONE_CAVES qg field_35344 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_GROVE qh field_35345 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_JAGGED_PEAKS qi field_35346 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_LUSH_CAVES qj field_35347 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SWAMP qk field_38925 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FOREST ql field_44693 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_OLD_GROWTH_TAIGA qm field_38927 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_MEADOW qn field_35348 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_CHERRY_GROVE qo field_42594 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_NETHER_WASTES qp field_23794 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FROZEN_PEAKS qq field_35349 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SNOWY_SLOPES qr field_35350 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SOUL_SAND_VALLEY qs field_23795 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_STONY_PEAKS qt field_35351 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_WARPED_FOREST qu field_23797 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FLOWER_FOREST qv field_44694 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DESERT qw field_44695 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BADLANDS qx field_44696 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_JUNGLE qy field_44697 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SPARSE_JUNGLE qz field_44698 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_PLACE rA field_21911 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_HIT rB field_21912 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_FALL rC field_21913 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_BREAK rD field_21914 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_STEP rE field_21915 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_PLACE rF field_21916 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_HIT rG field_21917 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_FALL rH field_21918 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_BREAK rI field_21919 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_STEP rJ field_21920 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_PLACE rK field_21921 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_HIT rL field_21922 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_ADDITIONS r field_22457 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_FALL rM field_21923 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_BREAK rN field_21924 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_STEP rO field_21925 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_PLACE rP field_21926 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_HIT rQ field_21927 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_FALL rR field_21928 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BASEDRUM rS field_15047 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BASS rT field_14624 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BELL rU field_14793 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_CHIME rV field_14725 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_FLUTE rW field_14989 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_GUITAR rX field_14903 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_HARP rY field_15114 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_HAT rZ field_15204 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_FALL ra field_37341 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_HIT rb field_37342 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_PLACE rc field_37343 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_STEP rd field_37344 + f Lnet/minecraft/sounds/SoundEvent; STEM_BREAK re field_21887 + f Lnet/minecraft/sounds/SoundEvent; STEM_STEP rf field_21888 + f Lnet/minecraft/sounds/SoundEvent; STEM_PLACE rg field_21889 + f Lnet/minecraft/sounds/SoundEvent; STEM_HIT rh field_21890 + f Lnet/minecraft/sounds/SoundEvent; STEM_FALL ri field_21892 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_BREAK rj field_21893 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_STEP rk field_21894 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_PLACE rl field_21895 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_HIT rm field_21896 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_FALL rn field_21897 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_BREAK ro field_21898 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_STEP rp field_21899 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_PLACE rq field_21900 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_HIT rr field_21901 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_FALL rs field_21902 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_BREAK rt field_21903 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_STEP ru field_21904 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_PLACE rv field_21905 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_HIT rw field_21907 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_FALL rx field_21908 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_BREAK ry field_21909 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_STEP rz field_21910 + f Lnet/minecraft/sounds/SoundEvent; PANDA_CANT_BREED sA field_14936 + f Lnet/minecraft/sounds/SoundEvent; PANDA_AGGRESSIVE_AMBIENT sB field_14801 + f Lnet/minecraft/sounds/SoundEvent; PANDA_WORRIED_AMBIENT sC field_14715 + f Lnet/minecraft/sounds/SoundEvent; PANDA_HURT sD field_14668 + f Lnet/minecraft/sounds/SoundEvent; PANDA_BITE sE field_14552 + f Lnet/minecraft/sounds/SoundEvent; PARROT_AMBIENT sF field_15132 + f Lnet/minecraft/sounds/SoundEvent; PARROT_DEATH sG field_15234 + f Lnet/minecraft/sounds/SoundEvent; PARROT_EAT sH field_14960 + f Lnet/minecraft/sounds/SoundEvent; PARROT_FLY sI field_14925 + f Lnet/minecraft/sounds/SoundEvent; PARROT_HURT sJ field_15077 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BLAZE sK field_15199 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BOGGED sL field_49146 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_LOOP s field_22458 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BREEZE sM field_47212 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_CREEPER sN field_14547 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_DROWNED sO field_14647 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ELDER_GUARDIAN sP field_14777 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ENDER_DRAGON sQ field_14854 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ENDERMITE sR field_15022 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_EVOKER sS field_15113 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_GHAST sT field_14577 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_GUARDIAN sU field_18813 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_HOGLIN sV field_24634 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_HUSK sW field_15185 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ILLUSIONER sX field_15064 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_MAGMA_CUBE sY field_14963 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PHANTOM sZ field_14957 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_PLING sa field_14622 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_SNARE sb field_14708 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_XYLOPHONE sc field_14776 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IRON_XYLOPHONE sd field_18308 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_COW_BELL se field_18309 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_DIDGERIDOO sf field_18310 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BIT sg field_18311 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BANJO sh field_18312 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_ZOMBIE si field_41700 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_SKELETON sj field_41701 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_CREEPER sk field_41702 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_ENDER_DRAGON sl field_41703 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_WITHER_SKELETON sm field_41704 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_PIGLIN sn field_41705 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_HURT so field_16441 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_AMBIENT sp field_16437 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_DEATH sq field_16442 + f Lnet/minecraft/sounds/SoundEvent; OMINOUS_BOTTLE_DISPOSE sr field_50103 + f Lnet/minecraft/sounds/SoundEvent; PAINTING_BREAK ss field_14809 + f Lnet/minecraft/sounds/SoundEvent; PAINTING_PLACE st field_14875 + f Lnet/minecraft/sounds/SoundEvent; PANDA_PRE_SNEEZE su field_14997 + f Lnet/minecraft/sounds/SoundEvent; PANDA_SNEEZE sv field_15076 + f Lnet/minecraft/sounds/SoundEvent; PANDA_AMBIENT sw field_14604 + f Lnet/minecraft/sounds/SoundEvent; PANDA_DEATH sx field_15208 + f Lnet/minecraft/sounds/SoundEvent; PANDA_EAT sy field_15106 + f Lnet/minecraft/sounds/SoundEvent; PANDA_STEP sz field_15035 + f Lnet/minecraft/sounds/SoundEvent; PIG_AMBIENT tA field_14615 + f Lnet/minecraft/sounds/SoundEvent; PIG_DEATH tB field_14689 + f Lnet/minecraft/sounds/SoundEvent; PIG_HURT tC field_14750 + f Lnet/minecraft/sounds/SoundEvent; PIG_SADDLE tD field_14824 + f Lnet/minecraft/sounds/SoundEvent; PIG_STEP tE field_14894 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_ADMIRING_ITEM tF field_22263 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_AMBIENT tG field_22264 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_ANGRY tH field_22265 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_CELEBRATE tI field_22266 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_DEATH tJ field_22267 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_JEALOUS tK field_22268 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_HURT tL field_22269 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_MOOD t field_22459 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_RETREAT tM field_22270 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_STEP tN field_22271 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_CONVERTED_TO_ZOMBIFIED tO field_22272 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_AMBIENT tP field_25728 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_ANGRY tQ field_25729 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_DEATH tR field_25730 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_HURT tS field_25731 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_STEP tT field_25732 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_CONVERTED_TO_ZOMBIFIED tU field_25733 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_AMBIENT tV field_14976 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_CELEBRATE tW field_19150 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_DEATH tX field_15049 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_HURT tY field_15159 + f Lnet/minecraft/sounds/SoundEvent; PISTON_CONTRACT tZ field_15228 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PIGLIN ta field_24635 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PIGLIN_BRUTE tb field_25727 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PILLAGER tc field_18815 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_RAVAGER td field_18816 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SHULKER te field_14768 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SILVERFISH tf field_14683 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SKELETON tg field_14587 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SLIME th field_15098 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SPIDER ti field_15190 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_STRAY tj field_14885 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_VEX tk field_15032 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_VINDICATOR tl field_14790 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WARDEN tm field_38059 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITCH tn field_14796 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITHER to field_14555 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITHER_SKELETON tp field_15073 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOGLIN tq field_24633 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOMBIE tr field_15220 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOMBIE_VILLAGER ts field_14676 + f Lnet/minecraft/sounds/SoundEvent; PARROT_STEP tt field_14602 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_AMBIENT tu field_14813 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_BITE tv field_14729 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_DEATH tw field_14974 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_FLAP tx field_14869 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_HURT ty field_15149 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_SWOOP tz field_15238 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_STEP uA field_15036 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_WARNING uB field_14937 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_BREAK uC field_28983 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_FALL uD field_28984 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_HIT uE field_28985 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_PLACE uF field_28986 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_STEP uG field_28987 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_AMBIENT uH field_14802 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_TRAVEL uI field_14716 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_TRIGGER uJ field_14669 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_BREAK uK field_27848 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_FALL uL field_27849 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_ADDITIONS u field_22460 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_HIT uM field_27850 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_PLACE uN field_27851 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_STEP uO field_27852 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_AMBIENT uP field_14553 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_BLOW_OUT uQ field_15133 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_BLOW_UP uR field_15235 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_DEATH uS field_14888 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_FLOP uT field_15004 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_HURT uU field_14748 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_STING uV field_14848 + f Lnet/minecraft/sounds/SoundEvent; PUMPKIN_CARVE uW field_14619 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_AMBIENT uX field_14693 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_ATTACK uY field_15147 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_DEATH uZ field_14872 + f Lnet/minecraft/sounds/SoundEvent; PISTON_EXTEND ua field_15134 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_CRIT ub field_15016 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_KNOCKBACK uc field_14999 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_NODAMAGE ud field_14914 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_STRONG ue field_14840 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_SWEEP uf field_14706 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_WEAK ug field_14625 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BIG_FALL uh field_14794 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BREATH ui field_14726 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BURP uj field_19149 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_DEATH uk field_14904 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT ul field_15115 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_DROWN um field_15205 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_FREEZE un field_27853 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_ON_FIRE uo field_14623 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_SWEET_BERRY_BUSH up field_17614 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_LEVELUP uq field_14709 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SMALL_FALL ur field_14778 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SPLASH us field_14810 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SPLASH_HIGH_SPEED ut field_14876 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SWIM uu field_14998 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_TELEPORT uv field_46945 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_AMBIENT uw field_15078 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_AMBIENT_BABY ux field_14605 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_DEATH uy field_15209 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_HURT uz field_15107 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_BREAK vA field_28601 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_FALL vB field_28602 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_HIT vC field_28603 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_PLACE vD field_28604 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_STEP vE field_28605 + f Lnet/minecraft/sounds/SoundEvent; SALMON_AMBIENT vF field_15033 + f Lnet/minecraft/sounds/SoundEvent; SALMON_DEATH vG field_15123 + f Lnet/minecraft/sounds/SoundEvent; SALMON_FLOP vH field_14563 + f Lnet/minecraft/sounds/SoundEvent; SALMON_HURT vI field_14638 + f Lnet/minecraft/sounds/SoundEvent; SAND_BREAK vJ field_15074 + f Lnet/minecraft/sounds/SoundEvent; SAND_FALL vK field_14943 + f Lnet/minecraft/sounds/SoundEvent; SAND_HIT vL field_15221 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_LOOP v field_22461 + f Lnet/minecraft/sounds/SoundEvent; SAND_PLACE vM field_15144 + f Lnet/minecraft/sounds/SoundEvent; SAND_STEP vN field_14677 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_BREAK vO field_16509 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_FALL vP field_16510 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_HIT vQ field_16506 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_PLACE vR field_16507 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_STEP vS field_16508 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_SPREAD vT field_37357 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_CHARGE vU field_37358 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_BREAK vV field_37359 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_FALL vW field_37360 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_HIT vX field_37361 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_PLACE vY field_37362 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_STEP vZ field_37363 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_HURT va field_15164 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_JUMP vb field_15091 + f Lnet/minecraft/core/Holder$Reference; RAID_HORN vc field_17266 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_AMBIENT vd field_14639 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_ATTACK ve field_15240 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_CELEBRATE vf field_19148 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_DEATH vg field_15146 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_HURT vh field_15007 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_STEP vi field_14929 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_STUNNED vj field_14822 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_ROAR vk field_14733 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_BREAK vl field_24071 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_FALL vm field_24072 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_HIT vn field_24073 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_PLACE vo field_24074 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_STEP vp field_24075 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_BREAK vq field_21937 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_FALL vr field_21938 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_HIT vs field_21939 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_PLACE vt field_21940 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_STEP vu field_21941 + f Lnet/minecraft/sounds/SoundEvent; REDSTONE_TORCH_BURNOUT vv field_19199 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_AMBIENT vw field_23115 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_CHARGE vx field_23116 + f Lnet/minecraft/core/Holder$Reference; RESPAWN_ANCHOR_DEPLETE vy field_23117 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_SET_SPAWN vz field_23118 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_HURT wA field_14730 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_SHEAR wB field_14975 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_STEP wC field_14870 + f Lnet/minecraft/sounds/SoundEvent; SHIELD_BLOCK wD field_15150 + f Lnet/minecraft/sounds/SoundEvent; SHIELD_BREAK wE field_15239 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_BREAK wF field_21931 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_STEP wG field_21932 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_PLACE wH field_21933 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_HIT wI field_21934 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_FALL wJ field_21935 + f Lnet/minecraft/sounds/SoundEvent; SHOVEL_FLATTEN wK field_14616 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_AMBIENT wL field_14690 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_MOOD w field_22462 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BOX_CLOSE wM field_14751 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BOX_OPEN wN field_14825 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BULLET_HIT wO field_14895 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BULLET_HURT wP field_14977 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_CLOSE wQ field_15050 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_DEATH wR field_15160 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_HURT wS field_15229 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_HURT_CLOSED wT field_15135 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_OPEN wU field_15017 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_SHOOT wV field_15000 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_TELEPORT wW field_14915 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_AMBIENT wX field_14786 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_DEATH wY field_14673 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_HURT wZ field_14593 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_BLOOM wa field_37364 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_BREAK wb field_37365 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_FALL wc field_37366 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_HIT wd field_37367 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_PLACE we field_37368 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_STEP wf field_37369 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CLICKING wg field_28081 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CLICKING_STOP wh field_28082 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_BREAK wi field_28083 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_FALL wj field_28084 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_HIT wk field_28085 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_PLACE wl field_28086 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_STEP wm field_28087 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_BREAK wn field_37347 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_FALL wo field_37348 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_HIT wp field_37349 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_PLACE wq field_37350 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_SHRIEK wr field_38060 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_STEP ws field_37351 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_BREAK wt field_37352 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_FALL wu field_37353 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_HIT wv field_37354 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_PLACE ww field_37355 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_STEP wx field_37356 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_AMBIENT wy field_14603 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_DEATH wz field_14814 + f Lnet/minecraft/sounds/SoundEvent; SMALL_AMETHYST_BUD_PLACE xA field_26971 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_BREAK xB field_28612 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_FALL xC field_28613 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_HIT xD field_28614 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_PLACE xE field_28615 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_STEP xF field_28616 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_BREAK xG field_21949 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_STEP xH field_21950 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_PLACE xI field_21951 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_HIT xJ field_21942 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_FALL xK field_21943 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_BREAK xL field_21944 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_ENTER x field_14756 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_STEP xM field_21945 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_PLACE xN field_21946 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_HIT xO field_21947 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_FALL xP field_21948 + f Lnet/minecraft/core/Holder$Reference; SOUL_ESCAPE xQ field_23060 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_BREAK xR field_28607 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_FALL xS field_28608 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_HIT xT field_28609 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_PLACE xU field_28610 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_STEP xV field_28611 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_AMBIENT xW field_23200 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_HAPPY xX field_23201 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_RETREAT xY field_23202 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_DEATH xZ field_23203 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_STEP xa field_15084 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_AMBIENT xb field_15200 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_CONVERTED_TO_STRAY xc field_28606 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_DEATH xd field_14877 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_AMBIENT xe field_14984 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_DEATH xf field_14721 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_HURT xg field_14855 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_SWIM xh field_14617 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_AMBIENT_WATER xi field_14686 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_GALLOP_WATER xj field_15108 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_JUMP_WATER xk field_14901 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_STEP_WATER xl field_15182 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HURT xm field_15069 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_SHOOT xn field_14633 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_STEP xo field_14548 + f Lnet/minecraft/sounds/SoundEvent; SLIME_ATTACK xp field_14863 + f Lnet/minecraft/sounds/SoundEvent; SLIME_DEATH xq field_14763 + f Lnet/minecraft/sounds/SoundEvent; SLIME_HURT xr field_15014 + f Lnet/minecraft/sounds/SoundEvent; SLIME_JUMP xs field_14919 + f Lnet/minecraft/sounds/SoundEvent; SLIME_SQUISH xt field_15095 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_BREAK xu field_15194 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_FALL xv field_14560 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_HIT xw field_14640 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_PLACE xx field_14788 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_STEP xy field_15180 + f Lnet/minecraft/sounds/SoundEvent; SMALL_AMETHYST_BUD_BREAK xz field_26970 + f Lnet/minecraft/sounds/SoundEvent; SNOWBALL_THROW yA field_14873 + f Lnet/minecraft/sounds/SoundEvent; SNOW_BREAK yB field_15165 + f Lnet/minecraft/sounds/SoundEvent; SNOW_FALL yC field_15092 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_AMBIENT yD field_14655 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_DEATH yE field_14594 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_HURT yF field_14830 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_SHOOT yG field_14745 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_SHEAR yH field_22273 + f Lnet/minecraft/sounds/SoundEvent; SNOW_HIT yI field_15040 + f Lnet/minecraft/sounds/SoundEvent; SNOW_PLACE yJ field_14945 + f Lnet/minecraft/sounds/SoundEvent; SNOW_STEP yK field_15060 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_AMBIENT yL field_15170 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_EXIT y field_14828 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_DEATH yM field_14579 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_HURT yN field_14657 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_STEP yO field_14760 + f Lnet/minecraft/sounds/SoundEvent; SPLASH_POTION_BREAK yP field_14839 + f Lnet/minecraft/sounds/SoundEvent; SPLASH_POTION_THROW yQ field_14910 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_BREAK yR field_45962 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_FALL yS field_45963 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_HIT yT field_45964 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_PLACE yU field_45965 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_STEP yV field_45966 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_ABSORB yW field_45062 + f Lnet/minecraft/sounds/SoundEvent; SPYGLASS_USE yX field_26972 + f Lnet/minecraft/sounds/SoundEvent; SPYGLASS_STOP_USING yY field_26973 + f Lnet/minecraft/sounds/SoundEvent; SQUID_AMBIENT yZ field_15034 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_HURT ya field_23204 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_STEP yb field_23205 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_STEP_LAVA yc field_23206 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_EAT yd field_23207 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_SADDLE ye field_23798 + f Lnet/minecraft/sounds/SoundEvent; SLIME_DEATH_SMALL yf field_14849 + f Lnet/minecraft/sounds/SoundEvent; SLIME_HURT_SMALL yg field_14620 + f Lnet/minecraft/sounds/SoundEvent; SLIME_JUMP_SMALL yh field_14694 + f Lnet/minecraft/sounds/SoundEvent; SLIME_SQUISH_SMALL yi field_15148 + f Lnet/minecraft/sounds/SoundEvent; SMITHING_TABLE_USE yj field_22463 + f Lnet/minecraft/sounds/SoundEvent; SMOKER_SMOKE yk field_17618 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_STEP yl field_42595 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EAT ym field_42596 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_IDLE yn field_42597 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_HURT yo field_42598 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DEATH yp field_42599 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DROP_SEED yq field_42600 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SCENTING yr field_42601 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SNIFFING ys field_42602 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SEARCHING yt field_42603 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DIGGING yu field_42604 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DIGGING_STOP yv field_42605 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_HAPPY yw field_42606 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_PLOP yx field_44588 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_CRACK yy field_43165 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_HATCH yz field_43166 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_HIT zA field_15213 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_HIT_GROUND zB field_15104 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_RETURN zC field_14698 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_1 zD field_14606 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_2 zE field_14806 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_3 zF field_14717 + f Lnet/minecraft/core/Holder; TRIDENT_THROW zG field_15001 + f Lnet/minecraft/core/Holder; TRIDENT_THUNDER zH field_14896 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_ATTACH zI field_14859 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_CLICK_OFF zJ field_14787 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_CLICK_ON zK field_14674 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_DETACH zL field_14595 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP z field_14951 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_AMBIENT zM field_15085 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_DEATH zN field_15201 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_FLOP zO field_14878 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_HURT zP field_14985 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BREAK zQ field_26974 + f Lnet/minecraft/sounds/SoundEvent; TUFF_STEP zR field_26975 + f Lnet/minecraft/sounds/SoundEvent; TUFF_PLACE zS field_26976 + f Lnet/minecraft/sounds/SoundEvent; TUFF_HIT zT field_26977 + f Lnet/minecraft/sounds/SoundEvent; TUFF_FALL zU field_26978 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_BREAK zV field_46946 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_FALL zW field_46947 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_HIT zX field_46948 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_PLACE zY field_46949 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_STEP zZ field_46950 + f Lnet/minecraft/sounds/SoundEvent; SQUID_DEATH za field_15124 + f Lnet/minecraft/sounds/SoundEvent; SQUID_HURT zb field_15212 + f Lnet/minecraft/sounds/SoundEvent; SQUID_SQUIRT zc field_15121 + f Lnet/minecraft/sounds/SoundEvent; STONE_BREAK zd field_15026 + f Lnet/minecraft/sounds/SoundEvent; STONE_BUTTON_CLICK_OFF ze field_14954 + f Lnet/minecraft/sounds/SoundEvent; STONE_BUTTON_CLICK_ON zf field_14791 + f Lnet/minecraft/sounds/SoundEvent; STONE_FALL zg field_14723 + f Lnet/minecraft/sounds/SoundEvent; STONE_HIT zh field_14658 + f Lnet/minecraft/sounds/SoundEvent; STONE_PLACE zi field_14574 + f Lnet/minecraft/sounds/SoundEvent; STONE_PRESSURE_PLATE_CLICK_OFF zj field_15116 + f Lnet/minecraft/sounds/SoundEvent; STONE_PRESSURE_PLATE_CLICK_ON zk field_15217 + f Lnet/minecraft/sounds/SoundEvent; STONE_STEP zl field_14921 + f Lnet/minecraft/sounds/SoundEvent; STRAY_AMBIENT zm field_15041 + f Lnet/minecraft/sounds/SoundEvent; STRAY_DEATH zn field_14771 + f Lnet/minecraft/sounds/SoundEvent; STRAY_HURT zo field_14805 + f Lnet/minecraft/sounds/SoundEvent; STRAY_STEP zp field_14540 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_BREAK zq field_17615 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_PLACE zr field_17616 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_PICK_BERRIES zs field_17617 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_DEATH zt field_37370 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_FLOP zu field_37372 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_GROW_UP zv field_37373 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_HURT zw field_37374 + f Lnet/minecraft/sounds/SoundEvent; THORNS_HIT zx field_14663 + f Lnet/minecraft/sounds/SoundEvent; TNT_PRIMED zy field_15079 + f Lnet/minecraft/sounds/SoundEvent; TOTEM_USE zz field_14931 + m ()Lcom/google/common/collect/ImmutableList; registerGoatHornSoundVariants a method_43516 + m (I)Lnet/minecraft/core/Holder$Reference; method_43517 a method_43517 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; register a method_47962 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; register a method_47963 + p 0 name + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;F)Lnet/minecraft/core/Holder; register a method_43045 + p 0 name + p 1 location + p 2 range + m (Ljava/lang/String;)Lnet/minecraft/sounds/SoundEvent; register a method_14838 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47964 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47965 + p 0 name + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47966 + p 0 name + m ()V + m ()V +c net/minecraft/sounds/SoundSource avq net/minecraft/class_3419 + f Lnet/minecraft/sounds/SoundSource; MASTER a field_15250 + f Lnet/minecraft/sounds/SoundSource; MUSIC b field_15253 + f Lnet/minecraft/sounds/SoundSource; RECORDS c field_15247 + f Lnet/minecraft/sounds/SoundSource; WEATHER d field_15252 + f Lnet/minecraft/sounds/SoundSource; BLOCKS e field_15245 + f Lnet/minecraft/sounds/SoundSource; HOSTILE f field_15251 + f Lnet/minecraft/sounds/SoundSource; NEUTRAL g field_15254 + f Lnet/minecraft/sounds/SoundSource; PLAYERS h field_15248 + f Lnet/minecraft/sounds/SoundSource; AMBIENT i field_15256 + f Lnet/minecraft/sounds/SoundSource; VOICE j field_15246 + f Ljava/lang/String; name k field_15249 + f [Lnet/minecraft/sounds/SoundSource; $VALUES l field_15255 + m ()Ljava/lang/String; getName a method_14840 + m ()[Lnet/minecraft/sounds/SoundSource; $values b method_36586 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/sounds/package-info avr net/minecraft/class_5992 +c net/minecraft/stats/RecipeBook avs net/minecraft/class_3439 + f Ljava/util/Set; known a field_15300 + f Ljava/util/Set; highlight b field_15295 + f Lnet/minecraft/stats/RecipeBookSettings; bookSettings c field_25734 + m ()Lnet/minecraft/stats/RecipeBookSettings; getBookSettings a method_30173 + m (Lnet/minecraft/resources/ResourceLocation;)V add a method_14881 + p 1 recipeId + m (Lnet/minecraft/stats/RecipeBook;)V copyOverData a method_14875 + p 1 other + m (Lnet/minecraft/stats/RecipeBookSettings;)V setBookSettings a method_30174 + p 1 settings + m (Lnet/minecraft/world/inventory/RecipeBookMenu;)Z isFiltering a method_14880 + p 1 bookMenu + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isOpen a method_14887 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setOpen a method_14884 + p 1 bookType + p 2 open + m (Lnet/minecraft/world/inventory/RecipeBookType;ZZ)V setBookSetting a method_30175 + p 1 bookType + p 2 open + p 3 filtering + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V add a method_14876 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)Z contains b method_22845 + p 1 recipeId + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isFiltering b method_30176 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setFiltering b method_30177 + p 1 bookType + p 2 filtering + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z contains b method_14878 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)V remove c method_14879 + p 1 recipeId + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V remove c method_14893 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)V addHighlight d method_14877 + p 1 recipeId + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z willHighlight d method_14883 + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V removeHighlight e method_14886 + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V addHighlight f method_14885 + p 1 recipe + m ()V +c net/minecraft/stats/RecipeBookSettings avt net/minecraft/class_5411 + f Ljava/util/Map; TAG_FIELDS a field_25735 + f Ljava/util/Map; states b field_25736 + m ()Lnet/minecraft/stats/RecipeBookSettings; copy a method_30178 + m (Lnet/minecraft/stats/RecipeBookSettings;)V replaceFrom a method_30179 + p 1 other + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isOpen a method_30180 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setOpen a method_30181 + p 1 bookType + p 2 open + m (Ljava/util/EnumMap;)V method_30182 a method_30182 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/stats/RecipeBookSettings; read a method_30183 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/inventory/RecipeBookType;Lcom/mojang/datafixers/util/Pair;)V method_30184 a method_30184 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/Map;Lnet/minecraft/world/inventory/RecipeBookType;Lcom/mojang/datafixers/util/Pair;)V method_30185 a method_30185 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/stats/RecipeBookSettings; read a method_30186 + p 0 buffer + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isFiltering b method_30187 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setFiltering b method_30188 + p 1 bookType + p 2 filtering + m (Lnet/minecraft/nbt/CompoundTag;)V write b method_30189 + p 1 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_30190 + p 1 buffer + m (Ljava/util/Map;)V + p 1 states + m ()V + m ()V +c net/minecraft/stats/RecipeBookSettings$TypeSettings avt$a net/minecraft/class_5411$class_5412 + f Z open a field_25737 + f Z filtering b field_25738 + m ()Lnet/minecraft/stats/RecipeBookSettings$TypeSettings; copy a method_30191 + m (ZZ)V + p 1 open + p 2 filtering +c net/minecraft/stats/ServerRecipeBook avu net/minecraft/class_3441 + f Ljava/lang/String; RECIPE_BOOK_TAG c field_29820 + f Lorg/slf4j/Logger; LOGGER d field_15303 + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State;Lnet/minecraft/server/level/ServerPlayer;Ljava/util/List;)V sendRecipes a method_14899 + p 1 state + p 2 player + p 3 recipes + m (Lnet/minecraft/server/level/ServerPlayer;)V sendInitialRecipeBook a method_14904 + p 1 player + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerPlayer;)I addRecipes a method_14903 + p 1 recipes + p 2 player + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/item/crafting/RecipeManager;)V fromNbt a method_14901 + p 1 tag + p 2 recipeManager + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Consumer;Lnet/minecraft/world/item/crafting/RecipeManager;)V loadRecipes a method_20732 + p 1 tags + p 2 recipeConsumer + p 3 recipeManager + m ()Lnet/minecraft/nbt/CompoundTag; toNbt b method_14902 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerPlayer;)I removeRecipes b method_14900 + p 1 recipes + p 2 player + m ()V + m ()V +c net/minecraft/stats/ServerStatsCounter avv net/minecraft/class_3442 + c Server-side implementation of {@link net.minecraft.stats.StatsCounter}; handles counting, serialising, and de-serialising statistics, as well as sending them to connected clients via the {@linkplain net.minecraft.network.protocol.game.ClientboundAwardStatsPacket award stats packet}. + f Lorg/slf4j/Logger; LOGGER b field_15309 + f Lnet/minecraft/server/MinecraftServer; server c field_15308 + f Ljava/io/File; file d field_15305 + f Ljava/util/Set; dirty e field_15307 + m ()V save a method_14912 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendStats a method_14910 + p 1 player + m (Lnet/minecraft/stats/StatType;)Lcom/google/gson/JsonObject; method_14913 a method_14913 + m (Lnet/minecraft/stats/StatType;Ljava/lang/String;)Ljava/util/Optional; getStat a method_14905 + p 1 type + p 2 location + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/nbt/CompoundTag; fromJson a method_14908 + p 0 json + m (Lcom/mojang/datafixers/DataFixer;Ljava/lang/String;)V parseLocal a method_14906 + p 1 fixerUpper + p 2 json + m (Ljava/lang/String;)V method_17992 a method_17992 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/stats/Stat;)V method_17990 a method_17990 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/stats/StatType;)V method_17991 a method_17991 + m ()Ljava/lang/String; toJson b method_14911 + m (Lnet/minecraft/stats/Stat;)Lnet/minecraft/resources/ResourceLocation; getKey b method_14907 + p 0 stat + m (Ljava/lang/String;)V method_17993 b method_17993 + m ()V markAllDirty c method_14914 + m ()Ljava/util/Set; getDirty d method_14909 + m (Lnet/minecraft/server/MinecraftServer;Ljava/io/File;)V + p 1 server + p 2 file + m ()V +c net/minecraft/stats/Stat avw net/minecraft/class_3445 + c An immutable statistic to be counted for a particular entry in the {@linkplain #type}'s registry. This is used as a key in a {@link net.minecraft.stats.StatsCounter} for a corresponding count.\n

\nBy default, the statistic's {@linkplain #getName() name} is formatted {@code .:.}, as created by {@link #buildName(StatType, Object)}.\n\n@param the type of the registry entry for this statistic\n@see net.minecraft.stats.StatType\n@see net.minecraft.stats.Stats + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48280 + f Lnet/minecraft/stats/StatFormatter; formatter o field_15319 + f Ljava/lang/Object; value p field_15320 + c The registry entry for this statistic. + f Lnet/minecraft/stats/StatType; type q field_15321 + c The parent statistic type. + m ()Lnet/minecraft/stats/StatType; getType a method_14949 + m (I)Ljava/lang/String; format a method_14953 + p 1 value + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; locationToKey a method_14952 + c @return the specified {@code location} as a string with {@code .} as the separator character + p 0 location + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)Ljava/lang/String; buildName a method_14950 + c @return the name for the specified {@code type} and {@code value} in the form {@code .:.} + p 0 type + p 1 value + m ()Ljava/lang/Object; getValue b method_14951 + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;Lnet/minecraft/stats/StatFormatter;)V + p 1 type + p 2 value + p 3 formatter + m ()V +c net/minecraft/stats/StatFormatter avx net/minecraft/class_3446 + c A formatter for a {@linkplain Stat statistic}'s corresponding count. + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_16976 + f Lnet/minecraft/stats/StatFormatter; DEFAULT b field_16975 + f Lnet/minecraft/stats/StatFormatter; DIVIDE_BY_TEN c field_16978 + f Lnet/minecraft/stats/StatFormatter; DISTANCE d field_16977 + f Lnet/minecraft/stats/StatFormatter; TIME e field_16979 + m (I)Ljava/lang/String; method_16819 a method_16819 + m (Ljava/text/DecimalFormat;)V method_16817 a method_16817 + m (I)Ljava/lang/String; method_16816 b method_16816 + m (I)Ljava/lang/String; method_16818 c method_16818 + m ()V +c net/minecraft/stats/StatType avy net/minecraft/class_3448 + c Holds a map of {@linkplain net.minecraft.stats.Stat statistics} with type {@code T} for a corresponding {@link #registry}.\n

\nA single type usually defines a particular thing to be counted, such as {@linkplain net.minecraft.stats.Stats#ITEM_USED the number of items used} or {@link net.minecraft.stats.Stats#BLOCK_MINED the number of blocks mined}. However, there is also a {@link net.minecraft.stats.Stats#CUSTOM custom type} which uses entries from the {@linkplain Registry#CUSTOM_STAT custom stat registry}. This is keyed by a {@link net.minecraft.resources.ResourceLocation} and can be used to count any statistic that doesn't require an associated {@link net.minecraft.core.Registry} entry.\n\n@param the type of the associated registry's entry values\n@see net.minecraft.stats.Stat\n@see net.minecraft.stats.Stats\n@see net.minecraft.core.Registry#STAT_TYPE\n@see net.minecraft.core.Registry#CUSTOM_STAT + f Lnet/minecraft/core/Registry; registry a field_15323 + f Ljava/util/Map; map b field_15324 + c A map of registry entries to their corresponding {@link Stat statistic}. Lazily populated by {@link #get(Object, StatFormatter)}. + f Lnet/minecraft/network/chat/Component; displayName c field_26382 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec d field_48281 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_56054 + m (Lnet/minecraft/stats/StatFormatter;Ljava/lang/Object;)Lnet/minecraft/stats/Stat; method_14961 a method_14961 + m (Ljava/lang/Object;)Z contains a method_14958 + p 1 value + m (Ljava/lang/Object;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/stats/Stat; get a method_14955 + p 1 value + p 2 formatter + m ()Lnet/minecraft/core/Registry; getRegistry b method_14959 + m (Ljava/lang/Object;)Lnet/minecraft/stats/Stat; get b method_14956 + p 1 value + m ()Lnet/minecraft/network/chat/Component; getDisplayName c method_30739 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/network/chat/Component;)V + p 1 registry + p 2 displayName +c net/minecraft/stats/Stats avz net/minecraft/class_3468 + f Lnet/minecraft/resources/ResourceLocation; HORSE_ONE_CM A field_15396 + f Lnet/minecraft/resources/ResourceLocation; AVIATE_ONE_CM B field_15374 + f Lnet/minecraft/resources/ResourceLocation; SWIM_ONE_CM C field_15423 + f Lnet/minecraft/resources/ResourceLocation; STRIDER_ONE_CM D field_24458 + f Lnet/minecraft/resources/ResourceLocation; JUMP E field_15428 + f Lnet/minecraft/resources/ResourceLocation; DROP F field_15406 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT G field_15399 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT_ABSORBED H field_15408 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT_RESISTED I field_15397 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_TAKEN J field_15388 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_BLOCKED_BY_SHIELD K field_15380 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_ABSORBED L field_15365 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_RESISTED M field_15425 + f Lnet/minecraft/resources/ResourceLocation; DEATHS N field_15421 + f Lnet/minecraft/resources/ResourceLocation; MOB_KILLS O field_15414 + f Lnet/minecraft/resources/ResourceLocation; ANIMALS_BRED P field_15410 + f Lnet/minecraft/resources/ResourceLocation; PLAYER_KILLS Q field_15404 + f Lnet/minecraft/resources/ResourceLocation; FISH_CAUGHT R field_15391 + f Lnet/minecraft/resources/ResourceLocation; TALKED_TO_VILLAGER S field_15384 + f Lnet/minecraft/resources/ResourceLocation; TRADED_WITH_VILLAGER T field_15378 + f Lnet/minecraft/resources/ResourceLocation; EAT_CAKE_SLICE U field_15369 + f Lnet/minecraft/resources/ResourceLocation; FILL_CAULDRON V field_15430 + f Lnet/minecraft/resources/ResourceLocation; USE_CAULDRON W field_15373 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_ARMOR X field_15382 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_BANNER Y field_15390 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_SHULKER_BOX Z field_15398 + f Lnet/minecraft/resources/ResourceLocation; RAID_TRIGGER aA field_19256 + f Lnet/minecraft/resources/ResourceLocation; RAID_WIN aB field_19257 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_ANVIL aC field_21778 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_GRINDSTONE aD field_21779 + f Lnet/minecraft/resources/ResourceLocation; TARGET_HIT aE field_22413 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_SMITHING_TABLE aF field_22464 + f Lnet/minecraft/stats/StatType; BLOCK_MINED a field_15427 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BREWINGSTAND aa field_15407 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BEACON ab field_15416 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_DROPPER ac field_15367 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_HOPPER ad field_15366 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_DISPENSER ae field_15371 + f Lnet/minecraft/resources/ResourceLocation; PLAY_NOTEBLOCK af field_15385 + f Lnet/minecraft/resources/ResourceLocation; TUNE_NOTEBLOCK ag field_15393 + f Lnet/minecraft/resources/ResourceLocation; POT_FLOWER ah field_15412 + f Lnet/minecraft/resources/ResourceLocation; TRIGGER_TRAPPED_CHEST ai field_15402 + f Lnet/minecraft/resources/ResourceLocation; OPEN_ENDERCHEST aj field_15424 + f Lnet/minecraft/resources/ResourceLocation; ENCHANT_ITEM ak field_15420 + f Lnet/minecraft/resources/ResourceLocation; PLAY_RECORD al field_15375 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_FURNACE am field_15379 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CRAFTING_TABLE an field_15368 + f Lnet/minecraft/resources/ResourceLocation; OPEN_CHEST ao field_15395 + f Lnet/minecraft/resources/ResourceLocation; SLEEP_IN_BED ap field_15381 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SHULKER_BOX aq field_15418 + f Lnet/minecraft/resources/ResourceLocation; OPEN_BARREL ar field_17271 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BLAST_FURNACE as field_17272 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_SMOKER at field_17273 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_LECTERN au field_17485 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CAMPFIRE av field_17486 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CARTOGRAPHY_TABLE aw field_19252 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_LOOM ax field_19253 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_STONECUTTER ay field_19254 + f Lnet/minecraft/resources/ResourceLocation; BELL_RING az field_19255 + f Lnet/minecraft/stats/StatType; ITEM_CRAFTED b field_15370 + f Lnet/minecraft/stats/StatType; ITEM_USED c field_15372 + f Lnet/minecraft/stats/StatType; ITEM_BROKEN d field_15383 + f Lnet/minecraft/stats/StatType; ITEM_PICKED_UP e field_15392 + f Lnet/minecraft/stats/StatType; ITEM_DROPPED f field_15405 + f Lnet/minecraft/stats/StatType; ENTITY_KILLED g field_15403 + f Lnet/minecraft/stats/StatType; ENTITY_KILLED_BY h field_15411 + f Lnet/minecraft/stats/StatType; CUSTOM i field_15419 + f Lnet/minecraft/resources/ResourceLocation; LEAVE_GAME j field_15389 + f Lnet/minecraft/resources/ResourceLocation; PLAY_TIME k field_15417 + f Lnet/minecraft/resources/ResourceLocation; TOTAL_WORLD_TIME l field_33558 + f Lnet/minecraft/resources/ResourceLocation; TIME_SINCE_DEATH m field_15400 + f Lnet/minecraft/resources/ResourceLocation; TIME_SINCE_REST n field_15429 + f Lnet/minecraft/resources/ResourceLocation; CROUCH_TIME o field_15422 + f Lnet/minecraft/resources/ResourceLocation; WALK_ONE_CM p field_15377 + f Lnet/minecraft/resources/ResourceLocation; CROUCH_ONE_CM q field_15376 + f Lnet/minecraft/resources/ResourceLocation; SPRINT_ONE_CM r field_15364 + f Lnet/minecraft/resources/ResourceLocation; WALK_ON_WATER_ONE_CM s field_15394 + f Lnet/minecraft/resources/ResourceLocation; FALL_ONE_CM t field_15386 + f Lnet/minecraft/resources/ResourceLocation; CLIMB_ONE_CM u field_15413 + f Lnet/minecraft/resources/ResourceLocation; FLY_ONE_CM v field_15426 + f Lnet/minecraft/resources/ResourceLocation; WALK_UNDER_WATER_ONE_CM w field_15401 + f Lnet/minecraft/resources/ResourceLocation; MINECART_ONE_CM x field_15409 + f Lnet/minecraft/resources/ResourceLocation; BOAT_ONE_CM y field_15415 + f Lnet/minecraft/resources/ResourceLocation; PIG_ONE_CM z field_15387 + m (Ljava/lang/String;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/resources/ResourceLocation; makeCustomStat a method_15021 + p 0 key + p 1 formatter + m (Ljava/lang/String;Lnet/minecraft/core/Registry;)Lnet/minecraft/stats/StatType; makeRegistryStatType a method_15020 + p 0 key + p 1 registry + m ()V + m ()V +c net/minecraft/stats/StatsCounter awa net/minecraft/class_3469 + c Manages counting a set of {@link net.minecraft.stats.Stat} objects, stored by a map of statistics to their count.\n

\nThis base {@code StatsCounter} is only used client-side for keeping track of and reading counts sent from the server.\n\n@see net.minecraft.stats.ServerStatsCounter + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats a field_15431 + m (Lnet/minecraft/stats/Stat;)I getValue a method_15025 + p 1 stat + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)I getValue a method_15024 + p 1 type + p 2 value + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/stats/Stat;I)V setValue a method_15023 + p 1 player + p 2 stat + p 3 value + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/stats/Stat;I)V increment b method_15022 + p 1 player + p 2 stat + p 3 amount + m ()V +c net/minecraft/stats/package-info awb net/minecraft/class_5993 +c net/minecraft/tags/BannerPatternTags awc net/minecraft/class_7440 + f Lnet/minecraft/tags/TagKey; NO_ITEM_REQUIRED a field_39097 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_FLOWER b field_39098 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_CREEPER c field_39099 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_SKULL d field_39100 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_MOJANG e field_39101 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_GLOBE f field_39102 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_PIGLIN g field_39103 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_FLOW h field_49786 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_GUSTER i field_49787 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43675 + p 0 name + m ()V + m ()V +c net/minecraft/tags/BiomeTags awd net/minecraft/class_6908 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_JUNGLE A field_36530 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_OCEAN B field_36531 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_SWAMP C field_36532 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_MOUNTAIN D field_36533 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_STANDARD E field_36492 + f Lnet/minecraft/tags/TagKey; HAS_SHIPWRECK_BEACHED F field_36493 + f Lnet/minecraft/tags/TagKey; HAS_SHIPWRECK G field_36494 + f Lnet/minecraft/tags/TagKey; HAS_STRONGHOLD H field_36502 + f Lnet/minecraft/tags/TagKey; HAS_TRIAL_CHAMBERS I field_47213 + f Lnet/minecraft/tags/TagKey; HAS_SWAMP_HUT J field_36495 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_DESERT K field_36496 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_PLAINS L field_36497 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_SAVANNA M field_36498 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_SNOWY N field_36499 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_TAIGA O field_36500 + f Lnet/minecraft/tags/TagKey; HAS_TRAIL_RUINS P field_43168 + f Lnet/minecraft/tags/TagKey; HAS_WOODLAND_MANSION Q field_36501 + f Lnet/minecraft/tags/TagKey; HAS_NETHER_FORTRESS R field_36503 + f Lnet/minecraft/tags/TagKey; HAS_NETHER_FOSSIL S field_36504 + f Lnet/minecraft/tags/TagKey; HAS_BASTION_REMNANT T field_36505 + f Lnet/minecraft/tags/TagKey; HAS_ANCIENT_CITY U field_38372 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_NETHER V field_36506 + f Lnet/minecraft/tags/TagKey; HAS_END_CITY W field_36507 + f Lnet/minecraft/tags/TagKey; REQUIRED_OCEAN_MONUMENT_SURROUNDING X field_37376 + f Lnet/minecraft/tags/TagKey; MINESHAFT_BLOCKING Y field_39444 + f Lnet/minecraft/tags/TagKey; PLAYS_UNDERWATER_MUSIC Z field_37377 + f Lnet/minecraft/tags/TagKey; IS_DEEP_OCEAN a field_36508 + f Lnet/minecraft/tags/TagKey; HAS_CLOSER_WATER_FOG aa field_37378 + f Lnet/minecraft/tags/TagKey; WATER_ON_MAP_OUTLINES ab field_37379 + f Lnet/minecraft/tags/TagKey; PRODUCES_CORALS_FROM_BONEMEAL ac field_37380 + f Lnet/minecraft/tags/TagKey; INCREASED_FIRE_BURNOUT ad field_41752 + f Lnet/minecraft/tags/TagKey; SNOW_GOLEM_MELTS ae field_41753 + f Lnet/minecraft/tags/TagKey; WITHOUT_ZOMBIE_SIEGES af field_37381 + f Lnet/minecraft/tags/TagKey; WITHOUT_PATROL_SPAWNS ag field_37382 + f Lnet/minecraft/tags/TagKey; WITHOUT_WANDERING_TRADER_SPAWNS ah field_37383 + f Lnet/minecraft/tags/TagKey; SPAWNS_COLD_VARIANT_FROGS ai field_37384 + f Lnet/minecraft/tags/TagKey; SPAWNS_WARM_VARIANT_FROGS aj field_37385 + f Lnet/minecraft/tags/TagKey; SPAWNS_GOLD_RABBITS ak field_41754 + f Lnet/minecraft/tags/TagKey; SPAWNS_WHITE_RABBITS al field_41755 + f Lnet/minecraft/tags/TagKey; REDUCED_WATER_AMBIENT_SPAWNS am field_37387 + f Lnet/minecraft/tags/TagKey; ALLOWS_TROPICAL_FISH_SPAWNS_AT_ANY_HEIGHT an field_37388 + f Lnet/minecraft/tags/TagKey; POLAR_BEARS_SPAWN_ON_ALTERNATE_BLOCKS ao field_37389 + f Lnet/minecraft/tags/TagKey; MORE_FREQUENT_DROWNED_SPAWNS ap field_37390 + f Lnet/minecraft/tags/TagKey; ALLOWS_SURFACE_SLIME_SPAWNS aq field_37391 + f Lnet/minecraft/tags/TagKey; SPAWNS_SNOW_FOXES ar field_41756 + f Lnet/minecraft/tags/TagKey; IS_OCEAN b field_36509 + f Lnet/minecraft/tags/TagKey; IS_BEACH c field_36510 + f Lnet/minecraft/tags/TagKey; IS_RIVER d field_36511 + f Lnet/minecraft/tags/TagKey; IS_MOUNTAIN e field_36512 + f Lnet/minecraft/tags/TagKey; IS_BADLANDS f field_36513 + f Lnet/minecraft/tags/TagKey; IS_HILL g field_36514 + f Lnet/minecraft/tags/TagKey; IS_TAIGA h field_36515 + f Lnet/minecraft/tags/TagKey; IS_JUNGLE i field_36516 + f Lnet/minecraft/tags/TagKey; IS_FOREST j field_36517 + f Lnet/minecraft/tags/TagKey; IS_SAVANNA k field_37392 + f Lnet/minecraft/tags/TagKey; IS_OVERWORLD l field_37393 + f Lnet/minecraft/tags/TagKey; IS_NETHER m field_36518 + f Lnet/minecraft/tags/TagKey; IS_END n field_37394 + f Lnet/minecraft/tags/TagKey; STRONGHOLD_BIASED_TO o field_37395 + f Lnet/minecraft/tags/TagKey; HAS_BURIED_TREASURE p field_36519 + f Lnet/minecraft/tags/TagKey; HAS_DESERT_PYRAMID q field_36520 + f Lnet/minecraft/tags/TagKey; HAS_IGLOO r field_36521 + f Lnet/minecraft/tags/TagKey; HAS_JUNGLE_TEMPLE s field_36522 + f Lnet/minecraft/tags/TagKey; HAS_MINESHAFT t field_36523 + f Lnet/minecraft/tags/TagKey; HAS_MINESHAFT_MESA u field_36524 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_MONUMENT v field_36525 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_RUIN_COLD w field_36526 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_RUIN_WARM x field_36527 + f Lnet/minecraft/tags/TagKey; HAS_PILLAGER_OUTPOST y field_36528 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_DESERT z field_36529 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_40434 + p 0 name + m ()V + m ()V +c net/minecraft/tags/BlockTags awe net/minecraft/class_3481 + f Lnet/minecraft/tags/TagKey; JUNGLE_LOGS A field_15474 + f Lnet/minecraft/tags/TagKey; SPRUCE_LOGS B field_15489 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS C field_37401 + f Lnet/minecraft/tags/TagKey; CRIMSON_STEMS D field_21955 + f Lnet/minecraft/tags/TagKey; WARPED_STEMS E field_21956 + f Lnet/minecraft/tags/TagKey; BAMBOO_BLOCKS F field_40986 + f Lnet/minecraft/tags/TagKey; WART_BLOCKS G field_21954 + f Lnet/minecraft/tags/TagKey; BANNERS H field_15501 + f Lnet/minecraft/tags/TagKey; SAND I field_15466 + f Lnet/minecraft/tags/TagKey; SMELTS_TO_GLASS J field_42968 + f Lnet/minecraft/tags/TagKey; STAIRS K field_15459 + f Lnet/minecraft/tags/TagKey; SLABS L field_15469 + f Lnet/minecraft/tags/TagKey; WALLS M field_15504 + f Lnet/minecraft/tags/TagKey; ANVIL N field_15486 + f Lnet/minecraft/tags/TagKey; RAILS O field_15463 + f Lnet/minecraft/tags/TagKey; LEAVES P field_15503 + f Lnet/minecraft/tags/TagKey; TRAPDOORS Q field_15487 + f Lnet/minecraft/tags/TagKey; SMALL_FLOWERS R field_15480 + f Lnet/minecraft/tags/TagKey; BEDS S field_16443 + f Lnet/minecraft/tags/TagKey; FENCES T field_16584 + f Lnet/minecraft/tags/TagKey; TALL_FLOWERS U field_20338 + f Lnet/minecraft/tags/TagKey; FLOWERS V field_20339 + f Lnet/minecraft/tags/TagKey; PIGLIN_REPELLENTS W field_22465 + f Lnet/minecraft/tags/TagKey; GOLD_ORES X field_23062 + f Lnet/minecraft/tags/TagKey; IRON_ORES Y field_28988 + f Lnet/minecraft/tags/TagKey; DIAMOND_ORES Z field_28989 + f Lnet/minecraft/tags/TagKey; WALL_HANGING_SIGNS aA field_40104 + f Lnet/minecraft/tags/TagKey; ALL_HANGING_SIGNS aB field_40105 + f Lnet/minecraft/tags/TagKey; ALL_SIGNS aC field_41282 + f Lnet/minecraft/tags/TagKey; DRAGON_IMMUNE aD field_17753 + f Lnet/minecraft/tags/TagKey; DRAGON_TRANSPARENT aE field_37396 + f Lnet/minecraft/tags/TagKey; WITHER_IMMUNE aF field_17754 + f Lnet/minecraft/tags/TagKey; WITHER_SUMMON_BASE_BLOCKS aG field_22274 + f Lnet/minecraft/tags/TagKey; BEEHIVES aH field_20340 + f Lnet/minecraft/tags/TagKey; CROPS aI field_20341 + f Lnet/minecraft/tags/TagKey; BEE_GROWABLES aJ field_20342 + f Lnet/minecraft/tags/TagKey; PORTALS aK field_21780 + f Lnet/minecraft/tags/TagKey; FIRE aL field_21952 + f Lnet/minecraft/tags/TagKey; WOOL a field_15481 + f Lnet/minecraft/tags/TagKey; NYLIUM aM field_21953 + f Lnet/minecraft/tags/TagKey; BEACON_BASE_BLOCKS aN field_22275 + f Lnet/minecraft/tags/TagKey; SOUL_SPEED_BLOCKS aO field_23063 + f Lnet/minecraft/tags/TagKey; WALL_POST_OVERRIDE aP field_22276 + f Lnet/minecraft/tags/TagKey; CLIMBABLE aQ field_22414 + f Lnet/minecraft/tags/TagKey; FALL_DAMAGE_RESETTING aR field_36327 + f Lnet/minecraft/tags/TagKey; SHULKER_BOXES aS field_21490 + f Lnet/minecraft/tags/TagKey; HOGLIN_REPELLENTS aT field_22466 + f Lnet/minecraft/tags/TagKey; SOUL_FIRE_BASE_BLOCKS aU field_23119 + f Lnet/minecraft/tags/TagKey; STRIDER_WARM_BLOCKS aV field_23209 + f Lnet/minecraft/tags/TagKey; CAMPFIRES aW field_23799 + f Lnet/minecraft/tags/TagKey; GUARDED_BY_PIGLINS aX field_23800 + f Lnet/minecraft/tags/TagKey; PREVENT_MOB_SPAWNING_INSIDE aY field_24459 + f Lnet/minecraft/tags/TagKey; FENCE_GATES aZ field_25147 + f Lnet/minecraft/tags/TagKey; REDSTONE_ORES aa field_28990 + f Lnet/minecraft/tags/TagKey; LAPIS_ORES ab field_28991 + f Lnet/minecraft/tags/TagKey; COAL_ORES ac field_29193 + f Lnet/minecraft/tags/TagKey; EMERALD_ORES ad field_29194 + f Lnet/minecraft/tags/TagKey; COPPER_ORES ae field_29195 + f Lnet/minecraft/tags/TagKey; CANDLES af field_26983 + f Lnet/minecraft/tags/TagKey; DIRT ag field_29822 + f Lnet/minecraft/tags/TagKey; TERRACOTTA ah field_36265 + f Lnet/minecraft/tags/TagKey; BADLANDS_TERRACOTTA ai field_49050 + f Lnet/minecraft/tags/TagKey; CONCRETE_POWDER aj field_45063 + f Lnet/minecraft/tags/TagKey; COMPLETES_FIND_TREE_TUTORIAL ak field_38834 + f Lnet/minecraft/tags/TagKey; FLOWER_POTS al field_15470 + f Lnet/minecraft/tags/TagKey; ENDERMAN_HOLDABLE am field_15460 + f Lnet/minecraft/tags/TagKey; ICE an field_15467 + f Lnet/minecraft/tags/TagKey; VALID_SPAWN ao field_15478 + f Lnet/minecraft/tags/TagKey; IMPERMEABLE ap field_15490 + f Lnet/minecraft/tags/TagKey; UNDERWATER_BONEMEALS aq field_15496 + f Lnet/minecraft/tags/TagKey; CORAL_BLOCKS ar field_15461 + f Lnet/minecraft/tags/TagKey; WALL_CORALS as field_15476 + f Lnet/minecraft/tags/TagKey; CORAL_PLANTS at field_15483 + f Lnet/minecraft/tags/TagKey; CORALS au field_15488 + f Lnet/minecraft/tags/TagKey; BAMBOO_PLANTABLE_ON av field_15497 + f Lnet/minecraft/tags/TagKey; STANDING_SIGNS aw field_15472 + f Lnet/minecraft/tags/TagKey; WALL_SIGNS ax field_15492 + f Lnet/minecraft/tags/TagKey; SIGNS ay field_15500 + f Lnet/minecraft/tags/TagKey; CEILING_HANGING_SIGNS az field_40103 + f Lnet/minecraft/tags/TagKey; SNOW bA field_29823 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_AXE bB field_33713 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_HOE bC field_33714 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_PICKAXE bD field_33715 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_SHOVEL bE field_33716 + f Lnet/minecraft/tags/TagKey; SWORD_EFFICIENT bF field_44469 + f Lnet/minecraft/tags/TagKey; NEEDS_DIAMOND_TOOL bG field_33717 + f Lnet/minecraft/tags/TagKey; NEEDS_IRON_TOOL bH field_33718 + f Lnet/minecraft/tags/TagKey; NEEDS_STONE_TOOL bI field_33719 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_NETHERITE_TOOL bJ field_49925 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_DIAMOND_TOOL bK field_49926 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_IRON_TOOL bL field_49927 + f Lnet/minecraft/tags/TagKey; PLANKS b field_15471 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_STONE_TOOL bM field_49928 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_GOLD_TOOL bN field_49929 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_WOODEN_TOOL bO field_49930 + f Lnet/minecraft/tags/TagKey; FEATURES_CANNOT_REPLACE bP field_33757 + f Lnet/minecraft/tags/TagKey; LAVA_POOL_STONE_CANNOT_REPLACE bQ field_33862 + f Lnet/minecraft/tags/TagKey; GEODE_INVALID_BLOCKS bR field_33863 + f Lnet/minecraft/tags/TagKey; FROG_PREFER_JUMP_TO bS field_37398 + f Lnet/minecraft/tags/TagKey; SCULK_REPLACEABLE bT field_37399 + f Lnet/minecraft/tags/TagKey; SCULK_REPLACEABLE_WORLD_GEN bU field_37400 + f Lnet/minecraft/tags/TagKey; ANCIENT_CITY_REPLACEABLE bV field_38374 + f Lnet/minecraft/tags/TagKey; VIBRATION_RESONATORS bW field_43169 + f Lnet/minecraft/tags/TagKey; ANIMALS_SPAWNABLE_ON bX field_35567 + f Lnet/minecraft/tags/TagKey; ARMADILLO_SPAWNABLE_ON bY field_48282 + f Lnet/minecraft/tags/TagKey; AXOLOTLS_SPAWNABLE_ON bZ field_35568 + f Lnet/minecraft/tags/TagKey; UNSTABLE_BOTTOM_CENTER ba field_25148 + f Lnet/minecraft/tags/TagKey; MUSHROOM_GROW_BLOCK bb field_25739 + f Lnet/minecraft/tags/TagKey; INFINIBURN_OVERWORLD bc field_25588 + f Lnet/minecraft/tags/TagKey; INFINIBURN_NETHER bd field_25589 + f Lnet/minecraft/tags/TagKey; INFINIBURN_END be field_25590 + f Lnet/minecraft/tags/TagKey; BASE_STONE_OVERWORLD bf field_25806 + f Lnet/minecraft/tags/TagKey; STONE_ORE_REPLACEABLES bg field_28992 + f Lnet/minecraft/tags/TagKey; DEEPSLATE_ORE_REPLACEABLES bh field_28993 + f Lnet/minecraft/tags/TagKey; BASE_STONE_NETHER bi field_25807 + f Lnet/minecraft/tags/TagKey; OVERWORLD_CARVER_REPLACEABLES bj field_38832 + f Lnet/minecraft/tags/TagKey; NETHER_CARVER_REPLACEABLES bk field_38833 + f Lnet/minecraft/tags/TagKey; CANDLE_CAKES bl field_26984 + f Lnet/minecraft/tags/TagKey; CAULDRONS bm field_26985 + f Lnet/minecraft/tags/TagKey; CRYSTAL_SOUND_BLOCKS bn field_26986 + f Lnet/minecraft/tags/TagKey; INSIDE_STEP_SOUND_BLOCKS bo field_28040 + f Lnet/minecraft/tags/TagKey; COMBINATION_STEP_SOUND_BLOCKS bp field_43170 + f Lnet/minecraft/tags/TagKey; CAMEL_SAND_STEP_SOUND_BLOCKS bq field_45064 + f Lnet/minecraft/tags/TagKey; OCCLUDES_VIBRATION_SIGNALS br field_28088 + f Lnet/minecraft/tags/TagKey; DAMPENS_VIBRATIONS bs field_38835 + f Lnet/minecraft/tags/TagKey; DRIPSTONE_REPLACEABLE bt field_28089 + f Lnet/minecraft/tags/TagKey; CAVE_VINES bu field_28621 + f Lnet/minecraft/tags/TagKey; MOSS_REPLACEABLE bv field_28622 + f Lnet/minecraft/tags/TagKey; LUSH_GROUND_REPLACEABLE bw field_29196 + f Lnet/minecraft/tags/TagKey; AZALEA_ROOT_REPLACEABLE bx field_36268 + f Lnet/minecraft/tags/TagKey; SMALL_DRIPLEAF_PLACEABLE by field_33641 + f Lnet/minecraft/tags/TagKey; BIG_DRIPLEAF_PLACEABLE bz field_35443 + f Lnet/minecraft/tags/TagKey; DOES_NOT_BLOCK_HOPPERS cA field_49147 + f Lnet/minecraft/tags/TagKey; AIR cB field_51989 + f Lnet/minecraft/tags/TagKey; STONE_BRICKS c field_15465 + f Lnet/minecraft/tags/TagKey; GOATS_SPAWNABLE_ON ca field_35569 + f Lnet/minecraft/tags/TagKey; MOOSHROOMS_SPAWNABLE_ON cb field_35570 + f Lnet/minecraft/tags/TagKey; PARROTS_SPAWNABLE_ON cc field_35571 + f Lnet/minecraft/tags/TagKey; POLAR_BEARS_SPAWNABLE_ON_ALTERNATE cd field_35572 + f Lnet/minecraft/tags/TagKey; RABBITS_SPAWNABLE_ON ce field_35573 + f Lnet/minecraft/tags/TagKey; FOXES_SPAWNABLE_ON cf field_35574 + f Lnet/minecraft/tags/TagKey; WOLVES_SPAWNABLE_ON cg field_35575 + f Lnet/minecraft/tags/TagKey; FROGS_SPAWNABLE_ON ch field_38928 + f Lnet/minecraft/tags/TagKey; AZALEA_GROWS_ON ci field_36266 + f Lnet/minecraft/tags/TagKey; CONVERTABLE_TO_MUD cj field_37397 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS_CAN_GROW_THROUGH ck field_38692 + f Lnet/minecraft/tags/TagKey; MANGROVE_ROOTS_CAN_GROW_THROUGH cl field_38693 + f Lnet/minecraft/tags/TagKey; DEAD_BUSH_MAY_PLACE_ON cm field_38694 + f Lnet/minecraft/tags/TagKey; SNAPS_GOAT_HORN cn field_39029 + f Lnet/minecraft/tags/TagKey; REPLACEABLE_BY_TREES co field_44470 + f Lnet/minecraft/tags/TagKey; SNOW_LAYER_CANNOT_SURVIVE_ON cp field_39104 + f Lnet/minecraft/tags/TagKey; SNOW_LAYER_CAN_SURVIVE_ON cq field_39105 + f Lnet/minecraft/tags/TagKey; INVALID_SPAWN_INSIDE cr field_40107 + f Lnet/minecraft/tags/TagKey; SNIFFER_DIGGABLE_BLOCK cs field_42607 + f Lnet/minecraft/tags/TagKey; SNIFFER_EGG_HATCH_BOOST ct field_43171 + f Lnet/minecraft/tags/TagKey; TRAIL_RUINS_REPLACEABLE cu field_43172 + f Lnet/minecraft/tags/TagKey; REPLACEABLE cv field_44471 + f Lnet/minecraft/tags/TagKey; ENCHANTMENT_POWER_PROVIDER cw field_44472 + f Lnet/minecraft/tags/TagKey; ENCHANTMENT_POWER_TRANSMITTER cx field_44473 + f Lnet/minecraft/tags/TagKey; MAINTAINS_FARMLAND cy field_44589 + f Lnet/minecraft/tags/TagKey; BLOCKS_WIND_CHARGE_EXPLOSIONS cz field_49051 + f Lnet/minecraft/tags/TagKey; WOODEN_BUTTONS d field_15499 + f Lnet/minecraft/tags/TagKey; STONE_BUTTONS e field_44590 + f Lnet/minecraft/tags/TagKey; BUTTONS f field_15493 + f Lnet/minecraft/tags/TagKey; WOOL_CARPETS g field_15479 + f Lnet/minecraft/tags/TagKey; WOODEN_DOORS h field_15494 + f Lnet/minecraft/tags/TagKey; MOB_INTERACTABLE_DOORS i field_52288 + f Lnet/minecraft/tags/TagKey; WOODEN_STAIRS j field_15502 + f Lnet/minecraft/tags/TagKey; WOODEN_SLABS k field_15468 + f Lnet/minecraft/tags/TagKey; WOODEN_FENCES l field_17619 + f Lnet/minecraft/tags/TagKey; PRESSURE_PLATES m field_24076 + f Lnet/minecraft/tags/TagKey; WOODEN_PRESSURE_PLATES n field_15477 + f Lnet/minecraft/tags/TagKey; STONE_PRESSURE_PLATES o field_24077 + f Lnet/minecraft/tags/TagKey; WOODEN_TRAPDOORS p field_15491 + f Lnet/minecraft/tags/TagKey; DOORS q field_15495 + f Lnet/minecraft/tags/TagKey; SAPLINGS r field_15462 + f Lnet/minecraft/tags/TagKey; LOGS_THAT_BURN s field_23210 + f Lnet/minecraft/tags/TagKey; OVERWORLD_NATURAL_LOGS t field_39030 + f Lnet/minecraft/tags/TagKey; LOGS u field_15475 + f Lnet/minecraft/tags/TagKey; DARK_OAK_LOGS v field_15485 + f Lnet/minecraft/tags/TagKey; OAK_LOGS w field_15482 + f Lnet/minecraft/tags/TagKey; BIRCH_LOGS x field_15498 + f Lnet/minecraft/tags/TagKey; ACACIA_LOGS y field_15458 + f Lnet/minecraft/tags/TagKey; CHERRY_LOGS z field_42608 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15069 + p 0 name + m ()V + m ()V +c net/minecraft/tags/CatVariantTags awf net/minecraft/class_7369 + f Lnet/minecraft/tags/TagKey; DEFAULT_SPAWNS a field_38695 + f Lnet/minecraft/tags/TagKey; FULL_MOON_SPAWNS b field_38696 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43046 + p 0 name + m ()V + m ()V +c net/minecraft/tags/DamageTypeTags awg net/minecraft/class_8103 + f Lnet/minecraft/tags/TagKey; ALWAYS_KILLS_ARMOR_STANDS A field_46211 + f Lnet/minecraft/tags/TagKey; CAN_BREAK_ARMOR_STAND B field_46230 + f Lnet/minecraft/tags/TagKey; BYPASSES_WOLF_ARMOR C field_49182 + f Lnet/minecraft/tags/TagKey; IS_PLAYER_ATTACK D field_50104 + f Lnet/minecraft/tags/TagKey; BURN_FROM_STEPPING E field_51527 + f Lnet/minecraft/tags/TagKey; PANIC_CAUSES F field_51990 + f Lnet/minecraft/tags/TagKey; PANIC_ENVIRONMENTAL_CAUSES G field_51991 + f Lnet/minecraft/tags/TagKey; DAMAGES_HELMET a field_42240 + f Lnet/minecraft/tags/TagKey; BYPASSES_ARMOR b field_42241 + f Lnet/minecraft/tags/TagKey; BYPASSES_SHIELD c field_43116 + f Lnet/minecraft/tags/TagKey; BYPASSES_INVULNERABILITY d field_42242 + f Lnet/minecraft/tags/TagKey; BYPASSES_COOLDOWN e field_42969 + f Lnet/minecraft/tags/TagKey; BYPASSES_EFFECTS f field_42243 + f Lnet/minecraft/tags/TagKey; BYPASSES_RESISTANCE g field_42244 + f Lnet/minecraft/tags/TagKey; BYPASSES_ENCHANTMENTS h field_42245 + f Lnet/minecraft/tags/TagKey; IS_FIRE i field_42246 + f Lnet/minecraft/tags/TagKey; IS_PROJECTILE j field_42247 + f Lnet/minecraft/tags/TagKey; WITCH_RESISTANT_TO k field_42248 + f Lnet/minecraft/tags/TagKey; IS_EXPLOSION l field_42249 + f Lnet/minecraft/tags/TagKey; IS_FALL m field_42250 + f Lnet/minecraft/tags/TagKey; IS_DROWNING n field_42251 + f Lnet/minecraft/tags/TagKey; IS_FREEZING o field_42252 + f Lnet/minecraft/tags/TagKey; IS_LIGHTNING p field_42253 + f Lnet/minecraft/tags/TagKey; NO_ANGER q field_42254 + f Lnet/minecraft/tags/TagKey; NO_IMPACT r field_42255 + f Lnet/minecraft/tags/TagKey; ALWAYS_MOST_SIGNIFICANT_FALL s field_42256 + f Lnet/minecraft/tags/TagKey; WITHER_IMMUNE_TO t field_42257 + f Lnet/minecraft/tags/TagKey; IGNITES_ARMOR_STANDS u field_42258 + f Lnet/minecraft/tags/TagKey; BURNS_ARMOR_STANDS v field_42259 + f Lnet/minecraft/tags/TagKey; AVOIDS_GUARDIAN_THORNS w field_42260 + f Lnet/minecraft/tags/TagKey; ALWAYS_TRIGGERS_SILVERFISH x field_42261 + f Lnet/minecraft/tags/TagKey; ALWAYS_HURTS_ENDER_DRAGONS y field_42970 + f Lnet/minecraft/tags/TagKey; NO_KNOCKBACK z field_45065 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_48762 + p 0 name + m ()V +c net/minecraft/tags/EnchantmentTags awh net/minecraft/class_9636 + f Lnet/minecraft/tags/TagKey; TRADES_SNOW_COMMON A field_51528 + f Lnet/minecraft/tags/TagKey; TRADES_SWAMP_COMMON B field_51529 + f Lnet/minecraft/tags/TagKey; TRADES_TAIGA_COMMON C field_51530 + f Lnet/minecraft/tags/TagKey; TRADES_DESERT_SPECIAL D field_51531 + f Lnet/minecraft/tags/TagKey; TRADES_JUNGLE_SPECIAL E field_51532 + f Lnet/minecraft/tags/TagKey; TRADES_PLAINS_SPECIAL F field_51533 + f Lnet/minecraft/tags/TagKey; TRADES_SAVANNA_SPECIAL G field_51534 + f Lnet/minecraft/tags/TagKey; TRADES_SNOW_SPECIAL H field_51535 + f Lnet/minecraft/tags/TagKey; TRADES_SWAMP_SPECIAL I field_51536 + f Lnet/minecraft/tags/TagKey; TRADES_TAIGA_SPECIAL J field_51537 + f Lnet/minecraft/tags/TagKey; TOOLTIP_ORDER a field_51362 + f Lnet/minecraft/tags/TagKey; ARMOR_EXCLUSIVE b field_51538 + f Lnet/minecraft/tags/TagKey; BOOTS_EXCLUSIVE c field_51539 + f Lnet/minecraft/tags/TagKey; BOW_EXCLUSIVE d field_51540 + f Lnet/minecraft/tags/TagKey; CROSSBOW_EXCLUSIVE e field_51541 + f Lnet/minecraft/tags/TagKey; DAMAGE_EXCLUSIVE f field_51542 + f Lnet/minecraft/tags/TagKey; MINING_EXCLUSIVE g field_51543 + f Lnet/minecraft/tags/TagKey; RIPTIDE_EXCLUSIVE h field_51544 + f Lnet/minecraft/tags/TagKey; TRADEABLE i field_51545 + f Lnet/minecraft/tags/TagKey; DOUBLE_TRADE_PRICE j field_51546 + f Lnet/minecraft/tags/TagKey; IN_ENCHANTING_TABLE k field_51547 + f Lnet/minecraft/tags/TagKey; ON_MOB_SPAWN_EQUIPMENT l field_51548 + f Lnet/minecraft/tags/TagKey; ON_TRADED_EQUIPMENT m field_51549 + f Lnet/minecraft/tags/TagKey; ON_RANDOM_LOOT n field_51550 + f Lnet/minecraft/tags/TagKey; CURSE o field_51551 + f Lnet/minecraft/tags/TagKey; SMELTS_LOOT p field_51552 + f Lnet/minecraft/tags/TagKey; PREVENTS_BEE_SPAWNS_WHEN_MINING q field_51553 + f Lnet/minecraft/tags/TagKey; PREVENTS_DECORATED_POT_SHATTERING r field_51554 + f Lnet/minecraft/tags/TagKey; PREVENTS_ICE_MELTING s field_51555 + f Lnet/minecraft/tags/TagKey; PREVENTS_INFESTED_SPAWNS t field_51556 + f Lnet/minecraft/tags/TagKey; TREASURE u field_51557 + f Lnet/minecraft/tags/TagKey; NON_TREASURE v field_51558 + f Lnet/minecraft/tags/TagKey; TRADES_DESERT_COMMON w field_51559 + f Lnet/minecraft/tags/TagKey; TRADES_JUNGLE_COMMON x field_51560 + f Lnet/minecraft/tags/TagKey; TRADES_PLAINS_COMMON y field_51561 + f Lnet/minecraft/tags/TagKey; TRADES_SAVANNA_COMMON z field_51562 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_59548 + p 0 name + m ()V +c net/minecraft/tags/EntityTypeTags awi net/minecraft/class_3483 + f Lnet/minecraft/tags/TagKey; NOT_SCARY_FOR_PUFFERFISH A field_48283 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_IMPALING B field_48284 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_BANE_OF_ARTHROPODS C field_48285 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_SMITE D field_49931 + f Lnet/minecraft/tags/TagKey; NO_ANGER_FROM_WIND_CHARGE E field_48713 + f Lnet/minecraft/tags/TagKey; IMMUNE_TO_OOZING F field_50105 + f Lnet/minecraft/tags/TagKey; IMMUNE_TO_INFESTED G field_50106 + f Lnet/minecraft/tags/TagKey; REDIRECTABLE_PROJECTILE H field_51503 + f Lnet/minecraft/tags/TagKey; SKELETONS a field_15507 + f Lnet/minecraft/tags/TagKey; ZOMBIES b field_46231 + f Lnet/minecraft/tags/TagKey; RAIDERS c field_19168 + f Lnet/minecraft/tags/TagKey; UNDEAD d field_46232 + f Lnet/minecraft/tags/TagKey; BEEHIVE_INHABITORS e field_20631 + f Lnet/minecraft/tags/TagKey; ARROWS f field_21508 + f Lnet/minecraft/tags/TagKey; IMPACT_PROJECTILES g field_22415 + f Lnet/minecraft/tags/TagKey; POWDER_SNOW_WALKABLE_MOBS h field_27855 + f Lnet/minecraft/tags/TagKey; AXOLOTL_ALWAYS_HOSTILES i field_28296 + f Lnet/minecraft/tags/TagKey; AXOLOTL_HUNT_TARGETS j field_29824 + f Lnet/minecraft/tags/TagKey; FREEZE_IMMUNE_ENTITY_TYPES k field_29825 + f Lnet/minecraft/tags/TagKey; FREEZE_HURTS_EXTRA_TYPES l field_29826 + f Lnet/minecraft/tags/TagKey; CAN_BREATHE_UNDER_WATER m field_46233 + f Lnet/minecraft/tags/TagKey; FROG_FOOD n field_38697 + f Lnet/minecraft/tags/TagKey; FALL_DAMAGE_IMMUNE o field_42971 + f Lnet/minecraft/tags/TagKey; DISMOUNTS_UNDERWATER p field_43096 + f Lnet/minecraft/tags/TagKey; NON_CONTROLLING_RIDER q field_45066 + f Lnet/minecraft/tags/TagKey; DEFLECTS_PROJECTILES r field_48286 + f Lnet/minecraft/tags/TagKey; CAN_TURN_IN_BOATS s field_47578 + f Lnet/minecraft/tags/TagKey; ILLAGER t field_48287 + f Lnet/minecraft/tags/TagKey; AQUATIC u field_48288 + f Lnet/minecraft/tags/TagKey; ARTHROPOD v field_48289 + f Lnet/minecraft/tags/TagKey; IGNORES_POISON_AND_REGEN w field_48290 + f Lnet/minecraft/tags/TagKey; INVERTED_HEALING_AND_HARM x field_48291 + f Lnet/minecraft/tags/TagKey; WITHER_FRIENDS y field_48292 + f Lnet/minecraft/tags/TagKey; ILLAGER_FRIENDS z field_48293 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15077 + p 0 name + m ()V +c net/minecraft/tags/FlatLevelGeneratorPresetTags awj net/minecraft/class_7088 + f Lnet/minecraft/tags/TagKey; VISIBLE a field_37402 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41292 + p 0 name + m ()V + m ()V +c net/minecraft/tags/FluidTags awk net/minecraft/class_3486 + f Lnet/minecraft/tags/TagKey; WATER a field_15517 + f Lnet/minecraft/tags/TagKey; LAVA b field_15518 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15095 + p 0 name + m ()V + m ()V +c net/minecraft/tags/GameEventTags awl net/minecraft/class_5698 + f Lnet/minecraft/tags/TagKey; VIBRATIONS a field_28090 + f Lnet/minecraft/tags/TagKey; WARDEN_CAN_LISTEN b field_38079 + f Lnet/minecraft/tags/TagKey; SHRIEKER_CAN_LISTEN c field_38698 + f Lnet/minecraft/tags/TagKey; IGNORE_VIBRATIONS_SNEAKING d field_28091 + f Lnet/minecraft/tags/TagKey; ALLAY_CAN_LISTEN e field_39031 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_32823 + p 0 name + m ()V + m ()V +c net/minecraft/tags/InstrumentTags awm net/minecraft/class_7441 + f Lnet/minecraft/tags/TagKey; REGULAR_GOAT_HORNS a field_39106 + f Lnet/minecraft/tags/TagKey; SCREAMING_GOAT_HORNS b field_39107 + f Lnet/minecraft/tags/TagKey; GOAT_HORNS c field_39108 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43676 + p 0 name + m ()V +c net/minecraft/tags/ItemTags awn net/minecraft/class_3489 + f Lnet/minecraft/tags/TagKey; CRIMSON_STEMS A field_21957 + f Lnet/minecraft/tags/TagKey; WARPED_STEMS B field_21958 + f Lnet/minecraft/tags/TagKey; BAMBOO_BLOCKS C field_40987 + f Lnet/minecraft/tags/TagKey; WART_BLOCKS D field_38837 + f Lnet/minecraft/tags/TagKey; BANNERS E field_15556 + f Lnet/minecraft/tags/TagKey; SAND F field_15532 + f Lnet/minecraft/tags/TagKey; SMELTS_TO_GLASS G field_42972 + f Lnet/minecraft/tags/TagKey; STAIRS H field_15526 + f Lnet/minecraft/tags/TagKey; SLABS I field_15535 + f Lnet/minecraft/tags/TagKey; WALLS J field_15560 + f Lnet/minecraft/tags/TagKey; ANVIL K field_15547 + f Lnet/minecraft/tags/TagKey; RAILS L field_15529 + f Lnet/minecraft/tags/TagKey; LEAVES M field_15558 + f Lnet/minecraft/tags/TagKey; TRAPDOORS N field_15548 + f Lnet/minecraft/tags/TagKey; SMALL_FLOWERS O field_15543 + f Lnet/minecraft/tags/TagKey; BEDS P field_16444 + f Lnet/minecraft/tags/TagKey; FENCES Q field_16585 + f Lnet/minecraft/tags/TagKey; TALL_FLOWERS R field_20343 + f Lnet/minecraft/tags/TagKey; FLOWERS S field_20344 + f Lnet/minecraft/tags/TagKey; PIGLIN_REPELLENTS T field_23064 + f Lnet/minecraft/tags/TagKey; PIGLIN_LOVED U field_24481 + f Lnet/minecraft/tags/TagKey; IGNORED_BY_PIGLIN_BABIES V field_26987 + f Lnet/minecraft/tags/TagKey; MEAT W field_49932 + f Lnet/minecraft/tags/TagKey; SNIFFER_FOOD X field_42609 + f Lnet/minecraft/tags/TagKey; PIGLIN_FOOD Y field_26988 + f Lnet/minecraft/tags/TagKey; FOX_FOOD Z field_28624 + f Lnet/minecraft/tags/TagKey; IRON_ORES aA field_28994 + f Lnet/minecraft/tags/TagKey; DIAMOND_ORES aB field_28995 + f Lnet/minecraft/tags/TagKey; REDSTONE_ORES aC field_28996 + f Lnet/minecraft/tags/TagKey; LAPIS_ORES aD field_28997 + f Lnet/minecraft/tags/TagKey; COAL_ORES aE field_29197 + f Lnet/minecraft/tags/TagKey; EMERALD_ORES aF field_29198 + f Lnet/minecraft/tags/TagKey; COPPER_ORES aG field_29199 + f Lnet/minecraft/tags/TagKey; NON_FLAMMABLE_WOOD aH field_23211 + f Lnet/minecraft/tags/TagKey; SOUL_FIRE_BASE_BLOCKS aI field_23801 + f Lnet/minecraft/tags/TagKey; CANDLES aJ field_26989 + f Lnet/minecraft/tags/TagKey; DIRT aK field_36269 + f Lnet/minecraft/tags/TagKey; TERRACOTTA aL field_36270 + f Lnet/minecraft/tags/TagKey; WOOL a field_15544 + f Lnet/minecraft/tags/TagKey; COMPLETES_FIND_TREE_TUTORIAL aM field_38836 + f Lnet/minecraft/tags/TagKey; BOATS aN field_15536 + f Lnet/minecraft/tags/TagKey; CHEST_BOATS aO field_38080 + f Lnet/minecraft/tags/TagKey; FISHES aP field_15527 + f Lnet/minecraft/tags/TagKey; SIGNS aQ field_15533 + f Lnet/minecraft/tags/TagKey; CREEPER_DROP_MUSIC_DISCS aR field_23969 + f Lnet/minecraft/tags/TagKey; COALS aS field_17487 + f Lnet/minecraft/tags/TagKey; ARROWS aT field_18317 + f Lnet/minecraft/tags/TagKey; LECTERN_BOOKS aU field_21465 + f Lnet/minecraft/tags/TagKey; BOOKSHELF_BOOKS aV field_40109 + f Lnet/minecraft/tags/TagKey; BEACON_PAYMENT_ITEMS aW field_22277 + f Lnet/minecraft/tags/TagKey; STONE_TOOL_MATERIALS aX field_23802 + f Lnet/minecraft/tags/TagKey; STONE_CRAFTING_MATERIALS aY field_25808 + f Lnet/minecraft/tags/TagKey; FREEZE_IMMUNE_WEARABLES aZ field_28041 + f Lnet/minecraft/tags/TagKey; COW_FOOD aa field_49933 + f Lnet/minecraft/tags/TagKey; GOAT_FOOD ab field_49934 + f Lnet/minecraft/tags/TagKey; SHEEP_FOOD ac field_49935 + f Lnet/minecraft/tags/TagKey; WOLF_FOOD ad field_49936 + f Lnet/minecraft/tags/TagKey; CAT_FOOD ae field_49937 + f Lnet/minecraft/tags/TagKey; HORSE_FOOD af field_49938 + f Lnet/minecraft/tags/TagKey; HORSE_TEMPT_ITEMS ag field_49939 + f Lnet/minecraft/tags/TagKey; CAMEL_FOOD ah field_49940 + f Lnet/minecraft/tags/TagKey; ARMADILLO_FOOD ai field_49941 + f Lnet/minecraft/tags/TagKey; BEE_FOOD aj field_49942 + f Lnet/minecraft/tags/TagKey; CHICKEN_FOOD ak field_49943 + f Lnet/minecraft/tags/TagKey; FROG_FOOD al field_49944 + f Lnet/minecraft/tags/TagKey; HOGLIN_FOOD am field_49945 + f Lnet/minecraft/tags/TagKey; LLAMA_FOOD an field_49946 + f Lnet/minecraft/tags/TagKey; LLAMA_TEMPT_ITEMS ao field_49947 + f Lnet/minecraft/tags/TagKey; OCELOT_FOOD ap field_49948 + f Lnet/minecraft/tags/TagKey; PANDA_FOOD aq field_49949 + f Lnet/minecraft/tags/TagKey; PIG_FOOD ar field_49950 + f Lnet/minecraft/tags/TagKey; RABBIT_FOOD as field_49951 + f Lnet/minecraft/tags/TagKey; STRIDER_FOOD at field_49952 + f Lnet/minecraft/tags/TagKey; STRIDER_TEMPT_ITEMS au field_49953 + f Lnet/minecraft/tags/TagKey; TURTLE_FOOD av field_49954 + f Lnet/minecraft/tags/TagKey; PARROT_FOOD aw field_49955 + f Lnet/minecraft/tags/TagKey; PARROT_POISONOUS_FOOD ax field_49956 + f Lnet/minecraft/tags/TagKey; AXOLOTL_FOOD ay field_49957 + f Lnet/minecraft/tags/TagKey; GOLD_ORES az field_23065 + f Lnet/minecraft/tags/TagKey; CHEST_ARMOR_ENCHANTABLE bA field_48301 + f Lnet/minecraft/tags/TagKey; HEAD_ARMOR_ENCHANTABLE bB field_48302 + f Lnet/minecraft/tags/TagKey; ARMOR_ENCHANTABLE bC field_48303 + f Lnet/minecraft/tags/TagKey; SWORD_ENCHANTABLE bD field_48304 + f Lnet/minecraft/tags/TagKey; FIRE_ASPECT_ENCHANTABLE bE field_50107 + f Lnet/minecraft/tags/TagKey; SHARP_WEAPON_ENCHANTABLE bF field_50108 + f Lnet/minecraft/tags/TagKey; WEAPON_ENCHANTABLE bG field_48305 + f Lnet/minecraft/tags/TagKey; MINING_ENCHANTABLE bH field_48306 + f Lnet/minecraft/tags/TagKey; MINING_LOOT_ENCHANTABLE bI field_48307 + f Lnet/minecraft/tags/TagKey; FISHING_ENCHANTABLE bJ field_48308 + f Lnet/minecraft/tags/TagKey; TRIDENT_ENCHANTABLE bK field_48309 + f Lnet/minecraft/tags/TagKey; DURABILITY_ENCHANTABLE bL field_48310 + f Lnet/minecraft/tags/TagKey; PLANKS b field_15537 + f Lnet/minecraft/tags/TagKey; BOW_ENCHANTABLE bM field_48311 + f Lnet/minecraft/tags/TagKey; EQUIPPABLE_ENCHANTABLE bN field_48312 + f Lnet/minecraft/tags/TagKey; CROSSBOW_ENCHANTABLE bO field_48313 + f Lnet/minecraft/tags/TagKey; VANISHING_ENCHANTABLE bP field_48314 + f Lnet/minecraft/tags/TagKey; MACE_ENCHANTABLE bQ field_50109 + f Lnet/minecraft/tags/TagKey; DAMPENS_VIBRATIONS ba field_28300 + f Lnet/minecraft/tags/TagKey; CLUSTER_MAX_HARVESTABLES bb field_29544 + f Lnet/minecraft/tags/TagKey; COMPASSES bc field_38699 + f Lnet/minecraft/tags/TagKey; HANGING_SIGNS bd field_40108 + f Lnet/minecraft/tags/TagKey; CREEPER_IGNITERS be field_41662 + f Lnet/minecraft/tags/TagKey; NOTE_BLOCK_TOP_INSTRUMENTS bf field_41757 + f Lnet/minecraft/tags/TagKey; FOOT_ARMOR bg field_48294 + f Lnet/minecraft/tags/TagKey; LEG_ARMOR bh field_48295 + f Lnet/minecraft/tags/TagKey; CHEST_ARMOR bi field_48296 + f Lnet/minecraft/tags/TagKey; HEAD_ARMOR bj field_48297 + f Lnet/minecraft/tags/TagKey; SKULLS bk field_48298 + f Lnet/minecraft/tags/TagKey; TRIMMABLE_ARMOR bl field_41890 + f Lnet/minecraft/tags/TagKey; TRIM_MATERIALS bm field_41891 + f Lnet/minecraft/tags/TagKey; TRIM_TEMPLATES bn field_41892 + f Lnet/minecraft/tags/TagKey; DECORATED_POT_SHERDS bo field_42610 + f Lnet/minecraft/tags/TagKey; DECORATED_POT_INGREDIENTS bp field_44701 + f Lnet/minecraft/tags/TagKey; SWORDS bq field_42611 + f Lnet/minecraft/tags/TagKey; AXES br field_42612 + f Lnet/minecraft/tags/TagKey; HOES bs field_42613 + f Lnet/minecraft/tags/TagKey; PICKAXES bt field_42614 + f Lnet/minecraft/tags/TagKey; SHOVELS bu field_42615 + f Lnet/minecraft/tags/TagKey; BREAKS_DECORATED_POTS bv field_42617 + f Lnet/minecraft/tags/TagKey; VILLAGER_PLANTABLE_SEEDS bw field_44591 + f Lnet/minecraft/tags/TagKey; DYEABLE bx field_48803 + f Lnet/minecraft/tags/TagKey; FOOT_ARMOR_ENCHANTABLE by field_48299 + f Lnet/minecraft/tags/TagKey; LEG_ARMOR_ENCHANTABLE bz field_48300 + f Lnet/minecraft/tags/TagKey; STONE_BRICKS c field_15531 + f Lnet/minecraft/tags/TagKey; WOODEN_BUTTONS d field_15555 + f Lnet/minecraft/tags/TagKey; STONE_BUTTONS e field_44592 + f Lnet/minecraft/tags/TagKey; BUTTONS f field_15551 + f Lnet/minecraft/tags/TagKey; WOOL_CARPETS g field_15542 + f Lnet/minecraft/tags/TagKey; WOODEN_DOORS h field_15552 + f Lnet/minecraft/tags/TagKey; WOODEN_STAIRS i field_15557 + f Lnet/minecraft/tags/TagKey; WOODEN_SLABS j field_15534 + f Lnet/minecraft/tags/TagKey; WOODEN_FENCES k field_17620 + f Lnet/minecraft/tags/TagKey; FENCE_GATES l field_40858 + f Lnet/minecraft/tags/TagKey; WOODEN_PRESSURE_PLATES m field_15540 + f Lnet/minecraft/tags/TagKey; WOODEN_TRAPDOORS n field_15550 + f Lnet/minecraft/tags/TagKey; DOORS o field_15553 + f Lnet/minecraft/tags/TagKey; SAPLINGS p field_15528 + f Lnet/minecraft/tags/TagKey; LOGS_THAT_BURN q field_23212 + f Lnet/minecraft/tags/TagKey; LOGS r field_15539 + f Lnet/minecraft/tags/TagKey; DARK_OAK_LOGS s field_15546 + f Lnet/minecraft/tags/TagKey; OAK_LOGS t field_15545 + f Lnet/minecraft/tags/TagKey; BIRCH_LOGS u field_15554 + f Lnet/minecraft/tags/TagKey; ACACIA_LOGS v field_15525 + f Lnet/minecraft/tags/TagKey; CHERRY_LOGS w field_42618 + f Lnet/minecraft/tags/TagKey; JUNGLE_LOGS x field_15538 + f Lnet/minecraft/tags/TagKey; SPRUCE_LOGS y field_15549 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS z field_37403 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; bind a method_15102 + p 0 name + m ()V + m ()V +c net/minecraft/tags/PaintingVariantTags awo net/minecraft/class_7406 + f Lnet/minecraft/tags/TagKey; PLACEABLE a field_38929 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43384 + p 0 name + m ()V + m ()V +c net/minecraft/tags/PoiTypeTags awp net/minecraft/class_7473 + f Lnet/minecraft/tags/TagKey; ACQUIRABLE_JOB_SITE a field_39262 + f Lnet/minecraft/tags/TagKey; VILLAGE b field_39263 + f Lnet/minecraft/tags/TagKey; BEE_HOME c field_39264 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43935 + p 0 name + m ()V + m ()V +c net/minecraft/tags/StructureTags awq net/minecraft/class_7045 + f Lnet/minecraft/tags/TagKey; EYE_OF_ENDER_LOCATED a field_37040 + f Lnet/minecraft/tags/TagKey; DOLPHIN_LOCATED b field_37041 + f Lnet/minecraft/tags/TagKey; ON_WOODLAND_EXPLORER_MAPS c field_37042 + f Lnet/minecraft/tags/TagKey; ON_OCEAN_EXPLORER_MAPS d field_37043 + f Lnet/minecraft/tags/TagKey; ON_SAVANNA_VILLAGE_MAPS e field_46158 + f Lnet/minecraft/tags/TagKey; ON_DESERT_VILLAGE_MAPS f field_46159 + f Lnet/minecraft/tags/TagKey; ON_PLAINS_VILLAGE_MAPS g field_46160 + f Lnet/minecraft/tags/TagKey; ON_TAIGA_VILLAGE_MAPS h field_46161 + f Lnet/minecraft/tags/TagKey; ON_SNOWY_VILLAGE_MAPS i field_46162 + f Lnet/minecraft/tags/TagKey; ON_JUNGLE_EXPLORER_MAPS j field_46163 + f Lnet/minecraft/tags/TagKey; ON_SWAMP_EXPLORER_MAPS k field_46164 + f Lnet/minecraft/tags/TagKey; ON_TREASURE_MAPS l field_37044 + f Lnet/minecraft/tags/TagKey; ON_TRIAL_CHAMBERS_MAPS m field_49958 + f Lnet/minecraft/tags/TagKey; CATS_SPAWN_IN n field_37404 + f Lnet/minecraft/tags/TagKey; CATS_SPAWN_AS_BLACK o field_37405 + f Lnet/minecraft/tags/TagKey; VILLAGE p field_37045 + f Lnet/minecraft/tags/TagKey; MINESHAFT q field_37046 + f Lnet/minecraft/tags/TagKey; SHIPWRECK r field_37047 + f Lnet/minecraft/tags/TagKey; RUINED_PORTAL s field_37048 + f Lnet/minecraft/tags/TagKey; OCEAN_RUIN t field_37049 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41006 + p 0 name + m ()V +c net/minecraft/tags/TagBuilder awr net/minecraft/class_3495 + f Ljava/util/List; entries a field_23688 + m ()Lnet/minecraft/tags/TagBuilder; create a method_26778 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addElement a method_26784 + p 1 elementLocation + m (Lnet/minecraft/tags/TagEntry;)Lnet/minecraft/tags/TagBuilder; add a method_27064 + p 1 entry + m ()Ljava/util/List; build b method_26782 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addOptionalElement b method_34891 + p 1 elementLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addTag c method_26787 + p 1 tagLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addOptionalTag d method_34892 + p 1 tagLocation + m ()V +c net/minecraft/tags/TagEntry aws net/minecraft/class_3497 + f Lcom/mojang/serialization/Codec; CODEC a field_39265 + f Lcom/mojang/serialization/Codec; FULL_CODEC b field_39266 + f Lnet/minecraft/resources/ResourceLocation; id c field_15584 + f Z tag d field_39267 + f Z required e field_39268 + m ()Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; elementOrTag a method_43936 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; element a method_43937 + p 0 elementLocation + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/function/Consumer;)Z build a method_26790 + p 1 lookup + p 2 consumer + m (Lnet/minecraft/tags/TagEntry;)Lcom/mojang/datafixers/util/Either; method_43938 a method_43938 + m (Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation;)Lnet/minecraft/tags/TagEntry; method_43939 a method_43939 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/tags/TagEntry; method_43940 a method_43940 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43941 a method_43941 + m (Ljava/util/function/Consumer;)V visitRequiredDependencies a method_32831 + p 1 visitor + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Z verifyIfPresent a method_32832 + p 1 elementPredicate + p 2 tagPredicate + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; optionalElement b method_43942 + p 0 elementLocation + m (Lnet/minecraft/tags/TagEntry;)Lnet/minecraft/tags/TagEntry; method_43943 b method_43943 + m (Ljava/util/function/Consumer;)V visitOptionalDependencies b method_43944 + p 1 visitor + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; tag c method_43945 + p 0 tagLocation + m (Lnet/minecraft/tags/TagEntry;)Ljava/lang/Boolean; method_43946 c method_43946 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; optionalTag d method_43947 + p 0 tagLocation + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V + p 1 id + p 2 tag + p 3 required + m (Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation;Z)V + p 1 tagOrElementLocation + p 2 required + m ()V +c net/minecraft/tags/TagEntry$Lookup aws$a net/minecraft/class_3497$class_7474 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; element a method_43948 + p 1 elementLocation + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; tag b method_43949 + p 1 tagLocation +c net/minecraft/tags/TagFile awt net/minecraft/class_7475 + f Lcom/mojang/serialization/Codec; CODEC a field_39269 + f Ljava/util/List; entries b comp_811 + f Z replace c comp_812 + m ()Ljava/util/List; entries a comp_811 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43950 a method_43950 + m ()Z replace b comp_812 + m (Ljava/util/List;Z)V + m ()V +c net/minecraft/tags/TagKey awu net/minecraft/class_6862 + c

Interface {@link net.fabricmc.fabric.api.tag.FabricTagKey} injected by mod fabric-convention-tags-v2

+ f Lnet/minecraft/resources/ResourceKey; registry a comp_326 + f Lnet/minecraft/resources/ResourceLocation; location b comp_327 + f Lcom/google/common/collect/Interner; VALUES c field_36394 + m ()Lnet/minecraft/resources/ResourceKey; registry a comp_326 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_40090 + p 0 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; create a method_40092 + p 0 registry + p 1 location + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_40091 a method_40091 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40089 a method_40089 + m ()Lnet/minecraft/resources/ResourceLocation; location b comp_327 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; hashedCodec b method_40093 + p 0 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; method_40094 b method_40094 + m ()Ljava/lang/String; method_49429 c method_49429 + m (Lnet/minecraft/resources/ResourceKey;)Z isFor c method_41007 + p 1 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; method_40095 c method_40095 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast d method_41008 + p 1 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)V + p 1 registry + p 2 location + m ()V +c net/minecraft/tags/TagLoader awv net/minecraft/class_3503 + f Lorg/slf4j/Logger; LOGGER a field_15607 + f Ljava/util/function/Function; idToValue b field_15609 + f Ljava/lang/String; directory c field_15605 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; method_43951 a method_43951 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)V method_33175 a method_33175 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; load a method_33174 + p 1 resourceManager + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/List;)Lcom/mojang/datafixers/util/Either; build a method_43952 + p 1 lookup + p 2 entries + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/tags/TagLoader$SortingEntry;)V method_51476 a method_51476 + m (Lnet/minecraft/util/DependencySorter;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51477 a method_51477 + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/tags/TagEntry;)V method_43954 a method_43954 + m (Ljava/util/Map;)Ljava/util/Map; build a method_18242 + p 1 builders + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)V method_32840 a method_32840 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; loadAndBuild b method_33176 + p 1 resourceManager + m (Ljava/util/function/Function;Ljava/lang/String;)V + p 1 idToValue + p 2 directory + m ()V +c net/minecraft/tags/TagLoader$1 awv$1 net/minecraft/class_3503$1 + f Ljava/util/Map; val$newTags a field_39270 + f Lnet/minecraft/tags/TagLoader; field_39271 b field_39271 + m (Lnet/minecraft/tags/TagLoader;Ljava/util/Map;)V +c net/minecraft/tags/TagLoader$EntryWithSource awv$a net/minecraft/class_3503$class_5145 + f Lnet/minecraft/tags/TagEntry; entry a comp_324 + f Ljava/lang/String; source b comp_325 + m ()Lnet/minecraft/tags/TagEntry; entry a comp_324 + m ()Ljava/lang/String; source b comp_325 + m (Lnet/minecraft/tags/TagEntry;Ljava/lang/String;)V +c net/minecraft/tags/TagLoader$SortingEntry awv$b net/minecraft/class_3503$class_8522 + f Ljava/util/List; entries a comp_1486 + m ()Ljava/util/List; entries a comp_1486 + m (Ljava/util/function/Consumer;Lnet/minecraft/tags/TagLoader$EntryWithSource;)V method_51479 a method_51479 + m (Ljava/util/function/Consumer;Lnet/minecraft/tags/TagLoader$EntryWithSource;)V method_51481 b method_51481 + m (Ljava/util/List;)V +c net/minecraft/tags/TagManager aww net/minecraft/class_3505 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_28312 + f Ljava/util/List; results b field_36396 + m ()Ljava/util/List; getResult a method_40096 + m (I)[Ljava/util/concurrent/CompletableFuture; method_33177 a method_33177 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagLoader;Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/tags/TagManager$LoadResult; method_33181 a method_33181 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Ljava/util/concurrent/CompletableFuture; createLoader a method_33178 + p 1 resourceManager + p 2 backgroundExecutor + p 3 entry + m (Ljava/util/List;Ljava/lang/Void;)V method_40098 a method_40098 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Ljava/util/concurrent/CompletableFuture; method_40100 b method_40100 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/tags/TagManager$LoadResult aww$a net/minecraft/class_3505$class_6863 + f Lnet/minecraft/resources/ResourceKey; key a comp_328 + f Ljava/util/Map; tags b comp_329 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_328 + m ()Ljava/util/Map; tags b comp_329 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V +c net/minecraft/tags/TagNetworkSerialization awx net/minecraft/class_6864 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;Lnet/minecraft/tags/TagNetworkSerialization$TagOutput;)V deserializeTagsFromNetwork a method_40106 + p 0 registryKey + p 1 registry + p 2 networkPayload + p 3 output + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagNetworkSerialization$TagOutput;Lnet/minecraft/resources/ResourceLocation;Lit/unimi/dsi/fastutil/ints/IntList;)V method_40107 a method_40107 + m (Lcom/mojang/datafixers/util/Pair;)Z method_40101 a method_40101 + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/Map; serializeTagsToNetwork a method_40105 + p 0 registryAccess + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload; serializeToNetwork a method_40102 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)V method_40103 a method_40103 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Lcom/mojang/datafixers/util/Pair; method_40104 a method_40104 + m ()V +c net/minecraft/tags/TagNetworkSerialization$NetworkPayload awx$a net/minecraft/class_6864$class_5748 + f Ljava/util/Map; tags a field_28304 + m ()I size a method_56531 + m (Lnet/minecraft/core/Registry;)V applyToRegistry a method_56532 + p 1 registry + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_33159 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload; read b method_33160 + p 0 buffer + m (Ljava/util/Map;)V + p 1 tags +c net/minecraft/tags/TagNetworkSerialization$TagOutput awx$b net/minecraft/class_6864$class_6865 +c net/minecraft/tags/WorldPresetTags awy net/minecraft/class_7089 + f Lnet/minecraft/tags/TagKey; NORMAL a field_37406 + f Lnet/minecraft/tags/TagKey; EXTENDED b field_37407 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41293 + p 0 name + m ()V + m ()V +c net/minecraft/tags/package-info awz net/minecraft/class_5994 +c net/minecraft/util/AbortableIterationConsumer axa net/minecraft/class_7927 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47542 a method_47542 +c net/minecraft/util/AbortableIterationConsumer$Continuation axa$a net/minecraft/class_7927$class_7928 + f Lnet/minecraft/util/AbortableIterationConsumer$Continuation; CONTINUE a field_41283 + f Lnet/minecraft/util/AbortableIterationConsumer$Continuation; ABORT b field_41284 + f [Lnet/minecraft/util/AbortableIterationConsumer$Continuation; $VALUES c field_41285 + m ()Z shouldAbort a method_47543 + m ()[Lnet/minecraft/util/AbortableIterationConsumer$Continuation; $values b method_47544 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/ArrayListDeque axb net/minecraft/class_8623 + f I MIN_GROWTH a field_45067 + f [Ljava/lang/Object; contents b field_45068 + f I head c field_45069 + f I size d field_45070 + m ()I capacity a method_52450 + m (I)I getIndex a method_52451 + p 1 index + m (II)V verifyIndexInRange a method_52452 + p 0 index + p 1 size + m ([Ljava/lang/Object;I)V copyCount a method_52453 + p 1 output + p 2 count + m (I)V verifyIndexInRange b method_52455 + p 1 index + m ()V grow c method_52454 + m (I)Ljava/lang/Object; getInner c method_52456 + p 1 index + m ()V + m (I)V + p 1 size +c net/minecraft/util/ArrayListDeque$DescendingIterator axb$a net/minecraft/class_8623$class_8624 + f Lnet/minecraft/util/ArrayListDeque; field_45071 a field_45071 + f I index b field_45072 + m (Lnet/minecraft/util/ArrayListDeque;)V +c net/minecraft/util/ArrayListDeque$ReversedView axb$b net/minecraft/class_8623$class_9633 + f Lnet/minecraft/util/ArrayListDeque; field_51345 a field_51345 + f Lnet/minecraft/util/ArrayListDeque; source b field_51346 + m (I)I reverseIndex a method_59514 + p 1 index + m (Lnet/minecraft/util/ArrayListDeque;Lnet/minecraft/util/ArrayListDeque;)V + p 2 source +c net/minecraft/util/BitStorage axc net/minecraft/class_6490 + m ()[J getRaw a method_15212 + c Gets the long array that is used to store the data in this BitArray. This is useful for sending packet data. + m (I)I get a method_15211 + c Gets the entry at the given index + p 1 index + m (II)I getAndSet a method_15214 + p 1 index + p 2 value + m (Ljava/util/function/IntConsumer;)V getAll a method_21739 + p 1 consumer + m ([I)V unpack a method_39892 + p 1 array + m ()I getSize b method_15215 + m (II)V set b method_15210 + c Sets the entry at the given location to the given value + p 1 index + p 2 value + m ()I getBits c method_34896 + m ()Lnet/minecraft/util/BitStorage; copy d method_39939 +c net/minecraft/util/Brightness axd net/minecraft/class_8104 + f Lcom/mojang/serialization/Codec; LIGHT_VALUE_CODEC a field_42262 + f Lcom/mojang/serialization/Codec; CODEC b field_42263 + f Lnet/minecraft/util/Brightness; FULL_BRIGHT c field_42264 + f I block d comp_1240 + f I sky e comp_1241 + m ()I pack a method_48763 + m (I)Lnet/minecraft/util/Brightness; unpack a method_48764 + p 0 packedBrightness + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48765 a method_48765 + m ()I block b comp_1240 + m ()I sky c comp_1241 + m (II)V + m ()V +c net/minecraft/util/ByIdMap axe net/minecraft/class_7995 + m (I[Ljava/lang/Object;Ljava/lang/Object;I)Ljava/lang/Object; method_47911 a method_47911 + m (Ljava/util/function/IntFunction;Ljava/lang/Object;I)Ljava/lang/Object; method_47912 a method_47912 + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)Ljava/util/function/IntFunction; createMap a method_47913 + p 0 keyExtractor + p 1 values + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy;)Ljava/util/function/IntFunction; continuous a method_47914 + p 0 keyExtractor + p 1 values + p 2 outOfBoundsStrategy + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/function/IntFunction; sparse a method_47915 + p 0 keyExtractor + p 1 values + p 2 fallback + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47916 a method_47916 + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)[Ljava/lang/Object; createSortedArray b method_47917 + p 0 keyExtractor + p 1 values + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47918 b method_47918 + m ()V +c net/minecraft/util/ByIdMap$OutOfBoundsStrategy axe$a net/minecraft/class_7995$class_7996 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; ZERO a field_41664 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; WRAP b field_41665 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; CLAMP c field_41666 + f [Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; $VALUES d field_41667 + m ()[Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; $values a method_47919 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/ClassInstanceMultiMap axf net/minecraft/class_3509 + f Ljava/util/Map; byClass a field_15636 + f Ljava/lang/Class; baseClass b field_15637 + f Ljava/util/List; allInstances c field_15635 + m ()Ljava/util/List; getAllInstances a method_34897 + m (Ljava/lang/Class;)Ljava/util/Collection; find a method_15216 + p 1 type + m (Ljava/lang/Class;)Ljava/util/List; method_15217 b method_15217 + m (Ljava/lang/Class;)V + p 1 baseClass +c net/minecraft/util/ClassTreeIdRegistry axg net/minecraft/class_9227 + f I NO_ID_VALUE a field_49052 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; classToLastIdCache b field_49053 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_56938 a method_56938 + m (Ljava/lang/Class;)I getLastIdFor a method_56939 + p 1 clazz + m (Ljava/lang/Class;)I getCount b method_56940 + p 1 clazz + m (Ljava/lang/Class;)I define c method_56941 + p 1 clazz + m ()V +c net/minecraft/util/ColorRGBA axh net/minecraft/class_8805 + f Lcom/mojang/serialization/Codec; CODEC a field_46234 + f I rgba b comp_1971 + f Ljava/lang/String; CUSTOM_COLOR_PREFIX c field_46235 + m ()I rgba a comp_1971 + m (Ljava/lang/NumberFormatException;)Ljava/lang/String; method_53913 a method_53913 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53914 a method_53914 + m ()Ljava/lang/String; formatValue b method_53915 + m (Ljava/lang/String;)Ljava/lang/String; method_53916 b method_53916 + m (I)V + m ()V +c net/minecraft/util/CommonColors axi net/minecraft/class_8012 + f I WHITE a field_42973 + f I BLACK b field_42974 + f I GRAY c field_44941 + f I LIGHT_GRAY d field_45073 + f I LIGHTER_GRAY e field_49788 + f I RED f field_41758 + f I GREEN g field_52312 + f I BLUE h field_52313 + f I SOFT_RED i field_46652 + f I YELLOW j field_46767 + f I SOFT_YELLOW k field_46768 + m ()V +c net/minecraft/util/CommonLinks axj net/minecraft/class_8216 + f Ljava/net/URI; GDPR a field_43117 + f Ljava/net/URI; EULA b field_43118 + f Ljava/net/URI; PRIVACY_STATEMENT c field_45074 + f Ljava/net/URI; ATTRIBUTION d field_43119 + f Ljava/net/URI; LICENSES e field_43120 + f Ljava/net/URI; BUY_MINECRAFT_JAVA f field_43121 + f Ljava/net/URI; ACCOUNT_SETTINGS g field_43122 + f Ljava/net/URI; SNAPSHOT_FEEDBACK h field_43123 + f Ljava/net/URI; RELEASE_FEEDBACK i field_43124 + f Ljava/net/URI; SNAPSHOT_BUGS_FEEDBACK j field_43125 + f Ljava/net/URI; GENERAL_HELP k field_46769 + f Ljava/net/URI; ACCESSIBILITY_HELP l field_43126 + f Ljava/net/URI; REPORTING_HELP m field_43127 + f Ljava/net/URI; SUSPENSION_HELP n field_43128 + f Ljava/net/URI; BLOCKING_HELP o field_43129 + f Ljava/net/URI; SYMLINK_HELP p field_44949 + f Ljava/net/URI; START_REALMS_TRIAL q field_43130 + f Ljava/net/URI; BUY_REALMS r field_43131 + f Ljava/net/URI; REALMS_TERMS s field_43132 + f Ljava/net/URI; REALMS_CONTENT_CREATION t field_43133 + m (Ljava/lang/String;Ljava/util/UUID;)Ljava/lang/String; extendRealms a method_49719 + p 0 subscriptionId + p 1 profileId + m (Ljava/lang/String;Ljava/util/UUID;Z)Ljava/lang/String; extendRealms a method_49720 + p 0 subscriptionId + p 1 profileId + p 2 isTrial + m ()V + m ()V +c net/minecraft/util/CrudeIncrementalIntIdentityHashBiMap axk net/minecraft/class_3513 + f I NOT_FOUND b field_29828 + f Ljava/lang/Object; EMPTY_SLOT c field_15650 + f F LOADFACTOR d field_29829 + f [Ljava/lang/Object; keys e field_15651 + f [I values f field_15646 + f [Ljava/lang/Object; byId g field_15647 + f I nextId h field_15649 + f I size i field_15648 + m ()V clear a method_15229 + m (Ljava/lang/Object;I)V addMapping a method_15230 + c Puts the provided object value with the integer key. + p 1 object + p 2 intKey + m ()Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; copy b method_39940 + m (Ljava/lang/Object;)Z contains b method_34904 + p 1 value + m (Ljava/lang/Object;I)I indexOf b method_15232 + p 1 object + p 2 startIndex + m (I)Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; create c method_37913 + p 0 size + m ()I nextId d method_15226 + m (I)Z contains d method_34903 + p 1 value + m (Ljava/lang/Object;)I add d method_15225 + c Adds the given object while expanding this map + p 1 object + m (I)I getValue e method_15222 + p 1 key + m (Ljava/lang/Object;)I hash e method_15228 + p 1 object + m (I)V grow f method_15224 + c Rehashes the map to the new capacity + p 1 capacity + m (I)I findEmpty g method_15223 + p 1 startIndex + m (I)V + p 1 size + m ([Ljava/lang/Object;[I[Ljava/lang/Object;II)V + p 1 keys + p 2 values + p 3 byId + p 4 nextId + p 5 size + m ()V +c net/minecraft/util/Crypt axl net/minecraft/class_3515 + f Ljava/lang/String; SIGNING_ALGORITHM a field_39109 + f I SIGNATURE_BYTES b field_40111 + f Ljava/lang/String; RSA_PUBLIC_KEY_HEADER c field_39033 + f Ljava/lang/String; MIME_LINE_SEPARATOR d field_39034 + f Ljava/util/Base64$Encoder; MIME_ENCODER e field_39272 + f Lcom/mojang/serialization/Codec; PUBLIC_KEY_CODEC f field_39035 + f Lcom/mojang/serialization/Codec; PRIVATE_KEY_CODEC g field_39036 + f Ljava/lang/String; SYMMETRIC_ALGORITHM h field_29830 + f I SYMMETRIC_BITS i field_29831 + f Ljava/lang/String; ASYMMETRIC_ALGORITHM j field_29832 + f I ASYMMETRIC_BITS k field_29833 + f Ljava/lang/String; BYTE_ENCODING l field_29834 + f Ljava/lang/String; HASH_ALGORITHM m field_29835 + f Ljava/lang/String; PEM_RSA_PRIVATE_KEY_HEADER n field_39037 + f Ljava/lang/String; PEM_RSA_PRIVATE_KEY_FOOTER o field_39038 + f Ljava/lang/String; RSA_PUBLIC_KEY_FOOTER p field_39039 + m ()Ljavax/crypto/SecretKey; generateSecretKey a method_15239 + c Generate a new shared secret AES key from a secure random source + m (ILjava/lang/String;Ljava/security/Key;)Ljavax/crypto/Cipher; setupCipher a method_15241 + c Creates the Cipher Instance. + p 0 opMode + p 1 transformation + p 2 key + m (ILjava/security/Key;)Ljavax/crypto/Cipher; getCipher a method_15235 + c Creates a Cipher instance using the AES/CFB8/NoPadding algorithm. Used for protocol encryption. + p 0 opMode + p 1 key + m (ILjava/security/Key;[B)[B cipherData a method_15244 + c Encrypt or decrypt byte[] data using the specified key + p 0 opMode + p 1 key + p 2 data + m (Ljava/lang/String;)Ljava/security/PrivateKey; stringToPemRsaPrivateKey a method_43519 + p 0 keyBase64 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/util/Crypt$ByteArrayToKeyFunction;)Ljava/security/Key; rsaStringToKey a method_43520 + p 0 keyBase64 + p 1 header + p 2 footer + p 3 keyFunction + m (Ljava/lang/String;Ljava/security/PublicKey;Ljavax/crypto/SecretKey;)[B digestData a method_15240 + c Compute a serverId hash for use by sendSessionRequest() + p 0 serverId + p 1 publicKey + p 2 secretKey + m (Ljava/security/Key;[B)[B encryptUsingKey a method_15238 + c Encrypt byte[] data with RSA public key + p 0 key + p 1 data + m (Ljava/security/PrivateKey;)Ljava/lang/String; pemRsaPrivateKeyToString a method_43521 + p 0 key + m (Ljava/security/PrivateKey;[B)Ljavax/crypto/SecretKey; decryptByteToSecretKey a method_15234 + c Decrypt shared secret AES key using RSA private key + p 0 key + p 1 secretKeyEncrypted + m (Ljava/security/PublicKey;)Ljava/lang/String; rsaPublicKeyToString a method_43522 + p 0 key + m ([B)Ljava/security/PublicKey; byteToPublicKey a method_15242 + c Create a new PublicKey from encoded X.509 data + p 0 encodedKey + m ([[B)[B digestData a method_15236 + p 0 data + m ()Ljava/security/KeyPair; generateKeyPair b method_15237 + c Generates RSA KeyPair + m (Ljava/lang/String;)Ljava/security/PublicKey; stringToRsaPublicKey b method_43524 + p 0 keyBase64 + m (Ljava/security/Key;[B)[B decryptUsingKey b method_15243 + c Decrypt byte[] data with RSA private key + p 0 key + p 1 data + m ([B)Ljava/security/PrivateKey; byteToPrivateKey b method_43525 + p 0 keyBytes + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43526 c method_43526 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43527 d method_43527 + m ()V + m ()V +c net/minecraft/util/Crypt$ByteArrayToKeyFunction axl$a net/minecraft/class_3515$class_7424 +c net/minecraft/util/Crypt$SaltSignaturePair axl$b net/minecraft/class_3515$class_7425 + f Lnet/minecraft/util/Crypt$SaltSignaturePair; EMPTY a field_39040 + f J salt b comp_739 + f [B signature c comp_740 + m ()Z isValid a method_43528 + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/util/Crypt$SaltSignaturePair;)V write a method_43529 + p 0 buffer + p 1 signaturePair + m ()[B saltAsBytes b method_43530 + m ()J salt c comp_739 + m ()[B signature d comp_740 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (J[B)V + m ()V +c net/minecraft/util/Crypt$SaltSupplier axl$c net/minecraft/class_3515$class_7426 + f Ljava/security/SecureRandom; secureRandom a field_39041 + m ()J getLong a method_43531 + m ()V + m ()V +c net/minecraft/util/CryptException axm net/minecraft/class_5525 + m (Ljava/lang/Throwable;)V + p 1 cause +c net/minecraft/util/CsvOutput axn net/minecraft/class_4456 + f Ljava/lang/String; LINE_SEPARATOR a field_29836 + f Ljava/lang/String; FIELD_SEPARATOR b field_29837 + f Ljava/io/Writer; output c field_20284 + f I columnCount d field_20285 + m ()Lnet/minecraft/util/CsvOutput$Builder; builder a method_21627 + m (Ljava/lang/Object;)Ljava/lang/String; getStringValue a method_21628 + p 0 value + m (Ljava/util/stream/Stream;)V writeLine a method_21629 + p 1 data + m ([Ljava/lang/Object;)V writeRow a method_21630 + p 1 data + m (Ljava/io/Writer;Ljava/util/List;)V + p 1 output + p 2 firstRow +c net/minecraft/util/CsvOutput$Builder axn$a net/minecraft/class_4456$class_4457 + f Ljava/util/List; headers a field_20286 + m (Ljava/io/Writer;)Lnet/minecraft/util/CsvOutput; build a method_21631 + p 1 output + m (Ljava/lang/String;)Lnet/minecraft/util/CsvOutput$Builder; addColumn a method_21632 + p 1 header + m ()V +c net/minecraft/util/CubicSampler axo net/minecraft/class_6491 + f I GAUSSIAN_SAMPLE_RADIUS a field_33222 + f I GAUSSIAN_SAMPLE_BREADTH b field_33223 + f [D GAUSSIAN_SAMPLE_KERNEL c field_22449 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/util/CubicSampler$Vec3Fetcher;)Lnet/minecraft/world/phys/Vec3; gaussianSampleVec3 a method_24895 + p 0 vec + p 1 fetcher + m ()V + m ()V +c net/minecraft/util/CubicSampler$Vec3Fetcher axo$a net/minecraft/class_6491$class_4859 +c net/minecraft/util/CubicSpline axp net/minecraft/class_6492 + m ()Ljava/lang/String; parityString a method_39225 + m (F)Lnet/minecraft/util/CubicSpline; constant a method_39427 + p 0 value + m (FLnet/minecraft/util/CubicSpline;F)Lnet/minecraft/util/CubicSpline$1Point; method_39226 a method_39226 + m (Lnet/minecraft/util/CubicSpline$CoordinateVisitor;)Lnet/minecraft/util/CubicSpline; mapAll a method_41187 + p 1 visitor + m (Lnet/minecraft/util/CubicSpline$Multipoint;)Ljava/lang/Record; method_39227 a method_39227 + m (Lnet/minecraft/util/CubicSpline$Multipoint;I)Lnet/minecraft/util/CubicSpline$1Point; method_39228 a method_39228 + m (Lnet/minecraft/util/CubicSpline;)Lcom/mojang/datafixers/util/Either; method_39229 a method_39229 + m (Lnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline$Builder; builder a method_37918 + p 0 coordinate + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline$Builder; builder a method_39502 + p 0 coordinate + p 1 valueTransformer + m (Lnet/minecraft/util/ToFloatFunction;Ljava/util/List;)Lnet/minecraft/util/CubicSpline$Multipoint; method_39230 a method_39230 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/CubicSpline; method_39231 a method_39231 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_39232 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39233 a method_39233 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39234 a method_39234 + m (Lnet/minecraft/util/CubicSpline$Multipoint;)Ljava/util/List; method_39235 b method_39235 +c net/minecraft/util/CubicSpline$1Point axp$a net/minecraft/class_6492$class_6737 + f F location a comp_225 + f Lnet/minecraft/util/CubicSpline; value b comp_226 + f F derivative c comp_227 + m ()F location a comp_225 + m ()Lnet/minecraft/util/CubicSpline; value b comp_226 + m ()F derivative c comp_227 + m (FLnet/minecraft/util/CubicSpline;F)V +c net/minecraft/util/CubicSpline$Builder axp$b net/minecraft/class_6492$class_6493 + f Lnet/minecraft/util/ToFloatFunction; coordinate a field_34382 + f Lnet/minecraft/util/ToFloatFunction; valueTransformer b field_35661 + f Lit/unimi/dsi/fastutil/floats/FloatList; locations c field_34383 + f Ljava/util/List; values d field_34384 + f Lit/unimi/dsi/fastutil/floats/FloatList; derivatives e field_34385 + m ()Lnet/minecraft/util/CubicSpline; build a method_37923 + m (FF)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_41294 + p 1 location + p 2 value + m (FFF)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_37924 + p 1 location + p 2 value + p 3 derivative + m (FLnet/minecraft/util/CubicSpline;)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_41295 + p 1 location + p 2 value + m (FLnet/minecraft/util/CubicSpline;F)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_37925 + p 1 location + p 2 value + p 3 derivative + m (Lnet/minecraft/util/ToFloatFunction;)V + p 1 coordinate + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;)V + p 1 coordinate + p 2 valueTransformer +c net/minecraft/util/CubicSpline$Constant axp$c net/minecraft/class_6492$class_6494 + f F value b comp_228 + m ()F value d comp_228 + m (F)V +c net/minecraft/util/CubicSpline$CoordinateVisitor axp$d net/minecraft/class_6492$class_7073 +c net/minecraft/util/CubicSpline$Multipoint axp$e net/minecraft/class_6492$class_6738 + f Lnet/minecraft/util/ToFloatFunction; coordinate b comp_229 + f [F locations c comp_230 + f Ljava/util/List; values d comp_231 + f [F derivatives e comp_232 + f F minValue f comp_532 + f F maxValue g comp_533 + m (D)Ljava/lang/String; method_39236 a method_39236 + m (F[FF[FI)F linearExtend a method_41297 + p 0 coordinate + p 1 locations + p 2 value + p 3 derivatives + p 4 index + m (F[FI)Z method_41298 a method_41298 + m (Lnet/minecraft/util/CubicSpline$CoordinateVisitor;Lnet/minecraft/util/CubicSpline;)Lnet/minecraft/util/CubicSpline; method_41188 a method_41188 + m (Lnet/minecraft/util/ToFloatFunction;[FLjava/util/List;[F)Lnet/minecraft/util/CubicSpline$Multipoint; create a method_41299 + p 0 coordinate + p 1 locations + p 2 values + p 3 derivatives + m ([F)Ljava/lang/String; toString a method_39238 + p 1 locations + m ([FF)I findIntervalStart a method_41300 + p 0 locations + p 1 start + m ([FI)D method_39239 a method_39239 + m ([FLjava/util/List;[F)V validateSizes a method_41301 + p 0 locations + p 1 values + p 2 derivatives + m ()Lnet/minecraft/util/ToFloatFunction; coordinate d comp_229 + m ()[F locations e comp_230 + m ()Ljava/util/List; values f comp_231 + m ()[F derivatives g comp_232 + m (Lnet/minecraft/util/ToFloatFunction;[FLjava/util/List;[FFF)V + p 1 coordinate + p 2 locations + p 3 values + p 4 derivatives + p 5 minValue + p 6 maxValue +c net/minecraft/util/DebugBuffer axq net/minecraft/class_5831 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; data a field_28810 + f Ljava/util/concurrent/atomic/AtomicInteger; index b field_28811 + m ()Ljava/util/List; dump a method_33720 + m (Ljava/lang/Object;)V push a method_33721 + p 1 value + m (I)V + p 1 length +c net/minecraft/util/DelegateDataOutput axr net/minecraft/class_8941 + f Ljava/io/DataOutput; parent a field_47218 + m (Ljava/io/DataOutput;)V + p 1 parent +c net/minecraft/util/DependencySorter axs net/minecraft/class_8523 + f Ljava/util/Map; contents a field_44702 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)V method_51482 a method_51482 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z isCyclic a method_51483 + p 0 dependencies + p 1 source + p 2 target + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/lang/Object;Ljava/util/function/BiConsumer;)V visitDependenciesAndElement a method_51484 + p 1 dependencies + p 2 visited + p 3 element + p 4 action + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51485 a method_51485 + m (Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)Lnet/minecraft/util/DependencySorter; addEntry a method_51486 + p 1 key + p 2 value + m (Ljava/util/function/BiConsumer;)V orderByDependencies a method_51487 + p 1 action + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)V method_51488 b method_51488 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V addDependencyIfNotCyclic b method_51489 + p 0 dependencies + p 1 source + p 2 target + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51490 b method_51490 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51491 c method_51491 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51492 d method_51492 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z method_51493 e method_51493 + m ()V +c net/minecraft/util/DependencySorter$Entry axs$a net/minecraft/class_8523$class_8524 + m (Ljava/util/function/Consumer;)V visitRequiredDependencies a method_51478 + p 1 visitor + m (Ljava/util/function/Consumer;)V visitOptionalDependencies b method_51480 + p 1 visitor +c net/minecraft/util/DirectoryLock axt net/minecraft/class_5125 + f Ljava/lang/String; LOCK_FILE a field_29838 + f Ljava/nio/channels/FileChannel; lockFile b field_23692 + f Ljava/nio/channels/FileLock; lock c field_23693 + f Ljava/nio/ByteBuffer; DUMMY d field_25353 + m ()Z isValid a method_26802 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/DirectoryLock; create a method_26803 + p 0 path + m (Ljava/nio/file/Path;)Z isLocked b method_26804 + p 0 path + m (Ljava/nio/channels/FileChannel;Ljava/nio/channels/FileLock;)V + p 1 lockFile + p 2 lock + m ()V +c net/minecraft/util/DirectoryLock$LockException axt$a net/minecraft/class_5125$class_5126 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/DirectoryLock$LockException; alreadyLocked a method_26805 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 1 path + p 2 message +c net/minecraft/util/EncoderCache axu net/minecraft/class_9684 + f Lcom/google/common/cache/LoadingCache; cache a field_51504 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrap a method_59856 + p 1 codec + m (I)V + p 1 maxSize +c net/minecraft/util/EncoderCache$1 axu$1 net/minecraft/class_9684$1 + m (Lnet/minecraft/util/EncoderCache$Key;)Lcom/mojang/serialization/DataResult; load a method_59857 + p 1 key + m (Lnet/minecraft/util/EncoderCache;)V +c net/minecraft/util/EncoderCache$2 axu$2 net/minecraft/class_9684$2 + f Lcom/mojang/serialization/Codec; val$codec a field_51505 + f Lnet/minecraft/util/EncoderCache; field_51506 b field_51506 + m (Ljava/lang/Object;)Ljava/lang/Object; method_59890 a method_59890 + m (Lnet/minecraft/util/EncoderCache;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/EncoderCache$Key axu$a net/minecraft/class_9684$class_9685 + f Lcom/mojang/serialization/Codec; codec a comp_2658 + f Ljava/lang/Object; value b comp_2659 + f Lcom/mojang/serialization/DynamicOps; ops c comp_2660 + m ()Lcom/mojang/serialization/DataResult; resolve a method_59858 + m ()Lcom/mojang/serialization/Codec; codec b comp_2658 + m ()Ljava/lang/Object; value c comp_2659 + m ()Lcom/mojang/serialization/DynamicOps; ops d comp_2660 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)V +c net/minecraft/util/ExceptionCollector axv net/minecraft/class_5127 + f Ljava/lang/Throwable; result a field_23694 + m ()V throwIfPresent a method_26806 + m (Ljava/lang/Throwable;)V add a method_26807 + p 1 exception + m ()V +c net/minecraft/util/ExtraCodecs axw net/minecraft/class_5699 + f Lcom/mojang/serialization/Codec; RESOURCE_PATH_CODEC A field_45075 + f Lcom/mojang/serialization/Codec; PROPERTY B field_40727 + f Lcom/mojang/serialization/MapCodec; GAME_PROFILE_WITHOUT_PROPERTIES C field_45076 + f Lcom/mojang/serialization/Codec; JSON a field_40721 + f Lcom/mojang/serialization/Codec; JAVA b field_46236 + f Lcom/mojang/serialization/Codec; VECTOR3F c field_40723 + f Lcom/mojang/serialization/Codec; VECTOR4F d field_51364 + f Lcom/mojang/serialization/Codec; QUATERNIONF_COMPONENTS e field_42265 + f Lcom/mojang/serialization/Codec; AXISANGLE4F f field_42266 + f Lcom/mojang/serialization/Codec; QUATERNIONF g field_42267 + f Lcom/mojang/serialization/Codec; MATRIX4F h field_42268 + f Lcom/mojang/serialization/Codec; ARGB_COLOR_CODEC i field_51365 + f Lcom/mojang/serialization/Codec; UNSIGNED_BYTE j field_49012 + f Lcom/mojang/serialization/Codec; NON_NEGATIVE_INT k field_33441 + f Lcom/mojang/serialization/Codec; POSITIVE_INT l field_33442 + f Lcom/mojang/serialization/Codec; POSITIVE_FLOAT m field_34387 + f Lcom/mojang/serialization/Codec; PATTERN n field_37408 + f Lcom/mojang/serialization/Codec; INSTANT_ISO8601 o field_39042 + f Lcom/mojang/serialization/Codec; BASE64_STRING p field_39273 + f Lcom/mojang/serialization/Codec; ESCAPED_STRING q field_46165 + f Lcom/mojang/serialization/Codec; TAG_OR_ELEMENT_ID r field_39274 + f Ljava/util/function/Function; toOptionalLong s field_39395 + f Ljava/util/function/Function; fromOptionalLong t field_39396 + f Lcom/mojang/serialization/Codec; BIT_SET u field_40724 + f Lcom/mojang/serialization/Codec; PROPERTY_MAP v field_40725 + f Lcom/mojang/serialization/Codec; PLAYER_NAME w field_49183 + f Lcom/mojang/serialization/Codec; GAME_PROFILE x field_40726 + f Lcom/mojang/serialization/Codec; NON_EMPTY_STRING y field_41759 + f Lcom/mojang/serialization/Codec; CODEPOINT z field_44703 + m ()Ljava/lang/String; method_49430 a method_49430 + m (FFLjava/util/function/Function;)Lcom/mojang/serialization/Codec; floatRangeMinExclusiveWithMessage a method_37928 + p 0 min + p 1 max + p 2 errorMessage + m (FFLjava/util/function/Function;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_48108 a method_48108 + m (II)Lcom/mojang/serialization/Codec; intRange a method_48766 + p 0 min + p 1 max + m (IILjava/lang/Integer;)Ljava/lang/String; method_48767 a method_48767 + m (IILjava/util/function/Function;)Lcom/mojang/serialization/Codec; intRangeWithMessage a method_36241 + p 0 min + p 1 max + p 2 errorMessage + m (IILjava/util/function/Function;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_48111 a method_48111 + m (ILjava/util/Map;)Lcom/mojang/serialization/DataResult; method_57149 a method_57149 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; method_43958 a method_43958 + m (Lcom/mojang/authlib/GameProfile;Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/authlib/GameProfile; method_46370 a method_46370 + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lcom/mojang/authlib/properties/Property;)V method_46371 a method_46371 + m (Lcom/mojang/authlib/properties/Property;)Ljava/util/Optional; method_46372 a method_46372 + m (Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/datafixers/util/Either; method_46373 a method_46373 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/lang/String;Ljava/util/List;)V method_46374 a method_46374 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/util/List;)V method_46375 a method_46375 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/util/Map;)V method_46376 a method_46376 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/authlib/properties/PropertyMap; method_46377 a method_46377 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; nonEmptyList a method_36973 + p 0 codec + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; sizeLimitedMap a method_57153 + p 0 mapCodec + p 1 maxSize + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; orCompressed a method_39512 + p 0 first + p 1 second + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_37930 a method_37930 + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; intervalCodec a method_37931 + p 0 codec + p 1 minFieldName + p 2 maxFieldName + p 3 factory + p 4 minGetter + p 5 maxGetter + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; overrideLifecycle a method_56942 + p 0 codec + p 1 lifecycleGetter + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; overrideLifecycle a method_39504 + p 0 codec + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Codec; converter a method_53918 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;)Ljava/lang/Object; method_53919 a method_53919 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_53920 a method_53920 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; asOptionalLong a method_44167 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; orCompressed a method_53921 + p 0 first + p 1 second + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52459 a method_52459 + m (Ljava/lang/Float;)Ljava/lang/String; method_37932 a method_37932 + m (Ljava/lang/Integer;)Ljava/lang/String; method_36242 a method_36242 + m (Ljava/lang/Object;)Lcom/mojang/serialization/Codec$ResultFunction; orElsePartial a method_39028 + p 0 value + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String; method_49431 a method_49431 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_52460 a method_52460 + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; dispatchOptionalValue a method_54941 + p 2 codec + p 3 keyGetter + p 4 codecGetter + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/authlib/properties/Property; method_46381 a method_46381 + m (Ljava/lang/String;Ljava/util/regex/PatternSyntaxException;)Ljava/lang/String; method_49433 a method_49433 + m (Ljava/time/format/DateTimeFormatter;)Lcom/mojang/serialization/Codec; temporalCodec a method_53700 + p 0 dateTimeFormatter + m (Ljava/time/format/DateTimeFormatter;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53701 a method_53701 + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_46382 a method_46382 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48115 a method_48115 + m (Ljava/util/Map;I)Ljava/lang/String; method_57152 a method_57152 + m (Ljava/util/Optional;)Ljava/util/OptionalLong; method_44168 a method_44168 + m (Ljava/util/OptionalLong;)Ljava/util/Optional; method_44169 a method_44169 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/serialization/DataResult; method_37935 a method_37935 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_37936 a method_37936 + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_37937 a method_37937 + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37938 a method_37938 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; retrieveContext a method_40110 + p 0 retriever + m (Ljava/util/function/Function;Ljava/lang/Float;)Ljava/lang/String; method_49434 a method_49434 + m (Ljava/util/function/Function;Ljava/lang/Integer;)Ljava/lang/String; method_49435 a method_49435 + m (Ljava/util/function/Function;Ljava/util/Collection;)Lcom/mojang/serialization/DataResult; method_40111 a method_40111 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_37939 a method_37939 + m (Ljava/util/function/IntFunction;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_39509 a method_39509 + m (Ljava/util/function/ToIntFunction;ILjava/lang/Object;)Lcom/mojang/serialization/DataResult; method_39510 a method_39510 + m (Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;I)Lcom/mojang/serialization/Codec; idResolverCodec a method_39511 + p 0 encoder + p 1 decoder + p 2 notFoundValue + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_46384 a method_46384 + m (Lnet/minecraft/core/HolderSet;)Lcom/mojang/serialization/DataResult; method_48113 a method_48113 + m (Lorg/joml/AxisAngle4f;)Lorg/joml/Vector3f; method_48768 a method_48768 + m (Lorg/joml/Matrix4f;)Ljava/util/List; method_48769 a method_48769 + m (Lorg/joml/Quaternionf;)Ljava/util/List; method_48777 a method_48777 + m (Lorg/joml/Vector3f;)Ljava/util/List; method_46385 a method_46385 + m (Lorg/joml/Vector4f;)Ljava/lang/Integer; method_59549 a method_59549 + m ([B)Ljava/lang/String; method_43960 a method_43960 + m ()Ljava/lang/String; method_49436 b method_49436 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; method_43961 b method_43961 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; nonEmptyHolderSet b method_40113 + p 0 codec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lnet/minecraft/util/ExtraCodecs$StrictUnboundedMapCodec; strictUnboundedMap b method_53703 + p 0 key + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52462 b method_52462 + m (Ljava/lang/Integer;)Ljava/lang/String; method_36246 b method_36246 + m (Ljava/lang/Object;)Ljava/lang/String; method_49442 b method_49442 + m (Ljava/lang/String;)Ljava/lang/String; method_52464 b method_52464 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48771 b method_48771 + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37942 b method_37942 + m (Ljava/util/function/Function;)Ljava/util/function/Function; ensureHomogenous b method_40114 + p 0 typeGetter + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_37943 b method_37943 + m (Lorg/joml/AxisAngle4f;)Ljava/lang/Float; method_48772 b method_48772 + m (Lorg/joml/Vector4f;)Ljava/util/List; method_59550 b method_59550 + m ()Ljava/lang/String; method_49438 c method_49438 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; catchDecoderException c method_42114 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46388 c method_46388 + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_39514 c method_39514 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_51494 c method_51494 + m (Ljava/util/List;)Lorg/joml/Matrix4f; method_48776 c method_48776 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/List; method_37944 c method_37944 + m ()Ljava/lang/String; method_49440 d method_49440 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; object2BooleanMap d method_53058 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48775 d method_48775 + m (Ljava/lang/Integer;)Ljava/lang/String; method_49441 d method_49441 + m (Ljava/lang/String;)Ljava/lang/String; method_51495 d method_51495 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_59551 d method_59551 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; optionalEmptyMap e method_57155 + p 0 codec + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_56907 e method_56907 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_48114 e method_48114 + m (Ljava/util/List;)Lorg/joml/Quaternionf; method_59552 e method_59552 + m (Ljava/lang/Integer;)Ljava/lang/String; method_56908 f method_56908 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57156 f method_57156 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48778 f method_48778 + m (Ljava/lang/String;)Ljava/lang/String; method_57157 g method_57157 + m (Ljava/util/List;)Lorg/joml/Vector4f; method_48779 g method_48779 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43959 h method_43959 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_46389 h method_46389 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53826 i method_53826 + m (Ljava/util/List;)Lorg/joml/Vector3f; method_46391 i method_46391 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43962 j method_43962 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_41302 k method_41302 + m ()V + m ()V +c net/minecraft/util/ExtraCodecs$1 axw$1 net/minecraft/class_5699$1 + f Ljava/lang/Object; val$value a field_35173 + m (Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/String; method_49444 a method_49444 + m (Ljava/lang/Object;)V +c net/minecraft/util/ExtraCodecs$2 axw$2 net/minecraft/class_5699$2 + f Lcom/mojang/serialization/Codec; val$compressed a field_35662 + f Lcom/mojang/serialization/Codec; val$normal b field_35663 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$3 axw$3 net/minecraft/class_5699$3 + f Lcom/mojang/serialization/MapCodec; val$compressed a field_46237 + f Lcom/mojang/serialization/MapCodec; val$normal b field_46238 + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/util/ExtraCodecs$4 axw$4 net/minecraft/class_5699$4 + f Ljava/util/function/Function; val$decodeLifecycle a field_35664 + f Ljava/util/function/Function; val$encodeLifecycle b field_35665 + m (Lcom/mojang/serialization/DataResult;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_39515 a method_39515 + m (Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/util/ExtraCodecs$5 axw$5 net/minecraft/class_5699$5 + f Lcom/mojang/serialization/Codec; val$codec a field_38082 + m (Ljava/lang/Object;Ljava/lang/Exception;)Ljava/lang/String; method_49445 a method_49445 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$6 axw$6 net/minecraft/class_5699$6 + f Ljava/lang/String; val$typeKey a field_47219 + f Ljava/lang/String; val$valueKey b field_47220 + f Lcom/mojang/serialization/Codec; val$typeCodec c field_47221 + f Ljava/util/function/Function; val$valueCodec d field_47222 + f Ljava/util/function/Function; val$typeGetter e field_47223 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; encode a method_54942 + p 1 valueCodec + p 2 value + p 3 ops + m (Lcom/mojang/serialization/MapLike;Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_54943 a method_54943 + m (Ljava/lang/String;Lcom/mojang/serialization/MapLike;)Ljava/lang/String; method_54944 a method_54944 + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/util/ExtraCodecs$7 axw$7 net/minecraft/class_5699$7 + f Lcom/mojang/serialization/Codec; val$codec a field_50110 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_58592 a method_58592 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Z isEmptyMap a method_58593 + p 0 ops + p 1 value + m (Ljava/util/Optional;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_58594 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$1ContextRetrievalCodec axw$a net/minecraft/class_5699$class_6866 + f Ljava/util/function/Function; val$getter a field_36397 + m (Ljava/util/function/Function;)V + p 1 valGetter +c net/minecraft/util/ExtraCodecs$StrictUnboundedMapCodec axw$b net/minecraft/class_5699$class_8783 + m ()Ljava/lang/String; method_53704 a method_53704 + m (Lcom/mojang/serialization/DataResult;Ljava/lang/String;)Ljava/lang/String; method_53705 a method_53705 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_53706 a method_53706 + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/datafixers/util/Pair; method_53707 a method_53707 + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_53708 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$TagOrElementLocation axw$c net/minecraft/class_5699$class_7476 + f Lnet/minecraft/resources/ResourceLocation; id a comp_813 + f Z tag b comp_814 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_813 + m ()Z tag b comp_814 + m ()Ljava/lang/String; decoratedId c method_43963 + m (Lnet/minecraft/resources/ResourceLocation;Z)V +c net/minecraft/util/FastBufferedInputStream axx net/minecraft/class_6826 + f I DEFAULT_BUFFER_SIZE a field_36209 + f Ljava/io/InputStream; in b field_36210 + f [B buffer c field_36211 + f I limit d field_36212 + f I position e field_36213 + m ()I bytesInBuffer a method_39779 + m ()V fill b method_39780 + m (Ljava/io/InputStream;)V + p 1 in + m (Ljava/io/InputStream;I)V + p 1 in + p 2 bufferSize +c net/minecraft/util/FastColor axy net/minecraft/class_5253 + m (F)I as8BitChannel a method_59553 + p 0 value + m ()V +c net/minecraft/util/FastColor$ABGR32 axy$a net/minecraft/class_5253$class_8045 + m (I)I alpha a method_48342 + p 0 packedColor + m (II)I color a method_48343 + p 0 alpha + p 1 packedColor + m (IIII)I color a method_48344 + p 0 alpha + p 1 blue + p 2 green + p 3 red + m (I)I red b method_48345 + p 0 packedColor + m (I)I green c method_48346 + p 0 packedColor + m (I)I blue d method_48347 + p 0 packedColor + m (I)I transparent e method_48348 + p 0 packedColor + m (I)I opaque f method_48548 + p 0 packedColor + m (I)I fromArgb32 g method_60675 + p 0 color + m ()V +c net/minecraft/util/FastColor$ARGB32 axy$b net/minecraft/class_5253$class_5254 + m (FFFF)I colorFromFloat a method_59554 + p 0 alpha + p 1 red + p 2 green + p 3 blue + m (FII)I lerp a method_48780 + p 0 delta + p 1 min + p 2 max + m (I)I alpha a method_27762 + p 0 packedColor + m (II)I multiply a method_27763 + p 0 packedColourOne + p 1 packedColorTwo + m (III)I color a method_57173 + p 0 red + p 1 green + p 2 blue + m (IIII)I color a method_27764 + p 0 alpha + p 1 red + p 2 green + p 3 blue + m (I)I red b method_27765 + p 0 packedColor + m (II)I color b method_58144 + p 0 alpha + p 1 color + m (I)I green c method_27766 + p 0 packedColor + m (II)I average c method_60676 + p 0 color1 + p 1 color2 + m (I)I blue d method_27767 + p 0 packedColor + m (I)I opaque e method_57174 + p 0 color + m ()V +c net/minecraft/util/FileZipper axz net/minecraft/class_6397 + f Lorg/slf4j/Logger; LOGGER a field_33864 + f Ljava/nio/file/Path; outputFile b field_33865 + f Ljava/nio/file/Path; tempFile c field_33866 + f Ljava/nio/file/FileSystem; fs d field_33867 + m (Ljava/nio/file/Path;)V add a method_37161 + p 1 path + m (Ljava/nio/file/Path;Ljava/io/File;)V add a method_37162 + p 1 path + p 2 filename + m (Ljava/nio/file/Path;Ljava/lang/String;)V add a method_37163 + p 1 path + p 2 filename + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_37164 a method_37164 + m (Ljava/nio/file/Path;)V + p 1 outputFile + m ()V +c net/minecraft/util/FormattedCharSequence aya net/minecraft/class_5481 + f Lnet/minecraft/util/FormattedCharSequence; EMPTY a field_26385 + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSink;)Z method_30743 a method_30743 + m (Lnet/minecraft/util/FormattedCharSink;)Z method_30744 a method_30744 + m (Lnet/minecraft/util/FormattedCharSink;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;ILnet/minecraft/network/chat/Style;I)Z method_30746 a method_30746 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z method_34907 a method_34907 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/util/FormattedCharSink;)Z method_30748 a method_30748 + m (Ljava/util/List;Lnet/minecraft/util/FormattedCharSink;)Z method_30750 a method_30750 + m (Lnet/minecraft/network/chat/Style;ILnet/minecraft/util/FormattedCharSink;)Z method_30751 a method_30751 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z method_30753 b method_30753 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/util/FormattedCharSink;)Z method_34911 b method_34911 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; backward backward method_34910 + p 0 text + p 1 style + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSequence; backward backward method_30754 + p 0 text + p 1 style + p 2 codePointMapper + m (ILnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; codepoint codepoint method_30741 + p 0 codePoint + p 1 style + m ()Lnet/minecraft/util/FormattedCharSequence; composite composite method_34905 + m (Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_34906 + p 0 sequence + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_30742 + p 0 first + p 1 second + m (Ljava/util/List;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_30749 + p 0 parts + m ([Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_34909 + p 0 parts + m (Lnet/minecraft/util/FormattedCharSink;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSink; decorateOutput decorateOutput method_30745 + p 0 sink + p 1 codePointMapper + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; forward forward method_30747 + p 0 text + p 1 style + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSequence; forward forward method_34908 + p 0 text + p 1 style + p 2 codePointMapper + m (Ljava/util/List;)Lnet/minecraft/util/FormattedCharSequence; fromList fromList method_30755 + p 0 parts + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; fromPair fromPair method_30752 + p 0 first + p 1 second + m ()V +c net/minecraft/util/FormattedCharSink ayb net/minecraft/class_5224 +c net/minecraft/util/FutureChain ayc net/minecraft/class_7619 + f Lorg/slf4j/Logger; LOGGER b field_39828 + f Ljava/util/concurrent/CompletableFuture; head c field_39829 + f Ljava/util/concurrent/Executor; executor d field_39830 + f Z closed e field_40112 + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_54440 a method_54440 + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_44904 a method_44904 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)V method_44903 a method_44903 + m (Ljava/util/concurrent/Executor;)V + p 1 executor + m ()V +c net/minecraft/util/Graph ayd net/minecraft/class_6496 + m (Ljava/util/Map;Ljava/util/Set;Ljava/util/Set;Ljava/util/function/Consumer;Ljava/lang/Object;)Z depthFirstSearch a method_37951 + c Detects if a cycle is present in the given graph, via a depth first search, and returns {@code true} if a cycle was found. + p 0 graph + p 1 nonCyclicalNodes + c Nodes that are verified to have no cycles involving them. + p 2 pathSet + c The current collection of seen nodes. When invoked not recursively, this should be an empty set. + p 3 onNonCyclicalNodeFound + c Invoked on each node as we prove that no cycles can be reached starting from this node. + p 4 currentNode + m ()V +c net/minecraft/util/GsonHelper aye net/minecraft/class_3518 + f Lcom/google/gson/Gson; GSON a field_15657 + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; fromJson a method_15297 + p 0 gson + p 1 reader + p 2 type + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromNullableJson a method_47992 + p 0 gson + p 1 reader + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;)Ljava/lang/Object; fromJson a method_15276 + p 0 gson + p 1 reader + p 2 jsonClass + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;Z)Ljava/lang/Object; fromNullableJson a method_47993 + p 0 gson + p 1 reader + p 2 adapter + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; fromNullableJson a method_15290 + p 0 gson + p 1 json + p 2 type + m (Lcom/google/gson/Gson;Ljava/lang/String;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromNullableJson a method_15262 + p 0 gson + p 1 json + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; fromJson a method_15284 + p 0 gson + p 1 json + p 2 adapter + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object; fromJson a method_15279 + p 0 gson + p 1 json + p 2 adapter + p 3 lenient + m (Lcom/google/gson/JsonElement;)Z isStringValue a method_15286 + c Is the given JsonElement a string? + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/lang/String; convertToString a method_15287 + c Gets the string value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; convertToObject a method_15291 + p 0 json + p 1 memberName + p 2 context + p 3 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isStringValue a method_15289 + c Does the given JsonObject contain a string field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;B)B getAsByte a method_15271 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;C)C getAsCharacter a method_34914 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;D)D getAsDouble a method_34915 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;F)F getAsFloat a method_15277 + c Gets the float value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;I)I getAsInt a method_15282 + c Gets the integer value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;J)J getAsLong a method_15280 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonArray;)Lcom/google/gson/JsonArray; getAsJsonArray a method_15292 + c Gets the JsonArray field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; getAsObject a method_15272 + p 0 json + p 1 memberName + p 2 context + p 3 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; getAsJsonObject a method_15281 + c Gets the JsonObject field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/Object;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; getAsObject a method_15283 + p 0 json + p 1 memberName + p 2 fallback + p 3 context + p 4 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getAsString a method_15253 + c Gets the string value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; getAsBigDecimal a method_34917 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigInteger;)Ljava/math/BigInteger; getAsBigInteger a method_34918 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getAsItem a method_34916 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;S)S getAsShort a method_34919 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Z)Z getAsBoolean a method_15258 + c Gets the boolean value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/stream/JsonWriter;Lcom/google/gson/JsonElement;Ljava/util/Comparator;)V writeValue a method_43677 + p 0 writer + p 1 jsonElement + p 2 sorter + m (Ljava/io/Reader;)Lcom/google/gson/JsonObject; parse a method_15255 + p 0 reader + m (Ljava/io/Reader;Z)Lcom/google/gson/JsonObject; parse a method_15274 + p 0 reader + p 1 lenient + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; parse a method_15285 + p 0 json + m (Ljava/lang/String;Ljava/lang/String;)Lcom/google/gson/JsonSyntaxException; method_17995 a method_17995 + m (Ljava/lang/String;Z)Lcom/google/gson/JsonObject; parse a method_15298 + p 0 json + p 1 lenient + m (Ljava/util/Collection;Ljava/util/Comparator;)Ljava/util/Collection; sortByKeyIfNeeded a method_43678 + p 0 entries + p 1 sorter + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromJson b method_15273 + p 0 gson + p 1 reader + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;Z)Ljava/lang/Object; fromJson b method_15267 + p 0 gson + p 1 reader + p 2 adapter + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object; fromNullableJson b method_47994 + p 0 gson + p 1 json + p 2 adapter + p 3 lenient + m (Lcom/google/gson/JsonElement;)Z isNumberValue b method_15275 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lnet/minecraft/core/Holder; convertToItem b method_15256 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isNumberValue b method_34920 + p 0 json + p 1 memberName + m (Ljava/io/Reader;)Lcom/google/gson/JsonArray; parseArray b method_37165 + p 0 reader + m (Ljava/lang/String;)Lcom/google/gson/JsonArray; parseArray b method_43679 + p 0 string + m (Lcom/google/gson/JsonElement;)Z isBooleanValue c method_34921 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Z convertToBoolean c method_15268 + c Gets the boolean value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isBooleanValue c method_15254 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; getType d method_15266 + c Gets a human-readable description of the given JsonElement's type. For example: "a number (4)" + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)D convertToDouble d method_34922 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isArrayNode d method_15264 + c Does the given JsonObject contain an array field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; toStableString e method_43680 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)F convertToFloat e method_15269 + c Gets the float value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isObjectNode e method_34923 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)J convertToLong f method_15263 + c Gets a long from a JSON element and validates that the value is actually a number. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isValidPrimitive f method_15278 + c Does the given JsonObject contain a field with the given name whose type is primitive (String, Java primitive, or Java primitive wrapper)? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)I convertToInt g method_15257 + c Gets the integer value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isValidNode g method_15294 + c Does the given JsonObject contain a field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)B convertToByte h method_15293 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonElement; getNonNull h method_52226 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)C convertToCharacter i method_34924 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getAsString i method_15265 + c Gets the string value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigDecimal; convertToBigDecimal j method_34925 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lnet/minecraft/core/Holder; getAsItem j method_15288 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigInteger; convertToBigInteger k method_34926 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z getAsBoolean k method_15270 + c Gets the boolean value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)S convertToShort l method_34928 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)D getAsDouble l method_34927 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonObject; convertToJsonObject m method_15295 + c Gets the given JsonElement as a JsonObject. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)F getAsFloat m method_15259 + c Gets the float value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonArray; convertToJsonArray n method_15252 + c Gets the given JsonElement as a JsonArray. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)J getAsLong n method_22449 + c Gets a long from a JSON element, throws an error if the member does not exist. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)I getAsInt o method_15260 + c Gets the integer value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)B getAsByte p method_34929 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)C getAsCharacter q method_34930 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigDecimal; getAsBigDecimal r method_34931 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigInteger; getAsBigInteger s method_34932 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)S getAsShort t method_34933 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonObject; getAsJsonObject u method_15296 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonArray; getAsJsonArray v method_15261 + c Gets the JsonArray field on the JsonObject with the given name. + p 0 json + p 1 memberName + m ()V + m ()V +c net/minecraft/util/HttpUtil ayf net/minecraft/class_3521 + f Lorg/slf4j/Logger; LOGGER a field_15665 + m ()I getAvailablePort a method_15302 + m (I)Z isPortAvailable a method_46872 + p 0 port + m (Lcom/google/common/hash/HashFunction;ILnet/minecraft/util/HttpUtil$DownloadProgressListener;Ljava/io/InputStream;Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; downloadAndHash a method_55492 + p 0 hashFuntion + p 1 maxSize + p 2 progressListener + p 3 stream + p 4 outputPath + m (Ljava/nio/file/Path;)V updateModificationTime a method_55603 + p 0 path + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Ljava/nio/file/Path; cachedFilePath a method_55493 + p 0 path + p 1 hash + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; hashFile a method_55494 + p 0 path + p 1 hashFunction + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;)Z checkExistingFile a method_55495 + p 0 path + p 1 hashFunction + p 2 expectedHash + m (Ljava/nio/file/Path;Ljava/net/URL;Ljava/util/Map;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;ILjava/net/Proxy;Lnet/minecraft/util/HttpUtil$DownloadProgressListener;)Ljava/nio/file/Path; downloadFile a method_55496 + p 0 saveFile + p 1 url + p 2 requestProperties + p 3 hashFunction + p 4 hash + p 5 maxSize + p 6 proxy + p 7 progressListener + m ()V + m ()V +c net/minecraft/util/HttpUtil$DownloadProgressListener ayf$a net/minecraft/class_3521$class_9034 + m ()V requestStart a method_55497 + m (J)V downloadedBytes a method_55498 + p 1 progress + m (Ljava/util/OptionalLong;)V downloadStart a method_55499 + p 1 totalSize + m (Z)V requestFinished a method_55500 + p 1 success +c net/minecraft/util/InclusiveRange ayg net/minecraft/class_6497 + f Lcom/mojang/serialization/Codec; INT a field_34390 + f Ljava/lang/Comparable; minInclusive b comp_1 + f Ljava/lang/Comparable; maxInclusive c comp_2 + m ()Ljava/lang/Comparable; minInclusive a comp_1 + m (Lnet/minecraft/util/InclusiveRange;)Z contains a method_37952 + p 1 value + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_37953 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/Codec; codec a method_37954 + p 0 codec + p 1 min + p 2 max + m (Ljava/lang/Comparable;)Z isValueInRange a method_37955 + p 1 value + m (Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Ljava/lang/String; method_49447 a method_49447 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/DataResult; create a method_37956 + p 0 min + p 1 max + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Lcom/mojang/serialization/DataResult; method_37957 a method_37957 + m ()Ljava/lang/Comparable; maxInclusive b comp_2 + m (Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Ljava/lang/String; method_49448 b method_49448 + m ()Ljava/lang/String; method_49449 c method_49449 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)V + p 1 minInclusive + p 2 maxInclusive + m (Ljava/lang/Comparable;)V + p 1 value + m ()V +c net/minecraft/util/KeyDispatchDataCodec ayh net/minecraft/class_7243 + f Lcom/mojang/serialization/MapCodec; codec a comp_640 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_640 + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/KeyDispatchDataCodec; of a method_42116 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/util/LazyLoadedValue ayi net/minecraft/class_3528 + f Ljava/util/function/Supplier; factory a field_15719 + m ()Ljava/lang/Object; get a method_15332 + m (Ljava/util/function/Supplier;)V + p 1 supplier +c net/minecraft/util/LinearCongruentialGenerator ayj net/minecraft/class_4540 + f J MULTIPLIER a field_29842 + f J INCREMENT b field_29843 + m (JJ)J next a method_22372 + p 0 left + p 2 right + m ()V +c net/minecraft/util/ListAndDeque ayk net/minecraft/class_9634 + m ()Lnet/minecraft/util/ListAndDeque; reversed b method_59513 +c net/minecraft/util/LowerCaseEnumTypeAdapterFactory ayl net/minecraft/class_3530 + m (Ljava/lang/Object;)Ljava/lang/String; toLowercase a method_15334 + p 1 object + m ()V +c net/minecraft/util/LowerCaseEnumTypeAdapterFactory$1 ayl$1 net/minecraft/class_3530$1 + f Ljava/util/Map; val$lowercaseToConstant a field_15720 + f Lnet/minecraft/util/LowerCaseEnumTypeAdapterFactory; field_15721 b field_15721 + m (Lnet/minecraft/util/LowerCaseEnumTypeAdapterFactory;Ljava/util/Map;)V +c net/minecraft/util/MemoryReserve aym net/minecraft/class_6416 + f [B reserve a field_34021 + m ()V allocate a method_37414 + m ()V release b method_37415 + m ()V + m ()V +c net/minecraft/util/ModCheck ayn net/minecraft/class_6683 + f Lnet/minecraft/util/ModCheck$Confidence; confidence a comp_171 + f Ljava/lang/String; description b comp_172 + m ()Z shouldReportAsModified a method_39029 + m (Lnet/minecraft/util/ModCheck;)Lnet/minecraft/util/ModCheck; merge a method_39030 + p 1 other + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/util/ModCheck; identify a method_39031 + p 0 vanillaBrandName + p 1 brandNameGetter + p 2 side + p 3 signingClass + m ()Ljava/lang/String; fullDescription b method_39032 + m ()Lnet/minecraft/util/ModCheck$Confidence; confidence c comp_171 + m ()Ljava/lang/String; description d comp_172 + m (Lnet/minecraft/util/ModCheck$Confidence;Ljava/lang/String;)V +c net/minecraft/util/ModCheck$Confidence ayn$a net/minecraft/class_6683$class_6684 + f Lnet/minecraft/util/ModCheck$Confidence; PROBABLY_NOT a field_35174 + f Lnet/minecraft/util/ModCheck$Confidence; VERY_LIKELY b field_35175 + f Lnet/minecraft/util/ModCheck$Confidence; DEFINITELY c field_35176 + f Ljava/lang/String; description d field_35177 + f Z shouldReportAsModified e field_35178 + f [Lnet/minecraft/util/ModCheck$Confidence; $VALUES f field_35179 + m ()[Lnet/minecraft/util/ModCheck$Confidence; $values a method_39033 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 description + p 4 shouldReportAsModified + m ()V +c net/minecraft/util/Mth ayo net/minecraft/class_3532 + f F PI a field_29844 + f F HALF_PI b field_29845 + f F TWO_PI c field_29846 + f F DEG_TO_RAD d field_29847 + f F RAD_TO_DEG e field_29848 + f F EPSILON f field_29849 + f F SQRT_OF_TWO g field_15724 + f Lorg/joml/Vector3f; Y_AXIS h field_46242 + f Lorg/joml/Vector3f; X_AXIS i field_46243 + f Lorg/joml/Vector3f; Z_AXIS j field_46244 + f J UUID_VERSION k field_29852 + f J UUID_VERSION_TYPE_4 l field_29853 + f J UUID_VARIANT m field_29854 + f J UUID_VARIANT_2 n field_29855 + f F SIN_SCALE o field_29856 + f [F SIN p field_15725 + f Lnet/minecraft/util/RandomSource; RANDOM q field_15726 + f [I MULTIPLY_DE_BRUIJN_BIT_POSITION r field_15723 + c Though it looks like an array, this is really more like a mapping. Key (index of this array) is the upper 5 bits of the result of multiplying a 32-bit unsigned integer by the B(2, 5) De Bruijn sequence 0x077CB531. Value (value stored in the array) is the unique index (from the right) of the leftmo + f D ONE_SIXTH s field_29857 + f I FRAC_EXP t field_29858 + f I LUT_SIZE u field_29859 + f D FRAC_BIAS v field_15728 + f [D ASIN_TAB w field_15727 + f [D COS_TAB x field_15722 + m ()Ljava/util/UUID; createInsecureUUID a method_15394 + c Generates a random UUID using the shared random + m (D)I floor a method_15357 + c {@return the greatest integer less than or equal to the double argument} + p 0 value + m (DD)D absMax a method_15391 + c {@return the maximum of the absolute value of two numbers} + p 0 x + p 2 y + m (DDD)D clamp a method_15350 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 2 min + c The lower bound for the clamp. + p 4 max + c The upper bound for the clamp. + m (DDDDD)D clampedMap a method_32854 + p 0 input + p 2 inputMin + p 4 inputMax + p 6 ouputMin + p 8 outputMax + m (DDDDDD)D lerp2 a method_16437 + p 0 delta1 + p 2 delta2 + p 4 start1 + p 6 end1 + p 8 start2 + p 10 end2 + m (DDDDDDDDDDD)D lerp3 a method_16438 + p 0 delta1 + p 2 delta2 + p 4 delta3 + p 6 start1 + p 8 end1 + p 10 start2 + p 12 end2 + p 14 start3 + p 16 end3 + p 18 start4 + p 20 end4 + m (DI)I quantize a method_38961 + c Gets the value closest to zero that is not closer to zero than the given value and is a multiple of the factor. + p 0 value + p 2 factor + m (F)F sin a method_15374 + c sin looked up in a table + p 0 value + m (FF)Z equal a method_15347 + p 0 x + p 1 y + m (FFF)F clamp a method_15363 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 1 min + c The lower bound for the clamp. + p 2 max + c The upper bound for the clamp. + m (FFFFF)F catmullrom a method_41303 + p 0 delta + p 1 controlPoint1 + p 2 controlPoint2 + p 3 controlPoint3 + p 4 controlPoint4 + m (FFFI)I hsvToArgb a method_60599 + p 0 hue + p 1 saturation + p 2 value + p 3 alpha + m (FII)I lerpInt a method_48781 + p 0 delta + p 1 start + p 2 end + m (I)I abs a method_15382 + c {@return the unsigned value of an int} + p 0 value + m (II)I floorDiv a method_48116 + p 0 dividend + p 1 divisor + m (III)I clamp a method_15340 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 1 min + c The lower bound for the clamp. + p 2 max + c The upper bound for the clamp. + m (IIII)Ljava/util/stream/IntStream; outFromOrigin a method_42117 + p 0 input + p 1 lowerBound + p 2 upperBound + p 3 steps + m (IIIII)I method_42118 a method_42118 + m (IILjava/util/function/IntPredicate;)I binarySearch a method_15360 + p 0 min + p 1 max + p 2 isTargetBeforeOrAt + m (J)J square a method_38652 + p 0 value + m (JJJ)J clamp a method_53062 + p 0 value + p 2 min + p 4 max + m (Lnet/minecraft/util/RandomSource;)Ljava/util/UUID; createInsecureUUID a method_15378 + p 0 random + m (Lnet/minecraft/util/RandomSource;DD)D nextDouble a method_15366 + p 0 random + p 1 minimum + p 3 maximum + m (Lnet/minecraft/util/RandomSource;FF)F nextFloat a method_15344 + p 0 random + p 1 minimum + p 2 maximum + m (Lnet/minecraft/util/RandomSource;II)I nextInt a method_15395 + p 0 random + p 1 minimum + p 2 maximum + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;)Z rayIntersectsAABB a method_34945 + p 0 start + p 1 end + p 2 boundingBox + m (Ljava/lang/String;I)I getInt a method_15343 + c Parses the string as an integer or returns the second parameter if it fails. + p 0 value + p 1 defaultValue + m (Lnet/minecraft/core/Vec3i;)J getSeed a method_15389 + p 0 pos + m (Lorg/apache/commons/lang3/math/Fraction;I)I mulAndTruncate a method_59515 + p 0 fraction + p 1 factor + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; rotationAroundAxis a method_53948 + p 0 axis + p 1 cameraOrentation + p 2 output + m ([F)V method_15376 a method_15376 + m (D)J lfloor b method_15372 + c Long version of floor() + p 0 value + m (DD)Z equal b method_20390 + p 0 x + p 2 y + m (DDD)D clampedLerp b method_15390 + c Method for linear interpolation of doubles. + p 0 start + c Start value for the lerp. + p 2 end + c End value for the lerp. + p 4 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) If the value is not between 0 and 1, it is clamped. + m (DDDDD)D map b method_33722 + p 0 input + p 2 inputMin + p 4 inputMax + p 6 outputMin + p 8 outputMax + m (F)F cos b method_15362 + c cos looked up in the sin table with the appropriate offset + p 0 value + m (FF)F positiveModulo b method_15341 + p 0 numerator + p 1 denominator + m (FFF)F clampedLerp b method_37166 + c Method for linear interpolation of floats. + p 0 start + c Start value for the lerp. + p 1 end + c End value for the lerp. + p 2 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) If the value is not between 0 and 1, it is clamped. + m (FFFFF)F clampedMap b method_37958 + p 0 input + p 1 inputMin + p 2 inputMax + p 3 outputMin + p 4 outputMax + m (FII)I lerpDiscrete b method_53063 + p 0 delta + p 1 start + p 2 end + m (I)I wrapDegrees b method_15392 + c Adjust the angle so that its value is in the range [-180;180) + p 0 angle + m (II)I positiveModulo b method_15387 + p 0 x + p 1 y + m (III)J getSeed b method_15371 + p 0 x + p 1 y + p 2 z + m (IIII)Z method_42119 b method_42119 + m (Lnet/minecraft/util/RandomSource;FF)F randomBetween b method_32750 + p 0 random + p 1 minInclusive + p 2 maxExclusive + m (Lnet/minecraft/util/RandomSource;II)I randomBetweenInclusive b method_32751 + p 0 random + p 1 minInclusive + p 2 maxInclusive + m (D)I ceil c method_15384 + p 0 value + m (DD)D positiveModulo c method_15367 + p 0 numerator + p 2 denominator + m (DDD)D inverseLerp c method_15370 + p 0 delta + p 2 start + p 4 end + m (F)F sqrt c method_15355 + p 0 value + m (FF)F degreesDifference c method_15381 + c {@return the difference between two angles in degrees} + p 0 start + p 1 end + m (FFF)F rotateIfNecessary c method_20306 + c Takes a rotation and compares it to another rotation.\nIf the difference is greater than a given maximum, clamps the original rotation between to have at most the given difference to the actual rotation.\nThis is used to match the body rotation of entities to their head rotation.\n@return The new value for the rotation that was adjusted + p 0 rotationToAdjust + p 1 actualRotation + p 2 maxDifference + m (FFFFF)F map c method_37959 + p 0 input + p 1 inputMin + p 2 inputMax + p 3 outputMin + p 4 outputMax + m (I)I smallestEncompassingPowerOfTwo c method_15339 + c {@return the input value rounded up to the next highest power of two} + p 0 value + m (II)Z isMultipleOf c method_48117 + p 0 number + p 1 multiple + m (III)Ljava/util/stream/IntStream; outFromOrigin c method_42120 + p 0 input + p 1 lowerBound + p 2 upperBound + m (Lnet/minecraft/util/RandomSource;FF)F normal c method_32855 + c Generates a value from a normal distribution with the given mean and deviation. + p 0 random + p 1 mean + p 2 deviation + m (D)D wrapDegrees d method_15338 + c The angle is reduced to an angle between -180 and +180 by mod, and a 360 check. + p 0 value + m (DD)D atan2 d method_15349 + p 0 y + p 2 x + m (DDD)D lerp d method_16436 + c Method for linear interpolation of doubles + p 0 delta + c A value usually between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 2 start + c Start value for the lerp + p 4 end + c End value for the lerp + m (F)I floor d method_15375 + c {@return the greatest integer less than or equal to the float argument} + p 0 value + m (FF)F degreesDifferenceAbs d method_15356 + c {@return the absolute of the difference between two angles in degrees} + p 0 start + p 1 end + m (FFF)F approach d method_15348 + c Changes value by stepSize towards the limit and returns the result.\nIf value is smaller than limit, the result will never be bigger than limit.\nIf value is bigger than limit, the result will never be smaller than limit. + p 0 value + p 1 limit + p 2 stepSize + m (I)Z isPowerOfTwo d method_15352 + c Is the given value a power of two? (1, 2, 4, 8, 16, ...) + p 0 value + m (II)I roundToward d method_28139 + c Rounds the given value up to a multiple of factor.\n@return The smallest integer multiple of factor that is greater than or equal to the value + p 0 value + p 1 factor + m (D)D frac e method_15385 + c Gets the decimal portion of the given double. For instance, {@code frac(5.5)} returns {@code .5}. + p 0 number + m (DD)D lengthSquared e method_41189 + p 0 xDistance + p 2 yDistance + m (DDD)D rotLerp e method_52468 + p 0 delta + p 2 start + p 4 end + m (F)F abs e method_15379 + p 0 value + m (FF)F triangleWave e method_24504 + p 0 input + p 1 period + m (FFF)F approachDegrees e method_15388 + c Changes the angle by stepSize towards the limit in the direction where the distance is smaller.\n{@see #approach(float, float, float)} + p 0 angle + p 1 limit + p 2 stepSize + m (I)I ceillog2 e method_15342 + c Uses a B(2, 5) De Bruijn sequence and a lookup table to efficiently calculate the log-base-two of the given value. Optimized for cases where the input value is a power-of-two. If the input value is not a power-of-two, then subtract 1 from the return value. + p 0 value + m (II)I positiveCeilDiv e method_38788 + c Returns the smallest (closest to negative infinity) int value that is greater than or equal to the algebraic quotient.\n@see java.lang.Math#floorDiv(int, int) + p 0 x + p 1 y + m (D)D invSqrt f method_48118 + p 0 number + m (DD)D length f method_39241 + p 0 xDistance + p 2 yDistance + m (DDD)D lengthSquared f method_41190 + p 0 xDistance + p 2 yDistance + p 4 zDistance + m (F)I ceil f method_15386 + p 0 value + m (FFF)I color f method_15353 + c Makes an integer color from the given red, green, and blue float values + p 0 r + p 1 g + p 2 b + m (I)I log2 f method_15351 + c Efficiently calculates the floor of the base-2 log of an integer value. This is effectively the index of the highest bit that is set. For example, if the number in binary is 0...100101, this will return 5. + p 0 value + m (D)D fastInvSqrt g method_15345 + c Computes 1/sqrt(n) using the fast inverse square root with a constant of 0x5FE6EB50C7B537AA. + p 0 number + m (DDD)D length g method_33825 + p 0 xDistance + p 2 yDistance + p 4 zDistance + m (F)F wrapDegrees g method_15393 + c The angle is reduced to an angle between -180 and +180 by mod, and a 360 check. + p 0 value + m (FFF)F inverseLerp g method_37960 + p 0 delta + p 1 start + p 2 end + m (I)I murmurHash3Mixer g method_15354 + p 0 input + m (D)D smoothstep h method_16435 + p 0 input + m (F)F frac h method_22450 + p 0 number + m (FFF)I hsvToRgb h method_15369 + p 0 hue + p 1 saturation + p 2 value + m (I)I square h method_34954 + p 0 value + m (D)D smoothstepDerivative i method_34956 + p 0 input + m (F)F invSqrt i method_48119 + p 0 number + m (FFF)F lerp i method_16439 + c Method for linear interpolation of floats + p 0 delta + c A value usually between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 1 start + c Start value for the lerp + p 2 end + c End value for the lerp + m (D)I sign j method_17822 + p 0 x + m (F)F fastInvCubeRoot j method_23278 + p 0 number + m (FFF)F rotLerp j method_17821 + c Linearly interpolates an angle between the start between the start and end values given as degrees. + p 0 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 1 start + p 2 end + m (D)D square k method_33723 + p 0 value + m (F)F square k method_27285 + p 0 value + m (FFF)F lengthSquared k method_60677 + p 0 xDistance + p 1 yDistance + p 2 zDistance + m (D)D wobble l method_34957 + p 0 input + m ()V + m ()V +c net/minecraft/util/NativeModuleLister ayp net/minecraft/class_6498 + f Lorg/slf4j/Logger; LOGGER a field_34391 + f I LANG_MASK b field_34392 + f I DEFAULT_LANG c field_34393 + f I CODEPAGE_MASK d field_34394 + f I DEFAULT_CODEPAGE e field_34395 + m ()Ljava/util/List; listModules a method_37961 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_37962 a method_37962 + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Lcom/sun/jna/Pointer; queryVersionValue a method_37963 + p 0 block + p 1 subBlock + p 2 size + m (Ljava/lang/String;)Ljava/util/Optional; tryGetVersion a method_37964 + p 0 filename + m (Ljava/lang/String;II)Ljava/lang/String; langTableKey a method_37965 + p 0 key + p 1 lang + p 2 codepage + m (Lnet/minecraft/CrashReportCategory;)V addCrashSection a method_37966 + p 0 crashSection + m ([I)Ljava/util/OptionalInt; findLangAndCodepage a method_37967 + p 0 versionValue + m ()Ljava/lang/String; method_37968 b method_37968 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_37969 b method_37969 + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Ljava/lang/String; queryVersionString b method_37970 + p 0 block + p 1 subBlock + p 2 size + m ()V + m ()V +c net/minecraft/util/NativeModuleLister$NativeModuleInfo ayp$a net/minecraft/class_6498$class_6499 + f Ljava/lang/String; name a field_34396 + f Ljava/util/Optional; version b field_34397 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleVersion;)Ljava/lang/String; method_37971 a method_37971 + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 name + p 2 version +c net/minecraft/util/NativeModuleLister$NativeModuleVersion ayp$b net/minecraft/class_6498$class_6500 + f Ljava/lang/String; description a field_34398 + f Ljava/lang/String; version b field_34399 + f Ljava/lang/String; company c field_34400 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 description + p 2 version + p 3 company +c net/minecraft/util/NullOps ayq net/minecraft/class_9637 + f Lnet/minecraft/util/NullOps; INSTANCE a field_51366 + m ()Lnet/minecraft/util/Unit; empty a method_59555 + m (B)Lnet/minecraft/util/Unit; createByte a method_59556 + p 1 value + m (D)Lnet/minecraft/util/Unit; createDouble a method_59557 + p 1 value + m (F)Lnet/minecraft/util/Unit; createFloat a method_59558 + p 1 value + m (I)Lnet/minecraft/util/Unit; createInt a method_59559 + p 1 value + m (J)Lnet/minecraft/util/Unit; createLong a method_59560 + p 1 value + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getNumberValue a method_59561 + p 1 input + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; mergeToList a method_59562 + p 1 list + p 2 value + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59563 + p 1 map + p 2 key + p 3 value + m (Lnet/minecraft/util/Unit;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59564 + p 1 map + p 2 values + m (Lnet/minecraft/util/Unit;Ljava/lang/String;)Lnet/minecraft/util/Unit; remove a method_59565 + p 1 input + p 2 key + m (Lnet/minecraft/util/Unit;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList a method_59566 + p 1 list + p 2 values + m (Lnet/minecraft/util/Unit;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59567 + p 1 map + p 2 values + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/util/Unit;)Ljava/lang/Object; convertTo a method_59568 + p 1 ops + p 2 unit + m (Ljava/lang/Number;)Lnet/minecraft/util/Unit; createNumeric a method_59569 + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/util/Unit; createString a method_59570 + p 1 value + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/Unit; createByteList a method_59571 + p 1 input + m (Ljava/util/Map;)Lnet/minecraft/util/Unit; createMap a method_59572 + p 1 map + m (Ljava/util/stream/IntStream;)Lnet/minecraft/util/Unit; createIntList a method_59573 + p 1 input + m (Ljava/util/stream/LongStream;)Lnet/minecraft/util/Unit; createLongList a method_59574 + p 1 input + m (Ljava/util/stream/Stream;)Lnet/minecraft/util/Unit; createMap a method_59575 + p 1 map + m (S)Lnet/minecraft/util/Unit; createShort a method_59576 + p 1 value + m (Z)Lnet/minecraft/util/Unit; createBoolean a method_59577 + p 1 value + m ()Lnet/minecraft/util/Unit; emptyMap b method_59578 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getBooleanValue b method_59579 + p 1 input + m (Ljava/util/stream/Stream;)Lnet/minecraft/util/Unit; createList b method_59580 + p 1 input + m ()Lnet/minecraft/util/Unit; emptyList c method_59581 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getStringValue c method_59582 + p 1 input + m ()Ljava/lang/String; method_59583 d method_59583 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMapValues d method_59584 + p 1 input + m ()Ljava/lang/String; method_59585 e method_59585 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMapEntries e method_59586 + p 1 input + m ()Ljava/lang/String; method_59587 f method_59587 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMap f method_59588 + p 1 input + m ()Ljava/lang/String; method_59589 g method_59589 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getStream g method_59590 + p 1 input + m ()Ljava/lang/String; method_59591 h method_59591 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getList h method_59592 + p 1 input + m ()Ljava/lang/String; method_59593 i method_59593 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getByteBuffer i method_59594 + p 1 input + m ()Ljava/lang/String; method_59595 j method_59595 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getIntStream j method_59596 + p 1 input + m ()Ljava/lang/String; method_59597 k method_59597 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getLongStream k method_59598 + p 1 input + m ()Ljava/lang/String; method_59599 l method_59599 + m ()Ljava/lang/String; method_59600 m method_59600 + m ()Ljava/lang/String; method_59601 n method_59601 + m ()V + m ()V +c net/minecraft/util/NullOps$NullMapBuilder ayq$a net/minecraft/class_9637$class_9638 + m ()Lnet/minecraft/util/Unit; initBuilder a method_59602 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; build a method_59603 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lnet/minecraft/util/Unit; append a method_59604 + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 ops +c net/minecraft/util/OptionEnum ayr net/minecraft/class_7291 + m ()I getId a method_7362 + m ()Ljava/lang/String; getKey b method_7359 + m ()Lnet/minecraft/network/chat/Component; getCaption d method_42627 +c net/minecraft/util/ParticleUtils ays net/minecraft/class_5945 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; getRandomSpeedRanges a method_41306 + p 0 random + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3; method_41304 a method_41304 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/ParticleOptions;)V spawnParticleBelow a method_49099 + p 0 level + p 1 pos + p 2 random + p 3 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/Vec3;D)V spawnParticleOnFace a method_34681 + p 0 level + p 1 pos + p 2 direction + p 3 particle + p 4 speed + p 5 spread + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/IntProvider;)V spawnParticlesOnBlockFaces a method_34682 + p 0 level + p 1 pos + p 2 particle + p 3 count + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/core/Direction;Ljava/util/function/Supplier;D)V spawnParticlesOnBlockFace a method_41305 + p 0 level + p 1 pos + p 2 particle + p 3 count + p 4 direction + p 5 speedSupplier + p 6 spread + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V spawnSmashAttackParticles a method_58595 + p 0 level + p 1 pos + p 2 power + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IDDZLnet/minecraft/core/particles/ParticleOptions;)V spawnParticles a method_55635 + p 0 level + p 1 pos + p 2 count + p 3 xzSpread + p 5 ySpread + p 7 allowInAir + p 8 particle + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/particles/ParticleOptions;)V spawnParticleInBlock a method_55636 + p 0 level + p 1 pos + p 2 count + p 3 particle + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;DLnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/UniformInt;)V spawnParticlesAlongAxis a method_34683 + p 0 axis + p 1 level + p 2 pos + p 3 spread + p 5 particle + p 6 count + m ()V +c net/minecraft/util/PngInfo ayt net/minecraft/class_8800 + f I width a comp_1965 + f I height b comp_1966 + f J PNG_HEADER c field_46201 + f I IHDR_TYPE d field_46202 + f I IHDR_SIZE e field_46203 + m ()I width a comp_1965 + m (Ljava/io/InputStream;)Lnet/minecraft/util/PngInfo; fromStream a method_53877 + p 0 stream + m (Ljava/nio/ByteBuffer;)V validateHeader a method_54945 + p 0 buffer + m ([B)Lnet/minecraft/util/PngInfo; fromBytes a method_53878 + p 0 bytes + m ()I height b comp_1966 + m (II)V +c net/minecraft/util/ProblemReporter ayu net/minecraft/class_8942 + m (Ljava/lang/String;)Lnet/minecraft/util/ProblemReporter; forChild a method_54946 + p 1 name + m (Ljava/lang/String;)V report b method_54947 + p 1 message +c net/minecraft/util/ProblemReporter$Collector ayu$a net/minecraft/class_8942$class_8943 + f Lcom/google/common/collect/Multimap; problems a field_47225 + f Ljava/util/function/Supplier; path b field_47226 + f Ljava/lang/String; pathCache c field_47227 + m ()Lcom/google/common/collect/Multimap; get a method_54948 + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_59905 a method_59905 + m ()Ljava/util/Optional; getReport b method_59906 + m ()Ljava/lang/String; getPath c method_54949 + m (Ljava/lang/String;)Ljava/lang/String; method_54951 c method_54951 + m ()Ljava/lang/String; method_54950 d method_54950 + m ()V + m (Lcom/google/common/collect/Multimap;Ljava/util/function/Supplier;)V + p 1 problems + p 2 path +c net/minecraft/util/ProgressListener ayv net/minecraft/class_3536 + m ()V stop a method_15411 + m (I)V progressStagePercentage a method_15410 + c Updates the progress bar on the loading screen to the specified amount. + p 1 progress + m (Lnet/minecraft/network/chat/Component;)V progressStartNoAbort a method_15412 + p 1 component + m (Lnet/minecraft/network/chat/Component;)V progressStart b method_15413 + p 1 header + m (Lnet/minecraft/network/chat/Component;)V progressStage c method_15414 + p 1 stage +c net/minecraft/util/RandomSource ayw net/minecraft/class_5819 + c A basic interface for random number generation. This mirrors the same methods in {@link java.util.Random}, however it does not make any guarantee that these are thread-safe, unlike {@code Random}.\nThe notable difference is that {@link #setSeed(long)} is not {@code synchronized} and should not be accessed from multiple threads.\nThe documentation for each individual method can be assumed to be otherwise the same as the identically named method in {@link java.util.Random}.\n@see java.util.Random\n@see net.minecraft.world.level.levelgen.SimpleRandomSource + f D GAUSSIAN_SPREAD_FACTOR a field_38930 + m ()Lnet/minecraft/util/RandomSource; create a method_43047 + m (DD)D triangle a method_43385 + p 1 center + p 3 maxDeviation + m (I)I nextInt a method_43048 + p 1 bound + m (II)I nextIntBetweenInclusive a method_39332 + p 1 min + p 2 max + m (J)Lnet/minecraft/util/RandomSource; create a method_43049 + p 0 seed + m ()Lnet/minecraft/util/RandomSource; createThreadSafe b method_43050 + m (I)V consumeCount b method_33650 + p 1 count + m (II)I nextInt b method_43051 + p 1 origin + p 2 bound + m (J)V setSeed b method_43052 + p 1 seed + m ()Lnet/minecraft/util/RandomSource; createNewThreadLocalInstance c method_43053 + m ()Lnet/minecraft/util/RandomSource; fork d method_38420 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; forkPositional e method_38421 + m ()I nextInt f method_43054 + m ()J nextLong g method_43055 + m ()Z nextBoolean h method_43056 + m ()F nextFloat i method_43057 + m ()D nextDouble j method_43058 + m ()D nextGaussian k method_43059 +c net/minecraft/util/ResourceLocationPattern ayx net/minecraft/class_7085 + f Lcom/mojang/serialization/Codec; CODEC a field_37293 + f Ljava/util/Optional; namespacePattern b field_37294 + f Ljava/util/function/Predicate; namespacePredicate c field_37295 + f Ljava/util/Optional; pathPattern d field_37296 + f Ljava/util/function/Predicate; pathPredicate e field_37297 + f Ljava/util/function/Predicate; locationPredicate f field_41286 + m ()Ljava/util/function/Predicate; namespacePredicate a method_47545 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_47546 a method_47546 + m (Lnet/minecraft/util/ResourceLocationPattern;)Ljava/util/Optional; method_41284 a method_41284 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41285 a method_41285 + m (Ljava/lang/String;)Z method_41286 a method_41286 + m ()Ljava/util/function/Predicate; pathPredicate b method_47547 + m (Lnet/minecraft/util/ResourceLocationPattern;)Ljava/util/Optional; method_41288 b method_41288 + m (Ljava/lang/String;)Z method_41289 b method_41289 + m ()Ljava/util/function/Predicate; locationPredicate c method_47548 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 namespacePattern + p 2 pathPattern + m ()V +c net/minecraft/util/SegmentedAnglePrecision ayy net/minecraft/class_8013 + f I mask a field_41760 + f I precision b field_41761 + f F degreeToAngle c field_41762 + f F angleToDegree d field_41763 + m ()I getMask a method_48120 + m (F)I fromDegreesWithTurns a method_48121 + p 1 degreesWithTurns + m (I)F toDegreesWithTurns a method_48122 + p 1 degrees + m (II)Z isSameAxis a method_48123 + p 1 first + p 2 second + m (Lnet/minecraft/core/Direction;)I fromDirection a method_48124 + p 1 direction + m (F)I fromDegrees b method_48125 + p 1 degrees + m (I)F toDegrees b method_48126 + p 1 degreesWithTurns + m (I)I normalize c method_48127 + p 1 degrees + m (I)V + p 1 precision +c net/minecraft/util/SequencedPriorityIterator ayz net/minecraft/class_8917 + f I MIN_PRIO a field_48714 + f Ljava/util/Deque; highestPrioQueue b field_48715 + f I highestPrio c field_48716 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; queuesByPriority d field_48717 + m ()V switchCacheToNextHighestPrioQueue a method_56533 + m (I)Ljava/util/Deque; method_54723 a method_54723 + m (Ljava/lang/Object;I)V add a method_54726 + p 1 value + p 2 priority + m ()V +c net/minecraft/util/SignatureUpdater aza net/minecraft/class_7498 +c net/minecraft/util/SignatureUpdater$Output aza$a net/minecraft/class_7498$class_7499 +c net/minecraft/util/SignatureValidator azb net/minecraft/class_7500 + f Lnet/minecraft/util/SignatureValidator; NO_VALIDATION a field_39397 + f Lorg/slf4j/Logger; LOGGER b field_39398 + m (Lnet/minecraft/util/SignatureUpdater;[B)Z method_44170 a method_44170 + m (Lnet/minecraft/util/SignatureUpdater;[BLcom/mojang/authlib/yggdrasil/ServicesKeyInfo;)Z method_44173 a method_44173 + m (Lnet/minecraft/util/SignatureUpdater;[BLjava/security/Signature;)Z verifySignature a method_44171 + p 0 updater + p 1 signatureBytes + p 2 signature + m (Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/yggdrasil/ServicesKeyType;)Lnet/minecraft/util/SignatureValidator; from a method_44172 + p 0 serviceKeySet + p 1 serviceKeyType + m (Ljava/lang/String;Ljava/security/PublicKey;Lnet/minecraft/util/SignatureUpdater;[B)Z method_44174 a method_44174 + m (Ljava/security/PublicKey;Ljava/lang/String;)Lnet/minecraft/util/SignatureValidator; from a method_44175 + p 0 publicKey + p 1 algorithm + m (Ljava/util/Collection;Lnet/minecraft/util/SignatureUpdater;[B)Z method_51496 a method_51496 + m ([BLnet/minecraft/util/SignatureUpdater$Output;)V method_44176 a method_44176 + m ([B[B)Z validate a method_44177 + p 1 digest + p 2 signature + m ()V +c net/minecraft/util/Signer azc net/minecraft/class_7501 + f Lorg/slf4j/Logger; LOGGER a field_39399 + m (Ljava/lang/String;Ljava/security/PrivateKey;Lnet/minecraft/util/SignatureUpdater;)[B method_44178 a method_44178 + m (Ljava/security/PrivateKey;Ljava/lang/String;)Lnet/minecraft/util/Signer; from a method_44179 + p 0 privateKey + p 1 algorithm + m ([B)[B sign a method_44180 + p 1 signature + m ([BLnet/minecraft/util/SignatureUpdater$Output;)V method_44181 a method_44181 + m ()V +c net/minecraft/util/SimpleBitStorage azd net/minecraft/class_3508 + f [I MAGIC a field_24078 + f [J data b field_15631 + f I bits c field_15633 + f J mask d field_15634 + f I size e field_15632 + f I valuesPerLong f field_24079 + f I divideMul g field_24080 + f I divideAdd h field_24081 + f I divideShift i field_24082 + m (I)I cellIndex b method_27284 + p 1 index + m (II[I)V + p 1 bits + p 2 size + p 3 data + m (II)V + p 1 bits + p 2 size + m (II[J)V + p 1 bits + p 2 size + p 3 data + m ()V +c net/minecraft/util/SimpleBitStorage$InitializationException azd$a net/minecraft/class_3508$class_6685 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/util/SingleKeyCache aze net/minecraft/class_8105 + f Ljava/util/function/Function; computeValue a field_42269 + f Ljava/lang/Object; cacheKey b field_42270 + f Ljava/lang/Object; cachedValue c field_42271 + m (Ljava/lang/Object;)Ljava/lang/Object; getValue a method_48782 + p 1 cacheKey + m (Ljava/util/function/Function;)V + p 1 computeValue +c net/minecraft/util/SmoothDouble azf net/minecraft/class_3540 + f D targetValue a field_15760 + f D remainingValue b field_15759 + f D lastAmount c field_15758 + m ()V reset a method_15428 + m (DD)D getNewDeltaValue a method_15429 + m ()V +c net/minecraft/util/SortedArraySet azg net/minecraft/class_4706 + f I DEFAULT_INITIAL_CAPACITY a field_29860 + f Ljava/util/Comparator; comparator b field_21562 + f [Ljava/lang/Object; contents c field_21563 + f I size d field_21564 + m ()Lnet/minecraft/util/SortedArraySet; create a method_34958 + m (I)Lnet/minecraft/util/SortedArraySet; create a method_23859 + p 0 initialCapacity + m (Ljava/lang/Object;)Ljava/lang/Object; addOrGet a method_23862 + p 1 element + m (Ljava/lang/Object;I)V addInternal a method_23863 + p 1 element + p 2 index + m (Ljava/util/Comparator;)Lnet/minecraft/util/SortedArraySet; create a method_34959 + p 0 comparator + m (Ljava/util/Comparator;I)Lnet/minecraft/util/SortedArraySet; create a method_34960 + p 0 comparator + p 1 initialCapacity + m ([Ljava/lang/Object;)[Ljava/lang/Object; castRawArray a method_23864 + p 0 array + m ()Ljava/lang/Object; first b method_23865 + c Gets the smallest element in the set + m (I)I getInsertionPosition b method_23866 + p 0 index + m (Ljava/lang/Object;)Ljava/lang/Object; get b method_34961 + p 1 element + m ()Ljava/lang/Object; last c method_34962 + m (I)V grow c method_23868 + p 1 size + m (Ljava/lang/Object;)I findIndex c method_23869 + p 1 object + m (I)V removeInternal d method_23870 + p 1 index + m (I)Ljava/lang/Object; getInternal e method_23871 + p 1 index + m (ILjava/util/Comparator;)V + p 1 initialCapacity + p 2 comparator +c net/minecraft/util/SortedArraySet$ArrayIterator azg$a net/minecraft/class_4706$class_4707 + f Lnet/minecraft/util/SortedArraySet; field_21565 a field_21565 + f I index b field_21566 + f I last c field_21567 + m (Lnet/minecraft/util/SortedArraySet;)V +c net/minecraft/util/SpawnUtil azh net/minecraft/class_7244 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/util/SpawnUtil$Strategy;)Z moveToPossibleSpawnPosition a method_42121 + p 0 level + p 1 yOffset + p 2 pos + p 3 strategy + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;IIILnet/minecraft/util/SpawnUtil$Strategy;)Ljava/util/Optional; trySpawnMob a method_42122 + p 0 entityType + p 1 spawnType + p 2 level + p 3 pos + p 4 attempts + p 5 spread + p 6 yOffset + p 7 strategy + m ()V +c net/minecraft/util/SpawnUtil$Strategy azh$a net/minecraft/class_7244$class_7502 + f Lnet/minecraft/util/SpawnUtil$Strategy; LEGACY_IRON_GOLEM a field_39400 + f Lnet/minecraft/util/SpawnUtil$Strategy; ON_TOP_OF_COLLIDER b field_39401 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_44182 a method_44182 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_44183 b method_44183 + m ()V +c net/minecraft/util/StaticCache2D azi net/minecraft/class_9762 + f I minX a field_51878 + f I minZ b field_51879 + f I sizeX c field_51880 + f I sizeZ d field_51881 + f [Ljava/lang/Object; cache e field_51882 + m (II)Ljava/lang/Object; get a method_60482 + p 1 x + p 2 z + m (IIILnet/minecraft/util/StaticCache2D$Initializer;)Lnet/minecraft/util/StaticCache2D; create a method_60483 + p 0 centerX + p 1 centerZ + p 2 size + p 3 initializer + m (Ljava/util/function/Consumer;)V forEach a method_60484 + p 1 action + m (II)Z contains b method_60485 + p 1 x + p 2 z + m (II)I getIndex c method_60486 + p 1 x + p 2 z + m (IIIILnet/minecraft/util/StaticCache2D$Initializer;)V + p 1 minX + p 2 minZ + p 3 sizeX + p 4 sizeZ + p 5 initializer +c net/minecraft/util/StaticCache2D$Initializer azi$a net/minecraft/class_9762$class_9763 +c net/minecraft/util/StringDecomposer azj net/minecraft/class_5223 + f C REPLACEMENT_CHAR a field_29861 + f Ljava/util/Optional; STOP_ITERATION b field_24215 + m (Lnet/minecraft/util/FormattedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27470 a method_27470 + m (Ljava/lang/String;)Ljava/lang/String; filterBrokenSurrogates a method_27471 + p 0 text + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27472 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 skip + c The amount of characters to skip from the beginning. + p 2 style + p 3 sink + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27473 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 skip + c The amount of character to skip from the beginning. + p 2 currentStyle + c The current style at the starting position after the skip. + p 3 defaultStyle + c The default style for the sequence that should be applied after a reset format code ({@code §r}) + p 4 sink + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterate a method_27474 + p 0 text + p 1 style + p 2 sink + m (Ljava/lang/StringBuilder;ILnet/minecraft/network/chat/Style;I)Z method_31401 a method_31401 + m (Lnet/minecraft/network/chat/FormattedText;)Ljava/lang/String; getPlainText a method_31402 + p 0 text + m (Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27476 + p 0 text + p 1 style + p 2 sink + m (Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;IC)Z feedChar a method_27477 + p 0 style + p 1 sink + p 2 position + p 3 character + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateBackwards b method_27478 + p 0 text + p 1 style + p 2 sink + m (Ljava/lang/StringBuilder;ILnet/minecraft/network/chat/Style;I)Z method_27475 b method_27475 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted c method_27479 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 style + p 2 sink + m ()V + m ()V +c net/minecraft/util/StringRepresentable azk net/minecraft/class_3542 + f I PRE_BUILT_MAP_THRESHOLD W field_38377 + m (Lnet/minecraft/util/StringRepresentable;)Lnet/minecraft/util/StringRepresentable; method_53949 a method_53949 + m (Ljava/lang/String;)Ljava/lang/String; method_53950 a method_53950 + m (Ljava/util/Map;Ljava/lang/String;)Lnet/minecraft/util/StringRepresentable; method_53951 a method_53951 + m (Ljava/util/function/Function;Lnet/minecraft/util/StringRepresentable;)Ljava/lang/String; method_53952 a method_53952 + m (Ljava/util/function/Supplier;)Lnet/minecraft/util/StringRepresentable$EnumCodec; fromEnum a method_28140 + p 0 elementsSupplier + m (Ljava/util/function/Supplier;Ljava/util/function/Function;)Lnet/minecraft/util/StringRepresentable$EnumCodec; fromEnumWithMapping a method_49454 + p 0 enumValues + p 1 keyFunction + m ([Lnet/minecraft/util/StringRepresentable;)Lcom/mojang/serialization/Keyable; keys a method_28142 + p 0 serializables + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;)Ljava/util/function/Function; createNameLookup a method_53953 + p 0 values + p 1 keyFunction + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/lang/String;)Lnet/minecraft/util/StringRepresentable; method_53954 a method_53954 + m (Ljava/lang/String;)Ljava/lang/String; method_49451 b method_49451 + m (Ljava/util/function/Supplier;)Lcom/mojang/serialization/Codec; fromValues b method_53955 + p 0 valuesSupplier + m ()Ljava/lang/String; getSerializedName c method_15434 +c net/minecraft/util/StringRepresentable$1 azk$1 net/minecraft/class_3542$1 + f [Lnet/minecraft/util/StringRepresentable; val$values a field_35666 + m ([Lnet/minecraft/util/StringRepresentable;)V +c net/minecraft/util/StringRepresentable$EnumCodec azk$a net/minecraft/class_3542$class_7292 + f Ljava/util/function/Function; resolver a field_38379 + m (Ljava/lang/Object;)I method_42632 a method_42632 + m (Ljava/lang/String;)Ljava/lang/Enum; byName a method_42633 + p 1 name + m (Ljava/lang/String;Ljava/lang/Enum;)Ljava/lang/Enum; byName a method_47920 + p 1 name + p 2 defaultValue + m ([Ljava/lang/Enum;Ljava/util/function/Function;)V + p 1 values + p 2 resolver +c net/minecraft/util/StringRepresentable$StringRepresentableCodec azk$b net/minecraft/class_3542$class_8808 + f Lcom/mojang/serialization/Codec; codec a field_46245 + m (Lnet/minecraft/util/StringRepresentable;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_53956 + p 1 input + p 2 ops + p 3 prefix + m ([Lnet/minecraft/util/StringRepresentable;I)Lnet/minecraft/util/StringRepresentable; method_53957 a method_53957 + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/util/function/ToIntFunction;)V + p 1 values + p 2 nameLookup + p 3 indexLookup +c net/minecraft/util/StringUtil azl net/minecraft/class_3544 + f Ljava/util/regex/Pattern; STRIP_COLOR_PATTERN a field_15771 + f Ljava/util/regex/Pattern; LINE_PATTERN b field_29204 + f Ljava/util/regex/Pattern; LINE_END_PATTERN c field_33559 + m (C)Z isAllowedChatCharacter a method_57175 + p 0 character + m (I)Z isWhitespace a method_57176 + p 0 character + m (IF)Ljava/lang/String; formatTickDuration a method_15439 + p 0 ticks + p 1 ticksPerSecond + m (Ljava/lang/String;)Ljava/lang/String; stripColor a method_15440 + p 0 text + m (Ljava/lang/String;IZ)Ljava/lang/String; truncateStringIfNecessary a method_34963 + p 0 string + p 1 maxSize + p 2 addEllipsis + m (Ljava/lang/String;Z)Ljava/lang/String; filterText a method_57177 + p 0 text + p 1 allowLineBreaks + m (I)Z method_57178 b method_57178 + m (Ljava/lang/String;)Z isNullOrEmpty b method_15438 + c Returns a value indicating whether the given string is null or empty. + p 0 string + m (Ljava/lang/String;)I lineCount c method_34238 + p 0 string + m (Ljava/lang/String;)Z endsWithNewLine d method_36358 + p 0 string + m (Ljava/lang/String;)Ljava/lang/String; trimChatMessage e method_43681 + p 0 string + m (Ljava/lang/String;)Z isValidPlayerName f method_57179 + p 0 playerName + m (Ljava/lang/String;)Ljava/lang/String; filterText g method_57180 + p 0 text + m (Ljava/lang/String;)Z isBlank h method_57181 + p 0 string + m ()V + m ()V +c net/minecraft/util/TaskChainer azm net/minecraft/class_7620 + f Lorg/slf4j/Logger; LOGGER a field_39831 + m (Ljava/lang/Runnable;Ljava/lang/Object;)V method_54441 a method_54441 + m ()V +c net/minecraft/util/TaskChainer$1 azm$1 net/minecraft/class_7620$1 + f Ljava/util/concurrent/Executor; val$executor b field_46770 + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_54442 a method_54442 + m (Ljava/util/concurrent/Executor;)V +c net/minecraft/util/ThreadingDetector azn net/minecraft/class_5798 + f Lorg/slf4j/Logger; LOGGER a field_36293 + f Ljava/lang/String; name b field_36294 + f Ljava/util/concurrent/Semaphore; lock c field_36295 + f Ljava/util/concurrent/locks/Lock; stackTraceLock d field_36296 + f Ljava/lang/Thread; threadThatFailedToAcquire e field_36297 + f Lnet/minecraft/ReportedException; fullException f field_36298 + m ()V checkAndLock a method_39935 + m (Ljava/lang/String;Ljava/lang/Thread;)Lnet/minecraft/ReportedException; makeThreadingException a method_33564 + p 0 accessed + p 1 thread + m (Ljava/lang/Thread;)Ljava/lang/String; stackTrace a method_39936 + p 0 thread + m ()V checkAndUnlock b method_39937 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/util/TimeSource azo net/minecraft/class_7576 +c net/minecraft/util/TimeSource$NanoTimeSource azo$a net/minecraft/class_7576$class_7577 +c net/minecraft/util/TimeUtil azp net/minecraft/class_4802 + f J NANOSECONDS_PER_SECOND a field_33868 + f J NANOSECONDS_PER_MILLISECOND b field_33869 + f J MILLISECONDS_PER_SECOND c field_46957 + f J SECONDS_PER_HOUR d field_46958 + f I SECONDS_PER_MINUTE e field_47726 + m (II)Lnet/minecraft/util/valueproviders/UniformInt; rangeOfSeconds a method_24505 + p 0 minInclusive + p 1 maxInclusive + m ()V + m ()V +c net/minecraft/util/ToFloatFunction azq net/minecraft/class_6501 + f Lnet/minecraft/util/ToFloatFunction; IDENTITY a field_37409 + m (F)F method_41307 a method_41307 + m (Lit/unimi/dsi/fastutil/floats/Float2FloatFunction;)Lnet/minecraft/util/ToFloatFunction; createUnlimited a method_41308 + p 0 wrapped + m (Ljava/lang/Object;)F apply a method_41296 + p 1 object + m (Ljava/util/function/Function;)Lnet/minecraft/util/ToFloatFunction; comap a method_41309 + p 1 converter + m ()F minValue b comp_532 + m ()F maxValue c comp_533 + m ()V +c net/minecraft/util/ToFloatFunction$1 azq$1 net/minecraft/class_6501$1 + f Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; val$function b field_37410 + m (Ljava/lang/Float;)F apply a method_41310 + m (Lit/unimi/dsi/fastutil/floats/Float2FloatFunction;)V +c net/minecraft/util/ToFloatFunction$2 azq$2 net/minecraft/class_6501$2 + f Lnet/minecraft/util/ToFloatFunction; val$outer b field_37411 + f Ljava/util/function/Function; val$function c field_37412 + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Ljava/util/function/Function;)V +c net/minecraft/util/Tuple azr net/minecraft/class_3545 + f Ljava/lang/Object; a a field_15772 + f Ljava/lang/Object; b b field_15773 + m ()Ljava/lang/Object; getA a method_15442 + m (Ljava/lang/Object;)V setA a method_34964 + p 1 a + m ()Ljava/lang/Object; getB b method_15441 + m (Ljava/lang/Object;)V setB b method_34965 + p 1 b + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 1 a + p 2 b +c net/minecraft/util/Unit azs net/minecraft/class_3902 + f Lnet/minecraft/util/Unit; INSTANCE a field_17274 + f Lcom/mojang/serialization/Codec; CODEC b field_51563 + f [Lnet/minecraft/util/Unit; $VALUES c field_17275 + m ()[Lnet/minecraft/util/Unit; $values a method_36588 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/VisibleForDebug azt net/minecraft/class_5996 +c net/minecraft/util/ZeroBitStorage azu net/minecraft/class_6502 + f [J RAW a field_34401 + f I size b field_34402 + m (I)V + p 1 size + m ()V +c net/minecraft/util/datafix/ComponentDataFixUtils azv net/minecraft/class_8809 + f Ljava/lang/String; EMPTY_CONTENTS a field_46246 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; wrapLiteralStringAsComponent a method_53958 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53959 a method_53959 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; createEmptyComponent a method_53960 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createPlainTextComponent a method_53961 + p 0 ops + p 1 text + m (Ljava/lang/String;)Ljava/util/Optional; extractTranslationString a method_58596 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; rewriteFromLenient b method_56629 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createTranslatableComponent b method_53963 + p 0 ops + p 1 translationKey + m (Ljava/lang/String;)Ljava/lang/String; createTextComponentJson b method_53962 + p 0 text + m ()V + m ()V +c net/minecraft/util/datafix/DataFixTypes azw net/minecraft/class_4284 + f Lnet/minecraft/util/datafix/DataFixTypes; LEVEL a field_19212 + f Lnet/minecraft/util/datafix/DataFixTypes; PLAYER b field_19213 + f Lnet/minecraft/util/datafix/DataFixTypes; CHUNK c field_19214 + f Lnet/minecraft/util/datafix/DataFixTypes; HOTBAR d field_19215 + f Lnet/minecraft/util/datafix/DataFixTypes; OPTIONS e field_19216 + f Lnet/minecraft/util/datafix/DataFixTypes; STRUCTURE f field_19217 + f Lnet/minecraft/util/datafix/DataFixTypes; STATS g field_19218 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_COMMAND_STORAGE h field_45077 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_FORCED_CHUNKS i field_45078 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_MAP_DATA j field_45079 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_MAP_INDEX k field_45080 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_RAIDS l field_45081 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_RANDOM_SEQUENCES m field_45082 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_SCOREBOARD n field_45083 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_STRUCTURE_FEATURE_INDICES o field_45084 + f Lnet/minecraft/util/datafix/DataFixTypes; ADVANCEMENTS p field_19220 + f Lnet/minecraft/util/datafix/DataFixTypes; POI_CHUNK q field_19221 + f Lnet/minecraft/util/datafix/DataFixTypes; WORLD_GEN_SETTINGS r field_24640 + f Lnet/minecraft/util/datafix/DataFixTypes; ENTITY_CHUNK s field_26990 + f Ljava/util/Set; TYPES_FOR_LEVEL_LIST t field_42975 + f Lcom/mojang/datafixers/DSL$TypeReference; type u field_19222 + f [Lnet/minecraft/util/datafix/DataFixTypes; $VALUES v field_19223 + m ()I currentVersion a method_48132 + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; updateToCurrentVersion a method_48128 + p 1 fixer + p 2 input + p 3 version + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; update a method_48129 + p 1 fixer + p 2 input + p 3 version + p 4 newVersion + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; updateToCurrentVersion a method_48130 + p 1 fixer + p 2 tag + p 3 version + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/nbt/CompoundTag;II)Lnet/minecraft/nbt/CompoundTag; update a method_48131 + p 1 fixer + p 2 tag + p 3 version + p 4 newVersion + m (Lcom/mojang/serialization/Codec;Lcom/mojang/datafixers/DataFixer;I)Lcom/mojang/serialization/Codec; wrapCodec a method_53711 + p 1 codec + p 2 dataFixer + p 3 dataVersion + m ()[Lnet/minecraft/util/datafix/DataFixTypes; $values b method_36589 + m (Ljava/lang/String;ILcom/mojang/datafixers/DSL$TypeReference;)V + p 3 type + m ()V +c net/minecraft/util/datafix/DataFixTypes$1 azw$1 net/minecraft/class_4284$1 + f Lcom/mojang/serialization/Codec; val$codec a field_46087 + f I val$defaultVersion b field_46088 + f Lcom/mojang/datafixers/DataFixer; val$dataFixer c field_46089 + f Lnet/minecraft/util/datafix/DataFixTypes; field_46090 d field_46090 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_53712 a method_53712 + m (Lnet/minecraft/util/datafix/DataFixTypes;Lcom/mojang/serialization/Codec;ILcom/mojang/datafixers/DataFixer;)V +c net/minecraft/util/datafix/DataFixers azx net/minecraft/class_3551 + f I BLENDING_VERSION a field_38844 + f Ljava/util/function/BiFunction; SAME b field_15776 + f Ljava/util/function/BiFunction; SAME_NAMESPACED c field_15775 + f Lcom/mojang/datafixers/DataFixerBuilder$Result; DATA_FIXER d field_15777 + m ()Lcom/mojang/datafixers/DataFixer; getDataFixer a method_15450 + m (Lcom/google/common/collect/ImmutableMap;Ljava/lang/String;)Ljava/lang/String; method_43060 a method_43060 + m (Lcom/mojang/datafixers/DataFixerBuilder;)V addFixers a method_15451 + p 0 builder + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43061 a method_43061 + m (Ljava/lang/String;)Ljava/lang/String; method_51289 a method_51289 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/function/UnaryOperator; createRenamer a method_30068 + p 0 oldName + p 1 newName + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_30069 a method_30069 + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; createRenamerNoNamespace a method_57075 + p 0 renameMap + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_30071 a method_30071 + m (Ljava/util/Set;)Ljava/util/concurrent/CompletableFuture; optimize a method_60487 + p 0 references + m ()Lcom/mojang/datafixers/DataFixerBuilder$Result; createFixerUpper b method_15471 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43062 b method_43062 + m (Ljava/lang/String;)Ljava/lang/String; method_15459 b method_15459 + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; createRenamer b method_30070 + p 0 renameMap + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_57076 b method_57076 + m (Ljava/lang/String;)Ljava/lang/String; method_15455 c method_15455 + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_44184 c method_44184 + m (Ljava/lang/String;)Ljava/lang/String; method_15449 d method_15449 + m ()V + m ()V +c net/minecraft/util/datafix/DataFixers$1 azx$1 net/minecraft/class_3551$1 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V +c net/minecraft/util/datafix/DataFixers$2 azx$2 net/minecraft/class_3551$2 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V +c net/minecraft/util/datafix/ExtraDataFixUtils azy net/minecraft/class_9228 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; cast a method_57182 + p 0 type + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockPos a method_56943 + p 0 data + m ([Ljava/util/function/Function;)Ljava/util/function/Function; chainAllFilters a method_59907 + p 0 filters + m ([Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59908 a method_59908 + m ()V +c net/minecraft/util/datafix/FixWolfHealth azz net/minecraft/class_9229 + f Ljava/lang/String; WOLF_ID a field_49054 + f Ljava/lang/String; WOLF_HEALTH b field_49055 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56948 a method_56948 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56949 a method_56949 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56950 b method_56950 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56951 b method_56951 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56952 c method_56952 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/PackedBitStorage baa net/minecraft/class_5298 + f I BIT_TO_LONG_SHIFT a field_29862 + f [J data b field_24641 + f I bits c field_24642 + f J mask d field_24643 + f I size e field_24644 + m ()[J getRaw a method_28151 + m (I)I get a method_28152 + p 1 index + m (II)V set a method_28153 + p 1 index + p 2 value + m ()I getBits b method_28154 + m (II)V + p 1 bits + p 2 size + m (II[J)V + p 1 bits + p 2 size + p 3 data +c net/minecraft/util/datafix/fixes/AbstractArrowPickupFix bab net/minecraft/class_5946 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateProjectiles a method_34684 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_34685 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updatePickup a method_34686 + p 0 dynamic + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_34687 a method_34687 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/AbstractPoiSectionFix bac net/minecraft/class_4620 + f Ljava/lang/String; name a field_39402 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23302 a method_23302 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_23299 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_44185 a method_44185 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28243 a method_28243 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; processRecords a method_44186 + p 1 records + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23305 b method_23305 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; processSection b method_44187 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; processSectionRecords c method_44188 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28246 d method_28246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/AbstractUUIDFix bad net/minecraft/class_4958 + f Lcom/mojang/datafixers/DSL$TypeReference; typeReference a field_23121 + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateNamedChoice a method_26009 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; createUUIDFromML a method_26002 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;JJ)Ljava/util/Optional; createUUIDTag a method_26003 + p 0 dynamic + p 1 most + p 3 least + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28155 a method_28155 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; createUUIDFromString a method_26005 + p 0 dynamic + p 1 uuidKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDString a method_26006 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28156 a method_28156 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28157 a method_28157 + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26010 a method_26010 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDMLTag b method_26011 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28158 b method_28158 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDLeastMost c method_26013 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; createUUIDFromLongs d method_26014 + p 0 dynamic + p 1 mostKey + p 2 leastKey + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 typeReference +c net/minecraft/util/datafix/fixes/AddFlagIfNotPresentFix bae net/minecraft/class_6636 + f Ljava/lang/String; name a field_35009 + f Z flagValue b field_35010 + f Ljava/lang/String; flagKey c field_35011 + f Lcom/mojang/datafixers/DSL$TypeReference; typeReference d field_35012 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38789 a method_38789 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38790 a method_38790 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38791 b method_38791 + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Z)V + p 1 outputSchema + p 2 typeReference + p 3 flagKey + p 4 flagValue +c net/minecraft/util/datafix/fixes/AddNewChoices baf net/minecraft/class_3553 + f Ljava/lang/String; name a field_15779 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_15780 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15476 + p 1 inputChoiceType + p 2 outputChoiceType + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15475 a method_15475 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15477 a method_15477 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 name + p 3 type +c net/minecraft/util/datafix/fixes/AdvancementsFix bag net/minecraft/class_3555 + f Ljava/util/Map; RENAMES a field_15788 + m (Ljava/lang/String;)Ljava/lang/String; method_24238 a method_24238 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/AdvancementsRenameFix bah net/minecraft/class_4744 + f Ljava/lang/String; name a field_21814 + f Ljava/util/function/Function; renamer b field_21815 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24242 a method_24242 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28159 a method_28159 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28160 a method_28160 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28161 a method_28161 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/util/function/Function;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 renamer +c net/minecraft/util/datafix/fixes/AreaEffectCloudPotionFix bai net/minecraft/class_9263 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_57191 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/AttributeModifierIdFix baj net/minecraft/class_9785 + f Ljava/util/Map; ID_MAP a field_51992 + f Ljava/util/Map; NAME_MAP b field_51993 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60678 a method_60678 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixEntity a method_60679 + p 0 entity + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; convertModifierForEntity a method_60680 + p 0 modifier + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60681 a method_60681 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)V method_60682 a method_60682 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixModifiersTypeWrapper a method_60683 + p 0 modifiers + m ([I)Ljava/util/UUID; uuidFromIntArray a method_60684 + p 0 intArray + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60685 b method_60685 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixItemStackComponents b method_60686 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixModifiers b method_60687 + p 0 modifiers + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAttribute c method_60688 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_60689 c method_60689 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60690 d method_60690 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_60691 d method_60691 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60692 e method_60692 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60693 f method_60693 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60694 g method_60694 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60695 h method_60695 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/AttributesRename bak net/minecraft/class_5129 + f Ljava/lang/String; name a field_49056 + f Ljava/util/function/UnaryOperator; renames b field_23695 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26809 a method_26809 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixItemStackTag a method_26810 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixName a method_26808 + p 1 data + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28162 a method_28162 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixEntity b method_26814 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28163 b method_28163 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28164 b method_28164 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28165 c method_28165 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28166 d method_28166 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28167 e method_28167 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28168 f method_28168 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28169 g method_28169 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/BannerEntityCustomNameToOverrideComponentFix bal net/minecraft/class_9451 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;)Lcom/mojang/datafixers/Typed; fix a method_58597 + p 1 data + p 2 finder + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58598 a method_58598 + m (Lcom/mojang/serialization/OptionalDynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58599 a method_58599 + m (Ljava/lang/String;)Z method_58600 a method_58600 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BannerPatternFormatFix bam net/minecraft/class_9264 + f Ljava/util/Map; PATTERN_ID_MAP a field_49187 + m (I)Ljava/lang/String; fixColor a method_57192 + p 0 color + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_57193 + p 0 tag + m (Ljava/lang/String;)Ljava/lang/String; method_57194 a method_57194 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixLayer b method_57195 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57197 c method_57197 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57198 d method_57198 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BedItemColorFix ban net/minecraft/class_3559 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15521 a method_15521 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BeehiveFieldRenameFix bao net/minecraft/class_9265 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57199 a method_57199 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57200 a method_57200 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57201 a method_57201 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57202 a method_57202 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBeehive a method_57203 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBee b method_57204 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BiomeFix bap net/minecraft/class_3561 + f Ljava/util/Map; BIOMES a field_15810 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/BitStorageAlignFix baq net/minecraft/class_5196 + f I BIT_TO_LONG_SHIFT a field_29863 + f I SECTION_WIDTH b field_29864 + f I SECTION_HEIGHT c field_29865 + f I SECTION_SIZE d field_29866 + f I HEIGHTMAP_BITS e field_29867 + f I HEIGHTMAP_SIZE f field_29868 + m (II[J)[J addPadding a method_27288 + p 0 numBits + p 1 bitWidth + p 2 inputData + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28172 a method_28172 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27292 a method_27292 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateSections a method_27774 + p 0 sections + p 2 palette + p 3 data + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27294 a method_27294 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27295 a method_27295 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateHeightmaps a method_27775 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27769 a method_27769 + m (Lcom/mojang/serialization/Dynamic;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28173 a method_28173 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_27773 a method_27773 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28174 a method_28174 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateBitStorage a method_27772 + p 0 output + p 1 data + p 2 numBits + p 3 bitWidth + m (Ljava/util/List;)Ljava/lang/Integer; method_27296 a method_27296 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27293 b method_27293 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28175 b method_28175 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlendingDataFix bar net/minecraft/class_7090 + f Ljava/lang/String; name a field_37414 + f Ljava/util/Set; STATUSES_TO_SKIP_BLENDING b field_37415 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41311 a method_41311 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44685 a method_44685 + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateBlendingData a method_41313 + p 0 chunkTag + p 1 maxY + p 2 minY + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_41312 + p 0 chunkTag + p 1 context + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BlendingDataRemoveFromNetherEndFix bas net/minecraft/class_7589 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_44686 a method_44686 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44687 a method_44687 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_44688 + p 0 chunkTag + p 1 context + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlockEntityBannerColorFix bat net/minecraft/class_3564 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15546 + p 1 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_15545 a method_15545 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28176 b method_28176 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28177 c method_28177 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28178 d method_28178 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28179 e method_28179 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityBlockStateFix bau net/minecraft/class_3566 + m ()Ljava/lang/IllegalStateException; method_15553 a method_15553 + m ()Ljava/lang/IllegalStateException; method_15554 b method_15554 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityCustomNameToComponentFix bav net/minecraft/class_3567 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15555 a method_15555 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28180 a method_28180 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityIdFix baw net/minecraft/class_3571 + f Ljava/util/Map; ID_MAP a field_15824 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15576 a method_15576 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28181 a method_28181 + m (Ljava/lang/String;)Ljava/lang/String; method_15577 a method_15577 + m (Ljava/util/HashMap;)V method_15575 a method_15575 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/BlockEntityJukeboxFix bax net/minecraft/class_3573 + m ()Ljava/lang/IllegalStateException; method_15578 a method_15578 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityKeepPacked bay net/minecraft/class_3574 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15579 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityRenameFix baz net/minecraft/class_8220 + f Ljava/lang/String; name a field_43174 + f Ljava/util/function/UnaryOperator; nameChangeLookup b field_43175 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/DataFix; create a method_49756 + p 0 outputSchema + p 1 name + p 2 nameChangeLookup + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_49757 a method_49757 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_49758 a method_49758 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 nameChangeLookup +c net/minecraft/util/datafix/fixes/BlockEntityShulkerBoxColorFix bba net/minecraft/class_3575 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15580 a method_15580 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntitySignDoubleSidedEditableTextFix bbb net/minecraft/class_8221 + f Ljava/lang/String; FILTERED_CORRECT a field_45085 + f Ljava/lang/String; DEFAULT_COLOR b field_45086 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49760 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/stream/Stream; getLines a method_52469 + p 0 dynamic + p 1 prefix + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; method_52470 a method_52470 + m (Ljava/util/List;Ljava/util/Optional;J)Lcom/mojang/serialization/Dynamic; method_52471 a method_52471 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFrontTextTag b method_52472 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; createDefaultText c method_52473 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; createEmptyLines d method_52474 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 entityName +c net/minecraft/util/datafix/fixes/BlockEntitySignTextStrictJsonFix bbc net/minecraft/class_3577 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15581 a method_15581 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateLine a method_15582 + p 1 dynamic + p 2 key + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityUUIDFix bbd net/minecraft/class_4959 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26016 a method_26016 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26015 a method_26015 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSkull b method_26017 + p 1 skullTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateConduit c method_26018 + p 1 conduitTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26019 d method_26019 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlockNameFlatteningFix bbe net/minecraft/class_3578 + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/String; method_15584 a method_15584 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15586 a method_15586 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15585 a method_15585 + m (Ljava/lang/String;)Ljava/lang/String; method_15587 a method_15587 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockPosFormatAndRenamesFix bbf net/minecraft/class_9230 + f Ljava/util/List; PATROLLING_MOBS a field_49057 + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)Lcom/mojang/datafixers/TypeRewriteRule; createEntityFixer a method_56953 + p 1 reference + p 2 entityId + p 3 renames + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/Map;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56954 a method_56954 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56955 a method_56955 + m (Lcom/mojang/datafixers/Typed;Ljava/util/Map;)Lcom/mojang/datafixers/Typed; fixFields a method_56956 + p 1 data + p 2 renames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMapSavedData a method_56957 + p 1 data + m (Ljava/util/List;)V addEntityRules a method_56958 + p 1 output + m (Ljava/util/Map;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56959 a method_56959 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56960 a method_56960 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56961 b method_56961 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56962 b method_56962 + m (Ljava/util/List;)V addBlockEntityRules b method_56963 + p 1 output + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56964 c method_56964 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56965 d method_56965 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56966 e method_56966 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56967 f method_56967 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56968 g method_56968 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56969 h method_56969 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BlockRenameFix bbg net/minecraft/class_3579 + f Ljava/lang/String; name a field_15828 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_55637 a method_55637 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; create a method_15589 + p 0 outputSchema + p 1 name + p 2 renamer + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15591 a method_15591 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockState a method_15588 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15590 a method_15590 + m (Ljava/lang/String;)Ljava/lang/String; renameBlock a method_15593 + p 1 name + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15592 b method_15592 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_55638 b method_55638 + m (Ljava/lang/String;)Ljava/lang/String; fixFlatBlockState b method_55639 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/BlockRenameFix$1 bbg$1 net/minecraft/class_3579$1 + f Ljava/util/function/Function; val$renamer a field_15829 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V +c net/minecraft/util/datafix/fixes/BlockStateData bbh net/minecraft/class_3580 + f Ljava/lang/String; FILTER_ME a field_29869 + f Lorg/slf4j/Logger; LOGGER b field_15832 + f [Lcom/mojang/serialization/Dynamic; MAP c field_24645 + f [Lcom/mojang/serialization/Dynamic; BLOCK_DEFAULTS d field_24646 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; ID_BY_OLD e field_15831 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; ID_BY_OLD_NAME f field_15833 + m ()V bootstrap0 a method_31448 + m (I)Ljava/lang/String; upgradeBlock a method_15599 + p 0 id + m (ILjava/lang/String;[Ljava/lang/String;)V register a method_15596 + p 0 id + p 1 fixedNBT + p 2 sourceNBTs + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; upgradeBlockStateTag a method_15597 + p 0 nbt + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_15595 a method_15595 + m (Ljava/lang/String;)Ljava/lang/String; upgradeBlock a method_15600 + p 0 name + m ()V bootstrap1 b method_31449 + m (I)Lcom/mojang/serialization/Dynamic; getTag b method_15594 + p 0 id + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_15601 b method_15601 + m (Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; parse b method_15598 + p 0 nbt + m ()V bootstrap2 c method_31450 + m ()V bootstrap3 d method_31451 + m ()V bootstrap4 e method_31452 + m ()V bootstrap5 f method_31453 + m ()V bootstrap6 g method_31454 + m ()V bootstrap7 h method_31455 + m ()V bootstrap8 i method_31456 + m ()V bootstrap9 j method_31457 + m ()V bootstrap10 k method_31458 + m ()V bootstrap11 l method_31459 + m ()V bootstrap12 m method_31460 + m ()V bootstrap13 n method_31461 + m ()V bootstrap14 o method_31462 + m ()V bootstrap15 p method_31463 + m ()V finalizeMaps q method_22426 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/BlockStateStructureTemplateFix bbi net/minecraft/class_3581 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15602 a method_15602 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CatTypeFix bbj net/minecraft/class_3903 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_17325 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CauldronRenameFix bbk net/minecraft/class_5528 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_31464 a method_31464 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_31465 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CavesAndCliffsRenames bbl net/minecraft/class_6669 + f Lcom/google/common/collect/ImmutableMap; RENAMES a field_35100 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/ChestedHorsesInventoryZeroIndexingFix bbm net/minecraft/class_9182 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56630 a method_56630 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56631 a method_56631 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56632 a method_56632 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;)Lcom/mojang/datafixers/TypeRewriteRule; horseLikeInventoryIndexingFixer a method_56633 + p 1 opticFinder + p 2 type + p 3 entityId + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56634 a method_56634 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56635 a method_56635 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56636 b method_56636 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56637 b method_56637 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56638 c method_56638 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkBedBlockEntityInjecterFix bbn net/minecraft/class_3557 + m ()Ljava/lang/IllegalStateException; method_15507 a method_15507 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15510 a method_15510 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/templates/List$ListType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15506 + p 1 levelType + p 2 tileEntityTypes + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15511 a method_15511 + m (Lcom/mojang/serialization/Dynamic;IIIIJ)Ljava/util/Map; method_49456 a method_49456 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28171 a method_28171 + m (Ljava/util/List;Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)V method_49457 a method_49457 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkBiomeFix bbo net/minecraft/class_4541 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_22374 a method_22374 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_22375 a method_22375 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_22373 a method_22373 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkDeleteIgnoredLightDataFix bbp net/minecraft/class_7091 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41314 a method_41314 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41315 a method_41315 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41316 a method_41316 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkDeleteLightFix bbq net/minecraft/class_8525 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51497 a method_51497 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51498 a method_51498 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51499 a method_51499 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51500 b method_51500 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkHeightAndBiomeFix bbr net/minecraft/class_6637 + f Ljava/lang/String; DATAFIXER_CONTEXT_TAG a field_35444 + f I BLOCKS_PER_SECTION b field_36214 + f Ljava/lang/String; DEFAULT_BIOME c field_35016 + f Ljava/lang/String; NAME d field_35017 + f I OLD_SECTION_COUNT e field_35018 + f I NEW_SECTION_COUNT f field_35019 + f I NEW_MIN_SECTION_Y g field_35020 + f I LONGS_PER_SECTION h field_36215 + f I HEIGHTMAP_BITS i field_35022 + f J HEIGHTMAP_MASK j field_35023 + f I HEIGHTMAP_OFFSET k field_35024 + f [Ljava/lang/String; HEIGHTMAP_TYPES l field_35025 + f Ljava/util/Set; STATUS_IS_OR_AFTER_SURFACE m field_35667 + f Ljava/util/Set; STATUS_IS_OR_AFTER_NOISE n field_35668 + f Ljava/util/Set; BLOCKS_BEFORE_FEATURE_STATUS o field_35669 + f I BIOME_CONTAINER_LAYER_SIZE p field_35026 + f I BIOME_CONTAINER_SIZE q field_35027 + f I BIOME_CONTAINER_TOP_LAYER_OFFSET r field_35028 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; BIOMES_BY_ID s field_35029 + m ()Ljava/lang/IllegalStateException; method_38811 a method_38811 + m (I)I ceillog2 a method_38793 + p 0 value + m (IILcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_38794 a method_38794 + m (J)J method_38795 a method_38795 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38796 a method_38796 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38797 a method_38797 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; shiftUpgradeData a method_39754 + p 0 data + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateCarvingMasks a method_38799 + p 0 data + p 1 sectionCount + p 2 offset + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makePalettedContainer a method_38802 + p 0 palette + p 1 blockStates + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Ljava/util/List;)Lcom/mojang/serialization/Dynamic; padPaletteEntries a method_39781 + p 0 palette + p 1 blockStates + p 2 paletteEntries + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lcom/mojang/serialization/Dynamic; makeBiomeContainer a method_38803 + p 0 data + p 1 oldBiomeGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)Lcom/mojang/serialization/Dynamic; method_38804 a method_38804 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; addPaddingEntries a method_38805 + p 0 data + p 1 key + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Set;)Lcom/mojang/serialization/Dynamic; predictChunkStatusBeforeSurface a method_39517 + p 1 data + p 2 blockPalette + m (Lcom/mojang/serialization/Dynamic;ZILorg/apache/commons/lang3/mutable/MutableBoolean;)[Lcom/mojang/serialization/Dynamic; getBiomeContainers a method_38806 + p 0 data + p 1 overworld + p 2 lowestY + p 3 isTallChunk + m (Lcom/mojang/serialization/Dynamic;ZZZLjava/util/function/Supplier;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_38807 + p 0 chunkTag + p 1 overworld + p 2 isTallChunk + p 3 isNoiseGenerator + p 4 paletteSupplier + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_39755 a method_39755 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)V method_39756 a method_39756 + m (Ljava/util/Map;Ljava/util/Map;)V method_39757 a method_39757 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39518 a method_39518 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;I[Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/IntSet;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38801 a method_38801 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;I[Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38800 a method_38800 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_38817 a method_38817 + m (ZLjava/util/Set;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/lang/String;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38808 a method_38808 + m ([II)I getOldBiome a method_39519 + p 0 biomes + p 1 index + m ([III)I method_38809 a method_38809 + m ()Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39242 b method_39242 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateHeightmaps b method_38798 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makeOptimizedPalettedContainer b method_38813 + p 0 palette + p 1 blockStates + m ([II)I method_38810 b method_38810 + m ([III)I method_38814 b method_38814 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; getFixedHeightmap c method_38812 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38819 c method_38819 + m ([II)I method_38815 c method_38815 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makePalettedContainer d method_38816 + p 0 palette + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38818 e method_38818 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39758 f method_39758 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39243 g method_39243 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_39520 h method_39520 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ChunkLightRemoveFix bbs net/minecraft/class_3755 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16441 a method_16441 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16442 a method_16442 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_16440 a method_16440 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix bbt net/minecraft/class_3582 + f Ljava/util/Map; BED_BLOCK_MAP A field_15849 + f Ljava/util/Map; BANNER_BLOCK_MAP B field_15851 + f Lcom/mojang/serialization/Dynamic; AIR C field_15843 + f I SIZE D field_29870 + f I NORTH_WEST_MASK a field_29871 + f I WEST_MASK b field_29872 + f I SOUTH_WEST_MASK c field_29873 + f I SOUTH_MASK d field_29874 + f I SOUTH_EAST_MASK e field_29875 + f I EAST_MASK f field_29876 + f I NORTH_EAST_MASK g field_29877 + f I NORTH_MASK h field_29878 + f Lorg/slf4j/Logger; LOGGER i field_15844 + f Ljava/util/BitSet; VIRTUAL j field_15842 + f Ljava/util/BitSet; FIX k field_15854 + f Lcom/mojang/serialization/Dynamic; PUMPKIN l field_15840 + f Lcom/mojang/serialization/Dynamic; SNOWY_PODZOL m field_15852 + f Lcom/mojang/serialization/Dynamic; SNOWY_GRASS n field_15838 + f Lcom/mojang/serialization/Dynamic; SNOWY_MYCELIUM o field_15850 + f Lcom/mojang/serialization/Dynamic; UPPER_SUNFLOWER p field_15839 + f Lcom/mojang/serialization/Dynamic; UPPER_LILAC q field_15848 + f Lcom/mojang/serialization/Dynamic; UPPER_TALL_GRASS r field_15834 + f Lcom/mojang/serialization/Dynamic; UPPER_LARGE_FERN s field_15845 + f Lcom/mojang/serialization/Dynamic; UPPER_ROSE_BUSH t field_15835 + f Lcom/mojang/serialization/Dynamic; UPPER_PEONY u field_15847 + f Ljava/util/Map; FLOWER_POT_MAP v field_15841 + f Ljava/util/Map; SKULL_MAP w field_15853 + f Ljava/util/Map; DOOR_MAP x field_15836 + f Ljava/util/Map; NOTE_BLOCK_MAP y field_15846 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; DYE_COLOR_MAP z field_15837 + m (Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap;Lcom/mojang/serialization/Dynamic;)I idFor a method_15616 + p 0 palette + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getName a method_15637 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/lang/String; getProperty a method_15638 + p 0 data + p 1 key + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_15603 a method_15603 + m (Ljava/util/HashMap;)V method_15608 a method_15608 + m (Ljava/util/Map;ILjava/lang/String;)V addBeds a method_15636 + p 0 map + p 1 id + p 2 bedColor + m (Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)V mapSkull a method_15610 + p 0 map + p 1 id + p 2 skullType + p 3 suffix + m (Ljava/util/Map;Ljava/lang/String;I)V mapDoor a method_15611 + p 0 map + p 1 doorId + p 2 id + m (ZZZZ)I getSideMask a method_15615 + p 0 west + p 1 east + p 2 north + p 3 south + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix b method_15633 + p 1 dynamic + m (Ljava/util/HashMap;)V method_15626 b method_15626 + m (Ljava/util/Map;ILjava/lang/String;)V addBanners b method_15605 + p 0 map + p 1 id + p 2 bannerColor + m (Ljava/util/HashMap;)V method_15613 c method_15613 + m (Ljava/util/HashMap;)V method_15607 d method_15607 + m (Ljava/util/HashMap;)V method_15639 e method_15639 + m (Ljava/util/HashMap;)V method_15631 f method_15631 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer bbt$a net/minecraft/class_3582$class_3583 + f I SIZE a field_29879 + f I NIBBLE_SIZE b field_29880 + f [B data c field_15855 + m (I)Z isFirst a method_15641 + m (III)I get a method_15640 + m (I)I getPosition b method_15642 + m ()V + m ([B)V + p 1 data +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction bbt$b net/minecraft/class_3582$class_3584 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; DOWN a field_15858 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; UP b field_15863 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; NORTH c field_15859 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; SOUTH d field_15862 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; WEST e field_15857 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; EAST f field_15860 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; axis g field_15864 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; axisDirection h field_15861 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; $VALUES i field_15865 + m ()Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; getAxisDirection a method_15643 + m ()Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; getAxis b method_15644 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; $values c method_36590 + m (Ljava/lang/String;ILnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection;Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis;)V + p 3 axisDirection + p 4 axis + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis bbt$b$a net/minecraft/class_3582$class_3584$class_3585 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; X a field_15869 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; Y b field_15866 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; Z c field_15867 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; $VALUES d field_15868 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; $values a method_36591 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection bbt$b$b net/minecraft/class_3582$class_3584$class_3586 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; POSITIVE a field_15873 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; NEGATIVE b field_15870 + f I step c field_15872 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; $VALUES d field_15871 + m ()I getStep a method_15645 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; $values b method_36592 + m (Ljava/lang/String;II)V + p 3 step + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section bbt$c net/minecraft/class_3582$class_3587 + f I y a field_15879 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; palette b field_15882 + f Ljava/util/List; listTag c field_15880 + f Lcom/mojang/serialization/Dynamic; section d field_15878 + f Z hasData e field_15876 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; toFix f field_15881 + f Lit/unimi/dsi/fastutil/ints/IntList; update g field_15874 + f Ljava/util/Set; seen h field_15875 + f [I buffer i field_15877 + m ()Lcom/mojang/serialization/Dynamic; write a method_15651 + m (I)Lcom/mojang/serialization/Dynamic; getBlock a method_15649 + p 1 id + m (II)V addFix a method_15650 + m (ILcom/mojang/serialization/Dynamic;)V setBlock a method_15647 + p 1 index + p 2 data + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer; method_15654 a method_15654 + m (I)I upgrade b method_15652 + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer; method_15646 b method_15646 + m (Lcom/mojang/serialization/Dynamic;)V + p 1 section +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$UpgradeChunk bbt$d net/minecraft/class_3582$class_3588 + f I sides a field_15885 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section; sections b field_15888 + f Lcom/mojang/serialization/Dynamic; level c field_15886 + f I x d field_15884 + f I z e field_15883 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; blockEntities f field_15887 + m ()Lcom/mojang/serialization/Dynamic; write a method_15664 + m (I)Lcom/mojang/serialization/Dynamic; getBlock a method_15662 + m (ILnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction;)I relative a method_15663 + p 1 direction + m (ILcom/mojang/serialization/Dynamic;)V setBlock a method_15657 + p 2 dynamic + m (Lcom/mojang/serialization/Dynamic;)V method_15656 a method_15656 + m (Ljava/util/stream/Stream;)V method_15661 a method_15661 + m (I)Lcom/mojang/serialization/Dynamic; getBlockEntity b method_15655 + p 1 index + m (Lcom/mojang/serialization/Dynamic;)V method_15665 b method_15665 + m (Ljava/util/stream/Stream;)V method_15659 b method_15659 + m (I)Lcom/mojang/serialization/Dynamic; removeBlockEntity c method_15660 + p 1 index + m (I)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section; getSection d method_15658 + m (Lcom/mojang/serialization/Dynamic;)V + p 1 level +c net/minecraft/util/datafix/fixes/ChunkProtoTickListFix bbu net/minecraft/class_6740 + f I SECTION_WIDTH a field_35446 + f Lcom/google/common/collect/ImmutableSet; ALWAYS_WATERLOGGED b field_35447 + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39244 a method_39244 + m (I)Z method_39245 a method_39245 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39246 a method_39246 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39247 a method_39247 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39248 a method_39248 + m (Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39249 a method_39249 + m (Lcom/mojang/datafixers/Typed;)Ljava/util/List; method_39250 a method_39250 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;)Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39251 a method_39251 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getBlock a method_39252 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39253 a method_39253 + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;BIILjava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; makeTickList a method_39254 + p 1 data + p 2 palette + p 3 y + p 4 x + p 5 z + p 6 name + p 7 idGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIIILjava/util/function/Function;)Lcom/mojang/serialization/Dynamic; createTick a method_39255 + p 1 data + p 2 palette + p 3 x + p 4 y + p 5 z + p 6 index + p 7 idGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIILjava/util/function/Function;I)Lcom/mojang/serialization/Dynamic; method_39256 a method_39256 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;ILcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39257 a method_39257 + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39258 b method_39258 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getLiquid b method_39259 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39260 b method_39260 + m (Lcom/mojang/serialization/Dynamic;)I method_39261 c method_39261 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/List; method_39262 d method_39262 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39263 e method_39263 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer bbu$a net/minecraft/class_6740$class_6741 + f J SIZE_BITS a field_35448 + f Ljava/util/List; palette b field_35449 + f [J data c field_35450 + f I bits d field_35451 + f J mask e field_35452 + f I valuesPerLong f field_35453 + m ()Ljava/util/List; palette a method_39264 + m (III)Lcom/mojang/serialization/Dynamic; get a method_39265 + p 1 x + p 2 y + p 3 z + m ()[J data b method_39266 + m (III)I getIndex b method_39267 + p 1 x + p 2 y + p 3 z + m (Ljava/util/List;[J)V + p 1 palette + p 2 data +c net/minecraft/util/datafix/fixes/ChunkRenamesFix bbv net/minecraft/class_6742 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39268 a method_39268 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; appendChunkName a method_39269 + p 0 typed + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; mergeRemainders a method_39270 + p 0 typed + p 1 dynamic + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; renameField a method_39271 + p 0 typed + p 1 oldName + p 2 newName + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; renameFieldHelper a method_39272 + p 0 typed + p 1 oldName + p 2 newName + p 3 type + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39938 a method_39938 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_39273 a method_39273 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_39274 a method_39274 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39782 a method_39782 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39275 b method_39275 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkStatusFix bbw net/minecraft/class_3589 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15666 a method_15666 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15667 a method_15667 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkStatusFix2 bbx net/minecraft/class_3788 + f Ljava/util/Map; RENAMES_AND_DOWNGRADES a field_16691 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16642 a method_16642 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16643 a method_16643 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkStructuresTemplateRenameFix bby net/minecraft/class_3590 + f Lcom/google/common/collect/ImmutableMap; RENAMES a field_15889 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49458 a method_49458 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixChildren a method_49459 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15671 + p 1 parent + p 2 child + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49460 b method_49460 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49461 c method_49461 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkToProtochunkFix bbz net/minecraft/class_3591 + f I NUM_SECTIONS a field_29881 + m (I)Lit/unimi/dsi/fastutil/shorts/ShortArrayList; method_39941 a method_39941 + m (III)S packOffsetCoordinates a method_15675 + p 0 x + p 1 y + p 2 z + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixChunkData a method_39943 + p 0 chunkData + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_39944 a method_39944 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39945 a method_39945 + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/shorts/ShortList;)Lcom/mojang/serialization/Dynamic; method_39946 a method_39946 + m (Lcom/mojang/serialization/Dynamic;Ljava/nio/ByteBuffer;)Lcom/mojang/serialization/Dynamic; method_39947 a method_39947 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_39948 a method_39948 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;)V method_39949 a method_39949 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; repackBiomes b method_39951 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; repackTicks c method_39952 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39954 d method_39954 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ColorlessShulkerEntityFix bca net/minecraft/class_3592 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15678 a method_15678 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CriteriaRenameFix bcb net/minecraft/class_7370 + f Ljava/lang/String; name a field_38702 + f Ljava/lang/String; advancementId b field_38703 + f Ljava/util/function/UnaryOperator; conversions c field_38704 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_43063 a method_43063 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_43064 a method_43064 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAdvancements a method_43065 + p 1 advancementData + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_43066 a method_43066 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43067 b method_43067 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43068 c method_43068 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43069 d method_43069 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 advancementId + p 4 conversions +c net/minecraft/util/datafix/fixes/DecoratedPotFieldRenameFix bcc net/minecraft/class_8504 + f Ljava/lang/String; DECORATED_POT_ID a field_44593 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/DropInvalidSignDataFix bcd net/minecraft/class_8625 + f [Ljava/lang/String; FIELDS_TO_DROP a field_45089 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_52475 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Z method_52476 a method_52476 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_52477 a method_52477 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixText b method_52478 + p 0 textDynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 entityName + m ()V +c net/minecraft/util/datafix/fixes/DyeItemRenameFix bce net/minecraft/class_3593 + f Ljava/util/Map; RENAMED_IDS a field_15890 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/EffectDurationFix bcf net/minecraft/class_8079 + f Ljava/util/Set; ITEM_TYPES a field_42105 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48549 a method_48549 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48550 a method_48550 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixEffect a method_48551 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48552 a method_48552 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48553 b method_48553 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix b method_48554 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEntity c method_48555 + p 1 entityTag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/EmptyItemInHotbarFix bcg net/minecraft/class_9266 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57205 a method_57205 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_57206 a method_57206 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_57207 b method_57207 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EmptyItemInVillagerTradeFix bch net/minecraft/class_9649 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59626 a method_59626 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityArmorStandSilentFix bci net/minecraft/class_3594 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15679 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityBlockStateFix bcj net/minecraft/class_3595 + f Ljava/util/Map; MAP a field_15891 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateFallingBlock a method_15695 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; updateBlockToBlockState a method_15687 + p 1 typed + p 2 tileKey + p 3 dataKey + p 4 outputKey + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_15682 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15692 a method_15692 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Integer; method_15693 a method_15693 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/Integer; method_15681 a method_15681 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Either; method_15690 a method_15690 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Unit;)Ljava/lang/Integer; method_15694 a method_15694 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15684 a method_15684 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15688 a method_15688 + m (Ljava/lang/String;)I getBlockId a method_15686 + p 0 name + m (Ljava/util/HashMap;)V method_15683 a method_15683 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15691 a method_15691 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15685 b method_15685 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15689 b method_15689 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15680 c method_15680 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15696 d method_15696 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityBrushableBlockFieldsRenameFix bck net/minecraft/class_8222 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49763 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityCatSplitFix bcl net/minecraft/class_3725 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityCodSalmonFix bcm net/minecraft/class_3596 + f Ljava/util/Map; RENAMED_IDS a field_15892 + f Ljava/util/Map; RENAMED_EGG_IDS b field_15893 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityCustomNameToComponentFix bcn net/minecraft/class_3597 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15698 a method_15698 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15699 a method_15699 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTagCustomName a method_15697 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityElderGuardianSplitFix bco net/minecraft/class_3598 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityEquipmentToArmorAndHandFix bcp net/minecraft/class_3599 + m ()Ljava/lang/IllegalStateException; method_15702 a method_15702 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15700 a method_15700 + m (Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15703 + p 1 itemStackType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15701 a method_15701 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityGoatMissingStateFix bcq net/minecraft/class_7520 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44319 a method_44319 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityHealthFix bcr net/minecraft/class_3600 + f Ljava/util/Set; ENTITIES a field_15894 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15705 a method_15705 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15704 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityHorseSaddleFix bcs net/minecraft/class_3601 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityHorseSplitFix bct net/minecraft/class_3602 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15706 a method_15706 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityIdFix bcu net/minecraft/class_3603 + f Ljava/util/Map; ID_MAP a field_15895 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15709 a method_15709 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15707 a method_15707 + m (Ljava/lang/String;)Ljava/lang/String; method_15710 a method_15710 + m (Ljava/util/HashMap;)V method_15708 a method_15708 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityItemFrameDirectionFix bcv net/minecraft/class_3604 + m (B)B direction2dTo3d a method_15712 + p 0 direction2d + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15711 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityMinecartIdentifiersFix bcw net/minecraft/class_3605 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59879 a method_59879 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPaintingFieldsRenameFix bcx net/minecraft/class_7407 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_43386 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPaintingItemFrameDirectionFix bcy net/minecraft/class_3606 + f [[I DIRECTIONS a field_15897 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15716 a method_15716 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15722 a method_15722 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15718 a method_15718 + m (Lcom/mojang/serialization/Dynamic;ZZ)Lcom/mojang/serialization/Dynamic; doFix a method_15719 + p 1 dynamic + p 2 fixDirection + p 3 fixItemRotation + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15717 b method_15717 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15720 b method_15720 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15721 b method_15721 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityPaintingMotiveFix bcz net/minecraft/class_3607 + f Ljava/util/Map; MAP a field_15898 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15723 + p 1 tag + m (Ljava/util/HashMap;)V method_15724 a method_15724 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityProjectileOwnerFix bda net/minecraft/class_4860 + m (JJ)[I createUUIDArray a method_24898 + p 0 uuidMost + p 2 uuidLeast + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateProjectiles a method_24901 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_24902 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerArrow a method_24899 + p 1 arrowTag + m (Lcom/mojang/serialization/Dynamic;JJ)Lcom/mojang/serialization/Dynamic; setUUID a method_24900 + p 1 dynamic + p 2 uuidMost + p 4 uuidLeast + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24903 a method_24903 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerLlamaSpit b method_24904 + p 1 llamaSpitTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateItemPotion c method_24905 + p 1 itemPotionTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerThrowable d method_24906 + p 1 throwableTag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPufferfishRenameFix bdb net/minecraft/class_3608 + f Ljava/util/Map; RENAMED_IDS a field_15899 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRavagerRenameFix bdc net/minecraft/class_3983 + f Ljava/util/Map; RENAMED_IDS a field_17712 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRedundantChanceTagsFix bdd net/minecraft/class_1165 + f Lcom/mojang/serialization/Codec; FLOAT_LIST_CODEC a field_25695 + m (ILjava/util/List;)Ljava/lang/Boolean; method_30072 a method_30072 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4972 a method_4972 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28188 a method_28188 + m (Lcom/mojang/serialization/OptionalDynamic;I)Z isZeroList a method_30073 + p 0 list + p 1 size + m (Ljava/lang/Float;)Z method_30074 a method_30074 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRenameFix bde net/minecraft/class_1167 + f Ljava/lang/String; name a field_5670 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_4981 a method_4981 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_4984 a method_4984 + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; getEntity a method_4983 + p 1 value + p 2 ops + p 3 type + m (Ljava/lang/String;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/util/Pair; fix a method_4982 + p 1 entityName + p 2 typed + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/EntityRidingToPassengersFix bdf net/minecraft/class_1166 + m ()Ljava/lang/IllegalStateException; method_4973 a method_4973 + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_4978 + p 1 inputSchema + p 2 outputSchema + p 3 oldEntityTreeType + p 4 newEntityTreeType + p 5 entityType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_4980 a method_4980 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_4977 a method_4977 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Either; method_4979 a method_4979 + m ()Ljava/lang/IllegalStateException; method_4974 b method_4974 + m ()Ljava/lang/IllegalStateException; method_4975 c method_4975 + m ()Ljava/lang/IllegalStateException; method_4976 d method_4976 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityShulkerColorFix bdg net/minecraft/class_1169 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4985 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityShulkerRotationFix bdh net/minecraft/class_5277 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_27960 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/Double; method_27961 b method_27961 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntitySkeletonSplitFix bdi net/minecraft/class_1168 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityStringUuidFix bdj net/minecraft/class_1171 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4987 a method_4987 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4986 a method_4986 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityTheRenameningFix bdk net/minecraft/class_1170 + f Ljava/util/Map; RENAMED_IDS a field_5671 + f Ljava/util/Map; RENAMED_BLOCKS b field_5672 + f Ljava/util/Map; RENAMED_ITEMS c field_5673 + f Ljava/lang/String; MINECRAFT_BRED d field_29882 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityTippedArrowFix bdl net/minecraft/class_1173 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityUUIDFix bdm net/minecraft/class_4960 + f Lorg/slf4j/Logger; LOGGER b field_36328 + f Ljava/util/Set; ABSTRACT_HORSES c field_23122 + f Ljava/util/Set; TAMEABLE_ANIMALS d field_23123 + f Ljava/util/Set; ANIMALS e field_23124 + f Ljava/util/Set; MOBS f field_23125 + f Ljava/util/Set; LIVING_ENTITIES g field_23126 + f Ljava/util/Set; PROJECTILES h field_23127 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26021 a method_26021 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26020 a method_26020 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLivingEntity b method_26037 + p 0 livingEntityTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26023 b method_26023 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEntityUUID c method_26039 + p 0 entityTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28191 c method_28191 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updatePiglin d method_26022 + p 0 piglinTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28192 d method_28192 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEvokerFangs e method_26024 + p 0 evokerFangsTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28193 e method_28193 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateZombieVillager f method_26026 + p 0 zombieVillagerTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAreaEffectCloud g method_26028 + p 0 areaEffectCloudTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateShulkerBullet h method_26030 + p 0 shulkerBulletTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateItem i method_26031 + p 0 itemTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateFox j method_26032 + p 0 foxTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateHurtBy k method_26033 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAnimalOwner l method_26034 + p 0 ownerTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAnimal m method_26035 + p 0 animalTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMob n method_26036 + p 0 mobTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateProjectile o method_26038 + p 0 projectileTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26040 p method_26040 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26041 q method_26041 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26042 r method_26042 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28194 s method_28194 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28195 t method_28195 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28196 u method_28196 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28197 v method_28197 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28198 w method_28198 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28199 x method_28199 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/EntityVariantFix bdn net/minecraft/class_7371 + f Ljava/lang/String; fieldName a field_38705 + f Ljava/util/function/IntFunction; idConversions b field_38706 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43070 a method_43070 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Number;)Lcom/mojang/serialization/Dynamic; method_43071 a method_43071 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; updateAndRename a method_43072 + p 0 dynamic + p 1 fieldName + p 2 newFieldName + p 3 fixer + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Function;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; method_43073 a method_43073 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_43074 a method_43074 + m (Ljava/util/function/Function;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; method_43075 a method_43075 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43076 b method_43076 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/IntFunction;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 entityName + p 5 fieldName + p 6 idConversions +c net/minecraft/util/datafix/fixes/EntityWolfColorFix bdo net/minecraft/class_1172 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4988 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4989 b method_4989 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityZombieSplitFix bdp net/minecraft/class_1175 + f Ljava/util/function/Supplier; zombieVillagerType b field_51480 + m ()Lcom/mojang/datafixers/types/Type; method_59810 a method_59810 + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59811 a method_59811 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; changeSchemaToZombieVillager a method_59812 + p 1 typed + p 2 profession + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59813 a method_59813 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityZombieVillagerTypeFix bdq net/minecraft/class_1174 + f I PROFESSION_MAX a field_29883 + m (I)I getVillagerProfession a method_4991 + p 1 villagerProfession + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4990 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityZombifiedPiglinRenameFix bdr net/minecraft/class_4846 + f Ljava/util/Map; RENAMED_IDS a field_22416 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/FeatureFlagRemoveFix bds net/minecraft/class_8223 + f Ljava/lang/String; name a field_43176 + f Ljava/util/Set; flagsToRemove b field_43177 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49766 a method_49766 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49767 + p 1 tag + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49768 a method_49768 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_49769 a method_49769 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Z method_49770 b method_49770 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Set;)V + p 1 outputSchema + p 2 name + p 3 flagsToRemove +c net/minecraft/util/datafix/fixes/FilteredBooksFix bdt net/minecraft/class_7503 + m (Ljava/lang/String;)Z method_44189 a method_44189 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FilteredSignsFix bdu net/minecraft/class_7504 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44190 a method_44190 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FixProjectileStoredItem bdv net/minecraft/class_8918 + f Ljava/lang/String; EMPTY_POTION a field_46959 + m (Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54727 a method_54727 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54728 a method_54728 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; fixArrow a method_54729 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getArrowType a method_54730 + p 0 arrowTag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createItemStack a method_54731 + p 0 dynamic + p 1 itemId + m (Ljava/lang/String;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;)Ljava/util/function/Function; fixChoice a method_54733 + p 1 itemId + p 2 fixer + m (Ljava/lang/String;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; fixChoiceCap a method_54734 + p 0 itemId + p 1 fixer + p 2 oldType + p 3 newType + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; fixSpectralArrow b method_54737 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54738 b method_54738 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; castUnchecked c method_54740 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54741 c method_54741 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer bdv$a net/minecraft/class_8918$class_8919 +c net/minecraft/util/datafix/fixes/ForcePoiRebuild bdw net/minecraft/class_4731 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_24159 a method_24159 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_24157 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_24158 a method_24158 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_24161 b method_24161 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24160 b method_24160 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24162 c method_24162 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/FurnaceRecipeFix bdx net/minecraft/class_4752 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24312 a method_24312 + m (Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_24313 + p 1 type + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateFurnaceContents a method_24314 + p 1 type + p 2 recipesUsed + p 3 data + m (Lcom/mojang/datafixers/types/Type;Ljava/util/List;ILcom/mojang/serialization/Dynamic;)V method_24315 a method_24315 + m (Ljava/util/List;ILcom/mojang/datafixers/util/Pair;)V method_24316 a method_24316 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24317 b method_24317 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24318 c method_24318 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24319 d method_24319 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/GoatHornIdFix bdy net/minecraft/class_7442 + f [Ljava/lang/String; INSTRUMENTS a field_39110 + m (Ljava/lang/String;)Z method_44191 a method_44191 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/GossipUUIDFix bdz net/minecraft/class_4976 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26289 a method_26289 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_26290 a method_26290 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28200 b method_28200 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28201 c method_28201 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/HeightmapRenamingFix bea net/minecraft/class_1177 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4999 a method_4999 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5000 a method_5000 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_4998 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/HorseBodyArmorItemFix beb net/minecraft/class_9183 + f Ljava/lang/String; previousBodyArmorTag a field_48805 + f Z clearArmorItems b field_51519 + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59885 a method_59885 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59886 b method_59886 + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59887 b method_59887 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59888 c method_59888 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Z)V + p 1 outputSchema + p 2 entityName + p 3 previousBodyArmorTag + p 4 clearArmorItems +c net/minecraft/util/datafix/fixes/IglooMetadataRemovalFix bec net/minecraft/class_1176 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49462 a method_49462 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4993 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_4992 a method_4992 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; removeIglooPieces b method_4996 + p 0 dynamic + m (Ljava/util/stream/Stream;)Ljava/lang/Boolean; method_4995 b method_4995 + m (Lcom/mojang/serialization/Dynamic;)Z isIglooPiece c method_4997 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_4994 d method_4994 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemBannerColorFix bed net/minecraft/class_1179 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5004 a method_5004 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemCustomNameToComponentFix bee net/minecraft/class_1178 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5002 a method_5002 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5003 a method_5003 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5001 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemIdFix bef net/minecraft/class_1181 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; ITEM_NAMES a field_5675 + m (I)Ljava/lang/String; getItem a method_5018 + p 0 id + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5013 a method_5013 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Pair; method_5014 a method_5014 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5017 a method_5017 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5015 a method_5015 + m (Ljava/lang/Integer;)Lcom/mojang/datafixers/util/Pair; method_5016 a method_5016 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemLoreFix beg net/minecraft/class_1180 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5007 a method_5007 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5011 a method_5011 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28202 a method_28202 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixLoreList a method_5005 + p 0 loreListTags + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28203 b method_28203 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28204 c method_28204 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemPotionFix beh net/minecraft/class_1183 + f Ljava/lang/String; DEFAULT a field_29884 + f I SPLASH b field_29885 + f [Ljava/lang/String; POTIONS c field_5678 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5024 a method_5024 + m ([Ljava/lang/String;)V method_5023 a method_5023 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemRemoveBlockEntityTagFix bei net/minecraft/class_7641 + f Ljava/util/Set; items a field_39900 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_45014 a method_45014 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/util/Set;)V + p 1 outputSchema + p 2 changesType + p 3 items +c net/minecraft/util/datafix/fixes/ItemRenameFix bej net/minecraft/class_1182 + f Ljava/lang/String; name a field_5676 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; create a method_5019 + p 0 outputSchema + p 1 name + p 2 fixer + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5021 a method_5021 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5020 a method_5020 + m (Ljava/lang/String;)Ljava/lang/String; fixItem a method_5022 + p 1 item + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/ItemRenameFix$1 bej$1 net/minecraft/class_1182$1 + f Ljava/util/function/Function; val$fixItem a field_5677 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V +c net/minecraft/util/datafix/fixes/ItemShulkerBoxColorFix bek net/minecraft/class_1185 + f [Ljava/lang/String; NAMES_BY_COLOR a field_5680 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5031 a method_5031 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemSpawnEggFix bel net/minecraft/class_1184 + f [Ljava/lang/String; ID_TO_ENTITY a field_5679 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5027 a method_5027 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5028 a method_5028 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28205 a method_28205 + m ([Ljava/lang/String;)V method_5029 a method_5029 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5030 b method_5030 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5025 c method_5025 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackComponentRemainderFix bem net/minecraft/class_9342 + f Ljava/lang/String; name a field_49714 + f Ljava/lang/String; componentId b field_49715 + f Ljava/lang/String; newComponentId c field_49716 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58043 a method_58043 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58044 a method_58044 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixComponent a method_58045 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58046 b method_58046 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 componentId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 componentId + p 4 newComponentId +c net/minecraft/util/datafix/fixes/ItemStackComponentizationFix ben net/minecraft/class_9267 + f I HIDE_ENCHANTMENTS a field_49188 + f I HIDE_MODIFIERS b field_49189 + f I HIDE_UNBREAKABLE c field_49190 + f I HIDE_CAN_DESTROY d field_49191 + f I HIDE_CAN_PLACE e field_49192 + f I HIDE_ADDITIONAL f field_49193 + f I HIDE_DYE g field_49194 + f I HIDE_UPGRADES h field_49195 + f Ljava/util/Set; POTION_HOLDER_IDS i field_49196 + f Ljava/util/Set; BUCKETED_MOB_IDS j field_49197 + f Ljava/util/List; BUCKETED_MOB_TAGS k field_49198 + f Ljava/util/Set; BOOLEAN_BLOCK_STATE_PROPERTIES l field_51347 + f Lcom/google/common/base/Splitter; PROPERTY_SPLITTER m field_49199 + m (I)Ljava/lang/String; fixMapDecorationType a method_57208 + p 0 decorationType + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)V fixFireworkStar a method_57209 + p 0 itemStackData + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57210 a method_57210 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixItemStack a method_57211 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; fixDisplay a method_57212 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixBlockEntityTag a method_57213 + p 0 itemStackData + p 1 tag + p 2 entityId + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V fixEnchantments a method_57214 + p 0 itemStackData + p 1 tag + p 2 key + p 3 component + p 4 hideEnchantments + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_59516 a method_59516 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixProfile a method_57236 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58047 a method_58047 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixBlockStatePredicate a method_57216 + p 0 tag + p 1 blockId + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; createFilteredText a method_57217 + p 0 tag + p 1 unfilteredText + p 2 filteredText + m (Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; fixProfileProperties a method_57218 + p 0 tag + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_57219 a method_57219 + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_57220 a method_57220 + m (Ljava/lang/String;)Z isValidPlayerName a method_58048 + p 0 name + m (Ljava/lang/String;Ljava/lang/Number;)Lcom/mojang/datafixers/util/Pair; method_57222 a method_57222 + m (Ljava/util/stream/Stream;)Ljava/util/Map; method_59517 a method_59517 + m (I)Z method_58049 b method_58049 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)V fixFireworkRocket b method_57223 + p 0 itemStackData + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixPotionContents b method_57224 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)V fixAdventureModeChecks b method_57225 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V fixBlockStatePredicates b method_57226 + p 0 itemStackData + p 1 tag + p 2 key + p 3 component + p 4 hide + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockStateTag b method_58050 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_57228 b method_57228 + m (Ljava/lang/String;)Z method_57221 b method_57221 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)Lcom/mojang/serialization/Dynamic; method_57229 c method_57229 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixWritableBook c method_57230 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)V fixAttributeModifiers c method_57231 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; parseEnchantment c method_57215 + p 0 enchantmentTag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixWrittenBook d method_57233 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAttributeModifier d method_57227 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBookPages e method_57235 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; fixMapDecoration e method_57232 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixBucketedMobData f method_57237 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFireworkExplosion f method_57234 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixLodestoneTracker g method_57239 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57238 g method_57238 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57241 h method_57241 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/List; method_57240 h method_57240 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57243 i method_57243 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_57242 i method_57242 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V method_57245 j method_57245 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57244 j method_57244 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57247 k method_57247 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57248 k method_57248 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V method_58051 l method_58051 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57249 l method_57249 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57250 m method_57250 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57251 n method_57251 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57252 o method_57252 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57253 p method_57253 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_57254 q method_57254 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57255 r method_57255 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData ben$a net/minecraft/class_9267$class_9268 + f Ljava/lang/String; item a field_49200 + f I count b field_49201 + f Lcom/mojang/serialization/Dynamic; components c field_49202 + f Lcom/mojang/serialization/Dynamic; remainder d field_49203 + f Lcom/mojang/serialization/Dynamic; tag e field_49204 + m ()Lcom/mojang/serialization/Dynamic; write a method_57256 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; read a method_57257 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; mergeRemainder a method_57258 + p 0 tag + p 1 remainder + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/Number;)Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData; method_57259 a method_57259 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_57260 a method_57260 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_57261 a method_57261 + m (Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; removeTag a method_57262 + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V setComponent a method_57263 + p 1 component + p 2 value + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; moveTagInto a method_57264 + p 1 oldKey + p 2 tag + p 3 newKey + m (Ljava/lang/String;Lcom/mojang/serialization/OptionalDynamic;)V setComponent a method_57265 + p 1 component + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)V moveTagToComponent a method_57266 + p 1 key + p 2 component + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V moveTagToComponent a method_57267 + p 1 key + p 2 component + p 3 tag + m (Ljava/lang/String;ZLjava/util/function/UnaryOperator;)V fixSubTag a method_57268 + p 1 key + p 2 skipIfEmpty + p 3 fixer + m (Ljava/util/Set;)Z is a method_57269 + p 1 items + m (Ljava/lang/String;)Z is b method_57270 + p 1 item + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57271 b method_57271 + m (Ljava/lang/String;)Z hasComponent c method_58054 + p 1 component + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57272 c method_57272 + m (Ljava/lang/String;ILcom/mojang/serialization/Dynamic;)V + p 1 item + p 2 count + p 3 nbt +c net/minecraft/util/datafix/fixes/ItemStackCustomNameToOverrideComponentFix beo net/minecraft/class_9452 + f Ljava/util/Set; MAP_NAMES a field_50111 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58601 a method_58601 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58602 a method_58602 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMap a method_58603 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Predicate;)Lcom/mojang/serialization/Dynamic; fixCustomName a method_58604 + p 0 data + p 1 shouldFix + m (Ljava/lang/String;)Z method_58605 a method_58605 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58606 b method_58606 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBanner b method_58607 + p 0 data + m (Ljava/lang/String;)Z method_58608 b method_58608 + m (Ljava/lang/String;)Z method_58609 c method_58609 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ItemStackEnchantmentNamesFix bep net/minecraft/class_1187 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; MAP a field_5681 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5036 a method_5036 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5041 a method_5041 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5035 + p 1 tag + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5033 a method_5033 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5034 a method_5034 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28206 b method_28206 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5037 b method_5037 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28207 c method_28207 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28208 d method_28208 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackMapIdFix beq net/minecraft/class_1186 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5032 a method_5032 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemStackSpawnEggFix ber net/minecraft/class_1189 + f Ljava/lang/String; itemType a field_41287 + f Ljava/util/Map; MAP b field_5685 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5046 a method_5046 + m (Ljava/util/HashMap;)V method_5047 a method_5047 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 itemType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackTagFix bes net/minecraft/class_7505 + f Ljava/lang/String; name a field_39403 + f Ljava/util/function/Predicate; idFilter b field_39404 + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Predicate;Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/UnaryOperator;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56970 a method_56970 + m (Lcom/mojang/datafixers/types/Type;Ljava/util/function/Predicate;Ljava/util/function/UnaryOperator;)Ljava/util/function/UnaryOperator; createFixer a method_56971 + p 0 type + p 1 filter + p 2 fixer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixItemStackTag a method_20445 + p 1 itemStackTag + m (Ljava/util/function/UnaryOperator;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56972 a method_56972 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 1 outputSchema + p 2 name + p 3 idFilter +c net/minecraft/util/datafix/fixes/ItemStackTheFlatteningFix bet net/minecraft/class_1188 + f Ljava/util/Map; MAP a field_5684 + f Ljava/util/Set; IDS b field_5683 + f Ljava/util/Set; DAMAGE_IDS c field_5682 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5044 a method_5044 + m (Ljava/lang/String;)Ljava/lang/String; method_5045 a method_5045 + m (Ljava/lang/String;I)Ljava/lang/String; updateItem a method_5042 + p 0 item + p 1 dataValue + m (Ljava/util/HashMap;)V method_5043 a method_5043 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackUUIDFix beu net/minecraft/class_4961 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26294 a method_26294 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26296 a method_26296 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26295 a method_26295 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Boolean; method_26051 a method_26051 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26293 a method_26293 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAttributeModifiers b method_26297 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSkullOwner c method_26298 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26053 d method_26053 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26299 e method_26299 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ItemWaterPotionFix bev net/minecraft/class_1190 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5048 a method_5048 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemWrittenBookPagesStrictJsonFix bew net/minecraft/class_1194 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5086 a method_5086 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5088 a method_5088 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5085 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5089 a method_5089 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5084 a method_5084 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/JigsawPropertiesFix bex net/minecraft/class_4977 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_26300 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/JigsawRotationFix bey net/minecraft/class_4978 + f Ljava/util/Map; RENAMES a field_23213 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26302 a method_26302 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_26301 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26303 b method_26303 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/JukeboxTicksSinceSongStartedFix bez net/minecraft/class_9786 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_60696 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/LeavesFix bfa net/minecraft/class_1191 + f I NORTH_WEST_MASK a field_29886 + f I WEST_MASK b field_29887 + f I SOUTH_WEST_MASK c field_29888 + f I SOUTH_MASK d field_29889 + f I SOUTH_EAST_MASK e field_29890 + f I EAST_MASK f field_29891 + f I NORTH_EAST_MASK g field_29892 + f I NORTH_MASK h field_29893 + f [[I DIRECTIONS i field_5687 + f I DECAY_DISTANCE j field_29894 + f I SIZE_BITS k field_29895 + f I SIZE l field_29896 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; LEAVES m field_5688 + f Ljava/util/Set; LOGS n field_5686 + m (I)I getX a method_5052 + p 1 index + m (III)I getIndex a method_5051 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection;)Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection; method_5049 a method_5049 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5056 a method_5056 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5054 a method_5054 + m (Lcom/mojang/datafixers/OpticFinder;[ILcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5063 a method_5063 + m (Lcom/mojang/datafixers/Typed;)Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection; method_5057 a method_5057 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5058 a method_5058 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_5055 a method_5055 + m (ZZZZ)I getSideMask a method_5061 + p 0 west + p 1 east + p 2 north + p 3 south + m ([ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5059 a method_5059 + m (I)I getY b method_5062 + p 1 index + m (I)I getZ c method_5050 + p 1 index + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LeavesFix$LeavesSection bfa$a net/minecraft/class_1191$class_1192 + f Ljava/lang/String; PERSISTENT h field_29897 + f Ljava/lang/String; DECAYABLE i field_29898 + f Ljava/lang/String; DISTANCE j field_29899 + f Lit/unimi/dsi/fastutil/ints/IntSet; leaveIds k field_5689 + f Lit/unimi/dsi/fastutil/ints/IntSet; logIds l field_5691 + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; stateToIdMap m field_5690 + m (I)Z isLog a method_5068 + p 1 id + m (III)V setDistance a method_5070 + p 1 index + p 2 block + p 3 distance + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;ZI)Lcom/mojang/serialization/Dynamic; makeLeafTag a method_5072 + p 1 dynamic + p 2 name + p 3 persistent + p 4 distance + m (I)Z isLeaf b method_5071 + p 1 id + m (I)I getDistance d method_5065 + p 1 index + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/LeavesFix$Section bfa$b net/minecraft/class_1191$class_1193 + f Ljava/lang/String; BLOCK_STATES_TAG a field_29900 + f Ljava/lang/String; NAME_TAG b field_29901 + f Ljava/lang/String; PROPERTIES_TAG c field_29902 + f Lcom/mojang/datafixers/OpticFinder; paletteFinder d field_5693 + f Ljava/util/List; palette e field_5692 + f I index f field_5694 + f Lnet/minecraft/util/datafix/PackedBitStorage; storage g field_5696 + f Lcom/mojang/datafixers/types/Type; blockStateType h field_5695 + m ()Z skippable a method_5076 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; write a method_5083 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)V readStorage a method_5074 + p 1 data + m (Ljava/lang/String;ZI)I getStateId a method_5082 + p 1 name + p 2 persistent + p 3 distance + m (Ljava/util/List;)Ljava/util/List; method_5081 a method_5081 + m ()Z isSkippable b method_5079 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_5078 b method_5078 + m ()I getIndex c method_5077 + m (I)I getBlock c method_5075 + p 1 index + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5080 c method_5080 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/LegacyDragonFightFix bfb net/minecraft/class_8575 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52227 a method_52227 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixDragonFight a method_56973 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52228 b method_52228 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/LevelDataGeneratorOptionsFix bfc net/minecraft/class_1196 + f Ljava/util/Map; MAP a field_5702 + f Ljava/lang/String; GENERATOR_OPTIONS b field_29903 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5096 a method_5096 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28209 a method_28209 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Object; method_5098 a method_5098 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_5095 a method_5095 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getLayerInfoFromString a method_5099 + p 0 layer + m (Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; convert a method_5100 + p 0 generatorOptions + p 1 ops + m (Ljava/util/HashMap;)V method_5101 a method_5101 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_28210 b method_28210 + m (Ljava/lang/String;)Ljava/util/List; getLayersInfoFromString b method_5103 + p 0 layers + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LevelFlatGeneratorInfoFix bfd net/minecraft/class_1195 + f Ljava/lang/String; DEFAULT a field_29904 + f Ljava/lang/String; GENERATOR_OPTIONS b field_29905 + f Lcom/google/common/base/Splitter; SPLITTER c field_5700 + f Lcom/google/common/base/Splitter; LAYER_SPLITTER d field_5701 + f Lcom/google/common/base/Splitter; OLD_AMOUNT_SPLITTER e field_5699 + f Lcom/google/common/base/Splitter; AMOUNT_SPLITTER f field_5698 + f Lcom/google/common/base/Splitter; BLOCK_SPLITTER g field_5697 + m (Lcom/google/common/base/Splitter;ILjava/lang/String;)Ljava/lang/String; method_5091 a method_5091 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5093 a method_5093 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_5090 + p 1 dynamic + m (Ljava/lang/String;)Ljava/lang/String; fixString a method_5094 + p 1 string + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5092 b method_5092 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LevelLegacyWorldGenSettingsFix bfe net/minecraft/class_8876 + f Ljava/lang/String; WORLD_GEN_SETTINGS a field_46771 + f Ljava/util/List; OLD_SETTINGS_KEYS b field_46772 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54443 a method_54443 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54444 a method_54444 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/LevelUUIDFix bff net/minecraft/class_4962 + f Lorg/slf4j/Logger; LOGGER b field_36329 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26055 a method_26055 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28211 a method_28211 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28212 a method_28212 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26058 b method_26058 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28213 b method_28213 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateWanderingTrader b method_26057 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateDragonFight c method_26060 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateCustomBossEvents d method_26061 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28214 e method_28214 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28215 f method_28215 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28216 g method_28216 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28217 h method_28217 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28218 i method_28218 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28219 j method_28219 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28220 k method_28220 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28221 l method_28221 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/LodestoneCompassComponentFix bfg net/minecraft/class_9343 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/MapBannerBlockPosFormatFix bfh net/minecraft/class_9231 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56974 a method_56974 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMapSavedData a method_56975 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56976 b method_56976 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56977 c method_56977 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56978 d method_56978 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/MapIdFix bfi net/minecraft/class_3970 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17828 a method_17828 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28222 a method_28222 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/MemoryExpiryDataFix bfj net/minecraft/class_4803 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; updateMemoryEntry a method_24507 + p 1 memory + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_24506 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateBrain b method_24508 + p 1 brainTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMemories c method_24509 + p 1 memoriesTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; wrapMemoryValue d method_24510 + p 1 memory + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/MissingDimensionFix bfk net/minecraft/class_5396 + m (Lcom/mojang/datafixers/FieldFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29909 a method_29909 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29910 a method_29910 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29911 a method_29911 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/Type; flatType a method_38820 + p 0 schema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; recreateSettings a method_29912 + p 1 dynamic + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; fields a method_29913 + p 0 name + p 1 element + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; optionalFields a method_29914 + p 0 name1 + p 1 element1 + p 2 name2 + p 3 element2 + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; optionalFields b method_29915 + p 0 name + p 1 element + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/MobEffectIdFix bfl net/minecraft/class_8744 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; ID_MAP a field_45725 + f Ljava/util/Set; MOB_EFFECT_INSTANCE_CARRIER_ITEMS b field_45726 + m ()Lcom/mojang/datafixers/TypeRewriteRule; blockEntityFixer a method_53078 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53079 a method_53079 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53080 a method_53080 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateNamedChoice a method_53081 + p 1 typed + p 2 reference + p 3 id + p 4 fixer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMobEffectInstance a method_53082 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSuspiciousStewEntry a method_53083 + p 0 oldDynamic + p 1 newDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; getAndConvertMobEffectId a method_53084 + p 0 dynamic + p 1 key + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectIdField a method_53085 + p 0 oldDynamic + p 1 oldName + p 2 newDynamic + p 3 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectIdField a method_53096 + p 0 dynamic + p 1 oldName + p 2 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53089 a method_53089 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_53090 a method_53090 + m (Ljava/lang/Number;)Ljava/lang/String; method_53091 a method_53091 + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53092 a method_53092 + m ()Lcom/mojang/datafixers/TypeRewriteRule; entityFixer b method_53093 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53094 b method_53094 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSuspiciousStewEntry b method_53095 + p 0 suspiciousStewEntry + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectInstanceList b method_53101 + p 0 tag + p 1 oldName + p 2 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53097 b method_53097 + m ()Lcom/mojang/datafixers/TypeRewriteRule; playerFixer c method_53713 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53714 c method_53714 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMooshroomTag c method_53100 + p 0 mooshroomTag + m ()Lcom/mojang/datafixers/TypeRewriteRule; itemStackFixer d method_53098 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53099 d method_53099 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixArrowTag d method_53103 + p 0 arrowTag + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53102 e method_53102 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAreaEffectCloudTag e method_53104 + p 0 areaEffectCloudTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLivingEntityTag f method_53105 + p 0 livingEntityTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixSuspiciousStewTag g method_53106 + p 0 suspiciousStewTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53107 h method_53107 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53108 i method_53108 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/MobSpawnerEntityIdentifiersFix bfm net/minecraft/class_1198 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5107 a method_5107 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_5106 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5108 b method_5108 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/NamedEntityFix bfn net/minecraft/class_1197 + f Ljava/lang/String; name a field_5703 + f Ljava/lang/String; entityName b field_5705 + f Lcom/mojang/datafixers/DSL$TypeReference; type c field_5704 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5104 a method_5104 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fix a method_5105 + p 1 typed + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 type + p 5 entityName +c net/minecraft/util/datafix/fixes/NamedEntityWriteReadFix bfo net/minecraft/class_8877 + f Ljava/lang/String; name a field_46773 + f Ljava/lang/String; entityName b field_46774 + f Lcom/mojang/datafixers/DSL$TypeReference; type c field_46775 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_56639 a method_56639 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; typePatcher a method_56640 + p 0 type + p 1 newType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; fix a method_56641 + p 1 inputType + p 2 outputType + p 3 finder + p 4 outputChoiceType + p 5 newType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Ljava/lang/Object;)Ljava/lang/Object; method_56642 a method_56642 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/Type;Ljava/lang/Object;)Ljava/lang/Object; method_56643 a method_56643 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_54447 + p 1 tag + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_56644 a method_56644 + m (Ljava/lang/Object;)Ljava/lang/Object; method_56645 a method_56645 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 type + p 5 entityName +c net/minecraft/util/datafix/fixes/NamespacedTypeRenameFix bfp net/minecraft/class_7293 + f Ljava/lang/String; name a field_38381 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_38383 + f Ljava/util/function/UnaryOperator; renamer c field_43178 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_49771 a method_49771 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_42638 a method_42638 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 renamer +c net/minecraft/util/datafix/fixes/NewVillageFix bfq net/minecraft/class_3904 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17329 a method_17329 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17330 a method_17330 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17331 a method_17331 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17332 a method_17332 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17333 a method_17333 + m (Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_17334 + p 1 type + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_17335 a method_17335 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28223 a method_28223 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28224 a method_28224 + m (Ljava/lang/String;)Ljava/lang/String; method_17336 a method_17336 + m (Ljava/util/List;)Ljava/util/List; method_17337 a method_17337 + m (Lcom/mojang/datafixers/util/Pair;)Z method_17339 b method_17339 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28225 b method_28225 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28226 c method_28226 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28227 d method_28227 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ObjectiveDisplayNameFix bfr net/minecraft/class_1200 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37372 a method_37372 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37373 a method_37373 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ObjectiveRenderTypeFix bfs net/minecraft/class_1199 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37376 a method_37376 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37377 a method_37377 + m (Ljava/lang/String;)Ljava/lang/String; getRenderType a method_5112 + p 0 oldRenderType + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OminousBannerBlockEntityRenameFix bft net/minecraft/class_4299 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_20481 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OminousBannerRenameFix bfu net/minecraft/class_4294 + m (Ljava/lang/String;)Z method_44194 a method_44194 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/util/datafix/fixes/OptionsAccessibilityOnboardFix bfv net/minecraft/class_8014 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48133 a method_48133 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48134 a method_48134 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsAddTextBackgroundFix bfw net/minecraft/class_4092 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_18852 a method_18852 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28233 a method_28233 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_28234 a method_28234 + m (Ljava/lang/String;)D calculateBackground a method_18853 + p 1 oldBackground + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsAmbientOcclusionFix bfx net/minecraft/class_8004 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_47995 a method_47995 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_47996 a method_47996 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_47997 a method_47997 + m (Ljava/lang/String;)Ljava/lang/String; updateValue a method_47998 + p 0 oldValue + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsForceVBOFix bfy net/minecraft/class_1202 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5124 a method_5124 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5123 a method_5123 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsKeyLwjgl3Fix bfz net/minecraft/class_1201 + f Ljava/lang/String; KEY_UNKNOWN a field_29906 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; MAP b field_5706 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5121 a method_5121 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28235 a method_28235 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28236 a method_28236 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5118 a method_5118 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_5122 a method_5122 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/OptionsKeyTranslationFix bga net/minecraft/class_1204 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5130 a method_5130 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28237 a method_28237 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_28238 a method_28238 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28239 a method_28239 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsLowerCaseLanguageFix bgb net/minecraft/class_1203 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5126 a method_5126 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5125 a method_5125 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsMenuBlurrinessFix bgc net/minecraft/class_9774 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60600 a method_60600 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60601 a method_60601 + m (Ljava/lang/String;)I convertToIntRange a method_60602 + p 1 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60603 b method_60603 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsProgrammerArtFix bgd net/minecraft/class_7683 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_45313 a method_45313 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixList a method_45314 + p 1 list + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_45315 a method_45315 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_45316 b method_45316 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsRenameFieldFix bge net/minecraft/class_5404 + f Ljava/lang/String; fixName a field_25665 + f Ljava/lang/String; fieldFrom b field_25666 + f Ljava/lang/String; fieldTo c field_25667 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_30019 a method_30019 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30020 a method_30020 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30021 a method_30021 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 fixName + p 4 fieldFrom + p 5 fieldTo +c net/minecraft/util/datafix/fixes/OverreachingTickFix bgf net/minecraft/class_6909 + m (IILcom/mojang/serialization/Dynamic;)Z method_40437 a method_40437 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40438 a method_40438 + m (Lcom/mojang/serialization/Dynamic;IILjava/util/Optional;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; extractOverreachingTicks a method_40439 + p 0 tag + p 1 x + p 2 z + p 3 ticks + p 4 id + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40440 a method_40440 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ParticleUnflatteningFix bgg net/minecraft/class_9650 + f Lorg/slf4j/Logger; LOGGER a field_51367 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_59627 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/brigadier/StringReader;)Lcom/mojang/serialization/Dynamic; readVector a method_59628 + p 0 tag + p 1 reader + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateItem a method_59629 + p 1 tag + p 2 item + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; parseTag a method_59630 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateBlock b method_59631 + p 1 tag + p 2 block + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Map; parseBlockProperties c method_59632 + p 0 tag + p 1 properties + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateDust d method_59633 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateDustTransition e method_59634 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateSculkCharge f method_59635 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateVibration g method_59636 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateShriek h method_59637 + p 1 tag + p 2 options + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/PlayerHeadBlockProfileFix bgh net/minecraft/class_9344 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_58055 + p 1 tag + m (Ljava/util/Optional;)Ljava/util/Optional; method_58056 a method_58056 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/PlayerUUIDFix bgi net/minecraft/class_4963 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26070 a method_26070 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26072 b method_26072 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28240 b method_28240 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28241 c method_28241 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/PoiTypeRemoveFix bgj net/minecraft/class_7506 + f Ljava/util/function/Predicate; typesToKeep a field_39405 + m (Lcom/mojang/serialization/Dynamic;)Z shouldKeepRecord a method_44195 + p 1 record + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 1 outputSchema + p 2 name + p 3 typesToRemove +c net/minecraft/util/datafix/fixes/PoiTypeRenameFix bgk net/minecraft/class_7507 + f Ljava/util/function/Function; renamer a field_39406 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44196 a method_44196 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44197 b method_44197 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V + p 1 schema + p 2 name + p 3 renamer +c net/minecraft/util/datafix/fixes/PrimedTntBlockStateFixer bgl net/minecraft/class_8878 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; renameFuse b method_54449 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; insertBlockState c method_54450 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ProjectileStoredWeaponFix bgm net/minecraft/class_9689 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59909 a method_59909 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59910 a method_59910 + m (Ljava/lang/String;)Ljava/util/function/Function; fixChoice a method_59911 + p 1 entityId + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; fixChoiceCap a method_59912 + p 0 entityId + p 1 inputType + p 2 outputType + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RandomSequenceSettingsFix bgn net/minecraft/class_8626 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52479 a method_52479 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52480 a method_52480 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52481 b method_52481 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RecipesFix bgo net/minecraft/class_1206 + f Ljava/util/Map; RECIPES a field_5708 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RecipesRenameningFix bgp net/minecraft/class_1205 + f Ljava/util/Map; RECIPES a field_5707 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RedstoneWireConnectionsFix bgq net/minecraft/class_5255 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27779 a method_27779 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateRedstoneConnections a method_27778 + p 1 dynamic + m (Ljava/lang/String;)Z isConnected a method_27780 + p 0 state + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28249 a method_28249 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28250 b method_28250 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28251 b method_28251 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28252 c method_28252 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28253 d method_28253 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/References bgr net/minecraft/class_1208 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_TREE A field_5723 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY B field_5729 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_NAME C field_5731 + f Lcom/mojang/datafixers/DSL$TypeReference; ITEM_NAME D field_5713 + f Lcom/mojang/datafixers/DSL$TypeReference; GAME_EVENT_NAME E field_38380 + f Lcom/mojang/datafixers/DSL$TypeReference; UNTAGGED_SPAWNER F field_5718 + f Lcom/mojang/datafixers/DSL$TypeReference; STRUCTURE_FEATURE G field_5724 + f Lcom/mojang/datafixers/DSL$TypeReference; OBJECTIVE H field_5721 + f Lcom/mojang/datafixers/DSL$TypeReference; TEAM I field_5714 + f Lcom/mojang/datafixers/DSL$TypeReference; RECIPE J field_5711 + f Lcom/mojang/datafixers/DSL$TypeReference; BIOME K field_5728 + f Lcom/mojang/datafixers/DSL$TypeReference; MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST L field_43179 + f Lcom/mojang/datafixers/DSL$TypeReference; WORLD_GEN_SETTINGS M field_23067 + f Lcom/mojang/datafixers/DSL$TypeReference; LEVEL a field_5710 + f Lcom/mojang/datafixers/DSL$TypeReference; PLAYER b field_5715 + f Lcom/mojang/datafixers/DSL$TypeReference; CHUNK c field_5726 + f Lcom/mojang/datafixers/DSL$TypeReference; HOTBAR d field_5722 + f Lcom/mojang/datafixers/DSL$TypeReference; OPTIONS e field_5717 + f Lcom/mojang/datafixers/DSL$TypeReference; STRUCTURE f field_5716 + f Lcom/mojang/datafixers/DSL$TypeReference; STATS g field_5730 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_COMMAND_STORAGE h field_45090 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_FORCED_CHUNKS i field_45091 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_MAP_DATA j field_45092 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_MAP_INDEX k field_45093 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_RAIDS l field_45094 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_RANDOM_SEQUENCES m field_45095 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_STRUCTURE_FEATURE_INDICES n field_45096 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_SCOREBOARD o field_45097 + f Lcom/mojang/datafixers/DSL$TypeReference; ADVANCEMENTS p field_5725 + f Lcom/mojang/datafixers/DSL$TypeReference; POI_CHUNK q field_19224 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_CHUNK r field_26993 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_ENTITY s field_5727 + f Lcom/mojang/datafixers/DSL$TypeReference; ITEM_STACK t field_5712 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_STATE u field_5720 + f Lcom/mojang/datafixers/DSL$TypeReference; FLAT_BLOCK_STATE v field_47727 + f Lcom/mojang/datafixers/DSL$TypeReference; DATA_COMPONENTS w field_49205 + f Lcom/mojang/datafixers/DSL$TypeReference; VILLAGER_TRADE x field_51368 + f Lcom/mojang/datafixers/DSL$TypeReference; PARTICLE y field_51369 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_NAME z field_5719 + m (Ljava/lang/String;)Lcom/mojang/datafixers/DSL$TypeReference; reference a method_59518 + p 0 name + m ()V + m ()V +c net/minecraft/util/datafix/fixes/References$1 bgr$1 net/minecraft/class_1208$1 + f Ljava/lang/String; val$id a field_51348 + m (Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/RemapChunkStatusFix bgs net/minecraft/class_8505 + f Ljava/lang/String; name a field_44594 + f Ljava/util/function/UnaryOperator; mapper b field_44595 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51290 a method_51290 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixStatus a method_51291 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51292 b method_51292 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51501 c method_51501 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 mapper +c net/minecraft/util/datafix/fixes/RemoveEmptyItemInBrushableBlockFix bgt net/minecraft/class_9687 + m (Lcom/mojang/serialization/Dynamic;)Z isEmptyStack b method_59889 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RemoveGolemGossipFix bgu net/minecraft/class_5429 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixValue a method_30326 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30327 a method_30327 + m (Lcom/mojang/serialization/Dynamic;)Z method_30328 b method_30328 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/RenameEnchantmentsFix bgv net/minecraft/class_9106 + f Ljava/lang/String; name a field_48315 + f Ljava/util/Map; renames b field_48316 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56055 a method_56055 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56056 a method_56056 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_56057 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/DataResult$Error;)Lcom/mojang/serialization/Dynamic; method_56058 a method_56058 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56059 a method_56059 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixEnchantmentList a method_56060 + p 1 tag + p 2 key + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_56061 a method_56061 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56062 b method_56062 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/DataResult$Error;)Lcom/mojang/serialization/Dynamic; method_56063 b method_56063 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_56064 b method_56064 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56065 c method_56065 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/RenamedCoralFansFix bgw net/minecraft/class_1207 + f Ljava/util/Map; RENAMED_IDS a field_5709 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RenamedCoralFix bgx net/minecraft/class_1210 + f Ljava/util/Map; RENAMED_IDS a field_5733 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/ReorganizePoi bgy net/minecraft/class_4285 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_20342 a method_20342 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_20340 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_20341 a method_20341 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/SavedDataFeaturePoolElementFix bgz net/minecraft/class_5947 + f Ljava/util/regex/Pattern; INDEX_PATTERN a field_29545 + f Ljava/util/Set; PIECE_TYPE b field_29546 + f Ljava/util/Set; FEATURES c field_29547 + m (I)Ljava/lang/String; method_49463 a method_49463 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFeature a method_34688 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;[Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; get a method_34689 + p 0 dynamic + p 1 path + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; getReplacement a method_34690 + p 0 type + p 1 name + p 2 stateProviderType + p 3 state + p 4 stateProviderName + p 5 foliagePlacerType + p 6 leavesState + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; updateChildren a method_34691 + p 0 children + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag b method_34692 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateChildren c method_34693 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34694 d method_34694 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34695 e method_34695 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/SavedDataUUIDFix bha net/minecraft/class_4964 + f Lorg/slf4j/Logger; LOGGER b field_36330 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26073 a method_26073 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26075 b method_26075 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28254 c method_28254 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28255 d method_28255 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28256 e method_28256 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28257 f method_28257 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28258 g method_28258 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28259 h method_28259 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ScoreboardDisplaySlotFix bhb net/minecraft/class_8627 + f Ljava/util/Map; SLOT_RENAMES a field_45098 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52489 a method_52489 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52490 a method_52490 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_52491 a method_52491 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52492 a method_52492 + m (Ljava/lang/String;)Ljava/lang/String; rename a method_52493 + p 0 oldName + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52494 b method_52494 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52495 c method_52495 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/SimpleEntityRenameFix bhc net/minecraft/class_1212 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; getNewNameAndTag a method_5164 + p 1 name + p 2 tag + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/SimplestEntityRenameFix bhd net/minecraft/class_1211 + f Ljava/lang/String; name a field_5734 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5160 a method_5160 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5159 a method_5159 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Ljava/lang/String;)Ljava/lang/String; method_5161 a method_5161 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5162 a method_5162 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5158 a method_5158 + m (Ljava/lang/String;)Ljava/lang/String; rename a method_5163 + p 1 name + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/SpawnerDataFix bhe net/minecraft/class_6503 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37973 a method_37973 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; wrapEntityToSpawnData a method_37974 + p 1 type + p 2 typed + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_37975 a method_37975 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; wrapSpawnPotentialsToWeightedEntries b method_37976 + p 1 type + p 2 typed + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37977 c method_37977 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37978 d method_37978 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/StatsCounterFix bhf net/minecraft/class_1214 + f Ljava/util/Set; SPECIAL_OBJECTIVE_CRITERIA a field_45099 + f Ljava/util/Set; SKIP b field_5739 + f Ljava/util/Map; CUSTOM_MAP c field_5737 + f Ljava/lang/String; BLOCK_KEY d field_29907 + f Ljava/lang/String; NEW_BLOCK_KEY e field_29908 + f Ljava/util/Map; ITEM_KEYS f field_5738 + f Ljava/util/Map; ENTITY_KEYS g field_5736 + f Ljava/util/Map; ENTITIES h field_5735 + f Ljava/lang/String; NEW_CUSTOM_KEY i field_29909 + m ()Lcom/mojang/datafixers/TypeRewriteRule; makeStatFixer a method_52496 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52497 a method_52497 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52498 a method_52498 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52499 a method_52499 + m (Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StatsCounterFix$StatType; unpackLegacyKey a method_52500 + p 0 key + m ()Lcom/mojang/datafixers/TypeRewriteRule; makeObjectiveFixer b method_52501 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52502 b method_52502 + m (Ljava/lang/String;)Ljava/lang/String; upgradeItem b method_5172 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; upgradeBlock c method_5173 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_52505 d method_52505 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/StatsCounterFix$StatType bhf$a net/minecraft/class_1214$class_8628 + f Ljava/lang/String; type a comp_1585 + f Ljava/lang/String; typeKey b comp_1586 + m ()Ljava/lang/String; type a comp_1585 + m ()Ljava/lang/String; typeKey b comp_1586 + m (Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/StatsRenameFix bhg net/minecraft/class_1213 + f Ljava/lang/String; name a field_33560 + f Ljava/util/Map; renames b field_33561 + m ()Lcom/mojang/datafixers/TypeRewriteRule; createCriteriaRule a method_37378 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37379 a method_37379 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37380 a method_37380 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37381 a method_37381 + m (Ljava/lang/String;)Ljava/lang/String; method_37382 a method_37382 + m ()Lcom/mojang/datafixers/TypeRewriteRule; createStatRule b method_37383 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37384 b method_37384 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37385 b method_37385 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37386 b method_37386 + m (Ljava/lang/String;)Ljava/lang/String; method_37387 b method_37387 + m ()Ljava/lang/IllegalStateException; method_37388 c method_37388 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/StriderGravityFix bhh net/minecraft/class_5256 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_27789 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/StructureReferenceCountFix bhi net/minecraft/class_4695 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_23662 a method_23662 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; setCountToAtLeastOne a method_23661 + p 0 dynamic + m (Ljava/lang/Integer;)Z method_23663 a method_23663 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_23664 b method_23664 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/StructureSettingsFlattenFix bhj net/minecraft/class_6867 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40115 a method_40115 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; fixDimension a method_40116 + p 0 dimensions + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixStructures a method_40117 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40118 a method_40118 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40119 a method_40119 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40441 a method_40441 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40120 b method_40120 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40121 b method_40121 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40122 c method_40122 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54960 d method_54960 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix bhk net/minecraft/class_7046 + f Lorg/slf4j/Logger; LOGGER a field_51349 + f Ljava/util/Map; CONVERSION_MAP b field_37050 + m (Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41009 a method_41009 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_41012 + p 1 data + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;)Ljava/util/Optional; guessConfiguration a method_41013 + p 1 data + p 2 conversion + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateStarts a method_41015 + p 1 starts + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59519 a method_59519 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59520 a method_59520 + m (Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41017 b method_41017 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateReferences b method_41020 + p 1 references + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59521 b method_59521 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59522 b method_59522 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; findUpdatedStructureType c method_41022 + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41023 d method_41023 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41024 e method_41024 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41025 f method_41025 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion bhk$a net/minecraft/class_7046$class_7047 + f Ljava/util/Map; biomeMapping a comp_462 + f Ljava/lang/String; fallback b comp_463 + m ()Ljava/util/Map; biomeMapping a comp_462 + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/util/Map$Entry;Ljava/lang/String;)V method_41026 a method_41026 + m (Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion; trivial a method_41027 + p 0 fallback + m (Ljava/util/Map;)Ljava/util/Map; unpack a method_41028 + p 0 mapping + m (Ljava/util/Map;Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion; biomeMapped a method_41029 + p 0 biomeMapping + p 1 fallback + m ()Ljava/lang/String; fallback b comp_463 + m (Ljava/util/Map;Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/TeamDisplayNameFix bhl net/minecraft/class_1217 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5183 a method_5183 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28260 a method_28260 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28262 a method_28262 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/TippedArrowPotionToItemFix bhm net/minecraft/class_9269 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57274 a method_57274 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/TrappedChestBlockEntityFix bhn net/minecraft/class_1215 + f Lorg/slf4j/Logger; LOGGER a field_5740 + f I SIZE b field_29910 + f S SIZE_BITS c field_29911 + m (IILit/unimi/dsi/fastutil/ints/IntSet;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5174 a method_5174 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5177 a method_5177 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5175 a method_5175 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;IILit/unimi/dsi/fastutil/ints/IntSet;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5176 a method_5176 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5178 a method_5178 + m (Ljava/lang/String;)Ljava/lang/String; method_5179 a method_5179 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/TrappedChestBlockEntityFix$TrappedChestSection bhn$a net/minecraft/class_1215$class_1216 + f Lit/unimi/dsi/fastutil/ints/IntSet; chestIds h field_5741 + m (I)Z isTrappedChest a method_5180 + p 1 id + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/TrialSpawnerConfigFix bho net/minecraft/class_9453 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; moveToConfigTag b method_58610 + p 0 data + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/VariantRenameFix bhp net/minecraft/class_7508 + f Ljava/util/Map; renames a field_39407 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44198 a method_44198 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_44199 a method_44199 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44200 b method_44200 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 entityName + p 5 renames +c net/minecraft/util/datafix/fixes/VillagerDataFix bhq net/minecraft/class_3845 + m (II)Ljava/lang/String; upgradeData a method_16897 + p 0 profession + p 1 career + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/VillagerFollowRangeFix bhr net/minecraft/class_5273 + f D ORIGINAL_VALUE a field_29912 + f D NEW_BASE_VALUE b field_29913 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixValue a method_27914 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28263 a method_28263 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28264 b method_28264 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/VillagerRebuildLevelAndXpFix bhs net/minecraft/class_4300 + f I TRADES_PER_LEVEL a field_29914 + f [I LEVEL_XP_THRESHOLDS b field_19285 + m (I)I getMinXpPerLevel a method_20482 + p 0 level + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28265 a method_28265 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20484 a method_20484 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/lang/Integer; method_20485 a method_20485 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20486 a method_20486 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; addLevel a method_20487 + p 0 typed + p 1 level + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28266 b method_28266 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_20489 b method_20489 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; addXpFromLevel b method_20490 + p 0 typed + p 1 xp + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28267 c method_28267 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/VillagerTradeFix bht net/minecraft/class_1219 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateItemStack a method_5187 + p 1 id + p 2 typed + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Function;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59638 a method_59638 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5190 a method_5190 + m (Ljava/lang/String;)Ljava/lang/String; method_5192 a method_5192 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59639 b method_59639 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WallPropertyFix bhu net/minecraft/class_4754 + f Ljava/util/Set; WALL_BLOCKS a field_21960 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24325 a method_24325 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; upgradeBlockStateTag a method_24323 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixWallProperty a method_24324 + p 0 dynamic + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; mapProperty a method_24326 + p 0 property + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24327 b method_24327 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24328 c method_24328 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/WeaponSmithChestLootTableFix bhv net/minecraft/class_6858 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40070 a method_40070 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/WorldGenSettingsDisallowOldCustomWorldsFix bhw net/minecraft/class_6638 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38821 a method_38821 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38822 a method_38822 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_38823 a method_38823 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_38824 a method_38824 + m (Ljava/util/Map;)Ljava/util/Map; method_38825 a method_38825 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WorldGenSettingsFix bhx net/minecraft/class_5299 + f Ljava/lang/String; VILLAGE a field_29915 + f Ljava/lang/String; DESERT_PYRAMID b field_29916 + f Ljava/lang/String; IGLOO c field_29917 + f Ljava/lang/String; JUNGLE_TEMPLE d field_29918 + f Ljava/lang/String; SWAMP_HUT e field_29919 + f Ljava/lang/String; PILLAGER_OUTPOST f field_29920 + f Ljava/lang/String; END_CITY g field_29921 + f Ljava/lang/String; WOODLAND_MANSION h field_29922 + f Ljava/lang/String; OCEAN_MONUMENT i field_29923 + f Lcom/google/common/collect/ImmutableMap; DEFAULTS j field_24647 + m (JLcom/mojang/serialization/DynamicLike;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; noise a method_28268 + p 0 seed + p 2 data + p 3 settings + p 4 biomeNoise + m (Lcom/google/common/collect/ImmutableMap$Builder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)V method_28269 a method_28269 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_28270 a method_28270 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_28271 + p 0 data + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; defaultOverworld a method_29916 + p 0 data + p 1 seed + m (Lcom/mojang/serialization/Dynamic;JLcom/mojang/serialization/Dynamic;Z)Ljava/lang/Object; vanillaLevels a method_29917 + p 0 data + p 1 seed + p 4 caves + m (Lcom/mojang/serialization/Dynamic;JZZ)Lcom/mojang/serialization/Dynamic; vanillaBiomeSource a method_28272 + p 0 data + p 1 seed + p 3 legacyBiomeInitLayer + p 4 largeBiomes + m (Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28273 a method_28273 + m (Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Ljava/util/Map;)V method_28274 a method_28274 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/OptionalDynamic;)Ljava/util/Map; fixFlatStructures a method_28275 + p 0 ops + p 1 generatorOptions + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_28276 a method_28276 + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_28277 a method_28277 + m (Ljava/lang/String;)Ljava/lang/String; method_28278 a method_28278 + m (Ljava/lang/String;I)I getInt a method_28279 + p 0 string + p 1 defaultValue + m (Ljava/lang/String;II)I getInt a method_28280 + p 0 string + p 1 defaultValue + p 2 minValue + m (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;I)V setSpacing a method_28281 + p 2 spacing + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28282 a method_28282 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28283 a method_28283 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Ljava/util/Map;)V method_28284 a method_28284 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28285 b method_28285 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28286 c method_28286 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30075 d method_30075 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration bhx$a net/minecraft/class_5299$class_5300 + f Lcom/mojang/serialization/Codec; CODEC a field_24648 + f I spacing b field_24649 + f I separation c field_24650 + f I salt d field_24651 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28292 a method_28292 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; serialize a method_28288 + p 1 ops + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28289 a method_28289 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28293 b method_28293 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28294 c method_28294 + m (III)V + p 1 spacing + p 2 separation + p 3 salt + m ()V +c net/minecraft/util/datafix/fixes/WorldGenSettingsHeightAndBiomeFix bhy net/minecraft/class_6639 + f Ljava/lang/String; WAS_PREVIOUSLY_INCREASED_KEY a field_35030 + f Ljava/lang/String; NAME b field_35031 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38827 a method_38827 + m (Lcom/mojang/datafixers/types/Type;ZZLcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54967 a method_54967 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLayers a method_38828 + p 0 dynamic + m (ZLorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54968 a method_54968 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38831 a method_38831 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54969 b method_54969 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38834 b method_38834 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54970 c method_54970 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54971 c method_54971 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38836 d method_38836 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WriteAndReadFix bhz net/minecraft/class_1218 + f Ljava/lang/String; name a field_5742 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_5743 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 name + p 3 type +c net/minecraft/util/datafix/fixes/ZombieVillagerRebuildXpFix bia net/minecraft/class_4301 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_20492 a method_20492 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/package-info bib net/minecraft/class_5997 +c net/minecraft/util/datafix/package-info bic net/minecraft/class_5998 +c net/minecraft/util/datafix/schemas/NamespacedSchema bid net/minecraft/class_1220 + f Lcom/mojang/serialization/codecs/PrimitiveCodec; NAMESPACED_STRING_CODEC a field_24652 + f Lcom/mojang/datafixers/types/Type; NAMESPACED_STRING b field_24653 + m ()Lcom/mojang/datafixers/types/Type; namespacedString a method_28295 + m (Ljava/lang/String;)Ljava/lang/String; ensureNamespaced a method_5193 + p 0 string + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/NamespacedSchema$1 bid$1 net/minecraft/class_1220$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Ljava/lang/Object; write a method_28296 + p 1 ops + p 2 value + m ()V +c net/minecraft/util/datafix/schemas/V100 bie net/minecraft/class_1222 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; equipment a method_5196 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59640 a method_59640 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5195 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5201 b method_5201 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5199 b method_5199 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5200 c method_5200 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5197 c method_5197 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5198 d method_5198 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V102 bif net/minecraft/class_1221 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5194 a method_5194 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1022 big net/minecraft/class_1224 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5204 a method_5204 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5203 a method_5203 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5205 b method_5205 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V106 bih net/minecraft/class_1223 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5202 a method_5202 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V107 bii net/minecraft/class_1226 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1125 bij net/minecraft/class_1225 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5206 a method_5206 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5208 b method_5208 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5207 c method_5207 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V135 bik net/minecraft/class_1228 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5209 a method_5209 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5210 b method_5210 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V143 bil net/minecraft/class_1227 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451 bim net/minecraft/class_1230 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5212 a method_5212 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_1 bin net/minecraft/class_1229 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5211 a method_5211 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_2 bio net/minecraft/class_1232 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5225 a method_5225 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_3 bip net/minecraft/class_1231 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5221 a method_5221 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5217 a method_5217 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5224 b method_5224 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5216 c method_5216 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5222 d method_5222 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5223 e method_5223 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5218 f method_5218 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5219 g method_5219 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5214 h method_5214 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5213 i method_5213 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5220 j method_5220 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5215 k method_5215 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_4 biq net/minecraft/class_1234 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5226 b method_5226 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_5 bir net/minecraft/class_1233 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_6 bis net/minecraft/class_1236 + f Ljava/lang/String; SPECIAL_OBJECTIVE_MARKER b field_34013 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; UNPACK_OBJECTIVE_ID c field_34014 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; REPACK_OBJECTIVE_ID d field_34015 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; createCriterionTypes a method_37389 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/function/Supplier;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5229 a method_5229 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37390 a method_37390 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37391 b method_37391 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37392 b method_37392 + m (Ljava/lang/String;)Ljava/lang/String; packNamespacedWithDot b method_52506 + p 0 namespace + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37393 c method_37393 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37394 c method_37394 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37395 d method_37395 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5228 e method_5228 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V1451_6$1 bis$1 net/minecraft/class_1236$1 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_37396 a method_37396 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_37397 a method_37397 + m ()V +c net/minecraft/util/datafix/schemas/V1451_6$2 bis$2 net/minecraft/class_1236$2 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37398 a method_37398 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_37400 b method_37400 + m ()V +c net/minecraft/util/datafix/schemas/V1460 bit net/minecraft/class_1238 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59641 A method_59641 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59642 a method_59642 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5270 a method_5270 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5261 a method_5261 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5232 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/function/Supplier;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5235 a method_5235 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37401 a method_37401 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59643 b method_59643 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_31467 b method_31467 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5250 b method_5250 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory b method_5273 + p 0 schema + p 1 map + p 2 name + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5236 b method_5236 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5251 c method_5251 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37402 c method_37402 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5241 c method_5241 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5248 d method_5248 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5240 d method_5240 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59644 d method_59644 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5257 e method_5257 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_52507 e method_52507 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5271 e method_5271 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5274 f method_5274 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5243 f method_5243 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5256 f method_5256 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5268 g method_5268 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5253 g method_5253 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5244 g method_5244 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5276 h method_5276 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5277 h method_5277 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5237 i method_5237 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5262 i method_5262 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5259 j method_5259 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5247 j method_5247 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5266 k method_5266 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5279 k method_5279 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5239 l method_5239 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5249 l method_5249 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5260 m method_5260 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5263 m method_5263 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5267 n method_5267 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5278 n method_5278 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5242 o method_5242 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5245 o method_5245 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5258 p method_5258 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5272 q method_5272 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5238 r method_5238 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5252 s method_5252 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5275 t method_5275 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5233 u method_5233 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5255 v method_5255 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5264 w method_5264 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5234 x method_5234 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5246 y method_5246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5265 z method_5265 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1466 biu net/minecraft/class_1237 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5231 a method_5231 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1470 biv net/minecraft/class_1240 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5281 a method_5281 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5282 a method_5282 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5280 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1481 biw net/minecraft/class_1239 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1483 bix net/minecraft/class_1242 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1486 biy net/minecraft/class_1241 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1510 biz net/minecraft/class_1243 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1800 bja net/minecraft/class_1245 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48135 a method_48135 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5287 a method_5287 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1801 bjb net/minecraft/class_1244 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48136 a method_48136 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1904 bjc net/minecraft/class_3686 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48137 a method_48137 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1906 bjd net/minecraft/class_3687 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_16053 a method_16053 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_16054 a method_16054 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_16052 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1909 bje net/minecraft/class_3743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_55641 a method_55641 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1920 bjf net/minecraft/class_3905 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_17342 a method_17342 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_17343 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1928 bjg net/minecraft/class_3984 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_17999 a method_17999 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_17998 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1929 bjh net/minecraft/class_3985 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18000 a method_18000 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18001 b method_18001 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1931 bji net/minecraft/class_4016 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48138 a method_48138 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2100 bjj net/minecraft/class_4465 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_21745 a method_21745 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_21746 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_21747 b method_21747 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2501 bjk net/minecraft/class_4755 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_24329 a method_24329 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerFurnace a method_24330 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2502 bjl net/minecraft/class_4756 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48139 a method_48139 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2505 bjm net/minecraft/class_4804 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48140 a method_48140 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2509 bjn net/minecraft/class_4847 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48141 a method_48141 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2519 bjo net/minecraft/class_4979 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48142 a method_48142 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2522 bjp net/minecraft/class_5130 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48143 a method_48143 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2551 bjq net/minecraft/class_5301 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28297 a method_28297 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28298 b method_28298 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28299 c method_28299 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28300 d method_28300 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28301 e method_28301 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28302 f method_28302 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2568 bjr net/minecraft/class_5416 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48144 a method_48144 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2571 bjs net/minecraft/class_5999 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48145 a method_48145 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2684 bjt net/minecraft/class_5701 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42640 a method_42640 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42641 b method_42641 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2686 bju net/minecraft/class_5752 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48146 a method_48146 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2688 bjv net/minecraft/class_5775 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48147 a method_48147 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48148 a method_48148 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2704 bjw net/minecraft/class_6000 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48149 a method_48149 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2707 bjx net/minecraft/class_6332 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2831 bjy net/minecraft/class_6504 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37979 a method_37979 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2832 bjz net/minecraft/class_6640 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38837 a method_38837 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49773 b method_49773 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38838 b method_38838 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38839 c method_38839 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38840 d method_38840 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38841 e method_38841 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38842 f method_38842 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38843 g method_38843 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2842 bka net/minecraft/class_6743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_39276 a method_39276 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3076 bkb net/minecraft/class_7092 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3078 bkc net/minecraft/class_7093 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42642 a method_42642 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_41318 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_41317 b method_41317 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3081 bkd net/minecraft/class_7245 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48150 a method_48150 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3082 bke net/minecraft/class_7246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42125 a method_42125 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3083 bkf net/minecraft/class_7294 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57275 a method_57275 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3202 bkg net/minecraft/class_7684 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3203 bkh net/minecraft/class_7685 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48151 a method_48151 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3204 bki net/minecraft/class_7686 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48152 a method_48152 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3325 bkj net/minecraft/class_8106 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48783 a method_48783 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48784 b method_48784 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3326 bkk net/minecraft/class_8146 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49100 a method_49100 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3327 bkl net/minecraft/class_8147 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49101 a method_49101 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49102 b method_49102 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3328 bkm net/minecraft/class_8148 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3438 bkn net/minecraft/class_8224 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3448 bko net/minecraft/class_8506 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_51293 a method_51293 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3682 bkp net/minecraft/class_8879 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54451 a method_54451 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3683 bkq net/minecraft/class_8880 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54452 a method_54452 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3685 bkr net/minecraft/class_8920 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; abstractArrow a method_54742 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54743 b method_54743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54744 c method_54744 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54745 d method_54745 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3689 bks net/minecraft/class_8945 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54974 a method_54974 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54975 b method_54975 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3799 bkt net/minecraft/class_9061 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_55642 a method_55642 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3807 bku net/minecraft/class_9184 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56646 a method_56646 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808 bkv net/minecraft/class_9185 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56647 a method_56647 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808_1 bkw net/minecraft/class_9186 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56648 a method_56648 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808_2 bkx net/minecraft/class_9688 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59893 a method_59893 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3816 bky net/minecraft/class_9253 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57077 a method_57077 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818 bkz net/minecraft/class_9270 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57276 a method_57276 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_3 bla net/minecraft/class_9271 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57277 a method_57277 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_4 blb net/minecraft/class_9272 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57278 a method_57278 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_5 blc net/minecraft/class_9651 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59645 a method_59645 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3825 bld net/minecraft/class_9454 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_58611 a method_58611 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3938 ble net/minecraft/class_9690 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; abstractArrow a method_59913 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59914 b method_59914 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59915 c method_59915 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V501 blf net/minecraft/class_1247 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48153 a method_48153 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V700 blg net/minecraft/class_1246 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48154 a method_48154 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V701 blh net/minecraft/class_1249 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5295 a method_5295 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5294 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V702 bli net/minecraft/class_1248 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59814 a method_59814 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59815 a method_59815 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V703 blj net/minecraft/class_1251 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5304 a method_5304 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5308 b method_5308 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5306 c method_5306 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5305 d method_5305 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5307 e method_5307 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V704 blk net/minecraft/class_1250 + f Ljava/util/Map; ITEM_TO_BLOCKENTITY a field_5744 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5745 + m ()Lcom/google/common/collect/ImmutableMap; method_5297 a method_5297 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5300 a method_5300 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5298 a method_5298 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59523 a method_59523 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_5296 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5303 b method_5303 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5301 b method_5301 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5302 c method_5302 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V704$1 blk$1 net/minecraft/class_1250$1 + m ()V +c net/minecraft/util/datafix/schemas/V705 bll net/minecraft/class_1253 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5746 + f Ljava/util/Map; ITEM_TO_ENTITY c field_49717 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5319 a method_5319 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5326 a method_5326 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5311 + p 0 schema + p 1 map + p 2 name + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5315 a method_5315 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5336 b method_5336 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59646 b method_59646 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerThrowableProjectile b method_5330 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5329 c method_5329 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5332 c method_5332 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5320 d method_5320 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5327 e method_5327 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5312 f method_5312 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5322 g method_5322 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5333 h method_5333 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5316 i method_5316 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5324 j method_5324 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5337 k method_5337 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5325 l method_5325 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5318 m method_5318 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5335 n method_5335 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5323 o method_5323 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5313 p method_5313 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5328 q method_5328 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5317 r method_5317 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5334 s method_5334 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5331 t method_5331 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5314 u method_5314 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5338 v method_5338 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5321 w method_5321 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59647 x method_59647 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V705$1 bll$1 net/minecraft/class_1253$1 + m ()V +c net/minecraft/util/datafix/schemas/V808 blm net/minecraft/class_1252 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5310 a method_5310 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_5309 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V99 bln net/minecraft/class_1254 + f Ljava/util/Map; ITEM_TO_ENTITY a field_49718 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5747 + f Lorg/slf4j/Logger; LOGGER c field_5749 + f Ljava/util/Map; ITEM_TO_BLOCKENTITY d field_5748 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59648 a method_59648 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; equipment a method_5353 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5365 a method_5365 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5347 a method_5347 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5339 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5371 a method_5371 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;)Ljava/lang/Object; addNames a method_5359 + p 0 tag + p 1 blockEntityRenames + p 2 entityRenames + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5357 a method_5357 + m (Ljava/util/HashMap;)V method_5344 a method_5344 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5348 a method_5348 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5373 b method_5373 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59649 b method_59649 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5372 b method_5372 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerThrowableProjectile b method_5368 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5375 b method_5375 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5341 c method_5341 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_31468 c method_31468 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5354 c method_5354 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMinecart c method_5377 + p 0 schema + p 1 map + p 2 name + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5369 d method_5369 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_52508 d method_52508 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59650 d method_59650 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory d method_5346 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5379 e method_5379 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5366 e method_5366 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5364 f method_5364 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5340 f method_5340 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5355 g method_5355 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5356 g method_5356 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5378 h method_5378 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5374 h method_5374 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5370 i method_5370 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5349 i method_5349 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5350 j method_5350 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5362 j method_5362 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5343 k method_5343 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5381 k method_5381 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5360 l method_5360 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5363 l method_5363 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5352 m method_5352 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5351 m method_5351 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5345 n method_5345 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5376 n method_5376 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5361 o method_5361 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5358 o method_5358 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5342 p method_5342 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5367 q method_5367 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V99$1 bln$1 net/minecraft/class_1254$1 + m ()V +c net/minecraft/util/datafix/schemas/package-info blo net/minecraft/class_6001 +c net/minecraft/util/debugchart/AbstractSampleLogger blp net/minecraft/class_9187 + f [J defaults a field_48806 + f [J sample b field_48807 + m ()V useSample a method_56649 + m ()V resetSample b method_56651 + m (I[J)V + p 1 size + p 2 defaults +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker blq net/minecraft/class_9188 + f I STOP_SENDING_AFTER_TICKS a field_48808 + f I STOP_SENDING_AFTER_MS b field_48809 + f Lnet/minecraft/server/players/PlayerList; playerList c field_48810 + f Ljava/util/EnumMap; subscriptions d field_48811 + f Ljava/util/Queue; subscriptionRequestQueue e field_48812 + m (I)V tick a method_56652 + p 1 tick + m (IJLjava/util/Map$Entry;)Z method_56653 a method_56653 + m (JI)V handleSubscriptions a method_56654 + p 1 millis + p 3 tick + m (Lnet/minecraft/network/protocol/game/ClientboundDebugSamplePacket;)V broadcast a method_56655 + p 1 packet + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V subscribe a method_56656 + p 1 player + p 2 sampleType + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)Z shouldLogSamples a method_56657 + p 1 sampleType + m (JI)V handleUnsubscriptions b method_56658 + p 1 millis + p 3 tick + m (Lnet/minecraft/server/players/PlayerList;)V + p 1 playerList +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker$SubscriptionRequest blq$a net/minecraft/class_9188$class_9189 + f Lnet/minecraft/server/level/ServerPlayer; player a comp_2288 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2289 + m ()Lnet/minecraft/server/level/ServerPlayer; player a comp_2288 + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2289 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker$SubscriptionStartedAt blq$b net/minecraft/class_9188$class_9190 + f J millis a comp_2290 + f I tick b comp_2291 + m ()J millis a comp_2290 + m ()I tick b comp_2291 + m (JI)V +c net/minecraft/util/debugchart/LocalSampleLogger blr net/minecraft/class_9191 + f I CAPACITY c field_48813 + f [[J samples d field_48814 + f I start e field_48815 + f I size f field_48816 + m (I)I wrapIndex b method_56661 + p 1 index + m (I)V + p 1 size + m (I[J)V + p 1 size + p 2 defaults +c net/minecraft/util/debugchart/RemoteDebugSampleType bls net/minecraft/class_9192 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; TICK_TIME a field_48817 + f [Lnet/minecraft/util/debugchart/RemoteDebugSampleType; $VALUES b field_48818 + m ()[Lnet/minecraft/util/debugchart/RemoteDebugSampleType; $values a method_56665 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/debugchart/RemoteSampleLogger blt net/minecraft/class_9193 + f Lnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker; subscriptionTracker c field_48819 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType d field_48820 + m (ILnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + p 1 size + p 2 subscriptionTracker + p 3 sampleType + m (ILnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;[J)V + p 1 size + p 2 subscriptionTracker + p 3 sampleType + p 4 defaults +c net/minecraft/util/debugchart/SampleLogger blu net/minecraft/class_8743 + m (J)V logSample a method_53066 + p 1 value + m (JI)V logPartialSample a method_56535 + p 1 value + p 3 index + m ([J)V logFullSample a method_56650 + p 1 sample +c net/minecraft/util/debugchart/SampleStorage blv net/minecraft/class_9194 + m (I)J get a method_56659 + p 1 index + m (II)J get a method_56660 + p 1 index + p 2 dimension + m ()I capacity c method_56662 + m ()I size d method_56663 + m ()V reset e method_56664 +c net/minecraft/util/debugchart/TpsDebugDimensions blw net/minecraft/class_9160 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; FULL_TICK a field_48718 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; TICK_SERVER_METHOD b field_48719 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; SCHEDULED_TASKS c field_48720 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; IDLE d field_48721 + f [Lnet/minecraft/util/debugchart/TpsDebugDimensions; $VALUES e field_48722 + m ()[Lnet/minecraft/util/debugchart/TpsDebugDimensions; $values a method_56536 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/eventlog/EventLogDirectory blx net/minecraft/class_7929 + f Lorg/slf4j/Logger; LOGGER a field_41288 + f I COMPRESS_BUFFER_SIZE b field_41289 + f Ljava/lang/String; COMPRESSED_EXTENSION c field_41290 + f Ljava/nio/file/Path; root d field_41291 + f Ljava/lang/String; extension e field_41292 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; listFiles a method_47549 + m (Ljava/nio/channels/ReadableByteChannel;Ljava/nio/file/Path;)V writeCompressed a method_47550 + p 0 channel + p 1 outputPath + m (Ljava/nio/file/Path;)Lnet/minecraft/util/eventlog/EventLogDirectory$File; parseFile a method_47551 + p 1 path + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/util/eventlog/EventLogDirectory; open a method_47552 + p 0 root + p 1 extension + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V tryCompress a method_47553 + p 0 path + p 1 outputPath + m (Ljava/time/LocalDate;)Lnet/minecraft/util/eventlog/EventLogDirectory$RawFile; createNewFile a method_47554 + p 1 date + m (Ljava/nio/file/Path;)Z method_47555 b method_47555 + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 1 root + p 2 extension + m ()V +c net/minecraft/util/eventlog/EventLogDirectory$CompressedFile blx$a net/minecraft/class_7929$class_7930 + f Ljava/nio/file/Path; path a comp_1156 + f Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id b comp_1157 + m (Ljava/nio/file/Path;Lnet/minecraft/util/eventlog/EventLogDirectory$FileId;)V +c net/minecraft/util/eventlog/EventLogDirectory$File blx$b net/minecraft/class_7929$class_7931 + m ()Ljava/io/Reader; openReader a method_47556 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$CompressedFile; compress b method_47557 + m ()Ljava/nio/file/Path; path c comp_1156 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id d comp_1157 +c net/minecraft/util/eventlog/EventLogDirectory$FileId blx$c net/minecraft/class_7929$class_7932 + f Ljava/time/LocalDate; date a comp_1158 + f I index b comp_1159 + f Ljava/time/format/DateTimeFormatter; DATE_FORMATTER c field_41293 + m ()Ljava/time/LocalDate; date a comp_1158 + m (Ljava/lang/String;)Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; parse a method_47558 + p 0 fileName + m ()I index b comp_1159 + m (Ljava/lang/String;)Ljava/lang/String; toFileName b method_47559 + p 1 extension + m (Ljava/time/LocalDate;I)V + m ()V +c net/minecraft/util/eventlog/EventLogDirectory$FileList blx$d net/minecraft/class_7929$class_7933 + f Ljava/util/List; files a field_41294 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; compressAll a method_47560 + m (ILjava/time/LocalDate;Lnet/minecraft/util/eventlog/EventLogDirectory$File;)Z method_47561 a method_47561 + m (Ljava/time/LocalDate;I)Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; prune a method_47562 + p 1 date + p 2 daysToKeep + m ()Ljava/util/stream/Stream; stream b method_47563 + m ()Ljava/util/Set; ids c method_47564 + m (Ljava/util/List;)V + p 1 files +c net/minecraft/util/eventlog/EventLogDirectory$RawFile blx$e net/minecraft/class_7929$class_7934 + f Ljava/nio/file/Path; path a comp_1156 + f Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id b comp_1157 + m ()Ljava/nio/channels/FileChannel; openChannel e method_47565 + m (Ljava/nio/file/Path;Lnet/minecraft/util/eventlog/EventLogDirectory$FileId;)V +c net/minecraft/util/eventlog/JsonEventLog bly net/minecraft/class_7935 + f Lcom/google/gson/Gson; GSON a field_41295 + f Lcom/mojang/serialization/Codec; codec b field_41296 + f Ljava/nio/channels/FileChannel; channel c field_41297 + f Ljava/util/concurrent/atomic/AtomicInteger; referenceCount d field_41298 + m ()Lnet/minecraft/util/eventlog/JsonEventLogReader; openReader a method_47566 + m (Lcom/mojang/serialization/Codec;Ljava/nio/file/Path;)Lnet/minecraft/util/eventlog/JsonEventLog; open a method_47567 + p 0 codec + p 1 path + m (Ljava/lang/Object;)V write a method_47568 + p 1 data + m ()V releaseReference b method_47569 + m (Lcom/mojang/serialization/Codec;Ljava/nio/channels/FileChannel;)V + p 1 codec + p 2 channel + m ()V +c net/minecraft/util/eventlog/JsonEventLog$1 bly$1 net/minecraft/class_7935$1 + f Lnet/minecraft/util/eventlog/JsonEventLogReader; val$reader a field_41299 + f Lnet/minecraft/util/eventlog/JsonEventLog; field_41300 b field_41300 + f J position c field_41301 + m (Lnet/minecraft/util/eventlog/JsonEventLog;Lnet/minecraft/util/eventlog/JsonEventLogReader;)V +c net/minecraft/util/eventlog/JsonEventLogReader blz net/minecraft/class_7936 + m ()Ljava/lang/Object; next a method_47570 + m (Lcom/mojang/serialization/Codec;Ljava/io/Reader;)Lnet/minecraft/util/eventlog/JsonEventLogReader; create a method_47571 + p 0 codec + p 1 reader +c net/minecraft/util/eventlog/JsonEventLogReader$1 blz$1 net/minecraft/class_7936$1 + f Lcom/google/gson/stream/JsonReader; val$jsonReader a field_41302 + f Lcom/mojang/serialization/Codec; val$codec b field_41303 + m (Lcom/google/gson/stream/JsonReader;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/eventlog/package-info bma net/minecraft/class_7937 +c net/minecraft/util/monitoring/jmx/MinecraftServerStatistics bmb net/minecraft/class_5169 + f Lorg/slf4j/Logger; LOGGER a field_23970 + f Lnet/minecraft/server/MinecraftServer; server b field_23971 + f Ljavax/management/MBeanInfo; mBeanInfo c field_23972 + f Ljava/util/Map; attributeDescriptionByName d field_23973 + m ()F getAverageTickTime a method_27177 + m (I)[Ljavax/management/MBeanAttributeInfo; method_27178 a method_27178 + m (Lnet/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription;)Ljavax/management/Attribute; method_27179 a method_27179 + m (Lnet/minecraft/server/MinecraftServer;)V registerJmxMonitoring a method_27181 + p 0 server + m ()[J getTickTimes b method_27182 + m (Lnet/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription;)Ljava/lang/String; method_27183 b method_27183 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription bmb$a net/minecraft/class_5169$class_5170 + f Ljava/lang/String; name a field_23974 + f Ljava/util/function/Supplier; getter b field_23975 + f Ljava/lang/String; description c field_23976 + f Ljava/lang/Class; type d field_23977 + m ()Ljavax/management/MBeanAttributeInfo; asMBeanAttributeInfo a method_27184 + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)V + p 1 name + p 2 getter + p 3 description + p 4 type +c net/minecraft/util/monitoring/jmx/package-info bmc net/minecraft/class_6641 +c net/minecraft/util/package-info bmd net/minecraft/class_6002 +c net/minecraft/util/parsing/package-info bme net/minecraft/class_9386 +c net/minecraft/util/parsing/packrat/Atom bmf net/minecraft/class_9387 + f Ljava/lang/String; name a comp_2468 + m ()Ljava/lang/String; name a comp_2468 + m (Ljava/lang/String;)Lnet/minecraft/util/parsing/packrat/Atom; of a method_58298 + p 0 name + m (Ljava/lang/String;)V +c net/minecraft/util/parsing/packrat/Control bmg net/minecraft/class_9388 + f Lnet/minecraft/util/parsing/packrat/Control; UNBOUND a field_49959 + m ()V method_58299 a method_58299 + m ()V +c net/minecraft/util/parsing/packrat/Dictionary bmh net/minecraft/class_9389 + f Ljava/util/Map; terms a field_49960 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Lnet/minecraft/util/parsing/packrat/Rule; get a method_58300 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Rule;)V put a method_58301 + p 1 atom + p 2 rule + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;)V put a method_58302 + p 1 atom + p 2 term + p 3 ruleAction + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;)V put a method_58303 + p 1 atom + p 2 term + p 3 simpleRuleAction + m ()V +c net/minecraft/util/parsing/packrat/ErrorCollector bmi net/minecraft/class_9390 + m (I)V finish a method_58304 + p 1 cursor + m (ILnet/minecraft/util/parsing/packrat/SuggestionSupplier;Ljava/lang/Object;)V store a method_58305 + p 1 cursor + p 2 suggestions + p 3 reason + m (ILjava/lang/Object;)V store a method_58306 + p 1 cursor + p 2 reason +c net/minecraft/util/parsing/packrat/ErrorCollector$LongestOnly bmi$a net/minecraft/class_9390$class_9391 + f Ljava/util/List; entries a field_49961 + f I lastCursor b field_49962 + m ()Ljava/util/List; entries a method_58307 + m ()I cursor b method_58308 + m (I)V discardErrorsFromShorterParse b method_58309 + p 1 cursor + m ()V +c net/minecraft/util/parsing/packrat/ErrorEntry bmj net/minecraft/class_9392 + f I cursor a comp_2469 + f Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; suggestions b comp_2470 + f Ljava/lang/Object; reason c comp_2471 + m ()I cursor a comp_2469 + m ()Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; suggestions b comp_2470 + m ()Ljava/lang/Object; reason c comp_2471 + m (ILnet/minecraft/util/parsing/packrat/SuggestionSupplier;Ljava/lang/Object;)V +c net/minecraft/util/parsing/packrat/ParseState bmk net/minecraft/class_9393 + f Ljava/util/Map; ruleCache a field_49963 + f Lnet/minecraft/util/parsing/packrat/Dictionary; dictionary b field_49964 + f Lnet/minecraft/util/parsing/packrat/ErrorCollector; errorCollector c field_49965 + m ()Lnet/minecraft/util/parsing/packrat/ErrorCollector; errorCollector a method_58310 + m (I)V restore a method_58311 + p 1 cursor + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/util/Optional; parseTopRule a method_58312 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/ParseState$CacheKey;)Lnet/minecraft/util/parsing/packrat/ParseState$CacheEntry; lookupInCache a method_58313 + p 1 key + m (Lnet/minecraft/util/parsing/packrat/ParseState$CacheKey;Ljava/util/Optional;)V storeInCache a method_58314 + p 1 key + p 2 value + m ()Ljava/lang/Object; input b method_58315 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/util/Optional; parse b method_58316 + p 1 atom + m ()I mark c method_58317 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/ErrorCollector;)V + p 1 dictionary + p 2 errorCollector +c net/minecraft/util/parsing/packrat/ParseState$CacheEntry bmk$a net/minecraft/class_9393$class_9394 + f Ljava/util/Optional; value a comp_2472 + f I mark b comp_2473 + m ()Ljava/util/Optional; value a comp_2472 + m ()I mark b comp_2473 + m (Ljava/util/Optional;I)V +c net/minecraft/util/parsing/packrat/ParseState$CacheKey bmk$b net/minecraft/class_9393$class_9395 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2474 + f I mark b comp_2475 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2474 + m ()I mark b comp_2475 + m (Lnet/minecraft/util/parsing/packrat/Atom;I)V +c net/minecraft/util/parsing/packrat/Rule bml net/minecraft/class_9396 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/Optional; parse a method_58318 + p 1 parseState + m (Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58319 a method_58319 + m (Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;)Lnet/minecraft/util/parsing/packrat/Rule; fromTerm a method_58320 + p 0 child + p 1 action + m (Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;)Lnet/minecraft/util/parsing/packrat/Rule; fromTerm a method_58321 + p 0 child + p 1 action +c net/minecraft/util/parsing/packrat/Rule$RuleAction bml$a net/minecraft/class_9396$class_9397 +c net/minecraft/util/parsing/packrat/Rule$SimpleRuleAction bml$b net/minecraft/class_9396$class_9398 +c net/minecraft/util/parsing/packrat/Rule$WrappedTerm bml$c net/minecraft/class_9396$class_9399 + f Lnet/minecraft/util/parsing/packrat/Rule$RuleAction; action a comp_2476 + f Lnet/minecraft/util/parsing/packrat/Term; child b comp_2477 + m ()Lnet/minecraft/util/parsing/packrat/Rule$RuleAction; action a comp_2476 + m ()Lnet/minecraft/util/parsing/packrat/Term; child b comp_2477 + m (Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;Lnet/minecraft/util/parsing/packrat/Term;)V +c net/minecraft/util/parsing/packrat/Scope bmm net/minecraft/class_9400 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; values a field_49966 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; get a method_58322 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V put a method_58323 + p 1 atom + p 2 value + m (Lnet/minecraft/util/parsing/packrat/Scope;)V putAll a method_58324 + p 1 scope + m ([Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getAny a method_58325 + p 1 atoms + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getOrThrow b method_58326 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault b method_58327 + p 1 atom + p 2 defaultValue + m ([Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getAnyOrThrow b method_58328 + p 1 atoms + m ()V +c net/minecraft/util/parsing/packrat/SuggestionSupplier bmn net/minecraft/class_9401 + m ()Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; empty b method_58329 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58330 b method_58330 +c net/minecraft/util/parsing/packrat/Term bmo net/minecraft/class_9402 + m ()Lnet/minecraft/util/parsing/packrat/Term; cut a method_58331 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Lnet/minecraft/util/parsing/packrat/Term; named a method_58332 + p 0 name + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)Lnet/minecraft/util/parsing/packrat/Term; marker a method_58333 + p 0 name + p 1 value + m (Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;Lnet/minecraft/util/parsing/packrat/Control;)Z parse a method_58334 + p 1 parseState + p 2 scope + p 3 control + m (Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; optional a method_58335 + p 0 term + m ([Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; sequence a method_58336 + p 0 elements + m ()Lnet/minecraft/util/parsing/packrat/Term; empty b method_58337 + m ([Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; alternative b method_58338 + p 0 elements +c net/minecraft/util/parsing/packrat/Term$1 bmo$1 net/minecraft/class_9402$1 + m ()V +c net/minecraft/util/parsing/packrat/Term$2 bmo$2 net/minecraft/class_9402$2 + m ()V +c net/minecraft/util/parsing/packrat/Term$Alternative bmo$a net/minecraft/class_9402$class_9403 + f Ljava/util/List; elements a comp_2478 + m ()Ljava/util/List; elements c comp_2478 + m (Ljava/util/List;)V +c net/minecraft/util/parsing/packrat/Term$Marker bmo$b net/minecraft/class_9402$class_9404 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2479 + f Ljava/lang/Object; value b comp_2480 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name c comp_2479 + m ()Ljava/lang/Object; value d comp_2480 + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V +c net/minecraft/util/parsing/packrat/Term$Maybe bmo$c net/minecraft/class_9402$class_9405 + f Lnet/minecraft/util/parsing/packrat/Term; term a comp_2481 + m ()Lnet/minecraft/util/parsing/packrat/Term; term c comp_2481 + m (Lnet/minecraft/util/parsing/packrat/Term;)V +c net/minecraft/util/parsing/packrat/Term$Reference bmo$d net/minecraft/class_9402$class_9406 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2482 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name c comp_2482 + m (Lnet/minecraft/util/parsing/packrat/Atom;)V +c net/minecraft/util/parsing/packrat/Term$Sequence bmo$e net/minecraft/class_9402$class_9407 + f Ljava/util/List; elements a comp_2483 + m ()Ljava/util/List; elements c comp_2483 + m (Ljava/util/List;)V +c net/minecraft/util/parsing/packrat/commands/Grammar bmp net/minecraft/class_9408 + f Lnet/minecraft/util/parsing/packrat/Dictionary; rules a comp_2484 + f Lnet/minecraft/util/parsing/packrat/Atom; top b comp_2485 + m ()Lnet/minecraft/util/parsing/packrat/Dictionary; rules a comp_2484 + m (Lnet/minecraft/util/parsing/packrat/ErrorEntry;Ljava/util/function/Consumer;)V method_58339 a method_58339 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/Optional; parse a method_58340 + p 1 parseState + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parseForCommands a method_58341 + p 1 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; parseForSuggestions a method_58342 + p 1 builder + m ()Lnet/minecraft/util/parsing/packrat/Atom; top b comp_2485 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/Atom;)V +c net/minecraft/util/parsing/packrat/commands/ResourceLocationParseRule bmq net/minecraft/class_9409 + f Lnet/minecraft/util/parsing/packrat/Rule; INSTANCE a field_49967 + m ()V + m ()V +c net/minecraft/util/parsing/packrat/commands/ResourceLookupRule bmr net/minecraft/class_9410 + f Ljava/lang/Object; context a field_49968 + f Lnet/minecraft/util/parsing/packrat/Atom; idParser b field_49969 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; validateElement a method_58343 + p 1 reader + p 2 elementType + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V + p 1 idParser + p 2 context +c net/minecraft/util/parsing/packrat/commands/ResourceSuggestion bms net/minecraft/class_9411 + m ()Ljava/util/stream/Stream; possibleResources a method_58344 +c net/minecraft/util/parsing/packrat/commands/StringReaderParserState bmt net/minecraft/class_9412 + f Lcom/mojang/brigadier/StringReader; input a field_49970 + m ()Lcom/mojang/brigadier/StringReader; input d method_58345 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/ErrorCollector;Lcom/mojang/brigadier/StringReader;)V + p 1 dictionary + p 2 errorCollector + p 3 input +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms bmu net/minecraft/class_9413 + m (C)Lnet/minecraft/util/parsing/packrat/Term; character a method_58346 + p 0 value + m (Ljava/lang/String;)Lnet/minecraft/util/parsing/packrat/Term; word a method_58347 + p 0 value +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms$TerminalCharacter bmu$a net/minecraft/class_9413$class_9414 + f C value a comp_2486 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58348 a method_58348 + m ()C value c comp_2486 + m (C)V +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms$TerminalWord bmu$b net/minecraft/class_9413$class_9415 + f Ljava/lang/String; value a comp_2487 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58349 a method_58349 + m ()Ljava/lang/String; value c comp_2487 + m (Ljava/lang/String;)V +c net/minecraft/util/parsing/packrat/commands/TagParseRule bmv net/minecraft/class_9416 + f Lnet/minecraft/util/parsing/packrat/Rule; INSTANCE a field_49971 + m ()V + m ()V +c net/minecraft/util/parsing/packrat/commands/package-info bmw net/minecraft/class_9417 +c net/minecraft/util/parsing/packrat/package-info bmx net/minecraft/class_9418 +c net/minecraft/util/profiling/ActiveProfiler bmy net/minecraft/class_3533 + f J WARNING_TIME_NANOS a field_16267 + f Lorg/slf4j/Logger; LOGGER c field_15735 + f Ljava/util/List; paths d field_15736 + f Lit/unimi/dsi/fastutil/longs/LongList; startTimes e field_15730 + f Ljava/util/Map; entries f field_21818 + f Ljava/util/function/IntSupplier; getTickTime g field_16266 + f Ljava/util/function/LongSupplier; getRealTime h field_21961 + f J startTimeNano i field_15732 + f I startTimeTicks j field_15729 + f Ljava/lang/String; path k field_15734 + f Z started l field_15733 + f Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; currentEntry m field_21819 + f Z warn n field_20345 + f Ljava/util/Set; chartedPaths o field_33873 + m (J)Ljava/lang/Object; method_21718 a method_21718 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; method_24245 e method_24245 + m ()Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; getCurrentEntry f method_24246 + m ()Ljava/lang/Object; method_21719 g method_21719 + m ()Ljava/lang/Object; method_21720 h method_21720 + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;Z)V + p 1 startTimeNano + p 2 startTimeTicks + p 3 warn + m ()V +c net/minecraft/util/profiling/ActiveProfiler$PathEntry bmy$a net/minecraft/class_3533$class_4746 + f J maxDuration a field_33874 + f J minDuration b field_33875 + f J accumulatedDuration c field_21820 + f J count d field_21821 + f Lit/unimi/dsi/fastutil/objects/Object2LongOpenHashMap; counters e field_21822 + m ()V +c net/minecraft/util/profiling/ContinuousProfiler bmz net/minecraft/class_4757 + f Ljava/util/function/LongSupplier; realTime a field_21962 + f Ljava/util/function/IntSupplier; tickCount b field_21963 + f Lnet/minecraft/util/profiling/ProfileCollector; profiler c field_21964 + m ()Z isEnabled a method_24333 + m ()V disable b method_24334 + m ()V enable c method_24335 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getFiller d method_24336 + m ()Lnet/minecraft/util/profiling/ProfileResults; getResults e method_24337 + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;)V + p 1 realTime + p 2 tickCount +c net/minecraft/util/profiling/EmptyProfileResults bna net/minecraft/class_3688 + f Lnet/minecraft/util/profiling/EmptyProfileResults; EMPTY a field_16265 + m ()V + m ()V +c net/minecraft/util/profiling/FilledProfileResults bnb net/minecraft/class_3692 + f Lorg/slf4j/Logger; LOGGER a field_16279 + f Lnet/minecraft/util/profiling/ProfilerPathEntry; EMPTY b field_21823 + f Lcom/google/common/base/Splitter; SPLITTER c field_21824 + f Ljava/util/Comparator; COUNTER_ENTRY_COMPARATOR e field_21825 + f Ljava/util/Map; entries f field_21826 + f J startTimeNano g field_16278 + f I startTimeTicks h field_16275 + f J endTimeNano i field_16276 + f I endTimeTicks j field_16274 + f I tickDuration k field_19383 + m (IILjava/lang/StringBuilder;Ljava/util/Map$Entry;)V method_24252 a method_24252 + m (ILjava/lang/String;Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;ILjava/lang/StringBuilder;)V appendCounterResults a method_24253 + p 1 indents + p 2 name + p 3 collector + p 4 tickSpan + p 5 builder + m (ILjava/lang/String;Ljava/lang/StringBuilder;)V appendProfilerResults a method_16061 + p 1 depth + p 2 sectionPath + p 3 builder + m (JI)Ljava/lang/String; getProfilerResults a method_16063 + p 1 timeSpan + p 3 tickSpan + m (Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;)J method_24254 a method_24254 + m (Ljava/lang/String;Ljava/lang/String;)Z isDirectChild a method_24255 + p 0 sectionPath + p 1 entry + m (Ljava/lang/StringBuilder;I)Ljava/lang/StringBuilder; indentLine a method_24256 + p 0 builder + p 1 indents + m (Ljava/lang/StringBuilder;ILjava/lang/String;Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;)V method_24257 a method_24257 + m (Ljava/lang/StringBuilder;ILjava/lang/String;Ljava/lang/Long;)V method_24258 a method_24258 + m (Ljava/util/Map;Ljava/lang/String;Lnet/minecraft/util/profiling/ProfilerPathEntry;)V method_24259 a method_24259 + m (Ljava/util/Map;Ljava/lang/StringBuilder;I)V appendCounters a method_24260 + p 1 counters + p 2 builder + p 3 tickSpan + m (Ljava/util/Map;Ljava/util/List;Ljava/lang/String;Ljava/lang/Long;)V method_24261 a method_24261 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ProfilerPathEntry; getEntry c method_24262 + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector; method_24263 d method_24263 + m ()Ljava/util/Map; getCounterValues h method_24264 + m (Ljava/util/Map;JIJI)V + p 1 entries + p 2 startTimeNano + p 4 startTimeTicks + p 5 endTimeNano + p 7 endTimeTicks + m ()V +c net/minecraft/util/profiling/FilledProfileResults$1 bnb$1 net/minecraft/class_3692$1 + m ()V +c net/minecraft/util/profiling/FilledProfileResults$CounterCollector bnb$a net/minecraft/class_3692$class_4747 + f J selfValue a field_21827 + f J totalValue b field_21828 + f Ljava/util/Map; children c field_21829 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector; method_24266 a method_24266 + m (Ljava/util/Iterator;J)V addValue a method_24267 + p 1 counters + p 2 value + m ()V +c net/minecraft/util/profiling/InactiveProfiler bnc net/minecraft/class_3694 + f Lnet/minecraft/util/profiling/InactiveProfiler; INSTANCE a field_16280 + m ()V + m ()V +c net/minecraft/util/profiling/ProfileCollector bnd net/minecraft/class_3693 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; getEntry c method_34696 + p 1 entryId + m ()Lnet/minecraft/util/profiling/ProfileResults; getResults d method_16064 + m ()Ljava/util/Set; getChartedPaths e method_37168 +c net/minecraft/util/profiling/ProfileResults bne net/minecraft/class_3696 + f C PATH_SEPARATOR d field_29924 + m ()J getStartTimeNano a method_16068 + m (Ljava/lang/String;)Ljava/util/List; getTimes a method_16067 + p 1 sectionPath + m (Ljava/nio/file/Path;)Z saveResults a method_16069 + p 1 path + m ()I getStartTimeTicks b method_16072 + m (Ljava/lang/String;)Ljava/lang/String; demanglePath b method_21721 + p 0 path + m ()J getEndTimeNano c method_16073 + m ()I getEndTimeTicks d method_16070 + m ()Ljava/lang/String; getProfilerResults e method_34970 + m ()I getTickDuration f method_16074 + m ()J getNanoDuration g method_16071 +c net/minecraft/util/profiling/ProfilerFiller bnf net/minecraft/class_3695 + f Ljava/lang/String; ROOT b field_29925 + m ()V startTick a method_16065 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/util/profiling/ProfilerFiller; tee a method_24338 + p 0 first + p 1 second + m (Lnet/minecraft/util/profiling/metrics/MetricCategory;)V markForCharting a method_37167 + p 1 category + m (Ljava/lang/String;)V push a method_15396 + c Start section + p 1 name + m (Ljava/lang/String;I)V incrementCounter a method_24270 + p 1 counterName + p 2 increment + m (Ljava/util/function/Supplier;)V push a method_15400 + p 1 nameSupplier + m (Ljava/util/function/Supplier;I)V incrementCounter a method_24271 + p 1 counterNameSupplier + p 2 increment + m ()V endTick b method_16066 + m (Ljava/lang/String;)V popPush b method_15405 + p 1 name + m (Ljava/util/function/Supplier;)V popPush b method_15403 + p 1 nameSupplier + m ()V pop c method_15407 + c End section + m (Ljava/util/function/Supplier;)V incrementCounter c method_39277 + p 1 entryIdSupplier + m (Ljava/lang/String;)V incrementCounter d method_39278 + p 1 entryId +c net/minecraft/util/profiling/ProfilerFiller$1 bnf$1 net/minecraft/class_3695$1 + f Lnet/minecraft/util/profiling/ProfilerFiller; val$first a field_21965 + f Lnet/minecraft/util/profiling/ProfilerFiller; val$second c field_21966 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;)V +c net/minecraft/util/profiling/ProfilerPathEntry bng net/minecraft/class_4748 + m ()J getDuration a method_24272 + m ()J getMaxDuration b method_37169 + m ()J getCount c method_24273 + m ()Lit/unimi/dsi/fastutil/objects/Object2LongMap; getCounters d method_24274 +c net/minecraft/util/profiling/ResultField bnh net/minecraft/class_3534 + f D percentage a field_15739 + f D globalPercentage b field_15737 + f J count c field_19384 + f Ljava/lang/String; name d field_15738 + m ()I getColor a method_15409 + m (Lnet/minecraft/util/profiling/ResultField;)I compareTo a method_15408 + m (Ljava/lang/String;DDJ)V + p 1 name + p 2 percentage + p 4 globalPercentage + p 6 count +c net/minecraft/util/profiling/SingleTickProfiler bni net/minecraft/class_4758 + f Lorg/slf4j/Logger; LOGGER a field_21967 + f Ljava/util/function/LongSupplier; realTime b field_21968 + f J saveThreshold c field_21969 + f I tick d field_21970 + f Ljava/io/File; location e field_21971 + f Lnet/minecraft/util/profiling/ProfileCollector; profiler f field_21972 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; startTick a method_24339 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/SingleTickProfiler;)Lnet/minecraft/util/profiling/ProfilerFiller; decorateFiller a method_24340 + p 0 profiler + p 1 singleTickProfiler + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/SingleTickProfiler; createTickProfiler a method_24341 + p 0 name + m ()V endTick b method_24342 + m ()I method_24343 c method_24343 + m (Ljava/util/function/LongSupplier;Ljava/lang/String;J)V + p 1 realTime + p 2 location + p 3 saveThreshold + m ()V +c net/minecraft/util/profiling/jfr/Environment bnj net/minecraft/class_6506 + f Lnet/minecraft/util/profiling/jfr/Environment; CLIENT a field_34412 + f Lnet/minecraft/util/profiling/jfr/Environment; SERVER b field_34413 + f Ljava/lang/String; description c field_34414 + f [Lnet/minecraft/util/profiling/jfr/Environment; $VALUES d field_34415 + m ()Ljava/lang/String; getDescription a method_37986 + m (Lnet/minecraft/server/MinecraftServer;)Lnet/minecraft/util/profiling/jfr/Environment; from a method_37987 + p 0 server + m ()[Lnet/minecraft/util/profiling/jfr/Environment; $values b method_37988 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 description + m ()V +c net/minecraft/util/profiling/jfr/JfrProfiler bnk net/minecraft/class_6505 + f Ljava/lang/String; ROOT_CATEGORY a field_34403 + f Ljava/lang/String; WORLD_GEN_CATEGORY b field_34404 + f Ljava/lang/String; TICK_CATEGORY c field_34405 + f Ljava/lang/String; NETWORK_CATEGORY d field_34406 + f Ljava/lang/String; STORAGE_CATEGORY e field_49058 + f Lorg/slf4j/Logger; LOGGER g field_34408 + f Ljava/util/List; CUSTOM_EVENTS h field_34407 + f Ljava/lang/String; FLIGHT_RECORDER_CONFIG i field_34409 + f Ljava/time/format/DateTimeFormatter; DATE_TIME_FORMATTER j field_34410 + f Lnet/minecraft/util/profiling/jfr/JfrProfiler; INSTANCE k field_35576 + f Ljdk/jfr/Recording; recording l field_34411 + f F currentAverageTickTime m field_35577 + f Ljava/util/Map; networkTrafficByAddress n field_35578 + m ()Lnet/minecraft/util/profiling/jfr/JfrProfiler; getInstance a method_39428 + m (Lnet/minecraft/util/profiling/jfr/Environment;Ljava/lang/String;Ljdk/jfr/Recording;)V method_37982 a method_37982 + m (Ljava/io/Reader;Lnet/minecraft/util/profiling/jfr/Environment;)Z start a method_37983 + p 1 reader + p 2 environment + m (Ljava/net/SocketAddress;)Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$SumAggregation; networkStatFor a method_39429 + p 1 remoteAddress + m ()V setupSummaryListener f method_38660 + m ()V method_39430 g method_39430 + m ()V method_39431 h method_39431 + m ()V + m ()V +c net/minecraft/util/profiling/jfr/JfrProfiler$1 bnk$1 net/minecraft/class_6505$1 + f Lnet/minecraft/util/profiling/jfr/SummaryReporter; summaryReporter a field_34921 + f Lnet/minecraft/util/profiling/jfr/JfrProfiler; field_34922 b field_34922 + m ()V method_38661 a method_38661 + m (Lnet/minecraft/util/profiling/jfr/JfrProfiler;)V +c net/minecraft/util/profiling/jfr/JvmProfiler bnl net/minecraft/class_6611 + f Lnet/minecraft/util/profiling/jfr/JvmProfiler; INSTANCE f field_34923 + m (F)V onServerTick a method_38654 + p 1 currentAverageTickTime + m (Lnet/minecraft/util/profiling/jfr/Environment;)Z start a method_37981 + p 1 environment + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; onChunkGenerate a method_38655 + p 1 chunkPos + p 2 level + p 3 name + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V onRegionFileRead a method_56979 + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketType;Ljava/net/SocketAddress;I)V onPacketReceived a method_38656 + p 1 protocol + p 2 packetType + p 3 address + p 4 size + m ()Ljava/nio/file/Path; stop b method_37980 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V onRegionFileWrite b method_56980 + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketType;Ljava/net/SocketAddress;I)V onPacketSent b method_38657 + p 1 protocol + p 2 packetType + p 3 address + p 4 size + m ()Z isRunning c method_37984 + m ()Z isAvailable d method_38658 + m ()Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; onWorldLoadedStarted e method_38659 + m ()V +c net/minecraft/util/profiling/jfr/JvmProfiler$NoOpProfiler bnl$a net/minecraft/class_6611$class_6612 + f Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; noOpCommit a field_34925 + f Lorg/slf4j/Logger; LOGGER b field_34924 + m ()V method_38662 a method_38662 + m ()V + m ()V +c net/minecraft/util/profiling/jfr/Percentiles bnm net/minecraft/class_6508 + f Lcom/google/common/math/Quantiles$ScaleAndIndexes; DEFAULT_INDEXES a field_34418 + m (Ljava/util/Map;)Ljava/util/Map; sorted a method_37996 + p 0 input + m (Ljava/util/Map;Lit/unimi/dsi/fastutil/ints/Int2DoubleRBTreeMap;)V method_37997 a method_37997 + m ([D)Ljava/util/Map; evaluate a method_37998 + p 0 input + m ([J)Ljava/util/Map; evaluate a method_37999 + p 0 input + m ()V + m ()V +c net/minecraft/util/profiling/jfr/SummaryReporter bnn net/minecraft/class_6507 + f Lorg/slf4j/Logger; LOGGER a field_34926 + f Ljava/lang/Runnable; onDeregistration b field_34417 + m ()Ljava/lang/String; method_37993 a method_37993 + m (Ljava/nio/file/Path;)V recordingStopped a method_38663 + p 1 outputPath + m (Ljava/util/function/Supplier;)V infoWithFallback a method_37991 + p 0 message + m (Ljava/util/function/Supplier;Ljava/lang/Throwable;)V warnWithFallback a method_37992 + p 0 message + p 1 throwable + m ()Ljava/lang/String; method_37995 b method_37995 + m (Ljava/nio/file/Path;)Ljava/lang/String; method_37990 b method_37990 + m (Ljava/nio/file/Path;)Ljava/lang/String; method_37994 c method_37994 + m (Ljava/lang/Runnable;)V + p 1 onDeregistration + m ()V +c net/minecraft/util/profiling/jfr/callback/ProfiledDuration bno net/minecraft/class_6613 +c net/minecraft/util/profiling/jfr/callback/package-info bnp net/minecraft/class_6614 +c net/minecraft/util/profiling/jfr/event/ChunkRegionIoEvent bnq net/minecraft/class_9232 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes +c net/minecraft/util/profiling/jfr/event/ChunkRegionIoEvent$Fields bnq$a net/minecraft/class_9232$class_9233 + f Ljava/lang/String; REGION_POS_X a field_49059 + f Ljava/lang/String; REGION_POS_Z b field_49060 + f Ljava/lang/String; LOCAL_POS_X c field_49061 + f Ljava/lang/String; LOCAL_POS_Z d field_49062 + f Ljava/lang/String; CHUNK_POS_X e field_49063 + f Ljava/lang/String; CHUNK_POS_Z f field_49064 + f Ljava/lang/String; LEVEL g field_49065 + f Ljava/lang/String; DIMENSION h field_49066 + f Ljava/lang/String; TYPE i field_49067 + f Ljava/lang/String; COMPRESSION j field_49068 + f Ljava/lang/String; BYTES k field_49069 + m ()V +c net/minecraft/util/profiling/jfr/event/PacketEvent bnr net/minecraft/class_6509 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/SocketAddress;I)V + p 1 protocolId + p 2 packetDirection + p 3 packetId + p 4 address + p 5 bytes +c net/minecraft/util/profiling/jfr/event/PacketEvent$Fields bnr$a net/minecraft/class_6509$class_6510 + f Ljava/lang/String; REMOTE_ADDRESS a field_34419 + f Ljava/lang/String; PROTOCOL_ID b field_35579 + f Ljava/lang/String; PACKET_DIRECTION c field_48318 + f Ljava/lang/String; PACKET_ID d field_35580 + f Ljava/lang/String; BYTES e field_34421 + m ()V +c net/minecraft/util/profiling/jfr/event/package-info bns net/minecraft/class_6512 +c net/minecraft/util/profiling/jfr/package-info bnt net/minecraft/class_6515 +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser bnu net/minecraft/class_6516 + f Ljava/time/Instant; recordingStarted a field_34422 + f Ljava/time/Instant; recordingEnded b field_34423 + f Ljava/util/List; chunkGenStats c field_34424 + f Ljava/util/List; cpuLoadStat d field_34425 + f Ljava/util/Map; receivedPackets e field_34426 + f Ljava/util/Map; sentPackets f field_34427 + f Ljava/util/Map; readChunks g field_49070 + f Ljava/util/Map; writtenChunks h field_49071 + f Ljava/util/List; fileWrites i field_34428 + f Ljava/util/List; fileReads j field_34429 + f I garbageCollections k field_34430 + f Ljava/time/Duration; gcTotalDuration l field_34431 + f Ljava/util/List; gcHeapStats m field_34432 + f Ljava/util/List; threadAllocationStats n field_34433 + f Ljava/util/List; tickTimes o field_34434 + f Ljava/time/Duration; worldCreationDuration p field_34435 + m ()Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult; results a method_38000 + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize; method_56981 a method_56981 + m (Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize; method_39432 a method_39432 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult; parse a method_38001 + p 0 file + m (Ljava/time/Duration;Ljava/util/Map;)Lnet/minecraft/util/profiling/jfr/stats/IoSummary; collectIoStats a method_39433 + p 0 recordingDuration + p 1 entries + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_39434 a method_39434 + m (Ljava/util/stream/Stream;)V capture a method_38002 + p 1 events + m (Ljdk/jfr/consumer/RecordedEvent;)V method_38003 a method_38003 + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V incrementPacket a method_39435 + p 1 event + p 2 increment + p 3 packets + m (Ljdk/jfr/consumer/RecordedEvent;Ljava/util/List;Ljava/lang/String;)V appendFileIO a method_38004 + p 1 event + p 2 stats + p 3 id + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V incrementChunk b method_56982 + p 1 event + p 2 increment + p 3 chunks + m (Ljava/util/stream/Stream;)V + p 1 events +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser$1 bnu$1 net/minecraft/class_6516$1 + f Ljdk/jfr/consumer/RecordingFile; val$recordingFile a field_34436 + m ()Ljdk/jfr/consumer/RecordedEvent; next a method_38005 + m (Ljdk/jfr/consumer/RecordingFile;)V +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize bnu$a net/minecraft/class_6516$class_6766 + f J count a field_35581 + f J totalSize b field_35582 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; toCountAndSize a method_39436 + m (I)V increment a method_39437 + p 1 increment + m ()V +c net/minecraft/util/profiling/jfr/parse/JfrStatsResult bnv net/minecraft/class_6517 + f Ljava/time/Instant; recordingStarted a comp_3 + f Ljava/time/Instant; recordingEnded b comp_4 + f Ljava/time/Duration; recordingDuration c comp_5 + f Ljava/time/Duration; worldCreationDuration d comp_6 + f Ljava/util/List; tickTimes e comp_7 + f Ljava/util/List; cpuLoadStats f comp_8 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; heapSummary g comp_9 + f Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; threadAllocationSummary h comp_10 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; receivedPacketsSummary i comp_11 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; sentPacketsSummary j comp_12 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; writtenChunks k comp_2339 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; readChunks l comp_2340 + f Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileWrites m comp_13 + f Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileReads n comp_14 + f Ljava/util/List; chunkGenStats o comp_15 + m ()Ljava/util/List; chunkGenSummary a method_38006 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/time/Duration; method_38007 a method_38007 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38008 a method_38008 + m ()Ljava/lang/String; asJson b method_38009 + m ()Ljava/time/Instant; recordingStarted c comp_3 + m ()Ljava/time/Instant; recordingEnded d comp_4 + m ()Ljava/time/Duration; recordingDuration e comp_5 + m ()Ljava/time/Duration; worldCreationDuration f comp_6 + m ()Ljava/util/List; tickTimes g comp_7 + m ()Ljava/util/List; cpuLoadStats h comp_8 + m ()Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; heapSummary i comp_9 + m ()Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; threadAllocationSummary j comp_10 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; receivedPacketsSummary k comp_11 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; sentPacketsSummary l comp_12 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; writtenChunks m comp_2339 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; readChunks n comp_2340 + m ()Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileWrites o comp_13 + m ()Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileReads p comp_14 + m ()Ljava/util/List; chunkGenStats q comp_15 + m (Ljava/time/Instant;Ljava/time/Instant;Ljava/time/Duration;Ljava/time/Duration;Ljava/util/List;Ljava/util/List;Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;Ljava/util/List;)V +c net/minecraft/util/profiling/jfr/parse/package-info bnw net/minecraft/class_6518 +c net/minecraft/util/profiling/jfr/serialize/JfrResultJsonSerializer bnx net/minecraft/class_6519 + f Lcom/google/gson/Gson; gson a field_34437 + f Ljava/lang/String; BYTES_PER_SECOND b field_34438 + f Ljava/lang/String; COUNT c field_34439 + f Ljava/lang/String; DURATION_NANOS_TOTAL d field_34440 + f Ljava/lang/String; TOTAL_BYTES e field_34441 + f Ljava/lang/String; COUNT_PER_SECOND f field_34442 + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Ljava/lang/String; format a method_38010 + p 1 result + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkGenStat;)Lcom/google/gson/JsonElement; method_38011 a method_38011 + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification;Lcom/google/gson/JsonObject;)V serializeChunkId a method_56983 + p 0 chunkIndentification + p 1 json + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;)Lcom/google/gson/JsonElement; fileIoSummary a method_38012 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary;)Lcom/google/gson/JsonElement; heap a method_38013 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Ljava/util/function/BiConsumer;)Lcom/google/gson/JsonElement; ioSummary a method_38014 + p 1 ioSummary + p 2 serializer + m (Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification;Lcom/google/gson/JsonObject;)V serializePacketId a method_56984 + p 0 packetIdentification + p 1 json + m (Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary;)Lcom/google/gson/JsonElement; threadAllocations a method_38015 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/TickTimeStat;)D method_38664 a method_38664 + m (Lcom/google/gson/JsonArray;Lcom/mojang/datafixers/util/Pair;)V method_38026 a method_38026 + m (Lcom/google/gson/JsonArray;Ljava/lang/String;Ljava/lang/Double;)V method_38017 a method_38017 + m (Lcom/google/gson/JsonArray;Ljava/util/function/BiConsumer;Lcom/mojang/datafixers/util/Pair;)V method_38016 a method_38016 + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonArray;)V method_38018 a method_38018 + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonObject;)V method_38019 a method_38019 + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38020 a method_38020 + m (Lcom/mojang/datafixers/util/Pair;)D method_38021 a method_38021 + m (Ljava/lang/String;Ljava/lang/Double;Lcom/google/gson/JsonObject;)V method_38022 a method_38022 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; chunkGen a method_38023 + p 1 summary + m (Ljava/util/List;Ljava/util/function/ToDoubleFunction;)Lcom/google/gson/JsonObject; method_38024 a method_38024 + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Lcom/google/gson/JsonElement; fileIO b method_38025 + p 1 result + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38027 b method_38027 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; serverTicks b method_38028 + p 1 stats + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Lcom/google/gson/JsonElement; network c method_38029 + p 1 result + m (Ljava/util/List;)Lcom/google/gson/JsonElement; cpu c method_38030 + p 1 stats + m ()V +c net/minecraft/util/profiling/jfr/serialize/package-info bny net/minecraft/class_6520 +c net/minecraft/util/profiling/jfr/stats/ChunkGenStat bnz net/minecraft/class_6521 + f Ljava/time/Duration; duration a comp_16 + f Lnet/minecraft/world/level/ChunkPos; chunkPos b comp_17 + f Lnet/minecraft/server/level/ColumnPos; worldPos c comp_18 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status d comp_19 + f Ljava/lang/String; level e comp_21 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ChunkGenStat; from a method_38031 + p 0 event + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos b comp_17 + m ()Lnet/minecraft/server/level/ColumnPos; worldPos c comp_18 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; status d comp_19 + m ()Ljava/lang/String; level e comp_21 + m (Ljava/time/Duration;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/ColumnPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/lang/String;)V +c net/minecraft/util/profiling/jfr/stats/ChunkIdentification boa net/minecraft/class_9234 + f Ljava/lang/String; level a comp_2341 + f Ljava/lang/String; dimension b comp_2342 + f I x c comp_2343 + f I z d comp_2344 + m ()Ljava/lang/String; level a comp_2341 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification; from a method_56985 + p 0 event + m ()Ljava/lang/String; dimension b comp_2342 + m ()I x c comp_2343 + m ()I z d comp_2344 + m (Ljava/lang/String;Ljava/lang/String;II)V +c net/minecraft/util/profiling/jfr/stats/CpuLoadStat bob net/minecraft/class_6522 + f D jvm a comp_22 + f D userJvm b comp_23 + f D system c comp_24 + m ()D jvm a comp_22 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/CpuLoadStat; from a method_38032 + p 0 event + m ()D userJvm b comp_23 + m ()D system c comp_24 + m (DDD)V +c net/minecraft/util/profiling/jfr/stats/FileIOStat boc net/minecraft/class_6523 + f Ljava/time/Duration; duration a comp_25 + f Ljava/lang/String; path b comp_26 + f J bytes c comp_27 + m ()Ljava/time/Duration; duration a comp_25 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)J method_38033 a method_38033 + m (Ljava/time/Duration;Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; summary a method_38034 + p 0 duration + p 1 stats + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38035 a method_38035 + m ()Ljava/lang/String; path b comp_26 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)Ljava/lang/String; method_38036 b method_38036 + m ()J bytes c comp_27 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)Z method_38037 c method_38037 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)J method_38038 d method_38038 + m (Ljava/time/Duration;Ljava/lang/String;J)V +c net/minecraft/util/profiling/jfr/stats/FileIOStat$Summary boc$a net/minecraft/class_6523$class_6524 + f J totalBytes a comp_28 + f D bytesPerSecond b comp_29 + f J counts c comp_30 + f D countsPerSecond d comp_31 + f Ljava/time/Duration; timeSpentInIO e comp_32 + f Ljava/util/List; topTenContributorsByTotalBytes f comp_33 + m ()J totalBytes a comp_28 + m ()D bytesPerSecond b comp_29 + m ()J counts c comp_30 + m ()D countsPerSecond d comp_31 + m ()Ljava/time/Duration; timeSpentInIO e comp_32 + m ()Ljava/util/List; topTenContributorsByTotalBytes f comp_33 + m (JDJDLjava/time/Duration;Ljava/util/List;)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat bod net/minecraft/class_6525 + f Ljava/time/Instant; timestamp a comp_34 + f J heapUsed b comp_35 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; timing c comp_36 + m ()Ljava/time/Instant; timestamp a comp_34 + m (Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat;)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; method_38039 a method_38039 + m (Ljava/time/Duration;Ljava/util/List;Ljava/time/Duration;I)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; summary a method_38040 + p 0 duration + p 1 stats + p 2 gcTotalDuration + p 3 totalGCs + m (Ljava/util/List;)D calculateAllocationRatePerSecond a method_38041 + p 0 stats + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat; from a method_38042 + p 0 event + m ()J heapUsed b comp_35 + m ()Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; timing c comp_36 + m (Ljava/time/Instant;JLnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing;)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary bod$a net/minecraft/class_6525$class_6526 + f Ljava/time/Duration; duration a comp_37 + f Ljava/time/Duration; gcTotalDuration b comp_38 + f I totalGCs c comp_39 + f D allocationRateBytesPerSecond d comp_40 + m ()F gcOverHead a method_38043 + m ()Ljava/time/Duration; duration b comp_37 + m ()Ljava/time/Duration; gcTotalDuration c comp_38 + m ()I totalGCs d comp_39 + m ()D allocationRateBytesPerSecond e comp_40 + m (Ljava/time/Duration;Ljava/time/Duration;ID)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing bod$b net/minecraft/class_6525$class_6527 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; BEFORE_GC a field_34443 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; AFTER_GC b field_34444 + f [Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; $VALUES c field_34445 + m ()[Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; $values a method_38044 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/profiling/jfr/stats/IoSummary boe net/minecraft/class_6767 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; totalCountAndSize a field_35583 + f Ljava/util/List; largestSizeContributors b field_35584 + f Ljava/time/Duration; recordingDuration c field_35585 + m ()D getCountsPerSecond a method_39438 + m ()D getSizePerSecond b method_39439 + m ()J getTotalCount c method_39440 + m ()J getTotalSize d method_39441 + m ()Ljava/util/List; largestSizeContributors e method_39442 + m (Ljava/time/Duration;Ljava/util/List;)V + p 1 recordingDuration + p 2 entries +c net/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize boe$a net/minecraft/class_6767$class_6768 + f J totalCount a comp_257 + f J totalSize b comp_258 + f Ljava/util/Comparator; SIZE_THEN_COUNT c field_35586 + m ()F averageSize a method_56986 + m (Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize;)Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; add a method_39444 + p 1 countAndSize + m ()J totalCount b comp_257 + m ()J totalSize c comp_258 + m (JJ)V + m ()V +c net/minecraft/util/profiling/jfr/stats/PacketIdentification bof net/minecraft/class_6769 + f Ljava/lang/String; direction a comp_259 + f Ljava/lang/String; protocolId b comp_260 + f Ljava/lang/String; packetId c comp_261 + m ()Ljava/lang/String; direction a comp_259 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification; from a method_39447 + p 0 event + m ()Ljava/lang/String; protocolId b comp_260 + m ()Ljava/lang/String; packetId c comp_261 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/util/profiling/jfr/stats/ThreadAllocationStat bog net/minecraft/class_6530 + f Ljava/time/Instant; timestamp a comp_48 + f Ljava/lang/String; threadName b comp_49 + f J totalBytes c comp_50 + f Ljava/lang/String; UNKNOWN_THREAD d field_34446 + m ()Ljava/time/Instant; timestamp a comp_48 + m (Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat;)Ljava/lang/String; method_38054 a method_38054 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; summary a method_38055 + p 0 stats + m (Ljava/util/Map;Ljava/lang/String;Ljava/util/List;)V method_38056 a method_38056 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat; from a method_38057 + p 0 event + m ()Ljava/lang/String; threadName b comp_49 + m ()J totalBytes c comp_50 + m (Ljava/time/Instant;Ljava/lang/String;J)V +c net/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary bog$a net/minecraft/class_6530$class_6531 + f Ljava/util/Map; allocationsPerSecondByThread a comp_51 + m ()Ljava/util/Map; allocationsPerSecondByThread a comp_51 + m (Ljava/util/Map;)V +c net/minecraft/util/profiling/jfr/stats/TickTimeStat boh net/minecraft/class_6532 + f Ljava/time/Instant; timestamp a comp_52 + f Ljava/time/Duration; currentAverage b comp_53 + m ()Ljava/time/Instant; timestamp a comp_52 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/TickTimeStat; from a method_38058 + p 0 event + m ()Ljava/time/Duration; currentAverage b comp_53 + m (Ljava/time/Instant;Ljava/time/Duration;)V +c net/minecraft/util/profiling/jfr/stats/TimedStat boi net/minecraft/class_6534 + m ()Ljava/time/Duration; duration a comp_16 +c net/minecraft/util/profiling/jfr/stats/TimedStatSummary boj net/minecraft/class_6535 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; fastest a comp_54 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; slowest b comp_55 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; secondSlowest c comp_56 + f I count d comp_57 + f Ljava/util/Map; percentilesNanos e comp_58 + f Ljava/time/Duration; totalDuration f comp_59 + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; fastest a comp_54 + m (Lnet/minecraft/util/profiling/jfr/stats/TimedStat;)J method_38059 a method_38059 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/TimedStatSummary; summary a method_38060 + p 0 stats + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; slowest b comp_55 + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; secondSlowest c comp_56 + m ()I count d comp_57 + m ()Ljava/util/Map; percentilesNanos e comp_58 + m ()Ljava/time/Duration; totalDuration f comp_59 + m (Lnet/minecraft/util/profiling/jfr/stats/TimedStat;Lnet/minecraft/util/profiling/jfr/stats/TimedStat;Lnet/minecraft/util/profiling/jfr/stats/TimedStat;ILjava/util/Map;Ljava/time/Duration;)V +c net/minecraft/util/profiling/jfr/stats/package-info bok net/minecraft/class_6536 +c net/minecraft/util/profiling/metrics/MetricCategory bol net/minecraft/class_5949 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; PATH_FINDING a field_33876 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; EVENT_LOOPS b field_29551 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; MAIL_BOXES c field_29552 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; TICK_LOOP d field_33877 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; JVM e field_33878 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CHUNK_RENDERING f field_33879 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CHUNK_RENDERING_DISPATCHING g field_33880 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CPU h field_33881 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; GPU i field_37416 + f Ljava/lang/String; description j field_29553 + f [Lnet/minecraft/util/profiling/metrics/MetricCategory; $VALUES k field_29554 + m ()Ljava/lang/String; getDescription a method_34700 + m ()[Lnet/minecraft/util/profiling/metrics/MetricCategory; $values b method_36594 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 description + m ()V +c net/minecraft/util/profiling/metrics/MetricSampler bom net/minecraft/class_5965 + f Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest a field_29603 + f Ljava/lang/String; name b field_33882 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; category c field_29598 + f Ljava/util/function/DoubleSupplier; sampler d field_29599 + f Lio/netty/buffer/ByteBuf; ticks e field_33883 + f Lio/netty/buffer/ByteBuf; values f field_29600 + f Z isRunning g field_29601 + f Ljava/lang/Runnable; beforeTick h field_29602 + f D currentValue i field_33884 + m ()V onStartTick a method_34780 + m (I)V onEndTick a method_34781 + p 1 tickTime + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/lang/Object;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/util/profiling/metrics/MetricSampler; create a method_34778 + p 0 name + p 1 category + p 2 context + p 3 sampler + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/DoubleSupplier;)Lnet/minecraft/util/profiling/metrics/MetricSampler; create a method_34776 + p 0 name + p 1 category + p 2 sampler + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; builder a method_34779 + p 0 name + p 1 category + p 2 sampler + p 3 context + m ()V onFinished b method_34782 + m ()Ljava/util/function/DoubleSupplier; getSampler c method_37170 + m ()Ljava/lang/String; getName d method_37171 + m ()Lnet/minecraft/util/profiling/metrics/MetricCategory; getCategory e method_37172 + m ()Lnet/minecraft/util/profiling/metrics/MetricSampler$SamplerResult; result f method_37173 + m ()Z triggersThreshold g method_37174 + m ()V verifyRunning h method_34786 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/DoubleSupplier;Ljava/lang/Runnable;Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest;)V + p 1 name + p 2 category + p 3 sampler + p 4 beforeTick + p 5 thresholdTest +c net/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder bom$a net/minecraft/class_5965$class_5966 + f Ljava/lang/String; name a field_33885 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; category b field_33886 + f Ljava/util/function/DoubleSupplier; sampler c field_29605 + f Ljava/lang/Object; context d field_29606 + f Ljava/lang/Runnable; beforeTick e field_29607 + f Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest f field_29608 + m ()Lnet/minecraft/util/profiling/metrics/MetricSampler; build a method_34787 + m (Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; withThresholdAlert a method_34788 + p 1 thresholdTest + m (Ljava/util/function/Consumer;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; withBeforeTick a method_34789 + p 1 beforeTick + m (Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)D method_34790 a method_34790 + m (Ljava/util/function/Consumer;)V method_34791 b method_34791 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)V + p 1 name + p 2 category + p 3 sampler + p 4 context +c net/minecraft/util/profiling/metrics/MetricSampler$SamplerResult bom$b net/minecraft/class_5965$class_6398 + f Lit/unimi/dsi/fastutil/ints/Int2DoubleMap; recording a field_33887 + f I firstTick b field_33888 + f I lastTick c field_33889 + m ()I getFirstTick a method_37175 + m (I)D valueAtTick a method_37176 + p 1 tick + m ()I getLastTick b method_37177 + m (IILit/unimi/dsi/fastutil/ints/Int2DoubleMap;)V + p 1 firstTick + p 2 lastTick + p 3 recording +c net/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest bom$c net/minecraft/class_5965$class_5967 + m (D)Z test test method_34792 + p 1 value +c net/minecraft/util/profiling/metrics/MetricSampler$ValueIncreasedByPercentage bom$d net/minecraft/class_5965$class_5968 + f F percentageIncreaseThreshold a field_29609 + f D previousValue b field_29611 + m (F)V + p 1 percentageIncreaseThreshold +c net/minecraft/util/profiling/metrics/MetricsRegistry bon net/minecraft/class_5950 + f Lnet/minecraft/util/profiling/metrics/MetricsRegistry; INSTANCE a field_29555 + f Ljava/util/WeakHashMap; measuredInstances b field_29556 + m ()Ljava/util/List; getRegisteredSamplers a method_37178 + m (Lnet/minecraft/util/profiling/metrics/ProfilerMeasured;)V add a method_34702 + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37179 a method_37179 + m (Ljava/util/Map;)Ljava/util/List; aggregateDuplicates a method_37180 + p 0 samplers + m (Lnet/minecraft/util/profiling/metrics/ProfilerMeasured;)Ljava/util/stream/Stream; method_37181 b method_37181 + m ()V + m ()V +c net/minecraft/util/profiling/metrics/MetricsRegistry$AggregatedMetricSampler bon$a net/minecraft/class_5950$class_6399 + f Ljava/util/List; delegates b field_33890 + m (DLnet/minecraft/util/profiling/metrics/MetricSampler;)Z method_37182 a method_37182 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest a method_37183 + p 0 samplers + m (Ljava/util/List;D)Z method_37184 a method_37184 + m (Ljava/util/List;)V beforeTick b method_37185 + p 0 samplers + m (Ljava/util/List;)D averageValueFromDelegates c method_37186 + p 0 samplers + m (Ljava/util/List;)V method_37187 d method_37187 + m (Ljava/util/List;)D method_37188 e method_37188 + m (Ljava/lang/String;Ljava/util/List;)V + p 1 name + p 2 delegates +c net/minecraft/util/profiling/metrics/MetricsSamplerProvider boo net/minecraft/class_6400 + m (Ljava/util/function/Supplier;)Ljava/util/Set; samplers a method_37189 + p 1 profiles +c net/minecraft/util/profiling/metrics/ProfilerMeasured bop net/minecraft/class_5952 + m ()Ljava/util/List; profiledMetrics bw method_34705 +c net/minecraft/util/profiling/metrics/package-info boq net/minecraft/class_6243 +c net/minecraft/util/profiling/metrics/profiling/ActiveMetricsRecorder bor net/minecraft/class_5961 + f I PROFILING_MAX_DURATION_SECONDS a field_32676 + f Ljava/util/function/Consumer; globalOnReportFinished b field_29579 + f Ljava/util/Map; deviationsBySampler c field_33891 + f Lnet/minecraft/util/profiling/ContinuousProfiler; taskProfiler d field_29581 + f Ljava/util/concurrent/Executor; ioExecutor e field_29582 + f Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister; metricsPersister f field_29583 + f Ljava/util/function/Consumer; onProfilingEnd g field_29584 + f Ljava/util/function/Consumer; onReportFinished h field_29585 + f Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider; metricsSamplerProvider i field_33892 + f Ljava/util/function/LongSupplier; wallTimeSource j field_29586 + f J deadlineNano k field_29588 + f I currentTick l field_29589 + f Lnet/minecraft/util/profiling/ProfileCollector; singleTickProfiler m field_29590 + f Z killSwitch n field_29591 + f Ljava/util/Set; thisTickSamplers o field_33893 + m (Lnet/minecraft/util/profiling/ProfileResults;)V scheduleSaveResults a method_34763 + p 1 results + m (Lnet/minecraft/util/profiling/metrics/MetricSampler;)Ljava/util/List; method_37190 a method_37190 + m (Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)Lnet/minecraft/util/profiling/metrics/profiling/ActiveMetricsRecorder; createStarted a method_37191 + p 0 metricsSamplerProvider + p 1 wallTimeSource + p 2 ioExecutor + p 3 metricsPersister + p 4 onProfilerEnd + p 5 onReportFinished + m (Ljava/util/Collection;)V cleanup a method_41319 + p 1 samplers + m (Ljava/util/HashSet;Lnet/minecraft/util/profiling/ProfileResults;)V method_37192 a method_37192 + m (Ljava/util/function/Consumer;)V registerGlobalCompletionCallback a method_35762 + p 0 globalOnReportFinished + m ()V verifyStarted g method_34762 + m ()I method_34765 h method_34765 + m ()Lnet/minecraft/util/profiling/ProfileCollector; method_37193 i method_37193 + m ()I method_34768 j method_34768 + m ()I method_34769 k method_34769 + m (Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 metricsSamplerProvider + p 2 wallTimeSource + p 3 ioExecutor + p 4 metricPersister + p 5 onProfilerEnd + p 6 onReportFinished + m ()V +c net/minecraft/util/profiling/metrics/profiling/InactiveMetricsRecorder bos net/minecraft/class_5963 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; INSTANCE a field_29594 + m ()V + m ()V +c net/minecraft/util/profiling/metrics/profiling/MetricsRecorder bot net/minecraft/class_5962 + m ()V end a method_34770 + m ()V cancel b method_41320 + m ()V startTick c method_34771 + m ()V endTick d method_34772 + m ()Z isRecording e method_34773 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler f method_34774 +c net/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter bou net/minecraft/class_6401 + f Ljava/util/Set; previouslyFoundSamplerNames a field_33894 + m (Ljava/util/function/Supplier;)Ljava/util/Set; newSamplersFoundInProfiler a method_37194 + p 1 profiles + m (Ljava/util/function/Supplier;Ljava/lang/String;)D method_37195 a method_37195 + m (Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;)Lnet/minecraft/util/profiling/metrics/MetricSampler; samplerForProfilingPath a method_37196 + p 0 profiles + p 1 name + p 2 category + m (Ljava/util/function/Supplier;Lorg/apache/commons/lang3/tuple/Pair;)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37197 a method_37197 + m (Lorg/apache/commons/lang3/tuple/Pair;)Z method_37198 a method_37198 + m ()V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider bov net/minecraft/class_6402 + f Lorg/slf4j/Logger; LOGGER a field_33988 + f Ljava/util/Set; samplers b field_33895 + f Lnet/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter; samplerFactory c field_33896 + m ()Ljava/util/Set; runtimeIndependentSamplers a method_37199 + m (Lnet/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats;I)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37200 a method_37200 + m (Lcom/google/common/base/Stopwatch;)D method_37201 a method_37201 + m (Ljava/util/function/LongSupplier;)Lnet/minecraft/util/profiling/metrics/MetricSampler; tickTimeSampler a method_37202 + p 0 timeSource + m ()D method_37203 b method_37203 + m (Lnet/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats;I)D method_37204 b method_37204 + m (Ljava/util/function/LongSupplier;Z)V + p 1 timeSource + p 2 dedicatedServer + m ()V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$1 bov$1 net/minecraft/class_6402$1 + f Ljava/util/function/LongSupplier; val$timeSource a field_29592 + m (Ljava/util/function/LongSupplier;)V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats bov$a net/minecraft/class_6402$class_6403 + f I nrOfCpus a field_33897 + f Loshi/SystemInfo; systemInfo b field_33898 + f Loshi/hardware/CentralProcessor; processor c field_33899 + f [[J previousCpuLoadTick d field_33900 + f [D currentLoad e field_33901 + f J lastPollMs f field_33902 + m (I)D loadForCpu a method_37205 + p 1 index + m ()V +c net/minecraft/util/profiling/metrics/profiling/package-info bow net/minecraft/class_6004 +c net/minecraft/util/profiling/metrics/storage/MetricsPersister box net/minecraft/class_5971 + f Ljava/nio/file/Path; PROFILING_RESULTS_DIR a field_29616 + f Ljava/lang/String; METRICS_DIR_NAME b field_32677 + f Ljava/lang/String; DEVIATIONS_DIR_NAME c field_32678 + f Ljava/lang/String; PROFILING_RESULT_FILENAME d field_32679 + f Lorg/slf4j/Logger; LOGGER e field_29618 + f Ljava/lang/String; rootFolderName f field_33903 + m (I)[Ljava/lang/String; method_37206 a method_37206 + m (ILnet/minecraft/util/profiling/metrics/MetricSampler$SamplerResult;)Ljava/lang/String; method_37207 a method_37207 + m (Lnet/minecraft/util/profiling/ProfileResults;Ljava/nio/file/Path;)V saveProfilingTaskExecutionResult a method_34802 + p 1 results + p 2 outputPath + m (Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/List;Ljava/nio/file/Path;)V saveCategory a method_37208 + p 1 category + p 2 samplers + p 3 path + m (Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/List;)V method_37209 a method_37209 + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricSampler;Lnet/minecraft/util/profiling/metrics/storage/RecordedDeviation;)V method_37210 a method_37210 + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricSampler;Ljava/util/List;)V method_37211 a method_37211 + m (Ljava/util/Map;Ljava/nio/file/Path;)V saveDeviations a method_37212 + p 1 deviations + p 2 path + m (Ljava/util/Set;Ljava/nio/file/Path;)V saveMetrics a method_34803 + p 1 samplers + p 2 path + m (Ljava/util/Set;Ljava/util/Map;Lnet/minecraft/util/profiling/ProfileResults;)Ljava/nio/file/Path; saveReports a method_34807 + p 1 samplers + p 2 deviations + p 3 results + m (Ljava/lang/String;)V + p 1 rootFolderName + m ()V +c net/minecraft/util/profiling/metrics/storage/RecordedDeviation boy net/minecraft/class_5964 + f Ljava/time/Instant; timestamp a field_29595 + f I tick b field_29596 + f Lnet/minecraft/util/profiling/ProfileResults; profilerResultAtTick c field_29597 + m (Ljava/time/Instant;ILnet/minecraft/util/profiling/ProfileResults;)V + p 1 timestamp + p 2 tick + p 3 profilerResultAtTick +c net/minecraft/util/profiling/metrics/storage/package-info boz net/minecraft/class_6245 +c net/minecraft/util/profiling/package-info bpa net/minecraft/class_6003 +c net/minecraft/util/random/SimpleWeightedRandomList bpb net/minecraft/class_6005 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; builder a method_34971 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomValue a method_34973 + p 1 random + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrappedCodecAllowingEmpty a method_39521 + p 0 codec + m (Ljava/lang/Object;)Lnet/minecraft/util/random/SimpleWeightedRandomList; single a method_38061 + p 0 data + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; empty b method_38062 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrappedCodec b method_34972 + p 0 elementCodec + m (Ljava/util/List;)V + p 1 items +c net/minecraft/util/random/SimpleWeightedRandomList$Builder bpb$a net/minecraft/class_6005$class_6006 + f Lcom/google/common/collect/ImmutableList$Builder; result a field_29926 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; build a method_34974 + m (Ljava/lang/Object;)Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; add a method_54453 + p 1 data + m (Ljava/lang/Object;I)Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; add a method_34975 + p 1 data + p 2 weight + m ()V +c net/minecraft/util/random/Weight bpc net/minecraft/class_6007 + f Lcom/mojang/serialization/Codec; CODEC a field_29927 + f Lnet/minecraft/util/random/Weight; ONE b field_29928 + f Lorg/slf4j/Logger; LOGGER c field_29929 + f I value d field_29930 + m ()I asInt a method_34976 + m (I)Lnet/minecraft/util/random/Weight; of a method_34977 + p 0 weight + m (I)V validateWeight b method_34978 + p 0 weight + m (I)V + p 1 weight + m ()V +c net/minecraft/util/random/WeightedEntry bpd net/minecraft/class_6008 + m ()Lnet/minecraft/util/random/Weight; getWeight a method_34979 + m (Ljava/lang/Object;I)Lnet/minecraft/util/random/WeightedEntry$Wrapper; wrap a method_34980 + p 0 data + p 1 weight +c net/minecraft/util/random/WeightedEntry$IntrusiveBase bpd$a net/minecraft/class_6008$class_6009 + f Lnet/minecraft/util/random/Weight; weight a field_29931 + m (I)V + p 1 weight + m (Lnet/minecraft/util/random/Weight;)V + p 1 weight +c net/minecraft/util/random/WeightedEntry$Wrapper bpd$b net/minecraft/class_6008$class_6010 + f Ljava/lang/Object; data a comp_2542 + f Lnet/minecraft/util/random/Weight; weight b comp_2543 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_34981 + p 0 elementCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34982 a method_34982 + m ()Ljava/lang/Object; data b comp_2542 + m ()Lnet/minecraft/util/random/Weight; weight c comp_2543 + m (Ljava/lang/Object;Lnet/minecraft/util/random/Weight;)V + p 1 data + p 2 weight +c net/minecraft/util/random/WeightedRandom bpe net/minecraft/class_6011 + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)Ljava/util/Optional; getRandomItem a method_34986 + p 0 random + p 1 entries + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;I)Ljava/util/Optional; getRandomItem a method_34987 + p 0 random + p 1 entries + p 2 totalWeight + m (Ljava/util/List;)I getTotalWeight a method_34984 + p 0 entries + m (Ljava/util/List;I)Ljava/util/Optional; getWeightedItem a method_34985 + p 0 entries + p 1 weightedIndex + m ()V +c net/minecraft/util/random/WeightedRandomList bpf net/minecraft/class_6012 + f I totalWeight a field_29934 + f Lcom/google/common/collect/ImmutableList; items b field_29935 + m (Ljava/util/List;)Lnet/minecraft/util/random/WeightedRandomList; create a method_34988 + p 0 items + m ([Lnet/minecraft/util/random/WeightedEntry;)Lnet/minecraft/util/random/WeightedRandomList; create a method_34989 + p 0 items + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom b method_34992 + p 1 random + m ()Lnet/minecraft/util/random/WeightedRandomList; create c method_34990 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec c method_34991 + p 0 elementCodec + m ()Z isEmpty d method_34993 + m ()Ljava/util/List; unwrap e method_34994 + m (Ljava/util/List;)V + p 1 items +c net/minecraft/util/random/package-info bpg net/minecraft/class_6013 +c net/minecraft/util/thread/BlockableEventLoop bph net/minecraft/class_1255 + f Ljava/lang/String; name b field_18318 + f Lorg/slf4j/Logger; LOGGER c field_5751 + f Ljava/util/Queue; pendingRunnables d field_5750 + f I blockingCount e field_18319 + m ()V waitForTasks A method_20813 + m ()Z pollTask B method_16075 + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; submitAsync a method_5382 + p 1 task + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; submit a method_5385 + p 1 supplier + m ()Z scheduleExecutables ay method_5384 + m ()Ljava/lang/Thread; getRunningThread az method_3777 + m (Ljava/lang/Runnable;)Ljava/lang/Void; method_5386 b method_5386 + m (Ljava/util/function/BooleanSupplier;)V managedBlock b method_18857 + c Drive the executor until the given BooleanSupplier returns true + p 1 isDone + m ()V dropAllTasks bA method_18855 + m ()V runAllTasks bB method_5383 + m ()Z isSameThread bx method_18854 + m ()I getPendingTasksCount by method_21684 + m (Ljava/lang/Runnable;)V executeIfPossible c method_40000 + p 1 task + m (Ljava/lang/Runnable;)V doRunTask d method_18859 + p 1 task + m (Ljava/lang/Runnable;)Z shouldRun e method_18856 + p 1 runnable + m (Ljava/lang/Runnable;)Ljava/lang/Runnable; wrapRunnable f method_16211 + p 1 runnable + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; submit g method_20493 + p 1 task + m (Ljava/lang/Runnable;)V executeBlocking h method_19537 + p 1 task + m (Ljava/lang/Runnable;)V tell i method_18858 + p 1 task + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/util/thread/NamedThreadFactory bpi net/minecraft/class_6014 + f Lorg/slf4j/Logger; LOGGER a field_29936 + f Ljava/lang/ThreadGroup; group b field_29937 + f Ljava/util/concurrent/atomic/AtomicInteger; threadNumber c field_29938 + f Ljava/lang/String; namePrefix d field_29939 + m (Ljava/lang/Runnable;Ljava/lang/Thread;Ljava/lang/Throwable;)V method_34995 a method_34995 + m (Ljava/lang/String;)V + p 1 namePrefix + m ()V +c net/minecraft/util/thread/ProcessorHandle bpj net/minecraft/class_3906 + m (Ljava/lang/Object;)V tell a method_16901 + p 1 task + m (Ljava/lang/String;Ljava/util/function/Consumer;)Lnet/minecraft/util/thread/ProcessorHandle; of a method_17344 + p 0 name + p 1 task + m (Ljava/util/concurrent/CompletableFuture;Lcom/mojang/datafixers/util/Either;)V method_27917 a method_27917 + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; ask b method_17345 + p 1 task + m ()Ljava/lang/String; name bz method_16898 + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; askEither c method_27918 + p 1 task +c net/minecraft/util/thread/ProcessorHandle$1 bpj$1 net/minecraft/class_3906$1 + f Ljava/lang/String; val$name a field_17276 + f Ljava/util/function/Consumer; val$tell b field_17277 + m (Ljava/lang/String;Ljava/util/function/Consumer;)V +c net/minecraft/util/thread/ProcessorMailbox bpk net/minecraft/class_3846 + f Lorg/slf4j/Logger; LOGGER a field_17040 + f I CLOSED_BIT b field_29940 + f I SCHEDULED_BIT c field_29941 + f Ljava/util/concurrent/atomic/AtomicInteger; status d field_17041 + f Lnet/minecraft/util/thread/StrictQueue; queue e field_17039 + f Ljava/util/concurrent/Executor; dispatcher f field_17042 + f Ljava/lang/String; name g field_17043 + m ()V runAll a method_37477 + m (I)Z method_37478 a method_37478 + m (Lit/unimi/dsi/fastutil/ints/Int2BooleanFunction;)I pollUntil a method_16900 + p 1 continuePolling + m (Ljava/util/concurrent/Executor;Ljava/lang/String;)Lnet/minecraft/util/thread/ProcessorMailbox; create a method_16902 + p 0 dispatcher + p 1 name + m ()I size b method_34996 + m (I)Z method_16899 b method_16899 + m ()Z hasWork c method_40001 + m ()Z setAsScheduled d method_16903 + m ()V setAsIdle e method_16904 + m ()Z canBeScheduled f method_16905 + m ()Z shouldProcess g method_16906 + m ()Z pollTask h method_16907 + m ()V registerForExecution i method_16908 + m (Lnet/minecraft/util/thread/StrictQueue;Ljava/util/concurrent/Executor;Ljava/lang/String;)V + p 1 queue + p 2 dispatcher + p 3 name + m ()V +c net/minecraft/util/thread/ReentrantBlockableEventLoop bpl net/minecraft/class_4093 + f I reentrantCount b field_18320 + m ()Z runningTask bC method_18860 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/util/thread/StrictQueue bpm net/minecraft/class_3847 + m ()Ljava/lang/Object; pop a method_16909 + m (Ljava/lang/Object;)Z push a method_16910 + p 1 value + m ()Z isEmpty b method_16911 + m ()I size c method_34706 +c net/minecraft/util/thread/StrictQueue$FixedPriorityQueue bpm$a net/minecraft/class_3847$class_3848 + f [Ljava/util/Queue; queues a field_35032 + f Ljava/util/concurrent/atomic/AtomicInteger; size b field_35033 + m (Lnet/minecraft/util/thread/StrictQueue$IntRunnable;)Z push a method_16913 + p 1 value + m ()Ljava/lang/Runnable; pop d method_17346 + m (I)V + p 1 size +c net/minecraft/util/thread/StrictQueue$IntRunnable bpm$b net/minecraft/class_3847$class_3907 + f I priority a field_17278 + f Ljava/lang/Runnable; task b field_17279 + m ()I getPriority a method_17347 + m (ILjava/lang/Runnable;)V + p 1 priority + p 2 task +c net/minecraft/util/thread/StrictQueue$QueueStrictQueue bpm$c net/minecraft/class_3847$class_3849 + f Ljava/util/Queue; queue a field_17045 + m (Ljava/util/Queue;)V + p 1 queue +c net/minecraft/util/thread/package-info bpn net/minecraft/class_6015 +c net/minecraft/util/valueproviders/BiasedToBottomInt bpo net/minecraft/class_6333 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33443 + f I minInclusive b field_33444 + f I maxInclusive f field_33445 + m (II)Lnet/minecraft/util/valueproviders/BiasedToBottomInt; of a method_36249 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Lcom/mojang/serialization/DataResult; method_36250 a method_36250 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36251 a method_36251 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/String; method_49464 b method_49464 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/Integer; method_36252 c method_36252 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/Integer; method_36253 d method_36253 + m (II)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ClampedInt bpp net/minecraft/class_6334 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33446 + f Lnet/minecraft/util/valueproviders/IntProvider; source b field_33447 + f I minInclusive f field_33448 + f I maxInclusive g field_33449 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Lcom/mojang/serialization/DataResult; method_36254 a method_36254 + m (Lnet/minecraft/util/valueproviders/IntProvider;II)Lnet/minecraft/util/valueproviders/ClampedInt; of a method_36255 + p 0 source + p 1 minInclusive + p 2 maxInclusive + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36256 a method_36256 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/String; method_49465 b method_49465 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/Integer; method_36257 c method_36257 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/Integer; method_36258 d method_36258 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Lnet/minecraft/util/valueproviders/IntProvider; method_36259 e method_36259 + m (Lnet/minecraft/util/valueproviders/IntProvider;II)V + p 1 source + p 2 minInclusive + p 3 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ClampedNormalFloat bpq net/minecraft/class_5861 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28998 + f F mean b field_28999 + f F deviation d field_29000 + f F min e field_29001 + f F max f field_29002 + m (FFFF)Lnet/minecraft/util/valueproviders/ClampedNormalFloat; of a method_33900 + p 0 mean + p 1 deviation + p 2 min + p 3 max + m (Lnet/minecraft/util/RandomSource;FFFF)F sample a method_33903 + p 0 random + p 1 mean + p 2 deviation + p 3 min + p 4 max + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Lcom/mojang/serialization/DataResult; method_33901 a method_33901 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33902 a method_33902 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/String; method_49466 b method_49466 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33904 c method_33904 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33905 d method_33905 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33906 e method_33906 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33907 f method_33907 + m (FFFF)V + p 1 mean + p 2 deviation + p 3 min + p 4 max + m ()V +c net/minecraft/util/valueproviders/ClampedNormalInt bpr net/minecraft/class_6728 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35352 + f F mean b field_35353 + f F deviation f field_35354 + f I minInclusive g field_35355 + f I maxInclusive h field_35356 + m (FFII)Lnet/minecraft/util/valueproviders/ClampedNormalInt; of a method_39156 + p 0 mean + p 1 deviation + p 2 minInclusive + p 3 maxInclusive + m (Lnet/minecraft/util/RandomSource;FFFF)I sample a method_39159 + p 0 random + p 1 mean + p 2 deviation + p 3 minInclusive + p 4 maxInclusive + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Lcom/mojang/serialization/DataResult; method_39157 a method_39157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39158 a method_39158 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/String; method_49467 b method_49467 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Integer; method_39160 c method_39160 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Integer; method_39161 d method_39161 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Float; method_39162 e method_39162 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Float; method_39163 f method_39163 + m (FFII)V + p 1 mean + p 2 deviation + p 3 minInclusive + p 4 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ConstantFloat bps net/minecraft/class_5862 + f Lnet/minecraft/util/valueproviders/ConstantFloat; ZERO a field_29003 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29004 + f F value d field_29005 + m (F)Lnet/minecraft/util/valueproviders/ConstantFloat; of a method_33908 + p 0 value + m ()F getValue d method_33914 + m (F)V + p 1 value + m ()V +c net/minecraft/util/valueproviders/ConstantInt bpt net/minecraft/class_6016 + f Lnet/minecraft/util/valueproviders/ConstantInt; ZERO a field_29942 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29943 + f I value f field_29944 + m (I)Lnet/minecraft/util/valueproviders/ConstantInt; of a method_34998 + p 0 value + m ()I getValue d method_34997 + m (I)V + p 1 value + m ()V +c net/minecraft/util/valueproviders/FloatProvider bpu net/minecraft/class_5863 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_29006 + f Lcom/mojang/serialization/Codec; CODEC c field_29007 + m ()F getMinValue a method_33915 + m (FF)Lcom/mojang/serialization/Codec; codec a method_33916 + c Creates a codec for a FloatProvider that only accepts numbers in the given range. + p 0 minInclusive + p 1 maxInclusive + m (FFLnet/minecraft/util/valueproviders/FloatProvider;)Lcom/mojang/serialization/DataResult; method_33917 a method_33917 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)Ljava/lang/String; method_49468 a method_49468 + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lcom/mojang/datafixers/util/Either; method_33918 a method_33918 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33919 a method_33919 + m ()F getMaxValue b method_33921 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)Ljava/lang/String; method_49469 b method_49469 + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33922 b method_33922 + m ()Lnet/minecraft/util/valueproviders/FloatProviderType; getType c method_33923 + m ()V + m ()V +c net/minecraft/util/valueproviders/FloatProviderType bpv net/minecraft/class_5864 + f Lnet/minecraft/util/valueproviders/FloatProviderType; CONSTANT a field_29008 + f Lnet/minecraft/util/valueproviders/FloatProviderType; UNIFORM b field_29009 + f Lnet/minecraft/util/valueproviders/FloatProviderType; CLAMPED_NORMAL c field_29010 + f Lnet/minecraft/util/valueproviders/FloatProviderType; TRAPEZOID d field_29011 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_33924 a method_33924 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/valueproviders/FloatProviderType; register a method_33925 + p 0 name + p 1 codec + m ()V +c net/minecraft/util/valueproviders/IntProvider bpw net/minecraft/class_6017 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_29945 + f Lcom/mojang/serialization/Codec; CODEC c field_29946 + f Lcom/mojang/serialization/Codec; NON_NEGATIVE_CODEC d field_33450 + f Lcom/mojang/serialization/Codec; POSITIVE_CODEC e field_33451 + m ()I getMinValue a method_35009 + m (IILnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/serialization/DataResult; validate a method_58612 + p 0 min + p 1 max + p 2 provider + m (IILcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; validateCodec a method_49103 + p 0 min + p 1 max + p 2 codec + m (ILnet/minecraft/util/valueproviders/IntProvider;)Ljava/lang/String; method_49470 a method_49470 + m (Lnet/minecraft/util/RandomSource;)I sample a method_35008 + p 1 random + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/datafixers/util/Either; method_35006 a method_35006 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/valueproviders/IntProvider; method_35007 a method_35007 + m ()I getMaxValue b method_35011 + m (II)Lcom/mojang/serialization/Codec; codec b method_35004 + c Creates a codec for an IntProvider that only accepts numbers in the given range. + p 0 minInclusive + p 1 maxInclusive + m (IILnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/serialization/DataResult; method_35005 b method_35005 + m (ILnet/minecraft/util/valueproviders/IntProvider;)Ljava/lang/String; method_49471 b method_49471 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/util/valueproviders/IntProvider; method_35010 b method_35010 + m ()Lnet/minecraft/util/valueproviders/IntProviderType; getType c method_35012 + m ()V + m ()V +c net/minecraft/util/valueproviders/IntProviderType bpx net/minecraft/class_6018 + f Lnet/minecraft/util/valueproviders/IntProviderType; CONSTANT a field_29947 + f Lnet/minecraft/util/valueproviders/IntProviderType; UNIFORM b field_29948 + f Lnet/minecraft/util/valueproviders/IntProviderType; BIASED_TO_BOTTOM c field_33452 + f Lnet/minecraft/util/valueproviders/IntProviderType; CLAMPED d field_33453 + f Lnet/minecraft/util/valueproviders/IntProviderType; WEIGHTED_LIST e field_35034 + f Lnet/minecraft/util/valueproviders/IntProviderType; CLAMPED_NORMAL f field_35357 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_35013 a method_35013 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/valueproviders/IntProviderType; register a method_35014 + p 0 name + p 1 codec + m ()V +c net/minecraft/util/valueproviders/MultipliedFloats bpy net/minecraft/class_7372 + f [Lnet/minecraft/util/valueproviders/SampledFloat; values a field_38707 + m ([Lnet/minecraft/util/valueproviders/SampledFloat;)V + p 1 values +c net/minecraft/util/valueproviders/SampledFloat bpz net/minecraft/class_7373 + m (Lnet/minecraft/util/RandomSource;)F sample a method_33920 + p 1 random +c net/minecraft/util/valueproviders/TrapezoidFloat bqa net/minecraft/class_5865 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29012 + f F min b field_29013 + f F max d field_29014 + f F plateau e field_29015 + m (FFF)Lnet/minecraft/util/valueproviders/TrapezoidFloat; of a method_33926 + p 0 min + p 1 max + p 2 plateau + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Lcom/mojang/serialization/DataResult; method_33927 a method_33927 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33928 a method_33928 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/String; method_49472 b method_49472 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/String; method_49473 c method_49473 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33929 d method_33929 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33930 e method_33930 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33931 f method_33931 + m (FFF)V + p 1 min + p 2 max + p 3 plateau + m ()V +c net/minecraft/util/valueproviders/UniformFloat bqb net/minecraft/class_5866 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29016 + f F minInclusive b field_29017 + f F maxExclusive d field_29018 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Lcom/mojang/serialization/DataResult; method_33932 a method_33932 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33933 a method_33933 + m (FF)Lnet/minecraft/util/valueproviders/UniformFloat; of b method_33934 + p 0 minInclusive + p 1 maxExclusive + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/String; method_49474 b method_49474 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/Float; method_33935 c method_33935 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/Float; method_33936 d method_33936 + m (FF)V + p 1 minInclusive + p 2 maxExclusive + m ()V +c net/minecraft/util/valueproviders/UniformInt bqc net/minecraft/class_6019 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29949 + f I minInclusive b field_29950 + f I maxInclusive f field_29951 + m (II)Lnet/minecraft/util/valueproviders/UniformInt; of a method_35017 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/util/valueproviders/UniformInt;)Lcom/mojang/serialization/DataResult; method_35015 a method_35015 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35016 a method_35016 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/String; method_49475 b method_49475 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/Integer; method_35018 c method_35018 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/Integer; method_35019 d method_35019 + m (II)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/util/valueproviders/WeightedListInt bqd net/minecraft/class_6642 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35035 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; distribution b field_35036 + f I minValue f field_35037 + f I maxValue g field_35038 + m (Lnet/minecraft/util/valueproviders/WeightedListInt;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_38844 a method_38844 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38845 a method_38845 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 distribution + m ()V +c net/minecraft/util/valueproviders/package-info bqe net/minecraft/class_6020 +c net/minecraft/util/worldupdate/WorldUpgrader bqf net/minecraft/class_1257 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; overworldDataStorage A field_5755 + f Lorg/slf4j/Logger; LOGGER a field_5756 + f Ljava/util/concurrent/ThreadFactory; THREAD_FACTORY b field_5757 + f Ljava/lang/String; NEW_DIRECTORY_PREFIX c field_48723 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_POI d field_48724 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_POI e field_48725 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_ENTITIES f field_48726 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_ENTITIES g field_48727 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_CHUNKS h field_48728 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_CHUNKS i field_48729 + f Lnet/minecraft/core/Registry; dimensions j field_40113 + f Ljava/util/Set; levels k field_40114 + f Z eraseCache l field_19225 + f Z recreateRegionFiles m field_48730 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; levelStorage n field_24083 + f Ljava/lang/Thread; thread o field_5767 + f Lcom/mojang/datafixers/DataFixer; dataFixer p field_24084 + f Z running q field_5760 + f Z finished r field_5759 + f F progress s field_5763 + f I totalChunks t field_5768 + f I totalFiles u field_48731 + f I converted v field_5766 + f I skipped w field_5764 + f Lit/unimi/dsi/fastutil/objects/Reference2FloatMap; progressMap x field_5762 + f Lnet/minecraft/network/chat/Component; status y field_5765 + f Ljava/util/regex/Pattern; REGEX z field_17622 + m ()V cancel a method_5402 + m (Lnet/minecraft/resources/ResourceKey;)F dimensionProgress a method_5393 + p 1 level + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_5398 a method_5398 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; resolveRecreateDirectory a method_56987 + p 0 path + m ()Z isFinished b method_5403 + m ()Ljava/util/Set; levels c method_28304 + m ()F getProgress d method_5401 + m ()I getTotalChunks e method_5397 + m ()I getConverted f method_5400 + m ()I getSkipped g method_5399 + m ()Lnet/minecraft/network/chat/Component; getStatus h method_5394 + m ()V work i method_5404 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/RegistryAccess;ZZ)V + p 1 levelStorage + p 2 dataFixer + p 3 registryAccess + p 4 eraseCache + p 5 recreateRegionFiles + m ()V +c net/minecraft/util/worldupdate/WorldUpgrader$AbstractUpgrader bqf$a net/minecraft/class_1257$class_9161 + f Ljava/util/concurrent/CompletableFuture; previousWriteFuture a field_48732 + f Lnet/minecraft/util/datafix/DataFixTypes; dataFixType b field_48733 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48734 c field_48734 + f Lnet/minecraft/network/chat/MutableComponent; upgradingStatus d field_48735 + f Lnet/minecraft/network/chat/MutableComponent; finishedStatus e field_48736 + f Ljava/lang/String; type f field_49072 + f Ljava/lang/String; folderName g field_48737 + m ()V upgrade a method_56537 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/AutoCloseable;Lnet/minecraft/world/level/ChunkPos;)Z processOnePosition a method_56538 + p 1 dimesion + p 2 storage + p 3 chunkPos + m (Lnet/minecraft/util/worldupdate/WorldUpgrader$FileToUpgrade;)I method_56540 a method_56540 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;)V onFileFinished a method_56541 + p 1 regionFile + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/lang/AutoCloseable; createStorage a method_56546 + p 1 regionStorageInfo + p 2 path + m (Ljava/io/File;Ljava/lang/String;)Z method_56542 a method_56542 + m (Ljava/lang/AutoCloseable;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56543 + p 1 chunkStorage + p 2 chunkPos + p 3 dimension + m ()Ljava/util/List; getDimensionsToUpgrade b method_56544 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/ListIterator; getFilesToProcess b method_56545 + p 1 regionStorageInfo + p 2 path + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/List; getAllChunkPositions c method_56539 + p 0 regionStorageInfo + p 1 path + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)V + p 2 dataFixType + p 3 type + p 4 folderName + p 5 upgradingStatus + p 6 finishedStatus +c net/minecraft/util/worldupdate/WorldUpgrader$ChunkUpgrader bqf$b net/minecraft/class_1257$class_9162 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48738 d field_48738 + m (Lnet/minecraft/world/level/chunk/storage/ChunkStorage;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56547 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; method_56548 b method_56548 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Lnet/minecraft/world/level/chunk/storage/ChunkStorage; createStorage b method_56549 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$DimensionToUpgrade bqf$c net/minecraft/class_1257$class_9163 + f Lnet/minecraft/resources/ResourceKey; dimensionKey a comp_2248 + f Ljava/lang/Object; storage b comp_2249 + f Ljava/util/ListIterator; files c comp_2250 + m ()Lnet/minecraft/resources/ResourceKey; dimensionKey a comp_2248 + m ()Ljava/lang/Object; storage b comp_2249 + m ()Ljava/util/ListIterator; files c comp_2250 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Ljava/util/ListIterator;)V +c net/minecraft/util/worldupdate/WorldUpgrader$EntityUpgrader bqf$d net/minecraft/class_1257$class_9164 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$FileToUpgrade bqf$e net/minecraft/class_1257$class_9165 + f Lnet/minecraft/world/level/chunk/storage/RegionFile; file a comp_2251 + f Ljava/util/List; chunksToUpgrade b comp_2252 + m ()Lnet/minecraft/world/level/chunk/storage/RegionFile; file a comp_2251 + m ()Ljava/util/List; chunksToUpgrade b comp_2252 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;Ljava/util/List;)V +c net/minecraft/util/worldupdate/WorldUpgrader$PoiUpgrader bqf$f net/minecraft/class_1257$class_9166 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$SimpleRegionStorageUpgrader bqf$g net/minecraft/class_1257$class_9167 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48741 d field_48741 + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56551 + p 1 chunkStorage + p 2 chunkPos + p 3 dimension + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; upgradeTag a method_56550 + p 1 regionStorage + p 2 chunkTag + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; createStorage b method_56552 + p 1 regionStorageInfo + p 2 path + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)V + p 2 dataFixType + p 3 type + p 4 upgradingStatus + p 5 finishedStatus +c net/minecraft/util/worldupdate/package-info bqg net/minecraft/class_6021 +c net/minecraft/world/BossEvent bqh net/minecraft/class_1259 + f Lnet/minecraft/network/chat/Component; name a field_5777 + f F progress b field_5774 + f Lnet/minecraft/world/BossEvent$BossBarColor; color c field_5778 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay d field_5779 + f Z darkenScreen e field_5776 + f Z playBossMusic f field_5775 + f Z createWorldFog g field_5773 + f Ljava/util/UUID; id h field_5772 + m (F)V setProgress a method_5408 + p 1 progress + m (Lnet/minecraft/world/BossEvent$BossBarColor;)V setColor a method_5416 + p 1 color + m (Lnet/minecraft/world/BossEvent$BossBarOverlay;)V setOverlay a method_5409 + p 1 overlay + m (Lnet/minecraft/network/chat/Component;)V setName a method_5413 + p 1 name + m (Z)Lnet/minecraft/world/BossEvent; setDarkenScreen a method_5406 + p 1 darkenSky + m (Z)Lnet/minecraft/world/BossEvent; setPlayBossMusic b method_5410 + p 1 playEndBossMusic + m (Z)Lnet/minecraft/world/BossEvent; setCreateWorldFog c method_5411 + p 1 createFog + m ()Ljava/util/UUID; getId h method_5407 + m ()Lnet/minecraft/network/chat/Component; getName i method_5414 + m ()F getProgress j method_5412 + m ()Lnet/minecraft/world/BossEvent$BossBarColor; getColor k method_5420 + m ()Lnet/minecraft/world/BossEvent$BossBarOverlay; getOverlay l method_5415 + m ()Z shouldDarkenScreen m method_5417 + m ()Z shouldPlayBossMusic n method_5418 + m ()Z shouldCreateWorldFog o method_5419 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 id + p 2 name + p 3 color + p 4 overlay +c net/minecraft/world/BossEvent$BossBarColor bqh$a net/minecraft/class_1259$class_1260 + f Lnet/minecraft/world/BossEvent$BossBarColor; PINK a field_5788 + f Lnet/minecraft/world/BossEvent$BossBarColor; BLUE b field_5780 + f Lnet/minecraft/world/BossEvent$BossBarColor; RED c field_5784 + f Lnet/minecraft/world/BossEvent$BossBarColor; GREEN d field_5785 + f Lnet/minecraft/world/BossEvent$BossBarColor; YELLOW e field_5782 + f Lnet/minecraft/world/BossEvent$BossBarColor; PURPLE f field_5783 + f Lnet/minecraft/world/BossEvent$BossBarColor; WHITE g field_5786 + f Ljava/lang/String; name h field_5781 + f Lnet/minecraft/ChatFormatting; formatting i field_5787 + f [Lnet/minecraft/world/BossEvent$BossBarColor; $VALUES j field_5789 + m ()Lnet/minecraft/ChatFormatting; getFormatting a method_5423 + m (Ljava/lang/String;)Lnet/minecraft/world/BossEvent$BossBarColor; byName a method_5422 + p 0 name + m ()Ljava/lang/String; getName b method_5421 + m ()[Lnet/minecraft/world/BossEvent$BossBarColor; $values c method_36595 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 name + p 4 formatting + m ()V +c net/minecraft/world/BossEvent$BossBarOverlay bqh$b net/minecraft/class_1259$class_1261 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; PROGRESS a field_5795 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_6 b field_5796 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_10 c field_5791 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_12 d field_5793 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_20 e field_5790 + f Ljava/lang/String; name f field_5794 + f [Lnet/minecraft/world/BossEvent$BossBarOverlay; $VALUES g field_5792 + m ()Ljava/lang/String; getName a method_5425 + m (Ljava/lang/String;)Lnet/minecraft/world/BossEvent$BossBarOverlay; byName a method_5424 + p 0 name + m ()[Lnet/minecraft/world/BossEvent$BossBarOverlay; $values b method_36596 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/Clearable bqi net/minecraft/class_3829 + m ()V clearContent a method_5448 + m (Ljava/lang/Object;)V tryClear a_ method_16825 + p 0 object +c net/minecraft/world/CompoundContainer bqj net/minecraft/class_1258 + f Lnet/minecraft/world/Container; container1 b field_5769 + f Lnet/minecraft/world/Container; container2 c field_5771 + m (Lnet/minecraft/world/Container;)Z contains a method_5405 + c Return whether the given inventory is part of this large chest. + p 1 inventory + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;)V + p 1 container1 + p 2 container2 +c net/minecraft/world/Container bqk net/minecraft/class_1263 + f F DEFAULT_DISTANCE_BUFFER p_ field_48319 + m (I)Lnet/minecraft/world/item/ItemStack; getItem a method_5438 + c Returns the stack in the given slot. + p 1 slot + m (II)Lnet/minecraft/world/item/ItemStack; removeItem a method_5434 + c Removes up to a specified number of items from an inventory slot and returns them in a new stack. + p 1 slot + p 2 amount + m (ILnet/minecraft/world/item/ItemStack;)V setItem a method_5447 + c Sets the given item stack to the specified slot in the inventory (can be crafting or armor sections). + p 1 slot + p 2 stack + m (Lnet/minecraft/world/Container;ILnet/minecraft/world/item/ItemStack;)Z canTakeItem a method_49104 + c {@return {@code true} if the given stack can be extracted into the target inventory} + p 1 target + c the container into which the item should be extracted + p 2 slot + c the slot from which to extract the item + p 3 stack + c the item to extract + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid a method_5443 + c Don't rename this method to canInteractWith due to conflicts with Container + p 1 player + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/player/Player;)Z stillValidBlockEntity a method_49105 + p 0 blockEntity + p 1 player + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/player/Player;F)Z stillValidBlockEntity a method_49106 + p 0 blockEntity + p 1 player + p 2 distance + m (Ljava/util/Set;)Z hasAnyOf a method_18862 + c Returns {@code true} if any item from the passed set exists in this inventory. + p 1 set + m (Ljava/util/Set;Lnet/minecraft/world/item/ItemStack;)Z method_43255 a method_43255 + m (Lnet/minecraft/world/item/Item;)I countItem a_ method_18861 + c Returns the total amount of the specified item in this inventory. This method does not check for nbt. + p 1 item + m (Ljava/util/function/Predicate;)Z hasAnyMatching a_ method_43256 + p 1 predicate + m ()I getMaxStackSize al_ method_5444 + c Returns the maximum stack size for an inventory slot. Seems to always be 64, possibly will be extended. + m ()I getContainerSize b method_5439 + c Returns the number of slots in the inventory. + m (I)Lnet/minecraft/world/item/ItemStack; removeItemNoUpdate b method_5441 + c Removes a stack from the given slot and returns it. + p 1 slot + m (ILnet/minecraft/world/item/ItemStack;)Z canPlaceItem b method_5437 + c Returns {@code true} if automation is allowed to insert the given stack (ignoring stack size) into the given slot. For guis use Slot.isItemValid + p 1 slot + p 2 stack + m ()Z isEmpty c method_5442 + m (Lnet/minecraft/world/entity/player/Player;)V stopOpen c method_5432 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)V startOpen d_ method_5435 + p 1 player + m ()V setChanged e method_5431 + c For block entities, ensures the chunk containing the block entity is saved to disk later - the game won't think it hasn't changed and skip it. + m (Lnet/minecraft/world/item/ItemStack;)I getMaxStackSize e_ method_58350 + p 1 stack +c net/minecraft/world/ContainerHelper bql net/minecraft/class_1262 + f Ljava/lang/String; TAG_ITEMS a field_49719 + m (Lnet/minecraft/world/Container;Ljava/util/function/Predicate;IZ)I clearOrCountMatchingItems a method_29234 + c Clears items from the inventory matching a predicate.\n@return The amount of items cleared + p 0 container + p 1 itemPredicate + p 2 maxItems + c The maximum amount of items to be cleared. A negative value means unlimited and 0 means count how many items are found that could be cleared. + p 3 simulate + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;IZ)I clearOrCountMatchingItems a method_29235 + p 0 stack + p 1 itemPredicate + p 2 maxItems + p 3 simulate + m (Ljava/util/List;I)Lnet/minecraft/world/item/ItemStack; takeItem a method_5428 + p 0 stacks + p 1 index + m (Ljava/util/List;II)Lnet/minecraft/world/item/ItemStack; removeItem a method_5430 + p 0 stacks + p 1 index + p 2 amount + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveAllItems a method_5426 + p 0 tag + p 1 items + p 2 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;ZLnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveAllItems a method_5427 + p 0 tag + p 1 items + p 2 alwaysPutTag + p 3 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/HolderLookup$Provider;)V loadAllItems b method_5429 + p 0 tag + p 1 items + p 2 levelRegistry + m ()V +c net/minecraft/world/ContainerListener bqm net/minecraft/class_1265 + m (Lnet/minecraft/world/Container;)V containerChanged a method_5453 + c Called by {@code InventoryBasic.onInventoryChanged()} on an array that is never filled. + p 1 container +c net/minecraft/world/Containers bqn net/minecraft/class_1264 + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/Container;)V dropContents a method_5450 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 inventory + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V dropItemStack a method_5449 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/Container;)V dropContents a method_5452 + p 0 level + p 1 entityAt + p 2 inventory + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/Container;)V dropContents a method_5451 + p 0 level + p 1 pos + p 2 inventory + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_17348 a method_17348 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/NonNullList;)V dropContents a method_17349 + p 0 level + p 1 pos + p 2 stackList + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropContentsOnDestroy a method_54291 + p 0 state + p 1 newState + p 2 level + p 3 pos + m ()V +c net/minecraft/world/Difficulty bqo net/minecraft/class_1267 + f Lnet/minecraft/world/Difficulty; PEACEFUL a field_5801 + f Lnet/minecraft/world/Difficulty; EASY b field_5805 + f Lnet/minecraft/world/Difficulty; NORMAL c field_5802 + f Lnet/minecraft/world/Difficulty; HARD d field_5807 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_41668 + f Ljava/util/function/IntFunction; BY_ID f field_5800 + f I id g field_5803 + f Ljava/lang/String; key h field_5806 + f [Lnet/minecraft/world/Difficulty; $VALUES i field_5804 + m ()I getId a method_5461 + m (I)Lnet/minecraft/world/Difficulty; byId a method_5462 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/world/Difficulty; byName a method_16691 + p 0 name + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_5463 + m ()Lnet/minecraft/network/chat/Component; getInfo d method_48556 + m ()Ljava/lang/String; getKey e method_5460 + m ()[Lnet/minecraft/world/Difficulty; $values f method_36597 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/world/DifficultyInstance bqp net/minecraft/class_1266 + f F DIFFICULTY_TIME_GLOBAL_OFFSET a field_29953 + f F MAX_DIFFICULTY_TIME_GLOBAL b field_29954 + f F MAX_DIFFICULTY_TIME_LOCAL c field_29955 + f Lnet/minecraft/world/Difficulty; base d field_5798 + f F effectiveDifficulty e field_5799 + m ()Lnet/minecraft/world/Difficulty; getDifficulty a method_5454 + m (F)Z isHarderThan a method_5455 + p 1 difficulty + m (Lnet/minecraft/world/Difficulty;JJF)F calculateDifficulty a method_5456 + p 1 difficulty + p 2 levelTime + p 4 chunkInhabitedTime + p 6 moonPhaseFactor + m ()F getEffectiveDifficulty b method_5457 + m ()Z isHard c method_35020 + m ()F getSpecialMultiplier d method_5458 + m (Lnet/minecraft/world/Difficulty;JJF)V + p 1 base + p 2 levelTime + p 4 chunkInhabitedTime + p 6 moonPhaseFactor +c net/minecraft/world/InteractionHand bqq net/minecraft/class_1268 + f Lnet/minecraft/world/InteractionHand; MAIN_HAND a field_5808 + f Lnet/minecraft/world/InteractionHand; OFF_HAND b field_5810 + f [Lnet/minecraft/world/InteractionHand; $VALUES c field_5809 + m ()[Lnet/minecraft/world/InteractionHand; $values a method_36598 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/InteractionResult bqr net/minecraft/class_1269 + f Lnet/minecraft/world/InteractionResult; SUCCESS a field_5812 + f Lnet/minecraft/world/InteractionResult; SUCCESS_NO_ITEM_USED b field_51370 + f Lnet/minecraft/world/InteractionResult; CONSUME c field_21466 + f Lnet/minecraft/world/InteractionResult; CONSUME_PARTIAL d field_33562 + f Lnet/minecraft/world/InteractionResult; PASS e field_5811 + f Lnet/minecraft/world/InteractionResult; FAIL f field_5814 + f [Lnet/minecraft/world/InteractionResult; $VALUES g field_5813 + m ()Z consumesAction a method_23665 + m (Z)Lnet/minecraft/world/InteractionResult; sidedSuccess a method_29236 + p 0 isClientSide + m ()Z shouldSwing b method_23666 + m ()Z indicateItemUse c method_36360 + m ()[Lnet/minecraft/world/InteractionResult; $values d method_36599 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/InteractionResultHolder bqs net/minecraft/class_1271 + f Lnet/minecraft/world/InteractionResult; result a field_5815 + f Ljava/lang/Object; object b field_5816 + m ()Lnet/minecraft/world/InteractionResult; getResult a method_5467 + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; success a method_22427 + p 0 type + m (Ljava/lang/Object;Z)Lnet/minecraft/world/InteractionResultHolder; sidedSuccess a method_29237 + p 0 object + p 1 isClientSide + m ()Ljava/lang/Object; getObject b method_5466 + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; consume b method_22428 + p 0 type + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; pass c method_22430 + p 0 type + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; fail d method_22431 + p 0 type + m (Lnet/minecraft/world/InteractionResult;Ljava/lang/Object;)V + p 1 result + p 2 object +c net/minecraft/world/ItemInteractionResult bqt net/minecraft/class_9062 + f Lnet/minecraft/world/ItemInteractionResult; SUCCESS a field_47728 + f Lnet/minecraft/world/ItemInteractionResult; CONSUME b field_47729 + f Lnet/minecraft/world/ItemInteractionResult; CONSUME_PARTIAL c field_47730 + f Lnet/minecraft/world/ItemInteractionResult; PASS_TO_DEFAULT_BLOCK_INTERACTION d field_47731 + f Lnet/minecraft/world/ItemInteractionResult; SKIP_DEFAULT_BLOCK_INTERACTION e field_47732 + f Lnet/minecraft/world/ItemInteractionResult; FAIL f field_47733 + f [Lnet/minecraft/world/ItemInteractionResult; $VALUES g field_47734 + m ()Z consumesAction a method_55643 + m (Z)Lnet/minecraft/world/ItemInteractionResult; sidedSuccess a method_55644 + p 0 clientSide + m ()Lnet/minecraft/world/InteractionResult; result b method_55645 + m ()[Lnet/minecraft/world/ItemInteractionResult; $values c method_55646 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/LockCode bqu net/minecraft/class_1273 + f Lnet/minecraft/world/LockCode; NO_LOCK a field_5817 + f Lcom/mojang/serialization/Codec; CODEC b field_49206 + f Ljava/lang/String; TAG_LOCK c field_29956 + f Ljava/lang/String; key d comp_2371 + m ()Ljava/lang/String; key a comp_2371 + m (Lnet/minecraft/world/item/ItemStack;)Z unlocksWith a method_5472 + p 1 stack + m (Lnet/minecraft/nbt/CompoundTag;)V addToTag a method_5474 + p 1 nbt + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/LockCode; fromTag b method_5473 + p 0 nbt + m (Ljava/lang/String;)V + p 1 key + m ()V +c net/minecraft/world/MenuProvider bqv net/minecraft/class_3908 + c

Interface {@link net.fabricmc.fabric.api.screenhandler.v1.FabricScreenHandlerFactory} injected by mod fabric-screen-handler-api-v1

+ m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 +c net/minecraft/world/Nameable bqw net/minecraft/class_1275 + m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 + m ()Lnet/minecraft/network/chat/Component; getName ah method_5477 + m ()Z hasCustomName ai method_16914 + m ()Lnet/minecraft/network/chat/Component; getCustomName aj method_5797 +c net/minecraft/world/RandomSequence bqx net/minecraft/class_8564 + f Lcom/mojang/serialization/Codec; CODEC a field_44859 + f Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; source b field_44860 + m ()Lnet/minecraft/util/RandomSource; random a method_51839 + m (JLjava/util/Optional;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; createSequence a method_52189 + p 0 seed + p 2 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; seedForKey a method_52171 + p 0 key + m (Lnet/minecraft/world/RandomSequence;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; method_51840 a method_51840 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51841 a method_51841 + m (Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource;)V + p 1 source + m (JLnet/minecraft/resources/ResourceLocation;)V + p 1 seed + p 3 location + m (JLjava/util/Optional;)V + p 1 seed + p 3 location + m ()V +c net/minecraft/world/RandomSequences bqy net/minecraft/class_8565 + f Lorg/slf4j/Logger; LOGGER a field_44861 + f J worldSeed b field_44862 + f I salt c field_45100 + f Z includeWorldSeed d field_45101 + f Z includeSequenceId e field_45102 + f Ljava/util/Map; sequences f field_44863 + m ()I clear a method_52509 + m (IZZ)V setSeedDefaults a method_52510 + p 1 salt + p 2 includeWorldSeed + p 3 includeSequenceId + m (J)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52511 + p 0 seed + m (JLnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/RandomSequences; load a method_51842 + p 0 seed + p 2 tag + m (JLnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/RandomSequences; method_52516 a method_52516 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; get a method_51843 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;IZZ)V reset a method_52512 + p 1 sequence + p 2 seed + p 3 includeWorldSeed + p 4 includeSequenceId + m (Ljava/util/function/BiConsumer;)V forAllSequences a method_52513 + p 1 action + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/RandomSequence;)V method_51844 a method_51844 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Z)Z getBooleanWithDefault a method_52514 + p 0 tag + p 1 key + p 2 defaultValue + m (J)Lnet/minecraft/world/RandomSequences; method_52515 b method_52515 + m (Lnet/minecraft/resources/ResourceLocation;)V reset b method_52517 + p 1 sequence + m (Lnet/minecraft/resources/ResourceLocation;IZZ)Lnet/minecraft/world/RandomSequence; createSequence b method_52518 + p 1 location + p 2 salt + p 3 includeWorldSeed + p 4 includeSequenceId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/RandomSequence; createSequence c method_52519 + p 1 location + m (J)V + p 1 seed + m ()V +c net/minecraft/world/RandomSequences$DirtyMarkingRandomSource bqy$a net/minecraft/class_8565$class_8629 + f Lnet/minecraft/world/RandomSequences; field_44865 b field_44865 + f Lnet/minecraft/util/RandomSource; random c field_44864 + m (Lnet/minecraft/world/RandomSequences;Lnet/minecraft/util/RandomSource;)V + p 2 random +c net/minecraft/world/RandomizableContainer bqz net/minecraft/class_8934 + f Ljava/lang/String; LOOT_TABLE_TAG b field_47154 + f Ljava/lang/String; LOOT_TABLE_SEED_TAG c field_47155 + m (J)V setLootTableSeed a method_54866 + p 1 seed + m (Lnet/minecraft/resources/ResourceKey;)V setLootTable a method_11285 + p 1 lootTable + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_54867 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V setBlockEntityLootTable a method_54868 + p 0 level + p 1 random + p 2 ps + p 3 lootTable + m ()Lnet/minecraft/resources/ResourceKey; getLootTable aB_ method_54869 + m ()J getLootTableSeed aC_ method_54870 + m ()Lnet/minecraft/core/BlockPos; getBlockPos aD_ method_11016 + m (Lnet/minecraft/nbt/CompoundTag;)Z tryLoadLootTable b_ method_54871 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)Z trySaveLootTable c_ method_54872 + p 1 tag + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable e_ method_54873 + p 1 player + m ()Lnet/minecraft/world/level/Level; getLevel i method_10997 +c net/minecraft/world/SimpleContainer bra net/minecraft/class_1277 + f I size b field_5831 + f Lnet/minecraft/core/NonNullList; items c field_5828 + f Ljava/util/List; listeners d field_5829 + m (Lnet/minecraft/world/ContainerListener;)V addListener a method_5489 + c Add a listener that will be notified when any item in this inventory is modified. + p 1 listener + m (Lnet/minecraft/world/item/Item;I)Lnet/minecraft/world/item/ItemStack; removeItemType a method_20631 + p 1 item + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V moveItemsBetweenStacks a method_20632 + p 1 stack + p 2 other + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; createTag a method_7660 + p 1 levelRegistry + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V fromTag a method_7659 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/ContainerListener;)V removeListener b method_5488 + c Removes the specified {@link net.minecraft.world.ContainerListener} from receiving further change notices. + p 1 listener + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; addItem b method_5491 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canAddItem c method_27070 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V moveItemToEmptySlots d method_20633 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V moveItemToOccupiedSlotsWithSameType e method_20634 + p 1 stack + m ()Ljava/util/List; removeAllItems f method_24514 + m (Lnet/minecraft/world/item/ItemStack;)Z method_20635 f method_20635 + m ()Lnet/minecraft/core/NonNullList; getItems g method_54454 + m (Lnet/minecraft/world/item/ItemStack;)Z method_24513 g method_24513 + m (I)V + p 1 size + m ([Lnet/minecraft/world/item/ItemStack;)V + p 1 items +c net/minecraft/world/SimpleMenuProvider brb net/minecraft/class_747 + f Lnet/minecraft/network/chat/Component; title a field_3947 + f Lnet/minecraft/world/inventory/MenuConstructor; menuConstructor b field_17280 + m (Lnet/minecraft/world/inventory/MenuConstructor;Lnet/minecraft/network/chat/Component;)V + p 1 menuConstructor + p 2 title +c net/minecraft/world/TickRateManager brc net/minecraft/class_8921 + f F MIN_TICKRATE a field_46960 + f F tickrate b field_46961 + f J nanosecondsPerTick c field_46962 + f I frozenTicksToRun d field_46963 + f Z runGameElements e field_46964 + f Z isFrozen f field_46965 + m (F)V setTickRate a method_54671 + p 1 tickRate + m (Lnet/minecraft/world/entity/Entity;)Z isEntityFrozen a method_54746 + p 1 entity + m (Z)V setFrozen a method_54675 + p 1 frozen + m (I)V setFrozenTicksToRun c method_54747 + p 1 frozenTicksToRun + m ()F tickrate f method_54748 + m ()F millisecondsPerTick g method_54749 + m ()J nanosecondsPerTick h method_54750 + m ()Z runsNormally i method_54751 + m ()Z isSteppingForward j method_54752 + m ()I frozenTicksToRun k method_54753 + m ()Z isFrozen l method_54754 + m ()V tick m method_54755 + m ()V +c net/minecraft/world/WorldlyContainer brd net/minecraft/class_1278 + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Z canPlaceItemThroughFace a method_5492 + c Returns {@code true} if automation can insert the given item in the given slot from the given side. + p 1 index + p 2 itemStack + p 3 direction + m (Lnet/minecraft/core/Direction;)[I getSlotsForFace a method_5494 + p 1 side + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Z canTakeItemThroughFace b method_5493 + c Returns {@code true} if automation can extract the given item in the given slot from the given side. + p 1 index + p 2 stack + p 3 direction +c net/minecraft/world/WorldlyContainerHolder bre net/minecraft/class_3954 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/WorldlyContainer; getContainer a method_17680 + p 1 state + p 2 level + p 3 pos +c net/minecraft/world/damagesource/CombatEntry brf net/minecraft/class_1281 + f Lnet/minecraft/world/damagesource/DamageSource; source a comp_1535 + f F damage b comp_1536 + f Lnet/minecraft/world/damagesource/FallLocation; fallLocation c comp_1537 + f F fallDistance d comp_1538 + m ()Lnet/minecraft/world/damagesource/DamageSource; source a comp_1535 + m ()F damage b comp_1536 + m ()Lnet/minecraft/world/damagesource/FallLocation; fallLocation c comp_1537 + m ()F fallDistance d comp_1538 + m (Lnet/minecraft/world/damagesource/DamageSource;FLnet/minecraft/world/damagesource/FallLocation;F)V +c net/minecraft/world/damagesource/CombatRules brg net/minecraft/class_1280 + f F MAX_ARMOR a field_29962 + f F ARMOR_PROTECTION_DIVIDER b field_29963 + f F BASE_ARMOR_TOUGHNESS c field_29964 + f F MIN_ARMOR_RATIO d field_29965 + f I NUM_ARMOR_ITEMS e field_29966 + m (FF)F getDamageAfterMagicAbsorb a method_5497 + p 0 damage + p 1 enchantModifiers + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/damagesource/DamageSource;FF)F getDamageAfterAbsorb a method_5496 + p 0 entity + p 1 damage + p 2 damageSource + p 3 armorValue + p 4 armorToughness + m ()V +c net/minecraft/world/damagesource/CombatTracker brh net/minecraft/class_1283 + f I RESET_DAMAGE_STATUS_TIME a field_29967 + f I RESET_COMBAT_STATUS_TIME b field_29968 + f Lnet/minecraft/network/chat/Style; INTENTIONAL_GAME_DESIGN_STYLE c field_42274 + f Ljava/util/List; entries d field_5870 + f Lnet/minecraft/world/entity/LivingEntity; mob e field_5877 + f I lastDamageTime f field_5876 + f I combatStartTime g field_5875 + f I combatEndTime h field_5873 + f Z inCombat i field_5874 + f Z takingDamage j field_5872 + m ()Lnet/minecraft/network/chat/Component; getDeathMessage a method_5548 + m (Lnet/minecraft/world/damagesource/CombatEntry;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; getFallMessage a method_52190 + p 1 combatEntry + p 2 entity + m (Lnet/minecraft/world/damagesource/DamageSource;)Z shouldEnterCombat a method_52191 + p 0 source + m (Lnet/minecraft/world/damagesource/DamageSource;F)V recordDamage a method_5547 + p 1 source + p 2 damage + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; getDisplayName a method_52192 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getMessageForAssistedFall a method_52193 + p 1 entity + p 2 entityDisplayName + p 3 hasWeaponTranslationKey + p 4 noWeaponTranslationKey + m ()I getCombatDuration b method_5546 + m ()V recheckStatus c method_5539 + c Resets this trackers list of combat entries + m ()Lnet/minecraft/world/damagesource/CombatEntry; getMostSignificantFall d method_5544 + m (Lnet/minecraft/world/entity/LivingEntity;)V + p 1 mob + m ()V +c net/minecraft/world/damagesource/DamageEffects bri net/minecraft/class_8107 + f Lnet/minecraft/world/damagesource/DamageEffects; HURT a field_42275 + f Lnet/minecraft/world/damagesource/DamageEffects; THORNS b field_42276 + f Lnet/minecraft/world/damagesource/DamageEffects; DROWNING c field_42277 + f Lnet/minecraft/world/damagesource/DamageEffects; BURNING d field_42278 + f Lnet/minecraft/world/damagesource/DamageEffects; POKING e field_42279 + f Lnet/minecraft/world/damagesource/DamageEffects; FREEZING f field_42280 + f Lcom/mojang/serialization/Codec; CODEC g field_42281 + f Ljava/lang/String; id h field_42282 + f Lnet/minecraft/sounds/SoundEvent; sound i field_42283 + f [Lnet/minecraft/world/damagesource/DamageEffects; $VALUES j field_42284 + m ()Lnet/minecraft/sounds/SoundEvent; sound a method_48786 + m ()[Lnet/minecraft/world/damagesource/DamageEffects; $values b method_48787 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/sounds/SoundEvent;)V + p 3 id + p 4 sound + m ()V +c net/minecraft/world/damagesource/DamageScaling brj net/minecraft/class_8108 + f Lnet/minecraft/world/damagesource/DamageScaling; NEVER a field_42285 + f Lnet/minecraft/world/damagesource/DamageScaling; WHEN_CAUSED_BY_LIVING_NON_PLAYER b field_42286 + f Lnet/minecraft/world/damagesource/DamageScaling; ALWAYS c field_42287 + f Lcom/mojang/serialization/Codec; CODEC d field_42288 + f Ljava/lang/String; id e field_42289 + f [Lnet/minecraft/world/damagesource/DamageScaling; $VALUES f field_42290 + m ()[Lnet/minecraft/world/damagesource/DamageScaling; $values a method_48788 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/damagesource/DamageSource brk net/minecraft/class_1282 + f Lnet/minecraft/core/Holder; type a field_42291 + f Lnet/minecraft/world/entity/Entity; causingEntity b field_42292 + f Lnet/minecraft/world/entity/Entity; directEntity c field_42293 + f Lnet/minecraft/world/phys/Vec3; damageSourcePosition d field_42294 + m ()F getFoodExhaustion a method_5528 + c How much satiate (food) is consumed by this {@code DamageSource}. + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_49708 + p 1 damageTypeKey + m (Lnet/minecraft/tags/TagKey;)Z is a method_48789 + p 1 damageTypeKey + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/network/chat/Component; getLocalizedDeathMessage a method_5506 + c Gets the death message that is displayed when the player dies + p 1 livingEntity + m ()Z isDirect b method_60489 + m ()Lnet/minecraft/world/entity/Entity; getDirectEntity c method_5526 + c Retrieves the immediate causer of the damage, e.g. the arrow entity, not its shooter + m ()Lnet/minecraft/world/entity/Entity; getEntity d method_5529 + c Retrieves the true causer of the damage, e.g. the player who fired an arrow, the shulker who fired the bullet, etc. + m ()Lnet/minecraft/world/item/ItemStack; getWeaponItem e method_60948 + m ()Ljava/lang/String; getMsgId f method_5525 + c Return the name of damage type. + m ()Z scalesWithDifficulty g method_5514 + c Return whether this damage source will have its damage amount scaled based on the current difficulty. + m ()Z isCreativePlayer h method_5530 + m ()Lnet/minecraft/world/phys/Vec3; getSourcePosition i method_5510 + c Gets the location from which the damage originates. + m ()Lnet/minecraft/world/phys/Vec3; sourcePositionRaw j method_48791 + m ()Lnet/minecraft/world/damagesource/DamageType; type k method_48792 + m ()Lnet/minecraft/core/Holder; typeHolder l method_48793 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 type + p 2 directEntity + p 3 causingEntity + p 4 damageSourcePosition + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 type + p 2 directEntity + p 3 causingEntity + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V + p 1 type + p 2 damageSourcePosition + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)V + p 1 type + p 2 entity + m (Lnet/minecraft/core/Holder;)V + p 1 type +c net/minecraft/world/damagesource/DamageSource$1 brk$1 net/minecraft/class_1282$1 + f [I $SwitchMap$net$minecraft$world$damagesource$DamageScaling a field_42295 + m ()V +c net/minecraft/world/damagesource/DamageSources brl net/minecraft/class_8109 + f Lnet/minecraft/core/Registry; damageTypes a field_42296 + f Lnet/minecraft/world/damagesource/DamageSource; inFire b field_42297 + f Lnet/minecraft/world/damagesource/DamageSource; campfire c field_51564 + f Lnet/minecraft/world/damagesource/DamageSource; lightningBolt d field_42298 + f Lnet/minecraft/world/damagesource/DamageSource; onFire e field_42299 + f Lnet/minecraft/world/damagesource/DamageSource; lava f field_42300 + f Lnet/minecraft/world/damagesource/DamageSource; hotFloor g field_42301 + f Lnet/minecraft/world/damagesource/DamageSource; inWall h field_42302 + f Lnet/minecraft/world/damagesource/DamageSource; cramming i field_42303 + f Lnet/minecraft/world/damagesource/DamageSource; drown j field_42304 + f Lnet/minecraft/world/damagesource/DamageSource; starve k field_42305 + f Lnet/minecraft/world/damagesource/DamageSource; cactus l field_42306 + f Lnet/minecraft/world/damagesource/DamageSource; fall m field_42307 + f Lnet/minecraft/world/damagesource/DamageSource; flyIntoWall n field_42308 + f Lnet/minecraft/world/damagesource/DamageSource; fellOutOfWorld o field_42309 + f Lnet/minecraft/world/damagesource/DamageSource; generic p field_42310 + f Lnet/minecraft/world/damagesource/DamageSource; magic q field_42311 + f Lnet/minecraft/world/damagesource/DamageSource; wither r field_42312 + f Lnet/minecraft/world/damagesource/DamageSource; dragonBreath s field_42313 + f Lnet/minecraft/world/damagesource/DamageSource; dryOut t field_42314 + f Lnet/minecraft/world/damagesource/DamageSource; sweetBerryBush u field_42315 + f Lnet/minecraft/world/damagesource/DamageSource; freeze v field_42316 + f Lnet/minecraft/world/damagesource/DamageSource; stalagmite w field_42317 + f Lnet/minecraft/world/damagesource/DamageSource; outsideBorder x field_44866 + f Lnet/minecraft/world/damagesource/DamageSource; genericKill y field_44867 + m ()Lnet/minecraft/world/damagesource/DamageSource; inFire a method_48794 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48795 + p 1 damageTypeKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48796 + p 1 damageTypeKey + p 2 entity + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48797 + p 1 damageTypeKey + p 2 causingEntity + p 3 directEntity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fallingBlock a method_48798 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; trident a method_48799 + p 1 trident + p 2 thrower + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; mobProjectile a method_48800 + p 1 projectile + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; sting a method_48801 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/damagesource/DamageSource; playerAttack a method_48802 + p 1 player + m (Lnet/minecraft/world/entity/projectile/AbstractArrow;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; arrow a method_48803 + p 1 arrow + p 2 shooter + m (Lnet/minecraft/world/entity/projectile/Fireball;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fireball a method_48804 + p 1 fireball + p 2 thrower + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fireworks a method_48805 + p 1 firework + p 2 shooter + m (Lnet/minecraft/world/entity/projectile/WitherSkull;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; witherSkull a method_48806 + p 1 witherSkull + p 2 shooter + m (Lnet/minecraft/world/level/Explosion;)Lnet/minecraft/world/damagesource/DamageSource; explosion a method_48807 + p 1 explosion + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/damagesource/DamageSource; badRespawnPointExplosion a method_48808 + p 1 position + m ()Lnet/minecraft/world/damagesource/DamageSource; campfire b method_59917 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; anvil b method_48810 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; thrown b method_48811 + p 1 causingEntity + p 2 directEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; spit b method_55647 + p 1 spit + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; mobAttack b method_48812 + p 1 mob + m ()Lnet/minecraft/world/damagesource/DamageSource; lightningBolt c method_48809 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fallingStalactite c method_48814 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; indirectMagic c method_48815 + p 1 causingEntity + p 2 directEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; windCharge c method_55648 + p 1 windCharge + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; noAggroMobAttack c method_48816 + p 1 mob + m ()Lnet/minecraft/world/damagesource/DamageSource; onFire d method_48813 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; thorns d method_48818 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; explosion d method_48819 + p 1 causingEntity + p 2 directEntity + m ()Lnet/minecraft/world/damagesource/DamageSource; lava e method_48817 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; sonicBoom e method_48821 + p 1 entity + m ()Lnet/minecraft/world/damagesource/DamageSource; hotFloor f method_48820 + m ()Lnet/minecraft/world/damagesource/DamageSource; inWall g method_48822 + m ()Lnet/minecraft/world/damagesource/DamageSource; cramming h method_48823 + m ()Lnet/minecraft/world/damagesource/DamageSource; drown i method_48824 + m ()Lnet/minecraft/world/damagesource/DamageSource; starve j method_48825 + m ()Lnet/minecraft/world/damagesource/DamageSource; cactus k method_48826 + m ()Lnet/minecraft/world/damagesource/DamageSource; fall l method_48827 + m ()Lnet/minecraft/world/damagesource/DamageSource; flyIntoWall m method_48828 + m ()Lnet/minecraft/world/damagesource/DamageSource; fellOutOfWorld n method_48829 + m ()Lnet/minecraft/world/damagesource/DamageSource; generic o method_48830 + m ()Lnet/minecraft/world/damagesource/DamageSource; magic p method_48831 + m ()Lnet/minecraft/world/damagesource/DamageSource; wither q method_48832 + m ()Lnet/minecraft/world/damagesource/DamageSource; dragonBreath r method_48833 + m ()Lnet/minecraft/world/damagesource/DamageSource; dryOut s method_48834 + m ()Lnet/minecraft/world/damagesource/DamageSource; sweetBerryBush t method_48835 + m ()Lnet/minecraft/world/damagesource/DamageSource; freeze u method_48836 + m ()Lnet/minecraft/world/damagesource/DamageSource; stalagmite v method_48837 + m ()Lnet/minecraft/world/damagesource/DamageSource; outOfBorder w method_51846 + m ()Lnet/minecraft/world/damagesource/DamageSource; genericKill x method_51847 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registry +c net/minecraft/world/damagesource/DamageType brm net/minecraft/class_8110 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42318 + f Lcom/mojang/serialization/Codec; CODEC b field_51565 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_51932 + f Ljava/lang/String; msgId d comp_1242 + f Lnet/minecraft/world/damagesource/DamageScaling; scaling e comp_1243 + f F exhaustion f comp_1244 + f Lnet/minecraft/world/damagesource/DamageEffects; effects g comp_1245 + f Lnet/minecraft/world/damagesource/DeathMessageType; deathMessageType h comp_1246 + m ()Ljava/lang/String; msgId a comp_1242 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48838 a method_48838 + m ()Lnet/minecraft/world/damagesource/DamageScaling; scaling b comp_1243 + m ()F exhaustion c comp_1244 + m ()Lnet/minecraft/world/damagesource/DamageEffects; effects d comp_1245 + m ()Lnet/minecraft/world/damagesource/DeathMessageType; deathMessageType e comp_1246 + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;F)V + p 1 msgId + p 2 scaling + p 3 exhaustion + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;FLnet/minecraft/world/damagesource/DamageEffects;)V + p 1 msgId + p 2 scaling + p 3 exhaustion + p 4 effects + m (Ljava/lang/String;FLnet/minecraft/world/damagesource/DamageEffects;)V + p 1 msgId + p 2 exhaustion + p 3 effects + m (Ljava/lang/String;F)V + p 1 msgId + p 2 exhaustion + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;FLnet/minecraft/world/damagesource/DamageEffects;Lnet/minecraft/world/damagesource/DeathMessageType;)V + m ()V +c net/minecraft/world/damagesource/DamageTypes brn net/minecraft/class_8111 + f Lnet/minecraft/resources/ResourceKey; MOB_ATTACK A field_42360 + f Lnet/minecraft/resources/ResourceKey; MOB_ATTACK_NO_AGGRO B field_42319 + f Lnet/minecraft/resources/ResourceKey; PLAYER_ATTACK C field_42320 + f Lnet/minecraft/resources/ResourceKey; ARROW D field_42321 + f Lnet/minecraft/resources/ResourceKey; TRIDENT E field_42322 + f Lnet/minecraft/resources/ResourceKey; MOB_PROJECTILE F field_42323 + f Lnet/minecraft/resources/ResourceKey; SPIT G field_47736 + f Lnet/minecraft/resources/ResourceKey; WIND_CHARGE H field_47737 + f Lnet/minecraft/resources/ResourceKey; FIREWORKS I field_42324 + f Lnet/minecraft/resources/ResourceKey; FIREBALL J field_42325 + f Lnet/minecraft/resources/ResourceKey; UNATTRIBUTED_FIREBALL K field_42326 + f Lnet/minecraft/resources/ResourceKey; WITHER_SKULL L field_42327 + f Lnet/minecraft/resources/ResourceKey; THROWN M field_42328 + f Lnet/minecraft/resources/ResourceKey; INDIRECT_MAGIC N field_42329 + f Lnet/minecraft/resources/ResourceKey; THORNS O field_42330 + f Lnet/minecraft/resources/ResourceKey; EXPLOSION P field_42331 + f Lnet/minecraft/resources/ResourceKey; PLAYER_EXPLOSION Q field_42332 + f Lnet/minecraft/resources/ResourceKey; SONIC_BOOM R field_42333 + f Lnet/minecraft/resources/ResourceKey; BAD_RESPAWN_POINT S field_42334 + f Lnet/minecraft/resources/ResourceKey; OUTSIDE_BORDER T field_44868 + f Lnet/minecraft/resources/ResourceKey; GENERIC_KILL U field_44869 + f Lnet/minecraft/resources/ResourceKey; IN_FIRE a field_42335 + f Lnet/minecraft/resources/ResourceKey; CAMPFIRE b field_51566 + f Lnet/minecraft/resources/ResourceKey; LIGHTNING_BOLT c field_42336 + f Lnet/minecraft/resources/ResourceKey; ON_FIRE d field_42337 + f Lnet/minecraft/resources/ResourceKey; LAVA e field_42338 + f Lnet/minecraft/resources/ResourceKey; HOT_FLOOR f field_42339 + f Lnet/minecraft/resources/ResourceKey; IN_WALL g field_42340 + f Lnet/minecraft/resources/ResourceKey; CRAMMING h field_42341 + f Lnet/minecraft/resources/ResourceKey; DROWN i field_42342 + f Lnet/minecraft/resources/ResourceKey; STARVE j field_42343 + f Lnet/minecraft/resources/ResourceKey; CACTUS k field_42344 + f Lnet/minecraft/resources/ResourceKey; FALL l field_42345 + f Lnet/minecraft/resources/ResourceKey; FLY_INTO_WALL m field_42346 + f Lnet/minecraft/resources/ResourceKey; FELL_OUT_OF_WORLD n field_42347 + f Lnet/minecraft/resources/ResourceKey; GENERIC o field_42348 + f Lnet/minecraft/resources/ResourceKey; MAGIC p field_42349 + f Lnet/minecraft/resources/ResourceKey; WITHER q field_42350 + f Lnet/minecraft/resources/ResourceKey; DRAGON_BREATH r field_42351 + f Lnet/minecraft/resources/ResourceKey; DRY_OUT s field_42352 + f Lnet/minecraft/resources/ResourceKey; SWEET_BERRY_BUSH t field_42353 + f Lnet/minecraft/resources/ResourceKey; FREEZE u field_42354 + f Lnet/minecraft/resources/ResourceKey; STALAGMITE v field_42355 + f Lnet/minecraft/resources/ResourceKey; FALLING_BLOCK w field_42356 + f Lnet/minecraft/resources/ResourceKey; FALLING_ANVIL x field_42357 + f Lnet/minecraft/resources/ResourceKey; FALLING_STALACTITE y field_42358 + f Lnet/minecraft/resources/ResourceKey; STING z field_42359 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48839 + p 0 context + m ()V +c net/minecraft/world/damagesource/DeathMessageType bro net/minecraft/class_8112 + f Lnet/minecraft/world/damagesource/DeathMessageType; DEFAULT a field_42361 + f Lnet/minecraft/world/damagesource/DeathMessageType; FALL_VARIANTS b field_42362 + f Lnet/minecraft/world/damagesource/DeathMessageType; INTENTIONAL_GAME_DESIGN c field_42363 + f Lcom/mojang/serialization/Codec; CODEC d field_42364 + f Ljava/lang/String; id e field_42365 + f [Lnet/minecraft/world/damagesource/DeathMessageType; $VALUES f field_42366 + m ()[Lnet/minecraft/world/damagesource/DeathMessageType; $values a method_48840 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/damagesource/FallLocation brp net/minecraft/class_8572 + f Lnet/minecraft/world/damagesource/FallLocation; GENERIC a field_44923 + f Lnet/minecraft/world/damagesource/FallLocation; LADDER b field_44924 + f Lnet/minecraft/world/damagesource/FallLocation; VINES c field_44925 + f Lnet/minecraft/world/damagesource/FallLocation; WEEPING_VINES d field_44926 + f Lnet/minecraft/world/damagesource/FallLocation; TWISTING_VINES e field_44927 + f Lnet/minecraft/world/damagesource/FallLocation; SCAFFOLDING f field_44928 + f Lnet/minecraft/world/damagesource/FallLocation; OTHER_CLIMBABLE g field_44929 + f Lnet/minecraft/world/damagesource/FallLocation; WATER h field_44930 + f Ljava/lang/String; id i comp_1539 + m ()Ljava/lang/String; languageKey a method_52194 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/FallLocation; getCurrentFallLocation a method_52195 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/damagesource/FallLocation; blockToFallLocation a method_52196 + p 0 state + m ()Ljava/lang/String; id b comp_1539 + m (Ljava/lang/String;)V + m ()V +c net/minecraft/world/damagesource/package-info brq net/minecraft/class_6022 +c net/minecraft/world/effect/AbsorptionMobEffect brr net/minecraft/class_1288 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/BadOmenMobEffect brs net/minecraft/class_8631 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/HealOrHarmMobEffect brt net/minecraft/class_8632 + f Z isHarm c field_45103 + m (Lnet/minecraft/world/effect/MobEffectCategory;IZ)V + p 1 category + p 2 color + p 3 isHarm +c net/minecraft/world/effect/HungerMobEffect bru net/minecraft/class_8633 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/InfestedMobEffect brv net/minecraft/class_9455 + f F chanceToSpawn c field_50112 + f Ljava/util/function/ToIntFunction; spawnedCount d field_50113 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;DDD)V spawnSilverfish a method_58615 + p 1 level + p 2 entity + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/effect/MobEffectCategory;IFLjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 chanceToSpawn + p 4 spawnedCount +c net/minecraft/world/effect/InstantenousMobEffect brw net/minecraft/class_1289 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V + p 1 category + p 2 color +c net/minecraft/world/effect/MobEffect brx net/minecraft/class_1291 + f Lcom/mojang/serialization/Codec; CODEC a field_51933 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51934 + f I AMBIENT_ALPHA c field_49789 + f Ljava/util/Map; attributeModifiers d field_5885 + c Contains a Map of the AttributeModifiers registered by potions + f Lnet/minecraft/world/effect/MobEffectCategory; category e field_18270 + f I color f field_5886 + f Ljava/util/function/Function; particleFactory g field_49790 + f Ljava/lang/String; descriptionId h field_5883 + f I blendDurationTicks i field_47738 + f Ljava/util/Optional; soundOnAdded j field_50114 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures k field_50115 + m ()Z isInstantenous a method_5561 + c Returns {@code true} if the potion has an instant effect instead of a continuous one (e.g. Harming) + m (I)Lnet/minecraft/world/effect/MobEffect; setBlendDuration a method_55649 + p 1 blendDuration + m (II)Z shouldApplyEffectTickThisTick a method_5552 + p 1 duration + p 2 amplifier + m (ILnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; method_58145 a method_58145 + m (ILjava/util/function/BiConsumer;)V createModifiers a method_55650 + p 1 amplifier + p 2 output + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/effect/MobEffect; withSoundOnAdded a method_58616 + p 1 sound + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; createParticleOptions a method_58146 + p 1 effect + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;ID)V applyInstantenousEffect a method_5564 + p 1 source + p 2 indirectSource + p 3 livingEntity + p 4 amplifier + p 5 health + m (Lnet/minecraft/world/entity/LivingEntity;I)Z applyEffectTick a method_5572 + p 1 livingEntity + p 2 amplifier + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/damagesource/DamageSource;F)V onMobHurt a method_58614 + p 1 livingEntity + p 2 amplifier + p 3 damageSource + p 4 amount + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/Entity$RemovalReason;)V onMobRemoved a method_58617 + p 1 livingEntity + p 2 amplifier + p 3 reason + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/sounds/SoundEvent;)V method_58618 a method_58618 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V removeAttributeModifiers a method_5562 + p 1 attributeMap + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;I)V addAttributeModifiers a method_5555 + p 1 attributeMap + p 2 amplifier + m (Ljava/util/function/BiConsumer;ILnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffect$AttributeTemplate;)V method_55651 a method_55651 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Lnet/minecraft/world/effect/MobEffect; addAttributeModifier a method_5566 + p 1 attribute + p 2 id + p 3 amount + p 5 operation + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; method_58147 a method_58147 + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/effect/MobEffect; requiredFeatures a method_58619 + p 1 requiredFeatures + m ()I getBlendDurationTicks b method_55652 + m (Lnet/minecraft/world/entity/LivingEntity;I)V onEffectStarted b method_52520 + p 1 livingEntity + p 2 amplifier + m ()Ljava/lang/String; getOrCreateDescriptionId c method_5559 + m (Lnet/minecraft/world/entity/LivingEntity;I)V onEffectAdded c method_58620 + p 1 livingEntity + p 2 amplifier + m ()Ljava/lang/String; getDescriptionId d method_5567 + c Returns the name of the effect. + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_5560 + m ()Lnet/minecraft/world/effect/MobEffectCategory; getCategory f method_18792 + m ()I getColor g method_5556 + c Returns the color of the potion liquid. + m ()Z isBeneficial h method_5573 + c Get if the potion is beneficial to the player. Beneficial potions are shown on the first row of the HUD + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V + p 1 category + p 2 color + m (Lnet/minecraft/world/effect/MobEffectCategory;ILnet/minecraft/core/particles/ParticleOptions;)V + p 1 category + p 2 color + p 3 particle + m ()V +c net/minecraft/world/effect/MobEffect$AttributeTemplate brx$a net/minecraft/class_1291$class_8634 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2182 + f D amount b comp_2183 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_2184 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2182 + m (I)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; create a method_52522 + p 1 level + m ()D amount b comp_2183 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_2184 + m (Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V +c net/minecraft/world/effect/MobEffectCategory bry net/minecraft/class_4081 + f Lnet/minecraft/world/effect/MobEffectCategory; BENEFICIAL a field_18271 + f Lnet/minecraft/world/effect/MobEffectCategory; HARMFUL b field_18272 + f Lnet/minecraft/world/effect/MobEffectCategory; NEUTRAL c field_18273 + f Lnet/minecraft/ChatFormatting; tooltipFormatting d field_18274 + f [Lnet/minecraft/world/effect/MobEffectCategory; $VALUES e field_18275 + m ()Lnet/minecraft/ChatFormatting; getTooltipFormatting a method_18793 + m ()[Lnet/minecraft/world/effect/MobEffectCategory; $values b method_36600 + m (Ljava/lang/String;ILnet/minecraft/ChatFormatting;)V + p 3 tooltipFormatting + m ()V +c net/minecraft/world/effect/MobEffectInstance brz net/minecraft/class_1293 + f I INFINITE_DURATION a field_42106 + f I MIN_AMPLIFIER b field_49014 + f I MAX_AMPLIFIER c field_49015 + f Lcom/mojang/serialization/Codec; CODEC d field_48821 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_49207 + f Lorg/slf4j/Logger; LOGGER f field_5897 + f Lnet/minecraft/core/Holder; effect g field_5896 + f I duration h field_5895 + f I amplifier i field_5893 + f Z ambient j field_5892 + f Z visible k field_5890 + f Z showIcon l field_5889 + f Lnet/minecraft/world/effect/MobEffectInstance; hiddenEffect m field_21830 + c A hidden effect which is not shown to the player. + f Lnet/minecraft/world/effect/MobEffectInstance$BlendState; blendState n field_47739 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticleOptions a method_58148 + m (I)Z endsWithin a method_48557 + p 1 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;)V setDetailsFrom a method_24276 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;)V onEffectStarted a method_52523 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getBlendFactor a method_55653 + p 1 entity + p 2 delta + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;F)V onMobHurt a method_58621 + p 1 livingEntity + p 2 damageSource + p 3 amount + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity$RemovalReason;)V onMobRemoved a method_58622 + p 1 livingEntity + p 2 reason + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/lang/Runnable;)Z tick a method_5585 + p 1 entity + p 2 onExpirationRunnable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56666 a method_56666 + m (Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)I mapDuration a method_48558 + p 1 mapper + m (Lnet/minecraft/core/Holder;)Z is a method_55654 + p 1 effect + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance$Details;)Lnet/minecraft/world/effect/MobEffectInstance; method_56667 a method_56667 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/effect/MobEffectInstance; load a method_5583 + c Read a custom potion effect from a potion item's NBT data. + p 0 nbt + m ()Z isInfiniteDuration b method_48559 + m (I)I method_48560 b method_48560 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z update b method_5590 + p 1 other + m (Lnet/minecraft/world/entity/LivingEntity;)V onEffectAdded b method_58623 + p 1 livingEntity + m ()Lnet/minecraft/core/Holder; getEffect c method_5579 + m (Lnet/minecraft/world/effect/MobEffectInstance;)I compareTo c method_5587 + p 1 other + m ()I getDuration d method_5584 + m (Lnet/minecraft/world/effect/MobEffectInstance;)V copyBlendState d method_55656 + p 1 effectInstance + m ()I getAmplifier e method_5578 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z isShorterDurationThan e method_48561 + p 1 other + m ()Z isAmbient f method_5591 + c Gets whether this potion effect originated from a beacon + m ()Z isVisible g method_5581 + c Gets whether this potion effect will show ambient particles or not. + m ()Z showIcon h method_5592 + m ()Ljava/lang/String; getDescriptionId i method_5586 + m ()Lnet/minecraft/nbt/Tag; save j method_5582 + m ()V skipBlending k method_55657 + m ()Lnet/minecraft/world/effect/MobEffectInstance$Details; asDetails l method_56668 + m ()Z hasRemainingDuration m method_48562 + m ()I tickDownDuration n method_5588 + m ()Ljava/lang/String; describeDuration o method_48563 + m (Lnet/minecraft/core/Holder;)V + p 1 effect + m (Lnet/minecraft/core/Holder;I)V + p 1 effect + p 2 duration + m (Lnet/minecraft/core/Holder;II)V + p 1 effect + p 2 duration + p 3 amplifier + m (Lnet/minecraft/core/Holder;IIZZ)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + m (Lnet/minecraft/core/Holder;IIZZZ)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + p 6 showIcon + m (Lnet/minecraft/core/Holder;IIZZZLnet/minecraft/world/effect/MobEffectInstance;)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + p 6 showIcon + p 7 hiddenEffect + m (Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 other + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance$Details;)V + p 1 effect + p 2 details + m ()V +c net/minecraft/world/effect/MobEffectInstance$BlendState brz$a net/minecraft/class_1293$class_9063 + f F factor a field_47740 + f F factorPreviousFrame b field_47741 + m (Lnet/minecraft/world/effect/MobEffectInstance$BlendState;)V copyFrom a method_55658 + p 1 blendState + m (Lnet/minecraft/world/effect/MobEffectInstance;)V setImmediate a method_55659 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;F)F getFactor a method_55660 + p 1 entity + p 2 delta + m (Lnet/minecraft/world/effect/MobEffectInstance;)V tick b method_55661 + p 1 effect + m (Lnet/minecraft/world/effect/MobEffectInstance;)F computeTarget c method_55662 + p 0 effect + m (Lnet/minecraft/world/effect/MobEffectInstance;)I getBlendDuration d method_55663 + p 0 effect + m ()V +c net/minecraft/world/effect/MobEffectInstance$Details brz$b net/minecraft/class_1293$class_9195 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_48822 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49208 + f I amplifier c comp_2292 + f I duration d comp_2293 + f Z ambient e comp_2294 + f Z showParticles f comp_2295 + f Z showIcon g comp_2296 + f Ljava/util/Optional; hiddenEffect h comp_2297 + m ()I amplifier a comp_2292 + m (IIZZLjava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/effect/MobEffectInstance$Details; create a method_56669 + p 0 amplifier + p 1 duration + p 2 ambient + p 3 showParticles + p 4 showIcon + p 5 hiddenEffect + m (Lnet/minecraft/world/effect/MobEffectInstance$Details;)Ljava/util/Optional; method_56670 a method_56670 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_56671 a method_56671 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56672 a method_56672 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57279 a method_57279 + m ()I duration b comp_2293 + m ()Z ambient c comp_2294 + m ()Z showParticles d comp_2295 + m ()Z showIcon e comp_2296 + m ()Ljava/util/Optional; hiddenEffect f comp_2297 + m (IIZZZLjava/util/Optional;)V + m ()V +c net/minecraft/world/effect/MobEffectUtil bsa net/minecraft/class_1292 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;DLnet/minecraft/world/effect/MobEffectInstance;I)Ljava/util/List; addEffectToPlayersAround a method_42143 + p 0 level + p 1 source + p 2 pos + p 3 radius + p 5 effect + p 6 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;FF)Lnet/minecraft/network/chat/Component; formatDuration a method_5577 + p 0 effect + p 1 durationFactor + p 2 ticksPerSecond + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerPlayer;)V method_42144 a method_42144 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;DLnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance;ILnet/minecraft/server/level/ServerPlayer;)Z method_42145 a method_42145 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasDigSpeed a method_5576 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)I getDigSpeedAmplification b method_5575 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasWaterBreathing c method_5574 + p 0 entity + m ()V +c net/minecraft/world/effect/MobEffects bsb net/minecraft/class_1294 + f Lnet/minecraft/core/Holder; UNLUCK A field_5908 + f Lnet/minecraft/core/Holder; SLOW_FALLING B field_5906 + f Lnet/minecraft/core/Holder; CONDUIT_POWER C field_5927 + f Lnet/minecraft/core/Holder; DOLPHINS_GRACE D field_5900 + f Lnet/minecraft/core/Holder; BAD_OMEN E field_16595 + f Lnet/minecraft/core/Holder; HERO_OF_THE_VILLAGE F field_18980 + f Lnet/minecraft/core/Holder; DARKNESS G field_38092 + f Lnet/minecraft/core/Holder; TRIAL_OMEN H field_50116 + f Lnet/minecraft/core/Holder; RAID_OMEN I field_50117 + f Lnet/minecraft/core/Holder; WIND_CHARGED J field_50118 + f Lnet/minecraft/core/Holder; WEAVING K field_50119 + f Lnet/minecraft/core/Holder; OOZING L field_50120 + f Lnet/minecraft/core/Holder; INFESTED M field_50121 + f I DARKNESS_EFFECT_FACTOR_PADDING_DURATION_TICKS N field_38093 + f Lnet/minecraft/core/Holder; MOVEMENT_SPEED a field_5904 + f Lnet/minecraft/core/Holder; MOVEMENT_SLOWDOWN b field_5909 + f Lnet/minecraft/core/Holder; DIG_SPEED c field_5917 + f Lnet/minecraft/core/Holder; DIG_SLOWDOWN d field_5901 + f Lnet/minecraft/core/Holder; DAMAGE_BOOST e field_5910 + f Lnet/minecraft/core/Holder; HEAL f field_5915 + f Lnet/minecraft/core/Holder; HARM g field_5921 + f Lnet/minecraft/core/Holder; JUMP h field_5913 + f Lnet/minecraft/core/Holder; CONFUSION i field_5916 + f Lnet/minecraft/core/Holder; REGENERATION j field_5924 + f Lnet/minecraft/core/Holder; DAMAGE_RESISTANCE k field_5907 + f Lnet/minecraft/core/Holder; FIRE_RESISTANCE l field_5918 + f Lnet/minecraft/core/Holder; WATER_BREATHING m field_5923 + f Lnet/minecraft/core/Holder; INVISIBILITY n field_5905 + f Lnet/minecraft/core/Holder; BLINDNESS o field_5919 + f Lnet/minecraft/core/Holder; NIGHT_VISION p field_5925 + f Lnet/minecraft/core/Holder; HUNGER q field_5903 + f Lnet/minecraft/core/Holder; WEAKNESS r field_5911 + f Lnet/minecraft/core/Holder; POISON s field_5899 + f Lnet/minecraft/core/Holder; WITHER t field_5920 + f Lnet/minecraft/core/Holder; HEALTH_BOOST u field_5914 + f Lnet/minecraft/core/Holder; ABSORPTION v field_5898 + f Lnet/minecraft/core/Holder; SATURATION w field_5922 + f Lnet/minecraft/core/Holder; GLOWING x field_5912 + f Lnet/minecraft/core/Holder; LEVITATION y field_5902 + f Lnet/minecraft/core/Holder; LUCK z field_5926 + m (Lnet/minecraft/util/RandomSource;)I method_58624 a method_58624 + m (Ljava/lang/String;Lnet/minecraft/world/effect/MobEffect;)Lnet/minecraft/core/Holder; register a method_5594 + p 0 name + p 1 effect + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55664 + p 0 registry + m (Lnet/minecraft/util/RandomSource;)I method_58625 b method_58625 + m (Lnet/minecraft/util/RandomSource;)I method_58626 c method_58626 + m ()V + m ()V +c net/minecraft/world/effect/OozingMobEffect bsc net/minecraft/class_9456 + f I SLIME_SIZE c field_51372 + f I RADIUS_TO_CHECK_SLIMES d field_51373 + f Ljava/util/function/ToIntFunction; spawnedCount e field_50122 + m (ILnet/minecraft/world/effect/OozingMobEffect$NearbySlimes;I)I numberOfSlimesToSpawn a method_59652 + p 0 maxEntityCramming + p 1 nearbySlimes + p 2 spawnCount + m (Lnet/minecraft/world/level/Level;DDD)V spawnSlimeOffspring a method_58627 + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/effect/MobEffectCategory;ILjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 spawnedCount +c net/minecraft/world/effect/OozingMobEffect$NearbySlimes bsc$a net/minecraft/class_9456$class_9775 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/effect/OozingMobEffect$NearbySlimes; closeTo a method_60604 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;I)I method_60605 a method_60605 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/Slime;)Z method_60606 a method_60606 +c net/minecraft/world/effect/PoisonMobEffect bsd net/minecraft/class_8635 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/RaidOmenMobEffect bse net/minecraft/class_9457 + m (Lnet/minecraft/world/effect/MobEffectCategory;ILnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/world/effect/RegenerationMobEffect bsf net/minecraft/class_8636 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/SaturationMobEffect bsg net/minecraft/class_8637 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/WeavingMobEffect bsh net/minecraft/class_9458 + f Ljava/util/function/ToIntFunction; maxCobwebs c field_50123 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V spawnCobwebsRandomlyAround a method_58628 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/effect/MobEffectCategory;ILjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 maxCobwebs +c net/minecraft/world/effect/WindChargedMobEffect bsi net/minecraft/class_9459 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/WitherMobEffect bsj net/minecraft/class_8638 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/package-info bsk net/minecraft/class_6023 +c net/minecraft/world/entity/AgeableMob bsl net/minecraft/class_1296 + f I BABY_START_AGE b field_29969 + f I age c field_5950 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID cc field_5949 + f I FORCED_AGE_PARTICLE_TICKS cd field_29970 + f I forcedAge d field_5948 + f I forcedAgeTimer e field_5947 + m (IZ)V ageUp a method_5620 + p 1 amount + p 2 forced + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/AgeableMob; getBreedOffspring a method_5613 + p 1 level + p 2 otherParent + m ()Z canBreed ab_ method_19184 + m (I)V ageUp b_ method_5615 + p 1 amount + m (I)V setAge c_ method_5614 + p 1 age + m (I)I getSpeedUpSecondsWhenFeeding d_ method_41321 + p 0 ticksUntilAdult + m ()I getAge g method_5618 + m ()V ageBoundaryReached k method_5619 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/AgeableMob$AgeableMobGroupData bsl$a net/minecraft/class_1296$class_4697 + f I groupSize a field_20684 + f Z shouldSpawnBaby b field_20685 + f F babySpawnChance c field_20686 + m ()I getGroupSize a method_22432 + m ()V increaseGroupSizeByOne b method_22435 + m ()Z isShouldSpawnBaby c method_22436 + m ()F getBabySpawnChance d method_22437 + m (ZF)V + p 1 shouldSpawnBaby + p 2 babySpawnChance + m (Z)V + p 1 shouldSpawnBaby + m (F)V + p 1 babySpawnChance +c net/minecraft/world/entity/AnimationState bsm net/minecraft/class_7094 + f J STOPPED a field_37417 + f J lastTime b field_37418 + f J accumulatedTime c field_39112 + m ()V stop a method_41325 + m (FF)V updateTime a method_43686 + p 1 ageInTicks + p 2 speed + m (I)V start a method_41322 + p 1 tickCount + m (IF)V fastForward a method_56988 + p 1 duration + p 2 speed + m (Ljava/util/function/Consumer;)V ifStarted a method_41323 + p 1 action + m (ZI)V animateWhen a method_45317 + p 1 condition + p 2 tickCount + m ()J getAccumulatedTime b method_43687 + m (I)V startIfStopped b method_41324 + p 1 tickCount + m ()Z isStarted c method_41327 + m ()V +c net/minecraft/world/entity/AreaEffectCloud bsn net/minecraft/class_1295 + f F DEFAULT_WIDTH b field_40732 + f F HEIGHT c field_40733 + f Lorg/slf4j/Logger; LOGGER d field_5935 + f I TIME_BETWEEN_APPLICATIONS e field_29972 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RADIUS f field_5938 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WAITING g field_5944 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PARTICLE h field_5931 + f F MAX_RADIUS i field_29971 + f F MINIMAL_RADIUS j field_40730 + f F DEFAULT_RADIUS k field_40731 + f Lnet/minecraft/world/item/alchemy/PotionContents; potionContents l field_49209 + f Ljava/util/Map; victims m field_5942 + f I duration n field_5939 + f I waitTime o field_5941 + f I reapplicationDelay p field_5937 + f I durationOnUse q field_5932 + f F radiusOnUse r field_5929 + f F radiusPerTick s field_5930 + f Lnet/minecraft/world/entity/LivingEntity; owner t field_5943 + f Ljava/util/UUID; ownerUUID u field_5940 + m (F)V setRadius a method_5603 + p 1 radius + m (I)V setDuration a method_5604 + p 1 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;)V addEffect a method_5610 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;)V setOwner a method_5607 + p 1 owner + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V setPotionContents a method_57280 + p 1 potionContents + m (Ljava/util/Map$Entry;)Z method_32874 a method_32874 + m (Lnet/minecraft/core/particles/ParticleOptions;)V setParticle a method_5608 + p 1 particleOption + m (Z)V setWaiting a method_5598 + c Sets if the cloud is waiting. While waiting, the radius is ignored and the cloud shows fewer particles in its area. + p 1 waiting + m (F)V setRadiusOnUse b method_5609 + p 1 radiusOnUse + m (I)V setDurationOnUse b method_35043 + p 1 durationOnUse + m (F)V setRadiusPerTick c method_5596 + p 1 radiusPerTick + m (I)V setWaitTime c method_5595 + p 1 waitTime + m (I)I method_48564 d method_48564 + m (Ljava/lang/String;)V method_57281 d method_57281 + m (Ljava/lang/String;)V method_59654 e method_59654 + m ()F getRadius g method_5599 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle h method_5600 + m ()Z isWaiting i method_5611 + c Returns {@code true} if the cloud is waiting. While waiting, the radius is ignored and the cloud shows fewer particles in its area. + m ()I getDuration j method_5605 + m ()F getRadiusOnUse k method_35044 + m ()F getRadiusPerTick m method_35045 + m ()I getDurationOnUse o method_35046 + m ()I getWaitTime p method_35047 + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner q method_5601 + m ()V updateColor t method_5597 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/Attackable bso net/minecraft/class_8149 + m ()Lnet/minecraft/world/entity/LivingEntity; getLastAttacker Y_ method_49107 +c net/minecraft/world/entity/Crackiness bsp net/minecraft/class_9273 + f Lnet/minecraft/world/entity/Crackiness; GOLEM a field_49210 + f Lnet/minecraft/world/entity/Crackiness; WOLF_ARMOR b field_49211 + f F fractionLow c field_49212 + f F fractionMedium d field_49213 + f F fractionHigh e field_49214 + m (F)Lnet/minecraft/world/entity/Crackiness$Level; byFraction a method_57282 + p 1 fraction + m (II)Lnet/minecraft/world/entity/Crackiness$Level; byDamage a method_57283 + p 1 damage + p 2 durability + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/Crackiness$Level; byDamage a method_57284 + p 1 stack + m (FFF)V + p 1 fractionLow + p 2 fractionMedium + p 3 fractionHigh + m ()V +c net/minecraft/world/entity/Crackiness$Level bsp$a net/minecraft/class_9273$class_4621 + f Lnet/minecraft/world/entity/Crackiness$Level; NONE a field_21081 + f Lnet/minecraft/world/entity/Crackiness$Level; LOW b field_21082 + f Lnet/minecraft/world/entity/Crackiness$Level; MEDIUM c field_21083 + f Lnet/minecraft/world/entity/Crackiness$Level; HIGH d field_21084 + f [Lnet/minecraft/world/entity/Crackiness$Level; $VALUES e field_21085 + m ()[Lnet/minecraft/world/entity/Crackiness$Level; $values a method_36638 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/Display bsq net/minecraft/class_8113 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_ROTATION_ID aD field_42367 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BILLBOARD_RENDER_CONSTRAINTS_ID aE field_42368 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BRIGHTNESS_OVERRIDE_ID aF field_42369 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VIEW_RANGE_ID aG field_42370 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHADOW_RADIUS_ID aH field_42371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHADOW_STRENGTH_ID aI field_42372 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WIDTH_ID aJ field_42373 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEIGHT_ID aK field_42374 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_GLOW_COLOR_OVERRIDE_ID aL field_42375 + f Lit/unimi/dsi/fastutil/ints/IntSet; RENDER_STATE_IDS aM field_43180 + f F INITIAL_SHADOW_RADIUS aN field_42376 + f F INITIAL_SHADOW_STRENGTH aO field_42377 + f I NO_GLOW_COLOR_OVERRIDE aP field_42378 + f J interpolationStartClientTick aQ field_42620 + f I interpolationDuration aR field_43181 + f F lastProgress aS field_43135 + f Lnet/minecraft/world/phys/AABB; cullingBoundingBox aT field_42383 + f Z updateStartTick aU field_43182 + f Z updateInterpolationDuration aV field_43183 + f Lnet/minecraft/world/entity/Display$RenderState; renderState aW field_43184 + f Lnet/minecraft/world/entity/Display$PosRotInterpolationTarget; posRotInterpolationTarget aX field_45108 + f I NO_BRIGHTNESS_OVERRIDE b field_42384 + f Ljava/lang/String; TAG_POS_ROT_INTERPOLATION_DURATION c field_45109 + f Ljava/lang/String; TAG_TRANSFORMATION_INTERPOLATION_DURATION d field_45110 + f Ljava/lang/String; TAG_TRANSFORMATION_START_INTERPOLATION e field_45111 + f Ljava/lang/String; TAG_TRANSFORMATION f field_42387 + f Ljava/lang/String; TAG_BILLBOARD g field_42388 + f Ljava/lang/String; TAG_BRIGHTNESS h field_42389 + f Ljava/lang/String; TAG_VIEW_RANGE i field_42390 + f Ljava/lang/String; TAG_SHADOW_RADIUS j field_42391 + f Ljava/lang/String; TAG_SHADOW_STRENGTH k field_42392 + f Ljava/lang/String; TAG_WIDTH l field_42393 + f Ljava/lang/String; TAG_HEIGHT m field_42394 + f Ljava/lang/String; TAG_GLOW_COLOR_OVERRIDE n field_42395 + f Z updateRenderState o field_43185 + f Lorg/slf4j/Logger; LOGGER p field_42397 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSFORMATION_INTERPOLATION_START_DELTA_TICKS_ID q field_45112 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSFORMATION_INTERPOLATION_DURATION_ID r field_45113 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_POS_ROT_INTERPOLATION_DURATION_ID s field_45114 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSLATION_ID t field_42401 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SCALE_ID u field_42402 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_ROTATION_ID v field_42403 + m ()F getShadowRadius A method_48870 + m ()F getShadowStrength B method_48871 + m ()F getWidth C method_48874 + m ()I getGlowColorOverride D method_48876 + m ()F getHeight E method_48877 + m ()V updateCulling F method_48878 + m ()Lnet/minecraft/world/entity/Display$RenderState; createFreshRenderState H method_49774 + m (F)F calculateInterpolationProgress a method_48844 + p 1 partialTick + m (Lnet/minecraft/network/syncher/SynchedEntityData;)Lcom/mojang/math/Transformation; createTransformation a method_48845 + p 0 synchedEntityData + m (Lnet/minecraft/util/Brightness;)V setBrightnessOverride a method_48846 + p 1 brightnessOverride + m (Lnet/minecraft/world/entity/Display$BillboardConstraints;)V setBillboardConstraints a method_48847 + p 1 billboardConstraints + m (Lnet/minecraft/world/entity/Display$RenderState;F)Lnet/minecraft/world/entity/Display$RenderState; createInterpolatedRenderState a method_49775 + p 1 renderState + p 2 partialTick + m (Lcom/mojang/datafixers/util/Pair;)V method_48848 a method_48848 + m (Lcom/mojang/math/Transformation;)V setTransformation a method_48849 + p 1 transformation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48851 a method_48851 + m (ZF)V updateRenderSubState a method_49776 + p 1 interpolate + p 2 partialTick + m (F)V setViewRange b method_48861 + p 1 viewRange + m (I)V setTransformationInterpolationDuration b method_52524 + p 1 transformationInterpolationDuration + m (Lcom/mojang/datafixers/util/Pair;)V method_48855 b method_48855 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48856 b method_48856 + m (F)V setShadowRadius c method_48862 + p 1 shadowRadius + m (I)V setTransformationInterpolationDelay c method_52525 + p 1 transformationInterpolationDelay + m (Lcom/mojang/datafixers/util/Pair;)V method_48859 c method_48859 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48860 c method_48860 + m (I)V setPosRotInterpolationDuration d method_52526 + p 1 posRotInterpolationDuration + m (I)V setGlowColorOverride m method_48858 + p 1 glowColorOverride + m ()Lnet/minecraft/world/entity/Display$RenderState; renderState p method_49777 + m ()I getTransformationInterpolationDuration s method_52527 + m ()I getTransformationInterpolationDelay t method_52528 + m ()I getPosRotInterpolationDuration v method_52529 + m (F)V setShadowStrength v method_48872 + p 1 shadowStrength + m ()Lnet/minecraft/world/entity/Display$BillboardConstraints; getBillboardConstraints w method_48864 + m (F)V setWidth w method_48873 + p 1 width + m ()Lnet/minecraft/util/Brightness; getBrightnessOverride x method_48868 + m (F)V setHeight x method_48875 + p 1 height + m ()I getPackedBrightnessOverride y method_48865 + m ()F getViewRange z method_48869 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$BillboardConstraints bsq$a net/minecraft/class_8113$class_8114 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; FIXED a field_42406 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; VERTICAL b field_42407 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; HORIZONTAL c field_42408 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; CENTER d field_42409 + f Lcom/mojang/serialization/Codec; CODEC e field_42410 + f Ljava/util/function/IntFunction; BY_ID f field_42411 + f B id g field_42412 + f Ljava/lang/String; name h field_42413 + f [Lnet/minecraft/world/entity/Display$BillboardConstraints; $VALUES i field_42414 + m ()B getId a method_48881 + m ()[Lnet/minecraft/world/entity/Display$BillboardConstraints; $values b method_48882 + m (Ljava/lang/String;IBLjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/Display$BlockDisplay bsq$b net/minecraft/class_8113$class_8115 + f Ljava/lang/String; TAG_BLOCK_STATE p field_42415 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BLOCK_STATE_ID q field_42416 + f Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; blockRenderState r field_43186 + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_48883 + p 1 blockState + m ()Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; blockRenderState s method_49778 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState t method_48884 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$BlockDisplay$BlockRenderState bsq$b$a net/minecraft/class_8113$class_8115$class_8225 + f Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_1319 + m ()Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_1319 + m (Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/entity/Display$ColorInterpolator bsq$c net/minecraft/class_8113$class_8116 + f I previous a comp_1320 + f I current b comp_1321 + m ()I previous a comp_1320 + m ()I current b comp_1321 + m (II)V +c net/minecraft/world/entity/Display$FloatInterpolator bsq$d net/minecraft/class_8113$class_8117 + m (FF)F method_49779 a method_49779 + m (F)F get get method_48886 + p 1 partialTick +c net/minecraft/world/entity/Display$GenericInterpolator bsq$e net/minecraft/class_8113$class_8118 + m (Ljava/lang/Object;F)Ljava/lang/Object; method_49780 a method_49780 + m (F)Ljava/lang/Object; get get method_48888 + p 1 partialTick +c net/minecraft/world/entity/Display$IntInterpolator bsq$f net/minecraft/class_8113$class_8119 + m (IF)I method_49781 a method_49781 + m (F)I get get method_48889 + p 1 partialTick +c net/minecraft/world/entity/Display$ItemDisplay bsq$g net/minecraft/class_8113$class_8122 + f Ljava/lang/String; TAG_ITEM p field_42421 + f Ljava/lang/String; TAG_ITEM_DISPLAY q field_42422 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK_ID r field_42423 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_DISPLAY_ID s field_42424 + f Lnet/minecraft/world/entity/SlotAccess; slot t field_42425 + f Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; itemRenderState u field_43187 + m (Lcom/mojang/datafixers/util/Pair;)V method_48898 a method_48898 + m (Lnet/minecraft/world/item/ItemDisplayContext;)V setItemTransform a method_48896 + p 1 itemTransform + m (Lnet/minecraft/world/item/ItemStack;)V setItemStack a method_48897 + p 1 itemStack + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48899 a method_48899 + m ()Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; itemRenderState s method_49782 + m ()Lnet/minecraft/world/item/ItemStack; getItemStack t method_48900 + m ()Lnet/minecraft/world/item/ItemDisplayContext; getItemTransform v method_48901 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$ItemDisplay$ItemRenderState bsq$g$a net/minecraft/class_8113$class_8122$class_8226 + f Lnet/minecraft/world/item/ItemStack; itemStack a comp_1322 + f Lnet/minecraft/world/item/ItemDisplayContext; itemTransform b comp_1323 + m ()Lnet/minecraft/world/item/ItemStack; itemStack a comp_1322 + m ()Lnet/minecraft/world/item/ItemDisplayContext; itemTransform b comp_1323 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;)V +c net/minecraft/world/entity/Display$LinearFloatInterpolator bsq$h net/minecraft/class_8113$class_8227 + f F previous a comp_1324 + f F current b comp_1325 + m ()F previous a comp_1324 + m ()F current b comp_1325 + m (FF)V +c net/minecraft/world/entity/Display$LinearIntInterpolator bsq$i net/minecraft/class_8113$class_8228 + f I previous a comp_1326 + f I current b comp_1327 + m ()I previous a comp_1326 + m ()I current b comp_1327 + m (II)V +c net/minecraft/world/entity/Display$PosRotInterpolationTarget bsq$j net/minecraft/class_8113$class_8639 + f I steps a field_45115 + f D targetX b field_45116 + f D targetY c field_45117 + f D targetZ d field_45118 + f D targetYRot e field_45119 + f D targetXRot f field_45120 + m (Lnet/minecraft/world/entity/Entity;)V applyTargetPosAndRot a method_52530 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V applyLerpStep b method_52531 + p 1 entity + m (IDDDDD)V + p 1 steps + p 2 targetX + p 4 targetY + p 6 targetZ + p 8 targetYRot + p 10 targetXRot +c net/minecraft/world/entity/Display$RenderState bsq$k net/minecraft/class_8113$class_8229 + f Lnet/minecraft/world/entity/Display$GenericInterpolator; transformation a comp_1328 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; billboardConstraints b comp_1329 + f I brightnessOverride c comp_1330 + f Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowRadius d comp_1331 + f Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowStrength e comp_1332 + f I glowColorOverride f comp_1333 + m ()Lnet/minecraft/world/entity/Display$GenericInterpolator; transformation a comp_1328 + m ()Lnet/minecraft/world/entity/Display$BillboardConstraints; billboardConstraints b comp_1329 + m ()I brightnessOverride c comp_1330 + m ()Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowRadius d comp_1331 + m ()Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowStrength e comp_1332 + m ()I glowColorOverride f comp_1333 + m (Lnet/minecraft/world/entity/Display$GenericInterpolator;Lnet/minecraft/world/entity/Display$BillboardConstraints;ILnet/minecraft/world/entity/Display$FloatInterpolator;Lnet/minecraft/world/entity/Display$FloatInterpolator;I)V +c net/minecraft/world/entity/Display$TextDisplay bsq$l net/minecraft/class_8113$class_8123 + f Ljava/lang/String; TAG_LINE_WIDTH aD field_42427 + f Ljava/lang/String; TAG_TEXT_OPACITY aE field_42428 + f Ljava/lang/String; TAG_BACKGROUND_COLOR aF field_42429 + f Ljava/lang/String; TAG_SHADOW aG field_42430 + f Ljava/lang/String; TAG_SEE_THROUGH aH field_42431 + f Ljava/lang/String; TAG_USE_DEFAULT_BACKGROUND aI field_42432 + f Ljava/lang/String; TAG_ALIGNMENT aJ field_42433 + f B INITIAL_TEXT_OPACITY aK field_42434 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TEXT_ID aL field_42435 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LINE_WIDTH_ID aM field_42436 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BACKGROUND_COLOR_ID aN field_42437 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TEXT_OPACITY_ID aO field_42438 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STYLE_FLAGS_ID aP field_42439 + f Lit/unimi/dsi/fastutil/ints/IntSet; TEXT_RENDER_STATE_IDS aQ field_43188 + f Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; clientDisplayCache aR field_42442 + f Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; textRenderState aS field_43189 + f Ljava/lang/String; TAG_TEXT p field_42443 + f B FLAG_SHADOW q field_42444 + f B FLAG_SEE_THROUGH r field_42445 + f B FLAG_USE_DEFAULT_BACKGROUND s field_42446 + f B FLAG_ALIGN_LEFT t field_42447 + f B FLAG_ALIGN_RIGHT u field_42448 + f I INITIAL_BACKGROUND v field_42449 + m (B)Lnet/minecraft/world/entity/Display$TextDisplay$Align; getAlign a method_48902 + p 0 flags + m (BLnet/minecraft/nbt/CompoundTag;Ljava/lang/String;B)B loadFlag a method_48903 + p 0 currentValue + p 1 tag + p 2 flag + p 3 mask + m (Lnet/minecraft/world/entity/Display$TextDisplay$LineSplitter;)Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; cacheDisplay a method_48905 + p 1 splitter + m (Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState;F)Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; createInterpolatedTextRenderState a method_49783 + p 1 renderState + p 2 partialTick + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48906 a method_48906 + m (BLnet/minecraft/nbt/CompoundTag;Ljava/lang/String;B)V storeFlag b method_48907 + p 0 currentValue + p 1 tag + p 2 flag + p 3 mask + m (I)V setLineWidth b method_48908 + p 1 lineWidth + m (B)V setTextOpacity c method_48909 + p 1 textOpacity + m (I)V setBackgroundColor c method_48910 + p 1 backgroundColor + m (Lnet/minecraft/network/chat/Component;)V setText c method_48911 + p 1 text + m (B)V setFlags d method_48912 + p 1 flags + m ()Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; textRenderState s method_49784 + m ()Lnet/minecraft/network/chat/Component; getText t method_48915 + m ()I getLineWidth v method_48916 + m ()B getTextOpacity w method_48918 + m ()I getBackgroundColor x method_48919 + m ()B getFlags y method_48917 + m ()Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; createFreshTextRenderState z method_49785 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$TextDisplay$Align bsq$l$a net/minecraft/class_8113$class_8123$class_8124 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; CENTER a field_42450 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; LEFT b field_42451 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; RIGHT c field_42452 + f Lcom/mojang/serialization/Codec; CODEC d field_42453 + f Ljava/lang/String; name e field_42454 + f [Lnet/minecraft/world/entity/Display$TextDisplay$Align; $VALUES f field_42455 + m ()[Lnet/minecraft/world/entity/Display$TextDisplay$Align; $values a method_48920 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/entity/Display$TextDisplay$CachedInfo bsq$l$b net/minecraft/class_8113$class_8123$class_8125 + f Ljava/util/List; lines a comp_1247 + f I width b comp_1248 + m ()Ljava/util/List; lines a comp_1247 + m ()I width b comp_1248 + m (Ljava/util/List;I)V +c net/minecraft/world/entity/Display$TextDisplay$CachedLine bsq$l$c net/minecraft/class_8113$class_8123$class_8126 + f Lnet/minecraft/util/FormattedCharSequence; contents a comp_1249 + f I width b comp_1250 + m ()Lnet/minecraft/util/FormattedCharSequence; contents a comp_1249 + m ()I width b comp_1250 + m (Lnet/minecraft/util/FormattedCharSequence;I)V +c net/minecraft/world/entity/Display$TextDisplay$LineSplitter bsq$l$d net/minecraft/class_8113$class_8123$class_8127 +c net/minecraft/world/entity/Display$TextDisplay$TextRenderState bsq$l$e net/minecraft/class_8113$class_8123$class_8230 + f Lnet/minecraft/network/chat/Component; text a comp_1334 + f I lineWidth b comp_1335 + f Lnet/minecraft/world/entity/Display$IntInterpolator; textOpacity c comp_1336 + f Lnet/minecraft/world/entity/Display$IntInterpolator; backgroundColor d comp_1337 + f B flags e comp_1338 + m ()Lnet/minecraft/network/chat/Component; text a comp_1334 + m ()I lineWidth b comp_1335 + m ()Lnet/minecraft/world/entity/Display$IntInterpolator; textOpacity c comp_1336 + m ()Lnet/minecraft/world/entity/Display$IntInterpolator; backgroundColor d comp_1337 + m ()B flags e comp_1338 + m (Lnet/minecraft/network/chat/Component;ILnet/minecraft/world/entity/Display$IntInterpolator;Lnet/minecraft/world/entity/Display$IntInterpolator;B)V +c net/minecraft/world/entity/Display$TransformationInterpolator bsq$m net/minecraft/class_8113$class_8231 + f Lcom/mojang/math/Transformation; previous a comp_1339 + f Lcom/mojang/math/Transformation; current b comp_1340 + m ()Lcom/mojang/math/Transformation; previous a comp_1339 + m (F)Lcom/mojang/math/Transformation; get a method_49786 + m ()Lcom/mojang/math/Transformation; current b comp_1340 + m (Lcom/mojang/math/Transformation;Lcom/mojang/math/Transformation;)V +c net/minecraft/world/entity/Entity bsr net/minecraft/class_1297 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f I TOTAL_AIR_SUPPLY A field_29988 + f I MAX_ENTITY_TAG_COUNT B field_29989 + f F DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2 C field_44870 + f D DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5 D field_44871 + f D DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0 E field_44872 + f I BASE_TICKS_REQUIRED_TO_FREEZE F field_29992 + f I FREEZE_HURT_FREQUENCY G field_29993 + f I BASE_SAFE_FALL_DISTANCE H field_49073 + f Ljava/lang/String; UUID_TAG I field_29994 + f Z blocksBuilding J field_23807 + f I boardingCooldown K field_5951 + f D xo L field_6014 + f D yo M field_6036 + f D zo N field_5969 + f F yRotO O field_5982 + f F xRotO P field_6004 + f Z horizontalCollision Q field_5976 + f Z verticalCollision R field_5992 + f Z verticalCollisionBelow S field_36331 + f Z minorHorizontalCollision T field_34927 + f Z hurtMarked U field_6037 + f Lnet/minecraft/world/phys/Vec3; stuckSpeedMultiplier V field_17046 + f F DEFAULT_BB_WIDTH W field_29973 + f F DEFAULT_BB_HEIGHT X field_29974 + f F walkDistO Y field_6039 + f F walkDist Z field_5973 + f Z wasInPowderSnow aA field_28628 + f Z wasOnFire aB field_28629 + f Ljava/util/Optional; mainSupportingBlockPos aC field_44784 + f F yRot aD field_6031 + f F xRot aE field_5965 + f Lnet/minecraft/world/phys/AABB; bb aF field_6005 + f Z onGround aG field_5952 + f Lnet/minecraft/world/entity/Entity$RemovalReason; removalReason aH field_26995 + f F nextStep aI field_6003 + f I remainingFireTicks aJ field_5956 + f Ljava/util/Set; fluidOnEyes aK field_25599 + f I FLAG_SHIFT_KEY_DOWN aL field_29975 + f I FLAG_SPRINTING aM field_29976 + f I FLAG_SWIMMING aN field_29977 + f I FLAG_INVISIBLE aO field_29978 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_AIR_SUPPLY_ID aP field_6032 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CUSTOM_NAME aQ field_6027 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CUSTOM_NAME_VISIBLE aR field_5975 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SILENT aS field_5962 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_NO_GRAVITY aT field_5995 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TICKS_FROZEN aU field_27858 + f Lnet/minecraft/world/level/entity/EntityInLevelCallback; levelCallback aV field_26996 + f Lnet/minecraft/network/protocol/game/VecDeltaCodec; packetPositionCodec aW field_38931 + f I portalCooldown aX field_6018 + f Z invulnerable aY field_6009 + f Z hasGlowingTag aZ field_5958 + f F moveDist aa field_5994 + f F flyDist ab field_28627 + f F fallDistance ac field_6017 + f D xOld ad field_6038 + f D yOld ae field_5971 + f D zOld af field_5989 + f Z noPhysics ag field_5960 + f Lnet/minecraft/util/RandomSource; random ah field_5974 + f I tickCount ai field_6012 + f Z wasTouchingWater aj field_5957 + f Lit/unimi/dsi/fastutil/objects/Object2DoubleMap; fluidHeight ak field_5964 + f Z wasEyeInWater al field_6000 + f I invulnerableTime am field_6008 + f Z firstTick an field_5953 + f Lnet/minecraft/network/syncher/SynchedEntityData; entityData ao field_6011 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHARED_FLAGS_ID ap field_5990 + f I FLAG_ONFIRE aq field_29979 + f I FLAG_GLOWING ar field_29980 + f I FLAG_FALL_FLYING as field_29981 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_POSE at field_18064 + f Z noCulling au field_5985 + f Z hasImpulse av field_6007 + f Lnet/minecraft/world/entity/PortalProcessor; portalProcess aw field_51994 + f Ljava/util/UUID; uuid ax field_6021 + f Ljava/lang/String; stringUUID ay field_5981 + f Z isInPowderSnow az field_27857 + f Lorg/slf4j/Logger; LOGGER b field_5955 + f Ljava/util/Set; tags ba field_6029 + f [D pistonDeltas bb field_5993 + f J pistonDeltasGameTime bc field_5996 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions bd field_18065 + f F eyeHeight be field_18066 + f Z onGroundNoBlocks bf field_44873 + f F crystalSoundIntensity bg field_26997 + f I lastCrystalSoundPlayTick bh field_26994 + f Z hasVisualFire bi field_33758 + f Lnet/minecraft/world/level/block/state/BlockState; inBlockState bj field_47742 + f Ljava/util/concurrent/atomic/AtomicInteger; ENTITY_COUNTER c field_5978 + f Lnet/minecraft/world/phys/AABB; INITIAL_AABB d field_6025 + f D WATER_FLOW_SCALE e field_29984 + f D LAVA_FAST_FLOW_SCALE k field_29982 + f D LAVA_SLOW_FLOW_SCALE l field_29983 + f D viewScale m field_5999 + f Lnet/minecraft/world/entity/EntityType; type n field_5961 + f I id o field_5986 + f Lcom/google/common/collect/ImmutableList; passengers p field_5979 + f Lnet/minecraft/world/entity/Entity; vehicle q field_6034 + f Lnet/minecraft/world/level/Level; level r field_6002 + f Lnet/minecraft/world/phys/Vec3; position s field_22467 + f Lnet/minecraft/core/BlockPos; blockPosition t field_22468 + f Lnet/minecraft/world/level/ChunkPos; chunkPosition u field_35101 + f Lnet/minecraft/world/phys/Vec3; deltaMovement v field_18276 + f Ljava/lang/String; ID_TAG w field_29985 + f Ljava/lang/String; PASSENGERS_TAG x field_29986 + f I CONTENTS_SLOT_INDEX y field_49791 + f I BOARDING_COOLDOWN z field_29987 + m (Lnet/minecraft/world/entity/Entity;)Z method_37217 A method_37217 + m ()Z isInBubbleColumn F method_5798 + m ()I getPermissionLevel G method_5691 + m ()V updateFluidOnEyes H method_5630 + m ()V teleportPassengers I method_49792 + m ()Ljava/util/stream/Stream; getIndirectPassengersStream J method_31484 + m ()Ljava/util/Iterator; method_31485 K method_31485 + m ()Ljava/lang/String; method_5849 L method_5849 + m ()V processPortalCooldown M method_5760 + c Decrements the counter for the remaining time until the entity may use a portal again. + m ()Ljava/lang/String; method_5766 N method_5766 + m ()Ljava/lang/String; method_5689 O method_5689 + m ()Ljava/lang/String; method_5761 P method_5761 + m ()D lerpTargetZ P_ method_53828 + m ()F lerpTargetXRot Q_ method_53829 + m ()Z isSpectator R_ method_7325 + c Returns {@code true} if the player is in spectator mode. + m (D)Z shouldRenderAtSqrDistance a method_5640 + c Checks if the entity is in range to render. + p 1 distance + m (DDD)V dismountTo a method_33567 + p 1 x + p 3 y + p 5 z + m (DDDFF)V absMoveTo a method_5641 + c Sets position and rotation, clamping and wrapping params to valid values. Used by network code. + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + m (DDDFFI)V lerpTo a method_5759 + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 steps + m (DDF)Lnet/minecraft/world/phys/Vec3; getCollisionHorizontalEscapeVector a method_24826 + p 0 vehicleWidth + p 2 passengerWidth + p 4 yRot + m (DFZ)Lnet/minecraft/world/phys/HitResult; pick a method_5745 + p 1 hitDistance + p 3 partialTicks + p 4 hitFluids + m (DZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V checkFallDamage a method_5623 + p 1 y + p 3 onGround + p 4 state + p 5 pos + m (FF)V setRot a method_5710 + c Sets the rotation of the entity. + p 1 yRot + p 2 xRot + m (FFLnet/minecraft/world/damagesource/DamageSource;)Z causeFallDamage a method_5747 + p 1 fallDistance + p 2 multiplier + p 3 source + m (FI)V lerpHeadTo a method_5683 + p 1 yaw + p 2 pitch + m (FLnet/minecraft/world/phys/Vec3;)V moveRelative a method_5724 + p 1 amount + p 2 relative + m (IDDDDD)V lerpPositionAndRotationStep a method_52532 + p 1 steps + p 2 targetX + p 4 targetY + p 6 targetZ + p 8 targetYRot + p 10 targetXRot + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)V recreateFromPacket a method_31471 + p 1 packet + m (Lnet/minecraft/network/syncher/SynchedEntityData$Builder;)V defineSynchedData a method_5693 + p 1 builder + m (Lnet/minecraft/server/level/ServerEntity;)Lnet/minecraft/network/protocol/Packet; getAddEntityPacket a method_18002 + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;DDDLjava/util/Set;FF)Z teleportTo a method_48105 + p 1 level + p 2 x + p 4 y + p 6 z + p 8 relativeMovements + p 9 yRot + p 10 xRot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LightningBolt;)V thunderHit a method_5800 + p 1 level + p 2 lightning + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z killedEntity a method_5874 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; adjustSpawnLocation a method_14245 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z broadcastToPlayer a method_5680 + p 1 player + m (Lnet/minecraft/sounds/SoundEvent;)V playSound a method_43077 + p 1 sound + m (Lnet/minecraft/sounds/SoundEvent;FF)V playSound a method_5783 + p 1 sound + p 2 volume + p 3 pitch + m (Lnet/minecraft/tags/TagKey;)Z isEyeInFluid a method_5777 + p 1 fluidTag + m (Lnet/minecraft/tags/TagKey;D)Z updateFluidHeightAndDoFluidPushing a method_5692 + p 1 fluidTag + p 2 motionScale + m (Lnet/minecraft/world/damagesource/DamageSource;F)Z hurt a method_5643 + c Called when the entity is attacked. + p 1 source + p 2 amount + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V remove a method_5650 + p 1 reason + m (Lnet/minecraft/world/entity/Entity;)V onExplosionHit a method_56918 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;D)Z closerThan a method_24516 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/Entity;DD)Z closerThan a method_43259 + p 1 entity + p 2 horizontalDistance + p 4 verticalDistance + m (Lnet/minecraft/world/entity/Entity;ILnet/minecraft/world/damagesource/DamageSource;)V awardKillScore a method_5716 + p 1 killed + p 2 scoreValue + p 3 source + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity$MoveFunction;)V positionRider a method_5865 + p 1 passenger + p 2 callback + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_31475 a method_31475 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityAttachments;)Lnet/minecraft/world/phys/Vec3; getDefaultPassengerAttachmentPoint a method_55665 + p 0 vehicle + p 1 passenger + p 2 attachments + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityDimensions;F)Lnet/minecraft/world/phys/Vec3; getPassengerAttachmentPoint a method_52533 + p 1 entity + p 2 dimensions + p 3 partialTick + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Ljava/util/List;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; collectColliders a method_59920 + p 0 entity + p 1 level + p 2 collisions + p 3 boundingBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/level/Level;Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; collideBoundingBox a method_20736 + p 0 entity + p 1 vec + p 2 collisionBox + p 3 level + p 4 potentialHits + m (Lnet/minecraft/world/entity/Entity;Z)Z startRiding a method_5873 + p 1 vehicle + p 2 force + m (Lnet/minecraft/world/entity/EntityDimensions;)Z fudgePositionAfterSizeChange a method_60490 + p 1 dimensions + m (Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V move a method_5784 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/entity/EntityDimensions; getDimensions a method_18377 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interact a method_5688 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactAt a method_5664 + c Applies the given player interaction to this Entity. + p 1 player + p 2 vec + p 3 hand + m (Lnet/minecraft/world/entity/projectile/Projectile;)Lnet/minecraft/world/entity/projectile/ProjectileDeflection; deflection a method_56071 + p 1 projectile + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/phys/Vec3; getHandHoldingItemAngle a method_40123 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;F)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5699 + c Drops an item at the position of the entity. + p 1 stack + p 2 offsetY + m (Lnet/minecraft/world/level/Explosion;)Z ignoreExplosion a method_5659 + p 1 explosion + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)Z shouldBlockExplode a method_5853 + p 1 explosion + p 2 level + p 3 pos + p 4 blockState + p 5 explosionPower + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;F)F getBlockExplosionResistance a method_5774 + c Explosion resistance of a block relative to this entity + p 1 explosion + p 2 level + p 3 pos + p 4 blockState + p 5 fluidState + p 6 explosionPower + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5706 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5870 + p 1 item + p 2 offsetY + m (Lnet/minecraft/world/level/Level;)V setLevel a method_51502 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/Level;)Z canChangeDimensions a method_61113 + p 1 oldLevel + p 2 newLevel + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z mayInteract a method_36971 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Mirror;)F mirror a method_5763 + c Transforms the entity's current yaw with the given Mirror and returns it. This does not have a side-effect. + p 1 transformMirror + m (Lnet/minecraft/world/level/block/Portal;Lnet/minecraft/core/BlockPos;)V setAsInsidePortal a method_60697 + p 1 portal + p 2 pos + m (Lnet/minecraft/world/level/block/Rotation;)F rotate a method_5832 + c Transforms the entity's current yaw with the given Rotation and returns it. This does not have a side-effect. + p 1 transformRotation + m (Lnet/minecraft/world/level/block/state/BlockState;)V onInsideBlock a method_5622 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V playCombinationStepSounds a method_49787 + p 1 primaryState + p 2 secondaryState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V makeStuckInBlock a method_5844 + p 1 state + p 2 motionMultiplier + m (Lnet/minecraft/world/level/portal/DimensionTransition;)Lnet/minecraft/world/entity/Entity; changeDimension a method_5731 + p 1 transition + m (Lnet/minecraft/world/phys/AABB;)V setBoundingBox a method_5857 + p 1 bb + m (Lnet/minecraft/world/phys/AABB;Ljava/util/List;FF)[F collectCandidateStepUpHeights a method_59921 + p 0 box + p 1 colliders + p 2 deltaY + p 3 maxUpStep + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/BlockPos;)Z method_30022 a method_30022 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; collide a method_17835 + c Given a motion vector, return an updated vector that takes into account restrictions such as collisions (from all directions) and step-up from stepHeight + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;FF)V moveTo a method_60949 + p 1 pos + p 2 yRot + p 3 xRot + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/MoverType;)Lnet/minecraft/world/phys/Vec3; maybeBackOffFromEdge a method_18796 + p 1 vec + p 2 mover + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; collideWithShapes a method_20737 + p 0 deltaMovement + p 1 entityBB + p 2 shapes + m (Lnet/minecraft/world/scores/Team;)Z isAlliedTo a method_5645 + c Returns whether this Entity is on the given scoreboard team. + p 1 team + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/phys/Vec3;)V lookAt a method_5702 + p 1 anchor + p 2 target + m (Ljava/lang/String;)Z addTag a method_5780 + p 1 tag + m (Ljava/util/function/BiConsumer;)V updateDynamicGameEventListener a method_42147 + p 1 listenerConsumer + m (Ljava/util/function/Predicate;)Z hasPassenger a method_5703 + p 1 predicate + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; method_51700 a method_51700 + m (Lnet/minecraft/core/BlockPos;FF)V moveTo a method_5725 + p 1 pos + p 2 yRot + p 3 xRot + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isColliding a method_30632 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZLnet/minecraft/world/phys/Vec3;)Z vibrationAndSoundEffectsFromBlock a method_51701 + p 1 pos + p 2 state + p 3 playStepSound + p 4 broadcastGameEvent + p 5 entityPos + m (Lnet/minecraft/core/Direction$Axis;D)D applyPistonMovementRestriction a method_18797 + p 1 axis + p 2 distance + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/BlockUtil$FoundRectangle;)Lnet/minecraft/world/phys/Vec3; getRelativePortalPosition a method_30633 + p 1 axis + p 2 portal + m (Lnet/minecraft/core/Holder;)V gameEvent a method_32876 + p 1 gameEvent + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)V gameEvent a method_32875 + p 1 gameEvent + p 2 entity + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_5819 + p 1 category + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData a method_5749 + c (abstract) Protected helper method to read subclass entity data from NBT. + p 1 compound + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_5813 a method_5813 + m (ZLnet/minecraft/world/phys/Vec3;)V setOnGroundWithMovement a method_60607 + p 1 onGround + p 2 movement + m ([D)Lnet/minecraft/nbt/ListTag; newDoubleList a method_5846 + c creates a NBT list from the array of doubles passed to this function + p 1 numbers + m ([F)Lnet/minecraft/nbt/ListTag; newFloatList a method_5726 + c Returns a new NBTTagList filled with the specified floats + p 1 numbers + m ()Z isOnPortalCooldown aA method_30230 + m ()V lavaHurt aB method_5730 + c Called whenever the entity is walking inside of lava. + m ()I getRemainingFireTicks aC method_20802 + m ()V clearFire aD method_5646 + c Removes fire from entity. + m ()V onBelowWorld aE method_5825 + m ()Z onGround aF method_24828 + m ()V tryCheckInsideBlocks aG method_36974 + m ()V playEntityOnFireExtinguishedSound aH method_36975 + m ()V extinguishFire aI method_46395 + m ()V processFlappingMovement aJ method_33573 + m ()Lnet/minecraft/core/BlockPos; getOnPosLegacy aK method_43260 + m ()Lnet/minecraft/core/BlockPos; getBlockPosBelowThatAffectsMyMovement aL method_23314 + m ()Lnet/minecraft/core/BlockPos; getOnPos aM method_23312 + m ()F getBlockJumpFactor aN method_23313 + m ()F getBlockSpeedFactor aO method_23326 + m ()F nextStep aP method_5867 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimSound aQ method_5737 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimSplashSound aR method_5625 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimHighSpeedSplashSound aS method_5672 + m ()V checkInsideBlocks aT method_5852 + m ()V waterSwimSound aU method_51295 + m ()V onFlap aV method_5801 + m ()Z isFlapping aW method_5776 + m ()Z isSilent aX method_5701 + c @return True if this entity will not play sounds + m ()Z isNoGravity aY method_5740 + m ()D getDefaultGravity aZ method_7490 + m (DDD)V setPos a_ method_5814 + c Sets the x,y,z of the entity from the given parameters. Also seems to set up a bounding box. + p 1 x + p 3 y + p 5 z + m (I)Lnet/minecraft/world/entity/SlotAccess; getSlot a_ method_32318 + p 1 slot + m (Ljava/util/UUID;)V setUUID a_ method_5826 + p 1 uniqueId + m ()V stopRiding ad method_5848 + c Dismounts this entity from the entity it is riding. + m ()Lnet/minecraft/world/phys/Vec3; getKnownMovement ag method_60478 + m ()V unRide ak method_18375 + m ()Lnet/minecraft/network/protocol/game/VecDeltaCodec; getPositionCodec al method_43389 + m ()Lnet/minecraft/world/entity/EntityType; getType am method_5864 + m ()Ljava/util/Set; getTags ao method_5752 + m ()V kill ap method_5768 + c Called by the /kill command. + m ()V discard aq method_31472 + m ()Lnet/minecraft/network/syncher/SynchedEntityData; getEntityData ar method_5841 + m ()V onClientRemoval as method_36209 + m ()Lnet/minecraft/world/entity/Pose; getPose at method_18376 + m ()Lnet/minecraft/world/phys/AABB; makeBoundingBox au method_33332 + m ()V reapplyPosition av method_23311 + c Recomputes this entity's bounding box so that it is positioned at this entity's X/Y/Z. + m ()V baseTick aw method_5670 + c Gets called every tick from main Entity class + m ()V checkBelowWorld ax method_31473 + m ()V setPortalCooldown ay method_30229 + m ()I getPortalCooldown az method_51848 + m (B)V handleEntityEvent b method_5711 + c Handles an entity event received from a {@link net.minecraft.network.protocol.game.ClientboundEntityEventPacket}. + p 1 id + m (D)V setViewScale b method_5840 + p 0 renderDistWeight + m (DD)V turn b method_5872 + p 1 yRot + p 3 xRot + m (DDDFF)V moveTo b method_5808 + c Sets the location and rotation of the entity in the world. + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + m (FF)V absRotateTo b method_60608 + p 1 yRot + p 2 xRot + m (IZ)V setSharedFlag b method_5729 + c Enable or disable an entity flag, see {@link #getEntityFlag} to read the known flags. + p 1 flag + p 2 set + m (Lnet/minecraft/tags/TagKey;)D getFluidHeight b method_5861 + p 1 fluidTag + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isInvulnerableTo b method_5679 + c Returns whether this Entity is invulnerable to the given DamageSource. + p 1 source + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getDismountLocationForPassenger b method_24829 + p 1 passenger + m (Lnet/minecraft/world/entity/Pose;)V setPose b method_18380 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation b method_5775 + p 1 stack + m (Lnet/minecraft/world/level/block/state/BlockState;)V playMuffledStepSound b method_51296 + p 1 state + m (Lnet/minecraft/world/phys/AABB;)Z isFree b method_5629 + c Determines if the entity has no collision with a block or a liquid within the specified bounding box. + p 1 box + m (Lnet/minecraft/world/phys/Vec3;FF)Lnet/minecraft/world/phys/Vec3; getInputVector b method_18795 + p 0 relative + p 1 motionScaler + p 2 facing + m (Ljava/lang/String;)Z removeTag b method_5738 + p 1 tag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V playStepSound b method_5712 + p 1 pos + p 2 state + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData b method_5652 + p 1 compound + m (Lnet/minecraft/network/chat/Component;)V setCustomName b method_5665 + p 1 name + m (ZLnet/minecraft/world/phys/Vec3;)V checkSupportingBlock b method_51703 + p 1 onGround + p 2 movement + m ()Z isPickable bA method_5863 + c Returns {@code true} if other Entities should be prevented from moving through this Entity. + m ()Z isPushable bB method_5810 + c Returns {@code true} if this entity should push and be pushed by other entities when colliding. + m ()Z repositionEntityAfterLoad bC method_5638 + m ()Ljava/lang/String; getEncodeId bD method_5653 + c Returns the string that identifies this Entity's class + m ()Z isAlive bE method_5805 + c Returns {@code true} if the entity has not been {@link #removed}. + m ()Z isInWall bF method_5757 + c Checks if this entity is inside an opaque block. + m ()Z canBeCollidedWith bG method_30948 + m ()Z showVehicleHealth bH method_5709 + m ()V ejectPassengers bI method_5772 + c Dismounts all entities riding this entity from this entity. + m ()V removeVehicle bJ method_29239 + m ()Z couldAcceptPassenger bK method_48921 + m ()F getPickRadius bL method_5871 + m ()Lnet/minecraft/world/phys/Vec3; getLookAngle bM method_5720 + c Returns a (normalized) vector of where this entity is looking. + m ()Lnet/minecraft/world/phys/Vec2; getRotationVector bN method_5802 + c Returns the Entity's pitch and yaw as a {@link net.minecraft.world.phys.Vec2}. + m ()Lnet/minecraft/world/phys/Vec3; getForward bO method_5663 + m ()V handlePortal bP method_60698 + m ()I getDimensionChangingDelay bQ method_5806 + c Return the amount of cooldown before this entity can use a portal again. + m ()Z isOnFire bR method_5809 + c Returns {@code true} if the entity is on fire. Used by render to add the fire effect on rendering. + m ()Z isPassenger bS method_5765 + m ()Z isVehicle bT method_5782 + c If at least 1 entity is riding this one + m ()Z dismountsUnderwater bU method_49693 + m ()Z canControlVehicle bV method_52534 + m ()Z isShiftKeyDown bW method_5715 + m ()Z isSteppingCarefully bX method_21749 + m ()Z isSuppressingBounce bY method_21750 + m ()Z isDiscrete bZ method_21751 + m (Lnet/minecraft/world/entity/player/Player;)V playerTouch b_ method_5694 + c Called by a player entity when they collide with an entity + p 1 player + m ()D getGravity ba method_56989 + m ()V applyGravity bb method_56990 + m ()Lnet/minecraft/world/entity/Entity$MovementEmission; getMovementEmission bc method_33570 + m ()Z dampensVibrations bd method_33189 + m ()Z fireImmune be method_5753 + m ()Z isInWater bf method_5799 + c Checks if this entity is inside water (if inWater field is true as a result of handleWaterMovement() returning true) + m ()Z isInWaterOrRain bg method_5721 + c Checks if this entity is either in water or on an open air block in rain (used in wolves). + m ()Z isInWaterRainOrBubble bh method_5637 + m ()Z isInWaterOrBubble bi method_5816 + m ()Z isInLiquid bj method_52535 + m ()Z isUnderWater bk method_5869 + m ()V updateSwimming bl method_5790 + m ()Z updateInWaterStateAndDoFluidPushing bm method_5876 + m ()V updateInWaterStateAndDoWaterCurrentPushing bn method_5713 + m ()V doWaterSplashEffect bo method_5746 + c Plays the {@link #getSplashSound() splash sound}, and the {@link ParticleType#WATER_BUBBLE} and {@link ParticleType#WATER_SPLASH} particles. + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockStateOnLegacy bp method_43261 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockStateOn bq method_25936 + m ()Z canSpawnSprintParticle br method_27298 + m ()V spawnSprintParticle bs method_5839 + m ()Z isInLava bt method_5771 + m ()F getLightLevelDependentMagicValue bu method_5718 + m ()V setOldPosAndRot bv method_22862 + m ()V markHurt bw method_5785 + c Marks this entity's velocity as changed, so that it can be re-synced with the client later + m ()Lnet/minecraft/core/Direction; getNearestViewDirection bx method_58149 + m ()Lnet/minecraft/world/phys/Vec3; getEyePosition by method_33571 + m ()Z canBeHitByProjectile bz method_49108 + m (D)D getX c method_23316 + p 1 scale + m (DDD)V teleportTo c method_5859 + c Sets the position of the entity and updates the 'last' variables + p 1 x + p 3 y + p 5 z + m (FF)Lnet/minecraft/world/phys/Vec3; calculateViewVector c method_5631 + c Calculates the view vector using the X and Y rotation of an entity. + p 1 xRot + p 2 yRot + m (Lnet/minecraft/world/damagesource/DamageSource;)V handleDamageEvent c method_48922 + p 1 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z method_54756 c method_54756 + m (Lnet/minecraft/world/entity/Pose;)Z hasPose c method_41328 + p 1 pose + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStateClimbable c method_51702 + p 1 state + m (Lnet/minecraft/world/phys/Vec3;)V setPos c method_33574 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V walkingStepSound c method_51297 + p 1 pos + p 2 state + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; removeAction c method_5856 + p 0 name + m (Z)V setSharedFlagOnFire c method_33572 + p 1 isOnFire + m ()Ljava/lang/String; getStringUUID cA method_5845 + m ()Z isPushedByFluid cC method_5675 + m ()D getViewScale cD method_5824 + m ()Z isCustomNameVisible cE method_5807 + m ()Z shouldShowName cF method_5733 + m ()V fixupDimensions cG method_46396 + m ()Lnet/minecraft/core/Direction; getDirection cH method_5735 + c Gets the horizontal facing direction of this Entity. + m ()Lnet/minecraft/core/Direction; getMotionDirection cI method_5755 + c Gets the horizontal facing direction of this Entity, adjusted to take specially-treated entity types into account. + m ()Lnet/minecraft/network/chat/HoverEvent; createHoverEvent cJ method_5769 + m ()F getEyeHeight cL method_5751 + m ()Lnet/minecraft/world/phys/Vec3; getLeashOffset cM method_29919 + m ()Lnet/minecraft/world/level/Level; getCommandSenderWorld cN method_5770 + c Get the world, if available. {@code null} is not allowed! If you are not an entity in the world, return the overworld + m ()Lnet/minecraft/server/MinecraftServer; getServer cO method_5682 + c Get the Minecraft server instance + m ()Z onlyOpCanSetNbt cP method_5833 + c Checks if players can use this entity to access operator (permission level 2) commands either directly or indirectly, such as give or setblock. A similar method exists for entities at {@link net.minecraft.world.entity.Entity#onlyOpCanSetNbt()}.

For example, {@link net.minecraft.world.entity.vehicle.MinecartCommandBlock#onlyOpCanSetNbt() command block minecarts} and {@link net.minecraft.world.entity.vehicle.MinecartSpawner#onlyOpCanSetNbt() mob spawner minecarts} (spawning command block minecarts or drops) are considered accessible.

@return true if this entity offers ways for unauthorized players to use restricted commands + m ()Lnet/minecraft/world/entity/LivingEntity; getControllingPassenger cQ method_5642 + m ()Z hasControllingPassenger cR method_42148 + m ()Ljava/util/List; getPassengers cS method_5685 + m ()Lnet/minecraft/world/entity/Entity; getFirstPassenger cT method_31483 + m ()Ljava/lang/Iterable; getIndirectPassengers cW method_5736 + m ()I countPlayerPassengers cX method_54757 + m ()Z hasExactlyOnePlayerPassenger cY method_5817 + m ()Lnet/minecraft/world/entity/Entity; getRootVehicle cZ method_5668 + m ()D lerpTargetX c_ method_53830 + m ()Z isDescending ca method_21752 + m ()Z isCrouching cb method_18276 + m ()Z isSprinting cc method_5624 + c Get if the Entity is sprinting. + m ()Z isSwimming cd method_5681 + m ()Z isVisuallySwimming ce method_20232 + m ()Z isVisuallyCrawling cf method_20448 + m ()Z hasGlowingTag cg method_36361 + m ()Z isCurrentlyGlowing ch method_5851 + m ()Z isInvisible ci method_5767 + m ()Z isOnRails cj method_52172 + m ()Lnet/minecraft/world/scores/PlayerTeam; getTeam ck method_5781 + m ()I getMaxAirSupply cl method_5748 + m ()I getAirSupply cm method_5669 + m ()I getTicksFrozen cn method_32312 + m ()F getPercentFrozen co method_32313 + m ()Z isFullyFrozen cp method_32314 + m ()I getTicksRequiredToFreeze cq method_32315 + m ()V checkSlowFallDistance cr method_45318 + m ()Lnet/minecraft/network/chat/Component; getTypeName cs method_23315 + m ()F getYHeadRot ct method_5791 + m ()Z isAttackable cu method_5732 + c Returns {@code true} if it's possible to attack this entity with an item. + m ()Z isInvulnerable cv method_5655 + m ()V removeAfterChangingDimensions cw method_30076 + m ()I getMaxFallDistance cx method_5850 + c The maximum height from where the entity is allowed to jump (used in pathfinder) + m ()Z displayFireAnimation cy method_5862 + c Return whether this entity should be rendered as on fire. + m (D)D getRandomX d method_23322 + p 1 scale + m (DDD)V teleportRelative d method_45166 + p 1 dx + p 3 dy + p 5 dz + m (F)V igniteForSeconds d method_5639 + p 1 seconds + m (FF)Lnet/minecraft/world/phys/Vec3; calculateUpVector d method_18863 + p 1 xRot + p 2 yRot + m (Lnet/minecraft/server/level/ServerPlayer;)V startSeenByPlayer d method_5837 + c Add the given player to the list of players tracking this entity. For instance, a player may track a boss in order to view its associated boss bar. + p 1 serverPlayer + m (Lnet/minecraft/world/entity/Entity;)V method_49789 d method_49789 + m (Lnet/minecraft/world/entity/Pose;)F getEyeHeight d method_18381 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;)Z isInvisibleTo d method_5756 + c Only used by renderer in EntityLivingBase subclasses.\nDetermines if an entity is visible or not to a specific player, if the entity is normally invisible.\nFor EntityLivingBase subclasses, returning false when invisible will render the entity semi-transparent. + p 1 player + m (Lnet/minecraft/world/level/block/state/BlockState;)Z shouldPlayAmethystStepSound d method_49790 + p 1 state + m (Lnet/minecraft/world/phys/Vec3;)Z isHorizontalCollisionMinor d method_39759 + p 1 deltaMovement + m (Lnet/minecraft/core/BlockPos;)Z isSupportedBy d method_51849 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z saveAsPassenger d method_5786 + c Writes this entity to NBT, unless it has been removed. Also writes this entity's passengers, and the entity type ID (so the produced NBT is sufficient to recreate the entity).\n\nGenerally, {@link #writeUnlessPassenger} or {@link #writeWithoutTypeId} should be used instead of this method.\n\n@return True if the entity was written (and the passed compound should be saved)" false if the entity was not written. + p 1 compound + m (Z)V setOnGround d method_24830 + p 1 onGround + m ()V checkDespawn dA method_5982 + c Makes the entity despawn if requirements are reached + m ()Lnet/minecraft/world/item/ItemStack; getPickResult dB method_31480 + m ()Z canFreeze dC method_32316 + m ()Z isFreezing dD method_40071 + m ()F getYRot dE method_36454 + c Gets the rotation of this entity around the y-axis (the yaw) in degrees. + m ()F getVisualRotationYInDegrees dF method_43078 + m ()F getXRot dG method_36455 + c Gets the rotation of this entity around the x-axis (the pitch) in degrees. + m ()Z canSprint dH method_48155 + m ()F maxUpStep dI method_49476 + m ()Z isRemoved dJ method_31481 + m ()Lnet/minecraft/world/entity/Entity$RemovalReason; getRemovalReason dK method_35049 + m ()V unsetRemoved dL method_31482 + m ()Lnet/minecraft/world/level/Level; level dO method_37908 + m ()Lnet/minecraft/world/damagesource/DamageSources; damageSources dP method_48923 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess dQ method_56673 + m ()Lnet/minecraft/util/RandomSource; getRandom dR method_59922 + m ()Lnet/minecraft/world/item/ItemStack; getWeaponItem dS method_59958 + m ()D lerpTargetY d_ method_53827 + m ()Z isControlledByLocalInstance da method_5787 + m ()Z isEffectiveAi db method_6034 + m ()Lnet/minecraft/world/entity/Entity; getVehicle dc method_5854 + c Get entity this is riding + m ()Lnet/minecraft/world/entity/Entity; getControlledVehicle dd method_49694 + m ()Lnet/minecraft/sounds/SoundSource; getSoundSource de method_5634 + m ()I getFireImmuneTicks df method_5676 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack dg method_5671 + m ()Z touchingUnloadedChunk dh method_33724 + m ()D getFluidJumpThreshold di method_29241 + m ()F getBbWidth dj method_17681 + m ()F getBbHeight dk method_17682 + m ()Lnet/minecraft/world/entity/EntityAttachments; getAttachments dl method_56072 + m ()Lnet/minecraft/world/phys/Vec3; position dm method_19538 + m ()Lnet/minecraft/world/phys/Vec3; trackingPosition dn method_43390 + m ()Lnet/minecraft/world/level/block/state/BlockState; getInBlockState dp method_55667 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPosition dq method_31476 + m ()Lnet/minecraft/world/phys/Vec3; getDeltaMovement dr method_18798 + m ()I getBlockX ds method_31477 + m ()D getX dt method_23317 + m ()I getBlockY du method_31478 + m ()D getY dv method_23318 + m ()D getRandomY dw method_23319 + m ()D getEyeY dx method_23320 + m ()I getBlockZ dy method_31479 + m ()D getZ dz method_23321 + m (D)D getY e method_23323 + p 1 scale + m (DDD)V moveTo e method_24203 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/core/BlockPos; getOnPos e method_43258 + p 1 yOffset + m (I)V setId e method_5838 + p 1 id + m (Lnet/minecraft/server/level/ServerPlayer;)V stopSeenByPlayer e method_5742 + c Removes the given player from the list of players tracking this entity. See {@link Entity#addTrackingPlayer} for more information on tracking. + p 1 serverPlayer + m (Lnet/minecraft/world/entity/Entity;)V method_37216 e method_37216 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_29494 e method_29494 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; limitPistonMovement e method_18794 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getPrimaryStepSoundBlockPos e method_49788 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z save e method_5662 + c Writes this entity to NBT, unless it has been removed or it is a passenger. Also writes this entity's passengers, and the entity type ID (so the produced NBT is sufficient to recreate the entity).\nTo always write the entity, use {@link #writeWithoutTypeId}.\n\n@return True if the entity was written (and the passed compound should be saved)" false if the entity was not written. + p 1 compound + m (Z)V setSilent e method_5803 + c When set to true the entity will not play sounds. + p 1 isSilent + m ()F lerpTargetYRot e_ method_53831 + m (D)D getZ f method_23324 + p 1 scale + m (DDD)V syncPacketPositionCodec f method_43391 + p 1 x + p 3 y + p 5 z + m (F)V playSwimSound f method_5734 + p 1 volume + m (I)V setPortalCooldown f method_51850 + p 1 portalCooldown + m (Lnet/minecraft/world/entity/Entity;)F distanceTo f method_5739 + c Returns the distance to the entity. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V moveTo f method_29495 + p 1 vec + m (Lnet/minecraft/core/BlockPos;)V placePortalTicket f method_60950 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; saveWithoutId f method_5647 + c Writes this entity, including passengers, to NBT, regardless as to whether it is removed or a passenger. Does not include the entity's type ID, so the NBT is insufficient to recreate the entity using {@link AnvilChunkLoader#readWorldEntity}. Use {@link #writeUnlessPassenger} for that purpose. + p 1 compound + m (Z)V setNoGravity f method_5875 + p 1 noGravity + m (D)D getRandomZ g method_23325 + p 1 scale + m (DDD)Z isFree g method_5654 + c Checks if the offset position from the entity's current position has a collision with a block or a liquid. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getViewVector g method_5828 + c Gets the interpolated look vector. + p 1 partialTicks + m (I)V igniteForTicks g method_56073 + p 1 ticks + m (Lnet/minecraft/world/entity/Entity;)D distanceToSqr g method_5858 + c Returns the squared distance to the entity. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr g method_5707 + p 1 vec + m (Lnet/minecraft/nbt/CompoundTag;)V load g method_5651 + c Reads the entity from NBT (calls an abstract helper method to read specialized data) + p 1 compound + m (Z)V setShiftKeyDown g method_5660 + p 1 keyDown + m (DDD)V absMoveTo h method_30634 + p 1 x + p 3 y + p 5 z + m (F)F getViewXRot h method_5695 + c Returns the current X rotation of the entity. + p 1 partialTicks + m (I)V setRemainingFireTicks h method_20803 + p 1 remainingFireTicks + m (Lnet/minecraft/world/entity/Entity;)V push h method_5697 + c Applies a velocity to the entities, to push them away from each other. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V push h method_60491 + p 1 vector + m (Z)V setSprinting h method_5728 + c Set sprinting switch for Entity. + p 1 sprinting + m ()Lnet/minecraft/world/phys/AABB; getBoundingBoxForCulling h_ method_5830 + c Gets the bounding box of this Entity, adjusted to take auxiliary entities into account (e.g. the tile contained by a minecart, such as a command block). + m (DDD)D distanceToSqr i method_5649 + c Gets the squared distance to the position. + p 1 x + p 3 y + p 5 z + m (F)F getViewYRot i method_5705 + c Returns the current Y rotation of the entity. + p 1 partialTick + m (I)Z getSharedFlag i method_5795 + c Returns {@code true} if the flag is active for the entity. Known flags: 0: burning 1: sneaking 2: unused 3: sprinting 4: swimming 5: invisible 6: glowing 7: elytra flying + p 1 flag + m (Lnet/minecraft/world/entity/Entity;)Z canCollideWith i method_30949 + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V setDeltaMovement i method_18799 + p 1 deltaMovement + m (Z)V setSwimming i method_5796 + p 1 swimming + m ()V refreshDimensions i_ method_18382 + m (DDD)V push j method_5762 + c Adds to the current velocity of the entity, and sets {@link #isAirBorne} to true. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getUpVector j method_18864 + p 1 partialTicks + m (I)V setAirSupply j method_5855 + p 1 air + m (Lnet/minecraft/world/entity/Entity;)V positionRider j method_24201 + p 1 passenger + m (Lnet/minecraft/world/phys/Vec3;)V addDeltaMovement j method_45319 + p 1 addend + m (Z)V setGlowingTag j method_5834 + p 1 hasGlowingTag + m ()Lnet/minecraft/world/level/material/PushReaction; getPistonPushReaction j_ method_5657 + m (DDD)Z shouldRender k method_5727 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getEyePosition k method_5836 + p 1 partialTicks + m (I)V setTicksFrozen k method_32317 + p 1 ticksFrozen + m (Lnet/minecraft/world/entity/Entity;)V onPassengerTurned k method_5644 + c Applies this entity's orientation to another entity. Used to update passenger orientation. + p 1 entityToUpdate + m (Z)V setInvisible k method_5648 + p 1 invisible + m ()V tick l method_5773 + c Called to update the entity's position/logic. + m (DDD)V lerpMotion l method_5750 + c Updates the entity motion clientside, called by packets from the server + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getLightProbePosition l method_31166 + p 1 partialTicks + m (I)Z hasPermissions l method_5687 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getVehicleAttachmentPoint l method_55668 + p 1 entity + m (Z)V onAboveBubbleCol l method_5700 + p 1 downwards + m (DDD)V moveTowardsClosestSpace m method_5632 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getPosition m method_30950 + p 1 partialTicks + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getPassengerRidingPosition m method_52538 + p 1 entity + m (Z)V onInsideBubbleColumn m method_5764 + p 1 downwards + m ()V resetFallDistance n method_38785 + m (DDD)V setDeltaMovement n method_18800 + p 1 x + p 3 y + p 5 z + m (F)V animateHurt n method_5879 + p 1 yaw + m (Lnet/minecraft/world/entity/Entity;)Z startRiding n method_5804 + p 1 vehicle + m (Z)V setInvulnerable n method_5684 + c Sets whether this Entity is invulnerable. + p 1 isInvulnerable + m (DDD)V setPosRaw o method_23327 + c Directly updates the {@link #posX}, {@link posY}, and {@link posZ} fields, without performing any collision checks, updating the bounding box position, or sending any packets. In general, this is not what you want and {@link #setPosition} is better, as that handles the bounding box. + p 1 x + p 3 y + p 5 z + m (F)V setYHeadRot o method_5847 + c Sets the head's Y rotation of the entity. + p 1 yHeadRot + m (Lnet/minecraft/world/entity/Entity;)Z canRide o method_5860 + p 1 vehicle + m (Z)Z canUsePortal o method_5822 + p 1 allowPassengers + m (F)V setYBodyRot p method_5636 + c Set the body Y rotation of the entity. + p 1 yBodyRot + m (Lnet/minecraft/world/entity/Entity;)V addPassenger p method_5627 + p 1 passenger + m (Z)V setCustomNameVisible p method_5880 + p 1 alwaysRenderNameTag + m (F)Lnet/minecraft/world/phys/Vec3; getLeashOffset q method_45321 + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)V removePassenger q method_5793 + p 1 passenger + m (Z)V setIsInPowderSnow q method_32319 + p 1 isInPowderSnow + m ()I getTeamColor q_ method_22861 + m (F)F getPreciseBodyRotation r method_60951 + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)Z canAddPassenger r method_5818 + p 1 passenger + m ()Z isIgnoringBlockTriggers r_ method_5696 + c Return whether this entity should NOT trigger a pressure plate or a tripwire. + m (F)Lnet/minecraft/world/phys/Vec3; getRopeHoldPosition s method_30951 + p 1 partialTicks + m (Lnet/minecraft/world/entity/Entity;)Z isAlliedTo s method_5722 + c Returns whether this Entity is on the same team as the given Entity. + p 1 entity + m (F)V setYRot t method_36456 + c Sets the rotation of this entity around the y-axis (the yaw) in degrees. + p 1 yRot + m (Lnet/minecraft/world/entity/Entity;)Z is t method_5779 + c Returns {@code true} if Entity argument is equal to this Entity + p 1 entity + m ()V rideTick u method_5842 + c Handles updating while riding another entity + m (F)V setXRot u method_36457 + c Sets the rotation of this entity around the x-axis (the pitch) in degrees. + p 1 xRot + m (Lnet/minecraft/world/entity/Entity;)Z skipAttackInteraction u method_5698 + c Called when a player attacks an entity. If this returns true the attack will not happen. + p 1 entity + m ()V playAmethystStepSound v method_37215 + m (Lnet/minecraft/world/entity/Entity;)V copyPosition v method_5719 + c Sets this entity's location and angles to the location and angles of the passed in entity. + p 1 entity + m ()Z isInRain w method_5778 + m (Lnet/minecraft/world/entity/Entity;)V restoreFrom w method_5878 + c Prepares this entity in new dimension by copying NBT data from entity in old dimension + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z hasPassenger x method_5626 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z isPassengerOfSameVehicle y method_5794 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z hasIndirectPassenger z method_5821 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Entity$1 bsr$1 net/minecraft/class_1297$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_6041 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_6040 + m ()V +c net/minecraft/world/entity/Entity$MoveFunction bsr$a net/minecraft/class_1297$class_4738 +c net/minecraft/world/entity/Entity$MovementEmission bsr$b net/minecraft/class_1297$class_5799 + f Lnet/minecraft/world/entity/Entity$MovementEmission; NONE a field_28630 + f Lnet/minecraft/world/entity/Entity$MovementEmission; SOUNDS b field_28631 + f Lnet/minecraft/world/entity/Entity$MovementEmission; EVENTS c field_28632 + f Lnet/minecraft/world/entity/Entity$MovementEmission; ALL d field_28633 + f Z sounds e field_28634 + f Z events f field_28635 + f [Lnet/minecraft/world/entity/Entity$MovementEmission; $VALUES g field_28636 + m ()Z emitsAnything a method_33576 + m ()Z emitsEvents b method_33577 + m ()Z emitsSounds c method_33578 + m ()[Lnet/minecraft/world/entity/Entity$MovementEmission; $values d method_36602 + m (Ljava/lang/String;IZZ)V + p 3 sounds + p 4 events + m ()V +c net/minecraft/world/entity/Entity$RemovalReason bsr$c net/minecraft/class_1297$class_5529 + f Lnet/minecraft/world/entity/Entity$RemovalReason; KILLED a field_26998 + f Lnet/minecraft/world/entity/Entity$RemovalReason; DISCARDED b field_26999 + f Lnet/minecraft/world/entity/Entity$RemovalReason; UNLOADED_TO_CHUNK c field_27000 + f Lnet/minecraft/world/entity/Entity$RemovalReason; UNLOADED_WITH_PLAYER d field_27001 + f Lnet/minecraft/world/entity/Entity$RemovalReason; CHANGED_DIMENSION e field_27002 + f Z destroy f field_27003 + f Z save g field_27004 + f [Lnet/minecraft/world/entity/Entity$RemovalReason; $VALUES h field_27005 + m ()Z shouldDestroy a method_31486 + m ()Z shouldSave b method_31487 + m ()[Lnet/minecraft/world/entity/Entity$RemovalReason; $values c method_36603 + m (Ljava/lang/String;IZZ)V + p 3 destroy + p 4 save + m ()V +c net/minecraft/world/entity/EntityAttachment bss net/minecraft/class_9064 + f Lnet/minecraft/world/entity/EntityAttachment; PASSENGER a field_47743 + f Lnet/minecraft/world/entity/EntityAttachment; VEHICLE b field_47744 + f Lnet/minecraft/world/entity/EntityAttachment; NAME_TAG c field_47745 + f Lnet/minecraft/world/entity/EntityAttachment; WARDEN_CHEST d field_48320 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; fallback e field_47746 + f [Lnet/minecraft/world/entity/EntityAttachment; $VALUES f field_47747 + m ()[Lnet/minecraft/world/entity/EntityAttachment; $values a method_55669 + m (FF)Ljava/util/List; createFallbackPoints a method_55670 + p 1 width + p 2 height + m (Ljava/lang/String;ILnet/minecraft/world/entity/EntityAttachment$Fallback;)V + p 3 fallback + m ()V +c net/minecraft/world/entity/EntityAttachment$Fallback bss$a net/minecraft/class_9064$class_9065 + f Ljava/util/List; ZERO a field_47748 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_FEET b field_47749 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_HEIGHT c field_47750 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_CENTER d field_48321 + m (FF)Ljava/util/List; method_56074 a method_56074 + m (FF)Ljava/util/List; method_55671 b method_55671 + m (FF)Ljava/util/List; method_55672 c method_55672 + m ()V +c net/minecraft/world/entity/EntityAttachments bst net/minecraft/class_9066 + f Ljava/util/Map; attachments a field_47752 + m ()Lnet/minecraft/world/entity/EntityAttachments$Builder; builder a method_55673 + m (FF)Lnet/minecraft/world/entity/EntityAttachments; createDefault a method_55844 + p 0 width + p 1 height + m (FFF)Lnet/minecraft/world/entity/EntityAttachments; scale a method_55674 + p 1 xScale + p 2 yScale + p 3 zScale + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; getNullable a method_55675 + p 1 attachment + p 2 index + p 3 yRot + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; transformPoint a method_55676 + p 0 point + p 1 yRot + m (Ljava/util/List;FFF)Ljava/util/List; scalePoints a method_55677 + p 0 attachmentPoints + p 1 xScale + p 2 yScale + p 3 zScale + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; get b method_55678 + p 1 attachment + p 2 index + p 3 yRot + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; getClamped c method_55679 + p 1 attachment + p 2 index + p 3 yRot + m (Ljava/util/Map;)V + p 1 attachments +c net/minecraft/world/entity/EntityAttachments$Builder bst$a net/minecraft/class_9066$class_9067 + f Ljava/util/Map; attachments a field_47753 + m (FF)Lnet/minecraft/world/entity/EntityAttachments; build a method_55680 + p 1 width + p 2 height + m (Lnet/minecraft/world/entity/EntityAttachment;)Ljava/util/List; method_55681 a method_55681 + m (Lnet/minecraft/world/entity/EntityAttachment;FFF)Lnet/minecraft/world/entity/EntityAttachments$Builder; attach a method_55682 + p 1 attachment + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityAttachment;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityAttachments$Builder; attach a method_55683 + p 1 attachment + p 2 poas + m ()V +c net/minecraft/world/entity/EntityDimensions bsu net/minecraft/class_4048 + f F width a comp_2185 + f F height b comp_2186 + f F eyeHeight c comp_2187 + f Lnet/minecraft/world/entity/EntityAttachments; attachments d comp_2188 + f Z fixed e comp_2189 + m ()F width a comp_2185 + m (DDD)Lnet/minecraft/world/phys/AABB; makeBoundingBox a method_30231 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/entity/EntityDimensions; scale a method_18383 + p 1 factor + m (FF)Lnet/minecraft/world/entity/EntityDimensions; scale a method_19539 + p 1 widthFactor + p 2 heightFactor + m (Lnet/minecraft/world/entity/EntityAttachments$Builder;)Lnet/minecraft/world/entity/EntityDimensions; withAttachments a method_55684 + p 1 attachments + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; makeBoundingBox a method_30757 + p 1 pos + m ()F height b comp_2186 + m (F)Lnet/minecraft/world/entity/EntityDimensions; withEyeHeight b method_55685 + p 1 eyeHeight + m (FF)Lnet/minecraft/world/entity/EntityDimensions; scalable b method_18384 + p 0 width + p 1 height + m ()F eyeHeight c comp_2187 + m (F)F defaultEyeHeight c method_55686 + p 0 height + m (FF)Lnet/minecraft/world/entity/EntityDimensions; fixed c method_18385 + p 0 width + p 1 height + m ()Lnet/minecraft/world/entity/EntityAttachments; attachments d comp_2188 + m ()Z fixed e comp_2189 + m (FFZ)V + p 1 width + p 2 height + p 3 fixed + m (FFFLnet/minecraft/world/entity/EntityAttachments;Z)V +c net/minecraft/world/entity/EntityEvent bsv net/minecraft/class_6024 + f B PERMISSION_LEVEL_OWNERS A field_29996 + f B ATTACK_BLOCKED B field_29997 + f B SHIELD_DISABLED C field_29998 + f B FISHING_ROD_REEL_IN D field_29999 + f B ARMORSTAND_WOBBLE E field_30000 + f B STOP_OFFER_FLOWER F field_30002 + f B TALISMAN_ACTIVATE G field_30003 + f B DOLPHIN_LOOKING_FOR_TREASURE H field_30006 + f B RAVAGER_STUNNED I field_30007 + f B TRUSTING_FAILED J field_30008 + f B TRUSTING_SUCCEEDED K field_30009 + f B VILLAGER_SWEAT L field_30010 + f B FOX_EAT M field_30013 + f B TELEPORT N field_30014 + f B MAINHAND_BREAK O field_30015 + f B OFFHAND_BREAK P field_30016 + f B HEAD_BREAK Q field_30017 + f B CHEST_BREAK R field_30018 + f B LEGS_BREAK S field_30019 + f B FEET_BREAK T field_30020 + f B HONEY_SLIDE U field_30022 + f B HONEY_JUMP V field_30023 + f B SWAP_HANDS W field_30024 + f B CANCEL_SHAKE_WETNESS X field_30025 + f B START_RAM Y field_33454 + f B END_RAM Z field_33455 + f B JUMP a field_30021 + f B POOF aa field_33691 + f B TENDRILS_SHIVER ab field_38094 + f B SONIC_CHARGE ac field_38847 + f B SNIFFER_DIGGING_SOUND ad field_42621 + f B ARMADILLO_PEEK ae field_49074 + f B BODY_BREAK af field_49215 + f B DEATH b field_30028 + f B START_ATTACKING c field_30029 + f B STOP_ATTACKING d field_30030 + f B TAMING_FAILED e field_30031 + f B TAMING_SUCCEEDED f field_30032 + f B SHAKE_WETNESS g field_30033 + f B USE_ITEM_COMPLETE h field_30034 + f B EAT_GRASS i field_30035 + f B OFFER_FLOWER j field_30036 + f B LOVE_HEARTS k field_30037 + f B VILLAGER_ANGRY l field_30038 + f B VILLAGER_HAPPY m field_30039 + f B WITCH_HAT_MAGIC n field_30040 + f B ZOMBIE_CONVERTING o field_30041 + f B FIREWORKS_EXPLODE p field_30042 + f B IN_LOVE_HEARTS q field_30043 + f B SQUID_ANIM_SYNCH r field_30044 + f B SILVERFISH_MERGE_ANIM s field_30045 + f B GUARDIAN_ATTACK_SOUND t field_30046 + f B REDUCED_DEBUG_INFO u field_30047 + f B FULL_DEBUG_INFO v field_30048 + f B PERMISSION_LEVEL_ALL w field_30049 + f B PERMISSION_LEVEL_MODERATORS x field_30050 + f B PERMISSION_LEVEL_GAMEMASTERS y field_30051 + f B PERMISSION_LEVEL_ADMINS z field_29995 + m ()V +c net/minecraft/world/entity/EntitySelector bsw net/minecraft/class_1301 + f Ljava/util/function/Predicate; ENTITY_STILL_ALIVE a field_6154 + c Selects only entities which are alive + f Ljava/util/function/Predicate; LIVING_ENTITY_STILL_ALIVE b field_6157 + c Selects only entities which are LivingEntities and alive + f Ljava/util/function/Predicate; ENTITY_NOT_BEING_RIDDEN c field_6153 + c Selects only entities which are neither ridden by anything nor ride on anything + f Ljava/util/function/Predicate; CONTAINER_ENTITY_SELECTOR d field_6152 + c Selects only entities which are container entities + f Ljava/util/function/Predicate; NO_CREATIVE_OR_SPECTATOR e field_6156 + c Selects entities which are neither creative-mode players nor spectator-players + f Ljava/util/function/Predicate; NO_SPECTATORS f field_6155 + c Selects entities which are either not players or players that are not spectating + f Ljava/util/function/Predicate; CAN_BE_COLLIDED_WITH g field_35589 + c Selects entities which are collidable with and aren't spectators + m (DDDD)Ljava/util/function/Predicate; withinDistance a method_5909 + p 0 x + p 2 y + p 4 z + p 6 range + m (DDDDLnet/minecraft/world/entity/Entity;)Z method_5912 a method_5912 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; pushableBy a method_5911 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_5906 a method_5906 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/Team;Lnet/minecraft/world/scores/Team$CollisionRule;Lnet/minecraft/world/entity/Entity;)Z method_5915 a method_5915 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; notRiding b method_5913 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Z method_24517 c method_24517 + m (Lnet/minecraft/world/entity/Entity;)Z method_5910 d method_5910 + m (Lnet/minecraft/world/entity/Entity;)Z method_5914 e method_5914 + m (Lnet/minecraft/world/entity/Entity;)Z method_5908 f method_5908 + m (Lnet/minecraft/world/entity/Entity;)Z method_32878 g method_32878 + m ()V + m ()V +c net/minecraft/world/entity/EntitySelector$MobCanWearArmorEntitySelector bsw$a net/minecraft/class_1301$class_1302 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_6158 + m (Lnet/minecraft/world/entity/Entity;)Z test a method_5916 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 stack +c net/minecraft/world/entity/EntityType bsx net/minecraft/class_1299 + f Lnet/minecraft/world/entity/EntityType; DRAGON_FIREBALL A field_6129 + f Lnet/minecraft/world/entity/EntityType; DROWNED B field_6123 + f Lnet/minecraft/world/entity/EntityType; EGG C field_6144 + f Lnet/minecraft/world/entity/EntityType; ELDER_GUARDIAN D field_6086 + f Lnet/minecraft/world/entity/EntityType; END_CRYSTAL E field_6110 + f Lnet/minecraft/world/entity/EntityType; ENDER_DRAGON F field_6116 + f Lnet/minecraft/world/entity/EntityType; ENDER_PEARL G field_6082 + f Lnet/minecraft/world/entity/EntityType; ENDERMAN H field_6091 + f Lnet/minecraft/world/entity/EntityType; ENDERMITE I field_6128 + f Lnet/minecraft/world/entity/EntityType; EVOKER J field_6090 + f Lnet/minecraft/world/entity/EntityType; EVOKER_FANGS K field_6060 + f Lnet/minecraft/world/entity/EntityType; EXPERIENCE_BOTTLE L field_6064 + f Lnet/minecraft/world/entity/EntityType; EXPERIENCE_ORB M field_6044 + f Lnet/minecraft/world/entity/EntityType; EYE_OF_ENDER N field_6061 + f Lnet/minecraft/world/entity/EntityType; FALLING_BLOCK O field_6089 + f Lnet/minecraft/world/entity/EntityType; FIREWORK_ROCKET P field_6133 + f Lnet/minecraft/world/entity/EntityType; FOX Q field_17943 + f Lnet/minecraft/world/entity/EntityType; FROG R field_37419 + f Lnet/minecraft/world/entity/EntityType; FURNACE_MINECART S field_6080 + f Lnet/minecraft/world/entity/EntityType; GHAST T field_6107 + f Lnet/minecraft/world/entity/EntityType; GIANT U field_6095 + f Lnet/minecraft/world/entity/EntityType; GLOW_ITEM_FRAME V field_28401 + f Lnet/minecraft/world/entity/EntityType; GLOW_SQUID W field_28402 + f Lnet/minecraft/world/entity/EntityType; GOAT X field_30052 + f Lnet/minecraft/world/entity/EntityType; GUARDIAN Y field_6118 + f Lnet/minecraft/world/entity/EntityType; HOGLIN Z field_21973 + f Lnet/minecraft/world/entity/EntityType; PIGLIN aA field_22281 + f Lnet/minecraft/world/entity/EntityType; PIGLIN_BRUTE aB field_25751 + f Lnet/minecraft/world/entity/EntityType; PILLAGER aC field_6105 + f Lnet/minecraft/world/entity/EntityType; POLAR_BEAR aD field_6042 + f Lnet/minecraft/world/entity/EntityType; POTION aE field_6045 + f Lnet/minecraft/world/entity/EntityType; PUFFERFISH aF field_6062 + f Lnet/minecraft/world/entity/EntityType; RABBIT aG field_6140 + f Lnet/minecraft/world/entity/EntityType; RAVAGER aH field_6134 + f Lnet/minecraft/world/entity/EntityType; SALMON aI field_6073 + f Lnet/minecraft/world/entity/EntityType; SHEEP aJ field_6115 + f Lnet/minecraft/world/entity/EntityType; SHULKER aK field_6109 + f Lnet/minecraft/world/entity/EntityType; SHULKER_BULLET aL field_6100 + f Lnet/minecraft/world/entity/EntityType; ALLAY a field_38384 + f Lnet/minecraft/world/entity/EntityType; SILVERFISH aM field_6125 + f Lnet/minecraft/world/entity/EntityType; SKELETON aN field_6137 + f Lnet/minecraft/world/entity/EntityType; SKELETON_HORSE aO field_6075 + f Lnet/minecraft/world/entity/EntityType; SLIME aP field_6069 + f Lnet/minecraft/world/entity/EntityType; SMALL_FIREBALL aQ field_6049 + f Lnet/minecraft/world/entity/EntityType; SNIFFER aR field_42622 + f Lnet/minecraft/world/entity/EntityType; SNOW_GOLEM aS field_6047 + f Lnet/minecraft/world/entity/EntityType; SNOWBALL aT field_6068 + f Lnet/minecraft/world/entity/EntityType; SPAWNER_MINECART aU field_6142 + f Lnet/minecraft/world/entity/EntityType; SPECTRAL_ARROW aV field_6135 + f Lnet/minecraft/world/entity/EntityType; SPIDER aW field_6079 + f Lnet/minecraft/world/entity/EntityType; SQUID aX field_6114 + f Lnet/minecraft/world/entity/EntityType; STRAY aY field_6098 + f Lnet/minecraft/world/entity/EntityType; STRIDER aZ field_23214 + f Lnet/minecraft/world/entity/EntityType; HOPPER_MINECART aa field_6058 + f Lnet/minecraft/world/entity/EntityType; HORSE ab field_6139 + f Lnet/minecraft/world/entity/EntityType; HUSK ac field_6071 + f Lnet/minecraft/world/entity/EntityType; ILLUSIONER ad field_6065 + f Lnet/minecraft/world/entity/EntityType; INTERACTION ae field_42623 + f Lnet/minecraft/world/entity/EntityType; IRON_GOLEM af field_6147 + f Lnet/minecraft/world/entity/EntityType; ITEM ag field_6052 + f Lnet/minecraft/world/entity/EntityType; ITEM_DISPLAY ah field_42456 + f Lnet/minecraft/world/entity/EntityType; ITEM_FRAME ai field_6043 + f Lnet/minecraft/world/entity/EntityType; OMINOUS_ITEM_SPAWNER aj field_50124 + f Lnet/minecraft/world/entity/EntityType; FIREBALL ak field_6066 + f Lnet/minecraft/world/entity/EntityType; LEASH_KNOT al field_6138 + f Lnet/minecraft/world/entity/EntityType; LIGHTNING_BOLT am field_6112 + f Lnet/minecraft/world/entity/EntityType; LLAMA an field_6074 + f Lnet/minecraft/world/entity/EntityType; LLAMA_SPIT ao field_6124 + f Lnet/minecraft/world/entity/EntityType; MAGMA_CUBE ap field_6102 + f Lnet/minecraft/world/entity/EntityType; MARKER aq field_33456 + f Lnet/minecraft/world/entity/EntityType; MINECART ar field_6096 + f Lnet/minecraft/world/entity/EntityType; MOOSHROOM as field_6143 + f Lnet/minecraft/world/entity/EntityType; MULE at field_6057 + f Lnet/minecraft/world/entity/EntityType; OCELOT au field_6081 + f Lnet/minecraft/world/entity/EntityType; PAINTING av field_6120 + f Lnet/minecraft/world/entity/EntityType; PANDA aw field_6146 + f Lnet/minecraft/world/entity/EntityType; PARROT ax field_6104 + f Lnet/minecraft/world/entity/EntityType; PHANTOM ay field_6078 + f Lnet/minecraft/world/entity/EntityType; PIG az field_6093 + f Lorg/slf4j/Logger; LOGGER bB field_6088 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder bC field_36398 + f F MAGIC_HORSE_WIDTH bD field_30054 + f I DISPLAY_TRACKING_RANGE bE field_42459 + f Lnet/minecraft/world/entity/EntityType$EntityFactory; factory bF field_6101 + f Lnet/minecraft/world/entity/MobCategory; category bG field_6094 + f Lcom/google/common/collect/ImmutableSet; immuneTo bH field_25355 + f Z serialize bI field_6056 + f Z summon bJ field_6072 + f Z fireImmune bK field_18981 + f Z canSpawnFarFromPlayer bL field_19423 + f Lnet/minecraft/world/entity/EntityType; AREA_EFFECT_CLOUD b field_6083 + f I clientTrackingRange bM field_24085 + f I updateInterval bN field_24086 + f Ljava/lang/String; descriptionId bO field_6106 + f Lnet/minecraft/network/chat/Component; description bP field_6092 + f Lnet/minecraft/resources/ResourceKey; lootTable bQ field_16526 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions bR field_18070 + f F spawnDimensionsScale bS field_50125 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures bT field_40115 + f Lnet/minecraft/world/entity/EntityType; TADPOLE ba field_37420 + f Lnet/minecraft/world/entity/EntityType; TEXT_DISPLAY bb field_42457 + f Lnet/minecraft/world/entity/EntityType; TNT bc field_6063 + f Lnet/minecraft/world/entity/EntityType; TNT_MINECART bd field_6053 + f Lnet/minecraft/world/entity/EntityType; TRADER_LLAMA be field_17714 + f Lnet/minecraft/world/entity/EntityType; TRIDENT bf field_6127 + f Lnet/minecraft/world/entity/EntityType; TROPICAL_FISH bg field_6111 + f Lnet/minecraft/world/entity/EntityType; TURTLE bh field_6113 + f Lnet/minecraft/world/entity/EntityType; VEX bi field_6059 + f Lnet/minecraft/world/entity/EntityType; VILLAGER bj field_6077 + f Lnet/minecraft/world/entity/EntityType; VINDICATOR bk field_6117 + f Lnet/minecraft/world/entity/EntityType; WANDERING_TRADER bl field_17713 + f Lnet/minecraft/world/entity/EntityType; WARDEN bm field_38095 + f Lnet/minecraft/world/entity/EntityType; WIND_CHARGE bn field_47243 + f Lnet/minecraft/world/entity/EntityType; WITCH bo field_6145 + f Lnet/minecraft/world/entity/EntityType; WITHER bp field_6119 + f Lnet/minecraft/world/entity/EntityType; WITHER_SKELETON bq field_6076 + f Lnet/minecraft/world/entity/EntityType; WITHER_SKULL br field_6130 + f Lnet/minecraft/world/entity/EntityType; WOLF bs field_6055 + f Lnet/minecraft/world/entity/EntityType; ZOGLIN bt field_23696 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE bu field_6051 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE_HORSE bv field_6048 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE_VILLAGER bw field_6054 + f Lnet/minecraft/world/entity/EntityType; ZOMBIFIED_PIGLIN bx field_6050 + f Lnet/minecraft/world/entity/EntityType; PLAYER by field_6097 + f Lnet/minecraft/world/entity/EntityType; FISHING_BOBBER bz field_6103 + f Lnet/minecraft/world/entity/EntityType; ARMADILLO c field_47754 + f Lnet/minecraft/world/entity/EntityType; ARMOR_STAND d field_6131 + f Lnet/minecraft/world/entity/EntityType; ARROW e field_6122 + f Lnet/minecraft/world/entity/EntityType; AXOLOTL f field_28315 + f Lnet/minecraft/world/entity/EntityType; BAT g field_6108 + f Lnet/minecraft/world/entity/EntityType; BEE h field_20346 + f Lnet/minecraft/world/entity/EntityType; BLAZE i field_6099 + f Lnet/minecraft/world/entity/EntityType; BLOCK_DISPLAY j field_42460 + f Lnet/minecraft/world/entity/EntityType; BOAT k field_6121 + f Lnet/minecraft/world/entity/EntityType; BOGGED l field_49148 + f Lnet/minecraft/world/entity/EntityType; BREEZE m field_47244 + f Lnet/minecraft/world/entity/EntityType; BREEZE_WIND_CHARGE n field_49075 + f Lnet/minecraft/world/entity/EntityType; CAMEL o field_40116 + f Lnet/minecraft/world/entity/EntityType; CAT p field_16281 + f Lnet/minecraft/world/entity/EntityType; CAVE_SPIDER q field_6084 + f Lnet/minecraft/world/entity/EntityType; CHEST_BOAT r field_38096 + f Lnet/minecraft/world/entity/EntityType; CHEST_MINECART s field_6126 + f Lnet/minecraft/world/entity/EntityType; CHICKEN t field_6132 + f Lnet/minecraft/world/entity/EntityType; COD u field_6070 + f Lnet/minecraft/world/entity/EntityType; COMMAND_BLOCK_MINECART v field_6136 + f Lnet/minecraft/world/entity/EntityType; COW w field_6085 + f Lnet/minecraft/world/entity/EntityType; CREEPER x field_6046 + f Lnet/minecraft/world/entity/EntityType; DOLPHIN y field_6087 + f Lnet/minecraft/world/entity/EntityType; DONKEY z field_6067 + m (DDD)Lnet/minecraft/world/phys/AABB; getSpawnAABB a method_58629 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/component/CustomData;Lnet/minecraft/world/entity/Entity;)V method_48008 a method_48008 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; createDefaultStackConfig a method_48009 + p 0 serverLevel + p 1 stack + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; spawn a method_5894 + p 1 serverLevel + p 2 stack + p 3 player + p 4 pos + p 5 spawnType + p 6 shouldOffsetY + p 7 shouldOffsetYMore + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; spawn a method_5899 + p 1 level + p 2 consumer + p 3 pos + p 4 spawnType + p 5 shouldOffsetY + p 6 shouldOffsetYMore + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;)Lnet/minecraft/world/entity/Entity; spawn a method_47821 + p 1 level + p 2 pos + p 3 spawnType + m (Lnet/minecraft/tags/TagKey;)Z is a method_20210 + c Checks if this entity type is contained in the tag + p 1 tag + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; tryCast a method_31488 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/resources/ResourceLocation; getKey a method_5890 + p 0 entityType + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; create a method_5883 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Entity; method_17846 a method_17846 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/component/CustomData;)V updateCustomEntityTag a method_5881 + p 0 level + p 1 player + p 2 entity + p 3 customData + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/phys/AABB;)D getYOffset a method_5884 + p 0 level + p 1 pos + p 2 shouldOffsetYMore + p 3 box + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isBlockDangerous a method_29496 + p 1 state + m (Ljava/lang/String;)Ljava/util/Optional; byString a method_5898 + c Tries to get the entity type associated by the key. + p 0 key + m (Ljava/lang/String;Lnet/minecraft/world/entity/EntityType$Builder;)Lnet/minecraft/world/entity/EntityType; register a method_5895 + p 0 key + p 1 builder + m (Ljava/util/List;Lnet/minecraft/world/level/Level;)Ljava/util/stream/Stream; loadEntitiesRecursive a method_31489 + p 0 tags + p 1 level + m (Ljava/util/function/Consumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; appendDefaultStackConfig a method_48156 + p 0 consumer + p 1 serverLevel + p 2 stack + p 3 player + m (Ljava/util/function/Consumer;Lnet/minecraft/world/item/ItemStack;)Ljava/util/function/Consumer; appendCustomNameConfig a method_48012 + p 0 consumer + p 1 stack + m (Lnet/minecraft/core/HolderSet;)Z is a method_53125 + p 1 entityType + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; by a method_17684 + p 0 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/entity/Entity;)V method_17839 a method_17839 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; create a method_5892 + p 0 tag + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;Ljava/util/function/Function;)Lnet/minecraft/world/entity/Entity; loadEntityRecursive a method_17842 + p 0 compound + p 1 level + p 2 entityFunction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;Ljava/util/function/Function;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_17843 a method_17843 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/entity/Entity;)V method_48010 a method_48010 + m ()Z canSerialize b method_5893 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; create b method_5888 + p 1 level + p 2 consumer + p 3 pos + p 4 spawnType + p 5 shouldOffsetY + p 6 shouldOffsetYMore + m (Lnet/minecraft/world/entity/Entity;)V method_48013 b method_48013 + m (Ljava/util/function/Consumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; appendCustomEntityStackConfig b method_48011 + p 0 consumer + p 1 level + p 2 stack + p 3 player + m (Lnet/minecraft/nbt/CompoundTag;)V method_17847 b method_17847 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; loadStaticEntity b method_17848 + p 0 compound + p 1 level + m ()Z canSummon c method_5896 + m (Lnet/minecraft/world/entity/Entity;)V method_47823 c method_47823 + m ()Z fireImmune d method_19946 + m ()Z canSpawnFarFromPlayer e method_20814 + m ()Lnet/minecraft/world/entity/MobCategory; getCategory f method_5891 + m ()Ljava/lang/String; getDescriptionId g method_5882 + m ()Lnet/minecraft/network/chat/Component; getDescription h method_5897 + m ()Ljava/lang/String; toShortString j method_35050 + m ()Lnet/minecraft/resources/ResourceKey; getDefaultLootTable k method_16351 + m ()F getWidth l method_17685 + m ()F getHeight m method_17686 + m ()Lnet/minecraft/world/entity/EntityDimensions; getDimensions n method_18386 + m ()I clientTrackingRange o method_18387 + m ()I updateInterval p method_18388 + m ()Z trackDeltas q method_18389 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder r method_40124 + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;ZZZZLcom/google/common/collect/ImmutableSet;Lnet/minecraft/world/entity/EntityDimensions;FIILnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 factory + p 2 category + p 3 serialize + p 4 summon + p 5 fireImmune + p 6 canSpawnFarFromPlayer + p 7 immuneTo + p 8 dimensions + p 9 spawnDimensionsScale + p 10 clientTrackingRange + p 11 updateInterval + p 12 requiredFeatures + m ()V +c net/minecraft/world/entity/EntityType$1 bsx$1 net/minecraft/class_1299$1 + f Ljava/util/Spliterator; val$tagSpliterator a field_27006 + f Lnet/minecraft/world/level/Level; val$level b field_27007 + f Ljava/util/List; val$entities c field_27008 + m (Lnet/minecraft/world/level/Level;Ljava/util/function/Consumer;Lnet/minecraft/nbt/Tag;)V method_31490 a method_31490 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_31491 a method_31491 + m (Ljava/util/Spliterator;Lnet/minecraft/world/level/Level;Ljava/util/List;)V +c net/minecraft/world/entity/EntityType$Builder bsx$a net/minecraft/class_1299$class_1300 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityType.Builder} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/entity/EntityType$EntityFactory; factory a field_6148 + f Lnet/minecraft/world/entity/MobCategory; category b field_6149 + f Lcom/google/common/collect/ImmutableSet; immuneTo c field_25356 + f Z serialize d field_6151 + f Z summon e field_6150 + f Z fireImmune f field_18982 + f Z canSpawnFarFromPlayer g field_19424 + f I clientTrackingRange h field_24087 + f I updateInterval i field_24088 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions j field_18071 + f F spawnDimensionsScale k field_50126 + f Lnet/minecraft/world/entity/EntityAttachments$Builder; attachments l field_47755 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures m field_40117 + m ()Lnet/minecraft/world/entity/EntityType$Builder; noSummon a method_5901 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; spawnDimensionsScale a method_58630 + p 1 spawnDimensionsScale + m (FF)Lnet/minecraft/world/entity/EntityType$Builder; sized a method_17687 + p 1 width + p 2 height + m (I)Lnet/minecraft/world/entity/EntityType$Builder; clientTrackingRange a method_27299 + p 1 clientTrackingRange + m (Lnet/minecraft/world/entity/EntityAttachment;FFF)Lnet/minecraft/world/entity/EntityType$Builder; attach a method_56075 + p 1 attachment + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityAttachment;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; attach a method_56076 + p 1 attachment + p 2 pos + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/EntityType$Builder; of a method_5903 + p 0 factory + p 1 category + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; method_5900 a method_5900 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/EntityType$Builder; createNothing a method_5902 + p 0 category + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; vehicleAttachment a method_55688 + p 1 attachPoint + m (Ljava/lang/String;)Lnet/minecraft/world/entity/EntityType; build a method_5905 + p 1 key + m ([F)Lnet/minecraft/world/entity/EntityType$Builder; passengerAttachments a method_55689 + p 1 attachPoints + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/entity/EntityType$Builder; requiredFeatures a method_45323 + p 1 requiredFeatures + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/entity/EntityType$Builder; immuneTo a method_29497 + p 1 blocks + m ([Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; passengerAttachments a method_55690 + p 1 attachPoints + m ()Lnet/minecraft/world/entity/EntityType$Builder; noSave b method_5904 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; eyeHeight b method_55687 + p 1 eyeHeight + m (I)Lnet/minecraft/world/entity/EntityType$Builder; updateInterval b method_27300 + p 1 updateInterval + m ()Lnet/minecraft/world/entity/EntityType$Builder; fireImmune c method_19947 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; ridingOffset c method_55691 + p 1 ridingOffset + m ()Lnet/minecraft/world/entity/EntityType$Builder; canSpawnFarFromPlayer d method_20815 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; nameTagOffset d method_55692 + p 1 nameTagOffset + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;)V + p 1 factory + p 2 category +c net/minecraft/world/entity/EntityType$EntityFactory bsx$b net/minecraft/class_1299$class_4049 +c net/minecraft/world/entity/EquipmentSlot bsy net/minecraft/class_1304 + f Lnet/minecraft/world/entity/EquipmentSlot; MAINHAND a field_6173 + f Lnet/minecraft/world/entity/EquipmentSlot; OFFHAND b field_6171 + f Lnet/minecraft/world/entity/EquipmentSlot; FEET c field_6166 + f Lnet/minecraft/world/entity/EquipmentSlot; LEGS d field_6172 + f Lnet/minecraft/world/entity/EquipmentSlot; CHEST e field_6174 + f Lnet/minecraft/world/entity/EquipmentSlot; HEAD f field_6169 + f Lnet/minecraft/world/entity/EquipmentSlot; BODY g field_48824 + f I NO_COUNT_LIMIT h field_51935 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC i field_45739 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; type j field_6170 + f I index k field_6168 + f I countLimit l field_51936 + f I filterFlag m field_6167 + f Ljava/lang/String; name n field_6175 + f [Lnet/minecraft/world/entity/EquipmentSlot; $VALUES o field_6176 + m ()Lnet/minecraft/world/entity/EquipmentSlot$Type; getType a method_5925 + m (I)I getIndex a method_32320 + p 1 baseIndex + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; limit a method_60610 + p 1 stack + m (Ljava/lang/String;)Lnet/minecraft/world/entity/EquipmentSlot; byName a method_5924 + p 0 targetName + m ()I getIndex b method_5927 + m ()I getFilterFlag d method_5926 + c Gets the actual slot index. + m ()Ljava/lang/String; getName e method_5923 + m ()Z isArmor f method_46643 + m ()[Lnet/minecraft/world/entity/EquipmentSlot; $values g method_36604 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot$Type;IIILjava/lang/String;)V + p 3 type + p 4 index + p 5 countLimit + p 6 filterFlag + p 7 name + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot$Type;IILjava/lang/String;)V + p 3 type + p 4 index + p 5 filterFlag + p 6 name + m ()V +c net/minecraft/world/entity/EquipmentSlot$Type bsy$a net/minecraft/class_1304$class_1305 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; HAND a field_6177 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; HUMANOID_ARMOR b field_6178 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; ANIMAL_ARMOR c field_48825 + f [Lnet/minecraft/world/entity/EquipmentSlot$Type; $VALUES d field_6179 + m ()[Lnet/minecraft/world/entity/EquipmentSlot$Type; $values a method_36605 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/EquipmentSlotGroup bsz net/minecraft/class_9274 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; ANY a field_49216 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; MAINHAND b field_49217 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; OFFHAND c field_49218 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; HAND d field_49219 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; FEET e field_49220 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; LEGS f field_49221 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; CHEST g field_49222 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; HEAD h field_49223 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; ARMOR i field_49224 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; BODY j field_50127 + f Ljava/util/function/IntFunction; BY_ID k field_49225 + f Lcom/mojang/serialization/Codec; CODEC l field_49226 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC m field_49227 + f I id n field_49228 + f Ljava/lang/String; key o field_49229 + f Ljava/util/function/Predicate; predicate p field_49230 + f [Lnet/minecraft/world/entity/EquipmentSlotGroup; $VALUES q field_49231 + m ()[Lnet/minecraft/world/entity/EquipmentSlotGroup; $values a method_57285 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/EquipmentSlotGroup; bySlot a method_59524 + p 0 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57287 a method_57287 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)I method_57288 a method_57288 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z test b method_57286 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)I method_57290 b method_57290 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57289 c method_57289 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57291 d method_57291 + m (Ljava/lang/String;IILjava/lang/String;Ljava/util/function/Predicate;)V + p 3 id + p 4 key + p 5 predicate + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/world/entity/EquipmentSlot;)V + p 3 id + p 4 key + p 5 slot + m ()V +c net/minecraft/world/entity/EquipmentSlotGroup$1 bsz$1 net/minecraft/class_9274$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot a field_51350 + m ()V +c net/minecraft/world/entity/EquipmentTable bta net/minecraft/class_9652 + f Lcom/mojang/serialization/Codec; DROP_CHANCES_CODEC a field_51374 + f Lcom/mojang/serialization/Codec; CODEC b field_51375 + f Lnet/minecraft/resources/ResourceKey; lootTable c comp_2621 + f Ljava/util/Map; slotDropChances d comp_2622 + m ()Lnet/minecraft/resources/ResourceKey; lootTable a comp_2621 + m (F)Ljava/util/Map; createForAllSlots a method_59658 + p 0 dropChance + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/Map; method_59659 a method_59659 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59660 a method_59660 + m (Ljava/util/List;F)Ljava/util/Map; createForAllSlots a method_59661 + p 0 equipmentSlots + p 1 dropChance + m (Ljava/util/Map;)Lcom/mojang/datafixers/util/Either; method_59662 a method_59662 + m ()Ljava/util/Map; slotDropChances b comp_2622 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V + m ()V +c net/minecraft/world/entity/EquipmentUser btb net/minecraft/class_9460 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootParams;JLjava/util/Map;)V equip a method_58632 + p 1 equipmentLootTable + p 2 params + p 3 seed + p 5 slotDropChances + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/Map;)V equip a method_59663 + p 1 equipmentLootTable + p 2 params + p 3 slotDropChances + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getItemBySlot a method_6118 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;F)V setDropChance a method_5946 + p 1 slot + p 2 dropChance + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlot a method_5673 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/EquipmentTable;Lnet/minecraft/world/level/storage/loot/LootParams;)V equip a method_58631 + p 1 equipmentTable + p 2 params + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)Lnet/minecraft/world/entity/EquipmentSlot; resolveSlot a method_58633 + p 1 stack + p 2 excludedSlots +c net/minecraft/world/entity/ExperienceOrb btc net/minecraft/class_1303 + f I LIFETIME b field_30055 + f I ENTITY_SCAN_PERIOD c field_30056 + f I MAX_FOLLOW_DIST d field_30057 + f I ORB_GROUPS_PER_AREA e field_30058 + f D ORB_MERGE_DISTANCE f field_30059 + f I age g field_6164 + f I health h field_6161 + f I value i field_6159 + f I count j field_27009 + f Lnet/minecraft/world/entity/player/Player; followingPlayer k field_6162 + m (IILnet/minecraft/world/entity/ExperienceOrb;)Z method_31492 a method_31492 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;I)V award a method_31493 + p 0 level + p 1 pos + p 2 amount + m (Lnet/minecraft/server/level/ServerPlayer;I)I repairPlayerItems a method_35051 + p 1 player + p 2 value + m (Lnet/minecraft/world/entity/ExperienceOrb;)Z canMerge a method_31494 + p 1 orb + m (Lnet/minecraft/world/entity/ExperienceOrb;II)Z canMerge a method_31495 + p 0 orb + p 1 amount + p 2 other + m (I)I getExperienceValue b method_5918 + c Get a fragment of the maximum experience points value for the supplied value of experience points value. + p 0 expValue + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;I)Z tryMergeToExisting b method_31496 + p 0 level + p 1 pos + p 2 amount + m (Lnet/minecraft/world/entity/ExperienceOrb;)V merge b method_31497 + p 1 orb + m ()I getValue p method_5919 + c Returns the XP value of this XP orb. + m ()I getIcon s method_5920 + c Returns a number from 1 to 10 based on how much XP this orb is worth. This is used by RenderXPOrb to determine what texture to use. + m ()V scanForEntities t method_31498 + m ()V setUnderwaterMovement v method_5921 + m (Lnet/minecraft/world/level/Level;DDDI)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 value + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/FlyingMob btd net/minecraft/class_1307 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/GlowSquid bte net/minecraft/class_5776 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DARK_TICKS_REMAINING cg field_28403 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGlowSquidSpawnRules a method_38962 + p 0 glowSquid + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (I)V setDarkTicks c method_33333 + p 1 darkTicks + m ()I getDarkTicksRemaining x method_33334 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/HasCustomInventoryScreen btf net/minecraft/class_7248 + m (Lnet/minecraft/world/entity/player/Player;)V openCustomInventoryScreen b method_6722 + p 1 player +c net/minecraft/world/entity/HumanoidArm btg net/minecraft/class_1306 + f Lnet/minecraft/world/entity/HumanoidArm; LEFT a field_6182 + f Lnet/minecraft/world/entity/HumanoidArm; RIGHT b field_6183 + f Lcom/mojang/serialization/Codec; CODEC c field_45121 + f Ljava/util/function/IntFunction; BY_ID d field_46166 + f I id e field_38385 + f Ljava/lang/String; name f field_6181 + f Ljava/lang/String; translationKey g field_45122 + f [Lnet/minecraft/world/entity/HumanoidArm; $VALUES h field_6180 + m ()Lnet/minecraft/world/entity/HumanoidArm; getOpposite e method_5928 + m ()[Lnet/minecraft/world/entity/HumanoidArm; $values f method_36606 + m (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V + p 3 id + p 4 name + p 5 translationKey + m ()V +c net/minecraft/world/entity/Interaction bth net/minecraft/class_8150 + f Lorg/slf4j/Logger; LOGGER b field_42624 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WIDTH_ID c field_42625 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEIGHT_ID d field_42626 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RESPONSE_ID e field_42627 + f Ljava/lang/String; TAG_WIDTH f field_42628 + f Ljava/lang/String; TAG_HEIGHT g field_42629 + f Ljava/lang/String; TAG_ATTACK h field_42630 + f Ljava/lang/String; TAG_INTERACTION i field_42631 + f Ljava/lang/String; TAG_RESPONSE j field_42632 + f Lnet/minecraft/world/entity/Interaction$PlayerAction; attack k field_42633 + f Lnet/minecraft/world/entity/Interaction$PlayerAction; interaction l field_42634 + m (F)V setWidth a method_49109 + p 1 width + m (Lcom/mojang/datafixers/util/Pair;)V method_49110 a method_49110 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49111 a method_49111 + m (Z)V setResponse a method_49112 + p 1 response + m (F)V setHeight b method_49113 + p 1 height + m (Lcom/mojang/datafixers/util/Pair;)V method_49114 b method_49114 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49115 b method_49115 + m ()F getWidth s method_49116 + m ()F getHeight t method_49117 + m ()Z getResponse v method_49118 + m ()Lnet/minecraft/world/entity/EntityDimensions; getDimensions w method_49119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Interaction$PlayerAction bth$a net/minecraft/class_8150$class_8151 + f Lcom/mojang/serialization/Codec; CODEC a field_42635 + f Ljava/util/UUID; player b comp_1284 + f J timestamp c comp_1285 + m ()Ljava/util/UUID; player a comp_1284 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49120 a method_49120 + m ()J timestamp b comp_1285 + m (Ljava/util/UUID;J)V + m ()V +c net/minecraft/world/entity/ItemBasedSteering bti net/minecraft/class_4980 + f I MIN_BOOST_TIME a field_30060 + f I MAX_BOOST_TIME b field_30061 + f Lnet/minecraft/network/syncher/SynchedEntityData; entityData c field_23218 + f Lnet/minecraft/network/syncher/EntityDataAccessor; boostTimeAccessor d field_23219 + f Lnet/minecraft/network/syncher/EntityDataAccessor; hasSaddleAccessor e field_23220 + f Z boosting f field_23215 + f I boostTime g field_23216 + m ()V onSynced a method_26307 + m (Lnet/minecraft/util/RandomSource;)Z boost a method_26308 + p 1 random + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData a method_26309 + p 1 nbt + m (Z)V setSaddle a method_26310 + p 1 saddled + m ()V tickBoost b method_49478 + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData b method_26312 + p 1 nbt + m ()F boostFactor c method_49479 + m ()Z hasSaddle d method_26311 + m ()I boostTimeTotal e method_49480 + m (Lnet/minecraft/network/syncher/SynchedEntityData;Lnet/minecraft/network/syncher/EntityDataAccessor;Lnet/minecraft/network/syncher/EntityDataAccessor;)V + p 1 entityData + p 2 boostTimeAccessor + p 3 hasSaddleAccessor +c net/minecraft/world/entity/ItemSteerable btj net/minecraft/class_4981 + m ()Z boost a method_6577 +c net/minecraft/world/entity/Leashable btk net/minecraft/class_9817 + f Ljava/lang/String; LEASH_TAG b_ field_52216 + f D LEASH_TOO_FAR_DIST q_ field_52314 + f D LEASH_ELASTIC_DIST r_ field_52315 + m ()Lnet/minecraft/world/entity/Entity; getLeashHolder A method_60952 + m ()Z isLeashed N_ method_60953 + m ()Z mayBeLeashed O_ method_60954 + m ()Lnet/minecraft/world/entity/Leashable$LeashData; getLeashData X_ method_60955 + m (Lnet/minecraft/world/entity/Entity;F)Z handleLeashAtDistance a method_60956 + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;F)V legacyElasticRangeLeashBehaviour a method_61161 + p 0 entity + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Z)V setLeashedTo a method_60957 + p 0 entity + p 1 leashHolder + p 2 broadcastPacket + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Leashable$LeashData;)V restoreLeashFromSave a method_60958 + p 0 entity + p 1 leashData + m (Lnet/minecraft/world/entity/Entity;ZZ)V dropLeash a method_60959 + p 0 entity + p 1 broadcastPacket + p 2 dropItem + m (Lnet/minecraft/world/entity/Leashable$LeashData;)V setLeashData a method_60960 + p 1 leashData + m (Ljava/util/UUID;)Lnet/minecraft/nbt/Tag; method_60961 a method_60961 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/entity/Leashable$LeashData;)V writeLeashData a method_60962 + p 1 tag + p 2 leashData + m (ZZ)V dropLeash a method_5932 + p 1 broadcastPacket + p 2 dropItem + m (Lnet/minecraft/world/entity/Entity;)V closeRangeLeashBehaviour b method_60963 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)V elasticRangeLeashBehaviour b method_61162 + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Z)V setLeashedTo b method_60964 + p 1 leashHolder + p 2 broadcastPacket + m (Lnet/minecraft/world/entity/Entity;)V tickLeash b_ method_60965 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getLeashHolder c method_60966 + p 0 entity + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/Leashable$LeashData; readLeashData c method_60967 + p 1 tag + m (I)V setDelayedLeashHolderId h_ method_60968 + p 1 delayedLeashHolderId + m ()Z canHaveALeashAttachedToIt q method_60969 + m ()Z canBeLeashed y method_5931 + m ()V leashTooFarBehaviour z method_60970 +c net/minecraft/world/entity/Leashable$LeashData btk$a net/minecraft/class_9817$class_9818 + f Lnet/minecraft/world/entity/Entity; leashHolder a field_52217 + f Lcom/mojang/datafixers/util/Either; delayedLeashInfo b field_52218 + f I delayedLeashHolderId c field_52219 + m (Lnet/minecraft/world/entity/Entity;)V setLeashHolder a method_60971 + p 1 leashHolder + m (Lcom/mojang/datafixers/util/Either;)V + p 1 delayedLeashInfo + m (Lnet/minecraft/world/entity/Entity;)V + p 1 leashHolder + m (I)V + p 1 delayedLeashInfoId +c net/minecraft/world/entity/LerpingModel btl net/minecraft/class_6375 + m ()Ljava/util/Map; getModelRotationValues a method_36976 +c net/minecraft/world/entity/LightningBolt btm net/minecraft/class_1538 + f J seed b field_7186 + f I START_LIFE c field_30062 + f D DAMAGE_RADIUS d field_33906 + f D DETECTION_RADIUS e field_33907 + f I life f field_7185 + f I flashes g field_7183 + f Z visualOnly h field_7184 + f Lnet/minecraft/server/level/ServerPlayer; cause i field_7182 + f Ljava/util/Set; hitEntities j field_33904 + f I blocksSetOnFire k field_33905 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_34708 a method_34708 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)V randomWalkCleaningCopper a method_34709 + p 0 level + p 1 pos + p 2 mutable + p 3 steps + m (Z)V setVisualOnly a method_29498 + p 1 visualOnly + m (I)V spawnFire b method_6960 + p 1 extraIgnitions + m (Lnet/minecraft/server/level/ServerPlayer;)V setCause b method_6961 + p 1 cause + m (Lnet/minecraft/world/entity/Entity;)Z method_37218 b method_37218 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V clearCopperOnLightningStrike b method_34707 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_37219 c method_37219 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; randomStepCleaningCopper c method_34710 + p 0 level + p 1 pos + m ()Lnet/minecraft/server/level/ServerPlayer; getCause p method_35052 + m ()I getBlocksSetOnFire s method_37220 + m ()Ljava/util/stream/Stream; getHitEntities t method_37221 + m ()V powerLightningRod v method_31499 + m ()Lnet/minecraft/core/BlockPos; getStrikePosition w method_36607 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/LivingEntity btn net/minecraft/class_1309 + c @return null or the {@linkplain LivingEntity} it was ignited by + f I LIVING_ENTITY_FLAG_SPIN_ATTACK aD field_30066 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LIVING_ENTITY_FLAGS aE field_6257 + f Lnet/minecraft/world/entity/EntityDimensions; SLEEPING_DIMENSIONS aF field_18072 + f F EXTRA_RENDER_CULLING_SIZE_WITH_BIG_HAT aG field_30068 + f F DEFAULT_BABY_SCALE aH field_47756 + f Ljava/lang/String; ATTRIBUTES_FIELD aI field_51995 + f Z swinging aJ field_6252 + f Lnet/minecraft/world/InteractionHand; swingingArm aK field_6266 + f I swingTime aL field_6279 + f I removeArrowTime aM field_6218 + f I removeStingerTime aN field_20347 + f I hurtTime aO field_6235 + f I hurtDuration aP field_6254 + f I deathTime aQ field_6213 + f F oAttackAnim aR field_6229 + f F attackAnim aS field_6251 + f I attackStrengthTicker aT field_6273 + f Lnet/minecraft/world/entity/WalkAnimationState; walkAnimation aU field_42108 + f I invulnerableDuration aV field_6269 + f F timeOffs aW field_6244 + f F rotA aX field_6262 + f F yBodyRot aY field_6283 + f F yBodyRotO aZ field_6220 + f I useItemRemaining bA field_6222 + f I fallFlyTicks bB field_6239 + f I autoSpinAttackTicks bC field_6261 + f F autoSpinAttackDmg bD field_51569 + f Lnet/minecraft/world/item/ItemStack; autoSpinAttackItemStack bE field_51570 + f Lnet/minecraft/world/entity/ai/Brain; brain bF field_18321 + f F appliedScale bG field_47757 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_SPRINTING bH field_6231 + f I DAMAGE_SOURCE_TIMEOUT bI field_30078 + f I TICKS_PER_ELYTRA_FREE_FALL_EVENT bJ field_30080 + f I FREE_FALL_EVENTS_PER_ELYTRA_BREAK bK field_30081 + f D MAX_LINE_OF_SIGHT_TEST_RANGE bL field_33908 + f Lorg/slf4j/Logger; LOGGER b field_36332 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEALTH_ID bM field_6247 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_EFFECT_PARTICLES bN field_49792 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_EFFECT_AMBIENCE_ID bO field_6214 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ARROW_COUNT_ID bP field_6219 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STINGER_COUNT_ID bQ field_20348 + f Lnet/minecraft/network/syncher/EntityDataAccessor; SLEEPING_POS_ID bR field_18073 + f I PARTICLE_FREQUENCY_WHEN_INVISIBLE bS field_49793 + f F ITEM_USE_EFFECT_START_FRACTION bT field_49972 + f Lnet/minecraft/world/entity/ai/attributes/AttributeMap; attributes bU field_6260 + f Lnet/minecraft/world/damagesource/CombatTracker; combatTracker bV field_6256 + f Ljava/util/Map; activeEffects bW field_6280 + f Lnet/minecraft/core/NonNullList; lastHandItemStacks bX field_6234 + f Lnet/minecraft/core/NonNullList; lastArmorItemStacks bY field_6248 + f Lnet/minecraft/world/item/ItemStack; lastBodyItemStack bZ field_48826 + f F yHeadRot ba field_6241 + f F yHeadRotO bb field_6259 + f Lnet/minecraft/world/entity/player/Player; lastHurtByPlayer bc field_6258 + f I lastHurtByPlayerTime bd field_6238 + f Z dead be field_6272 + f I noActionTime bf field_6278 + f F oRun bg field_6217 + f F run bh field_6233 + f F animStep bi field_6255 + f F animStepO bj field_6275 + f F rotOffs bk field_6215 + f I deathScore bl field_6232 + f F lastHurt bm field_6253 + c Damage taken in the last hit. Mobs are resistant to damage less than this for a short time after taking damage. + f Z jumping bn field_6282 + f F xxa bo field_6212 + f F yya bp field_6227 + f F zza bq field_6250 + f I lerpSteps br field_6210 + f D lerpX bs field_6224 + f D lerpY bt field_6245 + f D lerpZ bu field_6263 + f D lerpYRot bv field_6284 + f D lerpXRot bw field_6221 + f D lerpYHeadRot bx field_45123 + f I lerpHeadSteps by field_6265 + f Lnet/minecraft/world/item/ItemStack; useItem bz field_6277 + f Ljava/lang/String; TAG_ACTIVE_EFFECTS c field_45740 + f Z discardFriction ca field_30082 + f Z effectsDirty cb field_6285 + f Lnet/minecraft/world/entity/LivingEntity; lastHurtByMob cc field_6274 + f I lastHurtByMobTimestamp cd field_6230 + f Lnet/minecraft/world/entity/LivingEntity; lastHurtMob ce field_6236 + f I lastHurtMobTimestamp cf field_6270 + c Holds the value of ticksExisted when setLastAttacker was last called. + f F speed cg field_6287 + f I noJumpDelay ch field_6228 + f F absorptionAmount ci field_6246 + f Lnet/minecraft/core/BlockPos; lastPos cj field_6268 + f Ljava/util/Optional; lastClimbablePos ck field_22418 + f Lnet/minecraft/world/damagesource/DamageSource; lastDamageSource cl field_6276 + f J lastDamageStamp cm field_6226 + f F swimAmount cn field_6243 + f F swimAmountO co field_6264 + f Z skipDropExperience cp field_37421 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; activeLocationDependentEnchantments cq field_51571 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_POWDER_SNOW_ID d field_27859 + f Lnet/minecraft/resources/ResourceLocation; SPRINTING_MODIFIER_ID e field_51996 + f I HAND_SLOTS i field_30069 + f I ARMOR_SLOTS j field_30070 + f I EQUIPMENT_SLOT_OFFSET k field_30071 + f I ARMOR_SLOT_OFFSET l field_30072 + f I BODY_ARMOR_OFFSET m field_48827 + f I SWING_DURATION n field_30073 + f I PLAYER_HURT_EXPERIENCE_TIME o field_30074 + f D MIN_MOVEMENT_DISTANCE p field_30075 + f D DEFAULT_BASE_GRAVITY q field_30076 + f I DEATH_DURATION r field_30077 + f I USE_ITEM_INTERVAL s field_30063 + f F BASE_JUMP_POWER t field_44874 + f I LIVING_ENTITY_FLAG_IS_USING u field_30064 + f I LIVING_ENTITY_FLAG_OFF_HAND v field_30065 + m (F)V setSpeed A method_6125 + c Sets the movespeed used for the new AI system. + p 1 speed + m (Lnet/minecraft/world/entity/Entity;)V setLastHurtMob A method_6114 + p 1 entity + m ()V refreshDirtyAttributes B method_52543 + m (F)F getAttackAnim B method_6055 + c Gets the progression of the swing animation, ranges from 0.0 to 1.0. + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)D getVisibilityPercent B method_18390 + p 1 lookingEntity + m ()I getCurrentSwingDuration C method_6028 + c Returns an integer indicating the end point of the swing animation, used by {@link #swingProgress} to provide a progress indicator. Takes dig speed enchantments into account. + m (F)V setAbsorptionAmount C method_6073 + p 1 absorptionAmount + m (Lnet/minecraft/world/entity/Entity;)V dropExperience C method_23883 + p 1 entity + m ()V makePoofParticles D method_36549 + m (F)V internalSetAbsorptionAmount D method_52544 + p 1 absorptionAmount + m (Lnet/minecraft/world/entity/Entity;)Z doHurtTarget D method_6121 + p 1 target + m ()V swapHandItems E method_30127 + m (F)F getFrictionInfluencedSpeed E method_18802 + p 1 friction + m (Lnet/minecraft/world/entity/Entity;)V doPush E method_6087 + p 1 entity + m ()V detectEquipmentUpdates F method_30128 + m (Lnet/minecraft/world/entity/Entity;)Z hasLineOfSight F method_6057 + p 1 entity + m ()Ljava/util/Map; collectEquipmentChanges H method_30129 + m ()V updateFallFlying I method_6053 + c Called each tick. Updates state for the elytra. + m ()V updatingUsingItem J method_6076 + m ()V updateInvisibilityStatus K method_6027 + c Clears potion metadata values if the entity has no potion effects. Otherwise, updates potion effect color, ambience, and invisibility metadata values + m ()Z shouldTriggerItemUseEffects L method_22382 + m ()V completeUsingItem L_ method_6040 + c Used for when item use count runs out, ie: eating completed + m ()V updateSwimAmount N method_6072 + m ()Z checkBedExists O method_18406 + m (DD)V indicateDamage a method_48761 + p 1 xDistance + p 3 zDistance + m (DZLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getFluidFallingAdjustedMovement a method_26317 + p 1 gravity + p 3 isFalling + p 4 deltaMovement + m (F)F getSwimAmount a method_6024 + p 1 partialTicks + m (ID)V lerpHeadRotationStep a method_52539 + p 1 lerpHeadSteps + p 2 lerpYHeadRot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V dropAllDeathLoot a method_16080 + p 1 level + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;Z)V dropCustomDeathLoot a method_6099 + p 1 level + p 2 damageSource + p 3 recentlyHit + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)I getExperienceReward a method_59923 + p 1 level + p 2 killer + m (Lnet/minecraft/world/InteractionHand;)V swing a method_6104 + p 1 hand + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)V setItemInHand a method_6122 + p 1 hand + p 2 stack + m (Lnet/minecraft/world/InteractionHand;Z)V swing a method_23667 + p 1 hand + p 2 updateSelf + m (Lnet/minecraft/world/damagesource/DamageSource;)V die a method_6078 + c Called when the mob's health reaches 0. + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F[Lnet/minecraft/world/entity/EquipmentSlot;)V doHurtEquipment a method_57292 + p 1 damageSource + p 2 damageAmount + p 3 slots + m (Lnet/minecraft/world/damagesource/DamageSource;Z)V dropFromLootTable a method_16077 + p 1 damageSource + p 2 hitByPlayer + m (Lnet/minecraft/world/effect/MobEffectInstance;)V onEffectRemoved a method_6129 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)V onEffectAdded a method_6020 + p 1 effectInstance + p 2 entity + m (Lnet/minecraft/world/effect/MobEffectInstance;ZLnet/minecraft/world/entity/Entity;)V onEffectUpdated a method_6009 + p 1 effectInstance + p 2 forced + p 3 entity + m (Lnet/minecraft/world/entity/Entity;I)V take a method_6103 + c Called when the entity picks up an item. + p 1 entity + p 2 amount + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)F getKnockback a method_59924 + p 1 attacker + p 2 damageSource + m (Lnet/minecraft/world/entity/EntityType;)Z canAttackType a method_5973 + p 1 entityType + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getItemBySlot a method_6118 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlot a method_5673 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V onEquipItem a method_6116 + p 1 slot + p 2 oldItem + p 3 newItem + m (Lnet/minecraft/world/entity/LivingEntity;)V setLastHurtByMob a method_6015 + c Hint to AI tasks that we were attacked by the passed EntityLivingBase and should retaliate. Is not guaranteed to change our actual active target (for example if we are currently busy attacking someone else) + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/SlotAccess; createEquipmentSlotAccess a method_32321 + p 0 entity + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)Z method_32323 a method_32323 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;)Z canAttack a method_18391 + p 1 livingentity + p 2 condition + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57294 a method_57294 + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onItemPickup a method_29499 + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)V tickRidden a method_49481 + p 1 player + p 2 travelVector + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_18867 + p 1 dynamic + m (Lnet/minecraft/world/food/FoodProperties;)V addEatEffect a method_18865 + p 1 foodProperties + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/entity/EquipmentSlot;)V onEquippedItemBroken a method_20235 + p 1 item + p 2 slot + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/ItemStack;)Z method_24519 a method_24519 + m (Lnet/minecraft/world/item/ItemStack;)V updateUsingItem a method_37119 + p 1 usingItem + m (Lnet/minecraft/world/item/ItemStack;I)V spawnItemParticles a method_6037 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57293 a method_57293 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z equipmentHasChanged a method_45324 + p 1 oldItem + p 2 newItem + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; eat a method_60492 + p 1 level + p 2 food + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/food/FoodProperties;)Lnet/minecraft/world/item/ItemStack; eat a method_18866 + p 1 level + p 2 food + p 3 foodProperties + m (Lnet/minecraft/world/level/material/FluidState;)Z canStandOnFluid a method_26319 + p 1 fluidState + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/phys/AABB;)V checkAutoSpinAttack a method_6035 + p 1 boundingBoxBeforeSpin + p 2 boundingBoxAfterSpin + m (Lnet/minecraft/world/phys/Vec3;)V travel a method_6091 + p 1 travelVector + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; handleRelativeFrictionAndCalculateMovement a method_26318 + p 1 deltaMovement + p 2 friction + m (Ljava/util/List;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V method_30120 a method_30120 + m (Ljava/util/Map;)V handleHandSwap a method_30121 + p 1 hands + m (Lnet/minecraft/core/BlockPos;)V setPosToBed a method_18392 + c Sets entity position to a supplied BlockPos plus a little offset + p 1 pos + m (Lnet/minecraft/core/BlockPos;Z)V setRecordPlayingNearby a method_6006 + c Called when a record starts or stops playing. Used to make parrots start or stop partying. + p 1 jukebox + p 2 partyParrot + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/BlockPos;)V method_18393 a method_18393 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28305 a method_28305 + m (DDDZ)Z randomTeleport b method_6082 + p 1 x + p 3 y + p 5 z + p 7 broadcastTeleport + m (F)F sanitizeScale b method_56077 + p 1 scale + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V onChangedBlock b method_6126 + p 1 level + p 2 pos + m (Lnet/minecraft/sounds/SoundEvent;)V makeSound b method_56078 + p 1 sound + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/item/ItemStack; getItemInHand b method_5998 + p 1 hand + m (Lnet/minecraft/world/damagesource/DamageSource;F)V hurtArmor b method_6105 + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z addEffect b method_6092 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)Z addEffect b method_37222 + p 1 effectInstance + p 2 entity + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z doesEmitEquipEvent b method_44201 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setLastArmorItem b method_30122 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getRiddenInput b method_49482 + p 1 player + p 2 travelVector + m (Lnet/minecraft/world/item/Item;)Z isHolding b method_24518 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;I)V triggerItemUseEffects b method_6098 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; handleOnClimbable b method_18801 + p 1 deltaMovement + m (Ljava/util/Map;)V handleEquipmentChanges b method_30123 + p 1 equipments + m (Ljava/util/function/Predicate;)Z isHolding b method_24520 + p 1 predicate + m (Lnet/minecraft/core/BlockPos;)V startSleeping b method_18403 + p 1 pos + m (Lnet/minecraft/core/Holder;)Z hasEffect b method_6059 + p 1 effect + m (F)V heal c method_6025 + c Heal living entity (param: amount of half-hearts) + p 1 healAmount + m (IZ)V setLivingEntityFlag c method_6085 + p 1 key + p 2 value + m (Lnet/minecraft/tags/TagKey;)V jumpInLiquid c method_6010 + p 1 fluidTag + m (Lnet/minecraft/world/InteractionHand;)V startUsingItem c method_6019 + p 1 hand + m (Lnet/minecraft/world/damagesource/DamageSource;F)V hurtHelmet c method_36977 + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z canBeAffected c method_6049 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)V forceAddEffect c method_26082 + p 1 instance + p 2 entity + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V triggerOnDeathMobEffects c method_60699 + p 1 removalReason + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z hasItemInSlot c method_6084 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setLastHandItem c method_30124 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/LivingEntity;)Z canAttack c method_18395 + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V setLastHurtByPlayer c method_29505 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)V travelRidden c method_49483 + p 1 player + p 2 travelVector + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/sounds/SoundEvent; getDrinkingSound c method_18807 + p 1 stack + m (Ljava/util/Collection;)Z areAllEffectsAmbient c method_6089 + c Returns {@code true} if all the potion effects in the specified collection are ambient. + p 0 potionEffects + m (Lnet/minecraft/core/BlockPos;)V method_18404 c method_18404 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z trapdoorUsableAsLadder c method_6077 + p 1 pos + p 2 state + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/effect/MobEffectInstance; getEffect c method_6112 + p 1 effect + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/entity/EquipmentSlot; getSlotForHand d method_56079 + p 0 hand + m (Lnet/minecraft/world/damagesource/DamageSource;)Lnet/minecraft/sounds/SoundEvent; getHurtSound d method_6011 + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F)F getDamageAfterArmorAbsorb d method_6132 + c Reduces damage, depending on armor + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)V sendEffectToPassengers d method_52197 + p 1 effectInstance + m (Lnet/minecraft/world/entity/Entity;)V dismountVehicle d method_6038 + p 1 vehicle + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z canUseSlot d method_56991 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V blockUsingShield d method_6090 + p 1 attacker + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/sounds/SoundEvent; getEatingSound d method_18869 + p 1 stack + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/effect/MobEffectInstance; removeEffectNoUpdate d method_6111 + p 1 effect + m ()Lnet/minecraft/world/entity/ai/Brain; getBrain dT method_18868 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider dU method_28306 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createLivingAttributes dV method_26827 + m ()Z canBreatheUnderwater dW method_6094 + m ()Z hasLandedInLiquid dX method_59925 + m ()V removeFrost dY method_32324 + m ()V tryAddFrost dZ method_32325 + m (FF)I calculateFallDamage e method_23329 + p 1 fallDistance + p 2 damageMultiplier + m (Lnet/minecraft/world/damagesource/DamageSource;)V playHurtSound e method_6013 + p 1 source + m (Lnet/minecraft/world/damagesource/DamageSource;F)F getDamageAfterMagicAbsorb e method_6036 + c Reduces damage, depending on potions + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)V method_24311 e method_24311 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getLastArmorItem e method_30125 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V blockedByShield e method_6060 + p 1 defender + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/entity/EntityDimensions; getDefaultDimensions e method_55694 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;)F getRiddenSpeed e method_49485 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)V verifyEquippedItem e method_37410 + p 1 stack + m (Lnet/minecraft/core/Holder;)Z removeEffect e method_6016 + p 1 effect + m ()Lnet/minecraft/resources/ResourceKey; getLootTable eA method_5989 + m ()J getLootTableSeed eB method_51851 + m ()V skipDropExperience eC method_41329 + m ()Z wasExperienceConsumed eD method_41330 + m ()F getHurtDir eE method_48157 + m ()Lnet/minecraft/world/phys/AABB; getHitbox eF method_53510 + m ()Ljava/util/Map; activeLocationDependentEnchantments eG method_59926 + m ()Lnet/minecraft/world/entity/LivingEntity$Fallsounds; getFallSounds eH method_39760 + m ()Ljava/util/Optional; getLastClimbablePos eI method_24832 + m ()V playBlockFallSound eJ method_23328 + c Plays the fall sound for the block landed on + m ()I getArmorValue eK method_6096 + c Returns the current armor value as determined by a call to InventoryPlayer.getTotalArmorValue + m ()Lnet/minecraft/world/damagesource/CombatTracker; getCombatTracker eL method_6066 + c 1.8.9 + m ()Lnet/minecraft/world/entity/LivingEntity; getKillCredit eM method_6124 + m ()F getMaxHealth eN method_6063 + c Returns the maximum health of the entity (what it is able to regenerate up to, what it spawned with, etc.) + m ()F getMaxAbsorption eO method_52541 + m ()I getArrowCount eP method_6022 + c Counts the amount of arrows stuck in the entity. Getting hit by arrows increases this, used for rendering. + m ()I getStingerCount eQ method_21753 + m ()V updateSwingTime eR method_6119 + c Updates the arm swing progress counters and animation progress + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeMap; getAttributes eS method_6127 + m ()Lnet/minecraft/world/item/ItemStack; getMainHandItem eT method_6047 + m ()Lnet/minecraft/world/item/ItemStack; getOffhandItem eU method_6079 + m ()Ljava/lang/Iterable; getArmorSlots eV method_5661 + m ()Ljava/lang/Iterable; getHandSlots eW method_5877 + m ()Ljava/lang/Iterable; getArmorAndBodyArmorSlots eX method_56674 + m ()Ljava/lang/Iterable; getAllSlots eY method_56675 + m ()F getArmorCoverPercentage eZ method_18396 + m ()F getAgeScale ea method_17825 + m ()F getScale eb method_55693 + m ()Z isAffectedByFluids ec method_29920 + m ()V tickDeath ed method_6108 + c Handles entity death timer, experience orb, and particle creation. + m ()Z shouldDropExperience ee method_6054 + c Entity won't drop experience points if this returns false + m ()Z shouldDropLoot ef method_27071 + c Entity won't drop items if this returns false + m ()I getBaseExperienceReward eg method_6110 + m ()Z isAlwaysExperienceDropper eh method_6071 + c Only use is to identify if class is an instance of player for experience dropping + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtByMob ei method_6065 + m ()I getLastHurtByMobTimestamp ej method_6117 + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtMob ek method_6052 + m ()I getLastHurtMobTimestamp el method_6083 + m ()I getNoActionTime em method_6131 + m ()Z shouldDiscardFriction en method_35053 + m ()V tickEffects eo method_6050 + m ()Z canBeSeenAsEnemy ep method_33190 + m ()Z canBeSeenByAnyone eq method_36608 + m ()V removeEffectParticles er method_6069 + c Resets the potion effect color and ambience metadata values + m ()Z removeAllEffects es method_6012 + m ()Ljava/util/Collection; getActiveEffects et method_6026 + m ()Ljava/util/Map; getActiveEffectsMap eu method_6088 + m ()Z isInvertedHealAndHarm ev method_5999 + c Returns {@code true} if this entity is undead. + m ()F getHealth ew method_6032 + m ()Z isDeadOrDying ex method_29504 + m ()Lnet/minecraft/world/damagesource/DamageSource; getLastDamageSource ey method_6081 + m ()V dropEquipment ez method_16078 + m (FF)F tickHeadTurn f method_6031 + p 1 yRot + p 2 animStep + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isDamageSourceBlocked f method_6061 + c Determines whether the entity can block the damage source based on the damage source's location, whether the damage source is blockable, and whether the entity is blocking. + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F)V actuallyHurt f method_6074 + c Deals damage to the entity. This will take the armor of the entity into consideration before damaging the health bar. + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getLastHandItem f method_30126 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V createWitherRose f method_23733 + p 1 entitySource + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/phys/AABB; getLocalBoundsForPose f method_24833 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Z canTakeItem f method_18397 + p 1 stack + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttribute f method_5996 + p 1 attribute + m ()Z isFallFlying fA method_6128 + m ()I getFallFlyingTicks fB method_6003 + m ()Z isAffectedByPotions fC method_6086 + c Returns false if the entity is an armor stand. Returns {@code true} for all other entity living bases. + m ()Z attackable fD method_6102 + m ()Lcom/google/common/collect/ImmutableList; getDismountPoses fE method_24831 + m ()Ljava/util/Optional; getSleepingPos fF method_18398 + m ()V clearSleepingPos fG method_18399 + m ()Z isSleeping fH method_6113 + c Returns whether player is sleeping or not + m ()V stopSleeping fI method_18400 + m ()Lnet/minecraft/core/Direction; getBedOrientation fJ method_18401 + c Gets the {@link net.minecraft.core.Direction} for the camera if this entity is sleeping. + m ()Z canDisableShield fK method_42149 + m ()Z hasInfiniteMaterials fL method_56992 + m ()V onEnterCombat f_ method_6000 + c Sends an ENTER_COMBAT packet to the client + m ()F getSoundVolume fa method_6107 + c Returns the volume for the sounds this mob makes. + m ()F getVoicePitch fb method_6017 + c Gets the pitch of living sounds in living entities. + m ()Z isImmobile fc method_6062 + c Dead and sleeping entities cannot move + m ()F getJumpPower fd method_6106 + m ()F getJumpBoostPower fe method_37416 + m ()V jumpFromGround ff method_6043 + c Causes this entity to do an upwards motion (jumping). + m ()V goDownInWater fg method_6093 + m ()F getWaterSlowDown fh method_6120 + m ()F getFlyingSpeed fi method_49484 + m ()F getSpeed fj method_6029 + c Gets the movespeed used for the new AI system. + m ()F getMaxHeadRotationRelativeToBody fk method_53964 + m ()Z isSensitiveToWater fl method_29503 + m ()V serverAiStep fm method_6023 + m ()Z isAutoSpinAttack fn method_6123 + m ()F getAbsorptionAmount fo method_6067 + c Returns the amount of health added by the Absorption effect. + m ()V updateEffectVisibility fp method_6008 + m ()Lnet/minecraft/world/entity/HumanoidArm; getMainArm fq method_6068 + m ()Z isUsingItem fr method_6115 + m ()Lnet/minecraft/world/InteractionHand; getUsedItemHand fs method_6058 + m ()Lnet/minecraft/world/item/ItemStack; getUseItem ft method_6030 + m ()I getUseItemRemainingTicks fu method_6014 + m ()I getTicksUsingItem fv method_6048 + m ()V releaseUsingItem fw method_6075 + m ()V stopUsingItem fx method_6021 + m ()Z isBlocking fy method_6039 + m ()Z isSuppressingSlidingDownLadder fz method_21754 + m (Lnet/minecraft/world/damagesource/DamageSource;)Z checkTotemDeathProtection g method_6095 + p 1 damageSource + m (Lnet/minecraft/world/entity/EquipmentSlot;)B entityEventForEquipmentBreak g method_20237 + p 0 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V doAutoAttackOnTouch g method_5997 + p 1 target + m (Lnet/minecraft/world/entity/Pose;)Z wouldNotSuffocateAtTargetPose g method_52542 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; getProjectile g method_18808 + c Gets an item stack available to this entity to be loaded into the provided weapon, or an empty item stack if no such item stack is available. + p 1 weaponStack + m (Lnet/minecraft/core/BlockPos;)V setSleepingPos g method_18402 + p 1 pos + m (Lnet/minecraft/core/Holder;)D getAttributeValue g method_45325 + p 1 attribute + m ()V onLeaveCombat g_ method_6044 + c Sends an END_COMBAT packet to the client + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlotForItem h method_32326 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_20477 h method_20477 + m (Lnet/minecraft/core/Holder;)D getAttributeBaseValue h method_45326 + p 1 attribute + m (Lnet/minecraft/world/item/ItemStack;)V breakItem i method_6045 + c Renders broken item particles using the given ItemStack + p 1 stack + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_18405 i method_18405 + m (Lnet/minecraft/core/Holder;)V onAttributeUpdated i method_52540 + p 1 attribute + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; resetForwardDirectionOfRelativePortalPosition k method_31079 + p 0 relativePortalPosition + m (I)I decreaseAirSupply m method_6130 + c Decrements the entity's air supply when underwater + p 1 currentAir + m ()V aiStep m_ method_6007 + c Called every tick so the entity can update its state as required. For example, zombies and skeletons use this to react to sunlight and start to burn. + m (I)I increaseAirSupply n method_6064 + p 1 currentAir + m ()Lnet/minecraft/sounds/SoundEvent; getDeathSound n_ method_6002 + m (I)V setNoActionTime o method_16826 + p 1 idleTime + m ()Z isBaby o_ method_6109 + c If Animal, checks if the age timer is negative + m (DDD)V knockback p method_6005 + p 1 strength + p 3 x + p 5 z + m (I)V setArrowCount p method_6097 + c Sets the amount of arrows stuck in the entity. Used for rendering those. + p 1 count + m ()Z onClimbable p_ method_6101 + c Returns {@code true} if this entity should move as if it were on a ladder (either because it's actually on a ladder, or for AI reasons) + m (I)V setStingerCount q method_21755 + p 1 stingerCount + m ()V pushEntities r method_6070 + m (I)Lnet/minecraft/sounds/SoundEvent; getFallDamageSound r method_6041 + p 1 height + m (Z)V setDiscardFriction r method_35054 + p 1 discardFriction + m ()V updateSynchronizedMobEffectParticles s method_58150 + m (I)Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlot s method_32322 + p 0 index + m (Z)V calculateEntityAnimation s method_29242 + p 1 includeHeight + m (Z)V setJumping t method_6100 + p 1 jumping + m ()V updateGlowingStatus v method_36362 + m (F)V setHealth v method_6033 + p 1 health + m (F)I getComfortableFallDistance w method_56993 + p 1 health + m (F)V hurtCurrentlyUsedShield x method_6056 + p 1 damageAmount + m (F)F getJumpPower y method_56994 + p 1 multiplier + m (F)V updateWalkAnimation z method_48565 + p 1 partialTick + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/LivingEntity$1 btn$1 net/minecraft/class_1309$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_6288 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot b field_19169 + m ()V +c net/minecraft/world/entity/LivingEntity$Fallsounds btn$a net/minecraft/class_1309$class_6823 + f Lnet/minecraft/sounds/SoundEvent; small a comp_301 + f Lnet/minecraft/sounds/SoundEvent; big b comp_302 + m ()Lnet/minecraft/sounds/SoundEvent; small a comp_301 + m ()Lnet/minecraft/sounds/SoundEvent; big b comp_302 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V +c net/minecraft/world/entity/Marker bto net/minecraft/class_6335 + f Ljava/lang/String; DATA_TAG b field_33457 + f Lnet/minecraft/nbt/CompoundTag; data c field_33458 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/Mob btp net/minecraft/class_1308 + f F MAX_WEARING_ARMOR_CHANCE bH field_30091 + f F MAX_PICKUP_LOOT_CHANCE bI field_30083 + f F MAX_ENCHANTED_ARMOR_CHANCE bJ field_30084 + f F MAX_ENCHANTED_WEAPON_CHANCE bK field_30085 + f F DEFAULT_EQUIPMENT_DROP_CHANCE bL field_34043 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_MOB_FLAGS_ID b field_6193 + f F PRESERVE_ITEM_DROP_CHANCE_THRESHOLD bM field_52220 + f I PRESERVE_ITEM_DROP_CHANCE bN field_38932 + f I UPDATE_GOAL_SELECTOR_EVERY_N_TICKS bO field_35039 + f Lnet/minecraft/resources/ResourceLocation; RANDOM_SPAWN_BONUS_ID bP field_51997 + f I ambientSoundTime bQ field_6191 + f I xpReward bR field_6194 + f Lnet/minecraft/world/entity/ai/control/LookControl; lookControl bS field_6206 + f Lnet/minecraft/world/entity/ai/control/MoveControl; moveControl bT field_6207 + f Lnet/minecraft/world/entity/ai/control/JumpControl; jumpControl bU field_6204 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation bV field_6189 + f Lnet/minecraft/world/entity/ai/goal/GoalSelector; goalSelector bW field_6201 + f Lnet/minecraft/world/entity/ai/goal/GoalSelector; targetSelector bX field_6185 + f [F handDropChances bY field_6187 + f [F armorDropChances bZ field_6186 + f I MOB_FLAG_NO_AI c field_30088 + f F bodyArmorDropChance ca field_48828 + f Lnet/minecraft/core/Vec3i; ITEM_PICKUP_REACH cb field_38386 + f D DEFAULT_ATTACK_REACH cc field_45969 + f Lnet/minecraft/world/entity/ai/control/BodyRotationControl; bodyRotationControl cd field_6188 + f Lnet/minecraft/world/entity/LivingEntity; target ce field_6199 + f Lnet/minecraft/world/entity/ai/sensing/Sensing; sensing cf field_6190 + f Lnet/minecraft/core/NonNullList; handItems cg field_6195 + f Lnet/minecraft/core/NonNullList; armorItems ch field_6205 + f Lnet/minecraft/world/item/ItemStack; bodyArmorItem ci field_48829 + f Z canPickUpLoot cj field_6203 + f Z persistenceRequired ck field_6200 + f Ljava/util/Map; pathfindingMalus cl field_6196 + f Lnet/minecraft/resources/ResourceKey; lootTable cm field_6198 + f J lootTableSeed cn field_6184 + f Lnet/minecraft/world/entity/Leashable$LeashData; leashData co field_52221 + f Lnet/minecraft/core/BlockPos; restrictCenter cp field_18074 + f F restrictRadius cq field_18075 + f I MOB_FLAG_LEFTHANDED d field_30089 + f I MOB_FLAG_AGGRESSIVE e field_30090 + f I PICKUP_REACH h field_30087 + m ()V registerGoals B method_5959 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createMobAttributes C method_26828 + m ()Z shouldPassengersInheritMalus D method_26323 + m ()V onPathfindingStart E method_51504 + m (F)V setZza E method_5930 + p 1 amount + m ()V onPathfindingDone F method_51503 + m (F)V setYya F method_5976 + p 1 amount + m (F)V setXxa G method_5938 + p 1 amount + m ()Lnet/minecraft/world/entity/ai/control/BodyRotationControl; createBodyControl H method_5963 + m ()Lnet/minecraft/world/entity/ai/control/LookControl; getLookControl I method_5988 + m ()Lnet/minecraft/world/entity/ai/control/MoveControl; getMoveControl J method_5962 + m ()Lnet/minecraft/world/entity/ai/control/JumpControl; getJumpControl L method_5993 + m ()Lnet/minecraft/world/entity/ai/navigation/PathNavigation; getNavigation N method_5942 + m ()Lnet/minecraft/world/entity/ai/sensing/Sensing; getSensing O method_5985 + m ()Lnet/minecraft/world/entity/LivingEntity; getTargetFromBrain P method_59664 + m ()V ate Q method_5983 + c Applies the benefits of growing back wool and faster growing up to the acting entity. This function is used in the {@code EatBlockGoal}. + m ()I getAmbientSoundInterval R method_5970 + c Get number of ticks, at least during which the living entity will be silent. + m ()V playAmbientSound S method_5966 + c Plays living's sound at its position + m ()V spawnAnim T method_5990 + c Spawns an explosion particle around the Entity's location + m ()V updateControlFlags U method_20417 + c Sets MOVE, JUMP, LOOK Goal.Flags depending if entity is riding or been controlled + m ()Lnet/minecraft/resources/ResourceKey; getDefaultLootTable V method_5991 + m ()V stopInPlace W method_55695 + m ()Lnet/minecraft/core/Vec3i; getPickupReach X method_42646 + m ()Z requiresCustomPersistence Y method_17326 + m ()Z shouldDespawnInPeaceful Z method_23734 + m (FFF)F rotlerp a method_5960 + c Arguments: current rotation, intended rotation, max increment. + p 1 angle + p 2 targetAngle + p 3 maxIncrease + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V equip a method_59665 + p 1 equipmentLootTable + p 2 slotDropChances + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/storage/loot/LootParams; createEquipmentParams a method_58635 + p 1 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V populateDefaultEquipmentSlots a method_5964 + p 1 random + p 2 difficulty + m (Lnet/minecraft/world/entity/Entity;FF)V lookAt a method_5951 + c Changes the X and Y rotation so that this entity is facing the given entity. + p 1 entity + p 2 maxYRotIncrease + p 3 maxXRotIncrease + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMobSpawnRules a method_20636 + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Z)Lnet/minecraft/world/entity/Mob; convertTo a method_29243 + p 1 entityType + p 2 transferInventory + m (Lnet/minecraft/world/entity/EquipmentSlot;I)Lnet/minecraft/world/item/Item; getEquipmentForSlot a method_5948 + p 0 slot + p 1 chance + m (Lnet/minecraft/world/entity/EquipmentTable;)V equip a method_58634 + p 1 equipmentTable + m (Lnet/minecraft/world/entity/ai/goal/Goal;)Z method_47824 a method_47824 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;)V onOffspringSpawnedFromEgg a method_18249 + p 1 player + p 2 child + m (Lnet/minecraft/world/item/ProjectileWeaponItem;)Z canFireProjectileWeapon a method_25938 + p 1 projectileWeapon + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;)Z checkSpawnRules a method_5979 + p 1 level + p 2 reason + m (Lnet/minecraft/world/level/LevelReader;)Z checkSpawnObstruction a method_5957 + p 1 level + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V populateDefaultEquipmentEnchantments a method_5984 + p 1 level + p 2 random + p 3 difficulty + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/DifficultyInstance;)V enchantSpawnedArmor a method_30758 + p 1 level + p 2 random + p 3 slot + p 4 difficulty + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/world/entity/SpawnGroupData;)Lnet/minecraft/world/entity/SpawnGroupData; finalizeSpawn a method_5943 + p 1 level + p 2 difficulty + p 3 spawnType + p 4 spawnGroupData + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/util/RandomSource;FLnet/minecraft/world/DifficultyInstance;)V enchantSpawnedEquipment a method_59927 + p 1 level + p 2 slot + p 3 random + p 4 enchantChance + p 5 difficulty + m (Lnet/minecraft/world/level/pathfinder/PathType;)F getPathfindingMalus a method_5944 + p 1 pathType + m (Lnet/minecraft/world/level/pathfinder/PathType;F)V setPathfindingMalus a method_5941 + p 1 pathType + p 2 malus + m (Lnet/minecraft/core/BlockPos;)Z isWithinRestriction a method_18407 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)V restrictTo a method_18408 + p 1 pos + p 2 distance + m (Z)V setBaby a method_7217 + c Set whether this mob is a child. + p 1 baby + m (Z)V setCanPickUpLoot a_ method_5952 + p 1 canPickUpLoot + m ()V sendDebugPackets aa method_18409 + m ()V customServerAiStep ab method_5958 + m ()I getMaxHeadXRot ac method_5978 + c The speed it takes to move the entity's head rotation through the faceEntity method. + m ()I getMaxHeadYRot ae method_5986 + m ()V clampHeadRotationToBody af method_56080 + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlotAndDropWhenKilled b method_24834 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem b method_5949 + c Tests if this entity should pick up a weapon or an armor piece. Entity drops current weapon or armor if the new one is better. + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; mobInteract b method_5992 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;)V method_24522 b method_24522 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canReplaceCurrentItem b method_5955 + p 1 candidate + p 2 existing + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; createNavigation b method_5965 + p 1 level + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V enchantSpawnedWeapon b method_30759 + p 1 level + p 2 random + p 3 difficulty + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; checkAndHandleImportantInteractions c method_29506 + p 1 player + p 2 hand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canReplaceEqualItem c method_26320 + p 1 candidate + p 2 existing + m (Ljava/util/function/Predicate;)Ljava/util/Set; dropPreservedEquipment c method_60972 + p 1 predicate + m (Ljava/util/function/Predicate;)V removeAllGoals d method_47825 + p 1 filter + m (Lnet/minecraft/world/entity/EquipmentSlot;)V setGuaranteedDrop e method_25939 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;)F getEquipmentDropChance f method_5929 + p 1 slot + m ()I getHeadRotSpeed fM method_20240 + m ()I getMaxSpawnClusterSize fN method_5945 + c Will return how many at most can spawn in a chunk at once. + m ()Lnet/minecraft/world/item/ItemStack; getBodyArmorItem fO method_56676 + m ()Z isWearingBodyArmor fP method_56677 + m ()V dropPreservedEquipment fQ method_60973 + m ()V setPersistenceRequired fR method_5971 + c Enable the Entity persistence + m ()Z canPickUpLoot fS method_5936 + m ()Z isPersistenceRequired fT method_5947 + c @return {@code true} if this entity may not naturally despawn. + m ()Z isWithinRestriction fU method_18411 + m ()Lnet/minecraft/core/BlockPos; getRestrictCenter fV method_18412 + m ()F getRestrictRadius fW method_18413 + m ()V clearRestriction fX method_35055 + m ()Z hasRestriction fY method_18410 + m ()Z isNoAi fZ method_5987 + c Get whether this Entity's AI is disabled + m ()Z isLeftHanded ga method_5961 + m ()Z isAggressive gb method_6510 + m ()Lnet/minecraft/world/phys/AABB; getAttackBoundingBox gc method_53511 + m ()V playAttackSound gd method_59928 + m ()Z isSunBurnTick ge method_5972 + m ()V removeFreeWill gf method_35056 + m (D)Z removeWhenFarAway h method_5974 + p 1 distanceToClosestPlayer + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget h method_5980 + c Sets the active target the Goal system uses for tracking + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z isWithinMeleeAttackRange i method_42150 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; equipItemIfPossible i method_24523 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canHoldItem j method_5939 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z wantsToPickUp k method_20820 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isBodyArmorItem l method_6773 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V setBodyArmorItem m method_56678 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)D getApproximateAttackDamageWithItem o method_57295 + p 1 itemStack + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnyComponentExceptDamage p method_57296 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;)V method_37341 q method_37341 + m (I)Z isMaxGroupSizeReached r method_5969 + p 1 size + m (Lnet/minecraft/world/item/ItemStack;)Z method_60974 r method_60974 + m ()V resetAmbientSoundTime s method_5975 + m (Z)V setNoAi u method_5977 + c Set whether this Entity's AI is disabled + p 1 noAi + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientSound v method_5994 + m (Z)V setLeftHanded v method_5937 + p 1 leftHanded + m (Z)V setAggressive w method_19540 + p 1 aggressive + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Mob$1 btp$1 net/minecraft/class_1308$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_6209 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot b field_6208 + m ()V +c net/minecraft/world/entity/MobCategory btq net/minecraft/class_1311 + f Lnet/minecraft/world/entity/MobCategory; MONSTER a field_6302 + f Lnet/minecraft/world/entity/MobCategory; CREATURE b field_6294 + f Lnet/minecraft/world/entity/MobCategory; AMBIENT c field_6303 + f Lnet/minecraft/world/entity/MobCategory; AXOLOTLS d field_34447 + f Lnet/minecraft/world/entity/MobCategory; UNDERGROUND_WATER_CREATURE e field_30092 + f Lnet/minecraft/world/entity/MobCategory; WATER_CREATURE f field_6300 + f Lnet/minecraft/world/entity/MobCategory; WATER_AMBIENT g field_24460 + f Lnet/minecraft/world/entity/MobCategory; MISC h field_17715 + f Lcom/mojang/serialization/Codec; CODEC i field_24655 + f I max j field_6297 + f Z isFriendly k field_6298 + f Z isPersistent l field_6295 + f Ljava/lang/String; name m field_6304 + f I noDespawnDistance n field_24461 + f I despawnDistance o field_24462 + f [Lnet/minecraft/world/entity/MobCategory; $VALUES p field_6301 + m ()Ljava/lang/String; getName a method_6133 + m ()I getMaxInstancesPerChunk b method_6134 + m ()Z isFriendly d method_6136 + c Gets whether this creature type is peaceful. + m ()Z isPersistent e method_6135 + c Return whether this creature type is an animal. + m ()I getDespawnDistance f method_27919 + m ()I getNoDespawnDistance g method_27920 + m ()[Lnet/minecraft/world/entity/MobCategory; $values h method_36609 + m (Ljava/lang/String;ILjava/lang/String;IZZI)V + p 3 name + p 4 max + p 5 isFriendly + p 6 isPersistent + p 7 despawnDistance + m ()V +c net/minecraft/world/entity/MobSpawnType btr net/minecraft/class_3730 + f Lnet/minecraft/world/entity/MobSpawnType; NATURAL a field_16459 + f Lnet/minecraft/world/entity/MobSpawnType; CHUNK_GENERATION b field_16472 + f Lnet/minecraft/world/entity/MobSpawnType; SPAWNER c field_16469 + f Lnet/minecraft/world/entity/MobSpawnType; STRUCTURE d field_16474 + f Lnet/minecraft/world/entity/MobSpawnType; BREEDING e field_16466 + f Lnet/minecraft/world/entity/MobSpawnType; MOB_SUMMONED f field_16471 + f Lnet/minecraft/world/entity/MobSpawnType; JOCKEY g field_16460 + f Lnet/minecraft/world/entity/MobSpawnType; EVENT h field_16467 + f Lnet/minecraft/world/entity/MobSpawnType; CONVERSION i field_16468 + f Lnet/minecraft/world/entity/MobSpawnType; REINFORCEMENT j field_16463 + f Lnet/minecraft/world/entity/MobSpawnType; TRIGGERED k field_16461 + f Lnet/minecraft/world/entity/MobSpawnType; BUCKET l field_16473 + f Lnet/minecraft/world/entity/MobSpawnType; SPAWN_EGG m field_16465 + f Lnet/minecraft/world/entity/MobSpawnType; COMMAND n field_16462 + f Lnet/minecraft/world/entity/MobSpawnType; DISPENSER o field_16470 + f Lnet/minecraft/world/entity/MobSpawnType; PATROL p field_16527 + f Lnet/minecraft/world/entity/MobSpawnType; TRIAL_SPAWNER q field_47245 + f [Lnet/minecraft/world/entity/MobSpawnType; $VALUES r field_16464 + m ()[Lnet/minecraft/world/entity/MobSpawnType; $values a method_36610 + m (Lnet/minecraft/world/entity/MobSpawnType;)Z isSpawner a method_54986 + p 0 spawnType + m (Lnet/minecraft/world/entity/MobSpawnType;)Z ignoresLightRequirements b method_54987 + p 0 spawnType + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/MoverType bts net/minecraft/class_1313 + f Lnet/minecraft/world/entity/MoverType; SELF a field_6308 + f Lnet/minecraft/world/entity/MoverType; PLAYER b field_6305 + f Lnet/minecraft/world/entity/MoverType; PISTON c field_6310 + f Lnet/minecraft/world/entity/MoverType; SHULKER_BOX d field_6306 + f Lnet/minecraft/world/entity/MoverType; SHULKER e field_6309 + f [Lnet/minecraft/world/entity/MoverType; $VALUES f field_6307 + m ()[Lnet/minecraft/world/entity/MoverType; $values a method_36611 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/NeutralMob btt net/minecraft/class_5354 + f Ljava/lang/String; TAG_ANGER_TIME c_ field_30093 + f Ljava/lang/String; TAG_ANGRY_AT d_ field_30094 + m ()V stopBeingAngry Z_ method_29922 + m ()I getRemainingPersistentAngerTime a method_29507 + m (I)V setRemainingPersistentAngerTime a method_29514 + p 1 remainingPersistentAngerTime + m (Lnet/minecraft/server/level/ServerLevel;Z)V updatePersistentAnger a method_29510 + p 1 serverLevel + p 2 updateAnger + m (Lnet/minecraft/world/entity/LivingEntity;)V setLastHurtByMob a method_6015 + c Hint to AI tasks that we were attacked by the passed EntityLivingBase and should retaliate. Is not guaranteed to change our actual active target (for example if we are currently busy attacking someone else) + p 1 livingEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/nbt/CompoundTag;)V readPersistentAngerSaveData a method_29512 + p 1 level + p 2 tag + m (Ljava/util/UUID;)V setPersistentAngerTarget a method_29513 + p 1 persistentAngerTarget + m (Lnet/minecraft/world/entity/LivingEntity;)Z isAngryAt a_ method_29515 + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V playerDied a_ method_29516 + p 1 player + m (Lnet/minecraft/world/level/Level;)Z isAngryAtAllPlayers a_ method_29923 + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;)V addPersistentAngerSaveData a_ method_29517 + p 1 nbt + m ()Z isAngry ad_ method_29511 + m ()V forgetCurrentTargetAndRefreshUniversalAnger ae_ method_29921 + m ()Ljava/util/UUID; getPersistentAngerTarget b method_29508 + m ()V startPersistentAngerTimer c method_29509 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canAttack c method_18395 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;)V setLastHurtByPlayer c method_29505 + p 1 player + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtByMob ei method_6065 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget h method_5980 + c Sets the active target the Task system uses for tracking + p 1 livingEntity + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 + c Gets the active target the Task system uses for tracking +c net/minecraft/world/entity/OminousItemSpawner btu net/minecraft/class_9461 + f I TICKS_BEFORE_ABOUT_TO_SPAWN_SOUND b field_50128 + f I SPAWN_ITEM_DELAY_MIN c field_50129 + f I SPAWN_ITEM_DELAY_MAX d field_50130 + f Ljava/lang/String; TAG_SPAWN_ITEM_AFTER_TICKS e field_50131 + f Ljava/lang/String; TAG_ITEM f field_50132 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM g field_50133 + f J spawnItemAfterTicks h field_50134 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_58636 + p 1 item + m (Lnet/minecraft/world/level/Level;I)V method_58637 a method_58637 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/OminousItemSpawner; create a method_58638 + p 0 level + p 1 item + m ()V addParticles p method_58639 + m ()Lnet/minecraft/world/item/ItemStack; getItem s method_58640 + m ()V tickServer t method_58641 + m ()V tickClient v method_58642 + m ()V spawnItem w method_58643 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/OwnableEntity btv net/minecraft/class_6025 + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner T_ method_35057 + m ()Ljava/util/UUID; getOwnerUUID aa_ method_6139 + m ()Lnet/minecraft/world/level/EntityGetter; level e method_48926 +c net/minecraft/world/entity/PathfinderMob btw net/minecraft/class_1314 + f F DEFAULT_WALK_TARGET_VALUE cb field_35670 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelReader;)F getWalkTargetValue a method_6144 + p 1 pos + p 2 level + m (Lnet/minecraft/core/BlockPos;)F getWalkTargetValue c method_6149 + p 1 pos + m ()Z isPathFinding gg method_6150 + c Returns whether the entity got a {@link net.minecraft.world.level.pathfinder.Path}. + m ()Z isPanicking gh method_52546 + m ()Z shouldStayCloseToLeashHolder gi method_43689 + m ()D followLeashSpeed gj method_6148 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/PlayerRideable btx net/minecraft/class_6026 +c net/minecraft/world/entity/PlayerRideableJumping bty net/minecraft/class_1316 + m ()Z canJump a method_6153 + m ()V handleStopJump b method_6156 + m (I)V onPlayerJump b method_6154 + p 1 jumpPower + m ()I getJumpCooldown c method_45327 + m (I)V handleStartJump c method_6155 + p 1 jumpPower +c net/minecraft/world/entity/PortalProcessor btz net/minecraft/class_9787 + f Lnet/minecraft/world/level/block/Portal; portal a field_51998 + f Lnet/minecraft/core/BlockPos; entryPosition b field_51999 + f I portalTime c field_52000 + f Z insidePortalThisTick d field_52001 + m ()Lnet/minecraft/world/level/block/Portal$Transition; getPortalLocalTransition a method_60700 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/portal/DimensionTransition; getPortalDestination a method_60701 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Z)Z processPortalTeleportation a method_60702 + p 1 level + p 2 entity + p 3 canChangeDimensions + m (Lnet/minecraft/world/level/block/Portal;)Z isSamePortal a method_60703 + p 1 portal + m (Lnet/minecraft/core/BlockPos;)V updateEntryPosition a method_60704 + p 1 entryPosition + m (Z)V setAsInsidePortalThisTick a method_60705 + p 1 insidePortalThisTick + m ()Z hasExpired b method_60706 + m ()Lnet/minecraft/core/BlockPos; getEntryPosition c method_60707 + m ()I getPortalTime d method_60708 + m ()Z isInsidePortalThisTick e method_60709 + m ()V decayTick f method_60710 + m (Lnet/minecraft/world/level/block/Portal;Lnet/minecraft/core/BlockPos;)V + p 1 portal + p 2 entryPosition +c net/minecraft/world/entity/Pose bua net/minecraft/class_4050 + f Lnet/minecraft/world/entity/Pose; STANDING a field_18076 + f Lnet/minecraft/world/entity/Pose; FALL_FLYING b field_18077 + f Lnet/minecraft/world/entity/Pose; SLEEPING c field_18078 + f Lnet/minecraft/world/entity/Pose; SWIMMING d field_18079 + f Lnet/minecraft/world/entity/Pose; SPIN_ATTACK e field_18080 + f Lnet/minecraft/world/entity/Pose; CROUCHING f field_18081 + f Lnet/minecraft/world/entity/Pose; LONG_JUMPING g field_30095 + f Lnet/minecraft/world/entity/Pose; DYING h field_18082 + f Lnet/minecraft/world/entity/Pose; CROAKING i field_37422 + f Lnet/minecraft/world/entity/Pose; USING_TONGUE j field_37423 + f Lnet/minecraft/world/entity/Pose; SITTING k field_40118 + f Lnet/minecraft/world/entity/Pose; ROARING l field_38097 + f Lnet/minecraft/world/entity/Pose; SNIFFING m field_38098 + f Lnet/minecraft/world/entity/Pose; EMERGING n field_38099 + f Lnet/minecraft/world/entity/Pose; DIGGING o field_38100 + f Lnet/minecraft/world/entity/Pose; SLIDING p field_47246 + f Lnet/minecraft/world/entity/Pose; SHOOTING q field_47247 + f Lnet/minecraft/world/entity/Pose; INHALING r field_47248 + f Ljava/util/function/IntFunction; BY_ID s field_48322 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC t field_48323 + f I id u field_48324 + f [Lnet/minecraft/world/entity/Pose; $VALUES v field_18083 + m ()I id a method_56081 + m ()[Lnet/minecraft/world/entity/Pose; $values b method_36612 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/PowerableMob bub net/minecraft/class_4582 + m ()Z isPowered a method_6872 +c net/minecraft/world/entity/RelativeMovement buc net/minecraft/class_2709 + f Lnet/minecraft/world/entity/RelativeMovement; X a field_12400 + f Lnet/minecraft/world/entity/RelativeMovement; Y b field_12398 + f Lnet/minecraft/world/entity/RelativeMovement; Z c field_12403 + f Lnet/minecraft/world/entity/RelativeMovement; Y_ROT d field_12401 + f Lnet/minecraft/world/entity/RelativeMovement; X_ROT e field_12397 + f Ljava/util/Set; ALL f field_40710 + f Ljava/util/Set; ROTATION g field_40711 + f I bit h field_12399 + f [Lnet/minecraft/world/entity/RelativeMovement; $VALUES i field_12402 + m ()I getMask a method_11742 + m (I)Ljava/util/Set; unpack a method_11744 + p 0 packedMovements + m (Ljava/util/Set;)I pack a method_11741 + p 0 movements + m ()[Lnet/minecraft/world/entity/RelativeMovement; $values b method_36952 + m (I)Z isSet b method_11743 + p 1 packedMovements + m (Ljava/lang/String;II)V + p 3 bit + m ()V +c net/minecraft/world/entity/ReputationEventHandler bud net/minecraft/class_4094 + m (Lnet/minecraft/world/entity/ai/village/ReputationEventType;Lnet/minecraft/world/entity/Entity;)V onReputationEventFrom a method_18870 + p 1 type + p 2 target +c net/minecraft/world/entity/Saddleable bue net/minecraft/class_5146 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/sounds/SoundSource;)V equipSaddle a method_6576 + p 1 stack + p 2 soundSource + m ()Lnet/minecraft/sounds/SoundEvent; getSaddleSoundEvent ac_ method_45328 + m ()Z isSaddleable f method_6765 + m ()Z isSaddled i method_6725 +c net/minecraft/world/entity/Shearable buf net/minecraft/class_5147 + m ()Z readyForShearing a method_27072 + m (Lnet/minecraft/sounds/SoundSource;)V shear a method_6636 + p 1 source +c net/minecraft/world/entity/SlotAccess bug net/minecraft/class_5630 + f Lnet/minecraft/world/entity/SlotAccess; NULL a field_27860 + m ()Lnet/minecraft/world/item/ItemStack; get a method_32327 + m (Lnet/minecraft/world/Container;I)Lnet/minecraft/world/entity/SlotAccess; forContainer a method_32328 + p 0 inventory + p 1 slot + m (Lnet/minecraft/world/Container;ILjava/util/function/Predicate;)Lnet/minecraft/world/entity/SlotAccess; forContainer a method_32329 + p 0 inventory + p 1 slot + p 2 stackFilter + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/SlotAccess; forEquipmentSlot a method_32330 + p 0 entity + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/SlotAccess; forEquipmentSlot a method_32331 + p 0 entity + p 1 slot + p 2 stackFilter + m (Lnet/minecraft/world/item/ItemStack;)Z set a method_32332 + p 1 carried + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;)Lnet/minecraft/world/entity/SlotAccess; of a method_59666 + p 0 getter + p 1 setter + m (Lnet/minecraft/world/item/ItemStack;)Z method_32333 b method_32333 + m (Lnet/minecraft/world/item/ItemStack;)Z method_32334 c method_32334 + m ()V +c net/minecraft/world/entity/SlotAccess$1 bug$1 net/minecraft/class_5630$1 + m ()V +c net/minecraft/world/entity/SlotAccess$2 bug$2 net/minecraft/class_5630$2 + f Ljava/util/function/Supplier; val$getter b field_51376 + f Ljava/util/function/Consumer; val$setter c field_51377 + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;)V +c net/minecraft/world/entity/SlotAccess$3 bug$3 net/minecraft/class_5630$3 + f Lnet/minecraft/world/Container; val$inventory b field_27861 + f I val$id c field_27862 + f Ljava/util/function/Predicate; val$validator d field_27863 + m (Lnet/minecraft/world/Container;ILjava/util/function/Predicate;)V +c net/minecraft/world/entity/SlotAccess$4 bug$4 net/minecraft/class_5630$4 + f Lnet/minecraft/world/entity/LivingEntity; val$entity b field_27864 + f Lnet/minecraft/world/entity/EquipmentSlot; val$slot c field_27865 + f Ljava/util/function/Predicate; val$validator d field_27866 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/Predicate;)V +c net/minecraft/world/entity/SpawnGroupData buh net/minecraft/class_1315 +c net/minecraft/world/entity/SpawnPlacementType bui net/minecraft/class_9168 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; adjustSpawnPosition a method_56553 + p 1 level + p 2 pos +c net/minecraft/world/entity/SpawnPlacementTypes buj net/minecraft/class_9169 + f Lnet/minecraft/world/entity/SpawnPlacementType; NO_RESTRICTIONS a field_48742 + f Lnet/minecraft/world/entity/SpawnPlacementType; IN_WATER b field_48743 + f Lnet/minecraft/world/entity/SpawnPlacementType; IN_LAVA c field_48744 + f Lnet/minecraft/world/entity/SpawnPlacementType; ON_GROUND d field_48745 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56554 a method_56554 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56555 b method_56555 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56556 c method_56556 + m ()V +c net/minecraft/world/entity/SpawnPlacementTypes$1 buj$1 net/minecraft/class_9169$1 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z isValidEmptySpawnBlock a method_56557 + p 1 level + p 2 pos + p 3 entityType + m ()V +c net/minecraft/world/entity/SpawnPlacements buk net/minecraft/class_1317 + f Ljava/util/Map; DATA_BY_TYPE a field_6313 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/SpawnPlacementType; getPlacementType a method_6159 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/SpawnPlacementType;Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate;)V register a method_20637 + p 0 entityType + p 1 spawnPlacementType + p 2 heightmapType + p 3 predicate + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isSpawnPositionOk a method_56558 + p 0 entityType + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSpawnRules a method_20638 + p 0 entityType + p 1 serverLevel + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightmapType b method_6160 + p 0 entityType + m ()V + m ()V +c net/minecraft/world/entity/SpawnPlacements$Data buk$a net/minecraft/class_1317$class_1318 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightMap a comp_2253 + f Lnet/minecraft/world/entity/SpawnPlacementType; placement b comp_2254 + f Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate; predicate c comp_2255 + m ()Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightMap a comp_2253 + m ()Lnet/minecraft/world/entity/SpawnPlacementType; placement b comp_2254 + m ()Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate; predicate c comp_2255 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/entity/SpawnPlacementType;Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate;)V +c net/minecraft/world/entity/SpawnPlacements$SpawnPredicate buk$b net/minecraft/class_1317$class_4306 +c net/minecraft/world/entity/TamableAnimal bul net/minecraft/class_1321 + f I TELEPORT_WHEN_DISTANCE_IS_SQ cc field_52002 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID cd field_6322 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_OWNERUUID_ID ce field_6320 + f I MIN_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING cg field_52003 + f I MAX_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING ch field_52004 + f I MAX_VERTICAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING ci field_52005 + f Z orderedToSit cj field_21974 + m (III)Z maybeTeleportTo a method_60711 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z wantsToAttack a method_6178 + p 1 target + p 2 owner + m (Lnet/minecraft/world/entity/player/Player;)V tame a method_6170 + p 1 player + m (Ljava/util/UUID;)V setOwnerUUID b method_6174 + p 1 uuid + m (ZZ)V setTame b method_6173 + p 1 tame + p 2 applyTamingSideEffects + m ()Z isOrderedToSit gk method_24345 + m ()V tryToTeleportToOwner gl method_60713 + m ()Z shouldTryTeleportToOwner gm method_60714 + m ()Z unableToMoveToOwner gn method_60715 + m ()Z canFlyToOwner go method_60716 + m (Lnet/minecraft/core/BlockPos;)V teleportToAroundBlockPos h method_60712 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z canTeleportTo i method_60717 + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;)Z isOwnedBy j method_6171 + p 1 entity + m ()Z isTame s method_6181 + m ()V applyTamingSideEffects t method_56996 + m ()Z isInSittingPose x method_6172 + m (Z)V spawnTamingParticles x method_6180 + c Play the taming effect, will either be hearts or smoke depending on status + p 1 tamed + m (Z)V setInSittingPose y method_6179 + p 1 sitting + m (Z)V setOrderedToSit z method_24346 + p 1 orderedToSit + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/TamableAnimal$TamableAnimalPanicGoal bul$a net/minecraft/class_1321$class_9788 + f Lnet/minecraft/world/entity/TamableAnimal; field_52006 a field_52006 + m (Lnet/minecraft/world/entity/TamableAnimal;DLnet/minecraft/tags/TagKey;)V + p 2 speedModifier + p 4 panicCausingDamageTypes + m (Lnet/minecraft/world/entity/TamableAnimal;D)V + p 2 speedModifier +c net/minecraft/world/entity/Targeting bum net/minecraft/class_8152 + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 +c net/minecraft/world/entity/TraceableEntity bun net/minecraft/class_8046 + m ()Lnet/minecraft/world/entity/Entity; getOwner s method_24921 +c net/minecraft/world/entity/VariantHolder buo net/minecraft/class_7988 + m (Ljava/lang/Object;)V setVariant a method_47826 + p 1 variant + m ()Ljava/lang/Object; getVariant d method_47827 +c net/minecraft/world/entity/WalkAnimationState bup net/minecraft/class_8080 + f F speedOld a field_42109 + f F speed b field_42110 + f F position c field_42111 + m ()F speed a method_48566 + m (F)V setSpeed a method_48567 + p 1 speed + m (FF)V update a method_48568 + p 1 newSpeed + p 2 partialTick + m ()F position b method_48569 + m (F)F speed b method_48570 + p 1 partialTick + m ()Z isMoving c method_48571 + m (F)F position c method_48572 + p 1 partialTick + m ()V +c net/minecraft/world/entity/ai/Brain buq net/minecraft/class_4095 + f Lorg/slf4j/Logger; LOGGER a field_24656 + f Ljava/util/function/Supplier; codec b field_24657 + f I SCHEDULE_UPDATE_DELAY c field_30096 + f Ljava/util/Map; memories d field_18322 + f Ljava/util/Map; sensors e field_18323 + f Ljava/util/Map; availableBehaviorsByPriority f field_18324 + f Lnet/minecraft/world/entity/schedule/Schedule; schedule g field_18325 + f Ljava/util/Map; activityRequirements h field_18326 + f Ljava/util/Map; activityMemoriesToEraseWhenStopped i field_22282 + f Ljava/util/Set; coreActivities j field_18327 + f Ljava/util/Set; activeActivities k field_18328 + f Lnet/minecraft/world/entity/schedule/Activity; defaultActivity l field_18329 + f J lastScheduleUpdate m field_18853 + m ()V clearMemories a method_49709 + m (ILcom/google/common/collect/ImmutableList;)Lcom/google/common/collect/ImmutableList; createPriorityPairs a method_24524 + p 1 priorityStart + p 2 tasks + m (JJ)V updateActivityFromSchedule a method_18871 + p 1 dayTime + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tick a method_19542 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Z hasMemoryValue a method_18896 + p 1 type + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryStatus;)Z checkMemory a method_18876 + p 1 memoryType + p 2 memoryStatus + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;)V setMemory a method_18878 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;J)V setMemoryWithExpiry a method_24525 + p 1 memoryType + p 2 memory + p 3 timeToLive + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V setMemory a method_18879 + p 1 memoryType + p 2 memory + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; serializeStart a method_28310 + p 1 ops + m (Lnet/minecraft/world/entity/schedule/Activity;)V setActiveActivityIfPossible a method_24526 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;)V addActivity a method_18882 + p 1 activity + p 2 priorityStart + p 3 tasks + m (Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V addActivityAndRemoveMemoryWhenStopped a method_24527 + p 1 activity + p 2 priorityStart + p 3 tasks + p 4 memoryType + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;)V addActivity a method_18881 + p 1 activity + p 2 tasks + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;)V addActivityWithConditions a method_24529 + p 1 activity + p 2 tasks + p 3 memoryStatuses + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;Ljava/util/Set;)V addActivityAndRemoveMemoriesWhenStopped a method_24530 + p 1 activity + p 2 tasks + p 3 memorieStatuses + p 4 memoryTypes + m (Lnet/minecraft/world/entity/schedule/Schedule;)V setSchedule a method_18884 + p 1 newSchedule + m (Ljava/lang/Integer;)Ljava/util/Map; method_18887 a method_18887 + m (Ljava/lang/Object;)Z isEmptyCollection a method_19948 + p 1 collection + m (Ljava/lang/Object;Ljava/lang/Object;)Z method_29518 a method_29518 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/world/entity/ai/Brain$Provider; provider a method_28311 + p 0 memoryTypes + p 1 sensorTypes + m (Ljava/util/List;)V setActiveActivityToFirstValid a method_24531 + p 1 activities + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; method_28312 a method_28312 + m (Ljava/util/Set;)V setCoreActivities a method_18890 + p 1 newActivities + m ()Ljava/util/Map; getMemories b method_35058 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V stopAll b method_18900 + p 1 level + p 2 owner + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V eraseMemory b method_18875 + p 1 type + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;)Z isMemoryValue b method_29519 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V setMemoryInternal b method_24535 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/schedule/Activity;)V setDefaultActivity b method_18897 + p 1 newFallbackActivity + m (Ljava/util/Collection;Ljava/util/Collection;)Lcom/mojang/serialization/Codec; codec b method_28313 + p 0 memoryTypes + p 1 sensorTypes + m ()Lnet/minecraft/world/entity/schedule/Schedule; getSchedule c method_18894 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickSensors c method_27073 + p 1 level + p 2 brainHolder + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getMemory c method_18904 + p 1 type + m (Lnet/minecraft/world/entity/schedule/Activity;)Z isActive c method_18906 + p 1 activity + m ()Ljava/util/Set; getActiveActivities d method_35059 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V startEachNonRunningBehavior d method_18891 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getMemoryInternal d method_46873 + p 1 type + m (Lnet/minecraft/world/entity/schedule/Activity;)V setActiveActivity d method_18880 + p 1 activity + m ()Ljava/util/List; getRunningBehaviors e method_27074 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickEachRunningBehavior e method_19545 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)J getTimeUntilExpiry e method_36978 + p 1 memoryType + m (Lnet/minecraft/world/entity/schedule/Activity;)V eraseMemoriesForOtherActivitesThan e method_24537 + p 1 activity + m ()V useDefaultActivity f method_24536 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V method_49710 f method_49710 + m (Lnet/minecraft/world/entity/schedule/Activity;)Z activityRequirementsAreMet f method_18874 + p 1 activity + m ()Ljava/util/Optional; getActiveNonCoreActivity g method_24538 + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/util/Set; method_18910 g method_18910 + m ()V removeAllBehaviors h method_35060 + m ()Lnet/minecraft/world/entity/ai/Brain; copyWithoutBehaviors i method_18911 + m ()Ljava/util/stream/Stream; memories j method_28315 + m ()V forgetOutdatedMemories k method_27075 + m (Ljava/util/Collection;Ljava/util/Collection;Lcom/google/common/collect/ImmutableList;Ljava/util/function/Supplier;)V + p 1 memoryModuleTypes + p 2 sensorTypes + p 3 memoryValues + p 4 codec + m ()V +c net/minecraft/world/entity/ai/Brain$1 buq$1 net/minecraft/class_4095$1 + f Ljava/util/Collection; val$memoryTypes a field_24658 + f Ljava/util/Collection; val$sensorTypes b field_24659 + f Lorg/apache/commons/lang3/mutable/MutableObject; val$codecReference c field_24660 + m (Lnet/minecraft/world/entity/ai/Brain;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode a method_28316 + p 1 input + p 2 ops + p 3 prefix + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lcom/mojang/serialization/DataResult; method_28317 a method_28317 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; method_28318 a method_28318 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/serialization/Codec;)Lnet/minecraft/resources/ResourceLocation; method_28319 a method_28319 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; captureRead a method_28320 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; method_28325 a method_28325 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lcom/mojang/serialization/DataResult; method_28321 a method_28321 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/world/entity/ai/Brain$MemoryValue;)V method_28322 a method_28322 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/DataResult; method_28323 a method_28323 + m (Lcom/mojang/serialization/DynamicOps;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/datafixers/util/Pair;)V method_28324 a method_28324 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/lang/String; method_49486 b method_49486 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/stream/Stream; method_28326 c method_28326 + m (Ljava/util/Collection;Ljava/util/Collection;Lorg/apache/commons/lang3/mutable/MutableObject;)V +c net/minecraft/world/entity/ai/Brain$MemoryValue buq$a net/minecraft/class_4095$class_5302 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; type a field_24661 + f Ljava/util/Optional; value b field_24662 + m (Lnet/minecraft/world/entity/ai/Brain;)V setMemoryInternal a method_28328 + p 1 brain + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; createUnchecked a method_28333 + p 0 memoryType + p 1 memory + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)V serialize a method_28330 + p 1 ops + p 2 builder + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)V method_28331 a method_28331 + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)V method_28332 a method_28332 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V + p 1 type + p 2 value +c net/minecraft/world/entity/ai/Brain$Provider buq$b net/minecraft/class_4095$class_5303 + f Ljava/util/Collection; memoryTypes a field_24663 + f Ljava/util/Collection; sensorTypes b field_24664 + f Lcom/mojang/serialization/Codec; codec c field_24665 + m ()Lnet/minecraft/world/entity/ai/Brain; method_28334 a method_28334 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_28335 + p 1 ops + m ()Lcom/mojang/serialization/Codec; method_28336 b method_28336 + m (Ljava/util/Collection;Ljava/util/Collection;)V + p 1 memoryTypes + p 2 sensorTypes +c net/minecraft/world/entity/ai/attributes/Attribute bur net/minecraft/class_1320 + c Defines an entity attribute. These are properties of entities that can be dynamically modified.\n@see net.minecraft.core.Registry#ATTRIBUTE + f Lcom/mojang/serialization/Codec; CODEC a field_51575 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51940 + f D defaultValue c field_23697 + c The default value of the attribute. + f Z syncable d field_23698 + c Whether the value of this attribute should be kept in sync on the client. + f Ljava/lang/String; descriptionId e field_23699 + c A description Id for the attribute. This is most commonly used as the localization key. + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; sentiment f field_51884 + m ()D getDefaultValue a method_6169 + c Gets the default value for the attribute.\n@return The default value for the attribute. + m (D)D sanitizeValue a method_6165 + c Sanitizes the value of the attribute to fit within the expected parameter range of the attribute.\n@return The sanitized attribute value. + p 1 value + c The value of the attribute to sanitize. + m (Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment;)Lnet/minecraft/world/entity/ai/attributes/Attribute; setSentiment a method_60493 + p 1 sentiment + m (Z)Lnet/minecraft/world/entity/ai/attributes/Attribute; setSyncable a method_26829 + c Sets whether the attribute value should be synced to the client.\n@return The same attribute instance being modified. + p 1 watch + c Whether the attribute value should be kept in sync. + m ()Z isClientSyncable b method_6168 + c Checks if the attribute value should be kept in sync on the client.\n@return Whether the attribute value should be kept in sync on the client. + m (Z)Lnet/minecraft/ChatFormatting; getStyle b method_60494 + p 1 isPositive + m ()Ljava/lang/String; getDescriptionId c method_26830 + c Gets the description Id of the attribute. This is most commonly used as a localization key.\n@return The description Id of the attribute. + m (Ljava/lang/String;D)V + p 1 descriptionId + p 2 defaultValue + m ()V +c net/minecraft/world/entity/ai/attributes/Attribute$Sentiment bur$a net/minecraft/class_1320$class_9764 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; POSITIVE a field_51885 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; NEUTRAL b field_51886 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; NEGATIVE c field_51887 + f [Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; $VALUES d field_51888 + m ()[Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; $values a method_60495 + m (Z)Lnet/minecraft/ChatFormatting; getStyle a method_60496 + p 1 isPositive + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeInstance bus net/minecraft/class_1324 + f Ljava/lang/String; ID_FIELD a field_52007 + f Ljava/lang/String; BASE_FIELD b field_52008 + f Ljava/lang/String; MODIFIERS_FIELD c field_52009 + f Lnet/minecraft/core/Holder; attribute d field_23700 + c The Attribute this is an instance of + f Ljava/util/Map; modifiersByOperation e field_23701 + f Ljava/util/Map; modifierById f field_23702 + f Ljava/util/Map; permanentModifiers g field_23703 + f D baseValue h field_23704 + f Z dirty i field_23705 + f D cachedValue j field_23706 + f Ljava/util/function/Consumer; onDirty k field_23707 + m ()Lnet/minecraft/core/Holder; getAttribute a method_6198 + m (D)V setBaseValue a method_6192 + p 1 baseValue + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; getModifier a method_6199 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V replaceFrom a method_26831 + p 1 instance + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Map; getModifiers a method_6193 + p 1 operation + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Ljava/util/Map;)V method_26832 a method_26832 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addOrUpdateTransientModifier a method_55696 + p 1 modifier + m (Lnet/minecraft/nbt/CompoundTag;)V load a method_26833 + p 1 nbt + m ()D getBaseValue b method_6201 + m (Lnet/minecraft/resources/ResourceLocation;)Z hasModifier b method_6196 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Collection; getModifiersOrEmpty b method_26834 + p 1 operation + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addTransientModifier b method_26835 + p 1 modifier + m ()Ljava/util/Set; getModifiers c method_6195 + m (Lnet/minecraft/resources/ResourceLocation;)Z removeModifier c method_6200 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Map; method_26836 c method_26836 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addOrReplacePermanentModifier c method_61163 + p 1 modifier + m ()V setDirty d method_26838 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addPermanentModifier d method_26837 + p 1 modifier + m ()V removeModifiers e method_6203 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V removeModifier e method_6202 + p 1 modifier + m ()D getValue f method_6194 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addModifier f method_6197 + p 1 modifier + m ()Lnet/minecraft/nbt/CompoundTag; save g method_26839 + m ()D calculateValue h method_26840 + m ()Ljava/lang/IllegalStateException; method_55697 i method_55697 + m (Lnet/minecraft/core/Holder;Ljava/util/function/Consumer;)V + p 1 attribute + p 2 onDirty +c net/minecraft/world/entity/ai/attributes/AttributeMap but net/minecraft/class_5131 + f Lorg/slf4j/Logger; LOGGER a field_23708 + f Ljava/util/Map; attributes b field_23709 + f Ljava/util/Set; attributesToSync c field_51889 + f Ljava/util/Set; attributesToUpdate d field_51890 + f Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; supplier e field_23711 + m ()Ljava/util/Set; getAttributesToSync a method_60497 + m (Lnet/minecraft/resources/ResourceLocation;)V method_26848 a method_26848 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V onAttributeModified a method_26845 + p 1 instance + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_59931 a method_59931 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V assignAllValues a method_26846 + p 1 map + m (Lcom/google/common/collect/Multimap;)V addTransientAttributeModifiers a method_59932 + p 1 modifiers + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getInstance a method_45329 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z hasModifier a method_45330 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_59933 a method_59933 + m (Lnet/minecraft/core/Holder;Ljava/util/Collection;)V method_59934 a method_59934 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/Holder$Reference;)V method_26849 a method_26849 + m (Lnet/minecraft/nbt/ListTag;)V load a method_26850 + p 1 nbt + m ()Ljava/util/Set; getAttributesToUpdate b method_60498 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_60613 b method_60613 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V assignBaseValues b method_60614 + p 1 map + m (Lcom/google/common/collect/Multimap;)V removeAttributeModifiers b method_59935 + p 1 modifiers + m (Lnet/minecraft/core/Holder;)Z hasAttribute b method_45331 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)D getModifierValue b method_45332 + p 1 attribute + p 2 id + m ()Ljava/util/Collection; getSyncableAttributes c method_26851 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_26853 c method_26853 + m (Lnet/minecraft/core/Holder;)D getValue c method_26852 + p 1 attribute + m ()Lnet/minecraft/nbt/ListTag; save d method_26855 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)Z method_26857 d method_26857 + m (Lnet/minecraft/core/Holder;)D getBaseValue d method_26856 + p 1 attribute + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; method_55698 e method_55698 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier;)V + p 1 supplier + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeModifier buu net/minecraft/class_1322 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_49232 + f Lcom/mojang/serialization/Codec; CODEC b field_46247 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49233 + f Lnet/minecraft/resources/ResourceLocation; id d comp_2447 + f D amount e comp_2449 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation f comp_2450 + f Lorg/slf4j/Logger; LOGGER g field_23712 + m ()Lnet/minecraft/nbt/CompoundTag; save a method_26860 + m (Lnet/minecraft/resources/ResourceLocation;)Z is a method_60718 + p 1 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60719 a method_60719 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; load a method_26859 + p 0 nbt + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2447 + m ()D amount c comp_2449 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation d comp_2450 + m (Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeModifier$Operation buu$a net/minecraft/class_1322$class_1323 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_VALUE a field_6328 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_MULTIPLIED_BASE b field_6330 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_MULTIPLIED_TOTAL c field_6331 + f Ljava/util/function/IntFunction; BY_ID d field_48325 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_48326 + f Lcom/mojang/serialization/Codec; CODEC f field_45742 + f Ljava/lang/String; name g field_45743 + f I id h field_6329 + f [Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; $VALUES i field_6333 + m ()I id a method_56082 + m ()[Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; $values b method_36614 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 value + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeSupplier buv net/minecraft/class_5132 + f Ljava/util/Map; instances a field_23713 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; builder a method_26861 + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; createInstance a method_26863 + p 1 onDirty + p 2 attribute + m (Lnet/minecraft/core/Holder;)D getValue a method_26862 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)D getModifierValue a method_27308 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;)D getBaseValue b method_26864 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z hasModifier b method_27309 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;)Z hasAttribute c method_27310 + p 1 attribute + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttributeInstance d method_26865 + p 1 attribute + m (Ljava/util/Map;)V + p 1 instances +c net/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder buv$a net/minecraft/class_5132$class_5133 + f Lcom/google/common/collect/ImmutableMap$Builder; builder a field_23714 + f Z instanceFrozen b field_23715 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; build a method_26866 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; add a method_26867 + p 1 attribute + m (Lnet/minecraft/core/Holder;D)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; add a method_26868 + p 1 attribute + p 2 baseValue + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_26869 a method_26869 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; create b method_26870 + p 1 attribute + m ()V +c net/minecraft/world/entity/ai/attributes/Attributes buw net/minecraft/class_5134 + c Contains all entity attributes defined and registered by the vanilla game. + f Lnet/minecraft/core/Holder; SPAWN_REINFORCEMENTS_CHANCE A field_23727 + c Handles the chance for a zombie to summon reinforcements when attacked. + f Lnet/minecraft/core/Holder; STEP_HEIGHT B field_47761 + f Lnet/minecraft/core/Holder; SUBMERGED_MINING_SPEED C field_51576 + f Lnet/minecraft/core/Holder; SWEEPING_DAMAGE_RATIO D field_51577 + f Lnet/minecraft/core/Holder; WATER_MOVEMENT_EFFICIENCY E field_51578 + f Lnet/minecraft/core/Holder; ARMOR a field_23724 + c Handles the armor points for an entity. Each point represents half a chestplate of armor on the armor bar. + f Lnet/minecraft/core/Holder; ARMOR_TOUGHNESS b field_23725 + c Handles the amount of damage mitigated by wearing armor. + f Lnet/minecraft/core/Holder; ATTACK_DAMAGE c field_23721 + c Handles the attack damage inflicted by entities. The value of this attribute represents half hearts. + f Lnet/minecraft/core/Holder; ATTACK_KNOCKBACK d field_23722 + c Handles additional horizontal knockback when damaging another entity. + f Lnet/minecraft/core/Holder; ATTACK_SPEED e field_23723 + c Handles the cooldown rate when attacking with an item. The value represents the number of full strength attacks that can be performed per second. + f Lnet/minecraft/core/Holder; BLOCK_BREAK_SPEED f field_49076 + f Lnet/minecraft/core/Holder; BLOCK_INTERACTION_RANGE g field_47758 + f Lnet/minecraft/core/Holder; BURNING_TIME h field_51579 + f Lnet/minecraft/core/Holder; EXPLOSION_KNOCKBACK_RESISTANCE i field_51580 + f Lnet/minecraft/core/Holder; ENTITY_INTERACTION_RANGE j field_47759 + f Lnet/minecraft/core/Holder; FALL_DAMAGE_MULTIPLIER k field_49077 + f Lnet/minecraft/core/Holder; FLYING_SPEED l field_23720 + c Handles the movement speed of flying entities such as parrots and bees. + f Lnet/minecraft/core/Holder; FOLLOW_RANGE m field_23717 + c Handles the range in blocks that a mob will notice and track players and other potential targets. + f Lnet/minecraft/core/Holder; GRAVITY n field_49078 + f Lnet/minecraft/core/Holder; JUMP_STRENGTH o field_23728 + c Handles the jump strength for horses. + f Lnet/minecraft/core/Holder; KNOCKBACK_RESISTANCE p field_23718 + c Handles the reduction of horizontal knockback when damaged by attacks or projectiles. + f Lnet/minecraft/core/Holder; LUCK q field_23726 + c Handles luck when a player generates loot from a loot table. This can impact the quality of loot and influence bonus rolls. + f Lnet/minecraft/core/Holder; MAX_ABSORPTION r field_45124 + f Lnet/minecraft/core/Holder; MAX_HEALTH s field_23716 + c Handles the maximum health of an entity. + f Lnet/minecraft/core/Holder; MINING_EFFICIENCY t field_51581 + f Lnet/minecraft/core/Holder; MOVEMENT_EFFICIENCY u field_51582 + f Lnet/minecraft/core/Holder; MOVEMENT_SPEED v field_23719 + c Handles the movement speed of entities. + f Lnet/minecraft/core/Holder; OXYGEN_BONUS w field_51583 + f Lnet/minecraft/core/Holder; SAFE_FALL_DISTANCE x field_49079 + f Lnet/minecraft/core/Holder; SCALE y field_47760 + f Lnet/minecraft/core/Holder; SNEAKING_SPEED z field_51584 + m (Ljava/lang/String;Lnet/minecraft/world/entity/ai/attributes/Attribute;)Lnet/minecraft/core/Holder; register a method_26871 + p 0 name + p 1 attribute + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55699 + p 0 registry + m ()V + m ()V +c net/minecraft/world/entity/ai/attributes/DefaultAttributes bux net/minecraft/class_5135 + f Lorg/slf4j/Logger; LOGGER a field_23729 + f Ljava/util/Map; SUPPLIERS b field_23730 + m ()V validate a method_26872 + m (Lnet/minecraft/resources/ResourceLocation;)V method_26874 a method_26874 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; getSupplier a method_26873 + p 0 livingEntity + m (Lnet/minecraft/world/entity/EntityType;)Z hasSupplier b method_26875 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;)Z method_26876 c method_26876 + m (Lnet/minecraft/world/entity/EntityType;)Z method_26877 d method_26877 + m ()V + m ()V +c net/minecraft/world/entity/ai/attributes/RangedAttribute buy net/minecraft/class_1329 + c Defines an entity {@linkplain net.minecraft.world.entity.ai.attributes.Attribute attribute} that is limited to a range of values. + f D minValue c field_6353 + c The lowest possible value for the attribute. + f D maxValue d field_6351 + c The highest possible value for the attribute. + m ()D getMinValue d method_35061 + c Gets the lowest possible value for the attribute.\n@return The lowest possible value for the attribute; {@link #minValue}. + m ()D getMaxValue e method_35062 + c Gets the highest possible value for the attribute.\n@return The highest possible value for the attribute; {@link #maxValue}. + m (Ljava/lang/String;DDD)V + p 1 descriptionId + p 2 defaultValue + p 4 min + p 6 max +c net/minecraft/world/entity/ai/attributes/package-info buz net/minecraft/class_6027 +c net/minecraft/world/entity/ai/behavior/AcquirePoi bva net/minecraft/class_4096 + f I SCAN_RANGE a field_30098 + m (JLit/unimi/dsi/fastutil/longs/Long2ObjectMap$Entry;)Z method_46874 a method_46874 + m (Lnet/minecraft/server/level/ServerLevel;JJ)Lnet/minecraft/world/entity/ai/behavior/AcquirePoi$JitteredLinearRetry; method_46875 a method_46875 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Byte;)V method_46876 a method_46876 + m (Lnet/minecraft/world/entity/Mob;Ljava/util/Set;)Lnet/minecraft/world/level/pathfinder/Path; findPathToPois a method_43965 + p 0 mob + p 1 poiPositions + m (Lnet/minecraft/world/entity/ai/behavior/OneShot;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46877 a method_46877 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/behavior/OneShot;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46878 a method_46878 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46879 a method_46879 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Ljava/util/Optional;Lnet/minecraft/world/entity/PathfinderMob;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Lnet/minecraft/core/Holder;)V method_46880 a method_46880 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;JLnet/minecraft/core/BlockPos;)Z method_46882 a method_46882 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46883 + p 0 acquirablePois + p 1 existingAbsentMemory + p 2 acquiringMemory + p 3 onlyIfAdult + p 4 entityEventId + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46884 + p 0 acquirablePois + p 1 acquiringMemory + p 2 onlyIfAdult + p 3 entityEventId + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)Z method_46881 a method_46881 + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_46885 a method_46885 + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46886 a method_46886 + m ()V +c net/minecraft/world/entity/ai/behavior/AcquirePoi$JitteredLinearRetry bva$a net/minecraft/class_4096$class_5397 + f I MIN_INTERVAL_INCREASE a field_30101 + f I MAX_INTERVAL_INCREASE b field_30102 + f I MAX_RETRY_PATHFINDING_INTERVAL c field_30103 + f Lnet/minecraft/util/RandomSource; random d field_25600 + f J previousAttemptTimestamp e field_25601 + f J nextScheduledAttemptTimestamp f field_25602 + f I currentDelay g field_25603 + m (J)V markAttempt a method_29926 + p 1 timestamp + m (J)Z isStillValid b method_29927 + p 1 timestamp + m (J)Z shouldRetry c method_29928 + p 1 timestamp + m (Lnet/minecraft/util/RandomSource;J)V + p 1 random + p 2 timestamp +c net/minecraft/world/entity/ai/behavior/AnimalMakeLove bvb net/minecraft/class_4806 + f I BREED_RANGE c field_30104 + f I MIN_DURATION d field_30105 + f I MAX_DURATION e field_30106 + f Lnet/minecraft/world/entity/EntityType; partnerType f field_22283 + f F speedModifier g field_23129 + f I closeEnoughDistance h field_48327 + f I DEFAULT_CLOSE_ENOUGH_DISTANCE i field_48328 + f J spawnChildAtTime j field_22284 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;)Z checkExtraStartConditions a method_24543 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V start a method_24544 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Lnet/minecraft/world/entity/animal/Animal; getBreedTarget a method_24542 + p 1 animal + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/LivingEntity;)Z method_24545 a method_24545 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)Z canStillUse b method_24547 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Z hasBreedTargetOfRightType b method_24546 + p 1 animal + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V tick c method_24549 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Ljava/util/Optional; findValidBreedPartner c method_24548 + p 1 animal + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V stop d method_24550 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/EntityType;)V + p 1 partnerType + m (Lnet/minecraft/world/entity/EntityType;FI)V + p 1 partnerType + p 2 speedModifier + p 3 closeEnoughDistance +c net/minecraft/world/entity/ai/behavior/AnimalPanic bvc net/minecraft/class_6028 + f I PANIC_MIN_DURATION c field_30107 + f I PANIC_MAX_DURATION d field_30108 + f I PANIC_DISTANCE_HORIZONTAL e field_30109 + f I PANIC_DISTANCE_VERTICAL f field_30110 + f F speedMultiplier g field_30111 + f Ljava/util/function/Function; panicCausingDamageTypes h field_52010 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;)Z checkExtraStartConditions a method_49487 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse a method_35063 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60720 a method_60720 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/phys/Vec3; getPanicPos a method_39761 + p 1 pathfinder + p 2 level + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/damagesource/DamageSource;)Ljava/lang/Boolean; method_60721 a method_60721 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; lookForWater a method_39762 + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39763 a method_39763 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start b method_35064 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_51505 b method_51505 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop c method_44203 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_51506 c method_51506 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_35065 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 speedMultiplier + m (FLjava/util/function/Function;)V + p 1 speedMultiplier + p 2 panicCausingDamageTypes +c net/minecraft/world/entity/ai/behavior/AssignProfessionFromJobSite bvd net/minecraft/class_4114 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46887 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46888 a method_46888 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46889 a method_46889 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_46890 a method_46890 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/VillagerProfession;)V method_46891 a method_46891 + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_46892 a method_46892 + m (Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_46893 a method_46893 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/VillagerProfession;)Z method_46894 a method_46894 + m ()V +c net/minecraft/world/entity/ai/behavior/BabyFollowAdult bve net/minecraft/class_5355 + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_46895 a method_46895 + m (Lnet/minecraft/util/valueproviders/UniformInt;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46896 + p 0 followRange + p 1 speedModifier + m (Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46897 + p 0 followRange + p 1 speedModifier + m (Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46898 a method_46898 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46899 a method_46899 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;J)Z method_46900 a method_46900 + m ()V +c net/minecraft/world/entity/ai/behavior/BackUpIfTooClose bvf net/minecraft/class_4807 + m (IF)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46901 + p 0 tooCloseDistance + p 1 strafeSpeed + m (IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46902 a method_46902 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46903 a method_46903 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46904 a method_46904 + m ()V +c net/minecraft/world/entity/ai/behavior/BecomePassiveIfMemoryPresent bvg net/minecraft/class_4808 + m (ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46905 a method_46905 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46906 a method_46906 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/lang/String; method_46907 a method_46907 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46908 + p 0 pacifyingMemory + p 1 pacifyDuration + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46909 a method_46909 + m ()V +c net/minecraft/world/entity/ai/behavior/Behavior bvh net/minecraft/class_4097 + f I DEFAULT_DURATION a field_30112 + f Ljava/util/Map; entryCondition b field_19291 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status c field_18333 + f J endTimestamp d field_18334 + f I minDuration e field_18335 + f I maxDuration f field_18336 + m (J)Z timedOut a method_18915 + p 1 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z checkExtraStartConditions a method_18919 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z canStillUse a method_18927 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasRequiredMemories a method_19546 + p 1 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V stop b method_18926 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V tick c method_18924 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V start d method_18920 + p 1 level + p 2 entity + p 3 gameTime + m (Ljava/util/Map;)V + p 1 entryCondition + m (Ljava/util/Map;I)V + p 1 entryCondition + p 2 duration + m (Ljava/util/Map;II)V + p 1 entryCondition + p 2 minDuration + p 3 maxDuration +c net/minecraft/world/entity/ai/behavior/Behavior$Status bvh$a net/minecraft/class_4097$class_4098 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; STOPPED a field_18337 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; RUNNING b field_18338 + f [Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; $VALUES c field_18339 + m ()[Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; $values a method_36615 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/BehaviorControl bvi net/minecraft/class_7893 + m ()Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; getStatus a method_18921 + m ()Ljava/lang/String; debugString b method_46910 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z tryStart e method_18922 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V tickOrStop f method_18923 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V doStop g method_18925 + p 1 level + p 2 entity + p 3 gameTime +c net/minecraft/world/entity/ai/behavior/BehaviorUtils bvj net/minecraft/class_4215 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/core/SectionPos;)Z method_20418 a method_20418 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;I)Lnet/minecraft/core/SectionPos; findSectionClosestToVillage a method_20419 + p 0 serverLevel + p 1 sectionPos + p 2 radius + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_31500 a method_31500 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_19547 a method_19547 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isBreeding a method_41331 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;FI)V setWalkAndLookTargetMemories a method_24557 + p 0 livingEntity + p 1 target + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V lookAtEntity a method_19554 + p 0 entity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;D)Z isOtherTargetMuchFurtherAwayThanCurrentAttackTarget a method_24558 + p 0 livingEntity + p 1 target + p 2 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;FI)V lockGazeAndWalkToEachOther a method_19548 + p 0 firstEntity + p 1 secondEntity + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getTargetNearestMe a method_24559 + p 0 centerEntity + p 1 livingEntity1 + p 2 livingEntity2 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;FI)V setWalkAndLookTargetMemories a method_42647 + p 0 entity + p 1 positionTracker + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getLivingEntityFromUUIDMemory a method_24560 + p 0 livingEntity + p 1 targetMemory + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;)V throwItem a method_19949 + p 0 livingEntity + p 1 stack + p 2 offset + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;F)V throwItem a method_43392 + p 0 entity + p 1 stack + p 2 offset + p 3 speedMultiplier + p 4 yOffset + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/Optional;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getNearestTarget a method_24562 + p 0 centerEntity + p 1 optionalEntity + p 2 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; method_24563 a method_24563 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;FI)V setWalkAndLookTargetMemories a method_24561 + p 0 livingEntity + p 1 pos + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;I)Z isWithinAttackRange a method_25940 + p 0 mob + p 1 target + p 2 cooldown + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getRandomSwimmablePos a method_33193 + p 0 pathfinder + p 1 radius + p 2 verticalDistance + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)Z entityIsVisible a method_19550 + p 0 brain + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/EntityType;)Z targetIsValid a method_19551 + p 0 brains + p 1 memorymodule + p 2 entityType + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;)Z targetIsValid a method_24564 + p 0 brain + p 1 memoryType + p 2 livingPredicate + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z canSee b method_24565 + p 0 livingEntity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;FI)V setWalkAndLookTargetMemoriesToEachOther b method_19555 + p 0 firstEntity + p 1 secondEntity + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)Z method_19553 b method_19553 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V lookAtEachOther c method_19552 + p 0 firstEntity + p 1 secondEntity + m ()V +c net/minecraft/world/entity/ai/behavior/BlockPosTracker bvk net/minecraft/class_4099 + f Lnet/minecraft/core/BlockPos; blockPos a field_18340 + f Lnet/minecraft/world/phys/Vec3; centerPosition b field_18341 + m (Lnet/minecraft/core/BlockPos;)V + p 1 blockPos + m (Lnet/minecraft/world/phys/Vec3;)V + p 1 centerPosition +c net/minecraft/world/entity/ai/behavior/CelebrateVillagersSurvivedRaid bvl net/minecraft/class_4242 + f Lnet/minecraft/world/entity/raid/Raid; currentRaid c field_18983 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19951 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19952 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/item/DyeColor;I)Lnet/minecraft/world/item/ItemStack; getFirework a method_19950 + p 1 color + p 2 flightTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop b method_19953 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19954 + p 1 level + p 2 owner + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/CopyMemoryWithExpiry bvm net/minecraft/class_4809 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46911 a method_46911 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46912 a method_46912 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46913 a method_46913 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46914 + p 0 canCopyMemory + p 1 sourceMemory + p 2 targetMemory + p 3 durationOfCopy + m ()V +c net/minecraft/world/entity/ai/behavior/CountDownCooldownTicks bvn net/minecraft/class_5753 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; cooldownTicks c field_30113 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getCooldownTickMemory b method_33194 + p 1 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V + p 1 cooldownTicks +c net/minecraft/world/entity/ai/behavior/Croak bvo net/minecraft/class_7095 + f I CROAK_TICKS c field_37424 + f I TIME_OUT_DURATION d field_37425 + f I croakCounter e field_37426 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)Z checkExtraStartConditions a method_42648 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)Z canStillUse a method_41332 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V start b method_41333 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V stop c method_41334 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V tick d method_41335 + m ()V +c net/minecraft/world/entity/ai/behavior/CrossbowAttack bvp net/minecraft/class_4810 + f I TIMEOUT c field_30114 + f I attackDelay d field_22293 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; crossbowState e field_22294 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_24570 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_24571 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V crossbowAttack a method_24569 + p 1 shooter + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick b method_24573 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getAttackTarget b method_24568 + p 0 shooter + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V lookAtTarget b method_24572 + p 1 shooter + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop c method_24574 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState bvp$a net/minecraft/class_4810$class_4811 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; UNCHARGED a field_22295 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; CHARGING b field_22296 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; CHARGED c field_22297 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; READY_TO_ATTACK d field_22298 + f [Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; $VALUES e field_22299 + m ()[Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; $values a method_36616 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/DismountOrSkipMounting bvq net/minecraft/class_4812 + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46915 + p 0 maxDistanceFromVehicle + p 1 shouldStopRiding + m (ILjava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46916 a method_46916 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;I)Z isVehicleValid a method_24575 + p 0 entity + p 1 vehicle + p 2 distance + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILjava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46917 a method_46917 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILjava/util/function/BiPredicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46918 a method_46918 + m ()V +c net/minecraft/world/entity/ai/behavior/DoNothing bvr net/minecraft/class_4101 + f I minDuration a field_40988 + f I maxDuration b field_40989 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status c field_40990 + f J endTimestamp d field_40991 + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/EntityTracker bvs net/minecraft/class_4102 + f Lnet/minecraft/world/entity/Entity; entity a field_18342 + f Z trackEyeHeight b field_24382 + m ()Lnet/minecraft/world/entity/Entity; getEntity c method_35066 + m (Lnet/minecraft/world/entity/Entity;Z)V + p 1 entity + p 2 trackEyeHeight +c net/minecraft/world/entity/ai/behavior/EraseMemoryIf bvt net/minecraft/class_4813 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46919 a method_46919 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46920 a method_46920 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46921 a method_46921 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46922 + p 0 shouldEraseMemory + p 1 erasingMemory + m ()V +c net/minecraft/world/entity/ai/behavior/FollowTemptation bvu net/minecraft/class_5754 + f I TEMPTATION_COOLDOWN c field_30115 + f D DEFAULT_CLOSE_ENOUGH_DIST d field_45125 + f D BACKED_UP_CLOSE_ENOUGH_DIST e field_45126 + f Ljava/util/function/Function; speedModifier f field_28316 + f Ljava/util/function/Function; closeEnoughDistance g field_44704 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse a method_33195 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;)F getSpeedModifier a method_33196 + p 1 pathfinder + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start b method_33197 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52173 b method_52173 + m (Lnet/minecraft/world/entity/PathfinderMob;)Ljava/util/Optional; getTemptingPlayer b method_33198 + p 1 pathfinder + m ()Lcom/google/common/collect/ImmutableMap; method_51507 c method_51507 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop c method_33199 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_33200 + p 1 level + p 2 owner + p 3 gameTime + m (Ljava/util/function/Function;)V + p 1 speedModifier + m (Ljava/util/function/Function;Ljava/util/function/Function;)V + p 1 speedModifier + p 2 closeEnoughDistance +c net/minecraft/world/entity/ai/behavior/GateBehavior bvv net/minecraft/class_4103 + f Ljava/util/Map; entryCondition a field_40992 + f Ljava/util/Set; exitErasedMemories b field_18344 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; orderPolicy c field_18345 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; runningPolicy d field_18346 + f Lnet/minecraft/world/entity/ai/behavior/ShufflingList; behaviors e field_18347 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status f field_40993 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46923 a method_46923 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasRequiredMemories a method_46924 + p 1 entity + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46925 a method_46925 + m (Lcom/mojang/datafixers/util/Pair;)V method_18929 a method_18929 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46926 b method_46926 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46927 b method_46927 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46928 c method_46928 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46929 d method_46929 + m (Ljava/util/Map;Ljava/util/Set;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Ljava/util/List;)V + p 1 entryCondition + p 2 exitErasedMemories + p 3 orderPolicy + p 4 runningPolicy + p 5 durations +c net/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy bvv$a net/minecraft/class_4103$class_4104 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; ORDERED a field_18348 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; SHUFFLED b field_18349 + f Ljava/util/function/Consumer; consumer c field_18350 + f [Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; $VALUES d field_18351 + m ()[Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; $values a method_36617 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)V apply a method_18939 + p 1 list + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)V method_18940 b method_18940 + m (Ljava/lang/String;ILjava/util/function/Consumer;)V + p 3 consumer + m ()V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy bvv$b net/minecraft/class_4103$class_4216 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; RUN_ONE a field_18855 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; TRY_ALL b field_18856 + f [Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; $VALUES c field_18857 + m ()[Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; $values a method_36618 + m (Ljava/util/stream/Stream;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V apply a method_19559 + p 1 behaviors + p 2 level + p 3 owner + p 4 gameTime + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy$1 bvv$b$1 net/minecraft/class_4103$class_4216$1 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46930 a method_46930 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46931 a method_46931 + m (Ljava/lang/String;I)V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy$2 bvv$b$2 net/minecraft/class_4103$class_4216$2 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46932 a method_46932 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46933 a method_46933 + m (Ljava/lang/String;I)V +c net/minecraft/world/entity/ai/behavior/GiveGiftToHero bvw net/minecraft/class_4243 + f I THROW_GIFT_AT_DISTANCE c field_30117 + f I MIN_TIME_BETWEEN_GIFTS d field_30118 + f I MAX_TIME_BETWEEN_GIFTS e field_30119 + f I TIME_TO_DELAY_FOR_HEAD_TO_FINISH_TURNING f field_30120 + f Ljava/util/Map; GIFTS g field_18984 + f F SPEED_MODIFIER h field_30121 + f I timeUntilNextGift i field_18985 + f Z giftGivenDuringThisRun j field_18986 + f J timeSinceStart k field_18987 + m (Lnet/minecraft/server/level/ServerLevel;)I calculateTimeUntilNextGift a method_19961 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19962 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_19963 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/List; getItemToThrow a method_19956 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)V throwGift a method_19957 + p 1 villager + p 2 hero + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/player/Player;)Z isWithinThrowingDistance a method_19958 + p 1 villager + p 2 hero + m (Lnet/minecraft/world/entity/player/Player;)Z isHero a method_19959 + p 1 player + m (Ljava/util/HashMap;)V method_19960 a method_19960 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse b method_19965 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Z isHeroVisible b method_19964 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19967 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; getNearestTargetableHero c method_19966 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19968 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration + m ()V +c net/minecraft/world/entity/ai/behavior/GoAndGiveItemsToTarget bvx net/minecraft/class_7296 + f I CLOSE_ENOUGH_DISTANCE_TO_TARGET c field_38387 + f I ITEM_PICKUP_COOLDOWN_AFTER_THROWING d field_38388 + f Ljava/util/function/Function; targetPositionGetter e field_38389 + f F speedModifier f field_38390 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)V method_42650 a method_42650 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;)V throwItem a method_43393 + p 0 entity + p 1 stack + p 2 throwPos + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)Lnet/minecraft/world/phys/Vec3; getThrowPosition a method_42651 + p 0 positionTracker + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/level/ServerPlayer;)V triggerDropItemOnBlock a method_43079 + p 1 positionTracker + p 2 stack + p 3 player + m (Lnet/minecraft/world/entity/LivingEntity;)Z canThrowItemToTarget b method_42649 + p 1 target + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/level/ServerPlayer;)V method_43080 b method_43080 + m (Ljava/util/function/Function;FI)V + p 1 targetPositionGetter + p 2 speedModifier + p 3 duration +c net/minecraft/world/entity/ai/behavior/GoToClosestVillage bvy net/minecraft/class_4458 + m (FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46934 + p 0 speedModifier + p 1 closeEnoughDist + m (FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46935 a method_46935 + m (FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46936 a method_46936 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_46937 a method_46937 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Lnet/minecraft/core/BlockPos;)D method_46938 a method_46938 + m ()V +c net/minecraft/world/entity/ai/behavior/GoToPotentialJobSite bvz net/minecraft/class_5325 + f F speedModifier c field_25155 + f I TICKS_UNTIL_TIMEOUT d field_30122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_29251 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_29523 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/GlobalPos;)V method_29524 a method_29524 + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/lang/Boolean; method_29250 a method_29250 + m (Lnet/minecraft/core/Holder;)Z method_29783 a method_29783 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick b method_29252 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_29525 + p 1 level + p 2 entity + p 3 gameTime + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/GoToTargetLocation bwa net/minecraft/class_4814 + m (Lnet/minecraft/util/RandomSource;)I getRandomOffset a method_24578 + p 0 random + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getNearbyPos a method_24577 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46939 a method_46939 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;IFLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46940 a method_46940 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IF)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46941 + p 0 locationMemory + p 1 closeEnoughDist + p 2 speedModifier + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46942 a method_46942 + m ()V +c net/minecraft/world/entity/ai/behavior/GoToWantedItem bwb net/minecraft/class_4815 + m (FZI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46943 + p 0 speedModifier + p 1 hasTarget + p 2 maxDistToWalk + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_46944 a method_46944 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46945 a method_46945 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46946 a method_46946 + m (Ljava/util/function/Predicate;FZI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46947 + p 0 canWalkToItem + p 1 speedModifier + p 2 hasTarget + p 3 maxDistToWalk + m (ZLjava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46948 a method_46948 + m ()V +c net/minecraft/world/entity/ai/behavior/HarvestFarmland bwc net/minecraft/class_4217 + f F SPEED_MODIFIER c field_30123 + f I HARVEST_DURATION d field_30124 + f Lnet/minecraft/core/BlockPos; aboveFarmlandPos e field_18858 + f J nextOkStartTime f field_18861 + f I timeWorkedSoFar g field_19239 + f Ljava/util/List; validFarmlandAroundVillager h field_19351 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/core/BlockPos; getValidFarmland a method_20641 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19564 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_20392 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z validPos a method_20640 + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop b method_19566 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19565 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse d method_20394 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/InsideBrownianWalk bwd net/minecraft/class_4289 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46949 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46950 a method_46950 + m (FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46951 a method_46951 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_46952 a method_46952 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_46953 a method_46953 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_46954 a method_46954 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/core/BlockPos;)V method_46955 a method_46955 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_46956 b method_46956 + m ()V +c net/minecraft/world/entity/ai/behavior/InteractWith bwe net/minecraft/class_4106 + m (Lnet/minecraft/world/entity/EntityType;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; of a method_18941 + p 0 type + p 1 interactionRange + p 2 interactMemory + p 3 speedModifier + p 4 maxDist + m (Lnet/minecraft/world/entity/EntityType;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; of a method_46957 + p 0 type + p 1 interactionRange + p 2 selfFilter + p 3 targetFilter + p 4 memory + p 5 speedModifier + p 6 maxDist + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_46958 a method_46958 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18948 a method_18948 + m (Lnet/minecraft/world/entity/LivingEntity;ILjava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_46959 a method_46959 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Ljava/util/function/Predicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46960 a method_46960 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46961 a method_46961 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/world/entity/LivingEntity;)V method_46962 a method_46962 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46963 a method_46963 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18949 b method_18949 + m ()V +c net/minecraft/world/entity/ai/behavior/InteractWithDoor bwf net/minecraft/class_4107 + f I COOLDOWN_BEFORE_RERUNNING_IN_SAME_NODE a field_30125 + f D SKIP_CLOSING_DOOR_IF_FURTHER_AWAY_THAN b field_30126 + f D MAX_DISTANCE_TO_HOLD_DOOR_OPEN_FOR_OTHER_MOBS c field_30127 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46964 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Set;)V method_46965 a method_46965 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;Ljava/util/Optional;)V closeDoorsThatIHaveOpenedOrPassedThrough a method_30760 + p 0 level + p 1 entity + p 2 previous + p 3 next + p 4 doorPositions + p 5 nearestLivingEntities + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/GlobalPos;)Z isDoorTooFarAway a method_30762 + p 0 level + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_30764 a method_30764 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;Ljava/util/Optional;)Z areOtherMobsComingThroughDoor a method_30761 + p 0 entity + p 1 pos + p 2 nearestLivingEntities + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/BlockPos;)Z isMobComingThroughDoor a method_30766 + p 0 brain + p 1 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46966 a method_46966 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46967 a method_46967 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; rememberDoorToClose a method_46969 + p 0 doorsToClose + p 1 doorPositions + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40002 a method_40002 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_46970 a method_46970 + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Set; method_46968 a method_46968 + m (Lnet/minecraft/core/GlobalPos;Ljava/util/Set;)Ljava/util/Set; method_46971 a method_46971 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46972 a method_46972 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_46973 b method_46973 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_30765 b method_30765 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_46974 c method_46974 + m ()V +c net/minecraft/world/entity/ai/behavior/JumpOnBed bwg net/minecraft/class_4245 + f I MAX_TIME_TO_REACH_BED c field_30128 + f I MIN_JUMPS d field_30129 + f I MAX_JUMPS e field_30130 + f I COOLDOWN_BETWEEN_JUMPS f field_30131 + f F speedModifier g field_18988 + f Lnet/minecraft/core/BlockPos; targetBed h field_18989 + f I remainingTimeToReachBed i field_18990 + f I remainingJumps j field_18991 + f I remainingCooldownUntilNextJump k field_18992 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_19971 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_19972 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)V method_19973 a method_19973 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isBed a method_19974 + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/Mob;)Ljava/util/Optional; getNearestBed a method_19969 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)V startWalkingTowardsBed a method_19970 + p 1 mob + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z nearBed b method_19975 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_19976 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z onOrOverBed c method_19977 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse c method_19978 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z onBedSurface d method_19979 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick d method_19980 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z tiredOfWalking e method_19981 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z tiredOfJumping f method_19982 + p 1 level + p 2 mob + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/LocateHidingPlace bwh net/minecraft/class_4246 + m (IFI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46975 + p 0 radius + p 1 speedModifier + p 2 closeEnoughDist + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46976 a method_46976 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46977 a method_46977 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46978 a method_46978 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;I)Ljava/util/Optional; method_46979 a method_46979 + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/core/BlockPos;)Z method_46980 a method_46980 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; method_46981 a method_46981 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/core/BlockPos;)V method_46982 a method_46982 + m (Lnet/minecraft/core/BlockPos;)Z method_46983 a method_46983 + m (Lnet/minecraft/core/Holder;)Z method_46984 a method_46984 + m (Lnet/minecraft/core/BlockPos;)Z method_46985 b method_46985 + m (Lnet/minecraft/core/Holder;)Z method_46986 b method_46986 + m ()V +c net/minecraft/world/entity/ai/behavior/LongJumpMidJump bwi net/minecraft/class_6029 + f I TIME_OUT_DURATION c field_30132 + f Lnet/minecraft/util/valueproviders/UniformInt; timeBetweenLongJumps d field_30133 + f Lnet/minecraft/sounds/SoundEvent; landingSound e field_33459 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_35073 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start b method_35074 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop c method_35075 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/sounds/SoundEvent;)V + p 1 timeBetweenLongJumps + p 2 landingSound +c net/minecraft/world/entity/ai/behavior/LongJumpToPreferredBlock bwj net/minecraft/class_7096 + f Lnet/minecraft/tags/TagKey; preferredBlockTag m field_37427 + f F preferredBlocksChance n field_37428 + f Ljava/util/List; notPrefferedJumpCandidates o field_37429 + f Z currentlyWantingPreferredOnes p field_37430 + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Lnet/minecraft/tags/TagKey;FLjava/util/function/BiPredicate;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + p 6 preferredBlockTag + p 7 preferredBlocksChance + p 8 acceptableLandingSpot +c net/minecraft/world/entity/ai/behavior/LongJumpToRandomPos bwk net/minecraft/class_6030 + f I FIND_JUMP_TRIES c field_30135 + f I MIN_PATHFIND_DISTANCE_TO_VALID_JUMP d field_30137 + f I maxLongJumpHeight e field_30139 + f I maxLongJumpWidth f field_30140 + f F maxJumpVelocityMultiplier g field_30141 + f Ljava/util/List; jumpCandidates h field_30142 + f Ljava/util/Optional; initialPosition i field_30143 + f Lnet/minecraft/world/phys/Vec3; chosenJump j field_30144 + f I findJumpTries k field_30145 + f J prepareJumpStart l field_30146 + f I PREPARE_JUMP_DURATION m field_30136 + f I TIME_OUT_DURATION n field_30134 + f Ljava/util/List; ALLOWED_ANGLES o field_37431 + f Lnet/minecraft/util/valueproviders/UniformInt; timeBetweenLongJumps p field_30138 + f Ljava/util/function/Function; getJumpSound q field_33460 + f Ljava/util/function/BiPredicate; acceptableLandingSpot r field_37432 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getJumpCandidate a method_41336 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_35076 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_35082 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z isAcceptableLandingPosition a method_41337 + p 1 level + p 2 entity + p 3 pos + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; calculateOptimalJumpVector a method_35078 + p 1 mob + p 2 target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z defaultAcceptableLandingSpot a method_45333 + p 0 mob + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump; method_41340 a method_41340 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse b method_35077 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z method_41341 b method_41341 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick c method_35083 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V pickCandidate d method_41342 + p 1 level + p 2 entity + p 3 prepareJumpStart + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Ljava/util/function/BiPredicate;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + p 6 acceptableLandingSpot + m ()V +c net/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump bwk$a net/minecraft/class_6030$class_6031 + f Lnet/minecraft/core/BlockPos; jumpTarget a field_30147 + m ()Lnet/minecraft/core/BlockPos; getJumpTarget b method_35084 + m (Lnet/minecraft/core/BlockPos;I)V + p 1 jumpTarget + p 2 weight +c net/minecraft/world/entity/ai/behavior/LongJumpUtil bwl net/minecraft/class_8946 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/EntityDimensions;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z isClearTransition a method_54989 + p 0 mob + p 1 dimensions + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;FIZ)Ljava/util/Optional; calculateJumpVectorForAngle a method_54990 + p 0 mob + p 1 target + p 2 maxJumpVelocity + p 3 angle + p 4 requireClearTransition + m ()V +c net/minecraft/world/entity/ai/behavior/LookAndFollowTradingPlayerSink bwm net/minecraft/class_4108 + f F speedModifier c field_18362 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_18954 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_18955 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V followPlayer a method_18953 + p 1 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_18956 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_18957 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick d method_18958 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/LookAtTargetSink bwn net/minecraft/class_4110 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_18967 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)V method_18966 a method_18966 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_18968 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)Z method_19569 b method_19569 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick c method_18969 + p 1 level + p 2 owner + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/MeleeAttack bwo net/minecraft/class_4816 + m (I)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46987 + p 0 cooldownBetweenAttacks + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46988 a method_46988 + m (Lnet/minecraft/world/entity/Mob;)Z isHoldingUsableProjectileWeapon a method_25942 + p 0 mob + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;)Z method_25943 a method_25943 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46989 a method_46989 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46990 a method_46990 + m ()V +c net/minecraft/world/entity/ai/behavior/Mount bwp net/minecraft/class_4817 + f I CLOSE_ENOUGH_TO_START_RIDING_DIST a field_30149 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46991 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46992 a method_46992 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46993 a method_46993 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46994 a method_46994 + m ()V +c net/minecraft/world/entity/ai/behavior/MoveToSkySeeingSpot bwq net/minecraft/class_4248 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46995 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46996 a method_46996 + m (FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46997 a method_46997 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getOutdoorPosition a method_19987 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)Z hasNoBlocksAbove a method_20497 + p 0 level + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46998 a method_46998 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/world/phys/Vec3;)V method_46999 a method_46999 + m ()V +c net/minecraft/world/entity/ai/behavior/MoveToTargetSink bwr net/minecraft/class_4112 + f I MAX_COOLDOWN_BEFORE_RETRYING c field_30150 + f I remainingCooldown d field_18964 + f Lnet/minecraft/world/level/pathfinder/Path; path e field_18369 + f Lnet/minecraft/core/BlockPos; lastTargetPos f field_18370 + f F speedModifier g field_18371 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_18978 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_18979 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/memory/WalkTarget;)Z reachedTarget a method_18980 + p 1 mob + p 2 target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/memory/WalkTarget;J)Z tryComputePath a method_18977 + p 1 mob + p 2 target + p 3 time + m (Lnet/minecraft/world/entity/ai/memory/WalkTarget;)Z isWalkTargetSpectator a method_49793 + p 0 walkTarget + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_18981 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start c method_18982 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick d method_18983 + p 1 level + p 2 owner + p 3 gameTime + m ()V + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/OneShot bws net/minecraft/class_7894 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status a field_40994 + m ()V +c net/minecraft/world/entity/ai/behavior/PlayTagWithOtherKids bwt net/minecraft/class_4218 + f I MAX_FLEE_XZ_DIST a field_30151 + f I MAX_FLEE_Y_DIST b field_30152 + f F FLEE_SPEED_MODIFIER c field_30153 + f F CHASE_SPEED_MODIFIER d field_30154 + f I MAX_CHASERS_PER_TARGET e field_30155 + f I AVERAGE_WAIT_TIME_BETWEEN_RUNS f field_30156 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47000 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; whoAreYouChasing a method_19576 + p 0 kid + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isFriendChasingMe a method_19577 + p 0 entity + p 1 kid + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/lang/Integer;)Ljava/lang/Integer; method_19578 a method_19578 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_47001 a method_47001 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47002 a method_47002 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47003 a method_47003 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47004 a method_47004 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V chaseKid a method_19580 + p 0 interactionTarget + p 1 lookTarget + p 2 walkTarget + p 3 kid + m (Ljava/util/List;)Ljava/util/Optional; findSomeoneBeingChased a method_19588 + p 0 kids + m (Ljava/util/Map$Entry;)Z method_19581 a method_19581 + m (Ljava/util/Map;Lnet/minecraft/world/entity/LivingEntity;)V method_19582 a method_19582 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isChasingSomeone b method_19593 + p 0 kid + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_19587 b method_19587 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47005 b method_47005 + m (Ljava/util/List;)Ljava/util/Map; checkHowManyChasersEachFriendHas b method_19592 + p 0 kids + m ()V +c net/minecraft/world/entity/ai/behavior/PoiCompetitorScan bwu net/minecraft/class_5326 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47006 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/npc/Villager; method_47007 a method_47007 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47008 a method_47008 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47009 a method_47009 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47010 a method_47010 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;)V method_47011 a method_47011 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)Z method_47012 a method_47012 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/world/entity/npc/Villager; selectWinner a method_29255 + p 0 villagerA + p 1 villagerB + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;)Z competesForSameJobsite a method_29257 + p 0 jobSitePos + p 1 poi + p 2 poiType + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/VillagerProfession;)Z hasMatchingProfession a method_29253 + p 0 poi + p 1 poiType + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;)Z method_47013 b method_47013 + m ()V +c net/minecraft/world/entity/ai/behavior/PositionTracker bwv net/minecraft/class_4115 + m ()Lnet/minecraft/world/phys/Vec3; currentPosition a method_18991 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isVisibleBy a method_18990 + p 1 entity + m ()Lnet/minecraft/core/BlockPos; currentBlockPosition b method_18989 +c net/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget bww net/minecraft/class_6336 + f I TIME_OUT_DURATION c field_33461 + f Ljava/util/function/ToIntFunction; getCooldownOnFail d field_33462 + f I minRamDistance e field_33463 + f I maxRamDistance f field_33464 + f F walkSpeed g field_33465 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ramTargeting h field_33466 + f I ramPrepareTime i field_33467 + f Ljava/util/function/Function; getPrepareRamSound j field_33468 + f Ljava/util/Optional; reachedRamPositionTimestamp k field_33469 + f Ljava/util/Optional; ramCandidate l field_33470 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start a method_36260 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget$RamCandidate; method_36261 a method_36261 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; calculateRammingStartPosition a method_36262 + p 1 pathfinder + p 2 entity + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)Ljava/util/Optional; method_36264 a method_36264 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isWalkableBlock a method_36263 + p 1 pathfinder + p 2 pos + m (Lnet/minecraft/world/entity/ai/navigation/PathNavigation;Lnet/minecraft/core/BlockPos;)Z method_36265 a method_36265 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getEdgeOfBlock a method_36266 + p 1 pos + p 2 other + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop b method_36267 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)V chooseRamPosition b method_36268 + p 1 pathfinder + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse c method_36269 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)V method_36270 c method_36270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_36271 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_36272 d method_36272 + m (Ljava/util/function/ToIntFunction;IIFLnet/minecraft/world/entity/ai/targeting/TargetingConditions;ILjava/util/function/Function;)V + p 1 getCooldownOnFall + p 2 minRamDistance + p 3 maxRamDistance + p 4 walkSpeed + p 5 ramTargeting + p 6 ramPrepareTime + p 7 getPrepareRamSound +c net/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget$RamCandidate bww$a net/minecraft/class_6336$class_6337 + f Lnet/minecraft/core/BlockPos; startPosition a field_33471 + f Lnet/minecraft/core/BlockPos; targetPosition b field_33472 + f Lnet/minecraft/world/entity/LivingEntity; target c field_33473 + m ()Lnet/minecraft/core/BlockPos; getStartPosition a method_36273 + m ()Lnet/minecraft/core/BlockPos; getTargetPosition b method_36275 + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget c method_36276 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 startPosition + p 2 targetPosition + p 3 target +c net/minecraft/world/entity/ai/behavior/RamTarget bwx net/minecraft/class_6338 + f I TIME_OUT_DURATION c field_33474 + f F RAM_SPEED_FORCE_FACTOR d field_33475 + f Ljava/util/function/Function; getTimeBetweenRams e field_33476 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ramTargeting f field_33477 + f F speed g field_33479 + f Ljava/util/function/ToDoubleFunction; getKnockbackForce h field_33480 + f Lnet/minecraft/world/phys/Vec3; ramDirection i field_33481 + f Ljava/util/function/Function; getImpactSound j field_33482 + f Ljava/util/function/Function; getHornBreakSound k field_39044 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)Z checkExtraStartConditions a method_36277 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)Z canStillUse a method_36278 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)V finishRam b method_36279 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)V start b method_36280 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)Z hasRammedHornBreakingBlock c method_43535 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)V tick c method_36281 + p 1 level + p 2 owner + p 3 gameTime + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;FLjava/util/function/ToDoubleFunction;Ljava/util/function/Function;Ljava/util/function/Function;)V + p 1 getTimeBetweenRams + p 2 ramTargeting + p 3 speed + p 4 getKnockbackForce + p 5 getImpactSound + p 6 getHornBreakSound +c net/minecraft/world/entity/ai/behavior/RandomLookAround bwy net/minecraft/class_7687 + f Lnet/minecraft/util/valueproviders/IntProvider; interval c field_40119 + f F maxYaw d field_40120 + f F minPitch e field_40121 + f F pitchRange f field_40122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_45334 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/util/valueproviders/IntProvider;FFF)V + p 1 interval + p 2 maxYaw + p 3 minPitch + p 4 maxPitch +c net/minecraft/world/entity/ai/behavior/RandomStroll bwz net/minecraft/class_4818 + f I MAX_XZ_DIST a field_30157 + f I MAX_Y_DIST b field_30158 + f [[I SWIM_XY_DISTANCE_TIERS c field_40995 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; stroll a method_47014 + p 0 speedModifier + m (FII)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; stroll a method_47015 + p 0 speedModifier + p 1 maxHorizontalDistance + p 2 maxVerticalDistance + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47016 a method_47016 + m (FLjava/util/function/Function;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; strollFlyOrSwim a method_47017 + p 0 speedModifier + p 1 target + p 2 canStroll + m (FZ)Lnet/minecraft/world/entity/ai/behavior/OneShot; stroll a method_47018 + p 0 speedModifier + p 1 mayStrollFromWater + m (IILnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47019 a method_47019 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; getTargetSwimPos a method_47020 + p 0 mob + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getTargetFlyPos a method_47021 + p 0 mob + p 1 maxDistance + p 2 yRange + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47022 a method_47022 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47023 a method_47023 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47024 a method_47024 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; fly b method_47025 + p 0 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47026 b method_47026 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; swim c method_47027 + p 0 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47028 c method_47028 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47029 d method_47029 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47030 e method_47030 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47031 f method_47031 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47032 g method_47032 + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/ReactToBell bxa net/minecraft/class_4249 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47033 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47034 a method_47034 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47035 a method_47035 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47036 a method_47036 + m ()V +c net/minecraft/world/entity/ai/behavior/ResetProfession bxb net/minecraft/class_4295 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47037 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47038 a method_47038 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47039 a method_47039 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47040 a method_47040 + m ()V +c net/minecraft/world/entity/ai/behavior/ResetRaidStatus bxc net/minecraft/class_4250 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47041 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47042 a method_47042 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47043 a method_47043 + m ()V +c net/minecraft/world/entity/ai/behavior/RingBell bxd net/minecraft/class_4251 + f I RING_BELL_FROM_DISTANCE a field_30159 + f F BELL_RING_CHANCE b field_30160 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47044 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47045 a method_47045 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47046 a method_47046 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47047 a method_47047 + m ()V +c net/minecraft/world/entity/ai/behavior/RunOne bxe net/minecraft/class_4118 + m (Ljava/util/List;)V + p 1 entryCondition + m (Ljava/util/Map;Ljava/util/List;)V + p 1 entryCondition + p 2 durations +c net/minecraft/world/entity/ai/behavior/SetClosestHomeAsWalkTarget bxf net/minecraft/class_4290 + f I CACHE_TIMEOUT a field_30161 + f I BATCH_SIZE b field_30162 + f I RATE c field_30163 + f I OK_DISTANCE_SQR d field_30164 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47048 + p 0 speedModifier + m (Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/core/BlockPos;)Z method_47050 a method_47050 + m (Lnet/minecraft/core/Holder;)Z method_47049 a method_47049 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap$Entry;)Z method_47051 a method_47051 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47052 a method_47052 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47053 a method_47053 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47054 a method_47054 + m (Lnet/minecraft/core/Holder;)Z method_47055 b method_47055 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTarget bxg net/minecraft/class_4119 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47056 + p 0 maxDist + m (Lnet/minecraft/world/entity/EntityType;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47057 + p 0 entityType + p 1 maxDist + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47058 a method_47058 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47059 a method_47059 + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/entity/LivingEntity;)Z method_47060 a method_47060 + m (Lnet/minecraft/world/entity/MobCategory;F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47061 + p 0 category + p 1 makDist + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/entity/LivingEntity;)Z method_47062 a method_47062 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47063 a method_47063 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47064 a method_47064 + m (Ljava/util/function/Predicate;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47065 + p 0 canLootAtTarget + p 1 maxDist + m (Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47066 a method_47066 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes bxh net/minecraft/class_7895 + m (FLnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47067 + p 0 maxDist + p 1 interval + m (FLnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47068 + p 0 maxDist + p 1 interval + p 2 canLookAtTarget + m (Lnet/minecraft/world/entity/EntityType;FLnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47069 + p 0 entityType + p 1 maxDist + p 2 interval + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47070 a method_47070 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47071 a method_47071 + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/entity/LivingEntity;)Z method_47072 a method_47072 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47073 a method_47073 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47074 a method_47074 + m (Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47075 a method_47075 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker bxh$a net/minecraft/class_7895$class_7896 + f Lnet/minecraft/util/valueproviders/UniformInt; interval a field_40996 + f I ticksUntilNextStart b field_40997 + m (Lnet/minecraft/util/RandomSource;)Z tickDownAndCheck a method_47076 + p 1 random + m (Lnet/minecraft/util/valueproviders/UniformInt;)V + p 1 interval +c net/minecraft/world/entity/ai/behavior/SetHiddenState bxi net/minecraft/class_4252 + f I HIDE_TIMEOUT a field_30165 + m (II)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47077 + p 0 stayHiddenSeconds + p 1 closeEnoughdist + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47078 a method_47078 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47079 a method_47079 + m (Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47080 a method_47080 + m ()V +c net/minecraft/world/entity/ai/behavior/SetLookAndInteract bxj net/minecraft/class_4109 + m (ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47081 a method_47081 + m (Lnet/minecraft/world/entity/EntityType;I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47082 + p 0 entityType + p 1 maxDist + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47083 a method_47083 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47084 a method_47084 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47085 a method_47085 + m ()V +c net/minecraft/world/entity/ai/behavior/SetRaidStatus bxk net/minecraft/class_4253 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47086 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47087 a method_47087 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47088 a method_47088 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetAwayFrom bxl net/minecraft/class_4121 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ZLjava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;IFLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47089 a method_47089 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ZLjava/util/function/Function;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47090 a method_47090 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZ)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; pos a method_47091 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZLjava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47092 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + p 4 toPosition + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/function/Function;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47093 a method_47093 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZ)Lnet/minecraft/world/entity/ai/behavior/OneShot; entity b method_24603 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromAttackTargetIfTargetOutOfReach bxm net/minecraft/class_4822 + f I PROJECTILE_ATTACK_RANGE_BUFFER a field_30166 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47094 + p 0 speedModifier + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_47095 a method_47095 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Function;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47096 a method_47096 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47097 a method_47097 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47098 + p 0 speedModifier + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47099 a method_47099 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromBlockMemory bxn net/minecraft/class_4122 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47100 a method_47100 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47101 a method_47101 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIII)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47102 + p 0 blockTargetMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 tooFarDistance + p 4 tooLongUnreachableDuration + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IIFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47103 a method_47103 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromLookTarget bxo net/minecraft/class_4120 + m (FI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47104 + p 0 speedModifier + p 1 closeEnoughDist + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_47105 a method_47105 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47106 a method_47106 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Function;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47107 a method_47107 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Function;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47108 a method_47108 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;I)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47109 + p 0 canSetWalkTarget + p 1 speedModifier + p 2 closeEnoughDist + m (Ljava/util/function/Predicate;Ljava/util/function/Function;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47110 a method_47110 + m ()V +c net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer bxp net/minecraft/class_4130 + f I MAX_LOOK_TIME c field_30167 + f I STARTING_LOOK_TIME d field_30168 + f Lnet/minecraft/world/item/ItemStack; playerItemStack e field_18392 + f Ljava/util/List; displayItems f field_18393 + f I cycleCounter g field_18394 + f I displayIndex h field_18395 + f I lookTime i field_18396 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19599 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19600 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/npc/Villager;)V findItemsToDisplay a method_19027 + p 1 entity + p 2 villager + m (Lnet/minecraft/world/entity/npc/Villager;)V displayFirstItem a method_19598 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/item/ItemStack;)V displayAsHeldItem a method_37447 + p 0 villager + p 1 item + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Z playerItemStackMatchesCostOfOffer a method_19028 + p 1 offer + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_19602 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V updateDisplayItems b method_19601 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19604 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V clearHeldItem c method_37448 + p 0 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19605 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/world/entity/LivingEntity; lookAtTarget d method_19603 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;)V displayCyclingItems e method_19026 + p 1 villager + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/ShufflingList bxq net/minecraft/class_6032 + f Ljava/util/List; entries a field_30169 + f Lnet/minecraft/util/RandomSource; random b field_30170 + m ()Lnet/minecraft/world/entity/ai/behavior/ShufflingList; shuffle a method_35088 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;)V method_35089 a method_35089 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)Ljava/util/List; method_35090 a method_35090 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_35091 + p 0 codec + m (Ljava/lang/Object;I)Lnet/minecraft/world/entity/ai/behavior/ShufflingList; add a method_35093 + p 1 data + p 2 weight + m ()Ljava/util/stream/Stream; stream b method_35094 + m ()V + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry bxq$a net/minecraft/class_6032$class_6033 + f Ljava/lang/Object; data a field_30171 + f I weight b field_30172 + f D randWeight c field_30173 + m ()Ljava/lang/Object; getData a method_35095 + m (F)V setRandom a method_35096 + p 1 chance + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_35099 + p 0 codec + m ()I getWeight b method_35100 + m ()D getRandWeight c method_35102 + m (Ljava/lang/Object;I)V + p 1 data + p 2 weight +c net/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry$1 bxq$a$1 net/minecraft/class_6032$class_6033$1 + f Lcom/mojang/serialization/Codec; val$elementCodec a field_30174 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_35104 + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry; method_35105 a method_35105 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;)Lcom/mojang/datafixers/util/Pair; method_35106 a method_35106 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/entity/ai/behavior/SleepInBed bxr net/minecraft/class_4123 + f I COOLDOWN_AFTER_BEING_WOKEN c field_30175 + f J nextOkStartTime d field_18848 + m ()V +c net/minecraft/world/entity/ai/behavior/SocializeAtBell bxs net/minecraft/class_4124 + f F SPEED_MODIFIER a field_30176 + m ()Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47111 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47112 a method_47112 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_47113 a method_47113 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47114 a method_47114 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47115 a method_47115 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47116 a method_47116 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47117 a method_47117 + m ()V +c net/minecraft/world/entity/ai/behavior/StartAttacking bxt net/minecraft/class_4824 + m (Lnet/minecraft/world/entity/Mob;)Z method_47118 a method_47118 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47119 + p 0 targetFinder + m (Ljava/util/function/Predicate;Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47120 + p 0 canAttack + p 1 targetFinder + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47121 a method_47121 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47122 a method_47122 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47123 a method_47123 + m ()V +c net/minecraft/world/entity/ai/behavior/StartCelebratingIfTargetDead bxu net/minecraft/class_4825 + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47124 + p 0 duration + p 1 canDance + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47125 a method_47125 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/BiPredicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47126 a method_47126 + m (Ljava/util/function/BiPredicate;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47127 a method_47127 + m ()V +c net/minecraft/world/entity/ai/behavior/StayCloseToTarget bxv net/minecraft/class_7297 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47128 a method_47128 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47129 a method_47129 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IIF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47130 + p 0 targetPositionGetter + p 1 predicate + p 2 closeEnoughDist + p 3 tooClose + p 4 speedModifier + m (Ljava/util/function/Function;Ljava/util/function/Predicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47131 a method_47131 + m ()V +c net/minecraft/world/entity/ai/behavior/StopAttackingIfTargetInvalid bxw net/minecraft/class_4828 + f I TIMEOUT_TO_GET_WITHIN_ATTACK_RANGE a field_30177 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47132 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47133 a method_47133 + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/Optional;)Z isTiredOfTryingToReachTarget a method_24621 + p 0 entity + p 1 timeSinceInvalidTarget + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V method_47134 a method_47134 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ZLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47135 a method_47135 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ZLjava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47136 a method_47136 + m (Ljava/util/function/BiConsumer;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47137 + p 0 onStopAttacking + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47138 + p 0 canStopAttacking + m (Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;Z)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47139 + p 0 canStopAttacking + p 1 onStopAttacking + p 2 canGrowTiredOfTryingToReachTarget + m (ZLjava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47140 a method_47140 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47141 b method_47141 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V method_47142 b method_47142 + m ()V +c net/minecraft/world/entity/ai/behavior/StopBeingAngryIfTargetDead bxx net/minecraft/class_4829 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47143 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z method_47144 a method_47144 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_47145 a method_47145 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47146 a method_47146 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47147 a method_47147 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47148 a method_47148 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47149 a method_47149 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollAroundPoi bxy net/minecraft/class_4116 + f I MIN_TIME_BETWEEN_STROLLS a field_30179 + f I STROLL_MAX_XZ_DIST b field_30180 + f I STROLL_MAX_Y_DIST c field_30181 + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47150 a method_47150 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47151 a method_47151 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47152 a method_47152 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47153 + p 0 poiPosMemory + p 1 speedModifier + p 2 maxDistFromPoi + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47154 a method_47154 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollToPoi bxz net/minecraft/class_4219 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47155 a method_47155 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47156 a method_47156 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FII)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47157 + p 0 poiPosMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 maxDistFromPoi + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47158 a method_47158 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollToPoiList bya net/minecraft/class_4220 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47159 a method_47159 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47160 a method_47160 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIILnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47161 + p 0 poiListMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 maxDistFromPoi + p 4 mustBeCloseToMemory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47162 a method_47162 + m ()V +c net/minecraft/world/entity/ai/behavior/Swim byb net/minecraft/class_4125 + f F chance c field_18387 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_19010 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_19011 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;)Z shouldSwim a method_55700 + p 0 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick b method_19012 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 chance +c net/minecraft/world/entity/ai/behavior/TradeWithVillager byc net/minecraft/class_4126 + f Ljava/util/Set; trades c field_18389 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19015 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19016 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Set; figureOutWhatIAmWillingToTrade a method_19611 + p 0 villager + p 1 other + m (Lnet/minecraft/world/entity/npc/Villager;Ljava/util/Set;Lnet/minecraft/world/entity/LivingEntity;)V throwHalfStack a method_19013 + p 0 villager + p 1 stack + p 2 entity + m (Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/world/item/Item;)Z method_19014 a method_19014 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_19017 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19018 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19019 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/TriggerGate byd net/minecraft/class_7897 + m (Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47163 a method_47163 + m (Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47164 a method_47164 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lcom/mojang/datafixers/util/Pair;)V method_47165 a method_47165 + m (Ljava/util/List;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerOneShuffled a method_47166 + p 0 triggers + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerGate a method_47167 + p 0 triggers + p 1 orderPolicy + p 2 runningPolicy + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindLand bye net/minecraft/class_7097 + f I COOLDOWN_TICKS a field_37433 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47168 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47169 a method_47169 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47170 a method_47170 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47171 a method_47171 + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindLandNearWater byf net/minecraft/class_7098 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47172 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47173 a method_47173 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47174 a method_47174 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47175 a method_47175 + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindWater byg net/minecraft/class_5756 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47176 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47177 a method_47177 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47178 a method_47178 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47179 a method_47179 + m ()V +c net/minecraft/world/entity/ai/behavior/TryLaySpawnOnWaterNearLand byh net/minecraft/class_7099 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47180 + p 0 spawnBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47181 a method_47181 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47182 a method_47182 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47183 a method_47183 + m ()V +c net/minecraft/world/entity/ai/behavior/UpdateActivityFromSchedule byi net/minecraft/class_4127 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47184 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47185 a method_47185 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47186 a method_47186 + m ()V +c net/minecraft/world/entity/ai/behavior/UseBonemeal byj net/minecraft/class_4982 + f I BONEMEALING_DURATION c field_30184 + f J nextWorkCycleTime d field_23222 + f J lastBonemealingSession e field_23223 + f I timeWorkedSoFar f field_23224 + f Ljava/util/Optional; cropPos g field_23225 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_26327 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_26328 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V setCurrentCropAsTarget a method_26324 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)V method_26325 a method_26325 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z validPos a method_26326 + p 1 pos + p 2 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; pickNextTarget b method_26329 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_26330 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_26331 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick d method_26332 + p 1 level + p 2 owner + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/ValidateNearbyPoi byk net/minecraft/class_4128 + f I MAX_DISTANCE a field_30185 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z bedIsOccupied a method_20500 + p 0 level + p 1 pos + p 2 entity + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47187 a method_47187 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47188 a method_47188 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47189 a method_47189 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47190 + p 0 poiValidator + p 1 poiPosMemory + m ()V +c net/minecraft/world/entity/ai/behavior/VillageBoundRandomStroll byl net/minecraft/class_4117 + f I MAX_XZ_DIST a field_30186 + f I MAX_Y_DIST b field_30187 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47191 + p 0 speedModifier + m (FII)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47192 + p 0 speedModifier + p 1 maxHorizontalDist + p 2 maxVerticalDist + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47193 a method_47193 + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47194 a method_47194 + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47195 a method_47195 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47196 a method_47196 + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerCalmDown bym net/minecraft/class_4100 + f I SAFE_DISTANCE_FROM_DANGER a field_30188 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47197 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_47198 a method_47198 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47199 a method_47199 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47200 a method_47200 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47201 a method_47201 + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerGoalPackages byn net/minecraft/class_4129 + f I INTERACT_DIST_SQR a field_48329 + f I INTERACT_WALKUP_DIST b field_48330 + f F INTERACT_SPEED_MODIFIER c field_48331 + f F STROLL_SPEED_MODIFIER d field_30189 + m ()Lcom/mojang/datafixers/util/Pair; getFullLookBehavior a method_20241 + m (F)Lcom/google/common/collect/ImmutableList; getPlayPackage a method_19990 + p 0 speedModifier + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z raidExistsAndActive a method_47202 + p 0 level + p 1 entity + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getCorePackage a method_19020 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43968 a method_43968 + m ()Lcom/mojang/datafixers/util/Pair; getMinimalLookBehavior b method_20242 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z raidExistsAndNotVictory b method_47203 + p 0 level + p 1 entity + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getWorkPackage b method_19021 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43969 b method_43969 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getRestPackage c method_19022 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43970 c method_43970 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getMeetPackage d method_19023 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43971 d method_43971 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getIdlePackage e method_19024 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getPanicPackage f method_19025 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getPreRaidPackage g method_19991 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getRaidPackage h method_19992 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getHidePackage i method_19993 + p 0 profession + p 1 speedModifier + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerMakeLove byo net/minecraft/class_4111 + f J birthTimestamp c field_18368 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19571 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_18973 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)V tryToGiveBirth a method_20643 + p 1 level + p 2 parent + p 3 partner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)V giveBedToChild a method_19572 + p 1 level + p 2 villager + p 3 pos + m (Lnet/minecraft/world/entity/AgeableMob;)Z method_24631 a method_24631 + m (Lnet/minecraft/world/entity/npc/Villager;)Z isBreedingPossible a method_18972 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Z canReach a method_20642 + p 1 villager + p 2 pos + p 3 poiType + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)Z method_20644 a method_20644 + m (Lnet/minecraft/core/Holder;)Z method_43972 a method_43972 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; takeVacantBed b method_19573 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_18974 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; breed b method_18970 + p 1 level + p 2 parent + p 3 partner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_18975 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_18976 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerPanicTrigger byp net/minecraft/class_4113 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_20646 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_20647 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasHostile b method_19574 + p 0 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_20648 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHurt c method_19575 + p 0 entity + m ()V +c net/minecraft/world/entity/ai/behavior/WakeUp byq net/minecraft/class_4214 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47204 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47205 a method_47205 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47206 a method_47206 + m ()V +c net/minecraft/world/entity/ai/behavior/WorkAtComposter byr net/minecraft/class_4983 + f Ljava/util/List; COMPOSTABLE_ITEMS c field_23226 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/GlobalPos;Lnet/minecraft/world/level/block/state/BlockState;)V compostItems a method_26334 + p 1 level + p 2 villager + p 3 global + p 4 state + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnComposterFillEffects a method_30232 + p 1 level + p 2 preState + p 3 pos + p 4 postState + m (Lnet/minecraft/world/entity/npc/Villager;)V makeBread a method_26333 + p 1 villager + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/WorkAtPoi bys net/minecraft/class_4133 + f I CHECK_COOLDOWN c field_30192 + f D DISTANCE d field_30193 + f J lastCheck e field_19426 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V useWorkstation a method_26335 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_21642 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/GlobalPos;)V method_19613 a method_19613 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions b method_21641 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse b method_26336 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/YieldJobSite byt net/minecraft/class_5327 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47207 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47208 a method_47208 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/npc/Villager; method_47209 a method_47209 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiType;)Z canReachPos a method_29262 + p 0 mob + p 1 pos + p 2 poi + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47210 a method_47210 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47211 a method_47211 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/core/BlockPos;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V method_47212 a method_47212 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)Z method_47213 a method_47213 + m (Ljava/util/Optional;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/npc/Villager;)Z method_47214 a method_47214 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)Z nearbyWantsJobsite a method_29260 + p 0 poi + p 1 villager + p 2 pos + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder byu net/minecraft/class_7898 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; trigger a field_40998 + m ()Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance; instance a method_47215 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; create a method_47216 + p 0 trigger + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)Lnet/minecraft/world/entity/ai/behavior/OneShot; sequence a method_47217 + p 0 predicateTrigger + p 1 trigger + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47218 a method_47218 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lcom/mojang/datafixers/util/Unit;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47219 a method_47219 + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; unbox a method_47220 + p 0 app + m (Ljava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47221 + p 0 predicate + m (Ljava/util/function/BiPredicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47222 a method_47222 + m (Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47223 a method_47223 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47224 + p 0 initializer + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47225 + p 0 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47226 a method_47226 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/OneShot;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47227 + p 0 predicate + p 1 trigger + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47228 a method_47228 + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; get b method_47229 + p 0 app + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V + p 1 trigger +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$1 byu$1 net/minecraft/class_7898$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$resolvedBuilder a field_40999 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Constant byu$a net/minecraft/class_7898$class_7899 + m (Ljava/lang/Object;)Ljava/lang/String; method_47230 a method_47230 + m (Ljava/lang/Object;)V + p 1 value + m (Ljava/lang/Object;Ljava/util/function/Supplier;)V + p 1 value + p 2 name +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Constant$1 byu$a$1 net/minecraft/class_7898$class_7899$1 + f Ljava/lang/Object; val$a a field_41000 + f Ljava/util/function/Supplier; val$debugString b field_41001 + m (Ljava/lang/Object;Ljava/util/function/Supplier;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance byu$b net/minecraft/class_7898$class_7900 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; tryGet a method_47233 + p 1 memory + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ifTriggered a method_47234 + p 1 trigger + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; registered a method_47235 + p 1 memoryType + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; method_47236 a method_47236 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap2 a method_47237 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap3 a method_47238 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + p 4 behavior3 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap4 a method_47239 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + p 4 behavior3 + p 5 behavior4 + m (Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; point a method_47240 + p 1 value + m (Ljava/util/function/Function;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; map a method_47241 + p 1 mapper + p 2 behavior + m (Ljava/util/function/Supplier;Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; point a method_47242 + p 1 name + p 2 value + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/lang/Object; get b method_47243 + p 1 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; present b method_47244 + p 1 memoryType + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; absent c method_47245 + p 1 memoryType + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$1 byu$b$1 net/minecraft/class_7898$class_7900$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$aTrigger a field_41002 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger b field_41003 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$2 byu$b$2 net/minecraft/class_7898$class_7900$2 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$tTrigger a field_41005 + f Ljava/util/function/Function; val$func b field_41006 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Ljava/util/function/Function;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$3 byu$b$3 net/minecraft/class_7898$class_7900$3 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$aTrigger a field_41008 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$bTrigger b field_41009 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger c field_41010 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$4 byu$b$4 net/minecraft/class_7898$class_7900$4 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t1Trigger a field_41012 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t2Trigger b field_41013 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t3Trigger c field_41014 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger d field_41015 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$5 byu$b$5 net/minecraft/class_7898$class_7900$5 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t1Trigger a field_41017 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t2Trigger b field_41018 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t3Trigger c field_41019 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t4Trigger d field_41020 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger e field_41021 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$Mu byu$b$a net/minecraft/class_7898$class_7900$class_7901 + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Mu byu$c net/minecraft/class_7898$class_7902 + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$PureMemory byu$d net/minecraft/class_7898$class_7903 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition;)V + p 1 memoryCondition +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$PureMemory$1 byu$d$1 net/minecraft/class_7898$class_7903$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition; val$condition a field_41023 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor; tryTrigger b method_47246 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult byu$e net/minecraft/class_7898$class_7904 + m ()Ljava/lang/String; debugString a method_47231 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Ljava/lang/Object; tryTrigger a method_47232 + p 1 level + p 2 entity + p 3 gameTime +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWrapper byu$f net/minecraft/class_7898$class_7905 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)V + p 1 trigger +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWrapper$1 byu$f$1 net/minecraft/class_7898$class_7905$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; val$dependentTrigger a field_41024 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Lcom/mojang/datafixers/util/Unit; tryTrigger b method_47247 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor byv net/minecraft/class_7906 + f Lnet/minecraft/world/entity/ai/Brain; brain a field_41025 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memoryType b field_41026 + f Lcom/mojang/datafixers/kinds/App; value c field_41027 + m ()Lcom/mojang/datafixers/kinds/App; value a method_47248 + m (Ljava/lang/Object;)V set a method_47249 + p 1 value + m (Ljava/lang/Object;J)V setWithExpiry a method_47250 + p 1 memory + p 2 expiry + m (Ljava/util/Optional;)V setOrErase a method_47251 + p 1 memory + m ()V erase b method_47252 + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/datafixers/kinds/App;)V + p 1 brain + p 2 memoryType + p 3 value +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition byw net/minecraft/class_7907 + m ()Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/Brain;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor; createAccessor a method_47253 + p 1 brain + p 2 memory + m ()Lnet/minecraft/world/entity/ai/memory/MemoryStatus; condition b method_47254 +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Absent byw$a net/minecraft/class_7907$class_7908 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Present byw$b net/minecraft/class_7907$class_7909 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Registered byw$c net/minecraft/class_7907$class_7910 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/Trigger byx net/minecraft/class_7911 +c net/minecraft/world/entity/ai/behavior/declarative/package-info byy net/minecraft/class_7912 +c net/minecraft/world/entity/ai/behavior/package-info byz net/minecraft/class_6034 +c net/minecraft/world/entity/ai/behavior/warden/Digging bza net/minecraft/class_7249 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)Z checkExtraStartConditions a method_42151 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42152 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42153 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42154 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/Emerging bzb net/minecraft/class_7250 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42155 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42156 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42157 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/ForceUnmount bzc net/minecraft/class_7521 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/Roar bzd net/minecraft/class_7255 + f I TICKS_BEFORE_PLAYING_ROAR_SOUND c field_38131 + f I ROAR_ANGER_INCREASE d field_39276 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start a method_42189 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse b method_42190 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V tick c method_42191 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop d method_42192 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/SetRoarTarget bze net/minecraft/class_7256 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47255 + p 0 targetFinder + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47256 a method_47256 + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z method_47257 a method_47257 + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47258 a method_47258 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/SetWardenLookTarget bzf net/minecraft/class_7257 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47259 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47260 a method_47260 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; method_47261 a method_47261 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47262 a method_47262 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47263 a method_47263 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/Sniffing bzg net/minecraft/class_7251 + f D ANGER_FROM_SNIFFING_MAX_DISTANCE_XZ c field_38708 + f D ANGER_FROM_SNIFFING_MAX_DISTANCE_Y d field_38848 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42158 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_42159 a method_42159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42160 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42161 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/SonicBoom bzh net/minecraft/class_7396 + f I COOLDOWN c field_38849 + f I DISTANCE_XZ d field_38850 + f I DISTANCE_Y e field_38851 + f D KNOCKBACK_VERTICAL f field_38852 + f D KNOCKBACK_HORIZONTAL g field_38853 + f I TICKS_BEFORE_PLAYING_SOUND h field_38854 + f I DURATION i field_38855 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)Z checkExtraStartConditions a method_43262 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_43263 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;I)V setCooldown a method_43264 + p 0 entity + p 1 cooldown + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V method_43265 a method_43265 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_43266 a method_43266 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_43267 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_43973 b method_43973 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V tick c method_43268 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop d method_43269 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/warden/TryToSniff bzi net/minecraft/class_7259 + f Lnet/minecraft/util/valueproviders/IntProvider; SNIFF_COOLDOWN a field_38133 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47264 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47265 a method_47265 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47266 a method_47266 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47267 a method_47267 + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/warden/package-info bzj net/minecraft/class_7374 +c net/minecraft/world/entity/ai/control/BodyRotationControl bzk net/minecraft/class_1330 + f Lnet/minecraft/world/entity/Mob; mob a field_6356 + f I HEAD_STABLE_ANGLE b field_30194 + f I DELAY_UNTIL_STARTING_TO_FACE_FORWARD c field_30195 + f I HOW_LONG_IT_TAKES_TO_FACE_FORWARD d field_30196 + f I headStableTime e field_6355 + f F lastStableYHeadRot f field_6354 + m ()V clientTick a method_6224 + c Update the Head and Body rendering angles + m ()V rotateBodyIfNecessary b method_20243 + m ()V rotateHeadIfNecessary c method_20244 + m ()V rotateHeadTowardsFront d method_20245 + m ()Z notCarryingMobPassengers e method_20246 + m ()Z isMoving f method_20247 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/Control bzl net/minecraft/class_6035 +c net/minecraft/world/entity/ai/control/FlyingMoveControl bzm net/minecraft/class_1331 + f I maxTurn l field_20349 + f Z hoversInPlace m field_20350 + m (Lnet/minecraft/world/entity/Mob;IZ)V + p 1 mob + p 2 maxTurn + p 3 hoversInPlace +c net/minecraft/world/entity/ai/control/JumpControl bzn net/minecraft/class_1334 + f Z jump a field_6365 + f Lnet/minecraft/world/entity/Mob; mob b field_6366 + m ()V jump a method_6233 + m ()V tick b method_6234 + c Called to actually make the entity jump if isJumping is true. + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/LookControl bzo net/minecraft/class_1333 + f Lnet/minecraft/world/entity/Mob; mob a field_6361 + f F yMaxRotSpeed b field_6359 + f F xMaxRotAngle c field_6358 + f I lookAtCooldown d field_35103 + f D wantedX e field_6364 + f D wantedY f field_6363 + f D wantedZ g field_6362 + m ()V tick a method_6231 + c Updates look + m (DDD)V setLookAt a method_20248 + p 1 x + p 3 y + p 5 z + m (DDDFF)V setLookAt a method_6230 + c Sets position to look at + p 1 x + p 3 y + p 5 z + p 7 deltaYaw + p 8 deltaPitch + m (FFF)F rotateTowards a method_6229 + c Rotate as much as possible from {@code from} to {@code to} within the bounds of {@code maxDelta} + p 1 from + p 2 to + p 3 maxDelta + m (Lnet/minecraft/world/entity/Entity;)V setLookAt a method_35111 + c Sets the controlling mob's look vector to the provided entity's location + p 1 entity + m (Lnet/minecraft/world/entity/Entity;FF)V setLookAt a method_6226 + c Sets position to look at using entity + p 1 entity + p 2 deltaYaw + p 3 deltaPitch + m (Lnet/minecraft/world/phys/Vec3;)V setLookAt a method_19615 + c Sets the mob's look vector + p 1 lookVector + m (Ljava/lang/Float;)V method_37355 a method_37355 + m ()V clampHeadRotationToBody b method_36980 + m (Lnet/minecraft/world/entity/Entity;)D getWantedY b method_20249 + p 0 entity + m (Ljava/lang/Float;)V method_37356 b method_37356 + m ()Z resetXRotOnTick c method_20433 + m ()Z isLookingAtTarget d method_38970 + m ()D getWantedX e method_6225 + m ()D getWantedY f method_6227 + m ()D getWantedZ g method_6228 + m ()Ljava/util/Optional; getXRotD h method_20250 + m ()Ljava/util/Optional; getYRotD i method_20251 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/MoveControl bzp net/minecraft/class_1335 + f F MIN_SPEED a field_30197 + f F MIN_SPEED_SQR b field_30198 + f I MAX_TURN c field_30199 + f Lnet/minecraft/world/entity/Mob; mob d field_6371 + f D wantedX e field_6370 + f D wantedY f field_6369 + f D wantedZ g field_6367 + f D speedModifier h field_6372 + f F strafeForwards i field_6368 + f F strafeRight j field_6373 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; operation k field_6374 + m ()V tick a method_6240 + m (DDDD)V setWantedPosition a method_6239 + c Sets the speed and location to move to + p 1 x + p 3 y + p 5 z + p 7 speed + m (FF)V strafe a method_6243 + p 1 forward + p 2 strafe + m (FFF)F rotlerp a method_6238 + c Attempt to rotate the first angle to become the second angle, but only allow overall direction change to at max be third parameter + p 1 sourceAngle + p 2 targetAngle + p 3 maximumChange + m ()Z hasWanted b method_6241 + c @return If the mob is currently trying to go somewhere + m (FF)Z isWalkable b method_25946 + c @return true if the mob can walk successfully to a given X and Z + p 1 relativeX + p 2 relativeZ + m ()D getSpeedModifier c method_6242 + m ()D getWantedX d method_6236 + m ()D getWantedY e method_6235 + m ()D getWantedZ f method_6237 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/MoveControl$Operation bzp$a net/minecraft/class_1335$class_1336 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; WAIT a field_6377 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; MOVE_TO b field_6378 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; STRAFE c field_6376 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; JUMPING d field_6379 + f [Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; $VALUES e field_6375 + m ()[Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; $values a method_36619 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/control/SmoothSwimmingLookControl bzq net/minecraft/class_1332 + f I maxYRotFromCenter h field_6357 + f I HEAD_TILT_X i field_30200 + f I HEAD_TILT_Y j field_30201 + m (Ljava/lang/Float;)V method_37357 a method_37357 + m (Ljava/lang/Float;)V method_37358 b method_37358 + m (Lnet/minecraft/world/entity/Mob;I)V + p 1 mob + p 2 maxYRotFromCenter +c net/minecraft/world/entity/ai/control/SmoothSwimmingMoveControl bzr net/minecraft/class_5757 + f F FULL_SPEED_TURN_THRESHOLD l field_40123 + f F STOP_TURN_THRESHOLD m field_40124 + f I maxTurnX n field_28319 + f I maxTurnY o field_28320 + f F inWaterSpeedModifier p field_28321 + f F outsideWaterSpeedModifier q field_28322 + f Z applyGravity r field_28323 + m (F)F getTurningSpeedFactor a method_45335 + p 0 degreesToTurn + m (Lnet/minecraft/world/entity/Mob;IIFFZ)V + p 1 mob + p 2 maxTurnX + p 3 maxTurnY + p 4 inWaterSpeedModifier + p 5 outsideWaterSpeedModifier + p 6 applyGravity +c net/minecraft/world/entity/ai/control/package-info bzs net/minecraft/class_6036 +c net/minecraft/world/entity/ai/goal/AvoidEntityGoal bzt net/minecraft/class_1338 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6391 + f Lnet/minecraft/world/entity/LivingEntity; toAvoid b field_6390 + f F maxDist c field_6386 + f Lnet/minecraft/world/level/pathfinder/Path; path d field_6387 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; pathNav e field_6394 + f Ljava/lang/Class; avoidClass f field_6392 + c Class of entity this behavior seeks to avoid + f Ljava/util/function/Predicate; avoidPredicate g field_6393 + f Ljava/util/function/Predicate; predicateOnAvoidEntity h field_6388 + f D walkSpeedModifier i field_6385 + f D sprintSpeedModifier j field_6395 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; avoidEntityTargeting k field_18084 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31501 a method_31501 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6245 b method_6245 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6246 c method_6246 + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;FDD)V + p 1 mob + p 2 entityClassToAvoid + p 3 maxDistance + p 4 walkSpeedModifier + p 6 sprintSpeedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;Ljava/util/function/Predicate;FDDLjava/util/function/Predicate;)V + c Goal that helps mobs avoid mobs of a specific class + p 1 mob + p 2 entityClassToAvoid + p 3 avoidPredicate + p 4 maxDistance + p 5 walkSpeedModifier + p 7 sprintSpeedModifier + p 9 predicateOnAvoidEntity + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;FDDLjava/util/function/Predicate;)V + p 1 mob + p 2 entityClassToAvoid + p 3 maxDistance + p 4 walkSpeedModifier + p 6 sprintSpeedModifier + p 8 predicateOnAvoidEntity +c net/minecraft/world/entity/ai/goal/BegGoal bzu net/minecraft/class_1337 + f Lnet/minecraft/world/entity/animal/Wolf; wolf a field_6384 + f Lnet/minecraft/world/entity/player/Player; player b field_6383 + f Lnet/minecraft/world/level/Level; level c field_6381 + f F lookDistance d field_6380 + f I lookTime e field_6382 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; begTargeting f field_18085 + m (Lnet/minecraft/world/entity/player/Player;)Z playerHoldingInteresting a method_6244 + c Gets if the Player has the Bone in the hand. + p 1 player + m (Lnet/minecraft/world/entity/animal/Wolf;F)V + p 1 wolf + p 2 lookDistance +c net/minecraft/world/entity/ai/goal/BoatGoals bzv net/minecraft/class_1340 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; GO_TO_BOAT a field_6401 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; GO_IN_BOAT_DIRECTION b field_6400 + f [Lnet/minecraft/world/entity/ai/goal/BoatGoals; $VALUES c field_6399 + m ()[Lnet/minecraft/world/entity/ai/goal/BoatGoals; $values a method_36620 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/BreakDoorGoal bzw net/minecraft/class_1339 + f I breakTime a field_6398 + f I lastBreakProgress b field_6397 + f I doorBreakTime c field_16596 + f I DEFAULT_DOOR_BREAK_TIME g field_30202 + f Ljava/util/function/Predicate; validDifficulties h field_19003 + m (Lnet/minecraft/world/Difficulty;)Z isValidDifficulty a method_19994 + p 1 difficulty + m ()I getDoorBreakTime f method_16462 + m (Lnet/minecraft/world/entity/Mob;Ljava/util/function/Predicate;)V + p 1 mob + p 2 validDifficulties + m (Lnet/minecraft/world/entity/Mob;ILjava/util/function/Predicate;)V + p 1 mob + p 2 doorBreakTime + p 3 validDifficulties +c net/minecraft/world/entity/ai/goal/BreathAirGoal bzx net/minecraft/class_1342 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6408 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z givesAir a method_6253 + p 1 level + p 2 pos + m ()V findAirPosition h method_6252 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/BreedGoal bzy net/minecraft/class_1341 + f Lnet/minecraft/world/entity/animal/Animal; animal a field_6404 + f Lnet/minecraft/world/level/Level; level b field_6405 + f Lnet/minecraft/world/entity/animal/Animal; partner c field_6406 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; PARTNER_TARGETING d field_18086 + f Ljava/lang/Class; partnerClass e field_6403 + f I loveTime f field_6402 + f D speedModifier g field_6407 + m ()V breed g method_6249 + c Spawns a baby animal of the same type. + m ()Lnet/minecraft/world/entity/animal/Animal; getFreePartner h method_6250 + c Loops through nearby animals and finds another animal of the same type that can be mated with. Returns the first valid mate found. + m (Lnet/minecraft/world/entity/animal/Animal;D)V + p 1 animal + p 2 speedModifier + m (Lnet/minecraft/world/entity/animal/Animal;DLjava/lang/Class;)V + p 1 animal + p 2 speedModifier + p 4 partnerClass + m ()V +c net/minecraft/world/entity/ai/goal/CatLieOnBedGoal bzz net/minecraft/class_3697 + f Lnet/minecraft/world/entity/animal/Cat; cat g field_16282 + m (Lnet/minecraft/world/entity/animal/Cat;DI)V + p 1 cat + p 2 speedModifier + p 4 searchRange +c net/minecraft/world/entity/ai/goal/CatSitOnBlockGoal caa net/minecraft/class_1373 + f Lnet/minecraft/world/entity/animal/Cat; cat g field_6545 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_27793 a method_27793 + m (Lnet/minecraft/world/level/block/state/properties/BedPart;)Ljava/lang/Boolean; method_27794 a method_27794 + m (Lnet/minecraft/world/entity/animal/Cat;D)V + p 1 cat + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/ClimbOnTopOfPowderSnowGoal cab net/minecraft/class_6868 + f Lnet/minecraft/world/entity/Mob; mob a field_36399 + f Lnet/minecraft/world/level/Level; level b field_36400 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/goal/DolphinJumpGoal cac net/minecraft/class_1357 + f [I STEPS_TO_CHECK a field_6474 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin b field_6471 + f I interval c field_6472 + f Z breached d field_6473 + m (Lnet/minecraft/core/BlockPos;III)Z waterIsClear a method_6284 + p 1 pos + p 2 dx + p 3 dz + p 4 scale + m (Lnet/minecraft/core/BlockPos;III)Z surfaceIsClear b method_6282 + p 1 pos + p 2 dx + p 3 dz + p 4 scale + m (Lnet/minecraft/world/entity/animal/Dolphin;I)V + p 1 dolphin + p 2 interval + m ()V +c net/minecraft/world/entity/ai/goal/DoorInteractGoal cad net/minecraft/class_1343 + f Z passed a field_6411 + f F doorOpenDirX b field_6410 + f F doorOpenDirZ c field_6409 + f Lnet/minecraft/world/entity/Mob; mob d field_6413 + f Lnet/minecraft/core/BlockPos; doorPos e field_6414 + f Z hasDoor f field_6412 + m (Z)V setOpen a method_19995 + p 1 open + m ()Z isOpen h method_6256 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/EatBlockGoal cae net/minecraft/class_1345 + f I EAT_ANIMATION_TICKS a field_30203 + f Ljava/util/function/Predicate; IS_TALL_GRASS b field_6423 + f Lnet/minecraft/world/entity/Mob; mob c field_6424 + c The entity owner of this AITask + f Lnet/minecraft/world/level/Level; level d field_6421 + c The world the grass eater entity is eating from + f I eatAnimationTick e field_6422 + c Number of ticks since the entity started to eat grass + m ()I getEatAnimationTick h method_6258 + c Number of ticks since the entity started to eat grass + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob + m ()V +c net/minecraft/world/entity/ai/goal/FleeSunGoal caf net/minecraft/class_1344 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6419 + f D wantedX b field_6417 + f D wantedY c field_6416 + f D wantedZ d field_6415 + f D speedModifier e field_6420 + f Lnet/minecraft/world/level/Level; level f field_6418 + m ()Z setWantedPos h method_18250 + m ()Lnet/minecraft/world/phys/Vec3; getHidePos i method_6257 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/FloatGoal cag net/minecraft/class_1347 + f Lnet/minecraft/world/entity/Mob; mob a field_6429 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/FollowBoatGoal cah net/minecraft/class_1346 + f I timeToRecalcPath a field_6428 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_6426 + f Lnet/minecraft/world/entity/player/Player; following c field_6427 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; currentGoal d field_6425 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/FollowFlockLeaderGoal cai net/minecraft/class_1349 + f I INTERVAL_TICKS a field_30204 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; mob b field_6441 + f I timeToRecalcPath c field_6440 + f I nextStartTick d field_6439 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)I nextStartTick a method_6261 + p 1 taskOwner + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6260 b method_6260 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6262 c method_6262 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V + p 1 fish +c net/minecraft/world/entity/ai/goal/FollowMobGoal caj net/minecraft/class_1348 + c A goal allowing a mob to follow others. The mob must have Ground or Flying navigation. + f Lnet/minecraft/world/entity/Mob; mob a field_6432 + f Ljava/util/function/Predicate; followPredicate b field_6436 + f Lnet/minecraft/world/entity/Mob; followingMob c field_6433 + f D speedModifier d field_6430 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation e field_6434 + f I timeToRecalcPath f field_6431 + f F stopDistance g field_6438 + f F oldWaterCost h field_6437 + f F areaSize i field_6435 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/Mob;)Z method_6259 a method_6259 + m (Lnet/minecraft/world/entity/Mob;DFF)V + c Constructs a goal allowing a mob to follow others. The mob must have Ground or Flying navigation. + p 1 mob + p 2 speedModifier + p 4 stopDistance + p 5 areaSize +c net/minecraft/world/entity/ai/goal/FollowOwnerGoal cak net/minecraft/class_1350 + f Lnet/minecraft/world/entity/TamableAnimal; tamable a field_6448 + f Lnet/minecraft/world/entity/LivingEntity; owner b field_6444 + f D speedModifier c field_6442 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation d field_6446 + f I timeToRecalcPath e field_6443 + f F stopDistance f field_6450 + f F startDistance g field_6449 + f F oldWaterCost h field_6447 + m (Lnet/minecraft/world/entity/TamableAnimal;DFF)V + p 1 tamable + p 2 speedModifier + p 4 startDistance + p 5 stopDistance +c net/minecraft/world/entity/ai/goal/FollowParentGoal cal net/minecraft/class_1353 + f I HORIZONTAL_SCAN_RANGE a field_30209 + f I VERTICAL_SCAN_RANGE b field_30210 + f I DONT_FOLLOW_IF_CLOSER_THAN c field_30211 + f Lnet/minecraft/world/entity/animal/Animal; animal d field_6455 + f Lnet/minecraft/world/entity/animal/Animal; parent e field_6452 + f D speedModifier f field_6453 + f I timeToRecalcPath g field_6454 + m (Lnet/minecraft/world/entity/animal/Animal;D)V + p 1 animal + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/Goal cam net/minecraft/class_1352 + f Ljava/util/EnumSet; flags a field_6451 + m ()Z isInterruptable U_ method_6267 + m ()Z requiresUpdateEveryTick V_ method_38846 + m ()V tick a method_6268 + c Called every tick to update a goal that is in progress. + m (I)I adjustedTickDelay a method_38847 + p 1 adjustment + m (Ljava/util/EnumSet;)V setFlags a method_6265 + p 1 flagSet + m ()Z canUse b method_6264 + c Returns whether execution should begin. You can also read and cache any state necessary for execution in this method as well. + m (I)I reducedTickDelay b method_38848 + p 0 reduction + m ()Z canContinueToUse c method_6266 + c @return whether the goal should continue executing + m ()V start d method_6269 + c Called when the goal is about to start executing + m ()V stop e method_6270 + c Called when the goal stops executing, usually to reset the mob's state. + m ()Ljava/util/EnumSet; getFlags j method_6271 + m ()V +c net/minecraft/world/entity/ai/goal/Goal$Flag cam$a net/minecraft/class_1352$class_4134 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; MOVE a field_18405 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; LOOK b field_18406 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; JUMP c field_18407 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; TARGET d field_18408 + f [Lnet/minecraft/world/entity/ai/goal/Goal$Flag; $VALUES e field_18409 + m ()[Lnet/minecraft/world/entity/ai/goal/Goal$Flag; $values a method_36621 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector can net/minecraft/class_1355 + f Lnet/minecraft/world/entity/ai/goal/WrappedGoal; NO_GOAL a field_18410 + f Ljava/util/Map; lockedFlags b field_18411 + c Goals currently using a particular flag + f Ljava/util/Set; availableGoals c field_6461 + f Ljava/util/function/Supplier; profiler d field_6463 + f Ljava/util/EnumSet; disabledFlags e field_6462 + m ()V tick a method_6275 + c Ticks every goal in the selector.\nAttempts to start each goal based on if it can be used, or stop it if it can't. + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V addGoal a method_6277 + c Add a goal to the GoalSelector with a certain priority. Lower numbers are higher priority. + p 1 priority + p 2 goal + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;)V disableControlFlag a method_6274 + p 1 flag + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;Z)V setControlFlag a method_6276 + p 1 flag + p 2 enabled + m (Lnet/minecraft/world/entity/ai/goal/Goal;)V removeGoal a method_6280 + c Remove the goal from the GoalSelector. This must be the same object as the goal you are trying to remove, which may not always be accessible. + p 1 goal + m (Lnet/minecraft/world/entity/ai/goal/Goal;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z method_20650 a method_20650 + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;Ljava/util/EnumSet;)Z goalContainsAnyFlags a method_38063 + p 0 goal + p 1 flag + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;Ljava/util/Map;)Z goalCanBeReplacedForAllFlags a method_38064 + p 0 goal + p 1 flag + m (Ljava/util/Map$Entry;)Z method_55701 a method_55701 + m (Ljava/util/function/Predicate;)V removeAllGoals a method_35113 + p 1 filter + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z method_47828 a method_47828 + m (Z)V tickRunningGoals a method_38849 + p 1 tickAllRunning + m ()Ljava/util/Set; getAvailableGoals b method_35115 + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;)V enableControlFlag b method_6273 + p 1 flag + m (Ljava/util/function/Supplier;)V + p 1 profiler + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector$1 can$1 net/minecraft/class_1355$1 + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector$2 can$2 net/minecraft/class_1355$2 + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V +c net/minecraft/world/entity/ai/goal/GolemRandomStrollInVillageGoal cao net/minecraft/class_5274 + f I POI_SECTION_SCAN_RADIUS i field_30213 + f I VILLAGER_SCAN_RADIUS j field_30214 + f I RANDOM_POS_XY_DISTANCE k field_30215 + f I RANDOM_POS_Y_DISTANCE l field_30216 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;)Z method_27924 a method_27924 + m (Lnet/minecraft/world/entity/npc/Villager;)Z doesVillagerWantGolem a method_27922 + p 1 villager + m (Lnet/minecraft/core/Holder;)Z method_27921 a method_27921 + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/core/BlockPos; getRandomPoiWithinSection a method_27923 + p 1 sectionPos + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsAnywhere k method_27925 + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsVillagerWhoWantsGolem l method_27926 + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsPoi m method_27927 + m ()Lnet/minecraft/core/SectionPos; getRandomVillageSection n method_27928 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/InteractGoal cap net/minecraft/class_1358 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FF)V +c net/minecraft/world/entity/ai/goal/JumpGoal caq net/minecraft/class_4017 + m ()V +c net/minecraft/world/entity/ai/goal/LandOnOwnersShoulderGoal car net/minecraft/class_1360 + f Lnet/minecraft/world/entity/animal/ShoulderRidingEntity; entity a field_6478 + f Lnet/minecraft/server/level/ServerPlayer; owner b field_6479 + f Z isSittingOnShoulder c field_6480 + m (Lnet/minecraft/world/entity/animal/ShoulderRidingEntity;)V + p 1 entity +c net/minecraft/world/entity/ai/goal/LeapAtTargetGoal cas net/minecraft/class_1359 + f Lnet/minecraft/world/entity/Mob; mob a field_6476 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6477 + f F yd c field_6475 + m (Lnet/minecraft/world/entity/Mob;F)V + p 1 mob + p 2 yd +c net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal cat net/minecraft/class_1362 + f Lnet/minecraft/world/entity/animal/horse/Llama; llama a field_6488 + f D speedModifier b field_6487 + f I CARAVAN_LIMIT c field_30217 + f I distCheckCounter d field_6489 + m (Lnet/minecraft/world/entity/Entity;)Z method_19616 a method_19616 + m (Lnet/minecraft/world/entity/animal/horse/Llama;I)Z firstIsLeashed a method_6285 + p 1 llama + p 2 leashedQueuePosition + m (Lnet/minecraft/world/entity/animal/horse/Llama;D)V + p 1 llama + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/LookAtPlayerGoal cau net/minecraft/class_1361 + f F DEFAULT_PROBABILITY a field_33760 + f Lnet/minecraft/world/entity/Mob; mob b field_6486 + f Lnet/minecraft/world/entity/Entity; lookAt c field_6484 + f F lookDistance d field_6482 + f F probability e field_6481 + f Ljava/lang/Class; lookAtType f field_6485 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; lookAtContext g field_18087 + f I lookTime h field_6483 + f Z onlyHorizontal i field_33761 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31502 a method_31502 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)Z method_18414 a method_18414 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FF)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + p 4 probability + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FFZ)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + p 4 probability + p 5 onlyHorizontal +c net/minecraft/world/entity/ai/goal/LookAtTradingPlayerGoal cav net/minecraft/class_1364 + f Lnet/minecraft/world/entity/npc/AbstractVillager; villager h field_6495 + m (Lnet/minecraft/world/entity/npc/AbstractVillager;)V + p 1 villager +c net/minecraft/world/entity/ai/goal/MeleeAttackGoal caw net/minecraft/class_1366 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6503 + f D speedModifier b field_6500 + f Z followingTargetEvenIfNotSeen c field_6502 + f Lnet/minecraft/world/level/pathfinder/Path; path d field_6509 + f D pathedTargetX e field_6508 + f D pathedTargetY f field_6507 + f D pathedTargetZ g field_6506 + f I ticksUntilNextPathRecalculation h field_6501 + f I ticksUntilNextAttack i field_24667 + f I attackInterval j field_6504 + f J lastCanUseCheck k field_19200 + f J COOLDOWN_BETWEEN_CAN_USE_CHECKS l field_30218 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkAndPerformAttack a method_6288 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z canPerformAttack b method_53715 + p 1 entity + m ()V resetAttackCooldown h method_28346 + m ()Z isTimeToAttack i method_28347 + m ()I getTicksUntilNextAttack k method_28348 + m ()I getAttackInterval l method_28349 + m (Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 1 mob + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/ai/goal/MoveBackToVillageGoal cax net/minecraft/class_4291 + f I MAX_XZ_DIST i field_30219 + f I MAX_Y_DIST j field_30220 + m (Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 1 mob + p 2 speedModifier + p 4 checkNoActionTime +c net/minecraft/world/entity/ai/goal/MoveThroughVillageGoal cay net/minecraft/class_1368 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6525 + f D speedModifier b field_6520 + f Lnet/minecraft/world/level/pathfinder/Path; path c field_6523 + f Lnet/minecraft/core/BlockPos; poiPos d field_18412 + f Z onlyAtNight e field_6524 + f Ljava/util/List; visited f field_18413 + f I distanceToPoi g field_18414 + f Ljava/util/function/BooleanSupplier; canDealWithDoors h field_18415 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_19053 a method_19053 + m (Lnet/minecraft/core/BlockPos;)Z hasNotVisited a method_19052 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/lang/Double; method_43974 a method_43974 + m (Lnet/minecraft/core/Holder;)Z method_43975 a method_43975 + m (Lnet/minecraft/core/Holder;)Z method_43976 b method_43976 + m ()V updateVisited h method_6297 + m (Lnet/minecraft/world/entity/PathfinderMob;DZILjava/util/function/BooleanSupplier;)V + p 1 mob + p 2 speedModifier + p 4 onlyAtNight + p 5 distanceToPoi + p 6 canDealWithDoors +c net/minecraft/world/entity/ai/goal/MoveToBlockGoal caz net/minecraft/class_1367 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6516 + f D speedModifier b field_6514 + f I nextStartTick c field_6518 + c Controls task execution delay + f I tryTicks d field_6517 + f Lnet/minecraft/core/BlockPos; blockPos e field_6512 + c Block to move to + f I verticalSearchStart f field_6515 + f I GIVE_UP_TICKS g field_30221 + f I STAY_TICKS h field_30222 + f I INTERVAL_TICKS i field_30223 + f I maxStayTicks j field_6511 + f Z reachedTarget k field_6513 + f I searchRange l field_6510 + f I verticalSearchRange m field_6519 + m (Lnet/minecraft/world/entity/PathfinderMob;)I nextStartTick a method_6293 + p 1 creature + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isValidTarget a method_6296 + c Return {@code true} to set given position as destination + p 1 level + p 2 pos + m ()V moveMobToBlock h method_6290 + m ()D acceptedDistance i method_6291 + m ()Lnet/minecraft/core/BlockPos; getMoveToTarget k method_30953 + m ()Z shouldRecalculatePath l method_6294 + m ()Z isReachedTarget m method_6295 + m ()Z findNearestBlock n method_6292 + c Searches and sets new destination block and returns true if a suitable block (specified in {@link #isValidTarget(net.minecraft.world.level.LevelReader, net.minecraft.core.BlockPos)}) can be found. + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 mob + p 2 speedModifier + p 4 searchRange + m (Lnet/minecraft/world/entity/PathfinderMob;DII)V + p 1 mob + p 2 speedModifier + p 4 searchRange + p 5 verticalSearchRange +c net/minecraft/world/entity/ai/goal/MoveTowardsRestrictionGoal cba net/minecraft/class_1370 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6536 + f D wantedX b field_6535 + f D wantedY c field_6534 + f D wantedZ d field_6533 + f D speedModifier e field_6537 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/MoveTowardsTargetGoal cbb net/minecraft/class_1369 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6528 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6529 + f D wantedX c field_6527 + f D wantedY d field_6526 + f D wantedZ e field_6531 + f D speedModifier f field_6530 + f F within g field_6532 + m (Lnet/minecraft/world/entity/PathfinderMob;DF)V + p 1 mob + p 2 speedModifier + p 4 within +c net/minecraft/world/entity/ai/goal/OcelotAttackGoal cbc net/minecraft/class_1371 + f Lnet/minecraft/world/entity/Mob; mob a field_6541 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6539 + f I attackTime c field_6540 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/OfferFlowerGoal cbd net/minecraft/class_1372 + f I OFFER_TICKS a field_30224 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; OFFER_TARGER_CONTEXT b field_18089 + f Lnet/minecraft/world/entity/animal/IronGolem; golem c field_6542 + f Lnet/minecraft/world/entity/npc/Villager; villager d field_6544 + f I tick e field_6543 + m (Lnet/minecraft/world/entity/animal/IronGolem;)V + p 1 golem + m ()V +c net/minecraft/world/entity/ai/goal/OpenDoorGoal cbe net/minecraft/class_4255 + f Z closeDoor a field_19004 + f I forgetTime b field_19005 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 closeDoor +c net/minecraft/world/entity/ai/goal/PanicGoal cbf net/minecraft/class_1374 + f Ljava/util/function/Function; panicCausingDamageTypes a field_52011 + f I WATER_CHECK_DISTANCE_VERTICAL b field_36271 + f Lnet/minecraft/world/entity/PathfinderMob; mob c field_6549 + f D speedModifier d field_6548 + f D posX e field_6547 + f D posY f field_6546 + f D posZ g field_6550 + f Z isRunning h field_23227 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60722 a method_60722 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/core/BlockPos; lookForWater a method_6300 + p 1 level + p 2 entity + p 3 range + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39764 a method_39764 + m ()Z shouldPanic h method_40072 + m ()Z findRandomPosition i method_6301 + m ()Z isRunning k method_26337 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DLnet/minecraft/tags/TagKey;)V + p 1 mob + p 2 speedModifier + p 4 panicCausingDamageTypes + m (Lnet/minecraft/world/entity/PathfinderMob;DLjava/util/function/Function;)V + p 1 mob + p 2 speedModifier + p 4 panicCausingDamageTypes +c net/minecraft/world/entity/ai/goal/PathfindToRaidGoal cbg net/minecraft/class_3759 + f I RECRUITMENT_SEARCH_TICK_DELAY a field_36302 + f F SPEED_MODIFIER b field_30225 + f Lnet/minecraft/world/entity/raid/Raider; mob c field_16597 + f I recruitmentTick d field_36303 + m (Lnet/minecraft/world/entity/raid/Raid;)V recruitNearby a method_16465 + p 1 raid + m (Lnet/minecraft/world/entity/raid/Raid;Lnet/minecraft/world/entity/raid/Raider;)Z method_16466 a method_16466 + m (Lnet/minecraft/world/entity/raid/Raider;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RandomLookAroundGoal cbh net/minecraft/class_1376 + f Lnet/minecraft/world/entity/Mob; mob a field_6556 + f D relX b field_6554 + f D relZ c field_6553 + f I lookTime d field_6555 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RandomStandGoal cbi net/minecraft/class_7688 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse a field_40125 + f I nextStand b field_40126 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V resetStandInterval a method_45336 + p 1 horse + m ()V playStandSound h method_45337 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V + p 1 horse +c net/minecraft/world/entity/ai/goal/RandomStrollGoal cbj net/minecraft/class_1379 + f I DEFAULT_INTERVAL a field_30226 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_6566 + f D wantedX c field_6563 + f D wantedY d field_6562 + f D wantedZ e field_6561 + f D speedModifier f field_6567 + f I interval g field_6564 + f Z forceTrigger h field_6565 + f Z checkNoActionTime i field_24463 + m (I)V setInterval c method_6303 + c Changes task random possibility for execution + p 1 newchance + m ()Lnet/minecraft/world/phys/Vec3; getPosition h method_6302 + m ()V trigger i method_6304 + c Makes task to bypass chance + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 mob + p 2 speedModifier + p 4 interval + m (Lnet/minecraft/world/entity/PathfinderMob;DIZ)V + p 1 mob + p 2 speedModifier + p 4 interval + p 5 checkNoActionTime +c net/minecraft/world/entity/ai/goal/RandomSwimmingGoal cbk net/minecraft/class_1378 + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V +c net/minecraft/world/entity/ai/goal/RangedAttackGoal cbl net/minecraft/class_1381 + f Lnet/minecraft/world/entity/Mob; mob a field_6583 + f Lnet/minecraft/world/entity/monster/RangedAttackMob; rangedAttackMob b field_6582 + f Lnet/minecraft/world/entity/LivingEntity; target c field_6580 + f I attackTime d field_6581 + f D speedModifier e field_6586 + f I seeTime f field_6579 + f I attackIntervalMin g field_6578 + f I attackIntervalMax h field_6577 + f F attackRadius i field_6585 + f F attackRadiusSqr j field_6584 + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackInterval + p 5 attackRadius + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackIntervalMin + p 5 attackIntervalMax + p 6 attackRadius +c net/minecraft/world/entity/ai/goal/RangedBowAttackGoal cbm net/minecraft/class_1380 + f Lnet/minecraft/world/entity/monster/Monster; mob a field_6576 + f D speedModifier b field_6569 + f I attackIntervalMin c field_6575 + f F attackRadiusSqr d field_6570 + f I attackTime e field_6574 + f I seeTime f field_6572 + f Z strafingClockwise g field_6573 + f Z strafingBackwards h field_6571 + f I strafingTime i field_6568 + m (I)V setMinAttackInterval c method_6305 + p 1 attackCooldown + m ()Z isHoldingBow h method_6306 + m (Lnet/minecraft/world/entity/monster/Monster;DIF)V + p 1 mob + p 2 speedModifier + p 4 attackIntervalMin + p 5 attackRadius +c net/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal cbn net/minecraft/class_1383 + f Lnet/minecraft/util/valueproviders/UniformInt; PATHFINDING_DELAY_RANGE a field_25696 + f Lnet/minecraft/world/entity/monster/Monster; mob b field_6593 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; crossbowState c field_16528 + f D speedModifier d field_6590 + f F attackRadiusSqr e field_6591 + f I seeTime f field_6592 + f I attackDelay g field_16529 + f I updatePathDelay h field_25697 + m ()Z isHoldingCrossbow h method_6310 + m ()Z isValidTarget i method_19996 + m ()Z canRun k method_16352 + m (Lnet/minecraft/world/entity/monster/Monster;DF)V + p 1 mob + p 2 speedModifier + p 4 attackRadius + m ()V +c net/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState cbn$a net/minecraft/class_1383$class_3744 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; UNCHARGED a field_16534 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; CHARGING b field_16530 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; CHARGED c field_16532 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; READY_TO_ATTACK d field_16533 + f [Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; $VALUES e field_16531 + m ()[Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; $values a method_36622 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/RemoveBlockGoal cbo net/minecraft/class_1382 + f Lnet/minecraft/world/level/block/Block; blockToRemove g field_6587 + f Lnet/minecraft/world/entity/Mob; removerMob h field_6589 + f I ticksSinceReachedGoal i field_6588 + f I WAIT_AFTER_BLOCK_FOUND j field_30227 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playBreakSound a method_6309 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V playDestroyProgressSound a method_6307 + p 1 level + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockGetter;)Lnet/minecraft/core/BlockPos; getPosWithBlock a method_6308 + p 1 pos + p 2 level + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 blockToRemove + p 2 removerMob + p 3 speedModifier + p 5 searchRange +c net/minecraft/world/entity/ai/goal/RestrictSunGoal cbp net/minecraft/class_1384 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6594 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal cbq net/minecraft/class_1387 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse a field_6602 + f D speedModifier b field_6601 + f D posX c field_6600 + f D posY d field_6599 + f D posZ e field_6603 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;D)V + p 1 horse + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/SitWhenOrderedToGoal cbr net/minecraft/class_1386 + f Lnet/minecraft/world/entity/TamableAnimal; mob a field_6597 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/StrollThroughVillageGoal cbs net/minecraft/class_4018 + f I DISTANCE_THRESHOLD a field_30228 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_17944 + f I interval c field_17945 + f Lnet/minecraft/core/BlockPos; wantedPos d field_17947 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)D method_19054 a method_19054 + m ()V moveRandomly h method_18252 + m (Lnet/minecraft/world/entity/PathfinderMob;I)V + p 1 mob + p 2 interval +c net/minecraft/world/entity/ai/goal/SwellGoal cbt net/minecraft/class_1389 + f Lnet/minecraft/world/entity/monster/Creeper; creeper a field_6608 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6609 + m (Lnet/minecraft/world/entity/monster/Creeper;)V + p 1 creeper +c net/minecraft/world/entity/ai/goal/TemptGoal cbu net/minecraft/class_1391 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6616 + f Lnet/minecraft/world/entity/player/Player; player b field_6617 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TEMP_TARGETING c field_18090 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetingConditions d field_28404 + f D speedModifier e field_6615 + f D px f field_6614 + f D py g field_6611 + f D pz h field_6621 + f D pRotX i field_6619 + f D pRotY j field_6618 + f I calmDown k field_6612 + f Z isRunning l field_6613 + f Ljava/util/function/Predicate; items m field_6622 + f Z canScare n field_6620 + m (Lnet/minecraft/world/entity/LivingEntity;)Z shouldFollow a method_6312 + p 1 entity + m ()Z canScare h method_16081 + m ()Z isRunning i method_6313 + c @see #isRunning + m (Lnet/minecraft/world/entity/PathfinderMob;DLjava/util/function/Predicate;Z)V + p 1 mob + p 2 speedModifier + p 4 items + p 5 canScare + m ()V +c net/minecraft/world/entity/ai/goal/TradeWithPlayerGoal cbv net/minecraft/class_1390 + f Lnet/minecraft/world/entity/npc/AbstractVillager; mob a field_6610 + m (Lnet/minecraft/world/entity/npc/AbstractVillager;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/TryFindWaterGoal cbw net/minecraft/class_1393 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6625 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/UseItemGoal cbx net/minecraft/class_3993 + f Lnet/minecraft/world/entity/Mob; mob a field_17755 + f Lnet/minecraft/world/item/ItemStack; item b field_17756 + f Ljava/util/function/Predicate; canUseSelector c field_17757 + f Lnet/minecraft/sounds/SoundEvent; finishUsingSound d field_18280 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/sounds/SoundEvent;Ljava/util/function/Predicate;)V + p 1 mob + p 2 item + p 3 finishUsingSound + p 4 canUseSelector +c net/minecraft/world/entity/ai/goal/WaterAvoidingRandomFlyingGoal cby net/minecraft/class_1395 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V +c net/minecraft/world/entity/ai/goal/WaterAvoidingRandomStrollGoal cbz net/minecraft/class_1394 + f F PROBABILITY i field_30229 + f F probability j field_6626 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DF)V + p 1 mob + p 2 speedModifier + p 4 probability +c net/minecraft/world/entity/ai/goal/WrappedGoal cca net/minecraft/class_4135 + c This is an internal object used by the GoalSelector to choose between Goals.\nIn most cases, it should not be constructed directly.\n\nFor information on how individual methods work, see the javadocs for Goal:\n{@link net.minecraft.entity.ai.goal.Goal} + f Lnet/minecraft/world/entity/ai/goal/Goal; goal a field_18416 + f I priority b field_18417 + f Z isRunning c field_18418 + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z canBeReplacedBy a method_19055 + p 1 other + m ()Z isRunning h method_19056 + m ()I getPriority i method_19057 + m ()Lnet/minecraft/world/entity/ai/goal/Goal; getGoal k method_19058 + c Gets the private goal enclosed by this WrappedGoal. + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V + p 1 priority + p 2 goal +c net/minecraft/world/entity/ai/goal/ZombieAttackGoal ccb net/minecraft/class_1396 + f Lnet/minecraft/world/entity/monster/Zombie; zombie b field_6628 + f I raiseArmTicks c field_6627 + m (Lnet/minecraft/world/entity/monster/Zombie;DZ)V + p 1 zombie + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/ai/goal/package-info ccc net/minecraft/class_6038 +c net/minecraft/world/entity/ai/goal/target/DefendVillageTargetGoal ccd net/minecraft/class_1397 + f Lnet/minecraft/world/entity/animal/IronGolem; golem a field_6629 + f Lnet/minecraft/world/entity/LivingEntity; potentialTarget b field_6630 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; attackTargeting c field_19340 + m (Lnet/minecraft/world/entity/animal/IronGolem;)V + p 1 golem +c net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal cce net/minecraft/class_1399 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; HURT_BY_TARGETING a field_18091 + f I ALERT_RANGE_Y b field_30230 + f Z alertSameType c field_6639 + f I timestamp d field_6638 + c Store the previous revengeTimer value + f [Ljava/lang/Class; toIgnoreDamage i field_6637 + f [Ljava/lang/Class; toIgnoreAlert j field_6640 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V alertOther a method_6319 + p 1 mob + p 2 target + m ([Ljava/lang/Class;)Lnet/minecraft/world/entity/ai/goal/target/HurtByTargetGoal; setAlertOthers a method_6318 + p 1 reinforcementTypes + m ()V alertOthers h method_6317 + m (Lnet/minecraft/world/entity/PathfinderMob;[Ljava/lang/Class;)V + p 1 mob + p 2 toIgnoreDamage + m ()V +c net/minecraft/world/entity/ai/goal/target/NearestAttackableTargetGoal ccf net/minecraft/class_1400 + f Ljava/lang/Class; targetType a field_6643 + f I randomInterval b field_6641 + f Lnet/minecraft/world/entity/LivingEntity; target c field_6644 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetConditions d field_6642 + c This filter is applied to the Entity search. Only matching entities will be targeted. + f I DEFAULT_RANDOM_INTERVAL i field_36304 + m (D)Lnet/minecraft/world/phys/AABB; getTargetSearchArea a method_6321 + p 1 targetDistance + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_24632 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31503 b method_31503 + m ()V findTarget h method_18415 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;Z)V + p 1 mob + p 2 targetType + p 3 mustSee + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 targetPredicate + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;ZZ)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 mustReach + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;IZZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 randomInterval + p 4 mustSee + p 5 mustReach + p 6 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NearestAttackableWitchTargetGoal ccg net/minecraft/class_3760 + f Z canAttack i field_17281 + m (Z)V setCanAttack a method_17351 + p 1 active + m (Lnet/minecraft/world/entity/raid/Raider;Ljava/lang/Class;IZZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 randomInterval + p 4 mustSee + p 5 mustReach + p 6 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NearestHealableRaiderTargetGoal cch net/minecraft/class_3909 + f I DEFAULT_COOLDOWN i field_30231 + f I cooldown j field_17282 + m ()I getCooldown i method_17352 + m ()V decrementCooldown k method_17353 + m (Lnet/minecraft/world/entity/raid/Raider;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NonTameRandomTargetGoal cci net/minecraft/class_1404 + f Lnet/minecraft/world/entity/TamableAnimal; tamableMob i field_6656 + m (Lnet/minecraft/world/entity/TamableAnimal;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 tamableMob + p 2 targetType + p 3 mustSee + p 4 targetPredicate +c net/minecraft/world/entity/ai/goal/target/OwnerHurtByTargetGoal ccj net/minecraft/class_1403 + f Lnet/minecraft/world/entity/TamableAnimal; tameAnimal a field_6654 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurtBy b field_6655 + f I timestamp c field_6653 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 tameAnimal +c net/minecraft/world/entity/ai/goal/target/OwnerHurtTargetGoal cck net/minecraft/class_1406 + f Lnet/minecraft/world/entity/TamableAnimal; tameAnimal a field_6666 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurt b field_6667 + f I timestamp c field_6665 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 tameAnimal +c net/minecraft/world/entity/ai/goal/target/ResetUniversalAngerTargetGoal ccl net/minecraft/class_5398 + f I ALERT_RANGE_Y a field_30232 + f Lnet/minecraft/world/entity/Mob; mob b field_25604 + f Z alertOthersOfSameType c field_25605 + f I lastHurtByPlayerTimestamp d field_25606 + m (Lnet/minecraft/world/entity/Mob;)Lnet/minecraft/world/entity/NeutralMob; method_29930 a method_29930 + m (Lnet/minecraft/world/entity/Mob;)Z method_29931 b method_29931 + m ()Z wasHurtByPlayer h method_29932 + m ()Ljava/util/List; getNearbyMobsOfSameType i method_29933 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 alertOthersOfSameType +c net/minecraft/world/entity/ai/goal/target/TargetGoal ccm net/minecraft/class_1405 + f I EMPTY_REACH_CACHE a field_30233 + f I CAN_REACH_CACHE b field_30234 + f I CANT_REACH_CACHE c field_30235 + f Z mustReach d field_6663 + f Lnet/minecraft/world/entity/Mob; mob e field_6660 + c The entity that this goal belongs to + f Z mustSee f field_6658 + f Lnet/minecraft/world/entity/LivingEntity; targetMob g field_6664 + f I unseenMemoryTicks h field_6657 + f I reachCache i field_6662 + f I reachCacheTime j field_6661 + f I unseenTicks k field_6659 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canReach a method_6329 + c Checks to see if this entity can find a short path to the given target. + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;)Z canAttack a method_6328 + c Checks if this is a suitable target. + p 1 potentialTarget + p 2 targetPredicate + m (I)Lnet/minecraft/world/entity/ai/goal/target/TargetGoal; setUnseenMemoryTicks c method_6330 + p 1 unseenMemoryTicks + m ()D getFollowDistance l method_6326 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 mustSee + m (Lnet/minecraft/world/entity/Mob;ZZ)V + p 1 mob + p 2 mustSee + p 3 mustReach +c net/minecraft/world/entity/ai/goal/target/package-info ccn net/minecraft/class_6039 +c net/minecraft/world/entity/ai/gossip/GossipContainer cco net/minecraft/class_4136 + f I DISCARD_THRESHOLD a field_30236 + f Lorg/slf4j/Logger; LOGGER b field_41669 + f Ljava/util/Map; gossips c field_18419 + m ()Ljava/util/Map; getGossipEntries a method_35120 + m (II)I mergeValuesForTransfer a method_19059 + c Returns the greater of two int values + p 0 value1 + p 1 value2 + m (Lnet/minecraft/util/RandomSource;I)Ljava/util/Collection; selectGossipsForTransfer a method_19070 + p 1 random + p 2 amount + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry;)V method_19060 a method_19060 + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer;Lnet/minecraft/util/RandomSource;I)V transferFrom a method_19061 + p 1 container + p 2 randomSource + p 3 amount + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove a method_35121 + p 1 gossipType + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;II)I mergeValuesForAddition a method_19063 + p 1 gossipType + p 2 existing + p 3 additive + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;Ljava/util/function/DoublePredicate;)J getCountForType a method_35122 + p 1 gossipType + p 2 gossipPredicate + m (Lcom/mojang/datafixers/util/Pair;)Ljava/util/stream/Stream; method_47924 a method_47924 + m (Lcom/mojang/serialization/Dynamic;)V update a method_19066 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/lang/Object; store a method_19067 + p 1 ops + m (Ljava/lang/String;)V method_47925 a method_47925 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19069 a method_19069 + m (Ljava/util/Map;Ljava/util/UUID;)V method_35123 a method_35123 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips; getOrCreate a method_19071 + p 1 identifier + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove a method_35124 + p 1 identifier + p 2 gossipType + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V add a method_19072 + p 1 identifier + p 2 gossipType + p 3 gossipValue + m (Ljava/util/UUID;Ljava/util/function/Predicate;)I getReputation a method_19073 + p 1 identifier + p 2 gossip + m (Ljava/util/function/DoublePredicate;Lnet/minecraft/world/entity/ai/gossip/GossipType;Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips;)Z method_35125 a method_35125 + m ()V decay b method_20651 + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry;)V method_19075 b method_19075 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;II)I method_19065 b method_19065 + m (Ljava/lang/String;)V method_47926 b method_47926 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips; method_19076 b method_19076 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V remove b method_35126 + p 1 identifier + p 2 gossipType + p 3 gossipValue + m ()Ljava/util/stream/Stream; unpack c method_19074 + m ()V + m ()V +c net/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips cco$a net/minecraft/class_4136$class_4137 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; entries a field_18420 + m ()V decay a method_20652 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V makeSureValueIsntTooLowOrTooHigh a method_20653 + p 1 gossipType + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)I method_19078 a method_19078 + m (Ljava/util/UUID;)Ljava/util/stream/Stream; unpack a method_19079 + p 1 identifier + m (Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry; method_19080 a method_19080 + m (Ljava/util/function/Predicate;)I weightedValue a method_19081 + p 1 gossipType + m (Ljava/util/function/Predicate;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Z method_19082 a method_19082 + m ()Z isEmpty b method_20654 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove b method_20655 + p 1 gossipType + m ()V +c net/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry cco$b net/minecraft/class_4136$class_4138 + f Lcom/mojang/serialization/Codec; CODEC a field_41670 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_41671 + f Ljava/util/UUID; target c comp_1180 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; type d comp_1181 + f I value e comp_1182 + m ()I weightedValue a method_19083 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47927 a method_47927 + m ()Ljava/util/UUID; target b comp_1180 + m ()Lnet/minecraft/world/entity/ai/gossip/GossipType; type c comp_1181 + m ()I value d comp_1182 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V + p 1 target + p 2 type + p 3 value + m ()V +c net/minecraft/world/entity/ai/gossip/GossipType ccp net/minecraft/class_4139 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MAJOR_NEGATIVE a field_18424 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MINOR_NEGATIVE b field_18425 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MINOR_POSITIVE c field_18426 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MAJOR_POSITIVE d field_18427 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; TRADING e field_18428 + f I REPUTATION_CHANGE_PER_EVENT f field_30240 + f I REPUTATION_CHANGE_PER_EVERLASTING_MEMORY g field_30241 + f I REPUTATION_CHANGE_PER_TRADE h field_30242 + f Ljava/lang/String; id i field_18430 + f I weight j field_18431 + f I max k field_18432 + f I decayPerDay l field_19354 + f I decayPerTransfer m field_18434 + f Lcom/mojang/serialization/Codec; CODEC n field_41672 + f [Lnet/minecraft/world/entity/ai/gossip/GossipType; $VALUES o field_18436 + m ()[Lnet/minecraft/world/entity/ai/gossip/GossipType; $values a method_36623 + m (Ljava/lang/String;ILjava/lang/String;IIII)V + p 3 id + p 4 weight + p 5 max + p 6 decayPerDay + p 7 decayPerTransfer + m ()V +c net/minecraft/world/entity/ai/gossip/package-info ccq net/minecraft/class_6040 +c net/minecraft/world/entity/ai/memory/ExpirableValue ccr net/minecraft/class_4831 + f Ljava/lang/Object; value a field_22330 + f J timeToLive b field_22331 + m ()V tick a method_24913 + m (Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Ljava/util/Optional; method_28352 a method_28352 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_28353 + p 0 valueCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28354 a method_28354 + m (Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; of a method_28355 + p 0 value + m (Ljava/lang/Object;J)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; of a method_24636 + p 0 value + p 1 timeToLive + m (Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; method_28356 a method_28356 + m ()J getTimeToLive b method_35127 + m (Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Ljava/lang/Object; method_28357 b method_28357 + m ()Ljava/lang/Object; getValue c method_24637 + m ()Z hasExpired d method_24634 + m ()Z canExpire e method_24914 + m (Ljava/lang/Object;J)V + p 1 value + p 2 timeToLive +c net/minecraft/world/entity/ai/memory/MemoryModuleType ccs net/minecraft/class_4140 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_HOSTILE A field_18453 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_ATTACKABLE B field_30243 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HIDING_PLACE C field_19008 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HEARD_BELL_TIME D field_19009 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; CANT_REACH_WALK_TARGET_SINCE E field_19293 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; GOLEM_DETECTED_RECENTLY F field_25754 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DANGER_DETECTED_RECENTLY G field_47762 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_SLEPT H field_19385 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_WOKEN I field_20616 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_WORKED_AT_POI J field_19386 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT K field_25359 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_WANTED_ITEM L field_22332 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_NEMESIS M field_25360 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PLAY_DEAD_TICKS N field_28324 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TEMPTING_PLAYER O field_28325 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TEMPTATION_COOLDOWN_TICKS P field_28326 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; GAZE_COOLDOWN_TICKS Q field_40127 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_TEMPTED R field_28327 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LONG_JUMP_COOLDOWN_TICKS S field_30244 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LONG_JUMP_MID_JUMP T field_30245 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HAS_HUNTING_COOLDOWN U field_30246 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RAM_COOLDOWN_TICKS V field_33483 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RAM_TARGET W field_33484 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_IN_WATER X field_37442 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_PREGNANT Y field_37443 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_PANICKING Z field_39408 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RECENT_PROJECTILE aA field_38110 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_SNIFFING aB field_38111 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_EMERGING aC field_38112 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_SOUND_DELAY aD field_38113 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DIG_COOLDOWN aE field_38103 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_SOUND_COOLDOWN aF field_38104 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFF_COOLDOWN aG field_38105 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TOUCH_COOLDOWN aH field_38106 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VIBRATION_COOLDOWN aI field_38107 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_COOLDOWN aJ field_38856 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_SOUND_COOLDOWN aK field_38857 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_SOUND_DELAY aL field_38858 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DUMMY a field_18437 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_PLAYER aM field_38394 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_NOTEBLOCK_POSITION aN field_38395 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_NOTEBLOCK_COOLDOWN_TICKS aO field_38396 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ITEM_PICKUP_COOLDOWN_TICKS aP field_38397 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_EXPLORED_POSITIONS aQ field_42637 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_SNIFFING_TARGET aR field_42638 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_DIGGING aS field_42639 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_HAPPY aT field_42640 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_COOLDOWN aU field_47252 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT aV field_47253 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_CHARGING aW field_47254 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_RECOVERING aX field_47255 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_COOLDOWN aY field_47256 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_INHALING aZ field_47257 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; UNREACHABLE_TONGUE_TARGETS aa field_39450 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ANGRY_AT ab field_22333 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; UNIVERSAL_ANGER ac field_25361 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ADMIRING_ITEM ad field_22334 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TIME_TRYING_TO_REACH_ADMIRE_ITEM ae field_25813 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DISABLE_WALK_TO_ADMIRE_ITEM af field_25814 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ADMIRING_DISABLED ag field_22473 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HUNTED_RECENTLY ah field_22336 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; CELEBRATE_LOCATION ai field_22337 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DANCING aj field_25159 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_HUNTABLE_HOGLIN ak field_22339 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_BABY_HOGLIN al field_22340 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_TARGETABLE_PLAYER_NOT_WEARING_GOLD am field_22342 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEARBY_ADULT_PIGLINS an field_25755 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_PIGLINS ao field_22343 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_HOGLINS ap field_22344 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_PIGLIN aq field_22345 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ZOMBIFIED ar field_22346 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_ADULT_PIGLIN_COUNT as field_22347 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_ADULT_HOGLIN_COUNT at field_22348 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_PLAYER_HOLDING_WANTED_ITEM au field_22349 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATE_RECENTLY av field_22350 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_REPELLENT aw field_22474 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PACIFIED ax field_22353 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_TARGET ay field_38108 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DISTURBANCE_LOCATION az field_38109 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HOME b field_18438 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_TARGET ba field_47258 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_LEAVING_WATER bb field_47763 + f Ljava/util/Optional; codec bc field_24668 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; JOB_SITE c field_18439 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; POTENTIAL_JOB_SITE d field_25160 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; MEETING_POINT e field_18440 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SECONDARY_JOB_SITE f field_18873 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_LIVING_ENTITIES g field_18441 + c Holds a list of nearby living entities inside the brain entity's bounding box expanded 16 blocks in all directions. + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_LIVING_ENTITIES h field_18442 + c Holds a list of nearby living entities inside the brain entity's bounding box expanded 16 blocks in all directions which the brain entity can see. + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_VILLAGER_BABIES i field_19006 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_PLAYERS j field_18443 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_PLAYER k field_18444 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ATTACKABLE_PLAYER l field_22354 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; WALK_TARGET m field_18445 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LOOK_TARGET n field_18446 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATTACK_TARGET o field_22355 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATTACK_COOLING_DOWN p field_22475 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; INTERACTION_TARGET q field_18447 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREED_TARGET r field_18448 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RIDE_TARGET s field_22356 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PATH t field_18449 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; INTERACTABLE_DOORS u field_18450 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DOORS_TO_CLOSE v field_26389 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_BED w field_19007 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HURT_BY x field_18451 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HURT_BY_ENTITY y field_18452 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; AVOID_TARGET z field_22357 + m ()Ljava/util/Optional; getCodec a method_19093 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; register a method_20738 + p 0 identifier + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; register a method_19092 + p 0 identifier + p 1 codec + m (Ljava/util/Optional;)V + p 1 optionalCodec + m ()V +c net/minecraft/world/entity/ai/memory/MemoryStatus cct net/minecraft/class_4141 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; VALUE_PRESENT a field_18456 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; VALUE_ABSENT b field_18457 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; REGISTERED c field_18458 + f [Lnet/minecraft/world/entity/ai/memory/MemoryStatus; $VALUES d field_18459 + m ()[Lnet/minecraft/world/entity/ai/memory/MemoryStatus; $values a method_36624 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities ccu net/minecraft/class_6670 + f Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; EMPTY a field_35104 + f Ljava/util/List; nearbyEntities b field_35105 + f Ljava/util/function/Predicate; lineOfSightTest c field_35106 + m ()Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; empty a method_38971 + m (Lnet/minecraft/world/entity/LivingEntity;)Z contains a method_38972 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_38973 a method_38973 + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanOpenHashMap;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38974 a method_38974 + m (Ljava/util/function/Predicate;)Ljava/util/Optional; findClosest a method_38975 + p 1 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38976 a method_38976 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38977 b method_38977 + m (Ljava/util/function/Predicate;)Ljava/lang/Iterable; findAll b method_38978 + p 1 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38979 b method_38979 + m (Ljava/util/function/Predicate;)Ljava/util/stream/Stream; find c method_38980 + p 1 predicate + m (Ljava/util/function/Predicate;)Z contains d method_38981 + p 1 predicate + m ()V + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/List;)V + p 1 livingEntity + p 2 nearbyLivingEntities + m ()V +c net/minecraft/world/entity/ai/memory/WalkTarget ccv net/minecraft/class_4142 + f Lnet/minecraft/world/entity/ai/behavior/PositionTracker; target a field_18460 + f F speedModifier b field_18461 + f I closeEnoughDist c field_18462 + m ()Lnet/minecraft/world/entity/ai/behavior/PositionTracker; getTarget a method_19094 + m ()F getSpeedModifier b method_19095 + m ()I getCloseEnoughDist c method_19096 + m (Lnet/minecraft/core/BlockPos;FI)V + c Constructs a walk target that tracks a position + p 1 pos + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/phys/Vec3;FI)V + c Constructs a walk target using a vector that's directly converted to a BlockPos. + p 1 vectorPos + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/Entity;FI)V + c Constructs a walk target that tracks an entity's position + p 1 targetEntity + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;FI)V + p 1 target + p 2 speedModifier + p 3 closeEnoughDist +c net/minecraft/world/entity/ai/memory/package-info ccw net/minecraft/class_6041 +c net/minecraft/world/entity/ai/navigation/AmphibiousPathNavigation ccx net/minecraft/class_5766 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/ai/navigation/FlyingPathNavigation ccy net/minecraft/class_1407 + m (Z)V setCanOpenDoors b method_6332 + p 1 canOpenDoors + m (Z)V setCanPassDoors c method_6331 + p 1 canEnterDoors + m ()Z canPassDoors d method_35128 + m ()Z canOpenDoors e method_35129 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/GroundPathNavigation ccz net/minecraft/class_1409 + f Z avoidSun p field_6686 + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z hasValidPathType a method_26338 + p 1 pathType + m (Z)V setCanOpenDoors b method_6363 + p 1 canOpenDoors + m (Z)V setCanPassDoors c method_35139 + p 1 canPassDoors + m (Z)V setAvoidSun d method_6361 + p 1 avoidSun + m ()Z canPassDoors e method_35140 + m (Z)V setCanWalkOverFences e method_46645 + p 1 canWalkOverFences + m ()Z canOpenDoors f method_6366 + m ()I getSurfaceY s method_6362 + c Gets the safe pathing Y position for the entity depending on if it can path swim or not + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/PathNavigation cda net/minecraft/class_1408 + f Lnet/minecraft/world/entity/Mob; mob a field_6684 + f Lnet/minecraft/world/level/Level; level b field_6677 + f Lnet/minecraft/world/level/pathfinder/Path; path c field_6681 + f D speedModifier d field_6668 + f I tick e field_6675 + f I lastStuckCheck f field_6674 + f Lnet/minecraft/world/phys/Vec3; lastStuckCheckPos g field_6672 + f Lnet/minecraft/core/Vec3i; timeoutCachedNode h field_6680 + f J timeoutTimer i field_6670 + f J lastTimeoutCheck j field_6669 + f D timeoutLimit k field_6682 + f F maxDistanceToWaypoint l field_6683 + f Z hasDelayedRecomputation m field_6679 + c Whether the path can be changed by {@link net.minecraft.pathfinding.PathNavigate#onUpdateNavigation() onUpdateNavigation()} + f J timeLastRecompute n field_6685 + f Lnet/minecraft/world/level/pathfinder/NodeEvaluator; nodeEvaluator o field_6678 + f I MAX_TIME_RECOMPUTE p field_30247 + f I STUCK_CHECK_INTERVAL q field_41545 + f F STUCK_THRESHOLD_DISTANCE_FACTOR r field_41546 + f Lnet/minecraft/core/BlockPos; targetPos s field_20293 + f I reachRange t field_20294 + c Distance in which a path point counts as target-reaching + f F maxVisitedNodesMultiplier u field_21642 + f Lnet/minecraft/world/level/pathfinder/PathFinder; pathFinder v field_6673 + f Z isStuck w field_26820 + m ()V trimPath W_ method_6359 + c Trims path data from the end to the first sun covered block + m ()Z canUpdatePath a method_6358 + c If on ground or swimming and can swim + m (D)V setSpeedModifier a method_6344 + c Sets the speed + p 1 speed + m (DDDD)Z moveTo a method_6337 + c Try to find and set a path to XYZ. Returns {@code true} if successful. + p 1 x + p 3 y + p 5 z + p 7 speed + m (DDDI)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6352 + c Returns path to given BlockPos + p 1 x + p 3 y + p 5 z + p 7 accuracy + m (DDDID)Z moveTo a method_58160 + p 1 x + p 3 y + p 5 z + p 7 accuracy + p 8 speed + m (F)V setMaxVisitedNodesMultiplier a method_23964 + p 1 multiplier + m (I)Lnet/minecraft/world/level/pathfinder/PathFinder; createPathFinder a method_6336 + p 1 maxVisitedNodes + m (Lnet/minecraft/world/entity/Entity;D)Z moveTo a method_6335 + c Try to find and set a path to EntityLiving. Returns {@code true} if successful. + p 1 entity + p 2 speed + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6349 + c Returns a path to the given entity or null + p 1 entity + p 2 accuracy + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Z)Z isClearForMovementBetween a method_43394 + p 0 mob + p 1 pos1 + p 2 pos2 + p 3 allowSwimming + m (Lnet/minecraft/world/level/pathfinder/Path;D)Z moveTo a method_6334 + c Sets a new path. If it's different from the old path. Checks to adjust path for sun avoiding, and stores start coords. + p 1 pathentity + p 2 speed + m (Lnet/minecraft/world/phys/Vec3;)D getGroundY a method_38065 + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z canMoveDirectly a method_6341 + c Checks if the specified entity can safely walk to the specified location. + p 1 posVec31 + p 2 posVec32 + m (Ljava/util/Set;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_29934 + p 1 positions + p 2 distance + m (Ljava/util/Set;IZI)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_35142 + c Returns a path to one of the given targets or null + p 1 targets + p 2 regionOffset + p 3 offsetUpward + p 4 accuracy + m (Ljava/util/Set;IZIF)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_18416 + p 1 targets + p 2 regionOffset + p 3 offsetUpward + p 4 accuracy + p 5 followRange + m (Ljava/util/stream/Stream;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_21643 + c Returns a path to one of the elements of the stream or null + p 1 targets + p 2 accuracy + m (Lnet/minecraft/core/BlockPos;)Z isStableDestination a method_6333 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6348 + c Returns path to given BlockPos + p 1 pos + p 2 accuracy + m (Lnet/minecraft/core/BlockPos;II)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_35141 + p 1 pos + p 2 regionOffset + p 3 accuracy + m (Z)V setCanFloat a method_6354 + p 1 canSwim + m ()Lnet/minecraft/world/phys/Vec3; getTempMobPos b method_6347 + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z canCutCorner b method_48158 + p 1 pathType + m (Lnet/minecraft/world/phys/Vec3;)V doStuckDetection b method_6346 + c Checks if entity haven't been moved when last checked and if so, stops the current navigation. + p 1 positionVec3 + m (Lnet/minecraft/core/BlockPos;)Z shouldRecomputePath b method_18053 + p 1 pos + m ()V tick c method_6360 + m (Lnet/minecraft/world/phys/Vec3;)Z shouldTargetNextNodeInDirection c method_27799 + p 1 vec + m ()V timeoutPath e method_31266 + m ()V resetStuckTimeout f method_26085 + m ()V resetMaxVisitedNodesMultiplier g method_23965 + m ()Lnet/minecraft/core/BlockPos; getTargetPos h method_6355 + m ()V recomputePath i method_6356 + m ()Lnet/minecraft/world/level/pathfinder/Path; getPath j method_6345 + c Gets the actively used {@link net.minecraft.world.level.pathfinder.Path}. + m ()V followThePath k method_6339 + m ()Z isDone l method_6357 + c If null path or reached the end + m ()Z isInProgress m method_23966 + m ()V stop n method_6340 + c Sets the active {@link net.minecraft.world.level.pathfinder.Path} to {@code null}. + m ()Lnet/minecraft/world/level/pathfinder/NodeEvaluator; getNodeEvaluator o method_6342 + m ()Z canFloat p method_6350 + m ()F getMaxDistanceToWaypoint q method_35143 + m ()Z isStuck r method_31267 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/WallClimberNavigation cdb net/minecraft/class_1410 + f Lnet/minecraft/core/BlockPos; pathToPosition p field_6687 + c Current path navigation target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/WaterBoundPathNavigation cdc net/minecraft/class_1412 + f Z allowBreaching p field_6689 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/package-info cdd net/minecraft/class_6042 +c net/minecraft/world/entity/ai/package-info cde net/minecraft/class_6043 +c net/minecraft/world/entity/ai/sensing/AdultSensor cdf net/minecraft/class_5356 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)V doTick a method_29531 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_29528 a method_29528 + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)V setNearestVisibleAdult a method_29529 + p 1 mob + p 2 nearbyEntities + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)V method_29532 b method_29532 + m ()V +c net/minecraft/world/entity/ai/sensing/AxolotlAttackablesSensor cdg net/minecraft/class_6044 + f F TARGET_DETECTION_DISTANCE a field_30248 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHostileTarget b method_35145 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isHuntTarget e method_35144 + p 1 attacker + p 2 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isClose f method_35146 + p 1 attacker + p 2 target + m ()V +c net/minecraft/world/entity/ai/sensing/BreezeAttackEntitySensor cdh net/minecraft/class_8947 + f I BREEZE_SENSOR_RADIUS a field_47260 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)V doTick a method_54993 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V method_54994 a method_54994 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)V method_54995 a method_54995 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z method_54996 b method_54996 + m ()V +c net/minecraft/world/entity/ai/sensing/DummySensor cdi net/minecraft/class_4143 + m ()V +c net/minecraft/world/entity/ai/sensing/FrogAttackablesSensor cdj net/minecraft/class_7100 + f F TARGET_DETECTION_DISTANCE a field_37444 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isUnreachableAttackTarget e method_44331 + p 1 attacker + p 2 target + m ()V +c net/minecraft/world/entity/ai/sensing/GolemSensor cdk net/minecraft/class_4307 + f I GOLEM_SCAN_RATE a field_30249 + f I MEMORY_TIME_TO_LIVE c field_30250 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkForNearbyGolem a method_20656 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V golemDetected b method_30233 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_20657 c method_20657 + m ()V + m (I)V + p 1 scanRate +c net/minecraft/world/entity/ai/sensing/HoglinSpecificSensor cdl net/minecraft/class_4832 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V doTick a method_24639 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_24640 a method_24640 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38982 a method_38982 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; findNearestRepellent b method_24641 + p 1 level + p 2 hoglin + m ()V +c net/minecraft/world/entity/ai/sensing/HurtBySensor cdm net/minecraft/class_4144 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)V method_24642 a method_24642 + m ()V +c net/minecraft/world/entity/ai/sensing/IsInWaterSensor cdn net/minecraft/class_7101 + m ()V +c net/minecraft/world/entity/ai/sensing/MobSensor cdo net/minecraft/class_9068 + f Ljava/util/function/BiPredicate; mobTest a field_47764 + f Ljava/util/function/Predicate; readyTest c field_47765 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; toSet d field_47766 + f I memoryTimeToLive e field_47767 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkForMobsNearby a method_55702 + p 1 sensingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_55703 a method_55703 + m (Lnet/minecraft/world/entity/LivingEntity;)V mobDetected b method_55704 + p 1 sensingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V clearMemory c method_55705 + p 1 sensingEntity + m (ILjava/util/function/BiPredicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;I)V + p 1 scanRate + p 2 mobTest + p 3 readyTest + p 4 toSet + p 5 memoryTimeToLive +c net/minecraft/world/entity/ai/sensing/NearestBedSensor cdp net/minecraft/class_4256 + f I CACHE_TIMEOUT a field_30251 + f I BATCH_SIZE c field_30252 + f I RATE d field_30253 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; batchCache e field_20295 + f I triedCount f field_20296 + f J lastUpdate g field_20297 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)V doTick a method_21646 + p 1 level + p 2 entity + m (Lit/unimi/dsi/fastutil/longs/Long2LongMap$Entry;)Z method_21645 a method_21645 + m (Lnet/minecraft/core/BlockPos;)Z method_21644 a method_21644 + m (Lnet/minecraft/core/Holder;)Z method_43977 a method_43977 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestItemSensor cdq net/minecraft/class_4833 + f I MAX_DISTANCE_TO_WANTED_ITEM a field_30254 + f J XZ_RANGE c field_30255 + f J Y_RANGE d field_30256 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)V doTick a method_24645 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24643 a method_24643 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24644 a method_24644 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24646 b method_24646 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestLivingEntitySensor cdr net/minecraft/class_4146 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_19097 a method_19097 + m ()I radiusXZ b method_43081 + m ()I radiusY c method_43082 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestVisibleLivingEntitySensor cds net/minecraft/class_6045 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getVisibleEntities a method_35147 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isMatchingEntity a method_35148 + p 1 attacker + p 2 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)Ljava/util/Optional; method_35149 a method_35149 + m ()Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; getMemory b method_35150 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getNearestEntity b method_35151 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_35152 e method_35152 + m ()V +c net/minecraft/world/entity/ai/sensing/PiglinBruteSpecificSensor cdt net/minecraft/class_5417 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38983 a method_38983 + m ()V +c net/minecraft/world/entity/ai/sensing/PiglinSpecificSensor cdu net/minecraft/class_4834 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isValidRepellent a method_24648 + p 0 level + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38984 a method_38984 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_30077 b method_30077 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; findNearestRepellent c method_24649 + p 0 level + p 1 livingEntity + m ()V +c net/minecraft/world/entity/ai/sensing/PlayerSensor cdv net/minecraft/class_4147 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/server/level/ServerPlayer;)Z method_19098 a method_19098 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z method_36981 a method_36981 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z method_29268 b method_29268 + m ()V +c net/minecraft/world/entity/ai/sensing/SecondaryPoiSensor cdw net/minecraft/class_4221 + f I SCAN_RATE a field_30257 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V doTick a method_19617 + p 1 level + p 2 entity + m ()V +c net/minecraft/world/entity/ai/sensing/Sensing cdx net/minecraft/class_1413 + f Lnet/minecraft/world/entity/Mob; mob a field_6691 + f Lit/unimi/dsi/fastutil/ints/IntSet; seen b field_6692 + f Lit/unimi/dsi/fastutil/ints/IntSet; unseen c field_6690 + m ()V tick a method_6370 + c Clears seen and unseen. + m (Lnet/minecraft/world/entity/Entity;)Z hasLineOfSight a method_6369 + c Updates list of visible and not visible entities for the given entity + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/sensing/Sensor cdy net/minecraft/class_4148 + f Lnet/minecraft/util/RandomSource; RANDOM a field_19294 + f I TARGETING_RANGE b field_30258 + f I DEFAULT_SCAN_RATE c field_30259 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGET_CONDITIONS d field_26630 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGET_CONDITIONS_IGNORE_INVISIBILITY_TESTING e field_26631 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS f field_33762 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_INVISIBILITY_TESTING g field_33763 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_LINE_OF_SIGHT h field_34050 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_INVISIBILITY_AND_LINE_OF_SIGHT i field_34051 + f I scanRate j field_18464 + f J timeToTick k field_18463 + m ()Ljava/util/Set; requires a method_19099 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V doTick a method_19101 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tick b method_19100 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityTargetable b method_30954 + c @return if the entity is remembered as a target and then tests the condition + p 0 livingEntity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityAttackable c method_36982 + c @return if entity is remembered as an attack target and is valid to attack + p 0 attacker + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityAttackableIgnoringLineOfSight d method_37456 + p 0 attacker + p 1 target + m (I)V + p 1 scanRate + m ()V + m ()V +c net/minecraft/world/entity/ai/sensing/SensorType cdz net/minecraft/class_4149 + f Ljava/util/function/Supplier; factory A field_18471 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; DUMMY a field_18465 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_ITEMS b field_22358 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_LIVING_ENTITIES c field_18466 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_PLAYERS d field_18467 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_BED e field_19010 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; HURT_BY f field_18469 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; VILLAGER_HOSTILES g field_18470 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; VILLAGER_BABIES h field_19011 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; SECONDARY_POIS i field_18875 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; GOLEM_DETECTED j field_25756 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; ARMADILLO_SCARE_DETECTED k field_47768 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; PIGLIN_SPECIFIC_SENSOR l field_22359 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; PIGLIN_BRUTE_SPECIFIC_SENSOR m field_25757 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; HOGLIN_SPECIFIC_SENSOR n field_22360 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_ADULT o field_25362 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; AXOLOTL_ATTACKABLES p field_30260 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; AXOLOTL_TEMPTATIONS q field_28329 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; GOAT_TEMPTATIONS r field_30261 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; FROG_TEMPTATIONS s field_37445 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; CAMEL_TEMPTATIONS t field_40128 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; ARMADILLO_TEMPTATIONS u field_47769 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; FROG_ATTACKABLES v field_37446 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; IS_IN_WATER w field_37447 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; WARDEN_ENTITY_SENSOR x field_38114 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; SNIFFER_TEMPTATIONS y field_44475 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; BREEZE_ATTACK_ENTITY_SENSOR z field_47261 + m ()Lnet/minecraft/world/entity/ai/sensing/Sensor; create a method_19102 + m (Ljava/lang/String;Ljava/util/function/Supplier;)Lnet/minecraft/world/entity/ai/sensing/SensorType; register a method_19103 + p 0 key + p 1 sensorSupplier + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_51153 b method_51153 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_55706 c method_55706 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_45338 d method_45338 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_41351 e method_41351 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_35153 f method_35153 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_33212 g method_33212 + m ()Lnet/minecraft/world/entity/ai/sensing/MobSensor; method_55707 h method_55707 + m (Ljava/util/function/Supplier;)V + p 1 factory + m ()V +c net/minecraft/world/entity/ai/sensing/TemptingSensor cea net/minecraft/class_5760 + f I TEMPTATION_RANGE a field_30262 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TEMPT_TARGETING c field_28330 + f Ljava/util/function/Predicate; temptations d field_28331 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;)V doTick a method_33213 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_45339 a method_45339 + m (Lnet/minecraft/world/entity/player/Player;)Z playerHoldingTemptation a method_33215 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)Z isTemptation a method_33216 + p 1 stack + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_33214 b method_33214 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_33217 c method_33217 + m (Ljava/util/function/Predicate;)V + p 1 temptations + m ()V +c net/minecraft/world/entity/ai/sensing/VillagerBabiesSensor ceb net/minecraft/class_4257 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/List; getNearestVillagerBabies a method_20000 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z isVillagerBaby b method_20001 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; getVisibleEntities c method_20002 + p 1 livingEntity + m ()V +c net/minecraft/world/entity/ai/sensing/VillagerHostilesSensor cec net/minecraft/class_4150 + f Lcom/google/common/collect/ImmutableMap; ACCEPTABLE_DISTANCE_FROM_HOSTILES a field_18473 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHostile b method_19104 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isClose e method_19105 + p 1 attacker + p 2 target + m ()V + m ()V +c net/minecraft/world/entity/ai/sensing/WardenEntitySensor ced net/minecraft/class_7252 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)V doTick a method_43083 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_43084 a method_43084 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V method_43085 a method_43085 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_42164 a method_42164 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Ljava/util/function/Predicate;)Ljava/util/Optional; getClosest a method_43086 + p 0 warden + p 1 predicate + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_42166 b method_42166 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Ljava/util/Optional; method_43087 b method_43087 + m ()V +c net/minecraft/world/entity/ai/sensing/package-info cee net/minecraft/class_6046 +c net/minecraft/world/entity/ai/targeting/TargetingConditions cef net/minecraft/class_4051 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; DEFAULT a field_18092 + f D MIN_VISIBILITY_DISTANCE_FOR_INVISIBLE_TARGET b field_30263 + f Z isCombat c field_33720 + f D range d field_18093 + f Z checkLineOfSight e field_33721 + f Z testInvisible f field_18098 + f Ljava/util/function/Predicate; selector g field_28405 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; forCombat a method_36625 + m (D)Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; range a method_18418 + p 1 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z test a method_18419 + p 1 attacker + p 2 target + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; selector a method_18420 + p 1 customPredicate + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; forNonCombat b method_36626 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; copy c method_33335 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ignoreLineOfSight d method_36627 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ignoreInvisibilityTesting e method_18424 + m (Z)V + p 1 isCombat + m ()V +c net/minecraft/world/entity/ai/targeting/package-info ceg net/minecraft/class_6047 +c net/minecraft/world/entity/ai/util/AirAndWaterRandomPos ceh net/minecraft/class_5530 + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDD)Lnet/minecraft/world/phys/Vec3; getPos a method_31504 + p 0 mob + p 1 maxDistance + p 2 yRange + p 3 y + p 4 x + p 6 z + p 8 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDDZ)Lnet/minecraft/core/BlockPos; generateRandomPos a method_31505 + p 0 mob + p 1 maxDistance + p 2 yRange + p 3 y + p 4 x + p 6 z + p 8 amplifier + p 10 shortCircuit + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31506 a method_31506 + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDDZ)Lnet/minecraft/core/BlockPos; method_31507 b method_31507 + m ()V +c net/minecraft/world/entity/ai/util/AirRandomPos cei net/minecraft/class_5531 + m (Lnet/minecraft/world/entity/PathfinderMob;IIILnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31508 + p 0 mob + p 1 radius + p 2 yRange + p 3 y + p 4 vectorPosition + p 5 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IIILnet/minecraft/world/phys/Vec3;DZ)Lnet/minecraft/core/BlockPos; method_31509 a method_31509 + m ()V +c net/minecraft/world/entity/ai/util/DefaultRandomPos cej net/minecraft/class_5532 + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getPos a method_31510 + p 0 mob + p 1 radius + p 2 verticalDistance + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosAway a method_31511 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31512 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + p 4 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;DZ)Lnet/minecraft/core/BlockPos; method_31513 a method_31513 + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/core/BlockPos; method_31514 a method_31514 + m (Lnet/minecraft/world/entity/PathfinderMob;IIZ)Lnet/minecraft/core/BlockPos; method_31515 a method_31515 + m (Lnet/minecraft/world/entity/PathfinderMob;IZLnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31516 + p 0 mob + p 1 radius + p 2 shortCircuit + p 3 pos + m ()V +c net/minecraft/world/entity/ai/util/GoalUtils cek net/minecraft/class_5493 + m (Lnet/minecraft/world/entity/Mob;)Z hasGroundPathNavigation a method_30955 + p 0 mob + m (Lnet/minecraft/world/entity/PathfinderMob;I)Z mobRestricted a method_31517 + c @return if a mob is stuck, within a certain radius beyond it's restriction radius + p 0 mob + p 1 radius + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isWater a method_31518 + c @return if the position is water in the mob's level + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/navigation/PathNavigation;Lnet/minecraft/core/BlockPos;)Z isNotStable a method_31519 + c @return if the destination can't be pathfinded to + p 0 navigation + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/PathfinderMob;)Z isOutsideLimits a method_31520 + c @return if a mob is above or below the map + p 0 pos + p 1 mob + m (ZLnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isRestricted a method_31521 + c @return if a mob is restricted. The first parameter short circuits the operation. + p 0 shortCircuit + p 1 mob + p 2 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z hasMalus b method_31522 + c @return if the pathfinding malus exists + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isSolid c method_31523 + c @return if the mob is standing on a solid material + p 0 mob + p 1 pos + m ()V +c net/minecraft/world/entity/ai/util/HoverRandomPos cel net/minecraft/class_5533 + m (Lnet/minecraft/world/entity/PathfinderMob;IIDDFII)Lnet/minecraft/world/phys/Vec3; getPos a method_31524 + c Tries to generate a random position a couple different ways, and if failing, sees if swimming vertically is an option. + p 0 mob + p 1 radius + p 2 yRange + p 3 x + p 5 z + p 7 amplifier + p 8 maxSwimUp + p 9 minSwimUp + m (Lnet/minecraft/world/entity/PathfinderMob;IIDDFZII)Lnet/minecraft/core/BlockPos; method_31525 a method_31525 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31526 a method_31526 + m ()V +c net/minecraft/world/entity/ai/util/LandRandomPos cem net/minecraft/class_5534 + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getPos a method_31527 + p 0 mob + p 1 radius + p 2 verticalRange + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31528 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/world/phys/Vec3; getPosInDirection a method_31529 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + p 4 shortCircuit + m (Lnet/minecraft/world/entity/PathfinderMob;IILjava/util/function/ToDoubleFunction;)Lnet/minecraft/world/phys/Vec3; getPos a method_31530 + p 0 mob + p 1 radius + p 2 yRange + p 3 toDoubleFunction + m (Lnet/minecraft/world/entity/PathfinderMob;IIZ)Lnet/minecraft/core/BlockPos; method_31531 a method_31531 + m (Lnet/minecraft/world/entity/PathfinderMob;IZLnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31532 + p 0 mob + p 1 radius + p 2 shortCircuit + p 3 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; movePosUpOutOfSolid a method_31533 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosAway b method_31534 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/core/BlockPos; method_31535 b method_31535 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31536 b method_31536 + m ()V +c net/minecraft/world/entity/ai/util/RandomPos cen net/minecraft/class_5535 + f I RANDOM_POS_ATTEMPTS a field_30264 + m (Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/core/BlockPos; generateRandomDirection a method_31541 + c Gets a random position within a certain distance. + p 0 random + p 1 horizontalDistance + p 2 verticalDistance + m (Lnet/minecraft/util/RandomSource;IIIDDD)Lnet/minecraft/core/BlockPos; generateRandomDirectionWithinRadians a method_31542 + c @return a random (x, y, z) coordinate by picking a point (x, z), adding a random angle, up to a difference of {@code maxAngleDelta}. The y position is randomly chosen from the range {@code [y - yRange, y + yRange]}. Will be {@code null} if the chosen coordinate is outside a distance of {@code maxHorizontalDistance} from the origin. + p 0 random + p 1 maxHorizontalDifference + c The maximum value in x and z, in absolute value, that could be returned. + p 2 yRange + c The range plus or minus the y position to be chosen + p 3 y + c The target y position + p 4 x + c The x offset to the target position + p 6 z + c The z offset to the target position + p 8 maxAngleDelta + c The maximum variance of the returned angle, from the base angle being a vector from (0, 0) to (x, z). + m (Lnet/minecraft/world/entity/PathfinderMob;ILnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31537 + c @return a random position within range, only if the mob is currently restricted + p 0 mob + p 1 range + p 2 random + p 3 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/util/function/Supplier;)Lnet/minecraft/world/phys/Vec3; generateRandomPos a method_31538 + p 0 mob + p 1 posSupplier + m (Ljava/util/function/Supplier;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/world/phys/Vec3; generateRandomPos a method_31543 + c Tries 10 times to maximize the return value of the position to double function based on the supplied position + p 0 posSupplier + p 1 toDoubleFunction + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/Predicate;)Lnet/minecraft/core/BlockPos; moveUpToAboveSolid a method_31539 + c Finds a position above based on the conditions.\n\nAfter it finds the position once, it will continue to move up until aboveSolidAmount is reached or the position is no longer valid + p 0 pos + p 1 aboveSolidAmount + p 2 maxY + p 3 posPredicate + m (Lnet/minecraft/core/BlockPos;ILjava/util/function/Predicate;)Lnet/minecraft/core/BlockPos; moveUpOutOfSolid a method_31540 + c @return the highest above position that is within the provided conditions + p 0 pos + p 1 maxY + p 2 posPredicate + m ()V +c net/minecraft/world/entity/ai/util/package-info ceo net/minecraft/class_6048 +c net/minecraft/world/entity/ai/village/ReputationEventType cep net/minecraft/class_4151 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; ZOMBIE_VILLAGER_CURED a field_18474 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; GOLEM_KILLED b field_18475 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; VILLAGER_HURT c field_18476 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; VILLAGER_KILLED d field_18477 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; TRADE e field_18478 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/ai/village/ReputationEventType; register a method_19109 + p 0 key + m ()V +c net/minecraft/world/entity/ai/village/ReputationEventType$1 cep$1 net/minecraft/class_4151$1 + f Ljava/lang/String; val$name f field_17066 + m (Ljava/lang/String;)V +c net/minecraft/world/entity/ai/village/VillageSiege ceq net/minecraft/class_1419 + f Lorg/slf4j/Logger; LOGGER a field_26390 + f Z hasSetupSiege b field_6725 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; siegeState c field_18479 + f I zombiesToSpawn d field_6723 + f I nextSpawnTime e field_6722 + f I spawnX f field_6721 + f I spawnY g field_6720 + f I spawnZ h field_6719 + m (Lnet/minecraft/server/level/ServerLevel;)Z tryToSetupSiege a method_6446 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; findRandomSpawnPos a method_6448 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;)V trySpawn b method_6447 + p 1 level + m ()V + m ()V +c net/minecraft/world/entity/ai/village/VillageSiege$State ceq$a net/minecraft/class_1419$class_4152 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_CAN_ACTIVATE a field_18480 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_TONIGHT b field_18481 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_DONE c field_18482 + f [Lnet/minecraft/world/entity/ai/village/VillageSiege$State; $VALUES d field_18483 + m ()[Lnet/minecraft/world/entity/ai/village/VillageSiege$State; $values a method_36628 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/village/package-info cer net/minecraft/class_6049 +c net/minecraft/world/entity/ai/village/poi/PoiManager ces net/minecraft/class_4153 + f I MAX_VILLAGE_DISTANCE a field_30265 + f I VILLAGE_SECTION_SIZE b field_30266 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$DistanceTracker; distanceTracker d field_18484 + f Lit/unimi/dsi/fastutil/longs/LongSet; loadedChunks e field_20688 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)Z existsAtPosition a method_26339 + p 1 type + p 2 pos + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_43978 a method_43978 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/BlockPos; method_19128 a method_19128 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_20592 a method_20592 + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/ChunkPos; method_22440 a method_22440 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Integer;)Ljava/util/Optional; method_19124 a method_19124 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/ChunkPos;)V method_22438 a method_22438 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;I)V ensureLoadedAndValid a method_22439 + p 1 levelReader + p 2 pos + p 3 coordinateOffset + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;)Z mayHavePoi a method_20345 + p 0 section + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;)V method_19511 a method_19511 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;)V method_20347 a method_20347 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)V method_20346 a method_20346 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Ljava/util/function/BiConsumer;)V updateFromSection a method_20348 + p 1 section + p 2 sectionPos + p 3 posToTypeConsumer + m (Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19512 a method_19512 + m (Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19130 a method_19130 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; method_19121 a method_19121 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Ljava/util/Optional;)Ljava/util/stream/Stream; method_19120 a method_19120 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_20004 a method_20004 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInChunk a method_19123 + p 1 typePredicate + p 2 posChunk + p 3 status + m (Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Lnet/minecraft/core/BlockPos;I)Ljava/util/Optional; take a method_19126 + p 1 typePredicate + p 2 combinedTypePosPredicate + p 3 pos + p 4 distance + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Lnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom a method_20005 + p 1 typePredicate + p 2 posPredicate + p 3 status + p 4 pos + p 5 distance + p 6 random + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAll a method_21647 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)J getCountInRange a method_20252 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)V remove a method_19112 + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19113 a method_19113 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)D method_43979 a method_43979 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Integer; method_35154 a method_35154 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;)D method_30956 a method_30956 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z exists a method_19116 + p 1 pos + p 2 typePredicate + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_19117 a method_19117 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_34711 a method_34711 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V add a method_19115 + p 1 pos + p 2 type + m (Lnet/minecraft/core/Holder;)Z method_43980 a method_43980 + m (Lnet/minecraft/core/SectionPos;)I sectionsToVillage a method_19118 + p 1 sectionPos + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V checkConsistencyWithBlocks a method_19510 + p 1 sectionPos + p 2 levelChunkSection + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lcom/mojang/datafixers/util/Pair; method_43981 b method_43981 + m (Lcom/mojang/datafixers/util/Pair;)Z method_22442 b method_22442 + m (Lnet/minecraft/world/level/ChunkPos;)Z method_22441 b method_22441 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Ljava/util/function/BiConsumer;)V method_20349 b method_20349 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_43982 b method_43982 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAllWithType b method_43983 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInSquare b method_22383 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Z release b method_19129 + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_30335 b method_30335 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/util/Optional; method_33580 b method_33580 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_20003 b method_20003 + m (Lnet/minecraft/core/SectionPos;)Lcom/mojang/datafixers/util/Pair; method_22443 b method_22443 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lcom/mojang/datafixers/util/Pair; method_43984 c method_43984 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAllClosestFirstWithType c method_30957 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInRange c method_19125 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getType c method_19132 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_33581 c method_33581 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; find d method_19127 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosest d method_20006 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)I getFreeTickets d method_35155 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)V method_33582 d method_33582 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosest e method_34712 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosestWithType e method_43985 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/IllegalStateException; method_33583 e method_33583 + m (J)Z isVillageCenter g method_19133 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync + p 5 registryAccess + p 6 errorReporter + p 7 levelHeightAccessor +c net/minecraft/world/entity/ai/village/poi/PoiManager$DistanceTracker ces$a net/minecraft/class_4153$class_4154 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager; field_18485 a field_18485 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; levels b field_18486 + m ()V runAllUpdates a method_19134 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;)V +c net/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy ces$b net/minecraft/class_4153$class_4155 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; HAS_SPACE a field_18487 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; IS_OCCUPIED b field_18488 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; ANY c field_18489 + f Ljava/util/function/Predicate; test d field_18490 + f [Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; $VALUES e field_18491 + m ()Ljava/util/function/Predicate; getTest a method_19135 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19136 a method_19136 + m ()[Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; $values b method_36629 + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 test + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiRecord cet net/minecraft/class_4156 + f Lnet/minecraft/core/BlockPos; pos a field_18492 + f Lnet/minecraft/core/Holder; poiType b field_18493 + f I freeTickets c field_18494 + f Ljava/lang/Runnable; setDirty d field_18495 + m ()I getFreeTickets a method_35156 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Ljava/lang/Integer; method_28358 a method_28358 + m (Ljava/lang/Runnable;)Lcom/mojang/serialization/Codec; codec a method_28359 + p 0 executable + m (Ljava/lang/Runnable;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28360 a method_28360 + m ()Z acquireTicket b method_19137 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/Holder; method_28361 b method_28361 + m ()Z releaseTicket c method_19138 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/BlockPos; method_28362 c method_28362 + m ()Z hasSpace d method_19139 + m ()Z isOccupied e method_19140 + m ()Lnet/minecraft/core/BlockPos; getPos f method_19141 + m ()Lnet/minecraft/core/Holder; getPoiType g method_19142 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;ILjava/lang/Runnable;)V + p 1 pos + p 2 poiType + p 3 freeTickets + p 4 setDirty + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Ljava/lang/Runnable;)V + p 1 pod + p 2 poiType + p 3 setDirty +c net/minecraft/world/entity/ai/village/poi/PoiSection ceu net/minecraft/class_4157 + f Lorg/slf4j/Logger; LOGGER a field_18496 + f Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap; records b field_18497 + f Ljava/util/Map; byType c field_18498 + f Ljava/lang/Runnable; setDirty d field_18499 + f Z isValid e field_19226 + m ()Z isValid a method_22444 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z add a method_20350 + p 1 record + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/util/List; method_28363 a method_28363 + m (Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_20352 a method_20352 + m (Ljava/lang/Runnable;)Lcom/mojang/serialization/Codec; codec a method_28364 + p 0 executable + m (Ljava/lang/Runnable;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28365 a method_28365 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19149 a method_19149 + m (Ljava/util/function/Consumer;)V refresh a method_20353 + p 1 posToTypeConsumer + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getRecords a method_19150 + p 1 typePredicate + p 2 status + m (Ljava/util/function/Predicate;Ljava/util/Map$Entry;)Z method_19151 a method_19151 + m (Lnet/minecraft/core/BlockPos;)V remove a method_19145 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z exists a method_19147 + p 1 pos + p 2 typePredicate + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V add a method_19146 + p 1 pos + p 2 type + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;S)Lnet/minecraft/world/entity/ai/village/poi/PoiRecord; method_20351 a method_20351 + m (Lnet/minecraft/core/Holder;)Ljava/util/Set; method_19143 a method_19143 + m ()V clear b method_20395 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_28366 b method_28366 + m (Ljava/lang/Runnable;)Lnet/minecraft/world/entity/ai/village/poi/PoiSection; method_28367 b method_28367 + m (Lnet/minecraft/core/BlockPos;)I getFreeTickets b method_35157 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z release c method_19153 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getType d method_19154 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getPoiRecord e method_33584 + p 1 pos + m (Ljava/lang/Runnable;)V + p 1 setDirty + m (Ljava/lang/Runnable;ZLjava/util/List;)V + p 1 setDirty + p 2 isValid + p 3 records + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiType cev net/minecraft/class_4158 + f Ljava/util/function/Predicate; NONE a field_39277 + f Ljava/util/Set; matchingStates b comp_815 + f I maxTickets c comp_816 + f I validRange d comp_817 + m ()Ljava/util/Set; matchingStates a comp_815 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z is a method_35159 + p 1 state + m (Lnet/minecraft/core/Holder;)Z method_43987 a method_43987 + m ()I maxTickets b comp_816 + m ()I validRange c comp_817 + m (Ljava/util/Set;II)V + p 1 matchingStates + p 2 maxTickets + p 3 validRange + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiTypes cew net/minecraft/class_7477 + f Lnet/minecraft/resources/ResourceKey; ARMORER a field_39278 + f Lnet/minecraft/resources/ResourceKey; BUTCHER b field_39279 + f Lnet/minecraft/resources/ResourceKey; CARTOGRAPHER c field_39280 + f Lnet/minecraft/resources/ResourceKey; CLERIC d field_39281 + f Lnet/minecraft/resources/ResourceKey; FARMER e field_39282 + f Lnet/minecraft/resources/ResourceKey; FISHERMAN f field_39283 + f Lnet/minecraft/resources/ResourceKey; FLETCHER g field_39284 + f Lnet/minecraft/resources/ResourceKey; LEATHERWORKER h field_39285 + f Lnet/minecraft/resources/ResourceKey; LIBRARIAN i field_39286 + f Lnet/minecraft/resources/ResourceKey; MASON j field_39287 + f Lnet/minecraft/resources/ResourceKey; SHEPHERD k field_39288 + f Lnet/minecraft/resources/ResourceKey; TOOLSMITH l field_39289 + f Lnet/minecraft/resources/ResourceKey; WEAPONSMITH m field_39290 + f Lnet/minecraft/resources/ResourceKey; HOME n field_39291 + f Lnet/minecraft/resources/ResourceKey; MEETING o field_39292 + f Lnet/minecraft/resources/ResourceKey; BEEHIVE p field_39293 + f Lnet/minecraft/resources/ResourceKey; BEE_NEST q field_39294 + f Lnet/minecraft/resources/ResourceKey; NETHER_PORTAL r field_39295 + f Lnet/minecraft/resources/ResourceKey; LODESTONE s field_39296 + f Lnet/minecraft/resources/ResourceKey; LIGHTNING_ROD t field_39297 + f Ljava/util/Set; BEDS u field_39299 + f Ljava/util/Set; CAULDRONS v field_39300 + f Ljava/util/Map; TYPE_BY_STATE w field_39301 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Set; getBlockStates a method_43988 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; forState a method_43989 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_43994 + p 0 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/BlockState;)V method_43991 a method_43991 + m (Lnet/minecraft/core/Holder;Ljava/util/Set;)V registerBlockStates a method_43990 + p 0 poi + p 1 states + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/ai/village/poi/PoiType; bootstrap a method_43992 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/util/Set;II)Lnet/minecraft/world/entity/ai/village/poi/PoiType; register a method_43993 + p 0 key + p 1 value + p 2 matchingStates + p 3 maxTickets + p 4 validRange + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_43995 b method_43995 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasPoi b method_46397 + p 0 state + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_43997 c method_43997 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43996 c method_43996 + m ()V + m ()V +c net/minecraft/world/entity/ai/village/poi/package-info cex net/minecraft/class_6050 +c net/minecraft/world/entity/ambient/AmbientCreature cey net/minecraft/class_1421 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/ambient/Bat cez net/minecraft/class_1420 + f F FLAP_LENGTH_SECONDS b field_46966 + f F TICKS_PER_FLAP c field_46967 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS cb field_6728 + f I FLAG_RESTING cc field_30269 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; BAT_RESTING_TARGETING cd field_18100 + f Lnet/minecraft/core/BlockPos; targetPosition ce field_6729 + f Lnet/minecraft/world/entity/AnimationState; flyAnimationState d field_46968 + f Lnet/minecraft/world/entity/AnimationState; restAnimationState e field_46969 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkBatSpawnRules b method_20661 + p 0 bat + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V setupAnimationStates gg method_54758 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26878 + m ()Z isResting t method_6450 + m ()Z isHalloween x method_6451 + m (Z)V setResting x method_6449 + p 1 isResting + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/ambient/package-info cfa net/minecraft/class_6051 +c net/minecraft/world/entity/animal/AbstractFish cfb net/minecraft/class_1422 + f Lnet/minecraft/network/syncher/EntityDataAccessor; FROM_BUCKET b field_6730 + m ()Z canRandomSwim gk method_6456 + m ()Lnet/minecraft/sounds/SoundEvent; getFlopSound gl method_6457 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26879 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/AbstractFish$FishMoveControl cfb$a net/minecraft/class_1422$class_1423 + f Lnet/minecraft/world/entity/animal/AbstractFish; fish l field_6731 + m (Lnet/minecraft/world/entity/animal/AbstractFish;)V + p 1 fish +c net/minecraft/world/entity/animal/AbstractFish$FishSwimGoal cfb$b net/minecraft/class_1422$class_1424 + f Lnet/minecraft/world/entity/animal/AbstractFish; fish i field_6732 + m (Lnet/minecraft/world/entity/animal/AbstractFish;)V + p 1 fish +c net/minecraft/world/entity/animal/AbstractGolem cfc net/minecraft/class_1427 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/AbstractSchoolingFish cfd net/minecraft/class_1425 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; leader b field_6734 + f I schoolSize c field_6733 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; startFollowing a method_6461 + p 1 leader + m (Ljava/util/stream/Stream;)V addFollowers a method_6468 + p 1 followers + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V method_6458 b method_6458 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6460 c method_6460 + m ()I getMaxSchoolSize gm method_6465 + m ()Z isFollower gn method_6470 + m ()V stopFollowing go method_6466 + m ()Z canBeFollowed gp method_6469 + m ()Z hasFollowers gq method_6467 + m ()Z inRangeOfLeader gr method_6464 + m ()V pathToLeader gs method_6463 + m ()V addFollower gt method_6462 + m ()V removeFollower gu method_6459 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/AbstractSchoolingFish$SchoolSpawnGroupData cfd$a net/minecraft/class_1425$class_1426 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; leader a field_6735 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V + p 1 leader +c net/minecraft/world/entity/animal/Animal cfe net/minecraft/class_1429 + f I inLove cc field_6745 + f Ljava/util/UUID; loveCause cd field_6744 + f I PARENT_AGE_AFTER_BREEDING cf field_30270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;)V spawnChildFromBreeding a method_24650 + p 1 level + p 2 mate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;)V finalizeSpawnChildFromBreeding a method_49794 + p 1 level + p 2 animal + p 3 baby + m (Lnet/minecraft/world/entity/animal/Animal;)Z canMate a method_6474 + c Returns {@code true} if the mob is currently able to mate with the specified mob. + p 1 otherAnimal + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/server/level/ServerPlayer;)V method_49795 a method_49795 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)V usePlayerItem a method_6475 + p 1 player + p 2 hand + p 3 stack + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)Z isBrightEnoughToSpawn a method_39448 + p 0 level + p 1 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAnimalSpawnRules b method_20663 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/Animal;)Ljava/util/Optional; method_49796 b method_49796 + m (Lnet/minecraft/world/entity/player/Player;)V setInLove f method_6480 + p 1 player + m ()Z canFallInLove gp method_6482 + m ()I getInLoveTime gq method_29270 + m ()Lnet/minecraft/server/level/ServerPlayer; getLoveCause gr method_6478 + m ()Z isInLove gs method_6479 + c Returns if the entity is currently in 'love mode'. + m ()V resetLove gt method_6477 + m (Lnet/minecraft/world/item/ItemStack;)Z isFood o method_6481 + c Checks if the parameter is an item which this animal can be fed to breed it (wheat, carrots or seeds depending on the animal type) + p 1 stack + m (I)V setInLoveTime s method_6476 + p 1 inLove + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Bee cff net/minecraft/class_4466 + f I PATHFIND_TO_HIVE_WHEN_CLOSER_THAN cA field_30293 + f I HIVE_SEARCH_DISTANCE cB field_30294 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cD field_25363 + f Ljava/util/UUID; persistentAngerTarget cE field_25364 + f F rollAmount cF field_20356 + f F rollAmountO cG field_20357 + f I timeSinceSting cH field_20358 + f I ticksWithoutNectarSinceExitingHive cI field_20359 + f I stayOutOfHiveCountdown cJ field_20360 + f I numCropsGrownSincePollination cK field_20361 + f I COOLDOWN_BEFORE_LOCATING_NEW_HIVE cL field_30274 + f I remainingCooldownBeforeLocatingNewHive cM field_21643 + f I COOLDOWN_BEFORE_LOCATING_NEW_FLOWER cN field_30275 + f I remainingCooldownBeforeLocatingNewFlower cO field_21644 + f Lnet/minecraft/core/BlockPos; savedFlowerPos cP field_20362 + f Lnet/minecraft/core/BlockPos; hivePos cQ field_20363 + f Lnet/minecraft/world/entity/animal/Bee$BeePollinateGoal; beePollinateGoal cR field_21079 + f Lnet/minecraft/world/entity/animal/Bee$BeeGoToHiveGoal; goToHiveGoal cS field_21645 + f Lnet/minecraft/world/entity/animal/Bee$BeeGoToKnownFlowerGoal; goToKnownFlowerGoal cT field_21646 + f I underWaterTicks cU field_21509 + f F FLAP_DEGREES_PER_TICK cc field_30271 + f I TICKS_PER_FLAP cd field_28638 + f Ljava/lang/String; TAG_CROPS_GROWN_SINCE_POLLINATION ce field_30272 + f Ljava/lang/String; TAG_CANNOT_ENTER_HIVE_TICKS cg field_30273 + f Ljava/lang/String; TAG_TICKS_SINCE_POLLINATION ch field_30276 + f Ljava/lang/String; TAG_HAS_STUNG ci field_30277 + f Ljava/lang/String; TAG_HAS_NECTAR cj field_30278 + f Ljava/lang/String; TAG_FLOWER_POS ck field_30279 + f Ljava/lang/String; TAG_HIVE_POS cl field_30280 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID cm field_20353 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_REMAINING_ANGER_TIME cn field_20354 + f I FLAG_ROLL co field_30281 + f I FLAG_HAS_STUNG cp field_30282 + f I FLAG_HAS_NECTAR cq field_30283 + f I STING_DEATH_COUNTDOWN cr field_30284 + f I TICKS_BEFORE_GOING_TO_KNOWN_FLOWER cs field_30285 + f I TICKS_WITHOUT_NECTAR_BEFORE_GOING_HOME ct field_30286 + f I MIN_ATTACK_DIST cu field_30287 + f I MAX_CROPS_GROWABLE cv field_30288 + f I POISON_SECONDS_NORMAL cw field_30289 + f I POISON_SECONDS_HARD cx field_30290 + f I TOO_FAR_DISTANCE cy field_30291 + f I HIVE_CLOSE_ENOUGH_DISTANCE cz field_30292 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21801 A method_21801 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21803 B method_21803 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_36630 C method_36630 + m (F)F getRollAmount H method_21811 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36631 a method_36631 + m (Lnet/minecraft/world/level/Level;DDDDDLnet/minecraft/core/particles/ParticleOptions;)V spawnFluidParticle a method_21769 + p 1 level + p 2 startX + p 4 endX + p 6 startZ + p 8 endZ + p 10 posY + p 12 particleOption + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Bee; getBreedOffspring b method_21771 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21765 b method_21765 + m (Lnet/minecraft/core/BlockPos;I)Z closerThan b method_23979 + p 1 pos + p 2 distance + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36632 c method_36632 + m (IZ)V setFlag d method_21775 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36633 d method_36633 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36634 e method_36634 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23989 f method_23989 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23991 g method_23991 + m ()Z wantsToEnterHive gA method_21789 + m ()V updateRollAmount gB method_21790 + m ()Z isHiveNearFire gC method_23984 + m ()I getCropsGrownSincePollination gD method_21792 + m ()V resetNumCropsGrownSincePollination gE method_21783 + m ()V incrementNumCropsGrownSincePollination gF method_21793 + m ()Z isHiveValid gG method_21794 + m ()Z isRolling gH method_21786 + m ()Ljava/util/List; getBlacklistedHives gk method_35162 + m ()V resetTicksWithoutNectarSinceExitingHive gl method_21780 + m ()Z hasHive gm method_21791 + m ()Lnet/minecraft/core/BlockPos; getHivePos gn method_23884 + m ()Lnet/minecraft/world/entity/ai/goal/GoalSelector; getGoalSelector go method_35163 + m ()Z hasNectar gu method_21784 + m ()Z hasStung gv method_21785 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gw method_26880 + m ()V dropOffNectar gy method_21788 + m ()Z isTiredOfLookingForNectar gz method_23983 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36635 h method_36635 + m (Lnet/minecraft/core/BlockPos;)V setSavedFlowerPos h method_21797 + p 1 savedFlowerPos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23994 i method_23994 + m (Lnet/minecraft/core/BlockPos;)V setHivePos i method_57301 + p 1 hivePos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23976 j method_23976 + m (Lnet/minecraft/core/BlockPos;)V pathfindRandomlyTowards j method_23987 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23999 k method_23999 + m (Lnet/minecraft/core/BlockPos;)Z doesHiveHaveSpace k method_23988 + p 1 hivePos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23980 l method_23980 + m (Lnet/minecraft/core/BlockPos;)Z isTooFarAway l method_23990 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23982 m method_23982 + m (Lnet/minecraft/core/BlockPos;)Z isFlowerValid m method_23992 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23985 n method_23985 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58363 n method_58363 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24000 o method_24000 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24001 p method_24001 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24002 q method_24002 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24003 r method_24003 + m ()Lnet/minecraft/core/BlockPos; getSavedFlowerPos s method_21778 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23967 s method_23967 + m ()Z hasSavedFlowerPos t method_21779 + m (I)V setStayOutOfHiveCountdown t method_21807 + p 1 stayOutOfHiveCountdown + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21795 t method_21795 + m (I)Z getFlag u method_21812 + p 1 flagId + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21796 u method_21796 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23993 v method_23993 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_23739 w method_23739 + m ()I getTravellingTicks x method_35161 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23995 x method_23995 + m (Z)V setHasNectar x method_21805 + p 1 hasNectar + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21798 y method_21798 + m (Z)V setHasStung y method_21806 + p 1 hasStung + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_23740 z method_23740 + m (Z)V setRolling z method_21808 + p 1 isRolling + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Bee$1 cff$1 net/minecraft/class_4466$1 + f Lnet/minecraft/world/entity/animal/Bee; field_20364 p field_20364 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/animal/Bee$BaseBeeGoal cff$a net/minecraft/class_4466$class_4467 + f Lnet/minecraft/world/entity/animal/Bee; field_20365 a field_20365 + m ()Z canBeeUse h method_21814 + m ()Z canBeeContinueToUse i method_21815 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeAttackGoal cff$b net/minecraft/class_4466$class_4468 + f Lnet/minecraft/world/entity/animal/Bee; field_20366 b field_20366 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 2 mob + p 3 speedModifier + p 5 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Bee$BeeBecomeAngryTargetGoal cff$c net/minecraft/class_4466$class_4469 + m ()Z beeCanTarget i method_21816 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 mob +c net/minecraft/world/entity/animal/Bee$BeeEnterHiveGoal cff$d net/minecraft/class_4466$class_4470 + f Lnet/minecraft/world/entity/animal/Bee; field_20367 b field_20367 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGoToHiveGoal cff$e net/minecraft/class_4466$class_4472 + f I MAX_TRAVELLING_TICKS b field_30295 + f Lnet/minecraft/world/entity/animal/Bee; field_20371 c field_20371 + f I travellingTicks d field_21647 + f I MAX_BLACKLISTED_TARGETS e field_30296 + f Ljava/util/List; blacklistedTargets f field_21648 + f Lnet/minecraft/world/level/pathfinder/Path; lastPath g field_21649 + f I TICKS_BEFORE_HIVE_DROP h field_30297 + f I ticksStuck i field_23133 + m (Lnet/minecraft/core/BlockPos;)Z pathfindDirectlyTowards a method_24006 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isTargetBlacklisted b method_24007 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V blacklistTarget c method_24009 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z hasReachedTarget d method_24010 + p 1 pos + m ()V clearBlacklist k method_24011 + m ()V dropAndBlacklistHive l method_24012 + m ()V dropHive m method_23885 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGoToKnownFlowerGoal cff$f net/minecraft/class_4466$class_4473 + f Lnet/minecraft/world/entity/animal/Bee; field_20372 b field_20372 + f I MAX_TRAVELLING_TICKS c field_30298 + f I travellingTicks d field_21650 + m ()Z wantsToGoToKnownFlower k method_24013 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGrowCropGoal cff$g net/minecraft/class_4466$class_4474 + f I GROW_CHANCE b field_30299 + f Lnet/minecraft/world/entity/animal/Bee; field_20373 c field_20373 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeHurtByOtherGoal cff$h net/minecraft/class_4466$class_4475 + f Lnet/minecraft/world/entity/animal/Bee; field_20374 a field_20374 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/animal/Bee;)V + p 2 mob +c net/minecraft/world/entity/animal/Bee$BeeLocateHiveGoal cff$i net/minecraft/class_4466$class_4476 + f Lnet/minecraft/world/entity/animal/Bee; field_20375 b field_20375 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_24015 a method_24015 + m (Lnet/minecraft/core/Holder;)Z method_23743 a method_23743 + m ()Ljava/util/List; findNearbyHivesWithSpace k method_23742 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeLookControl cff$j net/minecraft/class_4466$class_4477 + f Lnet/minecraft/world/entity/animal/Bee; field_20376 h field_20376 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/animal/Bee$BeePollinateGoal cff$k net/minecraft/class_4466$class_4478 + f Lnet/minecraft/world/entity/animal/Bee; field_20377 b field_20377 + f I MIN_POLLINATION_TICKS c field_30300 + f I MIN_FIND_FLOWER_RETRY_COOLDOWN d field_30301 + f I MAX_FIND_FLOWER_RETRY_COOLDOWN e field_30302 + f Ljava/util/function/Predicate; VALID_POLLINATION_BLOCKS f field_20617 + f D ARRIVAL_THRESHOLD g field_30303 + f I POSITION_CHANGE_CHANCE h field_30304 + f F SPEED_MODIFIER i field_30305 + f F HOVER_HEIGHT_WITHIN_FLOWER j field_30306 + f F HOVER_POS_OFFSET k field_30307 + f I successfulPollinatingTicks l field_20378 + f I lastSoundPlayedTick m field_20379 + f Z pollinating n field_21080 + f Lnet/minecraft/world/phys/Vec3; hoverPos o field_21511 + f I pollinatingTicks p field_21651 + f I MAX_POLLINATING_TICKS q field_30308 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_21819 a method_21819 + m (Ljava/util/function/Predicate;D)Ljava/util/Optional; findNearestBlock a method_22326 + p 1 predicate + p 2 distance + m ()Z hasPollinatedLongEnough k method_21820 + m ()Z isPollinating l method_23346 + m ()V stopPollinating m method_23748 + m ()V setWantedPos n method_23749 + m ()F getOffset o method_23750 + m ()Ljava/util/Optional; findNearbyFlower p method_21821 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeWanderGoal cff$l net/minecraft/class_4466$class_4479 + f Lnet/minecraft/world/entity/animal/Bee; field_20380 a field_20380 + f I WANDER_THRESHOLD b field_30309 + m ()Lnet/minecraft/world/phys/Vec3; findPos h method_21822 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bucketable cfg net/minecraft/class_5761 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;)V saveDefaultDataToBucketTag a method_35167 + p 0 mob + p 1 bucket + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/nbt/CompoundTag;)V loadDefaultDataFromBucketTag a method_35168 + p 0 mob + p 1 tag + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; bucketMobPickup a method_35169 + p 0 player + p 1 hand + p 2 entity + m ()Lnet/minecraft/world/item/ItemStack; getBucketItemStack b method_6452 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/nbt/CompoundTag;)V method_57302 b method_57302 + m (Lnet/minecraft/nbt/CompoundTag;)V loadFromBucketTag h method_35170 + p 1 tag + m (Lnet/minecraft/world/item/ItemStack;)V saveToBucketTag n method_6455 + p 1 stack + m ()Z fromBucket t method_6453 + m ()Lnet/minecraft/sounds/SoundEvent; getPickupSound x method_35171 + m (Z)V setFromBucket x method_6454 + p 1 fromBucket +c net/minecraft/world/entity/animal/Cat cfh net/minecraft/class_1451 + f D TEMPT_SPEED_MOD cg field_30310 + f D WALK_SPEED_MOD ch field_30311 + f D SPRINT_SPEED_MOD ci field_30312 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID cj field_6811 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_LYING ck field_16284 + f Lnet/minecraft/network/syncher/EntityDataAccessor; RELAX_STATE_ONE cl field_16292 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLLAR_COLOR cm field_16285 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_VARIANT cn field_49979 + f Lnet/minecraft/world/entity/animal/Cat$CatAvoidEntityGoal; avoidPlayersGoal co field_6808 + f Lnet/minecraft/world/entity/ai/goal/TemptGoal; temptGoal cp field_6810 + f F lieDownAmount cq field_16290 + f F lieDownAmountO cr field_16291 + f F lieDownAmountTail cs field_16288 + f F lieDownAmountOTail ct field_16289 + f F relaxStateOneAmount cu field_16286 + f F relaxStateOneAmountO cv field_16287 + m (Z)V setLying A method_16088 + p 1 lying + m (Z)V setRelaxStateOne B method_16087 + p 1 relaxStateOne + m (F)F getLieDownAmount H method_16082 + p 1 partialTicks + m (F)F getLieDownAmountTail I method_16091 + p 1 partialTicks + m (F)F getRelaxStateOneAmount J method_16095 + p 1 partialTicks + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58364 a method_58364 + m (Lnet/minecraft/world/item/DyeColor;)V setCollarColor a method_16094 + p 1 color + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Cat; getBreedOffspring b method_6573 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/player/Player;)V tryToTame g method_58168 + p 1 player + m ()V reassessTameGoals gA method_6175 + m ()Z isRelaxStateOne gB method_16093 + m ()V handleLieDown gC method_16085 + m ()V updateLieDownAmount gD method_16090 + m ()V updateRelaxStateOneAmount gE method_16084 + m ()Lnet/minecraft/resources/ResourceLocation; getTextureId gu method_16092 + m ()Lnet/minecraft/core/Holder; getVariant gv method_47843 + m ()Z isLying gw method_16086 + m ()Lnet/minecraft/world/item/DyeColor; getCollarColor gx method_16096 + m ()V hiss gy method_16089 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gz method_26881 + m (Lnet/minecraft/core/Holder;)V setVariant i method_47842 + p 1 variant + m (Lnet/minecraft/world/item/ItemStack;)Z method_58365 n method_58365 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Cat$CatAvoidEntityGoal cfh$a net/minecraft/class_1451$class_3698 + f Lnet/minecraft/world/entity/animal/Cat; cat i field_16293 + m (Lnet/minecraft/world/entity/animal/Cat;Ljava/lang/Class;FDD)V + p 1 cat + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Cat$CatRelaxOnOwnerGoal cfh$b net/minecraft/class_1451$class_3699 + f Lnet/minecraft/world/entity/animal/Cat; cat a field_16297 + f Lnet/minecraft/world/entity/player/Player; ownerPlayer b field_16295 + f Lnet/minecraft/core/BlockPos; goalPos c field_16294 + f I onBedTicks d field_16296 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; method_27800 a method_27800 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; method_27801 a method_27801 + m ()Z spaceIsOccupied h method_16098 + m ()V giveMorningGift i method_16097 + m (Lnet/minecraft/world/entity/animal/Cat;)V + p 1 cat +c net/minecraft/world/entity/animal/Cat$CatTemptGoal cfh$c net/minecraft/class_1451$class_3700 + f Lnet/minecraft/world/entity/player/Player; selectedPlayer c field_16298 + f Lnet/minecraft/world/entity/animal/Cat; cat d field_17948 + m (Lnet/minecraft/world/entity/animal/Cat;DLjava/util/function/Predicate;Z)V + p 1 cat + p 2 speedModifier + p 4 items + p 5 canScare +c net/minecraft/world/entity/animal/CatVariant cfi net/minecraft/class_7375 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51941 + f Lnet/minecraft/resources/ResourceKey; TABBY b field_38709 + f Lnet/minecraft/resources/ResourceKey; BLACK c field_38710 + f Lnet/minecraft/resources/ResourceKey; RED d field_38711 + f Lnet/minecraft/resources/ResourceKey; SIAMESE e field_38712 + f Lnet/minecraft/resources/ResourceKey; BRITISH_SHORTHAIR f field_38713 + f Lnet/minecraft/resources/ResourceKey; CALICO g field_38714 + f Lnet/minecraft/resources/ResourceKey; PERSIAN h field_38715 + f Lnet/minecraft/resources/ResourceKey; RAGDOLL i field_38716 + f Lnet/minecraft/resources/ResourceKey; WHITE j field_38717 + f Lnet/minecraft/resources/ResourceKey; JELLIE k field_38718 + f Lnet/minecraft/resources/ResourceKey; ALL_BLACK l field_38719 + f Lnet/minecraft/resources/ResourceLocation; texture m comp_706 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_706 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46647 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/animal/CatVariant; bootstrap a method_46646 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/entity/animal/CatVariant; register a method_43090 + p 0 registry + p 1 key + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/animal/Chicken cfj net/minecraft/class_1428 + f F flap cc field_6741 + f F flapSpeed cd field_6743 + f F oFlapSpeed ce field_6738 + f F oFlap cg field_6736 + f F flapping ch field_6737 + f I eggTime ci field_6739 + f Z isChickenJockey cj field_6740 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ck field_47770 + f F nextFlap cl field_28639 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Chicken; getBreedOffspring b method_6471 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58366 n method_58366 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26882 + m ()Z isChickenJockey t method_6472 + c Determines if this chicken is a jokey with a zombie riding it. + m (Z)V setChickenJockey x method_6473 + c Sets whether this chicken is a jockey or not. + p 1 isChickenJockey + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Cod cfk net/minecraft/class_1431 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Cow cfl net/minecraft/class_1430 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cc field_47771 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Cow; getBreedOffspring b method_6483 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58367 n method_58367 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26883 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Dolphin cfm net/minecraft/class_1433 + f I TOTAL_AIR_SUPPLY b field_30326 + f Ljava/util/function/Predicate; ALLOWED_ITEMS c field_6748 + f Lnet/minecraft/network/syncher/EntityDataAccessor; MOISTNESS_LEVEL cc field_6749 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; SWIM_WITH_PLAYER_TARGETING cd field_18101 + f I TOTAL_MOISTNESS_LEVEL ce field_30327 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TREASURE_POS d field_6747 + f Lnet/minecraft/network/syncher/EntityDataAccessor; GOT_FISH e field_6750 + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_18055 a method_18055 + m (Lnet/minecraft/core/particles/ParticleOptions;)V addParticlesAroundSelf a method_6492 + p 1 particleOption + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_6488 b method_6488 + m (I)V setMoisntessLevel c method_6489 + p 1 moistnessLevel + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_18054 c method_18054 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_6485 c method_6485 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26884 + m ()Z closeToNextPos gl method_6484 + m (Lnet/minecraft/core/BlockPos;)V setTreasurePos h method_6493 + p 1 pos + m ()Lnet/minecraft/core/BlockPos; getTreasurePos s method_6494 + m ()Z gotFish t method_6487 + m ()I getMoistnessLevel x method_6491 + m (Z)V setGotFish x method_6486 + p 1 gotFish + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Dolphin$DolphinSwimToTreasureGoal cfm$a net/minecraft/class_1433$class_1435 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin a field_6752 + f Z stuck b field_6753 + m (Lnet/minecraft/world/entity/animal/Dolphin;)V + p 1 dolphin +c net/minecraft/world/entity/animal/Dolphin$DolphinSwimWithPlayerGoal cfm$b net/minecraft/class_1433$class_1436 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin a field_6755 + f D speedModifier b field_6754 + f Lnet/minecraft/world/entity/player/Player; player c field_6756 + m (Lnet/minecraft/world/entity/animal/Dolphin;D)V + p 1 dolphin + p 2 speedModifier +c net/minecraft/world/entity/animal/Dolphin$PlayWithItemsGoal cfm$c net/minecraft/class_1433$class_1437 + f Lnet/minecraft/world/entity/animal/Dolphin; field_6757 a field_6757 + f I cooldown b field_6758 + m (Lnet/minecraft/world/item/ItemStack;)V drop a method_18056 + p 1 stack + m (Lnet/minecraft/world/entity/animal/Dolphin;)V +c net/minecraft/world/entity/animal/FlyingAnimal cfn net/minecraft/class_1432 + m ()Z isFlying gx method_6581 +c net/minecraft/world/entity/animal/Fox cfo net/minecraft/class_4019 + f F crouchAmountO cA field_17963 + f I ticksSinceEaten cB field_17964 + f I FLAG_CROUCHING cc field_30328 + f I FLAG_INTERESTED cd field_30329 + f I FLAG_POUNCING ce field_30330 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE_ID cg field_17949 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID ch field_17950 + f I FLAG_SITTING ci field_30331 + f I FLAG_SLEEPING cj field_30332 + f I FLAG_FACEPLANTED ck field_30333 + f I FLAG_DEFENDING cl field_30334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTED_ID_0 cm field_17951 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTED_ID_1 cn field_17952 + f Ljava/util/function/Predicate; ALLOWED_ITEMS co field_17953 + f Ljava/util/function/Predicate; TRUSTED_TARGET_SELECTOR cp field_17954 + f Ljava/util/function/Predicate; STALKABLE_PREY cq field_17955 + f Ljava/util/function/Predicate; AVOID_PLAYERS cr field_17956 + f I MIN_TICKS_BEFORE_EAT cs field_30335 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ct field_47772 + f Lnet/minecraft/world/entity/ai/goal/Goal; landTargetGoal cu field_17957 + f Lnet/minecraft/world/entity/ai/goal/Goal; turtleEggTargetGoal cv field_17958 + f Lnet/minecraft/world/entity/ai/goal/Goal; fishTargetGoal cw field_17959 + f F interestedAngle cx field_17960 + f F interestedAngleO cy field_17961 + f F crouchAmount cz field_17962 + m (Z)V setIsInterested A method_18299 + p 1 isInterested + m (Z)V setFaceplanted B method_18295 + p 1 faceplanted + m (Z)V setDefending C method_18301 + p 1 defending + m (Z)V setSleeping D method_18302 + p 1 sleeping + m (F)F getHeadRollAngle H method_18298 + p 1 partialTick + m (F)F getCrouchAmount I method_18300 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Fox$Type;)V setVariant a method_47844 + p 1 variant + m (Lnet/minecraft/world/entity/animal/Fox;)Z method_36636 a method_36636 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/LivingEntity;)Z isPathClear a method_18257 + p 0 fox + p 1 livingEntity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Fox; getBreedOffspring b method_18260 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18287 b method_18287 + m (Ljava/util/UUID;)V addTrustedUUID b method_18266 + p 1 uuid + m (Lnet/minecraft/world/entity/Entity;)Z method_18253 c method_18253 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkFoxSpawnRules c method_39449 + p 0 fox + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18288 c method_18288 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_18265 c method_18265 + m (Ljava/util/UUID;)Z trusts c method_18428 + p 1 uuid + m (IZ)V setFlag d method_18269 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/Entity;)Z method_18261 d method_18261 + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18290 d method_18290 + m (Lnet/minecraft/world/entity/Entity;)Z method_18267 e method_18267 + m ()Z isFaceplanted gk method_18273 + m ()Z isPouncing gl method_18274 + m ()Z isJumping gm method_35172 + m ()Z isFullyCrouched gn method_18275 + m ()Z isInterested go method_18277 + m ()V setTargetGoals gu method_18280 + m ()Ljava/util/List; getTrustedUUIDs gv method_18281 + m ()Z isDefending gw method_18282 + m ()V wakeUp gx method_18283 + m ()V clearStates gy method_18284 + m ()Z canMove gz method_18285 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18429 j method_18429 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_24347 k method_24347 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_20451 l method_20451 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18431 m method_18431 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18254 n method_18254 + m (Lnet/minecraft/world/item/ItemStack;)Z canEat n method_18430 + p 1 stack + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18262 o method_18262 + m (Lnet/minecraft/world/item/ItemStack;)V spitOutItem p method_18289 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V dropItemStack q method_18291 + p 1 stack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26885 + m ()Lnet/minecraft/world/entity/animal/Fox$Type; getVariant t method_47845 + m (I)Z getFlag t method_18293 + p 1 flagId + m ()Z isSitting x method_18272 + m (Z)V setSitting x method_18294 + p 1 sitting + m (Z)V setIsPouncing y method_18296 + p 1 isPouncing + m (Z)V setIsCrouching z method_18297 + p 1 isCrouching + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Fox$DefendTrustedTargetGoal cfo$a net/minecraft/class_4019$class_4020 + f Lnet/minecraft/world/entity/animal/Fox; field_17965 i field_17965 + f Lnet/minecraft/world/entity/LivingEntity; trustedLastHurtBy j field_17966 + f Lnet/minecraft/world/entity/LivingEntity; trustedLastHurt k field_17967 + f I timestamp l field_17968 + m (Lnet/minecraft/world/entity/animal/Fox;Ljava/lang/Class;ZZLjava/util/function/Predicate;)V + p 2 targetType + p 3 mustSee + p 4 mustReach + p 5 predicate +c net/minecraft/world/entity/animal/Fox$FaceplantGoal cfo$b net/minecraft/class_4019$class_4021 + f I countdown a field_17969 + f Lnet/minecraft/world/entity/animal/Fox; field_17970 b field_17970 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxAlertableEntitiesSelector cfo$c net/minecraft/class_4019$class_4022 + f Lnet/minecraft/world/entity/animal/Fox; field_17971 a field_17971 + m (Lnet/minecraft/world/entity/LivingEntity;)Z test a method_18303 + p 1 entity + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxBehaviorGoal cfo$d net/minecraft/class_4019$class_4023 + f Lnet/minecraft/world/entity/animal/Fox; field_17972 a field_17972 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; alertableTargeting b field_18102 + m ()Z hasShelter h method_18305 + m ()Z alertable i method_18306 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxBreedGoal cfo$e net/minecraft/class_4019$class_4024 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxEatBerriesGoal cfo$f net/minecraft/class_4019$class_4025 + f I ticksWaited g field_17974 + f Lnet/minecraft/world/entity/animal/Fox; field_17975 h field_17975 + f I WAIT_TICKS i field_30336 + m (Lnet/minecraft/world/level/block/state/BlockState;)V pickGlowBerry a method_33586 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)V pickSweetBerries b method_33587 + p 1 state + m ()V onReachedTarget o method_18307 + m (Lnet/minecraft/world/entity/animal/Fox;DII)V + p 2 speedModifier + p 4 searchRange + p 5 verticalSearchRange +c net/minecraft/world/entity/animal/Fox$FoxFloatGoal cfo$g net/minecraft/class_4019$class_4026 + f Lnet/minecraft/world/entity/animal/Fox; field_17976 a field_17976 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxFollowParentGoal cfo$h net/minecraft/class_4019$class_4052 + f Lnet/minecraft/world/entity/animal/Fox; fox d field_18104 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 fox + p 3 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxGroupData cfo$i net/minecraft/class_4019$class_4027 + f Lnet/minecraft/world/entity/animal/Fox$Type; type a field_17977 + m (Lnet/minecraft/world/entity/animal/Fox$Type;)V + p 1 type +c net/minecraft/world/entity/animal/Fox$FoxLookAtPlayerGoal cfo$j net/minecraft/class_4019$class_4292 + f Lnet/minecraft/world/entity/animal/Fox; field_19261 h field_19261 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + p 2 mob + p 3 lookAtType + p 4 lookDistance +c net/minecraft/world/entity/animal/Fox$FoxLookControl cfo$k net/minecraft/class_4019$class_4028 + f Lnet/minecraft/world/entity/animal/Fox; field_17979 h field_17979 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxMeleeAttackGoal cfo$l net/minecraft/class_4019$class_4029 + f Lnet/minecraft/world/entity/animal/Fox; field_17980 b field_17980 + m (Lnet/minecraft/world/entity/animal/Fox;DZ)V + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Fox$FoxMoveControl cfo$m net/minecraft/class_4019$class_4030 + f Lnet/minecraft/world/entity/animal/Fox; field_17981 l field_17981 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxPanicGoal cfo$n net/minecraft/class_4019$class_4032 + f Lnet/minecraft/world/entity/animal/Fox; field_17983 a field_17983 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxPounceGoal cfo$o net/minecraft/class_4019$class_4033 + f Lnet/minecraft/world/entity/animal/Fox; field_17984 a field_17984 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxSearchForItemsGoal cfo$p net/minecraft/class_4019$class_4034 + f Lnet/minecraft/world/entity/animal/Fox; field_17985 a field_17985 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxStrollThroughVillageGoal cfo$q net/minecraft/class_4019$class_4031 + f Lnet/minecraft/world/entity/animal/Fox; field_17982 a field_17982 + m ()Z canFoxMove h method_18308 + m (Lnet/minecraft/world/entity/animal/Fox;II)V + p 2 unused32 + p 3 interval +c net/minecraft/world/entity/animal/Fox$PerchAndSearchGoal cfo$r net/minecraft/class_4019$class_4035 + f Lnet/minecraft/world/entity/animal/Fox; field_17986 b field_17986 + f D relX c field_17987 + f D relZ d field_17988 + f I lookTime e field_17989 + f I looksRemaining f field_17990 + m ()V resetLook k method_18309 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$SeekShelterGoal cfo$s net/minecraft/class_4019$class_4036 + f Lnet/minecraft/world/entity/animal/Fox; field_17991 b field_17991 + f I interval c field_17992 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$SleepGoal cfo$t net/minecraft/class_4019$class_4037 + f Lnet/minecraft/world/entity/animal/Fox; field_17993 b field_17993 + f I WAIT_TIME_BEFORE_SLEEP c field_30337 + f I countdown d field_17994 + m ()Z canSleep k method_18432 + m (Lnet/minecraft/world/entity/animal/Fox;)V + m ()V +c net/minecraft/world/entity/animal/Fox$StalkPreyGoal cfo$u net/minecraft/class_4019$class_4038 + f Lnet/minecraft/world/entity/animal/Fox; field_17995 a field_17995 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$Type cfo$v net/minecraft/class_4019$class_4039 + f Lnet/minecraft/world/entity/animal/Fox$Type; RED a field_17996 + f Lnet/minecraft/world/entity/animal/Fox$Type; SNOW b field_17997 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41548 + f Ljava/util/function/IntFunction; BY_ID d field_17998 + f I id e field_18000 + f Ljava/lang/String; name f field_18001 + f [Lnet/minecraft/world/entity/animal/Fox$Type; $VALUES g field_18003 + m ()I getId a method_18317 + m (I)Lnet/minecraft/world/entity/animal/Fox$Type; byId a method_18311 + p 0 index + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/Fox$Type; byName a method_18314 + p 0 name + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/animal/Fox$Type; byBiome a method_18313 + p 0 biome + m ()[Lnet/minecraft/world/entity/animal/Fox$Type; $values b method_36637 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/FrogVariant cfp net/minecraft/class_7106 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51942 + f Lnet/minecraft/resources/ResourceKey; TEMPERATE b field_37462 + f Lnet/minecraft/resources/ResourceKey; WARM c field_37463 + f Lnet/minecraft/resources/ResourceKey; COLD d field_37464 + f Lnet/minecraft/resources/ResourceLocation; texture e comp_707 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_707 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_58368 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/animal/FrogVariant; bootstrap a method_58369 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/entity/animal/FrogVariant; register a method_43091 + p 0 registry + p 1 key + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/animal/IronGolem cfq net/minecraft/class_1439 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID c field_6763 + f I offerFlowerTick cc field_6759 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cd field_25365 + f I remainingPersistentAngerTime ce field_25366 + f Ljava/util/UUID; persistentAngerTarget cf field_25367 + f I IRON_INGOT_HEAL_AMOUNT d field_30338 + f I attackAnimationTick e field_6762 + m ()I getOfferFlowerTick gk method_6502 + m ()Z isPlayerCreated gl method_6496 + m ()F getAttackDamage gm method_22328 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6498 j method_6498 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26886 + m ()Lnet/minecraft/world/entity/Crackiness$Level; getCrackiness t method_23347 + m ()I getAttackAnimationTick x method_6501 + m (Z)V offerFlower x method_6497 + p 1 offeringFlower + m (Z)V setPlayerCreated y method_6499 + p 1 playerCreated + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/MushroomCow cfr net/minecraft/class_1438 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE cc field_18105 + f I MUTATE_CHANCE cd field_30339 + f Ljava/lang/String; TAG_STEW_EFFECTS ce field_45751 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; stewEffects cg field_45752 + f Ljava/util/UUID; lastLightningBoltUUID ch field_18108 + c Stores the UUID of the most recent lightning bolt to strike + m (Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType;)V setVariant a method_47846 + p 1 variant + m (Lnet/minecraft/world/entity/animal/MushroomCow;)Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; getOffspringType a method_18434 + p 1 mate + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;)V method_53155 a method_53155 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_53154 a method_53154 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/MushroomCow; getBreedOffspring c method_6495 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMushroomSpawnRules c method_20665 + p 0 mushroomCow + p 1 level + p 2 spawnType + p 3 pos + p 4 randomSource + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getEffectsFromItemStack n method_18436 + p 1 stack + m ()Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; getVariant t method_47847 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/MushroomCow$MushroomType cfr$a net/minecraft/class_1438$class_4053 + f Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; RED a field_18109 + f Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; BROWN b field_18110 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41549 + f Ljava/lang/String; type d field_18111 + f Lnet/minecraft/world/level/block/state/BlockState; blockState e field_18112 + f [Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; $VALUES f field_18113 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_18437 + c A block state that is rendered on the back of the mooshroom. + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; byType a method_18441 + p 0 name + m ()[Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; $values b method_36639 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/state/BlockState;)V + p 3 type + p 4 blockState + m ()V +c net/minecraft/world/entity/animal/Ocelot cfs net/minecraft/class_3701 + f D CROUCH_SPEED_MOD cc field_30340 + f D WALK_SPEED_MOD cd field_30341 + f D SPRINT_SPEED_MOD ce field_30342 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTING cg field_16301 + f Lnet/minecraft/world/entity/animal/Ocelot$OcelotAvoidEntityGoal; ocelotAvoidPlayersGoal ch field_16300 + f Lnet/minecraft/world/entity/animal/Ocelot$OcelotTemptGoal; temptGoal ci field_16302 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Ocelot; getBreedOffspring b method_16104 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkOcelotSpawnRules c method_20666 + p 0 ocelot + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58370 n method_58370 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26887 + m ()V reassessTrustingGoals t method_16103 + m ()Z isTrusting x method_16099 + m (Z)V setTrusting x method_16102 + p 1 trusting + m (Z)V spawnTrustingParticles y method_16100 + p 1 isTrusted + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Ocelot$OcelotAvoidEntityGoal cfs$a net/minecraft/class_3701$class_3702 + f Lnet/minecraft/world/entity/animal/Ocelot; ocelot i field_16303 + m (Lnet/minecraft/world/entity/animal/Ocelot;Ljava/lang/Class;FDD)V + p 1 ocelot + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Ocelot$OcelotTemptGoal cfs$b net/minecraft/class_3701$class_3703 + f Lnet/minecraft/world/entity/animal/Ocelot; ocelot c field_16304 + m (Lnet/minecraft/world/entity/animal/Ocelot;DLjava/util/function/Predicate;Z)V + p 1 ocelot + p 2 speedModifier + p 4 items + p 5 canScare +c net/minecraft/world/entity/animal/Panda cft net/minecraft/class_1440 + f F rollAmount cA field_6772 + f F rollAmountO cB field_6773 + f Lnet/minecraft/world/entity/animal/Panda$PandaLookAtPlayerGoal; lookAtPlayerGoal cD field_21804 + f Ljava/util/function/Predicate; PANDA_ITEMS cE field_6765 + f I TOTAL_ROLL_STEPS cc field_30343 + f I rollCounter cd field_6767 + f Lnet/minecraft/network/syncher/EntityDataAccessor; UNHAPPY_COUNTER ce field_6764 + f Lnet/minecraft/network/syncher/EntityDataAccessor; SNEEZE_COUNTER cg field_6771 + f Lnet/minecraft/network/syncher/EntityDataAccessor; EAT_COUNTER ch field_6780 + f Lnet/minecraft/network/syncher/EntityDataAccessor; MAIN_GENE_ID ci field_6766 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HIDDEN_GENE_ID cj field_6781 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS ck field_6768 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; BREED_TARGETING cl field_21803 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cm field_47773 + f I FLAG_SNEEZE cn field_30344 + f I FLAG_ROLL co field_30345 + f I FLAG_SIT cp field_30346 + f I FLAG_ON_BACK cq field_30347 + f I EAT_TICK_INTERVAL cr field_30348 + f I TOTAL_UNHAPPY_TIME cs field_30349 + f Z gotBamboo ct field_6769 + f Z didBite cu field_6770 + f Lnet/minecraft/world/phys/Vec3; rollDelta cv field_18277 + f F sitAmount cw field_6777 + f F sitAmountO cx field_6779 + f F onBackAmount cy field_6774 + f F onBackAmountO cz field_6775 + m (Z)V sneeze A method_6546 + p 1 sneezing + m (Z)V roll B method_6541 + p 1 rolling + m (F)F getSitAmount H method_6534 + p 1 partialTick + m (F)F getLieOnBackAmount I method_6555 + p 1 partialTick + m (F)F getRollAmount J method_6560 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Panda$Gene;)V setMainGene a method_6529 + p 1 pandaType + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_36640 a method_36640 + m (Lnet/minecraft/world/entity/animal/Panda;Lnet/minecraft/world/entity/animal/Panda;)V setGeneFromParents a method_6515 + p 1 father + p 2 mother + m (Lnet/minecraft/world/entity/animal/Panda$Gene;)V setHiddenGene b method_6547 + p 1 pandaType + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_24838 b method_24838 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6551 c method_6551 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_6504 c method_6504 + m (IZ)V setFlag d method_6557 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6556 d method_6556 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6559 e method_6559 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6507 f method_6507 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_36641 g method_36641 + m ()Z isBrown gA method_35173 + m ()Z isWeak gB method_6550 + m ()Z isScared gC method_6524 + m ()V setAttributes gD method_6538 + m ()Z canPerformAction gE method_18442 + m ()I getEatCounter gF method_6528 + m ()V handleEating gG method_6536 + m ()V addEatingParticles gH method_6512 + m ()V updateSitAmount gI method_6544 + m ()V updateOnBackAnimation gJ method_6503 + m ()V updateRollAmount gK method_6523 + m ()V handleRoll gL method_6537 + m ()V afterSneeze gM method_6548 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getOneOfGenesRandomly gN method_6519 + m ()V tryToSit gO method_18057 + m ()Z isOnBack gk method_6514 + m ()Z isEating gl method_6527 + m ()I getSneezeCounter gm method_6532 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getMainGene gn method_6525 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getHiddenGene go method_6508 + m ()Z isRolling gu method_6526 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gv method_26888 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getVariant gw method_6554 + m ()Z isLazy gx method_6549 + m ()Z isWorried gy method_6509 + m ()Z isPlayful gz method_6522 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6542 h method_6542 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6511 i method_6511 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6531 j method_6531 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6506 k method_6506 + m (Lnet/minecraft/world/item/ItemStack;)Z isFoodOrCake n method_16106 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_58371 p method_58371 + m ()I getUnhappyCounter s method_6521 + m ()Z isSneezing t method_6545 + m (I)V setUnhappyCounter t method_6517 + p 1 unhappyCounter + m (I)V setSneezeCounter u method_6539 + p 1 sneezeCounter + m (I)V setEatCounter v method_6558 + p 1 eatCounter + m (I)Z getFlag w method_6533 + p 1 flag + m ()Z isSitting x method_6535 + m (Z)V sit x method_6513 + p 1 sitting + m (Z)V setOnBack y method_6505 + p 1 onBack + m (Z)V eat z method_6552 + p 1 eating + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Panda$Gene cft$a net/minecraft/class_1440$class_1443 + f Lnet/minecraft/world/entity/animal/Panda$Gene; NORMAL a field_6788 + f Lnet/minecraft/world/entity/animal/Panda$Gene; LAZY b field_6794 + f Lnet/minecraft/world/entity/animal/Panda$Gene; WORRIED c field_6795 + f Lnet/minecraft/world/entity/animal/Panda$Gene; PLAYFUL d field_6791 + f Lnet/minecraft/world/entity/animal/Panda$Gene; BROWN e field_6792 + f Lnet/minecraft/world/entity/animal/Panda$Gene; WEAK f field_6793 + f Lnet/minecraft/world/entity/animal/Panda$Gene; AGGRESSIVE g field_6789 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC h field_41673 + f Ljava/util/function/IntFunction; BY_ID i field_6786 + f I MAX_GENE j field_30350 + f I id k field_6785 + f Ljava/lang/String; name l field_6797 + f Z isRecessive m field_6790 + f [Lnet/minecraft/world/entity/animal/Panda$Gene; $VALUES n field_6796 + m ()I getId a method_6564 + m (I)Lnet/minecraft/world/entity/animal/Panda$Gene; byId a method_6566 + p 0 index + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/Panda$Gene; getRandom a method_17688 + p 0 random + m (Lnet/minecraft/world/entity/animal/Panda$Gene;Lnet/minecraft/world/entity/animal/Panda$Gene;)Lnet/minecraft/world/entity/animal/Panda$Gene; getVariantFromGenes a method_6569 + p 0 mainGene + p 1 hiddenGene + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/Panda$Gene; byName a method_6567 + p 0 name + m ()Z isRecessive b method_6568 + m ()[Lnet/minecraft/world/entity/animal/Panda$Gene; $values d method_36642 + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 3 id + p 4 name + p 5 isRecessive + m ()V +c net/minecraft/world/entity/animal/Panda$PandaAttackGoal cft$b net/minecraft/class_1440$class_4054 + f Lnet/minecraft/world/entity/animal/Panda; panda b field_18114 + m (Lnet/minecraft/world/entity/animal/Panda;DZ)V + p 1 panda + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Panda$PandaAvoidGoal cft$c net/minecraft/class_1440$class_1441 + f Lnet/minecraft/world/entity/animal/Panda; panda i field_6782 + m (Lnet/minecraft/world/entity/animal/Panda;Ljava/lang/Class;FDD)V + p 1 panda + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Panda$PandaBreedGoal cft$d net/minecraft/class_1440$class_1442 + f Lnet/minecraft/world/entity/animal/Panda; panda d field_6784 + f I unhappyCooldown e field_6783 + m ()Z canFindBamboo h method_6561 + m (Lnet/minecraft/world/entity/animal/Panda;D)V + p 1 panda + p 2 speedModifier +c net/minecraft/world/entity/animal/Panda$PandaHurtByTargetGoal cft$e net/minecraft/class_1440$class_1444 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6798 + m (Lnet/minecraft/world/entity/animal/Panda;[Ljava/lang/Class;)V + p 1 panda + p 2 entityClassToIgnoreDamage +c net/minecraft/world/entity/animal/Panda$PandaLieOnBackGoal cft$f net/minecraft/class_1440$class_1445 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6800 + f I cooldown b field_6799 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaLookAtPlayerGoal cft$g net/minecraft/class_1440$class_4056 + f Lnet/minecraft/world/entity/animal/Panda; panda h field_18116 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_24217 + p 1 lookAt + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31545 b method_31545 + m (Lnet/minecraft/world/entity/animal/Panda;Ljava/lang/Class;F)V + p 1 panda + p 2 lookAtType + p 3 lookDistance +c net/minecraft/world/entity/animal/Panda$PandaMoveControl cft$h net/minecraft/class_1440$class_1446 + f Lnet/minecraft/world/entity/animal/Panda; panda l field_6801 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaPanicGoal cft$i net/minecraft/class_1440$class_1447 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6802 + m (Lnet/minecraft/world/entity/animal/Panda;D)V + p 1 panda + p 2 speedModifier +c net/minecraft/world/entity/animal/Panda$PandaRollGoal cft$j net/minecraft/class_1440$class_1448 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6803 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaSitGoal cft$k net/minecraft/class_1440$class_1449 + f Lnet/minecraft/world/entity/animal/Panda; field_6805 a field_6805 + f I cooldown b field_6804 + m (Lnet/minecraft/world/entity/animal/Panda;)V +c net/minecraft/world/entity/animal/Panda$PandaSneezeGoal cft$l net/minecraft/class_1440$class_1450 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6806 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Parrot cfu net/minecraft/class_1453 + f F flap cg field_6818 + f F flapSpeed ch field_6819 + f F oFlapSpeed ci field_6827 + f F oFlap cj field_6829 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_6826 + f Ljava/util/function/Predicate; NOT_PARROT_PREDICATE cl field_6821 + f Ljava/util/Map; MOB_SOUND_MAP cm field_6822 + f F flapping cn field_6824 + f F nextFlap co field_28640 + f Z partyParrot cp field_6823 + f Lnet/minecraft/core/BlockPos; jukebox cq field_6820 + m (Lnet/minecraft/util/RandomSource;)F getPitch a method_6580 + p 0 random + m (Lnet/minecraft/world/entity/animal/Parrot$Variant;)V setVariant a method_47848 + p 1 variant + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/sounds/SoundEvent; getAmbient a method_6583 + p 0 level + p 1 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Z imitateNearbyMobs a method_6587 + p 0 level + p 1 parrot + m (Ljava/util/HashMap;)V method_6579 a method_6579 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/sounds/SoundEvent; getImitatedSound b method_6586 + p 0 type + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkParrotSpawnRules c method_20667 + p 0 parrot + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26889 + m ()Z isPartyParrot gv method_6582 + m ()Lnet/minecraft/world/entity/animal/Parrot$Variant; getVariant gw method_6584 + m ()V calculateFlapping gz method_6578 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Parrot$1 cfu$1 net/minecraft/class_1453$1 + m (Lnet/minecraft/world/entity/Mob;)Z test a method_6590 + p 1 mob + m ()V +c net/minecraft/world/entity/animal/Parrot$ParrotWanderGoal cfu$a net/minecraft/class_1453$class_6537 + m ()Lnet/minecraft/world/phys/Vec3; getTreePos k method_38066 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V +c net/minecraft/world/entity/animal/Parrot$Variant cfu$b net/minecraft/class_1453$class_7989 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; RED_BLUE a field_41550 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; BLUE b field_41551 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; GREEN c field_41552 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; YELLOW_BLUE d field_41553 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; GRAY e field_41554 + f Lcom/mojang/serialization/Codec; CODEC f field_41555 + f Ljava/util/function/IntFunction; BY_ID g field_41556 + f I id h field_41557 + f Ljava/lang/String; name i field_41558 + f [Lnet/minecraft/world/entity/animal/Parrot$Variant; $VALUES j field_41559 + m ()I getId a method_47849 + m (I)Lnet/minecraft/world/entity/animal/Parrot$Variant; byId a method_47850 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/Parrot$Variant; $values b method_47851 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/Pig cfv net/minecraft/class_1452 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SADDLE_ID cc field_6816 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BOOST_TIME cd field_6815 + f Lnet/minecraft/world/entity/ItemBasedSteering; steering ce field_23230 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Pig; getBreedOffspring b method_6574 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58372 n method_58372 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58373 p method_58373 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26890 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/PolarBear cfw net/minecraft/class_1456 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STANDING_ID cc field_6840 + f F STAND_ANIMATION_TICKS cd field_30352 + f F clientSideStandAnimationO ce field_6838 + f F clientSideStandAnimation cg field_6837 + f I warningSoundTicks ch field_6839 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25369 + f I remainingPersistentAngerTime cj field_25370 + f Ljava/util/UUID; persistentAngerTarget ck field_25368 + m (F)F getStandingAnimationScale H method_6601 + p 1 partialTick + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60725 a method_60725 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPolarBearSpawnRules c method_20668 + p 0 polarBear + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26891 + m ()V playWarningSound t method_6602 + m ()Z isStanding x method_6600 + m (Z)V setStanding x method_6603 + p 1 standing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/PolarBear$PolarBearAttackPlayersGoal cfw$a net/minecraft/class_1456$class_1457 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6841 i field_6841 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/PolarBear$PolarBearHurtByTargetGoal cfw$b net/minecraft/class_1456$class_1459 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6843 a field_6843 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/PolarBear$PolarBearMeleeAttackGoal cfw$c net/minecraft/class_1456$class_1460 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6844 b field_6844 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/Pufferfish cfx net/minecraft/class_1454 + f I STATE_SMALL b field_30353 + f I STATE_MID c field_30354 + f I inflateCounter cc field_6833 + f I deflateTimer cd field_6832 + f Ljava/util/function/Predicate; SCARY_MOB ce field_6834 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetingConditions cf field_33692 + f I STATE_FULL d field_30355 + f Lnet/minecraft/network/syncher/EntityDataAccessor; PUFF_STATE e field_6835 + m (Lnet/minecraft/world/entity/Mob;)V touch a method_6593 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;)Z method_36550 b method_36550 + m (I)V setPuffState c method_6596 + p 1 puffState + m ()I getPuffState gm method_6594 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6591 j method_6591 + m (I)F getScale s method_6592 + p 0 puffState + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Pufferfish$PufferfishPuffGoal cfx$a net/minecraft/class_1454$class_1455 + f Lnet/minecraft/world/entity/animal/Pufferfish; fish a field_6836 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_36552 a method_36552 + m (Lnet/minecraft/world/entity/animal/Pufferfish;)V + p 1 fish +c net/minecraft/world/entity/animal/Rabbit cfy net/minecraft/class_1463 + f D STROLL_SPEED_MOD cc field_30356 + f D BREED_SPEED_MOD cd field_30357 + f D FOLLOW_SPEED_MOD ce field_30358 + f D FLEE_SPEED_MOD cg field_30359 + f D ATTACK_SPEED_MOD ch field_30360 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE_ID ci field_6852 + f Lnet/minecraft/resources/ResourceLocation; KILLER_BUNNY cj field_6846 + f I DEFAULT_ATTACK_POWER ck field_51585 + f I EVIL_ATTACK_POWER_INCREMENT cl field_51586 + f Lnet/minecraft/resources/ResourceLocation; EVIL_ATTACK_POWER_MODIFIER cm field_51587 + f I EVIL_ARMOR_VALUE cn field_30369 + f I MORE_CARROTS_DELAY co field_30370 + f I jumpTicks cp field_6851 + f I jumpDuration cq field_6849 + f Z wasOnGround cr field_6850 + f I jumpDelayTicks cs field_6848 + f I moreCarrotTicks ct field_6847 + m (F)F getJumpCompletion H method_6605 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Rabbit$Variant;)V setVariant a method_47853 + p 1 variant + m (Lnet/minecraft/world/entity/animal/Rabbit;)Z method_24839 a method_24839 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/animal/Rabbit$Variant; getRandomRabbitVariant a method_47854 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Rabbit; getBreedOffspring b method_6620 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Rabbit;)Lnet/minecraft/world/entity/ai/control/JumpControl; method_6604 b method_6604 + m (DD)V facePoint c method_6616 + p 1 x + p 3 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkRabbitSpawnRules c method_20669 + p 0 rabbit + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/animal/Rabbit$Variant; getVariant gk method_47855 + m ()V enableJumpControl gl method_6611 + m ()V disableJumpControl gm method_6621 + m ()V setLandingDelay gn method_6608 + m ()V checkLandingDelay go method_6619 + m ()Z wantsMoreFood gu method_6607 + c Returns {@code true} if {@link #moreCarrotTicks} has reached zero + m (D)V setSpeedModifier i method_6606 + p 1 speedModifier + m (Lnet/minecraft/world/item/ItemStack;)Z method_58374 n method_58374 + m ()V startJumping s method_6618 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26892 + m ()Lnet/minecraft/sounds/SoundEvent; getJumpSound x method_6615 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Rabbit$RabbitAvoidEntityGoal cfy$a net/minecraft/class_1463$class_1465 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit i field_6853 + m (Lnet/minecraft/world/entity/animal/Rabbit;Ljava/lang/Class;FDD)V + p 1 rabbit + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Rabbit$RabbitGroupData cfy$b net/minecraft/class_1463$class_1466 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; variant a field_41560 + m (Lnet/minecraft/world/entity/animal/Rabbit$Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/Rabbit$RabbitJumpControl cfy$c net/minecraft/class_1463$class_5197 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit b field_24090 + f Z canJump c field_24091 + m (Z)V setCanJump a method_27311 + p 1 canJump + m ()Z wantJump c method_27312 + m ()Z canJump d method_27313 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$RabbitMoveControl cfy$d net/minecraft/class_1463$class_1468 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit l field_6859 + f D nextJumpSpeed m field_6858 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$RabbitPanicGoal cfy$e net/minecraft/class_1463$class_1469 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit a field_6860 + m (Lnet/minecraft/world/entity/animal/Rabbit;D)V + p 1 rabbit + p 2 speedModifier +c net/minecraft/world/entity/animal/Rabbit$RaidGardenGoal cfy$f net/minecraft/class_1463$class_1470 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit g field_6863 + f Z wantsToRaid h field_6862 + f Z canRaid i field_6861 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$Variant cfy$g net/minecraft/class_1463$class_7990 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; BROWN a field_41561 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; WHITE b field_41562 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; BLACK c field_41563 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; WHITE_SPLOTCHED d field_41564 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; GOLD e field_41565 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; SALT f field_41566 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; EVIL g field_41567 + f Lcom/mojang/serialization/Codec; CODEC h field_41568 + f Ljava/util/function/IntFunction; BY_ID i field_41569 + f I id j field_41570 + f Ljava/lang/String; name k field_41571 + f [Lnet/minecraft/world/entity/animal/Rabbit$Variant; $VALUES l field_41572 + m ()I id a method_47856 + m (I)Lnet/minecraft/world/entity/animal/Rabbit$Variant; byId a method_47857 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/Rabbit$Variant; $values b method_47859 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/Salmon cfz net/minecraft/class_1462 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Sheep cga net/minecraft/class_1472 + f I EAT_ANIMATION_TICKS cc field_30371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WOOL_ID cd field_6870 + f Ljava/util/Map; ITEM_BY_DYE ce field_6868 + f Ljava/util/Map; COLOR_BY_DYE cg field_6867 + f I eatAnimationTick ch field_6865 + f Lnet/minecraft/world/entity/ai/goal/EatBlockGoal; eatBlockGoal ci field_6869 + m (F)F getHeadEatPositionScale H method_6628 + p 1 partialTick + m (F)F getHeadEatAngleScale I method_6641 + p 1 partialTick + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/DyeColor; getRandomSheepColor a method_6632 + p 0 random + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/animal/Animal;)Lnet/minecraft/world/item/DyeColor; getOffspringColor a method_6639 + c Attempts to mix both parent sheep to come up with a mixed dye color. + p 1 father + p 2 mother + m (Lnet/minecraft/world/item/DyeColor;)I getColor a method_6634 + p 0 dyeColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/crafting/CraftingInput; makeCraftInput a method_59936 + p 0 color1 + p 1 color2 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_17689 a method_17689 + m (Ljava/util/EnumMap;)V method_6637 a method_6637 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Sheep; getBreedOffspring b method_6640 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/DyeColor;)V setColor b method_6631 + c Sets the wool color of this sheep + p 1 dyeColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_17691 b method_17691 + m (Lnet/minecraft/world/item/DyeColor;)I createSheepColor c method_6630 + p 0 dyeColor + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_6638 d method_6638 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58375 n method_58375 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26893 + m ()Lnet/minecraft/world/item/DyeColor; getColor t method_6633 + c Gets the wool color of this sheep. + m ()Z isSheared x method_6629 + c Returns {@code true} if a sheep's wool has been sheared. + m (Z)V setSheared x method_6635 + c Makes a sheep sheared if set to {@code true}. + p 1 sheared + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Sheep$1 cga$1 net/minecraft/class_1472$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_6872 + m ()V +c net/minecraft/world/entity/animal/ShoulderRidingEntity cgb net/minecraft/class_1471 + f I RIDE_COOLDOWN cg field_30372 + f I rideCooldownCounter ch field_6864 + m (Lnet/minecraft/server/level/ServerPlayer;)Z setEntityOnShoulder b method_6627 + p 1 player + m ()Z canSitOnShoulder gy method_6626 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/SnowGolem cgc net/minecraft/class_1473 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PUMPKIN_ID b field_6873 + f B PUMPKIN_FLAG c field_30373 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18443 j method_18443 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26894 + m ()Z hasPumpkin t method_6643 + m (Z)V setPumpkin x method_6642 + p 1 pumpkinEquipped + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Squid cgd net/minecraft/class_1477 + f F xBodyRot b field_6907 + f F xBodyRotO c field_6905 + f F tentacleMovement cc field_6908 + f F oldTentacleMovement cd field_6902 + f F tentacleAngle ce field_6904 + f F oldTentacleAngle cf field_6900 + f F speed cg field_6901 + f F tentacleSpeed ch field_6912 + f F rotateSpeed ci field_6913 + f F tx cj field_6910 + f F ty ck field_6911 + f F tz cl field_6909 + f F zBodyRot d field_6903 + f F zBodyRotO e field_6906 + m (FFF)V setMovementVector a method_6670 + p 1 tx + p 2 ty + p 3 tz + m (Lnet/minecraft/world/entity/animal/Squid;)Z method_6668 a method_6668 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; rotateVector b method_6671 + p 1 vector + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26895 + m ()Z hasMovementVector gl method_6672 + m ()Lnet/minecraft/core/particles/ParticleOptions; getInkParticle s method_33336 + m ()Lnet/minecraft/sounds/SoundEvent; getSquirtSound t method_33337 + m ()V spawnInk x method_6669 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Squid$SquidFleeGoal cgd$a net/minecraft/class_1477$class_1478 + f Lnet/minecraft/world/entity/animal/Squid; field_6914 a field_6914 + f F SQUID_FLEE_SPEED b field_30375 + f F SQUID_FLEE_MIN_DISTANCE c field_30376 + f F SQUID_FLEE_MAX_DISTANCE d field_30377 + f I fleeTicks e field_6915 + m (Lnet/minecraft/world/entity/animal/Squid;)V +c net/minecraft/world/entity/animal/Squid$SquidRandomMovementGoal cgd$b net/minecraft/class_1477$class_1479 + f Lnet/minecraft/world/entity/animal/Squid; squid a field_6917 + m (Lnet/minecraft/world/entity/animal/Squid;Lnet/minecraft/world/entity/animal/Squid;)V + p 2 squid +c net/minecraft/world/entity/animal/TropicalFish cge net/minecraft/class_1474 + f Ljava/lang/String; BUCKET_VARIANT_TAG b field_30378 + f Ljava/util/List; COMMON_VARIANTS c field_41573 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE_VARIANT d field_6874 + f Z isSchool e field_6877 + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;)V setVariant a method_47860 + p 1 variant + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)I packVariant a method_47861 + p 0 pattern + p 1 baseColor + p 2 patternColor + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkTropicalFishSpawnRules b method_38985 + p 0 tropicalFish + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (I)Ljava/lang/String; getPredefinedName c method_6649 + p 0 variantId + m ()Lnet/minecraft/world/item/DyeColor; getBaseColor gt method_6658 + m ()Lnet/minecraft/world/item/DyeColor; getPatternColor gu method_6655 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; getVariant gv method_47862 + m ()I getPackedVariant gw method_47863 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57303 i method_57303 + m (I)Lnet/minecraft/world/item/DyeColor; getBaseColor s method_6652 + p 0 variantId + m (I)Lnet/minecraft/world/item/DyeColor; getPatternColor t method_6651 + p 0 variantId + m (I)Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; getPattern u method_47864 + p 0 variantId + m (I)V setPackedVariant v method_47865 + p 1 packedVariant + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/TropicalFish$Base cge$a net/minecraft/class_1474$class_7991 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; SMALL a field_41574 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; LARGE b field_41575 + f I id c field_41576 + f [Lnet/minecraft/world/entity/animal/TropicalFish$Base; $VALUES d field_41577 + m ()[Lnet/minecraft/world/entity/animal/TropicalFish$Base; $values a method_47866 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/TropicalFish$Pattern cge$b net/minecraft/class_1474$class_1475 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; KOB a field_6881 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SUNSTREAK b field_6880 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SNOOPER c field_6882 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; DASHER d field_6890 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BRINELY e field_6891 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SPOTTY f field_6892 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; FLOPPER g field_6893 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; STRIPEY h field_6887 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; GLITTER i field_6883 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BLOCKFISH j field_6884 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BETTY k field_6888 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; CLAYFISH l field_6889 + f Lcom/mojang/serialization/Codec; CODEC m field_41578 + f Ljava/util/function/IntFunction; BY_ID n field_41579 + f Ljava/lang/String; name o field_41580 + f Lnet/minecraft/network/chat/Component; displayName p field_41581 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; base q field_41582 + f I packedId r field_41583 + f [Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; $VALUES s field_6886 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Base; base a method_47867 + m (I)Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; byId a method_47868 + p 0 packedId + m ()I getPackedId b method_47870 + m ()Lnet/minecraft/network/chat/Component; displayName d method_47871 + m ()[Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; $values e method_36643 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/entity/animal/TropicalFish$Base;I)V + p 3 name + p 4 base + p 5 id + m ()V +c net/minecraft/world/entity/animal/TropicalFish$TropicalFishGroupData cge$c net/minecraft/class_1474$class_1476 + f Lnet/minecraft/world/entity/animal/TropicalFish$Variant; variant b field_41584 + m (Lnet/minecraft/world/entity/animal/TropicalFish;Lnet/minecraft/world/entity/animal/TropicalFish$Variant;)V + p 1 leader + p 2 variant +c net/minecraft/world/entity/animal/TropicalFish$Variant cge$d net/minecraft/class_1474$class_7992 + f Lcom/mojang/serialization/Codec; CODEC a field_49236 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; pattern b comp_1177 + f Lnet/minecraft/world/item/DyeColor; baseColor c comp_1178 + f Lnet/minecraft/world/item/DyeColor; patternColor d comp_1179 + m ()I getPackedId a method_47872 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; pattern b comp_1177 + m ()Lnet/minecraft/world/item/DyeColor; baseColor c comp_1178 + m ()Lnet/minecraft/world/item/DyeColor; patternColor d comp_1179 + m (I)V + p 1 id + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)V + m ()V +c net/minecraft/world/entity/animal/Turtle cgf net/minecraft/class_1481 + f Ljava/util/function/Predicate; BABY_ON_LAND_SELECTOR cc field_6921 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HOME_POS cd field_6920 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HAS_EGG ce field_6919 + f Lnet/minecraft/network/syncher/EntityDataAccessor; LAYING_EGG cg field_6923 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TRAVEL_POS ch field_6922 + f Lnet/minecraft/network/syncher/EntityDataAccessor; GOING_HOME ci field_6924 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TRAVELLING cj field_6925 + f F BABY_SCALE ck field_47774 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cl field_47775 + f I layEggCounter cm field_6918 + m (Z)V setTravelling A method_6696 + p 1 isTravelling + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/util/RandomSource; method_6685 a method_6685 + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/util/RandomSource; method_6677 b method_6677 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkTurtleSpawnRules c method_20671 + p 0 turtle + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/core/BlockPos; getHomePos gk method_6693 + m ()Lnet/minecraft/core/BlockPos; getTravelPos gl method_6687 + m ()Z isGoingHome gm method_6684 + m ()Z isTravelling gn method_6691 + m (Lnet/minecraft/core/BlockPos;)V setHomePos h method_6683 + p 1 homePos + m (Lnet/minecraft/core/BlockPos;)V setTravelPos i method_6699 + p 1 travelPos + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6688 j method_6688 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58376 n method_58376 + m ()Z hasEgg s method_6679 + m ()Z isLayingEgg t method_6695 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_26896 + m (Z)V setHasEgg x method_6680 + p 1 hasEgg + m (Z)V setLayingEgg y method_6676 + p 1 isLayingEgg + m (Z)V setGoingHome z method_6697 + p 1 isGoingHome + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Turtle$TurtleBreedGoal cgf$a net/minecraft/class_1481$class_1482 + f Lnet/minecraft/world/entity/animal/Turtle; turtle d field_6926 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleGoHomeGoal cgf$b net/minecraft/class_1481$class_1483 + f Lnet/minecraft/world/entity/animal/Turtle; turtle a field_6930 + f D speedModifier b field_6927 + f Z stuck c field_6929 + f I closeToHomeTryTicks d field_6928 + f I GIVE_UP_TICKS e field_30384 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleGoToWaterGoal cgf$c net/minecraft/class_1481$class_1484 + f I GIVE_UP_TICKS g field_30385 + f Lnet/minecraft/world/entity/animal/Turtle; turtle h field_6931 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleLayEggGoal cgf$d net/minecraft/class_1481$class_1485 + f Lnet/minecraft/world/entity/animal/Turtle; turtle g field_6932 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleMoveControl cgf$e net/minecraft/class_1481$class_1486 + f Lnet/minecraft/world/entity/animal/Turtle; turtle l field_6933 + m ()V updateSpeed g method_6700 + m (Lnet/minecraft/world/entity/animal/Turtle;)V + p 1 turtle +c net/minecraft/world/entity/animal/Turtle$TurtlePanicGoal cgf$f net/minecraft/class_1481$class_1487 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtlePathNavigation cgf$g net/minecraft/class_1481$class_1488 + m (Lnet/minecraft/world/entity/animal/Turtle;Lnet/minecraft/world/level/Level;)V + p 1 turtle + p 2 level +c net/minecraft/world/entity/animal/Turtle$TurtleRandomStrollGoal cgf$h net/minecraft/class_1481$class_1489 + f Lnet/minecraft/world/entity/animal/Turtle; turtle i field_6934 + m (Lnet/minecraft/world/entity/animal/Turtle;DI)V + p 1 turtle + p 2 speedModifier + p 4 interval +c net/minecraft/world/entity/animal/Turtle$TurtleTravelGoal cgf$i net/minecraft/class_1481$class_1491 + f Lnet/minecraft/world/entity/animal/Turtle; turtle a field_6942 + f D speedModifier b field_6940 + f Z stuck c field_6941 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/WaterAnimal cgg net/minecraft/class_1480 + m (I)V handleAirSupply b method_6673 + p 1 airSupply + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSurfaceWaterAnimalSpawnRules c method_38986 + p 0 waterAnimal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Wolf cgh net/minecraft/class_1493 + f Ljava/util/function/Predicate; PREY_SELECTOR cg field_18004 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_INTERESTED_ID ch field_6946 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLLAR_COLOR ci field_6950 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_REMAINING_ANGER_TIME cj field_25373 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_49722 + f F START_HEALTH cl field_30386 + f F TAME_HEALTH cm field_30387 + f F ARMOR_REPAIR_UNIT cn field_49237 + f F interestedAngle co field_6952 + f F interestedAngleO cp field_6949 + f Z isWet cq field_6944 + f Z isShaking cr field_6951 + f F shakeAnim cs field_6947 + f F shakeAnimO ct field_6945 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cu field_25371 + f Ljava/util/UUID; persistentAngerTarget cv field_25372 + m (Z)V setIsInterested A method_6712 + p 1 isInterested + m (F)F getWetShade H method_6707 + c Used when calculating the amount of shading to apply while the wolf is wet. + p 1 partialTicks + m (F)F getHeadRollAngle I method_6719 + p 1 partialTicks + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_58059 a method_58059 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58060 a method_58060 + m (Lnet/minecraft/world/entity/animal/Wolf;)Lnet/minecraft/util/RandomSource; method_6716 a method_6716 + m (Lnet/minecraft/world/item/DyeColor;)V setCollarColor a method_6708 + p 1 collarColor + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;)V method_59937 a method_59937 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Wolf; getBreedOffspring b method_6717 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkWolfSpawnRules c method_39450 + p 0 wolf + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (FF)F getBodyRollAngle g method_6715 + p 1 partialTicks + p 2 offset + m (Lnet/minecraft/world/damagesource/DamageSource;)Z canArmorAbsorb g method_57304 + p 1 damageSource + m (Lnet/minecraft/world/entity/player/Player;)V tryToTame g method_58169 + p 1 player + m ()Z hasArmor gA method_55710 + m ()Z isInterested gB method_6710 + m ()V cancelShake gC method_31167 + m ()Lnet/minecraft/resources/ResourceLocation; getTexture gu method_58061 + m ()Lnet/minecraft/core/Holder; getVariant gv method_58062 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gw method_26897 + m ()Z isWet gx method_6711 + c True if the wolf is wet + m ()F getTailAngle gy method_6714 + m ()Lnet/minecraft/world/item/DyeColor; getCollarColor gz method_6713 + m (Lnet/minecraft/core/Holder;)V setVariant i method_58063 + p 1 variant + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18444 k method_18444 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Wolf$WolfAvoidEntityGoal cgh$a net/minecraft/class_1493$class_1494 + f Lnet/minecraft/world/entity/animal/Wolf; field_6953 i field_6953 + f Lnet/minecraft/world/entity/animal/Wolf; wolf j field_6954 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)Z avoidLlama a method_6720 + p 1 llama + m (Lnet/minecraft/world/entity/animal/Wolf;Lnet/minecraft/world/entity/animal/Wolf;Ljava/lang/Class;FDD)V + p 2 wolf + p 3 entityClassToAvoid + p 4 maxDist + p 5 walkSpeedModifier + p 7 sprintSpeedModifier +c net/minecraft/world/entity/animal/Wolf$WolfPackData cgh$b net/minecraft/class_1493$class_9345 + f Lnet/minecraft/core/Holder; type a field_49723 + m (Lnet/minecraft/core/Holder;)V + p 1 type +c net/minecraft/world/entity/animal/WolfVariant cgi net/minecraft/class_9346 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49724 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51943 + f Lcom/mojang/serialization/Codec; CODEC c field_49980 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51944 + f Lnet/minecraft/resources/ResourceLocation; wildTexture e field_49981 + f Lnet/minecraft/resources/ResourceLocation; tameTexture f field_49982 + f Lnet/minecraft/resources/ResourceLocation; angryTexture g field_49983 + f Lnet/minecraft/resources/ResourceLocation; wildTextureFull h field_49984 + f Lnet/minecraft/resources/ResourceLocation; tameTextureFull i field_49985 + f Lnet/minecraft/resources/ResourceLocation; angryTextureFull j field_49986 + f Lnet/minecraft/core/HolderSet; biomes k field_49987 + m ()Lnet/minecraft/resources/ResourceLocation; wildTexture a method_58377 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; fullTextureId a method_58378 + p 0 texture + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58379 a method_58379 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58064 a method_58064 + m (Ljava/lang/String;)Ljava/lang/String; method_58380 a method_58380 + m ()Lnet/minecraft/resources/ResourceLocation; tameTexture b method_58381 + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58382 b method_58382 + m ()Lnet/minecraft/resources/ResourceLocation; angryTexture c method_58383 + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58384 c method_58384 + m ()Lnet/minecraft/core/HolderSet; biomes d method_58385 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/HolderSet;)V + p 1 wildTexture + p 2 tameTexture + p 3 angryTexture + p 4 biomes + m ()V +c net/minecraft/world/entity/animal/WolfVariants cgj net/minecraft/class_9347 + f Lnet/minecraft/resources/ResourceKey; PALE a field_49725 + f Lnet/minecraft/resources/ResourceKey; SPOTTED b field_49726 + f Lnet/minecraft/resources/ResourceKey; SNOWY c field_49727 + f Lnet/minecraft/resources/ResourceKey; BLACK d field_49728 + f Lnet/minecraft/resources/ResourceKey; ASHEN e field_49729 + f Lnet/minecraft/resources/ResourceKey; RUSTY f field_49730 + f Lnet/minecraft/resources/ResourceKey; WOODS g field_49731 + f Lnet/minecraft/resources/ResourceKey; CHESTNUT h field_49732 + f Lnet/minecraft/resources/ResourceKey; STRIPED i field_49733 + f Lnet/minecraft/resources/ResourceKey; DEFAULT j field_51588 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_58066 + p 0 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder$Reference;)Z method_58065 a method_58065 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_59938 a method_59938 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getSpawnVariant a method_58067 + p 0 registryAccess + p 1 biome + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_58068 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)V register a method_58069 + p 0 context + p 1 key + p 2 name + p 3 spawnBiome + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/tags/TagKey;)V register a method_58170 + p 0 context + p 1 key + p 2 name + p 3 spawnBiomes + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/HolderSet;)V register a method_58171 + p 0 context + p 1 key + p 2 name + p 3 spawnBiomes + m ()V + m ()V +c net/minecraft/world/entity/animal/allay/Allay cgk net/minecraft/class_7298 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES b field_38398 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES c field_38403 + f Lnet/minecraft/core/Vec3i; ITEM_PICKUP_REACH cc field_38399 + f I LIFTING_ITEM_ANIMATION_DURATION cd field_39461 + f F DANCING_LOOP_DURATION ce field_39462 + f F SPINNING_ANIMATION_DURATION cf field_39463 + f Lnet/minecraft/world/item/crafting/Ingredient; DUPLICATION_ITEM cg field_39464 + f I DUPLICATION_COOLDOWN_TICKS ch field_39465 + f I NUM_OF_DUPLICATION_HEARTS ci field_39679 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DANCING cj field_39466 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CAN_DUPLICATE ck field_39467 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicVibrationListener cl field_38401 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData cm field_44596 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser cn field_39468 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicJukeboxListener co field_39469 + f Lnet/minecraft/world/SimpleContainer; inventory cp field_38402 + f Lnet/minecraft/core/BlockPos; jukeboxPos cq field_39470 + f J duplicationCooldown cr field_39471 + f F holdingItemAnimationTicks cs field_38935 + f F holdingItemAnimationTicks0 ct field_38936 + f F dancingAnimationTicks cu field_39472 + f F spinningAnimationTicks cv field_39473 + f F spinningAnimationTicks0 cw field_39474 + f Lcom/google/common/collect/ImmutableList; THROW_SOUND_PITCHES d field_38937 + f Lorg/slf4j/Logger; LOGGER e field_39045 + m (F)F getHoldingItemAnimationProgress H method_43397 + p 1 partialTick + m (F)F getSpinningProgress I method_44368 + p 1 partialTick + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V removeInteractionItem a method_44357 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_43536 a method_43536 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_43537 a method_43537 + m (Lnet/minecraft/core/BlockPos;Z)V setJukeboxPlaying b method_44358 + p 1 jukeboxPos + p 2 jukeboxPlaying + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z allayConsidersItemEqual d method_45340 + p 1 first + p 2 second + m (Ljava/lang/String;)V method_60975 d method_60975 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasNonMatchingPotion e method_45341 + p 1 first + p 2 second + m (Ljava/lang/String;)V method_60976 e method_60976 + m ()Z isDancing gk method_44359 + m ()Z isSpinning gl method_44360 + m ()Z isOnPickupCooldown go method_42654 + m ()Z shouldStopDancing gp method_44361 + m ()V updateDuplicationCooldown gq method_44362 + m ()V duplicateAllay gr method_44363 + m ()V resetDuplicationCooldown gs method_44364 + m ()Z canDuplicate gt method_44365 + m ()V spawnHeartParticle gu method_44608 + m (Lnet/minecraft/world/item/ItemStack;)Z isDuplicationItem n method_44366 + p 1 stack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_42655 + m ()Z hasItemInHand t method_43396 + m (Z)V setDancing x method_44367 + p 1 dancing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/allay/Allay$JukeboxListener cgk$a net/minecraft/class_7298$class_7525 + f Lnet/minecraft/world/entity/animal/allay/Allay; field_39477 a field_39477 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerSource b field_39478 + f I listenerRadius c field_39479 + m (Lnet/minecraft/world/entity/animal/allay/Allay;Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 2 listenerSource + p 3 listenerRadius +c net/minecraft/world/entity/animal/allay/Allay$VibrationUser cgk$b net/minecraft/class_7298$class_7524 + f Lnet/minecraft/world/entity/animal/allay/Allay; field_39476 a field_39476 + f I VIBRATION_EVENT_LISTENER_RANGE b field_43190 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44597 + m (Lnet/minecraft/world/entity/animal/allay/Allay;)V +c net/minecraft/world/entity/animal/allay/AllayAi cgl net/minecraft/class_7299 + f F SPEED_MULTIPLIER_WHEN_IDLING a field_38406 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_DEPOSIT_TARGET b field_38407 + f F SPEED_MULTIPLIER_WHEN_RETRIEVING_ITEM c field_38408 + f F SPEED_MULTIPLIER_WHEN_PANICKING d field_39113 + f I CLOSE_ENOUGH_TO_TARGET e field_38938 + f I TOO_FAR_FROM_TARGET f field_38939 + f I MAX_LOOK_DISTANCE g field_38410 + f I MIN_WAIT_DURATION h field_38411 + f I MAX_WAIT_DURATION i field_38412 + f I TIME_TO_FORGET_NOTEBLOCK j field_38413 + f I DISTANCE_TO_WANTED_ITEM k field_38940 + f I GIVE_ITEM_TIMEOUT_DURATION l field_40130 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/entity/ai/behavior/PositionTracker; method_43092 a method_43092 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getLikedPlayer a method_43093 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/GlobalPos;)Z shouldDepositItemsAtLikedNoteblock a method_42658 + p 0 entity + p 1 brain + p 2 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)V hearNoteblock a method_42659 + p 0 entity + p 1 pos + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_42660 + p 0 brain + m (Lnet/minecraft/world/entity/animal/allay/Allay;)V updateActivity a method_42661 + p 0 allay + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getItemDepositPosition b method_42657 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_42663 + p 0 brain + m (Lnet/minecraft/world/entity/animal/allay/Allay;)Z method_42664 b method_42664 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasWantedItem c method_49122 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_42666 + p 0 brain + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getLikedPlayerPositionTracker d method_42662 + p 0 entity + m ()V +c net/minecraft/world/entity/animal/allay/package-info cgm net/minecraft/class_7300 +c net/minecraft/world/entity/animal/armadillo/Armadillo cgn net/minecraft/class_9069 + f F BABY_SCALE cc field_47778 + f F MAX_HEAD_ROTATION_EXTENT cd field_48332 + f I SCARE_CHECK_INTERVAL ce field_47779 + f Lnet/minecraft/world/entity/AnimationState; rollOutAnimationState cg field_49080 + f Lnet/minecraft/world/entity/AnimationState; rollUpAnimationState ch field_49081 + f Lnet/minecraft/world/entity/AnimationState; peekAnimationState ci field_49082 + f D SCARE_DISTANCE_HORIZONTAL cj field_48333 + f D SCARE_DISTANCE_VERTICAL ck field_48334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ARMADILLO_STATE cl field_47785 + f J inStateTicks cm field_47786 + f I scuteTime cn field_47787 + f Z peekReceivedClient co field_49083 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState;)V switchToState a method_55713 + p 1 state + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkArmadilloSpawnRules c method_56083 + p 0 entityType + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z shouldSwitchToScaredState gk method_55714 + m ()Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; getState gl method_55718 + m ()V rollUp gm method_55715 + m ()V rollOut gn method_55724 + m ()Z brushOffScute go method_55716 + m ()Z canStayRolledUp gu method_55717 + m ()I pickNextScuteDropTime gv method_55719 + m ()V setupAnimationStates gw method_55720 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isScaredBy j method_55721 + p 1 entity + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55722 + m ()Z isScared t method_55723 + m ()Z shouldHideInShell x method_55711 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/armadillo/Armadillo$1 cgn$1 net/minecraft/class_9069$1 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo; field_47788 a field_47788 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;Lnet/minecraft/world/entity/Mob;)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState cgn$a net/minecraft/class_9069$class_9070 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; IDLE a field_47790 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; ROLLING b field_47791 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; SCARED c field_47792 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; UNROLLING d field_49084 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_48335 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC f field_47794 + f Ljava/util/function/IntFunction; BY_ID g field_48336 + f Ljava/lang/String; name h field_47793 + f Z isThreatened i field_49085 + f I animationDuration j field_49086 + f I id k field_48337 + f [Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; $VALUES l field_47795 + m ()Z isThreatened a method_56998 + m (J)Z shouldHideInShell a method_56999 + p 1 inStateTicks + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; fromName a method_55727 + p 0 name + m ()I animationDuration b method_57000 + m ()I id d method_56084 + m ()[Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; $values e method_55726 + m (Ljava/lang/String;ILjava/lang/String;ZII)V + p 3 name + p 4 isThreatened + p 5 animationDuration + p 6 id + m ()V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$1 cgn$a$1 net/minecraft/class_9069$class_9070$1 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$2 cgn$a$2 net/minecraft/class_9069$class_9070$2 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$3 cgn$a$3 net/minecraft/class_9069$class_9070$3 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$4 cgn$a$4 net/minecraft/class_9069$class_9070$4 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi cgo net/minecraft/class_9071 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_47797 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_47798 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_47799 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT d field_47800 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE e field_47801 + f D DEFAULT_CLOSE_ENOUGH_DIST f field_48338 + f D BABY_CLOSE_ENOUGH_DIST g field_48339 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE h field_47802 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES i field_47803 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES j field_47804 + f Lnet/minecraft/world/entity/ai/behavior/OneShot; ARMADILLO_ROLLING_OUT k field_47805 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider a method_55728 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)Z method_55729 a method_55729 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_55730 a method_55730 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_55731 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55732 a method_55732 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_55733 a method_55733 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)V updateActivity a method_55734 + p 0 armadillo + m (Lnet/minecraft/world/item/ItemStack;)Z method_58386 a method_58386 + m ()Ljava/util/function/Predicate; getTemptations b method_55735 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_55736 b method_55736 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_55737 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_55738 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initScaredActivity d method_55739 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$1 cgo$1 net/minecraft/class_9071$1 + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$ArmadilloBallUp cgo$a net/minecraft/class_9071$class_9072 + f I BALL_UP_STAY_IN_STATE c field_49087 + f I TICKS_DELAY_TO_DETERMINE_IF_DANGER_IS_STILL_AROUND d field_49088 + f I DANGER_DETECTED_RECENTLY_DANGER_THRESHOLD e field_49089 + f I nextPeekTimer f field_49090 + f Z dangerWasAround g field_49091 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)Z checkExtraStartConditions a method_55740 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V tick a method_55741 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)I pickNextPeekTimer a method_57001 + p 1 armadillo + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)Z canStillUse b method_55742 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V start c method_55743 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V stop d method_55744 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$ArmadilloPanic cgo$b net/minecraft/class_9071$class_9073 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V start a method_57002 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60726 a method_60726 + m (F)V +c net/minecraft/world/entity/animal/armadillo/package-info cgp net/minecraft/class_9074 +c net/minecraft/world/entity/animal/axolotl/Axolotl cgq net/minecraft/class_5762 + f I TOTAL_PLAYDEAD_TIME cc field_30388 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cd field_28333 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES ce field_28334 + f D PLAYER_REGEN_DETECTION_RANGE cg field_30389 + f I RARE_VARIANT_CHANCE ch field_30390 + f Ljava/lang/String; VARIANT_TAG ci field_30391 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT cj field_28335 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYING_DEAD ck field_28336 + f Lnet/minecraft/network/syncher/EntityDataAccessor; FROM_BUCKET cl field_28337 + f I AXOLOTL_TOTAL_AIR_SUPPLY cm field_30392 + f I REHYDRATE_AIR_SUPPLY cn field_33485 + f I REGEN_BUFF_MAX_DURATION co field_34005 + f Ljava/util/Map; modelRotationValues cp field_33764 + f I REGEN_BUFF_BASE_DURATION cq field_30393 + m (Lnet/minecraft/util/RandomSource;)Z useRareVariant a method_33221 + p 0 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAxolotlSpawnRules a method_38987 + p 0 axolotl + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)V setVariant a method_33219 + p 1 variant + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;Lnet/minecraft/world/entity/LivingEntity;)V onStopAttacking a method_35175 + p 0 axolotl + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V applySupportingEffects a method_33223 + p 1 player + m ()Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getVariant gk method_33225 + m ()Z isPlayingDead gl method_33226 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gm method_33227 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57305 i method_57305 + m ()V rehydrate s method_36282 + m (I)V handleAirSupply t method_33230 + p 1 airSupply + m (Z)V setPlayingDead y method_33231 + p 1 playingDead + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlGroupData cgq$a net/minecraft/class_5762$class_5763 + f [Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; types a field_28338 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getVariant a method_33232 + p 1 random + m ([Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)V + p 1 types +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlLookControl cgq$b net/minecraft/class_5762$class_5764 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl; field_28339 h field_28339 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;I)V + p 2 axolotl + p 3 maxYRotFromCenter +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlMoveControl cgq$c net/minecraft/class_5762$class_5765 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl; axolotl l field_28340 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V + p 1 axolotl +c net/minecraft/world/entity/animal/axolotl/Axolotl$Variant cgq$d net/minecraft/class_5762$class_5767 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; LUCY a field_28341 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; WILD b field_28342 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; GOLD c field_28343 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; CYAN d field_28344 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; BLUE e field_28345 + f Lcom/mojang/serialization/Codec; CODEC f field_41585 + f Ljava/util/function/IntFunction; BY_ID g field_28346 + f I id h field_28347 + f Ljava/lang/String; name i field_28348 + f Z common j field_28349 + f [Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; $VALUES k field_28350 + m ()I getId a method_33233 + m (I)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; byId a method_47928 + p 0 id + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getCommonSpawnVariant a method_33235 + p 0 random + m (Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getSpawnVariant a method_33236 + p 0 random + p 1 common + m (ZLnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)Z method_33237 a method_33237 + m ()Ljava/lang/String; getName b method_33238 + m (I)[Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; method_33234 b method_33234 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getRareSpawnVariant b method_33240 + p 0 random + m ()[Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; $values d method_36644 + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 3 id + p 4 name + p 5 common + m ()V +c net/minecraft/world/entity/animal/axolotl/AxolotlAi cgr net/minecraft/class_5768 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE a field_28351 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE b field_30394 + f F SPEED_MULTIPLIER_ON_LAND c field_30395 + f F SPEED_MULTIPLIER_WHEN_IDLING_IN_WATER d field_30396 + f F SPEED_MULTIPLIER_WHEN_CHASING_IN_WATER e field_30397 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT_IN_WATER f field_30398 + m ()Ljava/util/function/Predicate; getTemptations a method_33241 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canSetWalkTargetFromLookTarget a method_37457 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_33243 + p 0 brain + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V updateActivity a method_33244 + p 0 axolotl + m (Lnet/minecraft/world/item/ItemStack;)Z method_58387 a method_58387 + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifierChasing b method_33242 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initPlayDeadActivity b method_33246 + p 0 brain + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Ljava/util/Optional; findNearestValidAttackTarget b method_33247 + p 0 axolotl + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifierFollowingAdult c method_33245 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity c method_33249 + p 0 brain + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifier d method_33248 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity d method_33251 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity e method_33252 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/axolotl/PlayDead cgs net/minecraft/class_5769 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Z checkExtraStartConditions a method_33253 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;J)Z canStillUse a method_33254 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;J)V start b method_33255 + m ()V +c net/minecraft/world/entity/animal/axolotl/ValidatePlayDead cgt net/minecraft/class_5770 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47268 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47269 a method_47269 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47270 a method_47270 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47271 a method_47271 + m ()V +c net/minecraft/world/entity/animal/axolotl/package-info cgu net/minecraft/class_6052 +c net/minecraft/world/entity/animal/camel/Camel cgv net/minecraft/class_7689 + f F RUNNING_SPEED_BONUS cD field_40146 + f F DASH_VERTICAL_MOMENTUM cE field_40147 + f F DASH_HORIZONTAL_MOMENTUM cF field_40148 + f I DASH_MINIMUM_DURATION_TICKS cG field_43388 + f I SITDOWN_DURATION_TICKS cH field_40149 + f I STANDUP_DURATION_TICKS cI field_40133 + f I IDLE_MINIMAL_DURATION_TICKS cJ field_40134 + f F SITTING_HEIGHT_DIFFERENCE cK field_40135 + f Lnet/minecraft/world/entity/EntityDimensions; SITTING_DIMENSIONS cL field_40136 + f I dashCooldown cM field_40137 + f I idleAnimationTimeout cN field_40138 + f F BABY_SCALE cc field_45127 + f I DASH_COOLDOWN_TICKS cd field_40132 + f I MAX_HEAD_Y_ROT ce field_41764 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DASH cg field_40139 + f Lnet/minecraft/network/syncher/EntityDataAccessor; LAST_POSE_CHANGE_TICK ch field_40140 + f Lnet/minecraft/world/entity/AnimationState; sitAnimationState ci field_40142 + f Lnet/minecraft/world/entity/AnimationState; sitPoseAnimationState cj field_40734 + f Lnet/minecraft/world/entity/AnimationState; sitUpAnimationState ck field_40143 + f Lnet/minecraft/world/entity/AnimationState; idleAnimationState cl field_40144 + f Lnet/minecraft/world/entity/AnimationState; dashAnimationState cm field_40145 + m (J)V resetLastPoseChangeTick a method_45344 + p 1 lastPoseChangeTick + m (ZFLnet/minecraft/world/entity/EntityDimensions;F)D getBodyAnchorAnimationYOffset a method_45346 + p 1 firstPassenger + p 2 partialTick + p 3 dimensions + p 4 scale + m (J)V resetLastPoseChangeTickToFullStand b method_48160 + p 1 lastPoseChangedTick + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/camel/Camel; getBreedOffspring b method_45347 + p 1 level + p 2 otherParent + m ()V setupAnimationStates gV method_45356 + m ()Z isVisuallySittingDown gW method_46398 + m ()Z canCamelChangePose gk method_52548 + m ()Z isCamelSitting gn method_45350 + m ()Z isCamelVisuallySitting go method_48573 + m ()Z isInPoseTransition gu method_45351 + m ()V sitDown gv method_45352 + m ()V standUp gw method_45353 + m ()V standUpInstantly gx method_45354 + m ()J getPoseTime gy method_45355 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_45360 + m ()Z refuseToMove t method_45357 + m ()Z isDashing x method_45361 + m (Z)V setDashing x method_45362 + p 1 dashing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/camel/Camel$CamelBodyRotationControl cgv$a net/minecraft/class_7689$class_7690 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_40151 a field_40151 + m (Lnet/minecraft/world/entity/animal/camel/Camel;Lnet/minecraft/world/entity/animal/camel/Camel;)V + p 2 camel +c net/minecraft/world/entity/animal/camel/Camel$CamelLookControl cgv$b net/minecraft/class_7689$class_8784 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_46091 h field_46091 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V +c net/minecraft/world/entity/animal/camel/Camel$CamelMoveControl cgv$c net/minecraft/class_7689$class_8196 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_42978 l field_42978 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V +c net/minecraft/world/entity/animal/camel/CamelAi cgw net/minecraft/class_7691 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_40152 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_40153 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_40154 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT d field_40155 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE e field_40156 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE f field_40157 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES g field_40158 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES h field_40159 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider a method_45363 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52549 a method_52549 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_45365 + p 0 brain + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V updateActivity a method_45366 + p 0 camel + m (Lnet/minecraft/world/entity/animal/camel/Camel;Lnet/minecraft/util/RandomSource;)V initMemories a method_45367 + p 0 camel + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58388 a method_58388 + m ()Ljava/util/function/Predicate; getTemptations b method_45368 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_45364 b method_45364 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_45369 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_45370 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/camel/CamelAi$CamelPanic cgw$a net/minecraft/class_7691$class_7692 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;J)V start a method_57003 + m (F)V +c net/minecraft/world/entity/animal/camel/CamelAi$RandomSitting cgw$b net/minecraft/class_7691$class_7693 + f I minimalPoseTicks c field_40160 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;)Z checkExtraStartConditions a method_45371 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;J)V start a method_45372 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 minimalPoseSeconds +c net/minecraft/world/entity/animal/camel/package-info cgx net/minecraft/class_7694 +c net/minecraft/world/entity/animal/frog/Frog cgy net/minecraft/class_7102 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cc field_37449 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cd field_37450 + f Ljava/lang/String; VARIANT_KEY ce field_38720 + f Lnet/minecraft/world/entity/AnimationState; jumpAnimationState cg field_37451 + f Lnet/minecraft/world/entity/AnimationState; croakAnimationState ch field_37452 + f Lnet/minecraft/world/entity/AnimationState; tongueAnimationState ci field_37453 + f Lnet/minecraft/world/entity/AnimationState; swimIdleAnimationState cj field_37456 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_37457 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TONGUE_TARGET_ID cl field_37458 + f I FROG_FALL_DAMAGE_REDUCTION cm field_37459 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_VARIANT cn field_49988 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58389 a method_58389 + m (Lnet/minecraft/world/entity/Entity;)V setTongueTarget c method_41352 + p 1 tongueTarget + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkFrogSpawnRules c method_43398 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_41355 + m (Lnet/minecraft/core/Holder;)V setVariant i method_41353 + p 1 variant + m (Lnet/minecraft/world/entity/LivingEntity;)Z canEat j method_41358 + p 0 entity + m ()V eraseTongueTarget s method_41359 + m ()Ljava/util/Optional; getTongueTarget t method_41360 + m ()Lnet/minecraft/core/Holder; getVariant x method_41354 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/frog/Frog$FrogLookControl cgy$a net/minecraft/class_7102$class_7103 + f Lnet/minecraft/world/entity/animal/frog/Frog; field_37460 h field_37460 + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/animal/frog/Frog$FrogNodeEvaluator cgy$b net/minecraft/class_7102$class_7104 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; belowPos l field_37461 + m (Z)V +c net/minecraft/world/entity/animal/frog/Frog$FrogPathNavigation cgy$c net/minecraft/class_7102$class_7105 + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/animal/frog/FrogAi cgz net/minecraft/class_7107 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_37469 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_37471 + f F SPEED_MULTIPLIER_ON_LAND c field_37472 + f F SPEED_MULTIPLIER_IN_WATER d field_37473 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_LONG_JUMPS e field_37474 + f I MAX_LONG_JUMP_HEIGHT f field_37475 + f I MAX_LONG_JUMP_WIDTH g field_37476 + f F MAX_JUMP_VELOCITY_MULTIPLIER h field_49092 + f F SPEED_MULTIPLIER_WHEN_TEMPTED i field_37478 + m ()Ljava/util/function/Predicate; getTemptations a method_41366 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_41367 a method_41367 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z isAcceptableLandingSpot a method_45373 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_41368 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)V updateActivity a method_41373 + p 0 frog + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/util/RandomSource;)V initMemories a method_41369 + p 0 frog + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58390 a method_58390 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_41371 b method_41371 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_41372 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Z canAttack b method_41375 + p 0 frog + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_41374 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Lnet/minecraft/sounds/SoundEvent; method_41377 c method_41377 + m (Lnet/minecraft/world/entity/ai/Brain;)V initSwimActivity d method_41376 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41379 d method_41379 + m (Lnet/minecraft/world/entity/ai/Brain;)V initLaySpawnActivity e method_41378 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41381 e method_41381 + m (Lnet/minecraft/world/entity/ai/Brain;)V initJumpActivity f method_41380 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41383 f method_41383 + m (Lnet/minecraft/world/entity/ai/Brain;)V initTongueActivity g method_41382 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/frog/ShootTongue cha net/minecraft/class_7108 + f I TIME_OUT_DURATION c field_37479 + f I CATCH_ANIMATION_DURATION d field_38414 + f I TONGUE_ANIMATION_DURATION e field_37480 + f I UNREACHABLE_TONGUE_TARGETS_COOLDOWN_DURATION f field_39452 + f I MAX_UNREACHBLE_TONGUE_TARGETS_IN_MEMORY g field_39453 + f F EATING_DISTANCE h field_37481 + f F EATING_MOVEMENT_FACTOR i field_37482 + f I eatAnimationTimer j field_37483 + f I calculatePathCounter k field_37484 + f Lnet/minecraft/sounds/SoundEvent; tongueSound l field_37485 + f Lnet/minecraft/sounds/SoundEvent; eatSound m field_37486 + f Lnet/minecraft/world/phys/Vec3; itemSpawnPos n field_37487 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; state o field_37489 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)Z checkExtraStartConditions a method_41384 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)Z canStillUse a method_41385 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/LivingEntity;)Z canPathfindToTarget a method_44332 + p 1 frog + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)V eatEntity b method_42667 + p 1 level + p 2 frog + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V start b method_41387 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/LivingEntity;)V addUnreachableTargetToMemory b method_44333 + p 1 frog + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V stop c method_41388 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V tick d method_41389 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 1 tongueSound + p 2 eatSound +c net/minecraft/world/entity/animal/frog/ShootTongue$State cha$a net/minecraft/class_7108$class_7109 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; MOVE_TO_TARGET a field_37492 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; CATCH_ANIMATION b field_38415 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; EAT_ANIMATION c field_37493 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; DONE d field_37494 + f [Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; $VALUES e field_37495 + m ()[Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; $values a method_41390 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/animal/frog/Tadpole chb net/minecraft/class_7110 + f I ticksToBeFrog b field_37496 + f F HITBOX_WIDTH c field_39302 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_37498 + f I age cd field_37499 + f F HITBOX_HEIGHT d field_39303 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_37497 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V feed a method_41391 + p 1 player + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V usePlayerItem b method_41393 + p 1 player + p 2 stack + m (I)V ageUp c method_41392 + p 1 offset + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gm method_41395 + m ()I getAge gn method_41396 + m ()V ageUp go method_41397 + m ()I getTicksLeftUntilAdult gp method_41398 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57306 i method_57306 + m (Lnet/minecraft/world/item/ItemStack;)Z isFood o method_41399 + p 1 stack + m (I)V setAge s method_41394 + p 1 age + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/frog/TadpoleAi chc net/minecraft/class_7111 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_37500 + f F SPEED_MULTIPLIER_WHEN_IDLING_IN_WATER b field_37502 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_39409 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_44204 a method_44204 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_41400 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;)V updateActivity a method_41401 + p 0 tadpole + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_41402 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_41403 + p 0 brain + m ()V +c net/minecraft/world/entity/animal/frog/package-info chd net/minecraft/class_7112 +c net/minecraft/world/entity/animal/goat/Goat che net/minecraft/class_6053 + f Lnet/minecraft/world/entity/EntityDimensions; LONG_JUMPING_DIMENSIONS cc field_30399 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cd field_30400 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES ce field_30401 + f I GOAT_FALL_DAMAGE_REDUCTION cg field_30402 + f D GOAT_SCREAMING_CHANCE ch field_30403 + f D UNIHORN_CHANCE ci field_39046 + f I ADULT_ATTACK_DAMAGE cj field_34022 + f I BABY_ATTACK_DAMAGE ck field_34023 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_SCREAMING_GOAT cl field_33486 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HAS_LEFT_HORN cm field_39047 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HAS_RIGHT_HORN cn field_39048 + f Z isLoweringHead co field_33487 + f I lowerHeadTick cp field_33488 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/goat/Goat; getBreedOffspring b method_35177 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGoatSpawnRules c method_38067 + p 0 goat + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z hasLeftHorn gk method_43538 + m ()Z hasRightHorn gl method_43539 + m ()Z dropHorn gm method_43540 + m ()V addHorns gn method_43541 + m ()V removeHorns go method_43542 + m ()Z isScreamingGoat gu method_35178 + m ()F getRammingXHeadRot gv method_36283 + m ()Lnet/minecraft/world/item/ItemStack; createHorn s method_43690 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_35179 + m ()Lnet/minecraft/sounds/SoundEvent; getMilkingSound x method_35180 + m (Z)V setScreamingGoat x method_36284 + p 1 isScreamingGoat + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/goat/GoatAi chf net/minecraft/class_6054 + f I RAM_PREPARE_TIME a field_33490 + f I RAM_MAX_DISTANCE b field_33491 + f I MAX_LONG_JUMP_HEIGHT c field_33492 + f I MAX_LONG_JUMP_WIDTH d field_33493 + f F MAX_JUMP_VELOCITY_MULTIPLIER e field_49093 + f I RAM_MIN_DISTANCE f field_33495 + f F ADULT_RAM_KNOCKBACK_FORCE g field_33496 + f F BABY_RAM_KNOCKBACK_FORCE h field_33497 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE i field_30407 + f F SPEED_MULTIPLIER_WHEN_IDLING j field_30406 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT k field_30408 + f F SPEED_MULTIPLIER_WHEN_TEMPTED l field_30409 + f F SPEED_MULTIPLIER_WHEN_PANICKING m field_30410 + f F SPEED_MULTIPLIER_WHEN_PREPARING_TO_RAM n field_33498 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_LONG_JUMPS o field_30411 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_RAMS p field_33499 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_RAMS_SCREAMER q field_33693 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; RAM_TARGET_CONDITIONS r field_33500 + f F SPEED_MULTIPLIER_WHEN_RAMMING s field_33501 + m ()Ljava/util/function/Predicate; getTemptations a method_35181 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_35182 a method_35182 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_35183 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)V updateActivity a method_35186 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;Lnet/minecraft/util/RandomSource;)V initMemories a method_35184 + p 0 goat + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58391 a method_58391 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_36285 b method_36285 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_35185 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36287 b method_36287 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_35187 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)I method_36553 c method_36553 + m (Lnet/minecraft/world/entity/ai/Brain;)V initLongJumpActivity d method_35188 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_43543 d method_43543 + m (Lnet/minecraft/world/entity/ai/Brain;)V initRamActivity e method_36288 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36286 e method_36286 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)D method_36289 f method_36289 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/util/valueproviders/UniformInt; method_36290 g method_36290 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36291 h method_36291 + m ()V + m ()V +c net/minecraft/world/entity/animal/goat/package-info chg net/minecraft/class_6055 +c net/minecraft/world/entity/animal/horse/AbstractChestedHorse chh net/minecraft/class_1492 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_CHEST cc field_6943 + f Lnet/minecraft/world/entity/EntityDimensions; babyDimensions cd field_47806 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V equipChest d method_45374 + p 1 player + p 2 chestStack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createBaseChestedHorseAttributes s method_26898 + m ()Z hasChest t method_6703 + m ()V playChestEquipsSound x method_6705 + m (Z)V setChest x method_6704 + p 1 chested + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/AbstractChestedHorse$1 chh$1 net/minecraft/class_1492$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse; field_27867 b field_27867 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)V +c net/minecraft/world/entity/animal/horse/AbstractHorse chi net/minecraft/class_1496 + f Z canGallop cA field_6964 + f I gallopSoundCounter cB field_6975 + c Used to determine the sound that the horse should make when it steps + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS cD field_6959 + f I FLAG_TAME cE field_30419 + f I FLAG_SADDLE cF field_30420 + f I FLAG_BRED cG field_30421 + f I FLAG_EATING cH field_30422 + f I FLAG_STANDING cI field_30423 + f I FLAG_OPEN_MOUTH cJ field_30424 + f I eatingCounter cK field_6971 + f I mouthCounter cL field_6973 + f I standCounter cM field_6970 + f F eatAnim cN field_6969 + f F eatAnimO cO field_6966 + f F standAnim cP field_6967 + f F standAnimO cQ field_6963 + f F mouthAnim cR field_6965 + f F mouthAnimO cS field_6961 + f Ljava/util/UUID; owner cT field_42462 + f Lnet/minecraft/world/Container; bodyArmorAccess cU field_48830 + f F MIN_MOVEMENT_SPEED cc field_42641 + f F MAX_MOVEMENT_SPEED cd field_42642 + f F MIN_JUMP_STRENGTH ce field_42643 + f F MAX_JUMP_STRENGTH cg field_42644 + f F MIN_HEALTH ch field_42645 + f F MAX_HEALTH ci field_42646 + f F BACKWARDS_MOVE_SPEED_FACTOR cj field_42979 + f F SIDEWAYS_MOVE_SPEED_FACTOR ck field_42980 + f Ljava/util/function/Predicate; PARENT_HORSE_SELECTOR cl field_6956 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; MOMMY_TARGETING cm field_18118 + f I EQUIPMENT_SLOT_OFFSET cn field_30413 + f I CHEST_SLOT_OFFSET co field_30414 + f I INVENTORY_SLOT_OFFSET cp field_30415 + f D BREEDING_CROSS_FACTOR cq field_42647 + f I INV_SLOT_SADDLE cr field_30416 + f I INV_BASE_COUNT cs field_30418 + f I tailCounter ct field_6957 + f I sprintCounter cu field_6958 + f Z isJumping cv field_6968 + f Lnet/minecraft/world/SimpleContainer; inventory cw field_6962 + f I temper cx field_6955 + c The higher this value, the more likely the horse is to be tamed next time a player rides it. + f F playerJumpPendingScale cy field_6976 + f Z allowStandSliding cz field_6960 + m (Z)V setBred A method_6751 + p 1 breeding + m (Z)V setEating B method_6740 + p 1 eating + m (Z)V setStanding C method_6737 + p 1 standing + m (Z)V spawnTamingParticles D method_6760 + c Spawns particles for the horse entity. + p 1 tamed + c whether to spawn hearts or smoke. + m (F)F getEatAnim H method_6739 + p 1 partialTick + m (F)F getStandAnim I method_6767 + p 1 partialTick + m (F)F getMouthAnim J method_6772 + p 1 partialTick + m (DDDDLnet/minecraft/util/RandomSource;)D createOffspringAttribute a method_49123 + p 0 value1 + p 2 value2 + p 4 min + p 6 max + p 8 random + m (Lnet/minecraft/util/RandomSource;)V randomizeAttributes a method_6001 + p 1 random + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V setOffspringAttributes a method_6743 + p 1 parent + p 2 child + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lnet/minecraft/core/Holder;DD)V setOffspringAttribute a method_49124 + p 1 parent + p 2 child + p 3 attribute + p 4 min + p 6 max + m (Lnet/minecraft/world/entity/player/Player;)V doPlayerRide a method_6726 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Z handleEating a method_6742 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/block/SoundType;)V playGallopSound a method_6761 + p 1 soundType + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getDismountLocationInDirection a method_27930 + p 1 direction + p 2 passenger + m (Ljava/util/function/DoubleSupplier;)D generateJumpStrength a method_6774 + p 0 supplier + m (Ljava/util/function/IntUnaryOperator;)F generateMaxHealth a method_6754 + p 0 operator + m ()I getInventoryColumns af_ method_6702 + m (FLnet/minecraft/world/phys/Vec3;)V executeRidersJump b method_45343 + p 1 playerJumpPendingScale + p 2 travelVector + m (Lnet/minecraft/world/Container;)Z hasInventoryChanged b method_33338 + p 1 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V equipBodyArmor b method_45375 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/block/SoundType;)Z isWoodSoundType b method_49996 + p 1 soundType + m (Ljava/util/UUID;)V setOwnerUUID b method_6732 + p 1 uuid + m (Ljava/util/function/DoubleSupplier;)D generateSpeed b method_6728 + p 0 supplier + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/InteractionResult; fedFood c method_30009 + p 1 player + p 2 stack + m (IZ)V setFlag d method_6769 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/player/Player;)Z tameWithName g method_6752 + p 1 player + m ()V addBehaviourGoals gA method_6764 + m ()Z isJumping gB method_6763 + m ()Z isEating gC method_6724 + m ()Z isStanding gD method_6736 + m ()Z isBred gE method_6744 + m ()I getTemper gF method_6729 + m ()I getInventorySize gG method_6750 + m ()V createInventory gH method_6721 + m ()V syncSaddleToClients gI method_56679 + m ()Lnet/minecraft/sounds/SoundEvent; getAngrySound gJ method_6747 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createBaseHorseAttributes gK method_26899 + m ()I getMaxTemper gL method_6755 + m ()V followMommy gM method_6746 + m ()Z canEatGrass gN method_6762 + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientStandSound gO method_45376 + m ()V standIfPossible gP method_6748 + m ()V makeMad gQ method_6757 + m ()V playJumpSound gR method_6723 + m ()Z canParent gS method_6734 + c Returns {@code true} if the horse entity ready to mate. (no rider, not riding, tame, adult, not steril...) + m ()I getAmbientStandInterval gT method_45377 + m ()Lnet/minecraft/world/Container; getBodyArmorAccess gU method_56680 + m ()Z canPerformRearing gl method_45349 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound gm method_28368 + m ()D method_49125 gn method_49125 + m ()D method_49126 go method_49126 + m ()D method_49127 gu method_49127 + m ()D method_49128 gv method_49128 + m ()Z isTamed gz method_6727 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec2; getRiddenRotation j method_49489 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6741 k method_6741 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58392 n method_58392 + m ()V eating s method_6733 + m ()V moveTail t method_6759 + m (I)Z getFlag t method_6730 + p 1 flagId + m (I)V setTemper u method_6749 + p 1 temper + m (I)I modifyTemper v method_6745 + p 1 addedTemper + m (I)I getInventorySize w method_60977 + p 0 columns + m ()V openMouth x method_6738 + m (I)I method_49129 x method_49129 + m (I)I method_49130 y method_49130 + m (Z)V setTamed y method_6766 + p 1 tamed + m (Z)V setIsJumping z method_6758 + p 1 jumping + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/AbstractHorse$1 chi$1 net/minecraft/class_1496$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; field_48831 b field_48831 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/entity/animal/horse/AbstractHorse$2 chi$2 net/minecraft/class_1496$2 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; field_48832 b field_48832 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/entity/animal/horse/Donkey chj net/minecraft/class_1495 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/Horse chk net/minecraft/class_1498 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE_VARIANT cc field_6990 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cd field_47807 + m (Lnet/minecraft/world/entity/animal/horse/Variant;)V setVariant a method_47873 + p 1 variant + m (Lnet/minecraft/world/entity/animal/horse/Variant;Lnet/minecraft/world/entity/animal/horse/Markings;)V setVariantAndMarkings a method_27076 + p 1 variant + p 2 marking + m ()Lnet/minecraft/world/entity/animal/horse/Variant; getVariant s method_27077 + m ()Lnet/minecraft/world/entity/animal/horse/Markings; getMarkings t method_27078 + m ()I getTypeVariant x method_6788 + m (I)V setTypeVariant x method_6783 + p 1 typeVariant + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/Horse$HorseGroupData chk$a net/minecraft/class_1498$class_1499 + f Lnet/minecraft/world/entity/animal/horse/Variant; variant a field_6994 + m (Lnet/minecraft/world/entity/animal/horse/Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/horse/Llama chl net/minecraft/class_1501 + f I MAX_STRENGTH cc field_30425 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STRENGTH_ID cd field_6998 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ce field_6996 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cg field_47808 + f Z didSpit ch field_6999 + f Lnet/minecraft/world/entity/animal/horse/Llama; caravanHead ci field_7000 + f Lnet/minecraft/world/entity/animal/horse/Llama; caravanTail cj field_6997 + m (Z)V setDidSpit E method_6808 + p 1 didSpit + m (Lnet/minecraft/world/entity/animal/horse/Llama$Variant;)V setVariant a method_47874 + p 1 variant + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V joinCaravan a method_6791 + p 1 caravanHead + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/horse/Llama; getBreedOffspring b method_6804 + p 1 level + p 2 otherParent + m (Lnet/minecraft/util/RandomSource;)V setRandomStrength b method_6796 + p 1 random + m ()Z hasCaravanTail gV method_6793 + m ()Z inCaravan gW method_6805 + m ()Lnet/minecraft/world/entity/animal/horse/Llama; getCaravanHead gX method_6806 + m ()Z isTraderLlama gn method_6807 + m ()I getStrength go method_6803 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26900 + m ()Lnet/minecraft/world/entity/animal/horse/Llama$Variant; getVariant gv method_6809 + m ()Lnet/minecraft/world/item/DyeColor; getSwag gw method_6800 + m ()Lnet/minecraft/world/entity/animal/horse/Llama; makeNewLlama gx method_18004 + m ()V leaveCaravan gy method_6797 + m (Lnet/minecraft/world/entity/LivingEntity;)V spit k method_6792 + p 1 target + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/DyeColor; getDyeColor n method_6794 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_58393 p method_58393 + m (I)V setStrength x method_6802 + p 1 strength + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/Llama$LlamaAttackWolfGoal chl$a net/minecraft/class_1501$class_1502 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18446 b method_18446 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Llama$LlamaGroupData chl$b net/minecraft/class_1501$class_1503 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; variant a field_7001 + m (Lnet/minecraft/world/entity/animal/horse/Llama$Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/horse/Llama$LlamaHurtByTargetGoal chl$c net/minecraft/class_1501$class_1504 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Llama$Variant chl$d net/minecraft/class_1501$class_7993 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; CREAMY a field_41586 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; WHITE b field_41587 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; BROWN c field_41588 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; GRAY d field_41589 + f Lcom/mojang/serialization/Codec; CODEC e field_41590 + f Ljava/util/function/IntFunction; BY_ID f field_41591 + f I id g field_41592 + f Ljava/lang/String; name h field_41593 + f [Lnet/minecraft/world/entity/animal/horse/Llama$Variant; $VALUES i field_41594 + m ()I getId a method_47875 + m (I)Lnet/minecraft/world/entity/animal/horse/Llama$Variant; byId a method_47876 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Llama$Variant; $values b method_47877 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/horse/Markings chm net/minecraft/class_5148 + f Lnet/minecraft/world/entity/animal/horse/Markings; NONE a field_23808 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE b field_23809 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE_FIELD c field_23810 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE_DOTS d field_23811 + f Lnet/minecraft/world/entity/animal/horse/Markings; BLACK_DOTS e field_23812 + f Ljava/util/function/IntFunction; BY_ID f field_23813 + f I id g field_23814 + f [Lnet/minecraft/world/entity/animal/horse/Markings; $VALUES h field_23815 + m ()I getId a method_27079 + m (I)Lnet/minecraft/world/entity/animal/horse/Markings; byId a method_27080 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Markings; $values b method_36645 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/horse/Mule chn net/minecraft/class_1500 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/SkeletonHorse cho net/minecraft/class_1506 + f Lnet/minecraft/world/entity/animal/horse/SkeletonTrapGoal; skeletonTrapGoal cc field_7003 + f I TRAP_MAX_LIFE cd field_30427 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ce field_47809 + f Z isTrap cg field_7005 + f I trapTime ch field_7004 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSkeletonHorseSpawnRules c method_55001 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26901 + m ()Z isTrap t method_6812 + m (Z)V setTrap x method_6813 + p 1 isTrap + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/SkeletonTrapGoal chp net/minecraft/class_1505 + f Lnet/minecraft/world/entity/animal/horse/SkeletonHorse; horse a field_7002 + m (Lnet/minecraft/world/DifficultyInstance;)Lnet/minecraft/world/entity/animal/horse/AbstractHorse; createHorse a method_6810 + p 1 difficulty + m (Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Lnet/minecraft/world/entity/monster/Skeleton; createSkeleton a method_6811 + p 1 difficulty + p 2 horse + m (Lnet/minecraft/world/entity/monster/Skeleton;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/DifficultyInstance;)V enchant a method_59939 + p 1 skeleton + p 2 slot + p 3 difficulty + m (Lnet/minecraft/world/entity/animal/horse/SkeletonHorse;)V + p 1 horse +c net/minecraft/world/entity/animal/horse/TraderLlama chq net/minecraft/class_3986 + f I despawnDelay cc field_17716 + m ()V maybeDespawn gZ method_20501 + m ()Z canDespawn ha method_20502 + m ()Z isLeashedToWanderingTrader hb method_20503 + m ()Z isLeashedToSomethingOtherThanTheWanderingTrader hc method_20504 + m (I)V setDespawnDelay x method_35189 + p 1 despawnDelay + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/TraderLlama$TraderLlamaDefendWanderingTraderGoal chq$a net/minecraft/class_3986$class_3987 + f Lnet/minecraft/world/entity/animal/horse/Llama; llama a field_17718 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurtBy b field_17719 + f I timestamp c field_17720 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Variant chr net/minecraft/class_5149 + f Lnet/minecraft/world/entity/animal/horse/Variant; WHITE a field_23816 + f Lnet/minecraft/world/entity/animal/horse/Variant; CREAMY b field_23817 + f Lnet/minecraft/world/entity/animal/horse/Variant; CHESTNUT c field_23818 + f Lnet/minecraft/world/entity/animal/horse/Variant; BROWN d field_23819 + f Lnet/minecraft/world/entity/animal/horse/Variant; BLACK e field_23820 + f Lnet/minecraft/world/entity/animal/horse/Variant; GRAY f field_23821 + f Lnet/minecraft/world/entity/animal/horse/Variant; DARK_BROWN g field_23822 + f Lcom/mojang/serialization/Codec; CODEC h field_41595 + f Ljava/util/function/IntFunction; BY_ID i field_23823 + f I id j field_23824 + f Ljava/lang/String; name k field_41596 + f [Lnet/minecraft/world/entity/animal/horse/Variant; $VALUES l field_23825 + m ()I getId a method_27082 + m (I)Lnet/minecraft/world/entity/animal/horse/Variant; byId a method_27083 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Variant; $values b method_36646 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/horse/ZombieHorse chs net/minecraft/class_1507 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cc field_47810 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkZombieHorseSpawnRules c method_55002 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26902 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/package-info cht net/minecraft/class_6056 +c net/minecraft/world/entity/animal/package-info chu net/minecraft/class_6057 +c net/minecraft/world/entity/animal/sniffer/Sniffer chv net/minecraft/class_8153 + f Lnet/minecraft/world/entity/AnimationState; feelingHappyAnimationState cc field_42650 + f Lnet/minecraft/world/entity/AnimationState; scentingAnimationState cd field_42651 + f Lnet/minecraft/world/entity/AnimationState; sniffingAnimationState ce field_42652 + f Lnet/minecraft/world/entity/AnimationState; diggingAnimationState cg field_42654 + f Lnet/minecraft/world/entity/AnimationState; risingAnimationState ch field_42655 + f I DIGGING_PARTICLES_DELAY_TICKS ci field_42656 + f I DIGGING_PARTICLES_DURATION_TICKS cj field_42657 + f I DIGGING_PARTICLES_AMOUNT ck field_42658 + f I DIGGING_DROP_SEED_OFFSET_TICKS cl field_42659 + f I SNIFFER_BABY_AGE_TICKS cm field_42661 + f F DIGGING_BB_HEIGHT_OFFSET cn field_44785 + f Lnet/minecraft/world/entity/EntityDimensions; DIGGING_DIMENSIONS co field_44786 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STATE cp field_42662 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DROP_SEED_AT_TICK cq field_42663 + m (Lnet/minecraft/world/entity/AnimationState;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; emitDiggingParticles a method_49131 + p 1 animationState + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; transitionTo a method_49132 + p 1 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/GlobalPos;)Z method_51154 a method_51154 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; setState b method_49133 + p 1 state + m ()Ljava/util/stream/Stream; getExploredPositions gA method_49143 + m ()V playSearchingSound gB method_49144 + m ()Z canSniff gk method_51155 + m ()Z canPlayDiggingSound gl method_49150 + m ()Ljava/util/Optional; calculateDigPosition gm method_49134 + m ()Z canDig gn method_49135 + m ()Lnet/minecraft/core/BlockPos; getHeadBlock go method_51508 + m ()Lnet/minecraft/world/phys/Vec3; getHeadPosition gu method_49137 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; getState gv method_49138 + m ()V resetAnimations gw method_49139 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onScentingStart gx method_51156 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onDiggingStart gy method_49141 + m ()V dropSeed gz method_49142 + m (Lnet/minecraft/core/BlockPos;)Z canDig h method_49140 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; storeExploredPosition i method_49145 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z method_51157 j method_51157 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_49146 + m ()Z isSearching t method_51301 + m (I)Lnet/minecraft/world/phys/Vec3; method_49148 t method_49148 + m ()Z isTempted x method_51158 + m (Z)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onDiggingComplete x method_49149 + p 1 storeExploredPosition + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/sniffer/Sniffer$State chv$a net/minecraft/class_8153$class_8154 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; IDLING a field_42665 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; FEELING_HAPPY b field_42666 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SCENTING c field_42667 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SNIFFING d field_42668 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SEARCHING e field_42669 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; DIGGING f field_42670 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; RISING g field_42671 + f Ljava/util/function/IntFunction; BY_ID h field_48340 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48341 + f I id j field_48342 + f [Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; $VALUES k field_42672 + m ()I id a method_56085 + m ()[Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; $values b method_49151 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi chw net/minecraft/class_8155 + f Ljava/util/List; SENSOR_TYPES a field_42673 + f Ljava/util/List; MEMORY_TYPES b field_42674 + f Lorg/slf4j/Logger; LOGGER c field_42675 + f I MAX_LOOK_DISTANCE d field_42676 + f I SNIFFING_COOLDOWN_TICKS e field_42677 + f F SPEED_MULTIPLIER_WHEN_IDLING f field_42678 + f F SPEED_MULTIPLIER_WHEN_PANICKING g field_42679 + f F SPEED_MULTIPLIER_WHEN_SNIFFING h field_42680 + f F SPEED_MULTIPLIER_WHEN_TEMPTED i field_44476 + m ()Ljava/util/function/Predicate; getTemptations a method_51159 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52174 a method_52174 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_49152 + p 0 brain + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)V updateActivity a method_49153 + p 0 sniffer + m (Lnet/minecraft/world/item/ItemStack;)Z method_58394 a method_58394 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_51160 b method_51160 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_49154 + p 0 brain + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; resetSniffing b method_51161 + p 0 sniffer + m (Lnet/minecraft/world/entity/ai/Brain;)V initSniffingActivity c method_49155 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initDigActivity d method_49156 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity e method_49157 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$1 chw$1 net/minecraft/class_8155$1 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start a method_57004 + m (F)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$2 chw$2 net/minecraft/class_8155$2 + m (Lnet/minecraft/world/entity/EntityType;)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$3 chw$3 net/minecraft/class_8155$3 + m (Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Digging chw$a net/minecraft/class_8155$class_8156 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49158 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49159 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49160 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49161 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$FeelingHappy chw$b net/minecraft/class_8155$class_8157 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49162 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49163 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49164 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$FinishedDigging chw$c net/minecraft/class_8155$class_8158 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49165 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49166 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49167 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49168 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Scenting chw$d net/minecraft/class_8155$class_8159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_51162 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49169 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49170 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49171 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Searching chw$e net/minecraft/class_8155$class_8160 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49172 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49173 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49174 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49175 + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Sniffing chw$f net/minecraft/class_8155$class_8161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49176 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49177 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;Lnet/minecraft/core/BlockPos;)V method_49178 a method_49178 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49179 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49180 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/package-info chx net/minecraft/class_9235 +c net/minecraft/world/entity/boss/EnderDragonPart chy net/minecraft/class_1508 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; parentMob b field_7007 + f Ljava/lang/String; name c field_7006 + f Lnet/minecraft/world/entity/EntityDimensions; size d field_18119 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;Ljava/lang/String;FF)V + p 1 parentMob + p 2 name + p 3 width + p 4 height +c net/minecraft/world/entity/boss/enderdragon/EndCrystal chz net/minecraft/class_1511 + f I time b field_7034 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BEAM_TARGET c field_7033 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOW_BOTTOM d field_7035 + m (Lnet/minecraft/world/damagesource/DamageSource;)V onDestroyedBy a method_6835 + p 1 source + m (Lnet/minecraft/core/BlockPos;)V setBeamTarget a method_6837 + p 1 beamTarget + m (Z)V setShowBottom a method_6839 + p 1 showBottom + m ()Lnet/minecraft/core/BlockPos; getBeamTarget p method_6838 + m ()Z showsBottom s method_6836 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/boss/enderdragon/EnderDragon cia net/minecraft/class_1510 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PHASE b field_7013 + f F sittingDamageReceived cA field_7029 + f [Lnet/minecraft/world/level/pathfinder/Node; nodes cB field_7012 + f [I nodeAdjacency cD field_7025 + f Lnet/minecraft/world/level/pathfinder/BinaryHeap; openSet cE field_7008 + f [[D positions c field_7026 + f F oFlapTime cb field_7019 + f F flapTime cc field_7030 + f Z inWall cd field_7027 + f I dragonDeathTime ce field_7031 + f F yRotA cf field_20865 + f Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal; nearestCrystal cg field_7024 + f Lorg/slf4j/Logger; LOGGER ch field_7021 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; CRYSTAL_DESTROY_TARGETING ci field_18120 + f I GROWL_INTERVAL_MIN cj field_30428 + f I GROWL_INTERVAL_MAX ck field_30429 + f F SITTING_ALLOWED_DAMAGE_PERCENTAGE cl field_30430 + f Ljava/lang/String; DRAGON_DEATH_TIME_KEY cm field_33910 + f Ljava/lang/String; DRAGON_PHASE_KEY cn field_33911 + f [Lnet/minecraft/world/entity/boss/EnderDragonPart; subEntities co field_7032 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; neck cp field_7011 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; body cq field_7023 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail1 cr field_7020 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail2 cs field_7009 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail3 ct field_7022 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; wing1 cu field_7015 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; wing2 cv field_7014 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight; dragonFight cw field_7016 + f Lnet/minecraft/core/BlockPos; fightOrigin cx field_44875 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager; phaseManager cy field_7028 + f I growlTime cz field_7018 + f I posPointer d field_7010 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; head e field_7017 + m (F)Lnet/minecraft/world/phys/Vec3; getHeadLookVector H method_6834 + p 1 partialTicks + m (IF)[D getLatencyPos a method_6817 + c Returns a double[3] array with movement offsets, used to calculate trailing tail/neck positions. [0] = yaw offset, [1] = y offset, [2] = unused, always 0. Parameters: buffer index offset, partial ticks. + p 1 bufferIndexOffset + p 2 partialTicks + m (IILnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_6833 + c Find and return a path among the circles described by pathPoints, or null if the shortest path would just be directly between the start and finish with no intermediate points.\n\nStarting with pathPoint[startIdx], it searches the neighboring points (and their neighboring points, and so on) until it reaches pathPoint[finishIdx], at which point it calls makePath to seal the deal. + p 1 startIndex + p 2 finishIndex + p 3 andThen + m (I[D[D)F getHeadPartYOffset a method_6823 + p 1 partIndex + p 2 spineEndOffsets + p 3 headPartOffsets + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)V knockBack a method_6825 + p 1 level + p 2 targets + m (Lnet/minecraft/world/entity/boss/EnderDragonPart;DDD)V tickPart a method_22863 + p 1 part + p 2 offsetX + p 4 offsetY + p 6 offsetZ + m (Lnet/minecraft/world/entity/boss/EnderDragonPart;Lnet/minecraft/world/damagesource/DamageSource;F)Z hurt a method_6816 + p 1 part + p 2 source + p 3 damage + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/damagesource/DamageSource;)V onCrystalDestroyed a method_6828 + p 1 crystal + p 2 pos + p 3 damageSource + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight;)V setDragonFight a method_51852 + p 1 dragonFight + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Path; reconstructPath a method_6826 + c Create and return a new PathEntity defining a path from the start to the finish, using the connections already made by the caller, findPath. + p 1 start + p 2 finish + m (Lnet/minecraft/world/phys/AABB;)Z checkWalls b method_6821 + c Destroys all blocks that aren't associated with 'The End' inside the given bounding box. + p 1 area + m (Ljava/util/List;)V hurt b method_6827 + c Attacks all entities inside this list, dealing 5 hearts of damage. + p 1 entities + m (Lnet/minecraft/core/BlockPos;)V setFightOrigin c method_51853 + p 1 fightOrigin + m (Lnet/minecraft/world/damagesource/DamageSource;F)Z reallyHurt g method_6819 + c Provides a way to cause damage to an ender dragon. + p 1 damageSource + p 2 amount + m ()[Lnet/minecraft/world/entity/boss/EnderDragonPart; getSubEntities gg method_5690 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager; getPhaseManager gh method_6831 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight; getDragonFight gi method_6829 + m ()F getHeadYOffset gj method_6820 + m ()V checkCrystals gk method_6830 + c Updates the state of the dragon's current endercrystal. + m (D)F rotWrap i method_6832 + c Simplifies the value of a number by adding/subtracting 180 to the point that the number is between -180 and 180. + p 1 angle + m (DDD)I findClosestNode q method_6822 + c Returns the index into pathPoints of the nearest PathPoint. + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/core/BlockPos; getFightOrigin s method_51854 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26903 + m ()I findClosestNode x method_6818 + c Generates values for the fields pathPoints, and neighbors, and then returns the nearest pathPoint to the specified position. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/boss/enderdragon/package-info cib net/minecraft/class_6058 +c net/minecraft/world/entity/boss/enderdragon/phases/AbstractDragonPhaseInstance cic net/minecraft/class_1512 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; dragon a field_7036 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/AbstractDragonSittingPhase cid net/minecraft/class_1514 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonChargePlayerPhase cie net/minecraft/class_1513 + f Lorg/slf4j/Logger; LOGGER b field_7039 + f I CHARGE_RECOVERY_TIME c field_30431 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7038 + f I timeSinceCharge e field_7037 + m (Lnet/minecraft/world/phys/Vec3;)V setTarget a method_6840 + p 1 targetLocation + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonDeathPhase cif net/minecraft/class_1515 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7041 + f I time c field_7040 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonHoldingPatternPhase cig net/minecraft/class_1517 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; NEW_TARGET_TARGETING b field_18121 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7043 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7045 + f Z clockwise e field_7044 + m (Lnet/minecraft/world/entity/player/Player;)V strafePlayer a method_6843 + p 1 player + m ()V findNewTarget j method_6841 + m ()V navigateToNextPathNode k method_6842 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonHoverPhase cih net/minecraft/class_1516 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7042 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonLandingApproachPhase cii net/minecraft/class_1519 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; NEAR_EGG_TARGETING b field_18122 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7047 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7048 + m ()V findNewTarget j method_6844 + m ()V navigateToNextPathNode k method_6845 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonLandingPhase cij net/minecraft/class_1518 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7046 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance cik net/minecraft/class_1521 + m ()Z isSitting a method_6848 + m (Lnet/minecraft/world/damagesource/DamageSource;F)F onHurt a method_6852 + p 1 damageSource + p 2 amount + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/entity/player/Player;)V onCrystalDestroyed a method_6850 + p 1 crystal + p 2 pos + p 3 damageSource + p 4 player + m ()V doClientTick b method_6853 + c Generates particle effects appropriate to the phase (or sometimes sounds).\nCalled by dragon's onLivingUpdate. Only used when worldObj.isRemote. + m ()V doServerTick c method_6855 + c Gives the phase a chance to update its status.\nCalled by dragon's onLivingUpdate. Only used when !worldObj.isRemote. + m ()V begin d method_6856 + c Called when this phase is set to active + m ()V end e method_6854 + m ()F getFlySpeed f method_6846 + c Returns the maximum amount dragon may rise or fall during this phase + m ()Lnet/minecraft/world/phys/Vec3; getFlyTargetLocation g method_6851 + c Returns the location the dragon is flying toward + m ()F getTurnSpeed h method_6847 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; getPhase i method_6849 +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingAttackingPhase cil net/minecraft/class_1520 + f I ROAR_DURATION b field_30432 + f I attackingTicks c field_7049 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingFlamingPhase cim net/minecraft/class_1523 + f I FLAME_DURATION b field_30433 + f I SITTING_FLAME_ATTACKS_COUNT c field_30434 + f I WARMUP_TIME d field_30435 + f I flameTicks e field_7053 + f I flameCount f field_7052 + f Lnet/minecraft/world/entity/AreaEffectCloud; flame g field_7051 + m ()V resetFlameCount j method_6857 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingScanningPhase cin net/minecraft/class_1522 + f I SITTING_SCANNING_IDLE_TICKS b field_30436 + f I SITTING_ATTACK_Y_VIEW_RANGE c field_30437 + f I SITTING_ATTACK_VIEW_RANGE d field_30438 + f I SITTING_CHARGE_VIEW_RANGE e field_30439 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; CHARGE_TARGETING f field_18123 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; scanTargeting g field_18124 + f I scanningTime h field_7050 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;Lnet/minecraft/world/entity/LivingEntity;)Z method_18447 a method_18447 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonStrafePlayerPhase cio net/minecraft/class_1525 + f Lorg/slf4j/Logger; LOGGER b field_7061 + f I FIREBALL_CHARGE_AMOUNT c field_30440 + f I fireballCharge d field_7060 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath e field_7059 + f Lnet/minecraft/world/phys/Vec3; targetLocation f field_7057 + f Lnet/minecraft/world/entity/LivingEntity; attackTarget g field_7062 + f Z holdingPatternClockwise h field_7058 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_6862 + p 1 attackTarget + m ()V findNewTarget j method_6860 + m ()V navigateToNextPathNode k method_6861 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonTakeoffPhase cip net/minecraft/class_1524 + f Z firstTick b field_7056 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7054 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7055 + m ()V findNewTarget j method_6858 + m ()V navigateToNextPathNode k method_6859 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase ciq net/minecraft/class_1527 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; HOLDING_PATTERN a field_7069 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; STRAFE_PLAYER b field_7076 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; LANDING_APPROACH c field_7071 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; LANDING d field_7067 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; TAKEOFF e field_7077 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_FLAMING f field_7072 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_SCANNING g field_7081 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_ATTACKING h field_7073 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; CHARGING_PLAYER i field_7078 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; DYING j field_7068 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; HOVERING k field_7075 + f [Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; phases l field_7080 + f Ljava/lang/Class; instanceClass m field_7074 + f I id n field_7079 + f Ljava/lang/String; name o field_7070 + m ()Ljava/lang/reflect/Constructor; getConstructor a method_6867 + m (I)Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; getById a method_6868 + c Gets a phase by its ID. If the phase is out of bounds (negative or beyond the end of the phase array), returns {@link #HOLDING_PATTERN}. + p 0 id + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; createInstance a method_6866 + p 1 dragon + m (Ljava/lang/Class;Ljava/lang/String;)Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; create a method_6870 + p 0 phase + p 1 name + m ()I getId b method_6871 + m ()I getCount c method_6869 + m (ILjava/lang/Class;Ljava/lang/String;)V + p 1 id + p 2 instanceClass + p 3 name + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager cir net/minecraft/class_1526 + f Lorg/slf4j/Logger; LOGGER a field_7066 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; dragon b field_7065 + f [Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; phases c field_7064 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; currentPhase d field_7063 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; getCurrentPhase a method_6864 + m (Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase;)V setPhase a method_6863 + p 1 phase + m (Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase;)Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; getPhase b method_6865 + p 1 phase + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/package-info cis net/minecraft/class_6059 +c net/minecraft/world/entity/boss/package-info cit net/minecraft/class_6060 +c net/minecraft/world/entity/boss/wither/WitherBoss ciu net/minecraft/class_1528 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_A b field_7088 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_B c field_7090 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_INV cc field_7085 + f I INVULNERABLE_TICKS cd field_30441 + f [F xRotHeads ce field_7084 + f [F yRotHeads cf field_7083 + f [F xRotOHeads cg field_7095 + f [F yRotOHeads ch field_7094 + f [I nextHeadUpdate ci field_7091 + f [I idleHeadUpdates cj field_7092 + f I destroyBlocksTick ck field_7082 + f Lnet/minecraft/server/level/ServerBossEvent; bossEvent cl field_7093 + f Ljava/util/function/Predicate; LIVING_ENTITY_SELECTOR cm field_7086 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGETING_CONDITIONS cn field_18125 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_C d field_7089 + f Ljava/util/List; DATA_TARGETS e field_7087 + m (FFF)F rotlerp a method_6886 + p 1 angle + p 2 targetAngle + p 3 max + m (IDDDZ)V performRangedAttack a method_6877 + c Launches a Wither skull toward (par2, par4, par6) + p 1 head + p 2 x + p 4 y + p 6 z + p 8 isDangerous + m (II)V setAlternativeTarget a method_6876 + c Updates the target entity ID + p 1 targetOffset + p 2 newId + m (ILnet/minecraft/world/entity/LivingEntity;)V performRangedAttack a method_6878 + p 1 head + p 2 target + m (I)F getHeadYRot b method_6879 + p 1 head + m (I)F getHeadXRot c method_6887 + p 1 head + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canDestroy c method_6883 + p 0 state + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6873 j method_6873 + m ()V makeInvulnerable s method_6885 + c Initializes this Wither's explosion sequence and makes it invulnerable. Called immediately after spawning. + m (I)V setInvulnerableTicks s method_6875 + p 1 invulnerableTicks + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26904 + m (I)I getAlternativeTarget t method_6882 + c Returns the target entity ID if present, or -1 if not + p 1 head + c The target offset, should be from 0-2 + m (I)D getHeadX u method_6874 + p 1 head + m (I)D getHeadY v method_6880 + p 1 head + m (I)D getHeadZ w method_6881 + p 1 head + m ()I getInvulnerableTicks x method_6884 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/boss/wither/WitherBoss$WitherDoNothingGoal ciu$a net/minecraft/class_1528$class_1529 + f Lnet/minecraft/world/entity/boss/wither/WitherBoss; field_7096 a field_7096 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;)V +c net/minecraft/world/entity/boss/wither/package-info civ net/minecraft/class_6061 +c net/minecraft/world/entity/decoration/ArmorStand ciw net/minecraft/class_1531 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CLIENT_FLAGS bH field_7107 + f I WOBBLE_TIME b field_30443 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEAD_POSE bI field_7123 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BODY_POSE bJ field_7122 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_ARM_POSE bK field_7116 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_ARM_POSE bL field_7105 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_LEG_POSE bM field_7127 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_LEG_POSE bN field_7125 + f J lastHit bO field_7112 + c After punching the stand, the cooldown before you can punch it again without breaking it. + f Z ENABLE_ARMS bP field_30445 + f Lnet/minecraft/core/Rotations; DEFAULT_HEAD_POSE bQ field_7113 + f Lnet/minecraft/core/Rotations; DEFAULT_BODY_POSE bR field_7119 + f Lnet/minecraft/core/Rotations; DEFAULT_LEFT_ARM_POSE bS field_7124 + f Lnet/minecraft/core/Rotations; DEFAULT_RIGHT_ARM_POSE bT field_7115 + f Lnet/minecraft/core/Rotations; DEFAULT_LEFT_LEG_POSE bU field_7121 + f Lnet/minecraft/core/Rotations; DEFAULT_RIGHT_LEG_POSE bV field_7117 + f Lnet/minecraft/world/entity/EntityDimensions; MARKER_DIMENSIONS bW field_26745 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS bX field_26746 + f D FEET_OFFSET bY field_30447 + f D CHEST_OFFSET bZ field_30448 + f I DISABLE_TAKING_OFFSET c field_30446 + f D LEGS_OFFSET ca field_30449 + f D HEAD_OFFSET cb field_30450 + f Ljava/util/function/Predicate; RIDABLE_MINECARTS cc field_7102 + f Lnet/minecraft/core/NonNullList; handItems cd field_7114 + f Lnet/minecraft/core/NonNullList; armorItems ce field_7108 + f Z invisible cf field_7111 + f I disabledSlots cg field_7118 + f Lnet/minecraft/core/Rotations; headPose ch field_7104 + f Lnet/minecraft/core/Rotations; bodyPose ci field_7106 + f Lnet/minecraft/core/Rotations; leftArmPose cj field_7126 + f Lnet/minecraft/core/Rotations; rightArmPose ck field_7120 + f Lnet/minecraft/core/Rotations; leftLegPose cl field_7110 + f Lnet/minecraft/core/Rotations; rightLegPose cm field_7103 + f I DISABLE_PUTTING_OFFSET d field_30451 + f I CLIENT_FLAG_SMALL e field_30452 + f I CLIENT_FLAG_SHOW_ARMS f field_30453 + f I CLIENT_FLAG_NO_BASEPLATE g field_30442 + f I CLIENT_FLAG_MARKER h field_30444 + m ()Lnet/minecraft/core/Rotations; getHeadPose A method_6921 + m ()Lnet/minecraft/core/Rotations; getBodyPose B method_6923 + m ()Lnet/minecraft/core/Rotations; getLeftArmPose C method_6930 + m ()Lnet/minecraft/core/Rotations; getRightArmPose D method_6903 + m ()Lnet/minecraft/core/Rotations; getLeftLegPose E method_6917 + m ()Lnet/minecraft/core/Rotations; getRightLegPose F method_6900 + m ()Z hasPhysics H method_18059 + m ()Lnet/minecraft/nbt/CompoundTag; writePose I method_6911 + m ()V showBreakingParticles J method_6898 + m ()V playBrokenSound L method_6920 + m (BIZ)B setBit a method_6906 + p 1 oldBit + p 2 offset + p 3 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;F)V causeDamage a method_6905 + p 1 level + p 2 damageSource + p 3 damageAmount + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)Z swapItem a method_6904 + p 1 player + p 2 slot + p 3 stack + p 4 hand + m (Lnet/minecraft/core/Rotations;)V setHeadPose a method_6919 + p 1 headPose + m (Z)V setShowArms a method_6913 + p 1 showArms + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V brokenByPlayer b method_6924 + p 1 level + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z method_6918 b method_6918 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EquipmentSlot; getClickedSlot b method_6916 + p 1 vector + m (Lnet/minecraft/core/Rotations;)V setBodyPose b method_6927 + p 1 bodyPose + m (Z)V setNoBasePlate b method_6907 + p 1 noBasePlate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V brokenByAnything c method_6908 + p 1 level + p 2 damageSource + m (Lnet/minecraft/core/Rotations;)V setLeftArmPose c method_6910 + p 1 leftArmPose + m (Lnet/minecraft/nbt/CompoundTag;)V readPose c method_6928 + p 1 compound + m (Lnet/minecraft/core/Rotations;)V setRightArmPose d method_6925 + p 1 rightArmPose + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z isDisabled e method_6915 + p 1 slot + m (Lnet/minecraft/core/Rotations;)V setLeftLegPose e method_6909 + p 1 leftLegPose + m (Lnet/minecraft/core/Rotations;)V setRightLegPose f method_6926 + p 1 rightLegPose + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55745 + m ()Z isSmall t method_6914 + m (Z)V setSmall u method_6922 + p 1 small + m ()Z isShowArms v method_6929 + m (Z)V setMarker v method_6902 + c Marker defines where if true, the size is 0 and will not be rendered or intractable. + p 1 marker + m (Z)Lnet/minecraft/world/entity/EntityDimensions; getDimensionsMarker w method_31168 + p 1 isMarker + m ()Z isNoBasePlate x method_6901 + m ()Z isMarker z method_6912 + c Gets whether the armor stand has marker enabled. If true, the armor stand's bounding box is set to zero and cannot be interacted with. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/decoration/ArmorStand$1 ciw$1 net/minecraft/class_1531$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_7128 + m ()V +c net/minecraft/world/entity/decoration/BlockAttachedEntity cix net/minecraft/class_9691 + f Lnet/minecraft/core/BlockPos; pos b field_51589 + f Lorg/slf4j/Logger; LOGGER c field_51590 + f I checkInterval d field_51591 + m (Lnet/minecraft/world/entity/Entity;)V dropItem b method_6889 + p 1 entity + m ()V recalculateBoundingBox p method_6895 + m ()Z survives s method_6888 + m ()Lnet/minecraft/core/BlockPos; getPos t method_59940 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 entityType + p 2 level + p 3 pos + m ()V +c net/minecraft/world/entity/decoration/GlowItemFrame ciy net/minecraft/class_5915 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V +c net/minecraft/world/entity/decoration/HangingEntity ciz net/minecraft/class_1530 + f Ljava/util/function/Predicate; HANGING_ENTITY c field_7098 + f Lnet/minecraft/core/Direction; direction d field_7099 + c The direction the entity is facing + m ()Lnet/minecraft/world/phys/AABB; calculateSupportBox B method_59941 + m ()V playPlacementSound C method_6894 + m (Lnet/minecraft/core/BlockPos;)Z method_59942 a method_59942 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/AABB; calculateBoundingBox a method_59943 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/Direction;)V setDirection a method_6892 + c Updates facing and bounding box based on it + p 1 facingDirection + m (Lnet/minecraft/world/entity/Entity;)Z method_6890 c method_6890 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 entityType + p 2 level + p 3 pos + m ()V +c net/minecraft/world/entity/decoration/HangingEntity$1 ciz$1 net/minecraft/class_1530$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_7101 + m ()V +c net/minecraft/world/entity/decoration/ItemFrame cja net/minecraft/class_1533 + f I NUM_ROTATIONS e field_30454 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM f field_7130 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ROTATION g field_7132 + f F DEPTH h field_51592 + f F WIDTH i field_51593 + f F HEIGHT j field_51594 + f F dropChance k field_7129 + f Z fixed l field_22476 + m ()Lnet/minecraft/world/item/ItemStack; getFrameItemStack A method_33340 + m ()Lnet/minecraft/world/item/ItemStack; getItem D method_6940 + m ()Z hasFramedMap E method_43273 + m ()I getRotation F method_6934 + c Return the rotation of the item currently on this frame. + m ()I getAnalogOutput H method_6938 + m (IZ)V setRotation a method_6941 + p 1 rotation + p 2 updateNeighbours + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/saveddata/maps/MapId; getFramedMapId a method_43272 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Z)V setItem a method_6933 + p 1 stack + p 2 updateNeighbours + m (I)V setRotation b method_6939 + p 1 rotation + m (Lnet/minecraft/world/entity/Entity;Z)V dropItem b method_6936 + p 1 entity + p 2 dropSelf + m (Lnet/minecraft/world/item/ItemStack;)V setItem c method_6935 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V removeFramedMap d method_6937 + c Removes the dot representing this frame's position from the map when the item frame is broken. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V onItemChanged e method_43271 + p 1 item + m ()Lnet/minecraft/sounds/SoundEvent; getRemoveItemSound v method_34240 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakSound w method_34241 + m ()Lnet/minecraft/sounds/SoundEvent; getPlaceSound x method_34242 + m ()Lnet/minecraft/sounds/SoundEvent; getAddItemSound y method_34243 + m ()Lnet/minecraft/sounds/SoundEvent; getRotateItemSound z method_34244 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 level + p 2 pos + p 3 facingDirection + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 entityType + p 2 level + p 3 pos + p 4 direction + m ()V +c net/minecraft/world/entity/decoration/LeashFenceKnotEntity cjb net/minecraft/class_1532 + f D OFFSET_Y c field_30455 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Leashable;)Z method_61164 a method_61164 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity; getOrCreateKnot b method_6932 + p 0 level + p 1 pos + m ()V playPlacementSound v method_59944 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 pos +c net/minecraft/world/entity/decoration/Painting cjc net/minecraft/class_1534 + f Lcom/mojang/serialization/MapCodec; VARIANT_MAP_CODEC e field_49238 + f Lcom/mojang/serialization/Codec; VARIANT_CODEC f field_49239 + f F DEPTH g field_51595 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PAINTING_VARIANT_ID h field_38941 + m (ILnet/minecraft/core/Holder;)Z method_43399 a method_43399 + m (Lnet/minecraft/world/entity/decoration/Painting;Lnet/minecraft/core/Holder;)Z method_43400 a method_43400 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Ljava/util/Optional; create a method_43401 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_59945 a method_59945 + m (I)D offsetForPaintingSize b method_59946 + p 1 size + m (Lnet/minecraft/core/Holder;)V setVariant b method_43402 + p 1 variant + m (Lnet/minecraft/core/Holder;)I variantArea c method_43403 + p 0 variant + m ()Lnet/minecraft/core/Holder; getVariant v method_43404 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 pos + p 3 direction + p 4 variant + m ()V +c net/minecraft/world/entity/decoration/PaintingVariant cjd net/minecraft/class_1535 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_51596 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51945 + f Lcom/mojang/serialization/Codec; CODEC c field_51597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51946 + f I width e comp_2670 + f I height f comp_2671 + f Lnet/minecraft/resources/ResourceLocation; assetId g comp_2672 + m ()I area a method_59947 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59948 a method_59948 + m ()I width b comp_2670 + m ()I height c comp_2671 + m ()Lnet/minecraft/resources/ResourceLocation; assetId d comp_2672 + m (IILnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/decoration/PaintingVariants cje net/minecraft/class_7408 + f Lnet/minecraft/resources/ResourceKey; EARTH A field_38943 + f Lnet/minecraft/resources/ResourceKey; WIND B field_38944 + f Lnet/minecraft/resources/ResourceKey; WATER C field_38945 + f Lnet/minecraft/resources/ResourceKey; FIRE D field_38946 + f Lnet/minecraft/resources/ResourceKey; BAROQUE E field_51598 + f Lnet/minecraft/resources/ResourceKey; HUMBLE F field_51599 + f Lnet/minecraft/resources/ResourceKey; MEDITATIVE G field_51600 + f Lnet/minecraft/resources/ResourceKey; PRAIRIE_RIDE H field_51601 + f Lnet/minecraft/resources/ResourceKey; UNPACKED I field_51602 + f Lnet/minecraft/resources/ResourceKey; BACKYARD J field_51603 + f Lnet/minecraft/resources/ResourceKey; BOUQUET K field_51604 + f Lnet/minecraft/resources/ResourceKey; CAVEBIRD L field_51605 + f Lnet/minecraft/resources/ResourceKey; CHANGING M field_51606 + f Lnet/minecraft/resources/ResourceKey; COTAN N field_51607 + f Lnet/minecraft/resources/ResourceKey; ENDBOSS O field_51608 + f Lnet/minecraft/resources/ResourceKey; FERN P field_51609 + f Lnet/minecraft/resources/ResourceKey; FINDING Q field_51610 + f Lnet/minecraft/resources/ResourceKey; LOWMIST R field_51611 + f Lnet/minecraft/resources/ResourceKey; ORB S field_51612 + f Lnet/minecraft/resources/ResourceKey; OWLEMONS T field_51613 + f Lnet/minecraft/resources/ResourceKey; PASSAGE U field_51614 + f Lnet/minecraft/resources/ResourceKey; POND V field_51615 + f Lnet/minecraft/resources/ResourceKey; SUNFLOWERS W field_51616 + f Lnet/minecraft/resources/ResourceKey; TIDES X field_51617 + f Lnet/minecraft/resources/ResourceKey; KEBAB a field_38947 + f Lnet/minecraft/resources/ResourceKey; AZTEC b field_38948 + f Lnet/minecraft/resources/ResourceKey; ALBAN c field_38949 + f Lnet/minecraft/resources/ResourceKey; AZTEC2 d field_38950 + f Lnet/minecraft/resources/ResourceKey; BOMB e field_38951 + f Lnet/minecraft/resources/ResourceKey; PLANT f field_38952 + f Lnet/minecraft/resources/ResourceKey; WASTELAND g field_38953 + f Lnet/minecraft/resources/ResourceKey; POOL h field_38954 + f Lnet/minecraft/resources/ResourceKey; COURBET i field_38955 + f Lnet/minecraft/resources/ResourceKey; SEA j field_38956 + f Lnet/minecraft/resources/ResourceKey; SUNSET k field_38957 + f Lnet/minecraft/resources/ResourceKey; CREEBET l field_38958 + f Lnet/minecraft/resources/ResourceKey; WANDERER m field_38959 + f Lnet/minecraft/resources/ResourceKey; GRAHAM n field_38960 + f Lnet/minecraft/resources/ResourceKey; MATCH o field_38961 + f Lnet/minecraft/resources/ResourceKey; BUST p field_38962 + f Lnet/minecraft/resources/ResourceKey; STAGE q field_38963 + f Lnet/minecraft/resources/ResourceKey; VOID r field_38964 + f Lnet/minecraft/resources/ResourceKey; SKULL_AND_ROSES s field_38965 + f Lnet/minecraft/resources/ResourceKey; WITHER t field_38966 + f Lnet/minecraft/resources/ResourceKey; FIGHTERS u field_38967 + f Lnet/minecraft/resources/ResourceKey; POINTER v field_38968 + f Lnet/minecraft/resources/ResourceKey; PIGSCENE w field_38969 + f Lnet/minecraft/resources/ResourceKey; BURNING_SKULL x field_38970 + f Lnet/minecraft/resources/ResourceKey; SKELETON y field_38971 + f Lnet/minecraft/resources/ResourceKey; DONKEY_KONG z field_38972 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43407 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43406 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;II)V register a method_59949 + p 0 context + p 1 key + p 2 width + p 3 height + m ()V + m ()V +c net/minecraft/world/entity/decoration/package-info cjf net/minecraft/class_6062 +c net/minecraft/world/entity/item/FallingBlockEntity cjg net/minecraft/class_1540 + f I time b field_7192 + f Z dropItem c field_7193 + f Lnet/minecraft/nbt/CompoundTag; blockData d field_7194 + f Z forceTickAfterTeleportToDuplicate e field_52015 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_START_POS f field_7195 + f Lorg/slf4j/Logger; LOGGER g field_36333 + f Lnet/minecraft/world/level/block/state/BlockState; blockState h field_7188 + f Z cancelDrop i field_7189 + f Z hurtEntities j field_7191 + f I fallDamageMax k field_7190 + f F fallDamagePerDistance l field_7187 + m (Lnet/minecraft/world/damagesource/DamageSource;FLnet/minecraft/world/entity/Entity;)V method_32879 a method_32879 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/entity/item/FallingBlockEntity; fall a method_40005 + p 0 level + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V callOnBrokenAfterFall a method_32752 + p 1 block + p 2 pos + m (Lnet/minecraft/core/BlockPos;)V setStartPos a method_6963 + p 1 startPos + m (FI)V setHurtsEntities b method_6965 + p 1 fallDamagePerDistance + p 2 fallDamageMax + m ()Lnet/minecraft/core/BlockPos; getStartPos p method_6964 + m ()V disableDrop s method_49181 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState t method_6962 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 state + m ()V +c net/minecraft/world/entity/item/ItemEntity cjh net/minecraft/class_1542 + f F EYE_HEIGHT b field_48702 + f F bobOffs c field_7203 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM d field_7199 + f F FLOAT_HEIGHT e field_48703 + f I LIFETIME f field_30456 + f I INFINITE_PICKUP_DELAY g field_30457 + f I INFINITE_LIFETIME h field_30458 + f I age i field_7204 + f I pickupDelay j field_7202 + f I health k field_7201 + f Ljava/util/UUID; thrower l field_7200 + f Lnet/minecraft/world/entity/Entity; cachedThrower m field_46653 + f Ljava/util/UUID; target n field_41893 + m ()V setExtendedLifetime A method_6976 + m ()V makeFakeItem B method_6987 + m ()Lnet/minecraft/world/entity/item/ItemEntity; copy C method_29271 + m ()V setUnderwaterMovement D method_6974 + m ()V setUnderLavaMovement E method_24348 + m ()V mergeWithNeighbours F method_6973 + c Looks for other itemstacks nearby and tries to stack them together + m ()Z isMergable H method_20397 + m (F)F getSpin a method_27314 + p 1 partialTicks + m (Lnet/minecraft/world/entity/item/ItemEntity;)V tryToMerge a method_6972 + p 1 itemEntity + m (Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;)V merge a method_18006 + p 0 destinationEntity + p 1 destinationStack + p 2 originEntity + p 3 originStack + m (Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V merge a method_24016 + p 0 destinationEntity + p 1 destinationStack + p 2 originStack + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_6979 + c Sets the item that this entity represents. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z areMergable a method_24017 + p 0 destinationStack + p 1 originStack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; merge a method_24018 + p 0 destinationStack + p 1 originStack + p 2 amount + m (I)V setPickUpDelay b method_6982 + p 1 pickupDelay + m (Lnet/minecraft/world/entity/Entity;)V setThrower b method_6981 + p 1 thrower + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_20396 b method_20396 + m (Ljava/util/UUID;)V setTarget b method_48349 + p 1 target + m ()Lnet/minecraft/world/item/ItemStack; getItem p method_6983 + c Gets the item that this entity represents. + m ()I getAge t method_6985 + m ()V setDefaultPickUpDelay v method_6988 + m ()V setNoPickUpDelay w method_6975 + m ()V setNeverPickUp x method_6989 + m ()Z hasPickUpDelay y method_6977 + m ()V setUnlimitedLifetime z method_35190 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 posX + p 4 posY + p 6 posZ + p 8 itemStack + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;DDD)V + p 1 level + p 2 posX + p 4 posY + p 6 posZ + p 8 itemStack + p 9 deltaX + p 11 deltaY + p 13 deltaZ + m (Lnet/minecraft/world/entity/item/ItemEntity;)V + p 1 other + m ()V +c net/minecraft/world/entity/item/PrimedTnt cji net/minecraft/class_1541 + f Ljava/lang/String; TAG_FUSE b field_46776 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FUSE_ID c field_7197 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BLOCK_STATE_ID d field_46777 + f I DEFAULT_FUSE_TIME e field_30459 + f Ljava/lang/String; TAG_BLOCK_STATE f field_46778 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; USED_PORTAL_DAMAGE_CALCULATOR g field_52317 + f Lnet/minecraft/world/entity/LivingEntity; owner h field_7198 + f Z usedPortal i field_52318 + m (Z)V setUsedPortal a method_61174 + p 1 usedPortal + m (I)V setFuse b method_6967 + p 1 life + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_54455 + p 1 blockState + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner p method_6970 + c Returns null or the entityliving it was ignited by + m ()I getFuse t method_6969 + c Gets the fuse from the data manager + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState v method_54456 + m ()V explode w method_6971 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 owner + m ()V +c net/minecraft/world/entity/item/PrimedTnt$1 cji$1 net/minecraft/class_1541$1 + m ()V +c net/minecraft/world/entity/item/package-info cjj net/minecraft/class_6063 +c net/minecraft/world/entity/monster/AbstractIllager cjk net/minecraft/class_1543 + m ()Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; getArmPose s method_6990 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose cjk$a net/minecraft/class_1543$class_1544 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSED a field_7207 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; ATTACKING b field_7211 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; SPELLCASTING c field_7212 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; BOW_AND_ARROW d field_7208 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSBOW_HOLD e field_7213 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSBOW_CHARGE f field_7210 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CELEBRATING g field_19012 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; NEUTRAL h field_21512 + f [Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; $VALUES i field_7209 + m ()[Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; $values a method_36647 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/AbstractIllager$RaiderOpenDoorGoal cjk$b net/minecraft/class_1543$class_4258 + f Lnet/minecraft/world/entity/monster/AbstractIllager; field_19013 a field_19013 + m (Lnet/minecraft/world/entity/monster/AbstractIllager;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 raider +c net/minecraft/world/entity/monster/AbstractSkeleton cjl net/minecraft/class_1547 + f I HARD_ATTACK_INTERVAL b field_49149 + f I NORMAL_ATTACK_INTERVAL c field_49150 + f Lnet/minecraft/world/entity/ai/goal/RangedBowAttackGoal; bowGoal d field_7220 + f Lnet/minecraft/world/entity/ai/goal/MeleeAttackGoal; meleeGoal e field_7221 + m (Lnet/minecraft/world/item/ItemStack;FLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; getArrow a method_6996 + p 1 arrow + p 2 velocity + p 3 weapon + m ()I getHardAttackInterval gk method_57078 + m ()I getAttackInterval gl method_57079 + m ()Z isShaking gm method_35191 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26905 + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound t method_6998 + m ()V reassessWeaponGoal x method_6997 + c Sets this entity's combat AI. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/AbstractSkeleton$1 cjl$1 net/minecraft/class_1547$1 + f Lnet/minecraft/world/entity/monster/AbstractSkeleton; field_7223 b field_7223 + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;Lnet/minecraft/world/entity/PathfinderMob;DZ)V +c net/minecraft/world/entity/monster/Blaze cjm net/minecraft/class_1545 + f F allowedHeightOffset b field_7214 + f I nextHeightOffsetChangeTick c field_7215 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID d field_7216 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26906 + m ()Z isCharged t method_6994 + m (Z)V setCharged x method_6993 + p 1 charged + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Blaze$BlazeAttackGoal cjm$a net/minecraft/class_1545$class_1546 + f Lnet/minecraft/world/entity/monster/Blaze; blaze a field_7219 + f I attackStep b field_7218 + f I attackTime c field_7217 + f I lastSeen d field_19420 + m ()D getFollowDistance h method_6995 + m (Lnet/minecraft/world/entity/monster/Blaze;)V + p 1 blaze +c net/minecraft/world/entity/monster/Bogged cjn net/minecraft/class_9254 + f Ljava/lang/String; SHEARED_TAG_NAME b field_49240 + f I HARD_ATTACK_INTERVAL c field_49151 + f I NORMAL_ATTACK_INTERVAL d field_49152 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHEARED e field_49241 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gn method_57080 + m ()Z isSheared go method_57308 + m ()V spawnShearedMushrooms gr method_57309 + m (Z)V setSheared x method_57310 + p 1 sheared + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/CaveSpider cjo net/minecraft/class_1549 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createCaveSpider s method_26907 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Creeper cjp net/minecraft/class_1548 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SWELL_DIR b field_7230 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_POWERED c field_7224 + f I swell cc field_7227 + f I maxSwell cd field_7228 + f I explosionRadius ce field_7225 + f I droppedSkulls cf field_7226 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_IGNITED d field_7231 + f I oldSwell e field_7229 + m (F)F getSwelling H method_7003 + c Params: (Float)Render tick. Returns the intensity of the creeper's flash when it is ignited. + p 1 partialTicks + m (I)V setSwellDir b method_7005 + c Sets the state of creeper, -1 to idle and 1 to be 'in fuse' + p 1 state + m ()V ignite gk method_7004 + m ()Z canDropMobsSkull gl method_7008 + c Returns {@code true} if an entity is able to drop its skull due to being blown up by this creeper.\n\nDoes not test if this creeper is charged, the caller must do that. However, does test the doMobLoot gamerule. + m ()V increaseDroppedSkulls gm method_7002 + m ()V explodeCreeper gn method_7006 + c Creates an explosion as determined by this creeper's power and explosion radius. + m ()V spawnLingeringCloud go method_7001 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26908 + m ()I getSwellDir t method_7007 + c Returns the current state of creeper, -1 is idle, 1 is 'in fuse' + m ()Z isIgnited x method_7000 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/CrossbowAttackMob cjq net/minecraft/class_3745 + m ()V onCrossbowAttackPerformed a method_24651 + m (Lnet/minecraft/world/entity/LivingEntity;F)V performCrossbowAttack b method_24654 + p 1 user + p 2 velocity + m (Z)V setChargingCrossbow b method_7110 + p 1 chargingCrossbow + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 + c Gets the active target the Task system uses for tracking +c net/minecraft/world/entity/monster/Drowned cjr net/minecraft/class_1551 + f F NAUTILUS_SHELL_CHANCE b field_30460 + f Lnet/minecraft/world/entity/ai/navigation/WaterBoundPathNavigation; waterNavigation c field_7234 + f Z searchingForLand cf field_7233 + f Lnet/minecraft/world/entity/ai/navigation/GroundPathNavigation; groundNavigation d field_7232 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkDrownedSpawnRules a method_20673 + p 0 drowned + p 1 serverLevel + p 2 mobSpawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/monster/Drowned;Lnet/minecraft/world/entity/ai/navigation/PathNavigation;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_7017 a method_7017 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isDeepEnoughToSpawn a method_20672 + p 0 level + p 1 pos + m ()Z closeToNextPos gn method_7016 + m ()Z wantsToSwim gu method_7018 + m (Lnet/minecraft/world/entity/LivingEntity;)Z okTarget j method_7012 + p 1 target + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55746 + m (Z)V setSearchingForLand x method_7013 + p 1 searchingForLand + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Drowned$DrownedAttackGoal cjr$a net/minecraft/class_1551$class_1552 + f Lnet/minecraft/world/entity/monster/Drowned; drowned b field_7235 + m (Lnet/minecraft/world/entity/monster/Drowned;DZ)V + p 1 drowned + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/monster/Drowned$DrownedGoToBeachGoal cjr$b net/minecraft/class_1551$class_1554 + f Lnet/minecraft/world/entity/monster/Drowned; drowned g field_7237 + m (Lnet/minecraft/world/entity/monster/Drowned;D)V + p 1 drowned + p 2 speedModifier +c net/minecraft/world/entity/monster/Drowned$DrownedGoToWaterGoal cjr$c net/minecraft/class_1551$class_1555 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_7242 + f D wantedX b field_7240 + f D wantedY c field_7239 + f D wantedZ d field_7238 + f D speedModifier e field_7243 + f Lnet/minecraft/world/level/Level; level f field_7241 + m ()Lnet/minecraft/world/phys/Vec3; getWaterPos h method_7021 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/monster/Drowned$DrownedMoveControl cjr$d net/minecraft/class_1551$class_1556 + f Lnet/minecraft/world/entity/monster/Drowned; drowned l field_7244 + m (Lnet/minecraft/world/entity/monster/Drowned;)V + p 1 drowned +c net/minecraft/world/entity/monster/Drowned$DrownedSwimUpGoal cjr$e net/minecraft/class_1551$class_1557 + f Lnet/minecraft/world/entity/monster/Drowned; drowned a field_7246 + f D speedModifier b field_7245 + f I seaLevel c field_7247 + f Z stuck d field_7248 + m (Lnet/minecraft/world/entity/monster/Drowned;DI)V + p 1 drowned + p 2 speedModifier + p 4 seaLevel +c net/minecraft/world/entity/monster/Drowned$DrownedTridentAttackGoal cjr$f net/minecraft/class_1551$class_1558 + f Lnet/minecraft/world/entity/monster/Drowned; drowned a field_7249 + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackInterval + p 5 attackRadius +c net/minecraft/world/entity/monster/ElderGuardian cjs net/minecraft/class_1550 + f F ELDER_SIZE_SCALE b field_17492 + f I EFFECT_RADIUS cc field_38115 + f I EFFECT_DURATION cd field_38116 + f I EFFECT_AMPLIFIER ce field_38117 + f I EFFECT_DISPLAY_LIMIT cf field_38118 + f I EFFECT_INTERVAL e field_38119 + m (Lnet/minecraft/server/level/ServerPlayer;)V method_7011 b method_7011 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26909 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/EnderMan cjt net/minecraft/class_1560 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_ATTACKING_ID c field_7256 + f I MIN_DEAGGRESSION_TIME cc field_30461 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CARRY_STATE cd field_7257 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CREEPY ce field_7255 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STARED_AT cf field_20618 + f I lastStareSound cg field_7253 + f I targetChangeTime ch field_7254 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25378 + f I remainingPersistentAngerTime cj field_25376 + f Ljava/util/UUID; persistentAngerTarget ck field_25377 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_ATTACKING d field_7252 + f I DELAY_BETWEEN_CREEPY_STARE_SOUND e field_30462 + m (Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/entity/projectile/ThrownPotion;F)Z hurtWithCleanWater a method_38068 + p 1 source + p 2 potion + p 3 amount + m (Lnet/minecraft/world/entity/Entity;)Z teleportTowards c method_7025 + c Teleport the enderman to another entity + p 1 target + m (Lnet/minecraft/world/level/block/state/BlockState;)V setCarriedBlock c method_7032 + p 1 state + m (Lnet/minecraft/world/entity/player/Player;)Z isLookingAtMe f method_7026 + c Checks to see if this enderman should be attacking this player + p 1 player + m ()Lnet/minecraft/world/level/block/state/BlockState; getCarriedBlock gk method_7027 + m ()Z isCreepy gl method_7028 + m ()Z hasBeenStaredAt gm method_22330 + m ()V setBeingStaredAt gn method_22331 + m (DDD)Z teleport q method_7024 + c Teleport the enderman + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26910 + m ()V playStareSound t method_7030 + m ()Z teleport x method_7029 + c Teleport the enderman to a random nearby position + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/EnderMan$EndermanFreezeWhenLookedAt cjt$a net/minecraft/class_1560$class_4159 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_18524 + f Lnet/minecraft/world/entity/LivingEntity; target b field_21513 + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/EnderMan$EndermanLeaveBlockGoal cjt$b net/minecraft/class_1560$class_1561 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_7258 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z canPlaceBlock a method_7033 + p 1 level + p 2 destinationPos + p 3 carriedState + p 4 destinationState + p 5 belowDestinationState + p 6 belowDestinationPos + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/EnderMan$EndermanLookForPlayerGoal cjt$c net/minecraft/class_1560$class_1562 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman i field_7260 + f Lnet/minecraft/world/entity/player/Player; pendingTarget j field_7259 + c The player + f I aggroTime k field_7262 + f I teleportTime l field_7261 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; startAggroTargetConditions m field_18127 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; continueAggroTargetConditions n field_18876 + f Ljava/util/function/Predicate; isAngerInducing o field_40735 + m (Lnet/minecraft/world/entity/monster/EnderMan;Lnet/minecraft/world/entity/LivingEntity;)Z method_18449 a method_18449 + m (Lnet/minecraft/world/entity/monster/EnderMan;Ljava/util/function/Predicate;)V + p 1 enderman + p 2 selectionPredicate +c net/minecraft/world/entity/monster/EnderMan$EndermanTakeBlockGoal cjt$d net/minecraft/class_1560$class_1563 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_7263 + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/Endermite cju net/minecraft/class_1559 + f I MAX_LIFE b field_30463 + f I life c field_7250 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkEndermiteSpawnRules b method_20674 + p 0 endermite + p 1 serverLevel + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26911 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Enemy cjv net/minecraft/class_1569 + f I XP_REWARD_NONE i_ field_30464 + f I XP_REWARD_SMALL j_ field_30465 + f I XP_REWARD_MEDIUM k_ field_30466 + f I XP_REWARD_LARGE l_ field_30467 + f I XP_REWARD_HUGE m_ field_30468 + f I XP_REWARD_BOSS n_ field_30469 +c net/minecraft/world/entity/monster/Evoker cjw net/minecraft/class_1564 + f Lnet/minecraft/world/entity/animal/Sheep; wololoTarget e field_7264 + m (Lnet/minecraft/world/entity/animal/Sheep;)V setWololoTarget a method_7036 + p 1 wololoTarget + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7038 a method_7038 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7037 b method_7037 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7043 c method_7043 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7041 d method_7041 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7040 e method_7040 + m ()Lnet/minecraft/world/entity/animal/Sheep; getWololoTarget gF method_7039 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26912 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Evoker$EvokerAttackSpellGoal cjw$a net/minecraft/class_1564$class_1565 + f Lnet/minecraft/world/entity/monster/Evoker; field_7265 a field_7265 + m (DDDDFI)V createSpellEntity a method_7044 + p 1 x + p 3 z + p 5 minY + p 7 maxY + p 9 yRot + p 10 warmupDelay + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerCastingSpellGoal cjw$b net/minecraft/class_1564$class_1566 + f Lnet/minecraft/world/entity/monster/Evoker; field_7266 a field_7266 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerSummonSpellGoal cjw$c net/minecraft/class_1564$class_1567 + f Lnet/minecraft/world/entity/monster/Evoker; field_7267 a field_7267 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; vexCountTargeting e field_18129 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerWololoSpellGoal cjw$d net/minecraft/class_1564$class_1568 + f Lnet/minecraft/world/entity/monster/Evoker; field_7268 a field_7268 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; wololoTargeting e field_7269 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_7045 a method_7045 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Ghast cjx net/minecraft/class_1571 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_CHARGING b field_7273 + f I explosionPower c field_7272 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGhastSpawnRules b method_20675 + p 0 ghast + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isReflectedFireball g method_44320 + p 0 damageSource + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18450 j method_18450 + m ()Z isCharging s method_7050 + m ()I getExplosionPower t method_7049 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_26913 + m (Z)V setCharging x method_7048 + p 1 charging + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Ghast$GhastLookGoal cjx$a net/minecraft/class_1571$class_1572 + f Lnet/minecraft/world/entity/monster/Ghast; ghast a field_7274 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$GhastMoveControl cjx$b net/minecraft/class_1571$class_1573 + f Lnet/minecraft/world/entity/monster/Ghast; ghast l field_7275 + f I floatDuration m field_7276 + m (Lnet/minecraft/world/phys/Vec3;I)Z canReach a method_7051 + p 1 pos + p 2 length + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$GhastShootFireballGoal cjx$c net/minecraft/class_1571$class_1574 + f I chargeTime a field_7278 + f Lnet/minecraft/world/entity/monster/Ghast; ghast b field_7277 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$RandomFloatAroundGoal cjx$d net/minecraft/class_1571$class_1575 + f Lnet/minecraft/world/entity/monster/Ghast; ghast a field_7279 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Giant cjy net/minecraft/class_1570 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26914 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Guardian cjz net/minecraft/class_1577 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_MOVING b field_7280 + f I ATTACK_TIME c field_30470 + f F clientSideTailAnimation cc field_7286 + f F clientSideTailAnimationO cd field_7284 + f F clientSideTailAnimationSpeed ce field_7281 + f F clientSideSpikesAnimation cf field_7285 + f F clientSideSpikesAnimationO cg field_7287 + f Lnet/minecraft/world/entity/LivingEntity; clientSideCachedAttackTarget ch field_7288 + f I clientSideAttackTime ci field_7282 + f Z clientSideTouchedGround cj field_7283 + f Lnet/minecraft/world/entity/ai/goal/RandomStrollGoal; randomStrollGoal d field_7289 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_ATTACK_TARGET e field_7290 + m (F)F getTailAnimation H method_7057 + p 1 partialTick + m (F)F getSpikesAnimation I method_7053 + p 1 partialTick + m (F)F getAttackAnimationScale J method_7061 + p 1 partialTick + m (I)V setActiveAttackTarget b method_7060 + p 1 activeAttackTargetId + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGuardianSpawnRules b method_20676 + p 0 guardian + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26915 + m ()Z isMoving gl method_7058 + m ()Z hasActiveAttackTarget gm method_7063 + m ()Lnet/minecraft/world/entity/LivingEntity; getActiveAttackTarget gn method_7052 + m ()F getClientSideAttackTime go method_48161 + m ()I getAttackDuration t method_7055 + m ()Lnet/minecraft/sounds/SoundEvent; getFlopSound x method_7062 + m (Z)V setMoving x method_7054 + p 1 moving + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Guardian$GuardianAttackGoal cjz$a net/minecraft/class_1577$class_1578 + f Lnet/minecraft/world/entity/monster/Guardian; guardian a field_7293 + f I attackTime b field_7291 + f Z elder c field_7292 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Guardian$GuardianAttackSelector cjz$b net/minecraft/class_1577$class_1579 + f Lnet/minecraft/world/entity/monster/Guardian; guardian a field_7294 + m (Lnet/minecraft/world/entity/LivingEntity;)Z test a method_7064 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Guardian$GuardianMoveControl cjz$c net/minecraft/class_1577$class_1580 + f Lnet/minecraft/world/entity/monster/Guardian; guardian l field_7295 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Husk cka net/minecraft/class_1576 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkHuskSpawnRules a method_20677 + p 0 husk + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Illusioner ckb net/minecraft/class_1581 + f I ILLUSION_TRANSITION_TICKS cc field_30471 + f I ILLUSION_SPREAD cd field_30472 + f I clientSideIllusionTicks ce field_7296 + f [[Lnet/minecraft/world/phys/Vec3; clientSideIllusionOffsets cf field_7297 + f I NUM_ILLUSIONS e field_30473 + m (F)[Lnet/minecraft/world/phys/Vec3; getIllusionOffsets H method_7065 + p 1 partialTick + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26916 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Illusioner$IllusionerBlindnessSpellGoal ckb$a net/minecraft/class_1581$class_1582 + f Lnet/minecraft/world/entity/monster/Illusioner; field_7299 a field_7299 + f I lastTargetId e field_7298 + m (Lnet/minecraft/world/entity/monster/Illusioner;)V +c net/minecraft/world/entity/monster/Illusioner$IllusionerMirrorSpellGoal ckb$b net/minecraft/class_1581$class_1583 + f Lnet/minecraft/world/entity/monster/Illusioner; field_7300 a field_7300 + m (Lnet/minecraft/world/entity/monster/Illusioner;)V +c net/minecraft/world/entity/monster/MagmaCube ckc net/minecraft/class_1589 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMagmaCubeSpawnRules b method_20678 + p 0 magmaCube + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26917 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Monster ckd net/minecraft/class_1588 + m (Lnet/minecraft/world/entity/player/Player;)Z isPreventingPlayerRest a method_7076 + p 1 player + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z isDarkEnoughToSpawn a method_20679 + c Static predicate for determining if the current light level and environmental conditions allow for a monster to spawn. + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMonsterSpawnRules b method_20680 + c Static predicate for determining whether a monster can spawn at the provided location, incorporating a check of the current light level at the location. + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAnyLightMonsterSpawnRules c method_20681 + c Static predicate for determining whether a monster can spawn at the provided location. + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V updateNoActionTime gp method_16827 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createMonsterAttributes gq method_26918 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/PatrollingMonster cke net/minecraft/class_3732 + f Lnet/minecraft/core/BlockPos; patrolTarget b field_16478 + f Z patrolLeader c field_16479 + f Z patrolling d field_16477 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPatrollingMonsterSpawnRules b method_20739 + p 0 patrollingMonster + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z canBeLeader gl method_16485 + m ()Lnet/minecraft/core/BlockPos; getPatrolTarget gm method_16215 + m ()Z hasPatrolTarget gn method_16220 + m ()Z isPatrolLeader go method_16219 + m ()Z canJoinPatrol gr method_16472 + m ()V findPatrolTarget gs method_16218 + m ()Z isPatrolling gt method_16915 + m (Lnet/minecraft/core/BlockPos;)V setPatrolTarget h method_16216 + p 1 patrolTarget + m (Lnet/minecraft/core/BlockPos;)V method_57005 i method_57005 + m (Z)V setPatrolLeader x method_16217 + p 1 patrolLeader + m (Z)V setPatrolling y method_22332 + p 1 patrolling + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/PatrollingMonster$LongDistancePatrolGoal cke$a net/minecraft/class_3732$class_3733 + f I NAVIGATION_FAILED_COOLDOWN a field_30474 + f Lnet/minecraft/world/entity/monster/PatrollingMonster; mob b field_16481 + f D speedModifier c field_16480 + f D leaderSpeedModifier d field_16535 + f J cooldownUntil e field_20701 + m (Lnet/minecraft/world/entity/monster/PatrollingMonster;)Z method_16223 a method_16223 + m ()Ljava/util/List; findPatrolCompanions h method_22333 + m ()Z moveRandomly i method_16222 + m (Lnet/minecraft/world/entity/monster/PatrollingMonster;DD)V + p 1 mob + p 2 speedModifier + p 4 leaderSpeedModifier +c net/minecraft/world/entity/monster/Phantom ckf net/minecraft/class_1593 + f F FLAP_DEGREES_PER_TICK b field_30475 + f I TICKS_PER_FLAP c field_28641 + f Lnet/minecraft/core/BlockPos; anchorPoint cb field_7312 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; attackPhase cc field_7315 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_SIZE d field_7313 + f Lnet/minecraft/world/phys/Vec3; moveTargetPoint e field_7314 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36649 a method_36649 + m (I)V setPhantomSize b method_7091 + p 1 phantomSize + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36650 b method_36650 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36651 c method_36651 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7090 d method_7090 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7086 e method_7086 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36652 f method_36652 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7080 g method_7080 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7098 h method_7098 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7099 i method_7099 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7096 j method_7096 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7093 k method_7093 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7092 l method_7092 + m ()I getPhantomSize s method_7084 + m ()I getUniqueFlapTickOffset t method_33588 + m ()V updatePhantomSizeInfo x method_7097 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Phantom$AttackPhase ckf$a net/minecraft/class_1593$class_1594 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; CIRCLE a field_7318 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; SWOOP b field_7317 + f [Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; $VALUES c field_7316 + m ()[Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; $values a method_36653 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/Phantom$PhantomAttackPlayerTargetGoal ckf$b net/minecraft/class_1593$class_1595 + f Lnet/minecraft/world/entity/monster/Phantom; field_7319 a field_7319 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; attackTargeting b field_18130 + f I nextScanTick c field_7320 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomAttackStrategyGoal ckf$c net/minecraft/class_1593$class_1596 + f Lnet/minecraft/world/entity/monster/Phantom; field_7321 a field_7321 + f I nextSweepTick b field_7322 + m ()V setAnchorAboveTarget h method_7102 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomBodyRotationControl ckf$d net/minecraft/class_1593$class_1597 + f Lnet/minecraft/world/entity/monster/Phantom; field_7323 a field_7323 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomCircleAroundAnchorGoal ckf$e net/minecraft/class_1593$class_1598 + f Lnet/minecraft/world/entity/monster/Phantom; field_7325 a field_7325 + f F angle c field_7328 + f F distance d field_7327 + f F height e field_7326 + f F clockwise f field_7324 + m ()V selectNext i method_7103 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomLookControl ckf$f net/minecraft/class_1593$class_1599 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomMoveControl ckf$g net/minecraft/class_1593$class_1600 + f Lnet/minecraft/world/entity/monster/Phantom; field_7330 l field_7330 + f F speed m field_7331 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomMoveTargetGoal ckf$h net/minecraft/class_1593$class_1601 + f Lnet/minecraft/world/entity/monster/Phantom; field_7332 b field_7332 + m ()Z touchingTarget h method_7104 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomSweepAttackGoal ckf$i net/minecraft/class_1593$class_1602 + f Lnet/minecraft/world/entity/monster/Phantom; field_7333 a field_7333 + f I CAT_SEARCH_TICK_DELAY c field_36305 + f Z isScaredOfCat d field_36306 + f I catSearchTick e field_36307 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Pillager ckg net/minecraft/class_1604 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_CHARGING_CROSSBOW b field_7334 + f I SLOT_OFFSET cc field_30476 + f Lnet/minecraft/world/SimpleContainer; inventory cd field_7335 + f I INVENTORY_SIZE e field_30478 + m ()Z isChargingCrossbow gk method_7108 + m (Lnet/minecraft/world/item/ItemStack;)Z wantsItem n method_7111 + p 1 item + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26919 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/RangedAttackMob ckh net/minecraft/class_1603 + m (Lnet/minecraft/world/entity/LivingEntity;F)V performRangedAttack a method_7105 + c Attack the specified entity using a ranged attack. + p 1 target + p 2 velocity +c net/minecraft/world/entity/monster/Ravager cki net/minecraft/class_1584 + f I STUN_DURATION b field_30479 + f D BASE_MOVEMENT_SPEED cc field_30480 + f D ATTACK_MOVEMENT_SPEED cd field_30481 + f I STUNNED_COLOR ce field_30482 + f F STUNNED_COLOR_BLUE cf field_30483 + f F STUNNED_COLOR_GREEN cg field_30484 + f F STUNNED_COLOR_RED ch field_30485 + f I ATTACK_DURATION ci field_30486 + f I attackTick cj field_7303 + f I stunnedTick ck field_7302 + f I roarTick cl field_7305 + f Ljava/util/function/Predicate; NO_RAVAGER_AND_ALIVE e field_7301 + m (Lnet/minecraft/world/entity/Entity;)V strongKnockback c method_7068 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z method_7069 d method_7069 + m ()I getStunnedTick gk method_7074 + m ()I getRoarTick gu method_7072 + m ()V stunEffect gv method_7073 + m ()V roar gw method_7071 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_39955 j method_39955 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26920 + m ()I getAttackTick t method_7070 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Shulker ckj net/minecraft/class_1606 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ATTACH_FACE_ID b field_7344 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PEEK_ID c field_7346 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; COVERED_ARMOR_MODIFIER cc field_7342 + f I TELEPORT_STEPS cd field_30487 + f B NO_COLOR ce field_30488 + f B DEFAULT_COLOR cf field_30489 + f I MAX_TELEPORT_DISTANCE cg field_30490 + f I OTHER_SHULKER_SCAN_RADIUS ch field_30491 + f I OTHER_SHULKER_LIMIT ci field_30492 + f F PEEK_PER_TICK cj field_30493 + f Lorg/joml/Vector3f; FORWARD ck field_33765 + f F MAX_SCALE cl field_48343 + f F currentPeekAmountO cm field_7339 + f F currentPeekAmount cn field_7337 + f Lnet/minecraft/core/BlockPos; clientOldAttachPosition co field_7345 + f I clientSideTeleportInterpolation cp field_7340 + f F MAX_LID_OPEN cq field_30494 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLOR_ID d field_7343 + f Lnet/minecraft/resources/ResourceLocation; COVERED_ARMOR_MODIFIER_ID e field_7341 + m (F)F getClientPeekAmount H method_7116 + p 1 partialTick + m (F)Ljava/util/Optional; getRenderPosition I method_33352 + p 1 partial + m (F)F getPhysicalPeek J method_33342 + p 0 peek + m (FLnet/minecraft/core/Direction;F)Lnet/minecraft/world/phys/AABB; getProgressAabb a method_33346 + p 0 scale + p 1 expansionDirection + p 2 peek + m (FLnet/minecraft/core/Direction;FF)Lnet/minecraft/world/phys/AABB; getProgressDeltaAabb a method_33347 + p 0 scale + p 1 expansionDirection + p 2 currentPeek + p 3 oldPeek + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36654 a method_36654 + m (Lnet/minecraft/world/item/DyeColor;)Ljava/lang/Byte; method_47879 a method_47879 + m (Ljava/util/Optional;)V setVariant a method_47880 + p 1 variant + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canStayAt a method_24350 + p 1 pos + p 2 facing + m (Lnet/minecraft/core/Direction;)V setAttachFace a method_35192 + p 1 attachFace + m (I)V setRawPeekAmount b method_7122 + c Applies or removes armor modifier + p 1 peekAmount + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_7118 b method_7118 + m (Lnet/minecraft/world/entity/Entity;)Z method_33343 c method_33343 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36655 c method_36655 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_7112 d method_7112 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36656 e method_36656 + m ()Ljava/util/Optional; getVariant gk method_47881 + m ()Lnet/minecraft/world/item/DyeColor; getColor gl method_7121 + m ()V findNewAttachment gm method_33348 + m ()Z updatePeekAmount gn method_33349 + m ()V onPeekAmountChange go method_33350 + m ()Z isClosed gp method_7124 + m ()V hitByShulkerBullet gq method_31547 + m ()I getRawPeekAmount gr method_7115 + m ()Lorg/joml/Vector3f; method_36983 gs method_36983 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction; findAttachableSurface h method_24351 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isPositionBlocked i method_33351 + p 1 pos + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26921 + m ()Z teleportSomewhere t method_7127 + m ()Lnet/minecraft/core/Direction; getAttachFace x method_7119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Shulker$ShulkerAttackGoal ckj$a net/minecraft/class_1606$class_1607 + f Lnet/minecraft/world/entity/monster/Shulker; field_7348 a field_7348 + f I attackTime b field_7347 + m (Lnet/minecraft/world/entity/monster/Shulker;)V +c net/minecraft/world/entity/monster/Shulker$ShulkerBodyRotationControl ckj$b net/minecraft/class_1606$class_1608 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/monster/Shulker$ShulkerDefenseAttackGoal ckj$c net/minecraft/class_1606$class_1609 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_7129 b method_7129 + m (Lnet/minecraft/world/entity/monster/Shulker;)V + p 1 shulker +c net/minecraft/world/entity/monster/Shulker$ShulkerLookControl ckj$d net/minecraft/class_1606$class_6376 + f Lnet/minecraft/world/entity/monster/Shulker; field_33766 h field_33766 + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Shulker$ShulkerNearestAttackGoal ckj$e net/minecraft/class_1606$class_1610 + f Lnet/minecraft/world/entity/monster/Shulker; field_7351 i field_7351 + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/world/entity/monster/Shulker;)V + p 2 shulker +c net/minecraft/world/entity/monster/Shulker$ShulkerPeekGoal ckj$f net/minecraft/class_1606$class_1611 + f Lnet/minecraft/world/entity/monster/Shulker; field_7353 a field_7353 + f I peekTime b field_7352 + m (Lnet/minecraft/world/entity/monster/Shulker;)V +c net/minecraft/world/entity/monster/Silverfish ckk net/minecraft/class_1614 + f Lnet/minecraft/world/entity/monster/Silverfish$SilverfishWakeUpFriendsGoal; friendsGoal b field_7366 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSilverfishSpawnRules b method_20684 + p 0 silverfish + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26922 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Silverfish$SilverfishMergeWithStoneGoal ckk$a net/minecraft/class_1614$class_1615 + f Lnet/minecraft/core/Direction; selectedDirection i field_7368 + f Z doMerge j field_7367 + m (Lnet/minecraft/world/entity/monster/Silverfish;)V + p 1 silverfish +c net/minecraft/world/entity/monster/Silverfish$SilverfishWakeUpFriendsGoal ckk$b net/minecraft/class_1614$class_1616 + f Lnet/minecraft/world/entity/monster/Silverfish; silverfish a field_7370 + f I lookForFriends b field_7369 + m ()V notifyHurt h method_7136 + m (Lnet/minecraft/world/entity/monster/Silverfish;)V + p 1 silverfish +c net/minecraft/world/entity/monster/Skeleton ckl net/minecraft/class_1613 + f Ljava/lang/String; CONVERSION_TAG b field_30495 + f I TOTAL_CONVERSION_TIME c field_41714 + f I conversionTime cc field_28644 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STRAY_CONVERSION_ID d field_28642 + f I inPowderSnowTime e field_28643 + m (I)V startFreezeConversion b method_33589 + p 1 conversionTime + m ()Z isFreezeConverting gn method_33590 + m ()V doFreezeConversion go method_33591 + m (Z)V setFreezeConverting x method_35193 + p 1 isFrozen + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Slime ckm net/minecraft/class_1621 + f I MIN_SIZE b field_30496 + f I MAX_SIZE c field_30497 + f F squish cb field_7388 + f F oSquish cc field_7387 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_SIZE cd field_7390 + f Z wasOnGround ce field_7391 + f I MAX_NATURAL_SIZE d field_50136 + f F targetSquish e field_7389 + m (IZ)V setSize a method_7161 + p 1 size + p 2 resetHealth + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSlimeSpawnRules c method_20685 + p 0 slime + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V decreaseSquish gg method_7156 + m ()Z isDealsDamage gh method_7163 + c Indicates weather the slime is able to damage the player (based upon the slime's size) + m ()F getAttackDamage gi method_7158 + m ()Lnet/minecraft/sounds/SoundEvent; getSquishSound gj method_7160 + m ()Lnet/minecraft/sounds/SoundEvent; getJumpSound gk method_7153 + m ()I getSize gl method_7152 + c Returns the size of the slime. + m ()Z isTiny gm method_7157 + m ()Z doPlayJumpSound gn method_7159 + c Returns {@code true} if the slime makes a sound when it jumps (based upon the slime's size) + m (Lnet/minecraft/world/entity/LivingEntity;)V dealDamage j method_7155 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18451 k method_18451 + m ()F getSoundPitch s method_24353 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticleType t method_7162 + m ()I getJumpDelay x method_7154 + c Gets the amount of time the slime needs to wait between jumps. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Slime$SlimeAttackGoal ckm$a net/minecraft/class_1621$class_1622 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7393 + f I growTiredTimer b field_7392 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeFloatGoal ckm$b net/minecraft/class_1621$class_1623 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7394 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeKeepOnJumpingGoal ckm$c net/minecraft/class_1621$class_1624 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7395 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeMoveControl ckm$d net/minecraft/class_1621$class_1625 + f F yRot l field_7397 + f I jumpDelay m field_7399 + f Lnet/minecraft/world/entity/monster/Slime; slime n field_7396 + f Z isAggressive o field_7398 + m (D)V setWantedMovement a method_7164 + p 1 speed + m (FZ)V setDirection a method_7165 + p 1 yRot + p 2 aggressive + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeRandomDirectionGoal ckm$e net/minecraft/class_1621$class_1626 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7402 + f F chosenDegrees b field_7400 + f I nextRandomizeTime c field_7401 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/SpellcasterIllager ckn net/minecraft/class_1617 + f I spellCastingTickCount b field_7372 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; currentSpell cc field_7371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SPELL_CASTING_ID e field_7373 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell;)V setIsCastingSpell a method_7138 + p 1 currentSpell + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_7141 a method_7141 + m ()Lnet/minecraft/sounds/SoundEvent; getCastingSoundEvent gk method_7142 + m ()Z isCastingSpell gu method_7137 + m ()Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; getCurrentSpell gv method_7140 + m ()I getSpellCastingTime gw method_7139 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell ckn$a net/minecraft/class_1617$class_1618 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; NONE a field_7377 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; SUMMON_VEX b field_7379 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; FANGS c field_7380 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; WOLOLO d field_7381 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; DISAPPEAR e field_7382 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; BLINDNESS f field_7378 + f Ljava/util/function/IntFunction; BY_ID g field_41674 + f I id h field_7375 + f [D spellColor i field_7374 + f [Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; $VALUES j field_7376 + m ()[Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; $values a method_36658 + m (I)Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; byId a method_7144 + p 0 id + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell;)I method_47929 a method_47929 + m (Ljava/lang/String;IIDDD)V + p 3 id + p 4 red + p 6 green + p 8 blue + m ()V +c net/minecraft/world/entity/monster/SpellcasterIllager$SpellcasterCastingSpellGoal ckn$b net/minecraft/class_1617$class_1619 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager; field_7383 b field_7383 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)V +c net/minecraft/world/entity/monster/SpellcasterIllager$SpellcasterUseSpellGoal ckn$c net/minecraft/class_1617$class_1620 + f I attackWarmupDelay b field_7385 + f I nextAttackTickCount c field_7384 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager; field_7386 d field_7386 + m ()I getCastingTime h method_7149 + m ()I getCastingInterval i method_7151 + m ()V performSpellCasting k method_7148 + m ()Lnet/minecraft/sounds/SoundEvent; getSpellPrepareSound l method_7150 + m ()Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; getSpell m method_7147 + m ()I getCastWarmupTime n method_7146 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)V +c net/minecraft/world/entity/monster/Spider cko net/minecraft/class_1628 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID b field_7403 + f F SPIDER_SPECIAL_EFFECT_CHANCE c field_30498 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_56086 j method_56086 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26923 + m ()Z isClimbing x method_7167 + c Returns {@code true} if the WatchableObject (Byte) is 0x01 otherwise returns {@code false}. The WatchableObject is updated using setBesideClimbableBlock. + m (Z)V setClimbing x method_7166 + c Updates the WatchableObject (Byte) created in entityInit(), setting it to 0x01 if par1 is true or 0x00 if it is false. + p 1 climbing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Spider$SpiderAttackGoal cko$a net/minecraft/class_1628$class_1629 + m (Lnet/minecraft/world/entity/monster/Spider;)V + p 1 spider +c net/minecraft/world/entity/monster/Spider$SpiderEffectsGroupData cko$b net/minecraft/class_1628$class_1630 + f Lnet/minecraft/core/Holder; effect a field_7404 + m (Lnet/minecraft/util/RandomSource;)V setRandomEffect a method_7168 + p 1 random + m ()V +c net/minecraft/world/entity/monster/Spider$SpiderTargetGoal cko$c net/minecraft/class_1628$class_1631 + m (Lnet/minecraft/world/entity/monster/Spider;Ljava/lang/Class;)V + p 1 spider + p 2 entityTypeToTarget +c net/minecraft/world/entity/monster/Stray ckp net/minecraft/class_1627 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkStraySpawnRules a method_20686 + p 0 stray + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Strider ckq net/minecraft/class_4985 + f Lnet/minecraft/resources/ResourceLocation; SUFFOCATING_MODIFIER_ID cc field_42981 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SUFFOCATING_MODIFIER cd field_42982 + f F SUFFOCATE_STEERING_MODIFIER ce field_30499 + f F STEERING_MODIFIER cg field_30501 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BOOST_TIME ch field_23245 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SUFFOCATING ci field_23246 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SADDLE_ID cj field_23247 + f Lnet/minecraft/world/entity/ItemBasedSteering; steering ck field_23240 + f Lnet/minecraft/world/entity/ai/goal/TemptGoal; temptGoal cl field_23241 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/SpawnGroupData;)Lnet/minecraft/world/entity/SpawnGroupData; spawnJockey a method_30336 + p 1 serverLevel + p 2 difficulty + p 3 jockey + p 4 spawnData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/monster/Strider; getBreedOffspring b method_26343 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkStriderSpawnRules c method_26344 + p 0 strider + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V floatStrider gk method_26347 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58395 n method_58395 + m ()Z isSuffocating s method_26348 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26924 + m ()Z isBeingTempted x method_30079 + m (Z)V setSuffocating x method_26349 + p 1 suffocating + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Strider$StriderGoToLavaGoal ckq$a net/minecraft/class_4985$class_5494 + f Lnet/minecraft/world/entity/monster/Strider; strider g field_26632 + m (Lnet/minecraft/world/entity/monster/Strider;D)V + p 1 strider + p 2 speedModifier +c net/minecraft/world/entity/monster/Strider$StriderPathNavigation ckq$b net/minecraft/class_4985$class_4988 + m (Lnet/minecraft/world/entity/monster/Strider;Lnet/minecraft/world/level/Level;)V + p 1 strider + p 2 level +c net/minecraft/world/entity/monster/Vex ckr net/minecraft/class_1634 + f F FLAP_DEGREES_PER_TICK b field_30502 + f I TICKS_PER_FLAP c field_28645 + f Lnet/minecraft/world/entity/Mob; owner cc field_7411 + f Lnet/minecraft/core/BlockPos; boundOrigin cd field_7407 + f Z hasLimitedLife ce field_7409 + f I limitedLifeTicks cf field_7408 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID d field_7410 + f I FLAG_IS_CHARGING e field_30503 + m (IZ)V setVexFlag a method_7189 + p 1 mask + p 2 value + m (Lnet/minecraft/world/entity/Mob;)V setOwner a method_7178 + p 1 owner + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7183 a method_7183 + m (I)V setLimitedLife b method_7181 + p 1 limitedLifeTicks + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7174 b method_7174 + m (I)Z getVexFlag c method_7184 + p 1 mask + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7175 c method_7175 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7190 d method_7190 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7187 e method_7187 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7179 f method_7179 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7180 g method_7180 + m ()Lnet/minecraft/core/BlockPos; getBoundOrigin gk method_7186 + m ()Z isCharging gl method_7176 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7191 h method_7191 + m (Lnet/minecraft/core/BlockPos;)V setBoundOrigin h method_7188 + p 1 boundOrigin + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26925 + m ()Lnet/minecraft/world/entity/Mob; getOwner x method_7182 + m (Z)V setIsCharging x method_7177 + p 1 charging + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Vex$VexChargeAttackGoal ckr$a net/minecraft/class_1634$class_1635 + f Lnet/minecraft/world/entity/monster/Vex; field_7412 a field_7412 + m (Lnet/minecraft/world/entity/monster/Vex;)V +c net/minecraft/world/entity/monster/Vex$VexCopyOwnerTargetGoal ckr$b net/minecraft/class_1634$class_1636 + f Lnet/minecraft/world/entity/monster/Vex; field_7413 a field_7413 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; copyOwnerTargeting b field_18132 + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/world/entity/PathfinderMob;)V + p 2 mob +c net/minecraft/world/entity/monster/Vex$VexMoveControl ckr$c net/minecraft/class_1634$class_1637 + f Lnet/minecraft/world/entity/monster/Vex; field_7414 l field_7414 + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/world/entity/monster/Vex;)V + p 2 vex +c net/minecraft/world/entity/monster/Vex$VexRandomMoveGoal ckr$d net/minecraft/class_1634$class_1638 + f Lnet/minecraft/world/entity/monster/Vex; field_7415 a field_7415 + m (Lnet/minecraft/world/entity/monster/Vex;)V +c net/minecraft/world/entity/monster/Vindicator cks net/minecraft/class_1632 + f Ljava/lang/String; TAG_JOHNNY b field_30504 + f Z isJohnny cc field_7406 + f Ljava/util/function/Predicate; DOOR_BREAKING_PREDICATE e field_19014 + m (Lnet/minecraft/world/Difficulty;)Z method_20007 a method_20007 + m (Lnet/minecraft/world/entity/monster/Vindicator;)Lnet/minecraft/util/RandomSource; method_20257 a method_20257 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26926 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Vindicator$VindicatorBreakDoorGoal cks$a net/minecraft/class_1632$class_3761 + m (Lnet/minecraft/world/entity/Mob;)V +c net/minecraft/world/entity/monster/Vindicator$VindicatorJohnnyAttackGoal cks$b net/minecraft/class_1632$class_1633 + m (Lnet/minecraft/world/entity/monster/Vindicator;)V + p 1 vindicator +c net/minecraft/world/entity/monster/Witch ckt net/minecraft/class_1640 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_DRINKING_ID b field_7418 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_USING_ITEM cc field_7419 + f I usingTime cd field_7417 + f Lnet/minecraft/world/entity/ai/goal/target/NearestHealableRaiderTargetGoal; healRaidersGoal ce field_17283 + f Lnet/minecraft/world/entity/ai/goal/target/NearestAttackableWitchTargetGoal; attackPlayersGoal cf field_17284 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_DRINKING e field_7416 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_16474 j method_16474 + m ()Z isDrinkingPotion s method_7193 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26927 + m (Z)V setUsingItem z method_7192 + c Set whether this witch is aggressive at an entity. + p 1 usingItem + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/WitherSkeleton cku net/minecraft/class_1639 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Zoglin ckv net/minecraft/class_5136 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES b field_23731 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES c field_23733 + f I ATTACK_KNOCKBACK cc field_30505 + f F KNOCKBACK_RESISTANCE cd field_30506 + f I ATTACK_DAMAGE ce field_30507 + f F BABY_ATTACK_DAMAGE cf field_30508 + f I ATTACK_INTERVAL cg field_30509 + f I BABY_ATTACK_INTERVAL ch field_30510 + f I ATTACK_DURATION ci field_30511 + f F MOVEMENT_SPEED_WHEN_FIGHTING cj field_30512 + f F SPEED_MULTIPLIER_WHEN_IDLING ck field_30513 + f I attackAnimationRemainingTicks cl field_23732 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID d field_23734 + f I MAX_HEALTH e field_30514 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_26928 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_26929 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity c method_26930 + p 0 brain + m ()V playAngrySound gl method_26933 + m ()Ljava/util/Optional; findNearestValidAttackTarget gm method_26934 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isTargetable j method_26936 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget k method_26938 + p 1 target + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26937 + m ()Z isAdult t method_26939 + m ()V updateActivity x method_26931 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Zombie ckw net/minecraft/class_1642 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_BABY_ID b field_7429 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_BABY c field_7430 + f I REINFORCEMENT_ATTEMPTS cc field_30515 + f I REINFORCEMENT_RANGE_MAX cd field_30516 + f I REINFORCEMENT_RANGE_MIN ce field_30517 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; ZOMBIE_REINFORCEMENT_CALLEE_CHARGE cf field_52016 + f Lnet/minecraft/resources/ResourceLocation; LEADER_ZOMBIE_BONUS_ID cg field_52017 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_RANDOM_SPAWN_BONUS_ID ch field_52193 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID ci field_7434 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SPECIAL_TYPE_ID cj field_7427 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DROWNED_CONVERSION_ID ck field_7425 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cl field_47811 + f F BREAK_DOOR_CHANCE cm field_30518 + f Ljava/util/function/Predicate; DOOR_BREAKING_PREDICATE cn field_19015 + f Lnet/minecraft/world/entity/ai/goal/BreakDoorGoal; breakDoorGoal co field_7433 + f Z canBreakDoors cp field_7432 + f I inWaterTime cq field_7426 + f I conversionTime cr field_7424 + f Lnet/minecraft/resources/ResourceLocation; REINFORCEMENT_CALLER_CHARGE_ID d field_52018 + f F ZOMBIE_LEADER_CHANCE e field_30519 + m (F)V handleAttributes H method_7205 + p 1 difficulty + m (Lnet/minecraft/util/RandomSource;)Z getSpawnAsBabyOdds a method_29936 + p 0 random + m (Lnet/minecraft/world/Difficulty;)Z method_20009 a method_20009 + m (Lnet/minecraft/world/entity/monster/Zombie;)Lnet/minecraft/util/RandomSource; method_7210 a method_7210 + m ()V doUnderWaterConversion ag_ method_7218 + m ()Z isSunSensitive ah_ method_7216 + m (I)V startUnderWaterConversion b method_7213 + p 1 conversionTime + m (Lnet/minecraft/world/entity/EntityType;)V convertToZombieType b method_7200 + p 1 entityType + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound gk method_7207 + m ()Lnet/minecraft/world/item/ItemStack; getSkull gl method_7215 + m ()Z convertsInWater gm method_7209 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes go method_26940 + m ()Z isUnderWaterConverting gr method_7206 + m ()Z canBreakDoors gs method_7211 + m ()V randomizeReinforcementsChance gt method_6001 + m ()V addBehaviourGoals t method_7208 + m ()Z supportsBreakDoorGoal x method_7212 + m (Z)V setCanBreakDoors y method_7201 + c Sets or removes EntityAIBreakDoor task + p 1 canBreakDoors + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;)V + p 1 level + m ()V +c net/minecraft/world/entity/monster/Zombie$ZombieAttackTurtleEggGoal ckw$a net/minecraft/class_1642$class_1643 + f Lnet/minecraft/world/entity/monster/Zombie; field_7437 g field_7437 + m (Lnet/minecraft/world/entity/monster/Zombie;Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 2 mob + p 3 speedModifier + p 5 verticalSearchRange +c net/minecraft/world/entity/monster/Zombie$ZombieGroupData ckw$b net/minecraft/class_1642$class_1644 + f Z isBaby a field_7439 + f Z canSpawnJockey b field_25607 + m (ZZ)V + p 1 isBaby + p 2 canSpawnJockey +c net/minecraft/world/entity/monster/ZombieVillager ckx net/minecraft/class_1641 + f Lorg/slf4j/Logger; LOGGER b field_36334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CONVERTING_ID c field_7423 + f I VILLAGER_CONVERSION_WAIT_MIN cf field_30523 + f I VILLAGER_CONVERSION_WAIT_MAX cg field_30520 + f I MAX_SPECIAL_BLOCKS_COUNT ch field_30521 + f I SPECIAL_BLOCK_RADIUS ci field_30522 + f I villagerConversionTime cj field_7422 + f Ljava/util/UUID; conversionStarter ck field_7421 + f Lnet/minecraft/nbt/Tag; gossips cl field_20299 + f Lnet/minecraft/world/item/trading/MerchantOffers; tradeOffers cm field_17047 + f I villagerXp cn field_18877 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VILLAGER_DATA d field_7420 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_7197 + p 1 serverLevel + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setTradeOffers a method_16916 + p 1 tradeOffers + m (Ljava/util/UUID;I)V startConverting a method_7199 + c Starts conversion of this zombie villager to a villager + p 1 conversionStarter + p 2 villagerConversionTime + m (Lnet/minecraft/core/Holder$Reference;)V method_40125 a method_40125 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28369 a method_28369 + m (Lnet/minecraft/nbt/Tag;)V setGossips a method_21649 + p 1 gossips + m (I)V setVillagerXp b method_19622 + p 1 villagerXp + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V method_56681 b method_56681 + m ()Z isConverting gu method_7198 + c Returns whether this zombie is in the process of converting to a villager + m ()I getVillagerXp gw method_35194 + m ()I getConversionProgress gx method_7194 + m (Lnet/minecraft/world/item/ItemStack;)Z method_60978 n method_60978 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/ZombifiedPiglin cky net/minecraft/class_1590 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS c field_47812 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_ATTACKING cf field_7307 + f Lnet/minecraft/util/valueproviders/UniformInt; FIRST_ANGER_SOUND_DELAY cg field_25382 + f I playFirstAngerSoundIn ch field_7308 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25379 + f I remainingPersistentAngerTime cj field_25380 + f Ljava/util/UUID; persistentAngerTarget ck field_25381 + f I ALERT_RANGE_Y cl field_30524 + f Lnet/minecraft/util/valueproviders/UniformInt; ALERT_INTERVAL cm field_25609 + f I ticksUntilNextAlert cn field_25608 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_ATTACKING_ID d field_7311 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)V method_29937 a method_29937 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkZombifiedPiglinSpawnRules b method_20682 + p 0 zombifiedPiglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29938 b method_29938 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29939 c method_29939 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29940 d method_29940 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26941 + m ()V maybePlayFirstAngerSound gv method_30080 + m ()V maybeAlertOthers gw method_29941 + m ()V alertOthers gx method_29942 + m ()V playAngerSound gy method_29533 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/breeze/Breeze ckz net/minecraft/class_8949 + f Lnet/minecraft/world/entity/AnimationState; idle b field_47269 + f Lnet/minecraft/world/entity/AnimationState; slide c field_47277 + f Lnet/minecraft/world/entity/AnimationState; shoot cc field_47281 + f Lnet/minecraft/world/entity/AnimationState; inhale cd field_47270 + f I SLIDE_PARTICLES_AMOUNT ce field_47271 + f I IDLE_PARTICLES_AMOUNT cf field_47272 + f I JUMP_DUST_PARTICLES_AMOUNT cg field_47273 + f I JUMP_TRAIL_PARTICLES_AMOUNT ch field_47274 + f I JUMP_TRAIL_DURATION_TICKS ci field_47275 + f I JUMP_CIRCLE_DISTANCE_Y cj field_47276 + f F FALL_DISTANCE_SOUND_TRIGGER_THRESHOLD ck field_47278 + f I WHIRL_SOUND_FREQUENCY_MIN cl field_47813 + f I WHIRL_SOUND_FREQUENCY_MAX cm field_47814 + f I jumpTrailStartedTick cn field_47279 + f I soundTick co field_47815 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; PROJECTILE_DEFLECTION cp field_48344 + f Lnet/minecraft/world/entity/AnimationState; slideBack d field_47816 + f Lnet/minecraft/world/entity/AnimationState; longJump e field_47280 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56087 a method_56087 + m (I)V emitGroundParticles b method_55007 + p 1 count + m (Lnet/minecraft/world/phys/Vec3;)Z withinInnerCircleRange b method_55013 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_56560 c method_56560 + m (Lnet/minecraft/world/entity/Entity;)Z method_56561 d method_56561 + m ()V playWhirlSound gk method_55747 + m ()Ljava/util/Optional; getHurtBy gl method_56562 + m ()D getSnoutYPosition gm method_55009 + m ()V resetAnimations gn method_55010 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55014 + m ()Lnet/minecraft/world/entity/monster/breeze/Breeze; resetJumpTrail t method_55015 + m ()V emitJumpTrailParticles x method_55008 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/breeze/Breeze$1 ckz$1 net/minecraft/class_8949$1 + f [I $SwitchMap$net$minecraft$world$entity$Pose a field_47282 + m ()V +c net/minecraft/world/entity/monster/breeze/BreezeAi cla net/minecraft/class_8950 + f F SPEED_MULTIPLIER_WHEN_SLIDING a field_47283 + f F JUMP_CIRCLE_INNER_RADIUS b field_47284 + f F JUMP_CIRCLE_MIDDLE_RADIUS c field_47285 + f F JUMP_CIRCLE_OUTER_RADIUS d field_47286 + f Ljava/util/List; SENSOR_TYPES e field_47287 + f Ljava/util/List; MEMORY_TYPES f field_47288 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_55018 + p 0 brain + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V updateActivity a method_55748 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z method_60727 a method_60727 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_55016 + p 0 breeze + p 1 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_55750 + p 0 brain + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Ljava/util/Optional; method_55749 b method_55749 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity b method_55019 + p 0 breeze + p 1 brain + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/BreezeAi$SlideToTargetSink cla$a net/minecraft/class_8950$class_8951 + m (II)V +c net/minecraft/world/entity/monster/breeze/BreezeUtil clb net/minecraft/class_9075 + f D MAX_LINE_OF_SIGHT_TEST_RANGE a field_47817 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPointBehindTarget a method_55751 + p 0 target + p 1 random + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/phys/Vec3;)Z hasLineOfSight a method_55752 + p 0 breeze + p 1 pos + m ()V +c net/minecraft/world/entity/monster/breeze/LongJump clc net/minecraft/class_8952 + f I REQUIRED_AIR_BLOCKS_ABOVE c field_47289 + f I JUMP_COOLDOWN_TICKS d field_47291 + f I JUMP_COOLDOWN_WHEN_HURT_TICKS e field_47292 + f I INHALING_DURATION_TICKS f field_47293 + f F MAX_JUMP_VELOCITY g field_47294 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; ALLOWED_ANGLES h field_47295 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z canRun a method_58644 + p 0 level + p 1 breeze + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55021 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/BlockPos; snapToSurface a method_55023 + p 0 owner + p 1 targetPos + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z isFinishedInhaling a method_55024 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; calculateOptimalJumpVector a method_55025 + p 0 breeze + p 1 random + p 2 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z outOfAggroRange a method_55026 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_55028 a method_55028 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions b method_55020 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55030 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z isFinishedJumping b method_55031 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z tooCloseForJump b method_55032 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)V method_55033 b method_55033 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z canJumpFromCurrentPosition c method_55029 + p 0 level + p 1 breeze + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V tick c method_55034 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V stop d method_55035 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/Shoot cld net/minecraft/class_8953 + f I ATTACK_RANGE_MIN_SQRT c field_47296 + f I ATTACK_RANGE_MAX_SQRT d field_47297 + f I UNCERTAINTY_BASE e field_47298 + f I UNCERTAINTY_MULTIPLIER f field_47299 + f F PROJECTILE_MOVEMENT_SCALE g field_47300 + f I SHOOT_INITIAL_DELAY_TICKS h field_47301 + f I SHOOT_RECOVER_DELAY_TICKS i field_47302 + f I SHOOT_COOLDOWN_TICKS j field_47303 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55036 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55037 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z isFacingTarget a method_55038 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Ljava/lang/Boolean;)Ljava/lang/Boolean; method_55039 a method_55039 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55040 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z isTargetWithinRange b method_55041 + p 0 breeze + p 1 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V stop c method_55042 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)V method_55043 c method_55043 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V tick d method_55044 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Boolean; method_55045 d method_55045 + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/ShootWhenStuck cle net/minecraft/class_9035 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55501 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55502 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55503 + m ()V +c net/minecraft/world/entity/monster/breeze/Slide clf net/minecraft/class_8954 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55046 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start a method_55047 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; randomPointInMiddleCircle a method_55048 + p 0 breeze + p 1 target + m ()V +c net/minecraft/world/entity/monster/breeze/package-info clg net/minecraft/class_8955 +c net/minecraft/world/entity/monster/hoglin/Hoglin clh net/minecraft/class_4760 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cc field_22365 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cd field_22366 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IMMUNE_TO_ZOMBIFICATION ce field_23737 + f F PROBABILITY_OF_SPAWNING_AS_BABY cg field_30525 + f I MAX_HEALTH ch field_30526 + f F MOVEMENT_SPEED_WHEN_FIGHTING ci field_30527 + f I ATTACK_KNOCKBACK cj field_30528 + f F KNOCKBACK_RESISTANCE ck field_30529 + f I ATTACK_DAMAGE cl field_30530 + f F BABY_ATTACK_DAMAGE cm field_30531 + f I CONVERSION_TIME cn field_30532 + f I attackAnimationRemainingTicks co field_22368 + f I timeInOverworld cp field_23735 + f Z cannotBeHunted cq field_23736 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_26942 + p 1 serverLevel + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkHoglinSpawnRules c method_24349 + p 0 hoglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z canBeHunted gl method_26945 + m ()Z isImmuneToZombification gm method_26946 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26943 + m ()Z isAdult t method_24658 + m ()Z isConverting x method_26944 + m (Z)V setImmuneToZombification x method_26948 + p 1 immuneToZombification + m (Z)V setCannotBeHunted y method_26949 + p 1 cannotBeHunted + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/hoglin/HoglinAi cli net/minecraft/class_4835 + f I REPELLENT_DETECTION_RANGE_HORIZONTAL a field_30533 + f I REPELLENT_DETECTION_RANGE_VERTICAL b field_30534 + f Lnet/minecraft/util/valueproviders/UniformInt; RETREAT_DURATION c field_22369 + f I ATTACK_DURATION d field_30535 + f I DESIRED_DISTANCE_FROM_PIGLIN_WHEN_IDLING e field_30536 + f I DESIRED_DISTANCE_FROM_PIGLIN_WHEN_RETREATING f field_30537 + f I ATTACK_INTERVAL g field_30538 + f I BABY_ATTACK_INTERVAL h field_30539 + f I REPELLENT_PACIFY_TIME i field_30540 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE j field_25383 + f F SPEED_MULTIPLIER_WHEN_AVOIDING_REPELLENT k field_30541 + f F SPEED_MULTIPLIER_WHEN_RETREATING l field_30542 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE m field_30543 + f F SPEED_MULTIPLIER_WHEN_IDLING n field_30544 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT o field_30545 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors a method_24662 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V method_24663 a method_24663 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_24668 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V updateActivity a method_24664 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V onHitTarget a method_24665 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; getSoundForActivity a method_30082 + p 0 hoglin + p 1 activity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/core/BlockPos;)Z isPosNearNearestRepellent a method_24669 + p 0 hoglin + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V method_24670 b method_24670 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_24666 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; getSoundForCurrentActivity b method_30083 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy b method_24672 + p 0 hoglin + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; method_30084 b method_30084 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_24673 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isPacified c method_24677 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastRetreat c method_24675 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity d method_24676 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; findNearestValidAttackTarget d method_24684 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V retreatFromNearestTarget d method_24678 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initRetreatActivity e method_24679 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z wantsToStopFleeing e method_25947 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAvoidTarget e method_24681 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z piglinsOutnumberHoglins f method_24686 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V maybeRetaliate f method_24683 + p 0 hoglin + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/List; getVisibleAdultHoglins g method_24690 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget g method_24685 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isNearRepellent h method_30085 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastAttackTarget h method_24687 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isBreeding i method_24691 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAttackTargetIfCloserThanCurrent i method_24689 + p 0 hoglin + p 1 target + m ()V + m ()V +c net/minecraft/world/entity/monster/hoglin/HoglinBase clj net/minecraft/class_5137 + f I ATTACK_ANIMATION_DURATION o_ field_30546 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z hurtAndThrowTarget a method_26950 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V throwTarget b method_26951 + p 0 hoglin + p 1 target + m ()I getAttackAnimationRemainingTicks gk method_24657 +c net/minecraft/world/entity/monster/hoglin/package-info clk net/minecraft/class_6064 +c net/minecraft/world/entity/monster/package-info cll net/minecraft/class_6065 +c net/minecraft/world/entity/monster/piglin/AbstractPiglin clm net/minecraft/class_5418 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IMMUNE_TO_ZOMBIFICATION b field_25758 + f I CONVERSION_TIME c field_30547 + f I timeInOverworld d field_25759 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_24694 + p 1 serverLevel + m ()Z isConverting gk method_30235 + m ()Z isAdult gl method_30236 + m ()Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; getArmPose gm method_24705 + m ()Z isHoldingMeleeWeapon gn method_30237 + m ()V playConvertedSound go method_30238 + m ()Z canHunt s method_26952 + m ()Z isImmuneToZombification t method_30234 + m ()V applyOpenDoorsAbility x method_30239 + m (Z)V setImmuneToZombification x method_30240 + p 1 immuneToZombification + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/Piglin cln net/minecraft/class_4836 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_22381 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID cd field_22377 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_CHARGING_CROSSBOW ce field_22378 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_DANCING cf field_25164 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_BABY_ID cg field_22379 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_BABY ch field_22380 + f I MAX_HEALTH ci field_30548 + f F MOVEMENT_SPEED_WHEN_FIGHTING cj field_30549 + f I ATTACK_DAMAGE ck field_30550 + f F CHANCE_OF_WEARING_EACH_ARMOUR_ITEM cl field_30552 + f I MAX_PASSENGERS_ON_ONE_HOGLIN cm field_30553 + f F PROBABILITY_OF_SPAWNING_AS_BABY cn field_30554 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS co field_47818 + f D PROBABILITY_OF_SPAWNING_WITH_CROSSBOW_INSTEAD_OF_SWORD cp field_30556 + f Lnet/minecraft/world/SimpleContainer; inventory cq field_22371 + f Z cannotHunt cr field_23738 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_22376 + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;)V maybeWearArmor a method_24696 + p 1 slot + p 2 stack + p 3 random + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/entity/Entity; getTopPassenger b method_26089 + p 1 vehicle + p 2 maxPosition + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPiglinSpawnRules b method_24695 + p 0 piglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gr method_26953 + m ()Z isDancing gs method_29272 + m ()Lnet/minecraft/world/item/ItemStack; createSpawnWeapon gt method_24702 + m ()Z isChargingCrossbow gu method_24703 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; addToInventory n method_24711 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canAddToInventory o method_27085 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V holdInMainHand p method_24844 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V holdInOffHand q method_24845 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canReplaceCurrentItem r method_24846 + p 1 candidate + m (Z)V setDancing y method_29274 + p 1 dancing + m (Z)V setCannotHunt z method_26954 + p 1 cannotHunt + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinAi clo net/minecraft/class_4838 + f Lnet/minecraft/util/valueproviders/UniformInt; AVOID_ZOMBIFIED_DURATION A field_25384 + f Lnet/minecraft/util/valueproviders/UniformInt; BABY_AVOID_NEMESIS_DURATION B field_25698 + f F PROBABILITY_OF_CELEBRATION_DANCE C field_30557 + f F SPEED_MULTIPLIER_WHEN_AVOIDING D field_30558 + f F SPEED_MULTIPLIER_WHEN_RETREATING E field_30559 + f F SPEED_MULTIPLIER_WHEN_MOUNTING F field_30560 + f F SPEED_MULTIPLIER_WHEN_GOING_TO_WANTED_ITEM G field_30561 + f F SPEED_MULTIPLIER_WHEN_GOING_TO_CELEBRATE_LOCATION H field_30562 + f F SPEED_MULTIPLIER_WHEN_DANCING I field_30563 + f F SPEED_MULTIPLIER_WHEN_IDLING J field_30564 + f I REPELLENT_DETECTION_RANGE_HORIZONTAL a field_30565 + f I REPELLENT_DETECTION_RANGE_VERTICAL b field_30566 + f Lnet/minecraft/world/item/Item; BARTERING_ITEM c field_23826 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_HUNTS d field_22388 + f I PLAYER_ANGER_RANGE e field_30567 + f I ANGER_DURATION f field_30568 + f I ADMIRE_DURATION g field_30569 + f I MAX_DISTANCE_TO_WALK_TO_ITEM h field_30570 + f I MAX_TIME_TO_WALK_TO_ITEM i field_30571 + f I HOW_LONG_TIME_TO_DISABLE_ADMIRE_WALKING_IF_CANT_REACH_ITEM j field_30572 + f I CELEBRATION_TIME k field_30573 + f I BABY_FLEE_DURATION_AFTER_GETTING_HIT l field_30574 + f I HIT_BY_PLAYER_MEMORY_TIMEOUT m field_30575 + f I MAX_WALK_DISTANCE_TO_START_RIDING n field_30576 + f Lnet/minecraft/util/valueproviders/UniformInt; RIDE_START_INTERVAL o field_22389 + f Lnet/minecraft/util/valueproviders/UniformInt; RIDE_DURATION p field_22390 + f Lnet/minecraft/util/valueproviders/UniformInt; RETREAT_DURATION q field_22391 + f I MELEE_ATTACK_COOLDOWN r field_30577 + f I EAT_COOLDOWN s field_30578 + f I DESIRED_DISTANCE_FROM_ENTITY_WHEN_AVOIDING t field_30579 + f I MAX_LOOK_DIST u field_30580 + f I MAX_LOOK_DIST_FOR_PLAYER_HOLDING_LOVED_ITEM v field_30581 + f I INTERACTION_RANGE w field_30582 + f I MIN_DESIRED_DIST_FROM_TARGET_WHEN_HOLDING_CROSSBOW x field_30583 + f F SPEED_WHEN_STRAFING_BACK_FROM_TARGET y field_30584 + f I DESIRED_DISTANCE_FROM_ZOMBIFIED z field_30585 + m ()Lcom/google/common/collect/ImmutableList; createLookBehaviors a method_47272 + m (Lnet/minecraft/world/entity/EntityType;)Z isZombified a method_29534 + p 0 entityType + m (Lnet/minecraft/world/entity/LivingEntity;)Z isWearingGold a method_24719 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z wantsToDance a method_29276 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)V method_29535 a method_29535 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_24721 a method_24721 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_24725 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/LivingEntity;)Z method_47273 a method_47273 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Lnet/minecraft/world/item/ItemStack; removeOneItemFromItemEntity a method_24848 + p 0 itemEntity + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V broadcastUniversalAnger a method_29945 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V maybeRetaliate a method_24759 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/player/Player;)V method_29944 a method_29944 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V updateActivity a method_24722 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/util/RandomSource;)V initMemories a method_24736 + p 0 piglin + p 1 random + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/Entity;)Z wantsToStopRiding a method_24723 + p 0 piglin + p 1 vehicle + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy a method_24724 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_24732 + p 0 piglin + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem a method_24726 + p 0 piglin + p 1 itemEntity + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; mobInteract a method_24728 + p 0 piglin + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/player/Player;Ljava/util/List;)V throwItemsTowardPlayer a method_24727 + p 0 piglin + p 1 player + p 2 stacks + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; getSoundForActivity a method_30087 + p 0 piglin + p 1 activity + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)Z wantsToPickup a method_24730 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;)V throwItems a method_24772 + p 0 pilgin + p 1 stacks + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;Lnet/minecraft/world/phys/Vec3;)V throwItemsTowardPos a method_24731 + p 0 piglin + p 1 stacks + p 2 pos + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Z)V stopHoldingOffHandItem a method_24741 + p 0 piglin + p 1 shouldBarter + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/monster/piglin/Piglin;)V method_24734 a method_24734 + m (Lnet/minecraft/world/entity/player/Player;Z)V angerNearbyPiglins a method_24733 + p 0 player + p 1 angerOnlyIfCanSee + m (Lnet/minecraft/world/item/ItemStack;)Z isLovedItem a method_24735 + p 0 item + m (ZLnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_24745 a method_24745 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleLookBehaviors b method_24717 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isPlayerHoldingLovedItem b method_24739 + p 0 player + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_24720 b method_24720 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_24740 b method_24740 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_24743 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; getNearestVisibleTargetablePlayer b method_29947 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastAngerTarget b method_24742 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V cancelAdmiring b method_25948 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)Z isNearestValidAttackTarget b method_24755 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity b method_24751 + p 0 piglin + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; method_30088 b method_30088 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)Z canAdmire b method_27086 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;)V throwItemsTowardRandomPos b method_24774 + p 0 piglin + p 1 stacks + m (Lnet/minecraft/world/item/ItemStack;)Z isBarterCurrency b method_24746 + p 0 stack + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors c method_24718 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasCrossbow c method_24748 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initCelebrateActivity c method_24756 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V dontKillAnyMoreHoglinsForAWhile c method_24762 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTarget c method_24750 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; getSoundForCurrentActivity c method_30091 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastRetreat c method_24767 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)V holdInOffhand c method_30089 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFood c method_24752 + p 0 stack + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; avoidRepellent d method_24738 + m (Lnet/minecraft/world/entity/LivingEntity;)V admireGoldItem d method_24753 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initAdmireItemActivity d method_24760 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z isIdle d method_24766 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTargetToNearestTargetablePlayerIfFound d method_29946 + p 0 piglin + p 1 currentTarget + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/List; getVisibleAdultPiglins d method_24780 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V retreatFromNearestTarget d method_24771 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)V putInInventory d method_24849 + p 0 piglin + p 1 stack + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; babyAvoidNemesis e method_30090 + m (Lnet/minecraft/world/entity/LivingEntity;)Z seesPlayerHoldingLovedItem e method_24761 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initRetreatActivity e method_24764 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/List; getAdultPiglins e method_26350 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTargetIfCloserThanCurrent e method_24763 + p 0 piglin + p 1 currentTarget + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; getAvoidTarget e method_29536 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V setAvoidTargetAndDontHuntForAWhile e method_24773 + p 0 piglin + p 1 target + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; avoidZombified f method_24747 + m (Lnet/minecraft/world/entity/LivingEntity;)Z doesntSeeAnyPlayerHoldingLovedItem f method_24765 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initRideHoglinActivity f method_24768 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; getAngerTarget f method_24782 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isBabyRidingBaby f method_29277 + p 0 passenger + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)Z method_24775 f method_24775 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; babySometimesRideBabyHoglin g method_24737 + m (Lnet/minecraft/world/entity/LivingEntity;)Z wasHurtRecently g method_24769 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z method_30241 g method_30241 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/List; getBarterResponseItems g method_24776 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_29943 h method_29943 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearZombified h method_29537 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; findNearestValidAttackTarget i method_24777 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearAvoidTarget j method_29538 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V stopWalking k method_24781 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z wantsToStopFleeing l method_24783 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z piglinsEqualOrOutnumberHoglins m method_24784 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z hoglinsOutnumberPiglins n method_24785 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V eat o method_24787 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Lnet/minecraft/world/phys/Vec3; getRandomNearbyPos p method_24788 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z hasEatenRecently q method_24789 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isAdmiringItem r method_24790 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearRepellent s method_24791 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isAdmiringDisabled t method_24714 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isHoldingItemInOffHand u method_24917 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNotHoldingLovedItemInOffHand v method_24850 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_47274 w method_47274 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_29275 x method_29275 + m ()V + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinArmPose clp net/minecraft/class_4837 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; ATTACKING_WITH_MELEE_WEAPON a field_25165 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; CROSSBOW_HOLD b field_22383 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; CROSSBOW_CHARGE c field_22384 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; ADMIRING_ITEM d field_22385 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; DANCING e field_25166 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; DEFAULT f field_22386 + f [Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; $VALUES g field_22387 + m ()[Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; $values a method_36659 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinBrute clq net/minecraft/class_5419 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_25760 + f I MAX_HEALTH cd field_30586 + f F MOVEMENT_SPEED_WHEN_FIGHTING ce field_30587 + f I ATTACK_DAMAGE cf field_30588 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_25761 + m ()V playAngrySound gr method_30243 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_30242 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinBruteAi clr net/minecraft/class_5420 + f I ANGER_DURATION a field_30589 + f I MELEE_ATTACK_COOLDOWN b field_30590 + f D ACTIVITY_SOUND_LIKELIHOOD_PER_TICK c field_30591 + f I MAX_LOOK_DIST d field_30592 + f I INTERACTION_RANGE e field_30593 + f D TARGETING_RANGE f field_30594 + f F SPEED_MULTIPLIER_WHEN_IDLING g field_30595 + f I HOME_CLOSE_ENOUGH_DISTANCE h field_30596 + f I HOME_TOO_FAR_DISTANCE i field_30597 + f I HOME_STROLL_AROUND_DISTANCE j field_30598 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleLookBehaviors a method_30244 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_30246 a method_30246 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; findNearestValidAttackTarget a method_30247 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)Z isNearestValidAttackTarget a method_30248 + p 0 piglinBrute + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getTargetIfWithinRange a method_30249 + p 0 piglinBrute + p 1 memoryType + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V initMemories a method_30250 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy a method_30251 + p 0 piglinBrute + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_30252 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/schedule/Activity;)V method_30253 a method_30253 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors b method_30254 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)Z method_30255 b method_30255 + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V updateActivity b method_30256 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTarget b method_35198 + p 0 piglinBrute + p 1 angerTarget + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_30257 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V maybePlayActivitySound c method_30258 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)Z method_30259 c method_30259 + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_30260 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V playActivitySound d method_30261 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity d method_30262 + p 0 piglinBrute + p 1 brain + m ()V +c net/minecraft/world/entity/monster/piglin/RememberIfHoglinWasKilled cls net/minecraft/class_4819 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47275 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47276 a method_47276 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47277 a method_47277 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47278 a method_47278 + m ()V +c net/minecraft/world/entity/monster/piglin/StartAdmiringItemIfSeen clt net/minecraft/class_4823 + m (I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47279 + p 0 admireDuration + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47280 a method_47280 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47281 a method_47281 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47282 a method_47282 + m ()V +c net/minecraft/world/entity/monster/piglin/StartHuntingHoglin clu net/minecraft/class_4826 + m ()Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47283 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47284 a method_47284 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/piglin/Piglin;J)Z method_47285 a method_47285 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47286 a method_47286 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z hasHuntedRecently a method_47287 + p 0 piglin + m (Ljava/util/List;)V method_47288 a method_47288 + m (Ljava/util/List;)Ljava/lang/Boolean; method_47289 b method_47289 + m ()V +c net/minecraft/world/entity/monster/piglin/StopAdmiringIfItemTooFarAway clv net/minecraft/class_4827 + m (I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47290 + p 0 maxDist + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47291 a method_47291 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47292 a method_47292 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47293 a method_47293 + m ()V +c net/minecraft/world/entity/monster/piglin/StopAdmiringIfTiredOfTryingToReachItem clw net/minecraft/class_5430 + m (II)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47294 + p 0 maxTimeToReachItem + p 1 disableDuration + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47295 a method_47295 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47296 a method_47296 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47297 a method_47297 + m ()V +c net/minecraft/world/entity/monster/piglin/StopHoldingItemIfNoLongerAdmiring clx net/minecraft/class_4830 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47298 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/piglin/Piglin;J)Z method_47299 a method_47299 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47300 a method_47300 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47301 a method_47301 + m ()V +c net/minecraft/world/entity/monster/piglin/package-info cly net/minecraft/class_6066 +c net/minecraft/world/entity/monster/warden/AngerLevel clz net/minecraft/class_7253 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; CALM a field_38120 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; AGITATED b field_38121 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; ANGRY c field_38122 + f [Lnet/minecraft/world/entity/monster/warden/AngerLevel; SORTED_LEVELS d field_38123 + f I minimumAnger e field_38124 + f Lnet/minecraft/sounds/SoundEvent; ambientSound f field_38125 + f Lnet/minecraft/sounds/SoundEvent; listeningSound g field_38732 + f [Lnet/minecraft/world/entity/monster/warden/AngerLevel; $VALUES h field_38126 + m ()I getMinimumAnger a method_42170 + m (I)Lnet/minecraft/world/entity/monster/warden/AngerLevel; byAnger a method_42171 + p 0 anger + m (Lnet/minecraft/world/entity/monster/warden/AngerLevel;Lnet/minecraft/world/entity/monster/warden/AngerLevel;)I method_42172 a method_42172 + m ([Lnet/minecraft/world/entity/monster/warden/AngerLevel;)V method_42173 a method_42173 + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientSound b method_42174 + m ()Lnet/minecraft/sounds/SoundEvent; getListeningSound c method_43103 + m ()Z isAngry d method_43691 + m ()[Lnet/minecraft/world/entity/monster/warden/AngerLevel; $values e method_42175 + m (Ljava/lang/String;IILnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 3 minimumAnger + p 4 ambientSound + p 5 listeningSound + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement cma net/minecraft/class_7254 + f I CONVERSION_DELAY a field_38733 + f I MAX_ANGER b field_38128 + f Ljava/util/ArrayList; suspects c field_38734 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; angerBySuspect d field_38130 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; angerByUuid e field_38735 + f I DEFAULT_ANGER_DECREASE f field_38129 + f I conversionDelay g field_38736 + f I highestAnger h field_39304 + f Lcom/mojang/serialization/Codec; SUSPECT_ANGER_PAIR i field_38737 + f Ljava/util/function/Predicate; filter j field_39114 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement$Sorter; suspectSorter k field_39115 + m ()Ljava/util/Optional; getActiveEntity a method_42181 + m (ILnet/minecraft/world/entity/Entity;Ljava/lang/Integer;)Ljava/lang/Integer; method_42177 a method_42177 + m (Lnet/minecraft/server/level/ServerLevel;)V convertFromUuids a method_43104 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Predicate;)V tick a method_42176 + p 1 level + p 2 predicate + m (Lnet/minecraft/world/entity/Entity;)V clearAnger a method_42178 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;I)I increaseAnger a method_42179 + p 1 entity + p 2 offset + m (Lcom/mojang/datafixers/util/Pair;)V method_43105 a method_43105 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43107 a method_43107 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lcom/mojang/datafixers/util/Pair; method_43106 a method_43106 + m (Ljava/util/function/Predicate;)Lcom/mojang/serialization/Codec; codec a method_43692 + p 0 filter + m (Ljava/util/function/Predicate;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43693 a method_43693 + m (Ljava/util/function/Predicate;Ljava/util/List;)Lnet/minecraft/world/entity/monster/warden/AngerManagement; method_43694 a method_43694 + m ()Ljava/util/List; createUuidAngerPairs b method_43108 + m (Lnet/minecraft/world/entity/Entity;)I getActiveAnger b method_42185 + p 1 entity + m ()V sortAndUpdateHighestAnger c method_43998 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_42186 c method_42186 + m ()Lnet/minecraft/world/entity/Entity; getTopSuspect d method_42187 + m (Lnet/minecraft/world/entity/Entity;)Z method_42188 d method_42188 + m (Lnet/minecraft/world/entity/Entity;)Lcom/mojang/datafixers/util/Pair; method_43109 e method_43109 + m (Ljava/util/function/Predicate;Ljava/util/List;)V + p 1 filter + p 2 angerByUuid + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement$1 cma$1 net/minecraft/class_7254$1 + f [I $SwitchMap$net$minecraft$world$entity$Entity$RemovalReason a field_39116 + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement$Sorter cma$a net/minecraft/class_7254$class_7379 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement a comp_708 + m ()Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement a comp_708 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I compare a method_43110 + p 1 first + p 2 second + m (Lnet/minecraft/world/entity/monster/warden/AngerManagement;)V +c net/minecraft/world/entity/monster/warden/Warden cmb net/minecraft/class_7260 + f Lnet/minecraft/world/entity/AnimationState; roarAnimationState b field_38168 + f I PROJECTILE_ANGER_DISTANCE cA field_39305 + f I tendrilAnimation cB field_38162 + f I tendrilAnimationO cD field_38163 + f I heartAnimation cE field_38164 + f I heartAnimationO cF field_38165 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicGameEventListener cG field_38166 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser cH field_44598 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData cI field_44599 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement cJ field_38141 + f Lnet/minecraft/world/entity/AnimationState; sniffAnimationState c field_38169 + f Lnet/minecraft/world/entity/AnimationState; attackAnimationState cc field_38137 + f Lnet/minecraft/world/entity/AnimationState; sonicBoomAnimationState cd field_38859 + f Lorg/slf4j/Logger; LOGGER ce field_38138 + f I VIBRATION_COOLDOWN_TICKS cf field_38142 + f I TIME_TO_USE_MELEE_UNTIL_SONIC_BOOM cg field_38860 + f I MAX_HEALTH ch field_38143 + f F MOVEMENT_SPEED_WHEN_FIGHTING ci field_38144 + f F KNOCKBACK_RESISTANCE cj field_38145 + f F ATTACK_KNOCKBACK ck field_38146 + f I ATTACK_DAMAGE cl field_38147 + f Lnet/minecraft/network/syncher/EntityDataAccessor; CLIENT_ANGER_LEVEL cm field_38148 + f I DARKNESS_DISPLAY_LIMIT cn field_38149 + f I DARKNESS_DURATION co field_38150 + f I DARKNESS_RADIUS cp field_38151 + f I DARKNESS_INTERVAL cq field_38152 + f I ANGERMANAGEMENT_TICK_DELAY cr field_38153 + f I DEFAULT_ANGER cs field_38155 + f I PROJECTILE_ANGER ct field_38156 + f I ON_HURT_ANGER_BOOST cu field_39117 + f I RECENT_PROJECTILE_TICK_THRESHOLD cv field_38157 + f I TOUCH_COOLDOWN_TICKS cw field_38158 + f I DIGGING_PARTICLES_AMOUNT cx field_38159 + f F DIGGING_PARTICLES_DURATION cy field_38160 + f F DIGGING_PARTICLES_OFFSET cz field_38161 + f Lnet/minecraft/world/entity/AnimationState; emergeAnimationState d field_38135 + f Lnet/minecraft/world/entity/AnimationState; diggingAnimationState e field_38136 + m (F)F getTendrilAnimation H method_42223 + p 1 partialTick + m (F)F getHeartAnimation I method_42202 + p 1 partialTick + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;I)V applyDarknessAround a method_42204 + p 0 level + p 1 pos + p 2 source + p 3 radius + m (Lnet/minecraft/world/entity/AnimationState;)V clientDiggingParticles a method_42205 + p 1 animationState + m (Lnet/minecraft/world/entity/Entity;IZ)V increaseAngerAt a method_42212 + p 1 entity + p 2 offset + p 3 playListeningSound + m (Lnet/minecraft/world/entity/monster/warden/AngerManagement;)V method_42208 a method_42208 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Lnet/minecraft/world/entity/ai/Brain; method_51302 a method_51302 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_51303 a method_51303 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42669 a method_42669 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42209 b method_42209 + m (Lnet/minecraft/world/entity/Entity;)Z canTargetEntity c method_42206 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V clearAnger d method_42211 + p 1 entity + m (Ljava/lang/String;)V method_60979 d method_60979 + m (Lnet/minecraft/world/entity/Entity;)V increaseAngerAt e method_42213 + p 1 entity + m (Ljava/lang/String;)V method_60980 e method_60980 + m (Ljava/lang/String;)V method_60981 f method_60981 + m (Ljava/lang/String;)V method_60982 g method_60982 + m ()Ljava/util/Optional; getEntityAngryAt gk method_42215 + m ()Lnet/minecraft/world/entity/monster/warden/AngerManagement; getAngerManagement gl method_42216 + m ()Z isDiggingOrEmerging go method_43113 + m ()V syncClientAngerLevel gr method_42217 + m ()I getHeartBeatDelay gs method_42218 + m ()V playListeningSound gt method_42219 + m ()I getActiveAnger gu method_43999 + m (Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget j method_43274 + p 1 attackTarget + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_42221 + m ()I getClientAngerLevel t method_42222 + m ()Lnet/minecraft/world/entity/monster/warden/AngerLevel; getAngerLevel x method_42214 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/warden/Warden$1 cmb$1 net/minecraft/class_7260$1 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/monster/warden/Warden$1$1 cmb$1$1 net/minecraft/class_7260$1$1 + m (Lnet/minecraft/world/entity/monster/warden/Warden$1;Lnet/minecraft/world/level/pathfinder/NodeEvaluator;I)V +c net/minecraft/world/entity/monster/warden/Warden$2 cmb$2 net/minecraft/class_7260$2 + f [I $SwitchMap$net$minecraft$world$entity$Pose a field_38170 + m ()V +c net/minecraft/world/entity/monster/warden/Warden$VibrationUser cmb$a net/minecraft/class_7260$class_8507 + f Lnet/minecraft/world/entity/monster/warden/Warden; field_44600 a field_44600 + f I GAME_EVENT_LISTENER_RANGE b field_44601 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44602 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V +c net/minecraft/world/entity/monster/warden/WardenAi cmc net/minecraft/class_7261 + f I EMERGE_DURATION a field_38171 + f I ROAR_DURATION b field_38172 + f I DIGGING_COOLDOWN c field_38173 + f F SPEED_MULTIPLIER_WHEN_IDLING d field_38175 + f F SPEED_MULTIPLIER_WHEN_INVESTIGATING e field_38176 + f F SPEED_MULTIPLIER_WHEN_FIGHTING f field_38177 + f I MELEE_ATTACK_COOLDOWN g field_38178 + f I DIGGING_DURATION h field_38179 + f I SNIFFING_DURATION i field_38180 + f I DISTURBANCE_LOCATION_EXPIRY_TIME j field_38181 + f Ljava/util/List; SENSOR_TYPES k field_38416 + f Ljava/util/List; MEMORY_TYPES l field_38417 + f Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; DIG_COOLDOWN_SETTER m field_38182 + m (Lnet/minecraft/world/entity/LivingEntity;)V setDigCooldown a method_42225 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_42232 a method_42232 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_42227 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47302 a method_47302 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47303 a method_47303 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z method_47304 a method_47304 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V updateActivity a method_42228 + p 0 warden + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z isTarget a method_42229 + p 0 warden + p 1 entity + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity a method_42236 + p 0 warden + p 1 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_42230 + p 0 warden + p 1 ops + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/core/BlockPos;)V setDisturbanceLocation a method_42231 + p 0 warden + p 1 disturbanceLocation + m (Lnet/minecraft/world/entity/ai/Brain;)V initEmergeActivity b method_42233 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V onTargetInvalid b method_42235 + p 0 warden + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initDiggingActivity c method_42237 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_42241 c method_42241 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity d method_42240 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_42243 d method_42243 + m (Lnet/minecraft/world/entity/ai/Brain;)V initInvestigateActivity e method_42242 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initSniffingActivity f method_42244 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initRoarActivity g method_42245 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/monster/warden/WardenSpawnTracker cmd net/minecraft/class_7262 + f Lcom/mojang/serialization/Codec; CODEC a field_38183 + f I MAX_WARNING_LEVEL b field_38184 + f D PLAYER_SEARCH_RADIUS c field_38738 + f I WARNING_CHECK_DIAMETER d field_38186 + f I DECREASE_WARNING_LEVEL_EVERY_INTERVAL e field_38187 + f I WARNING_LEVEL_INCREASE_COOLDOWN f field_38188 + f I ticksSinceLastWarning g field_38194 + f I warningLevel h field_38195 + f I cooldownTicks i field_38196 + m ()V tick a method_42247 + m (I)V setWarningLevel a method_42248 + p 1 warningLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z hasNearbyWarden a method_42259 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/OptionalInt; tryWarn a method_42250 + p 0 level + p 1 pos + p 2 player + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/stream/Stream; method_45380 a method_45380 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V copyData a method_42252 + p 1 other + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;Lnet/minecraft/server/level/ServerPlayer;)V method_44002 a method_44002 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45381 a method_45381 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42254 a method_42254 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerPlayer;)Z method_42255 a method_42255 + m ()V reset b method_42258 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/List; getNearbyPlayers b method_42265 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_44001 b method_44001 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42263 b method_42263 + m ()I getWarningLevel c method_42267 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42266 c method_42266 + m ()Z onCooldown d method_44003 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42269 d method_42269 + m ()V increaseWarningLevel e method_42261 + m ()V decreaseWarningLevel f method_42264 + m (III)V + p 1 ticksSinceLastWarning + p 2 warningLevel + p 3 cooldownTicks + m ()V +c net/minecraft/world/entity/monster/warden/package-info cme net/minecraft/class_7263 +c net/minecraft/world/entity/npc/AbstractVillager cmf net/minecraft/class_3988 + f I VILLAGER_SLOT_OFFSET cc field_30599 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers cd field_17721 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_UNHAPPY_COUNTER ce field_19295 + f Lorg/slf4j/Logger; LOGGER cf field_48833 + f I VILLAGER_INVENTORY_SIZE cg field_30600 + f Lnet/minecraft/world/entity/player/Player; tradingPlayer ch field_17722 + f Lnet/minecraft/world/SimpleContainer; inventory ci field_17723 + m (Lnet/minecraft/world/item/trading/MerchantOffers;[Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;I)V addOffersFromItemListings a method_19170 + c Adds limited numbers of trades to the given {@link net.minecraft.world.item.trading.MerchantOffers}. + p 1 givenMerchantOffers + p 2 newTrades + p 3 maxNumbers + m (Lnet/minecraft/core/particles/ParticleOptions;)V addParticlesAroundSelf a method_18007 + p 1 particleOption + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V rewardTradeXp b method_18008 + p 1 offer + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V method_56682 b method_56682 + m ()Z isTrading gl method_18009 + m ()V playCelebrateSound gp method_20010 + m ()V stopTrading gq method_19181 + m ()V updateTrades gr method_7237 + m ()I getUnhappyCounter s method_20506 + m (I)V setUnhappyCounter s method_20507 + p 1 unhappyCounter + m (Z)Lnet/minecraft/sounds/SoundEvent; getTradeUpdatedSound x method_18012 + p 1 isYesSound + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/npc/CatSpawner cmg net/minecraft/class_4274 + f I TICK_DELAY a field_30601 + f I nextTick b field_19171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I spawnInVillage a method_20263 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)I spawnCat a method_20262 + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/core/Holder;)Z method_44004 a method_44004 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I spawnInHut b method_20260 + p 1 serverLevel + p 2 pos + m ()V +c net/minecraft/world/entity/npc/ClientSideMerchant cmh net/minecraft/class_1645 + f Lnet/minecraft/world/entity/player/Player; source a field_7441 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers b field_7442 + f I xp c field_18525 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 source +c net/minecraft/world/entity/npc/InventoryCarrier cmi net/minecraft/class_6067 + f Ljava/lang/String; TAG_INVENTORY e_ field_40736 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/npc/InventoryCarrier;Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem a method_43544 + p 0 mob + p 1 carrier + p 2 itemEntity + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V readInventoryFromTag a method_46400 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V writeInventoryToTag b method_46399 + p 1 tag + p 2 levelRegistry + m ()Lnet/minecraft/world/SimpleContainer; getInventory x method_35199 +c net/minecraft/world/entity/npc/Npc cmj net/minecraft/class_1655 +c net/minecraft/world/entity/npc/Villager cmk net/minecraft/class_1646 + f J lastGossipDecayTime cA field_19357 + f I villagerXp cB field_18536 + f J lastRestockGameTime cD field_18537 + f I numberOfRestocksToday cE field_19427 + f J lastRestockCheckDayTime cF field_20332 + f Z assignProfessionWhenSpawned cG field_25167 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cH field_18538 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cI field_18539 + f I BREEDING_FOOD_THRESHOLD ce field_30602 + f Ljava/util/Map; FOOD_POINTS cf field_18526 + c Mapping between valid food items and their respective efficiency values. + f F SPEED_MODIFIER cg field_30603 + f Ljava/util/Map; POI_MEMORIES ch field_18851 + f Lorg/slf4j/Logger; LOGGER ci field_36335 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VILLAGER_DATA cj field_7445 + f I TRADES_PER_LEVEL ck field_30604 + f Ljava/util/Set; WANTED_ITEMS cl field_18527 + c Defaults items a villager regardless of its profession can pick up. + f I MAX_GOSSIP_TOPICS cm field_30605 + f I GOSSIP_COOLDOWN cn field_30606 + f I GOSSIP_DECAY_INTERVAL co field_30607 + f I REPUTATION_CHANGE_PER_EVENT cp field_30608 + f I HOW_FAR_AWAY_TO_TALK_TO_OTHER_VILLAGERS_ABOUT_GOLEMS cq field_30609 + f I HOW_MANY_VILLAGERS_NEED_TO_AGREE_TO_SPAWN_A_GOLEM cr field_30610 + f J TIME_SINCE_SLEEPING_FOR_GOLEM_SPAWNING cs field_30611 + f I updateMerchantTimer ct field_18528 + f Z increaseProfessionLevelOnUpdate cu field_18529 + f Lnet/minecraft/world/entity/player/Player; lastTradedPlayer cv field_18530 + f Z chasing cw field_30612 + f I foodLevel cx field_18533 + f Lnet/minecraft/world/entity/ai/gossip/GossipContainer; gossips cy field_18534 + f J lastGossipTime cz field_18535 + m (J)Z wantsToSpawnGolem a method_20687 + p 1 gameTime + m (JLnet/minecraft/world/entity/npc/Villager;)Z method_20693 a method_20693 + m (Lnet/minecraft/server/level/ServerLevel;)V refreshBrain a method_19179 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;JI)V spawnGolemIfNeeded a method_20688 + p 1 serverLevel + p 2 gameTime + p 4 minVillagerAmount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)V method_20699 a method_20699 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V gossip a method_19177 + p 1 serverLevel + p 2 target + p 3 gameTime + m (Lnet/minecraft/world/SimpleContainer;Ljava/util/Map$Entry;)I method_19172 a method_19172 + m (Lnet/minecraft/world/entity/ai/Brain;)V registerBrainGoals a method_19174 + p 1 villagerBrain + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)Z method_20593 a method_20593 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V releasePoi a method_19176 + p 1 moduleType + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19520 a method_19520 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/core/GlobalPos;)V method_19178 a method_19178 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28370 a method_28370 + m (Lnet/minecraft/nbt/Tag;)V setGossips a method_21650 + p 1 gossip + m (J)Z golemSpawnConditionsMet b method_20741 + p 1 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/npc/Villager; getBreedOffspring b method_7225 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_29278 b method_29278 + m (Lnet/minecraft/world/entity/npc/VillagerData;)V method_56683 b method_56683 + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setOffers b method_16917 + p 1 offers + m (Lnet/minecraft/world/entity/Entity;)V tellWitnessesThatIWasMurdered c method_20690 + p 1 murderer + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19521 c method_19521 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19522 d method_19522 + m (Lnet/minecraft/world/entity/player/Player;)I getPlayerReputation f method_20594 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)V startTrading g method_19191 + p 1 player + m ()Z isChasing gA method_35200 + m ()V eatAndDigestFood gB method_20697 + m ()Z hasExcessFood gC method_7234 + c Used by {@link net.minecraft.world.entity.ai.behavior.TradeWithVillager} to check if the villager can give some items from an inventory to another villager. + m ()Z wantsMoreFood gD method_7239 + m ()Z hasFarmSeeds gE method_19623 + c Returns {@code true} if villager has seeds, potatoes or carrots in inventory + m ()Lnet/minecraft/world/entity/ai/gossip/GossipContainer; getGossips gF method_21651 + m ()V setUnhappy gG method_20264 + m ()V resetSpecialPrices gH method_19187 + m ()V resendOffersToTradingPlayer gI method_49695 + m ()Z needsToRestock gJ method_20823 + m ()Z allowedToRestock gK method_20824 + m ()V catchUpDemand gL method_21723 + m ()V updateDemand gM method_21724 + m ()V releaseAllPois gN method_30958 + m ()Z hungry gO method_20698 + m ()V eatUntilFull gP method_19185 + m ()Z shouldIncreaseLevel gQ method_19188 + m ()V increaseMerchantCareer gR method_16918 + m ()I countFoodPointsInInventory gS method_19189 + c @return calculated food value from item stacks in this villager's inventory + m ()V maybeDecayGossip gT method_20696 + m ()V resetNumberOfRestocks gU method_20821 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gt method_26955 + m ()Z assignProfessionWhenSpawned gu method_29279 + m ()V restock gx method_19182 + m ()Z shouldRestock gy method_20822 + m ()V playWorkSound gz method_19183 + m (Lnet/minecraft/world/entity/player/Player;)V updateSpecialPrices h method_19192 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)Z method_51304 o method_51304 + m (I)V setVillagerXp u method_19625 + p 1 villagerXp + m (I)V digestFood v method_19193 + p 1 qty + m (Z)V setChasing y method_35201 + p 1 chasing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/npc/VillagerType;)V + p 1 entityType + p 2 level + p 3 villagerType + m ()V +c net/minecraft/world/entity/npc/VillagerData cml net/minecraft/class_3850 + f I MIN_VILLAGER_LEVEL a field_30613 + f I MAX_VILLAGER_LEVEL b field_30614 + f Lcom/mojang/serialization/Codec; CODEC c field_24669 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48345 + f [I NEXT_LEVEL_XP_THRESHOLDS e field_18540 + f Lnet/minecraft/world/entity/npc/VillagerType; type f field_17048 + f Lnet/minecraft/world/entity/npc/VillagerProfession; profession g field_17049 + f I level h field_17050 + m ()Lnet/minecraft/world/entity/npc/VillagerType; getType a method_16919 + m (I)Lnet/minecraft/world/entity/npc/VillagerData; setLevel a method_16920 + p 1 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Ljava/lang/Integer; method_56089 a method_56089 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;)Lnet/minecraft/world/entity/npc/VillagerData; setProfession a method_16921 + p 1 profession + m (Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerData; setType a method_16922 + p 1 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28372 a method_28372 + m ()Lnet/minecraft/world/entity/npc/VillagerProfession; getProfession b method_16924 + m (I)I getMinXpPerLevel b method_19194 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerProfession; method_56090 b method_56090 + m ()I getLevel c method_16925 + m (I)I getMaxXpPerLevel c method_19195 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerType; method_56091 c method_56091 + m ()Lnet/minecraft/world/entity/npc/VillagerProfession; method_29948 d method_29948 + m (I)Z canLevelUp d method_19196 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Ljava/lang/Integer; method_28371 d method_28371 + m ()Lnet/minecraft/world/entity/npc/VillagerType; method_29949 e method_29949 + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerProfession; method_28373 e method_28373 + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerType; method_28374 f method_28374 + m (Lnet/minecraft/world/entity/npc/VillagerType;Lnet/minecraft/world/entity/npc/VillagerProfession;I)V + p 1 type + p 2 profession + p 3 level + m ()V +c net/minecraft/world/entity/npc/VillagerDataHolder cmm net/minecraft/class_3851 + m ()Lnet/minecraft/world/entity/npc/VillagerType; getVariant a method_47882 + m (Lnet/minecraft/world/entity/npc/VillagerData;)V setVillagerData a method_7195 + p 1 data + m (Lnet/minecraft/world/entity/npc/VillagerType;)V setVariant a method_47883 + p 1 variant + m ()Lnet/minecraft/world/entity/npc/VillagerData; getVillagerData gv method_7231 +c net/minecraft/world/entity/npc/VillagerProfession cmn net/minecraft/class_3852 + c @param requestedItems Defines items villagers of this profession can pick up and use.\n@param secondaryPoi World blocks this profession interacts with. + f Ljava/util/function/Predicate; ALL_ACQUIRABLE_JOBS a field_39308 + f Lnet/minecraft/world/entity/npc/VillagerProfession; NONE b field_17051 + f Lnet/minecraft/world/entity/npc/VillagerProfession; ARMORER c field_17052 + f Lnet/minecraft/world/entity/npc/VillagerProfession; BUTCHER d field_17053 + f Lnet/minecraft/world/entity/npc/VillagerProfession; CARTOGRAPHER e field_17054 + f Lnet/minecraft/world/entity/npc/VillagerProfession; CLERIC f field_17055 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FARMER g field_17056 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FISHERMAN h field_17057 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FLETCHER i field_17058 + f Lnet/minecraft/world/entity/npc/VillagerProfession; LEATHERWORKER j field_17059 + f Lnet/minecraft/world/entity/npc/VillagerProfession; LIBRARIAN k field_17060 + f Lnet/minecraft/world/entity/npc/VillagerProfession; MASON l field_17061 + f Lnet/minecraft/world/entity/npc/VillagerProfession; NITWIT m field_17062 + f Lnet/minecraft/world/entity/npc/VillagerProfession; SHEPHERD n field_17063 + f Lnet/minecraft/world/entity/npc/VillagerProfession; TOOLSMITH o field_17064 + f Lnet/minecraft/world/entity/npc/VillagerProfession; WEAPONSMITH p field_17065 + f Ljava/lang/String; name q comp_818 + f Ljava/util/function/Predicate; heldJobSite r comp_819 + f Ljava/util/function/Predicate; acquirableJobSite s comp_820 + f Lcom/google/common/collect/ImmutableSet; requestedItems t comp_821 + c Defines items villagers of this profession can pick up and use. + f Lcom/google/common/collect/ImmutableSet; secondaryPoi u comp_822 + c World blocks this profession interacts with. + f Lnet/minecraft/sounds/SoundEvent; workSound v comp_823 + m ()Ljava/lang/String; name a comp_818 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44321 a method_44321 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_16926 + p 0 name + p 1 jobSite + p 2 workSound + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_19197 + p 0 name + p 1 jobSite + p 2 requestedItems + p 3 secondaryPoi + p 4 workSound + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_44007 + p 0 name + p 1 heldJobSite + p 2 acquirableJobSites + p 3 workSound + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_44008 + p 0 name + p 1 heldJobSite + p 2 acquirableJobSites + p 3 requestedItems + p 4 secondaryPoi + p 5 workSound + m (Lnet/minecraft/core/Holder;)Z method_44006 a method_44006 + m ()Ljava/util/function/Predicate; heldJobSite b comp_819 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44005 b method_44005 + m ()Ljava/util/function/Predicate; acquirableJobSite c comp_820 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44322 c method_44322 + m ()Lcom/google/common/collect/ImmutableSet; requestedItems d comp_821 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44009 d method_44009 + m ()Lcom/google/common/collect/ImmutableSet; secondaryPoi e comp_822 + m ()Lnet/minecraft/sounds/SoundEvent; workSound f comp_823 + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)V + p 1 name + p 2 heldJobSite + p 3 acquirableJobSite + p 4 requestedItems + c Defines items villagers of this profession can pick up and use. + p 5 secondaryPoi + c World blocks this profession interacts with. + p 6 workSound + m ()V +c net/minecraft/world/entity/npc/VillagerTrades cmo net/minecraft/class_3853 + f Ljava/util/Map; TRADES a field_17067 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; WANDERING_TRADER_TRADES b field_17724 + f Ljava/util/Map; EXPERIMENTAL_TRADES c field_45128 + f Ljava/util/List; EXPERIMENTAL_WANDERING_TRADER_TRADES d field_45129 + f I DEFAULT_SUPPLY e field_30615 + f I COMMON_ITEMS_SUPPLY f field_30616 + f I UNCOMMON_ITEMS_SUPPLY g field_30617 + f I XP_LEVEL_1_SELL h field_30618 + f I XP_LEVEL_1_BUY i field_30619 + f I XP_LEVEL_2_SELL j field_30620 + f I XP_LEVEL_2_BUY k field_30621 + f I XP_LEVEL_3_SELL l field_30622 + f I XP_LEVEL_3_BUY m field_30623 + f I XP_LEVEL_4_SELL n field_30624 + f I XP_LEVEL_4_BUY o field_30625 + f I XP_LEVEL_5_TRADE p field_30626 + f F LOW_TIER_PRICE_MULTIPLIER q field_30627 + f F HIGH_TIER_PRICE_MULTIPLIER r field_30628 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; DESERT_MAP s field_46167 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SAVANNA_MAP t field_46168 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; PLAINS_MAP u field_46169 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; TAIGA_MAP v field_46170 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SNOWY_MAP w field_46171 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; JUNGLE_MAP x field_46172 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SWAMP_MAP y field_46173 + m ()Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; specialBooks a method_52551 + m (I)Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; commonBooks a method_52552 + p 0 villagerXp + m (Lcom/google/common/collect/ImmutableMap;)Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; toIntMap a method_16928 + p 0 map + m (Ljava/util/HashMap;)V method_16929 a method_16929 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/trading/ItemCost; potionCost a method_57311 + p 0 potion + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPredicate$Builder;)Lnet/minecraft/core/component/DataComponentPredicate$Builder; method_57312 a method_57312 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; potion b method_52553 + p 0 potion + m ()V + m ()V +c net/minecraft/world/entity/npc/VillagerTrades$DyedArmorForEmeralds cmo$a net/minecraft/class_3853$class_4160 + f Lnet/minecraft/world/item/Item; item a field_18544 + f I value b field_18545 + f I maxUses c field_18546 + f I villagerXp d field_18547 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/DyeItem; getRandomDye a method_19200 + p 0 random + m (Lnet/minecraft/world/item/Item;I)V + p 1 item + p 2 value + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 value + p 3 maxUses + p 4 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$EmeraldForItems cmo$b net/minecraft/class_3853$class_4161 + f Lnet/minecraft/world/item/trading/ItemCost; itemStack a field_45130 + f I maxUses b field_18550 + f I villagerXp c field_18551 + f I emeraldAmount d field_18549 + f F priceMultiplier e field_18552 + m (Lnet/minecraft/world/level/ItemLike;III)V + p 1 item + p 2 cost + p 3 maxUses + p 4 villagerXp + m (Lnet/minecraft/world/level/ItemLike;IIII)V + p 1 item + p 2 cost + p 3 maxUses + p 4 villagerXp + p 5 emeraldAmount + m (Lnet/minecraft/world/item/trading/ItemCost;III)V + p 1 itemStack + p 2 maxUses + p 3 villagerXp + p 4 emeraldAmount +c net/minecraft/world/entity/npc/VillagerTrades$EmeraldsForVillagerTypeItem cmo$c net/minecraft/class_3853$class_4162 + f Ljava/util/Map; trades a field_18553 + f I cost b field_18554 + f I maxUses c field_18555 + f I villagerXp d field_18556 + m (Lnet/minecraft/world/entity/npc/VillagerType;)V method_19201 a method_19201 + m (Ljava/util/Map;Lnet/minecraft/world/entity/npc/VillagerType;)Z method_19202 a method_19202 + m (IIILjava/util/Map;)V + p 1 cost + p 2 maxUses + p 3 villagerXp + p 4 trades +c net/minecraft/world/entity/npc/VillagerTrades$EnchantBookForEmeralds cmo$d net/minecraft/class_3853$class_1648 + f I villagerXp a field_18557 + f Lnet/minecraft/tags/TagKey; tradeableEnchantments b field_45131 + f I minLevel c field_45132 + f I maxLevel d field_45133 + m (ILnet/minecraft/tags/TagKey;)V + p 1 villagerXp + p 2 tradeableEnchantments + m (IIILnet/minecraft/tags/TagKey;)V + p 1 villagerXp + p 2 minLevel + p 3 maxLevel + p 4 tradeableEnchantments +c net/minecraft/world/entity/npc/VillagerTrades$EnchantedItemForEmeralds cmo$e net/minecraft/class_3853$class_4163 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_18558 + f I baseEmeraldCost b field_18559 + f I maxUses c field_18560 + f I villagerXp d field_18561 + f F priceMultiplier e field_18562 + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 baseEmeraldCost + p 3 maxUses + p 4 villagerXp + m (Lnet/minecraft/world/item/Item;IIIF)V + p 1 item + p 2 baseEmeraldCost + p 3 maxUses + p 4 villagerXp + p 5 priceMultiplier +c net/minecraft/world/entity/npc/VillagerTrades$FailureItemListing cmo$f net/minecraft/class_3853$class_8793 + m ()V +c net/minecraft/world/entity/npc/VillagerTrades$ItemListing cmo$g net/minecraft/class_3853$class_1652 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/trading/MerchantOffer; getOffer a method_7246 + p 1 trader + p 2 random +c net/minecraft/world/entity/npc/VillagerTrades$ItemsAndEmeraldsToItems cmo$h net/minecraft/class_3853$class_4164 + f Lnet/minecraft/world/item/trading/ItemCost; fromItem a field_18563 + f I emeraldCost b field_18565 + f Lnet/minecraft/world/item/ItemStack; toItem c field_18566 + f I maxUses d field_18568 + f I villagerXp e field_18569 + f F priceMultiplier f field_18570 + f Ljava/util/Optional; enchantmentProvider g field_51618 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;Lnet/minecraft/resources/ResourceKey;)V method_59950 a method_59950 + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/item/Item;IIIF)V + p 1 fromItem + p 2 fromItemCount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/item/ItemStack;IIIF)V + p 1 fromItem + p 2 fromItemCount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/level/ItemLike;IIIFLnet/minecraft/resources/ResourceKey;)V + p 1 fromItem + p 2 fromItemAmount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + p 9 enchantmentProvider + m (Lnet/minecraft/world/item/trading/ItemCost;ILnet/minecraft/world/item/ItemStack;IIFLjava/util/Optional;)V + p 1 fromItem + p 2 emeraldCost + p 3 toItem + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider +c net/minecraft/world/entity/npc/VillagerTrades$ItemsForEmeralds cmo$i net/minecraft/class_3853$class_4165 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_18571 + f I emeraldCost b field_18572 + f I maxUses c field_18574 + f I villagerXp d field_18575 + f F priceMultiplier e field_18576 + f Ljava/util/Optional; enchantmentProvider f field_51619 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;Lnet/minecraft/resources/ResourceKey;)V method_59951 a method_59951 + m (Lnet/minecraft/world/level/block/Block;IIII)V + p 1 block + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 villagerXp + m (Lnet/minecraft/world/item/Item;IIII)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/ItemStack;IIII)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/Item;IIIIF)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/Item;IIIIFLnet/minecraft/resources/ResourceKey;)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider + m (Lnet/minecraft/world/item/ItemStack;IIIIF)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/ItemStack;IIIIFLjava/util/Optional;)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider +c net/minecraft/world/entity/npc/VillagerTrades$SuspiciousStewForEmerald cmo$j net/minecraft/class_3853$class_4166 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; effects a field_45756 + f I xp b field_18579 + f F priceMultiplier c field_18580 + m (Lnet/minecraft/core/Holder;II)V + p 1 effect + p 2 duration + p 3 xp + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;IF)V + p 1 effects + p 2 xp + p 3 priceMultiplier +c net/minecraft/world/entity/npc/VillagerTrades$TippedArrowForItemsAndEmeralds cmo$k net/minecraft/class_3853$class_4167 + f Lnet/minecraft/world/item/ItemStack; toItem a field_18581 + c An ItemStack that can have potion effects written to it. + f I toCount b field_18582 + f I emeraldCost c field_18583 + f I maxUses d field_18584 + f I villagerXp e field_18585 + f Lnet/minecraft/world/item/Item; fromItem f field_18586 + f I fromCount g field_18587 + f F priceMultiplier h field_18588 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder$Reference;)Z method_19203 a method_19203 + m (Lnet/minecraft/world/item/Item;ILnet/minecraft/world/item/Item;IIII)V + p 1 fromItem + p 2 fromCount + p 3 toItem + p 4 toCount + p 5 emeraldCost + p 6 maxUses + p 7 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds cmo$l net/minecraft/class_3853$class_1654 + f I emeraldCost a field_18589 + f Lnet/minecraft/tags/TagKey; destination b field_7474 + f Ljava/lang/String; displayName c field_37051 + f Lnet/minecraft/core/Holder; destinationType d field_7473 + f I maxUses e field_18590 + f I villagerXp f field_18591 + m (ILnet/minecraft/tags/TagKey;Ljava/lang/String;Lnet/minecraft/core/Holder;II)V + p 1 emeraldCost + p 2 destination + p 3 displayName + p 4 destinationType + p 5 maxUses + p 6 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$TypeSpecificTrade cmo$m net/minecraft/class_3853$class_8640 + f Ljava/util/Map; trades a comp_1962 + m ()Ljava/util/Map; trades a comp_1962 + m (Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; method_53833 a method_53833 + m (Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;[Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerTrades$TypeSpecificTrade; oneTradeInBiomes a method_53834 + p 0 listing + p 1 types + m (Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerType; method_53835 a method_53835 + m (Ljava/util/Map;)V + p 1 trades +c net/minecraft/world/entity/npc/VillagerType cmp net/minecraft/class_3854 + f Lnet/minecraft/world/entity/npc/VillagerType; DESERT a field_17071 + f Lnet/minecraft/world/entity/npc/VillagerType; JUNGLE b field_17072 + f Lnet/minecraft/world/entity/npc/VillagerType; PLAINS c field_17073 + f Lnet/minecraft/world/entity/npc/VillagerType; SAVANNA d field_17074 + f Lnet/minecraft/world/entity/npc/VillagerType; SNOW e field_17075 + f Lnet/minecraft/world/entity/npc/VillagerType; SWAMP f field_17076 + f Lnet/minecraft/world/entity/npc/VillagerType; TAIGA g field_17077 + f Ljava/lang/String; name h field_26690 + f Ljava/util/Map; BY_BIOME i field_17078 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/npc/VillagerType; register a method_16931 + p 0 key + m (Ljava/util/HashMap;)V method_16932 a method_16932 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/npc/VillagerType; byBiome a method_16930 + p 0 biome + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/entity/npc/WanderingTrader cmq net/minecraft/class_3989 + f I NUMBER_OF_TRADE_OFFERS ce field_30629 + f Lnet/minecraft/core/BlockPos; wanderTarget cf field_17758 + f I despawnDelay cg field_17725 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18061 a method_18061 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18066 b method_18066 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18063 c method_18063 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18064 d method_18064 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Z method_18067 e method_18067 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Z method_18068 f method_18068 + m ()I getDespawnDelay gt method_18014 + m ()V experimentalUpdateTrades gu method_52557 + m ()V maybeDespawn gv method_20508 + m ()Lnet/minecraft/core/BlockPos; getWanderTarget gx method_18065 + m (Lnet/minecraft/core/BlockPos;)V setWanderTarget h method_18069 + p 1 wanderTarget + m (Lnet/minecraft/core/BlockPos;)V method_57006 i method_57006 + m (I)V setDespawnDelay u method_18013 + p 1 despawnDelay + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/npc/WanderingTrader$WanderToPositionGoal cmq$a net/minecraft/class_3989$class_3994 + f Lnet/minecraft/world/entity/npc/WanderingTrader; trader a field_17759 + f D stopDistance b field_17760 + f D speedModifier c field_17761 + f Lnet/minecraft/world/entity/npc/WanderingTrader; field_17762 d field_17762 + m (Lnet/minecraft/core/BlockPos;D)Z isTooFarAway a method_18070 + p 1 pos + p 2 distance + m (Lnet/minecraft/world/entity/npc/WanderingTrader;Lnet/minecraft/world/entity/npc/WanderingTrader;DD)V + p 2 trader + p 3 stopDistance + p 5 speedModifier +c net/minecraft/world/entity/npc/WanderingTraderSpawner cmr net/minecraft/class_3990 + f I DEFAULT_SPAWN_DELAY a field_30630 + f I DEFAULT_TICK_DELAY b field_30631 + f I MIN_SPAWN_CHANCE c field_30632 + f I MAX_SPAWN_CHANCE d field_30633 + f I SPAWN_CHANCE_INCREASE e field_30634 + f I SPAWN_ONE_IN_X_CHANCE f field_30635 + f I NUMBER_OF_SPAWN_ATTEMPTS g field_30636 + f Lnet/minecraft/util/RandomSource; random h field_17726 + f Lnet/minecraft/world/level/storage/ServerLevelData; serverLevelData i field_24387 + f I tickDelay j field_17728 + f I spawnDelay k field_17729 + f I spawnChance l field_17730 + m (Lnet/minecraft/server/level/ServerLevel;)Z spawn a method_18018 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/WanderingTrader;I)V tryToSpawnLlamaFor a method_18016 + p 1 serverLevel + p 2 trader + p 3 maxDistance + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasEnoughSpace a method_23279 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; findSpawnPositionNear a method_18017 + p 1 level + p 2 pos + p 3 maxDistance + m (Lnet/minecraft/core/BlockPos;)Z method_19631 a method_19631 + m (Lnet/minecraft/core/Holder;)Z method_44010 a method_44010 + m (Lnet/minecraft/world/level/storage/ServerLevelData;)V + p 1 serverLevelData +c net/minecraft/world/entity/npc/package-info cms net/minecraft/class_6068 +c net/minecraft/world/entity/package-info cmt net/minecraft/class_6069 +c net/minecraft/world/entity/player/Abilities cmu net/minecraft/class_1656 + f Z invulnerable a field_7480 + f Z flying b field_7479 + f Z mayfly c field_7478 + f Z instabuild d field_7477 + f Z mayBuild e field_7476 + f F flyingSpeed f field_7481 + f F walkingSpeed g field_7482 + m ()F getFlyingSpeed a method_7252 + m (F)V setFlyingSpeed a method_7248 + p 1 flyingSpeed + m (Lnet/minecraft/nbt/CompoundTag;)V addSaveData a method_7251 + p 1 compound + m ()F getWalkingSpeed b method_7253 + m (F)V setWalkingSpeed b method_7250 + p 1 walkingSpeed + m (Lnet/minecraft/nbt/CompoundTag;)V loadSaveData b method_7249 + p 1 compound + m ()V +c net/minecraft/world/entity/player/ChatVisiblity cmv net/minecraft/class_1659 + f Lnet/minecraft/world/entity/player/ChatVisiblity; FULL a field_7538 + f Lnet/minecraft/world/entity/player/ChatVisiblity; SYSTEM b field_7539 + f Lnet/minecraft/world/entity/player/ChatVisiblity; HIDDEN c field_7536 + f Ljava/util/function/IntFunction; BY_ID d field_7534 + f I id e field_7535 + f Ljava/lang/String; key f field_7540 + f [Lnet/minecraft/world/entity/player/ChatVisiblity; $VALUES g field_7537 + m (I)Lnet/minecraft/world/entity/player/ChatVisiblity; byId a method_7360 + p 0 id + m ()[Lnet/minecraft/world/entity/player/ChatVisiblity; $values c method_36660 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/world/entity/player/Inventory cmw net/minecraft/class_1661 + f I POP_TIME_DURATION b field_30637 + f I INVENTORY_SIZE c field_30638 + f I SLOT_OFFHAND d field_30639 + f I NOT_FOUND_INDEX e field_30640 + f [I ALL_ARMOR_SLOTS f field_33767 + f [I HELMET_SLOT_ONLY g field_33768 + f Lnet/minecraft/core/NonNullList; items h field_7547 + f Lnet/minecraft/core/NonNullList; armor i field_7548 + f Lnet/minecraft/core/NonNullList; offhand j field_7544 + f I selected k field_7545 + f Lnet/minecraft/world/entity/player/Player; player l field_7546 + f I SELECTION_SIZE m field_30641 + f Ljava/util/List; compartments n field_7543 + f I timesChanged o field_7542 + m (D)V swapPaint a method_7373 + c Change the selected item in the hotbar after a mouse scroll. Select the slot to the left if {@code direction} is positive, or to the right if negative. + p 1 direction + m (Lnet/minecraft/tags/TagKey;)Z contains a method_7382 + p 1 tag + m (Lnet/minecraft/world/entity/player/Inventory;)V replaceWith a method_7377 + c Copy the ItemStack contents from another InventoryPlayer instance + p 1 playerInventory + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillStackedContents a method_7387 + p 1 stackedContent + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasRemainingSpaceForItem a method_7393 + p 1 destination + p 2 origin + m (Lnet/minecraft/world/item/ItemStack;Z)V placeItemBackInInventory a method_32338 + p 1 stack + p 2 sendPacket + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_7370 + p 1 state + m (Ljava/util/function/Predicate;ILnet/minecraft/world/Container;)I clearOrCountMatchingItems a method_29280 + p 1 stackPredicate + p 2 maxCount + p 3 inventory + m (Lnet/minecraft/nbt/ListTag;)Lnet/minecraft/nbt/ListTag; save a method_7384 + c Writes the inventory out as a list of compound tags. This is where the slot indices are used (+100 for armor, +80 for crafting). + p 1 listTag + m (Z)Lnet/minecraft/world/item/ItemStack; removeFromSelected a method_37417 + p 1 removeStack + c Whether to remove the entire stack of items. If {@code false}, removes a single item. + m (Lnet/minecraft/world/item/ItemStack;)V setPickedItem b method_7374 + p 1 stack + m (Ljava/util/function/Predicate;)Z contains b method_55753 + p 1 predicate + m (Lnet/minecraft/nbt/ListTag;)V load b method_7397 + c Reads from the given tag list and fills the slots in the inventory with the correct items. + p 1 listTag + m (I)V pickSlot c method_7365 + p 1 index + m (ILnet/minecraft/world/item/ItemStack;)Z add c method_7367 + c Adds the stack to the specified slot in the player's inventory. Returns {@code false} if it's not possible to place the entire stack in the inventory. + p 1 slot + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)I findSlotMatchingItem c method_7395 + c Finds the stack or an equivalent one in the main inventory + p 1 stack + m (I)Z isHotbarSlot d method_7380 + p 0 index + m (ILnet/minecraft/world/item/ItemStack;)I addResource d method_7385 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)I findSlotMatchingUnusedItem d method_7371 + p 1 stack + m (I)Lnet/minecraft/world/item/ItemStack; getArmor e method_7372 + c @return a player armor item (as an {@code ItemStack}) contained in specified armor slot + p 1 slot + m (Lnet/minecraft/world/item/ItemStack;)I getSlotWithRemainingSpace e method_7390 + c Stores a stack in the player's inventory. It first tries to place it in the selected slot in the player's hotbar, then the offhand slot, then any available/empty slot in the player's inventory. + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getSelected f method_7391 + c Returns the item stack currently held by the player. + m (Lnet/minecraft/world/item/ItemStack;)Z add f method_7394 + c Adds the stack to the first empty slot in the player's inventory. Returns {@code false} if it's not possible to place the entire stack in the inventory. + p 1 stack + m ()I getSelectionSize g method_7368 + c Get the size of the player hotbar inventory + m (Lnet/minecraft/world/item/ItemStack;)V placeItemBackInInventory g method_7398 + p 1 stack + m ()I getFreeSlot h method_7376 + c Returns the first item stack that is empty. + m (Lnet/minecraft/world/item/ItemStack;)V removeItem h method_7378 + p 1 stack + m ()I getSuitableHotbarSlot i method_7386 + m (Lnet/minecraft/world/item/ItemStack;)Z contains i method_7379 + c Returns {@code true} if the specified {@link net.minecraft.world.item.ItemStack} exists in the inventory. + p 1 stack + m ()V tick j method_7381 + c Ticks every item in inventory. Used for animations. Is called on client and server. + m (Lnet/minecraft/world/item/ItemStack;)I addResource j method_7366 + c This function stores as many items of an ItemStack as possible in a matching slot and returns the quantity of left over items. + p 1 stack + m ()V dropAll k method_7388 + c Drop all armor and main inventory items. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_7389 k method_7389 + m ()I getTimesChanged l method_7364 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player + m ()V +c net/minecraft/world/entity/player/Player cmx net/minecraft/class_1657 + f Lnet/minecraft/world/entity/HumanoidArm; DEFAULT_MAIN_HAND bH field_46174 + f I DEFAULT_MODEL_CUSTOMIZATION bI field_46175 + f I MAX_HEALTH bJ field_30644 + f I SLEEP_DURATION bK field_30645 + f I WAKE_UP_DURATION bL field_30646 + f Lorg/slf4j/Logger; LOGGER b field_38197 + f I ENDER_SLOT_OFFSET bM field_30647 + f I HELD_ITEM_SLOT bN field_49734 + f I CRAFTING_SLOT_OFFSET bO field_49735 + f F DEFAULT_BLOCK_INTERACTION_RANGE bP field_47819 + f F DEFAULT_ENTITY_INTERACTION_RANGE bQ field_47820 + f F CROUCH_BB_HEIGHT bR field_30648 + f F SWIMMING_BB_WIDTH bS field_30649 + f F SWIMMING_BB_HEIGHT bT field_30650 + f F DEFAULT_EYE_HEIGHT bU field_30651 + f Lnet/minecraft/world/phys/Vec3; DEFAULT_VEHICLE_ATTACHMENT bV field_47821 + f Lnet/minecraft/world/entity/EntityDimensions; STANDING_DIMENSIONS bW field_18135 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_MODE_CUSTOMISATION bX field_7518 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_MAIN_HAND bY field_7488 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOULDER_LEFT bZ field_7496 + f Lnet/minecraft/world/entity/player/Abilities; abilities cA field_7503 + f I lastLevelUpTime cB field_7508 + f Lcom/mojang/authlib/GameProfile; gameProfile cD field_7507 + c The player's unique game profile + f Z reducedDebugInfo cE field_7523 + f Lnet/minecraft/world/item/ItemStack; lastItemInMainHand cF field_7525 + f Lnet/minecraft/world/item/ItemCooldowns; cooldowns cG field_7484 + f Ljava/util/Optional; lastDeathLocation cH field_39445 + f I CURRENT_IMPULSE_CONTEXT_RESET_GRACE_TIME_TICKS c field_52222 + f Z ignoreFallDamageFromCurrentImpulse cI field_49991 + f I currentImpulseContextResetGraceTime cJ field_52223 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOULDER_RIGHT ca field_7506 + f Lnet/minecraft/world/inventory/PlayerEnderChestContainer; enderChestInventory cb field_7486 + f Lnet/minecraft/world/inventory/InventoryMenu; inventoryMenu cc field_7498 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; containerMenu cd field_7512 + f Lnet/minecraft/world/food/FoodData; foodData ce field_7493 + f I jumpTriggerTime cf field_7489 + f F oBob cg field_7505 + f F bob ch field_7483 + f I takeXpDelay ci field_7504 + f D xCloakO cj field_7524 + f D yCloakO ck field_7502 + f D zCloakO cl field_7522 + f D xCloak cm field_7500 + f D yCloak cn field_7521 + f D zCloak co field_7499 + f Z wasUnderwater cp field_7490 + f I experienceLevel cq field_7520 + f I totalExperience cr field_7495 + f F experienceProgress cs field_7510 + f I enchantmentSeed ct field_7494 + f F defaultFlySpeed cu field_7509 + f Lnet/minecraft/world/entity/projectile/FishingHook; fishing cv field_7513 + f F hurtDir cw field_41765 + f Lnet/minecraft/world/phys/Vec3; currentImpulseImpactPos cx field_49989 + f Lnet/minecraft/world/entity/Entity; currentExplosionCause cy field_49990 + f I sleepCounter cz field_7487 + f Ljava/util/Map; POSES d field_18134 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_ABSORPTION_ID e field_7491 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SCORE_ID f field_7511 + f J timeEntitySatOnShoulder g field_19428 + f Lnet/minecraft/world/entity/player/Inventory; inventory h field_7514 + m (F)V causeFoodExhaustion E method_7322 + c Increases exhaustion level by the supplied amount. + p 1 exhaustion + m (F)F getAttackStrengthScale F method_7261 + c Returns the percentage of attack power available based on the cooldown (zero to one). + p 1 adjustTicks + m (F)Z isAboveGround G method_30263 + p 1 maxUpStep + m (Lnet/minecraft/world/entity/Entity;)V method_17853 G method_17853 + m ()Z isTextFilteringEnabled Z method_33793 + m (IFLnet/minecraft/world/item/ItemStack;)V startAutoSpinAttack a method_40126 + c Starts the attack used by the Riptide enchantment. + p 1 ticks + p 2 damage + p 3 itemStack + m (ILnet/minecraft/world/item/trading/MerchantOffers;IIZZ)V sendMerchantOffers a method_17354 + p 1 containerId + p 2 offers + p 3 villagerLevel + p 4 villagerXp + p 5 showProgress + p 6 canRestock + m (Lnet/minecraft/resources/ResourceLocation;)V awardStat a method_7281 + p 1 statKey + m (Lnet/minecraft/resources/ResourceLocation;I)V awardStat a method_7339 + p 1 stat + p 2 increment + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playNotifySound a method_17356 + p 1 sound + p 2 source + p 3 volume + p 4 pitch + m (Lnet/minecraft/stats/Stat;)V resetStat a method_7266 + p 1 stat + m (Lnet/minecraft/stats/Stat;I)V awardStat a method_7342 + c Adds a value to a statistic field. + p 1 stat + p 2 increment + m (Lnet/minecraft/world/MenuProvider;)Ljava/util/OptionalInt; openMenu a method_17355 + p 1 menu + m (Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)F getEnchantedDamage a method_59903 + p 1 entity + p 2 damage + p 3 damageSource + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactOn a method_7287 + p 1 entityToInteractOn + p 2 hand + m (Lnet/minecraft/world/entity/HumanoidArm;)V setMainArm a method_7283 + p 1 hand + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lnet/minecraft/world/Container;)V openHorseInventory a method_7291 + p 1 horse + p 2 inventory + m (Lnet/minecraft/world/entity/player/Player;)Z canHarmPlayer a method_7256 + p 1 other + m (Lnet/minecraft/world/entity/player/PlayerModelPart;)Z isModelPartShown a method_7348 + p 1 part + m (Lnet/minecraft/world/item/ItemStack;I)V onEnchantmentPerformed a method_7286 + p 1 enchantedItem + p 2 levelCost + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)V openItemGui a method_7315 + p 1 stack + p 2 hand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V updateTutorialInventoryAction a method_33592 + p 1 carried + p 2 clicked + p 3 action + m (Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/entity/item/ItemEntity; drop a method_7328 + c Drops an item into the world. + p 1 itemStack + p 2 includeThrowerName + m (Lnet/minecraft/world/item/ItemStack;ZZ)Lnet/minecraft/world/entity/item/ItemEntity; drop a method_7329 + c Creates and drops the provided item. Depending on the dropAround, it will drop the item around the player, instead of dropping the item from where the player is pointing at. Likewise, if includeThrowerName is true, the dropped item entity will have the thrower set as the player. + p 1 droppedItem + p 2 dropAround + p 3 includeThrowerName + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/List;)V triggerRecipeCrafted a method_51283 + p 1 recipe + p 2 items + m (Lnet/minecraft/world/level/BaseCommandBlock;)V openMinecartCommandBlock a method_7257 + p 1 commandEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/GameType;)Z blockActionRestricted a method_21701 + p 1 level + p 2 pos + p 3 gameMode + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V openCommandBlock a method_7323 + p 1 commandBlockEntity + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity;)V openJigsawBlock a method_16354 + p 1 jigsawBlockEntity + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)V openTextEdit a method_7311 + p 1 signEntity + p 2 isFrontText + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V openStructureBlock a method_7303 + p 1 structureEntity + m (Lnet/minecraft/world/phys/AABB;D)Z canInteractWithEntity a method_56092 + p 1 boundingBox + p 2 distance + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_7321 a method_7321 + m (Ljava/util/Collection;)I awardRecipes a method_7254 + p 1 recipes + m (Ljava/util/Optional;)V setLastDeathLocation a method_43120 + p 1 lastDeathLocation + m (Lnet/minecraft/core/BlockPos;)Lcom/mojang/datafixers/util/Either; startSleepInBed a method_7269 + p 1 bedPos + m (Lnet/minecraft/core/BlockPos;D)Z canInteractWithBlock a method_56093 + p 1 pos + p 2 distance + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;)Z mayUseItemAt a method_7343 + c Returns whether this player can modify the block at a certain location with the given stack.\n

\nThe position being queried is {@code pos.offset(facing.getOpposite())}.\n\n@return Whether this player may modify the queried location in the current world\n@see ItemStack#canPlaceOn(Block)\n@see ItemStack#canEditBlocks()\n@see PlayerCapabilities#allowEdit + p 1 pos + p 2 facing + p 3 stack + m (Lnet/minecraft/core/GlobalPos;)Ljava/util/Optional; method_43119 a method_43119 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_43121 a method_43121 + m (Lnet/minecraft/network/chat/Component;Z)V displayClientMessage a method_7353 + p 1 chatComponent + p 2 actionBar + m (Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; decorateDisplayNameComponent a method_7299 + p 1 displayName + m (ZZ)V stopSleepInBed a method_7358 + p 1 wakeImmediately + p 2 updateLevelForSleepingPlayers + m ()Ljava/util/Optional; getWardenSpawnTracker ab method_42272 + m (DDF)Z canFallAtLeast b method_59818 + p 1 x + p 3 z + p 5 distance + m (Lnet/minecraft/stats/Stat;)V awardStat b method_7259 + c Add a stat once + p 1 stat + m (Lnet/minecraft/world/entity/Entity;)V crit b method_7277 + c Called when the entity is dealt a critical hit. + p 1 entityHit + m (Lnet/minecraft/world/entity/Entity;D)Z canInteractWithEntity b method_56094 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/EntityType;)V method_17851 b method_17851 + m (Lnet/minecraft/world/phys/Vec3;)V method_58397 b method_58397 + m (Ljava/util/Collection;)I resetRecipes b method_7333 + p 1 recipes + m (Ljava/util/List;)V awardRecipesByKey b method_7335 + p 1 recipes + m (I)V giveExperienceLevels c method_7316 + c Add experience levels to this player. + p 1 levels + m (Lnet/minecraft/world/entity/Entity;)V magicCrit c method_7304 + c Called when the entity hit is dealt extra melee damage due to an enchantment. + p 1 entityHit + m (Lnet/minecraft/world/entity/EntityType;)Z method_17852 c method_17852 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed c method_7351 + p 1 state + m (Lnet/minecraft/nbt/CompoundTag;)V playShoulderEntityAmbientSound c method_7267 + p 1 entityCompound + m (I)V giveExperiencePoints d method_7255 + p 1 xpPoints + m (Lnet/minecraft/world/entity/Entity;)V touch d method_7341 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasCorrectToolForDrops d method_7305 + p 1 state + m (Lnet/minecraft/world/entity/Entity;)V attack e method_7324 + c Attacks for the player the targeted entity with the currently equipped item. The equipped item has hitEntity called on it. Args: targetEntity + p 1 target + m ()Z isCreative f method_7337 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes fM method_26956 + m ()Z isSecondaryUseActive fN method_21823 + m ()Z wantsToStopRiding fO method_21824 + m ()Z isStayingOnGroundSurface fP method_21825 + m ()Z updateIsUnderwater fQ method_7295 + m ()V updatePlayerPose fR method_7318 + m ()I getScore fS method_7272 + m ()V destroyVanishingCursedItems fT method_7293 + m ()V disableShield fU method_7284 + m ()V sweepAttack fV method_7263 + m ()V respawn fW method_7331 + m ()Lcom/mojang/authlib/GameProfile; getGameProfile fX method_7334 + c Returns the GameProfile for this player + m ()Lnet/minecraft/world/entity/player/Inventory; getInventory fY method_31548 + m ()Lnet/minecraft/world/entity/player/Abilities; getAbilities fZ method_31549 + m ()Z isLocalPlayer g method_7340 + c Returns whether this is a {@link net.minecraft.client.player.LocalPlayer}. + m ()Z isIgnoringFallDamageFromCurrentImpulse gA method_61165 + m ()V tryResetCurrentImpulseContext gB method_60983 + m ()V resetCurrentImpulseContext gC method_58396 + m ()Z hasContainerOpen ga method_45015 + m ()Z isSleepingLongEnough gb method_7276 + c Returns whether the player is asleep and the screen has fully faded. + m ()I getSleepTimer gc method_7297 + m ()Z tryToStartFallFlying gd method_23668 + m ()V startFallFlying ge method_23669 + m ()V stopFallFlying gf method_23670 + m ()I getEnchantmentSeed gg method_7278 + m ()I getXpNeededForNextLevel gh method_7349 + c This method returns the cap amount of experience that the experience bar can hold. With each level, the experience cap on the player's experience bar is raised by 10. + m ()Lnet/minecraft/world/food/FoodData; getFoodData gi method_7344 + c Returns the player's FoodStats object. + m ()Z isHurt gj method_7317 + c Checks if the player's health is not full and not zero. + m ()Z mayBuild gk method_7294 + m ()Lnet/minecraft/world/inventory/PlayerEnderChestContainer; getEnderChestInventory gl method_7274 + c Returns the InventoryEnderChest of this player. + m ()V removeEntitiesOnShoulder gm method_7262 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard gn method_7327 + m ()Z isReducedDebugInfo go method_7302 + c Whether the "reducedDebugInfo" option is active for this player. + m ()Lnet/minecraft/nbt/CompoundTag; getShoulderEntityLeft gp method_7356 + m ()Lnet/minecraft/nbt/CompoundTag; getShoulderEntityRight gq method_7308 + m ()F getCurrentItemAttackStrengthDelay gr method_7279 + m ()V resetAttackStrengthTicker gs method_7350 + m ()Lnet/minecraft/world/item/ItemCooldowns; getCooldowns gt method_7357 + m ()F getLuck gu method_7292 + m ()Z canUseGameMasterBlocks gv method_7338 + m ()Z isScoping gw method_31550 + m ()Ljava/util/Optional; getLastDeathLocation gx method_43122 + m ()D blockInteractionRange gy method_55754 + m ()D entityInteractionRange gz method_55755 + m (Lnet/minecraft/world/entity/Pose;)Z canPlayerFitWithinBlocksAndEntitiesWhen h method_52558 + p 1 pose + m (Lnet/minecraft/core/BlockPos;)Z freeAt h method_7326 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z setEntityOnShoulder h method_7298 + p 1 entityCompound + m (Lnet/minecraft/world/item/ItemStack;)Z addItem i method_7270 + p 1 stack + m (Lnet/minecraft/nbt/CompoundTag;)V setShoulderEntityLeft i method_7273 + p 1 entityCompound + m (Lnet/minecraft/nbt/CompoundTag;)V setShoulderEntityRight j method_7345 + p 1 entityCompound + m ()Lnet/minecraft/world/item/ItemCooldowns; createItemCooldowns k method_7265 + m (Lnet/minecraft/nbt/CompoundTag;)V respawnEntityOnShoulder k method_7296 + p 1 entityCompound + m (I)V setScore r method_7320 + c Set player's score + p 1 score + m ()V closeContainer s method_7346 + c Sets the current crafting inventory back to the 2x2 square. + m (I)V increaseScore s method_7285 + c Add to player's score + p 1 score + m ()V doCloseContainer t method_14247 + m (Z)Z canEat u method_7332 + p 1 canAlwaysEat + m ()V turtleHelmetTick v method_7330 + m (Z)V setReducedDebugInfo v method_7268 + p 1 reducedDebugInfo + m (Z)V setIgnoreFallDamageFromCurrentImpulse w method_60984 + p 1 ignoreFallDamageFromCurrentImpulse + m ()V moveCloak x method_7313 + m ()V onUpdateAbilities z method_7355 + c Sends the player's abilities to the server (if there is one). + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLcom/mojang/authlib/GameProfile;)V + p 1 level + p 2 pos + p 3 yRot + p 4 gameProfile + m ()V +c net/minecraft/world/entity/player/Player$1 cmx$1 net/minecraft/class_1657$1 + f Lnet/minecraft/world/entity/player/Player; field_49736 b field_49736 + m (Lnet/minecraft/world/entity/player/Player;)V +c net/minecraft/world/entity/player/Player$2 cmx$2 net/minecraft/class_1657$2 + f I val$craftSlot b field_49737 + f Lnet/minecraft/world/entity/player/Player; field_49738 c field_49738 + m (Lnet/minecraft/world/entity/player/Player;I)V +c net/minecraft/world/entity/player/Player$BedSleepingProblem cmx$a net/minecraft/class_1657$class_1658 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_POSSIBLE_HERE a field_7528 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_POSSIBLE_NOW b field_7529 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; TOO_FAR_AWAY c field_7530 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; OBSTRUCTED d field_18592 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; OTHER_PROBLEM e field_7531 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_SAFE f field_7532 + f Lnet/minecraft/network/chat/Component; message g field_18593 + f [Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; $VALUES h field_7526 + m ()Lnet/minecraft/network/chat/Component; getMessage a method_19206 + m ()[Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; $values b method_36661 + m (Ljava/lang/String;I)V + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V + p 3 message + m ()V +c net/minecraft/world/entity/player/PlayerModelPart cmy net/minecraft/class_1664 + f Lnet/minecraft/world/entity/player/PlayerModelPart; CAPE a field_7559 + f Lnet/minecraft/world/entity/player/PlayerModelPart; JACKET b field_7564 + f Lnet/minecraft/world/entity/player/PlayerModelPart; LEFT_SLEEVE c field_7568 + f Lnet/minecraft/world/entity/player/PlayerModelPart; RIGHT_SLEEVE d field_7570 + f Lnet/minecraft/world/entity/player/PlayerModelPart; LEFT_PANTS_LEG e field_7566 + f Lnet/minecraft/world/entity/player/PlayerModelPart; RIGHT_PANTS_LEG f field_7565 + f Lnet/minecraft/world/entity/player/PlayerModelPart; HAT g field_7563 + f I bit h field_7561 + f I mask i field_7560 + f Ljava/lang/String; id j field_7569 + f Lnet/minecraft/network/chat/Component; name k field_7567 + f [Lnet/minecraft/world/entity/player/PlayerModelPart; $VALUES l field_7562 + m ()I getMask a method_7430 + m ()I getBit b method_35206 + m ()Ljava/lang/String; getId c method_7429 + m ()Lnet/minecraft/network/chat/Component; getName d method_7428 + m ()[Lnet/minecraft/world/entity/player/PlayerModelPart; $values e method_36662 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 bit + p 4 id + m ()V +c net/minecraft/world/entity/player/ProfileKeyPair cmz net/minecraft/class_7427 + f Lcom/mojang/serialization/Codec; CODEC a field_39049 + f Ljava/security/PrivateKey; privateKey b comp_741 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; publicKey c comp_742 + f Ljava/time/Instant; refreshedAfter d comp_743 + m ()Z dueRefresh a method_43546 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43547 a method_43547 + m ()Ljava/security/PrivateKey; privateKey b comp_741 + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey; publicKey c comp_742 + m ()Ljava/time/Instant; refreshedAfter d comp_743 + m (Ljava/security/PrivateKey;Lnet/minecraft/world/entity/player/ProfilePublicKey;Ljava/time/Instant;)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey cna net/minecraft/class_7428 + f Lnet/minecraft/network/chat/Component; EXPIRED_PROFILE_PUBLIC_KEY a field_39954 + f Ljava/time/Duration; EXPIRY_GRACE_PERIOD b field_39955 + f Lcom/mojang/serialization/Codec; TRUSTED_CODEC c field_39050 + f Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; data d comp_767 + f Lnet/minecraft/network/chat/Component; INVALID_SIGNATURE e field_39956 + m ()Lnet/minecraft/util/SignatureValidator; createSignatureValidator a method_43697 + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)Lnet/minecraft/world/entity/player/ProfilePublicKey; createValidated a method_43550 + p 0 signatureValidator + p 1 profileId + p 2 data + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; data b comp_767 + m (Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey$Data cna$a net/minecraft/class_7428$class_7443 + f Lcom/mojang/serialization/Codec; CODEC a field_39119 + f Ljava/time/Instant; expiresAt b comp_769 + f Ljava/security/PublicKey; key c comp_770 + f [B keySignature d comp_771 + f I MAX_KEY_SIGNATURE_SIZE e field_39309 + m ()Z hasExpired a method_43704 + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/UUID;)Z validateSignature a method_44205 + p 1 signatureValidator + p 2 profileId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43701 a method_43701 + m (Ljava/time/Duration;)Z hasExpired a method_45103 + p 1 gracePeriod + m (Ljava/util/UUID;)[B signedPayload a method_43702 + p 1 profileId + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44011 + p 1 buffer + m ()Ljava/time/Instant; expiresAt b comp_769 + m ()Ljava/security/PublicKey; key c comp_770 + m ()[B keySignature d comp_771 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/time/Instant;Ljava/security/PublicKey;[B)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey$ValidationException cna$b net/minecraft/class_7428$class_7652 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/world/entity/player/StackedContents cnb net/minecraft/class_1662 + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; contents a field_7550 + f I EMPTY b field_30653 + m ()V clear a method_7409 + m (I)Lnet/minecraft/world/item/ItemStack; fromStackingIndex a method_7405 + p 0 stackingIndex + m (II)I take a method_7411 + p 1 stackingIndex + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;)V accountSimpleStack a method_7404 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V accountStack a method_20478 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/item/crafting/Recipe;Lit/unimi/dsi/fastutil/ints/IntList;)Z canCraft a method_7402 + p 1 recipe + p 2 stackingIndexList + m (Lnet/minecraft/world/item/crafting/Recipe;Lit/unimi/dsi/fastutil/ints/IntList;I)Z canCraft a method_7406 + p 1 recipe + p 2 stackingIndexList + p 3 amount + m (Lnet/minecraft/world/item/crafting/RecipeHolder;ILit/unimi/dsi/fastutil/ints/IntList;)I getBiggestCraftableStack a method_7403 + p 1 recipe + p 2 amount + p 3 stackingIndexList + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lit/unimi/dsi/fastutil/ints/IntList;)I getBiggestCraftableStack a method_7407 + p 1 recipe + p 2 stackingIndexList + m (I)Z has b method_7410 + p 1 stackingIndex + m (II)V put b method_7401 + p 1 stackingIndex + p 2 increment + m (Lnet/minecraft/world/item/ItemStack;)V accountStack b method_7400 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getStackingIndex c method_7408 + p 0 stack + m ()V +c net/minecraft/world/entity/player/StackedContents$RecipePicker cnb$a net/minecraft/class_1662$class_1663 + f Lnet/minecraft/world/entity/player/StackedContents; field_7554 a field_7554 + f Lnet/minecraft/world/item/crafting/Recipe; recipe b field_7555 + f Ljava/util/List; ingredients c field_7552 + f I ingredientCount d field_7556 + f [I items e field_7551 + f I itemCount f field_7553 + f Ljava/util/BitSet; data g field_7558 + f Lit/unimi/dsi/fastutil/ints/IntList; path h field_7557 + m ()[I getUniqueAvailableIngredientItems a method_7422 + m (I)Z dfs a method_7423 + p 1 amount + m (ILit/unimi/dsi/fastutil/ints/IntList;)Z tryPick a method_7417 + p 1 amount + p 2 stackingIndexList + m (ZI)V visit a method_7413 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)Z hasConnection a method_7418 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m ()I getMinIngredientCount b method_7415 + m (I)Z isSatisfied b method_7416 + p 1 stackingIndex + m (ILit/unimi/dsi/fastutil/ints/IntList;)I tryPickAll b method_7427 + p 1 amount + p 2 stackingIndexList + m (ZI)Z hasVisited b method_7426 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)Z hasResidual b method_7425 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (I)V setSatisfied c method_7421 + p 1 stackingIndex + m (ZI)I getVisitedIndex c method_7424 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)V toggleResidual c method_7414 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (I)I getSatisfiedIndex d method_7419 + p 1 stackingIndex + m (ZII)I getIndex d method_7420 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (Lnet/minecraft/world/entity/player/StackedContents;Lnet/minecraft/world/item/crafting/Recipe;)V + p 2 recipe +c net/minecraft/world/entity/player/package-info cnc net/minecraft/class_6070 +c net/minecraft/world/entity/projectile/AbstractArrow cnd net/minecraft/class_1665 + f Z inGround b field_7588 + f I inGroundTime c field_7576 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; pickup d field_7572 + f I shakeTime e field_7574 + f D ARROW_BASE_DAMAGE f field_30657 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_FLAGS g field_7573 + f Lnet/minecraft/network/syncher/EntityDataAccessor; PIERCE_LEVEL h field_7589 + f I FLAG_CRIT i field_30654 + f I FLAG_NOPHYSICS j field_30655 + f Lnet/minecraft/world/level/block/state/BlockState; lastState k field_7586 + f I life l field_7578 + f D baseDamage m field_7571 + f Lnet/minecraft/sounds/SoundEvent; soundEvent n field_7584 + f Lit/unimi/dsi/fastutil/ints/IntOpenHashSet; piercingIgnoreEntityIds o field_7590 + f Ljava/util/List; piercedAndKilledEntities p field_7579 + f Lnet/minecraft/world/item/ItemStack; pickupItemStack q field_46970 + f Lnet/minecraft/world/item/ItemStack; firedFromWeapon r field_51620 + m ()Z isCritArrow A method_7443 + c Whether the arrow has a stream of critical hit particles flying behind it. + m ()Z shotFromCrossbow B method_7456 + c Whether the arrow was shot from a crossbow. + m ()B getPierceLevel C method_7447 + m ()F getWaterInertia D method_7436 + m ()Z isNoPhysics E method_7441 + c Whether the arrow can noClip + m ()Z shouldFall F method_26351 + m ()V startFalling J method_26352 + m ()V resetPiercedEntities K method_7453 + m (B)V setPierceLevel a method_7451 + p 1 pierceLevel + m (F)V setBaseDamageFromMob a method_59955 + p 1 velocity + m (IZ)V setFlag a method_7455 + p 1 id + p 2 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/item/ItemStack;)V hitBlockEnchantmentEffects a method_59956 + p 1 level + p 2 hitResult + p 3 stack + m (Lnet/minecraft/world/entity/LivingEntity;)V doPostHurtEffects a method_7450 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)V doKnockback a method_59957 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/player/Player;)Z tryPickup a method_34713 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)V setPickupItemStack a method_57313 + p 1 pickupItemStack + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/EntityHitResult; findHitEntity a method_7434 + c Gets the EntityRayTraceResult representing the entity hit + p 1 startVec + p 2 endVec + m (Z)V setCritArrow a method_7439 + c Whether the arrow has a stream of critical hit particles flying behind it. + p 1 critArrow + m (Lnet/minecraft/sounds/SoundEvent;)V setSoundEvent b method_7444 + p 1 soundEvent + m (Lnet/minecraft/world/item/Item;)V method_59953 b method_59953 + m (Z)V setNoPhysics b method_7433 + c Sets if this arrow can noClip + p 1 noPhysics + m (Lnet/minecraft/world/item/Item;)V method_59954 c method_59954 + m (D)V setBaseDamage h method_7438 + p 1 baseDamage + m ()V tickDespawn p method_7446 + m ()Lnet/minecraft/sounds/SoundEvent; getDefaultHitGroundSoundEvent t method_7440 + c The sound made when an entity is hit by this projectile + m ()Lnet/minecraft/sounds/SoundEvent; getHitGroundSoundEvent v method_20011 + m ()Lnet/minecraft/world/item/ItemStack; getPickupItem w method_7445 + m ()Lnet/minecraft/world/item/ItemStack; getDefaultPickupItem x method_57314 + m ()Lnet/minecraft/world/item/ItemStack; getPickupItemStackOrigin y method_54759 + m ()D getBaseDamage z method_7448 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + p 9 pickupItemStack + p 10 firedFromWeapon + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 entityType + p 2 owner + p 3 level + p 4 pickupItemStack + p 5 firedFromWeapon + m ()V +c net/minecraft/world/entity/projectile/AbstractArrow$Pickup cnd$a net/minecraft/class_1665$class_1666 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; DISALLOWED a field_7592 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; ALLOWED b field_7593 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; CREATIVE_ONLY c field_7594 + f [Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; $VALUES d field_7591 + m ()[Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; $values a method_36663 + m (I)Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; byOrdinal a method_7458 + p 0 ordinal + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/AbstractHurtingProjectile cne net/minecraft/class_1668 + f D INITAL_ACCELERATION_POWER b field_51891 + f D DEFLECTION_SCALE c field_51892 + f D accelerationPower d field_51893 + m (Lnet/minecraft/world/phys/Vec3;D)V assignDirectionalMovement a method_60499 + p 1 movement + p 2 accelerationPower + m ()Lnet/minecraft/world/level/ClipContext$Block; getClipType aj_ method_55053 + m ()Z shouldBurn t method_7468 + m ()Lnet/minecraft/core/particles/ParticleOptions; getTrailParticle v method_7467 + m ()F getInertia w method_7466 + c Return the motion factor for this projectile. The factor is multiplied by the original motion. + m ()F getLiquidInertia x method_55583 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 owner + p 3 movement + p 4 level +c net/minecraft/world/entity/projectile/Arrow cnf net/minecraft/class_1667 + f I EXPOSED_POTION_DECAY_TIME f field_30660 + f I NO_EFFECT_COLOR g field_30658 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_EFFECT_COLOR h field_7595 + f B EVENT_POTION_PUFF i field_30659 + m ()I getColor F method_7460 + m ()Lnet/minecraft/world/item/alchemy/PotionContents; getPotionContents J method_57315 + m ()V updateColor K method_7462 + m (Lnet/minecraft/world/effect/MobEffectInstance;)V addEffect a method_7463 + p 1 effectInstance + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V setPotionContents a method_57316 + p 1 potionContents + m (I)V makeParticle b method_7461 + p 1 particleAmount + m (I)I method_48574 c method_48574 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + p 9 firedFromWeapon + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 owner + p 3 pickupItemStack + p 4 firedFromWeapon + m ()V +c net/minecraft/world/entity/projectile/DragonFireball cng net/minecraft/class_1670 + f F SPLASH_RANGE e field_30661 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement +c net/minecraft/world/entity/projectile/EvokerFangs cnh net/minecraft/class_1669 + f I ATTACK_DURATION b field_30662 + f I LIFE_OFFSET c field_30663 + f I ATTACK_TRIGGER_TICKS d field_30664 + f I warmupDelayTicks e field_7609 + f Z sentSpikeEvent f field_7610 + f I lifeTicks g field_7607 + f Z clientSideAttackStarted h field_7608 + f Lnet/minecraft/world/entity/LivingEntity; owner i field_7605 + f Ljava/util/UUID; ownerUUID j field_7606 + m (F)F getAnimationProgress a method_7472 + p 1 partialTicks + m (Lnet/minecraft/world/entity/LivingEntity;)V setOwner a method_7473 + p 1 owner + m (Lnet/minecraft/world/entity/LivingEntity;)V dealDamageTo c method_7471 + p 1 target + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner p method_7470 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDFILnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 yRot + p 9 warmupDelay + p 10 owner +c net/minecraft/world/entity/projectile/EyeOfEnder cni net/minecraft/class_1672 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK b field_17080 + f D tx c field_7619 + f D ty d field_7618 + f D tz e field_7617 + f I life f field_7620 + f Z surviveAfterDeath g field_7621 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16933 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)V signalTo a method_7478 + p 1 pos + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem s method_56684 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/Fireball cnj net/minecraft/class_3855 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK e field_17081 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16936 + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem y method_56685 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 owner + p 3 movement + p 4 level + m ()V +c net/minecraft/world/entity/projectile/FireworkRocketEntity cnk net/minecraft/class_1671 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FIREWORKS_ITEM b field_7614 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ATTACHED_TO_TARGET c field_7611 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOT_AT_ANGLE d field_7615 + f I life e field_7613 + f I lifetime f field_7612 + f Lnet/minecraft/world/entity/LivingEntity; attachedToEntity g field_7616 + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem A method_57317 + m (I)V method_18072 b method_18072 + m ()Z isShotAtAngle t method_7477 + m ()V explode v method_16830 + m ()Z hasExplosion w method_20308 + m ()V dealExplosionDamage x method_7475 + m ()Z isAttachedToEntity y method_7476 + m ()Ljava/util/List; getExplosions z method_57318 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 shooter + p 3 x + p 5 y + p 7 z + p 9 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 stack + p 3 shooter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;DDDZ)V + p 1 level + p 2 stack + p 3 x + p 5 y + p 7 z + p 9 shotAtAngle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;DDDZ)V + p 1 level + p 2 stack + p 3 shooter + p 4 x + p 6 y + p 8 z + p 10 shotAtAngle + m ()V +c net/minecraft/world/entity/projectile/FishingHook cnl net/minecraft/class_1536 + f Lorg/slf4j/Logger; LOGGER b field_36336 + f Lnet/minecraft/util/RandomSource; syncronizedRandom c field_23231 + f Z biting d field_23232 + f I outOfWaterTime e field_23233 + f I MAX_OUT_OF_WATER_TIME f field_30665 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HOOKED_ENTITY g field_7170 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BITING h field_23234 + f I life i field_7167 + f I nibble j field_7173 + f I timeUntilLured k field_7174 + f I timeUntilHooked l field_7172 + f F fishAngle m field_7169 + f Z openWater n field_23134 + f Lnet/minecraft/world/entity/Entity; hookedIn o field_7165 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; currentState p field_7175 + f I luck q field_7171 + f I lureSpeed r field_7168 + m (Lnet/minecraft/world/entity/Entity;)V setHookedEntity A method_6951 + p 1 hookedEntity + m (Lnet/minecraft/world/entity/player/Player;)Z shouldStopFishing a method_6959 + p 1 player + m (Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType;Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; method_26340 a method_26340 + m (Lnet/minecraft/world/entity/projectile/FishingHook;)V updateOwnerInfo a method_36210 + p 1 fishingHook + m (Lnet/minecraft/world/item/ItemStack;)I retrieve a method_6957 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)V catchingFish a method_6949 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; getOpenWaterTypeForArea a method_26341 + p 1 firstPos + p 2 secondPos + m (Lnet/minecraft/core/BlockPos;)Z calculateOpenWater b method_26086 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; getOpenWaterTypeForBlock c method_26342 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)V pullEntity d method_6954 + p 1 entity + m ()Z isOpenWaterFishing p method_26088 + m ()Lnet/minecraft/world/entity/player/Player; getPlayerOwner t method_6947 + m ()Lnet/minecraft/world/entity/Entity; getHookedIn v method_26957 + m ()V checkCollision w method_6958 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;II)V + p 1 entityType + p 2 level + p 3 luck + p 4 lureSpeed + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;II)V + p 1 player + p 2 level + p 3 luck + p 4 lureSpeed + m ()V +c net/minecraft/world/entity/projectile/FishingHook$FishHookState cnl$a net/minecraft/class_1536$class_1537 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; FLYING a field_7180 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; HOOKED_IN_ENTITY b field_7178 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; BOBBING c field_7179 + f [Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; $VALUES d field_7181 + m ()[Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; $values a method_36664 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/FishingHook$OpenWaterType cnl$b net/minecraft/class_1536$class_4984 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; ABOVE_WATER a field_23236 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; INSIDE_WATER b field_23237 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; INVALID c field_23238 + f [Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; $VALUES d field_23239 + m ()[Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; $values a method_36665 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/ItemSupplier cnm net/minecraft/class_3856 + m ()Lnet/minecraft/world/item/ItemStack; getItem p method_7495 +c net/minecraft/world/entity/projectile/LargeFireball cnn net/minecraft/class_1674 + f I explosionPower e field_7624 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;I)V + p 1 level + p 2 owner + p 3 movement + p 4 explosionPower +c net/minecraft/world/entity/projectile/LlamaSpit cno net/minecraft/class_1673 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 level + p 2 spitter +c net/minecraft/world/entity/projectile/Projectile cnp net/minecraft/class_1676 + f Ljava/util/UUID; ownerUUID b field_22478 + f Lnet/minecraft/world/entity/Entity; cachedOwner c field_33399 + f Z leftOwner d field_23740 + f Z hasBeenShot e field_28646 + f Lnet/minecraft/world/entity/Entity; lastDeflectedBy f field_51621 + m ()Lnet/minecraft/world/entity/Entity; getEffectSource H method_37225 + m ()V updateRotation I method_26962 + m (Lnet/minecraft/world/entity/Entity;FFFFF)V shootFromRotation a method_24919 + p 1 shooter + p 2 x + p 3 y + p 4 z + p 5 velocity + p 6 inaccuracy + m (Lnet/minecraft/world/entity/projectile/ProjectileDeflection;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Z)Z deflect a method_59859 + p 1 deflection + p 2 entity + p 3 owner + p 4 deflectedByPlayer + m (Lnet/minecraft/world/phys/BlockHitResult;)V onHitBlock a method_24920 + p 1 result + m (Lnet/minecraft/world/phys/EntityHitResult;)V onHitEntity a method_7454 + c Called when the arrow hits an entity + p 1 result + m (Lnet/minecraft/world/phys/HitResult;)V onHit a method_7488 + c Called when this EntityFireball hits a block or entity. + p 1 result + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)Lit/unimi/dsi/fastutil/doubles/DoubleDoubleImmutablePair; calculateHorizontalHurtKnockbackDirection a_ method_59959 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z canHitEntity b method_26958 + p 1 target + m (Lnet/minecraft/world/entity/Entity;Z)V onDeflection b method_59525 + p 1 entity + p 2 deflectedByPlayer + m (Lnet/minecraft/world/level/Level;)Z mayBreak b method_54457 + p 1 level + m (Lnet/minecraft/world/phys/HitResult;)Lnet/minecraft/world/entity/projectile/ProjectileDeflection; hitTargetOrDeflectSelf b method_59860 + p 1 hitResult + m (DDDFF)V shoot c method_7485 + c Similar to setArrowHeading, it's point the throwable entity to a x, y, z direction. + p 1 x + p 3 y + p 5 z + p 7 velocity + p 8 inaccuracy + m (Lnet/minecraft/world/entity/Entity;)V setOwner c method_7432 + p 1 owner + m (DDDFF)Lnet/minecraft/world/phys/Vec3; getMovementToShoot d method_58645 + p 1 x + p 3 y + p 5 z + p 7 velocity + p 8 inaccuracy + m (Lnet/minecraft/world/entity/Entity;)Z method_26959 d method_26959 + m (FF)F lerpRotation e method_26960 + p 0 currentRotation + p 1 targetRotation + m (Lnet/minecraft/world/entity/Entity;)Z ownedBy e method_34714 + p 1 entity + m ()Z checkLeftOwner t method_26961 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/projectile/ProjectileDeflection cnq net/minecraft/class_9109 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; NONE a field_48347 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; REVERSE b field_48348 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; AIM_DEFLECT c field_51509 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; MOMENTUM_DEFLECT d field_51510 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_59861 a method_59861 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_59862 b method_59862 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56095 c method_56095 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56096 d method_56096 + m ()V +c net/minecraft/world/entity/projectile/ProjectileUtil cnr net/minecraft/class_1675 + f F DEFAULT_ENTITY_HIT_RESULT_MARGIN a field_46654 + m (Lnet/minecraft/world/entity/Entity;F)V rotateTowardsMovement a method_7484 + p 0 projectile + p 1 rotationSpeed + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_18075 + c Gets the EntityRayTraceResult representing the entity hit + p 0 shooter + p 1 startVec + p 2 endVec + p 3 boundingBox + p 4 filter + p 5 distance + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/HitResult; getHitResultOnMoveVector a method_49997 + p 0 projectile + p 1 filter + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/HitResult; getHitResultOnViewVector a method_49998 + p 0 projectile + p 1 filter + p 2 scale + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult; getHitResultOnMoveVector a method_55054 + p 0 projectile + p 1 filter + p 2 clipContext + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/InteractionHand; getWeaponHoldingHand a method_18812 + p 0 shooter + p 1 weapon + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;FLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; getMobArrow a method_18813 + p 0 shooter + p 1 arrow + p 2 velocity + p 3 weapon + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_18077 + c Gets the EntityHitResult representing the entity hit + p 0 level + p 1 projectile + p 2 startVec + p 3 endVec + p 4 boundingBox + p 5 filter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_37226 + c Gets the EntityHitResult representing the entity hit + p 0 level + p 1 projectile + p 2 startVec + p 3 endVec + p 4 boundingBox + p 5 filter + p 6 inflationAmount + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;FLnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult; getHitResult a method_18074 + p 0 pos + p 1 projectile + p 2 filter + p 3 deltaMovement + p 4 level + p 5 margin + p 6 clipContext + m ()V +c net/minecraft/world/entity/projectile/ShulkerBullet cns net/minecraft/class_1678 + f D SPEED b field_30666 + f Lnet/minecraft/world/entity/Entity; finalTarget c field_7626 + f Lnet/minecraft/core/Direction; currentMoveDirection d field_7628 + f I flightSteps e field_7627 + f D targetDeltaX f field_7635 + f D targetDeltaY g field_7633 + f D targetDeltaZ h field_7625 + f Ljava/util/UUID; targetId i field_7632 + m (Lnet/minecraft/core/Direction$Axis;)V selectNextMoveDirection a method_7486 + p 1 axis + m (Lnet/minecraft/core/Direction;)V setMoveDirection a method_7487 + p 1 direction + m ()Lnet/minecraft/core/Direction; getMoveDirection p method_35208 + m ()V destroy t method_49723 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction$Axis;)V + p 1 level + p 2 shooter + p 3 finalTarget + p 4 axis +c net/minecraft/world/entity/projectile/SmallFireball cnt net/minecraft/class_1677 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 movement +c net/minecraft/world/entity/projectile/Snowball cnu net/minecraft/class_1680 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle v method_16939 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/projectile/SpectralArrow cnv net/minecraft/class_1679 + f I duration f field_7636 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 owner + p 3 pickupItemStack + p 4 firedFromWeapon + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + p 9 firedFromWeapon +c net/minecraft/world/entity/projectile/ThrowableItemProjectile cnw net/minecraft/class_3857 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK b field_17082 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16940 + p 1 stack + m ()Lnet/minecraft/world/item/Item; getDefaultItem t method_16942 + m ()Lnet/minecraft/world/item/ItemStack; method_57319 v method_57319 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 shooter + p 3 level + m ()V +c net/minecraft/world/entity/projectile/ThrowableProjectile cnx net/minecraft/class_1682 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 shooter + p 3 level +c net/minecraft/world/entity/projectile/ThrownEgg cny net/minecraft/class_1681 + f Lnet/minecraft/world/entity/EntityDimensions; ZERO_SIZED_DIMENSIONS b field_51894 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/ThrownEnderpearl cnz net/minecraft/class_1684 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;)Z isAllowedToTeleportOwner a method_60985 + p 0 entity + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)V playSound a method_60729 + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter +c net/minecraft/world/entity/projectile/ThrownExperienceBottle coa net/minecraft/class_1683 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/projectile/ThrownPotion cob net/minecraft/class_1686 + f D SPLASH_RANGE b field_30667 + f Ljava/util/function/Predicate; WATER_SENSITIVE_OR_ON_FIRE c field_40737 + f D SPLASH_RANGE_SQ d field_30668 + m (DI)I method_48575 a method_48575 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_46401 a method_46401 + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V makeAreaOfEffectCloud a method_7497 + p 1 potionContents + m (Ljava/lang/Iterable;Lnet/minecraft/world/entity/Entity;)V applySplash a method_7498 + p 1 effects + p 2 entity + m (Lnet/minecraft/core/BlockPos;)V dowseFire a method_7499 + p 1 pos + m ()V applyWater v method_7500 + m ()Z isLingering w method_7501 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/ThrownTrident coc net/minecraft/class_1685 + f I clientSideReturnTridentTickCount f field_7649 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_LOYALTY g field_7647 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_FOIL h field_21514 + f Z dealtDamage i field_7648 + m ()Z isFoil F method_23751 + m ()Z isAcceptibleReturnOwner J method_7493 + m (Lnet/minecraft/world/item/Item;)V method_60616 b method_60616 + m (Lnet/minecraft/world/item/ItemStack;)B getLoyaltyFromItem c method_59960 + p 1 stack + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 shooter + p 3 pickupItemStack + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + m ()V +c net/minecraft/world/entity/projectile/WitherSkull cod net/minecraft/class_1687 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DANGEROUS e field_7654 + m (Z)V setDangerous a method_7502 + c Set whether this skull comes from an invulnerable (aura) wither boss. + p 1 invulnerable + m ()Z isDangerous y method_7503 + c Return whether this skull comes from an invulnerable (aura) wither boss. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement + m ()V +c net/minecraft/world/entity/projectile/package-info coe net/minecraft/class_6071 +c net/minecraft/world/entity/projectile/windcharge/AbstractWindCharge cof net/minecraft/class_9236 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR e field_50137 + f D JUMP_SCALE f field_52224 + m (Lnet/minecraft/world/phys/Vec3;)V explode a method_55055 + p 1 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDD)V + p 1 entityType + p 2 level + p 3 owner + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m ()V +c net/minecraft/world/entity/projectile/windcharge/BreezeWindCharge cog net/minecraft/class_9238 + f F RADIUS g field_49242 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/level/Level;)V + p 1 breeze + p 2 level +c net/minecraft/world/entity/projectile/windcharge/WindCharge coh net/minecraft/class_8956 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR g field_47579 + f F RADIUS h field_49243 + f I noDeflectTicks i field_52019 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;DDD)V + p 1 player + p 2 level + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 movement + m ()V +c net/minecraft/world/entity/raid/Raid coi net/minecraft/class_3765 + f Ljava/util/Set; heroesOfTheVillage A field_19021 + f J ticksActive B field_16605 + f Lnet/minecraft/core/BlockPos; center C field_16613 + f Lnet/minecraft/server/level/ServerLevel; level D field_16619 + f Z started E field_16611 + f I id F field_16625 + f F totalHealth G field_16620 + f I raidOmenLevel H field_16623 + f Z active I field_16606 + f I groupsSpawned J field_16621 + f Lnet/minecraft/server/level/ServerBossEvent; raidEvent K field_16607 + f I postRaidTicks L field_16616 + f I raidCooldownTicks M field_16614 + f Lnet/minecraft/util/RandomSource; random N field_16608 + f I numGroups O field_19022 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; status P field_19023 + f I celebrationTicks Q field_19024 + f Ljava/util/Optional; waveSpawnPos R field_19172 + f I VILLAGE_RADIUS_BUFFER a field_30669 + f I MAX_NO_ACTION_TIME b field_30670 + f I MAX_CELEBRATION_TICKS c field_30671 + f I TICKS_PER_DAY d field_30672 + f I DEFAULT_MAX_RAID_OMEN_LEVEL e field_30673 + f I VALID_RAID_RADIUS_SQR f field_30674 + f I RAID_REMOVAL_THRESHOLD_SQR g field_30675 + f I SECTION_RADIUS_FOR_FINDING_NEW_VILLAGE_CENTER h field_30676 + f I ATTEMPT_RAID_FARTHEST i field_30677 + f I ATTEMPT_RAID_CLOSE j field_30678 + f I ATTEMPT_RAID_INSIDE k field_30679 + f I VILLAGE_SEARCH_RADIUS l field_30680 + f I RAID_TIMEOUT_TICKS m field_30681 + f I NUM_SPAWN_ATTEMPTS n field_30682 + f Lnet/minecraft/network/chat/Component; OMINOUS_BANNER_PATTERN_NAME o field_30683 + f Ljava/lang/String; RAIDERS_REMAINING p field_30684 + f I POST_RAID_TICK_LIMIT q field_30685 + f I DEFAULT_PRE_RAID_TICKS r field_30686 + f I OUTSIDE_RAID_BOUNDS_TIMEOUT s field_30687 + f I LOW_MOB_THRESHOLD t field_30688 + f Lnet/minecraft/network/chat/Component; RAID_NAME_COMPONENT u field_19016 + f Lnet/minecraft/network/chat/Component; RAID_BAR_VICTORY_COMPONENT v field_19019 + f Lnet/minecraft/network/chat/Component; RAID_BAR_DEFEAT_COMPONENT w field_19020 + f I HERO_OF_THE_VILLAGE_DURATION x field_30689 + f Ljava/util/Map; groupToLeaderMap y field_16615 + f Ljava/util/Map; groupRaiderMap z field_16618 + m ()Z isFinalWave A method_20012 + m ()Z hasBonusWave B method_20013 + m ()Z hasSpawnedBonusWave C method_20014 + m ()Z shouldSpawnBonusGroup D method_20015 + m ()V updateRaiders E method_16834 + m ()Z shouldSpawnGroup F method_16519 + m ()V setDirty G method_16520 + m ()Z isOver a method_16832 + m (I)V setRaidOmenLevel a method_35211 + p 1 raidOmenLevel + m (II)Lnet/minecraft/core/BlockPos; findRandomSpawnPos a method_16525 + p 1 offsetMultiplier + p 2 maxTry + m (ILnet/minecraft/world/entity/raid/Raider;)V setLeader a method_16491 + p 1 wave + p 2 raider + m (ILnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/core/BlockPos;Z)V joinRaid a method_16516 + p 1 wave + p 2 raider + p 3 pos + p 4 isRecruited + m (ILnet/minecraft/world/entity/raid/Raider;Z)Z addWaveMob a method_16487 + p 1 wave + p 2 raider + p 3 isRecruited + m (Lnet/minecraft/server/level/ServerPlayer;)Z absorbRaidOmen a method_16518 + p 1 player + m (Lnet/minecraft/world/Difficulty;)I getNumGroups a method_20016 + p 1 difficulty + m (Lnet/minecraft/world/entity/Entity;)V addHeroOfTheVillage a method_20017 + p 1 player + m (Lnet/minecraft/world/entity/raid/Raid$RaiderType;IZ)I getDefaultNumSpawns a method_20018 + p 1 raiderType + p 2 wave + p 3 shouldSpawnBonusGroup + m (Lnet/minecraft/world/entity/raid/Raid$RaiderType;Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/DifficultyInstance;Z)I getPotentialBonusSpawns a method_20019 + p 1 raiderType + p 2 random + p 3 wave + p 4 difficulty + p 5 shouldSpawnBonusGroup + m (Lnet/minecraft/world/entity/raid/Raider;Z)V removeFromRaid a method_16510 + p 1 raider + p 2 wanderedOutOfRaid + m (Ljava/lang/Integer;)Ljava/util/Set; method_16508 a method_16508 + m (Lnet/minecraft/core/BlockPos;)V playSound a method_16521 + p 1 pos + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/item/ItemStack; getLeaderBannerInstance a method_16515 + p 0 patternRegistry + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_16502 + p 1 compound + m ()Z isBetweenWaves b method_20020 + m (I)Lnet/minecraft/world/entity/raid/Raider; getLeader b method_16496 + p 1 wave + m (ILnet/minecraft/world/entity/raid/Raider;)Z addWaveMob b method_16505 + p 1 wave + p 2 raider + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_19208 b method_19208 + m (Lnet/minecraft/core/BlockPos;)V spawnGroup b method_16522 + p 1 pos + m ()Z hasFirstWaveSpawned c method_20021 + m (I)V removeLeader c method_16500 + p 1 wave + m (Lnet/minecraft/core/BlockPos;)V setCenter c method_20509 + p 1 center + m ()Z isStopped d method_20022 + m (I)Ljava/util/Optional; getValidSpawnPos d method_20267 + p 1 offsetMultiplier + m (Lnet/minecraft/core/BlockPos;)D method_20510 d method_20510 + m ()Z isVictory e method_20023 + m ()Z isLoss f method_20024 + m ()F getTotalHealth g method_35212 + m ()Ljava/util/Set; getAllRaiders h method_35213 + m ()Lnet/minecraft/world/level/Level; getLevel i method_16831 + m ()Z isStarted j method_16524 + m ()I getGroupsSpawned k method_16490 + m ()I getMaxRaidOmenLevel l method_16514 + m ()I getRaidOmenLevel m method_16493 + m ()V stop n method_16506 + m ()V tick o method_16509 + m ()V updateBossbar p method_16523 + m ()F getHealthOfLivingRaiders q method_16513 + m ()I getTotalRaidersAlive r method_16517 + m ()Lnet/minecraft/core/BlockPos; getCenter s method_16495 + m ()I getId t method_16494 + m ()Z isActive u method_16504 + m ()F getEnchantOdds v method_20025 + m ()Ljava/util/function/Predicate; validPlayer w method_16501 + m ()V updatePlayers x method_16499 + m ()V moveRaidCenterToNearbyVillageSection y method_20511 + m ()Z hasMoreWaves z method_16833 + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V + p 1 id + p 2 level + p 3 center + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)V + p 1 level + p 2 compound + m ()V +c net/minecraft/world/entity/raid/Raid$1 coi$1 net/minecraft/class_3765$1 + f [I $SwitchMap$net$minecraft$world$Difficulty a field_16626 + m ()V +c net/minecraft/world/entity/raid/Raid$RaidStatus coi$a net/minecraft/class_3765$class_4259 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; ONGOING a field_19026 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; VICTORY b field_19027 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; LOSS c field_19028 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; STOPPED d field_19029 + f [Lnet/minecraft/world/entity/raid/Raid$RaidStatus; VALUES e field_19030 + f [Lnet/minecraft/world/entity/raid/Raid$RaidStatus; $VALUES f field_19031 + m ()Ljava/lang/String; getName a method_20026 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/raid/Raid$RaidStatus; getByName a method_20028 + p 0 name + m ()[Lnet/minecraft/world/entity/raid/Raid$RaidStatus; $values b method_36666 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/raid/Raid$RaiderType coi$b net/minecraft/class_3765$class_3766 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; VINDICATOR a field_16631 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; EVOKER b field_16634 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; PILLAGER c field_16633 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; WITCH d field_16635 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; RAVAGER e field_16630 + f [Lnet/minecraft/world/entity/raid/Raid$RaiderType; VALUES f field_16636 + f Lnet/minecraft/world/entity/EntityType; entityType g field_16629 + f [I spawnsPerWaveBeforeBonus h field_16628 + f [Lnet/minecraft/world/entity/raid/Raid$RaiderType; $VALUES i field_16632 + m ()[Lnet/minecraft/world/entity/raid/Raid$RaiderType; $values a method_36667 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EntityType;[I)V + p 3 entityType + p 4 spawnsPerWaveBeforeBonus + m ()V +c net/minecraft/world/entity/raid/Raider coj net/minecraft/class_3763 + f Ljava/util/function/Predicate; ALLOWED_ITEMS b field_16600 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_CELEBRATING c field_19032 + f Z canJoinRaid cc field_16602 + f I ticksOutsideRaid cd field_16997 + f Lnet/minecraft/world/entity/raid/Raid; raid d field_16599 + f I wave e field_16601 + m (Z)V setCanJoinRaid A method_16480 + p 1 canJoinRaid + m (Z)V setCelebrating B method_20036 + p 1 celebrating + m (Lnet/minecraft/server/level/ServerLevel;IZ)V applyRaidBuffs a method_16484 + p 1 level + p 2 wave + p 3 unused + m (Lnet/minecraft/world/entity/raid/Raid;)V setCurrentRaid a method_16476 + p 1 raid + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20029 a method_20029 + m ()Lnet/minecraft/sounds/SoundEvent; getCelebrateSound ai_ method_20033 + m (I)V setWave b method_16477 + p 1 wave + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20032 b method_20032 + m (I)V setTicksOutsideRaid c method_16835 + p 1 ticksOutsideRaid + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_16483 c method_16483 + m (Lnet/minecraft/world/entity/raid/Raider;)Z method_19632 c method_19632 + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20035 d method_20035 + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_36668 e method_36668 + m ()Z hasRaid gA method_58647 + m ()Z hasActiveRaid gB method_16482 + m ()I getWave gC method_16486 + m ()Z isCelebrating gD method_20034 + m ()I getTicksOutsideRaid gE method_16836 + m ()Z canJoinRaid gx method_16481 + m ()Lnet/minecraft/world/entity/raid/Raid; getCurrentRaid gy method_16478 + m ()Z isCaptain gz method_58646 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/raid/Raider$HoldGroundAttackGoal coj$a net/minecraft/class_3763$class_4223 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; shoutTargeting a field_18881 + f Lnet/minecraft/world/entity/raid/Raider; mob b field_18883 + f F hostileRadiusSqr c field_18884 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/monster/AbstractIllager;F)V + p 2 mob + p 3 hostileRadiusSquare +c net/minecraft/world/entity/raid/Raider$ObtainRaidLeaderBannerGoal coj$b net/minecraft/class_3763$class_3764 + f Lnet/minecraft/world/entity/raid/Raider; mob a field_16603 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 mob +c net/minecraft/world/entity/raid/Raider$RaiderCelebration coj$c net/minecraft/class_3763$class_4260 + f Lnet/minecraft/world/entity/raid/Raider; field_19033 a field_19033 + f Lnet/minecraft/world/entity/raid/Raider; mob b field_19034 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 mob +c net/minecraft/world/entity/raid/Raider$RaiderMoveThroughVillageGoal coj$d net/minecraft/class_3763$class_4261 + f Lnet/minecraft/world/entity/raid/Raider; raider a field_19035 + f D speedModifier b field_19036 + f Lnet/minecraft/core/BlockPos; poiPos c field_19037 + f Ljava/util/List; visited d field_19038 + f I distanceToPoi e field_19039 + f Z stuck f field_19040 + m (Lnet/minecraft/core/BlockPos;)Z hasNotVisited a method_20038 + p 1 pos + m (Lnet/minecraft/core/Holder;)Z method_20037 a method_20037 + m ()Z isValidRaid h method_20039 + m ()Z hasSuitablePoi i method_20040 + m ()V updateVisited k method_20041 + m (Lnet/minecraft/world/entity/raid/Raider;DI)V + p 1 raider + p 2 speedModifier + p 4 distanceToPoi +c net/minecraft/world/entity/raid/Raids cok net/minecraft/class_3767 + f Ljava/lang/String; RAID_FILE_ID a field_30690 + f Ljava/util/Map; raidMap b field_16639 + f Lnet/minecraft/server/level/ServerLevel; level c field_16641 + f I nextAvailableID d field_16638 + f I tick e field_16637 + m ()V tick a method_16539 + m (I)Lnet/minecraft/world/entity/raid/Raid; get a method_16541 + p 1 id + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52559 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; getOrCreateRaid a method_16532 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/raid/Raids; load a method_77 + p 0 level + p 1 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/entity/raid/Raids; method_52561 a method_52561 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; createOrExtendRaid a method_16540 + p 1 player + p 2 pos + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raid;)Z canJoinRaid a method_16838 + p 0 raider + p 1 raid + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/entity/raid/Raid; getNearbyRaid a method_19209 + p 1 pos + p 2 distance + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; getFileId a method_16533 + p 0 dimensionTypeHolder + m ()I getUniqueId b method_16534 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/raid/Raids; method_52560 b method_52560 + m (Lnet/minecraft/core/Holder;)Z method_44012 b method_44012 + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/entity/raid/package-info col net/minecraft/class_6072 +c net/minecraft/world/entity/schedule/Activity com net/minecraft/class_4168 + f Ljava/lang/String; name A field_18600 + f I hashCode B field_23827 + f Lnet/minecraft/world/entity/schedule/Activity; CORE a field_18594 + f Lnet/minecraft/world/entity/schedule/Activity; IDLE b field_18595 + f Lnet/minecraft/world/entity/schedule/Activity; WORK c field_18596 + f Lnet/minecraft/world/entity/schedule/Activity; PLAY d field_18885 + f Lnet/minecraft/world/entity/schedule/Activity; REST e field_18597 + f Lnet/minecraft/world/entity/schedule/Activity; MEET f field_18598 + f Lnet/minecraft/world/entity/schedule/Activity; PANIC g field_18599 + f Lnet/minecraft/world/entity/schedule/Activity; RAID h field_19041 + f Lnet/minecraft/world/entity/schedule/Activity; PRE_RAID i field_19042 + f Lnet/minecraft/world/entity/schedule/Activity; HIDE j field_19043 + f Lnet/minecraft/world/entity/schedule/Activity; FIGHT k field_22396 + f Lnet/minecraft/world/entity/schedule/Activity; CELEBRATE l field_22397 + f Lnet/minecraft/world/entity/schedule/Activity; ADMIRE_ITEM m field_22398 + f Lnet/minecraft/world/entity/schedule/Activity; AVOID n field_22399 + f Lnet/minecraft/world/entity/schedule/Activity; RIDE o field_22400 + f Lnet/minecraft/world/entity/schedule/Activity; PLAY_DEAD p field_28352 + f Lnet/minecraft/world/entity/schedule/Activity; LONG_JUMP q field_30691 + f Lnet/minecraft/world/entity/schedule/Activity; RAM r field_33504 + f Lnet/minecraft/world/entity/schedule/Activity; TONGUE s field_37503 + f Lnet/minecraft/world/entity/schedule/Activity; SWIM t field_37504 + f Lnet/minecraft/world/entity/schedule/Activity; LAY_SPAWN u field_37505 + f Lnet/minecraft/world/entity/schedule/Activity; SNIFF v field_38199 + f Lnet/minecraft/world/entity/schedule/Activity; INVESTIGATE w field_38200 + f Lnet/minecraft/world/entity/schedule/Activity; ROAR x field_38201 + f Lnet/minecraft/world/entity/schedule/Activity; EMERGE y field_38202 + f Lnet/minecraft/world/entity/schedule/Activity; DIG z field_38203 + m ()Ljava/lang/String; getName a method_19634 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/schedule/Activity; register a method_19210 + p 0 key + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/entity/schedule/Keyframe coo net/minecraft/class_4169 + f I timeStamp a field_18601 + f F value b field_18602 + m ()I getTimeStamp a method_19211 + m ()F getValue b method_19212 + m (IF)V + p 1 timestamp + p 2 value +c net/minecraft/world/entity/schedule/Schedule cop net/minecraft/class_4170 + f I WORK_START_TIME a field_30692 + f I TOTAL_WORK_TIME b field_30693 + f Lnet/minecraft/world/entity/schedule/Schedule; EMPTY c field_18603 + f Lnet/minecraft/world/entity/schedule/Schedule; SIMPLE d field_18604 + f Lnet/minecraft/world/entity/schedule/Schedule; VILLAGER_BABY e field_18605 + f Lnet/minecraft/world/entity/schedule/Schedule; VILLAGER_DEFAULT f field_18606 + f Ljava/util/Map; timelines g field_18607 + m (I)Lnet/minecraft/world/entity/schedule/Activity; getActivityAt a method_19213 + p 1 dayTime + m (ILjava/util/Map$Entry;)D method_19214 a method_19214 + m (Lnet/minecraft/world/entity/schedule/Activity;)V ensureTimelineExistsFor a method_19215 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;Ljava/util/Map$Entry;)Z method_19216 a method_19216 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/schedule/ScheduleBuilder; register a method_19217 + p 0 key + m (Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/world/entity/schedule/Timeline; getTimelineFor b method_19218 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/util/List; getAllTimelinesExceptFor c method_19219 + p 1 activity + m ()V + m ()V +c net/minecraft/world/entity/schedule/ScheduleBuilder coq net/minecraft/class_4171 + f Lnet/minecraft/world/entity/schedule/Schedule; schedule a field_18608 + f Ljava/util/List; transitions b field_18609 + m ()Lnet/minecraft/world/entity/schedule/Schedule; build a method_19220 + m (ILnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/world/entity/schedule/ScheduleBuilder; changeActivityAt a method_19221 + p 1 duration + p 2 activity + m (Lnet/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition;)V method_19222 a method_19222 + m (Lnet/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition;Lnet/minecraft/world/entity/schedule/Timeline;)V method_19223 a method_19223 + m (Lnet/minecraft/world/entity/schedule/Schedule;)V + p 1 schedule +c net/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition coq$a net/minecraft/class_4171$class_4172 + f I time a field_18610 + f Lnet/minecraft/world/entity/schedule/Activity; activity b field_18611 + m ()I getTime a method_19224 + m ()Lnet/minecraft/world/entity/schedule/Activity; getActivity b method_19225 + m (ILnet/minecraft/world/entity/schedule/Activity;)V + p 1 time + p 2 activity +c net/minecraft/world/entity/schedule/Timeline cor net/minecraft/class_4173 + f Ljava/util/List; keyframes a field_18612 + f I previousIndex b field_18613 + m ()Lcom/google/common/collect/ImmutableList; getKeyframes a method_35214 + m (I)F getValueAt a method_19226 + p 1 dayTime + m (IF)Lnet/minecraft/world/entity/schedule/Timeline; addKeyframe a method_19227 + p 1 duration + p 2 active + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectSortedMap;Lnet/minecraft/world/entity/schedule/Keyframe;)V method_19228 a method_19228 + m (Ljava/util/Collection;)Lnet/minecraft/world/entity/schedule/Timeline; addKeyframes a method_35215 + p 1 frames + m ()V sortAndDeduplicateKeyframes b method_19229 + m ()V +c net/minecraft/world/entity/schedule/package-info cos net/minecraft/class_6073 +c net/minecraft/world/entity/vehicle/AbstractMinecart cot net/minecraft/class_1688 + f F WATER_SLOWDOWN_FACTOR b field_30694 + f Lnet/minecraft/world/phys/Vec3; LOWERED_PASSENGER_ATTACHMENT c field_47822 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DISPLAY_BLOCK d field_7671 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DISPLAY_OFFSET e field_7661 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_CUSTOM_DISPLAY i field_7670 + f Lcom/google/common/collect/ImmutableMap; POSE_DISMOUNT_HEIGHTS j field_24464 + f Z flipped k field_7660 + f Z onRails l field_44917 + f I lerpSteps m field_45135 + f D lerpX n field_45136 + f D lerpY o field_45137 + f D lerpZ p field_45138 + f D lerpYRot q field_45139 + f D lerpXRot r field_45140 + f Lnet/minecraft/world/phys/Vec3; targetDeltaMovement s field_45141 + f Ljava/util/Map; EXITS t field_7664 + m ()Z hasCustomDisplay A method_7510 + m (DDDD)Lnet/minecraft/world/phys/Vec3; getPosOffs a method_7505 + p 1 x + p 3 y + p 5 z + p 7 offset + m (IIIZ)V activateMinecart a method_7506 + c Called every tick the minecart is on an activator rail. + p 1 x + p 2 y + p 3 z + p 4 powered + m (Lnet/minecraft/server/level/ServerLevel;DDDLnet/minecraft/world/entity/vehicle/AbstractMinecart$Type;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/entity/vehicle/AbstractMinecart; createMinecart a method_7523 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 type + p 8 stack + p 9 player + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)Lcom/mojang/datafixers/util/Pair; exits a method_22864 + p 0 shape + m (Ljava/util/EnumMap;)V method_22865 a method_22865 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30339 a method_30339 + m (Lnet/minecraft/core/BlockPos;)Z isRedstoneConductor a method_18803 + p 1 pos + m (Z)V setCustomDisplay a method_7511 + p 1 customDisplay + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30340 b method_30340 + m (I)V setDisplayOffset c method_7515 + p 1 displayOffset + m (Lnet/minecraft/world/level/block/state/BlockState;)V setDisplayBlockState c method_7527 + p 1 displayState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V moveAlongTrack c method_7513 + p 1 pos + p 2 state + m ()D getMaxSpeed p method_7504 + c Gets the maximum speed for a minecart + m (DDD)Lnet/minecraft/world/phys/Vec3; getPos p method_7508 + p 1 x + p 3 y + p 5 z + m ()V comeOffTrack s method_7512 + c Moves a minecart that is not attached to a rail + m ()V applyNaturalSlowdown t method_7525 + m ()Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; getMinecartType v method_7518 + m ()Lnet/minecraft/world/level/block/state/BlockState; getDisplayBlockState w method_7519 + m ()Lnet/minecraft/world/level/block/state/BlockState; getDefaultDisplayBlockState x method_7517 + m ()I getDisplayOffset y method_7514 + m ()I getDefaultDisplayOffset z method_7526 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;DDD)V + p 1 entityType + p 2 level + p 3 x + p 5 y + p 7 z + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecart$1 cot$1 net/minecraft/class_1688$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_7682 + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecart$Type cot$a net/minecraft/class_1688$class_1689 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; RIDEABLE a field_7674 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; CHEST b field_7678 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; FURNACE c field_7679 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; TNT d field_7675 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; SPAWNER e field_7680 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; HOPPER f field_7677 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; COMMAND_BLOCK g field_7681 + f [Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; $VALUES h field_7673 + m ()[Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; $values a method_36669 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecartContainer cou net/minecraft/class_1693 + f Lnet/minecraft/core/NonNullList; itemStacks c field_7735 + f Lnet/minecraft/resources/ResourceKey; lootTable d field_7734 + f J lootTableSeed e field_7732 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; createMenu a method_17357 + p 1 containerId + p 2 playerInventory + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_7562 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level +c net/minecraft/world/entity/vehicle/Boat cov net/minecraft/class_1690 + f D lerpYRot aD field_7699 + f D lerpXRot aE field_7684 + f Z inputLeft aF field_7710 + f Z inputRight aG field_7695 + f Z inputUp aH field_7709 + f Z inputDown aI field_7693 + f D waterLevel aJ field_7697 + f F landFriction aK field_7714 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; status aL field_7702 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; oldStatus aM field_7701 + f D lastYd aN field_7696 + f Z isAboveBubbleColumn aO field_7689 + f Z bubbleColumnDirectionIsDown aP field_7703 + f F bubbleMultiplier aQ field_7712 + f F bubbleAngle aR field_7694 + f F bubbleAngleO aS field_7711 + f Lnet/minecraft/world/entity/Leashable$LeashData; leashData aT field_52225 + f I PADDLE_LEFT b field_30697 + f I PADDLE_RIGHT c field_30698 + f D PADDLE_SOUND_TIME d field_30699 + f I BUBBLE_TIME e field_30700 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE i field_7698 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_PADDLE_LEFT j field_7687 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_PADDLE_RIGHT k field_7713 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_BUBBLE_TIME l field_7691 + f I TIME_TO_EJECT m field_30695 + f F PADDLE_SPEED n field_30696 + f [F paddlePositions o field_7704 + f F invFriction p field_7692 + f F outOfControlTicks q field_7706 + f F deltaRotation r field_7690 + f I lerpSteps s field_7708 + f D lerpX t field_7686 + f D lerpY u field_7700 + f D lerpZ v field_7685 + m ()V tickBubbleColumn B method_7550 + m ()V tickLerp C method_7555 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Status; getStatus D method_7552 + c Determines whether the boat is in water, gliding on land, or in air + m ()Z checkInWater E method_7545 + m ()I getMaxPassengers F method_42281 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Status; isUnderwater H method_7532 + c Decides whether the boat is currently underwater. + m ()V floatBoat I method_7534 + c Update the boat's speed, based on momentum. + m ()V controlBoat J method_7549 + m ()I getBubbleTime K method_7539 + m (F)F getBubbleAngle a method_7547 + p 1 partialTicks + m (IF)F getRowingTime a method_7551 + p 1 side + p 2 limbSwing + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z canVehicleCollide a method_30959 + p 0 vehicle + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)V setVariant a method_47884 + p 1 variant + m (ZZZZ)V setInput a method_7535 + p 1 inputLeft + p 2 inputRight + p 3 inputUp + p 4 inputDown + m (I)V setBubbleTime b method_7531 + p 1 bubbleTime + m (ZZ)V setPaddleState b method_7538 + p 1 left + p 2 right + m (I)Z getPaddleState c method_7556 + p 1 side + m (Lnet/minecraft/world/entity/Entity;)Z hasEnoughSpaceFor c method_49182 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V clampRotation d method_7546 + c Applies this boat's yaw to the given entity. Used to update the orientation of its passenger. + p 1 entityToUpdate + m (Lnet/minecraft/world/entity/Entity;)Z method_31552 e method_31552 + m ()Lnet/minecraft/sounds/SoundEvent; getPaddleSound s method_7537 + m ()F getWaterLevelAbove t method_7544 + m ()F getGroundFriction v method_7548 + c Decides how much the boat should be gliding on the land (based on any slippery blocks) + m ()F getSinglePassengerXOffset w method_42280 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Type; getVariant x method_47885 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/Boat$Status cov$a net/minecraft/class_1690$class_1691 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; IN_WATER a field_7718 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; UNDER_WATER b field_7717 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; UNDER_FLOWING_WATER c field_7716 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; ON_LAND d field_7719 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; IN_AIR e field_7720 + f [Lnet/minecraft/world/entity/vehicle/Boat$Status; $VALUES f field_7715 + m ()[Lnet/minecraft/world/entity/vehicle/Boat$Status; $values a method_36670 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/vehicle/Boat$Type cov$b net/minecraft/class_1690$class_1692 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; OAK a field_7727 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; SPRUCE b field_7728 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; BIRCH c field_7729 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; JUNGLE d field_7730 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; ACACIA e field_7725 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; CHERRY f field_42681 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; DARK_OAK g field_7723 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; MANGROVE h field_37506 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; BAMBOO i field_40161 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC j field_41599 + f Ljava/lang/String; name k field_7726 + f Lnet/minecraft/world/level/block/Block; planks l field_7731 + f Ljava/util/function/IntFunction; BY_ID m field_41675 + f [Lnet/minecraft/world/entity/vehicle/Boat$Type; $VALUES n field_7724 + m ()Ljava/lang/String; getName a method_7559 + m (I)Lnet/minecraft/world/entity/vehicle/Boat$Type; byId a method_7558 + c Get a boat type by its enum ordinal + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/world/entity/vehicle/Boat$Type; byName a method_7561 + p 0 name + m ()Lnet/minecraft/world/level/block/Block; getPlanks b method_7560 + m ()[Lnet/minecraft/world/entity/vehicle/Boat$Type; $values d method_36671 + m (Ljava/lang/String;ILnet/minecraft/world/level/block/Block;Ljava/lang/String;)V + p 3 planks + p 4 name + m ()V +c net/minecraft/world/entity/vehicle/ChestBoat cow net/minecraft/class_7264 + f I CONTAINER_SIZE i field_38207 + f Lnet/minecraft/core/NonNullList; itemStacks j field_38204 + f Lnet/minecraft/resources/ResourceKey; lootTable k field_38205 + f J lootTableSeed l field_38206 + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable e method_42282 + p 1 player + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/ChestBoat$1 cow$1 net/minecraft/class_7264$1 + f [I $SwitchMap$net$minecraft$world$entity$vehicle$Boat$Type a field_38208 + m ()V +c net/minecraft/world/entity/vehicle/ContainerEntity cox net/minecraft/class_7265 + m ()Lnet/minecraft/resources/ResourceKey; getLootTable B method_42276 + m ()J getLootTableSeed C method_42277 + m ()Lnet/minecraft/core/NonNullList; getItemStacks D method_42278 + m ()V clearItemStacks E method_42273 + m (J)V setLootTableSeed a method_42274 + p 1 lootTableSeed + m (Lnet/minecraft/resources/ResourceKey;)V setLootTable a method_42275 + p 1 lootTable + m (Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)V chestVehicleDestroyed a method_42283 + p 1 damageSource + p 2 level + p 3 entity + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V addChestVehicleSaveData a method_42288 + p 1 tag + p 2 levelRegistry + m (II)Lnet/minecraft/world/item/ItemStack; removeChestVehicleItem b method_42286 + p 1 slot + p 2 amount + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V readChestVehicleSaveData b method_42285 + p 1 tag + p 2 levelRegistry + m (ILnet/minecraft/world/item/ItemStack;)V setChestVehicleItem c method_42287 + p 1 slot + p 2 stack + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox cK method_5829 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; interactWithContainerVehicle c_ method_42284 + p 1 player + m ()Z isRemoved dJ method_31481 + m ()Lnet/minecraft/world/level/Level; level dO method_37908 + m ()Lnet/minecraft/world/phys/Vec3; position dm method_19538 + m (I)Lnet/minecraft/world/item/ItemStack; removeChestVehicleItemNoUpdate e_ method_42289 + p 1 slot + m ()V clearChestVehicleContent f method_42293 + m (Lnet/minecraft/world/entity/player/Player;)V unpackChestVehicleLootTable f method_42291 + p 1 player + m (I)Lnet/minecraft/world/item/ItemStack; getChestVehicleItem f_ method_42290 + p 1 slot + m ()Z isChestVehicleEmpty g method_42295 + m (Lnet/minecraft/world/entity/player/Player;)Z isChestVehicleStillValid g method_42294 + p 1 player + m (I)Lnet/minecraft/world/entity/SlotAccess; getChestVehicleSlot g_ method_42292 + p 1 index +c net/minecraft/world/entity/vehicle/ContainerEntity$1 cox$1 net/minecraft/class_7265$1 + f I val$slot b field_38209 + f Lnet/minecraft/world/entity/vehicle/ContainerEntity; field_38210 c field_38210 + m (Lnet/minecraft/world/entity/vehicle/ContainerEntity;I)V +c net/minecraft/world/entity/vehicle/DismountHelper coy net/minecraft/class_5275 + m (D)Z isBlockFloorValid a method_27932 + p 0 distance + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/phys/Vec3; findSafeDismountLocation a method_30769 + p 0 entityType + p 1 level + p 2 pos + p 3 onlySafePositions + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; nonClimbableShape a method_30341 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Z canDismountTo a method_27933 + p 0 level + p 1 passenger + p 2 boundingBox + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Pose;)Z canDismountTo a method_33353 + p 0 level + p 1 offset + p 2 passenger + p 3 pose + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30770 a method_30770 + m (Lnet/minecraft/core/BlockPos;ILjava/util/function/Function;)D findCeilingFrom a method_30343 + p 0 pos + p 1 ceiling + p 2 shapeForPos + m (Lnet/minecraft/core/Direction;)[[I offsetsForDirection a method_27934 + p 0 direction + m ()V +c net/minecraft/world/entity/vehicle/Minecart coz net/minecraft/class_1695 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartChest cpa net/minecraft/class_1694 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartCommandBlock cpb net/minecraft/class_1697 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_COMMAND_NAME c field_7743 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_LAST_OUTPUT d field_7741 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock e field_7744 + f I ACTIVATION_DELAY i field_30701 + f I lastActivated j field_7742 + c Cooldown before command block logic runs again in ticks + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock B method_7567 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/MinecartCommandBlock$MinecartCommandBase cpb$a net/minecraft/class_1697$class_1698 + f Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock; field_7745 b field_7745 + m ()Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock; getMinecart h method_7569 + m (Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock;)V +c net/minecraft/world/entity/vehicle/MinecartFurnace cpc net/minecraft/class_1696 + f D xPush c field_7737 + f D zPush d field_7736 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FUEL e field_7740 + f I fuel i field_7739 + f Lnet/minecraft/world/item/crafting/Ingredient; INGREDIENT j field_7738 + c The fuel item used to make the minecart move. + m ()Z hasFuel B method_7565 + m (Z)V setHasFuel b method_7564 + p 1 hasFuel + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/MinecartHopper cpd net/minecraft/class_1700 + f Z enabled c field_7749 + m ()Z isEnabled F method_7572 + c Get whether this hopper minecart is being blocked by an activator rail. + m ()Z suckInItems L method_7574 + m (Z)V setEnabled b method_7570 + c Set whether this hopper minecart is being blocked by an activator rail. + p 1 enabled + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartSpawner cpe net/minecraft/class_1699 + f Lnet/minecraft/world/level/BaseSpawner; spawner c field_7746 + f Ljava/lang/Runnable; ticker d field_27012 + m ()Lnet/minecraft/world/level/BaseSpawner; getSpawner B method_35216 + m (Lnet/minecraft/world/level/Level;)Ljava/lang/Runnable; createTicker b method_31553 + p 1 level + m (Lnet/minecraft/world/level/Level;)V method_31554 c method_31554 + m (Lnet/minecraft/world/level/Level;)V method_31555 d method_31555 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartSpawner$1 cpe$1 net/minecraft/class_1699$1 + f Lnet/minecraft/world/entity/vehicle/MinecartSpawner; field_7747 a field_7747 + m (Lnet/minecraft/world/entity/vehicle/MinecartSpawner;)V +c net/minecraft/world/entity/vehicle/MinecartTNT cpf net/minecraft/class_1701 + f B EVENT_PRIME c field_30703 + f I fuse d field_7751 + m ()V primeFuse B method_7575 + c Ignites this TNT cart. + m ()I getFuse C method_7577 + c Gets the remaining fuse time in ticks. + m ()Z isPrimed D method_7578 + c Returns {@code true} if the TNT minecart is ignited. + m (Lnet/minecraft/world/damagesource/DamageSource;D)V explode a method_7576 + p 1 damageSource + p 2 radiusModifier + m (Lnet/minecraft/world/damagesource/DamageSource;)Z damageSourceIgnitesTnt e method_55057 + p 0 source + m (D)V explode h method_47305 + c Makes the minecart explode. + p 1 radiusModifier + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/VehicleEntity cpg net/minecraft/class_8836 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_HURT f field_46655 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_HURTDIR g field_46656 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DAMAGE h field_46657 + m ()F getDamage N method_54294 + m ()I getHurtTime O method_54295 + m ()I getHurtDir P method_54296 + m (Lnet/minecraft/world/damagesource/DamageSource;)V destroy a method_7516 + p 1 source + m ()Lnet/minecraft/world/item/Item; getDropItem ak_ method_7557 + m (F)V setDamage b method_54297 + p 1 damage + m (Lnet/minecraft/world/item/Item;)V destroy b method_54298 + p 1 dropItem + m (I)V setHurtTime d method_54299 + p 1 hurtTime + m (Lnet/minecraft/world/damagesource/DamageSource;)Z shouldSourceDestroy d method_55056 + p 1 source + m (I)V setHurtDir m method_54300 + p 1 hurtDir + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/vehicle/package-info cph net/minecraft/class_6074 +c net/minecraft/world/flag/FeatureElement cpi net/minecraft/class_7695 + f Ljava/util/Set; FILTERED_REGISTRIES bA field_40162 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isEnabled a method_45382 + p 1 enabledFeatures + m ()Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures i method_45322 + m ()V +c net/minecraft/world/flag/FeatureFlag cpj net/minecraft/class_7696 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe a field_40163 + f J mask b field_40164 + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;I)V + p 1 universe + p 2 maskBit +c net/minecraft/world/flag/FeatureFlagRegistry cpk net/minecraft/class_7697 + f Lorg/slf4j/Logger; LOGGER a field_40165 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe b field_40166 + f Ljava/util/Map; names c field_40167 + f Lnet/minecraft/world/flag/FeatureFlagSet; allFlags d field_40168 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; allFlags a method_45383 + m (Lnet/minecraft/resources/ResourceLocation;)V method_45384 a method_45384 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isSubset a method_45385 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/flag/FeatureFlag;)V method_45386 a method_45386 + m (Ljava/lang/Iterable;)Lnet/minecraft/world/flag/FeatureFlagSet; fromNames a method_45387 + p 1 names + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;)Lnet/minecraft/world/flag/FeatureFlagSet; fromNames a method_45388 + p 1 names + p 2 onError + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_45389 a method_45389 + m (Ljava/util/Set;)Ljava/lang/String; method_49492 a method_49492 + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; subset a method_45390 + p 1 flags + m ()Lcom/mojang/serialization/Codec; codec b method_45391 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/Set; toNames b method_45392 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/List; method_45393 c method_45393 + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Map;)V + p 1 universe + p 2 allFlags + p 3 names + m ()V +c net/minecraft/world/flag/FeatureFlagRegistry$Builder cpk$a net/minecraft/class_7697$class_7698 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe a field_40169 + f I id b field_40170 + f Ljava/util/Map; flags c field_40171 + m ()Lnet/minecraft/world/flag/FeatureFlagRegistry; build a method_45394 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/flag/FeatureFlag; create a method_45395 + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/world/flag/FeatureFlag; createVanilla a method_45396 + p 1 id + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/world/flag/FeatureFlagSet cpl net/minecraft/class_7699 + f I MAX_CONTAINER_SIZE a field_40172 + f Lnet/minecraft/world/flag/FeatureFlagSet; EMPTY b field_40173 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe c field_40174 + f J mask d field_40175 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45397 + m (Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45398 + p 0 flag + m (Lnet/minecraft/world/flag/FeatureFlag;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45399 + p 0 flag + p 1 others + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isSubsetOf a method_45400 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;JLjava/lang/Iterable;)J computeMask a method_45401 + p 0 universe + p 1 mask + p 3 flags + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;Ljava/util/Collection;)Lnet/minecraft/world/flag/FeatureFlagSet; create a method_45402 + p 0 universe + p 1 flags + m ()Z isEmpty b method_58398 + m (Lnet/minecraft/world/flag/FeatureFlag;)Z contains b method_45403 + p 1 flag + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z intersects b method_59819 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/flag/FeatureFlagSet; join c method_45404 + p 1 other + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/flag/FeatureFlagSet; subtract d method_59820 + p 1 other + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;J)V + p 1 universe + p 2 mask + m ()V +c net/minecraft/world/flag/FeatureFlagUniverse cpm net/minecraft/class_7700 + f Ljava/lang/String; id a field_40176 + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/world/flag/FeatureFlags cpn net/minecraft/class_7701 + f Lnet/minecraft/world/flag/FeatureFlag; VANILLA a field_40177 + f Lnet/minecraft/world/flag/FeatureFlag; BUNDLE b field_40178 + f Lnet/minecraft/world/flag/FeatureFlag; TRADE_REBALANCE c field_45142 + f Lnet/minecraft/world/flag/FeatureFlagRegistry; REGISTRY d field_40180 + f Lcom/mojang/serialization/Codec; CODEC e field_40181 + f Lnet/minecraft/world/flag/FeatureFlagSet; VANILLA_SET f field_40182 + f Lnet/minecraft/world/flag/FeatureFlagSet; DEFAULT_FLAGS g field_40183 + m (Lnet/minecraft/world/flag/FeatureFlagRegistry;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/lang/String; printMissingFlags a method_45405 + p 0 registry + p 1 enabledFeatures + p 2 requestedFeatures + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isExperimental a method_45406 + p 0 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/lang/String; printMissingFlags a method_45407 + p 0 enabledFeatures + p 1 requestedFeatures + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;)Z method_45408 a method_45408 + m ()V + m ()V +c net/minecraft/world/flag/package-info cpo net/minecraft/class_7702 +c net/minecraft/world/food/FoodConstants cpp net/minecraft/class_6075 + f I MAX_FOOD a field_30704 + f F MAX_SATURATION b field_30705 + f F START_SATURATION c field_30706 + f F SATURATION_FLOOR d field_30707 + f F EXHAUSTION_DROP e field_30708 + f I HEALTH_TICK_COUNT f field_30709 + f I HEALTH_TICK_COUNT_SATURATED g field_30710 + f I HEAL_LEVEL h field_30711 + f I SPRINT_LEVEL i field_30712 + f I STARVE_LEVEL j field_30713 + f F FOOD_SATURATION_POOR k field_30714 + f F FOOD_SATURATION_LOW l field_30715 + f F FOOD_SATURATION_NORMAL m field_30716 + f F FOOD_SATURATION_GOOD n field_30717 + f F FOOD_SATURATION_MAX o field_30718 + f F FOOD_SATURATION_SUPERNATURAL p field_30719 + f F EXHAUSTION_HEAL q field_30720 + f F EXHAUSTION_JUMP r field_30721 + f F EXHAUSTION_SPRINT_JUMP s field_30722 + f F EXHAUSTION_MINE t field_30723 + f F EXHAUSTION_ATTACK u field_30724 + f F EXHAUSTION_WALK v field_30726 + f F EXHAUSTION_CROUCH w field_30727 + f F EXHAUSTION_SPRINT x field_30728 + f F EXHAUSTION_SWIM y field_30729 + m (IF)F saturationByModifier a method_59683 + p 0 foodLevel + p 1 saturationModifier + m ()V +c net/minecraft/world/food/FoodData cpq net/minecraft/class_1702 + f I foodLevel a field_7756 + f F saturationLevel b field_7753 + f F exhaustionLevel c field_7752 + f I tickTimer d field_7755 + f I lastFoodLevel e field_7754 + m ()I getFoodLevel a method_7586 + c Get the player's food level. + m (F)V addExhaustion a method_7583 + c Adds input to {@code foodExhaustionLevel} to a max of 40. + p 1 exhaustion + m (I)V setFoodLevel a method_7580 + p 1 foodLevel + m (IF)V eat a method_7585 + c Add food stats. + p 1 foodLevelModifier + p 2 saturationLevelModifier + m (Lnet/minecraft/world/entity/player/Player;)V tick a method_7588 + c Handles the food game logic. + p 1 player + m (Lnet/minecraft/world/food/FoodProperties;)V eat a method_7579 + p 1 foodProperties + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData a method_7584 + c Reads the food data for the player. + p 1 compoundTag + m ()I getLastFoodLevel b method_35217 + m (F)V setSaturation b method_7581 + p 1 saturationLevel + m (IF)V add b method_59684 + p 1 foodLevel + p 2 saturationLevel + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData b method_7582 + c Writes the food data for the player. + p 1 compoundTag + m ()Z needsFood c method_7587 + c Get whether the player must eat food. + m (F)V setExhaustion c method_35218 + p 1 exhaustionLevel + m ()F getExhaustionLevel d method_35219 + m ()F getSaturationLevel e method_7589 + c Get the player's food saturation level. + m ()V +c net/minecraft/world/food/FoodProperties cpr net/minecraft/class_4174 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49992 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49993 + f I nutrition c comp_2491 + f F saturation d comp_2492 + f Z canAlwaysEat e comp_2493 + f F eatSeconds f comp_2494 + f Ljava/util/Optional; usingConvertsTo g comp_2794 + f Ljava/util/List; effects h comp_2495 + f F DEFAULT_EAT_SECONDS i field_49994 + m ()I eatDurationTicks a method_58399 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58400 a method_58400 + m ()I nutrition b comp_2491 + m ()F saturation c comp_2492 + m ()Z canAlwaysEat d comp_2493 + m ()F eatSeconds e comp_2494 + m ()Ljava/util/Optional; usingConvertsTo f comp_2794 + m ()Ljava/util/List; effects g comp_2495 + m (IFZFLjava/util/Optional;Ljava/util/List;)V + m ()V +c net/minecraft/world/food/FoodProperties$Builder cpr$a net/minecraft/class_4174$class_4175 + f I nutrition a field_18620 + f F saturationModifier b field_18621 + f Z canAlwaysEat c field_18623 + f F eatSeconds d field_49995 + f Ljava/util/Optional; usingConvertsTo e field_51895 + f Lcom/google/common/collect/ImmutableList$Builder; effects f field_18625 + m ()Lnet/minecraft/world/food/FoodProperties$Builder; alwaysEdible a method_19240 + m (F)Lnet/minecraft/world/food/FoodProperties$Builder; saturationModifier a method_19237 + p 1 saturationModifier + m (I)Lnet/minecraft/world/food/FoodProperties$Builder; nutrition a method_19238 + p 1 nutrition + m (Lnet/minecraft/world/effect/MobEffectInstance;F)Lnet/minecraft/world/food/FoodProperties$Builder; effect a method_19239 + p 1 effect + p 2 probability + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/food/FoodProperties$Builder; usingConvertsTo a method_60500 + p 1 item + m ()Lnet/minecraft/world/food/FoodProperties$Builder; fast b method_19241 + m ()Lnet/minecraft/world/food/FoodProperties; build c method_19242 + m ()V +c net/minecraft/world/food/FoodProperties$PossibleEffect cpr$b net/minecraft/class_4174$class_9423 + f Lcom/mojang/serialization/Codec; CODEC a field_49996 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49997 + f Lnet/minecraft/world/effect/MobEffectInstance; effect c comp_2496 + f F probability d comp_2497 + m ()Lnet/minecraft/world/effect/MobEffectInstance; effect a comp_2496 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58401 a method_58401 + m ()F probability b comp_2497 + m (Lnet/minecraft/world/effect/MobEffectInstance;F)V + m ()V +c net/minecraft/world/food/Foods cps net/minecraft/class_4176 + f Lnet/minecraft/world/food/FoodProperties; POISONOUS_POTATO A field_18663 + f Lnet/minecraft/world/food/FoodProperties; PORKCHOP B field_18626 + f Lnet/minecraft/world/food/FoodProperties; POTATO C field_18627 + f Lnet/minecraft/world/food/FoodProperties; PUFFERFISH D field_18628 + f Lnet/minecraft/world/food/FoodProperties; PUMPKIN_PIE E field_18629 + f Lnet/minecraft/world/food/FoodProperties; RABBIT F field_18630 + f Lnet/minecraft/world/food/FoodProperties; RABBIT_STEW G field_18631 + f Lnet/minecraft/world/food/FoodProperties; ROTTEN_FLESH H field_18632 + f Lnet/minecraft/world/food/FoodProperties; SALMON I field_18633 + f Lnet/minecraft/world/food/FoodProperties; SPIDER_EYE J field_18634 + f Lnet/minecraft/world/food/FoodProperties; SUSPICIOUS_STEW K field_18635 + f Lnet/minecraft/world/food/FoodProperties; SWEET_BERRIES L field_18636 + f Lnet/minecraft/world/food/FoodProperties; GLOW_BERRIES M field_28647 + f Lnet/minecraft/world/food/FoodProperties; TROPICAL_FISH N field_18637 + f Lnet/minecraft/world/food/FoodProperties; OMINOUS_BOTTLE O field_50138 + f Lnet/minecraft/world/food/FoodProperties; APPLE a field_18638 + f Lnet/minecraft/world/food/FoodProperties; BAKED_POTATO b field_18639 + f Lnet/minecraft/world/food/FoodProperties; BEEF c field_18640 + f Lnet/minecraft/world/food/FoodProperties; BEETROOT d field_18641 + f Lnet/minecraft/world/food/FoodProperties; BEETROOT_SOUP e field_18642 + f Lnet/minecraft/world/food/FoodProperties; BREAD f field_18643 + f Lnet/minecraft/world/food/FoodProperties; CARROT g field_18644 + f Lnet/minecraft/world/food/FoodProperties; CHICKEN h field_18645 + f Lnet/minecraft/world/food/FoodProperties; CHORUS_FRUIT i field_18646 + f Lnet/minecraft/world/food/FoodProperties; COD j field_18647 + f Lnet/minecraft/world/food/FoodProperties; COOKED_BEEF k field_18648 + f Lnet/minecraft/world/food/FoodProperties; COOKED_CHICKEN l field_18649 + f Lnet/minecraft/world/food/FoodProperties; COOKED_COD m field_18650 + f Lnet/minecraft/world/food/FoodProperties; COOKED_MUTTON n field_18651 + f Lnet/minecraft/world/food/FoodProperties; COOKED_PORKCHOP o field_18652 + f Lnet/minecraft/world/food/FoodProperties; COOKED_RABBIT p field_18653 + f Lnet/minecraft/world/food/FoodProperties; COOKED_SALMON q field_18654 + f Lnet/minecraft/world/food/FoodProperties; COOKIE r field_18655 + f Lnet/minecraft/world/food/FoodProperties; DRIED_KELP s field_18656 + f Lnet/minecraft/world/food/FoodProperties; ENCHANTED_GOLDEN_APPLE t field_18657 + f Lnet/minecraft/world/food/FoodProperties; GOLDEN_APPLE u field_18658 + f Lnet/minecraft/world/food/FoodProperties; GOLDEN_CARROT v field_18659 + f Lnet/minecraft/world/food/FoodProperties; HONEY_BOTTLE w field_20381 + f Lnet/minecraft/world/food/FoodProperties; MELON_SLICE x field_18660 + f Lnet/minecraft/world/food/FoodProperties; MUSHROOM_STEW y field_18661 + f Lnet/minecraft/world/food/FoodProperties; MUTTON z field_18662 + m (I)Lnet/minecraft/world/food/FoodProperties$Builder; stew a method_19243 + p 0 nutrition + m ()V + m ()V +c net/minecraft/world/food/package-info cpt net/minecraft/class_6076 +c net/minecraft/world/inventory/AbstractContainerMenu cpu net/minecraft/class_1703 + f I SLOT_CLICKED_OUTSIDE a field_30730 + f I QUICKCRAFT_TYPE_CHARITABLE b field_30731 + f I QUICKCRAFT_TYPE_GREEDY c field_30732 + f I QUICKCRAFT_TYPE_CLONE d field_30733 + f I QUICKCRAFT_HEADER_START e field_30734 + f I QUICKCRAFT_HEADER_CONTINUE f field_30735 + f I QUICKCRAFT_HEADER_END g field_30736 + f I CARRIED_SLOT_SIZE h field_30737 + f Lnet/minecraft/core/NonNullList; slots i field_7761 + f I containerId j field_7763 + f Lorg/slf4j/Logger; LOGGER k field_36534 + f Lnet/minecraft/core/NonNullList; lastSlots l field_7764 + f Ljava/util/List; dataSlots m field_17285 + f Lnet/minecraft/world/item/ItemStack; carried n field_29205 + f Lnet/minecraft/core/NonNullList; remoteSlots o field_29206 + f Lit/unimi/dsi/fastutil/ints/IntList; remoteDataSlots p field_29559 + f Lnet/minecraft/world/item/ItemStack; remoteCarried q field_29207 + f I stateId r field_34024 + f Lnet/minecraft/world/inventory/MenuType; menuType s field_17493 + f I quickcraftType t field_7762 + f I quickcraftStatus u field_7759 + f Ljava/util/Set; quickcraftSlots v field_7757 + f Ljava/util/List; containerListeners w field_7765 + f Lnet/minecraft/world/inventory/ContainerSynchronizer; synchronizer x field_29208 + f Z suppressRemoteUpdates y field_29209 + m ()Lnet/minecraft/world/inventory/MenuType; getType a method_17358 + m (I)Z isValidSlotIndex a method_40442 + p 1 slotIndex + m (II)V setData a method_7606 + p 1 id + p 2 data + m (IILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V clicked a method_7593 + p 1 slotId + p 2 button + p 3 clickType + p 4 player + m (IILnet/minecraft/world/item/ItemStack;)V setItem a method_7619 + c Puts an ItemStack in a slot. + p 1 slotId + p 2 stateId + p 3 stack + m (ILnet/minecraft/world/entity/player/Player;)Z isValidQuickcraftType a method_7600 + p 0 dragMode + p 1 player + m (ILnet/minecraft/world/item/ItemStack;)V setRemoteSlot a method_34245 + p 1 slot + p 2 stack + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/function/Supplier;)V triggerSlotListeners a method_34246 + p 1 slotIndex + p 2 stack + p 3 supplier + m (ILjava/util/List;Lnet/minecraft/world/item/ItemStack;)V initializeContents a method_7610 + p 1 stateId + p 2 items + p 3 carried + m (Lnet/minecraft/world/Container;)V slotsChanged a method_7609 + c Callback for when the crafting matrix is changed. + p 1 container + m (Lnet/minecraft/world/Container;I)V checkContainerSize a method_17359 + p 0 container + p 1 minSize + m (Lnet/minecraft/world/entity/player/Player;)V removed a method_7595 + c Called when the container is closed. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;I)Z clickMenuButton a method_7604 + c Handles the given Button-click on the server, currently only used by enchanting. Name is for legacy. + p 1 player + p 2 id + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/Container;)V clearContainer a method_7607 + p 1 player + p 2 container + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z tryItemClickBehaviourOverride a method_45409 + p 1 player + p 2 action + p 3 slot + p 4 clickedItem + p 5 carriedItem + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V transferState a method_34247 + p 1 menu + m (Lnet/minecraft/world/inventory/ContainerData;)V addDataSlots a method_17360 + p 1 array + m (Lnet/minecraft/world/inventory/ContainerData;I)V checkContainerDataCount a method_17361 + p 0 intArray + p 1 minSize + m (Lnet/minecraft/world/inventory/ContainerLevelAccess;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/Block;)Z stillValid a method_17695 + p 0 access + p 1 player + p 2 targetBlock + m (Lnet/minecraft/world/inventory/ContainerListener;)V addSlotListener a method_7596 + p 1 listener + m (Lnet/minecraft/world/inventory/ContainerSynchronizer;)V setSynchronizer a method_34248 + p 1 synchronizer + m (Lnet/minecraft/world/inventory/DataSlot;)Lnet/minecraft/world/inventory/DataSlot; addDataSlot a method_17362 + p 1 intValue + m (Lnet/minecraft/world/inventory/Slot;)Lnet/minecraft/world/inventory/Slot; addSlot a method_7621 + c Adds an item slot to this container + p 1 slot + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34249 a method_34249 + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;Z)Z canItemQuickReplace a method_7592 + c Checks if it's possible to add the given itemstack to the given slot. + p 0 slot + p 1 stack + p 2 stackSizeMatters + m (Lnet/minecraft/world/item/ItemStack;)V setRemoteCarried a method_34250 + p 1 remoteCarried + m (Lnet/minecraft/world/item/ItemStack;IIZ)Z moveItemStackTo a method_7616 + c Merges provided ItemStack with the first available one in the container/player inventor between minIndex (included) and maxIndex (excluded). Args : stack, minIndex, maxIndex, negativDirection. [!] the Container implementation do not check if the item is valid for the slot + p 1 stack + p 2 startIndex + p 3 endIndex + p 4 reverseDirection + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;)Z canTakeItemForPickAll a method_7613 + c Called to determine if the current slot is valid for the stack merging (double-click) code. The stack passed in is null for the initial slot that was double-clicked. + p 1 stack + p 2 slot + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34251 a method_34251 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_17696 a method_17696 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)I getRedstoneSignalFromBlockEntity a method_7608 + c Like the version that takes an inventory. If the given BlockEntity is not an Inventory, 0 is returned instead. + p 0 blockEntity + m (Ljava/util/Set;ILnet/minecraft/world/item/ItemStack;)I getQuickCraftPlaceCount a method_7617 + p 0 slots + p 1 type + p 2 stack + m ()V sendAllDataToRemote b method_34252 + m (I)Lnet/minecraft/world/inventory/Slot; getSlot b method_7611 + p 1 slotId + m (II)I getQuickcraftMask b method_7591 + p 0 quickCraftingHeader + p 1 quickCraftingType + m (IILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V doClick b method_30010 + p 1 slotId + p 2 button + p 3 clickType + p 4 player + m (ILnet/minecraft/world/item/ItemStack;)V setRemoteSlotNoCopy b method_37449 + p 1 slot + p 2 stack + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/function/Supplier;)V synchronizeSlotToRemote b method_34253 + p 1 slotIndex + p 2 stack + p 3 supplier + m (Lnet/minecraft/world/Container;)I getRedstoneSignalFromContainer b method_7618 + p 0 container + m (Lnet/minecraft/world/Container;I)Ljava/util/OptionalInt; findSlot b method_37418 + p 1 container + p 2 slotIndex + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid b method_7597 + c Determines whether supplied player can use this container + p 1 player + m (Lnet/minecraft/world/entity/player/Player;I)Lnet/minecraft/world/item/ItemStack; quickMoveStack b method_7601 + c Handle when the stack in slot {@code index} is shift-clicked. Normally this moves the stack between the player inventory and the other inventory(s). + p 1 player + p 2 index + m (Lnet/minecraft/world/inventory/ContainerListener;)V removeSlotListener b method_7603 + c Remove the given Listener. Method name is for legacy. + p 1 listener + m (Lnet/minecraft/world/inventory/Slot;)Z canDragTo b method_7615 + c Returns {@code true} if the player can "drag-spilt" items into this slot. Returns {@code true} by default. Called to check if the slot can be added to a list of Slots to split the held ItemStack across. + p 1 slot + m (Lnet/minecraft/world/item/ItemStack;)V setCarried b method_34254 + p 1 stack + m ()Lnet/minecraft/core/NonNullList; getItems c method_7602 + c Returns a list if {@code ItemStacks}, for each slot. + m (I)I getQuickcraftType c method_7620 + c Extracts the drag mode. Args : eventButton. Return (0 : evenly split, 1 : one item by slot, 2 : not used ?) + p 0 eventButton + m (II)V updateDataSlotListeners c method_37419 + p 1 slotIndex + p 2 value + m ()V broadcastChanges d method_7623 + c Looks for changes made in the container, sends them to every listener. + m (I)I getQuickcraftHeader d method_7594 + c Args : clickedButton, Returns (0 : start drag, 1 : add slot, 2 : end drag) + p 0 clickedButton + m (II)V synchronizeDataSlotToRemote d method_34715 + p 1 slotIndex + p 2 value + m ()V broadcastFullState e method_37420 + m ()V resetQuickCraft f method_7605 + c Reset the drag fields + m ()Lnet/minecraft/world/item/ItemStack; getCarried g method_34255 + m ()V suppressRemoteUpdates h method_34256 + m ()V resumeRemoteUpdates i method_34257 + m ()I getStateId j method_37421 + m ()I incrementStateId k method_37422 + m ()V synchronizeCarriedToRemote l method_34258 + m ()Lnet/minecraft/world/entity/SlotAccess; createCarriedSlotAccess m method_34259 + m ()Ljava/lang/String; method_30024 n method_30024 + m ()Ljava/lang/String; method_30011 o method_30011 + m (Lnet/minecraft/world/inventory/MenuType;I)V + p 1 menuType + p 2 containerId + m ()V +c net/minecraft/world/inventory/AbstractContainerMenu$1 cpu$1 net/minecraft/class_1703$1 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; field_29210 b field_29210 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V +c net/minecraft/world/inventory/AbstractFurnaceMenu cpv net/minecraft/class_1720 + f I INGREDIENT_SLOT k field_30738 + f I FUEL_SLOT l field_30739 + f I RESULT_SLOT m field_30740 + f I SLOT_COUNT n field_30741 + f I DATA_COUNT o field_30742 + f Lnet/minecraft/world/level/Level; level p field_7822 + f I INV_SLOT_START q field_30743 + f I INV_SLOT_END r field_30744 + f I USE_ROW_SLOT_START s field_30745 + f I USE_ROW_SLOT_END t field_30746 + f Lnet/minecraft/world/Container; container u field_7824 + f Lnet/minecraft/world/inventory/ContainerData; data v field_17286 + f Lnet/minecraft/world/item/crafting/RecipeType; recipeType w field_17494 + f Lnet/minecraft/world/inventory/RecipeBookType; recipeBookType x field_25762 + m (Lnet/minecraft/world/item/ItemStack;)Z canSmelt c method_7640 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFuel d method_16945 + p 1 stack + m ()F getBurnProgress q method_17363 + m ()F getLitProgress r method_17364 + m ()Z isLit s method_17365 + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/inventory/RecipeBookType;ILnet/minecraft/world/entity/player/Inventory;)V + p 1 menuType + p 2 recipeType + p 3 recipeBookType + p 4 containerId + p 5 playerInventory + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/inventory/RecipeBookType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 menuType + p 2 recipeType + p 3 recipeBookType + p 4 containerId + p 5 playerInventory + p 6 container + p 7 data +c net/minecraft/world/inventory/AnvilMenu cpw net/minecraft/class_1706 + f I COST_REPAIR_MATERIAL A field_30747 + f I COST_REPAIR_SACRIFICE B field_30748 + f I COST_INCOMPATIBLE_PENALTY C field_30749 + f I COST_RENAME D field_30750 + f I INPUT_SLOT_X_PLACEMENT E field_41894 + f I ADDITIONAL_SLOT_X_PLACEMENT F field_41895 + f I RESULT_SLOT_X_PLACEMENT G field_41896 + f I SLOT_Y_PLACEMENT H field_41897 + f I INPUT_SLOT k field_41898 + f I ADDITIONAL_SLOT l field_41899 + f I RESULT_SLOT m field_41900 + f I MAX_NAME_LENGTH n field_30751 + f Lorg/slf4j/Logger; LOGGER s field_7771 + f Z DEBUG_COST t field_30752 + f I repairItemCountCost u field_7776 + f Ljava/lang/String; itemName v field_7774 + f Lnet/minecraft/world/inventory/DataSlot; cost w field_7770 + f I COST_FAIL x field_30753 + f I COST_BASE y field_30754 + f I COST_ADDED_BASE z field_30755 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24922 a method_24922 + m (Ljava/lang/String;)Z setItemName a method_7625 + p 1 itemName + m (Ljava/lang/String;)Ljava/lang/String; validateName b method_52176 + p 0 itemName + m (I)I calculateIncreasedRepairCost e method_20398 + p 0 oldRepairCost + m (Lnet/minecraft/world/item/ItemStack;)Z method_48350 e method_48350 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48351 f method_48351 + m ()I getCost n method_17369 + c Gets the maximum xp cost + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access + m ()V +c net/minecraft/world/inventory/ArmorSlot cpx net/minecraft/class_9692 + f Lnet/minecraft/world/entity/LivingEntity; owner a field_51622 + f Lnet/minecraft/world/entity/EquipmentSlot; slot b field_51623 + f Lnet/minecraft/resources/ResourceLocation; emptyIcon g field_51624 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;IIILnet/minecraft/resources/ResourceLocation;)V + p 1 container + p 2 owner + p 3 slot + p 4 slotIndex + p 5 x + p 6 y + p 7 emptyIcon +c net/minecraft/world/inventory/BeaconMenu cpy net/minecraft/class_1704 + f I PAYMENT_SLOT k field_30756 + f I SLOT_COUNT l field_30757 + f I DATA_COUNT m field_30758 + f I INV_SLOT_START n field_30759 + f I INV_SLOT_END o field_30760 + f I USE_ROW_SLOT_START p field_30761 + f I USE_ROW_SLOT_END q field_30762 + f I NO_EFFECT r field_45758 + f Lnet/minecraft/world/Container; beacon s field_17287 + f Lnet/minecraft/world/inventory/BeaconMenu$PaymentSlot; paymentSlot t field_17288 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access u field_17289 + f Lnet/minecraft/world/inventory/ContainerData; beaconData v field_17290 + m (Ljava/util/Optional;Ljava/util/Optional;)V updateEffects a method_17372 + p 1 primaryEffect + p 2 secondaryEffect + m (Lnet/minecraft/core/Holder;)I encodeEffect a method_53173 + p 0 effect + m (I)Lnet/minecraft/core/Holder; decodeEffect e method_53174 + p 0 effectId + m ()I getLevels l method_17373 + m ()Lnet/minecraft/core/Holder; getPrimaryEffect m method_17374 + m ()Lnet/minecraft/core/Holder; getSecondaryEffect n method_17375 + m ()Z hasPayment o method_17376 + m (ILnet/minecraft/world/Container;)V + p 1 containerId + p 2 container + m (ILnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 container + p 3 beaconData + p 4 access +c net/minecraft/world/inventory/BeaconMenu$1 cpy$1 net/minecraft/class_1704$1 + m (Lnet/minecraft/world/inventory/BeaconMenu;I)V +c net/minecraft/world/inventory/BeaconMenu$PaymentSlot cpy$a net/minecraft/class_1704$class_1705 + m (Lnet/minecraft/world/inventory/BeaconMenu;Lnet/minecraft/world/Container;III)V + p 2 container + p 3 containerIndex + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/BlastFurnaceMenu cpz net/minecraft/class_3705 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 blastFurnaceContainer + p 4 blastFurnaceData +c net/minecraft/world/inventory/BrewingStandMenu cqa net/minecraft/class_1708 + f I BOTTLE_SLOT_START k field_30763 + f I BOTTLE_SLOT_END l field_30764 + f I INGREDIENT_SLOT m field_30765 + f I FUEL_SLOT n field_30766 + f I SLOT_COUNT o field_30767 + f I DATA_COUNT p field_30768 + f I INV_SLOT_START q field_30769 + f I INV_SLOT_END r field_30770 + f I USE_ROW_SLOT_START s field_30771 + f I USE_ROW_SLOT_END t field_30772 + f Lnet/minecraft/world/Container; brewingStand u field_7788 + f Lnet/minecraft/world/inventory/ContainerData; brewingStandData v field_17292 + f Lnet/minecraft/world/inventory/Slot; ingredientSlot w field_7787 + m ()I getFuel l method_17377 + m ()I getBrewingTicks m method_17378 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 brewingStandContainer + p 4 brewingStandData +c net/minecraft/world/inventory/BrewingStandMenu$FuelSlot cqa$a net/minecraft/class_1708$class_1709 + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlaceItem b method_7630 + c Returns {@code true} if the given {@link net.minecraft.world.item.ItemStack} is usable as fuel in the brewing stand. + p 0 itemStack + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/BrewingStandMenu$IngredientsSlot cqa$b net/minecraft/class_1708$class_1710 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing a field_51385 + m (Lnet/minecraft/world/item/alchemy/PotionBrewing;Lnet/minecraft/world/Container;III)V + p 1 potionBrewing + p 2 container + p 3 slot + p 4 x + p 5 y +c net/minecraft/world/inventory/BrewingStandMenu$PotionSlot cqa$c net/minecraft/class_1708$class_1711 + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlaceItem b method_7631 + c Returns {@code true} if this {@link net.minecraft.world.item.ItemStack} can be filled with a potion. + p 0 stack + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/CartographyTableMenu cqb net/minecraft/class_3910 + f I MAP_SLOT k field_30773 + f I ADDITIONAL_SLOT l field_30774 + f I RESULT_SLOT m field_30775 + f Lnet/minecraft/world/Container; container n field_17293 + f I INV_SLOT_START o field_30776 + f I INV_SLOT_END p field_30777 + f I USE_ROW_SLOT_START q field_30778 + f I USE_ROW_SLOT_END r field_30779 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access s field_17294 + f J lastSoundTime t field_20382 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer u field_19272 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17379 a method_17379 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V setupResultSlot a method_17381 + p 1 map + p 2 firstSlotStack + p 3 resultOutput + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17382 a method_17382 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/CartographyTableMenu$1 cqb$1 net/minecraft/class_3910$1 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_17298 b field_17298 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;I)V +c net/minecraft/world/inventory/CartographyTableMenu$2 cqb$2 net/minecraft/class_3910$2 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_19273 b field_19273 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;)V +c net/minecraft/world/inventory/CartographyTableMenu$3 cqb$3 net/minecraft/class_3910$3 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/CartographyTableMenu$4 cqb$4 net/minecraft/class_3910$4 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/CartographyTableMenu$5 cqb$5 net/minecraft/class_3910$5 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17301 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_17303 b field_17303 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17387 a method_17387 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/ChestMenu cqc net/minecraft/class_1707 + f I SLOTS_PER_ROW k field_30780 + f Lnet/minecraft/world/Container; container l field_17495 + f I containerRows m field_17496 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; oneRow a method_19244 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)Lnet/minecraft/world/inventory/ChestMenu; threeRows a method_19245 + p 0 containerId + p 1 playerInventory + p 2 container + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; twoRows b method_19246 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)Lnet/minecraft/world/inventory/ChestMenu; sixRows b method_19247 + p 0 containerId + p 1 playerInventory + p 2 container + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; threeRows c method_19248 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; fourRows d method_19249 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; fiveRows e method_19250 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; sixRows f method_19251 + p 0 containerId + p 1 playerInventory + m ()Lnet/minecraft/world/Container; getContainer l method_7629 + c Gets the inventory associated with this chest container.\n\n@see #field_75155_e + m ()I getRowCount m method_17388 + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;I)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 rows + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;I)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 container + p 5 rows +c net/minecraft/world/inventory/ClickAction cqd net/minecraft/class_5536 + f Lnet/minecraft/world/inventory/ClickAction; PRIMARY a field_27013 + f Lnet/minecraft/world/inventory/ClickAction; SECONDARY b field_27014 + f [Lnet/minecraft/world/inventory/ClickAction; $VALUES c field_27015 + m ()[Lnet/minecraft/world/inventory/ClickAction; $values a method_36672 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/ClickType cqe net/minecraft/class_1713 + f Lnet/minecraft/world/inventory/ClickType; PICKUP a field_7790 + f Lnet/minecraft/world/inventory/ClickType; QUICK_MOVE b field_7794 + f Lnet/minecraft/world/inventory/ClickType; SWAP c field_7791 + f Lnet/minecraft/world/inventory/ClickType; CLONE d field_7796 + f Lnet/minecraft/world/inventory/ClickType; THROW e field_7795 + f Lnet/minecraft/world/inventory/ClickType; QUICK_CRAFT f field_7789 + f Lnet/minecraft/world/inventory/ClickType; PICKUP_ALL g field_7793 + f [Lnet/minecraft/world/inventory/ClickType; $VALUES h field_7792 + m ()[Lnet/minecraft/world/inventory/ClickType; $values a method_36673 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/ContainerData cqf net/minecraft/class_3913 + m ()I getCount a method_17389 + m (I)I get a method_17390 + p 1 index + m (II)V set a method_17391 + p 1 index + p 2 value +c net/minecraft/world/inventory/ContainerLevelAccess cqg net/minecraft/class_3914 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; NULL a field_17304 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/inventory/ContainerLevelAccess; create a method_17392 + p 0 level + p 1 pos + m (Ljava/util/function/BiConsumer;)V execute a method_17393 + p 1 levelPosConsumer + m (Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_17394 a method_17394 + m (Ljava/util/function/BiFunction;)Ljava/util/Optional; evaluate a method_17395 + p 1 levelPosConsumer + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Ljava/lang/Object; evaluate a method_17396 + p 1 levelPosConsumer + p 2 defaultValue + m ()V +c net/minecraft/world/inventory/ContainerLevelAccess$1 cqg$1 net/minecraft/class_3914$1 + m ()V +c net/minecraft/world/inventory/ContainerLevelAccess$2 cqg$2 net/minecraft/class_3914$2 + f Lnet/minecraft/world/level/Level; val$level b field_17305 + f Lnet/minecraft/core/BlockPos; val$pos c field_17306 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/world/inventory/ContainerListener cqh net/minecraft/class_1712 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V dataChanged a method_7633 + p 1 containerMenu + p 2 dataSlotIndex + p 3 value + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;ILnet/minecraft/world/item/ItemStack;)V slotChanged a method_7635 + c Sends the contents of an inventory slot to the client-side Container. This doesn't have to match the actual contents of that slot. + p 1 containerToSend + p 2 dataSlotIndex + p 3 stack +c net/minecraft/world/inventory/ContainerSynchronizer cqi net/minecraft/class_5916 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V sendDataChange a method_34260 + p 1 container + p 2 id + p 3 value + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;ILnet/minecraft/world/item/ItemStack;)V sendSlotChange a method_34261 + p 1 container + p 2 slot + p 3 itemStack + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/item/ItemStack;)V sendCarriedChange a method_34262 + p 1 containerMenu + p 2 stack + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/core/NonNullList;Lnet/minecraft/world/item/ItemStack;[I)V sendInitialData a method_34263 + p 1 container + p 2 items + p 3 carriedItem + p 4 initialData +c net/minecraft/world/inventory/CrafterMenu cqj net/minecraft/class_8881 + f I SLOT_COUNT k field_46781 + f I INV_SLOT_START l field_46782 + f I INV_SLOT_END m field_46783 + f I USE_ROW_SLOT_START n field_46784 + f I USE_ROW_SLOT_END o field_46785 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer p field_46780 + f Lnet/minecraft/world/inventory/ContainerData; containerData q field_46786 + f Lnet/minecraft/world/entity/player/Player; player r field_46787 + f Lnet/minecraft/world/inventory/CraftingContainer; container s field_46788 + m (IZ)V setSlotState a method_54458 + p 1 slot + p 2 enabled + m (Lnet/minecraft/world/entity/player/Inventory;)V addSlots a method_54459 + p 1 playerInventory + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_54460 a method_54460 + m (I)Z isSlotDisabled e method_54461 + p 1 slot + m ()Z isPowered l method_54462 + m ()Lnet/minecraft/world/Container; getContainer m method_54463 + m ()V refreshRecipeResult n method_54464 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 container + p 4 containerData +c net/minecraft/world/inventory/CrafterSlot cqk net/minecraft/class_8882 + f Lnet/minecraft/world/inventory/CrafterMenu; menu a field_46789 + m (Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/CrafterMenu;)V + p 1 container + p 2 slot + p 3 x + p 4 y + p 5 menu +c net/minecraft/world/inventory/CraftingContainer cql net/minecraft/class_8566 + m ()Lnet/minecraft/world/item/crafting/CraftingInput; asCraftInput aE_ method_59961 + m ()Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; asPositionedCraftInput aF_ method_60501 + m ()I getWidth f method_17398 + m ()I getHeight g method_17397 + m ()Ljava/util/List; getItems h method_51305 +c net/minecraft/world/inventory/CraftingMenu cqm net/minecraft/class_1714 + f I RESULT_SLOT k field_30781 + f I CRAFT_SLOT_START l field_30782 + f I CRAFT_SLOT_END m field_30783 + f I INV_SLOT_START n field_30784 + f I INV_SLOT_END o field_30785 + f I USE_ROW_SLOT_START p field_30786 + f I USE_ROW_SLOT_END q field_30787 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots r field_7801 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots s field_7800 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access t field_7799 + f Lnet/minecraft/world/entity/player/Player; player u field_7797 + f Z placingRecipe v field_51625 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17402 a method_17402 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/inventory/ResultContainer;Lnet/minecraft/world/item/crafting/RecipeHolder;)V slotChangedCraftingGrid a method_17399 + p 0 menu + p 1 level + p 2 player + p 3 craftSlots + p 4 resultSlots + p 5 recipe + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17400 a method_17400 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_59962 a method_59962 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17401 a method_17401 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/DataSlot cqn net/minecraft/class_3915 + f I prevValue a field_17307 + m ()Lnet/minecraft/world/inventory/DataSlot; standalone a method_17403 + m (I)V set a method_17404 + p 1 value + m (Lnet/minecraft/world/inventory/ContainerData;I)Lnet/minecraft/world/inventory/DataSlot; forContainer a method_17405 + p 0 data + p 1 idx + m ([II)Lnet/minecraft/world/inventory/DataSlot; shared a method_17406 + p 0 data + p 1 idx + m ()I get b method_17407 + m ()Z checkAndClearUpdateFlag c method_17408 + m ()V +c net/minecraft/world/inventory/DataSlot$1 cqn$1 net/minecraft/class_3915$1 + f Lnet/minecraft/world/inventory/ContainerData; val$container a field_17308 + f I val$dataId b field_17309 + m (Lnet/minecraft/world/inventory/ContainerData;I)V +c net/minecraft/world/inventory/DataSlot$2 cqn$2 net/minecraft/class_3915$2 + f [I val$storage a field_17310 + f I val$index b field_17311 + m ([II)V +c net/minecraft/world/inventory/DataSlot$3 cqn$3 net/minecraft/class_3915$3 + f I value a field_17312 + m ()V +c net/minecraft/world/inventory/DispenserMenu cqo net/minecraft/class_1716 + f I SLOT_COUNT k field_30788 + f I INV_SLOT_START l field_30789 + f I INV_SLOT_END m field_30790 + f I USE_ROW_SLOT_START n field_30791 + f I USE_ROW_SLOT_END o field_30792 + f Lnet/minecraft/world/Container; dispenser p field_7806 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/EnchantmentMenu cqp net/minecraft/class_1718 + f [I costs k field_7808 + f [I enchantClue l field_7812 + f [I levelClue m field_7810 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LAPIS_LAZULI n field_45143 + f Lnet/minecraft/world/Container; enchantSlots o field_7809 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access p field_7813 + f Lnet/minecraft/util/RandomSource; random q field_7811 + f Lnet/minecraft/world/inventory/DataSlot; enchantmentSeed r field_7814 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17412 a method_17412 + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/world/entity/player/Player;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17410 a method_17410 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17411 a method_17411 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/ItemStack;II)Ljava/util/List; getEnchantmentList a method_7637 + p 1 registryAccess + p 2 stack + p 3 slot + p 4 cost + m ()I getGoldCount l method_7638 + m ()I getEnchantmentSeed m method_17413 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access + m ()V +c net/minecraft/world/inventory/EnchantmentMenu$1 cqp$1 net/minecraft/class_1718$1 + f Lnet/minecraft/world/inventory/EnchantmentMenu; field_7815 b field_7815 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;I)V +c net/minecraft/world/inventory/EnchantmentMenu$2 cqp$2 net/minecraft/class_1718$2 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/EnchantmentMenu$3 cqp$3 net/minecraft/class_1718$3 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/FurnaceFuelSlot cqq net/minecraft/class_1717 + f Lnet/minecraft/world/inventory/AbstractFurnaceMenu; menu a field_17083 + m (Lnet/minecraft/world/item/ItemStack;)Z isBucket c method_7636 + p 0 stack + m (Lnet/minecraft/world/inventory/AbstractFurnaceMenu;Lnet/minecraft/world/Container;III)V + p 1 furnaceMenu + p 2 furnaceContainer + p 3 slot + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/FurnaceMenu cqr net/minecraft/class_3858 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 furnaceContainer + p 4 furnaceData +c net/minecraft/world/inventory/FurnaceResultSlot cqs net/minecraft/class_1719 + f Lnet/minecraft/world/entity/player/Player; player a field_7818 + f I removeCount b field_7819 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/Container;III)V + p 1 player + p 2 container + p 3 slot + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/GrindstoneMenu cqt net/minecraft/class_3803 + f I MAX_NAME_LENGTH k field_30793 + f I INPUT_SLOT l field_30794 + f I ADDITIONAL_SLOT m field_30795 + f I RESULT_SLOT n field_30796 + f I INV_SLOT_START o field_30797 + f I INV_SLOT_END p field_30798 + f I USE_ROW_SLOT_START q field_30799 + f I USE_ROW_SLOT_END r field_30800 + f Lnet/minecraft/world/Container; resultSlots s field_16773 + c The inventory slot that stores the output of the crafting recipe. + f Lnet/minecraft/world/Container; repairSlots t field_16772 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access u field_16775 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17415 a method_17415 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; computeResult a method_58070 + p 1 inputItem + p 2 additionalItem + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_58071 a method_58071 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_58072 a method_58072 + m (Lnet/minecraft/core/Holder;)Z method_58073 a method_58073 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; mergeItems b method_58074 + p 1 inputItem + p 2 additionalItem + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; removeNonCursesFrom c method_16693 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V mergeEnchantsFrom c method_20268 + p 1 inputItem + p 2 additionalItem + m ()V createResult l method_16695 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/GrindstoneMenu$1 cqt$1 net/minecraft/class_3803$1 + f Lnet/minecraft/world/inventory/GrindstoneMenu; field_16776 b field_16776 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;I)V +c net/minecraft/world/inventory/GrindstoneMenu$2 cqt$2 net/minecraft/class_3803$2 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/GrindstoneMenu$3 cqt$3 net/minecraft/class_3803$3 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/GrindstoneMenu$4 cqt$4 net/minecraft/class_3803$4 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_16779 + f Lnet/minecraft/world/inventory/GrindstoneMenu; field_16780 b field_16780 + m (Lnet/minecraft/world/level/Level;)I getExperienceAmount a method_17416 + c Returns the total amount of XP stored in all the input slots of this container. The return value is randomized, so that it returns between 50% and 100% of the total XP. + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17417 a method_17417 + m (Lnet/minecraft/world/item/ItemStack;)I getExperienceFromItem g method_16696 + c Returns the total amount of XP stored in the enchantments of this stack. + p 1 stack + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/HopperMenu cqu net/minecraft/class_1722 + f I CONTAINER_SIZE k field_30801 + f Lnet/minecraft/world/Container; hopper l field_7826 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/HorseInventoryMenu cqv net/minecraft/class_1724 + f Lnet/minecraft/world/Container; horseContainer k field_7836 + f Lnet/minecraft/world/Container; armorContainer l field_48834 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse m field_7837 + f I SLOT_BODY_ARMOR n field_48835 + f I SLOT_HORSE_INVENTORY_START o field_48836 + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;I)V + p 1 containerId + p 2 inventory + p 3 horseContainer + p 4 horse + p 5 columns +c net/minecraft/world/inventory/HorseInventoryMenu$1 cqv$1 net/minecraft/class_1724$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; val$horse a field_7838 + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/inventory/HorseInventoryMenu$2 cqv$2 net/minecraft/class_1724$2 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; val$horse a field_7840 + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;IIILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/inventory/InventoryMenu cqw net/minecraft/class_1723 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_LEGGINGS A field_21671 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_BOOTS B field_21672 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_SHIELD C field_21673 + f Z active D field_7827 + f Ljava/util/Map; TEXTURE_EMPTY_SLOTS E field_7829 + f [Lnet/minecraft/world/entity/EquipmentSlot; SLOT_IDS F field_7832 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots G field_7831 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots H field_7830 + f Lnet/minecraft/world/entity/player/Player; owner I field_7828 + f I CONTAINER_ID k field_30802 + f I RESULT_SLOT l field_30803 + f I CRAFT_SLOT_START m field_30804 + f I CRAFT_SLOT_COUNT n field_49739 + f I CRAFT_SLOT_END o field_30805 + f I ARMOR_SLOT_START p field_30806 + f I ARMOR_SLOT_COUNT q field_49740 + f I ARMOR_SLOT_END r field_30807 + f I INV_SLOT_START s field_30808 + f I INV_SLOT_END t field_30809 + f I USE_ROW_SLOT_START u field_30810 + f I USE_ROW_SLOT_END v field_30811 + f I SHIELD_SLOT w field_30812 + f Lnet/minecraft/resources/ResourceLocation; BLOCK_ATLAS x field_21668 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_HELMET y field_21669 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_CHESTPLATE z field_21670 + m (I)Z isHotbarSlot f method_36211 + p 0 index + m ()Lnet/minecraft/world/inventory/CraftingContainer; getCraftSlots r method_29281 + m (Lnet/minecraft/world/entity/player/Inventory;ZLnet/minecraft/world/entity/player/Player;)V + p 1 playerInventory + p 2 active + p 3 owner + m ()V +c net/minecraft/world/inventory/InventoryMenu$1 cqw$1 net/minecraft/class_1723$1 + f Lnet/minecraft/world/entity/player/Player; val$owner a field_39410 + m (Lnet/minecraft/world/inventory/InventoryMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/entity/player/Player;)V +c net/minecraft/world/inventory/ItemCombinerMenu cqx net/minecraft/class_4861 + f I INVENTORY_SLOTS_PER_ROW k field_41901 + f I INVENTORY_SLOTS_PER_COLUMN l field_41902 + f Ljava/util/List; inputSlotIndexes m field_41903 + f I resultSlotIndex n field_41904 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access o field_22481 + f Lnet/minecraft/world/entity/player/Player; player p field_22482 + f Lnet/minecraft/world/Container; inputSlots q field_22480 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots r field_22479 + m (Lnet/minecraft/world/entity/player/Inventory;)V createInventorySlots a method_48353 + p 1 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V onTake a method_24923 + p 1 player + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_24924 a method_24924 + m (Lnet/minecraft/world/entity/player/Player;Z)Z mayPickup a method_24927 + p 1 player + p 2 hasStack + m (Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition;)V createInputSlots a method_48354 + p 1 slotDefinition + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBlock a method_24925 + p 1 state + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24926 b method_24926 + m (Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition;)V createResultSlot b method_48355 + p 1 slotDefinition + m (Lnet/minecraft/world/item/ItemStack;)Z canMoveIntoInputSlots c method_48356 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getSlotToQuickMoveTo d method_48357 + p 1 stack + m (I)Lnet/minecraft/world/SimpleContainer; createContainer e method_48358 + p 1 size + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition; createInputSlotDefinitions l method_48352 + m ()V createResult m method_24928 + c Called when the Anvil Input Slot changes, calculates the new result and puts it in the output slot. + m ()I getInventorySlotStart n method_48359 + m ()I getResultSlot o method_48360 + m ()I getInventorySlotEnd p method_48361 + m ()I getUseRowStart q method_48362 + m ()I getUseRowEnd r method_48363 + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 access +c net/minecraft/world/inventory/ItemCombinerMenu$1 cqx$1 net/minecraft/class_4861$1 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; val$slot a field_41905 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition;)V +c net/minecraft/world/inventory/ItemCombinerMenu$2 cqx$2 net/minecraft/class_4861$2 + f Lnet/minecraft/world/inventory/ItemCombinerMenu; field_22483 a field_22483 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/ItemCombinerMenu$3 cqx$3 net/minecraft/class_4861$3 + f Lnet/minecraft/world/inventory/ItemCombinerMenu; field_7778 b field_7778 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;I)V +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition cqy net/minecraft/class_8047 + f Ljava/util/List; slots a field_41907 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; resultSlot b field_41908 + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; create a method_48364 + m (I)Z hasSlot a method_48365 + p 1 slot + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; getResultSlot b method_48366 + m (I)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; getSlot b method_48367 + p 1 slot + m ()Ljava/util/List; getSlots c method_48368 + m ()I getNumOfInputSlots d method_48369 + m ()I getResultSlotIndex e method_48370 + m ()Ljava/util/List; getInputSlotIndexes f method_48371 + m (Ljava/util/List;Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition;)V + p 1 slots + p 2 resultSlot +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder cqy$a net/minecraft/class_8047$class_8048 + f Ljava/util/List; slots a field_41909 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; resultSlot b field_41910 + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition; build a method_48372 + m (III)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; withResultSlot a method_48373 + p 1 slotIndex + p 2 x + p 3 y + m (IIILjava/util/function/Predicate;)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; withSlot a method_48374 + p 1 slotIndex + p 2 x + p 3 y + p 4 mayPlace + m (Lnet/minecraft/world/item/ItemStack;)Z method_48375 a method_48375 + m ()V +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition cqy$b net/minecraft/class_8047$class_8049 + f I slotIndex a comp_1204 + f I x b comp_1205 + f I y c comp_1206 + f Ljava/util/function/Predicate; mayPlace d comp_1207 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; EMPTY e field_41911 + m ()I slotIndex a comp_1204 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48376 a method_48376 + m ()I x b comp_1205 + m ()I y c comp_1206 + m ()Ljava/util/function/Predicate; mayPlace d comp_1207 + m (IIILjava/util/function/Predicate;)V + m ()V +c net/minecraft/world/inventory/LecternMenu cqz net/minecraft/class_3916 + f I BUTTON_PREV_PAGE k field_30820 + f I BUTTON_NEXT_PAGE l field_30821 + f I BUTTON_TAKE_BOOK m field_30822 + f I BUTTON_PAGE_JUMP_RANGE_START n field_30823 + f I DATA_COUNT o field_30824 + f I SLOT_COUNT p field_30825 + f Lnet/minecraft/world/Container; lectern q field_17313 + f Lnet/minecraft/world/inventory/ContainerData; lecternData r field_17314 + m ()Lnet/minecraft/world/item/ItemStack; getBook l method_17418 + m ()I getPage m method_17419 + m (I)V + p 1 containerId + m (ILnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 lectern + p 3 lecternData +c net/minecraft/world/inventory/LecternMenu$1 cqz$1 net/minecraft/class_3916$1 + f Lnet/minecraft/world/inventory/LecternMenu; field_17315 a field_17315 + m (Lnet/minecraft/world/inventory/LecternMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu cra net/minecraft/class_1726 + f Lnet/minecraft/world/Container; outputContainer A field_17323 + f I PATTERN_NOT_SET k field_39120 + f I INV_SLOT_START l field_30826 + f I INV_SLOT_END m field_30827 + f I USE_ROW_SLOT_START n field_30828 + f I USE_ROW_SLOT_END o field_30829 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access p field_17316 + f Lnet/minecraft/world/inventory/DataSlot; selectedBannerPatternIndex q field_17317 + f Ljava/util/List; selectablePatterns r field_39121 + f Ljava/lang/Runnable; slotUpdateListener s field_17318 + f Lnet/minecraft/core/HolderGetter; patternGetter t field_49741 + f Lnet/minecraft/world/inventory/Slot; bannerSlot u field_17319 + f Lnet/minecraft/world/inventory/Slot; dyeSlot v field_17320 + f Lnet/minecraft/world/inventory/Slot; patternSlot w field_17321 + f Lnet/minecraft/world/inventory/Slot; resultSlot x field_17322 + f J lastSoundTime y field_20383 + f Lnet/minecraft/world/Container; inputContainer z field_7850 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17420 a method_17420 + m (Ljava/lang/Runnable;)V registerUpdateListener a method_17423 + p 1 listener + m (Lnet/minecraft/core/Holder;)V setupResultSlot a method_7648 + c Creates an output banner ItemStack based on the patterns, dyes, etc. in the loom. + p 1 pattern + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_57322 a method_57322 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getSelectablePatterns c method_43705 + p 1 stack + m (I)Z isValidPatternIndex e method_45016 + p 1 index + m ()Ljava/util/List; getSelectablePatterns l method_43706 + m ()I getSelectedBannerPatternIndex m method_7647 + m ()Lnet/minecraft/world/inventory/Slot; getBannerSlot n method_17428 + m ()Lnet/minecraft/world/inventory/Slot; getDyeSlot o method_17429 + m ()Lnet/minecraft/world/inventory/Slot; getPatternSlot p method_17430 + m ()Lnet/minecraft/world/inventory/Slot; getResultSlot q method_17431 + m ()V method_17432 r method_17432 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/LoomMenu$1 cra$1 net/minecraft/class_1726$1 + f Lnet/minecraft/world/inventory/LoomMenu; field_7851 b field_7851 + m (Lnet/minecraft/world/inventory/LoomMenu;I)V +c net/minecraft/world/inventory/LoomMenu$2 cra$2 net/minecraft/class_1726$2 + f Lnet/minecraft/world/inventory/LoomMenu; field_17324 b field_17324 + m (Lnet/minecraft/world/inventory/LoomMenu;I)V +c net/minecraft/world/inventory/LoomMenu$3 cra$3 net/minecraft/class_1726$3 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$4 cra$4 net/minecraft/class_1726$4 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$5 cra$5 net/minecraft/class_1726$5 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$6 cra$6 net/minecraft/class_1726$6 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17325 + f Lnet/minecraft/world/inventory/LoomMenu; field_7855 b field_7855 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17433 a method_17433 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/MenuConstructor crb net/minecraft/class_1270 +c net/minecraft/world/inventory/MenuType crc net/minecraft/class_3917 + f Lnet/minecraft/world/inventory/MenuType$MenuSupplier; constructor A field_17344 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x1 a field_18664 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x2 b field_18665 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x3 c field_17326 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x4 d field_18666 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x5 e field_18667 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x6 f field_17327 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_3x3 g field_17328 + f Lnet/minecraft/world/inventory/MenuType; CRAFTER_3x3 h field_46790 + f Lnet/minecraft/world/inventory/MenuType; ANVIL i field_17329 + f Lnet/minecraft/world/inventory/MenuType; BEACON j field_17330 + f Lnet/minecraft/world/inventory/MenuType; BLAST_FURNACE k field_17331 + f Lnet/minecraft/world/inventory/MenuType; BREWING_STAND l field_17332 + f Lnet/minecraft/world/inventory/MenuType; CRAFTING m field_17333 + f Lnet/minecraft/world/inventory/MenuType; ENCHANTMENT n field_17334 + f Lnet/minecraft/world/inventory/MenuType; FURNACE o field_17335 + f Lnet/minecraft/world/inventory/MenuType; GRINDSTONE p field_17336 + f Lnet/minecraft/world/inventory/MenuType; HOPPER q field_17337 + f Lnet/minecraft/world/inventory/MenuType; LECTERN r field_17338 + f Lnet/minecraft/world/inventory/MenuType; LOOM s field_17339 + f Lnet/minecraft/world/inventory/MenuType; MERCHANT t field_17340 + f Lnet/minecraft/world/inventory/MenuType; SHULKER_BOX u field_17341 + f Lnet/minecraft/world/inventory/MenuType; SMITHING v field_22484 + f Lnet/minecraft/world/inventory/MenuType; SMOKER w field_17342 + f Lnet/minecraft/world/inventory/MenuType; CARTOGRAPHY_TABLE x field_17343 + f Lnet/minecraft/world/inventory/MenuType; STONECUTTER y field_17625 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures z field_41923 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; create a method_17434 + p 1 containerId + p 2 playerInventory + m (Ljava/lang/String;Lnet/minecraft/world/inventory/MenuType$MenuSupplier;)Lnet/minecraft/world/inventory/MenuType; register a method_17435 + p 0 key + p 1 factory + m (Ljava/lang/String;Lnet/minecraft/world/inventory/MenuType$MenuSupplier;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/inventory/MenuType; register a method_48387 + p 0 key + p 1 factory + p 2 requiredFeatures + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/LecternMenu; method_17436 b method_17436 + m (Lnet/minecraft/world/inventory/MenuType$MenuSupplier;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 constructor + p 2 requiredFeatures + m ()V +c net/minecraft/world/inventory/MenuType$MenuSupplier crc$a net/minecraft/class_3917$class_3918 +c net/minecraft/world/inventory/MerchantContainer crd net/minecraft/class_1725 + f Lnet/minecraft/world/item/trading/Merchant; merchant b field_7844 + f Lnet/minecraft/core/NonNullList; itemStacks c field_7845 + f Lnet/minecraft/world/item/trading/MerchantOffer; activeOffer d field_7843 + f I selectionHint e field_7842 + f I futureXp f field_18668 + m (I)V setSelectionHint c method_7643 + p 1 currentRecipeIndex + m (I)Z isPaymentSlot d method_7644 + c if par1 slot has changed, does resetRecipeAndSlots need to be called? + p 1 slot + m ()V updateSellItem f method_7645 + m ()Lnet/minecraft/world/item/trading/MerchantOffer; getActiveOffer g method_7642 + m ()I getFutureXp h method_19252 + m (Lnet/minecraft/world/item/trading/Merchant;)V + p 1 merchant +c net/minecraft/world/inventory/MerchantMenu cre net/minecraft/class_1728 + f I PAYMENT1_SLOT k field_30830 + f I PAYMENT2_SLOT l field_30831 + f I RESULT_SLOT m field_30832 + f I INV_SLOT_START n field_30833 + f I INV_SLOT_END o field_30834 + f I USE_ROW_SLOT_START p field_30835 + f I USE_ROW_SLOT_END q field_30836 + f I SELLSLOT1_X r field_30837 + f I SELLSLOT2_X s field_30838 + f I BUYSLOT_X t field_30839 + f I ROW_Y u field_30840 + f Lnet/minecraft/world/item/trading/Merchant; trader v field_7863 + f Lnet/minecraft/world/inventory/MerchantContainer; tradeContainer w field_7861 + f I merchantLevel x field_18669 + f Z showProgressBar y field_18670 + f Z canRestock z field_19358 + m (ILnet/minecraft/world/item/trading/ItemCost;)V moveFromInventoryToPaymentSlot a method_20214 + p 1 paymentSlotIndex + p 2 payment + m (Lnet/minecraft/world/item/trading/ItemCost;)V method_57323 a method_57323 + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setOffers a method_17437 + c {@link net.minecraft.client.multiplayer.ClientPacketListener} uses this to set offers for the client side MerchantContainer. + p 1 offers + m (Z)V setShowProgressBar a method_19253 + p 1 showProgressBar + m (Z)V setCanRestock b method_20700 + p 1 canRestock + m (I)V setSelectionHint e method_7650 + p 1 currentRecipeIndex + m (I)V setXp f method_19255 + p 1 xp + m (I)V setMerchantLevel g method_19257 + p 1 level + m (I)V tryMoveItems h method_20215 + p 1 selectedMerchantRecipe + m ()I getTraderXp l method_19254 + m ()I getFutureTraderXp m method_19256 + m ()I getTraderLevel n method_19258 + m ()Z canRestock o method_20701 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers p method_17438 + m ()Z showProgressBar q method_19259 + m ()V playTradeSound r method_20595 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/trading/Merchant;)V + p 1 containerId + p 2 playerInventory + p 3 trader +c net/minecraft/world/inventory/MerchantResultSlot crf net/minecraft/class_1727 + f Lnet/minecraft/world/inventory/MerchantContainer; slots a field_7860 + f Lnet/minecraft/world/entity/player/Player; player b field_7857 + f I removeCount g field_7859 + f Lnet/minecraft/world/item/trading/Merchant; merchant h field_7858 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/trading/Merchant;Lnet/minecraft/world/inventory/MerchantContainer;III)V + p 1 player + p 2 merchant + p 3 slots + p 4 slot + p 5 xPosition + p 6 yPosition +c net/minecraft/world/inventory/NonInteractiveResultSlot crg net/minecraft/class_8883 + m (Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/PlayerEnderChestContainer crh net/minecraft/class_1730 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; activeChest b field_7864 + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V setActiveChest a method_7661 + p 1 enderChestBlockEntity + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)Z isActiveChest b method_31556 + p 1 enderChest + m ()V +c net/minecraft/world/inventory/RecipeBookMenu cri net/minecraft/class_1729 + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillCraftSlotsStackedContents a method_7654 + p 1 itemHelper + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z recipeMatches a method_7652 + p 1 recipe + m (ZLnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/server/level/ServerPlayer;)V handlePlacement a method_17697 + p 1 placeAll + p 2 recipe + p 3 player + m ()V beginPlacingRecipe an_ method_59963 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V finishPlacingRecipe b method_59964 + p 1 recipe + m (I)Z shouldMoveToInventory e method_32339 + p 1 slotIndex + m ()V clearCraftingContent l method_7657 + m ()I getResultSlotIndex m method_7655 + m ()I getGridWidth n method_7653 + m ()I getGridHeight o method_7656 + m ()I getSize p method_7658 + m ()Lnet/minecraft/world/inventory/RecipeBookType; getRecipeBookType t method_30264 + m (Lnet/minecraft/world/inventory/MenuType;I)V + p 1 menuType + p 2 containerId +c net/minecraft/world/inventory/RecipeBookType crj net/minecraft/class_5421 + f Lnet/minecraft/world/inventory/RecipeBookType; CRAFTING a field_25763 + f Lnet/minecraft/world/inventory/RecipeBookType; FURNACE b field_25764 + f Lnet/minecraft/world/inventory/RecipeBookType; BLAST_FURNACE c field_25765 + f Lnet/minecraft/world/inventory/RecipeBookType; SMOKER d field_25766 + f [Lnet/minecraft/world/inventory/RecipeBookType; $VALUES e field_25767 + m ()[Lnet/minecraft/world/inventory/RecipeBookType; $values a method_36674 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/RecipeCraftingHolder crk net/minecraft/class_1732 + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;)V awardUsedRecipes a method_7664 + p 1 player + p 2 items + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V setRecipeUsed a method_7662 + p 1 recipe + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z setRecipeUsed a method_7665 + p 1 level + p 2 players + p 3 recipe + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipeUsed d method_7663 +c net/minecraft/world/inventory/ResultContainer crl net/minecraft/class_1731 + f Lnet/minecraft/core/NonNullList; itemStacks b field_7866 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipeUsed c field_7865 + m ()V +c net/minecraft/world/inventory/ResultSlot crm net/minecraft/class_1734 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots a field_7870 + f Lnet/minecraft/world/entity/player/Player; player b field_7868 + f I removeCount g field_7869 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/Container;III)V + p 1 player + p 2 craftSlots + p 3 container + p 4 slot + p 5 xPosition + p 6 yPosition +c net/minecraft/world/inventory/ShulkerBoxMenu crn net/minecraft/class_1733 + f I CONTAINER_SIZE k field_30841 + f Lnet/minecraft/world/Container; container l field_7867 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/ShulkerBoxSlot cro net/minecraft/class_1736 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/SimpleContainerData crp net/minecraft/class_3919 + f [I ints a field_17345 + m (I)V + p 1 size +c net/minecraft/world/inventory/Slot crq net/minecraft/class_1735 + f I slot a field_7875 + f Lnet/minecraft/world/Container; container c field_7871 + f I index d field_7874 + f I x e field_7873 + f I y f field_7872 + m ()I getMaxStackSize a method_7675 + c Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1 in the case of armor slots) + m (I)Lnet/minecraft/world/item/ItemStack; remove a method_7671 + c Decrease the size of the stack in slot (first int arg) by the amount of the second int arg. Returns the new stack. + p 1 amount + m (IILnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; tryRemove a method_34264 + p 1 count + p 2 decrement + p 3 player + m (Lnet/minecraft/world/entity/player/Player;)Z mayPickup a method_7674 + c Return whether this slot's stack can be taken from this slot. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V onTake a method_7667 + p 1 player + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlace a method_7680 + c Check if the stack is allowed to be placed in this slot, used for armor slots as well as furnace fuel. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V onQuickCraft a method_7678 + c Typically increases an internal count, then calls {@code onCrafting(item)}. + p 1 stack + c the output - ie, iron ingots, and pickaxes, not ore and wood. + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V setByPlayer a method_48931 + p 1 newStack + p 2 oldStack + m (Lnet/minecraft/world/item/ItemStack;)I getMaxStackSize a_ method_7676 + p 1 stack + m ()Lcom/mojang/datafixers/util/Pair; getNoItemIcon b method_7679 + m (I)V onSwapCraft b method_7672 + p 1 numItemsCrafted + m (IILnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; safeTake b method_32753 + p 1 count + p 2 decrement + p 3 player + m (Lnet/minecraft/world/entity/player/Player;)Z allowModification b method_32754 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34265 b method_34265 + m (Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; safeInsert b method_32755 + p 1 stack + p 2 increment + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V onQuickCraft b method_7670 + c if par2 has more items than par1, onCrafting(item,countIncrease) is called + p 1 oldStack + p 2 newStack + m (Lnet/minecraft/world/item/ItemStack;)V checkTakeAchievements b_ method_7669 + p 1 stack + c the output - ie, iron ingots, and pickaxes, not ore and wood. + m ()V setChanged c method_7668 + c Called when the stack in a Slot changes + m ()Z isActive d method_7682 + c Actually only call when we want to render the white square effect over the slots. Return always True, except for the armor slot of the Donkey/Mule (we can't interact with the Undead and Skeleton horses) + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; safeInsert d method_32756 + p 1 stack + m ()Z isHighlightable e method_51306 + m (Lnet/minecraft/world/item/ItemStack;)V setByPlayer e method_53512 + p 1 stack + m ()Z isFake f method_55059 + m (Lnet/minecraft/world/item/ItemStack;)V set f method_7673 + c Helper method to put a stack in the slot. + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getItem g method_7677 + c Helper function to get the stack in the slot. + m ()Z hasItem h method_7681 + c Returns if this slot contains a stack. + m ()I getContainerSlot i method_34266 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/SlotRange crr net/minecraft/class_9348 + m ()Lit/unimi/dsi/fastutil/ints/IntList; slots a method_58075 + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/inventory/SlotRange; of a method_58076 + p 0 name + p 1 values + m ()I size b method_58077 +c net/minecraft/world/inventory/SlotRange$1 crr$1 net/minecraft/class_9348$1 + f Lit/unimi/dsi/fastutil/ints/IntList; val$slots a field_49742 + f Ljava/lang/String; val$name b field_49743 + m (Lit/unimi/dsi/fastutil/ints/IntList;Ljava/lang/String;)V +c net/minecraft/world/inventory/SlotRanges crs net/minecraft/class_9349 + f Lcom/mojang/serialization/Codec; CODEC a field_49744 + f Ljava/util/List; SLOTS b field_49745 + f Ljava/util/function/Function; NAME_LOOKUP c field_49746 + m ()Ljava/util/stream/Stream; allNames a method_58078 + m (Lnet/minecraft/world/inventory/SlotRange;)Z method_58079 a method_58079 + m (Ljava/lang/String;)Lnet/minecraft/world/inventory/SlotRange; nameToIds a method_58080 + p 0 name + m (Ljava/lang/String;I)Lnet/minecraft/world/inventory/SlotRange; create a method_58081 + p 0 name + p 1 value + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/inventory/SlotRange; create a method_58082 + p 0 name + p 1 values + m (Ljava/lang/String;[I)Lnet/minecraft/world/inventory/SlotRange; create a method_58083 + p 0 name + p 1 values + m (Ljava/util/ArrayList;)V method_58084 a method_58084 + m (Ljava/util/List;Ljava/lang/String;I)V addSingleSlot a method_58085 + p 0 list + p 1 name + p 2 value + m (Ljava/util/List;Ljava/lang/String;II)V addSlotRange a method_58086 + p 0 list + p 1 prefix + p 2 startValue + p 3 size + m (Ljava/util/List;Ljava/lang/String;[I)V addSlots a method_58087 + p 0 list + p 1 name + p 2 values + m ()Ljava/util/stream/Stream; singleSlotNames b method_58088 + m (Ljava/lang/String;)Ljava/lang/String; method_58089 b method_58089 + m ()[Lnet/minecraft/world/inventory/SlotRange; method_58090 c method_58090 + m ()V + m ()V +c net/minecraft/world/inventory/SmithingMenu crt net/minecraft/class_4862 + f I TEMPLATE_SLOT k field_41924 + f I BASE_SLOT l field_41925 + f I ADDITIONAL_SLOT m field_41926 + f I RESULT_SLOT n field_41927 + f I TEMPLATE_SLOT_X_PLACEMENT s field_41928 + f I BASE_SLOT_X_PLACEMENT t field_41929 + f I ADDITIONAL_SLOT_X_PLACEMENT u field_41930 + f I SLOT_Y_PLACEMENT v field_41931 + f I RESULT_SLOT_X_PLACEMENT w field_41932 + f Lnet/minecraft/world/level/Level; level x field_25385 + f Lnet/minecraft/world/item/crafting/RecipeHolder; selectedRecipe y field_25386 + f Ljava/util/List; recipes z field_25668 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/util/stream/IntStream; method_52562 a method_52562 + m (Lnet/minecraft/world/item/crafting/SmithingRecipe;Lnet/minecraft/world/item/ItemStack;)Ljava/util/OptionalInt; findSlotMatchingIngredient a method_48389 + p 0 recipe + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24929 a method_24929 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_51713 b method_51713 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_51714 c method_51714 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_48394 d method_48394 + m (I)V shrinkStackInSlot e method_29539 + p 1 index + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/OptionalInt; findSlotToQuickMoveTo e method_52563 + p 1 stack + m (I)Z method_52564 f method_52564 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48393 f method_48393 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48395 g method_48395 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48396 h method_48396 + m ()Ljava/util/List; getRelevantItems n method_51307 + m ()Lnet/minecraft/world/item/crafting/SmithingRecipeInput; createRecipeInput p method_59965 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/SmokerMenu cru net/minecraft/class_3706 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 smokerContainer + p 4 smokerData +c net/minecraft/world/inventory/StackedContentsCompatible crv net/minecraft/class_1737 + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillStackedContents a method_7683 + p 1 contents +c net/minecraft/world/inventory/StonecutterMenu crw net/minecraft/class_3971 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer A field_19173 + c The inventory that stores the output of the crafting recipe. + f I INPUT_SLOT k field_30842 + f I RESULT_SLOT l field_30843 + f Lnet/minecraft/world/inventory/Slot; inputSlot m field_17627 + f Lnet/minecraft/world/inventory/Slot; resultSlot n field_17628 + c The inventory slot that stores the output of the crafting recipe. + f Lnet/minecraft/world/Container; container o field_17629 + f I INV_SLOT_START p field_30844 + f I INV_SLOT_END q field_30845 + f I USE_ROW_SLOT_START r field_30846 + f I USE_ROW_SLOT_END s field_30847 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access t field_17630 + f Lnet/minecraft/world/inventory/DataSlot; selectedRecipeIndex u field_17631 + c The index of the selected recipe in the GUI. + f Lnet/minecraft/world/level/Level; level v field_17632 + f Ljava/util/List; recipes w field_17633 + f Lnet/minecraft/world/item/ItemStack; input x field_17634 + c The {@linkplain net.minecraft.world.item.ItemStack} set in the input slot by the player. + f J lastSoundTime y field_17635 + c Stores the game time of the last time the player took items from the the crafting result slot. This is used to prevent the sound from being played multiple times on the same tick. + f Ljava/lang/Runnable; slotUpdateListener z field_17636 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)V setupRecipeList a method_17855 + p 1 container + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17856 a method_17856 + m (Ljava/lang/Runnable;)V registerUpdateListener a method_17859 + p 1 listener + m (Lnet/minecraft/world/Container;)Lnet/minecraft/world/item/crafting/SingleRecipeInput; createRecipeInput c method_59966 + p 0 container + m (I)Z isValidRecipeIndex e method_30160 + p 1 recipeIndex + m ()I getSelectedRecipeIndex l method_17862 + c Returns the index of the selected recipe. + m ()Ljava/util/List; getRecipes m method_17863 + m ()I getNumRecipes n method_17864 + m ()Z hasInputItem o method_17865 + m ()V setupResultSlot p method_17866 + m ()V method_17867 q method_17867 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/StonecutterMenu$1 crw$1 net/minecraft/class_3971$1 + f Lnet/minecraft/world/inventory/StonecutterMenu; field_17637 b field_17637 + m (Lnet/minecraft/world/inventory/StonecutterMenu;I)V +c net/minecraft/world/inventory/StonecutterMenu$2 crw$2 net/minecraft/class_3971$2 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17638 + f Lnet/minecraft/world/inventory/StonecutterMenu; field_17639 b field_17639 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17868 a method_17868 + m ()Ljava/util/List; getRelevantItems j method_51308 + m (Lnet/minecraft/world/inventory/StonecutterMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/TransientCraftingContainer crx net/minecraft/class_1715 + f Lnet/minecraft/core/NonNullList; items b field_7805 + f I width c field_7804 + f I height d field_7803 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; menu e field_7802 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V + p 1 menu + p 2 width + p 3 height + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;IILnet/minecraft/core/NonNullList;)V + p 1 menu + p 2 width + p 3 height + p 4 items +c net/minecraft/world/inventory/package-info cry net/minecraft/class_6077 +c net/minecraft/world/inventory/tooltip/BundleTooltip crz net/minecraft/class_5631 + f Lnet/minecraft/world/item/component/BundleContents; contents a comp_2377 + m ()Lnet/minecraft/world/item/component/BundleContents; contents a comp_2377 + m (Lnet/minecraft/world/item/component/BundleContents;)V +c net/minecraft/world/inventory/tooltip/TooltipComponent csa net/minecraft/class_5632 +c net/minecraft/world/inventory/tooltip/package-info csb net/minecraft/class_6078 +c net/minecraft/world/item/AdventureModePredicate csc net/minecraft/class_6538 + f Lcom/mojang/serialization/Codec; CODEC a field_49245 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49246 + f Lnet/minecraft/network/chat/Component; CAN_BREAK_HEADER c field_49247 + f Lnet/minecraft/network/chat/Component; CAN_PLACE_HEADER d field_49248 + f Lcom/mojang/serialization/Codec; SIMPLE_CODEC e field_49249 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49250 + f Lnet/minecraft/network/chat/Component; UNKNOWN_USE g field_49251 + f Ljava/util/List; predicates h field_49252 + f Z showInTooltip i field_49253 + f Ljava/util/List; tooltip j field_49254 + f Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; lastCheckedBlock k field_34450 + f Z lastResult l field_34451 + f Z checksBlockEntity m field_34452 + m ()Z showInTooltip a method_57324 + m (Lnet/minecraft/advancements/critereon/BlockPredicate;)Ljava/util/stream/Stream; method_57325 a method_57325 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57326 a method_57326 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Ljava/util/List; method_57327 a method_57327 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_38070 + p 1 block + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;Z)Z areSameBlocks a method_38071 + p 0 first + p 1 second + p 2 checkNbt + m (Ljava/util/List;)Ljava/util/List; computeTooltip a method_57329 + p 0 predicates + m (Ljava/util/function/Consumer;)V addToTooltip a method_57330 + p 1 tooltipAdder + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; method_57328 a method_57328 + m (Z)Lnet/minecraft/world/item/AdventureModePredicate; withTooltip a method_58402 + p 1 showInTooltip + m ()Ljava/lang/String; method_57331 b method_57331 + m (Lnet/minecraft/advancements/critereon/BlockPredicate;)Lnet/minecraft/world/item/AdventureModePredicate; method_57332 b method_57332 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Ljava/util/List; method_57333 b method_57333 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Lcom/mojang/serialization/DataResult; method_57334 c method_57334 + m (Ljava/util/List;ZLjava/util/List;)V + p 1 predicates + p 2 showInTooltip + p 3 tooltip + m (Ljava/util/List;Z)V + p 1 predicates + p 2 showInTooltip + m ()V +c net/minecraft/world/item/AirItem csd net/minecraft/class_1739 + f Lnet/minecraft/world/level/block/Block; block a field_7882 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/AnimalArmorItem cse net/minecraft/class_4059 + f Lnet/minecraft/resources/ResourceLocation; textureLocation j field_47823 + f Lnet/minecraft/resources/ResourceLocation; overlayTextureLocation k field_49255 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; bodyType l field_47824 + m ()Lnet/minecraft/resources/ResourceLocation; getTexture b method_18454 + m ()Lnet/minecraft/resources/ResourceLocation; getOverlayTexture c method_57335 + m ()Lnet/minecraft/world/item/AnimalArmorItem$BodyType; getBodyType d method_55756 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/AnimalArmorItem$BodyType;ZLnet/minecraft/world/item/Item$Properties;)V + p 1 armorMaterial + p 2 bodyType + p 3 hasOverlay + p 4 properties +c net/minecraft/world/item/AnimalArmorItem$BodyType cse$a net/minecraft/class_4059$class_9076 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; EQUESTRIAN a field_47825 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; CANINE b field_47826 + f Ljava/util/function/Function; textureLocator c field_47827 + f Lnet/minecraft/sounds/SoundEvent; breakingSound d field_49256 + f [Lnet/minecraft/world/item/AnimalArmorItem$BodyType; $VALUES e field_47828 + m ()[Lnet/minecraft/world/item/AnimalArmorItem$BodyType; $values a method_55757 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_56686 a method_56686 + m (Ljava/lang/String;)Ljava/lang/String; method_56687 a method_56687 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_56688 b method_56688 + m (Ljava/lang/String;ILjava/util/function/Function;Lnet/minecraft/sounds/SoundEvent;)V + p 3 textureLocator + p 4 breakingSound + m ()V +c net/minecraft/world/item/ArmorItem csf net/minecraft/class_1738 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_ITEM_BEHAVIOR a field_7879 + f Lnet/minecraft/world/item/ArmorItem$Type; type b field_41933 + f Lnet/minecraft/core/Holder; material c field_7881 + f Ljava/util/function/Supplier; defaultModifiers j field_23741 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ArmorItem$Type;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_56689 a method_56689 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Z dispenseArmor a method_7684 + p 0 blockSource + p 1 armorItem + m ()Lnet/minecraft/world/item/ArmorItem$Type; getType f method_48398 + m ()Lnet/minecraft/core/Holder; getMaterial h method_7686 + m ()I getDefense k method_7687 + m ()F getToughness l method_26353 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ArmorItem$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 material + p 2 type + p 3 properties + m ()V +c net/minecraft/world/item/ArmorItem$1 csf$1 net/minecraft/class_1738$1 + m ()V +c net/minecraft/world/item/ArmorItem$Type csf$a net/minecraft/class_1738$class_8051 + f Lnet/minecraft/world/item/ArmorItem$Type; HELMET a field_41934 + f Lnet/minecraft/world/item/ArmorItem$Type; CHESTPLATE b field_41935 + f Lnet/minecraft/world/item/ArmorItem$Type; LEGGINGS c field_41936 + f Lnet/minecraft/world/item/ArmorItem$Type; BOOTS d field_41937 + f Lnet/minecraft/world/item/ArmorItem$Type; BODY e field_48838 + f Lcom/mojang/serialization/Codec; CODEC f field_48839 + f Lnet/minecraft/world/entity/EquipmentSlot; slot g field_41938 + f Ljava/lang/String; name h field_41939 + f I durability i field_49257 + f [Lnet/minecraft/world/item/ArmorItem$Type; $VALUES j field_41940 + m ()Lnet/minecraft/world/entity/EquipmentSlot; getSlot a method_48399 + m (I)I getDurability a method_56690 + p 1 durabilityFactor + m ()Ljava/lang/String; getName b method_48400 + m ()Z hasTrims d method_56691 + m ()[Lnet/minecraft/world/item/ArmorItem$Type; $values e method_48401 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot;ILjava/lang/String;)V + p 3 slot + p 4 durability + p 5 name + m ()V +c net/minecraft/world/item/ArmorMaterial csg net/minecraft/class_1741 + f Lcom/mojang/serialization/Codec; CODEC a field_48840 + f Ljava/util/Map; defense b comp_2298 + f I enchantmentValue c comp_2299 + f Lnet/minecraft/core/Holder; equipSound d comp_2300 + f Ljava/util/function/Supplier; repairIngredient e comp_2301 + f Ljava/util/List; layers f comp_2302 + f F toughness g comp_2303 + f F knockbackResistance h comp_2304 + m ()Ljava/util/Map; defense a comp_2298 + m (Lnet/minecraft/world/item/ArmorItem$Type;)I getDefense a method_48403 + p 1 type + m ()I enchantmentValue b comp_2299 + m ()Lnet/minecraft/core/Holder; equipSound c comp_2300 + m ()Ljava/util/function/Supplier; repairIngredient d comp_2301 + m ()Ljava/util/List; layers e comp_2302 + m ()F toughness f comp_2303 + m ()F knockbackResistance g comp_2304 + m (Ljava/util/Map;ILnet/minecraft/core/Holder;Ljava/util/function/Supplier;Ljava/util/List;FF)V + m ()V +c net/minecraft/world/item/ArmorMaterial$Layer csg$a net/minecraft/class_1741$class_9196 + f Lnet/minecraft/resources/ResourceLocation; assetName a field_48841 + f Ljava/lang/String; suffix b field_48842 + f Z dyeable c field_48843 + f Lnet/minecraft/resources/ResourceLocation; innerTexture d field_48844 + f Lnet/minecraft/resources/ResourceLocation; outerTexture e field_48845 + m ()Z dyeable a method_56692 + m (Z)Lnet/minecraft/resources/ResourceLocation; texture a method_56693 + p 1 innerTexture + m (ZLjava/lang/String;)Ljava/lang/String; method_56694 a method_56694 + m (Z)Lnet/minecraft/resources/ResourceLocation; resolveTexture b method_56695 + p 1 innerTexture + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Z)V + p 1 assetName + p 2 suffix + p 3 dyeable + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 assetName +c net/minecraft/world/item/ArmorMaterials csh net/minecraft/class_1740 + f Lnet/minecraft/core/Holder; LEATHER a field_7897 + f Lnet/minecraft/core/Holder; CHAIN b field_7887 + f Lnet/minecraft/core/Holder; IRON c field_7892 + f Lnet/minecraft/core/Holder; GOLD d field_7895 + f Lnet/minecraft/core/Holder; DIAMOND e field_7889 + f Lnet/minecraft/core/Holder; TURTLE f field_7890 + f Lnet/minecraft/core/Holder; NETHERITE g field_21977 + f Lnet/minecraft/core/Holder; ARMADILLO h field_48846 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_56696 a method_56696 + m (Ljava/lang/String;Ljava/util/EnumMap;ILnet/minecraft/core/Holder;FFLjava/util/function/Supplier;)Lnet/minecraft/core/Holder; register a method_56698 + p 0 name + p 1 defense + p 2 enchantmentValue + p 3 equipSound + p 4 toughness + p 5 knockbackResistance + p 6 repairIngredient + m (Ljava/lang/String;Ljava/util/EnumMap;ILnet/minecraft/core/Holder;FFLjava/util/function/Supplier;Ljava/util/List;)Lnet/minecraft/core/Holder; register a method_56699 + p 0 name + p 1 defense + p 2 enchantmentValue + p 3 equipSound + p 4 toughness + p 5 knockbackResistance + p 6 repairIngridient + p 7 layers + m (Ljava/util/EnumMap;)V method_48405 a method_48405 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_56697 + p 0 registry + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_24356 b method_24356 + m (Ljava/util/EnumMap;)V method_48406 b method_48406 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7693 c method_7693 + m (Ljava/util/EnumMap;)V method_48407 c method_48407 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7692 d method_7692 + m (Ljava/util/EnumMap;)V method_48408 d method_48408 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7691 e method_7691 + m (Ljava/util/EnumMap;)V method_48409 e method_48409 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7689 f method_7689 + m (Ljava/util/EnumMap;)V method_48410 f method_48410 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7690 g method_7690 + m (Ljava/util/EnumMap;)V method_48411 g method_48411 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7688 h method_7688 + m (Ljava/util/EnumMap;)V method_48412 h method_48412 + m ()V + m ()V +c net/minecraft/world/item/ArmorStandItem csi net/minecraft/class_1742 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ArrowItem csj net/minecraft/class_1744 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; createArrow a method_7702 + p 1 level + p 2 ammo + p 3 shooter + p 4 weapon + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/AxeItem csk net/minecraft/class_1743 + f Ljava/util/Map; STRIPPABLES a field_7898 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; evaluateNewBlockState a method_54760 + p 1 level + p 2 pos + p 3 player + p 4 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getStripped a method_34716 + p 1 unstrippedState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34717 a method_34717 + m (Lnet/minecraft/world/item/context/UseOnContext;)Z playerHasShieldUseIntent b method_59967 + p 0 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_54761 b method_54761 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/BannerItem csl net/minecraft/class_1746 + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)V appendHoverTextFromBannerBlockEntityTag a method_7705 + p 0 stack + p 1 tooltipComponents + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_7706 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/BannerPatternItem csm net/minecraft/class_1745 + f Lnet/minecraft/tags/TagKey; bannerPattern a field_7900 + m ()Lnet/minecraft/tags/TagKey; getBannerPattern b method_7704 + m ()Lnet/minecraft/network/chat/MutableComponent; getDisplayName c method_7703 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/Item$Properties;)V + p 1 bannerPattern + p 2 properties +c net/minecraft/world/item/BedItem csn net/minecraft/class_1748 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/BlockItem cso net/minecraft/class_1747 + f Lnet/minecraft/world/level/block/Block; block a field_7901 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V setBlockEntityData a method_57338 + p 0 stack + p 1 blockEntityType + p 2 blockEntityData + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/InteractionResult; place a method_7712 + p 1 context + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/world/level/block/state/BlockState;)Z placeBlock a method_7708 + p 1 context + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Z updateCustomBlockEntityTag a method_7714 + p 0 level + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V updateBlockEntityComponents a method_57339 + p 0 level + p 1 poa + p 2 stack + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/sounds/SoundEvent; getPlaceSound a method_19260 + p 1 state + m (Ljava/util/Map;Lnet/minecraft/world/item/Item;)V registerBlocks a method_7713 + p 1 blockToItemMap + p 2 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Z updateCustomBlockEntityTag a method_7710 + p 1 pos + p 2 level + p 3 player + p 4 stack + p 5 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateBlockStateFromTag a method_18084 + p 1 pos + p 2 level + p 3 stack + p 4 state + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/item/context/BlockPlaceContext; updatePlacementContext b method_16356 + p 1 context + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlace b method_7709 + p 1 context + p 2 state + m ()Z mustSurvive c method_20360 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/BlockState; getPlacementState c method_7707 + p 1 context + m ()Lnet/minecraft/world/level/block/Block; getBlock d method_7711 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/BoatItem csp net/minecraft/class_1749 + f Ljava/util/function/Predicate; ENTITY_PREDICATE a field_17497 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; type b field_7902 + f Z hasChest c field_38211 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/HitResult;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/entity/vehicle/Boat; getBoat a method_42296 + p 1 level + p 2 hitResult + p 3 stack + p 4 player + m (ZLnet/minecraft/world/entity/vehicle/Boat$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 hasChest + p 2 type + p 3 properties + m ()V +c net/minecraft/world/item/BoneMealItem csq net/minecraft/class_1752 + f I GRASS_SPREAD_WIDTH a field_30851 + f I GRASS_SPREAD_HEIGHT b field_30852 + f I GRASS_COUNT_MULTIPLIER c field_30853 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z growCrop a method_7720 + p 0 stack + p 1 level + p 2 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z growWaterPlant a method_7719 + p 0 stack + p 1 level + p 2 pos + p 3 clickedSide + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V addGrowthParticles a method_7721 + p 0 level + p 1 pos + p 2 data + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40006 a method_40006 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/block/state/BlockState; method_40128 a method_40128 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/block/state/BlockState; method_40130 b method_40130 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BoneMealItem$1 csq$1 net/minecraft/class_1752$1 + f [I $SwitchMap$net$minecraft$world$level$block$BonemealableBlock$Type a field_47829 + m ()V +c net/minecraft/world/item/BookItem csr net/minecraft/class_1751 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BottleItem css net/minecraft/class_1754 + m (Lnet/minecraft/world/entity/AreaEffectCloud;)Z method_7726 a method_7726 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; turnBottleIntoItem a method_7725 + p 1 bottleStack + p 2 player + p 3 filledBottleStack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BowItem cst net/minecraft/class_1753 + f I MAX_DRAW_DURATION a field_30855 + f I DEFAULT_RANGE b field_30856 + m (I)F getPowerForTime a method_7722 + c Gets the velocity of the arrow entity from the bow's charge + p 0 charge + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BrushItem csu net/minecraft/class_8162 + f I ANIMATION_DURATION a field_43390 + f I USE_DURATION b field_42683 + m (Lnet/minecraft/world/entity/Entity;)Z method_51309 a method_51309 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/phys/HitResult; calculateHitResult a method_49999 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/HumanoidArm;)V spawnDustParticles a method_49184 + p 1 level + p 2 hitResult + p 3 state + p 4 pos + p 5 arm + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BrushItem$1 csu$1 net/minecraft/class_8162$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_42684 + m ()V +c net/minecraft/world/item/BrushItem$DustParticlesDelta csu$a net/minecraft/class_8162$class_8163 + f D xd a comp_1286 + f D yd b comp_1287 + f D zd c comp_1288 + f D ALONG_SIDE_DELTA d field_42685 + f D OUT_FROM_SIDE_DELTA e field_42686 + m ()D xd a comp_1286 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/BrushItem$DustParticlesDelta; fromDirection a method_49185 + p 0 pos + p 1 direction + m ()D yd b comp_1287 + m ()D zd c comp_1288 + m (DDD)V +c net/minecraft/world/item/BucketItem csv net/minecraft/class_1755 + f Lnet/minecraft/world/level/material/Fluid; content a field_7905 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/sounds/SoundEvent;)V method_32342 a method_32342 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V playEmptySound a method_7727 + p 1 player + p 2 level + p 3 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; getEmptySuccessItem a method_7732 + p 0 bucketStack + p 1 player + m (Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/item/Item$Properties;)V + p 1 content + p 2 properties +c net/minecraft/world/item/BundleItem csw net/minecraft/class_5537 + f I BAR_COLOR a field_27016 + f I TOOLTIP_MAX_WEIGHT b field_51352 + m (Lnet/minecraft/world/entity/Entity;)V playRemoveOneSound a method_38074 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_57341 a method_57341 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Z dropContents a method_32757 + p 0 stack + p 1 player + m (Lnet/minecraft/world/entity/Entity;)V playInsertSound b method_38076 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V playDropContentsSound c method_38077 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)F getFullnessDisplay c method_31561 + p 0 stack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/ChorusFruitItem csx net/minecraft/class_1757 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/CompassItem csy net/minecraft/class_1759 + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/GlobalPos; getSpawnPosition a method_43123 + p 0 level + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ComplexItem csz net/minecraft/class_1762 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/network/protocol/Packet; getUpdatePacket a method_7757 + p 1 stack + p 2 level + p 3 player + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/CreativeModeTab cta net/minecraft/class_1761 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_BACKGROUND a field_52021 + f Lnet/minecraft/network/chat/Component; displayName b field_26391 + f Lnet/minecraft/resources/ResourceLocation; backgroundTexture c field_7919 + f Z canScroll d field_7920 + f Z showTitle e field_7917 + f Z alignedRight f field_41031 + f Lnet/minecraft/world/item/CreativeModeTab$Row; row g field_41032 + f I column h field_41033 + f Lnet/minecraft/world/item/CreativeModeTab$Type; type i field_41034 + f Lnet/minecraft/world/item/ItemStack; iconItemStack j field_7934 + f Ljava/util/Collection; displayItems k field_40859 + f Ljava/util/Set; displayItemsSearchTab l field_40860 + f Ljava/util/function/Supplier; iconGenerator m field_41036 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; displayItemsGenerator n field_41037 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_7737 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;)V buildContents a method_47306 + p 1 parameters + m (Lnet/minecraft/world/item/CreativeModeTab$Row;I)Lnet/minecraft/world/item/CreativeModeTab$Builder; builder a method_47307 + p 0 row + p 1 column + m (Lnet/minecraft/world/item/ItemStack;)Z contains a method_45412 + p 1 stack + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; createTextureLocation a method_60733 + p 0 name + m ()Lnet/minecraft/world/item/ItemStack; getIconItem b method_7747 + m ()Lnet/minecraft/resources/ResourceLocation; getBackgroundTexture c method_7742 + m ()Z showTitle d method_7754 + m ()Z canScroll e method_7756 + m ()I column f method_7743 + m ()Lnet/minecraft/world/item/CreativeModeTab$Row; row g method_47309 + m ()Z hasAnyItems h method_47310 + m ()Z shouldDisplay i method_47311 + m ()Z isAlignedRight j method_7752 + m ()Lnet/minecraft/world/item/CreativeModeTab$Type; getType k method_47312 + m ()Ljava/util/Collection; getDisplayItems l method_47313 + m ()Ljava/util/Collection; getSearchTabDisplayItems m method_45414 + m ()Ljava/lang/IllegalStateException; method_51310 n method_51310 + m (Lnet/minecraft/world/item/CreativeModeTab$Row;ILnet/minecraft/world/item/CreativeModeTab$Type;Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator;)V + p 1 row + p 2 column + p 3 type + p 4 displayName + p 5 iconGenerator + p 6 displayItemGenerator + m ()V +c net/minecraft/world/item/CreativeModeTab$Builder cta$a net/minecraft/class_1761$class_7913 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; EMPTY_GENERATOR a field_41038 + f Lnet/minecraft/world/item/CreativeModeTab$Row; row b field_41039 + f I column c field_41040 + f Lnet/minecraft/network/chat/Component; displayName d field_41041 + f Ljava/util/function/Supplier; iconGenerator e field_41042 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; displayItemsGenerator f field_41043 + f Z canScroll g field_41044 + f Z showTitle h field_41045 + f Z alignedRight i field_41046 + f Lnet/minecraft/world/item/CreativeModeTab$Type; type j field_41047 + f Lnet/minecraft/resources/ResourceLocation; backgroundTexture k field_41048 + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; alignedRight a method_47315 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/CreativeModeTab$Builder; backgroundTexture a method_47319 + p 1 backgroundTexture + m (Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator;)Lnet/minecraft/world/item/CreativeModeTab$Builder; displayItems a method_47317 + p 1 displayItemsGenerator + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_47316 a method_47316 + m (Lnet/minecraft/world/item/CreativeModeTab$Type;)Lnet/minecraft/world/item/CreativeModeTab$Builder; type a method_47318 + p 1 type + m (Ljava/util/function/Supplier;)Lnet/minecraft/world/item/CreativeModeTab$Builder; icon a method_47320 + p 1 icon + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/item/CreativeModeTab$Builder; title a method_47321 + p 1 title + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; hideTitle b method_47322 + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; noScrollBar c method_47323 + m ()Lnet/minecraft/world/item/CreativeModeTab; build d method_47324 + m ()Lnet/minecraft/world/item/ItemStack; method_47325 e method_47325 + m (Lnet/minecraft/world/item/CreativeModeTab$Row;I)V + p 1 row + p 2 column + m ()V +c net/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator cta$b net/minecraft/class_1761$class_7914 +c net/minecraft/world/item/CreativeModeTab$ItemDisplayBuilder cta$c net/minecraft/class_1761$class_7703 + f Ljava/util/Collection; tabContents a field_40187 + f Ljava/util/Set; searchTabContents b field_40188 + f Lnet/minecraft/world/item/CreativeModeTab; tab c field_40189 + f Lnet/minecraft/world/flag/FeatureFlagSet; featureFlagSet d field_40190 + m (Lnet/minecraft/world/item/CreativeModeTab;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 tab + p 2 featureFlagSet +c net/minecraft/world/item/CreativeModeTab$ItemDisplayParameters cta$d net/minecraft/class_1761$class_8128 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures a comp_1251 + f Z hasPermissions b comp_1252 + f Lnet/minecraft/core/HolderLookup$Provider; holders c comp_1253 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures a comp_1251 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z needsUpdate a method_48932 + p 1 enabledFeatures + p 2 hasPermissions + p 3 holders + m ()Z hasPermissions b comp_1252 + m ()Lnet/minecraft/core/HolderLookup$Provider; holders c comp_1253 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/world/item/CreativeModeTab$Output cta$e net/minecraft/class_1761$class_7704 + m (Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_45419 a method_45419 + m (Lnet/minecraft/world/item/ItemStack;)V accept a method_45420 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V accept a method_45417 + p 1 stack + p 2 tabVisibility + m (Lnet/minecraft/world/level/ItemLike;)V accept a method_45421 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V accept a method_45422 + p 1 item + p 2 tabVisibility + m (Ljava/util/Collection;)V acceptAll a method_45423 + p 1 stacks + m (Ljava/util/Collection;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V acceptAll a method_45424 + p 1 stacks + p 2 tabVisibility +c net/minecraft/world/item/CreativeModeTab$Row cta$f net/minecraft/class_1761$class_7915 + f Lnet/minecraft/world/item/CreativeModeTab$Row; TOP a field_41049 + f Lnet/minecraft/world/item/CreativeModeTab$Row; BOTTOM b field_41050 + f [Lnet/minecraft/world/item/CreativeModeTab$Row; $VALUES c field_41051 + m ()[Lnet/minecraft/world/item/CreativeModeTab$Row; $values a method_47326 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTab$TabVisibility cta$g net/minecraft/class_1761$class_7705 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; PARENT_AND_SEARCH_TABS a field_40191 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; PARENT_TAB_ONLY b field_40192 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; SEARCH_TAB_ONLY c field_40193 + f [Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; $VALUES d field_40194 + m ()[Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; $values a method_45425 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTab$Type cta$h net/minecraft/class_1761$class_7916 + f Lnet/minecraft/world/item/CreativeModeTab$Type; CATEGORY a field_41052 + f Lnet/minecraft/world/item/CreativeModeTab$Type; INVENTORY b field_41053 + f Lnet/minecraft/world/item/CreativeModeTab$Type; HOTBAR c field_41054 + f Lnet/minecraft/world/item/CreativeModeTab$Type; SEARCH d field_41055 + f [Lnet/minecraft/world/item/CreativeModeTab$Type; $VALUES e field_41056 + m ()[Lnet/minecraft/world/item/CreativeModeTab$Type; $values a method_47327 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTabs ctb net/minecraft/class_7706 + f Lnet/minecraft/resources/ResourceLocation; INVENTORY_BACKGROUND a field_52022 + f Lnet/minecraft/resources/ResourceLocation; SEARCH_BACKGROUND b field_52023 + f Lnet/minecraft/resources/ResourceKey; BUILDING_BLOCKS c field_40195 + f Lnet/minecraft/resources/ResourceKey; COLORED_BLOCKS d field_41059 + f Lnet/minecraft/resources/ResourceKey; NATURAL_BLOCKS e field_40743 + f Lnet/minecraft/resources/ResourceKey; FUNCTIONAL_BLOCKS f field_40197 + f Lnet/minecraft/resources/ResourceKey; REDSTONE_BLOCKS g field_40198 + f Lnet/minecraft/resources/ResourceKey; HOTBAR h field_40199 + f Lnet/minecraft/resources/ResourceKey; SEARCH i field_40200 + f Lnet/minecraft/resources/ResourceKey; TOOLS_AND_UTILITIES j field_41060 + f Lnet/minecraft/resources/ResourceKey; COMBAT k field_40202 + f Lnet/minecraft/resources/ResourceKey; FOOD_AND_DRINKS l field_41061 + f Lnet/minecraft/resources/ResourceKey; INGREDIENTS m field_41062 + f Lnet/minecraft/resources/ResourceKey; SPAWN_EGGS n field_40205 + f Lnet/minecraft/resources/ResourceKey; OP_BLOCKS o field_41063 + f Lnet/minecraft/resources/ResourceKey; INVENTORY p field_40206 + f Ljava/util/Comparator; PAINTING_COMPARATOR q field_42465 + f Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters; CACHED_PARAMETERS r field_42466 + m ()V validate a method_47334 + m (Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/core/Holder$Reference;)V method_48935 a method_48935 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/Holder$Reference;)Z method_58650 a method_58650 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z tryRebuildTabContents a method_47330 + p 0 enabledFeatures + p 1 hasPermissions + p 2 registries + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;)V buildAllTabContents a method_47337 + p 0 parameters + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51311 a method_51311 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab;)V method_47331 a method_47331 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51312 a method_51312 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateSuspiciousStews a method_47332 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48934 a method_48934 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$RegistryLookup;Ljava/util/function/Predicate;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generatePresetPaintings a method_48937 + p 0 output + p 1 registries + p 2 paintingVariants + p 3 predicate + p 4 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51313 a method_51313 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateEnchantmentBookTypesOnlyMaxLevel a method_45428 + p 0 output + p 1 enchantments + p 2 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/Item;Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateInstrumentTypes a method_45426 + p 0 output + p 1 instruments + p 2 item + p 3 instrument + p 4 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/flag/FeatureFlagSet;)V generatePotionEffectTypes a method_45427 + p 0 output + p 1 potions + p 2 item + p 3 tabVisibility + p 4 requiredFeatures + m (Lnet/minecraft/world/item/CreativeModeTab;)Z method_47333 a method_47333 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/core/HolderSet$Named;)V method_48939 a method_48939 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/world/item/ItemStack; method_48940 a method_48940 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; method_48941 a method_48941 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_51317 + p 0 name + m (Lnet/minecraft/core/Holder$Reference;)Ljava/util/stream/Stream; method_59969 a method_59969 + m (Lnet/minecraft/core/Holder$Reference;I)Lnet/minecraft/world/item/ItemStack; method_59970 a method_59970 + m (Lnet/minecraft/core/Holder;)Z method_51314 a method_51314 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/item/CreativeModeTab; bootstrap a method_51315 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51316 a method_51316 + m (Lnet/minecraft/nbt/CompoundTag;)V method_58091 a method_58091 + m ()Lnet/minecraft/world/item/CreativeModeTab; getDefaultTab b method_47328 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51318 b method_51318 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab;)V method_47338 b method_47338 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51319 b method_51319 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateOminousVials b method_58652 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48947 b method_48947 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51324 b method_51324 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateEnchantmentBookTypesAllLevels b method_45430 + p 0 output + p 1 enchantments + p 2 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab;)Z method_47340 b method_47340 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/world/item/ItemStack; method_59972 b method_59972 + m (Lnet/minecraft/core/Holder;)Z method_51320 b method_51320 + m ()Ljava/util/List; tabs c method_47335 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51321 c method_51321 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51322 c method_51322 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateFireworksAllDurations c method_47339 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48952 c method_48952 + m ()Ljava/util/List; allTabs d method_47341 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51323 d method_51323 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51326 d method_51326 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48954 d method_48954 + m ()Lnet/minecraft/world/item/CreativeModeTab; searchTab e method_47344 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51325 e method_51325 + m ()Ljava/util/stream/Stream; streamAllTabs f method_51327 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51328 f method_51328 + m ()Lnet/minecraft/world/item/ItemStack; method_51329 g method_51329 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51330 g method_51330 + m ()Lnet/minecraft/world/item/ItemStack; method_51331 h method_51331 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51332 h method_51332 + m ()Lnet/minecraft/world/item/ItemStack; method_51333 i method_51333 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51334 i method_51334 + m ()Lnet/minecraft/world/item/ItemStack; method_51335 j method_51335 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51336 j method_51336 + m ()Lnet/minecraft/world/item/ItemStack; method_51337 k method_51337 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51338 k method_51338 + m ()Lnet/minecraft/world/item/ItemStack; method_51339 l method_51339 + m ()Lnet/minecraft/world/item/ItemStack; method_51340 m method_51340 + m ()Lnet/minecraft/world/item/ItemStack; method_51341 n method_51341 + m ()Lnet/minecraft/world/item/ItemStack; method_51342 o method_51342 + m ()Lnet/minecraft/world/item/ItemStack; method_51343 p method_51343 + m ()Lnet/minecraft/world/item/ItemStack; method_51344 q method_51344 + m ()Lnet/minecraft/world/item/ItemStack; method_51345 r method_51345 + m ()Lnet/minecraft/world/item/ItemStack; method_51346 s method_51346 + m ()Lnet/minecraft/world/item/ItemStack; method_51347 t method_51347 + m ()V + m ()V +c net/minecraft/world/item/CrossbowItem ctc net/minecraft/class_1764 + f I DEFAULT_RANGE a field_30863 + f F MOB_ARROW_POWER b field_49258 + f F MAX_CHARGE_DURATION k field_30866 + f Z startSoundPlayed l field_7937 + c Set to {@code true} when the crossbow is 20% charged. + f Z midLoadSoundPlayed m field_7936 + c Set to {@code true} when the crossbow is 50% charged. + f F START_SOUND_PERCENT n field_30867 + f F MID_SOUND_PERCENT o field_30868 + f F ARROW_POWER p field_30869 + f F FIREWORK_POWER q field_30870 + f Lnet/minecraft/world/item/CrossbowItem$ChargingSounds; DEFAULT_SOUNDS r field_51626 + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)F getPowerForTime a method_7770 + p 0 timeLeft + p 1 stack + p 2 shooter + m (Lnet/minecraft/util/RandomSource;I)F getShotPitch a method_57342 + p 0 random + p 1 index + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)Z tryLoadProjectiles a method_7767 + p 0 shooter + p 1 crossbowStack + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;F)Lorg/joml/Vector3f; getProjectileShotVector a method_57343 + p 0 shooter + p 1 distance + p 2 angle + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)F getShootingPower a method_20309 + p 0 projectile + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;FFLnet/minecraft/world/entity/LivingEntity;)V performShooting a method_7777 + p 1 level + p 2 shooter + p 3 hand + p 4 weapon + p 5 velocity + p 6 inaccuracy + p 7 target + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59973 a method_59973 + m (ZLnet/minecraft/util/RandomSource;)F getRandomShotPitch a method_7784 + p 0 isHighPitched + p 1 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)I getChargeDuration b method_7775 + p 0 stack + p 1 shooter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59974 b method_59974 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59975 c method_59975 + m (Lnet/minecraft/world/item/ItemStack;)Z isCharged i method_7781 + p 0 crossbowStack + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/CrossbowItem$ChargingSounds; getChargingSounds k method_59976 + p 1 stack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/CrossbowItem$ChargingSounds ctc$a net/minecraft/class_1764$class_9693 + f Lcom/mojang/serialization/Codec; CODEC a field_51627 + f Ljava/util/Optional; start b comp_2673 + f Ljava/util/Optional; mid c comp_2674 + f Ljava/util/Optional; end d comp_2675 + m ()Ljava/util/Optional; start a comp_2673 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59977 a method_59977 + m ()Ljava/util/Optional; mid b comp_2674 + m ()Ljava/util/Optional; end c comp_2675 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/DebugStickItem ctd net/minecraft/class_1763 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/item/ItemStack;)Z handleInteraction a method_7759 + p 1 player + p 2 stateClicked + p 3 accessor + p 4 pos + p 5 shouldCycleState + p 6 debugStack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V message a method_7762 + p 0 player + p 1 messageComponent + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/String; getNameHelper a method_7761 + p 0 state + p 1 property + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Z)Lnet/minecraft/world/level/block/state/BlockState; cycleState a method_7758 + p 0 state + p 1 property + p 2 backwards + m (Ljava/lang/Iterable;Ljava/lang/Object;Z)Ljava/lang/Object; getRelative a method_7760 + p 0 allowedValues + p 1 currentValue + p 2 backwards + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/DiggerItem cte net/minecraft/class_1766 + m (Lnet/minecraft/world/item/Tier;FF)Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes a method_57346 + p 0 tier + p 1 attackDamage + p 2 attackSpeed + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 blocks + p 3 properties +c net/minecraft/world/item/DiscFragmentItem ctf net/minecraft/class_7409 + m ()Lnet/minecraft/network/chat/MutableComponent; getDisplayName c method_43408 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/DispensibleContainerItem ctg net/minecraft/class_5633 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V checkExtraContent a method_7728 + p 1 player + p 2 level + p 3 containerStack + p 4 pos + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/BlockHitResult;)Z emptyContents a method_7731 + p 1 player + p 2 level + p 3 pos + p 4 result +c net/minecraft/world/item/DoubleHighBlockItem cth net/minecraft/class_1765 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/DyeColor cti net/minecraft/class_1767 + f [Lnet/minecraft/world/item/DyeColor; $VALUES A field_7953 + f Lnet/minecraft/world/item/DyeColor; WHITE a field_7952 + f Lnet/minecraft/world/item/DyeColor; ORANGE b field_7946 + f Lnet/minecraft/world/item/DyeColor; MAGENTA c field_7958 + f Lnet/minecraft/world/item/DyeColor; LIGHT_BLUE d field_7951 + f Lnet/minecraft/world/item/DyeColor; YELLOW e field_7947 + f Lnet/minecraft/world/item/DyeColor; LIME f field_7961 + f Lnet/minecraft/world/item/DyeColor; PINK g field_7954 + f Lnet/minecraft/world/item/DyeColor; GRAY h field_7944 + f Lnet/minecraft/world/item/DyeColor; LIGHT_GRAY i field_7967 + f Lnet/minecraft/world/item/DyeColor; CYAN j field_7955 + f Lnet/minecraft/world/item/DyeColor; PURPLE k field_7945 + f Lnet/minecraft/world/item/DyeColor; BLUE l field_7966 + f Lnet/minecraft/world/item/DyeColor; BROWN m field_7957 + f Lnet/minecraft/world/item/DyeColor; GREEN n field_7942 + f Lnet/minecraft/world/item/DyeColor; RED o field_7964 + f Lnet/minecraft/world/item/DyeColor; BLACK p field_7963 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC q field_41600 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC r field_49259 + f Ljava/util/function/IntFunction; BY_ID s field_7959 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap; BY_FIREWORK_COLOR t field_7950 + f I id u field_7965 + f Ljava/lang/String; name v field_7948 + f Lnet/minecraft/world/level/material/MapColor; mapColor w field_7956 + f I textureDiffuseColor x field_7943 + f I fireworkColor y field_7960 + f I textColor z field_16537 + m ()I getId a method_7789 + m (I)Lnet/minecraft/world/item/DyeColor; byId a method_7791 + p 0 colorId + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_7797 a method_7797 + m (Ljava/lang/String;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; byName a method_7793 + p 0 translationKey + p 1 fallback + m ()Ljava/lang/String; getName b method_7792 + m (I)Lnet/minecraft/world/item/DyeColor; byFireworkColor b method_7786 + p 0 fireworkColor + m (Lnet/minecraft/world/item/DyeColor;)Ljava/lang/Integer; method_7795 b method_7795 + m ()I getTextureDiffuseColor d method_7787 + m ()Lnet/minecraft/world/level/material/MapColor; getMapColor e method_7794 + m ()I getFireworkColor f method_7790 + m ()I getTextColor g method_16357 + m ()[Lnet/minecraft/world/item/DyeColor; $values h method_36676 + m (Ljava/lang/String;IILjava/lang/String;ILnet/minecraft/world/level/material/MapColor;II)V + p 3 id + p 4 name + p 5 textureDefuseColor + p 6 mapColor + p 7 fireworkColor + p 8 textColor + m ()V +c net/minecraft/world/item/DyeItem ctj net/minecraft/class_1769 + f Ljava/util/Map; ITEM_BY_COLOR a field_7968 + f Lnet/minecraft/world/item/DyeColor; dyeColor b field_7969 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeItem; byColor a method_7803 + p 0 color + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49799 a method_49799 + m ()Lnet/minecraft/world/item/DyeColor; getDyeColor c method_7802 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/Item$Properties;)V + p 1 dyeColor + p 2 properties + m ()V +c net/minecraft/world/item/EggItem ctk net/minecraft/class_1771 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EitherHolder ctl net/minecraft/class_9791 + f Ljava/util/Optional; holder a comp_2831 + f Lnet/minecraft/resources/ResourceKey; key b comp_2832 + m ()Lcom/mojang/datafixers/util/Either; asEither a method_60734 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_60735 a method_60735 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_60736 + p 0 registryKey + p 1 codec + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_60737 + p 0 registryKey + p 1 streamCodec + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/EitherHolder; fromEither a method_60738 + p 0 either + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/Optional; unwrap a method_60739 + p 1 registries + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; unwrap a method_60740 + p 1 registry + m ()Ljava/util/Optional; holder b comp_2831 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/Optional; method_60741 b method_60741 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_60742 b method_60742 + m ()Lnet/minecraft/resources/ResourceKey; key c comp_2832 + m ()Lcom/mojang/datafixers/util/Either; method_60743 d method_60743 + m ()Ljava/lang/String; method_60744 e method_60744 + m (Lnet/minecraft/core/Holder;)V + p 1 holder + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 key + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/world/item/ElytraItem ctm net/minecraft/class_1770 + m (Lnet/minecraft/world/item/ItemStack;)Z isFlyEnabled i method_7804 + p 0 elytraStack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EmptyMapItem ctn net/minecraft/class_1773 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnchantedBookItem cto net/minecraft/class_1772 + m (Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)Lnet/minecraft/world/item/ItemStack; createForEnchantment a method_7808 + c Returns the ItemStack of an enchanted version of this item. + p 0 instance + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EndCrystalItem ctp net/minecraft/class_1774 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnderEyeItem ctq net/minecraft/class_1777 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnderpearlItem ctr net/minecraft/class_1776 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/Equipable cts net/minecraft/class_5151 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; swapWithEquipmentSlot a method_48576 + p 1 item + p 2 level + p 3 player + p 4 hand + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/Equipable; get c_ method_48957 + p 0 stack + m ()Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlot m method_7685 + m ()Lnet/minecraft/core/Holder; getEquipSound n method_31570 +c net/minecraft/world/item/ExperienceBottleItem ctt net/minecraft/class_1779 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FireChargeItem ctu net/minecraft/class_1778 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playSound a method_18453 + p 1 level + p 2 pos + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58655 a method_58655 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FireworkRocketItem ctv net/minecraft/class_1781 + f [B CRAFTABLE_DURATIONS a field_41064 + f D ROCKET_PLACEMENT_OFFSET b field_30884 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/Vec3; getEntityPokingOutOfBlockPos a method_58656 + p 0 source + p 1 direction + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/FireworkStarItem ctw net/minecraft/class_1780 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/FishingRodItem ctx net/minecraft/class_1787 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FlintAndSteelItem cty net/minecraft/class_1786 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FoodOnAStickItem ctz net/minecraft/class_1758 + f Lnet/minecraft/world/entity/EntityType; canInteractWith a field_23253 + f I consumeItemDamage b field_23743 + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/entity/EntityType;I)V + p 1 properties + p 2 canInteractWith + p 3 consumeItemDamage +c net/minecraft/world/item/GameMasterBlockItem cua net/minecraft/class_1788 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/GlowInkSacItem cub net/minecraft/class_8232 + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49800 a method_49800 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/HangingEntityItem cuc net/minecraft/class_1790 + f Lnet/minecraft/network/chat/Component; TOOLTIP_RANDOM_VARIANT a field_42467 + f Lnet/minecraft/world/entity/EntityType; type b field_7999 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)Z mayPlace a method_7834 + p 1 player + p 2 direction + p 3 hangingEntityStack + p 4 pos + m (Ljava/util/List;)V method_48958 a method_48958 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V method_48959 a method_48959 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V method_48960 a method_48960 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/item/HangingSignItem cud net/minecraft/class_7707 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/HoeItem cue net/minecraft/class_1794 + f Ljava/util/Map; TILLABLES a field_8023 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/function/Consumer; changeIntoState a method_36988 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/context/UseOnContext;)V method_36984 a method_36984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/ItemLike;)Ljava/util/function/Consumer; changeIntoStateAndDropItem a method_36985 + p 0 state + p 1 itemToDrop + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/context/UseOnContext;)V method_36986 a method_36986 + m (Lnet/minecraft/world/item/context/UseOnContext;)Z onlyIfAirAbove b method_36987 + p 0 context + m (Lnet/minecraft/world/item/context/UseOnContext;)Z method_36989 c method_36989 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/HoneyBottleItem cuf net/minecraft/class_4480 + f I DRINK_DURATION a field_30885 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/HoneycombItem cug net/minecraft/class_5953 + f Ljava/util/function/Supplier; WAXABLES a field_29560 + f Ljava/util/function/Supplier; WAX_OFF_BY_BLOCK b field_29561 + m (Lnet/minecraft/world/item/context/UseOnContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/InteractionResult; method_34719 a method_34719 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getWaxed a method_34720 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34721 a method_34721 + m ()Lcom/google/common/collect/BiMap; method_34722 h method_34722 + m ()Lcom/google/common/collect/BiMap; method_34723 k method_34723 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/InkSacItem cuh net/minecraft/class_8233 + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49802 a method_49802 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/Instrument cui net/minecraft/class_7444 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49260 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49261 + f Lcom/mojang/serialization/Codec; CODEC c field_39122 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49262 + f Lnet/minecraft/core/Holder; soundEvent e comp_772 + f I useDuration f comp_773 + f F range g comp_774 + m ()Lnet/minecraft/core/Holder; soundEvent a comp_772 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43709 a method_43709 + m ()I useDuration b comp_773 + m ()F range c comp_774 + m (Lnet/minecraft/core/Holder;IF)V + m ()V +c net/minecraft/world/item/InstrumentItem cuj net/minecraft/class_7430 + f Lnet/minecraft/tags/TagKey; instruments a field_39123 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; create a method_43558 + p 0 item + p 1 instrument + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/tags/TagKey;Lnet/minecraft/util/RandomSource;)V setRandom a method_43562 + p 0 stack + p 1 instrumentTag + p 2 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;)V method_45433 a method_45433 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/Instrument;)V play a method_43563 + p 0 level + p 1 player + p 2 instrument + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_45432 a method_45432 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getInstrument i method_43711 + p 1 stack + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/tags/TagKey;)V + p 1 properties + p 2 instruments +c net/minecraft/world/item/Instruments cuk net/minecraft/class_7445 + f I GOAT_HORN_RANGE_BLOCKS a field_39124 + f I GOAT_HORN_DURATION b field_39125 + f Lnet/minecraft/resources/ResourceKey; PONDER_GOAT_HORN c field_39126 + f Lnet/minecraft/resources/ResourceKey; SING_GOAT_HORN d field_39127 + f Lnet/minecraft/resources/ResourceKey; SEEK_GOAT_HORN e field_39128 + f Lnet/minecraft/resources/ResourceKey; FEEL_GOAT_HORN f field_39129 + f Lnet/minecraft/resources/ResourceKey; ADMIRE_GOAT_HORN g field_39130 + f Lnet/minecraft/resources/ResourceKey; CALL_GOAT_HORN h field_39131 + f Lnet/minecraft/resources/ResourceKey; YEARN_GOAT_HORN i field_39132 + f Lnet/minecraft/resources/ResourceKey; DREAM_GOAT_HORN j field_39133 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43714 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/item/Instrument; bootstrap a method_43713 + p 0 registry + m ()V +c net/minecraft/world/item/Item cul net/minecraft/class_1792 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItem} injected by mod fabric-item-api-v1

+ f Lorg/slf4j/Logger; LOGGER a field_27017 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36401 + f Lnet/minecraft/core/component/DataComponentMap; components c field_49263 + f Ljava/util/Map; BY_BLOCK d field_8003 + f Lnet/minecraft/resources/ResourceLocation; BASE_ATTACK_DAMAGE_ID e field_8006 + f Lnet/minecraft/resources/ResourceLocation; BASE_ATTACK_SPEED_ID f field_8001 + f I DEFAULT_MAX_STACK_SIZE g field_30887 + f I ABSOLUTE_MAX_STACK_SIZE h field_49998 + f I MAX_BAR_WIDTH i field_30889 + f Lnet/minecraft/world/item/Item; craftingRemainingItem j field_8008 + f Ljava/lang/String; descriptionId k field_8014 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures l field_40209 + m ()Ljava/lang/String; getDescriptionId a method_7876 + c Returns the unlocalized name of this item. + m (Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)F getAttackDamageBonus a method_58403 + p 1 target + p 2 damage + p 3 damageSource + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onDestroyed a method_33261 + p 1 itemEntity + m (Lnet/minecraft/world/item/Item;)I getId a method_7880 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z isEnchantable a method_7870 + c Checks isDamagable and if it cannot be stacked + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)I getUseDuration a method_7881 + p 1 stack + p 2 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z hurtEnemy a method_7873 + c Current implementations of this method in child classes do not use the entry argument beside ev. They just raise the damage on the stack. + p 1 stack + p 2 target + p 3 attacker + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactLivingEntity a method_7847 + c Try interacting with given entity. Return {@code InteractionResult.PASS} if nothing should happen. + p 1 stack + p 2 player + p 3 interactionTarget + p 4 usedHand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;)Z overrideStackedOnOther a method_31565 + p 1 stack + p 2 slot + p 3 action + p 4 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/List;Lnet/minecraft/world/item/TooltipFlag;)V appendHoverText a method_7851 + p 1 stack + p 2 context + p 3 tooltipComponents + p 4 tooltipFlag + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isValidRepairItem a method_7878 + c Return whether this item is repairable in an anvil. + p 1 stack + p 2 repairCandidate + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/SlotAccess;)Z overrideOtherStackedOnMe a method_31566 + p 1 stack + p 2 other + p 3 slot + p 4 action + p 5 player + p 6 access + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)V onCraftedPostProcess a method_7843 + p 1 stack + p 2 level + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;IZ)V inventoryTick a method_7888 + c Called each tick as long the item is in a player's inventory. Used by maps to check if it's in a player's hand and update its contents. + p 1 stack + p 2 level + p 3 entity + p 4 slotId + p 5 isSelected + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; finishUsingItem a method_7861 + c Called when the player finishes using this Item (E.g. finishes eating.). Not called when the player stops using the Item before the action is complete. + p 1 stack + p 2 level + p 3 livingEntity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V releaseUsing a method_7840 + c Called when the player stops using an Item (stops holding the right mouse button). + p 1 stack + p 2 level + p 3 livingEntity + p 4 timeCharged + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z mineBlock a method_7879 + c Called when a {@link net.minecraft.world.level.block.Block} is destroyed using this Item. Return {@code true} to trigger the "Use Item" statistic. + p 1 stack + p 2 level + p 3 state + p 4 pos + p 5 miningEntity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_58404 + p 1 stack + p 2 state + m (Lnet/minecraft/world/item/context/UseOnContext;)Lnet/minecraft/world/InteractionResult; useOn a method_7884 + c Called when this item is used when targeting a Block + p 1 context + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;I)V onUseTick a method_7852 + c Called as the item is being used by an entity. + p 1 level + p 2 livingEntity + p 3 stack + p 4 remainingUseDuration + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; use a method_7836 + c Called to trigger the item's "innate" right click behavior. To handle when this item is used on a Block, see {@link net.minecraft.world.item.Item#useOn(net.minecraft.world.item.context.UseOnContext)}. + p 1 level + p 2 player + p 3 usedHand + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/ClipContext$Fluid;)Lnet/minecraft/world/phys/BlockHitResult; getPlayerPOVHitResult a method_7872 + p 0 level + p 1 player + p 2 fluidMode + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; byBlock a method_7867 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z canAttackBlock a method_7885 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()Z isComplex ao_ method_16698 + c Returns {@code true} if this is a complex item. + m ()Lnet/minecraft/sounds/SoundEvent; getDrinkingSound ap_ method_21831 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound aq_ method_21830 + m ()Z canFitInsideContainerItems ar_ method_31568 + m (I)Lnet/minecraft/world/item/Item; byId b method_7875 + p 0 id + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/UseAnim; getUseAnimation b method_7853 + c Returns the action that specifies what animation to play when the item is being used. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V postHurtEnemy b method_59978 + p 1 stack + p 2 target + p 3 attacker + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;)V onCraftedBy b method_54465 + c Called when item is crafted/smelted. Used only by maps so far. + p 1 stack + p 2 level + p 3 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectToolForDrops b method_58405 + p 1 stack + p 2 state + m (Lnet/minecraft/world/item/ItemStack;)Z isBarVisible d method_31567 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFoil d_ method_7886 + c Returns {@code true} if this item has an enchantment glint. By default, this returns {@code stack.isEnchanted()}, but other items can override it (for instance, written books always return true).\n\nNote that if you override this method, you generally want to also call the super version (on {@link Item}) to get the glint for enchanted items. Of course, that is unnecessary if the overwritten version always returns true. + p 1 stack + m ()Lnet/minecraft/sounds/SoundEvent; getBreakingSound e method_57336 + m (Lnet/minecraft/world/item/ItemStack;)I getBarWidth e method_31569 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getBarColor f method_31571 + p 1 stack + m ()I getEnchantmentValue g method_7837 + c Return the enchantability factor of the item, most of the time is based on material. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getTooltipImage g method_32346 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; getDescriptionId h method_7866 + c Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have different names based on their damage or NBT. + p 1 stack + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; getDefaultAttributeModifiers j method_7844 + m (Lnet/minecraft/world/item/ItemStack;)Z useOnRelease l method_7838 + c If this stack's item is a crossbow + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V verifyComponentsAfterLoad m method_7860 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; getName n method_7864 + p 1 stack + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder o method_40131 + m ()Lnet/minecraft/core/component/DataComponentMap; components p method_57347 + m ()I getDefaultMaxStackSize q method_7882 + m ()Lnet/minecraft/network/chat/Component; getDescription s method_7848 + m ()Ljava/lang/String; getOrCreateDescriptionId t method_7869 + m ()Lnet/minecraft/world/item/Item; getCraftingRemainingItem u method_7858 + m ()Z hasCraftingRemainingItem v method_7857 + c True if this Item has a container item (a.k.a. crafting result) + m ()Lnet/minecraft/world/item/ItemStack; getDefaultInstance w method_7854 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/Item$Properties cul$a net/minecraft/class_1792$class_1793 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItem.Settings} injected by mod fabric-item-api-v1

+ f Lcom/google/common/collect/Interner; COMPONENT_INTERNER a field_49264 + f Lnet/minecraft/core/component/DataComponentMap$Builder; components b field_49265 + f Lnet/minecraft/world/item/Item; craftingRemainingItem c field_8018 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures d field_40210 + m ()Lnet/minecraft/world/item/Item$Properties; fireResistant a method_24359 + m (I)Lnet/minecraft/world/item/Item$Properties; stacksTo a method_7889 + p 1 maxStackSize + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/item/Item$Properties; jukeboxPlayable a method_60745 + p 1 song + m (Lnet/minecraft/world/food/FoodProperties;)Lnet/minecraft/world/item/Item$Properties; food a method_19265 + p 1 food + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item$Properties; craftRemainder a method_7896 + p 1 craftingRemainingItem + m (Lnet/minecraft/world/item/Rarity;)Lnet/minecraft/world/item/Item$Properties; rarity a method_7894 + p 1 rarity + m (Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/Item$Properties; attributes a method_57348 + p 1 attributes + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/Item$Properties; component a method_57349 + p 1 component + p 2 value + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/Item$Properties; requiredFeatures a method_45434 + p 1 requiredFeatures + m ()Lnet/minecraft/core/component/DataComponentMap; buildAndValidateComponents b method_58406 + m (I)Lnet/minecraft/world/item/Item$Properties; durability b method_7895 + p 1 maxDamage + m ()Lnet/minecraft/core/component/DataComponentMap; buildComponents c method_57350 + m ()V + m ()V +c net/minecraft/world/item/Item$TooltipContext cul$b net/minecraft/class_1792$class_9635 + f Lnet/minecraft/world/item/Item$TooltipContext; EMPTY a field_51353 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a method_59527 + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/item/Item$TooltipContext; of a method_59528 + p 0 level + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; mapData a method_59529 + p 1 mapId + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/Item$TooltipContext; of a method_59530 + p 0 registries + m ()F tickRate b method_59531 + m ()V +c net/minecraft/world/item/Item$TooltipContext$1 cul$b$1 net/minecraft/class_1792$class_9635$1 + m ()V +c net/minecraft/world/item/Item$TooltipContext$2 cul$b$2 net/minecraft/class_1792$class_9635$2 + f Lnet/minecraft/world/level/Level; val$level b field_51354 + m (Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/item/Item$TooltipContext$3 cul$b$3 net/minecraft/class_1792$class_9635$3 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries b field_51355 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/world/item/ItemCooldowns cum net/minecraft/class_1796 + f Ljava/util/Map; cooldowns a field_8024 + f I tickCount b field_8025 + m ()V tick a method_7903 + m (Lnet/minecraft/world/item/Item;)Z isOnCooldown a method_7904 + p 1 item + m (Lnet/minecraft/world/item/Item;F)F getCooldownPercent a method_7905 + p 1 item + p 2 partialTicks + m (Lnet/minecraft/world/item/Item;I)V addCooldown a method_7906 + p 1 item + p 2 ticks + m (Lnet/minecraft/world/item/Item;)V removeCooldown b method_7900 + p 1 item + m (Lnet/minecraft/world/item/Item;I)V onCooldownStarted b method_7902 + p 1 item + p 2 ticks + m (Lnet/minecraft/world/item/Item;)V onCooldownEnded c method_7901 + p 1 item + m ()V +c net/minecraft/world/item/ItemCooldowns$CooldownInstance cum$a net/minecraft/class_1796$class_1797 + f I startTime a field_8028 + f I endTime b field_8027 + m (II)V + p 1 startTime + p 2 endTime +c net/minecraft/world/item/ItemDisplayContext cun net/minecraft/class_811 + f Lnet/minecraft/world/item/ItemDisplayContext; NONE a field_4315 + f Lnet/minecraft/world/item/ItemDisplayContext; THIRD_PERSON_LEFT_HAND b field_4323 + f Lnet/minecraft/world/item/ItemDisplayContext; THIRD_PERSON_RIGHT_HAND c field_4320 + f Lnet/minecraft/world/item/ItemDisplayContext; FIRST_PERSON_LEFT_HAND d field_4321 + f Lnet/minecraft/world/item/ItemDisplayContext; FIRST_PERSON_RIGHT_HAND e field_4322 + f Lnet/minecraft/world/item/ItemDisplayContext; HEAD f field_4316 + f Lnet/minecraft/world/item/ItemDisplayContext; GUI g field_4317 + f Lnet/minecraft/world/item/ItemDisplayContext; GROUND h field_4318 + f Lnet/minecraft/world/item/ItemDisplayContext; FIXED i field_4319 + f Lcom/mojang/serialization/Codec; CODEC j field_42468 + f Ljava/util/function/IntFunction; BY_ID k field_42469 + f B id l field_42470 + f Ljava/lang/String; name m field_42471 + f [Lnet/minecraft/world/item/ItemDisplayContext; $VALUES n field_4314 + m ()B getId a method_48961 + m ()Z firstPerson b method_29998 + m ()[Lnet/minecraft/world/item/ItemDisplayContext; $values d method_36922 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/item/ItemFrameItem cuo net/minecraft/class_1795 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties +c net/minecraft/world/item/ItemNameBlockItem cup net/minecraft/class_1798 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/ItemStack cuq net/minecraft/class_1799 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItemStack} injected by mod fabric-item-api-v1

+ f Lcom/mojang/serialization/Codec; ITEM_NON_AIR_CODEC a field_47312 + f Lcom/mojang/serialization/Codec; CODEC b field_24671 + f Lcom/mojang/serialization/Codec; SINGLE_ITEM_CODEC c field_49747 + f Lcom/mojang/serialization/Codec; STRICT_CODEC d field_51397 + f Lcom/mojang/serialization/Codec; STRICT_SINGLE_ITEM_CODEC e field_51398 + f Lcom/mojang/serialization/Codec; OPTIONAL_CODEC f field_49266 + f Lcom/mojang/serialization/Codec; SIMPLE_ITEM_CODEC g field_49267 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC h field_49268 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48349 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_LIST_STREAM_CODEC j field_49269 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC k field_48350 + f Lnet/minecraft/world/item/ItemStack; EMPTY l field_8037 + f Lorg/slf4j/Logger; LOGGER m field_8033 + f Lnet/minecraft/network/chat/Component; DISABLED_ITEM_TOOLTIP n field_40211 + f I count o field_8031 + f I popTime p field_8030 + f Lnet/minecraft/world/item/Item; item q field_8038 + f Lnet/minecraft/core/component/PatchedDataComponentMap; components r field_49270 + f Lnet/minecraft/world/entity/Entity; entityRepresentation s field_24093 + c The entity the item is attached to, like an Item Frame. + m ()Z isEnchanted A method_7942 + c True if the item has enchantment data + m ()Lnet/minecraft/world/item/enchantment/ItemEnchantments; getEnchantments B method_58657 + m ()Z isFramed C method_7961 + c Return whether this stack is on an item frame. + m ()Lnet/minecraft/world/entity/decoration/ItemFrame; getFrame D method_7945 + c Return the item frame this stack is on. Returns null if not on an item frame. + m ()Lnet/minecraft/world/entity/Entity; getEntityRepresentation E method_27319 + c For example, it'll return an {@code ItemFrameEntity} if it is in an itemframe. + m ()Lnet/minecraft/network/chat/Component; getDisplayName F method_7954 + c Get a ChatComponent for this Item's display name that shows this Item on hover + m ()I getPopTime G method_7965 + m ()I getCount H method_7947 + m ()Lnet/minecraft/sounds/SoundEvent; getDrinkingSound I method_21832 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound J method_21833 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakingSound K method_57351 + m ()Ljava/lang/String; method_59690 L method_59690 + m ()Lcom/mojang/serialization/Codec; method_55066 M method_55066 + m ()Lcom/mojang/serialization/Codec; method_57352 N method_57352 + m ()Ljava/lang/String; method_55061 O method_55061 + m (I)Lnet/minecraft/world/item/ItemStack; split a method_7971 + c Splits off a stack of the given amount of this stack and reduces this stack by the amount. + p 1 amount + m (II)Ljava/lang/String; method_60502 a method_60502 + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Consumer;)V hurtAndBreak a method_7956 + p 1 damage + p 2 level + p 3 player + p 4 onBreak + m (ILnet/minecraft/world/entity/LivingEntity;)V consume a method_57008 + p 1 amount + p 2 entity + m (ILnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V hurtAndBreak a method_7970 + p 1 amount + p 2 entity + p 3 slot + m (ILnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; hurtAndConvertOnBreak a method_60986 + p 1 amount + p 2 item + p 3 entity + p 4 slot + m (Lnet/minecraft/tags/TagKey;)Z is a method_31573 + p 1 tag + m (Lnet/minecraft/world/damagesource/DamageSource;)Z canBeHurtBy a method_58407 + p 1 damageSource + m (Lnet/minecraft/world/entity/Entity;)V setEntityRepresentation a method_27320 + p 1 entity + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEachModifier a method_57354 + p 1 equipmentSLot + p 2 action + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEachModifier a method_60617 + p 1 slotGroup + p 2 action + m (Lnet/minecraft/world/entity/LivingEntity;)I getUseDuration a method_7935 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/Item;)V method_56097 a method_56097 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z hurtEnemy a method_7979 + p 1 target + p 2 attacker + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onDestroyed a method_33262 + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactLivingEntity a method_7920 + p 1 player + p 2 entity + p 3 usedHand + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58092 a method_58092 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isItemEnabled a method_45435 + p 1 enabledFlags + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;)Z overrideStackedOnOther a method_31575 + p 1 slot + p 2 action + p 3 player + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/TooltipFlag;)Ljava/util/List; getTooltipLines a method_7950 + p 1 tooltipContext + p 2 player + p 3 tooltipFlag + m (Lnet/minecraft/world/item/Item;)Z is a method_31574 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;)I hashItemAndComponents a method_57355 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/Unit;)Lnet/minecraft/world/item/ItemStack; method_57383 a method_57383 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/SlotAccess;)Z overrideOtherStackedOnMe a method_31576 + p 1 stack + p 2 slot + p 3 action + p 4 player + p 5 access + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z matches a method_7973 + c Compares both {@code ItemStacks}, returns {@code true} if both {@code ItemStacks} are equal. + p 0 stack + p 1 other + m (Lnet/minecraft/world/item/context/UseOnContext;)Lnet/minecraft/world/InteractionResult; useOn a method_7981 + p 1 context + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/ItemStack; transmuteCopy a method_60503 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/item/ItemStack; transmuteCopy a method_56701 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/Level;)V onCraftedBySystem a method_54466 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;IZ)V inventoryTick a method_7917 + c Called each tick as long the {@code ItemStack} in in player's inventory. Used to progress the pickup animation and update maps. + p 1 level + p 2 entity + p 3 inventorySlot + p 4 isCurrentItem + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; finishUsingItem a method_7910 + c Called when the item in use count reach 0, e.g. item food eaten. Return the new ItemStack. Args : world, entity + p 1 level + p 2 livingEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V releaseUsing a method_7930 + c Called when the player releases the use item button. + p 1 level + p 2 livingEntity + p 3 timeLeft + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;I)V onCraftedBy a method_7982 + p 1 level + p 2 player + p 3 amount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; use a method_7913 + c Called when the {@code ItemStack} is equipped and right-clicked. Replaces the {@code ItemStack} with the return value. + p 1 level + p 2 player + p 3 usedHand + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V mineBlock a method_7952 + c Called when a Block is destroyed using this ItemStack + p 1 level + p 2 state + p 3 pos + p 4 player + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_7924 + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z canPlaceOnBlockInAdventureMode a method_57357 + p 1 block + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; lenientOptionalFieldOf a method_56702 + p 0 fieldName + m (Ljava/util/List;)I hashStackList a method_57361 + p 0 list + m (Ljava/util/List;Ljava/util/List;)Z listMatches a method_57362 + p 0 list + p 1 other + m (Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; method_56703 a method_56703 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/player/Player;)V addAttributeTooltips a method_57363 + p 1 tooltipAdder + p 2 player + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addModifierTooltip a method_57364 + p 1 tooltipAdder + p 2 player + p 3 attribute + p 4 modifier + m (Ljava/util/function/Predicate;)Z is a method_41407 + p 1 item + m (Lnet/minecraft/core/Holder;)Z is a method_41406 + p 1 item + m (Lnet/minecraft/core/Holder;I)V enchant a method_7978 + p 1 enchantment + p 2 level + m (Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57356 a method_57356 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)Lnet/minecraft/world/item/ItemStack; method_58093 a method_58093 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; save a method_57358 + p 1 levelRegistryAccess + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/item/ItemStack; parseOptional a method_57359 + p 0 lookupProvider + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/Tag;)Ljava/util/Optional; parse a method_57360 + p 0 lookupProvider + p 1 tag + m (Lnet/minecraft/core/HolderSet;)Z is a method_53187 + p 1 item + m (Lnet/minecraft/core/component/DataComponentMap;)Lcom/mojang/serialization/DataResult; validateComponents a method_59691 + p 0 components + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyComponentsAndValidate a method_59692 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/function/Consumer;Lnet/minecraft/world/item/TooltipFlag;)V addToTooltip a method_57369 + p 1 component + p 2 context + p 3 tooltipAdder + p 4 tooltipFlag + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; update a method_57367 + p 1 component + p 2 defaultValue + p 3 updateValue + p 4 updater + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/util/function/UnaryOperator;)Ljava/lang/Object; update a method_57368 + p 1 component + p 2 defaultValue + p 3 updater + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Consumer;Lnet/minecraft/world/entity/EquipmentSlotGroup;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57370 a method_57370 + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_7966 a method_7966 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; validatedStreamCodec a method_59693 + p 0 codec + m ()Ljava/util/Optional; getTooltipImage b method_32347 + m (I)V setDamageValue b method_7974 + p 1 damage + m (ILnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; consumeAndReturn b method_60504 + p 1 amount + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)V postHurtEnemy b method_59979 + p 1 target + p 2 attacker + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57371 b method_57371 + m (Lnet/minecraft/world/item/ItemStack;)Lcom/mojang/serialization/DataResult; validateStrict b method_57372 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isSameItem b method_7984 + p 0 stack + p 1 other + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/item/ItemStack; transmuteCopyIgnoreEmpty b method_56704 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V onUseTick b method_7949 + c Called as the stack is being used by an entity. + p 1 level + p 2 livingEntity + p 3 count + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectToolForDrops b method_7951 + c Check whether the given Block can be harvested using this ItemStack. + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z canBreakBlockInAdventureMode b method_57373 + p 1 block + m (Ljava/lang/String;)V method_57377 b method_57377 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; method_57378 b method_57378 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/DataResult; method_57374 b method_57374 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; saveOptional b method_57375 + p 1 levelRegistryAccess + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; save b method_57376 + p 1 levelRegistryAccess + p 2 outputTag + m (Lnet/minecraft/core/component/DataComponentMap;)V applyComponents b method_57365 + p 1 components + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyComponents b method_57366 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; set b method_57379 + p 1 component + p 2 value + m ()Lnet/minecraft/core/component/DataComponentMap; getPrototype c method_58658 + m (I)Lnet/minecraft/world/item/ItemStack; copyWithCount c method_46651 + p 1 count + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; method_56700 c method_56700 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isSameItemSameComponents c method_31577 + p 0 stack + p 1 other + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; remove c method_57381 + p 1 component + m ()Lnet/minecraft/core/component/DataComponentPatch; getComponentsPatch d method_57380 + m (I)V setPopTime d method_7912 + p 1 popTime + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; method_57382 d method_57382 + m ()Z isEmpty e method_7960 + m (I)V setCount e method_7939 + p 1 count + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_57384 e method_57384 + m ()Lnet/minecraft/world/item/ItemStack; copyAndClear f method_51164 + m (I)V limitSize f method_58408 + p 1 maxSize + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentPatch; method_58094 f method_58094 + m ()Lnet/minecraft/world/item/Item; getItem g method_7909 + c Returns the object corresponding to the stack. + m (I)V grow g method_7933 + p 1 increment + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentPatch; method_57385 g method_57385 + m ()Lnet/minecraft/core/Holder; getItemHolder h method_41409 + m (I)V shrink h method_7934 + p 1 decrement + m ()Ljava/util/stream/Stream; getTags i method_40133 + m ()I getMaxStackSize j method_7914 + c Returns maximum size of the stack. + m ()Z isStackable k method_7946 + c Returns {@code true} if the {@code ItemStack} can hold 2 or more units of the item. + m ()Z isDamageableItem l method_7963 + c Returns {@code true} if this {@code ItemStack} is damageable. + m ()Z isDamaged m method_7986 + c Returns {@code true} when a damageable item is damaged. + m ()I getDamageValue n method_7919 + m ()I getMaxDamage o method_7936 + c Returns the max damage an item in the stack can take. + m ()Z isBarVisible p method_31578 + m ()I getBarWidth q method_31579 + m ()I getBarColor r method_31580 + m ()Lnet/minecraft/world/item/ItemStack; copy s method_7972 + c Returns a new stack with the same properties. + m ()Ljava/lang/String; getDescriptionId t method_7922 + m ()Lnet/minecraft/world/item/UseAnim; getUseAnimation u method_7976 + m ()Z useOnRelease v method_7967 + m ()Lnet/minecraft/network/chat/Component; getHoverName w method_7964 + m ()Z hasFoil x method_7958 + m ()Lnet/minecraft/world/item/Rarity; getRarity y method_7932 + m ()Z isEnchantable z method_7923 + c True if it is a tool and has no enchantments to begin with + m (Lnet/minecraft/world/level/ItemLike;)V + p 1 item + m (Lnet/minecraft/core/Holder;)V + p 1 tag + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPatch;)V + p 1 tag + p 2 count + p 3 components + m (Lnet/minecraft/core/Holder;I)V + p 1 item + p 2 count + m (Lnet/minecraft/world/level/ItemLike;I)V + p 1 item + p 2 count + m (Lnet/minecraft/world/level/ItemLike;ILnet/minecraft/core/component/PatchedDataComponentMap;)V + p 1 item + p 2 count + p 3 components + m (Ljava/lang/Void;)V + p 1 unused + m ()V +c net/minecraft/world/item/ItemStack$1 cuq$1 net/minecraft/class_1799$1 + f Lnet/minecraft/network/codec/StreamCodec; ITEM_STREAM_CODEC a field_48351 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_56099 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_56100 + m ()V + m ()V +c net/minecraft/world/item/ItemStack$2 cuq$2 net/minecraft/class_1799$2 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_57386 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_57387 + m ()V +c net/minecraft/world/item/ItemStack$3 cuq$3 net/minecraft/class_1799$3 + f Lnet/minecraft/network/codec/StreamCodec; val$codec a field_51399 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_59694 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_59695 + m (Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/world/item/ItemStack$4 cuq$4 net/minecraft/class_1799$4 + f [I $SwitchMap$net$minecraft$world$item$Rarity a field_8021 + m ()V +c net/minecraft/world/item/ItemStackLinkedSet cur net/minecraft/class_7708 + f Lit/unimi/dsi/fastutil/Hash$Strategy; TYPE_AND_TAG a field_40212 + m ()Ljava/util/Set; createTypeAndComponentsSet a method_47572 + m ()V + m ()V +c net/minecraft/world/item/ItemStackLinkedSet$1 cur$1 net/minecraft/class_7708$1 + m (Lnet/minecraft/world/item/ItemStack;)I hashCode a method_45436 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z equals a method_45437 + p 1 first + p 2 second + m ()V +c net/minecraft/world/item/ItemUtils cus net/minecraft/class_5328 + m (Lnet/minecraft/world/entity/item/ItemEntity;Ljava/lang/Iterable;)V onContainerDestroyed a method_33263 + p 0 container + p 1 contents + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; createFilledResult a method_30012 + p 0 emptyStack + p 1 player + p 2 filledStack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/item/ItemStack; createFilledResult a method_30270 + p 0 emptyStack + p 1 player + p 2 filledStack + p 3 preventDuplicates + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;)V method_33265 a method_33265 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; startUsingInstantly a method_29282 + p 0 level + p 1 player + p 2 hand + m ()V +c net/minecraft/world/item/Items cut net/minecraft/class_1802 + f Lnet/minecraft/world/item/Item; DRIPSTONE_BLOCK A field_28043 + f Lnet/minecraft/world/item/Item; GRASS_BLOCK B field_8270 + f Lnet/minecraft/world/item/Item; DIRT C field_8831 + f Lnet/minecraft/world/item/Item; COARSE_DIRT D field_8460 + f Lnet/minecraft/world/item/Item; PODZOL E field_8382 + f Lnet/minecraft/world/item/Item; ROOTED_DIRT F field_28655 + f Lnet/minecraft/world/item/Item; MUD G field_37537 + f Lnet/minecraft/world/item/Item; CRIMSON_NYLIUM H field_22013 + f Lnet/minecraft/world/item/Item; WARPED_NYLIUM I field_22015 + f Lnet/minecraft/world/item/Item; COBBLESTONE J field_20412 + f Lnet/minecraft/world/item/Item; OAK_PLANKS K field_8118 + f Lnet/minecraft/world/item/Item; SPRUCE_PLANKS L field_8113 + f Lnet/minecraft/world/item/Item; BIRCH_PLANKS M field_8191 + f Lnet/minecraft/world/item/Item; JUNGLE_PLANKS N field_8842 + f Lnet/minecraft/world/item/Item; ACACIA_PLANKS O field_8651 + f Lnet/minecraft/world/item/Item; CHERRY_PLANKS P field_42687 + f Lnet/minecraft/world/item/Item; DARK_OAK_PLANKS Q field_8404 + f Lnet/minecraft/world/item/Item; MANGROVE_PLANKS R field_37507 + f Lnet/minecraft/world/item/Item; BAMBOO_PLANKS S field_40213 + f Lnet/minecraft/world/item/Item; CRIMSON_PLANKS T field_22031 + f Lnet/minecraft/world/item/Item; WARPED_PLANKS U field_22032 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC V field_40214 + f Lnet/minecraft/world/item/Item; OAK_SAPLING W field_17535 + f Lnet/minecraft/world/item/Item; SPRUCE_SAPLING X field_17536 + f Lnet/minecraft/world/item/Item; BIRCH_SAPLING Y field_17537 + f Lnet/minecraft/world/item/Item; JUNGLE_SAPLING Z field_17538 + f Lnet/minecraft/world/item/Item; NETHER_GOLD_ORE aA field_23140 + f Lnet/minecraft/world/item/Item; NETHER_QUARTZ_ORE aB field_8702 + f Lnet/minecraft/world/item/Item; ANCIENT_DEBRIS aC field_22019 + f Lnet/minecraft/world/item/Item; COAL_BLOCK aD field_8797 + f Lnet/minecraft/world/item/Item; RAW_IRON_BLOCK aE field_33505 + f Lnet/minecraft/world/item/Item; RAW_COPPER_BLOCK aF field_33506 + f Lnet/minecraft/world/item/Item; RAW_GOLD_BLOCK aG field_33507 + f Lnet/minecraft/world/item/Item; HEAVY_CORE aH field_49813 + f Lnet/minecraft/world/item/Item; AMETHYST_BLOCK aI field_27064 + f Lnet/minecraft/world/item/Item; BUDDING_AMETHYST aJ field_27065 + f Lnet/minecraft/world/item/Item; IRON_BLOCK aK field_8773 + f Lnet/minecraft/world/item/Item; COPPER_BLOCK aL field_27071 + f Lnet/minecraft/world/item/Item; AIR a field_8162 + f Lnet/minecraft/world/item/Item; GOLD_BLOCK aM field_8494 + f Lnet/minecraft/world/item/Item; DIAMOND_BLOCK aN field_8603 + f Lnet/minecraft/world/item/Item; NETHERITE_BLOCK aO field_22018 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER aP field_27072 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER aQ field_27073 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER aR field_27074 + f Lnet/minecraft/world/item/Item; CHISELED_COPPER aS field_46974 + f Lnet/minecraft/world/item/Item; EXPOSED_CHISELED_COPPER aT field_46975 + f Lnet/minecraft/world/item/Item; WEATHERED_CHISELED_COPPER aU field_46976 + f Lnet/minecraft/world/item/Item; OXIDIZED_CHISELED_COPPER aV field_46977 + f Lnet/minecraft/world/item/Item; CUT_COPPER aW field_27075 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER aX field_27076 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER aY field_27077 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER aZ field_27030 + f Lnet/minecraft/world/item/Item; ACACIA_SAPLING aa field_17539 + f Lnet/minecraft/world/item/Item; CHERRY_SAPLING ab field_42688 + f Lnet/minecraft/world/item/Item; DARK_OAK_SAPLING ac field_17540 + f Lnet/minecraft/world/item/Item; MANGROVE_PROPAGULE ad field_37508 + f Lnet/minecraft/world/item/Item; BEDROCK ae field_8542 + f Lnet/minecraft/world/item/Item; SAND af field_8858 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_SAND ag field_42689 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_GRAVEL ah field_43191 + f Lnet/minecraft/world/item/Item; RED_SAND ai field_8200 + f Lnet/minecraft/world/item/Item; GRAVEL aj field_8110 + f Lnet/minecraft/world/item/Item; COAL_ORE ak field_8476 + f Lnet/minecraft/world/item/Item; DEEPSLATE_COAL_ORE al field_29212 + f Lnet/minecraft/world/item/Item; IRON_ORE am field_8599 + f Lnet/minecraft/world/item/Item; DEEPSLATE_IRON_ORE an field_29020 + f Lnet/minecraft/world/item/Item; COPPER_ORE ao field_27018 + f Lnet/minecraft/world/item/Item; DEEPSLATE_COPPER_ORE ap field_29211 + f Lnet/minecraft/world/item/Item; GOLD_ORE aq field_8775 + f Lnet/minecraft/world/item/Item; DEEPSLATE_GOLD_ORE ar field_29019 + f Lnet/minecraft/world/item/Item; REDSTONE_ORE as field_8604 + f Lnet/minecraft/world/item/Item; DEEPSLATE_REDSTONE_ORE at field_29023 + f Lnet/minecraft/world/item/Item; EMERALD_ORE au field_8837 + f Lnet/minecraft/world/item/Item; DEEPSLATE_EMERALD_ORE av field_29216 + f Lnet/minecraft/world/item/Item; LAPIS_ORE aw field_8809 + f Lnet/minecraft/world/item/Item; DEEPSLATE_LAPIS_ORE ax field_29021 + f Lnet/minecraft/world/item/Item; DIAMOND_ORE ay field_8787 + f Lnet/minecraft/world/item/Item; DEEPSLATE_DIAMOND_ORE az field_29022 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER_SLAB bA field_27050 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER_SLAB bB field_33406 + f Lnet/minecraft/world/item/Item; OAK_LOG bC field_8583 + f Lnet/minecraft/world/item/Item; SPRUCE_LOG bD field_8684 + f Lnet/minecraft/world/item/Item; BIRCH_LOG bE field_8170 + f Lnet/minecraft/world/item/Item; JUNGLE_LOG bF field_8125 + f Lnet/minecraft/world/item/Item; ACACIA_LOG bG field_8820 + f Lnet/minecraft/world/item/Item; CHERRY_LOG bH field_42692 + f Lnet/minecraft/world/item/Item; DARK_OAK_LOG bI field_8652 + f Lnet/minecraft/world/item/Item; MANGROVE_LOG bJ field_37512 + f Lnet/minecraft/world/item/Item; MANGROVE_ROOTS bK field_37513 + f Lnet/minecraft/world/item/Item; MUDDY_MANGROVE_ROOTS bL field_37514 + f Lnet/minecraft/world/item/Item; STONE b field_20391 + f Lnet/minecraft/world/item/Item; CRIMSON_STEM bM field_21981 + f Lnet/minecraft/world/item/Item; WARPED_STEM bN field_21982 + f Lnet/minecraft/world/item/Item; BAMBOO_BLOCK bO field_41066 + f Lnet/minecraft/world/item/Item; STRIPPED_OAK_LOG bP field_8415 + f Lnet/minecraft/world/item/Item; STRIPPED_SPRUCE_LOG bQ field_8624 + f Lnet/minecraft/world/item/Item; STRIPPED_BIRCH_LOG bR field_8767 + f Lnet/minecraft/world/item/Item; STRIPPED_JUNGLE_LOG bS field_8334 + f Lnet/minecraft/world/item/Item; STRIPPED_ACACIA_LOG bT field_8072 + f Lnet/minecraft/world/item/Item; STRIPPED_CHERRY_LOG bU field_42693 + f Lnet/minecraft/world/item/Item; STRIPPED_DARK_OAK_LOG bV field_8808 + f Lnet/minecraft/world/item/Item; STRIPPED_MANGROVE_LOG bW field_37515 + f Lnet/minecraft/world/item/Item; STRIPPED_CRIMSON_STEM bX field_21983 + f Lnet/minecraft/world/item/Item; STRIPPED_WARPED_STEM bY field_21984 + f Lnet/minecraft/world/item/Item; STRIPPED_OAK_WOOD bZ field_8248 + f Lnet/minecraft/world/item/Item; CUT_COPPER_STAIRS ba field_27031 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER_STAIRS bb field_27032 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER_STAIRS bc field_27033 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER_STAIRS bd field_27034 + f Lnet/minecraft/world/item/Item; CUT_COPPER_SLAB be field_27035 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER_SLAB bf field_27036 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER_SLAB bg field_27037 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER_SLAB bh field_27038 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_BLOCK bi field_27039 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER bj field_27040 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER bk field_27041 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER bl field_33403 + f Lnet/minecraft/world/item/Item; WAXED_CHISELED_COPPER bm field_46978 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CHISELED_COPPER bn field_46979 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CHISELED_COPPER bo field_46980 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CHISELED_COPPER bp field_46981 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER bq field_27042 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER br field_27043 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER bs field_27044 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER bt field_33404 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER_STAIRS bu field_27045 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER_STAIRS bv field_27046 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER_STAIRS bw field_27047 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER_STAIRS bx field_33405 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER_SLAB by field_27048 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER_SLAB bz field_27049 + f Lnet/minecraft/world/item/Item; DARK_OAK_LEAVES cA field_17508 + f Lnet/minecraft/world/item/Item; MANGROVE_LEAVES cB field_37511 + f Lnet/minecraft/world/item/Item; AZALEA_LEAVES cC field_28648 + f Lnet/minecraft/world/item/Item; FLOWERING_AZALEA_LEAVES cD field_28649 + f Lnet/minecraft/world/item/Item; SPONGE cE field_8535 + f Lnet/minecraft/world/item/Item; WET_SPONGE cF field_8554 + f Lnet/minecraft/world/item/Item; GLASS cG field_8280 + f Lnet/minecraft/world/item/Item; TINTED_GLASS cH field_27019 + f Lnet/minecraft/world/item/Item; LAPIS_BLOCK cI field_8055 + f Lnet/minecraft/world/item/Item; SANDSTONE cJ field_20384 + f Lnet/minecraft/world/item/Item; CHISELED_SANDSTONE cK field_8552 + f Lnet/minecraft/world/item/Item; CUT_SANDSTONE cL field_20385 + f Lnet/minecraft/world/item/Item; GRANITE c field_20394 + f Lnet/minecraft/world/item/Item; COBWEB cM field_8786 + f Lnet/minecraft/world/item/Item; SHORT_GRASS cN field_8602 + f Lnet/minecraft/world/item/Item; FERN cO field_8471 + f Lnet/minecraft/world/item/Item; AZALEA cP field_28650 + f Lnet/minecraft/world/item/Item; FLOWERING_AZALEA cQ field_28651 + f Lnet/minecraft/world/item/Item; DEAD_BUSH cR field_8689 + f Lnet/minecraft/world/item/Item; SEAGRASS cS field_8158 + f Lnet/minecraft/world/item/Item; SEA_PICKLE cT field_17498 + f Lnet/minecraft/world/item/Item; WHITE_WOOL cU field_19044 + f Lnet/minecraft/world/item/Item; ORANGE_WOOL cV field_19045 + f Lnet/minecraft/world/item/Item; MAGENTA_WOOL cW field_19046 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_WOOL cX field_19047 + f Lnet/minecraft/world/item/Item; YELLOW_WOOL cY field_19048 + f Lnet/minecraft/world/item/Item; LIME_WOOL cZ field_19049 + f Lnet/minecraft/world/item/Item; STRIPPED_SPRUCE_WOOD ca field_8362 + f Lnet/minecraft/world/item/Item; STRIPPED_BIRCH_WOOD cb field_8472 + f Lnet/minecraft/world/item/Item; STRIPPED_JUNGLE_WOOD cc field_8785 + f Lnet/minecraft/world/item/Item; STRIPPED_ACACIA_WOOD cd field_8284 + f Lnet/minecraft/world/item/Item; STRIPPED_CHERRY_WOOD ce field_42690 + f Lnet/minecraft/world/item/Item; STRIPPED_DARK_OAK_WOOD cf field_8219 + f Lnet/minecraft/world/item/Item; STRIPPED_MANGROVE_WOOD cg field_37509 + f Lnet/minecraft/world/item/Item; STRIPPED_CRIMSON_HYPHAE ch field_22487 + f Lnet/minecraft/world/item/Item; STRIPPED_WARPED_HYPHAE ci field_22488 + f Lnet/minecraft/world/item/Item; STRIPPED_BAMBOO_BLOCK cj field_41065 + f Lnet/minecraft/world/item/Item; OAK_WOOD ck field_8888 + f Lnet/minecraft/world/item/Item; SPRUCE_WOOD cl field_8210 + f Lnet/minecraft/world/item/Item; BIRCH_WOOD cm field_8201 + f Lnet/minecraft/world/item/Item; JUNGLE_WOOD cn field_8439 + f Lnet/minecraft/world/item/Item; ACACIA_WOOD co field_8587 + f Lnet/minecraft/world/item/Item; CHERRY_WOOD cp field_42691 + f Lnet/minecraft/world/item/Item; DARK_OAK_WOOD cq field_8458 + f Lnet/minecraft/world/item/Item; MANGROVE_WOOD cr field_37510 + f Lnet/minecraft/world/item/Item; CRIMSON_HYPHAE cs field_22489 + f Lnet/minecraft/world/item/Item; WARPED_HYPHAE ct field_22490 + f Lnet/minecraft/world/item/Item; OAK_LEAVES cu field_17503 + f Lnet/minecraft/world/item/Item; SPRUCE_LEAVES cv field_17504 + f Lnet/minecraft/world/item/Item; BIRCH_LEAVES cw field_17505 + f Lnet/minecraft/world/item/Item; JUNGLE_LEAVES cx field_17506 + f Lnet/minecraft/world/item/Item; ACACIA_LEAVES cy field_17507 + f Lnet/minecraft/world/item/Item; CHERRY_LEAVES cz field_42694 + f Lnet/minecraft/world/item/Item; BROWN_MUSHROOM dA field_17516 + f Lnet/minecraft/world/item/Item; RED_MUSHROOM dB field_17517 + f Lnet/minecraft/world/item/Item; CRIMSON_FUNGUS dC field_21987 + f Lnet/minecraft/world/item/Item; WARPED_FUNGUS dD field_21988 + f Lnet/minecraft/world/item/Item; CRIMSON_ROOTS dE field_21989 + f Lnet/minecraft/world/item/Item; WARPED_ROOTS dF field_21990 + f Lnet/minecraft/world/item/Item; NETHER_SPROUTS dG field_21991 + f Lnet/minecraft/world/item/Item; WEEPING_VINES dH field_21992 + f Lnet/minecraft/world/item/Item; TWISTING_VINES dI field_23070 + f Lnet/minecraft/world/item/Item; SUGAR_CANE dJ field_17531 + f Lnet/minecraft/world/item/Item; KELP dK field_17532 + f Lnet/minecraft/world/item/Item; MOSS_CARPET dL field_28653 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE d field_20397 + f Lnet/minecraft/world/item/Item; PINK_PETALS dM field_42696 + f Lnet/minecraft/world/item/Item; MOSS_BLOCK dN field_28654 + f Lnet/minecraft/world/item/Item; HANGING_ROOTS dO field_28656 + f Lnet/minecraft/world/item/Item; BIG_DRIPLEAF dP field_28657 + f Lnet/minecraft/world/item/Item; SMALL_DRIPLEAF dQ field_28658 + f Lnet/minecraft/world/item/Item; BAMBOO dR field_8648 + f Lnet/minecraft/world/item/Item; OAK_SLAB dS field_8320 + f Lnet/minecraft/world/item/Item; SPRUCE_SLAB dT field_8189 + f Lnet/minecraft/world/item/Item; BIRCH_SLAB dU field_8843 + f Lnet/minecraft/world/item/Item; JUNGLE_SLAB dV field_8224 + f Lnet/minecraft/world/item/Item; ACACIA_SLAB dW field_8400 + f Lnet/minecraft/world/item/Item; CHERRY_SLAB dX field_42697 + f Lnet/minecraft/world/item/Item; DARK_OAK_SLAB dY field_8540 + f Lnet/minecraft/world/item/Item; MANGROVE_SLAB dZ field_37516 + f Lnet/minecraft/world/item/Item; PINK_WOOL da field_19050 + f Lnet/minecraft/world/item/Item; GRAY_WOOL db field_19051 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_WOOL dc field_19052 + f Lnet/minecraft/world/item/Item; CYAN_WOOL dd field_19053 + f Lnet/minecraft/world/item/Item; PURPLE_WOOL de field_19054 + f Lnet/minecraft/world/item/Item; BLUE_WOOL df field_19055 + f Lnet/minecraft/world/item/Item; BROWN_WOOL dg field_19056 + f Lnet/minecraft/world/item/Item; GREEN_WOOL dh field_19057 + f Lnet/minecraft/world/item/Item; RED_WOOL di field_19058 + f Lnet/minecraft/world/item/Item; BLACK_WOOL dj field_19059 + f Lnet/minecraft/world/item/Item; DANDELION dk field_8491 + f Lnet/minecraft/world/item/Item; POPPY dl field_8880 + f Lnet/minecraft/world/item/Item; BLUE_ORCHID dm field_17499 + f Lnet/minecraft/world/item/Item; ALLIUM dn field_17500 + f Lnet/minecraft/world/item/Item; AZURE_BLUET do field_17501 + f Lnet/minecraft/world/item/Item; RED_TULIP dp field_17502 + f Lnet/minecraft/world/item/Item; ORANGE_TULIP dq field_17509 + f Lnet/minecraft/world/item/Item; WHITE_TULIP dr field_17510 + f Lnet/minecraft/world/item/Item; PINK_TULIP ds field_17511 + f Lnet/minecraft/world/item/Item; OXEYE_DAISY dt field_17512 + f Lnet/minecraft/world/item/Item; CORNFLOWER du field_17513 + f Lnet/minecraft/world/item/Item; LILY_OF_THE_VALLEY dv field_17514 + f Lnet/minecraft/world/item/Item; WITHER_ROSE dw field_17515 + f Lnet/minecraft/world/item/Item; TORCHFLOWER dx field_42695 + f Lnet/minecraft/world/item/Item; PITCHER_PLANT dy field_43192 + f Lnet/minecraft/world/item/Item; SPORE_BLOSSOM dz field_28652 + f Lnet/minecraft/world/item/Item; BOOKSHELF eA field_8536 + f Lnet/minecraft/world/item/Item; CHISELED_BOOKSHELF eB field_40215 + f Lnet/minecraft/world/item/Item; DECORATED_POT eC field_42699 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE eD field_20392 + f Lnet/minecraft/world/item/Item; OBSIDIAN eE field_8281 + f Lnet/minecraft/world/item/Item; TORCH eF field_8810 + f Lnet/minecraft/world/item/Item; END_ROD eG field_8056 + f Lnet/minecraft/world/item/Item; CHORUS_PLANT eH field_8358 + f Lnet/minecraft/world/item/Item; CHORUS_FLOWER eI field_8710 + f Lnet/minecraft/world/item/Item; PURPUR_BLOCK eJ field_20393 + f Lnet/minecraft/world/item/Item; PURPUR_PILLAR eK field_8490 + f Lnet/minecraft/world/item/Item; PURPUR_STAIRS eL field_8644 + f Lnet/minecraft/world/item/Item; DIORITE e field_20401 + f Lnet/minecraft/world/item/Item; SPAWNER eM field_8849 + f Lnet/minecraft/world/item/Item; CHEST eN field_8106 + f Lnet/minecraft/world/item/Item; CRAFTING_TABLE eO field_8465 + f Lnet/minecraft/world/item/Item; FARMLAND eP field_8365 + f Lnet/minecraft/world/item/Item; FURNACE eQ field_8732 + f Lnet/minecraft/world/item/Item; LADDER eR field_8121 + f Lnet/minecraft/world/item/Item; COBBLESTONE_STAIRS eS field_8310 + f Lnet/minecraft/world/item/Item; SNOW eT field_8749 + f Lnet/minecraft/world/item/Item; ICE eU field_8426 + f Lnet/minecraft/world/item/Item; SNOW_BLOCK eV field_8246 + f Lnet/minecraft/world/item/Item; CACTUS eW field_17520 + f Lnet/minecraft/world/item/Item; CLAY eX field_19060 + f Lnet/minecraft/world/item/Item; JUKEBOX eY field_8565 + f Lnet/minecraft/world/item/Item; OAK_FENCE eZ field_8792 + f Lnet/minecraft/world/item/Item; BAMBOO_SLAB ea field_40216 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC_SLAB eb field_40217 + f Lnet/minecraft/world/item/Item; CRIMSON_SLAB ec field_21985 + f Lnet/minecraft/world/item/Item; WARPED_SLAB ed field_21986 + f Lnet/minecraft/world/item/Item; STONE_SLAB ee field_8595 + f Lnet/minecraft/world/item/Item; SMOOTH_STONE_SLAB ef field_8291 + f Lnet/minecraft/world/item/Item; SANDSTONE_SLAB eg field_18888 + f Lnet/minecraft/world/item/Item; CUT_STANDSTONE_SLAB eh field_18889 + f Lnet/minecraft/world/item/Item; PETRIFIED_OAK_SLAB ei field_8060 + f Lnet/minecraft/world/item/Item; COBBLESTONE_SLAB ej field_8194 + f Lnet/minecraft/world/item/Item; BRICK_SLAB ek field_8342 + f Lnet/minecraft/world/item/Item; STONE_BRICK_SLAB el field_8524 + f Lnet/minecraft/world/item/Item; MUD_BRICK_SLAB em field_37517 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_SLAB en field_8505 + f Lnet/minecraft/world/item/Item; QUARTZ_SLAB eo field_8412 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_SLAB ep field_18886 + f Lnet/minecraft/world/item/Item; CUT_RED_SANDSTONE_SLAB eq field_18887 + f Lnet/minecraft/world/item/Item; PURPUR_SLAB er field_8202 + f Lnet/minecraft/world/item/Item; PRISMARINE_SLAB es field_8440 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICK_SLAB et field_8588 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE_SLAB eu field_8459 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ ev field_20386 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE ew field_20387 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE ex field_20388 + f Lnet/minecraft/world/item/Item; SMOOTH_STONE ey field_20389 + f Lnet/minecraft/world/item/Item; BRICKS ez field_20390 + f Lnet/minecraft/world/item/Item; INFESTED_CHISELED_STONE_BRICKS fA field_8148 + f Lnet/minecraft/world/item/Item; INFESTED_DEEPSLATE fB field_29213 + f Lnet/minecraft/world/item/Item; STONE_BRICKS fC field_20395 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICKS fD field_20396 + f Lnet/minecraft/world/item/Item; CRACKED_STONE_BRICKS fE field_8343 + f Lnet/minecraft/world/item/Item; CHISELED_STONE_BRICKS fF field_8525 + f Lnet/minecraft/world/item/Item; PACKED_MUD fG field_37518 + f Lnet/minecraft/world/item/Item; MUD_BRICKS fH field_37519 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICKS fI field_28859 + f Lnet/minecraft/world/item/Item; CRACKED_DEEPSLATE_BRICKS fJ field_29214 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILES fK field_28860 + f Lnet/minecraft/world/item/Item; CRACKED_DEEPSLATE_TILES fL field_29215 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE f field_20403 + f Lnet/minecraft/world/item/Item; CHISELED_DEEPSLATE fM field_28861 + f Lnet/minecraft/world/item/Item; REINFORCED_DEEPSLATE fN field_38418 + f Lnet/minecraft/world/item/Item; BROWN_MUSHROOM_BLOCK fO field_8506 + f Lnet/minecraft/world/item/Item; RED_MUSHROOM_BLOCK fP field_8682 + f Lnet/minecraft/world/item/Item; MUSHROOM_STEM fQ field_17521 + f Lnet/minecraft/world/item/Item; IRON_BARS fR field_8076 + f Lnet/minecraft/world/item/Item; CHAIN fS field_23983 + f Lnet/minecraft/world/item/Item; GLASS_PANE fT field_8141 + f Lnet/minecraft/world/item/Item; MELON fU field_17522 + f Lnet/minecraft/world/item/Item; VINE fV field_17523 + f Lnet/minecraft/world/item/Item; GLOW_LICHEN fW field_28409 + f Lnet/minecraft/world/item/Item; BRICK_STAIRS fX field_8663 + f Lnet/minecraft/world/item/Item; STONE_BRICK_STAIRS fY field_8481 + f Lnet/minecraft/world/item/Item; MUD_BRICK_STAIRS fZ field_37522 + f Lnet/minecraft/world/item/Item; SPRUCE_FENCE fa field_8701 + f Lnet/minecraft/world/item/Item; BIRCH_FENCE fb field_8457 + f Lnet/minecraft/world/item/Item; JUNGLE_FENCE fc field_8823 + f Lnet/minecraft/world/item/Item; ACACIA_FENCE fd field_8646 + f Lnet/minecraft/world/item/Item; CHERRY_FENCE fe field_42698 + f Lnet/minecraft/world/item/Item; DARK_OAK_FENCE ff field_8454 + f Lnet/minecraft/world/item/Item; MANGROVE_FENCE fg field_37520 + f Lnet/minecraft/world/item/Item; BAMBOO_FENCE fh field_40218 + f Lnet/minecraft/world/item/Item; CRIMSON_FENCE fi field_21995 + f Lnet/minecraft/world/item/Item; WARPED_FENCE fj field_21996 + f Lnet/minecraft/world/item/Item; PUMPKIN fk field_17518 + f Lnet/minecraft/world/item/Item; CARVED_PUMPKIN fl field_17519 + f Lnet/minecraft/world/item/Item; JACK_O_LANTERN fm field_8693 + f Lnet/minecraft/world/item/Item; NETHERRACK fn field_8328 + f Lnet/minecraft/world/item/Item; SOUL_SAND fo field_8067 + f Lnet/minecraft/world/item/Item; SOUL_SOIL fp field_21999 + f Lnet/minecraft/world/item/Item; BASALT fq field_22000 + f Lnet/minecraft/world/item/Item; POLISHED_BASALT fr field_23069 + f Lnet/minecraft/world/item/Item; SMOOTH_BASALT fs field_29024 + f Lnet/minecraft/world/item/Item; SOUL_TORCH ft field_22001 + f Lnet/minecraft/world/item/Item; GLOWSTONE fu field_8801 + f Lnet/minecraft/world/item/Item; INFESTED_STONE fv field_8225 + f Lnet/minecraft/world/item/Item; INFESTED_COBBLESTONE fw field_8401 + f Lnet/minecraft/world/item/Item; INFESTED_STONE_BRICKS fx field_8541 + f Lnet/minecraft/world/item/Item; INFESTED_MOSSY_STONE_BRICKS fy field_8596 + f Lnet/minecraft/world/item/Item; INFESTED_CRACKED_STONE_BRICKS fz field_8292 + f Lnet/minecraft/world/item/Item; MANGROVE_STAIRS gA field_37526 + f Lnet/minecraft/world/item/Item; BAMBOO_STAIRS gB field_40219 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC_STAIRS gC field_40220 + f Lnet/minecraft/world/item/Item; CRIMSON_STAIRS gD field_22006 + f Lnet/minecraft/world/item/Item; WARPED_STAIRS gE field_22007 + f Lnet/minecraft/world/item/Item; COMMAND_BLOCK gF field_8866 + f Lnet/minecraft/world/item/Item; BEACON gG field_8668 + f Lnet/minecraft/world/item/Item; COBBLESTONE_WALL gH field_8392 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_WALL gI field_8708 + f Lnet/minecraft/world/item/Item; BRICK_WALL gJ field_8804 + f Lnet/minecraft/world/item/Item; PRISMARINE_WALL gK field_8057 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_WALL gL field_8359 + f Lnet/minecraft/world/item/Item; ANDESITE g field_20407 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_WALL gM field_8811 + f Lnet/minecraft/world/item/Item; GRANITE_WALL gN field_8488 + f Lnet/minecraft/world/item/Item; STONE_BRICK_WALL gO field_8337 + f Lnet/minecraft/world/item/Item; MUD_BRICK_WALL gP field_37521 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_WALL gQ field_8765 + f Lnet/minecraft/world/item/Item; ANDESITE_WALL gR field_8206 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_WALL gS field_8419 + f Lnet/minecraft/world/item/Item; SANDSTONE_WALL gT field_8223 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_WALL gU field_8819 + f Lnet/minecraft/world/item/Item; DIORITE_WALL gV field_8559 + f Lnet/minecraft/world/item/Item; BLACKSTONE_WALL gW field_23846 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_WALL gX field_23833 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_WALL gY field_23840 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_WALL gZ field_28862 + f Lnet/minecraft/world/item/Item; MYCELIUM ga field_8610 + f Lnet/minecraft/world/item/Item; LILY_PAD gb field_17524 + f Lnet/minecraft/world/item/Item; NETHER_BRICKS gc field_20398 + f Lnet/minecraft/world/item/Item; CRACKED_NETHER_BRICKS gd field_23828 + f Lnet/minecraft/world/item/Item; CHISELED_NETHER_BRICKS ge field_23829 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_FENCE gf field_8080 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_STAIRS gg field_8444 + f Lnet/minecraft/world/item/Item; SCULK gh field_37523 + f Lnet/minecraft/world/item/Item; SCULK_VEIN gi field_37524 + f Lnet/minecraft/world/item/Item; SCULK_CATALYST gj field_37525 + f Lnet/minecraft/world/item/Item; SCULK_SHRIEKER gk field_37538 + f Lnet/minecraft/world/item/Item; ENCHANTING_TABLE gl field_8657 + f Lnet/minecraft/world/item/Item; END_PORTAL_FRAME gm field_8827 + f Lnet/minecraft/world/item/Item; END_STONE gn field_20399 + f Lnet/minecraft/world/item/Item; END_STONE_BRICKS go field_20400 + f Lnet/minecraft/world/item/Item; DRAGON_EGG gp field_8840 + f Lnet/minecraft/world/item/Item; SANDSTONE_STAIRS gq field_8443 + f Lnet/minecraft/world/item/Item; ENDER_CHEST gr field_8466 + f Lnet/minecraft/world/item/Item; EMERALD_BLOCK gs field_8733 + f Lnet/minecraft/world/item/Item; OAK_STAIRS gt field_8212 + f Lnet/minecraft/world/item/Item; SPRUCE_STAIRS gu field_8122 + f Lnet/minecraft/world/item/Item; BIRCH_STAIRS gv field_8130 + f Lnet/minecraft/world/item/Item; JUNGLE_STAIRS gw field_8311 + f Lnet/minecraft/world/item/Item; ACACIA_STAIRS gx field_8445 + f Lnet/minecraft/world/item/Item; CHERRY_STAIRS gy field_42700 + f Lnet/minecraft/world/item/Item; DARK_OAK_STAIRS gz field_8658 + f Lnet/minecraft/world/item/Item; BLACK_TERRACOTTA hA field_8181 + f Lnet/minecraft/world/item/Item; BARRIER hB field_8077 + f Lnet/minecraft/world/item/Item; LIGHT hC field_30904 + f Lnet/minecraft/world/item/Item; HAY_BLOCK hD field_17528 + f Lnet/minecraft/world/item/Item; WHITE_CARPET hE field_8850 + f Lnet/minecraft/world/item/Item; ORANGE_CARPET hF field_8683 + f Lnet/minecraft/world/item/Item; MAGENTA_CARPET hG field_8384 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CARPET hH field_8078 + f Lnet/minecraft/world/item/Item; YELLOW_CARPET hI field_8142 + f Lnet/minecraft/world/item/Item; LIME_CARPET hJ field_8253 + f Lnet/minecraft/world/item/Item; PINK_CARPET hK field_8580 + f Lnet/minecraft/world/item/Item; GRAY_CARPET hL field_8875 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE h field_20411 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CARPET hM field_8654 + f Lnet/minecraft/world/item/Item; CYAN_CARPET hN field_8290 + f Lnet/minecraft/world/item/Item; PURPLE_CARPET hO field_8098 + f Lnet/minecraft/world/item/Item; BLUE_CARPET hP field_8115 + f Lnet/minecraft/world/item/Item; BROWN_CARPET hQ field_8294 + f Lnet/minecraft/world/item/Item; GREEN_CARPET hR field_8664 + f Lnet/minecraft/world/item/Item; RED_CARPET hS field_8482 + f Lnet/minecraft/world/item/Item; BLACK_CARPET hT field_8611 + f Lnet/minecraft/world/item/Item; TERRACOTTA hU field_8260 + f Lnet/minecraft/world/item/Item; PACKED_ICE hV field_8081 + f Lnet/minecraft/world/item/Item; DIRT_PATH hW field_8519 + f Lnet/minecraft/world/item/Item; SUNFLOWER hX field_17525 + f Lnet/minecraft/world/item/Item; LILAC hY field_17526 + f Lnet/minecraft/world/item/Item; ROSE_BUSH hZ field_17527 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_WALL ha field_28863 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_WALL hb field_28865 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_WALL hc field_28864 + f Lnet/minecraft/world/item/Item; ANVIL hd field_8782 + f Lnet/minecraft/world/item/Item; CHIPPED_ANVIL he field_8750 + f Lnet/minecraft/world/item/Item; DAMAGED_ANVIL hf field_8427 + f Lnet/minecraft/world/item/Item; CHISELED_QUARTZ_BLOCK hg field_8084 + f Lnet/minecraft/world/item/Item; QUARTZ_BLOCK hh field_20402 + f Lnet/minecraft/world/item/Item; QUARTZ_BRICKS hi field_23830 + f Lnet/minecraft/world/item/Item; QUARTZ_PILLAR hj field_8746 + f Lnet/minecraft/world/item/Item; QUARTZ_STAIRS hk field_8499 + f Lnet/minecraft/world/item/Item; WHITE_TERRACOTTA hl field_8156 + f Lnet/minecraft/world/item/Item; ORANGE_TERRACOTTA hm field_8043 + f Lnet/minecraft/world/item/Item; MAGENTA_TERRACOTTA hn field_8783 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_TERRACOTTA ho field_8717 + f Lnet/minecraft/world/item/Item; YELLOW_TERRACOTTA hp field_8385 + f Lnet/minecraft/world/item/Item; LIME_TERRACOTTA hq field_8672 + f Lnet/minecraft/world/item/Item; PINK_TERRACOTTA hr field_8853 + f Lnet/minecraft/world/item/Item; GRAY_TERRACOTTA hs field_8304 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_TERRACOTTA ht field_8133 + f Lnet/minecraft/world/item/Item; CYAN_TERRACOTTA hu field_8821 + f Lnet/minecraft/world/item/Item; PURPLE_TERRACOTTA hv field_8715 + f Lnet/minecraft/world/item/Item; BLUE_TERRACOTTA hw field_8455 + f Lnet/minecraft/world/item/Item; BROWN_TERRACOTTA hx field_8467 + f Lnet/minecraft/world/item/Item; GREEN_TERRACOTTA hy field_8798 + f Lnet/minecraft/world/item/Item; RED_TERRACOTTA hz field_8353 + f Lnet/minecraft/world/item/Item; GRAY_STAINED_GLASS_PANE iA field_8871 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_STAINED_GLASS_PANE iB field_8240 + f Lnet/minecraft/world/item/Item; CYAN_STAINED_GLASS_PANE iC field_8085 + f Lnet/minecraft/world/item/Item; PURPLE_STAINED_GLASS_PANE iD field_8739 + f Lnet/minecraft/world/item/Item; BLUE_STAINED_GLASS_PANE iE field_8747 + f Lnet/minecraft/world/item/Item; BROWN_STAINED_GLASS_PANE iF field_8501 + f Lnet/minecraft/world/item/Item; GREEN_STAINED_GLASS_PANE iG field_8656 + f Lnet/minecraft/world/item/Item; RED_STAINED_GLASS_PANE iH field_8879 + f Lnet/minecraft/world/item/Item; BLACK_STAINED_GLASS_PANE iI field_8157 + f Lnet/minecraft/world/item/Item; PRISMARINE iJ field_20404 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICKS iK field_20405 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE iL field_20406 + f Lnet/minecraft/world/item/Item; DEEPSLATE i field_28866 + f Lnet/minecraft/world/item/Item; PRISMARINE_STAIRS iM field_8386 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICK_STAIRS iN field_8673 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE_STAIRS iO field_8854 + f Lnet/minecraft/world/item/Item; SEA_LANTERN iP field_8305 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE iQ field_20408 + f Lnet/minecraft/world/item/Item; CHISELED_RED_SANDSTONE iR field_8822 + f Lnet/minecraft/world/item/Item; CUT_RED_SANDSTONE iS field_20409 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_STAIRS iT field_8456 + f Lnet/minecraft/world/item/Item; REPEATING_COMMAND_BLOCK iU field_8468 + f Lnet/minecraft/world/item/Item; CHAIN_COMMAND_BLOCK iV field_8799 + f Lnet/minecraft/world/item/Item; MAGMA_BLOCK iW field_8354 + f Lnet/minecraft/world/item/Item; NETHER_WART_BLOCK iX field_8182 + f Lnet/minecraft/world/item/Item; WARPED_WART_BLOCK iY field_22008 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICKS iZ field_20410 + f Lnet/minecraft/world/item/Item; PEONY ia field_17529 + f Lnet/minecraft/world/item/Item; TALL_GRASS ib field_8256 + f Lnet/minecraft/world/item/Item; LARGE_FERN ic field_8561 + f Lnet/minecraft/world/item/Item; WHITE_STAINED_GLASS id field_8483 + f Lnet/minecraft/world/item/Item; ORANGE_STAINED_GLASS ie field_8393 + f Lnet/minecraft/world/item/Item; MAGENTA_STAINED_GLASS if field_8243 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_STAINED_GLASS ig field_8869 + f Lnet/minecraft/world/item/Item; YELLOW_STAINED_GLASS ih field_8095 + f Lnet/minecraft/world/item/Item; LIME_STAINED_GLASS ii field_8340 + f Lnet/minecraft/world/item/Item; PINK_STAINED_GLASS ij field_8770 + f Lnet/minecraft/world/item/Item; GRAY_STAINED_GLASS ik field_8507 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_STAINED_GLASS il field_8363 + f Lnet/minecraft/world/item/Item; CYAN_STAINED_GLASS im field_8685 + f Lnet/minecraft/world/item/Item; PURPLE_STAINED_GLASS in field_8838 + f Lnet/minecraft/world/item/Item; BLUE_STAINED_GLASS io field_8126 + f Lnet/minecraft/world/item/Item; BROWN_STAINED_GLASS ip field_8332 + f Lnet/minecraft/world/item/Item; GREEN_STAINED_GLASS iq field_8734 + f Lnet/minecraft/world/item/Item; RED_STAINED_GLASS ir field_8636 + f Lnet/minecraft/world/item/Item; BLACK_STAINED_GLASS is field_8410 + f Lnet/minecraft/world/item/Item; WHITE_STAINED_GLASS_PANE it field_8736 + f Lnet/minecraft/world/item/Item; ORANGE_STAINED_GLASS_PANE iu field_8761 + f Lnet/minecraft/world/item/Item; MAGENTA_STAINED_GLASS_PANE iv field_8119 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_STAINED_GLASS_PANE iw field_8196 + f Lnet/minecraft/world/item/Item; YELLOW_STAINED_GLASS_PANE ix field_8703 + f Lnet/minecraft/world/item/Item; LIME_STAINED_GLASS_PANE iy field_8581 + f Lnet/minecraft/world/item/Item; PINK_STAINED_GLASS_PANE iz field_8500 + f Lnet/minecraft/world/item/Item; GRAY_GLAZED_TERRACOTTA jA field_8885 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_GLAZED_TERRACOTTA jB field_8172 + f Lnet/minecraft/world/item/Item; CYAN_GLAZED_TERRACOTTA jC field_8257 + f Lnet/minecraft/world/item/Item; PURPLE_GLAZED_TERRACOTTA jD field_8562 + f Lnet/minecraft/world/item/Item; BLUE_GLAZED_TERRACOTTA jE field_8484 + f Lnet/minecraft/world/item/Item; BROWN_GLAZED_TERRACOTTA jF field_8394 + f Lnet/minecraft/world/item/Item; GREEN_GLAZED_TERRACOTTA jG field_8244 + f Lnet/minecraft/world/item/Item; RED_GLAZED_TERRACOTTA jH field_8870 + f Lnet/minecraft/world/item/Item; BLACK_GLAZED_TERRACOTTA jI field_8096 + f Lnet/minecraft/world/item/Item; WHITE_CONCRETE jJ field_8341 + f Lnet/minecraft/world/item/Item; ORANGE_CONCRETE jK field_8771 + f Lnet/minecraft/world/item/Item; MAGENTA_CONCRETE jL field_8508 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE j field_29025 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CONCRETE jM field_8364 + f Lnet/minecraft/world/item/Item; YELLOW_CONCRETE jN field_8686 + f Lnet/minecraft/world/item/Item; LIME_CONCRETE jO field_8839 + f Lnet/minecraft/world/item/Item; PINK_CONCRETE jP field_8127 + f Lnet/minecraft/world/item/Item; GRAY_CONCRETE jQ field_8333 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CONCRETE jR field_8735 + f Lnet/minecraft/world/item/Item; CYAN_CONCRETE jS field_8637 + f Lnet/minecraft/world/item/Item; PURPLE_CONCRETE jT field_8411 + f Lnet/minecraft/world/item/Item; BLUE_CONCRETE jU field_8737 + f Lnet/minecraft/world/item/Item; BROWN_CONCRETE jV field_8762 + f Lnet/minecraft/world/item/Item; GREEN_CONCRETE jW field_8120 + f Lnet/minecraft/world/item/Item; RED_CONCRETE jX field_8197 + f Lnet/minecraft/world/item/Item; BLACK_CONCRETE jY field_8704 + f Lnet/minecraft/world/item/Item; WHITE_CONCRETE_POWDER jZ field_8582 + f Lnet/minecraft/world/item/Item; BONE_BLOCK ja field_8242 + f Lnet/minecraft/world/item/Item; STRUCTURE_VOID jb field_8615 + f Lnet/minecraft/world/item/Item; SHULKER_BOX jc field_8545 + f Lnet/minecraft/world/item/Item; WHITE_SHULKER_BOX jd field_8722 + f Lnet/minecraft/world/item/Item; ORANGE_SHULKER_BOX je field_8380 + f Lnet/minecraft/world/item/Item; MAGENTA_SHULKER_BOX jf field_8050 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_SHULKER_BOX jg field_8829 + f Lnet/minecraft/world/item/Item; YELLOW_SHULKER_BOX jh field_8271 + f Lnet/minecraft/world/item/Item; LIME_SHULKER_BOX ji field_8548 + f Lnet/minecraft/world/item/Item; PINK_SHULKER_BOX jj field_8520 + f Lnet/minecraft/world/item/Item; GRAY_SHULKER_BOX jk field_8627 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_SHULKER_BOX jl field_8451 + f Lnet/minecraft/world/item/Item; CYAN_SHULKER_BOX jm field_8213 + f Lnet/minecraft/world/item/Item; PURPLE_SHULKER_BOX jn field_8816 + f Lnet/minecraft/world/item/Item; BLUE_SHULKER_BOX jo field_8350 + f Lnet/minecraft/world/item/Item; BROWN_SHULKER_BOX jp field_8584 + f Lnet/minecraft/world/item/Item; GREEN_SHULKER_BOX jq field_8461 + f Lnet/minecraft/world/item/Item; RED_SHULKER_BOX jr field_8676 + f Lnet/minecraft/world/item/Item; BLACK_SHULKER_BOX js field_8268 + f Lnet/minecraft/world/item/Item; WHITE_GLAZED_TERRACOTTA jt field_8177 + f Lnet/minecraft/world/item/Item; ORANGE_GLAZED_TERRACOTTA ju field_8139 + f Lnet/minecraft/world/item/Item; MAGENTA_GLAZED_TERRACOTTA jv field_8318 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_GLAZED_TERRACOTTA jw field_8640 + f Lnet/minecraft/world/item/Item; YELLOW_GLAZED_TERRACOTTA jx field_8889 + f Lnet/minecraft/world/item/Item; LIME_GLAZED_TERRACOTTA jy field_8649 + f Lnet/minecraft/world/item/Item; PINK_GLAZED_TERRACOTTA jz field_8277 + f Lnet/minecraft/world/item/Item; HORN_CORAL_BLOCK kA field_8104 + f Lnet/minecraft/world/item/Item; TUBE_CORAL kB field_8847 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL kC field_8616 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL kD field_8538 + f Lnet/minecraft/world/item/Item; FIRE_CORAL kE field_8546 + f Lnet/minecraft/world/item/Item; HORN_CORAL kF field_8723 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL kG field_8381 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL kH field_8051 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL kI field_8830 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL kJ field_8272 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL kK field_8549 + f Lnet/minecraft/world/item/Item; TUBE_CORAL_FAN kL field_8521 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE k field_28871 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL_FAN kM field_8628 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL_FAN kN field_8452 + f Lnet/minecraft/world/item/Item; FIRE_CORAL_FAN kO field_8214 + f Lnet/minecraft/world/item/Item; HORN_CORAL_FAN kP field_8817 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL_FAN kQ field_8351 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL_FAN kR field_8585 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL_FAN kS field_8462 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL_FAN kT field_8677 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL_FAN kU field_8269 + f Lnet/minecraft/world/item/Item; BLUE_ICE kV field_8178 + f Lnet/minecraft/world/item/Item; CONDUIT kW field_8140 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE_STAIRS kX field_8319 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE_STAIRS kY field_8641 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_STAIRS kZ field_8890 + f Lnet/minecraft/world/item/Item; ORANGE_CONCRETE_POWDER ka field_8487 + f Lnet/minecraft/world/item/Item; MAGENTA_CONCRETE_POWDER kb field_8336 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CONCRETE_POWDER kc field_8764 + f Lnet/minecraft/world/item/Item; YELLOW_CONCRETE_POWDER kd field_8205 + f Lnet/minecraft/world/item/Item; LIME_CONCRETE_POWDER ke field_8418 + f Lnet/minecraft/world/item/Item; PINK_CONCRETE_POWDER kf field_8222 + f Lnet/minecraft/world/item/Item; GRAY_CONCRETE_POWDER kg field_8818 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CONCRETE_POWDER kh field_8558 + f Lnet/minecraft/world/item/Item; CYAN_CONCRETE_POWDER ki field_8593 + f Lnet/minecraft/world/item/Item; PURPLE_CONCRETE_POWDER kj field_8690 + f Lnet/minecraft/world/item/Item; BLUE_CONCRETE_POWDER kk field_8164 + f Lnet/minecraft/world/item/Item; BROWN_CONCRETE_POWDER kl field_8437 + f Lnet/minecraft/world/item/Item; GREEN_CONCRETE_POWDER km field_8198 + f Lnet/minecraft/world/item/Item; RED_CONCRETE_POWDER kn field_8757 + f Lnet/minecraft/world/item/Item; BLACK_CONCRETE_POWDER ko field_8516 + f Lnet/minecraft/world/item/Item; TURTLE_EGG kp field_8618 + f Lnet/minecraft/world/item/Item; SNIFFER_EGG kq field_43193 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL_BLOCK kr field_8856 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL_BLOCK ks field_8237 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL_BLOCK kt field_8089 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL_BLOCK ku field_8160 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL_BLOCK kv field_8698 + f Lnet/minecraft/world/item/Item; TUBE_CORAL_BLOCK kw field_8402 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL_BLOCK kx field_8474 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL_BLOCK ky field_8883 + f Lnet/minecraft/world/item/Item; FIRE_CORAL_BLOCK kz field_8278 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE_SLAB lA field_8395 + f Lnet/minecraft/world/item/Item; DIORITE_SLAB lB field_8659 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_SLAB lC field_28873 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_SLAB lD field_28872 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_SLAB lE field_28875 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_SLAB lF field_28874 + f Lnet/minecraft/world/item/Item; SCAFFOLDING lG field_16482 + f Lnet/minecraft/world/item/Item; REDSTONE lH field_8725 + f Lnet/minecraft/world/item/Item; REDSTONE_TORCH lI field_8530 + f Lnet/minecraft/world/item/Item; REDSTONE_BLOCK lJ field_8793 + f Lnet/minecraft/world/item/Item; REPEATER lK field_8619 + f Lnet/minecraft/world/item/Item; COMPARATOR lL field_8857 + f Lnet/minecraft/world/item/Item; CALCITE l field_27020 + f Lnet/minecraft/world/item/Item; PISTON lM field_8249 + f Lnet/minecraft/world/item/Item; STICKY_PISTON lN field_8105 + f Lnet/minecraft/world/item/Item; SLIME_BLOCK lO field_8828 + f Lnet/minecraft/world/item/Item; HONEY_BLOCK lP field_21086 + f Lnet/minecraft/world/item/Item; OBSERVER lQ field_8537 + f Lnet/minecraft/world/item/Item; HOPPER lR field_8239 + f Lnet/minecraft/world/item/Item; DISPENSER lS field_8357 + f Lnet/minecraft/world/item/Item; DROPPER lT field_8878 + f Lnet/minecraft/world/item/Item; LECTERN lU field_16312 + f Lnet/minecraft/world/item/Item; TARGET lV field_22420 + f Lnet/minecraft/world/item/Item; LEVER lW field_8865 + f Lnet/minecraft/world/item/Item; LIGHTNING_ROD lX field_27051 + f Lnet/minecraft/world/item/Item; DAYLIGHT_DETECTOR lY field_8566 + f Lnet/minecraft/world/item/Item; SCULK_SENSOR lZ field_28101 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE_STAIRS la field_8650 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_STAIRS lb field_8275 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_STAIRS lc field_8152 + f Lnet/minecraft/world/item/Item; STONE_STAIRS ld field_8053 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE_STAIRS le field_8166 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ_STAIRS lf field_8430 + f Lnet/minecraft/world/item/Item; GRANITE_STAIRS lg field_8608 + f Lnet/minecraft/world/item/Item; ANDESITE_STAIRS lh field_8526 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_STAIRS li field_8302 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE_STAIRS lj field_8316 + f Lnet/minecraft/world/item/Item; DIORITE_STAIRS lk field_8860 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_STAIRS ll field_28867 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_STAIRS lm field_28868 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_STAIRS ln field_28870 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_STAIRS lo field_28869 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE_SLAB lp field_8228 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE_SLAB lq field_8266 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_SLAB lr field_8576 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE_SLAB ls field_8569 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_SLAB lt field_8369 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_SLAB lu field_8282 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE_SLAB lv field_8872 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ_SLAB lw field_8217 + f Lnet/minecraft/world/item/Item; GRANITE_SLAB lx field_8312 + f Lnet/minecraft/world/item/Item; ANDESITE_SLAB ly field_8742 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_SLAB lz field_8522 + f Lnet/minecraft/world/item/Item; JUNGLE_PRESSURE_PLATE mA field_8047 + f Lnet/minecraft/world/item/Item; ACACIA_PRESSURE_PLATE mB field_8173 + f Lnet/minecraft/world/item/Item; CHERRY_PRESSURE_PLATE mC field_42704 + f Lnet/minecraft/world/item/Item; DARK_OAK_PRESSURE_PLATE mD field_8886 + f Lnet/minecraft/world/item/Item; MANGROVE_PRESSURE_PLATE mE field_37527 + f Lnet/minecraft/world/item/Item; BAMBOO_PRESSURE_PLATE mF field_40221 + f Lnet/minecraft/world/item/Item; CRIMSON_PRESSURE_PLATE mG field_21993 + f Lnet/minecraft/world/item/Item; WARPED_PRESSURE_PLATE mH field_21994 + f Lnet/minecraft/world/item/Item; IRON_DOOR mI field_8594 + f Lnet/minecraft/world/item/Item; OAK_DOOR mJ field_8691 + f Lnet/minecraft/world/item/Item; SPRUCE_DOOR mK field_8165 + f Lnet/minecraft/world/item/Item; BIRCH_DOOR mL field_8438 + f Lnet/minecraft/world/item/Item; TUFF m field_27021 + f Lnet/minecraft/world/item/Item; JUNGLE_DOOR mM field_8199 + f Lnet/minecraft/world/item/Item; ACACIA_DOOR mN field_8758 + f Lnet/minecraft/world/item/Item; CHERRY_DOOR mO field_42705 + f Lnet/minecraft/world/item/Item; DARK_OAK_DOOR mP field_8517 + f Lnet/minecraft/world/item/Item; MANGROVE_DOOR mQ field_37528 + f Lnet/minecraft/world/item/Item; BAMBOO_DOOR mR field_40222 + f Lnet/minecraft/world/item/Item; CRIMSON_DOOR mS field_22010 + f Lnet/minecraft/world/item/Item; WARPED_DOOR mT field_22009 + f Lnet/minecraft/world/item/Item; COPPER_DOOR mU field_46982 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_DOOR mV field_46983 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_DOOR mW field_46984 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_DOOR mX field_46985 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_DOOR mY field_46986 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_DOOR mZ field_46987 + f Lnet/minecraft/world/item/Item; CALIBRATED_SCULK_SENSOR ma field_43194 + f Lnet/minecraft/world/item/Item; TRIPWIRE_HOOK mb field_8366 + f Lnet/minecraft/world/item/Item; TRAPPED_CHEST mc field_8247 + f Lnet/minecraft/world/item/Item; TNT md field_8626 + f Lnet/minecraft/world/item/Item; REDSTONE_LAMP me field_8230 + f Lnet/minecraft/world/item/Item; NOTE_BLOCK mf field_8643 + f Lnet/minecraft/world/item/Item; STONE_BUTTON mg field_8781 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BUTTON mh field_23834 + f Lnet/minecraft/world/item/Item; OAK_BUTTON mi field_8780 + f Lnet/minecraft/world/item/Item; SPRUCE_BUTTON mj field_8048 + f Lnet/minecraft/world/item/Item; BIRCH_BUTTON mk field_8174 + f Lnet/minecraft/world/item/Item; JUNGLE_BUTTON ml field_8887 + f Lnet/minecraft/world/item/Item; ACACIA_BUTTON mm field_8605 + f Lnet/minecraft/world/item/Item; CHERRY_BUTTON mn field_42701 + f Lnet/minecraft/world/item/Item; DARK_OAK_BUTTON mo field_8531 + f Lnet/minecraft/world/item/Item; MANGROVE_BUTTON mp field_37530 + f Lnet/minecraft/world/item/Item; BAMBOO_BUTTON mq field_40223 + f Lnet/minecraft/world/item/Item; CRIMSON_BUTTON mr field_22004 + f Lnet/minecraft/world/item/Item; WARPED_BUTTON ms field_22005 + f Lnet/minecraft/world/item/Item; STONE_PRESSURE_PLATE mt field_8667 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_PRESSURE_PLATE mu field_23835 + f Lnet/minecraft/world/item/Item; LIGHT_WEIGHTED_PRESSURE_PLATE mv field_8721 + f Lnet/minecraft/world/item/Item; HEAVY_WEIGHTED_PRESSURE_PLATE mw field_8592 + f Lnet/minecraft/world/item/Item; OAK_PRESSURE_PLATE mx field_8391 + f Lnet/minecraft/world/item/Item; SPRUCE_PRESSURE_PLATE my field_8707 + f Lnet/minecraft/world/item/Item; BIRCH_PRESSURE_PLATE mz field_8779 + f Lnet/minecraft/world/item/Item; ACACIA_FENCE_GATE nA field_8114 + f Lnet/minecraft/world/item/Item; CHERRY_FENCE_GATE nB field_42703 + f Lnet/minecraft/world/item/Item; DARK_OAK_FENCE_GATE nC field_8293 + f Lnet/minecraft/world/item/Item; MANGROVE_FENCE_GATE nD field_37532 + f Lnet/minecraft/world/item/Item; BAMBOO_FENCE_GATE nE field_40227 + f Lnet/minecraft/world/item/Item; CRIMSON_FENCE_GATE nF field_21997 + f Lnet/minecraft/world/item/Item; WARPED_FENCE_GATE nG field_21998 + f Lnet/minecraft/world/item/Item; POWERED_RAIL nH field_8848 + f Lnet/minecraft/world/item/Item; DETECTOR_RAIL nI field_8211 + f Lnet/minecraft/world/item/Item; RAIL nJ field_8129 + f Lnet/minecraft/world/item/Item; ACTIVATOR_RAIL nK field_8655 + f Lnet/minecraft/world/item/Item; SADDLE nL field_8175 + f Lnet/minecraft/world/item/Item; TUFF_SLAB n field_46989 + f Lnet/minecraft/world/item/Item; MINECART nM field_8045 + f Lnet/minecraft/world/item/Item; CHEST_MINECART nN field_8388 + f Lnet/minecraft/world/item/Item; FURNACE_MINECART nO field_8063 + f Lnet/minecraft/world/item/Item; TNT_MINECART nP field_8069 + f Lnet/minecraft/world/item/Item; HOPPER_MINECART nQ field_8836 + f Lnet/minecraft/world/item/Item; CARROT_ON_A_STICK nR field_8184 + f Lnet/minecraft/world/item/Item; WARPED_FUNGUS_ON_A_STICK nS field_23254 + f Lnet/minecraft/world/item/Item; ELYTRA nT field_8833 + f Lnet/minecraft/world/item/Item; OAK_BOAT nU field_8533 + f Lnet/minecraft/world/item/Item; OAK_CHEST_BOAT nV field_38216 + f Lnet/minecraft/world/item/Item; SPRUCE_BOAT nW field_8486 + f Lnet/minecraft/world/item/Item; SPRUCE_CHEST_BOAT nX field_38217 + f Lnet/minecraft/world/item/Item; BIRCH_BOAT nY field_8442 + f Lnet/minecraft/world/item/Item; BIRCH_CHEST_BOAT nZ field_38218 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_DOOR na field_46988 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_DOOR nb field_46990 + f Lnet/minecraft/world/item/Item; IRON_TRAPDOOR nc field_8241 + f Lnet/minecraft/world/item/Item; OAK_TRAPDOOR nd field_8376 + f Lnet/minecraft/world/item/Item; SPRUCE_TRAPDOOR ne field_8495 + f Lnet/minecraft/world/item/Item; BIRCH_TRAPDOOR nf field_8774 + f Lnet/minecraft/world/item/Item; JUNGLE_TRAPDOOR ng field_8321 + f Lnet/minecraft/world/item/Item; ACACIA_TRAPDOOR nh field_8190 + f Lnet/minecraft/world/item/Item; CHERRY_TRAPDOOR ni field_42702 + f Lnet/minecraft/world/item/Item; DARK_OAK_TRAPDOOR nj field_8844 + f Lnet/minecraft/world/item/Item; MANGROVE_TRAPDOOR nk field_37529 + f Lnet/minecraft/world/item/Item; BAMBOO_TRAPDOOR nl field_40226 + f Lnet/minecraft/world/item/Item; CRIMSON_TRAPDOOR nm field_22002 + f Lnet/minecraft/world/item/Item; WARPED_TRAPDOOR nn field_22003 + f Lnet/minecraft/world/item/Item; COPPER_TRAPDOOR no field_46991 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_TRAPDOOR np field_46992 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_TRAPDOOR nq field_46993 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_TRAPDOOR nr field_46994 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_TRAPDOOR ns field_46995 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_TRAPDOOR nt field_46996 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_TRAPDOOR nu field_46997 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_TRAPDOOR nv field_46998 + f Lnet/minecraft/world/item/Item; OAK_FENCE_GATE nw field_8874 + f Lnet/minecraft/world/item/Item; SPRUCE_FENCE_GATE nx field_8653 + f Lnet/minecraft/world/item/Item; BIRCH_FENCE_GATE ny field_8289 + f Lnet/minecraft/world/item/Item; JUNGLE_FENCE_GATE nz field_8097 + f Lnet/minecraft/world/item/Item; EMERALD oA field_8687 + f Lnet/minecraft/world/item/Item; LAPIS_LAZULI oB field_8759 + f Lnet/minecraft/world/item/Item; QUARTZ oC field_8155 + f Lnet/minecraft/world/item/Item; AMETHYST_SHARD oD field_27063 + f Lnet/minecraft/world/item/Item; RAW_IRON oE field_33400 + f Lnet/minecraft/world/item/Item; IRON_INGOT oF field_8620 + f Lnet/minecraft/world/item/Item; RAW_COPPER oG field_33401 + f Lnet/minecraft/world/item/Item; COPPER_INGOT oH field_27022 + f Lnet/minecraft/world/item/Item; RAW_GOLD oI field_33402 + f Lnet/minecraft/world/item/Item; GOLD_INGOT oJ field_8695 + f Lnet/minecraft/world/item/Item; NETHERITE_INGOT oK field_22020 + f Lnet/minecraft/world/item/Item; NETHERITE_SCRAP oL field_22021 + f Lnet/minecraft/world/item/Item; TUFF_STAIRS o field_46999 + f Lnet/minecraft/world/item/Item; WOODEN_SWORD oM field_8091 + f Lnet/minecraft/world/item/Item; WOODEN_SHOVEL oN field_8876 + f Lnet/minecraft/world/item/Item; WOODEN_PICKAXE oO field_8647 + f Lnet/minecraft/world/item/Item; WOODEN_AXE oP field_8406 + f Lnet/minecraft/world/item/Item; WOODEN_HOE oQ field_8167 + f Lnet/minecraft/world/item/Item; STONE_SWORD oR field_8528 + f Lnet/minecraft/world/item/Item; STONE_SHOVEL oS field_8776 + f Lnet/minecraft/world/item/Item; STONE_PICKAXE oT field_8387 + f Lnet/minecraft/world/item/Item; STONE_AXE oU field_8062 + f Lnet/minecraft/world/item/Item; STONE_HOE oV field_8431 + f Lnet/minecraft/world/item/Item; GOLDEN_SWORD oW field_8845 + f Lnet/minecraft/world/item/Item; GOLDEN_SHOVEL oX field_8322 + f Lnet/minecraft/world/item/Item; GOLDEN_PICKAXE oY field_8335 + f Lnet/minecraft/world/item/Item; GOLDEN_AXE oZ field_8825 + f Lnet/minecraft/world/item/Item; JUNGLE_BOAT oa field_8730 + f Lnet/minecraft/world/item/Item; JUNGLE_CHEST_BOAT ob field_38212 + f Lnet/minecraft/world/item/Item; ACACIA_BOAT oc field_8094 + f Lnet/minecraft/world/item/Item; ACACIA_CHEST_BOAT od field_38213 + f Lnet/minecraft/world/item/Item; CHERRY_BOAT oe field_42706 + f Lnet/minecraft/world/item/Item; CHERRY_CHEST_BOAT of field_42707 + f Lnet/minecraft/world/item/Item; DARK_OAK_BOAT og field_8138 + f Lnet/minecraft/world/item/Item; DARK_OAK_CHEST_BOAT oh field_38214 + f Lnet/minecraft/world/item/Item; MANGROVE_BOAT oi field_37531 + f Lnet/minecraft/world/item/Item; MANGROVE_CHEST_BOAT oj field_38215 + f Lnet/minecraft/world/item/Item; BAMBOO_RAFT ok field_40224 + f Lnet/minecraft/world/item/Item; BAMBOO_CHEST_RAFT ol field_40225 + f Lnet/minecraft/world/item/Item; STRUCTURE_BLOCK om field_8238 + f Lnet/minecraft/world/item/Item; JIGSAW on field_16538 + f Lnet/minecraft/world/item/Item; TURTLE_HELMET oo field_8090 + f Lnet/minecraft/world/item/Item; TURTLE_SCUTE op field_8161 + f Lnet/minecraft/world/item/Item; ARMADILLO_SCUTE oq field_47830 + f Lnet/minecraft/world/item/Item; WOLF_ARMOR or field_47831 + f Lnet/minecraft/world/item/Item; FLINT_AND_STEEL os field_8884 + f Lnet/minecraft/world/item/Item; BOWL ot field_8428 + f Lnet/minecraft/world/item/Item; APPLE ou field_8279 + f Lnet/minecraft/world/item/Item; BOW ov field_8102 + f Lnet/minecraft/world/item/Item; ARROW ow field_8107 + f Lnet/minecraft/world/item/Item; COAL ox field_8713 + f Lnet/minecraft/world/item/Item; CHARCOAL oy field_8665 + f Lnet/minecraft/world/item/Item; DIAMOND oz field_8477 + f Lnet/minecraft/world/item/Item; LEATHER_LEGGINGS pA field_8570 + f Lnet/minecraft/world/item/Item; LEATHER_BOOTS pB field_8370 + f Lnet/minecraft/world/item/Item; CHAINMAIL_HELMET pC field_8283 + f Lnet/minecraft/world/item/Item; CHAINMAIL_CHESTPLATE pD field_8873 + f Lnet/minecraft/world/item/Item; CHAINMAIL_LEGGINGS pE field_8218 + f Lnet/minecraft/world/item/Item; CHAINMAIL_BOOTS pF field_8313 + f Lnet/minecraft/world/item/Item; IRON_HELMET pG field_8743 + f Lnet/minecraft/world/item/Item; IRON_CHESTPLATE pH field_8523 + f Lnet/minecraft/world/item/Item; IRON_LEGGINGS pI field_8396 + f Lnet/minecraft/world/item/Item; IRON_BOOTS pJ field_8660 + f Lnet/minecraft/world/item/Item; DIAMOND_HELMET pK field_8805 + f Lnet/minecraft/world/item/Item; DIAMOND_CHESTPLATE pL field_8058 + f Lnet/minecraft/world/item/Item; TUFF_WALL p field_47000 + f Lnet/minecraft/world/item/Item; DIAMOND_LEGGINGS pM field_8348 + f Lnet/minecraft/world/item/Item; DIAMOND_BOOTS pN field_8285 + f Lnet/minecraft/world/item/Item; GOLDEN_HELMET pO field_8862 + f Lnet/minecraft/world/item/Item; GOLDEN_CHESTPLATE pP field_8678 + f Lnet/minecraft/world/item/Item; GOLDEN_LEGGINGS pQ field_8416 + f Lnet/minecraft/world/item/Item; GOLDEN_BOOTS pR field_8753 + f Lnet/minecraft/world/item/Item; NETHERITE_HELMET pS field_22027 + f Lnet/minecraft/world/item/Item; NETHERITE_CHESTPLATE pT field_22028 + f Lnet/minecraft/world/item/Item; NETHERITE_LEGGINGS pU field_22029 + f Lnet/minecraft/world/item/Item; NETHERITE_BOOTS pV field_22030 + f Lnet/minecraft/world/item/Item; FLINT pW field_8145 + f Lnet/minecraft/world/item/Item; PORKCHOP pX field_8389 + f Lnet/minecraft/world/item/Item; COOKED_PORKCHOP pY field_8261 + f Lnet/minecraft/world/item/Item; PAINTING pZ field_8892 + f Lnet/minecraft/world/item/Item; GOLDEN_HOE pa field_8303 + f Lnet/minecraft/world/item/Item; IRON_SWORD pb field_8371 + f Lnet/minecraft/world/item/Item; IRON_SHOVEL pc field_8699 + f Lnet/minecraft/world/item/Item; IRON_PICKAXE pd field_8403 + f Lnet/minecraft/world/item/Item; IRON_AXE pe field_8475 + f Lnet/minecraft/world/item/Item; IRON_HOE pf field_8609 + f Lnet/minecraft/world/item/Item; DIAMOND_SWORD pg field_8802 + f Lnet/minecraft/world/item/Item; DIAMOND_SHOVEL ph field_8250 + f Lnet/minecraft/world/item/Item; DIAMOND_PICKAXE pi field_8377 + f Lnet/minecraft/world/item/Item; DIAMOND_AXE pj field_8556 + f Lnet/minecraft/world/item/Item; DIAMOND_HOE pk field_8527 + f Lnet/minecraft/world/item/Item; NETHERITE_SWORD pl field_22022 + f Lnet/minecraft/world/item/Item; NETHERITE_SHOVEL pm field_22023 + f Lnet/minecraft/world/item/Item; NETHERITE_PICKAXE pn field_22024 + f Lnet/minecraft/world/item/Item; NETHERITE_AXE po field_22025 + f Lnet/minecraft/world/item/Item; NETHERITE_HOE pp field_22026 + f Lnet/minecraft/world/item/Item; STICK pq field_8600 + f Lnet/minecraft/world/item/Item; MUSHROOM_STEW pr field_8208 + f Lnet/minecraft/world/item/Item; STRING ps field_8276 + f Lnet/minecraft/world/item/Item; FEATHER pt field_8153 + f Lnet/minecraft/world/item/Item; GUNPOWDER pu field_8054 + f Lnet/minecraft/world/item/Item; WHEAT_SEEDS pv field_8317 + f Lnet/minecraft/world/item/Item; WHEAT pw field_8861 + f Lnet/minecraft/world/item/Item; BREAD px field_8229 + f Lnet/minecraft/world/item/Item; LEATHER_HELMET py field_8267 + f Lnet/minecraft/world/item/Item; LEATHER_CHESTPLATE pz field_8577 + f Lnet/minecraft/world/item/Item; LAVA_BUCKET qA field_8187 + f Lnet/minecraft/world/item/Item; POWDER_SNOW_BUCKET qB field_27876 + f Lnet/minecraft/world/item/Item; SNOWBALL qC field_8543 + f Lnet/minecraft/world/item/Item; LEATHER qD field_8745 + f Lnet/minecraft/world/item/Item; MILK_BUCKET qE field_8103 + f Lnet/minecraft/world/item/Item; PUFFERFISH_BUCKET qF field_8108 + f Lnet/minecraft/world/item/Item; SALMON_BUCKET qG field_8714 + f Lnet/minecraft/world/item/Item; COD_BUCKET qH field_8666 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH_BUCKET qI field_8478 + f Lnet/minecraft/world/item/Item; AXOLOTL_BUCKET qJ field_28354 + f Lnet/minecraft/world/item/Item; TADPOLE_BUCKET qK field_37533 + f Lnet/minecraft/world/item/Item; BRICK qL field_8621 + f Lnet/minecraft/world/item/Item; CHISELED_TUFF q field_47001 + f Lnet/minecraft/world/item/Item; CLAY_BALL qM field_8696 + f Lnet/minecraft/world/item/Item; DRIED_KELP_BLOCK qN field_17533 + f Lnet/minecraft/world/item/Item; PAPER qO field_8407 + f Lnet/minecraft/world/item/Item; BOOK qP field_8529 + f Lnet/minecraft/world/item/Item; SLIME_BALL qQ field_8777 + f Lnet/minecraft/world/item/Item; EGG qR field_8803 + f Lnet/minecraft/world/item/Item; COMPASS qS field_8251 + f Lnet/minecraft/world/item/Item; RECOVERY_COMPASS qT field_38747 + f Lnet/minecraft/world/item/Item; BUNDLE qU field_27023 + f Lnet/minecraft/world/item/Item; FISHING_ROD qV field_8378 + f Lnet/minecraft/world/item/Item; CLOCK qW field_8557 + f Lnet/minecraft/world/item/Item; SPYGLASS qX field_27070 + f Lnet/minecraft/world/item/Item; GLOWSTONE_DUST qY field_8601 + f Lnet/minecraft/world/item/Item; COD qZ field_8429 + f Lnet/minecraft/world/item/Item; GOLDEN_APPLE qa field_8463 + f Lnet/minecraft/world/item/Item; ENCHANTED_GOLDEN_APPLE qb field_8367 + f Lnet/minecraft/world/item/Item; OAK_SIGN qc field_8788 + f Lnet/minecraft/world/item/Item; SPRUCE_SIGN qd field_8111 + f Lnet/minecraft/world/item/Item; BIRCH_SIGN qe field_8422 + f Lnet/minecraft/world/item/Item; JUNGLE_SIGN qf field_8867 + f Lnet/minecraft/world/item/Item; ACACIA_SIGN qg field_8203 + f Lnet/minecraft/world/item/Item; CHERRY_SIGN qh field_42709 + f Lnet/minecraft/world/item/Item; DARK_OAK_SIGN qi field_8496 + f Lnet/minecraft/world/item/Item; MANGROVE_SIGN qj field_37534 + f Lnet/minecraft/world/item/Item; BAMBOO_SIGN qk field_40228 + f Lnet/minecraft/world/item/Item; CRIMSON_SIGN ql field_22011 + f Lnet/minecraft/world/item/Item; WARPED_SIGN qm field_22012 + f Lnet/minecraft/world/item/Item; OAK_HANGING_SIGN qn field_40229 + f Lnet/minecraft/world/item/Item; SPRUCE_HANGING_SIGN qo field_40230 + f Lnet/minecraft/world/item/Item; BIRCH_HANGING_SIGN qp field_40231 + f Lnet/minecraft/world/item/Item; JUNGLE_HANGING_SIGN qq field_40232 + f Lnet/minecraft/world/item/Item; ACACIA_HANGING_SIGN qr field_40233 + f Lnet/minecraft/world/item/Item; CHERRY_HANGING_SIGN qs field_42708 + f Lnet/minecraft/world/item/Item; DARK_OAK_HANGING_SIGN qt field_40234 + f Lnet/minecraft/world/item/Item; MANGROVE_HANGING_SIGN qu field_40235 + f Lnet/minecraft/world/item/Item; BAMBOO_HANGING_SIGN qv field_40236 + f Lnet/minecraft/world/item/Item; CRIMSON_HANGING_SIGN qw field_40237 + f Lnet/minecraft/world/item/Item; WARPED_HANGING_SIGN qx field_40238 + f Lnet/minecraft/world/item/Item; BUCKET qy field_8550 + f Lnet/minecraft/world/item/Item; WATER_BUCKET qz field_8705 + f Lnet/minecraft/world/item/Item; SUGAR rA field_8479 + f Lnet/minecraft/world/item/Item; CAKE rB field_17534 + f Lnet/minecraft/world/item/Item; WHITE_BED rC field_8258 + f Lnet/minecraft/world/item/Item; ORANGE_BED rD field_8059 + f Lnet/minecraft/world/item/Item; MAGENTA_BED rE field_8349 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_BED rF field_8286 + f Lnet/minecraft/world/item/Item; YELLOW_BED rG field_8863 + f Lnet/minecraft/world/item/Item; LIME_BED rH field_8679 + f Lnet/minecraft/world/item/Item; PINK_BED rI field_8417 + f Lnet/minecraft/world/item/Item; GRAY_BED rJ field_8754 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_BED rK field_8146 + f Lnet/minecraft/world/item/Item; CYAN_BED rL field_8390 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF r field_47002 + f Lnet/minecraft/world/item/Item; PURPLE_BED rM field_8262 + f Lnet/minecraft/world/item/Item; BLUE_BED rN field_8893 + f Lnet/minecraft/world/item/Item; BROWN_BED rO field_8464 + f Lnet/minecraft/world/item/Item; GREEN_BED rP field_8368 + f Lnet/minecraft/world/item/Item; RED_BED rQ field_8789 + f Lnet/minecraft/world/item/Item; BLACK_BED rR field_8112 + f Lnet/minecraft/world/item/Item; COOKIE rS field_8423 + f Lnet/minecraft/world/item/Item; CRAFTER rT field_46791 + f Lnet/minecraft/world/item/Item; FILLED_MAP rU field_8204 + f Lnet/minecraft/world/item/Item; SHEARS rV field_8868 + f Lnet/minecraft/world/item/Item; MELON_SLICE rW field_8497 + f Lnet/minecraft/world/item/Item; DRIED_KELP rX field_8551 + f Lnet/minecraft/world/item/Item; PUMPKIN_SEEDS rY field_46249 + f Lnet/minecraft/world/item/Item; MELON_SEEDS rZ field_46250 + f Lnet/minecraft/world/item/Item; SALMON ra field_8209 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH rb field_8846 + f Lnet/minecraft/world/item/Item; PUFFERFISH rc field_8323 + f Lnet/minecraft/world/item/Item; COOKED_COD rd field_8373 + f Lnet/minecraft/world/item/Item; COOKED_SALMON re field_8509 + f Lnet/minecraft/world/item/Item; INK_SAC rf field_8794 + f Lnet/minecraft/world/item/Item; GLOW_INK_SAC rg field_28410 + f Lnet/minecraft/world/item/Item; COCOA_BEANS rh field_8116 + f Lnet/minecraft/world/item/Item; WHITE_DYE ri field_8446 + f Lnet/minecraft/world/item/Item; ORANGE_DYE rj field_8492 + f Lnet/minecraft/world/item/Item; MAGENTA_DYE rk field_8669 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_DYE rl field_8273 + f Lnet/minecraft/world/item/Item; YELLOW_DYE rm field_8192 + f Lnet/minecraft/world/item/Item; LIME_DYE rn field_8131 + f Lnet/minecraft/world/item/Item; PINK_DYE ro field_8330 + f Lnet/minecraft/world/item/Item; GRAY_DYE rp field_8298 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_DYE rq field_8851 + f Lnet/minecraft/world/item/Item; CYAN_DYE rr field_8632 + f Lnet/minecraft/world/item/Item; PURPLE_DYE rs field_8296 + f Lnet/minecraft/world/item/Item; BLUE_DYE rt field_8345 + f Lnet/minecraft/world/item/Item; BROWN_DYE ru field_8099 + f Lnet/minecraft/world/item/Item; GREEN_DYE rv field_8408 + f Lnet/minecraft/world/item/Item; RED_DYE rw field_8264 + f Lnet/minecraft/world/item/Item; BLACK_DYE rx field_8226 + f Lnet/minecraft/world/item/Item; BONE_MEAL ry field_8324 + f Lnet/minecraft/world/item/Item; BONE rz field_8606 + f Lnet/minecraft/world/item/Item; BOGGED_SPAWN_EGG sA field_49153 + f Lnet/minecraft/world/item/Item; BREEZE_SPAWN_EGG sB field_47313 + f Lnet/minecraft/world/item/Item; CAT_SPAWN_EGG sC field_16314 + f Lnet/minecraft/world/item/Item; CAMEL_SPAWN_EGG sD field_40239 + f Lnet/minecraft/world/item/Item; CAVE_SPIDER_SPAWN_EGG sE field_8068 + f Lnet/minecraft/world/item/Item; CHICKEN_SPAWN_EGG sF field_8835 + f Lnet/minecraft/world/item/Item; COD_SPAWN_EGG sG field_8661 + f Lnet/minecraft/world/item/Item; COW_SPAWN_EGG sH field_8433 + f Lnet/minecraft/world/item/Item; CREEPER_SPAWN_EGG sI field_8503 + f Lnet/minecraft/world/item/Item; DOLPHIN_SPAWN_EGG sJ field_8751 + f Lnet/minecraft/world/item/Item; DONKEY_SPAWN_EGG sK field_8306 + f Lnet/minecraft/world/item/Item; DROWNED_SPAWN_EGG sL field_8083 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_SLAB s field_47003 + f Lnet/minecraft/world/item/Item; ELDER_GUARDIAN_SPAWN_EGG sM field_8769 + f Lnet/minecraft/world/item/Item; ENDER_DRAGON_SPAWN_EGG sN field_40865 + f Lnet/minecraft/world/item/Item; ENDERMAN_SPAWN_EGG sO field_8374 + f Lnet/minecraft/world/item/Item; ENDERMITE_SPAWN_EGG sP field_8510 + f Lnet/minecraft/world/item/Item; EVOKER_SPAWN_EGG sQ field_8795 + f Lnet/minecraft/world/item/Item; FOX_SPAWN_EGG sR field_18005 + f Lnet/minecraft/world/item/Item; FROG_SPAWN_EGG sS field_37535 + f Lnet/minecraft/world/item/Item; GHAST_SPAWN_EGG sT field_8265 + f Lnet/minecraft/world/item/Item; GLOW_SQUID_SPAWN_EGG sU field_28407 + f Lnet/minecraft/world/item/Item; GOAT_SPAWN_EGG sV field_30905 + f Lnet/minecraft/world/item/Item; GUARDIAN_SPAWN_EGG sW field_8409 + f Lnet/minecraft/world/item/Item; HOGLIN_SPAWN_EGG sX field_22014 + f Lnet/minecraft/world/item/Item; HORSE_SPAWN_EGG sY field_8117 + f Lnet/minecraft/world/item/Item; HUSK_SPAWN_EGG sZ field_8760 + f Lnet/minecraft/world/item/Item; BEEF sa field_8046 + f Lnet/minecraft/world/item/Item; COOKED_BEEF sb field_8176 + f Lnet/minecraft/world/item/Item; CHICKEN sc field_8726 + f Lnet/minecraft/world/item/Item; COOKED_CHICKEN sd field_8544 + f Lnet/minecraft/world/item/Item; ROTTEN_FLESH se field_8511 + f Lnet/minecraft/world/item/Item; ENDER_PEARL sf field_8634 + f Lnet/minecraft/world/item/Item; BLAZE_ROD sg field_8894 + f Lnet/minecraft/world/item/Item; GHAST_TEAR sh field_8070 + f Lnet/minecraft/world/item/Item; GOLD_NUGGET si field_8397 + f Lnet/minecraft/world/item/Item; NETHER_WART sj field_8790 + f Lnet/minecraft/world/item/Item; POTION sk field_8574 + f Lnet/minecraft/world/item/Item; GLASS_BOTTLE sl field_8469 + f Lnet/minecraft/world/item/Item; SPIDER_EYE sm field_8680 + f Lnet/minecraft/world/item/Item; FERMENTED_SPIDER_EYE sn field_8711 + f Lnet/minecraft/world/item/Item; BLAZE_POWDER so field_8183 + f Lnet/minecraft/world/item/Item; MAGMA_CREAM sp field_8135 + f Lnet/minecraft/world/item/Item; BREWING_STAND sq field_8740 + f Lnet/minecraft/world/item/Item; CAULDRON sr field_8638 + f Lnet/minecraft/world/item/Item; ENDER_EYE ss field_8449 + f Lnet/minecraft/world/item/Item; GLISTERING_MELON_SLICE st field_8597 + f Lnet/minecraft/world/item/Item; ARMADILLO_SPAWN_EGG su field_47832 + f Lnet/minecraft/world/item/Item; ALLAY_SPAWN_EGG sv field_38419 + f Lnet/minecraft/world/item/Item; AXOLOTL_SPAWN_EGG sw field_28355 + f Lnet/minecraft/world/item/Item; BAT_SPAWN_EGG sx field_8727 + f Lnet/minecraft/world/item/Item; BEE_SPAWN_EGG sy field_20413 + f Lnet/minecraft/world/item/Item; BLAZE_SPAWN_EGG sz field_8154 + f Lnet/minecraft/world/item/Item; SPIDER_SPAWN_EGG tA field_8185 + f Lnet/minecraft/world/item/Item; SQUID_SPAWN_EGG tB field_8307 + f Lnet/minecraft/world/item/Item; STRAY_SPAWN_EGG tC field_8514 + f Lnet/minecraft/world/item/Item; STRIDER_SPAWN_EGG tD field_23255 + f Lnet/minecraft/world/item/Item; TADPOLE_SPAWN_EGG tE field_37536 + f Lnet/minecraft/world/item/Item; TRADER_LLAMA_SPAWN_EGG tF field_17731 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH_SPAWN_EGG tG field_8612 + f Lnet/minecraft/world/item/Item; TURTLE_SPAWN_EGG tH field_8435 + f Lnet/minecraft/world/item/Item; VEX_SPAWN_EGG tI field_8235 + f Lnet/minecraft/world/item/Item; VILLAGER_SPAWN_EGG tJ field_8086 + f Lnet/minecraft/world/item/Item; VINDICATOR_SPAWN_EGG tK field_8149 + f Lnet/minecraft/world/item/Item; WANDERING_TRADER_SPAWN_EGG tL field_17732 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_STAIRS t field_47004 + f Lnet/minecraft/world/item/Item; WARDEN_SPAWN_EGG tM field_38219 + f Lnet/minecraft/world/item/Item; WITCH_SPAWN_EGG tN field_8254 + f Lnet/minecraft/world/item/Item; WITHER_SPAWN_EGG tO field_40867 + f Lnet/minecraft/world/item/Item; WITHER_SKELETON_SPAWN_EGG tP field_8832 + f Lnet/minecraft/world/item/Item; WOLF_SPAWN_EGG tQ field_8485 + f Lnet/minecraft/world/item/Item; ZOGLIN_SPAWN_EGG tR field_23744 + f Lnet/minecraft/world/item/Item; ZOMBIE_SPAWN_EGG tS field_8441 + f Lnet/minecraft/world/item/Item; ZOMBIE_HORSE_SPAWN_EGG tT field_8728 + f Lnet/minecraft/world/item/Item; ZOMBIE_VILLAGER_SPAWN_EGG tU field_8136 + f Lnet/minecraft/world/item/Item; ZOMBIFIED_PIGLIN_SPAWN_EGG tV field_8093 + f Lnet/minecraft/world/item/Item; EXPERIENCE_BOTTLE tW field_8287 + f Lnet/minecraft/world/item/Item; FIRE_CHARGE tX field_8814 + f Lnet/minecraft/world/item/Item; WIND_CHARGE tY field_49098 + f Lnet/minecraft/world/item/Item; WRITABLE_BOOK tZ field_8674 + f Lnet/minecraft/world/item/Item; IRON_GOLEM_SPAWN_EGG ta field_40864 + f Lnet/minecraft/world/item/Item; LLAMA_SPAWN_EGG tb field_8633 + f Lnet/minecraft/world/item/Item; MAGMA_CUBE_SPAWN_EGG tc field_8852 + f Lnet/minecraft/world/item/Item; MOOSHROOM_SPAWN_EGG td field_8299 + f Lnet/minecraft/world/item/Item; MULE_SPAWN_EGG te field_8331 + f Lnet/minecraft/world/item/Item; OCELOT_SPAWN_EGG tf field_8132 + f Lnet/minecraft/world/item/Item; PANDA_SPAWN_EGG tg field_8193 + f Lnet/minecraft/world/item/Item; PARROT_SPAWN_EGG th field_8274 + f Lnet/minecraft/world/item/Item; PHANTOM_SPAWN_EGG ti field_8670 + f Lnet/minecraft/world/item/Item; PIG_SPAWN_EGG tj field_8493 + f Lnet/minecraft/world/item/Item; PIGLIN_SPAWN_EGG tk field_22401 + f Lnet/minecraft/world/item/Item; PIGLIN_BRUTE_SPAWN_EGG tl field_25777 + f Lnet/minecraft/world/item/Item; PILLAGER_SPAWN_EGG tm field_8325 + f Lnet/minecraft/world/item/Item; POLAR_BEAR_SPAWN_EGG tn field_8346 + f Lnet/minecraft/world/item/Item; PUFFERFISH_SPAWN_EGG to field_8100 + f Lnet/minecraft/world/item/Item; RABBIT_SPAWN_EGG tp field_8227 + f Lnet/minecraft/world/item/Item; RAVAGER_SPAWN_EGG tq field_8297 + f Lnet/minecraft/world/item/Item; SALMON_SPAWN_EGG tr field_8447 + f Lnet/minecraft/world/item/Item; SHEEP_SPAWN_EGG ts field_8607 + f Lnet/minecraft/world/item/Item; SHULKER_SPAWN_EGG tt field_8480 + f Lnet/minecraft/world/item/Item; SILVERFISH_SPAWN_EGG tu field_8564 + f Lnet/minecraft/world/item/Item; SKELETON_SPAWN_EGG tv field_8300 + f Lnet/minecraft/world/item/Item; SKELETON_HORSE_SPAWN_EGG tw field_8232 + f Lnet/minecraft/world/item/Item; SLIME_SPAWN_EGG tx field_8881 + f Lnet/minecraft/world/item/Item; SNIFFER_SPAWN_EGG ty field_42710 + f Lnet/minecraft/world/item/Item; SNOW_GOLEM_SPAWN_EGG tz field_40866 + f Lnet/minecraft/world/item/Item; RABBIT uA field_8504 + f Lnet/minecraft/world/item/Item; COOKED_RABBIT uB field_8752 + f Lnet/minecraft/world/item/Item; RABBIT_STEW uC field_8308 + f Lnet/minecraft/world/item/Item; RABBIT_FOOT uD field_8073 + f Lnet/minecraft/world/item/Item; RABBIT_HIDE uE field_8245 + f Lnet/minecraft/world/item/Item; ARMOR_STAND uF field_8694 + f Lnet/minecraft/world/item/Item; IRON_HORSE_ARMOR uG field_8578 + f Lnet/minecraft/world/item/Item; GOLDEN_HORSE_ARMOR uH field_8560 + f Lnet/minecraft/world/item/Item; DIAMOND_HORSE_ARMOR uI field_8807 + f Lnet/minecraft/world/item/Item; LEATHER_HORSE_ARMOR uJ field_18138 + f Lnet/minecraft/world/item/Item; LEAD uK field_8719 + f Lnet/minecraft/world/item/Item; NAME_TAG uL field_8448 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_WALL u field_47005 + f Lnet/minecraft/world/item/Item; COMMAND_BLOCK_MINECART uM field_8220 + f Lnet/minecraft/world/item/Item; MUTTON uN field_8748 + f Lnet/minecraft/world/item/Item; COOKED_MUTTON uO field_8347 + f Lnet/minecraft/world/item/Item; WHITE_BANNER uP field_8539 + f Lnet/minecraft/world/item/Item; ORANGE_BANNER uQ field_8824 + f Lnet/minecraft/world/item/Item; MAGENTA_BANNER uR field_8671 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_BANNER uS field_8379 + f Lnet/minecraft/world/item/Item; YELLOW_BANNER uT field_8049 + f Lnet/minecraft/world/item/Item; LIME_BANNER uU field_8778 + f Lnet/minecraft/world/item/Item; PINK_BANNER uV field_8329 + f Lnet/minecraft/world/item/Item; GRAY_BANNER uW field_8617 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_BANNER uX field_8855 + f Lnet/minecraft/world/item/Item; CYAN_BANNER uY field_8629 + f Lnet/minecraft/world/item/Item; PURPLE_BANNER uZ field_8405 + f Lnet/minecraft/world/item/Item; WRITTEN_BOOK ua field_8360 + f Lnet/minecraft/world/item/Item; MACE ub field_49814 + f Lnet/minecraft/world/item/Item; ITEM_FRAME uc field_8143 + f Lnet/minecraft/world/item/Item; GLOW_ITEM_FRAME ud field_28408 + f Lnet/minecraft/world/item/Item; FLOWER_POT ue field_8074 + f Lnet/minecraft/world/item/Item; CARROT uf field_8179 + f Lnet/minecraft/world/item/Item; POTATO ug field_8567 + f Lnet/minecraft/world/item/Item; BAKED_POTATO uh field_8512 + f Lnet/minecraft/world/item/Item; POISONOUS_POTATO ui field_8635 + f Lnet/minecraft/world/item/Item; MAP uj field_8895 + f Lnet/minecraft/world/item/Item; GOLDEN_CARROT uk field_8071 + f Lnet/minecraft/world/item/Item; SKELETON_SKULL ul field_8398 + f Lnet/minecraft/world/item/Item; WITHER_SKELETON_SKULL um field_8791 + f Lnet/minecraft/world/item/Item; PLAYER_HEAD un field_8575 + f Lnet/minecraft/world/item/Item; ZOMBIE_HEAD uo field_8470 + f Lnet/minecraft/world/item/Item; CREEPER_HEAD up field_8681 + f Lnet/minecraft/world/item/Item; DRAGON_HEAD uq field_8712 + f Lnet/minecraft/world/item/Item; PIGLIN_HEAD ur field_41304 + f Lnet/minecraft/world/item/Item; NETHER_STAR us field_8137 + f Lnet/minecraft/world/item/Item; PUMPKIN_PIE ut field_8741 + f Lnet/minecraft/world/item/Item; FIREWORK_ROCKET uu field_8639 + f Lnet/minecraft/world/item/Item; FIREWORK_STAR uv field_8450 + f Lnet/minecraft/world/item/Item; ENCHANTED_BOOK uw field_8598 + f Lnet/minecraft/world/item/Item; NETHER_BRICK ux field_8729 + f Lnet/minecraft/world/item/Item; PRISMARINE_SHARD uy field_8662 + f Lnet/minecraft/world/item/Item; PRISMARINE_CRYSTALS uz field_8434 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_BLOCKS vA field_8425 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CHIRP vB field_8623 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CREATOR vC field_51628 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CREATOR_MUSIC_BOX vD field_51629 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_FAR vE field_8502 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_MALL vF field_8534 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_MELLOHI vG field_8344 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_STAL vH field_8834 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_STRAD vI field_8065 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_WARD vJ field_8355 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_11 vK field_8731 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_WAIT vL field_8806 + f Lnet/minecraft/world/item/Item; TUFF_BRICKS v field_47006 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_OTHERSIDE vM field_35358 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_RELIC vN field_44705 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_5 vO field_38973 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_PIGSTEP vP field_23984 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_PRECIPICE vQ field_51630 + f Lnet/minecraft/world/item/Item; DISC_FRAGMENT_5 vR field_38974 + f Lnet/minecraft/world/item/Item; TRIDENT vS field_8547 + f Lnet/minecraft/world/item/Item; PHANTOM_MEMBRANE vT field_8614 + f Lnet/minecraft/world/item/Item; NAUTILUS_SHELL vU field_8864 + f Lnet/minecraft/world/item/Item; HEART_OF_THE_SEA vV field_8207 + f Lnet/minecraft/world/item/Item; CROSSBOW vW field_8399 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_STEW vX field_8766 + f Lnet/minecraft/world/item/Item; LOOM vY field_8772 + f Lnet/minecraft/world/item/Item; FLOWER_BANNER_PATTERN vZ field_8498 + f Lnet/minecraft/world/item/Item; BLUE_BANNER va field_8128 + f Lnet/minecraft/world/item/Item; BROWN_BANNER vb field_8124 + f Lnet/minecraft/world/item/Item; GREEN_BANNER vc field_8295 + f Lnet/minecraft/world/item/Item; RED_BANNER vd field_8586 + f Lnet/minecraft/world/item/Item; BLACK_BANNER ve field_8572 + f Lnet/minecraft/world/item/Item; END_CRYSTAL vf field_8301 + f Lnet/minecraft/world/item/Item; CHORUS_FRUIT vg field_8233 + f Lnet/minecraft/world/item/Item; POPPED_CHORUS_FRUIT vh field_8882 + f Lnet/minecraft/world/item/Item; TORCHFLOWER_SEEDS vi field_42711 + f Lnet/minecraft/world/item/Item; PITCHER_POD vj field_43195 + f Lnet/minecraft/world/item/Item; BEETROOT vk field_8186 + f Lnet/minecraft/world/item/Item; BEETROOT_SEEDS vl field_8309 + f Lnet/minecraft/world/item/Item; BEETROOT_SOUP vm field_8515 + f Lnet/minecraft/world/item/Item; DRAGON_BREATH vn field_8613 + f Lnet/minecraft/world/item/Item; SPLASH_POTION vo field_8436 + f Lnet/minecraft/world/item/Item; SPECTRAL_ARROW vp field_8236 + f Lnet/minecraft/world/item/Item; TIPPED_ARROW vq field_8087 + f Lnet/minecraft/world/item/Item; LINGERING_POTION vr field_8150 + f Lnet/minecraft/world/item/Item; SHIELD vs field_8255 + f Lnet/minecraft/world/item/Item; TOTEM_OF_UNDYING vt field_8288 + f Lnet/minecraft/world/item/Item; SHULKER_SHELL vu field_8815 + f Lnet/minecraft/world/item/Item; IRON_NUGGET vv field_8675 + f Lnet/minecraft/world/item/Item; KNOWLEDGE_BOOK vw field_8361 + f Lnet/minecraft/world/item/Item; DEBUG_STICK vx field_8688 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_13 vy field_8144 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CAT vz field_8075 + f Lnet/minecraft/world/item/Item; BEE_NEST wA field_20415 + f Lnet/minecraft/world/item/Item; BEEHIVE wB field_20416 + f Lnet/minecraft/world/item/Item; HONEY_BOTTLE wC field_20417 + f Lnet/minecraft/world/item/Item; HONEYCOMB_BLOCK wD field_21087 + f Lnet/minecraft/world/item/Item; LODESTONE wE field_23256 + f Lnet/minecraft/world/item/Item; CRYING_OBSIDIAN wF field_22421 + f Lnet/minecraft/world/item/Item; BLACKSTONE wG field_23843 + f Lnet/minecraft/world/item/Item; BLACKSTONE_SLAB wH field_23844 + f Lnet/minecraft/world/item/Item; BLACKSTONE_STAIRS wI field_23845 + f Lnet/minecraft/world/item/Item; GILDED_BLACKSTONE wJ field_23847 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE wK field_23848 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_SLAB wL field_23849 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_SLAB w field_47007 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_STAIRS wM field_23832 + f Lnet/minecraft/world/item/Item; CHISELED_POLISHED_BLACKSTONE wN field_23836 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICKS wO field_23837 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_SLAB wP field_23838 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_STAIRS wQ field_23839 + f Lnet/minecraft/world/item/Item; CRACKED_POLISHED_BLACKSTONE_BRICKS wR field_23841 + f Lnet/minecraft/world/item/Item; RESPAWN_ANCHOR wS field_23141 + f Lnet/minecraft/world/item/Item; CANDLE wT field_27024 + f Lnet/minecraft/world/item/Item; WHITE_CANDLE wU field_27025 + f Lnet/minecraft/world/item/Item; ORANGE_CANDLE wV field_27026 + f Lnet/minecraft/world/item/Item; MAGENTA_CANDLE wW field_27027 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CANDLE wX field_27028 + f Lnet/minecraft/world/item/Item; YELLOW_CANDLE wY field_27029 + f Lnet/minecraft/world/item/Item; LIME_CANDLE wZ field_27052 + f Lnet/minecraft/world/item/Item; CREEPER_BANNER_PATTERN wa field_8573 + f Lnet/minecraft/world/item/Item; SKULL_BANNER_PATTERN wb field_8891 + f Lnet/minecraft/world/item/Item; MOJANG_BANNER_PATTERN wc field_8159 + f Lnet/minecraft/world/item/Item; GLOBE_BANNER_PATTERN wd field_18674 + f Lnet/minecraft/world/item/Item; PIGLIN_BANNER_PATTERN we field_23831 + f Lnet/minecraft/world/item/Item; FLOW_BANNER_PATTERN wf field_49815 + f Lnet/minecraft/world/item/Item; GUSTER_BANNER_PATTERN wg field_49816 + f Lnet/minecraft/world/item/Item; GOAT_HORN wh field_39057 + f Lnet/minecraft/world/item/Item; COMPOSTER wi field_17530 + f Lnet/minecraft/world/item/Item; BARREL wj field_16307 + f Lnet/minecraft/world/item/Item; SMOKER wk field_16309 + f Lnet/minecraft/world/item/Item; BLAST_FURNACE wl field_16306 + f Lnet/minecraft/world/item/Item; CARTOGRAPHY_TABLE wm field_16313 + f Lnet/minecraft/world/item/Item; FLETCHING_TABLE wn field_16310 + f Lnet/minecraft/world/item/Item; GRINDSTONE wo field_16311 + f Lnet/minecraft/world/item/Item; SMITHING_TABLE wp field_16308 + f Lnet/minecraft/world/item/Item; STONECUTTER wq field_16305 + f Lnet/minecraft/world/item/Item; BELL wr field_16315 + f Lnet/minecraft/world/item/Item; LANTERN ws field_16539 + f Lnet/minecraft/world/item/Item; SOUL_LANTERN wt field_22016 + f Lnet/minecraft/world/item/Item; SWEET_BERRIES wu field_16998 + f Lnet/minecraft/world/item/Item; GLOW_BERRIES wv field_28659 + f Lnet/minecraft/world/item/Item; CAMPFIRE ww field_17346 + f Lnet/minecraft/world/item/Item; SOUL_CAMPFIRE wx field_23842 + f Lnet/minecraft/world/item/Item; SHROOMLIGHT wy field_22017 + f Lnet/minecraft/world/item/Item; HONEYCOMB wz field_20414 + f Lnet/minecraft/world/item/Item; WARD_ARMOR_TRIM_SMITHING_TEMPLATE xA field_41951 + f Lnet/minecraft/world/item/Item; EYE_ARMOR_TRIM_SMITHING_TEMPLATE xB field_41952 + f Lnet/minecraft/world/item/Item; VEX_ARMOR_TRIM_SMITHING_TEMPLATE xC field_41953 + f Lnet/minecraft/world/item/Item; TIDE_ARMOR_TRIM_SMITHING_TEMPLATE xD field_41954 + f Lnet/minecraft/world/item/Item; SNOUT_ARMOR_TRIM_SMITHING_TEMPLATE xE field_41955 + f Lnet/minecraft/world/item/Item; RIB_ARMOR_TRIM_SMITHING_TEMPLATE xF field_41956 + f Lnet/minecraft/world/item/Item; SPIRE_ARMOR_TRIM_SMITHING_TEMPLATE xG field_41957 + f Lnet/minecraft/world/item/Item; WAYFINDER_ARMOR_TRIM_SMITHING_TEMPLATE xH field_43196 + f Lnet/minecraft/world/item/Item; SHAPER_ARMOR_TRIM_SMITHING_TEMPLATE xI field_43197 + f Lnet/minecraft/world/item/Item; SILENCE_ARMOR_TRIM_SMITHING_TEMPLATE xJ field_43198 + f Lnet/minecraft/world/item/Item; RAISER_ARMOR_TRIM_SMITHING_TEMPLATE xK field_43199 + f Lnet/minecraft/world/item/Item; HOST_ARMOR_TRIM_SMITHING_TEMPLATE xL field_43200 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_STAIRS x field_47008 + f Lnet/minecraft/world/item/Item; FLOW_ARMOR_TRIM_SMITHING_TEMPLATE xM field_49817 + f Lnet/minecraft/world/item/Item; BOLT_ARMOR_TRIM_SMITHING_TEMPLATE xN field_49818 + f Lnet/minecraft/world/item/Item; ANGLER_POTTERY_SHERD xO field_43201 + f Lnet/minecraft/world/item/Item; ARCHER_POTTERY_SHERD xP field_43202 + f Lnet/minecraft/world/item/Item; ARMS_UP_POTTERY_SHERD xQ field_43203 + f Lnet/minecraft/world/item/Item; BLADE_POTTERY_SHERD xR field_43204 + f Lnet/minecraft/world/item/Item; BREWER_POTTERY_SHERD xS field_43205 + f Lnet/minecraft/world/item/Item; BURN_POTTERY_SHERD xT field_43206 + f Lnet/minecraft/world/item/Item; DANGER_POTTERY_SHERD xU field_43207 + f Lnet/minecraft/world/item/Item; EXPLORER_POTTERY_SHERD xV field_43208 + f Lnet/minecraft/world/item/Item; FLOW_POTTERY_SHERD xW field_49819 + f Lnet/minecraft/world/item/Item; FRIEND_POTTERY_SHERD xX field_43209 + f Lnet/minecraft/world/item/Item; GUSTER_POTTERY_SHERD xY field_49820 + f Lnet/minecraft/world/item/Item; HEART_POTTERY_SHERD xZ field_43210 + f Lnet/minecraft/world/item/Item; PINK_CANDLE xa field_27053 + f Lnet/minecraft/world/item/Item; GRAY_CANDLE xb field_27054 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CANDLE xc field_27055 + f Lnet/minecraft/world/item/Item; CYAN_CANDLE xd field_27056 + f Lnet/minecraft/world/item/Item; PURPLE_CANDLE xe field_27057 + f Lnet/minecraft/world/item/Item; BLUE_CANDLE xf field_27058 + f Lnet/minecraft/world/item/Item; BROWN_CANDLE xg field_27059 + f Lnet/minecraft/world/item/Item; GREEN_CANDLE xh field_27060 + f Lnet/minecraft/world/item/Item; RED_CANDLE xi field_27061 + f Lnet/minecraft/world/item/Item; BLACK_CANDLE xj field_27062 + f Lnet/minecraft/world/item/Item; SMALL_AMETHYST_BUD xk field_27066 + f Lnet/minecraft/world/item/Item; MEDIUM_AMETHYST_BUD xl field_27067 + f Lnet/minecraft/world/item/Item; LARGE_AMETHYST_BUD xm field_27068 + f Lnet/minecraft/world/item/Item; AMETHYST_CLUSTER xn field_27069 + f Lnet/minecraft/world/item/Item; POINTED_DRIPSTONE xo field_28042 + f Lnet/minecraft/world/item/Item; OCHRE_FROGLIGHT xp field_37539 + f Lnet/minecraft/world/item/Item; VERDANT_FROGLIGHT xq field_37540 + f Lnet/minecraft/world/item/Item; PEARLESCENT_FROGLIGHT xr field_37541 + f Lnet/minecraft/world/item/Item; FROGSPAWN xs field_37542 + f Lnet/minecraft/world/item/Item; ECHO_SHARD xt field_38746 + f Lnet/minecraft/world/item/Item; BRUSH xu field_42716 + f Lnet/minecraft/world/item/Item; NETHERITE_UPGRADE_SMITHING_TEMPLATE xv field_41946 + f Lnet/minecraft/world/item/Item; SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE xw field_41947 + f Lnet/minecraft/world/item/Item; DUNE_ARMOR_TRIM_SMITHING_TEMPLATE xx field_41948 + f Lnet/minecraft/world/item/Item; COAST_ARMOR_TRIM_SMITHING_TEMPLATE xy field_41949 + f Lnet/minecraft/world/item/Item; WILD_ARMOR_TRIM_SMITHING_TEMPLATE xz field_41950 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_BULB yA field_47025 + f Lnet/minecraft/world/item/Item; TRIAL_SPAWNER yB field_47314 + f Lnet/minecraft/world/item/Item; TRIAL_KEY yC field_47315 + f Lnet/minecraft/world/item/Item; OMINOUS_TRIAL_KEY yD field_50139 + f Lnet/minecraft/world/item/Item; VAULT yE field_48847 + f Lnet/minecraft/world/item/Item; OMINOUS_BOTTLE yF field_50140 + f Lnet/minecraft/world/item/Item; BREEZE_ROD yG field_49821 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_WALL y field_47016 + f Lnet/minecraft/world/item/Item; HEARTBREAK_POTTERY_SHERD ya field_43211 + f Lnet/minecraft/world/item/Item; HOWL_POTTERY_SHERD yb field_43212 + f Lnet/minecraft/world/item/Item; MINER_POTTERY_SHERD yc field_43213 + f Lnet/minecraft/world/item/Item; MOURNER_POTTERY_SHERD yd field_43214 + f Lnet/minecraft/world/item/Item; PLENTY_POTTERY_SHERD ye field_43215 + f Lnet/minecraft/world/item/Item; PRIZE_POTTERY_SHERD yf field_43216 + f Lnet/minecraft/world/item/Item; SCRAPE_POTTERY_SHERD yg field_49822 + f Lnet/minecraft/world/item/Item; SHEAF_POTTERY_SHERD yh field_43217 + f Lnet/minecraft/world/item/Item; SHELTER_POTTERY_SHERD yi field_43218 + f Lnet/minecraft/world/item/Item; SKULL_POTTERY_SHERD yj field_43219 + f Lnet/minecraft/world/item/Item; SNORT_POTTERY_SHERD yk field_43220 + f Lnet/minecraft/world/item/Item; COPPER_GRATE yl field_47009 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_GRATE ym field_47010 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_GRATE yn field_47011 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_GRATE yo field_47012 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_GRATE yp field_47013 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_GRATE yq field_47014 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_GRATE yr field_47015 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_GRATE ys field_47017 + f Lnet/minecraft/world/item/Item; COPPER_BULB yt field_47018 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_BULB yu field_47019 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_BULB yv field_47020 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_BULB yw field_47021 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_BULB yx field_47022 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_BULB yy field_47023 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_BULB yz field_47024 + f Lnet/minecraft/world/item/Item; CHISELED_TUFF_BRICKS z field_47026 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_51348 + p 0 key + p 1 item + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_7990 + p 0 key + p 1 item + m (Lnet/minecraft/world/item/BlockItem;)Lnet/minecraft/world/item/Item; registerBlock a method_7993 + p 0 item + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58095 a method_58095 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; registerBlock a method_7989 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerBlock a method_7992 + p 0 block + p 1 item + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/item/Item; registerBlock a method_58096 + p 0 block + p 1 propertiesModifier + m (Lnet/minecraft/world/level/block/Block;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; registerBlock a method_35220 + p 0 block + p 1 others + m (Ljava/lang/String;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_7991 + p 0 key + p 1 item + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58097 b method_58097 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58098 c method_58098 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58099 d method_58099 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58100 e method_58100 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58101 f method_58101 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58102 g method_58102 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58103 h method_58103 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58104 i method_58104 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58105 j method_58105 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58106 k method_58106 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58107 l method_58107 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58108 m method_58108 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58109 n method_58109 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58110 o method_58110 + m ()V + m ()V +c net/minecraft/world/item/JukeboxPlayable cuu net/minecraft/class_9792 + f Lcom/mojang/serialization/Codec; CODEC a field_52025 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_52026 + f Lnet/minecraft/world/item/EitherHolder; song c comp_2833 + f Z showInTooltip d comp_2834 + m ()Lnet/minecraft/world/item/EitherHolder; song a comp_2833 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60746 a method_60746 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/ItemInteractionResult; tryInsertIntoJukebox a method_60747 + p 0 level + p 1 pos + p 2 stack + p 3 player + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)V method_60748 a method_60748 + m (Z)Lnet/minecraft/world/item/JukeboxPlayable; withTooltip a method_60749 + p 1 showInTooltip + m ()Z showInTooltip b comp_2834 + m (Lnet/minecraft/world/item/EitherHolder;Z)V + m ()V +c net/minecraft/world/item/JukeboxSong cuv net/minecraft/class_9793 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_52027 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_52028 + f Lcom/mojang/serialization/Codec; CODEC c field_52029 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_52030 + f Lnet/minecraft/core/Holder; soundEvent e comp_2835 + f Lnet/minecraft/network/chat/Component; description f comp_2836 + f F lengthInSeconds g comp_2837 + f I comparatorOutput h comp_2838 + f I SONG_END_PADDING_TICKS i field_52031 + m ()I lengthInTicks a method_60750 + m (J)Z hasFinished a method_60751 + p 1 ticksSinceSongStarted + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60752 a method_60752 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; fromStack a method_60753 + p 0 registries + p 1 stack + m ()Lnet/minecraft/core/Holder; soundEvent b comp_2835 + m ()Lnet/minecraft/network/chat/Component; description c comp_2836 + m ()F lengthInSeconds d comp_2837 + m ()I comparatorOutput e comp_2838 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;FI)V + m ()V +c net/minecraft/world/item/JukeboxSongPlayer cuw net/minecraft/class_9794 + f I PLAY_EVENT_INTERVAL_TICKS a field_52032 + f J ticksSinceSongStarted b field_52033 + f Lnet/minecraft/core/Holder; song c field_52034 + f Lnet/minecraft/core/BlockPos; blockPos d field_52035 + f Lnet/minecraft/world/item/JukeboxSongPlayer$OnSongChanged; onSongChanged e field_52036 + m ()Z isPlaying a method_60754 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;)V stop a method_60755 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V spawnMusicParticles a method_60756 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/Holder;)V play a method_60757 + p 1 level + p 2 song + m (Lnet/minecraft/core/Holder;J)V setSongWithoutPlaying a method_60758 + p 1 song + p 2 ticksSinceSongStarted + m ()Lnet/minecraft/world/item/JukeboxSong; getSong b method_60759 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;)V tick b method_60760 + p 1 level + p 2 state + m ()J getTicksSinceSongStarted c method_60761 + m ()Z shouldEmitJukeboxPlayingEvent d method_60763 + m (Lnet/minecraft/world/item/JukeboxSongPlayer$OnSongChanged;Lnet/minecraft/core/BlockPos;)V + p 1 onSongChanged + p 2 blockPos +c net/minecraft/world/item/JukeboxSongPlayer$OnSongChanged cuw$a net/minecraft/class_9794$class_9795 +c net/minecraft/world/item/JukeboxSongs cux net/minecraft/class_9796 + f Lnet/minecraft/resources/ResourceKey; THIRTEEN a field_52037 + f Lnet/minecraft/resources/ResourceKey; CAT b field_52038 + f Lnet/minecraft/resources/ResourceKey; BLOCKS c field_52039 + f Lnet/minecraft/resources/ResourceKey; CHIRP d field_52040 + f Lnet/minecraft/resources/ResourceKey; FAR e field_52041 + f Lnet/minecraft/resources/ResourceKey; MALL f field_52042 + f Lnet/minecraft/resources/ResourceKey; MELLOHI g field_52043 + f Lnet/minecraft/resources/ResourceKey; STAL h field_52044 + f Lnet/minecraft/resources/ResourceKey; STRAD i field_52045 + f Lnet/minecraft/resources/ResourceKey; WARD j field_52046 + f Lnet/minecraft/resources/ResourceKey; ELEVEN k field_52047 + f Lnet/minecraft/resources/ResourceKey; WAIT l field_52048 + f Lnet/minecraft/resources/ResourceKey; PIGSTEP m field_52049 + f Lnet/minecraft/resources/ResourceKey; OTHERSIDE n field_52050 + f Lnet/minecraft/resources/ResourceKey; FIVE o field_52051 + f Lnet/minecraft/resources/ResourceKey; RELIC p field_52052 + f Lnet/minecraft/resources/ResourceKey; PRECIPICE q field_52053 + f Lnet/minecraft/resources/ResourceKey; CREATOR r field_52054 + f Lnet/minecraft/resources/ResourceKey; CREATOR_MUSIC_BOX s field_52055 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_60764 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60765 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;II)V register a method_60766 + p 0 context + p 1 key + p 2 soundEvent + p 3 lengthInSeconds + p 4 comparatorOutput + m ()V +c net/minecraft/world/item/KnowledgeBookItem cuy net/minecraft/class_1801 + f Lorg/slf4j/Logger; LOGGER a field_8042 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/LeadItem cuz net/minecraft/class_1804 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Leashable;)Z method_55761 a method_55761 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/InteractionResult; bindPlayerMobs a method_7994 + p 0 player + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Ljava/util/List; leashableInArea a method_61166 + p 0 level + p 1 pos + p 2 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)Z method_61167 a method_61167 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/LingeringPotionItem cva net/minecraft/class_1803 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MaceItem cvb net/minecraft/class_9362 + f F SMASH_ATTACK_FALL_THRESHOLD a field_49823 + f F SMASH_ATTACK_KNOCKBACK_RADIUS b field_49999 + f I DEFAULT_ATTACK_DAMAGE c field_49824 + f F DEFAULT_ATTACK_SPEED j field_49825 + f F SMASH_ATTACK_HEAVY_THRESHOLD k field_50141 + f F SMASH_ATTACK_KNOCKBACK_POWER l field_50000 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;)V method_58409 a method_58409 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canSmashAttack a method_58659 + p 0 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; knockbackPredicate a method_58660 + p 0 player + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Z method_58661 a method_58661 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)D getKnockbackPower a method_58662 + p 0 player + p 1 entity + p 2 entityPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)V knockback a method_58411 + p 0 level + p 1 player + p 2 entity + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes h method_59532 + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58412 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MapItem cvc net/minecraft/class_1806 + f I IMAGE_WIDTH a field_30907 + f I IMAGE_HEIGHT b field_30908 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;)V renderBiomePreviewMap a method_8002 + p 0 serverLevel + p 1 stack + m (Lnet/minecraft/world/level/Level;IIBZZ)Lnet/minecraft/world/item/ItemStack; create a method_8005 + p 0 level + p 1 levelX + p 2 levelZ + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + m (Lnet/minecraft/world/level/Level;IIIZZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapId; createNewSavedData a method_32349 + p 0 level + p 1 x + p 2 z + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + p 6 dimension + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V update a method_7998 + p 1 level + p 2 viewer + p 3 data + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)V lockMap a method_17442 + p 0 level + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getCorrectStateForFluidBlock a method_7995 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/network/chat/Component; getTooltipForId a method_53836 + p 0 mapId + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getSavedData a method_7997 + p 0 mapId + p 1 level + m ([ZII)Z isBiomeWatery a method_38988 + p 0 wateryMap + p 1 xSample + p 2 zSample + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getSavedData b method_8001 + p 0 stack + p 1 level + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)V scaleMap c method_7996 + p 0 stack + p 1 level + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MapItem$1 cvc$1 net/minecraft/class_1806$1 + f [I $SwitchMap$net$minecraft$world$item$component$MapPostProcessing a field_49271 + m ()V +c net/minecraft/world/item/MilkBucketItem cvd net/minecraft/class_1805 + f I DRINK_DURATION a field_30911 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MinecartItem cve net/minecraft/class_1808 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_ITEM_BEHAVIOR a field_8896 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; type b field_8897 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/item/MinecartItem$1 cve$1 net/minecraft/class_1808$1 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_8898 + m ()V +c net/minecraft/world/item/MobBucketItem cvf net/minecraft/class_1785 + f Lcom/mojang/serialization/MapCodec; VARIANT_FIELD_CODEC a field_49272 + f Lnet/minecraft/world/entity/EntityType; type b field_7991 + f Lnet/minecraft/sounds/SoundEvent; emptySound c field_28356 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V spawn a method_7824 + p 1 serverLevel + p 2 bucketedMobStack + p 3 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 content + p 3 emptySound + p 4 properties + m ()V +c net/minecraft/world/item/NameTagItem cvg net/minecraft/class_1807 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/OminousBottleItem cvh net/minecraft/class_9462 + f I EFFECT_DURATION a field_50143 + f I MIN_AMPLIFIER b field_50144 + f I MAX_AMPLIFIER c field_50145 + f I DRINK_DURATION j field_50146 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PickaxeItem cvi net/minecraft/class_1810 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PlaceOnWaterBlockItem cvj net/minecraft/class_1841 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PlayerHeadItem cvk net/minecraft/class_1809 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ResolvableProfile;)V method_57388 a method_57388 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/PotionItem cvl net/minecraft/class_1812 + f I DRINK_DURATION a field_30917 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;)V method_57389 a method_57389 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ProjectileItem cvm net/minecraft/class_9463 + m (Lnet/minecraft/world/entity/projectile/Projectile;DDDFF)V shoot a method_58654 + p 1 projectile + p 2 x + p 4 y + p 6 z + p 8 velocity + p 9 inaccuracy + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Position;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/entity/projectile/Projectile; asProjectile a method_58648 + p 1 level + p 2 pos + p 3 stack + p 4 direction + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; createDispenseConfig c method_58653 +c net/minecraft/world/item/ProjectileItem$DispenseConfig cvm$a net/minecraft/class_9463$class_9464 + f Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; DEFAULT a field_50147 + f Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction b comp_2544 + f F uncertainty c comp_2545 + f F power d comp_2546 + f Ljava/util/OptionalInt; overrideDispenseEvent e comp_2547 + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; builder a method_58663 + m ()Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction b comp_2544 + m ()F uncertainty c comp_2545 + m ()F power d comp_2546 + m ()Ljava/util/OptionalInt; overrideDispenseEvent e comp_2547 + m (Lnet/minecraft/world/item/ProjectileItem$PositionFunction;FFLjava/util/OptionalInt;)V + m ()V +c net/minecraft/world/item/ProjectileItem$DispenseConfig$Builder cvm$a$a net/minecraft/class_9463$class_9464$class_9465 + f Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction a field_50148 + f F uncertainty b field_50149 + f F power c field_50150 + f Ljava/util/OptionalInt; overrideDispenseEvent d field_50151 + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; build a method_58664 + m (F)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; uncertainty a method_58665 + p 1 uncertainty + m (I)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; overrideDispenseEvent a method_58666 + p 1 overrideDispenseEvent + m (Lnet/minecraft/world/item/ProjectileItem$PositionFunction;)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; positionFunction a method_58667 + p 1 positionFunction + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58668 a method_58668 + m (F)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; power b method_58669 + p 1 power + m ()V +c net/minecraft/world/item/ProjectileItem$PositionFunction cvm$b net/minecraft/class_9463$class_9466 +c net/minecraft/world/item/ProjectileWeaponItem cvn net/minecraft/class_1811 + f Ljava/util/function/Predicate; ARROW_ONLY c field_18281 + f Ljava/util/function/Predicate; ARROW_OR_FIREWORK j field_18282 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Ljava/util/List;FFZLnet/minecraft/world/entity/LivingEntity;)V shoot a method_57393 + p 1 level + p 2 shooter + p 3 hand + p 4 weapon + p 5 projectileItems + p 6 velocity + p 7 inaccuracy + p 8 isCrit + p 9 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/projectile/Projectile;IFFFLnet/minecraft/world/entity/LivingEntity;)V shootProjectile a method_7763 + p 1 shooter + p 2 projectile + p 3 index + p 4 velocity + p 5 inaccuracy + p 6 angle + p 7 target + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Predicate;)Lnet/minecraft/world/item/ItemStack; getHeldProjectile a method_18815 + p 0 shooter + p 1 isAmmo + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/List; draw a method_57390 + p 0 weapon + p 1 ammo + p 2 shooter + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Z)Lnet/minecraft/world/item/ItemStack; useAmmo a method_57391 + p 0 weapon + p 1 ammo + p 2 shooter + p 3 intangable + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/entity/projectile/Projectile; createProjectile a method_57344 + p 1 level + p 2 shooter + p 3 weapon + p 4 ammo + p 5 isCrit + m ()Ljava/util/function/Predicate; getAllSupportedProjectiles b method_19268 + c Get the predicate to match ammunition when searching the player's inventory, not their main/offhand + m ()I getDefaultProjectileRange c method_24792 + m ()Ljava/util/function/Predicate; getSupportedHeldProjectiles d method_20310 + m (Lnet/minecraft/world/item/ItemStack;)Z method_18816 i method_18816 + m (Lnet/minecraft/world/item/ItemStack;)I getDurabilityUse j method_57345 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_18817 k method_18817 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/Rarity cvo net/minecraft/class_1814 + f Lnet/minecraft/world/item/Rarity; COMMON a field_8906 + f Lnet/minecraft/world/item/Rarity; UNCOMMON b field_8907 + f Lnet/minecraft/world/item/Rarity; RARE c field_8903 + f Lnet/minecraft/world/item/Rarity; EPIC d field_8904 + f Lcom/mojang/serialization/Codec; CODEC e field_50001 + f Ljava/util/function/IntFunction; BY_ID f field_50002 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_50003 + f I id h field_50004 + f Ljava/lang/String; name i field_50005 + f Lnet/minecraft/ChatFormatting; color j field_8908 + f [Lnet/minecraft/world/item/Rarity; $VALUES k field_8905 + m ()Lnet/minecraft/ChatFormatting; color a method_58413 + m (Lnet/minecraft/world/item/Rarity;)I method_58414 a method_58414 + m ()[Lnet/minecraft/world/item/Rarity; $values b method_36683 + m (Lnet/minecraft/world/item/Rarity;)I method_58415 b method_58415 + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 id + p 4 name + p 5 color + m ()V +c net/minecraft/world/item/SaddleItem cvp net/minecraft/class_1816 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ScaffoldingBlockItem cvq net/minecraft/class_3734 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/ServerItemCooldowns cvr net/minecraft/class_1817 + f Lnet/minecraft/server/level/ServerPlayer; player a field_8910 + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player +c net/minecraft/world/item/ShearsItem cvs net/minecraft/class_1820 + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties h method_58416 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ShieldItem cvt net/minecraft/class_1819 + f I EFFECTIVE_BLOCK_DELAY a field_30918 + f F MINIMUM_DURABILITY_DAMAGE b field_30919 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ShovelItem cvu net/minecraft/class_1821 + f Ljava/util/Map; FLATTENABLES a field_8912 + c Map used to lookup shovel right click interactions + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/SignApplicator cvv net/minecraft/class_8234 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZLnet/minecraft/world/entity/player/Player;)Z tryApplyToSign a method_49798 + p 1 level + p 2 sign + p 3 isFront + p 4 player + m (Lnet/minecraft/world/level/block/entity/SignText;Lnet/minecraft/world/entity/player/Player;)Z canApplyToSign a method_49801 + p 1 text + p 2 player +c net/minecraft/world/item/SignItem cvw net/minecraft/class_1822 + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V + p 1 properties + p 2 standingBlock + p 3 wallBlock + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V + p 1 properties + p 2 standingBlock + p 3 wallBlock + p 4 attachmentDirection +c net/minecraft/world/item/SmithingTemplateItem cvx net/minecraft/class_8052 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SHOVEL A field_41959 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_PICKAXE B field_41960 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_INGOT C field_41961 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_REDSTONE_DUST D field_41962 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_QUARTZ E field_41963 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_EMERALD F field_41964 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_DIAMOND G field_41965 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LAPIS_LAZULI H field_41966 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_AMETHYST_SHARD I field_42472 + f Lnet/minecraft/network/chat/Component; appliesTo J field_41967 + f Lnet/minecraft/network/chat/Component; ingredients K field_41968 + f Lnet/minecraft/network/chat/Component; upgradeDescription L field_41969 + f Lnet/minecraft/network/chat/Component; baseSlotDescription M field_41970 + f Lnet/minecraft/network/chat/Component; additionsSlotDescription N field_41971 + f Ljava/util/List; baseSlotEmptyIcons O field_41972 + f Ljava/util/List; additionalSlotEmptyIcons P field_41973 + f Lnet/minecraft/ChatFormatting; TITLE_FORMAT a field_41974 + f Lnet/minecraft/ChatFormatting; DESCRIPTION_FORMAT b field_41975 + f Lnet/minecraft/network/chat/Component; INGREDIENTS_TITLE c field_41977 + f Lnet/minecraft/network/chat/Component; APPLIES_TO_TITLE j field_41978 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE k field_41979 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_APPLIES_TO l field_41980 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_INGREDIENTS m field_41981 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_BASE_SLOT_DESCRIPTION n field_41982 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_ADDITIONS_SLOT_DESCRIPTION o field_41983 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_APPLIES_TO p field_41984 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_INGREDIENTS q field_41985 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_BASE_SLOT_DESCRIPTION r field_41986 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_ADDITIONS_SLOT_DESCRIPTION s field_41987 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_HELMET t field_41988 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_CHESTPLATE u field_41989 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LEGGINGS v field_41990 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_BOOTS w field_41991 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_HOE x field_41992 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_AXE y field_41993 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SWORD z field_41958 + m ()Ljava/util/List; createNetheriteUpgradeMaterialList A method_48417 + m (Lnet/minecraft/resources/ResourceKey;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/SmithingTemplateItem; createArmorTrimTemplate a method_48418 + p 0 key + p 1 requiredFeatures + m (Lnet/minecraft/resources/ResourceLocation;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/SmithingTemplateItem; createArmorTrimTemplate a method_48419 + p 0 name + p 1 requiredFeatures + m ()Lnet/minecraft/world/item/SmithingTemplateItem; createNetheriteUpgradeTemplate h method_48420 + m ()Lnet/minecraft/network/chat/Component; getBaseSlotDescription k method_48421 + m ()Lnet/minecraft/network/chat/Component; getAdditionSlotDescription l method_48422 + m ()Ljava/util/List; getBaseSlotEmptyIcons m method_48423 + m ()Ljava/util/List; getAdditionalSlotEmptyIcons n method_48413 + m ()Ljava/util/List; createTrimmableArmorIconList x method_48414 + m ()Ljava/util/List; createTrimmableMaterialIconList y method_48415 + m ()Ljava/util/List; createNetheriteUpgradeIconList z method_48416 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/util/List;[Lnet/minecraft/world/flag/FeatureFlag;)V + p 1 appliesTo + p 2 ingredients + p 3 upgradeDescription + p 4 baseSlotDescription + p 5 additionsSlotDescription + p 6 baseSlotEmptyIcons + p 7 additionalSlotEmptyIcons + p 8 requiredFeatures + m ()V +c net/minecraft/world/item/SnowballItem cvy net/minecraft/class_1823 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SolidBucketItem cvz net/minecraft/class_5634 + f Lnet/minecraft/sounds/SoundEvent; placeSound a field_27877 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 placeSound + p 3 properties +c net/minecraft/world/item/SpawnEggItem cwa net/minecraft/class_1826 + f Ljava/util/Map; BY_ID a field_8914 + f Lcom/mojang/serialization/MapCodec; ENTITY_TYPE_FIELD_CODEC b field_49273 + f I backgroundColor c field_8916 + f I highlightColor j field_8915 + f Lnet/minecraft/world/entity/EntityType; defaultType k field_8917 + m (I)I getColor a method_8016 + p 1 tintIndex + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/item/SpawnEggItem; byId a method_8019 + p 0 type + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; spawnOffspringFromSpawnEgg a method_24793 + p 1 player + p 2 mob + p 3 entityType + p 4 serverLevel + p 5 pos + p 6 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EntityType;)Z spawnsEntity a method_8018 + p 1 stack + p 2 entityType + m ()Ljava/lang/Iterable; eggs h method_8017 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/EntityType; getType i method_8015 + p 1 stack + m (Lnet/minecraft/world/entity/EntityType;IILnet/minecraft/world/item/Item$Properties;)V + p 1 defaultType + p 2 backgroundColor + p 3 highlightColor + p 4 properties + m ()V +c net/minecraft/world/item/SpectralArrowItem cwb net/minecraft/class_1825 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/SplashPotionItem cwc net/minecraft/class_1828 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SpyglassItem cwd net/minecraft/class_5538 + f I USE_DURATION a field_30921 + f F ZOOM_FOV_MODIFIER b field_30922 + m (Lnet/minecraft/world/entity/LivingEntity;)V stopUsing a method_31582 + p 1 user + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/StandingAndWallBlockItem cwe net/minecraft/class_1827 + f Lnet/minecraft/world/level/block/Block; wallBlock a field_8918 + f Lnet/minecraft/core/Direction; attachmentDirection b field_40240 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z canPlace a method_45431 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/core/Direction;)V + p 1 block + p 2 wallBlock + p 3 properties + p 4 attachmentDirection +c net/minecraft/world/item/SuspiciousStewItem cwf net/minecraft/class_1830 + f I DEFAULT_DURATION a field_41069 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SwordItem cwg net/minecraft/class_1829 + m (Lnet/minecraft/world/item/Tier;IF)Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes a method_57394 + p 0 tier + p 1 attackDamage + p 2 attackSpeed + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58417 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 properties +c net/minecraft/world/item/ThrowablePotionItem cwh net/minecraft/class_4537 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/Tier cwi net/minecraft/class_1832 + m ()I getUses a method_8025 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/component/Tool; createToolProperties a method_58418 + p 1 block + m ()F getSpeed b method_8027 + m ()F getAttackDamageBonus c method_8028 + m ()Lnet/minecraft/tags/TagKey; getIncorrectBlocksForDrops d method_58419 + m ()I getEnchantmentValue e method_8026 + m ()Lnet/minecraft/world/item/crafting/Ingredient; getRepairIngredient f method_8023 +c net/minecraft/world/item/TieredItem cwj net/minecraft/class_1831 + f Lnet/minecraft/world/item/Tier; tier a field_8921 + m ()Lnet/minecraft/world/item/Tier; getTier h method_8022 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 properties +c net/minecraft/world/item/Tiers cwk net/minecraft/class_1834 + f Lnet/minecraft/world/item/Tiers; WOOD a field_8922 + f Lnet/minecraft/world/item/Tiers; STONE b field_8927 + f Lnet/minecraft/world/item/Tiers; IRON c field_8923 + f Lnet/minecraft/world/item/Tiers; DIAMOND d field_8930 + f Lnet/minecraft/world/item/Tiers; GOLD e field_8929 + f Lnet/minecraft/world/item/Tiers; NETHERITE f field_22033 + f Lnet/minecraft/tags/TagKey; incorrectBlocksForDrops g field_50006 + f I uses h field_8924 + f F speed i field_8932 + f F damage j field_8931 + f I enchantmentValue k field_8933 + f Ljava/util/function/Supplier; repairIngredient l field_8928 + f [Lnet/minecraft/world/item/Tiers; $VALUES m field_8926 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_24361 g method_24361 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8033 h method_8033 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8032 i method_8032 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8030 j method_8030 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8031 k method_8031 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8029 l method_8029 + m ()[Lnet/minecraft/world/item/Tiers; $values m method_36684 + m (Ljava/lang/String;ILnet/minecraft/tags/TagKey;IFFILjava/util/function/Supplier;)V + p 3 incorrectBlockForDrops + p 4 uses + p 5 speed + p 6 damage + p 7 enchantmentValue + p 8 repairIngredient + m ()V +c net/minecraft/world/item/TippedArrowItem cwl net/minecraft/class_1833 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/TooltipFlag cwm net/minecraft/class_1836 + f Lnet/minecraft/world/item/TooltipFlag$Default; NORMAL a field_41070 + f Lnet/minecraft/world/item/TooltipFlag$Default; ADVANCED b field_41071 + m ()Z isAdvanced a method_8035 + m ()Z isCreative b method_47370 + m ()V +c net/minecraft/world/item/TooltipFlag$Default cwm$a net/minecraft/class_1836$class_1837 + f Z advanced c comp_1152 + f Z creative d comp_1153 + m ()Lnet/minecraft/world/item/TooltipFlag$Default; asCreative c method_47371 + m ()Z advanced d comp_1152 + m ()Z creative e comp_1153 + m (ZZ)V +c net/minecraft/world/item/TridentItem cwn net/minecraft/class_1835 + f I THROW_THRESHOLD_TIME a field_30926 + f F BASE_DAMAGE b field_30927 + f F SHOOT_POWER c field_30928 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes h method_57395 + m (Lnet/minecraft/world/item/ItemStack;)Z isTooDamagedToUse i method_61168 + p 0 stack + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58420 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/UseAnim cwo net/minecraft/class_1839 + f Lnet/minecraft/world/item/UseAnim; NONE a field_8952 + f Lnet/minecraft/world/item/UseAnim; EAT b field_8950 + f Lnet/minecraft/world/item/UseAnim; DRINK c field_8946 + f Lnet/minecraft/world/item/UseAnim; BLOCK d field_8949 + f Lnet/minecraft/world/item/UseAnim; BOW e field_8953 + f Lnet/minecraft/world/item/UseAnim; SPEAR f field_8951 + f Lnet/minecraft/world/item/UseAnim; CROSSBOW g field_8947 + f Lnet/minecraft/world/item/UseAnim; SPYGLASS h field_27079 + f Lnet/minecraft/world/item/UseAnim; TOOT_HORN i field_39058 + f Lnet/minecraft/world/item/UseAnim; BRUSH j field_42717 + f [Lnet/minecraft/world/item/UseAnim; $VALUES k field_8948 + m ()[Lnet/minecraft/world/item/UseAnim; $values a method_36686 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/WindChargeItem cwp net/minecraft/class_9239 + f I COOLDOWN a field_49099 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58670 a method_58670 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/WritableBookItem cwq net/minecraft/class_1840 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/WrittenBookItem cwr net/minecraft/class_1843 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)Z resolveBookComponents a method_8054 + p 0 bookStack + p 1 resolvingSource + p 2 resolvingPlayer + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/alchemy/Potion cws net/minecraft/class_1842 + c Defines a type of potion in the game. These are used to associate one or more effects with items such as the bottled potion or the tipped arrows. + f Lcom/mojang/serialization/Codec; CODEC a field_51947 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51948 + f Ljava/lang/String; name c field_8954 + c The base name for the potion type. + f Ljava/util/List; effects d field_8955 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures e field_50152 + m ()Ljava/util/List; getEffects a method_8049 + c Gets the base effects applied by the potion.\n@return The effects applied by the potion. + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_57396 a method_57396 + m (Ljava/util/Optional;Ljava/lang/String;)Ljava/lang/String; getName a method_8051 + p 0 potion + p 1 descriptionId + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/alchemy/Potion; requiredFeatures a method_58671 + p 1 requiredFeatures + m ()Z hasInstantEffects b method_8050 + c Checks if the potion contains any instant effects such as instant health or instant damage.\n@return Whether the potion contained an instant effect. + m ([Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 effects + m (Ljava/lang/String;[Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 name + p 2 effects + m ()V +c net/minecraft/world/item/alchemy/PotionBrewing cwt net/minecraft/class_1845 + f I BREWING_TIME_SECONDS a field_30942 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; EMPTY b field_51402 + f Ljava/util/List; containers c field_51403 + f Ljava/util/List; potionMixes d field_51404 + f Ljava/util/List; containerMixes e field_51405 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/item/alchemy/PotionBrewing; bootstrap a method_8076 + p 0 enabledFeatures + m (Lnet/minecraft/world/item/ItemStack;)Z isIngredient a method_8077 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasMix a method_8072 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/alchemy/PotionBrewing$Builder;)V addVanillaMixes a method_59699 + p 0 builder + m (Lnet/minecraft/core/Holder;)Z isBrewablePotion a method_20361 + p 1 potion + m (Lnet/minecraft/world/item/ItemStack;)Z isContainerIngredient b method_8079 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasContainerMix b method_8070 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/ItemStack;)Z isPotionIngredient c method_8069 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasPotionMix c method_8075 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/ItemStack;)Z isContainer d method_59700 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; mix d method_8078 + p 1 potion + p 2 potionItem + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 containers + p 2 potionMixes + p 3 containerMixes + m ()V +c net/minecraft/world/item/alchemy/PotionBrewing$Builder cwt$a net/minecraft/class_1845$class_9665 + c

Interface {@link net.fabricmc.fabric.api.registry.FabricBrewingRecipeRegistryBuilder} injected by mod fabric-content-registries-v0

+ f Ljava/util/List; containers a field_51406 + f Ljava/util/List; potionMixes b field_51407 + f Ljava/util/List; containerMixes c field_51408 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d field_51409 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; build a method_59701 + m (Lnet/minecraft/world/item/Item;)V addContainer a method_59702 + p 1 container + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)V addContainerRecipe a method_59703 + p 1 input + p 2 reagent + p 3 result + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)V addStartMix a method_59704 + p 1 reagent + p 2 result + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)V addMix a method_59705 + p 1 input + p 2 reagent + p 3 result + m (Lnet/minecraft/world/item/Item;)V expectPotion b method_59706 + p 0 item + m (Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 enabledFeatures +c net/minecraft/world/item/alchemy/PotionBrewing$Mix cwt$b net/minecraft/class_1845$class_1846 + f Lnet/minecraft/core/Holder; from a comp_2190 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient b comp_2191 + f Lnet/minecraft/core/Holder; to c comp_2192 + m ()Lnet/minecraft/core/Holder; from a comp_2190 + m ()Lnet/minecraft/world/item/crafting/Ingredient; ingredient b comp_2191 + m ()Lnet/minecraft/core/Holder; to c comp_2192 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/core/Holder;)V +c net/minecraft/world/item/alchemy/PotionContents cwu net/minecraft/class_1844 + f Lnet/minecraft/world/item/alchemy/PotionContents; EMPTY a field_49274 + f Lcom/mojang/serialization/Codec; CODEC b field_49275 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49276 + f Ljava/util/Optional; potion d comp_2378 + f Ljava/util/Optional; customColor e comp_2379 + f Ljava/util/List; customEffects f comp_2380 + f Lnet/minecraft/network/chat/Component; NO_EFFECT g field_25817 + f I BASE_POTION_COLOR h field_49277 + f Lcom/mojang/serialization/Codec; FULL_CODEC i field_49749 + m ()Ljava/lang/Iterable; getAllEffects a method_57397 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/world/item/alchemy/PotionContents; withEffectAdded a method_57398 + p 1 effect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57399 a method_57399 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; createItemStack a method_57400 + p 0 item + p 1 potion + m (Ljava/lang/Iterable;)I getColor a method_8055 + p 0 effects + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;FF)V addPotionTooltip a method_8065 + p 0 effects + p 1 tooltipAdder + p 2 durationFactor + p 3 ticksPerSecond + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_55762 a method_55762 + m (Ljava/util/function/Consumer;)V forEachEffect a method_57402 + p 1 action + m (Ljava/util/function/Consumer;FF)V addPotionTooltip a method_47372 + p 1 tooltipAdder + p 2 durationFactor + p 3 ticksPerSecond + m (Lnet/minecraft/core/Holder;)Z is a method_57401 + p 1 potion + m ()I getColor b method_8064 + m (Ljava/lang/Iterable;)Ljava/util/OptionalInt; getColorOptional b method_58111 + p 0 effects + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/alchemy/PotionContents; withPotion b method_57403 + p 1 potion + m ()Z hasEffects c method_57405 + m (Lnet/minecraft/core/Holder;)I getColor c method_8062 + p 0 potion + m ()Ljava/util/List; customEffects d comp_2380 + m ()Ljava/util/Optional; potion e comp_2378 + m ()Ljava/util/Optional; customColor f comp_2379 + m (Lnet/minecraft/core/Holder;)V + p 1 potion + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/List;)V + m ()V +c net/minecraft/world/item/alchemy/Potions cwv net/minecraft/class_1847 + c Defines all of the potion types registered by Minecraft itself.\n@see net.minecraft.core.Registry#POTION + f Lnet/minecraft/core/Holder; HARMING A field_9004 + f Lnet/minecraft/core/Holder; STRONG_HARMING B field_8973 + f Lnet/minecraft/core/Holder; POISON C field_8982 + f Lnet/minecraft/core/Holder; LONG_POISON D field_9002 + f Lnet/minecraft/core/Holder; STRONG_POISON E field_8972 + f Lnet/minecraft/core/Holder; REGENERATION F field_8986 + f Lnet/minecraft/core/Holder; LONG_REGENERATION G field_9003 + f Lnet/minecraft/core/Holder; STRONG_REGENERATION H field_8992 + f Lnet/minecraft/core/Holder; STRENGTH I field_8978 + f Lnet/minecraft/core/Holder; LONG_STRENGTH J field_8965 + f Lnet/minecraft/core/Holder; STRONG_STRENGTH K field_8993 + f Lnet/minecraft/core/Holder; WEAKNESS L field_8975 + f Lnet/minecraft/core/Holder; LONG_WEAKNESS M field_8970 + f Lnet/minecraft/core/Holder; LUCK N field_8995 + f Lnet/minecraft/core/Holder; SLOW_FALLING O field_8974 + f Lnet/minecraft/core/Holder; LONG_SLOW_FALLING P field_8964 + f Lnet/minecraft/core/Holder; WIND_CHARGED Q field_50153 + f Lnet/minecraft/core/Holder; WEAVING R field_50154 + f Lnet/minecraft/core/Holder; OOZING S field_50155 + f Lnet/minecraft/core/Holder; INFESTED T field_50156 + f Lnet/minecraft/core/Holder; WATER a field_8991 + f Lnet/minecraft/core/Holder; MUNDANE b field_8967 + f Lnet/minecraft/core/Holder; THICK c field_8985 + f Lnet/minecraft/core/Holder; AWKWARD d field_8999 + f Lnet/minecraft/core/Holder; NIGHT_VISION e field_8968 + f Lnet/minecraft/core/Holder; LONG_NIGHT_VISION f field_8981 + f Lnet/minecraft/core/Holder; INVISIBILITY g field_8997 + f Lnet/minecraft/core/Holder; LONG_INVISIBILITY h field_9000 + f Lnet/minecraft/core/Holder; LEAPING i field_8979 + f Lnet/minecraft/core/Holder; LONG_LEAPING j field_8971 + f Lnet/minecraft/core/Holder; STRONG_LEAPING k field_8998 + f Lnet/minecraft/core/Holder; FIRE_RESISTANCE l field_8987 + f Lnet/minecraft/core/Holder; LONG_FIRE_RESISTANCE m field_8969 + f Lnet/minecraft/core/Holder; SWIFTNESS n field_9005 + f Lnet/minecraft/core/Holder; LONG_SWIFTNESS o field_8983 + f Lnet/minecraft/core/Holder; STRONG_SWIFTNESS p field_8966 + f Lnet/minecraft/core/Holder; SLOWNESS q field_8996 + f Lnet/minecraft/core/Holder; LONG_SLOWNESS r field_8989 + f Lnet/minecraft/core/Holder; STRONG_SLOWNESS s field_8976 + f Lnet/minecraft/core/Holder; TURTLE_MASTER t field_8990 + f Lnet/minecraft/core/Holder; LONG_TURTLE_MASTER u field_8988 + f Lnet/minecraft/core/Holder; STRONG_TURTLE_MASTER v field_8977 + f Lnet/minecraft/core/Holder; WATER_BREATHING w field_8994 + f Lnet/minecraft/core/Holder; LONG_WATER_BREATHING x field_9001 + f Lnet/minecraft/core/Holder; HEALING y field_8963 + f Lnet/minecraft/core/Holder; STRONG_HEALING z field_8980 + m (Ljava/lang/String;Lnet/minecraft/world/item/alchemy/Potion;)Lnet/minecraft/core/Holder; register a method_8084 + p 0 name + p 1 potion + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55763 + p 0 registry + m ()V + m ()V +c net/minecraft/world/item/alchemy/package-info cww net/minecraft/class_6080 +c net/minecraft/world/item/armortrim/ArmorTrim cwx net/minecraft/class_8053 + f Lcom/mojang/serialization/Codec; CODEC a field_41994 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49278 + f Lnet/minecraft/network/chat/Component; UPGRADE_TITLE c field_41997 + f Lnet/minecraft/core/Holder; material d field_41998 + f Lnet/minecraft/core/Holder; pattern e field_41999 + f Z showInTooltip f field_49279 + f Ljava/util/function/Function; innerTexture g field_42000 + f Ljava/util/function/Function; outerTexture h field_42001 + m ()Lnet/minecraft/core/Holder; pattern a method_48424 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57406 a method_57406 + m (Lnet/minecraft/world/item/armortrim/ArmorTrim;)Ljava/lang/Boolean; method_57407 a method_57407 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_57408 a method_57408 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; innerTexture a method_48434 + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Z hasPatternAndMaterial a method_48427 + p 1 pattern + p 2 material + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; method_57411 a method_57411 + m (Z)Lnet/minecraft/world/item/armortrim/ArmorTrim; withTooltip a method_58421 + p 1 showInTooltip + m ()Lnet/minecraft/core/Holder; material b method_48431 + m (Lnet/minecraft/world/item/armortrim/ArmorTrim;)Ljava/lang/Boolean; method_57410 b method_57410 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_57412 b method_57412 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; outerTexture b method_48436 + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Ljava/lang/String; getColorPaletteSuffix b method_48577 + p 0 trimMaterial + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; method_57413 b method_57413 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;ZLjava/util/function/Function;Ljava/util/function/Function;)V + p 1 material + p 2 pattern + p 3 showInTooltip + p 4 innerTexture + p 5 outerTexture + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Z)V + p 1 material + p 2 pattern + p 3 showInTooltip + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 material + p 2 pattern + m ()V +c net/minecraft/world/item/armortrim/TrimMaterial cwy net/minecraft/class_8054 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42002 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49280 + f Lcom/mojang/serialization/Codec; CODEC c field_42003 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49281 + f Ljava/lang/String; assetName e comp_1208 + f Lnet/minecraft/core/Holder; ingredient f comp_1209 + f F itemModelIndex g comp_1210 + f Ljava/util/Map; overrideArmorMaterials h comp_1237 + f Lnet/minecraft/network/chat/Component; description i comp_1212 + m ()Ljava/lang/String; assetName a comp_1208 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48437 a method_48437 + m (Ljava/lang/String;Lnet/minecraft/world/item/Item;FLnet/minecraft/network/chat/Component;Ljava/util/Map;)Lnet/minecraft/world/item/armortrim/TrimMaterial; create a method_48438 + p 0 assetName + p 1 ingredient + p 2 itemModelIndex + p 3 description + p 4 overrideArmorMaterials + m ()Lnet/minecraft/core/Holder; ingredient b comp_1209 + m ()F itemModelIndex c comp_1210 + m ()Ljava/util/Map; overrideArmorMaterials d comp_1237 + m ()Lnet/minecraft/network/chat/Component; description e comp_1212 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;FLjava/util/Map;Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/world/item/armortrim/TrimMaterials cwz net/minecraft/class_8055 + f Lnet/minecraft/resources/ResourceKey; QUARTZ a field_42004 + f Lnet/minecraft/resources/ResourceKey; IRON b field_42005 + f Lnet/minecraft/resources/ResourceKey; NETHERITE c field_42006 + f Lnet/minecraft/resources/ResourceKey; REDSTONE d field_42007 + f Lnet/minecraft/resources/ResourceKey; COPPER e field_42008 + f Lnet/minecraft/resources/ResourceKey; GOLD f field_42009 + f Lnet/minecraft/resources/ResourceKey; EMERALD g field_42010 + f Lnet/minecraft/resources/ResourceKey; DIAMOND h field_42011 + f Lnet/minecraft/resources/ResourceKey; LAPIS i field_42012 + f Lnet/minecraft/resources/ResourceKey; AMETHYST j field_42013 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder$Reference;)Z method_48439 a method_48439 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; registryKey a method_48441 + p 0 key + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getFromIngredient a method_48440 + p 0 regustries + p 1 ingredient + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48442 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;Lnet/minecraft/network/chat/Style;F)V register a method_48578 + p 0 context + p 1 materialKey + p 2 ingredient + p 3 style + p 4 itemModelIndex + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;Lnet/minecraft/network/chat/Style;FLjava/util/Map;)V register a method_48443 + p 0 context + p 1 materialKey + p 2 ingredient + p 3 style + p 4 itemModelIndex + p 5 overrideArmorMaterials + m ()V + m ()V +c net/minecraft/world/item/armortrim/TrimPattern cxa net/minecraft/class_8056 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42014 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49282 + f Lcom/mojang/serialization/Codec; CODEC c field_42015 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49283 + f Lnet/minecraft/resources/ResourceLocation; assetId e comp_1213 + f Lnet/minecraft/core/Holder; templateItem f comp_1214 + f Lnet/minecraft/network/chat/Component; description g comp_1215 + f Z decal h comp_1905 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_1213 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48445 a method_48445 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; copyWithStyle a method_48446 + p 1 trimMaterial + m ()Lnet/minecraft/core/Holder; templateItem b comp_1214 + m ()Lnet/minecraft/network/chat/Component; description c comp_1215 + m ()Z decal d comp_1905 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;Z)V + m ()V +c net/minecraft/world/item/armortrim/TrimPatterns cxb net/minecraft/class_8057 + f Lnet/minecraft/resources/ResourceKey; SENTRY a field_42016 + f Lnet/minecraft/resources/ResourceKey; DUNE b field_42017 + f Lnet/minecraft/resources/ResourceKey; COAST c field_42018 + f Lnet/minecraft/resources/ResourceKey; WILD d field_42019 + f Lnet/minecraft/resources/ResourceKey; WARD e field_42020 + f Lnet/minecraft/resources/ResourceKey; EYE f field_42021 + f Lnet/minecraft/resources/ResourceKey; VEX g field_42022 + f Lnet/minecraft/resources/ResourceKey; TIDE h field_42023 + f Lnet/minecraft/resources/ResourceKey; SNOUT i field_42024 + f Lnet/minecraft/resources/ResourceKey; RIB j field_42025 + f Lnet/minecraft/resources/ResourceKey; SPIRE k field_42026 + f Lnet/minecraft/resources/ResourceKey; WAYFINDER l field_43221 + f Lnet/minecraft/resources/ResourceKey; SHAPER m field_43222 + f Lnet/minecraft/resources/ResourceKey; SILENCE n field_43223 + f Lnet/minecraft/resources/ResourceKey; RAISER o field_43224 + f Lnet/minecraft/resources/ResourceKey; HOST p field_43225 + f Lnet/minecraft/resources/ResourceKey; FLOW q field_49827 + f Lnet/minecraft/resources/ResourceKey; BOLT r field_49828 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder$Reference;)Z method_48447 a method_48447 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; registryKey a method_48449 + p 0 key + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getFromTemplate a method_48448 + p 0 registries + p 1 template + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48450 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceKey;)V register a method_48451 + p 0 context + p 1 templateItem + p 2 trimPatternKey + m ()V + m ()V +c net/minecraft/world/item/armortrim/package-info cxc net/minecraft/class_8058 +c net/minecraft/world/item/component/BlockItemStateProperties cxd net/minecraft/class_9275 + f Lnet/minecraft/world/item/component/BlockItemStateProperties; EMPTY a field_49284 + f Lcom/mojang/serialization/Codec; CODEC b field_49285 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49286 + f Ljava/util/Map; properties d comp_2381 + f Lnet/minecraft/network/codec/StreamCodec; PROPERTIES_STREAM_CODEC e field_49287 + m ()Z isEmpty a method_57414 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; apply a method_57415 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/BlockState; method_57416 a method_57416 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_57417 + p 0 state + p 1 property + p 2 propertyName + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Comparable; get a method_57418 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/component/BlockItemStateProperties; with a method_57419 + p 1 property + p 2 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/item/component/BlockItemStateProperties; with a method_57420 + p 1 property + p 2 value + m ()Ljava/util/Map; properties b comp_2381 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/BookContent cxe net/minecraft/class_9364 + m ()Ljava/util/List; pages a comp_2422 + m (Ljava/util/List;)Ljava/lang/Object; withReplacedPages a method_58186 + p 1 newPages +c net/minecraft/world/item/component/BundleContents cxf net/minecraft/class_9276 + f Lnet/minecraft/world/item/component/BundleContents; EMPTY a field_49289 + f Lcom/mojang/serialization/Codec; CODEC b field_49290 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49291 + f Lorg/apache/commons/lang3/math/Fraction; BUNDLE_IN_BUNDLE_WEIGHT d field_49292 + f I NO_STACK_INDEX e field_49293 + f Ljava/util/List; items f field_49294 + f Lorg/apache/commons/lang3/math/Fraction; weight g field_49295 + m ()Ljava/util/stream/Stream; itemCopyStream a method_59707 + m (I)Lnet/minecraft/world/item/ItemStack; getItemUnsafe a method_57422 + p 1 index + m (Lnet/minecraft/world/item/ItemStack;)Lorg/apache/commons/lang3/math/Fraction; getWeight a method_57423 + p 0 stack + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/List; method_57424 a method_57424 + m (Ljava/util/List;)Lorg/apache/commons/lang3/math/Fraction; computeContentWeight a method_57425 + p 0 content + m ()Ljava/lang/Iterable; items b method_57421 + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/List; method_57427 b method_57427 + m ()Ljava/lang/Iterable; itemsCopy c method_59708 + m ()I size d method_57426 + m ()Lorg/apache/commons/lang3/math/Fraction; weight e method_57428 + m ()Z isEmpty f method_57429 + m (Ljava/util/List;Lorg/apache/commons/lang3/math/Fraction;)V + p 1 items + p 2 weight + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/BundleContents$Mutable cxf$a net/minecraft/class_9276$class_9277 + f Ljava/util/List; items a field_49296 + f Lorg/apache/commons/lang3/math/Fraction; weight b field_49297 + m ()Lnet/minecraft/world/item/component/BundleContents$Mutable; clearItems a method_59709 + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;)I tryTransfer a method_57431 + p 1 slot + p 2 player + m (Lnet/minecraft/world/item/ItemStack;)I tryInsert a method_57432 + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; removeOne b method_57430 + m (Lnet/minecraft/world/item/ItemStack;)I findStackIndex b method_57434 + p 1 stack + m ()Lorg/apache/commons/lang3/math/Fraction; weight c method_57433 + m (Lnet/minecraft/world/item/ItemStack;)I getMaxAmountToAdd c method_57436 + p 1 stack + m ()Lnet/minecraft/world/item/component/BundleContents; toImmutable d method_57435 + m (Lnet/minecraft/world/item/component/BundleContents;)V + p 1 contents +c net/minecraft/world/item/component/ChargedProjectiles cxg net/minecraft/class_9278 + f Lnet/minecraft/world/item/component/ChargedProjectiles; EMPTY a field_49298 + f Lcom/mojang/serialization/Codec; CODEC b field_49299 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49300 + f Ljava/util/List; items d field_49301 + m ()Ljava/util/List; getItems a method_57437 + m (Lnet/minecraft/world/item/Item;)Z contains a method_57438 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/component/ChargedProjectiles; of a method_57439 + p 0 stack + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/List; method_57440 a method_57440 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ChargedProjectiles; of a method_57441 + p 0 stack + m ()Z isEmpty b method_57442 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/List; method_57443 b method_57443 + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/CustomData cxh net/minecraft/class_9279 + f Lnet/minecraft/world/item/component/CustomData; EMPTY a field_49302 + f Lcom/mojang/serialization/Codec; CODEC b field_49303 + f Lcom/mojang/serialization/Codec; CODEC_WITH_ID c field_49304 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49305 + f Lorg/slf4j/Logger; LOGGER e field_51522 + f Lnet/minecraft/nbt/CompoundTag; tag f field_49306 + m ()I size a method_57444 + m (Lnet/minecraft/world/entity/Entity;)V loadInto a method_57445 + p 1 entity + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapDecoder;)Lcom/mojang/serialization/DataResult; read a method_59980 + p 1 ops + p 2 decoder + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapEncoder;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; update a method_57447 + p 1 ops + p 2 encoder + p 3 value + m (Lcom/mojang/serialization/MapDecoder;)Lcom/mojang/serialization/DataResult; read a method_57446 + p 1 decoder + m (Lnet/minecraft/world/item/component/CustomData;)Lnet/minecraft/nbt/CompoundTag; method_57448 a method_57448 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/HolderLookup$Provider;)Z loadInto a method_57449 + p 1 blockEntity + p 2 levelRegistry + m (Ljava/lang/String;)Z contains a method_57450 + p 1 key + m (Ljava/util/function/Consumer;)Lnet/minecraft/world/item/component/CustomData; update a method_57451 + p 1 updater + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Consumer;)V update a method_57452 + p 0 componentType + p 1 stack + p 2 updater + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/nbt/CompoundTag;)V set a method_57453 + p 0 componentType + p 1 stack + p 2 tag + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/function/Predicate; itemMatcher a method_57454 + p 0 componentType + p 1 tag + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/item/ItemStack;)Z method_57455 a method_57455 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/item/component/CustomData; of a method_57456 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/world/item/component/CustomData; method_57457 a method_57457 + m ()Z isEmpty b method_57458 + m (Lnet/minecraft/world/item/component/CustomData;)Lcom/mojang/serialization/DataResult; method_57459 b method_57459 + m (Lnet/minecraft/nbt/CompoundTag;)Z matchedBy b method_57460 + p 1 tag + m ()Lnet/minecraft/nbt/CompoundTag; copyTag c method_57461 + m (Lnet/minecraft/world/item/component/CustomData;)Ljava/lang/String; method_57462 c method_57462 + m ()Lnet/minecraft/nbt/CompoundTag; getUnsafe d method_57463 + m (Lnet/minecraft/world/item/component/CustomData;)Lnet/minecraft/nbt/CompoundTag; method_57464 d method_57464 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/item/component/CustomModelData cxi net/minecraft/class_9280 + f Lnet/minecraft/world/item/component/CustomModelData; DEFAULT a field_49307 + f Lcom/mojang/serialization/Codec; CODEC b field_49308 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49309 + f I value d comp_2382 + m ()I value a comp_2382 + m (I)V + m ()V +c net/minecraft/world/item/component/DebugStickState cxj net/minecraft/class_9281 + f Lnet/minecraft/world/item/component/DebugStickState; EMPTY a field_49310 + f Lcom/mojang/serialization/Codec; CODEC b field_49311 + f Ljava/util/Map; properties c comp_2383 + m ()Ljava/util/Map; properties a comp_2383 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/Codec; method_57465 a method_57465 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/item/component/DebugStickState; withProperty a method_57466 + p 1 block + p 2 property + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57467 a method_57467 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_57468 b method_57468 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/DyedItemColor cxk net/minecraft/class_9282 + f Lcom/mojang/serialization/Codec; CODEC a field_49312 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49313 + f I LEATHER_COLOR c field_49314 + f I rgb d comp_2384 + f Z showInTooltip e comp_2385 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49750 + m ()I rgb a comp_2384 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57469 a method_57469 + m (Lnet/minecraft/world/item/ItemStack;I)I getOrDefault a method_57470 + p 0 stack + p 1 defaultValue + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)Lnet/minecraft/world/item/ItemStack; applyDyes a method_57471 + p 0 stack + p 1 dyes + m (Ljava/lang/Integer;)Lnet/minecraft/world/item/component/DyedItemColor; method_58112 a method_58112 + m (Z)Lnet/minecraft/world/item/component/DyedItemColor; withTooltip a method_58422 + p 1 showInTooltip + m ()Z showInTooltip b comp_2385 + m (IZ)V + m ()V +c net/minecraft/world/item/component/FireworkExplosion cxl net/minecraft/class_9283 + f Lnet/minecraft/world/item/component/FireworkExplosion; DEFAULT a field_49315 + f Lcom/mojang/serialization/Codec; COLOR_LIST_CODEC b field_49318 + f Lcom/mojang/serialization/Codec; CODEC c field_49316 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49317 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; shape e comp_2386 + f Lit/unimi/dsi/fastutil/ints/IntList; colors f comp_2387 + f Lit/unimi/dsi/fastutil/ints/IntList; fadeColors g comp_2388 + f Z hasTrail h comp_2389 + f Z hasTwinkle i comp_2390 + f Lnet/minecraft/network/codec/StreamCodec; COLOR_LIST_STREAM_CODEC j field_49319 + f Lnet/minecraft/network/chat/Component; CUSTOM_COLOR_NAME k field_49320 + m ()Lnet/minecraft/world/item/component/FireworkExplosion$Shape; shape a comp_2386 + m (I)Lnet/minecraft/network/chat/Component; getColorName a method_57472 + p 0 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57473 a method_57473 + m (Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/item/component/FireworkExplosion; withFadeColors a method_57474 + p 1 fadeColors + m (Ljava/util/function/Consumer;)V addShapeNameTooltip a method_57475 + p 1 tooltipAdder + m (Lnet/minecraft/network/chat/MutableComponent;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/network/chat/Component; appendColors a method_57476 + p 0 component + p 1 colors + m ()Lit/unimi/dsi/fastutil/ints/IntList; colors b comp_2387 + m (Ljava/util/function/Consumer;)V addAdditionalTooltip b method_57477 + p 1 tooltipAdder + m ()Lit/unimi/dsi/fastutil/ints/IntList; fadeColors c comp_2388 + m ()Z hasTrail d comp_2389 + m ()Z hasTwinkle e comp_2390 + m (Lnet/minecraft/world/item/component/FireworkExplosion$Shape;Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V + m ()V +c net/minecraft/world/item/component/FireworkExplosion$Shape cxl$a net/minecraft/class_9283$class_1782 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; SMALL_BALL a field_7976 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; LARGE_BALL b field_7977 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; STAR c field_7973 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; CREEPER d field_7974 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; BURST e field_7970 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC f field_49321 + f Lcom/mojang/serialization/Codec; CODEC g field_49322 + f Ljava/util/function/IntFunction; BY_ID h field_7975 + f I id i field_7972 + f Ljava/lang/String; name j field_7971 + f [Lnet/minecraft/world/item/component/FireworkExplosion$Shape; $VALUES k field_7978 + m ()Lnet/minecraft/network/chat/MutableComponent; getName a method_7812 + m (I)Lnet/minecraft/world/item/component/FireworkExplosion$Shape; byId a method_7813 + p 0 id + m ()I getId b method_7816 + m ()[Lnet/minecraft/world/item/component/FireworkExplosion$Shape; $values d method_36677 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/item/component/Fireworks cxm net/minecraft/class_9284 + f I MAX_EXPLOSIONS a field_49325 + f Lcom/mojang/serialization/Codec; CODEC b field_49323 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49324 + f I flightDuration d comp_2391 + f Ljava/util/List; explosions e comp_2392 + m ()I flightDuration a comp_2391 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57478 a method_57478 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_57479 a method_57479 + m ()Ljava/util/List; explosions b comp_2392 + m (ILjava/util/List;)V + p 1 flightDuration + p 2 explosions + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers cxn net/minecraft/class_9285 + f Lnet/minecraft/world/item/component/ItemAttributeModifiers; EMPTY a field_49326 + f Lcom/mojang/serialization/Codec; CODEC b field_49327 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49328 + f Ljava/text/DecimalFormat; ATTRIBUTE_MODIFIER_FORMAT d field_49329 + f Ljava/util/List; modifiers e comp_2393 + f Z showInTooltip f comp_2394 + f Lcom/mojang/serialization/Codec; FULL_CODEC g field_49751 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers$Builder; builder a method_57480 + m (DLnet/minecraft/world/entity/EquipmentSlot;)D compute a method_57481 + p 1 baseValue + p 3 equipmentSlot + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEach a method_57482 + p 1 equipmentSlot + p 2 action + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEach a method_60618 + p 1 slotGroup + p 2 action + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57483 a method_57483 + m (Ljava/text/DecimalFormat;)V method_57485 a method_57485 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_58113 a method_58113 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; withModifierAdded a method_57484 + p 1 attribute + p 2 modifier + p 3 slot + m (Z)Lnet/minecraft/world/item/component/ItemAttributeModifiers; withTooltip a method_58423 + p 1 showInTooltip + m ()Ljava/util/List; modifiers b comp_2393 + m ()Z showInTooltip c comp_2394 + m (Ljava/util/List;Z)V + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$1 cxn$1 net/minecraft/class_9285$1 + f [I $SwitchMap$net$minecraft$world$entity$ai$attributes$AttributeModifier$Operation a field_49330 + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$Builder cxn$a net/minecraft/class_9285$class_9286 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_49331 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; build a method_57486 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/component/ItemAttributeModifiers$Builder; add a method_57487 + p 1 attribute + p 2 modifier + p 3 slot + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$Entry cxn$b net/minecraft/class_9285$class_9287 + f Lcom/mojang/serialization/Codec; CODEC a field_49332 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49333 + f Lnet/minecraft/core/Holder; attribute c comp_2395 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; modifier d comp_2396 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; slot e comp_2397 + m ()Lnet/minecraft/core/Holder; attribute a comp_2395 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57488 a method_57488 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z matches a method_60767 + p 1 attribute + p 2 id + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; modifier b comp_2396 + m ()Lnet/minecraft/world/entity/EquipmentSlotGroup; slot c comp_2397 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)V + m ()V +c net/minecraft/world/item/component/ItemContainerContents cxo net/minecraft/class_9288 + f Lnet/minecraft/world/item/component/ItemContainerContents; EMPTY a field_49334 + f Lcom/mojang/serialization/Codec; CODEC b field_49335 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49336 + f I NO_SLOT d field_51410 + f I MAX_SIZE e field_49337 + f Lnet/minecraft/core/NonNullList; items f field_49338 + f I hashCode g field_51511 + m ()Lnet/minecraft/world/item/ItemStack; copyOne a method_58114 + m (Lnet/minecraft/world/item/ItemStack;)Z method_59710 a method_59710 + m (Lnet/minecraft/world/item/component/ItemContainerContents;)Ljava/util/List; method_57491 a method_57491 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemContainerContents; fromItems a method_57493 + p 0 items + m (Lnet/minecraft/core/NonNullList;)V copyInto a method_57492 + p 1 list + m ()Ljava/util/stream/Stream; stream b method_57489 + m (Lnet/minecraft/world/item/ItemStack;)Z method_59711 b method_59711 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemContainerContents; fromSlots b method_57496 + p 0 slots + m ()Ljava/util/stream/Stream; nonEmptyStream c method_59712 + m (Ljava/util/List;)I findLastNonEmptySlot c method_59713 + p 0 items + m ()Ljava/lang/Iterable; nonEmptyItems d method_59714 + m ()Ljava/lang/Iterable; nonEmptyItemsCopy e method_59715 + m ()Ljava/util/List; asSlots f method_57494 + m (Lnet/minecraft/core/NonNullList;)V + p 1 items + m (I)V + p 1 size + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/ItemContainerContents$Slot cxo$a net/minecraft/class_9288$class_9289 + f Lcom/mojang/serialization/Codec; CODEC a field_49339 + f I index b comp_2398 + f Lnet/minecraft/world/item/ItemStack; item c comp_2399 + m ()I index a comp_2398 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57498 a method_57498 + m ()Lnet/minecraft/world/item/ItemStack; item b comp_2399 + m (ILnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/world/item/component/ItemLore cxp net/minecraft/class_9290 + f Lnet/minecraft/world/item/component/ItemLore; EMPTY a field_49340 + f I MAX_LINES b field_49343 + f Lcom/mojang/serialization/Codec; CODEC c field_49341 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49342 + f Ljava/util/List; lines e comp_2400 + f Ljava/util/List; styledLines f comp_2401 + f Lnet/minecraft/network/chat/Style; LORE_STYLE g field_49344 + m ()Ljava/util/List; lines a comp_2400 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/item/component/ItemLore; withLineAdded a method_57499 + p 1 lines + m ()Ljava/util/List; styledLines b comp_2401 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_57500 b method_57500 + m (Ljava/util/List;)V + p 1 lines + m (Ljava/util/List;Ljava/util/List;)V + p 1 lines + p 2 styledLines + m ()V +c net/minecraft/world/item/component/LodestoneTracker cxq net/minecraft/class_9291 + f Lcom/mojang/serialization/Codec; CODEC a field_49345 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49346 + f Ljava/util/Optional; target c comp_2402 + f Z tracked d comp_2403 + m ()Ljava/util/Optional; target a comp_2402 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/item/component/LodestoneTracker; tick a method_58115 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57502 a method_57502 + m ()Z tracked b comp_2403 + m (Ljava/util/Optional;Z)V + m ()V +c net/minecraft/world/item/component/MapDecorations cxr net/minecraft/class_9292 + f Lnet/minecraft/world/item/component/MapDecorations; EMPTY a field_49347 + f Lcom/mojang/serialization/Codec; CODEC b field_49348 + f Ljava/util/Map; decorations c comp_2404 + m ()Ljava/util/Map; decorations a comp_2404 + m (Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;)Lnet/minecraft/world/item/component/MapDecorations; withDecoration a method_57503 + p 1 type + p 2 entry + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/MapDecorations$Entry cxr$a net/minecraft/class_9292$class_9293 + f Lcom/mojang/serialization/Codec; CODEC a field_49349 + f Lnet/minecraft/core/Holder; type b comp_2405 + f D x c comp_2406 + f D z d comp_2407 + f F rotation e comp_2408 + m ()Lnet/minecraft/core/Holder; type a comp_2405 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57504 a method_57504 + m ()D x b comp_2406 + m ()D z c comp_2407 + m ()F rotation d comp_2408 + m (Lnet/minecraft/core/Holder;DDF)V + m ()V +c net/minecraft/world/item/component/MapItemColor cxs net/minecraft/class_9294 + f Lcom/mojang/serialization/Codec; CODEC a field_49350 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49351 + f Lnet/minecraft/world/item/component/MapItemColor; DEFAULT c field_49352 + f I rgb d comp_2409 + m ()I rgb a comp_2409 + m (I)V + m ()V +c net/minecraft/world/item/component/MapPostProcessing cxt net/minecraft/class_9295 + f Lnet/minecraft/world/item/component/MapPostProcessing; LOCK a field_49353 + f Lnet/minecraft/world/item/component/MapPostProcessing; SCALE b field_49354 + f Ljava/util/function/IntFunction; ID_MAP c field_49355 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49356 + f I id e field_49357 + f [Lnet/minecraft/world/item/component/MapPostProcessing; $VALUES f field_49358 + m ()I id a method_57505 + m ()[Lnet/minecraft/world/item/component/MapPostProcessing; $values b method_57506 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/item/component/ResolvableProfile cxu net/minecraft/class_9296 + f Lcom/mojang/serialization/Codec; CODEC a field_49359 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49360 + f Ljava/util/Optional; name c comp_2410 + f Ljava/util/Optional; id d comp_2411 + f Lcom/mojang/authlib/properties/PropertyMap; properties e comp_2412 + f Lcom/mojang/authlib/GameProfile; gameProfile f comp_2413 + f Lcom/mojang/serialization/Codec; FULL_CODEC g field_49752 + m ()Ljava/util/concurrent/CompletableFuture; resolve a method_57507 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57508 a method_57508 + m (Ljava/lang/String;)Lnet/minecraft/world/item/component/ResolvableProfile; method_58116 a method_58116 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/component/ResolvableProfile; method_57510 a method_57510 + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/authlib/GameProfile; createProfile a method_57509 + p 0 name + p 1 id + p 2 properties + m ()Z isResolved b method_57511 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/component/ResolvableProfile; method_59533 b method_59533 + m ()Ljava/util/Optional; name c comp_2410 + m ()Ljava/util/Optional; id d comp_2411 + m ()Lcom/mojang/authlib/properties/PropertyMap; properties e comp_2412 + m ()Lcom/mojang/authlib/GameProfile; gameProfile f comp_2413 + m ()Lcom/mojang/authlib/GameProfile; method_57512 g method_57512 + m ()Lcom/mojang/authlib/GameProfile; method_59534 h method_59534 + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)V + p 1 name + p 2 id + p 3 properties + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;Lcom/mojang/authlib/GameProfile;)V + m ()V +c net/minecraft/world/item/component/SeededContainerLoot cxv net/minecraft/class_9297 + f Lcom/mojang/serialization/Codec; CODEC a field_49361 + f Lnet/minecraft/resources/ResourceKey; lootTable b comp_2414 + f J seed c comp_2415 + m ()Lnet/minecraft/resources/ResourceKey; lootTable a comp_2414 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57513 a method_57513 + m ()J seed b comp_2415 + m (Lnet/minecraft/resources/ResourceKey;J)V + m ()V +c net/minecraft/world/item/component/SuspiciousStewEffects cxw net/minecraft/class_9298 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; EMPTY a field_49362 + f Lcom/mojang/serialization/Codec; CODEC b field_49363 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49364 + f Ljava/util/List; effects d comp_2416 + m ()Ljava/util/List; effects a comp_2416 + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects$Entry;)Lnet/minecraft/world/item/component/SuspiciousStewEffects; withEffectAdded a method_57514 + p 1 entry + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/component/SuspiciousStewEffects$Entry cxw$a net/minecraft/class_9298$class_8751 + f Lcom/mojang/serialization/Codec; CODEC a field_45782 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49365 + f Lnet/minecraft/core/Holder; effect c comp_1838 + f I duration d comp_1839 + m ()Lnet/minecraft/world/effect/MobEffectInstance; createEffectInstance a method_53247 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53248 a method_53248 + m ()Lnet/minecraft/core/Holder; effect b comp_1838 + m ()I duration c comp_1839 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/item/component/Tool cxx net/minecraft/class_9424 + f Lcom/mojang/serialization/Codec; CODEC a field_50009 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50010 + f Ljava/util/List; rules c comp_2498 + f F defaultMiningSpeed d comp_2499 + f I damagePerBlock e comp_2500 + m ()Ljava/util/List; rules a comp_2498 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58424 a method_58424 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getMiningSpeed a method_58425 + p 1 state + m ()F defaultMiningSpeed b comp_2499 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectForDrops b method_58426 + p 1 state + m ()I damagePerBlock c comp_2500 + m (Ljava/util/List;FI)V + m ()V +c net/minecraft/world/item/component/Tool$Rule cxx$a net/minecraft/class_9424$class_9425 + f Lcom/mojang/serialization/Codec; CODEC a field_50011 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50012 + f Lnet/minecraft/core/HolderSet; blocks c comp_2501 + f Ljava/util/Optional; speed d comp_2502 + f Ljava/util/Optional; correctForDrops e comp_2503 + m ()Lnet/minecraft/core/HolderSet; blocks a comp_2501 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/component/Tool$Rule; deniesDrops a method_58427 + p 0 blocks + m (Lnet/minecraft/tags/TagKey;F)Lnet/minecraft/world/item/component/Tool$Rule; minesAndDrops a method_58428 + p 0 blocks + p 1 speed + m (Lnet/minecraft/tags/TagKey;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/item/component/Tool$Rule; forTag a method_58429 + p 0 tag + p 1 speed + p 2 correctForDrops + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58430 a method_58430 + m (Ljava/util/List;F)Lnet/minecraft/world/item/component/Tool$Rule; minesAndDrops a method_58431 + p 0 blocks + p 1 speed + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/item/component/Tool$Rule; forBlocks a method_58432 + p 0 blocks + p 1 speed + p 2 correctForDrops + m ()Ljava/util/Optional; speed b comp_2502 + m (Lnet/minecraft/tags/TagKey;F)Lnet/minecraft/world/item/component/Tool$Rule; overrideSpeed b method_58433 + p 0 blocks + p 1 speed + m (Ljava/util/List;F)Lnet/minecraft/world/item/component/Tool$Rule; overrideSpeed b method_58434 + p 0 blocks + p 1 speed + m ()Ljava/util/Optional; correctForDrops c comp_2503 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/component/TooltipProvider cxy net/minecraft/class_9299 + m (Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/function/Consumer;Lnet/minecraft/world/item/TooltipFlag;)V addToTooltip a method_57409 + p 1 context + p 2 tooltipAdder + p 3 tooltipFlag +c net/minecraft/world/item/component/Unbreakable cxz net/minecraft/class_9300 + f Lcom/mojang/serialization/Codec; CODEC a field_49366 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49367 + f Z showInTooltip c comp_2417 + f Lnet/minecraft/network/chat/Component; TOOLTIP d field_49368 + m ()Z showInTooltip a comp_2417 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57515 a method_57515 + m (Z)Lnet/minecraft/world/item/component/Unbreakable; withTooltip a method_58435 + p 1 showInTooltip + m (Z)V + m ()V +c net/minecraft/world/item/component/WritableBookContent cya net/minecraft/class_9301 + f Lnet/minecraft/world/item/component/WritableBookContent; EMPTY a field_49369 + f I PAGE_EDIT_LENGTH b field_49370 + f I MAX_PAGES c field_51411 + f Lcom/mojang/serialization/Codec; PAGES_CODEC d field_49374 + f Lcom/mojang/serialization/Codec; CODEC e field_49371 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC f field_49372 + f Ljava/util/List; pages g comp_2418 + f Lcom/mojang/serialization/Codec; PAGE_CODEC h field_49373 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57516 a method_57516 + m (Z)Ljava/util/stream/Stream; getPages a method_57517 + p 1 filtered + m (ZLnet/minecraft/server/network/Filterable;)Ljava/lang/String; method_57518 a method_57518 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/WritableBookContent; withReplacedPages b method_58187 + p 1 newPages + m (Ljava/util/List;)V + p 1 pages + m ()V +c net/minecraft/world/item/component/WrittenBookContent cyb net/minecraft/class_9302 + f Lnet/minecraft/world/item/component/WrittenBookContent; EMPTY a field_49829 + f I PAGE_LENGTH b field_49375 + f I TITLE_LENGTH c field_49377 + f I TITLE_MAX_LENGTH d field_49378 + f I MAX_GENERATION e field_49379 + f I MAX_CRAFTABLE_GENERATION f field_49380 + f Lcom/mojang/serialization/Codec; CONTENT_CODEC g field_49383 + f Lcom/mojang/serialization/Codec; PAGES_CODEC h field_49384 + f Lcom/mojang/serialization/Codec; CODEC i field_49381 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_49382 + f Lnet/minecraft/server/network/Filterable; title k comp_2419 + f Ljava/lang/String; author l comp_2420 + f I generation m comp_2421 + f Ljava/util/List; pages n comp_2422 + f Z resolved o comp_2423 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; pagesCodec a method_58436 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57520 a method_57520 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/component/WrittenBookContent; resolve a method_57521 + p 1 source + p 2 player + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/server/network/Filterable;)Ljava/util/Optional; resolvePage a method_57522 + p 0 source + p 1 player + p 2 pages + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)Ljava/util/Optional; method_57523 a method_57523 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Z isPageTooLarge a method_57524 + p 0 page + p 1 registryAccess + m (Z)Ljava/util/List; getPages a method_57525 + p 1 filtered + m (ZLnet/minecraft/server/network/Filterable;)Lnet/minecraft/network/chat/Component; method_57526 a method_57526 + m ()Lnet/minecraft/world/item/component/WrittenBookContent; tryCraftCopy b method_57519 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; pageCodec b method_58437 + p 0 codec + m (Ljava/util/List;)Lnet/minecraft/world/item/component/WrittenBookContent; withReplacedPages b method_58188 + p 1 newPages + m ()Lnet/minecraft/world/item/component/WrittenBookContent; markResolved c method_57527 + m ()Lnet/minecraft/server/network/Filterable; title d comp_2419 + m ()Ljava/lang/String; author e comp_2420 + m ()I generation f comp_2421 + m ()Z resolved g comp_2423 + m (Lnet/minecraft/server/network/Filterable;Ljava/lang/String;ILjava/util/List;Z)V + p 1 title + p 2 author + p 3 generation + p 4 pages + p 5 resolved + m ()V +c net/minecraft/world/item/component/package-info cyc net/minecraft/class_9303 +c net/minecraft/world/item/context/BlockPlaceContext cyd net/minecraft/class_1750 + f Z replaceClicked a field_7904 + f Lnet/minecraft/core/BlockPos; relativePos b field_7903 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/context/BlockPlaceContext; at a method_16355 + p 0 context + p 1 pos + p 2 direction + m ()Z canPlace b method_7716 + m ()Z replacingClickedOnBlock c method_7717 + m ()Lnet/minecraft/core/Direction; getNearestLookingDirection d method_7715 + m ()Lnet/minecraft/core/Direction; getNearestLookingVerticalDirection e method_32760 + m ()[Lnet/minecraft/core/Direction; getNearestLookingDirections f method_7718 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 player + p 2 hand + p 3 itemStack + p 4 hitResult + m (Lnet/minecraft/world/item/context/UseOnContext;)V + p 1 context + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 level + p 2 player + p 3 hand + p 4 itemStack + p 5 hitResult +c net/minecraft/world/item/context/DirectionalPlaceContext cye net/minecraft/class_2968 + f Lnet/minecraft/core/Direction; direction b field_13362 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)V + p 1 level + p 2 pos + p 3 direction + p 4 itemStack + p 5 face +c net/minecraft/world/item/context/DirectionalPlaceContext$1 cye$1 net/minecraft/class_2968$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_13363 + m ()V +c net/minecraft/world/item/context/UseOnContext cyf net/minecraft/class_1838 + f Lnet/minecraft/world/entity/player/Player; player a field_8942 + f Lnet/minecraft/world/InteractionHand; hand b field_19176 + f Lnet/minecraft/world/phys/BlockHitResult; hitResult c field_17543 + f Lnet/minecraft/world/level/Level; level d field_8945 + f Lnet/minecraft/world/item/ItemStack; itemStack e field_8941 + m ()Lnet/minecraft/core/BlockPos; getClickedPos a method_8037 + m ()Lnet/minecraft/core/Direction; getHorizontalDirection g method_8042 + m ()Z isSecondaryUseActive h method_8046 + m ()F getRotation i method_8044 + m ()Lnet/minecraft/world/phys/BlockHitResult; getHitResult j method_30344 + m ()Lnet/minecraft/core/Direction; getClickedFace k method_8038 + m ()Lnet/minecraft/world/phys/Vec3; getClickLocation l method_17698 + m ()Z isInside m method_17699 + m ()Lnet/minecraft/world/item/ItemStack; getItemInHand n method_8041 + m ()Lnet/minecraft/world/entity/player/Player; getPlayer o method_8036 + m ()Lnet/minecraft/world/InteractionHand; getHand p method_20287 + m ()Lnet/minecraft/world/level/Level; getLevel q method_8045 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 player + p 2 hand + p 3 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 level + p 2 player + p 3 hand + p 4 itemStack + p 5 hitResult +c net/minecraft/world/item/context/package-info cyg net/minecraft/class_6081 +c net/minecraft/world/item/crafting/AbstractCookingRecipe cyh net/minecraft/class_1874 + f Lnet/minecraft/world/item/crafting/RecipeType; type a field_17544 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; category b field_40241 + f Ljava/lang/String; group c field_9062 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient d field_9061 + f Lnet/minecraft/world/item/ItemStack; result e field_9059 + f F experience f field_9057 + f I cookingTime g field_9058 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_59981 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_59982 + p 1 input + p 2 registries + m ()F getExperience b method_8171 + c Gets the experience of this recipe + m ()I getCookingTime d method_8167 + c Gets the cook time in ticks + m ()Lnet/minecraft/world/item/crafting/CookingBookCategory; category f method_45438 + m (Lnet/minecraft/world/item/crafting/RecipeType;Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 type + p 2 group + p 3 category + p 4 ingredient + p 5 result + p 6 experience + p 7 cookingTime +c net/minecraft/world/item/crafting/AbstractCookingRecipe$Factory cyh$a net/minecraft/class_1874$class_3958 +c net/minecraft/world/item/crafting/ArmorDyeRecipe cyi net/minecraft/class_1849 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17701 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17700 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/BannerDuplicateRecipe cyj net/minecraft/class_1848 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_17704 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17703 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17702 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/BlastingRecipe cyk net/minecraft/class_3859 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/BookCloningRecipe cyl net/minecraft/class_1850 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_17707 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17706 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17705 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/CampfireCookingRecipe cym net/minecraft/class_3920 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/CookingBookCategory cyn net/minecraft/class_7709 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; FOOD a field_40242 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; BLOCKS b field_40243 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; MISC c field_40244 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC d field_40245 + f Ljava/lang/String; name e field_40246 + f [Lnet/minecraft/world/item/crafting/CookingBookCategory; $VALUES f field_40247 + m ()[Lnet/minecraft/world/item/crafting/CookingBookCategory; $values a method_45439 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/item/crafting/CraftingBookCategory cyo net/minecraft/class_7710 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; BUILDING a field_40248 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; REDSTONE b field_40249 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; EQUIPMENT c field_40250 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; MISC d field_40251 + f Lcom/mojang/serialization/Codec; CODEC e field_40252 + f Ljava/util/function/IntFunction; BY_ID f field_48352 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_48353 + f Ljava/lang/String; name h field_40253 + f I id i field_48354 + f [Lnet/minecraft/world/item/crafting/CraftingBookCategory; $VALUES j field_40254 + m ()I id a method_56101 + m ()[Lnet/minecraft/world/item/crafting/CraftingBookCategory; $values b method_45440 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/item/crafting/CraftingInput cyp net/minecraft/class_9694 + f Lnet/minecraft/world/item/crafting/CraftingInput; EMPTY a field_51631 + f I width b field_51632 + f I height c field_51633 + f Ljava/util/List; items d field_51634 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents e field_51635 + f I ingredientCount f field_51636 + m (II)Lnet/minecraft/world/item/ItemStack; getItem a method_59985 + p 1 row + p 2 column + m (IILjava/util/List;)Lnet/minecraft/world/item/crafting/CraftingInput; of a method_59986 + p 0 width + p 1 height + p 2 items + m (IILjava/util/List;)Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; ofPositioned b method_60505 + p 0 width + p 1 height + p 2 items + m ()Lnet/minecraft/world/entity/player/StackedContents; stackedContents c method_59988 + m ()Ljava/util/List; items d method_59989 + m ()I ingredientCount e method_59990 + m ()I width f method_59991 + m ()I height g method_59992 + m (IILjava/util/List;)V + p 1 width + p 2 height + p 3 item + m ()V +c net/minecraft/world/item/crafting/CraftingInput$Positioned cyp$a net/minecraft/class_9694$class_9765 + f Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; EMPTY a field_51896 + f Lnet/minecraft/world/item/crafting/CraftingInput; input b comp_2795 + f I left c comp_2796 + f I top d comp_2797 + m ()Lnet/minecraft/world/item/crafting/CraftingInput; input a comp_2795 + m ()I left b comp_2796 + m ()I top c comp_2797 + m (Lnet/minecraft/world/item/crafting/CraftingInput;II)V + m ()V +c net/minecraft/world/item/crafting/CraftingRecipe cyq net/minecraft/class_3955 + m ()Lnet/minecraft/world/item/crafting/CraftingBookCategory; category d method_45441 +c net/minecraft/world/item/crafting/CustomRecipe cyr net/minecraft/class_1852 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category a field_40255 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/DecoratedPotRecipe cys net/minecraft/class_8164 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_49186 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_49187 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V +c net/minecraft/world/item/crafting/FireworkRocketRecipe cyt net/minecraft/class_1851 + f Lnet/minecraft/world/item/crafting/Ingredient; PAPER_INGREDIENT a field_9007 + f Lnet/minecraft/world/item/crafting/Ingredient; GUNPOWDER_INGREDIENT b field_9006 + f Lnet/minecraft/world/item/crafting/Ingredient; STAR_INGREDIENT c field_9008 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17709 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17708 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/FireworkStarFadeRecipe cyu net/minecraft/class_1854 + f Lnet/minecraft/world/item/crafting/Ingredient; STAR_INGREDIENT a field_9015 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17711 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17710 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/FireworkStarRecipe cyv net/minecraft/class_1853 + f Lnet/minecraft/world/item/crafting/Ingredient; SHAPE_INGREDIENT a field_9011 + f Lnet/minecraft/world/item/crafting/Ingredient; TRAIL_INGREDIENT b field_9010 + f Lnet/minecraft/world/item/crafting/Ingredient; TWINKLE_INGREDIENT c field_9014 + f Ljava/util/Map; SHAPE_BY_ITEM d field_9013 + f Lnet/minecraft/world/item/crafting/Ingredient; GUNPOWDER_INGREDIENT e field_9012 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17713 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17712 + p 1 input + p 2 registries + m (Ljava/util/HashMap;)V method_8085 a method_8085 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/Ingredient cyw net/minecraft/class_1856 + c

Interface {@link net.fabricmc.fabric.api.recipe.v1.ingredient.FabricIngredient} injected by mod fabric-recipe-api-v1

+ f Lnet/minecraft/world/item/crafting/Ingredient; EMPTY a field_9017 + f Lnet/minecraft/network/codec/StreamCodec; CONTENTS_STREAM_CODEC b field_48355 + f Lcom/mojang/serialization/Codec; CODEC c field_46095 + f Lcom/mojang/serialization/Codec; CODEC_NONEMPTY d field_46096 + f [Lnet/minecraft/world/item/crafting/Ingredient$Value; values e field_9019 + f [Lnet/minecraft/world/item/ItemStack; itemStacks f field_9018 + f Lit/unimi/dsi/fastutil/ints/IntList; stackingIds g field_9016 + m ()[Lnet/minecraft/world/item/ItemStack; getItems a method_8105 + m (I)[Lnet/minecraft/world/item/ItemStack; method_47373 a method_47373 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8106 + p 0 tag + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/crafting/Ingredient; method_53722 a method_53722 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_8093 + p 1 stack + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Lnet/minecraft/world/item/crafting/Ingredient; method_53721 a method_53721 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Ljava/util/List; method_56102 a method_56102 + m (Ljava/util/List;)Lnet/minecraft/world/item/crafting/Ingredient; method_56103 a method_56103 + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_26964 + p 0 stacks + m (Z)Lcom/mojang/serialization/Codec; codec a method_53725 + p 0 allowEmpty + m (ZLnet/minecraft/world/item/crafting/Ingredient;)Lcom/mojang/serialization/DataResult; method_53723 a method_53723 + m (ZLjava/util/List;)Lcom/mojang/serialization/DataResult; method_53724 a method_53724 + m ([Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8101 + p 0 stacks + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8091 + p 0 items + m ()Lit/unimi/dsi/fastutil/ints/IntList; getStackingIds b method_8100 + m (I)[Lnet/minecraft/world/item/crafting/Ingredient$Value; method_8087 b method_8087 + m (Lnet/minecraft/world/item/ItemStack;)Z method_26965 b method_26965 + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Ljava/util/stream/Stream; method_47374 b method_47374 + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/item/crafting/Ingredient; fromValues b method_8092 + p 0 stream + m ()Z isEmpty c method_8103 + m ()Lnet/minecraft/world/item/crafting/Ingredient; of d method_35226 + m ()Ljava/lang/String; method_53726 e method_53726 + m ()Ljava/lang/String; method_53727 f method_53727 + m (Ljava/util/stream/Stream;)V + p 1 values + m ([Lnet/minecraft/world/item/crafting/Ingredient$Value;)V + p 1 values + m ()V +c net/minecraft/world/item/crafting/Ingredient$ItemValue cyw$a net/minecraft/class_1856$class_1857 + f Lnet/minecraft/world/item/ItemStack; item b comp_1930 + f Lcom/mojang/serialization/Codec; CODEC c field_46097 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53729 a method_53729 + m (Lnet/minecraft/world/item/crafting/Ingredient$ItemValue;)Lnet/minecraft/world/item/ItemStack; method_53728 a method_53728 + m ()Lnet/minecraft/world/item/ItemStack; item b comp_1930 + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 item + m ()V +c net/minecraft/world/item/crafting/Ingredient$TagValue cyw$b net/minecraft/class_1856$class_1858 + f Lnet/minecraft/tags/TagKey; tag b comp_1931 + f Lcom/mojang/serialization/Codec; CODEC c field_46098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53731 a method_53731 + m (Lnet/minecraft/world/item/crafting/Ingredient$TagValue;)Lnet/minecraft/tags/TagKey; method_53730 a method_53730 + m ()Lnet/minecraft/tags/TagKey; tag b comp_1931 + m (Lnet/minecraft/tags/TagKey;)V + p 1 tag + m ()V +c net/minecraft/world/item/crafting/Ingredient$Value cyw$c net/minecraft/class_1856$class_1859 + f Lcom/mojang/serialization/Codec; CODEC a field_46099 + m ()Ljava/util/Collection; getItems a method_8108 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/crafting/Ingredient$Value; method_53735 a method_53735 + m (Lnet/minecraft/world/item/crafting/Ingredient$ItemValue;)Ljava/lang/Record; method_53732 a method_53732 + m (Lnet/minecraft/world/item/crafting/Ingredient$TagValue;)Ljava/lang/Record; method_53733 a method_53733 + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Lcom/mojang/datafixers/util/Either; method_53734 a method_53734 + m ()V +c net/minecraft/world/item/crafting/MapCloningRecipe cyx net/minecraft/class_1855 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17715 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17714 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/MapExtendingRecipe cyy net/minecraft/class_1861 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/world/item/ItemStack; findFilledMap a method_51165 + p 0 input + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/Recipe cyz net/minecraft/class_1860 + f Lcom/mojang/serialization/Codec; CODEC h field_47319 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48356 + m ()Lnet/minecraft/core/NonNullList; getIngredients a method_8117 + m (II)Z canCraftInDimensions a method_8113 + c Used to determine if this recipe can fit in a grid of the given width/height + p 1 width + p 2 height + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31583 a method_31583 + m (Lnet/minecraft/world/item/crafting/RecipeInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_8111 + p 1 input + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_8115 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_8116 + p 1 input + p 2 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; getResultItem a method_8110 + p 1 registries + m ()Z isSpecial as_ method_8118 + c If true, this recipe does not appear in the recipe book and does not respect recipe unlocking (and the doLimitedCrafting gamerule) + m ()Lnet/minecraft/world/item/crafting/RecipeSerializer; getSerializer at_ method_8119 + m ()Ljava/lang/String; getGroup c method_8112 + c Recipes with equal group are combined into one button in the recipe book + m ()Lnet/minecraft/world/item/crafting/RecipeType; getType e method_17716 + m ()Lnet/minecraft/world/item/ItemStack; getToastSymbol g method_17447 + m ()Z showNotification h method_49188 + m ()Z isIncomplete i method_31584 + m ()V +c net/minecraft/world/item/crafting/RecipeCache cza net/minecraft/class_8884 + f [Lnet/minecraft/world/item/crafting/RecipeCache$Entry; entries a field_46792 + f Ljava/lang/ref/WeakReference; cachedRecipeManager b field_46793 + m (I)V moveEntryToFront a method_54467 + p 1 index + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/item/crafting/RecipeHolder;)V insert a method_54471 + p 1 input + p 2 recipe + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; compute a method_54468 + p 1 input + p 2 level + m (Lnet/minecraft/world/level/Level;)V validateRecipeManager a method_54469 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/CraftingInput;)Ljava/util/Optional; get a method_54470 + p 1 level + p 2 input + m (I)V + p 1 size +c net/minecraft/world/item/crafting/RecipeCache$Entry cza$a net/minecraft/class_8884$class_8885 + f Lnet/minecraft/core/NonNullList; key a comp_2001 + f I width b comp_2816 + f I height c comp_2817 + f Lnet/minecraft/world/item/crafting/RecipeHolder; value d comp_2002 + m ()Lnet/minecraft/core/NonNullList; key a comp_2001 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Z matches a method_54472 + p 1 input + m ()I width b comp_2816 + m ()I height c comp_2817 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; value d comp_2002 + m (Lnet/minecraft/core/NonNullList;IILnet/minecraft/world/item/crafting/RecipeHolder;)V +c net/minecraft/world/item/crafting/RecipeHolder czb net/minecraft/class_8786 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48357 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1932 + f Lnet/minecraft/world/item/crafting/Recipe; value c comp_1933 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1932 + m ()Lnet/minecraft/world/item/crafting/Recipe; value b comp_1933 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/crafting/Recipe;)V + m ()V +c net/minecraft/world/item/crafting/RecipeInput czc net/minecraft/class_9695 + m ()I size a method_59983 + m (I)Lnet/minecraft/world/item/ItemStack; getItem a method_59984 + p 1 index + m ()Z isEmpty b method_59987 +c net/minecraft/world/item/crafting/RecipeManager czd net/minecraft/class_1863 + f Lcom/google/gson/Gson; GSON a field_19359 + f Lorg/slf4j/Logger; LOGGER b field_9027 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48848 + f Lcom/google/common/collect/Multimap; byType d field_51481 + f Ljava/util/Map; byName e field_36308 + f Z hasErrors f field_9024 + m ()Z hadErrorsLoading a method_35227 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; byKey a method_8130 + p 1 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonObject;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/crafting/RecipeHolder; fromJson a method_17720 + p 0 recipeId + p 1 json + p 2 registries + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_42297 a method_42297 + m (Lnet/minecraft/world/item/crafting/RecipeType;)Ljava/util/List; getAllRecipesFor a method_30027 + p 1 recipeType + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/crafting/RecipeHolder; byKeyTyped a method_59821 + p 1 type + p 2 name + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getRecipeFor a method_8132 + p 1 recipeType + p 2 input + p 3 level + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getRecipeFor a method_42299 + p 1 recipeType + p 2 input + p 3 level + p 4 lastRecipe + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/util/Optional; getRecipeFor a method_59993 + p 1 recipeType + p 2 input + p 3 level + p 4 lastRecipe + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/lang/String; method_17876 a method_17876 + m (Ljava/lang/Iterable;)V replaceRecipes a method_20702 + p 1 recipes + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_20705 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/util/Collection; getOrderedRecipes b method_59822 + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_42301 b method_42301 + m (Lnet/minecraft/world/item/crafting/RecipeType;)Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; createCheck b method_42302 + p 0 recipeType + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/List; getRecipesFor b method_17877 + p 1 recipeType + p 2 input + p 3 level + m (Lnet/minecraft/world/item/crafting/RecipeType;)Ljava/util/Collection; byType c method_17717 + p 1 type + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/NonNullList; getRemainingItemsFor c method_8128 + p 1 recipeType + p 2 input + p 3 lvel + m ()Ljava/util/Collection; getRecipes d method_8126 + m ()Ljava/util/stream/Stream; getRecipeIds e method_8127 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/world/item/crafting/RecipeManager$1 czd$1 net/minecraft/class_1863$1 + f Lnet/minecraft/world/item/crafting/RecipeType; val$type a field_38220 + f Lnet/minecraft/resources/ResourceLocation; lastRecipe b field_38221 + m (Lnet/minecraft/world/item/crafting/RecipeType;)V +c net/minecraft/world/item/crafting/RecipeManager$CachedCheck czd$a net/minecraft/class_1863$class_7266 + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getRecipeFor a method_42303 + p 1 input + p 2 level +c net/minecraft/world/item/crafting/RecipeSerializer cze net/minecraft/class_1865 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHAPED_RECIPE a field_9035 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHAPELESS_RECIPE b field_9031 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; ARMOR_DYE c field_9028 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BOOK_CLONING d field_9029 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; MAP_CLONING e field_9044 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; MAP_EXTENDING f field_9039 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_ROCKET g field_9043 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_STAR h field_9036 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_STAR_FADE i field_9034 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; TIPPED_ARROW j field_9037 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BANNER_DUPLICATE k field_9038 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHIELD_DECORATION l field_9040 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHULKER_BOX_COLORING m field_9041 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SUSPICIOUS_STEW n field_9030 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; REPAIR_ITEM o field_19421 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMELTING_RECIPE p field_9042 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BLASTING_RECIPE q field_17084 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMOKING_RECIPE r field_17085 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; CAMPFIRE_COOKING_RECIPE s field_17347 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; STONECUTTER t field_17640 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMITHING_TRANSFORM u field_42027 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMITHING_TRIM v field_42028 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; DECORATED_POT_RECIPE w field_42718 + m ()Lcom/mojang/serialization/MapCodec; codec a method_53736 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;)Lnet/minecraft/world/item/crafting/RecipeSerializer; register a method_17724 + p 0 key + p 1 recipeSerializer + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56104 + m ()V +c net/minecraft/world/item/crafting/RecipeType czf net/minecraft/class_3956 + f Lnet/minecraft/world/item/crafting/RecipeType; CRAFTING a field_17545 + f Lnet/minecraft/world/item/crafting/RecipeType; SMELTING b field_17546 + f Lnet/minecraft/world/item/crafting/RecipeType; BLASTING c field_17547 + f Lnet/minecraft/world/item/crafting/RecipeType; SMOKING d field_17548 + f Lnet/minecraft/world/item/crafting/RecipeType; CAMPFIRE_COOKING e field_17549 + f Lnet/minecraft/world/item/crafting/RecipeType; STONECUTTING f field_17641 + f Lnet/minecraft/world/item/crafting/RecipeType; SMITHING g field_25388 + m (Ljava/lang/String;)Lnet/minecraft/world/item/crafting/RecipeType; register a method_17726 + p 0 identifier + m ()V +c net/minecraft/world/item/crafting/RecipeType$1 czf$1 net/minecraft/class_3956$1 + f Ljava/lang/String; val$name h field_17550 + m (Ljava/lang/String;)V +c net/minecraft/world/item/crafting/RepairItemRecipe czg net/minecraft/class_4317 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canCombine a method_58439 + p 0 stack1 + p 1 stack2 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lcom/mojang/datafixers/util/Pair; getItemsToCombine a method_58438 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_20808 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_20807 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/core/Holder$Reference;)V method_24364 a method_24364 + m (Lnet/minecraft/core/Holder$Reference;)Z method_59994 a method_59994 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57528 a method_57528 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/ShapedRecipe czh net/minecraft/class_1869 + f Lnet/minecraft/world/item/crafting/ShapedRecipePattern; pattern a field_47320 + f Lnet/minecraft/world/item/ItemStack; result b field_9053 + f Ljava/lang/String; group c field_9056 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category d field_40256 + f Z showNotification e field_42719 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17728 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17727 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31585 a method_31585 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31586 b method_31586 + m ()I getWidth j method_8150 + m ()I getHeight k method_8158 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/crafting/ShapedRecipePattern;Lnet/minecraft/world/item/ItemStack;Z)V + p 1 group + p 2 category + p 3 pattern + p 4 result + p 5 showNotification + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/crafting/ShapedRecipePattern;Lnet/minecraft/world/item/ItemStack;)V + p 1 group + p 2 category + p 3 pattern + p 4 result +c net/minecraft/world/item/crafting/ShapedRecipe$Serializer czh$a net/minecraft/class_1869$class_1870 + f Lcom/mojang/serialization/MapCodec; CODEC x field_46102 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC y field_48358 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55071 a method_55071 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Ljava/lang/Boolean; method_55072 a method_55072 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapedRecipe; fromNetwork a method_8163 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/ShapedRecipe;)V toNetwork a method_8165 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/ItemStack; method_55073 b method_55073 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; method_55074 c method_55074 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; method_55075 d method_55075 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Ljava/lang/String; method_55076 e method_55076 + m ()V + m ()V +c net/minecraft/world/item/crafting/ShapedRecipePattern czi net/minecraft/class_8957 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47321 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48359 + f I MAX_SIZE c field_47322 + f I width d field_51637 + f I height e field_51638 + f Lnet/minecraft/core/NonNullList; ingredients f field_51639 + f Ljava/util/Optional; data g field_51640 + f I ingredientCount h field_51641 + f Z symmetrical i field_51642 + m ()I width a method_59995 + m (C)Ljava/lang/String; method_55077 a method_55077 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Z matches a method_55078 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Z)Z matches a method_55079 + p 1 input + p 2 symmetrical + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Lcom/mojang/serialization/DataResult; unpack a method_55080 + p 0 data + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern;)Lcom/mojang/serialization/DataResult; method_55081 a method_55081 + m (Lit/unimi/dsi/fastutil/chars/CharSet;)Ljava/lang/String; method_55082 a method_55082 + m (Ljava/lang/String;)I firstNonSpace a method_55083 + p 0 row + m (Ljava/util/List;)[Ljava/lang/String; shrink a method_55084 + p 0 pattern + m (Ljava/util/Map;Ljava/util/List;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; of a method_55085 + p 0 key + p 1 pattern + m (Ljava/util/Map;[Ljava/lang/String;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; of a method_55086 + p 0 key + p 1 pattern + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V toNetwork a method_55087 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/world/item/crafting/Ingredient; method_55088 a method_55088 + m ()I height b method_59996 + m (Ljava/lang/String;)I lastNonSpace b method_55089 + p 0 row + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; fromNetwork b method_55090 + p 0 buffer + m ()Lnet/minecraft/core/NonNullList; ingredients c method_59997 + m ()Lcom/mojang/serialization/DataResult; method_55091 d method_55091 + m ()Ljava/lang/String; method_55092 e method_55092 + m (IILnet/minecraft/core/NonNullList;Ljava/util/Optional;)V + p 1 width + p 2 height + p 3 ingredients + p 4 data + m ()V +c net/minecraft/world/item/crafting/ShapedRecipePattern$Data czi$a net/minecraft/class_8957$class_8958 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47323 + f Ljava/util/Map; key b comp_2085 + f Ljava/util/List; pattern c comp_2086 + f Lcom/mojang/serialization/Codec; PATTERN_CODEC d field_47324 + f Lcom/mojang/serialization/Codec; SYMBOL_CODEC e field_47325 + m ()Ljava/util/Map; key a comp_2085 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55093 a method_55093 + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Ljava/util/List; method_55094 a method_55094 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55095 a method_55095 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_55096 a method_55096 + m ()Ljava/util/List; pattern b comp_2086 + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Ljava/util/Map; method_55097 b method_55097 + m (Ljava/lang/String;)Ljava/lang/String; method_55098 b method_55098 + m ()Ljava/lang/String; method_55099 c method_55099 + m ()Ljava/lang/String; method_55100 d method_55100 + m ()Ljava/lang/String; method_55101 e method_55101 + m ()Ljava/lang/String; method_55102 f method_55102 + m ()Ljava/lang/String; method_55103 g method_55103 + m (Ljava/util/Map;Ljava/util/List;)V + m ()V +c net/minecraft/world/item/crafting/ShapelessRecipe czj net/minecraft/class_1867 + f Ljava/lang/String; group a field_9049 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category b field_40257 + f Lnet/minecraft/world/item/ItemStack; result c field_9050 + f Lnet/minecraft/core/NonNullList; ingredients d field_9047 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17730 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17729 + p 1 input + p 2 registries + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/NonNullList;)V + p 1 group + p 2 category + p 3 result + p 4 ingredients +c net/minecraft/world/item/crafting/ShapelessRecipe$Serializer czj$a net/minecraft/class_1867$class_1868 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48360 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46104 + m (I)[Lnet/minecraft/world/item/crafting/Ingredient; method_53756 a method_53756 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53759 a method_53759 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_53757 a method_53757 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/core/NonNullList; method_53758 a method_53758 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_53760 a method_53760 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapelessRecipe; fromNetwork a method_8141 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/world/item/crafting/Ingredient; method_56105 a method_56105 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/ShapelessRecipe;)V toNetwork a method_8143 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/world/item/ItemStack; method_53762 b method_53762 + m ()Ljava/lang/String; method_53761 c method_53761 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; method_53764 c method_53764 + m ()Ljava/lang/String; method_53763 d method_53763 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Ljava/lang/String; method_53765 d method_53765 + m ()V + m ()V +c net/minecraft/world/item/crafting/ShieldDecorationRecipe czk net/minecraft/class_1872 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17732 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17731 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/ShulkerBoxColoring czl net/minecraft/class_1871 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17734 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17733 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/SimpleCookingSerializer czm net/minecraft/class_3957 + f Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory; factory x field_17552 + f Lcom/mojang/serialization/MapCodec; codec y field_46105 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec z field_48361 + m (ILnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53766 a method_53766 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/Integer; method_53767 a method_53767 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)Lnet/minecraft/world/item/crafting/AbstractCookingRecipe; create a method_55104 + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/AbstractCookingRecipe; fromNetwork a method_17737 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)V toNetwork a method_17735 + p 1 buffer + p 2 recipe + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/Float; method_53768 b method_53768 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/ItemStack; method_53769 c method_53769 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53770 d method_53770 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/crafting/CookingBookCategory; method_53771 e method_53771 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/String; method_53772 f method_53772 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;I)V + p 1 factory + p 2 cookingTime +c net/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer czn net/minecraft/class_1866 + f Lcom/mojang/serialization/MapCodec; codec x field_46106 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec y field_48362 + m (Lnet/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53773 a method_53773 + m (Lnet/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory;)V + p 1 constructor +c net/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory czn$a net/minecraft/class_1866$class_7711 +c net/minecraft/world/item/crafting/SingleItemRecipe czo net/minecraft/class_3972 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient a field_17642 + f Lnet/minecraft/world/item/ItemStack; result b field_17643 + f Ljava/lang/String; group c field_17645 + f Lnet/minecraft/world/item/crafting/RecipeType; type d field_17646 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; serializer e field_17647 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_59998 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeSerializer;Ljava/lang/String;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 type + p 2 serializer + p 3 group + p 4 ingredient + p 5 result +c net/minecraft/world/item/crafting/SingleItemRecipe$Factory czo$a net/minecraft/class_3972$class_3974 +c net/minecraft/world/item/crafting/SingleItemRecipe$Serializer czo$b net/minecraft/class_3972$class_3973 + f Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory; factory x field_17648 + f Lcom/mojang/serialization/MapCodec; codec y field_46107 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec z field_48363 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53774 a method_53774 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/ItemStack; method_56106 a method_56106 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_56107 b method_56107 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Ljava/lang/String; method_56108 c method_56108 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/ItemStack; method_53879 d method_53879 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53777 e method_53777 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Ljava/lang/String; method_53778 f method_53778 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;)V + p 1 factory +c net/minecraft/world/item/crafting/SingleRecipeInput czp net/minecraft/class_9696 + f Lnet/minecraft/world/item/ItemStack; item a comp_2676 + m ()Lnet/minecraft/world/item/ItemStack; item c comp_2676 + m (Lnet/minecraft/world/item/ItemStack;)V +c net/minecraft/world/item/crafting/SmeltingRecipe czq net/minecraft/class_3861 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/SmithingRecipe czr net/minecraft/class_8059 + m (Lnet/minecraft/world/item/ItemStack;)Z isTemplateIngredient a method_48453 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isBaseIngredient b method_48454 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isAdditionIngredient c method_30029 + p 1 stack +c net/minecraft/world/item/crafting/SmithingRecipeInput czs net/minecraft/class_9697 + f Lnet/minecraft/world/item/ItemStack; template a comp_2677 + f Lnet/minecraft/world/item/ItemStack; base b comp_2678 + f Lnet/minecraft/world/item/ItemStack; addition c comp_2679 + m ()Lnet/minecraft/world/item/ItemStack; template c comp_2677 + m ()Lnet/minecraft/world/item/ItemStack; base d comp_2678 + m ()Lnet/minecraft/world/item/ItemStack; addition e comp_2679 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V +c net/minecraft/world/item/crafting/SmithingTransformRecipe czt net/minecraft/class_8060 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42030 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42031 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42032 + f Lnet/minecraft/world/item/ItemStack; result d field_42033 + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_59999 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_60000 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 template + p 2 base + p 3 addition + p 4 result +c net/minecraft/world/item/crafting/SmithingTransformRecipe$Serializer czt$a net/minecraft/class_8060$class_8061 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48364 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46108 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53780 a method_53780 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/ItemStack; method_53779 a method_53779 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/SmithingTransformRecipe; fromNetwork a method_48456 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)V toNetwork a method_48457 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53781 b method_53781 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53782 c method_53782 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53783 d method_53783 + m ()V + m ()V +c net/minecraft/world/item/crafting/SmithingTrimRecipe czu net/minecraft/class_8062 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42035 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42036 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42037 + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_60001 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_60002 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;)V + p 1 template + p 2 base + p 3 addition +c net/minecraft/world/item/crafting/SmithingTrimRecipe$Serializer czu$a net/minecraft/class_8062$class_8063 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48365 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46109 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53785 a method_53785 + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53784 a method_53784 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/SmithingTrimRecipe; fromNetwork a method_48460 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)V toNetwork a method_48461 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53786 b method_53786 + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53787 c method_53787 + m ()V + m ()V +c net/minecraft/world/item/crafting/SmokingRecipe czv net/minecraft/class_3862 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/StonecutterRecipe czw net/minecraft/class_3975 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_60003 + p 1 input + p 2 level + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 group + p 2 ingredient + p 3 result +c net/minecraft/world/item/crafting/SuspiciousStewRecipe czx net/minecraft/class_1873 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17739 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17738 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/TippedArrowRecipe czy net/minecraft/class_1876 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17741 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17740 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/package-info czz net/minecraft/class_6082 +c net/minecraft/world/item/enchantment/ConditionalEffect daa net/minecraft/class_9698 + f Ljava/lang/Object; effect a comp_2680 + f Ljava/util/Optional; requirements b comp_2681 + m ()Ljava/lang/Object; effect a comp_2680 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; codec a method_60004 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60005 a method_60005 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_60006 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; conditionCodec a method_60007 + p 0 params + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lcom/mojang/serialization/DataResult; method_60008 a method_60008 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lcom/mojang/serialization/DataResult; method_60009 a method_60009 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_60010 a method_60010 + m ()Ljava/util/Optional; requirements b comp_2681 + m (Ljava/lang/String;)Ljava/lang/String; method_60011 b method_60011 + m (Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/world/item/enchantment/EnchantedItemInUse dab net/minecraft/class_9699 + f Lnet/minecraft/world/item/ItemStack; itemStack a comp_2682 + f Lnet/minecraft/world/entity/EquipmentSlot; inSlot b comp_2683 + f Lnet/minecraft/world/entity/LivingEntity; owner c comp_2684 + f Ljava/util/function/Consumer; onBreak d comp_2685 + m ()Lnet/minecraft/world/item/ItemStack; itemStack a comp_2682 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/Item;)V method_60012 a method_60012 + m ()Lnet/minecraft/world/entity/EquipmentSlot; inSlot b comp_2683 + m ()Lnet/minecraft/world/entity/LivingEntity; owner c comp_2684 + m ()Ljava/util/function/Consumer; onBreak d comp_2685 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 itemStack + p 2 inSlot + p 3 owner + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Consumer;)V +c net/minecraft/world/item/enchantment/Enchantment dac net/minecraft/class_1887 + f I MAX_LEVEL a field_51949 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_51643 + f Lcom/mojang/serialization/Codec; CODEC c field_51644 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51950 + f Lnet/minecraft/network/chat/Component; description e comp_2686 + f Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition f comp_2687 + f Lnet/minecraft/core/HolderSet; exclusiveSet g comp_2688 + f Lnet/minecraft/core/component/DataComponentMap; effects h comp_2689 + m ()Lnet/minecraft/core/HolderSet; getSupportedItems a method_56109 + m (I)Lnet/minecraft/world/item/enchantment/Enchantment$Cost; constantCost a method_58440 + p 0 cost + m (II)Lnet/minecraft/world/item/enchantment/Enchantment$Cost; dynamicCost a method_58441 + p 0 base + p 1 perLevel + m (ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;)V stopLocationBasedEffects a method_60013 + p 1 enchantmentLevel + p 2 item + p 3 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)Z isImmuneToDamage a method_60014 + p 1 level + p 2 enchantmentLevel + p 3 entity + p 4 damageSource + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/level/storage/loot/LootContext; entityContext a method_60015 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 origin + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/storage/loot/LootContext; blockHitContext a method_60768 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 origin + p 4 state + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Z)Lnet/minecraft/world/level/storage/loot/LootContext; locationContext a method_60016 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 enchantmentActive + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/storage/loot/LootContext; itemContext a method_60017 + p 0 level + p 1 enchantmentLevel + p 2 tool + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamageProtection a method_60018 + p 1 level + p 2 enchantmentLevel + p 3 stack + p 4 entity + p 5 damageSource + p 6 damageProtection + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyMobExperience a method_60019 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 mobExperience + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDurabilityChange a method_60020 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 durabilityChange + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;)V tick a method_60021 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60022 a method_60022 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60024 a method_60024 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;)V onHitBlock a method_60023 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 pos + p 6 state + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;)V runLocationChangedEffects a method_60025 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttack a method_8189 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 target + p 5 entity + p 6 damageSource + m (Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyTridentSpinAttackStrength a method_60049 + p 1 random + p 2 enchantmentLevel + p 3 value + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z matchingSlot a method_60026 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Z method_60027 a method_60027 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Map; getSlotItems a method_8185 + c Creates a new map containing all items equipped by an entity in {@linkplain #slots slots that the enchantment cares about}. These items are not tested for having the enchantment. + p 1 entity + c The entity to collect equipment for. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60028 a method_60028 + m (Lnet/minecraft/world/item/ItemStack;)Z isPrimaryItem a method_58444 + p 1 stack + m (Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect;)V method_60029 a method_60029 + m (Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; enchantment a method_60030 + p 0 definition + m (Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttack a method_60031 + p 0 effect + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 damageSource + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V applyEffects a method_60032 + p 0 effects + p 1 context + p 2 applier + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/network/chat/Component; getFullname a method_8179 + p 0 enchantment + p 1 level + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Z areCompatible a method_60033 + p 0 first + p 1 second + m (Lnet/minecraft/core/HolderSet;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;I[Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a method_58442 + p 0 supportedItems + p 1 weight + p 2 maxLevel + p 3 minCost + p 4 maxCost + p 5 anvilCost + p 6 slots + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/HolderSet;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;I[Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a method_58443 + p 0 supportedItems + p 1 primaryItems + p 2 weight + p 3 maxLevel + p 4 minCost + p 5 maxCost + p 6 anvilCost + p 7 slots + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; getEffects a method_60034 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamageFilteredValue a method_60035 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 entity + p 6 damageSource + p 7 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyEntityFilteredValue a method_60036 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 entity + p 6 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyItemFilteredCount a method_60037 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyUnfilteredValue a method_60506 + p 1 componentType + p 2 random + p 3 enchantmentLevel + p 4 value + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60038 a method_60038 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60039 a method_60039 + m ()I getWeight b method_58445 + m (I)I getMinCost b method_8182 + c Returns the minimal value of enchantability needed on the enchantment level passed. + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)Lnet/minecraft/world/level/storage/loot/LootContext; damageContext b method_60040 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 damageSource + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamage b method_60041 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 damage + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyTridentReturnToOwnerAcceleration b method_60042 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 tridentReturnToOwnerAcceleration + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyAmmoCount b method_60043 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 ammoCount + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;)V onProjectileSpawned b method_60044 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60045 b method_60045 + m (Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyCrossbowChargeTime b method_60058 + p 1 random + p 2 enchantmentLevel + p 3 value + m (Lnet/minecraft/world/item/ItemStack;)Z isSupportedItem b method_60046 + p 1 item + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60047 b method_60047 + m ()I getAnvilCost c method_58446 + m (I)I getMaxCost c method_20742 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFallBasedDamage c method_60048 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 fallBasedDamage + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFishingTimeReduction c method_60052 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 fishingTimeReduction + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyPiercingCount c method_60050 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 piercingCount + m (Lnet/minecraft/world/item/ItemStack;)Z canEnchant c method_8192 + c Checks if the enchantment can be applied to a given ItemStack. + p 1 stack + c The ItemStack to test. + m ()I getMinLevel d method_8187 + c Gets the minimum level of the enchantment under normal circumstances such as the enchanting table. This limit is not strictly enforced and may be ignored through custom item NBT or other customizations. + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyKnockback d method_60051 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 knockback + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFishingLuckBonus d method_60055 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 fishingLuckBonus + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyBlockExperience d method_60053 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 blockExperience + m ()I getMaxLevel e method_8183 + c Gets the maximum level of the enchantment under normal circumstances such as the enchanting table. This limit is not strictly enforced and may be ignored through custom item NBT or other customizations. + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyArmorEffectivness e method_60054 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 armorEffectiveness + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyProjectileCount e method_60057 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 projectileCount + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDurabilityToRepairFromXp e method_60056 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 durabilityToRepairFromXp + m ()Lnet/minecraft/network/chat/Component; description f comp_2686 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyProjectileSpread f method_60059 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 projectileSpread + m ()Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition g comp_2687 + m ()Lnet/minecraft/core/HolderSet; exclusiveSet h comp_2688 + m ()Lnet/minecraft/core/component/DataComponentMap; effects i comp_2689 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/component/DataComponentMap;)V + m ()V +c net/minecraft/world/item/enchantment/Enchantment$1 dac$1 net/minecraft/class_1887$1 + f [I $SwitchMap$net$minecraft$world$item$enchantment$EnchantmentTarget a field_7133 + m ()V +c net/minecraft/world/item/enchantment/Enchantment$Builder dac$a net/minecraft/class_1887$class_9700 + f Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a field_51645 + f Lnet/minecraft/core/HolderSet; exclusiveSet b field_51646 + f Ljava/util/Map; effectLists c field_51647 + f Lnet/minecraft/core/component/DataComponentMap$Builder; effectMapBuilder d field_51648 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/enchantment/Enchantment; build a method_60060 + p 1 location + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; exclusiveWith a method_60061 + p 1 exclusiveSet + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60062 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60063 + p 1 componentType + p 2 enchanted + p 3 affected + p 4 effect + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60064 + p 1 componentType + p 2 enchanted + p 3 affected + p 4 effect + p 5 requirements + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60065 + p 1 componentType + p 2 effect + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60066 + p 1 componentType + p 2 effect + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60067 + p 1 componentType + p 2 effect + p 3 requirements + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; method_60068 a method_60068 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; getEffectsList b method_60069 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withSpecialEffect b method_60070 + p 1 component + p 2 value + m (Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;)V + p 1 definition +c net/minecraft/world/item/enchantment/Enchantment$Cost dac$b net/minecraft/class_1887$class_9426 + f Lcom/mojang/serialization/Codec; CODEC a field_51649 + f I base b comp_2504 + f I perLevelAboveFirst c comp_2690 + m ()I base a comp_2504 + m (I)I calculate a method_58447 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60071 a method_60071 + m ()I perLevelAboveFirst b comp_2690 + m (II)V + m ()V +c net/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition dac$c net/minecraft/class_1887$class_9427 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51650 + f Lnet/minecraft/core/HolderSet; supportedItems b comp_2506 + f Ljava/util/Optional; primaryItems c comp_2507 + f I weight d comp_2508 + f I maxLevel e comp_2509 + f Lnet/minecraft/world/item/enchantment/Enchantment$Cost; minCost f comp_2510 + f Lnet/minecraft/world/item/enchantment/Enchantment$Cost; maxCost g comp_2511 + f I anvilCost h comp_2512 + f Ljava/util/List; slots i comp_2513 + m ()Lnet/minecraft/core/HolderSet; supportedItems a comp_2506 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60072 a method_60072 + m ()Ljava/util/Optional; primaryItems b comp_2507 + m ()I weight c comp_2508 + m ()I maxLevel d comp_2509 + m ()Lnet/minecraft/world/item/enchantment/Enchantment$Cost; minCost e comp_2510 + m ()Lnet/minecraft/world/item/enchantment/Enchantment$Cost; maxCost f comp_2511 + m ()I anvilCost g comp_2512 + m ()Ljava/util/List; slots h comp_2513 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Optional;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;ILjava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/EnchantmentEffectComponents dad net/minecraft/class_9701 + f Lnet/minecraft/core/component/DataComponentType; CROSSBOW_CHARGE_TIME A field_51677 + f Lnet/minecraft/core/component/DataComponentType; CROSSBOW_CHARGING_SOUNDS B field_51653 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_SOUND C field_51654 + f Lnet/minecraft/core/component/DataComponentType; PREVENT_EQUIPMENT_DROP D field_51655 + f Lnet/minecraft/core/component/DataComponentType; PREVENT_ARMOR_CHANGE E field_51656 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_SPIN_ATTACK_STRENGTH F field_51651 + f Lcom/mojang/serialization/Codec; COMPONENT_CODEC a field_51657 + f Lcom/mojang/serialization/Codec; CODEC b field_51658 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE_PROTECTION c field_51659 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE_IMMUNITY d field_51660 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE e field_51661 + f Lnet/minecraft/core/component/DataComponentType; SMASH_DAMAGE_PER_FALLEN_BLOCK f field_51662 + f Lnet/minecraft/core/component/DataComponentType; KNOCKBACK g field_51663 + f Lnet/minecraft/core/component/DataComponentType; ARMOR_EFFECTIVENESS h field_51664 + f Lnet/minecraft/core/component/DataComponentType; POST_ATTACK i field_51665 + f Lnet/minecraft/core/component/DataComponentType; HIT_BLOCK j field_51666 + f Lnet/minecraft/core/component/DataComponentType; ITEM_DAMAGE k field_51667 + f Lnet/minecraft/core/component/DataComponentType; ATTRIBUTES l field_51668 + f Lnet/minecraft/core/component/DataComponentType; EQUIPMENT_DROPS m field_51669 + f Lnet/minecraft/core/component/DataComponentType; LOCATION_CHANGED n field_51670 + f Lnet/minecraft/core/component/DataComponentType; TICK o field_51671 + f Lnet/minecraft/core/component/DataComponentType; AMMO_USE p field_51672 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_PIERCING q field_51673 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_SPAWNED r field_51674 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_SPREAD s field_51675 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_COUNT t field_51676 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_RETURN_ACCELERATION u field_51678 + f Lnet/minecraft/core/component/DataComponentType; FISHING_TIME_REDUCTION v field_51679 + f Lnet/minecraft/core/component/DataComponentType; FISHING_LUCK_BONUS w field_51680 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_EXPERIENCE x field_51681 + f Lnet/minecraft/core/component/DataComponentType; MOB_EXPERIENCE y field_51682 + f Lnet/minecraft/core/component/DataComponentType; REPAIR_WITH_XP z field_51652 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60073 A method_60073 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60074 B method_60074 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60075 C method_60075 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60076 D method_60076 + m ()Lcom/mojang/serialization/Codec; method_60077 a method_60077 + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/core/component/DataComponentType; register a method_60078 + p 0 name + p 1 operator + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/component/DataComponentType; bootstrap a method_60079 + p 0 registry + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60084 a method_60084 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60080 b method_60080 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60081 c method_60081 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60082 d method_60082 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60083 e method_60083 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60085 f method_60085 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60086 g method_60086 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60087 h method_60087 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60088 i method_60088 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60089 j method_60089 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60090 k method_60090 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60091 l method_60091 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60092 m method_60092 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60093 n method_60093 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60094 o method_60094 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60095 p method_60095 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60096 q method_60096 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60097 r method_60097 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60098 s method_60098 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60099 t method_60099 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60100 u method_60100 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60101 v method_60101 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60102 w method_60102 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60103 x method_60103 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60104 y method_60104 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60105 z method_60105 + m ()V +c net/minecraft/world/item/enchantment/EnchantmentHelper dae net/minecraft/class_1890 + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/stream/Stream;)Ljava/util/List; getAvailableEnchantmentResults a method_8229 + p 0 level + p 1 stack + p 2 possibleEnchantments + m (ILjava/util/List;Lnet/minecraft/core/Holder;)V method_60106 a method_60106 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttackEffects a method_60107 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/item/ItemStack;)V doPostAttackEffectsWithItemSource a method_60619 + p 0 level + p 1 entity + p 2 damageSource + p 3 itemSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60620 a method_60620 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;I)I processMobExperience a method_60109 + p 0 level + p 1 killer + p 2 mob + p 3 experience + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60110 a method_60110 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V runLocationChangedEffects a method_60111 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)Z isImmuneToDamage a method_60112 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;F)F processEquipmentDropChance a method_60113 + p 0 level + p 1 entity + p 2 damageSource + p 3 equipmentDropChance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60114 a method_60114 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60115 a method_60115 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60116 a method_60116 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I processDurabilityChange a method_60117 + p 0 level + p 1 stack + p 2 damage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)I getFishingLuckBonus a method_8223 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;F)F processProjectileSpread a method_60118 + p 0 level + p 1 tool + p 2 entity + p 3 projectileSpread + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;I)I processProjectileCount a method_60119 + p 0 level + p 1 tool + p 2 entity + p 3 projectileCount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyDamage a method_60120 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 damage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60121 a method_60121 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60122 a method_60122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Consumer;)V onHitBlock a method_60124 + p 0 level + p 1 stack + p 2 owner + p 3 entity + p 4 slot + p 5 pos + p 6 state + p 7 onBreak + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V runLocationChangedEffects a method_60125 + p 0 level + p 1 stack + p 2 entity + p 3 slot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/projectile/AbstractArrow;Ljava/util/function/Consumer;)V onProjectileSpawned a method_60127 + p 0 level + p 1 firedFromWeapon + p 2 arrow + p 3 onBreak + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)I getPiercingCount a method_60128 + p 0 level + p 1 firedFromWeapon + p 2 pickupItemStack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)I processAmmoUse a method_60129 + p 0 level + p 1 weapon + p 2 ammo + p 3 count + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60163 a method_60163 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Holder;I)V method_60131 a method_60131 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/projectile/AbstractArrow;Lnet/minecraft/core/Holder;I)V method_60132 a method_60132 + m (Lnet/minecraft/util/RandomSource;IILnet/minecraft/world/item/ItemStack;)I getEnchantmentCost a method_8227 + c Returns the enchantability of itemstack, using a separate calculation for each enchantNum (0, 1 or 2), cutting to the max enchantability power of the table, which is locked to a max of 15. + p 0 random + p 1 enchantNum + p 2 power + p 3 stack + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILjava/util/stream/Stream;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_8233 + p 0 random + p 1 stack + p 2 level + p 3 possibleEnchantments + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/RegistryAccess;Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_60133 + p 0 random + p 1 stack + p 2 level + p 3 registryAccess + p 4 possibleEnchantments + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder;I)V method_60134 a method_60134 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder;I)V method_60621 a method_60621 + m (Lnet/minecraft/world/entity/LivingEntity;)V stopLocationBasedEffects a method_60135 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V runIterationOnEquipment a method_8209 + p 0 entity + p 1 visitor + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60136 a method_60136 + m (Lnet/minecraft/world/entity/LivingEntity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60126 a method_60126 + m (Lnet/minecraft/world/item/ItemStack;)Z canStoreEnchantments a method_57529 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/tags/TagKey;)Z hasTag a method_60138 + p 0 stack + p 1 tag + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V runIterationOnItem a method_60139 + p 0 stack + p 1 slot + p 2 entity + p 3 visitor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEachModifier a method_60140 + p 0 stack + p 1 slot + p 2 action + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEachModifier a method_60622 + p 0 stack + p 1 slotGroup + p 2 action + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)F getTridentSpinAttackStrength a method_60123 + p 0 stack + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;F)F modifyCrossbowChargingTime a method_60159 + p 0 stack + p 1 entity + p 2 crossbowChargingTime + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V stopLocationBasedEffects a method_60141 + p 0 stack + p 1 entity + p 2 slot + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentVisitor;)V runIterationOnItem a method_8220 + p 0 stack + p 1 visitor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments;)V setEnchantments a method_57530 + p 0 stack + p 1 enchantments + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Consumer;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; updateEnchantments a method_57531 + p 0 stack + p 1 updater + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/util/RandomSource;)V enchantItemFromProvider a method_60137 + p 0 stack + p 1 registries + p 2 key + p 3 difficulty + p 4 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Z has a method_60142 + p 0 stack + p 1 componentType + m (Lnet/minecraft/world/item/ItemStack;ZLnet/minecraft/core/Holder;)Z method_60143 a method_60143 + m (Lnet/minecraft/world/item/enchantment/EnchantmentInstance;Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)Z method_60144 a method_60144 + m (Lnet/minecraft/world/item/enchantment/providers/EnchantmentProvider;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_60145 a method_60145 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;)V method_60146 a method_60146 + m (Ljava/util/Collection;Lnet/minecraft/core/Holder;)Z isEnchantmentCompatible a method_8201 + p 0 currentEnchantments + p 1 newEnchantment + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)V filterCompatibleEnchantments a method_8231 + p 0 dataList + p 1 data + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_60147 a method_60147 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;ILnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)V method_60148 a method_60148 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;ILnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)V method_60623 a method_60623 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/LivingEntity;)I getEnchantmentLevel a method_8203 + p 0 enchantment + p 1 entity + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ItemStack;)I getItemEnchantmentLevel a method_8225 + p 0 enchantment + p 1 stack + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/stream/Stream; method_60149 a method_60149 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Predicate;)Ljava/util/Optional; getRandomItemWith a method_8204 + p 0 componentType + p 1 entity + p 2 filter + m (Lnet/minecraft/core/component/DataComponentType;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/core/Holder;I)V method_60150 a method_60150 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60151 a method_60151 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/core/Holder;I)V method_60152 a method_60152 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60624 b method_60624 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickEffects b method_60154 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)F getDamageProtection b method_8219 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60155 b method_60155 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60156 b method_60156 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I processBlockExperience b method_60157 + p 0 level + p 1 stack + p 2 experience + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)F getFishingTimeReduction b method_60158 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyFallBasedDamage b method_60160 + p 0 level + p 1 tool + p 2 enity + p 3 damageSource + p 4 fallBasedDamage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60161 b method_60161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60162 b method_60162 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60173 b method_60173 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILjava/util/stream/Stream;)Ljava/util/List; selectEnchantment b method_8230 + p 0 random + p 1 stack + p 2 level + p 3 possibleEnchantments + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60164 b method_60164 + m (Lnet/minecraft/world/entity/LivingEntity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60130 b method_60130 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; getEnchantmentsForCrafting b method_57532 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Ljava/util/Optional; pickHighestLevel b method_60165 + p 0 stack + p 1 componentType + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;)V method_60166 b method_60166 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60167 c method_60167 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I modifyDurabilityToRepairFromXp c method_60168 + p 0 level + p 1 stack + p 2 duabilityToRepairFromXp + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)I getTridentReturnToOwnerAcceleration c method_60169 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyArmorEffectiveness c method_60170 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 armorEffectiveness + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60171 c method_60171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60172 c method_60172 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60178 c method_60178 + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnyEnchantments c method_58117 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/datafixers/util/Pair; getHighestLevel c method_60174 + p 0 stack + p 1 componentType + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyKnockback d method_60175 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 knockback + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60176 d method_60176 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60177 d method_60177 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60180 d method_60180 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentType; getComponentType d method_57533 + p 0 stack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60179 e method_60179 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60181 e method_60181 + m ()V +c net/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor dae$a net/minecraft/class_1890$class_9702 +c net/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentVisitor dae$b net/minecraft/class_1890$class_1891 +c net/minecraft/world/item/enchantment/EnchantmentInstance daf net/minecraft/class_1889 + c Defines an immutable instance of an enchantment and its level. + f Lnet/minecraft/core/Holder; enchantment a field_9093 + c The enchantment being represented. + f I level b field_9094 + c The level of the enchantment. + m (Lnet/minecraft/core/Holder;I)V + p 1 enchantment + p 2 level +c net/minecraft/world/item/enchantment/EnchantmentTarget dag net/minecraft/class_9703 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; ATTACKER a field_51683 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; DAMAGING_ENTITY b field_51684 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; VICTIM c field_51685 + f Lcom/mojang/serialization/Codec; CODEC d field_51686 + f Ljava/lang/String; id e field_51687 + f [Lnet/minecraft/world/item/enchantment/EnchantmentTarget; $VALUES f field_51688 + m ()[Lnet/minecraft/world/item/enchantment/EnchantmentTarget; $values a method_60182 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/item/enchantment/Enchantments dah net/minecraft/class_1893 + f Lnet/minecraft/resources/ResourceKey; FLAME A field_9126 + f Lnet/minecraft/resources/ResourceKey; INFINITY B field_9125 + f Lnet/minecraft/resources/ResourceKey; LUCK_OF_THE_SEA C field_9114 + f Lnet/minecraft/resources/ResourceKey; LURE D field_9100 + f Lnet/minecraft/resources/ResourceKey; LOYALTY E field_9120 + f Lnet/minecraft/resources/ResourceKey; IMPALING F field_9106 + f Lnet/minecraft/resources/ResourceKey; RIPTIDE G field_9104 + f Lnet/minecraft/resources/ResourceKey; CHANNELING H field_9117 + f Lnet/minecraft/resources/ResourceKey; MULTISHOT I field_9108 + f Lnet/minecraft/resources/ResourceKey; QUICK_CHARGE J field_9098 + f Lnet/minecraft/resources/ResourceKey; PIERCING K field_9132 + f Lnet/minecraft/resources/ResourceKey; DENSITY L field_50157 + f Lnet/minecraft/resources/ResourceKey; BREACH M field_50158 + f Lnet/minecraft/resources/ResourceKey; WIND_BURST N field_50159 + f Lnet/minecraft/resources/ResourceKey; MENDING O field_9101 + f Lnet/minecraft/resources/ResourceKey; VANISHING_CURSE P field_9109 + f Lnet/minecraft/resources/ResourceKey; PROTECTION a field_9111 + f Lnet/minecraft/resources/ResourceKey; FIRE_PROTECTION b field_9095 + f Lnet/minecraft/resources/ResourceKey; FEATHER_FALLING c field_9129 + f Lnet/minecraft/resources/ResourceKey; BLAST_PROTECTION d field_9107 + f Lnet/minecraft/resources/ResourceKey; PROJECTILE_PROTECTION e field_9096 + f Lnet/minecraft/resources/ResourceKey; RESPIRATION f field_9127 + f Lnet/minecraft/resources/ResourceKey; AQUA_AFFINITY g field_9105 + f Lnet/minecraft/resources/ResourceKey; THORNS h field_9097 + f Lnet/minecraft/resources/ResourceKey; DEPTH_STRIDER i field_9128 + f Lnet/minecraft/resources/ResourceKey; FROST_WALKER j field_9122 + f Lnet/minecraft/resources/ResourceKey; BINDING_CURSE k field_9113 + f Lnet/minecraft/resources/ResourceKey; SOUL_SPEED l field_23071 + f Lnet/minecraft/resources/ResourceKey; SWIFT_SNEAK m field_38223 + f Lnet/minecraft/resources/ResourceKey; SHARPNESS n field_9118 + f Lnet/minecraft/resources/ResourceKey; SMITE o field_9123 + f Lnet/minecraft/resources/ResourceKey; BANE_OF_ARTHROPODS p field_9112 + f Lnet/minecraft/resources/ResourceKey; KNOCKBACK q field_9121 + f Lnet/minecraft/resources/ResourceKey; FIRE_ASPECT r field_9124 + f Lnet/minecraft/resources/ResourceKey; LOOTING s field_9110 + f Lnet/minecraft/resources/ResourceKey; SWEEPING_EDGE t field_9115 + f Lnet/minecraft/resources/ResourceKey; EFFICIENCY u field_9131 + f Lnet/minecraft/resources/ResourceKey; SILK_TOUCH v field_9099 + f Lnet/minecraft/resources/ResourceKey; UNBREAKING w field_9119 + f Lnet/minecraft/resources/ResourceKey; FORTUNE x field_9130 + f Lnet/minecraft/resources/ResourceKey; POWER y field_9103 + f Lnet/minecraft/resources/ResourceKey; PUNCH z field_9116 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; key a method_60183 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60184 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/enchantment/Enchantment$Builder;)V register a method_8235 + p 0 context + p 1 key + p 2 builder + m ()V + m ()V +c net/minecraft/world/item/enchantment/ItemEnchantments dai net/minecraft/class_9304 + f Lnet/minecraft/world/item/enchantment/ItemEnchantments; EMPTY a field_49385 + f Lcom/mojang/serialization/Codec; CODEC b field_49386 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49387 + f Lcom/mojang/serialization/Codec; LEVEL_CODEC d field_49388 + f Lcom/mojang/serialization/Codec; LEVELS_CODEC e field_49753 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49754 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; enchantments g field_49389 + f Z showInTooltip h field_49390 + m ()Ljava/util/Set; keySet a method_57534 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57535 a method_57535 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Ljava/lang/Boolean; method_57537 a method_57537 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; method_58118 a method_58118 + m (Lnet/minecraft/core/Holder;)I getLevel a method_57536 + p 1 enchantment + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet; getTagOrEmpty a method_59716 + p 0 registries + p 1 registryKey + p 2 key + m (Z)Lnet/minecraft/world/item/enchantment/ItemEnchantments; withTooltip a method_58449 + p 1 showInTooltip + m ()Ljava/util/Set; entrySet b method_57539 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; method_57540 b method_57540 + m ()I size c method_57541 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Ljava/lang/Boolean; method_57542 c method_57542 + m ()Z isEmpty d method_57543 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; method_57544 d method_57544 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Z)V + p 1 enchantments + p 2 showInTooltip + m ()V +c net/minecraft/world/item/enchantment/ItemEnchantments$Mutable dai$a net/minecraft/class_9304$class_9305 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; enchantments a field_49391 + f Z showInTooltip b field_49392 + m ()Ljava/util/Set; keySet a method_57545 + m (Ljava/util/function/Predicate;)V removeIf a method_57548 + p 1 predicate + m (Lnet/minecraft/core/Holder;)I getLevel a method_57546 + p 1 enchantment + m (Lnet/minecraft/core/Holder;I)V set a method_57547 + p 1 enchantment + p 2 level + m ()Lnet/minecraft/world/item/enchantment/ItemEnchantments; toImmutable b method_57549 + m (Lnet/minecraft/core/Holder;I)V upgrade b method_57550 + p 1 enchantment + p 2 level + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)V + p 1 enchantments +c net/minecraft/world/item/enchantment/LevelBasedValue daj net/minecraft/class_9704 + f Lcom/mojang/serialization/Codec; DISPATCH_CODEC a field_51689 + f Lcom/mojang/serialization/Codec; CODEC b field_51690 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60185 + m (F)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Constant; constant a method_60186 + p 0 value + m (FF)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Linear; perLevel a method_60187 + p 0 base + p 1 perLevelAfterFirst + m (I)F calculate a method_60188 + p 1 level + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60189 a method_60189 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_60190 a method_60190 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Constant;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60191 a method_60191 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lcom/mojang/datafixers/util/Either; method_60192 a method_60192 + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Lookup; lookup a method_60987 + p 0 values + p 1 fallback + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60193 + p 0 registry + m (F)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Linear; perLevel b method_60194 + p 0 perLevel + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60195 b method_60195 + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Clamped daj$a net/minecraft/class_9704$class_9705 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51691 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value d comp_2691 + f F min e comp_2692 + f F max f comp_2693 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60196 a method_60196 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Clamped;)Lcom/mojang/serialization/DataResult; method_60197 a method_60197 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2691 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Clamped;)Ljava/lang/String; method_60198 b method_60198 + m ()F min c comp_2692 + m ()F max d comp_2693 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;FF)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Constant daj$b net/minecraft/class_9704$class_9706 + f Lcom/mojang/serialization/Codec; CODEC c field_51692 + f Lcom/mojang/serialization/MapCodec; TYPED_CODEC d field_51693 + f F value e comp_2694 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60199 a method_60199 + m ()F value b comp_2694 + m (F)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Fraction daj$c net/minecraft/class_9704$class_9707 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51694 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; numerator d comp_2695 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; denominator e comp_2696 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60200 a method_60200 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; numerator b comp_2695 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; denominator c comp_2696 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$LevelsSquared daj$d net/minecraft/class_9704$class_9708 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51695 + f F added d comp_2697 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60201 a method_60201 + m ()F added b comp_2697 + m (F)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Linear daj$e net/minecraft/class_9704$class_9709 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51696 + f F base d comp_2698 + f F perLevelAboveFirst e comp_2699 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60202 a method_60202 + m ()F base b comp_2698 + m ()F perLevelAboveFirst c comp_2699 + m (FF)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Lookup daj$f net/minecraft/class_9704$class_9819 + f Lcom/mojang/serialization/MapCodec; CODEC c field_52226 + f Ljava/util/List; values d comp_2862 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; fallback e comp_2863 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60988 a method_60988 + m ()Ljava/util/List; values b comp_2862 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; fallback c comp_2863 + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/TargetedConditionalEffect dak net/minecraft/class_9710 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; enchanted a comp_2700 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; affected b comp_2701 + f Ljava/lang/Object; effect c comp_2702 + f Ljava/util/Optional; requirements d comp_2703 + m ()Lnet/minecraft/world/item/enchantment/EnchantmentTarget; enchanted a comp_2700 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; codec a method_60203 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60204 a method_60204 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;)Lcom/mojang/serialization/DataResult; method_60205 a method_60205 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect; method_60206 a method_60206 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_60207 + p 1 context + m ()Lnet/minecraft/world/item/enchantment/EnchantmentTarget; affected b comp_2701 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; equipmentDropsCodec b method_60208 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60209 b method_60209 + m ()Ljava/lang/Object; effect c comp_2702 + m ()Ljava/util/Optional; requirements d comp_2703 + m ()Ljava/lang/String; method_60210 e method_60210 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/world/item/enchantment/effects/AddValue dal net/minecraft/class_9711 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51697 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value c comp_2704 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60212 a method_60212 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2704 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf dam net/minecraft/class_9712 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; codec a method_60214 + p 0 codec + p 1 getter + p 2 factory + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60215 a method_60215 + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$EntityEffects; entityEffects a method_60216 + p 0 effects + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$LocationBasedEffects; locationBasedEffects a method_60217 + p 0 effects + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$ValueEffects; valueEffects a method_60218 + p 0 effects +c net/minecraft/world/item/enchantment/effects/AllOf$EntityEffects dam$a net/minecraft/class_9712$class_9713 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51698 + f Ljava/util/List; effects d comp_2705 + m ()Ljava/util/List; effects b comp_2705 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf$LocationBasedEffects dam$b net/minecraft/class_9712$class_9714 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51699 + f Ljava/util/List; effects b comp_2706 + m ()Ljava/util/List; effects b comp_2706 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf$ValueEffects dam$c net/minecraft/class_9712$class_9715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51700 + f Ljava/util/List; effects c comp_2707 + m ()Ljava/util/List; effects b comp_2707 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ApplyMobEffect dan net/minecraft/class_9716 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51701 + f Lnet/minecraft/core/HolderSet; toApply d comp_2708 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDuration e comp_2709 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDuration f comp_2710 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minAmplifier g comp_2711 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxAmplifier h comp_2712 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60223 a method_60223 + m ()Lnet/minecraft/core/HolderSet; toApply b comp_2708 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDuration c comp_2709 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDuration d comp_2710 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minAmplifier e comp_2711 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxAmplifier f comp_2712 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageEntity dao net/minecraft/class_9717 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51702 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDamage d comp_2713 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDamage e comp_2714 + f Lnet/minecraft/core/Holder; damageType f comp_2715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60224 a method_60224 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDamage b comp_2713 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDamage c comp_2714 + m ()Lnet/minecraft/core/Holder; damageType d comp_2715 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageImmunity dap net/minecraft/class_9718 + f Lnet/minecraft/world/item/enchantment/effects/DamageImmunity; INSTANCE a field_51703 + f Lcom/mojang/serialization/Codec; CODEC b field_51704 + m ()Lnet/minecraft/world/item/enchantment/effects/DamageImmunity; method_60225 a method_60225 + m ()V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageItem daq net/minecraft/class_9719 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51705 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount d comp_2716 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60226 a method_60226 + m (Lnet/minecraft/world/item/enchantment/effects/DamageItem;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60227 a method_60227 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount b comp_2716 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect dar net/minecraft/class_9720 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51706 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2839 + f Lnet/minecraft/core/Holder; attribute d comp_2718 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount e comp_2719 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation f comp_2720 + m (ILnet/minecraft/util/StringRepresentable;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; getModifier a method_60228 + p 1 enchantmentLevel + p 2 slot + m (ILnet/minecraft/world/entity/EquipmentSlot;)Lcom/google/common/collect/HashMultimap; makeAttributeMap a method_60230 + p 1 enchantmentLevel + p 2 slot + m (Lnet/minecraft/util/StringRepresentable;)Lnet/minecraft/resources/ResourceLocation; idForSlot a method_60769 + p 1 slot + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60229 a method_60229 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2839 + m ()Lnet/minecraft/core/Holder; attribute c comp_2718 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount d comp_2719 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation e comp_2720 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect das net/minecraft/class_9721 + f Lcom/mojang/serialization/Codec; CODEC b field_51707 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V apply a method_60220 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 origin + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60231 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect dat net/minecraft/class_9722 + f Lcom/mojang/serialization/Codec; CODEC c field_51708 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60219 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Z)V onChangedBlock a method_60221 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 pos + p 6 applyTransientEffects + m (Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;I)V onDeactivated a method_60222 + p 1 item + p 2 entity + p 3 pos + p 4 enchantmentLevel + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap b method_60232 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentValueEffect dau net/minecraft/class_9723 + f Lcom/mojang/serialization/Codec; CODEC b field_51709 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60211 + m (ILnet/minecraft/util/RandomSource;F)F process a method_60213 + p 1 enchantmentLevel + p 2 random + p 3 value + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60233 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/ExplodeEffect dav net/minecraft/class_9724 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51710 + f Z attributeToUser d comp_2722 + f Ljava/util/Optional; damageType e comp_2723 + f Ljava/util/Optional; knockbackMultiplier f comp_2724 + f Ljava/util/Optional; immuneBlocks g comp_2725 + f Lnet/minecraft/world/phys/Vec3; offset h comp_2726 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius i comp_2727 + f Z createFire j comp_2728 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; blockInteraction k comp_2729 + f Lnet/minecraft/core/particles/ParticleOptions; smallParticle l comp_2730 + f Lnet/minecraft/core/particles/ParticleOptions; largeParticle m comp_2731 + f Lnet/minecraft/core/Holder; sound n comp_2732 + m (ILnet/minecraft/world/item/enchantment/LevelBasedValue;)Ljava/lang/Float; method_60234 a method_60234 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/damagesource/DamageSource; getDamageSource a method_60235 + p 1 entity + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60236 a method_60236 + m ()Z attributeToUser b comp_2722 + m ()Ljava/util/Optional; damageType c comp_2723 + m ()Ljava/util/Optional; knockbackMultiplier d comp_2724 + m ()Ljava/util/Optional; immuneBlocks e comp_2725 + m ()Lnet/minecraft/world/phys/Vec3; offset f comp_2726 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius g comp_2727 + m ()Z createFire h comp_2728 + m ()Lnet/minecraft/world/level/Level$ExplosionInteraction; blockInteraction i comp_2729 + m ()Lnet/minecraft/core/particles/ParticleOptions; smallParticle j comp_2730 + m ()Lnet/minecraft/core/particles/ParticleOptions; largeParticle k comp_2731 + m ()Lnet/minecraft/core/Holder; sound l comp_2732 + m (ZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/enchantment/LevelBasedValue;ZLnet/minecraft/world/level/Level$ExplosionInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/item/enchantment/effects/Ignite daw net/minecraft/class_9725 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51711 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; duration d comp_2733 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60237 a method_60237 + m (Lnet/minecraft/world/item/enchantment/effects/Ignite;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60238 a method_60238 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; duration b comp_2733 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/MultiplyValue dax net/minecraft/class_9726 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51712 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; factor c comp_2734 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60239 a method_60239 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; factor b comp_2734 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/PlaySoundEffect day net/minecraft/class_9727 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51713 + f Lnet/minecraft/core/Holder; soundEvent d comp_2735 + f Lnet/minecraft/util/valueproviders/FloatProvider; volume e comp_2736 + f Lnet/minecraft/util/valueproviders/FloatProvider; pitch f comp_2737 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60240 a method_60240 + m ()Lnet/minecraft/core/Holder; soundEvent b comp_2735 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; volume c comp_2736 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; pitch d comp_2737 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/RemoveBinomial daz net/minecraft/class_9728 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51714 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; chance c comp_2738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60241 a method_60241 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; chance b comp_2738 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ReplaceBlock dba net/minecraft/class_9729 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51715 + f Lnet/minecraft/core/Vec3i; offset d comp_2739 + f Ljava/util/Optional; predicate e comp_2740 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState f comp_2741 + f Ljava/util/Optional; triggerGameEvent g comp_2798 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60507 a method_60507 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Ljava/lang/Boolean; method_60242 a method_60242 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60243 a method_60243 + m ()Lnet/minecraft/core/Vec3i; offset b comp_2739 + m ()Ljava/util/Optional; predicate c comp_2740 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState d comp_2741 + m ()Ljava/util/Optional; triggerGameEvent e comp_2798 + m (Lnet/minecraft/core/Vec3i;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ReplaceDisk dbb net/minecraft/class_9730 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51716 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius d comp_2742 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; height e comp_2743 + f Lnet/minecraft/core/Vec3i; offset f comp_2744 + f Ljava/util/Optional; predicate g comp_2745 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState h comp_2746 + f Ljava/util/Optional; triggerGameEvent i comp_2799 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60508 a method_60508 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Ljava/lang/Boolean; method_60244 a method_60244 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60245 a method_60245 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius b comp_2742 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; height c comp_2743 + m ()Lnet/minecraft/core/Vec3i; offset d comp_2744 + m ()Ljava/util/Optional; predicate e comp_2745 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState f comp_2746 + m ()Ljava/util/Optional; triggerGameEvent g comp_2799 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Vec3i;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/RunFunction dbc net/minecraft/class_9731 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51717 + f Lnet/minecraft/resources/ResourceLocation; function d comp_2747 + f Lorg/slf4j/Logger; LOGGER e field_51718 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60246 a method_60246 + m ()Lnet/minecraft/resources/ResourceLocation; function b comp_2747 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SetBlockProperties dbd net/minecraft/class_9732 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51719 + f Lnet/minecraft/world/item/component/BlockItemStateProperties; properties d comp_2748 + f Lnet/minecraft/core/Vec3i; offset e comp_2749 + f Ljava/util/Optional; triggerGameEvent f comp_2800 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60509 a method_60509 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60247 a method_60247 + m ()Lnet/minecraft/world/item/component/BlockItemStateProperties; properties b comp_2748 + m ()Lnet/minecraft/core/Vec3i; offset c comp_2749 + m ()Ljava/util/Optional; triggerGameEvent d comp_2800 + m (Lnet/minecraft/world/item/component/BlockItemStateProperties;)V + p 1 properties + m (Lnet/minecraft/world/item/component/BlockItemStateProperties;Lnet/minecraft/core/Vec3i;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SetValue dbe net/minecraft/class_9733 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51720 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value c comp_2750 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60248 a method_60248 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2750 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect dbf net/minecraft/class_9734 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51721 + f Lnet/minecraft/core/particles/ParticleOptions; particle d comp_2751 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; horizontalPosition e comp_2752 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; verticalPosition f comp_2753 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; horizontalVelocity g comp_2754 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; verticalVelocity h comp_2755 + f Lnet/minecraft/util/valueproviders/FloatProvider; speed i comp_2756 + m (F)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; offsetFromEntityPosition a method_60249 + p 0 offset + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; fixedVelocity a method_60250 + p 0 velocity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60251 a method_60251 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; inBoundingBox b method_60252 + m (F)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; movementScaled b method_60253 + p 0 movementScale + m ()Lnet/minecraft/core/particles/ParticleOptions; particle c comp_2751 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; horizontalPosition d comp_2752 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; verticalPosition e comp_2753 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; horizontalVelocity f comp_2754 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; verticalVelocity g comp_2755 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; speed h comp_2756 + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource;Lnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource dbf$a net/minecraft/class_9734$class_9735 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51722 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; type b comp_2757 + f F offset c comp_2758 + f F scale d comp_2759 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; type a comp_2757 + m (DDFLnet/minecraft/util/RandomSource;)D getCoordinate a method_60254 + p 1 position + p 3 center + p 5 size + p 6 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60255 a method_60255 + m (Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;)Lcom/mojang/serialization/DataResult; method_60256 a method_60256 + m ()F offset b comp_2758 + m ()F scale c comp_2759 + m ()Ljava/lang/String; method_60257 d method_60257 + m (Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType;FF)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType dbf$b net/minecraft/class_9734$class_9736 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; ENTITY_POSITION a field_51723 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; BOUNDING_BOX b field_51724 + f Lcom/mojang/serialization/Codec; CODEC c field_51725 + f Ljava/lang/String; id d field_51726 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource; source e field_51727 + f [Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; $VALUES f field_51728 + m ()[Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; $values a method_60258 + m (DDFLnet/minecraft/util/RandomSource;)D getCoordinate a method_60259 + p 1 position + p 3 center + p 5 size + p 6 random + m (DDFLnet/minecraft/util/RandomSource;)D method_60260 b method_60260 + m (DDFLnet/minecraft/util/RandomSource;)D method_60261 c method_60261 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource;)V + p 3 id + p 4 source + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource dbf$b$a net/minecraft/class_9734$class_9736$class_9737 +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource dbf$c net/minecraft/class_9734$class_9738 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51729 + f F movementScale b comp_2760 + f Lnet/minecraft/util/valueproviders/FloatProvider; base c comp_2761 + m ()F movementScale a comp_2760 + m (DLnet/minecraft/util/RandomSource;)D getVelocity a method_60262 + p 1 scale + p 3 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60263 a method_60263 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; base b comp_2761 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SummonEntityEffect dbg net/minecraft/class_9739 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51730 + f Lnet/minecraft/core/HolderSet; entityTypes d comp_2762 + f Z joinTeam e comp_2763 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60264 a method_60264 + m ()Lnet/minecraft/core/HolderSet; entityTypes b comp_2762 + m ()Z joinTeam c comp_2763 + m (Lnet/minecraft/core/HolderSet;Z)V + m ()V +c net/minecraft/world/item/enchantment/effects/package-info dbh net/minecraft/class_9740 +c net/minecraft/world/item/enchantment/package-info dbi net/minecraft/class_6083 +c net/minecraft/world/item/enchantment/providers/EnchantmentProvider dbj net/minecraft/class_9741 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_51731 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60265 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V enchant a method_60266 + p 1 stack + p 2 enchantments + p 3 random + p 4 difficulty + m ()V +c net/minecraft/world/item/enchantment/providers/EnchantmentProviderTypes dbk net/minecraft/class_9742 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60267 + p 0 registry +c net/minecraft/world/item/enchantment/providers/EnchantmentsByCost dbl net/minecraft/class_9743 + f Lcom/mojang/serialization/MapCodec; CODEC b field_51732 + f Lnet/minecraft/core/HolderSet; enchantments c comp_2764 + f Lnet/minecraft/util/valueproviders/IntProvider; cost d comp_2765 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60268 a method_60268 + m ()Lnet/minecraft/core/HolderSet; enchantments b comp_2764 + m ()Lnet/minecraft/util/valueproviders/IntProvider; cost c comp_2765 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/item/enchantment/providers/EnchantmentsByCostWithDifficulty dbm net/minecraft/class_9744 + f I MAX_ALLOWED_VALUE_PART b field_52056 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51733 + f Lnet/minecraft/core/HolderSet; enchantments d comp_2766 + f I minCost e comp_2767 + f I maxCostSpan f comp_2768 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60269 a method_60269 + m ()Lnet/minecraft/core/HolderSet; enchantments b comp_2766 + m ()I minCost c comp_2767 + m ()I maxCostSpan d comp_2768 + m (Lnet/minecraft/core/HolderSet;II)V + m ()V +c net/minecraft/world/item/enchantment/providers/SingleEnchantment dbn net/minecraft/class_9745 + f Lcom/mojang/serialization/MapCodec; CODEC b field_51734 + f Lnet/minecraft/core/Holder; enchantment c comp_2769 + f Lnet/minecraft/util/valueproviders/IntProvider; level d comp_2770 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60270 a method_60270 + m ()Lnet/minecraft/core/Holder; enchantment b comp_2769 + m ()Lnet/minecraft/util/valueproviders/IntProvider; level c comp_2770 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/item/enchantment/providers/TradeRebalanceEnchantmentProviders dbo net/minecraft/class_9746 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_BOOTS_5 A field_51735 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_HELMET_5 B field_51736 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_BOOTS_4 C field_51737 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_LEGGINGS_4 D field_51738 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_CHESTPLATE_4 E field_51739 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_HELMET_4 F field_51740 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_BOOTS_5 G field_51741 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_HELMET_5 H field_51742 + f Lnet/minecraft/resources/ResourceKey; TRADES_TAIGA_ARMORER_LEGGINGS_5 I field_51743 + f Lnet/minecraft/resources/ResourceKey; TRADES_TAIGA_ARMORER_CHESTPLATE_5 J field_51744 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_BOOTS_4 a field_51745 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_LEGGINGS_4 b field_51746 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_CHESTPLATE_4 c field_51747 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_HELMET_4 d field_51748 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_LEGGINGS_5 e field_51749 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_CHESTPLATE_5 f field_51750 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_BOOTS_4 g field_51751 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_LEGGINGS_4 h field_51752 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_CHESTPLATE_4 i field_51753 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_HELMET_4 j field_51754 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_BOOTS_5 k field_51755 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_LEGGINGS_5 l field_51756 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_BOOTS_4 m field_51757 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_LEGGINGS_4 n field_51758 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_CHESTPLATE_4 o field_51759 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_HELMET_4 p field_51760 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_CHESTPLATE_5 q field_51761 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_HELMET_5 r field_51762 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_BOOTS_4 s field_51763 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_HELMET_4 t field_51764 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_BOOTS_5 u field_51765 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_HELMET_5 v field_51766 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_BOOTS_4 w field_51767 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_LEGGINGS_4 x field_51768 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_CHESTPLATE_4 y field_51769 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_HELMET_4 z field_51770 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60271 + p 0 context + m ()V +c net/minecraft/world/item/enchantment/providers/VanillaEnchantmentProviders dbp net/minecraft/class_9747 + f Lnet/minecraft/resources/ResourceKey; MOB_SPAWN_EQUIPMENT a field_51771 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_SPAWN_CROSSBOW b field_51772 + f Lnet/minecraft/resources/ResourceKey; RAID_PILLAGER_POST_WAVE_3 c field_51773 + f Lnet/minecraft/resources/ResourceKey; RAID_PILLAGER_POST_WAVE_5 d field_51774 + f Lnet/minecraft/resources/ResourceKey; RAID_VINDICATOR e field_51775 + f Lnet/minecraft/resources/ResourceKey; RAID_VINDICATOR_POST_WAVE_5 f field_51776 + f Lnet/minecraft/resources/ResourceKey; ENDERMAN_LOOT_DROP g field_51777 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_60272 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60273 + p 0 context + m ()V +c net/minecraft/world/item/enchantment/providers/package-info dbq net/minecraft/class_9748 +c net/minecraft/world/item/package-info dbr net/minecraft/class_6084 +c net/minecraft/world/item/trading/ItemCost dbs net/minecraft/class_9306 + f Lcom/mojang/serialization/Codec; CODEC a field_49393 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49394 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC c field_49395 + f Lnet/minecraft/core/Holder; item d comp_2424 + f I count e comp_2425 + f Lnet/minecraft/core/component/DataComponentPredicate; components f comp_2426 + f Lnet/minecraft/world/item/ItemStack; itemStack g comp_2427 + m ()Lnet/minecraft/core/Holder; item a comp_2424 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57551 a method_57551 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_57552 + p 1 stack + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/item/trading/ItemCost; withComponents a method_57554 + p 1 components + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;)Lnet/minecraft/world/item/ItemStack; createStack a method_57553 + p 0 item + p 1 count + p 2 componentPredicate + m ()I count b comp_2425 + m ()Lnet/minecraft/core/component/DataComponentPredicate; components c comp_2426 + m ()Lnet/minecraft/world/item/ItemStack; itemStack d comp_2427 + m (Lnet/minecraft/world/level/ItemLike;)V + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)V + p 1 item + p 2 count + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;)V + p 1 item + p 2 count + p 3 componentPredicate + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;Lnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/world/item/trading/Merchant dbt net/minecraft/class_1915 + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17448 a method_17448 + m (Lnet/minecraft/world/entity/player/Player;)V setTradingPlayer a method_8259 + p 1 tradingPlayer + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;I)V openTradingScreen a method_17449 + p 1 player + p 2 displayName + p 3 level + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V notifyTrade a method_8262 + p 1 offer + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V overrideOffers a method_8261 + p 1 offers + m ()Lnet/minecraft/world/entity/player/Player; getTradingPlayer gk method_8257 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers gm method_8264 + m ()Z showProgressBar gn method_19270 + m ()Lnet/minecraft/sounds/SoundEvent; getNotifyTradeSound go method_18010 + m ()Z isClientSide gs method_38069 + m ()Z canRestock gw method_20708 + m (Lnet/minecraft/world/item/ItemStack;)V notifyTradeUpdated n method_8258 + c Notifies the merchant of a possible merchant recipe being fulfilled or not. Usually, this is just a sound byte being played depending on whether the suggested {@link net.minecraft.world.item.ItemStack} is not empty. + p 1 stack + m ()I getVillagerXp t method_19269 + m (I)V overrideXp t method_19271 + p 1 xp +c net/minecraft/world/item/trading/MerchantOffer dbu net/minecraft/class_1914 + f Lcom/mojang/serialization/Codec; CODEC a field_48849 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48371 + f Lnet/minecraft/world/item/trading/ItemCost; baseCostA c field_9146 + c The first input for this offer. + f Ljava/util/Optional; costB d field_9143 + c The second input for this offer. + f Lnet/minecraft/world/item/ItemStack; result e field_9148 + c The output of this offer. + f I uses f field_9147 + f I maxUses g field_9144 + f Z rewardExp h field_9145 + f I specialPriceDiff i field_18676 + f I demand j field_18677 + f F priceMultiplier k field_18678 + f I xp l field_18679 + m ()Lnet/minecraft/world/item/ItemStack; getBaseCostA a method_8246 + m (I)V addToSpecialPriceDiff a method_8245 + p 1 add + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56705 a method_56705 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z satisfiedBy a method_16952 + p 1 playerOfferA + p 2 playerOfferB + m (Lnet/minecraft/world/item/trading/ItemCost;)I getModifiedCostCount a method_57555 + p 1 itemCost + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56707 a method_56707 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/trading/MerchantOffer; createFromStream a method_56110 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/trading/MerchantOffer;)V writeToStream a method_56111 + p 0 buffer + p 1 offer + m ()Lnet/minecraft/world/item/ItemStack; getCostA b method_19272 + m (I)V setSpecialPriceDiff b method_19273 + p 1 price + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z take b method_16953 + p 1 playerOfferA + p 2 playerOfferB + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Float; method_56708 b method_56708 + m ()Lnet/minecraft/world/item/ItemStack; getCostB c method_8247 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56709 c method_56709 + m ()Lnet/minecraft/world/item/trading/ItemCost; getItemCostA d method_57556 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56710 d method_56710 + m ()Ljava/util/Optional; getItemCostB e method_57557 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Boolean; method_56711 e method_56711 + m ()Lnet/minecraft/world/item/ItemStack; getResult f method_8250 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56712 f method_56712 + m ()V updateDemand g method_19274 + c Calculates the demand with following formula: demand = demand + uses - maxUses - uses + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56713 g method_56713 + m ()Lnet/minecraft/world/item/ItemStack; assemble h method_18019 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Lnet/minecraft/world/item/ItemStack; method_56714 h method_56714 + m ()I getUses i method_8249 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/util/Optional; method_56715 i method_56715 + m ()V resetUses j method_19275 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Lnet/minecraft/world/item/trading/ItemCost; method_56716 j method_56716 + m ()I getMaxUses k method_8248 + m ()V increaseUses l method_8244 + m ()I getDemand m method_21725 + m ()V resetSpecialPriceDiff n method_19276 + m ()I getSpecialPriceDiff o method_19277 + m ()F getPriceMultiplier p method_19278 + m ()I getXp q method_19279 + m ()Z isOutOfStock r method_8255 + m ()V setToOutOfStock s method_8254 + m ()Z needsRestock t method_21834 + m ()Z shouldRewardExp u method_8256 + m ()Lnet/minecraft/world/item/trading/MerchantOffer; copy v method_53881 + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIZIIFI)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 rewardExp + p 7 specialPriceDiff + p 8 demand + p 9 priceMultiplier + p 10 xp + m (Lnet/minecraft/world/item/trading/ItemCost;Lnet/minecraft/world/item/ItemStack;IIF)V + p 1 baseCostA + p 2 result + p 3 maxUses + p 4 xp + p 5 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIF)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 maxUses + p 5 xp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIIF)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 xp + p 7 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIIFI)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 xp + p 7 priceMultiplier + p 8 demand + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V + p 1 other + m ()V +c net/minecraft/world/item/trading/MerchantOffers dbv net/minecraft/class_1916 + f Lcom/mojang/serialization/Codec; CODEC a field_48850 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48373 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; copy a method_53882 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/trading/MerchantOffer; getRecipeFor a method_8267 + p 1 stackA + p 2 stackB + p 3 index + m ()V + m (I)V + p 1 size + m (Ljava/util/Collection;)V + p 1 offers + m ()V +c net/minecraft/world/item/trading/package-info dbw net/minecraft/class_6085 +c net/minecraft/world/level/BaseCommandBlock dbx net/minecraft/class_1918 + f Ljava/text/SimpleDateFormat; TIME_FORMAT b field_9169 + c The formatting for the timestamp on commands run. + f Lnet/minecraft/network/chat/Component; DEFAULT_NAME c field_21515 + f J lastExecution d field_9167 + f Z updateLastExecution e field_9166 + f I successCount f field_9163 + c The number of successful commands run. (used for redstone output) + f Z trackOutput g field_9164 + f Lnet/minecraft/network/chat/Component; lastOutput h field_9165 + c The previously run command. + f Ljava/lang/String; command i field_9168 + c The command stored in the command block. + f Lnet/minecraft/network/chat/Component; customName j field_9162 + m (I)V setSuccessCount a method_8298 + p 1 successCount + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; usedBy a method_8288 + p 1 player + m (Lnet/minecraft/world/level/Level;)Z performCommand a method_8301 + p 1 level + m (Ljava/lang/String;)V setCommand a method_8286 + c Sets the command. + p 1 command + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_8297 + p 1 tag + p 2 levelRegistry + m (Z)V setTrackOutput a method_8287 + p 1 shouldTrackOutput + m (ZI)V method_8294 a method_8294 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V load b method_8305 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/network/chat/Component;)V setCustomName b method_8290 + p 1 customName + m (Lnet/minecraft/network/chat/Component;)V setLastOutput c method_8291 + p 1 lastOutputMessage + m ()Lnet/minecraft/server/level/ServerLevel; getLevel e method_8293 + m ()V onUpdated f method_8295 + m ()Lnet/minecraft/world/phys/Vec3; getPosition g method_8300 + m ()Ljava/lang/String; method_8302 h method_8302 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack i method_8303 + m ()Z isValid j method_52175 + m ()I getSuccessCount k method_8304 + c Returns the {@code successCount} int. + m ()Lnet/minecraft/network/chat/Component; getLastOutput l method_8292 + c Returns the lastOutput. + m ()Ljava/lang/String; getCommand m method_8289 + c Returns the command of the command block. + m ()Lnet/minecraft/network/chat/Component; getName n method_8299 + m ()Lnet/minecraft/network/chat/Component; getCustomName o method_57558 + m ()Z isTrackOutput p method_8296 + m ()V + m ()V +c net/minecraft/world/level/BaseSpawner dby net/minecraft/class_1917 + f Lorg/slf4j/Logger; LOGGER a field_9156 + f Ljava/lang/String; SPAWN_DATA_TAG b field_40877 + f I EVENT_SPAWN c field_30951 + f I spawnDelay d field_9154 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentials e field_9152 + f Lnet/minecraft/world/level/SpawnData; nextSpawnData f field_9155 + f D spin g field_9161 + f D oSpin h field_9159 + f I minSpawnDelay i field_9151 + f I maxSpawnDelay j field_9150 + f I spawnCount k field_9149 + f Lnet/minecraft/world/entity/Entity; displayEntity l field_9153 + c Cached instance of the entity to render inside the spawner. + f I maxNearbyEntities m field_9160 + f I requiredPlayerRange n field_9158 + f I spawnRange o field_9157 + m ()D getSpin a method_8278 + m (DDDLnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_18085 a method_18085 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V serverTick a method_31588 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V setEntityId a method_8274 + p 1 type + p 2 level + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/Level;I)Z onEventTriggered a method_8275 + p 1 level + p 2 id + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/SpawnData; getOrCreateNextSpawnData a method_46404 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V clientTick a method_31589 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V broadcastEvent a method_8273 + p 1 level + p 2 pos + p 3 eventId + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_33356 a method_33356 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/SpawnData;)V setNextSpawnData a method_8277 + p 1 level + p 2 pos + p 3 nextSpawnData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V load a method_8280 + p 1 level + p 2 pos + p 3 tag + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_38081 a method_38081 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_8272 + p 1 tag + m ()D getoSpin b method_8279 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; getOrCreateDisplayEntity b method_8283 + p 1 level + p 2 pos + m (Ljava/lang/String;)V method_38080 b method_38080 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isNearPlayer c method_8284 + p 1 level + p 2 pos + m (Ljava/lang/String;)V method_46405 c method_46405 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V delay d method_8282 + p 1 level + p 2 pos + m ()V + m ()V +c net/minecraft/world/level/BlockAndTintGetter dbz net/minecraft/class_1920 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/BlockPos;)I getBrightness a method_8314 + p 1 lightType + p 2 blockPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I getBlockTint a method_23752 + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/core/Direction;Z)F getShade a method_24852 + p 1 direction + p 2 shade + m (Lnet/minecraft/core/BlockPos;I)I getRawBrightness b method_22335 + p 1 blockPos + p 2 amount + m (Lnet/minecraft/core/BlockPos;)Z canSeeSky h method_8311 + p 1 blockPos + m ()Lnet/minecraft/world/level/lighting/LevelLightEngine; getLightEngine y_ method_22336 +c net/minecraft/world/level/BlockCollisions dca net/minecraft/class_5329 + f Lnet/minecraft/world/phys/AABB; box a field_25169 + f Lnet/minecraft/world/phys/shapes/CollisionContext; context b field_25170 + f Lnet/minecraft/core/Cursor3D; cursor c field_25171 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; pos d field_25172 + f Lnet/minecraft/world/phys/shapes/VoxelShape; entityShape e field_25173 + f Lnet/minecraft/world/level/CollisionGetter; collisionGetter f field_25174 + f Z onlySuffocatingBlocks g field_35590 + f Lnet/minecraft/world/level/BlockGetter; cachedBlockGetter h field_35108 + f J cachedBlockGetterPos i field_35109 + f Ljava/util/function/BiFunction; resultProvider j field_44787 + m (II)Lnet/minecraft/world/level/BlockGetter; getChunk a method_29283 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;ZLjava/util/function/BiFunction;)V + p 1 collisionGetter + p 2 entity + p 3 box + p 4 onlySuffocatingBlocks + p 5 resultProvider +c net/minecraft/world/level/BlockEventData dcb net/minecraft/class_1919 + c @param paramA Different for each blockID + f Lnet/minecraft/core/BlockPos; pos a comp_60 + f Lnet/minecraft/world/level/block/Block; block b comp_61 + f I paramA c comp_62 + c Different for each blockID + f I paramB d comp_63 + m ()Lnet/minecraft/core/BlockPos; pos a comp_60 + m ()Lnet/minecraft/world/level/block/Block; block b comp_61 + m ()I paramA c comp_62 + m ()I paramB d comp_63 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V + p 1 pos + p 2 block + p 3 paramA + p 4 paramB +c net/minecraft/world/level/BlockGetter dcc net/minecraft/class_1922 + c

Interface {@link net.fabricmc.fabric.api.blockview.v2.FabricBlockView} injected by mod fabric-block-view-api-v2

+ m ()I getMaxLightLevel Q method_8315 + m (Lnet/minecraft/world/level/ClipBlockStateContext;)Lnet/minecraft/world/phys/BlockHitResult; isBlockInLine a method_32880 + p 1 context + m (Lnet/minecraft/world/level/ClipBlockStateContext;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; method_32881 a method_32881 + m (Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_17742 + c Checks if there's block between {@code from} and {@code to} of context.\nThis uses the collision shape of provided block. + p 1 context + m (Lnet/minecraft/world/level/ClipContext;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; method_17743 a method_17743 + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; getBlockStates a method_29546 + p 1 area + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Ljava/lang/Object; traverseBlocks a method_17744 + p 0 from + p 1 to + p 2 context + p 3 tester + p 4 onFail + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/BlockHitResult; clipWithInteractionOverride a method_17745 + p 1 startVec + p 2 endVec + p 3 pos + p 4 shape + p 5 state + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Ljava/util/function/Supplier;)D getBlockFloorHeight a method_30346 + p 1 shape + p 2 belowShapeSupplier + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Ljava/util/Optional; getBlockEntity a method_35230 + p 1 pos + p 2 blockEntityType + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a_ method_8320 + p 1 pos + m (Lnet/minecraft/world/level/ClipBlockStateContext;)Lnet/minecraft/world/phys/BlockHitResult; method_32882 b method_32882 + m (Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; method_17746 b method_17746 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState; getFluidState b_ method_8316 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity c_ method_8321 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30348 f method_30348 + m (Lnet/minecraft/core/BlockPos;)I getLightEmission i method_8317 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)D getBlockFloorHeight j method_30347 + p 1 pos +c net/minecraft/world/level/ChunkPos dcd net/minecraft/class_1923 + f J INVALID_CHUNK_POS a field_17348 + c Value representing an absent or invalid chunkpos + f Lnet/minecraft/world/level/ChunkPos; ZERO b field_35107 + f I REGION_SIZE c field_38224 + f I REGION_MAX_INDEX d field_38225 + f I x e field_9181 + f I z f field_9180 + f I SAFETY_MARGIN g field_36299 + f J COORD_BITS h field_30953 + f J COORD_MASK i field_30954 + f I REGION_BITS j field_30955 + f I REGION_MASK k field_30956 + f I HASH_A l field_30957 + f I HASH_C m field_30958 + f I HASH_Z_XOR n field_30959 + m ()J toLong a method_8324 + m (I)I getBlockX a method_33939 + p 1 x + m (II)Lnet/minecraft/world/level/ChunkPos; minFromRegion a method_42305 + p 0 chunkX + p 1 chunkZ + m (III)Lnet/minecraft/core/BlockPos; getBlockAt a method_35231 + p 1 xSection + p 2 y + p 3 zSection + m (J)I getX a method_8325 + p 0 chunkAsLong + m (Lnet/minecraft/world/level/ChunkPos;)I getChessboardDistance a method_24022 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Ljava/util/stream/Stream; rangeClosed a method_19280 + p 0 center + p 1 radius + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; rangeClosed a method_19281 + p 0 start + p 1 end + m (Lnet/minecraft/core/BlockPos;)J asLong a method_37232 + p 0 pos + m ()I getMiddleBlockX b method_33940 + m (I)I getBlockZ b method_33941 + p 1 z + m (II)Lnet/minecraft/world/level/ChunkPos; maxFromRegion b method_42306 + p 0 chunkX + p 1 chunkZ + m (J)I getZ b method_8332 + p 0 chunkAsLong + m (Lnet/minecraft/world/level/ChunkPos;)I distanceSquared b method_52566 + p 1 chunkPos + m ()I getMiddleBlockZ c method_33942 + m (I)Lnet/minecraft/core/BlockPos; getMiddleBlockPosition c method_33943 + p 1 y + m (II)J asLong c method_8331 + c Converts the chunk coordinate pair to a long + p 0 x + p 1 z + m (J)I distanceSquared c method_52567 + p 1 packedPos + m ()I getMinBlockX d method_8326 + c Get the first world X coordinate that belongs to this Chunk + m (II)I hash d method_42307 + p 0 x + p 1 z + m ()I getMinBlockZ e method_8328 + c Get the first world Z coordinate that belongs to this Chunk + m (II)I getChessboardDistance e method_60510 + p 1 x + p 2 z + m ()I getMaxBlockX f method_8327 + c Get the last world X coordinate that belongs to this Chunk + m (II)I distanceSquared f method_52568 + p 1 x + p 2 z + m ()I getMaxBlockZ g method_8329 + c Get the last world Z coordinate that belongs to this Chunk + m ()I getRegionX h method_17885 + c Gets the x-coordinate of the region file containing this chunk. + m ()I getRegionZ i method_17886 + c Gets the z-coordinate of the region file containing this chunk. + m ()I getRegionLocalX j method_17887 + c Gets the x-coordinate of this chunk within the region file that contains it. + m ()I getRegionLocalZ k method_17888 + c Gets the z-coordinate of this chunk within the region file that contains it. + m ()Lnet/minecraft/core/BlockPos; getWorldPosition l method_8323 + m (II)V + p 1 x + p 2 y + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (J)V + p 1 packedPos + m ()V +c net/minecraft/world/level/ChunkPos$1 dcd$1 net/minecraft/class_1923$1 + f Lnet/minecraft/world/level/ChunkPos; val$from a field_18680 + f Lnet/minecraft/world/level/ChunkPos; val$to b field_18681 + f I val$zDiff c field_18682 + f I val$xDiff d field_18683 + f Lnet/minecraft/world/level/ChunkPos; pos e field_18684 + m (JILnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;II)V +c net/minecraft/world/level/ClipBlockStateContext dce net/minecraft/class_5702 + f Lnet/minecraft/world/phys/Vec3; from a field_28102 + f Lnet/minecraft/world/phys/Vec3; to b field_28103 + f Ljava/util/function/Predicate; block c field_28104 + m ()Lnet/minecraft/world/phys/Vec3; getTo a method_32883 + m ()Lnet/minecraft/world/phys/Vec3; getFrom b method_32884 + m ()Ljava/util/function/Predicate; isTargetBlock c method_32885 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;)V + p 1 from + p 2 to + p 3 block +c net/minecraft/world/level/ClipContext dcf net/minecraft/class_3959 + f Lnet/minecraft/world/phys/Vec3; from a field_17553 + f Lnet/minecraft/world/phys/Vec3; to b field_17554 + f Lnet/minecraft/world/level/ClipContext$Block; block c field_17555 + f Lnet/minecraft/world/level/ClipContext$Fluid; fluid d field_17556 + f Lnet/minecraft/world/phys/shapes/CollisionContext; collisionContext e field_17557 + m ()Lnet/minecraft/world/phys/Vec3; getTo a method_17747 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockShape a method_17748 + p 1 blockState + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFluidShape a method_17749 + p 1 state + p 2 level + p 3 pos + m ()Lnet/minecraft/world/phys/Vec3; getFrom b method_17750 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/entity/Entity;)V + p 1 from + p 2 to + p 3 block + p 4 fluid + p 5 entity + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/phys/shapes/CollisionContext;)V + p 1 from + p 2 to + p 3 block + p 4 fluid + p 5 collisionContext +c net/minecraft/world/level/ClipContext$Block dcf$a net/minecraft/class_3959$class_3960 + f Lnet/minecraft/world/level/ClipContext$Block; COLLIDER a field_17558 + f Lnet/minecraft/world/level/ClipContext$Block; OUTLINE b field_17559 + f Lnet/minecraft/world/level/ClipContext$Block; VISUAL c field_23142 + f Lnet/minecraft/world/level/ClipContext$Block; FALLDAMAGE_RESETTING d field_36337 + f Lnet/minecraft/world/level/ClipContext$ShapeGetter; shapeGetter e field_17560 + f [Lnet/minecraft/world/level/ClipContext$Block; $VALUES f field_17561 + m ()[Lnet/minecraft/world/level/ClipContext$Block; $values a method_36690 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_40007 a method_40007 + m (Ljava/lang/String;ILnet/minecraft/world/level/ClipContext$ShapeGetter;)V + p 3 shapeGetter + m ()V +c net/minecraft/world/level/ClipContext$Fluid dcf$b net/minecraft/class_3959$class_242 + f Lnet/minecraft/world/level/ClipContext$Fluid; NONE a field_1348 + f Lnet/minecraft/world/level/ClipContext$Fluid; SOURCE_ONLY b field_1345 + f Lnet/minecraft/world/level/ClipContext$Fluid; ANY c field_1347 + f Lnet/minecraft/world/level/ClipContext$Fluid; WATER d field_36338 + f Ljava/util/function/Predicate; canPick e field_1346 + f [Lnet/minecraft/world/level/ClipContext$Fluid; $VALUES f field_1349 + m ()[Lnet/minecraft/world/level/ClipContext$Fluid; $values a method_36691 + m (Lnet/minecraft/world/level/material/FluidState;)Z canPick a method_17751 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)Z method_40008 b method_40008 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_1018 c method_1018 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_1017 d method_1017 + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 canPick + m ()V +c net/minecraft/world/level/ClipContext$ShapeGetter dcf$c net/minecraft/class_3959$class_3961 +c net/minecraft/world/level/CollisionGetter dcg net/minecraft/class_1941 + m ()Lnet/minecraft/world/level/border/WorldBorder; getWorldBorder C_ method_8621 + m (DDDLnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; method_39451 a method_39451 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z noCollision a method_8587 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isUnobstructed a method_8611 + p 1 entity + p 2 shape + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/Vec3;DDD)Ljava/util/Optional; findFreePosition a method_33594 + p 1 entity + p 2 shape + p 3 pos + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Z isUnobstructed a method_8628 + p 1 state + p 2 pos + p 3 context + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/util/stream/Stream; method_39452 a method_39452 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/core/BlockPos; method_51715 a method_51715 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z noBlockCollision b method_52569 + p 1 entity + p 2 boundingBox + m (Lnet/minecraft/world/phys/AABB;)Z noCollision b method_18026 + p 1 collisionBox + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Z method_39453 b method_39453 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_51716 b method_51716 + m (II)Lnet/minecraft/world/level/BlockGetter; getChunkForCollisions c method_22338 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntityCollisions c method_20743 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_51717 c method_51717 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/lang/Iterable; getCollisions d method_8600 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/lang/Iterable; getBlockCollisions e method_20812 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;)Z isUnobstructed f method_8606 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z collidesWithSuffocatingBlock f method_39454 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;)Z noCollision g method_17892 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/Optional; findSupportingBlock g method_51718 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/shapes/VoxelShape; borderCollision h method_39455 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/Iterator; method_39456 i method_39456 +c net/minecraft/world/level/ColorResolver dch net/minecraft/class_6539 +c net/minecraft/world/level/CommonLevelAccessor dci net/minecraft/class_5423 +c net/minecraft/world/level/CustomSpawner dcj net/minecraft/class_5304 + m (Lnet/minecraft/server/level/ServerLevel;ZZ)I tick a method_6445 + p 1 level + p 2 spawnEnemies + p 3 spawnFriendlies +c net/minecraft/world/level/DataPackConfig dck net/minecraft/class_5359 + f Lnet/minecraft/world/level/DataPackConfig; DEFAULT a field_25393 + c This is the default "Vanilla and nothing else" codec. Should have a more distinct name compared to field_234881_b_ + f Lcom/mojang/serialization/Codec; CODEC b field_25394 + f Ljava/util/List; enabled c field_25395 + f Ljava/util/List; disabled d field_25396 + m ()Ljava/util/List; getEnabled a method_29547 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29549 a method_29549 + m (Lnet/minecraft/world/level/DataPackConfig;)Ljava/util/List; method_29548 a method_29548 + m ()Ljava/util/List; getDisabled b method_29550 + m (Lnet/minecraft/world/level/DataPackConfig;)Ljava/util/List; method_29551 b method_29551 + m (Ljava/util/List;Ljava/util/List;)V + p 1 enabled + p 2 disabled + m ()V +c net/minecraft/world/level/EmptyBlockGetter dcl net/minecraft/class_2682 + f Lnet/minecraft/world/level/EmptyBlockGetter; INSTANCE a field_12294 + f [Lnet/minecraft/world/level/EmptyBlockGetter; $VALUES b field_12295 + m ()[Lnet/minecraft/world/level/EmptyBlockGetter; $values a method_36692 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/EntityBasedExplosionDamageCalculator dcm net/minecraft/class_5361 + f Lnet/minecraft/world/entity/Entity; source a field_25399 + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Ljava/lang/Float;)Ljava/lang/Float; method_29552 a method_29552 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 source +c net/minecraft/world/level/EntityGetter dcn net/minecraft/class_1924 + m (DDDD)Z hasNearbyAlivePlayer a method_18458 + p 1 x + p 3 y + p 5 z + p 7 distance + m (DDDDLjava/util/function/Predicate;)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_8604 + p 1 x + p 3 y + p 5 z + p 7 distance + p 9 predicate + m (DDDDZ)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18459 + p 1 x + p 3 y + p 5 z + p 7 distance + p 9 creativePlayers + m (Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18460 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_8333 + c Gets all entities within the specified AABB excluding the one passed into it. + p 1 entity + p 2 area + p 3 predicate + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isUnobstructed a method_8611 + p 1 entity + p 2 shape + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31590 a method_31590 + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;DDD)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18461 + p 1 predicate + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18462 + p 1 predicate + p 2 target + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDD)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18463 + p 1 predicate + p 2 target + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getNearbyPlayers a method_18464 + p 1 predicate + p 2 target + p 3 area + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_18023 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + m (Ljava/lang/Class;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDDLnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/entity/LivingEntity; getNearestEntity a method_21726 + p 1 entityClazz + p 2 conditions + p 3 target + p 4 x + p 6 y + p 8 z + p 10 boundingBox + m (Ljava/lang/Class;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getNearbyEntities a method_18466 + p 1 entityClazz + p 2 entityPredicate + p 3 entity + p 4 area + m (Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntitiesOfClass a method_18467 + p 1 entityClass + p 2 area + m (Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntitiesOfClass a method_8390 + p 1 clazz + p 2 area + p 3 filter + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDD)Lnet/minecraft/world/entity/LivingEntity; getNearestEntity a method_18468 + p 1 entities + p 2 predicate + p 3 target + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntities a_ method_8335 + c Will get all entities within the specified AABB excluding the one passed into it. Args: entityToExclude, aabb + p 1 entity + p 2 area + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31591 b method_31591 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/player/Player; getPlayerByUUID b method_18470 + p 1 uniqueId + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntityCollisions c method_20743 + p 1 entity + p 2 collisionBox + m ()Ljava/util/List; players x method_18456 +c net/minecraft/world/level/Explosion dco net/minecraft/class_1927 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR a field_25818 + f I MAX_DROPS_PER_COMBINED_STACK b field_30960 + f Z fire c field_9186 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; blockInteraction d field_9184 + f Lnet/minecraft/util/RandomSource; random e field_9191 + f Lnet/minecraft/world/level/Level; level f field_9187 + f D x g field_9195 + f D y h field_9192 + f D z i field_9189 + f Lnet/minecraft/world/entity/Entity; source j field_9185 + f F radius k field_9190 + f Lnet/minecraft/world/damagesource/DamageSource; damageSource l field_9193 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; damageCalculator m field_25400 + f Lnet/minecraft/core/particles/ParticleOptions; smallExplosionParticles n field_47328 + f Lnet/minecraft/core/particles/ParticleOptions; largeExplosionParticles o field_47329 + f Lnet/minecraft/core/Holder; explosionSound p field_47330 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; toBlow q field_9188 + f Ljava/util/Map; hitPlayers r field_9194 + m ()F radius a method_55107 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/ExplosionDamageCalculator; makeDamageCalculator a method_29553 + p 1 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; getDefaultDamageSource a method_55108 + p 0 level + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)F getSeenPercent a method_17752 + p 0 explosionVector + p 1 entity + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V addOrAppendStack a method_24023 + p 0 drops + p 1 stack + p 2 pos + m (Z)V finalizeExplosion a method_8350 + c Does the second part of the explosion (sound, particles, drop spawn) + p 1 spawnParticles + m ()Lnet/minecraft/world/phys/Vec3; center b method_55109 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; getIndirectSourceEntityInternal b method_55110 + p 0 source + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V method_24024 b method_24024 + m ()V explode c method_8348 + c Does the first part of the explosion (destroy blocks) + m ()Z interactsWithBlocks d method_46667 + m ()Ljava/util/Map; getHitPlayers e method_8351 + m ()Lnet/minecraft/world/entity/LivingEntity; getIndirectSourceEntity f method_8347 + m ()Lnet/minecraft/world/entity/Entity; getDirectSourceEntity g method_46406 + c Returns either the entity that placed the explosive block, the entity that caused the explosion or null. + m ()V clearToBlow h method_8352 + m ()Ljava/util/List; getToBlow i method_8346 + m ()Lnet/minecraft/world/level/Explosion$BlockInteraction; getBlockInteraction j method_55111 + m ()Lnet/minecraft/core/particles/ParticleOptions; getSmallExplosionParticles k method_55112 + m ()Lnet/minecraft/core/particles/ParticleOptions; getLargeExplosionParticles l method_55113 + m ()Lnet/minecraft/core/Holder; getExplosionSound m method_55114 + m ()Z canTriggerBlocks n method_60274 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFLjava/util/List;Lnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 toBlow + p 11 blockInteraction + p 12 smallExplosionParticles + p 13 largeExplosionParticles + p 14 explosionSound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;Ljava/util/List;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 fire + p 11 blockInteraction + p 12 positions + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 fire + p 11 blockInteraction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 source + p 3 damageSource + p 4 damageCalculator + p 5 x + p 7 y + p 9 z + p 11 radius + p 12 fire + p 13 blockInteraction + p 14 smallExplosionParticles + p 15 largeExplosionParticles + p 16 explosionSound + m ()V +c net/minecraft/world/level/Explosion$BlockInteraction dco$a net/minecraft/class_1927$class_4179 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; KEEP a field_40878 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; DESTROY b field_18687 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; DESTROY_WITH_DECAY c field_40879 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; TRIGGER_BLOCK d field_47331 + f [Lnet/minecraft/world/level/Explosion$BlockInteraction; $VALUES e field_18688 + m ()[Lnet/minecraft/world/level/Explosion$BlockInteraction; $values a method_36693 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/ExplosionDamageCalculator dcp net/minecraft/class_5362 + m (Lnet/minecraft/world/entity/Entity;)F getKnockbackMultiplier a method_57007 + p 1 entity + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;)Z shouldDamageEntity a method_55504 + p 1 explosion + p 2 entity + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)Z shouldBlockExplode a method_29554 + p 1 explosion + p 2 reader + p 3 pos + p 4 state + p 5 power + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Ljava/util/Optional; getBlockExplosionResistance a method_29555 + p 1 explosion + p 2 reader + p 3 pos + p 4 state + p 5 fluid + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;)F getEntityDamageAmount b method_55115 + p 1 explosion + p 2 entity + m ()V +c net/minecraft/world/level/FoliageColor dcq net/minecraft/class_1926 + f [I pixels a field_9183 + m ()I getEvergreenColor a method_8342 + m (DD)I get a method_8344 + p 0 temperature + p 2 humidity + m ([I)V init a method_8340 + p 0 foliageBuffer + m ()I getBirchColor b method_8343 + m ()I getDefaultColor c method_8341 + m ()I getMangroveColor d method_43717 + m ()V + m ()V +c net/minecraft/world/level/ForcedChunksSavedData dcr net/minecraft/class_1932 + f Ljava/lang/String; FILE_ID a field_30961 + f Ljava/lang/String; TAG_FORCED b field_30962 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunks c field_9213 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52570 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getChunks b method_8375 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/ForcedChunksSavedData; load b method_32350 + p 0 tag + p 1 registries + m (Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 chunks + m ()V +c net/minecraft/world/level/GameRules dcs net/minecraft/class_1928 + f Lnet/minecraft/world/level/GameRules$Key; RULE_ANNOUNCE_ADVANCEMENTS A field_19409 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DISABLE_RAIDS B field_19422 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOINSOMNIA C field_20637 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_IMMEDIATE_RESPAWN D field_20638 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_NETHER_PORTAL_DEFAULT_DELAY E field_46794 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_NETHER_PORTAL_CREATIVE_DELAY F field_46795 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DROWNING_DAMAGE G field_20634 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FALL_DAMAGE H field_20635 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FIRE_DAMAGE I field_20636 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FREEZE_DAMAGE J field_28044 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_PATROL_SPAWNING K field_21831 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_TRADER_SPAWNING L field_21832 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_WARDEN_SPAWNING M field_38975 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FORGIVE_DEAD_PLAYERS N field_25401 + f Lnet/minecraft/world/level/GameRules$Key; RULE_UNIVERSAL_ANGER O field_25402 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_SLEEPING_PERCENTAGE P field_28357 + f Lnet/minecraft/world/level/GameRules$Key; RULE_BLOCK_EXPLOSION_DROP_DECAY Q field_40880 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MOB_EXPLOSION_DROP_DECAY R field_40881 + f Lnet/minecraft/world/level/GameRules$Key; RULE_TNT_EXPLOSION_DROP_DECAY S field_40882 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SNOW_ACCUMULATION_HEIGHT T field_40883 + f Lnet/minecraft/world/level/GameRules$Key; RULE_WATER_SOURCE_CONVERSION U field_40884 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LAVA_SOURCE_CONVERSION V field_40885 + f Lnet/minecraft/world/level/GameRules$Key; RULE_GLOBAL_SOUND_EVENTS W field_40886 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_VINES_SPREAD X field_42474 + f Lnet/minecraft/world/level/GameRules$Key; RULE_ENDER_PEARLS_VANISH_ON_DEATH Y field_46176 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPAWN_CHUNK_RADIUS Z field_48374 + f I DEFAULT_RANDOM_TICK_SPEED a field_30963 + f Lorg/slf4j/Logger; LOGGER aa field_19410 + f Ljava/util/Map; GAME_RULE_TYPES ab field_9197 + f Ljava/util/Map; rules ac field_9196 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOFIRETICK b field_19387 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MOBGRIEFING c field_19388 + f Lnet/minecraft/world/level/GameRules$Key; RULE_KEEPINVENTORY d field_19389 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOMOBSPAWNING e field_19390 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOMOBLOOT f field_19391 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PROJECTILESCANBREAKBLOCKS g field_46796 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOBLOCKDROPS h field_19392 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOENTITYDROPS i field_19393 + f Lnet/minecraft/world/level/GameRules$Key; RULE_COMMANDBLOCKOUTPUT j field_19394 + f Lnet/minecraft/world/level/GameRules$Key; RULE_NATURAL_REGENERATION k field_19395 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DAYLIGHT l field_19396 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LOGADMINCOMMANDS m field_19397 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SHOWDEATHMESSAGES n field_19398 + f Lnet/minecraft/world/level/GameRules$Key; RULE_RANDOMTICKING o field_19399 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SENDCOMMANDFEEDBACK p field_19400 + f Lnet/minecraft/world/level/GameRules$Key; RULE_REDUCEDDEBUGINFO q field_19401 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPECTATORSGENERATECHUNKS r field_19402 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPAWN_RADIUS s field_19403 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DISABLE_ELYTRA_MOVEMENT_CHECK t field_19404 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_ENTITY_CRAMMING u field_19405 + f Lnet/minecraft/world/level/GameRules$Key; RULE_WEATHER_CYCLE v field_19406 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LIMITED_CRAFTING w field_19407 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_COMMAND_CHAIN_LENGTH x field_19408 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_COMMAND_FORK_COUNT y field_46658 + f Lnet/minecraft/world/level/GameRules$Key; RULE_COMMAND_MODIFICATION_BLOCK_LIMIT z field_41766 + m ()Lnet/minecraft/nbt/CompoundTag; createTag a method_8358 + c Return the defined game rules as NBT. + m (Lcom/mojang/serialization/DynamicLike;)V loadFromTag a method_8357 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicLike;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)V method_20747 a method_20747 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;)V visitGameRuleTypes a method_20744 + p 0 visitor + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V callVisitorCap a method_20745 + p 0 visitor + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;)Lnet/minecraft/world/level/GameRules$Value; getRule a method_20746 + p 1 key + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;)V assignCap a method_27321 + p 1 key + p 2 rules + p 3 server + m (Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;)V assignFrom a method_27322 + p 1 rules + p 2 server + m (Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$Key;)V method_27323 a method_27323 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameRules$Category;Lnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$Key; register a method_8359 + p 0 name + p 1 category + p 2 type + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/level/GameRules$Value; method_27324 a method_27324 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_53838 a method_53838 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$IntegerValue;)V method_56113 a method_56113 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)V method_20751 a method_20751 + m ()Lnet/minecraft/world/level/GameRules; copy b method_27325 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V method_20750 b method_20750 + m (Lnet/minecraft/world/level/GameRules$Key;)Z getBoolean b method_8355 + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/level/GameRules$Value; method_20748 b method_20748 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_53839 b method_53839 + m (Lnet/minecraft/world/level/GameRules$Key;)I getInt c method_8356 + p 1 key + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_8361 c method_8361 + m (Lnet/minecraft/world/level/GameRules$Key;)Ljava/lang/String; method_20752 d method_20752 + m (Lcom/mojang/serialization/DynamicLike;)V + p 1 tag + m ()V + m (Ljava/util/Map;)V + p 1 rules + m ()V +c net/minecraft/world/level/GameRules$BooleanValue dcs$a net/minecraft/class_1928$class_4310 + f Z value b field_19411 + m ()Z get a method_20753 + m (Lnet/minecraft/world/level/GameRules$BooleanValue;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27326 + p 1 value + p 2 server + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_20754 a method_20754 + m (Z)Lnet/minecraft/world/level/GameRules$Type; create a method_20759 + p 0 defaultValue + m (ZLnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$BooleanValue; method_20756 a method_20756 + m (ZLjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_20760 + p 0 defaultValue + p 1 changeListener + m (ZLnet/minecraft/server/MinecraftServer;)V set a method_20758 + p 1 value + p 2 server + m ()Lnet/minecraft/world/level/GameRules$BooleanValue; getSelf d method_20761 + m ()Lnet/minecraft/world/level/GameRules$BooleanValue; copy e method_27327 + m (Lnet/minecraft/world/level/GameRules$Type;Z)V + p 1 type + p 2 value +c net/minecraft/world/level/GameRules$Category dcs$b net/minecraft/class_1928$class_5198 + f Lnet/minecraft/world/level/GameRules$Category; PLAYER a field_24094 + f Lnet/minecraft/world/level/GameRules$Category; MOBS b field_24095 + f Lnet/minecraft/world/level/GameRules$Category; SPAWNING c field_24096 + f Lnet/minecraft/world/level/GameRules$Category; DROPS d field_24097 + f Lnet/minecraft/world/level/GameRules$Category; UPDATES e field_24098 + f Lnet/minecraft/world/level/GameRules$Category; CHAT f field_24099 + f Lnet/minecraft/world/level/GameRules$Category; MISC g field_24100 + f Ljava/lang/String; descriptionId h field_24101 + f [Lnet/minecraft/world/level/GameRules$Category; $VALUES i field_24102 + m ()Ljava/lang/String; getDescriptionId a method_27328 + m ()[Lnet/minecraft/world/level/GameRules$Category; $values b method_36694 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 descriptionId + m ()V +c net/minecraft/world/level/GameRules$GameRuleTypeVisitor dcs$c net/minecraft/class_1928$class_4311 + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visit a method_20762 + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visitBoolean b method_27329 + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visitInteger c method_27330 + p 1 key + p 2 type +c net/minecraft/world/level/GameRules$IntegerValue dcs$d net/minecraft/class_1928$class_4312 + f I value b field_19412 + m ()I get a method_20763 + m (I)Lnet/minecraft/world/level/GameRules$Type; create a method_20768 + p 0 defaultValue + m (II)Lcom/mojang/brigadier/arguments/ArgumentType; method_56114 a method_56114 + m (IIILjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_56115 + p 0 defaultValue + p 1 min + p 2 max + p 3 changeListener + m (ILnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$IntegerValue; method_56116 a method_56116 + m (ILjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_20766 + p 0 defaultValue + p 1 changeListener + m (ILnet/minecraft/server/MinecraftServer;)V set a method_35236 + p 1 value + p 2 server + m (Lnet/minecraft/world/level/GameRules$IntegerValue;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27331 + p 1 value + p 2 server + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$IntegerValue;)V method_20767 a method_20767 + m (ILnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$IntegerValue; method_20765 b method_20765 + m (Ljava/lang/String;)Z tryDeserialize b method_27332 + p 1 name + m (Ljava/lang/String;)I safeParse c method_20769 + p 0 strValue + m ()Lnet/minecraft/world/level/GameRules$IntegerValue; getSelf d method_20770 + m ()Lnet/minecraft/world/level/GameRules$IntegerValue; copy e method_27333 + m (Lnet/minecraft/world/level/GameRules$Type;I)V + p 1 type + p 2 value +c net/minecraft/world/level/GameRules$Key dcs$e net/minecraft/class_1928$class_4313 + f Ljava/lang/String; id a field_19413 + f Lnet/minecraft/world/level/GameRules$Category; category b field_24103 + m ()Ljava/lang/String; getId a method_20771 + m ()Ljava/lang/String; getDescriptionId b method_27334 + m ()Lnet/minecraft/world/level/GameRules$Category; getCategory c method_27335 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameRules$Category;)V + p 1 id + p 2 category +c net/minecraft/world/level/GameRules$Type dcs$f net/minecraft/class_1928$class_4314 + f Ljava/util/function/Supplier; argument a field_19414 + f Ljava/util/function/Function; constructor b field_19415 + f Ljava/util/function/BiConsumer; callback c field_19416 + f Lnet/minecraft/world/level/GameRules$VisitorCaller; visitorCaller d field_24104 + m ()Lnet/minecraft/world/level/GameRules$Value; createRule a method_20773 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;)V callVisitor a method_27336 + p 1 visitor + p 2 key + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/RequiredArgumentBuilder; createArgument a method_20775 + p 1 name + m (Ljava/util/function/Supplier;Ljava/util/function/Function;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/GameRules$VisitorCaller;)V + p 1 argument + p 2 constructor + p 3 callback + p 4 visitorCaller +c net/minecraft/world/level/GameRules$Value dcs$g net/minecraft/class_1928$class_4315 + f Lnet/minecraft/world/level/GameRules$Type; type a field_19417 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)V updateFromArgument a method_20776 + p 1 context + p 2 paramName + m (Lnet/minecraft/world/level/GameRules$Value;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27337 + p 1 value + p 2 server + m (Ljava/lang/String;)V deserialize a method_20777 + p 1 value + m (Lnet/minecraft/server/MinecraftServer;)V onChanged a method_20778 + p 1 server + m ()Ljava/lang/String; serialize b method_20779 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)V setFromArgument b method_20780 + p 1 context + p 2 paramName + m ()I getCommandResult c method_20781 + m ()Lnet/minecraft/world/level/GameRules$Value; copy f method_27338 + m ()Lnet/minecraft/world/level/GameRules$Value; getSelf g method_20782 + m (Lnet/minecraft/world/level/GameRules$Type;)V + p 1 type +c net/minecraft/world/level/GameRules$VisitorCaller dcs$h net/minecraft/class_1928$class_5199 +c net/minecraft/world/level/GameType dct net/minecraft/class_1934 + f Lnet/minecraft/world/level/GameType; SURVIVAL a field_9215 + f Lnet/minecraft/world/level/GameType; CREATIVE b field_9220 + f Lnet/minecraft/world/level/GameType; ADVENTURE c field_9216 + f Lnet/minecraft/world/level/GameType; SPECTATOR d field_9219 + f Lnet/minecraft/world/level/GameType; DEFAULT_MODE e field_28045 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC f field_41676 + f Ljava/util/function/IntFunction; BY_ID g field_41677 + f I NOT_SET h field_30964 + f I id i field_9217 + f Ljava/lang/String; name j field_9221 + f Lnet/minecraft/network/chat/Component; shortName k field_28046 + f Lnet/minecraft/network/chat/Component; longName l field_28047 + f [Lnet/minecraft/world/level/GameType; $VALUES m field_9222 + m ()I getId a method_8379 + c Returns the ID of this game type + m (I)Lnet/minecraft/world/level/GameType; byId a method_8384 + c Gets the game type by its ID. Will be survival if none was found. + p 0 id + m (Lnet/minecraft/world/entity/player/Abilities;)V updatePlayerAbilities a method_8382 + c Configures the player abilities based on the game type + p 1 abilities + m (Lnet/minecraft/world/level/GameType;)I getNullableId a method_32761 + p 0 gameType + m (Ljava/lang/String;)Lnet/minecraft/world/level/GameType; byName a method_8385 + c Gets the game type registered with the specified name. If no matches were found, survival will be returned. + p 0 gamemodeName + m (Ljava/lang/String;Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/GameType; byName a method_8378 + p 0 targetName + p 1 fallback + m ()Ljava/lang/String; getName b method_8381 + c Returns the name of this game type + m (I)Lnet/minecraft/world/level/GameType; byNullableId b method_32762 + p 0 id + m ()Lnet/minecraft/network/chat/Component; getLongDisplayName d method_8383 + m ()Lnet/minecraft/network/chat/Component; getShortDisplayName e method_32763 + m ()Z isBlockPlacingRestricted f method_8387 + c Returns {@code true} if this is the ADVENTURE game type + m ()Z isCreative g method_8386 + c Returns {@code true} if this is the CREATIVE game type + m ()Z isSurvival h method_8388 + c Returns {@code true} if this is the SURVIVAL or ADVENTURE game type + m ()[Lnet/minecraft/world/level/GameType; $values i method_36695 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/level/GrassColor dcu net/minecraft/class_1933 + f [I pixels a field_9214 + m ()I getDefaultColor a method_49724 + m (DD)I get a method_8377 + p 0 temperature + p 2 humidity + m ([I)V init a method_8376 + p 0 grassBuffer + m ()V + m ()V +c net/minecraft/world/level/ItemLike dcv net/minecraft/class_1935 + m ()Lnet/minecraft/world/item/Item; asItem r method_8389 +c net/minecraft/world/level/Level dcw net/minecraft/class_1937 + f Lnet/minecraft/world/level/storage/WritableLevelData; levelData A field_9232 + f Z isClientSide B field_9236 + f Lnet/minecraft/core/Holder; dimensionTypeRegistration D field_36402 + f Ljava/util/function/Supplier; profiler E field_16316 + f Lnet/minecraft/world/level/border/WorldBorder; worldBorder F field_9223 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager G field_20639 + f Lnet/minecraft/resources/ResourceKey; dimension H field_25176 + f Lnet/minecraft/core/RegistryAccess; registryAccess I field_42475 + f Lnet/minecraft/world/damagesource/DamageSources; damageSources J field_42476 + f J subTickCount K field_35455 + f Ljava/util/List; pendingBlockEntityTickers a field_27081 + f Z tickingBlockEntities b field_9249 + f Ljava/lang/Thread; thread c field_17086 + f Z isDebug d field_24496 + f I skyDarken e field_9226 + f Lnet/minecraft/util/RandomSource; threadSafeRandom f field_38861 + f Lcom/mojang/serialization/Codec; RESOURCE_KEY_CODEC g field_25178 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD h field_25179 + f Lnet/minecraft/resources/ResourceKey; NETHER i field_25180 + f Lnet/minecraft/resources/ResourceKey; END j field_25181 + f I MAX_LEVEL_SIZE k field_30965 + f I LONG_PARTICLE_CLIP_RANGE l field_30966 + f I SHORT_PARTICLE_CLIP_RANGE m field_30967 + f I MAX_BRIGHTNESS n field_30968 + f I TICKS_PER_DAY o field_30969 + f I MAX_ENTITY_SPAWN_Y p field_30970 + f I MIN_ENTITY_SPAWN_Y q field_30971 + f Ljava/util/List; blockEntityTickers r field_27082 + f Lnet/minecraft/world/level/redstone/NeighborUpdater; neighborUpdater s field_38226 + f I randValue t field_9256 + c Contains the current Linear Congruential Generator seed for block updates. Used with an A value of 3 and a C value of 0x3c6ef35f, producing a highly planar series of values ill-suited for choosing random blocks in a 16x128x16 field. + f I addend u field_9238 + f F oRainLevel v field_9253 + f F rainLevel w field_9235 + f F oThunderLevel x field_9251 + f F thunderLevel y field_9234 + f Lnet/minecraft/util/RandomSource; random z field_9229 + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntities G method_31592 + m ()Ljava/lang/String; gatherChunkSourceStats I method_31419 + c Returns the name of the current chunk provider, by calling chunkprovider.makeString() + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing K method_59547 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard M method_8428 + m ()Z isDay R method_8530 + c Checks whether its daytime by seeing if the light subtracted from the skylight is less than 4. Always returns true on the client because vanilla has no need for it on the client, therefore it is not synced to the client + m ()Z isNight S method_23886 + m ()V tickBlockEntities T method_18471 + m ()V updateSkyBrightness U method_8533 + c Called on the construction of the {@code Level} class to set up the initial skylight values. + m ()Lnet/minecraft/core/BlockPos; getSharedSpawnPos V method_43126 + m ()F getSharedSpawnAngle W method_43127 + m ()V prepareWeather X method_8543 + c Called from World constructor to set rainingStrength and thunderingStrength + m ()V disconnect Y method_8525 + c If on MP, sends a quitting packet. + m ()J getGameTime Z method_8510 + m ()Ljava/lang/String; method_20783 a method_20783 + m (DDDDDDLjava/util/List;)V createFireworks a method_8547 + p 1 x + p 3 y + p 5 z + p 7 xSpeed + p 9 ySpeed + p 11 zSpeed + p 13 explosions + m (DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZ)V playLocalSound a method_8486 + p 1 x + p 3 y + p 5 z + p 7 sound + p 8 category + p 9 volume + p 10 pitch + p 11 distanceDelay + m (F)F getSunAngle a method_8442 + c Return getCelestialAngle()*2*PI + p 1 partialTicks + m (I)Lnet/minecraft/world/entity/Entity; getEntity a method_8469 + c Returns the Entity with the given ID, or null if it doesn't exist in this Level. + p 1 id + m (IIII)Lnet/minecraft/core/BlockPos; getBlockRandomPos a method_8536 + p 1 x + p 2 y + p 3 z + p 4 yMask + m (ILnet/minecraft/core/BlockPos;I)V destroyBlockProgress a method_8517 + p 1 breakerId + p 2 pos + p 3 progress + m (J)Z shouldTickBlocksAt a method_39425 + p 1 chunkPos + m (Lnet/minecraft/world/entity/Entity;B)V broadcastEntityEvent a method_8421 + c Sends a {@link net.minecraft.network.protocol.game.ClientboundEntityEventPacket} to all tracked players of that entity. + p 1 entity + p 2 state + m (Lnet/minecraft/world/entity/Entity;DDDFLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_8437 + p 1 source + p 2 x + p 4 y + p 6 z + p 8 radius + p 9 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_8537 + p 1 source + p 2 x + p 4 y + p 6 z + p 8 radius + p 9 fire + p 10 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playLocalSound a method_55116 + p 1 entity + p 2 sound + p 3 category + p 4 volume + p 5 pitch + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V broadcastDamageEvent a method_48760 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_55117 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/Explosion; explode a method_8454 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + p 13 smallExplosionParticles + p 14 largeExplosionParticles + p 15 explosionSound + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;ZLnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/Explosion; explode a method_46668 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + p 13 spawnParticles + p 14 smallExplosionParticles + p 15 largeExplosionParticles + p 16 explosionSound + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;Lnet/minecraft/world/phys/Vec3;FZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_46407 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 pos + p 5 radius + p 6 fire + p 7 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Ljava/util/List;Lnet/minecraft/world/entity/Entity;)V method_31593 a method_31593 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_45445 + p 1 entity + p 2 pos + p 3 sound + p 4 category + p 5 volume + p 6 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V playSound a method_54762 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_43128 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_47967 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + p 12 seed + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_60511 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_8465 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + p 12 seed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_43129 + p 1 player + p 2 entity + p 3 event + p 4 category + p 5 volume + p 6 pitch + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_8449 + p 1 player + p 2 entity + p 3 sound + p 4 category + p 5 volume + p 6 pitch + p 7 seed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;)Z mayInteract a method_8505 + p 1 player + p 2 pos + m (Lnet/minecraft/world/level/GameRules$Key;)Lnet/minecraft/world/level/Explosion$BlockInteraction; getDestroyType a method_46669 + p 1 gameRule + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V setBlockEntity a method_8438 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V addBlockEntityTicker a method_31594 + p 1 ticker + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_41410 + p 1 state + p 2 pos + p 3 block + p 4 fromPos + p 5 isMoving + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;Ljava/util/List;)V getEntities a method_47574 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + p 4 output + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;Ljava/util/List;I)V getEntities a method_47575 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + p 4 output + p 5 maxResults + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getMapData a method_17891 + p 1 mapId + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V setMapData a method_17890 + p 1 mapId + p 2 mapData + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/Entity;)V guardEntityTick a method_18472 + p 1 consumerEntity + p 2 entity + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47576 a method_47576 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZ)V playLocalSound a method_45446 + p 1 pos + p 2 sound + p 3 category + p 4 volume + p 5 pitch + p 6 distanceDelay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z loadedAndEntityCanStandOn a method_8515 + p 1 pos + p 2 entity + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;)Z loadedAndEntityCanStandOnFace a method_24368 + p 1 pos + p 2 entity + p 3 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateNeighborsAt a method_8452 + p 1 pos + p 2 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V blockEvent a method_8427 + p 1 pos + p 2 block + p 3 eventID + p 4 eventParam + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V neighborChanged a method_8492 + p 1 pos + p 2 block + p 3 fromPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V updateNeighborsAtExceptFromFacing a method_8508 + p 1 pos + p 2 blockType + p 3 skipSide + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V addDestroyBlockEffect a method_31595 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V onBlockStateChange a method_19282 + p 1 pos + p 2 blockState + p 3 newState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;I)V sendBlockUpdated a method_8413 + c Flags are as in setBlockState + p 1 pos + p 2 oldState + p 3 newState + p 4 flags + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addParticle a method_8466 + p 1 particleData + p 2 forceAlwaysRender + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReportCategory; fillReportDetails a method_8538 + c Adds some basic stats of the world to the given crash report. + p 1 report + m (Lnet/minecraft/network/protocol/Packet;)V sendPacketToServer a method_8522 + p 1 packet + m ()J getDayTime aa method_8532 + m ()Lnet/minecraft/world/level/GameRules; getGameRules ab method_8450 + c Gets the GameRules instance. + m ()Z isThundering ac method_8546 + c Returns {@code true} if the current thunder strength (weighted with the rain strength) is greater than 0.9 + m ()Z isRaining ad method_8419 + c Returns {@code true} if the current rain strength is greater than 0.2 + m ()Lnet/minecraft/core/Holder; dimensionTypeRegistration ae method_40134 + m ()Lnet/minecraft/resources/ResourceKey; dimension af method_27983 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler ag method_16107 + m ()Ljava/util/function/Supplier; getProfilerSupplier ah method_24367 + m ()Z isDebug ai method_27982 + m ()Lnet/minecraft/world/damagesource/DamageSources; damageSources aj method_48963 + m (F)F getThunderLevel b method_8478 + p 1 delta + m (I)Z isOutsideSpawnableHeight b method_25952 + p 0 y + m (ILnet/minecraft/core/BlockPos;I)V globalLevelEvent b method_8474 + p 1 id + p 2 pos + p 3 data + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z setBlockAndUpdate b method_8501 + c Convenience method to update the block on both the client and server + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V setBlocksDirty b method_16109 + p 1 blockPos + p 2 oldState + p 3 newState + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addAlwaysVisibleParticle b method_8494 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addAlwaysVisibleParticle b method_17452 + p 1 particleData + p 2 ignoreRange + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (ZZ)V setSpawnSettings b method_8424 + c First boolean for hostile mobs and second for peaceful mobs + p 1 hostile + p 2 peaceful + m (F)V setThunderLevel c method_8496 + c Sets the strength of the thunder. + p 1 strength + m (I)V setSkyFlashTime c method_8509 + p 1 timeFlash + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateNeighbourForOutputSignal c method_8455 + p 1 pos + p 2 block + m (F)F getRainLevel d method_8430 + c Returns rain strength. + p 1 delta + m (II)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk d method_8497 + p 1 chunkX + p 2 chunkZ + m (F)V setRainLevel e method_8519 + c Sets the strength of the rain. + p 1 strength + m (Lnet/minecraft/core/BlockPos;)Z isInWorldBoundsHorizontal g method_8558 + p 0 pos + m (Lnet/minecraft/world/entity/Entity;)Z shouldTickDeath h method_38989 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isInWorldBounds k method_24794 + c Check if the given BlockPos has valid coordinates + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isInSpawnableBounds l method_25953 + p 0 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkAt m method_8500 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z shouldTickBlocksAt n method_41411 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntity o method_8544 + p 1 pos + m ()Ljava/lang/String; method_8484 p method_8484 + m (Lnet/minecraft/core/BlockPos;)Z isLoaded p method_8477 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V blockEntityChanged q method_8524 + p 1 pos + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager r method_8433 + m (Lnet/minecraft/core/BlockPos;)Z isRainingAt r method_8520 + c Check if precipitation is currently happening at a position + p 1 pos + m ()Lnet/minecraft/world/TickRateManager; tickRateManager s method_54719 + m ()Z noSave t method_8458 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; getFreeMapId v method_17889 + m (Lnet/minecraft/world/level/storage/WritableLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/Holder;Ljava/util/function/Supplier;ZZJI)V + p 1 levelData + p 2 dimension + p 3 registryAccess + p 4 dimensionTypeRegistration + p 5 profiler + p 6 isClientSide + p 7 isDebug + p 8 biomeZoomSeed + p 10 maxChainedNeighborUpdates + m ()V +c net/minecraft/world/level/Level$1 dcw$1 net/minecraft/class_1937$1 + f Lnet/minecraft/world/level/dimension/DimensionType; val$dimensionType a field_39310 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/dimension/DimensionType;)V +c net/minecraft/world/level/Level$ExplosionInteraction dcw$a net/minecraft/class_1937$class_7867 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; NONE a field_40888 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; BLOCK b field_40889 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; MOB c field_40890 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; TNT d field_40891 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; TRIGGER e field_51779 + f Lcom/mojang/serialization/Codec; CODEC f field_51780 + f Ljava/lang/String; id g field_51781 + f [Lnet/minecraft/world/level/Level$ExplosionInteraction; $VALUES h field_40892 + m ()[Lnet/minecraft/world/level/Level$ExplosionInteraction; $values a method_46670 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/LevelAccessor dcx net/minecraft/class_1936 + m ()Lnet/minecraft/world/level/storage/LevelData; getLevelData A_ method_8401 + c Returns the world's WorldInfo object + m ()Lnet/minecraft/util/RandomSource; getRandom E_ method_8409 + m ()J nextSubTickCount G_ method_39224 + m ()Lnet/minecraft/world/level/chunk/ChunkSource; getChunkSource N method_8398 + c Gets the world's chunk provider + m ()Lnet/minecraft/world/ticks/LevelTickAccess; getFluidTicks O method_8405 + m ()Lnet/minecraft/world/ticks/LevelTickAccess; getBlockTicks P method_8397 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_55764 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V gameEvent a method_43275 + p 1 entity + p 2 gameEvent + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)V gameEvent a method_33596 + p 1 entity + p 2 gameEvent + p 3 pos + m (Lnet/minecraft/world/entity/player/Player;ILnet/minecraft/core/BlockPos;I)V levelEvent a method_8444 + p 1 player + p 2 type + p 3 pos + p 4 data + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V playSound a method_45447 + p 1 player + p 2 pos + p 3 sound + p 4 source + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_8396 + c Plays a sound. On the server, the sound is broadcast to all nearby except the given player. On the client, the sound only plays if the given player is the client player. Thus, this method is intended to be called from code running on both sides. The client plays it locally and the server plays it for everyone else. + p 1 player + p 2 pos + p 3 sound + p 4 source + p 5 volume + p 6 pitch + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;I)V scheduleTick a method_39279 + p 1 pos + p 2 block + p 3 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;ILnet/minecraft/world/ticks/TickPriority;)V scheduleTick a method_39280 + p 1 pos + p 2 block + p 3 delay + p 4 priority + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;I)V scheduleTick a method_39281 + p 1 pos + p 2 fluid + p 3 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;ILnet/minecraft/world/ticks/TickPriority;)V scheduleTick a method_39282 + p 1 pos + p 2 fluid + p 3 delay + p 4 priority + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;I)Lnet/minecraft/world/ticks/ScheduledTick; createTick a method_39283 + p 1 pos + p 2 type + p 3 delay + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;ILnet/minecraft/world/ticks/TickPriority;)Lnet/minecraft/world/ticks/ScheduledTick; createTick a method_39284 + p 1 pos + p 2 type + p 3 delay + p 4 priority + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V neighborShapeChanged a method_42308 + p 1 direction + p 2 queried + c The block state of the current block + p 3 pos + c The position of the neighbor block + p 4 offsetPos + c The position of the current block + p 5 flags + p 6 recursionLevel + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_32888 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_43276 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addParticle a method_8406 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Lnet/minecraft/world/Difficulty; getDifficulty al method_8407 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V blockUpdated b method_8408 + p 1 pos + p 2 block + m (ILnet/minecraft/core/BlockPos;I)V levelEvent c method_20290 + p 1 type + p 2 pos + p 3 data + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/DifficultyInstance; getCurrentDifficultyAt d_ method_8404 + p 1 pos + m ()Lnet/minecraft/server/MinecraftServer; getServer o method_8503 +c net/minecraft/world/level/LevelHeightAccessor dcy net/minecraft/class_5539 + m ()I getMinBuildHeight I_ method_31607 + m ()I getHeight J_ method_31605 + m ()I getMaxBuildHeight am method_31600 + m ()I getSectionsCount an method_32890 + m ()I getMinSection ao method_32891 + m ()I getMaxSection ap method_31597 + m (I)Z isOutsideBuildHeight d method_31601 + p 1 y + m (I)I getSectionIndex e method_31602 + p 1 y + m (II)Lnet/minecraft/world/level/LevelHeightAccessor; create e method_39034 + p 0 minBuildHeight + p 1 height + m (I)I getSectionIndexFromSectionY f method_31603 + p 1 sectionIndex + m (I)I getSectionYFromSectionIndex g method_31604 + p 1 sectionIndex + m (Lnet/minecraft/core/BlockPos;)Z isOutsideBuildHeight s method_31606 + p 1 pos +c net/minecraft/world/level/LevelHeightAccessor$1 dcy$1 net/minecraft/class_5539$1 + f I val$height a field_35180 + f I val$minBuildHeight b field_35181 + m (II)V +c net/minecraft/world/level/LevelReader dcz net/minecraft/class_4538 + m (Lnet/minecraft/core/BlockPos;)I getMaxLocalRawBrightness A method_22339 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z hasChunkAt B method_22340 + p 1 pos + m ()I getSkyDarken B_ method_8594 + m ()Lnet/minecraft/world/level/dimension/DimensionType; dimensionType D_ method_8597 + m ()Lnet/minecraft/world/level/biome/BiomeManager; getBiomeManager F_ method_22385 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess H_ method_30349 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures J method_45162 + m (II)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_8392 + p 1 chunkX + p 2 chunkZ + m (III)Lnet/minecraft/core/Holder; getUncachedNoiseBiome a method_22387 + p 1 x + p 2 y + p 3 z + m (IIIIII)Z hasChunksAt a method_22341 + p 1 fromX + p 2 fromY + p 3 fromZ + p 4 toX + p 5 toY + p 6 toZ + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_22342 + p 1 chunkX + p 2 chunkZ + p 3 chunkStatus + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_8402 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup; holderLookup a method_45448 + p 1 registryKey + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_8624 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getHeightmapPos a method_8598 + p 1 heightmapType + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z hasChunksAt a method_22343 + p 1 from + p 2 to + m (II)Z hasChunk b method_8393 + p 1 chunkX + p 2 chunkZ + m (IIII)Z hasChunksAt b method_33597 + p 1 fromX + p 2 fromZ + p 3 toX + p 4 toZ + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; getBlockStatesIfLoaded c method_29556 + p 1 aabb + m (Lnet/minecraft/core/BlockPos;I)I getMaxLocalRawBrightness c method_22346 + p 1 pos + p 2 amount + m (Lnet/minecraft/world/phys/AABB;)Z containsAnyLiquid d method_22345 + c Checks if any of the blocks within the aabb are liquids. + p 1 bb + m (II)Z hasChunkAt f method_33598 + p 1 x + p 2 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getBiome t method_23753 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isEmptyBlock u method_22347 + c Checks to see if an air block exists at the provided location. Note that this only checks to see if the blocks material is set to air, meaning it is possible for non-vanilla blocks to still pass this check. + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z canSeeSkyFromBelowWater v method_22348 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)F getPathfindingCostFromLightLevels w method_42309 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)F getLightLevelDependentMagicValue x method_22349 + p 1 pos + m ()Z isClientSide x_ method_8608 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk y method_22350 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isWaterAt z method_22351 + p 1 pos + m ()I getSeaLevel z_ method_8615 +c net/minecraft/world/level/LevelSettings dda net/minecraft/class_1940 + f Ljava/lang/String; levelName a field_24105 + f Lnet/minecraft/world/level/GameType; gameType b field_9257 + f Z hardcore c field_9262 + f Lnet/minecraft/world/Difficulty; difficulty d field_24106 + f Z allowCommands e field_9261 + f Lnet/minecraft/world/level/GameRules; gameRules f field_24107 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration g field_25403 + m ()Ljava/lang/String; levelName a method_27339 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/world/level/LevelSettings; withDifficulty a method_28381 + p 1 difficulty + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/world/level/LevelSettings; parse a method_28383 + p 0 levelData + p 1 dataConfiguration + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/LevelSettings; withGameType a method_28382 + p 1 gameType + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/world/level/LevelSettings; withDataConfiguration a method_29557 + p 1 dataConfiguration + m (Ljava/lang/Number;)Lnet/minecraft/world/Difficulty; method_28384 a method_28384 + m ()Lnet/minecraft/world/level/GameType; gameType b method_8574 + m ()Z hardcore c method_8583 + m ()Lnet/minecraft/world/Difficulty; difficulty d method_27340 + m ()Z allowCommands e method_8582 + m ()Lnet/minecraft/world/level/GameRules; gameRules f method_27341 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; getDataConfiguration g method_29558 + m ()Lnet/minecraft/world/level/LevelSettings; copy h method_28385 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameType;ZLnet/minecraft/world/Difficulty;ZLnet/minecraft/world/level/GameRules;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 levelName + p 2 gameType + p 3 hardcore + p 4 difficulty + p 5 allowCommands + p 6 gameRules + p 7 dataConfiguration +c net/minecraft/world/level/LevelSimulatedRW ddb net/minecraft/class_3747 +c net/minecraft/world/level/LevelSimulatedReader ddc net/minecraft/class_3746 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getHeightmapPos a method_8598 + p 1 heightmapType + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Ljava/util/Optional; getBlockEntity a method_35230 + p 1 pos + p 2 type + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z isStateAtPosition a method_16358 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z isFluidAtPosition b method_35237 + p 1 pos + p 2 predicate +c net/minecraft/world/level/LevelTimeAccess ddd net/minecraft/class_5424 + m ()J dayTime ak method_30271 + m ()F getMoonBrightness aq method_30272 + m ()I getMoonPhase ar method_30273 + m (F)F getTimeOfDay f method_30274 + p 1 partialTick +c net/minecraft/world/level/LevelWriter dde net/minecraft/class_1945 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z setBlock a method_8652 + c Sets a block state into this world.Flags are as follows:\n1 will cause a block update.\n2 will send the change to clients.\n4 will prevent the block from being re-rendered.\n8 will force any re-renders to run on the main thread instead\n16 will prevent neighbor reactions (e.g. fences connecting, observers pulsing).\n32 will prevent neighbor reactions from spawning drops.\n64 will signify the block is being moved.\nFlags can be OR-ed + p 1 pos + p 2 newState + p 3 flags + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)Z setBlock a method_30092 + p 1 pos + p 2 state + p 3 flags + p 4 recursionLeft + m (Lnet/minecraft/core/BlockPos;Z)Z removeBlock a method_8650 + p 1 pos + p 2 isMoving + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/entity/Entity;)Z destroyBlock a method_8651 + p 1 pos + p 2 dropBlock + p 3 entity + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/entity/Entity;I)Z destroyBlock a method_30093 + p 1 pos + p 2 dropBlock + p 3 entity + p 4 recursionLeft + m (Lnet/minecraft/world/entity/Entity;)Z addFreshEntity b method_8649 + p 1 entity + m (Lnet/minecraft/core/BlockPos;Z)Z destroyBlock b method_22352 + c Sets a block to air, but also plays the sound and particles and can spawn drops + p 1 pos + p 2 dropBlock +c net/minecraft/world/level/LightLayer ddf net/minecraft/class_1944 + f Lnet/minecraft/world/level/LightLayer; SKY a field_9284 + f Lnet/minecraft/world/level/LightLayer; BLOCK b field_9282 + f [Lnet/minecraft/world/level/LightLayer; $VALUES c field_9285 + m ()[Lnet/minecraft/world/level/LightLayer; $values a method_36696 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/LocalMobCapCalculator ddg net/minecraft/class_6540 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; playersNearChunk a field_34455 + f Ljava/util/Map; playerMobCounts b field_34456 + f Lnet/minecraft/server/level/ChunkMap; chunkMap c field_34457 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/level/LocalMobCapCalculator$MobCounts; method_38083 a method_38083 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/ChunkPos;)Z canSpawn a method_38084 + p 1 category + p 2 pos + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; getPlayersNear a method_38085 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;J)Ljava/util/List; method_38086 a method_38086 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/MobCategory;)V addMob a method_38087 + p 1 pos + p 2 category + m (Lnet/minecraft/server/level/ChunkMap;)V + p 1 chunkMap +c net/minecraft/world/level/LocalMobCapCalculator$MobCounts ddg$a net/minecraft/class_6540$class_6541 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; counts a field_34458 + m (Lnet/minecraft/world/entity/MobCategory;)V add a method_38088 + p 1 category + m (Lnet/minecraft/world/entity/MobCategory;Ljava/lang/Integer;)Ljava/lang/Integer; method_38089 a method_38089 + m (Lnet/minecraft/world/entity/MobCategory;)Z canSpawn b method_38090 + p 1 category + m ()V +c net/minecraft/world/level/NaturalSpawner ddh net/minecraft/class_1948 + f I SPAWN_DISTANCE_CHUNK a field_30972 + f I SPAWN_DISTANCE_BLOCK b field_30973 + f Lorg/slf4j/Logger; LOGGER c field_9292 + f I MIN_SPAWN_DISTANCE d field_30974 + f I MAGIC_NUMBER e field_24392 + f [Lnet/minecraft/world/entity/MobCategory; SPAWNING_CATEGORIES f field_24393 + m (I)[Lnet/minecraft/world/entity/MobCategory; method_27814 a method_27814 + m (ILjava/lang/Iterable;Lnet/minecraft/world/level/NaturalSpawner$ChunkGetter;Lnet/minecraft/world/level/LocalMobCapCalculator;)Lnet/minecraft/world/level/NaturalSpawner$SpawnState; createState a method_27815 + p 0 spawnableChunkCount + p 1 entities + p 2 chunkGetter + p 3 calculator + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Mob; getMobForSpawn a method_24931 + p 0 level + p 1 entityType + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;D)Z isValidPositionForMob a method_24932 + p 0 level + p 1 mob + p 2 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;Lnet/minecraft/core/BlockPos$MutableBlockPos;D)Z isValidSpawnPostitionForType a method_24934 + p 0 level + p 1 category + p 2 structureManager + p 3 generator + p 4 data + p 5 pos + p 6 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getRandomSpawnMobAt a method_8664 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 random + p 5 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;Lnet/minecraft/core/BlockPos;)Z canSpawnMobAt a method_8659 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 data + p 5 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Lnet/minecraft/util/random/WeightedRandomList; mobsAt a method_29950 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 pos + p 5 biome + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;D)Z isRightDistanceToPlayerAndSpawnPoint a method_24933 + p 0 level + p 1 chunk + p 2 pos + p 3 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/NaturalSpawner$SpawnState;ZZZ)V spawnForChunk a method_27821 + p 0 level + p 1 chunk + p 2 spawnState + p 3 spawnFriendlies + p 4 spawnMonsters + p 5 forcedDespawn + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Z method_35238 a method_35238 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_35239 a method_35239 + m (Lnet/minecraft/world/entity/MobCategory;)Z method_27816 a method_27816 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/NaturalSpawner$SpawnPredicate;Lnet/minecraft/world/level/NaturalSpawner$AfterSpawnCallback;)V spawnCategoryForPosition a method_24930 + p 0 category + p 1 level + p 2 chunk + p 3 pos + p 4 filter + p 5 callback + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/NaturalSpawner$SpawnPredicate;Lnet/minecraft/world/level/NaturalSpawner$AfterSpawnCallback;)V spawnCategoryForChunk a method_8663 + p 0 category + p 1 level + p 2 chunk + p 3 filter + p 4 callback + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnCategoryForPosition a method_35240 + p 0 category + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/entity/EntityType;)Z isValidEmptySpawnBlock a method_8662 + p 0 block + p 1 pos + p 2 blockState + p 3 fluidState + p 4 entityType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/core/BlockPos; getRandomPosWithin a method_8657 + p 0 level + p 1 chunk + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/entity/EntityType;II)Lnet/minecraft/core/BlockPos; getTopNonCollidingPos a method_8658 + p 0 level + p 1 entityType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/util/RandomSource;)V spawnMobsForChunkGeneration a method_8661 + p 0 levelAccessor + p 1 biome + p 2 chunkPos + p 3 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/StructureManager;)Z isInNetherFortressBounds a method_38091 + p 0 pos + p 1 level + p 2 category + p 3 structureManager + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/PotentialCalculator;Lnet/minecraft/world/level/LocalMobCapCalculator;Lnet/minecraft/world/entity/MobCategory;Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_27819 a method_27819 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/biome/Biome; getRoughBiome a method_27822 + p 0 pos + p 1 chunk + m ()V + m ()V +c net/minecraft/world/level/NaturalSpawner$AfterSpawnCallback ddh$a net/minecraft/class_1948$class_5259 +c net/minecraft/world/level/NaturalSpawner$ChunkGetter ddh$b net/minecraft/class_1948$class_5260 +c net/minecraft/world/level/NaturalSpawner$SpawnPredicate ddh$c net/minecraft/class_1948$class_5261 +c net/minecraft/world/level/NaturalSpawner$SpawnState ddh$d net/minecraft/class_1948$class_5262 + f I spawnableChunkCount a field_24394 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; mobCategoryCounts b field_24395 + f Lnet/minecraft/world/level/PotentialCalculator; spawnPotential c field_24396 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; unmodifiableMobCategoryCounts d field_24397 + f Lnet/minecraft/world/level/LocalMobCapCalculator; localMobCapCalculator e field_34459 + f Lnet/minecraft/core/BlockPos; lastCheckedPos f field_24398 + f Lnet/minecraft/world/entity/EntityType; lastCheckedType g field_24399 + f D lastCharge h field_24400 + m ()I getSpawnableChunkCount a method_27823 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Z canSpawn a method_27824 + p 1 entityType + p 2 pos + p 3 chunk + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/chunk/ChunkAccess;)V afterSpawn a method_27825 + p 1 mob + p 2 chunk + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/ChunkPos;)Z canSpawnForCategory a method_27826 + p 1 category + p 2 pos + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getMobCategoryCounts b method_27830 + m (ILit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/world/level/PotentialCalculator;Lnet/minecraft/world/level/LocalMobCapCalculator;)V + p 1 spawnableChunkCount + p 2 mobCategoryCounts + p 3 spawnPotential + p 4 localMobCapCalculator +c net/minecraft/world/level/NoiseColumn ddi net/minecraft/class_4966 + f I minY a field_28105 + f [Lnet/minecraft/world/level/block/state/BlockState; column b field_23143 + m (I[Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 minY + p 2 column +c net/minecraft/world/level/PathNavigationRegion ddj net/minecraft/class_1950 + f I centerX a field_9304 + f I centerZ b field_9303 + f [[Lnet/minecraft/world/level/chunk/ChunkAccess; chunks c field_9305 + f Z allEmpty d field_9302 + f Lnet/minecraft/world/level/Level; level e field_9306 + f Ljava/util/function/Supplier; plains f field_36403 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler a method_37233 + m (II)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_22353 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/Holder; method_40135 a method_40135 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk d method_22354 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 centerPos + p 3 offsetPos +c net/minecraft/world/level/PotentialCalculator ddk net/minecraft/class_5263 + f Ljava/util/List; charges a field_24401 + m (Lnet/minecraft/core/BlockPos;D)V addCharge a method_27831 + p 1 pos + p 2 charge + m (Lnet/minecraft/core/BlockPos;D)D getPotentialEnergyChange b method_27832 + p 1 pos + p 2 charge + m ()V +c net/minecraft/world/level/PotentialCalculator$PointCharge ddk$a net/minecraft/class_5263$class_5264 + f Lnet/minecraft/core/BlockPos; pos a field_24402 + f D charge b field_24403 + m (Lnet/minecraft/core/BlockPos;)D getPotentialChange a method_27833 + p 1 pos + m (Lnet/minecraft/core/BlockPos;D)V + p 1 pos + p 2 charge +c net/minecraft/world/level/ServerLevelAccessor ddl net/minecraft/class_5425 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel E method_8410 + m (Lnet/minecraft/world/entity/Entity;)V addFreshEntityWithPassengers a_ method_30771 + p 1 entity +c net/minecraft/world/level/SignalGetter ddm net/minecraft/class_8235 + f [Lnet/minecraft/core/Direction; DIRECTIONS C field_43226 + m (Lnet/minecraft/core/BlockPos;)Z hasNeighborSignal C method_49803 + c Returns whether the given position receives any redstone signal from neighboring blocks. + p 1 pos + m (Lnet/minecraft/core/BlockPos;)I getBestNeighborSignal D method_49804 + c Returns the highest redstone signal the given position receives from neighboring blocks. + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal a method_49805 + c Returns the direct redstone signal emitted from the given position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)I getControlInputSignal a method_49806 + c Returns the control signal emitted from the given position in the given direction.\nIf {@code diodesOnly} is {@code true}, this method returns the direct signal emitted if\nand only if this position is occupied by a diode (i.e. a repeater or comparator).\nOtherwise, if this position is occupied by a\n{@linkplain net.minecraft.world.level.block.Blocks#REDSTONE_BLOCK redstone block},\nthis method will return the redstone signal emitted by it. If not, this method will\nreturn the direct signal emitted from this position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + p 3 diodesOnly + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z hasSignal b method_49807 + c Returns whether a redstone signal is emitted from the given position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal c method_49808 + c Returns the redstone signal emitted from the given position in the given direction.\nThis is the highest value between the signal emitted by the block itself, and the direct signal\nreceived from neighboring blocks if the block is a redstone conductor.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;)I getDirectSignalTo e_ method_49809 + c Returns the direct redstone signal the given position receives from neighboring blocks. + p 1 pos + m ()V +c net/minecraft/world/level/SimpleExplosionDamageCalculator ddn net/minecraft/class_9749 + f Z explodesBlocks a field_51782 + f Z damagesEntities b field_51783 + f Ljava/util/Optional; knockbackMultiplier c field_51784 + f Ljava/util/Optional; immuneBlocks d field_51785 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/Float; method_60276 b method_60276 + m (ZZLjava/util/Optional;Ljava/util/Optional;)V + p 1 explodesBlocks + p 2 damagesEntities + p 3 knockbackMultiplier + p 4 immuneBlocks +c net/minecraft/world/level/SpawnData ddo net/minecraft/class_1952 + f Ljava/lang/String; ENTITY_TAG a field_40893 + f Lcom/mojang/serialization/Codec; CODEC b field_34460 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_34461 + f Lnet/minecraft/nbt/CompoundTag; entityToSpawn d comp_64 + f Ljava/util/Optional; customSpawnRules e comp_65 + f Ljava/util/Optional; equipment f comp_2648 + m ()Lnet/minecraft/nbt/CompoundTag; getEntityToSpawn a method_38093 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38095 a method_38095 + m (Lnet/minecraft/world/level/SpawnData;)Ljava/util/Optional; method_58679 a method_58679 + m ()Ljava/util/Optional; getCustomSpawnRules b method_38097 + m (Lnet/minecraft/world/level/SpawnData;)Ljava/util/Optional; method_38094 b method_38094 + m ()Ljava/util/Optional; getEquipment c method_59717 + m (Lnet/minecraft/world/level/SpawnData;)Lnet/minecraft/nbt/CompoundTag; method_38098 c method_38098 + m ()Lnet/minecraft/nbt/CompoundTag; entityToSpawn d comp_64 + m ()Ljava/util/Optional; customSpawnRules e comp_65 + m ()Ljava/util/Optional; equipment f comp_2648 + m ()V + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 entityToSpawn + p 2 customSpawnRules + p 3 equipment + m ()V +c net/minecraft/world/level/SpawnData$CustomSpawnRules ddo$a net/minecraft/class_1952$class_6542 + f Lcom/mojang/serialization/Codec; CODEC a field_34462 + f Lnet/minecraft/util/InclusiveRange; blockLightLimit b comp_66 + f Lnet/minecraft/util/InclusiveRange; skyLightLimit c comp_67 + f Lnet/minecraft/util/InclusiveRange; LIGHT_RANGE d field_34463 + m ()Lnet/minecraft/util/InclusiveRange; blockLightLimit a comp_66 + m (Lnet/minecraft/util/InclusiveRange;)Lcom/mojang/serialization/DataResult; checkLightBoundaries a method_38099 + p 0 lightValues + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38101 a method_38101 + m (Lnet/minecraft/world/level/SpawnData$CustomSpawnRules;)Lnet/minecraft/util/InclusiveRange; method_38100 a method_38100 + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; lightLimit a method_51719 + p 0 fieldName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z isValidPosition a method_56563 + p 1 pos + p 2 level + m ()Lnet/minecraft/util/InclusiveRange; skyLightLimit b comp_67 + m (Lnet/minecraft/world/level/SpawnData$CustomSpawnRules;)Lnet/minecraft/util/InclusiveRange; method_38102 b method_38102 + m ()Ljava/lang/String; method_49493 c method_49493 + m (Lnet/minecraft/util/InclusiveRange;Lnet/minecraft/util/InclusiveRange;)V + m ()V +c net/minecraft/world/level/Spawner ddp net/minecraft/class_8959 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/network/chat/MutableComponent; method_55119 a method_55119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/util/RandomSource;)V setEntityId a method_46408 + p 1 entityType + p 2 random + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getSpawnEntityDisplayName a method_55120 + p 0 stack + p 1 spawnDataKey + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;Ljava/lang/String;)V appendHoverText a method_55121 + p 0 stack + p 1 tooltipLines + p 2 spawnDataKey + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getEntityKey a method_55122 + p 0 tag + p 1 spawnDataKey +c net/minecraft/world/level/StructureManager ddq net/minecraft/class_5138 + f Lnet/minecraft/world/level/LevelAccessor; level a field_24404 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions b field_24497 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheck; structureCheck c field_36216 + m ()Z shouldGenerateStructures a method_27834 + m (Lnet/minecraft/server/level/WorldGenRegion;)Lnet/minecraft/world/level/StructureManager; forWorldGenRegion a method_29951 + p 1 region + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/Holder;)Z method_57559 a method_57559 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStructurePresence a method_39783 + p 1 chunkPos + p 2 structure + p 3 placement + p 4 skipKnownStructures + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/Predicate;)Ljava/util/List; startsForStructure a method_41035 + p 1 chunkPos + p 2 structurePredicate + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/function/Consumer;)V fillStartsForStructure a method_41032 + p 1 structure + p 2 structureRefs + p 3 startConsumer + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V addReference a method_39784 + p 1 structureStart + m (Lnet/minecraft/core/BlockPos;)Z hasAnyStructureAt a method_38852 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_57560 + p 1 pos + p 2 structureTag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureAt a method_28388 + p 1 pos + p 2 structure + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z structureHasPieceAt a method_41033 + p 1 pos + p 2 structureStart + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_41413 + p 1 pos + p 2 predicate + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_41034 + p 1 pos + p 2 structures + m (Lnet/minecraft/core/Registry;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/Structure;)Z method_41414 a method_41414 + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/util/List; startsForStructure a method_38853 + p 1 sectionPos + p 2 structure + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;JLnet/minecraft/world/level/chunk/StructureAccess;)V addReferenceForStructure a method_26973 + p 1 sectionPos + p 2 structure + p 3 reference + p 5 structureAccess + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/chunk/StructureAccess;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStartForStructure a method_26975 + p 1 sectionPos + p 2 structure + p 3 structureAccess + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/world/level/chunk/StructureAccess;)V setStartForStructure a method_26976 + p 1 sectionPos + p 2 structure + p 3 structureStart + p 4 structureAccess + m ()Lnet/minecraft/core/RegistryAccess; registryAccess b method_41036 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Map; getAllStructuresAt b method_41037 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt b method_38854 + p 1 pos + p 2 structure + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/structure/StructureCheck;)V + p 1 level + p 2 worldOptions + p 3 structureCheck +c net/minecraft/world/level/WorldDataConfiguration ddr net/minecraft/class_7712 + f Ljava/lang/String; ENABLED_FEATURES_ID a field_40258 + f Lcom/mojang/serialization/Codec; CODEC b field_40259 + f Lnet/minecraft/world/level/WorldDataConfiguration; DEFAULT c field_40260 + f Lnet/minecraft/world/level/DataPackConfig; dataPacks d comp_1010 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures e comp_1011 + m ()Lnet/minecraft/world/level/DataPackConfig; dataPacks a comp_1010 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45450 a method_45450 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/level/WorldDataConfiguration; expandFeatures a method_45449 + p 1 newFeatures + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures b comp_1011 + m (Lnet/minecraft/world/level/DataPackConfig;Lnet/minecraft/world/flag/FeatureFlagSet;)V + m ()V +c net/minecraft/world/level/WorldGenLevel dds net/minecraft/class_5281 + m ()J getSeed C method_8412 + c Gets the random world seed. + m (Ljava/util/function/Supplier;)V setCurrentlyGenerating a method_36972 + p 1 currentlyGenerating + m (Lnet/minecraft/core/BlockPos;)Z ensureCanWrite f_ method_37368 + p 1 pos +c net/minecraft/world/level/biome/AmbientAdditionsSettings ddt net/minecraft/class_4967 + f Lcom/mojang/serialization/Codec; CODEC a field_24673 + f Lnet/minecraft/core/Holder; soundEvent b field_23144 + f D tickChance c field_23145 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_26098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28391 a method_28391 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Ljava/lang/Double; method_28390 a method_28390 + m ()D getTickChance b method_26099 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Lnet/minecraft/core/Holder; method_28392 b method_28392 + m (Lnet/minecraft/core/Holder;D)V + p 1 soundEvent + p 2 tickChance + m ()V +c net/minecraft/world/level/biome/AmbientMoodSettings ddu net/minecraft/class_4968 + f Lcom/mojang/serialization/Codec; CODEC a field_24674 + f Lnet/minecraft/world/level/biome/AmbientMoodSettings; LEGACY_CAVE_SETTINGS b field_23146 + f Lnet/minecraft/core/Holder; soundEvent c field_23147 + f I tickDelay d field_23148 + f I blockSearchExtent e field_23149 + f D soundPositionOffset f field_23150 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_26100 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28394 a method_28394 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Double; method_28393 a method_28393 + m ()I getTickDelay b method_26101 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Integer; method_28395 b method_28395 + m ()I getBlockSearchExtent c method_26102 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Integer; method_28396 c method_28396 + m ()D getSoundPositionOffset d method_26103 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Lnet/minecraft/core/Holder; method_28397 d method_28397 + m (Lnet/minecraft/core/Holder;IID)V + p 1 soundEvent + p 2 tickDelay + p 3 blockSearchExtent + p 4 soundPositionOffset + m ()V +c net/minecraft/world/level/biome/AmbientParticleSettings ddv net/minecraft/class_4761 + f Lcom/mojang/serialization/Codec; CODEC a field_24675 + f Lnet/minecraft/core/particles/ParticleOptions; options b field_24676 + f F probability c field_22035 + m ()Lnet/minecraft/core/particles/ParticleOptions; getOptions a method_24369 + m (Lnet/minecraft/util/RandomSource;)Z canSpawn a method_24370 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28399 a method_28399 + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Ljava/lang/Float; method_28398 a method_28398 + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Lnet/minecraft/core/particles/ParticleOptions; method_28400 b method_28400 + m (Lnet/minecraft/core/particles/ParticleOptions;F)V + p 1 options + p 2 probability + m ()V +c net/minecraft/world/level/biome/Biome ddw net/minecraft/class_1959 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25819 + f Lcom/mojang/serialization/Codec; NETWORK_CODEC b field_26633 + f Lcom/mojang/serialization/Codec; CODEC c field_24677 + f Lcom/mojang/serialization/Codec; LIST_CODEC d field_26750 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; BIOME_INFO_NOISE e field_9324 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; TEMPERATURE_NOISE f field_9335 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; FROZEN_TEMPERATURE_NOISE g field_26392 + f I TEMPERATURE_CACHE_SIZE h field_30978 + f Lnet/minecraft/world/level/biome/Biome$ClimateSettings; climateSettings i field_26393 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; generationSettings j field_26635 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; mobSettings k field_26395 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects; specialEffects l field_22039 + f Ljava/lang/ThreadLocal; temperatureCache m field_20335 + m ()I getSkyColor a method_8697 + m (DD)I getGrassColor a method_8711 + p 1 posX + p 3 posZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38104 a method_38104 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z shouldFreeze a method_8705 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Z)Z shouldFreeze a method_8685 + p 1 level + p 2 water + p 3 mustBeAtEdge + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/Biome; method_38103 a method_38103 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects; method_30971 a method_30971 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/biome/Biome$Precipitation; getPrecipitationAt a method_48162 + p 1 pos + m ()Lnet/minecraft/world/level/biome/MobSpawnSettings; getMobSettings b method_30966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30776 b method_30776 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z shouldSnow b method_8696 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/Biome$ClimateSettings; method_28409 b method_28409 + m (Lnet/minecraft/core/BlockPos;)Z coldEnoughToSnow b method_33599 + p 1 pos + m ()Z hasPrecipitation c method_48163 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/MobSpawnSettings; method_28417 c method_28417 + m (Lnet/minecraft/core/BlockPos;)Z warmEnoughToRain c method_39927 + p 1 pos + m ()Lnet/minecraft/world/level/biome/BiomeGenerationSettings; getGenerationSettings d method_30970 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_28418 d method_28418 + m (Lnet/minecraft/core/BlockPos;)Z shouldMeltFrozenOceanIcebergSlightly d method_39928 + p 1 pos + m ()I getFogColor e method_24376 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects; method_28421 e method_28421 + m (Lnet/minecraft/core/BlockPos;)F getHeightAdjustedTemperature e method_8707 + p 1 pos + m ()I getFoliageColor f method_8698 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/Biome$ClimateSettings; method_28423 f method_28423 + m (Lnet/minecraft/core/BlockPos;)F getTemperature f method_21740 + p 1 pos + m ()F getBaseTemperature g method_8712 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects; getSpecialEffects h method_24377 + m ()I getWaterColor i method_8687 + m ()I getWaterFogColor j method_8713 + m ()Ljava/util/Optional; getAmbientParticle k method_24378 + m ()Ljava/util/Optional; getAmbientLoop l method_24935 + m ()Ljava/util/Optional; getAmbientMood m method_24936 + m ()Ljava/util/Optional; getAmbientAdditions n method_24937 + m ()Ljava/util/Optional; getBackgroundMusic o method_27343 + m ()I getGrassColorFromTexture p method_30773 + m ()I getFoliageColorFromTexture q method_30774 + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_21741 r method_21741 + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_21742 s method_21742 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;Lnet/minecraft/world/level/biome/BiomeSpecialEffects;Lnet/minecraft/world/level/biome/BiomeGenerationSettings;Lnet/minecraft/world/level/biome/MobSpawnSettings;)V + p 1 climateSettings + p 2 specialEffects + p 3 generationSettings + p 4 mobSettings + m ()V +c net/minecraft/world/level/biome/Biome$1 ddw$1 net/minecraft/class_1959$1 + f Lnet/minecraft/world/level/biome/Biome; field_20336 a field_20336 + m (Lnet/minecraft/world/level/biome/Biome;IF)V +c net/minecraft/world/level/biome/Biome$BiomeBuilder ddw$a net/minecraft/class_1959$class_1960 + f Z hasPrecipitation a field_41767 + f Ljava/lang/Float; temperature b field_9349 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier c field_26396 + f Ljava/lang/Float; downfall d field_9351 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects; specialEffects e field_22042 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; mobSpawnSettings f field_26636 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; generationSettings g field_26637 + m ()Lnet/minecraft/world/level/biome/Biome; build a method_30972 + m (F)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; temperature a method_8747 + p 1 temperature + m (Lnet/minecraft/world/level/biome/Biome$TemperatureModifier;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; temperatureAdjustment a method_30777 + p 1 temperatureSettings + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; generationSettings a method_30973 + p 1 generationSettings + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; specialEffects a method_24379 + p 1 effects + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; mobSpawnSettings a method_30974 + p 1 mobSpawnSettings + m (Z)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; hasPrecipitation a method_48164 + p 1 hasPercipitation + m (F)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; downfall b method_8727 + p 1 downfall + m ()V +c net/minecraft/world/level/biome/Biome$ClimateSettings ddw$b net/minecraft/class_1959$class_5482 + f Lcom/mojang/serialization/MapCodec; CODEC a field_26398 + f Z hasPrecipitation b comp_1187 + f F temperature c comp_844 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier d comp_845 + f F downfall e comp_846 + m ()Z hasPrecipitation a comp_1187 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30782 a method_30782 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Float; method_30786 a method_30786 + m ()F temperature b comp_844 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; method_30787 b method_30787 + m ()Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier c comp_845 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Float; method_30788 c method_30788 + m ()F downfall d comp_846 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Boolean; method_30789 d method_30789 + m (ZFLnet/minecraft/world/level/biome/Biome$TemperatureModifier;F)V + m ()V +c net/minecraft/world/level/biome/Biome$Precipitation ddw$c net/minecraft/class_1959$class_1963 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; NONE a field_9384 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; RAIN b field_9382 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; SNOW c field_9383 + f Lcom/mojang/serialization/Codec; CODEC d field_46251 + f Ljava/lang/String; name e field_46252 + f [Lnet/minecraft/world/level/biome/Biome$Precipitation; $VALUES f field_9386 + m ()[Lnet/minecraft/world/level/biome/Biome$Precipitation; $values a method_36699 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/Biome$TemperatureModifier ddw$d net/minecraft/class_1959$class_5484 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; NONE a field_26407 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; FROZEN b field_26408 + f Lcom/mojang/serialization/Codec; CODEC c field_26409 + f Ljava/lang/String; name d field_26410 + f [Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; $VALUES e field_26412 + m ()Ljava/lang/String; getName a method_30800 + m (Lnet/minecraft/core/BlockPos;F)F modifyTemperature a method_30798 + p 1 pos + p 2 temperature + m ()[Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; $values b method_36700 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/Biome$TemperatureModifier$1 ddw$d$1 net/minecraft/class_1959$class_5484$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/Biome$TemperatureModifier$2 ddw$d$2 net/minecraft/class_1959$class_5484$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeGenerationSettings ddx net/minecraft/class_5485 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; EMPTY a field_26639 + f Lcom/mojang/serialization/MapCodec; CODEC b field_26413 + f Lorg/slf4j/Logger; LOGGER c field_26638 + f Ljava/util/Map; carvers d field_26415 + f Ljava/util/List; features e field_26416 + f Ljava/util/function/Supplier; flowerFeatures f field_26640 + f Ljava/util/function/Supplier; featureSet g field_34465 + m ()Ljava/util/List; getFlowerFeatures a method_30982 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30802 a method_30802 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Ljava/util/List; method_30809 a method_30809 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Ljava/lang/Iterable; getCarvers a method_30976 + p 1 step + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;)Z method_40138 a method_40138 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Z hasFeature a method_38105 + p 1 feature + m (Ljava/util/List;)Ljava/util/Set; method_40139 a method_40139 + m ()Ljava/util/List; features b method_30983 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Ljava/util/Map; method_30808 b method_30808 + m (Ljava/util/List;)Ljava/util/List; method_40140 b method_40140 + m (Ljava/util/Map;Ljava/util/List;)V + p 1 carvers + p 2 features + m ()V +c net/minecraft/world/level/biome/BiomeGenerationSettings$Builder ddx$a net/minecraft/class_5485$class_5495 + f Lnet/minecraft/core/HolderGetter; placedFeatures a field_40894 + f Lnet/minecraft/core/HolderGetter; worldCarvers b field_40895 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; addCarver a method_30991 + p 1 carving + p 2 carver + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; addFeature a method_30992 + p 1 decoration + p 2 feature + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)V + p 1 placedFeatures + p 2 worldCarvers +c net/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder ddx$b net/minecraft/class_5485$class_7868 + f Ljava/util/Map; carvers a field_40896 + f Ljava/util/List; features b field_40897 + m ()Lnet/minecraft/world/level/biome/BiomeGenerationSettings; build a method_46671 + m (I)V addFeatureStepsUpTo a method_46672 + p 1 step + m (ILnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addFeature a method_46673 + p 1 step + p 2 feature + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Ljava/util/List; method_46674 a method_46674 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addCarver a method_46675 + p 1 carving + p 2 carver + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addFeature a method_46676 + p 1 decoration + p 2 feature + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/HolderSet; method_46677 a method_46677 + m ()V +c net/minecraft/world/level/biome/BiomeManager ddy net/minecraft/class_4543 + f I CHUNK_CENTER_QUART a field_28106 + f I ZOOM_BITS b field_34466 + f I ZOOM c field_34467 + f I ZOOM_MASK d field_34468 + f Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource; noiseBiomeSource e field_20640 + f J biomeZoomSeed f field_20641 + m (DDD)Lnet/minecraft/core/Holder; getNoiseBiomeAtPosition a method_24938 + p 1 x + p 3 y + p 5 z + m (III)Lnet/minecraft/core/Holder; getNoiseBiomeAtQuart a method_24854 + p 1 x + p 2 y + p 3 z + m (J)J obfuscateSeed a method_27984 + p 0 seed + m (JIIIDDD)D getFiddledDistance a method_38106 + p 0 seed + p 2 x + p 3 y + p 4 z + p 5 xNoise + p 7 yNoise + p 9 zNoise + m (Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource;)Lnet/minecraft/world/level/biome/BiomeManager; withDifferentSource a method_38107 + p 1 newSource + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getBiome a method_22393 + p 1 pos + m (J)D getFiddle b method_38108 + p 0 seed + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getNoiseBiomeAtPosition b method_27344 + p 1 pos + m (Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource;J)V + p 1 noiseBiomeSource + p 2 biomeZoomSeed + m ()V +c net/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource ddy$a net/minecraft/class_4543$class_4544 + m (III)Lnet/minecraft/core/Holder; getNoiseBiome getNoiseBiome method_16359 + c Gets the biome at the given quart positions.\nNote that the coordinates passed into this method are 1/4 the scale of block coordinates. + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/biome/BiomeResolver ddz net/minecraft/class_6780 + m (IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; getNoiseBiome getNoiseBiome method_38109 + p 1 x + p 2 y + p 3 z + p 4 sampler +c net/minecraft/world/level/biome/BiomeSource dea net/minecraft/class_1966 + f Lcom/mojang/serialization/Codec; CODEC a field_24713 + f Ljava/util/function/Supplier; possibleBiomes b field_20643 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28442 + m (IIIIILjava/util/function/Predicate;Lnet/minecraft/util/RandomSource;ZLnet/minecraft/world/level/biome/Climate$Sampler;)Lcom/mojang/datafixers/util/Pair; findBiomeHorizontal a method_24385 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 increment + p 6 biomePredicate + p 7 random + p 8 findClosest + p 9 sampler + m (IIIILnet/minecraft/world/level/biome/Climate$Sampler;)Ljava/util/Set; getBiomesWithin a method_8763 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 sampler + m (IIIILjava/util/function/Predicate;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/biome/Climate$Sampler;)Lcom/mojang/datafixers/util/Pair; findBiomeHorizontal a method_8762 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 biomePredicate + p 6 random + p 7 sampler + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/biome/Climate$Sampler;)V addDebugInfo a method_38114 + p 1 info + p 2 pos + p 3 sampler + m (Lnet/minecraft/core/BlockPos;IIILjava/util/function/Predicate;Lnet/minecraft/world/level/biome/Climate$Sampler;Lnet/minecraft/world/level/LevelReader;)Lcom/mojang/datafixers/util/Pair; findClosestBiome3d a method_42310 + p 1 pos + p 2 radius + p 3 horizontalStep + p 4 verticalStep + p 5 biomePredicate + p 6 sampler + p 7 level + m ()Ljava/util/stream/Stream; collectPossibleBiomes b method_49494 + m ()Ljava/util/Set; possibleBiomes c method_28443 + m ()Ljava/util/Set; method_49495 d method_49495 + m ()V + m ()V +c net/minecraft/world/level/biome/BiomeSources deb net/minecraft/class_7509 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_44207 + p 0 registry + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects dec net/minecraft/class_4763 + f Lcom/mojang/serialization/Codec; CODEC a field_24714 + f I fogColor b field_22067 + f I waterColor c field_22068 + f I waterFogColor d field_22069 + f I skyColor e field_26418 + f Ljava/util/Optional; foliageColorOverride f field_26419 + f Ljava/util/Optional; grassColorOverride g field_26420 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; grassColorModifier h field_26421 + f Ljava/util/Optional; ambientParticleSettings i field_22070 + f Ljava/util/Optional; ambientLoopSoundEvent j field_22491 + f Ljava/util/Optional; ambientMoodSettings k field_22492 + f Ljava/util/Optional; ambientAdditionsSettings l field_22493 + f Ljava/util/Optional; backgroundMusic m field_24113 + m ()I getFogColor a method_24387 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28445 a method_28445 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28444 a method_28444 + m ()I getWaterColor b method_24388 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28446 b method_28446 + m ()I getWaterFogColor c method_24389 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28447 c method_28447 + m ()I getSkyColor d method_30810 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28448 d method_28448 + m ()Ljava/util/Optional; getFoliageColorOverride e method_30811 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28449 e method_28449 + m ()Ljava/util/Optional; getGrassColorOverride f method_30812 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; method_30813 f method_30813 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; getGrassColorModifier g method_30814 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_30815 g method_30815 + m ()Ljava/util/Optional; getAmbientParticleSettings h method_24390 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_30816 h method_30816 + m ()Ljava/util/Optional; getAmbientLoopSoundEvent i method_24939 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_30817 i method_30817 + m ()Ljava/util/Optional; getAmbientMoodSettings j method_24940 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28450 j method_28450 + m ()Ljava/util/Optional; getAmbientAdditionsSettings k method_24941 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28451 k method_28451 + m ()Ljava/util/Optional; getBackgroundMusic l method_27345 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28452 l method_28452 + m (IIIILjava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 fogColor + p 2 waterColor + p 3 waterFogColor + p 4 skyColor + p 5 foliageColorOverride + p 6 grassColorOverride + p 7 grassColorModifier + p 8 ambientParticleSettings + p 9 ambientLoopSoundEvent + p 10 ambientMoodSettings + p 11 ambientAdditionsSettings + p 12 backgroundMusic + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$Builder dec$a net/minecraft/class_4763$class_4764 + f Ljava/util/OptionalInt; fogColor a field_22071 + f Ljava/util/OptionalInt; waterColor b field_22072 + f Ljava/util/OptionalInt; waterFogColor c field_22073 + f Ljava/util/OptionalInt; skyColor d field_26422 + f Ljava/util/Optional; foliageColorOverride e field_26423 + f Ljava/util/Optional; grassColorOverride f field_26424 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; grassColorModifier g field_26425 + f Ljava/util/Optional; ambientParticle h field_22074 + f Ljava/util/Optional; ambientLoopSoundEvent i field_22494 + f Ljava/util/Optional; ambientMoodSettings j field_22495 + f Ljava/util/Optional; ambientAdditionsSettings k field_22496 + f Ljava/util/Optional; backgroundMusic l field_24114 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects; build a method_24391 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; fogColor a method_24392 + p 1 fogColor + m (Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; backgroundMusic a method_27346 + p 1 backgroundMusic + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientAdditionsSound a method_24944 + p 1 ambientAdditionsSettings + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientMoodSound a method_24943 + p 1 ambientMoodSettings + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientParticle a method_24393 + p 1 ambientParticle + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; grassColorModifier a method_30818 + p 1 grassColorModifier + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientLoopSound a method_24942 + p 1 ambientLoopSoundEvent + m ()Ljava/lang/IllegalStateException; method_30819 b method_30819 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; waterColor b method_24395 + p 1 waterColor + m ()Ljava/lang/IllegalStateException; method_24394 c method_24394 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; waterFogColor c method_24397 + p 1 waterFogColor + m ()Ljava/lang/IllegalStateException; method_24396 d method_24396 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; skyColor d method_30820 + p 1 skyColor + m ()Ljava/lang/IllegalStateException; method_24398 e method_24398 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; foliageColorOverride e method_30821 + p 1 foliageColorOverride + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; grassColorOverride f method_30822 + p 1 grassColorOverride + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier dec$b net/minecraft/class_4763$class_5486 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; NONE a field_26426 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; DARK_FOREST b field_26427 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; SWAMP c field_26428 + f Lcom/mojang/serialization/Codec; CODEC d field_26429 + f Ljava/lang/String; name e field_26430 + f [Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; $VALUES f field_26432 + m ()Ljava/lang/String; getName a method_30826 + m (DDI)I modifyColor a method_30823 + p 1 x + p 3 z + p 5 grassColor + m ()[Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; $values b method_36701 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$1 dec$b$1 net/minecraft/class_4763$class_5486$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$2 dec$b$2 net/minecraft/class_4763$class_5486$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$3 dec$b$3 net/minecraft/class_4763$class_5486$3 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/Biomes ded net/minecraft/class_1972 + f Lnet/minecraft/resources/ResourceKey; BADLANDS A field_9415 + f Lnet/minecraft/resources/ResourceKey; ERODED_BADLANDS B field_9443 + f Lnet/minecraft/resources/ResourceKey; WOODED_BADLANDS C field_35110 + f Lnet/minecraft/resources/ResourceKey; MEADOW D field_34470 + f Lnet/minecraft/resources/ResourceKey; CHERRY_GROVE E field_42720 + f Lnet/minecraft/resources/ResourceKey; GROVE F field_34471 + f Lnet/minecraft/resources/ResourceKey; SNOWY_SLOPES G field_34472 + f Lnet/minecraft/resources/ResourceKey; FROZEN_PEAKS H field_35115 + f Lnet/minecraft/resources/ResourceKey; JAGGED_PEAKS I field_34474 + f Lnet/minecraft/resources/ResourceKey; STONY_PEAKS J field_34475 + f Lnet/minecraft/resources/ResourceKey; RIVER K field_9438 + f Lnet/minecraft/resources/ResourceKey; FROZEN_RIVER L field_9463 + f Lnet/minecraft/resources/ResourceKey; BEACH M field_9434 + f Lnet/minecraft/resources/ResourceKey; SNOWY_BEACH N field_9478 + f Lnet/minecraft/resources/ResourceKey; STONY_SHORE O field_9419 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN P field_9408 + f Lnet/minecraft/resources/ResourceKey; LUKEWARM_OCEAN Q field_9441 + f Lnet/minecraft/resources/ResourceKey; DEEP_LUKEWARM_OCEAN R field_9439 + f Lnet/minecraft/resources/ResourceKey; OCEAN S field_9423 + f Lnet/minecraft/resources/ResourceKey; DEEP_OCEAN T field_9446 + f Lnet/minecraft/resources/ResourceKey; COLD_OCEAN U field_9467 + f Lnet/minecraft/resources/ResourceKey; DEEP_COLD_OCEAN V field_9470 + f Lnet/minecraft/resources/ResourceKey; FROZEN_OCEAN W field_9435 + f Lnet/minecraft/resources/ResourceKey; DEEP_FROZEN_OCEAN X field_9418 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_FIELDS Y field_9462 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CAVES Z field_28107 + f Lnet/minecraft/resources/ResourceKey; THE_VOID a field_9473 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES aa field_29218 + f Lnet/minecraft/resources/ResourceKey; DEEP_DARK ab field_37543 + f Lnet/minecraft/resources/ResourceKey; NETHER_WASTES ac field_9461 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST ad field_22075 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST ae field_22077 + f Lnet/minecraft/resources/ResourceKey; SOUL_SAND_VALLEY af field_22076 + f Lnet/minecraft/resources/ResourceKey; BASALT_DELTAS ag field_23859 + f Lnet/minecraft/resources/ResourceKey; THE_END ah field_9411 + f Lnet/minecraft/resources/ResourceKey; END_HIGHLANDS ai field_9442 + f Lnet/minecraft/resources/ResourceKey; END_MIDLANDS aj field_9447 + f Lnet/minecraft/resources/ResourceKey; SMALL_END_ISLANDS ak field_9457 + f Lnet/minecraft/resources/ResourceKey; END_BARRENS al field_9465 + f Lnet/minecraft/resources/ResourceKey; PLAINS b field_9451 + f Lnet/minecraft/resources/ResourceKey; SUNFLOWER_PLAINS c field_9455 + f Lnet/minecraft/resources/ResourceKey; SNOWY_PLAINS d field_35117 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKES e field_9453 + f Lnet/minecraft/resources/ResourceKey; DESERT f field_9424 + f Lnet/minecraft/resources/ResourceKey; SWAMP g field_9471 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_SWAMP h field_38748 + f Lnet/minecraft/resources/ResourceKey; FOREST i field_9409 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FOREST j field_9414 + f Lnet/minecraft/resources/ResourceKey; BIRCH_FOREST k field_9412 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST l field_9475 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_BIRCH_FOREST m field_35112 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_PINE_TAIGA n field_35119 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_SPRUCE_TAIGA o field_35113 + f Lnet/minecraft/resources/ResourceKey; TAIGA p field_9420 + f Lnet/minecraft/resources/ResourceKey; SNOWY_TAIGA q field_9454 + f Lnet/minecraft/resources/ResourceKey; SAVANNA r field_9449 + f Lnet/minecraft/resources/ResourceKey; SAVANNA_PLATEAU s field_9430 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_HILLS t field_35116 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_GRAVELLY_HILLS u field_35111 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_FOREST v field_35120 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_SAVANNA w field_35114 + f Lnet/minecraft/resources/ResourceKey; JUNGLE x field_9417 + f Lnet/minecraft/resources/ResourceKey; SPARSE_JUNGLE y field_35118 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_JUNGLE z field_9440 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_8775 + p 0 key + m ()V + m ()V +c net/minecraft/world/level/biome/CheckerboardColumnBiomeSource dee net/minecraft/class_1973 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24715 + f Lnet/minecraft/core/HolderSet; allowedBiomes c field_9481 + f I bitShift d field_9480 + f I size e field_24716 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28454 a method_28454 + m (Lnet/minecraft/world/level/biome/CheckerboardColumnBiomeSource;)Ljava/lang/Integer; method_28453 a method_28453 + m (Lnet/minecraft/world/level/biome/CheckerboardColumnBiomeSource;)Lnet/minecraft/core/HolderSet; method_28455 b method_28455 + m (Lnet/minecraft/core/HolderSet;I)V + p 1 allowedBiomes + p 2 size + m ()V +c net/minecraft/world/level/biome/Climate def net/minecraft/class_6544 + f I PARAMETER_COUNT a field_34476 + f Z DEBUG_SLOW_BIOME_SEARCH b field_34477 + f F QUANTIZATION_FACTOR c field_35359 + m ()Lnet/minecraft/world/level/biome/Climate$Sampler; empty a method_40443 + m (F)J quantizeCoord a method_38665 + p 0 coord + m (FFFFFF)Lnet/minecraft/world/level/biome/Climate$TargetPoint; target a method_38116 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + m (FFFFFFF)Lnet/minecraft/world/level/biome/Climate$ParameterPoint; parameters a method_38117 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + p 6 offset + m (J)F unquantizeCoord a method_38666 + p 0 coord + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;F)Lnet/minecraft/world/level/biome/Climate$ParameterPoint; parameters a method_38118 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + p 6 offset + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/BlockPos; findSpawnPosition a method_39164 + p 0 points + p 1 sampler + m ()V +c net/minecraft/world/level/biome/Climate$DistanceMetric def$a net/minecraft/class_6544$class_6545 +c net/minecraft/world/level/biome/Climate$Parameter def$b net/minecraft/class_6544$class_6546 + f Lcom/mojang/serialization/Codec; CODEC a field_34478 + f J min b comp_103 + f J max c comp_104 + m ()J min a comp_103 + m (F)Lnet/minecraft/world/level/biome/Climate$Parameter; point a method_38120 + p 0 value + m (FF)Lnet/minecraft/world/level/biome/Climate$Parameter; span a method_38121 + p 0 min + p 1 max + m (J)J distance a method_38126 + p 1 pointValue + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)J distance a method_38122 + p 1 parameter + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/world/level/biome/Climate$Parameter; span a method_38123 + p 0 min + p 1 max + m (Ljava/lang/Float;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_38124 a method_38124 + m ()J max b comp_104 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/world/level/biome/Climate$Parameter; span b method_38127 + p 1 param + m (Ljava/lang/Float;Ljava/lang/Float;)Ljava/lang/String; method_49496 b method_49496 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/Float; method_38667 c method_38667 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/Float; method_38668 d method_38668 + m (JJ)V + m ()V +c net/minecraft/world/level/biome/Climate$ParameterList def$c net/minecraft/class_6544$class_6547 + f Ljava/util/List; values a field_34481 + f Lnet/minecraft/world/level/biome/Climate$RTree; index b field_34482 + m ()Ljava/util/List; values a method_38128 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; codec a method_49497 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49498 a method_49498 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValue a method_39529 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Ljava/lang/Object; findValueIndex a method_39528 + p 1 targetPoint + p 2 distanceMetric + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValueBruteForce b method_39530 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValueIndex c method_39527 + p 1 targetPoint + m (Ljava/util/List;)V + p 1 values +c net/minecraft/world/level/biome/Climate$ParameterPoint def$d net/minecraft/class_6544$class_4762 + f Lcom/mojang/serialization/Codec; CODEC a field_24679 + f Lnet/minecraft/world/level/biome/Climate$Parameter; temperature b comp_105 + f Lnet/minecraft/world/level/biome/Climate$Parameter; humidity c comp_106 + f Lnet/minecraft/world/level/biome/Climate$Parameter; continentalness d comp_107 + f Lnet/minecraft/world/level/biome/Climate$Parameter; erosion e comp_108 + f Lnet/minecraft/world/level/biome/Climate$Parameter; depth f comp_109 + f Lnet/minecraft/world/level/biome/Climate$Parameter; weirdness g comp_110 + f J offset h comp_111 + m ()Ljava/util/List; parameterSpace a method_38145 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28425 a method_28425 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Ljava/lang/Long; method_38134 a method_38134 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)J fitness a method_24381 + p 1 point + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; temperature b comp_105 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38136 b method_38136 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; humidity c comp_106 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38138 c method_38138 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; continentalness d comp_107 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38140 d method_38140 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; erosion e comp_108 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38142 e method_38142 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; depth f comp_109 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_28429 f method_28429 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; weirdness g comp_110 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_28430 g method_28430 + m ()J offset h comp_111 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;J)V + m ()V +c net/minecraft/world/level/biome/Climate$RTree def$e net/minecraft/class_6544$class_6548 + f I CHILDREN_PER_NODE a field_34486 + f Lnet/minecraft/world/level/biome/Climate$RTree$Node; root b field_34487 + f Ljava/lang/ThreadLocal; lastResult c field_34488 + m (ILnet/minecraft/world/level/biome/Climate$RTree$Node;)J method_38146 a method_38146 + m (ILnet/minecraft/world/level/biome/Climate$RTree$SubTree;)Lnet/minecraft/world/level/biome/Climate$RTree$Node; method_38147 a method_38147 + m (ILjava/util/List;)Lnet/minecraft/world/level/biome/Climate$RTree$Node; build a method_38148 + p 0 paramSpaceSize + p 1 children + m (IZ)Ljava/util/Comparator; comparator a method_38149 + p 0 size + p 1 absolute + m (IZLnet/minecraft/world/level/biome/Climate$RTree$Node;)J method_38150 a method_38150 + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/biome/Climate$RTree$Leaf; method_38152 a method_38152 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Ljava/lang/Object; search a method_38151 + p 1 targetPoint + p 2 distanceMetric + m (Ljava/util/List;)Lnet/minecraft/world/level/biome/Climate$RTree; create a method_38153 + p 0 nodes + m (Ljava/util/List;IIZ)V sort a method_38154 + p 0 children + p 1 paramSpaceSize + p 2 size + p 3 absolute + m ([Lnet/minecraft/world/level/biome/Climate$Parameter;)J cost a method_38155 + p 0 parameters + m (Ljava/util/List;)Ljava/util/List; bucketize b method_38156 + p 0 nodes + m (Ljava/util/List;)Ljava/util/List; buildParameterSpace c method_38157 + p 0 children + m (Lnet/minecraft/world/level/biome/Climate$RTree$Node;)V + p 1 root +c net/minecraft/world/level/biome/Climate$RTree$Leaf def$e$a net/minecraft/class_6544$class_6548$class_6549 + f Ljava/lang/Object; value b field_34489 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;Ljava/lang/Object;)V + p 1 point + p 2 value +c net/minecraft/world/level/biome/Climate$RTree$Node def$e$b net/minecraft/class_6544$class_6548$class_6550 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; parameterSpace a field_34490 + m ([J)J distance a method_38159 + p 1 values + m ([JLnet/minecraft/world/level/biome/Climate$RTree$Leaf;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Lnet/minecraft/world/level/biome/Climate$RTree$Leaf; search a method_38158 + p 1 searchedValues + p 2 leaf + p 3 metric + m (Ljava/util/List;)V + p 1 parameters +c net/minecraft/world/level/biome/Climate$RTree$SubTree def$e$c net/minecraft/class_6544$class_6548$class_6551 + f [Lnet/minecraft/world/level/biome/Climate$RTree$Node; children b field_34491 + m (Ljava/util/List;)V + p 1 parameters + m (Ljava/util/List;Ljava/util/List;)V + p 1 parameters + p 2 children +c net/minecraft/world/level/biome/Climate$Sampler def$f net/minecraft/class_6544$class_6552 + f Lnet/minecraft/world/level/levelgen/DensityFunction; temperature a comp_364 + f Lnet/minecraft/world/level/levelgen/DensityFunction; humidity b comp_365 + f Lnet/minecraft/world/level/levelgen/DensityFunction; continentalness c comp_366 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion d comp_367 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth e comp_368 + f Lnet/minecraft/world/level/levelgen/DensityFunction; weirdness f comp_369 + f Ljava/util/List; spawnTarget g comp_370 + m ()Lnet/minecraft/core/BlockPos; findSpawnPosition a method_39165 + m (III)Lnet/minecraft/world/level/biome/Climate$TargetPoint; sample a method_40444 + p 1 x + p 2 y + p 3 z + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; temperature b comp_364 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; humidity c comp_365 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; continentalness d comp_366 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; erosion e comp_367 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; depth f comp_368 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; weirdness g comp_369 + m ()Ljava/util/List; spawnTarget h comp_370 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Ljava/util/List;)V +c net/minecraft/world/level/biome/Climate$SpawnFinder def$g net/minecraft/class_6544$class_6729 + f Lnet/minecraft/world/level/biome/Climate$SpawnFinder$Result; result a field_35360 + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;FF)V radialSearch a method_39166 + p 1 point + p 2 sampler + p 3 max + p 4 min + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;II)Lnet/minecraft/world/level/biome/Climate$SpawnFinder$Result; getSpawnPositionAndFitness a method_39167 + p 0 points + p 1 sampler + p 2 x + p 3 z + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;)V + p 1 points + p 2 sampler +c net/minecraft/world/level/biome/Climate$SpawnFinder$Result def$g$a net/minecraft/class_6544$class_6729$class_6730 + f Lnet/minecraft/core/BlockPos; location a comp_223 + f J fitness b comp_224 + m ()Lnet/minecraft/core/BlockPos; location a comp_223 + m ()J fitness b comp_224 + m (Lnet/minecraft/core/BlockPos;J)V +c net/minecraft/world/level/biome/Climate$TargetPoint def$h net/minecraft/class_6544$class_6553 + f J temperature a comp_112 + f J humidity b comp_113 + f J continentalness c comp_114 + f J erosion d comp_115 + f J depth e comp_116 + f J weirdness f comp_117 + m ()[J toParameterArray a method_38166 + m ()J temperature b comp_112 + m ()J humidity c comp_113 + m ()J continentalness d comp_114 + m ()J erosion e comp_115 + m ()J depth f comp_116 + m ()J weirdness g comp_117 + m (JJJJJJ)V +c net/minecraft/world/level/biome/FeatureSorter deg net/minecraft/class_7510 + m (ILnet/minecraft/world/level/biome/FeatureSorter$1FeatureData;)Z method_44208 a method_44208 + m (Ljava/util/Comparator;Lnet/minecraft/world/level/biome/FeatureSorter$1FeatureData;)Ljava/util/Set; method_44209 a method_44209 + m (Ljava/util/List;Ljava/util/function/Function;Z)Ljava/util/List; buildFeaturesPerStep a method_44210 + p 0 featureSetSources + p 1 toFeatueSetFunction + p 2 notRecursiveFlag + m (Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/lang/Object;)I method_44211 a method_44211 + m ()V +c net/minecraft/world/level/biome/FeatureSorter$1FeatureData deg$a net/minecraft/class_7510$class_6543 + f I featureIndex a comp_234 + f I step b comp_68 + f Lnet/minecraft/world/level/levelgen/placement/PlacedFeature; feature c comp_69 + m ()I featureIndex a comp_234 + m ()I step b comp_68 + m ()Lnet/minecraft/world/level/levelgen/placement/PlacedFeature; feature c comp_69 + m (IILnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V +c net/minecraft/world/level/biome/FeatureSorter$StepFeatureData deg$b net/minecraft/class_7510$class_6827 + f Ljava/util/List; features a comp_303 + f Ljava/util/function/ToIntFunction; indexMapping b comp_304 + m ()Ljava/util/List; features a comp_303 + m ()Ljava/util/function/ToIntFunction; indexMapping b comp_304 + m (Ljava/util/List;)V + p 1 features + m (Ljava/util/List;Ljava/util/function/ToIntFunction;)V +c net/minecraft/world/level/biome/FixedBiomeSource deh net/minecraft/class_1992 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24717 + f Lnet/minecraft/core/Holder; biome c field_9486 + m (Lnet/minecraft/world/level/biome/FixedBiomeSource;)Lnet/minecraft/core/Holder; method_28456 a method_28456 + m (Lnet/minecraft/core/Holder;)V + p 1 biome + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings dei net/minecraft/class_5483 + f Lnet/minecraft/util/random/WeightedRandomList; EMPTY_MOB_LIST a field_30982 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; EMPTY b field_26646 + f Lcom/mojang/serialization/MapCodec; CODEC c field_26403 + f Lorg/slf4j/Logger; LOGGER d field_26645 + f F DEFAULT_CREATURE_SPAWN_PROBABILITY e field_30983 + f F creatureGenerationProbability f field_26404 + f Ljava/util/Map; spawners g field_26405 + f Ljava/util/Map; mobSpawnCosts h field_26406 + m ()F getCreatureProbability a method_31002 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost; getMobSpawnCost a method_31003 + p 1 entityType + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/util/random/WeightedRandomList; getMobs a method_31004 + p 1 category + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30791 a method_30791 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/util/Map; method_30794 a method_30794 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/util/Map; method_30795 b method_30795 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/lang/Float; method_30796 c method_30796 + m (FLjava/util/Map;Ljava/util/Map;)V + p 1 creatureGenerationProbability + p 2 spawners + p 3 mobSpawnCosts + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$Builder dei$a net/minecraft/class_5483$class_5496 + f Ljava/util/Map; spawners a field_26647 + f Ljava/util/Map; mobSpawnCosts b field_26648 + f F creatureGenerationProbability c field_26649 + m ()Lnet/minecraft/world/level/biome/MobSpawnSettings; build a method_31007 + m (F)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; creatureGenerationProbability a method_31008 + p 1 probability + m (Lnet/minecraft/world/entity/EntityType;DD)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; addMobCharge a method_31009 + p 1 entityType + p 2 charge + p 4 energyBudget + m (Lnet/minecraft/world/entity/MobCategory;)Ljava/util/List; method_31010 a method_31010 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; addSpawn a method_31011 + p 1 classification + p 2 spawner + m (Ljava/util/Map$Entry;)Lnet/minecraft/util/random/WeightedRandomList; method_31012 a method_31012 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_31013 b method_31013 + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost dei$b net/minecraft/class_5483$class_5265 + c @param energyBudget Determines the total amount of entities that can spawn in a location based on their current cost (e.g. a cost of 0.1 and a max total of 1 means at most ten entities can spawn in the given location).\n@param charge Determines the cost per entity towards the maximum spawn cap. + f Lcom/mojang/serialization/Codec; CODEC a field_25820 + f D energyBudget b comp_1307 + c Determines the total amount of entities that can spawn in a location based on their current cost (e.g. a cost of 0.1 and a max total of 1 means at most ten entities can spawn in the given location). + f D charge c comp_1308 + c Determines the cost per entity towards the maximum spawn cap. + m ()D energyBudget a comp_1307 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30359 a method_30359 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost;)Ljava/lang/Double; method_31014 a method_31014 + m ()D charge b comp_1308 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost;)Ljava/lang/Double; method_31015 b method_31015 + m (DD)V + p 1 energyBudget + p 2 charge + c Determines the cost per entity towards the maximum spawn cap. + p 3 charge + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$SpawnerData dei$c net/minecraft/class_5483$class_1964 + f Lcom/mojang/serialization/Codec; CODEC a field_24681 + f Lnet/minecraft/world/entity/EntityType; type b field_9389 + f I minCount c field_9388 + f I maxCount d field_9387 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28433 a method_28433 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lcom/mojang/serialization/DataResult; method_49499 a method_49499 + m ()Ljava/lang/String; method_49500 b method_49500 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Ljava/lang/Integer; method_28434 b method_28434 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Ljava/lang/Integer; method_28435 c method_28435 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lnet/minecraft/world/entity/EntityType; method_28436 d method_28436 + m (Lnet/minecraft/world/entity/EntityType;III)V + p 1 type + p 2 weight + p 3 minCount + p 4 maxCount + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/util/random/Weight;II)V + p 1 type + p 2 weight + p 3 minCount + p 4 maxCount + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSource dej net/minecraft/class_4766 + f Lcom/mojang/serialization/MapCodec; DIRECT_CODEC b field_24718 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24719 + f Lcom/mojang/serialization/MapCodec; ENTRY_CODEC d field_42984 + f Lcom/mojang/serialization/MapCodec; PRESET_CODEC e field_42985 + f Lcom/mojang/datafixers/util/Either; parameters f field_34498 + m (Lnet/minecraft/resources/ResourceKey;)Z stable a method_38168 + p 1 resourceKey + m (Lnet/minecraft/world/level/biome/Climate$ParameterList;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource; createFromList a method_49501 + p 0 parameters + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Lnet/minecraft/core/Holder; getNoiseBiome a method_38167 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource;)Lcom/mojang/datafixers/util/Either; method_49502 a method_49502 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource; createFromPreset a method_49503 + p 0 parameters + m (Lnet/minecraft/world/level/biome/Climate$ParameterList;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49504 b method_49504 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49505 b method_49505 + m ()Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters d method_49506 + m (Lcom/mojang/datafixers/util/Either;)V + p 1 parameters + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList dek net/minecraft/class_8197 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42986 + f Lcom/mojang/serialization/Codec; CODEC b field_42987 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; preset c field_42988 + f Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters d field_42989 + m ()Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters a method_49507 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_49508 a method_49508 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49511 a method_49511 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49509 a method_49509 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49510 a method_49510 + m ()Ljava/util/Map; knownPresets b method_49512 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49513 b method_49513 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;Lnet/minecraft/core/HolderGetter;)V + p 1 preset + p 2 biomes + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset dek$a net/minecraft/class_8197$class_5305 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; NETHER a field_24723 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; OVERWORLD b field_34499 + f Lcom/mojang/serialization/Codec; CODEC c field_42990 + f Lnet/minecraft/resources/ResourceLocation; id d comp_1309 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider; provider e comp_1310 + f Ljava/util/Map; BY_NAME f field_24724 + m ()Ljava/util/stream/Stream; usedBiomes a method_49514 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_49515 a method_49515 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_49516 a method_49516 + m (Lcom/google/common/collect/ImmutableList$Builder;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)V method_49192 a method_49192 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lcom/mojang/serialization/DataResult; method_49517 a method_49517 + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/biome/Climate$ParameterList; generateOverworldBiomes a method_49193 + p 0 valueGetter + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_1309 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_49518 b method_49518 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49519 b method_49519 + m ()Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider; provider c comp_1310 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49520 c method_49520 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider;)V + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$1 dek$a$1 net/minecraft/class_8197$class_5305$1 + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$2 dek$a$2 net/minecraft/class_8197$class_5305$2 + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider dek$a$a net/minecraft/class_8197$class_5305$class_8165 +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterLists del net/minecraft/class_8198 + f Lnet/minecraft/resources/ResourceKey; NETHER a field_42991 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD b field_42992 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_49521 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_49522 + p 0 context + m ()V + m ()V +c net/minecraft/world/level/biome/OverworldBiomeBuilder dem net/minecraft/class_6554 + f Lnet/minecraft/world/level/biome/Climate$Parameter; midInlandContinentalness A field_34516 + f Lnet/minecraft/world/level/biome/Climate$Parameter; farInlandContinentalness B field_34517 + f [[Lnet/minecraft/resources/ResourceKey; OCEANS C field_34518 + f [[Lnet/minecraft/resources/ResourceKey; MIDDLE_BIOMES D field_34519 + f [[Lnet/minecraft/resources/ResourceKey; MIDDLE_BIOMES_VARIANT E field_34520 + f [[Lnet/minecraft/resources/ResourceKey; PLATEAU_BIOMES F field_34521 + f [[Lnet/minecraft/resources/ResourceKey; PLATEAU_BIOMES_VARIANT G field_34522 + f [[Lnet/minecraft/resources/ResourceKey; SHATTERED_BIOMES H field_36339 + f F HIGH_START a field_35041 + f F PEAK_START b field_34502 + f F NEAR_INLAND_START c field_35042 + f F MID_INLAND_START d field_35043 + f F FAR_INLAND_START e field_35044 + f F EROSION_INDEX_1_START f field_35045 + f F EROSION_INDEX_2_START g field_35046 + f F VALLEY_SIZE h field_34500 + f F LOW_START i field_35047 + f F HIGH_END j field_35048 + f F PEAK_SIZE k field_34501 + f F PEAK_END l field_34503 + f F EROSION_DEEP_DARK_DRYNESS_THRESHOLD m field_39134 + f F DEPTH_DEEP_DARK_DRYNESS_THRESHOLD n field_39135 + f Lnet/minecraft/world/level/biome/Climate$Parameter; FULL_RANGE o field_34504 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; temperatures p field_34505 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; humidities q field_34506 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; erosions r field_34507 + f Lnet/minecraft/world/level/biome/Climate$Parameter; FROZEN_RANGE s field_34508 + f Lnet/minecraft/world/level/biome/Climate$Parameter; UNFROZEN_RANGE t field_34509 + f Lnet/minecraft/world/level/biome/Climate$Parameter; mushroomFieldsContinentalness u field_34510 + f Lnet/minecraft/world/level/biome/Climate$Parameter; deepOceanContinentalness v field_34511 + f Lnet/minecraft/world/level/biome/Climate$Parameter; oceanContinentalness w field_34512 + f Lnet/minecraft/world/level/biome/Climate$Parameter; coastContinentalness x field_34513 + f Lnet/minecraft/world/level/biome/Climate$Parameter; inlandContinentalness y field_34514 + f Lnet/minecraft/world/level/biome/Climate$Parameter; nearInlandContinentalness z field_34515 + m ()Ljava/util/List; spawnTarget a method_39168 + m (D)Ljava/lang/String; getDebugStringForPeaksAndValleys a method_38179 + p 0 peaksAndValleysData + m (D[Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/String; getDebugStringForNoiseValue a method_38180 + p 0 depth + p 2 values + m (II)Lnet/minecraft/resources/ResourceKey; pickBeachBiome a method_38181 + p 1 temperature + p 2 humidity + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiome a method_38182 + p 1 temperature + p 2 humidity + p 3 param + m (IILnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; maybePickWindsweptSavannaBiome a method_40009 + p 1 temperature + p 2 humidity + p 3 param + p 4 key + m (ILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickBadlandsBiome a method_38184 + p 1 humidity + p 2 param + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Z isDeepDarkRegion a method_43718 + p 0 erosionFunction + p 1 depthFunction + p 2 functionContext + m (Ljava/util/function/Consumer;)V addBiomes a method_38185 + p 1 key + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addPeaks a method_38186 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addSurfaceBiome a method_38187 + p 1 consumer + p 2 temperature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getTemperatureThresholds b method_40010 + m (D)Ljava/lang/String; getDebugStringForContinentalness b method_38188 + p 1 continentalness + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiomeOrBadlandsIfHot b method_38189 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addDebugBiomes b method_46678 + p 1 key + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addHighSlice b method_38191 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addUndergroundBiome b method_38192 + p 1 consumer + p 2 temperature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getHumidityThresholds c method_40011 + m (D)Ljava/lang/String; getDebugStringForErosion c method_38193 + p 1 erosion + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiomeOrBadlandsIfHotOrSlopeIfCold c method_38194 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addOffCoastBiomes c method_38190 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addMidSlice c method_38196 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addBottomBiome c method_41419 + p 1 consumer + p 2 temerature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getErosionThresholds d method_40012 + m (D)Ljava/lang/String; getDebugStringForTemperature d method_38197 + p 1 temperature + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickShatteredCoastBiome d method_38198 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addInlandBiomes d method_38195 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addLowSlice d method_38200 + p 1 consumer + p 2 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getContinentalnessThresholds e method_40013 + m (D)Ljava/lang/String; getDebugStringForHumidity e method_38201 + p 1 humidity + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickPlateauBiome e method_38202 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addUndergroundBiomes e method_38199 + p 1 consume + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addValleys e method_38203 + p 1 consumer + p 2 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getPeaksAndValleysThresholds f method_40014 + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickPeakBiome f method_38204 + p 1 temperature + p 2 humidity + p 3 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getWeirdnessThresholds g method_40015 + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickSlopeBiome g method_38205 + p 1 temperature + p 2 humidity + p 3 param + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickShatteredBiome h method_38183 + p 1 temperature + p 2 humidity + p 3 param + m ()V +c net/minecraft/world/level/biome/TheEndBiomeSource den net/minecraft/class_2169 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24730 + f Lnet/minecraft/core/Holder; end c field_26700 + f Lnet/minecraft/core/Holder; highlands d field_26701 + f Lnet/minecraft/core/Holder; midlands e field_26702 + f Lnet/minecraft/core/Holder; islands f field_26703 + f Lnet/minecraft/core/Holder; barrens g field_26704 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46679 a method_46679 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/TheEndBiomeSource; create a method_46680 + p 0 biomeGetter + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 end + p 2 highlands + p 3 midlands + p 4 islands + p 5 barrens + m ()V +c net/minecraft/world/level/biome/package-info deo net/minecraft/class_6086 +c net/minecraft/world/level/block/AbstractBannerBlock dep net/minecraft/class_2185 + f Lnet/minecraft/world/item/DyeColor; color a field_9855 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_9303 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties +c net/minecraft/world/level/block/AbstractCandleBlock deq net/minecraft/class_5540 + f I LIGHT_PER_CANDLE a field_30987 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_27083 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V extinguish a method_31614 + p 0 player + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/util/RandomSource;)V addParticlesAndSound a method_31610 + p 0 level + p 1 offset + p 2 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/phys/Vec3;)V method_31611 a method_31611 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Z)V setLit a method_31612 + p 0 level + p 1 state + p 2 pos + p 3 lit + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)V method_35244 a method_35244 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/lang/Iterable; getParticleOffsets b method_31613 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLit c method_35245 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBeLit d method_35246 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AbstractCauldronBlock der net/minecraft/class_2275 + f I FLOOR_LEVEL a field_30988 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10746 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; interactions c field_27084 + f I SIDE_THICKNESS d field_30989 + f I LEG_WIDTH e field_30990 + f I LEG_HEIGHT f field_30991 + f I LEG_DEPTH g field_30992 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INSIDE h field_10747 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)V receiveStalactiteDrip a method_32764 + p 1 state + p 2 level + p 3 pos + p 4 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z isEntityInsideContent a method_31616 + p 1 state + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/Fluid;)Z canReceiveStalactiteDrip a method_32765 + p 1 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;)D getContentHeight b method_31615 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFull d method_32766 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap;)V + p 1 properties + p 2 interactions + m ()V +c net/minecraft/world/level/block/AbstractChestBlock des net/minecraft/class_4739 + f Ljava/util/function/Supplier; blockEntityType a field_21796 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult; combine a method_24167 + p 1 state + p 2 level + p 3 pos + p 4 override + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Ljava/util/function/Supplier;)V + p 1 properties + p 2 blockEntityType +c net/minecraft/world/level/block/AbstractFurnaceBlock det net/minecraft/class_2363 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING a field_11104 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11105 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; createFurnaceTicker a method_31617 + p 0 level + p 1 serverType + p 2 clientType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V openContainer a method_17025 + c Called to open this furnace's container.\n\n@see #use + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AbstractSkullBlock deu net/minecraft/class_2190 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED a field_46110 + f Lnet/minecraft/world/level/block/SkullBlock$Type; type b field_9867 + m ()Lnet/minecraft/world/level/block/SkullBlock$Type; getType b method_9327 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/AirBlock dev net/minecraft/class_2189 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46253 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AmethystBlock dew net/minecraft/class_5541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46254 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/AmethystClusterBlock dex net/minecraft/class_5542 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46255 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_27086 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_27087 + f Lnet/minecraft/world/phys/shapes/VoxelShape; northAabb e field_27088 + f Lnet/minecraft/world/phys/shapes/VoxelShape; southAabb f field_27089 + f Lnet/minecraft/world/phys/shapes/VoxelShape; eastAabb g field_27090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; westAabb h field_27091 + f Lnet/minecraft/world/phys/shapes/VoxelShape; upAabb i field_27092 + f Lnet/minecraft/world/phys/shapes/VoxelShape; downAabb j field_27093 + f F height k field_46256 + f F aabbOffset l field_46257 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53970 a method_53970 + m (Lnet/minecraft/world/level/block/AmethystClusterBlock;)Ljava/lang/Float; method_53971 a method_53971 + m (Lnet/minecraft/world/level/block/AmethystClusterBlock;)Ljava/lang/Float; method_53972 b method_53972 + m (FFLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 height + p 2 aabbOffset + p 3 properties + m ()V +c net/minecraft/world/level/block/AmethystClusterBlock$1 dex$1 net/minecraft/class_5542$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_27094 + m ()V +c net/minecraft/world/level/block/AnvilBlock dey net/minecraft/class_2199 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46258 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_9883 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE c field_9882 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_LEG1 d field_9885 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_LEG2 e field_9888 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_TOP f field_9884 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_LEG1 g field_9891 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_LEG2 h field_9889 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_TOP i field_9886 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB j field_9887 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB k field_9892 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE l field_17349 + f F FALL_DAMAGE_PER_DISTANCE m field_30993 + f I FALL_DAMAGE_MAX n field_30994 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17453 a method_17453 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; damage e method_9346 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AttachedStemBlock dez net/minecraft/class_2195 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46259 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_9873 + f F AABB_OFFSET c field_30995 + f Ljava/util/Map; AABBS d field_9874 + f Lnet/minecraft/resources/ResourceKey; fruit e field_9875 + f Lnet/minecraft/resources/ResourceKey; stem f field_46260 + f Lnet/minecraft/resources/ResourceKey; seed g field_27095 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53973 a method_53973 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53974 a method_53974 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53975 b method_53975 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53976 c method_53976 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 stem + p 2 fruit + p 3 seed + p 4 properties + m ()V +c net/minecraft/world/level/block/AzaleaBlock dfa net/minecraft/class_5800 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_30996 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/BambooSaplingBlock dfb net/minecraft/class_2202 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46262 + f F SAPLING_AABB_OFFSET b field_31005 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SAPLING_SHAPE c field_9897 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V growBamboo a method_9351 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BambooStalkBlock dfc net/minecraft/class_2211 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46263 + f F SMALL_LEAVES_AABB_OFFSET b field_30997 + f F LARGE_LEAVES_AABB_OFFSET c field_30998 + f F COLLISION_AABB_OFFSET d field_30999 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SMALL_SHAPE e field_9912 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LARGE_SHAPE f field_9915 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE g field_9913 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE h field_9914 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; LEAVES i field_9917 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE j field_9916 + f I MAX_HEIGHT k field_31000 + f I STAGE_GROWING l field_31001 + f I STAGE_DONE_GROWING m field_31002 + f I AGE_THIN_BAMBOO n field_31003 + f I AGE_THICK_BAMBOO o field_31004 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeightAboveUpToMax a method_9387 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;I)V growBamboo a method_9385 + p 1 state + p 2 level + p 3 pos + p 4 random + p 5 age + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeightBelowUpToMax b method_9386 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BannerBlock dfd net/minecraft/class_2215 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46264 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_9924 + f Ljava/util/Map; BY_COLOR c field_9925 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_9923 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53977 a method_53977 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; byColor a method_9398 + p 0 color + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/BarrelBlock dfe net/minecraft/class_3708 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46265 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16320 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN c field_18006 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BarrierBlock dff net/minecraft/class_2213 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46266 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_45144 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralFanBlock dfg net/minecraft/class_2221 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46267 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_9932 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralPlantBlock dfh net/minecraft/class_2217 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46268 + f F AABB_OFFSET b field_31006 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_9928 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralPlantTypeBlock dfi net/minecraft/class_2230 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB a field_9939 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_9940 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V tryScheduleDieTick a method_9430 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z scanForWater e method_9431 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralWallFanBlock dfj net/minecraft/class_2222 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46269 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_9933 + f Ljava/util/Map; SHAPES e field_9934 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseEntityBlock dfk net/minecraft/class_2237 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; createTickerHelper a method_31618 + p 0 serverType + p 1 clientType + p 2 ticker + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/BaseFireBlock dfl net/minecraft/class_4770 + f F AABB_OFFSET a field_31007 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB b field_22498 + f I SECONDS_ON_FIRE c field_31008 + f F fireDamage d field_22088 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_24416 + p 0 reader + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z inPortalDimension a method_30366 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canBePlacedAt a method_30032 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isPortal b method_30033 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBurn f method_10195 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;F)V + p 1 properties + p 2 fireDamage + m ()V +c net/minecraft/world/level/block/BasePressurePlateBlock dfm net/minecraft/class_2231 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_AABB a field_9942 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_9943 + f Lnet/minecraft/world/phys/AABB; TOUCH_AABB c field_9941 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type d field_42726 + m (Lnet/minecraft/world/entity/Entity;)Z method_52209 a method_52209 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)V checkPressed a method_9433 + p 1 entity + p 2 level + p 3 pos + p 4 state + p 5 currentSignal + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/AABB;Ljava/lang/Class;)I getEntityCount a method_52210 + p 0 level + p 1 box + p 2 entityClass + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours a method_9437 + c Notify block and block below of changes + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;I)Lnet/minecraft/world/level/block/state/BlockState; setSignalForState a method_9432 + c Returns the block state that encodes the given signal. + p 1 state + p 2 signal + m ()I getPressedTime b method_9563 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getSignalStrength b method_9434 + c Calculates what the signal strength of a pressure plate at the given location should be. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)I getSignalForState g method_9435 + c Returns the signal encoded in the given block state. + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/world/level/block/state/properties/BlockSetType;)V + p 1 properties + p 2 type + m ()V +c net/minecraft/world/level/block/BaseRailBlock dfn net/minecraft/class_2241 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLAT_AABB a field_9958 + f Lnet/minecraft/world/phys/shapes/VoxelShape; HALF_BLOCK_AABB b field_9960 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_27096 + f Z isStraight d field_9959 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isRail a method_9479 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; updateDir a method_9475 + p 1 level + p 2 pos + p 3 state + p 4 alwaysPlace + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateState a method_9477 + p 1 state + p 2 level + p 3 pos + p 4 neighborBlock + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_24417 + p 1 state + p 2 level + p 3 pos + p 4 movedByPiston + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/properties/RailShape;)Z shouldBeRemoved a method_27935 + p 0 pos + p 1 level + p 2 shape + m ()Z isStraight b method_9478 + m ()Lnet/minecraft/world/level/block/state/properties/Property; getShapeProperty c method_9474 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isRail g method_9476 + p 0 state + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 isStraight + p 2 properties + m ()V +c net/minecraft/world/level/block/BaseRailBlock$1 dfn$1 net/minecraft/class_2241$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_24465 + m ()V +c net/minecraft/world/level/block/BaseTorchBlock dfo net/minecraft/class_8810 + f I AABB_STANDING_OFFSET a field_46270 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_46271 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/BeaconBeamBlock dfp net/minecraft/class_4275 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_10622 +c net/minecraft/world/level/block/BeaconBlock dfq net/minecraft/class_2238 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46272 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BedBlock dfr net/minecraft/class_2244 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46273 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PART b field_9967 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OCCUPIED c field_9968 + f I HEIGHT d field_31009 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE e field_16788 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_NORTH_WEST f field_16782 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_SOUTH_WEST g field_16784 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_NORTH_EAST h field_16786 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_SOUTH_EAST i field_16789 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE j field_16787 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE k field_16785 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE l field_16783 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE m field_16790 + f I LEG_WIDTH n field_31010 + f Lnet/minecraft/world/item/DyeColor; color o field_9966 + m (Lnet/minecraft/world/entity/Entity;)V bounceUp a method_21838 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;F)Ljava/util/Optional; findStandUpPosition a method_9484 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 direction + p 4 yRot + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Ljava/util/Optional; findBunkBedStandUpPosition a method_30835 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 stateFacing + p 4 entityFacing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;[[IZ)Ljava/util/Optional; findStandUpPositionAtOffset a method_30836 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 offsets + p 4 simulate + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/player/Player$BedSleepingProblem;)V method_55767 a method_55767 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53978 a method_53978 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction; getBedOrientation a method_18476 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z canSetSpawn a method_27352 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z kickVillagerOutOfBed a method_22357 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/properties/BedPart;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; getNeighbourDirection a method_9488 + c Given a bed part and the direction it's facing, find the direction to move to get the other bed part + p 0 part + p 1 direction + m (Lnet/minecraft/core/Direction;)[[I bedAboveStandUpOffsets a method_30837 + p 0 dir + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[[I bedStandUpOffsets a method_30838 + p 0 firstDir + p 1 secondDir + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_9487 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isBunkBed b method_30839 + p 0 level + p 1 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[[I bedSurroundStandUpOffsets b method_30840 + p 0 firstDir + p 1 secondDir + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection g method_24163 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; getBlockType h method_24164 + p 0 state + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/BedBlock$1 dfr$1 net/minecraft/class_2244$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_16791 + m ()V +c net/minecraft/world/level/block/BeehiveBlock dfs net/minecraft/class_4481 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46274 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_20419 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HONEY_LEVEL c field_20420 + f I MAX_HONEY_LEVELS d field_31011 + f I SHEARED_HONEYCOMB_COUNT e field_31012 + m (Lnet/minecraft/world/level/Level;DDDDD)V spawnFluidParticle a method_21840 + p 1 particleData + p 2 x1 + p 4 x2 + p 6 z1 + p 8 z2 + p 10 y + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V resetHoneyLevel a method_23754 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)V releaseBeesAndResetHoneyLevel a method_21841 + p 1 level + p 2 state + p 3 pos + p 4 player + p 5 beeReleaseStatus + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropHoneycomb a method_21842 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V trySpawnDripParticles a method_21843 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;D)V spawnParticle a method_21844 + p 1 level + p 2 pos + p 3 shape + p 4 y + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V angerNearbyBees b method_23893 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z hiveContainsBees c method_23894 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BeetrootBlock dft net/minecraft/class_2242 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46275 + f I MAX_AGE b field_31013 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_9962 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE g field_9961 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BellBlock dfu net/minecraft/class_3709 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_SOUTH F field_17093 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_SHAPE G field_17094 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46276 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16324 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ATTACHMENT c field_16326 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_20648 + f I EVENT_BELL_RING e field_31014 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SOUTH_FLOOR_SHAPE f field_16325 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_WEST_FLOOR_SHAPE g field_16322 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_TOP_SHAPE h field_17087 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_BOTTOM_SHAPE i field_17088 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_SHAPE j field_17089 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SOUTH_BETWEEN k field_17090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_WEST_BETWEEN l field_16321 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_WEST m field_17091 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_EAST n field_17092 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_NORTH o field_16323 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z attemptToRing a method_17026 + p 1 entity + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/player/Player;Z)Z onHit a method_19285 + p 1 level + p 2 state + p 3 result + p 4 player + p 5 canRingBell + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z attemptToRing a method_33600 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;D)Z isProperHit a method_17028 + c @return true if the bell can be rung from the given side and vertical position. For example, bells attached to their northern neighbor cannot be rung from the south face, since it can't swing north-south. + p 1 pos + p 2 direction + p 3 distanceY + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVoxelShape m method_16116 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection n method_16115 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BellBlock$1 dfu$1 net/minecraft/class_3709$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$BellAttachType a field_16327 + m ()V +c net/minecraft/world/level/block/BigDripleafBlock dfv net/minecraft/class_5801 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46277 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_28660 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TILT c field_28661 + f I NO_TICK d field_31015 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; DELAY_UNTIL_NEXT_TILT_STATE e field_28662 + f I MAX_GEN_HEIGHT f field_31016 + f I STEM_WIDTH g field_31017 + f I ENTITY_DETECTION_MIN_Y h field_31018 + f I LOWEST_LEAF_TOP i field_31019 + f Ljava/util/Map; LEAF_SHAPES j field_28664 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STEM_SLICER k field_31020 + f Ljava/util/Map; STEM_SHAPES l field_28665 + f Ljava/util/Map; shapesCache m field_28666 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playTiltSound a method_33601 + p 0 level + p 1 pos + p 2 sound + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V placeWithRandomHeight a method_33603 + p 0 level + p 1 random + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/core/Direction;)Z place a method_33726 + p 0 level + p 1 pos + p 2 fluidState + p 3 direction + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlaceAt a method_33725 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Tilt;)V setTilt a method_33604 + p 0 state + p 1 level + p 2 pos + p 3 tilt + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Tilt;Lnet/minecraft/sounds/SoundEvent;)V setTiltAndScheduleTick a method_33605 + p 1 state + p 2 level + p 3 pos + p 4 tilt + p 5 sound + m (Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;)V method_33609 a method_33609 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z canEntityTilt a method_33606 + p 0 pos + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V resetTilt d method_33610 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_33611 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canReplace n method_33727 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BigDripleafStemBlock dfw net/minecraft/class_5802 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46278 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE b field_28668 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE c field_28669 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE d field_28670 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE e field_28671 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_28667 + f I STEM_WIDTH g field_31021 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/core/Direction;)Z place a method_33728 + p 0 level + p 1 pos + p 2 fluidState + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BigDripleafStemBlock$1 dfw$1 net/minecraft/class_5802$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_28672 + m ()V +c net/minecraft/world/level/block/BlastFurnaceBlock dfx net/minecraft/class_3710 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46279 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/Block dfy net/minecraft/class_2248 + c

Interface {@link net.fabricmc.fabric.api.block.v1.FabricBlock} injected by mod fabric-block-api-v1

+ f I UPDATE_ALL_IMMEDIATE A field_31022 + f F INDESTRUCTIBLE B field_31023 + f F INSTANT C field_31024 + f I UPDATE_LIMIT D field_31025 + f Lnet/minecraft/world/level/block/state/StateDefinition; stateDefinition E field_10647 + f Lorg/slf4j/Logger; LOGGER a field_10638 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36404 + f Lcom/google/common/cache/LoadingCache; SHAPE_FULL_BLOCK_CACHE c field_19312 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlockState d field_10646 + f Ljava/lang/String; descriptionId e field_10642 + f Lnet/minecraft/world/item/Item; item f field_17562 + f I CACHE_SIZE g field_31026 + f Ljava/lang/ThreadLocal; OCCLUSION_CACHE h field_10649 + f Lcom/mojang/serialization/MapCodec; CODEC p field_46280 + f Lnet/minecraft/core/IdMapper; BLOCK_STATE_REGISTRY q field_10651 + f I UPDATE_NEIGHBORS r field_31027 + f I UPDATE_CLIENTS s field_31028 + f I UPDATE_INVISIBLE t field_31029 + f I UPDATE_IMMEDIATE u field_31030 + f I UPDATE_KNOWN_SHAPE v field_31031 + f I UPDATE_SUPPRESS_DROPS w field_31032 + f I UPDATE_MOVE_BY_PISTON x field_31033 + f I UPDATE_NONE y field_31035 + f I UPDATE_ALL z field_31036 + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; box a method_9541 + p 0 x1 + p 2 y1 + p 4 z1 + p 6 x2 + p 8 y2 + p 10 z2 + m (I)Lnet/minecraft/world/level/block/state/BlockState; stateById a method_9531 + p 0 id + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;I)V popExperience a method_9583 + c Spawns the given amount of experience into the Level as experience orb entities. + p 1 level + p 2 pos + p 3 amount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/valueproviders/IntProvider;)V tryDropExperience a method_41420 + p 1 level + p 2 pos + p 3 heldItem + p 4 amount + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/block/Block; byItem a method_9503 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/List;Lnet/minecraft/world/item/TooltipFlag;)V appendHoverText a method_9568 + p 1 stack + p 2 context + p 3 tooltipComponents + p 4 tooltipFlag + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_9605 + p 1 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;)V updateEntityAfterFallOn a method_9502 + c Called when an Entity lands on this Block.\nThis method is responsible for doing any modification on the motion of the entity that should result from the landing. + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/Explosion;)Z dropFromExplosion a method_9533 + c @return whether this block should drop its drops when destroyed by the given explosion + p 1 explosion + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/item/ItemEntity; method_36990 a method_36990 + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;DDD)Lnet/minecraft/world/entity/item/ItemEntity; method_36991 a method_36991 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnDestroyParticles a method_33614 + p 1 level + p 2 player + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/item/ItemStack;)V playerDestroy a method_9556 + c Called after a player has successfully harvested this block. This method will only be called if the player has used the correct tool and drops should be spawned. + p 1 level + p 2 player + p 3 pos + p 4 state + p 5 blockEntity + p 6 tool + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;F)V fallOn a method_9554 + p 1 level + p 2 state + p 3 pos + p 4 entity + p 5 fallDistance + m (Lnet/minecraft/world/level/Level;Ljava/util/function/Supplier;Lnet/minecraft/world/item/ItemStack;)V popResource a method_36993 + p 0 level + p 1 itemEntitySupplier + p 2 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V popResource a method_9577 + c Spawns the given stack into the Level at the given position, respecting the doTileDrops gamerule + p 0 level + p 1 pos + p 2 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;)V wasExploded a method_9586 + c Called when this Block is destroyed by an Explosion + p 1 level + p 2 pos + p 3 explosion + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/Entity;)V stepOn a method_9591 + p 1 level + p 2 pos + p 3 state + p 4 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)V setPlacedBy a method_9567 + c Called by BlockItem after this block has been placed. + p 1 level + p 2 pos + p 3 state + p 4 placer + p 5 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/state/BlockState; playerWillDestroy a method_9576 + p 1 level + p 2 pos + p 3 state + p 4 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;)V popResourceFromFace a method_36992 + p 0 level + p 1 pos + p 2 direction + p 3 stack + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9596 a method_9596 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V destroy a method_9585 + c Called after this block has been removed by a player. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; getCloneItemStack a method_9574 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSupportCenter a method_20044 + c @return whether the given position has a solid center in the given direction + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isPossibleToRespawnInThis a method_9538 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;)Ljava/util/List; getDrops a method_9562 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getDrops a method_9609 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + p 4 entity + p 5 tool + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Z shouldRenderFace a method_9607 + p 0 state + p 1 level + p 2 offset + p 3 face + p 4 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V animateTick a method_9496 + c Called periodically clientside on blocks near the player to show effects (like furnace fire particles). + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/biome/Biome$Precipitation;)V handlePrecipitation a method_9504 + p 1 state + p 2 level + p 3 pos + p 4 precipitation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/ItemStack;)V dropResources a method_9511 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + p 4 entity + p 5 tool + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;)V dropResources a method_9610 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; pushEntitiesUp a method_9582 + p 0 oldState + p 1 newState + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateOrDestroy a method_30094 + c Replaces oldState with newState, possibly playing effects and creating drops. Flags are as in {@link net.minecraft.world.level.Level#setBlock(net.minecraft.core.BlockPos, net.minecraft.world.level.block.state.BlockState, int)}. + p 0 oldState + p 1 newState + p 2 level + p 3 pos + p 4 flags + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateOrDestroy a method_9611 + p 0 oldState + p 1 newState + p 2 level + p 3 pos + p 4 flags + p 5 recursionLeft + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/BlockState; copyProperty a method_34724 + p 0 sourceState + p 1 targetState + p 2 property + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;)V createBlockStateDefinition a method_9515 + p 1 builder + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isShapeFullBlock a method_9614 + c @return whether the provided {@link net.minecraft.world.phys.shapes.VoxelShape} is a full block (1x1x1) + p 0 shape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z isFaceFull a method_9501 + p 0 shape + p 1 face + m (Ljava/util/function/Function;)Lcom/google/common/collect/ImmutableMap; getShapeForEachState a method_33615 + p 1 shapeGetter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9544 b method_9544 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateFromNeighbourShapes b method_9510 + c With the provided block state, performs neighbor checks for all neighboring blocks to get an "adjusted" blockstate for placement in the world, if the current state is not valid. + p 0 currentState + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z canSupportRigidBlock c method_16361 + c @return whether the given position has a rigid top face + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9587 c method_9587 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropResources c method_9497 + p 0 state + p 1 level + p 2 pos + m ()F getExplosionResistance e method_9520 + c @return how much this block resists an explosion + m ()Lnet/minecraft/network/chat/MutableComponent; getName f method_9518 + m ()Ljava/lang/String; getDescriptionId g method_9539 + c @return the description ID of this block, for use with language files. + m ()F getFriction h method_9499 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getId i method_9507 + p 0 state + m ()F getSpeedFactor j method_23349 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isExceptionForConnection j method_9581 + p 0 state + m ()F getJumpFactor k method_23350 + m (Lnet/minecraft/world/level/block/state/BlockState;)V registerDefaultState k method_9590 + p 1 state + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getStateDefinition l method_9595 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; withPropertiesOf l method_34725 + p 1 state + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultBlockState o method_9564 + c Gets the default state for this block + m ()Z hasDynamicShape p method_9543 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder s method_40142 + m ()Lit/unimi/dsi/fastutil/objects/Object2ByteLinkedOpenHashMap; method_9508 y method_9508 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/Block$1 dfy$1 net/minecraft/class_2248$1 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/lang/Boolean; load a method_20516 + p 1 shape + m ()V +c net/minecraft/world/level/block/Block$2 dfy$2 net/minecraft/class_2248$2 + m (IF)V +c net/minecraft/world/level/block/Block$BlockStatePairKey dfy$a net/minecraft/class_2248$class_2249 + f Lnet/minecraft/world/level/block/state/BlockState; first a field_10652 + f Lnet/minecraft/world/level/block/state/BlockState; second b field_10654 + f Lnet/minecraft/core/Direction; direction c field_10653 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)V + p 1 first + p 2 second + p 3 direction +c net/minecraft/world/level/block/BlockTypes dfz net/minecraft/class_8811 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46281 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_53979 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/block/Blocks dga net/minecraft/class_2246 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SAPLING A field_10276 + f Lnet/minecraft/world/level/block/Block; ACACIA_SAPLING B field_10385 + f Lnet/minecraft/world/level/block/Block; CHERRY_SAPLING C field_42727 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SAPLING D field_10160 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PROPAGULE E field_37544 + f Lnet/minecraft/world/level/block/Block; BEDROCK F field_9987 + f Lnet/minecraft/world/level/block/Block; WATER G field_10382 + f Lnet/minecraft/world/level/block/Block; LAVA H field_10164 + f Lnet/minecraft/world/level/block/Block; SAND I field_10102 + f Lnet/minecraft/world/level/block/Block; SUSPICIOUS_SAND J field_42728 + f Lnet/minecraft/world/level/block/Block; RED_SAND K field_10534 + f Lnet/minecraft/world/level/block/Block; GRAVEL L field_10255 + f Lnet/minecraft/world/level/block/Block; SUSPICIOUS_GRAVEL M field_43227 + f Lnet/minecraft/world/level/block/Block; GOLD_ORE N field_10571 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_GOLD_ORE O field_29026 + f Lnet/minecraft/world/level/block/Block; IRON_ORE P field_10212 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_IRON_ORE Q field_29027 + f Lnet/minecraft/world/level/block/Block; COAL_ORE R field_10418 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_COAL_ORE S field_29219 + f Lnet/minecraft/world/level/block/Block; NETHER_GOLD_ORE T field_23077 + f Lnet/minecraft/world/level/block/Block; OAK_LOG U field_10431 + f Lnet/minecraft/world/level/block/Block; SPRUCE_LOG V field_10037 + f Lnet/minecraft/world/level/block/Block; BIRCH_LOG W field_10511 + f Lnet/minecraft/world/level/block/Block; JUNGLE_LOG X field_10306 + f Lnet/minecraft/world/level/block/Block; ACACIA_LOG Y field_10533 + f Lnet/minecraft/world/level/block/Block; CHERRY_LOG Z field_42729 + f Lnet/minecraft/world/level/block/Block; STRIPPED_ACACIA_WOOD aA field_10103 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CHERRY_WOOD aB field_42730 + f Lnet/minecraft/world/level/block/Block; STRIPPED_DARK_OAK_WOOD aC field_10374 + f Lnet/minecraft/world/level/block/Block; STRIPPED_MANGROVE_WOOD aD field_37550 + f Lnet/minecraft/world/level/block/Block; OAK_LEAVES aE field_10503 + f Lnet/minecraft/world/level/block/Block; SPRUCE_LEAVES aF field_9988 + f Lnet/minecraft/world/level/block/Block; BIRCH_LEAVES aG field_10539 + f Lnet/minecraft/world/level/block/Block; JUNGLE_LEAVES aH field_10335 + f Lnet/minecraft/world/level/block/Block; ACACIA_LEAVES aI field_10098 + f Lnet/minecraft/world/level/block/Block; CHERRY_LEAVES aJ field_42731 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_LEAVES aK field_10035 + f Lnet/minecraft/world/level/block/Block; MANGROVE_LEAVES aL field_37551 + f Lnet/minecraft/world/level/block/Block; AIR a field_10124 + f Lnet/minecraft/world/level/block/Block; AZALEA_LEAVES aM field_28673 + f Lnet/minecraft/world/level/block/Block; FLOWERING_AZALEA_LEAVES aN field_28674 + f Lnet/minecraft/world/level/block/Block; SPONGE aO field_10258 + f Lnet/minecraft/world/level/block/Block; WET_SPONGE aP field_10562 + f Lnet/minecraft/world/level/block/Block; GLASS aQ field_10033 + f Lnet/minecraft/world/level/block/Block; LAPIS_ORE aR field_10090 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_LAPIS_ORE aS field_29028 + f Lnet/minecraft/world/level/block/Block; LAPIS_BLOCK aT field_10441 + f Lnet/minecraft/world/level/block/Block; DISPENSER aU field_10200 + f Lnet/minecraft/world/level/block/Block; SANDSTONE aV field_9979 + f Lnet/minecraft/world/level/block/Block; CHISELED_SANDSTONE aW field_10292 + f Lnet/minecraft/world/level/block/Block; CUT_SANDSTONE aX field_10361 + f Lnet/minecraft/world/level/block/Block; NOTE_BLOCK aY field_10179 + f Lnet/minecraft/world/level/block/Block; WHITE_BED aZ field_10120 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_LOG aa field_10010 + f Lnet/minecraft/world/level/block/Block; MANGROVE_LOG ab field_37545 + f Lnet/minecraft/world/level/block/Block; MANGROVE_ROOTS ac field_37546 + f Lnet/minecraft/world/level/block/Block; MUDDY_MANGROVE_ROOTS ad field_37547 + f Lnet/minecraft/world/level/block/Block; BAMBOO_BLOCK ae field_41072 + f Lnet/minecraft/world/level/block/Block; STRIPPED_SPRUCE_LOG af field_10436 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BIRCH_LOG ag field_10366 + f Lnet/minecraft/world/level/block/Block; STRIPPED_JUNGLE_LOG ah field_10254 + f Lnet/minecraft/world/level/block/Block; STRIPPED_ACACIA_LOG ai field_10622 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CHERRY_LOG aj field_42732 + f Lnet/minecraft/world/level/block/Block; STRIPPED_DARK_OAK_LOG ak field_10244 + f Lnet/minecraft/world/level/block/Block; STRIPPED_OAK_LOG al field_10519 + f Lnet/minecraft/world/level/block/Block; STRIPPED_MANGROVE_LOG am field_37548 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BAMBOO_BLOCK an field_41073 + f Lnet/minecraft/world/level/block/Block; OAK_WOOD ao field_10126 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WOOD ap field_10155 + f Lnet/minecraft/world/level/block/Block; BIRCH_WOOD aq field_10307 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WOOD ar field_10303 + f Lnet/minecraft/world/level/block/Block; ACACIA_WOOD as field_9999 + f Lnet/minecraft/world/level/block/Block; CHERRY_WOOD at field_42733 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WOOD au field_10178 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WOOD av field_37549 + f Lnet/minecraft/world/level/block/Block; STRIPPED_OAK_WOOD aw field_10250 + f Lnet/minecraft/world/level/block/Block; STRIPPED_SPRUCE_WOOD ax field_10558 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BIRCH_WOOD ay field_10204 + f Lnet/minecraft/world/level/block/Block; STRIPPED_JUNGLE_WOOD az field_10084 + f Lnet/minecraft/world/level/block/Block; WHITE_WOOL bA field_10446 + f Lnet/minecraft/world/level/block/Block; ORANGE_WOOL bB field_10095 + f Lnet/minecraft/world/level/block/Block; MAGENTA_WOOL bC field_10215 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_WOOL bD field_10294 + f Lnet/minecraft/world/level/block/Block; YELLOW_WOOL bE field_10490 + f Lnet/minecraft/world/level/block/Block; LIME_WOOL bF field_10028 + f Lnet/minecraft/world/level/block/Block; PINK_WOOL bG field_10459 + f Lnet/minecraft/world/level/block/Block; GRAY_WOOL bH field_10423 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_WOOL bI field_10222 + f Lnet/minecraft/world/level/block/Block; CYAN_WOOL bJ field_10619 + f Lnet/minecraft/world/level/block/Block; PURPLE_WOOL bK field_10259 + f Lnet/minecraft/world/level/block/Block; BLUE_WOOL bL field_10514 + f Lnet/minecraft/world/level/block/Block; STONE b field_10340 + f Lnet/minecraft/world/level/block/Block; BROWN_WOOL bM field_10113 + f Lnet/minecraft/world/level/block/Block; GREEN_WOOL bN field_10170 + f Lnet/minecraft/world/level/block/Block; RED_WOOL bO field_10314 + f Lnet/minecraft/world/level/block/Block; BLACK_WOOL bP field_10146 + f Lnet/minecraft/world/level/block/Block; MOVING_PISTON bQ field_10008 + f Lnet/minecraft/world/level/block/Block; DANDELION bR field_10182 + f Lnet/minecraft/world/level/block/Block; TORCHFLOWER bS field_42734 + f Lnet/minecraft/world/level/block/Block; POPPY bT field_10449 + f Lnet/minecraft/world/level/block/Block; BLUE_ORCHID bU field_10086 + f Lnet/minecraft/world/level/block/Block; ALLIUM bV field_10226 + f Lnet/minecraft/world/level/block/Block; AZURE_BLUET bW field_10573 + f Lnet/minecraft/world/level/block/Block; RED_TULIP bX field_10270 + f Lnet/minecraft/world/level/block/Block; ORANGE_TULIP bY field_10048 + f Lnet/minecraft/world/level/block/Block; WHITE_TULIP bZ field_10156 + f Lnet/minecraft/world/level/block/Block; ORANGE_BED ba field_10410 + f Lnet/minecraft/world/level/block/Block; MAGENTA_BED bb field_10230 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_BED bc field_10621 + f Lnet/minecraft/world/level/block/Block; YELLOW_BED bd field_10356 + f Lnet/minecraft/world/level/block/Block; LIME_BED be field_10180 + f Lnet/minecraft/world/level/block/Block; PINK_BED bf field_10610 + f Lnet/minecraft/world/level/block/Block; GRAY_BED bg field_10141 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_BED bh field_10326 + f Lnet/minecraft/world/level/block/Block; CYAN_BED bi field_10109 + f Lnet/minecraft/world/level/block/Block; PURPLE_BED bj field_10019 + f Lnet/minecraft/world/level/block/Block; BLUE_BED bk field_10527 + f Lnet/minecraft/world/level/block/Block; BROWN_BED bl field_10288 + f Lnet/minecraft/world/level/block/Block; GREEN_BED bm field_10561 + f Lnet/minecraft/world/level/block/Block; RED_BED bn field_10069 + f Lnet/minecraft/world/level/block/Block; BLACK_BED bo field_10461 + f Lnet/minecraft/world/level/block/Block; POWERED_RAIL bp field_10425 + f Lnet/minecraft/world/level/block/Block; DETECTOR_RAIL bq field_10025 + f Lnet/minecraft/world/level/block/Block; STICKY_PISTON br field_10615 + f Lnet/minecraft/world/level/block/Block; COBWEB bs field_10343 + f Lnet/minecraft/world/level/block/Block; SHORT_GRASS bt field_10479 + f Lnet/minecraft/world/level/block/Block; FERN bu field_10112 + f Lnet/minecraft/world/level/block/Block; DEAD_BUSH bv field_10428 + f Lnet/minecraft/world/level/block/Block; SEAGRASS bw field_10376 + f Lnet/minecraft/world/level/block/Block; TALL_SEAGRASS bx field_10238 + f Lnet/minecraft/world/level/block/Block; PISTON by field_10560 + f Lnet/minecraft/world/level/block/Block; PISTON_HEAD bz field_10379 + f Lnet/minecraft/world/level/block/Block; CRAFTING_TABLE cA field_9980 + f Lnet/minecraft/world/level/block/Block; WHEAT cB field_10293 + f Lnet/minecraft/world/level/block/Block; FARMLAND cC field_10362 + f Lnet/minecraft/world/level/block/Block; FURNACE cD field_10181 + f Lnet/minecraft/world/level/block/Block; OAK_SIGN cE field_10121 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SIGN cF field_10411 + f Lnet/minecraft/world/level/block/Block; BIRCH_SIGN cG field_10231 + f Lnet/minecraft/world/level/block/Block; ACACIA_SIGN cH field_10284 + f Lnet/minecraft/world/level/block/Block; CHERRY_SIGN cI field_42735 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SIGN cJ field_10544 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SIGN cK field_10330 + f Lnet/minecraft/world/level/block/Block; MANGROVE_SIGN cL field_37554 + f Lnet/minecraft/world/level/block/Block; GRANITE c field_10474 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SIGN cM field_40277 + f Lnet/minecraft/world/level/block/Block; OAK_DOOR cN field_10149 + f Lnet/minecraft/world/level/block/Block; LADDER cO field_9983 + f Lnet/minecraft/world/level/block/Block; RAIL cP field_10167 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_STAIRS cQ field_10596 + f Lnet/minecraft/world/level/block/Block; OAK_WALL_SIGN cR field_10187 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WALL_SIGN cS field_10088 + f Lnet/minecraft/world/level/block/Block; BIRCH_WALL_SIGN cT field_10391 + f Lnet/minecraft/world/level/block/Block; ACACIA_WALL_SIGN cU field_10401 + f Lnet/minecraft/world/level/block/Block; CHERRY_WALL_SIGN cV field_42736 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WALL_SIGN cW field_10587 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WALL_SIGN cX field_10265 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WALL_SIGN cY field_37552 + f Lnet/minecraft/world/level/block/Block; BAMBOO_WALL_SIGN cZ field_40261 + f Lnet/minecraft/world/level/block/Block; PINK_TULIP ca field_10315 + f Lnet/minecraft/world/level/block/Block; OXEYE_DAISY cb field_10554 + f Lnet/minecraft/world/level/block/Block; CORNFLOWER cc field_9995 + f Lnet/minecraft/world/level/block/Block; WITHER_ROSE cd field_10606 + f Lnet/minecraft/world/level/block/Block; LILY_OF_THE_VALLEY ce field_10548 + f Lnet/minecraft/world/level/block/Block; BROWN_MUSHROOM cf field_10251 + f Lnet/minecraft/world/level/block/Block; RED_MUSHROOM cg field_10559 + f Lnet/minecraft/world/level/block/Block; GOLD_BLOCK ch field_10205 + f Lnet/minecraft/world/level/block/Block; IRON_BLOCK ci field_10085 + f Lnet/minecraft/world/level/block/Block; BRICKS cj field_10104 + f Lnet/minecraft/world/level/block/Block; TNT ck field_10375 + f Lnet/minecraft/world/level/block/Block; BOOKSHELF cl field_10504 + f Lnet/minecraft/world/level/block/Block; CHISELED_BOOKSHELF cm field_40276 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE cn field_9989 + f Lnet/minecraft/world/level/block/Block; OBSIDIAN co field_10540 + f Lnet/minecraft/world/level/block/Block; TORCH cp field_10336 + f Lnet/minecraft/world/level/block/Block; WALL_TORCH cq field_10099 + f Lnet/minecraft/world/level/block/Block; FIRE cr field_10036 + f Lnet/minecraft/world/level/block/Block; SOUL_FIRE cs field_22089 + f Lnet/minecraft/world/level/block/Block; SPAWNER ct field_10260 + f Lnet/minecraft/world/level/block/Block; OAK_STAIRS cu field_10563 + f Lnet/minecraft/world/level/block/Block; CHEST cv field_10034 + f Lnet/minecraft/world/level/block/Block; REDSTONE_WIRE cw field_10091 + f Lnet/minecraft/world/level/block/Block; DIAMOND_ORE cx field_10442 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_DIAMOND_ORE cy field_29029 + f Lnet/minecraft/world/level/block/Block; DIAMOND_BLOCK cz field_10201 + f Lnet/minecraft/world/level/block/Block; SPRUCE_PRESSURE_PLATE dA field_10332 + f Lnet/minecraft/world/level/block/Block; BIRCH_PRESSURE_PLATE dB field_10592 + f Lnet/minecraft/world/level/block/Block; JUNGLE_PRESSURE_PLATE dC field_10026 + f Lnet/minecraft/world/level/block/Block; ACACIA_PRESSURE_PLATE dD field_10397 + f Lnet/minecraft/world/level/block/Block; CHERRY_PRESSURE_PLATE dE field_42737 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_PRESSURE_PLATE dF field_10470 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PRESSURE_PLATE dG field_37553 + f Lnet/minecraft/world/level/block/Block; BAMBOO_PRESSURE_PLATE dH field_40284 + f Lnet/minecraft/world/level/block/Block; REDSTONE_ORE dI field_10080 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_REDSTONE_ORE dJ field_29030 + f Lnet/minecraft/world/level/block/Block; REDSTONE_TORCH dK field_10523 + f Lnet/minecraft/world/level/block/Block; REDSTONE_WALL_TORCH dL field_10301 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE d field_10289 + f Lnet/minecraft/world/level/block/Block; STONE_BUTTON dM field_10494 + f Lnet/minecraft/world/level/block/Block; SNOW dN field_10477 + f Lnet/minecraft/world/level/block/Block; ICE dO field_10295 + f Lnet/minecraft/world/level/block/Block; SNOW_BLOCK dP field_10491 + f Lnet/minecraft/world/level/block/Block; CACTUS dQ field_10029 + f Lnet/minecraft/world/level/block/Block; CLAY dR field_10460 + f Lnet/minecraft/world/level/block/Block; SUGAR_CANE dS field_10424 + f Lnet/minecraft/world/level/block/Block; JUKEBOX dT field_10223 + f Lnet/minecraft/world/level/block/Block; OAK_FENCE dU field_10620 + f Lnet/minecraft/world/level/block/Block; NETHERRACK dV field_10515 + f Lnet/minecraft/world/level/block/Block; SOUL_SAND dW field_10114 + f Lnet/minecraft/world/level/block/Block; SOUL_SOIL dX field_22090 + f Lnet/minecraft/world/level/block/Block; BASALT dY field_22091 + f Lnet/minecraft/world/level/block/Block; POLISHED_BASALT dZ field_23151 + f Lnet/minecraft/world/level/block/Block; OAK_HANGING_SIGN da field_40262 + f Lnet/minecraft/world/level/block/Block; SPRUCE_HANGING_SIGN db field_40263 + f Lnet/minecraft/world/level/block/Block; BIRCH_HANGING_SIGN dc field_40264 + f Lnet/minecraft/world/level/block/Block; ACACIA_HANGING_SIGN dd field_40265 + f Lnet/minecraft/world/level/block/Block; CHERRY_HANGING_SIGN de field_42738 + f Lnet/minecraft/world/level/block/Block; JUNGLE_HANGING_SIGN df field_40266 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_HANGING_SIGN dg field_40267 + f Lnet/minecraft/world/level/block/Block; CRIMSON_HANGING_SIGN dh field_40268 + f Lnet/minecraft/world/level/block/Block; WARPED_HANGING_SIGN di field_40269 + f Lnet/minecraft/world/level/block/Block; MANGROVE_HANGING_SIGN dj field_40270 + f Lnet/minecraft/world/level/block/Block; BAMBOO_HANGING_SIGN dk field_40271 + f Lnet/minecraft/world/level/block/Block; OAK_WALL_HANGING_SIGN dl field_40272 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WALL_HANGING_SIGN dm field_40273 + f Lnet/minecraft/world/level/block/Block; BIRCH_WALL_HANGING_SIGN dn field_40274 + f Lnet/minecraft/world/level/block/Block; ACACIA_WALL_HANGING_SIGN do field_40275 + f Lnet/minecraft/world/level/block/Block; CHERRY_WALL_HANGING_SIGN dp field_42739 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WALL_HANGING_SIGN dq field_40278 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WALL_HANGING_SIGN dr field_40279 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WALL_HANGING_SIGN ds field_40280 + f Lnet/minecraft/world/level/block/Block; CRIMSON_WALL_HANGING_SIGN dt field_40281 + f Lnet/minecraft/world/level/block/Block; WARPED_WALL_HANGING_SIGN du field_40282 + f Lnet/minecraft/world/level/block/Block; BAMBOO_WALL_HANGING_SIGN dv field_40283 + f Lnet/minecraft/world/level/block/Block; LEVER dw field_10363 + f Lnet/minecraft/world/level/block/Block; STONE_PRESSURE_PLATE dx field_10158 + f Lnet/minecraft/world/level/block/Block; IRON_DOOR dy field_9973 + f Lnet/minecraft/world/level/block/Block; OAK_PRESSURE_PLATE dz field_10484 + f Lnet/minecraft/world/level/block/Block; BIRCH_TRAPDOOR eA field_10486 + f Lnet/minecraft/world/level/block/Block; JUNGLE_TRAPDOOR eB field_10017 + f Lnet/minecraft/world/level/block/Block; ACACIA_TRAPDOOR eC field_10608 + f Lnet/minecraft/world/level/block/Block; CHERRY_TRAPDOOR eD field_42740 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_TRAPDOOR eE field_10246 + f Lnet/minecraft/world/level/block/Block; MANGROVE_TRAPDOOR eF field_37555 + f Lnet/minecraft/world/level/block/Block; BAMBOO_TRAPDOOR eG field_40285 + f Lnet/minecraft/world/level/block/Block; STONE_BRICKS eH field_10056 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICKS eI field_10065 + f Lnet/minecraft/world/level/block/Block; CRACKED_STONE_BRICKS eJ field_10416 + f Lnet/minecraft/world/level/block/Block; CHISELED_STONE_BRICKS eK field_10552 + f Lnet/minecraft/world/level/block/Block; PACKED_MUD eL field_37556 + f Lnet/minecraft/world/level/block/Block; DIORITE e field_10508 + f Lnet/minecraft/world/level/block/Block; MUD_BRICKS eM field_37557 + f Lnet/minecraft/world/level/block/Block; INFESTED_STONE eN field_10277 + f Lnet/minecraft/world/level/block/Block; INFESTED_COBBLESTONE eO field_10492 + f Lnet/minecraft/world/level/block/Block; INFESTED_STONE_BRICKS eP field_10387 + f Lnet/minecraft/world/level/block/Block; INFESTED_MOSSY_STONE_BRICKS eQ field_10480 + f Lnet/minecraft/world/level/block/Block; INFESTED_CRACKED_STONE_BRICKS eR field_10100 + f Lnet/minecraft/world/level/block/Block; INFESTED_CHISELED_STONE_BRICKS eS field_10176 + f Lnet/minecraft/world/level/block/Block; BROWN_MUSHROOM_BLOCK eT field_10580 + f Lnet/minecraft/world/level/block/Block; RED_MUSHROOM_BLOCK eU field_10240 + f Lnet/minecraft/world/level/block/Block; MUSHROOM_STEM eV field_10556 + f Lnet/minecraft/world/level/block/Block; IRON_BARS eW field_10576 + f Lnet/minecraft/world/level/block/Block; CHAIN eX field_23985 + f Lnet/minecraft/world/level/block/Block; GLASS_PANE eY field_10285 + f Lnet/minecraft/world/level/block/Block; PUMPKIN eZ field_46282 + f Lnet/minecraft/world/level/block/Block; SOUL_TORCH ea field_22092 + f Lnet/minecraft/world/level/block/Block; SOUL_WALL_TORCH eb field_22093 + f Lnet/minecraft/world/level/block/Block; GLOWSTONE ec field_10171 + f Lnet/minecraft/world/level/block/Block; NETHER_PORTAL ed field_10316 + f Lnet/minecraft/world/level/block/Block; CARVED_PUMPKIN ee field_10147 + f Lnet/minecraft/world/level/block/Block; JACK_O_LANTERN ef field_10009 + f Lnet/minecraft/world/level/block/Block; CAKE eg field_10183 + f Lnet/minecraft/world/level/block/Block; REPEATER eh field_10450 + f Lnet/minecraft/world/level/block/Block; WHITE_STAINED_GLASS ei field_10087 + f Lnet/minecraft/world/level/block/Block; ORANGE_STAINED_GLASS ej field_10227 + f Lnet/minecraft/world/level/block/Block; MAGENTA_STAINED_GLASS ek field_10574 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_STAINED_GLASS el field_10271 + f Lnet/minecraft/world/level/block/Block; YELLOW_STAINED_GLASS em field_10049 + f Lnet/minecraft/world/level/block/Block; LIME_STAINED_GLASS en field_10157 + f Lnet/minecraft/world/level/block/Block; PINK_STAINED_GLASS eo field_10317 + f Lnet/minecraft/world/level/block/Block; GRAY_STAINED_GLASS ep field_10555 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_STAINED_GLASS eq field_9996 + f Lnet/minecraft/world/level/block/Block; CYAN_STAINED_GLASS er field_10248 + f Lnet/minecraft/world/level/block/Block; PURPLE_STAINED_GLASS es field_10399 + f Lnet/minecraft/world/level/block/Block; BLUE_STAINED_GLASS et field_10060 + f Lnet/minecraft/world/level/block/Block; BROWN_STAINED_GLASS eu field_10073 + f Lnet/minecraft/world/level/block/Block; GREEN_STAINED_GLASS ev field_10357 + f Lnet/minecraft/world/level/block/Block; RED_STAINED_GLASS ew field_10272 + f Lnet/minecraft/world/level/block/Block; BLACK_STAINED_GLASS ex field_9997 + f Lnet/minecraft/world/level/block/Block; OAK_TRAPDOOR ey field_10137 + f Lnet/minecraft/world/level/block/Block; SPRUCE_TRAPDOOR ez field_10323 + f Lnet/minecraft/world/level/block/Block; DRAGON_EGG fA field_10081 + f Lnet/minecraft/world/level/block/Block; REDSTONE_LAMP fB field_10524 + f Lnet/minecraft/world/level/block/Block; COCOA fC field_10302 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_STAIRS fD field_10142 + f Lnet/minecraft/world/level/block/Block; EMERALD_ORE fE field_10013 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_EMERALD_ORE fF field_29220 + f Lnet/minecraft/world/level/block/Block; ENDER_CHEST fG field_10443 + f Lnet/minecraft/world/level/block/Block; TRIPWIRE_HOOK fH field_10348 + f Lnet/minecraft/world/level/block/Block; TRIPWIRE fI field_10589 + f Lnet/minecraft/world/level/block/Block; EMERALD_BLOCK fJ field_10234 + f Lnet/minecraft/world/level/block/Block; SPRUCE_STAIRS fK field_10569 + f Lnet/minecraft/world/level/block/Block; BIRCH_STAIRS fL field_10408 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE f field_10346 + f Lnet/minecraft/world/level/block/Block; JUNGLE_STAIRS fM field_10122 + f Lnet/minecraft/world/level/block/Block; COMMAND_BLOCK fN field_10525 + f Lnet/minecraft/world/level/block/Block; BEACON fO field_10327 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_WALL fP field_10625 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_WALL fQ field_9990 + f Lnet/minecraft/world/level/block/Block; FLOWER_POT fR field_10495 + f Lnet/minecraft/world/level/block/Block; POTTED_TORCHFLOWER fS field_42741 + f Lnet/minecraft/world/level/block/Block; POTTED_OAK_SAPLING fT field_10468 + f Lnet/minecraft/world/level/block/Block; POTTED_SPRUCE_SAPLING fU field_10192 + f Lnet/minecraft/world/level/block/Block; POTTED_BIRCH_SAPLING fV field_10577 + f Lnet/minecraft/world/level/block/Block; POTTED_JUNGLE_SAPLING fW field_10304 + f Lnet/minecraft/world/level/block/Block; POTTED_ACACIA_SAPLING fX field_10564 + f Lnet/minecraft/world/level/block/Block; POTTED_CHERRY_SAPLING fY field_42742 + f Lnet/minecraft/world/level/block/Block; POTTED_DARK_OAK_SAPLING fZ field_10076 + f Lnet/minecraft/world/level/block/Block; MELON fa field_46283 + f Lnet/minecraft/world/level/block/Block; ATTACHED_PUMPKIN_STEM fb field_46284 + f Lnet/minecraft/world/level/block/Block; ATTACHED_MELON_STEM fc field_46285 + f Lnet/minecraft/world/level/block/Block; PUMPKIN_STEM fd field_46286 + f Lnet/minecraft/world/level/block/Block; MELON_STEM fe field_46287 + f Lnet/minecraft/world/level/block/Block; VINE ff field_10597 + f Lnet/minecraft/world/level/block/Block; GLOW_LICHEN fg field_28411 + f Lnet/minecraft/world/level/block/Block; OAK_FENCE_GATE fh field_10188 + f Lnet/minecraft/world/level/block/Block; BRICK_STAIRS fi field_10089 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_STAIRS fj field_10392 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_STAIRS fk field_37558 + f Lnet/minecraft/world/level/block/Block; MYCELIUM fl field_10402 + f Lnet/minecraft/world/level/block/Block; LILY_PAD fm field_10588 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICKS fn field_10266 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_FENCE fo field_10364 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_STAIRS fp field_10159 + f Lnet/minecraft/world/level/block/Block; NETHER_WART fq field_9974 + f Lnet/minecraft/world/level/block/Block; ENCHANTING_TABLE fr field_10485 + f Lnet/minecraft/world/level/block/Block; BREWING_STAND fs field_10333 + f Lnet/minecraft/world/level/block/Block; CAULDRON ft field_10593 + f Lnet/minecraft/world/level/block/Block; WATER_CAULDRON fu field_27097 + f Lnet/minecraft/world/level/block/Block; LAVA_CAULDRON fv field_27098 + f Lnet/minecraft/world/level/block/Block; POWDER_SNOW_CAULDRON fw field_27878 + f Lnet/minecraft/world/level/block/Block; END_PORTAL fx field_10027 + f Lnet/minecraft/world/level/block/Block; END_PORTAL_FRAME fy field_10398 + f Lnet/minecraft/world/level/block/Block; END_STONE fz field_10471 + f Lnet/minecraft/world/level/block/Block; CHERRY_BUTTON gA field_42743 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_BUTTON gB field_10493 + f Lnet/minecraft/world/level/block/Block; MANGROVE_BUTTON gC field_37559 + f Lnet/minecraft/world/level/block/Block; BAMBOO_BUTTON gD field_40286 + f Lnet/minecraft/world/level/block/Block; SKELETON_SKULL gE field_10481 + f Lnet/minecraft/world/level/block/Block; SKELETON_WALL_SKULL gF field_10388 + f Lnet/minecraft/world/level/block/Block; WITHER_SKELETON_SKULL gG field_10177 + f Lnet/minecraft/world/level/block/Block; WITHER_SKELETON_WALL_SKULL gH field_10101 + f Lnet/minecraft/world/level/block/Block; ZOMBIE_HEAD gI field_10241 + f Lnet/minecraft/world/level/block/Block; ZOMBIE_WALL_HEAD gJ field_10581 + f Lnet/minecraft/world/level/block/Block; PLAYER_HEAD gK field_10432 + f Lnet/minecraft/world/level/block/Block; PLAYER_WALL_HEAD gL field_10208 + f Lnet/minecraft/world/level/block/Block; ANDESITE g field_10115 + f Lnet/minecraft/world/level/block/Block; CREEPER_HEAD gM field_10042 + f Lnet/minecraft/world/level/block/Block; CREEPER_WALL_HEAD gN field_10509 + f Lnet/minecraft/world/level/block/Block; DRAGON_HEAD gO field_10337 + f Lnet/minecraft/world/level/block/Block; DRAGON_WALL_HEAD gP field_10472 + f Lnet/minecraft/world/level/block/Block; PIGLIN_HEAD gQ field_41305 + f Lnet/minecraft/world/level/block/Block; PIGLIN_WALL_HEAD gR field_41306 + f Lnet/minecraft/world/level/block/Block; ANVIL gS field_10535 + f Lnet/minecraft/world/level/block/Block; CHIPPED_ANVIL gT field_10105 + f Lnet/minecraft/world/level/block/Block; DAMAGED_ANVIL gU field_10414 + f Lnet/minecraft/world/level/block/Block; TRAPPED_CHEST gV field_10380 + f Lnet/minecraft/world/level/block/Block; LIGHT_WEIGHTED_PRESSURE_PLATE gW field_10224 + f Lnet/minecraft/world/level/block/Block; HEAVY_WEIGHTED_PRESSURE_PLATE gX field_10582 + f Lnet/minecraft/world/level/block/Block; COMPARATOR gY field_10377 + f Lnet/minecraft/world/level/block/Block; DAYLIGHT_DETECTOR gZ field_10429 + f Lnet/minecraft/world/level/block/Block; POTTED_MANGROVE_PROPAGULE ga field_37560 + f Lnet/minecraft/world/level/block/Block; POTTED_FERN gb field_10128 + f Lnet/minecraft/world/level/block/Block; POTTED_DANDELION gc field_10354 + f Lnet/minecraft/world/level/block/Block; POTTED_POPPY gd field_10151 + f Lnet/minecraft/world/level/block/Block; POTTED_BLUE_ORCHID ge field_9981 + f Lnet/minecraft/world/level/block/Block; POTTED_ALLIUM gf field_10162 + f Lnet/minecraft/world/level/block/Block; POTTED_AZURE_BLUET gg field_10365 + f Lnet/minecraft/world/level/block/Block; POTTED_RED_TULIP gh field_10598 + f Lnet/minecraft/world/level/block/Block; POTTED_ORANGE_TULIP gi field_10249 + f Lnet/minecraft/world/level/block/Block; POTTED_WHITE_TULIP gj field_10400 + f Lnet/minecraft/world/level/block/Block; POTTED_PINK_TULIP gk field_10061 + f Lnet/minecraft/world/level/block/Block; POTTED_OXEYE_DAISY gl field_10074 + f Lnet/minecraft/world/level/block/Block; POTTED_CORNFLOWER gm field_10358 + f Lnet/minecraft/world/level/block/Block; POTTED_LILY_OF_THE_VALLEY gn field_10273 + f Lnet/minecraft/world/level/block/Block; POTTED_WITHER_ROSE go field_9998 + f Lnet/minecraft/world/level/block/Block; POTTED_RED_MUSHROOM gp field_10138 + f Lnet/minecraft/world/level/block/Block; POTTED_BROWN_MUSHROOM gq field_10324 + f Lnet/minecraft/world/level/block/Block; POTTED_DEAD_BUSH gr field_10487 + f Lnet/minecraft/world/level/block/Block; POTTED_CACTUS gs field_10018 + f Lnet/minecraft/world/level/block/Block; CARROTS gt field_10609 + f Lnet/minecraft/world/level/block/Block; POTATOES gu field_10247 + f Lnet/minecraft/world/level/block/Block; OAK_BUTTON gv field_10057 + f Lnet/minecraft/world/level/block/Block; SPRUCE_BUTTON gw field_10066 + f Lnet/minecraft/world/level/block/Block; BIRCH_BUTTON gx field_10417 + f Lnet/minecraft/world/level/block/Block; JUNGLE_BUTTON gy field_10553 + f Lnet/minecraft/world/level/block/Block; ACACIA_BUTTON gz field_10278 + f Lnet/minecraft/world/level/block/Block; ORANGE_STAINED_GLASS_PANE hA field_10496 + f Lnet/minecraft/world/level/block/Block; MAGENTA_STAINED_GLASS_PANE hB field_10469 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_STAINED_GLASS_PANE hC field_10193 + f Lnet/minecraft/world/level/block/Block; YELLOW_STAINED_GLASS_PANE hD field_10578 + f Lnet/minecraft/world/level/block/Block; LIME_STAINED_GLASS_PANE hE field_10305 + f Lnet/minecraft/world/level/block/Block; PINK_STAINED_GLASS_PANE hF field_10565 + f Lnet/minecraft/world/level/block/Block; GRAY_STAINED_GLASS_PANE hG field_10077 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_STAINED_GLASS_PANE hH field_10129 + f Lnet/minecraft/world/level/block/Block; CYAN_STAINED_GLASS_PANE hI field_10355 + f Lnet/minecraft/world/level/block/Block; PURPLE_STAINED_GLASS_PANE hJ field_10152 + f Lnet/minecraft/world/level/block/Block; BLUE_STAINED_GLASS_PANE hK field_9982 + f Lnet/minecraft/world/level/block/Block; BROWN_STAINED_GLASS_PANE hL field_10163 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE h field_10093 + f Lnet/minecraft/world/level/block/Block; GREEN_STAINED_GLASS_PANE hM field_10419 + f Lnet/minecraft/world/level/block/Block; RED_STAINED_GLASS_PANE hN field_10118 + f Lnet/minecraft/world/level/block/Block; BLACK_STAINED_GLASS_PANE hO field_10070 + f Lnet/minecraft/world/level/block/Block; ACACIA_STAIRS hP field_10256 + f Lnet/minecraft/world/level/block/Block; CHERRY_STAIRS hQ field_42744 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_STAIRS hR field_10616 + f Lnet/minecraft/world/level/block/Block; MANGROVE_STAIRS hS field_37561 + f Lnet/minecraft/world/level/block/Block; BAMBOO_STAIRS hT field_40287 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC_STAIRS hU field_40288 + f Lnet/minecraft/world/level/block/Block; SLIME_BLOCK hV field_10030 + f Lnet/minecraft/world/level/block/Block; BARRIER hW field_10499 + f Lnet/minecraft/world/level/block/Block; LIGHT hX field_31037 + f Lnet/minecraft/world/level/block/Block; IRON_TRAPDOOR hY field_10453 + f Lnet/minecraft/world/level/block/Block; PRISMARINE hZ field_10135 + f Lnet/minecraft/world/level/block/Block; REDSTONE_BLOCK ha field_10002 + f Lnet/minecraft/world/level/block/Block; NETHER_QUARTZ_ORE hb field_10213 + f Lnet/minecraft/world/level/block/Block; HOPPER hc field_10312 + f Lnet/minecraft/world/level/block/Block; QUARTZ_BLOCK hd field_10153 + f Lnet/minecraft/world/level/block/Block; CHISELED_QUARTZ_BLOCK he field_10044 + f Lnet/minecraft/world/level/block/Block; QUARTZ_PILLAR hf field_10437 + f Lnet/minecraft/world/level/block/Block; QUARTZ_STAIRS hg field_10451 + f Lnet/minecraft/world/level/block/Block; ACTIVATOR_RAIL hh field_10546 + f Lnet/minecraft/world/level/block/Block; DROPPER hi field_10228 + f Lnet/minecraft/world/level/block/Block; WHITE_TERRACOTTA hj field_10611 + f Lnet/minecraft/world/level/block/Block; ORANGE_TERRACOTTA hk field_10184 + f Lnet/minecraft/world/level/block/Block; MAGENTA_TERRACOTTA hl field_10015 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_TERRACOTTA hm field_10325 + f Lnet/minecraft/world/level/block/Block; YELLOW_TERRACOTTA hn field_10143 + f Lnet/minecraft/world/level/block/Block; LIME_TERRACOTTA ho field_10014 + f Lnet/minecraft/world/level/block/Block; PINK_TERRACOTTA hp field_10444 + f Lnet/minecraft/world/level/block/Block; GRAY_TERRACOTTA hq field_10349 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_TERRACOTTA hr field_10590 + f Lnet/minecraft/world/level/block/Block; CYAN_TERRACOTTA hs field_10235 + f Lnet/minecraft/world/level/block/Block; PURPLE_TERRACOTTA ht field_10570 + f Lnet/minecraft/world/level/block/Block; BLUE_TERRACOTTA hu field_10409 + f Lnet/minecraft/world/level/block/Block; BROWN_TERRACOTTA hv field_10123 + f Lnet/minecraft/world/level/block/Block; GREEN_TERRACOTTA hw field_10526 + f Lnet/minecraft/world/level/block/Block; RED_TERRACOTTA hx field_10328 + f Lnet/minecraft/world/level/block/Block; BLACK_TERRACOTTA hy field_10626 + f Lnet/minecraft/world/level/block/Block; WHITE_STAINED_GLASS_PANE hz field_9991 + f Lnet/minecraft/world/level/block/Block; TERRACOTTA iA field_10415 + f Lnet/minecraft/world/level/block/Block; COAL_BLOCK iB field_10381 + f Lnet/minecraft/world/level/block/Block; PACKED_ICE iC field_10225 + f Lnet/minecraft/world/level/block/Block; SUNFLOWER iD field_10583 + f Lnet/minecraft/world/level/block/Block; LILAC iE field_10378 + f Lnet/minecraft/world/level/block/Block; ROSE_BUSH iF field_10430 + f Lnet/minecraft/world/level/block/Block; PEONY iG field_10003 + f Lnet/minecraft/world/level/block/Block; TALL_GRASS iH field_10214 + f Lnet/minecraft/world/level/block/Block; LARGE_FERN iI field_10313 + f Lnet/minecraft/world/level/block/Block; WHITE_BANNER iJ field_10154 + f Lnet/minecraft/world/level/block/Block; ORANGE_BANNER iK field_10045 + f Lnet/minecraft/world/level/block/Block; MAGENTA_BANNER iL field_10438 + f Lnet/minecraft/world/level/block/Block; GRASS_BLOCK i field_10219 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_BANNER iM field_10452 + f Lnet/minecraft/world/level/block/Block; YELLOW_BANNER iN field_10547 + f Lnet/minecraft/world/level/block/Block; LIME_BANNER iO field_10229 + f Lnet/minecraft/world/level/block/Block; PINK_BANNER iP field_10612 + f Lnet/minecraft/world/level/block/Block; GRAY_BANNER iQ field_10185 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_BANNER iR field_9985 + f Lnet/minecraft/world/level/block/Block; CYAN_BANNER iS field_10165 + f Lnet/minecraft/world/level/block/Block; PURPLE_BANNER iT field_10368 + f Lnet/minecraft/world/level/block/Block; BLUE_BANNER iU field_10281 + f Lnet/minecraft/world/level/block/Block; BROWN_BANNER iV field_10602 + f Lnet/minecraft/world/level/block/Block; GREEN_BANNER iW field_10198 + f Lnet/minecraft/world/level/block/Block; RED_BANNER iX field_10406 + f Lnet/minecraft/world/level/block/Block; BLACK_BANNER iY field_10062 + f Lnet/minecraft/world/level/block/Block; WHITE_WALL_BANNER iZ field_10202 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICKS ia field_10006 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE ib field_10297 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_STAIRS ic field_10350 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICK_STAIRS id field_10190 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE_STAIRS ie field_10130 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_SLAB if field_10389 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICK_SLAB ig field_10236 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE_SLAB ih field_10623 + f Lnet/minecraft/world/level/block/Block; SEA_LANTERN ii field_10174 + f Lnet/minecraft/world/level/block/Block; HAY_BLOCK ij field_10359 + f Lnet/minecraft/world/level/block/Block; WHITE_CARPET ik field_10466 + f Lnet/minecraft/world/level/block/Block; ORANGE_CARPET il field_9977 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CARPET im field_10482 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CARPET in field_10290 + f Lnet/minecraft/world/level/block/Block; YELLOW_CARPET io field_10512 + f Lnet/minecraft/world/level/block/Block; LIME_CARPET ip field_10040 + f Lnet/minecraft/world/level/block/Block; PINK_CARPET iq field_10393 + f Lnet/minecraft/world/level/block/Block; GRAY_CARPET ir field_10591 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CARPET is field_10209 + f Lnet/minecraft/world/level/block/Block; CYAN_CARPET it field_10433 + f Lnet/minecraft/world/level/block/Block; PURPLE_CARPET iu field_10510 + f Lnet/minecraft/world/level/block/Block; BLUE_CARPET iv field_10043 + f Lnet/minecraft/world/level/block/Block; BROWN_CARPET iw field_10473 + f Lnet/minecraft/world/level/block/Block; GREEN_CARPET ix field_10338 + f Lnet/minecraft/world/level/block/Block; RED_CARPET iy field_10536 + f Lnet/minecraft/world/level/block/Block; BLACK_CARPET iz field_10106 + f Lnet/minecraft/world/level/block/Block; MANGROVE_SLAB jA field_37564 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SLAB jB field_40292 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC_SLAB jC field_40293 + f Lnet/minecraft/world/level/block/Block; STONE_SLAB jD field_10454 + f Lnet/minecraft/world/level/block/Block; SMOOTH_STONE_SLAB jE field_10136 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_SLAB jF field_10007 + f Lnet/minecraft/world/level/block/Block; CUT_SANDSTONE_SLAB jG field_18890 + f Lnet/minecraft/world/level/block/Block; PETRIFIED_OAK_SLAB jH field_10298 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_SLAB jI field_10351 + f Lnet/minecraft/world/level/block/Block; BRICK_SLAB jJ field_10191 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_SLAB jK field_10131 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_SLAB jL field_37562 + f Lnet/minecraft/world/level/block/Block; DIRT j field_10566 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_SLAB jM field_10390 + f Lnet/minecraft/world/level/block/Block; QUARTZ_SLAB jN field_10237 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_SLAB jO field_10624 + f Lnet/minecraft/world/level/block/Block; CUT_RED_SANDSTONE_SLAB jP field_18891 + f Lnet/minecraft/world/level/block/Block; PURPUR_SLAB jQ field_10175 + f Lnet/minecraft/world/level/block/Block; SMOOTH_STONE jR field_10360 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE jS field_10467 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ jT field_9978 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE jU field_10483 + f Lnet/minecraft/world/level/block/Block; SPRUCE_FENCE_GATE jV field_10291 + f Lnet/minecraft/world/level/block/Block; BIRCH_FENCE_GATE jW field_10513 + f Lnet/minecraft/world/level/block/Block; JUNGLE_FENCE_GATE jX field_10041 + f Lnet/minecraft/world/level/block/Block; ACACIA_FENCE_GATE jY field_10457 + f Lnet/minecraft/world/level/block/Block; CHERRY_FENCE_GATE jZ field_42745 + f Lnet/minecraft/world/level/block/Block; ORANGE_WALL_BANNER ja field_10599 + f Lnet/minecraft/world/level/block/Block; MAGENTA_WALL_BANNER jb field_10274 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_WALL_BANNER jc field_10050 + f Lnet/minecraft/world/level/block/Block; YELLOW_WALL_BANNER jd field_10139 + f Lnet/minecraft/world/level/block/Block; LIME_WALL_BANNER je field_10318 + f Lnet/minecraft/world/level/block/Block; PINK_WALL_BANNER jf field_10531 + f Lnet/minecraft/world/level/block/Block; GRAY_WALL_BANNER jg field_10267 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_WALL_BANNER jh field_10604 + f Lnet/minecraft/world/level/block/Block; CYAN_WALL_BANNER ji field_10372 + f Lnet/minecraft/world/level/block/Block; PURPLE_WALL_BANNER jj field_10054 + f Lnet/minecraft/world/level/block/Block; BLUE_WALL_BANNER jk field_10067 + f Lnet/minecraft/world/level/block/Block; BROWN_WALL_BANNER jl field_10370 + f Lnet/minecraft/world/level/block/Block; GREEN_WALL_BANNER jm field_10594 + f Lnet/minecraft/world/level/block/Block; RED_WALL_BANNER jn field_10279 + f Lnet/minecraft/world/level/block/Block; BLACK_WALL_BANNER jo field_10537 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE jp field_10344 + f Lnet/minecraft/world/level/block/Block; CHISELED_RED_SANDSTONE jq field_10117 + f Lnet/minecraft/world/level/block/Block; CUT_RED_SANDSTONE jr field_10518 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_STAIRS js field_10420 + f Lnet/minecraft/world/level/block/Block; OAK_SLAB jt field_10119 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SLAB ju field_10071 + f Lnet/minecraft/world/level/block/Block; BIRCH_SLAB jv field_10257 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SLAB jw field_10617 + f Lnet/minecraft/world/level/block/Block; ACACIA_SLAB jx field_10031 + f Lnet/minecraft/world/level/block/Block; CHERRY_SLAB jy field_42746 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SLAB jz field_10500 + f Lnet/minecraft/world/level/block/Block; TORCHFLOWER_CROP kA field_42749 + f Lnet/minecraft/world/level/block/Block; PITCHER_CROP kB field_43228 + f Lnet/minecraft/world/level/block/Block; PITCHER_PLANT kC field_43229 + f Lnet/minecraft/world/level/block/Block; BEETROOTS kD field_10341 + f Lnet/minecraft/world/level/block/Block; DIRT_PATH kE field_10194 + f Lnet/minecraft/world/level/block/Block; END_GATEWAY kF field_10613 + f Lnet/minecraft/world/level/block/Block; REPEATING_COMMAND_BLOCK kG field_10263 + f Lnet/minecraft/world/level/block/Block; CHAIN_COMMAND_BLOCK kH field_10395 + f Lnet/minecraft/world/level/block/Block; FROSTED_ICE kI field_10110 + f Lnet/minecraft/world/level/block/Block; MAGMA_BLOCK kJ field_10092 + f Lnet/minecraft/world/level/block/Block; NETHER_WART_BLOCK kK field_10541 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICKS kL field_9986 + f Lnet/minecraft/world/level/block/Block; COARSE_DIRT k field_10253 + f Lnet/minecraft/world/level/block/Block; BONE_BLOCK kM field_10166 + f Lnet/minecraft/world/level/block/Block; STRUCTURE_VOID kN field_10369 + f Lnet/minecraft/world/level/block/Block; OBSERVER kO field_10282 + f Lnet/minecraft/world/level/block/Block; SHULKER_BOX kP field_10603 + f Lnet/minecraft/world/level/block/Block; WHITE_SHULKER_BOX kQ field_10199 + f Lnet/minecraft/world/level/block/Block; ORANGE_SHULKER_BOX kR field_10407 + f Lnet/minecraft/world/level/block/Block; MAGENTA_SHULKER_BOX kS field_10063 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_SHULKER_BOX kT field_10203 + f Lnet/minecraft/world/level/block/Block; YELLOW_SHULKER_BOX kU field_10600 + f Lnet/minecraft/world/level/block/Block; LIME_SHULKER_BOX kV field_10275 + f Lnet/minecraft/world/level/block/Block; PINK_SHULKER_BOX kW field_10051 + f Lnet/minecraft/world/level/block/Block; GRAY_SHULKER_BOX kX field_10140 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_SHULKER_BOX kY field_10320 + f Lnet/minecraft/world/level/block/Block; CYAN_SHULKER_BOX kZ field_10532 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_FENCE_GATE ka field_10196 + f Lnet/minecraft/world/level/block/Block; MANGROVE_FENCE_GATE kb field_37563 + f Lnet/minecraft/world/level/block/Block; BAMBOO_FENCE_GATE kc field_40289 + f Lnet/minecraft/world/level/block/Block; SPRUCE_FENCE kd field_10020 + f Lnet/minecraft/world/level/block/Block; BIRCH_FENCE ke field_10299 + f Lnet/minecraft/world/level/block/Block; JUNGLE_FENCE kf field_10319 + f Lnet/minecraft/world/level/block/Block; ACACIA_FENCE kg field_10144 + f Lnet/minecraft/world/level/block/Block; CHERRY_FENCE kh field_42747 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_FENCE ki field_10132 + f Lnet/minecraft/world/level/block/Block; MANGROVE_FENCE kj field_37565 + f Lnet/minecraft/world/level/block/Block; BAMBOO_FENCE kk field_40290 + f Lnet/minecraft/world/level/block/Block; SPRUCE_DOOR kl field_10521 + f Lnet/minecraft/world/level/block/Block; BIRCH_DOOR km field_10352 + f Lnet/minecraft/world/level/block/Block; JUNGLE_DOOR kn field_10627 + f Lnet/minecraft/world/level/block/Block; ACACIA_DOOR ko field_10232 + f Lnet/minecraft/world/level/block/Block; CHERRY_DOOR kp field_42748 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_DOOR kq field_10403 + f Lnet/minecraft/world/level/block/Block; MANGROVE_DOOR kr field_37566 + f Lnet/minecraft/world/level/block/Block; BAMBOO_DOOR ks field_40291 + f Lnet/minecraft/world/level/block/Block; END_ROD kt field_10455 + f Lnet/minecraft/world/level/block/Block; CHORUS_PLANT ku field_10021 + f Lnet/minecraft/world/level/block/Block; CHORUS_FLOWER kv field_10528 + f Lnet/minecraft/world/level/block/Block; PURPUR_BLOCK kw field_10286 + f Lnet/minecraft/world/level/block/Block; PURPUR_PILLAR kx field_10505 + f Lnet/minecraft/world/level/block/Block; PURPUR_STAIRS ky field_9992 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICKS kz field_10462 + f Lnet/minecraft/world/level/block/Block; YELLOW_CONCRETE lA field_10542 + f Lnet/minecraft/world/level/block/Block; LIME_CONCRETE lB field_10421 + f Lnet/minecraft/world/level/block/Block; PINK_CONCRETE lC field_10434 + f Lnet/minecraft/world/level/block/Block; GRAY_CONCRETE lD field_10038 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CONCRETE lE field_10172 + f Lnet/minecraft/world/level/block/Block; CYAN_CONCRETE lF field_10308 + f Lnet/minecraft/world/level/block/Block; PURPLE_CONCRETE lG field_10206 + f Lnet/minecraft/world/level/block/Block; BLUE_CONCRETE lH field_10011 + f Lnet/minecraft/world/level/block/Block; BROWN_CONCRETE lI field_10439 + f Lnet/minecraft/world/level/block/Block; GREEN_CONCRETE lJ field_10367 + f Lnet/minecraft/world/level/block/Block; RED_CONCRETE lK field_10058 + f Lnet/minecraft/world/level/block/Block; BLACK_CONCRETE lL field_10458 + f Lnet/minecraft/world/level/block/Block; PODZOL l field_10520 + f Lnet/minecraft/world/level/block/Block; WHITE_CONCRETE_POWDER lM field_10197 + f Lnet/minecraft/world/level/block/Block; ORANGE_CONCRETE_POWDER lN field_10022 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CONCRETE_POWDER lO field_10300 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CONCRETE_POWDER lP field_10321 + f Lnet/minecraft/world/level/block/Block; YELLOW_CONCRETE_POWDER lQ field_10145 + f Lnet/minecraft/world/level/block/Block; LIME_CONCRETE_POWDER lR field_10133 + f Lnet/minecraft/world/level/block/Block; PINK_CONCRETE_POWDER lS field_10522 + f Lnet/minecraft/world/level/block/Block; GRAY_CONCRETE_POWDER lT field_10353 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CONCRETE_POWDER lU field_10628 + f Lnet/minecraft/world/level/block/Block; CYAN_CONCRETE_POWDER lV field_10233 + f Lnet/minecraft/world/level/block/Block; PURPLE_CONCRETE_POWDER lW field_10404 + f Lnet/minecraft/world/level/block/Block; BLUE_CONCRETE_POWDER lX field_10456 + f Lnet/minecraft/world/level/block/Block; BROWN_CONCRETE_POWDER lY field_10023 + f Lnet/minecraft/world/level/block/Block; GREEN_CONCRETE_POWDER lZ field_10529 + f Lnet/minecraft/world/level/block/Block; PURPLE_SHULKER_BOX la field_10268 + f Lnet/minecraft/world/level/block/Block; BLUE_SHULKER_BOX lb field_10605 + f Lnet/minecraft/world/level/block/Block; BROWN_SHULKER_BOX lc field_10373 + f Lnet/minecraft/world/level/block/Block; GREEN_SHULKER_BOX ld field_10055 + f Lnet/minecraft/world/level/block/Block; RED_SHULKER_BOX le field_10068 + f Lnet/minecraft/world/level/block/Block; BLACK_SHULKER_BOX lf field_10371 + f Lnet/minecraft/world/level/block/Block; WHITE_GLAZED_TERRACOTTA lg field_10595 + f Lnet/minecraft/world/level/block/Block; ORANGE_GLAZED_TERRACOTTA lh field_10280 + f Lnet/minecraft/world/level/block/Block; MAGENTA_GLAZED_TERRACOTTA li field_10538 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_GLAZED_TERRACOTTA lj field_10345 + f Lnet/minecraft/world/level/block/Block; YELLOW_GLAZED_TERRACOTTA lk field_10096 + f Lnet/minecraft/world/level/block/Block; LIME_GLAZED_TERRACOTTA ll field_10046 + f Lnet/minecraft/world/level/block/Block; PINK_GLAZED_TERRACOTTA lm field_10567 + f Lnet/minecraft/world/level/block/Block; GRAY_GLAZED_TERRACOTTA ln field_10220 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_GLAZED_TERRACOTTA lo field_10052 + f Lnet/minecraft/world/level/block/Block; CYAN_GLAZED_TERRACOTTA lp field_10078 + f Lnet/minecraft/world/level/block/Block; PURPLE_GLAZED_TERRACOTTA lq field_10426 + f Lnet/minecraft/world/level/block/Block; BLUE_GLAZED_TERRACOTTA lr field_10550 + f Lnet/minecraft/world/level/block/Block; BROWN_GLAZED_TERRACOTTA ls field_10004 + f Lnet/minecraft/world/level/block/Block; GREEN_GLAZED_TERRACOTTA lt field_10475 + f Lnet/minecraft/world/level/block/Block; RED_GLAZED_TERRACOTTA lu field_10383 + f Lnet/minecraft/world/level/block/Block; BLACK_GLAZED_TERRACOTTA lv field_10501 + f Lnet/minecraft/world/level/block/Block; WHITE_CONCRETE lw field_10107 + f Lnet/minecraft/world/level/block/Block; ORANGE_CONCRETE lx field_10210 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CONCRETE ly field_10585 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CONCRETE lz field_10242 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL mA field_10169 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_FAN mB field_10448 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_FAN mC field_10097 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_FAN mD field_10047 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_FAN mE field_10568 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_FAN mF field_10221 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_FAN mG field_10053 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_FAN mH field_10079 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_FAN mI field_10427 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_FAN mJ field_10551 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_FAN mK field_10005 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_WALL_FAN mL field_10347 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE m field_10445 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_WALL_FAN mM field_10116 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_WALL_FAN mN field_10094 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_WALL_FAN mO field_10557 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_WALL_FAN mP field_10239 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_WALL_FAN mQ field_10584 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_WALL_FAN mR field_10186 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_WALL_FAN mS field_10447 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_WALL_FAN mT field_10498 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_WALL_FAN mU field_9976 + f Lnet/minecraft/world/level/block/Block; SEA_PICKLE mV field_10476 + f Lnet/minecraft/world/level/block/Block; BLUE_ICE mW field_10384 + f Lnet/minecraft/world/level/block/Block; CONDUIT mX field_10502 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SAPLING mY field_10108 + f Lnet/minecraft/world/level/block/Block; BAMBOO mZ field_10211 + f Lnet/minecraft/world/level/block/Block; RED_CONCRETE_POWDER ma field_10287 + f Lnet/minecraft/world/level/block/Block; BLACK_CONCRETE_POWDER mb field_10506 + f Lnet/minecraft/world/level/block/Block; KELP mc field_9993 + f Lnet/minecraft/world/level/block/Block; KELP_PLANT md field_10463 + f Lnet/minecraft/world/level/block/Block; DRIED_KELP_BLOCK me field_10342 + f Lnet/minecraft/world/level/block/Block; TURTLE_EGG mf field_10195 + f Lnet/minecraft/world/level/block/Block; SNIFFER_EGG mg field_43230 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_BLOCK mh field_10614 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_BLOCK mi field_10264 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_BLOCK mj field_10396 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_BLOCK mk field_10111 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_BLOCK ml field_10488 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_BLOCK mm field_10309 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_BLOCK mn field_10629 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_BLOCK mo field_10000 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_BLOCK mp field_10516 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_BLOCK mq field_10464 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL mr field_10082 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL ms field_10572 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL mt field_10296 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL mu field_10579 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL mv field_10032 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL mw field_10125 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL mx field_10339 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL my field_10134 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL mz field_10618 + f Lnet/minecraft/world/level/block/Block; GRANITE_SLAB nA field_10189 + f Lnet/minecraft/world/level/block/Block; ANDESITE_SLAB nB field_10016 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_SLAB nC field_10478 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE_SLAB nD field_10322 + f Lnet/minecraft/world/level/block/Block; DIORITE_SLAB nE field_10507 + f Lnet/minecraft/world/level/block/Block; BRICK_WALL nF field_10269 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_WALL nG field_10530 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_WALL nH field_10413 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_WALL nI field_10059 + f Lnet/minecraft/world/level/block/Block; GRANITE_WALL nJ field_10072 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_WALL nK field_10252 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_WALL nL field_37567 + f Lnet/minecraft/world/level/block/Block; OAK_PLANKS n field_10161 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_WALL nM field_10127 + f Lnet/minecraft/world/level/block/Block; ANDESITE_WALL nN field_10489 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_WALL nO field_10311 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_WALL nP field_10630 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_WALL nQ field_10001 + f Lnet/minecraft/world/level/block/Block; DIORITE_WALL nR field_10517 + f Lnet/minecraft/world/level/block/Block; SCAFFOLDING nS field_16492 + f Lnet/minecraft/world/level/block/Block; LOOM nT field_10083 + f Lnet/minecraft/world/level/block/Block; BARREL nU field_16328 + f Lnet/minecraft/world/level/block/Block; SMOKER nV field_16334 + f Lnet/minecraft/world/level/block/Block; BLAST_FURNACE nW field_16333 + f Lnet/minecraft/world/level/block/Block; CARTOGRAPHY_TABLE nX field_16336 + f Lnet/minecraft/world/level/block/Block; FLETCHING_TABLE nY field_16331 + f Lnet/minecraft/world/level/block/Block; GRINDSTONE nZ field_16337 + f Lnet/minecraft/world/level/block/Block; POTTED_BAMBOO na field_10586 + f Lnet/minecraft/world/level/block/Block; VOID_AIR nb field_10243 + f Lnet/minecraft/world/level/block/Block; CAVE_AIR nc field_10543 + f Lnet/minecraft/world/level/block/Block; BUBBLE_COLUMN nd field_10422 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE_STAIRS ne field_10435 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE_STAIRS nf field_10039 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_STAIRS ng field_10173 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE_STAIRS nh field_10310 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_STAIRS ni field_10207 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_STAIRS nj field_10012 + f Lnet/minecraft/world/level/block/Block; STONE_STAIRS nk field_10440 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE_STAIRS nl field_10549 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ_STAIRS nm field_10245 + f Lnet/minecraft/world/level/block/Block; GRANITE_STAIRS nn field_10607 + f Lnet/minecraft/world/level/block/Block; ANDESITE_STAIRS no field_10386 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_STAIRS np field_10497 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE_STAIRS nq field_9994 + f Lnet/minecraft/world/level/block/Block; DIORITE_STAIRS nr field_10216 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE_SLAB ns field_10329 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE_SLAB nt field_10283 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_SLAB nu field_10024 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE_SLAB nv field_10412 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_SLAB nw field_10405 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_SLAB nx field_10064 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE_SLAB ny field_10262 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ_SLAB nz field_10601 + f Lnet/minecraft/world/level/block/Block; WEEPING_VINES_PLANT oA field_22124 + f Lnet/minecraft/world/level/block/Block; TWISTING_VINES oB field_23078 + f Lnet/minecraft/world/level/block/Block; TWISTING_VINES_PLANT oC field_23079 + f Lnet/minecraft/world/level/block/Block; CRIMSON_ROOTS oD field_22125 + f Lnet/minecraft/world/level/block/Block; CRIMSON_PLANKS oE field_22126 + f Lnet/minecraft/world/level/block/Block; WARPED_PLANKS oF field_22127 + f Lnet/minecraft/world/level/block/Block; CRIMSON_SLAB oG field_22128 + f Lnet/minecraft/world/level/block/Block; WARPED_SLAB oH field_22129 + f Lnet/minecraft/world/level/block/Block; CRIMSON_PRESSURE_PLATE oI field_22130 + f Lnet/minecraft/world/level/block/Block; WARPED_PRESSURE_PLATE oJ field_22131 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FENCE oK field_22132 + f Lnet/minecraft/world/level/block/Block; WARPED_FENCE oL field_22133 + f Lnet/minecraft/world/level/block/Block; SPRUCE_PLANKS o field_9975 + f Lnet/minecraft/world/level/block/Block; CRIMSON_TRAPDOOR oM field_22094 + f Lnet/minecraft/world/level/block/Block; WARPED_TRAPDOOR oN field_22095 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FENCE_GATE oO field_22096 + f Lnet/minecraft/world/level/block/Block; WARPED_FENCE_GATE oP field_22097 + f Lnet/minecraft/world/level/block/Block; CRIMSON_STAIRS oQ field_22098 + f Lnet/minecraft/world/level/block/Block; WARPED_STAIRS oR field_22099 + f Lnet/minecraft/world/level/block/Block; CRIMSON_BUTTON oS field_22100 + f Lnet/minecraft/world/level/block/Block; WARPED_BUTTON oT field_22101 + f Lnet/minecraft/world/level/block/Block; CRIMSON_DOOR oU field_22102 + f Lnet/minecraft/world/level/block/Block; WARPED_DOOR oV field_22103 + f Lnet/minecraft/world/level/block/Block; CRIMSON_SIGN oW field_22104 + f Lnet/minecraft/world/level/block/Block; WARPED_SIGN oX field_22105 + f Lnet/minecraft/world/level/block/Block; CRIMSON_WALL_SIGN oY field_22106 + f Lnet/minecraft/world/level/block/Block; WARPED_WALL_SIGN oZ field_22107 + f Lnet/minecraft/world/level/block/Block; LECTERN oa field_16330 + f Lnet/minecraft/world/level/block/Block; SMITHING_TABLE ob field_16329 + f Lnet/minecraft/world/level/block/Block; STONECUTTER oc field_16335 + f Lnet/minecraft/world/level/block/Block; BELL od field_16332 + f Lnet/minecraft/world/level/block/Block; LANTERN oe field_16541 + f Lnet/minecraft/world/level/block/Block; SOUL_LANTERN of field_22110 + f Lnet/minecraft/world/level/block/Block; CAMPFIRE og field_17350 + f Lnet/minecraft/world/level/block/Block; SOUL_CAMPFIRE oh field_23860 + f Lnet/minecraft/world/level/block/Block; SWEET_BERRY_BUSH oi field_16999 + f Lnet/minecraft/world/level/block/Block; WARPED_STEM oj field_22111 + f Lnet/minecraft/world/level/block/Block; STRIPPED_WARPED_STEM ok field_22112 + f Lnet/minecraft/world/level/block/Block; WARPED_HYPHAE ol field_22503 + f Lnet/minecraft/world/level/block/Block; STRIPPED_WARPED_HYPHAE om field_22504 + f Lnet/minecraft/world/level/block/Block; WARPED_NYLIUM on field_22113 + f Lnet/minecraft/world/level/block/Block; WARPED_FUNGUS oo field_22114 + f Lnet/minecraft/world/level/block/Block; WARPED_WART_BLOCK op field_22115 + f Lnet/minecraft/world/level/block/Block; WARPED_ROOTS oq field_22116 + f Lnet/minecraft/world/level/block/Block; NETHER_SPROUTS or field_22117 + f Lnet/minecraft/world/level/block/Block; CRIMSON_STEM os field_22118 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CRIMSON_STEM ot field_22119 + f Lnet/minecraft/world/level/block/Block; CRIMSON_HYPHAE ou field_22505 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CRIMSON_HYPHAE ov field_22506 + f Lnet/minecraft/world/level/block/Block; CRIMSON_NYLIUM ow field_22120 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FUNGUS ox field_22121 + f Lnet/minecraft/world/level/block/Block; SHROOMLIGHT oy field_22122 + f Lnet/minecraft/world/level/block/Block; WEEPING_VINES oz field_22123 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_STAIRS pA field_23878 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_WALL pB field_23879 + f Lnet/minecraft/world/level/block/Block; GILDED_BLACKSTONE pC field_23880 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_STAIRS pD field_23861 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_SLAB pE field_23862 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_PRESSURE_PLATE pF field_23863 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BUTTON pG field_23864 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_WALL pH field_23865 + f Lnet/minecraft/world/level/block/Block; CHISELED_NETHER_BRICKS pI field_23866 + f Lnet/minecraft/world/level/block/Block; CRACKED_NETHER_BRICKS pJ field_23867 + f Lnet/minecraft/world/level/block/Block; QUARTZ_BRICKS pK field_23868 + f Lnet/minecraft/world/level/block/Block; CANDLE pL field_27099 + f Lnet/minecraft/world/level/block/Block; BIRCH_PLANKS p field_10148 + f Lnet/minecraft/world/level/block/Block; WHITE_CANDLE pM field_27100 + f Lnet/minecraft/world/level/block/Block; ORANGE_CANDLE pN field_27101 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CANDLE pO field_27102 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CANDLE pP field_27103 + f Lnet/minecraft/world/level/block/Block; YELLOW_CANDLE pQ field_27104 + f Lnet/minecraft/world/level/block/Block; LIME_CANDLE pR field_27105 + f Lnet/minecraft/world/level/block/Block; PINK_CANDLE pS field_27106 + f Lnet/minecraft/world/level/block/Block; GRAY_CANDLE pT field_27107 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CANDLE pU field_27108 + f Lnet/minecraft/world/level/block/Block; CYAN_CANDLE pV field_27109 + f Lnet/minecraft/world/level/block/Block; PURPLE_CANDLE pW field_27110 + f Lnet/minecraft/world/level/block/Block; BLUE_CANDLE pX field_27111 + f Lnet/minecraft/world/level/block/Block; BROWN_CANDLE pY field_27112 + f Lnet/minecraft/world/level/block/Block; GREEN_CANDLE pZ field_27113 + f Lnet/minecraft/world/level/block/Block; STRUCTURE_BLOCK pa field_10465 + f Lnet/minecraft/world/level/block/Block; JIGSAW pb field_16540 + f Lnet/minecraft/world/level/block/Block; COMPOSTER pc field_17563 + f Lnet/minecraft/world/level/block/Block; TARGET pd field_22422 + f Lnet/minecraft/world/level/block/Block; BEE_NEST pe field_20421 + f Lnet/minecraft/world/level/block/Block; BEEHIVE pf field_20422 + f Lnet/minecraft/world/level/block/Block; HONEY_BLOCK pg field_21211 + f Lnet/minecraft/world/level/block/Block; HONEYCOMB_BLOCK ph field_21212 + f Lnet/minecraft/world/level/block/Block; NETHERITE_BLOCK pi field_22108 + f Lnet/minecraft/world/level/block/Block; ANCIENT_DEBRIS pj field_22109 + f Lnet/minecraft/world/level/block/Block; CRYING_OBSIDIAN pk field_22423 + f Lnet/minecraft/world/level/block/Block; RESPAWN_ANCHOR pl field_23152 + f Lnet/minecraft/world/level/block/Block; POTTED_CRIMSON_FUNGUS pm field_22424 + f Lnet/minecraft/world/level/block/Block; POTTED_WARPED_FUNGUS pn field_22425 + f Lnet/minecraft/world/level/block/Block; POTTED_CRIMSON_ROOTS po field_22426 + f Lnet/minecraft/world/level/block/Block; POTTED_WARPED_ROOTS pp field_22427 + f Lnet/minecraft/world/level/block/Block; LODESTONE pq field_23261 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE pr field_23869 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_STAIRS ps field_23870 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_WALL pt field_23871 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_SLAB pu field_23872 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE pv field_23873 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICKS pw field_23874 + f Lnet/minecraft/world/level/block/Block; CRACKED_POLISHED_BLACKSTONE_BRICKS px field_23875 + f Lnet/minecraft/world/level/block/Block; CHISELED_POLISHED_BLACKSTONE py field_23876 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_SLAB pz field_23877 + f Lnet/minecraft/world/level/block/Block; TUFF_SLAB qA field_47027 + f Lnet/minecraft/world/level/block/Block; TUFF_STAIRS qB field_47028 + f Lnet/minecraft/world/level/block/Block; TUFF_WALL qC field_47029 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF qD field_47030 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_SLAB qE field_47031 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_STAIRS qF field_47032 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_WALL qG field_47033 + f Lnet/minecraft/world/level/block/Block; CHISELED_TUFF qH field_47034 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICKS qI field_47035 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_SLAB qJ field_47036 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_STAIRS qK field_47037 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_WALL qL field_47038 + f Lnet/minecraft/world/level/block/Block; JUNGLE_PLANKS q field_10334 + f Lnet/minecraft/world/level/block/Block; CHISELED_TUFF_BRICKS qM field_47039 + f Lnet/minecraft/world/level/block/Block; CALCITE qN field_27114 + f Lnet/minecraft/world/level/block/Block; TINTED_GLASS qO field_27115 + f Lnet/minecraft/world/level/block/Block; POWDER_SNOW qP field_27879 + f Lnet/minecraft/world/level/block/Block; SCULK_SENSOR qQ field_28108 + f Lnet/minecraft/world/level/block/Block; CALIBRATED_SCULK_SENSOR qR field_43231 + f Lnet/minecraft/world/level/block/Block; SCULK qS field_37568 + f Lnet/minecraft/world/level/block/Block; SCULK_VEIN qT field_37569 + f Lnet/minecraft/world/level/block/Block; SCULK_CATALYST qU field_37570 + f Lnet/minecraft/world/level/block/Block; SCULK_SHRIEKER qV field_37571 + f Lnet/minecraft/world/level/block/Block; COPPER_BLOCK qW field_27119 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER qX field_27118 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER qY field_27117 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER qZ field_27116 + f Lnet/minecraft/world/level/block/Block; RED_CANDLE qa field_27140 + f Lnet/minecraft/world/level/block/Block; BLACK_CANDLE qb field_27141 + f Lnet/minecraft/world/level/block/Block; CANDLE_CAKE qc field_27142 + f Lnet/minecraft/world/level/block/Block; WHITE_CANDLE_CAKE qd field_27143 + f Lnet/minecraft/world/level/block/Block; ORANGE_CANDLE_CAKE qe field_27144 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CANDLE_CAKE qf field_27145 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CANDLE_CAKE qg field_27146 + f Lnet/minecraft/world/level/block/Block; YELLOW_CANDLE_CAKE qh field_27147 + f Lnet/minecraft/world/level/block/Block; LIME_CANDLE_CAKE qi field_27148 + f Lnet/minecraft/world/level/block/Block; PINK_CANDLE_CAKE qj field_27149 + f Lnet/minecraft/world/level/block/Block; GRAY_CANDLE_CAKE qk field_27150 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CANDLE_CAKE ql field_27151 + f Lnet/minecraft/world/level/block/Block; CYAN_CANDLE_CAKE qm field_27152 + f Lnet/minecraft/world/level/block/Block; PURPLE_CANDLE_CAKE qn field_27153 + f Lnet/minecraft/world/level/block/Block; BLUE_CANDLE_CAKE qo field_27154 + f Lnet/minecraft/world/level/block/Block; BROWN_CANDLE_CAKE qp field_27155 + f Lnet/minecraft/world/level/block/Block; GREEN_CANDLE_CAKE qq field_27156 + f Lnet/minecraft/world/level/block/Block; RED_CANDLE_CAKE qr field_27157 + f Lnet/minecraft/world/level/block/Block; BLACK_CANDLE_CAKE qs field_27158 + f Lnet/minecraft/world/level/block/Block; AMETHYST_BLOCK qt field_27159 + f Lnet/minecraft/world/level/block/Block; BUDDING_AMETHYST qu field_27160 + f Lnet/minecraft/world/level/block/Block; AMETHYST_CLUSTER qv field_27161 + f Lnet/minecraft/world/level/block/Block; LARGE_AMETHYST_BUD qw field_27162 + f Lnet/minecraft/world/level/block/Block; MEDIUM_AMETHYST_BUD qx field_27163 + f Lnet/minecraft/world/level/block/Block; SMALL_AMETHYST_BUD qy field_27164 + f Lnet/minecraft/world/level/block/Block; TUFF qz field_27165 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER rA field_33408 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER rB field_27136 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER rC field_27137 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER rD field_27138 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER_STAIRS rE field_33409 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER_STAIRS rF field_27139 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER_STAIRS rG field_27166 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER_STAIRS rH field_27167 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER_SLAB rI field_33410 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER_SLAB rJ field_27168 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER_SLAB rK field_27169 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER_SLAB rL field_27170 + f Lnet/minecraft/world/level/block/Block; ACACIA_PLANKS r field_10218 + f Lnet/minecraft/world/level/block/Block; COPPER_DOOR rM field_47040 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_DOOR rN field_47041 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_DOOR rO field_47042 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_DOOR rP field_47043 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_DOOR rQ field_47044 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_DOOR rR field_47045 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_DOOR rS field_47046 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_DOOR rT field_47047 + f Lnet/minecraft/world/level/block/Block; COPPER_TRAPDOOR rU field_47048 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_TRAPDOOR rV field_47049 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_TRAPDOOR rW field_47050 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_TRAPDOOR rX field_47051 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_TRAPDOOR rY field_47052 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_TRAPDOOR rZ field_47053 + f Lnet/minecraft/world/level/block/Block; COPPER_ORE ra field_27120 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_COPPER_ORE rb field_29221 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER rc field_27121 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER rd field_27122 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER re field_27123 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER rf field_27124 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CHISELED_COPPER rg field_47054 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CHISELED_COPPER rh field_47055 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CHISELED_COPPER ri field_47056 + f Lnet/minecraft/world/level/block/Block; CHISELED_COPPER rj field_47057 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CHISELED_COPPER rk field_47058 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CHISELED_COPPER rl field_47059 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CHISELED_COPPER rm field_47060 + f Lnet/minecraft/world/level/block/Block; WAXED_CHISELED_COPPER rn field_47061 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER_STAIRS ro field_27125 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER_STAIRS rp field_27126 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER_STAIRS rq field_27127 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER_STAIRS rr field_27128 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER_SLAB rs field_27129 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER_SLAB rt field_27130 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER_SLAB ru field_27131 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER_SLAB rv field_27132 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_BLOCK rw field_27133 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER rx field_27134 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER ry field_27135 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER rz field_33407 + f Lnet/minecraft/world/level/block/Block; MOSS_CARPET sA field_28680 + f Lnet/minecraft/world/level/block/Block; PINK_PETALS sB field_42750 + f Lnet/minecraft/world/level/block/Block; MOSS_BLOCK sC field_28681 + f Lnet/minecraft/world/level/block/Block; BIG_DRIPLEAF sD field_28682 + f Lnet/minecraft/world/level/block/Block; BIG_DRIPLEAF_STEM sE field_28683 + f Lnet/minecraft/world/level/block/Block; SMALL_DRIPLEAF sF field_28684 + f Lnet/minecraft/world/level/block/Block; HANGING_ROOTS sG field_28686 + f Lnet/minecraft/world/level/block/Block; ROOTED_DIRT sH field_28685 + f Lnet/minecraft/world/level/block/Block; MUD sI field_37576 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE sJ field_28888 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE sK field_29031 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_STAIRS sL field_28889 + f Lnet/minecraft/world/level/block/Block; CHERRY_PLANKS s field_42751 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_SLAB sM field_28890 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_WALL sN field_28891 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE sO field_28892 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_STAIRS sP field_28893 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_SLAB sQ field_28894 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_WALL sR field_28895 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILES sS field_28896 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_STAIRS sT field_28897 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_SLAB sU field_28898 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_WALL sV field_28899 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICKS sW field_28900 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_STAIRS sX field_28901 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_SLAB sY field_28902 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_WALL sZ field_28903 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_TRAPDOOR sa field_47062 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_TRAPDOOR sb field_47063 + f Lnet/minecraft/world/level/block/Block; COPPER_GRATE sc field_47064 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_GRATE sd field_47065 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_GRATE se field_47066 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_GRATE sf field_47067 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_GRATE sg field_47068 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_GRATE sh field_47069 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_GRATE si field_47070 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_GRATE sj field_47071 + f Lnet/minecraft/world/level/block/Block; COPPER_BULB sk field_47072 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_BULB sl field_47073 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_BULB sm field_47074 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_BULB sn field_47075 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_BULB so field_47076 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_BULB sp field_47077 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_BULB sq field_47078 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_BULB sr field_47079 + f Lnet/minecraft/world/level/block/Block; LIGHTNING_ROD ss field_27171 + f Lnet/minecraft/world/level/block/Block; POINTED_DRIPSTONE st field_28048 + f Lnet/minecraft/world/level/block/Block; DRIPSTONE_BLOCK su field_28049 + f Lnet/minecraft/world/level/block/Block; CAVE_VINES sv field_28675 + f Lnet/minecraft/world/level/block/Block; CAVE_VINES_PLANT sw field_28676 + f Lnet/minecraft/world/level/block/Block; SPORE_BLOSSOM sx field_28677 + f Lnet/minecraft/world/level/block/Block; AZALEA sy field_28678 + f Lnet/minecraft/world/level/block/Block; FLOWERING_AZALEA sz field_28679 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_PLANKS t field_10075 + f Lnet/minecraft/world/level/block/Block; CHISELED_DEEPSLATE ta field_28904 + f Lnet/minecraft/world/level/block/Block; CRACKED_DEEPSLATE_BRICKS tb field_29222 + f Lnet/minecraft/world/level/block/Block; CRACKED_DEEPSLATE_TILES tc field_29223 + f Lnet/minecraft/world/level/block/Block; INFESTED_DEEPSLATE td field_29224 + f Lnet/minecraft/world/level/block/Block; SMOOTH_BASALT te field_29032 + f Lnet/minecraft/world/level/block/Block; RAW_IRON_BLOCK tf field_33508 + f Lnet/minecraft/world/level/block/Block; RAW_COPPER_BLOCK tg field_33509 + f Lnet/minecraft/world/level/block/Block; RAW_GOLD_BLOCK th field_33510 + f Lnet/minecraft/world/level/block/Block; POTTED_AZALEA ti field_33918 + f Lnet/minecraft/world/level/block/Block; POTTED_FLOWERING_AZALEA tj field_33919 + f Lnet/minecraft/world/level/block/Block; OCHRE_FROGLIGHT tk field_37572 + f Lnet/minecraft/world/level/block/Block; VERDANT_FROGLIGHT tl field_37573 + f Lnet/minecraft/world/level/block/Block; PEARLESCENT_FROGLIGHT tm field_37574 + f Lnet/minecraft/world/level/block/Block; FROGSPAWN tn field_37575 + f Lnet/minecraft/world/level/block/Block; REINFORCED_DEEPSLATE to field_38420 + f Lnet/minecraft/world/level/block/Block; DECORATED_POT tp field_42752 + f Lnet/minecraft/world/level/block/Block; CRAFTER tq field_46797 + f Lnet/minecraft/world/level/block/Block; TRIAL_SPAWNER tr field_47336 + f Lnet/minecraft/world/level/block/Block; VAULT ts field_48851 + f Lnet/minecraft/world/level/block/Block; HEAVY_CORE tt field_49830 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; NOT_CLOSED_SHULKER tu field_46288 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PLANKS u field_37577 + f Lnet/minecraft/world/level/block/Block; BAMBOO_PLANKS v field_40294 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC w field_40295 + f Lnet/minecraft/world/level/block/Block; OAK_SAPLING x field_10394 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SAPLING y field_10217 + f Lnet/minecraft/world/level/block/Block; BIRCH_SAPLING z field_10575 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_31625 A method_31625 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26143 B method_26143 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_33357 C method_33357 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26104 D method_26104 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26145 E method_26145 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26146 F method_26146 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26147 G method_26147 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26148 H method_26148 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26149 I method_26149 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26150 J method_26150 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26151 K method_26151 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26152 L method_26152 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26136 M method_26136 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26105 N method_26105 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26144 O method_26144 + m ()V rebuildCache a method_26979 + m (I)Ljava/util/function/ToIntFunction; litBlockEmission a method_26107 + p 0 lightValue + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_26108 a method_26108 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; register a method_52571 + p 0 resourceKey + p 1 block + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; bed a method_26109 + p 0 color + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26111 a method_26111 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; shulkerBox a method_26110 + p 0 color + p 1 mapColor + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; flowerPot a method_50000 + p 0 potted + m (Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/Block; leaves a method_26106 + p 0 soundType + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_56717 a method_56717 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z always a method_26113 + p 0 state + p 1 blockGetter + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; never a method_26114 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/Block; woodenButton a method_45451 + p 0 type + m (Lnet/minecraft/world/level/material/MapColor;)Ljava/util/function/Function; waterloggedMapColor a method_59823 + p 0 unwaterloggedMapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26116 a method_26116 + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; log a method_26117 + p 0 topMapColor + p 1 sideMapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/Block; log a method_47375 + p 0 topMapColor + p 1 sideMapColor + p 2 soundType + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_47376 a method_47376 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; register a method_9492 + p 0 key + p 1 block + m (Z)Lnet/minecraft/world/level/block/Block; pistonBase a method_26119 + p 0 isSticky + m ()Lnet/minecraft/world/level/block/Block; stoneButton b method_45453 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; stainedGlass b method_26120 + p 0 color + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; legacyStair b method_55133 + p 0 baseBlock + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_55132 b method_55132 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z never b method_26122 + p 0 state + p 1 blockGetter + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; always b method_26123 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; netherStem b method_26115 + p 0 mapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_59824 b method_59824 + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26118 b method_26118 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24165 c method_24165 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; stair c method_53980 + p 0 baseBlock + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41421 c method_41421 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_32895 c method_32895 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; ocelotOrParrot c method_26126 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; candle c method_50001 + p 0 mapColor + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41422 d method_41422 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39537 d method_39537 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26130 d method_26130 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41423 e method_41423 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26125 e method_26125 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26128 e method_26128 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41424 f method_41424 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_53981 f method_53981 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26132 f method_26132 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_38230 g method_38230 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36460 h method_36460 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36461 i method_36461 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_32894 j method_32894 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26112 k method_26112 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26121 l method_26121 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26124 m method_26124 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26127 n method_26127 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_24419 o method_24419 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26131 p method_26131 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26129 q method_26129 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26134 r method_26134 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26135 s method_26135 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36458 t method_36458 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26137 u method_26137 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26138 v method_26138 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26139 w method_26139 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26140 x method_26140 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26141 y method_26141 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26142 z method_26142 + m ()V + m ()V +c net/minecraft/world/level/block/BonemealableBlock dgb net/minecraft/class_2256 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V performBonemeal a method_9652 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isBonemealSuccess a method_9650 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getParticlePos a method_55769 + p 1 pos + m ()Lnet/minecraft/world/level/block/BonemealableBlock$Type; getType au_ method_55770 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBonemealTarget b method_9651 + p 1 level + p 2 pos + p 3 state +c net/minecraft/world/level/block/BonemealableBlock$Type dgb$a net/minecraft/class_2256$class_9077 + f Lnet/minecraft/world/level/block/BonemealableBlock$Type; NEIGHBOR_SPREADER a field_47834 + f Lnet/minecraft/world/level/block/BonemealableBlock$Type; GROWER b field_47835 + f [Lnet/minecraft/world/level/block/BonemealableBlock$Type; $VALUES c field_47836 + m ()[Lnet/minecraft/world/level/block/BonemealableBlock$Type; $values a method_55771 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/BrewingStandBlock dgc net/minecraft/class_2260 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46289 + f [Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE b field_10700 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10701 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BrushableBlock dgd net/minecraft/class_8170 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46290 + f I TICK_DELAY b field_42773 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DUSTED c field_42774 + f Lnet/minecraft/world/level/block/Block; turnsInto d field_43232 + f Lnet/minecraft/sounds/SoundEvent; brushSound e field_43233 + f Lnet/minecraft/sounds/SoundEvent; brushCompletedSound f field_43234 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53982 a method_53982 + m ()Lnet/minecraft/world/level/block/Block; getTurnsInto b method_49810 + m ()Lnet/minecraft/sounds/SoundEvent; getBrushSound c method_49811 + m ()Lnet/minecraft/sounds/SoundEvent; getBrushCompletedSound d method_49812 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 turnsInto + p 2 brushSound + p 3 brushCompletedSound + p 4 properties + m ()V +c net/minecraft/world/level/block/BubbleColumnBlock dge net/minecraft/class_2258 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46291 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DRAG_DOWN b field_10680 + f I CHECK_PERIOD c field_31038 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V updateColumn a method_34267 + p 0 level + p 1 pos + p 2 fluid + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateColumn b method_34268 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canExistIn m method_9658 + p 0 blockState + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getColumnState n method_34269 + p 0 blockState + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BucketPickup dgf net/minecraft/class_2263 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; pickupBlock a method_9700 + p 1 player + p 2 level + p 3 pos + p 4 state + m ()Ljava/util/Optional; getPickupSound aw_ method_32351 +c net/minecraft/world/level/block/BuddingAmethystBlock dgg net/minecraft/class_5543 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46292 + f I GROWTH_CHANCE c field_31039 + f [Lnet/minecraft/core/Direction; DIRECTIONS d field_27172 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canClusterGrowAtState g method_31626 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BushBlock dgh net/minecraft/class_2261 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z mayPlaceOn b method_9695 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/ButtonBlock dgi net/minecraft/class_2269 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_FLOOR_AABB_Z F field_10730 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_NORTH_AABB G field_10719 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_SOUTH_AABB H field_10724 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_WEST_AABB I field_10732 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_EAST_AABB J field_10718 + f I PRESSED_DEPTH L field_31040 + f I UNPRESSED_DEPTH M field_31041 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type N field_42753 + f I ticksToStayPressed O field_40298 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46293 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_10729 + f I HALF_AABB_HEIGHT c field_31042 + f I HALF_AABB_WIDTH d field_31043 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_AABB_X e field_10721 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_AABB_Z f field_10727 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_AABB_X g field_10723 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_AABB_Z h field_10716 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10728 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_10715 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB k field_10731 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB l field_10720 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_CEILING_AABB_X m field_10717 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_CEILING_AABB_Z n field_10726 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_FLOOR_AABB_X o field_10722 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)V playSound a method_9714 + p 1 player + p 2 level + p 3 pos + p 4 hitByArrow + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53983 a method_53983 + m (Lnet/minecraft/world/level/block/ButtonBlock;)Ljava/lang/Integer; method_53984 a method_53984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V press a method_21845 + p 1 state + p 2 level + p 3 pos + p 4 player + m (Z)Lnet/minecraft/sounds/SoundEvent; getSound a method_9712 + p 1 isOn + m (Lnet/minecraft/world/level/block/ButtonBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_53985 b method_53985 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkPressed d method_9715 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours e method_9713 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;ILnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 ticksToStayPressed + p 3 properties + m ()V +c net/minecraft/world/level/block/ButtonBlock$1 dgi$1 net/minecraft/class_2269$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10734 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace b field_10733 + m ()V +c net/minecraft/world/level/block/CactusBlock dgj net/minecraft/class_2266 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46294 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_10709 + f I MAX_AGE c field_31044 + f I AABB_OFFSET d field_31045 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE e field_10711 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OUTLINE_SHAPE f field_10710 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CakeBlock dgk net/minecraft/class_2272 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46295 + f I MAX_BITES b field_31046 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; BITES c field_10739 + f I FULL_CAKE_SIGNAL d field_27173 + f F AABB_OFFSET e field_31047 + f F AABB_SIZE_PER_BITE f field_31048 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_BITE g field_10738 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; eat a method_9719 + p 0 level + p 1 pos + p 2 state + p 3 player + m (I)I getOutputSignal b method_31627 + p 0 eaten + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CalibratedSculkSensorBlock dgl net/minecraft/class_8236 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46296 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_43235 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity;)V method_49813 a method_49813 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CampfireBlock dgm net/minecraft/class_3922 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46297 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_17351 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT c field_17352 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SIGNAL_FIRE d field_17353 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_17354 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING f field_17564 + f Lnet/minecraft/world/phys/shapes/VoxelShape; VIRTUAL_FENCE_POST g field_21580 + f I SMOKE_DISTANCE h field_31049 + f Z spawnParticles i field_23881 + f I fireDamage j field_25182 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V dowse a method_29288 + p 0 entity + p 1 level + p 2 pos + p 3 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53986 a method_53986 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isSmokeyPos a method_23895 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZZ)V makeParticles a method_17455 + p 0 level + p 1 pos + p 2 isSignalFire + p 3 spawnExtraSmoke + m (Lnet/minecraft/world/level/block/CampfireBlock;)Ljava/lang/Integer; method_53987 a method_53987 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_30034 a method_30034 + m (Lnet/minecraft/world/level/block/CampfireBlock;)Ljava/lang/Boolean; method_53988 b method_53988 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLitCampfire g method_23896 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight h method_30035 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSmokeSource m method_17456 + c @return whether the given block state produces the thicker signal fire smoke when put below a campfire. + p 1 state + m (ZILnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 spawnParticles + p 2 fireDamage + p 3 properties + m ()V +c net/minecraft/world/level/block/CandleBlock dgn net/minecraft/class_5544 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46298 + f I MIN_CANDLES d field_31050 + f I MAX_CANDLES e field_31051 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CANDLES f field_27174 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT g field_27175 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED h field_27176 + f Ljava/util/function/ToIntFunction; LIGHT_EMISSION i field_27177 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; PARTICLE_OFFSETS j field_27178 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_AABB k field_27179 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TWO_AABB l field_27180 + f Lnet/minecraft/world/phys/shapes/VoxelShape; THREE_AABB m field_27181 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FOUR_AABB n field_27182 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_31628 a method_31628 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight g method_31630 + p 0 state + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; method_31629 m method_31629 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_31631 m method_31631 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CandleCakeBlock dgo net/minecraft/class_5545 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46299 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT d field_27183 + f F AABB_OFFSET e field_31052 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CAKE_SHAPE f field_27184 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CANDLE_SHAPE g field_27185 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_27186 + f Ljava/util/Map; BY_CANDLE i field_27187 + f Ljava/lang/Iterable; PARTICLE_OFFSETS j field_27188 + f Lnet/minecraft/world/level/block/CandleBlock; candleBlock k field_46300 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53989 a method_53989 + m (Lnet/minecraft/world/level/block/CandleBlock;)Lnet/minecraft/world/level/block/state/BlockState; byCandle a method_31632 + p 0 candle + m (Lnet/minecraft/world/level/block/CandleCakeBlock;)Lnet/minecraft/world/level/block/Block; method_53990 a method_53990 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_31633 a method_31633 + m (Lnet/minecraft/world/phys/BlockHitResult;)Z candleHit a method_31634 + p 0 hit + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight g method_31635 + p 0 state + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 candleBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CarpetBlock dgp net/minecraft/class_2577 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46301 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11783 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CarrotBlock dgq net/minecraft/class_2271 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46302 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE b field_10737 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CartographyTableBlock dgr net/minecraft/class_3711 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46303 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17355 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17457 a method_17457 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CarvedPumpkinBlock dgs net/minecraft/class_2276 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46304 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10748 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; snowGolemBase c field_10749 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; snowGolemFull d field_10750 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; ironGolemBase e field_10752 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; ironGolemFull f field_10753 + f Ljava/util/function/Predicate; PUMPKINS_PREDICATE g field_10751 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;)V clearPatternBlocks a method_45454 + p 0 level + p 1 patternMatch + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V spawnGolemInWorld a method_45455 + p 0 level + p 1 patternMatch + p 2 golem + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V trySpawnGolem a method_9731 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSpawnGolem a method_9733 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51167 a method_51167 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateSnowGolemBase b method_9732 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;)V updatePatternBlocks b method_45456 + p 0 level + p 1 patternMatch + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51168 b method_51168 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateSnowGolemFull m method_9729 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_9728 m method_9728 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateIronGolemBase y method_9727 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateIronGolemFull z method_9730 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CauldronBlock dgt net/minecraft/class_5546 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46305 + f F RAIN_FILL_CHANCE e field_34027 + f F POWDER_SNOW_FILL_CHANCE f field_34028 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/biome/Biome$Precipitation;)Z shouldHandlePrecipitation a method_31636 + p 0 level + p 1 precipitation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CaveVines dgu net/minecraft/class_5803 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE t_ field_28687 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BERRIES u_ field_28688 + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_37361 a method_37361 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/InteractionResult; use a method_33619 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasGlowBerries h_ method_33618 + p 0 state + m (I)Ljava/util/function/ToIntFunction; emission i_ method_37362 + p 0 berries + m ()V +c net/minecraft/world/level/block/CaveVinesBlock dgv net/minecraft/class_5805 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46306 + f F CHANCE_OF_BERRIES_ON_GROWTH g field_31053 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CaveVinesPlantBlock dgw net/minecraft/class_5804 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46307 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CeilingHangingSignBlock dgx net/minecraft/class_7713 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46308 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_40300 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED c field_40301 + f F AABB_OFFSET d field_40302 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_40303 + f Ljava/util/Map; AABBS i field_40304 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/item/ItemStack;)Z shouldTryToChainAnotherHangingSign a method_50002 + p 1 player + p 2 hitResult + p 3 sign + p 4 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53991 a method_53991 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/ChainBlock dgy net/minecraft/class_5172 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46309 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_24411 + f F AABB_MIN c field_31054 + f F AABB_MAX d field_31055 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Y_AXIS_AABB e field_23986 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB f field_26650 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB g field_26651 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ChainBlock$1 dgy$1 net/minecraft/class_5172$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_26652 + m ()V +c net/minecraft/world/level/block/ChangeOverTimeBlock dgz net/minecraft/class_5547 + f I SCAN_DISTANCE y_ field_31056 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_54763 a method_54763 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V changeOverTime a_ method_54764 + p 1 state + p 2 level + p 3 pos + p 4 random + m ()F getChanceModifier ay_ method_33620 + m ()Ljava/lang/Enum; getAge c method_33622 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getNextState c method_54765 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getNext i_ method_31639 + p 1 state +c net/minecraft/world/level/block/CherryLeavesBlock dha net/minecraft/class_8167 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46310 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/ChestBlock dhb net/minecraft/class_2281 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46311 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_10768 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE d field_10770 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_10772 + f I EVENT_SET_OPEN_COUNT f field_31057 + f I AABB_OFFSET g field_31058 + f I AABB_HEIGHT h field_31059 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10767 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_10771 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB k field_10773 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB l field_10769 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB m field_10774 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; CHEST_COMBINER n field_17356 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; MENU_PROVIDER_COMBINER o field_17357 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; candidatePartnerFacing a method_9753 + p 1 context + p 2 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isBlockedChestByBlock a method_9757 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isChestBlockedAt a method_9756 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/ChestBlock;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/Container; getContainer a method_17458 + p 0 chest + p 1 state + p 2 level + p 3 pos + p 4 override + m (Lnet/minecraft/world/level/block/entity/LidBlockEntity;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; opennessCombiner a method_24166 + p 0 lid + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)Lnet/minecraft/world/level/block/ChestBlock; method_53992 a method_53992 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isCatSittingOnChest b method_9754 + p 0 level + p 1 pos + m ()Lnet/minecraft/stats/Stat; getOpenChestStat c method_9755 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_24168 c method_24168 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; blockEntityType d method_31641 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; getBlockType g method_24169 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection h method_9758 + c @return the Direction pointing from the given state to its attached double chest + p 0 state + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_53993 m method_53993 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Ljava/util/function/Supplier;)V + p 1 properties + p 2 blockEntityType + m ()V +c net/minecraft/world/level/block/ChestBlock$1 dhb$1 net/minecraft/class_2281$1 + m ()Ljava/util/Optional; acceptNone a method_24170 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptSingle a method_17460 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptDouble a method_17461 + m ()V +c net/minecraft/world/level/block/ChestBlock$2 dhb$2 net/minecraft/class_2281$2 + m ()Ljava/util/Optional; acceptNone a method_24171 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptSingle a method_17462 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptDouble a method_17463 + m ()V +c net/minecraft/world/level/block/ChestBlock$2$1 dhb$2$1 net/minecraft/class_2281$2$1 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; val$first a field_17358 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; val$second b field_17359 + f Lnet/minecraft/world/Container; val$container c field_17360 + m (Lnet/minecraft/world/level/block/ChestBlock$2;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/Container;)V +c net/minecraft/world/level/block/ChestBlock$3 dhb$3 net/minecraft/class_2281$3 + f Lnet/minecraft/world/level/block/entity/LidBlockEntity; val$entity a field_21782 + m ()Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptNone a method_24172 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptSingle a method_23898 + p 1 single + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptDouble a method_23899 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;F)F method_23900 a method_23900 + m (Lnet/minecraft/world/level/block/entity/LidBlockEntity;)V +c net/minecraft/world/level/block/ChestBlock$4 dhb$4 net/minecraft/class_2281$4 + f [I $SwitchMap$net$minecraft$core$Direction a field_10775 + m ()V +c net/minecraft/world/level/block/ChiseledBookShelfBlock dhc net/minecraft/class_7714 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46312 + f I BOOKS_PER_ROW b field_41307 + f Ljava/util/List; SLOT_OCCUPIED_PROPERTIES c field_41308 + f I MAX_BOOKS_IN_STORAGE d field_41309 + m (F)I getSection a method_47577 + p 0 x + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity;I)V removeBook a method_45457 + p 0 level + p 1 pos + p 2 player + p 3 blockEntity + p 4 slot + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity;Lnet/minecraft/world/item/ItemStack;I)V addBook a method_45458 + p 0 level + p 1 pos + p 2 player + p 3 blockEntity + p 4 bookStack + p 5 slot + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;Lnet/minecraft/world/level/block/state/properties/Property;)V method_47578 a method_47578 + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/OptionalInt; getHitSlot a method_47580 + p 1 hitReselt + p 2 state + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/core/Direction;)Ljava/util/Optional; getRelativeHitCoordinatesForBlockFace a method_47579 + p 0 hitResult + p 1 face + m (Lnet/minecraft/world/phys/Vec2;)Ljava/util/OptionalInt; method_55772 a method_55772 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ChiseledBookShelfBlock$1 dhc$1 net/minecraft/class_7714$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_41310 + m ()V +c net/minecraft/world/level/block/ChorusFlowerBlock dhd net/minecraft/class_2279 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46313 + f I DEAD_AGE b field_31060 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_10762 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BLOCK_SUPPORT_SHAPE d field_45145 + f Lnet/minecraft/world/level/block/Block; plant e field_10763 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53994 a method_53994 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V placeDeadFlower a method_9747 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V placeGrownFlower a method_9745 + p 1 level + p 2 pos + p 3 age + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;I)V generatePlant a method_9744 + p 0 level + p 1 pos + p 2 random + p 3 maxHorizontalDistance + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;II)V growTreeRecursive a method_9748 + p 0 level + p 1 branchPos + p 2 random + p 3 originalBranchPos + p 4 maxHorizontalDistance + p 5 iterations + m (Lnet/minecraft/world/level/block/ChorusFlowerBlock;)Lnet/minecraft/world/level/block/Block; method_53995 a method_53995 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z allNeighborsEmpty b method_9746 + p 0 level + p 1 pos + p 2 excludingSide + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 plant + p 2 properties + m ()V +c net/minecraft/world/level/block/ChorusPlantBlock dhe net/minecraft/class_2283 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46314 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getStateWithConnections a method_9759 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CocoaBlock dhf net/minecraft/class_2282 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB F field_10780 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46315 + f I MAX_AGE b field_31061 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_10779 + f I AGE_0_WIDTH d field_31062 + f I AGE_0_HEIGHT e field_31063 + f I AGE_0_HALFWIDTH f field_31064 + f I AGE_1_WIDTH g field_31065 + f I AGE_1_HEIGHT h field_31066 + f I AGE_1_HALFWIDTH i field_31067 + f I AGE_2_WIDTH j field_31068 + f I AGE_2_HEIGHT k field_31069 + f I AGE_2_HALFWIDTH l field_31070 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB m field_10778 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB n field_10776 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB o field_10777 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CocoaBlock$1 dhf$1 net/minecraft/class_2282$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10781 + m ()V +c net/minecraft/world/level/block/ColoredFallingBlock dhg net/minecraft/class_8812 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46316 + f Lnet/minecraft/util/ColorRGBA; dustColor b field_46317 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53996 a method_53996 + m (Lnet/minecraft/world/level/block/ColoredFallingBlock;)Lnet/minecraft/util/ColorRGBA; method_53997 a method_53997 + m (Lnet/minecraft/util/ColorRGBA;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 dustColor + p 2 properties + m ()V +c net/minecraft/world/level/block/CommandBlock dhh net/minecraft/class_2288 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46318 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10791 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CONDITIONAL c field_10793 + f Lorg/slf4j/Logger; LOGGER d field_10792 + f Z automatic e field_27192 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53998 a method_53998 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V executeChain a method_9779 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/CommandBlock;)Ljava/lang/Boolean; method_53999 a method_53999 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BaseCommandBlock;Z)V execute a method_9780 + p 1 state + p 2 level + p 3 pos + p 4 logic + p 5 canTrigger + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 automatic + p 2 properties + m ()V +c net/minecraft/world/level/block/ComparatorBlock dhi net/minecraft/class_2286 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46319 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE b field_10789 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/decoration/ItemFrame; getItemFrame a method_9774 + p 1 level + p 2 facing + p 3 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/decoration/ItemFrame;)Z method_9772 a method_9772 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I calculateOutputSignal e method_9773 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V refreshOutputState f method_9775 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ComposterBlock dhj net/minecraft/class_3962 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46320 + f I READY b field_31071 + f I MIN_LEVEL c field_31072 + f I MAX_LEVEL d field_31073 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL e field_17565 + f Lit/unimi/dsi/fastutil/objects/Object2FloatMap; COMPOSTABLES f field_17566 + f I AABB_SIDE_THICKNESS g field_31074 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OUTER_SHAPE h field_17567 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES i field_17568 + m (FLnet/minecraft/world/level/ItemLike;)V add a method_17753 + p 0 chance + p 1 item + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; insertItem a method_26373 + p 0 entity + p 1 state + p 2 level + p 3 stack + p 4 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; extractProduce a method_26374 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; empty a method_17759 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/block/state/BlockState; addItem a method_17756 + p 0 entity + p 1 state + p 2 level + p 3 pos + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V handleFill a method_18027 + p 0 level + p 1 pos + p 2 success + m ([Lnet/minecraft/world/phys/shapes/VoxelShape;)V method_17755 a method_17755 + m ()V bootStrap b method_17758 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ComposterBlock$EmptyContainer dhj$a net/minecraft/class_3962$class_3925 + m ()V +c net/minecraft/world/level/block/ComposterBlock$InputContainer dhj$b net/minecraft/class_3962$class_3963 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_17569 + f Lnet/minecraft/world/level/LevelAccessor; level c field_17570 + f Lnet/minecraft/core/BlockPos; pos d field_17571 + f Z changed e field_17572 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V + p 1 state + p 2 level + p 3 pos +c net/minecraft/world/level/block/ComposterBlock$OutputContainer dhj$c net/minecraft/class_3962$class_3964 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_17573 + f Lnet/minecraft/world/level/LevelAccessor; level c field_17574 + f Lnet/minecraft/core/BlockPos; pos d field_17575 + f Z changed e field_17576 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V + p 1 state + p 2 level + p 3 pos + p 4 stack +c net/minecraft/world/level/block/ConcretePowderBlock dhk net/minecraft/class_2292 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46321 + f Lnet/minecraft/world/level/block/Block; concrete b field_10810 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54000 a method_54000 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z touchesLiquid a method_9798 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldSolidify a method_24279 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/ConcretePowderBlock;)Lnet/minecraft/world/level/block/Block; method_54001 a method_54001 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canSolidify n method_9799 + p 0 state + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 concrete + p 2 properties + m ()V +c net/minecraft/world/level/block/ConduitBlock dhl net/minecraft/class_2289 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46322 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_10794 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10795 + f I SIZE d field_31075 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CopperBulbBlock dhm net/minecraft/class_8922 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47080 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_47081 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT c field_47082 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V checkAndFlip a method_55373 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CoralBlock dhn net/minecraft/class_2298 + f Lcom/mojang/serialization/MapCodec; DEAD_CORAL_FIELD a field_46323 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46324 + f Lnet/minecraft/world/level/block/Block; deadBlock c field_10818 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54002 a method_54002 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z scanForWater a method_9808 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/CoralBlock;)Lnet/minecraft/world/level/block/Block; method_54003 a method_54003 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralFanBlock dho net/minecraft/class_2297 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46325 + f Lnet/minecraft/world/level/block/Block; deadBlock c field_10817 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54004 a method_54004 + m (Lnet/minecraft/world/level/block/CoralFanBlock;)Lnet/minecraft/world/level/block/Block; method_54005 a method_54005 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralPlantBlock dhp net/minecraft/class_2301 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46326 + f F AABB_OFFSET b field_31076 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10834 + f Lnet/minecraft/world/level/block/Block; deadBlock e field_10833 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54006 a method_54006 + m (Lnet/minecraft/world/level/block/CoralPlantBlock;)Lnet/minecraft/world/level/block/Block; method_54007 a method_54007 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralWallFanBlock dhq net/minecraft/class_2299 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46327 + f Lnet/minecraft/world/level/block/Block; deadBlock f field_10819 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54008 a method_54008 + m (Lnet/minecraft/world/level/block/CoralWallFanBlock;)Lnet/minecraft/world/level/block/Block; method_54009 a method_54009 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CrafterBlock dhr net/minecraft/class_8886 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46798 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRAFTING b field_46799 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED c field_46800 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION d field_46801 + f I MAX_CRAFTING_TICKS e field_46802 + f I CRAFTING_TICK_DELAY f field_47521 + f Lnet/minecraft/world/item/crafting/RecipeCache; RECIPE_CACHE g field_46803 + f I CRAFTER_ADVANCEMENT_DIAMETER h field_50015 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/crafting/RecipeHolder;)V dispenseItem a method_54476 + p 1 level + p 2 pos + p 3 crafter + p 4 stack + p 5 state + p 6 recipe + m (Lnet/minecraft/world/item/ItemStack;)V method_54474 a method_54474 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/CraftingInput;)Ljava/util/Optional; getPotentialResults a method_54475 + p 0 level + p 1 input + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Z)V setBlockEntityTriggered a method_54477 + p 1 blockEntity + p 2 triggered + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V dispenseFrom a method_54478 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CrafterBlock$1 dhr$1 net/minecraft/class_8886$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_46804 + m ()V +c net/minecraft/world/level/block/CraftingTableBlock dhs net/minecraft/class_2304 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46328 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17362 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17466 a method_17466 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CropBlock dht net/minecraft/class_2302 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE a field_10836 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46329 + f I MAX_AGE e field_31079 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE f field_10835 + m (Lnet/minecraft/world/level/Level;)I getBonemealAgeIncrease a method_9831 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V growCrops a method_9826 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z hasSufficientLight a method_52572 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getGrowthSpeed a method_9830 + p 0 block + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/state/properties/IntegerProperty; getAgeProperty b method_9824 + m (I)Lnet/minecraft/world/level/block/state/BlockState; getStateForAge b method_9828 + p 1 age + m ()I getMaxAge c method_9827 + m ()Lnet/minecraft/world/level/ItemLike; getBaseSeedId d method_9832 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAge g method_9829 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge h method_9825 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CrossCollisionBlock dhu net/minecraft/class_2310 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH a field_10905 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST b field_10907 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH c field_10904 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST d field_10903 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_10900 + f Ljava/util/Map; PROPERTY_BY_DIRECTION f field_10902 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; collisionShapeByIndex g field_10901 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; shapeByIndex h field_10906 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stateToIndex i field_19313 + m (FFFFF)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_9984 + p 1 nodeWidth + p 2 extensionWidth + p 3 nodeHeight + p 4 extensionBottom + p 5 extensionHeight + m (Ljava/util/Map$Entry;)Z method_9986 a method_9986 + m (Lnet/minecraft/core/Direction;)I indexFor a method_9985 + p 0 facing + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAABBIndex g method_9987 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_20517 m method_20517 + m (FFFFFLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 nodeWidth + p 2 extensionWidth + p 3 nodeHeight + p 4 extensionHeight + p 5 collisionHeight + p 6 properties + m ()V +c net/minecraft/world/level/block/CrossCollisionBlock$1 dhu$1 net/minecraft/class_2310$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_10909 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_10908 + m ()V +c net/minecraft/world/level/block/CryingObsidianBlock dhv net/minecraft/class_4848 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46330 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DaylightDetectorBlock dhw net/minecraft/class_2309 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46331 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER b field_10897 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; INVERTED c field_10899 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_10898 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/DaylightDetectorBlockEntity;)V tickEntity a method_31642 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateSignalStrength d method_9983 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DeadBushBlock dhx net/minecraft/class_2311 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46332 + f F AABB_OFFSET b field_31080 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10910 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DecoratedPotBlock dhy net/minecraft/class_8168 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46333 + f Lnet/minecraft/resources/ResourceLocation; SHERDS_DYNAMIC_DROP_ID b field_43236 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRACKED c field_43237 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOUNDING_BOX d field_42754 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; HORIZONTAL_FACING e field_42755 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_42756 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity;Ljava/util/function/Consumer;)V method_49815 a method_49815 + m (Ljava/util/List;Ljava/util/Optional;)V method_51510 a method_51510 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DetectorRailBlock dhz net/minecraft/class_2313 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46334 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_10914 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_10913 + f I PRESSED_CHECK_PERIOD g field_31081 + m (Lnet/minecraft/world/entity/Entity;)Z method_31643 a method_31643 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkPressed a method_10002 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List; getInteractingMinecartOfType a method_10001 + p 1 level + p 2 pos + p 3 cartType + p 4 filter + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; getSearchBB a method_10004 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)Z method_31644 b method_31644 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V updatePowerToConnected b method_10003 + p 1 level + p 2 pos + p 3 state + p 4 powered + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DetectorRailBlock$1 dhz$1 net/minecraft/class_2313$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_10917 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_10916 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_10915 + m ()V +c net/minecraft/world/level/block/DiodeBlock dia net/minecraft/class_2312 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10912 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_10911 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getOutputSignal a method_9993 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldTurnOn a method_9990 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/SignalGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getAlternateSignal a method_10000 + p 1 level + p 2 pos + p 3 state + m ()Z sideInputDiodesOnly b method_49816 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldPrioritize b method_9988 + c Check if this diode should have a higher tick priority than default.\n\n

\nBoth repeaters and comparators use this method to increase their tick priorities\nwhen facing other diodes. This makes certain monostable circuits based on the repeater locking\nmechanic more reliable. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getInputSignal b method_9991 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOn b method_53789 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkTickOnNeighbor c method_9998 + c Check the output signal of this diode and schedule a new block tick if it should change. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isLocked c method_9996 + c Check if neighboring blocks are locking this diode. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighborsInFront d method_9997 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getDelay g method_9992 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDiode m method_9999 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DirectionalBlock dib net/minecraft/class_2318 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING a field_10927 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DirtPathBlock dic net/minecraft/class_2369 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46335 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11106 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DispenserBlock did net/minecraft/class_2315 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46336 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10918 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED c field_10920 + f Ljava/util/Map; DISPENSER_REGISTRY d field_10919 + c Registry for all dispense behaviors. + f Lorg/slf4j/Logger; LOGGER e field_46212 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; DEFAULT_BEHAVIOR f field_51412 + f I TRIGGER_DURATION g field_31082 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V dispenseFrom a method_10012 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/ItemLike;)V registerProjectileBehavior a method_58681 + p 0 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/core/dispenser/DispenseItemBehavior;)V registerBehavior a method_10009 + p 0 item + p 1 behavior + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/dispenser/DispenseItemBehavior; getDispenseMethod a method_10011 + p 1 level + p 2 item + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;)V method_10008 a method_10008 + m (Lnet/minecraft/core/dispenser/BlockSource;)Lnet/minecraft/core/Position; getDispensePosition a method_58682 + p 0 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;DLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/Position; getDispensePosition a method_10010 + p 0 blockSource + p 1 multiplier + p 3 offset + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DoorBlock die net/minecraft/class_2323 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46337 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10938 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN c field_10945 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HINGE d field_10941 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED e field_10940 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF f field_10946 + f F AABB_DOOR_THICKNESS g field_31083 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_10942 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10939 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_10944 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_10943 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type l field_42757 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Z)V setOpen a method_10033 + p 1 entity + p 2 level + p 3 state + p 4 pos + p 5 open + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V playSound a method_10036 + p 1 source + p 2 level + p 3 pos + p 4 isOpening + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54010 a method_54010 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isWoodenDoor a method_24795 + p 0 level + p 1 pos + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; type b method_51169 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; getHinge b method_10035 + p 1 context + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isOpen m method_30841 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isWoodenDoor n method_24796 + p 0 state + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/DoorBlock$1 die$1 net/minecraft/class_2323$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10948 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_10947 + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner dif net/minecraft/class_4732 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/world/level/block/state/properties/DirectionProperty;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Ljava/util/function/BiPredicate;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult; combineWithNeigbour a method_24173 + p 0 blockEntityType + p 1 doubleBlockTypeGetter + p 2 directionGetter + p 3 directionProperty + p 4 state + p 5 level + p 6 pos + p 7 blockedChestTest + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner$BlockType dif$a net/minecraft/class_4732$class_4733 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; SINGLE a field_21783 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; FIRST b field_21784 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; SECOND c field_21785 + f [Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; $VALUES d field_21786 + m ()[Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; $values a method_36705 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner$Combiner dif$b net/minecraft/class_4732$class_3923 + m (Ljava/lang/Object;)Ljava/lang/Object; acceptSingle a method_17464 + p 1 single + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; acceptDouble a method_17465 + p 1 first + p 2 second + m ()Ljava/lang/Object; acceptNone b method_24174 +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult dif$c net/minecraft/class_4732$class_4734 +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult$Double dif$c$a net/minecraft/class_4732$class_4734$class_4735 + f Ljava/lang/Object; first a field_21787 + f Ljava/lang/Object; second b field_21788 + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 1 first + p 2 second +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult$Single dif$c$b net/minecraft/class_4732$class_4734$class_4736 + f Ljava/lang/Object; single a field_21789 + m (Ljava/lang/Object;)V + p 1 single +c net/minecraft/world/level/block/DoublePlantBlock dig net/minecraft/class_2320 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46338 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF b field_10929 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)V placeAt a method_10021 + p 0 level + p 1 state + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)V preventDropFromBottomPart b method_30036 + p 0 level + p 1 pos + p 2 state + p 3 player + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; copyWaterloggedFrom c method_37458 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DragonEggBlock dih net/minecraft/class_2328 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46339 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10950 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V teleport d method_10047 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DropExperienceBlock dii net/minecraft/class_2431 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46340 + f Lnet/minecraft/util/valueproviders/IntProvider; xpRange b field_27195 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54011 a method_54011 + m (Lnet/minecraft/world/level/block/DropExperienceBlock;)Lnet/minecraft/util/valueproviders/IntProvider; method_54012 a method_54012 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 xpRange + p 2 properties + m ()V +c net/minecraft/world/level/block/DropperBlock dij net/minecraft/class_2325 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46341 + f Lorg/slf4j/Logger; LOGGER f field_46213 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_BEHAVIOUR g field_10949 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/EnchantingTableBlock dik net/minecraft/class_2331 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46342 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10951 + f Ljava/util/List; BOOKSHELF_OFFSETS c field_36535 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17467 a method_17467 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isValidBookShelf a method_40445 + p 0 level + p 1 enchantingTablePos + p 2 bookshelfPos + m (Lnet/minecraft/core/BlockPos;)Z method_40446 a method_40446 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndGatewayBlock dil net/minecraft/class_2329 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46343 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; calculateExitMovement a method_60989 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndPortalBlock dim net/minecraft/class_2334 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46344 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10959 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndPortalFrameBlock din net/minecraft/class_2333 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46345 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10954 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_EYE c field_10958 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE_SHAPE d field_10956 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EYE_SHAPE e field_10953 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_SHAPE f field_10955 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; portalShape g field_10957 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreatePortalShape b method_10054 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndRodBlock dio net/minecraft/class_5551 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46346 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EnderChestBlock dip net/minecraft/class_2336 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46347 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_10966 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_10968 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_10967 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE f field_17363 + m (Lnet/minecraft/world/inventory/PlayerEnderChestContainer;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_55773 a method_55773 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24205 m method_24205 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/EntityBlock diq net/minecraft/class_2343 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/gameevent/GameEventListener; getListener a method_32896 + p 1 level + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; getTicker a method_31645 + p 1 level + p 2 state + p 3 blockEntityType + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/entity/BlockEntity; newBlockEntity a method_10123 + p 1 pos + p 2 state +c net/minecraft/world/level/block/EquipableCarvedPumpkinBlock dir net/minecraft/class_8574 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46348 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FaceAttachedHorizontalDirectionalBlock dis net/minecraft/class_2341 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; FACE K field_11007 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttach b method_20046 + p 0 reader + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection m method_10119 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FaceAttachedHorizontalDirectionalBlock$1 dis$1 net/minecraft/class_2341$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace a field_11008 + m ()V +c net/minecraft/world/level/block/Fallable dit net/minecraft/class_5688 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; getFallDamageSource a method_32898 + p 1 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/item/FallingBlockEntity;)V onBrokenAfterFall a method_10129 + p 1 level + p 2 pos + p 3 fallingBlock + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/item/FallingBlockEntity;)V onLand a method_10127 + p 1 level + p 2 pos + p 3 state + p 4 replaceableState + p 5 fallingBlock +c net/minecraft/world/level/block/FallingBlock diu net/minecraft/class_2346 + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;)V falling a method_10132 + p 1 entity + m ()I getDelayAfterPlace b method_26154 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getDustColor b method_10130 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFree m method_10128 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/FarmBlock div net/minecraft/class_2344 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46349 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; MOISTURE b field_11009 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11010 + f I MAX_MOISTURE d field_31084 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V turnToDirt a method_10125 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z shouldMaintainFarmland a method_10124 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isNearWater a method_10126 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FenceBlock diw net/minecraft/class_2354 + f Lcom/mojang/serialization/MapCodec; CODEC i field_46350 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; occlusionByIndex j field_11066 + m (Lnet/minecraft/world/level/block/state/BlockState;ZLnet/minecraft/core/Direction;)Z connectsTo a method_10184 + p 1 state + p 2 isSideSolid + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSameFence m method_26375 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FenceGateBlock dix net/minecraft/class_2349 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_OCCLUSION_SHAPE_LOW F field_11027 + f Lnet/minecraft/world/level/block/state/properties/WoodType; type G field_42758 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46351 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN b field_11026 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11021 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; IN_WALL d field_11024 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SHAPE e field_11022 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SHAPE f field_11017 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SHAPE_LOW g field_11025 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SHAPE_LOW h field_11016 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_COLLISION_SHAPE i field_11028 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_COLLISION_SHAPE j field_11019 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SUPPORT_SHAPE k field_40744 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SUPPORT_SHAPE l field_40745 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_OCCLUSION_SHAPE m field_11018 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_OCCLUSION_SHAPE n field_11023 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_OCCLUSION_SHAPE_LOW o field_11020 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54013 a method_54013 + m (Lnet/minecraft/world/level/block/FenceGateBlock;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_54014 a method_54014 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z connectsToDirection a method_16703 + p 0 state + p 1 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isWall m method_10138 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/FenceGateBlock$1 dix$1 net/minecraft/class_2349$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_11029 + m ()V +c net/minecraft/world/level/block/FireBlock diy net/minecraft/class_2358 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB F field_26657 + f Ljava/util/Map; shapesCache G field_26658 + f I IGNITE_INSTANT H field_31085 + f I IGNITE_EASY I field_31086 + f I IGNITE_MEDIUM J field_31087 + f I IGNITE_HARD K field_31088 + f I BURN_INSTANT L field_31089 + f I BURN_EASY M field_31090 + f I BURN_MEDIUM N field_31091 + f I BURN_HARD O field_31092 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; igniteOdds P field_11095 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; burnOdds Q field_11091 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46352 + f I MAX_AGE d field_31093 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE e field_11092 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH f field_11096 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST g field_11094 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH h field_11089 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST i field_11088 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP j field_11093 + f Ljava/util/Map; PROPERTY_BY_DIRECTION k field_11090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB l field_26653 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB m field_26654 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB n field_26655 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB o field_26656 + m (Lnet/minecraft/util/RandomSource;)I getFireTickDelay a method_26155 + c Gets the delay before this block ticks again (without counting random ticks) + p 0 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isNearRain a method_10192 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;I)V checkBurnOut a method_10196 + p 1 level + p 2 pos + p 3 chance + p 4 random + p 5 age + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/level/block/state/BlockState; getStateWithAge a method_24855 + p 1 level + p 2 pos + p 3 age + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)I getIgniteOdds a method_10194 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;II)V setFlammable a method_10189 + p 1 block + p 2 encouragement + p 3 flammability + m (Ljava/util/Map$Entry;)Z method_10197 a method_10197 + m ()V bootStrap b method_10199 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement b method_10198 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isValidFireLocation d method_10193 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_31016 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getBurnOdds n method_10190 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getIgniteOdds o method_10191 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_31017 p method_31017 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FletchingTableBlock diz net/minecraft/class_3712 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46353 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FlowerBlock dja net/minecraft/class_2356 + f Lcom/mojang/serialization/MapCodec; EFFECTS_FIELD a field_46354 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46355 + f F AABB_OFFSET c field_31094 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_11085 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; suspiciousStewEffects e field_45775 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54016 a method_54016 + m (Lnet/minecraft/core/Holder;F)Lnet/minecraft/world/item/component/SuspiciousStewEffects; makeEffectList a method_54015 + p 0 effect + p 1 seconds + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 effect + p 2 seconds + p 3 properties + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 suspiciousStewEffects + p 2 properties + m ()V +c net/minecraft/world/level/block/FlowerPotBlock djb net/minecraft/class_2362 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46356 + f F AABB_SIZE b field_31095 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11102 + f Ljava/util/Map; POTTED_BY_CONTENT d field_11103 + f Lnet/minecraft/world/level/block/Block; potted e field_11101 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54017 a method_54017 + m (Lnet/minecraft/world/level/block/FlowerPotBlock;)Lnet/minecraft/world/level/block/Block; method_54018 a method_54018 + m ()Lnet/minecraft/world/level/block/Block; getPotted b method_16231 + m ()Z isEmpty m method_31646 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 potted + p 2 properties + m ()V +c net/minecraft/world/level/block/FrogspawnBlock djc net/minecraft/class_7113 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46357 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_37578 + f I MIN_TADPOLES_SPAWN c field_37579 + f I MAX_TADPOLES_SPAWN d field_37580 + f I DEFAULT_MIN_HATCH_TICK_DELAY e field_37581 + f I DEFAULT_MAX_HATCH_TICK_DELAY f field_37582 + f I minHatchTickDelay g field_37583 + f I maxHatchTickDelay h field_37584 + m (II)V setHatchDelay a method_41425 + p 0 minHatchDelay + p 1 maxHatchDelay + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V hatchFrogspawn a method_41426 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/util/RandomSource;)I getFrogspawnHatchDelay a method_41429 + p 0 random + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z mayPlaceOn a method_41427 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V destroyBlock a method_41428 + p 1 level + p 2 pos + m ()V setDefaultHatchDelay b method_41431 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V spawnTadpoles b method_41430 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/util/RandomSource;)D getRandomTadpolePositionOffset b method_44015 + p 1 random + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FrostedIceBlock djd net/minecraft/class_2360 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46358 + f I MAX_AGE b field_31096 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11097 + f I NEIGHBORS_TO_AGE f field_31097 + f I NEIGHBORS_TO_MELT g field_31098 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;I)Z fewerNeigboursThan a method_10202 + p 1 level + p 2 pos + p 3 neighborsRequired + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z slightlyMelt e method_10201 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FungusBlock dje net/minecraft/class_4771 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46359 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_22134 + f D BONEMEAL_SUCCESS_PROBABILITY c field_31099 + f Lnet/minecraft/world/level/block/Block; requiredBlock d field_41074 + f Lnet/minecraft/resources/ResourceKey; feature e field_22135 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_46682 a method_46682 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54019 a method_54019 + m (Lnet/minecraft/world/level/LevelReader;)Ljava/util/Optional; getFeature a method_46683 + p 1 level + m (Lnet/minecraft/world/level/block/FungusBlock;)Lnet/minecraft/world/level/block/Block; method_54020 a method_54020 + m (Lnet/minecraft/world/level/block/FungusBlock;)Lnet/minecraft/resources/ResourceKey; method_54021 b method_54021 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 feature + p 2 requiredBlock + p 3 properties + m ()V +c net/minecraft/world/level/block/FurnaceBlock djf net/minecraft/class_3865 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46360 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GameMasterBlock djg net/minecraft/class_5552 +c net/minecraft/world/level/block/GlazedTerracottaBlock djh net/minecraft/class_2366 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46362 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GlowLichenBlock dji net/minecraft/class_5777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46363 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_28412 + f Lnet/minecraft/world/level/block/MultifaceSpreader; spreader d field_37585 + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_37363 a method_37363 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z method_34727 a method_34727 + m (I)Ljava/util/function/ToIntFunction; emission b method_37364 + p 0 light + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GrassBlock djj net/minecraft/class_2372 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46364 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/GrindstoneBlock djk net/minecraft/class_3713 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_ALL_LEGS F field_16362 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_GRINDSTONE G field_16338 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_POST H field_16352 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_POST I field_16377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_PIVOT J field_16393 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_PIVOT L field_16371 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_LEG M field_16340 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_LEG N field_16354 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_ALL_LEGS O field_16369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_GRINDSTONE P field_16399 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_POST Q field_16363 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_POST R field_16347 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_PIVOT S field_16401 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_PIVOT T field_16367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_LEG U field_16388 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_LEG V field_16396 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_ALL_LEGS W field_16368 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_GRINDSTONE X field_16356 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_POST Y field_16342 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_POST Z field_16358 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_LEG aA field_16395 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_LEG aB field_16360 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_ALL_LEGS aC field_16389 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_GRINDSTONE aD field_16383 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46365 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE aR field_17364 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_PIVOT aa field_16390 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_PIVOT ab field_16382 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_LEG ac field_16359 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_LEG ad field_16351 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_ALL_LEGS ae field_16344 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_GRINDSTONE af field_16376 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_POST ag field_16394 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_POST ah field_16375 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_PIVOT ai field_16345 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_PIVOT aj field_16350 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_LEG ak field_16372 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_LEG al field_16381 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_ALL_LEGS am field_16391 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_GRINDSTONE an field_16370 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_POST ao field_16341 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_POST ap field_16355 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_PIVOT aq field_16384 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_PIVOT ar field_16400 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_LEG as field_16364 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_LEG at field_16349 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_ALL_LEGS au field_16397 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_GRINDSTONE av field_16361 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_POST aw field_16387 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_POST ax field_16398 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_PIVOT ay field_16357 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_PIVOT az field_16353 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_POST b field_16379 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_POST c field_16392 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_PIVOT d field_16366 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_PIVOT e field_16339 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_LEG f field_16348 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_LEG g field_16365 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_ALL_LEGS h field_16385 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_GRINDSTONE i field_16380 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_POST j field_16373 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_POST k field_16346 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_PIVOT l field_16343 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_PIVOT m field_16374 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_LEG n field_16386 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_LEG o field_16378 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17469 a method_17469 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVoxelShape n method_16119 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GrindstoneBlock$1 djk$1 net/minecraft/class_3713$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace a field_16402 + m ()V +c net/minecraft/world/level/block/GrowingPlantBlock djl net/minecraft/class_4863 + f Lnet/minecraft/core/Direction; growthDirection a field_22507 + f Z scheduleFluidTicks b field_22508 + f Lnet/minecraft/world/phys/shapes/VoxelShape; shape d field_23080 + m (Lnet/minecraft/world/level/LevelAccessor;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_24948 + p 1 level + m ()Lnet/minecraft/world/level/block/Block; getBodyBlock b method_24946 + m ()Lnet/minecraft/world/level/block/GrowingPlantHeadBlock; getHeadBlock c method_24945 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canAttachTo m method_24947 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;Z)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks +c net/minecraft/world/level/block/GrowingPlantBodyBlock djm net/minecraft/class_4864 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getHeadPos a method_25960 + p 1 level + p 2 pos + p 3 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateHeadAfterConvertedFromBody a method_33624 + p 1 head + p 2 body + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;Z)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks +c net/minecraft/world/level/block/GrowingPlantHeadBlock djn net/minecraft/class_4865 + f D growPerTickProbability c field_22510 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE e field_22509 + f I MAX_AGE f field_31100 + m (Lnet/minecraft/util/RandomSource;)I getBlocksToGrowWhenBonemealed a method_26376 + p 1 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; getGrowIntoState a method_33626 + p 1 state + p 2 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateBodyAfterConvertedFromHead a method_33625 + p 1 head + p 2 body + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canGrowInto g method_24949 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getMaxAgeState n method_38232 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge o method_38233 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;ZD)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks + p 5 growPerTickProbability + m ()V +c net/minecraft/world/level/block/HalfTransparentBlock djo net/minecraft/class_2373 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46366 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HangingRootsBlock djp net/minecraft/class_5806 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_28689 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_33642 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HayBlock djq net/minecraft/class_2380 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46368 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HeavyCoreBlock djr net/minecraft/class_9366 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49831 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_49833 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HoneyBlock djs net/minecraft/class_4622 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_21213 + f D SLIDE_STARTS_WHEN_VERTICAL_SPEED_IS_AT_LEAST c field_31101 + f D MIN_FALL_SPEED_TO_BE_CONSIDERED_SLIDING e field_31102 + f D THROTTLE_SLIDE_SPEED_TO f field_31103 + f I SLIDE_ADVANCEMENT_CHECK_INTERVAL g field_31104 + m (Lnet/minecraft/world/entity/Entity;)V showSlideParticles a method_24175 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;I)V showParticles a method_23355 + p 0 entity + p 1 particleCount + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V maybeDoSlideAchievement a method_24176 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)V maybeDoSlideEffects a method_24177 + p 1 level + p 2 entity + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z isSlidingDown a method_23356 + p 1 pos + p 2 entity + m (Lnet/minecraft/world/entity/Entity;)V showJumpParticles b method_24178 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Z doesEntityDoHoneyBlockSlideEffects c method_24179 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)V doSlideMovement d method_24180 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HopperBlock djt net/minecraft/class_2377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_INTERACTION_SHAPE F field_11123 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_INTERACTION_SHAPE G field_11128 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_INTERACTION_SHAPE H field_11135 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46370 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11129 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ENABLED c field_11126 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP d field_11131 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FUNNEL e field_11127 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CONVEX_BASE f field_11121 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INSIDE g field_49154 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE h field_11132 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_SHAPE i field_11120 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE j field_11134 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE k field_11124 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE l field_11122 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE m field_11130 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_INTERACTION_SHAPE n field_11125 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_INTERACTION_SHAPE o field_11133 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkPoweredState a method_10217 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HopperBlock$1 djt$1 net/minecraft/class_2377$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11136 + m ()V +c net/minecraft/world/level/block/HorizontalDirectionalBlock dju net/minecraft/class_2383 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING aE field_11177 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HugeMushroomBlock djv net/minecraft/class_2381 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46371 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH b field_11171 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST c field_11172 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH d field_11170 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST e field_11167 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP f field_11166 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN g field_11169 + f Ljava/util/Map; PROPERTY_BY_DIRECTION h field_11168 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/IceBlock djw net/minecraft/class_2386 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46372 + m ()Lnet/minecraft/world/level/block/state/BlockState; meltsInto b method_51170 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V melt d method_10275 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/InfestedBlock djx net/minecraft/class_2384 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46373 + f Lnet/minecraft/world/level/block/Block; hostBlock b field_11178 + f Ljava/util/Map; BLOCK_BY_HOST_BLOCK c field_11179 + f Ljava/util/Map; HOST_TO_INFESTED_STATES d field_33564 + f Ljava/util/Map; INFESTED_TO_HOST_STATES e field_33565 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnInfestation a method_24797 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54022 a method_54022 + m (Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/block/state/BlockState; getNewStateWithProperties a method_36363 + p 0 stateMap + p 1 state + p 2 supplier + m (Ljava/util/function/Supplier;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_36364 a method_36364 + m ()Lnet/minecraft/world/level/block/Block; getHostBlock b method_10271 + m ()Lnet/minecraft/world/level/block/state/BlockState; method_36365 m method_36365 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCompatibleHostBlock m method_10269 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; infestedStateByHost n method_36366 + p 0 host + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; hostStateByInfested o method_10270 + p 1 infested + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_36367 p method_36367 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 hostBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/InfestedRotatedPillarBlock djy net/minecraft/class_6348 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46374 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54023 a method_54023 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/IronBarsBlock djz net/minecraft/class_2389 + f Lcom/mojang/serialization/MapCodec; CODEC i field_46375 + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Z attachsTo a method_10281 + p 1 state + p 2 solidSide + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/JigsawBlock dka net/minecraft/class_3748 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46376 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION b field_23262 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Z canAttach a method_16546 + p 0 info + p 1 info2 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; method_26377 a method_26377 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getFrontFacing m method_26378 + c This represents the face that the puzzle piece is on. To connect: 2 jigsaws must have their puzzle piece face facing each other. + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getTopFacing n method_26379 + c This represents the face that the line connector is on. To connect, if the OrientationType is ALIGNED, the two lines must be in the same direction. (Their textures will form one straight line) + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/JukeboxBlock dkb net/minecraft/class_2387 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46377 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_RECORD b field_11180 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/KelpBlock dkc net/minecraft/class_2393 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46378 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_11195 + f D GROW_PER_TICK_PROBABILITY h field_31105 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/KelpPlantBlock dkd net/minecraft/class_2391 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46379 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/LadderBlock dke net/minecraft/class_2399 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46380 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11253 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_11257 + f F AABB_OFFSET d field_31106 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB e field_11255 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB f field_11252 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB g field_11254 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB h field_11256 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttachTo a method_10305 + p 1 blockReader + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LadderBlock$1 dke$1 net/minecraft/class_2399$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11258 + m ()V +c net/minecraft/world/level/block/LanternBlock dkf net/minecraft/class_3749 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46381 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING b field_16545 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_26441 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB d field_16546 + f Lnet/minecraft/world/phys/shapes/VoxelShape; HANGING_AABB e field_16544 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection m method_16370 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LavaCauldronBlock dkg net/minecraft/class_5553 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46382 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/LayeredCauldronBlock dkh net/minecraft/class_5556 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46383 + f I MIN_FILL_LEVEL e field_31107 + f I MAX_FILL_LEVEL f field_31108 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL g field_27206 + f I BASE_CONTENT_HEIGHT h field_31109 + f D HEIGHT_PER_LEVEL i field_31110 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; precipitationType j field_46384 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54024 a method_54024 + m (Lnet/minecraft/world/level/block/LayeredCauldronBlock;)Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; method_54025 a method_54025 + m (Lnet/minecraft/world/level/block/LayeredCauldronBlock;)Lnet/minecraft/world/level/biome/Biome$Precipitation; method_54026 b method_54026 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V lowerFillLevel d method_31650 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V handleEntityOnFireInside e method_36994 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/biome/Biome$Precipitation;Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 precipitationType + p 2 interactions + p 3 properties + m ()V +c net/minecraft/world/level/block/LeavesBlock dki net/minecraft/class_2397 + f I TICK_DELAY a field_31112 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46385 + f I DECAY_DISTANCE c field_31111 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE d field_11199 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PERSISTENT e field_11200 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_38227 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateDistance a method_10300 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z decaying m method_42311 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/OptionalInt; getOptionalDistanceAt n method_49817 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getDistanceAt o method_10302 + p 0 neighbor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LecternBlock dkj net/minecraft/class_3715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46386 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16404 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_17365 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOOK d field_17366 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BASE e field_16406 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_POST f field_16405 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_COMMON g field_16403 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_TOP_PLATE h field_17367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_COLLISION i field_17368 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_WEST j field_17369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_NORTH k field_17370 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_EAST l field_17371 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_SOUTH m field_17372 + f I PAGE_CHANGE_IMPULSE_TICKS n field_31113 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V resetBookState a method_17473 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 hasBook + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;)Z tryPlaceBook a method_17472 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V openScreen a method_17470 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V signalPageChange a method_17471 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V changePowered a method_17476 + p 0 level + p 1 pos + p 2 state + p 3 powered + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;)V placeBook b method_17475 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateBelow b method_17474 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V popBook d method_17477 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LecternBlock$1 dkj$1 net/minecraft/class_3715$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15363 + m ()V +c net/minecraft/world/level/block/LevelEvent dkk net/minecraft/class_6088 + f I SOUND_CHORUS_DEATH A field_31122 + f I SOUND_BREWING_STAND_BREW B field_31123 + f I SOUND_END_PORTAL_SPAWN C field_31126 + f I SOUND_PHANTOM_BITE D field_31127 + f I SOUND_ZOMBIE_TO_DROWNED E field_31128 + f I SOUND_HUSK_TO_ZOMBIE F field_31129 + f I SOUND_GRINDSTONE_USED G field_31130 + f I SOUND_PAGE_TURN H field_31131 + f I SOUND_SMITHING_TABLE_USED I field_31132 + f I SOUND_POINTED_DRIPSTONE_LAND J field_31133 + f I SOUND_DRIP_LAVA_INTO_CAULDRON K field_31134 + f I SOUND_DRIP_WATER_INTO_CAULDRON L field_31135 + f I SOUND_SKELETON_TO_STRAY M field_31136 + f I SOUND_CRAFTER_CRAFT N field_46805 + f I SOUND_CRAFTER_FAIL O field_46806 + f I SOUND_WIND_CHARGE_SHOOT P field_51787 + f I COMPOSTER_FILL Q field_31137 + f I LAVA_FIZZ R field_31138 + f I REDSTONE_TORCH_BURNOUT S field_31139 + f I END_PORTAL_FRAME_FILL T field_31141 + f I DRIPSTONE_DRIP U field_31142 + f I PARTICLES_AND_SOUND_PLANT_GROWTH V field_33511 + f I PARTICLES_SHOOT_SMOKE W field_31143 + f I PARTICLES_DESTROY_BLOCK X field_31144 + f I PARTICLES_SPELL_POTION_SPLASH Y field_31145 + f I PARTICLES_EYE_OF_ENDER_DEATH Z field_31146 + f I ANIMATION_SPAWN_COBWEB aA field_50164 + f I PARTICLES_TRIAL_SPAWNER_DETECT_PLAYER_OMINOUS aB field_50165 + f I PARTICLES_TRIAL_SPAWNER_BECOME_OMINOUS aC field_50166 + f I PARTICLES_TRIAL_SPAWNER_SPAWN_ITEM aD field_50167 + f I SOUND_DISPENSER_DISPENSE a field_31140 + f I PARTICLES_MOBBLOCK_SPAWN aa field_31147 + f I PARTICLES_DRAGON_FIREBALL_SPLASH ab field_31149 + f I PARTICLES_INSTANT_POTION_SPLASH ac field_31150 + f I PARTICLES_DRAGON_BLOCK_BREAK ad field_31151 + f I PARTICLES_WATER_EVAPORATING ae field_31152 + f I PARTICLES_SHOOT_WHITE_SMOKE af field_46807 + f I PARTICLES_BEE_GROWTH ag field_47837 + f I PARTICLES_TURTLE_EGG_PLACEMENT ah field_47838 + f I PARTICLES_SMASH_ATTACK ai field_50168 + f I ANIMATION_END_GATEWAY_SPAWN aj field_31153 + f I ANIMATION_DRAGON_SUMMON_ROAR ak field_31154 + f I PARTICLES_ELECTRIC_SPARK al field_31155 + f I PARTICLES_AND_SOUND_WAX_ON am field_31156 + f I PARTICLES_WAX_OFF an field_31157 + f I PARTICLES_SCRAPE ao field_31158 + f I PARTICLES_SCULK_CHARGE ap field_37586 + f I PARTICLES_SCULK_SHRIEK aq field_38228 + f I PARTICLES_AND_SOUND_BRUSH_BLOCK_COMPLETE ar field_42759 + f I PARTICLES_EGG_CRACK as field_43238 + f I PARTICLES_TRIAL_SPAWNER_SPAWN at field_47340 + f I PARTICLES_TRIAL_SPAWNER_SPAWN_MOB_AT au field_47341 + f I PARTICLES_TRIAL_SPAWNER_DETECT_PLAYER av field_47342 + f I ANIMATION_TRIAL_SPAWNER_EJECT_ITEM aw field_47343 + f I ANIMATION_VAULT_ACTIVATE ax field_48852 + f I ANIMATION_VAULT_DEACTIVATE ay field_48853 + f I ANIMATION_VAULT_EJECT_ITEM az field_48854 + f I SOUND_DISPENSER_FAIL b field_31159 + f I SOUND_DISPENSER_PROJECTILE_LAUNCH c field_31160 + f I SOUND_FIREWORK_SHOOT d field_31162 + f I SOUND_EXTINGUISH_FIRE e field_31167 + f I SOUND_PLAY_JUKEBOX_SONG f field_42760 + f I SOUND_STOP_JUKEBOX_SONG g field_42761 + f I SOUND_GHAST_WARNING h field_31173 + f I SOUND_GHAST_FIREBALL i field_31174 + f I SOUND_DRAGON_FIREBALL j field_31175 + f I SOUND_BLAZE_FIREBALL k field_31176 + f I SOUND_ZOMBIE_WOODEN_DOOR l field_31177 + f I SOUND_ZOMBIE_IRON_DOOR m field_31178 + f I SOUND_ZOMBIE_DOOR_CRASH n field_31179 + f I SOUND_WITHER_BLOCK_BREAK o field_31180 + f I SOUND_WITHER_BOSS_SPAWN p field_31181 + f I SOUND_WITHER_BOSS_SHOOT q field_31182 + f I SOUND_BAT_LIFTOFF r field_31183 + f I SOUND_ZOMBIE_INFECTED s field_31114 + f I SOUND_ZOMBIE_CONVERTED t field_31115 + f I SOUND_DRAGON_DEATH u field_31116 + f I SOUND_ANVIL_BROKEN v field_31117 + f I SOUND_ANVIL_USED w field_31118 + f I SOUND_ANVIL_LAND x field_31119 + f I SOUND_PORTAL_TRAVEL y field_31120 + f I SOUND_CHORUS_GROW z field_31121 + m ()V +c net/minecraft/world/level/block/LeverBlock dkl net/minecraft/class_2401 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46387 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_11265 + f I DEPTH c field_31184 + f I WIDTH d field_31185 + f I HEIGHT e field_31186 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB f field_11267 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB g field_11263 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB h field_11260 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB i field_11262 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB_Z j field_11264 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB_X k field_11261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB_Z l field_11268 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB_X m field_11266 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V playSound a method_60283 + p 0 player + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;F)V makeParticle a method_10308 + p 0 state + p 1 level + p 2 pos + p 3 alpha + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V pull b method_21846 + p 1 state + p 2 level + p 3 pos + p 4 player + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours d method_10309 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LeverBlock$1 dkl$1 net/minecraft/class_2401$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11271 + f [I $SwitchMap$net$minecraft$core$Direction b field_11270 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace c field_11269 + m ()V +c net/minecraft/world/level/block/LightBlock dkm net/minecraft/class_6089 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46388 + f I MAX_LEVEL b field_33722 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL c field_31187 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_31188 + f Ljava/util/function/ToIntFunction; LIGHT_EMISSION e field_31189 + m (Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; setLightOnStack a method_47377 + p 0 stack + p 1 light + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_35281 m method_35281 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LightningRodBlock dkn net/minecraft/class_5554 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46389 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_29562 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_27193 + f I RANGE e field_31190 + f I ACTIVATION_TICKS k field_31192 + f I SPARK_CYCLE l field_31191 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V onLightningStrike d method_31648 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours e method_33627 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LiquidBlock dko net/minecraft/class_2404 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46390 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL b field_11278 + f Lnet/minecraft/world/level/material/FlowingFluid; fluid c field_11279 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STABLE_SHAPE d field_24412 + f Lcom/google/common/collect/ImmutableList; POSSIBLE_FLOW_DIRECTIONS e field_34006 + f Lcom/mojang/serialization/Codec; FLOWING_FLUID f field_46391 + f Ljava/util/List; stateCache g field_11276 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54027 a method_54027 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldSpreadLiquid a method_10316 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V fizz a method_10318 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/LiquidBlock;)Lnet/minecraft/world/level/material/FlowingFluid; method_54028 a method_54028 + m (Lnet/minecraft/world/level/material/FlowingFluid;)Lnet/minecraft/world/level/material/Fluid; method_54029 a method_54029 + m (Lnet/minecraft/world/level/material/Fluid;)Lcom/mojang/serialization/DataResult; method_54030 a method_54030 + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_54031 b method_54031 + m (Lnet/minecraft/world/level/material/FlowingFluid;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 fluid + p 2 properties + m ()V +c net/minecraft/world/level/block/LiquidBlockContainer dkp net/minecraft/class_2402 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canPlaceLiquid a method_10310 + p 1 player + p 2 level + p 3 pos + p 4 state + p 5 fluid + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Z placeLiquid a method_10311 + p 1 level + p 2 pos + p 3 state + p 4 fluidState +c net/minecraft/world/level/block/LoomBlock dkq net/minecraft/class_2406 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46392 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17373 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17478 a method_17478 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MagmaBlock dkr net/minecraft/class_2413 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46393 + f I BUBBLE_COLUMN_CHECK_DELAY b field_31193 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MangroveLeavesBlock dks net/minecraft/class_7114 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46394 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/MangrovePropaguleBlock dkt net/minecraft/class_7115 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46395 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_37588 + f I MAX_AGE c field_37589 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING d field_37591 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_PER_AGE j field_37592 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED k field_37590 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54032 a method_54032 + m (Lnet/minecraft/world/level/block/MangrovePropaguleBlock;)Lnet/minecraft/world/level/block/grower/TreeGrower; method_54033 a method_54033 + m (I)Lnet/minecraft/world/level/block/state/BlockState; createNewHangingPropagule b method_43130 + p 0 age + m ()Lnet/minecraft/world/level/block/state/BlockState; createNewHangingPropagule c method_41434 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isHanging m method_41435 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFullyGrown n method_41436 + p 0 state + m (Lnet/minecraft/world/level/block/grower/TreeGrower;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 treeGrower + p 2 properties + m ()V +c net/minecraft/world/level/block/MangroveRootsBlock dku net/minecraft/class_7116 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46396 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_37593 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/Mirror dkv net/minecraft/class_2415 + f Lnet/minecraft/world/level/block/Mirror; NONE a field_11302 + f Lnet/minecraft/world/level/block/Mirror; LEFT_RIGHT b field_11300 + f Lnet/minecraft/world/level/block/Mirror; FRONT_BACK c field_11301 + f Lcom/mojang/serialization/Codec; CODEC d field_39311 + f Ljava/lang/String; id e field_39312 + f Lnet/minecraft/network/chat/Component; symbol f field_27883 + f Lcom/mojang/math/OctahedralGroup; rotation g field_23263 + f [Lnet/minecraft/world/level/block/Mirror; $VALUES h field_11299 + m ()Lcom/mojang/math/OctahedralGroup; rotation a method_26380 + m (II)I mirror a method_10344 + c Mirrors the given rotation like specified by this mirror. Rotations start at 0 and go up to rotationCount-1. 0 is front, rotationCount/2 is back. + p 1 rotation + p 2 rotationCount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/Rotation; getRotation a method_10345 + c Determines the rotation that is equivalent to this mirror if the rotating object faces in the given direction + p 1 facing + m ()Lnet/minecraft/network/chat/Component; symbol b method_32354 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; mirror b method_10343 + c Mirror the given facing according to this mirror + p 1 facing + m ()[Lnet/minecraft/world/level/block/Mirror; $values d method_36706 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/OctahedralGroup;)V + p 3 id + p 4 rotation + m ()V +c net/minecraft/world/level/block/MossBlock dkw net/minecraft/class_5807 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46397 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46684 a method_46684 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46685 a method_46685 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MudBlock dkx net/minecraft/class_7117 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46398 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_37594 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/MultifaceBlock dky net/minecraft/class_5778 + f F AABB_OFFSET a field_31194 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_28421 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB c field_28413 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB d field_28414 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB e field_28415 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB f field_28416 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB g field_28417 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_28418 + f Ljava/util/Map; PROPERTY_BY_DIRECTION i field_28419 + f Ljava/util/Map; SHAPE_BY_DIRECTION j field_28420 + f Lcom/google/common/collect/ImmutableMap; shapesCache k field_28422 + f Z canRotate l field_28423 + f Z canMirrorX m field_28424 + f Z canMirrorZ n field_28425 + m (B)Ljava/util/Set; unpack a method_41437 + p 0 packedDirections + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isValidStateForPlacement a method_41438 + p 1 level + p 2 state + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canAttachTo a method_33358 + p 0 level + p 1 direction + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; method_33361 a method_33361 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)Lnet/minecraft/world/level/block/state/BlockState; removeFace a method_33365 + p 0 state + p 1 faceProp + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Function;)Lnet/minecraft/world/level/block/state/BlockState; mapDirections a method_33367 + p 1 state + p 2 directionalFunction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z hasFace a method_33366 + p 0 state + p 1 direction + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Lnet/minecraft/world/level/block/state/BlockState; getDefaultMultifaceState a method_33368 + p 0 stateDefinition + m (Ljava/util/Collection;)B pack a method_41439 + p 0 directions + m (Ljava/util/EnumMap;)V method_33370 a method_33370 + m (Lnet/minecraft/core/Direction;)Z isFaceSupported a method_33369 + p 1 face + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_33372 b method_33372 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; getFaceProperty b method_33374 + p 0 direction + m ()Lnet/minecraft/world/level/block/MultifaceSpreader; getSpreader c method_41432 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement c method_33362 + p 1 currentState + p 2 level + p 3 pos + p 4 lookingDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_33376 c method_33376 + m ()Z isWaterloggable m method_33378 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Set; availableFaces m method_41440 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnyFace n method_33381 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateMultifaceShape o method_33380 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnyVacantFace p method_33382 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MultifaceSpreader dkz net/minecraft/class_7118 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; DEFAULT_SPREAD_ORDER a field_37595 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadConfig; config b field_37596 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;Z)Ljava/util/Optional; spreadToFace a method_41441 + p 1 level + p 2 pos + p 3 markForPostprocessing + m (Lnet/minecraft/world/level/LevelAccessor;ZLnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;)Ljava/util/Optional; method_41442 a method_41442 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSpreadInAnyDirection a method_41443 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z method_41444 a method_41444 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPredicate;)Ljava/util/Optional; getSpreadFromFaceTowardDirection a method_41445 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 face + p 6 predicate + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; spreadFromRandomFaceTowardRandomDirection a method_41450 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Direction;)Ljava/util/Optional; method_41451 a method_41451 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Z)Ljava/util/Optional; spreadFromFaceTowardRandomDirection a method_41447 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 random + p 6 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Z)Ljava/util/Optional; spreadFromFaceTowardDirection a method_41446 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 face + p 6 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)J spreadFromFaceTowardAllDirections a method_41448 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Ljava/util/Optional; method_41449 a method_41449 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)J spreadAll a method_41452 + p 1 state + p 2 level + p 3 pos + p 4 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/core/Direction;)Ljava/lang/Long; method_41453 a method_41453 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_41454 a method_41454 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Ljava/util/Optional; method_41455 b method_41455 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_41456 b method_41456 + m (Lnet/minecraft/world/level/block/MultifaceBlock;)V + p 1 block + m (Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadConfig;)V + p 1 config + m ()V +c net/minecraft/world/level/block/MultifaceSpreader$DefaultSpreaderConfig dkz$a net/minecraft/class_7118$class_7119 + f Lnet/minecraft/world/level/block/MultifaceBlock; block a field_37597 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)Z stateCanBeReplaced a method_41458 + p 1 level + p 2 pos + p 3 spreadPos + p 4 direction + p 5 state + m (Lnet/minecraft/world/level/block/MultifaceBlock;)V + p 1 block +c net/minecraft/world/level/block/MultifaceSpreader$SpreadConfig dkz$b net/minecraft/class_7118$class_7120 + m ()[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; getSpreadTypes a method_41460 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;)Z canSpreadInto a method_41457 + p 1 level + p 2 pos + p 3 spreadPos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Z placeBlock a method_41461 + p 1 level + p 2 pos + p 3 state + p 4 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isOtherBlockValidAsSource a method_41462 + p 1 otherBlock + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_41459 + p 1 currentState + p 2 level + p 3 pos + p 4 lookingDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z hasFace a method_41463 + p 1 state + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z canSpreadFrom b method_41464 + p 1 state + p 2 direction +c net/minecraft/world/level/block/MultifaceSpreader$SpreadPos dkz$c net/minecraft/class_7118$class_7121 + f Lnet/minecraft/core/BlockPos; pos a comp_534 + f Lnet/minecraft/core/Direction; face b comp_535 + m ()Lnet/minecraft/core/BlockPos; pos a comp_534 + m ()Lnet/minecraft/core/Direction; face b comp_535 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadPredicate dkz$d net/minecraft/class_7118$class_7122 +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType dkz$e net/minecraft/class_7118$class_7123 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; SAME_POSITION a field_37598 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; SAME_PLANE b field_37599 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; WRAP_AROUND c field_37600 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; $VALUES d field_37601 + m ()[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; $values a method_41465 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos; getSpreadPos a method_41466 + p 1 pos + p 2 face + p 3 spreadDirection + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$1 dkz$e$1 net/minecraft/class_7118$class_7123$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$2 dkz$e$2 net/minecraft/class_7118$class_7123$2 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$3 dkz$e$3 net/minecraft/class_7118$class_7123$3 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MushroomBlock dla net/minecraft/class_2420 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46399 + f F AABB_OFFSET b field_31195 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11304 + f Lnet/minecraft/resources/ResourceKey; feature d field_27194 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z growMushroom a method_10349 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54034 a method_54034 + m (Lnet/minecraft/world/level/block/MushroomBlock;)Lnet/minecraft/resources/ResourceKey; method_54035 a method_54035 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 feature + p 2 properties + m ()V +c net/minecraft/world/level/block/MyceliumBlock dlb net/minecraft/class_2418 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46400 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/NetherPortalBlock dlc net/minecraft/class_2423 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46401 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS b field_11310 + f I AABB_OFFSET c field_31196 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB d field_11309 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB e field_11308 + f Lorg/slf4j/Logger; LOGGER f field_52060 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Lnet/minecraft/world/level/portal/DimensionTransition; getExitPortal a method_60773 + p 1 level + p 2 entity + p 3 pos + p 4 exitPos + p 5 isNether + p 6 worldBorder + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z method_60990 a method_60990 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;FFLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; createDimensionTransition a method_60774 + p 0 level + p 1 rectangle + p 2 axis + p 3 offset + p 4 entity + p 5 speed + p 6 yRot + p 7 xRot + p 8 postDimensionTransition + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z method_60775 a method_60775 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; getDimensionTransitionFromExit a method_60777 + p 0 entity + p 1 pos + p 2 rectangle + p 3 level + p 4 postDimensionTransition + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V method_60991 a method_60991 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherPortalBlock$1 dlc$1 net/minecraft/class_2423$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11320 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11319 + m ()V +c net/minecraft/world/level/block/NetherSproutsBlock dld net/minecraft/class_4772 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46402 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_22136 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherVines dle net/minecraft/class_4949 + f D GROW_PER_TICK_PROBABILITY a field_31197 + f D BONEMEAL_GROW_PROBABILITY_DECREASE_RATE b field_31198 + m (Lnet/minecraft/util/RandomSource;)I getBlocksToGrowWhenBonemealed a method_26381 + p 0 random + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidGrowthState a method_25961 + p 0 state + m ()V +c net/minecraft/world/level/block/NetherWartBlock dlf net/minecraft/class_2421 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46403 + f I MAX_AGE b field_31199 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11306 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE d field_11305 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherrackBlock dlg net/minecraft/class_4773 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46404 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/NoteBlock dlh net/minecraft/class_2428 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46405 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; INSTRUMENT b field_11325 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11326 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; NOTE d field_11324 + f I NOTE_VOLUME e field_41678 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playNote a method_10367 + p 1 entity + p 2 state + p 3 level + p 4 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/resources/ResourceLocation; getCustomSoundId a method_47886 + p 1 level + p 2 pos + m (I)F getPitchFromNote b method_49818 + p 0 note + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; setInstrument b method_47583 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NyliumBlock dli net/minecraft/class_4849 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46406 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46686 a method_46686 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V place a method_46687 + p 1 featureRegistry + p 2 featureKey + p 3 level + p 4 chunkGenerator + p 5 random + p 6 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canBeNylium b method_24856 + p 0 state + p 1 reader + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ObserverBlock dlj net/minecraft/class_2426 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46407 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11322 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighborsInFront a method_10365 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V startSignal a method_10366 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PiglinWallSkullBlock dlk net/minecraft/class_7938 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46408 + f Ljava/util/Map; AABBS e field_41311 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PinkPetalsBlock dll net/minecraft/class_8169 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46409 + f I MIN_FLOWERS b field_42762 + f I MAX_FLOWERS c field_42763 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_42764 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AMOUNT e field_42765 + f Ljava/util/function/BiFunction; SHAPE_BY_PROPERTIES f field_45146 + m (Lnet/minecraft/core/Direction;Ljava/lang/Integer;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_52574 a method_52574 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PipeBlock dlm net/minecraft/class_2429 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_11334 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH b field_11332 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST c field_11335 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH d field_11331 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST e field_11328 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP f field_11327 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN g field_11330 + f Ljava/util/Map; PROPERTY_BY_DIRECTION h field_11329 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; shapeByIndex i field_11333 + m (F)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_10370 + p 1 apothem + m (Ljava/util/EnumMap;)V method_10369 a method_10369 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAABBIndex m method_10368 + p 1 state + m (FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 apothem + p 2 properties + m ()V +c net/minecraft/world/level/block/PitcherCropBlock dln net/minecraft/class_8237 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46410 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE d field_43239 + f I MAX_AGE e field_43240 + f I DOUBLE_PLANT_AGE_INTERSECTION f field_43241 + f I BONEMEAL_INCREASE g field_43391 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_UPPER_SHAPE h field_43244 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_LOWER_SHAPE i field_43245 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE_BULB j field_43246 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE_CROP k field_43247 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; UPPER_SHAPE_BY_AGE l field_44477 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; LOWER_SHAPE_BY_AGE m field_44478 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)V grow a method_49819 + p 1 level + p 2 state + p 3 pos + p 4 ageIncrement + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canGrowInto a method_49820 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z canGrow a method_52266 + p 1 reader + p 2 pos + p 3 state + p 4 age + m (I)Z isDouble b method_52575 + p 0 age + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z sufficientLight b method_52267 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/PitcherCropBlock$PosAndState; getLowerHalf d method_52268 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLower m method_51171 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge n method_49821 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PitcherCropBlock$PosAndState dln$a net/minecraft/class_8237$class_8587 + f Lnet/minecraft/core/BlockPos; pos a comp_1551 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_1552 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1551 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_1552 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/PlayerHeadBlock dlo net/minecraft/class_2435 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46411 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PlayerWallHeadBlock dlp net/minecraft/class_2433 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46412 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PointedDripstoneBlock dlq net/minecraft/class_5689 + f F STALAGMITE_FALL_DISTANCE_OFFSET F field_31201 + f I STALAGMITE_FALL_DAMAGE_MODIFIER G field_31202 + f F AVERAGE_DAYS_PER_GROWTH H field_33566 + f F GROWTH_PROBABILITY_PER_RANDOM_TICK I field_33567 + f I MAX_GROWTH_LENGTH J field_33568 + f I MAX_STALAGMITE_SEARCH_RANGE_WHEN_GROWING K field_33569 + f F STALACTITE_DRIP_START_PIXEL L field_31203 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_MERGE_SHAPE M field_28053 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_SHAPE_UP N field_28054 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_SHAPE_DOWN O field_28055 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FRUSTUM_SHAPE P field_28058 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MIDDLE_SHAPE Q field_28056 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE_SHAPE R field_28057 + f F MAX_HORIZONTAL_OFFSET S field_31204 + f Lnet/minecraft/world/phys/shapes/VoxelShape; REQUIRED_SPACE_TO_DRIP_THROUGH_NON_SOLID_BLOCK T field_36340 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46413 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; TIP_DIRECTION b field_28050 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; THICKNESS c field_28051 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_28052 + f I MAX_SEARCH_LENGTH_WHEN_CHECKING_DRIP_TYPE e field_31205 + f I DELAY_BEFORE_FALLING f field_31207 + f F DRIP_PROBABILITY_PER_ANIMATE_TICK g field_31208 + f F DRIP_PROBABILITY_PER_ANIMATE_TICK_IF_UNDER_LIQUID_SOURCE h field_31209 + f I MAX_SEARCH_LENGTH_BETWEEN_STALACTITE_TIP_AND_CAULDRON i field_31210 + f F WATER_TRANSFER_PROBABILITY_PER_RANDOM_TICK j field_31211 + f F LAVA_TRANSFER_PROBABILITY_PER_RANDOM_TICK k field_31212 + f D MIN_TRIDENT_VELOCITY_TO_BREAK_DRIPSTONE l field_31213 + f F STALACTITE_DAMAGE_PER_FALL_DISTANCE_AND_SIZE m field_31214 + f I STALACTITE_MAX_DAMAGE n field_31215 + f I MAX_STALACTITE_HEIGHT_FOR_DAMAGE_CALCULATION o field_31200 + m (FLnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)Z method_33270 a method_33270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/Fluid; getCauldronFillFluidType a method_32775 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V grow a method_36369 + p 0 server + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canDripThrough a method_40016 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/material/Fluid; getDripFluid a method_33271 + p 0 level + p 1 fluid + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findStalactiteTipAboveCauldron a method_32767 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnDripParticle a method_32899 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Ljava/util/Optional; findRootBlock a method_32776 + p 0 level + p 1 pos + p 2 state + p 3 maxIterations + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)V method_33277 a method_33277 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)V spawnDripParticle a method_32768 + p 0 level + p 1 pos + p 2 state + p 3 fluid + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/core/BlockPos; findFillableCauldronBelowStalactiteTip a method_32769 + p 0 level + p 1 pos + p 2 fluid + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$AxisDirection;Ljava/util/function/BiPredicate;Ljava/util/function/Predicate;I)Ljava/util/Optional; findBlockVertical a method_33272 + p 0 level + p 1 pos + p 2 axis + p 3 positionalStatePredicate + p 4 statePredicate + p 5 maxIterations + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)V createDripstone a method_36370 + p 0 level + p 1 pos + p 2 direction + p 3 thickness + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; calculateDripstoneThickness a method_32770 + p 0 level + p 1 pos + p 2 dir + p 3 isTipMerge + m (Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)Lnet/minecraft/world/level/material/Fluid; method_43131 a method_43131 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnFallingStalactite a method_32771 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;F)V maybeTransferFluid a method_32772 + p 0 state + p 1 level + p 2 pos + p 3 randChance + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V createMergedTips a method_36376 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findTip a method_32782 + p 0 state + p 1 level + p 2 pos + p 3 maxIterations + p 4 isTipMerge + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z canGrow a method_36371 + p 0 dripstoneState + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isUnmergedTipWithDirection a method_36372 + p 0 state + p 1 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Z isTip a method_32784 + p 0 state + p 1 isTipMerge + m (Lnet/minecraft/world/level/material/Fluid;)Z canFillCauldron a method_33273 + p 0 fluid + m (Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33274 a method_33274 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33275 a method_33275 + m (ZLnet/minecraft/world/level/block/state/BlockState;)Z method_36373 a method_36373 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V growStalagmiteBelow b method_36368 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo; method_33279 b method_33279 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getFluidAboveStalactite b method_33276 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)V method_33280 b method_33280 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; calculateTipDirection b method_32777 + p 0 level + p 1 pos + p 2 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z canTipGrow b method_36374 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isStalactiteStartPos b method_32778 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isPointedDripstoneWithDirection b method_32774 + p 0 state + p 1 dir + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33278 b method_33278 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40017 c method_40017 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isValidPointedDripstonePlacement c method_32781 + p 0 level + p 1 pos + p 2 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V growStalactiteOrStalagmiteIfPossible c method_36375 + p 0 state + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40018 d method_40018 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canDrip m method_32783 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStalactite n method_32785 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStalagmite o method_35283 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33281 p method_33281 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo dlq$a net/minecraft/class_5689$class_7381 + f Lnet/minecraft/core/BlockPos; pos a comp_709 + f Lnet/minecraft/world/level/material/Fluid; fluid b comp_710 + f Lnet/minecraft/world/level/block/state/BlockState; sourceState c comp_711 + m ()Lnet/minecraft/core/BlockPos; pos a comp_709 + m ()Lnet/minecraft/world/level/material/Fluid; fluid b comp_710 + m ()Lnet/minecraft/world/level/block/state/BlockState; sourceState c comp_711 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/Portal dlr net/minecraft/class_9797 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)I getPortalTransitionTime a method_60772 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/portal/DimensionTransition; getPortalDestination a method_60770 + p 1 level + p 2 entity + p 3 pos + m ()Lnet/minecraft/world/level/block/Portal$Transition; getLocalTransition b method_60778 +c net/minecraft/world/level/block/Portal$Transition dlr$a net/minecraft/class_9797$class_9798 + f Lnet/minecraft/world/level/block/Portal$Transition; CONFUSION a field_52061 + f Lnet/minecraft/world/level/block/Portal$Transition; NONE b field_52062 + f [Lnet/minecraft/world/level/block/Portal$Transition; $VALUES c field_52063 + m ()[Lnet/minecraft/world/level/block/Portal$Transition; $values a method_60779 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/PotatoBlock dls net/minecraft/class_2439 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46414 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE b field_11357 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PowderSnowBlock dlt net/minecraft/class_5635 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46415 + f F HORIZONTAL_PARTICLE_MOMENTUM_FACTOR b field_31216 + f F IN_BLOCK_HORIZONTAL_SPEED_MULTIPLIER c field_31217 + f F IN_BLOCK_VERTICAL_SPEED_MULTIPLIER d field_31218 + f F NUM_BLOCKS_TO_FALL_INTO_BLOCK e field_31219 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FALLING_COLLISION_SHAPE f field_31220 + f D MINIMUM_FALL_DISTANCE_FOR_SOUND g field_36189 + f D MINIMUM_FALL_DISTANCE_FOR_BIG_SOUND h field_36190 + m (Lnet/minecraft/world/entity/Entity;)Z canEntityWalkOnPowderSnow a method_32355 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PoweredBlock dlu net/minecraft/class_2436 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46416 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PoweredRailBlock dlv net/minecraft/class_2442 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46417 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_11365 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_11364 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZI)Z findPoweredRailSignal a method_10413 + p 1 level + p 2 pos + p 3 state + p 4 searchForward + p 5 recursionCount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZILnet/minecraft/world/level/block/state/properties/RailShape;)Z isSameRailWithPower a method_10414 + p 1 level + p 2 state + p 3 searchForward + p 4 recursionCount + p 5 shape + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PoweredRailBlock$1 dlv$1 net/minecraft/class_2442$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11368 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11367 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11366 + m ()V +c net/minecraft/world/level/block/PressurePlateBlock dlw net/minecraft/class_2440 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46418 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_11358 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54036 a method_54036 + m (Lnet/minecraft/world/level/block/PressurePlateBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54037 a method_54037 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/PressurePlateBlock$1 dlw$1 net/minecraft/class_2440$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$BlockSetType$PressurePlateSensitivity a field_11360 + m ()V +c net/minecraft/world/level/block/PumpkinBlock dlx net/minecraft/class_2445 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46419 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RailBlock dly net/minecraft/class_2443 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46420 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_11369 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RailBlock$1 dly$1 net/minecraft/class_2443$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11372 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11371 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11370 + m ()V +c net/minecraft/world/level/block/RailState dlz net/minecraft/class_2452 + f Lnet/minecraft/world/level/Level; level a field_11409 + f Lnet/minecraft/core/BlockPos; pos b field_11410 + f Lnet/minecraft/world/level/block/BaseRailBlock; block c field_11411 + f Lnet/minecraft/world/level/block/state/BlockState; state d field_11406 + f Z isStraight e field_11408 + f Ljava/util/List; connections f field_11407 + m ()Ljava/util/List; getConnections a method_10457 + m (Lnet/minecraft/world/level/block/RailState;)Z connectsTo a method_10464 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)V updateConnections a method_10466 + p 1 shape + m (Lnet/minecraft/core/BlockPos;)Z hasRail a method_10456 + p 1 pos + m (ZZLnet/minecraft/world/level/block/state/properties/RailShape;)Lnet/minecraft/world/level/block/RailState; place a method_10459 + p 1 powered + p 2 alwaysPlace + p 3 shape + m ()I countPotentialConnections b method_10460 + m (Lnet/minecraft/world/level/block/RailState;)Z canConnectTo b method_10455 + p 1 state + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/RailState; getRail b method_10458 + p 1 pos + m ()Lnet/minecraft/world/level/block/state/BlockState; getState c method_10462 + m (Lnet/minecraft/world/level/block/RailState;)V connectTo c method_10461 + p 1 state + m (Lnet/minecraft/core/BlockPos;)Z hasConnection c method_10463 + p 1 pos + m ()V removeSoftConnections d method_10467 + m (Lnet/minecraft/core/BlockPos;)Z hasNeighborRail d method_10465 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 pos + p 3 state +c net/minecraft/world/level/block/RailState$1 dlz$1 net/minecraft/class_2452$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11412 + m ()V +c net/minecraft/world/level/block/RedStoneOreBlock dma net/minecraft/class_2449 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46421 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11392 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V spawnParticles a method_10440 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V interact d method_10441 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedStoneWireBlock dmb net/minecraft/class_2457 + f Ljava/util/Map; SHAPES_CACHE F field_24416 + f [Lnet/minecraft/world/phys/Vec3; COLORS G field_24466 + f F PARTICLE_DENSITY H field_31221 + f Lnet/minecraft/world/level/block/state/BlockState; crossState I field_24733 + f Z shouldSignal J field_11438 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46422 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH b field_11440 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST c field_11436 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH d field_11437 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST e field_11439 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER f field_11432 + f Ljava/util/Map; PROPERTY_BY_DIRECTION g field_11435 + f I H h field_31222 + f I W i field_31223 + f I E j field_31224 + f I N k field_31225 + f I S l field_31226 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_DOT m field_24413 + f Ljava/util/Map; SHAPES_FLOOR n field_24414 + f Ljava/util/Map; SHAPES_UP o field_24415 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getConnectionState a method_27840 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOn a method_27937 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/RedstoneSide; getConnectingSide a method_10477 + p 1 level + p 2 pos + p 3 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/level/block/state/properties/RedstoneSide; getConnectingSide a method_27841 + p 1 level + p 2 pos + p 3 direction + p 4 nonNormalCubeAbove + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;FF)V spawnParticlesAlongLine a method_27936 + p 1 level + p 2 random + p 3 pos + p 4 particleVec + p 5 xDirection + p 6 zDirection + p 7 min + p 8 max + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I calculateTargetStrength a method_27842 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updatePowerStrength a method_10485 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V updatesOnShapeChange a method_28482 + p 1 level + p 2 pos + p 3 oldState + p 4 newState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shouldConnectTo a method_10482 + p 0 state + p 1 direction + m ([Lnet/minecraft/world/phys/Vec3;)V method_31649 a method_31649 + m (I)I getColorForPower b method_10487 + p 0 power + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getMissingConnections b method_27843 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkCornerChangeAt b method_10479 + c Calls {@link net.minecraft.world.level.Level#updateNeighborsAt} for all neighboring blocks, but only if the given block is a redstone wire. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighborsOfNeighboringWires c method_27844 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z shouldConnectTo m method_10484 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape n method_27845 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCross o method_27846 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDot p method_28483 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getWireSignal q method_10486 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedStoneWireBlock$1 dmb$1 net/minecraft/class_2457$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RedstoneSide a field_24467 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11442 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11441 + m ()V +c net/minecraft/world/level/block/RedstoneLampBlock dmc net/minecraft/class_2453 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46423 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11413 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedstoneTorchBlock dmd net/minecraft/class_2459 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46424 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT d field_11446 + f I RECENT_TOGGLE_TIMER e field_31227 + f I MAX_RECENT_TOGGLES f field_31228 + f I RESTART_DELAY g field_31229 + f Ljava/util/Map; RECENT_TOGGLES h field_11445 + f I TOGGLE_DELAY i field_31230 + m (Lnet/minecraft/world/level/BlockGetter;)Ljava/util/List; method_20453 a method_20453 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z hasNeighborSignal a method_10488 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Z isToggledTooFrequently a method_10489 + p 0 level + p 1 pos + p 2 logToggle + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedstoneTorchBlock$Toggle dmd$a net/minecraft/class_2459$class_2460 + f Lnet/minecraft/core/BlockPos; pos a field_11448 + f J when b field_11447 + m (Lnet/minecraft/core/BlockPos;J)V + p 1 pos + p 2 when +c net/minecraft/world/level/block/RedstoneWallTorchBlock dme net/minecraft/class_2458 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46425 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING i field_11443 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT j field_11444 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RenderShape dmf net/minecraft/class_2464 + f Lnet/minecraft/world/level/block/RenderShape; INVISIBLE a field_11455 + f Lnet/minecraft/world/level/block/RenderShape; ENTITYBLOCK_ANIMATED b field_11456 + f Lnet/minecraft/world/level/block/RenderShape; MODEL c field_11458 + f [Lnet/minecraft/world/level/block/RenderShape; $VALUES d field_11457 + m ()[Lnet/minecraft/world/level/block/RenderShape; $values a method_36708 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/RepeaterBlock dmg net/minecraft/class_2462 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46426 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LOCKED b field_11452 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DELAY e field_11451 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RespawnAnchorBlock dmh net/minecraft/class_4969 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46427 + f I MIN_CHARGES b field_31231 + f I MAX_CHARGES c field_31232 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CHARGE d field_23153 + f Lcom/google/common/collect/ImmutableList; RESPAWN_HORIZONTAL_OFFSETS e field_26442 + f Lcom/google/common/collect/ImmutableList; RESPAWN_OFFSETS f field_26443 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V charge a method_26382 + p 0 entity + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; findStandUpPosition a method_26156 + p 0 entityType + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; findStandUpPosition a method_30842 + p 0 entityType + p 1 level + p 2 pos + p 3 simulate + m (Lnet/minecraft/world/item/ItemStack;)Z isRespawnFuel a method_29289 + p 0 stack + m (Lnet/minecraft/world/level/Level;)Z canSetSpawn a method_27353 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z method_29559 a method_29559 + m (Lnet/minecraft/world/level/block/state/BlockState;I)I getScaledChargeLevel a method_26157 + p 0 state + p 1 scale + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;)Z isWaterThatWouldFlow a method_29560 + p 0 pos + p 1 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V explode d method_29561 + p 1 state + p 2 level + p 3 pos2 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBeCharged m method_29290 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RespawnAnchorBlock$1 dmh$1 net/minecraft/class_4969$1 + f Lnet/minecraft/core/BlockPos; val$pos a field_25404 + f Z val$inWater b field_25405 + m (Lnet/minecraft/world/level/block/RespawnAnchorBlock;Lnet/minecraft/core/BlockPos;Z)V +c net/minecraft/world/level/block/RodBlock dmi net/minecraft/class_2337 + f F AABB_MIN f field_31233 + f F AABB_MAX g field_31234 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Y_AXIS_AABB h field_10971 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB i field_10970 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB j field_10969 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RodBlock$1 dmi$1 net/minecraft/class_2337$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_10972 + m ()V +c net/minecraft/world/level/block/RootedDirtBlock dmj net/minecraft/class_5954 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46428 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RootsBlock dmk net/minecraft/class_4774 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46429 + f F AABB_OFFSET b field_31235 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_22137 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RotatedPillarBlock dml net/minecraft/class_2465 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46430 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS i field_11459 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotatePillar b method_36377 + p 0 state + p 1 rotation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RotatedPillarBlock$1 dml$1 net/minecraft/class_2465$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11461 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11460 + m ()V +c net/minecraft/world/level/block/Rotation dmm net/minecraft/class_2470 + f Lnet/minecraft/world/level/block/Rotation; NONE a field_11467 + f Lnet/minecraft/world/level/block/Rotation; CLOCKWISE_90 b field_11463 + f Lnet/minecraft/world/level/block/Rotation; CLOCKWISE_180 c field_11464 + f Lnet/minecraft/world/level/block/Rotation; COUNTERCLOCKWISE_90 d field_11465 + f Lcom/mojang/serialization/Codec; CODEC e field_39313 + f Ljava/lang/String; id f field_39314 + f Lcom/mojang/math/OctahedralGroup; rotation g field_23264 + f [Lnet/minecraft/world/level/block/Rotation; $VALUES h field_11466 + m ()Lcom/mojang/math/OctahedralGroup; rotation a method_26383 + m (II)I rotate a method_10502 + p 1 rotation + p 2 positionCount + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/Rotation; getRandom a method_16548 + c Chooses a random rotation. + p 0 random + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/Rotation; getRotated a method_10501 + p 1 rotation + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_10503 + p 1 facing + m ()[Lnet/minecraft/world/level/block/Rotation; $values b method_36709 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffled b method_16547 + c Get a list of all rotations in random order. + p 0 random + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/OctahedralGroup;)V + p 3 id + p 4 rotation + m ()V +c net/minecraft/world/level/block/SaplingBlock dmn net/minecraft/class_2473 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46431 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE f field_11476 + f F AABB_OFFSET g field_31236 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_11478 + f Lnet/minecraft/world/level/block/grower/TreeGrower; treeGrower i field_11477 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)V advanceTree a method_10507 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54038 a method_54038 + m (Lnet/minecraft/world/level/block/SaplingBlock;)Lnet/minecraft/world/level/block/grower/TreeGrower; method_54039 a method_54039 + m (Lnet/minecraft/world/level/block/grower/TreeGrower;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 treeGrower + p 2 properties + m ()V +c net/minecraft/world/level/block/ScaffoldingBlock dmo net/minecraft/class_3736 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46432 + f I STABILITY_MAX_DISTANCE b field_31237 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE c field_16495 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_16496 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BOTTOM e field_16547 + f I TICK_DELAY f field_31238 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STABLE_SHAPE g field_16494 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UNSTABLE_SHAPE h field_16497 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UNSTABLE_SHAPE_BOTTOM i field_17577 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELOW_BLOCK j field_17578 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getDistance a method_16372 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;I)Z isBottom a method_16373 + p 1 level + p 2 pos + p 3 distance + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkBehaviour dmp net/minecraft/class_7124 + f Lnet/minecraft/world/level/block/SculkBehaviour; DEFAULT v_ field_37602 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V onDischarged a method_41468 + p 1 level + p 2 state + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z depositCharge a method_41470 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;Z)Z attemptSpreadVein a method_41469 + p 1 level + p 2 pos + p 3 state + p 4 directions + p 5 markForPostprocessing + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/SculkSpreader;Z)I attemptUseCharge a method_41471 + p 1 cursor + p 2 level + p 3 pos + p 4 random + p 5 spreader + p 6 shouldConvertBlocks + m ()B getSculkSpreadDelay b method_41467 + m ()Z canChangeBlockStateOnSpread d method_41472 + m (I)I updateDecayDelay j_ method_41473 + p 1 currentDecayDelay + m ()V +c net/minecraft/world/level/block/SculkBehaviour$1 dmp$1 net/minecraft/class_7124$1 + m ()V +c net/minecraft/world/level/block/SculkBlock dmq net/minecraft/class_7125 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46433 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canPlaceGrowth a method_41474 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/level/block/state/BlockState; getRandomGrowthState a method_41475 + p 1 level + p 2 pos + p 3 random + p 4 isWorldGeneration + m (Lnet/minecraft/world/level/block/SculkSpreader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;I)I getDecayPenalty a method_41476 + p 0 spreader + p 1 cursorPos + p 2 rootPos + p 3 charge + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SculkCatalystBlock dmr net/minecraft/class_7126 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46434 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PULSE b field_37604 + f Lnet/minecraft/util/valueproviders/IntProvider; xpRange c field_37605 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SculkSensorBlock dms net/minecraft/class_5703 + f [F RESONANCE_PITCH_BEND a field_43248 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46435 + f I ACTIVE_TICKS d field_31239 + f I COOLDOWN_TICKS e field_44607 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PHASE f field_28111 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER g field_28112 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED h field_28113 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE i field_28114 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V tryResonateVibration a method_49822 + p 0 entity + p 1 level + p 2 pos + p 3 frequency + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V activate a method_32904 + p 1 entity + p 2 level + p 3 pos + p 4 state + p 5 power + p 6 frequency + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V deactivate a method_32903 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity;)V method_32905 a method_32905 + m ([F)V method_49823 a method_49823 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighbours b method_32902 + p 0 level + p 1 pos + p 2 state + m ()I getActiveTicks c method_51166 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; getPhase m method_32908 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canActivate n method_32909 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkShriekerBlock dmt net/minecraft/class_7268 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46436 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHRIEKING b field_38229 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_38230 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CAN_SUMMON d field_38422 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLIDER e field_38231 + f D TOP_Y f field_38232 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43134 a method_43134 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43132 a method_43132 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_42317 a method_42317 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43133 b method_43133 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkSpreader dmu net/minecraft/class_7128 + f I MAX_GROWTH_RATE_RADIUS a field_37609 + f I MAX_CHARGE b field_37610 + f F MAX_DECAY_FACTOR c field_37611 + f I SHRIEKER_PLACEMENT_RATE d field_37612 + f I MAX_CURSORS e field_37613 + f Z isWorldGeneration f field_37614 + f Lnet/minecraft/tags/TagKey; replaceableBlocks g field_37615 + f I growthSpawnCost h field_37616 + f I noGrowthRadius i field_37617 + f I chargeDecayRate j field_37618 + f I additionalDecayRate k field_37619 + f Ljava/util/List; cursors l field_37620 + f Lorg/slf4j/Logger; LOGGER m field_37621 + m ()Lnet/minecraft/world/level/block/SculkSpreader; createLevelSpreader a method_41478 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)V updateCursors a method_41479 + p 1 level + p 2 pos + p 3 random + p 4 shouldConvertBlocks + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)V addCursor a method_41480 + p 1 cursor + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;Lnet/minecraft/core/BlockPos;Ljava/lang/Integer;)Ljava/lang/Integer; method_41481 a method_41481 + m (Lnet/minecraft/core/BlockPos;I)V addCursors a method_41482 + p 1 pos + p 2 charge + m (Lnet/minecraft/nbt/CompoundTag;)V load a method_41483 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_41484 a method_41484 + m ()Lnet/minecraft/world/level/block/SculkSpreader; createWorldGenSpreader b method_41485 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/lang/Integer; method_51355 b method_51355 + m (Lnet/minecraft/nbt/CompoundTag;)V save b method_41486 + p 1 tag + m ()Lnet/minecraft/tags/TagKey; replaceableBlocks c method_41487 + m ()I growthSpawnCost d method_41488 + m ()I noGrowthRadius e method_41489 + m ()I chargeDecayRate f method_41490 + m ()I additionalDecayRate g method_41491 + m ()Z isWorldGeneration h method_41492 + m ()Ljava/util/List; getCursors i method_41493 + m ()V clear j method_41494 + m (ZLnet/minecraft/tags/TagKey;IIII)V + p 1 isWorldGeneration + p 2 replaceableBlocks + p 3 growthSpawnCoat + p 4 noGrowthRadius + p 5 chargeDecayRate + p 6 additionalDecayRate + m ()V +c net/minecraft/world/level/block/SculkSpreader$ChargeCursor dmu$a net/minecraft/class_7128$class_7129 + f I MAX_CURSOR_DECAY_DELAY a field_37622 + f Lcom/mojang/serialization/Codec; CODEC b field_37623 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; NON_CORNER_NEIGHBOURS c field_37624 + f Lnet/minecraft/core/BlockPos; pos d field_37625 + f I charge e field_37626 + f I updateDelay f field_37627 + f I decayDelay g field_37628 + f Ljava/util/Set; facings h field_37629 + f Lcom/mojang/serialization/Codec; DIRECTION_SET i field_37630 + m ()Lnet/minecraft/core/BlockPos; getPos a method_41495 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getRandomizedNonCornerNeighbourOffsets a method_41507 + p 0 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41502 a method_41502 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/BlockPos; getValidMovementPos a method_41498 + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/SculkSpreader;Z)V update a method_41499 + p 1 level + p 2 pos + p 3 random + p 4 spreader + p 5 shouldConvertBlocks + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isMovementUnobstructed a method_41496 + p 0 level + p 1 fromPos + p 2 toPos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isUnobstructed a method_41497 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)Z shouldUpdate a method_41500 + p 1 level + p 2 pos + p 3 isWorldGeneration + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)V mergeWith a method_41501 + p 1 cursor + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/SculkBehaviour; getBlockBehaviour a method_41503 + p 0 state + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;)V method_41505 a method_41505 + m (Ljava/util/List;)Ljava/util/Set; method_41506 a method_41506 + m (Lnet/minecraft/core/BlockPos;)Z method_41504 a method_41504 + m ()I getCharge b method_41508 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/util/Optional; method_41509 b method_41509 + m ()I getDecayDelay c method_41510 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/lang/Integer; method_41511 c method_41511 + m ()Ljava/util/Set; getFacingData d method_41512 + m (Lnet/minecraft/core/BlockPos;IIILjava/util/Optional;)V + p 1 pos + p 2 charge + p 3 decayDelay + p 4 updateDelay + p 5 facings + m (Lnet/minecraft/core/BlockPos;I)V + p 1 pos + p 2 charge + m ()V +c net/minecraft/world/level/block/SculkVeinBlock dmv net/minecraft/class_7130 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46437 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_37631 + f Lnet/minecraft/world/level/block/MultifaceSpreader; veinSpreader e field_37632 + f Lnet/minecraft/world/level/block/MultifaceSpreader; sameSpaceSpreader f field_37633 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z hasSubstrateAccess a method_41513 + p 0 level + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;)Z regrow a method_41514 + p 0 level + p 1 pos + p 2 state + p 3 directions + m (Lnet/minecraft/world/level/block/SculkSpreader;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z attemptPlaceSculk a method_41515 + p 1 spreader + p 2 level + p 3 pos + p 4 random + m ()Lnet/minecraft/world/level/block/MultifaceSpreader; getSameSpaceSpreader m method_41516 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkVeinBlock$SculkVeinSpreaderConfig dmv$a net/minecraft/class_7130$class_7131 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; spreadTypes b field_37635 + m (Lnet/minecraft/world/level/block/SculkVeinBlock;[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType;)V + p 2 spreadTypes +c net/minecraft/world/level/block/SeaPickleBlock dmw net/minecraft/class_2472 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46438 + f I MAX_PICKLES b field_31241 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; PICKLES c field_11472 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_11475 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_AABB e field_11473 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TWO_AABB f field_11470 + f Lnet/minecraft/world/phys/shapes/VoxelShape; THREE_AABB g field_11471 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FOUR_AABB h field_11474 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDead m method_10506 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SeagrassBlock dmx net/minecraft/class_2476 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46439 + f F AABB_OFFSET b field_31242 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11485 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/ShulkerBoxBlock dmy net/minecraft/class_2480 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46440 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; FACING b field_11496 + f Lnet/minecraft/resources/ResourceLocation; CONTENTS c field_11495 + f Lnet/minecraft/network/chat/Component; UNKNOWN_CONTENTS d field_49401 + f F OPEN_AABB_SIZE e field_41075 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_OPEN_AABB f field_41076 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_OPEN_AABB g field_41077 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WES_OPEN_AABB h field_41078 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_OPEN_AABB i field_41079 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_OPEN_AABB j field_41080 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_OPEN_AABB k field_41081 + f Ljava/util/Map; OPEN_SHAPE_BY_DIRECTION l field_41082 + f Lnet/minecraft/world/item/DyeColor; color m field_11494 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54040 a method_54040 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; getBlockByColor a method_10525 + p 0 color + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)V method_38234 a method_38234 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/DyeColor; getColorFromBlock a method_10526 + p 0 block + m (Lnet/minecraft/world/level/block/ShulkerBoxBlock;)Ljava/util/Optional; method_54041 a method_54041 + m (Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;Ljava/util/function/Consumer;)V method_10524 a method_10524 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)Z canOpen a method_33383 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Ljava/util/EnumMap;)V method_47378 a method_47378 + m (Ljava/util/Optional;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)Lnet/minecraft/world/level/block/ShulkerBoxBlock; method_54042 a method_54042 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_10528 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/ItemStack; getColoredItemStack b method_10529 + p 0 color + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/DyeColor; getColorFromItem b method_10527 + p 0 item + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/ShulkerBoxBlock$1 dmy$1 net/minecraft/class_2480$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_11497 + m ()V +c net/minecraft/world/level/block/SignBlock dmz net/minecraft/class_2478 + f Lnet/minecraft/world/level/block/state/properties/WoodType; type a field_21675 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_11491 + f F AABB_OFFSET g field_31243 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_11492 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;)Z otherPlayerIsEditingSign a method_49824 + p 1 player + p 2 signEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)V openTextEdit a method_49825 + p 1 player + p 2 signEntity + p 3 isFrontText + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/properties/WoodType; getWoodType a method_45459 + p 0 block + m (Lnet/minecraft/network/chat/Component;)Z method_51172 a method_51172 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)Z hasEditableText b method_51173 + p 1 player + p 2 signEntity + p 3 isFrontText + m ()Lnet/minecraft/world/level/block/state/properties/WoodType; type d method_24025 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getYRotationDegrees g method_49814 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/Vec3; getSignHitboxCenterPosition m method_50003 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/SimpleWaterloggedBlock dna net/minecraft/class_3737 +c net/minecraft/world/level/block/SkullBlock dnb net/minecraft/class_2484 + f I ROTATIONS b field_31245 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46441 + f I MAX d field_31244 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION e field_11505 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_11506 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PIGLIN_SHAPE g field_41312 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54043 a method_54043 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/SkullBlock$Type dnb$a net/minecraft/class_2484$class_2485 + f Ljava/util/Map; TYPES a field_46442 + f Lcom/mojang/serialization/Codec; CODEC b field_46443 + m ()V +c net/minecraft/world/level/block/SkullBlock$Types dnb$b net/minecraft/class_2484$class_2486 + f Lnet/minecraft/world/level/block/SkullBlock$Types; SKELETON c field_11512 + f Lnet/minecraft/world/level/block/SkullBlock$Types; WITHER_SKELETON d field_11513 + f Lnet/minecraft/world/level/block/SkullBlock$Types; PLAYER e field_11510 + f Lnet/minecraft/world/level/block/SkullBlock$Types; ZOMBIE f field_11508 + f Lnet/minecraft/world/level/block/SkullBlock$Types; CREEPER g field_11507 + f Lnet/minecraft/world/level/block/SkullBlock$Types; PIGLIN h field_41313 + f Lnet/minecraft/world/level/block/SkullBlock$Types; DRAGON i field_11511 + f Ljava/lang/String; name j field_46444 + f [Lnet/minecraft/world/level/block/SkullBlock$Types; $VALUES k field_11509 + m ()[Lnet/minecraft/world/level/block/SkullBlock$Types; $values a method_36710 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/SlabBlock dnc net/minecraft/class_2482 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46445 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE b field_11501 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_11502 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB d field_11500 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB e field_11499 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SlabBlock$1 dnc$1 net/minecraft/class_2482$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$SlabType a field_11504 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_11503 + m ()V +c net/minecraft/world/level/block/SlimeBlock dnd net/minecraft/class_2490 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46446 + m (Lnet/minecraft/world/entity/Entity;)V bounceUp a method_21847 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SmallDripleafBlock dne net/minecraft/class_5808 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46447 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_29563 + f F AABB_OFFSET e field_31246 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_28690 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED g field_28691 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SmithingTableBlock dnf net/minecraft/class_3717 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46448 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE c field_22511 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_24950 a method_24950 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SmokerBlock dng net/minecraft/class_3716 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46449 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnifferEggBlock dnh net/minecraft/class_8238 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46450 + f I MAX_HATCH_LEVEL b field_43249 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH c field_43250 + f I REGULAR_HATCH_TIME_TICKS d field_43251 + f I BOOSTED_HATCH_TIME_TICKS e field_43252 + f I RANDOM_HATCH_OFFSET_TICKS f field_43253 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_43254 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hatchBoost a method_49826 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)I getHatchLevel m method_49827 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isReadyToHatch n method_49828 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnowLayerBlock dni net/minecraft/class_2488 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46451 + f I MAX_HEIGHT b field_31247 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LAYERS c field_11518 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_LAYER d field_11517 + f I HEIGHT_IMPASSABLE e field_31248 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnowLayerBlock$1 dni$1 net/minecraft/class_2488$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_11519 + m ()V +c net/minecraft/world/level/block/SnowyDirtBlock dnj net/minecraft/class_2493 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46452 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SNOWY c field_11522 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSnowySetting m method_35291 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SoulFireBlock dnk net/minecraft/class_4775 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46453 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOnBlock m method_26158 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SoulSandBlock dnl net/minecraft/class_2492 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46454 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11521 + f I BUBBLE_COLUMN_CHECK_DELAY c field_31249 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SoundType dnm net/minecraft/class_2498 + f Lnet/minecraft/world/level/block/SoundType; LANTERN A field_17734 + f Lnet/minecraft/world/level/block/SoundType; STEM B field_22152 + f Lnet/minecraft/world/level/block/SoundType; NYLIUM C field_22153 + f Lnet/minecraft/world/level/block/SoundType; FUNGUS D field_22154 + f Lnet/minecraft/world/level/block/SoundType; ROOTS E field_22138 + f Lnet/minecraft/world/level/block/SoundType; SHROOMLIGHT F field_22139 + f Lnet/minecraft/world/level/block/SoundType; WEEPING_VINES G field_22140 + f Lnet/minecraft/world/level/block/SoundType; TWISTING_VINES H field_23082 + f Lnet/minecraft/world/level/block/SoundType; SOUL_SAND I field_22141 + f Lnet/minecraft/world/level/block/SoundType; SOUL_SOIL J field_22142 + f Lnet/minecraft/world/level/block/SoundType; BASALT K field_22143 + f Lnet/minecraft/world/level/block/SoundType; WART_BLOCK L field_22144 + f Lnet/minecraft/world/level/block/SoundType; NETHERRACK M field_22145 + f Lnet/minecraft/world/level/block/SoundType; NETHER_BRICKS N field_22146 + f Lnet/minecraft/world/level/block/SoundType; NETHER_SPROUTS O field_22147 + f Lnet/minecraft/world/level/block/SoundType; NETHER_ORE P field_22148 + f Lnet/minecraft/world/level/block/SoundType; BONE_BLOCK Q field_22149 + f Lnet/minecraft/world/level/block/SoundType; NETHERITE_BLOCK R field_22150 + f Lnet/minecraft/world/level/block/SoundType; ANCIENT_DEBRIS S field_22151 + f Lnet/minecraft/world/level/block/SoundType; LODESTONE T field_23265 + f Lnet/minecraft/world/level/block/SoundType; CHAIN U field_24119 + f Lnet/minecraft/world/level/block/SoundType; NETHER_GOLD_ORE V field_24120 + f Lnet/minecraft/world/level/block/SoundType; GILDED_BLACKSTONE W field_24121 + f Lnet/minecraft/world/level/block/SoundType; CANDLE X field_27196 + f Lnet/minecraft/world/level/block/SoundType; AMETHYST Y field_27197 + f Lnet/minecraft/world/level/block/SoundType; AMETHYST_CLUSTER Z field_27198 + f Lnet/minecraft/world/level/block/SoundType; SCULK aA field_37644 + f Lnet/minecraft/world/level/block/SoundType; SCULK_VEIN aB field_37645 + f Lnet/minecraft/world/level/block/SoundType; SCULK_SHRIEKER aC field_37646 + f Lnet/minecraft/world/level/block/SoundType; GLOW_LICHEN aD field_28427 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE aE field_29033 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE_BRICKS aF field_29034 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE_TILES aG field_29035 + f Lnet/minecraft/world/level/block/SoundType; POLISHED_DEEPSLATE aH field_29036 + f Lnet/minecraft/world/level/block/SoundType; FROGLIGHT aI field_37636 + f Lnet/minecraft/world/level/block/SoundType; FROGSPAWN aJ field_37637 + f Lnet/minecraft/world/level/block/SoundType; MANGROVE_ROOTS aK field_37638 + f Lnet/minecraft/world/level/block/SoundType; MUDDY_MANGROVE_ROOTS aL field_37639 + f Lnet/minecraft/world/level/block/SoundType; EMPTY a field_44608 + f Lnet/minecraft/world/level/block/SoundType; MUD aM field_37640 + f Lnet/minecraft/world/level/block/SoundType; MUD_BRICKS aN field_37641 + f Lnet/minecraft/world/level/block/SoundType; PACKED_MUD aO field_37642 + f Lnet/minecraft/world/level/block/SoundType; HANGING_SIGN aP field_40313 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WOOD_HANGING_SIGN aQ field_41083 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_WOOD_HANGING_SIGN aR field_41084 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_WOOD aS field_40314 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WOOD aT field_40315 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_WOOD aU field_42766 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_SAPLING aV field_42767 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_LEAVES aW field_42768 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_WOOD_HANGING_SIGN aX field_42769 + f Lnet/minecraft/world/level/block/SoundType; CHISELED_BOOKSHELF aY field_41085 + f Lnet/minecraft/world/level/block/SoundType; SUSPICIOUS_SAND aZ field_42770 + f Lnet/minecraft/world/level/block/SoundType; SMALL_AMETHYST_BUD aa field_27199 + f Lnet/minecraft/world/level/block/SoundType; MEDIUM_AMETHYST_BUD ab field_27200 + f Lnet/minecraft/world/level/block/SoundType; LARGE_AMETHYST_BUD ac field_27201 + f Lnet/minecraft/world/level/block/SoundType; TUFF ad field_27202 + f Lnet/minecraft/world/level/block/SoundType; TUFF_BRICKS ae field_47083 + f Lnet/minecraft/world/level/block/SoundType; POLISHED_TUFF af field_47084 + f Lnet/minecraft/world/level/block/SoundType; CALCITE ag field_27203 + f Lnet/minecraft/world/level/block/SoundType; DRIPSTONE_BLOCK ah field_28060 + f Lnet/minecraft/world/level/block/SoundType; POINTED_DRIPSTONE ai field_28061 + f Lnet/minecraft/world/level/block/SoundType; COPPER aj field_27204 + f Lnet/minecraft/world/level/block/SoundType; COPPER_BULB ak field_47085 + f Lnet/minecraft/world/level/block/SoundType; COPPER_GRATE al field_47086 + f Lnet/minecraft/world/level/block/SoundType; CAVE_VINES am field_28692 + f Lnet/minecraft/world/level/block/SoundType; SPORE_BLOSSOM an field_28693 + f Lnet/minecraft/world/level/block/SoundType; AZALEA ao field_28694 + f Lnet/minecraft/world/level/block/SoundType; FLOWERING_AZALEA ap field_28695 + f Lnet/minecraft/world/level/block/SoundType; MOSS_CARPET aq field_28696 + f Lnet/minecraft/world/level/block/SoundType; PINK_PETALS ar field_42772 + f Lnet/minecraft/world/level/block/SoundType; MOSS as field_28697 + f Lnet/minecraft/world/level/block/SoundType; BIG_DRIPLEAF at field_28698 + f Lnet/minecraft/world/level/block/SoundType; SMALL_DRIPLEAF au field_28699 + f Lnet/minecraft/world/level/block/SoundType; ROOTED_DIRT av field_28700 + f Lnet/minecraft/world/level/block/SoundType; HANGING_ROOTS aw field_28701 + f Lnet/minecraft/world/level/block/SoundType; AZALEA_LEAVES ax field_28702 + f Lnet/minecraft/world/level/block/SoundType; SCULK_SENSOR ay field_28116 + f Lnet/minecraft/world/level/block/SoundType; SCULK_CATALYST az field_37643 + f Lnet/minecraft/world/level/block/SoundType; WOOD b field_11547 + f Lnet/minecraft/world/level/block/SoundType; SUSPICIOUS_GRAVEL ba field_43255 + f Lnet/minecraft/world/level/block/SoundType; DECORATED_POT bb field_42771 + f Lnet/minecraft/world/level/block/SoundType; DECORATED_POT_CRACKED bc field_43256 + f Lnet/minecraft/world/level/block/SoundType; TRIAL_SPAWNER bd field_47346 + f Lnet/minecraft/world/level/block/SoundType; SPONGE be field_45970 + f Lnet/minecraft/world/level/block/SoundType; WET_SPONGE bf field_45971 + f Lnet/minecraft/world/level/block/SoundType; VAULT bg field_48855 + f Lnet/minecraft/world/level/block/SoundType; HEAVY_CORE bh field_49834 + f Lnet/minecraft/world/level/block/SoundType; COBWEB bi field_50169 + f F volume bj field_11540 + f F pitch bk field_11539 + f Lnet/minecraft/sounds/SoundEvent; breakSound bl field_11546 + f Lnet/minecraft/sounds/SoundEvent; stepSound bm field_11527 + f Lnet/minecraft/sounds/SoundEvent; placeSound bn field_11536 + f Lnet/minecraft/sounds/SoundEvent; hitSound bo field_11530 + f Lnet/minecraft/sounds/SoundEvent; fallSound bp field_11541 + f Lnet/minecraft/world/level/block/SoundType; GRAVEL c field_11529 + f Lnet/minecraft/world/level/block/SoundType; GRASS d field_11535 + f Lnet/minecraft/world/level/block/SoundType; LILY_PAD e field_25183 + f Lnet/minecraft/world/level/block/SoundType; STONE f field_11544 + f Lnet/minecraft/world/level/block/SoundType; METAL g field_11533 + f Lnet/minecraft/world/level/block/SoundType; GLASS h field_11537 + f Lnet/minecraft/world/level/block/SoundType; WOOL i field_11543 + f Lnet/minecraft/world/level/block/SoundType; SAND j field_11526 + f Lnet/minecraft/world/level/block/SoundType; SNOW k field_11548 + f Lnet/minecraft/world/level/block/SoundType; POWDER_SNOW l field_27884 + f Lnet/minecraft/world/level/block/SoundType; LADDER m field_11532 + f Lnet/minecraft/world/level/block/SoundType; ANVIL n field_11531 + f Lnet/minecraft/world/level/block/SoundType; SLIME_BLOCK o field_11545 + f Lnet/minecraft/world/level/block/SoundType; HONEY_BLOCK p field_21214 + f Lnet/minecraft/world/level/block/SoundType; WET_GRASS q field_11534 + f Lnet/minecraft/world/level/block/SoundType; CORAL_BLOCK r field_11528 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO s field_11542 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_SAPLING t field_11538 + f Lnet/minecraft/world/level/block/SoundType; SCAFFOLDING u field_16498 + f Lnet/minecraft/world/level/block/SoundType; SWEET_BERRY_BUSH v field_17579 + f Lnet/minecraft/world/level/block/SoundType; CROP w field_17580 + f Lnet/minecraft/world/level/block/SoundType; HARD_CROP x field_18852 + f Lnet/minecraft/world/level/block/SoundType; VINE y field_23083 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WART z field_17581 + m ()F getVolume a method_10597 + m ()F getPitch b method_10599 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakSound c method_10595 + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound d method_10594 + m ()Lnet/minecraft/sounds/SoundEvent; getPlaceSound e method_10598 + m ()Lnet/minecraft/sounds/SoundEvent; getHitSound f method_10596 + m ()Lnet/minecraft/sounds/SoundEvent; getFallSound g method_10593 + m (FFLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 1 volume + p 2 pitch + p 3 breakSound + p 4 stepSound + p 5 placeSound + p 6 hitSound + p 7 fallSound + m ()V +c net/minecraft/world/level/block/SpawnerBlock dnn net/minecraft/class_2496 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46455 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SpongeBlock dno net/minecraft/class_2502 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46456 + f I MAX_DEPTH b field_31250 + f I MAX_COUNT c field_31251 + f [Lnet/minecraft/core/Direction; ALL_DIRECTIONS d field_43257 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V tryAbsorbWater a method_10620 + p 1 level + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z method_49829 a method_49829 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V method_49830 a method_49830 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z removeWaterBreadthFirstSearch b method_10619 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SporeBlossomBlock dnp net/minecraft/class_5809 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46457 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_28703 + f I ADD_PARTICLE_ATTEMPTS c field_31252 + f I PARTICLE_XZ_RADIUS d field_31253 + f I PARTICLE_Y_MAX e field_31254 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SpreadingSnowyDirtBlock dnq net/minecraft/class_2500 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canBeGrass b method_10614 + p 0 state + p 1 levelReader + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canPropagate c method_10613 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/StainedGlassBlock dnr net/minecraft/class_2506 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46458 + f Lnet/minecraft/world/item/DyeColor; color c field_11558 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54044 a method_54044 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 dyeColor + p 2 properties + m ()V +c net/minecraft/world/level/block/StainedGlassPaneBlock dns net/minecraft/class_2504 + f Lcom/mojang/serialization/MapCodec; CODEC j field_46459 + f Lnet/minecraft/world/item/DyeColor; color k field_11554 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54045 a method_54045 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/StairBlock dnt net/minecraft/class_2510 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_SHAPES F field_11566 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_SHAPES G field_11564 + f Lnet/minecraft/world/level/block/state/BlockState; baseState H field_11574 + f [I SHAPE_BY_STATE I field_11570 + f Lnet/minecraft/world/level/block/Block; base J field_11579 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46460 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11571 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF c field_11572 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE d field_11565 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_11573 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB f field_11562 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB g field_11576 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NNN h field_11561 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NNP i field_11578 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NPN j field_11568 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NPP k field_11563 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PNN l field_11575 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PNP m field_11569 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PPN n field_11577 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PPP o field_11567 + m (ILnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; makeStairShape a method_10671 + c Combines the shapes according to the mode set in the bitfield + p 0 bitfield + p 1 slabShape + p 2 nwCorner + p 3 neCorner + p 4 swCorner + p 5 seCorner + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54046 a method_54046 + m (Lnet/minecraft/world/level/block/StairBlock;)Lnet/minecraft/world/level/block/state/BlockState; method_54047 a method_54047 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_10672 + p 0 slabShape + p 1 nwCorner + p 2 neCorner + p 3 swCorner + p 4 seCorner + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;I)Lnet/minecraft/world/phys/shapes/VoxelShape; method_10674 a method_10674 + m (I)[Lnet/minecraft/world/phys/shapes/VoxelShape; method_10677 b method_10677 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canTakeShape c method_10678 + p 0 state + p 1 level + p 2 pos + p 3 face + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/properties/StairsShape; getStairsShape i method_10675 + c Returns a stair shape property based on the surrounding stairs from the given blockstate and position + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStairs m method_10676 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getShapeIndex n method_10673 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 baseState + p 2 properties + m ()V +c net/minecraft/world/level/block/StairBlock$1 dnt$1 net/minecraft/class_2510$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StairsShape a field_11581 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11580 + m ()V +c net/minecraft/world/level/block/StandingSignBlock dnu net/minecraft/class_2508 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46461 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_11559 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54048 a method_54048 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/StemBlock dnv net/minecraft/class_2513 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46462 + f I MAX_AGE b field_31255 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11584 + f F AABB_OFFSET d field_31256 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE e field_11583 + f Lnet/minecraft/resources/ResourceKey; fruit f field_11585 + f Lnet/minecraft/resources/ResourceKey; attachedStem g field_46463 + f Lnet/minecraft/resources/ResourceKey; seed h field_27205 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54049 a method_54049 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54050 a method_54050 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54051 b method_54051 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54052 c method_54052 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 fruit + p 2 attachedStem + p 3 seed + p 4 properties + m ()V +c net/minecraft/world/level/block/StonecutterBlock dnw net/minecraft/class_3718 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46464 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_17649 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_16407 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE d field_17650 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17896 a method_17896 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/StructureBlock dnx net/minecraft/class_2515 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46465 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE b field_11586 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V trigger a method_10703 + p 1 level + p 2 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/StructureBlock$1 dnx$1 net/minecraft/class_2515$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StructureMode a field_11587 + m ()V +c net/minecraft/world/level/block/StructureVoidBlock dny net/minecraft/class_2518 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46466 + f D SIZE b field_31257 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11589 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SugarCaneBlock dnz net/minecraft/class_2523 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46467 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_11610 + f F AABB_OFFSET c field_31258 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_11611 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SupportType doa net/minecraft/class_5431 + f Lnet/minecraft/world/level/block/SupportType; FULL a field_25822 + f Lnet/minecraft/world/level/block/SupportType; CENTER b field_25823 + f Lnet/minecraft/world/level/block/SupportType; RIGID c field_25824 + f [Lnet/minecraft/world/level/block/SupportType; $VALUES d field_25825 + m ()[Lnet/minecraft/world/level/block/SupportType; $values a method_36711 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isSupporting a method_30367 + p 1 state + p 2 level + p 3 pos + p 4 face + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/SupportType$1 doa$1 net/minecraft/class_5431$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SupportType$2 doa$2 net/minecraft/class_5431$2 + f I CENTER_SUPPORT_WIDTH d field_25826 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CENTER_SUPPORT_SHAPE e field_25827 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SupportType$3 doa$3 net/minecraft/class_5431$3 + f I RIGID_SUPPORT_WIDTH d field_25828 + f Lnet/minecraft/world/phys/shapes/VoxelShape; RIGID_SUPPORT_SHAPE e field_25829 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SuspiciousEffectHolder dob net/minecraft/class_7917 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/block/SuspiciousEffectHolder; tryGet a method_47380 + p 0 item + m ()Lnet/minecraft/world/item/component/SuspiciousStewEffects; getSuspiciousEffects b method_53233 + m ()Ljava/util/List; getAllEffectHolders c method_47379 +c net/minecraft/world/level/block/SweetBerryBushBlock doc net/minecraft/class_3830 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46468 + f I MAX_AGE b field_31259 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_17000 + f F HURT_SPEED_THRESHOLD d field_31260 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SAPLING_SHAPE e field_17001 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MID_GROWTH_SHAPE f field_17002 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TallFlowerBlock dod net/minecraft/class_2521 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46469 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TallGrassBlock doe net/minecraft/class_2526 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46470 + f F AABB_OFFSET b field_31261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11617 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TallSeagrassBlock dof net/minecraft/class_2525 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46471 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF d field_11616 + f F AABB_OFFSET e field_31262 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_11615 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TargetBlock dog net/minecraft/class_4850 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46472 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; OUTPUT_POWER b field_22428 + f I ACTIVATION_TICKS_ARROWS c field_31263 + f I ACTIVATION_TICKS_OTHER d field_31264 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/core/BlockPos;I)V setOutputPower a method_24857 + p 0 level + p 1 state + p 2 power + p 3 pos + p 4 waitTime + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/Entity;)I updateRedstoneOutput a method_24858 + p 0 level + p 1 state + p 2 hit + p 3 projectile + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/phys/Vec3;)I getRedstoneStrength a method_24859 + p 0 hit + p 1 hitLocation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TintedGlassBlock doh net/minecraft/class_5555 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46473 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TntBlock doi net/minecraft/class_2530 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46474 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UNSTABLE b field_11621 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V explode a method_10738 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)V explode a method_10737 + p 0 level + p 1 pos + p 2 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TorchBlock doj net/minecraft/class_2527 + f Lcom/mojang/serialization/MapCodec; PARTICLE_OPTIONS_FIELD c field_46475 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46476 + f Lnet/minecraft/core/particles/SimpleParticleType; flameParticle e field_22155 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54053 a method_54053 + m (Lnet/minecraft/world/level/block/TorchBlock;)Lnet/minecraft/core/particles/SimpleParticleType; method_54054 a method_54054 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/DataResult; method_54055 a method_54055 + m (Lnet/minecraft/core/particles/SimpleParticleType;)Lnet/minecraft/core/particles/ParticleType; method_54056 a method_54056 + m (Lnet/minecraft/core/particles/ParticleType;)Ljava/lang/String; method_54057 b method_54057 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 flameParticle + p 2 properties + m ()V +c net/minecraft/world/level/block/TorchflowerCropBlock dok net/minecraft/class_8171 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46477 + f I MAX_AGE b field_42775 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_42776 + f F AABB_OFFSET g field_42777 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE h field_42778 + f I BONEMEAL_INCREASE i field_44479 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TransparentBlock dol net/minecraft/class_8923 + f Lcom/mojang/serialization/MapCodec; CODEC b field_47087 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TrapDoorBlock dom net/minecraft/class_2533 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46478 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN b field_11631 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF c field_11625 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_11629 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_11626 + f I AABB_THICKNESS f field_31266 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_OPEN_AABB g field_11627 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_OPEN_AABB h field_11630 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_OPEN_AABB i field_11624 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_OPEN_AABB j field_11633 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB k field_11632 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB l field_11628 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type m field_42779 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V playSound a method_10740 + p 1 player + p 2 level + p 3 pos + p 4 isOpened + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54058 a method_54058 + m (Lnet/minecraft/world/level/block/TrapDoorBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54059 a method_54059 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V toggle b method_55139 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; getType m method_54766 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/TrapDoorBlock$1 dom$1 net/minecraft/class_2533$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11635 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_11634 + m ()V +c net/minecraft/world/level/block/TrappedChestBlock don net/minecraft/class_2531 + f Lcom/mojang/serialization/MapCodec; CODEC n field_46479 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24181 m method_24181 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TrialSpawnerBlock doo net/minecraft/class_8960 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47348 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STATE b field_47349 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS c field_50170 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;)V method_55140 a method_55140 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;)V method_55141 a method_55141 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TripWireBlock dop net/minecraft/class_2538 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46480 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_11680 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED c field_11683 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DISARMED d field_11679 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH e field_11675 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST f field_11673 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH g field_11678 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST h field_11674 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB i field_11682 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NOT_ATTACHED_AABB j field_11681 + f Ljava/util/Map; PROPERTY_BY_DIRECTION k field_11676 + f I RECHECK_PERIOD l field_31267 + f Lnet/minecraft/world/level/block/Block; hook m field_11677 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54060 a method_54060 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkPressed a method_10780 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateSource a method_10779 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/TripWireBlock;)Lnet/minecraft/world/level/block/Block; method_54061 a method_54061 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shouldConnectTo a method_10778 + p 1 state + p 2 direction + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 hook + p 2 properties + m ()V +c net/minecraft/world/level/block/TripWireBlock$1 dop$1 net/minecraft/class_2538$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11685 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11684 + m ()V +c net/minecraft/world/level/block/TripWireHookBlock doq net/minecraft/class_2537 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46481 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11666 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11671 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED d field_11669 + f I WIRE_DIST_MIN e field_31268 + f I WIRE_DIST_MAX f field_31269 + f I AABB_OFFSET g field_31270 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB h field_11665 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB i field_11668 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_11670 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_11667 + f I RECHECK_PERIOD l field_31271 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZILnet/minecraft/world/level/block/state/BlockState;)V calculateState a method_10776 + p 0 level + p 1 pos + p 2 hookState + p 3 attaching + p 4 shouldNotifyNeighbours + p 5 searchRange + p 6 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZZZZ)V emitState a method_10777 + p 0 level + p 1 pos + p 2 attached + p 3 powered + p 4 wasAttached + p 5 wasPowered + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V notifyNeighbors a method_10775 + p 0 block + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TripWireHookBlock$1 doq$1 net/minecraft/class_2537$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11672 + m ()V +c net/minecraft/world/level/block/TurtleEggBlock dor net/minecraft/class_2542 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46482 + f I MAX_HATCH_LEVEL b field_31272 + f I MIN_EGGS c field_31273 + f I MAX_EGGS d field_31274 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH e field_11711 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; EGGS f field_11710 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_EGG_AABB g field_11712 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MULTIPLE_EGGS_AABB h field_11709 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z onSand a method_10831 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z shouldUpdateHatchLevel a method_10832 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Z canDestroyEgg a method_10835 + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;I)V destroyEgg a method_10834 + p 1 level + p 2 state + p 3 pos + p 4 entity + p 5 chance + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V decreaseEggs a method_10833 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSand b method_29952 + p 0 reader + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TwistingVinesBlock dos net/minecraft/class_4777 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46483 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_22172 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TwistingVinesPlantBlock dot net/minecraft/class_4950 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46484 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_23325 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/VaultBlock dou net/minecraft/class_9197 + f Lcom/mojang/serialization/MapCodec; CODEC a field_48856 + f Lnet/minecraft/world/level/block/state/properties/Property; STATE b field_48857 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_48858 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS d field_50171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;)V method_56718 a method_56718 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;)V method_56719 a method_56719 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/VineBlock dov net/minecraft/class_2541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46485 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP b field_11703 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH c field_11706 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST d field_11702 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH e field_11699 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST f field_11696 + f Ljava/util/Map; PROPERTY_BY_DIRECTION g field_11697 + f F AABB_OFFSET h field_31275 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB i field_11698 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_11704 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_11705 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB l field_11701 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB m field_11700 + f Ljava/util/Map; shapesCache n field_26659 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z canSpread a method_10824 + p 1 blockReader + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isAcceptableNeighbour a method_10821 + p 0 blockReader + p 1 neighborPos + p 2 attachedFace + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; copyRandomFaces a method_10820 + p 1 sourceState + p 2 spreadState + p 3 random + m (Ljava/util/Map$Entry;)Z method_10826 a method_10826 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; getPropertyForFace a method_10828 + p 0 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSupportAtFace b method_10829 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getUpdatedState i method_10827 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_31018 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasFaces n method_10823 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I countFaces o method_10822 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasHorizontalConnection p method_10830 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/VineBlock$1 dov$1 net/minecraft/class_2541$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11708 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11707 + m ()V +c net/minecraft/world/level/block/WallBannerBlock dow net/minecraft/class_2546 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46486 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11722 + f Ljava/util/Map; SHAPES c field_11723 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54062 a method_54062 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/WallBlock dox net/minecraft/class_2544 + f Lnet/minecraft/world/phys/shapes/VoxelShape; POST_TEST F field_22163 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_TEST G field_22164 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_TEST H field_22165 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_TEST I field_22166 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_TEST J field_22167 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46487 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP b field_11717 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_WALL c field_22156 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_WALL d field_22157 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_WALL e field_22158 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_WALL f field_22159 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED g field_22160 + f Ljava/util/Map; shapeByIndex h field_22161 + f Ljava/util/Map; collisionShapeByIndex i field_22162 + f I WALL_WIDTH j field_31276 + f I WALL_HEIGHT k field_31277 + f I POST_WIDTH l field_31278 + f I POST_COVER_WIDTH m field_31279 + f I WALL_COVER_START n field_31280 + f I WALL_COVER_END o field_31281 + m (FFFFFF)Ljava/util/Map; makeShapes a method_24420 + p 1 width + p 2 depth + p 3 wallPostHeight + p 4 wallMinY + p 5 wallLowHeight + p 6 wallTallHeight + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; topUpdate a method_24421 + p 1 level + p 2 state + p 3 pos + p 4 secondState + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZZZ)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_24422 + p 1 level + p 2 state + p 3 pos + p 4 neighbour + p 5 northConnection + p 6 eastConnection + p 7 southConnection + p 8 westConnection + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; sideUpdate a method_24423 + p 1 level + p 2 firstPos + p 3 firstState + p 4 secondPos + p 5 secondState + p 6 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z shouldRaisePost a method_27092 + p 1 state + p 2 neighbour + p 3 shape + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Z isConnected a method_24424 + p 0 state + p 1 heightProperty + m (Lnet/minecraft/world/level/block/state/BlockState;ZLnet/minecraft/core/Direction;)Z connectsTo a method_16704 + p 1 state + p 2 sideSolid + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;ZZZZLnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/level/block/state/BlockState; updateSides a method_24425 + p 1 state + p 2 northConnection + p 3 eastConnection + p 4 southConnection + p 5 westConnection + p 6 wallShape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/block/state/properties/WallSide;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; applyWallShape a method_24426 + p 0 baseShape + p 1 height + p 2 lowShape + p 3 tallShape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isCovered a method_24427 + p 0 firstShape + p 1 secondShape + m (ZLnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/level/block/state/properties/WallSide; makeWallState a method_24428 + p 1 allowConnection + p 2 shape + p 3 neighbourShape + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WallBlock$1 dox$1 net/minecraft/class_2544$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_22168 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_22169 + m ()V +c net/minecraft/world/level/block/WallHangingSignBlock doy net/minecraft/class_7715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46488 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_40319 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PLANK_NORTHSOUTH c field_40320 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PLANK_EASTWEST d field_40321 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_NORTHSOUTH e field_40322 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_EASTWEST i field_40323 + f Ljava/util/Map; AABBS j field_40324 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54063 a method_54063 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttachTo a method_45460 + p 1 level + p 2 state + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/item/ItemStack;)Z shouldTryToChainAnotherHangingSign a method_50004 + p 1 state + p 2 player + p 3 hitResult + p 4 sign + p 5 stack + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;)Z isHittingEditableSide a method_50005 + p 1 hitResult + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canPlace b method_45461 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallHangingSignBlock$1 doy$1 net/minecraft/class_7715$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_40325 + m ()V +c net/minecraft/world/level/block/WallSignBlock doz net/minecraft/class_2551 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46489 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11726 + f F AABB_THICKNESS c field_31282 + f F AABB_BOTTOM d field_31283 + f F AABB_TOP e field_31284 + f Ljava/util/Map; AABBS i field_11727 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54064 a method_54064 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallSkullBlock dpa net/minecraft/class_2549 + f Ljava/util/Map; AABBS b field_11725 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46490 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_11724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54065 a method_54065 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallTorchBlock dpb net/minecraft/class_2555 + f Lcom/mojang/serialization/MapCodec; CODEC f field_46491 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING g field_11731 + f F AABB_OFFSET h field_31285 + f Ljava/util/Map; AABBS i field_11732 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54066 a method_54066 + m (Lnet/minecraft/world/level/block/WallTorchBlock;)Lnet/minecraft/core/particles/SimpleParticleType; method_54067 a method_54067 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSurvive b method_56118 + p 0 level + p 1 pos + p 2 facing + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape m method_10841 + p 0 state + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 flameParticle + p 2 properties + m ()V +c net/minecraft/world/level/block/WaterlilyBlock dpc net/minecraft/class_2553 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46492 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_11728 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WaterloggedTransparentBlock dpd net/minecraft/class_9009 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47522 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_47523 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeatheringCopper dpe net/minecraft/class_5955 + f Ljava/util/function/Supplier; NEXT_BY_BLOCK w_ field_29564 + f Ljava/util/function/Supplier; PREVIOUS_BY_BLOCK x_ field_29565 + m ()Lcom/google/common/collect/BiMap; method_34739 a method_34739 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getPrevious a method_34732 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34733 a method_34733 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; getFirst b method_34734 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getPrevious b method_34735 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34736 b method_34736 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getNext c method_34737 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getFirst c method_34738 + p 0 state + m ()Lcom/google/common/collect/BiMap; method_34740 d method_34740 + m ()V +c net/minecraft/world/level/block/WeatheringCopper$WeatherState dpe$a net/minecraft/class_5955$class_5811 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; UNAFFECTED a field_28704 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; EXPOSED b field_28705 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; WEATHERED c field_28706 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; OXIDIZED d field_28707 + f Lcom/mojang/serialization/Codec; CODEC e field_46493 + f Ljava/lang/String; name f field_46494 + f [Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; $VALUES g field_28708 + m ()[Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; $values a method_36712 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/WeatheringCopperBulbBlock dpf net/minecraft/class_8924 + f Lcom/mojang/serialization/MapCodec; CODEC d field_47088 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState e field_47089 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54767 a method_54767 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54768 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperDoorBlock dpg net/minecraft/class_8925 + f Lcom/mojang/serialization/MapCodec; CODEC l field_47090 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState m field_47091 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54769 a method_54769 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54770 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 weatherState + p 3 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperFullBlock dph net/minecraft/class_5812 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46495 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState e field_28709 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54068 a method_54068 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33632 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperGrateBlock dpi net/minecraft/class_8926 + f Lcom/mojang/serialization/MapCodec; CODEC e field_47092 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState f field_47093 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54771 a method_54771 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54772 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperSlabBlock dpj net/minecraft/class_5813 + f Lcom/mojang/serialization/MapCodec; CODEC f field_46496 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState g field_28711 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54069 a method_54069 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33633 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperStairBlock dpk net/minecraft/class_5814 + f Lcom/mojang/serialization/MapCodec; CODEC I field_46497 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState J field_28713 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54070 a method_54070 + m (Lnet/minecraft/world/level/block/WeatheringCopperStairBlock;)Lnet/minecraft/world/level/block/state/BlockState; method_54071 a method_54071 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33634 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 baseState + p 3 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperTrapDoorBlock dpl net/minecraft/class_8927 + f Lcom/mojang/serialization/MapCodec; CODEC m field_47094 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState n field_47095 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54773 a method_54773 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge n method_54774 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 weatherState + p 3 properties + m ()V +c net/minecraft/world/level/block/WebBlock dpm net/minecraft/class_2560 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46498 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WeepingVinesBlock dpn net/minecraft/class_4776 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46499 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_22171 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeepingVinesPlantBlock dpo net/minecraft/class_4951 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46500 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_23326 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeightedPressurePlateBlock dpp net/minecraft/class_2557 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46501 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER f field_11739 + f I maxWeight g field_11738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54072 a method_54072 + m (Lnet/minecraft/world/level/block/WeightedPressurePlateBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54073 a method_54073 + m (Lnet/minecraft/world/level/block/WeightedPressurePlateBlock;)Ljava/lang/Integer; method_54074 b method_54074 + m (ILnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 maxWeight + p 2 type + p 3 properties + m ()V +c net/minecraft/world/level/block/WetSpongeBlock dpq net/minecraft/class_2565 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46502 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WitherRoseBlock dpr net/minecraft/class_2563 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46503 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54075 a method_54075 + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 effect + p 2 seconds + p 3 properties + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 suspiciousStewEffects + p 2 properties + m ()V +c net/minecraft/world/level/block/WitherSkullBlock dps net/minecraft/class_2570 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46504 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; witherPatternFull h field_11765 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; witherPatternBase i field_11764 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkSpawn a method_56119 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/SkullBlockEntity;)V checkSpawn a method_10898 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51174 a method_51174 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Z canSpawnMob b method_10899 + p 0 level + p 1 pos + p 2 stack + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_24798 b method_24798 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51175 c method_51175 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_24799 d method_24799 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateWitherFull y method_10900 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateWitherBase z method_10897 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WitherWallSkullBlock dpt net/minecraft/class_2567 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46505 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WoolCarpetBlock dpu net/minecraft/class_5815 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46506 + f Lnet/minecraft/world/item/DyeColor; color d field_28715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54076 a method_54076 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_33635 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity dpv net/minecraft/class_2609 + f I SLOT_INPUT b field_31286 + f I SLOT_FUEL c field_31287 + f I SLOT_RESULT d field_31288 + f I DATA_LIT_TIME e field_31289 + f I DATA_LIT_DURATION f field_31290 + f I DATA_COOKING_PROGRESS g field_31291 + f I DATA_COOKING_TOTAL_TIME h field_31292 + f I NUM_DATA_VALUES i field_31293 + f I BURN_TIME_STANDARD j field_31294 + f I BURN_COOL_SPEED k field_31295 + f Lnet/minecraft/core/NonNullList; items l field_11984 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess m field_17374 + f [I SLOTS_FOR_UP q field_11987 + f [I SLOTS_FOR_DOWN r field_11982 + f [I SLOTS_FOR_SIDES s field_11983 + f I litTime t field_11981 + f I litDuration u field_11980 + f I cookingProgress v field_11989 + f I cookingTotalTime w field_11988 + f Ljava/util/Map; fuelCache x field_48375 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; recipesUsed y field_11986 + f Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; quickCheck z field_38234 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Ljava/util/List; getRecipesToAwardAndPopExperience a method_27354 + p 1 level + p 2 popVec + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;IF)V createExperience a method_17760 + p 0 level + p 1 popVec + p 2 recipeIndex + p 3 experience + m (Lnet/minecraft/server/level/ServerPlayer;)V awardUsedRecipesAndPopExperience a method_17763 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)I getTotalCookTime a method_17029 + p 0 level + p 1 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)V serverTick a method_31651 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Ljava/util/List;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_17761 a method_17761 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;I)V add a method_11194 + p 0 map + p 1 itemTag + p 2 burnTime + m (Ljava/util/Map;Lnet/minecraft/world/level/ItemLike;I)V add a method_11202 + p 0 map + p 1 item + p 2 burnTime + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/core/NonNullList;I)Z canBurn a method_11192 + p 0 registryAccess + p 1 recipe + p 2 inventory + p 3 maxStackSize + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)V method_24431 a method_24431 + m (Lnet/minecraft/world/item/Item;)Z isNeverAFurnaceFuel b method_26395 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)I getBurnDuration b method_11200 + p 1 fuel + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/lang/Integer; method_53790 b method_53790 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/core/NonNullList;I)Z burn b method_11203 + p 0 registryAccess + p 1 recipe + p 2 inventory + p 3 maxStackSize + m (Lnet/minecraft/world/item/ItemStack;)Z isFuel c method_11195 + p 0 stack + m ()V invalidateCache f method_56120 + m ()Ljava/util/Map; getFuel g method_11196 + m ()Z isLit l method_11201 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/crafting/RecipeType;)V + p 1 type + p 2 pos + p 3 blockState + p 4 recipeType + m ()V +c net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity$1 dpv$1 net/minecraft/class_2609$1 + f Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity; field_17375 a field_17375 + m (Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)V +c net/minecraft/world/level/block/entity/BannerBlockEntity dpw net/minecraft/class_2573 + f I MAX_PATTERNS a field_31296 + f Lorg/slf4j/Logger; LOGGER b field_49402 + f Ljava/lang/String; TAG_PATTERNS c field_31297 + f Lnet/minecraft/network/chat/Component; name d field_11772 + f Lnet/minecraft/world/item/DyeColor; baseColor e field_11774 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; patterns f field_49756 + c A list of all patterns stored on this banner. + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket a method_16886 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/DyeColor;)V fromItem a method_10913 + p 1 stack + p 2 color + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)V method_58121 a method_58121 + m (Ljava/lang/String;)V method_57566 a method_57566 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; getPatterns b method_58122 + m ()Lnet/minecraft/world/item/ItemStack; getItem c method_10907 + m ()Lnet/minecraft/world/item/DyeColor; getBaseColor f method_10908 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/DyeColor;)V + p 1 pos + p 2 blockState + p 3 baseColor + m ()V +c net/minecraft/world/level/block/entity/BannerPattern dpx net/minecraft/class_2582 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49757 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49758 + f Lcom/mojang/serialization/Codec; CODEC c field_49759 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49760 + f Lnet/minecraft/resources/ResourceLocation; assetId e comp_2456 + f Ljava/lang/String; translationKey f comp_2457 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_2456 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58123 a method_58123 + m ()Ljava/lang/String; translationKey b comp_2457 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers dpy net/minecraft/class_9307 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; EMPTY a field_49404 + f Lcom/mojang/serialization/Codec; CODEC b field_49405 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49406 + f Ljava/util/List; layers d comp_2428 + f Lorg/slf4j/Logger; LOGGER e field_49761 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; removeLast a method_57571 + m ()Ljava/util/List; layers b comp_2428 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers$Builder dpy$a net/minecraft/class_9307$class_3750 + f Lcom/google/common/collect/ImmutableList$Builder; layers a field_16548 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; build a method_57573 + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Layer;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; add a method_57574 + p 1 layer + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; addAll a method_57575 + p 1 layers + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; add a method_16376 + p 1 pattern + p 2 color + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; addIfRegistered a method_58124 + p 1 patterns + p 2 patternKey + p 3 color + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers$Layer dpy$b net/minecraft/class_9307$class_9308 + f Lcom/mojang/serialization/Codec; CODEC a field_49407 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49408 + f Lnet/minecraft/core/Holder; pattern c comp_2429 + f Lnet/minecraft/world/item/DyeColor; color d comp_2430 + m ()Lnet/minecraft/network/chat/MutableComponent; description a method_58125 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57576 a method_57576 + m ()Lnet/minecraft/core/Holder; pattern b comp_2429 + m ()Lnet/minecraft/world/item/DyeColor; color c comp_2430 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatterns dpz net/minecraft/class_7446 + f Lnet/minecraft/resources/ResourceKey; HALF_VERTICAL A field_39136 + f Lnet/minecraft/resources/ResourceKey; HALF_HORIZONTAL B field_39137 + f Lnet/minecraft/resources/ResourceKey; HALF_VERTICAL_MIRROR C field_39138 + f Lnet/minecraft/resources/ResourceKey; HALF_HORIZONTAL_MIRROR D field_39139 + f Lnet/minecraft/resources/ResourceKey; BORDER E field_39140 + f Lnet/minecraft/resources/ResourceKey; CURLY_BORDER F field_39141 + f Lnet/minecraft/resources/ResourceKey; GRADIENT G field_39142 + f Lnet/minecraft/resources/ResourceKey; GRADIENT_UP H field_39143 + f Lnet/minecraft/resources/ResourceKey; BRICKS I field_39144 + f Lnet/minecraft/resources/ResourceKey; GLOBE J field_39145 + f Lnet/minecraft/resources/ResourceKey; CREEPER K field_39146 + f Lnet/minecraft/resources/ResourceKey; SKULL L field_39147 + f Lnet/minecraft/resources/ResourceKey; FLOWER M field_39148 + f Lnet/minecraft/resources/ResourceKey; MOJANG N field_39149 + f Lnet/minecraft/resources/ResourceKey; PIGLIN O field_39150 + f Lnet/minecraft/resources/ResourceKey; FLOW P field_49835 + f Lnet/minecraft/resources/ResourceKey; GUSTER Q field_49836 + f Lnet/minecraft/resources/ResourceKey; BASE a field_39151 + f Lnet/minecraft/resources/ResourceKey; SQUARE_BOTTOM_LEFT b field_39152 + f Lnet/minecraft/resources/ResourceKey; SQUARE_BOTTOM_RIGHT c field_39153 + f Lnet/minecraft/resources/ResourceKey; SQUARE_TOP_LEFT d field_39154 + f Lnet/minecraft/resources/ResourceKey; SQUARE_TOP_RIGHT e field_39155 + f Lnet/minecraft/resources/ResourceKey; STRIPE_BOTTOM f field_39156 + f Lnet/minecraft/resources/ResourceKey; STRIPE_TOP g field_39157 + f Lnet/minecraft/resources/ResourceKey; STRIPE_LEFT h field_39158 + f Lnet/minecraft/resources/ResourceKey; STRIPE_RIGHT i field_39159 + f Lnet/minecraft/resources/ResourceKey; STRIPE_CENTER j field_39160 + f Lnet/minecraft/resources/ResourceKey; STRIPE_MIDDLE k field_39161 + f Lnet/minecraft/resources/ResourceKey; STRIPE_DOWNRIGHT l field_39162 + f Lnet/minecraft/resources/ResourceKey; STRIPE_DOWNLEFT m field_39163 + f Lnet/minecraft/resources/ResourceKey; STRIPE_SMALL n field_39164 + f Lnet/minecraft/resources/ResourceKey; CROSS o field_39165 + f Lnet/minecraft/resources/ResourceKey; STRAIGHT_CROSS p field_39166 + f Lnet/minecraft/resources/ResourceKey; TRIANGLE_BOTTOM q field_39167 + f Lnet/minecraft/resources/ResourceKey; TRIANGLE_TOP r field_39168 + f Lnet/minecraft/resources/ResourceKey; TRIANGLES_BOTTOM s field_39169 + f Lnet/minecraft/resources/ResourceKey; TRIANGLES_TOP t field_39170 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_LEFT u field_39171 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_RIGHT v field_39172 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_LEFT_MIRROR w field_39173 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_RIGHT_MIRROR x field_39174 + f Lnet/minecraft/resources/ResourceKey; CIRCLE_MIDDLE y field_39175 + f Lnet/minecraft/resources/ResourceKey; RHOMBUS_MIDDLE z field_39176 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43722 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43721 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;)V register a method_57577 + p 0 context + p 1 resourceKey + m ()V + m ()V +c net/minecraft/world/level/block/entity/BarrelBlockEntity dqa net/minecraft/class_3719 + f Lnet/minecraft/core/NonNullList; items d field_16410 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter e field_27207 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_17764 + p 1 state + p 2 sound + m (Lnet/minecraft/world/level/block/state/BlockState;Z)V updateBlockState a method_18318 + p 1 state + p 2 open + m ()V recheckOpen l method_20362 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BarrelBlockEntity$1 dqa$1 net/minecraft/class_3719$1 + f Lnet/minecraft/world/level/block/entity/BarrelBlockEntity; field_27208 a field_27208 + m (Lnet/minecraft/world/level/block/entity/BarrelBlockEntity;)V +c net/minecraft/world/level/block/entity/BaseContainerBlockEntity dqb net/minecraft/class_2624 + f Lnet/minecraft/world/LockCode; lockKey d field_12045 + f Lnet/minecraft/network/chat/Component; name e field_17376 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; createMenu a method_5465 + p 1 containerId + p 2 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/LockCode;Lnet/minecraft/network/chat/Component;)Z canUnlock a method_17487 + p 0 player + p 1 code + p 2 displayName + m (Lnet/minecraft/core/NonNullList;)V setItems a method_11281 + p 1 items + m (Lnet/minecraft/world/entity/player/Player;)Z canOpen d method_17489 + p 1 player + m ()Lnet/minecraft/core/NonNullList; getItems j method_11282 + m ()Lnet/minecraft/network/chat/Component; getDefaultName k method_17823 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState +c net/minecraft/world/level/block/entity/BeaconBlockEntity dqc net/minecraft/class_2580 + f Ljava/util/List; BEACON_EFFECTS a field_11801 + c A list of effects that beacons can apply. + f I DATA_LEVELS b field_31300 + f I DATA_PRIMARY c field_31301 + f I DATA_SECONDARY d field_31302 + f I NUM_DATA_VALUES e field_31303 + f I MAX_LEVELS f field_31304 + f Ljava/util/Set; VALID_EFFECTS g field_11798 + f I BLOCKS_CHECK_PER_TICK h field_31305 + f Lnet/minecraft/network/chat/Component; DEFAULT_NAME i field_40328 + f Ljava/lang/String; TAG_PRIMARY j field_45784 + f Ljava/lang/String; TAG_SECONDARY k field_45785 + f Ljava/util/List; beamSections l field_19177 + c A list of beam segments for this beacon. + f Ljava/util/List; checkingBeamSections m field_19178 + f I levels q field_11803 + c The number of levels of this beacon's pyramid. + f I lastCheckY r field_19179 + f Lnet/minecraft/core/Holder; primaryPower s field_11795 + c The primary effect given by this beacon. + f Lnet/minecraft/core/Holder; secondaryPower t field_11799 + c The secondary effect given by this beacon. + f Lnet/minecraft/network/chat/Component; name u field_11793 + c The custom name for this beacon. + f Lnet/minecraft/world/LockCode; lockKey v field_17377 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess w field_17378 + m (Lnet/minecraft/world/level/Level;III)I updateBase a method_20293 + p 0 level + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V applyEffects a method_10940 + p 0 level + p 1 pos + p 2 beaconLevel + p 3 primaryEffect + p 4 secondaryEffect + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_10938 + p 0 level + p 1 pos + p 2 sound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)V tick a method_16896 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; filterEffect a method_53251 + p 0 effect + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/core/Holder; loadEffect a method_53252 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)V method_55779 a method_55779 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/core/Holder;)V storeEffect a method_53253 + p 0 tag + p 1 key + p 2 effect + m (Lnet/minecraft/network/chat/Component;)V setCustomName a method_10936 + c Sets the custom name for this beacon. + p 1 name + m ()Ljava/util/List; getBeamSections b method_10937 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_38236 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/BeaconBlockEntity$1 dqc$1 net/minecraft/class_2580$1 + f Lnet/minecraft/world/level/block/entity/BeaconBlockEntity; field_17379 a field_17379 + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)V +c net/minecraft/world/level/block/entity/BeaconBlockEntity$BeaconBeamSection dqc$a net/minecraft/class_2580$class_2581 + f I color a field_11805 + c The colors of this section of a beacon beam, in RGB float format. + f I height b field_11804 + m ()V increaseHeight a method_10942 + m ()I getColor b method_10944 + m ()I getHeight c method_10943 + m (I)V + p 1 color +c net/minecraft/world/level/block/entity/BedBlockEntity dqd net/minecraft/class_2587 + f Lnet/minecraft/world/item/DyeColor; color a field_11869 + m (Lnet/minecraft/world/item/DyeColor;)V setColor a method_11019 + p 1 color + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38237 + m ()Lnet/minecraft/world/item/DyeColor; getColor c method_11018 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/DyeColor;)V + p 1 pos + p 2 blockState + p 3 color +c net/minecraft/world/level/block/entity/BeehiveBlockEntity dqe net/minecraft/class_4482 + f I MAX_OCCUPANTS a field_31312 + f I MIN_OCCUPATION_TICKS_NECTARLESS b field_31313 + f Lorg/slf4j/Logger; LOGGER c field_49409 + f Ljava/lang/String; TAG_FLOWER_POS d field_31306 + f Ljava/lang/String; BEES e field_31311 + f Ljava/util/List; IGNORED_BEE_TAGS f field_33570 + f I MIN_TICKS_BEFORE_REENTERING_HIVE g field_31314 + f I MIN_OCCUPATION_TICKS_NECTAR h field_31315 + f Ljava/util/List; stored i field_20423 + f Lnet/minecraft/core/BlockPos; savedFlowerPos j field_20424 + m (Lnet/minecraft/world/entity/Entity;)V addOccupant a method_21848 + p 1 occupant + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)V emptyAllLivingFromHive a method_21850 + p 1 player + p 2 state + p 3 releaseStatus + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;Ljava/util/List;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;Lnet/minecraft/core/BlockPos;)Z releaseOccupant a method_21855 + p 0 level + p 1 pos + p 2 state + p 3 occupant + p 4 storedInHives + p 5 releaseStatus + p 6 storedFlowerPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V serverTick a method_31656 + p 0 level + p 1 pos + p 2 state + p 3 beehive + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/core/BlockPos;)V tickOccupants a method_21858 + p 0 level + p 1 pos + p 2 state + p 3 data + p 4 savedFlowerPos + m (Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;)V storeBee a method_35292 + p 1 occupant + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40019 a method_40019 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getHoneyLevel a method_23902 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)Ljava/util/List; releaseAllOccupants a method_21852 + p 1 state + p 2 releaseStatus + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeData;)Z method_21854 a method_21854 + m (Ljava/lang/String;)V method_57578 a method_57578 + m (Ljava/util/List;)V method_57579 a method_57579 + m ()Z isFireNearby b method_23280 + m ()Z isEmpty c method_22400 + m ()Z isFull d method_21856 + m ()I getOccupantCount f method_23903 + m ()Z isSedated j method_23904 + m ()Z hasSavedFlowerPos k method_21857 + m ()Ljava/util/List; getBees l method_57580 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeData dqe$a net/minecraft/class_4482$class_4483 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; occupant a field_49410 + f I ticksInHive b field_20426 + m ()Z tick a method_57581 + m ()Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; toOccupant b method_57582 + m ()Z hasNectar c method_57583 + m (Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;)V + p 1 occupant +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus dqe$b net/minecraft/class_4482$class_4484 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; HONEY_DELIVERED a field_20428 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; BEE_RELEASED b field_20429 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; EMERGENCY c field_21052 + f [Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; $VALUES d field_20430 + m ()[Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; $values a method_36714 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant dqe$c net/minecraft/class_4482$class_9309 + f Lcom/mojang/serialization/Codec; CODEC a field_49411 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_49412 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49413 + f Lnet/minecraft/world/item/component/CustomData; entityData d comp_2431 + f I ticksInHive e comp_2432 + f I minTicksInHive f comp_2433 + m ()Lnet/minecraft/world/item/component/CustomData; entityData a comp_2431 + m (I)Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; create a method_57584 + p 0 ticksInHive + m (ILnet/minecraft/world/entity/animal/Bee;)V setBeeReleaseData a method_57585 + p 0 ticksInHive + p 1 bee + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; of a method_57586 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57587 a method_57587 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; createEntity a method_57588 + p 1 level + p 2 pos + m ()I ticksInHive b comp_2432 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_57589 b method_57589 + m ()I minTicksInHive c comp_2433 + m (Lnet/minecraft/world/item/component/CustomData;II)V + m ()V +c net/minecraft/world/level/block/entity/BellBlockEntity dqf net/minecraft/class_3721 + f I ticks a field_17095 + c How many ticks the bell has been ringing. + f Z shaking b field_17096 + f Lnet/minecraft/core/Direction; clickDirection c field_17097 + f I DURATION d field_31316 + f I GLOW_DURATION e field_31317 + f I MIN_TICKS_BETWEEN_SEARCHES f field_31318 + f I MAX_RESONATION_TICKS g field_31319 + f I TICKS_BEFORE_RESONATION h field_31320 + f I SEARCH_RADIUS i field_31321 + f I HEAR_BELL_RADIUS j field_31322 + f I HIGHLIGHT_RAIDERS_RADIUS k field_31323 + f J lastRingTimestamp l field_19155 + f Ljava/util/List; nearbyEntities m field_19156 + f Z resonating q field_19157 + f I resonationTicks r field_19158 + c A tick counter before raiders are revealed. At {@link #TICKS_BEFORE_RESONATION} ticks, the resonation sound is played, and at {@link #MAX_RESONATION_TICKS}, nearby raiders are revealed. + m (Lnet/minecraft/world/entity/LivingEntity;)V glow a method_20520 + p 0 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;)V clientTick a method_31657 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;Lnet/minecraft/world/level/block/entity/BellBlockEntity$ResonationEndAction;)V tick a method_31658 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + p 4 resonationEndAction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V makeRaidersGlow a method_20521 + p 0 level + p 1 pos + p 2 raiders + m (Lnet/minecraft/core/BlockPos;ILorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V method_20519 a method_20519 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z isRaiderWithinRange a method_20518 + p 0 pos + p 1 raider + m (Lnet/minecraft/core/BlockPos;Ljava/util/List;)Z areRaidersNearby a method_20523 + p 0 pos + p 1 raiders + m (Lnet/minecraft/core/Direction;)V onHit a method_17031 + p 1 direction + m ()V updateEntities b method_20219 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;)V serverTick b method_31659 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V showBellParticles b method_20218 + p 0 level + p 1 pos + p 2 raiders + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_31660 b method_31660 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_20217 c method_20217 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_31661 d method_31661 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BellBlockEntity$ResonationEndAction dqf$a net/minecraft/class_3721$class_5557 +c net/minecraft/world/level/block/entity/BlastFurnaceBlockEntity dqg net/minecraft/class_3720 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BlockEntity dqh net/minecraft/class_2586 + c

Interface {@link net.fabricmc.fabric.api.blockview.v2.RenderDataBlockEntity} injected by mod fabric-block-view-api-v2

\n

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f Lorg/slf4j/Logger; LOGGER d field_11868 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type e field_11864 + f Lnet/minecraft/world/level/block/state/BlockState; blockState f field_11866 + f Lnet/minecraft/core/component/DataComponentMap; components g field_50172 + f Lnet/minecraft/world/level/Level; level n field_11863 + f Lnet/minecraft/core/BlockPos; worldPosition o field_11867 + f Z remove p field_11865 + m (Lnet/minecraft/world/item/ItemStack;)V applyComponentsFromItemStack a method_58683 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/HolderLookup$Provider;)V saveToItem a method_38240 + p 1 stack + p 2 registries + m (Lnet/minecraft/world/level/Level;)V setLevel a method_31662 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setChanged a method_31663 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/entity/BlockEntity$DataComponentInput;)V applyImplicitComponents a method_57568 + p 1 componentInput + m (Lnet/minecraft/world/level/block/state/BlockState;)V validateBlockState a method_61175 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17898 a method_17898 + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/Component; parseCustomNameSafe a method_59894 + p 0 customName + p 1 registries + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17899 a method_17899 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/block/entity/BlockEntity; loadStatic a method_11005 + p 0 pos + p 1 state + p 2 tag + p 3 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; getUpdateTag a method_16887 + p 1 registries + m (Lnet/minecraft/core/component/DataComponentMap$Builder;)V collectImplicitComponents a method_57567 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;)V setComponents a method_58684 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentPatch;)V applyComponents a method_58685 + p 1 components + p 2 patch + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_11003 + p 1 reportCategory + m (Lnet/minecraft/nbt/CompoundTag;)V removeComponentsFromTag a method_57569 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/block/entity/BlockEntityType;)V addEntityType a method_38238 + p 0 tag + p 1 entityType + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadAdditional a method_11014 + p 1 tag + p 2 registries + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17897 a method_17897 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_58686 a method_58686 + m ()V setRemoved aA_ method_11012 + c Marks this {@code BlockEntity} as no longer valid (removed from the level). + m ()Lnet/minecraft/core/BlockPos; getBlockPos aD_ method_11016 + m (II)Z triggerEvent a_ method_11004 + p 1 id + p 2 type + m ()Lnet/minecraft/network/protocol/Packet; getUpdatePacket az_ method_38235 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBlockState b method_61176 + m (Ljava/lang/String;)V method_58687 b method_58687 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithFullMetadata b method_38242 + p 1 registries + m (Lnet/minecraft/core/component/DataComponentMap;)V method_58688 b method_58688 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/core/BlockPos; getPosFromTag b method_38239 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V saveAdditional b method_11007 + p 1 tag + p 2 registries + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_31664 + p 1 blockState + m (Ljava/lang/String;)V method_58689 c method_58689 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithId c method_38243 + p 1 registries + m (Lnet/minecraft/nbt/CompoundTag;)V saveId c method_38241 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadWithComponents c method_58690 + p 1 tag + p 2 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithoutMetadata d method_38244 + p 1 registries + m (Lnet/minecraft/nbt/CompoundTag;)V saveMetadata d method_10999 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadCustomOnly d method_58691 + p 1 tag + p 2 registries + m ()V setChanged e method_5431 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveCustomOnly e method_58692 + p 1 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveCustomAndMetadata f method_59535 + p 1 registries + m ()Lnet/minecraft/world/level/Level; getLevel i method_10997 + m ()Ljava/lang/String; getNameForReporting k method_61177 + m ()Z hasLevel m method_11002 + c @return whether this BlockEntity's level has been set + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState n method_11010 + m ()Z isRemoved o method_11015 + m ()V clearRemoved p method_10996 + c Marks this {@code BlockEntity} as valid again (no longer removed from the level). + m ()Z onlyOpCanSetNbt q method_11011 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; getType r method_11017 + m ()Lnet/minecraft/core/component/DataComponentMap; collectComponents s method_57590 + m ()Lnet/minecraft/core/component/DataComponentMap; components t method_58693 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m ()V +c net/minecraft/world/level/block/entity/BlockEntity$1 dqh$1 net/minecraft/class_2586$1 + f Ljava/util/Set; val$implicitComponents a field_50173 + f Lnet/minecraft/core/component/DataComponentMap; val$fullView b field_50174 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/util/Set;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/world/level/block/entity/BlockEntity$ComponentHelper dqh$a net/minecraft/class_2586$class_9472 + f Lcom/mojang/serialization/Codec; COMPONENTS_CODEC a field_50176 + m ()V + m ()V +c net/minecraft/world/level/block/entity/BlockEntity$DataComponentInput dqh$b net/minecraft/class_2586$class_9473 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_58694 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_58695 + p 1 component + p 2 defaultValue +c net/minecraft/world/level/block/entity/BlockEntityTicker dqi net/minecraft/class_5558 +c net/minecraft/world/level/block/entity/BlockEntityType dqj net/minecraft/class_2591 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityType} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/level/block/entity/BlockEntityType; BARREL A field_16411 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SMOKER B field_16414 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BLAST_FURNACE C field_16415 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; LECTERN D field_16412 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BELL E field_16413 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; JIGSAW F field_16549 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CAMPFIRE G field_17380 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BEEHIVE H field_20431 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_SENSOR I field_28117 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CALIBRATED_SCULK_SENSOR J field_43258 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_CATALYST K field_37647 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_SHRIEKER L field_37648 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CHISELED_BOOKSHELF M field_40329 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BRUSHABLE_BLOCK N field_42780 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DECORATED_POT O field_42781 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CRAFTER P field_46808 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; TRIAL_SPAWNER Q field_47352 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; VAULT R field_48859 + f Lorg/slf4j/Logger; LOGGER S field_11893 + f Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier; factory T field_11892 + f Ljava/util/Set; validBlocks U field_19315 + f Lcom/mojang/datafixers/types/Type; dataType V field_11909 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder W field_45786 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; FURNACE a field_11903 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CHEST b field_11914 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; TRAPPED_CHEST c field_11891 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; ENDER_CHEST d field_11901 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; JUKEBOX e field_11907 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DISPENSER f field_11887 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DROPPER g field_11899 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SIGN h field_11911 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; HANGING_SIGN i field_40330 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; MOB_SPAWNER j field_11889 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; PISTON k field_11897 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BREWING_STAND l field_11894 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; ENCHANTING_TABLE m field_11912 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; END_PORTAL n field_11898 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BEACON o field_11890 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SKULL p field_11913 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DAYLIGHT_DETECTOR q field_11900 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; HOPPER r field_11888 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; COMPARATOR s field_11908 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BANNER t field_11905 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; STRUCTURE_BLOCK u field_11895 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; END_GATEWAY v field_11906 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; COMMAND_BLOCK w field_11904 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SHULKER_BOX x field_11896 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BED y field_11910 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CONDUIT z field_11902 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder a method_53254 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_24182 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/resources/ResourceLocation; getKey a method_11033 + p 0 blockEntityType + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValid a method_20526 + p 1 state + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntityType$Builder;)Lnet/minecraft/world/level/block/entity/BlockEntityType; register a method_11030 + p 0 key + p 1 builder + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/entity/BlockEntity; create a method_11032 + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;Ljava/util/Set;Lcom/mojang/datafixers/types/Type;)V + p 1 factory + p 2 validBlocks + p 3 dataType + m ()V +c net/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier dqj$a net/minecraft/class_2591$class_5559 +c net/minecraft/world/level/block/entity/BlockEntityType$Builder dqj$b net/minecraft/class_2591$class_2592 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityType.Builder} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier; factory a field_11915 + f Ljava/util/Set; validBlocks b field_19316 + m (Lcom/mojang/datafixers/types/Type;)Lnet/minecraft/world/level/block/entity/BlockEntityType; build a method_11034 + p 1 dataType + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/entity/BlockEntityType$Builder; of a method_20528 + p 0 factory + p 1 validBlocks + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;Ljava/util/Set;)V + p 1 factory + p 2 validBlocks +c net/minecraft/world/level/block/entity/BrewingStandBlockEntity dqk net/minecraft/class_2589 + f I FUEL_USES b field_31324 + f I DATA_BREW_TIME c field_31325 + f I DATA_FUEL_USES d field_31326 + f I NUM_DATA_VALUES e field_31327 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess f field_17381 + f I INGREDIENT_SLOT g field_31328 + f I FUEL_SLOT h field_31329 + f [I SLOTS_FOR_UP i field_11886 + f [I SLOTS_FOR_DOWN j field_11879 + f [I SLOTS_FOR_SIDES k field_11880 + f Lnet/minecraft/core/NonNullList; items l field_11882 + c The items currently placed in the slots of the brewing stand. + f I brewTime m field_11878 + f [Z lastPotionCount q field_11883 + f Lnet/minecraft/world/item/Item; ingredient r field_11881 + f I fuel s field_11885 + m (Lnet/minecraft/world/item/alchemy/PotionBrewing;Lnet/minecraft/core/NonNullList;)Z isBrewable a method_11027 + p 0 potionBrewing + p 1 items + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity;)V serverTick a method_31665 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/NonNullList;)V doBrew a method_11029 + p 0 level + p 1 pos + p 2 items + m ()[Z getPotionBits f method_11028 + c @return an array of size 3 where every element represents whether the respective slot is not empty + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/BrewingStandBlockEntity$1 dqk$1 net/minecraft/class_2589$1 + f Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity; field_17382 a field_17382 + m (Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity;)V +c net/minecraft/world/level/block/entity/BrushableBlockEntity dql net/minecraft/class_8174 + f Lorg/slf4j/Logger; LOGGER a field_42801 + f Ljava/lang/String; LOOT_TABLE_TAG b field_42802 + f Ljava/lang/String; LOOT_TABLE_SEED_TAG c field_42803 + f Ljava/lang/String; HIT_DIRECTION_TAG d field_42804 + f Ljava/lang/String; ITEM_TAG e field_42805 + f I BRUSH_COOLDOWN_TICKS f field_42806 + f I BRUSH_RESET_TICKS g field_42807 + f I REQUIRED_BRUSHES_TO_BREAK h field_42808 + f I brushCount i field_42809 + f J brushCountResetsAtTick j field_42810 + f J coolDownEndsAtTick k field_42811 + f Lnet/minecraft/world/item/ItemStack; item l field_42812 + f Lnet/minecraft/core/Direction; hitDirection m field_42813 + f Lnet/minecraft/resources/ResourceKey; lootTable q field_42814 + f J lootTableSeed r field_42815 + m (JLnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Direction;)Z brush a method_49215 + p 1 startTick + p 3 player + p 4 hitDirection + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_49216 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable a method_49217 + p 1 player + m ()V checkReset b method_49219 + m (Lnet/minecraft/world/entity/player/Player;)V brushingCompleted b method_49218 + p 1 player + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_49221 + m (Lnet/minecraft/world/entity/player/Player;)V dropContent c method_49220 + p 1 player + m (Lnet/minecraft/nbt/CompoundTag;)Z tryLoadLootTable c method_49222 + p 1 tag + m ()Lnet/minecraft/core/Direction; getHitDirection d method_49224 + m (Lnet/minecraft/nbt/CompoundTag;)Z trySaveLootTable d method_49223 + p 1 tag + m ()Lnet/minecraft/world/item/ItemStack; getItem f method_49225 + m ()I getCompletionState j method_49226 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity dqm net/minecraft/class_8239 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity$VibrationUser dqm$a net/minecraft/class_8239$class_8240 + f Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity; field_44609 a field_44609 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getBackSignal a method_49832 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity;Lnet/minecraft/core/BlockPos;)V + p 2 pos +c net/minecraft/world/level/block/entity/CampfireBlockEntity dqn net/minecraft/class_3924 + f I BURN_COOL_SPEED a field_31330 + f I NUM_SLOTS b field_31331 + f Lnet/minecraft/core/NonNullList; items c field_17383 + f [I cookingProgress d field_17384 + f [I cookingTime e field_17385 + f Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; quickCheck f field_38235 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;I)Z placeFood a method_17503 + p 1 entity + p 2 food + p 3 cookTime + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_17504 a method_17504 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V cookTick a method_31666 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/core/NonNullList; getItems b method_17505 + c @return the items currently held in this campfire + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getCookableRecipe b method_17502 + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V cooldownTick b method_31667 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_38245 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V particleTick c method_31668 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()V dowse d method_17506 + m ()V markUpdated f method_17510 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ChestBlockEntity dqo net/minecraft/class_2595 + f I EVENT_SET_OPEN_COUNT d field_31332 + f Lnet/minecraft/core/NonNullList; items e field_11927 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter f field_27209 + f Lnet/minecraft/world/level/block/entity/ChestLidController; chestLidController g field_27210 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getOpenCount a method_11048 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V signalOpenCount a method_11049 + p 1 level + p 2 pos + p 3 state + p 4 eventId + p 5 eventParam + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_11050 + p 0 level + p 1 pos + p 2 state + p 3 sound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V lidAnimateTick a method_31670 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V swapContents a method_11047 + p 0 chest + p 1 otherChest + m ()V recheckOpen l method_31671 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ChestBlockEntity$1 dqo$1 net/minecraft/class_2595$1 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; field_27211 a field_27211 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V +c net/minecraft/world/level/block/entity/ChestLidController dqp net/minecraft/class_5560 + f Z shouldBeOpen a field_27212 + f F openness b field_27213 + f F oOpenness c field_27214 + m ()V tickLid a method_31672 + m (F)F getOpenness a method_31673 + p 1 partialTicks + m (Z)V shouldBeOpen a method_31674 + p 1 shouldBeOpen + m ()V +c net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity dqq net/minecraft/class_7716 + f I MAX_BOOKS_IN_STORAGE b field_40331 + f Lorg/slf4j/Logger; LOGGER c field_40898 + f Lnet/minecraft/core/NonNullList; items d field_41314 + f I lastInteractedSlot e field_41601 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)Z method_51356 a method_51356 + m (I)V updateState c method_47585 + p 1 slot + m ()I count f method_47587 + m ()I getLastInteractedSlot j method_47887 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/CommandBlockEntity dqr net/minecraft/class_2593 + f Z powered a field_11919 + f Z auto b field_11918 + f Z conditionMet c field_11917 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock d field_11920 + m (Z)V setPowered a method_11038 + p 1 powered + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock b method_11040 + m (Z)V setAutomatic b method_11041 + p 1 auto + m ()Z isPowered c method_11043 + m ()Z isAutomatic d method_11042 + m ()V onModeSwitch f method_23359 + m ()Z wasConditionMet j method_11044 + m ()Z markConditionMet k method_11045 + m ()Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; getMode l method_11039 + m ()Z isConditional u method_11046 + m ()V scheduleTick v method_23360 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/CommandBlockEntity$1 dqr$1 net/minecraft/class_2593$1 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity; field_11921 b field_11921 + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V +c net/minecraft/world/level/block/entity/CommandBlockEntity$Mode dqr$a net/minecraft/class_2593$class_2594 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; SEQUENCE a field_11922 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; AUTO b field_11923 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; REDSTONE c field_11924 + f [Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; $VALUES d field_11925 + m ()[Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; $values a method_36715 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/ComparatorBlockEntity dqs net/minecraft/class_2599 + f I output a field_11943 + m (I)V setOutputSignal a method_11070 + p 1 output + m ()I getOutputSignal b method_11071 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ConduitBlockEntity dqt net/minecraft/class_2597 + f I tickCount a field_11936 + f I BLOCK_REFRESH_RATE b field_31333 + f I EFFECT_DURATION c field_31334 + f F ROTATION_SPEED d field_31335 + f I MIN_ACTIVE_SIZE e field_31336 + f I MIN_KILL_SIZE f field_31337 + f I KILL_RANGE g field_31338 + f [Lnet/minecraft/world/level/block/Block; VALID_BLOCKS h field_11931 + f F activeRotation i field_11932 + f Z isActive j field_11934 + f Z isHunting k field_11933 + f Ljava/util/List; effectBlocks l field_11937 + f Lnet/minecraft/world/entity/LivingEntity; destroyTarget m field_11939 + f Ljava/util/UUID; destroyTargetUUID q field_11935 + f J nextAmbientSoundActivation r field_11938 + m (F)F getActiveRotation a method_11061 + p 1 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_11060 a method_11060 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V updateClientTarget a method_11064 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V clientTick a method_31675 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V updateDestroyTarget a method_11068 + p 0 level + p 1 pos + p 2 state + p 3 positions + p 4 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)Z updateShape a method_11069 + p 0 level + p 1 pos + p 2 positions + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/world/entity/Entity;I)V animationTick a method_11063 + p 0 level + p 1 pos + p 2 positions + p 3 entity + p 4 tickCount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Lnet/minecraft/world/entity/LivingEntity; findDestroyTarget a method_11056 + p 0 level + p 1 pos + p 2 targetId + m (Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;Ljava/util/List;)V updateHunting a method_31676 + p 0 blockEntity + p 1 positions + m (Ljava/util/UUID;Lnet/minecraft/world/entity/LivingEntity;)Z method_11058 a method_11058 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; getDestroyRangeAABB a method_11059 + p 0 pos + m (Z)V setHunting a method_11062 + p 1 isHunting + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38247 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V serverTick b method_31677 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V applyEffects b method_11055 + p 0 level + p 1 pos + p 2 positions + m ()Z isActive c method_11065 + m ()Z isHunting d method_11066 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/ContainerOpenersCounter dqu net/minecraft/class_5561 + f I CHECK_TICK_DELAY a field_31339 + f I openCount b field_27215 + f D maxInteractionRange c field_48376 + m ()I getOpenerCount a method_31678 + m (Lnet/minecraft/world/entity/player/Player;)Z isOwnContainer a method_31679 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V incrementOpeners a method_31684 + p 1 player + p 2 level + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/List; getPlayersWithContainerOpen a method_56121 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V onOpen a method_31681 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V openerCountChanged a method_31682 + p 1 level + p 2 pos + p 3 state + p 4 count + p 5 openCount + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V decrementOpeners b method_31685 + p 1 player + p 2 level + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V onClose b method_31683 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V recheckOpeners c method_31686 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V scheduleRecheck d method_31687 + p 0 level + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/CrafterBlockEntity dqv net/minecraft/class_8887 + f I CONTAINER_WIDTH d field_46809 + f I CONTAINER_HEIGHT e field_46810 + f I CONTAINER_SIZE f field_46811 + f I SLOT_DISABLED g field_46812 + f I SLOT_ENABLED h field_46813 + f I DATA_TRIGGERED i field_46814 + f I NUM_DATA j field_46815 + f Lnet/minecraft/world/inventory/ContainerData; containerData k field_46816 + f Lnet/minecraft/core/NonNullList; items q field_46817 + f I craftingTicksRemaining r field_46818 + m (ILnet/minecraft/world/item/ItemStack;I)Z smallerStackExist a method_54479 + p 1 currentSize + p 2 stack + p 3 slot + m (IZ)V setSlotState a method_54480 + p 1 slot + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;)V serverTick a method_54481 + p 0 level + p 1 pos + p 2 state + p 3 crafter + m (Z)V setTriggered a method_54482 + p 1 triggered + m (I)Z isSlotDisabled c method_54483 + p 1 slot + m (Lnet/minecraft/nbt/CompoundTag;)V addDisabledSlots c method_54486 + p 1 tag + m (I)V setCraftingTicksRemaining d method_54484 + p 1 craftingTicksRemaining + m (Lnet/minecraft/nbt/CompoundTag;)V addTriggered d method_54487 + p 1 tag + m (I)Z slotCanBeDisabled e method_54485 + p 1 slot + m ()Z isTriggered l method_54488 + m ()I getRedstoneSignal u method_54489 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state +c net/minecraft/world/level/block/entity/CrafterBlockEntity$1 dqv$1 net/minecraft/class_8887$1 + f [I slotStates a field_46820 + f I triggered b field_46821 + m (Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;)V +c net/minecraft/world/level/block/entity/DaylightDetectorBlockEntity dqw net/minecraft/class_2603 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/DecoratedPotBlockEntity dqx net/minecraft/class_8172 + f Ljava/lang/String; TAG_SHERDS d field_42782 + f Ljava/lang/String; TAG_ITEM e field_46659 + f I EVENT_POT_WOBBLES f field_46660 + f J wobbleStartedAtTick g field_46661 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; lastWobbleStyle h field_46662 + f Lnet/minecraft/resources/ResourceKey; lootTable i field_47156 + f J lootTableSeed j field_47157 + f Lnet/minecraft/world/level/block/entity/PotDecorations; decorations k field_44706 + f Lnet/minecraft/world/item/ItemStack; item l field_46663 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle;)V wobble a method_54301 + p 1 style + m (Lnet/minecraft/world/level/block/entity/PotDecorations;)Lnet/minecraft/world/item/ItemStack; createDecoratedPotItem a method_52577 + p 0 decorations + m (Lnet/minecraft/world/item/ItemStack;)V setFromItem c method_49196 + p 1 item + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket j method_49200 + m ()Lnet/minecraft/core/Direction; getDirection k method_49204 + m ()Lnet/minecraft/world/level/block/entity/PotDecorations; getDecorations l method_51511 + m ()Lnet/minecraft/world/item/ItemStack; getPotAsItem u method_52578 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state +c net/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle dqx$a net/minecraft/class_8172$class_8837 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; POSITIVE a field_46664 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; NEGATIVE b field_46665 + f I duration c field_46666 + f [Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; $VALUES d field_46667 + m ()[Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; $values a method_54302 + m (Ljava/lang/String;II)V + p 3 duration + m ()V +c net/minecraft/world/level/block/entity/DecoratedPotPattern dqy net/minecraft/class_9766 + f Lnet/minecraft/resources/ResourceLocation; assetId a comp_2801 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_2801 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/world/level/block/entity/DecoratedPotPatterns dqz net/minecraft/class_8173 + f Lnet/minecraft/resources/ResourceKey; BLANK a field_51897 + f Lnet/minecraft/resources/ResourceKey; ANGLER b field_43290 + f Lnet/minecraft/resources/ResourceKey; ARCHER c field_42794 + f Lnet/minecraft/resources/ResourceKey; ARMS_UP d field_42796 + f Lnet/minecraft/resources/ResourceKey; BLADE e field_43259 + f Lnet/minecraft/resources/ResourceKey; BREWER f field_43260 + f Lnet/minecraft/resources/ResourceKey; BURN g field_43261 + f Lnet/minecraft/resources/ResourceKey; DANGER h field_43262 + f Lnet/minecraft/resources/ResourceKey; EXPLORER i field_43263 + f Lnet/minecraft/resources/ResourceKey; FLOW j field_49837 + f Lnet/minecraft/resources/ResourceKey; FRIEND k field_43264 + f Lnet/minecraft/resources/ResourceKey; GUSTER l field_49838 + f Lnet/minecraft/resources/ResourceKey; HEART m field_43265 + f Lnet/minecraft/resources/ResourceKey; HEARTBREAK n field_43266 + f Lnet/minecraft/resources/ResourceKey; HOWL o field_43267 + f Lnet/minecraft/resources/ResourceKey; MINER p field_43268 + f Lnet/minecraft/resources/ResourceKey; MOURNER q field_43269 + f Lnet/minecraft/resources/ResourceKey; PLENTY r field_43270 + f Lnet/minecraft/resources/ResourceKey; PRIZE s field_42795 + f Lnet/minecraft/resources/ResourceKey; SCRAPE t field_49839 + f Lnet/minecraft/resources/ResourceKey; SHEAF u field_43271 + f Lnet/minecraft/resources/ResourceKey; SHELTER v field_43272 + f Lnet/minecraft/resources/ResourceKey; SKULL w field_42797 + f Lnet/minecraft/resources/ResourceKey; SNORT x field_43273 + f Ljava/util/Map; ITEM_TO_POT_TEXTURE y field_42798 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; getPatternFromItem a method_49206 + p 0 item + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_49208 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/block/entity/DecoratedPotPattern; bootstrap a method_49207 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/level/block/entity/DecoratedPotPattern; register a method_60512 + p 0 registry + p 1 key + p 2 assetId + m ()V + m ()V +c net/minecraft/world/level/block/entity/DispenserBlockEntity dra net/minecraft/class_2601 + f I CONTAINER_SIZE d field_31340 + f Lnet/minecraft/core/NonNullList; items e field_11945 + m (Lnet/minecraft/util/RandomSource;)I getRandomSlot a method_11076 + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; insertItem b method_11075 + p 1 stack + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/DropperBlockEntity drb net/minecraft/class_2608 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/EnchantingTableBlockEntity drc net/minecraft/class_2605 + f I time a field_11961 + f F flip b field_11958 + f F oFlip c field_11960 + f F flipT d field_11969 + f F flipA e field_11967 + f F open f field_11966 + f F oOpen g field_11965 + f F rot h field_11964 + f F oRot i field_11963 + f F tRot j field_11962 + f Lnet/minecraft/util/RandomSource; RANDOM k field_11968 + f Lnet/minecraft/network/chat/Component; name l field_11959 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/EnchantingTableBlockEntity;)V bookAnimationTick a method_31688 + p 0 level + p 1 pos + p 2 state + p 3 enchantingTable + m (Lnet/minecraft/network/chat/Component;)V setCustomName a method_11179 + p 1 customName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/EnderChestBlockEntity drd net/minecraft/class_2611 + f Lnet/minecraft/world/level/block/entity/ChestLidController; chestLidController a field_27216 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter b field_27217 + m (Lnet/minecraft/world/entity/player/Player;)V startOpen a method_11219 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V lidAnimateTick a method_31689 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()V recheckOpen b method_31690 + m (Lnet/minecraft/world/entity/player/Player;)V stopOpen b method_11220 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid c method_11218 + p 1 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/EnderChestBlockEntity$1 drd$1 net/minecraft/class_2611$1 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; field_27218 a field_27218 + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V +c net/minecraft/world/level/block/entity/FurnaceBlockEntity dre net/minecraft/class_3866 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/HangingSignBlockEntity drf net/minecraft/class_7717 + f I MAX_TEXT_LINE_WIDTH a field_40333 + f I TEXT_LINE_HEIGHT b field_40334 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/Hopper drg net/minecraft/class_2615 + f Lnet/minecraft/world/phys/AABB; SUCK_AABB s_ field_12026 + m ()D getLevelX H method_11266 + c @return the x position for this hopper. + m ()D getLevelY I method_11264 + c @return the x position for this hopper. + m ()D getLevelZ J method_11265 + c @return the x position for this hopper. + m ()Z isGridAligned K method_57081 + m ()Lnet/minecraft/world/phys/AABB; getSuckAabb am_ method_11262 + m ()V +c net/minecraft/world/level/block/entity/HopperBlockEntity drh net/minecraft/class_2614 + f I MOVE_ITEM_SPEED d field_31341 + f I HOPPER_CONTAINER_SIZE e field_31342 + f [[I CACHED_SLOTS f field_49100 + f Lnet/minecraft/core/NonNullList; items g field_12024 + f I cooldownTime h field_12023 + f J tickedGameTime i field_12022 + f Lnet/minecraft/core/Direction; facing j field_49101 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Z canTakeItemFromContainer a method_11252 + p 0 source + p 1 destination + p 2 stack + p 3 slot + p 4 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/ItemStack; addItem a method_11260 + c Attempts to place the passed stack in the container, using as many slots as required.\n@return any leftover stack + p 0 source + p 1 destination + p 2 stack + p 3 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/item/ItemEntity;)Z addItem a method_11247 + p 0 container + p 1 item + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Z canPlaceItemInContainer a method_11244 + p 0 container + p 1 stack + p 2 slot + p 3 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/core/Direction;)[I getSlots a method_17767 + p 0 container + p 1 direction + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canMergeItems a method_11254 + p 0 stack1 + p 1 stack2 + m (Lnet/minecraft/world/level/Level;DDD)Lnet/minecraft/world/Container; getEntityContainer a method_57009 + p 0 level + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;)Z suckInItems a method_11241 + p 0 level + p 1 hopper + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/Container; getSourceContainer a method_11248 + p 0 level + p 1 hopper + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Z method_31691 a method_31691 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/Container; getContainerAt a method_11250 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Z ejectItems a method_11246 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;DDD)Lnet/minecraft/world/Container; getContainerAt a method_11251 + p 0 level + p 1 pos + p 2 state + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)V entityInside a method_11236 + p 0 level + p 1 pos + p 2 state + p 3 entity + p 4 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)V pushItemsTick a method_31692 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;Ljava/util/function/BooleanSupplier;)Z tryMoveItems a method_11243 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + p 4 validator + m (Lnet/minecraft/world/level/block/entity/Hopper;Lnet/minecraft/world/Container;ILnet/minecraft/core/Direction;)Z tryTakeInItemFromSlot a method_11261 + c Pulls from the specified slot in the container and places in any available slot in the hopper.\n@return {@code true} if the entire stack was moved. + p 0 hopper + p 1 container + p 2 slot + p 3 direction + m (Lnet/minecraft/world/level/block/entity/HopperBlockEntity;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_31693 a method_31693 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Lnet/minecraft/world/item/ItemStack; tryMoveInItem b method_11253 + p 0 source + p 1 destination + p 2 stack + p 3 slot + p 4 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/core/Direction;)Z isFullContainer b method_11258 + c @return {@code false} if the {@code container} has any room to place items in + p 0 container + p 1 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;)Ljava/util/List; getItemsAtAndAbove b method_11237 + p 0 level + p 1 hopper + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Lnet/minecraft/world/Container; getAttachedContainer b method_11255 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/Container; getBlockContainer b method_57010 + p 0 level + p 1 pos + p 2 state + m (I)[I createFlatSlots c method_57011 + p 0 size + m (I)V setCooldown d method_11238 + p 1 cooldownTime + m ()Z inventoryFull l method_11256 + m ()Z isOnCooldown u method_11239 + m ()Z isOnCustomCooldown v method_11242 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/JigsawBlockEntity dri net/minecraft/class_3751 + f Ljava/lang/String; TARGET a field_31343 + f Ljava/lang/String; POOL b field_31344 + f Ljava/lang/String; JOINT c field_31345 + f Ljava/lang/String; PLACEMENT_PRIORITY d field_47096 + f Ljava/lang/String; SELECTION_PRIORITY e field_47097 + f Ljava/lang/String; NAME f field_31346 + f Ljava/lang/String; FINAL_STATE g field_31347 + f Lnet/minecraft/resources/ResourceLocation; name h field_16550 + f Lnet/minecraft/resources/ResourceLocation; target i field_16552 + f Lnet/minecraft/resources/ResourceKey; pool j field_23327 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint k field_23328 + f Ljava/lang/String; finalState l field_16551 + f I placementPriority m field_47098 + f I selectionPriority q field_47099 + m (I)V setPlacementPriority a method_54775 + p 1 placementPriority + m (Lnet/minecraft/resources/ResourceKey;)V setPool a method_26398 + p 1 pool + m (Lnet/minecraft/resources/ResourceLocation;)V setName a method_16379 + p 1 name + m (Lnet/minecraft/server/level/ServerLevel;IZ)V generate a method_27191 + p 1 level + p 2 maxDepth + p 3 keepJigsaws + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)V setJoint a method_26396 + p 1 joint + m (Ljava/lang/String;)V setFinalState a method_16377 + p 1 finalState + m ()Lnet/minecraft/resources/ResourceLocation; getName b method_16381 + m (I)V setSelectionPriority b method_54776 + p 1 selectionPriority + m (Lnet/minecraft/resources/ResourceLocation;)V setTarget b method_16378 + p 1 target + m ()Lnet/minecraft/resources/ResourceLocation; getTarget c method_26399 + m ()Lnet/minecraft/resources/ResourceKey; getPool d method_16382 + m ()Ljava/lang/String; getFinalState f method_16380 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; getJoint j method_26400 + m ()I getPlacementPriority k method_54777 + m ()I getSelectionPriority l method_54778 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket u method_38248 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; method_26397 v method_26397 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/JigsawBlockEntity$JointType dri$a net/minecraft/class_3751$class_4991 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; ROLLABLE a field_23329 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; ALIGNED b field_23330 + f Ljava/lang/String; name c field_23331 + f [Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; $VALUES d field_23332 + m ()Lnet/minecraft/network/chat/Component; getTranslatedName a method_32357 + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_26401 + p 0 name + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)Z method_26402 a method_26402 + m ()[Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; $values b method_36716 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/entity/JukeboxBlockEntity drj net/minecraft/class_2619 + f Ljava/lang/String; SONG_ITEM_TAG_ID b field_52064 + f Ljava/lang/String; TICKS_SINCE_SONG_STARTED_TAG_ID c field_52065 + f Lnet/minecraft/world/item/ItemStack; item d field_46507 + f Lnet/minecraft/world/item/JukeboxSongPlayer; jukeboxSongPlayer e field_52066 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/JukeboxBlockEntity;)V tick a method_44370 + p 0 level + p 1 pos + p 2 state + p 3 jukebox + m (Lnet/minecraft/core/Holder;)V method_60780 a method_60780 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/Holder;)V method_60781 a method_60781 + m (Z)V notifyItemChangedInJukebox a method_60782 + p 1 hasRecord + m (Lnet/minecraft/core/Holder;)V method_60783 b method_60783 + m (Lnet/minecraft/world/item/ItemStack;)V setSongItemWithoutPlaying c method_49210 + p 1 stack + m ()Lnet/minecraft/world/item/JukeboxSongPlayer; getSongPlayer j method_60784 + m ()V onSongChanged k method_60785 + m ()V popOutTheItem l method_49213 + m ()I getComparatorOutput u method_60992 + m ()V tryForcePlaySong w method_60786 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/LecternBlockEntity drk net/minecraft/class_3722 + f I DATA_PAGE a field_31348 + f I NUM_DATA b field_31349 + f I SLOT_BOOK c field_31350 + f I NUM_SLOTS d field_31351 + f Lnet/minecraft/world/Container; bookAccess e field_17386 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess f field_17387 + f Lnet/minecraft/world/item/ItemStack; book g field_17388 + f I page h field_17389 + f I pageCount i field_17390 + m (I)V setPage a method_17511 + p 1 page + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack a method_17512 + c Creates a CommandSourceStack for resolving the contents of a book. If the player is null, a CommandSourceStack with the generic name {@code "Lectern"} is used. + p 1 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)V setBook a method_17514 + c Sets the ItemStack in this lectern. Note that this does not update the block state, use {@link net.minecraft.world.level.block.LecternBlock#tryPlaceBook} for that. + p 1 stack + p 2 player + c the player used for resolving the components within the book + m ()Lnet/minecraft/world/item/ItemStack; getBook b method_17520 + m (Lnet/minecraft/world/item/ItemStack;)V setBook b method_17513 + c Sets the ItemStack in this lectern. Note that this does not update the block state, use {@link net.minecraft.world.level.block.LecternBlock#tryPlaceBook} for that. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; resolveBook b method_17518 + c Resolves the contents of the passed ItemStack, if it is a book + p 1 stack + p 2 player + m ()Z hasBook c method_17522 + c @return whether the ItemStack in this lectern is a book or written book + m (Lnet/minecraft/world/item/ItemStack;)I getPageCount c method_57591 + p 0 stack + m ()I getPage f method_17523 + m ()I getRedstoneSignal j method_17524 + m ()V onBookItemRemove k method_17525 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/LecternBlockEntity$1 drk$1 net/minecraft/class_3722$1 + f Lnet/minecraft/world/level/block/entity/LecternBlockEntity; field_17391 b field_17391 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;)V +c net/minecraft/world/level/block/entity/LecternBlockEntity$2 drk$2 net/minecraft/class_3722$2 + f Lnet/minecraft/world/level/block/entity/LecternBlockEntity; field_17392 a field_17392 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;)V +c net/minecraft/world/level/block/entity/LidBlockEntity drl net/minecraft/class_2618 + m (F)F getOpenNess a method_11274 + p 1 partialTicks +c net/minecraft/world/level/block/entity/PotDecorations drm net/minecraft/class_8526 + f Lnet/minecraft/world/level/block/entity/PotDecorations; EMPTY a field_44707 + f Lcom/mojang/serialization/Codec; CODEC b field_49414 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49415 + f Ljava/util/Optional; back d comp_1487 + f Ljava/util/Optional; left e comp_1488 + f Ljava/util/Optional; right f comp_1489 + f Ljava/util/Optional; front g comp_1490 + m ()Ljava/util/List; ordered a method_51512 + m (Ljava/util/List;I)Ljava/util/Optional; getItem a method_51514 + p 0 decorations + p 1 index + m (Ljava/util/Optional;)Lnet/minecraft/world/item/Item; method_57592 a method_57592 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_51513 + p 1 tag + m ()Ljava/util/Optional; back b comp_1487 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/entity/PotDecorations; load b method_51516 + p 0 tag + m ()Ljava/util/Optional; left c comp_1488 + m ()Ljava/util/Optional; right d comp_1489 + m ()Ljava/util/Optional; front e comp_1490 + m (Ljava/util/List;)V + p 1 decorations + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)V + p 1 back + p 2 left + p 3 right + p 4 front + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity drn net/minecraft/class_2621 + f Lnet/minecraft/resources/ResourceKey; lootTable l field_12037 + f J lootTableSeed m field_12036 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState +c net/minecraft/world/level/block/entity/SculkCatalystBlockEntity dro net/minecraft/class_7132 + f Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener; catalystListener a field_44610 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity;)V serverTick a method_41517 + p 0 level + p 1 pos + p 2 state + p 3 sculkCatalyst + m ()Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener; getListener b method_51357 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener dro$a net/minecraft/class_7132$class_8510 + f I PULSE_TICKS a field_44611 + f Lnet/minecraft/world/level/block/SculkSpreader; sculkSpreader b field_44612 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_44613 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource d field_44614 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)V method_51359 a method_51359 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)V bloom a method_51360 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V tryAwardItSpreadsAdvancement a method_51361 + p 1 level + p 2 entity + m ()Lnet/minecraft/world/level/block/SculkSpreader; getSculkSpreader d method_51362 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/gameevent/PositionSource;)V + p 1 blockState + p 2 positionSource +c net/minecraft/world/level/block/entity/SculkSensorBlockEntity drp net/minecraft/class_5704 + f Lorg/slf4j/Logger; LOGGER b field_38236 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData c field_44615 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; vibrationListener d field_28118 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser e field_43291 + f I lastVibrationFrequency h field_28119 + m (I)V setLastVibrationFrequency a method_44213 + p 1 lastVibrationFrequency + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_42320 a method_42320 + m (Ljava/lang/String;)V method_60993 a method_60993 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42321 a method_42321 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; createVibrationUser b method_49831 + m (Ljava/lang/String;)V method_60994 b method_60994 + m ()I getLastVibrationFrequency d method_32912 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; getListener f method_32911 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SculkSensorBlockEntity$VibrationUser drp$a net/minecraft/class_5704$class_8241 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource a field_44616 + f I LISTENER_RANGE b field_43292 + f Lnet/minecraft/core/BlockPos; blockPos c field_44617 + f Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity; field_44618 d field_44618 + m (Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity;Lnet/minecraft/core/BlockPos;)V + p 2 pos +c net/minecraft/world/level/block/entity/SculkShriekerBlockEntity drq net/minecraft/class_7133 + f Lorg/slf4j/Logger; LOGGER b field_38237 + f I WARNING_SOUND_RADIUS c field_38750 + f I WARDEN_SPAWN_ATTEMPTS d field_38751 + f I WARDEN_SPAWN_RANGE_XZ e field_38752 + f I WARDEN_SPAWN_RANGE_Y h field_38753 + f I DARKNESS_RADIUS i field_38754 + f I SHRIEKING_TICKS j field_38756 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; SOUND_BY_LEVEL k field_38755 + f I warningLevel l field_38757 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser m field_44619 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData q field_44620 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; vibrationListener r field_38239 + m (I)V method_44016 a method_44016 + m (Lnet/minecraft/server/level/ServerLevel;)V tryRespond a method_43147 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;)V tryShriek a method_43141 + p 1 level + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V shriek a method_44017 + p 1 level + p 2 sourceEntity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/server/level/ServerPlayer; tryGetPlayer a method_44018 + p 0 entity + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_42322 a method_42322 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43146 a method_43146 + m (Ljava/lang/String;)V method_60995 a method_60995 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42323 a method_42323 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; getListener b method_42325 + m (Lnet/minecraft/server/level/ServerLevel;)Z canRespond b method_43150 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;)Z tryToWarn b method_43142 + p 1 level + p 2 player + m (Lnet/minecraft/world/level/Level;)V playWardenReplySound b method_43151 + p 1 level + m (Ljava/lang/String;)V method_60996 b method_60996 + m (Lnet/minecraft/server/level/ServerLevel;)Z trySummonWarden c method_43148 + p 1 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SculkShriekerBlockEntity$VibrationUser drq$a net/minecraft/class_7133$class_8511 + f Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity; field_44621 a field_44621 + f I LISTENER_RADIUS b field_44622 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44623 + m (Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V +c net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity drr net/minecraft/class_2627 + f I COLUMNS d field_31354 + f I ROWS e field_31355 + f I CONTAINER_SIZE f field_31356 + f I EVENT_SET_OPEN_COUNT g field_31357 + f I OPENING_TICK_LENGTH h field_31358 + f F MAX_LID_HEIGHT i field_31359 + f F MAX_LID_ROTATION j field_31360 + f [I SLOTS k field_12059 + f Lnet/minecraft/core/NonNullList; itemStacks q field_12054 + f I openCount r field_12053 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; animationStatus s field_12057 + f F progress t field_12056 + f F progressOld u field_12055 + f Lnet/minecraft/world/item/DyeColor; color v field_12060 + m (F)F getProgress a method_11312 + p 1 partialTicks + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)V tick a method_31694 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/AABB; getBoundingBox a method_11314 + p 1 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateAnimation b method_11318 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V moveCollidedEntities c method_11316 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V doNeighborUpdates d method_20047 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadFromTag e method_11319 + p 1 tag + p 2 levelRegistry + m ()Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; getAnimationStatus l method_11313 + m ()Lnet/minecraft/world/item/DyeColor; getColor u method_11320 + m ()Z isClosed v method_27093 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 color + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus drr$a net/minecraft/class_2627$class_2628 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; CLOSED a field_12065 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; OPENING b field_12066 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; OPENED c field_12063 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; CLOSING d field_12064 + f [Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; $VALUES e field_12067 + m ()[Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; $values a method_36717 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/SignBlockEntity drs net/minecraft/class_2625 + f Lorg/slf4j/Logger; LOGGER a field_43294 + f I MAX_TEXT_LINE_WIDTH b field_40335 + f I TEXT_LINE_HEIGHT c field_40336 + f Ljava/util/UUID; playerWhoMayEdit d field_12046 + f Lnet/minecraft/world/level/block/entity/SignText; frontText e field_43295 + f Lnet/minecraft/world/level/block/entity/SignText; backText f field_43296 + f Z isWaxed g field_43297 + m (Lnet/minecraft/world/entity/player/Player;)Z isFacingFrontText a method_49834 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack a method_50006 + p 0 player + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Z executeClickCommandsIfPresent a method_50007 + p 1 player + p 2 level + p 3 pos + p 4 frontText + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; setMessages a method_49835 + p 1 player + p 2 filteredText + p 3 text + m (Lnet/minecraft/world/entity/player/Player;ZLjava/util/List;)V updateSignText a method_49836 + p 1 player + p 2 isFrontText + p 3 filteredText + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SignBlockEntity;)V tick a method_49837 + p 0 level + p 1 pos + p 2 state + p 3 sign + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/level/Level;Ljava/util/UUID;)V clearInvalidPlayerWhoMayEdit a method_49838 + p 1 sign + p 2 level + p 3 uuid + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; loadLines a method_50008 + p 1 text + m (Lnet/minecraft/world/level/block/entity/SignText;Z)Z setText a method_49840 + p 1 text + p 2 isFrontText + m (Ljava/util/UUID;)V setAllowedPlayerEditor a method_11306 + p 1 playWhoMayEdit + m (Ljava/util/function/UnaryOperator;Z)Z updateText a method_49841 + p 1 updater + p 2 isFrontText + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49842 a method_49842 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; loadLine a method_50009 + p 1 lineText + m (Z)Lnet/minecraft/world/level/block/entity/SignText; getText a method_49843 + p 1 isFrontText + m (ZLnet/minecraft/world/entity/player/Player;)Z canExecuteClickCommands a method_50010 + p 1 isFrontText + p 2 player + m ()I getTextLineHeight b method_45469 + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49845 b method_49845 + m (Lnet/minecraft/world/level/block/entity/SignText;)Z setBackText b method_49839 + p 1 text + m (Ljava/util/UUID;)Z playerIsTooFarAwayToEdit b method_49847 + p 1 uuid + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49848 b method_49848 + m (Z)Z setWaxed b method_49849 + p 1 isWaxed + m ()I getMaxTextLineWidth c method_45470 + m (Lnet/minecraft/world/level/block/entity/SignText;)Z setFrontText c method_49846 + p 1 text + m ()Lnet/minecraft/sounds/SoundEvent; getSignInteractionFailedSoundEvent d method_54303 + m (Lnet/minecraft/world/level/block/entity/SignText;)V method_49850 d method_49850 + m (Lnet/minecraft/world/level/block/entity/SignText;)V method_49851 e method_49851 + m ()Lnet/minecraft/world/level/block/entity/SignText; createDefaultSignText f method_49852 + m ()Lnet/minecraft/world/level/block/entity/SignText; getFrontText j method_49853 + m ()Lnet/minecraft/world/level/block/entity/SignText; getBackText k method_49854 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket l method_38249 + m ()Ljava/util/UUID; getPlayerWhoMayEdit u method_11305 + m ()Z isWaxed v method_49855 + m ()V markUpdated w method_34272 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m ()V +c net/minecraft/world/level/block/entity/SignText drt net/minecraft/class_8242 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_43298 + f I LINES b field_43299 + f Lcom/mojang/serialization/Codec; LINES_CODEC c field_43300 + f [Lnet/minecraft/network/chat/Component; messages d field_43301 + f [Lnet/minecraft/network/chat/Component; filteredMessages e field_43302 + f Lnet/minecraft/world/item/DyeColor; color f field_43303 + f Z hasGlowingText g field_43304 + f [Lnet/minecraft/util/FormattedCharSequence; renderMessages h field_43305 + f Z renderMessagedFiltered i field_43306 + m ()Z hasGlowingText a method_49856 + m (ILnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/block/entity/SignText; setMessage a method_49857 + p 1 index + p 2 text + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/block/entity/SignText; setMessage a method_49858 + p 1 index + p 2 text + p 3 filteredText + m (IZ)Lnet/minecraft/network/chat/Component; getMessage a method_49859 + p 1 index + p 2 isFiltered + m (Lnet/minecraft/world/entity/player/Player;)Z hasMessage a method_49861 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49863 a method_49863 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/SignText; setColor a method_49862 + p 1 color + m (Lnet/minecraft/world/level/block/entity/SignText;)Ljava/lang/Boolean; method_49864 a method_49864 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_49865 a method_49865 + m (Lnet/minecraft/network/chat/Component;)Z method_49866 a method_49866 + m (Z)Lnet/minecraft/world/level/block/entity/SignText; setHasGlowingText a method_49867 + p 1 hasGlowingText + m (ZLjava/util/function/Function;)[Lnet/minecraft/util/FormattedCharSequence; getRenderMessages a method_49868 + p 1 renderMessagesFiltered + p 2 formatter + m ([Lnet/minecraft/network/chat/Component;)Ljava/util/List; method_49869 a method_49869 + m ([Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Lnet/minecraft/world/item/DyeColor;Z)Lnet/minecraft/world/level/block/entity/SignText; load a method_49870 + p 0 messages + p 1 filteredMessages + p 2 color + p 3 hasGlowingText + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_49872 + m (Lnet/minecraft/world/entity/player/Player;)Z hasAnyClickCommands b method_49874 + p 1 player + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/item/DyeColor; method_49875 b method_49875 + m (Ljava/util/List;)[Lnet/minecraft/network/chat/Component; method_49876 b method_49876 + m (Z)[Lnet/minecraft/network/chat/Component; getMessages b method_49877 + p 1 isFiltered + m ()[Lnet/minecraft/network/chat/Component; emptyMessages c method_49878 + m (Lnet/minecraft/world/level/block/entity/SignText;)[Lnet/minecraft/network/chat/Component; method_49879 c method_49879 + m ()Ljava/util/Optional; filteredMessages d method_49880 + m ()V + m ([Lnet/minecraft/network/chat/Component;[Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/item/DyeColor;Z)V + p 1 messages + p 2 filteredMessages + p 3 color + p 4 hasGlowingText + m ()V +c net/minecraft/world/level/block/entity/SkullBlockEntity dru net/minecraft/class_2631 + f Ljava/util/concurrent/Executor; CHECKED_MAIN_THREAD_EXECUTOR a field_45147 + f Ljava/lang/String; TAG_PROFILE b field_49762 + f Ljava/lang/String; TAG_NOTE_BLOCK_SOUND c field_41602 + f Ljava/lang/String; TAG_CUSTOM_NAME d field_49763 + f Lorg/slf4j/Logger; LOGGER e field_49764 + f Ljava/util/concurrent/Executor; mainThreadExecutor f field_34029 + f Lcom/google/common/cache/LoadingCache; profileCacheByName g field_51356 + f Lcom/google/common/cache/LoadingCache; profileCacheById h field_51357 + f Lnet/minecraft/world/item/component/ResolvableProfile; owner i field_12087 + f Lnet/minecraft/resources/ResourceLocation; noteBlockSound j field_41603 + f I animationTickCount k field_41315 + f Z isAnimating l field_41316 + f Lnet/minecraft/network/chat/Component; customName m field_49765 + m (F)F getAnimation a method_47588 + p 1 partialTick + m (Lnet/minecraft/server/Services;Ljava/util/concurrent/Executor;)V setup a method_39765 + p 0 services + p 1 mainThreadExecutor + m (Lnet/minecraft/world/item/component/ResolvableProfile;)V setOwner a method_11333 + p 1 owner + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SkullBlockEntity;)V animation a method_47589 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Ljava/lang/Runnable;)V method_52579 a method_52579 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; fetchGameProfile a method_52580 + p 0 profileName + m (Ljava/lang/String;Lnet/minecraft/server/Services;)Ljava/util/concurrent/CompletableFuture; fetchProfileByName a method_59536 + p 0 name + p 1 services + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletionStage; method_59537 a method_59537 + m (Ljava/util/Optional;Ljava/util/Optional;)Ljava/util/Optional; method_59538 a method_59538 + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; fetchGameProfile a method_59539 + p 0 profileUuid + m (Ljava/util/UUID;Lnet/minecraft/server/Services;Ljava/util/function/BooleanSupplier;)Ljava/util/concurrent/CompletableFuture; fetchProfileById a method_59540 + p 0 id + p 1 services + p 2 cacheUninitialized + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/server/Services;Ljava/util/UUID;)Ljava/util/Optional; method_59541 a method_59541 + m ()V clear b method_39766 + m (Lnet/minecraft/world/item/component/ResolvableProfile;)V method_58126 b method_58126 + m (Ljava/lang/String;)V method_58127 b method_58127 + m (Ljava/util/Optional;)Ljava/util/Optional; method_59542 b method_59542 + m ()Lnet/minecraft/world/item/component/ResolvableProfile; getOwnerProfile c method_11334 + m ()Lnet/minecraft/resources/ResourceLocation; getNoteBlockSound d method_47888 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket f method_38250 + m ()V updateOwnerProfile j method_11339 + m ()Z method_54083 k method_54083 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SkullBlockEntity$1 dru$1 net/minecraft/class_2631$1 + f Lnet/minecraft/server/Services; val$services a field_46509 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; load a method_54084 + p 1 username + m (Lnet/minecraft/server/Services;)V +c net/minecraft/world/level/block/entity/SkullBlockEntity$2 dru$2 net/minecraft/class_2631$2 + f Lnet/minecraft/server/Services; val$services a field_51358 + f Ljava/util/function/BooleanSupplier; val$invalidated b field_51359 + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; load a method_59543 + p 1 id + m (Lnet/minecraft/server/Services;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/world/level/block/entity/SmokerBlockEntity drv net/minecraft/class_3723 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SpawnerBlockEntity drw net/minecraft/class_2636 + f Lnet/minecraft/world/level/BaseSpawner; spawner a field_12114 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V clientTick a method_31696 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38251 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V serverTick b method_31697 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/world/level/BaseSpawner; getSpawner c method_11390 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SpawnerBlockEntity$1 drw$1 net/minecraft/class_2636$1 + m (Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V +c net/minecraft/world/level/block/entity/StructureBlockEntity drx net/minecraft/class_2633 + f I MAX_OFFSET_PER_AXIS a field_31364 + f I MAX_SIZE_PER_AXIS b field_31365 + f Ljava/lang/String; AUTHOR_TAG c field_31366 + f I SCAN_CORNER_BLOCKS_RANGE d field_31367 + f Lnet/minecraft/resources/ResourceLocation; structureName e field_12102 + f Ljava/lang/String; author f field_12104 + f Ljava/lang/String; metaData g field_12098 + f Lnet/minecraft/core/BlockPos; structurePos h field_12092 + f Lnet/minecraft/core/Vec3i; structureSize i field_12100 + f Lnet/minecraft/world/level/block/Mirror; mirror j field_12093 + f Lnet/minecraft/world/level/block/Rotation; rotation k field_12105 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; mode l field_12094 + f Z ignoreEntities m field_12099 + f Z powered q field_12097 + f Z showAir r field_12096 + f Z showBoundingBox s field_12095 + f F integrity t field_12101 + f J seed u field_12103 + m ()Z saveStructure A method_11365 + c Saves the template, writing it to disk.\n\n@return true if the template was successfully saved. + m ()V unloadStructure B method_11361 + m ()Z isStructureLoadable C method_11372 + m ()Z isPowered D method_11354 + m ()Z getShowAir E method_11375 + m ()Z getShowBoundingBox F method_11357 + m ()V updateBlockState G method_11348 + m (F)V setIntegrity a method_11370 + p 1 integrity + m (J)V setSeed a method_11382 + p 1 seed + m (Lnet/minecraft/resources/ResourceLocation;)V setStructureName a method_11344 + p 1 structureName + m (Lnet/minecraft/server/level/ServerLevel;)Z placeStructureIfSameSize a method_54874 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;)V placeStructure a method_54875 + p 1 level + p 2 structureTemplate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_54876 a method_54876 + m (Lnet/minecraft/world/entity/LivingEntity;)V createdBy a method_11373 + p 1 author + m (Lnet/minecraft/world/entity/player/Player;)Z usedBy a method_11351 + p 1 player + m (Lnet/minecraft/world/level/block/Mirror;)V setMirror a method_11356 + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)V setRotation a method_11385 + p 1 rotation + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; method_34273 a method_34273 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_34274 a method_34274 + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)V setMode a method_11381 + p 1 mode + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;)V loadStructureInfo a method_54877 + p 1 structureTemplate + m (Ljava/lang/String;)V setStructureName a method_11343 + p 1 structureName + m (Lnet/minecraft/core/BlockPos;)V setStructurePos a method_11378 + p 1 structurePos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z method_34275 a method_34275 + m (Lnet/minecraft/core/BlockPos;Ljava/util/stream/Stream;)Ljava/util/Optional; calculateEnclosingBoundingBox a method_34277 + p 0 pos + p 1 relatedCorners + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; getRelatedCorners a method_34276 + p 1 minPos + p 2 maxPos + m (Lnet/minecraft/core/Vec3i;)V setStructureSize a method_11377 + p 1 structureSize + m (Z)V setIgnoreEntities a method_11352 + p 1 ignoreEntities + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38252 + m (J)Lnet/minecraft/util/RandomSource; createRandom b method_20048 + p 0 seed + m (Lnet/minecraft/server/level/ServerLevel;)Z loadStructureInfo b method_11376 + p 1 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Z method_34278 b method_34278 + m (Ljava/lang/String;)V setMetaData b method_11363 + p 1 metaData + m (Lnet/minecraft/core/BlockPos;)Z method_34279 b method_34279 + m (Z)Z saveStructure b method_11366 + c Saves the template, either updating the local version or writing it to disk.\n\n@return true if the template was successfully saved. + p 1 writeToDisk + m ()Ljava/lang/String; getStructureName c method_11362 + m (Lnet/minecraft/server/level/ServerLevel;)V placeStructure c method_54878 + p 1 level + m (Z)V setPowered c method_11379 + p 1 powered + m ()Z hasStructureName d method_11384 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getStructureTemplate d method_54879 + p 1 level + m (Z)V setShowAir d method_11347 + p 1 showAir + m (Z)V setShowBoundingBox e method_11360 + p 1 showBoundingBox + m ()Lnet/minecraft/core/BlockPos; getStructurePos f method_11359 + m ()Lnet/minecraft/core/Vec3i; getStructureSize j method_11349 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror k method_11345 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation l method_11353 + m ()Ljava/lang/String; getMetaData u method_11358 + m ()Lnet/minecraft/world/level/block/state/properties/StructureMode; getMode v method_11374 + m ()Z isIgnoreEntities w method_11367 + m ()F getIntegrity x method_11346 + m ()J getSeed y method_11371 + m ()Z detectSize z method_11383 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType drx$a net/minecraft/class_2633$class_2634 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; UPDATE_DATA a field_12108 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; SAVE_AREA b field_12110 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; LOAD_AREA c field_12109 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; SCAN_AREA d field_12106 + f [Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; $VALUES e field_12107 + m ()[Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; $values a method_36718 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity dry net/minecraft/class_2643 + f Lorg/slf4j/Logger; LOGGER a field_12133 + f I SPAWN_TIME b field_31368 + f I COOLDOWN_TIME c field_31369 + f I ATTENTION_INTERVAL d field_31370 + f I EVENT_COOLDOWN e field_31371 + f I GATEWAY_HEIGHT_ABOVE_SURFACE f field_31372 + f J age g field_12131 + f I teleportCooldown h field_12130 + f Lnet/minecraft/core/BlockPos; exitPortal i field_12132 + f Z exactTeleport j field_12129 + m (F)F getSpawnPercent a method_11417 + p 1 partialTicks + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Z isChunkEmpty a method_31698 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getPortalPosition a method_60787 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)V spawnGatewayPortal a method_11416 + p 0 level + p 1 pos + p 2 config + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46694 a method_46694 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findTallestBlock a method_11410 + p 0 level + p 1 pos + p 2 radius + p 3 allowBedrock + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_11414 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findExitPosition a method_11419 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V beamAnimationTick a method_31700 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/core/BlockPos; findValidSpawnInChunk a method_11413 + p 0 chunk + m (Lnet/minecraft/core/BlockPos;)V method_57012 a method_57012 + m (Lnet/minecraft/core/BlockPos;Z)V setExitPosition a method_11418 + p 1 exitPortal + p 2 exactTeleport + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46695 a method_46695 + m ()Z isSpawning b method_11420 + m (F)F getCooldownPercent b method_11412 + p 1 partialTicks + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findOrCreateValidTeleportPos b method_31699 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V portalTick b method_31702 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Z isCoolingDown c method_11421 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; findExitPortalXZPosTentative c method_31701 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V triggerCooldown c method_11411 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket d method_38253 + m ()I getParticleAmount f method_11415 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/TheEndPortalBlockEntity drz net/minecraft/class_2640 + m (Lnet/minecraft/core/Direction;)Z shouldRenderFace a method_11400 + p 1 face + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/TickingBlockEntity dsa net/minecraft/class_5562 + m ()V tick a method_31703 + m ()Z isRemoved b method_31704 + m ()Lnet/minecraft/core/BlockPos; getPos c method_31705 + m ()Ljava/lang/String; getType d method_31706 +c net/minecraft/world/level/block/entity/TrappedChestBlockEntity dsb net/minecraft/class_2646 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/TrialSpawnerBlockEntity dsc net/minecraft/class_8961 + f Lorg/slf4j/Logger; LOGGER a field_47354 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; trialSpawner b field_47355 + m (Lcom/mojang/serialization/DataResult$Error;)V method_55145 a method_55145 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V method_55147 a method_55147 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55148 a method_55148 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_55149 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; getTrialSpawner c method_55150 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/package-info dsd net/minecraft/class_6090 +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector dse net/minecraft/class_8962 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; NO_CREATIVE_PLAYERS a field_48860 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; INCLUDING_CREATIVE_PLAYERS b field_48861 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; SHEEP c field_47357 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_56720 a method_56720 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z inLineOfSight a method_58696 + p 0 level + p 1 pos + p 2 targetPos + m (Lnet/minecraft/core/BlockPos;DLnet/minecraft/world/entity/player/Player;)Z method_56721 a method_56721 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/animal/Sheep;)Z method_58697 a method_58697 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z method_58698 a method_58698 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_56722 b method_56722 + m (Lnet/minecraft/core/BlockPos;DLnet/minecraft/world/entity/player/Player;)Z method_56723 b method_56723 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z method_58699 b method_58699 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_55155 c method_55155 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector dse$a net/minecraft/class_8962$class_9198 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; SELECT_FROM_LEVEL a field_48862 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_56724 + p 1 level + p 2 typeTest + p 3 boundingBox + p 4 predicate + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Predicate;)Ljava/util/List; getPlayers a method_56725 + p 1 level + p 2 predicate + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; onlySelectPlayer a method_56726 + p 0 player + m (Ljava/util/List;)Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; onlySelectPlayers a method_56727 + p 0 players + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector$1 dse$a$1 net/minecraft/class_8962$class_9198$1 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector$2 dse$a$2 net/minecraft/class_8962$class_9198$2 + f Ljava/util/List; val$players b field_48863 + m (Ljava/util/List;)V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner dsf net/minecraft/class_8963 + f Ljava/lang/String; NORMAL_CONFIG_TAG_NAME a field_50177 + f Ljava/lang/String; OMINOUS_CONFIG_TAG_NAME b field_50178 + f I DETECT_PLAYER_SPAWN_BUFFER c field_47358 + f I DEFAULT_TARGET_COOLDOWN_LENGTH d field_50179 + f I DEFAULT_PLAYER_SCAN_RANGE e field_50180 + f I MAX_MOB_TRACKING_DISTANCE f field_47359 + f I MAX_MOB_TRACKING_DISTANCE_SQR g field_47360 + f F SPAWNING_AMBIENT_SOUND_CHANCE h field_47361 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; normalConfig i field_50181 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; ominousConfig j field_50182 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData; data k field_47363 + f I requiredPlayerRange l field_50183 + f I targetCooldownLength m field_50184 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor; stateAccessor n field_47364 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector o field_47365 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector p field_48864 + f Z overridePeacefulAndMobSpawnRule q field_47366 + f Z isOminous r field_50185 + m ()Lcom/mojang/serialization/Codec; codec a method_55156 + m (DDDLnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_55157 a method_55157 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V applyOminous a method_58700 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V ejectReward a method_55159 + p 1 level + p 2 pos + p 3 lootTable + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Z shouldMobBeUntracked a method_55160 + p 0 level + p 1 pos + p 2 uuid + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Z)V tickServer a method_55171 + p 1 level + p 2 pos + p 3 isOminous + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55161 a method_55161 + m (Lnet/minecraft/world/level/Level;)Z canSpawnInLevel a method_55162 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)V setState a method_55163 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z inLineOfSight a method_55164 + p 0 level + p 1 spawnerPos + p 2 mobPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V addBecomeOminousParticles a method_58701 + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/particles/ParticleOptions;)V addDetectPlayerParticles a method_55167 + p 0 level + p 1 pos + p 2 random + p 3 type + p 4 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/SimpleParticleType;)V addSpawnParticles a method_55166 + p 0 level + p 1 pos + p 2 random + p 3 particleType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V tickClient a method_55165 + p 1 level + p 2 pos + p 3 isOminous + m (Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;)V setPlayerDetector a method_55168 + p 1 playerDetector + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Ljava/lang/Integer;Ljava/lang/Integer;)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; method_55169 a method_55169 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getConfig b method_55170 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V removeOminous b method_58702 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Z method_55172 b method_55172 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V addEjectItemParticles b method_55173 + p 0 level + p 1 pos + p 2 random + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getNormalConfig c method_58703 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; spawnMob c method_55158 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getOminousConfig d method_58704 + m ()Z isOminous e method_58705 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData; getData f method_55174 + m ()I getTargetCooldownLength g method_58706 + m ()I getRequiredPlayerRange h method_58707 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; getState i method_55175 + m ()V markUpdated j method_55176 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; getPlayerDetector k method_55177 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; getEntitySelector l method_56728 + m ()V overridePeacefulAndMobSpawnRule m method_55178 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getOminousConfigForSerialization n method_58708 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + p 1 stateAccessor + p 2 playerDetector + p 3 entitySelector + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;IILnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + p 1 normalConfig + p 2 ominousConfig + p 3 data + p 4 targetCooldownLength + p 5 requiredPlayerRange + p 6 stateAccessor + p 7 playerDetector + p 8 entitySelector + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle dsf$a net/minecraft/class_8963$class_9474 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; NORMAL a field_50186 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; OMINOUS b field_50187 + f Lnet/minecraft/core/particles/SimpleParticleType; particleType c field_50188 + f [Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; $VALUES d field_50189 + m ()I encode a method_58709 + m (I)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; decode a method_58710 + p 0 id + m ()[Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; $values b method_58711 + m (Ljava/lang/String;ILnet/minecraft/core/particles/SimpleParticleType;)V + p 3 particleType + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor dsf$b net/minecraft/class_8963$class_8964 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)V setState a method_55146 + p 1 level + p 2 state + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; getState d method_55151 + m ()V markUpdated f method_55152 +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig dsg net/minecraft/class_8965 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; DEFAULT a field_47367 + f Lcom/mojang/serialization/Codec; CODEC b field_47368 + f I spawnRange c comp_2103 + f F totalMobs d comp_2104 + f F simultaneousMobs e comp_2105 + f F totalMobsAddedPerPlayer f comp_2106 + f F simultaneousMobsAddedPerPlayer g comp_2107 + f I ticksBetweenSpawn h comp_2108 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentialsDefinition i comp_2110 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; lootTablesToEject j comp_2111 + f Lnet/minecraft/resources/ResourceKey; itemsToDropWhenOminous k comp_2552 + m ()J ticksBetweenItemSpawners a method_58712 + m (I)I calculateTargetTotalMobs a method_55179 + p 1 players + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55180 a method_55180 + m ()I spawnRange b comp_2103 + m (I)I calculateTargetSimultaneousMobs b method_55181 + p 1 players + m ()F totalMobs c comp_2104 + m ()F simultaneousMobs d comp_2105 + m ()F totalMobsAddedPerPlayer e comp_2106 + m ()F simultaneousMobsAddedPerPlayer f comp_2107 + m ()I ticksBetweenSpawn g comp_2108 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentialsDefinition h comp_2110 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; lootTablesToEject i comp_2111 + m ()Lnet/minecraft/resources/ResourceKey; itemsToDropWhenOminous j comp_2552 + m (IFFFFILnet/minecraft/util/random/SimpleWeightedRandomList;Lnet/minecraft/util/random/SimpleWeightedRandomList;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData dsh net/minecraft/class_8966 + f Ljava/lang/String; TAG_SPAWN_DATA a field_47369 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_47370 + f Ljava/util/Set; detectedPlayers c field_47371 + f Ljava/util/Set; currentMobs d field_47372 + f J cooldownEndsAt e field_47373 + f J nextMobSpawnsAt f field_47374 + f I totalMobsSpawned g field_47375 + f Ljava/util/Optional; nextSpawnData h field_47376 + f Ljava/util/Optional; ejectingLootTable i field_47377 + f Lnet/minecraft/world/entity/Entity; displayEntity j field_47379 + f D spin k field_47380 + f D oSpin l field_47381 + f Ljava/lang/String; TAG_NEXT_MOB_SPAWNS_AT m field_47382 + f I DELAY_BETWEEN_PLAYER_SCANS n field_50190 + f I TRIAL_OMEN_PER_BAD_OMEN_LEVEL o field_50191 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; dispensing p field_50192 + m ()V reset a method_55182 + m (Lnet/minecraft/server/level/ServerLevel;)Z isCooldownFinished a method_55183 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;FI)Z isReadyToOpenShutter a method_55184 + p 1 level + p 2 delay + p 3 targetCooldownLength + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V method_58713 a method_58713 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;)V method_60788 a method_60788 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;I)Z isReadyToSpawnNextMob a method_55185 + p 1 level + p 2 config + p 3 players + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/random/SimpleWeightedRandomList; getDispensingItems a method_58714 + p 1 level + p 2 config + p 3 pos + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)Ljava/util/Optional; findPlayerWithOminousEffect a method_60789 + p 0 level + p 1 players + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)J lowResolutionPosition a method_58715 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V tryDetectPlayers a method_55186 + p 1 level + p 2 pos + p 3 spawner + m (Lnet/minecraft/world/entity/player/Player;)V transformBadOmenIntoTrialOmen a method_58716 + p 0 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55187 a method_55187 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;)V resetAfterBecomingOminous a method_58717 + p 1 spawner + p 2 level + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;)Z hasMobToSpawn a method_55197 + p 1 trialSpawner + p 2 random + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/EntityType;)V setEntityId a method_55189 + p 1 spawner + p 2 random + p 3 entityType + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)Lnet/minecraft/world/entity/Entity; getOrCreateDisplayEntity a method_55190 + p 1 spawner + p 2 level + p 3 spawnerState + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;I)Z hasFinishedSpawningAllMobs a method_55192 + p 1 config + p 2 players + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; method_55193 a method_55193 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)Lnet/minecraft/nbt/CompoundTag; getUpdateTag a method_55194 + p 1 spawnerState + m (Lnet/minecraft/core/BlockPos;)I countAdditionalPlayers a method_55195 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/SpawnData;)V method_55196 a method_55196 + m ()Z haveAllCurrentMobsDied b method_55200 + m (Lnet/minecraft/server/level/ServerLevel;FI)Z isReadyToEjectItems b method_55198 + p 1 level + p 2 delay + p 3 targetCooldownLength + m (Lnet/minecraft/world/entity/player/Player;)Lcom/mojang/datafixers/util/Pair; method_60790 b method_60790 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/SpawnData; getOrCreateNextSpawnData b method_55188 + p 1 spawner + p 2 random + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; method_55199 b method_55199 + m ()D getSpin c method_55202 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Integer; method_55201 c method_55201 + m ()D getOSpin d method_55204 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Long; method_55203 d method_55203 + m ()Ljava/lang/IllegalStateException; method_55206 e method_55206 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Long; method_55205 e method_55205 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Set; method_55207 f method_55207 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Set; method_55208 g method_55208 + m ()V + m (Ljava/util/Set;Ljava/util/Set;JJILjava/util/Optional;Ljava/util/Optional;)V + p 1 detectedPlayers + p 2 currentMobs + p 3 cooldownEndsAt + p 5 nextMobSpawnsAt + p 7 totalMobsSpawned + p 8 nextSpawnData + p 9 ejectingLootTable + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState dsi net/minecraft/class_8967 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; INACTIVE a field_47383 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; WAITING_FOR_PLAYERS b field_47384 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; ACTIVE c field_47385 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; WAITING_FOR_REWARD_EJECTION d field_47386 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; EJECTING_REWARD e field_47387 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; COOLDOWN f field_47388 + f F DELAY_BEFORE_EJECT_AFTER_KILLING_LAST_MOB g field_47389 + f I TIME_BETWEEN_EACH_EJECTION h field_47390 + f Ljava/lang/String; name i field_47391 + f I lightLevel j field_47392 + f D spinningMobSpeed k field_47393 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; particleEmission l field_47394 + f Z isCapableOfSpawning m field_47395 + f [Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; $VALUES n field_47396 + m ()I lightLevel a method_55209 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/phys/Vec3;)V method_58718 a method_58718 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Z timeToSpawnItemSpawner a method_58719 + p 1 level + p 2 spawnerData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V spawnOminousOminousItemSpawner a method_58720 + p 1 level + p 2 pos + p 3 spawner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; calculatePositionToSpawnSpawner a method_58721 + p 0 level + p 1 pos + p 2 spawner + p 3 spawnerData + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; calculatePositionAbove a method_58722 + p 0 entity + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V emitParticles a method_55210 + p 1 level + p 2 pos + p 3 isOminous + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V method_55211 a method_55211 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Ljava/util/UUID;)V method_55212 a method_55212 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_55213 a method_55213 + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; selectEntityToSpawnItemAbove a method_58725 + p 0 player + p 1 currentMobs + p 2 spawner + p 3 pos + p 4 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; tickAndGetNext a method_55214 + p 1 pos + p 2 spawner + p 3 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/entity/Entity;)Z method_58723 a method_58723 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/entity/player/Player;)Z method_58724 a method_58724 + m ()D spinningMobSpeed b method_55215 + m ()Z hasSpinningMob d method_55216 + m ()Z isCapableOfSpawning e method_55217 + m ()[Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; $values f method_55218 + m (Ljava/lang/String;ILjava/lang/String;ILnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission;DZ)V + p 3 name + p 4 lightLevel + p 5 particleEmission + p 6 spinningMobSpeed + p 8 isCapableOfSpawning + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$LightLevel dsi$a net/minecraft/class_8967$class_8968 + f I UNLIT a field_47398 + f I HALF_LIT b field_47399 + f I LIT c field_47400 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission dsi$b net/minecraft/class_8967$class_8969 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; NONE a field_47401 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; SMALL_FLAMES b field_47402 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; FLAMES_AND_SMOKE c field_47403 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; SMOKE_INSIDE_AND_TOP_FACE d field_47404 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55219 a method_55219 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V addParticle a method_55220 + p 0 particleType + p 1 pos + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55221 b method_55221 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55222 c method_55222 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55223 d method_55223 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$SpinningMob dsi$c net/minecraft/class_8967$class_8970 + f D NONE a field_47405 + f D SLOW b field_47406 + f D FAST c field_47407 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/package-info dsj net/minecraft/class_8971 +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity dsk net/minecraft/class_9199 + f Lorg/slf4j/Logger; LOGGER a field_48865 + f Lnet/minecraft/world/level/block/entity/vault/VaultServerData; serverData b field_48866 + f Lnet/minecraft/world/level/block/entity/vault/VaultSharedData; sharedData c field_48867 + f Lnet/minecraft/world/level/block/entity/vault/VaultClientData; clientData d field_48868 + f Lnet/minecraft/world/level/block/entity/vault/VaultConfig; config e field_48869 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; encode a method_56729 + p 0 codec + p 1 value + p 2 levelRegistry + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;)V setConfig a method_56730 + p 1 config + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/CompoundTag;)V method_56734 a method_56734 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultServerData; getServerData b method_56731 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_56732 b method_56732 + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;)V method_56733 b method_56733 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultSharedData; getSharedData c method_56735 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultClientData; getClientData d method_56736 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultConfig; getConfig f method_56737 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity$Client dsk$a net/minecraft/class_9199$class_9200 + f I PARTICLE_TICK_RATE a field_48870 + f F IDLE_PARTICLE_CHANCE b field_48871 + f F AMBIENT_SOUND_CHANCE c field_48872 + f I ACTIVATION_PARTICLE_COUNT d field_48873 + f I DEACTIVATION_PARTICLE_COUNT e field_48874 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/player/Player;)V emitConnectionParticlesForPlayer a method_56738 + p 0 level + p 1 pos + p 2 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V playIdleSounds a method_56747 + p 0 level + p 1 pos + p 2 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/particles/ParticleOptions;)V emitIdleParticles a method_56740 + p 0 level + p 1 pos + p 2 sharedData + p 3 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultClientData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V tick a method_56741 + p 0 level + p 1 pos + p 2 state + p 3 clientData + p 4 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V emitConnectionParticlesForNearbyPlayers a method_56748 + p 0 level + p 1 pos + p 2 state + p 3 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/particles/ParticleOptions;)V emitActivationParticles a method_56742 + p 0 level + p 1 pos + p 2 state + p 3 sharedData + p 4 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;)V emitDeactivationParticles a method_56739 + p 0 level + p 1 pos + p 2 particle + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Z shouldDisplayActiveEffects a method_56743 + p 0 sharedData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPosCenterOfCage a method_56744 + p 0 pos + p 1 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/world/entity/player/Player;)Z isWithinConnectionRange a method_56745 + p 0 pos + p 1 sharedData + p 2 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/Vec3; keyholePos a method_56746 + p 0 pos + p 1 facing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPosInsideCage b method_56749 + p 0 pos + p 1 random + m ()V +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity$Server dsk$b net/minecraft/class_9199$class_9201 + f I UNLOCKING_DELAY_TICKS a field_48875 + f I DISPLAY_CYCLE_TICK_RATE b field_48876 + f I INSERT_FAIL_SOUND_BUFFER_TICKS c field_48877 + m (JLnet/minecraft/world/level/block/entity/vault/VaultState;)Z shouldCycleDisplayItem a method_56750 + p 0 gameTime + p 2 state + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Ljava/util/List; resolveItemsToEject a method_56751 + p 0 level + p 1 config + p 2 pos + p 3 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playInsertFailSound a method_56752 + p 0 level + p 1 serverData + p 2 pos + p 3 sound + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/BlockPos;)V cycleDisplayItemFromLootTable a method_56753 + p 0 level + p 1 state + p 2 config + p 3 sharedData + p 4 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Ljava/util/List;)V unlock a method_56754 + p 0 level + p 1 state + p 2 pos + p 3 config + p 4 serverData + p 5 sharedData + p 6 itemsToEject + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/item/ItemStack; getRandomDisplayItemFromLootTable a method_56755 + p 0 level + p 1 pos + p 2 lootTable + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V tick a method_56756 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 serverData + p 5 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V tryInsertKey a method_56757 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 serverData + p 5 sharedData + p 6 player + p 7 stack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V setVaultState a method_56758 + p 0 level + p 1 pos + p 2 oldState + p 3 newState + p 4 config + p 5 sharedData + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/item/ItemStack;)Z isValidToInsert a method_56759 + p 0 config + p 1 stack + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultState;)Z canEjectReward a method_56760 + p 0 config + p 1 state + m ()V +c net/minecraft/world/level/block/entity/vault/VaultClientData dsl net/minecraft/class_9202 + f F ROTATION_SPEED a field_48878 + f F currentSpin b field_48879 + f F previousSpin c field_48880 + m ()F currentSpin a method_56761 + m ()F previousSpin b method_56762 + m ()V updateDisplayItemSpin c method_56763 + m ()V +c net/minecraft/world/level/block/entity/vault/VaultConfig dsm net/minecraft/class_9203 + f Ljava/lang/String; TAG_NAME a field_48881 + f Lnet/minecraft/world/level/block/entity/vault/VaultConfig; DEFAULT b field_48882 + f Lcom/mojang/serialization/Codec; CODEC c field_48883 + f Lnet/minecraft/resources/ResourceKey; lootTable d comp_2305 + f D activationRange e comp_2306 + f D deactivationRange f comp_2307 + f Lnet/minecraft/world/item/ItemStack; keyItem g comp_2308 + f Ljava/util/Optional; overrideLootTableToDisplay h comp_2309 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector i comp_2310 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector j comp_2311 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector a comp_2310 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56764 a method_56764 + m ()Lnet/minecraft/resources/ResourceKey; lootTable b comp_2305 + m ()D activationRange c comp_2306 + m ()D deactivationRange d comp_2307 + m ()Lnet/minecraft/world/item/ItemStack; keyItem e comp_2308 + m ()Ljava/util/Optional; overrideLootTableToDisplay f comp_2309 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector g comp_2311 + m ()Lcom/mojang/serialization/DataResult; validate h method_56765 + m ()Ljava/lang/String; method_56766 i method_56766 + m ()V + m (Lnet/minecraft/resources/ResourceKey;DDLnet/minecraft/world/item/ItemStack;Ljava/util/Optional;)V + p 1 lootTable + p 2 activationRange + p 4 deactivationRange + p 6 keyItem + p 7 overrideLootTableToDisplay + m (Lnet/minecraft/resources/ResourceKey;DDLnet/minecraft/world/item/ItemStack;Ljava/util/Optional;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultServerData dsn net/minecraft/class_9204 + f Ljava/lang/String; TAG_NAME a field_48884 + f Lcom/mojang/serialization/Codec; CODEC b field_48885 + f Z isDirty c field_48886 + f I MAX_REWARD_PLAYERS d field_48887 + f Ljava/util/Set; rewardedPlayers e field_48888 + f J stateUpdatingResumesAt f field_48889 + f Ljava/util/List; itemsToEject g field_48890 + f J lastInsertFailTimestamp h field_48891 + f I totalEjectionsNeeded i field_48892 + m ()J getLastInsertFailTimestamp a method_56767 + m (J)V setLastInsertFailTimestamp a method_56768 + p 1 lastInsertFailTimestamp + m (Lnet/minecraft/world/entity/player/Player;)Z hasRewardedPlayer a method_56769 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56770 a method_56770 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)V set a method_56771 + p 1 other + m (Ljava/util/List;)V setItemsToEject a method_56772 + p 1 itemsToEject + m ()Ljava/util/Set; getRewardedPlayers b method_56773 + m (J)V pauseStateUpdatingUntil b method_56774 + p 1 time + m (Lnet/minecraft/world/entity/player/Player;)V addToRewardedPlayers b method_56775 + p 1 player + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/lang/Integer; method_56776 b method_56776 + m ()J stateUpdatingResumesAt c method_56777 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/util/List; method_56778 c method_56778 + m ()Ljava/util/List; getItemsToEject d method_56779 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/lang/Long; method_56780 d method_56780 + m ()V markEjectionFinished e method_56781 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/util/Set; method_56782 e method_56782 + m ()Lnet/minecraft/world/item/ItemStack; getNextItemToEject f method_56783 + m ()Lnet/minecraft/world/item/ItemStack; popNextItemToEject g method_56784 + m ()F ejectionProgress h method_56785 + m ()V markChanged i method_56786 + m (Ljava/util/Set;JLjava/util/List;I)V + p 1 rewardedPlayers + p 2 stateUpdatingResumesAt + p 4 itemsToEject + p 5 totalEjectionsNeeded + m ()V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultSharedData dso net/minecraft/class_9205 + f Ljava/lang/String; TAG_NAME a field_48893 + f Lcom/mojang/serialization/Codec; CODEC b field_48894 + f Z isDirty c field_48895 + f Lnet/minecraft/world/item/ItemStack; displayItem d field_48896 + f Ljava/util/Set; connectedPlayers e field_48897 + f D connectedParticlesRange f field_48898 + m ()Lnet/minecraft/world/item/ItemStack; getDisplayItem a method_56787 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;D)V updateConnectedPlayersWithinRange a method_56788 + p 1 level + p 2 pos + p 3 serverData + p 4 config + p 5 deactivationRange + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56789 a method_56789 + m (Lnet/minecraft/world/item/ItemStack;)V setDisplayItem a method_56790 + p 1 displayItem + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Ljava/util/UUID;)Z method_56791 a method_56791 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V set a method_56792 + p 1 other + m ()Z hasDisplayItem b method_56793 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Ljava/lang/Double; method_56794 b method_56794 + m ()Z hasConnectedPlayers c method_56795 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Ljava/util/Set; method_56796 c method_56796 + m ()Ljava/util/Set; getConnectedPlayers d method_56797 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Lnet/minecraft/world/item/ItemStack; method_56798 d method_56798 + m ()D connectedParticlesRange e method_56799 + m ()V markDirty f method_56800 + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/Set;D)V + p 1 displayItem + p 2 connectedPlayers + p 3 connectedParticlesRange + m ()V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultState dsp net/minecraft/class_9206 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; INACTIVE a field_48899 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; ACTIVE b field_48900 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; UNLOCKING c field_48901 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; EJECTING d field_48902 + f I UPDATE_CONNECTED_PLAYERS_TICK_RATE e field_48903 + f I DELAY_BETWEEN_EJECTIONS_TICKS f field_48904 + f I DELAY_AFTER_LAST_EJECTION_TICKS g field_48905 + f I DELAY_BEFORE_FIRST_EJECTION_TICKS h field_48906 + f Ljava/lang/String; stateName i field_48907 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; lightLevel j field_48908 + f [Lnet/minecraft/world/level/block/entity/vault/VaultState; $VALUES k field_48909 + m ()I lightLevel a method_56801 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;F)V ejectResultItem a method_56802 + p 1 level + p 2 pos + p 3 stack + p 4 ejectionProgress + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Lnet/minecraft/world/level/block/entity/vault/VaultState; tickAndGetNext a method_56803 + p 1 level + p 2 pos + p 3 config + p 4 serverData + p 5 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;D)Lnet/minecraft/world/level/block/entity/vault/VaultState; updateStateForConnectedPlayers a method_56804 + p 0 level + p 1 pos + p 2 config + p 3 severData + p 4 sharedData + p 5 deactivationRange + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V onExit a method_56808 + p 1 level + p 2 pos + p 3 config + p 4 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Z)V onEnter a method_56805 + p 1 level + p 2 pos + p 3 config + p 4 sharedData + p 5 isOminous + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Z)V onTransition a method_56806 + p 1 level + p 2 pos + p 3 state + p 4 config + p 5 sharedData + p 6 isOminous + m ()[Lnet/minecraft/world/level/block/entity/vault/VaultState; $values b method_56807 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V + p 3 stateName + p 4 lightLevel + m ()V +c net/minecraft/world/level/block/entity/vault/VaultState$1 dsp$1 net/minecraft/class_9206$1 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$2 dsp$2 net/minecraft/class_9206$2 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$3 dsp$3 net/minecraft/class_9206$3 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$4 dsp$4 net/minecraft/class_9206$4 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$LightLevel dsp$a net/minecraft/class_9206$class_9207 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; HALF_LIT a field_48911 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; LIT b field_48912 + f I value c field_48913 + f [Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; $VALUES d field_48914 + m ()[Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; $values a method_56809 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/world/level/block/entity/vault/package-info dsq net/minecraft/class_9208 +c net/minecraft/world/level/block/grower/TreeGrower dsr net/minecraft/class_8813 + f Lcom/mojang/serialization/Codec; CODEC a field_46510 + f Lnet/minecraft/world/level/block/grower/TreeGrower; OAK b field_46511 + f Lnet/minecraft/world/level/block/grower/TreeGrower; SPRUCE c field_46512 + f Lnet/minecraft/world/level/block/grower/TreeGrower; MANGROVE d field_46513 + f Lnet/minecraft/world/level/block/grower/TreeGrower; AZALEA e field_46514 + f Lnet/minecraft/world/level/block/grower/TreeGrower; BIRCH f field_46515 + f Lnet/minecraft/world/level/block/grower/TreeGrower; JUNGLE g field_46516 + f Lnet/minecraft/world/level/block/grower/TreeGrower; ACACIA h field_46517 + f Lnet/minecraft/world/level/block/grower/TreeGrower; CHERRY i field_46518 + f Lnet/minecraft/world/level/block/grower/TreeGrower; DARK_OAK j field_46519 + f Ljava/util/Map; GROWERS k field_46520 + f Ljava/lang/String; name l field_46521 + f F secondaryChance m field_46522 + f Ljava/util/Optional; megaTree n field_46523 + f Ljava/util/Optional; secondaryMegaTree o field_46524 + f Ljava/util/Optional; tree p field_46525 + f Ljava/util/Optional; secondaryTree q field_46526 + f Ljava/util/Optional; flowers r field_46527 + f Ljava/util/Optional; secondaryFlowers s field_46528 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z growTree a method_54085 + p 1 level + p 2 chunkGenerator + p 3 pos + p 4 state + p 5 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceKey; getConfiguredMegaFeature a method_54086 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/resources/ResourceKey; getConfiguredFeature a method_54087 + p 1 random + p 2 flowers + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z hasFlowers a method_54088 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/grower/TreeGrower;)Ljava/lang/String; method_54089 a method_54089 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;II)Z isTwoByTwoSapling a method_54090 + p 0 state + p 1 level + p 2 pos + p 3 xOffset + p 4 yOffset + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 name + p 2 megaTree + p 3 tree + p 4 flowers + m (Ljava/lang/String;FLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 name + p 2 secondaryChance + p 3 megaTree + p 4 secondaryMegaTree + p 5 tree + p 6 secondaryTree + p 7 flowers + p 8 secondaryFlowers + m ()V +c net/minecraft/world/level/block/grower/package-info dss net/minecraft/class_6091 +c net/minecraft/world/level/block/package-info dst net/minecraft/class_6092 +c net/minecraft/world/level/block/piston/MovingPistonBlock dsu net/minecraft/class_2667 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46529 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_12196 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE c field_12197 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity; getBlockEntity a method_11488 + p 1 blockReader + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;ZZ)Lnet/minecraft/world/level/block/entity/BlockEntity; newMovingBlockEntity a method_11489 + p 0 pos + p 1 blockState + p 2 movedState + p 3 direction + p 4 extending + p 5 isSourcePiston + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/piston/PistonBaseBlock dsv net/minecraft/class_2665 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46530 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EXTENDED c field_12191 + f I TRIGGER_EXTEND d field_31373 + f I TRIGGER_CONTRACT e field_31374 + f I TRIGGER_DROP f field_31375 + f F PLATFORM_THICKNESS g field_31376 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB h field_12188 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB i field_12184 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_12186 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB k field_12189 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB l field_12185 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB m field_12190 + f Z isSticky n field_12187 + c Whether this is a sticky piston + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54091 a method_54091 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkIfExtend a method_11483 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Z moveBlocks a method_11481 + p 1 level + p 2 pos + p 3 facing + p 4 extending + m (Lnet/minecraft/world/level/SignalGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z getNeighborSignal a method_11482 + p 1 signalGetter + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/piston/PistonBaseBlock;)Ljava/lang/Boolean; method_54092 a method_54092 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Z isPushable a method_11484 + c Checks if the piston can push the given BlockState. + p 0 state + p 1 level + p 2 pos + p 3 movementDirection + p 4 allowDestroy + p 5 pistonFacing + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 isSticky + p 2 properties + m ()V +c net/minecraft/world/level/block/piston/PistonBaseBlock$1 dsv$1 net/minecraft/class_2665$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_12193 + f [I $SwitchMap$net$minecraft$world$level$material$PushReaction b field_12192 + m ()V +c net/minecraft/world/level/block/piston/PistonHeadBlock dsw net/minecraft/class_2671 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_ARM_AABB F field_12226 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_ARM_AABB G field_12221 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_ARM_AABB H field_12229 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_ARM_AABB I field_12218 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_ARM_AABB J field_12223 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_UP_ARM_AABB K field_12231 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_DOWN_ARM_AABB L field_12217 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_SOUTH_ARM_AABB M field_12216 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_NORTH_ARM_AABB N field_12225 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_EAST_ARM_AABB O field_12219 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_WEST_ARM_AABB P field_12212 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES_SHORT Q field_26660 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES_LONG R field_26661 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46531 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE c field_12224 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHORT d field_12227 + f F PLATFORM e field_31377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB f field_12222 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB g field_12214 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_12228 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_12213 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB j field_12230 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB k field_12220 + f F AABB_OFFSET l field_31378 + f F EDGE_MIN m field_31379 + f F EDGE_MAX n field_31380 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_ARM_AABB o field_12215 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z isFittingBase a method_26980 + p 1 baseState + p 2 extendedState + m (Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape a method_11520 + p 0 direction + p 1 shortArm + m (Z)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_31019 + p 0 extended + m (ZLnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_31020 a method_31020 + m (I)[Lnet/minecraft/world/phys/shapes/VoxelShape; method_31021 b method_31021 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/piston/PistonHeadBlock$1 dsw$1 net/minecraft/class_2671$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_12232 + m ()V +c net/minecraft/world/level/block/piston/PistonMath dsx net/minecraft/class_4623 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/Direction;D)Lnet/minecraft/world/phys/AABB; getMovementArea a method_23362 + p 0 bounds + p 1 dir + p 2 delta + m ()V +c net/minecraft/world/level/block/piston/PistonMath$1 dsx$1 net/minecraft/class_4623$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_21215 + m ()V +c net/minecraft/world/level/block/piston/PistonMovingBlockEntity dsy net/minecraft/class_2669 + f D TICK_MOVEMENT a field_31381 + f I TICKS_TO_EXTEND b field_31382 + f D PUSH_OFFSET c field_31383 + f Lnet/minecraft/world/level/block/state/BlockState; movedState d field_12204 + f Lnet/minecraft/core/Direction; direction e field_12201 + f Z extending f field_12203 + c Whether this piston is extending. + f Z isSourcePiston g field_12202 + f Ljava/lang/ThreadLocal; NOCLIP h field_12205 + f F progress i field_12207 + f F progressO j field_12206 + c The extension / retraction progress + f J lastTicked k field_12208 + f I deathTicks l field_26705 + m (F)F getProgress a method_11499 + c @return interpolated progress value (between lastProgress and progress) given the partialTicks + p 1 partialTicks + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape a method_11512 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V moveCollidedEntities a method_11503 + p 0 level + p 1 pos + p 2 partialTick + p 3 piston + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V tick a method_31707 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)Z matchesStickyCritera a method_23671 + p 0 box + p 1 entity + p 2 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z method_23673 a method_23673 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/AABB;)D getMovement a method_11497 + p 0 headShape + p 1 direction + p 2 facing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;D)V fixEntityWithinPistonBase a method_11514 + p 0 pos + p 1 entity + p 2 dir + p 3 progress + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)Lnet/minecraft/world/phys/AABB; moveByPositionAndProgress a method_11500 + p 0 pos + p 1 aabb + p 2 pistonMovingBlockEntity + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/Entity;DLnet/minecraft/core/Direction;)V moveEntityByPiston a method_23672 + p 0 noClipDirection + p 1 entity + p 2 progress + p 4 direction + m ()Z isExtending b method_11501 + c @return whether this piston is extending + m (F)F getXOff b method_11494 + p 1 partialTicks + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V moveStuckEntities b method_23674 + p 0 level + p 1 pos + p 2 partialTick + p 3 piston + m ()Lnet/minecraft/core/Direction; getDirection c method_11498 + m (F)F getYOff c method_11511 + p 1 partialTicks + m ()Z isSourcePiston d method_11515 + m (F)F getZOff d method_11507 + p 1 partialTicks + m (F)F getExtendedProgress e method_11504 + p 1 progress + m ()Lnet/minecraft/core/Direction; getMovementDirection f method_11506 + m ()Lnet/minecraft/world/level/block/state/BlockState; getMovedState j method_11495 + m ()V finalTick k method_11513 + c Removes the piston's BlockEntity and stops any movement + m ()J getLastTicked l method_11508 + m ()Lnet/minecraft/world/level/block/state/BlockState; getCollisionRelatedBlockState u method_11496 + m ()Z isStickyForEntities v method_23364 + m ()Lnet/minecraft/core/Direction; method_21866 w method_21866 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;ZZ)V + p 1 pos + p 2 blockState + p 3 movedState + p 4 direction + p 5 extending + p 6 isSourcePiston + m ()V +c net/minecraft/world/level/block/piston/PistonMovingBlockEntity$1 dsy$1 net/minecraft/class_2669$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_12210 + f [I $SwitchMap$net$minecraft$core$Direction b field_21467 + m ()V +c net/minecraft/world/level/block/piston/PistonStructureResolver dsz net/minecraft/class_2674 + f I MAX_PUSH_DEPTH a field_31384 + f Lnet/minecraft/world/level/Level; level b field_12249 + f Lnet/minecraft/core/BlockPos; pistonPos c field_12250 + f Z extending d field_12247 + f Lnet/minecraft/core/BlockPos; startPos e field_12244 + f Lnet/minecraft/core/Direction; pushDirection f field_12243 + f Ljava/util/List; toPush g field_12245 + c All block positions to be moved by the piston + f Ljava/util/List; toDestroy h field_12246 + c All blocks to be destroyed by the piston + f Lnet/minecraft/core/Direction; pistonDirection i field_12248 + m ()Z resolve a method_11537 + m (II)V reorderListAtCollision a method_11539 + p 1 offsets + p 2 index + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSticky a method_23367 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z canStickToEachOther a method_23675 + p 0 state1 + p 1 state2 + m (Lnet/minecraft/core/BlockPos;)Z addBranchingBlocks a method_11538 + p 1 fromPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z addBlockLine a method_11540 + p 1 originPos + p 2 direction + m ()Lnet/minecraft/core/Direction; getPushDirection b method_35299 + m ()Ljava/util/List; getToPush c method_11541 + c @return all block positions to be moved by the piston + m ()Ljava/util/List; getToDestroy d method_11536 + c @return all block positions to be destroyed by the piston + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)V + p 1 level + p 2 pistonPos + p 3 pistonDirection + p 4 extending +c net/minecraft/world/level/block/piston/package-info dta net/minecraft/class_6093 +c net/minecraft/world/level/block/state/BlockBehaviour dtb net/minecraft/class_4970 + f [Lnet/minecraft/core/Direction; UPDATE_SHAPE_ORDER aF field_23157 + f Z hasCollision aG field_23159 + f F explosionResistance aH field_23160 + f Z isRandomlyTicking aI field_23161 + c Whether this blocks receives random ticks + f Lnet/minecraft/world/level/block/SoundType; soundType aJ field_23162 + f F friction aK field_23163 + c Determines how much velocity is maintained while moving on top of this block + f F speedFactor aL field_23164 + f F jumpFactor aM field_23165 + f Z dynamicShape aN field_23154 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures aO field_40337 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; properties aP field_23155 + f Lnet/minecraft/resources/ResourceKey; drops aQ field_23156 + m ()Lcom/mojang/serialization/MapCodec; codec a method_53969 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/ItemInteractionResult; useItemOn a method_55765 + p 1 stack + p 2 state + p 3 level + p 4 pos + p 5 player + p 6 hand + p 7 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/projectile/Projectile;)V onProjectileHit a method_19286 + p 1 level + p 2 state + p 3 hit + p 4 projectile + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V tick a method_9588 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Z)V spawnAfterBreak a method_9565 + c Perform side-effects from block dropping, such as creating silverfish + p 1 state + p 2 level + p 3 pos + p 4 stack + p 5 dropExperience + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroyProgress a method_9594 + c Get the hardness of this Block relative to the ability of the given player + p 1 state + p 2 player + p 3 level + p 4 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/context/BlockPlaceContext;)Z canBeReplaced a method_9616 + p 1 state + p 2 useContext + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getInteractionShape a method_9584 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape a method_9530 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal a method_9524 + c Returns the signal this block emits in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given.\n + p 1 state + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getAnalogOutputSignal a method_9572 + c Returns the analog signal this block emits. This is the signal a comparator can read from it.\n + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;II)Z triggerEvent a method_9592 + c Called on server when {@link net.minecraft.world.level.Level#blockEvent} is called. If server returns true, then also called on the client. On the Server, this may perform additional changes to the world, like pistons replacing the block with an extended base. On the client, the update may involve replacing block entities or effects such as sounds or particles + p 1 state + p 2 level + p 3 pos + p 4 id + p 5 param + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V entityInside a method_9548 + p 1 state + p 2 level + p 3 pos + p 4 entity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useWithoutItem a method_55766 + p 1 state + p 2 level + p 3 pos + p 4 player + p 5 hitResult + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;Ljava/util/function/BiConsumer;)V onExplosionHit a method_55124 + p 1 state + p 2 level + p 3 pos + p 4 explosion + p 5 dropConsumer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_9612 + p 1 state + p 2 level + p 3 pos + p 4 neighborBlock + p 5 neighborPos + p 6 movedByPiston + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onRemove a method_9536 + p 1 state + p 2 level + p 3 pos + p 4 newState + p 5 movedByPiston + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateIndirectNeighbourShapes a method_9517 + c Updates the shapes of indirect neighbors of this block. This method is analogous to\n{@link net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase#updateNeighbourShapes}\nbut where that method affects the 6 direct neighbors of this block, this method affects\nthe indirect neighbors, if any.\n\n

\nCurrently the only implementation of this method is {@link net.minecraft.world.level.block.RedStoneWireBlock#updateIndirectNeighbourShapes}\nwhere it is used to validate diagonal connections of redstone wire blocks. + p 1 state + p 2 level + p 3 pos + p 4 flags + p 5 recursionLeft + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSurvive a method_9558 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/block/state/BlockState; mirror a method_9569 + c Returns the blockstate with the given mirror of the passed blockstate. If inapplicable, returns the passed blockstate. + p 1 state + p 2 mirror + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotate a method_9598 + c Returns the blockstate with the given rotation from the passed blockstate. If inapplicable, returns the passed blockstate. + p 1 state + p 2 rotation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z skipRendering a method_9522 + p 1 state + p 2 adjacentState + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canBeReplaced a method_22358 + p 1 state + p 2 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/pathfinder/PathComputationType;)Z isPathfindable a method_9516 + p 1 state + p 2 pathComputationType + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/storage/loot/LootParams$Builder;)Ljava/util/List; getDrops a method_9560 + p 1 state + p 2 params + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)J getSeed a method_9535 + c Return a random long to be passed to {@link net.minecraft.client.resources.model.BakedModel#getQuads}, used for random model rotations + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_9559 + c Update the provided state given the provided neighbor direction and neighbor state, returning a new state.\nFor example, fences make their connections to the passed in state if possible, and wet concrete powder immediately returns its solidified counterpart.\nNote that this method should ideally consider only the specific direction passed in. + p 1 state + p 2 direction + p 3 neighborState + p 4 level + p 5 pos + p 6 neighborPos + m (Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_55224 a method_55224 + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54093 a method_54093 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/RenderShape; getRenderShape a_ method_9604 + c The type of render function called. MODEL for mixed tesr and static model, MODELBLOCK_ANIMATED for TESR-only, LIQUID for vanilla liquids, INVISIBLE to skip all rendering + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z propagatesSkylightDown a_ method_9579 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V attack a_ method_9606 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()F getMaxHorizontalOffset av_ method_32913 + m ()F getMaxVerticalOffset ax_ method_37247 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_9514 + c Performs a random tick on a block. + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape b method_9549 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal b method_9603 + c Returns the direct signal this block emits in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given.\n + p 1 state + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/MenuProvider; getMenuProvider b method_17454 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onPlace b method_9615 + p 1 state + p 2 level + p 3 pos + p 4 oldState + p 5 movedByPiston + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; simpleCodec b method_54094 + p 0 factory + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/FluidState; getFluidState b_ method_9545 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockSupportShape b_ method_25959 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isCollisionShapeFullBlock c method_37403 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVisualShape c method_26159 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnalogOutputSignal c_ method_9498 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness d method_9575 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isRandomlyTicking d_ method_9542 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSignalSource e_ method_9506 + c Returns whether this block is capable of emitting redstone signals.\n + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape f method_9571 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z useShapeForLightOcclusion f_ method_9526 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getLightBlock g method_9505 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/SoundType; getSoundType g_ method_9573 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isOcclusionShapeFullBlock h method_42326 + p 1 state + p 2 level + p 3 pos + m ()Lnet/minecraft/world/level/block/Block; asBlock q method_26160 + m ()Lnet/minecraft/world/item/Item; asItem r method_8389 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; properties t method_54095 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; propertiesCodec u method_54096 + m ()Lnet/minecraft/resources/ResourceKey; getLootTable v method_26162 + m ()Lnet/minecraft/world/level/material/MapColor; defaultMapColor w method_26403 + m ()F defaultDestroyTime x method_36555 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$1 dtb$1 net/minecraft/class_4970$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_10659 + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase dtb$a net/minecraft/class_4970$class_4971 + f Z isRandomlyTicking A field_40340 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase$Cache; cache a field_23166 + f I lightEmission b field_23167 + f Z useShapeForLightOcclusion g field_23168 + f Z isAir h field_23169 + f Z ignitedByLava i field_43392 + f Z liquid j field_44480 + f Z legacySolid k field_44624 + f Lnet/minecraft/world/level/material/PushReaction; pushReaction l field_43393 + f Lnet/minecraft/world/level/material/MapColor; mapColor m field_23171 + f F destroySpeed n field_23172 + f Z requiresCorrectToolForDrops o field_25184 + f Z canOcclude p field_23173 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isRedstoneConductor q field_23174 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isSuffocating r field_23175 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isViewBlocking s field_23176 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; hasPostProcess t field_23177 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; emissiveRendering u field_23178 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction; offsetFunction v field_42817 + f Z spawnTerrainParticles w field_40338 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument x field_44625 + f Z replaceable y field_44626 + f Lnet/minecraft/world/level/material/FluidState; fluidState z field_40339 + m ()Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument A method_51364 + m ()Z calculateSolid D method_51365 + m ()V initCache a method_26200 + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_54097 + p 1 block + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V tick a method_26192 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Z)V spawnAfterBreak a method_26180 + p 1 level + p 2 pos + p 3 stack + p 4 dropExperience + m (Lnet/minecraft/tags/TagKey;)Z is a method_26164 + p 1 tag + m (Lnet/minecraft/tags/TagKey;Ljava/util/function/Predicate;)Z is a method_27851 + p 1 tag + p 2 predicate + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroyProgress a method_26165 + p 1 player + p 2 level + p 3 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/ItemInteractionResult; useItemOn a method_55780 + p 1 stack + p 2 level + p 3 player + p 4 hand + p 5 hitResult + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Z canBeReplaced a method_26166 + p 1 useContext + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z propagatesSkylightDown a method_26167 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z entityCanStandOn a method_26168 + p 1 level + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;)Z entityCanStandOnFace a method_26169 + c @return true if the collision box of this state covers the entire upper face of the blockspace + p 1 level + p 2 pos + p 3 entity + p 4 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z isValidSpawn a method_26170 + p 1 level + p 2 pos + p 3 entityType + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape a method_26172 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceOcclusionShape a method_26173 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)Z isFaceSturdy a method_30368 + p 1 level + p 2 pos + p 3 face + p 4 supportType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useWithoutItem a method_55781 + p 1 level + p 2 player + p 3 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; getTicker a method_31708 + p 1 level + p 2 blockEntityType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/projectile/Projectile;)V onProjectileHit a method_26175 + p 1 level + p 2 state + p 3 hit + p 4 projectile + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getAnalogOutputSignal a method_26176 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;II)Z triggerEvent a method_26177 + p 1 level + p 2 pos + p 3 id + p 4 param + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V entityInside a method_26178 + p 1 level + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V attack a method_26179 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;Ljava/util/function/BiConsumer;)V onExplosionHit a method_55225 + p 1 level + p 2 pos + p 3 explosion + p 4 dropConsumer + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V handleNeighborChanged a method_26181 + p 1 level + p 2 pos + p 3 block + p 4 fromPos + p 5 isMoving + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onPlace a method_26182 + p 1 level + p 2 pos + p 3 oldState + p 4 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateNeighbourShapes a method_30101 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateNeighbourShapes a method_26183 + p 1 level + p 2 pos + p 3 flags + p 4 recursionLeft + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSurvive a method_26184 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;)Z is a method_27852 + p 1 block + m (Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/block/state/BlockState; mirror a method_26185 + c @return the blockstate mirrored in the given way. If inapplicable, returns itself. + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotate a method_26186 + c @return the blockstate with the given rotation. If inapplicable, returns itself. + p 1 rotation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z skipRendering a method_26187 + p 1 state + p 2 face + m (Lnet/minecraft/world/level/material/Fluid;)Z canBeReplaced a method_26188 + p 1 fluid + m (Lnet/minecraft/world/level/pathfinder/PathComputationType;)Z isPathfindable a method_26171 + m (Lnet/minecraft/world/level/storage/loot/LootParams$Builder;)Ljava/util/List; getDrops a method_26189 + p 1 lootParams + m (Lnet/minecraft/core/BlockPos;)J getSeed a method_26190 + p 1 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_26191 + p 1 direction + p 2 neighborState + p 3 level + p 4 pos + p 5 neighborPos + m (Lnet/minecraft/core/Holder;)Z is a method_53257 + p 1 block + m (Lnet/minecraft/core/HolderSet;)Z is a method_40143 + p 1 holder + m ()Lnet/minecraft/world/level/block/Block; getBlock b method_26204 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_26199 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getLightBlock b method_26193 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape b method_26194 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal b method_26195 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/MenuProvider; getMenuProvider b method_26196 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onRemove b method_26197 + p 1 level + p 2 pos + p 3 newState + p 4 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateIndirectNeighbourShapes b method_30102 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateIndirectNeighbourShapes b method_26198 + p 1 level + p 2 pos + p 3 flags + p 4 recursionLeft + m ()Lnet/minecraft/core/Holder; getBlockHolder c method_41520 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape c method_26201 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVisualShape c method_26202 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal c method_26203 + p 1 level + p 2 pos + p 3 direction + m ()Z blocksMotion d method_51366 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/MapColor; getMapColor d method_26205 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isFaceSturdy d method_26206 + p 1 level + p 2 pos + p 3 direction + m ()Z isSolid e method_51367 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z emissiveRendering e method_26208 + p 1 level + p 2 pos + m ()Z hasLargeCollisionShape f method_26209 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness f method_26210 + p 1 level + p 2 pos + m ()Z useShapeForLightOcclusion g method_26211 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isRedstoneConductor g method_26212 + p 1 level + p 2 pos + m ()I getLightEmission h method_26213 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroySpeed h method_26214 + p 1 level + p 2 pos + m ()Z isAir i method_26215 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSolidRender i method_26216 + p 1 level + p 2 pos + m ()Z ignitedByLava j method_50011 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape j method_26218 + p 1 level + p 2 pos + m ()Z liquid k method_51176 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape k method_26220 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/RenderShape; getRenderShape l method_26217 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockSupportShape l method_26222 + p 1 level + p 2 pos + m ()Z isSignalSource m method_26219 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getInteractionShape m method_26224 + p 1 level + p 2 pos + m ()Z hasAnalogOutputSignal n method_26221 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getOffset n method_26226 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/material/PushReaction; getPistonPushReaction o method_26223 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSuffocating o method_26228 + p 1 level + p 2 pos + m ()Z canOcclude p method_26225 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isViewBlocking p method_26230 + p 1 level + p 2 pos + m ()Z hasOffsetFunction q method_49228 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasPostProcess q method_26232 + p 1 level + p 2 pos + m ()Z canBeReplaced r method_45474 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isCollisionShapeFullBlock r method_26234 + p 1 level + p 2 pos + m ()Ljava/util/stream/Stream; getTags s method_40144 + m ()Z hasBlockEntity t method_31709 + m ()Lnet/minecraft/world/level/material/FluidState; getFluidState u method_26227 + m ()Z isRandomlyTicking v method_26229 + m ()Lnet/minecraft/world/level/block/SoundType; getSoundType w method_26231 + m ()Lnet/minecraft/world/level/block/state/BlockState; asState x method_26233 + m ()Z requiresCorrectToolForDrops y method_29291 + m ()Z shouldSpawnTerrainParticles z method_45475 + m (Lnet/minecraft/world/level/block/Block;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec +c net/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase$Cache dtb$a$a net/minecraft/class_4970$class_4971$class_3752 + f Z solidRender a field_16557 + f Lnet/minecraft/world/phys/shapes/VoxelShape; collisionShape b field_19360 + f Z largeCollisionShape c field_17651 + f Z isCollisionShapeFullBlock d field_20337 + f [Lnet/minecraft/core/Direction; DIRECTIONS e field_16559 + f I SUPPORT_TYPE_COUNT f field_25830 + f Z propagatesSkylightDown g field_16556 + f I lightBlock h field_16555 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; occlusionShapes i field_16560 + f [Z faceSturdy j field_19429 + m (Lnet/minecraft/core/Direction$Axis;)Z method_17901 a method_17901 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)Z isFaceSturdy a method_30369 + p 1 direction + p 2 supportType + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)I getFaceSupportIndex b method_30370 + p 0 direction + p 1 supportType + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction dtb$b net/minecraft/class_4970$class_8176 +c net/minecraft/world/level/block/state/BlockBehaviour$OffsetType dtb$c net/minecraft/class_4970$class_2250 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; NONE a field_10656 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; XZ b field_10657 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; XYZ c field_10655 + f [Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; $VALUES d field_10658 + m ()[Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; $values a method_36719 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$Properties dtb$d net/minecraft/class_4970$class_2251 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isViewBlocking A field_23184 + c If it blocks vision on the client side. + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; hasPostProcess B field_23185 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; emissiveRendering C field_23186 + f Z dynamicShape D field_10670 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures E field_40342 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction; offsetFunction F field_42818 + f Lcom/mojang/serialization/Codec; CODEC a field_46532 + f Ljava/util/function/Function; mapColor b field_10662 + f Z hasCollision c field_10664 + f Lnet/minecraft/world/level/block/SoundType; soundType d field_10665 + f Ljava/util/function/ToIntFunction; lightEmission e field_10663 + f F explosionResistance f field_10660 + f F destroyTime g field_10669 + f Z requiresCorrectToolForDrops h field_25185 + f Z isRandomlyTicking i field_10661 + f F friction j field_10667 + f F speedFactor k field_23179 + f F jumpFactor l field_21209 + f Lnet/minecraft/resources/ResourceKey; drops m field_10666 + c Sets loot table information + f Z canOcclude n field_20721 + f Z isAir o field_23180 + f Z ignitedByLava p field_43394 + f Z liquid q field_44481 + f Z forceSolidOff r field_44627 + f Z forceSolidOn s field_44628 + f Lnet/minecraft/world/level/material/PushReaction; pushReaction t field_43395 + f Z spawnTerrainParticles u field_40341 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument v field_44629 + f Z replaceable w field_44630 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate; isValidSpawn x field_23181 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isRedstoneConductor y field_23182 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isSuffocating z field_23183 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; of a method_9637 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; friction a method_9628 + p 1 friction + m (FF)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; strength a method_9629 + p 1 destroyTime + p 2 explosionResistance + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_51517 + p 1 mapColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51518 a method_51518 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; dropsLike a method_16228 + p 1 block + m (Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; sound a method_9626 + p 1 soundType + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; offsetType a method_49229 + p 1 offsetType + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isValidSpawn a method_26235 + p 1 isValidSpawn + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isRedstoneConductor a method_26236 + p 1 isRedstoneConductor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ofFullCopy a method_9630 + p 0 blockBehaviour + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26237 a method_26237 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_49230 a method_49230 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26239 a method_26239 + m (Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; instrument a method_51368 + p 1 instrument + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_31710 + p 1 mapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51519 a method_51519 + m (Lnet/minecraft/world/level/material/PushReaction;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; pushReaction a method_50012 + p 1 pushReaction + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_51520 + p 1 mapColor + m (Ljava/util/function/ToIntFunction;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; lightLevel a method_9631 + p 1 lightEmission + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; requiredFeatures a method_45476 + p 1 requiredFeatures + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noCollission b method_9634 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; speedFactor b method_23351 + p 1 speedFactor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isSuffocating b method_26243 + p 1 isSuffocating + m (Lnet/minecraft/world/level/block/state/BlockBehaviour;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ofLegacyCopy b method_55226 + p 0 blockBehaviour + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51521 b method_51521 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_49231 b method_49231 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noOcclusion c method_22488 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; jumpFactor c method_23352 + p 1 jumpFactor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isViewBlocking c method_26245 + c If it blocks vision on the client side. + p 1 isViewBlocking + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26238 c method_26238 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; instabreak d method_9618 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; strength d method_9632 + p 1 strength + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; hasPostProcess d method_26247 + p 1 hasPostProcess + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26244 d method_26244 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; randomTicks e method_9640 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; destroyTime e method_36557 + p 1 destroyTime + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; emissiveRendering e method_26249 + p 1 emissiveRendering + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26246 e method_26246 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; dynamicShape f method_9624 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; explosionResistance f method_36558 + p 1 explosionResistance + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26248 f method_26248 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noLootTable g method_42327 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ignitedByLava h method_50013 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; liquid i method_51177 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; forceSolidOn j method_51369 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; forceSolidOff k method_51370 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; air l method_26250 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; requiresCorrectToolForDrops m method_29292 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noTerrainParticles n method_45477 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; replaceable o method_51371 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; method_54098 p method_54098 + m ()V + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate dtb$e net/minecraft/class_4970$class_4972 +c net/minecraft/world/level/block/state/BlockBehaviour$StatePredicate dtb$f net/minecraft/class_4970$class_4973 +c net/minecraft/world/level/block/state/BlockState dtc net/minecraft/class_2680 + c

Interface {@link net.fabricmc.fabric.api.block.v1.FabricBlockState} injected by mod fabric-block-api-v1

+ f Lcom/mojang/serialization/Codec; CODEC b field_24734 + m (Lnet/minecraft/world/level/block/Block;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + m ()V +c net/minecraft/world/level/block/state/StateDefinition dtd net/minecraft/class_2689 + f Ljava/util/regex/Pattern; NAME_PATTERN a field_12314 + f Ljava/lang/Object; owner b field_12317 + f Lcom/google/common/collect/ImmutableSortedMap; propertiesByName c field_12316 + f Lcom/google/common/collect/ImmutableList; states d field_12315 + m ()Lcom/google/common/collect/ImmutableList; getPossibleStates a method_11662 + m (Lcom/mojang/serialization/MapCodec;Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/Property;)Lcom/mojang/serialization/MapCodec; appendPropertyCodec a method_30040 + p 0 propertyCodec + p 1 holderSupplier + p 2 value + p 3 property + m (Lnet/minecraft/world/level/block/state/StateDefinition$Factory;Ljava/lang/Object;Lcom/mojang/serialization/MapCodec;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V method_28484 a method_28484 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/block/state/StateHolder; method_30038 a method_30038 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/StateHolder;)Lcom/mojang/datafixers/util/Pair; method_30037 a method_30037 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/List;)Ljava/util/stream/Stream; method_11666 a method_11666 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/block/state/properties/Property$Value; method_30039 a method_30039 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/Property; getProperty a method_11663 + p 1 propertyName + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/util/List; method_11661 a method_11661 + m (Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/world/level/block/state/StateHolder; method_28485 a method_28485 + m ()Lnet/minecraft/world/level/block/state/StateHolder; any b method_11664 + m (Ljava/lang/String;)V method_38859 b method_38859 + m ()Ljava/lang/Object; getOwner c method_11660 + m ()Ljava/util/Collection; getProperties d method_11659 + m (Ljava/util/function/Function;Ljava/lang/Object;Lnet/minecraft/world/level/block/state/StateDefinition$Factory;Ljava/util/Map;)V + p 1 stateValueFunction + p 2 owner + p 3 valueFunction + p 4 propertiesByName + m ()V +c net/minecraft/world/level/block/state/StateDefinition$Builder dtd$a net/minecraft/class_2689$class_2690 + f Ljava/lang/Object; owner a field_12318 + f Ljava/util/Map; properties b field_12319 + m (Lnet/minecraft/world/level/block/state/properties/Property;)V validateProperty a method_11669 + p 1 property + m (Ljava/util/function/Function;Lnet/minecraft/world/level/block/state/StateDefinition$Factory;)Lnet/minecraft/world/level/block/state/StateDefinition; create a method_11668 + p 1 stateValueFunction + p 2 stateFunction + m ([Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/StateDefinition$Builder; add a method_11667 + p 1 properties + m (Ljava/lang/Object;)V + p 1 owner +c net/minecraft/world/level/block/state/StateDefinition$Factory dtd$b net/minecraft/class_2689$class_2691 +c net/minecraft/world/level/block/state/StateHolder dte net/minecraft/class_2688 + f Ljava/util/function/Function; PROPERTY_ENTRY_TO_STRING_FUNCTION a field_24737 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap; values b field_24738 + f Ljava/lang/String; NAME_TAG c field_31385 + f Ljava/lang/String; PROPERTIES_TAG d field_31386 + f Ljava/lang/Object; owner e field_24739 + f Lcom/mojang/serialization/MapCodec; propertiesCodec f field_24740 + f Lcom/google/common/collect/Table; neighbours g field_24741 + m ()Ljava/util/Collection; getProperties B method_28501 + c @return an unmodifiable collection of all possible properties. + m ()Ljava/util/Map; getValues C method_11656 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; codec a method_28494 + p 0 propertyMap + p 1 holderFunction + m (Lnet/minecraft/world/level/block/state/StateHolder;)Ljava/lang/Object; method_28492 a method_28492 + m (Lnet/minecraft/world/level/block/state/StateHolder;Ljava/util/Optional;)Lnet/minecraft/world/level/block/state/StateHolder; method_38860 a method_38860 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Object; cycle a method_28493 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/Object; setValue a method_11657 + p 1 property + p 2 value + m (Ljava/util/Collection;Ljava/lang/Object;)Ljava/lang/Object; findNextInCollection a method_28495 + p 0 collection + p 1 value + m (Ljava/util/Map;)V populateNeighbours a method_28496 + p 1 possibleStateMap + m (Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/MapCodec; method_28497 a method_28497 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Z hasProperty b method_28498 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/Object; trySetValue b method_47968 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Comparable; getValue c method_11654 + c @return the value of the given Property for this state + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/util/Map; makeNeighbourValues c method_28499 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/util/Optional; getOptionalValue d method_28500 + p 1 property + m (Ljava/lang/Object;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec + m ()V +c net/minecraft/world/level/block/state/StateHolder$1 dte$1 net/minecraft/class_2688$1 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getName a method_11575 + p 1 property + p 2 value + m (Ljava/util/Map$Entry;)Ljava/lang/String; apply a method_11576 + p 1 propertyEntry + m ()V +c net/minecraft/world/level/block/state/package-info dtf net/minecraft/class_6094 +c net/minecraft/world/level/block/state/pattern/BlockInWorld dtg net/minecraft/class_2694 + f Lnet/minecraft/world/level/LevelReader; level a field_12330 + f Lnet/minecraft/core/BlockPos; pos b field_12331 + f Z loadChunks c field_12329 + f Lnet/minecraft/world/level/block/state/BlockState; state d field_12326 + f Lnet/minecraft/world/level/block/entity/BlockEntity; entity e field_12327 + f Z cachedEntity f field_12328 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState a method_11681 + c Gets the block state as currently held, or (if it has not gotten it from the level) loads it from the level.\nThis will only look up the state from the world if {@link #loadChunks} is true or the block position is loaded. + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; hasState a method_11678 + p 0 state + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_11682 a method_11682 + m ()Lnet/minecraft/world/level/block/entity/BlockEntity; getEntity b method_11680 + c Gets the BlockEntity as currently held, or (if it has not gotten it from the level) loads it from the level. + m ()Lnet/minecraft/world/level/LevelReader; getLevel c method_11679 + m ()Lnet/minecraft/core/BlockPos; getPos d method_11683 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Z)V + p 1 level + p 2 pos + p 3 loadChunks +c net/minecraft/world/level/block/state/pattern/BlockPattern dth net/minecraft/class_2700 + f [[[Ljava/util/function/Predicate; pattern a field_12358 + f I depth b field_12357 + f I height c field_12356 + f I width d field_12355 + m ()I getDepth a method_11712 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; find a method_11708 + c Calculates whether the given world position matches the pattern. Warning, fairly heavy function.\n@return a BlockPatternMatch if found, null otherwise. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; matches a method_35300 + p 1 level + p 2 pos + p 3 finger + p 4 thumb + m (Lnet/minecraft/world/level/LevelReader;Z)Lcom/google/common/cache/LoadingCache; createLevelCache a method_11709 + p 0 level + p 1 forceLoad + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;III)Lnet/minecraft/core/BlockPos; translateAndRotate a method_11707 + c Offsets the position of pos in the direction of finger and thumb facing by offset amounts, follows the right-hand rule for cross products (finger, thumb, palm)\n\n@return a new BlockPos offset in the facing directions + p 0 pos + p 1 finger + p 2 thumb + p 3 palmOffset + p 4 thumbOffset + p 5 fingerOffset + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lcom/google/common/cache/LoadingCache;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; matches a method_11711 + c Checks that the given pattern & rotation is at the block coordinates. + p 1 pos + p 2 finger + p 3 thumb + p 4 cache + m ()I getHeight b method_11713 + m ()I getWidth c method_11710 + m ()[[[Ljava/util/function/Predicate; getPattern d method_35301 + m ([[[Ljava/util/function/Predicate;)V + p 1 pattern +c net/minecraft/world/level/block/state/pattern/BlockPattern$BlockCacheLoader dth$a net/minecraft/class_2700$class_2701 + f Lnet/minecraft/world/level/LevelReader; level a field_12359 + f Z loadChunks b field_12360 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; load a method_11714 + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Z)V + p 1 level + p 2 loadChunks +c net/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch dth$b net/minecraft/class_2700$class_2702 + f Lnet/minecraft/core/BlockPos; frontTopLeft a field_12367 + f Lnet/minecraft/core/Direction; forwards b field_12365 + f Lnet/minecraft/core/Direction; up c field_12364 + f Lcom/google/common/cache/LoadingCache; cache d field_12366 + f I width e field_12363 + f I height f field_12362 + f I depth g field_12361 + m ()Lnet/minecraft/core/BlockPos; getFrontTopLeft a method_11715 + m (III)Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; getBlock a method_11717 + p 1 palmOffset + p 2 thumbOffset + p 3 fingerOffset + m ()Lnet/minecraft/core/Direction; getForwards b method_11719 + m ()Lnet/minecraft/core/Direction; getUp c method_11716 + m ()I getWidth d method_35302 + m ()I getHeight e method_35303 + m ()I getDepth f method_35304 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lcom/google/common/cache/LoadingCache;III)V + p 1 frontTopLeft + p 2 forwards + p 3 up + p 4 cache + p 5 width + p 6 height + p 7 depth +c net/minecraft/world/level/block/state/pattern/BlockPatternBuilder dti net/minecraft/class_2697 + f Lcom/google/common/base/Joiner; COMMA_JOINED a field_12340 + f Ljava/util/List; pattern b field_12344 + f Ljava/util/Map; lookup c field_12343 + f I height d field_12342 + f I width e field_12341 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; start a method_11701 + m (CLjava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; where a method_11700 + p 1 symbol + p 2 blockMatcher + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_38861 a method_38861 + m ([Ljava/lang/String;)Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; aisle a method_11702 + c Adds a single aisle to this pattern, going in the z axis. (so multiple calls to this will increase the z-size by 1) + p 1 aisle + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; build b method_11704 + m ()[[[Ljava/util/function/Predicate; createPattern c method_11703 + m ()V ensureAllCharactersMatched d method_11705 + m ()V + m ()V +c net/minecraft/world/level/block/state/pattern/package-info dtj net/minecraft/class_6095 +c net/minecraft/world/level/block/state/predicate/BlockPredicate dtk net/minecraft/class_2717 + f Lnet/minecraft/world/level/block/Block; block a field_12423 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/predicate/BlockPredicate; forBlock a method_11766 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_11765 + p 1 state + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/block/state/predicate/BlockStatePredicate dtl net/minecraft/class_2715 + f Ljava/util/function/Predicate; ANY a field_12419 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition b field_12420 + f Ljava/util/Map; properties c field_12421 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; forBlock a method_11758 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_11760 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;)Z applies a method_11761 + p 1 state + p 2 property + p 3 valuePredicate + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; where a method_11762 + p 1 property + p 2 valuePredicate + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_11759 b method_11759 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V + p 1 definition + m ()V +c net/minecraft/world/level/block/state/predicate/package-info dtm net/minecraft/class_6096 +c net/minecraft/world/level/block/state/properties/AttachFace dtn net/minecraft/class_2738 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; FLOOR a field_12475 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; WALL b field_12471 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; CEILING c field_12473 + f Ljava/lang/String; name d field_12472 + f [Lnet/minecraft/world/level/block/state/properties/AttachFace; $VALUES e field_12474 + m ()[Lnet/minecraft/world/level/block/state/properties/AttachFace; $values a method_36720 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BambooLeaves dto net/minecraft/class_2737 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; NONE a field_12469 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; SMALL b field_12466 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; LARGE c field_12468 + f Ljava/lang/String; name d field_12467 + f [Lnet/minecraft/world/level/block/state/properties/BambooLeaves; $VALUES e field_12470 + m ()[Lnet/minecraft/world/level/block/state/properties/BambooLeaves; $values a method_36721 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BedPart dtp net/minecraft/class_2742 + f Lnet/minecraft/world/level/block/state/properties/BedPart; HEAD a field_12560 + f Lnet/minecraft/world/level/block/state/properties/BedPart; FOOT b field_12557 + f Ljava/lang/String; name c field_12559 + f [Lnet/minecraft/world/level/block/state/properties/BedPart; $VALUES d field_12558 + m ()[Lnet/minecraft/world/level/block/state/properties/BedPart; $values a method_36722 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BellAttachType dtq net/minecraft/class_3867 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; FLOOR a field_17098 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; CEILING b field_17099 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; SINGLE_WALL c field_17100 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; DOUBLE_WALL d field_17101 + f Ljava/lang/String; name e field_17102 + f [Lnet/minecraft/world/level/block/state/properties/BellAttachType; $VALUES f field_17103 + m ()[Lnet/minecraft/world/level/block/state/properties/BellAttachType; $values a method_36723 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BlockSetType dtr net/minecraft/class_8177 + f Lnet/minecraft/sounds/SoundEvent; trapdoorOpen A comp_1294 + f Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOff B comp_1295 + f Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOn C comp_1296 + f Lnet/minecraft/sounds/SoundEvent; buttonClickOff D comp_1297 + f Lnet/minecraft/sounds/SoundEvent; buttonClickOn E comp_1298 + f Ljava/util/Map; TYPES F field_46533 + f Lcom/mojang/serialization/Codec; CODEC a field_46534 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; IRON b field_42819 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; COPPER c field_47100 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; GOLD d field_42820 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; STONE e field_42821 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; POLISHED_BLACKSTONE f field_42822 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; OAK g field_42823 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; SPRUCE h field_42824 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; BIRCH i field_42825 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; ACACIA j field_42826 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; CHERRY k field_42827 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; JUNGLE l field_42828 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; DARK_OAK m field_42829 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; CRIMSON n field_42830 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; WARPED o field_42831 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; MANGROVE p field_42832 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; BAMBOO q field_42833 + f Ljava/lang/String; name r comp_1289 + f Z canOpenByHand s comp_1471 + f Z canOpenByWindCharge t comp_2112 + f Z canButtonBeActivatedByArrows u comp_1972 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; pressurePlateSensitivity v comp_1973 + f Lnet/minecraft/world/level/block/SoundType; soundType w comp_1290 + f Lnet/minecraft/sounds/SoundEvent; doorClose x comp_1291 + f Lnet/minecraft/sounds/SoundEvent; doorOpen y comp_1292 + f Lnet/minecraft/sounds/SoundEvent; trapdoorClose z comp_1293 + m ()Ljava/util/stream/Stream; values a method_49232 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; register a method_49233 + p 0 value + m ()Ljava/lang/String; name b comp_1289 + m ()Z canOpenByHand c comp_1471 + m ()Z canOpenByWindCharge d comp_2112 + m ()Z canButtonBeActivatedByArrows e comp_1972 + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; pressurePlateSensitivity f comp_1973 + m ()Lnet/minecraft/world/level/block/SoundType; soundType g comp_1290 + m ()Lnet/minecraft/sounds/SoundEvent; doorClose h comp_1291 + m ()Lnet/minecraft/sounds/SoundEvent; doorOpen i comp_1292 + m ()Lnet/minecraft/sounds/SoundEvent; trapdoorClose j comp_1293 + m ()Lnet/minecraft/sounds/SoundEvent; trapdoorOpen k comp_1294 + m ()Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOff l comp_1295 + m ()Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOn m comp_1296 + m ()Lnet/minecraft/sounds/SoundEvent; buttonClickOff n comp_1297 + m ()Lnet/minecraft/sounds/SoundEvent; buttonClickOn o comp_1298 + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/String;ZZZLnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + m ()V +c net/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity dtr$a net/minecraft/class_8177$class_2441 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; EVERYTHING a field_11361 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; MOBS b field_11362 + f [Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; $VALUES c field_11363 + m ()[Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; $values a method_36707 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/BlockStateProperties dts net/minecraft/class_2741 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED A field_12522 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UNSTABLE B field_12539 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED C field_12508 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BERRIES D field_28716 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BLOOM E field_37651 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHRIEKING F field_37652 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CAN_SUMMON G field_38423 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HORIZONTAL_AXIS H field_12529 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS I field_12496 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP J field_12519 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN K field_12546 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH L field_12489 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST M field_12487 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH N field_12540 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST O field_12527 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING P field_12525 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING_HOPPER Q field_12545 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; HORIZONTAL_FACING R field_12481 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; FLOWER_AMOUNT S field_42835 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION T field_23333 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ATTACH_FACE U field_12555 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BELL_ATTACHMENT V field_17104 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_WALL W field_22174 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_WALL X field_22175 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_WALL Y field_22176 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_WALL Z field_22177 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DELAY aA field_12494 + f I MAX_DISTANCE aB field_31402 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE aC field_12541 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; EGGS aD field_12509 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH aE field_12530 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LAYERS aF field_12536 + f I MIN_LEVEL aG field_31387 + f I MIN_LEVEL_CAULDRON aH field_31388 + f I MAX_LEVEL_3 aI field_31389 + f I MAX_LEVEL_8 aJ field_31390 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_CAULDRON aK field_12513 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_COMPOSTER aL field_17586 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED a field_12493 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_FLOWING aM field_12490 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_HONEY aN field_20432 + f I MAX_LEVEL_15 aO field_33723 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL aP field_12538 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; MOISTURE aQ field_12510 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; NOTE aR field_12524 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; PICKLES aS field_12543 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER aT field_12511 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE aU field_12549 + f I STABILITY_MAX_DISTANCE aV field_31391 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STABILITY_DISTANCE aW field_16503 + f I MIN_RESPAWN_ANCHOR_CHARGES aX field_31392 + f I MAX_RESPAWN_ANCHOR_CHARGES aY field_31393 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; RESPAWN_ANCHOR_CHARGES aZ field_23187 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_REDSTONE aa field_12523 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_REDSTONE ab field_12495 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_REDSTONE ac field_12551 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_REDSTONE ad field_12504 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DOUBLE_BLOCK_HALF ae field_12533 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF af field_12518 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; RAIL_SHAPE ag field_12507 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; RAIL_SHAPE_STRAIGHT ah field_12542 + f I MAX_AGE_1 ai field_31395 + f I MAX_AGE_2 aj field_31396 + f I MAX_AGE_3 ak field_31397 + f I MAX_AGE_4 al field_37653 + f I MAX_AGE_5 am field_31398 + f I MAX_AGE_7 an field_31399 + f I MAX_AGE_15 ao field_31400 + f I MAX_AGE_25 ap field_31401 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_1 aq field_12521 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_2 ar field_12556 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_3 as field_12497 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_4 at field_37654 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_5 au field_12482 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_7 av field_12550 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_15 aw field_12498 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_25 ax field_12517 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; BITES ay field_12505 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CANDLES az field_27220 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS bA field_50193 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BOTTOM b field_16562 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION_16 ba field_12532 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BED_PART bb field_12483 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; CHEST_TYPE bc field_12506 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE_COMPARATOR bd field_12534 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DOOR_HINGE be field_12520 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NOTEBLOCK_INSTRUMENT bf field_12499 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PISTON_TYPE bg field_12492 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SLAB_TYPE bh field_12485 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STAIRS_SHAPE bi field_12503 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STRUCTUREBLOCK_MODE bj field_12547 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BAMBOO_LEAVES bk field_12516 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TILT bl field_28717 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; VERTICAL_DIRECTION bm field_28062 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DRIPSTONE_THICKNESS bn field_28063 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SCULK_SENSOR_PHASE bo field_28120 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_0_OCCUPIED bp field_41317 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_1_OCCUPIED bq field_41318 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_2_OCCUPIED br field_41319 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_3_OCCUPIED bs field_41320 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_4_OCCUPIED bt field_41321 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_5_OCCUPIED bu field_41322 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DUSTED bv field_42836 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRACKED bw field_43307 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRAFTING bx field_46822 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TRIAL_SPAWNER_STATE by field_47408 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; VAULT_STATE bz field_48915 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CONDITIONAL c field_12486 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DISARMED d field_12553 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DRAG e field_12526 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ENABLED f field_12515 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EXTENDED g field_12552 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EYE h field_12488 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; FALLING i field_12480 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING j field_16561 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_0 k field_12554 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_1 l field_12500 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_2 m field_12531 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_RECORD n field_12544 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOOK o field_17393 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; INVERTED p field_12501 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; IN_WALL q field_12491 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT r field_12548 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LOCKED s field_12502 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OCCUPIED t field_12528 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN u field_12537 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PERSISTENT v field_12514 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED w field_12484 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHORT x field_12535 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SIGNAL_FIRE y field_17394 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SNOWY z field_12512 + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)Z method_11813 a method_11813 + m (Lnet/minecraft/core/Direction;)Z method_11814 a method_11814 + m ()V + m ()V +c net/minecraft/world/level/block/state/properties/BooleanProperty dtt net/minecraft/class_2746 + f Lcom/google/common/collect/ImmutableSet; values a field_12575 + m (Ljava/lang/Boolean;)Ljava/lang/String; getName a method_11826 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; create a method_11825 + p 0 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/world/level/block/state/properties/ChestType dtu net/minecraft/class_2745 + f Lnet/minecraft/world/level/block/state/properties/ChestType; SINGLE a field_12569 + f Lnet/minecraft/world/level/block/state/properties/ChestType; LEFT b field_12574 + f Lnet/minecraft/world/level/block/state/properties/ChestType; RIGHT c field_12571 + f Ljava/lang/String; name d field_12572 + f [Lnet/minecraft/world/level/block/state/properties/ChestType; $VALUES e field_12573 + m ()Lnet/minecraft/world/level/block/state/properties/ChestType; getOpposite a method_11824 + m ()[Lnet/minecraft/world/level/block/state/properties/ChestType; $values b method_36724 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/ComparatorMode dtv net/minecraft/class_2747 + f Lnet/minecraft/world/level/block/state/properties/ComparatorMode; COMPARE a field_12576 + f Lnet/minecraft/world/level/block/state/properties/ComparatorMode; SUBTRACT b field_12578 + f Ljava/lang/String; name c field_12577 + f [Lnet/minecraft/world/level/block/state/properties/ComparatorMode; $VALUES d field_12579 + m ()[Lnet/minecraft/world/level/block/state/properties/ComparatorMode; $values a method_36725 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/DirectionProperty dtw net/minecraft/class_2753 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_35305 + p 0 name + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11843 + c Create a new DirectionProperty for the given direction values + p 0 name + p 1 values + m (Ljava/lang/String;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11844 + c Create a new DirectionProperty with all directions that match the given Predicate + p 0 name + p 1 filter + m (Ljava/lang/String;[Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11845 + p 0 name + p 1 values + m (Lnet/minecraft/core/Direction;)Z method_38862 a method_38862 + m (Ljava/lang/String;Ljava/util/Collection;)V + p 1 name + p 2 values +c net/minecraft/world/level/block/state/properties/DoorHingeSide dtx net/minecraft/class_2750 + f Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; LEFT a field_12588 + f Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; RIGHT b field_12586 + f [Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; $VALUES c field_12587 + m ()[Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; $values a method_36726 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/DoubleBlockHalf dty net/minecraft/class_2756 + f Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; UPPER a field_12609 + f Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; LOWER b field_12607 + f Lnet/minecraft/core/Direction; directionToOther c field_47101 + f [Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; $VALUES d field_12608 + m ()Lnet/minecraft/core/Direction; getDirectionToOther a method_54779 + m ()Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; getOtherHalf b method_54780 + m ()[Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; $values d method_36727 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;)V + p 3 directionToOther + m ()V +c net/minecraft/world/level/block/state/properties/DripstoneThickness dtz net/minecraft/class_5691 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; TIP_MERGE a field_28064 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; TIP b field_28065 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; FRUSTUM c field_28066 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; MIDDLE d field_28067 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; BASE e field_28068 + f Ljava/lang/String; name f field_28069 + f [Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; $VALUES g field_28070 + m ()[Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; $values a method_36728 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/EnumProperty dua net/minecraft/class_2754 + f Lcom/google/common/collect/ImmutableSet; values a field_12595 + f Ljava/util/Map; names b field_12596 + c Map of names to Enum values + m (Ljava/lang/Enum;)Ljava/lang/String; getName a method_11846 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11850 + c Create a new EnumProperty with all Enum constants of the given class. + p 0 name + p 1 clazz + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11847 + c Create a new EnumProperty with the specified values + p 0 name + p 1 clazz + p 2 values + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11848 + c Create a new EnumProperty with all Enum constants of the given class that match the given Predicate. + p 0 name + p 1 clazz + p 2 filter + m (Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11849 + c Create a new EnumProperty with the specified values + p 0 name + p 1 clazz + p 2 values + m (Ljava/lang/Enum;)Z method_38863 b method_38863 + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)V + p 1 name + p 2 clazz + p 3 values +c net/minecraft/world/level/block/state/properties/Half dub net/minecraft/class_2760 + f Lnet/minecraft/world/level/block/state/properties/Half; TOP a field_12619 + f Lnet/minecraft/world/level/block/state/properties/Half; BOTTOM b field_12617 + f Ljava/lang/String; name c field_12616 + f [Lnet/minecraft/world/level/block/state/properties/Half; $VALUES d field_12618 + m ()[Lnet/minecraft/world/level/block/state/properties/Half; $values a method_36729 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/IntegerProperty duc net/minecraft/class_2758 + f Lcom/google/common/collect/ImmutableSet; values a field_12614 + f I min b field_37655 + f I max c field_37656 + m (Ljava/lang/Integer;)Ljava/lang/String; getName a method_11868 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;II)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; create a method_11867 + p 0 name + p 1 min + p 2 max + m (Ljava/lang/String;II)V + p 1 name + p 2 min + p 3 max +c net/minecraft/world/level/block/state/properties/NoteBlockInstrument dud net/minecraft/class_2766 + f [Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; $VALUES A field_12652 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; HARP a field_12648 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BASEDRUM b field_12653 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; SNARE c field_12643 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; HAT d field_12645 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BASS e field_12651 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; FLUTE f field_12650 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BELL g field_12644 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; GUITAR h field_12654 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CHIME i field_12647 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; XYLOPHONE j field_12655 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; IRON_XYLOPHONE k field_18284 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; COW_BELL l field_18285 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; DIDGERIDOO m field_18286 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BIT n field_18287 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BANJO o field_18288 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; PLING p field_18289 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; ZOMBIE q field_41324 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; SKELETON r field_41325 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CREEPER s field_41326 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; DRAGON t field_41327 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; WITHER_SKELETON u field_41328 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; PIGLIN v field_41329 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CUSTOM_HEAD w field_41604 + f Ljava/lang/String; name x field_12646 + f Lnet/minecraft/core/Holder; soundEvent y field_12649 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; type z field_41605 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_11886 + m ()Z isTunable b method_47889 + m ()Z hasCustomSound d method_47890 + m ()Z worksAboveNoteBlock e method_51372 + m ()[Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; $values f method_36730 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type;)V + p 3 name + p 4 soundEvent + p 5 type + m ()V +c net/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type dud$a net/minecraft/class_2766$class_7994 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; BASE_BLOCK a field_41606 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; MOB_HEAD b field_41607 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; CUSTOM c field_41608 + f [Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; $VALUES d field_41609 + m ()[Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; $values a method_47892 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/PistonType due net/minecraft/class_2764 + f Lnet/minecraft/world/level/block/state/properties/PistonType; DEFAULT a field_12637 + f Lnet/minecraft/world/level/block/state/properties/PistonType; STICKY b field_12634 + f Ljava/lang/String; name c field_12635 + f [Lnet/minecraft/world/level/block/state/properties/PistonType; $VALUES d field_12636 + m ()[Lnet/minecraft/world/level/block/state/properties/PistonType; $values a method_36731 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/Property duf net/minecraft/class_2769 + f Ljava/lang/Class; clazz a field_24742 + f Ljava/lang/String; name b field_24743 + f Ljava/lang/Integer; hashCode c field_24744 + f Lcom/mojang/serialization/Codec; codec d field_24745 + f Lcom/mojang/serialization/Codec; valueCodec e field_25670 + m ()Ljava/util/Collection; getPossibleValues a method_11898 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/block/state/StateHolder;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; parseValue a method_35307 + p 1 ops + p 2 stateHolder + p 3 unparsedValue + m (Lnet/minecraft/world/level/block/state/StateHolder;)Lnet/minecraft/world/level/block/state/properties/Property$Value; value a method_30041 + p 1 holder + m (Lnet/minecraft/world/level/block/state/StateHolder;Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/StateHolder; method_35306 a method_35306 + m (Ljava/lang/Comparable;)Ljava/lang/String; getName a method_11901 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_28504 a method_28504 + m ()I generateHashCode b method_11799 + m (Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/properties/Property$Value; value b method_30042 + p 1 value + m (Ljava/lang/String;)Ljava/util/Optional; getValue b method_11900 + p 1 value + m ()Ljava/util/stream/Stream; getAllValues c method_30043 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_28505 c method_28505 + m ()Lcom/mojang/serialization/Codec; codec d method_35308 + m (Ljava/lang/String;)Ljava/lang/String; method_49524 d method_49524 + m ()Lcom/mojang/serialization/Codec; valueCodec e method_30044 + m ()Ljava/lang/String; getName f method_11899 + m ()Ljava/lang/Class; getValueClass g method_11902 + c @return the class of the values of this property + m (Ljava/lang/String;Ljava/lang/Class;)V + p 1 name + p 2 clazz +c net/minecraft/world/level/block/state/properties/Property$Value duf$a net/minecraft/class_2769$class_4933 + f Lnet/minecraft/world/level/block/state/properties/Property; property a comp_70 + f Ljava/lang/Comparable; value b comp_71 + m ()Lnet/minecraft/world/level/block/state/properties/Property; property a comp_70 + m ()Ljava/lang/Comparable; value b comp_71 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V + p 1 property + p 2 value +c net/minecraft/world/level/block/state/properties/RailShape dug net/minecraft/class_2768 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_SOUTH a field_12665 + f Lnet/minecraft/world/level/block/state/properties/RailShape; EAST_WEST b field_12674 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_EAST c field_12667 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_WEST d field_12666 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_NORTH e field_12670 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_SOUTH f field_12668 + f Lnet/minecraft/world/level/block/state/properties/RailShape; SOUTH_EAST g field_12664 + f Lnet/minecraft/world/level/block/state/properties/RailShape; SOUTH_WEST h field_12671 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_WEST i field_12672 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_EAST j field_12663 + f Ljava/lang/String; name k field_12669 + f [Lnet/minecraft/world/level/block/state/properties/RailShape; $VALUES l field_12673 + m ()Ljava/lang/String; getName a method_35309 + m ()Z isAscending b method_11897 + m ()[Lnet/minecraft/world/level/block/state/properties/RailShape; $values d method_36732 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/RedstoneSide duh net/minecraft/class_2773 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; UP a field_12686 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; SIDE b field_12689 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; NONE c field_12687 + f Ljava/lang/String; name d field_12685 + f [Lnet/minecraft/world/level/block/state/properties/RedstoneSide; $VALUES e field_12688 + m ()Z isConnected a method_27855 + m ()[Lnet/minecraft/world/level/block/state/properties/RedstoneSide; $values b method_36733 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/RotationSegment dui net/minecraft/class_7718 + f Lnet/minecraft/util/SegmentedAnglePrecision; SEGMENTED_ANGLE16 a field_41768 + f I MAX_SEGMENT_INDEX b field_40345 + f I NORTH_0 c field_40346 + f I EAST_90 d field_40347 + f I SOUTH_180 e field_40348 + f I WEST_270 f field_40349 + m ()I getMaxSegmentIndex a method_45478 + m (F)I convertToSegment a method_45479 + p 0 angle + m (I)Ljava/util/Optional; convertToDirection a method_45480 + p 0 segment + m (Lnet/minecraft/core/Direction;)I convertToSegment a method_45481 + p 0 direction + m (I)F convertToDegrees b method_45482 + p 0 segment + m ()V + m ()V +c net/minecraft/world/level/block/state/properties/SculkSensorPhase duj net/minecraft/class_5705 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; INACTIVE a field_28121 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; ACTIVE b field_28122 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; COOLDOWN c field_44631 + f Ljava/lang/String; name d field_28124 + f [Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; $VALUES e field_28125 + m ()[Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; $values a method_36734 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/SlabType duk net/minecraft/class_2771 + f Lnet/minecraft/world/level/block/state/properties/SlabType; TOP a field_12679 + f Lnet/minecraft/world/level/block/state/properties/SlabType; BOTTOM b field_12681 + f Lnet/minecraft/world/level/block/state/properties/SlabType; DOUBLE c field_12682 + f Ljava/lang/String; name d field_12678 + f [Lnet/minecraft/world/level/block/state/properties/SlabType; $VALUES e field_12680 + m ()[Lnet/minecraft/world/level/block/state/properties/SlabType; $values a method_36735 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/StairsShape dul net/minecraft/class_2778 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; STRAIGHT a field_12710 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; INNER_LEFT b field_12712 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; INNER_RIGHT c field_12713 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; OUTER_LEFT d field_12708 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; OUTER_RIGHT e field_12709 + f Ljava/lang/String; name f field_12714 + f [Lnet/minecraft/world/level/block/state/properties/StairsShape; $VALUES g field_12711 + m ()[Lnet/minecraft/world/level/block/state/properties/StairsShape; $values a method_36736 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/StructureMode dum net/minecraft/class_2776 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; SAVE a field_12695 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; LOAD b field_12697 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; CORNER c field_12699 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; DATA d field_12696 + f Ljava/lang/String; name e field_12698 + f Lnet/minecraft/network/chat/Component; displayName f field_26444 + f [Lnet/minecraft/world/level/block/state/properties/StructureMode; $VALUES g field_12700 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_30844 + m ()[Lnet/minecraft/world/level/block/state/properties/StructureMode; $values b method_36737 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/Tilt dun net/minecraft/class_5816 + f Lnet/minecraft/world/level/block/state/properties/Tilt; NONE a field_28718 + f Lnet/minecraft/world/level/block/state/properties/Tilt; UNSTABLE b field_28719 + f Lnet/minecraft/world/level/block/state/properties/Tilt; PARTIAL c field_28720 + f Lnet/minecraft/world/level/block/state/properties/Tilt; FULL d field_28721 + f Ljava/lang/String; name e field_28722 + f Z causesVibration f field_28723 + f [Lnet/minecraft/world/level/block/state/properties/Tilt; $VALUES g field_28724 + m ()Z causesVibration a method_33636 + m ()[Lnet/minecraft/world/level/block/state/properties/Tilt; $values b method_36738 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 name + p 4 causesVibration + m ()V +c net/minecraft/world/level/block/state/properties/WallSide duo net/minecraft/class_4778 + f Lnet/minecraft/world/level/block/state/properties/WallSide; NONE a field_22178 + f Lnet/minecraft/world/level/block/state/properties/WallSide; LOW b field_22179 + f Lnet/minecraft/world/level/block/state/properties/WallSide; TALL c field_22180 + f Ljava/lang/String; name d field_22181 + f [Lnet/minecraft/world/level/block/state/properties/WallSide; $VALUES e field_22182 + m ()[Lnet/minecraft/world/level/block/state/properties/WallSide; $values a method_36739 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/WoodType dup net/minecraft/class_4719 + f Lcom/mojang/serialization/Codec; CODEC a field_46535 + f Lnet/minecraft/world/level/block/state/properties/WoodType; OAK b field_21676 + f Lnet/minecraft/world/level/block/state/properties/WoodType; SPRUCE c field_21677 + f Lnet/minecraft/world/level/block/state/properties/WoodType; BIRCH d field_21678 + f Lnet/minecraft/world/level/block/state/properties/WoodType; ACACIA e field_21679 + f Lnet/minecraft/world/level/block/state/properties/WoodType; CHERRY f field_42837 + f Lnet/minecraft/world/level/block/state/properties/WoodType; JUNGLE g field_21680 + f Lnet/minecraft/world/level/block/state/properties/WoodType; DARK_OAK h field_21681 + f Lnet/minecraft/world/level/block/state/properties/WoodType; CRIMSON i field_22183 + f Lnet/minecraft/world/level/block/state/properties/WoodType; WARPED j field_22184 + f Lnet/minecraft/world/level/block/state/properties/WoodType; MANGROVE k field_37657 + f Lnet/minecraft/world/level/block/state/properties/WoodType; BAMBOO l field_40350 + f Ljava/lang/String; name m comp_1299 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; setType n comp_1300 + f Lnet/minecraft/world/level/block/SoundType; soundType o comp_1301 + f Lnet/minecraft/world/level/block/SoundType; hangingSignSoundType p comp_1302 + f Lnet/minecraft/sounds/SoundEvent; fenceGateClose q comp_1303 + f Lnet/minecraft/sounds/SoundEvent; fenceGateOpen r comp_1304 + f Ljava/util/Map; TYPES s field_46536 + m ()Ljava/util/stream/Stream; values a method_24026 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; register a method_24027 + p 0 woodType + m ()Ljava/lang/String; name b comp_1299 + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; setType c comp_1300 + m ()Lnet/minecraft/world/level/block/SoundType; soundType d comp_1301 + m ()Lnet/minecraft/world/level/block/SoundType; hangingSignSoundType e comp_1302 + m ()Lnet/minecraft/sounds/SoundEvent; fenceGateClose f comp_1303 + m ()Lnet/minecraft/sounds/SoundEvent; fenceGateOpen g comp_1304 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/BlockSetType;)V + p 1 name + p 2 setType + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + m ()V +c net/minecraft/world/level/block/state/properties/package-info duq net/minecraft/class_6097 +c net/minecraft/world/level/border/BorderChangeListener dur net/minecraft/class_2780 + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSizeSet a method_11934 + p 1 border + p 2 size + m (Lnet/minecraft/world/level/border/WorldBorder;DD)V onBorderCenterSet a method_11930 + p 1 border + p 2 x + p 4 z + m (Lnet/minecraft/world/level/border/WorldBorder;DDJ)V onBorderSizeLerping a method_11931 + p 1 border + p 2 oldSize + p 4 newSize + p 6 time + m (Lnet/minecraft/world/level/border/WorldBorder;I)V onBorderSetWarningTime a method_11932 + p 1 border + p 2 warningTime + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSetDamagePerBlock b method_11929 + p 1 border + p 2 damagePerBlock + m (Lnet/minecraft/world/level/border/WorldBorder;I)V onBorderSetWarningBlocks b method_11933 + p 1 border + p 2 warningBlocks + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSetDamageSafeZOne c method_11935 + p 1 border + p 2 damageSafeZone +c net/minecraft/world/level/border/BorderChangeListener$DelegateBorderChangeListener dur$a net/minecraft/class_2780$class_3976 + f Lnet/minecraft/world/level/border/WorldBorder; worldBorder a field_17652 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder +c net/minecraft/world/level/border/BorderStatus dus net/minecraft/class_2789 + f Lnet/minecraft/world/level/border/BorderStatus; GROWING a field_12754 + f Lnet/minecraft/world/level/border/BorderStatus; SHRINKING b field_12756 + f Lnet/minecraft/world/level/border/BorderStatus; STATIONARY c field_12753 + f I color d field_12755 + f [Lnet/minecraft/world/level/border/BorderStatus; $VALUES e field_12752 + m ()I getColor a method_11999 + c Retrieves the color that the border should be, while in this state. + m ()[Lnet/minecraft/world/level/border/BorderStatus; $values b method_36740 + m (Ljava/lang/String;II)V + p 3 color + m ()V +c net/minecraft/world/level/border/WorldBorder dut net/minecraft/class_2784 + f Ljava/util/List; listeners a field_12730 + f D MAX_SIZE b field_33643 + f D MAX_CENTER_COORDINATE c field_36191 + f Lnet/minecraft/world/level/border/WorldBorder$Settings; DEFAULT_SETTINGS d field_24122 + f D damagePerBlock e field_12733 + f D damageSafeZone f field_12731 + f I warningTime g field_12735 + f I warningBlocks h field_12734 + f D centerX i field_12738 + f D centerZ j field_12737 + f I absoluteMaxSize k field_12732 + f Lnet/minecraft/world/level/border/WorldBorder$BorderExtent; extent l field_12736 + m ()D getCenterX a method_11964 + m (D)V setSize a method_11969 + p 1 size + m (DD)Z isWithinBounds a method_35317 + p 1 x + p 3 z + m (DDD)Z isWithinBounds a method_39458 + p 1 x + p 3 z + p 5 offset + m (DDDD)Z isWithinBounds a method_61114 + p 1 x1 + p 3 z1 + p 5 x2 + p 7 z2 + m (DDJ)V lerpSizeBetween a method_11957 + p 1 oldSize + p 3 newSize + p 5 time + m (I)V setAbsoluteMaxSize a method_11973 + p 1 size + m (Lnet/minecraft/world/entity/Entity;)D getDistanceToBorder a method_11979 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z isInsideCloseToBorder a method_39459 + p 1 entity + p 2 bounds + m (Lnet/minecraft/world/level/ChunkPos;)Z isWithinBounds a method_11951 + p 1 chunkPos + m (Lnet/minecraft/world/level/border/BorderChangeListener;)V addListener a method_11983 + p 1 listener + m (Lnet/minecraft/world/level/border/WorldBorder$Settings;)V applySettings a method_17905 + p 1 serializer + m (Lnet/minecraft/world/phys/AABB;)Z isWithinBounds a method_11966 + p 1 box + m (Lnet/minecraft/world/phys/Vec3;)Z isWithinBounds a method_61115 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isWithinBounds a method_11952 + p 1 pos + m ()D getCenterZ b method_11980 + m (D)V setDamageSafeZone b method_11981 + p 1 damageSafeZone + m (DD)D getDistanceToBorder b method_11961 + p 1 x + p 3 z + m (DDD)Lnet/minecraft/core/BlockPos; clampToBounds b method_39538 + p 1 x + p 3 y + p 5 z + m (I)V setWarningTime b method_11975 + p 1 warningTime + m (Lnet/minecraft/world/level/border/BorderChangeListener;)V removeListener b method_35318 + p 1 listener + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/BlockPos; clampToBounds b method_61116 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; clampToBounds b method_61117 + p 1 pos + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape c method_17903 + m (D)V setDamagePerBlock c method_11955 + p 1 damagePerBlock + m (DD)V setCenter c method_11978 + p 1 x + p 3 z + m (I)V setWarningBlocks c method_11967 + p 1 warningDistance + m ()Lnet/minecraft/world/level/border/BorderStatus; getStatus d method_11968 + m ()D getMinX e method_11976 + m ()D getMinZ f method_11958 + m ()D getMaxX g method_11963 + m ()D getMaxZ h method_11977 + m ()D getSize i method_11965 + m ()J getLerpRemainingTime j method_11962 + m ()D getLerpTarget k method_11954 + m ()Ljava/util/List; getListeners l method_11970 + m ()I getAbsoluteMaxSize m method_11959 + m ()D getDamageSafeZone n method_11971 + m ()D getDamagePerBlock o method_11953 + m ()D getLerpSpeed p method_11974 + m ()I getWarningTime q method_11956 + m ()I getWarningBlocks r method_11972 + m ()V tick s method_11982 + m ()Lnet/minecraft/world/level/border/WorldBorder$Settings; createSettings t method_27355 + m ()V + m ()V +c net/minecraft/world/level/border/WorldBorder$BorderExtent dut$a net/minecraft/class_2784$class_2785 + m ()D getMinX a method_11994 + m ()D getMaxX b method_11991 + m ()D getMinZ c method_11992 + m ()D getMaxZ d method_11985 + m ()D getSize e method_11984 + m ()D getLerpSpeed f method_11987 + m ()J getLerpRemainingTime g method_11993 + m ()D getLerpTarget h method_11988 + m ()Lnet/minecraft/world/level/border/BorderStatus; getStatus i method_11995 + m ()V onAbsoluteMaxSizeChange j method_11989 + m ()V onCenterChange k method_11990 + m ()Lnet/minecraft/world/level/border/WorldBorder$BorderExtent; update l method_11986 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape m method_17906 +c net/minecraft/world/level/border/WorldBorder$MovingBorderExtent dut$b net/minecraft/class_2784$class_2786 + f Lnet/minecraft/world/level/border/WorldBorder; field_12743 a field_12743 + f D from b field_12740 + f D to c field_12739 + f J lerpEnd d field_12742 + f J lerpBegin e field_12741 + f D lerpDuration f field_12744 + m (Lnet/minecraft/world/level/border/WorldBorder;DDJ)V + p 2 from + p 4 to + p 6 lerpDuration +c net/minecraft/world/level/border/WorldBorder$Settings dut$c net/minecraft/class_2784$class_5200 + f D centerX a field_24123 + f D centerZ b field_24124 + f D damagePerBlock c field_24125 + f D safeZone d field_24126 + f I warningBlocks e field_24127 + f I warningTime f field_24128 + f D size g field_24129 + f J sizeLerpTime h field_24130 + f D sizeLerpTarget i field_24131 + m ()D getCenterX a method_27356 + m (Lcom/mojang/serialization/DynamicLike;Lnet/minecraft/world/level/border/WorldBorder$Settings;)Lnet/minecraft/world/level/border/WorldBorder$Settings; read a method_27358 + p 0 dynamic + p 1 defaultValue + m (Lnet/minecraft/nbt/CompoundTag;)V write a method_27357 + p 1 nbt + m ()D getCenterZ b method_27359 + m ()D getDamagePerBlock c method_27360 + m ()D getSafeZone d method_27361 + m ()I getWarningBlocks e method_27362 + m ()I getWarningTime f method_27363 + m ()D getSize g method_27364 + m ()J getSizeLerpTime h method_27365 + m ()D getSizeLerpTarget i method_27366 + m (DDDDIIDJD)V + p 1 centerX + p 3 centerZ + p 5 damagePerBlock + p 7 safeZone + p 9 warningBlocks + p 10 warningTime + p 11 size + p 13 sizeLerpTime + p 15 sizeLerpTarget + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 border +c net/minecraft/world/level/border/WorldBorder$StaticBorderExtent dut$d net/minecraft/class_2784$class_2787 + f Lnet/minecraft/world/level/border/WorldBorder; field_12748 a field_12748 + f D size b field_12747 + f D minX c field_12746 + f D minZ d field_12745 + f D maxX e field_12750 + f D maxZ f field_12749 + f Lnet/minecraft/world/phys/shapes/VoxelShape; shape g field_17653 + m ()V updateBox n method_11996 + m (Lnet/minecraft/world/level/border/WorldBorder;D)V + p 2 size +c net/minecraft/world/level/border/package-info duu net/minecraft/class_6098 +c net/minecraft/world/level/chunk/BlockColumn duv net/minecraft/class_6557 + m (I)Lnet/minecraft/world/level/block/state/BlockState; getBlock a method_32892 + p 1 pos + m (ILnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_38092 + p 1 pos + p 2 state +c net/minecraft/world/level/chunk/BulkSectionAccess duw net/minecraft/class_5867 + f Lnet/minecraft/world/level/LevelAccessor; level a field_29037 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; acquiredSections b field_29038 + f Lnet/minecraft/world/level/chunk/LevelChunkSection; lastSection c field_29039 + f J lastSectionKey d field_29040 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/LevelChunkSection; getSection a method_33944 + p 1 pos + m (Lnet/minecraft/core/BlockPos;IJ)Lnet/minecraft/world/level/chunk/LevelChunkSection; method_33945 a method_33945 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_33946 + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;)V + p 1 level +c net/minecraft/world/level/chunk/CarvingMask dux net/minecraft/class_6643 + f I minY a field_35049 + f Ljava/util/BitSet; mask b field_35050 + f Lnet/minecraft/world/level/chunk/CarvingMask$Mask; additionalMask c field_36217 + m ()[J toArray a method_38864 + m (III)V set a method_38865 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; stream a method_38866 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/core/BlockPos; method_38867 a method_38867 + m (Lnet/minecraft/world/level/chunk/CarvingMask$Mask;)V setAdditionalMask a method_39785 + p 1 additionalMask + m (III)Z get b method_38868 + p 1 x + p 2 y + p 3 z + m (III)I getIndex c method_38869 + p 1 x + p 2 y + p 3 z + m (III)Z method_39786 d method_39786 + m (II)V + p 1 mask + p 2 minY + m ([JI)V + p 1 mask + p 2 minY +c net/minecraft/world/level/chunk/CarvingMask$Mask dux$a net/minecraft/class_6643$class_6828 +c net/minecraft/world/level/chunk/ChunkAccess duy net/minecraft/class_2791 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f I NO_FILLED_SECTION a field_44632 + f [Lit/unimi/dsi/fastutil/shorts/ShortList; postProcessing b field_34536 + f Z unsaved c field_34537 + f Lnet/minecraft/world/level/ChunkPos; chunkPos d field_34538 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk e field_34539 + f Lnet/minecraft/world/level/chunk/UpgradeData; upgradeData f field_34540 + f Lnet/minecraft/world/level/levelgen/blending/BlendingData; blendingData g field_35468 + f Ljava/util/Map; heightmaps h field_34541 + f Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; skyLightSources i field_44708 + f Ljava/util/Map; pendingBlockEntities j field_34542 + f Ljava/util/Map; blockEntities k field_34543 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor l field_34544 + f [Lnet/minecraft/world/level/chunk/LevelChunkSection; sections m field_34545 + f Lorg/slf4j/Logger; LOGGER n field_34548 + f Lit/unimi/dsi/fastutil/longs/LongSet; EMPTY_REFERENCE_SET o field_37052 + f Z isLightCorrect p field_34549 + f J inhabitedTime q field_34550 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; carverBiomeSettings r field_39411 + f Ljava/util/Map; structureStarts s field_34552 + f Ljava/util/Map; structuresRefences t field_34553 + m ()V initializeLightSources A method_51522 + m ()I getHighestFilledSectionIndex a method_12040 + m (I)Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; getListenerRegistry a method_32914 + p 1 sectionY + m (II)Z isYSpaceEmpty a method_12228 + p 1 startY + p 2 endY + m (III)Ljava/lang/String; method_38254 a method_38254 + m (J)V incrementInhabitedTime a method_38870 + p 1 amount + m (Lnet/minecraft/world/entity/Entity;)V addEntity a method_12002 + p 1 entity + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/biome/Climate$Sampler;)V fillBiomesFromNoise a method_38257 + p 1 resolver + p 2 sampler + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V setBlockEntity a method_12007 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51523 a method_51523 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap; getOrCreateHeightmapUnprimed a method_12032 + p 1 type + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_12005 + p 1 type + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;[J)V setHeightmap a method_12037 + p 1 type + p 2 data + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V setBlendingData a method_39294 + p 1 blendingData + m (Ljava/util/Map;)V setAllStarts a method_12034 + p 1 structureStarts + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/levelgen/NoiseChunk; getOrCreateNoiseChunk a method_38255 + p 1 noiseChunkCreator + m (Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;)V findBlocks a method_51525 + p 1 predicate + p 2 output + m (Ljava/util/function/Supplier;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; carverBiome a method_44214 + p 1 caverBiomeSettingsSupplier + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_12010 + p 1 pos + p 2 state + p 3 isMoving + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; getBlockEntityNbtForSaving a method_20598 + p 1 pos + p 2 registries + m (Lnet/minecraft/core/Registry;[Lnet/minecraft/world/level/chunk/LevelChunkSection;)V replaceMissingSections a method_38256 + p 0 biomeRegistry + p 1 sections + m (Lnet/minecraft/nbt/CompoundTag;)V setBlockEntityNbt a method_12042 + p 1 tag + m (SI)V addPackedPostProcess a method_12029 + p 1 packedPosition + p 2 index + m (Z)V setUnsaved a method_12008 + p 1 unsaved + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;I)Lit/unimi/dsi/fastutil/shorts/ShortList; getOrCreateOffsetList a method_12026 + p 0 packedPositions + p 1 index + m ()I getHighestSectionPosition b method_12031 + m (I)Lnet/minecraft/world/level/chunk/LevelChunkSection; getSection b method_38259 + p 1 index + m (J)V setInhabitedTime b method_12028 + p 1 inhabitedTime + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Z hasPrimedHeightmap b method_39295 + p 1 type + m (Z)V setLightCorrect b method_12020 + p 1 lightCorrect + m ()Ljava/util/Set; getBlockEntitiesPos c method_12021 + m (I)Z isSectionEmpty c method_60791 + p 1 y + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap; method_38260 c method_38260 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/LongSet; method_38261 c method_38261 + m ()[Lnet/minecraft/world/level/chunk/LevelChunkSection; getSections d method_12006 + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntity d method_12041 + p 1 pos + m ()Ljava/util/Collection; getHeightmaps e method_12011 + m (Lnet/minecraft/core/BlockPos;)V markPosForPostprocessing e method_12039 + p 1 pos + m ()Lnet/minecraft/world/level/ChunkPos; getPos f method_12004 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/nbt/CompoundTag; getBlockEntityNbt f method_12024 + p 1 pos + m ()Ljava/util/Map; getAllStarts g method_12016 + m ()Z isUnsaved i method_12044 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getPersistedStatus j method_12009 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getHighestGeneratedStatus k method_51526 + m ()[Lit/unimi/dsi/fastutil/shorts/ShortList; getPostProcessing n method_12012 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; getBlockTicks o method_12013 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; getFluidTicks p method_12014 + m ()Lnet/minecraft/world/level/chunk/ChunkAccess$TicksToSave; getTicksForSerialization q method_39296 + m ()Lnet/minecraft/world/level/chunk/UpgradeData; getUpgradeData r method_12003 + m ()Z isOldNoiseGeneration s method_39297 + m ()Lnet/minecraft/world/level/levelgen/blending/BlendingData; getBlendingData t method_39299 + m ()J getInhabitedTime u method_12033 + m ()Z isLightCorrect v method_12038 + m ()Z hasAnyStructureReferences w method_38871 + m ()Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; getBelowZeroRetrogen x method_39300 + m ()Z isUpgrading y method_39461 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getHeightAccessorForGeneration z method_39460 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;J[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 levelHeightAccessor + p 4 biomeRegistry + p 5 inhabitedTime + p 7 sections + p 8 blendingData + m ()V +c net/minecraft/world/level/chunk/ChunkAccess$TicksToSave duy$a net/minecraft/class_2791$class_6745 + f Lnet/minecraft/world/ticks/SerializableTickContainer; blocks a comp_239 + f Lnet/minecraft/world/ticks/SerializableTickContainer; fluids b comp_240 + m ()Lnet/minecraft/world/ticks/SerializableTickContainer; blocks a comp_239 + m ()Lnet/minecraft/world/ticks/SerializableTickContainer; fluids b comp_240 + m (Lnet/minecraft/world/ticks/SerializableTickContainer;Lnet/minecraft/world/ticks/SerializableTickContainer;)V +c net/minecraft/world/level/chunk/ChunkGenerator duz net/minecraft/class_2794 + f Lcom/mojang/serialization/Codec; CODEC a field_24746 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b field_12761 + f Ljava/util/function/Supplier; featuresPerStep c field_39412 + f Ljava/util/function/Function; generationSettingsGetter d field_39413 + m ()V validate a method_59825 + m (IILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/NoiseColumn; getBaseColumn a method_26261 + p 1 x + p 2 z + p 3 height + p 4 random + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getBaseHeight a method_16397 + p 1 x + p 2 z + p 3 type + p 4 level + p 5 random + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/BlockPos;IZ)Lcom/mojang/datafixers/util/Pair; findNearestMapStructure a method_12103 + p 1 level + p 2 structure + p 3 pos + p 4 searchRadius + p 5 skipKnownStructures + m (Lnet/minecraft/server/level/WorldGenRegion;)V spawnOriginalMobs a method_12107 + p 1 level + m (Lnet/minecraft/server/level/WorldGenRegion;JLnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)V applyCarvers a method_12108 + p 1 level + p 2 seed + p 4 random + p 5 biomeManager + p 6 structureManager + p 7 chunk + p 8 step + m (Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)V buildSurface a method_12110 + p 1 level + p 2 structureManager + p 3 random + p 4 chunk + m (Lnet/minecraft/world/level/LevelHeightAccessor;)I getSpawnHeight a method_12100 + p 1 level + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)I fetchReferences a method_38264 + p 0 structureManager + p 1 chunk + p 2 sectionPos + p 3 structure + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z tryAddReference a method_41521 + p 0 structureManager + p 1 structureStart + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z method_41040 a method_41040 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/Holder;)V method_41041 a method_41041 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)V createReferences a method_16130 + p 1 level + p 2 structureManager + p 3 chunk + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_38265 a method_38265 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/StructureManager;)V applyBiomeDecoration a method_12102 + p 1 level + p 2 chunk + p 3 structureManager + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Lnet/minecraft/world/level/ChunkPos;)V method_39787 a method_39787 + m (Lnet/minecraft/world/level/biome/BiomeSource;Ljava/util/function/Function;)Ljava/util/List; method_44215 a method_44215 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getWritableArea a method_39462 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38267 a method_38267 + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; createBiomes a method_38275 + p 1 randomState + p 2 blender + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; fillFromNoise a method_12088 + p 1 blender + p 2 randomState + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/lang/Integer; method_38268 a method_38268 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/SectionPos;)Z tryGenerateStructure a method_41044 + p 1 structureSelectionEntry + p 2 structureManager + p 3 registryAccess + p 4 random + p 5 structureTemplateManager + p 6 seed + p 8 chunk + p 9 chunkPos + p 10 sectionPos + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_30149 a method_30149 + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/core/Registry;)Ljava/lang/String; method_41045 a method_41045 + m (Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)Ljava/util/Set; method_41046 a method_41046 + m (Lit/unimi/dsi/fastutil/ints/IntSet;Lnet/minecraft/world/level/biome/FeatureSorter$StepFeatureData;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V method_39788 a method_39788 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/core/BlockPos;)V addDebugScreenInfo a method_40450 + p 1 info + p 2 random + p 3 pos + m (Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_41050 a method_41050 + m (Ljava/util/Set;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Lcom/mojang/datafixers/util/Pair; getNearestGeneratedStructure a method_40148 + p 1 structureHoldersSet + p 2 level + p 3 structureManager + p 4 pos + p 5 skipKnownStructures + p 6 placement + m (Ljava/util/Set;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/StructureManager;IIIZJLnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement;)Lcom/mojang/datafixers/util/Pair; getNearestGeneratedStructure a method_40146 + p 0 structureHoldersSet + p 1 level + p 2 structureManager + p 3 x + p 4 y + p 5 z + p 6 skipKnownStructures + p 7 seed + p 9 spreadPlacement + m (Ljava/util/Set;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/StructureManager;ZLnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Lnet/minecraft/world/level/ChunkPos;)Lcom/mojang/datafixers/util/Pair; getStructureGeneratingAt a method_41522 + p 0 structureHoldersSet + p 1 level + p 2 structureManager + p 3 skipKnownStructures + p 4 placement + p 5 chunkPos + m (Ljava/util/function/Function;Lnet/minecraft/core/Holder;)Ljava/util/List; method_44217 a method_44217 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z method_41047 a method_41047 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; getBiomeGenerationSettings a method_44216 + p 1 biome + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/random/WeightedRandomList; getMobsAt a method_12113 + p 1 biome + p 2 structureManager + p 3 category + p 4 pos + m (Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/level/levelgen/RandomState;J)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createState a method_46696 + p 1 structureSetLookup + p 2 randomState + p 3 seed + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Ljava/lang/String; method_38271 a method_38271 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/lang/String; method_38272 a method_38272 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)V createStructures a method_16129 + p 1 registryAccess + p 2 structureState + p 3 structureManager + p 4 chunk + p 5 structureTemplateManager + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_41052 a method_41052 + m ()Lcom/mojang/serialization/MapCodec; codec b method_28506 + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getFirstFreeHeight b method_20402 + p 1 x + p 2 z + p 3 type + p 4 level + p 5 random + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_30148 b method_30148 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_44218 b method_44218 + m ()Ljava/util/Optional; getTypeNameForDataFixer c method_39301 + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getFirstOccupiedHeight c method_18028 + p 1 x + p 2 z + p 3 types + p 4 level + p 5 random + m ()Lnet/minecraft/world/level/biome/BiomeSource; getBiomeSource d method_12098 + m ()I getGenDepth e method_12104 + m ()I getSeaLevel f method_16398 + m ()I getMinY g method_33730 + m (Lnet/minecraft/world/level/biome/BiomeSource;)V + p 1 biomeSource + m (Lnet/minecraft/world/level/biome/BiomeSource;Ljava/util/function/Function;)V + p 1 biomeSource + p 2 generationSettingsGetter + m ()V +c net/minecraft/world/level/chunk/ChunkGeneratorStructureState dva net/minecraft/class_7869 + f Lorg/slf4j/Logger; LOGGER a field_40899 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState b field_40900 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c field_40901 + f J levelSeed d field_40902 + f J concentricRingsSeed e field_40903 + f Ljava/util/Map; placementsForStructure f field_40904 + f Ljava/util/Map; ringPositions g field_40905 + f Z hasGeneratedPositions h field_40906 + f Ljava/util/List; possibleStructureSets i field_40907 + m ()Ljava/util/List; possibleStructureSets a method_46697 + m (IILnet/minecraft/core/HolderSet;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/ChunkPos; method_46698 a method_46698 + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/core/Holder;Ljava/util/List;)Ljava/util/List; method_46701 a method_46701 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder$Reference;)Z method_46699 a method_46699 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)Z method_46700 a method_46700 + m (Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/biome/BiomeSource;Ljava/util/stream/Stream;)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createForFlat a method_46703 + p 0 randomState + p 1 levelSeed + p 3 biomeSource + p 4 structureSets + m (Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/HolderLookup;)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createForNormal a method_46702 + p 0 randomState + p 1 seed + p 3 biomeSource + p 4 structureSetLookup + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/util/List; method_46704 a method_46704 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry;)Ljava/util/stream/Stream; method_46705 a method_46705 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet;Lnet/minecraft/world/level/biome/BiomeSource;)Z hasBiomesForStructureSet a method_46706 + p 0 structureSet + p 1 biomeSource + m (Lnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Ljava/util/List; getRingPositionsFor a method_46707 + p 1 placement + m (Ljava/util/Set;Lnet/minecraft/core/Holder;)V method_46711 a method_46711 + m (Lnet/minecraft/core/Holder;)Ljava/util/List; getPlacementsForStructure a method_46708 + p 1 structure + m (Lnet/minecraft/core/Holder;III)Z hasStructureChunkInRange a method_46709 + p 1 structureSet + p 2 x + p 3 z + p 4 range + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Ljava/util/concurrent/CompletableFuture; generateRingPositions a method_46710 + p 1 structureSet + p 2 placement + m ()V ensureStructuresGenerated b method_46712 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c method_46713 + m ()J getLevelSeed d method_46714 + m ()V generatePositions e method_46715 + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeSource;JJLjava/util/List;)V + p 1 randomState + p 2 biomeSource + p 3 levelSeed + p 5 cocentricRingsSeed + p 7 possibleStructureSets + m ()V +c net/minecraft/world/level/chunk/ChunkGenerators dvb net/minecraft/class_7511 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_44219 + p 0 registry + m ()V +c net/minecraft/world/level/chunk/ChunkSource dvc net/minecraft/class_2802 + m (II)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkNow a method_21730 + p 1 chunkX + p 2 chunkZ + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_12121 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (IIZ)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_12126 + p 1 chunkX + p 2 chunkZ + p 3 load + m (Lnet/minecraft/world/level/ChunkPos;Z)V updateChunkForced a method_12124 + p 1 pos + p 2 add + m (Ljava/util/function/BooleanSupplier;Z)V tick a method_12127 + p 1 hasTimeLeft + p 2 tickChunks + m (ZZ)V setSpawnSettings a method_12128 + p 1 hostile + p 2 peaceful + m (II)Z hasChunk b method_12123 + c @return {@code true} if a chunk is loaded at the provided position, without forcing a chunk load. + p 1 chunkX + p 2 chunkZ + m ()Ljava/lang/String; gatherStats e method_12122 + c @return A human-readable string representing data about this chunk source. + m ()I getLoadedChunksCount j method_14151 + m ()Lnet/minecraft/world/level/lighting/LevelLightEngine; getLightEngine p method_12130 + m ()V +c net/minecraft/world/level/chunk/DataLayer dvd net/minecraft/class_2804 + c A representation of a 16x16x16 cube of nibbles (half-bytes). + f I LAYER_COUNT a field_34052 + f I LAYER_SIZE b field_31404 + f I SIZE c field_31403 + f [B data d field_12783 + f I NIBBLE_SIZE e field_31405 + f I defaultValue f field_44635 + m ()[B getData a method_12137 + m (I)V fill a method_51527 + p 1 defaultValue + m (II)V set a method_12142 + p 1 index + p 2 value + m (III)I get a method_12139 + c Note all coordinates must be in the range [0, 16), they are not checked, and will either silently overrun the array or throw an exception.\n@return The value of this data layer at the provided position. + p 1 x + p 2 y + p 3 z + m (IIII)V set a method_12145 + c Sets the value of this data layer at the provided position.\nNote all coordinates must be in the range [0, 16), they are not checked, and will either silently overrun the array or throw an exception. + p 1 x + p 2 y + p 3 z + p 4 value + m ()Lnet/minecraft/world/level/chunk/DataLayer; copy b method_12144 + m (I)Ljava/lang/String; layerToString b method_35320 + p 1 unused + m (III)I getIndex b method_12140 + p 0 x + p 1 y + p 2 z + m ()Z isDefinitelyHomogenous c method_51380 + m (I)Z isDefinitelyFilledWith c method_51379 + p 1 value + m ()Z isEmpty d method_12146 + m (I)I get d method_12141 + p 1 index + m (I)I getNibbleIndex e method_37459 + p 0 index + m (I)I getByteIndex f method_12138 + p 0 index + m (I)B packFilled g method_51381 + p 0 value + m ()V + m (I)V + p 1 size + m ([B)V + p 1 data +c net/minecraft/world/level/chunk/EmptyLevelChunk dve net/minecraft/class_2812 + f Lnet/minecraft/core/Holder; biome n field_36407 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 pos + p 3 biome +c net/minecraft/world/level/chunk/GlobalPalette dvf net/minecraft/class_2816 + f Lnet/minecraft/core/IdMap; registry a field_12828 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38286 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m (Lnet/minecraft/core/IdMap;)V + p 1 registry +c net/minecraft/world/level/chunk/HashMapPalette dvg net/minecraft/class_2814 + f Lnet/minecraft/core/IdMap; registry a field_12821 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; values b field_12824 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_12825 + f I bits d field_12822 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38287 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m ()Ljava/util/List; getEntries d method_38288 + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;)V + p 1 registry + p 2 bits + p 3 resizeHandler + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values +c net/minecraft/world/level/chunk/ImposterProtoChunk dvh net/minecraft/class_2821 + c During world generation, adjacent chunks may be fully generated (and thus be level chunks), but are often needed in proto chunk form. This wraps a completely generated chunk as a proto chunk. + f Lnet/minecraft/world/level/chunk/LevelChunk; wrapped n field_12866 + f Z allowWrites o field_34554 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getWrapped C method_12240 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; fixType c method_12239 + p 1 type + m (Lnet/minecraft/world/level/chunk/LevelChunk;Z)V + p 1 wrapped + p 2 allowWrites +c net/minecraft/world/level/chunk/LevelChunk dvi net/minecraft/class_2818 + f Lorg/slf4j/Logger; LOGGER n field_12839 + f Lnet/minecraft/world/level/block/entity/TickingBlockEntity; NULL_TICKER o field_27221 + f Ljava/util/Map; tickersInLevel p field_27222 + f Z loaded q field_12855 + f Lnet/minecraft/world/level/Level; level r field_12858 + f Ljava/util/function/Supplier; fullStatus s field_12856 + f Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor; postLoad t field_12850 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; gameEventListenerRegistrySections u field_28129 + f Lnet/minecraft/world/ticks/LevelChunkTicks; blockTicks v field_35471 + f Lnet/minecraft/world/ticks/LevelChunkTicks; fluidTicks w field_35472 + m ()Z isEmpty C method_12223 + m ()Lnet/minecraft/server/level/FullChunkStatus; getFullStatus D method_12225 + m ()V runPostLoad E method_12206 + m ()Lnet/minecraft/world/level/Level; getLevel F method_12200 + m ()Ljava/util/Map; getBlockEntities G method_12214 + m ()V postProcessGeneration H method_12221 + m ()V clearAllBlockEntities I method_38289 + m ()V registerAllBlockEntitiesAfterLevelLoad J method_31713 + m ()Z isInLevel K method_31715 + m (III)Lnet/minecraft/world/level/material/FluidState; getFluidState a method_12234 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/server/level/ServerLevel;)V registerTickContainerInLevel a method_39305 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;II)Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; method_32917 a method_32917 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/server/level/ServerLevel;)V removeGameEventListener a method_32918 + p 1 blockEntity + p 2 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)Lnet/minecraft/world/level/block/entity/TickingBlockEntity; createTicker a method_31718 + p 1 blockEntity + p 2 ticker + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper;)Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper; method_31719 a method_31719 + m (Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper;)V method_38290 a method_38290 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V method_31716 a method_31716 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_12201 + p 1 pos + p 2 creationType + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/entity/BlockEntity; promotePendingBlockEntity a method_12204 + p 1 pos + p 2 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V replaceBiomes a method_49525 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Consumer;)V replaceWithPacketData a method_12224 + p 1 buffer + p 2 tag + p 3 outputTagConsumer + m (III)Ljava/lang/String; method_12202 b method_12202 + m (Lnet/minecraft/server/level/ServerLevel;)V unregisterTickContainerFromLevel b method_39306 + p 1 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V addAndRegisterBlockEntity b method_12216 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/server/level/ServerLevel;)V addGameEventListener b method_32919 + p 1 blockEntity + p 2 level + m (Ljava/util/function/Supplier;)V setFullStatus b method_12207 + p 1 fullStatus + m (III)Ljava/lang/String; method_12227 c method_12227 + m (J)V unpackTicks c method_20530 + p 1 pos + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V updateBlockEntityTicker c method_31723 + p 1 blockEntity + m (Z)V setLoaded c method_12226 + p 1 loaded + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V method_32920 d method_32920 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; createBlockEntity g method_12208 + p 1 pos + m (I)V removeGameEventListenerRegistry h method_51382 + p 1 sectionY + m (Lnet/minecraft/core/BlockPos;)Z isTicking h method_31724 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntityTicker k method_31725 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;)V + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/LevelChunkTicks;J[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 level + p 2 pos + p 3 data + p 4 blockTicks + p 5 fluidTicks + p 6 inhabitedTime + p 8 sections + p 9 postLoad + p 10 blendingData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor;)V + p 1 level + p 2 chunk + p 3 postLoad + m ()V +c net/minecraft/world/level/chunk/LevelChunk$1 dvi$1 net/minecraft/class_2818$1 + m ()V +c net/minecraft/world/level/chunk/LevelChunk$BoundTickingBlockEntity dvi$a net/minecraft/class_2818$class_5563 + f Lnet/minecraft/world/level/chunk/LevelChunk; field_27223 a field_27223 + f Lnet/minecraft/world/level/block/entity/BlockEntity; blockEntity b field_27224 + f Lnet/minecraft/world/level/block/entity/BlockEntityTicker; ticker c field_27225 + f Z loggedInvalidBlockState d field_27226 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)V + p 2 blockEntity + p 3 ticker +c net/minecraft/world/level/chunk/LevelChunk$EntityCreationType dvi$b net/minecraft/class_2818$class_2819 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; IMMEDIATE a field_12860 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; QUEUED b field_12861 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; CHECK c field_12859 + f [Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; $VALUES d field_12862 + m ()[Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; $values a method_36742 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor dvi$c net/minecraft/class_2818$class_6829 +c net/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper dvi$d net/minecraft/class_2818$class_5564 + f Lnet/minecraft/world/level/block/entity/TickingBlockEntity; ticker a field_27228 + m (Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V rebind a method_31727 + p 1 ticker + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V + p 2 ticker +c net/minecraft/world/level/chunk/LevelChunkSection dvj net/minecraft/class_2826 + f I SECTION_WIDTH a field_31406 + f I SECTION_HEIGHT b field_31407 + f I SECTION_SIZE c field_31408 + f I BIOME_CONTAINER_BITS d field_34555 + f S nonEmptyBlockCount e field_12877 + f S tickingBlockCount f field_12882 + f S tickingFluidCount g field_12881 + f Lnet/minecraft/world/level/chunk/PalettedContainer; states h field_12878 + f Lnet/minecraft/world/level/chunk/PalettedContainerRO; biomes i field_34556 + m ()V acquire a method_16676 + m (III)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_12254 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_16675 + p 1 x + p 2 y + p 3 z + p 4 state + m (IIILnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_12256 + p 1 x + p 2 y + p 3 z + p 4 state + p 5 useLocks + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/biome/Climate$Sampler;III)V fillBiomesFromNoise a method_38291 + p 1 biomeResolver + p 2 climateSampler + p 3 x + p 4 y + p 5 z + m (Ljava/util/function/Predicate;)Z maybeHas a method_19523 + c @return {@code true} if this section has any states matching the given predicate. As the internal representation uses a {@link net.minecraft.world.level.chunk.Palette}, this is more efficient than looping through every position in the section, or indeed the chunk. + p 1 predicate + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12258 + p 1 buffer + m ()V release b method_16677 + m (III)Lnet/minecraft/world/level/material/FluidState; getFluidState b method_12255 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V readBiomes b method_49526 + p 1 buffer + m ()Z hasOnlyAir c method_38292 + c @return {@code true} if this section consists only of air-like blocks. + m (III)Lnet/minecraft/core/Holder; getNoiseBiome c method_38293 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V write c method_12257 + p 1 buffer + m ()Z isRandomlyTicking d method_12262 + m ()Z isRandomlyTickingBlocks e method_12263 + c @return {@code true} if this section has any blocks that require random ticks. + m ()Z isRandomlyTickingFluids f method_12264 + c @return {@code true} if this section has any fluids that require random ticks. + m ()V recalcBlockCounts g method_12253 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; getStates h method_12265 + m ()Lnet/minecraft/world/level/chunk/PalettedContainerRO; getBiomes i method_38294 + m ()I getSerializedSize j method_12260 + m (Lnet/minecraft/world/level/chunk/PalettedContainer;Lnet/minecraft/world/level/chunk/PalettedContainerRO;)V + p 1 states + p 2 biomes + m (Lnet/minecraft/core/Registry;)V + p 1 biomeRegistry +c net/minecraft/world/level/chunk/LevelChunkSection$1BlockCounter dvj$a net/minecraft/class_2826$class_6869 + f I nonEmptyBlockCount a field_36408 + f I tickingBlockCount b field_36409 + f I tickingFluidCount c field_36410 + m (Lnet/minecraft/world/level/block/state/BlockState;I)V accept a method_40155 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;)V +c net/minecraft/world/level/chunk/LightChunk dvk net/minecraft/class_8527 + m ()Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; getSkyLightSources B method_12018 + m (Ljava/util/function/BiConsumer;)V findBlockLightSources a method_51524 + p 1 output +c net/minecraft/world/level/chunk/LightChunkGetter dvl net/minecraft/class_2823 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)V onLightUpdate a method_12247 + p 1 layer + p 2 pos + m (II)Lnet/minecraft/world/level/chunk/LightChunk; getChunkForLighting c method_12246 + p 1 chunkX + p 2 chunkZ + m ()Lnet/minecraft/world/level/BlockGetter; getLevel q method_16399 +c net/minecraft/world/level/chunk/LinearPalette dvm net/minecraft/class_2834 + f Lnet/minecraft/core/IdMap; registry a field_12900 + f [Ljava/lang/Object; values b field_12904 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_12905 + f I bits d field_12903 + f I size e field_12901 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38295 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values + m (Lnet/minecraft/core/IdMap;[Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PaletteResize;II)V + p 1 registry + p 2 values + p 3 resizeHandler + p 4 bits + p 5 size +c net/minecraft/world/level/chunk/MissingPaletteEntryException dvn net/minecraft/class_6558 + m (I)V + p 1 index +c net/minecraft/world/level/chunk/Palette dvo net/minecraft/class_2837 + m ()I getSerializedSize a method_12290 + m (I)Ljava/lang/Object; valueFor a method_12288 + p 1 id + m (Ljava/lang/Object;)I idFor a method_12291 + p 1 state + m (Ljava/util/function/Predicate;)Z maybeHas a method_19525 + p 1 filter + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12289 + p 1 buffer + m ()I getSize b method_12197 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_12287 + p 1 buffer + m ()Lnet/minecraft/world/level/chunk/Palette; copy c method_39956 +c net/minecraft/world/level/chunk/Palette$Factory dvo$a net/minecraft/class_2837$class_6559 +c net/minecraft/world/level/chunk/PaletteResize dvp net/minecraft/class_2835 +c net/minecraft/world/level/chunk/PalettedContainer dvq net/minecraft/class_2841 + f I MIN_PALETTE_BITS a field_34557 + f Lnet/minecraft/world/level/chunk/PaletteResize; dummyPaletteResize b field_34558 + f Lnet/minecraft/core/IdMap; registry c field_34559 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Data; data d field_34560 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; strategy e field_34561 + f Lnet/minecraft/util/ThreadingDetector; threadingDetector f field_36300 + m ()V acquire a method_12334 + m (I)Ljava/lang/Object; get a method_12331 + p 1 index + m (IIILjava/lang/Object;)Ljava/lang/Object; getAndSet a method_12328 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)Ljava/lang/Object; getAndSet a method_12336 + p 1 index + p 2 state + m (Lnet/minecraft/util/SimpleBitStorage$InitializationException;)Ljava/lang/String; method_49527 a method_49527 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38296 a method_38296 + m (Lnet/minecraft/world/level/chunk/HashMapPalette;I)I method_44340 a method_44340 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$CountConsumer;Lit/unimi/dsi/fastutil/ints/Int2IntMap$Entry;)V method_21733 a method_21733 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$Data;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Data; createOrReuseData a method_38297 + p 1 data + p 2 id + m (Lnet/minecraft/world/level/chunk/PalettedContainer;)Lnet/minecraft/world/level/chunk/PalettedContainerRO; method_44341 a method_44341 + m (Lnet/minecraft/world/level/chunk/PalettedContainerRO$Unpacker;Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; method_44342 a method_44342 + m (Lit/unimi/dsi/fastutil/ints/Int2IntOpenHashMap;I)V method_21734 a method_21734 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/chunk/Palette;I)V method_39794 a method_39794 + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; codecRW a method_44343 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PalettedContainerRO$Unpacker;)Lcom/mojang/serialization/Codec; codec a method_38298 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + p 4 unpacker + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/Palette;I)I method_44344 a method_44344 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; unpack a method_44346 + p 0 registry + p 1 strategy + p 2 packedData + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO;)Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData; method_38302 a method_38302 + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12326 + p 1 buffer + m ([ILjava/util/function/IntUnaryOperator;)V swapPalette a method_39894 + p 0 bits + p 1 operator + m ()V release b method_12335 + m (IIILjava/lang/Object;)Ljava/lang/Object; getAndSetUnchecked b method_16678 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)V set b method_12322 + p 1 index + p 2 state + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; codecRO b method_44347 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; method_44348 b method_44348 + m (IIILjava/lang/Object;)V set c method_35321 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)I method_44349 c method_44349 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; copy d method_39957 + m (ILjava/lang/Object;)I method_12333 d method_12333 + m ()Ljava/lang/String; method_49528 f method_49528 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration;Lnet/minecraft/util/BitStorage;Ljava/util/List;)V + p 1 registry + p 2 strategy + p 3 configuration + p 4 storage + p 5 values + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainer$Data;)V + p 1 registry + p 2 strategy + p 3 data + m (Lnet/minecraft/core/IdMap;Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;)V + p 1 registry + p 2 palette + p 3 strategy +c net/minecraft/world/level/chunk/PalettedContainer$Configuration dvq$a net/minecraft/class_2841$class_6560 + f Lnet/minecraft/world/level/chunk/Palette$Factory; factory a comp_72 + f I bits b comp_73 + m ()Lnet/minecraft/world/level/chunk/Palette$Factory; factory a comp_72 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Data; createData a method_38305 + p 1 registry + p 2 paletteResize + p 3 size + m ()I bits b comp_73 + m (Lnet/minecraft/world/level/chunk/Palette$Factory;I)V +c net/minecraft/world/level/chunk/PalettedContainer$CountConsumer dvq$b net/minecraft/class_2841$class_4464 +c net/minecraft/world/level/chunk/PalettedContainer$Data dvq$c net/minecraft/class_2841$class_6561 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; configuration a comp_74 + f Lnet/minecraft/util/BitStorage; storage b comp_118 + f Lnet/minecraft/world/level/chunk/Palette; palette c comp_119 + m ()I getSerializedSize a method_38306 + m (Lnet/minecraft/world/level/chunk/Palette;Lnet/minecraft/util/BitStorage;)V copyFrom a method_38308 + p 1 palette + p 2 bitStorage + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_38309 + p 1 buffer + m ()Lnet/minecraft/world/level/chunk/PalettedContainer$Data; copy b method_44338 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; configuration c comp_74 + m ()Lnet/minecraft/util/BitStorage; storage d comp_118 + m ()Lnet/minecraft/world/level/chunk/Palette; palette e comp_119 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration;Lnet/minecraft/util/BitStorage;Lnet/minecraft/world/level/chunk/Palette;)V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy dvq$d net/minecraft/class_2841$class_6563 + f Lnet/minecraft/world/level/chunk/Palette$Factory; SINGLE_VALUE_PALETTE_FACTORY a field_34566 + f Lnet/minecraft/world/level/chunk/Palette$Factory; LINEAR_PALETTE_FACTORY b field_34567 + f Lnet/minecraft/world/level/chunk/Palette$Factory; HASHMAP_PALETTE_FACTORY c field_34568 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; SECTION_STATES d field_34569 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; SECTION_BIOMES e field_34570 + f Lnet/minecraft/world/level/chunk/Palette$Factory; GLOBAL_PALETTE_FACTORY f field_34571 + f I sizeBits g field_34572 + m ()I size a method_38312 + m (III)I getIndex a method_38313 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/IdMap;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; getConfiguration a method_38314 + p 1 registry + p 2 size + m (Lnet/minecraft/core/IdMap;I)I calculateBitsForSerialization b method_38315 + p 1 registry + p 2 size + m (I)V + p 1 sizeBits + m ()V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy$1 dvq$d$1 net/minecraft/class_2841$class_6563$1 + m (I)V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy$2 dvq$d$2 net/minecraft/class_2841$class_6563$2 + m (I)V +c net/minecraft/world/level/chunk/PalettedContainerRO dvr net/minecraft/class_7522 + m (III)Ljava/lang/Object; get a method_12321 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/PalettedContainer$CountConsumer;)V count a method_21732 + p 1 countConsumer + m (Ljava/util/function/Consumer;)V getAll a method_39793 + p 1 consumer + m (Ljava/util/function/Predicate;)Z maybeHas a method_19526 + p 1 filter + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;)Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData; pack a method_44345 + p 1 registry + p 2 strategy + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_12325 + p 1 buffer + m ()I getSerializedSize c method_12327 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; recreate e method_44350 +c net/minecraft/world/level/chunk/PalettedContainerRO$PackedData dvr$a net/minecraft/class_7522$class_6562 + f Ljava/util/List; paletteEntries a comp_75 + f Ljava/util/Optional; storage b comp_76 + m ()Ljava/util/List; paletteEntries a comp_75 + m ()Ljava/util/Optional; storage b comp_76 + m (Ljava/util/List;Ljava/util/Optional;)V +c net/minecraft/world/level/chunk/PalettedContainerRO$Unpacker dvr$b net/minecraft/class_7522$class_7523 +c net/minecraft/world/level/chunk/ProtoChunk dvs net/minecraft/class_2839 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine n field_17105 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status o field_12918 + f Ljava/util/List; entities p field_12929 + f Ljava/util/Map; carvingMasks q field_12926 + f Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; belowZeroRetrogen r field_35473 + f Lnet/minecraft/world/ticks/ProtoChunkTicks; blockTicks s field_35474 + f Lnet/minecraft/world/ticks/ProtoChunkTicks; fluidTicks t field_35475 + m ()Ljava/util/Map; getBlockEntities D method_12309 + m ()Ljava/util/List; getEntities E method_12295 + m ()Ljava/util/Map; getBlockEntityNbts F method_12316 + m ()Lnet/minecraft/world/ticks/LevelChunkTicks; unpackBlockTicks G method_39307 + m ()Lnet/minecraft/world/ticks/LevelChunkTicks; unpackFluidTicks H method_39308 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V setPersistedStatus a method_12308 + p 1 status + m (Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen;)V setBelowZeroRetrogen a method_39309 + p 1 belowZeroRetrogen + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getCarvingMask a method_12025 + p 1 step + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/world/level/chunk/CarvingMask;)V setCarvingMask a method_12307 + p 1 step + p 2 carvingMask + m (Lnet/minecraft/world/level/lighting/LevelLightEngine;)V setLightEngine a method_17032 + p 1 lightEngine + m (Lnet/minecraft/world/ticks/ProtoChunkTicks;)Lnet/minecraft/world/ticks/LevelChunkTicks; unpackTicks a method_39310 + p 0 ticks + m (SILnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; unpackOffsetCoordinates a method_12314 + p 0 packedPos + p 1 yOffset + p 2 chunkPos + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getOrCreateCarvingMask b method_28510 + p 1 step + m (Lnet/minecraft/nbt/CompoundTag;)V addEntity b method_12302 + p 1 tag + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; method_12297 c method_12297 + m (Lnet/minecraft/core/BlockPos;)S packOffsetCoordinates g method_12300 + p 0 pos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 levelHeightAccessor + p 4 biomeRegistry + p 5 blendingData + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/ticks/ProtoChunkTicks;Lnet/minecraft/world/ticks/ProtoChunkTicks;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 sections + p 4 blockTicks + p 5 liquidTicks + p 6 levelHeightAccessor + p 7 biomeRegistry + p 8 blendingData +c net/minecraft/world/level/chunk/SingleValuePalette dvt net/minecraft/class_6564 + f Lnet/minecraft/core/IdMap; registry a field_34573 + f Ljava/lang/Object; value b field_34574 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_34575 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38316 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 value + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 resizeHandler + p 3 value +c net/minecraft/world/level/chunk/StructureAccess dvu net/minecraft/class_2810 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStartForStructure a method_12181 + p 1 structure + m (Lnet/minecraft/world/level/levelgen/structure/Structure;J)V addReferenceForStructure a method_12182 + p 1 structure + p 2 reference + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V setStartForStructure a method_12184 + p 1 structure + p 2 structureStart + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/LongSet; getReferencesForStructure b method_12180 + p 1 structure + m (Ljava/util/Map;)V setAllReferences b method_12183 + p 1 structureReferencesMap + m ()Ljava/util/Map; getAllReferences h method_12179 +c net/minecraft/world/level/chunk/UpgradeData dvv net/minecraft/class_2843 + f Lnet/minecraft/world/level/chunk/UpgradeData; EMPTY a field_12950 + f Lorg/slf4j/Logger; LOGGER b field_12956 + f Ljava/lang/String; TAG_INDICES c field_31412 + f [Lnet/minecraft/core/Direction8; DIRECTIONS d field_12952 + f Ljava/util/EnumSet; sides e field_12951 + f Ljava/util/List; neighborBlockTicks f field_36538 + f Ljava/util/List; neighborFluidTicks g field_36539 + f [[I index h field_12955 + f Ljava/util/Map; MAP i field_12953 + f Ljava/util/Set; CHUNKY_FIXERS j field_12954 + m ()Z isEmpty a method_12349 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixer;)V method_12353 a method_12353 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/ticks/SavedTick;)V method_40452 a method_40452 + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_40453 a method_40453 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_12351 + p 0 state + p 1 direction + p 2 level + p 3 pos + p 4 offsetPos + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V upgrade a method_12356 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/core/Direction8;)V upgradeSides a method_12352 + p 0 chunk + p 1 side + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_40454 a method_40454 + m (Ljava/lang/String;)Ljava/util/Optional; method_40455 a method_40455 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/List;)V loadTicks a method_40456 + p 0 tag + p 1 identifier + p 2 valueFunction + p 3 ticks + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/ticks/SavedTick;)V method_40457 a method_40457 + m ()Lnet/minecraft/nbt/CompoundTag; write b method_12350 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/ticks/SavedTick;)V method_40458 b method_40458 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V upgradeInside b method_12348 + p 1 chunk + m (Ljava/lang/String;)Ljava/util/Optional; method_40459 b method_40459 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/ticks/SavedTick;)V method_40460 b method_40460 + m ()Ljava/util/Optional; method_40461 c method_40461 + m ()Ljava/util/Optional; method_40462 d method_40462 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 tag + p 2 level + m ()V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixer dvv$a net/minecraft/class_2843$class_2844 + m (Lnet/minecraft/world/level/LevelAccessor;)V processChunk a method_12357 + p 1 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_12358 + p 1 state + p 2 direction + p 3 offsetState + p 4 level + p 5 pos + p 6 offsetPos +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers dvv$b net/minecraft/class_2843$class_2845 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; BLACKLIST a field_12957 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; DEFAULT b field_12962 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; CHEST c field_12960 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; LEAVES d field_12963 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; STEM_BLOCK e field_12958 + f [Lnet/minecraft/core/Direction; DIRECTIONS f field_12959 + f [Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; $VALUES g field_12961 + m ()[Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; $values a method_36743 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V + p 3 blocks + m (Ljava/lang/String;IZ[Lnet/minecraft/world/level/block/Block;)V + p 3 chunkyFixer + p 4 blocks + m ()V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$1 dvv$b$1 net/minecraft/class_2843$class_2845$1 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$2 dvv$b$2 net/minecraft/class_2843$class_2845$2 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$3 dvv$b$3 net/minecraft/class_2843$class_2845$3 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$4 dvv$b$4 net/minecraft/class_2843$class_2845$4 + f Ljava/lang/ThreadLocal; queue g field_12964 + m ()Ljava/util/List; method_12359 a method_12359 + m (Ljava/lang/String;IZ[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$5 dvv$b$5 net/minecraft/class_2843$class_2845$5 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/package-info dvw net/minecraft/class_6099 +c net/minecraft/world/level/chunk/status/ChunkDependencies dvx net/minecraft/class_9767 + f Lcom/google/common/collect/ImmutableList; dependencyByRadius a field_51898 + f [I radiusByDependency b field_51899 + m ()Lcom/google/common/collect/ImmutableList; asList a method_60513 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; get a method_60514 + p 1 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getRadiusOf a method_60515 + p 1 status + m ()I size b method_60516 + m ()I getRadius c method_60517 + m (Lcom/google/common/collect/ImmutableList;)V + p 1 dependencyByRadius +c net/minecraft/world/level/chunk/status/ChunkPyramid dvy net/minecraft/class_9768 + f Lnet/minecraft/world/level/chunk/status/ChunkPyramid; GENERATION_PYRAMID a field_51900 + f Lnet/minecraft/world/level/chunk/status/ChunkPyramid; LOADING_PYRAMID b field_51901 + f Lcom/google/common/collect/ImmutableList; steps c comp_2802 + m ()Lcom/google/common/collect/ImmutableList; steps a comp_2802 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStep; getStepTo a method_60518 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60519 a method_60519 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60520 b method_60520 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60521 c method_60521 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60522 d method_60522 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60523 e method_60523 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60524 f method_60524 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60525 g method_60525 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60526 h method_60526 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60527 i method_60527 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60528 j method_60528 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60529 k method_60529 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60530 l method_60530 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60531 m method_60531 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60532 n method_60532 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60533 o method_60533 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60534 p method_60534 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60535 q method_60535 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60536 r method_60536 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60537 s method_60537 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60538 t method_60538 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60539 u method_60539 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60540 v method_60540 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60541 w method_60541 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60542 x method_60542 + m (Lcom/google/common/collect/ImmutableList;)V + m ()V +c net/minecraft/world/level/chunk/status/ChunkPyramid$Builder dvy$a net/minecraft/class_9768$class_9769 + f Ljava/util/List; steps a field_51902 + m ()Lnet/minecraft/world/level/chunk/status/ChunkPyramid; build a method_60543 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/level/chunk/status/ChunkPyramid$Builder; step a method_60544 + p 1 status + p 2 task + m ()V +c net/minecraft/world/level/chunk/status/ChunkStatus dvz net/minecraft/class_2806 + f I MAX_STRUCTURE_DISTANCE a field_35470 + f Ljava/util/EnumSet; FINAL_HEIGHTMAPS b field_51903 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; EMPTY c field_12798 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; STRUCTURE_STARTS d field_16423 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; STRUCTURE_REFERENCES e field_16422 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; BIOMES f field_12794 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; NOISE g field_12804 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; SURFACE h field_12796 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; CARVERS i field_12801 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; FEATURES j field_12795 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; INITIALIZE_LIGHT k field_44633 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; LIGHT l field_12805 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; SPAWN m field_12786 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; FULL n field_12803 + f Ljava/util/EnumSet; WORLDGEN_HEIGHTMAPS o field_51904 + f I index p field_16646 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; parent q field_16647 + f Lnet/minecraft/world/level/chunk/status/ChunkType; chunkType r field_12787 + f Ljava/util/EnumSet; heightmapsAfter s field_12793 + m ()Ljava/util/List; getStatusList a method_16558 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isOrAfter a method_12165 + p 1 chunkStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; max a method_60545 + p 0 first + p 1 second + m (Ljava/lang/String;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; byName a method_12168 + p 0 name + m (Ljava/lang/String;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/EnumSet;Lnet/minecraft/world/level/chunk/status/ChunkType;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; register a method_60546 + p 0 name + p 1 parent + p 2 heightmapsAfter + p 3 chunkType + m ()I getIndex b method_16559 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isAfter b method_60547 + p 1 chunkStatus + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getParent c method_16560 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isOrBefore c method_60548 + p 1 chunkStatus + m ()Lnet/minecraft/world/level/chunk/status/ChunkType; getChunkType d method_12164 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isBefore d method_60549 + p 1 chunkStatus + m ()Ljava/util/EnumSet; heightmapsAfter e method_12160 + m ()Ljava/lang/String; getName f method_60550 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/EnumSet;Lnet/minecraft/world/level/chunk/status/ChunkType;)V + p 1 parent + p 2 heightmapsAfter + p 3 chunkType + m ()V +c net/minecraft/world/level/chunk/status/ChunkStatusTask dwa net/minecraft/class_2807 +c net/minecraft/world/level/chunk/status/ChunkStatusTasks dwb net/minecraft/class_9310 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_60551 a method_60551 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)V postLoadProtoChunk a method_60552 + p 0 level + p 1 entityTags + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z isLighted a method_57595 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/server/level/GenerationChunkHolder;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_60553 a method_60553 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/lang/Runnable;)V method_60554 a method_60554 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; passThrough a method_57596 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_57599 b method_57599 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateStructureStarts b method_57601 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; loadStructureStarts c method_57600 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateStructureReferences d method_57603 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateBiomes e method_57605 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateNoise f method_57607 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateSurface g method_57608 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateCarvers h method_57609 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateFeatures i method_57610 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; initializeLight j method_57594 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; light k method_60555 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateSpawn l method_57613 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; full m method_60556 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m ()V +c net/minecraft/world/level/chunk/status/ChunkStep dwc net/minecraft/class_9770 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a comp_2803 + f Lnet/minecraft/world/level/chunk/status/ChunkDependencies; directDependencies b comp_2804 + f Lnet/minecraft/world/level/chunk/status/ChunkDependencies; accumulatedDependencies c comp_2805 + f I blockStateWriteRadius d comp_2806 + f Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e comp_2807 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a comp_2803 + m (Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_60557 a method_60557 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration;)Lnet/minecraft/world/level/chunk/ChunkAccess; completeChunkGeneration a method_60558 + p 1 chunk + p 2 duration + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getAccumulatedRadiusOf a method_60559 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; apply a method_60560 + p 1 worldGenContext + p 2 cache + p 3 chunk + m ()Lnet/minecraft/world/level/chunk/status/ChunkDependencies; directDependencies b comp_2804 + m ()Lnet/minecraft/world/level/chunk/status/ChunkDependencies; accumulatedDependencies c comp_2805 + m ()I blockStateWriteRadius d comp_2806 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e comp_2807 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkDependencies;Lnet/minecraft/world/level/chunk/status/ChunkDependencies;ILnet/minecraft/world/level/chunk/status/ChunkStatusTask;)V +c net/minecraft/world/level/chunk/status/ChunkStep$Builder dwc$a net/minecraft/class_9770$class_9771 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status a field_51905 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; parent b field_51906 + f [Lnet/minecraft/world/level/chunk/status/ChunkStatus; directDependenciesByRadius c field_51907 + f I blockStateWriteRadius d field_51908 + f Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e field_51909 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStep; build a method_60561 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; blockStateWriteRadius a method_60562 + p 1 blockStateWriteRadius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getRadiusOfParent a method_60563 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;I)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; addRequirement a method_60564 + p 1 status + p 2 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatusTask;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; setTask a method_60565 + p 1 task + m ()[Lnet/minecraft/world/level/chunk/status/ChunkStatus; buildAccumulatedDependencies b method_60566 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStep;)V + p 1 status + p 2 parent +c net/minecraft/world/level/chunk/status/ChunkType dwd net/minecraft/class_2808 + f Lnet/minecraft/world/level/chunk/status/ChunkType; PROTOCHUNK a field_12808 + f Lnet/minecraft/world/level/chunk/status/ChunkType; LEVELCHUNK b field_12807 + f [Lnet/minecraft/world/level/chunk/status/ChunkType; $VALUES c field_12806 + m ()[Lnet/minecraft/world/level/chunk/status/ChunkType; $values a method_36741 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/status/WorldGenContext dwe net/minecraft/class_9312 + f Lnet/minecraft/server/level/ServerLevel; level a comp_2434 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_2435 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureManager c comp_2436 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine d comp_2437 + f Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailBox e comp_2808 + m ()Lnet/minecraft/server/level/ServerLevel; level a comp_2434 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_2435 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureManager c comp_2436 + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine d comp_2437 + m ()Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailBox e comp_2808 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/server/level/ThreadedLevelLightEngine;Lnet/minecraft/util/thread/ProcessorHandle;)V +c net/minecraft/world/level/chunk/status/package-info dwf net/minecraft/class_9313 +c net/minecraft/world/level/chunk/storage/ChunkIOErrorReporter dwg net/minecraft/class_9820 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/ReportedException; createMisplacedChunkReport a method_60997 + p 0 pos + p 1 expectedPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)V reportMisplacedChunk a method_60998 + p 1 pos + p 2 expectedPos + p 3 regionStorageInfo + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;)V reportChunkLoadFailure a method_57821 + p 1 throwable + p 2 regionStorageInfo + p 3 chunkPos + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;)V reportChunkSaveFailure b method_57822 + p 1 throwable + p 2 regionStorageInfo + p 3 chunkPos +c net/minecraft/world/level/chunk/storage/ChunkScanAccess dwh net/minecraft/class_6830 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)Ljava/util/concurrent/CompletableFuture; scanChunk a method_39795 + p 1 chunkPos + p 2 visitor +c net/minecraft/world/level/chunk/storage/ChunkSerializer dwi net/minecraft/class_2852 + f Ljava/lang/String; X_POS_TAG a field_37659 + f Ljava/lang/String; Z_POS_TAG b field_37660 + f Ljava/lang/String; HEIGHTMAPS_TAG c field_37661 + f Ljava/lang/String; IS_LIGHT_ON_TAG d field_37662 + f Ljava/lang/String; SECTIONS_TAG e field_37663 + f Ljava/lang/String; BLOCK_LIGHT_TAG f field_37664 + f Ljava/lang/String; SKY_LIGHT_TAG g field_37665 + f Lcom/mojang/serialization/Codec; BLOCK_STATE_CODEC h field_34576 + f Lorg/slf4j/Logger; LOGGER i field_13001 + f Ljava/lang/String; TAG_UPGRADE_DATA j field_31413 + f Ljava/lang/String; BLOCK_TICKS_TAG k field_35476 + f Ljava/lang/String; FLUID_TICKS_TAG l field_35477 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/ProtoChunk; read a method_12395 + p 0 level + p 1 poiManager + p 2 regionStorageInfo + p 3 pos + p 4 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/nbt/CompoundTag; write a method_12410 + p 0 level + p 1 chunk + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor; postLoadChunk a method_12386 + p 0 level + p 1 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/chunk/ChunkAccess$TicksToSave;)V saveTicks a method_39311 + p 0 level + p 1 tag + p 2 ticksToSave + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V logErrors a method_39035 + p 0 chunkPos + p 1 chunkSectionY + p 2 errorMessage + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceLocation;J)Z method_24029 a method_24029 + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_39312 a method_39312 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/world/level/ChunkPos;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/nbt/CompoundTag; packStructureData a method_12385 + p 0 context + p 1 pos + p 2 structureMap + p 3 referenceMap + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;J)Ljava/util/Map; unpackStructureStart a method_12392 + p 0 context + p 1 tag + p 2 seed + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_39313 a method_39313 + m (Ljava/lang/String;)Ljava/util/Optional; method_39314 a method_39314 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/Codec; makeBiomeCodec a method_39036 + p 0 biomeRegistry + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Map; unpackStructureReferences a method_12387 + p 0 registryAccess + p 1 pos + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/status/ChunkType; getChunkTypeFromTag a method_12377 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/nbt/ListTag; getListOfCompoundsOrNull a method_39796 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39315 a method_39315 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_39797 a method_39797 + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;)Lnet/minecraft/nbt/ListTag; packOffsets a method_12393 + p 0 list + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V method_39037 b method_39037 + m (Ljava/lang/String;)Ljava/util/Optional; method_39316 b method_39316 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39539 b method_39539 + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V method_39038 c method_39038 + m (Ljava/lang/String;)Ljava/util/Optional; method_39317 c method_39317 + m (Ljava/lang/String;)Ljava/util/Optional; method_39318 d method_39318 + m ()V + m ()V +c net/minecraft/world/level/chunk/storage/ChunkSerializer$ChunkReadException dwi$a net/minecraft/class_2852$class_9314 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/world/level/chunk/storage/ChunkStorage dwj net/minecraft/class_3977 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; worker a field_21494 + f Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; legacyStructureHandler b field_17654 + f I LAST_MONOLYTH_STRUCTURE_DATA_VERSION d field_36219 + f Lcom/mojang/datafixers/DataFixer; fixerUpper e field_17655 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; getLegacyStructureHandler a method_43411 + p 1 level + p 2 storage + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Supplier;Lnet/minecraft/nbt/CompoundTag;Ljava/util/Optional;)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag a method_17907 + p 1 levelKey + p 2 storage + p 3 chunkData + p 4 chunkGeneratorKey + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; write a method_17910 + p 1 chunkPos + p 2 data + m (Lnet/minecraft/nbt/CompoundTag;)I getVersion a method_17908 + p 0 chunkData + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;)V method_39798 a method_39798 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;Ljava/util/Optional;)V injectDatafixingContext a method_39799 + p 0 chunkData + p 1 levelKey + p 2 chunkGeneratorKey + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround b method_42328 + p 1 pos + p 2 radius + m (Lnet/minecraft/nbt/CompoundTag;)V removeDatafixingContext b method_60626 + p 0 tag + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; read d method_23696 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)V handleLegacyStructureIndex e method_56564 + p 1 chunkPos + m ()V flushWorker o method_23697 + m ()Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; chunkScanner p method_39800 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo q method_60999 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;Z)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync +c net/minecraft/world/level/chunk/storage/EntityStorage dwk net/minecraft/class_5565 + f Lorg/slf4j/Logger; LOGGER a field_27232 + f Ljava/lang/String; ENTITIES_TAG b field_31414 + f Ljava/lang/String; POSITION_TAG c field_31415 + f Lnet/minecraft/server/level/ServerLevel; level d field_27233 + f Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; simpleRegionStorage e field_48747 + f Lit/unimi/dsi/fastutil/longs/LongSet; emptyChunks f field_27235 + f Lnet/minecraft/util/thread/ProcessorMailbox; entityDeserializerQueue g field_34056 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Object; method_61000 a method_61000 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Lnet/minecraft/world/level/entity/ChunkEntities; method_31731 a method_31731 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/ChunkPos;)V reportSaveFailureIfPresent a method_61001 + p 1 future + p 2 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/ChunkPos; readChunkPos a method_31736 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)V writeChunkPos a method_31733 + p 0 tag + p 1 pos + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/entity/Entity;)V method_31734 a method_31734 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/entity/ChunkEntities; emptyChunk b method_31735 + p 0 pos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Object; method_61002 b method_61002 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/ChunkPos;)V reportLoadFailureIfPresent b method_61003 + p 1 future + p 2 pos + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/server/level/ServerLevel;Ljava/util/concurrent/Executor;)V + p 1 simpleRegionStorage + p 2 level + p 3 executor + m ()V +c net/minecraft/world/level/chunk/storage/IOWorker dwl net/minecraft/class_4698 + f Lorg/slf4j/Logger; LOGGER a field_21495 + f Ljava/util/concurrent/atomic/AtomicBoolean; shutdownRequested b field_21497 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox c field_24468 + f Lnet/minecraft/world/level/chunk/storage/RegionFileStorage; storage d field_21499 + f Ljava/util/Map; pendingWrites e field_21500 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; regionCacheForBlender f field_38240 + f I REGION_CACHE_SIZE g field_38241 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo a method_61004 + m (I)[Ljava/util/concurrent/CompletableFuture; method_23699 a method_23699 + m (II)Ljava/util/concurrent/CompletableFuture; getOrCreateOldDataForRegion a method_42329 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_27938 a method_27938 + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/Supplier;)V method_27939 a method_27939 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; loadAsync a method_31738 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround a method_42330 + p 1 chunkPos + p 2 radius + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore;)V runStore a method_23701 + p 1 chunkPos + p 2 pendingStore + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; store a method_23703 + p 1 chunkPos + p 2 chunkData + m (Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore;)Ljava/util/concurrent/CompletableFuture; method_23705 a method_23705 + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_37479 a method_37479 + m (Ljava/util/BitSet;Lnet/minecraft/world/level/ChunkPos;)V method_42331 a method_42331 + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; submitTask a method_23709 + p 1 task + m (Ljava/util/function/Supplier;Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_27941 a method_27941 + m (Lnet/minecraft/nbt/CompoundTag;)Z isOldChunk a method_42332 + p 1 chunkData + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore; method_23711 a method_23711 + m (Z)Ljava/util/concurrent/CompletableFuture; synchronize a method_23698 + p 1 flushStorage + m ()V storePendingChunk b method_23719 + m (II)Ljava/util/concurrent/CompletableFuture; createOldDataForRegion b method_42333 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/util/thread/ProcessorHandle;)V method_27942 b method_27942 + m (Lnet/minecraft/world/level/ChunkPos;)Lcom/mojang/datafixers/util/Either; method_27943 b method_27943 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Lcom/mojang/datafixers/util/Either; method_27944 b method_27944 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)Lcom/mojang/datafixers/util/Either; method_39801 b method_39801 + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_27940 b method_27940 + m ()V tellStorePending c method_27945 + m (II)Ljava/util/BitSet; method_42334 c method_42334 + m ()Lcom/mojang/datafixers/util/Either; method_37480 d method_37480 + m ()Lcom/mojang/datafixers/util/Either; method_27946 e method_27946 + m ()Lcom/mojang/datafixers/util/Either; method_27947 f method_27947 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Z)V + p 1 info + p 2 folder + p 3 sync + m ()V +c net/minecraft/world/level/chunk/storage/IOWorker$PendingStore dwl$a net/minecraft/class_4698$class_4699 + f Lnet/minecraft/nbt/CompoundTag; data a field_21503 + f Ljava/util/concurrent/CompletableFuture; result b field_21504 + m ()Lnet/minecraft/nbt/CompoundTag; copyData a method_60627 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 data +c net/minecraft/world/level/chunk/storage/IOWorker$Priority dwl$b net/minecraft/class_4698$class_5276 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; FOREGROUND a field_27237 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; BACKGROUND b field_27238 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; SHUTDOWN c field_27239 + f [Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; $VALUES d field_24471 + m ()[Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; $values a method_36744 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/storage/RecreatingChunkStorage dwm net/minecraft/class_9170 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; writeWorker a field_48748 + f Ljava/nio/file/Path; writeFolder b field_48749 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;Z)V + p 1 info + p 2 folder + p 3 writeInfo + p 4 writeFolder + p 5 fixerUpper + p 6 sync +c net/minecraft/world/level/chunk/storage/RecreatingSimpleRegionStorage dwn net/minecraft/class_9171 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; writeWorker a field_48750 + f Ljava/nio/file/Path; writeFolder b field_48751 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V + p 1 info + p 2 folder + p 3 writeInfo + p 4 writeFolder + p 5 fixerUpper + p 6 sync + p 7 dataFixType +c net/minecraft/world/level/chunk/storage/RegionBitmap dwo net/minecraft/class_4485 + c Keeps track of which parts of a region file are used and which parts are free. + f Ljava/util/BitSet; used a field_20433 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; getUsed a method_35322 + m (I)I allocate a method_21867 + c Gets a valid offset inside the region file with enough space to store the given amount of sectors and marks that space as used. + p 1 sectorCount + m (II)V force a method_21868 + c Marks a range of 4 KiB sectors relative to the region file as used. + p 1 sectorOffset + c The first sector in the range. + p 2 sectorCount + c The amount of sectors in the range. + m (II)V free b method_21869 + c Marks a range of 4 KiB sectors relative to the region file as not used. + p 1 sectorOffset + c The first sector in the range. + p 2 sectorCount + c The amount of sectors in the range. + m ()V +c net/minecraft/world/level/chunk/storage/RegionFile dwp net/minecraft/class_2861 + c This class handles a single region (or anvil) file and all files for single chunks at chunk positions for that one region file. + f I SECTOR_INTS a field_31417 + f Lnet/minecraft/world/level/chunk/storage/RegionBitmap; usedSectors b field_20441 + f Lorg/slf4j/Logger; LOGGER c field_20434 + f I SECTOR_BYTES d field_31418 + f I CHUNK_HEADER_SIZE e field_31419 + f I HEADER_OFFSET f field_31420 + f Ljava/nio/ByteBuffer; PADDING_BUFFER g field_20435 + f Ljava/lang/String; EXTERNAL_FILE_EXTENSION h field_31421 + f I EXTERNAL_STREAM_FLAG i field_31422 + f I EXTERNAL_CHUNK_THRESHOLD j field_31423 + f I CHUNK_NOT_PRESENT k field_31424 + f Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info l field_49102 + f Ljava/nio/file/Path; path m field_48752 + f Ljava/nio/channels/FileChannel; file n field_20436 + f Ljava/nio/file/Path; externalFileDir o field_20657 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; version p field_20437 + f Ljava/nio/ByteBuffer; header q field_20438 + f Ljava/nio/IntBuffer; offsets r field_20439 + f Ljava/nio/IntBuffer; timestamps s field_20440 + m ()Ljava/nio/file/Path; getPath a method_56566 + m (B)Z isExternalStreamChunk a method_22407 + p 0 versionByte + m (I)I getNumSectors a method_21871 + c Gets the amount of 4 KiB sectors used to store a chunk. + p 0 packedSectorOffset + m (II)I packSectorOffset a method_21872 + c Packs the offset in 4 KiB sectors from the region file start and the amount of 4 KiB sectors used to store a chunk into one {@code int}. + p 1 sectorOffset + p 2 sectorCount + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/io/DataInputStream; getChunkDataInputStream a method_21873 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;B)Ljava/io/DataInputStream; createExternalChunkInputStream a method_22408 + p 1 chunkPos + p 2 versionByte + m (Lnet/minecraft/world/level/ChunkPos;BLjava/io/InputStream;)Ljava/io/DataInputStream; createChunkInputStream a method_22409 + p 1 chunkPos + p 2 versionByte + p 3 inputStream + m (Lnet/minecraft/world/level/ChunkPos;Ljava/nio/ByteBuffer;)V write a method_21874 + p 1 chunkPos + p 2 chunkData + m (Ljava/nio/ByteBuffer;I)Ljava/io/ByteArrayInputStream; createStream a method_21876 + p 0 sourceBuffer + p 1 length + m (Ljava/nio/file/Path;Ljava/nio/ByteBuffer;)Lnet/minecraft/world/level/chunk/storage/RegionFile$CommitOp; writeToExternalFile a method_22410 + c Writes a chunk to a separate file with only that chunk. This is used for chunks larger than 1 MiB + p 1 externalChunkFile + p 2 chunkData + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_22411 a method_22411 + m ()V flush b method_26981 + m (B)B getExternalChunkVersion b method_22412 + p 0 versionByte + m (I)I getSectorNumber b method_21878 + c Gets the offset in 4 KiB sectors from the start of the region file, where the data for a chunk starts. + p 0 packedSectorOffset + m (Lnet/minecraft/world/level/ChunkPos;)Z doesChunkExist b method_21879 + p 1 chunkPos + m ()I getTimestamp c method_31739 + c Gets a timestamp for the current time to be written to a region file. + m (I)I sizeToSectors c method_21880 + c Gets the amount of sectors required to store chunk data of a certain size in bytes. + p 0 size + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/io/DataOutputStream; getChunkDataOutputStream c method_21881 + c Creates a new {@link java.io.InputStream} for a chunk stored in a separate file. + p 1 chunkPos + m ()Ljava/nio/ByteBuffer; createExternalStub d method_22406 + m (Lnet/minecraft/world/level/ChunkPos;)V clear d method_31740 + p 1 chunkPos + m ()V writeHeader e method_21870 + m (Lnet/minecraft/world/level/ChunkPos;)Z hasChunk e method_12423 + p 1 chunkPos + m ()V padToFullSector f method_21877 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/nio/file/Path; getExternalChunkPath f method_22413 + c Gets the path to store a chunk that can not be stored within the region file because it's larger than 1 MiB. + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)I getOffset g method_12419 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)I getOffsetIndex h method_17909 + c Gets the offset within the region file where the chunk metadata for a chunk can be found. + p 0 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)V method_22414 i method_22414 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)V + p 1 info + p 2 path + p 3 externalFileDir + p 4 sync + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;Z)V + p 1 info + p 2 path + p 3 externalFileDir + p 4 version + p 5 sync + m ()V +c net/minecraft/world/level/chunk/storage/RegionFile$ChunkBuffer dwp$a net/minecraft/class_2861$class_2862 + f Lnet/minecraft/world/level/chunk/storage/RegionFile; field_13035 a field_13035 + f Lnet/minecraft/world/level/ChunkPos; pos b field_17656 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;Lnet/minecraft/world/level/ChunkPos;)V + p 2 pos +c net/minecraft/world/level/chunk/storage/RegionFile$CommitOp dwp$b net/minecraft/class_2861$class_4549 +c net/minecraft/world/level/chunk/storage/RegionFileStorage dwq net/minecraft/class_2867 + c Handles reading and writing the {@link net.minecraft.world.level.chunk.storage.RegionFile region files} for a {@link net.minecraft.world.level.Level}. + f Ljava/lang/String; ANVIL_EXTENSION a field_31425 + f I MAX_CACHE_SIZE b field_31426 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; regionCache c field_17657 + f Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info d field_49103 + f Ljava/nio/file/Path; folder e field_18690 + f Z sync f field_23748 + m ()V flush a method_26982 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; read a method_17911 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)V write a method_23726 + p 1 chunkPos + p 2 chunkData + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)V scanChunk a method_39802 + p 1 chunkPos + p 2 visitor + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info b method_61005 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/storage/RegionFile; getRegionFile b method_12440 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Z)V + p 1 info + p 2 folder + p 3 sync +c net/minecraft/world/level/chunk/storage/RegionFileVersion dwr net/minecraft/class_4486 + c A decorator for input and output streams used to read and write the chunk data from region files. This exists as there are different ways of compressing the chunk data inside a region file.\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_GZIP\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_DEFLATE\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_NONE + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_GZIP a field_20442 + c Used to store the chunk data in gzip format. Unused in practice. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_DEFLATE b field_20443 + c Used to store the chunk data in zlib format. This is the default. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_NONE c field_20444 + c Used to keep the chunk data uncompressed. Unused in practice. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_LZ4 d field_48753 + c Used to store the chunk data in lz4 format. Used when region-file-compression is set to 1z4 in server.properties. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_CUSTOM e field_48916 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; DEFAULT f field_48754 + f Lorg/slf4j/Logger; LOGGER g field_48755 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; VERSIONS h field_20445 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; VERSIONS_BY_NAME i field_48756 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; selected j field_48757 + f I id k field_20446 + f Ljava/lang/String; optionName l field_48758 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper; inputWrapper m field_20447 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper; outputWrapper n field_20448 + m ()Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; getSelected a method_56567 + m (I)Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; fromId a method_21883 + p 0 id + m (Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;)Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; register a method_21884 + p 0 fileVersion + m (Ljava/io/InputStream;)Ljava/io/InputStream; wrap a method_21885 + p 1 inputStream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; wrap a method_21886 + p 1 outputStream + m (Ljava/lang/String;)V configure a method_56568 + p 0 optionValue + m ()I getId b method_21882 + m (I)Z isValidVersion b method_21887 + p 0 id + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_56569 b method_56569 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_56570 b method_56570 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_21888 c method_21888 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_21889 c method_21889 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39803 d method_39803 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39804 d method_39804 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39805 e method_39805 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39806 e method_39806 + m (ILjava/lang/String;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper;)V + p 1 id + p 2 optionName + p 3 inputWrapper + p 4 outputWrapper + m ()V +c net/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper dwr$a net/minecraft/class_4486$class_4487 +c net/minecraft/world/level/chunk/storage/RegionStorageInfo dws net/minecraft/class_9240 + f Ljava/lang/String; level a comp_2345 + f Lnet/minecraft/resources/ResourceKey; dimension b comp_2346 + f Ljava/lang/String; type c comp_2347 + m ()Ljava/lang/String; level a comp_2345 + m (Ljava/lang/String;)Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; withTypeSuffix a method_57013 + p 1 suffix + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_2346 + m ()Ljava/lang/String; type c comp_2347 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)V +c net/minecraft/world/level/chunk/storage/SectionStorage dwt net/minecraft/class_4180 + f Lorg/slf4j/Logger; LOGGER a field_18691 + f Ljava/lang/String; SECTIONS_TAG b field_31427 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor c field_27240 + f Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; simpleRegionStorage d field_48759 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; storage e field_18692 + f Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; dirty f field_18693 + f Ljava/util/function/Function; codec g field_24750 + f Ljava/util/function/Function; factory h field_18695 + f Lnet/minecraft/core/RegistryAccess; registryAccess i field_39315 + f Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter; errorReporter j field_52227 + m ()Z hasWork a method_40020 + m (J)V setDirty a method_19288 + p 1 sectionPos + m (JLcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28511 a method_28511 + m (JZLjava/lang/Object;)V method_20366 a method_20366 + m (Lcom/mojang/serialization/Dynamic;)I getVersion a method_20369 + p 0 columnData + m (Lnet/minecraft/world/level/ChunkPos;)V flush a method_20436 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)J getKey a method_33637 + p 0 chunkPos + p 1 sectionY + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/CompoundTag;)V readColumn a method_20368 + p 1 chunkPos + p 2 ops + p 3 tag + m (Lnet/minecraft/world/level/ChunkPos;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; writeColumn a method_20367 + p 1 chunkPos + p 2 ops + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_61006 a method_61006 + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;Ljava/lang/Object;)V method_28512 a method_28512 + m (Ljava/util/function/BooleanSupplier;)V tick a method_19290 + p 1 aheadOfTime + m (J)V onSectionLoad b method_19291 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)V readColumn b method_19289 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/util/Optional; method_43412 b method_43412 + m (J)Ljava/util/Optional; get c method_19293 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; tryRead c method_20621 + p 1 chunkPos + m (J)Ljava/util/Optional; getOrLoad d method_19294 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)V writeColumn d method_20370 + p 1 chunkPos + m (J)Z outsideStoredRange e method_19292 + p 1 sectionKey + m (J)Ljava/lang/Object; getOrCreate f method_19295 + p 1 sectionKey + m (J)V method_28513 g method_28513 + m (J)V method_19296 h method_19296 + m (J)V method_19297 i method_19297 + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 simpleRegionStorage + p 2 codec + p 3 factory + p 4 registryAccess + p 5 errorReporter + p 6 levelHeightAccessor + m ()V +c net/minecraft/world/level/chunk/storage/SimpleRegionStorage dwu net/minecraft/class_9172 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; worker a field_48760 + f Lcom/mojang/datafixers/DataFixer; fixerUpper b field_48761 + f Lnet/minecraft/util/datafix/DataFixTypes; dataFixType c field_48762 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo a method_61007 + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; upgradeChunkTag a method_56571 + p 1 tag + p 2 version + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; read a method_56572 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; write a method_56565 + p 1 chunkPos + p 2 data + m (Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag a method_56573 + p 1 tag + p 2 version + m (Z)Ljava/util/concurrent/CompletableFuture; synchronize a method_56574 + p 1 flushStorage + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync + p 5 dataFixType +c net/minecraft/world/level/chunk/storage/package-info dwv net/minecraft/class_6100 +c net/minecraft/world/level/dimension/BuiltinDimensionTypes dww net/minecraft/class_7134 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD a field_37666 + f Lnet/minecraft/resources/ResourceKey; NETHER b field_37667 + f Lnet/minecraft/resources/ResourceKey; END c field_37668 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD_CAVES d field_37669 + f Lnet/minecraft/resources/ResourceLocation; OVERWORLD_EFFECTS e field_37670 + f Lnet/minecraft/resources/ResourceLocation; NETHER_EFFECTS f field_37671 + f Lnet/minecraft/resources/ResourceLocation; END_EFFECTS g field_37672 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41524 + p 0 name + m ()V + m ()V +c net/minecraft/world/level/dimension/DimensionDefaults dwx net/minecraft/class_6101 + f I OVERWORLD_MIN_Y a field_31428 + f I OVERWORLD_LEVEL_HEIGHT b field_31429 + f I OVERWORLD_GENERATION_HEIGHT c field_31430 + f I OVERWORLD_LOGICAL_HEIGHT d field_31431 + f I NETHER_MIN_Y e field_31432 + f I NETHER_LEVEL_HEIGHT f field_31433 + f I NETHER_GENERATION_HEIGHT g field_31434 + f I NETHER_LOGICAL_HEIGHT h field_31435 + f I END_MIN_Y i field_31436 + f I END_LEVEL_HEIGHT j field_31437 + f I END_GENERATION_HEIGHT k field_31438 + f I END_LOGICAL_HEIGHT l field_31439 + m ()V +c net/minecraft/world/level/dimension/DimensionType dwy net/minecraft/class_2874 + f I MOON_PHASES A field_31440 + f I BITS_FOR_Y a field_28133 + f I MIN_HEIGHT b field_33411 + f I Y_SIZE c field_28134 + f I MAX_Y d field_28135 + f I MIN_Y e field_28136 + f I WAY_ABOVE_MAX_Y f field_35478 + f I WAY_BELOW_MIN_Y g field_35479 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC h field_24757 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_51951 + f [F MOON_BRIGHTNESS_PER_PHASE j field_24752 + f Lcom/mojang/serialization/Codec; CODEC k field_24756 + f Ljava/util/OptionalLong; fixedTime l comp_641 + f Z hasSkyLight m comp_642 + f Z hasCeiling n comp_643 + f Z ultraWarm o comp_644 + f Z natural p comp_645 + f D coordinateScale q comp_646 + f Z bedWorks r comp_648 + f Z respawnAnchorWorks s comp_649 + f I minY t comp_651 + f I height u comp_652 + f I logicalHeight v comp_653 + f Lnet/minecraft/tags/TagKey; infiniburn w comp_654 + f Lnet/minecraft/resources/ResourceLocation; effectsLocation x comp_655 + f F ambientLight y comp_656 + f Lnet/minecraft/world/level/dimension/DimensionType$MonsterSettings; monsterSettings z comp_847 + m ()Z hasFixedTime a method_29960 + m (J)F timeOfDay a method_28528 + p 1 dayTime + m (Lnet/minecraft/resources/ResourceKey;Ljava/nio/file/Path;)Ljava/nio/file/Path; getStorageFolder a method_12488 + p 0 dimensionKey + p 1 levelFolder + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; parseLegacy a method_28521 + p 0 dynamic + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28522 a method_28522 + m (Lnet/minecraft/world/level/dimension/DimensionType;Lnet/minecraft/world/level/dimension/DimensionType;)D getTeleportationScale a method_31109 + p 0 firstType + p 1 secondType + m ()Z piglinSafe b method_44220 + m (J)I moonPhase b method_28531 + p 1 dayTime + m ()Z hasRaids c method_44221 + m ()Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest d method_44222 + m ()I monsterSpawnBlockLightLimit e method_44223 + m ()Ljava/util/OptionalLong; fixedTime f comp_641 + m ()Z hasSkyLight g comp_642 + m ()Z hasCeiling h comp_643 + m ()Z ultraWarm i comp_644 + m ()Z natural j comp_645 + m ()D coordinateScale k comp_646 + m ()Z bedWorks l comp_648 + m ()Z respawnAnchorWorks m comp_649 + m ()I minY n comp_651 + m ()I height o comp_652 + m ()I logicalHeight p comp_653 + m ()Lnet/minecraft/tags/TagKey; infiniburn q comp_654 + m ()Lnet/minecraft/resources/ResourceLocation; effectsLocation r comp_655 + m ()F ambientLight s comp_656 + m ()Lnet/minecraft/world/level/dimension/DimensionType$MonsterSettings; monsterSettings t comp_847 + m (Ljava/util/OptionalLong;ZZZZDZZIIILnet/minecraft/tags/TagKey;Lnet/minecraft/resources/ResourceLocation;FLnet/minecraft/world/level/dimension/DimensionType$MonsterSettings;)V + p 1 fixedTime + p 2 hasSkyLight + p 3 hasCeiling + p 4 ultraWarm + p 5 natural + p 6 coordinateScale + p 8 bedWorks + p 9 respawnAnchorWorks + p 10 minY + p 11 height + p 12 logicalHeight + p 13 infiniburn + p 14 effectsLocation + p 15 ambientLight + p 16 monsterSettings + m ()V +c net/minecraft/world/level/dimension/DimensionType$MonsterSettings dwy$a net/minecraft/class_2874$class_7512 + f Lcom/mojang/serialization/MapCodec; CODEC a field_39414 + f Z piglinSafe b comp_848 + f Z hasRaids c comp_849 + f Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest d comp_850 + f I monsterSpawnBlockLightLimit e comp_851 + m ()Z piglinSafe a comp_848 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_44224 a method_44224 + m ()Z hasRaids b comp_849 + m ()Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest c comp_850 + m ()I monsterSpawnBlockLightLimit d comp_851 + m (ZZLnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/dimension/LevelStem dwz net/minecraft/class_5363 + f Lcom/mojang/serialization/Codec; CODEC a field_25411 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD b field_25412 + f Lnet/minecraft/resources/ResourceKey; NETHER c field_25413 + f Lnet/minecraft/resources/ResourceKey; END d field_25414 + f Lnet/minecraft/core/Holder; type e comp_1012 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator f comp_1013 + m ()Lnet/minecraft/core/Holder; type a comp_1012 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29568 a method_29568 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_1013 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/chunk/ChunkGenerator;)V + p 1 type + p 2 generator + m ()V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation dxa net/minecraft/class_2876 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; START a field_13097 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; PREPARING_TO_SUMMON_PILLARS b field_13095 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; SUMMONING_PILLARS c field_13094 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; SUMMONING_DRAGON d field_13098 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; END e field_13099 + f [Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; $VALUES f field_13096 + m ()[Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; $values a method_36745 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/dimension/end/EndDragonFight;Ljava/util/List;ILnet/minecraft/core/BlockPos;)V tick a method_12507 + p 1 level + p 2 manager + p 3 crystals + p 4 ticks + p 5 pos + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$1 dxa$1 net/minecraft/class_2876$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$2 dxa$2 net/minecraft/class_2876$2 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$3 dxa$3 net/minecraft/class_2876$3 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$4 dxa$4 net/minecraft/class_2876$4 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$5 dxa$5 net/minecraft/class_2876$5 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/EndDragonFight dxb net/minecraft/class_2881 + f I respawnTime A field_13118 + f Ljava/util/List; respawnCrystals B field_13109 + f I TIME_BETWEEN_PLAYER_SCANS a field_31445 + f I ARENA_TICKET_LEVEL b field_31441 + f I DRAGON_SPAWN_Y c field_31442 + f Lorg/slf4j/Logger; LOGGER d field_13112 + f I MAX_TICKS_BEFORE_DRAGON_RESPAWN e field_31443 + f I TIME_BETWEEN_CRYSTAL_SCANS f field_31444 + f I ARENA_SIZE_CHUNKS g field_31446 + f I GATEWAY_COUNT h field_31447 + f I GATEWAY_DISTANCE i field_31448 + f Ljava/util/function/Predicate; validPlayer j field_44876 + f Lnet/minecraft/server/level/ServerBossEvent; dragonEvent k field_13119 + f Lnet/minecraft/server/level/ServerLevel; level l field_13108 + f Lnet/minecraft/core/BlockPos; origin m field_44877 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; gateways n field_13121 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; exitPortalPattern o field_13110 + f I ticksSinceDragonSeen p field_13107 + f I crystalsAlive q field_13106 + f I ticksSinceCrystalsScanned r field_13105 + f I ticksSinceLastPlayerScan s field_13122 + f Z dragonKilled t field_13115 + f Z previouslyKilled u field_13114 + f Z skipArenaLoadedCheck v field_44878 + f Ljava/util/UUID; dragonUUID w field_13116 + f Z needsStateScanning x field_13111 + f Lnet/minecraft/core/BlockPos; portalLocation y field_13117 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; respawnStage z field_13120 + m ()V skipArenaLoadedCheck a method_51855 + m (J)Ljava/util/List; method_52229 a method_52229 + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/world/damagesource/DamageSource;)V onCrystalDestroyed a method_12526 + p 1 crystal + p 2 dmgSrc + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V setDragonKilled a method_12528 + p 1 dragon + m (Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation;)V setRespawnStage a method_12521 + p 1 state + m (Ljava/util/List;)V respawnDragon a method_12529 + p 1 crystals + m (Lnet/minecraft/core/BlockPos;)V spawnNewGateway a method_12516 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46716 a method_46716 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46717 a method_46717 + m (Z)V spawnExitPortal a method_12518 + p 1 active + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; saveData b method_12530 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V updateDragon b method_12532 + p 1 dragon + m ()V tick c method_12538 + m ()V removeAllGateways d method_51856 + m ()I getCrystalsAlive e method_12517 + m ()Z hasPreviouslyKilledDragon f method_12536 + m ()V tryRespawn g method_12522 + m ()V resetSpikeCrystals h method_12524 + m ()Ljava/util/UUID; getDragonUUID i method_52179 + m ()V scanState j method_12515 + m ()V findOrCreateDragon k method_12525 + m ()Z hasActiveExitPortal l method_12514 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; findExitPortal m method_12531 + m ()Z isArenaLoaded n method_12533 + m ()V updatePlayers o method_12520 + m ()V updateCrystalCount p method_12535 + m ()V spawnNewGateway q method_12519 + m ()Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; createNewDragon r method_12523 + m (Lnet/minecraft/server/level/ServerLevel;JLnet/minecraft/world/level/dimension/end/EndDragonFight$Data;)V + p 1 level + p 2 seed + p 4 data + m (Lnet/minecraft/server/level/ServerLevel;JLnet/minecraft/world/level/dimension/end/EndDragonFight$Data;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 seed + p 4 data + p 5 origin + m ()V +c net/minecraft/world/level/dimension/end/EndDragonFight$Data dxb$a net/minecraft/class_2881$class_8576 + f Lcom/mojang/serialization/Codec; CODEC a field_44945 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; DEFAULT b field_44946 + f Z needsStateScanning c comp_1540 + f Z dragonKilled d comp_1541 + f Z previouslyKilled e comp_1542 + f Z isRespawning f comp_1543 + f Ljava/util/Optional; dragonUUID g comp_1544 + f Ljava/util/Optional; exitPortalLocation h comp_1545 + f Ljava/util/Optional; gateways i comp_1546 + m ()Z needsStateScanning a comp_1540 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52230 a method_52230 + m ()Z dragonKilled b comp_1541 + m ()Z previouslyKilled c comp_1542 + m ()Z isRespawning d comp_1543 + m ()Ljava/util/Optional; dragonUUID e comp_1544 + m ()Ljava/util/Optional; exitPortalLocation f comp_1545 + m ()Ljava/util/Optional; gateways g comp_1546 + m (ZZZZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/dimension/end/package-info dxc net/minecraft/class_6102 +c net/minecraft/world/level/dimension/package-info dxd net/minecraft/class_6103 +c net/minecraft/world/level/entity/ChunkEntities dxe net/minecraft/class_5566 + f Lnet/minecraft/world/level/ChunkPos; pos a field_27241 + f Ljava/util/List; entities b field_27242 + m ()Lnet/minecraft/world/level/ChunkPos; getPos a method_31741 + m ()Ljava/util/stream/Stream; getEntities b method_31742 + m ()Z isEmpty c method_31743 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/List;)V + p 1 pos + p 2 entities +c net/minecraft/world/level/entity/ChunkStatusUpdateListener dxf net/minecraft/class_5567 +c net/minecraft/world/level/entity/EntityAccess dxg net/minecraft/class_5568 + m (Lnet/minecraft/world/level/entity/EntityInLevelCallback;)V setLevelCallback a method_31744 + p 1 levelCallback + m ()I getId an method_5628 + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V setRemoved b method_31745 + p 1 removalReason + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox cK method_5829 + m ()Ljava/util/stream/Stream; getSelfAndPassengers cU method_24204 + m ()Ljava/util/stream/Stream; getPassengersAndSelf cV method_31748 + m ()Ljava/util/UUID; getUUID cz method_5667 + m ()Z shouldBeSaved dM method_31746 + m ()Z isAlwaysTicking dN method_31747 + m ()Lnet/minecraft/core/BlockPos; blockPosition do method_24515 +c net/minecraft/world/level/entity/EntityInLevelCallback dxh net/minecraft/class_5569 + f Lnet/minecraft/world/level/entity/EntityInLevelCallback; NULL a field_27243 + m ()V onMove a method_31749 + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V onRemove a method_31750 + p 1 reason + m ()V +c net/minecraft/world/level/entity/EntityInLevelCallback$1 dxh$1 net/minecraft/class_5569$1 + m ()V +c net/minecraft/world/level/entity/EntityLookup dxi net/minecraft/class_5570 + f Lorg/slf4j/Logger; LOGGER a field_27244 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; byId b field_27245 + f Ljava/util/Map; byUuid c field_27246 + m ()Ljava/lang/Iterable; getAllEntities a method_31751 + m (I)Lnet/minecraft/world/level/entity/EntityAccess; getEntity a method_31752 + p 1 id + m (Lnet/minecraft/world/level/entity/EntityAccess;)V add a method_31753 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities a method_31754 + p 1 test + p 2 consumer + m (Ljava/util/UUID;)Lnet/minecraft/world/level/entity/EntityAccess; getEntity a method_31755 + p 1 uuid + m ()I count b method_31756 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V remove b method_31757 + p 1 entity + m ()V + m ()V +c net/minecraft/world/level/entity/EntityPersistentStorage dxj net/minecraft/class_5571 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; loadEntities a method_31759 + p 1 pos + m (Lnet/minecraft/world/level/entity/ChunkEntities;)V storeEntities a method_31760 + p 1 entities + m (Z)V flush a method_31758 + p 1 synchronize +c net/minecraft/world/level/entity/EntitySection dxk net/minecraft/class_5572 + f Lorg/slf4j/Logger; LOGGER a field_27247 + f Lnet/minecraft/util/ClassInstanceMultiMap; storage b field_27248 + f Lnet/minecraft/world/level/entity/Visibility; chunkStatus c field_27249 + m ()Z isEmpty a method_31761 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V add a method_31764 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; getEntities a method_31762 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/level/entity/Visibility;)Lnet/minecraft/world/level/entity/Visibility; updateChunkStatus a method_31763 + p 1 chunkStatus + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; getEntities a method_31765 + p 1 bounds + p 2 consumer + m ()Ljava/util/stream/Stream; getEntities b method_31766 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z remove b method_31767 + p 1 entity + m ()Lnet/minecraft/world/level/entity/Visibility; getStatus c method_31768 + m ()I size d method_31769 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/Visibility;)V + p 1 entityClazz + p 2 chunkStatus + m ()V +c net/minecraft/world/level/entity/EntitySectionStorage dxl net/minecraft/class_5573 + f Ljava/lang/Class; entityClass a field_27250 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction; intialSectionVisibility b field_27251 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; sections c field_27252 + f Lit/unimi/dsi/fastutil/longs/LongSortedSet; sectionIds d field_27253 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAllChunksWithExistingSections a method_31770 + m (II)Lit/unimi/dsi/fastutil/longs/LongSortedSet; getChunkSections a method_31771 + p 1 x + p 2 z + m (J)Ljava/util/stream/LongStream; getExistingSectionPositionsInChunk a method_31772 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities a method_31773 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;Lnet/minecraft/world/level/entity/EntitySection;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_31778 a method_31778 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V forEachAccessibleNonEmptySection a method_31777 + p 1 boundingBox + p 2 consumer + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;Lnet/minecraft/world/level/entity/EntitySection;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_39465 a method_39465 + m (Lit/unimi/dsi/fastutil/longs/LongSet;J)V method_31780 a method_31780 + m ()I count b method_31781 + m (J)Ljava/util/stream/Stream; getExistingSectionsInChunk b method_31782 + p 1 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities b method_31783 + p 1 bounds + p 2 consumer + m (J)Lnet/minecraft/world/level/entity/EntitySection; getOrCreateSection c method_31784 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/entity/EntitySection; getSection d method_31785 + p 1 sectionPos + m (J)V remove e method_31786 + p 1 sectionId + m (J)J getChunkKeyFromSectionKey f method_31787 + p 0 pos + m (J)Lnet/minecraft/world/level/entity/EntitySection; createSection g method_31788 + p 1 sectionPos + m (Ljava/lang/Class;Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction;)V + p 1 entityClass + p 2 initialSectionVisibility +c net/minecraft/world/level/entity/EntityTickList dxm net/minecraft/class_5574 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; active a field_27254 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; passive b field_27255 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; iterated c field_27256 + m ()V ensureActiveIsNotIterated a method_31789 + m (Lnet/minecraft/world/entity/Entity;)V add a method_31790 + p 1 entity + m (Ljava/util/function/Consumer;)V forEach a method_31791 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V remove b method_31792 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z contains c method_31793 + p 1 entity + m ()V +c net/minecraft/world/level/entity/EntityTypeTest dxn net/minecraft/class_5575 + m ()Ljava/lang/Class; getBaseClass a method_31794 + m (Ljava/lang/Class;)Lnet/minecraft/world/level/entity/EntityTypeTest; forClass a method_31795 + p 0 clazz + m (Ljava/lang/Object;)Ljava/lang/Object; tryCast a method_31796 + p 1 entity + m (Ljava/lang/Class;)Lnet/minecraft/world/level/entity/EntityTypeTest; forExactClass b method_55374 + p 0 clazz +c net/minecraft/world/level/entity/EntityTypeTest$1 dxn$1 net/minecraft/class_5575$1 + f Ljava/lang/Class; val$cls a field_27257 + m (Ljava/lang/Class;)V +c net/minecraft/world/level/entity/EntityTypeTest$2 dxn$2 net/minecraft/class_5575$2 + f Ljava/lang/Class; val$cls a field_47524 + m (Ljava/lang/Class;)V +c net/minecraft/world/level/entity/LevelCallback dxo net/minecraft/class_5576 + m (Ljava/lang/Object;)V onSectionChange a method_43029 + p 1 entity + m (Ljava/lang/Object;)V onTrackingEnd b method_31797 + p 1 entity + m (Ljava/lang/Object;)V onTrackingStart c method_31798 + p 1 entity + m (Ljava/lang/Object;)V onTickingEnd d method_31799 + p 1 entity + m (Ljava/lang/Object;)V onTickingStart e method_31800 + p 1 entity + m (Ljava/lang/Object;)V onDestroyed f method_31801 + p 1 entity + m (Ljava/lang/Object;)V onCreated g method_31802 + p 1 entity +c net/minecraft/world/level/entity/LevelEntityGetter dxp net/minecraft/class_5577 + m ()Ljava/lang/Iterable; getAll a method_31803 + m (I)Lnet/minecraft/world/level/entity/EntityAccess; get a method_31804 + p 1 id + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/util/AbortableIterationConsumer;)V get a method_31806 + p 1 test + p 2 consumer + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V get a method_31805 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/phys/AABB;Ljava/util/function/Consumer;)V get a method_31807 + p 1 boundingBox + p 2 consumer + m (Ljava/util/UUID;)Lnet/minecraft/world/level/entity/EntityAccess; get a method_31808 + p 1 uuid +c net/minecraft/world/level/entity/LevelEntityGetterAdapter dxq net/minecraft/class_5578 + f Lnet/minecraft/world/level/entity/EntityLookup; visibleEntities a field_27258 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage b field_27259 + m (Lnet/minecraft/world/level/entity/EntityLookup;Lnet/minecraft/world/level/entity/EntitySectionStorage;)V + p 1 visibleEntities + p 2 sectionStorage +c net/minecraft/world/level/entity/PersistentEntitySectionManager dxr net/minecraft/class_5579 + f Lorg/slf4j/Logger; LOGGER a field_27260 + f Ljava/util/Set; knownUuids b field_27261 + f Lnet/minecraft/world/level/entity/LevelCallback; callbacks c field_27262 + f Lnet/minecraft/world/level/entity/EntityPersistentStorage; permanentStorage d field_27263 + f Lnet/minecraft/world/level/entity/EntityLookup; visibleEntityStorage e field_27264 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage f field_27265 + f Lnet/minecraft/world/level/entity/LevelEntityGetter; entityGetter g field_27266 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkVisibility h field_27267 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkLoadStatuses i field_27268 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunksToUnload j field_27269 + f Ljava/util/Queue; loadingInbox k field_27270 + m ()V tick a method_31809 + m (J)Z areEntitiesLoaded a method_37252 + p 1 chunkPos + m (JLnet/minecraft/world/level/entity/EntitySection;)V removeSectionIfEmpty a method_31811 + p 1 sectionKey + p 3 section + m (JLjava/util/function/Consumer;)Z storeChunkSections a method_31812 + p 1 chunkPosValue + p 3 entityAction + m (Lnet/minecraft/util/CsvOutput;J)V method_31813 a method_31813 + m (Lnet/minecraft/util/CsvOutput;Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus;J)V method_31814 a method_31814 + m (Lnet/minecraft/world/level/ChunkPos;)Z canPositionTick a method_40021 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V updateChunkStatus a method_31815 + p 1 chunkPos + p 2 fullChunkStatus + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/entity/Visibility;)V updateChunkStatus a method_31816 + p 1 pos + p 2 visibility + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_31817 a method_31817 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z addNewEntity a method_31818 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityAccess;Lnet/minecraft/world/level/entity/Visibility;)Lnet/minecraft/world/level/entity/Visibility; getEffectiveStatus a method_31832 + p 0 entity + p 1 visibility + m (Lnet/minecraft/world/level/entity/EntityAccess;Z)Z addEntity a method_31820 + p 1 entity + p 2 worldGenSpawned + m (Lnet/minecraft/world/level/entity/EntitySection;)Ljava/util/stream/Stream; method_31821 a method_31821 + m (Lnet/minecraft/world/level/entity/Visibility;Lnet/minecraft/world/level/entity/EntitySection;)V method_31825 a method_31825 + m (Ljava/io/Writer;)V dumpSections a method_31826 + p 1 writer + m (Ljava/util/UUID;)Z isLoaded a method_31827 + p 1 uuid + m (Ljava/util/stream/Stream;)V addLegacyChunkEntities a method_31828 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)Z canPositionTick a method_40022 + p 1 pos + m ()V autoSave b method_31829 + m (J)V ensureChunkQueuedForLoad b method_31810 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z addEntityUuid b method_31831 + p 1 entity + m (Ljava/util/stream/Stream;)V addWorldGenChunkEntities b method_31835 + p 1 entities + m ()V saveAll c method_31836 + m (J)V requestChunkLoad c method_31830 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)V startTicking c method_31838 + p 1 entity + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntityGetter d method_31841 + m (J)Z processChunkUnload d method_31837 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)V stopTicking d method_31843 + p 1 entity + m ()Ljava/lang/String; gatherStats e method_31845 + m (J)Z method_31842 e method_31842 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V startTracking e method_31847 + p 1 entity + m ()I count f method_54490 + m (J)V method_31846 f method_31846 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V stopTracking f method_31850 + p 1 entity + m ()V processUnloads g method_31851 + m (J)Z method_31849 g method_31849 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V unloadEntity g method_31852 + p 1 entity + m ()V processPendingLoads h method_31853 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31854 h method_31854 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAllChunksToSave i method_31855 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31856 i method_31856 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31857 j method_31857 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31858 k method_31858 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31859 l method_31859 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31860 m method_31860 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31861 n method_31861 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31862 o method_31862 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31863 p method_31863 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31864 q method_31864 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/LevelCallback;Lnet/minecraft/world/level/entity/EntityPersistentStorage;)V + p 1 entityClass + p 2 callbacks + p 3 permanentStorage + m ()V +c net/minecraft/world/level/entity/PersistentEntitySectionManager$Callback dxr$a net/minecraft/class_5579$class_5580 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; field_27271 b field_27271 + f Lnet/minecraft/world/level/entity/EntityAccess; entity c field_27272 + f J currentSectionKey d field_27273 + f Lnet/minecraft/world/level/entity/EntitySection; currentSection e field_27274 + m (Lnet/minecraft/world/level/entity/Visibility;Lnet/minecraft/world/level/entity/Visibility;)V updateStatus a method_31865 + p 1 oldVisibility + p 2 newVisibility + m (Lnet/minecraft/world/level/entity/PersistentEntitySectionManager;Lnet/minecraft/world/level/entity/EntityAccess;JLnet/minecraft/world/level/entity/EntitySection;)V + p 2 entity + p 3 currentSectionKey + p 5 currentSection +c net/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus dxr$b net/minecraft/class_5579$class_5581 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; FRESH a field_27275 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; PENDING b field_27276 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; LOADED c field_27277 + f [Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; $VALUES d field_27278 + m ()[Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; $values a method_36746 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/entity/TransientEntitySectionManager dxs net/minecraft/class_5582 + f Lorg/slf4j/Logger; LOGGER a field_27279 + f Lnet/minecraft/world/level/entity/LevelCallback; callbacks b field_27280 + f Lnet/minecraft/world/level/entity/EntityLookup; entityStorage c field_27281 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage d field_27282 + f Lit/unimi/dsi/fastutil/longs/LongSet; tickingChunks e field_27283 + f Lnet/minecraft/world/level/entity/LevelEntityGetter; entityGetter f field_27284 + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntityGetter a method_31866 + m (J)Lnet/minecraft/world/level/entity/Visibility; method_31867 a method_31867 + m (JLnet/minecraft/world/level/entity/EntitySection;)V removeSectionIfEmpty a method_31868 + p 1 section + p 3 entitySection + m (Lnet/minecraft/world/level/ChunkPos;)V startTicking a method_31869 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityAccess;)V addEntity a method_31870 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntitySection;)V method_31871 a method_31871 + m ()I count b method_31874 + m (Lnet/minecraft/world/level/ChunkPos;)V stopTicking b method_31875 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31876 b method_31876 + m (Lnet/minecraft/world/level/entity/EntitySection;)V method_31877 b method_31877 + m ()Ljava/lang/String; gatherStats c method_31879 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31880 c method_31880 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/LevelCallback;)V + p 1 clazz + p 2 callbacks + m ()V +c net/minecraft/world/level/entity/TransientEntitySectionManager$Callback dxs$a net/minecraft/class_5582$class_5583 + f Lnet/minecraft/world/level/entity/TransientEntitySectionManager; field_27285 b field_27285 + f Lnet/minecraft/world/level/entity/EntityAccess; entity c field_27286 + f J currentSectionKey d field_27287 + f Lnet/minecraft/world/level/entity/EntitySection; currentSection e field_27288 + m (Lnet/minecraft/world/level/entity/TransientEntitySectionManager;Lnet/minecraft/world/level/entity/EntityAccess;JLnet/minecraft/world/level/entity/EntitySection;)V + p 2 entity + p 3 section + p 5 currentSection +c net/minecraft/world/level/entity/Visibility dxt net/minecraft/class_5584 + f Lnet/minecraft/world/level/entity/Visibility; HIDDEN a field_27289 + f Lnet/minecraft/world/level/entity/Visibility; TRACKED b field_27290 + f Lnet/minecraft/world/level/entity/Visibility; TICKING c field_27291 + f Z accessible d field_27292 + f Z ticking e field_27293 + f [Lnet/minecraft/world/level/entity/Visibility; $VALUES f field_27294 + m ()Z isTicking a method_31883 + m (Lnet/minecraft/server/level/FullChunkStatus;)Lnet/minecraft/world/level/entity/Visibility; fromFullChunkStatus a method_31884 + p 0 fullChunkStatus + m ()Z isAccessible b method_31885 + m ()[Lnet/minecraft/world/level/entity/Visibility; $values c method_36747 + m (Ljava/lang/String;IZZ)V + p 3 accessible + p 4 ticking + m ()V +c net/minecraft/world/level/entity/package-info dxu net/minecraft/class_6104 +c net/minecraft/world/level/gameevent/BlockPositionSource dxv net/minecraft/class_5707 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28137 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48377 + f Lnet/minecraft/core/BlockPos; pos e field_28138 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32927 a method_32927 + m (Lnet/minecraft/world/level/gameevent/BlockPositionSource;)Lnet/minecraft/core/BlockPos; method_56122 a method_56122 + m (Lnet/minecraft/world/level/gameevent/BlockPositionSource;)Lnet/minecraft/core/BlockPos; method_32928 b method_32928 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m ()V +c net/minecraft/world/level/gameevent/BlockPositionSource$Type dxv$a net/minecraft/class_5707$class_5708 + m ()V +c net/minecraft/world/level/gameevent/DynamicGameEventListener dxw net/minecraft/class_5715 + f Lnet/minecraft/world/level/gameevent/GameEventListener; listener a field_28182 + f Lnet/minecraft/core/SectionPos; lastSection b field_28183 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; getListener a method_43152 + m (Lnet/minecraft/server/level/ServerLevel;)V add a method_42335 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;)V method_42336 a method_42336 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/SectionPos;Ljava/util/function/Consumer;)V ifChunkExists a method_32950 + p 0 level + p 1 sectionPos + p 2 dispatcherConsumer + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32951 a method_32951 + m (Lnet/minecraft/server/level/ServerLevel;)V remove b method_32949 + p 1 level + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32953 b method_32953 + m (Lnet/minecraft/server/level/ServerLevel;)V move c method_32952 + p 1 level + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32954 c method_32954 + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V + p 1 listener +c net/minecraft/world/level/gameevent/EntityPositionSource dxx net/minecraft/class_5709 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28139 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48378 + f Lcom/mojang/datafixers/util/Either; entityOrUuidOrId e field_38424 + f F yOffset f field_38242 + m (Lnet/minecraft/world/entity/Entity;)V method_42673 a method_42673 + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Integer; method_42676 a method_42676 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32932 a method_32932 + m (Lnet/minecraft/world/level/Level;Lcom/mojang/datafixers/util/Either;)Ljava/util/Optional; method_42674 a method_42674 + m (Lnet/minecraft/world/level/Level;Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; method_42675 a method_42675 + m (Lnet/minecraft/world/level/gameevent/EntityPositionSource;)Ljava/lang/Float; method_56124 a method_56124 + m (Ljava/lang/Integer;)Ljava/util/UUID; method_42677 a method_42677 + m (Ljava/lang/Integer;Ljava/lang/Float;)Lnet/minecraft/world/level/gameevent/EntityPositionSource; method_56125 a method_56125 + m (Ljava/util/UUID;)Ljava/lang/Integer; method_42678 a method_42678 + m (Ljava/util/UUID;Ljava/lang/Float;)Lnet/minecraft/world/level/gameevent/EntityPositionSource; method_42679 a method_42679 + m ()Ljava/util/UUID; getUuid b method_42680 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_42337 b method_42337 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/UUID; method_42682 b method_42682 + m (Lnet/minecraft/world/level/Level;)V resolveEntity b method_42681 + p 1 level + m (Lnet/minecraft/world/level/gameevent/EntityPositionSource;)Ljava/lang/Float; method_42338 b method_42338 + m ()I getId c method_42683 + m (Lnet/minecraft/world/entity/Entity;F)V + p 1 entity + p 2 yOffset + m (Lcom/mojang/datafixers/util/Either;F)V + p 1 entityOrUuidOrId + p 2 yOffset + m ()V +c net/minecraft/world/level/gameevent/EntityPositionSource$Type dxx$a net/minecraft/class_5709$class_5710 + m ()V +c net/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry dxy net/minecraft/class_5711 + f Ljava/util/List; listeners b field_28142 + f Ljava/util/Set; listenersToRemove c field_37673 + f Ljava/util/List; listenersToAdd d field_37674 + f Z processing e field_37675 + f Lnet/minecraft/server/level/ServerLevel; level f field_28143 + f I sectionY g field_44636 + f Lnet/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction; onEmptyAction h field_44637 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEventListener;)Ljava/util/Optional; getPostableListenerPosition a method_32936 + p 0 level + p 1 pos + p 2 listener + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction;)V + p 1 level + p 2 sectionY + p 3 onEmptyAction +c net/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction dxy$a net/minecraft/class_5711$class_8512 +c net/minecraft/world/level/gameevent/GameEvent dxz net/minecraft/class_5712 + c Describes an in game event or action that can be detected by listeners such as the Sculk Sensor block.\n@param notificationRadius The radius around an event source to broadcast this event. Any listeners within this radius will be notified when the event happens. + f Lnet/minecraft/core/Holder$Reference; HIT_GROUND A field_28159 + c This event is broadcast when an entity falls far enough to take fall damage. + f Lnet/minecraft/core/Holder$Reference; INSTRUMENT_PLAY B field_39415 + f Lnet/minecraft/core/Holder$Reference; ITEM_INTERACT_FINISH C field_28146 + f Lnet/minecraft/core/Holder$Reference; ITEM_INTERACT_START D field_28145 + f Lnet/minecraft/core/Holder$Reference; JUKEBOX_PLAY E field_39485 + f Lnet/minecraft/core/Holder$Reference; JUKEBOX_STOP_PLAY F field_39486 + f Lnet/minecraft/core/Holder$Reference; LIGHTNING_STRIKE G field_28152 + c This event is broadcast when lightning strikes a block. + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_PLAY H field_38425 + f Lnet/minecraft/core/Holder$Reference; PRIME_FUSE I field_28727 + c This event is broadcast when an entity such as a creeper or TNT begins exploding. + f Lnet/minecraft/core/Holder$Reference; PROJECTILE_LAND J field_28162 + c This event is broadcast when a projectile hits something. + f Lnet/minecraft/core/Holder$Reference; PROJECTILE_SHOOT K field_28161 + c This event is broadcast when a projectile is fired. + f Lnet/minecraft/core/Holder$Reference; SCULK_SENSOR_TENDRILS_CLICKING L field_38243 + f Lnet/minecraft/core/Holder$Reference; SHEAR M field_28730 + c This event is broadcast when a shear is used. This includes disarming tripwires, harvesting honeycombs, carving pumpkins, etc. + f Lnet/minecraft/core/Holder$Reference; SHRIEK N field_38244 + f Lnet/minecraft/core/Holder$Reference; SPLASH O field_28160 + c This event is broadcast wen an entity splashes in the water. This includes boats paddling or hitting bubble columns. + f Lnet/minecraft/core/Holder$Reference; STEP P field_28155 + c This event is broadcast when an entity moves on the ground. This includes entities such as minecarts. + f Lnet/minecraft/core/Holder$Reference; SWIM Q field_28156 + c This event is broadcast as an entity swims around in water. + f Lnet/minecraft/core/Holder$Reference; TELEPORT R field_39446 + f Lnet/minecraft/core/Holder$Reference; UNEQUIP S field_45787 + f Lnet/minecraft/core/Holder$Reference; RESONATE_1 T field_43308 + f Lnet/minecraft/core/Holder$Reference; RESONATE_2 U field_43309 + f Lnet/minecraft/core/Holder$Reference; RESONATE_3 V field_43310 + f Lnet/minecraft/core/Holder$Reference; RESONATE_4 W field_43311 + f Lnet/minecraft/core/Holder$Reference; RESONATE_5 X field_43312 + f Lnet/minecraft/core/Holder$Reference; RESONATE_6 Y field_43313 + f Lnet/minecraft/core/Holder$Reference; RESONATE_7 Z field_43314 + f Lnet/minecraft/core/Holder$Reference; BLOCK_ACTIVATE a field_28174 + f Lnet/minecraft/core/Holder$Reference; RESONATE_8 aa field_43315 + f Lnet/minecraft/core/Holder$Reference; RESONATE_9 ab field_43316 + f Lnet/minecraft/core/Holder$Reference; RESONATE_10 ac field_43317 + f Lnet/minecraft/core/Holder$Reference; RESONATE_11 ad field_43318 + f Lnet/minecraft/core/Holder$Reference; RESONATE_12 ae field_43319 + f Lnet/minecraft/core/Holder$Reference; RESONATE_13 af field_43320 + f Lnet/minecraft/core/Holder$Reference; RESONATE_14 ag field_43321 + f Lnet/minecraft/core/Holder$Reference; RESONATE_15 ah field_43322 + f I DEFAULT_NOTIFICATION_RADIUS ai field_31449 + c The default notification radius for events to be broadcasted. @see net.minecraft.world.level.gameevent.GameEvent#register + f Lcom/mojang/serialization/Codec; CODEC aj field_51910 + f I notificationRadius ak comp_2193 + c The radius around an event source to broadcast this event. Any listeners within this radius will be notified when the event happens. + f Lnet/minecraft/core/Holder$Reference; BLOCK_ATTACH b field_28172 + c This event is broadcast when a block is attached to another. For example when the tripwire is attached to a tripwire hook. + f Lnet/minecraft/core/Holder$Reference; BLOCK_CHANGE c field_28733 + c This event is broadcast when a block is changed. For example when a flower is removed from a flower pot. + f Lnet/minecraft/core/Holder$Reference; BLOCK_CLOSE d field_28169 + c This event is broadcast when a block such as a door, trap door, or gate is closed. + f Lnet/minecraft/core/Holder$Reference; BLOCK_DEACTIVATE e field_28175 + f Lnet/minecraft/core/Holder$Reference; BLOCK_DESTROY f field_28165 + c This event is broadcast when a block is destroyed or picked up by an enderman. + f Lnet/minecraft/core/Holder$Reference; BLOCK_DETACH g field_28173 + c This event is broadcast when a block is detached from another block. For example when the tripwire is removed from the hook. + f Lnet/minecraft/core/Holder$Reference; BLOCK_OPEN h field_28168 + c This event is broadcast when a block such as a door, trap door, or gate has been opened. + f Lnet/minecraft/core/Holder$Reference; BLOCK_PLACE i field_28164 + c This event is broadcast when a block is placed in the world. + f Lnet/minecraft/core/Holder$Reference; CONTAINER_CLOSE j field_28177 + c This event is broadcast when a block with a storage inventory such as a chest or barrel is closed. Some entities like a minecart with chest may also cause this event to be broadcast. + f Lnet/minecraft/core/Holder$Reference; CONTAINER_OPEN k field_28176 + c This event is broadcast when a block with a storage inventory such as a chest or barrel is opened. Some entities like a minecart with chest may also cause this event to be broadcast. + f Lnet/minecraft/core/Holder$Reference; DRINK l field_28734 + f Lnet/minecraft/core/Holder$Reference; EAT m field_28735 + c This event is broadcast when an entity consumes food. This includes animals eating grass and other sources of food. + f Lnet/minecraft/core/Holder$Reference; ELYTRA_GLIDE n field_28158 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DAMAGE o field_28736 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DIE p field_37676 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DISMOUNT q field_42479 + f Lnet/minecraft/core/Holder$Reference; ENTITY_INTERACT r field_28725 + f Lnet/minecraft/core/Holder$Reference; ENTITY_MOUNT s field_42480 + f Lnet/minecraft/core/Holder$Reference; ENTITY_PLACE t field_28738 + c This event is broadcast when an entity is artificially placed in the world using an item. For example when a spawn egg is used. + f Lnet/minecraft/core/Holder$Reference; ENTITY_ACTION u field_45148 + f Lnet/minecraft/core/Holder$Reference; EQUIP v field_28739 + c This event is broadcast when an item is equipped to an entity or armor stand. + f Lnet/minecraft/core/Holder$Reference; EXPLODE w field_28178 + c This event is broadcast when an entity such as a creeper, tnt, or a firework explodes. + f Lnet/minecraft/core/Holder$Reference; FLAP x field_28157 + c This event is broadcast when a flying entity such as the ender dragon flaps its wings. + f Lnet/minecraft/core/Holder$Reference; FLUID_PICKUP y field_28167 + c This event is broadcast when a fluid is picked up. This includes using a bucket, harvesting honey, filling a bottle, and removing fluid from a cauldron. + f Lnet/minecraft/core/Holder$Reference; FLUID_PLACE z field_28166 + c This event is broadcast when fluid is placed. This includes adding fluid to a cauldron and placing a bucket of fluid. + m ()I notificationRadius a comp_2193 + m (Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; register a method_32939 + p 0 name + m (Ljava/lang/String;I)Lnet/minecraft/core/Holder$Reference; register a method_32940 + p 0 name + p 1 notificationRadius + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55782 + p 0 registry + m (I)V + p 1 notificationRadius + m ()V +c net/minecraft/world/level/gameevent/GameEvent$Context dxz$a net/minecraft/class_5712$class_7397 + f Lnet/minecraft/world/entity/Entity; sourceEntity a comp_713 + f Lnet/minecraft/world/level/block/state/BlockState; affectedState b comp_714 + m ()Lnet/minecraft/world/entity/Entity; sourceEntity a comp_713 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43285 + p 0 sourceEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43286 + p 0 sourceEntity + p 1 affectedState + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43287 + p 0 affectedState + m ()Lnet/minecraft/world/level/block/state/BlockState; affectedState b comp_714 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/gameevent/GameEvent$ListenerInfo dxz$b net/minecraft/class_5712$class_7447 + f Lnet/minecraft/core/Holder; gameEvent a field_39177 + f Lnet/minecraft/world/phys/Vec3; source b field_39178 + f Lnet/minecraft/world/level/gameevent/GameEvent$Context; context c field_39179 + f Lnet/minecraft/world/level/gameevent/GameEventListener; recipient d field_39180 + f D distanceToRecipient e field_39181 + m ()Lnet/minecraft/core/Holder; gameEvent a method_43724 + m (Lnet/minecraft/world/level/gameevent/GameEvent$ListenerInfo;)I compareTo a method_43725 + p 1 other + m ()Lnet/minecraft/world/phys/Vec3; source b method_43726 + m ()Lnet/minecraft/world/level/gameevent/GameEvent$Context; context c method_43727 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; recipient d method_43728 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListener;Lnet/minecraft/world/phys/Vec3;)V + p 1 gameEvent + p 2 source + p 3 context + p 4 recipient + p 5 pos +c net/minecraft/world/level/gameevent/GameEventDispatcher dya net/minecraft/class_7719 + f Lnet/minecraft/server/level/ServerLevel; level a field_40352 + m (Ljava/util/List;)V handleGameEventMessagesInQueue a method_45491 + p 1 listenerInfos + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListener;Lnet/minecraft/world/phys/Vec3;)V method_45492 a method_45492 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V post a method_45490 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/gameevent/GameEventListener dyb net/minecraft/class_5714 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getListenerSource a method_32946 + c Gets the position of the listener itself. + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;)Z handleGameEvent a method_32947 + p 1 level + p 2 gameEvent + p 3 context + p 4 pos + m ()I getListenerRadius b method_32948 + c Gets the listening radius of the listener. Events within this radius will notify the listener when broadcasted. + m ()Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; getDeliveryMode c method_45472 +c net/minecraft/world/level/gameevent/GameEventListener$DeliveryMode dyb$a net/minecraft/class_5714$class_7720 + f Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; UNSPECIFIED a field_40353 + f Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; BY_DISTANCE b field_40354 + f [Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; $VALUES c field_40355 + m ()[Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; $values a method_45493 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/gameevent/GameEventListener$Provider dyb$b net/minecraft/class_5714$class_8513 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; getListener c method_51358 +c net/minecraft/world/level/gameevent/GameEventListenerRegistry dyc net/minecraft/class_5713 + f Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; NOOP a field_28181 + m ()Z isEmpty a method_32942 + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V register a method_32944 + p 1 listener + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry$ListenerVisitor;)Z visitInRangeListeners a method_32943 + p 1 gameEvent + p 2 pos + p 3 context + p 4 visitor + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V unregister b method_32945 + p 1 listener + m ()V +c net/minecraft/world/level/gameevent/GameEventListenerRegistry$1 dyc$1 net/minecraft/class_5713$1 + m ()V +c net/minecraft/world/level/gameevent/GameEventListenerRegistry$ListenerVisitor dyc$a net/minecraft/class_5713$class_7721 +c net/minecraft/world/level/gameevent/PositionSource dyd net/minecraft/class_5716 + f Lcom/mojang/serialization/Codec; CODEC c field_28184 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48379 + m ()Lnet/minecraft/world/level/gameevent/PositionSourceType; getType a method_32955 + m (Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getPosition a method_32956 + p 1 level + m ()V +c net/minecraft/world/level/gameevent/PositionSourceType dye net/minecraft/class_5717 + f Lnet/minecraft/world/level/gameevent/PositionSourceType; BLOCK a field_28185 + c This PositionSource type represents blocks within the world and a fixed position. + f Lnet/minecraft/world/level/gameevent/PositionSourceType; ENTITY b field_28186 + c This PositionSource type represents an entity within the world. This source type will keep a reference to the entity itself. + m ()Lcom/mojang/serialization/MapCodec; codec a method_32957 + m (Ljava/lang/String;Lnet/minecraft/world/level/gameevent/PositionSourceType;)Lnet/minecraft/world/level/gameevent/PositionSourceType; register a method_32959 + c Registers a new PositionSource type with the game registry.\n@see net.minecraft.core.Registry#POSITION_SOURCE_TYPE\n@return The newly registered source type. + p 0 id + c The Id to register the type to. + p 1 type + c The type to register. + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56123 + m ()V +c net/minecraft/world/level/gameevent/package-info dyf net/minecraft/class_6105 +c net/minecraft/world/level/gameevent/vibrations/VibrationInfo dyg net/minecraft/class_7269 + f Lcom/mojang/serialization/Codec; CODEC a field_38245 + f Lnet/minecraft/core/Holder; gameEvent b comp_657 + f F distance c comp_658 + f Lnet/minecraft/world/phys/Vec3; pos d comp_659 + f Ljava/util/UUID; uuid e comp_660 + f Ljava/util/UUID; projectileOwnerUuid f comp_681 + f Lnet/minecraft/world/entity/Entity; entity g comp_661 + m ()Lnet/minecraft/core/Holder; gameEvent a comp_657 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getEntity a method_42348 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/UUID; getProjectileOwner a method_42684 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42349 a method_42349 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Ljava/util/Optional; method_42686 a method_42686 + m (Lnet/minecraft/core/Holder;Ljava/lang/Float;Lnet/minecraft/world/phys/Vec3;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; method_42685 a method_42685 + m ()F distance b comp_658 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getProjectileOwner b method_42687 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/projectile/Projectile; method_42688 b method_42688 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Ljava/util/Optional; method_42689 b method_42689 + m ()Lnet/minecraft/world/phys/Vec3; pos c comp_659 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_42690 c method_42690 + m (Lnet/minecraft/world/entity/Entity;)Z method_42691 c method_42691 + m ()Ljava/util/UUID; uuid d comp_660 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_42350 d method_42350 + m ()Ljava/util/UUID; projectileOwnerUuid e comp_681 + m ()Lnet/minecraft/world/entity/Entity; entity f comp_661 + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Ljava/util/UUID;Ljava/util/UUID;)V + p 1 gameEvent + p 2 distance + p 3 pos + p 4 uuid + p 5 projectileOwnerUuid + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)V + p 1 gameEvent + p 2 distance + p 3 pos + p 4 entity + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Ljava/util/UUID;Ljava/util/UUID;Lnet/minecraft/world/entity/Entity;)V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSelector dyh net/minecraft/class_7722 + f Lcom/mojang/serialization/Codec; CODEC a field_40359 + f Ljava/util/Optional; currentVibrationData b field_40360 + m ()V startOver a method_45501 + m (J)Ljava/util/Optional; chosenCandidate a method_45502 + p 1 tick + m (JLnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Lorg/apache/commons/lang3/tuple/Pair; method_45503 a method_45503 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45504 a method_45504 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;J)V addCandidate a method_45505 + p 1 vibrationInfo + p 2 tick + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;)Ljava/lang/Long; method_45506 a method_45506 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;J)Z shouldReplaceVibration b method_45507 + p 1 vibrationInfo + p 2 tick + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;)Ljava/util/Optional; method_45508 b method_45508 + m (Ljava/util/Optional;J)V + p 1 event + p 2 tick + m ()V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem dyi net/minecraft/class_8514 + f Ljava/util/List; RESONANCE_EVENTS f_ field_44638 + f I DEFAULT_VIBRATION_FREQUENCY g_ field_47839 + f Ljava/util/function/ToIntFunction; VIBRATION_FREQUENCY_FOR_EVENT h_ field_44639 + m (Lnet/minecraft/resources/ResourceKey;)I getGameEventFrequency a method_51385 + p 0 eventKey + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_51383 a method_51383 + m (FI)I getRedstoneStrengthForDistance a_ method_51384 + p 0 distance + p 1 maxDistance + m (Lnet/minecraft/core/Holder;)I getGameEventFrequency a_ method_55783 + p 0 gameEvent + m (I)Lnet/minecraft/resources/ResourceKey; getResonanceEventByFrequency b method_51386 + p 0 frequency + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; getVibrationData gm method_51298 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; getVibrationUser gn method_51299 + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data dyi$a net/minecraft/class_8514$class_8515 + f Lcom/mojang/serialization/Codec; CODEC a field_44640 + f Ljava/lang/String; NBT_TAG_KEY b field_44641 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; currentVibration c field_44642 + f I travelTimeInTicks d field_44643 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector; selectionStrategy e field_44644 + f Z reloadVibrationParticle f field_44645 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector; getSelectionStrategy a method_51387 + m (I)V setTravelTimeInTicks a method_51388 + p 1 travelTimeInTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51389 a method_51389 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)V setCurrentVibration a method_51390 + p 1 currentVibration + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)Ljava/util/Optional; method_51391 a method_51391 + m (Ljava/util/Optional;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;Ljava/lang/Integer;)Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; method_51392 a method_51392 + m (Z)V setReloadVibrationParticle a method_51393 + p 1 reloadVibrationParticle + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; getCurrentVibration b method_51394 + m ()I getTravelTimeInTicks c method_51395 + m ()V decrementTravelTime d method_51396 + m ()Z shouldReloadVibrationParticle e method_51397 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;IZ)V + p 1 currentVibration + p 2 selectionStrategy + p 3 travelTimeInTicks + p 4 reloadVibrationParticle + m ()V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener dyi$b net/minecraft/class_8514$class_8516 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem; system a field_44646 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V scheduleVibration a method_51399 + p 1 level + p 2 data + p 3 gameEvent + p 4 context + p 5 pos + p 6 sensorPos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V method_51398 a method_51398 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z isOccluded a method_51400 + p 0 level + p 1 eventPos + p 2 vibrationUserPos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51401 a method_51401 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)F distanceBetweenInBlocks a method_51402 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;)V forceScheduleVibration b method_51403 + p 1 level + p 2 gameEvent + p 3 context + p 4 pos + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem;)V + p 1 system +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Ticker dyi$c net/minecraft/class_8514$class_8517 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V trySelectAndScheduleVibration a method_51404 + p 0 level + p 1 data + p 2 user + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Z receiveVibration a method_51405 + p 0 level + p 1 data + p 2 user + p 3 vibrationInfo + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V tick a method_51406 + p 0 level + p 1 data + p 2 user + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z areAdjacentChunksTicking a method_51407 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)V method_51408 a method_51408 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V tryReloadVibrationParticle b method_51409 + p 0 level + p 1 data + p 2 user +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$User dyi$d net/minecraft/class_8514$class_5719 + m ()I getListenerRadius a method_49797 + m (F)I calculateTravelTimeInTicks a method_51410 + p 1 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;F)V onReceiveVibration a method_32969 + p 1 level + p 2 pos + p 3 gameEvent + p 4 entity + p 5 playerEntity + p 6 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)Z canReceiveVibration a method_32970 + p 1 level + p 2 pos + p 3 gameEvent + p 4 context + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)Z isValidVibration a method_42324 + p 1 gameEvent + p 2 context + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getPositionSource b method_51300 + m ()Lnet/minecraft/tags/TagKey; getListenableEvents c method_42210 + m ()Z canTriggerAvoidVibration d method_43695 + m ()V onDataChanged e method_42672 + m ()Z requiresAdjacentChunksToBeTicking f method_51363 +c net/minecraft/world/level/gameevent/vibrations/package-info dyj net/minecraft/class_6106 +c net/minecraft/world/level/levelgen/Aquifer dyk net/minecraft/class_6350 + c Aquifers are responsible for non-sea level fluids found in terrain generation, but also managing that different aquifers don't intersect with each other in ways that would create undesirable fluid placement.\nThe aquifer interface itself is a modifier on a per-block basis. It computes a block state to be placed for each position in the world.\n

\nAquifers work by first partitioning a single chunk into a low resolution grid. They then generate, via various noise layers, an {@link NoiseBasedAquifer.AquiferStatus} at each grid point.\nAt each point, the grid cell containing that point is calculated, and then of the eight grid corners, the three closest aquifers are found, by square euclidean distance.\nBorders between aquifers are created by comparing nearby aquifers to see if the given point is near-equidistant from them, indicating a border if so, or fluid/air depending on the aquifer height if not. + m ()Z shouldScheduleFluidUpdate a method_33742 + c Returns {@code true} if there should be a fluid update scheduled - due to a fluid block being placed in a possibly unsteady position - at the last position passed into {@link #computeState}.\nThis must be invoked only after {@link #computeState}, and will be using the same parameters as that method. + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)Lnet/minecraft/world/level/levelgen/Aquifer; createDisabled a method_36381 + c Creates a disabled, or no-op aquifer. This will fill any open areas below sea level with the default fluid. + p 0 defaultFluid + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)Lnet/minecraft/world/level/block/state/BlockState; computeSubstance a method_38317 + p 1 context + p 2 substance + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;IILnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)Lnet/minecraft/world/level/levelgen/Aquifer; create a method_36382 + c Creates a standard noise based aquifer. This aquifer will place liquid (both water and lava), air, and stone as described above. + p 0 chunk + p 1 chunkPos + p 2 noiseRouter + p 3 positionalRandomFactory + p 4 minY + p 5 height + p 6 globalFluidPicker +c net/minecraft/world/level/levelgen/Aquifer$1 dyk$1 net/minecraft/class_6350$1 + f Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; val$fluidRule a field_34577 + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)V +c net/minecraft/world/level/levelgen/Aquifer$FluidPicker dyk$a net/minecraft/class_6350$class_6565 +c net/minecraft/world/level/levelgen/Aquifer$FluidStatus dyk$b net/minecraft/class_6350$class_6351 + f I fluidLevel a field_33576 + c The y height of the aquifer. + f Lnet/minecraft/world/level/block/state/BlockState; fluidType b field_33577 + c The fluid state the aquifer is filled with. + m (I)Lnet/minecraft/world/level/block/state/BlockState; at a method_38318 + p 1 y + m (ILnet/minecraft/world/level/block/state/BlockState;)V + p 1 fluidLevel + p 2 fluidType +c net/minecraft/world/level/levelgen/Aquifer$NoiseBasedAquifer dyk$c net/minecraft/class_6350$class_5832 + f I gridSizeX A field_28825 + f I gridSizeZ B field_28826 + f [[I SURFACE_SAMPLING_OFFSETS_IN_CHUNKS C field_34581 + f I X_RANGE a field_31451 + f I Y_RANGE b field_31452 + f I Z_RANGE c field_31453 + f I X_SEPARATION d field_31454 + f I Y_SEPARATION e field_31455 + f I Z_SEPARATION f field_31456 + f I X_SPACING g field_31457 + f I Y_SPACING h field_31458 + f I Z_SPACING i field_31459 + f I MAX_REASONABLE_DISTANCE_TO_AQUIFER_CENTER j field_36220 + f D FLOWING_UPDATE_SIMULARITY k field_36221 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk l field_34578 + f Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise m field_28813 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise n field_35122 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise o field_35123 + f Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise p field_33575 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; positionalRandomFactory q field_34579 + f [Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; aquiferCache r field_28816 + f [J aquiferLocationCache s field_28817 + f Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; globalFluidPicker t field_34580 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion u field_38246 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth v field_38247 + f Z shouldScheduleFluidUpdate w field_28820 + f I minGridX x field_28822 + f I minGridY y field_28823 + f I minGridZ z field_28824 + m (I)I gridX a method_33734 + p 1 x + m (II)D similarity a method_33736 + c Compares two distances (between aquifers).\n@return {@code 1.0} if the distances are equal, and returns smaller values the more different in absolute value the two distances are. + p 0 firstDistance + p 1 secondDistance + m (III)I getIndex a method_33741 + c @return A cache index based on grid positions. + p 1 gridX + p 2 gridY + p 3 gridZ + m (IIII)I computeRandomizedFluidSurfaceLevel a method_42352 + p 1 x + p 2 y + p 3 z + p 4 maxSurfaceLevel + m (IIILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;I)Lnet/minecraft/world/level/block/state/BlockState; computeFluidType a method_42353 + p 1 x + p 2 y + p 3 z + p 4 fluidStatus + p 5 surfaceLevel + m (IIILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;IZ)I computeSurfaceLevel a method_42354 + p 1 x + p 2 y + p 3 z + p 4 fluidStatus + p 5 maxSurfaceLevel + p 6 fluidPresent + m (J)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; getAquiferStatus a method_33738 + c Calculates the aquifer at a given location. Internally references a cache using the grid positions as an index. If the cache is not populated, computes a new aquifer at that grid location using {@link #computeFluid}. + p 1 packedPos + c The aquifer block position, packed into a {@code long}. + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;Lorg/apache/commons/lang3/mutable/MutableDouble;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;)D calculatePressure a method_33735 + p 1 context + p 2 substance + p 3 firstFluid + p 4 secondFluid + m (I)I gridY b method_33740 + p 1 y + m (III)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; computeFluid b method_40463 + p 1 x + p 2 y + p 3 z + m (I)I gridZ c method_33743 + p 1 z + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;IILnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)V + p 1 noiseChunk + p 2 chunkPos + p 3 noiseRouter + p 4 positionalRandomFactory + p 5 minY + p 6 height + p 7 globalFluidPicker + m ()V +c net/minecraft/world/level/levelgen/Beardifier dyl net/minecraft/class_5817 + c Modifies terrain noise to be flatter near structures such as villages. + f I BEARD_KERNEL_RADIUS a field_31461 + f I BEARD_KERNEL_SIZE f field_31462 + f [F BEARD_KERNEL g field_28741 + f Lit/unimi/dsi/fastutil/objects/ObjectListIterator; pieceIterator h field_28744 + f Lit/unimi/dsi/fastutil/objects/ObjectListIterator; junctionIterator i field_28745 + m (DDD)D getBuryContribution a method_33832 + p 0 x + p 2 y + p 4 z + m (I)Z isInKernelRange a method_42692 + p 0 value + m (IDI)D computeBeardContribution a method_42693 + p 0 x + p 1 y + p 3 z + m (III)D computeBeardContribution a method_33642 + p 0 x + p 1 y + p 2 z + m (IIII)D getBeardContribution a method_33641 + p 0 x + p 1 y + p 2 z + p 3 height + m (Lnet/minecraft/world/level/ChunkPos;Lit/unimi/dsi/fastutil/objects/ObjectList;IILit/unimi/dsi/fastutil/objects/ObjectList;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_42694 a method_42694 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/levelgen/Beardifier; forStructuresInChunk a method_42695 + p 0 structureManager + p 1 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Z method_42696 a method_42696 + m ([F)V method_33640 a method_33640 + m (Lit/unimi/dsi/fastutil/objects/ObjectListIterator;Lit/unimi/dsi/fastutil/objects/ObjectListIterator;)V + p 1 pieceIterator + p 2 junctionIterator + m ()V +c net/minecraft/world/level/levelgen/Beardifier$1 dyl$1 net/minecraft/class_5817$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$TerrainAdjustment a field_38426 + m ()V +c net/minecraft/world/level/levelgen/Beardifier$Rigid dyl$a net/minecraft/class_5817$class_7301 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; box a comp_682 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdjustment b comp_683 + f I groundLevelDelta c comp_684 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; box a comp_682 + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdjustment b comp_683 + m ()I groundLevelDelta c comp_684 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;I)V +c net/minecraft/world/level/levelgen/BelowZeroRetrogen dym net/minecraft/class_6746 + f Lcom/mojang/serialization/Codec; CODEC a field_35480 + f Lnet/minecraft/world/level/LevelHeightAccessor; UPGRADE_HEIGHT_ACCESSOR b field_35591 + f Ljava/util/BitSet; EMPTY c field_35481 + f Lcom/mojang/serialization/Codec; BITSET_CODEC d field_35482 + f Lcom/mojang/serialization/Codec; NON_EMPTY_CHUNK_STATUS e field_35483 + f Ljava/util/Set; RETAINED_RETROGEN_BIOMES f field_36192 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus g field_35484 + f Ljava/util/BitSet; missingBedrock h field_35485 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a method_39319 + m (II)Z hasBedrockHole a method_39895 + p 1 x + p 2 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39321 a method_39321 + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/biome/BiomeResolver; getBiomeResolver a method_39767 + p 0 resolver + p 1 access + m (Lnet/minecraft/world/level/biome/BiomeResolver;Ljava/util/function/Predicate;Lnet/minecraft/world/level/chunk/ChunkAccess;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_39768 a method_39768 + m (Lnet/minecraft/world/level/chunk/ProtoChunk;)V replaceOldBedrock a method_39467 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/core/BlockPos;)V method_39896 a method_39896 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lcom/mojang/serialization/DataResult; method_39322 a method_39322 + m (Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen;)Ljava/util/Optional; method_39323 a method_39323 + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_39324 a method_39324 + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_39325 a method_39325 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; read a method_39326 + p 0 tag + m ()Z hasBedrockHoles b method_39897 + m (Lnet/minecraft/world/level/chunk/ProtoChunk;)V applyBedrockMask b method_39898 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/core/BlockPos;)V method_39471 b method_39471 + m ()Ljava/lang/String; method_49529 c method_49529 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/Optional;)V + p 1 targetStatus + p 2 missingBedrock + m ()V +c net/minecraft/world/level/levelgen/BelowZeroRetrogen$1 dym$1 net/minecraft/class_6746$1 + m ()V +c net/minecraft/world/level/levelgen/BitRandomSource dyn net/minecraft/class_6566 + f F FLOAT_MULTIPLIER b field_34582 + f D DOUBLE_MULTIPLIER c field_34583 + m (I)I next c method_43156 + p 1 size +c net/minecraft/world/level/levelgen/Column dyo net/minecraft/class_5721 + c A representation of an integer valued interval, either bounded or unbounded.\nWhile the class itself does not imply any coordinate in particular, this is practically used to represent a column in the Y direction. + m ()Lnet/minecraft/world/level/levelgen/Column; line a method_32980 + c @return A column of the unbounded interval (-infinity, infinity). + m (I)Lnet/minecraft/world/level/levelgen/Column; below a method_32981 + c @return A column of the unbounded interval (-infinity, ceiling). + p 0 ceiling + m (II)Lnet/minecraft/world/level/levelgen/Column$Range; around a method_35326 + c @return A column of the closed interval [floor, ceiling]. + p 0 floor + p 1 ceiling + m (Lnet/minecraft/world/level/LevelSimulatedReader;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos$MutableBlockPos;ILnet/minecraft/core/Direction;)Ljava/util/OptionalInt; scanDirection a method_34280 + c Scans for a sequence of states in a given {@code direction}, up to a length of {@code maxDistance} which satisfy {@code columnPredicate}, and ending with a state which satisfies {@code tipPredicate}.\n@return The y position of the tip, if found. + p 0 level + p 1 maxDistance + p 2 columnPredicate + p 3 tipPredicate + p 4 mutablePos + p 5 startY + p 6 direction + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;ILjava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/Optional; scan a method_32982 + c Scans for a column of states satisfying {@code columnPredicate}, up to a length of {@code maxDistance} from the origin, and ending with a state which satisfies {@code tipPredicate}.\n@return A column representing the tips found. The column will be bounded if a tip was reached in the given direction, unbounded otherwise. + p 0 level + p 1 pos + p 2 maxDistance + p 3 columnPredicate + p 4 tipPredicate + m (Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; withFloor a method_32983 + p 1 floor + m (Ljava/util/OptionalInt;Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; create a method_32984 + p 0 floor + p 1 ceiling + m ()Ljava/util/OptionalInt; getCeiling b method_32985 + m (I)Lnet/minecraft/world/level/levelgen/Column; fromHighest b method_35327 + c @return A column of the unbounded interval (-infinity, ceiling]. + p 0 ceiling + m (II)Lnet/minecraft/world/level/levelgen/Column$Range; inside b method_32986 + c @return A column of the open interval (floor, ceiling). + p 0 floor + p 1 ceiling + m (Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; withCeiling b method_35328 + p 1 ceiling + m ()Ljava/util/OptionalInt; getFloor c method_32987 + m (I)Lnet/minecraft/world/level/levelgen/Column; above c method_32988 + c @return A column of the unbounded interval (floor, infinity). + p 0 floor + m ()Ljava/util/OptionalInt; getHeight d method_33385 + m (I)Lnet/minecraft/world/level/levelgen/Column; fromLowest d method_35329 + c @return A column of the unbounded interval [floor, infinity). + p 0 floor + m ()V +c net/minecraft/world/level/levelgen/Column$Line dyo$a net/minecraft/class_5721$class_5722 + f Lnet/minecraft/world/level/levelgen/Column$Line; INSTANCE a field_28197 + m ()V + m ()V +c net/minecraft/world/level/levelgen/Column$Range dyo$b net/minecraft/class_5721$class_5723 + f I floor a field_28198 + f I ceiling b field_28199 + m ()I ceiling e method_32990 + m ()I floor f method_32991 + m ()I height g method_32992 + m (II)V + p 1 floor + p 2 ceiling +c net/minecraft/world/level/levelgen/Column$Ray dyo$c net/minecraft/class_5721$class_5724 + f I edge a field_28200 + f Z pointingUp b field_28201 + m (IZ)V + p 1 edge + p 2 pointingUp +c net/minecraft/world/level/levelgen/DebugLevelSource dyp net/minecraft/class_2891 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24768 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_13162 + f Lnet/minecraft/world/level/block/state/BlockState; BARRIER e field_13164 + f I HEIGHT f field_31465 + f I BARRIER_HEIGHT g field_31466 + f I BLOCK_MARGIN h field_31467 + f Ljava/util/List; ALL_BLOCKS i field_13163 + c A list of all valid block states. + f I GRID_WIDTH j field_13161 + f I GRID_HEIGHT k field_13160 + m (II)Lnet/minecraft/world/level/block/state/BlockState; getBlockStateFor a method_12578 + p 0 chunkX + p 1 chunkZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40465 a method_40465 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_12579 a method_12579 + m (Lnet/minecraft/core/Holder$Reference;)V + p 1 biome + m ()V +c net/minecraft/world/level/levelgen/Density dyq net/minecraft/class_6567 + f D SURFACE a field_34584 + f D UNRECOVERABLY_DENSE b field_34585 + f D UNRECOVERABLY_THIN c field_34586 + m ()V +c net/minecraft/world/level/levelgen/DensityFunction dyr net/minecraft/class_6910 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_37057 + f Lcom/mojang/serialization/Codec; CODEC c field_37058 + f Lcom/mojang/serialization/Codec; HOLDER_HELPER_CODEC d field_37059 + m ()D minValue a comp_377 + m (DD)Lnet/minecraft/world/level/levelgen/DensityFunction; clamp a method_40468 + p 1 minValue + p 3 maxValue + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)D compute a method_40464 + p 1 context + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunction; mapAll a method_40469 + p 1 visitor + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/core/Holder; method_41061 a method_41061 + m ([DLnet/minecraft/world/level/levelgen/DensityFunction$ContextProvider;)V fillArray a method_40470 + p 1 array + p 2 contextProvider + m ()D maxValue b comp_378 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec c method_41062 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; abs d method_40471 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; square e method_40472 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; cube f method_40473 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; halfNegative g method_40474 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; quarterNegative h method_40475 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; squeeze i method_40476 + m ()V +c net/minecraft/world/level/levelgen/DensityFunction$ContextProvider dyr$a net/minecraft/class_6910$class_6911 + m (I)Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; forIndex a method_40477 + p 1 arrayIndex + m ([DLnet/minecraft/world/level/levelgen/DensityFunction;)V fillAllDirectly a method_40478 + p 1 values + p 2 function +c net/minecraft/world/level/levelgen/DensityFunction$FunctionContext dyr$b net/minecraft/class_6910$class_6912 + m ()I blockX a comp_371 + m ()I blockY b comp_372 + m ()I blockZ c comp_373 + m ()Lnet/minecraft/world/level/levelgen/blending/Blender; getBlender d method_39327 +c net/minecraft/world/level/levelgen/DensityFunction$NoiseHolder dyr$c net/minecraft/class_6910$class_7270 + f Lcom/mojang/serialization/Codec; CODEC a field_38248 + f Lnet/minecraft/core/Holder; noiseData b comp_662 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise c comp_663 + m ()D maxValue a method_42355 + m (DDD)D getValue a method_42356 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; method_42357 a method_42357 + m ()Lnet/minecraft/core/Holder; noiseData b comp_662 + m ()Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise c comp_663 + m (Lnet/minecraft/core/Holder;)V + p 1 noiseData + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/synth/NormalNoise;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunction$SimpleFunction dyr$d net/minecraft/class_6910$class_6913 +c net/minecraft/world/level/levelgen/DensityFunction$SinglePointContext dyr$e net/minecraft/class_6910$class_6914 + f I blockX a comp_371 + f I blockY b comp_372 + f I blockZ c comp_373 + m (III)V +c net/minecraft/world/level/levelgen/DensityFunction$Visitor dyr$f net/minecraft/class_6910$class_6915 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; visitNoise a method_42358 + p 1 noiseHolder +c net/minecraft/world/level/levelgen/DensityFunctions dys net/minecraft/class_6916 + f D MAX_REASONABLE_NOISE_VALUE a field_37060 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_37061 + f Lcom/mojang/serialization/Codec; CODEC c field_37062 + f Lcom/mojang/serialization/Codec; NOISE_VALUE_CODEC d field_37063 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; zero a method_40479 + m (D)Lnet/minecraft/world/level/levelgen/DensityFunction; constant a method_40480 + p 0 value + m (IIDD)Lnet/minecraft/world/level/levelgen/DensityFunction; yClampedGradient a method_40481 + p 0 fromY + p 1 toY + p 2 fromValue + p 4 toValue + m (J)Lnet/minecraft/world/level/levelgen/DensityFunction; endIslands a method_40482 + p 0 seed + m (Lnet/minecraft/util/CubicSpline;)Lnet/minecraft/world/level/levelgen/DensityFunction; spline a method_41528 + p 0 spline + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/DensityFunction; method_41063 a method_41063 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; singleArgumentCodec a method_41064 + p 0 codec + p 1 fromFunction + p 2 toFunction + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/KeyDispatchDataCodec; makeCodec a method_41065 + p 0 mapCodec + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; interpolated a method_40483 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; mapFromUnitTo a method_40484 + p 0 densityFunction + p 1 fromY + p 3 toY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; rangeChoice a method_40485 + p 0 input + p 1 minInclusive + p 3 maxExclusive + p 5 whenInRange + p 6 whenOutOfRange + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DLnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; lerp a method_42359 + p 0 deltaFunction + p 1 min + p 3 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; add a method_40486 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DLnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftedNoise2d a method_40487 + p 0 shiftX + p 1 shiftZ + p 2 xzScale + p 4 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; lerp a method_40488 + p 0 deltaFunction + p 1 minFunction + p 2 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;)Lnet/minecraft/world/level/levelgen/DensityFunction; map a method_40490 + p 0 input + p 1 type + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper;)Lnet/minecraft/world/level/levelgen/DensityFunction; weirdScaledSampler a method_40491 + p 0 input + p 1 noiseData + p 2 rarityValueMapper + m (Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; doubleFunctionArgumentCodec a method_41068 + p 0 fromFunction + p 1 primary + p 2 secondary + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; singleFunctionArgumentCodec a method_41069 + p 0 fromFunction + p 1 toFunction + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41070 a method_41070 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; noise a method_40493 + p 0 noiseData + m (Lnet/minecraft/core/Holder;D)Lnet/minecraft/world/level/levelgen/DensityFunction; noise a method_40494 + p 0 noiseData + p 1 yScale + m (Lnet/minecraft/core/Holder;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40495 + p 0 noiseData + p 1 fromY + p 3 toY + m (Lnet/minecraft/core/Holder;DDD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40497 + p 0 noiseData + p 1 yScale + p 3 fromY + p 5 toY + m (Lnet/minecraft/core/Holder;DDDD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40496 + p 0 noiseData + p 1 xzScale + p 3 yScale + p 5 fromY + p 7 toY + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_41066 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Lnet/minecraft/util/KeyDispatchDataCodec;)Lcom/mojang/serialization/MapCodec; register a method_41067 + p 0 registry + p 1 name + p 2 codec + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; blendAlpha b method_40498 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; flatCache b method_40499 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; mul b method_40500 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftA b method_40501 + p 0 noiseData + m (Lnet/minecraft/core/Holder;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; noise b method_40502 + p 0 noiseData + p 1 xzScale + p 3 yScale + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; blendOffset c method_40503 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cache2d c method_40504 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; min c method_40505 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftB c method_40506 + p 0 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cacheOnce d method_40507 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; max d method_40508 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shift d method_40509 + p 0 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cacheAllInCell e method_40510 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; blendDensity f method_40512 + p 0 input + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lcom/mojang/datafixers/util/Either; method_41071 g method_41071 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lcom/mojang/serialization/MapCodec; method_42360 h method_42360 + m ()V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Ap2 dys$a net/minecraft/class_6916$class_6917 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; type e comp_374 + f Lnet/minecraft/world/level/levelgen/DensityFunction; argument1 f comp_375 + f Lnet/minecraft/world/level/levelgen/DensityFunction; argument2 g comp_376 + f D minValue h comp_377 + f D maxValue i comp_378 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V +c net/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker dys$b net/minecraft/class_6916$class_7049 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; INSTANCE a field_37076 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; $VALUES f field_37077 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; $values j method_41077 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker dys$c net/minecraft/class_6916$class_7050 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37078 + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha dys$d net/minecraft/class_6916$class_6919 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; INSTANCE a field_36549 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37079 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; $VALUES f field_36550 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; $values j method_40517 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendDensity dys$e net/minecraft/class_6916$class_6920 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input a comp_379 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37080 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendOffset dys$f net/minecraft/class_6916$class_6921 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; INSTANCE a field_36551 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37081 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; $VALUES f field_36552 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; $values j method_40519 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Clamp dys$g net/minecraft/class_6916$class_6922 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37082 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_380 + f D minValue f comp_377 + f D maxValue g comp_378 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC h field_37083 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41078 a method_41078 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Constant dys$h net/minecraft/class_6916$class_6923 + f D value a comp_381 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37084 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Constant; ZERO f field_36553 + m ()D value j comp_381 + m (D)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$EndIslandDensityFunction dys$i net/minecraft/class_6916$class_6924 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37085 + f F ISLAND_THRESHOLD e field_37677 + f Lnet/minecraft/world/level/levelgen/synth/SimplexNoise; islandNoise f field_36554 + m (Lnet/minecraft/world/level/levelgen/synth/SimplexNoise;II)F getHeightValue a method_41529 + p 0 noise + p 1 x + p 2 z + m (J)V + p 1 seed + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$HolderHolder dys$j net/minecraft/class_6916$class_7051 + f Lnet/minecraft/core/Holder; function a comp_468 + m ()Lnet/minecraft/core/Holder; function j comp_468 + m (Lnet/minecraft/core/Holder;)V +c net/minecraft/world/level/levelgen/DensityFunctions$Mapped dys$k net/minecraft/class_6916$class_6925 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; type a comp_382 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_380 + f D minValue f comp_377 + f D maxValue g comp_378 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;D)D transform a method_40521 + p 0 type + p 1 value + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; create a method_41079 + p 0 type + p 1 input + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; mapAll b method_41080 + p 1 visitor + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; type k comp_382 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V +c net/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type dys$k$a net/minecraft/class_6916$class_6925$class_6926 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; ABS a field_36555 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; SQUARE b field_36556 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; CUBE c field_36557 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; HALF_NEGATIVE d field_36558 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; QUARTER_NEGATIVE e field_36559 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; SQUEEZE f field_36560 + f Ljava/lang/String; name g field_37086 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec h field_37087 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; $VALUES i field_36561 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; $values a method_40522 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; method_41081 a method_41081 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Marker dys$l net/minecraft/class_6916$class_6927 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; type a comp_383 + f Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped e comp_469 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;)V +c net/minecraft/world/level/levelgen/DensityFunctions$Marker$Type dys$l$a net/minecraft/class_6916$class_6927$class_6928 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; Interpolated a field_36562 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; FlatCache b field_36563 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; Cache2D c field_36564 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; CacheOnce d field_36565 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; CacheAllInCell e field_36566 + f Ljava/lang/String; name f field_37088 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec g field_37089 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; $VALUES h field_36567 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; $values a method_40523 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$MarkerOrMarked; method_41082 a method_41082 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$MarkerOrMarked dys$m net/minecraft/class_6916$class_7052 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; type j comp_383 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped k comp_469 +c net/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd dys$n net/minecraft/class_6916$class_6929 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; specificType e comp_385 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input f comp_380 + f D minValue g comp_377 + f D maxValue h comp_378 + f D argument i comp_386 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; specificType m comp_385 + m ()D argument n comp_386 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;DDD)V +c net/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type dys$n$a net/minecraft/class_6916$class_6929$class_6930 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; MUL a field_36568 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; ADD b field_36569 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; $VALUES c field_36570 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; $values a method_40524 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Noise dys$o net/minecraft/class_6916$class_6931 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC a field_37090 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37091 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise f comp_387 + f D xzScale g comp_388 + f D yScale h comp_389 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41083 a method_41083 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise j comp_387 + m ()D xzScale k comp_388 + m ()D yScale l comp_389 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;DD)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$PureTransformer dys$p net/minecraft/class_6916$class_6932 + m (D)D transform a method_40520 + p 1 value + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input aG_ comp_380 +c net/minecraft/world/level/levelgen/DensityFunctions$RangeChoice dys$q net/minecraft/class_6916$class_6933 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC a field_37092 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37093 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input f comp_390 + f D minInclusive g comp_391 + f D maxExclusive h comp_392 + f Lnet/minecraft/world/level/levelgen/DensityFunction; whenInRange i comp_393 + f Lnet/minecraft/world/level/levelgen/DensityFunction; whenOutOfRange j comp_394 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41085 a method_41085 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input j comp_390 + m ()D minInclusive k comp_391 + m ()D maxExclusive l comp_392 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; whenInRange m comp_393 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; whenOutOfRange n comp_394 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Shift dys$r net/minecraft/class_6916$class_6934 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37094 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftA dys$s net/minecraft/class_6916$class_6937 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37095 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftB dys$t net/minecraft/class_6916$class_6938 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37096 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftNoise dys$u net/minecraft/class_6916$class_6939 + m (DDD)D compute a method_40525 + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise j comp_395 +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftedNoise dys$v net/minecraft/class_6916$class_6940 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37097 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftX e comp_396 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftY f comp_397 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftZ g comp_398 + f D xzScale h comp_399 + f D yScale i comp_400 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise j comp_664 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC k field_37098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41090 a method_41090 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftX j comp_396 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftY k comp_397 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftZ l comp_398 + m ()D xzScale m comp_399 + m ()D yScale n comp_400 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise o comp_664 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline dys$w net/minecraft/class_6916$class_7076 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37255 + f Lnet/minecraft/util/CubicSpline; spline e comp_526 + f Lcom/mojang/serialization/Codec; SPLINE_CODEC f field_37678 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC g field_37256 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate; method_41197 a method_41197 + m ()Lnet/minecraft/util/CubicSpline; spline j comp_526 + m (Lnet/minecraft/util/CubicSpline;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate dys$w$a net/minecraft/class_6916$class_7076$class_7135 + f Lcom/mojang/serialization/Codec; CODEC b field_37679 + f Lnet/minecraft/core/Holder; function c comp_536 + m ()Lnet/minecraft/core/Holder; function a comp_536 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate; mapAll a method_41530 + p 1 visitor + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Point;)F apply a method_41531 + p 1 object + m (Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline$Point dys$w$b net/minecraft/class_6916$class_7076$class_7136 + f Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; context a comp_537 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; context a comp_537 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)V +c net/minecraft/world/level/levelgen/DensityFunctions$TransformerWithContext dys$x net/minecraft/class_6916$class_6943 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)D transform a method_40518 + p 1 context + p 2 value + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input j comp_379 +c net/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction dys$y net/minecraft/class_6916$class_7055 + f Lorg/slf4j/Logger; LOGGER a field_37110 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction; create a method_41097 + p 0 type + p 1 argument1 + p 2 argument2 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; type j comp_374 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; argument1 k comp_375 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; argument2 l comp_376 + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type dys$y$a net/minecraft/class_6916$class_7055$class_6918 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; ADD a field_36544 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MUL b field_36545 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MIN c field_36546 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MAX d field_36547 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec e field_37111 + f Ljava/lang/String; name f field_37112 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; $VALUES g field_36548 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; $values a method_40516 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction; method_41098 a method_41098 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler dys$z net/minecraft/class_6916$class_6944 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37064 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_379 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise f comp_665 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; rarityValueMapper g comp_408 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC h field_37065 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41072 a method_41072 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise k comp_665 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; rarityValueMapper l comp_408 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper dys$z$a net/minecraft/class_6916$class_6944$class_7048 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; TYPE1 a field_37066 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; TYPE2 b field_37067 + f Lcom/mojang/serialization/Codec; CODEC c field_37068 + f Ljava/lang/String; name d field_37070 + f Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction; mapper e field_37071 + f D maxRarity f field_37072 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; $VALUES g field_37073 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; $values a method_41074 + m (Ljava/lang/String;ILjava/lang/String;Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction;D)V + p 3 name + p 4 mapper + p 5 maxRarity + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$YClampedGradient dys$aa net/minecraft/class_6916$class_6945 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37074 + f I fromY e comp_410 + f I toY f comp_411 + f D fromValue g comp_412 + f D toValue h comp_413 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC i field_37075 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41076 a method_41076 + m ()I fromY j comp_410 + m ()I toY k comp_411 + m ()D fromValue l comp_412 + m ()D toValue m comp_413 + m (IIDD)V + m ()V +c net/minecraft/world/level/levelgen/FlatLevelSource dyt net/minecraft/class_2897 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24769 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings d field_24510 + m (I)[Lnet/minecraft/world/level/block/state/BlockState; method_28001 a method_28001 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40158 a method_40158 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_28002 a method_28002 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_46718 a method_46718 + m (Lnet/minecraft/core/HolderLookup;)Ljava/util/stream/Stream; method_46719 a method_46719 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings h method_28545 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/GenerationStep dyu net/minecraft/class_2893 + c Represents individual steps that the features and carvers chunk status go through, respectively. + m ()V +c net/minecraft/world/level/levelgen/GenerationStep$Carving dyu$a net/minecraft/class_2893$class_2894 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; AIR a field_13169 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; LIQUID b field_13166 + f Lcom/mojang/serialization/Codec; CODEC c field_24770 + f Ljava/lang/String; name d field_13167 + f [Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; $VALUES e field_13170 + m ()Ljava/lang/String; getName a method_12581 + m ()[Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; $values b method_36750 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/GenerationStep$Decoration dyu$b net/minecraft/class_2893$class_2895 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; RAW_GENERATION a field_13174 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; LAKES b field_25186 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; LOCAL_MODIFICATIONS c field_13171 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_STRUCTURES d field_13172 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; SURFACE_STRUCTURES e field_13173 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; STRONGHOLDS f field_25187 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_ORES g field_13176 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_DECORATION h field_13177 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; FLUID_SPRINGS i field_35182 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; VEGETAL_DECORATION j field_13178 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; TOP_LAYER_MODIFICATION k field_13179 + f Lcom/mojang/serialization/Codec; CODEC l field_37680 + f Ljava/lang/String; name m field_37682 + f [Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; $VALUES n field_13181 + m ()Ljava/lang/String; getName a method_41532 + m ()[Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; $values b method_36751 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/GeodeBlockSettings dyv net/minecraft/class_5585 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fillingProvider a field_27295 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; innerLayerProvider b field_27296 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; alternateInnerLayerProvider c field_27297 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; middleLayerProvider d field_27298 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; outerLayerProvider e field_27299 + f Ljava/util/List; innerPlacements f field_27300 + f Lnet/minecraft/tags/TagKey; cannotReplace g field_33769 + f Lnet/minecraft/tags/TagKey; invalidBlocks h field_33931 + f Lcom/mojang/serialization/Codec; CODEC i field_27301 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31887 a method_31887 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/tags/TagKey; method_37255 a method_37255 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/tags/TagKey; method_36995 b method_36995 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Ljava/util/List; method_31886 c method_31886 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31888 d method_31888 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31889 e method_31889 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31890 f method_31890 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31891 g method_31891 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31892 h method_31892 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/List;Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V + p 1 fillingProvider + p 2 innerLayerProvider + p 3 alternateInnerLayerProvider + p 4 middleLayerProvider + p 5 outerLayerProvider + p 6 innerPlacements + p 7 cannotReplace + p 8 invalidBlocks + m ()V +c net/minecraft/world/level/levelgen/GeodeCrackSettings dyw net/minecraft/class_5586 + f Lcom/mojang/serialization/Codec; CODEC a field_27302 + f D generateCrackChance b field_27303 + f D baseCrackSize c field_27304 + f I crackPointOffset d field_27305 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31894 a method_31894 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Integer; method_31893 a method_31893 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Double; method_31895 b method_31895 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Double; method_31896 c method_31896 + m (DDI)V + p 1 generateCrackChance + p 3 baseCrackSize + p 5 crackPointOffset + m ()V +c net/minecraft/world/level/levelgen/GeodeLayerSettings dyx net/minecraft/class_5587 + f Lcom/mojang/serialization/Codec; CODEC a field_27306 + f D filling b field_27307 + f D innerLayer c field_27308 + f D middleLayer d field_27309 + f D outerLayer e field_27310 + f Lcom/mojang/serialization/Codec; LAYER_RANGE f field_27311 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31898 a method_31898 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31897 a method_31897 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31899 b method_31899 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31900 c method_31900 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31901 d method_31901 + m (DDDD)V + p 1 filling + p 3 innerLayer + p 5 middleLayer + p 7 outerLayer + m ()V +c net/minecraft/world/level/levelgen/Heightmap dyy net/minecraft/class_2902 + f Lorg/slf4j/Logger; LOGGER a field_33770 + f Ljava/util/function/Predicate; NOT_AIR b field_16744 + f Ljava/util/function/Predicate; MATERIAL_MOTION_BLOCKING c field_16745 + f Lnet/minecraft/util/BitStorage; data d field_13192 + f Ljava/util/function/Predicate; isOpaque e field_13193 + f Lnet/minecraft/world/level/chunk/ChunkAccess; chunk f field_13191 + m ()[J getRawData a method_12598 + m (I)I getFirstAvailable a method_12601 + p 1 index + m (II)I getFirstAvailable a method_12603 + p 1 x + p 2 z + m (III)V setHeight a method_12602 + p 1 x + p 2 z + p 3 value + m (IIILnet/minecraft/world/level/block/state/BlockState;)Z update a method_12597 + p 1 x + p 2 y + p 3 z + p 4 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16682 a method_16682 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/Heightmap$Types;[J)V setRawData a method_12600 + p 1 chunk + p 2 type + p 3 data + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/Set;)V primeHeightmaps a method_16684 + p 0 chunk + p 1 types + m (II)I getHighestTaken b method_35334 + p 1 x + p 2 z + m (II)I getIndex c method_12595 + p 0 x + p 1 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 chunk + p 2 type + m ()V +c net/minecraft/world/level/levelgen/Heightmap$Types dyy$a net/minecraft/class_2902$class_2903 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; WORLD_SURFACE_WG a field_13194 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; WORLD_SURFACE b field_13202 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; OCEAN_FLOOR_WG c field_13195 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; OCEAN_FLOOR d field_13200 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; MOTION_BLOCKING e field_13197 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; MOTION_BLOCKING_NO_LEAVES f field_13203 + f Lcom/mojang/serialization/Codec; CODEC g field_24772 + f Ljava/lang/String; serializationKey h field_13204 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; usage i field_13198 + f Ljava/util/function/Predicate; isOpaque j field_16568 + f [Lnet/minecraft/world/level/levelgen/Heightmap$Types; $VALUES k field_13199 + m ()Ljava/lang/String; getSerializationKey a method_12605 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16686 a method_16686 + m ()Z sendToClient b method_16137 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16685 b method_16685 + m ()Z keepAfterWorldgen d method_20454 + m ()Ljava/util/function/Predicate; isOpaque e method_16402 + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Types; $values f method_36752 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/levelgen/Heightmap$Usage;Ljava/util/function/Predicate;)V + p 3 serializationKey + p 4 usage + p 5 isOpaque + m ()V +c net/minecraft/world/level/levelgen/Heightmap$Usage dyy$b net/minecraft/class_2902$class_2904 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; WORLDGEN a field_13207 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; LIVE_WORLD b field_13206 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; CLIENT c field_16424 + f [Lnet/minecraft/world/level/levelgen/Heightmap$Usage; $VALUES d field_13208 + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Usage; $values a method_36753 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/LegacyRandomSource dyz net/minecraft/class_5820 + f I MODULUS_BITS d field_31471 + f J MODULUS_MASK e field_31472 + f J MULTIPLIER f field_31473 + f J INCREMENT g field_31474 + f Ljava/util/concurrent/atomic/AtomicLong; seed h field_28766 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_35124 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/LegacyRandomSource$LegacyPositionalRandomFactory dyz$a net/minecraft/class_5820$class_6671 + f J seed a field_35125 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/MarsagliaPolarGaussian dza net/minecraft/class_6672 + f Lnet/minecraft/util/RandomSource; randomSource a field_35126 + f D nextNextGaussian b field_35127 + f Z haveNextNextGaussian c field_35128 + m ()V reset a method_39541 + m ()D nextGaussian b method_38996 + m (Lnet/minecraft/util/RandomSource;)V + p 1 randomSource +c net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator dzb net/minecraft/class_3754 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24773 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_16648 + f Lnet/minecraft/core/Holder; settings e field_24774 + f Ljava/util/function/Supplier; globalFluidPicker f field_34591 + m (Lnet/minecraft/resources/ResourceKey;)Z stable a method_28548 + p 1 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28550 a method_28550 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_38330 a method_38330 + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;IILorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/function/Predicate;)Ljava/util/OptionalInt; iterateNoiseColumn a method_26263 + p 1 level + p 2 random + p 3 x + p 4 z + p 5 column + p 6 stoppingState + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41535 a method_41535 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41536 a method_41536 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;ILnet/minecraft/world/level/levelgen/NoiseSettings;ILnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;I)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38332 a method_38332 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/levelgen/NoiseChunk; createNoiseChunk a method_41537 + p 1 chunk + p 2 structureManager + p 3 blender + p 4 random + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/Blender;)V buildSurface a method_41538 + p 1 chunk + p 2 context + p 3 random + p 4 structureManager + p 5 biomeManager + p 6 biomes + p 7 blender + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;ILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;III)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; method_45509 a method_45509 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;)Lnet/minecraft/core/Holder; method_28549 a method_28549 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;IIILnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; debugPreliminarySurfaceLevel a method_38323 + p 1 chunk + p 2 x + p 3 y + p 4 z + p 5 state + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;)Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; createFluidPicker a method_45510 + p 0 settings + m (Lnet/minecraft/world/level/levelgen/RandomState;III)Lnet/minecraft/core/Holder; method_38322 a method_38322 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;II)Lnet/minecraft/world/level/chunk/ChunkAccess; doFill a method_33754 + p 1 blender + p 2 structureManager + p 3 random + p 4 chunk + p 5 minCellY + p 6 cellCountY + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41539 b method_41539 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;)Lnet/minecraft/world/level/biome/BiomeSource; method_28554 b method_28554 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)V doCreateBiomes b method_38327 + p 1 blender + p 2 random + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; method_45511 b method_45511 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41540 c method_41540 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38333 c method_38333 + m ()Lnet/minecraft/core/Holder; generatorSettings h method_41541 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)V + p 1 biomeSource + p 2 settings + m ()V +c net/minecraft/world/level/levelgen/NoiseChunk dzc net/minecraft/class_6568 + f I cellStartBlockX A field_36594 + f I cellStartBlockY B field_36572 + f I cellStartBlockZ C field_36573 + f I inCellX D field_36574 + f I inCellY E field_36575 + f I inCellZ F field_36576 + f J interpolationCounter G field_36577 + f J arrayInterpolationCounter H field_36578 + f I arrayIndex I field_36579 + f Lnet/minecraft/world/level/levelgen/DensityFunction$ContextProvider; sliceFillingContextProvider J field_36580 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings a field_35674 + f I cellCountXZ b field_34599 + f I cellCountY c field_34598 + f I cellNoiseMinY d field_34600 + f I firstCellX e field_34601 + f I firstCellZ f field_34602 + f I firstNoiseX g field_34603 + f I firstNoiseZ h field_34604 + f Ljava/util/List; interpolators i field_34605 + f Ljava/util/List; cellCaches j field_36581 + f Ljava/util/Map; wrapped k field_36582 + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; preliminarySurfaceLevel l field_36273 + f Lnet/minecraft/world/level/levelgen/Aquifer; aquifer m field_34613 + f Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityNoJaggedness n field_36583 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller; blockStateRule o field_36584 + f Lnet/minecraft/world/level/levelgen/blending/Blender; blender p field_35487 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$FlatCache; blendAlpha q field_36585 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$FlatCache; blendOffset r field_36586 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker; beardifier s field_37113 + f J lastBlendingDataPos t field_36587 + f Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; lastBlendingOutput u field_36588 + f I noiseSizeXZ v field_36589 + f I cellWidth w field_36590 + f I cellHeight x field_36591 + f Z interpolating y field_36592 + f Z fillingCell z field_36593 + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38338 a method_38338 + m (ID)V updateForY a method_38337 + p 1 cellEndBlockY + p 2 y + m (II)I preliminarySurfaceLevel a method_39900 + p 1 x + p 2 z + m (IILnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38342 a method_38342 + m (J)I computePreliminarySurfaceLevel a method_39899 + p 1 packedChunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker;Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;Lnet/minecraft/world/level/levelgen/blending/Blender;)Lnet/minecraft/world/level/levelgen/NoiseChunk; forChunk a method_39543 + p 0 chunk + p 1 state + p 2 beardifierOrMarker + p 3 noiseGeneratorSettings + p 4 fluidPicke + p 5 blender + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrap a method_40529 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Lnet/minecraft/world/level/block/state/BlockState; method_40530 a method_40530 + m (Lnet/minecraft/world/level/levelgen/NoiseRouter;Ljava/util/List;)Lnet/minecraft/world/level/biome/Climate$Sampler; cachedClimateSampler a method_40531 + p 1 noiseRouter + p 2 points + m (ZI)V fillSlice a method_40532 + p 1 isSlice0 + p 2 start + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38350 b method_38350 + m (I)V advanceCellX b method_38339 + p 1 increment + m (ID)V updateForX b method_38349 + p 1 cellEndBlockX + p 2 x + m (II)V selectCellYZ b method_38362 + p 1 y + p 2 z + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew b method_40533 + p 1 densityFunction + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38356 c method_38356 + m (I)Lnet/minecraft/world/level/levelgen/NoiseChunk; forIndex c method_40534 + p 1 arrayIndex + m (ID)V updateForZ c method_38355 + p 1 cellEndBlockZ + p 2 z + m (II)Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; getOrComputeBlendingOutput c method_40535 + p 1 chunkX + p 2 chunkZ + m ()Lnet/minecraft/world/level/block/state/BlockState; getInterpolatedState e method_40536 + m ()V initializeForFirstCellX f method_38336 + m ()V stopInterpolation g method_40537 + m ()V swapSlices h method_38348 + m ()Lnet/minecraft/world/level/levelgen/Aquifer; aquifer i method_38354 + m ()I cellWidth j method_42361 + m ()I cellHeight k method_42362 + m (ILnet/minecraft/world/level/levelgen/RandomState;IILnet/minecraft/world/level/levelgen/NoiseSettings;Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker;Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;Lnet/minecraft/world/level/levelgen/blending/Blender;)V + p 1 cellCountXZ + p 2 random + p 3 firstNoiseX + p 4 firstNoiseZ + p 5 noiseSettings + p 6 beardifier + p 7 noiseGeneratorSettings + p 8 fluidPicker + p 9 blendifier +c net/minecraft/world/level/levelgen/NoiseChunk$1 dzc$1 net/minecraft/class_6568$1 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36595 a field_36595 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$2 dzc$2 net/minecraft/class_6568$2 + f [I $SwitchMap$net$minecraft$world$level$levelgen$DensityFunctions$Marker$Type a field_36596 + m ()V +c net/minecraft/world/level/levelgen/NoiseChunk$BlendAlpha dzc$a net/minecraft/class_6568$class_6946 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36597 a field_36597 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$BlendOffset dzc$b net/minecraft/class_6568$class_6947 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36598 a field_36598 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller dzc$c net/minecraft/class_6568$class_6569 +c net/minecraft/world/level/levelgen/NoiseChunk$Cache2D dzc$d net/minecraft/class_6568$class_6948 + f Lnet/minecraft/world/level/levelgen/DensityFunction; function a field_36599 + f J lastPos2D e field_36600 + f D lastValue f field_36601 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 1 function +c net/minecraft/world/level/levelgen/NoiseChunk$CacheAllInCell dzc$e net/minecraft/class_6568$class_6949 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36602 a field_36602 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller e field_36603 + f [D values f field_36604 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 noiseFilter +c net/minecraft/world/level/levelgen/NoiseChunk$CacheOnce dzc$f net/minecraft/class_6568$class_6950 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36605 a field_36605 + f Lnet/minecraft/world/level/levelgen/DensityFunction; function e field_36606 + f J lastCounter f field_36607 + f J lastArrayCounter g field_36608 + f D lastValue h field_36609 + f [D lastArray i field_36610 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 function +c net/minecraft/world/level/levelgen/NoiseChunk$FlatCache dzc$g net/minecraft/class_6568$class_6951 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36611 a field_36611 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller e field_36612 + f [[D values f field_36613 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;Z)V + p 2 noiseFiller + p 3 computeValues +c net/minecraft/world/level/levelgen/NoiseChunk$NoiseChunkDensityFunction dzc$h net/minecraft/class_6568$class_6952 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped k comp_469 +c net/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator dzc$i net/minecraft/class_6568$class_5917 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_34622 a field_34622 + f [[D slice0 e field_29227 + f [[D slice1 f field_29228 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller g field_34623 + f D noise000 h field_29233 + f D noise001 i field_29234 + f D noise100 j field_29235 + f D noise101 k field_29236 + f D noise010 l field_29237 + f D noise011 m field_29238 + f D noise110 n field_29239 + f D noise111 o field_29240 + f D valueXZ00 p field_29241 + f D valueXZ10 q field_29242 + f D valueXZ01 r field_29243 + f D valueXZ11 s field_29244 + f D valueZ0 t field_29245 + f D valueZ1 u field_29246 + f D value v field_34624 + m (D)V updateForY a method_34287 + p 1 y + m (II)[[D allocateSlice a method_34293 + p 1 cellCountY + p 2 cellCountXZ + m (D)V updateForX b method_34292 + p 1 x + m (II)V selectCellYZ b method_34289 + p 1 y + p 2 z + m (D)V updateForZ c method_38363 + p 1 z + m ()V swapSlices l method_34291 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 noiseFilter +c net/minecraft/world/level/levelgen/NoiseGeneratorSettings dzd net/minecraft/class_5284 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_24780 + f Lcom/mojang/serialization/Codec; CODEC b field_24781 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD c field_26355 + f Lnet/minecraft/resources/ResourceKey; LARGE_BIOMES d field_35051 + f Lnet/minecraft/resources/ResourceKey; AMPLIFIED e field_26356 + f Lnet/minecraft/resources/ResourceKey; NETHER f field_26357 + f Lnet/minecraft/resources/ResourceKey; END g field_26358 + f Lnet/minecraft/resources/ResourceKey; CAVES h field_26359 + f Lnet/minecraft/resources/ResourceKey; FLOATING_ISLANDS i field_26360 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings j comp_474 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlock k comp_475 + f Lnet/minecraft/world/level/block/state/BlockState; defaultFluid l comp_476 + f Lnet/minecraft/world/level/levelgen/NoiseRouter; noiseRouter m comp_477 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule n comp_478 + f Ljava/util/List; spawnTarget o comp_538 + f I seaLevel p comp_479 + f Z disableMobGeneration q comp_480 + f Z aquifersEnabled r comp_481 + f Z oreVeinsEnabled s comp_482 + f Z useLegacyRandomSource t comp_483 + m ()Z disableMobGeneration a comp_480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28558 a method_28558 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_31111 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;ZZ)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; overworld a method_30643 + p 0 context + p 1 large + p 2 amplified + m ()Z isAquifersEnabled b method_33757 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; end b method_30642 + p 0 context + m ()Z oreVeinsEnabled c comp_482 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; nether c method_30641 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; getRandomSource d method_38999 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; caves d method_39901 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; dummy e method_44323 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; floatingIslands e method_39902 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings f comp_474 + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultBlock g comp_475 + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultFluid h comp_476 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; noiseRouter i comp_477 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule j comp_478 + m ()Ljava/util/List; spawnTarget k comp_538 + m ()I seaLevel l comp_479 + m ()Z aquifersEnabled m comp_481 + m ()Z useLegacyRandomSource n comp_483 + m (Lnet/minecraft/world/level/levelgen/NoiseSettings;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;Ljava/util/List;IZZZZ)V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouter dze net/minecraft/class_6953 + f Lcom/mojang/serialization/Codec; CODEC a field_37683 + f Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise b comp_414 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise c comp_415 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise d comp_416 + f Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise e comp_417 + f Lnet/minecraft/world/level/levelgen/DensityFunction; temperature f comp_420 + f Lnet/minecraft/world/level/levelgen/DensityFunction; vegetation g comp_539 + f Lnet/minecraft/world/level/levelgen/DensityFunction; continents h comp_484 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion i comp_423 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth j comp_424 + f Lnet/minecraft/world/level/levelgen/DensityFunction; ridges k comp_485 + f Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityWithoutJaggedness l comp_486 + f Lnet/minecraft/world/level/levelgen/DensityFunction; finalDensity m comp_487 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinToggle n comp_428 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinRidged o comp_429 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinGap p comp_430 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise a comp_414 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41543 a method_41543 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/NoiseRouter; mapAll a method_41544 + p 1 visitor + m (Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; field a method_41545 + p 0 name + p 1 getter + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise b comp_415 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise c comp_416 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise d comp_417 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; temperature e comp_420 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; vegetation f comp_539 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; continents g comp_484 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; erosion h comp_423 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; depth i comp_424 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; ridges j comp_485 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityWithoutJaggedness k comp_486 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; finalDensity l comp_487 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinToggle m comp_428 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinRidged n comp_429 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinGap o comp_430 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouterData dzf net/minecraft/class_6954 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_END A field_38249 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE B field_37127 + f Lnet/minecraft/resources/ResourceKey; OFFSET_LARGE C field_37696 + f Lnet/minecraft/resources/ResourceKey; FACTOR_LARGE D field_37130 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS_LARGE E field_37684 + f Lnet/minecraft/resources/ResourceKey; DEPTH_LARGE F field_37131 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_LARGE G field_37132 + f Lnet/minecraft/resources/ResourceKey; OFFSET_AMPLIFIED H field_37685 + f Lnet/minecraft/resources/ResourceKey; FACTOR_AMPLIFIED I field_37686 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS_AMPLIFIED J field_37687 + f Lnet/minecraft/resources/ResourceKey; DEPTH_AMPLIFIED K field_37688 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_AMPLIFIED L field_37689 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_END M field_37133 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS_FUNCTION N field_37134 + f Lnet/minecraft/resources/ResourceKey; ENTRANCES O field_37135 + f Lnet/minecraft/resources/ResourceKey; NOODLE P field_37136 + f Lnet/minecraft/resources/ResourceKey; PILLARS Q field_37114 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_THICKNESS_MODULATOR R field_37115 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D S field_37116 + f F GLOBAL_OFFSET a field_37690 + f I ISLAND_CHUNK_DISTANCE b field_37691 + f J ISLAND_CHUNK_DISTANCE_SQR c field_37692 + f Lnet/minecraft/resources/ResourceKey; CONTINENTS d field_37122 + f Lnet/minecraft/resources/ResourceKey; EROSION e field_37123 + f Lnet/minecraft/resources/ResourceKey; RIDGES f field_37124 + f Lnet/minecraft/resources/ResourceKey; RIDGES_FOLDED g field_37693 + f Lnet/minecraft/resources/ResourceKey; OFFSET h field_37694 + f Lnet/minecraft/resources/ResourceKey; FACTOR i field_37125 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS j field_37695 + f Lnet/minecraft/resources/ResourceKey; DEPTH k field_37126 + f Lnet/minecraft/resources/ResourceKey; CONTINENTS_LARGE l field_37128 + f Lnet/minecraft/resources/ResourceKey; EROSION_LARGE m field_37129 + f F ORE_THICKNESS n field_36614 + f D VEININESS_FREQUENCY o field_36615 + f D NOODLE_SPACING_AND_STRAIGHTNESS p field_36616 + f D SURFACE_DENSITY_THRESHOLD q field_36617 + f D CHEESE_NOISE_TARGET r field_38250 + f Lnet/minecraft/world/level/levelgen/DensityFunction; BLENDING_FACTOR s field_36618 + f Lnet/minecraft/world/level/levelgen/DensityFunction; BLENDING_JAGGEDNESS t field_36619 + f Lnet/minecraft/resources/ResourceKey; ZERO u field_37117 + f Lnet/minecraft/resources/ResourceKey; Y v field_37118 + f Lnet/minecraft/resources/ResourceKey; SHIFT_X w field_37119 + f Lnet/minecraft/resources/ResourceKey; SHIFT_Z x field_37120 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_OVERWORLD y field_38251 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_NETHER z field_38252 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; none a method_44324 + m (F)F peaksAndValleys a method_41546 + p 0 weirdness + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; peaksAndValleys a method_41547 + p 0 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;II)Lnet/minecraft/world/level/levelgen/DensityFunction; slideEndLike a method_42364 + p 0 densityFunction + p 1 minY + p 2 maxY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;IIIIDIID)Lnet/minecraft/world/level/levelgen/DensityFunction; slide a method_42365 + p 0 input + p 1 minY + p 2 maxY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; splineWithBlending a method_40541 + p 0 minFunction + p 1 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;III)Lnet/minecraft/world/level/levelgen/DensityFunction; yLimitedInterpolatable a method_40539 + p 0 input + p 1 whenInRange + p 2 minY + p 3 maxY + p 4 whenOutOfRange + m (Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType;)I method_41550 a method_41550 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_41109 + p 0 location + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; end a method_41120 + p 0 densityFunctions + m (Lnet/minecraft/core/HolderGetter;II)Lnet/minecraft/world/level/levelgen/DensityFunction; slideNetherLike a method_42363 + p 0 densityFunctions + p 1 minY + p 2 maxY + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/DensityFunction; getFunction a method_41116 + p 0 densityFunctions + p 1 key + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; nether a method_41118 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; underground a method_41101 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/levelgen/NoiseRouter; overworld a method_41103 + p 0 densityFunctions + p 1 noiseParameters + p 2 large + p 3 amplified + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/core/Holder; bootstrap a method_41100 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; registerAndWrap a method_41551 + p 0 context + p 1 key + p 2 value + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Z)V registerTerrainNoises a method_41548 + p 0 context + p 1 densityFunctionGetter + p 2 jaggedNoise + p 3 continentalness + p 4 erosion + p 5 offsetKey + p 6 factorKey + p 7 jaggednessKey + p 8 depthKey + p 9 slopedCheeseKey + p 10 amplified + m (ZLnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; slideOverworld a method_42366 + p 0 amplified + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; postProcess b method_41207 + p 0 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; noiseGradientDensity b method_40540 + p 0 minFunction + p 1 maxFunction + m (Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType;)I method_41553 b method_41553 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; spaghettiRoughnessFunction b method_41113 + p 0 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; caves b method_41549 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/NoiseRouter; noNewCaves b method_41211 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; slideEnd c method_42367 + p 0 densityFunction + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; pillars c method_41121 + p 0 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; floatingIslands c method_41552 + p 0 densityFunction + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; entrances d method_41117 + p 0 densityFunction + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; noodle e method_41119 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; spaghetti2D f method_41122 + p 0 densityFunctions + p 1 noiseParameters + m ()V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouterData$QuantizedSpaghettiRarity dzf$a net/minecraft/class_6954$class_5841 + m (D)D getSphaghettiRarity2D a method_33835 + p 0 value + m (D)D getSpaghettiRarity3D b method_33836 + p 0 value + m ()V +c net/minecraft/world/level/levelgen/NoiseSettings dzg net/minecraft/class_5309 + f Lcom/mojang/serialization/Codec; CODEC a field_24804 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; OVERWORLD_NOISE_SETTINGS b field_38253 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; NETHER_NOISE_SETTINGS c field_37138 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; END_NOISE_SETTINGS d field_37139 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; CAVES_NOISE_SETTINGS e field_37140 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; FLOATING_ISLANDS_NOISE_SETTINGS f field_37141 + f I minY g comp_173 + f I height h comp_174 + f I noiseSizeHorizontal i comp_178 + f I noiseSizeVertical j comp_179 + m ()I getCellHeight a method_39545 + m (IIII)Lnet/minecraft/world/level/levelgen/NoiseSettings; create a method_32994 + p 0 minY + p 1 height + p 2 noiseSizeHorizontal + p 3 noiseSizeVertical + m (Lcom/mojang/serialization/DataResult$Error;)V method_32996 a method_32996 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28582 a method_28582 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)Lnet/minecraft/world/level/levelgen/NoiseSettings; clampToHeightAccessor a method_42368 + p 1 heightAccessor + m (Lnet/minecraft/world/level/levelgen/NoiseSettings;)Lcom/mojang/serialization/DataResult; guardY a method_32995 + p 0 settings + m ()I getCellWidth b method_39546 + m ()I minY c comp_173 + m ()I height d comp_174 + m ()I noiseSizeHorizontal e comp_178 + m ()I noiseSizeVertical f comp_179 + m ()Ljava/lang/String; method_49530 g method_49530 + m ()Ljava/lang/String; method_49531 h method_49531 + m ()Ljava/lang/String; method_49532 i method_49532 + m (IIII)V + m ()V +c net/minecraft/world/level/levelgen/Noises dzh net/minecraft/class_6731 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS_MODULATOR A field_35411 + f Lnet/minecraft/resources/ResourceKey; CAVE_ENTRANCE B field_35412 + f Lnet/minecraft/resources/ResourceKey; CAVE_LAYER C field_35413 + f Lnet/minecraft/resources/ResourceKey; CAVE_CHEESE D field_35414 + f Lnet/minecraft/resources/ResourceKey; ORE_VEININESS E field_35363 + f Lnet/minecraft/resources/ResourceKey; ORE_VEIN_A F field_35364 + f Lnet/minecraft/resources/ResourceKey; ORE_VEIN_B G field_35365 + f Lnet/minecraft/resources/ResourceKey; ORE_GAP H field_35366 + f Lnet/minecraft/resources/ResourceKey; NOODLE I field_35367 + f Lnet/minecraft/resources/ResourceKey; NOODLE_THICKNESS J field_35368 + f Lnet/minecraft/resources/ResourceKey; NOODLE_RIDGE_A K field_35369 + f Lnet/minecraft/resources/ResourceKey; NOODLE_RIDGE_B L field_35370 + f Lnet/minecraft/resources/ResourceKey; JAGGED M field_35371 + f Lnet/minecraft/resources/ResourceKey; SURFACE N field_35373 + f Lnet/minecraft/resources/ResourceKey; SURFACE_SECONDARY O field_35675 + f Lnet/minecraft/resources/ResourceKey; CLAY_BANDS_OFFSET P field_35372 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_PILLAR Q field_35488 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_PILLAR_ROOF R field_35489 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_SURFACE S field_35490 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PILLAR T field_35491 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PILLAR_ROOF U field_35492 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_SURFACE V field_35493 + f Lnet/minecraft/resources/ResourceKey; SWAMP W field_35376 + f Lnet/minecraft/resources/ResourceKey; CALCITE X field_35377 + f Lnet/minecraft/resources/ResourceKey; GRAVEL Y field_35378 + f Lnet/minecraft/resources/ResourceKey; POWDER_SNOW Z field_35593 + f Lnet/minecraft/resources/ResourceKey; TEMPERATURE a field_35389 + f Lnet/minecraft/resources/ResourceKey; PACKED_ICE aa field_35381 + f Lnet/minecraft/resources/ResourceKey; ICE ab field_35382 + f Lnet/minecraft/resources/ResourceKey; SOUL_SAND_LAYER ac field_35383 + f Lnet/minecraft/resources/ResourceKey; GRAVEL_LAYER ad field_35384 + f Lnet/minecraft/resources/ResourceKey; PATCH ae field_35385 + f Lnet/minecraft/resources/ResourceKey; NETHERRACK af field_35386 + f Lnet/minecraft/resources/ResourceKey; NETHER_WART ag field_35387 + f Lnet/minecraft/resources/ResourceKey; NETHER_STATE_SELECTOR ah field_35388 + f Lnet/minecraft/resources/ResourceKey; VEGETATION b field_35390 + f Lnet/minecraft/resources/ResourceKey; CONTINENTALNESS c field_35391 + f Lnet/minecraft/resources/ResourceKey; EROSION d field_35392 + f Lnet/minecraft/resources/ResourceKey; TEMPERATURE_LARGE e field_35594 + f Lnet/minecraft/resources/ResourceKey; VEGETATION_LARGE f field_35595 + f Lnet/minecraft/resources/ResourceKey; CONTINENTALNESS_LARGE g field_35596 + f Lnet/minecraft/resources/ResourceKey; EROSION_LARGE h field_35597 + f Lnet/minecraft/resources/ResourceKey; RIDGE i field_35393 + f Lnet/minecraft/resources/ResourceKey; SHIFT j field_35394 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_BARRIER k field_35395 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_FLUID_LEVEL_FLOODEDNESS l field_35396 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_LAVA m field_35397 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_FLUID_LEVEL_SPREAD n field_35398 + f Lnet/minecraft/resources/ResourceKey; PILLAR o field_35399 + f Lnet/minecraft/resources/ResourceKey; PILLAR_RARENESS p field_35400 + f Lnet/minecraft/resources/ResourceKey; PILLAR_THICKNESS q field_35401 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D r field_35402 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_ELEVATION s field_35403 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_MODULATOR t field_35404 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_THICKNESS u field_35405 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_1 v field_35406 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_2 w field_35407 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_RARITY x field_35408 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_THICKNESS y field_35409 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS z field_35410 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_39174 + p 0 key + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; instantiate a method_41127 + p 0 noises + p 1 random + p 2 resourceKey + m ()V + m ()V +c net/minecraft/world/level/levelgen/OreVeinifier dzi net/minecraft/class_6955 + f F VEININESS_THRESHOLD a field_36620 + f I EDGE_ROUNDOFF_BEGIN b field_36621 + f D MAX_EDGE_ROUNDOFF c field_36622 + f F VEIN_SOLIDNESS d field_36623 + f F MIN_RICHNESS e field_36624 + f F MAX_RICHNESS f field_36625 + f F MAX_RICHNESS_THRESHOLD g field_36626 + f F CHANCE_OF_RAW_ORE_BLOCK h field_36627 + f F SKIP_ORE_IF_GAP_NOISE_IS_BELOW i field_36628 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Lnet/minecraft/world/level/block/state/BlockState; method_40547 a method_40547 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;)Lnet/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller; create a method_40548 + p 0 veinToggle + p 1 veinRidged + p 2 veinGap + p 3 random + m ()V +c net/minecraft/world/level/levelgen/OreVeinifier$VeinType dzi$a net/minecraft/class_6955$class_6354 + f Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; COPPER a field_33603 + f Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; IRON b field_33604 + f I minY c field_33607 + f I maxY d field_33608 + f Lnet/minecraft/world/level/block/state/BlockState; ore e field_33605 + f Lnet/minecraft/world/level/block/state/BlockState; rawOreBlock f field_33668 + f Lnet/minecraft/world/level/block/state/BlockState; filler g field_33606 + f [Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; $VALUES h field_33609 + m ()[Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; $values a method_36754 + m (Ljava/lang/String;ILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;II)V + p 3 ore + p 4 rawOreBlock + p 5 filler + p 6 minY + p 7 maxY + m ()V +c net/minecraft/world/level/levelgen/PatrolSpawner dzj net/minecraft/class_3769 + f I nextTick a field_16652 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)Z spawnPatrolMember a method_16575 + p 1 level + p 2 pos + p 3 random + p 4 leader + m ()V +c net/minecraft/world/level/levelgen/PhantomSpawner dzk net/minecraft/class_2910 + f I nextTick a field_13244 + m ()V +c net/minecraft/world/level/levelgen/PositionalRandomFactory dzl net/minecraft/class_6574 + m (III)Lnet/minecraft/util/RandomSource; at a method_38418 + p 1 x + p 2 y + p 3 z + m (J)Lnet/minecraft/util/RandomSource; fromSeed a method_60628 + p 1 seed + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; fromHashOf a method_39000 + p 1 name + m (Ljava/lang/String;)Lnet/minecraft/util/RandomSource; fromHashOf a method_38995 + p 1 name + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39039 + p 1 builder + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/RandomSource; at a method_38419 + p 1 pos +c net/minecraft/world/level/levelgen/RandomState dzm net/minecraft/class_7138 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; random a field_38254 + f Lnet/minecraft/core/HolderGetter; noises b field_38256 + f Lnet/minecraft/world/level/levelgen/NoiseRouter; router c field_38257 + f Lnet/minecraft/world/level/biome/Climate$Sampler; sampler d field_38258 + f Lnet/minecraft/world/level/levelgen/SurfaceSystem; surfaceSystem e field_38259 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; aquiferRandom f field_38260 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; oreRandom g field_38261 + f Ljava/util/Map; noiseIntances h field_38262 + f Ljava/util/Map; positionalRandoms i field_38263 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; router a method_42370 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; getOrCreateNoise a method_41558 + p 1 resourceKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; method_41559 a method_41559 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; getOrCreateRandomFactory a method_41560 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; method_41561 a method_41561 + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/core/HolderGetter;J)Lnet/minecraft/world/level/levelgen/RandomState; create a method_41556 + p 0 settings + p 1 noiseParametersGetter + p 2 levelSeed + m (Lnet/minecraft/core/HolderGetter$Provider;Lnet/minecraft/resources/ResourceKey;J)Lnet/minecraft/world/level/levelgen/RandomState; create a method_41557 + p 0 registries + p 1 settingsKey + p 2 levelSeed + m ()Lnet/minecraft/world/level/biome/Climate$Sampler; sampler b method_42371 + m ()Lnet/minecraft/world/level/levelgen/SurfaceSystem; surfaceSystem c method_42372 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; aquiferRandom d method_42373 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; oreRandom e method_42374 + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/core/HolderGetter;J)V + p 1 settings + p 2 noiseParametersGetter + p 3 levelSeed +c net/minecraft/world/level/levelgen/RandomState$1 dzm$1 net/minecraft/class_7138$1 + f Ljava/util/Map; wrapped a field_40362 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew a method_45512 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/RandomState;)V +c net/minecraft/world/level/levelgen/RandomState$1NoiseWiringHelper dzm$a net/minecraft/class_7138$class_7271 + f J val$seed a field_38264 + f Z val$useLegacyInit b field_38265 + f Lnet/minecraft/world/level/levelgen/RandomState; field_38266 c field_38266 + f Ljava/util/Map; wrapped d field_38267 + m (J)Lnet/minecraft/util/RandomSource; newLegacyInstance a method_42375 + p 1 seed + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew a method_42376 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/RandomState;JZ)V +c net/minecraft/world/level/levelgen/RandomSupport dzn net/minecraft/class_6673 + f J GOLDEN_RATIO_64 a field_35133 + f J SILVER_RATIO_64 b field_35134 + f Lcom/google/common/hash/HashFunction; MD5_128 c field_44918 + f Ljava/util/concurrent/atomic/AtomicLong; SEED_UNIQUIFIER d field_35135 + m ()J generateUniqueSeed a method_39001 + m (J)J mixStafford13 a method_39002 + p 0 seed + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; seedFromHashOf a method_52180 + p 0 string + m (J)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; upgradeSeedTo128bitUnmixed b method_52211 + p 0 seed + m (J)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; upgradeSeedTo128bit c method_39003 + p 0 seed + m (J)J method_39004 d method_39004 + m ()V + m ()V +c net/minecraft/world/level/levelgen/RandomSupport$Seed128bit dzn$a net/minecraft/class_6673$class_6674 + f J seedLo a comp_166 + f J seedHi b comp_167 + m ()Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; mixed a method_52212 + m (JJ)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; xor a method_52181 + p 1 seedLo + p 3 seedHi + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; xor a method_52182 + p 1 seed + m ()J seedLo b comp_166 + m ()J seedHi c comp_167 + m (JJ)V +c net/minecraft/world/level/levelgen/SingleThreadedRandomSource dzo net/minecraft/class_6575 + f I MODULUS_BITS d field_34689 + f J MODULUS_MASK e field_34690 + f J MULTIPLIER f field_34691 + f J INCREMENT g field_34692 + f J seed h field_34693 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_35136 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/SurfaceRules dzp net/minecraft/class_6686 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ON_FLOOR a field_35222 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; UNDER_FLOOR b field_35223 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; DEEP_UNDER_FLOOR c field_36341 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; VERY_DEEP_UNDER_FLOOR d field_36342 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ON_CEILING e field_35494 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; UNDER_CEILING f field_35224 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; steep a method_39045 + m (II)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; waterBlockCheck a method_39046 + p 0 offset + p 1 surfaceDepthMultiplier + m (IZILnet/minecraft/world/level/levelgen/placement/CaveSurface;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; stoneDepthCheck a method_40023 + p 0 offset + p 1 addSurfaceDepth + p 2 secondaryDepthRange + p 3 surfaceType + m (IZLnet/minecraft/world/level/levelgen/placement/CaveSurface;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; stoneDepthCheck a method_39549 + p 0 offset + p 1 addSurfaceDepth + p 2 surfaceType + m (Lnet/minecraft/resources/ResourceKey;D)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; noiseCondition a method_39052 + p 0 noise + p 1 minThreshold + m (Lnet/minecraft/resources/ResourceKey;DD)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; noiseCondition a method_39053 + p 0 noise + p 1 minThreshold + p 3 maxThreshold + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; state a method_39047 + p 0 resultState + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; not a method_39048 + p 0 target + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ifTrue a method_39049 + p 0 ifTrue + p 1 thenRun + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; yBlockCheck a method_39051 + p 0 anchor + p 1 surfaceDepthMultiplier + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; verticalGradient a method_39472 + p 0 randomName + p 1 trueAtAndBelow + p 2 falseAtAndAbove + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource; isBiome a method_39054 + p 0 biomes + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Lnet/minecraft/util/KeyDispatchDataCodec;)Lcom/mojang/serialization/MapCodec; register a method_42377 + p 0 registry + p 1 name + p 2 codec + m ([Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; isBiome a method_39055 + p 0 biomes + m ([Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; sequence a method_39050 + p 0 rules + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; hole b method_39056 + m (II)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; waterStartCheck b method_39057 + p 0 offset + p 1 surfaceDepthMultiplier + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; yStartCheck b method_39058 + p 0 anchor + p 1 surfaceDepthMultiplier + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; abovePreliminarySurface c method_39473 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; temperature d method_39059 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; bandlands e method_39060 + m ()V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface dzp$a net/minecraft/class_6686$class_6770 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; INSTANCE a field_35600 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35601 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; $VALUES d field_35602 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39474 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; $values b method_39475 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Bandlands dzp$b net/minecraft/class_6686$class_6687 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; INSTANCE a field_35225 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35226 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; $VALUES d field_35227 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39062 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; $values b method_39063 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource dzp$c net/minecraft/class_6686$class_6689 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_35228 + f Ljava/util/List; biomes c field_36414 + f Ljava/util/function/Predicate; biomeNameTest d field_36415 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource;)Ljava/util/List; method_40159 a method_40159 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39065 + p 1 context + m (Ljava/util/List;)V + p 1 biomes + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource$1BiomeCondition dzp$c$a net/minecraft/class_6686$class_6689$class_6690 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35603 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource; field_35230 b field_35230 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$BlockRuleSource dzp$d net/minecraft/class_6686$class_6691 + f Lnet/minecraft/world/level/block/state/BlockState; resultState a comp_191 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule; rule c comp_192 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC d field_35231 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39068 + p 1 context + m ()Lnet/minecraft/world/level/block/state/BlockState; resultState b comp_191 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule; rule c comp_192 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 resultState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Condition dzp$e net/minecraft/class_6686$class_6692 + m ()Z test b method_39069 +c net/minecraft/world/level/levelgen/SurfaceRules$ConditionSource dzp$f net/minecraft/class_6686$class_6693 + f Lcom/mojang/serialization/Codec; CODEC b field_35232 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec a method_39064 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)Lcom/mojang/serialization/MapCodec; method_42378 a method_42378 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_39070 + p 0 registry + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Context dzp$g net/minecraft/class_6686$class_6694 + f Ljava/util/function/Supplier; biome A field_35614 + f I blockY B field_35617 + f I waterHeight C field_35618 + f I stoneDepthBelow D field_35619 + f I stoneDepthAbove E field_35620 + f I HOW_FAR_BELOW_PRELIMINARY_SURFACE_LEVEL_TO_BUILD_SURFACE a field_36274 + f I SURFACE_CELL_BITS b field_36275 + f I SURFACE_CELL_SIZE c field_36276 + f I SURFACE_CELL_MASK d field_36277 + f Lnet/minecraft/world/level/levelgen/SurfaceSystem; system e field_35233 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; temperature f field_35234 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; steep g field_35235 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; hole h field_35236 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; abovePreliminarySurface i field_35604 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState j field_37703 + f Lnet/minecraft/world/level/chunk/ChunkAccess; chunk k field_35605 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk l field_35676 + f Ljava/util/function/Function; biomeGetter m field_35606 + f Lnet/minecraft/world/level/levelgen/WorldGenerationContext; context n field_35241 + f J lastPreliminarySurfaceCellOrigin o field_36278 + f [I preliminarySurfaceCache p field_36279 + f J lastUpdateXZ q field_35608 + f I blockX r field_35609 + f I blockZ s field_35610 + f I surfaceDepth t field_35611 + f J lastSurfaceDepth2Update u field_35677 + f D surfaceSecondary v field_35678 + f J lastMinSurfaceLevelUpdate w field_35679 + f I minSurfaceLevel x field_35616 + f J lastUpdateY y field_35612 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; pos z field_35613 + m ()D getSurfaceSecondary a method_39550 + m (I)I blockCoordToSurfaceCell a method_39903 + p 0 blockCoord + m (II)V updateXZ a method_39072 + p 1 blockX + p 2 blockZ + m (III)Lnet/minecraft/core/Holder; method_39478 a method_39478 + m (IIIIII)V updateY a method_39073 + p 1 stoneDepthAbove + p 2 stoneDepthBelow + p 3 waterHeight + p 4 blockX + p 5 blockY + p 6 blockZ + m ()I getMinSurfaceLevel b method_39551 + m (I)I surfaceCellToBlockCoord b method_39904 + p 0 surfaceCell + m (Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)V + p 1 system + p 2 randomState + p 3 chunk + p 4 noiseChunk + p 5 biomeGetter + p 7 context +c net/minecraft/world/level/levelgen/SurfaceRules$Context$AbovePreliminarySurfaceCondition dzp$g$a net/minecraft/class_6686$class_6694$class_6771 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; field_35621 a field_35621 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$HoleCondition dzp$g$b net/minecraft/class_6686$class_6694$class_6695 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$SteepMaterialCondition dzp$g$c net/minecraft/class_6686$class_6694$class_6696 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$TemperatureHelperCondition dzp$g$d net/minecraft/class_6686$class_6694$class_6772 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Hole dzp$h net/minecraft/class_6686$class_6701 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; INSTANCE a field_35243 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35244 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; $VALUES d field_35245 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39079 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; $values b method_39080 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$LazyCondition dzp$i net/minecraft/class_6686$class_6702 + f J lastUpdate a field_35622 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; context c field_35623 + f Ljava/lang/Boolean; result d field_35246 + m ()Z compute a method_39074 + m ()J getContextLastUpdate c method_39479 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V + p 1 context +c net/minecraft/world/level/levelgen/SurfaceRules$LazyXZCondition dzp$j net/minecraft/class_6686$class_6773 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$LazyYCondition dzp$k net/minecraft/class_6686$class_6774 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource dzp$l net/minecraft/class_6686$class_6703 + f Lnet/minecraft/resources/ResourceKey; noise a comp_201 + f D minThreshold c comp_202 + f D maxThreshold d comp_203 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35248 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39081 a method_39081 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39082 + p 1 context + m ()Lnet/minecraft/resources/ResourceKey; noise b comp_201 + m ()D minThreshold c comp_202 + m ()D maxThreshold d comp_203 + m (Lnet/minecraft/resources/ResourceKey;DD)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource$1NoiseThresholdCondition dzp$l$a net/minecraft/class_6686$class_6703$class_6704 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35624 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; val$noise b field_35249 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource; field_35250 e field_35250 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;Lnet/minecraft/world/level/levelgen/synth/NormalNoise;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NotCondition dzp$m net/minecraft/class_6686$class_6706 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; target a comp_206 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; target a comp_206 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NotConditionSource dzp$n net/minecraft/class_6686$class_6707 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; target a comp_207 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35251 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39084 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; target b comp_207 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$RuleSource dzp$o net/minecraft/class_6686$class_6708 + f Lcom/mojang/serialization/Codec; CODEC b field_35252 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec a method_39061 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lcom/mojang/serialization/MapCodec; method_42379 a method_42379 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_39085 + p 0 registry + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$SequenceRule dzp$p net/minecraft/class_6686$class_6709 + f Ljava/util/List; rules a comp_208 + m ()Ljava/util/List; rules a comp_208 + m (Ljava/util/List;)V +c net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource dzp$q net/minecraft/class_6686$class_6710 + f Ljava/util/List; sequence a comp_209 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35253 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39086 + p 1 context + m ()Ljava/util/List; sequence b comp_209 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StateRule dzp$r net/minecraft/class_6686$class_6711 + f Lnet/minecraft/world/level/block/state/BlockState; state a comp_210 + m ()Lnet/minecraft/world/level/block/state/BlockState; state a comp_210 + m (Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Steep dzp$s net/minecraft/class_6686$class_6712 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; INSTANCE a field_35254 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35255 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; $VALUES d field_35256 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39087 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; $values b method_39088 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck dzp$t net/minecraft/class_6686$class_6713 + f I offset a comp_276 + f Z addSurfaceDepth c comp_211 + f I secondaryDepthRange d comp_277 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surfaceType e comp_212 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC f field_35257 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39089 a method_39089 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39090 + p 1 context + m ()I offset b comp_276 + m ()Z addSurfaceDepth c comp_211 + m ()I secondaryDepthRange d comp_277 + m ()Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surfaceType e comp_212 + m (IZILnet/minecraft/world/level/levelgen/placement/CaveSurface;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck$1StoneDepthCondition dzp$t$a net/minecraft/class_6686$class_6713$class_6714 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35625 + f Z val$ceiling b field_35258 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck; field_35259 e field_35259 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;Z)V +c net/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule dzp$u net/minecraft/class_6686$class_6715 +c net/minecraft/world/level/levelgen/SurfaceRules$Temperature dzp$v net/minecraft/class_6686$class_6716 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; INSTANCE a field_35260 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35261 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; $VALUES d field_35262 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39092 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; $values b method_39093 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$TestRule dzp$w net/minecraft/class_6686$class_6717 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; condition a comp_213 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; followup b comp_214 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; condition a comp_213 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; followup b comp_214 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition;Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule;)V +c net/minecraft/world/level/levelgen/SurfaceRules$TestRuleSource dzp$x net/minecraft/class_6686$class_6718 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ifTrue a comp_215 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; thenRun c comp_216 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC d field_35263 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39094 a method_39094 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39095 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ifTrue b comp_215 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; thenRun c comp_216 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource dzp$y net/minecraft/class_6686$class_6775 + f Lnet/minecraft/resources/ResourceLocation; randomName a comp_263 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; trueAtAndBelow c comp_264 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; falseAtAndAbove d comp_265 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35626 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39480 a method_39480 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39481 + p 1 context + m ()Lnet/minecraft/resources/ResourceLocation; randomName b comp_263 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; trueAtAndBelow c comp_264 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; falseAtAndAbove d comp_265 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource$1VerticalGradientCondition dzp$y$a net/minecraft/class_6686$class_6775$class_6776 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35627 + f I val$trueAtAndBelow b field_35628 + f I val$falseAtAndAbove e field_35629 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; val$randomFactory f field_35630 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;IILnet/minecraft/world/level/levelgen/PositionalRandomFactory;)V +c net/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource dzp$z net/minecraft/class_6686$class_6720 + f I offset a comp_217 + f I surfaceDepthMultiplier c comp_218 + f Z addStoneDepth d comp_219 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35264 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39096 a method_39096 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39097 + p 1 context + m ()I offset b comp_217 + m ()I surfaceDepthMultiplier c comp_218 + m ()Z addStoneDepth d comp_219 + m (IIZ)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource$1WaterCondition dzp$z$a net/minecraft/class_6686$class_6720$class_6721 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35632 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource; field_35265 b field_35265 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$YConditionSource dzp$aa net/minecraft/class_6686$class_6722 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; anchor a comp_220 + f I surfaceDepthMultiplier c comp_221 + f Z addStoneDepth d comp_222 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35266 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39099 a method_39099 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39100 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; anchor b comp_220 + m ()I surfaceDepthMultiplier c comp_221 + m ()Z addStoneDepth d comp_222 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;IZ)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$YConditionSource$1YCondition dzp$aa$a net/minecraft/class_6686$class_6722$class_6723 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35267 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$YConditionSource; field_35268 b field_35268 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$YConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceSystem dzq net/minecraft/class_6724 + f Lnet/minecraft/world/level/block/state/BlockState; WHITE_TERRACOTTA a field_35275 + f Lnet/minecraft/world/level/block/state/BlockState; ORANGE_TERRACOTTA b field_35276 + f Lnet/minecraft/world/level/block/state/BlockState; TERRACOTTA c field_35277 + f Lnet/minecraft/world/level/block/state/BlockState; YELLOW_TERRACOTTA d field_35278 + f Lnet/minecraft/world/level/block/state/BlockState; BROWN_TERRACOTTA e field_35279 + f Lnet/minecraft/world/level/block/state/BlockState; RED_TERRACOTTA f field_35280 + f Lnet/minecraft/world/level/block/state/BlockState; LIGHT_GRAY_TERRACOTTA g field_35281 + f Lnet/minecraft/world/level/block/state/BlockState; PACKED_ICE h field_35282 + f Lnet/minecraft/world/level/block/state/BlockState; SNOW_BLOCK i field_35283 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlock j field_35285 + f I seaLevel k field_35286 + f [Lnet/minecraft/world/level/block/state/BlockState; clayBands l field_35287 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; clayBandsOffsetNoise m field_35288 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsPillarNoise n field_35495 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsPillarRoofNoise o field_35496 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsSurfaceNoise p field_35497 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergPillarNoise q field_35498 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergPillarRoofNoise r field_35499 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergSurfaceNoise s field_35500 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; noiseRandom t field_35292 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; surfaceNoise u field_35293 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; surfaceSecondaryNoise v field_35680 + m (II)I getSurfaceDepth a method_39552 + p 1 x + p 2 z + m (III)Lnet/minecraft/world/level/block/state/BlockState; getBand a method_39103 + p 1 x + p 2 y + p 3 z + m (ILnet/minecraft/world/level/biome/Biome;Lnet/minecraft/world/level/chunk/BlockColumn;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V frozenOceanExtension a method_39104 + p 1 minSurfaceLevel + p 2 biome + p 3 blockColumn + p 4 topWaterPos + p 5 x + p 6 z + p 7 height + m (Lnet/minecraft/util/RandomSource;)[Lnet/minecraft/world/level/block/state/BlockState; generateBands a method_39108 + p 0 random + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/world/level/block/state/BlockState;)V makeBands a method_39109 + p 0 random + p 1 output + p 2 minSize + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStone a method_39333 + p 1 state + m (Lnet/minecraft/world/level/chunk/BlockColumn;IIILnet/minecraft/world/level/LevelHeightAccessor;)V erodedBadlandsExtension a method_39102 + p 1 blockColumn + p 2 x + p 3 z + p 4 height + p 5 level + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/core/Registry;ZLnet/minecraft/world/level/levelgen/WorldGenerationContext;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V buildSurface a method_39106 + p 1 randomState + p 2 biomeManager + p 3 biomes + p 4 useLegacyRandomSource + p 5 context + p 6 chunk + p 7 noiseChunk + p 8 ruleSource + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; topMaterial a method_39110 + p 1 rule + p 2 context + p 3 biomeGetter + p 4 chunk + p 5 noiseChunk + p 6 pos + p 7 hasFluid + m (II)D getSurfaceSecondary b method_39555 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/world/level/levelgen/PositionalRandomFactory;)V + p 1 randomState + p 2 defaultBlock + p 3 seaLevel + p 4 noiseRandom + m ()V +c net/minecraft/world/level/levelgen/SurfaceSystem$1 dzq$1 net/minecraft/class_6724$1 + f Lnet/minecraft/world/level/chunk/ChunkAccess; val$protoChunk a field_35294 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; val$columnPos b field_35295 + f Lnet/minecraft/world/level/ChunkPos; val$chunkPos c field_35296 + m (Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/ChunkPos;)V +c net/minecraft/world/level/levelgen/ThreadSafeLegacyRandomSource dzr net/minecraft/class_7384 + f I MODULUS_BITS d field_38760 + f J MODULUS_MASK e field_38761 + f J MULTIPLIER f field_38762 + f J INCREMENT g field_38763 + f Ljava/util/concurrent/atomic/AtomicLong; seed h field_38764 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_38765 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/VerticalAnchor dzs net/minecraft/class_5843 + c Represents a resolvable height value, or y coordinate, based on the world minimum and maximum height.\nCan take one of the following three forms:\n

    \n
  • An absolute y value ({@link Absolute}).
  • \n
  • A height above the lowest valid y value in the level ({@link AboveBottom}).
  • \n
  • A height below the highest valid y value in the level ({@link BelowTop}).
  • \n
+ f Lcom/mojang/serialization/Codec; CODEC a field_28915 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; BOTTOM b field_28916 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; TOP c field_28917 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; bottom a method_33840 + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; absolute a method_33841 + p 0 value + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; merge a method_33843 + p 0 anchor + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lcom/mojang/datafixers/util/Either; split a method_33842 + p 0 anchor + m (Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)I resolveY a method_33844 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; top b method_33845 + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; aboveBottom b method_33846 + p 0 value + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; belowTop c method_33849 + p 0 value + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$AboveBottom dzs$a net/minecraft/class_5843$class_5844 + f Lcom/mojang/serialization/Codec; CODEC d field_28919 + f I offset e comp_507 + m ()I offset c comp_507 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$Absolute dzs$b net/minecraft/class_5843$class_5845 + f Lcom/mojang/serialization/Codec; CODEC d field_28920 + f I y e comp_508 + m ()I y c comp_508 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$BelowTop dzs$c net/minecraft/class_5843$class_5846 + f Lcom/mojang/serialization/Codec; CODEC d field_28921 + f I offset e comp_509 + m ()I offset c comp_509 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/WorldDimensions dzt net/minecraft/class_7723 + f Lcom/mojang/serialization/MapCodec; CODEC a field_40363 + f Ljava/util/Map; dimensions b comp_1014 + f Ljava/util/Set; BUILTIN_ORDER c field_40364 + f I VANILLA_DIMENSION_COUNT d field_40365 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; overworld a method_45513 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_45514 + p 1 stemKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)Lcom/mojang/serialization/Lifecycle; checkStability a method_45515 + p 0 key + p 1 stem + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45516 a method_45516 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableOverworld a method_45517 + p 0 levelStem + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V method_45524 a method_45524 + m (Ljava/util/Map;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Ljava/util/Map; withOverworld a method_45519 + p 0 stemMap + p 1 dimensionType + p 2 chunkGenerator + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; keysInOrder a method_45525 + p 0 stemKeys + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; bake a method_45518 + p 1 stemRegistry + m (Lnet/minecraft/core/Registry;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V method_45521 a method_45521 + m (Lnet/minecraft/core/Registry;Ljava/util/Map;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Ljava/util/Map; withOverworld a method_45520 + p 0 dimensionTypeRegistry + p 1 stemMap + p 2 chunkGenerator + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Lnet/minecraft/world/level/levelgen/WorldDimensions; replaceOverworldGenerator a method_45522 + p 1 registryAccess + p 2 chunkGenerator + m (Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/world/level/levelgen/WorldDimensions$1Entry;)V method_45523 a method_45523 + m ()Lcom/google/common/collect/ImmutableSet; levels b method_45526 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_45527 b method_45527 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)Z isVanillaLike b method_45528 + p 0 key + p 1 stem + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableNether b method_45529 + p 0 levelStem + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty b method_45530 + p 0 stemRegistry + m ()Z isDebug c method_45531 + m (Lnet/minecraft/resources/ResourceKey;)Z method_45532 c method_45532 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableEnd c method_45533 + p 0 levelStem + m ()Ljava/util/Map; dimensions d comp_1014 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; method_45534 d method_45534 + m (Ljava/util/Map;)V + p 1 dimensions + m (Lnet/minecraft/core/Registry;)V + p 1 stemRegistry + m ()V +c net/minecraft/world/level/levelgen/WorldDimensions$1Entry dzt$a net/minecraft/class_7723$class_7724 + f Lnet/minecraft/resources/ResourceKey; key a comp_1015 + f Lnet/minecraft/world/level/dimension/LevelStem; value b comp_1016 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1015 + m ()Lnet/minecraft/world/level/dimension/LevelStem; value b comp_1016 + m ()Lnet/minecraft/core/RegistrationInfo; registrationInfo c method_57014 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V +c net/minecraft/world/level/levelgen/WorldDimensions$Complete dzt$b net/minecraft/class_7723$class_7725 + f Lnet/minecraft/core/Registry; dimensions a comp_1017 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty b comp_1018 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle a method_45536 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; dimensionsRegistryAccess b method_45537 + m ()Lnet/minecraft/core/Registry; dimensions c comp_1017 + m ()Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty d comp_1018 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;)V +c net/minecraft/world/level/levelgen/WorldGenSettings dzu net/minecraft/class_7726 + f Lcom/mojang/serialization/Codec; CODEC a field_40366 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1019 + f Lnet/minecraft/world/level/levelgen/WorldDimensions; dimensions c comp_1020 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options a comp_1019 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lcom/mojang/serialization/DataResult; encode a method_45538 + p 0 ops + p 1 options + p 2 dimensions + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/RegistryAccess;)Lcom/mojang/serialization/DataResult; encode a method_45539 + p 0 ops + p 1 options + p 2 access + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45540 a method_45540 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; dimensions b comp_1020 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)V + m ()V +c net/minecraft/world/level/levelgen/WorldGenerationContext dzv net/minecraft/class_5868 + f I minY a field_34030 + f I height b field_34031 + m ()I getMinGenY a method_30462 + m ()I getGenDepth b method_30458 + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 generator + p 2 level +c net/minecraft/world/level/levelgen/WorldOptions dzw net/minecraft/class_5285 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24826 + f Lnet/minecraft/world/level/levelgen/WorldOptions; DEMO_OPTIONS b field_40367 + f J seed c field_24526 + f Z generateStructures d field_24527 + f Z generateBonusChest e field_24528 + f Ljava/util/Optional; legacyCustomOptions f field_24532 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; defaultWithRandomSeed a method_45541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28606 a method_28606 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;)Ljava/util/Optional; method_28605 a method_28605 + m (Ljava/lang/String;)Ljava/util/OptionalLong; parseSeed a method_46720 + p 0 seed + m (Ljava/util/OptionalLong;)Lnet/minecraft/world/level/levelgen/WorldOptions; withSeed a method_28024 + p 1 seed + m (Z)Lnet/minecraft/world/level/levelgen/WorldOptions; withBonusChest a method_28036 + p 1 generateBonusChest + m ()J seed b method_28028 + m (Z)Lnet/minecraft/world/level/levelgen/WorldOptions; withStructures b method_45542 + p 1 generateStructures + m ()Z generateStructures c method_28029 + m ()Z generateBonusChest d method_28030 + m ()Z isOldCustomizedWorld e method_28035 + m ()J randomSeed f method_46721 + m (JZZ)V + p 1 seed + p 3 generateStructures + p 4 generateBonusChest + m (JZZLjava/util/Optional;)V + p 1 seed + p 3 generateStructures + p 4 generateBonusChest + p 5 legacyCustomOptions + m ()V +c net/minecraft/world/level/levelgen/WorldgenRandom dzx net/minecraft/class_2919 + f Lnet/minecraft/util/RandomSource; randomSource d field_35141 + f I count e field_28768 + m (IIJJ)Lnet/minecraft/util/RandomSource; seedSlimeChunk a method_12662 + c Creates a new {@code RandomSource}, seeded for determining whether a chunk is a slime chunk or not. + p 0 chunkX + p 1 chunkZ + p 2 levelSeed + p 4 salt + c For vanilla slimes, this is always {@code 987234911L} + m (JII)J setDecorationSeed a method_12661 + c Seeds the current random for chunk decoration, including spawning mobs and for use in feature placement.\nThe coordinates correspond to the minimum block position within a given chunk. + p 1 levelSeed + p 3 minChunkBlockX + p 4 minChunkBlockZ + m (JIII)V setLargeFeatureWithSalt a method_12665 + c Seeds the current random for placing the starts of structure features.\nThe region coordinates are the region which the target chunk lies in. For example, witch hut regions are 32x32 chunks, so all chunks within that region would be seeded identically.\nThe size of the regions themselves are determined by the {@code spacing} of the structure settings. + p 1 levelSeed + p 3 regionX + p 4 regionZ + p 5 salt + c A salt unique to each structure. + m (JII)V setFeatureSeed b method_12664 + c Seeds the current random for placing features.\nEach feature is seeded differently in order to seem more random. However, it does not do a good job of this, and issues can arise from the salt being small with features that have the same decoration step and are close together in the feature lists. + p 1 decorationSeed + c The seed computed by {@link #setDecorationSeed(long, int, int)} + p 3 index + c The cumulative index of the generating feature within the biome's list of features. + p 4 decorationStep + c The ordinal of the {@link net.minecraft.world.level.levelgen.GenerationStep.Decoration} of the generating feature. + m (JII)V setLargeFeatureSeed c method_12663 + c Seeds the current random for placing large features such as caves, strongholds, and mineshafts. + p 1 baseSeed + c This is passed in as the level seed, or in some cases such as carvers, as an offset from the level seed unique to each carver. + p 3 chunkX + p 4 chunkZ + m ()I getCount l method_35335 + m (Lnet/minecraft/util/RandomSource;)V + p 1 randomSource +c net/minecraft/world/level/levelgen/WorldgenRandom$Algorithm dzx$a net/minecraft/class_2919$class_6675 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; LEGACY a field_35142 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; XOROSHIRO b field_35143 + f Ljava/util/function/LongFunction; constructor c field_35144 + f [Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; $VALUES d field_35145 + m ()[Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; $values a method_39005 + m (J)Lnet/minecraft/util/RandomSource; newInstance a method_39006 + p 1 seed + m (Ljava/lang/String;ILjava/util/function/LongFunction;)V + p 3 constructor + m ()V +c net/minecraft/world/level/levelgen/Xoroshiro128PlusPlus dzy net/minecraft/class_6676 + f Lcom/mojang/serialization/Codec; CODEC a field_44879 + f J seedLo b field_35146 + f J seedHi c field_35147 + m ()J nextLong a method_39007 + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)Ljava/util/stream/LongStream; method_51857 a method_51857 + m (Ljava/util/stream/LongStream;)Lcom/mojang/serialization/DataResult; method_51858 a method_51858 + m ([J)Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; method_51859 a method_51859 + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)V + p 1 seed + m (JJ)V + p 1 seedLo + p 3 seedHi + m ()V +c net/minecraft/world/level/levelgen/XoroshiroRandomSource dzz net/minecraft/class_6677 + f Lcom/mojang/serialization/Codec; CODEC b field_44880 + f F FLOAT_UNIT c field_35148 + f D DOUBLE_UNIT d field_35149 + f Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; randomNumberGenerator e field_35150 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource f field_35151 + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; method_51860 a method_51860 + m (Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource;)Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; method_51861 a method_51861 + m (I)J nextBits c method_39008 + p 1 bits + m (J)V + p 1 seed + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)V + p 1 seed + m (JJ)V + p 1 seedLo + p 3 seedHi + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)V + p 1 randomNumberGenerator + m ()V +c net/minecraft/world/level/levelgen/XoroshiroRandomSource$XoroshiroPositionalRandomFactory dzz$a net/minecraft/class_6677$class_6678 + f J seedLo a field_35153 + f J seedHi b field_35154 + m (JJ)V + p 1 seedLo + p 3 seedHi +c net/minecraft/world/level/levelgen/blending/Blender eaa net/minecraft/class_6748 + f Lnet/minecraft/world/level/levelgen/blending/Blender; EMPTY a field_35501 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; SHIFT_NOISE b field_35681 + f I HEIGHT_BLENDING_RANGE_CELLS c field_35502 + f I HEIGHT_BLENDING_RANGE_CHUNKS d field_35503 + f I DENSITY_BLENDING_RANGE_CELLS e field_35504 + f I DENSITY_BLENDING_RANGE_CHUNKS f field_35505 + f D OLD_CHUNK_XZ_RADIUS g field_36224 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; heightAndBiomeBlendingData h field_36343 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; densityBlendingData i field_36344 + m ()Lnet/minecraft/world/level/levelgen/blending/Blender; empty a method_39336 + m (D)D heightToOffset a method_39337 + p 0 height + m (DDDDDD)D distanceToCube a method_39808 + p 0 x1 + p 2 y1 + p 4 z1 + p 6 x2 + p 8 y2 + p 10 z2 + m (DDDDDDD)D method_39807 a method_39807 + m (II)Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; blendOffsetAndFactor a method_39340 + p 1 x + p 2 z + m (III)Lnet/minecraft/core/Holder; blendBiome a method_39561 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/levelgen/blending/Blender$CellValueGetter;)D getBlendingDataValue a method_39562 + p 1 x + p 2 y + p 3 z + p 4 getter + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IIID)V method_39339 a method_39339 + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_40026 a method_40026 + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_39560 a method_39560 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IID)V method_39341 a method_39341 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_40027 a method_40027 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;IILnet/minecraft/core/Holder;)V method_40025 a method_40025 + m (Lnet/minecraft/server/level/WorldGenRegion;)Lnet/minecraft/world/level/levelgen/blending/Blender; of a method_39342 + p 0 region + m (Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/chunk/ChunkAccess;)V generateBorderTicks a method_39772 + p 0 region + p 1 chunk + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;)V addAroundOldChunksCarvingMaskFilter a method_39809 + p 0 level + p 1 chunk + m (Lnet/minecraft/world/level/biome/BiomeResolver;)Lnet/minecraft/world/level/biome/BiomeResolver; getBiomeResolver a method_39563 + p 1 resolver + m (Lnet/minecraft/world/level/biome/BiomeResolver;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_39564 a method_39564 + m (Lnet/minecraft/world/level/chunk/CarvingMask$Mask;Lnet/minecraft/world/level/chunk/CarvingMask;)V method_39810 a method_39810 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;)V generateBorderTick a method_39773 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)D blendDensity a method_39338 + p 1 context + p 2 density + m (Lnet/minecraft/world/level/levelgen/blending/Blender$CellValueGetter;IIIII)D getBlendingDataValue a method_39565 + p 1 getter + p 2 sectionX + p 3 sectionZ + p 4 x + p 5 y + p 6 z + m (Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter;III)Z method_39811 a method_39811 + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;Ljava/util/Map;)Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter; makeOldChunkDistanceGetter a method_39815 + p 0 blendingData + p 1 surroundingBlendingData + m (Ljava/util/List;DDD)D method_39813 a method_39813 + m (Ljava/util/List;Lnet/minecraft/core/Direction8;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_39814 a method_39814 + m (Lnet/minecraft/core/Direction8;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter; makeOffsetOldChunkDistanceGetter a method_39812 + p 0 direction + p 1 blendingData + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 heightAndBiomeBlendingData + p 2 densityBlendingData + m ()V +c net/minecraft/world/level/levelgen/blending/Blender$1 eaa$1 net/minecraft/class_6748$1 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V +c net/minecraft/world/level/levelgen/blending/Blender$BlendingOutput eaa$a net/minecraft/class_6748$class_6956 + f D alpha a comp_435 + f D blendingOffset b comp_436 + m ()D alpha a comp_435 + m ()D blendingOffset b comp_436 + m (DD)V +c net/minecraft/world/level/levelgen/blending/Blender$CellValueGetter eaa$b net/minecraft/class_6748$class_6781 +c net/minecraft/world/level/levelgen/blending/Blender$DistanceGetter eaa$c net/minecraft/class_6748$class_6831 +c net/minecraft/world/level/levelgen/blending/BlendingData eab net/minecraft/class_6749 + f I CELL_WIDTH a field_36280 + f I CELL_HEIGHT b field_35511 + f I CELL_RATIO c field_36281 + f D NO_VALUE d field_35513 + f Lcom/mojang/serialization/Codec; CODEC e field_35682 + f D BLENDING_DENSITY_FACTOR f field_35514 + f D SOLID_DENSITY g field_37704 + f D AIR_DENSITY h field_37705 + f I CELLS_PER_SECTION_Y i field_35516 + f I QUARTS_PER_SECTION j field_35683 + f I CELL_HORIZONTAL_MAX_INDEX_INSIDE k field_35684 + f I CELL_HORIZONTAL_MAX_INDEX_OUTSIDE l field_35685 + f I CELL_COLUMN_INSIDE_COUNT m field_35686 + f I CELL_COLUMN_OUTSIDE_COUNT n field_35687 + f I CELL_COLUMN_COUNT o field_35518 + f Lnet/minecraft/world/level/LevelHeightAccessor; areaWithOldGeneration p field_35515 + f Ljava/util/List; SURFACE_BLOCKS q field_35519 + f Z hasCalculatedData r field_35690 + f [D heights s field_35692 + f Ljava/util/List; biomes t field_36345 + f [[D densities u field_35693 + f Lcom/mojang/serialization/Codec; DOUBLE_ARRAY_CODEC v field_35695 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getAreaWithOldGeneration a method_41564 + m (D)Z method_39567 a method_39567 + m (I)I getCellYIndex a method_41565 + p 1 y + m (II)I getInsideIndex a method_39578 + p 0 x + p 1 z + m (III)D getHeight a method_39344 + p 1 x + p 2 y + p 3 z + m (IIIILnet/minecraft/world/level/levelgen/blending/BlendingData$DensityConsumer;)V iterateDensities a method_39346 + p 1 x + p 2 z + p 3 minY + p 4 maxY + p 5 consumer + m (IIILnet/minecraft/world/level/levelgen/blending/BlendingData$BiomeConsumer;)V iterateBiomes a method_40028 + p 1 x + p 2 y + p 3 z + p 4 consumer + m (IILnet/minecraft/world/level/levelgen/blending/BlendingData$HeightConsumer;)V iterateHeights a method_39351 + p 1 x + p 2 z + p 3 consumer + m (ILnet/minecraft/world/level/chunk/ChunkAccess;II)V addValuesForColumn a method_39347 + p 1 index + p 2 chunk + p 3 x + p 4 z + m (Lnet/minecraft/server/level/WorldGenRegion;II)Lnet/minecraft/world/level/levelgen/blending/BlendingData; getOrUpdateBlendingData a method_39570 + p 0 region + p 1 chunkX + p 2 chunkZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39571 a method_39571 + m (Lnet/minecraft/world/level/WorldGenLevel;IIZ)Ljava/util/Set; sideByGenerationAge a method_39579 + p 0 level + p 1 chunkX + p 2 chunkZ + p 3 oldNoiseGeneration + m (Lnet/minecraft/world/level/chunk/ChunkAccess;II)I getHeightAtXZ a method_39349 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;III)[D getDensityColumn a method_39354 + p 1 chunk + p 2 x + p 3 z + p 4 height + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/Set;)V calculateData a method_39572 + p 1 chunk + p 2 directions + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;)D read1 a method_39905 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;)Z isGround a method_39350 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Lcom/mojang/serialization/DataResult; validateArraySize a method_39573 + p 0 blendingData + m ([D)V method_39574 a method_39574 + m ([DI)D getDensity a method_39575 + p 1 heights + p 2 y + m ()I cellCountPerColumn b method_39576 + m (I)I getX b method_39343 + p 0 index + m (II)I getOutsideIndex b method_39582 + p 0 x + p 1 z + m (III)D getDensity b method_39345 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;II)Ljava/util/List; getBiomeColumn b method_41566 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;)D read7 b method_39906 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/util/Optional; method_39580 b method_39580 + m ()I quartCountPerColumn c method_41567 + m (I)I getZ c method_39352 + p 0 index + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/lang/Integer; method_41568 c method_41568 + m ()I getColumnMinY d method_39581 + m (I)I zeroIfNegative d method_39355 + p 0 value + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/lang/Integer; method_41569 d method_41569 + m ()I getMinY e method_39583 + m ()Ljava/lang/String; method_49533 f method_49533 + m (IILjava/util/Optional;)V + p 1 sectionX + p 2 sectionZ + p 3 heights + m ()V +c net/minecraft/world/level/levelgen/blending/BlendingData$BiomeConsumer eab$a net/minecraft/class_6749$class_6853 +c net/minecraft/world/level/levelgen/blending/BlendingData$DensityConsumer eab$b net/minecraft/class_6749$class_6750 +c net/minecraft/world/level/levelgen/blending/BlendingData$HeightConsumer eab$c net/minecraft/class_6749$class_6751 +c net/minecraft/world/level/levelgen/blending/package-info eac net/minecraft/class_6753 +c net/minecraft/world/level/levelgen/blockpredicates/AllOfPredicate ead net/minecraft/class_6644 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35052 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38874 + p 1 level + p 2 pos + m (Ljava/util/List;)V + p 1 predicates + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/AnyOfPredicate eae net/minecraft/class_6645 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35053 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38875 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/BlockPredicate eaf net/minecraft/class_6646 + f Lcom/mojang/serialization/Codec; CODEC b field_35054 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ONLY_IN_AIR_PREDICATE c field_35696 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ONLY_IN_AIR_OR_WATER_PREDICATE d field_35697 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; type a method_38873 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesTag a method_39907 + p 0 tag + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; wouldSurvive a method_39009 + p 0 state + p 1 offset + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; not a method_38877 + p 0 predicate + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38878 + p 0 predicate1 + p 1 predicate2 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38880 + p 0 predicates + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; hasSturdyFace a method_39930 + p 0 direction + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceable a method_39010 + p 0 offset + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesTag a method_39908 + p 0 offset + p 1 tag + m (Lnet/minecraft/core/Vec3i;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_38881 + p 0 offset + p 1 blocks + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; hasSturdyFace a method_39909 + p 0 offset + p 1 direction + m (Lnet/minecraft/core/Vec3i;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_43288 + p 0 offset + p 1 blocks + m (Lnet/minecraft/core/Vec3i;[Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids a method_43289 + p 0 offset + p 1 fluids + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_43290 + p 0 blocks + m ([Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38882 + p 0 predicates + m ([Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids a method_43291 + p 0 fluids + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceable b method_38883 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38884 + p 0 predicate1 + p 1 predicate2 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38885 + p 0 predicates + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; solid b method_39584 + p 0 offset + m (Lnet/minecraft/core/Vec3i;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids b method_38886 + p 0 offset + p 1 fluids + m ([Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38887 + p 0 predicates + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; solid c method_39585 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks c method_39910 + p 0 blocks + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; noFluid c method_45543 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; noFluid d method_45544 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; insideWorld d method_39586 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; alwaysTrue e method_39011 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; unobstructed e method_60284 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; unobstructed f method_60285 + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType eag net/minecraft/class_6647 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_BLOCKS a field_35055 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_BLOCK_TAG b field_36282 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_FLUIDS c field_35056 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; HAS_STURDY_FACE d field_36283 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; SOLID e field_35698 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; REPLACEABLE f field_35057 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; WOULD_SURVIVE g field_35155 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; INSIDE_WORLD_BOUNDS h field_35699 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; ANY_OF i field_35058 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; ALL_OF j field_35059 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; NOT k field_35060 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; TRUE l field_35156 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; UNOBSTRUCTED m field_51788 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_38888 a method_38888 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; register a method_38889 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/CombiningPredicate eah net/minecraft/class_6648 + f Ljava/util/List; predicates e field_35061 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/CombiningPredicate;)Ljava/util/List; method_38890 a method_38890 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; codec a method_38891 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38892 a method_38892 + m (Ljava/util/List;)V + p 1 predicates +c net/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate eai net/minecraft/class_6847 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36284 + f Lnet/minecraft/core/Vec3i; offset e field_36285 + f Lnet/minecraft/core/Direction; direction f field_36286 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39912 a method_39912 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39911 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate;)Lnet/minecraft/core/Direction; method_39913 a method_39913 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate;)Lnet/minecraft/core/Vec3i; method_39914 b method_39914 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)V + p 1 offset + p 2 direction + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/InsideWorldBoundsPredicate eaj net/minecraft/class_6783 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35700 + f Lnet/minecraft/core/Vec3i; offset e field_35701 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39588 a method_39588 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39587 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/InsideWorldBoundsPredicate;)Lnet/minecraft/core/Vec3i; method_39589 a method_39589 + m (Lnet/minecraft/core/Vec3i;)V + p 1 offset + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingBlockTagPredicate eak net/minecraft/class_6848 + f Lnet/minecraft/tags/TagKey; tag a field_36287 + f Lcom/mojang/serialization/MapCodec; CODEC e field_36288 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingBlockTagPredicate;)Lnet/minecraft/tags/TagKey; method_39915 a method_39915 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39916 b method_39916 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/tags/TagKey;)V + p 1 offset + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingBlocksPredicate eal net/minecraft/class_6649 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35062 + f Lnet/minecraft/core/HolderSet; blocks e field_35063 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingBlocksPredicate;)Lnet/minecraft/core/HolderSet; method_38896 a method_38896 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38894 b method_38894 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/HolderSet;)V + p 1 offset + p 2 blocks + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingFluidsPredicate eam net/minecraft/class_6650 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35065 + f Lnet/minecraft/core/HolderSet; fluids e field_35066 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingFluidsPredicate;)Lnet/minecraft/core/HolderSet; method_38900 a method_38900 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38898 b method_38898 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/HolderSet;)V + p 1 offset + p 2 fluids + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/NotPredicate ean net/minecraft/class_6651 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35068 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; predicate e field_35069 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38902 a method_38902 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38901 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/NotPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_38903 a method_38903 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 predicate + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/ReplaceablePredicate eao net/minecraft/class_6652 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35071 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38905 b method_38905 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/SolidPredicate eap net/minecraft/class_6784 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35702 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39590 b method_39590 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/StateTestingPredicate eaq net/minecraft/class_6679 + f Lnet/minecraft/core/Vec3i; offset f field_35157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; stateTestingCodec a method_39013 + p 0 instance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39012 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_38893 + p 1 state + m (Lnet/minecraft/world/level/levelgen/blockpredicates/StateTestingPredicate;)Lnet/minecraft/core/Vec3i; method_39014 a method_39014 + m (Lnet/minecraft/core/Vec3i;)V + p 1 offset +c net/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate ear net/minecraft/class_6680 + f Lnet/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate; INSTANCE a field_35158 + f Lcom/mojang/serialization/MapCodec; CODEC e field_35159 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39015 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate; method_39016 g method_39016 + m ()V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/UnobstructedPredicate eas net/minecraft/class_9751 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51789 + f Lnet/minecraft/core/Vec3i; offset e comp_2779 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60286 a method_60286 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_60287 + p 1 level + p 2 pos + m ()Lnet/minecraft/core/Vec3i; offset g comp_2779 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate eat net/minecraft/class_6681 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35160 + f Lnet/minecraft/core/Vec3i; offset e field_35161 + f Lnet/minecraft/world/level/block/state/BlockState; state f field_35162 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39018 a method_39018 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39017 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate;)Lnet/minecraft/world/level/block/state/BlockState; method_39019 a method_39019 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate;)Lnet/minecraft/core/Vec3i; method_39020 b method_39020 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 offset + p 2 state + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/package-info eau net/minecraft/class_6653 +c net/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration eav net/minecraft/class_5869 + f Lcom/mojang/serialization/Codec; CODEC a field_29041 + f Lnet/minecraft/util/valueproviders/FloatProvider; verticalRotation b field_31479 + f Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration; shape c field_31480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35336 a method_35336 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration; method_35337 a method_35337 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35338 b method_35338 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; method_35339 c method_35339 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + p 7 verticalRotation + p 8 shape + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)V + p 1 config + p 2 verticalRotation + p 3 shape + m ()V +c net/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration eav$a net/minecraft/class_5869$class_6107 + f Lcom/mojang/serialization/Codec; CODEC a field_31481 + f Lnet/minecraft/util/valueproviders/FloatProvider; distanceFactor b field_31482 + f Lnet/minecraft/util/valueproviders/FloatProvider; thickness c field_31483 + f I widthSmoothness d field_31484 + f Lnet/minecraft/util/valueproviders/FloatProvider; horizontalRadiusFactor e field_31485 + f F verticalRadiusDefaultFactor f field_31486 + f F verticalRadiusCenterFactor g field_31487 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35340 a method_35340 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Float; method_35341 a method_35341 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Float; method_35342 b method_35342 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35343 c method_35343 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Integer; method_35344 d method_35344 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35345 e method_35345 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35346 f method_35346 + m (Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;ILnet/minecraft/util/valueproviders/FloatProvider;FF)V + p 1 distanceFactor + p 2 thickness + p 3 widthSmoothness + p 4 horizontalRadiusFactor + p 5 verticalRadiusDefaultFactor + p 6 verticalRadiusCenterFactor + m ()V +c net/minecraft/world/level/levelgen/carver/CanyonWorldCarver eaw net/minecraft/class_5870 + c A carver responsible for creating ravines, or canyons. + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_33959 + p 1 config + p 2 random + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;DFF)D updateVerticalRadius a method_33960 + p 1 config + p 2 random + p 3 verticalRadius + p 5 branchCount + p 6 currentBranch + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;)[F initWidthFactors a method_33966 + c Generates a random array full of width factors which are used to create the uneven walls of a ravine.\n@return An array of length {@code context.getGenDepth()}, populated with values between 1.0 and 2.0 inclusive. + p 1 context + p 2 config + p 3 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;JLnet/minecraft/world/level/levelgen/Aquifer;DDDFFFIIDLnet/minecraft/world/level/chunk/CarvingMask;)V doCarve a method_33961 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 seed + p 7 aquifer + p 8 x + p 10 y + p 12 z + p 14 thickness + p 15 yaw + p 16 pitch + p 17 branchIndex + p 18 branchCount + p 19 horizontalVerticalRatio + p 21 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_33962 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;[FDDDI)Z shouldSkip a method_33964 + p 1 context + p 2 widthFactors + p 3 relativeX + p 5 relativeY + p 7 relativeZ + p 9 y + m ([FLnet/minecraft/world/level/levelgen/carver/CarvingContext;DDDI)Z method_33965 a method_33965 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/carver/CarverConfiguration eax net/minecraft/class_5871 + f Lcom/mojang/serialization/MapCodec; CODEC d field_29054 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; y e field_31488 + f Lnet/minecraft/util/valueproviders/FloatProvider; yScale f field_31489 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; lavaLevel g field_31490 + f Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; debugSettings h field_29053 + f Lnet/minecraft/core/HolderSet; replaceable i field_38864 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33968 a method_33968 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/core/HolderSet; method_43292 a method_43292 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; method_36411 b method_36411 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35348 c method_35348 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35349 d method_35349 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35350 e method_35350 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Ljava/lang/Float; method_35351 f method_35351 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + m ()V +c net/minecraft/world/level/levelgen/carver/CarverDebugSettings eay net/minecraft/class_5872 + f Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; DEFAULT a field_29055 + f Lcom/mojang/serialization/Codec; CODEC b field_29056 + f Z debugMode c field_29057 + f Lnet/minecraft/world/level/block/state/BlockState; airState d field_29058 + f Lnet/minecraft/world/level/block/state/BlockState; waterState e field_33611 + f Lnet/minecraft/world/level/block/state/BlockState; lavaState f field_33612 + f Lnet/minecraft/world/level/block/state/BlockState; barrierState g field_33613 + m ()Z isDebugMode a method_33970 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33971 a method_33971 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_36412 + p 0 airState + p 1 waterState + p 2 lavaState + p 3 barrierState + m (ZLnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_33972 + p 0 debugMode + p 1 airState + m (ZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_36413 + p 0 debugMode + p 1 airState + p 2 waterState + p 3 lavaState + p 4 barrierState + m ()Lnet/minecraft/world/level/block/state/BlockState; getAirState b method_33973 + m ()Lnet/minecraft/world/level/block/state/BlockState; getWaterState c method_36414 + m ()Lnet/minecraft/world/level/block/state/BlockState; getLavaState d method_36415 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBarrierState e method_36416 + m (ZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 debugMode + p 2 airState + p 3 waterState + p 4 lavaState + p 5 barrierState + m ()V +c net/minecraft/world/level/levelgen/carver/CarvingContext eaz net/minecraft/class_5873 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_35299 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk b field_35703 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState c field_37706 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule d field_37707 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; topMaterial a method_39114 + p 1 biomeMapper + p 2 access + p 3 pos + p 4 hasFluid + m ()Lnet/minecraft/core/RegistryAccess; registryAccess c method_39115 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState d method_41570 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V + p 1 generator + p 2 registryAccess + p 3 level + p 4 noiseChunk + p 5 randomState + p 6 surfaceRule +c net/minecraft/world/level/levelgen/carver/CaveCarverConfiguration eba net/minecraft/class_6108 + f Lcom/mojang/serialization/Codec; CODEC a field_31491 + f Lnet/minecraft/util/valueproviders/FloatProvider; horizontalRadiusMultiplier b field_31492 + f Lnet/minecraft/util/valueproviders/FloatProvider; verticalRadiusMultiplier c field_31493 + f Lnet/minecraft/util/valueproviders/FloatProvider; floorLevel j field_31494 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35352 a method_35352 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35353 a method_35353 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35354 b method_35354 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35355 c method_35355 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; method_35356 d method_35356 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + p 7 horizontalRadiusMultiplier + p 8 verticalRadiusMultiplier + p 9 floorLevel + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 replaceable + p 6 horizontalRadiusMultiplier + p 7 verticalRadiusMultiplier + p 8 floorLevel + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 config + p 2 horizontalRadiusMultiplier + p 3 verticalRadiusMultiplier + p 4 floorLevel + m ()V +c net/minecraft/world/level/levelgen/carver/CaveWorldCarver ebb net/minecraft/class_2925 + c A carver which creates Minecraft's most common cave types. + m ()I getCaveBound a method_16577 + m (DDDD)Z shouldSkip a method_33974 + p 0 relative + p 2 relativeY + p 4 relativeZ + p 6 minrelativeY + m (DLnet/minecraft/world/level/levelgen/carver/CarvingContext;DDDI)Z method_33975 a method_33975 + m (Lnet/minecraft/util/RandomSource;)F getThickness a method_16576 + p 1 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;JLnet/minecraft/world/level/levelgen/Aquifer;DDDDDFFFIIDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)V createTunnel a method_12675 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 seed + p 7 aquifer + p 8 x + p 10 y + p 12 z + p 14 horizontalRadiusMultiplier + p 16 verticalRadiusMultiplier + p 18 thickness + p 19 yaw + p 20 pitch + p 21 branchIndex + p 22 branchCount + p 23 horizontalVerticalRatio + p 25 carvingMask + p 26 skipChecker + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_35357 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/Aquifer;DDDFDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)V createRoom a method_12674 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 aquifer + p 6 x + p 8 y + p 10 z + p 12 radius + p 13 horizontalVerticalRatio + p 15 carvingMask + p 16 skipChecker + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_35358 + p 1 config + p 2 random + m ()D getYScale b method_16578 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver ebc net/minecraft/class_2922 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25832 + f Lcom/mojang/serialization/Codec; CODEC b field_24828 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_26755 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; worldCarver d comp_330 + f Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; config e comp_331 + m ()Lnet/minecraft/world/level/levelgen/carver/WorldCarver; worldCarver a comp_330 + m (Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_12669 + p 1 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_12668 + p 1 context + p 2 chunk + p 3 biomeAccessor + p 4 random + p 5 aquifer + p 6 chunkPos + p 7 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver;)Lnet/minecraft/world/level/levelgen/carver/WorldCarver; method_28612 a method_28612 + m ()Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; config b comp_331 + m (Lnet/minecraft/world/level/levelgen/carver/WorldCarver;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)V + p 1 worldCarver + p 2 config + m ()V +c net/minecraft/world/level/levelgen/carver/NetherWorldCarver ebd net/minecraft/class_2934 + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z carveBlock a method_35359 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/carver/WorldCarver ebe net/minecraft/class_2939 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; CAVE a field_29060 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; NETHER_CAVE b field_13297 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; CANYON c field_13295 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_13301 + f Lnet/minecraft/world/level/block/state/BlockState; CAVE_AIR e field_13294 + f Lnet/minecraft/world/level/material/FluidState; WATER f field_13305 + f Lnet/minecraft/world/level/material/FluidState; LAVA g field_13296 + f Ljava/util/Set; liquids h field_13298 + f Lcom/mojang/serialization/MapCodec; configuredCodec i field_24831 + m (Lnet/minecraft/world/level/ChunkPos;DDIIF)Z canReach a method_33976 + p 0 chunkPos + p 1 x + p 3 z + p 5 branchIndex + p 6 branchCount + p 7 width + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_39116 a method_39116 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver; configured a method_28614 + p 1 config + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_12705 + p 1 config + p 2 random + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z canReplaceBlock a method_12709 + p 1 config + p 2 state + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_12702 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z carveBlock a method_16581 + c Carves a single block, replacing it with the appropriate state if possible, and handles replacing exposed dirt with grass. + p 1 context + p 2 config + p 3 chunk + p 4 biomeGetter + p 5 carvingMask + p 6 pos + c The position to carve at. The method does not mutate this position. + p 7 checkPos + c An additional mutable block position object to be used and modified by the method + p 8 aquifer + p 9 reachedSurface + c Set to true if the block carved was the surface, which is checked as being either grass or mycelium + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/Aquifer;DDDDDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)Z carveEllipsoid a method_33978 + c Carves blocks in an ellipsoid (more accurately a spheroid), defined by a center (x, y, z) position, with a horizontal and vertical radius (the semi-axes) + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 aquifer + p 6 x + p 8 y + p 10 z + p 12 horizontalRadius + p 14 verticalRadius + p 16 carvingMask + p 17 skipChecker + c Used to skip certain blocks within the carved region. + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;)Lnet/minecraft/world/level/block/state/BlockState; getCarveState a method_36418 + p 1 context + p 2 config + p 3 pos + p 4 aquifer + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/carver/WorldCarver;)Lnet/minecraft/world/level/levelgen/carver/WorldCarver; register a method_12704 + p 0 key + p 1 carver + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Z isDebugEnabled b method_33980 + p 0 config + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getDebugState b method_36417 + p 0 config + p 1 state + m ()Lcom/mojang/serialization/MapCodec; configuredCodec c method_28616 + m ()I getRange d method_12710 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker ebe$a net/minecraft/class_2939$class_5874 + c Used to define certain positions to skip or ignore when carving. +c net/minecraft/world/level/levelgen/carver/package-info ebf net/minecraft/class_6109 +c net/minecraft/world/level/levelgen/feature/AbstractHugeMushroomFeature ebg net/minecraft/class_4625 + m (IIII)I getTreeRadiusForHeight a method_23372 + p 2 height + p 3 foliageRadius + p 4 y + m (Lnet/minecraft/util/RandomSource;)I getTreeHeight a method_23377 + p 1 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)V makeCap a method_23375 + p 1 level + p 2 random + p 3 pos + p 4 treeHeight + p 5 mutablePos + p 6 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;ILnet/minecraft/core/BlockPos$MutableBlockPos;)V placeTrunk a method_23376 + p 1 level + p 2 random + p 3 pos + p 4 config + p 5 maxHeight + p 6 mutablePos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Z isValidPosition a method_23374 + p 1 level + p 2 pos + p 3 maxHeight + p 4 mutablePos + p 5 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BambooFeature ebh net/minecraft/class_2942 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TRUNK a field_13308 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_FINAL_LARGE b field_13311 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TOP_LARGE c field_13310 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TOP_SMALL d field_13309 + m (Lcom/mojang/serialization/Codec;)V + m ()V +c net/minecraft/world/level/levelgen/feature/BasaltColumnsFeature ebi net/minecraft/class_5153 + f Lcom/google/common/collect/ImmutableList; CANNOT_PLACE_ON a field_24132 + f I UNCLUSTERED_SIZE ao field_31498 + f I CLUSTERED_REACH b field_31495 + f I CLUSTERED_SIZE c field_31496 + f I UNCLUSTERED_REACH d field_31497 + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPlaceAt a method_30379 + p 0 level + p 1 seaLevel + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos$MutableBlockPos;I)Lnet/minecraft/core/BlockPos; findSurface a method_27094 + p 0 level + p 1 seaLevel + p 2 pos + p 3 distance + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos;)Z isAirOrLavaOcean a method_27095 + p 0 level + p 1 seaLevel + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos;II)Z placeColumn a method_27096 + p 1 level + p 2 seaLevel + p 3 pos + p 4 distance + p 5 reach + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Lnet/minecraft/core/BlockPos; findAir a method_27098 + p 0 level + p 1 pos + p 2 distance + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/BasaltPillarFeature ebj net/minecraft/class_4779 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeBaseHangOff a method_24434 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeHangOff b method_24435 + p 1 level + p 2 random + p 3 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlockBlobFeature ebk net/minecraft/class_2950 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/BlockColumnFeature ebl net/minecraft/class_6654 + m ([IIIZ)V truncate a method_38906 + p 0 layerHeights + p 1 totalHeight + p 2 currentHeight + p 3 prioritizeTip + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlockPileFeature ebm net/minecraft/class_3805 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z mayPlaceOn a method_16707 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration;)V tryPlaceBlock a method_16708 + p 1 level + p 2 pos + p 3 random + p 4 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlueIceFeature ebn net/minecraft/class_2954 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/BonusChestFeature ebo net/minecraft/class_2953 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ChorusPlantFeature ebp net/minecraft/class_2964 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ConfiguredFeature ebq net/minecraft/class_2975 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25833 + f Lcom/mojang/serialization/Codec; CODEC b field_24833 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_26756 + f Lnet/minecraft/world/level/levelgen/feature/Feature; feature d comp_332 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config e comp_333 + m ()Ljava/util/stream/Stream; getFeatures a method_30648 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_12862 + p 1 reader + p 2 chunkGenerator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;)Lnet/minecraft/world/level/levelgen/feature/Feature; method_28621 a method_28621 + m ()Lnet/minecraft/world/level/levelgen/feature/Feature; feature b comp_332 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config c comp_333 + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V + p 1 feature + p 2 config + m ()V +c net/minecraft/world/level/levelgen/feature/CoralClawFeature ebr net/minecraft/class_2972 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/CoralFeature ebs net/minecraft/class_2978 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z placeFeature a method_12863 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V method_40029 a method_40029 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V method_40030 a method_40030 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z placeCoralBlock b method_12864 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/CoralMushroomFeature ebt net/minecraft/class_2977 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/CoralTreeFeature ebu net/minecraft/class_2979 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/DeltaFeature ebv net/minecraft/class_5154 + f Lcom/google/common/collect/ImmutableList; CANNOT_REPLACE a field_24133 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_23883 + f D RIM_SPAWN_CHANCE c field_31501 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Z isClear a method_27103 + p 0 level + p 1 pos + p 2 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/DesertWellFeature ebw net/minecraft/class_3005 + f Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; IS_SAND a field_13450 + f Lnet/minecraft/world/level/block/state/BlockState; water ao field_13449 + f Lnet/minecraft/world/level/block/state/BlockState; sand b field_43324 + f Lnet/minecraft/world/level/block/state/BlockState; sandSlab c field_13452 + f Lnet/minecraft/world/level/block/state/BlockState; sandstone d field_13451 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;)V method_49235 a method_49235 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V placeSusSand b method_49883 + p 0 level + p 1 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/DiskFeature ebx net/minecraft/class_3011 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DiskConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/BlockPos$MutableBlockPos;)Z placeColumn a method_43160 + p 1 config + p 2 level + p 3 random + p 4 maxY + p 5 minY + p 6 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/DripstoneClusterFeature eby net/minecraft/class_5725 + m (IIIILnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)D getChanceOfStalagmiteOrStalactite a method_32997 + p 1 xRadius + p 2 zRadius + p 3 x + p 4 z + p 5 config + m (Lnet/minecraft/util/RandomSource;FFFF)F randomBetweenBiased a method_33003 + p 0 random + p 1 min + p 2 max + p 3 mean + p 4 deviation + m (Lnet/minecraft/util/RandomSource;IIFILnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)I getDripstoneHeight a method_33004 + p 1 random + p 2 x + p 3 z + p 4 chance + p 5 height + p 6 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canBeAdjacentToWater a method_32998 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isLava a method_33386 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;IIFDIFLnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)V placeColumn a method_33002 + p 1 level + p 2 random + p 3 pos + p 4 x + p 5 z + p 6 wetness + p 7 chance + p 9 height + p 10 density + p 11 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;)V replaceBlocksWithDripstoneBlocks a method_33001 + p 1 level + p 2 pos + p 3 thickness + p 4 direction + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z canPlacePool b method_33000 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/DripstoneUtils ebz net/minecraft/class_5726 + m (DDDD)D getDripstoneHeight a method_33005 + c The formula used to control dripstone columns radius.\n@see This tweet by Henrik. + p 0 radius + p 2 maxRadius + p 4 scale + p 6 minRadius + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)V method_33007 a method_33007 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isEmptyOrWater a method_33006 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;IZ)V growPointedDripstone a method_33010 + p 0 level + p 1 pos + p 2 direction + p 3 height + p 4 mergeTip + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;I)Z isCircleMostlyEmbeddedInStone a method_33009 + p 0 level + p 1 pos + p 2 radius + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDripstoneBaseOrLava a method_33387 + p 0 state + m (Lnet/minecraft/core/Direction;IZLjava/util/function/Consumer;)V buildBaseToTipColumn a method_33012 + p 0 direction + p 1 height + p 2 mergeTip + p 3 blockSetter + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)Lnet/minecraft/world/level/block/state/BlockState; createPointedDripstone a method_33013 + p 0 direction + p 1 dripstoneThickness + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isEmptyOrWaterOrLava b method_33388 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDripstoneBase b method_33011 + p 0 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z placeDripstoneBlockIfPossible c method_33008 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyOrWater c method_33014 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isNeitherEmptyNorWater d method_40074 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyOrWaterOrLava e method_33389 + p 0 state + m ()V +c net/minecraft/world/level/levelgen/feature/EndGatewayFeature eca net/minecraft/class_3029 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;Lnet/minecraft/core/BlockPos;)V method_18037 a method_18037 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/EndIslandFeature ecb net/minecraft/class_3026 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/EndPlatformFeature ecc net/minecraft/class_9829 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Z)V createEndPlatform a method_61118 + p 0 level + p 1 pos + p 2 dropBlocks + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/EndPodiumFeature ecd net/minecraft/class_3033 + f I PODIUM_RADIUS a field_31503 + f Lnet/minecraft/core/BlockPos; END_PODIUM_LOCATION ao field_13600 + f Z active ap field_13599 + f I PODIUM_PILLAR_HEIGHT b field_31504 + f I RIM_RADIUS c field_31505 + f F CORNER_ROUNDING d field_31506 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getLocation a method_51862 + p 0 pos + m (Z)V + p 1 active + m ()V +c net/minecraft/world/level/levelgen/feature/Feature ece net/minecraft/class_3031 + f Lnet/minecraft/world/level/levelgen/feature/Feature; MULTIFACE_GROWTH A field_28428 + f Lnet/minecraft/world/level/levelgen/feature/Feature; UNDERWATER_MAGMA B field_28849 + f Lnet/minecraft/world/level/levelgen/feature/Feature; MONSTER_ROOM C field_13579 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLUE_ICE D field_13560 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ICEBERG E field_13544 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FOREST_ROCK F field_13584 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DISK G field_13509 + f Lnet/minecraft/world/level/levelgen/feature/Feature; LAKE H field_13573 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ORE I field_13517 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_PLATFORM J field_52289 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_SPIKE K field_13522 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_ISLAND L field_13574 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_GATEWAY M field_13564 + f Lnet/minecraft/world/level/levelgen/feature/SeagrassFeature; SEAGRASS N field_13567 + f Lnet/minecraft/world/level/levelgen/feature/Feature; KELP O field_13535 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_TREE P field_13525 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_MUSHROOM Q field_13585 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_CLAW R field_13546 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SEA_PICKLE S field_13575 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SIMPLE_BLOCK T field_13518 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BAMBOO U field_13540 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_FUNGUS V field_22185 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NETHER_FOREST_VEGETATION W field_22186 + f Lnet/minecraft/world/level/levelgen/feature/Feature; WEEPING_VINES X field_22187 + f Lnet/minecraft/world/level/levelgen/feature/Feature; TWISTING_VINES Y field_23088 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BASALT_COLUMNS Z field_23884 + f Lcom/mojang/serialization/MapCodec; configuredCodec a field_24837 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DELTA_FEATURE aa field_23885 + f Lnet/minecraft/world/level/levelgen/feature/Feature; REPLACE_BLOBS ab field_23886 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FILL_LAYER ac field_19201 + f Lnet/minecraft/world/level/levelgen/feature/BonusChestFeature; BONUS_CHEST ad field_13526 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BASALT_PILLAR ae field_22188 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SCATTERED_ORE af field_29061 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_SELECTOR ag field_13593 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SIMPLE_RANDOM_SELECTOR ah field_13555 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_BOOLEAN_SELECTOR ai field_13550 + f Lnet/minecraft/world/level/levelgen/feature/Feature; GEODE aj field_27312 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DRIPSTONE_CLUSTER ak field_28203 + f Lnet/minecraft/world/level/levelgen/feature/Feature; LARGE_DRIPSTONE al field_28204 + f Lnet/minecraft/world/level/levelgen/feature/Feature; POINTED_DRIPSTONE am field_28205 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SCULK_PATCH an field_37708 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NO_OP e field_21590 + f Lnet/minecraft/world/level/levelgen/feature/Feature; TREE f field_24134 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FLOWER g field_21219 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NO_BONEMEAL_FLOWER h field_26361 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_PATCH i field_21220 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLOCK_PILE j field_21221 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SPRING k field_13513 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CHORUS_PLANT l field_13552 + f Lnet/minecraft/world/level/levelgen/feature/Feature; REPLACE_SINGLE_BLOCK m field_33615 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VOID_START_PLATFORM n field_13591 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DESERT_WELL o field_13592 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FOSSIL p field_13516 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_RED_MUSHROOM q field_13571 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_BROWN_MUSHROOM r field_13531 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ICE_SPIKE s field_13562 + f Lnet/minecraft/world/level/levelgen/feature/Feature; GLOWSTONE_BLOB t field_13568 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FREEZE_TOP_LAYER u field_13539 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VINES v field_13559 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLOCK_COLUMN w field_35072 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VEGETATION_PATCH x field_29250 + f Lnet/minecraft/world/level/levelgen/feature/Feature; WATERLOGGED_VEGETATION_PATCH y field_29251 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ROOT_SYSTEM z field_29252 + m ()Lcom/mojang/serialization/MapCodec; configuredCodec a method_28627 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/function/Predicate; isReplaceable a method_36999 + p 0 blockTag + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/block/state/BlockState;)Z method_36997 a method_36997 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isGrassOrDirt a method_27368 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelWriter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_13153 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V markAboveForPostProcessing a method_37256 + c If the above two blocks are not air, marks them for post-processing.\nThis is used to prevent floating grass during the generation of features that carve blocks out of the terrain, after other plant-like blocks have generated (such as lake features). + p 1 level + p 2 basePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)V safeSetBlock a method_36998 + p 1 level + p 2 pos + p 3 state + p 4 oldState + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStone a method_23395 + p 0 state + m (Lnet/minecraft/world/level/levelgen/feature/FeaturePlaceContext;)Z place a method_13151 + c Places the given feature at the given location.\nDuring world generation, features are provided with a 3x3 region of chunks, centered on the chunk being generated, that they can safely generate into. + p 1 context + c A context object with a reference to the level and the position the feature is being placed at + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; method_28629 a method_28629 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_40163 + p 1 config + p 2 level + p 3 chunkGenerator + p 4 random + p 5 origin + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/feature/Feature;)Lnet/minecraft/world/level/levelgen/feature/Feature; register a method_13150 + p 0 key + p 1 value + m (Ljava/util/function/Function;Lnet/minecraft/core/BlockPos;)Z isAdjacentToAir a method_33981 + c @return {@code true} if any of the six adjacent blocks to the block at {@code pos} are air. + p 0 adjacentStateAccessor + c An accessor for the adjacent blocks. Essentially {@code level::getBlockState}. + p 1 pos + m (Ljava/util/function/Function;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z checkNeighbors a method_33982 + c @return {@code true} if any of the six adjacent blocks to the block at {@code pos} return {@code true} to the given filter. + p 0 adjacentStateAccessor + c An accessor for the adjacent blocks. Essentially {@code level::getBlockState}. + p 1 pos + p 2 filter + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDirt b method_23396 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker ecf net/minecraft/class_6785 + f Lorg/slf4j/Logger; LOGGER a field_35704 + f Lcom/google/common/cache/LoadingCache; data b field_35705 + m ()V clearCounts a method_39597 + m (Lnet/minecraft/server/level/ServerLevel;)V chunkDecorated a method_39598 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Ljava/util/Optional;)V featurePlaced a method_39599 + p 0 level + p 1 feature + p 2 topFeature + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData;)V method_39600 a method_39600 + m (Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData;Ljava/lang/Integer;)Ljava/lang/Integer; method_39601 a method_39601 + m (Ljava/lang/String;Ljava/lang/Integer;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData;Ljava/lang/Integer;)V method_39602 a method_39602 + m ()V logCounts b method_39603 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$1 ecf$1 net/minecraft/class_6785$1 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData; load a method_39604 + p 1 level + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData ecf$a net/minecraft/class_6785$class_6786 + f Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; feature a comp_281 + f Ljava/util/Optional; topFeature b comp_282 + m ()Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; feature a comp_281 + m ()Ljava/util/Optional; topFeature b comp_282 + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Ljava/util/Optional;)V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData ecf$b net/minecraft/class_6785$class_6787 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; featureData a comp_283 + f Lorg/apache/commons/lang3/mutable/MutableInt; chunksWithFeatures b comp_284 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; featureData a comp_283 + m ()Lorg/apache/commons/lang3/mutable/MutableInt; chunksWithFeatures b comp_284 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lorg/apache/commons/lang3/mutable/MutableInt;)V +c net/minecraft/world/level/levelgen/feature/FeaturePlaceContext ecg net/minecraft/class_5821 + f Ljava/util/Optional; topFeature a field_34697 + f Lnet/minecraft/world/level/WorldGenLevel; level b field_28769 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c field_28770 + f Lnet/minecraft/util/RandomSource; random d field_28771 + f Lnet/minecraft/core/BlockPos; origin e field_28772 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f field_28773 + m ()Ljava/util/Optional; topFeature a method_38427 + m ()Lnet/minecraft/world/level/WorldGenLevel; level b method_33652 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c method_33653 + m ()Lnet/minecraft/util/RandomSource; random d method_33654 + m ()Lnet/minecraft/core/BlockPos; origin e method_33655 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f method_33656 + m (Ljava/util/Optional;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V + p 1 topFeature + p 2 level + p 3 chunkGenerator + p 4 random + p 5 origin + p 6 config +c net/minecraft/world/level/levelgen/feature/FillLayerFeature ech net/minecraft/class_4278 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/FossilFeature eci net/minecraft/class_3044 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)I countEmptyCorners a method_34295 + p 0 level + p 1 boundingBox + m (Lnet/minecraft/world/level/WorldGenLevel;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/BlockPos;)V method_34296 a method_34296 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration ecj net/minecraft/class_5919 + f Lcom/mojang/serialization/Codec; CODEC a field_29253 + f Ljava/util/List; fossilStructures b field_29254 + f Ljava/util/List; overlayStructures c field_29255 + f Lnet/minecraft/core/Holder; fossilProcessors d field_29256 + f Lnet/minecraft/core/Holder; overlayProcessors e field_29257 + f I maxEmptyCornersAllowed f field_29258 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34299 a method_34299 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/lang/Integer; method_34300 a method_34300 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Lnet/minecraft/core/Holder; method_34302 b method_34302 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Lnet/minecraft/core/Holder; method_34304 c method_34304 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/util/List; method_34305 d method_34305 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/util/List; method_34306 e method_34306 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;I)V + p 1 fossilStructures + p 2 overlayStructures + p 3 fossilProcessors + p 4 overlayProcessors + p 5 maxEmptyCornersAllowed + m ()V +c net/minecraft/world/level/levelgen/feature/GeodeFeature eck net/minecraft/class_5588 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_27313 + m (Lcom/mojang/serialization/Codec;)V + m ()V +c net/minecraft/world/level/levelgen/feature/GlowstoneFeature ecl net/minecraft/class_3047 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/HugeBrownMushroomFeature ecm net/minecraft/class_3059 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/HugeFungusConfiguration ecn net/minecraft/class_4780 + f Lcom/mojang/serialization/Codec; CODEC a field_24838 + f Lnet/minecraft/world/level/block/state/BlockState; validBaseState b field_22435 + f Lnet/minecraft/world/level/block/state/BlockState; stemState c field_22191 + f Lnet/minecraft/world/level/block/state/BlockState; hatState d field_22192 + f Lnet/minecraft/world/level/block/state/BlockState; decorState e field_22193 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceableBlocks f field_44709 + f Z planted g field_22194 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28631 a method_28631 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Ljava/lang/Boolean; method_28630 a method_28630 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_51528 b method_51528 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28632 c method_28632 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28633 d method_28633 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28634 e method_28634 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28635 f method_28635 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Z)V + p 1 validBaseState + p 2 stemState + p 3 hatState + p 4 decorState + p 5 replaceableBlocks + p 6 planted + m ()V +c net/minecraft/world/level/levelgen/feature/HugeFungusFeature eco net/minecraft/class_4781 + f F HUGE_PROBABILITY a field_31507 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos$MutableBlockPos;FFF)V placeHatBlock a method_24439 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 decorationChance + p 6 hatChance + p 7 weepingVineChance + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V placeHatDropBlock a method_24441 + p 1 level + p 2 random + p 3 pos + p 4 state + p 5 weepingVines + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos;IZ)V placeStem a method_24440 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 height + p 6 huge + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Z)Z isReplaceable a method_24866 + p 0 level + p 1 pos + p 2 config + p 3 checkConfig + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;)V tryPlaceWeepingVines a method_24442 + p 0 pos + p 1 level + p 2 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos;IZ)V placeHat b method_24443 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 height + p 6 huge + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/HugeRedMushroomFeature ecp net/minecraft/class_3066 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/IceSpikeFeature ecq net/minecraft/class_3070 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/IcebergFeature ecr net/minecraft/class_3074 + c This feature generates part of the icebergs found in frozen oceans.\nSpecifically, it generates tall, triangular prism icebergs, and "donut" or torus shaped icebergs.\nOther icebergs are generated by the frozen ocean surface builder instead. + m (III)I getEllipseC a method_13416 + p 1 y + p 2 height + p 3 minorAxis + m (IILnet/minecraft/core/BlockPos;IID)D signedDistanceEllipse a method_13424 + c Given an ellipse defined by the equation {@code (x/a)^2 + (y/b)^2 = 1}, where {@code a} and {@code b} are the semi-major and semi-minor axes respectively, this computes the distance between an arbitrary point and the ellipse.\nThe point (x, y) is within the ellipse if the return value is < 0, outside the ellipse if the return value is > 0 and exactly on the edge of the ellipse if the return value is 0. + p 1 x + c The x position of the point to measure the distance to. + p 2 z + c The z position of the point to measure distance to. + p 3 center + c The center point of the ellipse. + p 4 majorRadius + c The semi-major axis ({@code a}) of the ellipse. + p 5 minorRadius + c The semi-minor axis ({@code b}) of the ellipse + p 6 angle + c The rotation angle of the ellipse (the angle from the positive horizontal axis to the ellipse's major axis). + m (IILnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;)D signedDistanceCircle a method_13421 + p 1 x + p 2 z + p 3 center + p 4 radius + p 5 random + m (IILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;ZDLnet/minecraft/core/BlockPos;II)V carve a method_13415 + p 1 radius + p 2 localY + p 3 pos + p 4 level + p 5 placeWater + p 6 perpendicularAngle + p 8 ellipseOrigin + p 9 majorRadius + p 10 minorRadius + m (Lnet/minecraft/util/RandomSource;III)I heightDependentRadiusRound a method_13419 + p 1 random + p 2 y + p 3 height + p 4 majorAxis + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;IILnet/minecraft/core/BlockPos;ZIDI)V generateCutOut a method_13428 + p 1 random + p 2 level + p 3 majorAxis + p 4 height + p 5 pos + p 6 elliptical + p 7 ellipseRadius + p 8 angle + p 10 minorAxis + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z belowIsAir a method_13414 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;IIIIIIZIDZLnet/minecraft/world/level/block/state/BlockState;)V generateIcebergBlock a method_13426 + p 1 level + p 2 random + p 3 pos + p 4 height + p 5 localX + p 6 localY + p 7 localZ + p 8 radius + p 9 majorRadius + p 10 elliptical + p 11 minorRadius + p 12 angle + p 14 placeSnow + p 15 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V removeFloatingSnowLayer a method_13422 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IIZI)V smooth a method_13418 + c Smooths out an iceberg by removing blocks which either have air below, or non-iceberg blocks on three or more horizontal sides, with air. + p 1 level + p 2 pos + p 3 majorRadius + p 4 height + p 5 elliptical + p 6 minorRadius + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;IIZZLnet/minecraft/world/level/block/state/BlockState;)V setIcebergBlock a method_13425 + p 1 pos + p 2 level + p 3 random + p 4 heightRemaining + p 5 height + p 6 elliptical + p 7 placeSnow + p 8 state + m (III)I heightDependentRadiusEllipse b method_13417 + c Given a horizontal projection of an iceberg, defines the three-dimensional extrusion by defining a radius at any given y value.\nThe radius curve is a parabolic function, resulting in more rounded iceberg peaks. + p 1 y + c The y value to calculate a radius at. + p 2 height + c The maximum height of the iceberg. + p 3 maxRadius + c The maximum radius of the iceberg, at the horizontal. + m (Lnet/minecraft/util/RandomSource;III)I heightDependentRadiusSteep b method_13427 + c Given a horizontal projection of an iceberg, defines the three-dimensional extrusion by defining a radius at any given y value.\nThe radius curve is a linear function, with a slope that is both dependent on the {@code majorAxis} and randomly varies, which results in steep conical icebergs. + p 1 random + c A random to use to vary the slope of the falloff curve. + p 2 y + c The y value to calculate a radius at. + p 3 height + c The maximum height of the iceberg. + p 4 maxRadius + c The maximum radius radius of the iceberg, at the horizontal. + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isIcebergState c method_13420 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/KelpFeature ecs net/minecraft/class_3081 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/LakeFeature ect net/minecraft/class_3085 + f Lnet/minecraft/world/level/block/state/BlockState; AIR a field_13668 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canReplaceBlock c method_39605 + p 1 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/LakeFeature$Configuration ect$a net/minecraft/class_3085$class_6788 + f Lcom/mojang/serialization/Codec; CODEC a field_35706 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fluid b comp_285 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; barrier c comp_286 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fluid a comp_285 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39606 a method_39606 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; barrier b comp_286 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature ecu net/minecraft/class_5727 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/Column$Range;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)V placeDebugMarkers a method_35360 + p 1 level + p 2 pos + p 3 range + p 4 windOffsetter + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/util/RandomSource;ILnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$LargeDripstone; makeDripstone a method_33016 + p 0 root + p 1 pointingUp + p 2 random + p 3 radius + p 4 bluntnessBase + p 5 scaleBase + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$LargeDripstone ecu$a net/minecraft/class_5727$class_5728 + f Lnet/minecraft/core/BlockPos; root a field_28206 + f Z pointingUp b field_28207 + f I radius c field_28208 + f D bluntness d field_28209 + f D scale e field_28210 + m ()I getHeight a method_33017 + m (F)I getHeightAtRadius a method_33018 + p 1 radius + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)V placeBlocks a method_33020 + p 1 level + p 2 random + p 3 windOffsetter + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)Z moveBackUntilBaseIsInsideStoneAndShrinkRadiusIfNecessary a method_33019 + p 1 level + p 2 windOffsetter + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Z isSuitableForWind a method_33025 + p 1 config + m ()I getMinY b method_35361 + m ()I getMaxY c method_35362 + m (Lnet/minecraft/core/BlockPos;ZIDD)V + p 1 root + p 2 pointingUp + p 3 radius + p 4 bluntness + p 6 scale +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter ecu$b net/minecraft/class_5727$class_5729 + f I originY a field_28211 + f Lnet/minecraft/world/phys/Vec3; windSpeed b field_28212 + m ()Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter; noWind a method_33032 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; offset a method_33031 + p 1 pos + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 originY + p 2 random + p 3 magnitude + m ()V +c net/minecraft/world/level/levelgen/feature/MonsterRoomFeature ecv net/minecraft/class_3103 + f Lorg/slf4j/Logger; LOGGER a field_13700 + f [Lnet/minecraft/world/entity/EntityType; MOBS b field_13699 + f Lnet/minecraft/world/level/block/state/BlockState; AIR c field_13698 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/EntityType; randomEntityId a method_13547 + p 1 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/MultifaceGrowthFeature ecw net/minecraft/class_5779 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;Lnet/minecraft/util/RandomSource;Ljava/util/List;)Z placeGrowthIfPossible a method_33391 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 random + p 5 directions + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isAirOrWater c method_33395 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/NetherForestVegetationFeature ecx net/minecraft/class_4782 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/NoOpFeature ecy net/minecraft/class_4715 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/OreFeature ecz net/minecraft/class_3122 + m (Lnet/minecraft/util/RandomSource;F)Z shouldSkipAirCheck a method_33984 + p 0 random + p 1 chance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;DDDDDDIIIII)Z doPlace a method_13629 + p 1 level + p 2 random + p 3 config + p 4 minX + p 6 maxX + p 8 minZ + p 10 maxZ + p 12 minY + p 14 maxY + p 16 x + p 17 y + p 18 z + p 19 width + p 20 height + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPlaceOre a method_33983 + p 0 state + p 1 adjacentStateAccessor + p 2 random + p 3 config + p 4 targetState + p 5 mutablePos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/PointedDripstoneFeature eda net/minecraft/class_5730 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)V createPatchOfDripstoneBlocks a method_33034 + p 0 level + p 1 random + p 2 pos + p 3 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getTipDirection a method_39175 + p 0 level + p 1 pos + p 2 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/RandomBooleanSelectorFeature edb net/minecraft/class_3135 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RandomPatchFeature edc net/minecraft/class_4628 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RandomSelectorFeature edd net/minecraft/class_3150 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ReplaceBlobsFeature ede net/minecraft/class_5155 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/core/BlockPos; findTarget a method_27107 + p 0 level + p 1 topPos + p 2 block + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/ReplaceBlockFeature edf net/minecraft/class_3152 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RootSystemFeature edg net/minecraft/class_5921 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos;)Z placeDirtAndTree a method_34308 + p 0 level + p 1 chunkGenerator + p 2 config + p 3 random + p 4 mutablePos + p 5 basePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/BlockPos$MutableBlockPos;)V placeRootedDirt a method_34311 + p 0 level + p 1 config + p 2 random + p 3 x + p 4 z + p 5 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)V placeRoots a method_34312 + p 0 level + p 1 config + p 2 random + p 3 basePos + p 4 mutablePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/core/BlockPos;)Z spaceForTree a method_34310 + p 0 level + p 1 config + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;II)Z isAllowedTreeSpace a method_36419 + p 0 state + p 1 y + p 2 allowedVerticalWater + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z method_34307 a method_34307 + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;)V placeDirt a method_39918 + p 0 pos + p 1 maxY + p 2 level + p 3 config + p 4 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/ScatteredOreFeature edh net/minecraft/class_5875 + f I MAX_DIST_FROM_ORIGIN a field_31515 + m (Lnet/minecraft/util/RandomSource;I)I getRandomPlacementInOneAxisRelativeToOrigin a method_33986 + p 1 random + p 2 magnitude + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;I)V offsetTargetPos a method_33985 + p 1 mutablePos + p 2 random + p 3 pos + p 4 magnitude + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/SculkPatchFeature edi net/minecraft/class_7140 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canSpreadFrom a method_41571 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_41572 b method_41572 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/SeaPickleFeature edj net/minecraft/class_3160 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SeagrassFeature edk net/minecraft/class_3168 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SimpleBlockFeature edl net/minecraft/class_3173 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SimpleRandomSelectorFeature edm net/minecraft/class_3177 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SnowAndFreezeFeature edn net/minecraft/class_3183 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SpikeFeature edo net/minecraft/class_3310 + f I NUMBER_OF_SPIKES a field_31516 + f I SPIKE_DISTANCE b field_31517 + f Lcom/google/common/cache/LoadingCache; SPIKE_CACHE c field_14309 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)V placeSpike a method_15888 + c Places the End Spike in the world. Also generates the obsidian tower. + p 1 level + p 2 random + p 3 config + p 4 spike + m (Lnet/minecraft/world/level/WorldGenLevel;)Ljava/util/List; getSpikesForLevel a method_14506 + p 0 level + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike edo$a net/minecraft/class_3310$class_3181 + f Lcom/mojang/serialization/Codec; CODEC a field_24841 + f I centerX b field_13836 + f I centerZ c field_13834 + f I radius d field_13833 + f I height e field_13831 + f Z guarded f field_13832 + f Lnet/minecraft/world/phys/AABB; topBoundingBox g field_13835 + m ()I getCenterX a method_13966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28649 a method_28649 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Boolean; method_28648 a method_28648 + m (Lnet/minecraft/core/BlockPos;)Z isCenterWithinChunk a method_13962 + p 1 pos + m ()I getCenterZ b method_13967 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28650 b method_28650 + m ()I getRadius c method_13963 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28651 c method_28651 + m ()I getHeight d method_13964 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28652 d method_28652 + m ()Z isGuarded e method_13965 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28653 e method_28653 + m ()Lnet/minecraft/world/phys/AABB; getTopBoundingBox f method_13968 + m (IIIIZ)V + p 1 centerX + p 2 centerZ + p 3 radius + p 4 height + p 5 guarded + m ()V +c net/minecraft/world/level/levelgen/feature/SpikeFeature$SpikeCacheLoader edo$b net/minecraft/class_3310$class_3311 + m (Ljava/lang/Long;)Ljava/util/List; load a method_14507 + m ()V +c net/minecraft/world/level/levelgen/feature/SpringFeature edp net/minecraft/class_3185 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/TreeFeature edq net/minecraft/class_2944 + f I BLOCK_UPDATE_FLAGS a field_31519 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; updateLeaves a method_23380 + p 0 level + p 1 box + p 2 rootPositions + p 3 trunkPositions + p 4 foliagePositions + m (Lnet/minecraft/world/level/LevelSimulatedReader;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)I getMaxFreeTreeHeight a method_29963 + p 1 level + p 2 trunkHeight + p 3 topPosition + p 4 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z doPlace a method_12775 + p 1 level + p 2 random + p 3 pos + p 4 rootBlockSetter + p 5 trunkBlockSetter + p 6 foliageBlockSetter + p 7 config + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/lang/Boolean; method_35363 a method_35363 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;)V method_27372 a method_27372 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator;)V method_23381 a method_23381 + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_49238 a method_49238 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/core/BlockPos; method_43293 a method_43293 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isAirOrLeaves b method_16420 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelWriter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlockKnownShape b method_12774 + p 0 level + p 1 pos + p 2 state + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_43162 b method_43162 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z validTreePos c method_27371 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51179 c method_51179 + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_35364 c method_35364 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isVine d method_16416 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16417 d method_16417 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_23384 e method_23384 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/TreeFeature$1 edq$1 net/minecraft/class_2944$1 + f Ljava/util/Set; val$foliage a field_42838 + f Lnet/minecraft/world/level/WorldGenLevel; val$level b field_42839 + m (Lnet/minecraft/world/level/levelgen/feature/TreeFeature;Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;)V +c net/minecraft/world/level/levelgen/feature/TwistingVinesFeature edr net/minecraft/class_4953 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V placeWeepingVinesColumn a method_25987 + p 0 level + p 1 random + p 2 pos + p 3 length + p 4 minAge + p 5 maxAge + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z findFirstAirBlockAboveGround a method_27220 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isInvalidPlacementLocation a method_25986 + p 0 level + p 1 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/UnderwaterMagmaFeature eds net/minecraft/class_5834 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;Lnet/minecraft/core/BlockPos;)Z method_33766 a method_33766 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isWaterOrAir a method_33763 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/util/OptionalInt; getFloorY a method_33765 + p 0 level + p 1 pos + p 2 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z isValidPlacement b method_33764 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)I method_33767 c method_33767 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33769 c method_33769 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z method_33768 d method_33768 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33770 d method_33770 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/VegetationPatchFeature edt net/minecraft/class_5922 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;II)Ljava/util/Set; placeGroundPatch a method_34316 + p 1 level + p 2 config + p 3 random + p 4 pos + p 5 state + p 6 xRadius + p 7 zRadius + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeVegetation a method_34315 + p 1 level + p 2 config + p 3 chunkGenerator + p 4 random + p 5 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Ljava/util/function/Predicate;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Z placeGround a method_34317 + p 1 level + p 2 config + p 3 replaceableblocks + p 4 random + p 5 mutablePos + p 6 maxDistance + m (Lnet/minecraft/world/level/levelgen/feature/FeaturePlaceContext;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/util/RandomSource;Ljava/util/Set;II)V distributeVegetation a method_34318 + p 1 context + p 2 level + p 3 config + p 4 random + p 5 possiblePositions + p 6 xRadius + p 7 zRadius + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40164 a method_40164 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_34321 c method_34321 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/VinesFeature edu net/minecraft/class_3219 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/VoidStartPlatformFeature edv net/minecraft/class_3217 + f Lnet/minecraft/core/BlockPos; PLATFORM_OFFSET a field_19241 + f Lnet/minecraft/world/level/ChunkPos; PLATFORM_ORIGIN_CHUNK b field_19242 + f I PLATFORM_RADIUS c field_31520 + f I PLATFORM_RADIUS_CHUNKS d field_31521 + m (IIII)I checkerboardDistance a method_20403 + c Returns the Manhattan distance between the two points. + p 0 firstX + p 1 firstZ + p 2 secondX + p 3 secondZ + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/WaterloggedVegetationPatchFeature edw net/minecraft/class_5923 + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z isExposed a method_34323 + p 0 level + p 1 positions + p 2 pos + p 3 mutablePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;)Z isExposedDirection a method_34322 + p 0 level + p 1 pos + p 2 mutablePos + p 3 direction + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/WeepingVinesFeature edx net/minecraft/class_4784 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_22196 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V placeWeepingVinesColumn a method_24450 + p 0 level + p 1 random + p 2 pos + p 3 height + p 4 minAge + p 5 maxAge + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeRoofNetherWart a method_24451 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeRoofWeepingVines b method_24452 + p 1 level + p 2 random + p 3 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/WeightedPlacedFeature edy net/minecraft/class_3226 + f Lcom/mojang/serialization/Codec; CODEC a field_24864 + f Lnet/minecraft/core/Holder; feature b field_14013 + f F chance c field_14011 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28669 a method_28669 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_14271 + p 1 level + p 2 chunkGenerator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Ljava/lang/Float; method_28668 a method_28668 + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Lnet/minecraft/core/Holder; method_28670 b method_28670 + m (Lnet/minecraft/core/Holder;F)V + p 1 feature + p 2 chance + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration edz net/minecraft/class_6655 + f Lcom/mojang/serialization/Codec; CODEC a field_35073 + f Ljava/util/List; layers b comp_143 + f Lnet/minecraft/core/Direction; direction c comp_144 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedPlacement d comp_168 + f Z prioritizeTip e comp_146 + m ()Ljava/util/List; layers a comp_143 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration$Layer; layer a method_38908 + p 0 height + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38909 a method_38909 + m ()Lnet/minecraft/core/Direction; direction b comp_144 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration; simple b method_38910 + p 0 height + p 1 state + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedPlacement c comp_168 + m ()Z prioritizeTip d comp_146 + m (Ljava/util/List;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Z)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration$Layer edz$a net/minecraft/class_6655$class_6656 + f Lcom/mojang/serialization/Codec; CODEC a field_35074 + f Lnet/minecraft/util/valueproviders/IntProvider; height b comp_147 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; state c comp_148 + m ()Lnet/minecraft/util/valueproviders/IntProvider; height a comp_147 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38911 a method_38911 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; state b comp_148 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration eea net/minecraft/class_4634 + f Lcom/mojang/serialization/Codec; CODEC a field_24873 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; stateProvider b field_21229 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28683 a method_28683 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 stateProvider + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockStateConfiguration eeb net/minecraft/class_2963 + f Lcom/mojang/serialization/Codec; CODEC a field_24874 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_13356 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/BlockStateConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28684 a method_28684 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration eec net/minecraft/class_5156 + f Lcom/mojang/serialization/Codec; CODEC a field_24877 + f Lnet/minecraft/util/valueproviders/IntProvider; reach b field_25841 + f Lnet/minecraft/util/valueproviders/IntProvider; height c field_25842 + m ()Lnet/minecraft/util/valueproviders/IntProvider; reach a method_30391 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30393 a method_30393 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30392 a method_30392 + m ()Lnet/minecraft/util/valueproviders/IntProvider; height b method_30394 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30395 b method_30395 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 reach + p 2 height + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/CountConfiguration eed net/minecraft/class_2984 + f Lcom/mojang/serialization/Codec; CODEC a field_24878 + f Lnet/minecraft/util/valueproviders/IntProvider; count b field_13385 + m ()Lnet/minecraft/util/valueproviders/IntProvider; count a method_30396 + m (I)V + p 1 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration eee net/minecraft/class_5158 + f Lcom/mojang/serialization/Codec; CODEC a field_24881 + f Lnet/minecraft/world/level/block/state/BlockState; contents b field_23895 + f Lnet/minecraft/world/level/block/state/BlockState; rim c field_23896 + f Lnet/minecraft/util/valueproviders/IntProvider; size d field_25843 + f Lnet/minecraft/util/valueproviders/IntProvider; rimSize e field_25844 + m ()Lnet/minecraft/world/level/block/state/BlockState; contents a method_30397 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30399 a method_30399 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30398 a method_30398 + m ()Lnet/minecraft/world/level/block/state/BlockState; rim b method_30400 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30401 b method_30401 + m ()Lnet/minecraft/util/valueproviders/IntProvider; size c method_30402 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28709 c method_28709 + m ()Lnet/minecraft/util/valueproviders/IntProvider; rimSize d method_30403 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28710 d method_28710 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 contents + p 2 rim + p 3 size + p 4 rimSize + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DiskConfiguration eef net/minecraft/class_6577 + f Lcom/mojang/serialization/Codec; CODEC a field_34698 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; stateProvider b comp_715 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; target c comp_716 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d comp_81 + f I halfHeight e comp_82 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; stateProvider a comp_715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43294 a method_43294 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; target b comp_716 + m ()Lnet/minecraft/util/valueproviders/IntProvider; radius c comp_81 + m ()I halfHeight d comp_82 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration eeg net/minecraft/class_5731 + f Lcom/mojang/serialization/Codec; CODEC a field_28213 + f I floorToCeilingSearchRange b field_28214 + f Lnet/minecraft/util/valueproviders/IntProvider; height c field_28215 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d field_28216 + f I maxStalagmiteStalactiteHeightDiff e field_28217 + f I heightDeviation f field_28218 + f Lnet/minecraft/util/valueproviders/IntProvider; dripstoneBlockLayerThickness g field_28219 + f Lnet/minecraft/util/valueproviders/FloatProvider; density h field_28220 + f Lnet/minecraft/util/valueproviders/FloatProvider; wetness i field_28221 + f F chanceOfDripstoneColumnAtMaxDistanceFromCenter j field_28224 + f I maxDistanceFromEdgeAffectingChanceOfDripstoneColumn k field_28225 + f I maxDistanceFromCenterAffectingHeightBias l field_28226 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33987 a method_33987 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33988 a method_33988 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33989 b method_33989 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Float; method_33043 c method_33043 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33044 d method_33044 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33045 e method_33045 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33046 f method_33046 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33047 g method_33047 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33048 h method_33048 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33049 i method_33049 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33050 j method_33050 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33051 k method_33051 + m (ILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;IILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;FII)V + p 1 floorToCeilingSearchRange + p 2 height + p 3 radius + p 4 maxStalagmiteStalactiteHeightDiff + p 5 heightDeviation + p 6 dripstoneBlockLayerThickness + p 7 density + p 8 wetness + p 9 chanceOfDripstoneColumnAtMaxDistanceFromCenter + p 10 maxDistanceFromEdgeAffectingChanceOfDripstoneColumn + p 11 maxDistanceFromCenterAffectingHeightBias + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration eeh net/minecraft/class_3018 + f Lcom/mojang/serialization/Codec; CODEC a field_24883 + f Ljava/util/Optional; exit b field_17735 + f Z exact c field_13475 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration; delayedExitSearch a method_18030 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28717 a method_28717 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)Ljava/lang/Boolean; method_28716 a method_28716 + m (Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration; knownExit a method_18034 + p 0 exit + p 1 exact + m ()Ljava/util/Optional; getExit b method_18036 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)Ljava/util/Optional; method_28718 b method_28718 + m ()Z isExitExact c method_13026 + m (Ljava/util/Optional;Z)V + p 1 exit + p 2 exact + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration eei net/minecraft/class_3037 + f Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; NONE m field_13603 + m ()Ljava/util/stream/Stream; getFeatures e method_30649 + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration eej net/minecraft/class_5589 + f Lcom/mojang/serialization/Codec; CHANCE_RANGE a field_27314 + f Lcom/mojang/serialization/Codec; CODEC b field_27315 + f Lnet/minecraft/world/level/levelgen/GeodeBlockSettings; geodeBlockSettings c field_27316 + f Lnet/minecraft/world/level/levelgen/GeodeLayerSettings; geodeLayerSettings d field_27317 + f Lnet/minecraft/world/level/levelgen/GeodeCrackSettings; geodeCrackSettings e field_27318 + f D usePotentialPlacementsChance f field_27319 + f D useAlternateLayer0Chance g field_27320 + f Z placementsRequireLayer0Alternate h field_27321 + f Lnet/minecraft/util/valueproviders/IntProvider; outerWallDistance i field_33516 + f Lnet/minecraft/util/valueproviders/IntProvider; distributionPoints j field_33517 + f Lnet/minecraft/util/valueproviders/IntProvider; pointOffset k field_33518 + f I minGenOffset l field_27328 + f I maxGenOffset n field_27329 + f D noiseMultiplier o field_27330 + f I invalidBlocksThreshold p field_29062 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36299 a method_36299 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31906 a method_31906 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_36300 b method_36300 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31908 c method_31908 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31909 d method_31909 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36301 e method_36301 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36302 f method_36302 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36303 g method_36303 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Boolean; method_31913 h method_31913 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_31914 i method_31914 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_31915 j method_31915 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeCrackSettings; method_31916 k method_31916 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeLayerSettings; method_31917 l method_31917 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeBlockSettings; method_31918 m method_31918 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;DDZLnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;IIDI)V + p 1 geodeBlockSettings + p 2 geodeLayerSettings + p 3 geodeCrackSettings + p 4 usePotentialPlacementsChance + p 6 useAlternateLayer0Chance + p 8 placementsRequireLayer0Alternate + p 9 outerWallDistance + p 10 distributionPoints + p 11 pointOffset + p 12 minGenOffset + p 13 maxGenOffset + p 14 noiseMultiplier + p 16 invalidBlocksThreshold + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration eek net/minecraft/class_4635 + f Lcom/mojang/serialization/Codec; CODEC a field_24885 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; capProvider b field_21230 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; stemProvider c field_21231 + f I foliageRadius d field_21232 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28721 a method_28721 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Ljava/lang/Integer; method_28720 a method_28720 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28722 b method_28722 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28723 c method_28723 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;I)V + p 1 capProvider + p 2 stemProvider + p 3 foliageRadius + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration eel net/minecraft/class_5732 + f Lcom/mojang/serialization/Codec; CODEC a field_28227 + f I floorToCeilingSearchRange b field_28228 + f Lnet/minecraft/util/valueproviders/IntProvider; columnRadius c field_28229 + f Lnet/minecraft/util/valueproviders/FloatProvider; heightScale d field_28230 + f F maxColumnRadiusToCaveHeightRatio e field_28231 + f Lnet/minecraft/util/valueproviders/FloatProvider; stalactiteBluntness f field_28232 + f Lnet/minecraft/util/valueproviders/FloatProvider; stalagmiteBluntness g field_28233 + f Lnet/minecraft/util/valueproviders/FloatProvider; windSpeed h field_28234 + f I minRadiusForWind i field_28235 + f F minBluntnessForWind j field_28236 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33052 a method_33052 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Float; method_33053 a method_33053 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Integer; method_33054 b method_33054 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33055 c method_33055 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33056 d method_33056 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33057 e method_33057 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Float; method_33058 f method_33058 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33059 g method_33059 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33060 h method_33060 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Integer; method_33061 i method_33061 + m (ILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/FloatProvider;FLnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;IF)V + p 1 floorToCeilingSearchRange + p 2 columnRadius + p 3 heightScale + p 4 maxColumnRadiusToCaveHeightRatio + p 5 stalactiteBluntness + p 6 stalagmiteBluntness + p 7 windSpeed + p 8 minRadiusForWind + p 9 minBluntnessForWind + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration eem net/minecraft/class_4279 + f Lcom/mojang/serialization/Codec; CODEC a field_24887 + f I height b field_19202 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_19203 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28726 a method_28726 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28725 a method_28725 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration;)Ljava/lang/Integer; method_28727 b method_28727 + m (ILnet/minecraft/world/level/block/state/BlockState;)V + p 1 height + p 2 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration een net/minecraft/class_5780 + f Lcom/mojang/serialization/Codec; CODEC a field_28429 + f Lnet/minecraft/world/level/block/MultifaceBlock; placeBlock b field_37709 + f I searchRange c field_28430 + f Z canPlaceOnFloor d field_28431 + f Z canPlaceOnCeiling e field_28432 + f Z canPlaceOnWall f field_28433 + f F chanceOfSpreading g field_28434 + f Lnet/minecraft/core/HolderSet; canBePlacedOn h field_28435 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; validDirections i field_28436 + m ()Ljava/lang/String; method_49534 a method_49534 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledDirections a method_43295 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Direction;)Ljava/util/List; getShuffledDirectionsExcept a method_43296 + p 1 random + p 2 direction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33398 a method_33398 + m (Lnet/minecraft/world/level/block/Block;)Lcom/mojang/serialization/DataResult; apply a method_41573 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Lnet/minecraft/core/HolderSet; method_33399 a method_33399 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z method_43297 a method_43297 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Float; method_33400 b method_33400 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33401 c method_33401 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33402 d method_33402 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33403 e method_33403 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Integer; method_33404 f method_33404 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Lnet/minecraft/world/level/block/MultifaceBlock; method_41574 g method_41574 + m (Lnet/minecraft/world/level/block/MultifaceBlock;IZZZFLnet/minecraft/core/HolderSet;)V + p 1 placeBlock + p 2 searchRange + p 3 canPlaceOnFloor + p 4 canPlaceOnCeiling + p 5 canPlaceOnWall + p 6 chanceOfSpreading + p 7 canBePlacedOn + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig eeo net/minecraft/class_6789 + f Lcom/mojang/serialization/Codec; CODEC c field_35707 + f I spreadWidth d field_35708 + f I spreadHeight e field_35709 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39607 a method_39607 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Ljava/lang/Integer; method_39608 a method_39608 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Ljava/lang/Integer; method_39609 b method_39609 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_39610 c method_39610 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;II)V + p 1 stateProvider + p 2 spreadWidth + p 3 spreadHeight + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration eep net/minecraft/class_3111 + f Lcom/mojang/serialization/Codec; CODEC a field_24893 + f Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; INSTANCE b field_24894 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; method_28737 a method_28737 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/OreConfiguration eeq net/minecraft/class_3124 + f Lcom/mojang/serialization/Codec; CODEC a field_24896 + f Ljava/util/List; targetStates b field_29063 + f I size c field_13723 + f F discardChanceOnAirExposure d field_29064 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33992 a method_33992 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/lang/Float; method_33993 a method_33993 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState; target a method_33994 + p 0 target + p 1 state + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/lang/Integer; method_33995 b method_33995 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/util/List; method_28745 c method_28745 + m (Ljava/util/List;IF)V + p 1 targetStates + p 2 size + p 3 discardChanceOnAirExposure + m (Ljava/util/List;I)V + p 1 targetStates + p 2 size + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;IF)V + p 1 target + p 2 state + p 3 size + p 4 discardChanceOnAirExposure + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;I)V + p 1 target + p 2 state + p 3 size + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState eeq$a net/minecraft/class_3124$class_5876 + f Lcom/mojang/serialization/Codec; CODEC a field_29067 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; target b field_29068 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_29069 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33996 a method_33996 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_33997 a method_33997 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_33998 b method_33998 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 target + p 2 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration eer net/minecraft/class_5733 + f Lcom/mojang/serialization/Codec; CODEC a field_28237 + f F chanceOfTallerDripstone b field_28241 + f F chanceOfDirectionalSpread c field_35416 + f F chanceOfSpreadRadius2 d field_35417 + f F chanceOfSpreadRadius3 e field_35418 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33062 a method_33062 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_33063 a method_33063 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39176 b method_39176 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39177 c method_39177 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39178 d method_39178 + m (FFFF)V + p 1 chanceOfTallerDripstone + p 2 chanceOfDirectionalSpread + p 3 chanceOfSpreadRadius2 + p 4 chanceOfSpreadRadius3 + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ProbabilityFeatureConfiguration ees net/minecraft/class_3133 + f Lcom/mojang/serialization/Codec; CODEC k field_24899 + f F probability l field_13738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28748 a method_28748 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ProbabilityFeatureConfiguration;)Ljava/lang/Float; method_28747 a method_28747 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration eet net/minecraft/class_3137 + f Lcom/mojang/serialization/Codec; CODEC a field_24900 + f Lnet/minecraft/core/Holder; featureTrue b field_13740 + f Lnet/minecraft/core/Holder; featureFalse c field_13739 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28750 a method_28750 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28749 a method_28749 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28751 b method_28751 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 featureTrue + p 2 featureFalse + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration eeu net/minecraft/class_3141 + f Lcom/mojang/serialization/Codec; CODEC a field_24901 + f Ljava/util/List; features b field_13744 + f Lnet/minecraft/core/Holder; defaultFeature c field_13745 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28753 a method_28753 + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Ljava/util/stream/Stream; method_30650 a method_30650 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28752 a method_28752 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration;)Ljava/util/List; method_28754 b method_28754 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 features + p 2 defaultFeature + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration eev net/minecraft/class_4638 + f Lcom/mojang/serialization/Codec; CODEC a field_24902 + f I tries b comp_149 + f I xzSpread c comp_150 + f I ySpread d comp_151 + f Lnet/minecraft/core/Holder; feature e comp_155 + m ()I tries a comp_149 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38912 a method_38912 + m ()I xzSpread b comp_150 + m ()I ySpread c comp_151 + m ()Lnet/minecraft/core/Holder; feature d comp_155 + m (IIILnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ReplaceBlockConfiguration eew net/minecraft/class_3154 + f Lcom/mojang/serialization/Codec; CODEC a field_24904 + f Ljava/util/List; targetStates b field_13765 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28771 a method_28771 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceBlockConfiguration;)Ljava/util/List; method_28772 a method_28772 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 targetState + p 2 state + m (Ljava/util/List;)V + p 1 targetStates + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration eex net/minecraft/class_5437 + f Lcom/mojang/serialization/Codec; CODEC a field_25848 + f Lnet/minecraft/world/level/block/state/BlockState; targetState b field_25849 + f Lnet/minecraft/world/level/block/state/BlockState; replaceState c field_25850 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d field_25851 + m ()Lnet/minecraft/util/valueproviders/IntProvider; radius a method_30405 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30406 a method_30406 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30407 a method_30407 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_30408 b method_30408 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_30409 c method_30409 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 targetState + p 2 replaceState + p 3 radius + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration eey net/minecraft/class_5926 + f Lcom/mojang/serialization/Codec; CODEC a field_29267 + f Lnet/minecraft/core/Holder; treeFeature b field_29268 + f I requiredVerticalSpaceForTree c field_29269 + f I rootRadius d field_29270 + f Lnet/minecraft/tags/TagKey; rootReplaceable e field_29271 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; rootStateProvider f field_29272 + f I rootPlacementAttempts g field_29273 + f I rootColumnMaxHeight h field_29274 + f I hangingRootRadius i field_29275 + f I hangingRootsVerticalSpan j field_29276 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; hangingRootStateProvider k field_29277 + f I hangingRootPlacementAttempts l field_29278 + f I allowedVerticalWaterForTree n field_33616 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedTreePosition o field_36289 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34332 a method_34332 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39919 a method_39919 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_36421 b method_36421 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34333 c method_34333 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34334 d method_34334 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34335 e method_34335 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34336 f method_34336 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34337 g method_34337 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34338 h method_34338 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34339 i method_34339 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/tags/TagKey; method_34340 j method_34340 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34341 k method_34341 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34342 l method_34342 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/core/Holder; method_34343 m method_34343 + m (Lnet/minecraft/core/Holder;IILnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IIIILnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IILnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 treeFeature + p 2 requiredVerticalSpaceForTree + p 3 rootRadius + p 4 rootReplaceable + p 5 rootStateProvider + p 6 rootPlacementAttempts + p 7 rootColumnMaxHeight + p 8 hangingRootRadius + p 9 hangingRootsVerticalSpawn + p 10 hangingRootStateProvider + p 11 hangingRootPlacementAttempts + p 12 allowedVerticalWaterForTree + p 13 allowedTreePosition + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SculkPatchConfiguration eez net/minecraft/class_7141 + f Lcom/mojang/serialization/Codec; CODEC a field_37710 + f I chargeCount b comp_553 + f I amountPerCharge c comp_554 + f I spreadAttempts d comp_555 + f I growthRounds e comp_556 + f I spreadRounds f comp_557 + f Lnet/minecraft/util/valueproviders/IntProvider; extraRareGrowths g comp_685 + f F catalystChance h comp_558 + m ()I chargeCount a comp_553 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41575 a method_41575 + m ()I amountPerCharge b comp_554 + m ()I spreadAttempts c comp_555 + m ()I growthRounds d comp_556 + m ()I spreadRounds f comp_557 + m ()Lnet/minecraft/util/valueproviders/IntProvider; extraRareGrowths g comp_685 + m ()F catalystChance h comp_558 + m (IIIIILnet/minecraft/util/valueproviders/IntProvider;F)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SimpleBlockConfiguration efa net/minecraft/class_3175 + f Lcom/mojang/serialization/Codec; CODEC a field_24909 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; toPlace b comp_156 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; toPlace a comp_156 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38913 a method_38913 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SimpleBlockConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28787 a method_28787 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 toPlace + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SimpleRandomFeatureConfiguration efb net/minecraft/class_3179 + f Lcom/mojang/serialization/Codec; CODEC a field_24910 + f Lnet/minecraft/core/HolderSet; features b field_13827 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SimpleRandomFeatureConfiguration;)Lnet/minecraft/core/HolderSet; method_28788 a method_28788 + m (Lnet/minecraft/core/Holder;)Ljava/util/stream/Stream; method_30651 a method_30651 + m (Lnet/minecraft/core/HolderSet;)V + p 1 features + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration efc net/minecraft/class_3666 + f Lcom/mojang/serialization/Codec; CODEC a field_24911 + f Z crystalInvulnerable b field_16207 + f Ljava/util/List; spikes c field_16208 + f Lnet/minecraft/core/BlockPos; crystalBeamTarget d field_16206 + m ()Z isCrystalInvulnerable a method_15883 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28790 a method_28790 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/util/Optional; method_28789 a method_28789 + m ()Ljava/util/List; getSpikes b method_15885 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/util/List; method_28791 b method_28791 + m ()Lnet/minecraft/core/BlockPos; getCrystalBeamTarget c method_15884 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/lang/Boolean; method_28792 c method_28792 + m (ZLjava/util/List;Lnet/minecraft/core/BlockPos;)V + p 1 crystalInvulnerable + p 2 spikes + p 3 crystalBeamTarget + m (ZLjava/util/List;Ljava/util/Optional;)V + p 1 crystalInvulnerable + p 2 spikes + p 3 crystalBeamTarget + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration efd net/minecraft/class_4642 + f Lcom/mojang/serialization/Codec; CODEC a field_24912 + f Lnet/minecraft/world/level/material/FluidState; state b field_21283 + f Z requiresBlockBelow c field_21284 + f I rockCount d field_21285 + f I holeCount e field_21286 + f Lnet/minecraft/core/HolderSet; validBlocks f field_21287 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28794 a method_28794 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Lnet/minecraft/core/HolderSet; method_28793 a method_28793 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Integer; method_28795 b method_28795 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Integer; method_28796 c method_28796 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Boolean; method_28797 d method_28797 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Lnet/minecraft/world/level/material/FluidState; method_28798 e method_28798 + m (Lnet/minecraft/world/level/material/FluidState;ZIILnet/minecraft/core/HolderSet;)V + p 1 state + p 2 requiresBlockBelow + p 3 rockCount + p 4 holeCount + p 5 validBlocks + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration efe net/minecraft/class_4643 + f Lcom/mojang/serialization/Codec; CODEC a field_24921 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; trunkProvider b field_21288 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; dirtProvider c field_29279 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; trunkPlacer d field_24136 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; foliageProvider e field_29280 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; foliagePlacer f field_24135 + f Ljava/util/Optional; rootPlacer g field_38767 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; minimumSize h field_24137 + f Ljava/util/List; decorators i field_21290 + f Z ignoreVines j field_24138 + f Z forceDirt k field_29281 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28811 a method_28811 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/lang/Boolean; method_34344 a method_34344 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/lang/Boolean; method_37261 b method_37261 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/List; method_34345 c method_34345 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; method_28814 d method_28814 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28815 e method_28815 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/Optional; method_43164 f method_43164 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; method_28816 g method_28816 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28817 h method_28817 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; method_28818 i method_28818 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28819 j method_28819 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;Ljava/util/List;ZZ)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 rootPlacer + p 6 dirtProvider + p 7 minimumSize + p 8 decorators + p 9 ignoreVines + p 10 forceDirt + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder efe$a net/minecraft/class_4643$class_4644 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; trunkProvider a field_21292 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; foliageProvider b field_29282 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; trunkPlacer c field_24141 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; foliagePlacer d field_24140 + f Ljava/util/Optional; rootPlacer e field_38768 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; dirtProvider f field_29283 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; minimumSize g field_24142 + f Ljava/util/List; decorators h field_21294 + f Z ignoreVines i field_24143 + f Z forceDirt j field_29284 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; ignoreVines a method_27374 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; dirt a method_34346 + p 1 dirtProvider + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; decorators a method_27376 + p 1 decorators + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; forceDirt b method_34347 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration; build c method_23445 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 rootPlacer + p 6 minimumSize + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 minimumSize +c net/minecraft/world/level/levelgen/feature/configurations/TwistingVinesConfig eff net/minecraft/class_6790 + f Lcom/mojang/serialization/Codec; CODEC a field_35710 + f I spreadWidth b comp_287 + f I spreadHeight c comp_288 + f I maxHeight d comp_289 + m ()I spreadWidth a comp_287 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39611 a method_39611 + m ()I spreadHeight b comp_288 + m ()I maxHeight c comp_289 + m (III)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration efg net/minecraft/class_5835 + f Lcom/mojang/serialization/Codec; CODEC a field_28853 + f I floorSearchRange b field_28854 + f I placementRadiusAroundFloor c field_28855 + f F placementProbabilityPerValidPosition d field_28856 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33771 a method_33771 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Float; method_33772 a method_33772 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Integer; method_33773 b method_33773 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Integer; method_33774 c method_33774 + m (IIF)V + p 1 floorSearchRange + p 2 placementRadiusAroundFloor + p 3 placementProbabilityPerValidPosition + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration efh net/minecraft/class_5927 + f Lcom/mojang/serialization/Codec; CODEC a field_29285 + f Lnet/minecraft/tags/TagKey; replaceable b field_29286 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; groundState c field_29287 + f Lnet/minecraft/core/Holder; vegetationFeature d field_29288 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surface e field_29289 + f Lnet/minecraft/util/valueproviders/IntProvider; depth f field_29290 + f F extraBottomBlockChance g field_29291 + f I verticalRange h field_29292 + f F vegetationChance i field_29293 + f Lnet/minecraft/util/valueproviders/IntProvider; xzRadius j field_29294 + f F extraEdgeColumnChance k field_29295 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34348 a method_34348 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34349 a method_34349 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_34350 b method_34350 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34351 c method_34351 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Integer; method_34352 d method_34352 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34353 e method_34353 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_34354 f method_34354 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/world/level/levelgen/placement/CaveSurface; method_34355 g method_34355 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/core/Holder; method_34356 h method_34356 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34357 i method_34357 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/tags/TagKey; method_34358 j method_34358 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/placement/CaveSurface;Lnet/minecraft/util/valueproviders/IntProvider;FIFLnet/minecraft/util/valueproviders/IntProvider;F)V + p 1 replaceable + p 2 groundState + p 3 vegetationFeature + p 4 surface + p 5 depth + p 6 extraBottomBlockChance + p 7 verticalRange + p 8 vegetationChance + p 9 xzRadius + p 10 extraEdgeColumnChance + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/package-info efi net/minecraft/class_6111 +c net/minecraft/world/level/levelgen/feature/featuresize/FeatureSize efj net/minecraft/class_5201 + f Lcom/mojang/serialization/Codec; CODEC a field_24922 + f I MAX_WIDTH b field_31522 + f Ljava/util/OptionalInt; minClippedHeight c field_24146 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; minClippedHeightCodec a method_28820 + m (II)I getSizeAtHeight a method_27378 + p 1 height + p 2 midpoint + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)Ljava/util/OptionalInt; method_28821 a method_28821 + m (Ljava/util/Optional;)Ljava/util/OptionalInt; method_28822 a method_28822 + m (Ljava/util/OptionalInt;)Ljava/util/Optional; method_28823 a method_28823 + m ()Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; type b method_28824 + m ()Ljava/util/OptionalInt; minClippedHeight c method_27377 + m (Ljava/util/OptionalInt;)V + p 1 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType efk net/minecraft/class_5202 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; TWO_LAYERS_FEATURE_SIZE a field_24147 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; THREE_LAYERS_FEATURE_SIZE b field_24148 + f Lcom/mojang/serialization/MapCodec; codec c field_24923 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28825 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; register a method_27382 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize efl net/minecraft/class_5203 + f Lcom/mojang/serialization/MapCodec; CODEC d field_24924 + f I limit e field_24150 + f I upperLimit f field_24151 + f I lowerSize g field_24152 + f I middleSize h field_24153 + f I upperSize i field_24154 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28827 a method_28827 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28826 a method_28826 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28828 b method_28828 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28829 c method_28829 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28830 d method_28830 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28831 e method_28831 + m (IIIIILjava/util/OptionalInt;)V + p 1 limit + p 2 upperLimit + p 3 lowerSize + p 4 middleSize + p 5 upperSize + p 6 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize efm net/minecraft/class_5204 + f Lcom/mojang/serialization/MapCodec; CODEC d field_24925 + f I limit e field_24155 + f I lowerSize f field_24156 + f I upperSize g field_24157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28833 a method_28833 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28832 a method_28832 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28834 b method_28834 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28835 c method_28835 + m (III)V + p 1 limit + p 2 lowerSize + p 3 upperSize + m (IIILjava/util/OptionalInt;)V + p 1 limit + p 2 lowerSize + p 3 upperSize + p 4 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/package-info efn net/minecraft/class_6112 +c net/minecraft/world/level/levelgen/feature/foliageplacers/AcaciaFoliagePlacer efo net/minecraft/class_4645 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24926 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28836 a method_28836 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/BlobFoliagePlacer efp net/minecraft/class_4646 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24927 + f I height b field_23752 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; blobParts a method_28838 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/BlobFoliagePlacer;)Ljava/lang/Integer; method_28837 a method_28837 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28839 c method_28839 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/BushFoliagePlacer efq net/minecraft/class_5205 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24928 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28840 c method_28840 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer efr net/minecraft/class_8178 + f Lcom/mojang/serialization/MapCodec; CODEC a field_42841 + f Lnet/minecraft/util/valueproviders/IntProvider; height b field_42842 + f F wideBottomLayerHoleChance c field_42843 + f F cornerHoleChance g field_42844 + f F hangingLeavesChance h field_42845 + f F hangingLeavesExtensionChance i field_42846 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49241 a method_49241 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49242 a method_49242 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49243 b method_49243 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49244 c method_49244 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49245 d method_49245 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49246 e method_49246 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;FFFF)V + p 1 radius + p 2 offset + p 3 height + p 4 wideBottomLayerHoleChance + p 5 cornerHoleChance + p 6 hangingLeavesChance + p 7 hangingLeavesExtensionChance + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/DarkOakFoliagePlacer efs net/minecraft/class_5206 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24929 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28841 a method_28841 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FancyFoliagePlacer eft net/minecraft/class_5207 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24930 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28842 c method_28842 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer efu net/minecraft/class_4647 + f Lcom/mojang/serialization/Codec; CODEC d field_24931 + f Lnet/minecraft/util/valueproviders/IntProvider; radius e field_21296 + f Lnet/minecraft/util/valueproviders/IntProvider; offset f field_23753 + m ()Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; type a method_28843 + m (Lnet/minecraft/util/RandomSource;)I offset a method_27386 + p 1 random + m (Lnet/minecraft/util/RandomSource;I)I foliageRadius a method_23452 + p 1 random + p 2 radius + m (Lnet/minecraft/util/RandomSource;IIIIZ)Z shouldSkipLocation a method_23451 + c Skips certain positions based on the provided shape, such as rounding corners randomly.\nThe coordinates are passed in as absolute value, and should be within [0, {@code range}]. + p 1 random + p 2 localX + p 3 localY + p 4 localZ + p 5 range + p 6 large + m (Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)I foliageHeight a method_26989 + p 1 random + p 2 height + p 3 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;FLnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z tryPlaceExtension a method_49884 + p 0 level + p 1 foliageSetter + p 2 random + p 3 treeConfiguration + p 4 extensionChance + p 5 logPos + p 6 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;ILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;II)V createFoliage a method_27385 + p 1 level + p 2 blockSetter + p 3 random + p 4 config + p 5 maxFreeTreeHeight + p 6 attachment + p 7 foliageHeight + p 8 foliageRadius + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;ILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;III)V createFoliage a method_23448 + p 1 level + p 2 blockSetter + p 3 random + p 4 config + p 5 maxFreeTreeHeight + p 6 attachment + p 7 foliageHeight + p 8 foliageRadius + p 9 offset + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;)Z tryPlaceLeaf a method_34359 + p 0 level + p 1 foliageSetter + p 2 random + p 3 treeConfiguration + p 4 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;IIZ)V placeLeavesRow a method_23449 + p 1 level + p 2 foliageSetter + p 3 random + p 4 treeConfiguration + p 5 pos + p 6 range + p 7 localY + p 8 large + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;IIZFF)V placeLeavesRowWithHangingLeavesBelow a method_49247 + p 1 level + p 2 foliageSetter + p 3 random + p 4 treeConfiguration + p 5 pos + p 6 range + p 7 localY + p 8 large + p 9 hangingLeavesChance + p 10 hangingLeavesExtensionChance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30410 a method_30410 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_42380 a method_42380 + m (Lnet/minecraft/util/RandomSource;IIIIZ)Z shouldSkipLocationSigned b method_27387 + p 1 random + p 2 localX + p 3 localY + p 4 localZ + p 5 range + p 6 large + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P2; foliagePlacerParts b method_30411 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30412 b method_30412 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment efu$a net/minecraft/class_4647$class_5208 + f Lnet/minecraft/core/BlockPos; pos a field_24158 + f I radiusOffset b field_24159 + f Z doubleTrunk c field_24160 + m ()Lnet/minecraft/core/BlockPos; pos a method_27388 + m ()I radiusOffset b method_27389 + m ()Z doubleTrunk c method_27390 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 pos + p 2 radiusOffset + p 3 doubleTrunk +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter efu$b net/minecraft/class_4647$class_8179 + m (Lnet/minecraft/core/BlockPos;)Z isSet a method_49239 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V set a method_49240 + p 1 pos + p 2 state +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType efv net/minecraft/class_4648 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; BLOB_FOLIAGE_PLACER a field_21299 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; SPRUCE_FOLIAGE_PLACER b field_21300 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; PINE_FOLIAGE_PLACER c field_21301 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; ACACIA_FOLIAGE_PLACER d field_21302 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; BUSH_FOLIAGE_PLACER e field_24161 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; FANCY_FOLIAGE_PLACER f field_24162 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; MEGA_JUNGLE_FOLIAGE_PLACER g field_24163 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; MEGA_PINE_FOLIAGE_PLACER h field_24164 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; DARK_OAK_FOLIAGE_PLACER i field_24165 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; RANDOM_SPREAD_FOLIAGE_PLACER j field_29296 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; CHERRY_FOLIAGE_PLACER k field_42847 + f Lcom/mojang/serialization/MapCodec; codec l field_24932 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28849 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; register a method_28850 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/MegaJungleFoliagePlacer efw net/minecraft/class_5209 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24933 + f I height b field_24166 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28852 a method_28852 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/MegaJungleFoliagePlacer;)Ljava/lang/Integer; method_28851 a method_28851 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/MegaPineFoliagePlacer efx net/minecraft/class_5210 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24934 + f Lnet/minecraft/util/valueproviders/IntProvider; crownHeight b field_24168 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30413 a method_30413 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/MegaPineFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30414 a method_30414 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 crownHeight + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/PineFoliagePlacer efy net/minecraft/class_4649 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24935 + f Lnet/minecraft/util/valueproviders/IntProvider; height b field_23755 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30415 a method_30415 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/PineFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30416 a method_30416 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer efz net/minecraft/class_5928 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29297 + f Lnet/minecraft/util/valueproviders/IntProvider; foliageHeight b field_29298 + f I leafPlacementAttempts c field_29299 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34360 a method_34360 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer;)Ljava/lang/Integer; method_34361 a method_34361 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_34362 b method_34362 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 foliageHeight + p 4 leafPlacementAttempts + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/SpruceFoliagePlacer ega net/minecraft/class_4650 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24936 + f Lnet/minecraft/util/valueproviders/IntProvider; trunkHeight b field_23757 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30417 a method_30417 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/SpruceFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30418 a method_30418 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 trunkHeight + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/package-info egb net/minecraft/class_6113 +c net/minecraft/world/level/levelgen/feature/package-info egc net/minecraft/class_6114 +c net/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement egd net/minecraft/class_7398 + f Lcom/mojang/serialization/Codec; CODEC a field_38865 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; aboveRootProvider b comp_717 + f F aboveRootPlacementChance c comp_718 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; aboveRootProvider a comp_717 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43298 a method_43298 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement;)Ljava/lang/Float; method_43299 a method_43299 + m ()F aboveRootPlacementChance b comp_718 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43300 b method_43300 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;F)V + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement ege net/minecraft/class_7399 + f Lcom/mojang/serialization/Codec; CODEC a field_38866 + f Lnet/minecraft/core/HolderSet; canGrowThrough b comp_719 + f Lnet/minecraft/core/HolderSet; muddyRootsIn c comp_720 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; muddyRootsProvider d comp_721 + f I maxRootWidth e comp_722 + f I maxRootLength f comp_723 + f F randomSkewChance g comp_724 + m ()Lnet/minecraft/core/HolderSet; canGrowThrough a comp_719 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43301 a method_43301 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Float; method_43302 a method_43302 + m ()Lnet/minecraft/core/HolderSet; muddyRootsIn b comp_720 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Integer; method_43303 b method_43303 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; muddyRootsProvider c comp_721 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Integer; method_43304 c method_43304 + m ()I maxRootWidth d comp_722 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43305 d method_43305 + m ()I maxRootLength e comp_723 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/core/HolderSet; method_43306 e method_43306 + m ()F randomSkewChance f comp_724 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/core/HolderSet; method_43307 f method_43307 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IIF)V + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacer egf net/minecraft/class_7386 + f I ROOT_WIDTH_LIMIT a field_38769 + f I ROOT_LENGTH_LIMIT b field_38770 + f Lcom/mojang/serialization/MapCodec; CODEC c field_38771 + f Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement; mangroveRootPlacement h field_38867 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Ljava/util/List;I)Z simulateRoots a method_43166 + p 1 level + p 2 random + p 3 pos + p 4 direction + p 5 trunkOrigin + p 6 roots + p 7 length + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43169 a method_43169 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacer;)Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement; method_43180 a method_43180 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List; potentialRootPositions a method_43171 + p 1 pos + p 2 direction + p 3 random + p 4 trunkOrigin + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43173 b method_43173 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43174 b method_43174 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)V + p 1 trunkOffset + p 2 rootProvider + p 3 aboveRootPlacement + p 4 mangroveRootPlacement + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer egg net/minecraft/class_7387 + f Lcom/mojang/serialization/Codec; CODEC d field_38779 + f Lnet/minecraft/util/valueproviders/IntProvider; trunkOffsetY e field_38868 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; rootProvider f field_38780 + f Ljava/util/Optional; aboveRootPlacement g field_38869 + m ()Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; type a method_43165 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; rootPlacerParts a method_43182 + p 0 instance + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V placeRoot a method_43172 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 treeConfig + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z placeRoots a method_43168 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 trunkOrigin + p 6 treeConfig + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z canPlaceRoot a method_43167 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getPotentiallyWaterloggedState a method_43181 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Ljava/util/Optional; method_43308 a method_43308 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_43184 a method_43184 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/BlockPos; getTrunkOrigin a method_43309 + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43183 b method_43183 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43310 c method_43310 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + p 1 trunkOffset + p 2 rootProvider + p 3 aboveRootPlacement + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType egh net/minecraft/class_7388 + f Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; MANGROVE_ROOT_PLACER a field_38781 + f Lcom/mojang/serialization/MapCodec; codec b field_38782 + m ()Lcom/mojang/serialization/MapCodec; codec a method_43185 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; register a method_43186 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/package-info egi net/minecraft/class_7727 +c net/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider egj net/minecraft/class_4651 + f Lcom/mojang/serialization/Codec; CODEC a field_24937 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; type a method_28862 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_23455 + p 1 random + p 2 pos + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider; simple a method_38432 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider; simple a method_38433 + p 0 state + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType egk net/minecraft/class_4652 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; SIMPLE_STATE_PROVIDER a field_21305 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; WEIGHTED_STATE_PROVIDER b field_21306 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; NOISE_THRESHOLD_PROVIDER c field_34932 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; NOISE_PROVIDER d field_34933 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; DUAL_NOISE_PROVIDER e field_34934 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; ROTATED_BLOCK_PROVIDER f field_24938 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; RANDOMIZED_INT_STATE_PROVIDER g field_29300 + f Lcom/mojang/serialization/MapCodec; codec h field_24939 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28863 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; register a method_23457 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider egl net/minecraft/class_6578 + f Lcom/mojang/serialization/MapCodec; CODEC b field_34702 + f Lnet/minecraft/util/InclusiveRange; variety i field_34703 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; slowNoiseParameters j field_34704 + f F slowScale k field_34705 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; slowNoise l field_34706 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Ljava/lang/Float; method_38434 a method_38434 + m (Lnet/minecraft/core/BlockPos;)D getSlowNoiseValue a method_38435 + p 1 pos + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; method_38436 b method_38436 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38437 c method_38437 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Lnet/minecraft/util/InclusiveRange; method_38438 c method_38438 + m (Lnet/minecraft/util/InclusiveRange;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FJLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FLjava/util/List;)V + p 1 variety + p 2 slowNoiseParameters + p 3 slowScale + p 4 seed + p 6 parameters + p 7 scale + p 8 states + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider egm net/minecraft/class_6579 + f J seed c field_34707 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters d field_34708 + f F scale e field_34709 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise f field_34710 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; noiseCodec a method_38439 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Ljava/lang/Float; method_38440 a method_38440 + m (Lnet/minecraft/core/BlockPos;D)D getNoiseValue a method_38441 + p 1 pos + p 2 delta + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; method_38442 b method_38442 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Ljava/lang/Long; method_38443 c method_38443 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;F)V + p 1 seed + p 3 parameters + p 4 scale +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseProvider egn net/minecraft/class_6580 + f Lcom/mojang/serialization/MapCodec; CODEC g field_34711 + f Ljava/util/List; states h field_34712 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseProvider;)Ljava/util/List; method_38444 a method_38444 + m (Ljava/util/List;D)Lnet/minecraft/world/level/block/state/BlockState; getRandomState a method_38445 + p 1 possibleStates + p 2 delta + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;D)Lnet/minecraft/world/level/block/state/BlockState; getRandomState a method_38446 + p 1 possibleStates + p 2 pos + p 3 delta + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; noiseProviderCodec b method_38447 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38448 c method_38448 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FLjava/util/List;)V + p 1 seed + p 3 parameters + p 4 scale + p 5 states + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider ego net/minecraft/class_6581 + f Lcom/mojang/serialization/MapCodec; CODEC b field_34713 + f F threshold g field_34714 + f F highChance h field_34715 + f Lnet/minecraft/world/level/block/state/BlockState; defaultState i field_34716 + f Ljava/util/List; lowStates j field_34717 + f Ljava/util/List; highStates k field_34718 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/util/List; method_38449 a method_38449 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38450 b method_38450 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/util/List; method_38451 b method_38451 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Lnet/minecraft/world/level/block/state/BlockState; method_38452 c method_38452 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/lang/Float; method_38453 d method_38453 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/lang/Float; method_38454 e method_38454 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FFFLnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Ljava/util/List;)V + p 1 seed + p 3 parameters + p 4 scale + p 5 threshold + p 6 highChance + p 7 defaultState + p 8 lowStates + p 9 highStates + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider egp net/minecraft/class_5929 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29301 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; source c field_29302 + f Ljava/lang/String; propertyName d field_29303 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; property e field_29304 + f Lnet/minecraft/util/valueproviders/IntProvider; values f field_29305 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34365 a method_34365 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; findProperty a method_34363 + p 0 state + p 1 propertyName + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; method_34364 a method_34364 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Lnet/minecraft/util/valueproviders/IntProvider; method_34366 a method_34366 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/Property;)Z method_34368 a method_34368 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Z method_34369 b method_34369 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Ljava/lang/String; method_34370 b method_34370 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34371 c method_34371 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/block/state/properties/IntegerProperty;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 source + p 2 property + p 3 values + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/lang/String;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 source + p 2 propertyName + p 3 values + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RotatedBlockProvider egq net/minecraft/class_4655 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24944 + f Lnet/minecraft/world/level/block/Block; block c field_21313 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RotatedBlockProvider;)Lnet/minecraft/world/level/block/Block; method_28866 a method_28866 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider egr net/minecraft/class_7400 + f Lcom/mojang/serialization/Codec; CODEC a field_38870 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fallback b comp_725 + f Ljava/util/List; rules c comp_726 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fallback a comp_725 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43313 a method_43313 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_43311 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; simple a method_43312 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; simple a method_43314 + p 0 fallback + m ()Ljava/util/List; rules b comp_726 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider$Rule egr$a net/minecraft/class_7400$class_7401 + f Lcom/mojang/serialization/Codec; CODEC a field_38871 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ifTrue b comp_727 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; then c comp_728 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ifTrue a comp_727 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43315 a method_43315 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; then b comp_728 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider egs net/minecraft/class_4656 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24945 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_21314 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider;)Lnet/minecraft/world/level/block/state/BlockState; method_28867 a method_28867 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/WeightedStateProvider egt net/minecraft/class_4657 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24946 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; weightedList c field_21315 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lcom/mojang/serialization/DataResult; create a method_28868 + p 0 weightedList + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/WeightedStateProvider;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_28869 a method_28869 + m ()Ljava/lang/String; method_49535 b method_49535 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 weightedList + m (Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder;)V + p 1 builder + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/package-info egu net/minecraft/class_6115 +c net/minecraft/world/level/levelgen/feature/treedecorators/AlterGroundDecorator egv net/minecraft/class_4658 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24957 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; provider b field_21316 + m (ILnet/minecraft/core/BlockPos;)Z method_23460 a method_23460 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AlterGroundDecorator;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28889 a method_28889 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V placeCircle a method_23462 + p 1 context + p 2 pos + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V placeBlockAt b method_23463 + p 1 context + p 2 pos + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23461 c method_23461 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 provider + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator egw net/minecraft/class_7389 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38783 + f F probability b field_38784 + f I exclusionRadiusXZ c field_38785 + f I exclusionRadiusY d field_38786 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockProvider e field_38787 + f I requiredEmptyBlocks f field_38788 + f Ljava/util/List; directions g field_38789 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43188 a method_43188 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/util/List; method_43189 a method_43189 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z hasRequiredEmptyBlocks a method_43187 + p 1 context + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43190 b method_43190 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43191 c method_43191 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43192 d method_43192 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43193 e method_43193 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Float; method_43194 f method_43194 + m (FIILnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;ILjava/util/List;)V + p 1 probability + p 2 exclusionRadiusXZ + p 3 exclusionRadiusY + p 4 blockProvider + p 5 requiredEmptyBlocks + p 6 directions + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/BeehiveDecorator egx net/minecraft/class_4659 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24958 + f Lnet/minecraft/core/Direction; WORLDGEN_FACING b field_36346 + f [Lnet/minecraft/core/Direction; SPAWN_DIRECTIONS c field_36347 + f F probability d field_21317 + c Probability to generate a beehive + m (I)[Lnet/minecraft/core/Direction; method_40031 a method_40031 + m (ILnet/minecraft/core/BlockPos;)Z method_23464 a method_23464 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V method_35373 a method_35373 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/BeehiveDecorator;)Ljava/lang/Float; method_28890 a method_28890 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)Z method_40032 a method_40032 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; method_40033 a method_40033 + m (Lnet/minecraft/core/Direction;)Z method_40034 a method_40034 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator egy net/minecraft/class_4660 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24959 + f F probability b field_21318 + m (ILnet/minecraft/core/BlockPos;)Z method_23465 a method_23465 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23466 a method_23466 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator;)Ljava/lang/Float; method_28891 a method_28891 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/LeaveVineDecorator egz net/minecraft/class_4661 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24960 + f F probability b field_38790 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23468 a method_23468 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/LeaveVineDecorator;)Ljava/lang/Float; method_43195 a method_43195 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;)V addHangingVine a method_23467 + p 0 pos + p 1 sideProperty + p 2 context + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator eha net/minecraft/class_4662 + f Lcom/mojang/serialization/Codec; CODEC h field_24962 + m ()Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; type a method_28893 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;)V place a method_23469 + p 1 context + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context eha$a net/minecraft/class_4662$class_7402 + f Lnet/minecraft/world/level/LevelSimulatedReader; level a field_38872 + f Ljava/util/function/BiConsumer; decorationSetter b field_38873 + f Lnet/minecraft/util/RandomSource; random c field_38874 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; logs d field_38875 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; leaves e field_38876 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; roots f field_38877 + m ()Lnet/minecraft/world/level/LevelSimulatedReader; level a method_43316 + m (Lnet/minecraft/core/BlockPos;)Z isAir a method_43317 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_43318 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)V placeVine a method_43319 + p 1 pos + p 2 sideProperty + m ()Lnet/minecraft/util/RandomSource; random b method_43320 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; logs c method_43321 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; leaves d method_43322 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; roots e method_43323 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V + p 1 level + p 2 decorationSetter + p 3 random + p 4 logs + p 5 leaves + p 6 roots +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType ehb net/minecraft/class_4663 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; TRUNK_VINE a field_21320 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; LEAVE_VINE b field_21321 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; COCOA c field_21322 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; BEEHIVE d field_21323 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; ALTER_GROUND e field_21324 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; ATTACHED_TO_LEAVES f field_38791 + f Lcom/mojang/serialization/MapCodec; codec g field_24963 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28894 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; register a method_28895 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator ehc net/minecraft/class_4664 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24964 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator; INSTANCE b field_24965 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23474 a method_23474 + m ()Lnet/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator; method_28896 b method_28896 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/package-info ehd net/minecraft/class_6117 +c net/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer ehe net/minecraft/class_5930 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29306 + f I minHeightForLeaves b field_29307 + f Lnet/minecraft/util/valueproviders/IntProvider; bendLength h field_29308 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_34372 a method_34372 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34373 b method_34373 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer;)Ljava/lang/Integer; method_34374 b method_34374 + m (IIIILnet/minecraft/util/valueproviders/IntProvider;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 minHeightForLeaves + p 5 bendLength + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer ehf net/minecraft/class_8180 + f Lcom/mojang/serialization/MapCodec; CODEC a field_42848 + f Lcom/mojang/serialization/Codec; BRANCH_START_CODEC b field_42849 + f Lnet/minecraft/util/valueproviders/IntProvider; branchCount h field_42850 + f Lnet/minecraft/util/valueproviders/IntProvider; branchHorizontalLength i field_42851 + f Lnet/minecraft/util/valueproviders/UniformInt; branchStartOffsetFromTop j field_42852 + f Lnet/minecraft/util/valueproviders/UniformInt; secondBranchStartOffsetFromTop k field_42853 + f Lnet/minecraft/util/valueproviders/IntProvider; branchEndOffsetFromTop l field_42854 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Lcom/mojang/serialization/DataResult; method_49248 a method_49248 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/function/Function;Lnet/minecraft/core/Direction;IZLnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment; generateBranch a method_49249 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 pos + p 6 config + p 7 propertySetter + p 8 direction + p 9 secondBranchStartOffsetFromTop + p 10 doubleBranch + p 11 currentPos + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49250 a method_49250 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_49251 a method_49251 + m ()Ljava/lang/String; method_49536 b method_49536 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49252 b method_49252 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/UniformInt; method_49253 b method_49253 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49254 c method_49254 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49255 d method_49255 + m (IIILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 branchCount + p 5 branchHorizontalLength + p 6 branchStartOffsetFromTop + p 7 branchEndOffsetFromTop + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/DarkOakTrunkPlacer ehg net/minecraft/class_5211 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28897 b method_28897 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/FancyTrunkPlacer ehh net/minecraft/class_5212 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24967 + f D TRUNK_HEIGHT_SCALE b field_31524 + f D CLUSTER_DENSITY_MAGIC h field_31525 + f D BRANCH_SLOPE i field_31526 + f D BRANCH_LENGTH_MAGIC j field_31527 + m (II)Z trimBranches a method_27391 + p 1 maxHeight + p 2 currentHeight + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V makeBranches a method_27392 + p 1 level + p 2 blockSetter + p 3 random + p 4 maxHeight + p 5 pos + p 6 foliageCoords + p 7 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z makeLimb a method_27393 + p 1 level + p 2 blockSetter + p 3 random + p 4 basePos + p 5 offsetPos + p 6 modifyWorld + p 7 config + m (Lnet/minecraft/core/BlockPos;)I getSteps a method_27394 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction$Axis; getLogAxis a method_27395 + p 1 pos + p 2 otherPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_35374 a method_35374 + m (II)F treeShape b method_27396 + p 0 height + p 1 currentY + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28898 b method_28898 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/FancyTrunkPlacer$FoliageCoords ehh$a net/minecraft/class_5212$class_5213 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment; attachment a field_24169 + f I branchBase b field_24170 + m ()I getBranchBase a method_27397 + m (Lnet/minecraft/core/BlockPos;I)V + p 1 attachmentPos + p 2 branchBase +c net/minecraft/world/level/levelgen/feature/trunkplacers/ForkingTrunkPlacer ehi net/minecraft/class_5139 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24968 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28899 b method_28899 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/GiantTrunkPlacer ehj net/minecraft/class_5214 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24969 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;III)V placeLogIfFreeWithOffset a method_27399 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + p 6 offsetPos + p 7 offsetX + p 8 offsetY + p 9 offsetZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28900 b method_28900 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/MegaJungleTrunkPlacer ehk net/minecraft/class_5215 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24970 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28901 b method_28901 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/StraightTrunkPlacer ehl net/minecraft/class_5140 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24971 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28902 b method_28902 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer ehm net/minecraft/class_5141 + f I MAX_BASE_HEIGHT a field_31528 + f I MAX_RAND b field_31529 + f Lcom/mojang/serialization/Codec; CODEC c field_24972 + f I MAX_HEIGHT d field_31530 + f I baseHeight e field_23760 + f I heightRandA f field_23761 + f I heightRandB g field_23762 + m ()Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; type a method_28903 + m (Lnet/minecraft/util/RandomSource;)I getTreeHeight a method_26993 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; trunkPlacerParts a method_28904 + p 0 instance + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/List; placeTrunk a method_26991 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 pos + p 6 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V placeLogIfFree a method_27401 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V setDirtAt a method_27400 + p 0 level + p 1 blockSetter + p 2 random + p 3 pos + p 4 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/function/Function;)Z placeLog a method_27402 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + p 6 propertySetter + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z validTreePos a method_43196 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43197 a method_43197 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28905 a method_28905 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z placeLog b method_35375 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isFree b method_43198 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_27405 b method_27405 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28906 b method_28906 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isDirt c method_27403 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28907 c method_28907 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType ehn net/minecraft/class_5142 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; STRAIGHT_TRUNK_PLACER a field_23763 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; FORKING_TRUNK_PLACER b field_23764 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; GIANT_TRUNK_PLACER c field_24171 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; MEGA_JUNGLE_TRUNK_PLACER d field_24172 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; DARK_OAK_TRUNK_PLACER e field_24173 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; FANCY_TRUNK_PLACER f field_24174 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; BENDING_TRUNK_PLACER g field_29309 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; UPWARDS_BRANCHING_TRUNK_PLACER h field_38792 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; CHERRY_TRUNK_PLACER i field_42855 + f Lcom/mojang/serialization/MapCodec; codec j field_24973 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28908 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; register a method_26995 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer eho net/minecraft/class_7390 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38793 + f Lnet/minecraft/util/valueproviders/IntProvider; extraBranchSteps b field_38794 + f F placeBranchPerLogProbability h field_38795 + f Lnet/minecraft/util/valueproviders/IntProvider; extraBranchLength i field_38796 + f Lnet/minecraft/core/HolderSet; canGrowThrough j field_38797 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/List;Lnet/minecraft/core/BlockPos$MutableBlockPos;ILnet/minecraft/core/Direction;II)V placeBranch a method_43199 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 treeConfig + p 6 foliageAttachments + p 7 pos + p 8 y + p 9 direction + p 10 extraBranchLength + p 11 extraBranchSteps + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43200 a method_43200 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/core/HolderSet; method_43201 a method_43201 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43202 b method_43202 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43203 b method_43203 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Ljava/lang/Float; method_43204 c method_43204 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43205 d method_43205 + m (IIILnet/minecraft/util/valueproviders/IntProvider;FLnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/core/HolderSet;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 extraBranchSteps + p 5 placeBranchPerLogProbability + p 6 extraBranchLength + p 7 canGrowThrough + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/package-info ehp net/minecraft/class_6118 +c net/minecraft/world/level/levelgen/flat/FlatLayerInfo ehq net/minecraft/class_3229 + f Lcom/mojang/serialization/Codec; CODEC a field_24974 + f Lnet/minecraft/world/level/block/Block; block b field_29566 + f I height c field_14028 + m ()I getHeight a method_14289 + c Return the amount of layers for this set of layers. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28909 a method_28909 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)Lnet/minecraft/world/level/block/Block; method_28910 a method_28910 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_14286 + m (ILnet/minecraft/world/level/block/Block;)V + p 1 height + p 2 block + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset ehr net/minecraft/class_7142 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37711 + f Lcom/mojang/serialization/Codec; CODEC b field_37712 + f Lnet/minecraft/core/Holder; displayItem c comp_559 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings d comp_560 + m ()Lnet/minecraft/core/Holder; displayItem a comp_559 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41576 a method_41576 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; method_41577 a method_41577 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings b comp_560 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset;)Lnet/minecraft/core/Holder; method_41578 b method_41578 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPresets ehs net/minecraft/class_7143 + f Lnet/minecraft/resources/ResourceKey; CLASSIC_FLAT a field_37713 + f Lnet/minecraft/resources/ResourceKey; TUNNELERS_DREAM b field_37714 + f Lnet/minecraft/resources/ResourceKey; WATER_WORLD c field_37715 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD d field_37716 + f Lnet/minecraft/resources/ResourceKey; SNOWY_KINGDOM e field_37717 + f Lnet/minecraft/resources/ResourceKey; BOTTOMLESS_PIT f field_37718 + f Lnet/minecraft/resources/ResourceKey; DESERT g field_37719 + f Lnet/minecraft/resources/ResourceKey; REDSTONE_READY h field_37720 + f Lnet/minecraft/resources/ResourceKey; THE_VOID i field_37721 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41580 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41579 + p 0 context + m ()V + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPresets$Bootstrap ehs$a net/minecraft/class_7143$class_7144 + f Lnet/minecraft/data/worldgen/BootstrapContext; context a field_40917 + m ()V run a method_41581 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/resources/ResourceKey;Ljava/util/Set;ZZ[Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)V register a method_41583 + p 1 presetKey + p 2 displayItem + p 3 biomeKey + p 4 structureSetKeys + p 5 setDecoration + p 6 addLakes + p 7 flatLayerInfos + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V + p 1 context +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings eht net/minecraft/class_3232 + f Lcom/mojang/serialization/Codec; CODEC a field_24975 + f Lorg/slf4j/Logger; LOGGER b field_14064 + f Ljava/util/Optional; structureOverrides c field_37145 + f Ljava/util/List; layersInfo d field_14072 + f Lnet/minecraft/core/Holder; biome e field_14081 + f Ljava/util/List; layers f field_14082 + f Z voidGen g field_14077 + f Z decoration h field_24976 + f Z addLakes i field_24977 + f Ljava/util/List; lakes j field_40918 + m ()V setDecoration a method_28911 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28913 a method_28913 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_34741 a method_34741 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lcom/mojang/serialization/DataResult; validateHeight a method_33067 + p 0 flatSettings + m (Ljava/util/List;Ljava/util/Optional;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; withBiomeAndLayers a method_46727 + p 1 layerInfos + p 2 structureSets + p 3 biome + m (Ljava/util/Optional;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getBiome a method_46728 + p 0 biome + p 1 defaultBiome + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; adjustGenerationSettings a method_44225 + p 1 biome + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/core/Holder; getDefaultBiome a method_46726 + p 0 biomes + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; getDefault a method_14309 + p 0 biomes + p 1 structureSetGetter + p 2 placedFeatureGetter + m ()V setAddLakes b method_28916 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/util/Optional; method_31182 b method_31182 + m (Lnet/minecraft/core/HolderGetter;)Ljava/util/List; createLakesList b method_46729 + p 0 placedFeatureGetter + m ()Ljava/util/Optional; structureOverrides c method_41139 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/Boolean; method_30046 c method_30046 + m ()Lnet/minecraft/core/Holder; getBiome d method_14326 + c Return the biome used on this preset. + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/Boolean; method_30047 d method_30047 + m ()Ljava/util/List; getLayersInfo e method_14327 + c Return the list of layers on this preset. + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/util/Optional; method_41140 e method_41140 + m ()Ljava/util/List; getLayers f method_14312 + m ()V updateLayers g method_14330 + m ()Ljava/lang/String; method_49537 h method_49537 + m (Ljava/util/Optional;Ljava/util/List;ZZLjava/util/Optional;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 structureOverrides + p 2 layersInfo + p 3 addLakes + p 4 decoration + p 5 biome + p 6 defaultBiome + p 7 lavaUnderground + p 8 lavaSurface + m (Ljava/util/Optional;Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 structureOverrides + p 2 biome + p 3 lakes + m ()V +c net/minecraft/world/level/levelgen/flat/package-info ehu net/minecraft/class_6119 +c net/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight ehv net/minecraft/class_6120 + f Lcom/mojang/serialization/MapCodec; CODEC a field_31531 + f Lorg/slf4j/Logger; LOGGER b field_31532 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_31533 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_31534 + f I inner f field_31535 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35376 a method_35376 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight; of a method_35377 + p 0 minInclusive + p 1 maxInclusive + p 2 inner + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Ljava/lang/Integer; method_35378 a method_35378 + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35379 b method_35379 + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35380 c method_35380 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 inner + m ()V +c net/minecraft/world/level/levelgen/heightproviders/ConstantHeight ehw net/minecraft/class_6121 + f Lnet/minecraft/world/level/levelgen/heightproviders/ConstantHeight; ZERO a field_31536 + f Lcom/mojang/serialization/MapCodec; CODEC b field_31537 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; value d field_31538 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/ConstantHeight; of a method_35383 + p 0 value + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; getValue b method_35385 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + p 1 value + m ()V +c net/minecraft/world/level/levelgen/heightproviders/HeightProvider ehx net/minecraft/class_6122 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_31539 + f Lcom/mojang/serialization/Codec; CODEC c field_31540 + m ()Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; getType a method_35388 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)I sample a method_35391 + p 1 random + p 2 context + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35389 a method_35389 + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lcom/mojang/datafixers/util/Either; method_35390 a method_35390 + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35392 b method_35392 + m ()V + m ()V +c net/minecraft/world/level/levelgen/heightproviders/HeightProviderType ehy net/minecraft/class_6123 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; CONSTANT a field_31541 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; UNIFORM b field_31542 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; BIASED_TO_BOTTOM c field_31543 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; VERY_BIASED_TO_BOTTOM d field_33520 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; TRAPEZOID e field_33521 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; WEIGHTED_LIST f field_35711 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_35393 a method_35393 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; register a method_35394 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight ehz net/minecraft/class_6342 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33522 + f Lorg/slf4j/Logger; LOGGER b field_33523 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_33524 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_33525 + f I plateau f field_33526 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36306 a method_36306 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight; of a method_36307 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight; of a method_36308 + p 0 minInclusive + p 1 maxInclusive + p 2 plateau + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Ljava/lang/Integer; method_36309 a method_36309 + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36310 b method_36310 + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36311 c method_36311 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 plateau + m ()V +c net/minecraft/world/level/levelgen/heightproviders/UniformHeight eia net/minecraft/class_6124 + f Lcom/mojang/serialization/MapCodec; CODEC a field_31544 + f Lorg/slf4j/Logger; LOGGER b field_31545 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_31546 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_31547 + f Lit/unimi/dsi/fastutil/longs/LongSet; warnedFor f field_36290 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35395 a method_35395 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight; of a method_35396 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35397 a method_35397 + m (Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35398 b method_35398 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight eib net/minecraft/class_6343 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33527 + f Lorg/slf4j/Logger; LOGGER b field_33528 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_33529 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_33530 + f I inner f field_33531 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36312 a method_36312 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight; of a method_36313 + p 0 minInclusive + p 1 maxInclusive + p 2 inner + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Ljava/lang/Integer; method_36314 a method_36314 + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36315 b method_36315 + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36316 c method_36316 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 inner + m ()V +c net/minecraft/world/level/levelgen/heightproviders/WeightedListHeight eic net/minecraft/class_6791 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35712 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; distribution b field_35713 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39612 a method_39612 + m (Lnet/minecraft/world/level/levelgen/heightproviders/WeightedListHeight;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_39613 a method_39613 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 distribution + m ()V +c net/minecraft/world/level/levelgen/heightproviders/package-info eid net/minecraft/class_6125 +c net/minecraft/world/level/levelgen/material/MaterialRuleList eie net/minecraft/class_6582 + f Ljava/util/List; materialRuleList a comp_437 + m ()Ljava/util/List; materialRuleList a comp_437 + m (Ljava/util/List;)V +c net/minecraft/world/level/levelgen/material/WorldGenMaterialRule eif net/minecraft/class_6583 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;III)Lnet/minecraft/world/level/block/state/BlockState; apply a method_40553 + p 1 chunk + p 2 x + p 3 y + p 4 z +c net/minecraft/world/level/levelgen/material/package-info eig net/minecraft/class_6657 +c net/minecraft/world/level/levelgen/package-info eih net/minecraft/class_6126 +c net/minecraft/world/level/levelgen/placement/BiomeFilter eii net/minecraft/class_6792 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35714 + f Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; INSTANCE c field_35715 + m ()Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; biome a method_39614 + m ()Ljava/lang/IllegalStateException; method_39616 c method_39616 + m ()Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; method_39617 d method_39617 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/BlockPredicateFilter eij net/minecraft/class_6658 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35075 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; predicate c field_35076 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38916 a method_38916 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter; forPredicate a method_39618 + p 0 predicate + m (Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_38917 a method_38917 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 predicate + m ()V +c net/minecraft/world/level/levelgen/placement/CarvingMaskPlacement eik net/minecraft/class_5851 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28934 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; step c field_28935 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/levelgen/placement/CarvingMaskPlacement; forStep a method_39619 + p 0 step + m (Lnet/minecraft/world/level/levelgen/placement/CarvingMaskPlacement;)Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; method_33862 a method_33862 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)V + p 1 step + m ()V +c net/minecraft/world/level/levelgen/placement/CaveSurface eil net/minecraft/class_5932 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; CEILING a field_29313 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; FLOOR b field_29314 + f Lcom/mojang/serialization/Codec; CODEC c field_29315 + f Lnet/minecraft/core/Direction; direction d field_29316 + f I y e field_29317 + f Ljava/lang/String; id f field_29318 + f [Lnet/minecraft/world/level/levelgen/placement/CaveSurface; $VALUES g field_29320 + m ()Lnet/minecraft/core/Direction; getDirection a method_34379 + m ()I getY b method_34380 + m ()[Lnet/minecraft/world/level/levelgen/placement/CaveSurface; $values d method_36759 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;ILjava/lang/String;)V + p 3 direction + p 4 y + p 5 id + m ()V +c net/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement eim net/minecraft/class_5452 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35716 + f Lnet/minecraft/util/valueproviders/IntProvider; count c field_35717 + m (I)Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement; of a method_39620 + p 0 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement; of a method_39621 + p 0 count + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmpty a method_30472 + p 0 state + m (Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39622 a method_39622 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;IIII)I findOnGroundYPosition a method_30473 + p 0 context + p 1 x + p 2 y + p 3 z + p 4 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/placement/CountPlacement ein net/minecraft/class_6793 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35718 + f Lnet/minecraft/util/valueproviders/IntProvider; count c field_35719 + m (I)Lnet/minecraft/world/level/levelgen/placement/CountPlacement; of a method_39623 + p 0 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/CountPlacement; of a method_39624 + p 0 count + m (Lnet/minecraft/world/level/levelgen/placement/CountPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39625 a method_39625 + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement eio net/minecraft/class_6794 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35720 + f Lnet/minecraft/core/Direction; directionOfSearch c field_35721 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; targetCondition d field_35722 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedSearchCondition e field_35723 + f I maxSteps f field_35724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39626 a method_39626 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Ljava/lang/Integer; method_39627 a method_39627 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement; scanningFor a method_39628 + p 0 directionOfSearch + p 1 targetCondition + p 2 maxSteps + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement; scanningFor a method_39629 + p 0 directionOfSearch + p 1 targetCondition + p 2 allowedSearchCondition + p 3 maxSteps + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39630 b method_39630 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39631 c method_39631 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/core/Direction; method_39632 d method_39632 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)V + p 1 directionOfSearch + p 2 targetCondition + p 3 allowedSearchCondition + p 4 maxSteps + m ()V +c net/minecraft/world/level/levelgen/placement/FixedPlacement eip net/minecraft/class_9830 + f Lcom/mojang/serialization/MapCodec; CODEC a field_52290 + f Ljava/util/List; positions c field_52291 + m (IILnet/minecraft/core/BlockPos;)Z isSameChunk a method_61119 + p 0 x + p 1 z + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61120 a method_61120 + m (Lnet/minecraft/world/level/levelgen/placement/FixedPlacement;)Ljava/util/List; method_61121 a method_61121 + m ([Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/placement/FixedPlacement; of a method_61122 + p 0 positions + m (IILnet/minecraft/core/BlockPos;)Z method_61123 b method_61123 + m (Ljava/util/List;)V + p 1 positions + m ()V +c net/minecraft/world/level/levelgen/placement/HeightRangePlacement eiq net/minecraft/class_6795 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35725 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; height c field_35726 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39633 a method_39633 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; uniform a method_39634 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; of a method_39635 + p 0 height + m (Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_39636 a method_39636 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; triangle b method_39637 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)V + p 1 height + m ()V +c net/minecraft/world/level/levelgen/placement/HeightmapPlacement eir net/minecraft/class_5925 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29265 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap c field_29266 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34330 a method_34330 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/placement/HeightmapPlacement; onHeightmap a method_39638 + p 0 heightmap + m (Lnet/minecraft/world/level/levelgen/placement/HeightmapPlacement;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_34331 a method_34331 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 heightmap + m ()V +c net/minecraft/world/level/levelgen/placement/InSquarePlacement eis net/minecraft/class_5450 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35727 + f Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; INSTANCE c field_35728 + m ()Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; spread a method_39639 + m ()Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; method_39640 c method_39640 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement eit net/minecraft/class_3275 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24987 + f I noiseToCountRatio c field_14208 + f D noiseFactor d field_14206 + f D noiseOffset e field_14205 + m (IDD)Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement; of a method_39641 + p 0 noiseToCountRatio + p 1 noiseFactor + p 3 noiseOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28939 a method_28939 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Double; method_28941 a method_28941 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Double; method_28942 b method_28942 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Integer; method_28943 c method_28943 + m (IDD)V + p 1 noiseToCountRatio + p 2 noiseFactor + p 4 noiseOffset + m ()V +c net/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement eiu net/minecraft/class_3003 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24890 + f D noiseLevel c field_13444 + f I belowNoise d field_13446 + f I aboveNoise e field_13445 + m (DII)Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement; of a method_39642 + p 0 noiseLevel + p 2 belowNoise + p 3 aboveNoise + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28733 a method_28733 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Integer; method_28732 a method_28732 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Integer; method_28734 b method_28734 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Double; method_28735 c method_28735 + m (DII)V + p 1 noiseLevel + p 3 belowNoise + p 4 aboveNoise + m ()V +c net/minecraft/world/level/levelgen/placement/PlacedFeature eiv net/minecraft/class_6796 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_35729 + f Lcom/mojang/serialization/Codec; CODEC b field_35730 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_35731 + f Lcom/mojang/serialization/Codec; LIST_OF_LISTS_CODEC d field_36416 + f Lnet/minecraft/core/Holder; feature e comp_334 + f Ljava/util/List; placement f comp_335 + m ()Ljava/util/stream/Stream; getFeatures a method_39643 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39645 a method_39645 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_39644 + p 1 level + p 2 generator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/core/BlockPos;)V method_39646 a method_39646 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Ljava/util/List; method_39647 a method_39647 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeWithContext a method_39648 + p 1 context + p 2 source + p 3 pos + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; method_39649 a method_39649 + m ()Lnet/minecraft/core/Holder; feature b comp_334 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeWithBiomeCheck b method_39650 + p 1 level + p 2 generator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Lnet/minecraft/core/Holder; method_39651 b method_39651 + m ()Ljava/util/List; placement c comp_335 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementContext eiw net/minecraft/class_5444 + f Lnet/minecraft/world/level/WorldGenLevel; level a field_25857 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b field_35734 + f Ljava/util/Optional; topFeature c field_35735 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getCarvingMask a method_30459 + p 1 chunkPos + p 2 step + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_30460 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_30461 + p 1 pos + m ()I getMinBuildHeight c method_33868 + m ()Lnet/minecraft/world/level/WorldGenLevel; getLevel d method_34383 + m ()Ljava/util/Optional; topFeature e method_39652 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator f method_39653 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Ljava/util/Optional;)V + p 1 level + p 2 generator + p 3 topFeature +c net/minecraft/world/level/levelgen/placement/PlacementFilter eix net/minecraft/class_6661 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z shouldPlace a method_38918 + p 1 context + p 2 random + p 3 pos + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementModifier eiy net/minecraft/class_6797 + f Lcom/mojang/serialization/Codec; CODEC b field_35736 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; getPositions a_ method_14452 + p 1 context + p 2 random + p 3 pos + m ()Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; type b method_39615 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementModifierType eiz net/minecraft/class_6798 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; BLOCK_PREDICATE_FILTER a field_35737 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; RARITY_FILTER b field_35738 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; SURFACE_RELATIVE_THRESHOLD_FILTER c field_35739 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; SURFACE_WATER_DEPTH_FILTER d field_35740 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; BIOME_FILTER e field_35741 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; COUNT f field_35742 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; NOISE_BASED_COUNT g field_35743 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; NOISE_THRESHOLD_COUNT h field_35744 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; COUNT_ON_EVERY_LAYER i field_35745 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; ENVIRONMENT_SCAN j field_35746 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; HEIGHTMAP k field_35747 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; HEIGHT_RANGE l field_35748 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; IN_SQUARE m field_35749 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; RANDOM_OFFSET n field_35750 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; CARVING_MASK_PLACEMENT o field_35751 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; FIXED_PLACEMENT p field_52292 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_39654 a method_39654 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; register a method_39655 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/placement/RandomOffsetPlacement eja net/minecraft/class_6732 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35419 + f Lnet/minecraft/util/valueproviders/IntProvider; xzSpread c field_35420 + f Lnet/minecraft/util/valueproviders/IntProvider; ySpread d field_35421 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; vertical a method_39656 + p 0 ySpread + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; of a method_39657 + p 0 xzSpread + p 1 ySpread + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39179 a method_39179 + m (Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39180 a method_39180 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; horizontal b method_39658 + p 0 xzSpread + m (Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39181 b method_39181 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 xzSpread + p 2 ySpread + m ()V +c net/minecraft/world/level/levelgen/placement/RarityFilter ejb net/minecraft/class_6799 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35752 + f I chance c field_35753 + m (I)Lnet/minecraft/world/level/levelgen/placement/RarityFilter; onAverageOnceEvery a method_39659 + p 0 chance + m (Lnet/minecraft/world/level/levelgen/placement/RarityFilter;)Ljava/lang/Integer; method_39660 a method_39660 + m (I)V + p 1 chance + m ()V +c net/minecraft/world/level/levelgen/placement/RepeatingPlacement ejc net/minecraft/class_5857 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)I count a method_14452 + p 1 random + p 2 pos + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; method_33874 a method_33874 + m ()V +c net/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter ejd net/minecraft/class_6584 + f Lcom/mojang/serialization/MapCodec; CODEC a field_34721 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap c field_34722 + f I minInclusive d field_34723 + f I maxInclusive e field_34724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38456 a method_38456 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter; of a method_39661 + p 0 heightmap + p 1 minInclusive + p 2 maxInclusive + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Ljava/lang/Integer; method_38457 a method_38457 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Ljava/lang/Integer; method_38458 b method_38458 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_38459 c method_38459 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)V + p 1 heightmap + p 2 minInclusive + p 3 maxInclusive + m ()V +c net/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter eje net/minecraft/class_5934 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29323 + f I maxWaterDepth c field_29324 + m (I)Lnet/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter; forMaxDepth a method_39662 + p 0 maxWaterDepth + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34386 a method_34386 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter;)Ljava/lang/Integer; method_34387 a method_34387 + m (I)V + p 1 maxWaterDepth + m ()V +c net/minecraft/world/level/levelgen/placement/package-info ejf net/minecraft/class_6128 +c net/minecraft/world/level/levelgen/presets/WorldPreset ejg net/minecraft/class_7145 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37725 + f Lcom/mojang/serialization/Codec; CODEC b field_37726 + f Ljava/util/Map; dimensions c field_37727 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; createWorldDimensions a method_45546 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceKey;)V method_57015 a method_57015 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41586 a method_41586 + m (Lnet/minecraft/world/level/levelgen/presets/WorldPreset;)Lcom/mojang/serialization/DataResult; requireOverworld a method_44351 + p 0 preset + m ()Ljava/util/Optional; overworld b method_41584 + m (Lnet/minecraft/world/level/levelgen/presets/WorldPreset;)Ljava/util/Map; method_41588 b method_41588 + m ()Lcom/google/common/collect/ImmutableMap; dimensionsInOrder c method_57016 + m ()Ljava/lang/String; method_49538 d method_49538 + m (Ljava/util/Map;)V + p 1 dimensions + m ()V +c net/minecraft/world/level/levelgen/presets/WorldPresets ejh net/minecraft/class_5317 + f Lnet/minecraft/resources/ResourceKey; NORMAL a field_25050 + f Lnet/minecraft/resources/ResourceKey; FLAT b field_25054 + f Lnet/minecraft/resources/ResourceKey; LARGE_BIOMES c field_35756 + f Lnet/minecraft/resources/ResourceKey; AMPLIFIED d field_35757 + f Lnet/minecraft/resources/ResourceKey; SINGLE_BIOME_SURFACE e field_25056 + f Lnet/minecraft/resources/ResourceKey; DEBUG f field_25059 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Ljava/util/Optional; method_45547 a method_45547 + m (Lnet/minecraft/world/level/levelgen/WorldDimensions;)Ljava/util/Optional; fromSettings a method_41594 + p 0 worldDimensions + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41597 + p 0 name + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; createNormalWorldDimensions a method_41598 + p 0 registry + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41593 + p 0 context + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/dimension/LevelStem; getNormalOverworld b method_41599 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/levelgen/presets/WorldPresets$Bootstrap ejh$a net/minecraft/class_5317$class_7146 + f Lnet/minecraft/data/worldgen/BootstrapContext; context a field_40919 + f Lnet/minecraft/core/HolderGetter; noiseSettings b field_37732 + f Lnet/minecraft/core/HolderGetter; biomes c field_37730 + f Lnet/minecraft/core/HolderGetter; placedFeatures d field_40920 + f Lnet/minecraft/core/HolderGetter; structureSets e field_37731 + f Lnet/minecraft/core/HolderGetter; multiNoiseBiomeSourceParameterLists f field_42993 + f Lnet/minecraft/core/Holder; overworldDimensionType g field_37734 + f Lnet/minecraft/world/level/dimension/LevelStem; netherStem h field_37737 + f Lnet/minecraft/world/level/dimension/LevelStem; endStem i field_37740 + m ()V bootstrap a method_41600 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V registerCustomOverworldPreset a method_41604 + p 1 dimensionKey + p 2 levelStem + m (Lnet/minecraft/world/level/biome/BiomeSource;)V registerOverworlds a method_49257 + p 1 biomeSource + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/dimension/LevelStem; makeNoiseBasedOverworld a method_41601 + p 1 biomeSource + p 2 settings + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;)Lnet/minecraft/world/level/dimension/LevelStem; makeOverworld a method_41602 + p 1 generator + m (Lnet/minecraft/world/level/dimension/LevelStem;)Lnet/minecraft/world/level/levelgen/presets/WorldPreset; createPresetWithCustomOverworld a method_41603 + p 1 overworldStem + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V + p 1 context +c net/minecraft/world/level/levelgen/presets/package-info eji net/minecraft/class_7728 +c net/minecraft/world/level/levelgen/structure/BoundingBox ejj net/minecraft/class_3341 + c A simple three-dimensional mutable integer bounding box.\nNote that this box is both mutable, and has an implementation of {@code hashCode()} and {@code equals()}.\nThis can be used as {@code HashMap} keys for example, if the user can ensure the instances themselves are not modified. + f Lcom/mojang/serialization/Codec; CODEC a field_29325 + f Lorg/slf4j/Logger; LOGGER b field_31548 + f I minX c field_14380 + f I minY d field_14379 + f I minZ e field_14378 + f I maxX f field_14377 + f I maxY g field_14376 + f I maxZ h field_14381 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; infinite a method_14665 + m (I)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; inflatedBy a method_35410 + c Expands this box by a fixed {@code value} in all directions. + p 1 value + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; move a method_14661 + c Translates this box by the given coordinates, modifying the current box. + p 1 x + p 2 y + p 3 z + m (IIII)Z intersects a method_14669 + c @return {@code true} if this bounding box intersects the horizontal x/z region described by the min and max parameters. + p 1 minX + p 2 minZ + p 3 maxX + p 4 maxZ + m (IIIIIIIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; orientBox a method_14667 + c Create a bounding box with the specified dimensions and rotate it. Used to project a possible new component Bounding Box - to check if it would cut anything already spawned. + p 0 structureMinX + p 1 structureMinY + p 2 structureMinZ + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + p 9 facing + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z intersects a method_14657 + c @return {@code true} if {@code box} intersects this box. + p 1 box + m (Ljava/lang/Iterable;)Ljava/util/Optional; encapsulatingPositions a method_35411 + p 0 positions + m (Ljava/util/function/Consumer;)V forAllCorners a method_34391 + p 1 pos + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_34392 a method_34392 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; encapsulate a method_34389 + c Expands this box to be at least large enough to contain {@code pos}. + p 1 pos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; move a method_29299 + c Translates this box by the given vector, modifying the current box. + p 1 vector + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; fromCorners a method_34390 + p 0 first + p 1 second + m ([I)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; method_34393 a method_34393 + m ()Ljava/util/stream/Stream; intersectingChunks b method_54883 + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; moved b method_19311 + c @return A new bounding box equal to this box, translated by the given coordinates. + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; encapsulate b method_35412 + c Expands this box to be at least large enough to contain {@code box}. + p 1 box + m (Ljava/lang/Iterable;)Ljava/util/Optional; encapsulatingBoxes b method_35413 + p 0 boxes + m (Lnet/minecraft/core/Vec3i;)Z isInside b method_14662 + c @return {@code true} if the bounding box contains the {@code vector}. + p 1 vector + m ()Lnet/minecraft/core/Vec3i; getLength c method_14659 + c Returns a vector describing the dimensions of this bounding box.\nNote that unlike {@code getXSpan()}, {@code getYSpan()}, and {@code getZSpan()}, the length is interpreted here as the difference in coordinates. So a box over a 1x1x1 area, which still contains a single point, will report length zero. + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; inflatedBy c method_59718 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/util/stream/IntStream; method_34394 c method_34394 + m ()I getXSpan d method_35414 + c @return The length of this bounding box along the x-axis. + m (III)Z isInside d method_47593 + p 1 x + p 2 y + p 3 z + m ()I getYSpan e method_14660 + c @return The length of this bounding box along the y-axis. + m ()I getZSpan f method_14663 + c @return The length of this bounding box along the z-axis. + m ()Lnet/minecraft/core/BlockPos; getCenter g method_22874 + c @return The center of this bounding box. Note in even-sized dimensions the center position will be offset in the positive direction. + m ()I minX h method_35415 + m ()I minY i method_35416 + m ()I minZ j method_35417 + m ()I maxX k method_35418 + m ()I maxY l method_35419 + m ()I maxZ m method_35420 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (IIIIII)V + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m ()V +c net/minecraft/world/level/levelgen/structure/BoundingBox$1 ejj$1 net/minecraft/class_3341$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14382 + m ()V +c net/minecraft/world/level/levelgen/structure/BuiltinStructureSets ejk net/minecraft/class_7057 + f Lnet/minecraft/resources/ResourceKey; VILLAGES a field_37146 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMIDS b field_37147 + f Lnet/minecraft/resources/ResourceKey; IGLOOS c field_37148 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLES d field_37149 + f Lnet/minecraft/resources/ResourceKey; SWAMP_HUTS e field_37150 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOSTS f field_37151 + f Lnet/minecraft/resources/ResourceKey; OCEAN_MONUMENTS g field_37152 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSIONS h field_37153 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURES i field_37154 + f Lnet/minecraft/resources/ResourceKey; MINESHAFTS j field_37155 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTALS k field_37156 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECKS l field_37157 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUINS m field_37158 + f Lnet/minecraft/resources/ResourceKey; NETHER_COMPLEXES n field_37159 + f Lnet/minecraft/resources/ResourceKey; NETHER_FOSSILS o field_37160 + f Lnet/minecraft/resources/ResourceKey; END_CITIES p field_37161 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITIES q field_38427 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLDS r field_37162 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS s field_43325 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS t field_47410 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41141 + p 0 name + m ()V +c net/minecraft/world/level/levelgen/structure/BuiltinStructures ejl net/minecraft/class_7058 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_JUNGLE A field_37163 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_SWAMP B field_37164 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_MOUNTAIN C field_37165 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_OCEAN D field_37166 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_NETHER E field_37167 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY F field_38428 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS G field_43326 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS H field_47411 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOST a field_37168 + f Lnet/minecraft/resources/ResourceKey; MINESHAFT b field_37169 + f Lnet/minecraft/resources/ResourceKey; MINESHAFT_MESA c field_37170 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSION d field_37171 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE e field_37172 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID f field_37173 + f Lnet/minecraft/resources/ResourceKey; IGLOO g field_37174 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK h field_37175 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_BEACHED i field_37176 + f Lnet/minecraft/resources/ResourceKey; SWAMP_HUT j field_37177 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD k field_37178 + f Lnet/minecraft/resources/ResourceKey; OCEAN_MONUMENT l field_37179 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_COLD m field_37180 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_WARM n field_37181 + f Lnet/minecraft/resources/ResourceKey; FORTRESS o field_37182 + f Lnet/minecraft/resources/ResourceKey; NETHER_FOSSIL p field_37183 + f Lnet/minecraft/resources/ResourceKey; END_CITY q field_37184 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURE r field_37185 + f Lnet/minecraft/resources/ResourceKey; BASTION_REMNANT s field_37186 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_PLAINS t field_37187 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_DESERT u field_37188 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SAVANNA v field_37189 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SNOWY w field_37190 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TAIGA x field_37191 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_STANDARD y field_37192 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_DESERT z field_37193 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_41142 + p 0 name + m ()V +c net/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler ejm net/minecraft/class_3360 + f Ljava/util/Map; CURRENT_TO_LEGACY_MAP a field_14435 + f Ljava/util/Map; LEGACY_TO_CURRENT_MAP b field_14436 + f Ljava/util/Set; OLD_STRUCTURE_REGISTRY_KEYS c field_37194 + f Z hasLegacyData d field_14434 + f Ljava/util/Map; dataMap e field_14432 + f Ljava/util/Map; indexMap f field_14433 + f Ljava/util/List; legacyKeys g field_17658 + f Ljava/util/List; currentKeys h field_17659 + m (II)Z isUnhandledStructureStart a method_14737 + p 1 chunkX + p 2 chunkZ + m (IILjava/lang/String;)Z hasLegacyStart a method_14738 + p 1 chunkX + p 2 chunkZ + p 3 key + m (J)V removeIndex a method_14744 + p 1 packedChunkPos + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/DimensionDataStorage;)Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; getLegacyStructureHandler a method_14745 + p 0 level + p 1 storage + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V populateCaches a method_14734 + p 1 storage + m (Ljava/lang/String;)Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; method_14736 a method_14736 + m (Ljava/util/HashMap;)V method_14742 a method_14742 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; updateFromLegacy a method_14735 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; updateStructureStart a method_14741 + p 1 tag + p 2 chunkPos + m (Ljava/util/HashMap;)V method_14739 b method_14739 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;Ljava/util/List;Ljava/util/List;)V + p 1 storage + p 2 legacyKeys + p 3 currentKeys + m ()V +c net/minecraft/world/level/levelgen/structure/PoolElementStructurePiece ejn net/minecraft/class_3790 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; element a field_16693 + f Lnet/minecraft/core/BlockPos; position b field_16695 + f Lnet/minecraft/world/level/block/Rotation; rotation c field_16694 + f Lorg/slf4j/Logger; LOGGER d field_24991 + f I groundLevelDelta h field_16692 + f Ljava/util/List; junctions i field_16696 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager j field_17660 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings k field_52228 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/nbt/Tag;)V method_16649 a method_16649 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Z)V place a method_27236 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 pos + p 7 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/structure/pools/JigsawJunction;)V addJunction a method_16647 + p 1 junction + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_35448 a method_35448 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28949 a method_28949 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; getElement b method_16644 + m ()Lnet/minecraft/core/BlockPos; getPosition c method_16648 + m ()I getGroundLevelDelta d method_16646 + m ()Ljava/util/List; getJunctions e method_16645 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V + p 1 structureTemplateManager + p 2 element + p 3 position + p 4 groundLevelDelta + p 5 rotation + p 6 boundingBox + p 7 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;)V + p 1 context + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/PostPlacementProcessor ejo net/minecraft/class_6621 + f Lnet/minecraft/world/level/levelgen/structure/PostPlacementProcessor; NONE a field_34938 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V method_38701 a method_38701 + m ()V +c net/minecraft/world/level/levelgen/structure/ScatteredFeaturePiece ejp net/minecraft/class_3418 + f I width a field_15244 + f I height b field_15243 + f I depth c field_15242 + f I heightPosition d field_15241 + m (Lnet/minecraft/world/level/LevelAccessor;I)Z updateHeightPositionToLowestGroundHeight a method_38462 + p 1 level + p 2 height + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;I)Z updateAverageGroundHeight a method_14839 + p 1 level + p 2 bounds + p 3 height + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;IIIIIILnet/minecraft/core/Direction;)V + p 1 type + p 2 x + p 3 y + p 4 z + p 5 width + p 6 height + p 7 depth + p 8 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/SinglePieceStructure ejq net/minecraft/class_7147 + f Lnet/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor; constructor d field_37741 + f I width e field_37742 + f I depth f field_37743 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41605 a method_41605 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_41606 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor;IILnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 constructor + p 2 width + p 3 depth + p 4 settings +c net/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor ejq$a net/minecraft/class_7147$class_7148 +c net/minecraft/world/level/levelgen/structure/Structure ejr net/minecraft/class_3195 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37744 + f Lcom/mojang/serialization/Codec; CODEC b field_37745 + f Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; settings c field_38429 + m ()Lnet/minecraft/core/HolderSet; biomes a method_41607 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; settingsCodec a method_42697 + p 0 instance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V afterPlace a method_38694 + p 1 level + p 2 structureManager + p 3 chunkGenerator + p 4 random + p 5 boundingBox + p 6 chunkPos + p 7 pieces + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; adjustBoundingBox a method_41609 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Ljava/util/Optional; findGenerationPoint a method_38676 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;II)I getLowestY a method_41610 + p 0 context + p 1 maxX + p 2 maxZ + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)I getMeanFirstOccupiedHeight a method_59863 + p 0 context + p 1 minX + p 2 maxX + p 3 minZ + p 4 maxZ + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getLowestYIn5by5BoxOffset7Blocks a method_42382 + p 1 context + p 2 rotation + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/Heightmap$Types;Ljava/util/function/Consumer;)Ljava/util/Optional; onTopOfChunkCenter a method_41612 + p 0 context + p 1 heightmapTypes + p 2 generator + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationStub;)Z method_47931 a method_47931 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationStub;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Z isValidBiome a method_41613 + p 0 stub + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; method_42698 a method_42698 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; simpleCodec a method_42699 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42700 a method_42700 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; generate a method_41614 + p 1 registryAccess + p 2 chunkGenerator + p 3 biomeSource + p 4 randomState + p 5 structureTemplateManager + p 6 seed + p 8 chunkPos + p 9 references + p 10 heightAccessor + p 11 validBiome + m ()Ljava/util/Map; spawnOverrides b method_41615 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Ljava/util/Optional; findValidGenerationPoint b method_47932 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)I getLowestY b method_42381 + p 0 context + p 1 minX + p 2 minZ + p 3 maxX + p 4 maxZ + m ()Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c method_41616 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)[I getCornerHeights c method_41611 + p 0 context + p 1 minX + p 2 maxX + p 3 minZ + p 4 maxZ + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation d method_42701 + m ()Lnet/minecraft/world/level/levelgen/structure/StructureType; type e method_41618 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/Structure$GenerationContext ejr$a net/minecraft/class_3195$class_7149 + f Lnet/minecraft/core/RegistryAccess; registryAccess a comp_561 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_562 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c comp_563 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState d comp_564 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e comp_565 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_566 + f J seed g comp_567 + f Lnet/minecraft/world/level/ChunkPos; chunkPos h comp_568 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i comp_569 + f Ljava/util/function/Predicate; validBiome j comp_570 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess a comp_561 + m (JLnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/levelgen/WorldgenRandom; makeRandom a method_41619 + p 0 seed + p 2 chunkPos + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_562 + m ()Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c comp_563 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState d comp_564 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e comp_565 + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_566 + m ()J seed g comp_567 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos h comp_568 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i comp_569 + m ()Ljava/util/function/Predicate; validBiome j comp_570 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)V + p 1 registryAccess + p 2 chunkGenerator + p 3 biomeSource + p 4 randomState + p 5 structureTemplateManager + p 6 seed + p 8 chunkPos + p 9 heightAccessor + p 10 validBiome + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)V +c net/minecraft/world/level/levelgen/structure/Structure$GenerationStub ejr$b net/minecraft/class_3195$class_7150 + f Lnet/minecraft/core/BlockPos; position a comp_571 + f Lcom/mojang/datafixers/util/Either; generator b comp_572 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; getPiecesBuilder a method_44019 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; method_44020 a method_44020 + m (Ljava/util/function/Consumer;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; method_44021 a method_44021 + m ()Lnet/minecraft/core/BlockPos; position b comp_571 + m ()Lcom/mojang/datafixers/util/Either; generator c comp_572 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V + p 1 position + p 2 generator + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Either;)V +c net/minecraft/world/level/levelgen/structure/Structure$StructureSettings ejr$c net/minecraft/class_3195$class_7302 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38430 + f Lnet/minecraft/core/HolderSet; biomes b comp_686 + f Ljava/util/Map; spawnOverrides c comp_687 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step d comp_688 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation e comp_689 + f Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; DEFAULT f field_52229 + m ()Lnet/minecraft/core/HolderSet; biomes a comp_686 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42702 a method_42702 + m ()Ljava/util/Map; spawnOverrides b comp_687 + m ()Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c comp_688 + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation d comp_689 + m (Lnet/minecraft/core/HolderSet;)V + p 1 biomes + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;)V + m ()V +c net/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder ejr$c$a net/minecraft/class_3195$class_7302$class_9821 + f Lnet/minecraft/core/HolderSet; biomes a field_52230 + f Ljava/util/Map; spawnOverrides b field_52231 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c field_52232 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaption d field_52233 + m ()Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; build a method_61008 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; generationStep a method_61009 + p 1 generationStep + m (Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; terrainAdapation a method_61010 + p 1 terrainAdaptation + m (Ljava/util/Map;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; spawnOverrides a method_61011 + p 1 spawnOverrides + m (Lnet/minecraft/core/HolderSet;)V + p 1 biomes +c net/minecraft/world/level/levelgen/structure/StructureCheck ejs net/minecraft/class_6832 + f Lorg/slf4j/Logger; LOGGER a field_36225 + f I NO_STRUCTURE b field_36226 + f Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; storageAccess c field_36227 + f Lnet/minecraft/core/RegistryAccess; registryAccess d field_36228 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e field_36230 + f Lnet/minecraft/resources/ResourceKey; dimension f field_36231 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator g field_36232 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState h field_37750 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i field_36233 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource j field_36234 + f J seed k field_36235 + f Lcom/mojang/datafixers/DataFixer; fixerUpper l field_36236 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; loadedChunks m field_36237 + f Ljava/util/Map; featureChecks n field_36238 + m (JLit/unimi/dsi/fastutil/longs/Long2BooleanMap;)V method_39827 a method_39827 + m (JLit/unimi/dsi/fastutil/objects/Object2IntMap;)V storeFullResults a method_39828 + p 1 chunkPos + p 3 structureChunks + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)V incrementReference a method_39830 + p 1 pos + p 2 structure + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;J)Z method_41143 a method_41143 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStart a method_39831 + p 1 chunkPos + p 2 structure + p 3 placement + p 4 skipKnownStructures + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;ZJ)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; tryLoadFromStorage a method_39832 + p 1 chunkPos + p 2 structure + p 3 skipKnownStructures + p 4 packedChunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Map;)V onStructureLoad a method_39833 + p 1 chunkPos + p 2 chunkStarts + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/Long2BooleanMap; method_39834 a method_39834 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Ljava/lang/Integer;)Ljava/lang/Integer; method_39836 a method_39836 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Ljava/lang/Long;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_39837 a method_39837 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; deduplicateEmptyMap a method_39838 + p 0 map + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_39839 a method_39839 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/level/levelgen/structure/Structure;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStructureInfo a method_39840 + p 1 structureChunks + p 2 structure + p 3 skipKnownStructures + m (Lnet/minecraft/nbt/CompoundTag;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; loadStructures a method_39842 + p 1 tag + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Z canCreateStructure b method_39829 + p 1 chunkPos + p 2 structure + m (Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/biome/BiomeSource;JLcom/mojang/datafixers/DataFixer;)V + p 1 storageAccess + p 2 registryAccess + p 3 structureTemplateManager + p 4 dimension + p 5 chunkGenerator + p 6 randomState + p 7 heightAccessor + p 8 biomeSource + p 9 seed + p 11 fixerUpper + m ()V +c net/minecraft/world/level/levelgen/structure/StructureCheckResult ejt net/minecraft/class_6833 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; START_PRESENT a field_36239 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; START_NOT_PRESENT b field_36240 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; CHUNK_LOAD_NEEDED c field_36241 + f [Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; $VALUES d field_36242 + m ()[Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; $values a method_39843 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureFeatureIndexSavedData eju net/minecraft/class_3440 + f Ljava/lang/String; TAG_REMAINING_INDEXES a field_31660 + f Ljava/lang/String; TAG_All_INDEXES b field_31661 + f Lit/unimi/dsi/fastutil/longs/LongSet; all c field_15301 + f Lit/unimi/dsi/fastutil/longs/LongSet; remaining d field_15302 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52601 + m (J)V addIndex a method_14896 + p 1 index + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAll b method_14898 + m (J)Z hasStartIndex b method_14897 + p 1 index + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/levelgen/structure/StructureFeatureIndexSavedData; load b method_32358 + p 0 tag + p 1 registries + m (J)Z hasUnhandledIndex c method_14894 + p 1 index + m (J)V removeIndex d method_14895 + p 1 index + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 all + p 2 remaining + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece ejv net/minecraft/class_3443 + f Lorg/slf4j/Logger; LOGGER a field_29327 + f Lnet/minecraft/core/Direction; orientation b field_15312 + f Lnet/minecraft/world/level/block/Mirror; mirror c field_15310 + f Lnet/minecraft/world/level/block/Rotation; rotation d field_15313 + f Lnet/minecraft/world/level/block/state/BlockState; CAVE_AIR e field_15314 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox f field_15315 + f I genDepth g field_15316 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; type h field_16712 + f Ljava/util/Set; SHAPE_CHECK_BLOCKS i field_15311 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation a method_16888 + m (I)V setGenDepth a method_41620 + p 1 genDepth + m (II)I getWorldX a method_14928 + p 1 x + p 2 z + m (III)V move a method_14922 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/core/Direction;III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; makeBoundingBox a method_35454 + p 0 x + p 1 y + p 2 z + p 3 direction + p 4 offsetX + p 5 offsetY + p 6 offsetZ + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandomHorizontalDirection a method_35457 + p 0 random + m (Lnet/minecraft/world/level/BlockGetter;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/block/state/BlockState; getBlock a method_14929 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; reorient a method_14916 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/ChunkPos;I)Z isCloseToChunk a method_16654 + p 1 chunkPos + p 2 distance + m (Lnet/minecraft/world/level/LevelReader;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z canBeReplaced a method_33780 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockState;)Z createChest a method_14921 + p 1 level + p 2 box + p 3 random + p 4 pos + p 5 lootTable + p 6 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/BlockPos;)V postProcess a method_14931 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 chunkPos + p 7 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V placeBlock a method_14917 + p 1 level + p 2 blockstate + p 3 x + p 4 y + p 5 z + p 6 boundingbox + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIII)V generateAirBox a method_14942 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V generateBox a method_14940 + c Fill the given area with the selected blocks + p 1 level + p 2 box + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + p 9 boundaryBlockState + p 10 insideBlockState + p 11 existingOnly + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Z)V generateUpperHalfSphere a method_14919 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 state + p 10 excludeAir + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIIZLnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector;)V generateBox a method_14938 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 alwaysReplace + p 10 random + p 11 blockSelector + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;ZZ)V generateMaybeBox a method_14933 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x1 + p 6 y1 + p 7 z1 + p 8 x2 + p 9 y2 + p 10 z2 + p 11 edgeState + p 12 state + p 13 requireNonAir + p 14 requireSkylight + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIIILnet/minecraft/world/level/block/state/BlockState;)V maybeGenerateBlock a method_14945 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x + p 6 y + p 7 z + p 8 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/resources/ResourceKey;)Z createChest a method_14915 + p 1 level + p 2 box + p 3 random + p 4 x + p 5 y + p 6 z + p 7 lootTable + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;Lnet/minecraft/resources/ResourceKey;)Z createDispenser a method_14930 + p 1 level + p 2 box + p 3 random + p 4 x + p 5 y + p 6 z + p 7 facing + p 8 lootTable + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V generateBox a method_35455 + p 1 level + p 2 boundingBox + p 3 box + p 4 boundaryBlockState + p 5 insideBlockState + p 6 existingOnly + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;ZLnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector;)V generateBox a method_35456 + p 1 level + p 2 boundingBox + p 3 box + p 4 alwaysReplace + p 5 random + p 6 blockSelector + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isReplaceableByStructures a method_33881 + p 1 state + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;)V addChildren a method_14918 + p 1 piece + p 2 pieces + p 3 random + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/nbt/CompoundTag; createTag a method_14946 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData a method_14943 + p 1 context + p 2 tag + m (Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_35459 a method_35459 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; findCollisionPiece a method_38702 + p 0 pieces + p 1 boundingBox + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; createBoundingBox a method_38703 + p 0 pieces + m (Lnet/minecraft/core/Direction;)V setOrientation a method_14926 + p 1 orientation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_34398 a method_34398 + m ()Ljava/lang/IllegalStateException; method_38704 b method_38704 + m (I)I getWorldY b method_14924 + p 1 y + m (II)I getWorldZ b method_14941 + p 1 x + p 2 z + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; getWorldPos b method_33781 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/LevelReader;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isInterior b method_14939 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V fillColumnDown b method_14936 + p 1 level + p 2 state + p 3 x + p 4 y + p 5 z + p 6 box + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox f method_14935 + m ()I getGenDepth g method_14923 + m ()Lnet/minecraft/core/BlockPos; getLocatorPosition h method_35458 + m ()Lnet/minecraft/core/Direction; getOrientation i method_14934 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror j method_35460 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; getType k method_16653 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece$1 ejv$1 net/minecraft/class_3443$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15318 + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector ejv$a net/minecraft/class_3443$class_3444 + f Lnet/minecraft/world/level/block/state/BlockState; next a field_15317 + m ()Lnet/minecraft/world/level/block/state/BlockState; getNext a method_14947 + m (Lnet/minecraft/util/RandomSource;IIIZ)V next a method_14948 + p 1 random + p 2 x + p 3 y + p 4 z + p 5 wall + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePieceAccessor ejw net/minecraft/class_6130 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; findCollisionPiece a method_35461 + p 1 box + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;)V addPiece a method_35462 + p 1 piece +c net/minecraft/world/level/levelgen/structure/StructureSet ejx net/minecraft/class_7059 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37195 + f Lcom/mojang/serialization/Codec; CODEC b field_37196 + f Ljava/util/List; structures c comp_510 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement; placement d comp_511 + m ()Ljava/util/List; structures a comp_510 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41144 a method_41144 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry; entry a method_41145 + p 0 structure + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry; entry a method_41146 + p 0 structure + p 1 weight + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement; placement b comp_511 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)V + p 1 structure + p 2 placement + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry ejx$a net/minecraft/class_7059$class_7060 + f Lcom/mojang/serialization/Codec; CODEC a field_37197 + f Lnet/minecraft/core/Holder; structure b comp_512 + f I weight c comp_513 + m ()Lnet/minecraft/core/Holder; structure a comp_512 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41147 a method_41147 + m ()I weight b comp_513 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSpawnOverride ejy net/minecraft/class_7061 + f Lcom/mojang/serialization/Codec; CODEC a field_37198 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; boundingBox b comp_514 + f Lnet/minecraft/util/random/WeightedRandomList; spawns c comp_515 + m ()Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; boundingBox a comp_514 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41149 a method_41149 + m ()Lnet/minecraft/util/random/WeightedRandomList; spawns b comp_515 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType;Lnet/minecraft/util/random/WeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType ejy$a net/minecraft/class_7061$class_7062 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; PIECE a field_37199 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; STRUCTURE b field_37200 + f Lcom/mojang/serialization/Codec; CODEC c field_37202 + f Ljava/lang/String; id d field_37203 + f [Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; $VALUES e field_37204 + m ()[Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; $values a method_41152 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/StructureStart ejz net/minecraft/class_3449 + f Ljava/lang/String; INVALID_START_ID a field_31662 + f Lnet/minecraft/world/level/levelgen/structure/StructureStart; INVALID_START b field_16713 + f Lorg/slf4j/Logger; LOGGER c field_37751 + f Lnet/minecraft/world/level/levelgen/structure/Structure; structure d field_16714 + f Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; pieceContainer e field_34940 + f Lnet/minecraft/world/level/ChunkPos; chunkPos f field_29070 + f I references g field_15326 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; cachedBoundingBox h field_31663 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_14969 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;)V placeInChunk a method_14974 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; createTag a method_14972 + p 1 context + p 2 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;J)Lnet/minecraft/world/level/levelgen/structure/StructureStart; loadStaticStart a method_41621 + p 0 context + p 1 tag + p 2 seed + m ()Z isValid b method_16657 + m ()Lnet/minecraft/world/level/ChunkPos; getChunkPos c method_34000 + m ()Z canBeReferenced d method_14979 + m ()V addReference e method_14964 + m ()I getReferences f method_23676 + m ()I getMaxReferences g method_14970 + m ()Lnet/minecraft/world/level/levelgen/structure/Structure; getStructure h method_16656 + m ()Ljava/util/List; getPieces i method_14963 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V + p 1 structure + p 2 chunkPos + p 3 references + p 4 pieceContainer + m ()V +c net/minecraft/world/level/levelgen/structure/StructureType eka net/minecraft/class_7151 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; BURIED_TREASURE a field_37752 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; DESERT_PYRAMID b field_37753 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; END_CITY c field_37754 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; FORTRESS d field_37755 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; IGLOO e field_37756 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; JIGSAW f field_37757 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; JUNGLE_TEMPLE g field_37758 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; MINESHAFT h field_37759 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; NETHER_FOSSIL i field_37760 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; OCEAN_MONUMENT j field_37761 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; OCEAN_RUIN k field_37762 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; RUINED_PORTAL l field_37763 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; SHIPWRECK m field_37764 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; STRONGHOLD n field_37765 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; SWAMP_HUT o field_37766 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; WOODLAND_MANSION p field_37767 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_41622 a method_41622 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/StructureType; register a method_41623 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/TemplateStructurePiece ekb net/minecraft/class_3470 + f Ljava/lang/String; templateName a field_31664 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; template b field_15433 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; placeSettings c field_15434 + f Lnet/minecraft/core/BlockPos; templatePosition d field_15432 + f Lorg/slf4j/Logger; LOGGER h field_16586 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V handleDataMarker a method_15026 + p 1 name + p 2 pos + p 3 level + p 4 random + p 5 box + m ()Lnet/minecraft/resources/ResourceLocation; makeTemplateLocation b method_35470 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; template c method_41624 + m ()Lnet/minecraft/core/BlockPos; templatePosition d method_41625 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; placeSettings e method_41626 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)V + p 1 type + p 2 genDepth + p 3 structureTemplateManager + p 4 location + p 5 templateName + p 6 placeSettings + p 7 templatePosition + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/function/Function;)V + p 1 type + p 2 tag + p 3 structureTemplateManager + p 4 placeSettingsFactory + m ()V +c net/minecraft/world/level/levelgen/structure/TerrainAdjustment ekc net/minecraft/class_5847 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; NONE a field_28922 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BURY b field_28923 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BEARD_THIN c field_38431 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BEARD_BOX d field_38432 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; ENCAPSULATE e field_51413 + f Lcom/mojang/serialization/Codec; CODEC f field_38433 + f Ljava/lang/String; id g field_38434 + f [Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; $VALUES h field_28925 + m ()[Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; $values a method_36756 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/package-info ekd net/minecraft/class_6131 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGenerator eke net/minecraft/class_6622 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGenerator$Context eke$a net/minecraft/class_6622$class_6623 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config a comp_305 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_125 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_126 + f Lnet/minecraft/world/level/ChunkPos; chunkPos d comp_127 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor e comp_129 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_130 + f J seed g comp_131 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config a comp_305 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_125 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_126 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos d comp_127 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor e comp_129 + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_130 + m ()J seed g comp_131 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/WorldgenRandom;J)V +c net/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier ekf net/minecraft/class_6834 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context;)Z method_39844 a method_39844 + m (Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context;)Ljava/util/Optional; method_39845 a method_39845 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context ekf$a net/minecraft/class_6834$class_6835 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator a comp_306 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b comp_307 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState c comp_573 + f J seed d comp_308 + f Lnet/minecraft/world/level/ChunkPos; chunkPos e comp_309 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f comp_310 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor g comp_311 + f Ljava/util/function/Predicate; validBiome h comp_312 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager i comp_313 + f Lnet/minecraft/core/RegistryAccess; registryAccess j comp_314 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator a comp_306 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Z validBiomeOnTop a method_39848 + p 1 heightmapType + m ()Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b comp_307 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c comp_573 + m ()J seed d comp_308 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos e comp_309 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f comp_310 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor g comp_311 + m ()Ljava/util/function/Predicate; validBiome h comp_312 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager i comp_313 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess j comp_314 + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/RegistryAccess;)V +c net/minecraft/world/level/levelgen/structure/pieces/PiecesContainer ekg net/minecraft/class_6624 + f Ljava/util/List; pieces a comp_132 + f Lorg/slf4j/Logger; LOGGER b field_34941 + f Lnet/minecraft/resources/ResourceLocation; JIGSAW_RENAME c field_34942 + f Ljava/util/Map; RENAMES d field_34943 + m ()Z isEmpty a method_38708 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/nbt/Tag; save a method_38709 + p 1 context + m (Lnet/minecraft/core/BlockPos;)Z isInsidePiece a method_38710 + p 1 pos + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; load a method_38711 + p 0 tag + p 1 context + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; calculateBoundingBox b method_38712 + m ()Ljava/util/List; pieces c comp_132 + m (Ljava/util/List;)V + p 1 pieces + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext ekh net/minecraft/class_6625 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager a comp_133 + f Lnet/minecraft/core/RegistryAccess; registryAccess b comp_134 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_135 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager a comp_133 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext; fromLevel a method_38713 + p 0 level + m ()Lnet/minecraft/core/RegistryAccess; registryAccess b comp_134 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_135 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType eki net/minecraft/class_3773 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_RIGHT_TURN A field_16958 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_ROOM_CROSSING B field_16941 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STAIRS_DOWN C field_16904 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_START D field_16914 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STRAIGHT E field_16934 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STRAIGHT_STAIRS_DOWN F field_16949 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; JUNGLE_PYRAMID_PIECE G field_16953 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_RUIN H field_16932 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; IGLOO I field_16909 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; RUINED_PORTAL J field_24010 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; SWAMPLAND_HUT K field_16918 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; DESERT_PYRAMID_PIECE L field_16933 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_BUILDING M field_16922 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_CORE_ROOM N field_16911 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_X_ROOM O field_16963 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_XY_ROOM P field_16927 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_Y_ROOM Q field_16946 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_YZ_ROOM R field_16970 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_Z_ROOM S field_16925 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_ENTRY_ROOM T field_16905 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_PENTHOUSE U field_16966 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_SIMPLE_ROOM V field_16928 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_SIMPLE_TOP_ROOM W field_16944 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_WING_ROOM X field_16957 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; END_CITY_PIECE Y field_16936 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; WOODLAND_MANSION_PIECE Z field_16907 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_CORRIDOR a field_16969 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; BURIED_TREASURE_PIECE aa field_16960 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; SHIPWRECK_PIECE ab field_16935 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FOSSIL ac field_22195 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; JIGSAW ad field_25840 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_CROSSING b field_16919 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_ROOM c field_16915 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_STAIRS d field_16968 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_CROSSING e field_16926 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_END_FILLER f field_16903 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_STRAIGHT g field_16917 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_CORRIDOR_STAIRS h field_16930 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_CORRIDOR_T_BALCONY i field_16943 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_ENTRANCE j field_16952 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_CROSSING k field_16929 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_LEFT_TURN l field_16962 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR m field_16921 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_RIGHT_TURN n field_16945 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_STALK_ROOM o field_16961 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_MONSTER_THRONE p field_16931 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_ROOM_CROSSING q field_16908 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_STAIRS_ROOM r field_16967 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_START s field_16924 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_CHEST_CORRIDOR t field_16955 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_FILLER_CORRIDOR u field_16965 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_FIVE_CROSSING v field_16937 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_LEFT_TURN w field_16906 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_LIBRARY x field_16959 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_PORTAL_ROOM y field_16939 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_PRISON_HALL z field_16948 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$ContextlessType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setPieceId a method_16813 + p 0 type + p 1 key + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$StructureTemplateType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setTemplatePieceId a method_38691 + p 0 templateType + p 1 pieceId + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setFullContextPieceId a method_38692 + p 0 pieceType + p 1 pieceId + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$ContextlessType eki$a net/minecraft/class_3773$class_6615 +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$StructureTemplateType eki$b net/minecraft/class_3773$class_6616 +c net/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder ekj net/minecraft/class_6626 + f Ljava/util/List; pieces a field_34944 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; build a method_38714 + m (I)V offsetPiecesVertically a method_38715 + p 1 offset + m (IILnet/minecraft/util/RandomSource;I)I moveBelowSeaLevel a method_38716 + p 1 seaLevel + p 2 minY + p 3 random + p 4 amount + m (Lnet/minecraft/util/RandomSource;II)V moveInsideHeights a method_38718 + p 1 random + p 2 minY + p 3 maxY + m ()V clear b method_38719 + m ()Z isEmpty c method_38720 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox d method_38721 + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/package-info ekk net/minecraft/class_6627 +c net/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement ekl net/minecraft/class_6871 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36419 + f I distance c field_37768 + f I spread d field_37769 + f I count e field_37770 + f Lnet/minecraft/core/HolderSet; preferredBiomes f field_37771 + m ()I distance a method_41627 + m ()I spread b method_41628 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P9; codec b method_41629 + p 0 instance + m ()I count c method_41630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40167 c method_40167 + m ()Lnet/minecraft/core/HolderSet; preferredBiomes d method_41631 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;IIILnet/minecraft/core/HolderSet;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 6 distance + p 7 spread + p 8 count + p 9 preferredBiomes + m (IIILnet/minecraft/core/HolderSet;)V + p 1 distance + p 2 spread + p 3 count + p 4 preferrredBiomes + m ()V +c net/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement ekm net/minecraft/class_6872 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36420 + f I spacing c field_37772 + f I separation d field_37773 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; spreadType e field_37774 + m ()I spacing a method_41632 + m (JII)Lnet/minecraft/world/level/ChunkPos; getPotentialStructureChunk a method_40169 + p 1 seed + p 3 regionX + p 4 regionZ + m (Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement;)Lcom/mojang/serialization/DataResult; validate a method_51720 + p 0 placement + m ()I separation b method_41633 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40170 b method_40170 + m ()Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; spreadType c method_41634 + m ()Ljava/lang/String; method_51721 d method_51721 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;IILnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 6 spacing + p 7 separation + p 8 spreadType + m (IILnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType;I)V + p 1 spacing + p 2 separation + p 3 spreadType + p 4 salt + m ()V +c net/minecraft/world/level/levelgen/structure/placement/RandomSpreadType ekn net/minecraft/class_6873 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; LINEAR a field_36421 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; TRIANGULAR b field_36422 + f Lcom/mojang/serialization/Codec; CODEC c field_36423 + f Ljava/lang/String; id d field_36425 + f [Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; $VALUES e field_36426 + m ()[Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; $values a method_40175 + m (Lnet/minecraft/util/RandomSource;I)I evaluate a method_40173 + p 1 random + p 2 bound + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement eko net/minecraft/class_6874 + f I HIGHLY_ARBITRARY_RANDOM_SALT a field_37775 + f Lcom/mojang/serialization/Codec; CODEC b field_36428 + f Lnet/minecraft/core/Vec3i; locateOffset c field_37776 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; frequencyReductionMethod d field_37777 + f F frequency e field_37778 + f I salt f field_37779 + f Ljava/util/Optional; exclusionZone g field_37780 + m (IIJ)Z applyAdditionalChunkRestrictions a method_56575 + p 1 regionX + p 2 regionZ + p 3 levelSeed + m (JIIIF)Z probabilityReducer a method_41635 + p 0 levelSeed + p 2 regionX + p 3 regionZ + p 4 salt + p 5 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P5; placementCodec a method_41637 + p 0 instance + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; getLocatePos a method_41636 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isPlacementChunk a method_40168 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyProbabilityReducerWithDouble b method_41638 + p 0 baseSeed + p 2 salt + p 3 chunkX + p 4 chunkZ + p 5 probability + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isStructureChunk b method_41639 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyArbitrarySaltProbabilityReducer c method_41640 + p 0 levelSeed + p 2 salt + p 3 regionX + p 4 regionZ + p 5 probability + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z applyInteractionsWithOtherStructures c method_56576 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyPillagerOutpostReducer d method_41641 + p 0 levelSeed + p 2 salt + p 3 regionX + p 4 regionZ + p 5 probability + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; type e method_40166 + m ()Lnet/minecraft/core/Vec3i; locateOffset f method_41642 + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; frequencyReductionMethod g method_41643 + m ()F frequency h method_41644 + m ()I salt i method_41645 + m ()Ljava/util/Optional; exclusionZone j method_41646 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$ExclusionZone eko$a net/minecraft/class_6874$class_7152 + f Lcom/mojang/serialization/Codec; CODEC a field_37781 + f Lnet/minecraft/core/Holder; otherSet b comp_574 + f I chunkCount c comp_575 + m ()Lnet/minecraft/core/Holder; otherSet a comp_574 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41647 a method_41647 + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isPlacementForbidden a method_41648 + p 1 structureState + p 2 x + p 3 z + m ()I chunkCount b comp_575 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer eko$b net/minecraft/class_6874$class_7153 +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod eko$c net/minecraft/class_6874$class_7154 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; DEFAULT a field_37782 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_1 b field_37783 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_2 c field_37784 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_3 d field_37785 + f Lcom/mojang/serialization/Codec; CODEC e field_37786 + f Ljava/lang/String; name f field_37787 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer; reducer g field_37788 + f [Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; $VALUES h field_37789 + m ()[Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; $values a method_41649 + m (JIIIF)Z shouldGenerate a method_41650 + p 1 levelSeed + p 3 salt + p 4 regionX + p 5 regionZ + p 6 probability + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer;)V + p 3 name + p 4 reducer + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacementType ekp net/minecraft/class_6875 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; RANDOM_SPREAD a field_36429 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; CONCENTRIC_RINGS b field_36430 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_40176 a method_40176 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; register a method_40177 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/placement/package-info ekq net/minecraft/class_6876 +c net/minecraft/world/level/levelgen/structure/pools/DimensionPadding ekr net/minecraft/class_9778 + f Lcom/mojang/serialization/Codec; CODEC a field_51952 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; ZERO b field_51953 + f I bottom c comp_2818 + f I top d comp_2819 + f Lcom/mojang/serialization/Codec; RECORD_CODEC e field_51954 + m ()Z hasEqualTopAndBottom a method_60629 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; method_60630 a method_60630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60631 a method_60631 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Lcom/mojang/datafixers/util/Either; method_60632 a method_60632 + m ()I bottom b comp_2818 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Ljava/lang/Integer; method_60633 b method_60633 + m ()I top c comp_2819 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Ljava/lang/Integer; method_60634 c method_60634 + m (I)V + p 1 padding + m (II)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement eks net/minecraft/class_3777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24947 + f Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; INSTANCE b field_16663 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; method_28870 b method_28870 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement ekt net/minecraft/class_3776 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24948 + f Lnet/minecraft/core/Holder; feature b field_16661 + f Lnet/minecraft/nbt/CompoundTag; defaultJigsawNBT c field_16662 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28871 a method_28871 + m (Lnet/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement;)Lnet/minecraft/core/Holder; method_28872 a method_28872 + m ()Lnet/minecraft/nbt/CompoundTag; fillDefaultJigsawNBT b method_19299 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 feature + p 2 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/JigsawJunction eku net/minecraft/class_3780 + f I sourceX a field_16670 + f I sourceGroundY b field_16669 + f I sourceZ c field_16668 + f I deltaY d field_16667 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; destProjection e field_16671 + m ()I getSourceX a method_16610 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/levelgen/structure/pools/JigsawJunction; deserialize a method_28873 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; serialize a method_16612 + p 1 ops + m ()I getSourceGroundY b method_16611 + m ()I getSourceZ c method_16609 + m ()I getDeltaY d method_35367 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; getDestProjection e method_35368 + m (IIIILnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 sourceX + p 2 sourceGroundY + p 3 sourceZ + p 4 deltaY + p 5 destProjection +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement ekv net/minecraft/class_3778 + f Lorg/slf4j/Logger; LOGGER a field_16665 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_45548 a method_45548 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;ILnet/minecraft/core/BlockPos;Z)Z generateJigsaw a method_43729 + p 0 level + p 1 startPool + p 2 startJigsawName + p 3 maxDepth + p 4 pos + p 5 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/RandomState;IZLnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Ljava/util/List;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V addPieces a method_27230 + p 0 randomState + p 1 maxDepth + p 2 useExpansionHack + p 3 chunkGenerator + p 4 structureTemplateManager + p 5 level + p 6 random + p 7 pools + p 8 startPiece + p 9 pieces + p 10 free + p 11 aliasLookup + p 12 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;IIIILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;ZLnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_39824 a method_39824 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/Holder;Ljava/util/Optional;ILnet/minecraft/core/BlockPos;ZLjava/util/Optional;ILnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/Optional; addPieces a method_30419 + p 0 context + p 1 startPool + p 2 startJigsawName + p 3 maxDepth + p 4 pos + p 5 useExpansionHack + p 6 projectStartToHeightmap + p 7 maxDistanceFromCenter + p 8 aliasLookup + p 9 dimensionPadding + p 10 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;)Ljava/util/Optional; getRandomNamedJigsaw a method_43566 + p 0 element + p 1 startJigsawName + p 2 pos + p 3 rotation + p 4 structureTemplateManager + p 5 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Ljava/lang/String; method_54496 a method_54496 + m (Lnet/minecraft/core/Holder;)Z method_43730 a method_43730 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_55604 a method_55604 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement$PieceState ekv$a net/minecraft/class_3778$class_4181 + f Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece; piece a comp_2017 + f Lorg/apache/commons/lang3/mutable/MutableObject; free b comp_2018 + f I depth c comp_2019 + m ()Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece; piece a comp_2017 + m ()Lorg/apache/commons/lang3/mutable/MutableObject; free b comp_2018 + m ()I depth c comp_2019 + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Lorg/apache/commons/lang3/mutable/MutableObject;I)V + p 1 piece + p 2 free + p 3 depth +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement$Placer ekv$b net/minecraft/class_3778$class_4182 + f Lnet/minecraft/core/Registry; pools a field_25852 + f I maxDepth b field_18700 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c field_18702 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager d field_18703 + f Ljava/util/List; pieces e field_18704 + f Lnet/minecraft/util/RandomSource; random f field_18705 + f Lnet/minecraft/util/SequencedPriorityIterator; placing g field_18706 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_46730 a method_46730 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_19305 a method_19305 + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Lorg/apache/commons/lang3/mutable/MutableObject;IZLnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V tryPlacingChildren a method_19306 + p 1 piece + p 2 free + p 3 depth + p 4 useExpansionHack + p 5 level + p 6 random + p 7 poolAliasLookup + p 8 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Ljava/lang/String; method_54497 a method_54497 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;)Lnet/minecraft/resources/ResourceKey; readPoolKey a method_54498 + p 0 blockInfo + p 1 aliasLookup + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_31113 a method_31113 + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_31114 b method_31114 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; method_31115 c method_31115 + m (Lnet/minecraft/core/Registry;ILnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V + p 1 pools + p 2 maxDepth + p 3 chunkGenerator + p 4 structureTemplateManager + p 5 pieces + p 6 random +c net/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement ekw net/minecraft/class_5188 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24949 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28874 a method_28874 + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/ListPoolElement ekx net/minecraft/class_3782 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24950 + f Ljava/util/List; elements b field_16676 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28875 a method_28875 + m (Lnet/minecraft/world/level/levelgen/structure/pools/ListPoolElement;)Ljava/util/List; method_28876 a method_28876 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Z method_35369 a method_35369 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)V method_16620 a method_16620 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; method_35370 a method_35370 + m ()Ljava/lang/IllegalStateException; method_35371 b method_35371 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V setProjectionOnEachElement b method_19307 + p 1 projection + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 elements + p 2 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/SinglePoolElement eky net/minecraft/class_3781 + f Lcom/mojang/serialization/Codec; TEMPLATE_CODEC a field_24951 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24952 + f Lcom/mojang/datafixers/util/Either; template c field_24015 + f Lnet/minecraft/core/Holder; processors d field_16674 + f Ljava/util/Optional; overrideLiquidSettings e field_52234 + m (Lcom/mojang/datafixers/util/Either;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encodeTemplate a method_28877 + p 0 template + p 1 ops + p 2 values + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28878 a method_28878 + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; getSettings a method_16616 + p 1 rotation + p 2 boundingBox + p 3 liquidSettings + p 4 offset + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Lcom/mojang/datafixers/util/Either; method_28879 a method_28879 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_54781 a method_54781 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getTemplate a method_27233 + p 1 structureTemplateManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)Ljava/util/List; getDataMarkers a method_16614 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + p 4 relativePosition + m (Ljava/util/List;)V sortBySelectionPriority a method_54782 + p 0 structureBlockInfos + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/Integer; method_54783 a method_54783 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; processorsCodec b method_28880 + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Ljava/util/Optional; method_61012 b method_61012 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; overrideLiquidSettingsCodec c method_61013 + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Lnet/minecraft/core/Holder; method_28881 c method_28881 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; templateCodec d method_28882 + m ()Ljava/lang/String; method_49540 i method_49540 + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/Optional;)V + p 1 template + p 2 processors + p 3 projection + p 4 overrideLiquidSettings + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructurePoolElement ekz net/minecraft/class_3784 + f Lnet/minecraft/core/Holder; EMPTY a field_40924 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; projection b field_16862 + f Lcom/mojang/serialization/Codec; CODEC f field_24953 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; getType a method_16757 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V handleDataMarker a method_16756 + p 1 level + p 2 blockInfo + p 3 pos + p 4 rotation + p 5 random + p 6 box + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; setProjection a method_16622 + p 1 projection + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/function/Function;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; method_30424 a method_30424 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Z)Z place a method_16626 + p 1 structureTemplateManager + p 2 level + p 3 structureManager + p 4 generator + p 5 offset + p 6 pos + p 7 rotation + p 8 box + p 9 random + p 10 liquidSettings + p 11 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/Vec3i; getSize a method_16601 + p 1 structureTemplateManager + p 2 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_16628 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledJigsawBlocks a method_16627 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + p 4 random + m (Ljava/lang/String;)Ljava/util/function/Function; legacy a method_30425 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_30428 a method_30428 + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/function/Function; single a method_61014 + p 0 id + p 1 liquidSettings + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_61015 a method_61015 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;)Ljava/util/function/Function; legacy a method_30426 + p 0 id + p 1 processors + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_30427 a method_30427 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/function/Function; single a method_61016 + p 0 id + p 1 processors + p 2 liquidSettings + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_61017 a method_61017 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/ListPoolElement; method_30430 a method_30430 + m (Lnet/minecraft/core/Holder;)Ljava/util/function/Function; feature a method_30421 + p 0 feature + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement; method_30422 a method_30422 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; method_30433 b method_30433 + m (Ljava/lang/String;)Ljava/util/function/Function; single b method_30434 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement; method_40165 b method_40165 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;)Ljava/util/function/Function; single b method_30435 + p 0 id + p 1 processors + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement; method_30437 b method_30437 + m (Ljava/util/List;)Ljava/util/function/Function; list b method_30429 + p 0 elements + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; projectionCodec e method_28883 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; getProjection f method_16624 + m ()I getGroundLevelDelta g method_19308 + m ()Ljava/util/function/Function; empty h method_30438 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType ela net/minecraft/class_3816 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; SINGLE a field_16973 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; LIST b field_16974 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; FEATURE c field_16971 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; EMPTY d field_16972 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; LEGACY e field_24016 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28884 a method_28884 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; register a method_28885 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool elb net/minecraft/class_3785 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25853 + f Lcom/mojang/serialization/Codec; CODEC b field_24954 + f I SIZE_UNSET c field_31523 + f Lorg/apache/commons/lang3/mutable/MutableObject; CODEC_REFERENCE d field_40925 + f Ljava/util/List; rawTemplates e field_16864 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; templates f field_16680 + f Lnet/minecraft/core/Holder; fallback g field_40926 + f I maxSize h field_18707 + m ()Lnet/minecraft/core/Holder; getFallback a method_46736 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; getRandomTemplate a method_16631 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28886 a method_28886 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Z method_35372 a method_35372 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool;)Ljava/util/List; method_28888 a method_28888 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)I getMaxSize a method_19309 + p 1 structureTemplateManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)I method_19310 a method_19310 + m ()I size b method_16632 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledTemplates b method_16633 + p 1 random + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 fallback + p 2 rawTemplates + m (Lnet/minecraft/core/Holder;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 fallback + p 2 rawTemplateFactories + p 3 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection elb$a net/minecraft/class_3785$class_3786 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; TERRAIN_MATCHING a field_16686 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; RIGID b field_16687 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_24956 + f Ljava/lang/String; name d field_16682 + f Lcom/google/common/collect/ImmutableList; processors e field_16685 + f [Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; $VALUES f field_16683 + m ()Ljava/lang/String; getName a method_16635 + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; byName a method_16638 + p 0 name + m ()Lcom/google/common/collect/ImmutableList; getProcessors b method_16636 + m ()[Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; $values d method_36758 + m (Ljava/lang/String;ILjava/lang/String;Lcom/google/common/collect/ImmutableList;)V + p 3 name + p 4 processors + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/Direct elc net/minecraft/class_8888 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46824 + f Lnet/minecraft/resources/ResourceKey; alias c comp_2003 + f Lnet/minecraft/resources/ResourceKey; target d comp_2004 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54501 a method_54501 + m ()Lnet/minecraft/resources/ResourceKey; alias c comp_2003 + m ()Lnet/minecraft/resources/ResourceKey; target d comp_2004 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding eld net/minecraft/class_8889 + f Lcom/mojang/serialization/Codec; CODEC b field_46825 + m ()Ljava/util/stream/Stream; allTargets a method_54499 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Direct; direct a method_54503 + p 0 alias + p 1 target + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Random; random a method_54504 + p 0 alias + p 1 targets + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;)V forEachResolved a method_54500 + p 1 random + p 2 stucturePoolKey + m (Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54505 a method_54505 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/RandomGroup; randomGroup a method_54506 + p 0 groups + m (Ljava/lang/String;Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Random; random a method_54507 + p 0 alias + p 1 targets + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Direct; direct a method_54508 + p 0 alias + p 1 target + m ()Lcom/mojang/serialization/MapCodec; codec b method_54502 + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBindings ele net/minecraft/class_8890 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55227 a method_55227 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_54509 + p 0 registry + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/Holder;Ljava/lang/String;)V method_55228 a method_55228 + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/Holder;Ljava/util/List;)V registerTargetsAsPools a method_55229 + p 0 context + p 1 pool + p 2 poolAliasBindings + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup elf net/minecraft/class_8891 + f Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup; EMPTY a field_46826 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_54510 a method_54510 + m (Lnet/minecraft/util/RandomSource;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding;)V method_54511 a method_54511 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_54512 a method_54512 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_54513 b method_54513 + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/Random elg net/minecraft/class_8892 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46827 + f Lnet/minecraft/resources/ResourceKey; alias c comp_2005 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; targets d comp_2006 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54514 a method_54514 + m (Ljava/util/function/BiConsumer;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54515 a method_54515 + m ()Lnet/minecraft/resources/ResourceKey; alias c comp_2005 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; targets d comp_2006 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/RandomGroup elh net/minecraft/class_8893 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46828 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; groups c comp_2007 + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54516 a method_54516 + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding;)V method_54517 a method_54517 + m (Lnet/minecraft/util/random/WeightedEntry$Wrapper;)Ljava/util/stream/Stream; method_54518 a method_54518 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54519 a method_54519 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; groups c comp_2007 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/package-info eli net/minecraft/class_8894 +c net/minecraft/world/level/levelgen/structure/pools/package-info elj net/minecraft/class_6116 +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasurePieces elk net/minecraft/class_3789 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasurePieces$BuriedTreasurePiece elk$a net/minecraft/class_3789$class_3339 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLiquid b method_14655 + p 1 state + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasureStructure ell net/minecraft/class_2956 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37790 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41652 a method_41652 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38672 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/DesertPyramidPiece elm net/minecraft/class_3346 + f I WIDTH h field_34725 + f I DEPTH i field_34726 + f [Z hasPlacedChest j field_14397 + f Ljava/util/List; potentialSuspiciousSandWorldPositions k field_42856 + f Lnet/minecraft/core/BlockPos; randomCollapsedRoofPos l field_44482 + m (IIIIII)V placeSandBox a method_49263 + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m (Lnet/minecraft/world/level/WorldGenLevel;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V placeCollapsedRoofPiece a method_49260 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellar a method_49261 + p 1 level + p 2 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIII)V placeCollapsedRoof a method_49262 + p 1 level + p 2 box + p 3 minX + p 4 y + p 5 minZ + p 6 maxX + p 7 maxZ + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellarStairs a method_49264 + p 1 pos + p 2 level + p 3 box + m ()Ljava/util/List; getPotentialSuspiciousSandWorldPositions b method_49265 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellarRoom b method_49266 + p 1 pos + p 2 level + p 3 box + m ()Lnet/minecraft/core/BlockPos; getRandomCollapsedRoofPos c method_51180 + m (III)V placeSand c method_49259 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/DesertPyramidStructure eln net/minecraft/class_3006 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37791 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V placeSuspiciousSand a method_51181 + p 0 boundingBox + p 1 worldGenLevel + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;)V method_51182 a method_51182 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces elo net/minecraft/class_3342 + f I MAX_GEN_DEPTH a field_31549 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; HOUSE_TOWER_GENERATOR b field_14390 + f Ljava/util/List; TOWER_BRIDGES c field_14385 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; TOWER_GENERATOR d field_14386 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; TOWER_BRIDGE_GENERATOR e field_14387 + f Ljava/util/List; FAT_TOWER_BRIDGES f field_14388 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; FAT_TOWER_GENERATOR g field_14384 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;Z)Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece; addPiece a method_14684 + p 0 structureTemplateManager + p 1 piece + p 2 startPos + p 3 name + p 4 rotation + p 5 overwrite + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator;ILnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/util/RandomSource;)Z recursiveChildren a method_14673 + p 0 structureTemplateManager + p 1 sectionGenerator + p 2 counter + p 3 piece + p 4 startPos + p 5 pieces + p 6 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V startHouseTower a method_14679 + p 0 structureTemplateManager + p 1 startPos + p 2 rotation + p 3 pieces + p 4 random + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;)Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece; addHelper a method_14681 + p 0 pieces + p 1 piece + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$1 elo$1 net/minecraft/class_3342$1 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$2 elo$2 net/minecraft/class_3342$2 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$3 elo$3 net/minecraft/class_3342$3 + f Z shipCreated a field_14394 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$4 elo$4 net/minecraft/class_3342$4 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece elo$a net/minecraft/class_3342$class_3343 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; makeResourceLocation a method_35425 + p 0 name + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35426 a method_35426 + m (ZLnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35427 + p 0 overwrite + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)V + p 1 structureTemplateManager + p 2 name + p 3 startPos + p 4 rotation + p 5 overwrite + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator elo$b net/minecraft/class_3342$class_3344 + m ()V init a method_14688 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;ILnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/util/RandomSource;)Z generate a method_14687 + p 1 structureTemplateManager + p 2 counter + p 3 piece + p 4 startPos + p 5 pieces + p 6 random +c net/minecraft/world/level/levelgen/structure/structures/EndCityStructure elp net/minecraft/class_3021 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37792 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_39817 + p 1 builder + p 2 startPos + p 3 rotation + p 4 context + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41655 a method_41655 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/IglooPieces elq net/minecraft/class_3351 + f I GENERATION_HEIGHT a field_31550 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_IGLOO b field_14409 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_LADDER c field_14407 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_LABORATORY d field_14410 + f Ljava/util/Map; PIVOTS e field_14408 + f Ljava/util/Map; OFFSETS f field_14406 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;)V addPieces a method_14705 + p 0 structureTemplateManager + p 1 startPos + p 2 rotation + p 3 pieces + p 4 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/IglooPieces$IglooPiece elq$a net/minecraft/class_3351$class_3352 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; makePosition a method_35430 + p 0 location + p 1 pos + p 2 down + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35428 + p 0 rotation + p 1 location + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35429 a method_35429 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;I)V + p 1 structureTemplateManager + p 2 location + p 3 startPos + p 4 rotation + p 5 down + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/IglooStructure elr net/minecraft/class_3071 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37793 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41657 a method_41657 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38675 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JigsawStructure els net/minecraft/class_5434 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; DEFAULT_DIMENSION_PADDING d field_51911 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; DEFAULT_LIQUID_SETTINGS e field_52235 + f I MAX_TOTAL_STRUCTURE_RANGE f field_38435 + f I MIN_DEPTH g field_49155 + f I MAX_DEPTH h field_47412 + f Lcom/mojang/serialization/MapCodec; CODEC i field_37794 + f Lnet/minecraft/core/Holder; startPool j field_37795 + f Ljava/util/Optional; startJigsawName k field_39059 + f I maxDepth l field_37796 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; startHeight m field_37797 + f Z useExpansionHack n field_37798 + f Ljava/util/Optional; projectStartToHeightmap o field_37799 + f I maxDistanceFromCenter p field_38268 + f Ljava/util/List; poolAliases q field_46829 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; dimensionPadding r field_51912 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings s field_52236 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lcom/mojang/serialization/DataResult; verifyRange a method_42708 + p 0 structure + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41662 b method_41662 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; method_61018 b method_61018 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; method_60567 c method_60567 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/List; method_54520 d method_54520 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Integer; method_42704 e method_42704 + m ()Ljava/lang/String; method_49541 f method_49541 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/Optional; method_42705 f method_42705 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Boolean; method_42706 g method_42706 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_42707 h method_42707 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Integer; method_42709 i method_42709 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/Optional; method_43567 j method_43567 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/core/Holder; method_42710 k method_42710 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;Ljava/util/Optional;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;ZLjava/util/Optional;ILjava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V + p 1 settings + p 2 startPool + p 3 startJigsawName + p 4 maxDepth + p 5 startHeight + p 6 useExpansionHack + p 7 projectStartToHeightmap + p 8 maxDistanceFromCenter + p 9 poolAliases + p 10 dimensionPadding + p 11 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;ZLnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 settings + p 2 startPool + p 3 maxDepth + p 4 startHeight + p 5 useExpansionHack + p 6 projectStartToHeightmap + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Z)V + p 1 settings + p 2 startPool + p 3 maxDepth + p 4 startHeight + p 5 useExpansionHack + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JigsawStructure$1 els$1 net/minecraft/class_5434$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$TerrainAdjustment a field_38436 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece elt net/minecraft/class_3348 + f I WIDTH h field_34727 + f I DEPTH i field_34728 + f Z placedMainChest j field_14402 + f Z placedHiddenChest k field_14401 + f Z placedTrap1 l field_14400 + f Z placedTrap2 m field_14399 + f Lnet/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece$MossStoneSelector; STONE_SELECTOR n field_14403 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece$MossStoneSelector elt$a net/minecraft/class_3348$class_3349 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTempleStructure elu net/minecraft/class_3076 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37800 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces elv net/minecraft/class_3353 + f I MAGIC_START_Y a field_34729 + f Lorg/slf4j/Logger; LOGGER b field_29326 + f I DEFAULT_SHAFT_WIDTH c field_31551 + f I DEFAULT_SHAFT_HEIGHT d field_31552 + f I DEFAULT_SHAFT_LENGTH e field_31553 + f I MAX_PILLAR_HEIGHT f field_31554 + f I MAX_CHAIN_HEIGHT g field_31555 + f I MAX_DEPTH h field_31556 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece; generateAndAddPiece a method_14711 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;ILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece; createRandomShaftPiece a method_14712 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + p 7 type + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$1 elv$1 net/minecraft/class_3353$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14417 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftCorridor elv$a net/minecraft/class_3353$class_3354 + f Z hasRails b field_14416 + f Z spiderCorridor c field_14415 + f Z hasPlacedSpider d field_14414 + f I numSections h field_14413 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlaceColumnOnTopOf a method_33777 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos$MutableBlockPos;II)V fillColumnBetween a method_33878 + p 0 level + p 1 state + p 2 pos + p 3 minY + p 4 maxY + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;III)V placeDoubleLowerOrUpperSupport a method_33776 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z hasSturdyNeighbours a method_36422 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + p 6 required + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIILnet/minecraft/util/RandomSource;)V placeSupport a method_14713 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 z + p 6 maxY + p 7 maxX + p 8 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIII)V maybePlaceCobWeb a method_14715 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findCorridorSize a method_14714 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canHangChainBelow b method_33877 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V fillPillarDownOrChainUp c method_33879 + p 1 level + p 2 state + p 3 x + p 4 y + p 5 z + p 6 box + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 random + p 3 boundingBox + p 4 orientation + p 5 type +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftCrossing elv$b net/minecraft/class_3353$class_3355 + f Lnet/minecraft/core/Direction; direction b field_14420 + f Z isTwoFloored c field_14419 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)V placeSupportPillar a method_14716 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + p 6 maxY + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findCrossing a method_14717 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 boundingBox + p 3 direction + p 4 type +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece elv$c net/minecraft/class_3353$class_3356 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; type a field_14421 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z isSupportingBox a method_14719 + p 1 level + p 2 box + p 3 xStart + p 4 xEnd + p 5 y + p 6 z + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isInInvalidLocation a method_33999 + p 1 level + p 2 boundingBox + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/block/state/BlockState;III)V setPlanksBlock a method_33880 + p 1 level + p 2 box + p 3 plankState + p 4 x + p 5 y + p 6 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 structurePieceType + p 2 genDepth + p 3 type + p 4 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftRoom elv$d net/minecraft/class_3353$class_3357 + f Ljava/util/List; childEntranceBoxes b field_14422 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_34397 a method_34397 + m (ILnet/minecraft/util/RandomSource;IILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 random + p 3 x + p 4 z + p 5 type + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftStairs elv$e net/minecraft/class_3353$class_3358 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findStairs a method_14720 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 boundingBox + p 3 orientation + p 4 type + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftStructure elw net/minecraft/class_3098 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37801 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; type e field_37802 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)I generatePiecesAndAdjust a method_38678 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure;)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; method_41667 a method_41667 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41669 b method_41669 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 settings + p 2 type + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type elw$a net/minecraft/class_3098$class_3100 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; NORMAL a field_13692 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; MESA b field_13691 + f Lcom/mojang/serialization/Codec; CODEC c field_24839 + f Ljava/util/function/IntFunction; BY_ID d field_41680 + f Ljava/lang/String; name e field_13689 + f Lnet/minecraft/world/level/block/state/BlockState; woodState f field_28850 + f Lnet/minecraft/world/level/block/state/BlockState; planksState g field_28851 + f Lnet/minecraft/world/level/block/state/BlockState; fenceState h field_28852 + f [Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; $VALUES i field_13688 + m ()Ljava/lang/String; getName a method_13534 + m (I)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; byId a method_13535 + p 0 id + m ()Lnet/minecraft/world/level/block/state/BlockState; getWoodState b method_33760 + m ()Lnet/minecraft/world/level/block/state/BlockState; getPlanksState d method_33761 + m ()Lnet/minecraft/world/level/block/state/BlockState; getFenceState e method_33762 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; $values f method_36755 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V + p 3 name + p 4 woodBlock + p 5 planksBlock + p 6 fenceBlock + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces elx net/minecraft/class_3390 + f I MAGIC_START_Y a field_34730 + f I MAX_DEPTH b field_31557 + f I LOWEST_Y_POSITION c field_31558 + f [Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; BRIDGE_PIECE_WEIGHTS d field_14494 + f [Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; CASTLE_PIECE_WEIGHTS e field_14493 + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece; findAndCreateBridgePieceFactory a method_14795 + p 0 weight + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 orientation + p 7 genDepth + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$1 elx$1 net/minecraft/class_3390$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14508 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeCrossing elx$a net/minecraft/class_3390$class_3391 + f I WIDTH a field_31559 + f I HEIGHT b field_31560 + f I DEPTH c field_31561 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeCrossing; createPiece a method_14796 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (IILnet/minecraft/core/Direction;)V + p 1 x + p 2 z + p 3 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeEndFiller elx$b net/minecraft/class_3390$class_3392 + f I WIDTH a field_31562 + f I HEIGHT b field_31563 + f I DEPTH c field_31564 + f I selfSeed d field_14495 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeEndFiller; createPiece a method_14797 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeStraight elx$c net/minecraft/class_3390$class_3393 + f I WIDTH a field_31565 + f I HEIGHT b field_31566 + f I DEPTH c field_31567 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeStraight; createPiece a method_14798 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorStairsPiece elx$d net/minecraft/class_3390$class_3394 + f I WIDTH a field_31568 + f I HEIGHT b field_31569 + f I DEPTH c field_31570 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorStairsPiece; createPiece a method_14799 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorTBalconyPiece elx$e net/minecraft/class_3390$class_3395 + f I WIDTH a field_31571 + f I HEIGHT b field_31572 + f I DEPTH c field_31573 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorTBalconyPiece; createPiece a method_14800 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleEntrance elx$f net/minecraft/class_3390$class_3396 + f I WIDTH a field_31574 + f I HEIGHT b field_31575 + f I DEPTH c field_31576 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleEntrance; createPiece a method_14801 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorCrossingPiece elx$g net/minecraft/class_3390$class_3397 + f I WIDTH a field_31577 + f I HEIGHT b field_31578 + f I DEPTH c field_31579 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorCrossingPiece; createPiece a method_14802 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorLeftTurnPiece elx$h net/minecraft/class_3390$class_3398 + f I WIDTH a field_31580 + f I HEIGHT b field_31581 + f I DEPTH c field_31582 + f Z isNeedingChest d field_14496 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorLeftTurnPiece; createPiece a method_14803 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorPiece elx$i net/minecraft/class_3390$class_3399 + f I WIDTH a field_31583 + f I HEIGHT b field_31584 + f I DEPTH c field_31585 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorPiece; createPiece a method_14804 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorRightTurnPiece elx$j net/minecraft/class_3390$class_3400 + f I WIDTH a field_31586 + f I HEIGHT b field_31587 + f I DEPTH c field_31588 + f Z isNeedingChest d field_14497 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorRightTurnPiece; createPiece a method_14805 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleStalkRoom elx$k net/minecraft/class_3390$class_3401 + f I WIDTH a field_31589 + f I HEIGHT b field_31590 + f I DEPTH c field_31591 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleStalkRoom; createPiece a method_14806 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$MonsterThrone elx$l net/minecraft/class_3390$class_3402 + f I WIDTH a field_31592 + f I HEIGHT b field_31593 + f I DEPTH c field_31594 + f Z hasPlacedSpawner d field_14498 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$MonsterThrone; createPiece a method_14807 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 genDepth + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece elx$m net/minecraft/class_3390$class_3403 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isOkBox a method_14809 + p 0 box + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;IZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateAndAddPiece a method_14813 + p 1 startPiece + p 2 pieces + p 3 random + p 4 x + p 5 y + p 6 z + p 7 orientation + p 8 genDepth + p 9 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildForward a method_14814 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetX + p 5 offsetY + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece; generatePiece a method_14811 + p 1 startPiece + p 2 weights + p 3 pieces + p 4 random + p 5 x + p 6 y + p 7 z + p 8 orientation + p 9 genDepth + m (Ljava/util/List;)I updatePieceWeight a method_14810 + p 1 weights + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildLeft b method_14812 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildRight c method_14808 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight elx$n net/minecraft/class_3390$class_3404 + f Ljava/lang/Class; pieceClass a field_14501 + f I weight b field_14503 + f I placeCount c field_14502 + f I maxPlaceCount d field_14499 + f Z allowInRow e field_14500 + m ()Z isValid a method_14815 + m (I)Z doPlace a method_14816 + p 1 genDepth + m (Ljava/lang/Class;IIZ)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount + p 4 allowInRow + m (Ljava/lang/Class;II)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$RoomCrossing elx$o net/minecraft/class_3390$class_3405 + f I WIDTH a field_31595 + f I HEIGHT b field_31596 + f I DEPTH c field_31597 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$RoomCrossing; createPiece a method_14817 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StairsRoom elx$p net/minecraft/class_3390$class_3406 + f I WIDTH a field_31598 + f I HEIGHT b field_31599 + f I DEPTH c field_31600 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StairsRoom; createPiece a method_14818 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 genDepth + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece elx$q net/minecraft/class_3390$class_3407 + f Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; previousPiece a field_14506 + f Ljava/util/List; availableBridgePieces b field_14507 + f Ljava/util/List; availableCastlePieces c field_14504 + f Ljava/util/List; pendingChildren d field_14505 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressStructure ely net/minecraft/class_3108 + f Lnet/minecraft/util/random/WeightedRandomList; FORTRESS_ENEMIES d field_13705 + f Lcom/mojang/serialization/MapCodec; CODEC e field_37803 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41670 a method_41670 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38679 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilPieces elz net/minecraft/class_4787 + f [Lnet/minecraft/resources/ResourceLocation; FOSSILS a field_22197 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V addPieces a method_24453 + p 0 structureManager + p 1 pieces + p 2 random + p 3 pos + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilPieces$NetherFossilPiece elz$a net/minecraft/class_4787$class_4788 + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35431 + p 0 rotation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35432 a method_35432 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V + p 1 structureManager + p 2 location + p 3 pos + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilStructure ema net/minecraft/class_4785 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37804 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; height e field_37805 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41672 a method_41672 + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFossilStructure;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_41673 a method_41673 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41674 b method_41674 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)V + p 1 settings + p 2 height + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces emb net/minecraft/class_3366 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$1 emb$1 net/minecraft/class_3366$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14467 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleXRoom emb$a net/minecraft/class_3366$class_3367 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleXYRoom emb$b net/minecraft/class_3366$class_3368 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleYRoom emb$c net/minecraft/class_3366$class_3369 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleYZRoom emb$d net/minecraft/class_3366$class_3370 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleZRoom emb$e net/minecraft/class_3366$class_3371 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitSimpleRoom emb$f net/minecraft/class_3366$class_3372 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitSimpleTopRoom emb$g net/minecraft/class_3366$class_3373 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$MonumentBuilding emb$h net/minecraft/class_3366$class_3374 + f I WIDTH C field_31602 + f I HEIGHT D field_31603 + f I DEPTH E field_31604 + f I TOP_POSITION F field_31605 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; sourceRoom G field_14464 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; coreRoom H field_14466 + f Ljava/util/List; childPieces I field_14465 + f I BIOME_RANGE_CHECK a field_31606 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateEntranceArchs a method_14763 + p 1 level + p 2 random + p 3 box + m (ZILnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateWing a method_14761 + p 1 wing + p 2 x + p 3 level + p 4 random + p 5 box + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; generateRoomGraph b method_14760 + p 1 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateEntranceWall b method_14762 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateRoofPiece c method_14765 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateLowerWall d method_14764 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateMiddleWall e method_14766 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateUpperWall f method_14767 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/Direction;)V + p 1 random + p 2 x + p 3 z + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$MonumentRoomFitter emb$i net/minecraft/class_3366$class_3375 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)Z fits a method_14769 + p 1 room + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPiece; create a method_14768 + p 1 direction + p 2 room + p 3 random +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentCoreRoom emb$j net/minecraft/class_3366$class_3376 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleXRoom emb$k net/minecraft/class_3366$class_3377 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleXYRoom emb$l net/minecraft/class_3366$class_3378 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleYRoom emb$m net/minecraft/class_3366$class_3379 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleYZRoom emb$n net/minecraft/class_3366$class_3380 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleZRoom emb$o net/minecraft/class_3366$class_3381 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentEntryRoom emb$p net/minecraft/class_3366$class_3382 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPenthouse emb$q net/minecraft/class_3366$class_3383 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 direction + p 2 box + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPiece emb$r net/minecraft/class_3366$class_3384 + f I PENTHOUSE_INDEX A field_31618 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; roomDefinition B field_14479 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_GRAY b field_14473 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_LIGHT c field_14476 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_BLACK d field_14474 + f Lnet/minecraft/world/level/block/state/BlockState; DOT_DECO_DATA h field_14470 + f Lnet/minecraft/world/level/block/state/BlockState; LAMP_BLOCK i field_14471 + f Z DO_FILL j field_31607 + f Lnet/minecraft/world/level/block/state/BlockState; FILL_BLOCK k field_14475 + f Ljava/util/Set; FILL_KEEP l field_14472 + f I GRIDROOM_WIDTH m field_31608 + f I GRIDROOM_DEPTH n field_31609 + f I GRIDROOM_HEIGHT o field_31610 + f I GRID_WIDTH p field_31611 + f I GRID_DEPTH q field_31612 + f I GRID_HEIGHT r field_31613 + f I GRID_FLOOR_COUNT s field_31614 + f I GRID_SIZE t field_31615 + f I GRIDROOM_SOURCE_INDEX u field_14469 + f I GRIDROOM_TOP_CONNECT_INDEX v field_14468 + f I GRIDROOM_LEFTWING_CONNECT_INDEX w field_14478 + f I GRIDROOM_RIGHTWING_CONNECT_INDEX x field_14477 + f I LEFTWING_INDEX y field_31616 + f I RIGHTWING_INDEX z field_31617 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;III)V spawnElder a method_14772 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;)V generateBoxOnFillOnly a method_14771 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIZ)V generateDefaultFloor a method_14774 + p 1 level + p 2 box + p 3 x + p 4 z + p 5 hasOpeningDownwards + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z chunkIntersects a method_14775 + p 1 box + p 2 minX + p 3 minZ + p 4 maxX + p 5 maxZ + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; makeBoundingBox a method_35445 + p 0 direction + p 1 definition + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIII)V generateWaterBox b method_14773 + p 1 level + p 2 boundingBox + p 3 x1 + p 4 y1 + p 5 z1 + p 6 x2 + p 7 y2 + p 8 z2 + m (III)I getRoomIndex c method_14770 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/core/Direction;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 orientation + p 3 genDepth + p 4 box + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;III)V + p 1 type + p 2 genDepth + p 3 orientation + p 4 roomDefinition + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentSimpleRoom emb$s net/minecraft/class_3366$class_3385 + f I mainDesign a field_14480 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;Lnet/minecraft/util/RandomSource;)V + p 1 direction + p 2 room + p 3 random + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentSimpleTopRoom emb$t net/minecraft/class_3366$class_3386 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentWingRoom emb$u net/minecraft/class_3366$class_3387 + f I mainDesign a field_14481 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;I)V + p 1 direction + p 2 box + p 3 flag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition emb$v net/minecraft/class_3366$class_3388 + f I index a field_14486 + f [Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; connections b field_14487 + f [Z hasOpening c field_14482 + f Z claimed d field_14485 + f Z isSource e field_14484 + f I scanIndex f field_14483 + m ()V updateOpenings a method_14780 + m (I)Z findSource a method_14783 + p 1 index + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V setConnection a method_14786 + p 1 direction + p 2 connectingRoom + m ()Z isSpecial b method_14785 + m ()I countOpenings c method_14781 + m (I)V + p 1 index +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentStructure emc net/minecraft/class_3116 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37806 + m (Lnet/minecraft/world/level/ChunkPos;JLnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; regeneratePiecesAfterLoad a method_38680 + p 0 chunkPos + p 1 seed + p 3 piecesContainer + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/WorldgenRandom;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; createTopPiece a method_38681 + p 0 chunkPos + p 1 random + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41675 a method_41675 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38683 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces emd net/minecraft/class_3409 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; WARM_SUSPICIOUS_BLOCK_PROCESSOR a field_43327 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; COLD_SUSPICIOUS_BLOCK_PROCESSOR b field_43328 + f [Lnet/minecraft/resources/ResourceLocation; WARM_RUINS c field_14521 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_BRICK d field_14518 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_CRACKED e field_14519 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_MOSSY f field_14522 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_BRICK g field_14516 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_MOSSY h field_14517 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_CRACKED i field_14520 + f [Lnet/minecraft/resources/ResourceLocation; BIG_WARM_RUINS j field_14515 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceLocation; getSmallWarmRuin a method_14824 + p 0 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List; allPositions a method_14821 + p 0 random + p 1 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; archyRuleProcessor a method_49885 + p 0 block + p 1 suspiciousBlock + p 2 lootTable + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;)V addClusterRuins a method_14825 + p 0 structureTemplateManager + p 1 random + p 2 rotation + p 3 pos + p 4 structure + p 5 structurePieceAccessor + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)V addPieces a method_14827 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 structurePieceAccessor + p 4 random + p 5 structure + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;ZF)V addPiece a method_14822 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 structurePieceAccessor + p 4 random + p 5 structure + p 6 isLarge + p 7 integrity + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceLocation; getBigWarmRuin b method_14826 + p 0 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$1 emd$1 net/minecraft/class_3409$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$structures$OceanRuinStructure$Type a field_31619 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$OceanRuinPiece emd$a net/minecraft/class_3409$class_3410 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; biomeType h field_14527 + f F integrity i field_14524 + f Z isLarge j field_14525 + m (Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35446 + p 0 rotation + p 1 integrity + p 2 structureType + m (Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35447 a method_35447 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$OceanRuinPiece; create a method_49886 + p 0 structureTemplateManager + p 1 tag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeight a method_14829 + p 1 templatePos + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Z)V + p 1 structureTemplateManager + p 2 location + p 3 pos + p 4 rotation + p 5 integrity + p 6 biomeType + p 7 isLarge + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Z)V + p 1 structureTemplateManager + p 2 genDepth + p 3 rotation + p 4 integrity + p 5 biomeType + p 6 isLarge +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure eme net/minecraft/class_3411 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37807 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; biomeTemp e field_37808 + f F largeProbability f field_37809 + f F clusterProbability g field_37810 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41677 a method_41677 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38700 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Ljava/lang/Float; method_41678 a method_41678 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41679 b method_41679 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Ljava/lang/Float; method_41680 b method_41680 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; method_41681 c method_41681 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;FF)V + p 1 settings + p 2 biomeTemp + p 3 largeProbability + p 4 clusterProbability + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type eme$a net/minecraft/class_3411$class_3413 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; WARM a field_14532 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; COLD b field_14528 + f Lcom/mojang/serialization/Codec; CODEC c field_24990 + f Ljava/lang/String; name d field_14529 + f [Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; $VALUES e field_14531 + m ()Ljava/lang/String; getName a method_14831 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; $values b method_36760 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece emf net/minecraft/class_5189 + f Lorg/slf4j/Logger; LOGGER h field_24992 + f F PROBABILITY_OF_GOLD_GONE i field_31620 + f F PROBABILITY_OF_MAGMA_INSTEAD_OF_NETHERRACK j field_31621 + f F PROBABILITY_OF_MAGMA_INSTEAD_OF_LAVA k field_31622 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; verticalPlacement l field_24021 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties; properties m field_24022 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;)V addNetherrackDripColumnsBelowPortal a method_27243 + p 1 random + p 2 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V maybeAddVines a method_27244 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V method_27250 a method_27250 + m (Lnet/minecraft/world/level/LevelAccessor;IILnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;)I getSurfaceY a method_27237 + p 0 level + p 1 x + p 2 z + p 3 verticalPlacement + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canBlockBeReplacedByNetherrackOrMagma a method_27238 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;FLnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getBlockReplaceRule a method_27239 + p 0 block + p 1 probability + p 2 replaceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getBlockReplaceRule a method_27240 + p 0 block + p 1 replaceBlock + m (Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35450 + p 0 mirror + p 1 rotation + p 2 verticalPlacement + p 3 pos + p 4 properties + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightMapType a method_27241 + p 0 verticalPlacement + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getLavaProcessorRule a method_27247 + p 0 verticalPlacement + p 1 properties + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35449 + p 0 structureTemplateManager + p 1 tag + p 2 location + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28950 a method_28950 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;)V spreadNetherrack b method_27245 + p 1 random + p 2 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V maybeAddLeavesAbove b method_27246 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35451 b method_35451 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V addNetherrackDripColumn c method_27248 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V placeNetherrackOrMagma d method_27249 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/BlockPos;)V + p 1 structureTemplateManager + p 2 templatePosition + p 3 verticalPlacement + p 4 properties + p 5 location + p 6 template + p 7 rotation + p 8 mirror + p 9 pivotPos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties emf$a net/minecraft/class_5189$class_5190 + f Lcom/mojang/serialization/Codec; CODEC a field_24993 + f Z cold b field_24023 + f F mossiness c field_24024 + f Z airPocket d field_24025 + f Z overgrown e field_24026 + f Z vines f field_24027 + f Z replaceWithBlackstone g field_24028 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28951 a method_28951 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28952 a method_28952 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28953 b method_28953 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28954 c method_28954 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28955 d method_28955 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Float; method_28956 e method_28956 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28957 f method_28957 + m ()V + m (ZFZZZZ)V + p 1 cold + p 2 mossiness + p 3 airPocket + p 4 overgrown + p 5 vines + p 6 replaceWithBlackstone + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement emf$b net/minecraft/class_5189$class_5191 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; ON_LAND_SURFACE a field_24029 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; PARTLY_BURIED b field_24030 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; ON_OCEAN_FLOOR c field_24031 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; IN_MOUNTAIN d field_24032 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; UNDERGROUND e field_24033 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; IN_NETHER f field_24034 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC g field_37811 + f Ljava/lang/String; name h field_24036 + f [Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; $VALUES i field_24037 + m ()Ljava/lang/String; getName a method_27252 + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; byName a method_27254 + p 0 name + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; $values b method_36761 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure emg net/minecraft/class_5183 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37812 + f [Ljava/lang/String; STRUCTURE_LOCATION_PORTALS e field_23999 + f [Ljava/lang/String; STRUCTURE_LOCATION_GIANT_PORTALS f field_23998 + f F PROBABILITY_OF_GIANT_PORTAL g field_31512 + f I MIN_Y_INDEX h field_31511 + f Ljava/util/List; setups i field_37813 + m (Lnet/minecraft/util/RandomSource;II)I getRandomWithinInterval a method_27210 + p 0 random + p 1 min + p 2 max + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;ZIILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I findSuitableY a method_27211 + p 0 random + p 1 chunkGenerator + p 2 verticalPlacement + p 3 airPocket + p 4 height + p 5 blockCountY + p 6 box + p 7 level + p 8 randomState + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/NoiseColumn; method_27205 a method_27205 + m (Lnet/minecraft/world/level/levelgen/WorldgenRandom;F)Z sample a method_41682 + p 0 random + p 1 threshold + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41683 a method_41683 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure;)Ljava/util/List; method_41684 a method_41684 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Z isCold a method_27209 + p 0 pos + p 1 biome + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41685 b method_41685 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Ljava/util/List;)V + p 1 settings + p 2 setups + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup;)V + p 1 settings + p 2 setup + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup emg$a net/minecraft/class_5183$class_7155 + f Lcom/mojang/serialization/Codec; CODEC a field_37814 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; placement b comp_576 + f F airPocketProbability c comp_577 + f F mossiness d comp_578 + f Z overgrown e comp_579 + f Z vines f comp_580 + f Z canBeCold g comp_581 + f Z replaceWithBlackstone h comp_582 + f F weight i comp_583 + m ()Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; placement a comp_576 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41686 a method_41686 + m ()F airPocketProbability b comp_577 + m ()F mossiness c comp_578 + m ()Z overgrown d comp_579 + m ()Z vines e comp_580 + m ()Z canBeCold f comp_581 + m ()Z replaceWithBlackstone g comp_582 + m ()F weight h comp_583 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;FFZZZZF)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces emh net/minecraft/class_3415 + f I NUMBER_OF_BLOCKS_ALLOWED_IN_WORLD_GEN_REGION a field_51512 + f Lnet/minecraft/core/BlockPos; PIVOT b field_14536 + f [Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_BEACHED c field_14534 + f [Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_OCEAN d field_14535 + f Ljava/util/Map; MARKERS_TO_LOOT e field_34939 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces$ShipwreckPiece; addRandomPiece a method_59864 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 pieces + p 4 random + p 5 isBeached + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces$ShipwreckPiece emh$a net/minecraft/class_3415$class_3416 + f Z isBeached h field_14538 + m (ILnet/minecraft/util/RandomSource;)I calculateBeachedPosition a method_59865 + p 1 maxHeight + p 2 random + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35452 + p 0 rotation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35453 a method_35453 + m (I)V adjustPositionHeight c method_59866 + p 1 height + m ()Z isTooBigToFitInWorldGenRegion l method_59867 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)V + p 1 structureTemplateManager + p 2 location + p 3 pos + p 4 rotation + p 5 isBeached + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure emi net/minecraft/class_3170 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37815 + f Z isBeached e field_37816 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41687 a method_41687 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38685 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure;)Ljava/lang/Boolean; method_41688 a method_41688 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41689 b method_41689 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Z)V + p 1 settings + p 2 isBeached + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces emj net/minecraft/class_3421 + f I MAGIC_START_Y a field_36417 + f I SMALL_DOOR_WIDTH b field_31624 + f I SMALL_DOOR_HEIGHT c field_31625 + f I MAX_DEPTH d field_31626 + f I LOWEST_Y_POSITION e field_31627 + f Z CHECK_AIR f field_31628 + f [Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight; STRONGHOLD_PIECE_WEIGHTS g field_15265 + f Ljava/util/List; currentPieces h field_15267 + f Ljava/lang/Class; imposedPiece i field_15266 + f I totalWeight j field_15264 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$SmoothStoneSelector; SMOOTH_STONE_SELECTOR k field_15263 + m ()V resetPieces a method_14855 + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece; generatePieceFromSmallDoor a method_14851 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m (Ljava/lang/Class;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece; findAndCreatePieceFactory a method_14847 + p 0 pieceClass + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m ()Z updatePieceWeight b method_14852 + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateAndAddPiece b method_14854 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$1 emj$1 net/minecraft/class_3421$1 + m (Ljava/lang/Class;II)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$2 emj$2 net/minecraft/class_3421$2 + m (Ljava/lang/Class;II)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$3 emj$3 net/minecraft/class_3421$3 + f [I $SwitchMap$net$minecraft$core$Direction a field_15293 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$ChestCorridor emj$a net/minecraft/class_3421$class_3422 + f I WIDTH a field_31629 + f I HEIGHT b field_31630 + f I DEPTH c field_31631 + f Z hasPlacedChest d field_15268 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$ChestCorridor; createPiece a method_14856 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FillerCorridor emj$b net/minecraft/class_3421$class_3423 + f I steps a field_15269 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findPieceBox a method_14857 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FiveCrossing emj$c net/minecraft/class_3421$class_3424 + f I WIDTH a field_31632 + f I HEIGHT b field_31633 + f I DEPTH c field_31634 + f Z leftLow d field_15273 + f Z leftHigh i field_15272 + f Z rightLow j field_15271 + f Z rightHigh k field_15270 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FiveCrossing; createPiece a method_14858 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$LeftTurn emj$d net/minecraft/class_3421$class_3425 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$LeftTurn; createPiece a method_14859 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Library emj$e net/minecraft/class_3421$class_3426 + f I WIDTH a field_31635 + f I HEIGHT b field_31636 + f I TALL_HEIGHT c field_31637 + f I DEPTH d field_31638 + f Z isTall i field_15274 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Library; createPiece a method_14860 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight emj$f net/minecraft/class_3421$class_3427 + f Ljava/lang/Class; pieceClass a field_15276 + f I weight b field_15278 + f I placeCount c field_15277 + f I maxPlaceCount d field_15275 + m ()Z isValid a method_14861 + m (I)Z doPlace a method_14862 + p 1 genDepth + m (Ljava/lang/Class;II)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom emj$g net/minecraft/class_3421$class_3428 + f I WIDTH a field_31639 + f I HEIGHT b field_31640 + f I DEPTH c field_31641 + f Z hasPlacedSpawner d field_15279 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom; createPiece a method_14863 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PrisonHall emj$h net/minecraft/class_3421$class_3429 + f I WIDTH a field_31642 + f I HEIGHT b field_31643 + f I DEPTH c field_31644 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PrisonHall; createPiece a method_14864 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RightTurn emj$i net/minecraft/class_3421$class_3430 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RightTurn; createPiece a method_16652 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RoomCrossing emj$j net/minecraft/class_3421$class_3431 + f I WIDTH a field_31645 + f I HEIGHT b field_31646 + f I DEPTH c field_31647 + f I type d field_15280 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RoomCrossing; createPiece a method_14865 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$SmoothStoneSelector emj$k net/minecraft/class_3421$class_3432 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StairsDown emj$l net/minecraft/class_3421$class_3433 + f I WIDTH a field_31648 + f I HEIGHT b field_31649 + f I DEPTH c field_31650 + f Z isSource d field_15281 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StairsDown; createPiece a method_14866 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;IIILnet/minecraft/core/Direction;)V + p 1 type + p 2 genDepth + p 3 x + p 4 z + p 5 orientation + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece emj$m net/minecraft/class_3421$class_3434 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight; previousPiece a field_15284 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom; portalRoomPiece b field_15283 + f Ljava/util/List; pendingChildren c field_15282 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Straight emj$n net/minecraft/class_3421$class_3435 + f I WIDTH a field_31651 + f I HEIGHT b field_31652 + f I DEPTH c field_31653 + f Z leftChild d field_15286 + f Z rightChild i field_15285 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Straight; createPiece a method_14867 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StraightStairsDown emj$o net/minecraft/class_3421$class_3436 + f I WIDTH a field_31654 + f I HEIGHT b field_31655 + f I DEPTH c field_31656 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StraightStairsDown; createPiece a method_14868 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece emj$p net/minecraft/class_3421$class_3437 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; entryDoor h field_15287 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType;III)V generateSmallDoor a method_14872 + p 1 level + p 2 random + p 3 box + p 4 type + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isOkBox a method_14871 + p 0 box + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildForward a method_14874 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; randomSmallDoor b method_14869 + p 1 random + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildLeft b method_14870 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildRight c method_14873 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType emj$p$a net/minecraft/class_3421$class_3437$class_3438 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; OPENING a field_15288 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; WOOD_DOOR b field_15290 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; GRATES c field_15289 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; IRON_DOOR d field_15291 + f [Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; $VALUES e field_15292 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; $values a method_36762 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Turn emj$q net/minecraft/class_3421$class_3466 + f I WIDTH a field_31657 + f I HEIGHT b field_31658 + f I DEPTH c field_31659 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdStructure emk net/minecraft/class_3188 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37817 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41690 a method_41690 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_41691 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/SwampHutPiece eml net/minecraft/class_3447 + f Z spawnedWitch h field_15322 + f Z spawnedCat i field_16445 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V spawnCat a method_16181 + p 1 level + p 2 box + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/SwampHutStructure emm net/minecraft/class_3197 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37818 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41693 a method_41693 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38693 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces emn net/minecraft/class_3471 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V generateMansion a method_15029 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 pieces + p 4 random + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FirstFloorRoomCollection emn$a net/minecraft/class_3471$class_3472 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection emn$b net/minecraft/class_3471$class_3473 + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x1 a method_15037 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Ljava/lang/String; get1x2SideEntrance a method_15033 + p 1 random + p 2 isStairs + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x1Secret b method_15032 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Ljava/lang/String; get1x2FrontEntrance b method_15031 + p 1 random + p 2 isStairs + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x2Secret c method_15035 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get2x2 d method_15034 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get2x2Secret e method_15036 + p 1 random + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionGrid emn$c net/minecraft/class_3471$class_3474 + f I DEFAULT_SIZE a field_31665 + f I CLEAR b field_31666 + f I CORRIDOR c field_31667 + f I ROOM d field_31668 + f I START_ROOM e field_31669 + f I TEST_ROOM f field_31670 + f I BLOCKED g field_31671 + f I ROOM_1x1 h field_31672 + f I ROOM_1x2 i field_31673 + f I ROOM_2x2 j field_31674 + f I ROOM_ORIGIN_FLAG k field_31675 + f I ROOM_DOOR_FLAG l field_31676 + f I ROOM_STAIRS_FLAG m field_31677 + f I ROOM_CORRIDOR_FLAG n field_31678 + f I ROOM_TYPE_MASK o field_31679 + f I ROOM_ID_MASK p field_31680 + f Lnet/minecraft/util/RandomSource; random q field_15438 + f Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; baseGrid r field_15440 + f Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; thirdFloorGrid s field_15439 + f [Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; floorRooms t field_15443 + f I entranceX u field_15442 + f I entranceY v field_15441 + m ()V setupThirdFloor a method_15048 + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)Z cleanEdges a method_15046 + p 1 grid + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;II)Z isHouse a method_15047 + p 0 layout + p 1 x + p 2 y + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IIII)Z isRoomId a method_15039 + p 1 layout + p 2 x + p 3 y + p 4 floor + p 5 roomId + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IILnet/minecraft/core/Direction;I)V recursiveCorridor a method_15045 + p 1 layout + p 2 x + p 3 y + p 4 direction + p 5 length + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)V identifyRooms a method_15042 + p 1 grid + p 2 floorRooms + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IIII)Lnet/minecraft/core/Direction; get1x2RoomDirection b method_15040 + p 1 layout + p 2 x + p 3 y + p 4 floor + p 5 roomId + m (Lnet/minecraft/util/RandomSource;)V + p 1 random +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionPiecePlacer emn$d net/minecraft/class_3471$class_3475 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager a field_15444 + f Lnet/minecraft/util/RandomSource; random b field_15447 + f I startX c field_15446 + f I startY d field_15445 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V entrance a method_15054 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/core/Direction;IIII)V traverseOuterWalls a method_15051 + p 1 pieces + p 2 data + p 3 layout + p 4 direction + p 5 startX + p 6 startY + p 7 entranceX + p 8 entranceY + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom2x2Secret a method_15053 + p 1 pieces + p 2 pos + p 3 rotation + p 4 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)V createRoof a method_15055 + p 1 pieces + p 2 pos + p 3 rotation + p 4 layout + p 5 nextFloorLayout + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom1x1 a method_15057 + p 1 pieces + p 2 pos + p 3 rotation + p 4 direction + p 5 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom2x2 a method_15056 + p 1 pieces + p 2 pos + p 3 rotation + p 4 frontDirection + p 5 sideDirection + p 6 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;Z)V addRoom1x2 a method_15059 + p 1 pieces + p 2 pos + p 3 rotation + p 4 frontDirection + p 5 sideDirection + p 6 floorRooms + p 7 isStairs + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionGrid;)V createMansion a method_15050 + p 1 pos + p 2 rotation + p 3 pieces + p 4 grid + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseWallPiece b method_15052 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseTurn c method_15058 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseInnerTurn d method_15060 + p 1 pieces + p 2 data + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/util/RandomSource;)V + p 1 structureTemplateManager + p 2 random +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData emn$e net/minecraft/class_3471$class_3476 + f Lnet/minecraft/world/level/block/Rotation; rotation a field_15450 + f Lnet/minecraft/core/BlockPos; position b field_15449 + f Ljava/lang/String; wallType c field_15448 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SecondFloorRoomCollection emn$f net/minecraft/class_3471$class_3477 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid emn$g net/minecraft/class_3471$class_3478 + f [[I grid a field_15451 + f I width b field_15454 + f I height c field_15453 + f I valueIfOutside d field_15452 + m (II)I get a method_15066 + p 1 x + p 2 y + m (III)V set a method_15065 + p 1 x + p 2 y + p 3 value + m (IIII)V setif a method_15061 + p 1 x + p 2 y + p 3 oldValue + p 4 newValue + m (IIIII)V set a method_15062 + p 1 minX + p 2 minY + p 3 maxX + p 4 maxY + p 5 value + m (III)Z edgesTo b method_15067 + p 1 x + p 2 y + p 3 expectedValue + m (III)V + p 1 width + p 2 height + p 3 valueIfOutside +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$ThirdFloorRoomCollection emn$h net/minecraft/class_3471$class_3479 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$WoodlandMansionPiece emn$i net/minecraft/class_3471$class_3480 + m (Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35473 + p 0 mirror + p 1 rotation + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; makeLocation a method_35474 + p 0 name + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35475 a method_35475 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V + p 1 structureTemplateManager + p 2 templateName + p 3 templatePosition + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;)V + p 1 structureTemplateManager + p 2 templateName + p 3 templatePosition + p 4 rotation + p 5 mirror + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionStructure emo net/minecraft/class_3223 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37819 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41695 a method_41695 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V generatePieces a method_41696 + p 1 builder + p 2 context + p 3 pos + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/package-info emp net/minecraft/class_7156 +c net/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest emq net/minecraft/class_3818 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24994 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest; INSTANCE b field_16868 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest; method_28959 b method_28959 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest emr net/minecraft/class_4992 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24995 + f F minChance b field_23334 + f F maxChance d field_23335 + f I minDist e field_23336 + f I maxDist f field_23337 + f Lnet/minecraft/core/Direction$Axis; axis g field_23338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28960 a method_28960 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Lnet/minecraft/core/Direction$Axis; method_28961 a method_28961 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Integer; method_28962 b method_28962 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Integer; method_28963 c method_28963 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Float; method_28964 d method_28964 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Float; method_28965 e method_28965 + m (FFIILnet/minecraft/core/Direction$Axis;)V + p 1 minChance + p 2 maxChance + p 3 minDist + p 4 maxDist + p 5 axis + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor ems net/minecraft/class_5192 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24996 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor; INSTANCE b field_24040 + f Ljava/util/Map; replacements c field_24041 + m (Ljava/util/HashMap;)V method_27255 a method_27255 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor; method_28966 b method_28966 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockAgeProcessor emt net/minecraft/class_5193 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24997 + f F PROBABILITY_OF_REPLACING_FULL_BLOCK b field_31681 + f F PROBABILITY_OF_REPLACING_STAIRS c field_31682 + f F PROBABILITY_OF_REPLACING_OBSIDIAN d field_31683 + f [Lnet/minecraft/world/level/block/state/BlockState; NON_MOSSY_REPLACEMENTS e field_27338 + f F mossiness f field_24042 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceFullStoneBlock a method_27256 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; getRandomFacingStairs a method_27257 + p 0 random + p 1 stairsBlock + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceStairs a method_27258 + p 1 random + p 2 state + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getRandomBlock a method_27259 + p 0 random + p 1 states + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;[Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getRandomBlock a method_27260 + p 1 random + p 2 normalStates + p 3 mossyStates + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockAgeProcessor;)Ljava/lang/Float; method_28967 a method_28967 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceSlab b method_27261 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceWall c method_27262 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceObsidian d method_27263 + p 1 random + m (F)V + p 1 mossiness + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor emu net/minecraft/class_3793 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24998 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; STRUCTURE_BLOCK b field_16718 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; AIR c field_16719 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; STRUCTURE_AND_AIR d field_16721 + f Lcom/google/common/collect/ImmutableList; toIgnore e field_16720 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor;)Ljava/util/List; method_28968 a method_28968 + m (Ljava/util/List;)V + p 1 ignoredBlocks + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockMatchTest emv net/minecraft/class_3819 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24999 + f Lnet/minecraft/world/level/block/Block; block b field_16869 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockMatchTest;)Lnet/minecraft/world/level/block/Block; method_28969 a method_28969 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor emw net/minecraft/class_3488 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25000 + f Ljava/util/Optional; rottableBlocks b field_38437 + f F integrity c field_15523 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42711 a method_42711 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor;)Ljava/lang/Float; method_42712 a method_42712 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor;)Ljava/util/Optional; method_42713 b method_42713 + m (Lnet/minecraft/core/HolderSet;F)V + p 1 rottableBlocks + p 2 integrity + m (F)V + p 1 integrity + m (Ljava/util/Optional;F)V + p 1 rottableBlocks + p 2 integrity + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockStateMatchTest emx net/minecraft/class_3820 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25001 + f Lnet/minecraft/world/level/block/state/BlockState; blockState b field_16870 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockStateMatchTest;)Lnet/minecraft/world/level/block/state/BlockState; method_28971 a method_28971 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 blockState + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor emy net/minecraft/class_8243 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43329 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; delegate b field_43330 + f Lnet/minecraft/util/valueproviders/IntProvider; limit c field_43331 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49888 a method_49888 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor;)Lnet/minecraft/util/valueproviders/IntProvider; method_49889 a method_49889 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; method_49890 b method_49890 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 delegate + p 2 limit + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor emz net/minecraft/class_3795 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25002 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap b field_16723 + f I offset c field_16725 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28972 a method_28972 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor;)Ljava/lang/Integer; method_28973 a method_28973 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_28974 b method_28974 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;I)V + p 1 heightmap + p 2 offset + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor ena net/minecraft/class_3794 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25003 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor; INSTANCE b field_16871 + f Lorg/slf4j/Logger; LOGGER c field_43332 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor; method_28975 b method_28975 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor enb net/minecraft/class_5399 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25618 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor; INSTANCE b field_25619 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor; method_29966 b method_29966 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest enc net/minecraft/class_4993 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25004 + f F minChance b field_23339 + f F maxChance d field_23340 + f I minDist e field_23341 + f I maxDist f field_23342 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28976 a method_28976 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Integer; method_28977 a method_28977 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Integer; method_28978 b method_28978 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Float; method_28979 c method_28979 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Float; method_28980 d method_28980 + m (FFII)V + p 1 minChance + p 2 maxChance + p 3 minDist + p 4 maxDist + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings end net/minecraft/class_9822 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; IGNORE_WATERLOGGING a field_52237 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; APPLY_WATERLOGGING b field_52238 + f Lcom/mojang/serialization/Codec; CODEC c field_52239 + f Ljava/lang/String; name d field_52240 + f [Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; $VALUES e field_52241 + m ()[Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; $values a method_61019 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor ene net/minecraft/class_3822 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25005 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor; INSTANCE b field_16876 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor; method_28981 b method_28981 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest enf net/minecraft/class_4994 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25006 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest; INSTANCE b field_23343 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest; method_28982 b method_28982 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest eng net/minecraft/class_4995 + f Lcom/mojang/serialization/Codec; CODEC c field_25007 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; getType a method_26404 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z test a method_26406 + p 1 localPos + p 2 relativePos + p 3 structurePos + p 4 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType enh net/minecraft/class_4996 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; ALWAYS_TRUE_TEST a field_23344 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; LINEAR_POS_TEST b field_23345 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; AXIS_ALIGNED_LINEAR_POS_TEST c field_23346 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28983 a method_28983 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; register a method_26409 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule eni net/minecraft/class_3821 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough; DEFAULT_BLOCK_ENTITY_MODIFIER a field_43333 + f Lcom/mojang/serialization/Codec; CODEC b field_25008 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; inputPredicate c field_16872 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; locPredicate d field_16873 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest; posPredicate e field_23347 + f Lnet/minecraft/world/level/block/state/BlockState; outputState f field_16874 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier; blockEntityModifier g field_43334 + m ()Lnet/minecraft/world/level/block/state/BlockState; getOutputState a method_16763 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; getOutputTag a method_16760 + p 1 random + p 2 tag + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28984 a method_28984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z test a method_16762 + p 1 inputState + c The incoming state from the structure. + p 2 existingState + c The current state in the world. + p 3 localPos + c The local position of the target state, relative to the structure origin. + p 4 relativePos + c The actual position of the target state. {@code existingState} is the current in world state at this position. + p 5 structurePos + c The origin position of the structure. + p 6 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier; method_28985 a method_28985 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/block/state/BlockState; method_28986 b method_28986 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest; method_28987 c method_28987 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_28988 d method_28988 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_28989 e method_28989 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 inputPredicate + p 2 locPredicate + p 3 outputState + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 inputPredicate + p 2 locPredicate + p 3 posPredicate + p 4 outputState + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier;)V + p 1 inputPredicate + p 2 locPredicate + p 3 posPredicate + p 4 outputState + p 5 blockEntityModifier + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/ProtectedBlockProcessor enj net/minecraft/class_6378 + f Lnet/minecraft/tags/TagKey; cannotReplace a field_33771 + f Lcom/mojang/serialization/MapCodec; CODEC b field_33772 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProtectedBlockProcessor;)Lnet/minecraft/tags/TagKey; method_37002 a method_37002 + m (Lnet/minecraft/tags/TagKey;)V + p 1 cannotReplace + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest enk net/minecraft/class_3824 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25009 + f Lnet/minecraft/world/level/block/Block; block b field_16880 + f F probability d field_16879 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28990 a method_28990 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest;)Ljava/lang/Float; method_28991 a method_28991 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest;)Lnet/minecraft/world/level/block/Block; method_28992 b method_28992 + m (Lnet/minecraft/world/level/block/Block;F)V + p 1 block + p 2 probability + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest enl net/minecraft/class_3823 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25010 + f Lnet/minecraft/world/level/block/state/BlockState; blockState b field_16878 + f F probability d field_16877 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28993 a method_28993 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest;)Ljava/lang/Float; method_28994 a method_28994 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest;)Lnet/minecraft/world/level/block/state/BlockState; method_28995 b method_28995 + m (Lnet/minecraft/world/level/block/state/BlockState;F)V + p 1 blockState + p 2 probability + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleProcessor enm net/minecraft/class_3826 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25011 + f Lcom/google/common/collect/ImmutableList; rules b field_16881 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleProcessor;)Ljava/util/List; method_28996 a method_28996 + m (Ljava/util/List;)V + p 1 rules + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleTest enn net/minecraft/class_3825 + c Represents a (possibly randomly influenced) predicate of a given block state to be replaced during world generation. + f Lcom/mojang/serialization/Codec; CODEC c field_25012 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; getType a method_16766 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z test a method_16768 + p 1 state + p 2 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType eno net/minecraft/class_3827 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; ALWAYS_TRUE_TEST a field_16982 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; BLOCK_TEST b field_16981 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; BLOCKSTATE_TEST c field_16985 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; TAG_TEST d field_16983 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; RANDOM_BLOCK_TEST e field_16980 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; RANDOM_BLOCKSTATE_TEST f field_16984 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28997 a method_28997 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; register a method_16821 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings enp net/minecraft/class_3492 + f Lnet/minecraft/world/level/block/Mirror; mirror a field_15564 + f Lnet/minecraft/world/level/block/Rotation; rotation b field_15569 + f Lnet/minecraft/core/BlockPos; rotationPivot c field_15566 + f Z ignoreEntities d field_15571 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox e field_15565 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings f field_52242 + f Lnet/minecraft/util/RandomSource; random g field_15570 + f I palette h field_15575 + f Ljava/util/List; processors i field_16446 + f Z knownShape j field_16587 + f Z finalizeEntities k field_24043 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; copy a method_15128 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRandom a method_15112 + p 1 random + m (Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setMirror a method_15125 + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRotation a method_15123 + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setBoundingBox a method_15126 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setLiquidSettings a method_61020 + p 1 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; addProcessor a method_16184 + p 1 processor + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$Palette; getRandomPalette a method_15121 + p 1 palettes + p 2 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRotationPivot a method_15119 + p 1 rotationPivot + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setIgnoreEntities a method_15133 + p 1 ignoreEntities + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; clearProcessors b method_16183 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; popProcessor b method_16664 + p 1 processor + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/RandomSource; getRandom b method_15115 + p 1 seedPos + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setKnownShape b method_15131 + p 1 knownShape + m ()Lnet/minecraft/world/level/block/Mirror; getMirror c method_15114 + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setFinalizeEntities c method_27264 + p 1 finalizeEntities + m ()Lnet/minecraft/world/level/block/Rotation; getRotation d method_15113 + m ()Lnet/minecraft/core/BlockPos; getRotationPivot e method_15134 + m ()Z isIgnoreEntities f method_15135 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox g method_15124 + m ()Z getKnownShape h method_16444 + m ()Ljava/util/List; getProcessors i method_16182 + m ()Z shouldApplyWaterlogging j method_61021 + m ()Z shouldFinalizeEntities k method_27265 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor enq net/minecraft/class_3491 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; getType a method_16772 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo; processBlock a method_15110 + p 1 level + p 2 offset + p 3 pos + p 4 blockInfo + p 5 relativeBlockInfo + p 6 settings + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;)Ljava/util/List; finalizeProcessing a method_49887 + p 1 serverLevel + p 2 offset + p 3 pos + p 4 originalBlockInfos + p 5 processedBlockInfos + p 6 settings + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorList enr net/minecraft/class_5497 + f Ljava/util/List; list a field_26662 + m ()Ljava/util/List; list a method_31027 + m (Ljava/util/List;)V + p 1 list +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType ens net/minecraft/class_3828 + f Lcom/mojang/serialization/Codec; SINGLE_CODEC a field_25013 + f Lcom/mojang/serialization/Codec; LIST_OBJECT_CODEC b field_26663 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC c field_25876 + f Lcom/mojang/serialization/Codec; LIST_CODEC d field_25877 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_IGNORE e field_16986 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_ROT f field_16988 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; GRAVITY g field_16989 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; JIGSAW_REPLACEMENT h field_16991 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; RULE i field_16990 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; NOP j field_16987 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_AGE k field_24044 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLACKSTONE_REPLACE l field_24045 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; LAVA_SUBMERGED_BLOCK m field_25620 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; PROTECTED_BLOCKS n field_33773 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; CAPPED o field_43335 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28998 a method_28998 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; register a method_16822 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate ent net/minecraft/class_3499 + f Ljava/lang/String; PALETTE_TAG a field_31687 + f Ljava/lang/String; PALETTE_LIST_TAG b field_31688 + f Ljava/lang/String; ENTITIES_TAG c field_31689 + f Ljava/lang/String; BLOCKS_TAG d field_31690 + f Ljava/lang/String; BLOCK_TAG_POS e field_31691 + f Ljava/lang/String; BLOCK_TAG_STATE f field_31692 + f Ljava/lang/String; BLOCK_TAG_NBT g field_31693 + f Ljava/lang/String; ENTITY_TAG_POS h field_31694 + f Ljava/lang/String; ENTITY_TAG_BLOCKPOS i field_31695 + f Ljava/lang/String; ENTITY_TAG_NBT j field_31696 + f Ljava/lang/String; SIZE_TAG k field_31697 + f Ljava/util/List; palettes l field_15586 + f Ljava/util/List; entityInfoList m field_15589 + f Lnet/minecraft/core/Vec3i; size n field_15587 + f Ljava/lang/String; author o field_15588 + m ()Lnet/minecraft/core/Vec3i; getSize a method_15160 + m (Lnet/minecraft/world/entity/Entity;)Z method_15163 a method_15163 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V fillEntityList a method_15164 + p 1 level + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;ZLnet/minecraft/world/level/block/Block;)V fillFromWorld a method_15174 + p 1 level + p 2 pos + p 3 size + p 4 withEntities + p 5 toIgnore + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;III)V updateShapeAtEdge a method_20532 + p 0 level + p 1 flags + p 2 shape + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/BlockPos;)V updateShapeAtEdge a method_58190 + p 0 level + p 1 flags + p 2 shape + p 3 pos + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Z)V placeEntities a method_15179 + p 1 serverLevel + p 2 pos + p 3 mirror + p 4 rotation + p 5 offset + p 6 boundingBox + p 7 withEntities + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/util/RandomSource;I)Z placeInWorld a method_15172 + p 1 serverLevel + p 2 offset + p 3 pos + p 4 settings + p 5 random + p 6 flags + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Ljava/util/List;)Ljava/util/List; processBlockInfos a method_16446 + p 0 serverLevel + p 1 offset + p 2 pos + p 3 settings + p 4 blockInfos + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; createEntityIgnoreException a method_17916 + p 0 level + p 1 tag + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/Vec3i; getSize a method_15166 + p 1 rotation + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/phys/Vec3;ZLnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/Entity;)V method_17917 a method_17917 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateRelativePosition a method_15171 + p 0 decorator + p 1 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateConnectedPosition a method_15180 + p 1 decorator + p 2 start + p 3 settings + p 4 end + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_28053 a method_28053 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V addToLists a method_28054 + p 0 blockInfo + p 1 normalBlocks + p 2 blocksWithNbt + p 3 blocksWithSpecialShape + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; transform a method_15176 + p 0 target + p 1 mirror + p 2 rotation + p 3 centerOffset + m (Ljava/lang/String;)V setAuthor a method_15161 + p 1 author + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/util/List; buildInfoList a method_28055 + p 0 normalBlocks + p 1 blocksWithNbt + p 2 blocksWithSpecialShape + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;IIILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/Direction;III)V method_15173 a method_15173 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getZeroPositionWithTransform a method_15167 + p 1 targetPos + p 2 mirror + p 3 rotation + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;II)Lnet/minecraft/core/BlockPos; getZeroPositionWithTransform a method_15162 + p 0 pos + p 1 mirror + p 2 rotation + p 3 sizeX + p 4 sizeZ + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; transform a method_15168 + p 0 targetPos + p 1 mirror + p 2 rotation + p 3 offset + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_27267 + p 1 startPos + p 2 rotation + p 3 pivotPos + p 4 mirror + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_34400 + p 0 startPos + p 1 rotation + p 2 pivotPos + p 3 mirror + p 4 size + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/world/level/block/Block;)Ljava/util/List; filterBlocks a method_16445 + p 1 pos + p 2 settings + p 3 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/world/level/block/Block;Z)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; filterBlocks a method_15165 + p 1 pos + p 2 settings + p 3 block + p 4 relativePosition + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/CompoundTag;)V load a method_15183 + p 1 blockGetter + p 2 tag + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;)V loadPalette a method_15177 + p 1 blockGetter + p 2 paletteTag + p 3 blocksTag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_15175 + p 1 tag + m ([D)Lnet/minecraft/nbt/ListTag; newDoubleList a method_15184 + p 1 values + m ([I)Lnet/minecraft/nbt/ListTag; newIntegerList a method_15169 + p 1 values + m ()Ljava/lang/String; getAuthor b method_15181 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox b method_16187 + p 1 settings + p 2 startPos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_28056 b method_28056 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_16185 c method_16185 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$1 ent$1 net/minecraft/class_3499$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_15594 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_15593 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$Palette ent$a net/minecraft/class_3499$class_5162 + f Ljava/util/List; blocks a field_23913 + f Ljava/util/Map; cache b field_23914 + m ()Ljava/util/List; blocks a method_27125 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; blocks a method_27126 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Z method_27127 a method_27127 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; method_27128 b method_27128 + m (Ljava/util/List;)V + p 1 blocks +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$SimplePalette ent$b net/minecraft/class_3499$class_3500 + f Lnet/minecraft/world/level/block/state/BlockState; DEFAULT_BLOCK_STATE a field_15590 + f Lnet/minecraft/core/IdMapper; ids b field_15591 + f I lastId c field_15592 + m (I)Lnet/minecraft/world/level/block/state/BlockState; stateFor a method_15185 + p 1 id + m (Lnet/minecraft/world/level/block/state/BlockState;)I idFor a method_15187 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;I)V addMapping a method_15186 + p 1 state + p 2 id + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo ent$c net/minecraft/class_3499$class_3501 + f Lnet/minecraft/core/BlockPos; pos a comp_1341 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_1342 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_1343 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1341 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_1342 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_1343 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 state + p 3 nbt +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureEntityInfo ent$d net/minecraft/class_3499$class_3502 + f Lnet/minecraft/world/phys/Vec3; pos a field_15599 + f Lnet/minecraft/core/BlockPos; blockPos b field_15600 + f Lnet/minecraft/nbt/CompoundTag; nbt c field_15598 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 blockPos + p 3 nbt +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager enu net/minecraft/class_3485 + f Ljava/lang/String; STRUCTURE_RESOURCE_DIRECTORY_NAME a field_31684 + f Lorg/slf4j/Logger; LOGGER b field_15514 + f Ljava/lang/String; STRUCTURE_GENERATED_DIRECTORY_NAME c field_52243 + f Ljava/lang/String; STRUCTURE_FILE_EXTENSION d field_31685 + f Ljava/lang/String; STRUCTURE_TEXT_FILE_EXTENSION e field_31686 + f Ljava/util/Map; structureRepository f field_15513 + f Lcom/mojang/datafixers/DataFixer; fixerUpper g field_15515 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager h field_25189 + f Ljava/nio/file/Path; generatedDir i field_15512 + f Ljava/util/List; sources j field_39417 + f Lnet/minecraft/core/HolderGetter; blockLookup k field_40369 + f Lnet/minecraft/resources/FileToIdConverter; RESOURCE_LISTER l field_52244 + m ()Ljava/util/stream/Stream; listTemplates a method_44226 + m (ILjava/lang/String;)Ljava/lang/String; method_44227 a method_44227 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getOrCreate a method_15091 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/nio/file/Path; createAndValidatePathToGeneratedStructure a method_15085 + p 1 location + p 2 extension + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Throwable;)V method_44229 a method_44229 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)Ljava/util/Optional; loadFromSnbt a method_44230 + p 1 id + p 2 path + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V onResourceManagerReload a method_29300 + p 1 resourceManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$InputStreamOpener;Ljava/util/function/Consumer;)Ljava/util/Optional; load a method_44231 + p 1 inputStream + p 2 onError + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$Source;)Ljava/util/stream/Stream; method_44232 a method_44232 + m (Ljava/io/InputStream;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; readStructure a method_15090 + p 1 stream + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_44233 a method_44233 + m (Ljava/nio/file/Path;)Z method_44242 a method_44242 + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V listFolderContents a method_44236 + p 1 folder + p 2 namespace + p 3 extension + p 4 output + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V method_44237 a method_44237 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; relativize a method_44238 + p 1 root + p 2 path + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_61022 a method_61022 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; readStructure a method_21891 + p 1 nbt + m ()Ljava/util/stream/Stream; listResources b method_44239 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; get b method_15094 + p 1 id + m (Ljava/nio/file/Path;)Ljava/io/InputStream; method_44244 b method_44244 + m ()Ljava/util/stream/Stream; listTestStructures c method_44241 + m (Lnet/minecraft/resources/ResourceLocation;)Z save c method_15093 + p 1 id + m ()Ljava/util/stream/Stream; listGenerated d method_44243 + m (Lnet/minecraft/resources/ResourceLocation;)V remove d method_15087 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; tryLoad e method_44245 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromResource f method_15088 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromTestStructures g method_44246 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromGenerated h method_15092 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/io/InputStream; method_44249 i method_44249 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/HolderGetter;)V + p 1 resourceManager + p 2 levelStorageAccess + p 3 fixerUpper + p 4 blockLookup + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$InputStreamOpener enu$a net/minecraft/class_3485$class_7513 +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$Source enu$b net/minecraft/class_3485$class_7514 + f Ljava/util/function/Function; loader a comp_852 + f Ljava/util/function/Supplier; lister b comp_853 + m ()Ljava/util/function/Function; loader a comp_852 + m ()Ljava/util/function/Supplier; lister b comp_853 + m (Ljava/util/function/Function;Ljava/util/function/Supplier;)V +c net/minecraft/world/level/levelgen/structure/templatesystem/TagMatchTest env net/minecraft/class_3798 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25014 + f Lnet/minecraft/tags/TagKey; tag b field_16747 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/TagMatchTest;)Lnet/minecraft/tags/TagKey; method_28999 a method_28999 + m (Lnet/minecraft/tags/TagKey;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/package-info enw net/minecraft/class_6133 +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendLoot enx net/minecraft/class_8244 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43336 + f Lorg/slf4j/Logger; LOGGER b field_43337 + f Lnet/minecraft/resources/ResourceKey; lootTable d field_43338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49893 a method_49893 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendLoot;)Lnet/minecraft/resources/ResourceKey; method_49894 a method_49894 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49895 a method_49895 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 lootTable + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendStatic eny net/minecraft/class_8245 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43339 + f Lnet/minecraft/nbt/CompoundTag; tag b field_43340 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49896 a method_49896 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendStatic;)Lnet/minecraft/nbt/CompoundTag; method_49897 a method_49897 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Clear enz net/minecraft/class_8246 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43341 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Clear; INSTANCE b field_43342 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough eoa net/minecraft/class_8247 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough; INSTANCE a field_43343 + f Lcom/mojang/serialization/MapCodec; CODEC b field_43344 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier eob net/minecraft/class_8248 + f Lcom/mojang/serialization/Codec; CODEC c field_43345 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; getType a method_49891 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; apply a method_49892 + p 1 random + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType eoc net/minecraft/class_8249 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; CLEAR a field_43346 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; PASSTHROUGH b field_43347 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; APPEND_STATIC c field_43348 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; APPEND_LOOT d field_43349 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_49898 a method_49898 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; register a method_49899 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/package-info eod net/minecraft/class_8250 +c net/minecraft/world/level/levelgen/synth/BlendedNoise eoe net/minecraft/class_5822 + c This class wraps three individual perlin noise octaves samplers.\nIt computes the octaves of the main noise, and then uses that as a linear interpolation value between the minimum and maximum limit noises. + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37206 + f Lcom/mojang/serialization/Codec; SCALE_RANGE e field_38269 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC f field_38270 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; minLimitNoise g field_28774 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; maxLimitNoise h field_28775 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; mainNoise i field_28776 + f D xzMultiplier j field_38271 + f D yMultiplier k field_38272 + f D xzFactor l field_38273 + f D yFactor m field_38274 + f D smearScaleMultiplier n field_38275 + f D maxValue o field_36630 + f D xzScale p field_34752 + f D yScale q field_34753 + m (DDDDD)Lnet/minecraft/world/level/levelgen/synth/BlendedNoise; createUnseeded a method_42384 + p 0 xzScale + p 2 yScale + p 4 xzFactor + p 6 yFactor + p 8 smearScaleMultiplier + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/synth/BlendedNoise; withNewRandom a method_42386 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42385 a method_42385 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42387 a method_42387 + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39117 + p 1 builder + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42388 b method_42388 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42389 c method_42389 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42390 d method_42390 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42391 e method_42391 + m (Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;DDDDD)V + p 1 minLimitNoise + p 2 maxLimitNoise + p 3 mainNoise + p 4 xzScale + p 6 yScale + p 8 xzFactor + p 10 yFactor + p 12 smearScaleMultiplier + m (Lnet/minecraft/util/RandomSource;DDDDD)V + p 1 random + p 2 xzScale + p 4 yScale + p 6 xzFactor + p 8 yFactor + p 10 smearScaleMultiplier + m ()V +c net/minecraft/world/level/levelgen/synth/ImprovedNoise eof net/minecraft/class_3756 + c Generates a single octave of Perlin noise. + f D xo a field_16591 + f D yo b field_16589 + f D zo c field_16588 + f F SHIFT_UP_EPSILON d field_31701 + f [B p e field_16590 + c A permutation array used in noise calculation.\nThis is populated with the values [0, 256) and shuffled per instance of {@code ImprovedNoise}.\n\n@see #p(int) + m (DDD)D noise a method_33658 + p 1 x + p 3 y + p 5 z + m (DDDDD)D noise a method_16447 + p 1 x + p 3 y + p 5 z + p 7 yScale + p 9 yMax + m (DDD[D)D noiseWithDerivative a method_35477 + p 1 x + p 3 y + p 5 z + p 7 values + m (I)I p a method_16449 + p 1 index + m (IDDD)D gradDot a method_16448 + p 0 gradIndex + p 1 xFactor + p 3 yFactor + p 5 zFactor + m (IIIDDDD)D sampleAndLerp a method_16450 + p 1 gridX + p 2 gridY + p 3 gridZ + p 4 deltaX + p 6 weirdDeltaY + p 8 deltaZ + p 10 deltaY + m (IIIDDD[D)D sampleWithDerivative a method_35478 + p 1 gridX + p 2 gridY + p 3 gridZ + p 4 deltaX + p 6 deltaY + p 8 deltaZ + p 10 noiseValues + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39118 + p 1 builder + m (Lnet/minecraft/util/RandomSource;)V + p 1 random +c net/minecraft/world/level/levelgen/synth/NoiseUtils eog net/minecraft/class_5836 + m (DD)D biasTowardsExtreme a method_35479 + c Takes an input value and biases it using a sine function towards two larger magnitude values. + p 0 value + c A value in the range [-1, 1] + p 2 bias + c The effect of the bias. At {@code 0.0}, there will be no bias. Mojang only uses {@code 1.0} here. + m (Ljava/lang/StringBuilder;DDD[B)V parityNoiseOctaveConfigString a method_39119 + p 0 builder + p 1 xo + p 3 yo + p 5 zo + p 7 p + m (Ljava/lang/StringBuilder;DDD[I)V parityNoiseOctaveConfigString a method_39120 + p 0 builder + p 1 xo + p 3 yo + p 5 zo + p 7 p + m ()V +c net/minecraft/world/level/levelgen/synth/NormalNoise eoh net/minecraft/class_5216 + c This samples the sum of two individual samplers of perlin noise octaves.\nThe input coordinates are scaled by {@link #INPUT_FACTOR}, and the result is scaled by {@link #valueFactor}. + f D INPUT_FACTOR a field_31702 + f D TARGET_DEVIATION b field_31703 + f D valueFactor c field_24175 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; first d field_24176 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; second e field_24177 + f D maxValue f field_36631 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters g field_37207 + m ()D maxValue a method_40554 + m (DDD)D getValue a method_27406 + p 1 x + p 3 y + p 5 z + m (I)D expectedDeviation a method_27407 + p 0 octaves + m (Lnet/minecraft/util/RandomSource;I[D)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; create a method_31927 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; createLegacyNetherBiome a method_39186 + p 0 random + p 1 parameters + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39124 + p 1 builder + m ()Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters b method_38475 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; create b method_38476 + p 0 random + p 1 parameters + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;Z)V + p 1 random + p 2 parameters + p 3 useLegacyNetherBiome +c net/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters eoh$a net/minecraft/class_5216$class_5487 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_35424 + f Lcom/mojang/serialization/Codec; CODEC b field_26438 + f I firstOctave c comp_516 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes d comp_517 + m ()I firstOctave a comp_516 + m (DLit/unimi/dsi/fastutil/doubles/DoubleArrayList;)V method_41153 a method_41153 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30833 a method_30833 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes b comp_517 + m (ILjava/util/List;)V + p 1 firstOctave + p 2 amplitudes + m (ID[D)V + p 1 firstOctave + p 2 amplitude + p 4 otherAmplitudes + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;)V + m ()V +c net/minecraft/world/level/levelgen/synth/PerlinNoise eoi net/minecraft/class_3537 + c This class generates multiple octaves of perlin noise. Each individual octave is an instance of {@link net.minecraft.world.level.levelgen.synth.ImprovedNoise}.\nMojang uses the term 'Perlin' to describe octaves or fBm (Fractal Brownian Motion) noise. + f I ROUND_OFF a field_31704 + f [Lnet/minecraft/world/level/levelgen/synth/ImprovedNoise; noiseLevels b field_15744 + f I firstOctave c field_34758 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes d field_26445 + f D lowestFreqValueFactor e field_20659 + f D lowestFreqInputFactor f field_20660 + f D maxValue g field_36632 + m ()D maxValue a method_40555 + m (D)D maxBrokenValue a method_40556 + p 1 yMultiplier + m (DDD)D getValue a method_15416 + p 1 x + p 3 y + p 5 z + m (DDDDDZ)D getValue a method_16453 + p 1 x + p 3 y + p 5 z + p 7 yScale + p 9 yMax + p 11 useFixedY + m (I)Lnet/minecraft/world/level/levelgen/synth/ImprovedNoise; getOctaveNoise a method_16668 + c @return A single octave of Perlin noise. + p 1 octave + m (Lnet/minecraft/util/RandomSource;)V skipOctave a method_34401 + p 0 random + m (Lnet/minecraft/util/RandomSource;ID[D)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create a method_35480 + p 0 random + p 1 firstOctave + p 2 firstAmplitude + p 4 amplitudes + m (Lnet/minecraft/util/RandomSource;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; createLegacyForLegacyNetherBiome a method_39126 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create a method_39127 + p 0 random + p 1 octaves + m (Lnet/minecraft/util/RandomSource;Ljava/util/stream/IntStream;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; createLegacyForBlendedNoise a method_39187 + p 0 random + p 1 octaves + m (Lit/unimi/dsi/fastutil/ints/IntSortedSet;)Lcom/mojang/datafixers/util/Pair; makeAmplitudes a method_30848 + p 0 octaves + m (Ljava/lang/Double;)Ljava/lang/String; method_39129 a method_39129 + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39130 + p 1 builder + m ()I firstOctave b method_38477 + m (D)D wrap b method_16452 + p 0 value + m (Lnet/minecraft/util/RandomSource;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create b method_30847 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Ljava/util/stream/IntStream;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create b method_39128 + p 0 random + p 1 octaves + m (Ljava/lang/Double;)Z method_39131 b method_39131 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes c method_38478 + m (D)D edgeValue c method_40557 + p 1 multiplier + m (Lnet/minecraft/util/RandomSource;Lcom/mojang/datafixers/util/Pair;Z)V + p 1 random + p 2 octavesAndAmplitudes + p 3 useNewFactory +c net/minecraft/world/level/levelgen/synth/PerlinSimplexNoise eoj net/minecraft/class_3543 + c This class generates multiple octaves of simplex noise. Each individual octave is an instance of {@link net.minecraft.world.level.levelgen.synth.SimplexNoise}.\nMojang uses the term 'Perlin' to describe octaves or fBm (Fractal Brownian Motion) noise and this class does not actually generate Perlin noise. + f [Lnet/minecraft/world/level/levelgen/synth/SimplexNoise; noiseLevels a field_15770 + f D highestFreqValueFactor b field_20661 + f D highestFreqInputFactor c field_20662 + m (DDZ)D getValue a method_16451 + p 1 x + p 3 y + p 5 useNoiseOffsets + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)V + p 1 random + p 2 octaves + m (Lnet/minecraft/util/RandomSource;Lit/unimi/dsi/fastutil/ints/IntSortedSet;)V + p 1 random + p 2 octaves +c net/minecraft/world/level/levelgen/synth/SimplexNoise eok net/minecraft/class_3541 + c A generator for a single octave of Simplex noise. + f [[I GRADIENT a field_15766 + f D xo b field_15763 + f D yo c field_15762 + f D zo d field_15761 + f D SQRT_3 e field_15764 + f D F2 f field_15768 + f D G2 g field_15767 + f [I p h field_15765 + c A permutation array used in noise generation.\nThis is populated with the values [0, 256) and shuffled. Despite the array declared as 512 length, only the first 256 values are used.\n\n@see #p(int) + m (DD)D getValue a method_15433 + p 1 x + p 3 y + m (DDD)D getValue a method_22416 + p 1 x + p 3 y + p 5 z + m (I)I p a method_16456 + p 1 index + m (IDDDD)D getCornerNoise3D a method_16455 + p 1 gradientIndex + p 2 x + p 4 y + p 6 z + p 8 offset + m ([IDDD)D dot a method_15431 + c @return The dot product of the provided three-dimensional gradient vector and the vector (x, y, z) + p 0 gradient + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/util/RandomSource;)V + p 1 random + m ()V +c net/minecraft/world/level/levelgen/synth/package-info eol net/minecraft/class_6135 +c net/minecraft/world/level/lighting/BlockLightEngine eom net/minecraft/class_3552 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos g field_16511 + m (JLnet/minecraft/world/level/block/state/BlockState;)I getEmission a method_15474 + p 1 packedPos + p 3 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_51532 a method_51532 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/BlockLightSectionStorage;)V + p 1 chunkSource + p 2 storage +c net/minecraft/world/level/lighting/BlockLightSectionStorage eon net/minecraft/class_3547 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource +c net/minecraft/world/level/lighting/BlockLightSectionStorage$BlockDataLayerStorageMap eon$a net/minecraft/class_3547$class_3548 + m ()Lnet/minecraft/world/level/lighting/BlockLightSectionStorage$BlockDataLayerStorageMap; copy a method_15443 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V +c net/minecraft/world/level/lighting/ChunkSkyLightSources eoo net/minecraft/class_8528 + f I NEGATIVE_INFINITY a field_44710 + f I SIZE b field_44711 + f I minY c field_44712 + f Lnet/minecraft/util/BitStorage; heightmap d field_44713 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos1 e field_44714 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos2 f field_44715 + m ()I getHighestLowestSourceY a method_51533 + m (I)V fill a method_51534 + p 1 value + m (II)I getLowestSourceY a method_51535 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/BlockGetter;III)Z update a method_51536 + p 1 level + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/BlockGetter;IILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z updateEdge a method_51537 + p 1 level + p 2 index + p 3 minY + p 4 pos1 + p 5 state1 + p 6 pos2 + p 7 state2 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I findLowestSourceBelow a method_51538 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isEdgeOccluded a method_51539 + p 0 level + p 1 pos1 + p 2 state1 + p 3 pos2 + p 4 state2 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V fillFrom a method_51540 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;III)I findLowestSourceY a method_51541 + p 1 chunk + p 2 sectionIndex + p 3 x + p 4 z + m (I)I get b method_51542 + p 1 index + m (II)V set b method_51543 + p 1 index + p 2 value + m (I)I extendSourcesBelowWorld c method_51544 + p 1 y + m (II)I index c method_51545 + p 0 x + p 1 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 level +c net/minecraft/world/level/lighting/DataLayerStorageMap eop net/minecraft/class_3556 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; map a field_15791 + f I CACHE_SIZE b field_31705 + f [J lastSectionKeys c field_15789 + f [Lnet/minecraft/world/level/chunk/DataLayer; lastSections d field_15790 + f Z cacheEnabled e field_16447 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; copyDataLayer a method_15502 + p 1 index + m (JLnet/minecraft/world/level/chunk/DataLayer;)V setLayer a method_15499 + p 1 sectionPos + p 3 array + m ()Lnet/minecraft/world/level/lighting/DataLayerStorageMap; copy b method_15504 + m (J)Z hasLayer b method_15503 + p 1 sectionPos + m ()V clearCache c method_15505 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getLayer c method_15501 + p 1 sectionPos + m ()V disableCache d method_16188 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; removeLayer d method_15500 + p 1 sectionPos + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 map +c net/minecraft/world/level/lighting/DynamicGraphMinFixedPoint eoq net/minecraft/class_3554 + f I NO_COMPUTED_LEVEL a field_31706 + f Lnet/minecraft/world/level/lighting/LeveledPriorityQueue; priorityQueue b field_43396 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; computedLevels c field_15784 + f Z hasWork d field_15782 + f J SOURCE e field_43397 + f I levelCount f field_15783 + m (II)I calculatePriority a method_50014 + p 1 oldLevel + p 2 newLevel + m (J)Z isSource a method_15494 + p 1 pos + m (JI)V setLevel a method_15485 + p 1 chunkPos + p 3 level + m (JIZ)V checkNeighborsAfterUpdate a method_15487 + p 1 pos + p 3 level + p 4 isDecreasing + m (JJI)I getComputedLevel a method_15486 + c Computes level propagated from neighbors of specified position with given existing level, excluding the given source position. + p 1 pos + p 3 excludedSourcePos + p 5 level + m (JJIIIZ)V checkEdge a method_15482 + p 1 fromPos + p 3 toPos + p 5 newLevel + p 6 previousLevel + p 7 propagationLevel + p 8 isDecreasing + m (JJIZ)V checkEdge a method_15478 + p 1 fromPos + p 3 toPos + p 5 newLevel + p 6 isDecreasing + m (Ljava/util/function/LongPredicate;)V removeIf a method_24206 + p 1 predicate + m (Ljava/util/function/LongPredicate;Lit/unimi/dsi/fastutil/longs/LongList;J)V method_24207 a method_24207 + m ()Z hasWork b method_15489 + m (I)I runUpdates b method_15492 + p 1 toUpdateCount + m (JJI)I computeLevelFromNeighbor b method_15488 + c Returns level propagated from start position with specified level to the neighboring end position. + p 1 startPos + p 3 endPos + p 5 startLevel + m (JJIZ)V checkNeighbor b method_15484 + p 1 fromPos + p 3 toPos + p 5 sourceLevel + p 6 isDecreasing + m ()I getQueueSize c method_24208 + m (J)I getLevel c method_15480 + p 1 chunkPos + m (J)V removeFromQueue e method_15483 + p 1 position + m (J)V checkNode f method_15491 + p 1 levelPos + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/world/level/lighting/DynamicGraphMinFixedPoint$1 eoq$1 net/minecraft/class_3554$1 + f I val$minMapSize a field_43398 + f Lnet/minecraft/world/level/lighting/DynamicGraphMinFixedPoint; field_16727 b field_16727 + m (Lnet/minecraft/world/level/lighting/DynamicGraphMinFixedPoint;IFI)V +c net/minecraft/world/level/lighting/LayerLightEventListener eor net/minecraft/class_3562 + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerData a method_15544 + p 1 sectionPos + m (Lnet/minecraft/core/BlockPos;)I getLightValue b method_15543 + p 1 levelPos +c net/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener eor$a net/minecraft/class_3562$class_3563 + f Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; INSTANCE a field_15812 + f [Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; $VALUES b field_15811 + m ()[Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; $values c method_36763 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/lighting/LayerLightSectionStorage eos net/minecraft/class_3560 + f Lnet/minecraft/world/level/chunk/LightChunkGetter; chunkSource a field_15803 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; sectionStates b field_44716 + f Lnet/minecraft/world/level/lighting/DataLayerStorageMap; visibleSectionData c field_15806 + f Lnet/minecraft/world/level/lighting/DataLayerStorageMap; updatingSectionData d field_15796 + f Lit/unimi/dsi/fastutil/longs/LongSet; changedSections e field_15802 + f Lit/unimi/dsi/fastutil/longs/LongSet; sectionsAffectedByLightUpdates f field_16448 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; queuedSections g field_15807 + f Z hasInconsistencies h field_44717 + f Lnet/minecraft/world/level/LightLayer; layer i field_15805 + f Lit/unimi/dsi/fastutil/longs/LongSet; columnsWithSources j field_44718 + f Lit/unimi/dsi/fastutil/longs/LongSet; columnsToRetainQueuedDataFor k field_19342 + c Section column positions (section positions with Y=0) that need to be kept even if some of their sections could otherwise be removed. + f Lit/unimi/dsi/fastutil/longs/LongSet; toRemove l field_15798 + c Set of section positions that can be removed, because their light won't affect any blocks. + m ()Z hasInconsistencies a method_15528 + m (J)I getLightValue a method_15538 + p 1 levelPos + m (JB)V putSectionState a method_51546 + p 1 sectionPos + p 3 sectionState + m (JI)V setStoredLevel a method_15525 + p 1 levelPos + p 3 lightLevel + m (JLnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15532 + p 1 sectionPos + p 3 data + m (JZ)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayer a method_15522 + p 1 sectionPos + p 3 cached + m (Lnet/minecraft/world/level/lighting/DataLayerStorageMap;J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayer a method_15533 + p 1 map + p 2 sectionPos + m (Lnet/minecraft/world/level/lighting/LightEngine;)V markNewInconsistencies a method_15527 + p 1 lightEngine + m ()V swapSectionMap b method_15530 + m (J)Z storingLightForSection b method_15524 + p 1 sectionPos + m (JZ)V setLightEnabled b method_15535 + p 1 sectionPos + p 3 lightEnabled + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerToWrite c method_51547 + p 1 sectionPos + m (JZ)V retainData c method_20600 + p 1 sectionColumnPos + p 3 retain + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerData d method_20533 + p 1 sectionPos + m (JZ)V updateSectionStatus d method_15526 + p 1 sectionPos + p 3 isEmpty + m (J)I getStoredLevel e method_15537 + p 1 levelPos + m (J)V markSectionAndNeighborsAsAffected f method_51415 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/chunk/DataLayer; createDataLayer g method_15529 + p 1 sectionPos + m (J)V onNodeAdded h method_15523 + p 1 sectionPos + m (J)V onNodeRemoved i method_15534 + p 1 sectionPos + m (J)Z lightOnInSection j method_51548 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType k method_51549 + p 1 sectionPos + m (J)V initializeSection l method_51550 + p 1 sectionPos + m (J)V removeSection m method_51551 + p 1 sectionPos + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/DataLayerStorageMap;)V + p 1 layer + p 2 chunkSource + p 3 updatingSectionData +c net/minecraft/world/level/lighting/LayerLightSectionStorage$SectionState eos$a net/minecraft/class_3560$class_8529 + f B EMPTY a field_44719 + f I MIN_NEIGHBORS b field_44720 + f I MAX_NEIGHBORS c field_44721 + f B HAS_DATA_BIT d field_44722 + f B NEIGHBOR_COUNT_BITS e field_44723 + m (B)Z hasData a method_51552 + p 0 sectionState + m (BI)B neighborCount a method_51553 + p 0 sectionState + p 1 neighborCount + m (BZ)B hasData a method_51554 + p 0 sectionState + p 1 hasData + m (B)I neighborCount b method_51555 + p 0 sectionState + m (B)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; type c method_51556 + p 0 sectionState + m ()V +c net/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType eos$b net/minecraft/class_3560$class_8530 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; EMPTY a field_44724 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; LIGHT_ONLY b field_44725 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; LIGHT_AND_DATA c field_44726 + f Ljava/lang/String; display d field_44727 + f [Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; $VALUES e field_44728 + m ()Ljava/lang/String; display a method_51557 + m ()[Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; $values b method_51558 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 display + m ()V +c net/minecraft/world/level/lighting/LevelLightEngine eot net/minecraft/class_3568 + f Lnet/minecraft/world/level/lighting/LightEngine; blockEngine a field_15814 + f I LIGHT_SECTION_PADDING b field_31714 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor c field_27339 + f Lnet/minecraft/world/level/lighting/LightEngine; skyEngine d field_15813 + m (Lnet/minecraft/world/level/LightLayer;)Lnet/minecraft/world/level/lighting/LayerLightEventListener; getLayerListener a method_15562 + p 1 type + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)Ljava/lang/String; getDebugData a method_22876 + p 1 lightLayer + p 2 sectionPos + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15558 + p 1 lightLayer + p 2 sectionPos + p 3 dataLayer + m (Lnet/minecraft/core/BlockPos;I)I getRawBrightness a method_22363 + p 1 blockPos + p 2 amount + m (Lnet/minecraft/core/SectionPos;)Z lightOnInSection a method_51559 + p 1 sectionPos + m (Lnet/minecraft/world/level/ChunkPos;Z)V retainData b method_20601 + p 1 pos + p 2 retain + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType b method_51560 + p 1 lightLayer + p 2 sectionPos + m ()I getLightSectionCount c method_31928 + m ()I getMinLightSection d method_31929 + m ()I getMaxLightSection e method_31930 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;ZZ)V + p 1 lightChunkGetter + p 2 blockLight + p 3 skyLight +c net/minecraft/world/level/lighting/LeveledPriorityQueue eou net/minecraft/class_8257 + f I levelCount a field_43399 + f [Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; queues b field_43400 + f I firstQueuedLevel c field_43401 + m ()J removeFirstLong a method_50019 + m (I)V checkFirstQueuedLevel a method_50020 + p 1 endLevelIndex + m (JI)V enqueue a method_50021 + p 1 value + p 3 levelIndex + m (JII)V dequeue a method_50022 + p 1 value + p 3 levelIndex + p 4 endIndex + m ()Z isEmpty b method_50023 + m (II)V + p 1 levelCount + p 2 expectedSize +c net/minecraft/world/level/lighting/LeveledPriorityQueue$1 eou$1 net/minecraft/class_8257$1 + f I val$minSize a field_43402 + f Lnet/minecraft/world/level/lighting/LeveledPriorityQueue; field_43403 b field_43403 + m (Lnet/minecraft/world/level/lighting/LeveledPriorityQueue;IFI)V +c net/minecraft/world/level/lighting/LightEngine eov net/minecraft/class_3558 + f I MAX_LEVEL a field_44729 + f I MIN_OPACITY b field_44730 + f J PULL_LIGHT_IN_ENTRY c field_44731 + f [Lnet/minecraft/core/Direction; PROPAGATION_DIRECTIONS d field_16513 + f Lnet/minecraft/world/level/chunk/LightChunkGetter; chunkSource e field_15795 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage; storage f field_15793 + f I MIN_QUEUE_SIZE g field_44732 + f Lit/unimi/dsi/fastutil/longs/LongOpenHashSet; blockNodesToCheck h field_44733 + f Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue; decreaseQueue i field_44734 + f Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue; increaseQueue j field_44735 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos k field_19284 + f I CACHE_SIZE l field_31709 + f [J lastChunkPos m field_17397 + f [Lnet/minecraft/world/level/chunk/LightChunk; lastChunk n field_17398 + m (II)Lnet/minecraft/world/level/chunk/LightChunk; getChunk a method_17529 + p 1 x + p 2 z + m (J)V checkNode a method_51529 + p 1 packedPos + m (JJ)V propagateDecrease a method_51530 + p 1 packedPos + p 3 lightLevel + m (JJI)V propagateIncrease a method_51531 + p 1 packedPos + p 3 queueEntry + p 5 lightLevel + m (JLnet/minecraft/world/level/block/state/BlockState;JLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shapeOccludes a method_50016 + p 1 packedPos1 + p 3 state1 + p 4 packedPos2 + p 6 state2 + p 7 direction + m (JLnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15515 + p 1 sectionPos + p 3 data + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)I getLightBlockInto a method_20049 + p 0 level + p 1 state1 + p 2 pos1 + p 3 state2 + p 4 pos2 + p 5 direction + p 6 defaultReturnValue + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z hasDifferentLightProperties a method_51561 + p 0 level + p 1 pos + p 2 state1 + p 3 state2 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape a method_51562 + p 0 level + p 1 pos + p 2 state + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyShape a method_51563 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;JLnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape a method_20710 + p 1 state + p 2 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)I getOpacity a method_50017 + p 1 state + p 2 pos + m (J)Ljava/lang/String; getDebugData b method_22875 + p 1 sectionPos + m (JJ)V enqueueDecrease b method_51565 + p 1 packedPos1 + p 3 packedPos2 + m (Lnet/minecraft/world/level/ChunkPos;Z)V retainData b method_20599 + p 1 chunkPos + p 2 retainData + m ()V clearChunkCache c method_17530 + m (J)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType c method_51568 + p 1 sectionPos + m (JJ)V enqueueIncrease c method_51566 + p 1 packedPos1 + p 3 packedPos2 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState c method_50018 + p 1 pos + m ()I propagateIncreases d method_51567 + m ()I propagateDecreases e method_51570 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/LayerLightSectionStorage;)V + p 1 chunkSource + p 2 storage + m ()V +c net/minecraft/world/level/lighting/LightEngine$QueueEntry eov$a net/minecraft/class_3558$class_8531 + f I FROM_LEVEL_BITS a field_44737 + f I DIRECTION_BITS b field_44738 + f J LEVEL_MASK c field_44739 + f J DIRECTIONS_MASK d field_44740 + f J FLAG_FROM_EMPTY_SHAPE e field_44741 + f J FLAG_INCREASE_FROM_EMISSION f field_44742 + m (I)J decreaseAllDirections a method_51571 + p 0 level + m (ILnet/minecraft/core/Direction;)J decreaseSkipOneDirection a method_51572 + p 0 level + p 1 direction + m (IZ)J increaseLightFromEmission a method_51573 + p 0 level + p 1 fromEmptyShape + m (IZLnet/minecraft/core/Direction;)J increaseSkipOneDirection a method_51574 + p 0 level + p 1 fromEmptyShape + p 2 direction + m (J)I getFromLevel a method_51575 + p 0 entry + m (JI)J withLevel a method_51576 + p 0 entry + p 2 level + m (JLnet/minecraft/core/Direction;)Z shouldPropagateInDirection a method_51577 + p 0 entry + p 2 direction + m (ZZZZZ)J increaseSkySourceInDirections a method_51578 + p 0 down + p 1 north + p 2 south + p 3 west + p 4 east + m (IZLnet/minecraft/core/Direction;)J increaseOnlyOneDirection b method_51579 + p 0 level + p 1 fromEmptyShape + p 2 direction + m (J)Z isFromEmptyShape b method_51580 + p 0 entry + m (JLnet/minecraft/core/Direction;)J withDirection b method_51581 + p 0 entry + p 2 direction + m (J)Z isIncreaseFromEmission c method_51582 + p 0 entry + m (JLnet/minecraft/core/Direction;)J withoutDirection c method_51583 + p 0 entry + p 2 direction + m ()V +c net/minecraft/world/level/lighting/LightEventListener eow net/minecraft/class_3565 + m ()Z hasLightWork K_ method_15518 + m ()I runLightUpdates a method_15516 + m (Lnet/minecraft/world/level/ChunkPos;Z)V setLightEnabled a method_15512 + p 1 chunkPos + p 2 lightEnabled + m (Lnet/minecraft/core/BlockPos;)V checkBlock a method_15513 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Z)V updateSectionStatus a method_15552 + p 1 pos + p 2 isQueueEmpty + m (Lnet/minecraft/core/SectionPos;Z)V updateSectionStatus a method_15551 + p 1 pos + p 2 isQueueEmpty + m (Lnet/minecraft/world/level/ChunkPos;)V propagateLightSources b method_51471 + p 1 chunkPos +c net/minecraft/world/level/lighting/SkyLightEngine eox net/minecraft/class_3572 + f J REMOVE_TOP_SKY_SOURCE_ENTRY g field_44743 + f J REMOVE_SKY_SOURCE_ENTRY h field_44744 + f J ADD_SKY_SOURCE_ENTRY i field_44745 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos j field_44746 + f Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; emptyChunkSources k field_44747 + m (I)Z isSourceLevel a method_51584 + p 0 level + m (III)I getLowestSourceY a method_51585 + p 1 x + p 2 z + p 3 defaultReturnValue + m (IIII)V removeSourcesBelow a method_51586 + p 1 x + p 2 z + p 3 minY + p 4 bottomSectionY + m (JLnet/minecraft/core/Direction;IZI)V propagateFromEmptySections a method_51587 + p 1 packedPos + p 3 direction + p 4 level + p 5 shouldIncrease + p 6 emptySections + m (Lnet/minecraft/core/Direction;II)Z crossedSectionEdge a method_51588 + p 0 direction + p 1 x + p 2 z + m (II)Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; getChunkSources b method_51589 + p 1 chunkX + p 2 chunkZ + m (III)V updateSourcesInColumn b method_51590 + p 1 x + p 2 z + p 3 lowestY + m (IIII)V addSourcesAbove b method_51591 + p 1 x + p 2 z + p 3 maxY + p 4 bottomSectionY + m (J)I countEmptySectionsBelowIfAtBorder d method_51592 + p 1 packedPos + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/SkyLightSectionStorage;)V + p 1 chunkSource + p 2 sectionStorage + m ()V +c net/minecraft/world/level/lighting/SkyLightEngine$1 eox$1 net/minecraft/class_3572$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15809 + m ()V +c net/minecraft/world/level/lighting/SkyLightSectionStorage eoy net/minecraft/class_3569 + m (I)Z hasLightDataAtOrBelow a method_15567 + p 1 y + m (Lnet/minecraft/world/level/chunk/DataLayer;)Lnet/minecraft/world/level/chunk/DataLayer; repeatFirstLayer a method_37460 + p 0 dataLayer + m ()I getBottomSectionY c method_51593 + m (JZ)I getLightValue e method_31931 + p 1 packedPos + p 3 updateAll + m (J)Z isAboveData l method_15568 + p 1 sectionPos + m (J)I getTopSectionY m method_51594 + p 1 sectionPos + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource +c net/minecraft/world/level/lighting/SkyLightSectionStorage$SkyDataLayerStorageMap eoy$a net/minecraft/class_3569$class_3570 + f I currentLowestY b field_15822 + f Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap; topSections c field_15821 + m ()Lnet/minecraft/world/level/lighting/SkyLightSectionStorage$SkyDataLayerStorageMap; copy a method_15572 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap;I)V + p 1 map + p 2 topSections + p 3 currentLowestY +c net/minecraft/world/level/lighting/SpatialLongSet eoz net/minecraft/class_6136 + f Lnet/minecraft/world/level/lighting/SpatialLongSet$InternalMap; map a field_31715 + m (IF)V + p 1 expectedSize + p 2 loadFactor +c net/minecraft/world/level/lighting/SpatialLongSet$InternalMap eoz$a net/minecraft/class_6136$class_6137 + f I X_BITS a field_31716 + f I Z_BITS b field_31717 + f I Y_BITS c field_31718 + f I Y_OFFSET d field_31719 + f I Z_OFFSET e field_31720 + f I X_OFFSET g field_31721 + f J OUTER_MASK h field_31722 + f I lastPos i field_31723 + f J lastOuterKey j field_31724 + f I minSize k field_31725 + m ()J removeFirstBit a method_35481 + m (IJ)Z replaceBit a method_35482 + p 1 index + p 2 value + m (J)J getOuterKey a method_35483 + p 0 value + m (JI)J getFullKey a method_35484 + p 0 value + p 2 trailingZeros + m (IJ)Z removeFromEntry b method_35485 + p 1 index + p 2 value + m (J)I getInnerKey b method_35486 + p 0 value + m (J)Z addBit c method_35487 + p 1 value + m (J)Z removeBit d method_35488 + p 1 value + m (J)Z removeFromNullEntry e method_35489 + p 1 value + m (IF)V + p 1 minSize + p 2 loadFactor + m ()V +c net/minecraft/world/level/lighting/package-info epa net/minecraft/class_6138 +c net/minecraft/world/level/material/EmptyFluid epb net/minecraft/class_3576 + m ()V +c net/minecraft/world/level/material/FlowingFluid epc net/minecraft/class_3609 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; FALLING a field_15902 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL b field_15900 + f I CACHE_SIZE e field_31726 + f Ljava/lang/ThreadLocal; OCCLUSION_CACHE f field_15901 + f Ljava/util/Map; shapes g field_17587 + m (IZ)Lnet/minecraft/world/level/material/FluidState; getFlowing a method_15728 + p 1 level + p 2 falling + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isWaterHole a method_15736 + p 1 level + p 2 fluid + p 3 pos + p 4 state + p 5 spreadPos + p 6 spreadState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Z canPassThrough a method_15746 + p 1 level + p 2 fluid + p 3 pos + p 4 state + p 5 direction + p 6 spreadPos + p 7 spreadState + p 8 fluidState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canHoldFluid a method_15754 + p 1 level + p 2 pos + p 3 state + p 4 fluid + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/Fluid;)Z canSpreadTo a method_15738 + p 1 level + p 2 fromPos + p 3 fromBlockState + p 4 direction + p 5 toPos + p 6 toBlockState + p 7 toFluidState + p 8 fluid + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isSolidFace a method_15749 + p 1 level + p 2 neighborPos + p 3 side + m (Lnet/minecraft/world/level/Level;)Z canConvertToSource a method_15737 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/FluidState; getNewLiquid a method_15727 + p 1 level + p 2 pos + p 3 blockState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)V spread a method_15725 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/block/state/BlockState;)V spreadToSides a method_15744 + p 1 level + p 2 pos + p 3 fluidState + p 4 blockState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)I getSpreadDelay a method_15753 + p 1 level + p 2 pos + p 3 currentState + p 4 newState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;S)Z method_15731 a method_15731 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;S)Lcom/mojang/datafixers/util/Pair; method_15734 a method_15734 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V beforeDestroyingBlock a method_15730 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/material/FluidState;)V spreadTo a method_15745 + p 1 level + p 2 pos + p 3 blockState + p 4 direction + p 5 fluidState + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)I sourceNeighborCount a method_15740 + c Returns the number of immediately adjacent source blocks of the same fluid that lie on the horizontal plane. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap;Lit/unimi/dsi/fastutil/shorts/Short2BooleanMap;)I getSlopeDistance a method_15742 + p 1 level + p 2 spreadPos + p 3 distance + p 4 direction + p 5 currentSpreadState + p 6 sourcePos + p 7 stateCache + p 8 waterHoleCache + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;S)Lcom/mojang/datafixers/util/Pair; method_15755 a method_15755 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;S)Z method_15743 a method_15743 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)S getCacheKey a method_15747 + p 0 sourcePos + p 1 spreadPos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPassThroughWall a method_15732 + p 1 direction + p 2 level + p 3 pos + p 4 state + p 5 spreadPos + p 6 spreadState + m (Z)Lnet/minecraft/world/level/material/FluidState; getSource a method_15729 + p 1 falling + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_17773 b method_17773 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Map; getSpread b method_15726 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;)I getSlopeFindDistance b method_15733 + p 1 level + m (Lnet/minecraft/world/level/LevelReader;)I getDropOff c method_15739 + p 1 level + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasSameAbove c method_17774 + p 0 fluidState + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/material/Fluid; getFlowing d method_15750 + m ()Lnet/minecraft/world/level/material/Fluid; getSource e method_15751 + m (Lnet/minecraft/world/level/material/FluidState;)I getLegacyLevel e method_15741 + p 0 state + m (Lnet/minecraft/world/level/material/FluidState;)Z affectsFlow g method_15748 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)Z isSourceBlockOfThisType h method_15752 + p 1 state + m ()Lit/unimi/dsi/fastutil/objects/Object2ByteLinkedOpenHashMap; method_15735 l method_15735 + m ()V + m ()V +c net/minecraft/world/level/material/FlowingFluid$1 epc$1 net/minecraft/class_3609$1 + m (I)V +c net/minecraft/world/level/material/Fluid epd net/minecraft/class_3611 + f Lnet/minecraft/world/level/material/FluidState; defaultFluidState a field_15903 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36431 + f Lnet/minecraft/core/IdMapper; FLUID_STATE_REGISTRY c field_15904 + f Lnet/minecraft/world/level/block/state/StateDefinition; stateDefinition d field_15905 + m ()Lnet/minecraft/world/item/Item; getBucket a method_15774 + m (Lnet/minecraft/tags/TagKey;)Z is a method_15791 + p 1 tag + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/phys/Vec3; getFlow a method_15782 + p 1 blockReader + p 2 pos + p 3 fluidState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/util/RandomSource;)V animateTick a method_15776 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/LevelReader;)I getTickDelay a method_15789 + p 1 level + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;)V createFluidStateDefinition a method_15775 + p 1 builder + m (Lnet/minecraft/world/level/material/Fluid;)Z isSame a method_15780 + p 1 fluid + m (Lnet/minecraft/world/level/material/FluidState;)F getOwnHeight a method_20784 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getHeight a method_15788 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/Direction;)Z canBeReplacedWith a method_15777 + p 1 state + p 2 level + p 3 pos + p 4 fluid + p 5 direction + m ()Z isEmpty b method_15794 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)V tick b method_15778 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/util/RandomSource;)V randomTick b method_15792 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/level/block/state/BlockState; createLegacyBlock b method_15790 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape b method_17775 + p 1 state + p 2 level + p 3 pos + m ()F getExplosionResistance c method_15784 + m (Lnet/minecraft/world/level/material/FluidState;)Z isSource c method_15793 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)I getAmount d method_15779 + p 1 state + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getStateDefinition f method_15783 + m (Lnet/minecraft/world/level/material/FluidState;)V registerDefaultState f method_15781 + p 1 state + m ()Lnet/minecraft/world/level/material/FluidState; defaultFluidState g method_15785 + m ()Lnet/minecraft/core/particles/ParticleOptions; getDripParticle h method_15787 + m ()Z isRandomlyTicking i method_15795 + m ()Ljava/util/Optional; getPickupSound j method_32359 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder k method_40178 + m ()V + m ()V +c net/minecraft/world/level/material/FluidState epe net/minecraft/class_3610 + f Lcom/mojang/serialization/Codec; CODEC a field_25018 + f I AMOUNT_MAX b field_31727 + f I AMOUNT_FULL g field_31728 + m ()Lnet/minecraft/world/level/material/Fluid; getType a method_15772 + m (Lnet/minecraft/tags/TagKey;)Z is a method_15767 + p 1 tag + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getHeight a method_15763 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/Direction;)Z canBeReplacedWith a method_15764 + p 1 level + p 2 pos + p 3 fluid + p 4 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V tick a method_15770 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V animateTick a method_15768 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/material/Fluid;)Z isSourceOfType a method_33659 + p 1 fluid + m (Lnet/minecraft/core/HolderSet;)Z is a method_40179 + p 1 fluids + m ()Z isSource b method_15771 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z shouldRenderBackwardUpFace b method_15756 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_15757 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/material/Fluid;)Z is b method_39360 + p 1 fluid + m ()Z isEmpty c method_15769 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getFlow c method_15758 + p 1 level + p 2 pos + m ()F getOwnHeight d method_20785 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape d method_17776 + p 1 level + p 2 pos + m ()I getAmount e method_15761 + m ()Z isRandomlyTicking f method_15773 + m ()Lnet/minecraft/world/level/block/state/BlockState; createLegacyBlock g method_15759 + m ()Lnet/minecraft/core/particles/ParticleOptions; getDripParticle h method_15766 + m ()F getExplosionResistance i method_15760 + m ()Lnet/minecraft/core/Holder; holder j method_40180 + m ()Ljava/util/stream/Stream; getTags k method_40181 + m (Lnet/minecraft/world/level/material/Fluid;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec + m ()V +c net/minecraft/world/level/material/Fluids epf net/minecraft/class_3612 + f Lnet/minecraft/world/level/material/Fluid; EMPTY a field_15906 + f Lnet/minecraft/world/level/material/FlowingFluid; FLOWING_WATER b field_15909 + f Lnet/minecraft/world/level/material/FlowingFluid; WATER c field_15910 + f Lnet/minecraft/world/level/material/FlowingFluid; FLOWING_LAVA d field_15907 + f Lnet/minecraft/world/level/material/FlowingFluid; LAVA e field_15908 + m (Ljava/lang/String;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/material/Fluid; register a method_15796 + p 0 key + p 1 fluid + m ()V + m ()V +c net/minecraft/world/level/material/FogType epg net/minecraft/class_5636 + f Lnet/minecraft/world/level/material/FogType; LAVA a field_27885 + f Lnet/minecraft/world/level/material/FogType; WATER b field_27886 + f Lnet/minecraft/world/level/material/FogType; POWDER_SNOW c field_27887 + f Lnet/minecraft/world/level/material/FogType; NONE d field_27888 + f [Lnet/minecraft/world/level/material/FogType; $VALUES e field_27889 + m ()[Lnet/minecraft/world/level/material/FogType; $values a method_36764 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/material/LavaFluid eph net/minecraft/class_3616 + f F MIN_LEVEL_CUTOFF e field_31729 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V fizz a method_15818 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z hasFlammableNeighbours a method_15819 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isFlammable b method_15817 + p 1 level + p 2 pos + m ()V +c net/minecraft/world/level/material/LavaFluid$Flowing eph$a net/minecraft/class_3616$class_3617 + m ()V +c net/minecraft/world/level/material/LavaFluid$Source eph$b net/minecraft/class_3616$class_3618 + m ()V +c net/minecraft/world/level/material/MapColor epi net/minecraft/class_3620 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BROWN A field_15977 + f Lnet/minecraft/world/level/material/MapColor; COLOR_GREEN B field_15995 + f Lnet/minecraft/world/level/material/MapColor; COLOR_RED C field_16020 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BLACK D field_16009 + f Lnet/minecraft/world/level/material/MapColor; GOLD E field_15994 + f Lnet/minecraft/world/level/material/MapColor; DIAMOND F field_15983 + f Lnet/minecraft/world/level/material/MapColor; LAPIS G field_15980 + f Lnet/minecraft/world/level/material/MapColor; EMERALD H field_16001 + f Lnet/minecraft/world/level/material/MapColor; PODZOL I field_16017 + f Lnet/minecraft/world/level/material/MapColor; NETHER J field_16012 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_WHITE K field_16003 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_ORANGE L field_15981 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_MAGENTA M field_15985 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_BLUE N field_15991 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_YELLOW O field_16013 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_GREEN P field_16018 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_PINK Q field_15989 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_GRAY R field_16027 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_GRAY S field_15988 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_CYAN T field_15990 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_PURPLE U field_16029 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BLUE V field_16015 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BROWN W field_15992 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_GREEN X field_16028 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_RED Y field_15982 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BLACK Z field_16007 + f Lnet/minecraft/world/level/material/MapColor; NONE a field_16008 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_NYLIUM aa field_25702 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_STEM ab field_25703 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_HYPHAE ac field_25704 + f Lnet/minecraft/world/level/material/MapColor; WARPED_NYLIUM ad field_25705 + f Lnet/minecraft/world/level/material/MapColor; WARPED_STEM ae field_25706 + f Lnet/minecraft/world/level/material/MapColor; WARPED_HYPHAE af field_25707 + f Lnet/minecraft/world/level/material/MapColor; WARPED_WART_BLOCK ag field_25708 + f Lnet/minecraft/world/level/material/MapColor; DEEPSLATE ah field_33532 + f Lnet/minecraft/world/level/material/MapColor; RAW_IRON ai field_33533 + f Lnet/minecraft/world/level/material/MapColor; GLOW_LICHEN aj field_33617 + f I col ak field_16011 + f I id al field_16021 + f [Lnet/minecraft/world/level/material/MapColor; MATERIAL_COLORS am field_16006 + f Lnet/minecraft/world/level/material/MapColor; GRASS b field_15999 + f Lnet/minecraft/world/level/material/MapColor; SAND c field_15986 + f Lnet/minecraft/world/level/material/MapColor; WOOL d field_15979 + f Lnet/minecraft/world/level/material/MapColor; FIRE e field_16002 + f Lnet/minecraft/world/level/material/MapColor; ICE f field_16016 + f Lnet/minecraft/world/level/material/MapColor; METAL g field_16005 + f Lnet/minecraft/world/level/material/MapColor; PLANT h field_16004 + f Lnet/minecraft/world/level/material/MapColor; SNOW i field_16022 + f Lnet/minecraft/world/level/material/MapColor; CLAY j field_15976 + f Lnet/minecraft/world/level/material/MapColor; DIRT k field_16000 + f Lnet/minecraft/world/level/material/MapColor; STONE l field_16023 + f Lnet/minecraft/world/level/material/MapColor; WATER m field_16019 + f Lnet/minecraft/world/level/material/MapColor; WOOD n field_15996 + f Lnet/minecraft/world/level/material/MapColor; QUARTZ o field_16025 + f Lnet/minecraft/world/level/material/MapColor; COLOR_ORANGE p field_15987 + f Lnet/minecraft/world/level/material/MapColor; COLOR_MAGENTA q field_15998 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_BLUE r field_16024 + f Lnet/minecraft/world/level/material/MapColor; COLOR_YELLOW s field_16010 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_GREEN t field_15997 + f Lnet/minecraft/world/level/material/MapColor; COLOR_PINK u field_16030 + f Lnet/minecraft/world/level/material/MapColor; COLOR_GRAY v field_15978 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_GRAY w field_15993 + f Lnet/minecraft/world/level/material/MapColor; COLOR_CYAN x field_16026 + f Lnet/minecraft/world/level/material/MapColor; COLOR_PURPLE y field_16014 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BLUE z field_15984 + m (I)Lnet/minecraft/world/level/material/MapColor; byId a method_38479 + p 0 id + m (Lnet/minecraft/world/level/material/MapColor$Brightness;)I calculateRGBColor a method_15820 + p 1 brightness + m (I)I getColorFromPackedId b method_38480 + p 0 packedId + m (Lnet/minecraft/world/level/material/MapColor$Brightness;)B getPackedId b method_38481 + p 1 brightness + m (I)Lnet/minecraft/world/level/material/MapColor; byIdUnsafe c method_38482 + p 0 id + m (II)V + p 1 id + p 2 col + m ()V +c net/minecraft/world/level/material/MapColor$Brightness epi$a net/minecraft/class_3620$class_6594 + f Lnet/minecraft/world/level/material/MapColor$Brightness; LOW a field_34759 + f Lnet/minecraft/world/level/material/MapColor$Brightness; NORMAL b field_34760 + f Lnet/minecraft/world/level/material/MapColor$Brightness; HIGH c field_34761 + f Lnet/minecraft/world/level/material/MapColor$Brightness; LOWEST d field_34762 + f I id e field_34763 + f I modifier f field_34764 + f [Lnet/minecraft/world/level/material/MapColor$Brightness; VALUES g field_34765 + f [Lnet/minecraft/world/level/material/MapColor$Brightness; $VALUES h field_34766 + m ()[Lnet/minecraft/world/level/material/MapColor$Brightness; $values a method_38483 + m (I)Lnet/minecraft/world/level/material/MapColor$Brightness; byId a method_38484 + p 0 id + m (I)Lnet/minecraft/world/level/material/MapColor$Brightness; byIdUnsafe b method_38485 + p 0 id + m (Ljava/lang/String;III)V + p 3 id + p 4 modifier + m ()V +c net/minecraft/world/level/material/PushReaction epj net/minecraft/class_3619 + f Lnet/minecraft/world/level/material/PushReaction; NORMAL a field_15974 + f Lnet/minecraft/world/level/material/PushReaction; DESTROY b field_15971 + f Lnet/minecraft/world/level/material/PushReaction; BLOCK c field_15972 + f Lnet/minecraft/world/level/material/PushReaction; IGNORE d field_15975 + f Lnet/minecraft/world/level/material/PushReaction; PUSH_ONLY e field_15970 + f [Lnet/minecraft/world/level/material/PushReaction; $VALUES f field_15973 + m ()[Lnet/minecraft/world/level/material/PushReaction; $values a method_36765 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/material/WaterFluid epk net/minecraft/class_3621 + m ()V +c net/minecraft/world/level/material/WaterFluid$Flowing epk$a net/minecraft/class_3621$class_3622 + m ()V +c net/minecraft/world/level/material/WaterFluid$Source epk$b net/minecraft/class_3621$class_3623 + m ()V +c net/minecraft/world/level/material/package-info epl net/minecraft/class_6139 +c net/minecraft/world/level/package-info epm net/minecraft/class_6145 +c net/minecraft/world/level/pathfinder/AmphibiousNodeEvaluator epn net/minecraft/class_15 + f Z prefersShallowSwimming l field_28358 + f F oldWalkableCost m field_65 + f F oldWaterBorderCost n field_64 + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isVerticalNeighborValid b method_43413 + p 1 neighbor + p 2 node + m (Z)V + p 1 prefersShallowSwimming +c net/minecraft/world/level/pathfinder/BinaryHeap epo net/minecraft/class_5 + f [Lnet/minecraft/world/level/pathfinder/Node; heap a field_1 + f I size b field_2 + m ()V clear a method_5 + c Clears the path + m (I)V upHeap a method_4 + c Sorts a point to the left + p 1 index + m (Lnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Node; insert a method_2 + c Adds a point to the path + p 1 point + m (Lnet/minecraft/world/level/pathfinder/Node;F)V changeCost a method_3 + c Changes the provided point's total cost if costIn is smaller + p 1 point + p 2 cost + m ()Lnet/minecraft/world/level/pathfinder/Node; peek b method_35490 + m (I)V downHeap b method_7 + c Sorts a point to the right + p 1 index + m (Lnet/minecraft/world/level/pathfinder/Node;)V remove b method_35491 + p 1 node + m ()Lnet/minecraft/world/level/pathfinder/Node; pop c method_6 + c Returns and removes the first point in the path + m ()I size d method_35492 + m ()Z isEmpty e method_8 + c Returns {@code true} if this path contains no points + m ()[Lnet/minecraft/world/level/pathfinder/Node; getHeap f method_35493 + m ()V +c net/minecraft/world/level/pathfinder/FlyNodeEvaluator epp net/minecraft/class_6 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypeByPosCache l field_27341 + f F SMALL_MOB_SIZE m field_49843 + f F SMALL_MOB_INFLATED_START_NODE_BOUNDING_BOX n field_41681 + f I MAX_START_NODE_CANDIDATES o field_41682 + m (III)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_47933 + p 1 x + p 2 y + p 3 z + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_9 a method_9 + m (Lnet/minecraft/world/entity/Mob;)Ljava/lang/Iterable; iteratePathfindingStartNodeCandidatePositions a method_47934 + p 1 mob + m (Lnet/minecraft/world/level/pathfinder/Node;)Z hasMalus b method_22877 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isOpen c method_22878 + p 1 node + m ()V +c net/minecraft/world/level/pathfinder/Node epq net/minecraft/class_9 + f I x a field_40 + f I y b field_39 + f I z c field_38 + f I heapIdx d field_37 + c The index in the PathHeap. -1 if not assigned. + f F g e field_36 + c The total cost of all path points up to this one. Corresponds to the A* g-score. + f F h f field_34 + c The estimated cost from this path point to the target. Corresponds to the A* h-score. + f F f g field_47 + c The total cost of the path containing this path point. Used as sort criteria in PathHeap. Corresponds to the A* f-score. + f Lnet/minecraft/world/level/pathfinder/Node; cameFrom h field_35 + f Z closed i field_42 + f F walkedDistance j field_46 + f F costMalus k field_43 + c The additional cost of the path point. If negative, the path point will be sorted out by NodeProcessors. + f Lnet/minecraft/world/level/pathfinder/PathType; type l field_41 + f I hash m field_44 + m ()Lnet/minecraft/core/BlockPos; asBlockPos a method_22879 + m (III)Lnet/minecraft/world/level/pathfinder/Node; cloneAndMove a method_26 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceTo a method_31 + c Returns the linear distance to another path point + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceTo a method_35494 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V writeToStream a method_35495 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Node;)V readContents a method_47935 + p 0 buffer + p 1 node + m ()Lnet/minecraft/world/phys/Vec3; asVec3 b method_35496 + m (III)I createHash b method_30 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceToXZ b method_44022 + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceToSqr b method_35497 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Node; createFromStream b method_28 + p 0 buffer + m ()Z inOpenSet c method_27 + c Returns {@code true} if this point has already been assigned to a path + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceToSqr c method_32 + c Returns the squared distance to another path point + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceManhattan c method_21654 + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceManhattan d method_21653 + p 1 point + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/pathfinder/NodeEvaluator epr net/minecraft/class_8 + f Lnet/minecraft/world/level/pathfinder/PathfindingContext; currentContext a field_49416 + f Lnet/minecraft/world/entity/Mob; mob b field_33 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; nodes c field_32 + f I entityWidth d field_31 + f I entityHeight e field_30 + f I entityDepth f field_28 + f Z canPassDoors g field_29 + f Z canOpenDoors h field_27 + f Z canFloat i field_25 + f Z canWalkOverFences j field_40927 + m ()Lnet/minecraft/world/level/pathfinder/Node; getStart a method_21 + m (DDD)Lnet/minecraft/world/level/pathfinder/Target; getTarget a method_16 + p 1 x + p 3 y + p 5 z + m (IIII)Lnet/minecraft/world/level/pathfinder/Node; method_18482 a method_18482 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathType a method_57615 + p 1 mob + p 2 pos + m (Lnet/minecraft/world/level/PathNavigationRegion;Lnet/minecraft/world/entity/Mob;)V prepare a method_12 + p 1 level + p 2 mob + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isBurningBlock a method_57082 + p 0 state + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;III)Lnet/minecraft/world/level/pathfinder/PathType; getPathType a method_17 + p 1 context + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;IIILnet/minecraft/world/entity/Mob;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeOfMob a method_25 + p 1 context + p 2 x + p 3 y + p 4 z + p 5 mob + m (Z)V setCanPassDoors a method_15 + p 1 canEnterDoors + m ([Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)I getNeighbors a method_18 + p 1 outputArray + p 2 node + m ()V done b method_19 + c This method is called when all nodes have been processed and PathEntity is created. + m (DDD)Lnet/minecraft/world/level/pathfinder/Target; getTargetNodeAt b method_57083 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Node; getNode b method_27137 + p 1 pos + m (Z)V setCanOpenDoors b method_20 + p 1 canOpenDoors + m (III)Lnet/minecraft/world/level/pathfinder/Node; getNode c method_13 + c Returns a mapped point or creates and adds one + p 1 x + p 2 y + p 3 z + m (Z)V setCanFloat c method_14 + p 1 canFloat + m ()Z canPassDoors d method_23 + m (Z)V setCanWalkOverFences d method_46737 + p 1 canWalkOverFences + m ()Z canOpenDoors e method_24 + m ()Z canFloat f method_22 + m ()Z canWalkOverFences g method_46738 + m ()V +c net/minecraft/world/level/pathfinder/Path eps net/minecraft/class_11 + f Ljava/util/List; nodes a field_52 + f Lnet/minecraft/world/level/pathfinder/Path$DebugData; debugData b field_45155 + f I nextNodeIndex c field_54 + f Lnet/minecraft/core/BlockPos; target d field_20301 + f F distToTarget e field_20302 + f Z reached f field_20303 + m ()V advance a method_44 + c Directs this path to the next point in its array + m (I)Lnet/minecraft/world/level/pathfinder/Node; getNode a method_40 + c Returns the {@link net.minecraft.world.level.pathfinder.Node} located at the specified index, usually the current one. + p 1 index + m (ILnet/minecraft/world/level/pathfinder/Node;)V replaceNode a method_33 + p 1 index + p 2 point + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getNextEntityPos a method_49 + c @return the current {@code PathEntity} target node as a {@code Vec3D} + p 1 entity + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/phys/Vec3; getEntityPosAtNode a method_47 + c Gets the vector of the {@link net.minecraft.world.level.pathfinder.Node} associated with the given index. + p 1 entity + p 2 index + m (Lnet/minecraft/world/level/pathfinder/Path;)Z sameAs a method_41 + c Returns {@code true} if the EntityPath are the same. Non instance related equals. + p 1 pathentity + m (Lnet/minecraft/network/FriendlyByteBuf;)V writeToStream a method_35498 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Node;)V method_35499 a method_35499 + m (Lnet/minecraft/network/FriendlyByteBuf;[Lnet/minecraft/world/level/pathfinder/Node;)V writeNodeArray a method_52602 + p 0 buffer + p 1 nodeArray + m ([Lnet/minecraft/world/level/pathfinder/Node;[Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)V setDebug a method_35500 + p 1 openSet + p 2 closedSet + p 3 targetNodes + m ()Z notStarted b method_30849 + m (I)V truncateNodes b method_36 + p 1 length + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Path; createFromStream b method_34 + p 0 buf + m ()Z isDone c method_46 + c Returns {@code true} if this path has reached the end + m (I)V setNextNodeIndex c method_42 + p 1 currentPathIndex + m (Lnet/minecraft/network/FriendlyByteBuf;)[Lnet/minecraft/world/level/pathfinder/Node; readNodeArray c method_52603 + p 0 buffer + m ()Lnet/minecraft/world/level/pathfinder/Node; getEndNode d method_45 + c Returns the last {@link net.minecraft.world.level.pathfinder.Node} of the Array. + m (I)Lnet/minecraft/core/BlockPos; getNodePos d method_31031 + p 1 index + m ()I getNodeCount e method_38 + m ()I getNextNodeIndex f method_39 + m ()Lnet/minecraft/core/BlockPos; getNextNodePos g method_31032 + m ()Lnet/minecraft/world/level/pathfinder/Node; getNextNode h method_29301 + m ()Lnet/minecraft/world/level/pathfinder/Node; getPreviousNode i method_30850 + m ()Z canReach j method_21655 + m ()Lnet/minecraft/world/level/pathfinder/Path$DebugData; debugData k method_52604 + m ()Lnet/minecraft/core/BlockPos; getTarget l method_48 + m ()F getDistToTarget m method_21656 + m ()Lnet/minecraft/world/level/pathfinder/Path; copy n method_52605 + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Z)V + p 1 nodes + p 2 target + p 3 reached +c net/minecraft/world/level/pathfinder/Path$DebugData eps$a net/minecraft/class_11$class_8644 + f [Lnet/minecraft/world/level/pathfinder/Node; openSet a comp_1587 + f [Lnet/minecraft/world/level/pathfinder/Node; closedSet b comp_1588 + f Ljava/util/Set; targetNodes c comp_1589 + m ()[Lnet/minecraft/world/level/pathfinder/Node; openSet a comp_1587 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52606 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Target;)V method_52607 a method_52607 + m ()[Lnet/minecraft/world/level/pathfinder/Node; closedSet b comp_1588 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Path$DebugData; read b method_52608 + p 0 buffer + m ()Ljava/util/Set; targetNodes c comp_1589 + m ([Lnet/minecraft/world/level/pathfinder/Node;[Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)V +c net/minecraft/world/level/pathfinder/PathComputationType ept net/minecraft/class_10 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; LAND a field_50 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; WATER b field_48 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; AIR c field_51 + f [Lnet/minecraft/world/level/pathfinder/PathComputationType; $VALUES d field_49 + m ()[Lnet/minecraft/world/level/pathfinder/PathComputationType; $values a method_36789 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/pathfinder/PathFinder epu net/minecraft/class_13 + f F FUDGING a field_31807 + f [Lnet/minecraft/world/level/pathfinder/Node; neighbors b field_60 + f I maxVisitedNodes c field_18708 + f Lnet/minecraft/world/level/pathfinder/NodeEvaluator; nodeEvaluator d field_61 + f Z DEBUG e field_31808 + f Lnet/minecraft/world/level/pathfinder/BinaryHeap; openSet f field_62 + m (I)[Lnet/minecraft/world/level/pathfinder/Node; method_52609 a method_52609 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Map;FIF)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_54 + p 1 profiler + p 2 node + p 3 targetPos + p 4 maxRange + p 5 accuracy + p 6 searchDepthMultiplier + m (Lnet/minecraft/world/level/PathNavigationRegion;Lnet/minecraft/world/entity/Mob;Ljava/util/Set;FIF)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_52 + c Finds a path to one of the specified positions and post-processes it or returns null if no path could be found within given accuracy + p 1 region + p 2 mob + p 3 targetPositions + p 4 maxRange + p 5 accuracy + p 6 searchDepthMultiplier + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)F distance a method_44000 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)F getBestH a method_21658 + p 1 node + p 2 targets + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/pathfinder/Path; reconstructPath a method_55 + c Converts a recursive path point structure into a path + p 1 point + p 2 targetPos + p 3 reachesTarget + m (Ljava/util/Map;Lnet/minecraft/world/level/pathfinder/Target;)Lnet/minecraft/world/level/pathfinder/Path; method_21660 a method_21660 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Target; method_21659 a method_21659 + m (Ljava/util/Map;Lnet/minecraft/world/level/pathfinder/Target;)Lnet/minecraft/world/level/pathfinder/Path; method_21661 b method_21661 + m (Lnet/minecraft/world/level/pathfinder/NodeEvaluator;I)V + p 1 nodeEvaluator + p 2 maxVisitedNodes +c net/minecraft/world/level/pathfinder/PathType epv net/minecraft/class_7 + f F malus A field_13 + f [Lnet/minecraft/world/level/pathfinder/PathType; $VALUES B field_24 + f Lnet/minecraft/world/level/pathfinder/PathType; BLOCKED a field_22 + f Lnet/minecraft/world/level/pathfinder/PathType; OPEN b field_7 + f Lnet/minecraft/world/level/pathfinder/PathType; WALKABLE c field_12 + f Lnet/minecraft/world/level/pathfinder/PathType; WALKABLE_DOOR d field_26446 + f Lnet/minecraft/world/level/pathfinder/PathType; TRAPDOOR e field_19 + f Lnet/minecraft/world/level/pathfinder/PathType; POWDER_SNOW f field_33534 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_POWDER_SNOW g field_36432 + f Lnet/minecraft/world/level/pathfinder/PathType; FENCE h field_10 + f Lnet/minecraft/world/level/pathfinder/PathType; LAVA i field_14 + f Lnet/minecraft/world/level/pathfinder/PathType; WATER j field_18 + f Lnet/minecraft/world/level/pathfinder/PathType; WATER_BORDER k field_4 + f Lnet/minecraft/world/level/pathfinder/PathType; RAIL l field_21 + f Lnet/minecraft/world/level/pathfinder/PathType; UNPASSABLE_RAIL m field_25418 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_FIRE n field_9 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_FIRE o field_3 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_OTHER p field_5 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_OTHER q field_17 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_OPEN r field_15 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_WOOD_CLOSED s field_23 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_IRON_CLOSED t field_8 + f Lnet/minecraft/world/level/pathfinder/PathType; BREACH u field_16 + f Lnet/minecraft/world/level/pathfinder/PathType; LEAVES v field_6 + f Lnet/minecraft/world/level/pathfinder/PathType; STICKY_HONEY w field_21326 + f Lnet/minecraft/world/level/pathfinder/PathType; COCOA x field_21516 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_CAUTIOUS y field_43351 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_TRAPDOOR z field_47413 + m ()F getMalus a method_11 + m ()[Lnet/minecraft/world/level/pathfinder/PathType; $values b method_36788 + m (Ljava/lang/String;IF)V + p 3 malus + m ()V +c net/minecraft/world/level/pathfinder/PathTypeCache epw net/minecraft/class_9315 + f I SIZE a field_49417 + f I MASK b field_49418 + f [J positions c field_49419 + f [Lnet/minecraft/world/level/pathfinder/PathType; pathTypes d field_49420 + m (IJ)Lnet/minecraft/world/level/pathfinder/PathType; get a method_57616 + p 1 index + p 2 pos + m (J)I index a method_57617 + p 0 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getOrCompute a method_57618 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;IJ)Lnet/minecraft/world/level/pathfinder/PathType; compute a method_57619 + p 1 level + p 2 pos + p 3 index + p 4 packedPos + m (Lnet/minecraft/core/BlockPos;)V invalidate a method_57620 + p 1 pos + m ()V +c net/minecraft/world/level/pathfinder/PathfindingContext epx net/minecraft/class_9316 + f Lnet/minecraft/world/level/CollisionGetter; level a field_49421 + f Lnet/minecraft/world/level/pathfinder/PathTypeCache; cache b field_49422 + f Lnet/minecraft/core/BlockPos; mobPosition c field_49423 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos d field_49424 + m ()Lnet/minecraft/world/level/CollisionGetter; level a method_57621 + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeFromState a method_57622 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_57623 + p 1 pos + m ()Lnet/minecraft/core/BlockPos; mobPosition b method_57624 + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/Mob;)V + p 1 level + p 2 mob +c net/minecraft/world/level/pathfinder/SwimNodeEvaluator epy net/minecraft/class_12 + f Z allowBreaching k field_58 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypesByPosCache l field_34767 + m (III)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_47936 + p 1 x + p 2 y + p 3 z + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_38486 a method_38486 + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isNodeValid a method_38487 + p 1 node + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getCachedBlockType b method_38489 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/pathfinder/Node;)Z hasMalus b method_57084 + p 0 node + m (Z)V + p 1 allowBreaching +c net/minecraft/world/level/pathfinder/Target epz net/minecraft/class_4459 + f F bestHeuristic m field_20304 + f Lnet/minecraft/world/level/pathfinder/Node; bestNode n field_20305 + c The nearest path point of the path that is constructed + f Z reached o field_20306 + m (FLnet/minecraft/world/level/pathfinder/Node;)V updateBest a method_21662 + p 1 heuristic + p 2 node + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Target; createFromStream c method_21663 + p 0 buffer + m ()Lnet/minecraft/world/level/pathfinder/Node; getBestNode d method_21664 + c Gets the nearest path point of the path that is constructed + m ()V setReached e method_21665 + m ()Z isReached f method_35501 + m (Lnet/minecraft/world/level/pathfinder/Node;)V + p 1 node + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/pathfinder/WalkNodeEvaluator eqa net/minecraft/class_14 + f D SPACE_BETWEEN_WALL_POSTS k field_31809 + f D DEFAULT_MOB_JUMP_HEIGHT l field_40928 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypesByPosCacheByMob m field_49156 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; collisionCache n field_25191 + f [Lnet/minecraft/world/level/pathfinder/Node; reusableNeighbors o field_49157 + m (III)Lnet/minecraft/world/level/pathfinder/Node; getBlockedNode a method_43570 + p 1 x + p 2 y + p 3 z + m (IIIIDLnet/minecraft/core/Direction;Lnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_62 + p 1 x + p 2 y + p 3 z + p 4 verticalDeltaLimit + p 5 nodeFloorLevel + p 7 direction + p 8 pathType + m (IIIIDLnet/minecraft/core/Direction;Lnet/minecraft/world/level/pathfinder/PathType;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/pathfinder/Node; tryJumpOn a method_57085 + p 1 x + p 2 y + p 3 z + p 4 verticalDeltaLimit + p 5 nodeFloorLevel + p 7 direction + p 8 pathType + p 9 pos + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_57086 a method_57086 + m (IIILnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Node; tryFindFirstNonWaterBelow a method_57087 + p 1 x + p 2 y + p 3 z + p 4 node + m (IIILnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/Node; getClosedNode a method_57088 + p 1 x + p 2 y + p 3 z + p 4 pathType + m (IIILnet/minecraft/world/level/pathfinder/PathType;F)Lnet/minecraft/world/level/pathfinder/Node; getNodeAndUpdateCostToMax a method_43569 + p 1 x + p 2 y + p 3 z + p 4 pathType + p 5 malus + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)D getFloorLevel a method_60 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isDiagonalValid a method_57089 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isNeighborValid a method_20536 + p 1 neighbor + p 2 node + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isDiagonalValid a method_29579 + p 1 root + p 2 xNode + p 3 zNode + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z doesBlockHavePartialCollision a method_43414 + p 0 pathType + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;IIILnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/PathType; checkNeighbourBlocks a method_59 + p 0 context + p 1 x + p 2 y + p 3 z + p 4 pathType + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeStatic a method_23476 + p 0 context + p 1 pos + m (Lnet/minecraft/world/phys/AABB;)Z hasCollisions a method_29304 + p 1 boundingBox + m (Lnet/minecraft/world/phys/AABB;Ljava/lang/Object;)Z method_29305 a method_29305 + m (Lnet/minecraft/core/BlockPos;)Z canStartAt a method_47893 + p 1 pos + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getCachedPathType b method_31932 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeStatic b method_57625 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeFromState b method_58 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)Z canReachWithoutCollision b method_29578 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;III)Ljava/util/Set; getPathTypeWithinMobBB b method_57090 + p 1 context + p 2 x + p 3 y + p 4 z + m ()Z isAmphibious c method_37004 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Node; getStartNode c method_43415 + p 1 pos + m (III)Lnet/minecraft/world/level/pathfinder/Node; tryFindFirstGroundNodeBelow d method_57091 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/BlockPos;)D getFloorLevel d method_37003 + p 1 pos + m ()D getMobJumpHeight h method_46739 + m ()V +c net/minecraft/world/level/pathfinder/WalkNodeEvaluator$1 eqa$1 net/minecraft/class_14$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathType a field_47414 + m ()V +c net/minecraft/world/level/pathfinder/package-info eqb net/minecraft/class_6146 +c net/minecraft/world/level/portal/DimensionTransition eqc net/minecraft/class_5454 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; DO_NOTHING a field_52245 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; PLAY_PORTAL_SOUND b field_52246 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; PLACE_PORTAL_TICKET c field_52247 + f Lnet/minecraft/server/level/ServerLevel; newLevel d comp_2820 + f Lnet/minecraft/world/phys/Vec3; pos e comp_2821 + f Lnet/minecraft/world/phys/Vec3; speed f comp_2822 + f F yRot g comp_2823 + f F xRot h comp_2824 + f Z missingRespawnBlock i comp_2825 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; postDimensionTransition j comp_2864 + m ()Lnet/minecraft/server/level/ServerLevel; newLevel a comp_2820 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; findAdjustedSharedSpawnPos a method_61023 + p 0 newLevel + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; missingRespawnBlock a method_60635 + p 0 level + p 1 entity + p 2 postDimensionTransition + m (Lnet/minecraft/world/entity/Entity;)V playPortalSound a method_61024 + p 0 entity + m ()Lnet/minecraft/world/phys/Vec3; pos b comp_2821 + m (Lnet/minecraft/world/entity/Entity;)V placePortalTicket b method_61025 + p 0 entity + m ()Lnet/minecraft/world/phys/Vec3; speed c comp_2822 + m (Lnet/minecraft/world/entity/Entity;)V method_61026 c method_61026 + m ()F yRot d comp_2823 + m ()F xRot e comp_2824 + m ()Z missingRespawnBlock f comp_2825 + m ()Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; postDimensionTransition g comp_2864 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FFLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + p 1 newLevel + p 2 pos + p 3 speed + p 4 yRot + p 5 xRot + p 6 postDimensionTransition + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + p 1 newLevel + p 2 entity + p 3 postDimensionTransition + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FFZLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + m ()V +c net/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition eqc$a net/minecraft/class_5454$class_9823 + m (Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;Lnet/minecraft/world/entity/Entity;)V method_61027 a method_61027 +c net/minecraft/world/level/portal/PortalForcer eqd net/minecraft/class_1946 + f I TICKET_RADIUS a field_31810 + f I NETHER_PORTAL_RADIUS b field_52248 + f I OVERWORLD_PORTAL_RADIUS c field_52249 + f I FRAME_HEIGHT d field_31813 + f I FRAME_WIDTH e field_31814 + f I FRAME_BOX f field_31815 + f I FRAME_HEIGHT_START g field_31816 + f I FRAME_HEIGHT_END h field_31817 + f I FRAME_WIDTH_START i field_31818 + f I FRAME_WIDTH_END j field_31819 + f I FRAME_BOX_START k field_31820 + f I FRAME_BOX_END l field_31821 + f I NOTHING_FOUND m field_31822 + f Lnet/minecraft/server/level/ServerLevel; level n field_9286 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPortalReplaceBlock a method_45550 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z method_61028 a method_61028 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;I)Z canHostFrame a method_30481 + p 1 originalPos + p 2 offsetPos + p 3 direction + p 4 offsetScale + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_61029 a method_61029 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; createPortal a method_30482 + p 1 pos + p 2 axis + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Ljava/util/Optional; findClosestPortalPosition a method_30483 + p 1 exitPos + p 2 isNether + p 3 worldBorder + m (Lnet/minecraft/core/Holder;)Z method_22389 a method_22389 + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/portal/PortalShape eqe net/minecraft/class_2424 + f I MAX_WIDTH a field_31823 + f I MAX_HEIGHT b field_31824 + f I MIN_WIDTH c field_31825 + f I MIN_HEIGHT d field_31826 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; FRAME e field_25883 + f F SAFE_TRAVEL_MAX_ENTITY_XY f field_41086 + f D SAFE_TRAVEL_MAX_VERTICAL_DELTA g field_41087 + f Lnet/minecraft/world/level/LevelAccessor; level h field_11318 + f Lnet/minecraft/core/Direction$Axis; axis i field_11317 + f Lnet/minecraft/core/Direction; rightDir j field_11314 + f I numPortalBlocks k field_11313 + f Lnet/minecraft/core/BlockPos; bottomLeft l field_11316 + f I height m field_11312 + f I width n field_11311 + m ()Z isValid a method_10360 + m (DLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_47381 a method_47381 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; findPortalShape a method_30486 + p 0 level + p 1 bottomLeft + p 2 predicate + p 3 axis + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; findEmptyPortalShape a method_30485 + p 0 level + p 1 bottomLeft + p 2 axis + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmpty a method_10359 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_30487 a method_30487 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V method_30488 a method_30488 + m (Lnet/minecraft/world/level/portal/PortalShape;)Z method_30489 a method_30489 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityDimensions;)Lnet/minecraft/world/phys/Vec3; findCollisionFreePosition a method_47382 + p 0 pos + p 1 level + p 2 entity + p 3 dimensions + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)I getDistanceUntilTop a method_30490 + p 1 pos + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Z hasTopFrame a method_30491 + p 1 pos + p 2 distanceToTop + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateBottomLeft a method_30492 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDistanceUntilEdgeAboveFrame a method_30493 + p 1 pos + p 2 direction + m (Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/EntityDimensions;)Lnet/minecraft/world/phys/Vec3; getRelativePosition a method_30494 + p 0 foundRectangle + p 1 axis + p 2 pos + p 3 entityDimensions + m ()V createPortalBlocks b method_10363 + m ()Z isComplete c method_10362 + m ()I calculateWidth d method_30495 + m ()I calculateHeight e method_30496 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)V + p 1 level + p 2 bottomLeft + p 3 axis + m ()V +c net/minecraft/world/level/portal/package-info eqf net/minecraft/class_6147 +c net/minecraft/world/level/redstone/CollectingNeighborUpdater eqg net/minecraft/class_7159 + f Lorg/slf4j/Logger; LOGGER b field_37829 + f Lnet/minecraft/world/level/Level; level c field_37830 + f I maxChainedNeighborUpdates d field_38276 + f Ljava/util/ArrayDeque; stack e field_37831 + f Ljava/util/List; addedThisLayer f field_37832 + f I count g field_37833 + m ()V runUpdates a method_41702 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/redstone/CollectingNeighborUpdater$NeighborUpdates;)V addAndRun a method_41706 + p 1 pos + p 2 updates + m (Lnet/minecraft/world/level/Level;I)V + p 1 level + p 2 maxChainedNeighborUpdates + m ()V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$FullNeighborUpdate eqg$a net/minecraft/class_7159$class_7160 + f Lnet/minecraft/world/level/block/state/BlockState; state a comp_584 + f Lnet/minecraft/core/BlockPos; pos b comp_585 + f Lnet/minecraft/world/level/block/Block; block c comp_586 + f Lnet/minecraft/core/BlockPos; neighborPos d comp_587 + f Z movedByPiston e comp_588 + m ()Lnet/minecraft/world/level/block/state/BlockState; state a comp_584 + m ()Lnet/minecraft/core/BlockPos; pos b comp_585 + m ()Lnet/minecraft/world/level/block/Block; block c comp_586 + m ()Lnet/minecraft/core/BlockPos; neighborPos d comp_587 + m ()Z movedByPiston e comp_588 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$MultiNeighborUpdate eqg$b net/minecraft/class_7159$class_7161 + f Lnet/minecraft/core/BlockPos; sourcePos a field_37834 + f Lnet/minecraft/world/level/block/Block; sourceBlock b field_37835 + f Lnet/minecraft/core/Direction; skipDirection c field_37836 + f I idx d field_37837 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V + p 1 sourcePos + p 2 sourceBlock + p 3 skipDirection +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$NeighborUpdates eqg$c net/minecraft/class_7159$class_7162 + m (Lnet/minecraft/world/level/Level;)Z runNext a method_41707 + p 1 level +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$ShapeUpdate eqg$d net/minecraft/class_7159$class_7272 + f Lnet/minecraft/core/Direction; direction a comp_666 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_667 + f Lnet/minecraft/core/BlockPos; pos c comp_668 + f Lnet/minecraft/core/BlockPos; neighborPos d comp_669 + f I updateFlags e comp_670 + f I updateLimit f comp_1344 + m ()Lnet/minecraft/core/Direction; direction a comp_666 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_667 + m ()Lnet/minecraft/core/BlockPos; pos c comp_668 + m ()Lnet/minecraft/core/BlockPos; neighborPos d comp_669 + m ()I updateFlags e comp_670 + m ()I updateLimit f comp_1344 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$SimpleNeighborUpdate eqg$e net/minecraft/class_7159$class_7163 + f Lnet/minecraft/core/BlockPos; pos a comp_589 + f Lnet/minecraft/world/level/block/Block; block b comp_590 + f Lnet/minecraft/core/BlockPos; neighborPos c comp_591 + m ()Lnet/minecraft/core/BlockPos; pos a comp_589 + m ()Lnet/minecraft/world/level/block/Block; block b comp_590 + m ()Lnet/minecraft/core/BlockPos; neighborPos c comp_591 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/world/level/redstone/InstantNeighborUpdater eqh net/minecraft/class_7164 + f Lnet/minecraft/world/level/Level; level b field_37838 + m (Lnet/minecraft/world/level/Level;)V + p 1 level +c net/minecraft/world/level/redstone/NeighborUpdater eqi net/minecraft/class_7165 + f [Lnet/minecraft/core/Direction; UPDATE_ORDER a field_37839 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V executeUpdate a method_41708 + p 0 level + p 1 state + p 2 pos + p 3 neighborBlock + p 4 neighborPos + p 5 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V executeShapeUpdate a method_42393 + p 0 level + p 1 direction + p 2 state + p 3 pos + p 4 neighborPos + p 5 flags + p 6 recursionLevel + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_41709 a method_41709 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_41703 + p 1 state + p 2 pos + p 3 neighborBlock + p 4 neighborPos + p 5 movedByPiston + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V neighborChanged a method_41704 + p 1 pos + p 2 neighborBlock + p 3 neighborPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V updateNeighborsAtExceptFromFacing a method_41705 + p 1 pos + p 2 block + p 3 facing + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V shapeUpdate a method_42392 + p 1 direction + p 2 state + p 3 pos + p 4 neighborPos + p 5 flags + p 6 recursionLevel + m ()V +c net/minecraft/world/level/redstone/Redstone eqj net/minecraft/class_6148 + f I SIGNAL_MIN a field_31827 + f I SIGNAL_MAX b field_31828 + f I SIGNAL_NONE c field_31829 + m ()V +c net/minecraft/world/level/redstone/package-info eqk net/minecraft/class_6149 +c net/minecraft/world/level/saveddata/SavedData eql net/minecraft/class_18 + f Lorg/slf4j/Logger; LOGGER a field_17661 + f Z dirty b field_72 + m (Ljava/io/File;Lnet/minecraft/core/HolderLookup$Provider;)V save a method_17919 + p 1 file + p 2 registries + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_75 + p 1 tag + p 2 registries + m (Z)V setDirty a method_78 + c Sets the dirty state of this {@code SavedData}, whether it needs saving to disk. + p 1 dirty + m ()V setDirty c method_80 + c Marks this {@code SavedData} dirty, to be saved to disk when the level next saves. + m ()Z isDirty d method_79 + c Whether this {@code SavedData} needs saving to disk. + m ()V + m ()V +c net/minecraft/world/level/saveddata/SavedData$Factory eql$a net/minecraft/class_18$class_8645 + f Ljava/util/function/Supplier; constructor a comp_1590 + f Ljava/util/function/BiFunction; deserializer b comp_1591 + f Lnet/minecraft/util/datafix/DataFixTypes; type c comp_1592 + m ()Ljava/util/function/Supplier; constructor a comp_1590 + m ()Ljava/util/function/BiFunction; deserializer b comp_1591 + m ()Lnet/minecraft/util/datafix/DataFixTypes; type c comp_1592 + m (Ljava/util/function/Supplier;Ljava/util/function/BiFunction;Lnet/minecraft/util/datafix/DataFixTypes;)V +c net/minecraft/world/level/saveddata/maps/MapBanner eqm net/minecraft/class_17 + f Lcom/mojang/serialization/Codec; CODEC a field_48918 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_48919 + f Lnet/minecraft/core/BlockPos; pos c comp_2312 + f Lnet/minecraft/world/item/DyeColor; color d comp_2313 + f Ljava/util/Optional; name e comp_2314 + m ()Lnet/minecraft/core/Holder; getDecoration a method_72 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56812 a method_56812 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/saveddata/maps/MapBanner; fromWorld a method_73 + p 0 level + p 1 pos + m ()Ljava/lang/String; getId b method_71 + m ()Lnet/minecraft/core/BlockPos; pos c comp_2312 + m ()Lnet/minecraft/world/item/DyeColor; color d comp_2313 + m ()Ljava/util/Optional; name e comp_2314 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/DyeColor;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapBanner$1 eqm$1 net/minecraft/class_17$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_70 + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecoration eqn net/minecraft/class_20 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48920 + f Lnet/minecraft/core/Holder; type b comp_1842 + f B x c comp_1843 + f B y d comp_1844 + f B rot e comp_1845 + f Ljava/util/Optional; name f comp_1846 + m ()Lnet/minecraft/resources/ResourceLocation; getSpriteLocation a method_58451 + m ()Z renderOnFrame b method_94 + m ()Lnet/minecraft/core/Holder; type c comp_1842 + m ()B x d comp_1843 + m ()B y e comp_1844 + m ()B rot f comp_1845 + m ()Ljava/util/Optional; name g comp_1846 + m (Lnet/minecraft/core/Holder;BBBLjava/util/Optional;)V + p 1 type + p 2 x + p 3 y + p 4 rot + p 5 name + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecorationType eqo net/minecraft/class_9428 + f I NO_MAP_COLOR a field_50016 + f Lcom/mojang/serialization/Codec; CODEC b field_50017 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_50018 + f Lnet/minecraft/resources/ResourceLocation; assetId d comp_2514 + f Z showOnItemFrame e comp_2515 + f I mapColor f comp_2516 + f Z explorationMapElement g comp_2517 + f Z trackCount h comp_2518 + m ()Z hasMapColor a method_58452 + m ()Lnet/minecraft/resources/ResourceLocation; assetId b comp_2514 + m ()Z showOnItemFrame c comp_2515 + m ()I mapColor d comp_2516 + m ()Z explorationMapElement e comp_2517 + m ()Z trackCount f comp_2518 + m (Lnet/minecraft/resources/ResourceLocation;ZIZZ)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecorationTypes eqp net/minecraft/class_21 + f Lnet/minecraft/core/Holder; RED_X A field_110 + f Lnet/minecraft/core/Holder; DESERT_VILLAGE B field_46177 + f Lnet/minecraft/core/Holder; PLAINS_VILLAGE C field_46178 + f Lnet/minecraft/core/Holder; SAVANNA_VILLAGE D field_46179 + f Lnet/minecraft/core/Holder; SNOWY_VILLAGE E field_46180 + f Lnet/minecraft/core/Holder; TAIGA_VILLAGE F field_46181 + f Lnet/minecraft/core/Holder; JUNGLE_TEMPLE G field_46182 + f Lnet/minecraft/core/Holder; SWAMP_HUT H field_46183 + f Lnet/minecraft/core/Holder; TRIAL_CHAMBERS I field_50019 + f I COPPER_COLOR J field_50020 + f Lnet/minecraft/core/Holder; PLAYER a field_91 + f Lnet/minecraft/core/Holder; FRAME b field_95 + f Lnet/minecraft/core/Holder; RED_MARKER c field_89 + f Lnet/minecraft/core/Holder; BLUE_MARKER d field_83 + f Lnet/minecraft/core/Holder; TARGET_X e field_84 + f Lnet/minecraft/core/Holder; TARGET_POINT f field_85 + f Lnet/minecraft/core/Holder; PLAYER_OFF_MAP g field_86 + f Lnet/minecraft/core/Holder; PLAYER_OFF_LIMITS h field_87 + f Lnet/minecraft/core/Holder; WOODLAND_MANSION i field_88 + f Lnet/minecraft/core/Holder; OCEAN_MONUMENT j field_98 + f Lnet/minecraft/core/Holder; WHITE_BANNER k field_96 + f Lnet/minecraft/core/Holder; ORANGE_BANNER l field_92 + f Lnet/minecraft/core/Holder; MAGENTA_BANNER m field_97 + f Lnet/minecraft/core/Holder; LIGHT_BLUE_BANNER n field_90 + f Lnet/minecraft/core/Holder; YELLOW_BANNER o field_93 + f Lnet/minecraft/core/Holder; LIME_BANNER p field_94 + f Lnet/minecraft/core/Holder; PINK_BANNER q field_100 + f Lnet/minecraft/core/Holder; GRAY_BANNER r field_101 + f Lnet/minecraft/core/Holder; LIGHT_GRAY_BANNER s field_107 + f Lnet/minecraft/core/Holder; CYAN_BANNER t field_108 + f Lnet/minecraft/core/Holder; PURPLE_BANNER u field_104 + f Lnet/minecraft/core/Holder; BLUE_BANNER v field_105 + f Lnet/minecraft/core/Holder; BROWN_BANNER w field_106 + f Lnet/minecraft/core/Holder; GREEN_BANNER x field_102 + f Lnet/minecraft/core/Holder; RED_BANNER y field_99 + f Lnet/minecraft/core/Holder; BLACK_BANNER z field_103 + m (Ljava/lang/String;Ljava/lang/String;ZIZZ)Lnet/minecraft/core/Holder; register a method_58453 + p 0 name + p 1 assetId + p 2 showOnItemFrame + p 3 mapColor + p 4 explorationMapElement + p 5 trackCount + m (Ljava/lang/String;Ljava/lang/String;ZZ)Lnet/minecraft/core/Holder; register a method_58454 + p 0 name + p 1 assetId + p 2 showOnItemFrame + p 3 trackCount + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_58455 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/saveddata/maps/MapFrame eqq net/minecraft/class_19 + f Lnet/minecraft/core/BlockPos; pos a field_75 + f I rotation b field_74 + f I entityId c field_73 + m ()Lnet/minecraft/nbt/CompoundTag; save a method_84 + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/String; frameId a method_81 + p 0 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/saveddata/maps/MapFrame; load a method_87 + p 0 compoundTag + m ()Lnet/minecraft/core/BlockPos; getPos b method_86 + m ()I getRotation c method_83 + m ()I getEntityId d method_85 + m ()Ljava/lang/String; getId e method_82 + m (Lnet/minecraft/core/BlockPos;II)V + p 1 pos + p 2 rotation + p 3 entityId +c net/minecraft/world/level/saveddata/maps/MapId eqr net/minecraft/class_9209 + f Lcom/mojang/serialization/Codec; CODEC a field_49425 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48924 + f I id c comp_2315 + m ()Ljava/lang/String; key a method_56814 + m ()I id b comp_2315 + m (I)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapIndex eqs net/minecraft/class_3978 + f Ljava/lang/String; FILE_NAME a field_31830 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; usedAuxIds b field_17662 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52610 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; getFreeAuxValueForMap b method_17920 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/saveddata/maps/MapIndex; load b method_32360 + p 0 tag + p 1 registries + m ()V +c net/minecraft/world/level/saveddata/maps/MapItemSavedData eqt net/minecraft/class_22 + f I MAX_SCALE a field_31831 + f I TRACKED_DECORATION_LIMIT b field_33991 + f I centerX c field_116 + f I centerZ d field_115 + f Lnet/minecraft/resources/ResourceKey; dimension e field_118 + f B scale f field_119 + f [B colors g field_122 + f Z locked h field_17403 + f Lorg/slf4j/Logger; LOGGER i field_25019 + f I MAP_SIZE j field_31832 + f I HALF_MAP_SIZE k field_31833 + f Ljava/lang/String; FRAME_PREFIX l field_52316 + f Z trackingPosition m field_114 + f Z unlimitedTracking n field_113 + f Ljava/util/List; carriedBy o field_112 + f Ljava/util/Map; carriedByPlayers p field_120 + f Ljava/util/Map; bannerMarkers q field_123 + f Ljava/util/Map; decorations r field_117 + f Ljava/util/Map; frameMarkers s field_121 + f I trackedDecorationCount t field_33992 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52611 + m (BZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; createForClient a method_32362 + p 0 scale + p 1 locked + p 2 dimension + m (DDBZZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; createFresh a method_32363 + p 0 x + p 2 z + p 4 scale + p 5 trackingPosition + p 6 unlimitedTracking + p 7 dimension + m (I)Z isTrackedCountOverLimit a method_37343 + p 1 trackedCount + m (II)V setColorsDirty a method_103 + p 1 x + p 2 z + m (IIB)Z updateColor a method_32365 + p 1 x + p 2 z + p 3 color + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$HoldingPlayer; getHoldingPlayer a method_101 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V tickCarriedBy a method_102 + c Adds the player passed to the list of visible players and checks to see which players are visible + p 1 player + p 2 mapStack + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;)V method_57626 a method_57626 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/function/Predicate; mapMatcher a method_55784 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/item/ItemStack;)Z method_55785 a method_55785 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/core/Holder;)V addTargetDecoration a method_110 + p 0 stack + p 1 pos + p 2 type + p 3 mapDecorationType + m (Lnet/minecraft/world/level/BlockGetter;II)V checkBanners a method_109 + p 1 reader + p 2 x + p 3 z + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z toggleBanner a method_108 + p 1 accessor + p 2 pos + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/network/protocol/Packet; getUpdatePacket a method_100 + p 1 mapId + p 2 player + m (Ljava/lang/String;)V removeDecoration a method_32368 + p 1 identifier + m (Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;Lnet/minecraft/world/item/component/MapDecorations;)Lnet/minecraft/world/item/component/MapDecorations; method_57627 a method_57627 + m (Ljava/util/List;)V addClientSideDecorations a method_32369 + p 1 decorations + m (Lnet/minecraft/core/BlockPos;I)V removedFromFrame a method_104 + p 1 pos + p 2 entityId + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/LevelAccessor;Ljava/lang/String;DDDLnet/minecraft/network/chat/Component;)V addDecoration a method_107 + p 1 decorationType + p 2 level + p 3 id + p 4 x + p 6 z + p 8 yRot + p 10 displayName + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/IllegalArgumentException; method_29009 a method_29009 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29008 a method_29008 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; locked b method_32361 + m (I)Ljava/lang/String; getFrameKey b method_61169 + p 0 entityId + m (IIB)V setColor b method_32370 + p 1 x + p 2 z + p 3 color + m (Ljava/lang/String;)V method_56815 b method_56815 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; load b method_32371 + p 0 tag + p 1 levelRegistry + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; scaled e method_32364 + m ()Ljava/util/Collection; getBanners f method_35503 + m ()Z isExplorationMap g method_32372 + m ()Ljava/lang/Iterable; getDecorations h method_32373 + m ()V setDecorationsDirty i method_32374 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; method_52612 j method_52612 + m (IIBZZZLnet/minecraft/resources/ResourceKey;)V + p 1 x + p 2 z + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + p 6 locked + p 7 dimension + m ()V +c net/minecraft/world/level/saveddata/maps/MapItemSavedData$HoldingPlayer eqt$a net/minecraft/class_22$class_23 + f Lnet/minecraft/world/entity/player/Player; player a field_125 + f I step b field_131 + f Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; field_132 c field_132 + f Z dirtyData d field_130 + f I minDirtyX e field_129 + c The lowest dirty x value + f I minDirtyY f field_128 + c The lowest dirty z value + f I maxDirtyX g field_127 + c The highest dirty x value + f I maxDirtyY h field_126 + c The highest dirty z value + f Z dirtyDecorations i field_27891 + f I tick j field_124 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch; createPatch a method_32375 + m (II)V markColorsDirty a method_111 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/network/protocol/Packet; nextUpdatePacket a method_112 + p 1 mapId + m ()V markDecorationsDirty b method_32379 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Lnet/minecraft/world/entity/player/Player;)V + p 2 player +c net/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch eqt$b net/minecraft/class_22$class_5637 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48925 + f I startX b comp_2316 + f I startY c comp_2317 + f I width d comp_2318 + f I height e comp_2319 + f [B mapColors f comp_2320 + m ()I startX a comp_2316 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V applyToMap a method_32380 + p 1 savedData + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; read a method_56816 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V write a method_56817 + p 0 buffer + p 1 mapPatch + m ()I startY b comp_2317 + m ()I width c comp_2318 + m ()I height d comp_2319 + m ()[B mapColors e comp_2320 + m (IIII[B)V + p 1 startX + p 2 startY + p 3 width + p 4 height + p 5 mapColors + m ()V +c net/minecraft/world/level/saveddata/maps/package-info equ net/minecraft/class_6150 +c net/minecraft/world/level/saveddata/package-info eqv net/minecraft/class_6151 +c net/minecraft/world/level/storage/CommandStorage eqw net/minecraft/class_4565 + f Ljava/lang/String; ID_PREFIX a field_31834 + f Ljava/util/Map; namespaces b field_20747 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; storage c field_20748 + m ()Ljava/util/stream/Stream; keys a method_22542 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/nbt/CompoundTag; get a method_22546 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/nbt/CompoundTag;)V set a method_22547 + p 1 id + p 2 nbt + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/CommandStorage$Container; newStorage a method_22544 + p 1 namespace + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/storage/CommandStorage$Container; method_52613 a method_52613 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_22545 a method_22545 + m (Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory b method_52614 + p 1 namespace + m (Ljava/lang/String;)Ljava/lang/String; createId c method_22543 + p 0 namespace + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/CommandStorage$Container; method_52615 d method_52615 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V + p 1 storage +c net/minecraft/world/level/storage/CommandStorage$Container eqw$a net/minecraft/class_4565$class_4566 + f Ljava/lang/String; TAG_CONTENTS a field_31835 + f Ljava/util/Map; storage b field_20749 + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; get a method_22550 + p 1 id + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; method_22551 a method_22551 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V put a method_22552 + p 1 id + p 2 nbt + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/storage/CommandStorage$Container; load a method_32383 + p 1 compoundTag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_22553 a method_22553 + m (Ljava/lang/String;)Ljava/util/stream/Stream; getKeys b method_22554 + p 1 namespace + m ()V +c net/minecraft/world/level/storage/DataVersion eqx net/minecraft/class_6595 + f Ljava/lang/String; MAIN_SERIES a field_34768 + f I version b field_34769 + f Ljava/lang/String; series c field_34770 + m ()Z isSideSeries a method_38490 + m (Lnet/minecraft/world/level/storage/DataVersion;)Z isCompatible a method_38493 + p 1 dataVersion + m ()Ljava/lang/String; getSeries b method_38492 + m ()I getVersion c method_38494 + m (I)V + p 1 version + m (ILjava/lang/String;)V + p 1 version + p 2 series + m ()V +c net/minecraft/world/level/storage/DerivedLevelData eqy net/minecraft/class_27 + f Lnet/minecraft/world/level/storage/WorldData; worldData a field_24179 + f Lnet/minecraft/world/level/storage/ServerLevelData; wrapped b field_139 + m (Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/world/level/storage/ServerLevelData;)V + p 1 worldData + p 2 wrapped +c net/minecraft/world/level/storage/DimensionDataStorage eqz net/minecraft/class_26 + f Lorg/slf4j/Logger; LOGGER a field_136 + f Ljava/util/Map; cache b field_134 + f Lcom/mojang/datafixers/DataFixer; fixerUpper c field_17663 + f Lnet/minecraft/core/HolderLookup$Provider; registries d field_48926 + f Ljava/io/File; dataFolder e field_17664 + m ()V save a method_125 + m (Lnet/minecraft/world/level/saveddata/SavedData$Factory;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; computeIfAbsent a method_17924 + p 1 factory + p 2 name + m (Ljava/io/PushbackInputStream;)Z isGzip a method_17921 + p 1 inputStream + m (Ljava/lang/String;)Ljava/io/File; getDataFile a method_17922 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/util/datafix/DataFixTypes;I)Lnet/minecraft/nbt/CompoundTag; readTagFromDisk a method_17923 + p 1 filename + p 2 dataFixType + p 3 version + m (Ljava/lang/String;Lnet/minecraft/world/level/saveddata/SavedData;)V set a method_123 + p 1 name + p 2 savedData + m (Ljava/util/function/BiFunction;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; readSavedData a method_120 + p 1 reader + p 2 dataFixType + p 3 filename + m (Lnet/minecraft/world/level/saveddata/SavedData$Factory;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; get b method_20786 + p 1 factory + p 2 name + m (Ljava/lang/String;Lnet/minecraft/world/level/saveddata/SavedData;)V method_32384 b method_32384 + m (Ljava/io/File;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 dataFolder + p 2 fixerUpper + p 3 registries + m ()V +c net/minecraft/world/level/storage/FileNameDateFormatter era net/minecraft/class_9078 + m ()Ljava/time/format/DateTimeFormatter; create a method_55786 + m ()V +c net/minecraft/world/level/storage/LevelData erb net/minecraft/class_5217 + m ()Lnet/minecraft/core/BlockPos; getSpawnPos a method_56126 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)Ljava/lang/String; method_27411 a method_27411 + m (Lnet/minecraft/CrashReportCategory;Lnet/minecraft/world/level/LevelHeightAccessor;)V fillCrashReportCategory a method_151 + p 1 crashReportCategory + p 2 level + m ()F getSpawnAngle b method_30656 + m (Z)V setRaining b method_157 + c Sets whether it is raining or not. + p 1 raining + m ()J getGameTime c method_188 + m ()J getDayTime d method_217 + c Get current world time + m ()Ljava/lang/String; method_27410 e method_27410 + m ()Z isThundering g method_203 + c Returns {@code true} if it is thundering, {@code false} otherwise. + m ()Z isRaining i method_156 + c Returns {@code true} if it is raining, {@code false} otherwise. + m ()Z isHardcore l method_152 + c Returns {@code true} if hardcore mode is enabled, otherwise {@code false}. + m ()Lnet/minecraft/world/level/GameRules; getGameRules o method_146 + c Gets the GameRules class Instance. + m ()Lnet/minecraft/world/Difficulty; getDifficulty q method_207 + m ()Z isDifficultyLocked r method_197 +c net/minecraft/world/level/storage/LevelDataAndDimensions erc net/minecraft/class_8895 + f Lnet/minecraft/world/level/storage/WorldData; worldData a comp_2008 + f Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; dimensions b comp_2009 + m ()Lnet/minecraft/world/level/storage/WorldData; worldData a comp_2008 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; dimensions b comp_2009 + m (Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete;)V +c net/minecraft/world/level/storage/LevelResource erd net/minecraft/class_5218 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_ADVANCEMENTS_DIR a field_24180 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_STATS_DIR b field_24181 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_DATA_DIR c field_24182 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_OLD_DATA_DIR d field_24183 + f Lnet/minecraft/world/level/storage/LevelResource; LEVEL_DATA_FILE e field_24184 + f Lnet/minecraft/world/level/storage/LevelResource; OLD_LEVEL_DATA_FILE f field_38978 + f Lnet/minecraft/world/level/storage/LevelResource; ICON_FILE g field_38979 + f Lnet/minecraft/world/level/storage/LevelResource; LOCK_FILE h field_38980 + f Lnet/minecraft/world/level/storage/LevelResource; GENERATED_DIR i field_24185 + f Lnet/minecraft/world/level/storage/LevelResource; DATAPACK_DIR j field_24186 + f Lnet/minecraft/world/level/storage/LevelResource; MAP_RESOURCE_FILE k field_24187 + f Lnet/minecraft/world/level/storage/LevelResource; ROOT l field_24188 + f Ljava/lang/String; id m field_24189 + m ()Ljava/lang/String; getId a method_27423 + m (Ljava/lang/String;)V + p 1 id + m ()V +c net/minecraft/world/level/storage/LevelStorageException ere net/minecraft/class_33 + f Lnet/minecraft/network/chat/Component; messageComponent a field_38981 + m ()Lnet/minecraft/network/chat/Component; getMessageComponent a method_43416 + m (Lnet/minecraft/network/chat/Component;)V + p 1 messageComponent +c net/minecraft/world/level/storage/LevelStorageSource erf net/minecraft/class_32 + f Ljava/lang/String; ALLOWED_SYMLINKS_CONFIG_NAME a field_44950 + f Lorg/slf4j/Logger; LOGGER b field_17665 + f Ljava/time/format/DateTimeFormatter; FORMATTER c field_200 + f Ljava/lang/String; TAG_DATA d field_36348 + f Ljava/nio/file/PathMatcher; NO_SYMLINKS_ALLOWED e field_44951 + f I UNCOMPRESSED_NBT_QUOTA f field_46830 + f I DISK_SPACE_WARNING_THRESHOLD g field_49426 + f Ljava/nio/file/Path; baseDir h field_17666 + f Ljava/nio/file/Path; backupDir i field_17667 + f Lcom/mojang/datafixers/DataFixer; fixerUpper j field_17668 + f Lnet/minecraft/world/level/validation/DirectoryValidator; worldDirValidator k field_44952 + m ()Ljava/lang/String; getName a method_35504 + m (Lnet/minecraft/resources/ResourceLocation;)V method_45551 a method_45551 + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59826 a method_59826 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/WorldDataConfiguration; readDataConfig a method_29580 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/packs/repository/PackRepository;Z)Lnet/minecraft/server/WorldLoader$PackConfig; getPackConfig a method_54522 + p 0 dynamic + p 1 packRepository + p 2 safeMode + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/WorldDataConfiguration;Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;)Lnet/minecraft/world/level/storage/LevelDataAndDimensions; getLevelDataAndDimensions a method_54523 + p 0 dynamic + p 1 dataConfiguration + p 2 levelStemRegistry + p 3 registry + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;Z)Lnet/minecraft/world/level/storage/LevelSummary; makeLevelSummary a method_54524 + p 1 dynamic + p 2 levelDirectory + p 3 locked + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelCandidates;)Ljava/util/concurrent/CompletableFuture; loadLevelSummaries a method_43417 + p 1 candidates + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)J getFileModificationTime a method_54526 + p 0 levelDirectory + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;Z)Lnet/minecraft/world/level/storage/LevelSummary; readLevelSummary a method_54527 + p 1 levelDirectory + p 2 locked + m (Ljava/lang/String;)Z isNewLevelIdAcceptable a method_240 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/world/level/validation/DirectoryValidator; parseValidator a method_52235 + p 0 validator + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)Lcom/mojang/serialization/Dynamic; readLevelDataTagFixed a method_54528 + p 0 levelPath + p 1 dataFixer + m (Ljava/util/List;)Ljava/util/List; method_43495 a method_43495 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource$LevelCandidates; findLevelCandidates b method_235 + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59827 b method_59827 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/flag/FeatureFlagSet; parseFeatureFlagsFromSummary b method_45552 + p 0 dataDynamic + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)Lnet/minecraft/world/level/storage/LevelSummary; method_43418 b method_43418 + m (Ljava/lang/String;)Z levelExists b method_230 + c Return whether the given world can be loaded. + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/world/level/storage/LevelStorageSource; createDefault b method_26999 + p 0 savesDir + m ()Ljava/nio/file/Path; getBaseDir c method_19636 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_45553 c method_45553 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)Z method_43419 c method_43419 + m (Ljava/lang/String;)Ljava/nio/file/Path; getLevelPath c method_52238 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/CompoundTag; readLevelDataTagRaw c method_54529 + p 0 levelPath + m ()Ljava/nio/file/Path; getBackupPath d method_236 + c Gets the folder where backups are stored + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; validateAndCreateAccess d method_52236 + p 1 saveName + m (Ljava/nio/file/Path;)Ljava/time/Instant; getFileModificationTime d method_54530 + p 0 dataFilePath + m ()Lnet/minecraft/world/level/validation/DirectoryValidator; getWorldDirValidator e method_52237 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; createAccess e method_27002 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/Tag; readLightweightData e method_40035 + p 0 file + m ()I getStorageVersion f method_17931 + m (Ljava/nio/file/Path;)Z method_43420 f method_43420 + m (Ljava/nio/file/Path;)Z method_52616 g method_52616 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;Lcom/mojang/datafixers/DataFixer;)V + p 1 baseDir + p 2 backupDir + p 3 worldDirValidator + p 4 fixerUpper + m ()V +c net/minecraft/world/level/storage/LevelStorageSource$LevelCandidates erf$a net/minecraft/class_32$class_7410 + f Ljava/util/List; levels a comp_731 + m ()Z isEmpty a method_43421 + m ()Ljava/util/List; levels b comp_731 + m (Ljava/util/List;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelDirectory erf$b net/minecraft/class_32$class_7411 + f Ljava/nio/file/Path; path a comp_732 + m ()Ljava/lang/String; directoryName a method_43422 + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; resourcePath a method_43423 + p 1 resource + m (Ljava/time/LocalDateTime;)Ljava/nio/file/Path; corruptedDataFile a method_43424 + p 1 dateTime + m ()Ljava/nio/file/Path; dataFile b method_43425 + m (Ljava/time/LocalDateTime;)Ljava/nio/file/Path; rawDataFile b method_54531 + p 1 dateTime + m ()Ljava/nio/file/Path; oldDataFile c method_43426 + m ()Ljava/nio/file/Path; iconFile d method_43427 + m ()Ljava/nio/file/Path; lockFile e method_43428 + m ()Ljava/nio/file/Path; path f comp_732 + m (Ljava/nio/file/Path;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess erf$c net/minecraft/class_32$class_5143 + f Lnet/minecraft/world/level/storage/LevelStorageSource; field_23766 a field_23766 + f Lnet/minecraft/util/DirectoryLock; lock b field_23767 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; levelDirectory c field_23768 + f Ljava/lang/String; levelId d field_23769 + f Ljava/util/Map; resources e field_24190 + m ()J estimateDiskSpace a method_57628 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/nio/file/Path; getDimensionPath a method_27424 + p 1 dimensionPath + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/storage/LevelSummary; getSummary a method_29584 + p 1 dynamic + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; getLevelPath a method_27010 + p 1 folderName + m (Ljava/lang/String;)V renameLevel a method_27008 + p 1 saveName + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_54534 a method_54534 + m (Ljava/util/function/Consumer;)V modifyLevelDataWithoutDatafix a method_54537 + p 1 modifier + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V saveDataTag a method_27425 + p 1 registries + p 2 serverConfiguration + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/nbt/CompoundTag;)V saveDataTag a method_27426 + p 1 registries + p 2 serverConfiguration + p 3 hostPlayerNBT + m (Lnet/minecraft/nbt/CompoundTag;)V saveLevelData a method_54538 + p 1 tag + m (Z)Ljava/time/Instant; getFileModificationTime a method_54539 + p 1 useFallback + m ()Z checkForLowDiskSpace b method_57629 + m (Ljava/lang/String;)V renameAndDropPlayer b method_54540 + p 1 saveName + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_54541 b method_54541 + m (Z)Lcom/mojang/serialization/Dynamic; getDataTag b method_27013 + p 1 useFallback + m ()V safeClose c method_54532 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource; parent d method_52617 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; getLevelDirectory e method_54543 + m ()Ljava/lang/String; getLevelId f method_27005 + m ()Lnet/minecraft/world/level/storage/PlayerDataStorage; createPlayerStorage g method_27427 + m ()Lcom/mojang/serialization/Dynamic; getDataTag h method_54545 + m ()Lcom/mojang/serialization/Dynamic; getDataTagFallback i method_54546 + m ()Ljava/util/Optional; getIconFile j method_27014 + m ()V deleteLevel k method_27015 + m ()J makeWorldBackup l method_27016 + m ()Z hasWorldData m method_54547 + m ()Z restoreLevelDataFromOld n method_54548 + m ()V checkLock o method_27017 + m (Lnet/minecraft/world/level/storage/LevelStorageSource;Ljava/lang/String;Ljava/nio/file/Path;)V + p 2 levelId + p 3 levelDir +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$1 erf$c$1 net/minecraft/class_32$class_5143$1 + f Ljava/nio/file/Path; val$lockPath a field_23770 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; field_23771 b field_23771 + m (Ljava/nio/file/Path;Ljava/io/IOException;)Ljava/nio/file/FileVisitResult; postVisitDirectory a method_27018 + p 1 dir + p 2 exception + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_27019 + p 1 file + p 2 attrs + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$2 erf$c$2 net/minecraft/class_32$class_5143$2 + f Ljava/nio/file/Path; val$rootPath a field_204 + f Ljava/util/zip/ZipOutputStream; val$stream b field_201 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; field_203 c field_203 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_246 + p 1 file + p 2 attrs + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;Ljava/util/zip/ZipOutputStream;)V +c net/minecraft/world/level/storage/LevelSummary erg net/minecraft/class_34 + f Lnet/minecraft/network/chat/Component; PLAY_WORLD a field_46832 + f Lnet/minecraft/world/level/LevelSettings; settings b field_25022 + f Lnet/minecraft/world/level/storage/LevelVersion; levelVersion c field_25023 + f Ljava/lang/String; levelId d field_205 + f Z requiresManualConversion e field_209 + f Z locked f field_23772 + f Z experimental g field_40371 + f Ljava/nio/file/Path; icon h field_23773 + f Lnet/minecraft/network/chat/Component; info i field_24191 + m ()Ljava/lang/String; getLevelId a method_248 + c Returns the file name. + m (Lnet/minecraft/world/level/storage/LevelSummary;)I compareTo a method_251 + p 1 other + m ()Ljava/lang/String; getLevelName b method_252 + c Return the display name of the save. + m ()Ljava/nio/file/Path; getIcon c method_27020 + m ()Z requiresManualConversion d method_255 + m ()Z isExperimental e method_45554 + m ()J getLastPlayed f method_249 + m ()Lnet/minecraft/world/level/LevelSettings; getSettings g method_35505 + m ()Lnet/minecraft/world/level/GameType; getGameMode h method_247 + c Gets the EnumGameType. + m ()Z isHardcore i method_257 + m ()Z hasCommands j method_259 + m ()Lnet/minecraft/network/chat/MutableComponent; getWorldVersionName k method_258 + m ()Lnet/minecraft/world/level/storage/LevelVersion; levelVersion l method_29586 + m ()Z shouldBackup m method_54549 + m ()Z isDowngrade n method_54550 + m ()Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; backupStatus o method_33405 + m ()Z isLocked p method_27021 + m ()Z isDisabled q method_33784 + m ()Z isCompatible r method_38496 + m ()Lnet/minecraft/network/chat/Component; getInfo s method_27429 + m ()Lnet/minecraft/network/chat/Component; primaryActionMessage t method_54551 + m ()Z primaryActionActive u method_54552 + m ()Z canUpload v method_56127 + m ()Z canEdit w method_54553 + m ()Z canRecreate x method_54554 + m ()Z canDelete y method_54555 + m ()Lnet/minecraft/network/chat/Component; createInfo z method_27430 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/storage/LevelVersion;Ljava/lang/String;ZZZLjava/nio/file/Path;)V + p 1 settings + p 2 levelVersion + p 3 levelId + p 4 requiresManualConversion + p 5 locked + p 6 experimental + p 7 icon + m ()V +c net/minecraft/world/level/storage/LevelSummary$BackupStatus erg$a net/minecraft/class_34$class_5781 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; NONE a field_28437 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; DOWNGRADE b field_28438 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; UPGRADE_TO_SNAPSHOT c field_28439 + f Z shouldBackup d field_28440 + f Z severe e field_28441 + f Ljava/lang/String; translationKey f field_28442 + f [Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; $VALUES g field_28443 + m ()Z shouldBackup a method_33406 + m ()Z isSevere b method_33407 + m ()Ljava/lang/String; getTranslationKey c method_33408 + m ()[Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; $values d method_36792 + m (Ljava/lang/String;IZZLjava/lang/String;)V + p 3 shouldBackup + p 4 severe + p 5 translationKey + m ()V +c net/minecraft/world/level/storage/LevelSummary$CorruptedLevelSummary erg$b net/minecraft/class_34$class_8896 + f Lnet/minecraft/network/chat/Component; INFO b field_46833 + f Lnet/minecraft/network/chat/Component; RECOVER c field_46834 + f J lastPlayed d field_46835 + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_54556 a method_54556 + m (Ljava/lang/String;Ljava/nio/file/Path;J)V + p 1 levelId + p 2 icon + p 3 lastPlayed + m ()V +c net/minecraft/world/level/storage/LevelSummary$SymlinkLevelSummary erg$c net/minecraft/class_34$class_8578 + f Lnet/minecraft/network/chat/Component; MORE_INFO_BUTTON b field_46836 + f Lnet/minecraft/network/chat/Component; INFO c field_46837 + m (Ljava/lang/String;Ljava/nio/file/Path;)V + p 1 levelId + p 2 icon + m ()V +c net/minecraft/world/level/storage/LevelVersion erh net/minecraft/class_5315 + f I levelDataVersion a field_25024 + f J lastPlayed b field_25025 + f Ljava/lang/String; minecraftVersionName c field_25026 + f Lnet/minecraft/world/level/storage/DataVersion; minecraftVersion d field_25027 + f Z snapshot e field_25028 + m ()I levelDataVersion a method_29022 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/storage/LevelVersion; parse a method_29023 + p 0 nbt + m ()J lastPlayed b method_29024 + m ()Ljava/lang/String; minecraftVersionName c method_29025 + m ()Lnet/minecraft/world/level/storage/DataVersion; minecraftVersion d method_29026 + m ()Z snapshot e method_29027 + m (IJLjava/lang/String;ILjava/lang/String;Z)V + p 1 levelDataVersion + p 2 lastPlayed + p 4 minecraftVersionName + p 5 minecraftVersion + p 6 series + p 7 snapshot +c net/minecraft/world/level/storage/PlayerDataStorage eri net/minecraft/class_29 + f Lcom/mojang/datafixers/DataFixer; fixerUpper a field_148 + f Lorg/slf4j/Logger; LOGGER b field_149 + f Ljava/io/File; playerDir c field_144 + f Ljava/time/format/DateTimeFormatter; FORMATTER d field_47840 + m (Lnet/minecraft/world/entity/player/Player;)V save a method_262 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;)V backup a method_55787 + p 1 player + p 2 suffix + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; method_55788 a method_55788 + m (Lnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; load b method_55789 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;)Ljava/util/Optional; load b method_261 + p 1 player + p 2 suffix + m (Lnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; method_55790 c method_55790 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;)V + p 1 levelStorageAccess + p 2 fixerUpper + m ()V +c net/minecraft/world/level/storage/PrimaryLevelData erj net/minecraft/class_31 + f I wanderingTraderSpawnDelay A field_17736 + f I wanderingTraderSpawnChance B field_17737 + f Ljava/util/UUID; wanderingTraderId C field_17738 + f Ljava/util/Set; knownServerBrands D field_21837 + f Z wasModded E field_21838 + f Ljava/util/Set; removedFeatureFlags F field_43352 + f Lnet/minecraft/world/level/timers/TimerQueue; scheduledEvents G field_191 + f Ljava/lang/String; LEVEL_NAME a field_46838 + f Ljava/lang/String; PLAYER b field_36349 + f Ljava/lang/String; WORLD_GEN_SETTINGS c field_31843 + f Lorg/slf4j/Logger; LOGGER f field_25029 + f Lnet/minecraft/world/level/LevelSettings; settings g field_25030 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions h field_25425 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty i field_40372 + f Lcom/mojang/serialization/Lifecycle; worldGenSettingsLifecycle j field_25426 + f Lnet/minecraft/core/BlockPos; spawnPos k field_48380 + f F spawnAngle l field_26367 + f J gameTime m field_189 + f J dayTime n field_198 + f Lnet/minecraft/nbt/CompoundTag; loadedPlayerTag o field_170 + f I version p field_158 + f I clearWeatherTime q field_176 + f Z raining r field_190 + f I rainTime s field_192 + f Z thundering t field_168 + f I thunderTime u field_173 + f Z initialized v field_185 + f Z difficultyLocked w field_157 + f Lnet/minecraft/world/level/border/WorldBorder$Settings; worldBorder x field_24193 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; endDragonFightData y field_25031 + f Lnet/minecraft/nbt/CompoundTag; customBossEvents z field_156 + m (Lcom/mojang/serialization/DataResult$Error;)V method_45557 a method_45557 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_29032 a method_29032 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lnet/minecraft/world/level/levelgen/WorldOptions;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/world/level/storage/PrimaryLevelData; parse a method_29029 + p 0 tag + p 1 levelSettings + p 2 specialWorldProperty + p 3 worldOptions + p 4 worldGenSettingsLifecycle + m (Ljava/util/Set;)Lnet/minecraft/nbt/ListTag; stringCollectionToTag a method_49902 + p 0 stringCollection + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/CompoundTag;)V setTagData a method_158 + p 1 registry + p 2 nbt + p 3 playerNBT + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_45558 a method_45558 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_49901 b method_49901 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29030 b method_29030 + m (Lnet/minecraft/nbt/CompoundTag;ZLnet/minecraft/core/BlockPos;FJJIIIZIZZZLnet/minecraft/world/level/border/WorldBorder$Settings;IILjava/util/UUID;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/world/level/timers/TimerQueue;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lcom/mojang/serialization/Lifecycle;)V + p 1 loadedPlayerTag + p 2 wasModded + p 3 spawnPos + p 4 spawnAngle + p 5 gameTime + p 7 dayTime + p 9 version + p 10 clearWeatherTime + p 11 rainTime + p 12 raining + p 13 thunderTime + p 14 thundering + p 15 initialized + p 16 difficultyLocked + p 17 worldBorder + p 18 wanderingTraderSpawnDelay + p 19 wanderingTraderSpawnChance + p 20 wanderingTraderId + p 21 knownServerBrands + p 22 removedFeatureFlags + p 23 scheduledEvents + p 24 customBossEvents + p 25 endDragonFightData + p 26 settings + p 27 worldOptions + p 28 specialWorldProperty + p 29 worldGenSettingsLifecycle + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lcom/mojang/serialization/Lifecycle;)V + p 1 settings + p 2 worldOptions + p 3 specialWorldProperty + p 4 worldGenSettingsLifecycle + m ()V +c net/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty erj$a net/minecraft/class_31$class_7729 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; NONE a field_40373 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; FLAT b field_40374 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; DEBUG c field_40375 + f [Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; $VALUES d field_40376 + m ()[Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; $values a method_45559 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/storage/ServerLevelData erk net/minecraft/class_5268 + m (I)V setClearWeatherTime a method_167 + p 1 time + m (J)V setGameTime a method_29034 + p 1 time + m (Lnet/minecraft/world/level/GameType;)V setGameType a method_193 + p 1 type + m (Lnet/minecraft/world/level/border/WorldBorder$Settings;)V setWorldBorder a method_27415 + p 1 serializer + m (Ljava/util/UUID;)V setWanderingTraderId a method_18040 + p 1 id + m (Z)V setThundering a method_147 + c Sets whether it is thundering or not. + p 1 thundering + m (I)V setThunderTime b method_173 + c Defines the number of ticks until next thunderbolt. + p 1 time + m (J)V setDayTime b method_29035 + c Set current world time + p 1 time + m (I)V setRainTime c method_164 + c Sets the number of ticks until rain. + p 1 time + m (Z)V setInitialized c method_223 + c Sets the initialization status of the World. + p 1 initialized + m (I)V setWanderingTraderSpawnDelay d method_18041 + p 1 delay + m ()Ljava/lang/String; getLevelName e method_150 + c Get current world name + m (I)V setWanderingTraderSpawnChance e method_18042 + p 1 chance + m ()I getClearWeatherTime f method_155 + m ()I getThunderTime h method_145 + c Returns the number of ticks until next thunderbolt. + m ()I getRainTime j method_190 + c Return the number of ticks until rain. + m ()Lnet/minecraft/world/level/GameType; getGameType k method_210 + c Gets the GameType. + m ()Z isAllowCommands m method_194 + m ()Z isInitialized n method_222 + c Returns {@code true} if the World is initialized. + m ()Lnet/minecraft/world/level/border/WorldBorder$Settings; getWorldBorder p method_27422 + m ()Lnet/minecraft/world/level/timers/TimerQueue; getScheduledEvents s method_143 + m ()I getWanderingTraderSpawnDelay t method_18038 + m ()I getWanderingTraderSpawnChance u method_18039 + m ()Ljava/util/UUID; getWanderingTraderId v method_35506 + m ()Ljava/lang/String; method_27856 w method_27856 + m ()Ljava/lang/String; method_27858 x method_27858 +c net/minecraft/world/level/storage/WorldData erl net/minecraft/class_5219 + f I ANVIL_VERSION_ID d field_31844 + f I MCREGION_VERSION_ID e field_31845 + m ()Z isDebugWorld A method_45556 + m ()Lcom/mojang/serialization/Lifecycle; worldGenSettingsLifecycle B method_29588 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; endDragonFightData C method_29036 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; getDataConfiguration D method_29589 + m ()Lnet/minecraft/nbt/CompoundTag; getCustomBossEvents E method_228 + m ()Z wasModded F method_27431 + m ()Ljava/util/Set; getKnownServerBrands G method_27432 + m ()Ljava/util/Set; getRemovedFeatureFlags H method_49900 + m ()Lnet/minecraft/world/level/storage/ServerLevelData; overworldData I method_27859 + m ()Lnet/minecraft/world/level/LevelSettings; getLevelSettings J method_27433 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures K method_45560 + m ()Ljava/lang/String; method_27436 a method_27436 + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_208 + p 1 difficulty + m (Lnet/minecraft/world/level/GameType;)V setGameType a method_193 + p 1 type + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V setDataConfiguration a method_29590 + p 1 dataConfiguration + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data;)V setEndDragonFightData a method_29037 + p 1 endDragonFightData + m (Ljava/lang/String;Z)V setModdedInfo a method_24285 + p 1 name + p 2 isModded + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; createTag a method_163 + p 1 registries + p 2 hostPlayerNBT + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_151 + p 1 category + m (Lnet/minecraft/nbt/CompoundTag;)V setCustomBossEvents a method_221 + p 1 nbt + m ()Ljava/lang/String; method_27438 b method_27438 + m ()Ljava/lang/String; method_49903 c method_49903 + m ()Ljava/lang/String; method_27439 d method_27439 + m (Z)V setDifficultyLocked d method_186 + p 1 locked + m ()Ljava/lang/String; getLevelName e method_150 + c Get current world name + m (I)Ljava/lang/String; getStorageVersionName f method_27440 + p 1 storageVersionId + m ()Lnet/minecraft/world/level/GameType; getGameType k method_210 + c Gets the GameType. + m ()Z isHardcore l method_152 + c Returns {@code true} if hardcore mode is enabled, otherwise {@code false}. + m ()Z isAllowCommands m method_194 + m ()Lnet/minecraft/world/level/GameRules; getGameRules o method_146 + c Gets the GameRules class Instance. + m ()Lnet/minecraft/world/Difficulty; getDifficulty q method_207 + m ()Z isDifficultyLocked r method_197 + m ()Lnet/minecraft/nbt/CompoundTag; getLoadedPlayerTag w method_226 + m ()I getVersion x method_168 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; worldGenOptions y method_28057 + m ()Z isFlatWorld z method_45555 +c net/minecraft/world/level/storage/WritableLevelData erm net/minecraft/class_5269 + m (Lnet/minecraft/core/BlockPos;F)V setSpawn a method_187 + p 1 spawnPoint + p 2 spawnAngle +c net/minecraft/world/level/storage/loot/BuiltInLootTables ern net/minecraft/class_39 + c Stores IDs for built in loot tables, i.e. loot tables which are not based directly on a block or entity ID. + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE A field_803 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE_DISPENSER B field_751 + f Lnet/minecraft/resources/ResourceKey; IGLOO_CHEST C field_662 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSION D field_484 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_RUIN_SMALL E field_397 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_RUIN_BIG F field_300 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURE G field_251 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_MAP H field_841 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_SUPPLY I field_880 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_TREASURE J field_665 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOST K field_16593 + f Lnet/minecraft/resources/ResourceKey; BASTION_TREASURE L field_24046 + f Lnet/minecraft/resources/ResourceKey; BASTION_OTHER M field_24047 + f Lnet/minecraft/resources/ResourceKey; BASTION_BRIDGE N field_24048 + f Lnet/minecraft/resources/ResourceKey; BASTION_HOGLIN_STABLE O field_24049 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY P field_38438 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_ICE_BOX Q field_38439 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL R field_24050 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD S field_47415 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_COMMON T field_49844 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_RARE U field_49845 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_UNIQUE V field_49846 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS W field_50194 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_COMMON X field_50195 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_RARE Y field_50196 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_UNIQUE Z field_50197 + f Lnet/minecraft/resources/ResourceKey; SHEEP_RED aA field_716 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BLACK aB field_778 + f Lnet/minecraft/resources/ResourceKey; FISHING aC field_353 + f Lnet/minecraft/resources/ResourceKey; FISHING_JUNK aD field_266 + f Lnet/minecraft/resources/ResourceKey; FISHING_TREASURE aE field_854 + f Lnet/minecraft/resources/ResourceKey; FISHING_FISH aF field_795 + f Lnet/minecraft/resources/ResourceKey; CAT_MORNING_GIFT aG field_16216 + f Lnet/minecraft/resources/ResourceKey; ARMORER_GIFT aH field_19062 + f Lnet/minecraft/resources/ResourceKey; BUTCHER_GIFT aI field_19063 + f Lnet/minecraft/resources/ResourceKey; CARTOGRAPHER_GIFT aJ field_19064 + f Lnet/minecraft/resources/ResourceKey; CLERIC_GIFT aK field_19065 + f Lnet/minecraft/resources/ResourceKey; FARMER_GIFT aL field_19066 + f Lnet/minecraft/resources/ResourceKey; EMPTY a field_844 + f Lnet/minecraft/resources/ResourceKey; FISHERMAN_GIFT aM field_19067 + f Lnet/minecraft/resources/ResourceKey; FLETCHER_GIFT aN field_19068 + f Lnet/minecraft/resources/ResourceKey; LEATHERWORKER_GIFT aO field_19069 + f Lnet/minecraft/resources/ResourceKey; LIBRARIAN_GIFT aP field_19070 + f Lnet/minecraft/resources/ResourceKey; MASON_GIFT aQ field_19071 + f Lnet/minecraft/resources/ResourceKey; SHEPHERD_GIFT aR field_19072 + f Lnet/minecraft/resources/ResourceKey; TOOLSMITH_GIFT aS field_19073 + f Lnet/minecraft/resources/ResourceKey; WEAPONSMITH_GIFT aT field_19074 + f Lnet/minecraft/resources/ResourceKey; SNIFFER_DIGGING aU field_44748 + f Lnet/minecraft/resources/ResourceKey; PANDA_SNEEZE aV field_49158 + f Lnet/minecraft/resources/ResourceKey; PIGLIN_BARTERING aW field_22402 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_CHAMBER_KEY aX field_47423 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_CHAMBER_CONSUMABLES aY field_47424 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_OMINOUS_TRIAL_CHAMBER_KEY aZ field_50198 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_SUPPLY aa field_47416 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR ab field_47417 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_INTERSECTION ac field_47418 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_INTERSECTION_BARREL ad field_47419 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_ENTRANCE ae field_47420 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR_DISPENSER af field_47421 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CHAMBER_DISPENSER ag field_47422 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_WATER_DISPENSER ah field_47425 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR_POT ai field_47426 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER aj field_50201 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER_RANGED ak field_51414 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER_MELEE al field_51415 + f Lnet/minecraft/resources/ResourceKey; SHEEP_WHITE am field_869 + f Lnet/minecraft/resources/ResourceKey; SHEEP_ORANGE an field_814 + f Lnet/minecraft/resources/ResourceKey; SHEEP_MAGENTA ao field_224 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIGHT_BLUE ap field_461 + f Lnet/minecraft/resources/ResourceKey; SHEEP_YELLOW aq field_385 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIME ar field_702 + f Lnet/minecraft/resources/ResourceKey; SHEEP_PINK as field_629 + f Lnet/minecraft/resources/ResourceKey; SHEEP_GRAY at field_878 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIGHT_GRAY au field_806 + f Lnet/minecraft/resources/ResourceKey; SHEEP_CYAN av field_365 + f Lnet/minecraft/resources/ResourceKey; SHEEP_PURPLE aw field_285 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BLUE ax field_394 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BROWN ay field_489 + f Lnet/minecraft/resources/ResourceKey; SHEEP_GREEN az field_607 + f Lnet/minecraft/resources/ResourceKey; SPAWN_BONUS_CHEST b field_850 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_OMINOUS_TRIAL_CHAMBER_CONSUMABLES ba field_50199 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_ITEMS_TO_DROP_WHEN_OMINOUS bb field_50200 + f Lnet/minecraft/resources/ResourceKey; BOGGED_SHEAR bc field_49427 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL_ARCHAEOLOGY bd field_43353 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID_ARCHAEOLOGY be field_43354 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ARCHAEOLOGY_COMMON bf field_44648 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ARCHAEOLOGY_RARE bg field_44649 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_WARM_ARCHAEOLOGY bh field_43356 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_COLD_ARCHAEOLOGY bi field_43357 + f Ljava/util/Set; LOCATIONS bj field_667 + f Ljava/util/Set; IMMUTABLE_LOCATIONS bk field_600 + f Lnet/minecraft/resources/ResourceKey; END_CITY_TREASURE c field_274 + f Lnet/minecraft/resources/ResourceKey; SIMPLE_DUNGEON d field_356 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_WEAPONSMITH e field_434 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TOOLSMITH f field_17107 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_ARMORER g field_17009 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_CARTOGRAPHER h field_16751 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_MASON i field_17010 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SHEPHERD j field_17011 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_BUTCHER k field_17012 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_FLETCHER l field_17108 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_FISHER m field_18007 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TANNERY n field_16750 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TEMPLE o field_17109 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_DESERT_HOUSE p field_16752 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_PLAINS_HOUSE q field_16748 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TAIGA_HOUSE r field_16749 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SNOWY_HOUSE s field_16754 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SAVANNA_HOUSE t field_16753 + f Lnet/minecraft/resources/ResourceKey; ABANDONED_MINESHAFT u field_472 + f Lnet/minecraft/resources/ResourceKey; NETHER_BRIDGE v field_615 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_LIBRARY w field_683 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_CROSSING x field_800 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_CORRIDOR y field_842 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID z field_885 + m ()Ljava/util/Set; all a method_270 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; register a method_271 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_269 + p 0 name + m ()V + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulator ero net/minecraft/class_9666 + m ()Lnet/minecraft/core/component/DataComponentType; type a method_59719 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Object;Ljava/util/stream/Stream;)V setContents a method_59720 + p 1 stack + p 2 contents + p 3 items + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/UnaryOperator;)V modifyItems a method_59721 + p 1 stack + p 2 modifier + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/stream/Stream;)V setContents a method_59722 + p 1 stack + p 2 items + m (Ljava/lang/Object;)Ljava/util/stream/Stream; getContents a method_59723 + p 1 contents + m (Ljava/lang/Object;Ljava/util/stream/Stream;)Ljava/lang/Object; setContents a method_59724 + p 1 contents + p 2 items + m (Ljava/util/function/UnaryOperator;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_59725 a method_59725 + m ()Ljava/lang/Object; empty b method_59726 +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators erp net/minecraft/class_9667 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; CONTAINER a field_51416 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; BUNDLE_CONTENTS b field_51417 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; CHARGED_PROJECTILES c field_51418 + f Ljava/util/Map; ALL_MANIPULATORS d field_51419 + f Lcom/mojang/serialization/Codec; CODEC e field_51420 + m ()Ljava/lang/String; method_59727 a method_59727 + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_59728 a method_59728 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_59729 a method_59729 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$1 erp$1 net/minecraft/class_9667$1 + m (Lnet/minecraft/world/item/component/ItemContainerContents;)Ljava/util/stream/Stream; getContents a method_59730 + m (Lnet/minecraft/world/item/component/ItemContainerContents;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/ItemContainerContents; setContents a method_59731 + m ()Lnet/minecraft/world/item/component/ItemContainerContents; empty c method_59732 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$2 erp$2 net/minecraft/class_9667$2 + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/stream/Stream; getContents a method_59733 + m (Lnet/minecraft/world/item/component/BundleContents;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/BundleContents; setContents a method_59734 + m ()Lnet/minecraft/world/item/component/BundleContents; empty c method_59735 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$3 erp$3 net/minecraft/class_9667$3 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/stream/Stream; getContents a method_59736 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/ChargedProjectiles; setContents a method_59737 + m ()Lnet/minecraft/world/item/component/ChargedProjectiles; empty c method_59738 + m ()V +c net/minecraft/world/level/storage/loot/IntRange erq net/minecraft/class_42 + c A possibly unbounded range of integers based on {@link LootContext}. Minimum and maximum are given in the form of {@link NumberProvider}s.\nMinimum and maximum are both optional. If given, they are both inclusive. + f Lcom/mojang/serialization/Codec; CODEC a field_45790 + f Lcom/mojang/serialization/Codec; RECORD_CODEC b field_45791 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min c field_921 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max d field_920 + f Lnet/minecraft/world/level/storage/loot/IntRange$IntLimiter; limiter e field_27897 + f Lnet/minecraft/world/level/storage/loot/IntRange$IntChecker; predicate f field_27898 + m ()Ljava/util/Set; getReferencedContextParams a method_32386 + c The LootContextParams required for this IntRange. + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; exact a method_32387 + c Create an IntRange that contains only exactly the given value. + p 0 exactValue + m (II)Lnet/minecraft/world/level/storage/loot/IntRange; range a method_282 + c Create an IntRange that ranges from {@code min} to {@code max}, both inclusive. + p 0 min + p 1 max + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/storage/loot/IntRange; method_53260 a method_53260 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53261 a method_53261 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lcom/mojang/datafixers/util/Either; method_53262 a method_53262 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)I clamp a method_32389 + c Clamp the given value so that it falls within this IntRange. + p 1 lootContext + p 2 value + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32390 a method_32390 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32391 a method_32391 + m ()Ljava/util/OptionalInt; unpackExact b method_53263 + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; lowerBound b method_280 + c Create an IntRange with the given minimum (inclusive) and no upper bound. + p 0 min + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/Optional; method_53264 b method_53264 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)Z test b method_32393 + c Check whether the given value falls within this IntRange. + p 1 lootContext + p 2 value + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32394 b method_32394 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32395 b method_32395 + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; upperBound c method_277 + c Create an IntRange with the given maximum (inclusive) and no lower bound. + p 0 max + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/Optional; method_53265 c method_53265 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32396 c method_32396 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32397 c method_32397 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_279 d method_279 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32398 d method_32398 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 min + p 2 max + m ()V +c net/minecraft/world/level/storage/loot/IntRange$IntChecker erq$a net/minecraft/class_42$class_5638 +c net/minecraft/world/level/storage/loot/IntRange$IntLimiter erq$b net/minecraft/class_42$class_5639 +c net/minecraft/world/level/storage/loot/LootContext err net/minecraft/class_47 + c LootContext stores various context information for loot generation.\nThis includes the Level as well as any known {@link LootContextParam}s. + f Lnet/minecraft/world/level/storage/loot/LootParams; params a field_44881 + f Lnet/minecraft/util/RandomSource; random b field_923 + f Lnet/minecraft/core/HolderGetter$Provider; lootDataResolver c field_44490 + f Ljava/util/Set; visitedElements d field_927 + m ()Lnet/minecraft/core/HolderGetter$Provider; getResolver a method_51183 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V addDynamicDrops a method_297 + c Add the dynamic drops for the given dynamic drops name to the given consumer.\nIf no dynamic drops provider for the given name has been registered to this LootContext, nothing is generated.\n\n@see DynamicDrops + p 1 name + p 2 consumer + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)Z hasVisitedElement a method_51184 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51185 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51186 + p 0 modifier + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z hasParam a method_300 + c Check whether the given parameter is present in this context. + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51187 + p 0 predicate + m ()Lnet/minecraft/util/RandomSource; getRandom b method_294 + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)Z pushVisitedElement b method_298 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParam b method_35508 + c Get the value of the given parameter.\n\n@throws NoSuchElementException if the parameter is not present in this context + p 1 param + m ()F getLuck c method_302 + c The luck value for this loot context. This is usually just the player's {@linkplain Attributes#LUCK luck value}, however it may be modified depending on the context of the looting.\nWhen fishing for example it is increased based on the Luck of the Sea enchantment. + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)V popVisitedElement c method_295 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParamOrNull c method_296 + c Get the value of the given parameter if it is present in this context, null otherwise. + p 1 parameter + m ()Lnet/minecraft/server/level/ServerLevel; getLevel d method_299 + m (Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 params + p 2 random + p 3 lootDataResolver +c net/minecraft/world/level/storage/loot/LootContext$Builder err$a net/minecraft/class_47$class_48 + f Lnet/minecraft/world/level/storage/loot/LootParams; params a field_44882 + f Lnet/minecraft/util/RandomSource; random b field_934 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_313 + m (J)Lnet/minecraft/world/level/storage/loot/LootContext$Builder; withOptionalRandomSeed a method_304 + p 1 seed + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/storage/loot/LootContext$Builder; withOptionalRandomSource a method_60568 + p 1 random + m (Ljava/util/Optional;)Lnet/minecraft/world/level/storage/loot/LootContext; create a method_309 + p 1 sequence + m (Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_53266 a method_53266 + m (Lnet/minecraft/world/level/storage/loot/LootParams;)V + p 1 params +c net/minecraft/world/level/storage/loot/LootContext$EntityTarget err$b net/minecraft/class_47$class_50 + c Represents a type of entity that can be looked up in a {@link LootContext} using a {@link LootContextParam}. + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; THIS a field_935 + c Looks up {@link LootContextParams#THIS_ENTITY}. + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; ATTACKER b field_936 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; DIRECT_ATTACKER c field_939 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; ATTACKING_PLAYER d field_937 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_45792 + f Ljava/lang/String; name f field_941 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; param g field_938 + f [Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; $VALUES h field_940 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; getParam a method_315 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; getByName a method_314 + p 0 name + m ()[Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; $values b method_36793 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)V + p 3 name + p 4 param + m ()V +c net/minecraft/world/level/storage/loot/LootContext$VisitedEntry err$c net/minecraft/class_47$class_8487 + f Lnet/minecraft/world/level/storage/loot/LootDataType; type a comp_1472 + f Ljava/lang/Object; value b comp_1473 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType; type a comp_1472 + m ()Ljava/lang/Object; value b comp_1473 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Ljava/lang/Object;)V +c net/minecraft/world/level/storage/loot/LootContextUser ers net/minecraft/class_46 + c An object that will use some parameters from a LootContext. Used for validation purposes to validate that the correct parameters are present. + m ()Ljava/util/Set; getReferencedContextParams a method_293 + c Get the parameters used by this object. + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_292 + c Validate that this object is used correctly according to the given ValidationContext. + p 1 context +c net/minecraft/world/level/storage/loot/LootDataType ert net/minecraft/class_8490 + f Lnet/minecraft/world/level/storage/loot/LootDataType; PREDICATE a field_44496 + f Lnet/minecraft/world/level/storage/loot/LootDataType; MODIFIER b field_44497 + f Lnet/minecraft/world/level/storage/loot/LootDataType; TABLE c field_44498 + f Lnet/minecraft/resources/ResourceKey; registryKey d comp_2519 + f Lcom/mojang/serialization/Codec; codec e comp_2520 + f Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; validator f comp_2522 + f Lorg/slf4j/Logger; LOGGER g field_44499 + m ()Ljava/util/stream/Stream; values a method_51215 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)V method_53267 a method_53267 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/util/Optional; deserialize a method_51204 + p 1 resourceLocation + p 2 ops + p 3 value + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V method_51207 a method_51207 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable;)V method_51208 a method_51208 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)V runValidation a method_51209 + p 1 context + p 2 key + p 3 value + m ()Lnet/minecraft/resources/ResourceKey; registryKey b comp_2519 + m ()Lcom/mojang/serialization/Codec; codec c comp_2520 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; validator d comp_2522 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; createSimpleValidator e method_51216 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; createLootTableValidator f method_51217 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/LootDataType$Validator;)V + m ()V +c net/minecraft/world/level/storage/loot/LootDataType$Validator ert$a net/minecraft/class_8490$class_8491 +c net/minecraft/world/level/storage/loot/LootParams eru net/minecraft/class_8567 + f Lnet/minecraft/server/level/ServerLevel; level a field_44883 + f Ljava/util/Map; params b field_44884 + f Ljava/util/Map; dynamicDrops c field_44885 + f F luck d field_44886 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_51863 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V addDynamicDrops a method_51864 + p 1 location + p 2 consumer + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z hasParam a method_51865 + p 1 param + m ()F getLuck b method_51866 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParameter b method_51867 + p 1 param + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getOptionalParameter c method_51868 + p 1 param + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParamOrNull d method_51869 + p 1 param + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Map;Ljava/util/Map;F)V + p 1 level + p 2 params + p 3 dynamicDrops + p 4 luck +c net/minecraft/world/level/storage/loot/LootParams$Builder eru$a net/minecraft/class_8567$class_8568 + f Lnet/minecraft/server/level/ServerLevel; level a field_44887 + f Ljava/util/Map; params b field_44888 + f Ljava/util/Map; dynamicDrops c field_44889 + f F luck d field_44890 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_51870 + m (F)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withLuck a method_51871 + p 1 luck + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/storage/loot/LootParams$DynamicDrop;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withDynamicDrop a method_51872 + p 1 name + p 2 dynamicDrop + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParameter a method_51873 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withParameter a method_51874 + p 1 parameter + p 2 value + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/LootParams; create a method_51875 + p 1 params + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getOptionalParameter b method_51876 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withOptionalParameter b method_51877 + p 1 parameter + p 2 value + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/storage/loot/LootParams$DynamicDrop eru$b net/minecraft/class_8567$class_49 +c net/minecraft/world/level/storage/loot/LootPool erv net/minecraft/class_55 + f Lcom/mojang/serialization/Codec; CODEC a field_45795 + f Ljava/util/List; entries b field_953 + f Ljava/util/List; conditions c field_954 + f Ljava/util/function/Predicate; compositeCondition d field_955 + f Ljava/util/List; functions e field_956 + f Ljava/util/function/BiFunction; compositeFunction f field_952 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; rolls g field_957 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; bonusRolls h field_958 + m ()Lnet/minecraft/world/level/storage/loot/LootPool$Builder; lootPool a method_347 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53268 a method_53268 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry;)V method_342 a method_342 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53269 a method_53269 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_349 + c Validate this LootPool according to the given context. + p 1 context + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V addRandomItems a method_341 + c Generate the random items from this LootPool to the given {@code stackConsumer}.\nThis first checks this pool's conditions, generating nothing if they do not match.\nThen the random items are generated based on the {@link LootPoolEntry LootPoolEntries} in this pool according to the rolls and bonusRolls, applying any loot functions. + p 1 stackConsumer + p 2 lootContext + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53270 b method_53270 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V addRandomItem b method_345 + p 1 stackConsumer + p 2 context + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53271 c method_53271 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53272 d method_53272 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53273 e method_53273 + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 entries + p 2 conditions + p 3 functions + p 4 rolls + p 5 bonusRolls + m ()V +c net/minecraft/world/level/storage/loot/LootPool$Builder erv$a net/minecraft/class_55$class_56 + c

Interface {@link net.fabricmc.fabric.api.loot.v3.FabricLootPoolBuilder} injected by mod fabric-loot-api-v3

+ f Lcom/google/common/collect/ImmutableList$Builder; entries a field_960 + f Lcom/google/common/collect/ImmutableList$Builder; conditions b field_963 + f Lcom/google/common/collect/ImmutableList$Builder; functions c field_961 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; rolls d field_959 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; bonusRolls e field_962 + m ()Lnet/minecraft/world/level/storage/loot/LootPool$Builder; unwrap a method_354 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; add a method_351 + p 1 entriesBuilder + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; apply a method_353 + p 1 functionBuilder + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; when a method_356 + p 1 conditionBuilder + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; setRolls a method_352 + p 1 rolls + m ()Lnet/minecraft/world/level/storage/loot/LootPool; build b method_355 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; setBonusRolls b method_35509 + p 1 bonusRolls + m ()V +c net/minecraft/world/level/storage/loot/LootTable erw net/minecraft/class_52 + f Lnet/minecraft/world/level/storage/loot/LootTable; EMPTY a field_948 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; DEFAULT_PARAM_SET b field_947 + f J RANDOMIZE_SEED c field_49428 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC d field_50021 + f Lcom/mojang/serialization/Codec; CODEC e field_45796 + f Lorg/slf4j/Logger; LOGGER f field_946 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet g field_942 + f Ljava/util/Optional; randomSequence h field_44892 + f Ljava/util/List; pools i field_943 + f Ljava/util/List; functions j field_944 + f Ljava/util/function/BiFunction; compositeFunction k field_945 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; getParamSet a method_322 + c Get the parameter set for this LootTable. + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; createStackSplitter a method_332 + p 0 level + p 1 output + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/world/item/ItemStack;)V method_331 a method_331 + m (Lnet/minecraft/world/Container;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getAvailableSlots a method_321 + p 1 inventory + p 2 random + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/level/storage/loot/LootParams;J)V fill a method_329 + p 1 container + p 2 params + p 3 seed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53274 a method_53274 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_319 + c Generate random items to a List. + p 1 context + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V getRandomItemsRaw a method_328 + c Generate items to the given Consumer, ignoring maximum stack size. + p 1 context + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_51878 + p 1 params + m (Lnet/minecraft/world/level/storage/loot/LootParams;J)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_51879 + p 1 params + p 2 seed + m (Lnet/minecraft/world/level/storage/loot/LootParams;JLjava/util/function/Consumer;)V getRandomItems a method_51880 + p 1 params + p 2 seed + p 4 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/util/RandomSource;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_60569 + p 1 params + p 2 random + m (Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/function/Consumer;)V getRandomItemsRaw a method_51881 + p 1 params + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/List; method_53275 a method_53275 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_330 + c Validate this LootTable using the given ValidationContext. + p 1 validator + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;ILnet/minecraft/util/RandomSource;)V shuffleAndSplitItems a method_333 + c Shuffles items by changing their order and splitting stacks + p 1 stacks + p 2 emptySlotsCount + p 3 random + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; lootTable b method_324 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V getRandomItems b method_320 + c Generate random items to the given Consumer, ensuring they do not exceed their maximum stack size. + p 1 contextData + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/function/Consumer;)V getRandomItems b method_51882 + p 1 params + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/List; method_53276 b method_53276 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/Optional; method_53277 c method_53277 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; method_53278 d method_53278 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/util/Optional;Ljava/util/List;Ljava/util/List;)V + p 1 paramSet + p 2 randomSequence + p 3 pools + p 4 functions + m ()V +c net/minecraft/world/level/storage/loot/LootTable$Builder erw$a net/minecraft/class_52$class_53 + c

Interface {@link net.fabricmc.fabric.api.loot.v3.FabricLootTableBuilder} injected by mod fabric-loot-api-v3

+ f Lcom/google/common/collect/ImmutableList$Builder; pools a field_949 + f Lcom/google/common/collect/ImmutableList$Builder; functions b field_951 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet c field_950 + f Ljava/util/Optional; randomSequence d field_44893 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; unwrap a method_337 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; setRandomSequence a method_51883 + p 1 randomSequence + m (Lnet/minecraft/world/level/storage/loot/LootPool$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; withPool a method_336 + p 1 lootPool + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; apply a method_335 + p 1 functionBuilder + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; setParamSet a method_334 + p 1 parameterSet + m ()Lnet/minecraft/world/level/storage/loot/LootTable; build b method_338 + m ()V +c net/minecraft/world/level/storage/loot/ValidationContext erx net/minecraft/class_58 + c Context for validating loot tables. Loot tables are validated recursively by checking that all functions, conditions, etc. (implementing {@link LootContextUser}) are valid according to their LootTable's {@link LootContextParamSet}. + f Lnet/minecraft/util/ProblemReporter; reporter a field_47427 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; params b field_20756 + f Ljava/util/Optional; resolver c field_44504 + f Ljava/util/Set; visitedElements d field_44505 + m ()Lnet/minecraft/core/HolderGetter$Provider; resolver a method_51220 + m (Lnet/minecraft/resources/ResourceKey;)Z hasVisitedElement a method_51218 + p 1 key + m (Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_22567 + c Validate the given LootContextUser. + p 1 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/ValidationContext; setParams a method_22568 + c Create a new ValidationContext with the given LootContextParamSet. + p 1 params + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/ValidationContext; forChild a method_364 + c Create a new ValidationContext with {@code childName} being added to the context. + p 1 childName + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/ValidationContext; enterElement a method_51219 + p 1 name + p 2 key + m ()Z allowsReferences b method_61030 + m (Ljava/lang/String;)V reportProblem b method_360 + c Report a problem to this ValidationContext. + p 1 problem + m ()Lnet/minecraft/util/ProblemReporter; reporter c method_60288 + m ()Ljava/lang/UnsupportedOperationException; method_61031 d method_61031 + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 reporter + p 2 params + p 3 resolver + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)V + p 1 reporter + p 2 params + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/util/Optional;Ljava/util/Set;)V + p 1 reporter + p 2 params + p 3 resolver + p 4 visitedElements +c net/minecraft/world/level/storage/loot/entries/AlternativesEntry ery net/minecraft/class_65 + c A composite loot pool entry container that expands all its children in order until one of them succeeds.\nThis container succeeds if one of its children succeeds. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45797 + m (I)[Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43733 a method_43733 + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; alternatives a method_43734 + p 0 childrenSources + p 1 toChildrenFunction + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_387 a method_387 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; alternatives a method_386 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder ery$a net/minecraft/class_65$class_66 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_979 + m ()Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; getThis a method_388 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/ComposableEntryContainer erz net/minecraft/class_64 + c Base interface for loot pool entry containers.\nA loot pool entry container holds one or more loot pools and will expand into those.\nAdditionally, the container can either succeed or fail, based on its conditions. + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; ALWAYS_FALSE b field_16883 + c A container which always fails. + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; ALWAYS_TRUE c field_16884 + c A container that always succeeds. + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16776 a method_16776 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16777 a method_16777 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; and and method_16778 + p 1 entry + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16775 b method_16775 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16779 b method_16779 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; or or method_385 + p 1 entry + m ()V +c net/minecraft/world/level/storage/loot/entries/CompositeEntryBase esa net/minecraft/class_69 + c Base class for loot pool entry containers that delegate to one or more children.\nThe actual functionality is provided by composing the children into one composed container (see {@link #compose}). + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; composedChildren a field_983 + f Ljava/util/List; children d field_982 + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor;)Lcom/mojang/serialization/MapCodec; createCodec a method_53279 + p 0 factory + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53280 a method_53280 + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase;)Ljava/util/List; method_53281 a method_53281 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; compose a method_394 + p 1 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions +c net/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor esa$a net/minecraft/class_69$class_70 +c net/minecraft/world/level/storage/loot/entries/DynamicLoot esb net/minecraft/class_67 + c A loot pool entry container that will generate the dynamic drops with a given name.\n\n@see LootContext.DynamicDrops + f Lcom/mojang/serialization/MapCodec; CODEC a field_45798 + f Lnet/minecraft/resources/ResourceLocation; name j field_980 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; dynamicEntry a method_390 + p 0 dynamicDropsName + m (Lnet/minecraft/resources/ResourceLocation;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_391 a method_391 + m (Lnet/minecraft/world/level/storage/loot/entries/DynamicLoot;)Lnet/minecraft/resources/ResourceLocation; method_53282 a method_53282 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53283 c method_53283 + m (Lnet/minecraft/resources/ResourceLocation;IILjava/util/List;Ljava/util/List;)V + p 1 name + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/EmptyLootItem esc net/minecraft/class_73 + c A loot pool entry that does not generate any items. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45799 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; emptyItem b method_401 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53284 c method_53284 + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 2 quality + p 3 conditions + p 4 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/EntryGroup esd net/minecraft/class_93 + c A composite loot pool entry container that expands all its children in order.\nThis container always succeeds. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45800 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_29315 a method_29315 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_452 a method_452 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; list a method_35511 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/EntryGroup$Builder esd$a net/minecraft/class_93$class_6152 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_31846 + m ()Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; getThis a method_35512 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/LootItem ese net/minecraft/class_77 + c A loot pool entry that always generates a given item. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45801 + f Lnet/minecraft/core/Holder; item j field_987 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; lootTableItem a method_411 + p 0 item + m (Lnet/minecraft/world/level/ItemLike;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_409 a method_409 + m (Lnet/minecraft/world/level/storage/loot/entries/LootItem;)Lnet/minecraft/core/Holder; method_53285 a method_53285 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53286 c method_53286 + m (Lnet/minecraft/core/Holder;IILjava/util/List;Ljava/util/List;)V + p 1 item + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntries esf net/minecraft/class_75 + c Registration for {@link LootPoolEntryType}. + f Lcom/mojang/serialization/Codec; CODEC a field_45802 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; EMPTY b field_25206 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; ITEM c field_25207 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; LOOT_TABLE d field_25208 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; DYNAMIC e field_25209 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; TAG f field_25210 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; ALTERNATIVES g field_25211 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; SEQUENCE h field_25212 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; GROUP i field_25213 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; register a method_29317 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntry esg net/minecraft/class_82 + c A loot pool entry generates zero or more stacks of items based on the LootContext.\nEach loot pool entry has a weight that determines how likely it is to be generated within a given loot pool. + m (F)I getWeight a method_427 + c Gets the effective weight based on the loot entry's weight and quality multiplied by looter's luck. + p 1 luck + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V createItemStack a method_426 + c Generate the loot stacks of this entry.\nContrary to the method name this method does not always generate one stack, it can also generate zero or multiple stacks. + p 1 stackConsumer + p 2 lootContext +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer esh net/minecraft/class_79 + c Base class for loot pool entry containers. This class just stores a list of conditions that are checked before the entry generates loot. + f Ljava/util/function/Predicate; compositeCondition a field_989 + f Ljava/util/List; conditions e field_988 + c Conditions for the loot entry to be applied. + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; getType a method_29318 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; commonFields a method_53287 + p 0 instance + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z canRun a method_414 + p 1 lootContext + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_415 + p 1 validationContext + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer;)Ljava/util/List; method_53288 a method_53288 + m (Ljava/util/List;)V + p 1 conditions +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder esh$a net/minecraft/class_79$class_80 + f Lcom/google/common/collect/ImmutableList$Builder; conditions a field_990 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; otherwise a method_417 + p 1 childBuilder + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; when a method_421 + p 1 conditionBuilder + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; getThis aH_ method_418 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer; build b method_419 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; append b method_35513 + p 1 childBuilder + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; then c method_35514 + p 1 childBuilder + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; unwrap e method_416 + m ()Ljava/util/List; getConditions f method_420 + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryType esi net/minecraft/class_5338 + c The SerializerType for {@link LootPoolEntryContainer}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1847 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1847 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer esj net/minecraft/class_85 + c A LootPoolEntryContainer that expands into a single LootPoolEntry. + f Ljava/util/function/BiFunction; compositeFunction a field_997 + f I DEFAULT_WEIGHT d field_31847 + f I DEFAULT_QUALITY f field_31848 + f I weight g field_995 + c The weight of the entry. + f I quality h field_994 + c The quality of the entry. + f Ljava/util/List; functions i field_996 + c Functions that are ran on the entry. + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry; entry j field_998 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; simpleBuilder a method_434 + p 0 entryBuilder + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/util/List; method_53289 a method_53289 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V createItemStack a method_433 + c Generate the loot stacks of this entry.\nContrary to the method name this method does not always generate one stack, it can also generate zero or multiple stacks. + p 1 stackConsumer + p 2 lootContext + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; singletonFields b method_53290 + p 0 instance + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/lang/Integer; method_53291 b method_53291 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/lang/Integer; method_53292 c method_53292 + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 2 quality + p 3 conditions + p 4 functions +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$1 esj$1 net/minecraft/class_85$1 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; field_1002 a field_1002 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder esj$a net/minecraft/class_85$class_86 + f I weight a field_1001 + f I quality b field_1000 + f Lcom/google/common/collect/ImmutableList$Builder; functions c field_999 + m ()Ljava/util/List; getFunctions a method_439 + m (I)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; setWeight a method_437 + p 1 weight + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; apply a method_438 + p 1 functionBuilder + m (I)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; setQuality b method_436 + p 1 quality + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$DummyBuilder esj$b net/minecraft/class_85$class_87 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor; constructor c field_1003 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$DummyBuilder; getThis g method_440 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor;)V + p 1 constructor +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryBase esj$c net/minecraft/class_85$class_88 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; field_1004 b field_1004 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor esj$d net/minecraft/class_85$class_89 +c net/minecraft/world/level/storage/loot/entries/NestedLootTable esk net/minecraft/class_83 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45803 + f Lcom/mojang/datafixers/util/Either; contents j field_49429 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; lootTableReference a method_428 + p 0 lootTable + m (Lnet/minecraft/resources/ResourceKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_430 a method_430 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/LootTable; method_57630 a method_57630 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; inlineLootTable a method_57631 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/LootTable;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_57632 a method_57632 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;)V method_51223 a method_51223 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;)V method_57633 a method_57633 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootTable;)V method_51222 a method_51222 + m (Lnet/minecraft/world/level/storage/loot/entries/NestedLootTable;)Lcom/mojang/datafixers/util/Either; method_53293 a method_53293 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/LootTable; method_57634 b method_57634 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;)V method_57635 b method_57635 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53294 c method_53294 + m (Lcom/mojang/datafixers/util/Either;IILjava/util/List;Ljava/util/List;)V + p 1 contents + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/SequentialEntry esl net/minecraft/class_72 + c A composite loot pool entry container that expands all its children in order until one of them fails.\nThis container succeeds if all children succeed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45804 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_400 a method_400 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; sequential a method_35515 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder esl$a net/minecraft/class_72$class_6153 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_31849 + m ()Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; getThis a method_35516 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/TagEntry esm net/minecraft/class_91 + c A loot pool entry container that generates based on an item tag.\nIf {@code expand} is set to true, it will expand into separate LootPoolEntries for every item in the tag, otherwise it will simply generate all items in the tag. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45805 + f Lnet/minecraft/tags/TagKey; tag j field_1005 + f Z expand k field_1006 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; tagContents a method_35517 + p 0 tag + m (Lnet/minecraft/tags/TagKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_444 a method_444 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z expandTag a method_447 + p 1 context + p 2 generatorConsumer + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;)Ljava/lang/Boolean; method_53295 a method_53295 + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)V method_449 a method_449 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; expandTag b method_445 + p 0 tag + m (Lnet/minecraft/tags/TagKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_35518 b method_35518 + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;)Lnet/minecraft/tags/TagKey; method_53296 b method_53296 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53297 c method_53297 + m (Lnet/minecraft/tags/TagKey;ZIILjava/util/List;Ljava/util/List;)V + p 1 tag + p 2 expand + p 3 weight + p 4 quality + p 5 conditions + p 6 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/TagEntry$1 esm$1 net/minecraft/class_91$1 + f Lnet/minecraft/core/Holder; val$item a field_1007 + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;Lnet/minecraft/core/Holder;)V +c net/minecraft/world/level/storage/loot/entries/package-info esn net/minecraft/class_6154 +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount eso net/minecraft/class_94 + c LootItemFunction that modifies the stack's count based on an enchantment level on the {@linkplain LootContextParams#TOOL tool} using various formulas. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45806 + f Ljava/util/Map; FORMULAS b field_1010 + f Lcom/mojang/serialization/Codec; FORMULA_TYPE_CODEC c field_45807 + f Lcom/mojang/serialization/MapCodec; FORMULA_CODEC d field_45808 + f Lnet/minecraft/core/Holder; enchantment e field_1011 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula; formula f field_1009 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53298 a method_53298 + m (Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount;)Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula; method_53299 a method_53299 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addOreBonusCount a method_455 + p 0 enchantment + m (Lnet/minecraft/core/Holder;FI)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addBonusBinomialDistributionCount a method_463 + p 0 enchantment + p 1 probability + p 2 extraRounds + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addUniformBonusCount a method_461 + p 0 enchantment + p 1 bonusMultiplier + m (Lnet/minecraft/core/Holder;IFLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_459 a method_459 + m (Lnet/minecraft/core/Holder;ILjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_462 a method_462 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_457 a method_457 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_53300 b method_53300 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53301 b method_53301 + m (Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount;)Lnet/minecraft/core/Holder; method_53302 b method_53302 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addUniformBonusCount b method_456 + p 0 enchantment + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_453 b method_453 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula;)V + p 1 predicates + p 2 enchantment + p 3 formula + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$BinomialWithBonusCount eso$a net/minecraft/class_94$class_95 + c Applies a bonus based on a binomial distribution with {@code n = enchantmentLevel + extraRounds} and {@code p = probability}. + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE a field_1013 + f I extraRounds b comp_1848 + f F probability c comp_1849 + f Lcom/mojang/serialization/Codec; CODEC d field_45811 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53307 a method_53307 + m ()I extraRounds b comp_1848 + m ()F probability c comp_1849 + m (IF)V + p 1 extraRounds + p 2 probability + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula eso$b net/minecraft/class_94$class_96 + m ()Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; getType a method_466 + m (Lnet/minecraft/util/RandomSource;II)I calculateNewCount a method_467 + p 1 random + p 2 originalCount + p 3 enchantmentLevel +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType eso$c net/minecraft/class_94$class_8752 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1850 + f Lcom/mojang/serialization/Codec; codec b comp_1851 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1850 + m ()Lcom/mojang/serialization/Codec; codec b comp_1851 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$OreDrops eso$d net/minecraft/class_94$class_98 + c Applies a bonus count with a special formula used for fortune ore drops. + f Lcom/mojang/serialization/Codec; CODEC a field_45812 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE b field_1015 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$UniformBonusCount eso$e net/minecraft/class_94$class_100 + c Adds a bonus count based on the enchantment level scaled by a constant multiplier. + f Lcom/mojang/serialization/Codec; CODEC a field_45813 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE b field_45814 + f I bonusMultiplier c comp_1852 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53308 a method_53308 + m ()I bonusMultiplier b comp_1852 + m (I)V + p 1 bonusMultiplier + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyExplosionDecay esp net/minecraft/class_104 + c LootItemFunction that reduces a stack's count based on the {@linkplain LootContextParams#EXPLOSION_RADIUS explosion radius}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45815 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53309 b method_53309 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; explosionDecay c method_478 + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyBlockState esq net/minecraft/class_4488 + c LootItemFunction that copies a set of block state properties to the {@code "BlockStateTag"} NBT tag of the ItemStack.\nThis tag is checked when the block is placed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45816 + f Lnet/minecraft/core/Holder; block b field_20449 + f Ljava/util/Set; properties c field_20450 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; copyState a method_21892 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/component/BlockItemStateProperties;)Lnet/minecraft/world/item/component/BlockItemStateProperties; method_57636 a method_57636 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState;)Ljava/util/List; method_53310 a method_53310 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53311 b method_53311 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState;)Lnet/minecraft/core/Holder; method_53312 b method_53312 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Ljava/util/Set;)V + p 1 conditions + p 2 block + p 3 properties + m (Ljava/util/List;Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 conditions + p 2 block + p 3 properties + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder esq$a net/minecraft/class_4488$class_4489 + f Lnet/minecraft/core/Holder; block a field_20451 + f Lcom/google/common/collect/ImmutableSet$Builder; properties b field_20452 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; getThis a method_21897 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; copy a method_21898 + p 1 property + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction esr net/minecraft/class_9317 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49430 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; source b field_49431 + f Ljava/util/Optional; include c field_50202 + f Ljava/util/Optional; exclude d field_50203 + f Ljava/util/function/Predicate; bakedPredicate e field_50204 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; copyComponents a method_57637 + p 0 source + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Ljava/util/Optional; method_58726 a method_58726 + m (Ljava/util/List;Ljava/util/List;)V method_58727 a method_58727 + m (Ljava/util/List;Lnet/minecraft/core/component/DataComponentType;)Z method_58728 a method_58728 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57639 b method_57639 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Ljava/util/Optional; method_57638 b method_57638 + m (Ljava/util/List;Ljava/util/List;)V method_58729 b method_58729 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; method_57640 c method_57640 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 source + p 3 include + p 4 exclude + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder esr$a net/minecraft/class_9317$class_9318 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; source a field_49434 + f Ljava/util/Optional; include b field_50205 + f Ljava/util/Optional; exclude c field_50206 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; getThis a method_57641 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; include a method_58730 + p 1 include + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; exclude b method_58731 + p 1 exclude + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;)V + p 1 source +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source esr$b net/minecraft/class_9317$class_9319 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; BLOCK_ENTITY a field_49436 + f Lcom/mojang/serialization/Codec; CODEC b field_49437 + f Ljava/lang/String; name c field_49438 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; $VALUES d field_49439 + m ()Ljava/util/Set; getReferencedContextParams a method_57643 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/core/component/DataComponentMap; get a method_57644 + p 1 context + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; $values b method_57645 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction ess net/minecraft/class_3837 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45819 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; source b field_17013 + f Ljava/util/List; operations c field_17014 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copyData a method_35519 + p 0 target + m (Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction;)Ljava/util/List; method_53315 a method_53315 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copyData a method_16848 + p 0 source + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$CopyOperation;)V method_16846 a method_16846 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/nbt/Tag; method_57646 a method_57646 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53316 b method_53316 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction;)Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; method_53317 b method_53317 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;Ljava/util/List;)V + p 1 conditions + p 2 source + p 3 operations + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder ess$a net/minecraft/class_3837$class_3838 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; source a field_17017 + f Ljava/util/List; ops b field_17018 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; getThis a method_16855 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copy a method_16856 + p 1 sourceKey + p 2 destinationKey + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copy a method_16857 + p 1 sourceKey + p 2 destinationKey + p 3 mergeStrategy + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)V + p 1 source +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$CopyOperation ess$b net/minecraft/class_3837$class_3839 + f Lcom/mojang/serialization/Codec; CODEC a field_45820 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; sourcePath b comp_1853 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; targetPath c comp_1854 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; op d comp_1855 + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; sourcePath a comp_1853 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53318 a method_53318 + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;)V apply a method_16860 + p 1 sourceTag + p 2 tag + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; targetPath b comp_1854 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; op c comp_1855 + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy ess$c net/minecraft/class_3837$class_3841 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; REPLACE a field_17032 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; APPEND b field_17033 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; MERGE c field_17034 + f Lcom/mojang/serialization/Codec; CODEC d field_45821 + f Ljava/lang/String; name e field_17035 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; $VALUES f field_17036 + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; $values a method_36795 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)V merge a method_16864 + p 1 tag + p 2 path + p 3 currentData + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$1 ess$c$1 net/minecraft/class_3837$class_3841$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$2 ess$c$2 net/minecraft/class_3837$class_3841$2 + m (Ljava/util/List;Lnet/minecraft/nbt/Tag;)V method_16867 a method_16867 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)V method_16866 a method_16866 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$3 ess$c$3 net/minecraft/class_3837$class_3841$3 + m (Ljava/util/List;Lnet/minecraft/nbt/Tag;)V method_16869 a method_16869 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)V method_16868 a method_16868 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyNameFunction est net/minecraft/class_101 + c LootItemFunction that sets the stack's name by copying it from somewhere else, such as the killing player. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45817 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; source b field_1018 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; copyName a method_473 + p 0 source + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_474 a method_474 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction;)Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; method_53313 a method_53313 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53314 b method_53314 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;)V + p 1 conditions + p 2 source + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource est$a net/minecraft/class_101$class_102 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; THIS a field_1022 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; ATTACKING_ENTITY b field_51790 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; LAST_DAMAGE_PLAYER c field_51791 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; BLOCK_ENTITY d field_1023 + f Lcom/mojang/serialization/Codec; CODEC e field_45818 + f Ljava/lang/String; name f field_1025 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; param g field_1024 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; $VALUES h field_1021 + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; $values a method_36794 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)V + p 3 name + p 4 param + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction esu net/minecraft/class_109 + c LootItemFunction that applies a random enchantment to the stack. If an empty list is given, chooses from all enchantments. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45823 + f Lorg/slf4j/Logger; LOGGER b field_1031 + f Ljava/util/Optional; options c field_51792 + f Z onlyCompatible d field_51793 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_26266 + p 0 stack + p 1 enchantment + p 2 random + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/stream/Stream; method_60289 a method_60289 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction;)Ljava/lang/Boolean; method_60290 a method_60290 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; randomApplicableEnchantment a method_489 + p 0 registries + m (ZLnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;)Z method_60291 a method_60291 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60292 b method_60292 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction;)Ljava/util/Optional; method_53324 b method_53324 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; randomEnchantment c method_35520 + m (Ljava/util/List;Ljava/util/Optional;Z)V + p 1 conditons + p 2 options + p 3 onlyCompatible + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder esu$a net/minecraft/class_109$class_4954 + f Ljava/util/Optional; options a field_51794 + f Z onlyCompatible b field_51795 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; getThis a method_25991 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; withEnchantment a method_25992 + p 1 enchantment + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; withOneOf a method_60293 + p 1 enchantments + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; allowingIncompatibleEnchantments e method_60294 + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction esv net/minecraft/class_106 + c Applies a random enchantment to the stack.\n\n@see EnchantmentHelper#enchantItem + f Lcom/mojang/serialization/MapCodec; CODEC a field_45825 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; levels b field_1026 + f Ljava/util/Optional; options c field_51796 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction;)Ljava/util/Optional; method_53329 a method_53329 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; enchantWithLevels a method_481 + p 0 registries + p 1 levels + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53330 b method_53330 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53331 b method_53331 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/Optional;)V + p 1 condtions + p 2 levels + p 3 options + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder esv$a net/minecraft/class_106$class_107 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; levels a field_1028 + f Ljava/util/Optional; options b field_51797 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; getThis a method_483 + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; fromOptions a method_60295 + p 1 options + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 levels +c net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction esw net/minecraft/class_125 + f I NO_LIMIT a field_31854 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45833 + f Lnet/minecraft/core/Holder; enchantment c field_51798 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; value d field_1082 + f I limit e field_1083 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Ljava/lang/Integer; method_53348 a method_53348 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; lootingMultiplier a method_547 + p 0 registries + p 1 count + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53349 b method_53349 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53350 b method_53350 + m ()Z hasLimit c method_549 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Lnet/minecraft/core/Holder; method_60296 c method_60296 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;I)V + p 1 conditions + p 2 enchantment + p 3 value + p 4 limit + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder esw$a net/minecraft/class_125$class_126 + f Lnet/minecraft/core/Holder; enchantment a field_51799 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; count b field_1084 + f I limit c field_1085 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; getThis a method_552 + m (I)Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; setLimit a method_551 + p 1 limit + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 enchantment + p 2 count +c net/minecraft/world/level/storage/loot/functions/ExplorationMapFunction esx net/minecraft/class_111 + c Convert any empty maps into explorer maps that lead to a structure that is nearest to the current {@linkplain LootContextParams.ORIGIN}, if present. + f Lnet/minecraft/tags/TagKey; DEFAULT_DESTINATION a field_25032 + f Lnet/minecraft/core/Holder; DEFAULT_DECORATION b field_1034 + f B DEFAULT_ZOOM c field_31851 + f I DEFAULT_SEARCH_RADIUS d field_31852 + f Z DEFAULT_SKIP_EXISTING e field_31853 + f Lcom/mojang/serialization/MapCodec; CODEC f field_45826 + f Lnet/minecraft/tags/TagKey; destination h field_1035 + f Lnet/minecraft/core/Holder; mapDecoration i field_1036 + f B zoom j field_1037 + f I searchRadius k field_1032 + f Z skipKnownStructures l field_1033 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Boolean; method_53332 a method_53332 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53333 b method_53333 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Integer; method_53334 b method_53334 + m ()Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; makeExplorationMap c method_492 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Byte; method_53335 c method_53335 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Lnet/minecraft/core/Holder; method_53336 d method_53336 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Lnet/minecraft/tags/TagKey; method_53337 e method_53337 + m (Ljava/util/List;Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/Holder;BIZ)V + p 1 conditons + p 2 destination + p 3 mapDecoration + p 4 zoom + p 5 searchRadius + p 6 skipKnownStructures + m ()V +c net/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder esx$a net/minecraft/class_111$class_112 + f Lnet/minecraft/tags/TagKey; destination a field_1039 + f Lnet/minecraft/core/Holder; mapDecoration b field_1042 + f B zoom c field_1043 + f I searchRadius d field_1040 + f Z skipKnownStructures e field_1041 + m ()Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; getThis a method_501 + m (B)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setZoom a method_500 + p 1 zoom + m (I)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setSearchRadius a method_35521 + p 1 searchRadius + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setDestination a method_502 + p 1 destination + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setMapDecoration a method_499 + p 1 mapDecoration + m (Z)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setSkipKnownStructures a method_503 + p 1 skipKnownStructures + m ()V +c net/minecraft/world/level/storage/loot/functions/FillPlayerHead esy net/minecraft/class_3668 + c LootItemFunction that applies the {@code "SkullOwner"} NBT tag to any player heads based on the given {@link LootContext.EntityTarget}.\nIf the given target does not resolve to a player, nothing happens. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45827 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget b field_16227 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; fillPlayerHead a method_35522 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35523 a method_35523 + m (Lnet/minecraft/world/level/storage/loot/functions/FillPlayerHead;)Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; method_53338 a method_53338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53339 b method_53339 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 conditions + p 2 entityTarget + m ()V +c net/minecraft/world/level/storage/loot/functions/FilteredFunction esz net/minecraft/class_9668 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51421 + f Lnet/minecraft/advancements/critereon/ItemPredicate; filter b field_51422 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; modifier c field_51423 + m (Lnet/minecraft/world/level/storage/loot/functions/FilteredFunction;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_59739 a method_59739 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59740 b method_59740 + m (Lnet/minecraft/world/level/storage/loot/functions/FilteredFunction;)Lnet/minecraft/advancements/critereon/ItemPredicate; method_59741 b method_59741 + m (Ljava/util/List;Lnet/minecraft/advancements/critereon/ItemPredicate;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V + p 1 conditions + p 2 filter + p 3 modifier + m ()V +c net/minecraft/world/level/storage/loot/functions/FunctionReference eta net/minecraft/class_8492 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45828 + f Lorg/slf4j/Logger; LOGGER b field_44506 + f Lnet/minecraft/resources/ResourceKey; name c field_44507 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; functionReference a method_51224 + p 0 key + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_51225 a method_51225 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_51226 a method_51226 + m (Lnet/minecraft/world/level/storage/loot/functions/FunctionReference;)Lnet/minecraft/resources/ResourceKey; method_53340 a method_53340 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53341 b method_53341 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V method_51227 b method_51227 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V + p 1 conditions + p 2 name + m ()V +c net/minecraft/world/level/storage/loot/functions/FunctionUserBuilder etb net/minecraft/class_116 + c Base interface for builders that accept loot functions.\n\n@see LootItemFunction + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply a method_43739 + p 1 builderSources + p 2 toBuilderFunction + m ([Ljava/lang/Object;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply a method_43740 + p 1 builderSources + p 2 toBuilderFunction + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply b method_511 + p 1 functionBuilder + m ()Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; unwrap c method_43732 +c net/minecraft/world/level/storage/loot/functions/LimitCount etc net/minecraft/class_114 + c A LootItemFunction that limits the stack's count to fall within a given {@link IntRange}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45829 + f Lnet/minecraft/world/level/storage/loot/IntRange; limiter b field_1044 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; limitCount a method_506 + p 0 countLimit + m (Lnet/minecraft/world/level/storage/loot/IntRange;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_508 a method_508 + m (Lnet/minecraft/world/level/storage/loot/functions/LimitCount;)Lnet/minecraft/world/level/storage/loot/IntRange; method_53342 a method_53342 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53343 b method_53343 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 conditions + p 2 limiter + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation etd net/minecraft/class_9368 + f Lcom/mojang/serialization/MapCodec; UNLIMITED_CODEC a field_51424 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; mode a method_58191 + m (I)Lcom/mojang/serialization/MapCodec; codec a method_58456 + p 0 maxSize + m (II)Ljava/lang/String; method_58457 a method_58457 + m (ILnet/minecraft/world/level/storage/loot/functions/ListOperation;)Lcom/mojang/serialization/DataResult; method_58458 a method_58458 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type;)Lcom/mojang/serialization/MapCodec; method_58459 a method_58459 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; apply a method_59742 + p 1 currentValue + p 2 operand + m (Ljava/util/List;Ljava/util/List;I)Ljava/util/List; apply a method_58192 + p 1 currentValue + p 2 operand + p 3 maxSize + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Append etd$a net/minecraft/class_9368$class_9369 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Append; INSTANCE b field_49847 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC c field_49848 + f Lorg/slf4j/Logger; LOGGER d field_49849 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Append; method_58193 b method_58193 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Insert etd$b net/minecraft/class_9368$class_9370 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_49850 + f I offset c comp_2463 + f Lorg/slf4j/Logger; LOGGER d field_49851 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58194 a method_58194 + m ()I offset b comp_2463 + m (I)V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll etd$c net/minecraft/class_9368$class_9371 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll; INSTANCE b field_49852 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC c field_49853 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll; method_58195 b method_58195 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceSection etd$d net/minecraft/class_9368$class_9372 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_49854 + f I offset c comp_2464 + f Ljava/util/Optional; size d comp_2465 + f Lorg/slf4j/Logger; LOGGER e field_49855 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58196 a method_58196 + m ()I offset b comp_2464 + m ()Ljava/util/Optional; size c comp_2465 + m (I)V + p 1 offset + m (ILjava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone etd$e net/minecraft/class_9368$class_9677 + f Ljava/util/List; value a comp_2651 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; operation b comp_2652 + m ()Ljava/util/List; value a comp_2651 + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; codec a method_59828 + p 0 elementCodec + p 1 maxSize + m (Lcom/mojang/serialization/Codec;ILcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59829 a method_59829 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_59830 a method_59830 + m (Ljava/util/List;)Ljava/util/List; apply a method_59831 + p 1 list + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation; operation b comp_2652 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Ljava/util/List; method_59832 b method_59832 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Type etd$f net/minecraft/class_9368$class_9373 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; REPLACE_ALL a field_49856 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; REPLACE_SECTION b field_49857 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; INSERT c field_49858 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; APPEND d field_49859 + f Lcom/mojang/serialization/Codec; CODEC e field_49860 + f Ljava/lang/String; id f field_49862 + f Lcom/mojang/serialization/MapCodec; mapCodec g field_49863 + f [Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; $VALUES h field_49864 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_58197 + m ()[Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; $values b method_58199 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 id + p 4 mapCodec + m ()V +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction ete net/minecraft/class_120 + c A LootItemFunction that only modifies the stacks if a list of {@linkplain LootItemCondition predicates} passes. + f Ljava/util/function/Predicate; compositePredicates a field_1048 + f Ljava/util/List; predicates g field_1047 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; commonFields a method_53344 + p 0 instance + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; run a method_522 + c Called to perform the actual action of this function, after conditions have been checked. + p 1 stack + p 2 context + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction;)Ljava/util/List; method_53345 a method_53345 + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; simpleBuilder a method_520 + p 0 constructor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; apply b method_521 + p 1 stack + p 2 context + m (Ljava/util/List;)V + p 1 predicates +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder ete$a net/minecraft/class_120$class_121 + f Lcom/google/common/collect/ImmutableList$Builder; conditions a field_1049 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; when a method_524 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; getThis c method_523 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; unwrap f method_525 + m ()Ljava/util/List; getConditions g method_526 + m ()V +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$DummyBuilder ete$b net/minecraft/class_120$class_122 + f Ljava/util/function/Function; constructor a field_1050 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$DummyBuilder; getThis a method_527 + m (Ljava/util/function/Function;)V + p 1 constructor +c net/minecraft/world/level/storage/loot/functions/LootItemFunction etf net/minecraft/class_117 + c A LootItemFunction modifies an ItemStack based on the current LootContext.\n\n@see LootItemFunctions + m (Ljava/util/function/BiFunction;Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/function/Consumer; decorate a method_513 + c Create a decorated Consumer. The resulting consumer will first apply {@code stackModification} to all stacks before passing them on to {@code originalConsumer}. + p 0 stackModification + p 1 originalConsumer + p 2 lootContext + m (Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)V method_514 a method_514 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; getType b method_29321 +c net/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder etf$a net/minecraft/class_117$class_118 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; build b method_515 +c net/minecraft/world/level/storage/loot/functions/LootItemFunctionType etg net/minecraft/class_5339 + c The SerializerType for {@link LootItemFunction}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1858 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1858 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/functions/LootItemFunctions eth net/minecraft/class_131 + c Registry for {@link LootItemFunction} + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_LORE A field_25231 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FILL_PLAYER_HEAD B field_25232 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_CUSTOM_DATA C field_49443 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_STATE D field_25234 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_BANNER_PATTERN E field_27342 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_POTION F field_35079 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_INSTRUMENT G field_39060 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; REFERENCE H field_44508 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SEQUENCE I field_45830 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_COMPONENTS J field_49440 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_FIREWORKS K field_49865 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_FIREWORK_EXPLOSION L field_49866 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_BOOK_COVER M field_49867 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_WRITTEN_BOOK_PAGES N field_49868 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_WRITABLE_BOOK_PAGES O field_49869 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; TOGGLE_TOOLTIPS P field_50022 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_OMINOUS_BOTTLE_AMPLIFIER Q field_50207 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CUSTOM_MODEL_DATA R field_51425 + f Ljava/util/function/BiFunction; IDENTITY a field_1102 + f Lcom/mojang/serialization/Codec; TYPED_CODEC b field_45831 + f Lcom/mojang/serialization/Codec; ROOT_CODEC c field_50023 + f Lcom/mojang/serialization/Codec; CODEC d field_45832 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_COUNT e field_25214 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ITEM f field_51426 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANT_WITH_LEVELS g field_25215 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANT_RANDOMLY h field_25216 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ENCHANTMENTS i field_27906 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CUSTOM_DATA j field_49441 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_COMPONENTS k field_49442 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FURNACE_SMELT l field_25218 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANTED_COUNT_INCREASE m field_51800 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_DAMAGE n field_25220 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ATTRIBUTES o field_25221 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_NAME p field_25222 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; EXPLORATION_MAP q field_25223 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_STEW_EFFECT r field_25224 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_NAME s field_25225 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CONTENTS t field_25226 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; MODIFY_CONTENTS u field_51427 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FILTERED v field_51428 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; LIMIT_COUNT w field_25227 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; APPLY_BONUS x field_25228 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_LOOT_TABLE y field_25229 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; EXPLOSION_DECAY z field_25230 + m ()Lcom/mojang/serialization/Codec; method_53346 a method_53346 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_592 a method_592 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; register a method_29323 + p 0 name + p 1 codec + m (Ljava/util/List;)Ljava/util/function/BiFunction; compose a method_594 + p 0 functions + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_53347 a method_53347 + m (Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_591 a method_591 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ModifyContainerContents eti net/minecraft/class_9669 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51429 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51430 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; modifier c field_51431 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_59743 a method_59743 + m (Lnet/minecraft/world/level/storage/loot/functions/ModifyContainerContents;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_59744 a method_59744 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59745 b method_59745 + m (Lnet/minecraft/world/level/storage/loot/functions/ModifyContainerContents;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_59746 b method_59746 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V + p 1 conditions + p 2 components + p 3 modifier + m ()V +c net/minecraft/world/level/storage/loot/functions/SequenceFunction etj net/minecraft/class_5641 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45834 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45835 + f Ljava/util/List; functions c field_27904 + f Ljava/util/function/BiFunction; compositeFunction d field_27905 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53351 a method_53351 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; apply a method_32405 + p 1 stack + p 2 context + m (Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction;)Ljava/util/List; method_53352 a method_53352 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction; of a method_53353 + p 0 functions + m (Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction;)Ljava/util/List; method_53354 b method_53354 + m (Ljava/util/List;)V + p 1 functions + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction etk net/minecraft/class_137 + c LootItemFunction that adds a list of attribute modifiers to the stacks. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45836 + f Ljava/util/List; modifiers b field_1105 + f Z replace c field_51360 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder; modifier a method_35524 + p 0 id + p 1 attribute + p 2 operation + p 3 amount + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_57647 a method_57647 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; updateModifiers a method_59544 + p 1 context + p 2 modifiers + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier;)Ljava/util/stream/Stream; method_32406 a method_32406 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction;)Ljava/lang/Boolean; method_59545 a method_59545 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53356 b method_53356 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction;)Ljava/util/List; method_53355 b method_53355 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; setAttributes c method_35525 + m (Ljava/util/List;Ljava/util/List;Z)V + p 1 conditions + p 2 modifiers + p 3 replace + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder etk$a net/minecraft/class_137$class_6155 + f Z replace a field_51361 + f Ljava/util/List; modifiers b field_31855 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; getThis a method_35526 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; withModifier a method_35527 + p 1 modifierBuilder + m (Z)V + p 1 replace + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier etk$b net/minecraft/class_137$class_138 + f Lcom/mojang/serialization/Codec; CODEC a field_45837 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1864 + f Lnet/minecraft/core/Holder; attribute c comp_1860 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation d comp_1861 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount e comp_1862 + f Ljava/util/List; slots f comp_1863 + f Lcom/mojang/serialization/Codec; SLOTS_CODEC g field_45838 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1864 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/List; method_53357 a method_53357 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53358 a method_53358 + m (Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_53359 a method_53359 + m ()Lnet/minecraft/core/Holder; attribute b comp_1860 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_1861 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount d comp_1862 + m ()Ljava/util/List; slots e comp_1863 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder etk$c net/minecraft/class_137$class_6156 + f Lnet/minecraft/resources/ResourceLocation; id a field_31860 + f Lnet/minecraft/core/Holder; attribute b field_31857 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c field_31858 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount d field_31859 + f Ljava/util/Set; slots e field_31861 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier; build a method_35528 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder; forSlot a method_35529 + p 1 slot + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 id + p 2 attribute + p 3 operation + p 4 amount +c net/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction etl net/minecraft/class_5592 + c LootItemFunction that sets the banner patterns for a banner item. Optionally appends to any existing patterns. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45839 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; patterns b field_27343 + f Z append c field_27344 + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_57648 a method_57648 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction;)Ljava/lang/Boolean; method_53360 a method_53360 + m (Z)Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; setBannerPattern a method_35531 + p 0 append + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53361 b method_53361 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_53362 b method_53362 + m (Ljava/util/List;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Z)V + p 1 conditions + p 2 patterns + p 3 append + m ()V +c net/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder etl$a net/minecraft/class_5592$class_6157 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; patterns a field_31862 + f Z append b field_31863 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; getThis a method_35532 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; addPattern a method_35533 + p 1 pattern + p 2 color + m (Z)V + p 1 append +c net/minecraft/world/level/storage/loot/functions/SetBookCoverFunction etm net/minecraft/class_9374 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49870 + f Ljava/util/Optional; author b field_49871 + f Ljava/util/Optional; title c field_49872 + f Ljava/util/Optional; generation d field_49873 + m (Lnet/minecraft/world/item/component/WrittenBookContent;)Lnet/minecraft/world/item/component/WrittenBookContent; apply a method_58200 + p 1 writtenBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58201 a method_58201 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58202 b method_58202 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58203 b method_58203 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58204 c method_58204 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditons + p 2 title + p 3 author + p 4 generation + m ()V +c net/minecraft/world/level/storage/loot/functions/SetComponentsFunction etn net/minecraft/class_9320 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49444 + f Lnet/minecraft/core/component/DataComponentPatch; components b field_49445 + m (Lnet/minecraft/world/level/storage/loot/functions/SetComponentsFunction;)Lnet/minecraft/core/component/DataComponentPatch; method_57649 a method_57649 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setComponent a method_57650 + p 0 component + p 1 value + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_57651 a method_57651 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57652 b method_57652 + m (Ljava/util/List;Lnet/minecraft/core/component/DataComponentPatch;)V + p 1 condition + p 2 components + m ()V +c net/minecraft/world/level/storage/loot/functions/SetContainerContents eto net/minecraft/class_134 + c LootItemFunction that sets the contents of a container such as a chest by setting the {@code BlocKEntityTag} of the stacks.\nThe contents are based on a list of loot pools. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45841 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51432 + f Ljava/util/List; entries c field_1103 + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; setContents a method_601 + p 0 component + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/stream/Stream$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry;)V method_600 a method_600 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/stream/Stream$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer;)V method_599 a method_599 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents;)Ljava/util/List; method_53363 a method_53363 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53364 b method_53364 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_53365 b method_53365 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;Ljava/util/List;)V + p 1 conditions + p 2 component + p 3 entries + m ()V +c net/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder eto$a net/minecraft/class_134$class_135 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_1104 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51433 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; getThis a method_603 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; withEntry a method_602 + p 1 lootEntryBuilder + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)V + p 1 component +c net/minecraft/world/level/storage/loot/functions/SetContainerLootTable etp net/minecraft/class_144 + c LootItemFunction that sets the LootTable and optionally the loot table seed on the stack's {@code BlockEntityTag}. The effect of this is that containers such as chests will receive the given LootTable when placed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45842 + f Lnet/minecraft/resources/ResourceKey; name b field_1116 + f J seed c field_1117 + f Lnet/minecraft/core/Holder; type d field_34773 + m (Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35536 a method_35536 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35537 a method_35537 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; withLootTable a method_35534 + p 0 type + p 1 toolTable + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/resources/ResourceKey;J)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; withLootTable a method_35535 + p 0 type + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Lnet/minecraft/core/Holder; method_53366 a method_53366 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53367 b method_53367 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Ljava/lang/Long; method_53368 b method_53368 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Lnet/minecraft/resources/ResourceKey; method_53369 c method_53369 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/core/Holder;)V + p 1 conditions + p 2 name + p 3 seed + p 5 type + m ()V +c net/minecraft/world/level/storage/loot/functions/SetCustomDataFunction etq net/minecraft/class_159 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45849 + f Lnet/minecraft/nbt/CompoundTag; tag b field_1138 + m (Lnet/minecraft/world/level/storage/loot/functions/SetCustomDataFunction;)Lnet/minecraft/nbt/CompoundTag; method_53391 a method_53391 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCustomData a method_57654 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_675 a method_675 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53392 b method_53392 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57655 b method_57655 + m (Ljava/util/List;Lnet/minecraft/nbt/CompoundTag;)V + p 1 conditions + p 2 tag + m ()V +c net/minecraft/world/level/storage/loot/functions/SetCustomModelDataFunction etr net/minecraft/class_9670 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51434 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; valueProvider b field_51435 + m (Lnet/minecraft/world/level/storage/loot/functions/SetCustomModelDataFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_59747 a method_59747 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59748 b method_59748 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 conditions + p 2 valueProvider + m ()V +c net/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction ets net/minecraft/class_5642 + c LootItemFunction that sets a stack's enchantments. If {@code add} is set, will add to any already existing enchantment levels instead of replacing them (ignored for enchanted books). + f Lcom/mojang/serialization/MapCodec; CODEC a field_45843 + f Ljava/util/Map; enchantments b field_27907 + f Z add c field_27908 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V method_60297 a method_60297 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57657 a method_57657 + m (Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction;)Ljava/lang/Boolean; method_53370 a method_53370 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Ljava/util/stream/Stream; method_32409 a method_32409 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53371 b method_53371 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V method_57656 b method_57656 + m (Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction;)Ljava/util/Map; method_53372 b method_53372 + m (Ljava/util/List;Ljava/util/Map;Z)V + p 1 conditions + p 2 enchantments + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder ets$a net/minecraft/class_5642$class_6158 + f Lcom/google/common/collect/ImmutableMap$Builder; enchantments a field_31864 + f Z add b field_31865 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder; getThis a method_35538 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder; withEnchantment a method_35539 + p 1 enchantment + p 2 level + m ()V + m (Z)V + p 1 add +c net/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction ett net/minecraft/class_9375 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49874 + f Lnet/minecraft/world/item/component/FireworkExplosion; DEFAULT_VALUE b field_49875 + f Ljava/util/Optional; shape c field_49876 + f Ljava/util/Optional; colors d field_49877 + f Ljava/util/Optional; fadeColors e field_49878 + f Ljava/util/Optional; trail f field_49879 + f Ljava/util/Optional; twinkle h field_49880 + m (Lnet/minecraft/world/item/component/FireworkExplosion;)Lnet/minecraft/world/item/component/FireworkExplosion; apply a method_58205 + p 1 fireworkExplosion + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58206 a method_58206 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58207 b method_58207 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58208 b method_58208 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58209 c method_58209 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58210 d method_58210 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58211 e method_58211 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 shape + p 3 colors + p 4 fadeColors + p 5 trail + p 6 twinkle + m ()V +c net/minecraft/world/level/storage/loot/functions/SetFireworksFunction etu net/minecraft/class_9376 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49881 + f Lnet/minecraft/world/item/component/Fireworks; DEFAULT_VALUE b field_49882 + f Ljava/util/Optional; explosions c field_49883 + f Ljava/util/Optional; flightDuration d field_49885 + m (Lnet/minecraft/world/item/component/Fireworks;)Lnet/minecraft/world/item/component/Fireworks; apply a method_58212 + p 1 fireworks + m (Lnet/minecraft/world/item/component/Fireworks;Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Ljava/util/List; method_59833 a method_59833 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworksFunction;)Ljava/util/Optional; method_58215 a method_58215 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58214 b method_58214 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworksFunction;)Ljava/util/Optional; method_58216 b method_58216 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 explosions + p 3 flightDuration + m ()V +c net/minecraft/world/level/storage/loot/functions/SetInstrumentFunction etv net/minecraft/class_7431 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45844 + f Lnet/minecraft/tags/TagKey; options b field_39184 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setInstrumentOptions a method_43571 + p 0 instrumentOptions + m (Lnet/minecraft/tags/TagKey;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_43743 a method_43743 + m (Lnet/minecraft/world/level/storage/loot/functions/SetInstrumentFunction;)Lnet/minecraft/tags/TagKey; method_53373 a method_53373 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53374 b method_53374 + m (Ljava/util/List;Lnet/minecraft/tags/TagKey;)V + p 1 conditions + p 2 options + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemCountFunction etw net/minecraft/class_141 + c LootItemFunction that sets the stack's count based on a {@link NumberProvider}, optionally adding to any existing count. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45845 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; value b field_1114 + f Z add c field_27909 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemCountFunction;)Ljava/lang/Boolean; method_53375 a method_53375 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCount a method_621 + p 0 countValue + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_620 a method_620 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCount a method_35540 + p 0 countValue + p 1 add + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;ZLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35541 a method_35541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53376 b method_53376 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemCountFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53377 b method_53377 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)V + p 1 conditions + p 2 value + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemDamageFunction etx net/minecraft/class_149 + c LootItemFunction that sets the stack's damage based on a {@link NumberProvider}, optionally adding to any existing damage. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45846 + f Lorg/slf4j/Logger; LOGGER b field_1121 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; damage c field_1120 + f Z add d field_27910 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemDamageFunction;)Ljava/lang/Boolean; method_53378 a method_53378 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setDamage a method_633 + p 0 damageValue + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_634 a method_634 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setDamage a method_35542 + p 0 damageValue + p 1 add + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;ZLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35543 a method_35543 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53379 b method_53379 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemDamageFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53380 b method_53380 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)V + p 1 conditions + p 2 damage + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemFunction ety net/minecraft/class_9671 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51436 + f Lnet/minecraft/core/Holder; item b field_51437 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemFunction;)Lnet/minecraft/core/Holder; method_59749 a method_59749 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59750 b method_59750 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 conditions + p 2 item + m ()V +c net/minecraft/world/level/storage/loot/functions/SetLoreFunction etz net/minecraft/class_3671 + c LootItemFunction that sets a stack's lore tag, optionally replacing any previously present lore.\nThe Components for the lore tag are optionally resolved relative to a given {@link LootContext.EntityTarget} for entity-sensitive component data such as scoreboard scores. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45847 + f Ljava/util/List; lore b field_16231 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; mode c field_50024 + f Ljava/util/Optional; resolutionContext d field_16233 + m (Lnet/minecraft/world/item/component/ItemLore;Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/List; updateLore a method_57658 + p 1 itemLore + p 2 context + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/Set; method_53381 a method_53381 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/component/ItemLore;)Lnet/minecraft/world/item/component/ItemLore; method_57659 a method_57659 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Ljava/util/Optional; method_53382 a method_53382 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53383 b method_53383 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_53385 b method_53385 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setLore c method_35544 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Ljava/util/List; method_53384 c method_53384 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;Ljava/util/Optional;)V + p 1 conditions + p 2 lore + p 3 mode + p 4 resolutionContext + m ()V +c net/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder etz$a net/minecraft/class_3671$class_6159 + f Ljava/util/Optional; resolutionContext a field_31867 + f Lcom/google/common/collect/ImmutableList$Builder; lore b field_31868 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; mode c field_50025 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; getThis a method_35545 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setResolutionContext a method_35546 + p 1 resolutionContext + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setMode a method_58460 + p 1 mode + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; addLine a method_35547 + p 1 line + m ()V +c net/minecraft/world/level/storage/loot/functions/SetNameFunction eua net/minecraft/class_3670 + c LootItemFunction that sets a stack's name.\nThe Component for the name is optionally resolved relative to a given {@link LootContext.EntityTarget} for entity-sensitive component data such as scoreboard scores. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45848 + f Lorg/slf4j/Logger; LOGGER b field_16230 + f Ljava/util/Optional; name c field_16228 + f Ljava/util/Optional; resolutionContext d field_16229 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; target e field_50208 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/network/chat/Component;)V method_53386 a method_53386 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/Set; method_53387 a method_53387 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/function/UnaryOperator; createResolver a method_16190 + c Create a UnaryOperator that resolves Components based on the given LootContext and EntityTarget.\nThis will replace for example score components. + p 0 lootContext + p 1 resolutionContext + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_16189 a method_16189 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; method_58733 a method_58733 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_16191 a method_16191 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35551 a method_35551 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setName a method_35549 + p 0 name + p 1 target + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setName a method_35550 + p 0 name + p 1 target + p 2 resolutionContext + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35552 a method_35552 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53389 b method_53389 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Ljava/util/Optional; method_53388 b method_53388 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Ljava/util/Optional; method_53390 c method_53390 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;)V + p 1 conditions + p 2 name + p 3 resolutionContext + p 4 target + m ()V +c net/minecraft/world/level/storage/loot/functions/SetNameFunction$Target eua$a net/minecraft/class_3670$class_9475 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; CUSTOM_NAME a field_50210 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; ITEM_NAME b field_50211 + f Lcom/mojang/serialization/Codec; CODEC c field_50212 + f Ljava/lang/String; name d field_50213 + f [Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; $VALUES e field_50214 + m ()Lnet/minecraft/core/component/DataComponentType; component a method_58734 + m ()[Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; $values b method_58735 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/SetOminousBottleAmplifierFunction eub net/minecraft/class_9476 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50215 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amplifierGenerator b field_50216 + m (Lnet/minecraft/world/level/storage/loot/functions/SetOminousBottleAmplifierFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_58736 a method_58736 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setAmplifier a method_58737 + p 0 amplifier + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_58738 a method_58738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58739 b method_58739 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amplifier c method_58740 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 conditions + p 2 amplifierGenerator + m ()V +c net/minecraft/world/level/storage/loot/functions/SetPotionFunction euc net/minecraft/class_6662 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45850 + f Lnet/minecraft/core/Holder; potion b field_35080 + m (Lnet/minecraft/world/level/storage/loot/functions/SetPotionFunction;)Lnet/minecraft/core/Holder; method_53393 a method_53393 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setPotion a method_38927 + p 0 potion + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_38928 a method_38928 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53394 b method_53394 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 conditions + p 2 potion + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction eud net/minecraft/class_152 + c LootItemFunction that adds an effect to any suspicious stew items. A random effect is chosen from the given map every time. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45851 + f Lcom/mojang/serialization/Codec; EFFECTS_LIST b field_45852 + f Ljava/util/List; effects c field_45853 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry;)Ljava/util/stream/Stream; method_32421 a method_32421 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction;)Ljava/util/List; method_53395 a method_53395 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_53396 a method_53396 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53397 b method_53397 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry;)Ljava/lang/String; method_53398 b method_53398 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; stewEffect c method_637 + m (Ljava/util/List;Ljava/util/List;)V + p 1 conditions + p 2 effects + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder eud$a net/minecraft/class_152$class_153 + f Lcom/google/common/collect/ImmutableList$Builder; effects a field_1123 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; getThis a method_639 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; withEffect a method_640 + p 1 effect + p 2 amplifier + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry eud$b net/minecraft/class_152$class_8754 + f Lcom/mojang/serialization/Codec; CODEC a field_45854 + f Lnet/minecraft/core/Holder; effect b comp_1865 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; duration c comp_1866 + m ()Lnet/minecraft/core/Holder; effect a comp_1865 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53399 a method_53399 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; duration b comp_1866 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction eue net/minecraft/class_9377 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49886 + f Ljava/util/List; pages b field_49887 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; pageOperation c field_49888 + m (Lnet/minecraft/world/item/component/WritableBookContent;)Lnet/minecraft/world/item/component/WritableBookContent; apply a method_58217 + p 1 writableBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_58218 a method_58218 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58219 b method_58219 + m (Lnet/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction;)Ljava/util/List; method_58220 b method_58220 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V + p 1 conditions + p 2 pages + p 3 pageOperation + m ()V +c net/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction euf net/minecraft/class_9378 + f Lcom/mojang/serialization/Codec; PAGE_CODEC a field_50026 + f Lcom/mojang/serialization/MapCodec; CODEC b field_49889 + f Ljava/util/List; pages c field_49890 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; pageOperation d field_49891 + m (Lnet/minecraft/world/item/component/WrittenBookContent;)Lnet/minecraft/world/item/component/WrittenBookContent; apply a method_58221 + p 1 writtenBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_58222 a method_58222 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/serialization/DataResult; method_58461 a method_58461 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; method_58462 a method_58462 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58223 b method_58223 + m (Lnet/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction;)Ljava/util/List; method_58224 b method_58224 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V + p 1 conditions + p 2 pages + p 3 pageOperation + m ()V +c net/minecraft/world/level/storage/loot/functions/SmeltItemFunction eug net/minecraft/class_165 + c LootItemFunction that tries to smelt any items using {@link RecipeType.SMELTING}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45855 + f Lorg/slf4j/Logger; LOGGER b field_1159 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53400 b method_53400 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; smelted c method_724 + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips euh net/minecraft/class_9429 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50027 + f Ljava/util/Map; TOGGLES b field_50028 + f Lcom/mojang/serialization/Codec; TOGGLE_CODEC c field_50029 + f Ljava/util/Map; values d field_50030 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle;Ljava/lang/Boolean;)V method_58463 a method_58463 + m (Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle;)Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle; method_58464 a method_58464 + m (Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips;)Ljava/util/Map; method_58465 a method_58465 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_58466 a method_58466 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58467 b method_58467 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_58468 b method_58468 + m (Ljava/util/List;Ljava/util/Map;)V + p 1 conditions + p 2 values + m ()V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle euh$a net/minecraft/class_9429$class_9430 + f Lnet/minecraft/core/component/DataComponentType; type a comp_2523 + f Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither; setter b comp_2524 + m ()Lnet/minecraft/core/component/DataComponentType; type a comp_2523 + m (Lnet/minecraft/world/item/ItemStack;Z)V applyIfPresent a method_58469 + p 1 stack + p 2 showTooltip + m ()Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither; setter b comp_2524 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither;)V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither euh$b net/minecraft/class_9429$class_9431 +c net/minecraft/world/level/storage/loot/functions/package-info eui net/minecraft/class_6160 +c net/minecraft/world/level/storage/loot/package-info euj net/minecraft/class_6161 +c net/minecraft/world/level/storage/loot/parameters/LootContextParam euk net/minecraft/class_169 + c A parameter of a {@link LootContext}.\n\n@see LootContextParams + f Lnet/minecraft/resources/ResourceLocation; name a field_1162 + m ()Lnet/minecraft/resources/ResourceLocation; getName a method_746 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 name +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSet eul net/minecraft/class_176 + c A LootContextParamSet defines a set of required and optional {@link LootContextParam}s.\nThis is used to validate that conditions, functions and other {@link LootContextUser}s only use those parameters that are present for the given loot table.\n\n@see LootContextParamSets\n@see ValidationContext + f Ljava/util/Set; required a field_1216 + f Ljava/util/Set; all b field_1215 + m ()Ljava/util/Set; getRequired a method_778 + c Gets only the required parameters + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_776 + p 1 problemReporter + p 2 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_60298 + c Validate that all parameters referenced by the given LootContextUser are present in this set. + p 1 validationContext + p 2 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z isAllowed a method_35553 + c Whether the given parameter is allowed in this set. + p 1 param + m ()Ljava/util/Set; getAllowed b method_777 + c Gets the required and optional parameters + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/String; method_779 b method_779 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; builder c method_35554 + m (Ljava/util/Set;Ljava/util/Set;)V + p 1 required + p 2 optional +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder eul$a net/minecraft/class_176$class_177 + f Ljava/util/Set; required a field_1218 + f Ljava/util/Set; optional b field_1217 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; build a method_782 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; required a method_781 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; optional b method_780 + p 1 parameter + m ()V +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSets eum net/minecraft/class_173 + c Registry for {@link LootContextParamSet}s. + f Lcom/mojang/serialization/Codec; CODEC a field_45856 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; EMPTY b field_1175 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; CHEST c field_1179 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; COMMAND d field_20761 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; SELECTOR e field_20762 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; FISHING f field_1176 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENTITY g field_1173 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; EQUIPMENT h field_50217 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ARCHAEOLOGY i field_42858 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; GIFT j field_16235 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; PIGLIN_BARTER k field_22403 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; VAULT l field_48928 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_REWARD m field_1174 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_ENTITY n field_24423 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_LOCATION o field_44788 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; BLOCK_USE p field_48381 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ALL_PARAMS q field_1177 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; BLOCK r field_1172 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; SHEARING s field_49446 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_DAMAGE t field_51801 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_ITEM u field_51802 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_LOCATION v field_51803 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_ENTITY w field_51804 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; HIT_BLOCK x field_52067 + f Lcom/google/common/collect/BiMap; REGISTRY y field_1178 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53401 a method_53401 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60792 a method_60792 + m (Ljava/lang/String;Ljava/util/function/Consumer;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; register a method_759 + p 0 registryName + p 1 builderConsumer + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53402 b method_53402 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60299 b method_60299 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_53403 c method_53403 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60300 c method_60300 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60301 d method_60301 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60302 e method_60302 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_57660 f method_57660 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_760 g method_760 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_763 h method_763 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_56128 i method_56128 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_51722 j method_51722 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_27863 k method_27863 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_756 l method_756 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_56818 m method_56818 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_24800 n method_24800 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_49269 o method_49269 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_49270 p method_49270 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_58741 q method_58741 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_758 r method_758 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_764 s method_764 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_22577 t method_22577 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_22578 u method_22578 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_15970 v method_15970 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_755 w method_755 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/parameters/LootContextParams eun net/minecraft/class_181 + c Holds all known LootContextParams. + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; THIS_ENTITY a field_1226 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; LAST_DAMAGE_PLAYER b field_1233 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; DAMAGE_SOURCE c field_1231 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ATTACKING_ENTITY d field_1230 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; DIRECT_ATTACKING_ENTITY e field_1227 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ORIGIN f field_24424 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; BLOCK_STATE g field_1224 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; BLOCK_ENTITY h field_1228 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; TOOL i field_1229 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; EXPLOSION_RADIUS j field_1225 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ENCHANTMENT_LEVEL k field_51805 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ENCHANTMENT_ACTIVE l field_51806 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; create a method_798 + p 0 id + m ()V + m ()V +c net/minecraft/world/level/storage/loot/parameters/package-info euo net/minecraft/class_6162 +c net/minecraft/world/level/storage/loot/predicates/AllOfCondition eup net/minecraft/class_8548 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45857 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45858 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition; allOf a method_53404 + p 0 conditions + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder; allOf a method_51723 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder eup$a net/minecraft/class_8548$class_8549 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V +c net/minecraft/world/level/storage/loot/predicates/AnyOfCondition euq net/minecraft/class_8551 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45859 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; anyOf a method_51727 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder euq$a net/minecraft/class_8551$class_8552 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V +c net/minecraft/world/level/storage/loot/predicates/BonusLevelTableCondition eur net/minecraft/class_182 + c A LootItemCondition that provides a random chance based on the level of a certain enchantment on the {@linkplain LootContextParams#TOOL tool}.\nThe chances are given as an array of float values that represent the given chance (0..1) for the enchantment level corresponding to the index.\n{@code [0.2, 0.3, 0.6]} would provide a 20% chance for not enchanted, 30% chance for enchanted at level 1 and 60% chance for enchanted at level 2 or above. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45860 + f Lnet/minecraft/core/Holder; enchantment b comp_1867 + f Ljava/util/List; values c comp_1868 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53405 a method_53405 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_799 + p 1 context + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_801 a method_801 + m (Lnet/minecraft/core/Holder;[F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; bonusLevelFlatChance a method_800 + p 0 enchantment + p 1 values + m ()Lnet/minecraft/core/Holder; enchantment c comp_1867 + m ()Ljava/util/List; values d comp_1868 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition eus net/minecraft/class_186 + f Ljava/util/function/Predicate; composedPredicate a field_1247 + f Ljava/util/List; terms c field_1246 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_825 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition;)Ljava/util/List; method_53406 a method_53406 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; createCodec a method_53407 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53408 a method_53408 + m (Lnet/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition;)Ljava/util/List; method_53409 b method_53409 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; createInlineCodec b method_53410 + p 0 factory + m (Ljava/util/List;Ljava/util/function/Predicate;)V + p 1 terms + p 2 composedPredicate +c net/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition$Builder eus$a net/minecraft/class_186$class_187 + f Lcom/google/common/collect/ImmutableList$Builder; terms a field_1248 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V addTerm a method_51730 + p 1 condition + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; create a method_51724 + p 1 conditions + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V + p 1 conditions +c net/minecraft/world/level/storage/loot/predicates/ConditionReference eut net/minecraft/class_4568 + c A LootItemCondition that refers to another LootItemCondition by its ID. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45861 + f Lnet/minecraft/resources/ResourceKey; name b comp_1869 + f Lorg/slf4j/Logger; LOGGER c field_20763 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; conditionReference a method_35555 + p 0 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53411 a method_53411 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_22579 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_51230 a method_51230 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_35556 b method_35556 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V method_51231 b method_51231 + m ()Lnet/minecraft/resources/ResourceKey; name c comp_1869 + m (Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder euu net/minecraft/class_192 + c Base interface for builders that can accept loot conditions.\n\n@see LootItemCondition + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; when a_ method_43744 + p 1 builderSources + p 2 toBuilderFunction + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; when b method_840 + p 1 conditionBuilder + m ()Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; unwrap d method_512 +c net/minecraft/world/level/storage/loot/predicates/DamageSourceCondition euv net/minecraft/class_190 + c A LootItemCondition which checks {@link LootContextParams#ORIGIN} and {@link LootContextParams#DAMAGE_SOURCE} against a {@link DamageSourcePredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45862 + f Ljava/util/Optional; predicate b comp_1870 + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasDamageSource a method_837 + p 0 builder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53412 a method_53412 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_834 + p 1 context + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_836 b method_836 + m ()Ljava/util/Optional; predicate c comp_1870 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/EnchantmentActiveCheck euw net/minecraft/class_9752 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51807 + f Z active b comp_2780 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60303 a method_60303 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_60304 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; enchantmentActiveCheck c method_60305 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; enchantmentInactiveCheck d method_60306 + m ()Z active e comp_2780 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60307 f method_60307 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60308 g method_60308 + m (Z)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition eux net/minecraft/class_199 + c A LootItemCondition that checks if an Entity selected by a {@link LootContext.EntityTarget} has a given set of scores.\nIf one of the given objectives does not exist or the entity does not have a score for that objective, the condition fails. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45863 + f Ljava/util/Map; scores b comp_1871 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget c comp_1872 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53413 a method_53413 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/stream/Stream; method_32422 a method_32422 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder; hasScores a method_35557 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_864 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/IntRange;)Z hasScore a method_865 + p 1 lootContext + p 2 targetEntity + p 3 scoreboard + p 4 objectiveName + p 5 scoreRange + m ()Ljava/util/Map; scores c comp_1871 + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget d comp_1872 + m (Ljava/util/Map;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 scores + p 2 entityTarget + m ()V +c net/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder eux$a net/minecraft/class_199$class_6163 + f Lcom/google/common/collect/ImmutableMap$Builder; scores a field_31869 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget b field_31870 + m (Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder; withScore a method_35558 + c Add a check that the score for the given {@code objectiveName} is within {@code scoreRange}. + p 1 objectiveName + p 2 scoreRange + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 entityTarget +c net/minecraft/world/level/storage/loot/predicates/ExplosionCondition euy net/minecraft/class_201 + c A LootItemCondition that checks whether an item should survive from an explosion or not.\nThis condition checks the {@linkplain LootContextParams#EXPLOSION_RADIUS explosion radius loot parameter}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45864 + f Lnet/minecraft/world/level/storage/loot/predicates/ExplosionCondition; INSTANCE b field_1280 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_869 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; survivesExplosion c method_871 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_872 d method_872 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/InvertedLootItemCondition euz net/minecraft/class_207 + c A LootItemCondition that inverts the output of another one. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45865 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; term b comp_1873 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53414 a method_53414 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_888 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/InvertedLootItemCondition;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_887 a method_887 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; invert a method_889 + p 0 toInvert + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; term c comp_1873 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)V + p 1 term + m ()V +c net/minecraft/world/level/storage/loot/predicates/LocationCheck eva net/minecraft/class_205 + c LootItemCondition that checks the {@link LootContextParams.ORIGIN} position against a {@link LocationPredicate} after applying an offset to the origin position. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45866 + f Ljava/util/Optional; predicate b comp_1874 + f Lnet/minecraft/core/BlockPos; offset c comp_1875 + f Lcom/mojang/serialization/MapCodec; OFFSET_CODEC g field_45867 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53415 a method_53415 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; checkLocation a method_884 + p 0 locationPredicateBuilder + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; checkLocation a method_30151 + p 0 locationPredicateBuilder + p 1 offset + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_881 + p 1 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53416 b method_53416 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_882 b method_882 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_30152 b method_30152 + m ()Ljava/util/Optional; predicate c comp_1874 + m ()Lnet/minecraft/core/BlockPos; offset d comp_1875 + m (Ljava/util/Optional;Lnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition evb net/minecraft/class_212 + c A LootItemCondition that checks whether the {@linkplain LootContextParams#BLOCK_STATE block state} matches a given Block and {@link StatePropertiesPredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45868 + f Lnet/minecraft/core/Holder; block b comp_1876 + f Ljava/util/Optional; properties c comp_1877 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53417 a method_53417 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder; hasBlockStateProperties a method_900 + p 0 block + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_899 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;)Lcom/mojang/serialization/DataResult; validate a method_53418 + p 0 condition + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_53419 a method_53419 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53420 a method_53420 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Ljava/lang/String;)Ljava/lang/String; method_53421 b method_53421 + m ()Lnet/minecraft/core/Holder; block c comp_1876 + m ()Ljava/util/Optional; properties d comp_1877 + m (Lnet/minecraft/core/Holder;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder evb$a net/minecraft/class_212$class_213 + f Lnet/minecraft/core/Holder; block a field_1290 + f Ljava/util/Optional; properties b field_1291 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder; setProperties a method_22584 + p 1 statePredicateBuilder + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/storage/loot/predicates/LootItemCondition evc net/minecraft/class_5341 + c A condition based on {@link LootContext}.\n\n@see {@link LootItemConditions}\n@see {@link PredicateManager} + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_51808 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC e field_51809 + f Lcom/mojang/serialization/Codec; CODEC f field_51810 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; getType b method_29325 + m ()Lcom/mojang/serialization/Codec; method_60309 c method_60309 + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder evc$a net/minecraft/class_5341$class_210 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; invert invert method_16780 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; or or method_893 + p 1 condition +c net/minecraft/world/level/storage/loot/predicates/LootItemConditionType evd net/minecraft/class_5342 + c The SerializerType for {@link LootItemCondition}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1878 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1878 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/predicates/LootItemConditions eve net/minecraft/class_217 + c Registry for {@link LootItemConditionType}.\n\n@see LootItemCondition + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; INVERTED a field_25235 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ANY_OF b field_44789 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ALL_OF c field_44790 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; RANDOM_CHANCE d field_25237 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; RANDOM_CHANCE_WITH_ENCHANTED_BONUS e field_51811 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENTITY_PROPERTIES f field_25239 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; KILLED_BY_PLAYER g field_25240 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENTITY_SCORES h field_25241 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; BLOCK_STATE_PROPERTY i field_25242 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; MATCH_TOOL j field_25243 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; TABLE_BONUS k field_25244 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; SURVIVES_EXPLOSION l field_25245 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; DAMAGE_SOURCE_PROPERTIES m field_25246 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; LOCATION_CHECK n field_25247 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; WEATHER_CHECK o field_25248 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; REFERENCE p field_25249 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; TIME_CHECK q field_25250 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; VALUE_CHECK r field_27911 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENCHANTMENT_ACTIVE_CHECK s field_51812 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; register a method_29327 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemEntityPropertyCondition evf net/minecraft/class_215 + c A LootItemCondition that checks a given {@link EntityPredicate} against a given {@link LootContext.EntityTarget}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45871 + f Ljava/util/Optional; predicate b comp_1879 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget c comp_1880 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_916 a method_916 + m (Lnet/minecraft/advancements/critereon/EntityPredicate;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_27864 a method_27864 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53423 a method_53423 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; entityPresent a method_15972 + p 0 target + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasProperties a method_917 + p 0 target + p 1 predicateBuilder + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasProperties a method_27865 + p 0 target + p 1 entityPredicate + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_914 + p 1 context + m ()Ljava/util/Optional; predicate c comp_1879 + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget d comp_1880 + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemKilledByPlayerCondition evg net/minecraft/class_221 + c A LootItemCondition that matches if the last damage to an entity was done by a player.\n\n@see LootContextParams#LAST_DAMAGE_PLAYER + f Lcom/mojang/serialization/MapCodec; CODEC a field_45872 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemKilledByPlayerCondition; INSTANCE b field_1297 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_938 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByPlayer c method_939 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_940 d method_940 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemRandomChanceCondition evh net/minecraft/class_219 + c A LootItemCondition that succeeds with a given probability. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45873 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; chance b comp_2781 + m (F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChance a method_932 + p 0 chance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53424 a method_53424 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_934 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChance a method_60310 + p 0 chance + m (F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_933 b method_933 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60311 b method_60311 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; chance c comp_2781 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemRandomChanceWithEnchantedBonusCondition evi net/minecraft/class_225 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45874 + f F unenchantedChance b comp_2865 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; enchantedChance c comp_2866 + f Lnet/minecraft/core/Holder; enchantment g comp_2783 + m (FFLnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_952 a method_952 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53425 a method_53425 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_950 + p 1 context + m (Lnet/minecraft/core/HolderLookup$Provider;FF)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChanceAndLootingBoost a method_953 + p 0 registries + p 1 base + p 2 perLevelAfterFirst + m ()F unenchantedChance c comp_2865 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; enchantedChance d comp_2866 + m ()Lnet/minecraft/core/Holder; enchantment e comp_2783 + m (FLnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/MatchTool evj net/minecraft/class_223 + c A LootItemCondition that checks the {@linkplain LootContextParams#TOOL tool} against an {@link ItemPredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45875 + f Ljava/util/Optional; predicate b comp_1884 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53426 a method_53426 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; toolMatches a method_945 + p 0 toolPredicateBuilder + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_946 + p 1 context + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_944 b method_944 + m ()Ljava/util/Optional; predicate c comp_1884 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/TimeCheck evk net/minecraft/class_4571 + c A LootItemCondition that checks the {@linkplain ServerLevel#getDayTime day time} against an {@link IntRange} after applying an optional modulo division. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45876 + f Ljava/util/Optional; period b comp_1885 + f Lnet/minecraft/world/level/storage/loot/IntRange; value c comp_1886 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53427 a method_53427 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder; time a method_35559 + p 0 timeRange + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_22587 + p 1 context + m ()Ljava/util/Optional; period c comp_1885 + m ()Lnet/minecraft/world/level/storage/loot/IntRange; value d comp_1886 + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/IntRange;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder evk$a net/minecraft/class_4571$class_6164 + f Ljava/util/Optional; period a field_31871 + f Lnet/minecraft/world/level/storage/loot/IntRange; value b field_31872 + m ()Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck; build a method_35561 + m (J)Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder; setPeriod a method_35560 + p 1 period + m (Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 timeRange +c net/minecraft/world/level/storage/loot/predicates/ValueCheckCondition evl net/minecraft/class_5644 + c LootItemCondition that checks if a number provided by a {@link NumberProvider} is within an {@link IntRange}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45877 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; provider b comp_1887 + f Lnet/minecraft/world/level/storage/loot/IntRange; range c comp_1888 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53428 a method_53428 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_32423 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasValue a method_35562 + p 0 provider + p 1 range + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_35563 b method_35563 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; provider c comp_1887 + m ()Lnet/minecraft/world/level/storage/loot/IntRange; range d comp_1888 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 provider + p 2 range + m ()V +c net/minecraft/world/level/storage/loot/predicates/WeatherCheck evm net/minecraft/class_227 + c A LootItemCondition that checks whether it currently raining or thundering.\nBoth checks are optional. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45878 + f Ljava/util/Optional; isRaining b comp_1889 + f Ljava/util/Optional; isThundering c comp_1890 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53429 a method_53429 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_957 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; weather c method_35564 + m ()Ljava/util/Optional; isRaining d comp_1889 + m ()Ljava/util/Optional; isThundering e comp_1890 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder evm$a net/minecraft/class_227$class_6165 + f Ljava/util/Optional; isRaining a field_31873 + f Ljava/util/Optional; isThundering b field_31874 + m ()Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck; build a method_35566 + m (Z)Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; setRaining a method_35565 + p 1 isRaining + m (Z)Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; setThundering b method_35567 + p 1 isThundering + m ()V +c net/minecraft/world/level/storage/loot/predicates/package-info evn net/minecraft/class_6166 +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider evo net/minecraft/class_5646 + c A NbtProvider that provides either the {@linkplain LootContextParams#BLOCK_ENTITY block entity}'s NBT data or an entity's NBT data based on an {@link LootContext.EntityTarget}. + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider; BLOCK_ENTITY a field_27914 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45879 + f Lcom/mojang/serialization/Codec; INLINE_CODEC c field_45880 + f Ljava/lang/String; BLOCK_ENTITY_ID d field_31875 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; BLOCK_ENTITY_PROVIDER e field_27915 + f Lcom/mojang/serialization/Codec; GETTER_CODEC f field_45881 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; getter g field_27916 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53430 a method_53430 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; forContextEntity a method_35568 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53431 a method_53431 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53432 a method_53432 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; forEntity b method_32430 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53433 b method_53433 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter;)V + p 1 getter + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$1 evo$1 net/minecraft/class_5646$1 + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$2 evo$2 net/minecraft/class_5646$2 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; val$target a field_27917 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter evo$a net/minecraft/class_5646$class_5648 + m ()Ljava/lang/String; getId a method_32434 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/nbt/Tag; get a method_32435 + p 1 lootContext + m ()Ljava/util/Set; getReferencedContextParams b method_32436 +c net/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType evp net/minecraft/class_5650 + c The SerializerType for {@link NbtProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1891 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1891 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/nbt/NbtProvider evq net/minecraft/class_5651 + c A provider for NBT data based on a LootContext.\n\n@see NbtProviders + m ()Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; getType a method_32439 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/nbt/Tag; get a method_32440 + p 1 lootContext + m ()Ljava/util/Set; getReferencedContextParams b method_32441 +c net/minecraft/world/level/storage/loot/providers/nbt/NbtProviders evr net/minecraft/class_5652 + c Registry for {@link NbtProvider} + f Lcom/mojang/serialization/Codec; CODEC a field_45882 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; STORAGE b field_27918 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; CONTEXT c field_27919 + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_45883 + m ()Lcom/mojang/serialization/Codec; method_53434 a method_53434 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)Lcom/mojang/datafixers/util/Either; method_53436 a method_53436 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; register a method_32443 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/StorageNbtProvider evs net/minecraft/class_5653 + c An NbtProvider that provides NBT data from a named {@link CommandStorage}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45884 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1892 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53437 a method_53437 + m ()Lnet/minecraft/resources/ResourceLocation; id c comp_1892 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/package-info evt net/minecraft/class_6167 +c net/minecraft/world/level/storage/loot/providers/number/BinomialDistributionGenerator evu net/minecraft/class_40 + c A number provider which generates a random number based on a binomial distribution. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45885 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; n b comp_1893 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; p c comp_1894 + m (IF)Lnet/minecraft/world/level/storage/loot/providers/number/BinomialDistributionGenerator; binomial a method_273 + p 0 n + p 1 p + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53438 a method_53438 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; n c comp_1893 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; p d comp_1894 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 n + p 2 p + m ()V +c net/minecraft/world/level/storage/loot/providers/number/ConstantValue evv net/minecraft/class_44 + c A {@link NumberProvider} that provides a constant value. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45886 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45887 + f F value c comp_1895 + m (F)Lnet/minecraft/world/level/storage/loot/providers/number/ConstantValue; exactly a method_32448 + p 0 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53439 a method_53439 + m ()F value c comp_1895 + m (F)V + p 1 value + m ()V +c net/minecraft/world/level/storage/loot/providers/number/EnchantmentLevelProvider evw net/minecraft/class_9753 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51813 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount b comp_2784 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60312 a method_60312 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/level/storage/loot/providers/number/EnchantmentLevelProvider; forEnchantmentLevel a method_60313 + p 0 amount + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount c comp_2784 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType evx net/minecraft/class_5657 + c The SerializerType for {@link NumberProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1896 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1896 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/number/NumberProvider evy net/minecraft/class_5658 + c Provides a float or int based on a {@link LootContext}. + m (Lnet/minecraft/world/level/storage/loot/LootContext;)I getInt a method_366 + p 1 lootContext + m ()Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; getType b method_365 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)F getFloat b method_32454 + p 1 lootContext +c net/minecraft/world/level/storage/loot/providers/number/NumberProviders evz net/minecraft/class_5659 + c Registration for {@link LootNumberProviderType}.\n\n@see LootNumberProviderType\n@see NumberProvider + f Lcom/mojang/serialization/Codec; CODEC a field_45888 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; CONSTANT b field_27921 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; UNIFORM c field_27922 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; BINOMIAL d field_27923 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; SCORE e field_27924 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; STORAGE f field_50032 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; ENCHANTMENT_LEVEL g field_51814 + f Lcom/mojang/serialization/Codec; TYPED_CODEC h field_45889 + m ()Lcom/mojang/serialization/Codec; method_53440 a method_53440 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lcom/mojang/datafixers/util/Either; method_53442 a method_53442 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; register a method_32456 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/ScoreboardValue ewa net/minecraft/class_5660 + c Provides a number by reading the score of a scoreboard member whose name is provided by a {@link ScoreboardNameProvider}.\nAdditionally a scale can be provided, which will be multiplied with the score. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45890 + f Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; target b comp_1897 + f Ljava/lang/String; score c comp_1898 + f F scale d comp_1899 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53443 a method_53443 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/number/ScoreboardValue; fromScoreboard a method_35569 + p 0 entityTarget + p 1 score + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/lang/String;F)Lnet/minecraft/world/level/storage/loot/providers/number/ScoreboardValue; fromScoreboard a method_35570 + p 0 entityTarget + p 1 score + p 2 scale + m ()Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; target c comp_1897 + m ()Ljava/lang/String; score d comp_1898 + m ()F scale e comp_1899 + m (Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider;Ljava/lang/String;F)V + p 1 target + p 2 score + p 3 scale + m ()V +c net/minecraft/world/level/storage/loot/providers/number/StorageValue ewb net/minecraft/class_9432 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50033 + f Lnet/minecraft/resources/ResourceLocation; storage b comp_2525 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; path c comp_2526 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58470 a method_58470 + m ()Lnet/minecraft/resources/ResourceLocation; storage c comp_2525 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/Optional; getNumericTag c method_58471 + p 1 context + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; path d comp_2526 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/UniformGenerator ewc net/minecraft/class_5662 + c Generates a random number which is uniformly distributed between a minimum and a maximum.\nMinimum and maximum are themselves NumberProviders. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45891 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min b comp_1900 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max c comp_1901 + m (FF)Lnet/minecraft/world/level/storage/loot/providers/number/UniformGenerator; between a method_32462 + p 0 min + p 1 max + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53444 a method_53444 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min c comp_1900 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max d comp_1901 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 min + p 2 max + m ()V +c net/minecraft/world/level/storage/loot/providers/number/package-info ewd net/minecraft/class_6168 +c net/minecraft/world/level/storage/loot/providers/score/ContextScoreboardNameProvider ewe net/minecraft/class_5664 + c A {@link ScoreboardNameProvider} that provides the scoreboard name for an entity selected by a {@link LootContext.EntityTarget}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45892 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45893 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; target c comp_1902 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53445 a method_53445 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; forTarget a method_35571 + p 0 target + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; target c comp_1902 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 target + m ()V +c net/minecraft/world/level/storage/loot/providers/score/FixedScoreboardNameProvider ewf net/minecraft/class_5667 + c A {@link ScoreboardNameProvider} that always provides a fixed name. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45894 + f Ljava/lang/String; name b comp_1903 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53446 a method_53446 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; forName a method_35572 + p 0 name + m ()Ljava/lang/String; name c comp_1903 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType ewg net/minecraft/class_5669 + c The SerializerType for {@link ScoreboardNameProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1904 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1904 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider ewh net/minecraft/class_5670 + c Provides a scoreboard name based on a {@link LootContext}. + m ()Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; getType a method_32475 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/scores/ScoreHolder; getScoreHolder a method_55379 + p 1 context + m ()Ljava/util/Set; getReferencedContextParams b method_32477 +c net/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProviders ewi net/minecraft/class_5671 + c Registration for {@link ScoreboardNameProvider}. + f Lcom/mojang/serialization/Codec; CODEC a field_45895 + f Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; FIXED b field_27932 + f Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; CONTEXT c field_27933 + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_45896 + m ()Lcom/mojang/serialization/Codec; method_53447 a method_53447 + m (Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider;)Lcom/mojang/datafixers/util/Either; method_53449 a method_53449 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; register a method_32479 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/score/package-info ewj net/minecraft/class_6169 +c net/minecraft/world/level/storage/package-info ewk net/minecraft/class_6170 +c net/minecraft/world/level/timers/FunctionCallback ewl net/minecraft/class_231 + f Lnet/minecraft/resources/ResourceLocation; functionId a field_1304 + m (Lnet/minecraft/server/ServerFunctionManager;Lnet/minecraft/commands/functions/CommandFunction;)V method_17938 a method_17938 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle a method_967 + p 1 obj + p 2 manager + p 3 gameTime + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 functionId +c net/minecraft/world/level/timers/FunctionCallback$Serializer ewl$a net/minecraft/class_231$class_232 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/FunctionCallback; deserialize a method_969 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/FunctionCallback;)V serialize a method_968 + m ()V +c net/minecraft/world/level/timers/FunctionTagCallback ewm net/minecraft/class_229 + f Lnet/minecraft/resources/ResourceLocation; tagId a field_1303 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle a method_962 + p 1 obj + p 2 manager + p 3 gameTime + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 tagId +c net/minecraft/world/level/timers/FunctionTagCallback$Serializer ewm$a net/minecraft/class_229$class_230 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/FunctionTagCallback; deserialize a method_965 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/FunctionTagCallback;)V serialize a method_964 + m ()V +c net/minecraft/world/level/timers/TimerCallback ewn net/minecraft/class_234 + m (Ljava/lang/Object;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle handle method_974 + p 1 obj + p 2 manager + p 3 gameTime +c net/minecraft/world/level/timers/TimerCallback$Serializer ewn$a net/minecraft/class_234$class_235 + f Lnet/minecraft/resources/ResourceLocation; id a field_1309 + f Ljava/lang/Class; cls b field_1310 + m ()Lnet/minecraft/resources/ResourceLocation; getId a method_977 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/TimerCallback;)V serialize a method_975 + p 1 tag + p 2 callback + m ()Ljava/lang/Class; getCls b method_978 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/TimerCallback; deserialize b method_976 + p 1 tag + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Class;)V + p 1 id + p 2 cls +c net/minecraft/world/level/timers/TimerCallbacks ewo net/minecraft/class_233 + f Lnet/minecraft/world/level/timers/TimerCallbacks; SERVER_CALLBACKS a field_1306 + f Lorg/slf4j/Logger; LOGGER b field_1308 + f Ljava/util/Map; idToSerializer c field_1307 + f Ljava/util/Map; classToSerializer d field_1305 + m (Lnet/minecraft/world/level/timers/TimerCallback$Serializer;)Lnet/minecraft/world/level/timers/TimerCallbacks; register a method_971 + p 1 serializer + m (Lnet/minecraft/world/level/timers/TimerCallback;)Lnet/minecraft/nbt/CompoundTag; serialize a method_973 + p 1 callback + m (Ljava/lang/Class;)Lnet/minecraft/world/level/timers/TimerCallback$Serializer; getSerializer a method_970 + p 1 clazz + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/TimerCallback; deserialize a method_972 + p 1 tag + m ()V + m ()V +c net/minecraft/world/level/timers/TimerQueue ewp net/minecraft/class_236 + f Lorg/slf4j/Logger; LOGGER a field_1315 + f Ljava/lang/String; CALLBACK_DATA_TAG b field_31876 + f Ljava/lang/String; TIMER_NAME_TAG c field_31877 + f Ljava/lang/String; TIMER_TRIGGER_TIME_TAG d field_31878 + f Lnet/minecraft/world/level/timers/TimerCallbacks; callbacksRegistry e field_1314 + f Ljava/util/Queue; queue f field_1313 + f Lcom/google/common/primitives/UnsignedLong; sequentialId g field_1311 + f Lcom/google/common/collect/Table; events h field_1312 + m ()Ljava/util/Set; getEventsIds a method_22592 + m (Lcom/mojang/serialization/Dynamic;)V method_29040 a method_29040 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)Lnet/minecraft/nbt/CompoundTag; storeEvent a method_980 + p 1 event + m (Ljava/lang/Object;J)V tick a method_988 + p 1 obj + p 2 gameTime + m (Ljava/lang/String;)I remove a method_22593 + p 1 eventId + m (Ljava/lang/String;JLnet/minecraft/world/level/timers/TimerCallback;)V schedule a method_985 + p 1 id + p 2 triggerTime + p 4 callback + m (Lnet/minecraft/nbt/CompoundTag;)V loadEvent a method_986 + p 1 tag + m ()Lnet/minecraft/nbt/ListTag; store b method_982 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)Lcom/google/common/primitives/UnsignedLong; method_21904 b method_21904 + m ()Ljava/util/Comparator; createComparator c method_987 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)J method_21905 c method_21905 + m (Lnet/minecraft/world/level/timers/TimerCallbacks;Ljava/util/stream/Stream;)V + p 1 callbacksRegistry + p 2 scheduledEventsDynamic + m (Lnet/minecraft/world/level/timers/TimerCallbacks;)V + p 1 callbacksRegistry + m ()V +c net/minecraft/world/level/timers/TimerQueue$Event ewp$a net/minecraft/class_236$class_237 + f J triggerTime a field_1318 + f Lcom/google/common/primitives/UnsignedLong; sequentialId b field_1319 + f Ljava/lang/String; id c field_1317 + f Lnet/minecraft/world/level/timers/TimerCallback; callback d field_1316 + m (JLcom/google/common/primitives/UnsignedLong;Ljava/lang/String;Lnet/minecraft/world/level/timers/TimerCallback;)V + p 1 triggerTime + p 3 sequentialId + p 4 id + p 5 callback +c net/minecraft/world/level/timers/package-info ewq net/minecraft/class_6171 +c net/minecraft/world/level/validation/ContentValidationException ewr net/minecraft/class_8579 + f Ljava/nio/file/Path; directory a field_44953 + f Ljava/util/List; entries b field_44954 + m (Lnet/minecraft/world/level/validation/ForbiddenSymlinkInfo;)Ljava/lang/String; method_52240 a method_52240 + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/String; getMessage a method_52241 + p 0 directory + p 1 entries + m (Ljava/nio/file/Path;Ljava/util/List;)V + p 1 directory + p 2 entries +c net/minecraft/world/level/validation/DirectoryValidator ews net/minecraft/class_8580 + f Ljava/nio/file/PathMatcher; symlinkTargetAllowList a field_44955 + m (Ljava/nio/file/Path;)Ljava/util/List; validateSymlink a method_52618 + p 1 directory + m (Ljava/nio/file/Path;Ljava/util/List;)V validateSymlink a method_52242 + p 1 directory + p 2 entries + m (Ljava/nio/file/Path;Z)Ljava/util/List; validateDirectory a method_52243 + p 1 directory + p 2 validateSymlinks + m (Ljava/nio/file/Path;Ljava/util/List;)V validateKnownDirectory b method_52619 + p 1 directory + p 2 forbiddenSymlinkInfos + m (Ljava/nio/file/PathMatcher;)V + p 1 symlinkTargetAllowList +c net/minecraft/world/level/validation/DirectoryValidator$1 ews$1 net/minecraft/class_8580$1 + f Ljava/util/List; val$issues a field_44956 + f Lnet/minecraft/world/level/validation/DirectoryValidator; field_44957 b field_44957 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; preVisitDirectory a method_52244 + p 1 dir + p 2 attributes + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile b method_52245 + p 1 file + p 2 attributes + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)V validateSymlink c method_52246 + p 1 path + p 2 attributes + m (Lnet/minecraft/world/level/validation/DirectoryValidator;Ljava/util/List;)V +c net/minecraft/world/level/validation/ForbiddenSymlinkInfo ewt net/minecraft/class_8581 + f Ljava/nio/file/Path; link a comp_1547 + f Ljava/nio/file/Path; target b comp_1548 + m ()Ljava/nio/file/Path; link a comp_1547 + m ()Ljava/nio/file/Path; target b comp_1548 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V +c net/minecraft/world/level/validation/PathAllowList ewu net/minecraft/class_8582 + f Lorg/slf4j/Logger; LOGGER a field_44958 + f Ljava/lang/String; COMMENT_PREFIX b field_44959 + f Ljava/util/List; entries c field_44960 + f Ljava/util/Map; compiledPaths d field_44961 + m (Ljava/io/BufferedReader;)Lnet/minecraft/world/level/validation/PathAllowList; readPlain a method_52247 + p 0 reader + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_52248 a method_52248 + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; getForFileSystem a method_52249 + p 1 fileSystem + m (Ljava/nio/file/FileSystem;Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry;)Ljava/nio/file/PathMatcher; method_52250 a method_52250 + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52251 a method_52251 + m (Ljava/nio/file/Path;)Z method_52252 a method_52252 + m (Ljava/util/List;Ljava/nio/file/Path;)Z method_52253 a method_52253 + m (Ljava/nio/file/Path;)Z method_52254 b method_52254 + m (Ljava/util/List;)V + p 1 entries + m ()V +c net/minecraft/world/level/validation/PathAllowList$ConfigEntry ewu$a net/minecraft/class_8582$class_8583 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; type a comp_1549 + f Ljava/lang/String; pattern b comp_1550 + m ()Lnet/minecraft/world/level/validation/PathAllowList$EntryType; type a comp_1549 + m (Ljava/lang/String;)Ljava/util/Optional; parse a method_52255 + p 0 string + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; compile a method_52256 + p 1 fileSystem + m ()Ljava/lang/String; pattern b comp_1550 + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; glob b method_52257 + p 0 glob + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; regex c method_52258 + p 0 regex + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; prefix d method_52259 + p 0 prefix + m (Lnet/minecraft/world/level/validation/PathAllowList$EntryType;Ljava/lang/String;)V +c net/minecraft/world/level/validation/PathAllowList$EntryType ewu$b net/minecraft/class_8582$class_8584 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; FILESYSTEM a field_44962 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; PREFIX b field_44963 + m (Ljava/lang/String;Ljava/nio/file/Path;)Z method_52260 a method_52260 + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52261 a method_52261 + m ()V +c net/minecraft/world/level/validation/package-info ewv net/minecraft/class_8585 +c net/minecraft/world/package-info eww net/minecraft/class_6172 +c net/minecraft/world/phys/AABB ewx net/minecraft/class_238 + f D minX a field_1323 + f D minY b field_1322 + f D minZ c field_1321 + f D maxX d field_1320 + f D maxY e field_1325 + f D maxZ f field_1324 + f D EPSILON g field_31879 + m ()D getSize a method_995 + c Returns the average length of the edges of the bounding box. + m (D)Lnet/minecraft/world/phys/AABB; setMinX a method_35574 + p 1 minX + m (DDD)Lnet/minecraft/world/phys/AABB; contract a method_1002 + c Creates a new {@link AxisAlignedBB} that has been contracted by the given amount, with positive changes decreasing max values and negative changes increasing min values.\n
\nIf the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see last sample).\n\n

Samples:

\n\n\n\n\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 4, 4, 4).contract(2, 2, 2)
box[0.0, 0.0, 0.0 -> 2.0, 2.0, 2.0]
new AxisAlignedBB(0, 0, 0, 4, 4, 4).contract(-2, -2, -2)
box[2.0, 2.0, 2.0 -> 4.0, 4.0, 4.0]
new AxisAlignedBB(5, 5, 5, 7, 7, 7).contract(0, 1, -1)
box[5.0, 5.0, 6.0 -> 7.0, 6.0, 7.0]
new AxisAlignedBB(-2, -2, -2, 2, 2, 2).contract(4, -4, 0)
box[-8.0, 2.0, -2.0 -> -2.0, 8.0, 2.0]
\n\n

See Also:

\n
    \n
  • {@link #expand(double, double, double)} - like this, except for expanding.
  • \n
  • {@link #grow(double, double, double)} and {@link #grow(double)} - expands in all directions.
  • \n
  • {@link #shrink(double)} - contracts in all directions (like {@link #grow(double)})
  • \n
\n\n@return A new modified bounding box. + p 1 x + p 3 y + p 5 z + m (DDDDDD)Z intersects a method_1003 + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/phys/AABB; of a method_19316 + p 0 mutableBox + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; intersect a method_999 + p 1 other + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/phys/Vec3;[DLnet/minecraft/core/Direction;DDD)Lnet/minecraft/core/Direction; getDirection a method_1007 + p 0 aabb + p 1 start + p 2 minDistance + p 3 facing + p 4 deltaX + p 6 deltaY + p 8 deltaZ + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; unitCubeFromLowerCorner a method_29968 + p 0 vector + m (Lnet/minecraft/world/phys/Vec3;DDD)Lnet/minecraft/world/phys/AABB; ofSize a method_30048 + p 0 center + p 1 xSize + p 3 ySize + p 5 zSize + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z intersects a method_993 + p 1 min + p 2 max + m (Ljava/lang/Iterable;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_1010 + p 0 boxes + p 1 start + p 2 end + p 3 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; move a method_996 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; encapsulatingFullBlocks a method_54784 + p 0 startPos + p 1 endPos + m (Lnet/minecraft/core/Direction$Axis;)D min a method_1001 + p 1 axis + m (Lorg/joml/Vector3f;)Lnet/minecraft/world/phys/AABB; move a method_60314 + p 1 vec + m ([DLnet/minecraft/core/Direction;DDDDDDDDLnet/minecraft/core/Direction;DDD)Lnet/minecraft/core/Direction; clipPoint a method_998 + p 0 minDistance + p 1 prevDirection + p 2 distanceSide + p 4 distanceOtherA + p 6 distanceOtherB + p 8 minSide + p 10 minOtherA + p 12 maxOtherA + p 14 minOtherB + p 16 maxOtherB + p 18 hitSide + p 19 startSide + p 21 startOtherA + p 23 startOtherB + m ()D getXsize b method_17939 + m (D)Lnet/minecraft/world/phys/AABB; setMinY b method_35575 + p 1 minY + m (DDD)Lnet/minecraft/world/phys/AABB; expandTowards b method_1012 + c Creates a new {@link AxisAlignedBB} that has been expanded by the given amount, with positive changes increasing max values and negative changes decreasing min values.\n\n

Samples:

\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 1, 1, 1).expand(2, 2, 2)
box[0, 0, 0 -> 3, 3, 3]
\n
new AxisAlignedBB(0, 0, 0, 1, 1, 1).expand(-2, -2, -2)
box[-2, -2, -2 -> 1, 1, 1]
\n
new AxisAlignedBB(5, 5, 5, 7, 7, 7).expand(0, 1, -1)
box[5, 5, 4, 7, 8, 7]
\n
\n\n

See Also:

\n
    \n
  • {@link #contract(double, double, double)} - like this, except for shrinking.
  • \n
  • {@link #grow(double, double, double)} and {@link #grow(double)} - expands in all directions.
  • \n
  • {@link #shrink(double)} - contracts in all directions (like {@link #grow(double)})
  • \n
\n\n@return A modified bounding box that will always be equal or greater in volume to this bounding box. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; minmax b method_991 + p 1 other + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; expandTowards b method_18804 + p 1 vector + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; clip b method_992 + p 1 from + p 2 to + m (Lnet/minecraft/core/Direction$Axis;)D max b method_990 + p 1 axis + m ()D getYsize c method_17940 + m (D)Lnet/minecraft/world/phys/AABB; setMinZ c method_35576 + p 1 minZ + m (DDD)Lnet/minecraft/world/phys/AABB; inflate c method_1009 + c Creates a new {@link AxisAlignedBB} that has been contracted by the given amount in both directions. Negative values will shrink the AABB instead of expanding it.\n
\nSide lengths will be increased by 2 times the value of the parameters, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see last ample).\n\n

Samples:

\n\n\n\n\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 1, 1, 1).grow(2, 2, 2)
box[-2.0, -2.0, -2.0 -> 3.0, 3.0, 3.0]
new AxisAlignedBB(0, 0, 0, 6, 6, 6).grow(-2, -2, -2)
box[2.0, 2.0, 2.0 -> 4.0, 4.0, 4.0]
new AxisAlignedBB(5, 5, 5, 7, 7, 7).grow(0, 1, -1)
box[5.0, 4.0, 6.0 -> 7.0, 8.0, 6.0]
new AxisAlignedBB(1, 1, 1, 3, 3, 3).grow(-4, -2, -3)
box[-1.0, 1.0, 0.0 -> 5.0, 3.0, 4.0]
\n\n

See Also:

\n
    \n
  • {@link #expand(double, double, double)} - expands in only one direction.
  • \n
  • {@link #contract(double, double, double)} - contracts in only one direction.
  • \n{@link #grow(double)} - version of this that expands in all directions from one parameter.\n
  • {@link #shrink(double)} - contracts in all directions
  • \n
\n\n@return A modified bounding box. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/AABB;)Z intersects c method_994 + c Checks if the bounding box intersects with another. + p 1 other + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; move c method_997 + p 1 vec + m ()D getZsize d method_17941 + m (D)Lnet/minecraft/world/phys/AABB; setMaxX d method_35577 + p 1 maxX + m (DDD)Lnet/minecraft/world/phys/AABB; move d method_989 + c Offsets the current bounding box by the specified amount. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)Z contains d method_1006 + c Returns if the supplied Vec3D is completely inside the bounding box + p 1 vec + m ()Z hasNaN e method_1013 + m (D)Lnet/minecraft/world/phys/AABB; setMaxY e method_35578 + p 1 maxY + m (DDD)Z contains e method_1008 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr e method_49271 + p 1 vec + m ()Lnet/minecraft/world/phys/Vec3; getCenter f method_1005 + m (D)Lnet/minecraft/world/phys/AABB; setMaxZ f method_35579 + p 1 maxZ + m (DDD)Lnet/minecraft/world/phys/AABB; deflate f method_35580 + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/phys/Vec3; getBottomCenter g method_61124 + m (D)Lnet/minecraft/world/phys/AABB; inflate g method_1014 + c Creates a new {@link AxisAlignedBB} that is expanded by the given value in all directions. Equivalent to {@link #grow(double, double, double)} with the given value for all 3 params. Negative values will shrink the AABB.\n
\nSide lengths will be increased by 2 times the value of the parameter, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see samples on {@link #grow(double, double, double)}).\n\n@return A modified AABB. + p 1 value + m ()Lnet/minecraft/world/phys/Vec3; getMinPosition h method_61125 + m (D)Lnet/minecraft/world/phys/AABB; deflate h method_1011 + c Creates a new {@link AxisAlignedBB} that is expanded by the given value in all directions. Equivalent to {@link #grow(double)} with value set to the negative of the value provided here. Passing a negative value to this method values will grow the AABB.\n
\nSide lengths will be decreased by 2 times the value of the parameter, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see samples on {@link #grow(double, double, double)}).\n\n@return A modified AABB. + p 1 value + m ()Lnet/minecraft/world/phys/Vec3; getMaxPosition i method_61126 + m (DDDDDD)V + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + p 1 start + p 2 end +c net/minecraft/world/phys/BlockHitResult ewy net/minecraft/class_3965 + f Lnet/minecraft/core/Direction; direction b field_17588 + f Lnet/minecraft/core/BlockPos; blockPos c field_17589 + f Z miss d field_17590 + f Z inside e field_17591 + m ()Lnet/minecraft/core/BlockPos; getBlockPos a method_17777 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; miss a method_17778 + c Creates a new BlockRayTraceResult marked as a miss. + p 0 location + p 1 direction + p 2 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; withPosition a method_29328 + p 1 pos + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/BlockHitResult; withDirection a method_17779 + c Creates a new BlockRayTraceResult, with the clicked face replaced with the given one + p 1 newFace + m ()Lnet/minecraft/core/Direction; getDirection b method_17780 + c Gets the face of the block that was clicked + m ()Z isInside d method_17781 + c @return {@code true} if the player's head is inside a block (used by scaffolding) + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Z)V + p 1 location + p 2 direction + p 3 blockPos + p 4 inside + m (ZLnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Z)V + p 1 miss + p 2 location + p 3 direction + p 4 blockPos + p 5 inside +c net/minecraft/world/phys/EntityHitResult ewz net/minecraft/class_3966 + f Lnet/minecraft/world/entity/Entity; entity b field_17592 + m ()Lnet/minecraft/world/entity/Entity; getEntity a method_17782 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 entity + p 2 location +c net/minecraft/world/phys/HitResult exa net/minecraft/class_239 + f Lnet/minecraft/world/phys/Vec3; location a field_1329 + m (Lnet/minecraft/world/entity/Entity;)D distanceTo a method_24801 + p 1 entity + m ()Lnet/minecraft/world/phys/HitResult$Type; getType c method_17783 + m ()Lnet/minecraft/world/phys/Vec3; getLocation e method_17784 + c Returns the hit position of the raycast, in absolute world coordinates + m (Lnet/minecraft/world/phys/Vec3;)V + p 1 location +c net/minecraft/world/phys/HitResult$Type exa$a net/minecraft/class_239$class_240 + f Lnet/minecraft/world/phys/HitResult$Type; MISS a field_1333 + f Lnet/minecraft/world/phys/HitResult$Type; BLOCK b field_1332 + f Lnet/minecraft/world/phys/HitResult$Type; ENTITY c field_1331 + f [Lnet/minecraft/world/phys/HitResult$Type; $VALUES d field_1334 + m ()[Lnet/minecraft/world/phys/HitResult$Type; $values a method_36796 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/phys/Vec2 exb net/minecraft/class_241 + f Lnet/minecraft/world/phys/Vec2; ZERO a field_1340 + f Lnet/minecraft/world/phys/Vec2; ONE b field_1335 + f Lnet/minecraft/world/phys/Vec2; UNIT_X c field_1341 + f Lnet/minecraft/world/phys/Vec2; NEG_UNIT_X d field_1338 + f Lnet/minecraft/world/phys/Vec2; UNIT_Y e field_1336 + f Lnet/minecraft/world/phys/Vec2; NEG_UNIT_Y f field_1344 + f Lnet/minecraft/world/phys/Vec2; MAX g field_1337 + f Lnet/minecraft/world/phys/Vec2; MIN h field_1339 + f F x i field_1343 + f F y j field_1342 + m ()Lnet/minecraft/world/phys/Vec2; normalized a method_35581 + m (F)Lnet/minecraft/world/phys/Vec2; scale a method_35582 + p 1 factor + m (Lnet/minecraft/world/phys/Vec2;)F dot a method_35583 + p 1 other + m ()F length b method_35584 + m (F)Lnet/minecraft/world/phys/Vec2; add b method_35585 + p 1 value + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/world/phys/Vec2; add b method_35586 + p 1 other + m ()F lengthSquared c method_35587 + m (Lnet/minecraft/world/phys/Vec2;)Z equals c method_1016 + p 1 other + m ()Lnet/minecraft/world/phys/Vec2; negated d method_35588 + m (Lnet/minecraft/world/phys/Vec2;)F distanceToSqr d method_35589 + p 1 other + m (FF)V + p 1 x + p 2 y + m ()V +c net/minecraft/world/phys/Vec3 exc net/minecraft/class_243 + f Lcom/mojang/serialization/Codec; CODEC a field_38277 + f Lnet/minecraft/world/phys/Vec3; ZERO b field_1353 + f D x c field_1352 + f D y d field_1351 + f D z e field_1350 + m (D)Lnet/minecraft/world/phys/Vec3; scale a method_1021 + p 1 factor + m (DDD)Lnet/minecraft/world/phys/Vec3; subtract a method_1023 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; xRot a method_1037 + p 1 pitch + m (FF)Lnet/minecraft/world/phys/Vec3; directionFromRotation a method_1030 + c Returns a {@link net.minecraft.world.phys.Vec3} from the given pitch and yaw degrees. + p 0 pitch + p 1 yaw + m (I)Lnet/minecraft/world/phys/Vec3; fromRGB24 a method_24457 + p 0 packed + m (Lnet/minecraft/util/RandomSource;F)Lnet/minecraft/world/phys/Vec3; offsetRandom a method_49272 + p 1 random + p 2 factor + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/world/phys/Vec3; directionFromRotation a method_1034 + c Returns a {@link net.minecraft.world.phys.Vec3} from the given pitch and yaw degrees as {@link net.minecraft.world.phys.Vec2}. + p 0 vec + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; vectorTo a method_1035 + c Returns a new vector with the result of the specified vector minus this. + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; lerp a method_35590 + c Lerps between this vector and the given vector.\n@see net.minecraft.util.Mth#lerp(double, double, double) + p 1 to + p 2 delta + m (Lnet/minecraft/world/phys/Vec3;DD)Z closerThan a method_55230 + p 1 pos + p 2 horizontalDistance + p 4 verticalDistance + m (Ljava/util/EnumSet;)Lnet/minecraft/world/phys/Vec3; align a method_1032 + p 1 axes + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_42394 a method_42394 + m (Lnet/minecraft/core/Direction$Axis;)D get a method_18043 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;D)Lnet/minecraft/world/phys/Vec3; with a method_38499 + p 1 axis + p 2 length + m (Lnet/minecraft/core/Direction;D)Lnet/minecraft/world/phys/Vec3; relative a method_43206 + p 1 direction + p 2 length + m (Lnet/minecraft/core/Position;D)Z closerThan a method_24802 + c Checks if a position is within a certain distance of the coordinates. + p 1 pos + p 2 distance + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atLowerCornerOf a method_24954 + c Copies the coordinates of an int vector exactly. + p 0 toCopy + m (Lnet/minecraft/core/Vec3i;D)Lnet/minecraft/world/phys/Vec3; upFromBottomCenterOf a method_26410 + c Copies the coordinates of an int vector and centers them horizontally and applies a vertical offset. + p 0 toCopy + p 1 verticalOffset + m (Lnet/minecraft/core/Vec3i;DDD)Lnet/minecraft/world/phys/Vec3; atLowerCornerWithOffset a method_49273 + p 0 toCopy + p 1 offsetX + p 3 offsetY + p 5 offsetZ + m (DDD)Lnet/minecraft/world/phys/Vec3; add b method_1031 + c Adds the specified x,y,z vector components to this vector and returns the resulting vector. Does not change this vector. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; yRot b method_1024 + p 1 yaw + m (Lnet/minecraft/world/phys/Vec3;)D dot b method_1026 + p 1 vec + m (Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; method_42395 b method_42395 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atCenterOf b method_24953 + c Copies the coordinates of an Int vector and centers them. + p 0 toCopy + m (DDD)D distanceToSqr c method_1028 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; zRot c method_31033 + p 1 roll + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; cross c method_1036 + c Returns a new vector with the result of this vector x the specified vector. + p 1 vec + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atBottomCenterOf c method_24955 + c Copies the coordinates of an int vector and centers them horizontally (x and z) + p 0 toCopy + m ()Lnet/minecraft/world/phys/Vec3; normalize d method_1029 + c Normalizes the vector to a length of 1 (except if it is the zero vector) + m (DDD)Lnet/minecraft/world/phys/Vec3; multiply d method_18805 + p 1 factorX + p 3 factorY + p 5 factorZ + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; subtract d method_1020 + p 1 vec + m ()Lnet/minecraft/world/phys/Vec3; reverse e method_22882 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; add e method_1019 + p 1 vec + m ()D length f method_1033 + c Returns the length of the vector. + m (Lnet/minecraft/world/phys/Vec3;)D distanceTo f method_1022 + c Euclidean distance between this and the specified vector, returned as double. + p 1 vec + m ()D lengthSqr g method_1027 + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr g method_1025 + c The square of the Euclidean distance between this and the specified vector. + p 1 vec + m ()D horizontalDistance h method_37267 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; multiply h method_18806 + p 1 vec + m ()D horizontalDistanceSqr i method_37268 + m (Lnet/minecraft/world/phys/Vec3;)Ljava/util/List; method_42396 i method_42396 + m ()Lorg/joml/Vector3f; toVector3f j method_46409 + m (DDD)V + p 1 x + p 3 y + p 5 z + m (Lorg/joml/Vector3f;)V + p 1 vector + m ()V +c net/minecraft/world/phys/package-info exd net/minecraft/class_6173 +c net/minecraft/world/phys/shapes/ArrayVoxelShape exe net/minecraft/class_245 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; xs b field_1361 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; ys c field_1362 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; zs d field_1363 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;[D[D[D)V + p 1 shape + p 2 xs + p 3 ys + p 4 zs + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 shape + p 2 xs + p 3 ys + p 4 zs +c net/minecraft/world/phys/shapes/ArrayVoxelShape$1 exe$1 net/minecraft/class_245$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_1364 + m ()V +c net/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape exf net/minecraft/class_244 + f Ljava/util/BitSet; storage d field_1359 + f I xMin e field_1358 + f I yMin f field_1357 + f I zMin g field_1356 + f I xMax h field_1355 + f I yMax i field_1354 + f I zMax j field_1360 + m (III)I getIndex a method_1039 + p 1 x + p 2 y + p 3 z + m (IIII)Z isZStripFull a method_1059 + p 1 zMin + p 2 zMax + p 3 x + p 4 y + m (IIIII)Z isXZRectangleFull a method_31938 + p 1 xMin + p 2 xMax + p 3 zMin + p 4 zMax + p 5 y + m (IIIIIIIII)Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape; withFilledBounds a method_31939 + p 0 x + p 1 y + p 2 z + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + m (IIIZ)V fillUpdateBounds a method_31940 + p 1 x + p 2 y + p 3 z + p 4 update + m (Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;II[I[ZIII)Z method_1038 a method_1038 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllBoxes a method_31941 + p 0 shape + p 1 consumer + p 2 combine + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape; join a method_1040 + p 0 mainShape + p 1 secondaryShape + p 2 mergerX + p 3 mergerY + p 4 mergerZ + p 5 operator + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;I[I[ZIII)Z method_1042 a method_1042 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;[IIII)Z method_1041 a method_1041 + m (IIII)V clearZStrip b method_31942 + p 1 zMin + p 2 zMax + p 3 x + p 4 y + m (III)Z isInterior d method_58225 + p 1 x + p 2 y + p 3 z + m (III)V + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/BooleanOp exg net/minecraft/class_247 + f Lnet/minecraft/world/phys/shapes/BooleanOp; FALSE a field_16897 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_OR b field_16885 + f Lnet/minecraft/world/phys/shapes/BooleanOp; ONLY_SECOND c field_16893 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_FIRST d field_16894 + f Lnet/minecraft/world/phys/shapes/BooleanOp; ONLY_FIRST e field_16886 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_SECOND f field_16898 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_SAME g field_16892 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_AND h field_16888 + f Lnet/minecraft/world/phys/shapes/BooleanOp; AND i field_16896 + f Lnet/minecraft/world/phys/shapes/BooleanOp; SAME j field_16890 + f Lnet/minecraft/world/phys/shapes/BooleanOp; SECOND k field_16887 + f Lnet/minecraft/world/phys/shapes/BooleanOp; CAUSES l field_16889 + f Lnet/minecraft/world/phys/shapes/BooleanOp; FIRST m field_16891 + f Lnet/minecraft/world/phys/shapes/BooleanOp; CAUSED_BY n field_16899 + f Lnet/minecraft/world/phys/shapes/BooleanOp; OR o field_1366 + f Lnet/minecraft/world/phys/shapes/BooleanOp; TRUE p field_16895 + m (ZZ)Z method_16795 a method_16795 + m (ZZ)Z method_16785 b method_16785 + m (ZZ)Z method_16794 c method_16794 + m (ZZ)Z method_16790 d method_16790 + m (ZZ)Z method_16781 e method_16781 + m (ZZ)Z method_16796 f method_16796 + m (ZZ)Z method_16788 g method_16788 + m (ZZ)Z method_16782 h method_16782 + m (ZZ)Z method_16792 i method_16792 + m (ZZ)Z method_16786 j method_16786 + m (ZZ)Z method_16793 k method_16793 + m (ZZ)Z method_16783 l method_16783 + m (ZZ)Z method_16787 m method_16787 + m (ZZ)Z method_16791 n method_16791 + m (ZZ)Z method_16784 o method_16784 + m (ZZ)Z method_16789 p method_16789 + m ()V +c net/minecraft/world/phys/shapes/CollisionContext exh net/minecraft/class_3726 + m ()Lnet/minecraft/world/phys/shapes/CollisionContext; empty a method_16194 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/shapes/CollisionContext; of a method_16195 + p 0 entity + m (Lnet/minecraft/world/item/Item;)Z isHoldingItem a method_17785 + p 1 item + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)Z canStandOnFluid a method_27866 + p 1 fluid1 + p 2 fluid2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/BlockPos;Z)Z isAbove a method_16192 + p 1 shape + p 2 pos + p 3 canAscend + m ()Z isDescending b method_16193 +c net/minecraft/world/phys/shapes/CubePointRange exi net/minecraft/class_246 + f I parts a field_1365 + m (I)V + p 1 parts +c net/minecraft/world/phys/shapes/CubeVoxelShape exj net/minecraft/class_249 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/DiscreteCubeMerger exk net/minecraft/class_248 + f Lnet/minecraft/world/phys/shapes/CubePointRange; result a field_1367 + f I firstDiv b field_1370 + f I secondDiv c field_1368 + m (II)V + p 1 aa + p 2 bb +c net/minecraft/world/phys/shapes/DiscreteVoxelShape exl net/minecraft/class_251 + f I xSize a field_1374 + f I ySize b field_1373 + f I zSize c field_1372 + f [Lnet/minecraft/core/Direction$Axis; AXIS_VALUES d field_1375 + m ()Z isEmpty a method_1056 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer;)V forAllFaces a method_1046 + p 1 faceConsumer + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer;Lnet/minecraft/core/AxisCycle;)V forAllAxisFaces a method_1061 + p 1 faceConsumer + p 2 axisRotation + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Lnet/minecraft/core/AxisCycle;Z)V forAllAxisEdges a method_1052 + p 1 lineConsumer + p 2 axis + p 3 combine + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllEdges a method_1064 + p 1 consumer + p 2 combine + m (Lnet/minecraft/core/AxisCycle;III)Z isFullWide a method_1062 + p 1 axis + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;)I firstFull a method_1055 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;II)I firstFull a method_35592 + p 1 axis + p 2 y + p 3 z + m ()I getXSize b method_1050 + m (III)Z isFull b method_1063 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllBoxes b method_1053 + p 1 consumer + p 2 combine + m (Lnet/minecraft/core/AxisCycle;III)Z isFull b method_1057 + p 1 rotation + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;)I lastFull b method_1045 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;II)I lastFull b method_1058 + c Gives the index of the last filled part in the column. + p 1 axis + p 2 y + p 3 z + m ()I getYSize c method_1047 + m (III)V fill c method_1049 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/Direction$Axis;)I getSize c method_1051 + p 1 axis + m ()I getZSize d method_1048 + m (III)Z isFullWide e method_1044 + p 1 x + p 2 y + p 3 z + m (III)V + p 1 xSize + p 2 ySize + p 3 zSize + m ()V +c net/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer exl$a net/minecraft/class_251$class_252 +c net/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer exl$b net/minecraft/class_251$class_253 +c net/minecraft/world/phys/shapes/EntityCollisionContext exm net/minecraft/class_3727 + f Lnet/minecraft/world/phys/shapes/CollisionContext; EMPTY a field_17593 + f Z descending b field_16451 + f D entityBottom c field_16450 + f Lnet/minecraft/world/item/ItemStack; heldItem d field_17594 + f Ljava/util/function/Predicate; canStandOnFluid e field_24425 + f Lnet/minecraft/world/entity/Entity; entity f field_27935 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_27867 a method_27867 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_27868 b method_27868 + m ()Lnet/minecraft/world/entity/Entity; getEntity c method_32480 + m (ZDLnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)V + p 1 descending + p 2 entityBottom + p 4 heldItem + p 5 canStandOnFluid + p 6 entity + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m ()V +c net/minecraft/world/phys/shapes/EntityCollisionContext$1 exm$1 net/minecraft/class_3727$1 + m (ZDLnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)V +c net/minecraft/world/phys/shapes/IdenticalMerger exn net/minecraft/class_250 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; coords a field_1371 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 coords +c net/minecraft/world/phys/shapes/IndexMerger exo net/minecraft/class_255 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; getList a method_1066 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;)Z forMergedIndexes a method_1065 + p 1 consumer +c net/minecraft/world/phys/shapes/IndexMerger$IndexConsumer exo$a net/minecraft/class_255$class_256 +c net/minecraft/world/phys/shapes/IndirectMerger exp net/minecraft/class_254 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; EMPTY a field_27346 + f [D result b field_1377 + f [I firstIndices c field_1376 + f [I secondIndices d field_1378 + f I resultLength e field_27347 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)V + p 1 lower + p 2 upper + p 3 excludeUpper + p 4 excludeLower + m ()V +c net/minecraft/world/phys/shapes/NonOverlappingMerger exq net/minecraft/class_257 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; lower a field_1381 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; upper b field_1379 + f Z swap c field_1380 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;III)Z method_1068 a method_1068 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;)Z forNonSwappedIndexes b method_1067 + p 1 consumer + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Z)V + p 1 lower + p 2 upper + p 3 swap +c net/minecraft/world/phys/shapes/OffsetDoubleList exr net/minecraft/class_261 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; delegate a field_1387 + f D offset b field_1386 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;D)V + p 1 delegate + p 2 offset +c net/minecraft/world/phys/shapes/Shapes exs net/minecraft/class_259 + f D EPSILON a field_31880 + f D BIG_EPSILON b field_31881 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INFINITY c field_17669 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BLOCK d field_1385 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EMPTY e field_1384 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; empty a method_1073 + m (DD)I findBits a method_1086 + p 0 minBits + p 2 maxBits + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; box a method_1081 + p 0 minX + p 2 minY + p 4 minZ + p 6 maxX + p 8 maxY + p 10 maxZ + m (II)J lcm a method_1079 + p 0 aa + p 1 bb + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)Lnet/minecraft/world/phys/shapes/IndexMerger; createIndexMerger a method_1069 + p 0 size + p 1 list1 + p 2 list2 + p 3 excludeUpper + p 4 excludeLower + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/shapes/VoxelShape; create a method_1078 + p 0 aabb + m (Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIIII)Z method_1070 a method_1070 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIII)Z method_1076 a method_1076 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;III)Z method_1075 a method_1075 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Z joinIsNotEmpty a method_1071 + p 0 mergerX + p 1 mergerY + p 2 mergerZ + p 3 primaryShape + p 4 secondaryShape + p 5 resultOperator + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; or a method_1084 + p 0 shape1 + p 1 shape2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/VoxelShape; join a method_1072 + p 0 shape1 + p 1 shape2 + p 2 function + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z blockOccudes a method_1083 + p 0 shape + p 1 adjacentShape + p 2 side + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceShape a method_16344 + p 0 voxelShape + p 1 direction + m (Lnet/minecraft/world/phys/shapes/VoxelShape;[Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; or a method_17786 + p 0 shape1 + p 1 others + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/AABB;Ljava/lang/Iterable;D)D collide a method_1085 + p 0 movementAxis + p 1 collisionBox + p 2 possibleHits + p 3 desiredOffset + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; block b method_1077 + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; create b method_31943 + p 0 minX + p 2 minY + p 4 minZ + p 6 maxX + p 8 maxY + p 10 maxZ + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z faceShapeOccludes b method_20713 + p 0 voxelShape1 + p 1 voxelShape2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/VoxelShape; joinUnoptimized b method_1082 + p 0 shape1 + p 1 shape2 + p 2 function + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z mergedFaceOccludes b method_1080 + p 0 shape + p 1 adjacentShape + p 2 side + m ()Lnet/minecraft/world/phys/shapes/CubeVoxelShape; method_1087 c method_1087 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Z joinIsNotEmpty c method_1074 + p 0 shape1 + p 1 shape2 + p 2 resultOperator + m ()V + m ()V +c net/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer exs$a net/minecraft/class_259$class_260 +c net/minecraft/world/phys/shapes/SliceShape ext net/minecraft/class_263 + f Lnet/minecraft/world/phys/shapes/VoxelShape; delegate b field_1397 + f Lnet/minecraft/core/Direction$Axis; axis c field_1396 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; SLICE_COORDS d field_1395 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; makeSlice a method_1088 + p 0 shape + p 1 axis + p 2 index + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction$Axis;I)V + p 1 delegate + p 2 axis + p 3 index + m ()V +c net/minecraft/world/phys/shapes/SubShape exu net/minecraft/class_262 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; parent d field_1393 + f I startX e field_1392 + f I startY f field_1391 + f I startZ g field_1390 + f I endX h field_1389 + f I endY i field_1388 + f I endZ j field_1394 + m (Lnet/minecraft/core/Direction$Axis;I)I clampToShape a method_31944 + p 1 axis + p 2 value + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIIIII)V + p 1 parent + p 2 startX + p 3 startY + p 4 startZ + p 5 endX + p 6 endY + p 7 endZ +c net/minecraft/world/phys/shapes/VoxelShape exv net/minecraft/class_265 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; shape a field_1401 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; faces b field_19318 + m ()Lnet/minecraft/world/phys/AABB; bounds a method_1107 + m (DDD)Lnet/minecraft/world/phys/shapes/VoxelShape; move a method_1096 + p 1 xOffset + p 3 yOffset + p 5 zOffset + m (DLnet/minecraft/core/Direction$Axis;I)Z method_1101 a method_1101 + m (Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; closestPointTo a method_33661 + p 1 point + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_1092 + p 1 startVec + p 2 endVec + p 3 pos + m (Lnet/minecraft/world/phys/Vec3;[Lnet/minecraft/world/phys/Vec3;DDDDDD)V method_33662 a method_33662 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;)V forAllEdges a method_1104 + p 1 action + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;IIIIII)V method_1106 a method_1106 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;IIIIII)V method_1112 a method_1112 + m (Lnet/minecraft/core/AxisCycle;Lnet/minecraft/world/phys/AABB;D)D collideX a method_1103 + p 1 movementAxis + p 2 collisionBox + p 3 desiredOffset + m (Ljava/util/List;DDDDDD)V method_1111 a method_1111 + m (Lnet/minecraft/core/Direction$Axis;)Lit/unimi/dsi/fastutil/doubles/DoubleList; getCoords a method_1109 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;D)I findIndex a method_1100 + p 1 axis + p 2 position + m (Lnet/minecraft/core/Direction$Axis;DD)D min a method_35593 + p 1 axis + p 2 primaryPosition + p 4 secondaryPosition + m (Lnet/minecraft/core/Direction$Axis;I)D get a method_1099 + p 1 axis + p 2 index + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/AABB;D)D collide a method_1108 + p 1 movementAxis + p 2 collisionBox + p 3 desiredOffset + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceShape a method_20538 + c Projects this shape onto the given side. For each box in the shape, if it does not touch the given side, it is eliminated. Otherwise, the box is extended in the given axis to cover the entire range [0, 1]. + p 1 side + m ([Lnet/minecraft/world/phys/shapes/VoxelShape;DDDDDD)V method_1094 a method_1094 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; singleEncompassing b method_52620 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;)V forAllBoxes b method_1089 + p 1 action + m (Lnet/minecraft/core/Direction$Axis;)D min b method_1091 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;DD)D max b method_1102 + p 1 axis + p 2 primaryPosition + p 4 secondaryPosition + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateFace b method_1098 + p 1 side + m ()Z isEmpty c method_1110 + m (Lnet/minecraft/core/Direction$Axis;)D max c method_1105 + p 1 axis + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; optimize d method_1097 + m ()Ljava/util/List; toAabbs e method_1090 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/package-info exw net/minecraft/class_6174 +c net/minecraft/world/scores/DisplaySlot exx net/minecraft/class_8646 + f Lnet/minecraft/world/scores/DisplaySlot; LIST a field_45156 + f Lnet/minecraft/world/scores/DisplaySlot; SIDEBAR b field_45157 + f Lnet/minecraft/world/scores/DisplaySlot; BELOW_NAME c field_45158 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_BLACK d field_45159 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_BLUE e field_45160 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_GREEN f field_45161 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_AQUA g field_45162 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_RED h field_45163 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_PURPLE i field_45164 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GOLD j field_45165 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GRAY k field_45166 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_GRAY l field_45167 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_BLUE m field_45168 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GREEN n field_45169 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_AQUA o field_45170 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_RED p field_45171 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_LIGHT_PURPLE q field_45172 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_YELLOW r field_45173 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_WHITE s field_45174 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC t field_45175 + f Ljava/util/function/IntFunction; BY_ID u field_45176 + f I id v field_45177 + f Ljava/lang/String; name w field_45178 + f [Lnet/minecraft/world/scores/DisplaySlot; $VALUES x field_45179 + m ()I id a method_52621 + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/world/scores/DisplaySlot; teamColorToSlot a method_52622 + p 0 formatting + m ()[Lnet/minecraft/world/scores/DisplaySlot; $values b method_52623 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/scores/DisplaySlot$1 exx$1 net/minecraft/class_8646$1 + f [I $SwitchMap$net$minecraft$ChatFormatting a field_45180 + m ()V +c net/minecraft/world/scores/Objective exy net/minecraft/class_266 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard a field_1404 + f Ljava/lang/String; name b field_1405 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; criteria c field_1406 + f Lnet/minecraft/network/chat/Component; displayName d field_1402 + f Lnet/minecraft/network/chat/Component; formattedDisplayName e field_24194 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType f field_1403 + f Z displayAutoUpdate g field_47527 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat h field_47528 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard a method_1117 + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)V setRenderType a method_1115 + p 1 renderType + m (Lnet/minecraft/network/chat/Component;)V setDisplayName a method_1121 + p 1 displayName + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_1119 a method_1119 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOrDefault a method_55380 + p 1 defaultValue + m (Z)V setDisplayAutoUpdate a method_55381 + p 1 displayAutoUpdate + m ()Ljava/lang/String; getName b method_1113 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V setNumberFormat b method_55382 + p 1 numberFormat + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; getCriteria c method_1116 + m ()Lnet/minecraft/network/chat/Component; getDisplayName d method_1114 + m ()Z displayAutoUpdate e method_55383 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat f method_55384 + m ()Lnet/minecraft/network/chat/Component; getFormattedDisplayName g method_1120 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getRenderType h method_1118 + m ()Lnet/minecraft/network/chat/Component; createFormattedDisplayName i method_27441 + m (Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;ZLnet/minecraft/network/chat/numbers/NumberFormat;)V + p 1 scoreboard + p 2 name + p 3 criteria + p 4 displayName + p 5 renderType + p 6 displayAutoUpdate + p 7 numberFormat +c net/minecraft/world/scores/PlayerScoreEntry exz net/minecraft/class_9011 + f Ljava/lang/String; owner a comp_2127 + f I value b comp_2128 + f Lnet/minecraft/network/chat/Component; display c comp_2129 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOverride d comp_2130 + m ()Z isHidden a method_55385 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; formatValue a method_55386 + p 1 format + m ()Lnet/minecraft/network/chat/Component; ownerName b method_55387 + m ()Ljava/lang/String; owner c comp_2127 + m ()I value d comp_2128 + m ()Lnet/minecraft/network/chat/Component; display e comp_2129 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOverride f comp_2130 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/numbers/NumberFormat;)V +c net/minecraft/world/scores/PlayerScores eya net/minecraft/class_9012 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectOpenHashMap; scores a field_47529 + m ()Z hasScores a method_55388 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/Score; get a method_55389 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V setScore a method_55390 + p 1 objective + p 2 score + m (Lnet/minecraft/world/scores/Objective;Ljava/util/function/Consumer;)Lnet/minecraft/world/scores/Score; getOrCreate a method_55391 + p 1 objective + p 2 creator + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V method_55392 a method_55392 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/world/scores/Score; method_55393 a method_55393 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; listScores b method_55394 + m (Lnet/minecraft/world/scores/Objective;)Z remove b method_55395 + p 1 objective + m ()Ljava/util/Map; listRawScores c method_55396 + m ()V +c net/minecraft/world/scores/PlayerTeam eyb net/minecraft/class_268 + f I BIT_FRIENDLY_FIRE a field_31884 + f I BIT_SEE_INVISIBLES b field_31885 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard c field_1420 + f Ljava/lang/String; name d field_1421 + f Ljava/util/Set; players e field_1415 + f Lnet/minecraft/network/chat/Component; displayName f field_1414 + f Lnet/minecraft/network/chat/Component; playerPrefix g field_1418 + f Lnet/minecraft/network/chat/Component; playerSuffix h field_1419 + f Z allowFriendlyFire i field_1417 + f Z seeFriendlyInvisibles j field_1416 + f Lnet/minecraft/world/scores/Team$Visibility; nameTagVisibility k field_1423 + f Lnet/minecraft/world/scores/Team$Visibility; deathMessageVisibility l field_1422 + f Lnet/minecraft/ChatFormatting; color m field_1424 + f Lnet/minecraft/world/scores/Team$CollisionRule; collisionRule n field_1425 + f Lnet/minecraft/network/chat/Style; displayNameStyle o field_24195 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard a method_35594 + m (I)V unpackOptions a method_1146 + c Sets friendly fire and invisibles flags based off of the given bitmask. + p 1 flags + m (Lnet/minecraft/world/scores/Team$CollisionRule;)V setCollisionRule a method_1145 + c Sets the rule to be used for handling collisions with members of this team. + p 1 rule + m (Lnet/minecraft/world/scores/Team$Visibility;)V setNameTagVisibility a method_1149 + c Sets the visibility flags for player name tags. + p 1 visibility + m (Lnet/minecraft/world/scores/Team;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; formatNameForTeam a method_1142 + p 0 playerTeam + p 1 playerName + m (Lnet/minecraft/ChatFormatting;)V setColor a method_1141 + c Sets the color for this team. The team color is used mainly for team kill objectives and team-specific setDisplay usage. It does _not_ affect all situations (for instance, the prefix is used for the glowing effect). + p 1 color + m (Lnet/minecraft/network/chat/Component;)V setDisplayName a method_1137 + c Sets the display name for this team. + p 1 name + m (Z)V setAllowFriendlyFire a method_1135 + c Sets whether friendly fire (PVP between members of the team) is allowed. + p 1 friendlyFire + m (Lnet/minecraft/world/scores/Team$Visibility;)V setDeathMessageVisibility b method_1133 + c Sets the visibility flags for player death messages. + p 1 visibility + m (Lnet/minecraft/network/chat/Component;)V setPlayerPrefix b method_1138 + p 1 playerPrefix + m (Z)V setSeeFriendlyInvisibles b method_1143 + c Sets whether members of this team can see other members that are invisible. + p 1 friendlyInvisibles + m ()Lnet/minecraft/network/chat/Component; getDisplayName c method_1140 + c Gets the display name for this team. + m (Lnet/minecraft/network/chat/Component;)V setPlayerSuffix c method_1139 + p 1 playerSuffix + m ()Lnet/minecraft/network/chat/MutableComponent; getFormattedDisplayName d method_1148 + m ()Lnet/minecraft/network/chat/Component; getPlayerPrefix e method_1144 + m ()Lnet/minecraft/network/chat/Component; getPlayerSuffix f method_1136 + m ()I packOptions m method_1147 + c Gets a bitmask containing the friendly fire and invisibles flags. + m (Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;)V + p 1 scoreboard + p 2 name +c net/minecraft/world/scores/ReadOnlyScoreInfo eyc net/minecraft/class_9013 + m ()I value a method_55397 + m (Lnet/minecraft/world/scores/ReadOnlyScoreInfo;Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; safeFormatValue a method_55398 + p 0 scoreInfo + p 1 format + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; formatValue a method_55399 + p 1 format + m ()Z isLocked b method_1131 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat c method_55400 +c net/minecraft/world/scores/Score eyd net/minecraft/class_267 + f Ljava/lang/String; TAG_SCORE a field_47530 + f Ljava/lang/String; TAG_LOCKED b field_47531 + f Ljava/lang/String; TAG_DISPLAY c field_47532 + f Ljava/lang/String; TAG_FORMAT d field_47533 + f I value e field_47534 + f Z locked f field_1411 + f Lnet/minecraft/network/chat/Component; display g field_47535 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat h field_47536 + m (I)V value a method_55401 + p 1 value + m (Lnet/minecraft/world/scores/Score;Lnet/minecraft/network/chat/numbers/NumberFormat;)V method_55402 a method_55402 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; write a method_55408 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/Score; read a method_55403 + p 0 tag + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55404 a method_55404 + m (Lnet/minecraft/network/chat/Component;)V display a method_55405 + p 1 display + m (Z)V setLocked a method_1125 + p 1 locked + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V numberFormat b method_55406 + p 1 numberFormat + m ()Lnet/minecraft/network/chat/Component; display d method_55407 + m ()V +c net/minecraft/world/scores/ScoreAccess eye net/minecraft/class_9014 + m ()I get a method_55409 + m (I)V set a method_55410 + p 1 value + m (Lnet/minecraft/network/chat/Component;)V display a method_55411 + p 1 value + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V numberFormatOverride a method_55412 + p 1 format + m ()I increment b method_55413 + m (I)I add b method_55414 + p 1 increment + m ()V reset c method_55415 + m ()Z locked d method_55416 + m ()V unlock e method_55417 + m ()V lock f method_55418 + m ()Lnet/minecraft/network/chat/Component; display g method_55419 +c net/minecraft/world/scores/ScoreHolder eyf net/minecraft/class_9015 + f Ljava/lang/String; WILDCARD_NAME a_ field_47537 + f Lnet/minecraft/world/scores/ScoreHolder; WILDCARD cC field_47538 + m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/world/scores/ScoreHolder; fromGameProfile a method_55420 + p 0 gameProfile + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_55421 a method_55421 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/ScoreHolder; forNameOnly c method_55422 + p 0 name + m ()Ljava/lang/String; getScoreboardName cB method_5820 + m ()Lnet/minecraft/network/chat/Component; getFeedbackDisplayName gY method_55423 + m ()V +c net/minecraft/world/scores/ScoreHolder$1 eyf$1 net/minecraft/class_9015$1 + m ()V +c net/minecraft/world/scores/ScoreHolder$2 eyf$2 net/minecraft/class_9015$2 + f Ljava/lang/String; val$name b field_47539 + f Lnet/minecraft/network/chat/Component; val$feedbackName c field_47540 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/world/scores/ScoreHolder$3 eyf$3 net/minecraft/class_9015$3 + f Ljava/lang/String; val$name b field_47541 + m (Ljava/lang/String;)V +c net/minecraft/world/scores/Scoreboard eyg net/minecraft/class_269 + f Ljava/lang/String; HIDDEN_SCORE_PREFIX a field_47542 + f Lorg/slf4j/Logger; LOGGER b field_36309 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; objectivesByName c field_1428 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; objectivesByCriteria d field_1429 + f Ljava/util/Map; playerScores e field_1431 + f Ljava/util/Map; displayObjectives f field_1432 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; teamsByName g field_1426 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; teamsByPlayer h field_1427 + m (Lnet/minecraft/world/entity/Entity;)V entityRemoved a method_1150 + p 1 entity + m (Lnet/minecraft/world/scores/DisplaySlot;)Lnet/minecraft/world/scores/Objective; getDisplayObjective a method_1189 + p 1 slot + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)V setDisplayObjective a method_1158 + p 1 slot + p 2 objective + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveAdded a method_1185 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/scores/PlayerScores;)V method_55424 a method_55424 + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamAdded a method_1160 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)V onPlayerRemoved a method_1152 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V onScoreLockChanged a method_55337 + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V onScoreChanged a method_1176 + p 1 scoreHolder + p 2 objective + p 3 score + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;Z)Lnet/minecraft/world/scores/ScoreAccess; getOrCreatePlayerScore a method_55425 + p 1 scoreHolder + p 2 objective + p 3 readOnly + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/world/scores/ScoreHolder;Ljava/util/function/Consumer;)V forAllObjectives a method_1162 + p 1 criteria + p 2 scoreHolder + p 3 action + m (Ljava/lang/Object;)Ljava/util/List; method_1179 a method_1179 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getObjective a method_1170 + c Returns a ScoreObjective for the objective name + p 1 name + m (Ljava/lang/String;Lnet/minecraft/world/scores/PlayerTeam;)Z addPlayerToTeam a method_1172 + p 1 playerName + p 2 team + m (Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;ZLnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/world/scores/Objective; addObjective a method_1168 + p 1 name + p 2 criteria + p 3 displayName + p 4 renderType + p 5 displayAutoUpdate + p 6 numberFormat + m (Ljava/util/function/Consumer;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V method_1182 a method_1182 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; savePlayerScores a method_1169 + p 1 levelRegistry + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/lang/String;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V method_55426 a method_55426 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/ListTag;Ljava/lang/String;Lnet/minecraft/world/scores/PlayerScores;)V method_55428 a method_55428 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/scores/Score;)V method_55427 a method_55427 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadPlayerScores a method_1188 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveChanged b method_1175 + p 1 objective + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamChanged b method_1154 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)V resetAllPlayerScores b method_55429 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V onPlayerScoreRemoved b method_1190 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getPlayerTeam b method_1153 + c Retrieve the ScorePlayerTeam instance identified by the passed team name + p 1 teamName + m (Ljava/lang/String;Lnet/minecraft/world/scores/PlayerTeam;)V removePlayerFromTeam b method_1157 + c Removes the given username from the given ScorePlayerTeam. If the player is not on the team then an IllegalStateException is thrown. + p 1 username + p 2 playerTeam + m ()Ljava/util/Collection; getObjectives c method_1151 + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveRemoved c method_1173 + p 1 objective + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamRemoved c method_1193 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; listPlayerScores c method_1166 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ScoreAccess; getOrCreatePlayerScore c method_1180 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; addPlayerTeam c method_1171 + p 1 name + m ()Ljava/util/Collection; getObjectiveNames d method_1163 + m (Lnet/minecraft/world/scores/PlayerTeam;)V removePlayerTeam d method_1191 + c Removes the team from the scoreboard, updates all player memberships and broadcasts the deletion to all players + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ReadOnlyScoreInfo; getPlayerScoreInfo d method_55430 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Z removePlayerFromTeam d method_1195 + p 1 playerName + m ()Ljava/util/Collection; getTrackedPlayers e method_1178 + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V resetSinglePlayerScore e method_1155 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getPlayersTeam e method_1164 + c Gets the ScorePlayerTeam object for the given username. + p 1 username + m ()Ljava/util/Collection; getTeamNames f method_1196 + c Retrieve all registered ScorePlayerTeam names + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerScores; getOrCreatePlayerInfo f method_55431 + p 1 username + m ()Ljava/util/Collection; getPlayerTeams g method_1159 + c Retrieve all registered ScorePlayerTeam instances + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerScores; method_55432 g method_55432 + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/Collection; listPlayerScores i method_1184 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V removeObjective j method_1194 + p 1 objective + m ()V + m ()V +c net/minecraft/world/scores/Scoreboard$1 eyg$1 net/minecraft/class_269$1 + f Lnet/minecraft/world/scores/Score; val$score a field_47543 + f Z val$canModify b field_47544 + f Lorg/apache/commons/lang3/mutable/MutableBoolean; val$requiresSync c field_47545 + f Lnet/minecraft/world/scores/Objective; val$objective d field_47546 + f Lnet/minecraft/world/scores/ScoreHolder; val$scoreHolder e field_47547 + f Lnet/minecraft/world/scores/Scoreboard; field_47548 f field_47548 + m (Z)V setLocked a method_55433 + p 1 locked + m ()V sendScoreToPlayers h method_55434 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Score;ZLorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/ScoreHolder;)V +c net/minecraft/world/scores/ScoreboardSaveData eyh net/minecraft/class_273 + f Ljava/lang/String; FILE_ID a field_31893 + f Lorg/slf4j/Logger; LOGGER b field_45181 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard c field_27936 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/nbt/ListTag;)V loadTeamPlayers a method_1215 + p 1 playerTeam + p 2 tagList + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; method_17947 a method_17947 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; saveTeams a method_1217 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;)V loadDisplaySlots a method_1221 + p 1 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55435 a method_55435 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadTeams a method_1219 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; saveObjectives b method_1216 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;)V saveDisplaySlots b method_1222 + p 1 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/ScoreboardSaveData; load b method_32481 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadObjectives b method_1220 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/scores/Scoreboard;)V + p 1 scoreboard + m ()V +c net/minecraft/world/scores/Team eyi net/minecraft/class_270 + m (Lnet/minecraft/world/scores/Team;)Z isAlliedTo a method_1206 + c Same as == + p 1 other + m ()Ljava/lang/String; getName b method_1197 + c Retrieve the name by which this team is registered in the scoreboard + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; getFormattedName d method_1198 + p 1 formattedName + m ()Ljava/util/Collection; getPlayers g method_1204 + c Gets a collection of all members of this team. + m ()Z isAllowFriendlyFire h method_1205 + c Checks whether friendly fire (PVP between members of the team) is allowed. + m ()Z canSeeFriendlyInvisibles i method_1199 + c Checks whether members of this team can see other members that are invisible. + m ()Lnet/minecraft/world/scores/Team$Visibility; getNameTagVisibility j method_1201 + c Gets the visibility flags for player name tags. + m ()Lnet/minecraft/world/scores/Team$Visibility; getDeathMessageVisibility k method_1200 + c Gets the visibility flags for player death messages. + m ()Lnet/minecraft/world/scores/Team$CollisionRule; getCollisionRule l method_1203 + c Gets the rule to be used for handling collisions with members of this team. + m ()Lnet/minecraft/ChatFormatting; getColor n method_1202 + c Gets the color for this team. The team color is used mainly for team kill objectives and team-specific setDisplay usage. It does _not_ affect all situations (for instance, the prefix is used for the glowing effect). + m ()V +c net/minecraft/world/scores/Team$CollisionRule eyi$a net/minecraft/class_270$class_271 + f Lnet/minecraft/world/scores/Team$CollisionRule; ALWAYS a field_1437 + f Lnet/minecraft/world/scores/Team$CollisionRule; NEVER b field_1435 + f Lnet/minecraft/world/scores/Team$CollisionRule; PUSH_OTHER_TEAMS c field_1434 + f Lnet/minecraft/world/scores/Team$CollisionRule; PUSH_OWN_TEAM d field_1440 + f Ljava/lang/String; name e field_1436 + f I id f field_1433 + f Ljava/util/Map; BY_NAME g field_1438 + f [Lnet/minecraft/world/scores/Team$CollisionRule; $VALUES h field_1439 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_1209 + m (Lnet/minecraft/world/scores/Team$CollisionRule;)Lnet/minecraft/world/scores/Team$CollisionRule; method_1208 a method_1208 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Team$CollisionRule; byName a method_1210 + p 0 name + m ()[Lnet/minecraft/world/scores/Team$CollisionRule; $values b method_36797 + m (Lnet/minecraft/world/scores/Team$CollisionRule;)Ljava/lang/String; method_1207 b method_1207 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/scores/Team$Visibility eyi$b net/minecraft/class_270$class_272 + f Lnet/minecraft/world/scores/Team$Visibility; ALWAYS a field_1442 + f Lnet/minecraft/world/scores/Team$Visibility; NEVER b field_1443 + f Lnet/minecraft/world/scores/Team$Visibility; HIDE_FOR_OTHER_TEAMS c field_1444 + f Lnet/minecraft/world/scores/Team$Visibility; HIDE_FOR_OWN_TEAM d field_1446 + f Ljava/lang/String; name e field_1445 + f I id f field_1441 + f Ljava/util/Map; BY_NAME g field_1447 + f [Lnet/minecraft/world/scores/Team$Visibility; $VALUES h field_1448 + m ()[Ljava/lang/String; getAllNames a method_35595 + m (Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/world/scores/Team$Visibility; method_1211 a method_1211 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Team$Visibility; byName a method_1213 + p 0 name + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_1214 + m (Lnet/minecraft/world/scores/Team$Visibility;)Ljava/lang/String; method_1212 b method_1212 + m ()[Lnet/minecraft/world/scores/Team$Visibility; $values c method_36798 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/scores/criteria/ObjectiveCriteria eyj net/minecraft/class_274 + f Ljava/util/Map; CUSTOM_CRITERIA a field_33939 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; DUMMY b field_1468 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; TRIGGER c field_1462 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; DEATH_COUNT d field_1456 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILL_COUNT_PLAYERS e field_1463 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILL_COUNT_ALL f field_1457 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; HEALTH g field_1453 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; FOOD h field_1464 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; AIR i field_1459 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; ARMOR j field_1452 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; EXPERIENCE k field_1460 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; LEVEL l field_1465 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; TEAM_KILL m field_1466 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILLED_BY_TEAM n field_1458 + f Ljava/util/Map; CRITERIA_CACHE o field_1455 + f Ljava/lang/String; name p field_1454 + f Z readOnly q field_1461 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType r field_1467 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getStat a method_1223 + p 0 statType + p 1 resourceLocation + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_1224 + p 0 name + m (Ljava/lang/String;ILnet/minecraft/stats/StatType;)Ljava/util/Optional; method_17948 a method_17948 + m (Ljava/lang/String;ZLnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; registerCustom a method_37269 + p 0 name + p 1 readOnly + p 2 renderType + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; registerCustom b method_37270 + p 0 name + m ()Ljava/util/Set; getCustomCriteriaNames c method_37271 + m ()Ljava/lang/String; getName d method_1225 + m ()Z isReadOnly e method_1226 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getDefaultRenderType f method_1227 + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/String;ZLnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)V + p 1 name + p 2 readOnly + p 3 renderType + m ()V +c net/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType eyj$a net/minecraft/class_274$class_275 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; INTEGER a field_1472 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; HEARTS b field_1471 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41683 + f Ljava/lang/String; id d field_1469 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; $VALUES e field_1473 + m ()Ljava/lang/String; getId a method_1228 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; byId a method_1229 + p 0 renderType + m ()[Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; $values b method_36799 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/scores/criteria/package-info eyk net/minecraft/class_6175 +c net/minecraft/world/scores/package-info eyl net/minecraft/class_6176 +c net/minecraft/world/ticks/BlackholeTickAccess eym net/minecraft/class_6754 + f Lnet/minecraft/world/ticks/TickContainerAccess; CONTAINER_BLACKHOLE a field_35525 + f Lnet/minecraft/world/ticks/LevelTickAccess; LEVEL_BLACKHOLE b field_35526 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; emptyContainer a method_39361 + m ()Lnet/minecraft/world/ticks/LevelTickAccess; emptyLevelList b method_39362 + m ()V + m ()V +c net/minecraft/world/ticks/BlackholeTickAccess$1 eym$1 net/minecraft/class_6754$1 + m ()V +c net/minecraft/world/ticks/BlackholeTickAccess$2 eym$2 net/minecraft/class_6754$2 + m ()V +c net/minecraft/world/ticks/ContainerSingleItem eyn net/minecraft/class_8181 + m (Lnet/minecraft/world/item/ItemStack;)V setTheItem b method_54077 + p 1 item + m (I)Lnet/minecraft/world/item/ItemStack; splitTheItem c method_54078 + p 1 amount + m ()Lnet/minecraft/world/item/ItemStack; getTheItem f method_54079 + m ()Lnet/minecraft/world/item/ItemStack; removeTheItem h method_54099 +c net/minecraft/world/ticks/ContainerSingleItem$BlockContainerSingleItem eyn$a net/minecraft/class_8181$class_9210 + m ()Lnet/minecraft/world/level/block/entity/BlockEntity; getContainerBlockEntity v method_54080 +c net/minecraft/world/ticks/LevelChunkTicks eyo net/minecraft/class_6755 + f Ljava/util/Queue; tickQueue a field_35527 + f Ljava/util/List; pendingTicks b field_35528 + f Ljava/util/Set; ticksPerPosition c field_35529 + f Ljava/util/function/BiConsumer; onTickAdded d field_35530 + m (J)V unpack a method_39364 + p 1 gameTime + m (JLjava/util/function/Function;)Lnet/minecraft/nbt/ListTag; save a method_39365 + p 1 gameTime + p 3 idGetter + m (Ljava/util/function/BiConsumer;)V setOnTickAdded a method_39366 + p 1 onTickAdded + m (Ljava/util/function/Predicate;)V removeIf a method_39367 + p 1 predicate + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/ticks/LevelChunkTicks; load a method_39368 + p 0 tag + p 1 isParser + p 2 pos + m ()Lnet/minecraft/world/ticks/ScheduledTick; peek b method_39369 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V scheduleUnchecked b method_39370 + p 1 tick + m ()Lnet/minecraft/world/ticks/ScheduledTick; poll c method_39371 + m ()Ljava/util/stream/Stream; getAll d method_39372 + m ()V + m (Ljava/util/List;)V + p 1 pendingTicks +c net/minecraft/world/ticks/LevelTickAccess eyp net/minecraft/class_6756 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;)Z willTickThisTick b method_8677 + p 1 pos + p 2 type +c net/minecraft/world/ticks/LevelTicks eyq net/minecraft/class_6757 + f Ljava/util/Comparator; CONTAINER_DRAIN_ORDER a field_35531 + f Ljava/util/function/LongPredicate; tickCheck b field_35532 + f Ljava/util/function/Supplier; profiler c field_35533 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; allContainers d field_35534 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; nextTickForContainer e field_35535 + f Ljava/util/Queue; containersToTick f field_35536 + f Ljava/util/Queue; toRunThisTick g field_35537 + f Ljava/util/List; alreadyRunThisTick h field_35538 + f Ljava/util/Set; toRunThisTickSet i field_35539 + f Ljava/util/function/BiConsumer; chunkScheduleUpdater j field_35540 + m (I)Z canScheduleMoreTicks a method_39373 + p 1 maxAllowedTicks + m (J)V sortContainersToTick a method_39374 + p 1 gameTime + m (JI)V drainContainers a method_39375 + p 1 gameTime + p 3 maxAllowedTicks + m (JILnet/minecraft/util/profiling/ProfilerFiller;)V collectTicks a method_39376 + p 1 gameTime + p 3 maxAllowedTicks + p 4 profiler + m (JILjava/util/function/BiConsumer;)V tick a method_39377 + p 1 gameTime + p 3 maxAllowedTicks + p 4 ticker + m (Lnet/minecraft/world/level/ChunkPos;)V removeContainer a method_39378 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/ticks/LevelChunkTicks;)V addContainer a method_39379 + p 1 chunkPos + p 2 chunkTicks + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V clearArea a method_39380 + p 1 area + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/LevelTicks$PosAndContainerConsumer;)V forContainersInArea a method_39381 + p 1 area + p 2 action + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/ScheduledTick;)Z method_48166 a method_48166 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Vec3i;)V copyArea a method_39383 + p 1 area + p 2 offset + m (Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/LevelChunkTicks;)I method_39384 a method_39384 + m (Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/ScheduledTick;)V method_39385 a method_39385 + m (Lnet/minecraft/world/ticks/LevelTicks;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Vec3i;)V copyAreaFrom a method_48167 + p 1 levelTicks + p 2 area + p 3 offset + m (Lit/unimi/dsi/fastutil/longs/Long2LongOpenHashMap;)V method_39387 a method_39387 + m (Ljava/util/Queue;Lnet/minecraft/world/ticks/LevelChunkTicks;JI)V drainFromCurrentContainer a method_39389 + p 1 containersToTick + p 2 levelChunkTicks + p 3 gameTime + p 5 maxAllowedTicks + m (Ljava/util/function/BiConsumer;)V runCollectedTicks a method_39390 + p 1 ticker + m (Ljava/util/function/Predicate;JLnet/minecraft/world/ticks/LevelChunkTicks;)V method_39391 a method_39391 + m (Ljava/util/function/Predicate;Ljava/util/List;JLnet/minecraft/world/ticks/LevelChunkTicks;)V method_48169 a method_48169 + m (Lnet/minecraft/core/Vec3i;JJLnet/minecraft/world/ticks/ScheduledTick;)V method_48168 a method_48168 + m ()V rescheduleLeftoverContainers b method_39392 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/ScheduledTick;)Z method_39382 b method_39382 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V updateContainerScheduling b method_39393 + p 1 tick + m ()V cleanupAfterTick c method_39394 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V scheduleForThisTick c method_39395 + p 1 tick + m ()V calculateTickSetIfNeeded d method_39396 + m (Ljava/util/function/LongPredicate;Ljava/util/function/Supplier;)V + p 1 tickCheck + p 2 profiler + m ()V +c net/minecraft/world/ticks/LevelTicks$PosAndContainerConsumer eyq$a net/minecraft/class_6757$class_6758 +c net/minecraft/world/ticks/ProtoChunkTicks eyr net/minecraft/class_4296 + f Ljava/util/List; ticks a field_19275 + f Ljava/util/Set; ticksPerPosition b field_35541 + m (Lnet/minecraft/world/ticks/SavedTick;)V schedule a method_39397 + p 1 tick + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/ticks/ProtoChunkTicks; load a method_39398 + p 0 tag + p 1 idParser + p 2 chunkPos + m ()Ljava/util/List; scheduledTicks b method_39399 + m ()V +c net/minecraft/world/ticks/SavedTick eys net/minecraft/class_6759 + f Lit/unimi/dsi/fastutil/Hash$Strategy; UNIQUE_TICK_HASH a field_35542 + f Ljava/lang/Object; type b comp_248 + f Lnet/minecraft/core/BlockPos; pos c comp_249 + f I delay d comp_250 + f Lnet/minecraft/world/ticks/TickPriority; priority e comp_251 + f Ljava/lang/String; TAG_ID f field_35543 + f Ljava/lang/String; TAG_X g field_35544 + f Ljava/lang/String; TAG_Y h field_35545 + f Ljava/lang/String; TAG_Z i field_35546 + f Ljava/lang/String; TAG_DELAY j field_35547 + f Ljava/lang/String; TAG_PRIORITY k field_35548 + m ()Ljava/lang/Object; type a comp_248 + m (JJ)Lnet/minecraft/world/ticks/ScheduledTick; unpack a method_39400 + p 1 gameTime + p 3 subTickOrder + m (JLjava/util/function/Consumer;Lnet/minecraft/world/ticks/SavedTick;)V method_39405 a method_39405 + m (Lnet/minecraft/world/ticks/ScheduledTick;Ljava/util/function/Function;J)Lnet/minecraft/nbt/CompoundTag; saveTick a method_39401 + p 0 tick + p 1 idGetter + p 2 gameTime + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/SavedTick; probe a method_39402 + p 0 type + p 1 pos + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/ticks/TickPriority;)Lnet/minecraft/nbt/CompoundTag; saveTick a method_39403 + p 0 id + p 1 pos + p 2 delay + p 3 priority + m (Ljava/util/function/Function;)Lnet/minecraft/nbt/CompoundTag; save a method_39404 + p 1 idGetter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/Object;)Lnet/minecraft/world/ticks/SavedTick; method_40558 a method_40558 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Function;)Ljava/util/Optional; loadTick a method_40559 + p 0 tag + p 1 idParser + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/Consumer;)V loadTickList a method_39406 + p 0 tag + p 1 idParser + p 2 chunkPos + p 3 output + m ()Lnet/minecraft/core/BlockPos; pos b comp_249 + m ()I delay c comp_250 + m ()Lnet/minecraft/world/ticks/TickPriority; priority d comp_251 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/ticks/TickPriority;)V + m ()V +c net/minecraft/world/ticks/SavedTick$1 eys$1 net/minecraft/class_6759$1 + m (Lnet/minecraft/world/ticks/SavedTick;)I hashCode a method_39407 + p 1 savedTick + m (Lnet/minecraft/world/ticks/SavedTick;Lnet/minecraft/world/ticks/SavedTick;)Z equals a method_39408 + p 1 first + p 2 second + m ()V +c net/minecraft/world/ticks/ScheduledTick eyt net/minecraft/class_6760 + f Ljava/util/Comparator; DRAIN_ORDER a field_35549 + f Ljava/util/Comparator; INTRA_TICK_DRAIN_ORDER b field_35550 + f Lit/unimi/dsi/fastutil/Hash$Strategy; UNIQUE_TICK_HASH c field_35551 + f Ljava/lang/Object; type d comp_252 + f Lnet/minecraft/core/BlockPos; pos e comp_253 + f J triggerTick f comp_254 + f Lnet/minecraft/world/ticks/TickPriority; priority g comp_255 + f J subTickOrder h comp_256 + m ()Ljava/lang/Object; type a comp_252 + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)I method_39409 a method_39409 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/ScheduledTick; probe a method_39410 + p 0 type + p 1 pos + m ()Lnet/minecraft/core/BlockPos; pos b comp_253 + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)I method_39412 b method_39412 + m ()J triggerTick c comp_254 + m ()Lnet/minecraft/world/ticks/TickPriority; priority d comp_255 + m ()J subTickOrder e comp_256 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;JJ)V + p 1 type + p 2 pos + p 3 triggerTick + p 5 subTickOrder + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;JLnet/minecraft/world/ticks/TickPriority;J)V + p 1 type + p 2 pos + p 3 triggerTick + p 5 priority + p 6 subTickOrder + m ()V +c net/minecraft/world/ticks/ScheduledTick$1 eyt$1 net/minecraft/class_6760$1 + m (Lnet/minecraft/world/ticks/ScheduledTick;)I hashCode a method_39413 + p 1 scheduledTick + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)Z equals a method_39414 + p 1 first + p 2 second + m ()V +c net/minecraft/world/ticks/SerializableTickContainer eyu net/minecraft/class_6761 + m (JLjava/util/function/Function;)Lnet/minecraft/nbt/Tag; save b method_20463 + p 1 gameTime + p 3 idGetter +c net/minecraft/world/ticks/TickAccess eyv net/minecraft/class_6762 + m ()I count a method_20825 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V schedule a method_39363 + p 1 tick + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;)Z hasScheduledTick a method_8674 + p 1 pos + p 2 type +c net/minecraft/world/ticks/TickContainerAccess eyw net/minecraft/class_6763 +c net/minecraft/world/ticks/TickPriority eyx net/minecraft/class_1953 + f Lnet/minecraft/world/ticks/TickPriority; EXTREMELY_HIGH a field_9315 + f Lnet/minecraft/world/ticks/TickPriority; VERY_HIGH b field_9313 + f Lnet/minecraft/world/ticks/TickPriority; HIGH c field_9310 + f Lnet/minecraft/world/ticks/TickPriority; NORMAL d field_9314 + f Lnet/minecraft/world/ticks/TickPriority; LOW e field_9316 + f Lnet/minecraft/world/ticks/TickPriority; VERY_LOW f field_9309 + f Lnet/minecraft/world/ticks/TickPriority; EXTREMELY_LOW g field_9311 + f I value h field_9308 + f [Lnet/minecraft/world/ticks/TickPriority; $VALUES i field_9312 + m ()I getValue a method_8681 + m (I)Lnet/minecraft/world/ticks/TickPriority; byValue a method_8680 + p 0 priority + m ()[Lnet/minecraft/world/ticks/TickPriority; $values b method_36697 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/world/ticks/WorldGenTickAccess eyy net/minecraft/class_3235 + f Ljava/util/function/Function; containerGetter a field_35552 + m (Ljava/util/function/Function;)V + p 1 containerGetter +c net/minecraft/world/ticks/package-info eyz net/minecraft/class_6764 +c com/mojang/blaze3d/Blaze3D eza net/minecraft/class_3673 + m ()V youJustLostTheGame a method_15973 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;F)V process a method_35596 + p 0 pipeline + p 1 unknown + m ()D getTime b method_15974 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;F)V render b method_35597 + p 0 pipeline + p 1 unknown + m ()V +c com/mojang/blaze3d/DontObfuscate ezb net/minecraft/class_6177 +c com/mojang/blaze3d/FieldsAreNonnullByDefault ezc net/minecraft/class_6178 +c com/mojang/blaze3d/MethodsReturnNonnullByDefault ezd net/minecraft/class_6179 +c com/mojang/blaze3d/audio/Channel eze net/minecraft/class_4224 + c Represents an OpenAL audio channel. + f I BUFFER_DURATION_SECONDS a field_31894 + f Lorg/slf4j/Logger; LOGGER b field_18892 + f I QUEUED_BUFFER_COUNT c field_31895 + f I source d field_18893 + f Ljava/util/concurrent/atomic/AtomicBoolean; initialized e field_18894 + f I streamingBufferSize f field_18895 + f Lnet/minecraft/client/sounds/AudioStream; stream g field_18896 + m ()Lcom/mojang/blaze3d/audio/Channel; create a method_19638 + c Creates a new OpenAL audio channel.\n{@return a new OpenAL audio channel or {@code null} if its creation failed} + m (F)V setPitch a method_19639 + c Sets the pitch of the audio channel. + p 1 pitch + c the pitch of the audio channel + m (I)V pumpBuffers a method_19640 + c Reads and queues audio buffers from the stream. + p 1 readCount + c the number of buffers to read and queue + m (Lnet/minecraft/world/phys/Vec3;)V setSelfPosition a method_19641 + c Sets the position of the audio channel. + p 1 source + c the position of the audio channel + m (Lcom/mojang/blaze3d/audio/SoundBuffer;)V attachStaticBuffer a method_19642 + c Attaches a static buffer to the audio channel. + p 1 buffer + c the buffer to attach + m (Lnet/minecraft/client/sounds/AudioStream;)V attachBufferStream a method_19643 + c Attaches a buffer stream to the audio channel. + p 1 stream + c the stream to attach + m (Ljavax/sound/sampled/AudioFormat;I)I calculateBufferSize a method_19644 + c Calculates the buffer size for an audio stream.\n@return the buffer size + p 0 format + c the audio format of the stream + p 1 sampleAmount + c the number of samples to buffer + m (Z)V setLooping a method_19645 + c Sets whether the audio channel should loop. + p 1 looping + c {@code true} if the audio channel should loop, {@code false} otherwise + m ()V destroy b method_19646 + c Stops the audio channel and releases resources. + m (F)V setVolume b method_19647 + c Sets the volume of the audio channel. + p 1 volume + c the volume of the audio channel + m (I)V method_19648 b method_19648 + m (Z)V setRelative b method_19649 + c Sets whether the audio channel should be relative to the listener's position. + p 1 relative + c {@code true} if the audio channel should be relative, {@code false} otherwise + m ()V play c method_19650 + c Starts playing the audio channel. + m (F)V linearAttenuation c method_19651 + c Sets linear attenuation for the audio channel. + p 1 linearAttenuation + c the linear attenuation of the audio channel + m (I)V method_19652 c method_19652 + m ()V pause d method_19653 + c Pauses the audio channel. + m ()V unpause e method_19654 + c Resumes playing the audio channel if it was paused. + m ()V stop f method_19655 + c Stops playing the audio channel. + m ()Z playing g method_35598 + c {@return {@code true} if the audio channel is currently playing, {@code false} otherwise} + m ()Z stopped h method_19656 + c {@return {@code true} if the audio channel is stopped, {@code false} otherwise} + m ()V disableAttenuation i method_19657 + c Disables attenuation for the audio channel. + m ()V updateStream j method_19658 + c Updates the audio stream by removing processed buffers and queuing new ones. + m ()I getState k method_19659 + c {@return the state of the audio channel} + m ()I removeProcessedBuffers l method_19660 + c Removes processed audio buffers from the audio channel.\n@return the number of processed buffers removed + m (I)V + p 1 source + m ()V +c com/mojang/blaze3d/audio/Library ezf net/minecraft/class_4225 + f Lorg/slf4j/Logger; LOGGER a field_18897 + f I NO_DEVICE b field_34945 + f I DEFAULT_CHANNEL_COUNT c field_31897 + f J currentDevice d field_18898 + f J context e field_18899 + f Z supportsDisconnections f field_34946 + f Ljava/lang/String; defaultDeviceName g field_34947 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; EMPTY h field_19183 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; staticChannels i field_19184 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; streamingChannels j field_19185 + f Lcom/mojang/blaze3d/audio/Listener; listener k field_18902 + m ()Ljava/lang/String; getDefaultDeviceName a method_38500 + c {@return the name of the currently selected audio device, or {@code Unknown} if it cannot be determined} + m (Lcom/mojang/blaze3d/audio/Channel;)V releaseChannel a method_19662 + c Releases a channel.\n@return whether the channel was successfully released + p 1 channel + c The channel to release. + m (Lcom/mojang/blaze3d/audio/Library$Pool;)Lcom/mojang/blaze3d/audio/Channel; acquireChannel a method_19663 + c Acquires a sound channel based on the given mode. + p 1 pool + m (Ljava/lang/String;)J openDeviceOrFallback a method_38501 + c Opens the specified audio device, or the default device if the specifier is null.\n@return The handle of the opened device.\n@throws IllegalStateException if the device cannot be opened. + p 0 deviceSpecifier + c The name of the audio device to open, or null to open the default device. + m (Ljava/lang/String;Z)V init a method_19661 + c Initializes the OpenAL device and context.\n@throws IllegalStateException if an error occurs during initialization. + p 1 deviceSpecifier + c A string specifying the name of the audio device to use, or null to use the default device. + p 2 enableHrtf + c Whether to enable HRTF (head-related transfer function) for spatial audio. + m (Z)V setHrtf a method_41711 + c Sets the HRTF (head-related transfer function) for spatial audio, if it is supported by the current device. + p 1 enableHrtf + c Whether to enable HRTF. + m ()Ljava/lang/String; getCurrentDeviceName b method_38722 + c {@return the name of the default audio device, or {@code null} if it cannot be determined} + m (Ljava/lang/String;)Ljava/util/OptionalLong; tryOpenDevice b method_20050 + c Attempts to open the specified audio device.\n@return an {@linkplain OptionalLong} containing the handle of the opened device if successful, or empty if the device could not be opened + p 0 deviceSpecifier + c A string specifying the name of the audio device to open, or null to use the default device. + m ()Z hasDefaultDeviceChanged c method_38723 + c Checks if the default audio device has changed since the last time this method was called.\n

\nIf the default device has changed, updates the stored default device name accordingly.\n@return {@code true} if the default device has changed since the last time this method was called, {@code false} otherwise + m ()V cleanup d method_19664 + c Cleans up all resources used by the library. + m ()Lcom/mojang/blaze3d/audio/Listener; getListener e method_19665 + m ()Ljava/lang/String; getDebugString f method_20296 + m ()Ljava/util/List; getAvailableSoundDevices g method_38502 + c {@return A list of strings representing the names of available sound devices, or an empty list if no devices are available.} + m ()Z isCurrentDeviceDisconnected h method_38724 + m ()I getChannelCount i method_20297 + c {@return the number of channels available for audio playback} + m ()V + m ()V +c com/mojang/blaze3d/audio/Library$1 ezf$1 net/minecraft/class_4225$1 + m ()V +c com/mojang/blaze3d/audio/Library$ChannelPool ezf$a net/minecraft/class_4225$class_4276 + m ()Lcom/mojang/blaze3d/audio/Channel; acquire a method_19666 + m (Lcom/mojang/blaze3d/audio/Channel;)Z release a method_19667 + p 1 channel + m ()V cleanup b method_19668 + m ()I getMaxCount c method_20298 + m ()I getUsedCount d method_20299 +c com/mojang/blaze3d/audio/Library$CountingChannelPool ezf$b net/minecraft/class_4225$class_4226 + f I limit a field_18903 + f Ljava/util/Set; activeChannels b field_18904 + m (I)V + p 1 limit +c com/mojang/blaze3d/audio/Library$Pool ezf$c net/minecraft/class_4225$class_4105 + f Lcom/mojang/blaze3d/audio/Library$Pool; STATIC a field_18352 + f Lcom/mojang/blaze3d/audio/Library$Pool; STREAMING b field_18353 + f [Lcom/mojang/blaze3d/audio/Library$Pool; $VALUES c field_18354 + m ()[Lcom/mojang/blaze3d/audio/Library$Pool; $values a method_36800 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/audio/Listener ezg net/minecraft/class_4227 + c The Listener class represents the listener in a 3D audio environment.\n\nThe listener's position and orientation determine how sounds are perceived by the listener. + f F gain a field_18906 + f Lcom/mojang/blaze3d/audio/ListenerTransform; transform b field_47670 + m ()F getGain a method_19669 + c {@return the current gain value of the listener} + m (F)V setGain a method_19670 + c Sets the listener's gain. + p 1 gain + c The gain to set for the listener. + m (Lcom/mojang/blaze3d/audio/ListenerTransform;)V setTransform a method_55584 + p 1 transform + m ()V reset b method_19673 + c Resets the listener's position and orientation to default values. + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getTransform c method_55585 + m ()V +c com/mojang/blaze3d/audio/ListenerTransform ezh net/minecraft/class_9054 + f Lcom/mojang/blaze3d/audio/ListenerTransform; INITIAL a field_47671 + f Lnet/minecraft/world/phys/Vec3; position b comp_2165 + f Lnet/minecraft/world/phys/Vec3; forward c comp_2166 + f Lnet/minecraft/world/phys/Vec3; up d comp_2167 + m ()Lnet/minecraft/world/phys/Vec3; right a method_55586 + m ()Lnet/minecraft/world/phys/Vec3; position b comp_2165 + m ()Lnet/minecraft/world/phys/Vec3; forward c comp_2166 + m ()Lnet/minecraft/world/phys/Vec3; up d comp_2167 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + m ()V +c com/mojang/blaze3d/audio/OpenAlUtil ezi net/minecraft/class_4230 + c The OpenALUtil class provides utility functions for working with OpenAL audio. + f Lorg/slf4j/Logger; LOGGER a field_18915 + m (I)Ljava/lang/String; alErrorToString a method_19683 + c Converts an OpenAL error code to a human-readable error message.\n@return A String representing the error message for the given error code. + p 0 errorCode + c The OpenAL error code to convert + m (JLjava/lang/String;)Z checkALCError a method_20051 + c Checks for an ALC error and logs an error message if one is found.\n@return true if an ALC error was found, false otherwise. + p 0 deviceHandle + c The handle of the device to check for errors on + p 2 operationState + c A String describing the operation being performed when the error occurred + m (Ljava/lang/String;)Z checkALError a method_19684 + c Checks for an OpenAL error and logs an error message if one is found.\n@return true if an OpenAL error was found, false otherwise. + p 0 operationState + c A String describing the operation being performed when the error occurred + m (Ljavax/sound/sampled/AudioFormat;)I audioFormatToOpenAl a method_19685 + c Converts an AudioFormat object to the corresponding OpenAL audio format code.\n@return An integer representing the corresponding OpenAL audio format code.\n@throws IllegalArgumentException if the given AudioFormat is not a supported format. + p 0 format + c The AudioFormat object to convert + m (I)Ljava/lang/String; alcErrorToString b method_20052 + c Converts an ALC error code to a human-readable error message.\n@return A String representing the error message for the given error code. + p 0 errorCode + c The ALC error code to convert + m ()V + m ()V +c com/mojang/blaze3d/audio/SoundBuffer ezj net/minecraft/class_4231 + c The SoundBuffer class represents an audio buffer containing audio data in a particular format.\n\nThe audio data can be used to create an OpenAL buffer, which can be played in a 3D audio environment. + f Ljava/nio/ByteBuffer; data a field_18916 + f Ljavax/sound/sampled/AudioFormat; format b field_18917 + f Z hasAlBuffer c field_18918 + f I alBuffer d field_18919 + m ()Ljava/util/OptionalInt; getAlBuffer a method_19686 + c Returns an OptionalInt containing the OpenAL buffer handle for this SoundBuffer.\nIf the buffer has not been created yet, creates the buffer and returns the handle.\nIf the buffer cannot be created, returns an empty OptionalInt.\n@return An OptionalInt containing the OpenAL buffer handle, or an empty OptionalInt if the buffer cannot be created. + m ()V discardAlBuffer b method_19687 + c Deletes the OpenAL buffer associated with this SoundBuffer, if it exists. + m ()Ljava/util/OptionalInt; releaseAlBuffer c method_19688 + c Releases the OpenAL buffer associated with this SoundBuffer and returns it as an OptionalInt.\nIf no buffer has been created yet, returns an empty OptionalInt.\n@return an {@linkplain OptionalInt} containing the OpenAL buffer handle, or an empty one, if the buffer has not been created + m (Ljava/nio/ByteBuffer;Ljavax/sound/sampled/AudioFormat;)V + p 1 data + p 2 format +c com/mojang/blaze3d/audio/package-info ezk net/minecraft/class_6180 +c com/mojang/blaze3d/font/GlyphInfo ezl net/minecraft/class_379 + m ()F getBoldOffset a method_16799 + m (Z)F getAdvance a method_16798 + p 1 bold + m ()F getShadowOffset b method_16800 +c com/mojang/blaze3d/font/GlyphInfo$SpaceGlyphInfo ezl$a net/minecraft/class_379$class_7167 +c com/mojang/blaze3d/font/GlyphProvider ezm net/minecraft/class_390 + f F BASELINE a field_48382 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; getSupportedGlyphs a method_27442 + m (I)Lcom/mojang/blaze3d/font/GlyphInfo; getGlyph a method_2040 + p 1 character +c com/mojang/blaze3d/font/GlyphProvider$Conditional ezm$a net/minecraft/class_390$class_9241 + f Lcom/mojang/blaze3d/font/GlyphProvider; provider a comp_2348 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2349 + m ()Lcom/mojang/blaze3d/font/GlyphProvider; provider a comp_2348 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2349 + m (Lcom/mojang/blaze3d/font/GlyphProvider;Lnet/minecraft/client/gui/font/FontOption$Filter;)V +c com/mojang/blaze3d/font/SheetGlyphInfo ezn net/minecraft/class_383 + m ()I getPixelWidth a method_2031 + m (II)V upload a method_2030 + p 1 xOffset + p 2 yOffset + m ()I getPixelHeight b method_2032 + m ()Z isColored c method_2033 + m ()F getOversample d method_2035 + m ()F getLeft e method_2034 + m ()F getRight f method_2027 + m ()F getTop g method_2028 + m ()F getBottom h method_2029 + m ()F getBearingLeft i method_56129 + m ()F getBearingTop j method_56130 +c com/mojang/blaze3d/font/SpaceProvider ezo net/minecraft/class_7166 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; glyphs b field_37842 + m (Ljava/lang/Float;)F method_41714 a method_41714 + m (Ljava/lang/Integer;Ljava/lang/Float;)V method_41716 a method_41716 + m (Ljava/util/Map;)V + p 1 glyphs +c com/mojang/blaze3d/font/SpaceProvider$Definition ezo$a net/minecraft/class_7166$class_8554 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44791 + f Ljava/util/Map; advances c comp_1517 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; method_51732 a method_51732 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51733 a method_51733 + m ()Ljava/util/Map; advances c comp_1517 + m (Ljava/util/Map;)V + m ()V +c com/mojang/blaze3d/font/TrueTypeGlyphProvider ezp net/minecraft/class_395 + f Ljava/nio/ByteBuffer; fontMemory b field_21839 + f Lorg/lwjgl/util/freetype/FT_Face; face c field_48383 + f F oversample d field_2321 + f Lit/unimi/dsi/fastutil/ints/IntSet; skip e field_2319 + m (F)F method_42397 a method_42397 + m ()Lorg/lwjgl/util/freetype/FT_Face; validateFontOpen b method_51884 + m (Ljava/nio/ByteBuffer;Lorg/lwjgl/util/freetype/FT_Face;FFFFLjava/lang/String;)V + p 1 fontMemory + p 2 face + p 3 size + p 4 oversample + p 5 shiftX + p 6 shiftY + p 7 skip +c com/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph ezp$a net/minecraft/class_395$class_397 + f Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider; field_2336 a field_2336 + f I width b field_2338 + f I height c field_2337 + f F bearingX d field_2334 + f F bearingY e field_2333 + f F advance f field_2332 + f I index g field_2335 + m (Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider;FFIIFI)V + p 2 bearingX + p 3 bearingY + p 4 width + p 5 height + p 6 advance + p 7 index +c com/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph$1 ezp$a$1 net/minecraft/class_395$class_397$1 + f Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph; field_37843 a field_37843 + m (Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph;)V +c com/mojang/blaze3d/font/package-info ezq net/minecraft/class_6181 +c com/mojang/blaze3d/package-info ezr net/minecraft/class_6182 +c com/mojang/blaze3d/pipeline/MainTarget ezs net/minecraft/class_6364 + f I DEFAULT_WIDTH a field_33724 + f I DEFAULT_HEIGHT b field_33725 + f Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension; DEFAULT_DIMENSIONS l field_33726 + m (Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension;)Z allocateColorAttachment a method_36801 + p 1 dimension + m (II)V createFrameBuffer b method_36802 + p 1 width + p 2 height + m (Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension;)Z allocateDepthAttachment b method_36803 + p 1 dimension + m (II)Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension; allocateAttachments c method_36804 + p 1 width + p 2 height + m (II)V + p 1 width + p 2 height + m ()V +c com/mojang/blaze3d/pipeline/MainTarget$AttachmentState ezs$a net/minecraft/class_6364$class_6365 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; NONE a field_33727 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; COLOR b field_33728 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; DEPTH c field_33729 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; COLOR_DEPTH d field_33730 + f [Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; VALUES e field_33731 + f [Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; $VALUES f field_33732 + m ()[Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; $values a method_36806 + m (Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState;)Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; with a method_36807 + p 1 otherState + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/pipeline/MainTarget$Dimension ezs$b net/minecraft/class_6364$class_6366 + f I width a field_33733 + f I height b field_33734 + m (II)Ljava/util/List; listWithFallback a method_36808 + p 0 width + p 1 height + m (II)V + p 1 width + p 2 height +c com/mojang/blaze3d/pipeline/RenderCall ezt net/minecraft/class_4573 +c com/mojang/blaze3d/pipeline/RenderPipeline ezu net/minecraft/class_4491 + f Ljava/util/List; renderCalls a field_20453 + f Z isRecording b field_31899 + f I recordingBuffer c field_20454 + f Z isProcessing d field_31900 + f I processedBuffer e field_20455 + f I renderingBuffer f field_20456 + m ()Z canBeginRecording a method_35599 + m (Lcom/mojang/blaze3d/pipeline/RenderCall;)V recordRenderCall a method_35600 + p 1 renderCall + m ()Z beginRecording b method_35601 + m ()V endRecording c method_35602 + m ()Z canBeginProcessing d method_35603 + m ()Z beginProcessing e method_35604 + m ()V processRecordedQueue f method_35605 + m ()V endProcessing g method_35606 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; startRendering h method_35607 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; getRecordingQueue i method_35608 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; getProcessedQueue j method_35609 + m ()V +c com/mojang/blaze3d/pipeline/RenderTarget ezv net/minecraft/class_276 + f I RED_CHANNEL a field_31901 + f I GREEN_CHANNEL b field_31902 + f I width c field_1482 + f I height d field_1481 + f I viewWidth e field_1480 + f I viewHeight f field_1477 + f Z useDepth g field_1478 + f I frameBufferId h field_1476 + f I colorTextureId i field_1475 + f I depthBufferId j field_1474 + f I filterMode k field_1483 + f I BLUE_CHANNEL l field_31903 + f I ALPHA_CHANNEL m field_31904 + f [F clearChannels n field_1479 + m ()V destroyBuffers a method_1238 + m (FFFF)V setClearColor a method_1236 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (I)V setFilterMode a method_58226 + p 1 filterMode + m (II)V blitToScreen a method_1237 + p 1 width + p 2 height + m (IIZ)V resize a method_1234 + p 1 width + p 2 height + p 3 clearError + m (IZ)V setFilterMode a method_1232 + p 1 filterMode + p 2 force + m (Lcom/mojang/blaze3d/pipeline/RenderTarget;)V copyDepthFrom a method_29329 + p 1 otherTarget + m (Z)V bindWrite a method_1235 + p 1 setViewport + m ()V checkStatus b method_1239 + m (IIZ)V createBuffers b method_1231 + p 1 width + p 2 height + p 3 clearError + m (Z)V clear b method_1230 + p 1 clearError + m ()V bindRead c method_35610 + m (IIZ)V blitToScreen c method_22594 + p 1 width + p 2 height + p 3 disableBlend + m (Z)V _bindWrite c method_22595 + p 1 setViewport + m ()V unbindRead d method_1242 + m (IIZ)V _resize d method_22596 + p 1 width + p 2 height + p 3 clearError + m (Z)V method_22597 d method_22597 + m ()V unbindWrite e method_1240 + m (IIZ)V _blitToScreen e method_1233 + p 1 width + p 2 height + p 3 disableBlend + m ()I getColorTextureId f method_30277 + m (IIZ)V method_22600 f method_22600 + m ()I getDepthTextureId g method_30278 + m ()V method_22598 h method_22598 + m ()[F method_36809 i method_36809 + m (Z)V + p 1 useDepth +c com/mojang/blaze3d/pipeline/TextureTarget ezw net/minecraft/class_6367 + m (IIZZ)V + p 1 width + p 2 height + p 3 useDepth + p 4 clearError +c com/mojang/blaze3d/pipeline/package-info ezx net/minecraft/class_6183 +c com/mojang/blaze3d/platform/ClipboardManager ezy net/minecraft/class_3674 + f I FORMAT_UNAVAILABLE a field_31905 + f Ljava/nio/ByteBuffer; clipboardScratchBuffer b field_16236 + m (JLjava/lang/String;)V setClipboard a method_15979 + p 1 window + p 3 clipboardContent + m (JLjava/nio/ByteBuffer;[B)V pushClipboard a method_15978 + p 0 window + p 2 buffer + p 3 clipboardContent + m (JLorg/lwjgl/glfw/GLFWErrorCallbackI;)Ljava/lang/String; getClipboard a method_15977 + p 1 window + p 3 errorCallback + m ()V +c com/mojang/blaze3d/platform/DebugMemoryUntracker ezz net/minecraft/class_301 + f Ljava/lang/invoke/MethodHandle; UNTRACK a field_1643 + m ()Ljava/lang/invoke/MethodHandle; method_1408 a method_1408 + m (J)V untrack a method_1407 + p 0 memAddr + m (Lorg/lwjgl/system/Pointer;)V untrack a method_1406 + p 0 pointer + m ()V + m ()V +c com/mojang/blaze3d/platform/DisplayData faa net/minecraft/class_543 + f I width a field_3285 + f I height b field_3284 + f Ljava/util/OptionalInt; fullscreenWidth c field_3282 + f Ljava/util/OptionalInt; fullscreenHeight d field_3286 + f Z isFullscreen e field_3283 + m (IILjava/util/OptionalInt;Ljava/util/OptionalInt;Z)V + p 1 width + p 2 height + p 3 fullscreenWidth + p 4 fullscreenHeight + p 5 isFullscreen +c com/mojang/blaze3d/platform/GlDebug fab net/minecraft/class_1008 + f Lorg/slf4j/Logger; LOGGER a field_4921 + f I CIRCULAR_LOG_SIZE b field_33669 + f Ljava/util/Queue; MESSAGE_BUFFER c field_33670 + f Lcom/mojang/blaze3d/platform/GlDebug$LogEntry; lastEntry d field_33671 + f Ljava/util/List; DEBUG_LEVELS e field_4915 + f Ljava/util/List; DEBUG_LEVELS_ARB f field_4919 + f Z debugEnabled g field_33672 + m ()Ljava/util/List; getLastOpenGlDebugMessages a method_36478 + m (I)Ljava/lang/String; sourceToString a method_4222 + p 0 source + m (IIIIIJJ)V printDebugLog a method_4224 + p 0 source + c The GLenum source represented as an ordinal integer. + p 1 type + c The GLenum type represented as an ordinal integer. + p 2 id + c The unbounded integer id of the message callback. + p 3 severity + c The GLenum severity represented as an ordinal integer. + p 4 messageLength + c The {@link org.lwjgl.opengl.GLDebugMessageCallback} length argument. + p 5 message + c The {@link org.lwjgl.opengl.GLDebugMessageCallback} message argument + p 7 userParam + c A user supplied pointer that will be passed on each invocation of callback. + m (IZ)V enableDebugCallback a method_4227 + p 0 debugVerbosity + p 1 synchronous + m ()Z isDebugEnabled b method_36479 + m (I)Ljava/lang/String; typeToString b method_4228 + p 0 type + m (I)Ljava/lang/String; severityToString c method_4226 + p 0 severity + m (I)Ljava/lang/String; printUnknownToken d method_4225 + p 0 token + m ()V + m ()V +c com/mojang/blaze3d/platform/GlDebug$LogEntry fab$a net/minecraft/class_1008$class_6359 + f I id a field_33673 + f I source b field_33674 + f I type c field_33675 + f I severity d field_33676 + f Ljava/lang/String; message e field_33677 + f I count f field_33678 + m (IIIILjava/lang/String;)Z isSame a method_36480 + p 1 source + p 2 type + p 3 id + p 4 severity + p 5 message + m (IIIILjava/lang/String;)V + p 1 source + p 2 type + p 3 id + p 4 severity + p 5 message +c com/mojang/blaze3d/platform/GlUtil fac net/minecraft/class_4494 + m ()Ljava/lang/String; getVendor a method_22088 + m (I)Ljava/nio/ByteBuffer; allocateMemory a method_35611 + p 0 size + m (Ljava/nio/Buffer;)V freeMemory a method_35613 + p 0 buffer + m ()Ljava/lang/String; getCpuInfo b method_22089 + m ()Ljava/lang/String; getRenderer c method_22090 + m ()Ljava/lang/String; getOpenGLVersion d method_22091 + m ()V +c com/mojang/blaze3d/platform/IconSet fad net/minecraft/class_8518 + f Lcom/mojang/blaze3d/platform/IconSet; RELEASE a field_44650 + f Lcom/mojang/blaze3d/platform/IconSet; SNAPSHOT b field_44651 + f [Ljava/lang/String; path c field_44652 + f [Lcom/mojang/blaze3d/platform/IconSet; $VALUES d field_44653 + m ()[Lcom/mojang/blaze3d/platform/IconSet; $values a method_51417 + m (Lnet/minecraft/server/packs/PackResources;)Ljava/util/List; getStandardIcons a method_51418 + p 1 resources + m (Lnet/minecraft/server/packs/PackResources;Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getFile a method_51419 + p 1 resources + p 2 filename + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/resources/IoSupplier; getMacIcon b method_51420 + p 1 resources + m (Ljava/lang/String;I[Ljava/lang/String;)V + p 3 path + m ()V +c com/mojang/blaze3d/platform/InputConstants fae net/minecraft/class_3675 + f I KEY_Q A field_31906 + f I KEY_R B field_31907 + f I KEY_S C field_31908 + f I KEY_T D field_31909 + f I KEY_U E field_31910 + f I KEY_V F field_31911 + f I KEY_W G field_31912 + f I KEY_X H field_31913 + f I KEY_Y I field_31914 + f I KEY_Z J field_31915 + f I KEY_F1 K field_31916 + f I KEY_F2 L field_31917 + f I KEY_F3 M field_31918 + f I KEY_F4 N field_31919 + f I KEY_F5 O field_31920 + f I KEY_F6 P field_31921 + f I KEY_F7 Q field_31922 + f I KEY_F8 R field_31923 + f I KEY_F9 S field_31924 + f I KEY_F10 T field_31925 + f I KEY_F11 U field_31926 + f I KEY_F12 V field_31927 + f I KEY_F13 W field_31928 + f I KEY_F14 X field_31929 + f I KEY_F15 Y field_31930 + f I KEY_F16 Z field_31931 + f I KEY_UP aA field_31932 + f I KEY_ADD aB field_31933 + f I KEY_APOSTROPHE aC field_31934 + f I KEY_BACKSLASH aD field_31935 + f I KEY_COMMA aE field_31936 + f I KEY_EQUALS aF field_31937 + f I KEY_GRAVE aG field_31938 + f I KEY_LBRACKET aH field_31939 + f I KEY_0 a field_31940 + f I KEY_MINUS aI field_31941 + f I KEY_MULTIPLY aJ field_31942 + f I KEY_PERIOD aK field_31943 + f I KEY_RBRACKET aL field_31944 + f I KEY_SEMICOLON aM field_31945 + f I KEY_SLASH aN field_31946 + f I KEY_SPACE aO field_31947 + f I KEY_TAB aP field_31948 + f I KEY_LALT aQ field_31949 + f I KEY_LCONTROL aR field_31950 + f I KEY_LSHIFT aS field_31951 + f I KEY_LWIN aT field_31952 + f I KEY_RALT aU field_31953 + f I KEY_RCONTROL aV field_31954 + f I KEY_RSHIFT aW field_31955 + f I KEY_RWIN aX field_31956 + f I KEY_RETURN aY field_31957 + f I KEY_ESCAPE aZ field_31958 + f I KEY_F17 aa field_31959 + f I KEY_F18 ab field_31960 + f I KEY_F19 ac field_31961 + f I KEY_F20 ad field_31962 + f I KEY_F21 ae field_31963 + f I KEY_F22 af field_31964 + f I KEY_F23 ag field_31965 + f I KEY_F24 ah field_31966 + f I KEY_F25 ai field_31967 + f I KEY_NUMLOCK aj field_31968 + f I KEY_NUMPAD0 ak field_31969 + f I KEY_NUMPAD1 al field_31970 + f I KEY_NUMPAD2 am field_31971 + f I KEY_NUMPAD3 an field_31972 + f I KEY_NUMPAD4 ao field_31973 + f I KEY_NUMPAD5 ap field_31974 + f I KEY_NUMPAD6 aq field_31975 + f I KEY_NUMPAD7 ar field_31976 + f I KEY_NUMPAD8 as field_31977 + f I KEY_NUMPAD9 at field_31978 + f I KEY_NUMPADCOMMA au field_31979 + f I KEY_NUMPADENTER av field_31980 + f I KEY_NUMPADEQUALS aw field_31981 + f I KEY_DOWN ax field_31982 + f I KEY_LEFT ay field_31983 + f I KEY_RIGHT az field_31984 + f I KEY_1 b field_31985 + f I KEY_BACKSPACE ba field_31986 + f I KEY_DELETE bb field_31987 + f I KEY_END bc field_31988 + f I KEY_HOME bd field_31989 + f I KEY_INSERT be field_31990 + f I KEY_PAGEDOWN bf field_31991 + f I KEY_PAGEUP bg field_31992 + f I KEY_CAPSLOCK bh field_31993 + f I KEY_PAUSE bi field_31994 + f I KEY_SCROLLLOCK bj field_31995 + f I KEY_PRINTSCREEN bk field_31996 + f I PRESS bl field_31997 + f I RELEASE bm field_31998 + f I REPEAT bn field_31999 + f I MOUSE_BUTTON_LEFT bo field_32000 + f I MOUSE_BUTTON_MIDDLE bp field_32001 + f I MOUSE_BUTTON_RIGHT bq field_32002 + f I MOD_CONTROL br field_32003 + f I CURSOR bs field_32004 + f I CURSOR_DISABLED bt field_32005 + f I CURSOR_NORMAL bu field_32006 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; UNKNOWN bv field_16237 + f Ljava/lang/invoke/MethodHandle; GLFW_RAW_MOUSE_MOTION_SUPPORTED bw field_20333 + f I GLFW_RAW_MOUSE_MOTION bx field_20334 + f I KEY_2 c field_32007 + f I KEY_3 d field_32008 + f I KEY_4 e field_32009 + f I KEY_5 f field_32010 + f I KEY_6 g field_32011 + f I KEY_7 h field_32012 + f I KEY_8 i field_32013 + f I KEY_9 j field_32014 + f I KEY_A k field_32015 + f I KEY_B l field_32016 + f I KEY_C m field_32017 + f I KEY_D n field_32018 + f I KEY_E o field_32019 + f I KEY_F p field_32020 + f I KEY_G q field_32021 + f I KEY_H r field_32022 + f I KEY_I s field_32023 + f I KEY_J t field_32024 + f I KEY_K u field_32025 + f I KEY_L v field_32026 + f I KEY_M w field_32027 + f I KEY_N x field_32028 + f I KEY_O y field_32029 + f I KEY_P z field_32030 + m ()Z isRawMouseInputSupported a method_21735 + m (II)Lcom/mojang/blaze3d/platform/InputConstants$Key; getKey a method_15985 + p 0 keyCode + p 1 scanCode + m (JI)Z isKeyDown a method_15987 + p 0 window + p 2 key + m (JIDD)V grabOrReleaseMouse a method_15984 + p 0 window + p 2 cursorValue + p 3 xPos + p 5 yPos + m (JLorg/lwjgl/glfw/GLFWCursorPosCallbackI;Lorg/lwjgl/glfw/GLFWMouseButtonCallbackI;Lorg/lwjgl/glfw/GLFWScrollCallbackI;Lorg/lwjgl/glfw/GLFWDropCallbackI;)V setupMouseCallbacks a method_15983 + p 0 window + p 2 cursorPositionCallback + p 3 mouseButtonCallback + p 4 scrollCallback + p 5 dragAndDropCallback + m (JLorg/lwjgl/glfw/GLFWKeyCallbackI;Lorg/lwjgl/glfw/GLFWCharModsCallbackI;)V setupKeyboardCallbacks a method_15986 + p 0 window + p 2 keyCallback + p 3 charModifierCallback + m (JZ)V updateRawMouseInput a method_21736 + p 0 window + p 2 enableRawMouseMotion + m (Ljava/lang/String;)Lcom/mojang/blaze3d/platform/InputConstants$Key; getKey a method_15981 + p 0 name + m ()V + m ()V +c com/mojang/blaze3d/platform/InputConstants$Key fae$a net/minecraft/class_3675$class_306 + f Ljava/lang/String; name a field_1663 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; type b field_1666 + f I value c field_1665 + f Lnet/minecraft/util/LazyLoadedValue; displayName d field_24196 + f Ljava/util/Map; NAME_MAP e field_1664 + m ()Lcom/mojang/blaze3d/platform/InputConstants$Type; getType a method_1442 + m (Lcom/mojang/blaze3d/platform/InputConstants$Type;ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_27444 a method_27444 + m ()I getValue b method_1444 + m ()Ljava/lang/String; getName c method_1441 + m ()Lnet/minecraft/network/chat/Component; getDisplayName d method_27445 + m ()Ljava/util/OptionalInt; getNumericKeyValue e method_30103 + m (Ljava/lang/String;Lcom/mojang/blaze3d/platform/InputConstants$Type;I)V + p 1 name + p 2 type + p 3 value + m ()V +c com/mojang/blaze3d/platform/InputConstants$Type fae$b net/minecraft/class_3675$class_307 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; KEYSYM a field_1668 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; SCANCODE b field_1671 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; MOUSE c field_1672 + f Ljava/lang/String; KEY_KEYBOARD_UNKNOWN d field_44919 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; map e field_1674 + f Ljava/lang/String; defaultPrefix f field_1673 + f Ljava/util/function/BiFunction; displayTextSupplier g field_24197 + f [Lcom/mojang/blaze3d/platform/InputConstants$Type; $VALUES h field_1670 + m ()[Lcom/mojang/blaze3d/platform/InputConstants$Type; $values a method_36810 + m (I)Lcom/mojang/blaze3d/platform/InputConstants$Key; getOrCreate a method_1447 + p 1 keyCode + m (Lcom/mojang/blaze3d/platform/InputConstants$Type;Ljava/lang/String;I)V addKey a method_1446 + p 0 type + p 1 name + p 2 keyCode + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27447 a method_27447 + m (I)Lcom/mojang/blaze3d/platform/InputConstants$Key; method_27448 b method_27448 + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27449 b method_27449 + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27450 c method_27450 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 3 defaultPrefix + p 4 displayTextSupplier + m ()V +c com/mojang/blaze3d/platform/Lighting faf net/minecraft/class_308 + f Lorg/joml/Vector3f; DIFFUSE_LIGHT_0 a field_24426 + f Lorg/joml/Vector3f; DIFFUSE_LIGHT_1 b field_24427 + f Lorg/joml/Vector3f; NETHER_DIFFUSE_LIGHT_0 c field_24428 + f Lorg/joml/Vector3f; NETHER_DIFFUSE_LIGHT_1 d field_24429 + f Lorg/joml/Vector3f; INVENTORY_DIFFUSE_LIGHT_0 e field_29567 + f Lorg/joml/Vector3f; INVENTORY_DIFFUSE_LIGHT_1 f field_29568 + m ()V setupNetherLevel a method_1452 + m (Lorg/joml/Quaternionf;)V setupForEntityInInventory a method_56819 + p 0 quaternion + m ()V setupLevel b method_27869 + m ()V setupForFlatItems c method_24210 + m ()V setupFor3DItems d method_24211 + m ()V setupForEntityInInventory e method_34742 + m ()V + m ()V +c com/mojang/blaze3d/platform/MacosUtil fag net/minecraft/class_6417 + f I NS_RESIZABLE_WINDOW_MASK a field_46537 + f I NS_FULL_SCREEN_WINDOW_MASK b field_34053 + m (J)V exitNativeFullscreen a method_37461 + p 0 windowId + m (Lnet/minecraft/server/packs/resources/IoSupplier;)V loadIcon a method_41718 + p 0 iconStreamSupplier + m (Lca/weblite/objc/NSObject;)Z isInNativeFullscreen a method_37462 + p 0 nsWindow + m (J)V clearResizableBit b method_54101 + p 0 windowId + m (Lca/weblite/objc/NSObject;)J getStyleMask b method_54102 + p 0 nsWindow + m (J)Ljava/util/Optional; getNsWindow c method_37463 + p 0 windowId + m (Lca/weblite/objc/NSObject;)V toggleNativeFullscreen c method_37464 + p 0 nsWindow + m (Lca/weblite/objc/NSObject;)V method_54103 d method_54103 + m ()V +c com/mojang/blaze3d/platform/Monitor fah net/minecraft/class_313 + f J monitor a field_1800 + f Ljava/util/List; videoModes b field_1797 + f Lcom/mojang/blaze3d/platform/VideoMode; currentMode c field_1802 + f I x d field_1799 + f I y e field_1798 + m ()V refreshVideoModes a method_1615 + m (I)Lcom/mojang/blaze3d/platform/VideoMode; getMode a method_1620 + p 1 index + m (Lcom/mojang/blaze3d/platform/VideoMode;)I getVideoModeIndex a method_1619 + p 1 videoMode + m (Ljava/util/Optional;)Lcom/mojang/blaze3d/platform/VideoMode; getPreferredVidMode a method_1614 + p 1 videoMode + m ()Lcom/mojang/blaze3d/platform/VideoMode; getCurrentMode b method_1617 + m ()I getX c method_1616 + m ()I getY d method_1618 + m ()I getModeCount e method_1621 + m ()J getMonitor f method_1622 + m (J)V + p 1 monitor +c com/mojang/blaze3d/platform/MonitorCreator fai net/minecraft/class_3676 +c com/mojang/blaze3d/platform/NativeImage faj net/minecraft/class_1011 + f Lorg/slf4j/Logger; LOGGER a field_21684 + f Ljava/util/Set; OPEN_OPTIONS b field_4992 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; format c field_4986 + f I width d field_4991 + f I height e field_4989 + f Z useStbFree f field_4990 + f J pixels g field_4988 + f J size h field_4987 + m ()I getWidth a method_4307 + m (F)V downloadDepthBuffer a method_35620 + p 1 unused + m (II)I getPixelRGBA a method_4315 + p 1 x + p 2 y + m (IIB)V setPixelLuminance a method_35621 + p 1 x + p 2 y + p 3 luminance + m (III)V setPixelRGBA a method_4305 + p 1 x + p 2 y + p 3 abgrColor + m (IIIII)V fillRect a method_4326 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 value + m (IIIIIIIZZ)V upload a method_4312 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 mipmap + p 9 autoClose + m (IIIIIIIZZZZ)V upload a method_22619 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 blur + p 9 clamp + p 10 mipmap + p 11 autoClose + m (IIIIIIZZ)V copyRect a method_4304 + p 1 xFrom + p 2 yFrom + p 3 xToDelta + p 4 yToDelta + p 5 width + p 6 height + p 7 mirrorX + p 8 mirrorY + m (IIIILcom/mojang/blaze3d/platform/NativeImage;)V resizeSubRectTo a method_4300 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 image + m (IIIZ)V upload a method_4301 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 mipmap + m (IZ)V downloadTexture a method_4327 + p 1 level + p 2 opaque + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4310 + p 0 format + p 1 textureStream + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4303 + p 0 format + p 1 textureData + m (Lcom/mojang/blaze3d/platform/NativeImage;)V copyFrom a method_4317 + p 1 other + m (Lcom/mojang/blaze3d/platform/NativeImage;IIIIIIZZ)V copyRect a method_47594 + p 1 source + p 2 xFrom + p 3 yFrom + p 4 xTo + p 5 yTo + p 6 width + p 7 height + p 8 mirrorX + p 9 mirrorY + m (Ljava/io/File;)V writeToFile a method_4325 + p 1 file + m (Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4309 + p 0 textureStream + m (Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4324 + p 0 textureData + m (Ljava/nio/channels/WritableByteChannel;)Z writeToChannel a method_24032 + p 1 channel + m (Ljava/nio/file/Path;)V writeToFile a method_4314 + p 1 path + m (Ljava/util/function/IntUnaryOperator;)Lcom/mojang/blaze3d/platform/NativeImage; mappedCopy a method_48462 + p 1 function + m (Lorg/lwjgl/util/freetype/FT_Face;I)Z copyFromFont a method_4316 + p 1 face + p 2 index + m (ZZ)V setFilter a method_4308 + p 0 linear + p 1 mipmap + m ([B)Lcom/mojang/blaze3d/platform/NativeImage; read a method_49277 + p 0 bytes + m ()I getHeight b method_4323 + m (II)B getRedOrLuminance b method_35623 + p 1 x + p 2 y + m (III)V blendPixel b method_35624 + p 1 x + p 2 y + p 3 abgrColor + m (IIIIIIIZZZZ)V _upload b method_4321 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 blur + p 9 clamp + p 10 mipmap + p 11 autoClose + m (Ljava/util/function/IntUnaryOperator;)V applyToAllPixels b method_51596 + p 1 function + m ()Lcom/mojang/blaze3d/platform/NativeImage$Format; format c method_4318 + m (II)B getGreenOrLuminance c method_35625 + p 1 x + p 2 y + m (IIIIIIIZZZZ)V method_22620 c method_22620 + m ()[I getPixelsRGBA d method_48463 + m (II)B getBlueOrLuminance d method_35626 + p 1 x + p 2 y + m ()[I makePixelArray e method_4322 + m (II)B getLuminanceOrAlpha e method_4311 + p 1 x + p 2 y + m ()V drawPixels f method_35627 + m (II)Z isOutsideBounds f method_36559 + p 1 x + p 2 y + m ()[B asByteArray g method_24036 + m ()V flipY h method_4319 + m ()V untrack i method_4302 + m ()V checkAllocated j method_4320 + m (IIZ)V + p 1 width + p 2 height + p 3 useCalloc + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;IIZ)V + p 1 format + p 2 width + p 3 height + p 4 useCalloc + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;IIZJ)V + p 1 format + p 2 width + p 3 height + p 4 useStbFree + p 5 pixels + m ()V +c com/mojang/blaze3d/platform/NativeImage$Format faj$a net/minecraft/class_1011$class_1012 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; RGBA a field_4997 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; RGB b field_5001 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; LUMINANCE_ALPHA c field_5002 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; LUMINANCE d field_4998 + f I components e field_4994 + f I glFormat f field_4993 + f Z hasRed g field_5005 + f Z hasGreen h field_5004 + f Z hasBlue i field_5003 + f Z hasLuminance j field_5000 + f Z hasAlpha k field_4999 + f I redOffset l field_5010 + f I greenOffset m field_5009 + f I blueOffset n field_5008 + f I luminanceOffset o field_5007 + f I alphaOffset p field_5006 + f Z supportedByStb q field_4996 + f [Lcom/mojang/blaze3d/platform/NativeImage$Format; $VALUES r field_4995 + m ()I components a method_4335 + m (I)Lcom/mojang/blaze3d/platform/NativeImage$Format; getStbFormat a method_4336 + p 0 channels + m ()V setPackPixelStoreState b method_4339 + m ()V setUnpackPixelStoreState c method_4340 + m ()I glFormat d method_4333 + m ()Z hasRed e method_35628 + m ()Z hasGreen f method_35629 + m ()Z hasBlue g method_35630 + m ()Z hasLuminance h method_35631 + m ()Z hasAlpha i method_4329 + m ()I redOffset j method_35632 + m ()I greenOffset k method_35633 + m ()I blueOffset l method_35634 + m ()I luminanceOffset m method_35635 + m ()I alphaOffset n method_4332 + m ()Z hasLuminanceOrRed o method_35636 + m ()Z hasLuminanceOrGreen p method_35637 + m ()Z hasLuminanceOrBlue q method_35638 + m ()Z hasLuminanceOrAlpha r method_4337 + m ()I luminanceOrRedOffset s method_35639 + m ()I luminanceOrGreenOffset t method_35640 + m ()I luminanceOrBlueOffset u method_35641 + m ()I luminanceOrAlphaOffset v method_4330 + m ()Z supportedByStb w method_4338 + m ()[Lcom/mojang/blaze3d/platform/NativeImage$Format; $values x method_36811 + m (Ljava/lang/String;IIIZZZZZIIIIIZ)V + p 3 components + p 4 glFormat + p 5 hasRed + p 6 hasGreen + p 7 hasBlue + p 8 hasLuminance + p 9 hasAlpha + p 10 redOffset + p 11 greenOffset + p 12 blueOffset + p 13 luminanceOffset + p 14 alphaOffset + p 15 supportedByStb + m ()V +c com/mojang/blaze3d/platform/NativeImage$InternalGlFormat faj$b net/minecraft/class_1011$class_1013 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RGBA a field_5012 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RGB b field_5011 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RG c field_33618 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RED d field_33619 + f I glFormat e field_5015 + f [Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; $VALUES f field_5014 + m ()I glFormat a method_4341 + m ()[Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; $values b method_36812 + m (Ljava/lang/String;II)V + p 3 glFormat + m ()V +c com/mojang/blaze3d/platform/NativeImage$WriteCallback faj$c net/minecraft/class_1011$class_1014 + f Ljava/nio/channels/WritableByteChannel; output a field_5018 + f Ljava/io/IOException; exception b field_5019 + m ()V throwIfException a method_4342 + m (Ljava/nio/channels/WritableByteChannel;)V + p 1 output +c com/mojang/blaze3d/platform/ScreenManager fak net/minecraft/class_323 + f Lorg/slf4j/Logger; LOGGER a field_37266 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; monitors b field_1993 + f Lcom/mojang/blaze3d/platform/MonitorCreator; monitorCreator c field_1991 + m ()V shutdown a method_15992 + m (III)I clamp a method_15991 + p 0 value + p 1 min + p 2 max + m (J)Lcom/mojang/blaze3d/platform/Monitor; getMonitor a method_1680 + p 1 monitorID + m (JI)V onMonitorChange a method_1683 + p 1 monitorID + p 3 opCode + m (Lcom/mojang/blaze3d/platform/Window;)Lcom/mojang/blaze3d/platform/Monitor; findBestMonitor a method_1681 + p 1 window + m (Lcom/mojang/blaze3d/platform/MonitorCreator;)V + p 1 monitorCreator + m ()V +c com/mojang/blaze3d/platform/VideoMode fal net/minecraft/class_319 + f I width a field_1980 + f I height b field_1979 + f I redBits c field_1978 + f I greenBits d field_1977 + f I blueBits e field_1976 + f I refreshRate f field_1975 + f Ljava/util/regex/Pattern; PATTERN g field_1981 + m ()I getWidth a method_1668 + m (Ljava/lang/String;)Ljava/util/Optional; read a method_1665 + p 0 videoMode + m ()I getHeight b method_1669 + m ()I getRedBits c method_1666 + m ()I getGreenBits d method_1667 + m ()I getBlueBits e method_1672 + m ()I getRefreshRate f method_1671 + m ()Ljava/lang/String; write g method_1670 + m (IIIIII)V + p 1 width + p 2 height + p 3 redBits + p 4 greenBits + p 5 blueBits + p 6 refreshRate + m (Lorg/lwjgl/glfw/GLFWVidMode$Buffer;)V + p 1 bufferVideoMode + m (Lorg/lwjgl/glfw/GLFWVidMode;)V + p 1 glfwVideoMode + m ()V +c com/mojang/blaze3d/platform/Window fam net/minecraft/class_1041 + f Z vsync A field_16517 + f I BASE_WIDTH a field_52250 + f I BASE_HEIGHT b field_52251 + f Lorg/slf4j/Logger; LOGGER c field_5178 + f Lorg/lwjgl/glfw/GLFWErrorCallback; defaultErrorCallback d field_5190 + f Lcom/mojang/blaze3d/platform/WindowEventHandler; eventHandler e field_5176 + f Lcom/mojang/blaze3d/platform/ScreenManager; screenManager f field_5195 + f J window g field_5187 + f I windowedX h field_5175 + f I windowedY i field_5185 + f I windowedWidth j field_5174 + f I windowedHeight k field_5184 + f Ljava/util/Optional; preferredFullscreenVideoMode l field_5193 + f Z fullscreen m field_5191 + f Z actuallyFullscreen n field_5177 + f I x o field_5183 + f I y p field_5198 + f I width q field_5182 + f I height r field_5197 + f I framebufferWidth s field_5181 + f I framebufferHeight t field_5196 + f I guiScaledWidth u field_5180 + f I guiScaledHeight v field_5194 + f D guiScale w field_5179 + f Ljava/lang/String; errorSection x field_5192 + f Z dirty y field_5186 + f I framerateLimit z field_16238 + m ()Ljava/lang/String; getPlatform a method_60793 + m (D)V setGuiScale a method_15997 + p 1 scaleFactor + m (I)V setFramerateLimit a method_15999 + p 1 limit + m (II)V setWindowed a method_36813 + p 1 windowedWidth + p 2 windowedHeight + m (IJ)V defaultErrorCallback a method_4482 + p 1 error + p 2 description + m (IZ)I calculateScale a method_4476 + p 1 guiScale + p 2 forceUnicode + m (JII)V onMove a method_4478 + p 1 window + p 3 x + p 4 y + m (JZ)V onFocus a method_4494 + p 1 window + p 3 hasFocus + m (Lnet/minecraft/server/packs/PackResources;Lcom/mojang/blaze3d/platform/IconSet;)V setIcon a method_4491 + p 1 packResources + p 2 iconSet + m (Ljava/lang/String;)V setErrorSection a method_4474 + p 1 errorSection + m (Ljava/util/Optional;)V setPreferredFullscreenVideoMode a method_4505 + p 1 preferredFullscreenVideoMode + m (Ljava/util/function/BiConsumer;)V checkGlfwError a method_4492 + p 0 errorConsumer + m (Z)V updateVsync a method_4497 + p 1 vsync + m ()I getRefreshRate b method_22092 + m (I)V setWidth b method_35642 + p 1 framebufferWidth + m (IJ)V bootCrash b method_4501 + p 0 error + p 1 description + m (JII)V onFramebufferResize b method_4504 + p 1 window + p 3 framebufferWidth + p 4 framebufferHeight + m (JZ)V onEnter b method_30132 + p 1 window + p 3 cursorEntered + c {@code true} if the cursor entered the window, {@code false} if the cursor left + m (Ljava/lang/String;)V setTitle b method_24286 + p 1 title + m (Z)V updateRawMouseInput b method_21668 + p 1 enableRawMouseMotion + m ()Z shouldClose c method_22093 + m (I)V setHeight c method_35643 + p 1 framebufferHeight + m (JII)V onResize c method_4488 + p 1 window + p 3 width + p 4 height + m (Z)V updateFullscreen c method_4485 + p 1 vsyncEnabled + m ()V setDefaultErrorCallback d method_4513 + m ()I getFramerateLimit e method_16000 + m ()V updateDisplay f method_15998 + m ()Ljava/util/Optional; getPreferredFullscreenVideoMode g method_4511 + m ()V changeFullscreenVideoMode h method_4475 + m ()V toggleFullScreen i method_4500 + m ()J getWindow j method_4490 + c Gets a pointer to the native window object that is passed to GLFW. + m ()Z isFullscreen k method_4498 + m ()I getWidth l method_4489 + m ()I getHeight m method_4506 + m ()I getScreenWidth n method_4480 + m ()I getScreenHeight o method_4507 + m ()I getGuiScaledWidth p method_4486 + m ()I getGuiScaledHeight q method_4502 + m ()I getX r method_4499 + m ()I getY s method_4477 + m ()D getGuiScale t method_4495 + m ()Lcom/mojang/blaze3d/platform/Monitor; findBestMonitor u method_20831 + m ()V setBootErrorCallback v method_4481 + m ()V refreshFramebufferSize w method_4483 + m ()V setMode x method_4479 + m (Lcom/mojang/blaze3d/platform/WindowEventHandler;Lcom/mojang/blaze3d/platform/ScreenManager;Lcom/mojang/blaze3d/platform/DisplayData;Ljava/lang/String;Ljava/lang/String;)V + p 1 eventHandler + p 2 screenManager + p 3 displayData + p 4 preferredFullscreenVideoMode + p 5 title + m ()V +c com/mojang/blaze3d/platform/Window$WindowInitFailed fam$a net/minecraft/class_1041$class_4716 + m (Ljava/lang/String;)V +c com/mojang/blaze3d/platform/WindowEventHandler fan net/minecraft/class_3678 + m ()V resizeDisplay a method_15993 + m (Z)V setWindowActive a method_15995 + p 1 windowActive + m ()V cursorEntered b method_30133 +c com/mojang/blaze3d/platform/package-info fao net/minecraft/class_6185 +c com/mojang/blaze3d/preprocessor/GlslPreprocessor fap net/minecraft/class_5913 + f Ljava/lang/String; C_COMMENT a field_32036 + f Ljava/lang/String; LINE_COMMENT b field_33620 + f Ljava/util/regex/Pattern; REGEX_MOJ_IMPORT c field_29200 + f Ljava/util/regex/Pattern; REGEX_VERSION d field_29201 + f Ljava/util/regex/Pattern; REGEX_ENDS_WITH_WHITESPACE e field_33621 + m (Ljava/lang/String;)Ljava/util/List; process a method_34229 + p 1 shaderData + m (Ljava/lang/String;I)Ljava/lang/String; setVersion a method_34230 + p 1 versionData + p 2 glslVersion + m (Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor$Context;)Ljava/lang/String; processVersions a method_34231 + p 1 versionData + p 2 context + m (Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor$Context;Ljava/lang/String;)Ljava/util/List; processImports a method_34232 + p 1 shaderData + p 2 context + p 3 includeDirectory + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Z isDirectiveEnabled a method_36423 + p 0 shaderData + p 1 matcher + m (Ljava/lang/String;Ljava/util/regex/Matcher;I)Z isDirectiveDisabled a method_36424 + p 0 shaderData + p 1 matcher + p 2 offset + m (ZLjava/lang/String;)Ljava/lang/String; applyImport a method_34233 + p 1 useFullPath + p 2 directory + m ()V + m ()V +c com/mojang/blaze3d/preprocessor/GlslPreprocessor$Context fap$a net/minecraft/class_5913$class_5914 + f I glslVersion a field_29202 + f I sourceId b field_29203 + m ()V +c com/mojang/blaze3d/preprocessor/package-info faq net/minecraft/class_6186 +c com/mojang/blaze3d/shaders/AbstractUniform far net/minecraft/class_278 + m (F)V set a method_1251 + p 1 x + m (FF)V set a method_1255 + p 1 x + p 2 y + m (FFF)V set a method_1249 + p 1 x + p 2 y + p 3 z + m (FFFF)V set a method_1254 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFFFF)V setMat2x3 a method_35644 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m10 + p 5 m11 + p 6 m12 + m (FFFFFFFF)V setMat2x4 a method_35645 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + m (FFFFFFFFF)V setMat3x3 a method_35646 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m10 + p 5 m11 + p 6 m12 + p 7 m20 + p 8 m21 + p 9 m22 + m (FFFFFFFFFFFF)V setMat3x4 a method_35647 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + m (FFFFFFFFFFFFFFFF)V setMat4x4 a method_35648 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + p 13 m30 + p 14 m31 + p 15 m32 + p 16 m33 + m (I)V set a method_35649 + p 1 x + m (II)V set a method_35650 + p 1 x + p 2 y + m (III)V set a method_35651 + p 1 x + p 2 y + p 3 z + m (IIII)V setSafe a method_1248 + p 1 x + p 2 y + p 3 z + p 4 w + m (Lorg/joml/Matrix3f;)V set a method_39978 + p 1 matrix + m (Lorg/joml/Matrix4f;)V set a method_1250 + p 1 matrix + m (Lorg/joml/Vector3f;)V set a method_34413 + p 1 vector + m (Lorg/joml/Vector4f;)V set a method_35652 + p 1 vector + m ([F)V set a method_1253 + p 1 valueArray + m (FFFF)V setSafe b method_1252 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFFFF)V setMat3x2 b method_35653 + p 1 m00 + p 2 m01 + p 3 m10 + p 4 m11 + p 5 m20 + p 6 m21 + m (FFFFFFFF)V setMat4x2 b method_35654 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + m (FFFFFFFFFFFF)V setMat4x3 b method_35655 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + m (IIII)V set b method_35656 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFF)V setMat2x2 c method_35657 + p 1 m00 + p 2 m01 + p 3 m10 + p 4 m11 + m ()V +c com/mojang/blaze3d/shaders/BlendMode fas net/minecraft/class_277 + f Lcom/mojang/blaze3d/shaders/BlendMode; lastApplied a field_1484 + f I srcColorFactor b field_1491 + f I srcAlphaFactor c field_1490 + f I dstColorFactor d field_1489 + f I dstAlphaFactor e field_1488 + f I blendFunc f field_1486 + f Z separateBlend g field_1487 + f Z opaque h field_1485 + m ()V apply a method_1244 + m (Ljava/lang/String;)I stringToBlendFunc a method_1247 + c Converts a blend function name to an id, returning add (32774) if not recognized. + p 0 funcName + m ()Z isOpaque b method_1245 + m (Ljava/lang/String;)I stringToBlendFactor b method_1243 + p 0 factorName + m (ZZIIIII)V + p 1 separateBlend + p 2 opaque + p 3 srcColorFactor + p 4 dstColorFactor + p 5 srcAlphaFactor + p 6 dstAlphaFactor + p 7 blendFunc + m ()V + m (III)V + p 1 srcFactor + p 2 dstFactor + p 3 blendFunc + m (IIIII)V + p 1 srcColorFactor + p 2 dstColorFactor + p 3 srcAlphaFactor + p 4 dstAlphaFactor + p 5 blendFunc +c com/mojang/blaze3d/shaders/Effect fat net/minecraft/class_5936 +c com/mojang/blaze3d/shaders/EffectProgram fau net/minecraft/class_5937 + f Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor; PREPROCESSOR a field_29329 + f I references b field_29330 + m (Lcom/mojang/blaze3d/shaders/Effect;)V attachToEffect a method_34414 + p 1 effect + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/EffectProgram; compileShader a method_34415 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + m (Lcom/mojang/blaze3d/shaders/Program$Type;ILjava/lang/String;)V + p 1 type + p 2 id + p 3 name + m ()V +c com/mojang/blaze3d/shaders/EffectProgram$1 fau$1 net/minecraft/class_5937$1 + m ()V +c com/mojang/blaze3d/shaders/FogShape fav net/minecraft/class_6854 + f Lcom/mojang/blaze3d/shaders/FogShape; SPHERE a field_36350 + f Lcom/mojang/blaze3d/shaders/FogShape; CYLINDER b field_36351 + f I index c field_36352 + f [Lcom/mojang/blaze3d/shaders/FogShape; $VALUES d field_36353 + m ()I getIndex a method_40036 + m ()[Lcom/mojang/blaze3d/shaders/FogShape; $values b method_40037 + m (Ljava/lang/String;II)V + p 3 index + m ()V +c com/mojang/blaze3d/shaders/Program faw net/minecraft/class_281 + f I MAX_LOG_LENGTH a field_32037 + f Lcom/mojang/blaze3d/shaders/Program$Type; type b field_1524 + f Ljava/lang/String; name c field_1525 + f I id d field_1523 + m ()V close a method_1282 + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor;)Lcom/mojang/blaze3d/shaders/Program; compileShader a method_1283 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + p 4 preprocessor + m (Lcom/mojang/blaze3d/shaders/Shader;)V attachToShader a method_1281 + p 1 shader + m ()Ljava/lang/String; getName b method_1280 + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor;)I compileShaderInternal b method_34416 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + p 4 preprocessor + m ()I getId c method_34417 + m (Lcom/mojang/blaze3d/shaders/Program$Type;ILjava/lang/String;)V + p 1 type + p 2 id + p 3 name +c com/mojang/blaze3d/shaders/Program$Type faw$a net/minecraft/class_281$class_282 + f Lcom/mojang/blaze3d/shaders/Program$Type; VERTEX a field_1530 + f Lcom/mojang/blaze3d/shaders/Program$Type; FRAGMENT b field_1531 + f Ljava/lang/String; name c field_1526 + f Ljava/lang/String; extension d field_1528 + f I glType e field_1529 + f Ljava/util/Map; programs f field_1527 + f [Lcom/mojang/blaze3d/shaders/Program$Type; $VALUES g field_1532 + m ()Ljava/lang/String; getName a method_1286 + m ()Ljava/lang/String; getExtension b method_1284 + m ()Ljava/util/Map; getPrograms c method_1289 + m ()I getGlType d method_1287 + m ()[Lcom/mojang/blaze3d/shaders/Program$Type; $values e method_36815 + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;I)V + p 3 name + p 4 extension + p 5 glType + m ()V +c com/mojang/blaze3d/shaders/ProgramManager fax net/minecraft/class_285 + f Lorg/slf4j/Logger; LOGGER a field_1551 + m ()I createProgram a method_1306 + m (I)V glUseProgram a method_22094 + p 0 program + m (Lcom/mojang/blaze3d/shaders/Shader;)V releaseProgram a method_1304 + p 0 shader + m (Lcom/mojang/blaze3d/shaders/Shader;)V linkShader b method_1307 + p 0 shader + m ()V + m ()V +c com/mojang/blaze3d/shaders/Shader fay net/minecraft/class_3679 + m ()I getId a method_1270 + m ()V markDirty b method_1279 + m ()Lcom/mojang/blaze3d/shaders/Program; getVertexProgram c method_1274 + m ()Lcom/mojang/blaze3d/shaders/Program; getFragmentProgram d method_1278 + m ()V attachToProgram e method_34418 +c com/mojang/blaze3d/shaders/Uniform faz net/minecraft/class_284 + f I UT_INT1 a field_32038 + f I UT_INT2 b field_32039 + f I UT_INT3 c field_32040 + f I UT_INT4 d field_32041 + f I UT_FLOAT1 e field_32042 + f I UT_FLOAT2 f field_32043 + f I UT_FLOAT3 g field_32044 + f I UT_FLOAT4 h field_32045 + f I UT_MAT2 i field_32046 + f I UT_MAT3 j field_32047 + f I UT_MAT4 k field_32048 + f Lorg/slf4j/Logger; LOGGER l field_1548 + f Z TRANSPOSE_MATRICIES m field_32049 + f I location n field_1545 + f I count o field_1544 + f I type p field_1543 + f Ljava/nio/IntBuffer; intValues q field_1547 + f Ljava/nio/FloatBuffer; floatValues r field_1549 + f Ljava/lang/String; name s field_1546 + f Z dirty t field_1542 + f Lcom/mojang/blaze3d/shaders/Shader; parent u field_1541 + m ()Ljava/lang/String; getName a method_1298 + m (IF)V set a method_35659 + p 1 index + p 2 value + m (IILjava/lang/CharSequence;)V glBindAttribLocation a method_34419 + p 0 program + p 1 index + p 2 name + m (ILjava/lang/CharSequence;)I glGetUniformLocation a method_22096 + p 0 program + p 1 name + m (Ljava/lang/String;)I getTypeFromString a method_1299 + p 0 typeName + m ()V upload b method_1300 + m (I)V setLocation b method_1297 + p 1 location + m (II)V uploadInteger b method_22095 + p 0 location + p 1 value + m (ILjava/lang/CharSequence;)I glGetAttribLocation b method_22097 + p 0 program + p 1 name + m ()I getLocation c method_35660 + m ()I getCount d method_35661 + m ()I getType e method_35662 + m ()Ljava/nio/IntBuffer; getIntBuffer f method_35663 + m ()Ljava/nio/FloatBuffer; getFloatBuffer g method_35664 + m ()V markDirty h method_1302 + m ()V uploadAsInteger i method_1303 + m ()V uploadAsFloat j method_1301 + m ()V uploadAsMatrix k method_1296 + m (Ljava/lang/String;IILcom/mojang/blaze3d/shaders/Shader;)V + p 1 name + p 2 type + p 3 count + p 4 parent + m ()V +c com/mojang/blaze3d/shaders/package-info fba net/minecraft/class_6187 +c com/mojang/blaze3d/systems/TimerQuery fbb net/minecraft/class_7168 + f I nextQueryName a field_37844 + m ()Ljava/util/Optional; getInstance a method_41719 + m ()V beginProfile b method_41720 + m ()Lcom/mojang/blaze3d/systems/TimerQuery$FrameProfile; endProfile c method_41721 + m ()V +c com/mojang/blaze3d/systems/TimerQuery$FrameProfile fbb$a net/minecraft/class_7168$class_7169 + f J NO_RESULT a field_37845 + f J CANCELLED_RESULT b field_37846 + f I queryName c field_37847 + f J result d field_37848 + m ()V cancel a method_41722 + m ()Z isDone b method_41723 + m ()J get c method_41724 + m (I)V + p 1 queryName +c com/mojang/blaze3d/systems/TimerQuery$TimerQueryLazyLoader fbb$b net/minecraft/class_7168$class_7170 + f Ljava/util/Optional; INSTANCE a field_37849 + m ()Lcom/mojang/blaze3d/systems/TimerQuery; instantiate a method_41725 + m ()V + m ()V +c com/mojang/blaze3d/systems/package-info fbc net/minecraft/class_6188 +c com/mojang/blaze3d/vertex/BufferBuilder fbd net/minecraft/class_287 + f J NOT_BUILDING a field_52068 + f J UNKNOWN_ELEMENT b field_52069 + f Z IS_LITTLE_ENDIAN c field_52070 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer d field_52071 + f J vertexPointer e field_52072 + f I vertices f field_1554 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format g field_1565 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode h field_52073 + f Z fastFormat i field_21594 + f Z fullFormat j field_21595 + f I vertexSize k field_52074 + f I initialElementsToFill l field_52075 + f [I offsetsByElement m field_52076 + f I elementsToFill n field_52077 + f Z building o field_1556 + m ()Lcom/mojang/blaze3d/vertex/MeshData; build a method_60794 + m (F)B normalIntValue a method_60795 + p 0 value + m (JI)V putRgba a method_60797 + p 0 pointer + p 2 color + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)J beginElement a method_60798 + p 1 element + m (SSLcom/mojang/blaze3d/vertex/VertexFormatElement;)Lcom/mojang/blaze3d/vertex/VertexConsumer; uvShort a method_60799 + p 1 u + p 2 v + p 3 element + m ()Lcom/mojang/blaze3d/vertex/MeshData; buildOrThrow b method_60800 + m (JI)V putPackedUv b method_60801 + p 0 pointer + p 2 packedUv + m ()V ensureBuilding c method_60802 + m ()Lcom/mojang/blaze3d/vertex/MeshData; storeMesh d method_60804 + m ()J beginVertex e method_60805 + m ()V endLastVertex f method_60806 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat;)V + p 1 buffer + p 2 mode + p 3 format + m ()V +c com/mojang/blaze3d/vertex/BufferUploader fbe net/minecraft/class_286 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; lastImmediateBuffer a field_38982 + m ()V reset a method_34420 + m (Lcom/mojang/blaze3d/vertex/MeshData;)V drawWithShader a method_43433 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;)V bindImmediateBuffer a method_43434 + p 0 buffer + m (Lcom/mojang/blaze3d/vertex/VertexFormat;)Lcom/mojang/blaze3d/vertex/VertexBuffer; bindImmediateBuffer a method_43435 + p 0 format + m ()V invalidate b method_43436 + m (Lcom/mojang/blaze3d/vertex/MeshData;)V draw b method_43437 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)V _drawWithShader c method_43438 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)Lcom/mojang/blaze3d/vertex/VertexBuffer; upload d method_43439 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)V method_43440 e method_43440 + m ()V +c com/mojang/blaze3d/vertex/ByteBufferBuilder fbf net/minecraft/class_9799 + f Lorg/slf4j/Logger; LOGGER a field_52078 + f Lorg/lwjgl/system/MemoryUtil$MemoryAllocator; ALLOCATOR b field_52079 + f I MAX_GROWTH_SIZE c field_52080 + f I BUFFER_FREED_GENERATION d field_52081 + f J pointer e field_52082 + f I capacity f field_52083 + f I writeOffset g field_52084 + f I nextResultOffset h field_52085 + f I resultCount i field_52086 + f I generation j field_52087 + m ()Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; build a method_60807 + m (I)J reserve a method_60808 + p 1 bytes + m ()V clear b method_60809 + m (I)V ensureCapacity b method_60810 + p 1 size + m ()V discard c method_60811 + m (I)V resize c method_60812 + p 1 newSize + m ()V freeResult d method_60813 + m (I)Z isValid d method_60814 + p 1 generation + m ()V discardResults e method_60815 + m ()V checkOpen f method_60816 + m (I)V + p 1 capacity + m ()V +c com/mojang/blaze3d/vertex/ByteBufferBuilder$Result fbf$a net/minecraft/class_9799$class_9800 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; field_52088 a field_52088 + f I offset b field_52089 + f I capacity c field_52090 + f I generation d field_52091 + f Z closed e field_52092 + m ()Ljava/nio/ByteBuffer; byteBuffer a method_60817 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;III)V + p 2 offset + p 3 capacity + p 4 generation +c com/mojang/blaze3d/vertex/DefaultVertexFormat fbg net/minecraft/class_290 + f Lcom/mojang/blaze3d/vertex/VertexFormat; BLIT_SCREEN a field_29336 + f Lcom/mojang/blaze3d/vertex/VertexFormat; BLOCK b field_1590 + f Lcom/mojang/blaze3d/vertex/VertexFormat; NEW_ENTITY c field_1580 + f Lcom/mojang/blaze3d/vertex/VertexFormat; PARTICLE d field_1584 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION e field_1592 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR f field_1576 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_NORMAL g field_29337 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_LIGHTMAP h field_21468 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX i field_1585 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_COLOR j field_1575 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_TEX_LIGHTMAP k field_20888 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_LIGHTMAP_COLOR l field_1586 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_COLOR_NORMAL m field_1577 + m ()V + m ()V +c com/mojang/blaze3d/vertex/MeshData fbh net/minecraft/class_9801 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; vertexBuffer a field_52093 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; indexBuffer b field_52094 + f Lcom/mojang/blaze3d/vertex/MeshData$DrawState; drawState c field_52095 + m ()Ljava/nio/ByteBuffer; vertexBuffer a method_60818 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexSorting;)Lcom/mojang/blaze3d/vertex/MeshData$SortState; sortQuads a method_60819 + p 1 bufferBuilder + p 2 sorting + m (Ljava/nio/ByteBuffer;ILcom/mojang/blaze3d/vertex/VertexFormat;)[Lorg/joml/Vector3f; unpackQuadCentroids a method_60820 + p 0 byteBuffer + p 1 vertexCount + p 2 format + m ()Ljava/nio/ByteBuffer; indexBuffer b method_60821 + m ()Lcom/mojang/blaze3d/vertex/MeshData$DrawState; drawState c method_60822 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;Lcom/mojang/blaze3d/vertex/MeshData$DrawState;)V + p 1 vertexBuffer + p 2 drawState +c com/mojang/blaze3d/vertex/MeshData$1 fbh$1 net/minecraft/class_9801$1 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$IndexType a field_27353 + m ()V +c com/mojang/blaze3d/vertex/MeshData$DrawState fbh$a net/minecraft/class_9801$class_4574 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format a comp_749 + f I vertexCount b comp_750 + f I indexCount c comp_751 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode d comp_752 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType e comp_753 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; format a comp_749 + m ()I vertexCount b comp_750 + m ()I indexCount c comp_751 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode d comp_752 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType e comp_753 + m (Lcom/mojang/blaze3d/vertex/VertexFormat;IILcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)V +c com/mojang/blaze3d/vertex/MeshData$SortState fbh$b net/minecraft/class_9801$class_9802 + f [Lorg/joml/Vector3f; centroids a comp_2840 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType b comp_2841 + m ()[Lorg/joml/Vector3f; centroids a comp_2840 + m (JLcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)Lit/unimi/dsi/fastutil/ints/IntConsumer; indexWriter a method_60823 + p 1 index + p 3 type + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexSorting;)Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; buildSortedIndexBuffer a method_60824 + p 1 bufferBuilder + p 2 sorting + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60825 a method_60825 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType b comp_2841 + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60826 b method_60826 + m ([Lorg/joml/Vector3f;Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)V +c com/mojang/blaze3d/vertex/PoseStack fbi net/minecraft/class_4587 + f Ljava/util/Deque; poseStack a field_20898 + m ()V pushPose a method_22903 + m (DDD)V translate a method_22904 + p 1 x + p 3 y + p 5 z + m (FFF)V translate a method_46416 + p 1 x + p 2 y + p 3 z + m (Ljava/util/ArrayDeque;)V method_22908 a method_22908 + m (Lorg/joml/Matrix4f;)V mulPose a method_34425 + p 1 pose + m (Lorg/joml/Quaternionf;)V mulPose a method_22907 + p 1 quaternion + m (Lorg/joml/Quaternionf;FFF)V rotateAround a method_49278 + p 1 quaternion + p 2 x + p 3 y + p 4 z + m ()V popPose b method_22909 + m (FFF)V scale b method_22905 + p 1 x + p 2 y + p 3 z + m ()Lcom/mojang/blaze3d/vertex/PoseStack$Pose; last c method_23760 + m ()Z clear d method_22911 + m ()V setIdentity e method_34426 + m ()V +c com/mojang/blaze3d/vertex/PoseStack$Pose fbi$a net/minecraft/class_4587$class_4665 + f Lorg/joml/Matrix4f; pose a field_21327 + f Lorg/joml/Matrix3f; normal b field_21328 + f Z trustedNormals c field_48930 + m ()Lorg/joml/Matrix4f; pose a method_23761 + m (FFFLorg/joml/Vector3f;)Lorg/joml/Vector3f; transformNormal a method_56820 + p 1 x + p 2 y + p 3 z + p 4 destination + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; transformNormal a method_56821 + p 1 vector + p 2 destination + m ()Lorg/joml/Matrix3f; normal b method_23762 + m ()Lcom/mojang/blaze3d/vertex/PoseStack$Pose; copy c method_56822 + m ()V computeNormalMatrix d method_56823 + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix3f;)V + p 1 pose + p 2 normal + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;)V + p 1 pose +c com/mojang/blaze3d/vertex/SheetedDecalTextureGenerator fbj net/minecraft/class_4583 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a field_20866 + f Lorg/joml/Matrix4f; cameraInversePose b field_21053 + f Lorg/joml/Matrix3f; normalInversePose c field_21054 + f F textureScale d field_41091 + f Lorg/joml/Vector3f; worldPos e field_52096 + f Lorg/joml/Vector3f; normal f field_52097 + f F x g field_20870 + f F y h field_20871 + f F z i field_20872 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;F)V + p 1 delegate + p 2 pose + p 3 textureScale +c com/mojang/blaze3d/vertex/Tesselator fbk net/minecraft/class_289 + f I MAX_BYTES a field_46841 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer b field_52098 + f Lcom/mojang/blaze3d/vertex/Tesselator; instance c field_1573 + m ()V init a method_54560 + m (Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat;)Lcom/mojang/blaze3d/vertex/BufferBuilder; begin a method_60827 + p 1 mode + p 2 format + m ()Lcom/mojang/blaze3d/vertex/Tesselator; getInstance b method_1348 + m ()V clear c method_60828 + m (I)V + p 1 capacity + m ()V +c com/mojang/blaze3d/vertex/VertexBuffer fbl net/minecraft/class_291 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; usage a field_44792 + f I vertexBufferId b field_1594 + f I indexBufferId c field_27366 + f I arrayObjectId d field_29338 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format e field_29339 + f Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer; sequentialIndices f field_38983 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType g field_27367 + f I indexCount h field_1593 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode i field_27368 + m ()V bind a method_1353 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;)V uploadIndexBuffer a method_60829 + p 1 result + m (Lcom/mojang/blaze3d/vertex/MeshData$DrawState;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/vertex/VertexFormat; uploadVertexBuffer a method_43442 + p 1 drawState + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/MeshData;)V upload a method_1352 + p 1 meshData + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V drawWithShader a method_34427 + p 1 modelViewMatrix + p 2 projectionMatrix + p 3 shader + m ()V unbind b method_1354 + m (Lcom/mojang/blaze3d/vertex/MeshData$DrawState;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer; uploadIndexBuffer b method_43443 + p 1 drawState + p 2 buffer + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V _drawWithShader b method_34431 + p 1 modelViewMatrix + p 2 projectionMatrix + p 3 shader + m ()V draw c method_35665 + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V method_34433 c method_34433 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; getFormat d method_34435 + m ()Z isInvalid e method_43444 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; getIndexType f method_43445 + m (Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage;)V + p 1 usage +c com/mojang/blaze3d/vertex/VertexBuffer$Usage fbl$a net/minecraft/class_291$class_8555 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; STATIC a field_44793 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; DYNAMIC b field_44794 + f I id c field_44795 + f [Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; $VALUES d field_44796 + m ()[Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; $values a method_51735 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c com/mojang/blaze3d/vertex/VertexConsumer fbm net/minecraft/class_4588 + m (FF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv a method_22913 + p 1 u + p 2 v + m (FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_22912 + p 1 x + p 2 y + p 3 z + m (FFFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_22915 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (FFFIFFIIFFF)V addVertex a method_23919 + p 1 x + p 2 y + p 3 z + p 4 color + p 5 u + p 6 v + p 7 packedOverlay + p 8 packedLight + p 9 normalX + p 10 normalY + p 11 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_39415 + p 1 color + m (II)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv1 a method_60796 + p 1 u + p 2 v + m (IIII)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_1336 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_56824 + p 1 pose + p 2 x + p 3 y + p 4 z + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;FFFFII)V putBulkData a method_22919 + p 1 pose + p 2 quad + p 3 red + p 4 green + p 5 blue + p 6 alpha + p 7 packedLight + p 8 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;[FFFFF[IIZ)V putBulkData a method_22920 + p 1 pose + p 2 quad + p 3 brightness + p 4 red + p 5 green + p 6 blue + p 7 alpha + p 8 lightmap + p 9 packedOverlay + p 10 readAlpha + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_61032 + p 1 pose + p 2 pos + m (Lorg/joml/Matrix4f;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_22918 + p 1 pose + p 2 x + p 3 y + p 4 z + m (Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_60830 + p 1 pos + m (FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setNormal b method_22914 + p 1 normalX + p 2 normalY + p 3 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setOverlay b method_22922 + p 1 packedOverlay + m (II)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv2 b method_22921 + p 1 u + p 2 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setNormal b method_60831 + p 1 pose + p 2 normalX + p 3 normalY + p 4 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setLight c method_60803 + p 1 packedLight + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setWhiteAlpha d method_60832 + p 1 alpha +c com/mojang/blaze3d/vertex/VertexFormat fbn net/minecraft/class_293 + f I UNKNOWN_ELEMENT a field_52099 + f Ljava/util/List; elements b field_1602 + f Ljava/util/List; names c field_52100 + f I vertexSize d field_1600 + f I elementsMask e field_52101 + f [I offsetsByElement f field_52102 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; immediateDrawVertexBuffer g field_38984 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; builder a method_60833 + m (II)I method_60834 a method_60834 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)I getOffset a method_60835 + p 1 element + m ()I getVertexSize b method_1362 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Z contains b method_60836 + p 1 element + m ()Ljava/util/List; getElements c method_1357 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Ljava/lang/String; getElementName c method_60837 + p 1 element + m ()Ljava/util/List; getElementAttributeNames d method_34445 + m ()[I getOffsetsByElement e method_60838 + m ()I getElementsMask f method_60839 + m ()V setupBufferState g method_22649 + m ()V clearBufferState h method_22651 + m ()Lcom/mojang/blaze3d/vertex/VertexBuffer; getImmediateDrawVertexBuffer i method_43446 + m ()V _setupBufferState j method_34449 + m ()V _clearBufferState k method_34450 + m (Ljava/util/List;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;I)V + p 1 elements + p 2 names + p 3 offsets + p 4 vertexSize +c com/mojang/blaze3d/vertex/VertexFormat$Builder fbn$a net/minecraft/class_293$class_9803 + f Lcom/google/common/collect/ImmutableMap$Builder; elements a field_52103 + f Lit/unimi/dsi/fastutil/ints/IntList; offsets b field_52104 + f I offset c field_52105 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; build a method_60840 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; padding a method_60841 + p 1 padding + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; add a method_60842 + p 1 name + p 2 element + m ()V +c com/mojang/blaze3d/vertex/VertexFormat$IndexType fbn$b net/minecraft/class_293$class_5595 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; SHORT a field_27372 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; INT b field_27373 + f I asGLType c field_27374 + f I bytes d field_27375 + f [Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; $VALUES e field_27376 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; $values a method_36816 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; least a method_31972 + p 0 indexCount + m (Ljava/lang/String;III)V + p 3 asGLType + p 4 bytes + m ()V +c com/mojang/blaze3d/vertex/VertexFormat$Mode fbn$c net/minecraft/class_293$class_5596 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; LINES a field_27377 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; LINE_STRIP b field_27378 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; DEBUG_LINES c field_29344 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; DEBUG_LINE_STRIP d field_29345 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLES e field_27379 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLE_STRIP f field_27380 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLE_FAN g field_27381 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; QUADS h field_27382 + f I asGLMode i field_27383 + f I primitiveLength j field_27384 + f I primitiveStride k field_27385 + f Z connectedPrimitives l field_38878 + f [Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; $VALUES m field_27386 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; $values a method_36817 + m (I)I indexCount a method_31973 + p 1 vertices + m (Ljava/lang/String;IIIIZ)V + p 3 asGLMode + p 4 primitiveLength + p 5 primitiveStride + p 6 connectedPrimitives + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement fbo net/minecraft/class_296 + f I MAX_COUNT a field_52106 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; POSITION b field_52107 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; COLOR c field_52108 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV0 d field_52109 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV e field_52110 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV1 f field_52111 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV2 g field_52112 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; NORMAL h field_52113 + f I id i comp_2842 + f I index j comp_2843 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; type k comp_2844 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; usage l comp_2845 + f I count m comp_2846 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement; BY_ID n field_52114 + f Ljava/util/List; ELEMENTS o field_52115 + m ()I mask a method_60843 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; byId a method_60844 + p 0 id + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; register a method_60845 + p 0 id + p 1 index + p 2 type + p 3 usage + p 4 count + m (IJI)V setupBufferState a method_22652 + p 1 stateIndex + p 2 offset + p 4 stride + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;)Z supportsUsage a method_1383 + p 1 index + p 2 usage + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement;)Z method_60846 a method_60846 + m ()I byteSize b method_60847 + m (I)Ljava/util/stream/Stream; elementsFromMask b method_60848 + p 0 mask + m ()I id c comp_2842 + m ()I index d comp_2843 + m ()Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; type e comp_2844 + m ()Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; usage f comp_2845 + m ()I count g comp_2846 + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)V + p 1 id + p 2 index + p 3 type + p 4 usage + p 5 count + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Type fbo$a net/minecraft/class_296$class_297 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; FLOAT a field_1623 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; UBYTE b field_1624 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; BYTE c field_1621 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; USHORT d field_1622 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; SHORT e field_1625 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; UINT f field_1619 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; INT g field_1617 + f I size h field_1618 + f Ljava/lang/String; name i field_1626 + f I glType j field_1627 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; $VALUES k field_1620 + m ()I size a method_1391 + m ()I glType b method_1390 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; $values c method_36818 + m (Ljava/lang/String;IILjava/lang/String;I)V + p 3 size + p 4 name + p 5 glType + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Usage fbo$b net/minecraft/class_296$class_298 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; POSITION a field_1633 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; NORMAL b field_1635 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; COLOR c field_1632 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; UV d field_1636 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; GENERIC e field_20782 + f Ljava/lang/String; name f field_1630 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState; setupState g field_20783 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; $VALUES h field_1631 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; $values a method_36819 + m (IIIJI)V method_60849 a method_60849 + m (IIIJI)V method_22662 b method_22662 + m (IIIJI)V method_60850 c method_60850 + m (IIIJI)V method_60851 d method_60851 + m (IIIJI)V method_22667 e method_22667 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState;)V + p 3 name + p 4 setupState + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState fbo$b$a net/minecraft/class_296$class_298$class_4575 +c com/mojang/blaze3d/vertex/VertexMultiConsumer fbp net/minecraft/class_4720 + m ()Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35668 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35669 + p 0 consumer + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_24037 + p 0 first + p 1 second + m ([Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35670 + p 0 delegates + m ()V +c com/mojang/blaze3d/vertex/VertexMultiConsumer$Double fbp$a net/minecraft/class_4720$class_4589 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; first a field_21685 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; second b field_21686 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V + p 1 first + p 2 second +c com/mojang/blaze3d/vertex/VertexMultiConsumer$Multiple fbp$b net/minecraft/class_4720$class_6189 + f [Lcom/mojang/blaze3d/vertex/VertexConsumer; delegates a comp_2847 + m ()[Lcom/mojang/blaze3d/vertex/VertexConsumer; delegates a comp_2847 + m (FFFIFFIIFFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60852 a method_60852 + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60853 a method_60853 + m (FFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60854 a method_60854 + m (IIIILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60855 a method_60855 + m (IILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60856 a method_60856 + m (Ljava/util/function/Consumer;)V forEach a method_35677 + p 1 action + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60857 b method_60857 + m (IILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60858 b method_60858 + m ([Lcom/mojang/blaze3d/vertex/VertexConsumer;)V + p 1 delegates +c com/mojang/blaze3d/vertex/VertexSorting fbq net/minecraft/class_8251 + f Lcom/mojang/blaze3d/vertex/VertexSorting; DISTANCE_TO_ORIGIN a field_43360 + f Lcom/mojang/blaze3d/vertex/VertexSorting; ORTHOGRAPHIC_Z b field_43361 + m (FFF)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49906 + p 0 x + p 1 y + p 2 z + m (Lcom/mojang/blaze3d/vertex/VertexSorting$DistanceFunction;)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49907 + p 0 distanceFunction + m (Lcom/mojang/blaze3d/vertex/VertexSorting$DistanceFunction;[Lorg/joml/Vector3f;)[I method_49908 a method_49908 + m (Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49909 + p 0 vector + m ([FII)I method_49910 a method_49910 + m (Lorg/joml/Vector3f;)F method_49911 b method_49911 + m ()V +c com/mojang/blaze3d/vertex/VertexSorting$DistanceFunction fbq$a net/minecraft/class_8251$class_8252 +c com/mojang/blaze3d/vertex/package-info fbr net/minecraft/class_6190 +c com/mojang/realmsclient/RealmsAvailability fbs net/minecraft/class_8647 + f Lorg/slf4j/Logger; LOGGER a field_45182 + f Ljava/util/concurrent/CompletableFuture; future b field_45183 + m ()Ljava/util/concurrent/CompletableFuture; get a method_52624 + m (Ljava/util/concurrent/CompletableFuture;)Z shouldRefresh a method_52625 + p 0 future + m ()Ljava/util/concurrent/CompletableFuture; check b method_52626 + m ()Lcom/mojang/realmsclient/RealmsAvailability$Result; method_52627 c method_52627 + m ()V + m ()V +c com/mojang/realmsclient/RealmsAvailability$Result fbs$a net/minecraft/class_8647$class_8648 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; type a comp_1593 + f Lcom/mojang/realmsclient/exception/RealmsServiceException; exception b comp_1594 + m ()Lcom/mojang/realmsclient/RealmsAvailability$Type; type a comp_1593 + m (Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/screens/Screen; createErrorScreen a method_52628 + p 1 lastScreen + m ()Lcom/mojang/realmsclient/exception/RealmsServiceException; exception b comp_1594 + m (Lcom/mojang/realmsclient/RealmsAvailability$Type;)V + p 1 type + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V + p 1 exception + m (Lcom/mojang/realmsclient/RealmsAvailability$Type;Lcom/mojang/realmsclient/exception/RealmsServiceException;)V +c com/mojang/realmsclient/RealmsAvailability$Type fbs$b net/minecraft/class_8647$class_8649 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; SUCCESS a field_45185 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; INCOMPATIBLE_CLIENT b field_45186 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; NEEDS_PARENTAL_CONSENT c field_45187 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; AUTHENTICATION_ERROR d field_45188 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; UNEXPECTED_ERROR e field_45189 + f [Lcom/mojang/realmsclient/RealmsAvailability$Type; $VALUES f field_45190 + m ()[Lcom/mojang/realmsclient/RealmsAvailability$Type; $values a method_52629 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/RealmsMainScreen fbt net/minecraft/class_4325 + f Lnet/minecraft/resources/ResourceLocation; EXPIRES_SOON_SPRITE B field_45218 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SPRITE C field_45219 + f Lnet/minecraft/resources/ResourceLocation; CLOSED_SPRITE D field_45191 + f Lnet/minecraft/resources/ResourceLocation; INVITE_SPRITE E field_45192 + f Lnet/minecraft/resources/ResourceLocation; NEWS_SPRITE F field_45193 + f Lorg/slf4j/Logger; LOGGER G field_19475 + f Lnet/minecraft/resources/ResourceLocation; LOGO_LOCATION H field_45194 + f Lnet/minecraft/resources/ResourceLocation; NO_REALMS_LOCATION I field_45195 + f Lnet/minecraft/network/chat/Component; TITLE J field_45196 + f Lnet/minecraft/network/chat/Component; LOADING_TEXT K field_45197 + f Lnet/minecraft/network/chat/Component; SERVER_UNITIALIZED_TEXT L field_26450 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_EXPIRED_TEXT M field_26451 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_RENEW_TEXT N field_26452 + f Lnet/minecraft/network/chat/Component; TRIAL_EXPIRED_TEXT O field_26453 + f Lnet/minecraft/network/chat/Component; PLAY_TEXT P field_42859 + f Lnet/minecraft/network/chat/Component; LEAVE_SERVER_TEXT Q field_42860 + f Lnet/minecraft/network/chat/Component; CONFIGURE_SERVER_TEXT R field_42861 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRED_TOOLTIP S field_26457 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRES_SOON_TOOLTIP T field_26458 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRES_IN_DAY_TOOLTIP U field_26459 + f Lnet/minecraft/network/chat/Component; SERVER_OPEN_TOOLTIP V field_26460 + f Lnet/minecraft/network/chat/Component; SERVER_CLOSED_TOOLTIP W field_26461 + f Lnet/minecraft/network/chat/Component; UNITIALIZED_WORLD_NARRATION X field_33776 + f Lnet/minecraft/network/chat/Component; NO_REALMS_TEXT Y field_45198 + f Lnet/minecraft/network/chat/Component; NO_PENDING_INVITES Z field_45199 + f Lnet/minecraft/client/gui/components/Button; playButton aA field_45215 + f Lnet/minecraft/client/gui/components/Button; backButton aB field_19486 + f Lnet/minecraft/client/gui/components/Button; renewButton aC field_19487 + f Lnet/minecraft/client/gui/components/Button; configureButton aD field_19488 + f Lnet/minecraft/client/gui/components/Button; leaveButton aE field_19489 + f Lcom/mojang/realmsclient/RealmsMainScreen$RealmSelectionList; realmSelectionList aF field_19483 + f Lcom/mojang/realmsclient/gui/RealmsServerList; serverList aG field_39681 + f Ljava/util/List; availableSnapshotServers aH field_46669 + f Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; onlinePlayersPerRealm aI field_52116 + f Z trialsAvailable aJ field_19500 + f Ljava/lang/String; newsLink aK field_45203 + f J lastClickTime aL field_37267 + f Lnet/minecraft/resources/ResourceLocation; INFO_SPRITE a field_45201 + f Ljava/util/List; notifications aM field_42997 + f Lnet/minecraft/client/gui/components/Button; addRealmButton aN field_45204 + f Lcom/mojang/realmsclient/RealmsMainScreen$NotificationButton; pendingInvitesButton aO field_45205 + f Lcom/mojang/realmsclient/RealmsMainScreen$NotificationButton; newsButton aP field_45206 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; activeLayoutState aQ field_45207 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout aR field_45208 + f Lnet/minecraft/network/chat/Component; PENDING_INVITES aa field_45200 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_POPUP_TITLE ab field_51815 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_RELEASE_TYPE_POPUP_MESSAGE ac field_51816 + f I BUTTON_WIDTH ad field_42862 + f I BUTTON_COLUMNS ae field_45209 + f I BUTTON_SPACING af field_45210 + f I CONTENT_WIDTH ag field_45211 + f I LOGO_WIDTH ah field_44509 + f I LOGO_HEIGHT ai field_44510 + f I LOGO_TEXTURE_WIDTH aj field_44511 + f I LOGO_TEXTURE_HEIGHT ak field_44512 + f I LOGO_PADDING al field_44513 + f I HEADER_HEIGHT am field_44514 + f I FOOTER_PADDING an field_45212 + f I NEW_REALM_SPRITE_WIDTH ao field_46670 + f I NEW_REALM_SPRITE_HEIGHT ap field_46671 + f I ENTRY_WIDTH aq field_46215 + f I ITEM_HEIGHT ar field_46216 + f Z SNAPSHOT as field_46672 + f Z snapshotToggle at field_46673 + f Ljava/util/concurrent/CompletableFuture; availability au field_45213 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; dataSubscription av field_45214 + f Ljava/util/Set; handledSeenNotifications aw field_42996 + f Z regionsPinged ax field_19464 + f Lcom/google/common/util/concurrent/RateLimiter; inviteNarrationLimiter ay field_19477 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen az field_19482 + f Lnet/minecraft/resources/ResourceLocation; NEW_REALM_SPRITE b field_45216 + f Lnet/minecraft/resources/ResourceLocation; EXPIRED_SPRITE c field_45217 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54342 A method_54342 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54318 B method_54318 + m ()V updateLayout C method_54320 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54319 C method_54319 + m ()Lnet/minecraft/client/gui/layouts/Layout; createHeader D method_52630 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54321 D method_54321 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; createNoRealmsContent E method_52631 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_60859 E method_60859 + m ()V updateButtonStates F method_52632 + m ()V debugRefreshDataFetchers G method_54324 + m ()V refreshListAndLayout J method_49550 + m ()V pingRegions K method_20922 + m ()Ljava/util/List; getOwnedNonExpiredRealmIds L method_20924 + m ()Lcom/mojang/realmsclient/dto/RealmsServer; getSelectedServer M method_38503 + m ()V openTrialAvailablePopup N method_53791 + m ()V method_22098 O method_22098 + m (Lcom/mojang/realmsclient/RealmsAvailability$Result;)V method_52634 a method_52634 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)V updateLayout a method_52635 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen$RealmsCall;Lnet/minecraft/client/Minecraft;)Ljava/lang/Object; method_49552 a method_49552 + m (Lcom/mojang/realmsclient/RealmsMainScreen$RealmsCall;Ljava/util/function/Consumer;)V callRealmsClient a method_49553 + p 0 call + p 1 onFinish + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36825 a method_36825 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52636 a method_52636 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;)Z addListEntriesForNotification a method_49551 + p 1 notification + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldPlayButtonBeActive a method_20874 + p 1 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_38504 a method_38504 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V play a method_20853 + p 0 realmsServer + p 1 lastScreen + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V confirmToPlay a method_54326 + p 0 realmsServer + p 1 lastScreen + p 2 title + p 3 message + p 4 confirmButton + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;Z)V play a method_54327 + p 0 realmsServer + p 1 lastScreen + p 2 allowSnapshots + m (Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists;)V method_60860 a method_60860 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData;)V method_44615 a method_44615 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; initDataFetcher a method_44611 + p 1 dataFetcher + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/dto/RealmsNews;)V method_44612 a method_44612 + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;I)V renderEnvironment a method_52637 + p 1 guiGraphics + p 2 text + p 3 color + m (Lnet/minecraft/client/gui/components/Button;)V method_52638 a method_52638 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_54328 a method_54328 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54329 a method_54329 + m (Ljava/lang/Boolean;)V method_52639 a method_52639 + m (Ljava/lang/Integer;)V method_44614 a method_44614 + m (Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; getVersionComponent a method_54561 + p 0 version + p 1 color + m (Ljava/lang/String;Z)Lnet/minecraft/network/chat/Component; getVersionComponent a method_54562 + p 0 version + p 1 compatible + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_49554 a method_49554 + m (Ljava/util/Collection;)V markNotificationsAsSeen a method_54104 + p 1 notifications + m (Ljava/util/List;Lcom/mojang/realmsclient/client/RealmsClient;)Ljava/lang/Object; method_54105 a method_54105 + m (Ljava/util/List;Ljava/lang/Object;)V method_54106 a method_54106 + m (Ljava/util/UUID;)V dismissNotification a method_49557 + p 1 uuid + m (Ljava/util/UUID;Lcom/mojang/realmsclient/client/RealmsClient;)Ljava/lang/Object; method_49558 a method_49558 + m (Ljava/util/UUID;Lcom/mojang/realmsclient/dto/RealmsNotification;)Z method_49559 a method_49559 + m (Ljava/util/UUID;Ljava/lang/Object;)V method_49560 a method_49560 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button;)V method_52640 a method_52640 + m ()Z isSnapshot b method_54330 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; createLayout b method_52641 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36826 b method_36826 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52642 b method_52642 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldRenewButtonBeActive b method_20884 + p 1 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V upgradeRealmAndPlay b method_60861 + p 0 server + p 1 lastScreen + m (Lnet/minecraft/client/gui/components/Button;)V method_52643 b method_52643 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)Lnet/minecraft/client/gui/layouts/Layout; createFooter c method_52644 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36827 c method_36827 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldConfigureButtonBeActive c method_49285 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52645 c method_52645 + m (Ljava/util/List;)V method_49561 c method_49561 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_55791 d method_55791 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldLeaveButtonBeActive d method_49288 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52646 d method_52646 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_20885 e method_20885 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V onRenew e method_20928 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52647 e method_52647 + m ()V refreshPendingInvites f method_53792 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36828 f method_36828 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V configureClicked f method_20903 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52648 f method_52648 + m ()V refreshServerList g method_53793 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36829 g method_36829 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V leaveClicked g method_20906 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52649 g method_52649 + m ()V resetScreen h method_38505 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36830 h method_36830 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V leaveServer h method_24991 + p 1 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24992 i method_24992 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z isSelfOwnedServer i method_20909 + p 0 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_53884 j method_53884 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z isSelfOwnedNonExpiredServer j method_25001 + p 1 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24996 k method_24996 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24998 l method_24998 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24994 m method_24994 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_44254 n method_44254 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_49562 o method_49562 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36832 p method_36832 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54332 q method_54332 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54333 r method_54333 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54334 s method_54334 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54563 t method_54563 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_55792 u method_55792 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54337 v method_54337 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54338 w method_54338 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54339 x method_54339 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54340 y method_54340 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54341 z method_54341 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c com/mojang/realmsclient/RealmsMainScreen$1 fbt$1 net/minecraft/class_4325$1 + f Lcom/mojang/realmsclient/dto/RealmsServer; val$server a field_34774 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19509 b field_19509 + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V method_25020 a method_25020 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsServer;)V +c com/mojang/realmsclient/RealmsMainScreen$2 fbt$2 net/minecraft/class_4325$2 + f [I $SwitchMap$com$mojang$realmsclient$client$RealmsClient$Environment a field_45221 + f [I $SwitchMap$com$mojang$realmsclient$dto$RealmsServer$Compatibility b field_46674 + m ()V +c com/mojang/realmsclient/RealmsMainScreen$AvailableSnapshotEntry fbt$a net/minecraft/class_4325$class_8840 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_46675 a field_46675 + f Lnet/minecraft/network/chat/Component; START_SNAPSHOT_REALM f field_46676 + f I TEXT_PADDING g field_46677 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip h field_46678 + f Lcom/mojang/realmsclient/dto/RealmsServer; parent i field_46679 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_54343 a method_54343 + m ()V addSnapshotRealm c method_54344 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 parent + m ()V +c com/mojang/realmsclient/RealmsMainScreen$ButtonEntry fbt$b net/minecraft/class_4325$class_8200 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_42998 a field_42998 + f Lnet/minecraft/client/gui/components/Button; button f field_42999 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/Button;)V + p 2 button +c com/mojang/realmsclient/RealmsMainScreen$CrossButton fbt$c net/minecraft/class_4325$class_8201 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES b field_45222 + m (Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 onPress + p 2 message + m ()V +c com/mojang/realmsclient/RealmsMainScreen$EmptyEntry fbt$d net/minecraft/class_4325$class_8802 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$Entry fbt$e net/minecraft/class_4325$class_4866 + f I STATUS_LIGHT_HEIGHT a field_46681 + f I STATUS_LIGHT_WIDTH b field_46680 + f I PADDING_X c field_52117 + f I PADDING_Y d field_52118 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_22567 e field_22567 + m (I)I firstLineY a method_54345 + p 1 top + m (IILnet/minecraft/network/chat/Component;)I versionTextX a method_54346 + p 1 left + p 2 width + p 3 versionComponent + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Lnet/minecraft/network/chat/Component; method_54348 a method_54348 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderStatusLights a method_54350 + p 1 realmsServer + p 2 guiGraphics + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIIILnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V drawRealmStatus a method_54351 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 spriteLocation + p 7 tooltipSupplier + m (Lnet/minecraft/client/gui/GuiGraphics;IILcom/mojang/realmsclient/dto/RealmsServer;)V renderThirdLine a method_54565 + p 1 guiGraphics + p 2 top + p 3 left + p 4 server + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;IIII)V renderClampedString a method_54352 + p 1 guiGraphics + p 2 text + p 3 minX + p 4 y + p 5 maxX + p 6 color + m ()I lineHeight b method_54353 + m (I)I textX b method_54354 + p 1 left + m ()Lnet/minecraft/network/chat/Component; method_54355 c method_54355 + m (I)I secondLineY c method_54356 + p 1 firstLineY + m ()Lnet/minecraft/network/chat/Component; method_54358 d method_54358 + m (I)I thirdLineY d method_54357 + p 1 firstLineY + m ()Lnet/minecraft/network/chat/Component; method_54359 e method_54359 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$LayoutState fbt$f net/minecraft/class_4325$class_8650 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; LOADING a field_45223 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; NO_REALMS b field_45224 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; LIST c field_45225 + f [Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; $VALUES d field_45226 + m ()[Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; $values a method_52650 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/RealmsMainScreen$NotificationButton fbt$g net/minecraft/class_4325$class_8651 + f [Lnet/minecraft/resources/ResourceLocation; NOTIFICATION_ICONS d field_45227 + f I UNKNOWN_COUNT u field_45228 + f I SIZE v field_45229 + f I SPRITE_SIZE w field_45230 + f I notificationCount x field_45231 + m ()I notificationCount a method_53794 + m (I)V setNotificationCount a method_52651 + p 1 notificationCount + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawNotificationCounter a method_52652 + p 1 guiGraphics + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 sprite + p 3 onPress + m ()V +c com/mojang/realmsclient/RealmsMainScreen$NotificationMessageEntry fbt$h net/minecraft/class_4325$class_8202 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_43001 a field_43001 + f I SIDE_MARGINS f field_43002 + f I OUTLINE_COLOR g field_43004 + f Lnet/minecraft/network/chat/Component; text h field_43005 + f I frameItemHeight i field_46218 + f Ljava/util/List; children j field_43006 + f Lcom/mojang/realmsclient/RealmsMainScreen$CrossButton; dismissButton k field_43007 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget l field_43008 + f Lnet/minecraft/client/gui/layouts/GridLayout; gridLayout m field_43009 + f Lnet/minecraft/client/gui/layouts/FrameLayout; textFrame n field_43010 + f I lastEntryWidth o field_43011 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lnet/minecraft/client/gui/components/Button;)V method_49566 a method_49566 + m (Lnet/minecraft/client/gui/GuiGraphics;IIFLnet/minecraft/client/gui/components/AbstractWidget;)V method_49565 a method_49565 + m (I)V updateEntryWidth e method_49564 + p 1 entryWidth + m (I)V refreshLayout f method_49567 + p 1 width + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/network/chat/Component;ILcom/mojang/realmsclient/dto/RealmsNotification;)V + p 2 text + p 3 frameItemHeight + p 4 notification +c com/mojang/realmsclient/RealmsMainScreen$ParentEntry fbt$i net/minecraft/class_4325$class_8841 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_46683 a field_46683 + f Lcom/mojang/realmsclient/dto/RealmsServer; server f field_46684 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip g field_46685 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 server +c com/mojang/realmsclient/RealmsMainScreen$RealmSelectionList fbt$j net/minecraft/class_4325$class_4329 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19517 a field_19517 + m (Lcom/mojang/realmsclient/RealmsMainScreen$Entry;)V setSelected a method_25024 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$RealmsCall fbt$k net/minecraft/class_4325$class_8203 +c com/mojang/realmsclient/RealmsMainScreen$ServerEntry fbt$l net/minecraft/class_4325$class_4330 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19519 a field_19519 + f Lnet/minecraft/network/chat/Component; ONLINE_PLAYERS_TOOLTIP_HEADER f field_52119 + f I PLAYERS_ONLINE_SPRITE_SIZE g field_52120 + f I SKIN_HEAD_LARGE_WIDTH h field_32054 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData i field_19518 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip j field_46686 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderSecondLine a method_54566 + p 1 guiGraphics + p 2 top + p 3 left + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderFirstLine a method_54567 + p 1 guiGraphics + p 2 top + p 3 left + p 4 width + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)Z renderOnlinePlayers a method_60862 + p 1 guiGraphics + p 2 top + p 3 left + p 4 width + p 5 height + p 6 mouseX + p 7 mouseY + m ()Lcom/mojang/realmsclient/dto/RealmsServer; getServer c method_38506 + m ()V playRealm d method_52653 + m ()V createUnitializedRealm e method_52654 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 serverData + m ()V +c com/mojang/realmsclient/Unit fbu net/minecraft/class_4428 + f Lcom/mojang/realmsclient/Unit; B a field_20200 + f Lcom/mojang/realmsclient/Unit; KB b field_20201 + f Lcom/mojang/realmsclient/Unit; MB c field_20202 + f Lcom/mojang/realmsclient/Unit; GB d field_20203 + f I BASE_UNIT e field_32055 + f [Lcom/mojang/realmsclient/Unit; $VALUES f field_20204 + m ()[Lcom/mojang/realmsclient/Unit; $values a method_36844 + m (J)Lcom/mojang/realmsclient/Unit; getLargest a method_25027 + p 0 bytes + m (JLcom/mojang/realmsclient/Unit;)D convertTo a method_25028 + p 0 bytes + p 2 unit + m (J)Ljava/lang/String; humanReadable b method_25029 + p 0 bytes + m (JLcom/mojang/realmsclient/Unit;)Ljava/lang/String; humanReadable b method_25030 + p 0 bytes + p 2 unit + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/client/FileDownload fbv net/minecraft/class_4333 + f Lorg/slf4j/Logger; LOGGER a field_19522 + f Z cancelled b field_19523 + f Z finished c field_19524 + f Z error d field_19525 + f Z extracting e field_19526 + f Ljava/io/File; tempFile f field_20490 + f Ljava/io/File; resourcePackPath g field_19528 + f Lorg/apache/http/client/methods/HttpGet; request h field_20491 + f Ljava/lang/Thread; currentThread i field_19530 + f Lorg/apache/http/client/config/RequestConfig; requestConfig j field_19531 + f [Ljava/lang/String; INVALID_FILE_NAMES k field_19532 + m ()V cancel a method_20948 + m (Lcom/mojang/realmsclient/dto/WorldDownload;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Ljava/lang/String;Lnet/minecraft/world/level/storage/LevelStorageSource;)V method_22099 a method_22099 + m (Lcom/mojang/realmsclient/dto/WorldDownload;Ljava/lang/String;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Lnet/minecraft/world/level/storage/LevelStorageSource;)V download a method_22100 + p 1 download + p 2 worldName + p 3 status + p 4 source + m (Ljava/lang/String;)J contentLength a method_20955 + p 1 uri + m (Ljava/lang/String;Ljava/io/File;Lnet/minecraft/world/level/storage/LevelStorageSource;)V untarGzipArchive a method_20956 + p 1 worldName + p 2 tempFile + p 3 levelStorageSource + m ()Z isFinished b method_20957 + m (Ljava/lang/String;)Ljava/lang/String; findAvailableFolderName b method_20960 + c Modifies a folder name to make sure it is valid to store on disk.\n@return the modified folder name + p 0 folderName + c The folder name to modify + m ()Z isError c method_20961 + m ()Z isExtracting d method_20964 + m ()V + m ()V +c com/mojang/realmsclient/client/FileDownload$DownloadCountingOutputStream fbv$a net/minecraft/class_4333$class_4334 + f Ljava/awt/event/ActionListener; listener a field_19539 + m (Ljava/awt/event/ActionListener;)V setListener a method_20969 + p 1 listener + m (Ljava/io/OutputStream;)V + p 1 out +c com/mojang/realmsclient/client/FileDownload$ProgressListener fbv$b net/minecraft/class_4333$class_4335 + f Lcom/mojang/realmsclient/client/FileDownload; field_19540 a field_19540 + f Ljava/lang/String; worldName b field_19541 + f Ljava/io/File; tempFile c field_19542 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelStorageSource d field_19543 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus e field_19544 + m (Lcom/mojang/realmsclient/client/FileDownload;Ljava/lang/String;Ljava/io/File;Lnet/minecraft/world/level/storage/LevelStorageSource;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;)V + p 2 worldName + p 3 tempFile + p 4 levelStorageSource + p 5 downloadStatus +c com/mojang/realmsclient/client/FileDownload$ResourcePackProgressListener fbv$c net/minecraft/class_4333$class_4336 + f Lcom/mojang/realmsclient/client/FileDownload; field_19546 a field_19546 + f Ljava/io/File; tempFile b field_19547 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus c field_19548 + f Lcom/mojang/realmsclient/dto/WorldDownload; worldDownload d field_19549 + m (Lcom/mojang/realmsclient/client/FileDownload;Ljava/io/File;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Lcom/mojang/realmsclient/dto/WorldDownload;)V + p 2 tempFile + p 3 downloadStatus + p 4 worldDownload +c com/mojang/realmsclient/client/FileUpload fbw net/minecraft/class_4337 + f Lorg/slf4j/Logger; LOGGER a field_19550 + f I MAX_RETRIES b field_32056 + f Ljava/lang/String; UPLOAD_PATH c field_32057 + f Ljava/io/File; file d field_19551 + f J realmId e field_19552 + f I slotId f field_19553 + f Lcom/mojang/realmsclient/dto/UploadInfo; uploadInfo g field_19554 + f Ljava/lang/String; sessionId h field_19555 + f Ljava/lang/String; username i field_19556 + f Ljava/lang/String; clientVersion j field_19557 + f Ljava/lang/String; worldVersion k field_49104 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus l field_19558 + f Ljava/util/concurrent/atomic/AtomicBoolean; cancelled m field_19559 + f Ljava/util/concurrent/CompletableFuture; uploadTask n field_19560 + f Lorg/apache/http/client/config/RequestConfig; requestConfig o field_19561 + m ()V cancel a method_20970 + m (I)Lcom/mojang/realmsclient/gui/screens/UploadResult; requestUpload a method_20971 + p 1 retries + c The number of times this upload has already been attempted + m (JI)Z shouldRetry a method_20972 + p 1 retryDelaySeconds + p 3 retries + m (Ljava/util/function/Consumer;)V upload a method_20973 + p 1 resultConsumer + m (Lorg/apache/http/HttpResponse;)J getRetryDelaySeconds a method_20974 + p 1 httpResponse + m (Lorg/apache/http/HttpResponse;Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder;)V handleResponse a method_20975 + p 1 response + p 2 uploadResult + m (Lorg/apache/http/client/methods/HttpPost;)V setupRequest a method_20976 + p 1 post + m (Lorg/apache/http/client/methods/HttpPost;Lorg/apache/http/impl/client/CloseableHttpClient;)V cleanup a method_20977 + p 1 post + p 2 httpClient + m ()Z isFinished b method_20978 + m (JI)Lcom/mojang/realmsclient/gui/screens/UploadResult; retryUploadAfter b method_20979 + p 1 seconds + p 3 retries + m ()Lcom/mojang/realmsclient/gui/screens/UploadResult; method_20980 c method_20980 + m (Ljava/io/File;JILcom/mojang/realmsclient/dto/UploadInfo;Lnet/minecraft/client/User;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/realmsclient/client/UploadStatus;)V + p 1 file + p 2 realmId + p 4 slotId + p 5 uploadInfo + p 6 user + p 7 clientVersiob + p 8 worldVersion + p 9 uploadStatus + m ()V +c com/mojang/realmsclient/client/FileUpload$CustomInputStreamEntity fbw$a net/minecraft/class_4337$class_4338 + f J length a field_19562 + f Ljava/io/InputStream; content b field_19563 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus c field_19564 + m (Ljava/io/InputStream;JLcom/mojang/realmsclient/client/UploadStatus;)V + p 1 content + p 2 length + p 4 uploadStatus +c com/mojang/realmsclient/client/Ping fbx net/minecraft/class_4339 + m ()Ljava/util/List; pingAllRegions a method_20981 + m (Ljava/lang/String;)I ping a method_20982 + p 0 hostname + m ([Lcom/mojang/realmsclient/client/Ping$Region;)Ljava/util/List; ping a method_20984 + p 0 regions + m ()J now b method_20985 + m ()V +c com/mojang/realmsclient/client/Ping$Region fbx$a net/minecraft/class_4339$class_4340 + f Lcom/mojang/realmsclient/client/Ping$Region; US_EAST_1 a field_19565 + f Lcom/mojang/realmsclient/client/Ping$Region; US_WEST_2 b field_19566 + f Lcom/mojang/realmsclient/client/Ping$Region; US_WEST_1 c field_19567 + f Lcom/mojang/realmsclient/client/Ping$Region; EU_WEST_1 d field_19568 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_SOUTHEAST_1 e field_19569 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_SOUTHEAST_2 f field_19570 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_NORTHEAST_1 g field_19571 + f Lcom/mojang/realmsclient/client/Ping$Region; SA_EAST_1 h field_19572 + f Ljava/lang/String; name i field_19573 + f Ljava/lang/String; endpoint j field_19574 + f [Lcom/mojang/realmsclient/client/Ping$Region; $VALUES k field_19575 + m ()[Lcom/mojang/realmsclient/client/Ping$Region; $values a method_36845 + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 name + p 4 endpoint + m ()V +c com/mojang/realmsclient/client/RealmsClient fby net/minecraft/class_4341 + f Ljava/lang/String; PATH_WORLD_GET A field_32093 + f Ljava/lang/String; PATH_WORLD_INVITES B field_32094 + f Ljava/lang/String; PATH_WORLD_UNINVITE C field_32095 + f Ljava/lang/String; PATH_PENDING_INVITES_COUNT D field_32058 + f Ljava/lang/String; PATH_PENDING_INVITES E field_32059 + f Ljava/lang/String; PATH_ACCEPT_INVITE F field_32060 + f Ljava/lang/String; PATH_REJECT_INVITE G field_32061 + f Ljava/lang/String; PATH_UNINVITE_MYSELF H field_32062 + f Ljava/lang/String; PATH_WORLD_UPDATE I field_32063 + f Ljava/lang/String; PATH_SLOT J field_32064 + f Ljava/lang/String; PATH_WORLD_OPEN K field_32065 + f Ljava/lang/String; PATH_WORLD_CLOSE L field_32066 + f Ljava/lang/String; PATH_WORLD_RESET M field_32067 + f Ljava/lang/String; PATH_DELETE_WORLD N field_32068 + f Ljava/lang/String; PATH_WORLD_BACKUPS O field_32069 + f Ljava/lang/String; PATH_WORLD_DOWNLOAD P field_32070 + f Ljava/lang/String; PATH_WORLD_UPLOAD Q field_32071 + f Ljava/lang/String; PATH_CLIENT_COMPATIBLE R field_32072 + f Ljava/lang/String; PATH_TOS_AGREED S field_32073 + f Ljava/lang/String; PATH_NEWS T field_32074 + f Ljava/lang/String; PATH_MARK_NOTIFICATIONS_SEEN U field_43012 + f Ljava/lang/String; PATH_DISMISS_NOTIFICATIONS V field_43013 + f Lcom/mojang/realmsclient/dto/GuardedSerializer; GSON W field_22568 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; ENVIRONMENT a field_45232 + f Lorg/slf4j/Logger; LOGGER b field_19578 + f Ljava/lang/String; sessionId c field_19579 + f Ljava/lang/String; username d field_19580 + f Lnet/minecraft/client/Minecraft; minecraft e field_26901 + f Ljava/lang/String; WORLDS_RESOURCE_PATH f field_32076 + f Ljava/lang/String; INVITES_RESOURCE_PATH g field_32077 + f Ljava/lang/String; MCO_RESOURCE_PATH h field_32078 + f Ljava/lang/String; SUBSCRIPTION_RESOURCE i field_32079 + f Ljava/lang/String; ACTIVITIES_RESOURCE j field_32080 + f Ljava/lang/String; OPS_RESOURCE k field_32081 + f Ljava/lang/String; REGIONS_RESOURCE l field_32082 + f Ljava/lang/String; TRIALS_RESOURCE m field_32083 + f Ljava/lang/String; NOTIFICATIONS_RESOURCE n field_43014 + f Ljava/lang/String; PATH_LIST_ALL_REALMS o field_46687 + f Ljava/lang/String; PATH_CREATE_SNAPSHOT_REALM p field_46688 + f Ljava/lang/String; PATH_SNAPSHOT_ELIGIBLE_REALMS q field_46689 + f Ljava/lang/String; PATH_INITIALIZE r field_32084 + f Ljava/lang/String; PATH_GET_ACTIVTIES s field_32085 + f Ljava/lang/String; PATH_GET_LIVESTATS t field_32086 + f Ljava/lang/String; PATH_GET_SUBSCRIPTION u field_32087 + f Ljava/lang/String; PATH_OP v field_32088 + f Ljava/lang/String; PATH_PUT_INTO_MINIGAMES_MODE w field_32089 + f Ljava/lang/String; PATH_AVAILABLE x field_32090 + f Ljava/lang/String; PATH_TEMPLATES y field_32091 + f Ljava/lang/String; PATH_WORLD_JOIN z field_32092 + m ()Lcom/mojang/realmsclient/client/RealmsClient; create a method_44616 + m (IILcom/mojang/realmsclient/dto/RealmsServer$WorldType;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; fetchWorldTemplates a method_20990 + p 1 page + p 2 pageSize + p 3 worldType + m (J)Lcom/mojang/realmsclient/dto/RealmsServer; getOwnRealm a method_20991 + p 1 id + m (JI)Z switchSlot a method_20992 + p 1 worldId + p 3 slotId + m (JILcom/mojang/realmsclient/dto/RealmsWorldOptions;)V updateSlot a method_20993 + p 1 worldId + p 3 slotId + p 4 worldOptions + m (JLcom/mojang/realmsclient/util/WorldGenerationInfo;)Ljava/lang/Boolean; resetWorldWithSeed a method_20995 + p 1 worldId + p 3 generationInfo + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; invite a method_21004 + p 1 worldId + p 3 playerName + m (JLjava/lang/String;Ljava/lang/String;)V initializeRealm a method_20996 + p 1 worldId + p 3 name + p 4 description + m (JLjava/util/UUID;)V uninvite a method_20994 + p 1 worldId + p 3 playerUuid + m (Lcom/mojang/realmsclient/client/Request;)Ljava/lang/String; execute a method_20998 + p 1 request + m (Lcom/mojang/realmsclient/dto/PendingInvite;)Z isBlocked a method_31381 + p 1 pendingInvite + m (Lcom/mojang/realmsclient/dto/PingResult;)V sendPingResults a method_20997 + p 1 pingResult + m (Lnet/minecraft/client/Minecraft;)Lcom/mojang/realmsclient/client/RealmsClient; create a method_20989 + p 0 minecraft + m (Ljava/lang/Long;)Lcom/mojang/realmsclient/dto/RealmsServer; createSnapshotRealm a method_54360 + p 1 parentId + m (Ljava/lang/String;)V acceptInvitation a method_20999 + p 1 inviteId + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; url a method_21007 + p 1 path + p 2 query + m (Ljava/util/List;)V notificationsSeen a method_49569 + p 1 uuidList + m ()Lcom/mojang/realmsclient/dto/RealmsServerList; listRealms b method_21015 + m (J)Lcom/mojang/realmsclient/dto/ServerActivityList; getActivity b method_35684 + p 1 worldId + m (JI)Lcom/mojang/realmsclient/dto/WorldDownload; requestDownloadInfo b method_21003 + p 1 worldId + p 3 slotId + m (JLjava/lang/String;)V restoreWorld b method_21010 + p 1 worldId + p 3 backupId + m (JLjava/lang/String;Ljava/lang/String;)V update b method_21005 + p 1 worldId + p 3 name + p 4 description + m (JLjava/util/UUID;)Lcom/mojang/realmsclient/dto/Ops; op b method_21017 + p 1 worldId + p 3 profileUuid + m (Ljava/lang/String;)V rejectInvitation b method_21006 + p 1 inviteId + m (Ljava/util/List;)V notificationsDismiss b method_49570 + p 1 uuidList + m ()Ljava/util/List; listSnapshotEligibleRealms c method_54361 + m (J)Lcom/mojang/realmsclient/dto/RealmsServerAddress; join c method_21009 + p 1 serverId + m (JLjava/lang/String;)Ljava/lang/Boolean; putIntoMinigameMode c method_21014 + p 1 worldId + p 3 minigameId + m (JLjava/util/UUID;)Lcom/mojang/realmsclient/dto/Ops; deop c method_21020 + p 1 worldId + p 3 profileUuid + m (Ljava/lang/String;)Ljava/lang/String; url c method_21011 + p 1 path + m (Ljava/util/List;)Lcom/google/gson/JsonArray; uuidListToJsonArray c method_49571 + p 0 uuidList + m ()Ljava/util/List; getNotifications d method_49572 + m (J)V uninviteMyselfFrom d method_21013 + p 1 worldId + m (JLjava/lang/String;)Ljava/lang/Boolean; resetWorldWithTemplate d method_21023 + p 1 worldId + p 3 worldTemplateId + m ()Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; getLiveStats e method_21018 + m (J)Lcom/mojang/realmsclient/dto/BackupList; backupsFor e method_21016 + p 1 worldId + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/UploadInfo; requestUploadInfo e method_21026 + p 1 worldId + p 3 token + m ()Z hasParentalConsent f method_52655 + m (J)Ljava/lang/Boolean; open f method_21019 + p 1 worldId + m ()Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; clientCompatible g method_21027 + m (J)Ljava/lang/Boolean; close g method_21022 + p 1 worldId + m ()I pendingInvitesCount h method_21029 + m (J)Lcom/mojang/realmsclient/dto/Subscription; subscriptionFor h method_21025 + p 1 worldId + m ()Lcom/mojang/realmsclient/dto/PendingInvitesList; pendingInvites i method_21030 + m (J)V deleteRealm i method_21028 + p 1 worldId + m ()V agreeToTos j method_21031 + m ()Lcom/mojang/realmsclient/dto/RealmsNews; getNews k method_21032 + m ()Ljava/lang/Boolean; trialAvailable l method_21033 + m ()Ljava/util/Optional; method_52656 m method_52656 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/Minecraft;)V + p 1 sessionId + p 2 username + p 3 minecraft + m ()V +c com/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse fby$a net/minecraft/class_4341$class_4342 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; COMPATIBLE a field_19582 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; OUTDATED b field_19583 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; OTHER c field_19584 + f [Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; $VALUES d field_19585 + m ()[Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; $values a method_36846 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/client/RealmsClient$Environment fby$b net/minecraft/class_4341$class_4343 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; PRODUCTION a field_19586 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; STAGE b field_19587 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; LOCAL c field_19588 + f Ljava/lang/String; baseUrl d field_19589 + f Ljava/lang/String; protocol e field_19590 + f [Lcom/mojang/realmsclient/client/RealmsClient$Environment; $VALUES f field_19591 + m ()[Lcom/mojang/realmsclient/client/RealmsClient$Environment; $values a method_36847 + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_52215 + p 0 name + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 baseUrl + p 4 protocol + m ()V +c com/mojang/realmsclient/client/RealmsClientConfig fbz net/minecraft/class_4344 + f Ljava/net/Proxy; proxy a field_19592 + m ()Ljava/net/Proxy; getProxy a method_21034 + m (Ljava/net/Proxy;)V setProxy a method_21035 + p 0 proxy + m ()V +c com/mojang/realmsclient/client/RealmsError fca net/minecraft/class_4345 + f Lnet/minecraft/network/chat/Component; NO_MESSAGE a field_45233 + f Lorg/slf4j/Logger; LOGGER b field_19593 + m ()I errorCode a method_21037 + m (ILjava/lang/String;)Lcom/mojang/realmsclient/client/RealmsError; parse a method_30162 + p 0 httpCode + p 1 payload + m ()Lnet/minecraft/network/chat/Component; errorMessage b method_52657 + m ()Ljava/lang/String; logMessage c method_21036 + m ()V +c com/mojang/realmsclient/client/RealmsError$AuthenticationError fca$a net/minecraft/class_4345$class_8652 + f I ERROR_CODE c field_45234 + f Ljava/lang/String; message d comp_1595 + m ()Ljava/lang/String; message d comp_1595 + m (Ljava/lang/String;)V +c com/mojang/realmsclient/client/RealmsError$CustomError fca$b net/minecraft/class_4345$class_8653 + f Lcom/mojang/realmsclient/client/RealmsError$CustomError; SERVICE_BUSY c field_45235 + f Lnet/minecraft/network/chat/Component; RETRY_MESSAGE d field_45236 + f I httpCode e comp_1596 + f Lnet/minecraft/network/chat/Component; payload f comp_1597 + m (I)Lcom/mojang/realmsclient/client/RealmsError$CustomError; retry a method_52658 + p 0 httpCode + m (Lcom/mojang/realmsclient/exception/RealmsHttpException;)Lcom/mojang/realmsclient/client/RealmsError$CustomError; connectivityError a method_52659 + p 0 payload + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/RealmsError$CustomError; unknownCompatibilityResponse a method_52660 + p 0 payload + m (I)Lcom/mojang/realmsclient/client/RealmsError$CustomError; noPayload b method_52661 + p 0 httpCode + m ()I httpCode d comp_1596 + m ()Lnet/minecraft/network/chat/Component; payload e comp_1597 + m (ILnet/minecraft/network/chat/Component;)V + m ()V +c com/mojang/realmsclient/client/RealmsError$ErrorWithJsonPayload fca$c net/minecraft/class_4345$class_8654 + f I httpCode c comp_1598 + f I code d comp_1599 + f Ljava/lang/String; reason e comp_1600 + f Ljava/lang/String; message f comp_1601 + m ()I httpCode d comp_1598 + m ()I code e comp_1599 + m ()Ljava/lang/String; reason f comp_1600 + m ()Ljava/lang/String; message g comp_1601 + m (IILjava/lang/String;Ljava/lang/String;)V +c com/mojang/realmsclient/client/RealmsError$ErrorWithRawPayload fca$d net/minecraft/class_4345$class_8655 + f I httpCode c comp_1602 + f Ljava/lang/String; payload d comp_1603 + m ()I httpCode d comp_1602 + m ()Ljava/lang/String; payload e comp_1603 + m (ILjava/lang/String;)V +c com/mojang/realmsclient/client/Request fcb net/minecraft/class_4346 + f Ljava/net/HttpURLConnection; connection a field_19596 + f Ljava/lang/String; url b field_19597 + f Z connected c field_19598 + f I DEFAULT_READ_TIMEOUT d field_32096 + f I DEFAULT_CONNECT_TIMEOUT e field_32097 + f Ljava/lang/String; IS_SNAPSHOT_KEY f field_46690 + f Ljava/lang/String; COOKIE_KEY g field_46691 + m ()I getRetryAfterHeader a method_21038 + m (Ljava/io/InputStream;)Ljava/lang/String; read a method_21039 + p 1 in + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; get a method_21040 + p 0 url + m (Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; get a method_21041 + p 0 url + p 1 connectTimeout + p 2 readTimeout + m (Ljava/lang/String;Ljava/lang/String;)V cookie a method_21042 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; post a method_21043 + p 0 url + p 1 content + p 2 connectTimeout + p 3 readTimeout + m (Ljava/net/HttpURLConnection;)I getRetryAfterHeader a method_21044 + p 0 connection + m (Ljava/net/HttpURLConnection;Ljava/lang/String;)Ljava/lang/String; getHeader a method_21045 + p 0 connection + p 1 name + m (Ljava/net/HttpURLConnection;Ljava/lang/String;Ljava/lang/String;)V cookie a method_21046 + p 0 connection + p 1 key + p 2 value + m (Z)V addSnapshotHeader a method_54362 + p 1 isSnapshot + m ()I responseCode b method_21047 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; delete b method_21048 + p 0 url + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; post b method_21049 + p 0 url + p 1 content + m (Ljava/lang/String;Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; put b method_21050 + p 0 url + p 1 content + p 2 connectTimeout + p 3 readTimeout + m ()Ljava/lang/String; text c method_21051 + m (Ljava/lang/String;)Ljava/lang/String; getHeader c method_21052 + p 1 name + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; put c method_21053 + p 0 url + p 1 content + m ()Lcom/mojang/realmsclient/client/Request; connect d method_21054 + m ()Lcom/mojang/realmsclient/client/Request; doConnect e method_21055 + m ()V dispose f method_21056 + m (Ljava/lang/String;II)V + p 1 url + p 2 connectTimeout + p 3 readTimeout +c com/mojang/realmsclient/client/Request$Delete fcb$a net/minecraft/class_4346$class_4347 + m ()Lcom/mojang/realmsclient/client/Request$Delete; doConnect f method_21057 + m (Ljava/lang/String;II)V +c com/mojang/realmsclient/client/Request$Get fcb$b net/minecraft/class_4346$class_4348 + m ()Lcom/mojang/realmsclient/client/Request$Get; doConnect f method_21058 + m (Ljava/lang/String;II)V +c com/mojang/realmsclient/client/Request$Post fcb$c net/minecraft/class_4346$class_4349 + f Ljava/lang/String; content c field_19599 + m ()Lcom/mojang/realmsclient/client/Request$Post; doConnect f method_21059 + m (Ljava/lang/String;Ljava/lang/String;II)V + p 1 url + p 2 content + p 3 connectTimeout + p 4 readTimeout +c com/mojang/realmsclient/client/Request$Put fcb$d net/minecraft/class_4346$class_4350 + f Ljava/lang/String; content c field_19600 + m ()Lcom/mojang/realmsclient/client/Request$Put; doConnect f method_21060 + m (Ljava/lang/String;Ljava/lang/String;II)V + p 1 url + p 2 content + p 3 connectTimeout + p 4 readTimeout +c com/mojang/realmsclient/client/UploadStatus fcc net/minecraft/class_4351 + f J bytesWritten a field_19601 + f J totalBytes b field_19602 + m ()V +c com/mojang/realmsclient/client/package-info fcd net/minecraft/class_6191 +c com/mojang/realmsclient/dto/Backup fce net/minecraft/class_4867 + f Ljava/lang/String; backupId a field_22569 + f Ljava/util/Date; lastModifiedDate b field_22570 + f J size c field_22571 + f Ljava/util/Map; metadata d field_22572 + f Ljava/util/Map; changeList e field_22573 + f Lorg/slf4j/Logger; LOGGER f field_22574 + f Z uploadedVersion g field_22575 + m ()Z isUploadedVersion a method_25032 + m (Lcom/google/gson/JsonElement;)Lcom/mojang/realmsclient/dto/Backup; parse a method_25033 + p 0 json + m (Z)V setUploadedVersion a method_25035 + p 1 uploadedVersion + m ()V + m ()V +c com/mojang/realmsclient/dto/BackupList fcf net/minecraft/class_4868 + f Ljava/util/List; backups a field_22576 + f Lorg/slf4j/Logger; LOGGER b field_22577 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/BackupList; parse a method_25036 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/GuardedSerializer fcg net/minecraft/class_4869 + f Lcom/google/gson/Gson; gson a field_22578 + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; toJson a method_49573 + p 1 json + m (Lcom/mojang/realmsclient/dto/ReflectionBasedSerialization;)Ljava/lang/String; toJson a method_25037 + p 1 reflectionBasedSerialization + m (Ljava/lang/String;Ljava/lang/Class;)Lcom/mojang/realmsclient/dto/ReflectionBasedSerialization; fromJson a method_25038 + p 1 json + p 2 classOfT + m ()V +c com/mojang/realmsclient/dto/Ops fch net/minecraft/class_4870 + f Ljava/util/Set; ops a field_22579 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Ops; parse a method_25039 + p 0 json + m ()V +c com/mojang/realmsclient/dto/PendingInvite fci net/minecraft/class_4871 + f Ljava/lang/String; invitationId a field_22580 + f Ljava/lang/String; realmName b field_22581 + f Ljava/lang/String; realmOwnerName c field_22582 + f Ljava/util/UUID; realmOwnerUuid d field_22583 + f Ljava/util/Date; date e field_22584 + f Lorg/slf4j/Logger; LOGGER f field_22585 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/PendingInvite; parse a method_25040 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/PendingInvitesList fcj net/minecraft/class_4872 + f Ljava/util/List; pendingInvites a field_22586 + f Lorg/slf4j/Logger; LOGGER b field_22587 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/PendingInvitesList; parse a method_25041 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/PingResult fck net/minecraft/class_4873 + f Ljava/util/List; pingResults a field_22588 + f Ljava/util/List; realmIds b field_22589 + m ()V +c com/mojang/realmsclient/dto/PlayerInfo fcl net/minecraft/class_4874 + f Ljava/lang/String; name a field_22590 + f Ljava/util/UUID; uuid b field_22591 + f Z operator c field_22592 + f Z accepted d field_22593 + f Z online e field_22594 + m ()Ljava/lang/String; getName a method_25042 + m (Ljava/lang/String;)V setName a method_25043 + p 1 name + m (Ljava/util/UUID;)V setUuid a method_25046 + p 1 uuid + m (Z)V setOperator a method_25044 + p 1 operator + m ()Ljava/util/UUID; getUuid b method_25045 + m (Z)V setAccepted b method_25047 + p 1 accepted + m ()Z isOperator c method_25048 + m (Z)V setOnline c method_25049 + p 1 online + m ()Z getAccepted d method_25050 + m ()Z getOnline e method_25051 + m ()V +c com/mojang/realmsclient/dto/RealmsDescriptionDto fcm net/minecraft/class_4875 + f Ljava/lang/String; name a field_22595 + f Ljava/lang/String; description b field_22596 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 name + p 2 description +c com/mojang/realmsclient/dto/RealmsNews fcn net/minecraft/class_4876 + f Ljava/lang/String; newsLink a field_22597 + f Lorg/slf4j/Logger; LOGGER b field_22598 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsNews; parse a method_25052 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsNotification fco net/minecraft/class_8204 + f Lorg/slf4j/Logger; LOGGER a field_43015 + f Ljava/lang/String; NOTIFICATION_UUID b field_43016 + f Ljava/lang/String; DISMISSABLE c field_43017 + f Ljava/lang/String; SEEN d field_43018 + f Ljava/lang/String; TYPE e field_43019 + f Ljava/lang/String; VISIT_URL f field_43020 + f Ljava/lang/String; INFO_POPUP g field_46538 + f Lnet/minecraft/network/chat/Component; BUTTON_TEXT_FALLBACK h field_46539 + f Ljava/util/UUID; uuid i field_43021 + f Z dismissable j field_43022 + f Z seen k field_43023 + f Ljava/lang/String; type l field_43024 + m ()Z seen a method_49574 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification; parse a method_49575 + p 0 json + m (Ljava/lang/String;)Ljava/util/List; parseList a method_49576 + p 0 json + m ()Z dismissable b method_49577 + m ()Ljava/util/UUID; uuid c method_49578 + m (Ljava/util/UUID;ZZLjava/lang/String;)V + p 1 uuid + p 2 dismissable + p 3 seen + p 4 type + m ()V +c com/mojang/realmsclient/dto/RealmsNotification$InfoPopup fco$a net/minecraft/class_8204$class_8814 + f Ljava/lang/String; TITLE a field_46540 + f Ljava/lang/String; MESSAGE b field_46541 + f Ljava/lang/String; IMAGE c field_46542 + f Ljava/lang/String; URL_BUTTON d field_46543 + f Lcom/mojang/realmsclient/dto/RealmsText; title e field_46544 + f Lcom/mojang/realmsclient/dto/RealmsText; message f field_46545 + f Lnet/minecraft/resources/ResourceLocation; image g field_46546 + f Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton; urlButton h field_46547 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$InfoPopup; parse a method_54107 + p 0 notification + p 1 json + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/components/PopupScreen;Z)V method_54108 a method_54108 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; buildScreen a method_54109 + p 1 backgroundScreen + p 2 uuidOutput + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54110 a method_54110 + m (Ljava/util/function/Consumer;)V method_54111 a method_54111 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54112 a method_54112 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/mojang/realmsclient/dto/RealmsText;Lcom/mojang/realmsclient/dto/RealmsText;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton;)V + p 1 notification + p 2 title + p 3 message + p 4 image + p 5 urlButton +c com/mojang/realmsclient/dto/RealmsNotification$UrlButton fco$b net/minecraft/class_8204$class_8815 + f Ljava/lang/String; url a comp_1974 + f Lcom/mojang/realmsclient/dto/RealmsText; urlText b comp_1975 + f Ljava/lang/String; URL c field_46548 + f Ljava/lang/String; URL_TEXT d field_46549 + m ()Ljava/lang/String; url a comp_1974 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton; parse a method_54113 + p 0 json + m ()Lcom/mojang/realmsclient/dto/RealmsText; urlText b comp_1975 + m (Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsText;)V +c com/mojang/realmsclient/dto/RealmsNotification$VisitUrl fco$c net/minecraft/class_8204$class_8205 + f Ljava/lang/String; URL a field_43025 + f Ljava/lang/String; BUTTON_TEXT b field_43026 + f Ljava/lang/String; MESSAGE c field_43027 + f Ljava/lang/String; url d field_43028 + f Lcom/mojang/realmsclient/dto/RealmsText; buttonText e field_43029 + f Lcom/mojang/realmsclient/dto/RealmsText; message f field_43030 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$VisitUrl; parse a method_49579 + p 0 notification + p 1 json + m (Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/Button; buildOpenLinkButton a method_49580 + p 1 lastScreen + m ()Lnet/minecraft/network/chat/Component; getMessage d method_49581 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsText;Lcom/mojang/realmsclient/dto/RealmsText;)V + p 1 notification + p 2 url + p 3 buttonText + p 4 message +c com/mojang/realmsclient/dto/RealmsServer fcp net/minecraft/class_4877 + f J id a field_22599 + f Ljava/lang/String; remoteSubscriptionId b field_22600 + f Ljava/lang/String; name c field_22601 + f Ljava/lang/String; motd d field_22602 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; state e field_22603 + f Ljava/lang/String; owner f field_22604 + f Ljava/util/UUID; ownerUUID g field_22605 + f Ljava/util/List; players h field_22606 + f Ljava/util/Map; slots i field_22607 + f Z expired j field_22608 + f Z expiredTrial k field_22609 + f I daysLeft l field_22610 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType m field_22611 + f I activeSlot n field_22612 + f Ljava/lang/String; minigameName o field_22613 + f I minigameId p field_22614 + f Ljava/lang/String; minigameImage q field_22615 + f J parentRealmId r field_46692 + f Ljava/lang/String; parentWorldName s field_46693 + f Ljava/lang/String; activeVersion t field_46694 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility u field_46695 + f Lorg/slf4j/Logger; LOGGER v field_22617 + f I NO_VALUE w field_46696 + m ()Ljava/lang/String; getDescription a method_25053 + m (I)Ljava/lang/String; getWorldName a method_25054 + p 1 slot + m (Lcom/google/gson/JsonArray;)Ljava/util/List; parseInvited a method_25055 + p 0 jsonArray + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsServer; parse a method_25056 + p 0 json + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Lcom/mojang/realmsclient/dto/PlayerInfo;)I method_25057 a method_25057 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V sortInvited a method_25058 + p 0 realmsServer + m (Ljava/lang/String;)V setName a method_25060 + p 1 name + m (Ljava/util/Map;)Ljava/util/Map; cloneSlots a method_25061 + p 1 slots + m ()Ljava/lang/String; getName b method_25062 + m (Lcom/google/gson/JsonArray;)Ljava/util/Map; parseSlots b method_25063 + p 0 jsonArray + m (Ljava/lang/String;)V setDescription b method_25064 + p 1 motd + m ()Ljava/lang/String; getMinigameName c method_25065 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; parse c method_25066 + p 0 json + m ()Z isCompatible d method_54363 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; getCompatibility d method_54366 + p 0 id + m ()Z needsUpgrade e method_54364 + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; toServerData e method_31403 + p 1 ip + m ()Z needsDowngrade f method_54365 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$State; getState f method_25068 + p 0 name + m ()Lcom/mojang/realmsclient/dto/RealmsServer; clone g method_25067 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; getWorldType g method_25070 + p 0 name + m ()Z isSnapshotRealm h method_54367 + m ()Z isMinigameActive i method_60315 + m ()Ljava/util/Map; createEmptySlots j method_25069 + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$Compatibility fcp$a net/minecraft/class_4877$class_8842 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; UNVERIFIABLE a field_46697 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; INCOMPATIBLE b field_46698 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; RELEASE_TYPE_INCOMPATIBLE c field_51817 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; NEEDS_DOWNGRADE d field_46699 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; NEEDS_UPGRADE e field_46700 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; COMPATIBLE f field_46701 + f [Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; $VALUES g field_46702 + m ()Z isCompatible a method_54568 + m ()Z needsUpgrade b method_54569 + m ()Z needsDowngrade c method_54570 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; $values d method_54368 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$McoServerComparator fcp$b net/minecraft/class_4877$class_4319 + f Ljava/lang/String; refOwner a field_19432 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/dto/RealmsServer;)I compare a method_20830 + p 1 first + p 2 second + m (Ljava/lang/String;)V + p 1 refOwner +c com/mojang/realmsclient/dto/RealmsServer$State fcp$c net/minecraft/class_4877$class_4320 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; CLOSED a field_19433 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; OPEN b field_19434 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; UNINITIALIZED c field_19435 + f [Lcom/mojang/realmsclient/dto/RealmsServer$State; $VALUES d field_19436 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$State; $values a method_36848 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$WorldType fcp$d net/minecraft/class_4877$class_4321 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; NORMAL a field_19437 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; MINIGAME b field_19438 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; ADVENTUREMAP c field_19439 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; EXPERIENCE d field_19440 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; INSPIRATION e field_19441 + f [Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; $VALUES f field_19442 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; $values a method_36849 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServerAddress fcq net/minecraft/class_4878 + f Ljava/lang/String; address a field_22618 + f Ljava/lang/String; resourcePackUrl b field_22619 + f Ljava/lang/String; resourcePackHash c field_22620 + f Lorg/slf4j/Logger; LOGGER d field_22621 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerAddress; parse a method_25071 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServerList fcr net/minecraft/class_4879 + f Ljava/util/List; servers a field_22622 + f Lorg/slf4j/Logger; LOGGER b field_22623 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerList; parse a method_25072 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServerPlayerLists fcs net/minecraft/class_4881 + f Ljava/util/Map; servers a field_52121 + f Lorg/slf4j/Logger; LOGGER b field_22628 + m (J)Ljava/util/List; getProfileResultsFor a method_60863 + p 1 index + m (Lcom/google/gson/JsonArray;)Ljava/util/List; parsePlayers a method_25073 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; parse a method_25074 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsText fct net/minecraft/class_8206 + f Ljava/lang/String; TRANSLATION_KEY a field_43031 + f Ljava/lang/String; ARGS b field_43032 + f Ljava/lang/String; translationKey c field_43033 + f [Ljava/lang/String; args d field_43034 + m ()Lnet/minecraft/network/chat/Component; createComponent a method_54114 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsText; parse a method_49582 + p 0 json + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; createComponent a method_49583 + p 1 defaultValue + m (Ljava/lang/String;[Ljava/lang/String;)V + p 1 translationKey + p 2 args +c com/mojang/realmsclient/dto/RealmsWorldOptions fcu net/minecraft/class_4883 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; DEFAULT_COMPATIBILITY A field_46842 + f J DEFAULT_TEMPLATE_ID B field_32110 + f Ljava/lang/String; DEFAULT_TEMPLATE_IMAGE C field_22646 + f Z pvp a field_22632 + f Z spawnAnimals b field_22633 + f Z spawnMonsters c field_22634 + f Z spawnNPCs d field_22635 + f I spawnProtection e field_22636 + f Z commandBlocks f field_22637 + f Z forceGameMode g field_22638 + f I difficulty h field_22639 + f I gameMode i field_22640 + f Ljava/lang/String; version j field_46843 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility k field_46844 + f J templateId l field_22642 + f Ljava/lang/String; templateImage m field_22643 + f Z empty n field_22645 + f Ljava/lang/String; slotName o field_22641 + f Z DEFAULT_FORCE_GAME_MODE p field_32100 + f Z DEFAULT_PVP q field_32101 + f Z DEFAULT_SPAWN_ANIMALS r field_32102 + f Z DEFAULT_SPAWN_MONSTERS s field_32103 + f Z DEFAULT_SPAWN_NPCS t field_32104 + f I DEFAULT_SPAWN_PROTECTION u field_32105 + f Z DEFAULT_COMMAND_BLOCKS v field_32106 + f I DEFAULT_DIFFICULTY w field_32107 + f I DEFAULT_GAME_MODE x field_32108 + f Ljava/lang/String; DEFAULT_SLOT_NAME y field_32109 + f Ljava/lang/String; DEFAULT_VERSION z field_46845 + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; createDefaults a method_25076 + m (I)Ljava/lang/String; getSlotName a method_25077 + p 1 slotIndex + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsWorldOptions; parse a method_25078 + p 0 json + m (Z)V setEmpty a method_25079 + p 1 empty + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; createEmptyDefaults b method_25080 + m (I)Ljava/lang/String; getDefaultSlotName b method_25081 + p 1 slotIndex + m ()Ljava/lang/String; toJson c method_25082 + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; clone d method_25083 + m (ZZZZIZIIZLjava/lang/String;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility;)V + p 1 pvp + p 2 spawnAnimals + p 3 spawnMonsters + p 4 spawnNPCs + p 5 spawnProtection + p 6 commandBlocks + p 7 difficulty + p 8 gameMode + p 9 forceGameMode + p 10 slotName + p 11 version + p 12 compatibility + m ()V +c com/mojang/realmsclient/dto/RealmsWorldResetDto fcv net/minecraft/class_4884 + f Ljava/lang/String; seed a field_22647 + f J worldTemplateId b field_22648 + f I levelType c field_22649 + f Z generateStructures d field_22650 + f Ljava/util/Set; experiments e field_46703 + m (Ljava/lang/String;JIZLjava/util/Set;)V + p 1 seed + p 2 worldTemplateId + p 4 levelType + p 5 generateStructures + p 6 experiments +c com/mojang/realmsclient/dto/ReflectionBasedSerialization fcw net/minecraft/class_4885 +c com/mojang/realmsclient/dto/RegionPingResult fcx net/minecraft/class_4886 + f Ljava/lang/String; regionName a field_22651 + f I ping b field_22652 + m ()I ping a method_25084 + m (Ljava/lang/String;I)V + p 1 regionName + p 2 ping +c com/mojang/realmsclient/dto/ServerActivity fcy net/minecraft/class_6192 + f Ljava/lang/String; profileUuid a field_32111 + f J joinTime b field_32112 + f J leaveTime c field_32113 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/ServerActivity; parse a method_35686 + p 0 json + m ()V +c com/mojang/realmsclient/dto/ServerActivityList fcz net/minecraft/class_6193 + f J periodInMillis a field_32114 + f Ljava/util/List; serverActivities b field_32115 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/ServerActivityList; parse a method_35687 + p 0 json + m ()V +c com/mojang/realmsclient/dto/Subscription fda net/minecraft/class_4887 + f J startDate a field_22653 + f I daysLeft b field_22654 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; type c field_22655 + f Lorg/slf4j/Logger; LOGGER d field_22656 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Subscription; parse a method_25085 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; typeFrom b method_25086 + p 0 name + m ()V + m ()V +c com/mojang/realmsclient/dto/Subscription$SubscriptionType fda$a net/minecraft/class_4887$class_4322 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; NORMAL a field_19443 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; RECURRING b field_19444 + f [Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; $VALUES c field_19445 + m ()[Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; $values a method_36850 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/UploadInfo fdb net/minecraft/class_4888 + f Lorg/slf4j/Logger; LOGGER a field_22657 + f Ljava/lang/String; DEFAULT_SCHEMA b field_32116 + f I DEFAULT_PORT c field_32117 + f Ljava/util/regex/Pattern; URI_SCHEMA_PATTERN d field_26467 + f Z worldClosed e field_22658 + f Ljava/lang/String; token f field_22659 + f Ljava/net/URI; uploadEndpoint g field_22660 + m ()Ljava/lang/String; getToken a method_25087 + m (II)I selectPortOrDefault a method_30861 + p 0 port + p 1 defaultPort + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/UploadInfo; parse a method_25088 + p 0 json + m (Ljava/lang/String;I)Ljava/net/URI; assembleUri a method_30862 + p 0 uri + p 1 port + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Ljava/lang/String; ensureEndpointSchema a method_30863 + p 0 uri + p 1 matcher + m ()Ljava/net/URI; getUploadEndpoint b method_25089 + m (Ljava/lang/String;)Ljava/lang/String; createRequest b method_30864 + p 0 token + m ()Z isWorldClosed c method_25091 + m (ZLjava/lang/String;Ljava/net/URI;)V + p 1 worldClosed + p 2 token + p 3 uploadEndpoint + m ()V +c com/mojang/realmsclient/dto/ValueObject fdc net/minecraft/class_4352 + m (Ljava/lang/reflect/Field;)Ljava/lang/String; getName a method_25093 + p 0 field + m (Ljava/lang/reflect/Field;)Z isStatic b method_25094 + p 0 field + m ()V +c com/mojang/realmsclient/dto/WorldDownload fdd net/minecraft/class_4889 + f Ljava/lang/String; downloadLink a field_22662 + f Ljava/lang/String; resourcePackUrl b field_22663 + f Ljava/lang/String; resourcePackHash c field_22664 + f Lorg/slf4j/Logger; LOGGER d field_22665 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/WorldDownload; parse a method_25095 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/WorldTemplate fde net/minecraft/class_4890 + f Ljava/lang/String; id a field_22666 + f Ljava/lang/String; name b field_22667 + f Ljava/lang/String; version c field_22668 + f Ljava/lang/String; author d field_22669 + f Ljava/lang/String; link e field_22670 + f Ljava/lang/String; image f field_22671 + f Ljava/lang/String; trailer g field_22672 + f Ljava/lang/String; recommendedPlayers h field_22673 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; type i field_22674 + f Lorg/slf4j/Logger; LOGGER j field_22675 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/WorldTemplate; parse a method_25096 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType fde$a net/minecraft/class_4890$class_4323 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; WORLD_TEMPLATE a field_19447 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; MINIGAME b field_19448 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; ADVENTUREMAP c field_19449 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; EXPERIENCE d field_19450 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; INSPIRATION e field_19451 + f [Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; $VALUES f field_19452 + m ()[Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; $values a method_36851 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/WorldTemplatePaginatedList fdf net/minecraft/class_4891 + f Ljava/util/List; templates a field_22676 + f I page b field_22677 + f I size c field_22678 + f I total d field_22679 + f Lorg/slf4j/Logger; LOGGER e field_22680 + m ()Z isLastPage a method_35688 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; parse a method_25097 + p 0 json + m ()V + m (I)V + p 1 size + m ()V +c com/mojang/realmsclient/dto/package-info fdg net/minecraft/class_6194 +c com/mojang/realmsclient/exception/RealmsDefaultUncaughtExceptionHandler fdh net/minecraft/class_4353 + f Lorg/slf4j/Logger; logger a field_19603 + m (Lorg/slf4j/Logger;)V + p 1 logger +c com/mojang/realmsclient/exception/RealmsHttpException fdi net/minecraft/class_4354 + m (Ljava/lang/String;Ljava/lang/Exception;)V + p 1 message + p 2 cause +c com/mojang/realmsclient/exception/RealmsServiceException fdj net/minecraft/class_4355 + f Lcom/mojang/realmsclient/client/RealmsError; realmsError a field_36320 + m (Lcom/mojang/realmsclient/client/RealmsError;)V + p 1 realmsError +c com/mojang/realmsclient/exception/RetryCallException fdk net/minecraft/class_4356 + f I DEFAULT_DELAY b field_32118 + f I delaySeconds c field_19608 + m (II)V + p 1 retryAfter + p 2 httpResultCode +c com/mojang/realmsclient/exception/package-info fdl net/minecraft/class_6195 +c com/mojang/realmsclient/gui/RealmsDataFetcher fdm net/minecraft/class_7578 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; dataFetcher a field_39682 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; notificationsTask b field_43035 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; serverListUpdateTask c field_39683 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; pendingInvitesTask d field_39685 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; trialAvailabilityTask e field_39686 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; newsTask f field_39687 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; onlinePlayersTask g field_52122 + f Lcom/mojang/realmsclient/gui/RealmsNewsManager; newsManager h field_39688 + f Ljava/util/List; tasks i field_46704 + m ()Ljava/util/List; getTasks a method_54369 + m (Lcom/mojang/realmsclient/client/RealmsClient;)Lcom/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData; method_44617 a method_44617 + m (Lcom/mojang/realmsclient/client/RealmsClient;)V + p 1 realmsClient +c com/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData fdm$a net/minecraft/class_7578$class_8843 + f Ljava/util/List; serverList a comp_1989 + f Ljava/util/List; availableSnapshotServers b comp_1990 + m ()Ljava/util/List; serverList a comp_1989 + m ()Ljava/util/List; availableSnapshotServers b comp_1990 + m (Ljava/util/List;Ljava/util/List;)V +c com/mojang/realmsclient/gui/RealmsNewsManager fdn net/minecraft/class_7579 + f Lcom/mojang/realmsclient/util/RealmsPersistence; newsLocalStorage a field_39689 + f Z hasUnreadNews b field_39690 + f Ljava/lang/String; newsLink c field_39691 + m ()Z hasUnreadNews a method_44618 + m (Lcom/mojang/realmsclient/dto/RealmsNews;)V updateUnreadNews a method_44619 + p 1 realmsNews + m ()Ljava/lang/String; newsLink b method_44620 + m (Lcom/mojang/realmsclient/dto/RealmsNews;)Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; updateNewsStorage b method_44621 + p 1 realmsNews + m (Lcom/mojang/realmsclient/util/RealmsPersistence;)V + p 1 newsLocalStorage +c com/mojang/realmsclient/gui/RealmsServerList fdo net/minecraft/class_7580 + f Lnet/minecraft/client/Minecraft; minecraft a field_39692 + f Ljava/util/Set; removedServers b field_39693 + f Ljava/util/List; servers c field_39694 + m ()Z isEmpty a method_52664 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V removeItem a method_44622 + p 1 server + m (Ljava/util/List;)V updateServersList a method_44623 + p 1 servers + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c com/mojang/realmsclient/gui/RealmsWorldSlotButton fdp net/minecraft/class_4367 + f I slotIndex A field_19675 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State; state B field_19677 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LOCATION a field_22682 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_1 b field_22683 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_2 c field_22684 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_3 d field_22685 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE u field_22681 + f Lnet/minecraft/resources/ResourceLocation; CHECKMARK_SPRITE v field_39067 + f Lnet/minecraft/network/chat/Component; SLOT_ACTIVE_TOOLTIP w field_26468 + f Lnet/minecraft/network/chat/Component; SWITCH_TO_MINIGAME_SLOT_TOOLTIP x field_26469 + f Lnet/minecraft/network/chat/Component; SWITCH_TO_WORLD_SLOT_TOOLTIP y field_26470 + f Lnet/minecraft/network/chat/Component; MINIGAME z field_44894 + m ()Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State; getState a method_25099 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V setServerData a method_54571 + p 1 serverData + m (Lcom/mojang/realmsclient/dto/RealmsServer;ZZ)Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; getAction a method_27455 + p 0 realmsServer + p 1 isCurrentlyActiveSlot + p 2 minigame + m (Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State;Ljava/lang/String;)V setTooltipAndNarration a method_54572 + p 1 state + p 2 minigameName + m (IIIIILnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 slotIndex + p 6 onPress + m ()V +c com/mojang/realmsclient/gui/RealmsWorldSlotButton$Action fdp$a net/minecraft/class_4367$class_4368 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; NOTHING a field_19678 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; SWITCH_SLOT b field_19679 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; JOIN c field_19680 + f [Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; $VALUES d field_19681 + m ()[Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; $values a method_36853 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/gui/RealmsWorldSlotButton$State fdp$b net/minecraft/class_4367$class_4370 + f Z empty a field_19686 + f Z minigame b field_19687 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; action c field_19688 + f Z isCurrentlyActiveSlot d field_19682 + f Ljava/lang/String; slotName e field_19683 + f Ljava/lang/String; slotVersion f field_46848 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility g field_46849 + f J imageId h field_19684 + f Ljava/lang/String; image i field_19685 + m (Lcom/mojang/realmsclient/dto/RealmsServer;I)V + p 1 server + p 2 slot +c com/mojang/realmsclient/gui/RowButton fdq net/minecraft/class_4371 + f I width a field_19690 + f I height b field_19691 + f I xOffset c field_19692 + f I yOffset d field_19693 + m ()I getRight a method_21109 + m (I)V onClick a method_21110 + p 1 index + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawForRowAt a method_21111 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V draw a method_21112 + p 1 guiGraphics + p 2 x + p 3 y + p 4 showTooltip + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/util/List;Lnet/minecraft/realms/RealmsObjectSelectionList;IIII)V drawButtonsInRow a method_21113 + p 0 guiGraphics + p 1 buttons + p 2 pendingInvitations + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lnet/minecraft/realms/RealmsObjectSelectionList;Lnet/minecraft/client/gui/components/ObjectSelectionList$Entry;Ljava/util/List;IDD)V rowButtonMouseClicked a method_21114 + p 0 list + p 1 entry + p 2 buttons + p 3 button + p 4 mouseX + p 6 mouseY + m ()I getBottom b method_21115 + m (IIII)V + p 1 width + p 2 height + p 3 xOffset + p 4 yOffset +c com/mojang/realmsclient/gui/package-info fdr net/minecraft/class_6196 +c com/mojang/realmsclient/gui/screens/AddRealmPopupScreen fds net/minecraft/class_8656 + f Lnet/minecraft/resources/ResourceLocation; TRIAL_AVAILABLE_SPRITE B field_45276 + f Lnet/minecraft/client/gui/components/WidgetSprites; CROSS_BUTTON_SPRITES C field_45277 + f I BG_TEXTURE_WIDTH D field_45255 + f I BG_TEXTURE_HEIGHT E field_45256 + f I BG_BORDER_SIZE F field_45257 + f I IMAGE_WIDTH G field_45258 + f I IMAGE_HEIGHT H field_45259 + f I BUTTON_SPACING I field_45260 + f I PADDING J field_45261 + f I WIDTH K field_45262 + f I HEIGHT L field_45263 + f I TEXT_WIDTH M field_45264 + f I BUTTON_WIDTH N field_45265 + f I CAROUSEL_SWITCH_INTERVAL O field_45266 + f Ljava/util/List; carouselImages P field_45267 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen Q field_45268 + f Z trialAvailable R field_45269 + f Lnet/minecraft/client/gui/components/Button; createTrialButton S field_45270 + f I carouselIndex T field_45271 + f I carouselTick U field_45272 + f Lnet/minecraft/network/chat/Component; POPUP_TEXT a field_45273 + f Lnet/minecraft/network/chat/Component; CLOSE_TEXT b field_45274 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE c field_45275 + m ()I left C method_52680 + m ()I top D method_52681 + m ()I right E method_52682 + m ()I bottom F method_52683 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_52684 a method_52684 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V updateCarouselImages a method_52685 + p 0 resourceManager + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/Button;)V renderDiamond a method_52686 + p 0 guiGraphics + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V method_52687 a method_52687 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_52688 b method_52688 + m (Lnet/minecraft/client/gui/screens/Screen;Z)V + p 1 backgroundScreen + p 2 trialAvailable + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen fdt net/minecraft/class_4379 + f Lcom/mojang/realmsclient/dto/Backup; backup B field_19736 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_45973 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoList; backupInfoList D field_19738 + f Lnet/minecraft/network/chat/Component; TITLE a field_45972 + f Lnet/minecraft/network/chat/Component; UNKNOWN b field_27937 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen c field_19734 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;)Lnet/minecraft/client/gui/Font; method_29335 a method_29335 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53513 a method_53513 + m (Lnet/minecraft/client/gui/components/Button;)V method_25105 a method_25105 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; gameDifficultyMetadata a method_21140 + p 1 value + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; checkForSpecificMetadata a method_21141 + p 1 key + p 2 value + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;)Lnet/minecraft/client/gui/Font; method_51885 b method_51885 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; gameModeMetadata b method_21143 + p 1 value + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/Backup;)V + p 1 lastScreen + p 2 backup + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoList fdt$a net/minecraft/class_4379$class_4380 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen; field_19740 a field_19740 + m (Ljava/lang/String;Ljava/lang/String;)V method_29336 a method_29336 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoListEntry fdt$b net/minecraft/class_4379$class_5344 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen; field_25257 a field_25257 + f Lnet/minecraft/network/chat/Component; TEMPLATE_NAME b field_44895 + f Lnet/minecraft/network/chat/Component; GAME_DIFFICULTY c field_44896 + f Lnet/minecraft/network/chat/Component; NAME d field_44897 + f Lnet/minecraft/network/chat/Component; GAME_SERVER_VERSION e field_44898 + f Lnet/minecraft/network/chat/Component; UPLOADED f field_44899 + f Lnet/minecraft/network/chat/Component; ENABLED_PACK g field_44900 + f Lnet/minecraft/network/chat/Component; DESCRIPTION h field_44901 + f Lnet/minecraft/network/chat/Component; GAME_MODE i field_44902 + f Lnet/minecraft/network/chat/Component; SEED j field_44903 + f Lnet/minecraft/network/chat/Component; WORLD_TYPE k field_44904 + f Lnet/minecraft/network/chat/Component; UNDEFINED l field_44905 + f Ljava/lang/String; key m field_25258 + f Ljava/lang/String; value n field_25259 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; translateKey a method_51886 + p 1 key + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Ljava/lang/String;Ljava/lang/String;)V + p 2 key + p 3 value + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen fdu net/minecraft/class_4381 + f Lnet/minecraft/network/chat/Component; HAS_CHANGES_TOOLTIP B field_26472 + f Lnet/minecraft/network/chat/Component; NO_BACKUPS_LABEL C field_26474 + f Lnet/minecraft/network/chat/Component; DOWNLOAD_LATEST D field_51818 + f Ljava/lang/String; UPLOADED_KEY E field_32119 + f I PADDING F field_49447 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen G field_19743 + f Ljava/util/List; backups H field_19744 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen$BackupObjectSelectionList; backupList I field_49448 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout J field_49449 + f I slotId K field_19748 + f Lnet/minecraft/client/gui/components/Button; downloadButton L field_19749 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData M field_19753 + f Z noBackups N field_19752 + f Lorg/slf4j/Logger; LOGGER a field_19741 + f Lnet/minecraft/network/chat/Component; TITLE b field_26473 + f Lnet/minecraft/network/chat/Component; RESTORE_TOOLTIP c field_26471 + m ()V fetchRealmsBackups C method_57661 + m ()V downloadClicked D method_21166 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_25108 a method_25108 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_25109 a method_25109 + m (Lnet/minecraft/client/gui/components/Button;)V method_25110 a method_25110 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25111 a method_25111 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_25115 b method_25115 + m (Lnet/minecraft/client/gui/components/Button;)V method_25113 b method_25113 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_25116 c method_25116 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_51237 d method_51237 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57662 e method_57662 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57663 f method_57663 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57664 g method_57664 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_57665 h method_57665 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_57666 i method_57666 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;I)V + p 1 lastScreen + p 2 serverData + p 3 slotId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$1 fdu$1 net/minecraft/class_4381$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19755 a field_19755 + m (Ljava/util/List;)V method_21171 a method_21171 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$BackupObjectSelectionList fdu$a net/minecraft/class_4381$class_4382 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19760 a field_19760 + f I ITEM_HEIGHT m field_49450 + m (Lcom/mojang/realmsclient/dto/Backup;)V addEntry a method_21173 + p 1 backup + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$Entry fdu$b net/minecraft/class_4381$class_4383 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19762 a field_19762 + f I Y_PADDING b field_44525 + f Lcom/mojang/realmsclient/dto/Backup; backup c field_19761 + f Lnet/minecraft/client/gui/components/Button; restoreButton d field_49452 + f Lnet/minecraft/client/gui/components/Button; changesButton e field_49451 + f Ljava/util/List; children f field_44527 + m (Lcom/mojang/realmsclient/dto/Backup;)V populateChangeList a method_51239 + p 1 backup + m (Lnet/minecraft/client/gui/components/Button;)V method_57668 a method_57668 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_57673 a method_57673 + m (Ljava/lang/String;)V addToChangeList a method_51241 + p 1 change + m (Ljava/util/Date;)Ljava/lang/String; getMediumDatePresentation a method_21176 + p 1 date + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57669 a method_57669 + m (Lnet/minecraft/client/gui/components/Button;)V method_57670 b method_57670 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57671 b method_57671 + m ()Ljava/lang/String; getShortBackupDate c method_57672 + m ()V restoreClicked d method_57674 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Lcom/mojang/realmsclient/dto/Backup;)V + p 2 backup +c com/mojang/realmsclient/gui/screens/RealmsBrokenWorldScreen fdv net/minecraft/class_4384 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_19764 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData C field_20492 + f J serverId D field_19767 + f [Lnet/minecraft/network/chat/Component; message E field_19769 + f I leftX F field_19770 + f Ljava/util/List; slotsThatHasBeenDownloaded G field_19778 + f I animTick H field_19779 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE a field_45239 + f Lorg/slf4j/Logger; LOGGER b field_19763 + f I DEFAULT_BUTTON_WIDTH c field_32120 + m ()V addButtons C method_21178 + m ()Z isMinigame D method_21196 + m ()V method_25127 E method_25127 + m ()V method_37404 F method_37404 + m ()V method_25129 G method_25129 + m (I)I getFramePositionX a method_21179 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_25124 a method_25124 + m (ILnet/minecraft/client/gui/components/PopupScreen;)V method_25125 a method_25125 + m (IZ)V method_25121 a method_25121 + m (J)V fetchServerData a method_21181 + p 1 serverId + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_25128 a method_25128 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIZLjava/lang/String;IJLjava/lang/String;Z)V drawSlotFrame a method_21180 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 isActiveNonMinigame + p 7 text + p 8 slotIndex + p 9 templateId + p 11 templateImage + p 12 hasTemplateImage + m (Lnet/minecraft/client/gui/components/Button;)V method_25122 a method_25122 + m ()V doSwitchOrReset b method_25123 + m (I)V downloadWorld b method_21187 + p 1 slotIndex + m (ILnet/minecraft/client/gui/components/Button;)V method_25120 b method_25120 + m (J)V method_22101 b method_22101 + m (Lnet/minecraft/client/gui/screens/Screen;JZ)V + p 1 lastScreen + p 2 serverId + p 4 isMinigame + m ()V +c com/mojang/realmsclient/gui/screens/RealmsClientOutdatedScreen fdw net/minecraft/class_4387 + f Lnet/minecraft/network/chat/Component; OUTDATED_STABLE_VERSION B field_49456 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen C field_19787 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49453 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_TITLE a field_26477 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_CLIENT_VERSION b field_49454 + f Lnet/minecraft/network/chat/Component; UNSUPPORTED_SNAPSHOT_VERSION c field_49455 + m ()Lnet/minecraft/network/chat/Component; getErrorMessage C method_57675 + m (Lcom/mojang/realmsclient/gui/screens/RealmsClientOutdatedScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57676 a method_57676 + m (Lnet/minecraft/client/gui/components/Button;)V method_57677 a method_57677 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen fdx net/minecraft/class_4388 + f Lnet/minecraft/resources/ResourceLocation; CLOSED_SPRITE B field_45241 + f Lorg/slf4j/Logger; LOGGER C field_19790 + f Lnet/minecraft/network/chat/Component; WORLD_LIST_TITLE D field_26479 + f Lnet/minecraft/network/chat/Component; TITLE E field_26480 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRED_TOOLTIP F field_26482 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRING_SOON_TOOLTIP G field_26483 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRING_IN_DAY_TOOLTIP H field_26484 + f Lnet/minecraft/network/chat/Component; SERVER_OPEN_TOOLTIP I field_26485 + f Lnet/minecraft/network/chat/Component; SERVER_CLOSED_TOOLTIP J field_26486 + f I DEFAULT_BUTTON_WIDTH K field_32121 + f I DEFAULT_BUTTON_OFFSET L field_32122 + f Lnet/minecraft/network/chat/Component; toolTip M field_19791 + f Lcom/mojang/realmsclient/RealmsMainScreen; lastScreen N field_19792 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData O field_20493 + f J serverId P field_19794 + f I leftX Q field_19795 + f I rightX R field_19796 + f Lnet/minecraft/client/gui/components/Button; playersButton S field_19799 + f Lnet/minecraft/client/gui/components/Button; settingsButton T field_19800 + f Lnet/minecraft/client/gui/components/Button; subscriptionButton U field_19801 + f Lnet/minecraft/client/gui/components/Button; optionsButton V field_19802 + f Lnet/minecraft/client/gui/components/Button; backupButton W field_19803 + f Lnet/minecraft/client/gui/components/Button; resetWorldButton X field_19804 + f Lnet/minecraft/client/gui/components/Button; switchMinigameButton Y field_19805 + f Z stateChanged Z field_19806 + f Lnet/minecraft/resources/ResourceLocation; EXPIRED_SPRITE a field_22690 + f Ljava/util/List; slotButtonList aa field_33777 + f Lnet/minecraft/resources/ResourceLocation; EXPIRES_SOON_SPRITE b field_22691 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SPRITE c field_45240 + m ()V disableButtons C method_21234 + m ()V switchToMinigame D method_21236 + m ()Z isMinigame E method_21238 + m ()V hideRegularButtons F method_21240 + m ()V hideMinigameButtons G method_21242 + m ()Lnet/minecraft/network/chat/Component; method_53456 J method_53456 + m ()Lnet/minecraft/network/chat/Component; method_53457 K method_53457 + m ()Lnet/minecraft/network/chat/Component; method_53458 L method_53458 + m ()Lnet/minecraft/network/chat/Component; method_53459 M method_53459 + m ()V method_25149 N method_25149 + m ()V method_25150 O method_25150 + m ()V method_37406 P method_37406 + m ()V method_25151 Q method_25151 + m ()V method_25133 R method_25133 + m ()V method_25134 S method_25134 + m (I)Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton; addSlotButton a method_21199 + p 1 index + m (II)I centerButton a method_21200 + p 1 row + p 2 column + m (ILcom/mojang/realmsclient/dto/RealmsServer;)V switchToFullSlot a method_21203 + p 1 slot + p 2 server + m (ILcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_25136 a method_25136 + m (ILnet/minecraft/client/gui/components/Button;)V method_25135 a method_25135 + m (J)V fetchServerData a method_21204 + p 1 serverId + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V joinRealm a method_21206 + p 1 server + m (Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/client/gui/components/PopupScreen;)V method_25139 a method_25139 + m (Lcom/mojang/realmsclient/dto/RealmsWorldOptions;)V saveSlotSettings a method_21208 + p 1 worldOptions + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V templateSelectionCallback a method_32484 + p 1 worldTemplate + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V method_25137 a method_25137 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIILnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V drawRealmStatus a method_53460 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 sprite + p 7 tooltipSupplier + m (Lnet/minecraft/client/gui/components/Button;)V hide a method_25138 + p 1 button + m (Ljava/lang/String;Ljava/lang/String;)V saveSettings a method_21215 + p 1 key + p 2 value + m ()V closeTheWorld b method_21217 + m (I)I leftButton b method_21220 + p 1 index + m (ILcom/mojang/realmsclient/dto/RealmsServer;)V switchToEmptySlot b method_21222 + p 1 slot + p 2 server + m (J)V method_22103 b method_22103 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_37407 b method_37407 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawServerStatus b method_21201 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/components/Button;)V show b method_21226 + p 1 button + m (Z)V openTheWorld b method_21218 + p 1 join + m (Lnet/minecraft/client/gui/components/Button;)V method_25140 c method_25140 + m (Lnet/minecraft/client/gui/components/Button;)V method_25141 d method_25141 + m (Lnet/minecraft/client/gui/components/Button;)V method_25142 e method_25142 + m ()V stateChanged f method_21198 + m (Lnet/minecraft/client/gui/components/Button;)V method_25144 f method_25144 + m ()Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; getNewScreen g method_21219 + m (Lnet/minecraft/client/gui/components/Button;)V method_25145 g method_25145 + m (I)I frame h method_21228 + p 1 index + m (Lnet/minecraft/client/gui/components/Button;)V method_25146 h method_25146 + m (Lnet/minecraft/client/gui/components/Button;)V method_25147 i method_25147 + m (Lnet/minecraft/client/gui/components/Button;)V method_25148 j method_25148 + m (Lcom/mojang/realmsclient/RealmsMainScreen;J)V + p 1 lastScreen + p 2 serverId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen$1 fdx$1 net/minecraft/class_4388$1 + f [I $SwitchMap$com$mojang$realmsclient$gui$RealmsWorldSlotButton$Action a field_19812 + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfirmScreen fdy net/minecraft/class_4389 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback a field_22692 + f Lnet/minecraft/network/chat/Component; title1 b field_19821 + f Lnet/minecraft/network/chat/Component; title2 c field_19825 + m (Lnet/minecraft/client/gui/components/Button;)V method_25152 a method_25152 + m (Lnet/minecraft/client/gui/components/Button;)V method_25153 b method_25153 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title1 + p 3 title2 +c com/mojang/realmsclient/gui/screens/RealmsCreateRealmScreen fdz net/minecraft/class_4390 + f I BUTTON_SPACING B field_45243 + f I CONTENT_WIDTH C field_45244 + f Lcom/mojang/realmsclient/RealmsMainScreen; lastScreen D field_19830 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout E field_45242 + f Lnet/minecraft/client/gui/components/EditBox; nameBox F field_19831 + f Lnet/minecraft/client/gui/components/EditBox; descriptionBox G field_19832 + f Ljava/lang/Runnable; createWorldRunnable H field_46705 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_TEXT a field_46706 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26487 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_LABEL c field_26488 + m ()V method_25156 C method_25156 + m ()V method_25157 D method_25157 + m (J)V createSnapshotWorld a method_54370 + p 1 parentId + m (JLcom/mojang/realmsclient/util/WorldGenerationInfo;)V method_54371 a method_54371 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V createWorld a method_21245 + p 1 realmsServer + m (Lcom/mojang/realmsclient/gui/screens/RealmsCreateRealmScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52665 a method_52665 + m (Lnet/minecraft/client/gui/components/Button;)V method_52666 a method_52666 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_52667 a method_52667 + m (J)V method_54372 b method_54372 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54373 b method_54373 + m (Lnet/minecraft/client/gui/components/Button;)V method_54374 b method_54374 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 realmsServer + m (Lcom/mojang/realmsclient/RealmsMainScreen;J)V + p 1 lastScreen + p 2 parentId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen fea net/minecraft/class_4392 + f I BAR_TOP B field_41769 + f I BAR_BOTTOM C field_41770 + f I BAR_BORDER D field_41771 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen E field_19845 + f Lcom/mojang/realmsclient/dto/WorldDownload; worldDownload F field_19846 + f Lnet/minecraft/network/chat/Component; downloadTitle G field_19847 + f Lcom/google/common/util/concurrent/RateLimiter; narrationRateLimiter H field_19848 + f Lnet/minecraft/client/gui/components/Button; cancelButton I field_22694 + f Ljava/lang/String; worldName J field_19850 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus K field_19851 + f Lnet/minecraft/network/chat/Component; errorMessage L field_20494 + f Lnet/minecraft/network/chat/Component; status M field_19853 + f Ljava/lang/String; progress N field_19854 + f Z cancelled O field_19855 + f Z showDots P field_19856 + f Z finished Q field_19857 + f Z extracting R field_19858 + f Ljava/lang/Long; previousWrittenBytes S field_19859 + f Ljava/lang/Long; previousTimeSnapshot T field_19860 + f J bytesPersSecond U field_19861 + f I animTick V field_19862 + f [Ljava/lang/String; DOTS W field_19863 + f I dotIndex X field_19864 + f Z checked Y field_19867 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback Z field_22693 + f Lorg/slf4j/Logger; LOGGER a field_19844 + f Ljava/util/concurrent/locks/ReentrantLock; DOWNLOAD_LOCK b field_19868 + f I BAR_WIDTH c field_41772 + m ()V checkDownloadSize C method_21265 + m ()Lnet/minecraft/network/chat/Component; createProgressNarrationMessage D method_37012 + m ()V downloadSave E method_21278 + m ()V downloadCancelled F method_21279 + m ()V method_22104 G method_22104 + m (Lnet/minecraft/client/gui/GuiGraphics;J)V drawDownloadSpeed0 a method_21266 + p 1 guiGraphics + p 2 bytesPerSecond + m (Lnet/minecraft/client/gui/components/Button;)V method_25158 a method_25158 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25159 a method_25159 + m (Ljava/lang/String;)J getContentLength a method_21259 + p 1 uri + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawDots c method_21272 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawProgressBar d method_21274 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawDownloadSpeed e method_21276 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/WorldDownload;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 lastScreen + p 2 worldDownload + p 3 worldName + p 4 callback + m ()V +c com/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus fea$a net/minecraft/class_4392$class_4393 + f J bytesWritten a field_19871 + f J totalBytes b field_19872 + m ()V +c com/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen feb net/minecraft/class_4394 + f Lnet/minecraft/client/gui/screens/Screen; nextScreen a field_22695 + f Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; lines b field_36321 + f Lnet/minecraft/client/gui/components/MultiLineLabel; line2Split c field_36322 + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_39981 + p 0 exception + m (Lnet/minecraft/client/gui/components/Button;)V method_25160 a method_25160 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_21282 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_21283 + p 0 title + p 1 message + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 serviceException + p 2 nextScreen + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 message + p 2 nextScreen + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 title + p 2 line2 + p 3 message +c com/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage feb$a net/minecraft/class_4394$class_8570 + f Lnet/minecraft/network/chat/Component; title a comp_1533 + f Lnet/minecraft/network/chat/Component; detail b comp_1534 + m ()Lnet/minecraft/network/chat/Component; title a comp_1533 + m ()Lnet/minecraft/network/chat/Component; detail b comp_1534 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V +c com/mojang/realmsclient/gui/screens/RealmsInviteScreen fec net/minecraft/class_4395 + f Lnet/minecraft/network/chat/Component; INVITING_PLAYER_TEXT B field_44943 + f Lnet/minecraft/network/chat/Component; NO_SUCH_PLAYER_ERROR_TEXT C field_26490 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49457 + f Lnet/minecraft/client/gui/components/EditBox; profileName E field_22696 + f Lnet/minecraft/client/gui/components/Button; inviteButton F field_49458 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData G field_19880 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureScreen H field_19881 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen I field_19882 + f Lnet/minecraft/network/chat/Component; message J field_19887 + f Lorg/slf4j/Logger; LOGGER a field_19878 + f Lnet/minecraft/network/chat/Component; TITLE b field_49459 + f Lnet/minecraft/network/chat/Component; NAME_LABEL c field_26489 + m ()V onInvite C method_21284 + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; method_52216 a method_52216 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_52217 a method_52217 + m (Lcom/mojang/realmsclient/gui/screens/RealmsInviteScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57678 a method_57678 + m (Lnet/minecraft/client/gui/components/Button;)V method_57679 a method_57679 + m (Lnet/minecraft/network/chat/Component;)V showMessage a method_21286 + p 1 message + m (Lnet/minecraft/client/gui/components/Button;)V method_25162 b method_25162 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 configureScreen + p 2 lastScreen + p 3 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen fed net/minecraft/class_4398 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_19912 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46111 + f Lnet/minecraft/network/chat/Component; title D field_19914 + f Lnet/minecraft/client/gui/components/LoadingDotsWidget; loadingDotsWidget E field_46112 + f Lorg/slf4j/Logger; LOGGER a field_19909 + f Lnet/minecraft/realms/RepeatedNarrator; REPEATED_NARRATOR b field_33779 + f Ljava/util/List; queuedTasks c field_46707 + m (Lcom/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53795 a method_53795 + m (Lnet/minecraft/client/gui/components/Button;)V method_25168 a method_25168 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_53796 a method_53796 + m (Lnet/minecraft/network/chat/Component;)V setTitle a method_53797 + p 1 title + m ([Lcom/mojang/realmsclient/util/task/LongRunningTask;)V method_54375 a method_54375 + m ()V cancel f method_53798 + m (Lnet/minecraft/client/gui/screens/Screen;[Lcom/mojang/realmsclient/util/task/LongRunningTask;)V + p 1 lastScreen + p 2 queuedTasks + m ()V +c com/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTickTaskScreen fee net/minecraft/class_8789 + f Lcom/mojang/realmsclient/util/task/LongRunningTask; task a field_46113 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/util/task/LongRunningTask;)V + p 1 lastScreen + p 2 task +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen fef net/minecraft/class_4399 + f Lnet/minecraft/resources/ResourceLocation; TRIAL_AVAILABLE_SPRITE B field_45248 + f Ljava/util/concurrent/CompletableFuture; validClient C field_19927 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; realmsDataSubscription D field_39695 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; currentConfiguration E field_43037 + f I numberOfPendingInvites F field_19924 + f Z trialAvailable G field_19926 + f Z hasUnreadNews H field_19928 + f Z hasUnseenNotifications I field_43038 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; showAll J field_43039 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; onlyNotifications K field_43040 + f Lnet/minecraft/resources/ResourceLocation; UNSEEN_NOTIFICATION_SPRITE a field_45245 + f Lnet/minecraft/resources/ResourceLocation; NEWS_SPRITE b field_45246 + f Lnet/minecraft/resources/ResourceLocation; INVITE_SPRITE c field_45247 + m ()Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; getConfiguration C method_49584 + m ()Z getRealmsNotificationsEnabled D method_25169 + m ()Z inTitleScreen E method_25170 + m (Lcom/mojang/realmsclient/RealmsAvailability$Result;)Ljava/lang/Boolean; method_52670 a method_52670 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/dto/RealmsNews;)V method_49585 a method_49585 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription;)V addNewsAndInvitesSubscriptions a method_49586 + p 1 dataFetcher + p 2 subscription + m (Ljava/lang/Boolean;)V method_49587 a method_49587 + m (Ljava/lang/Integer;)V method_49588 a method_49588 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription;)V addNotificationsSubscriptions b method_49590 + p 1 dataFetcher + p 2 subscription + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawIcons c method_21295 + p 1 guiGraphics + m (Ljava/util/List;)V method_49591 c method_49591 + m ()V + m ()V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$1 fef$1 net/minecraft/class_4399$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; field_43042 a field_43042 + m (Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$2 fef$2 net/minecraft/class_4399$2 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; field_43041 a field_43041 + m (Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration fef$a net/minecraft/class_4399$class_8207 + m ()Z showOldNotifications a method_49592 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; initDataFetcher a method_49593 + p 1 dataFetcher +c com/mojang/realmsclient/gui/screens/RealmsParentalConsentScreen feg net/minecraft/class_4400 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_46852 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget C field_46853 + f Lnet/minecraft/network/chat/Component; MESSAGE a field_26491 + f I SPACING b field_46850 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout c field_46851 + m (Lcom/mojang/realmsclient/gui/screens/RealmsParentalConsentScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54573 a method_54573 + m (Lnet/minecraft/client/gui/components/Button;)V method_54574 a method_54574 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 nextScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen feh net/minecraft/class_4401 + f Lnet/minecraft/resources/ResourceLocation; REJECT_SPRITE B field_22703 + f Lorg/slf4j/Logger; LOGGER C field_19935 + f Lnet/minecraft/network/chat/Component; NO_PENDING_INVITES_TEXT D field_26493 + f Lnet/minecraft/network/chat/Component; ACCEPT_INVITE E field_26494 + f Lnet/minecraft/network/chat/Component; REJECT_INVITE F field_26495 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen G field_19936 + f Ljava/util/concurrent/CompletableFuture; pendingInvites H field_45249 + f Lnet/minecraft/network/chat/Component; toolTip I field_19937 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$PendingInvitationSelectionList; pendingInvitationSelectionList J field_19939 + f I selectedInvite K field_19941 + f Lnet/minecraft/client/gui/components/Button; acceptButton L field_19942 + f Lnet/minecraft/client/gui/components/Button; rejectButton M field_19943 + f Lnet/minecraft/resources/ResourceLocation; ACCEPT_HIGHLIGHTED_SPRITE a field_45250 + f Lnet/minecraft/resources/ResourceLocation; ACCEPT_SPRITE b field_22702 + f Lnet/minecraft/resources/ResourceLocation; REJECT_HIGHLIGHTED_SPRITE c field_45251 + m ()V updateButtonStates C method_21307 + m ()Ljava/util/List; method_52671 D method_52671 + m (I)Z shouldAcceptAndRejectButtonBeVisible a method_21314 + p 1 selectedInvite + m (IZ)V handleInvitation a method_52672 + p 1 index + p 2 shouldAccept + m (IZLjava/lang/Boolean;)V method_52673 a method_52673 + m (Lcom/mojang/realmsclient/dto/PendingInvite;)Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; method_52674 a method_52674 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52675 a method_52675 + m (Lnet/minecraft/client/gui/components/Button;)V method_25175 a method_25175 + m (ZLjava/lang/String;)Ljava/lang/Boolean; method_52676 a method_52676 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52677 b method_52677 + m (Lnet/minecraft/client/gui/components/Button;)V method_25177 b method_25177 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52678 c method_52678 + m (Lnet/minecraft/client/gui/components/Button;)V method_25179 c method_25179 + m (Ljava/util/List;)V method_52679 c method_52679 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 lastScreen + p 2 title + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry feh$a net/minecraft/class_4401$class_4403 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen; field_19954 a field_19954 + f I TEXT_LEFT b field_32123 + f Lcom/mojang/realmsclient/dto/PendingInvite; pendingInvite c field_19953 + f Ljava/util/List; rowButtons d field_19955 + m (Lnet/minecraft/client/gui/GuiGraphics;Lcom/mojang/realmsclient/dto/PendingInvite;IIII)V renderPendingInvitationItem a method_21324 + p 1 guiGraphics + p 2 pendingInvite + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;Lcom/mojang/realmsclient/dto/PendingInvite;)V + p 2 pendingInvite +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry$AcceptRowButton feh$a$a net/minecraft/class_4401$class_4403$class_4404 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; field_19956 e field_19956 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry$RejectRowButton feh$a$b net/minecraft/class_4401$class_4403$class_4405 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; field_19957 e field_19957 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$PendingInvitationSelectionList feh$b net/minecraft/class_4401$class_4402 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen; field_19952 a field_19952 + m (I)V removeAtIndex a method_21321 + p 1 index + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V setSelected a method_25188 + p 1 selected + m (I)V selectInviteListItem c method_21322 + p 1 index + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen fei net/minecraft/class_4406 + f I PADDING B field_49462 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_49463 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen D field_19960 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData E field_19961 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen$InvitedObjectSelectionList; invitedList F field_49460 + f Z stateChanged G field_19971 + f Lorg/slf4j/Logger; LOGGER a field_19958 + f Lnet/minecraft/network/chat/Component; TITLE b field_49461 + f Lnet/minecraft/network/chat/Component; QUESTION_TITLE c field_44908 + m ()V repopulateInvitedList C method_58475 + m ()V backButtonClicked D method_21333 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57680 a method_57680 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57681 a method_57681 + m (Lnet/minecraft/client/gui/components/Button;)V method_57682 a method_57682 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57683 b method_57683 + m (Lnet/minecraft/client/gui/components/Button;)V method_25197 b method_25197 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_31124 c method_31124 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57684 d method_57684 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57685 e method_57685 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57686 f method_57686 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/Minecraft; method_57687 g method_57687 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57688 h method_57688 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57689 i method_57689 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/Minecraft; method_57690 j method_57690 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen$Entry fei$a net/minecraft/class_4406$class_4408 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen; field_19980 a field_19980 + f Lnet/minecraft/network/chat/Component; NORMAL_USER_TEXT b field_49464 + f Lnet/minecraft/network/chat/Component; OP_TEXT c field_49465 + f Lnet/minecraft/network/chat/Component; REMOVE_TEXT d field_49466 + f Lnet/minecraft/resources/ResourceLocation; MAKE_OP_SPRITE e field_49467 + f Lnet/minecraft/resources/ResourceLocation; REMOVE_OP_SPRITE f field_49468 + f Lnet/minecraft/resources/ResourceLocation; REMOVE_PLAYER_SPRITE g field_49469 + f I ICON_WIDTH h field_49470 + f I ICON_HEIGHT i field_49471 + f Lcom/mojang/realmsclient/dto/PlayerInfo; playerInfo j field_19979 + f Lnet/minecraft/client/gui/components/Button; removeButton k field_44536 + f Lnet/minecraft/client/gui/components/Button; makeOpButton l field_44537 + f Lnet/minecraft/client/gui/components/Button; removeOpButton m field_44538 + m (I)V op a method_57691 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51246 a method_51246 + m (Lcom/mojang/realmsclient/dto/Ops;)V updateOps a method_57692 + p 1 ops + m (Lcom/mojang/realmsclient/dto/PlayerInfo;IZ)V method_57693 a method_57693 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57694 a method_57694 + m (I)V deop b method_57695 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51248 b method_51248 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57696 b method_57696 + m ()V updateOpButtons c method_57697 + m (I)V uninvite c method_57698 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51249 c method_51249 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57699 c method_57699 + m ()Lnet/minecraft/client/gui/components/Button; activeOpButton d method_57700 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;Lcom/mojang/realmsclient/dto/PlayerInfo;)V + p 2 playerInfo + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen$InvitedObjectSelectionList fei$b net/minecraft/class_4406$class_4407 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen; field_19978 a field_19978 + f I ITEM_HEIGHT m field_49472 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsPopups fej net/minecraft/class_9754 + f I COLOR_INFO a field_51819 + f Lnet/minecraft/network/chat/Component; INFO b field_51820 + f Lnet/minecraft/network/chat/Component; WARNING c field_51821 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; infoPopupScreen a method_60316 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; warningPopupScreen b method_60317 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; warningAcknowledgePopupScreen c method_60318 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m ()V + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetNormalWorldScreen fek net/minecraft/class_4409 + f I CONTENT_WIDTH B field_45279 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_45280 + f Ljava/util/function/Consumer; callback D field_27938 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit E field_19984 + f Lcom/mojang/realmsclient/util/LevelType; levelType F field_27939 + f Z generateStructures G field_27940 + f Ljava/util/Set; experiments H field_46708 + f Lnet/minecraft/network/chat/Component; buttonTitle I field_24206 + f Lnet/minecraft/network/chat/Component; TITLE a field_46114 + f Lnet/minecraft/network/chat/Component; SEED_LABEL b field_26506 + f I BUTTON_SPACING c field_45278 + m ()Lcom/mojang/realmsclient/util/WorldGenerationInfo; createWorldGenerationInfo C method_52693 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_54376 a method_54376 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/client/gui/components/Button;)V method_54377 a method_54377 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetNormalWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52694 a method_52694 + m (Lnet/minecraft/client/gui/components/Button;)V method_32485 a method_32485 + m (Lnet/minecraft/client/gui/components/CycleButton;Lcom/mojang/realmsclient/util/LevelType;)V method_32486 a method_32486 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32487 a method_32487 + m (Lnet/minecraft/client/gui/layouts/LinearLayout;)V createExperimentsButton a method_54378 + p 1 layout + m (Lnet/minecraft/client/gui/components/Button;)V method_25202 b method_25202 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 buttonTitle + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen fel net/minecraft/class_4410 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_TITLE B field_46127 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_SUBTITLE C field_46115 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_TITLE D field_46116 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_SUBTITLE E field_46117 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_TITLE F field_46118 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_SUBTITLE G field_46119 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_RESET_TASK_TITLE H field_46120 + f Lnet/minecraft/network/chat/Component; WORLD_TEMPLATES_TITLE I field_46121 + f Lnet/minecraft/network/chat/Component; ADVENTURES_TITLE J field_46122 + f Lnet/minecraft/network/chat/Component; EXPERIENCES_TITLE K field_46123 + f Lnet/minecraft/network/chat/Component; INSPIRATION_TITLE L field_46124 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen M field_20000 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData N field_20001 + f Lnet/minecraft/network/chat/Component; subtitle O field_20006 + f I subtitleColor P field_20008 + f Lnet/minecraft/network/chat/Component; resetTaskTitle Q field_20501 + f Lnet/minecraft/resources/ResourceLocation; UPLOAD_LOCATION R field_22714 + f Lnet/minecraft/resources/ResourceLocation; ADVENTURE_MAP_LOCATION S field_22715 + f Lnet/minecraft/resources/ResourceLocation; SURVIVAL_SPAWN_LOCATION T field_22716 + f Lnet/minecraft/resources/ResourceLocation; NEW_WORLD_LOCATION U field_22708 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_LOCATION V field_22709 + f Lnet/minecraft/resources/ResourceLocation; INSPIRATION_LOCATION W field_22710 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; templates X field_20495 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; adventuremaps Y field_20496 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; experiences Z field_20497 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_RESET_TASK_TITLE a field_46125 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; inspirations aa field_20498 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask ab field_46709 + f Ljava/lang/Runnable; resetWorldRunnable ac field_22711 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout ad field_46126 + f I slot b field_19998 + f Lorg/slf4j/Logger; LOGGER c field_19999 + m ()V method_54379 C method_54379 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V templateSelectionCallback a method_32488 + p 1 template + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)Lnet/minecraft/client/Minecraft; method_25205 a method_25205 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53799 a method_53799 + m (Lcom/mojang/realmsclient/util/WorldGenerationInfo;)V generationSelectionCallback a method_32489 + p 1 generationInfo + m (Lcom/mojang/realmsclient/util/task/LongRunningTask;)V runResetTasks a method_54380 + p 1 task + m (Lnet/minecraft/client/gui/components/Button;)V method_53800 a method_53800 + m (Lnet/minecraft/client/gui/screens/Screen;ILcom/mojang/realmsclient/dto/RealmsServer;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forEmptySlot a method_53801 + p 0 lastScreen + p 1 slot + p 2 serverData + p 3 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/util/task/RealmCreationTask;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forNewRealm a method_53802 + p 0 lastScreen + p 1 serverData + p 2 realmCreationTask + p 3 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forResetSlot a method_53805 + p 0 lastScreen + p 1 serverData + p 2 resetWorldRunnable + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)Lnet/minecraft/client/gui/Font; method_53803 b method_53803 + m (Lnet/minecraft/client/gui/components/Button;)V method_53804 b method_53804 + m (Lnet/minecraft/client/gui/components/Button;)V method_53806 c method_53806 + m (Lnet/minecraft/client/gui/components/Button;)V method_53807 d method_53807 + m (Lnet/minecraft/client/gui/components/Button;)V method_25211 e method_25211 + m (Lnet/minecraft/client/gui/components/Button;)V method_25212 f method_25212 + m (Lnet/minecraft/client/gui/components/Button;)V method_25213 g method_25213 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 lastScreen + p 2 serverData + p 3 slot + p 4 title + p 5 subtitle + p 6 subtitleColor + p 7 resetTaskTitle + p 8 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;Lcom/mojang/realmsclient/util/task/RealmCreationTask;Ljava/lang/Runnable;)V + p 1 lastScreen + p 2 serverData + p 3 slot + p 4 title + p 5 subtitle + p 6 subtitleColor + p 7 resetTaskTitle + p 8 realmCreationTask + p 9 resetWorldRunnable + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen$1 fel$1 net/minecraft/class_4410$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; field_20021 a field_20021 + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V method_21392 a method_21392 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen$FrameButton fel$a net/minecraft/class_4410$class_4411 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; field_20031 a field_20031 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE b field_48384 + f I FRAME_SIZE c field_48385 + f I FRAME_WIDTH d field_48386 + f I IMAGE_SIZE u field_46130 + f Lnet/minecraft/resources/ResourceLocation; image v field_20032 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 2 font + p 3 message + p 4 image + p 5 onPress + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen fem net/minecraft/class_4416 + f Lnet/minecraft/network/chat/Component; WORLD_TEXT B field_20058 + f Lnet/minecraft/network/chat/Component; HARDCORE_TEXT C field_26507 + f Lnet/minecraft/network/chat/Component; COMMANDS_TEXT D field_26508 + f Ljava/text/DateFormat; DATE_FORMAT E field_20054 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask F field_48387 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; lastScreen G field_20050 + f J realmId H field_20051 + f I slotId I field_20052 + f Lnet/minecraft/client/gui/components/Button; uploadButton J field_20053 + f Ljava/util/List; levelList K field_20055 + f I selectedWorld L field_20056 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$WorldSelectionList; worldSelectionList M field_20057 + f Lnet/minecraft/network/chat/Component; TITLE a field_46131 + f Lorg/slf4j/Logger; LOGGER b field_20049 + f Lnet/minecraft/network/chat/Component; UNABLE_TO_LOAD_WORLD c field_44909 + m ()V loadLevelList C method_21396 + m ()V upload D method_21401 + m (I)I method_25218 a method_25218 + m (Lnet/minecraft/world/level/storage/LevelSummary;)Lnet/minecraft/network/chat/Component; gameModeName a method_21400 + p 0 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_30871 a method_30871 + m (Lnet/minecraft/client/gui/components/Button;)V method_38508 a method_38508 + m (I)I method_55436 b method_55436 + m (Lnet/minecraft/world/level/storage/LevelSummary;)Ljava/lang/String; formatLastPlayed b method_21404 + p 0 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_30872 b method_30872 + m (Lnet/minecraft/client/gui/components/Button;)V method_25221 b method_25221 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_25226 c method_25226 + m (Lcom/mojang/realmsclient/util/task/RealmCreationTask;JILcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)V + p 1 realmCreationTask + p 2 realmId + p 4 slotId + p 5 lastScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$Entry fem$a net/minecraft/class_4416$class_4417 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen; field_20067 a field_20067 + f Lnet/minecraft/world/level/storage/LevelSummary; levelSummary b field_22718 + f Ljava/lang/String; name c field_26509 + f Lnet/minecraft/network/chat/Component; id d field_26510 + f Lnet/minecraft/network/chat/Component; info e field_26511 + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderItem a method_21411 + p 1 guiGraphics + p 2 index + p 3 x + p 4 y + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 2 levelSummary +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$WorldSelectionList fem$b net/minecraft/class_4416$class_4418 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen; field_20068 a field_20068 + m (Lnet/minecraft/world/level/storage/LevelSummary;)V addEntry a method_21412 + p 1 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$Entry;)V setSelected a method_25227 + p 1 selected + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen fen net/minecraft/class_4419 + f Lnet/minecraft/network/chat/Component; TRAILER_BUTTON_NAME B field_45978 + f Lnet/minecraft/network/chat/Component; PUBLISHER_BUTTON_NAME C field_45979 + f I BUTTON_WIDTH D field_45974 + f I BUTTON_SPACING E field_45975 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout F field_45976 + f Ljava/util/function/Consumer; callback G field_27941 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$WorldTemplateList; worldTemplateList H field_20071 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType I field_20079 + f Lnet/minecraft/client/gui/components/Button; selectButton J field_20074 + f Lnet/minecraft/client/gui/components/Button; trailerButton K field_20075 + f Lnet/minecraft/client/gui/components/Button; publisherButton L field_20076 + f Lcom/mojang/realmsclient/dto/WorldTemplate; selectedTemplate M field_20072 + f Ljava/lang/String; currentLink N field_20078 + f [Lnet/minecraft/network/chat/Component; warning O field_20081 + f Ljava/util/List; noTemplatesMessage P field_20085 + f Lorg/slf4j/Logger; LOGGER a field_20069 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE b field_22721 + f Lnet/minecraft/network/chat/Component; SELECT_BUTTON_NAME c field_45977 + m ()V updateButtonStates C method_21425 + m ()V selectTemplate D method_21440 + m ()V onTrailer E method_21442 + m ()V onPublish F method_21444 + m ()I getHeaderHeight G method_53514 + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V fetchTemplatesAsync a method_21415 + p 1 output + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/client/RealmsClient;)Lcom/mojang/datafixers/util/Either; fetchTemplates a method_21416 + p 1 templates + p 2 realmsClient + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/Minecraft; method_25229 a method_25229 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53515 a method_53515 + m (Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)I method_25230 a method_25230 + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/util/List;)V renderMultilineMessage a method_21414 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lines + m (Lnet/minecraft/client/gui/components/Button;)V method_25231 a method_25231 + m ([Lnet/minecraft/network/chat/Component;)V setWarning a method_21429 + p 1 warning + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_53516 b method_53516 + m (Lnet/minecraft/client/gui/components/Button;)V method_25233 b method_25233 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25238 c method_25238 + m (Lnet/minecraft/client/gui/components/Button;)V method_25234 c method_25234 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25239 d method_25239 + m (Lnet/minecraft/client/gui/components/Button;)V method_25236 d method_25236 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25240 e method_25240 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25241 f method_25241 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25242 g method_25242 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25243 h method_25243 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;)V + p 1 title + p 2 callback + p 3 worldType + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V + p 1 title + p 2 callback + p 3 worldType + p 4 worldTemplatePaginatedList + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$1 fen$1 net/minecraft/class_4419$1 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; val$startPage a field_20091 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20092 b field_20092 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; method_21445 a method_21445 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Ljava/lang/String;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry fen$a net/minecraft/class_4419$class_4421 + f Lcom/mojang/realmsclient/dto/WorldTemplate; template a field_20094 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20095 b field_20095 + f Lnet/minecraft/client/gui/components/WidgetSprites; WEBSITE_LINK_SPRITES c field_45980 + f Lnet/minecraft/client/gui/components/WidgetSprites; TRAILER_LINK_SPRITES d field_45981 + f Lnet/minecraft/network/chat/Component; PUBLISHER_LINK_TOOLTIP e field_45982 + f Lnet/minecraft/network/chat/Component; TRAILER_LINK_TOOLTIP f field_45983 + f J lastClickTime g field_45984 + f Lnet/minecraft/client/gui/components/ImageButton; websiteButton h field_45985 + f Lnet/minecraft/client/gui/components/ImageButton; trailerButton i field_45986 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Lcom/mojang/realmsclient/dto/WorldTemplate;)V + p 2 template + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$WorldTemplateList fen$b net/minecraft/class_4419$class_4420 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20093 a field_20093 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V addEntry a method_21448 + p 1 template + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry;)V setSelected a method_25249 + p 1 selected + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry;)Lcom/mojang/realmsclient/dto/WorldTemplate; method_25250 b method_25250 + m ()Z isEmpty c method_21446 + m ()Ljava/util/List; getTemplates d method_21450 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)V + p 1 parent + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Ljava/lang/Iterable;)V + p 1 parent + p 2 templates +c com/mojang/realmsclient/gui/screens/RealmsSettingsScreen feo net/minecraft/class_4422 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureWorldScreen B field_20096 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData C field_20097 + f Lnet/minecraft/client/gui/components/EditBox; descEdit D field_20100 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit E field_20101 + f I COMPONENT_WIDTH a field_32124 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26514 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_LABEL c field_26515 + m (Lnet/minecraft/client/gui/components/Button;)V method_54575 a method_54575 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_54576 a method_54576 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25254 a method_25254 + m (Lnet/minecraft/client/gui/components/Button;)V method_25253 b method_25253 + m (Lnet/minecraft/client/gui/components/Button;)V method_25251 c method_25251 + m ()V save g method_21454 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 configureWorldScreen + p 2 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen fep net/minecraft/class_4423 + f I DEFAULT_DIFFICULTY B field_32125 + f I DEFAULT_GAME_MODE C field_32126 + f Lnet/minecraft/network/chat/Component; NAME_LABEL D field_26516 + f Lnet/minecraft/network/chat/Component; SPAWN_PROTECTION_TEXT E field_27942 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit F field_20113 + f I column1X G field_20114 + f I columnWidth H field_20116 + f Lcom/mojang/realmsclient/dto/RealmsWorldOptions; options I field_20117 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType J field_20118 + f Lnet/minecraft/world/Difficulty; difficulty K field_27943 + f Lnet/minecraft/world/level/GameType; gameMode L field_20121 + f Ljava/lang/String; defaultSlotName M field_39187 + f Ljava/lang/String; worldName N field_39188 + f Z pvp O field_20122 + f Z spawnNPCs P field_20123 + f Z spawnAnimals Q field_20124 + f Z spawnMonsters R field_20125 + f I spawnProtection S field_20120 + f Z commandBlocks T field_20127 + f Z forceGameMode U field_20128 + f Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen$SettingsSlider; spawnProtectionButton V field_20133 + f Ljava/util/List; DIFFICULTIES a field_22723 + f Ljava/util/List; GAME_MODES b field_22724 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; parentScreen c field_20109 + m ()V saveSettings C method_21486 + m (Lnet/minecraft/client/gui/components/Button;)V method_25255 a method_25255 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/GameType;)V method_32496 a method_32496 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_32495 a method_32495 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32497 a method_32497 + m (Ljava/lang/Boolean;)V method_32502 a method_32502 + m (Ljava/lang/String;)V setWorldName a method_43757 + p 1 name + m (Ljava/util/List;II)Ljava/lang/Object; findByIndex a method_32498 + p 0 list + p 1 index + p 2 fallback + m (Ljava/util/List;Ljava/lang/Object;I)I findIndex a method_32499 + p 0 list + p 1 object + p 2 fallback + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_43755 a method_43755 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_43754 a method_43754 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/CycleButton$OnValueChange; confirmDangerousOption a method_43756 + p 1 question + p 2 onPress + m (Lnet/minecraft/client/gui/components/Button;)V method_25256 b method_25256 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32500 b method_32500 + m (Ljava/lang/Boolean;)V method_32503 b method_32503 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32505 c method_32505 + m (Ljava/lang/Boolean;)V method_32504 c method_32504 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsWorldOptions;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;I)V + p 1 parent + p 2 options + p 3 worldType + p 4 activeSlot + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen$SettingsSlider fep$a net/minecraft/class_4423$class_4424 + f Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen; field_20145 a field_20145 + f D minValue d field_22725 + f D maxValue e field_22726 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen;IIIIFF)V + p 2 x + p 3 y + p 4 width + p 5 value + p 6 minValue + p 7 maxValue +c com/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen feq net/minecraft/class_4425 + f Lnet/minecraft/network/chat/Component; TIME_LEFT_LABEL B field_20155 + f Lnet/minecraft/network/chat/Component; DAYS_LEFT_LABEL C field_20156 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_EXPIRED_TEXT D field_26517 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_LESS_THAN_A_DAY_TEXT E field_26518 + f Lnet/minecraft/network/chat/Component; UNKNOWN F field_34033 + f Lnet/minecraft/network/chat/Component; RECURRING_INFO G field_43152 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen H field_20147 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData I field_20148 + f Lnet/minecraft/client/gui/screens/Screen; mainScreen J field_20149 + f Lnet/minecraft/network/chat/Component; daysLeft K field_20157 + f Lnet/minecraft/network/chat/Component; startDate L field_20158 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; type M field_20159 + f Lorg/slf4j/Logger; LOGGER a field_20146 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_TITLE b field_20153 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_START_LABEL c field_20154 + m ()V deleteRealm C method_25271 + m (I)Lnet/minecraft/network/chat/Component; daysLeftPresentation a method_21499 + p 1 daysLeft + m (J)V getSubscription a method_21500 + p 1 serverId + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;)Lnet/minecraft/client/Minecraft; method_25267 a method_25267 + m (Lnet/minecraft/client/gui/components/Button;)V method_25268 a method_25268 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_60319 a method_60319 + m (J)Lnet/minecraft/network/chat/Component; localPresentation b method_21502 + p 0 time + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;)Lnet/minecraft/client/Minecraft; method_25272 b method_25272 + m (Lnet/minecraft/client/gui/components/Button;)V method_25266 b method_25266 + m (Lnet/minecraft/client/gui/components/Button;)V method_25270 c method_25270 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + p 2 serverData + p 3 mainScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen$1 feq$1 net/minecraft/class_4425$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen; field_20164 a field_20164 + m ()V method_25273 a method_25273 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsTermsScreen fer net/minecraft/class_4426 + f Lnet/minecraft/network/chat/Component; TERMS_LINK_TEXT B field_26525 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen C field_22727 + f Lcom/mojang/realmsclient/dto/RealmsServer; realmsServer D field_20168 + c The screen to display when OK is clicked on the disconnect screen.\n\nSeems to be either null (integrated server) or an instance of either {@link MultiplayerScreen} (when connecting to a server) or {@link com.mojang.realmsclient.gui.screens.RealmsTermsScreen} (when connecting to MCO server) + f Z onLink E field_20170 + f Lorg/slf4j/Logger; LOGGER a field_20165 + f Lnet/minecraft/network/chat/Component; TITLE b field_26523 + f Lnet/minecraft/network/chat/Component; TERMS_STATIC_TEXT c field_26524 + m ()V agreedToTos C method_21505 + m (Lnet/minecraft/client/gui/components/Button;)V method_25274 a method_25274 + m (Lnet/minecraft/client/gui/components/Button;)V method_25275 b method_25275 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 realmsServer + m ()V +c com/mojang/realmsclient/gui/screens/RealmsUploadScreen fes net/minecraft/class_4427 + f I BAR_TOP B field_41773 + f I BAR_BOTTOM C field_41774 + f I BAR_BORDER D field_41775 + f [Ljava/lang/String; DOTS E field_20191 + f Lnet/minecraft/network/chat/Component; VERIFYING_TEXT F field_26526 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; lastScreen G field_20175 + f Lnet/minecraft/world/level/storage/LevelSummary; selectedLevel H field_20176 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask I field_48388 + f J realmId J field_20177 + f I slotId K field_20178 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus L field_20179 + f Lcom/google/common/util/concurrent/RateLimiter; narrationRateLimiter M field_20180 + f [Lnet/minecraft/network/chat/Component; errorMessage N field_20503 + f Lnet/minecraft/network/chat/Component; status O field_20182 + f Ljava/lang/String; progress P field_20183 + f Z cancelled Q field_20184 + f Z uploadFinished R field_20185 + f Z showDots S field_20186 + f Z uploadStarted T field_20187 + f Lnet/minecraft/client/gui/components/Button; backButton U field_20188 + f Lnet/minecraft/client/gui/components/Button; cancelButton V field_20189 + f I tickCount W field_20190 + f Ljava/lang/Long; previousWrittenBytes X field_20193 + f Ljava/lang/Long; previousTimeSnapshot Y field_20194 + f J bytesPersSecond Z field_20195 + f Lorg/slf4j/Logger; LOGGER a field_20174 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout aa field_48389 + f Ljava/util/concurrent/locks/ReentrantLock; UPLOAD_LOCK b field_20196 + f I BAR_WIDTH c field_41776 + m ()V onBack C method_21525 + m ()V onCancel D method_21528 + m ()Lnet/minecraft/network/chat/Component; createProgressNarrationMessage E method_37014 + m ()V upload F method_21536 + m ()V uploadCancelled G method_21538 + m ()V method_22106 J method_22106 + m ()V method_25278 K method_25278 + m ()V method_56132 L method_56132 + m (Lcom/mojang/realmsclient/gui/screens/RealmsUploadScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_56133 a method_56133 + m (Lcom/mojang/realmsclient/gui/screens/UploadResult;)V method_22105 a method_22105 + m (Lnet/minecraft/client/gui/GuiGraphics;J)V drawUploadSpeed0 a method_21526 + p 1 guiGraphics + p 2 bytesPerSecond + m (Lnet/minecraft/client/gui/components/Button;)V method_25276 a method_25276 + m (Ljava/io/File;)Z verify a method_21515 + p 1 file + m (Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;Ljava/lang/String;Ljava/lang/String;Z)V addFileToTarGz a method_21516 + p 1 tarArchiveOutputStream + p 2 pathname + p 3 name + p 4 rootDirectory + m ([Lnet/minecraft/network/chat/Component;)V setErrorMessage a method_27460 + p 1 errorMessage + m (Lnet/minecraft/client/gui/components/Button;)V method_25277 b method_25277 + m (Ljava/io/File;)Ljava/io/File; tarGzipArchive b method_21524 + p 1 file + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawProgressBar c method_21532 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawUploadSpeed d method_21534 + p 1 guiGraphics + m (Lcom/mojang/realmsclient/util/task/RealmCreationTask;JILcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 1 realmCreationTask + p 2 realmId + p 4 slotId + p 5 lastScreen + p 6 selectedLevel + m ()V +c com/mojang/realmsclient/gui/screens/UploadResult fet net/minecraft/class_4429 + f I statusCode a field_20205 + f Ljava/lang/String; errorMessage b field_20206 + m (ILjava/lang/String;)V + p 1 statusCode + p 2 errorMessage +c com/mojang/realmsclient/gui/screens/UploadResult$Builder fet$a net/minecraft/class_4429$class_4430 + f I statusCode a field_20207 + f Ljava/lang/String; errorMessage b field_20208 + m ()Lcom/mojang/realmsclient/gui/screens/UploadResult; build a method_21541 + m (I)Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder; withStatusCode a method_21542 + p 1 statusCode + m (Ljava/lang/String;)Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder; withErrorMessage a method_21543 + p 1 errorMessage + m ()V +c com/mojang/realmsclient/gui/screens/package-info feu net/minecraft/class_6197 +c com/mojang/realmsclient/gui/task/DataFetcher fev net/minecraft/class_7581 + f Lorg/slf4j/Logger; LOGGER a field_39696 + f Ljava/util/concurrent/Executor; executor b field_39697 + f Ljava/util/concurrent/TimeUnit; resolution c field_39698 + f Lnet/minecraft/util/TimeSource; timeSource d field_39699 + m ()Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; createSubscription a method_44628 + m (Ljava/lang/String;Ljava/util/concurrent/Callable;Ljava/time/Duration;Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; createTask a method_44629 + p 1 id + p 2 updater + p 3 period + p 4 repeatStrategy + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/TimeUnit;Lnet/minecraft/util/TimeSource;)V + p 1 executor + p 2 resolution + p 3 timeSource + m ()V +c com/mojang/realmsclient/gui/task/DataFetcher$ComputationResult fev$a net/minecraft/class_7581$class_7582 + f Lcom/mojang/datafixers/util/Either; value a comp_888 + f J time b comp_889 + m ()Lcom/mojang/datafixers/util/Either; value a comp_888 + m ()J time b comp_889 + m (Lcom/mojang/datafixers/util/Either;J)V +c com/mojang/realmsclient/gui/task/DataFetcher$SubscribedTask fev$b net/minecraft/class_7581$class_7583 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; task a field_39701 + f Ljava/util/function/Consumer; output b field_39702 + f J lastCheckTime c field_39703 + m ()V runCallbackIfNeeded a method_44630 + m (J)V update a method_44631 + p 1 time + m ()V runCallback b method_44632 + m ()V reset c method_44633 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Task;Ljava/util/function/Consumer;)V + p 2 task + p 3 output +c com/mojang/realmsclient/gui/task/DataFetcher$Subscription fev$c net/minecraft/class_7581$class_7584 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; field_39704 a field_39704 + f Ljava/util/List; subscriptions b field_39705 + m ()V forceUpdate a method_44634 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher$Task;Ljava/util/function/Consumer;)V subscribe a method_44635 + p 1 task + p 2 output + m ()V tick b method_44636 + m ()V reset c method_44637 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;)V +c com/mojang/realmsclient/gui/task/DataFetcher$SuccessfulComputationResult fev$d net/minecraft/class_7581$class_7585 + f Ljava/lang/Object; value a comp_890 + f J time b comp_891 + m ()Ljava/lang/Object; value a comp_890 + m ()J time b comp_891 + m (Ljava/lang/Object;J)V +c com/mojang/realmsclient/gui/task/DataFetcher$Task fev$e net/minecraft/class_7581$class_7586 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; field_39706 a field_39706 + f Ljava/lang/String; id b field_39707 + f Ljava/util/concurrent/Callable; updater c field_39708 + f J period d field_39709 + f Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; repeatStrategy e field_39710 + f Ljava/util/concurrent/CompletableFuture; pendingTask f field_39711 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$SuccessfulComputationResult; lastResult g field_39712 + f J nextUpdate h field_39713 + m ()V reset a method_44638 + m (J)V updateIfNeeded a method_44639 + p 1 time + m (JLjava/lang/Exception;)V method_44640 a method_44640 + m (JLjava/lang/Object;)V method_44641 a method_44641 + m ()Lcom/mojang/realmsclient/gui/task/DataFetcher$ComputationResult; method_44642 b method_44642 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;Ljava/lang/String;Ljava/util/concurrent/Callable;JLcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy;)V + p 2 id + p 3 updater + p 4 period + p 6 repeatStrategy +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy few net/minecraft/class_7587 + f Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; CONSTANT a field_39714 + m ()J delayCyclesAfterSuccess a method_44643 + m (I)Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; exponentialBackoff a method_44644 + p 0 maxFailureDelay + m ()J delayCyclesAfterFailure b method_44645 + m ()V +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy$1 few$1 net/minecraft/class_7587$1 + m ()V +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy$2 few$2 net/minecraft/class_7587$2 + f I val$maxBackoff b field_39715 + f Lorg/slf4j/Logger; LOGGER c field_39716 + f I failureCount d field_39717 + m (I)V + m ()V +c com/mojang/realmsclient/gui/task/package-info fex net/minecraft/class_6198 +c com/mojang/realmsclient/package-info fey net/minecraft/class_6199 +c com/mojang/realmsclient/util/JsonUtils fez net/minecraft/class_4431 + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/lang/String; getRequiredString a method_49594 + p 0 key + p 1 json + m (Ljava/lang/String;Lcom/google/gson/JsonObject;I)I getIntOr a method_21545 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;J)J getLongOr a method_21546 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getRequiredStringOr a method_54577 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/UUID;)Ljava/util/UUID; getUuidOr a method_49595 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; getRequired a method_49596 + p 0 key + p 1 json + p 2 output + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Z)Z getBooleanOr a method_21548 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/util/Date; getDateOr b method_21544 + p 0 key + p 1 json + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getStringOr b method_21547 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; getOptional b method_54115 + p 0 key + p 1 json + p 2 output + m ()V +c com/mojang/realmsclient/util/LevelType ffa net/minecraft/class_5672 + f Lcom/mojang/realmsclient/util/LevelType; DEFAULT a field_27944 + f Lcom/mojang/realmsclient/util/LevelType; FLAT b field_27945 + f Lcom/mojang/realmsclient/util/LevelType; LARGE_BIOMES c field_27946 + f Lcom/mojang/realmsclient/util/LevelType; AMPLIFIED d field_27947 + f I index e field_27948 + f Lnet/minecraft/network/chat/Component; name f field_27949 + f [Lcom/mojang/realmsclient/util/LevelType; $VALUES g field_27950 + m ()Lnet/minecraft/network/chat/Component; getName a method_32506 + m ()I getDtoIndex b method_32507 + m ()[Lcom/mojang/realmsclient/util/LevelType; $values c method_36856 + m (Ljava/lang/String;IILnet/minecraft/resources/ResourceKey;)V + p 3 index + p 4 presetKey + m ()V +c com/mojang/realmsclient/util/RealmsPersistence ffb net/minecraft/class_4432 + f Ljava/lang/String; FILE_NAME a field_32128 + f Lcom/mojang/realmsclient/dto/GuardedSerializer; GSON b field_22729 + f Lorg/slf4j/Logger; LOGGER c field_39744 + m ()Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; read a method_33423 + m (Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData;)V save a method_33424 + p 1 persistenceData + m ()Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; readFile b method_21549 + m (Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData;)V writeFile b method_21550 + p 0 persistenceData + m ()Ljava/nio/file/Path; getPathToData c method_25279 + m ()V + m ()V +c com/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData ffb$a net/minecraft/class_4432$class_4433 + f Ljava/lang/String; newsLink a field_20209 + f Z hasUnreadNews b field_20210 + m ()V +c com/mojang/realmsclient/util/RealmsTextureManager ffc net/minecraft/class_4446 + f Ljava/util/Map; TEXTURES a field_20253 + f Lorg/slf4j/Logger; LOGGER b field_20256 + f Lnet/minecraft/resources/ResourceLocation; TEMPLATE_ICON_LOCATION c field_22730 + m (Ljava/lang/String;)Lcom/mojang/blaze3d/platform/NativeImage; loadImage a method_48970 + p 0 base64Image + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; worldTemplate a method_48971 + p 0 key + p 1 image + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getTexture b method_21564 + p 0 key + p 1 image + m ()V + m ()V +c com/mojang/realmsclient/util/RealmsTextureManager$RealmsTexture ffc$a net/minecraft/class_4446$class_4447 + f Ljava/lang/String; image a comp_1254 + f Lnet/minecraft/resources/ResourceLocation; textureId b comp_1255 + m ()Ljava/lang/String; image a comp_1254 + m ()Lnet/minecraft/resources/ResourceLocation; textureId b comp_1255 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V +c com/mojang/realmsclient/util/RealmsUtil ffd net/minecraft/class_4448 + f Lnet/minecraft/network/chat/Component; RIGHT_NOW a field_44910 + f I MINUTES b field_32129 + f I HOURS c field_32130 + f I DAYS d field_32131 + m (J)Lnet/minecraft/network/chat/Component; convertToAgePresentation a method_21567 + p 0 millis + m (Lnet/minecraft/client/gui/GuiGraphics;IIILjava/util/UUID;)V renderPlayerFace a method_48972 + p 0 guiGraphics + p 1 x + p 2 y + p 3 size + p 4 playerUuid + m (Ljava/util/Date;)Lnet/minecraft/network/chat/Component; convertToAgePresentationFromInstant a method_25282 + p 0 date + m ()V + m ()V +c com/mojang/realmsclient/util/TextRenderingUtils ffe net/minecraft/class_4450 + m (Ljava/lang/String;)Ljava/util/List; lineBreak a method_21575 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; split a method_21576 + p 0 toSplit + p 1 delimiter + m (Ljava/lang/String;Ljava/util/List;)Ljava/util/List; decompose a method_21577 + p 0 text + p 1 segments + m (Ljava/lang/String;[Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)Ljava/util/List; decompose a method_21578 + p 0 text + p 1 segments + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; insertLinks a method_21579 + p 0 lines + p 1 segments + m ()V +c com/mojang/realmsclient/util/TextRenderingUtils$Line ffe$a net/minecraft/class_4450$class_4451 + f Ljava/util/List; segments a field_20266 + m ([Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)V + p 1 segments + m (Ljava/util/List;)V + p 1 segments +c com/mojang/realmsclient/util/TextRenderingUtils$LineSegment ffe$b net/minecraft/class_4450$class_4452 + f Ljava/lang/String; fullText a field_20267 + f Ljava/lang/String; linkTitle b field_20268 + f Ljava/lang/String; linkUrl c field_20269 + m ()Ljava/lang/String; renderedText a method_21580 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment; text a method_21581 + p 0 fullText + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment; link a method_21582 + p 0 linkTitle + p 1 linkUrl + m ()Z isLink b method_21583 + m ()Ljava/lang/String; getLinkUrl c method_21584 + m (Ljava/lang/String;)V + p 1 fullText + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 fullText + p 2 linkTitle + p 3 linkUrl +c com/mojang/realmsclient/util/UploadTokenCache fff net/minecraft/class_4453 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; TOKEN_CACHE a field_20270 + m (J)Ljava/lang/String; get a method_21585 + p 0 worldId + m (JLjava/lang/String;)V put a method_21586 + p 0 worldId + p 2 token + m (J)V invalidate b method_21587 + p 0 worldId + m ()V + m ()V +c com/mojang/realmsclient/util/WorldGenerationInfo ffg net/minecraft/class_4413 + f Ljava/lang/String; seed a comp_1976 + f Lcom/mojang/realmsclient/util/LevelType; levelType b comp_1977 + f Z generateStructures c comp_1978 + f Ljava/util/Set; experiments d comp_1991 + m ()Ljava/lang/String; seed a comp_1976 + m ()Lcom/mojang/realmsclient/util/LevelType; levelType b comp_1977 + m ()Z generateStructures c comp_1978 + m ()Ljava/util/Set; experiments d comp_1991 + m (Ljava/lang/String;Lcom/mojang/realmsclient/util/LevelType;ZLjava/util/Set;)V +c com/mojang/realmsclient/util/package-info ffh net/minecraft/class_6200 +c com/mojang/realmsclient/util/task/CloseServerTask ffi net/minecraft/class_4435 + f Lorg/slf4j/Logger; LOGGER b field_36354 + f Lnet/minecraft/network/chat/Component; TITLE c field_46132 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData d field_20212 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureScreen e field_20213 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 serverData + p 2 configureScreen + m ()V +c com/mojang/realmsclient/util/task/ConnectTask ffj net/minecraft/class_4438 + f Lnet/minecraft/network/chat/Component; TITLE b field_46133 + f Lnet/minecraft/realms/RealmsConnect; realmsConnect c field_20222 + f Lcom/mojang/realmsclient/dto/RealmsServer; server d field_26922 + f Lcom/mojang/realmsclient/dto/RealmsServerAddress; address e field_20223 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/dto/RealmsServerAddress;)V + p 1 onlineScreen + p 2 server + p 3 address + m ()V +c com/mojang/realmsclient/util/task/CreateSnapshotRealmTask ffk net/minecraft/class_8844 + f Lorg/slf4j/Logger; LOGGER b field_46710 + f Lnet/minecraft/network/chat/Component; TITLE c field_46711 + f J parentId d field_46712 + f Lcom/mojang/realmsclient/util/WorldGenerationInfo; generationInfo e field_46713 + f Ljava/lang/String; name f field_46714 + f Ljava/lang/String; description g field_46715 + f Lcom/mojang/realmsclient/RealmsMainScreen; realmsMainScreen h field_46716 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; creationTask i field_46717 + f Lcom/mojang/realmsclient/util/task/ResettingGeneratedWorldTask; generateWorldTask j field_46718 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54381 a method_54381 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54382 b method_54382 + m (Lcom/mojang/realmsclient/RealmsMainScreen;JLcom/mojang/realmsclient/util/WorldGenerationInfo;Ljava/lang/String;Ljava/lang/String;)V + p 1 realmsMainScreen + p 2 parentId + p 4 generationInfo + p 5 name + p 6 description + m ()V +c com/mojang/realmsclient/util/task/DownloadTask ffl net/minecraft/class_4436 + f Lorg/slf4j/Logger; LOGGER b field_36355 + f Lnet/minecraft/network/chat/Component; TITLE c field_46134 + f J realmId d field_20214 + f I slot e field_20215 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen f field_20216 + f Ljava/lang/String; downloadName g field_20217 + m (Z)V method_25283 a method_25283 + m (JILjava/lang/String;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 worldId + p 3 slot + p 4 downloadName + p 5 lastScreen + m ()V +c com/mojang/realmsclient/util/task/GetServerDetailsTask ffm net/minecraft/class_4439 + f Lnet/minecraft/network/chat/Component; APPLYING_PACK_TEXT b field_47580 + f Lorg/slf4j/Logger; LOGGER c field_36356 + f Lnet/minecraft/network/chat/Component; TITLE d field_46135 + f Lcom/mojang/realmsclient/dto/RealmsServer; server e field_20224 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen f field_20225 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Ljava/util/UUID; generatePackId a method_55605 + p 0 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;)Lcom/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen; connectScreen a method_32511 + p 1 serverAddress + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/lang/Throwable;)Ljava/lang/Void; method_25286 a method_25286 + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; scheduleResourcePackDownload a method_32515 + p 1 serverAddress + p 2 id + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/PopupScreen; resourcePackDownloadConfirmationScreen a method_32512 + p 1 serverAddress + p 2 packId + p 3 connectScreen + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;Ljava/util/function/Function;Lnet/minecraft/client/gui/components/PopupScreen;)V method_32513 a method_32513 + m (Ljava/util/function/Function;Lcom/mojang/realmsclient/dto/RealmsServerAddress;)V method_32514 a method_32514 + m ()Lcom/mojang/realmsclient/dto/RealmsServerAddress; fetchServerAddress f method_32516 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 server + m ()V +c com/mojang/realmsclient/util/task/LongRunningTask ffn net/minecraft/class_4358 + f I NUMBER_OF_RETRIES a field_32132 + f Lorg/slf4j/Logger; LOGGER b field_22731 + f Z aborted c field_46136 + m ()Lnet/minecraft/network/chat/Component; getTitle a method_53808 + m (J)V pause a method_25287 + p 0 seconds + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V error a method_53809 + p 1 exception + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;)V method_25288 a method_25288 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)V method_53810 a method_53810 + m (Lnet/minecraft/client/gui/screens/Screen;)V setScreen a method_25289 + p 0 screen + m (Ljava/lang/Exception;)V error a method_53811 + p 1 exception + m (Lnet/minecraft/network/chat/Component;)V error a method_21067 + p 1 message + m ()V abortTask b method_21071 + m ()V tick c method_21068 + m ()Z aborted d method_21065 + m ()V init e method_21070 + m ()V + m ()V +c com/mojang/realmsclient/util/task/OpenServerTask ffo net/minecraft/class_4437 + f Lorg/slf4j/Logger; LOGGER b field_36357 + f Lnet/minecraft/network/chat/Component; TITLE c field_46137 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData d field_20218 + f Lnet/minecraft/client/gui/screens/Screen; returnScreen e field_20219 + f Z join f field_20220 + f Lnet/minecraft/client/Minecraft; minecraft g field_34016 + m ()V method_37409 f method_37409 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;ZLnet/minecraft/client/Minecraft;)V + p 1 serverData + p 2 returnScreen + p 3 join + p 4 minecraft + m ()V +c com/mojang/realmsclient/util/task/RealmCreationTask ffp net/minecraft/class_4445 + f Lorg/slf4j/Logger; LOGGER b field_36362 + f Lnet/minecraft/network/chat/Component; TITLE c field_46141 + f Ljava/lang/String; name d field_20249 + f Ljava/lang/String; motd e field_20250 + f J realmId f field_20251 + m (JLjava/lang/String;Ljava/lang/String;)V + p 1 realmId + p 3 name + p 4 motd + m ()V +c com/mojang/realmsclient/util/task/ResettingGeneratedWorldTask ffq net/minecraft/class_5673 + f Lcom/mojang/realmsclient/util/WorldGenerationInfo; generationInfo b field_27951 + m (Lcom/mojang/realmsclient/util/WorldGenerationInfo;JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 generationInfo + p 2 serverId + p 4 title + p 5 callback +c com/mojang/realmsclient/util/task/ResettingTemplateWorldTask ffr net/minecraft/class_5674 + f Lcom/mojang/realmsclient/dto/WorldTemplate; template b field_27952 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 template + p 2 serverId + p 4 title + p 5 callback +c com/mojang/realmsclient/util/task/ResettingWorldTask ffs net/minecraft/class_4440 + f Lorg/slf4j/Logger; LOGGER b field_36358 + f J serverId c field_20232 + f Lnet/minecraft/network/chat/Component; title d field_20235 + f Ljava/lang/Runnable; callback e field_22732 + m (Lcom/mojang/realmsclient/client/RealmsClient;J)V sendResetRequest a method_32517 + p 1 client + p 2 serverId + m (JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 serverId + p 3 title + p 4 callback + m ()V +c com/mojang/realmsclient/util/task/RestoreTask fft net/minecraft/class_4441 + f Lorg/slf4j/Logger; LOGGER b field_36359 + f Lnet/minecraft/network/chat/Component; TITLE c field_46138 + f Lcom/mojang/realmsclient/dto/Backup; backup d field_20236 + f J realmId e field_20237 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen f field_20238 + m (Lcom/mojang/realmsclient/dto/Backup;JLcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 backup + p 2 worldId + p 4 lastScreen + m ()V +c com/mojang/realmsclient/util/task/SwitchMinigameTask ffu net/minecraft/class_4442 + f Lorg/slf4j/Logger; LOGGER b field_36360 + f Lnet/minecraft/network/chat/Component; TITLE c field_46139 + f J realmId d field_20239 + f Lcom/mojang/realmsclient/dto/WorldTemplate; worldTemplate e field_20240 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen f field_20241 + m (JLcom/mojang/realmsclient/dto/WorldTemplate;Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 worldId + p 3 worldTemplate + p 4 lastScreen + m ()V +c com/mojang/realmsclient/util/task/SwitchSlotTask ffv net/minecraft/class_4443 + f Lorg/slf4j/Logger; LOGGER b field_36361 + f Lnet/minecraft/network/chat/Component; TITLE c field_46140 + f J realmId d field_20242 + f I slot e field_20243 + f Ljava/lang/Runnable; callback f field_22733 + m (JILjava/lang/Runnable;)V + p 1 worldId + p 3 slot + p 4 callback + m ()V +c com/mojang/realmsclient/util/task/package-info ffw net/minecraft/class_6201 +c net/minecraft/client/AttackIndicatorStatus ffx net/minecraft/class_4061 + f Lnet/minecraft/client/AttackIndicatorStatus; OFF a field_18151 + f Lnet/minecraft/client/AttackIndicatorStatus; CROSSHAIR b field_18152 + f Lnet/minecraft/client/AttackIndicatorStatus; HOTBAR c field_18153 + f Ljava/util/function/IntFunction; BY_ID d field_18154 + f I id e field_18155 + f Ljava/lang/String; key f field_18156 + f [Lnet/minecraft/client/AttackIndicatorStatus; $VALUES g field_18157 + m (I)Lnet/minecraft/client/AttackIndicatorStatus; byId a method_18488 + p 0 id + m ()[Lnet/minecraft/client/AttackIndicatorStatus; $values c method_36858 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/Camera ffy net/minecraft/class_4184 + f F FOG_DISTANCE_SCALE a field_32133 + f F DEFAULT_CAMERA_DISTANCE b field_47841 + f Lorg/joml/Vector3f; FORWARDS c field_52123 + f Lorg/joml/Vector3f; UP d field_52124 + f Lorg/joml/Vector3f; LEFT e field_52125 + f Z initialized f field_18709 + f Lnet/minecraft/world/level/BlockGetter; level g field_18710 + f Lnet/minecraft/world/entity/Entity; entity h field_18711 + f Lnet/minecraft/world/phys/Vec3; position i field_18712 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; blockPosition j field_18713 + f Lorg/joml/Vector3f; forwards k field_18714 + f Lorg/joml/Vector3f; up l field_18715 + f Lorg/joml/Vector3f; left m field_18716 + f F xRot n field_18717 + f F yRot o field_18718 + f Lorg/joml/Quaternionf; rotation p field_21518 + f Z detached q field_18719 + f F eyeHeight r field_18721 + f F eyeHeightOld s field_18722 + f F partialTickTime t field_47549 + m ()V tick a method_19317 + m (DDD)V setPosition a method_19327 + c Sets the position and blockpos of the active render + p 1 x + p 3 y + p 5 z + m (F)F getMaxZoom a method_19318 + p 1 maxZoom + m (FF)V setRotation a method_19325 + p 1 yRot + p 2 xRot + m (FFF)V move a method_19324 + p 1 zoom + p 2 dy + p 3 dx + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V setup a method_19321 + p 1 level + p 2 entity + p 3 detached + p 4 thirdPersonReverse + p 5 partialTick + m (Lnet/minecraft/world/phys/Vec3;)V setPosition a method_19322 + p 1 pos + m ()Lnet/minecraft/world/phys/Vec3; getPosition b method_19326 + m ()Lnet/minecraft/core/BlockPos; getBlockPosition c method_19328 + m ()F getXRot d method_19329 + m ()F getYRot e method_19330 + m ()Lorg/joml/Quaternionf; rotation f method_23767 + m ()Lnet/minecraft/world/entity/Entity; getEntity g method_19331 + m ()Z isInitialized h method_19332 + m ()Z isDetached i method_19333 + m ()Lnet/minecraft/client/Camera$NearPlane; getNearPlane j method_36425 + m ()Lnet/minecraft/world/level/material/FogType; getFluidInCamera k method_19334 + m ()Lorg/joml/Vector3f; getLookVector l method_19335 + m ()Lorg/joml/Vector3f; getUpVector m method_19336 + m ()Lorg/joml/Vector3f; getLeftVector n method_35689 + m ()V reset o method_19337 + m ()F getPartialTickTime p method_55437 + m ()V + m ()V +c net/minecraft/client/Camera$NearPlane ffy$a net/minecraft/class_4184$class_6355 + f Lnet/minecraft/world/phys/Vec3; forward a field_33622 + f Lnet/minecraft/world/phys/Vec3; left b field_33623 + f Lnet/minecraft/world/phys/Vec3; up c field_33624 + m ()Lnet/minecraft/world/phys/Vec3; getTopLeft a method_36426 + m (FF)Lnet/minecraft/world/phys/Vec3; getPointOnPlane a method_36427 + p 1 leftScale + p 2 upScale + m ()Lnet/minecraft/world/phys/Vec3; getTopRight b method_36429 + m ()Lnet/minecraft/world/phys/Vec3; getBottomLeft c method_36430 + m ()Lnet/minecraft/world/phys/Vec3; getBottomRight d method_36431 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + p 1 forward + p 2 left + p 3 up +c net/minecraft/client/CameraType ffz net/minecraft/class_5498 + f Lnet/minecraft/client/CameraType; FIRST_PERSON a field_26664 + f Lnet/minecraft/client/CameraType; THIRD_PERSON_BACK b field_26665 + f Lnet/minecraft/client/CameraType; THIRD_PERSON_FRONT c field_26666 + f [Lnet/minecraft/client/CameraType; VALUES d field_26667 + f Z firstPerson e field_26668 + f Z mirrored f field_26669 + f [Lnet/minecraft/client/CameraType; $VALUES g field_26670 + m ()Z isFirstPerson a method_31034 + m ()Z isMirrored b method_31035 + m ()Lnet/minecraft/client/CameraType; cycle c method_31036 + m ()[Lnet/minecraft/client/CameraType; $values d method_36859 + m (Ljava/lang/String;IZZ)V + p 3 firstPerson + p 4 mirrored + m ()V +c net/minecraft/client/ClientRecipeBook fga net/minecraft/class_299 + f Lorg/slf4j/Logger; LOGGER c field_25622 + f Ljava/util/Map; collectionsByTab d field_1638 + f Ljava/util/List; allCollections e field_25778 + m (Lnet/minecraft/world/item/crafting/Recipe;)Ljava/lang/Object; method_29969 a method_29969 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; getCollection a method_1396 + p 1 categories + m (Ljava/lang/Iterable;)Ljava/util/Map; categorizeAndGroupRecipes a method_30283 + p 0 recipes + m (Ljava/lang/Iterable;Lnet/minecraft/core/RegistryAccess;)V setupCollections a method_1401 + p 1 recipes + p 2 registryAccess + m (Ljava/util/Map;Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/stream/Stream; method_30280 a method_30280 + m (Ljava/util/Map;Lnet/minecraft/client/RecipeBookCategories;Ljava/util/List;)V method_30281 a method_30281 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess;Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/client/RecipeBookCategories;Ljava/util/List;)V method_30279 a method_30279 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; method_48464 a method_48464 + m ()Ljava/util/List; getCollections b method_1393 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; method_30282 b method_30282 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; method_30284 c method_30284 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/client/RecipeBookCategories; getCategory g method_1400 + p 0 recipe + m ()V + m ()V +c net/minecraft/client/ClientRecipeBook$1 fga$1 net/minecraft/class_299$1 + f [I $SwitchMap$net$minecraft$world$item$crafting$CraftingBookCategory a field_40377 + f [I $SwitchMap$net$minecraft$world$item$crafting$CookingBookCategory b field_40378 + m ()V +c net/minecraft/client/CloudStatus fgb net/minecraft/class_4063 + f Lnet/minecraft/client/CloudStatus; OFF a field_18162 + f Lnet/minecraft/client/CloudStatus; FAST b field_18163 + f Lnet/minecraft/client/CloudStatus; FANCY c field_18164 + f Lcom/mojang/serialization/Codec; CODEC d field_45285 + f I id e field_38440 + f Ljava/lang/String; legacyName f field_45286 + f Ljava/lang/String; key g field_18167 + f [Lnet/minecraft/client/CloudStatus; $VALUES h field_18168 + m ()[Lnet/minecraft/client/CloudStatus; $values e method_36860 + m (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V + p 3 id + p 4 legacyName + p 5 key + m ()V +c net/minecraft/client/CommandHistory fgc net/minecraft/class_8657 + f Lorg/slf4j/Logger; LOGGER a field_45287 + f I MAX_PERSISTED_COMMAND_HISTORY b field_45288 + f Ljava/lang/String; PERSISTED_COMMANDS_FILE_NAME c field_45289 + f Ljava/nio/file/Path; commandsPath d field_45290 + f Lnet/minecraft/util/ArrayListDeque; lastCommands e field_45291 + m ()Ljava/util/Collection; history a method_52696 + m (Ljava/lang/String;)V addCommand a method_52697 + p 1 command + m ()V save b method_52698 + m (Ljava/nio/file/Path;)V + p 1 path + m ()V +c net/minecraft/client/ComponentCollector fgd net/minecraft/class_5222 + f Ljava/util/List; parts a field_25260 + m ()Lnet/minecraft/network/chat/FormattedText; getResult a method_27461 + m (Lnet/minecraft/network/chat/FormattedText;)V append a method_27462 + p 1 part + m ()Lnet/minecraft/network/chat/FormattedText; getResultOrEmpty b method_27463 + m ()V reset c method_35690 + m ()V +c net/minecraft/client/DebugQueryHandler fge net/minecraft/class_300 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_1640 + f I transactionId b field_1641 + f Ljava/util/function/Consumer; callback c field_1642 + m (ILjava/util/function/Consumer;)V queryEntityTag a method_1405 + p 1 entId + p 2 tag + m (ILnet/minecraft/nbt/CompoundTag;)Z handleResponse a method_1404 + p 1 transactionId + p 2 tag + m (Ljava/util/function/Consumer;)I startTransaction a method_1402 + p 1 callback + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V queryBlockEntityTag a method_1403 + p 1 pos + p 2 tag + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;)V + p 1 connection +c net/minecraft/client/DeltaTracker fgf net/minecraft/class_9779 + f Lnet/minecraft/client/DeltaTracker; ZERO a field_51955 + f Lnet/minecraft/client/DeltaTracker; ONE b field_51956 + m ()F getGameTimeDeltaTicks a method_60636 + m (Z)F getGameTimeDeltaPartialTick a method_60637 + p 1 runsNormally + m ()F getRealtimeDeltaTicks b method_60638 + m ()V +c net/minecraft/client/DeltaTracker$DefaultValue fgf$a net/minecraft/class_9779$class_9780 + f F value c field_51957 + m (F)V + p 1 value +c net/minecraft/client/DeltaTracker$Timer fgf$b net/minecraft/class_9779$class_9781 + f F deltaTicks c field_51958 + f F deltaTickResidual d field_51959 + f F realtimeDeltaTicks e field_51960 + f F pausedDeltaTickResidual f field_51961 + f J lastMs g field_51962 + f J lastUiMs h field_51963 + f F msPerTick i field_51964 + f Lit/unimi/dsi/fastutil/floats/FloatUnaryOperator; targetMsptProvider j field_51965 + f Z paused k field_51966 + f Z frozen l field_51967 + m (J)I advanceGameTime a method_60639 + p 1 time + m (JZ)I advanceTime a method_60640 + p 1 time + p 3 advanceGameTime + m (J)V advanceRealTime b method_60641 + p 1 time + m (Z)V updatePauseState b method_60642 + p 1 paused + m ()V pause c method_60643 + m (Z)V updateFrozenState c method_60644 + p 1 frozen + m ()V unPause d method_60645 + m (FJLit/unimi/dsi/fastutil/floats/FloatUnaryOperator;)V + p 1 ticksPerSecond + p 2 time + p 4 targetMsptProvider +c net/minecraft/client/GameNarrator fgg net/minecraft/class_333 + f Lnet/minecraft/network/chat/Component; NO_TITLE a field_18967 + f Lorg/slf4j/Logger; LOGGER b field_18210 + f Lnet/minecraft/client/Minecraft; minecraft c field_39755 + f Lcom/mojang/text2speech/Narrator; narrator d field_2055 + m ()Z isActive a method_1791 + m (Lnet/minecraft/client/NarratorStatus;)V updateNarratorStatus a method_1792 + p 1 status + m (Ljava/lang/String;)V sayNow a method_19788 + p 1 message + m (Lnet/minecraft/network/chat/Component;)V sayChat a method_44708 + p 1 message + m (Z)V checkStatus a method_52183 + p 1 narratorEnabled + m ()V clear b method_1793 + m (Ljava/lang/String;)V logNarratedMessage b method_37016 + p 1 message + m (Lnet/minecraft/network/chat/Component;)V say b method_47976 + p 1 message + m ()V destroy c method_20371 + m (Lnet/minecraft/network/chat/Component;)V sayNow c method_37015 + p 1 message + m ()Lnet/minecraft/client/NarratorStatus; getStatus d method_20602 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/GameNarrator$NarratorInitException fgg$a net/minecraft/class_333$class_8571 + m (Ljava/lang/String;)V +c net/minecraft/client/GraphicsStatus fgh net/minecraft/class_5365 + f Lnet/minecraft/client/GraphicsStatus; FAST a field_25427 + f Lnet/minecraft/client/GraphicsStatus; FANCY b field_25428 + f Lnet/minecraft/client/GraphicsStatus; FABULOUS c field_25429 + f Ljava/util/function/IntFunction; BY_ID d field_25430 + f I id e field_25431 + f Ljava/lang/String; key f field_25432 + f [Lnet/minecraft/client/GraphicsStatus; $VALUES g field_25433 + m (I)Lnet/minecraft/client/GraphicsStatus; byId a method_29592 + p 0 id + m ()[Lnet/minecraft/client/GraphicsStatus; $values c method_36861 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/GuiMessage fgi net/minecraft/class_303 + f I addedTime a comp_892 + f Lnet/minecraft/network/chat/Component; content b comp_893 + f Lnet/minecraft/network/chat/MessageSignature; signature c comp_915 + f Lnet/minecraft/client/GuiMessageTag; tag d comp_894 + m ()Lnet/minecraft/client/GuiMessageTag$Icon; icon a method_58742 + m ()I addedTime b comp_892 + m ()Lnet/minecraft/network/chat/Component; content c comp_893 + m ()Lnet/minecraft/network/chat/MessageSignature; signature d comp_915 + m ()Lnet/minecraft/client/GuiMessageTag; tag e comp_894 + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/GuiMessageTag;)V +c net/minecraft/client/GuiMessage$Line fgi$a net/minecraft/class_303$class_7590 + f I addedTime a comp_895 + f Lnet/minecraft/util/FormattedCharSequence; content b comp_896 + f Lnet/minecraft/client/GuiMessageTag; tag c comp_897 + f Z endOfEntry d comp_898 + m ()I addedTime a comp_895 + m ()Lnet/minecraft/util/FormattedCharSequence; content b comp_896 + m ()Lnet/minecraft/client/GuiMessageTag; tag c comp_897 + m ()Z endOfEntry d comp_898 + m (ILnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/client/GuiMessageTag;Z)V +c net/minecraft/client/GuiMessageTag fgj net/minecraft/class_7591 + f I indicatorColor a comp_899 + f Lnet/minecraft/client/GuiMessageTag$Icon; icon b comp_900 + f Lnet/minecraft/network/chat/Component; text c comp_901 + f Ljava/lang/String; logTag d comp_902 + f Lnet/minecraft/network/chat/Component; SYSTEM_TEXT e field_40379 + f Lnet/minecraft/network/chat/Component; SYSTEM_TEXT_SINGLE_PLAYER f field_41092 + f Lnet/minecraft/network/chat/Component; CHAT_NOT_SECURE_TEXT g field_39756 + f Lnet/minecraft/network/chat/Component; CHAT_MODIFIED_TEXT h field_39757 + f Lnet/minecraft/network/chat/Component; CHAT_ERROR_TEXT i field_45897 + f I CHAT_NOT_SECURE_INDICATOR_COLOR j field_39758 + f I CHAT_MODIFIED_INDICATOR_COLOR k field_39759 + f Lnet/minecraft/client/GuiMessageTag; SYSTEM l field_39789 + f Lnet/minecraft/client/GuiMessageTag; SYSTEM_SINGLE_PLAYER m field_41093 + f Lnet/minecraft/client/GuiMessageTag; CHAT_NOT_SECURE n field_39760 + f Lnet/minecraft/client/GuiMessageTag; CHAT_ERROR o field_45898 + m ()Lnet/minecraft/client/GuiMessageTag; system a method_44751 + m (Ljava/lang/String;)Lnet/minecraft/client/GuiMessageTag; chatModified a method_44710 + p 0 originalText + m ()Lnet/minecraft/client/GuiMessageTag; systemSinglePlayer b method_47391 + m ()Lnet/minecraft/client/GuiMessageTag; chatNotSecure c method_44709 + m ()Lnet/minecraft/client/GuiMessageTag; chatError d method_53461 + m ()I indicatorColor e comp_899 + m ()Lnet/minecraft/client/GuiMessageTag$Icon; icon f comp_900 + m ()Lnet/minecraft/network/chat/Component; text g comp_901 + m ()Ljava/lang/String; logTag h comp_902 + m (ILnet/minecraft/client/GuiMessageTag$Icon;Lnet/minecraft/network/chat/Component;Ljava/lang/String;)V + m ()V +c net/minecraft/client/GuiMessageTag$Icon fgj$a net/minecraft/class_7591$class_7592 + f Lnet/minecraft/client/GuiMessageTag$Icon; CHAT_MODIFIED a field_39763 + f Lnet/minecraft/resources/ResourceLocation; sprite b field_45292 + f I width c field_39766 + f I height d field_39767 + f [Lnet/minecraft/client/GuiMessageTag$Icon; $VALUES e field_39768 + m ()[Lnet/minecraft/client/GuiMessageTag$Icon; $values a method_44711 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V draw a method_44712 + p 1 guiGraphics + p 2 x + p 3 y + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;II)V + p 3 sprite + p 4 width + p 5 height + m ()V +c net/minecraft/client/HotbarManager fgk net/minecraft/class_302 + f I NUM_HOTBAR_GROUPS a field_32135 + f Lorg/slf4j/Logger; LOGGER b field_1647 + f Ljava/nio/file/Path; optionsFile c field_1646 + f Lcom/mojang/datafixers/DataFixer; fixerUpper d field_1648 + f [Lnet/minecraft/client/player/inventory/Hotbar; hotbars e field_1644 + f Z loaded f field_1645 + m ()V save a method_1409 + m (I)Lnet/minecraft/client/player/inventory/Hotbar; get a method_1410 + p 1 index + m (Ljava/lang/String;)V method_56825 a method_56825 + m ()V load b method_1411 + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)V + p 1 gameDirectory + p 2 fixerUpper + m ()V +c net/minecraft/client/InputType fgl net/minecraft/class_8015 + f Lnet/minecraft/client/InputType; NONE a field_41777 + f Lnet/minecraft/client/InputType; MOUSE b field_41778 + f Lnet/minecraft/client/InputType; KEYBOARD_ARROW c field_43097 + f Lnet/minecraft/client/InputType; KEYBOARD_TAB d field_41780 + f [Lnet/minecraft/client/InputType; $VALUES e field_41781 + m ()Z isMouse a method_48182 + m ()Z isKeyboard b method_48183 + m ()[Lnet/minecraft/client/InputType; $values c method_48184 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/KeyMapping fgm net/minecraft/class_304 + f Ljava/lang/String; CATEGORY_MOVEMENT a field_32136 + f Ljava/lang/String; CATEGORY_MISC b field_32137 + f Ljava/lang/String; CATEGORY_MULTIPLAYER c field_32138 + f Ljava/lang/String; CATEGORY_GAMEPLAY d field_32139 + f Ljava/lang/String; CATEGORY_INVENTORY e field_32140 + f Ljava/lang/String; CATEGORY_INTERFACE f field_32141 + f Ljava/lang/String; CATEGORY_CREATIVE g field_32142 + f Ljava/util/Map; ALL h field_1657 + f Ljava/util/Map; MAP i field_1658 + f Ljava/util/Set; CATEGORIES j field_1652 + f Ljava/util/Map; CATEGORY_SORT_ORDER k field_1656 + f Ljava/lang/String; name l field_1660 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; defaultKey m field_1654 + f Ljava/lang/String; category n field_1659 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; key o field_1655 + f Z isDown p field_1653 + f I clickCount q field_1661 + m ()V setAll a method_1424 + c Completely recalculates whether any keybinds are held, from scratch. + m (I)Z matchesMouse a method_1433 + c Returns {@code true} if the {@code KeyMapping} is set to a mouse key and the key matches. + p 1 key + m (II)Z matches a method_1417 + p 1 keysym + p 2 scancode + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;)V click a method_1420 + p 0 key + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;Z)V set a method_1416 + p 0 key + p 1 held + m (Lnet/minecraft/client/KeyMapping;)I compareTo a method_1430 + m (Ljava/lang/String;)Ljava/util/function/Supplier; createNameSupplier a method_1419 + c Returns a supplier which gets a keybind's current binding (eg, key.forward returns W by default), or the keybind's name if no such keybind exists (eg, key.invalid returns key.invalid) + p 0 key + m (Ljava/util/HashMap;)V method_1418 a method_1418 + m (Z)V setDown a method_23481 + p 1 value + m ()V releaseAll b method_1437 + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;)V setKey b method_1422 + c Binds a new KeyCode to this + p 1 key + m (Lnet/minecraft/client/KeyMapping;)Z same b method_1435 + c Returns {@code true} if the supplied {@code KeyMapping} conflicts with this + p 1 binding + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27465 b method_27465 + m ()V resetToggleKeys c method_52231 + m ()V resetMapping d method_1426 + m ()Z isDown e method_1434 + c Returns {@code true} if the key is pressed (used for continuous querying). Should be used in tickers. + m ()Ljava/lang/String; getCategory f method_1423 + m ()Z consumeClick g method_1436 + c Returns {@code true} on the initial key press. For continuous querying use {@link isKeyDown()}. Should be used in key events. + m ()Ljava/lang/String; getName h method_1431 + m ()Lcom/mojang/blaze3d/platform/InputConstants$Key; getDefaultKey i method_1429 + m ()Z isUnbound j method_1415 + m ()Lnet/minecraft/network/chat/Component; getTranslatedKeyMessage k method_16007 + m ()Z isDefault l method_1427 + c Returns {@code true} if the {@code KeyMapping} is using the default key and key modifier + m ()Ljava/lang/String; saveString m method_1428 + m ()V release n method_1425 + m (Ljava/lang/String;ILjava/lang/String;)V + p 1 name + p 2 keyCode + p 3 category + m (Ljava/lang/String;Lcom/mojang/blaze3d/platform/InputConstants$Type;ILjava/lang/String;)V + p 1 name + p 2 type + p 3 keyCode + p 4 category + m ()V +c net/minecraft/client/KeyboardHandler fgn net/minecraft/class_309 + f I DEBUG_CRASH_TIME a field_32143 + f Lnet/minecraft/client/Minecraft; minecraft b field_1678 + f Lcom/mojang/blaze3d/platform/ClipboardManager; clipboardManager c field_16241 + f J debugCrashKeyTime d field_1682 + f J debugCrashKeyReportedTime e field_1681 + f J debugCrashKeyReportedCount f field_1680 + f Z handledDebugKey g field_1679 + m ()Ljava/lang/String; getClipboard a method_1460 + m (I)Z handleChunkDebugKeys a method_35696 + p 1 keyCode + m (IJ)V method_1461 a method_1461 + m (ILnet/minecraft/client/gui/screens/Screen;[ZIII)V method_1454 a method_1454 + m (J)V setup a method_1472 + p 1 window + m (JII)V charTyped a method_1457 + p 1 windowPointer + p 3 codePoint + p 4 modifiers + m (JIIII)V keyPress a method_1466 + p 1 windowPointer + p 3 key + p 4 scanCode + p 5 action + p 6 modifiers + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/nbt/CompoundTag;)V method_1471 a method_1471 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;)V copyCreateEntityCommand a method_1469 + p 1 entityId + p 2 pos + p 3 compound + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V copyCreateBlockCommand a method_1475 + p 1 state + p 2 pos + p 3 compound + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;CI)V method_1473 a method_1473 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;II)V method_1458 a method_1458 + m (Ljava/lang/String;)V setClipboard a method_1455 + p 1 string + m (Ljava/lang/String;[Ljava/lang/Object;)V debugFeedbackTranslated a method_1459 + p 1 message + p 2 args + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_49711 a method_49711 + m (Lnet/minecraft/ChatFormatting;Lnet/minecraft/network/chat/Component;)V debugComponent a method_37273 + p 1 formatting + p 2 message + m (Lnet/minecraft/network/chat/Component;)V debugFeedbackComponent a method_37272 + p 1 message + m (ZZ)V copyRecreateCommand a method_1465 + p 1 privileged + p 2 askServer + m ()V tick b method_1474 + m (I)Z handleDebugKeys b method_1468 + p 1 key + m (JII)V method_22675 b method_22675 + m (JIIII)V method_22676 b method_22676 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V method_1467 b method_1467 + m (Ljava/lang/String;[Ljava/lang/Object;)V debugWarningTranslated b method_1456 + p 1 message + p 2 args + m (Lnet/minecraft/network/chat/Component;)V method_1463 b method_1463 + m (JII)V method_22677 c method_22677 + m (JIIII)V method_22678 c method_22678 + m (Ljava/lang/String;[Ljava/lang/Object;)V debugFeedback c method_35697 + p 1 message + p 2 args + m (Lnet/minecraft/network/chat/Component;)V method_1464 c method_1464 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/KeyboardHandler$1 fgn$1 net/minecraft/class_309$1 + f [I $SwitchMap$net$minecraft$world$phys$HitResult$Type a field_1685 + m ()V +c net/minecraft/client/Minecraft fgo net/minecraft/class_310 + f Z wireframe A field_32144 + f Z sectionPath B field_20907 + f Z sectionVisibility C field_20908 + f Z smartCull D field_1730 + f Lnet/minecraft/client/Minecraft; instance E field_1700 + f Lorg/slf4j/Logger; LOGGER F field_1762 + f I MAX_TICKS_PER_UPDATE G field_32145 + f Lnet/minecraft/resources/ResourceLocation; REGIONAL_COMPLIANCIES H field_36433 + f Ljava/util/concurrent/CompletableFuture; RESOURCE_RELOAD_INITIAL_TASK I field_18009 + f Lnet/minecraft/network/chat/Component; SOCIAL_INTERACTIONS_NOT_AVAILABLE J field_26841 + f J canary K field_46550 + f Ljava/nio/file/Path; resourcePackDirectory L field_1757 + f Ljava/util/concurrent/CompletableFuture; profileFuture M field_45899 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager N field_1764 + f Lcom/mojang/datafixers/DataFixer; fixerUpper O field_1768 + f Lnet/minecraft/client/renderer/VirtualScreen; virtualScreen P field_1686 + f Lcom/mojang/blaze3d/platform/Window; window Q field_1704 + f Lnet/minecraft/client/DeltaTracker$Timer; timer R field_1728 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers S field_20909 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher T field_1731 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer U field_1742 + f Lnet/minecraft/client/User; user V field_1726 + f Ljava/util/concurrent/atomic/AtomicReference; progressListener W field_17405 + f Lnet/minecraft/client/HotbarManager; hotbarManager X field_1732 + f Lnet/minecraft/client/InputType; lastInputType Y field_41782 + f Ljava/lang/String; launchedVersion Z field_1711 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer aA field_1756 + c The BlockRenderDispatcher instance that will be used based off gamesettings + f Lnet/minecraft/client/resources/PaintingTextureManager; paintingTextures aB field_18008 + f Lnet/minecraft/client/resources/MobEffectTextureManager; mobEffectTextures aC field_18173 + f Lnet/minecraft/client/resources/MapDecorationTextureManager; mapDecorationTextures aD field_50035 + f Lnet/minecraft/client/gui/GuiSpriteManager; guiSprites aE field_45293 + f Lnet/minecraft/client/gui/components/toasts/ToastComponent; toast aF field_1702 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial aG field_1758 + f Lnet/minecraft/client/gui/screens/social/PlayerSocialManager; playerSocialManager aH field_26842 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModels aI field_27387 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher aJ field_27388 + f Lnet/minecraft/client/telemetry/ClientTelemetryManager; telemetryManager aK field_41331 + f Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; profileKeyPairManager aL field_39068 + f Lcom/mojang/realmsclient/gui/RealmsDataFetcher; realmsDataFetcher aM field_39718 + f Lnet/minecraft/client/quickplay/QuickPlayLog; quickPlayLog aN field_44539 + f Lnet/minecraft/client/server/IntegratedServer; singleplayerServer aO field_1766 + f Lnet/minecraft/network/Connection; pendingConnection aP field_1746 + f Z isLocalServer aQ field_1759 + f I rightClickDelay aR field_1752 + f Z pause aS field_1734 + f J lastNanoTime aT field_1750 + c Time in nanoseconds of when the class is loaded + f J lastTime aU field_1712 + f I frames aV field_1735 + f Lnet/minecraft/client/gui/screens/Overlay; overlay aW field_18175 + f Z clientLevelTeardownInProgress aX field_46551 + f Ljava/lang/Thread; gameThread aY field_1696 + f Z ON_OSX a field_1703 + f Z running aZ field_1698 + f Ljava/lang/String; versionType aa field_1720 + f Ljava/net/Proxy; proxy ab field_1739 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelSource ac field_1748 + f Z demo ad field_1721 + f Z allowsMultiplayer ae field_25033 + f Z allowsChat af field_25034 + f Lnet/minecraft/server/packs/resources/ReloadableResourceManager; resourceManager ag field_1745 + f Lnet/minecraft/server/packs/VanillaPackResources; vanillaPackResources ah field_40380 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; downloadedPackSource ai field_40381 + f Lnet/minecraft/server/packs/repository/PackRepository; resourcePackRepository aj field_1715 + f Lnet/minecraft/client/resources/language/LanguageManager; languageManager ak field_1717 + f Lnet/minecraft/client/color/block/BlockColors; blockColors al field_1751 + f Lnet/minecraft/client/color/item/ItemColors; itemColors am field_1760 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; mainRenderTarget an field_1689 + f Lnet/minecraft/client/sounds/SoundManager; soundManager ao field_1727 + f Lnet/minecraft/client/sounds/MusicManager; musicManager ap field_1714 + f Lnet/minecraft/client/gui/font/FontManager; fontManager aq field_1708 + f Lnet/minecraft/client/resources/SplashManager; splashManager ar field_17763 + f Lnet/minecraft/client/renderer/GpuWarnlistManager; gpuWarnlistManager as field_25671 + f Lnet/minecraft/client/PeriodicNotificationManager; regionalCompliancies at field_36434 + f Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService; authenticationService au field_39420 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; minecraftSessionService av field_1723 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService aw field_26902 + f Ljava/util/concurrent/CompletableFuture; userPropertiesFuture ax field_47680 + f Lnet/minecraft/client/resources/SkinManager; skinManager ay field_1707 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager az field_1763 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_FONT b field_1740 + f Ljava/util/function/Supplier; delayedCrash ba field_1747 + f I fps bb field_1738 + f J frameTimeNs bc field_41332 + f Z windowActive bd field_1695 + f Ljava/util/Queue; progressTasks be field_17404 + f Ljava/util/concurrent/CompletableFuture; pendingReload bf field_18174 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; socialInteractionsToast bg field_26843 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler bh field_16240 + f I fpsPieRenderTicks bi field_22224 + f Lnet/minecraft/util/profiling/ContinuousProfiler; fpsPieProfiler bj field_22225 + f Lnet/minecraft/util/profiling/ProfileResults; fpsPieResults bk field_22226 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; metricsRecorder bl field_29569 + f Lnet/minecraft/client/ResourceLoadStateTracker; reloadStateTracker bm field_33697 + f J savedCpuDuration bn field_37855 + f D gpuUtilization bo field_37856 + f Lcom/mojang/blaze3d/systems/TimerQuery$FrameProfile; currentFrameProfile bp field_37857 + f Lnet/minecraft/client/GameNarrator; narrator bq field_39769 + f Lnet/minecraft/client/multiplayer/chat/ChatListener; chatListener br field_39770 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext bs field_39492 + f Lnet/minecraft/client/CommandHistory; commandHistory bt field_45294 + f Lnet/minecraft/world/level/validation/DirectoryValidator; directoryValidator bu field_45295 + f Z gameLoadFinished bv field_45900 + f J clientStartTimeMs bw field_46552 + f J clientTickCount bx field_46553 + f Ljava/lang/String; debugPath by field_1701 + f Lnet/minecraft/resources/ResourceLocation; UNIFORM_FONT c field_24211 + f Lnet/minecraft/resources/ResourceLocation; ALT_FONT d field_1749 + f Ljava/lang/String; UPDATE_DRIVERS_ADVICE e field_33735 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer f field_1769 + f Lnet/minecraft/client/particle/ParticleEngine; particleEngine g field_1713 + f Lnet/minecraft/client/gui/Font; font h field_1772 + f Lnet/minecraft/client/gui/Font; fontFilterFishy i field_39924 + f Lnet/minecraft/client/renderer/GameRenderer; gameRenderer j field_1773 + f Lnet/minecraft/client/renderer/debug/DebugRenderer; debugRenderer k field_1709 + f Lnet/minecraft/client/gui/Gui; gui l field_1705 + f Lnet/minecraft/client/Options; options m field_1690 + f Lnet/minecraft/client/MouseHandler; mouseHandler n field_1729 + f Lnet/minecraft/client/KeyboardHandler; keyboardHandler o field_1774 + f Ljava/io/File; gameDirectory p field_1697 + f Lnet/minecraft/client/multiplayer/MultiPlayerGameMode; gameMode q field_1761 + f Lnet/minecraft/client/multiplayer/ClientLevel; level r field_1687 + f Lnet/minecraft/client/player/LocalPlayer; player s field_1724 + f Lnet/minecraft/world/entity/Entity; cameraEntity t field_1719 + f Lnet/minecraft/world/entity/Entity; crosshairPickEntity u field_1692 + f Lnet/minecraft/world/phys/HitResult; hitResult v field_1765 + f I missTime w field_1771 + f Z noRender x field_1743 + f Lnet/minecraft/client/gui/screens/Screen; screen y field_1755 + f Ljava/lang/String; fpsString z field_1770 + m ()Z telemetryOptInExtra C method_47602 + m ()Z extraTelemetryAvailable D method_47595 + m ()Z allowsTelemetry E method_47596 + m ()Z allowsMultiplayer F method_29043 + m ()Z allowsRealms G method_35706 + m ()Lcom/mojang/authlib/minecraft/BanDetails; multiplayerBan H method_44647 + m ()Z isNameBanned I method_53518 + m ()Lnet/minecraft/client/Minecraft$ChatStatus; getChatStatus J method_33884 + m ()Z isDemo K method_1530 + c Gets whether this is a demo or not. + m ()Lnet/minecraft/client/multiplayer/ClientPacketListener; getConnection L method_1562 + m ()Z renderNames M method_1498 + m ()Z useFancyGraphics N method_1517 + m ()Z useShaderTransparency O method_29611 + m ()Z useAmbientOcclusion P method_1588 + c Returns if ambient occlusion is enabled + m ()Lnet/minecraft/client/Minecraft; getInstance Q method_1551 + c Return the singleton Minecraft instance for the game + m ()Ljava/util/concurrent/CompletableFuture; delayTextureReload R method_1513 + m ()Lnet/minecraft/client/multiplayer/ServerData; getCurrentServer S method_1558 + m ()Z isLocalServer T method_1542 + m ()Z hasSingleplayerServer U method_1496 + c Returns {@code true} if there is only one player playing, and the current server is the integrated one. + m ()Lnet/minecraft/client/server/IntegratedServer; getSingleplayerServer V method_1576 + c Returns the currently running integrated server + m ()Z isSingleplayer W method_47392 + m ()Lnet/minecraft/client/User; getUser X method_1548 + m ()Lcom/mojang/authlib/GameProfile; getGameProfile Y method_53462 + m ()Ljava/net/Proxy; getProxy Z method_1487 + m (D)Ljava/lang/String; formatSeconds a method_54116 + p 0 seconds + m (F)F getTickTargetMillis a method_54785 + p 1 defaultValue + m (I)V debugFpsMeterKeyPress a method_1524 + c Update debugProfilerName in response to number keys in debug screen + p 1 keyCount + m (IJ)V onFullscreenError a method_1506 + p 1 error + p 2 description + m (Lnet/minecraft/SystemReport;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/resources/language/LanguageManager;Ljava/lang/String;Lnet/minecraft/client/Options;)Lnet/minecraft/SystemReport; fillSystemReport a method_37274 + p 0 report + p 1 minecraft + p 2 languageManager + p 3 launchVersion + p 4 options + m (Lnet/minecraft/SystemReport;Ljava/util/List;)Ljava/nio/file/Path; archiveProfilingReport a method_37275 + p 1 report + p 2 paths + m (Lnet/minecraft/SystemReport;Ljava/util/function/Consumer;Ljava/util/List;)V method_37276 a method_37276 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Function; getTextureAtlas a method_1549 + p 1 location + m (Lnet/minecraft/server/WorldStem;)Ljava/lang/String; method_41732 a method_41732 + m (Lnet/minecraft/util/profiling/ProfileResults;)V method_37277 a method_37277 + m (Lnet/minecraft/world/entity/Entity;)V setCameraEntity a method_1504 + p 1 viewingEntity + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53519 a method_53519 + m (Lcom/mojang/authlib/minecraft/BanDetails;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53520 a method_53520 + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Lnet/minecraft/client/main/GameConfig;)Lcom/mojang/authlib/minecraft/UserApiService; createUserApiService a method_31382 + p 1 authenticationService + p 2 gameConfig + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/RegistryAccess;)V addCustomNbtData a method_1499 + p 1 stack + p 2 blockEntity + p 3 registryAccess + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/Services;Ljava/lang/Thread;)Lnet/minecraft/client/server/IntegratedServer; method_29603 a method_29603 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Z)V doWorldLoad a method_29610 + p 1 levelStorage + p 2 packRepository + p 3 worldStem + p 4 newWorld + m (Lcom/mojang/blaze3d/systems/TimerQuery;)V method_41731 a method_41731 + m (Lnet/minecraft/client/InputType;)V setLastInputType a method_48185 + p 1 lastInputType + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V onResourceLoadFinished a method_53465 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/lang/Throwable;)V method_53521 a method_53521 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/util/Optional;)V method_53522 a method_53522 + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_37279 a method_37279 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/resources/language/LanguageManager;Ljava/lang/String;Lnet/minecraft/client/Options;Lnet/minecraft/CrashReport;)V fillReport a method_22681 + p 0 minecraft + p 1 languageManager + p 2 launchVersion + p 3 options + p 4 report + m (Lnet/minecraft/client/Minecraft;Ljava/io/File;Lnet/minecraft/CrashReport;)V crash a method_1565 + p 0 minecraft + p 1 gameDirectory + p 2 crashReport + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/util/profiling/ProfileResults;)V renderFpsMeter a method_1492 + p 1 guiGraphics + p 2 profileResults + m (Lnet/minecraft/client/gui/screens/Overlay;)V setOverlay a method_18502 + p 1 loadingGui + m (Lnet/minecraft/client/gui/screens/Screen;)V setScreen a method_1507 + p 1 guiScreen + m (Lnet/minecraft/client/gui/screens/Screen;Z)V disconnect a method_18096 + p 1 nextScreen + p 2 keepResourcePacks + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V updateLevelInEngines a method_18097 + p 1 level + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V setLevel a method_1481 + p 1 level + p 2 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;)V updateReportEnvironment a method_44376 + p 1 reportEnvironment + m (Lnet/minecraft/client/resources/language/ClientLanguage;)V method_60320 a method_60320 + m (Lnet/minecraft/client/resources/language/LanguageManager;)Ljava/lang/String; method_37280 a method_37280 + m (Ljava/io/File;II)Lnet/minecraft/network/chat/Component; grabPanoramixScreenshot a method_35698 + p 1 gameDirectory + p 2 width + p 3 height + m (Ljava/io/File;IIII)Lnet/minecraft/network/chat/Component; grabHugeScreenshot a method_35699 + p 1 gameDirectory + p 2 columnWidth + p 3 rowHeight + p 4 width + p 5 height + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_35700 a method_35700 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53523 a method_53523 + m (Ljava/lang/Runnable;Z)V method_53524 a method_53524 + m (Ljava/lang/String;)V openChatScreen a method_29041 + p 1 defaultText + m (Ljava/lang/Throwable;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V rollbackResourcePacks a method_24226 + p 1 throwable + p 2 gameLoadCookie + m (Ljava/lang/Throwable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V clearResourcePacksOnError a method_31186 + p 1 throwable + p 2 errorMessage + p 3 gameLoadCookie + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_37281 a method_37281 + m (Ljava/util/List;)V addInitialScreens a method_53525 + p 1 output + m (Ljava/util/UUID;)Z isBlocked a method_29042 + p 1 playerUUID + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_18507 a method_18507 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_29339 a method_29339 + m (Ljava/util/function/Consumer;)Z debugClientMetricsStart a method_34745 + p 1 logger + m (Ljava/util/function/Consumer;DI)V method_37282 a method_37282 + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_34746 a method_34746 + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37283 a method_37283 + m (Ljava/util/function/Consumer;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V method_37284 a method_37284 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_37285 a method_37285 + m (Lnet/minecraft/CrashReport;)V delayCrash a method_1494 + p 1 report + m (Lnet/minecraft/CrashReportCategory;)V fillUptime a method_54117 + p 1 category + m (Lnet/minecraft/network/chat/Component;)V addResourcePackLoadFailToast a method_49292 + p 1 message + m (ZLnet/minecraft/util/profiling/SingleTickProfiler;)Lnet/minecraft/util/profiling/ProfilerFiller; constructProfiler a method_24458 + p 1 renderFpsPie + p 2 singleTickProfiler + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;)Ljava/util/concurrent/CompletableFuture; reloadResourcePacks a method_36561 + p 1 error + p 2 gameLoadCookie + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/lang/Throwable;)V method_49293 a method_49293 + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/util/concurrent/CompletableFuture;Ljava/util/Optional;)V method_24228 a method_24228 + m ()Z isWindowActive aA method_1569 + m ()Lnet/minecraft/client/HotbarManager; getHotbarManager aB method_1571 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager aC method_1554 + m ()Lnet/minecraft/client/resources/PaintingTextureManager; getPaintingTextures aD method_18321 + c Gets the sprite uploader used for paintings. + m ()Lnet/minecraft/client/resources/MobEffectTextureManager; getMobEffectTextures aE method_18505 + c Gets the sprite uploader used for potions. + m ()Lnet/minecraft/client/resources/MapDecorationTextureManager; getMapDecorationTextures aF method_58476 + m ()Lnet/minecraft/client/gui/GuiSpriteManager; getGuiSprites aG method_52699 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler aH method_16011 + m ()Lnet/minecraft/server/level/progress/StoringChunkProgressListener; getProgressListener aI method_35703 + m ()Lnet/minecraft/client/resources/SplashManager; getSplashManager aJ method_18095 + m ()Lnet/minecraft/client/gui/screens/Overlay; getOverlay aK method_18506 + m ()Lnet/minecraft/client/gui/screens/social/PlayerSocialManager; getPlayerSocialManager aL method_31320 + m ()Lcom/mojang/blaze3d/platform/Window; getWindow aM method_22683 + m ()Lnet/minecraft/client/gui/components/DebugScreenOverlay; getDebugOverlay aN method_53526 + m ()Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers aO method_22940 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getEntityModels aP method_31974 + m ()Z isTextFilteringEnabled aQ method_33883 + m ()V prepareForMultiplayer aR method_38932 + m ()Lnet/minecraft/util/SignatureValidator; getProfileKeySignatureValidator aS method_44256 + m ()Z canValidateProfileKeys aT method_55606 + m ()Lnet/minecraft/client/InputType; getLastInputType aU method_48186 + m ()Lnet/minecraft/client/GameNarrator; getNarrator aV method_44713 + m ()Lnet/minecraft/client/multiplayer/chat/ChatListener; getChatListener aW method_44714 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; getReportingContext aX method_44377 + m ()Lcom/mojang/realmsclient/gui/RealmsDataFetcher; realmsDataFetcher aY method_44646 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog; quickPlayLog aZ method_51253 + m ()Lnet/minecraft/client/renderer/texture/TextureManager; getTextureManager aa method_1531 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager ab method_1478 + m ()Lnet/minecraft/server/packs/repository/PackRepository; getResourcePackRepository ac method_1520 + m ()Lnet/minecraft/server/packs/VanillaPackResources; getVanillaPackResources ad method_45573 + m ()Lnet/minecraft/client/resources/server/DownloadedPackSource; getDownloadedPackSource ae method_1516 + m ()Ljava/nio/file/Path; getResourcePackDirectory af method_1479 + m ()Lnet/minecraft/client/resources/language/LanguageManager; getLanguageManager ag method_1526 + m ()Z isPaused ah method_1493 + m ()Lnet/minecraft/client/renderer/GpuWarnlistManager; getGpuWarnlistManager ai method_30049 + m ()Lnet/minecraft/client/sounds/SoundManager; getSoundManager aj method_1483 + m ()Lnet/minecraft/sounds/Music; getSituationalMusic ak method_1544 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getMinecraftSessionService al method_1495 + m ()Lnet/minecraft/client/resources/SkinManager; getSkinManager am method_1582 + m ()Lnet/minecraft/world/entity/Entity; getCameraEntity an method_1560 + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderer ao method_1541 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderDispatcher ap method_1561 + m ()Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; getBlockEntityRenderDispatcher aq method_31975 + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer ar method_1480 + m ()Lcom/mojang/datafixers/DataFixer; getFixerUpper as method_1543 + m ()Lnet/minecraft/client/DeltaTracker; getTimer at method_60646 + m ()Lnet/minecraft/client/color/block/BlockColors; getBlockColors au method_1505 + m ()Z showOnlyReducedInfo av method_1555 + c Whether to use reduced debug info + m ()Lnet/minecraft/client/gui/components/toasts/ToastComponent; getToasts aw method_1566 + m ()Lnet/minecraft/client/tutorial/Tutorial; getTutorial ax method_1577 + m (I)V updateMaxMipLevel b method_24041 + p 1 mipMapLevel + m (Lnet/minecraft/world/entity/Entity;)Z shouldEntityAppearGlowing b method_27022 + p 1 entity + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V onGameLoadFinished b method_51736 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_53905 b method_53905 + m (Lnet/minecraft/client/gui/screens/Screen;)V disconnect b method_56134 + p 1 nextScreen + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_35704 b method_35704 + m (Ljava/lang/Object;)Z countryEqualsISO3 b method_40189 + p 0 country + m (Ljava/lang/String;)Ljava/lang/String; method_37292 b method_37292 + m (Ljava/util/UUID;)Z isLocalPlayer b method_52701 + p 1 uuid + m (Ljava/util/concurrent/CompletableFuture;)V method_18508 b method_18508 + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_37290 b method_37290 + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37291 b method_37291 + m (Lnet/minecraft/CrashReport;)V delayCrashRaw b method_43587 + p 1 report + m (Lnet/minecraft/network/chat/Component;)V method_35701 b method_35701 + m (Z)V pauseGame b method_20539 + c Displays the ingame menu + p 1 pauseOnly + m (ZLnet/minecraft/util/profiling/SingleTickProfiler;)V finishProfilers b method_24460 + p 1 renderFpsPie + p 2 profiler + m ()Ljava/lang/String; method_54118 bD method_54118 + m ()Ljava/lang/String; method_54119 bE method_54119 + m ()Ljava/lang/String; method_54120 bF method_54120 + m ()Ljava/lang/String; method_54121 bG method_54121 + m ()Z method_59834 bH method_59834 + m ()Z method_1491 bI method_1491 + m ()V method_1572 bJ method_1572 + m ()Lcom/mojang/authlib/minecraft/UserApiService$UserProperties; method_55608 bK method_55608 + m ()Lcom/mojang/authlib/yggdrasil/ProfileResult; method_53464 bL method_53464 + m ()I method_16010 bM method_16010 + m ()Lnet/minecraft/client/CommandHistory; commandHistory ba method_52700 + m ()Lnet/minecraft/world/level/validation/DirectoryValidator; directoryValidator bb method_52702 + m ()Ljava/lang/String; getLauncherBrand bc method_54578 + m ()Ljava/lang/String; createTitle bd method_24287 + m ()V abortResourcePackRecovery be method_49294 + m ()V handleDelayedCrash bf method_54579 + m ()V selfTest bg method_17044 + m ()I getFramerateLimit bh method_16009 + m ()V emergencySave bi method_1519 + c Attempts to free as much memory as possible, including leaving the world and running the garbage collector. + m ()V debugClientMetricsStop bj method_37286 + m ()V debugClientMetricsCancel bk method_41733 + m ()Z startAttack bl method_1536 + m ()V startUseItem bm method_1583 + c Called when user clicked he's mouse right button (place) + m ()Z isLevelRunningNormally bn method_60647 + m ()Z isMultiplayerServer bo method_31321 + m ()V handleKeybinds bp method_1508 + m ()Lcom/mojang/authlib/minecraft/UserApiService$UserProperties; userProperties bq method_55607 + m ()V pickBlock br method_1511 + c Called when user clicked he's mouse middle button (pick block) + m ()Ljava/lang/String; method_60864 bs method_60864 + m ()Ljava/lang/String; method_37288 bt method_37288 + m ()Ljava/lang/String; method_37287 bu method_37287 + m ()Ljava/lang/String; method_37289 bv method_37289 + m ()Z isGameLoadFinished c method_53466 + m (I)Lnet/minecraft/server/level/progress/ChunkProgressListener; method_17533 c method_17533 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)Ljava/lang/Runnable; buildInitialScreens c method_53527 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_37278 c method_37278 + m (Lnet/minecraft/client/gui/screens/Screen;)V clearClientLevel c method_52703 + p 1 nextScreen + m (Lnet/minecraft/CrashReport;)V emergencySaveAndCrash c method_54580 + p 1 crashReport + m (Lnet/minecraft/network/chat/Component;)V method_1510 c method_1510 + m (Z)V runTick c method_1523 + p 1 renderLevel + m ()V updateTitle d method_24288 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_53528 d method_53528 + m (Lnet/minecraft/client/gui/screens/Screen;)V forceSetScreen d method_29970 + p 1 screen + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; fillReport d method_1587 + c Adds core server Info (GL version, Texture pack, isModded, type), and the worldInfo to the crash report. + p 1 theCrash + m (Lnet/minecraft/network/chat/Component;)V method_24229 d method_24229 + m (Z)V continueAttack d method_1590 + p 1 leftClick + m ()Lnet/minecraft/util/ModCheck; checkModStatus e method_24289 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_29338 e method_29338 + m (Lnet/minecraft/client/gui/screens/Screen;)V updateScreenAndTick e method_18098 + p 1 screen + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; method_43588 e method_43588 + m (Z)V method_44352 e method_44352 + m ()V run f method_1514 + m (Lnet/minecraft/client/gui/screens/Screen;)V method_53529 f method_53529 + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; method_43589 f method_43589 + m ()V updateFontOptions g method_57017 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getMainRenderTarget h method_1522 + m ()Ljava/lang/String; getLaunchedVersion i method_1515 + c Gets the version that Minecraft was launched under (the name of a version JSON). Specified via the --version flag. + m ()Ljava/lang/String; getVersionType j method_1547 + c Gets the type of version that Minecraft was launched under (as specified in the version JSON). Specified via the --versionType flag. + m ()Z isEnforceUnicode k method_1573 + m ()Ljava/util/concurrent/CompletableFuture; reloadResourcePacks l method_1521 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource; getLevelSource m method_1586 + c Returns the save loader that is currently being used + m ()V destroy n method_1490 + c Shuts down the minecraft applet by stopping the resource downloads, and clearing up GL stuff. Called when the application (or web page) is exited. + m ()I getFps o method_47599 + m ()J getFrameTimeNs p method_47600 + m ()V stop q method_1592 + c Called when the window is closing. Sets 'running' to false which allows the game loop to exit cleanly. + m ()Z isRunning r method_22108 + m ()Lnet/minecraft/client/sounds/MusicManager; getMusicManager s method_1538 + c Return the musicTicker's instance + m ()V tick t method_1574 + c Runs the current tick. + m ()Lnet/minecraft/client/telemetry/ClientTelemetryManager; getTelemetryManager u method_47601 + m ()D getGpuUtilization v method_41734 + m ()Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; getProfileKeyPairManager w method_43590 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldOpenFlows; createWorldOpenFlows x method_41735 + m ()V disconnect y method_18099 + m ()V clearDownloadedResourcePacks z method_55505 + m (Lnet/minecraft/client/main/GameConfig;)V + p 1 gameConfig + m ()V +c net/minecraft/client/Minecraft$1 fgo$1 net/minecraft/class_310$1 + f [I $SwitchMap$net$minecraft$world$phys$HitResult$Type a field_1778 + m ()V +c net/minecraft/client/Minecraft$ChatStatus fgo$a net/minecraft/class_310$class_5859 + f Lnet/minecraft/client/Minecraft$ChatStatus; ENABLED a field_28940 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_OPTIONS b field_28941 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_LAUNCHER c field_28942 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_PROFILE d field_28943 + f Lnet/minecraft/network/chat/Component; INFO_DISABLED_BY_PROFILE e field_39456 + f Lnet/minecraft/network/chat/Component; message f field_28944 + f [Lnet/minecraft/client/Minecraft$ChatStatus; $VALUES g field_28945 + m ()Lnet/minecraft/network/chat/Component; getMessage a method_33885 + m (Z)Z isChatAllowed a method_33886 + p 1 isLocalServer + m ()[Lnet/minecraft/client/Minecraft$ChatStatus; $values b method_36862 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V + p 3 message + m ()V +c net/minecraft/client/Minecraft$ChatStatus$1 fgo$a$1 net/minecraft/class_310$class_5859$1 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$2 fgo$a$2 net/minecraft/class_310$class_5859$2 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$3 fgo$a$3 net/minecraft/class_310$class_5859$3 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$4 fgo$a$4 net/minecraft/class_310$class_5859$4 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$GameLoadCookie fgo$b net/minecraft/class_310$class_8764 + f Lcom/mojang/realmsclient/client/RealmsClient; realmsClient a comp_1906 + f Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlayData b comp_1907 + m ()Lcom/mojang/realmsclient/client/RealmsClient; realmsClient a comp_1906 + m ()Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlayData b comp_1907 + m (Lcom/mojang/realmsclient/client/RealmsClient;Lnet/minecraft/client/main/GameConfig$QuickPlayData;)V +c net/minecraft/client/MouseHandler fgp net/minecraft/class_312 + f Lorg/slf4j/Logger; LOGGER a field_52126 + f Lnet/minecraft/client/Minecraft; minecraft b field_1779 + f Z isLeftPressed c field_1791 + f Z isMiddlePressed d field_1790 + f Z isRightPressed e field_1788 + f D xpos f field_1795 + f D ypos g field_1794 + f I fakeRightMouse h field_1781 + f I activeButton i field_1780 + f Z ignoreFirstMove j field_1784 + f I clickDepth k field_1796 + f D mousePressedTime l field_1792 + f Lnet/minecraft/util/SmoothDouble; smoothTurnX m field_1793 + f Lnet/minecraft/util/SmoothDouble; smoothTurnY n field_1782 + f D accumulatedDX o field_1789 + f D accumulatedDY p field_1787 + f D accumulatedScrollX q field_45296 + f D accumulatedScrollY r field_45297 + f D lastHandleMovementTime s field_47842 + f Z mouseGrabbed t field_1783 + m ()V handleAccumulatedMovement a method_55793 + m (D)V turnPlayer a method_1606 + p 1 movementTime + m (J)V setup a method_1607 + p 1 windowPointer + m (JDD)V onScroll a method_1598 + c Will be called when a scrolling device is used, such as a mouse wheel or scrolling area of a touchpad.\n\n@see GLFWScrollCallbackI + p 1 windowPointer + p 3 xOffset + p 5 yOffset + m (JIII)V onPress a method_1601 + c Will be called when a mouse button is pressed or released.\n\n@see GLFWMouseButtonCallbackI + p 1 windowPointer + p 3 button + p 4 action + p 5 modifiers + m (JIJ)V method_29615 a method_29615 + m (JLjava/util/List;I)V onDrop a method_29616 + p 1 windowPointer + p 3 files + p 4 failedFiles + m (Lnet/minecraft/client/gui/screens/Screen;DD)V method_55794 a method_55794 + m (Lnet/minecraft/client/gui/screens/Screen;DDDD)V method_55795 a method_55795 + m ([ZLnet/minecraft/client/gui/screens/Screen;DDI)V method_1605 a method_1605 + m ()Z isLeftPressed b method_1608 + m (JDD)V onMove b method_1600 + c Will be called when the cursor is moved.\n\n

The callback function receives the cursor position, measured in screen coordinates but relative to the top-left corner of the window client area. On platforms that provide it, the full sub-pixel cursor position is passed on.

\n\n@see GLFWCursorPosCallbackI + p 1 windowPointer + p 3 xpos + p 5 ypos + m (JIII)V method_22684 b method_22684 + m (JLjava/util/List;I)V method_29617 b method_29617 + m ([ZLnet/minecraft/client/gui/screens/Screen;DDI)V method_1611 b method_1611 + m ()Z isMiddlePressed c method_35707 + m (JDD)V method_22685 c method_22685 + m (JIII)V method_22686 c method_22686 + m ()Z isRightPressed d method_1609 + m (JDD)V method_22687 d method_22687 + m ()D xpos e method_1603 + m (JDD)V method_22688 e method_22688 + m ()D ypos f method_1604 + m (JDD)V method_22689 f method_22689 + m ()V setIgnoreFirstMove g method_1599 + m ()Z isMouseGrabbed h method_1613 + c Returns {@code true} if the mouse is grabbed. + m ()V grabMouse i method_1612 + c Will set the focus to ingame if the Minecraft window is the active with focus. Also clears any GUI screen currently displayed + m ()V releaseMouse j method_1610 + c Resets the player keystate, disables the ingame focus, and ungrabs the mouse cursor. + m ()V cursorEntered k method_30134 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/NarratorStatus fgq net/minecraft/class_4065 + f Lnet/minecraft/client/NarratorStatus; OFF a field_18176 + f Lnet/minecraft/client/NarratorStatus; ALL b field_18177 + f Lnet/minecraft/client/NarratorStatus; CHAT c field_18178 + f Lnet/minecraft/client/NarratorStatus; SYSTEM d field_18179 + f Ljava/util/function/IntFunction; BY_ID e field_18180 + f I id f field_18181 + f Lnet/minecraft/network/chat/Component; name g field_24212 + f [Lnet/minecraft/client/NarratorStatus; $VALUES h field_18183 + m ()I getId a method_18509 + m (I)Lnet/minecraft/client/NarratorStatus; byId a method_18510 + p 0 id + m ()Lnet/minecraft/network/chat/Component; getName b method_18511 + m ()Z shouldNarrateChat c method_44715 + m ()Z shouldNarrateSystem d method_44716 + m ()[Lnet/minecraft/client/NarratorStatus; $values e method_36864 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/client/OptionInstance fgr net/minecraft/class_7172 + f Lnet/minecraft/client/OptionInstance$Enum; BOOLEAN_VALUES a field_38278 + f Lnet/minecraft/client/OptionInstance$CaptionBasedToString; BOOLEAN_TO_STRING b field_41333 + f Lorg/slf4j/Logger; LOGGER c field_37862 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltip d field_37863 + f Ljava/util/function/Function; toString e field_37864 + f Lnet/minecraft/client/OptionInstance$ValueSet; values f field_37865 + f Lcom/mojang/serialization/Codec; codec g field_38279 + f Ljava/lang/Object; initialValue h field_37866 + f Ljava/util/function/Consumer; onValueUpdate i field_37867 + f Lnet/minecraft/network/chat/Component; caption j field_38280 + f Ljava/lang/Object; value k field_37868 + m ()Lnet/minecraft/client/OptionInstance$TooltipSupplier; noTooltip a method_42399 + m (Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; method_42715 a method_42715 + m (Lnet/minecraft/client/Options;)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_57701 + p 1 options + m (Lnet/minecraft/client/Options;III)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_18520 + p 1 options + p 2 x + p 3 y + p 4 width + m (Lnet/minecraft/client/Options;IIILjava/util/function/Consumer;)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_47603 + p 1 options + p 2 x + p 3 y + p 4 width + p 5 onValueChanged + m (Ljava/lang/Boolean;)V method_41752 a method_41752 + m (Ljava/lang/Object;)V set a method_41748 + p 1 value + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_47604 + p 0 caption + p 1 tooltip + p 2 valueStringifier + p 3 initialValue + p 4 onValueUpdate + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Z)Lnet/minecraft/client/OptionInstance; createBoolean a method_41749 + p 0 caption + p 1 tooltip + p 2 initialValue + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_41750 + p 0 caption + p 1 tooltip + p 2 initialValue + p 3 onValueUpdate + m (Ljava/lang/String;Z)Lnet/minecraft/client/OptionInstance; createBoolean a method_42402 + p 0 key + p 1 initialValue + m (Ljava/lang/String;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_41751 + p 0 key + p 1 initialValue + p 2 onValueUpdate + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/OptionInstance$TooltipSupplier; cachedConstantTooltip a method_42717 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/util/OptionEnum;)Lnet/minecraft/network/chat/Component; method_42718 a method_42718 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_47605 a method_47605 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_47393 a method_47393 + m ()Lnet/minecraft/client/OptionInstance$CaptionBasedToString; forOptionEnum b method_42720 + m (Ljava/lang/Boolean;)V method_42405 b method_42405 + m (Ljava/lang/Object;)Ljava/lang/Object; method_42403 b method_42403 + m ()Ljava/lang/Object; get c method_41753 + m (Ljava/lang/Object;)V method_47606 c method_47606 + m ()Lcom/mojang/serialization/Codec; codec d method_42404 + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_47394 d method_47394 + m ()Lnet/minecraft/client/OptionInstance$ValueSet; values e method_41754 + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Lnet/minecraft/client/OptionInstance$ValueSet;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 1 caption + p 2 tooltip + p 3 valueStringifier + p 4 values + p 5 initialValue + p 6 onValueUpdate + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Lnet/minecraft/client/OptionInstance$ValueSet;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 1 caption + p 2 tooltip + p 3 valueStringifier + p 4 values + p 5 codec + p 6 initialValue + p 7 onValueUpdate + m ()V +c net/minecraft/client/OptionInstance$AltEnum fgr$a net/minecraft/class_7172$class_7273 + f Ljava/util/List; values a comp_671 + f Ljava/util/List; altValues b comp_672 + f Ljava/util/function/BooleanSupplier; altCondition c comp_673 + f Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter; valueSetter d comp_674 + f Lcom/mojang/serialization/Codec; codec e comp_675 + m ()Ljava/util/List; values b comp_671 + m ()Ljava/util/List; altValues c comp_672 + m ()Ljava/util/function/BooleanSupplier; altCondition d comp_673 + m (Ljava/util/List;Ljava/util/List;Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$CaptionBasedToString fgr$b net/minecraft/class_7172$class_7303 +c net/minecraft/client/OptionInstance$ClampingLazyMaxIntRange fgr$c net/minecraft/class_7172$class_7304 + f I minInclusive a comp_593 + f Ljava/util/function/IntSupplier; maxSupplier b comp_690 + f I encodableMaxInclusive c comp_1316 + m (Ljava/lang/Integer;)Ljava/util/Optional; validateValue a method_42408 + p 1 value + m (Ljava/lang/Integer;I)Ljava/lang/String; method_49597 a method_49597 + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_42409 c method_42409 + m ()Ljava/util/function/IntSupplier; maxSupplier g comp_690 + m ()I encodableMaxInclusive h comp_1316 + m (ILjava/util/function/IntSupplier;I)V +c net/minecraft/client/OptionInstance$CycleableValueSet fgr$d net/minecraft/class_7172$class_7305 + m ()Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; valueListSupplier a method_42721 + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;IIILnet/minecraft/client/Options;Ljava/util/function/Consumer;Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; method_42723 a method_42723 + m (Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/Options;Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Object;)V method_42724 a method_42724 + m ()Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter; valueSetter e comp_674 +c net/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter fgr$d$a net/minecraft/class_7172$class_7305$class_7274 +c net/minecraft/client/OptionInstance$Enum fgr$e net/minecraft/class_7172$class_7173 + f Ljava/util/List; values a comp_592 + f Lcom/mojang/serialization/Codec; codec b comp_675 + m ()Ljava/util/List; values b comp_592 + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$IntRange fgr$f net/minecraft/class_7172$class_7174 + f I minInclusive a comp_593 + f I maxInclusive b comp_594 + f Z applyValueImmediately c comp_2661 + m (Ljava/lang/Integer;)Ljava/util/Optional; validateValue a method_41761 + p 1 value + m (II)V + p 1 minInclusive + p 2 maxInclusive + m (IIZ)V +c net/minecraft/client/OptionInstance$IntRangeBase fgr$g net/minecraft/class_7172$class_7275 + m (D)Ljava/lang/Integer; fromSliderValue a method_42412 + p 1 value + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)Lnet/minecraft/client/OptionInstance$SliderableValueSet; xmap a method_42414 + p 1 to + p 2 from + m ()I maxInclusive b comp_594 + m (Ljava/lang/Integer;)D toSliderValue b method_42415 + p 1 value + m ()I minInclusive d comp_593 +c net/minecraft/client/OptionInstance$IntRangeBase$1 fgr$g$1 net/minecraft/class_7172$class_7275$1 + f Ljava/util/function/ToIntFunction; val$from a field_37869 + f Ljava/util/function/IntFunction; val$to b field_37870 + f Lnet/minecraft/client/OptionInstance$IntRangeBase; field_37871 c field_37871 + m (Lnet/minecraft/client/OptionInstance$IntRangeBase;Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;)V +c net/minecraft/client/OptionInstance$LazyEnum fgr$h net/minecraft/class_7172$class_7276 + f Ljava/util/function/Supplier; values a comp_676 + f Ljava/util/function/Function; validateValue b comp_677 + f Lcom/mojang/serialization/Codec; codec c comp_675 + m ()Ljava/util/function/Supplier; values b comp_676 + m ()Ljava/util/function/Function; validateValue c comp_677 + m (Ljava/util/function/Supplier;Ljava/util/function/Function;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$OptionInstanceSliderButton fgr$i net/minecraft/class_7172$class_7175 + f Lnet/minecraft/client/OptionInstance; instance d field_37872 + f Lnet/minecraft/client/OptionInstance$SliderableValueSet; values e field_37873 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier f field_37874 + f Ljava/util/function/Consumer; onValueChanged m field_41334 + f Ljava/lang/Long; delayedApplyAt n field_51513 + f Z applyValueImmediately o field_51514 + m ()V applyUnsavedValue c method_59868 + m (Lnet/minecraft/client/Options;IIIILnet/minecraft/client/OptionInstance;Lnet/minecraft/client/OptionInstance$SliderableValueSet;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Ljava/util/function/Consumer;Z)V + p 1 options + p 2 x + p 3 y + p 4 width + p 5 height + p 6 instance + p 7 values + p 8 tooltipSupplier + p 9 onValueChanged + p 10 applyValueImmediately +c net/minecraft/client/OptionInstance$SliderableOrCyclableValueSet fgr$j net/minecraft/class_7172$class_7306 + m ()Z createCycleButton c method_42722 +c net/minecraft/client/OptionInstance$SliderableValueSet fgr$k net/minecraft/class_7172$class_7176 + m (Lnet/minecraft/client/Options;IIILnet/minecraft/client/OptionInstance$TooltipSupplier;Ljava/util/function/Consumer;Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; method_42725 a method_42725 + m ()Z applyValueImmediately aR_ comp_2661 + m (D)Ljava/lang/Object; fromSliderValue b method_41763 + p 1 value + m (Ljava/lang/Object;)D toSliderValue b method_41765 + p 1 value +c net/minecraft/client/OptionInstance$TooltipSupplier fgr$l net/minecraft/class_7172$class_7277 +c net/minecraft/client/OptionInstance$UnitDouble fgr$m net/minecraft/class_7172$class_7177 + f Lnet/minecraft/client/OptionInstance$UnitDouble; INSTANCE a field_37875 + f [Lnet/minecraft/client/OptionInstance$UnitDouble; $VALUES b field_37876 + m (D)Ljava/lang/Double; fromSliderValue a method_41768 + p 1 value + m (Ljava/lang/Boolean;)Ljava/lang/Double; method_42419 a method_42419 + m (Ljava/lang/Double;)Ljava/util/Optional; validateValue a method_41770 + p 1 value + m (Ljava/util/function/DoubleFunction;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/client/OptionInstance$SliderableValueSet; xmap a method_42420 + p 1 encoder + p 2 decoder + m ()[Lnet/minecraft/client/OptionInstance$UnitDouble; $values b method_41767 + m (Ljava/lang/Double;)D toSliderValue b method_41771 + p 1 value + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/OptionInstance$UnitDouble$1 fgr$m$1 net/minecraft/class_7172$class_7177$1 + f Ljava/util/function/ToDoubleFunction; val$from a field_38283 + f Ljava/util/function/DoubleFunction; val$to b field_38284 + f Lnet/minecraft/client/OptionInstance$UnitDouble; field_38285 c field_38285 + m (Lnet/minecraft/client/OptionInstance$UnitDouble;Ljava/util/function/ToDoubleFunction;Ljava/util/function/DoubleFunction;)V +c net/minecraft/client/OptionInstance$ValueSet fgr$n net/minecraft/class_7172$class_7178 + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/Options;IIILjava/util/function/Consumer;)Ljava/util/function/Function; createButton a method_41756 + p 1 tooltipSupplier + p 2 options + p 3 x + p 4 y + p 5 width + p 6 onValueChanged + m (Ljava/lang/Object;)Ljava/util/Optional; validateValue a method_41758 + p 1 value + m ()Lcom/mojang/serialization/Codec; codec f comp_675 +c net/minecraft/client/Options fgs net/minecraft/class_315 + f Lnet/minecraft/client/KeyMapping; keyJump A field_1903 + f Lnet/minecraft/client/KeyMapping; keyShift B field_1832 + f Lnet/minecraft/client/KeyMapping; keySprint C field_1867 + f Lnet/minecraft/client/KeyMapping; keyInventory D field_1822 + f Lnet/minecraft/client/KeyMapping; keySwapOffhand E field_1831 + f Lnet/minecraft/client/KeyMapping; keyDrop F field_1869 + f Lnet/minecraft/client/KeyMapping; keyUse G field_1904 + f Lnet/minecraft/client/KeyMapping; keyAttack H field_1886 + f Lnet/minecraft/client/KeyMapping; keyPickItem I field_1871 + f Lnet/minecraft/client/KeyMapping; keyChat J field_1890 + f Lnet/minecraft/client/KeyMapping; keyPlayerList K field_1907 + f Lnet/minecraft/client/KeyMapping; keyCommand L field_1845 + f Lnet/minecraft/client/KeyMapping; keySocialInteractions M field_26845 + f Lnet/minecraft/client/KeyMapping; keyScreenshot N field_1835 + f Lnet/minecraft/client/KeyMapping; keyTogglePerspective O field_1824 + f Lnet/minecraft/client/KeyMapping; keySmoothCamera P field_1816 + f Lnet/minecraft/client/KeyMapping; keyFullscreen Q field_1836 + f Lnet/minecraft/client/KeyMapping; keySpectatorOutlines R field_1906 + f Lnet/minecraft/client/KeyMapping; keyAdvancements S field_1844 + f [Lnet/minecraft/client/KeyMapping; keyHotbarSlots T field_1852 + f Lnet/minecraft/client/KeyMapping; keySaveHotbarActivator U field_1879 + f Lnet/minecraft/client/KeyMapping; keyLoadHotbarActivator V field_1874 + f [Lnet/minecraft/client/KeyMapping; keyMappings W field_1839 + f Lnet/minecraft/client/Minecraft; minecraft X field_1863 + f Z hideGui Y field_1842 + f Ljava/lang/String; lastMpIp Z field_1864 + f Lnet/minecraft/client/OptionInstance; ambientOcclusion aA field_1841 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_NONE aB field_37880 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_PLAYER_AFFECTED aC field_37881 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_NEARBY aD field_37882 + f Lnet/minecraft/client/OptionInstance; prioritizeChunkUpdates aE field_34787 + f Lnet/minecraft/client/OptionInstance; chatVisibility aF field_1877 + f Lnet/minecraft/client/OptionInstance; chatOpacity aG field_1820 + f Lnet/minecraft/client/OptionInstance; chatLineSpacing aH field_23932 + f I RENDER_DISTANCE_TINY a field_32149 + f Lnet/minecraft/network/chat/Component; MENU_BACKGROUND_BLURRINESS_TOOLTIP aI field_49474 + f I BLURRINESS_DEFAULT_VALUE aJ field_49475 + f Lnet/minecraft/client/OptionInstance; menuBackgroundBlurriness aK field_49476 + f Lnet/minecraft/client/OptionInstance; textBackgroundOpacity aL field_18726 + f Lnet/minecraft/client/OptionInstance; panoramaSpeed aM field_40382 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_CONTRAST_MODE aN field_43043 + f Lnet/minecraft/client/OptionInstance; highContrast aO field_43044 + f Lnet/minecraft/client/OptionInstance; narratorHotkey aP field_45987 + f Ljava/util/Set; modelParts aQ field_1892 + f Lnet/minecraft/client/OptionInstance; mainHand aR field_1829 + f Lnet/minecraft/client/OptionInstance; chatScale aS field_1908 + f Lnet/minecraft/client/OptionInstance; chatWidth aT field_1915 + f Lnet/minecraft/client/OptionInstance; chatHeightUnfocused aU field_1825 + f Lnet/minecraft/client/OptionInstance; chatHeightFocused aV field_1838 + f Lnet/minecraft/client/OptionInstance; chatDelay aW field_23933 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_NOTIFICATION_DISPLAY_TIME aX field_41783 + f Lnet/minecraft/client/OptionInstance; notificationDisplayTime aY field_41784 + f Lnet/minecraft/client/OptionInstance; mipmapLevels aZ field_1856 + f Z smoothCamera aa field_1914 + f I AUTO_GUI_SCALE ab field_43405 + f Ljava/lang/String; languageCode ac field_1883 + f Z onboardAccessibility ad field_41785 + f Z syncWrites ae field_25623 + f Lorg/slf4j/Logger; LOGGER af field_1834 + f Lcom/google/gson/Gson; GSON ag field_1823 + f Lcom/google/gson/reflect/TypeToken; LIST_OF_STRINGS_TYPE ah field_1859 + f Lcom/google/common/base/Splitter; OPTION_SPLITTER ai field_1853 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DARK_MOJANG_BACKGROUND aj field_37878 + f Lnet/minecraft/client/OptionInstance; darkMojangStudiosBackground ak field_32156 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_HIDE_LIGHTNING_FLASHES al field_37879 + f Lnet/minecraft/client/OptionInstance; hideLightningFlash am field_34786 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_HIDE_SPLASH_TEXTS an field_46854 + f Lnet/minecraft/client/OptionInstance; hideSplashTexts ao field_46855 + f Lnet/minecraft/client/OptionInstance; sensitivity ap field_1843 + f Lnet/minecraft/client/OptionInstance; renderDistance aq field_1870 + f Lnet/minecraft/client/OptionInstance; simulationDistance ar field_34959 + f I serverRenderDistance as field_34784 + f Lnet/minecraft/client/OptionInstance; entityDistanceScaling at field_24214 + f Lnet/minecraft/client/OptionInstance; framerateLimit au field_1909 + f Lnet/minecraft/client/OptionInstance; cloudStatus av field_1814 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FAST aw field_38289 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FABULOUS ax field_38286 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FANCY ay field_38287 + f Lnet/minecraft/client/OptionInstance; graphicsMode az field_25444 + f Lnet/minecraft/client/OptionInstance; backgroundForChatOnly bA field_18725 + f Lnet/minecraft/client/OptionInstance; touchscreen bB field_1854 + f Lnet/minecraft/client/OptionInstance; fullscreen bC field_1857 + f Lnet/minecraft/client/OptionInstance; bobView bD field_1891 + f Lnet/minecraft/network/chat/Component; MOVEMENT_TOGGLE bE field_38297 + f Lnet/minecraft/network/chat/Component; MOVEMENT_HOLD bF field_38298 + f Lnet/minecraft/client/OptionInstance; toggleCrouch bG field_21332 + f Lnet/minecraft/client/OptionInstance; toggleSprint bH field_21333 + f I RENDER_DISTANCE_SHORT b field_32150 + f Lnet/minecraft/network/chat/Component; CHAT_TOOLTIP_HIDE_MATCHED_NAMES bI field_38299 + f Lnet/minecraft/client/OptionInstance; hideMatchedNames bJ field_26926 + f Lnet/minecraft/client/OptionInstance; showAutosaveIndicator bK field_35426 + f Lnet/minecraft/network/chat/Component; CHAT_TOOLTIP_ONLY_SHOW_SECURE bL field_39320 + f Lnet/minecraft/client/OptionInstance; onlyShowSecureChat bM field_39321 + f Ljava/io/File; optionsFile bN field_1897 + f Lnet/minecraft/client/CameraType; cameraType bO field_26677 + f Lnet/minecraft/client/OptionInstance; fov bP field_1826 + f Lnet/minecraft/network/chat/Component; TELEMETRY_TOOLTIP bQ field_41335 + f Lnet/minecraft/client/OptionInstance; telemetryOptInExtra bR field_41336 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_SCREEN_EFFECT bS field_38290 + f Lnet/minecraft/client/OptionInstance; screenEffectScale bT field_26675 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_FOV_EFFECT bU field_38291 + f Lnet/minecraft/client/OptionInstance; fovEffectScale bV field_26676 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DARKNESS_EFFECT bW field_38292 + f Lnet/minecraft/client/OptionInstance; darknessEffectScale bX field_38293 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_GLINT_SPEED bY field_42112 + f Lnet/minecraft/client/OptionInstance; glintSpeed bZ field_42113 + f Lnet/minecraft/client/OptionInstance; attackIndicator ba field_1895 + f Lnet/minecraft/client/OptionInstance; biomeBlendRadius bb field_1878 + f Lnet/minecraft/client/OptionInstance; mouseWheelSensitivity bc field_1889 + f Lnet/minecraft/client/OptionInstance; rawMouseInput bd field_20308 + f Lnet/minecraft/client/OptionInstance; autoJump be field_1848 + f Lnet/minecraft/client/OptionInstance; operatorItemsTab bf field_41094 + f Lnet/minecraft/client/OptionInstance; autoSuggestions bg field_1873 + f Lnet/minecraft/client/OptionInstance; chatColors bh field_1900 + f Lnet/minecraft/client/OptionInstance; chatLinks bi field_1911 + f Lnet/minecraft/client/OptionInstance; chatLinksPrompt bj field_1817 + f Lnet/minecraft/client/OptionInstance; enableVsync bk field_1884 + f Lnet/minecraft/client/OptionInstance; entityShadows bl field_1888 + f Lnet/minecraft/client/OptionInstance; forceUnicodeFont bm field_1819 + f Lnet/minecraft/client/OptionInstance; japaneseGlyphVariants bn field_49105 + f Lnet/minecraft/client/OptionInstance; invertYMouse bo field_1865 + f Lnet/minecraft/client/OptionInstance; discreteMouseScroll bp field_19244 + f Lnet/minecraft/network/chat/Component; REALMS_NOTIFICATIONS_TOOLTIP bq field_52127 + f Lnet/minecraft/client/OptionInstance; realmsNotifications br field_1830 + f Lnet/minecraft/network/chat/Component; ALLOW_SERVER_LISTING_TOOLTIP bs field_38294 + f Lnet/minecraft/client/OptionInstance; allowServerListing bt field_35637 + f Lnet/minecraft/client/OptionInstance; reducedDebugInfo bu field_1910 + f Ljava/util/Map; soundSourceVolumes bv field_1916 + f Lnet/minecraft/client/OptionInstance; showSubtitles bw field_1818 + f Lnet/minecraft/network/chat/Component; DIRECTIONAL_AUDIO_TOOLTIP_ON bx field_38295 + f Lnet/minecraft/network/chat/Component; DIRECTIONAL_AUDIO_TOOLTIP_OFF by field_38296 + f Lnet/minecraft/client/OptionInstance; directionalAudio bz field_37877 + f I RENDER_DISTANCE_NORMAL c field_32152 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_GLINT_STRENGTH ca field_42114 + f Lnet/minecraft/client/OptionInstance; glintStrength cb field_42115 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DAMAGE_TILT_STRENGTH cc field_42481 + f Lnet/minecraft/client/OptionInstance; damageTiltStrength cd field_42482 + f Lnet/minecraft/client/OptionInstance; gamma ce field_1840 + f I MAX_GUI_SCALE_INCLUSIVE cf field_43110 + f Lnet/minecraft/client/OptionInstance; guiScale cg field_1868 + f Lnet/minecraft/client/OptionInstance; particles ch field_1882 + f Lnet/minecraft/client/OptionInstance; narrator ci field_1896 + f Lnet/minecraft/client/OptionInstance; soundDevice cj field_34783 + f I RENDER_DISTANCE_FAR d field_32153 + f I RENDER_DISTANCE_REALLY_FAR e field_32154 + f I RENDER_DISTANCE_EXTREME f field_32155 + f Ljava/lang/String; DEFAULT_SOUND_DEVICE g field_34785 + f I UNLIMITED_FRAMERATE_CUTOFF h field_38300 + f Ljava/util/List; resourcePacks i field_1887 + f Ljava/util/List; incompatibleResourcePacks j field_1846 + f Ljava/lang/String; fullscreenVideoModeString k field_1828 + f Z hideServerAddress l field_1815 + f Z advancedItemTooltips m field_1827 + f Z pauseOnLostFocus n field_1837 + f I overrideWidth o field_1872 + f I overrideHeight p field_1885 + f Z useNativeTransport q field_1876 + f Lnet/minecraft/client/tutorial/TutorialSteps; tutorialStep r field_1875 + f Z joinedFirstServer s field_26844 + f Z hideBundleTutorial t field_28777 + f I glDebugVerbosity u field_1901 + f Z skipMultiplayerWarning v field_21840 + f Lnet/minecraft/client/KeyMapping; keyUp w field_1894 + f Lnet/minecraft/client/KeyMapping; keyLeft x field_1913 + f Lnet/minecraft/client/KeyMapping; keyDown y field_1881 + f Lnet/minecraft/client/KeyMapping; keyRight z field_1849 + m ()Lnet/minecraft/client/OptionInstance; chatDelay A method_42561 + m ()Lnet/minecraft/client/OptionInstance; notificationDisplayTime B method_48191 + m ()Lnet/minecraft/client/OptionInstance; mipmapLevels C method_42563 + m ()Lnet/minecraft/client/OptionInstance; attackIndicator D method_42565 + m ()Lnet/minecraft/client/OptionInstance; biomeBlendRadius E method_41805 + m ()Lnet/minecraft/client/OptionInstance; mouseWheelSensitivity F method_41806 + m ()Lnet/minecraft/client/OptionInstance; rawMouseInput G method_41807 + m ()Lnet/minecraft/client/OptionInstance; autoJump H method_42423 + m ()Lnet/minecraft/client/OptionInstance; operatorItemsTab I method_47395 + m ()Lnet/minecraft/client/OptionInstance; autoSuggestions J method_42425 + m ()Lnet/minecraft/client/OptionInstance; chatColors K method_42427 + m ()Lnet/minecraft/client/OptionInstance; chatLinks L method_42429 + m ()Lnet/minecraft/client/OptionInstance; chatLinksPrompt M method_42431 + m ()Lnet/minecraft/client/OptionInstance; enableVsync N method_42433 + m ()Lnet/minecraft/client/OptionInstance; entityShadows O method_42435 + m ()Lnet/minecraft/client/OptionInstance; forceUnicodeFont P method_42437 + m ()Lnet/minecraft/client/OptionInstance; japaneseGlyphVariants Q method_57018 + m ()Lnet/minecraft/client/OptionInstance; invertYMouse R method_42438 + m ()Lnet/minecraft/client/OptionInstance; discreteMouseScroll S method_42439 + m ()Lnet/minecraft/client/OptionInstance; realmsNotifications T method_42440 + m ()Lnet/minecraft/client/OptionInstance; allowServerListing U method_42441 + m ()Lnet/minecraft/client/OptionInstance; reducedDebugInfo V method_42442 + m ()Lnet/minecraft/client/OptionInstance; showSubtitles W method_42443 + m ()Lnet/minecraft/client/OptionInstance; directionalAudio X method_42444 + m ()Lnet/minecraft/client/OptionInstance; backgroundForChatOnly Y method_42445 + m ()Lnet/minecraft/client/OptionInstance; touchscreen Z method_42446 + m ()Lnet/minecraft/client/OptionInstance; darkMojangStudiosBackground a method_41772 + m (D)I unlogMouse a method_41773 + p 0 input + m (F)F getBackgroundOpacity a method_19343 + p 1 opacity + m (I)I getBackgroundColor a method_19344 + p 1 chatColor + m (Lnet/minecraft/server/packs/repository/PackRepository;)V updateResourcePacks a method_49598 + p 1 packRepository + m (Lnet/minecraft/sounds/SoundSource;)F getSoundSourceVolume a method_1630 + p 1 category + m (Lnet/minecraft/sounds/SoundSource;Ljava/lang/Double;)V method_45575 a method_45575 + m (Lnet/minecraft/world/entity/HumanoidArm;)V method_42455 a method_42455 + m (Lnet/minecraft/world/entity/player/ChatVisiblity;)V method_42456 a method_42456 + m (Lnet/minecraft/world/entity/player/PlayerModelPart;)Z isModelPartEnabled a method_32594 + p 1 playerModelPart + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Z)V toggleModelPart a method_1631 + p 1 playerModelPart + p 2 enable + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/String; method_37293 a method_37293 + m (Lnet/minecraft/client/AttackIndicatorStatus;)V method_42458 a method_42458 + m (Lnet/minecraft/client/CameraType;)V setCameraType a method_31043 + p 1 pointOfView + m (Lnet/minecraft/client/CloudStatus;)V method_42459 a method_42459 + m (Lnet/minecraft/client/GraphicsStatus;)V method_42460 a method_42460 + m (Lnet/minecraft/client/KeyMapping;Lcom/mojang/blaze3d/platform/InputConstants$Key;)V setKey a method_1641 + p 1 keyBinding + p 2 input + m (Lnet/minecraft/client/NarratorStatus;)V method_42463 a method_42463 + m (Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/GraphicsStatus;)V method_42464 a method_42464 + m (Lnet/minecraft/client/Options$FieldAccess;)V processOptions a method_33666 + p 1 accessor + m (Lnet/minecraft/client/Options$OptionAccess;)V processDumpedOptions a method_57019 + p 1 optionAccess + m (Lnet/minecraft/client/ParticleStatus;)V method_42465 a method_42465 + m (Lnet/minecraft/client/PrioritizeChunkUpdates;)V method_41776 a method_41776 + m (Ljava/lang/Boolean;)V method_47607 a method_47607 + m (Ljava/lang/Double;)V method_42467 a method_42467 + m (Ljava/lang/Integer;)V method_42468 a method_42468 + m (Ljava/lang/String;)Z isTrue a method_32595 + p 0 value + m (Ljava/lang/String;Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; createSoundSliderOptionInstance a method_45576 + p 1 text + p 2 soundSource + m (Ljava/util/EnumMap;)V method_45577 a method_45577 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; dataFix a method_1626 + p 1 nbt + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)V method_24230 a method_24230 + m (Lnet/minecraft/network/chat/Component;D)Lnet/minecraft/network/chat/Component; percentValueLabel a method_41781 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; genericValueLabel a method_41782 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/GraphicsStatus;)Lnet/minecraft/network/chat/Component; method_42497 a method_42497 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/NarratorStatus;)Lnet/minecraft/network/chat/Component; method_42489 a method_42489 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_47608 a method_47608 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42492 a method_42492 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42493 a method_42493 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_42523 a method_42523 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; genericValueLabel a method_41783 + p 0 text + p 1 value + m ()Z useNativeTransport aA method_1639 + c Returns {@code true} if the client connect to a server using the native transport system. + m ()Lnet/minecraft/client/CameraType; getCameraType aB method_31044 + m ()Ljava/io/File; getFile aC method_37294 + m ()Ljava/lang/String; dumpOptionsForReport aD method_37295 + m ()I getEffectiveRenderDistance aE method_38521 + m ()V updateFontOptions aF method_57020 + m ()Z japaneseGlyphVariantsDefault aG method_57021 + m ()Ljava/util/List; method_42478 aH method_42478 + m ()I method_42479 aI method_42479 + m ()Z method_42480 aJ method_42480 + m ()Lnet/minecraft/client/OptionInstance; fullscreen aa method_42447 + m ()Lnet/minecraft/client/OptionInstance; bobView ab method_42448 + m ()Lnet/minecraft/client/OptionInstance; toggleCrouch ac method_42449 + m ()Lnet/minecraft/client/OptionInstance; toggleSprint ad method_42450 + m ()Lnet/minecraft/client/OptionInstance; hideMatchedNames ae method_42451 + m ()Lnet/minecraft/client/OptionInstance; showAutosaveIndicator af method_42452 + m ()Lnet/minecraft/client/OptionInstance; onlyShowSecureChat ag method_44026 + m ()Lnet/minecraft/client/OptionInstance; fov ah method_41808 + m ()Lnet/minecraft/client/OptionInstance; telemetryOptInExtra ai method_47609 + m ()Lnet/minecraft/client/OptionInstance; screenEffectScale aj method_42453 + m ()Lnet/minecraft/client/OptionInstance; fovEffectScale ak method_42454 + m ()Lnet/minecraft/client/OptionInstance; darknessEffectScale al method_42472 + m ()Lnet/minecraft/client/OptionInstance; glintSpeed am method_48580 + m ()Lnet/minecraft/client/OptionInstance; glintStrength an method_48581 + m ()Lnet/minecraft/client/OptionInstance; damageTiltStrength ao method_48974 + m ()Lnet/minecraft/client/OptionInstance; gamma ap method_42473 + m ()Lnet/minecraft/client/OptionInstance; guiScale aq method_42474 + m ()Lnet/minecraft/client/OptionInstance; particles ar method_42475 + m ()Lnet/minecraft/client/OptionInstance; narrator as method_42476 + m ()Lnet/minecraft/client/OptionInstance; soundDevice at method_42477 + m ()V onboardingAccessibilityFinished au method_61127 + m ()V load av method_1636 + c Loads the options from the options file. It appears that this has replaced the previous 'loadOptions' + m ()V save aw method_1640 + c Saves the options to the options file. + m ()Lnet/minecraft/server/level/ClientInformation; buildPlayerInformation ax method_53842 + m ()V broadcastOptions ay method_1643 + c Send a client info packet with settings information to the server + m ()Lnet/minecraft/client/CloudStatus; getCloudsType az method_1632 + m ()Lnet/minecraft/client/OptionInstance; hideLightningFlash b method_41784 + m (F)I getBackgroundColor b method_19345 + p 1 opacity + m (I)V setServerRenderDistance b method_38520 + p 1 serverRenderDistance + m (Lnet/minecraft/server/packs/repository/PackRepository;)V loadSelectedResourcePacks b method_1627 + p 1 resourcePackList + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; getSoundSourceOptionInstance b method_45578 + p 1 soundSource + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Z)V setModelPart b method_1635 + p 1 modelPart + p 2 enable + m (Lnet/minecraft/client/GraphicsStatus;)Z method_42486 b method_42486 + m (Lnet/minecraft/client/PrioritizeChunkUpdates;)Lnet/minecraft/client/gui/components/Tooltip; method_47396 b method_47396 + m (Ljava/lang/Boolean;)V method_42466 b method_42466 + m (Ljava/lang/Double;)V method_48975 b method_48975 + m (Ljava/lang/Integer;)V method_42502 b method_42502 + m (Ljava/lang/String;)Z isFalse b method_32596 + p 0 value + m (Lnet/minecraft/network/chat/Component;D)Lnet/minecraft/network/chat/Component; percentValueOrOffLabel b method_59835 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; genericValueOrOffLabel b method_60648 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42491 b method_42491 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41788 b method_41788 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42508 b method_42508 + m ()Lnet/minecraft/client/OptionInstance; hideSplashTexts c method_54581 + m (I)D logMouse c method_41793 + p 0 input + m (Lnet/minecraft/client/GraphicsStatus;)Lnet/minecraft/client/gui/components/Tooltip; method_47397 c method_47397 + m (Ljava/lang/Boolean;)V method_42520 c method_42520 + m (Ljava/lang/Double;)V method_48582 c method_48582 + m (Ljava/lang/Integer;)V method_42515 c method_42515 + m (Ljava/lang/String;)Ljava/util/List; readListOfStrings c method_33671 + p 0 json + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; pixelValueLabel c method_41791 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42506 c method_42506 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_48189 c method_48189 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42522 c method_42522 + m ()Lnet/minecraft/client/OptionInstance; sensitivity d method_42495 + m (I)Ljava/lang/Double; method_48187 d method_48187 + m (Ljava/lang/Boolean;)V method_42513 d method_42513 + m (Ljava/lang/Double;)V method_42501 d method_42501 + m (Ljava/lang/Integer;)V method_41779 d method_41779 + m (Ljava/lang/String;)V method_42509 d method_42509 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42525 d method_42525 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42548 d method_42548 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_41789 d method_41789 + m ()Lnet/minecraft/client/OptionInstance; renderDistance e method_42503 + m (I)Ljava/lang/Double; method_42504 e method_42504 + m (Ljava/lang/Boolean;)V method_42500 e method_42500 + m (Ljava/lang/Double;)V method_42514 e method_42514 + m (Ljava/lang/Integer;)Ljava/lang/Double; method_42532 e method_42532 + m (Ljava/lang/String;)Ljava/util/Optional; method_42516 e method_42516 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41799 e method_41799 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_41800 e method_41800 + m ()Lnet/minecraft/client/OptionInstance; simulationDistance f method_42510 + m (I)Ljava/lang/Integer; method_42511 f method_42511 + m (Ljava/lang/Boolean;)V method_42530 f method_42530 + m (Ljava/lang/Double;)V method_42526 f method_42526 + m (Ljava/lang/Integer;)V method_41797 f method_41797 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41804 f method_41804 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42545 f method_42545 + m ()Lnet/minecraft/client/OptionInstance; entityDistanceScaling g method_42517 + m (I)Ljava/lang/Double; method_42518 g method_42518 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_47398 g method_47398 + m (Ljava/lang/Double;)Ljava/lang/Integer; method_42536 g method_42536 + m (Ljava/lang/Integer;)V method_42541 g method_42541 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42560 g method_42560 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42559 g method_42559 + m ()Lnet/minecraft/client/OptionInstance; framerateLimit h method_42524 + m (Ljava/lang/Boolean;)V method_42535 h method_42535 + m (Ljava/lang/Double;)V method_41778 h method_41778 + m (Ljava/lang/Integer;)V method_57704 h method_57704 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42564 h method_42564 + m ()Lnet/minecraft/client/OptionInstance; cloudStatus i method_42528 + m (Ljava/lang/Boolean;)V method_57022 i method_57022 + m (Ljava/lang/Double;)V method_48188 i method_48188 + m (Ljava/lang/Integer;)V method_42555 i method_42555 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42432 i method_42432 + m ()Lnet/minecraft/client/OptionInstance; graphicsMode j method_42534 + m (Ljava/lang/Boolean;)V method_42537 j method_42537 + m (Ljava/lang/Double;)I method_48190 j method_48190 + m (Ljava/lang/Integer;)I method_42557 j method_42557 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42436 j method_42436 + m ()Lnet/minecraft/client/OptionInstance; ambientOcclusion k method_41792 + m (Ljava/lang/Boolean;)V method_42538 k method_42538 + m (Ljava/lang/Double;)V method_42540 k method_42540 + m ()Lnet/minecraft/client/OptionInstance; prioritizeChunkUpdates l method_41798 + m (Ljava/lang/Boolean;)V method_41777 l method_41777 + m (Ljava/lang/Double;)I method_42544 l method_42544 + m ()Lnet/minecraft/client/OptionInstance; chatVisibility m method_42539 + m (Ljava/lang/Boolean;)V method_49599 m method_49599 + m (Ljava/lang/Double;)V method_41796 m method_41796 + m ()Lnet/minecraft/client/OptionInstance; chatOpacity n method_42542 + m (Ljava/lang/Boolean;)V method_47999 n method_47999 + m (Ljava/lang/Double;)V method_41802 n method_41802 + m ()Lnet/minecraft/client/OptionInstance; chatLineSpacing o method_42546 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/CloudStatus; method_52704 o method_52704 + m (Ljava/lang/Double;)V method_42558 o method_42558 + m ()Lnet/minecraft/client/OptionInstance; menuBackgroundBlurriness p method_57702 + m (Ljava/lang/Double;)V method_42562 p method_42562 + m ()I getMenuBackgroundBlurriness q method_57703 + m (Ljava/lang/Double;)V method_45580 q method_45580 + m ()Lnet/minecraft/client/OptionInstance; textBackgroundOpacity r method_42550 + m (Ljava/lang/Double;)V method_42566 r method_42566 + m ()Lnet/minecraft/client/OptionInstance; panoramaSpeed s method_45581 + m (Ljava/lang/Double;)V method_42568 s method_42568 + m ()Lnet/minecraft/client/OptionInstance; highContrast t method_49600 + m (Ljava/lang/Double;)V method_42424 t method_42424 + m ()Lnet/minecraft/client/OptionInstance; narratorHotkey u method_53530 + m (Ljava/lang/Double;)V method_42428 u method_42428 + m ()Lnet/minecraft/client/OptionInstance; mainHand v method_42552 + m (Ljava/lang/Double;)I method_42430 v method_42430 + m ()Lnet/minecraft/client/OptionInstance; chatScale w method_42554 + m (Ljava/lang/Double;)V method_42434 w method_42434 + m ()Lnet/minecraft/client/OptionInstance; chatWidth x method_42556 + m ()Lnet/minecraft/client/OptionInstance; chatHeightUnfocused y method_41801 + m ()Lnet/minecraft/client/OptionInstance; chatHeightFocused z method_41803 + m (Lnet/minecraft/client/Minecraft;Ljava/io/File;)V + p 1 minecraft + p 2 gameDirectory + m ()V +c net/minecraft/client/Options$1 fgs$1 net/minecraft/class_315$1 + m ()V +c net/minecraft/client/Options$2 fgs$2 net/minecraft/class_315$2 + f Lnet/minecraft/nbt/CompoundTag; val$options a field_28778 + m (Ljava/lang/String;)Ljava/lang/String; getValueOrNull a method_33676 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance;Lcom/mojang/serialization/DataResult$Error;)V method_42571 a method_42571 + m (Lnet/minecraft/client/Options;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/client/Options$3 fgs$3 net/minecraft/class_315$3 + f Ljava/io/PrintWriter; val$writer a field_28780 + m (Lnet/minecraft/client/OptionInstance;Lcom/mojang/serialization/DataResult$Error;)V method_42572 a method_42572 + m (Ljava/lang/String;)V writePrefix a method_33677 + p 1 prefix + m (Ljava/lang/String;Ljava/io/PrintWriter;Lcom/google/gson/JsonElement;)V method_42573 a method_42573 + m (Lnet/minecraft/client/Options;Ljava/io/PrintWriter;)V +c net/minecraft/client/Options$4 fgs$4 net/minecraft/class_315$4 + f Ljava/util/List; val$optionsForReport a field_49106 + m (Lnet/minecraft/client/Options;Ljava/util/List;)V +c net/minecraft/client/Options$5 fgs$5 net/minecraft/class_315$5 + f [I $SwitchMap$net$minecraft$client$PrioritizeChunkUpdates a field_37883 + f [I $SwitchMap$net$minecraft$client$GraphicsStatus b field_38301 + m ()V +c net/minecraft/client/Options$FieldAccess fgs$a net/minecraft/class_315$class_5823 + m (Ljava/lang/String;F)F process a method_33679 + p 1 name + p 2 value + m (Ljava/lang/String;I)I process a method_33680 + p 1 name + p 2 value + m (Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/lang/Object; process a method_33681 + p 1 name + p 2 value + p 3 stringValuefier + p 4 valueStringifier + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; process a method_33683 + p 1 name + p 2 value + m (Ljava/lang/String;Z)Z process a method_33684 + p 1 name + p 2 value +c net/minecraft/client/Options$OptionAccess fgs$b net/minecraft/class_315$class_9242 + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance;)V process a method_42570 + p 1 name + p 2 value +c net/minecraft/client/ParticleStatus fgt net/minecraft/class_4066 + f Lnet/minecraft/client/ParticleStatus; ALL a field_18197 + f Lnet/minecraft/client/ParticleStatus; DECREASED b field_18198 + f Lnet/minecraft/client/ParticleStatus; MINIMAL c field_18199 + f Ljava/util/function/IntFunction; BY_ID d field_18200 + f I id e field_18201 + f Ljava/lang/String; key f field_18202 + f [Lnet/minecraft/client/ParticleStatus; $VALUES g field_18203 + m (I)Lnet/minecraft/client/ParticleStatus; byId a method_18608 + p 0 id + m ()[Lnet/minecraft/client/ParticleStatus; $values c method_36865 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/PeriodicNotificationManager fgu net/minecraft/class_6877 + f Lcom/mojang/serialization/Codec; CODEC a field_36435 + f Lorg/slf4j/Logger; LOGGER b field_36436 + f Lnet/minecraft/resources/ResourceLocation; notifications c field_36437 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction; selector d field_36438 + f Ljava/util/Timer; timer e field_36439 + f Lnet/minecraft/client/PeriodicNotificationManager$NotificationTask; notificationTask f field_36440 + m ()V stopTimer a method_40190 + m (JLnet/minecraft/client/PeriodicNotificationManager$Notification;)J method_40191 a method_40191 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/Map; prepare a method_40192 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40193 a method_40193 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;)J method_40194 a method_40194 + m (Ljava/util/List;)J calculateInitialDelay a method_40195 + p 1 notifications + m (Ljava/util/List;J)J calculateOptimalPeriod a method_40196 + p 1 notifications + p 2 delay + m (Ljava/util/Map$Entry;)Z method_40197 a method_40197 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_40198 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/lang/IllegalStateException; method_40199 b method_40199 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;)Z method_40200 b method_40200 + m (Lnet/minecraft/resources/ResourceLocation;Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction;)V + p 1 notifications + p 2 selector + m ()V +c net/minecraft/client/PeriodicNotificationManager$Notification fgu$a net/minecraft/class_6877$class_6878 + f J delay a comp_345 + f J period b comp_346 + f Ljava/lang/String; title c comp_347 + f Ljava/lang/String; message d comp_348 + m ()J delay a comp_345 + m ()J period b comp_346 + m ()Ljava/lang/String; title c comp_347 + m ()Ljava/lang/String; message d comp_348 + m (JJLjava/lang/String;Ljava/lang/String;)V + p 1 delay + p 3 period + p 5 title + p 6 message +c net/minecraft/client/PeriodicNotificationManager$NotificationTask fgu$b net/minecraft/class_6877$class_6879 + f Lnet/minecraft/client/Minecraft; minecraft a field_36441 + f Ljava/util/List; notifications b field_36442 + f J period c field_36443 + f Ljava/util/concurrent/atomic/AtomicLong; elapsed d field_36444 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;J)V method_40201 a method_40201 + m (Ljava/util/List;J)Lnet/minecraft/client/PeriodicNotificationManager$NotificationTask; reset a method_40202 + p 1 notifications + p 2 period + m (Ljava/util/List;JJ)V + p 1 notifications + p 2 elapsed + p 4 period +c net/minecraft/client/PrioritizeChunkUpdates fgv net/minecraft/class_6597 + f Lnet/minecraft/client/PrioritizeChunkUpdates; NONE a field_34788 + f Lnet/minecraft/client/PrioritizeChunkUpdates; PLAYER_AFFECTED b field_34789 + f Lnet/minecraft/client/PrioritizeChunkUpdates; NEARBY c field_34790 + f Ljava/util/function/IntFunction; BY_ID d field_34791 + f I id e field_34792 + f Ljava/lang/String; key f field_34793 + f [Lnet/minecraft/client/PrioritizeChunkUpdates; $VALUES g field_34794 + m (I)Lnet/minecraft/client/PrioritizeChunkUpdates; byId a method_38523 + p 0 id + m ()[Lnet/minecraft/client/PrioritizeChunkUpdates; $values c method_38526 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/RecipeBookCategories fgw net/minecraft/class_314 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_SEARCH a field_1809 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_BUILDING_BLOCKS b field_1806 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_REDSTONE c field_1803 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_EQUIPMENT d field_1813 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_MISC e field_1810 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_SEARCH f field_1804 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_FOOD g field_1808 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_BLOCKS h field_1811 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_MISC i field_1812 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_SEARCH j field_17110 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_BLOCKS k field_17111 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_MISC l field_17112 + f Lnet/minecraft/client/RecipeBookCategories; SMOKER_SEARCH m field_17113 + f Lnet/minecraft/client/RecipeBookCategories; SMOKER_FOOD n field_17114 + f Lnet/minecraft/client/RecipeBookCategories; STONECUTTER o field_17764 + f Lnet/minecraft/client/RecipeBookCategories; SMITHING p field_25624 + f Lnet/minecraft/client/RecipeBookCategories; CAMPFIRE q field_17765 + f Lnet/minecraft/client/RecipeBookCategories; UNKNOWN r field_25625 + f Ljava/util/List; SMOKER_CATEGORIES s field_25779 + f Ljava/util/List; BLAST_FURNACE_CATEGORIES t field_25780 + f Ljava/util/List; FURNACE_CATEGORIES u field_25781 + f Ljava/util/List; CRAFTING_CATEGORIES v field_25782 + f Ljava/util/Map; AGGREGATE_CATEGORIES w field_25783 + f Ljava/util/List; itemIcons x field_1807 + f [Lnet/minecraft/client/RecipeBookCategories; $VALUES y field_1805 + m ()Ljava/util/List; getIconItems a method_1623 + m (Lnet/minecraft/world/inventory/RecipeBookType;)Ljava/util/List; getCategories a method_30285 + p 0 recipeBookType + m ()[Lnet/minecraft/client/RecipeBookCategories; $values b method_36866 + m (Ljava/lang/String;I[Lnet/minecraft/world/item/ItemStack;)V + p 3 itemIcons + m ()V +c net/minecraft/client/RecipeBookCategories$1 fgw$1 net/minecraft/class_314$1 + f [I $SwitchMap$net$minecraft$world$inventory$RecipeBookType a field_25784 + m ()V +c net/minecraft/client/ResourceLoadStateTracker fgx net/minecraft/class_6360 + f Lorg/slf4j/Logger; LOGGER a field_33698 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadState; reloadState b field_33699 + f I reloadCount c field_33700 + m ()V finishReload a method_36562 + m (Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason;Ljava/util/List;)V startReload a method_36563 + p 1 reloadReason + p 2 packs + m (Ljava/lang/Throwable;)V startRecovery a method_36564 + p 1 error + m (Lnet/minecraft/CrashReport;)V fillCrashReport a method_36565 + p 1 report + m ()V + m ()V +c net/minecraft/client/ResourceLoadStateTracker$RecoveryInfo fgx$a net/minecraft/class_6360$class_6361 + f Ljava/lang/Throwable; error a field_33701 + m ()Ljava/lang/String; method_36566 a method_36566 + m (Lnet/minecraft/CrashReportCategory;)V fillCrashInfo a method_36567 + p 1 crash + m (Ljava/lang/Throwable;)V + p 1 error +c net/minecraft/client/ResourceLoadStateTracker$ReloadReason fgx$b net/minecraft/class_6360$class_6362 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; INITIAL a field_33702 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; MANUAL b field_33703 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; UNKNOWN c field_33704 + f Ljava/lang/String; name d field_33705 + f [Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; $VALUES e field_33706 + m ()[Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; $values a method_36867 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/ResourceLoadStateTracker$ReloadState fgx$c net/minecraft/class_6360$class_6363 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; reloadReason a field_33707 + f Ljava/util/List; packs b field_33708 + f Lnet/minecraft/client/ResourceLoadStateTracker$RecoveryInfo; recoveryReloadInfo c field_33709 + f Z finished d field_33710 + m ()Ljava/lang/String; method_36569 a method_36569 + m (Lnet/minecraft/CrashReportCategory;)V fillCrashInfo a method_36573 + p 1 crash + m (Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason;Ljava/util/List;)V + p 1 reloadReason + p 2 packs +c net/minecraft/client/Screenshot fgy net/minecraft/class_318 + f Ljava/lang/String; SCREENSHOT_DIR a field_41337 + f Lorg/slf4j/Logger; LOGGER b field_1974 + f I rowHeight c field_32157 + f Ljava/io/DataOutputStream; outputStream d field_32158 + f [B bytes e field_32159 + f I width f field_32160 + f I height g field_32161 + f Ljava/io/File; file h field_32162 + m ()V saveRow a method_35710 + m (Lcom/mojang/blaze3d/pipeline/RenderTarget;)Lcom/mojang/blaze3d/platform/NativeImage; takeScreenshot a method_1663 + p 0 framebuffer + m (Lcom/mojang/blaze3d/platform/NativeImage;Ljava/io/File;Ljava/util/function/Consumer;)V method_1661 a method_1661 + m (Ljava/io/File;)Ljava/io/File; getFile a method_1660 + c Creates a unique PNG file in the given directory named by a timestamp. Handles cases where the timestamp alone is not enough to create a uniquely named file, though it still might suffer from an unlikely race condition where the filename was unique when this method was called, but another process or thread created a file at the same path immediately after this method returned. + p 0 gameDirectory + m (Ljava/io/File;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V grab a method_1659 + c Saves a screenshot in the game directory with a time-stamped filename. + p 0 gameDirectory + p 1 buffer + p 2 messageConsumer + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V grab a method_22690 + c Saves a screenshot in the game directory with the given file name (or null to generate a time-stamped name). + p 0 gameDirectory + p 1 screenshotName + p 2 buffer + p 3 messageConsumer + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_1664 a method_1664 + m (Ljava/nio/ByteBuffer;IIII)V addRegion a method_35711 + p 1 buffer + p 2 width + p 3 height + p 4 rowWidth + p 5 rowHeight + m ()Ljava/io/File; close b method_35712 + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V _grab b method_1662 + p 0 gameDirectory + p 1 screenshotName + p 2 buffer + p 3 messageConsumer + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V method_22691 c method_22691 + m (Ljava/io/File;III)V + p 1 gameDirectory + p 2 width + p 3 height + p 4 rowHeight + m ()V +c net/minecraft/client/StringSplitter fgz net/minecraft/class_5225 + f Lnet/minecraft/client/StringSplitter$WidthProvider; widthProvider a field_24216 + m (Lnet/minecraft/util/FormattedCharSequence;)F stringWidth a method_30875 + p 1 content + m (Lnet/minecraft/util/FormattedCharSequence;I)Lnet/minecraft/network/chat/Style; componentStyleAtWidth a method_30876 + p 1 content + p 2 maxWidth + m (Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;Lorg/apache/commons/lang3/mutable/MutableObject;ILnet/minecraft/network/chat/Style;I)Z method_30877 a method_30877 + m (Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27480 a method_27480 + m (Ljava/lang/String;)F stringWidth a method_27482 + p 1 content + m (Ljava/lang/String;IIZ)I getWordPosition a method_27483 + p 0 content + p 1 skipCount + p 2 cursorPoint + p 3 includeWhitespace + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I plainIndexAtWidth a method_27484 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;ZLnet/minecraft/client/StringSplitter$LinePosConsumer;)V splitLines a method_27485 + p 1 content + p 2 maxWidth + p 3 style + p 4 withNewLines + p 5 linePos + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/network/chat/Style;II)V method_27486 a method_27486 + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_30878 a method_30878 + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_35713 a method_35713 + m (Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27487 a method_27487 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/network/chat/Style;I)Z method_27493 a method_27493 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_30879 a method_30879 + m (Lnet/minecraft/network/chat/FormattedText;)F stringWidth a method_27488 + p 1 content + m (Lnet/minecraft/network/chat/FormattedText;I)Lnet/minecraft/network/chat/Style; componentStyleAtWidth a method_27489 + p 1 content + p 2 maxWidth + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; headByWidth a method_27490 + p 1 content + p 2 maxWidth + p 3 style + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;Ljava/util/function/BiConsumer;)V splitLines a method_29971 + p 1 content + p 2 maxWidth + p 3 style + p 4 splitifier + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;Lnet/minecraft/network/chat/FormattedText;)Ljava/util/List; splitLines a method_35714 + p 1 content + p 2 maxWidth + p 3 style + p 4 prefix + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; plainHeadByWidth b method_27494 + p 1 content + p 2 maxWidth + p 3 style + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_27492 b method_27492 + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;)Ljava/util/List; splitLines b method_27495 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; plainTailByWidth c method_27497 + p 1 content + p 2 maxWidth + p 3 style + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_27496 c method_27496 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I formattedIndexByWidth d method_35715 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; formattedHeadByWidth e method_35716 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I findLineBreak f method_35717 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/util/List; splitLines g method_27498 + p 1 content + p 2 maxWidth + p 3 style + m (Lnet/minecraft/client/StringSplitter$WidthProvider;)V + p 1 widthProvider +c net/minecraft/client/StringSplitter$1 fgz$1 net/minecraft/class_5225$1 + f Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink; val$output a field_24217 + f Lnet/minecraft/client/ComponentCollector; collector b field_24219 + m (Lnet/minecraft/client/StringSplitter;Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;)V +c net/minecraft/client/StringSplitter$FlatComponents fgz$a net/minecraft/class_5225$class_5226 + f Ljava/util/List; parts a field_24220 + f Ljava/lang/String; flatParts b field_24221 + m ()Lnet/minecraft/network/chat/FormattedText; getRemainder a method_27499 + m (I)C charAt a method_27500 + p 1 codePoint + m (IILnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; splitAt a method_27501 + p 1 begin + p 2 end + p 3 style + m (Lnet/minecraft/client/StringSplitter$LineComponent;)Ljava/lang/String; method_27504 a method_27504 + m (Ljava/util/List;)V + p 1 parts +c net/minecraft/client/StringSplitter$LineBreakFinder fgz$b net/minecraft/class_5225$class_5227 + f Lnet/minecraft/client/StringSplitter; field_24222 a field_24222 + f F maxWidth b field_24223 + f I lineBreak c field_24224 + f Lnet/minecraft/network/chat/Style; lineBreakStyle d field_24225 + f Z hadNonZeroWidthChar e field_24226 + f F width f field_24227 + f I lastSpace g field_24228 + f Lnet/minecraft/network/chat/Style; lastSpaceStyle h field_24229 + f I nextChar i field_24230 + f I offset j field_24231 + m ()I getSplitPosition a method_27505 + m (I)V addToOffset a method_27506 + p 1 offset + m (ILnet/minecraft/network/chat/Style;)Z finishIteration a method_27507 + p 1 lineBreak + p 2 lineBreakStyle + m ()Lnet/minecraft/network/chat/Style; getSplitStyle b method_27508 + m ()Z lineBreakFound c method_27509 + m (Lnet/minecraft/client/StringSplitter;F)V + p 2 maxWidth +c net/minecraft/client/StringSplitter$LineComponent fgz$c net/minecraft/class_5225$class_5345 + f Ljava/lang/String; contents c field_25261 + f Lnet/minecraft/network/chat/Style; style d field_25262 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)V + p 1 contents + p 2 style +c net/minecraft/client/StringSplitter$LinePosConsumer fgz$d net/minecraft/class_5225$class_5229 +c net/minecraft/client/StringSplitter$WidthLimitedCharSink fgz$e net/minecraft/class_5225$class_5230 + f Lnet/minecraft/client/StringSplitter; field_24234 a field_24234 + f F maxWidth b field_24235 + f I position c field_24236 + m ()I getPosition a method_27513 + m ()V resetPosition b method_27514 + m (Lnet/minecraft/client/StringSplitter;F)V + p 2 maxWidth +c net/minecraft/client/StringSplitter$WidthProvider fgz$f net/minecraft/class_5225$class_5231 +c net/minecraft/client/ToggleKeyMapping fha net/minecraft/class_4666 + f Ljava/util/function/BooleanSupplier; needsToggle h field_21334 + m ()V reset n method_52232 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BooleanSupplier;)V + p 1 name + p 2 keyCode + p 3 category + p 4 needsToggle +c net/minecraft/client/User fhb net/minecraft/class_320 + f Ljava/lang/String; name a field_1982 + f Ljava/util/UUID; uuid b field_1985 + f Ljava/lang/String; accessToken c field_1983 + f Ljava/util/Optional; xuid d field_34960 + f Ljava/util/Optional; clientId e field_34961 + f Lnet/minecraft/client/User$Type; type f field_1984 + m ()Ljava/lang/String; getSessionId a method_1675 + m ()Ljava/util/UUID; getProfileId b method_44717 + m ()Ljava/lang/String; getName c method_1676 + m ()Ljava/lang/String; getAccessToken d method_1674 + m ()Ljava/util/Optional; getClientId e method_38740 + m ()Ljava/util/Optional; getXuid f method_38741 + m ()Lnet/minecraft/client/User$Type; getType g method_35718 + m (Ljava/lang/String;Ljava/util/UUID;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/client/User$Type;)V + p 1 name + p 2 uuid + p 3 accessToken + p 4 xuid + p 5 clientId + p 6 type +c net/minecraft/client/User$Type fhb$a net/minecraft/class_320$class_321 + f Lnet/minecraft/client/User$Type; LEGACY a field_1990 + f Lnet/minecraft/client/User$Type; MOJANG b field_1988 + f Lnet/minecraft/client/User$Type; MSA c field_34962 + f Ljava/util/Map; BY_NAME d field_1989 + f Ljava/lang/String; name e field_1986 + f [Lnet/minecraft/client/User$Type; $VALUES f field_1987 + m ()Ljava/lang/String; getName a method_38742 + m (Lnet/minecraft/client/User$Type;)Ljava/lang/String; method_1678 a method_1678 + m (Ljava/lang/String;)Lnet/minecraft/client/User$Type; byName a method_1679 + p 0 typeName + m ()[Lnet/minecraft/client/User$Type; $values b method_36868 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/animation/AnimationChannel fhc net/minecraft/class_7179 + f Lnet/minecraft/client/animation/AnimationChannel$Target; target a comp_595 + f [Lnet/minecraft/client/animation/Keyframe; keyframes b comp_596 + m ()Lnet/minecraft/client/animation/AnimationChannel$Target; target a comp_595 + m ()[Lnet/minecraft/client/animation/Keyframe; keyframes b comp_596 + m (Lnet/minecraft/client/animation/AnimationChannel$Target;[Lnet/minecraft/client/animation/Keyframe;)V +c net/minecraft/client/animation/AnimationChannel$Interpolation fhc$a net/minecraft/class_7179$class_7180 +c net/minecraft/client/animation/AnimationChannel$Interpolations fhc$b net/minecraft/class_7179$class_7181 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; LINEAR a field_37884 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; CATMULLROM b field_37885 + m (Lorg/joml/Vector3f;F[Lnet/minecraft/client/animation/Keyframe;IIF)Lorg/joml/Vector3f; method_41815 a method_41815 + m (Lorg/joml/Vector3f;F[Lnet/minecraft/client/animation/Keyframe;IIF)Lorg/joml/Vector3f; method_41816 b method_41816 + m ()V + m ()V +c net/minecraft/client/animation/AnimationChannel$Target fhc$c net/minecraft/class_7179$class_7182 +c net/minecraft/client/animation/AnimationChannel$Targets fhc$d net/minecraft/class_7179$class_7183 + f Lnet/minecraft/client/animation/AnimationChannel$Target; POSITION a field_37886 + f Lnet/minecraft/client/animation/AnimationChannel$Target; ROTATION b field_37887 + f Lnet/minecraft/client/animation/AnimationChannel$Target; SCALE c field_37888 + m ()V + m ()V +c net/minecraft/client/animation/AnimationDefinition fhd net/minecraft/class_7184 + f F lengthInSeconds a comp_597 + f Z looping b comp_598 + f Ljava/util/Map; boneAnimations c comp_599 + m ()F lengthInSeconds a comp_597 + m ()Z looping b comp_598 + m ()Ljava/util/Map; boneAnimations c comp_599 + m (FZLjava/util/Map;)V +c net/minecraft/client/animation/AnimationDefinition$Builder fhd$a net/minecraft/class_7184$class_7185 + f F length a field_37889 + f Ljava/util/Map; animationByBone b field_37890 + f Z looping c field_37891 + m ()Lnet/minecraft/client/animation/AnimationDefinition$Builder; looping a method_41817 + m (F)Lnet/minecraft/client/animation/AnimationDefinition$Builder; withLength a method_41818 + p 0 lengthInSeconds + m (Ljava/lang/String;)Ljava/util/List; method_41819 a method_41819 + m (Ljava/lang/String;Lnet/minecraft/client/animation/AnimationChannel;)Lnet/minecraft/client/animation/AnimationDefinition$Builder; addAnimation a method_41820 + p 1 bone + p 2 animationChannel + m ()Lnet/minecraft/client/animation/AnimationDefinition; build b method_41821 + m (F)V + p 1 lengthInSeconds +c net/minecraft/client/animation/Keyframe fhe net/minecraft/class_7186 + f F timestamp a comp_600 + f Lorg/joml/Vector3f; target b comp_601 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; interpolation c comp_602 + m ()F timestamp a comp_600 + m ()Lorg/joml/Vector3f; target b comp_601 + m ()Lnet/minecraft/client/animation/AnimationChannel$Interpolation; interpolation c comp_602 + m (FLorg/joml/Vector3f;Lnet/minecraft/client/animation/AnimationChannel$Interpolation;)V +c net/minecraft/client/animation/KeyframeAnimations fhf net/minecraft/class_7187 + m (DDD)Lorg/joml/Vector3f; scaleVec a method_41822 + p 0 xScale + p 2 yScale + p 4 zScale + m (FFF)Lorg/joml/Vector3f; posVec a method_41823 + p 0 x + p 1 y + p 2 z + m (FLorg/joml/Vector3f;FLnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/animation/AnimationChannel;)V method_41824 a method_41824 + m (F[Lnet/minecraft/client/animation/Keyframe;I)Z method_41825 a method_41825 + m (Lnet/minecraft/client/animation/AnimationDefinition;J)F getElapsedSeconds a method_41826 + p 0 animationDefinition + p 1 accumulatedTime + m (Lnet/minecraft/client/model/HierarchicalModel;Lnet/minecraft/client/animation/AnimationDefinition;JFLorg/joml/Vector3f;)V animate a method_41827 + p 0 model + p 1 animationDefinition + p 2 accumulatedTime + p 4 scale + p 5 animationVecCache + m (Ljava/util/List;FLorg/joml/Vector3f;FLnet/minecraft/client/model/geom/ModelPart;)V method_41828 a method_41828 + m (FFF)Lorg/joml/Vector3f; degreeVec b method_41829 + p 0 xDegrees + p 1 yDegrees + p 2 zDegrees + m ()V +c net/minecraft/client/animation/definitions/ArmadilloAnimation fhg net/minecraft/class_9079 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_ROLL_UP a field_49108 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_WALK b field_47844 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_PEEK c field_49109 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_ROLL_OUT d field_49110 + m ()V + m ()V +c net/minecraft/client/animation/definitions/BatAnimation fhh net/minecraft/class_8928 + f Lnet/minecraft/client/animation/AnimationDefinition; BAT_RESTING a field_47103 + f Lnet/minecraft/client/animation/AnimationDefinition; BAT_FLYING b field_47104 + m ()V + m ()V +c net/minecraft/client/animation/definitions/BreezeAnimation fhi net/minecraft/class_8972 + f Lnet/minecraft/client/animation/AnimationDefinition; SHOOT a field_47428 + f Lnet/minecraft/client/animation/AnimationDefinition; JUMP b field_47429 + f Lnet/minecraft/client/animation/AnimationDefinition; SLIDE c field_47430 + f Lnet/minecraft/client/animation/AnimationDefinition; SLIDE_BACK d field_47846 + m ()V + m ()V +c net/minecraft/client/animation/definitions/CamelAnimation fhj net/minecraft/class_7730 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_WALK a field_40384 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_SIT b field_40385 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_SIT_POSE c field_40749 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_STANDUP d field_40386 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_DASH e field_40387 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_IDLE f field_40388 + m ()V + m ()V +c net/minecraft/client/animation/definitions/FrogAnimation fhk net/minecraft/class_7188 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_CROAK a field_37892 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_WALK b field_37893 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_JUMP c field_37894 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_TONGUE d field_37895 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_SWIM e field_37896 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_IDLE_WATER f field_37897 + m ()V + m ()V +c net/minecraft/client/animation/definitions/SnifferAnimation fhl net/minecraft/class_8182 + f Lnet/minecraft/client/animation/AnimationDefinition; BABY_TRANSFORM a field_43406 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_SNIFFSNIFF b field_42866 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_LONGSNIFF c field_42867 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_WALK d field_42868 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_SNIFF_SEARCH e field_42869 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_DIG f field_42870 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_STAND_UP g field_42871 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_BABY_FALL h field_42872 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_HAPPY i field_42873 + m ()V + m ()V +c net/minecraft/client/animation/definitions/WardenAnimation fhm net/minecraft/class_7278 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_EMERGE a field_38302 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_DIG b field_38303 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_ROAR c field_38304 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_SNIFF d field_38305 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_ATTACK e field_38306 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_SONIC_BOOM f field_38879 + m ()V + m ()V +c net/minecraft/client/animation/definitions/package-info fhn net/minecraft/class_7189 +c net/minecraft/client/animation/package-info fho net/minecraft/class_7190 +c net/minecraft/client/color/block/BlockColor fhp net/minecraft/class_322 +c net/minecraft/client/color/block/BlockColors fhq net/minecraft/class_324 + f I DEFAULT a field_32163 + f Lnet/minecraft/core/IdMapper; blockColors b field_1995 + f Ljava/util/Map; coloringStates c field_20271 + m ()Lnet/minecraft/client/color/block/BlockColors; createDefault a method_1689 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Set; getColoringProperties a method_21592 + p 1 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I getColor a method_1697 + p 1 state + p 2 level + p 3 pos + p 4 tintIndex + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getColor a method_1691 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/Property;[Lnet/minecraft/world/level/block/Block;)V addColoringState a method_21593 + p 1 property + p 2 blocks + m (Lnet/minecraft/client/color/block/BlockColor;[Lnet/minecraft/world/level/block/Block;)V register a method_1690 + p 1 blockColor + p 2 blocks + m (Ljava/util/Set;[Lnet/minecraft/world/level/block/Block;)V addColoringStates a method_21594 + p 1 properties + p 2 blocks + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1684 b method_1684 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1696 c method_1696 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1698 d method_1698 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1685 e method_1685 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1688 f method_1688 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1694 g method_1694 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1692 h method_1692 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1687 i method_1687 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1695 j method_1695 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_49295 k method_49295 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1693 l method_1693 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1686 m method_1686 + m ()V +c net/minecraft/client/color/block/BlockTintCache fhr net/minecraft/class_4700 + f I MAX_CACHE_ENTRIES a field_32164 + f Ljava/lang/ThreadLocal; latestChunkOnThread b field_21519 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; cache c field_21520 + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; lock d field_21521 + f Ljava/util/function/ToIntFunction; source e field_34795 + m ()V invalidateAll a method_23768 + m (II)V invalidateForChunk a method_23769 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/core/BlockPos;)I getColor a method_23770 + p 1 pos + m (II)Lnet/minecraft/client/color/block/BlockTintCache$CacheData; findOrCreateChunkCache b method_23772 + p 1 chunkX + p 2 chunkZ + m (Ljava/util/function/ToIntFunction;)V + p 1 source +c net/minecraft/client/color/block/BlockTintCache$CacheData fhr$a net/minecraft/class_4700$class_6598 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectArrayMap; cache a field_34796 + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; lock b field_34797 + f I BLOCKS_PER_LAYER c field_34798 + f Z invalidated d field_41610 + m ()Z isInvalidated a method_47894 + m (I)[I getLayer a method_38528 + p 1 height + m ()V invalidate b method_47895 + m (I)[I method_38529 b method_38529 + m ()[I allocateLayer c method_38527 + m ()V + m ()V +c net/minecraft/client/color/block/BlockTintCache$LatestCacheInfo fhr$b net/minecraft/class_4700$class_4701 + f I x a field_21522 + f I z b field_21523 + f Lnet/minecraft/client/color/block/BlockTintCache$CacheData; cache c field_21524 + m ()V +c net/minecraft/client/color/block/package-info fhs net/minecraft/class_6202 +c net/minecraft/client/color/item/ItemColor fht net/minecraft/class_326 +c net/minecraft/client/color/item/ItemColors fhu net/minecraft/class_325 + f I DEFAULT a field_32165 + f Lnet/minecraft/core/IdMapper; itemColors b field_1996 + m (Lnet/minecraft/world/item/ItemStack;I)I getColor a method_1704 + p 1 stack + p 2 tintIndex + m (Lnet/minecraft/world/item/SpawnEggItem;Lnet/minecraft/world/item/ItemStack;I)I method_1699 a method_1699 + m (Lnet/minecraft/client/color/block/BlockColors;)Lnet/minecraft/client/color/item/ItemColors; createDefault a method_1706 + p 0 colors + m (Lnet/minecraft/client/color/block/BlockColors;Lnet/minecraft/world/item/ItemStack;I)I method_1702 a method_1702 + m (Lnet/minecraft/client/color/item/ItemColor;[Lnet/minecraft/world/level/ItemLike;)V register a method_1708 + p 1 itemColor + p 2 items + m (Lnet/minecraft/world/item/ItemStack;I)I method_57705 b method_57705 + m (Lnet/minecraft/world/item/ItemStack;I)I method_43767 c method_43767 + m (Lnet/minecraft/world/item/ItemStack;I)I method_57706 d method_57706 + m (Lnet/minecraft/world/item/ItemStack;I)I method_57707 e method_57707 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1701 f method_1701 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1705 g method_1705 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1707 h method_1707 + m ()V +c net/minecraft/client/color/item/package-info fhv net/minecraft/class_6203 +c net/minecraft/client/gui/ComponentPath fhw net/minecraft/class_8016 + c Represents a path of components in a user interface hierarchy.\n

\nIt provides methods to create and manipulate component paths. + m ()Lnet/minecraft/client/gui/components/events/GuiEventListener; component a comp_1188 + c {@return the {@code GuiEventListener} component associated with this component path} + m (Lnet/minecraft/client/gui/components/events/ContainerEventHandler;Lnet/minecraft/client/gui/ComponentPath;)Lnet/minecraft/client/gui/ComponentPath; path a method_48192 + c Creates a component path with the specified {@code ContainerEventHandler} component and an optional child path.\n

\n@return a new component path, or {@code null} if the child path is null + p 0 component + c the component associated with the path + p 1 childPath + c the child path associated with the component + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/ComponentPath; leaf a method_48193 + c Creates a leaf component path with the specified {@code GuiEventListener} component.\n

\n@return a new leaf component path. + p 0 component + c the component associated with the leaf path + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;[Lnet/minecraft/client/gui/components/events/ContainerEventHandler;)Lnet/minecraft/client/gui/ComponentPath; path a method_48194 + c Creates a new {@code ComponentPath} leaf node with the specified {@code GuiEventListener} component and an array of {@code ContainerEventHandler} ancestors.\n

\n@return a new component path + p 0 leafComponent + c the new 'Leaf' component associated with the path + p 1 ancestorComponents + c the array of ancestor components associated with the path, ordered in reverse ascending order towards root. + m (Z)V applyFocus a method_48195 + c Applies focus to or removes focus from the component associated with this component path. + p 1 focused + c {@code true} to apply focus, {@code false} to remove focus. +c net/minecraft/client/gui/ComponentPath$Leaf fhw$a net/minecraft/class_8016$class_8017 + c The {@code Leaf} class represents a leaf component path in the hierarchy. + f Lnet/minecraft/client/gui/components/events/GuiEventListener; component a comp_1188 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V +c net/minecraft/client/gui/ComponentPath$Path fhw$b net/minecraft/class_8016$class_8018 + c The {@code Path} class represents a non-leaf component path in the hierarchy. + f Lnet/minecraft/client/gui/components/events/ContainerEventHandler; component a comp_1189 + f Lnet/minecraft/client/gui/ComponentPath; childPath b comp_1190 + m ()Lnet/minecraft/client/gui/components/events/ContainerEventHandler; component b comp_1189 + c {@return the {@code GuiEventListener} component associated with this component path} + m ()Lnet/minecraft/client/gui/ComponentPath; childPath c comp_1190 + c {@return the child path associated with this path} + m (Lnet/minecraft/client/gui/components/events/ContainerEventHandler;Lnet/minecraft/client/gui/ComponentPath;)V + p 1 component + p 2 childPath +c net/minecraft/client/gui/Font fhx net/minecraft/class_327 + f I ALPHA_CUTOFF a field_35427 + f I lineHeight b field_2000 + f Lnet/minecraft/util/RandomSource; random c field_2001 + f F EFFECT_DEPTH d field_32166 + f Lorg/joml/Vector3f; SHADOW_OFFSET e field_24237 + f Ljava/util/function/Function; fonts f field_1997 + f Z filterFishyGlyphs g field_39925 + f Lnet/minecraft/client/StringSplitter; splitter h field_24238 + m ()Z isBidirectional a method_1726 + c Get bidiFlag that controls if the Unicode Bidirectional Algorithm should be run before rendering any string + m (I)I adjustColor a method_27515 + p 0 color + m (ILnet/minecraft/network/chat/Style;)F method_27516 a method_27516 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSet a method_27526 + p 1 fontLocation + m (Lnet/minecraft/util/FormattedCharSequence;)I width a method_30880 + p 1 text + m (Lnet/minecraft/util/FormattedCharSequence;FFIILorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;I)V drawInBatch8xOutline a method_37296 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 backgroundColor + p 6 matrix + p 7 bufferSource + p 8 packedLightCoords + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_22942 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/client/gui/Font$StringRenderOutput;[FIFIIILnet/minecraft/network/chat/Style;I)Z method_37297 a method_37297 + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph;ZZFFFLorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFI)V renderChar a method_1710 + p 1 glyph + p 2 bold + p 3 italic + p 4 boldOffset + p 5 x + p 6 y + p 7 matrix + p 8 buffer + p 9 red + p 10 green + p 11 blue + p 12 alpha + p 13 packedLight + m (Ljava/lang/String;)Ljava/lang/String; bidirectionalShaping a method_1721 + c Apply Unicode Bidirectional Algorithm to string and return a new possibly reordered string for visual rendering. + p 1 text + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_27521 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;IIZ)I drawInBatch a method_27522 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + p 11 bidirectional + m (Ljava/lang/String;I)Ljava/lang/String; plainSubstrByWidth a method_27523 + p 1 text + p 2 maxWidth + m (Ljava/lang/String;IZ)Ljava/lang/String; plainSubstrByWidth a method_27524 + p 1 text + p 2 maxWidth + p 3 tail + m (Lnet/minecraft/network/chat/Component;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_30882 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/network/chat/FormattedText;)I width a method_27525 + p 1 text + m (Lnet/minecraft/network/chat/FormattedText;I)Lnet/minecraft/network/chat/FormattedText; substrByWidth a method_1714 + p 1 text + p 2 maxWidth + m ()Lnet/minecraft/client/StringSplitter; getSplitter b method_27527 + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInternal b method_1723 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;)I width b method_1727 + c Returns the width of this string. Equivalent of FontMetrics.stringWidth(String s). + p 1 text + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)F renderText b method_1724 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;IIZ)I drawInternal b method_27529 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + p 11 bidirectional + m (Ljava/lang/String;I)I wordWrapHeight b method_1713 + c Returns the height (in pixels) of the given string if it is wordwrapped to the given max width. + p 1 text + p 2 maxWidth + m (Lnet/minecraft/network/chat/FormattedText;I)I wordWrapHeight b method_44378 + p 1 text + p 2 maxWidth + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)F renderText c method_27530 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/network/chat/FormattedText;I)Ljava/util/List; split c method_1728 + p 1 text + p 2 maxWidth + m (Ljava/util/function/Function;Z)V + p 1 fonts + p 2 filterFishyGlyphs + m ()V +c net/minecraft/client/gui/Font$DisplayMode fhx$a net/minecraft/class_327$class_6415 + f Lnet/minecraft/client/gui/Font$DisplayMode; NORMAL a field_33993 + f Lnet/minecraft/client/gui/Font$DisplayMode; SEE_THROUGH b field_33994 + f Lnet/minecraft/client/gui/Font$DisplayMode; POLYGON_OFFSET c field_33995 + f [Lnet/minecraft/client/gui/Font$DisplayMode; $VALUES d field_33996 + m ()[Lnet/minecraft/client/gui/Font$DisplayMode; $values a method_37344 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/Font$StringRenderOutput fhx$b net/minecraft/class_327$class_5232 + f Lnet/minecraft/client/renderer/MultiBufferSource; bufferSource a field_24239 + f Lnet/minecraft/client/gui/Font; field_24240 b field_24240 + f Z dropShadow c field_24241 + f F dimFactor d field_24242 + f F r e field_24243 + f F g f field_24244 + f F b g field_24245 + f F a h field_24246 + f Lorg/joml/Matrix4f; pose i field_24247 + f Lnet/minecraft/client/gui/Font$DisplayMode; mode j field_33997 + f I packedLightCoords k field_24249 + f F x l field_24250 + f F y m field_24251 + f Ljava/util/List; effects n field_24252 + m (IF)F finish a method_27531 + p 1 backgroundColor + p 2 x + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph$Effect;)V addEffect a method_27532 + p 1 effect + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/renderer/MultiBufferSource;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/gui/Font$DisplayMode;I)V + p 2 bufferSource + p 3 x + p 4 y + p 5 color + p 6 dropShadow + p 7 pose + p 8 mode + p 9 packedLightCoords +c net/minecraft/client/gui/Gui fhy net/minecraft/class_329 + f Lnet/minecraft/resources/ResourceLocation; FOOD_FULL_SPRITE A field_45298 + f Lnet/minecraft/resources/ResourceLocation; AIR_SPRITE B field_45299 + f Lnet/minecraft/resources/ResourceLocation; AIR_BURSTING_SPRITE C field_45300 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_CONTAINER_SPRITE D field_45301 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_FULL_SPRITE E field_45302 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_HALF_SPRITE F field_45303 + f Lnet/minecraft/resources/ResourceLocation; VIGNETTE_LOCATION G field_2020 + f Lnet/minecraft/resources/ResourceLocation; PUMPKIN_BLUR_LOCATION H field_2019 + f Lnet/minecraft/resources/ResourceLocation; SPYGLASS_SCOPE_LOCATION I field_27389 + f Lnet/minecraft/resources/ResourceLocation; POWDER_SNOW_OUTLINE_LOCATION J field_27960 + f Ljava/util/Comparator; SCORE_DISPLAY_ORDER K field_47550 + f Lnet/minecraft/network/chat/Component; DEMO_EXPIRED_TEXT L field_26527 + f Lnet/minecraft/network/chat/Component; SAVING_TEXT M field_35430 + f F MIN_CROSSHAIR_ATTACK_SPEED N field_32168 + f I NUM_HEARTS_PER_ROW O field_32169 + f I LINE_HEIGHT P field_32170 + f Ljava/lang/String; SPACER Q field_32171 + f F PORTAL_OVERLAY_ALPHA_MIN R field_32172 + f I HEART_SIZE S field_33942 + f I HEART_SEPARATION T field_33943 + f F AUTOSAVE_FADE_SPEED_FACTOR U field_35431 + f Lnet/minecraft/util/RandomSource; random V field_2034 + f Lnet/minecraft/client/Minecraft; minecraft W field_2035 + f Lnet/minecraft/client/gui/components/ChatComponent; chat X field_2021 + f I tickCount Y field_2042 + f Lnet/minecraft/network/chat/Component; overlayMessageString Z field_2018 + f F vignetteBrightness a field_2013 + f I overlayMessageTime aa field_2041 + f Z animateOverlayMessageColor ab field_2038 + f Z chatDisabledByPlayerShown ac field_39458 + f I toolHighlightTimer ad field_2040 + f Lnet/minecraft/world/item/ItemStack; lastToolHighlight ae field_2031 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay; debugOverlay af field_2026 + f Lnet/minecraft/client/gui/components/SubtitleOverlay; subtitleOverlay ag field_2027 + f Lnet/minecraft/client/gui/components/spectator/SpectatorGui; spectatorGui ah field_2025 + c The spectator GUI for this in-game GUI instance + f Lnet/minecraft/client/gui/components/PlayerTabOverlay; tabList ai field_2015 + f Lnet/minecraft/client/gui/components/BossHealthOverlay; bossOverlay aj field_2030 + f I titleTime ak field_2023 + c A timer for the current title and subtitle displayed + f Lnet/minecraft/network/chat/Component; title al field_2016 + c The current title displayed + f Lnet/minecraft/network/chat/Component; subtitle am field_2039 + c The current sub-title displayed + f I titleFadeInTime an field_2037 + c The time that the title take to fade in + f I titleStayTime ao field_2017 + c The time that the title is display + f I titleFadeOutTime ap field_2036 + c The time that the title take to fade out + f I lastHealth aq field_2014 + f I displayHealth ar field_2033 + f J lastHealthTime as field_2012 + c The last recorded system time + f J healthBlinkTime at field_2032 + c Used with updateCounter to make the heart bar flash + f F autosaveIndicatorValue au field_35428 + f F lastAutosaveIndicatorValue av field_35429 + f Lnet/minecraft/client/gui/LayeredDraw; layers aw field_47847 + f F scopeScale ax field_27959 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_SPRITE b field_45304 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_FULL_SPRITE c field_45305 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_BACKGROUND_SPRITE d field_45306 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_PROGRESS_SPRITE e field_45307 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_AMBIENT_SPRITE f field_45308 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_SPRITE g field_45309 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SPRITE h field_45310 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SELECTION_SPRITE i field_45311 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_OFFHAND_LEFT_SPRITE j field_45312 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_OFFHAND_RIGHT_SPRITE k field_45313 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_ATTACK_INDICATOR_BACKGROUND_SPRITE l field_45314 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_ATTACK_INDICATOR_PROGRESS_SPRITE m field_45315 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_BACKGROUND_SPRITE n field_45316 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_COOLDOWN_SPRITE o field_45317 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_PROGRESS_SPRITE p field_45318 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_BACKGROUND_SPRITE q field_45319 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_PROGRESS_SPRITE r field_45320 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_EMPTY_SPRITE s field_45321 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_HALF_SPRITE t field_45322 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_FULL_SPRITE u field_45323 + f Lnet/minecraft/resources/ResourceLocation; FOOD_EMPTY_HUNGER_SPRITE v field_45324 + f Lnet/minecraft/resources/ResourceLocation; FOOD_HALF_HUNGER_SPRITE w field_45325 + f Lnet/minecraft/resources/ResourceLocation; FOOD_FULL_HUNGER_SPRITE x field_45326 + f Lnet/minecraft/resources/ResourceLocation; FOOD_EMPTY_SPRITE y field_45327 + f Lnet/minecraft/resources/ResourceLocation; FOOD_HALF_SPRITE z field_45328 + m ()V resetTitleTimes a method_1742 + c Set the different times for the titles to their default values + m (I)I getVisibleVehicleHeartRows a method_1733 + c Retrieves the number of rows of visible hearts needed to represent the given mount health.\n

\n@return the number of rows of visible hearts needed to represent the mount health. + p 1 vehicleHealth + c the health of the mount entity. + m (III)V setTimes a method_34001 + c Sets the fade-in, stay, and fade-out times for the title display. + p 1 titleFadeInTime + c the fade-in time for the title message in ticks. + p 2 titleStayTime + c the stay time for the title message in ticks. + p 3 titleFadeOutTime + c the fade-out time for the title message in ticks. + m (Lnet/minecraft/world/entity/Entity;)V updateVignetteBrightness a method_1731 + c Updates the brightness of the vignette effect based on the brightness of the given entity's position. + p 1 entity + c the entity used to determine the brightness. + m (Lnet/minecraft/world/entity/LivingEntity;)I getVehicleMaxHearts a method_1744 + c Retrieves the maximum number of hearts representing the vehicle's health for the given mount entity.\n

\n@return the maximum number of hearts representing the vehicle's health, or 0 if the mount entity is null or does not show vehicle health. + p 1 vehicle + c the living entity representing the vehicle. + m (Lnet/minecraft/world/entity/PlayerRideableJumping;Lnet/minecraft/client/gui/GuiGraphics;I)V renderJumpMeter a method_1752 + c Renders the jump meter for a rideable entity on the screen using the provided rideable object, GuiGraphics object, and x-coordinate. + p 1 rideable + c the PlayerRideableJumping object representing the rideable entity. + p 2 guiGraphics + c the GuiGraphics object used for rendering. + p 3 x + c the x-coordinate for rendering the jump meter. + m (Lnet/minecraft/world/phys/HitResult;)Z canRenderCrosshairForSpectator a method_17534 + c Checks if the crosshair can be rendered for a spectator based on the provided {@link HitResult}.\n

\n@return {@code true} if the crosshair can be rendered for a spectator, {@code false} otherwise. + p 1 rayTrace + c the result of a ray trace operation. + m (Lnet/minecraft/world/scores/PlayerScoreEntry;)Z method_1751 a method_1751 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/network/chat/numbers/NumberFormat;Lnet/minecraft/world/scores/PlayerScoreEntry;)Lnet/minecraft/client/gui/Gui$1DisplayEntry; method_55439 a method_55439 + m (Lnet/minecraft/client/Minecraft;)Z method_55796 a method_55796 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSelectedItemName a method_1749 + c Renders the name of the selected item on the screen using the provided GuiGraphics object. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderSpyglassOverlay a method_32598 + c Renders the overlay for the spyglass effect. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 scopeScale + c the scale factor for the spyglass scope. + m (Lnet/minecraft/client/gui/GuiGraphics;FIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V method_18620 a method_18620 + m (Lnet/minecraft/client/gui/GuiGraphics;I)V renderExperienceBar a method_1754 + c Renders the experience bar on the screen using the provided GuiGraphics object and x-coordinate. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 x + c the x-coordinate for rendering the experience bar. + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/DeltaTracker;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;I)V renderSlot a method_1762 + p 1 guiGraphics + p 2 x + p 3 y + p 4 deltaTracker + p 5 player + p 6 stack + p 7 seed + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;F)V renderTextureOverlay a method_31977 + c Renders a texture overlay on the screen with the specified shader location and alpha value. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 shaderLocation + c the location of the shader texture. + p 3 alpha + c the alpha value to apply to the overlay. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/Entity;)V renderVignette a method_1735 + c Renders the vignette effect on the screen based on the distance to the world border and the entity's position. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 entity + c the entity used to determine the distance to the world border. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;II)V renderFood a method_58477 + p 1 guiGraphics + p 2 player + p 3 y + p 4 x + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;IIII)V renderArmor a method_58478 + p 0 guiGraphics + p 1 player + p 2 y + p 3 heartRows + p 4 height + p 5 x + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;IIIIFIIIZ)V renderHearts a method_37298 + c Renders the player's hearts, including health, absorption, and highlight hearts, on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 player + c the player entity. + p 3 x + c the x-coordinate of the hearts' position. + p 4 y + c the y-coordinate of the hearts' position. + p 5 height + c the height of each heart. + p 6 offsetHeartIndex + c the index of the offset heart. + p 7 maxHealth + c the maximum health of the player. + p 8 currentHealth + c the current health of the player. + p 9 displayHealth + c the displayed health of the player. + p 10 absorptionAmount + c the absorption amount of the player. + p 11 renderHighlight + c determines whether to render the highlight hearts. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/scores/Objective;)V displayScoreboardSidebar a method_1757 + c Displays the scoreboard sidebar on the screen using the provided GuiGraphics object and objective. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 objective + c the objective representing the scoreboard sidebar. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V render a method_1753 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Gui$HeartType;IIZZZ)V renderHeart a method_37299 + p 1 guiGraphics + p 2 heartType + p 3 x + p 4 y + p 5 hardcore + p 6 halfHeart + p 7 blinking + m (Lnet/minecraft/network/chat/Component;)V setNowPlaying a method_1732 + c Sets the currently playing record display name and updates the overlay message. + p 1 displayName + c the display name of the currently playing record. + m (Lnet/minecraft/network/chat/Component;Z)V setOverlayMessage a method_1758 + c Sets the overlay message to be displayed on the screen. + p 1 component + c the {@link Component} representing the overlay message. + p 2 animateColor + c a boolean indicating whether to animate the color of the overlay message. + m (Z)V tick a method_39191 + c Advances the tick for the autosave indicator and optionally ticks the object if not paused. + p 1 pause + m ([Lnet/minecraft/client/gui/Gui$1DisplayEntry;Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/network/chat/Component;I)V method_55440 a method_55440 + m ()Z isShowingChatDisabledByPlayer b method_44353 + c {@return {@code true} if the chat disabled message is being shown, {@code false} otherwise} + m (I)[Lnet/minecraft/client/gui/Gui$1DisplayEntry; method_55441 b method_55441 + m (Lnet/minecraft/client/Minecraft;)Z method_55797 b method_55797 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderPlayerHealth b method_1760 + c Renders the player's health, armor, food, and air bars on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderPortalOverlay b method_1746 + c Renders the portal overlay effect on the screen with the specified alpha value. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 alpha + c the alpha value of the overlay. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderSavingIndicator b method_39192 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/network/chat/Component;)V setSubtitle b method_34002 + c Sets the subtitle to be displayed in the title screen. + p 1 subtitle + c the subtitle {@link Component} to be displayed. + m (Z)V setChatDisabledByPlayerShown b method_44354 + c {@return {@code true} if the chat is disabled, {@code false} if chat is enabled} + p 1 chatDisabledByPlayerShown + m ()V clear c method_34003 + c Clears the title and subtitle, resetting the title display time. + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderVehicleHealth c method_1741 + c Renders the health of the player's vehicle on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderCameraOverlays c method_55798 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/network/chat/Component;)V setTitle c method_34004 + c Sets the title to be displayed in the title screen. + p 1 title + c the title {@link Component} to be displayed. + m ()Lnet/minecraft/client/gui/components/ChatComponent; getChat d method_1743 + c {@return a pointer to the persistent Chat GUI, containing all previous chat messages and such} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderSleepOverlay d method_55799 + p 1 guiGraphics + p 2 deltaTracker + m ()I getGuiTicks e method_1738 + c {@return the number of GUI ticks elapsed} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderOverlayMessage e method_55800 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/Font; getFont f method_1756 + c {@return the {@link Font} used for rendering text in the GUI} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderTitle f method_55801 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/spectator/SpectatorGui; getSpectatorGui g method_1739 + c {@return the {@link SpectatorGui} instance} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderChat g method_55802 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/PlayerTabOverlay; getTabList h method_1750 + c {@return the {@link PlayerTabOverlay} overlay} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderScoreboardSidebar h method_55803 + p 1 guiGraphics + p 2 deltaTracker + m ()V onDisconnected i method_1747 + c Called when the player is disconnected from the server.\nResets various UI elements and clears messages. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderTabList i method_55804 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/BossHealthOverlay; getBossOverlay j method_1740 + c {@return the {@link BossHealthOverlay} instance associated with the client} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderCrosshair j method_1736 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/DebugScreenOverlay; getDebugOverlay k method_53531 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderEffects k method_1765 + p 1 guiGraphics + p 2 deltaTracker + m ()V clearCache l method_1745 + c Clears the chunk cache in the debug screen. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderHotbarAndDecorations l method_55805 + p 1 guiGraphics + p 2 deltaTracker + m ()Z isExperienceBarVisible m method_56135 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderItemHotbar m method_1759 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/world/entity/player/Player; getCameraPlayer n method_1737 + c Retrieves the player entity that the camera is currently focused on.\n

\n@return the player entity that the camera is focused on, or null if the camera is not focused on a player. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderExperienceLevel n method_56136 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/world/entity/LivingEntity; getPlayerVehicleWithHealth o method_1734 + c Retrieves the living entity representing the player's vehicle with health, if any.\n

\n@return the living entity representing the player's vehicle with health, or null if the player is not in a vehicle or the vehicle does not have health. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderDemoOverlay o method_1766 + p 1 guiGraphics + p 2 deltaTracker + m ()V tick p method_1748 + c Advances the tick for various elements and updates their state. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55806 p method_55806 + m ()V tickAutosaveIndicator q method_39193 + c Updates the autosave indicator state. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55807 q method_55807 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55808 r method_55808 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/Gui$1DisplayEntry fhy$a net/minecraft/class_329$class_9016 + f Lnet/minecraft/network/chat/Component; name a comp_2131 + f Lnet/minecraft/network/chat/Component; score b comp_2132 + f I scoreWidth c comp_2133 + m ()Lnet/minecraft/network/chat/Component; name a comp_2131 + m ()Lnet/minecraft/network/chat/Component; score b comp_2132 + m ()I scoreWidth c comp_2133 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;I)V +c net/minecraft/client/gui/Gui$HeartType fhy$b net/minecraft/class_329$class_6411 + f Lnet/minecraft/client/gui/Gui$HeartType; CONTAINER a field_33944 + f Lnet/minecraft/client/gui/Gui$HeartType; NORMAL b field_33945 + f Lnet/minecraft/client/gui/Gui$HeartType; POISIONED c field_33946 + f Lnet/minecraft/client/gui/Gui$HeartType; WITHERED d field_33947 + f Lnet/minecraft/client/gui/Gui$HeartType; ABSORBING e field_33948 + f Lnet/minecraft/client/gui/Gui$HeartType; FROZEN f field_33949 + f Lnet/minecraft/resources/ResourceLocation; full g field_45329 + f Lnet/minecraft/resources/ResourceLocation; fullBlinking h field_45330 + f Lnet/minecraft/resources/ResourceLocation; half i field_45331 + f Lnet/minecraft/resources/ResourceLocation; halfBlinking j field_45332 + f Lnet/minecraft/resources/ResourceLocation; hardcoreFull k field_45333 + f Lnet/minecraft/resources/ResourceLocation; hardcoreFullBlinking l field_45334 + f Lnet/minecraft/resources/ResourceLocation; hardcoreHalf m field_45335 + f Lnet/minecraft/resources/ResourceLocation; hardcoreHalfBlinking n field_45336 + f [Lnet/minecraft/client/gui/Gui$HeartType; $VALUES o field_33952 + m ()[Lnet/minecraft/client/gui/Gui$HeartType; $values a method_37300 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/client/gui/Gui$HeartType; forPlayer a method_37301 + c Returns the {@link HeartType} based on the player's status effects.\n

\n@return the {@link HeartType} based on the player's status effects. + p 0 player + c the player for which to determine the HeartType. + m (ZZZ)Lnet/minecraft/resources/ResourceLocation; getSprite a method_52705 + p 1 hardcore + p 2 halfHeart + p 3 blinking + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 3 full + p 4 fullBlinking + p 5 half + p 6 halfBlinking + p 7 hardcoreFull + p 8 hardcoreBlinking + p 9 hardcoreHalf + p 10 hardcoreHalfBlinking + m ()V +c net/minecraft/client/gui/GuiGraphics fhz net/minecraft/class_332 + f F MAX_GUI_Z a field_44931 + f F MIN_GUI_Z b field_44932 + f I EXTRA_SPACE_AFTER_FIRST_TOOLTIP_LINE c field_44655 + f Lnet/minecraft/client/Minecraft; minecraft d field_44656 + f Lcom/mojang/blaze3d/vertex/PoseStack; pose e field_44657 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource f field_44658 + f Lnet/minecraft/client/gui/GuiGraphics$ScissorStack; scissorStack g field_44659 + f Lnet/minecraft/client/gui/GuiSpriteManager; sprites h field_45337 + f Z managed i field_44797 + m ()I guiWidth a method_51421 + c {@return returns the width of the GUI screen in pixels} + m (FFFF)V setColor a method_51422 + c Sets the current rendering color. + p 1 red + c the red component of the color. + p 2 green + c the green component of the color. + p 3 blue + c the blue component of the color. + p 4 alpha + c the alpha component of the color. + m (II)Z containsPointInScissor a method_58135 + p 1 x + p 2 y + m (IIII)V hLine a method_25292 + c Draws a horizontal line from minX to maxX at the specified y-coordinate with the given color. + p 1 minX + c the x-coordinate of the start point. + p 2 maxX + c the x-coordinate of the end point. + p 3 y + c the y-coordinate of the line. + p 4 color + c the color of the line. + m (IIIII)V fill a method_25294 + c Fills a rectangle with the specified color using the given coordinates as the boundaries. + p 1 minX + c the minimum x-coordinate of the rectangle. + p 2 minY + c the minimum y-coordinate of the rectangle. + p 3 maxX + c the maximum x-coordinate of the rectangle. + p 4 maxY + c the maximum y-coordinate of the rectangle. + p 5 color + c the color to fill the rectangle with. + m (IIIIII)V fill a method_51737 + c Fills a rectangle with the specified color and z-level using the given coordinates as the boundaries. + p 1 minX + c the minimum x-coordinate of the rectangle. + p 2 minY + c the minimum y-coordinate of the rectangle. + p 3 maxX + c the maximum x-coordinate of the rectangle. + p 4 maxY + c the maximum y-coordinate of the rectangle. + p 5 z + c the z-level of the rectangle. + p 6 color + c the color to fill the rectangle with. + m (IIIIIII)V fillGradient a method_33284 + c Fills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given coordinates as the boundaries. + p 1 x1 + c the x-coordinate of the first corner of the rectangle. + p 2 y1 + c the y-coordinate of the first corner of the rectangle. + p 3 x2 + c the x-coordinate of the second corner of the rectangle. + p 4 y2 + c the y-coordinate of the second corner of the rectangle. + p 5 z + c the z-level of the rectangle. + p 6 colorFrom + c the starting color of the gradient. + p 7 colorTo + c the ending color of the gradient. + m (IIIIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V blit a method_25298 + c Blits a portion of the specified texture atlas sprite onto the screen at the given coordinates. + p 1 x + c the x-coordinate of the blit position. + p 2 y + c the y-coordinate of the blit position. + p 3 blitOffset + c the z-level offset for rendering order. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 sprite + c the texture atlas sprite to blit. + m (IIIIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;FFFF)V blit a method_48465 + c Blits a portion of the specified texture atlas sprite onto the screen at the given coordinates with a color tint. + p 1 x + c the x-coordinate of the blit position. + p 2 y + c the y-coordinate of the blit position. + p 3 blitOffset + c the z-level offset for rendering order. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 sprite + c the texture atlas sprite to blit. + p 7 red + c the red component of the color tint. + p 8 green + c the green component of the color tint. + p 9 blue + c the blue component of the color tint. + p 10 alpha + c the alpha component of the color tint. + m (Lnet/minecraft/resources/ResourceLocation;IIFFIIII)V blit a method_25290 + c Blits a portion of the texture specified by the atlas location onto the screen at the given position and dimensions with texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the top-left corner of the blit position. + p 3 y + c the y-coordinate of the top-left corner of the blit position. + p 4 uOffset + c the horizontal texture coordinate offset. + p 5 vOffset + c the vertical texture coordinate offset. + p 6 width + c the width of the blitted portion. + p 7 height + c the height of the blitted portion. + p 8 textureWidth + c the width of the texture. + p 9 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIFFIIII)V blit a method_25291 + c Blits a portion of the texture specified by the atlas location onto the screen at the given coordinates with a blit offset and texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the blit position. + p 3 y + c the y-coordinate of the blit position. + p 4 blitOffset + c the z-level offset for rendering order. + p 5 uOffset + c the horizontal texture coordinate offset. + p 6 vOffset + c the vertical texture coordinate offset. + p 7 uWidth + c the width of the blitted portion in texture coordinates. + p 8 vHeight + c the height of the blitted portion in texture coordinates. + p 9 textureWidth + c the width of the texture. + p 10 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIII)V blitSprite a method_52706 + p 1 sprite + p 2 x + p 3 y + p 4 width + p 5 height + m (Lnet/minecraft/resources/ResourceLocation;IIIIFFIIII)V blit a method_25293 + c Blits a portion of the texture specified by the atlas location onto the screen at the given position and dimensions with texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the top-left corner of the blit position. + p 3 y + c the y-coordinate of the top-left corner of the blit position. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 uOffset + c the horizontal texture coordinate offset. + p 7 vOffset + c the vertical texture coordinate offset. + p 8 uWidth + c the width of the blitted portion in texture coordinates. + p 9 vHeight + c the height of the blitted portion in texture coordinates. + p 10 textureWidth + c the width of the texture. + p 11 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIII)V blitSprite a method_52707 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + m (Lnet/minecraft/resources/ResourceLocation;IIIIIFFFF)V innerBlit a method_25295 + c Performs the inner blit operation for rendering a texture with the specified coordinates and texture coordinates without color tinting. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 minU + c the minimum horizontal texture coordinate. + p 8 maxU + c the maximum horizontal texture coordinate. + p 9 minV + c the minimum vertical texture coordinate. + p 10 maxV + c the maximum vertical texture coordinate. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIFFFFFFFF)V innerBlit a method_48466 + c Performs the inner blit operation for rendering a texture with the specified coordinates, texture coordinates, and color tint. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 minU + c the minimum horizontal texture coordinate. + p 8 maxU + c the maximum horizontal texture coordinate. + p 9 minV + c the minimum vertical texture coordinate. + p 10 maxV + c the maximum vertical texture coordinate. + p 11 red + c the red component of the color tint. + p 12 green + c the green component of the color tint. + p 13 blue + c the blue component of the color tint. + p 14 alpha + c the alpha component of the color tint. + m (Lnet/minecraft/resources/ResourceLocation;IIIIII)V blit a method_25302 + c Blits a portion of the texture specified by the atlas location onto the screen at the given coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the blit position. + p 3 y + c the y-coordinate of the blit position. + p 4 uOffset + c the horizontal texture coordinate offset. + p 5 vOffset + c the vertical texture coordinate offset. + p 6 uWidth + c the width of the blitted portion in texture coordinates. + p 7 vHeight + c the height of the blitted portion in texture coordinates. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIIFFII)V blit a method_25297 + c Performs the inner blit operation for rendering a texture with the specified coordinates and texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 uWidth + c the width of the blitted portion in texture coordinates. + p 8 vHeight + c the height of the blitted portion in texture coordinates. + p 9 uOffset + c the horizontal texture coordinate offset. + p 10 vOffset + c the vertical texture coordinate offset. + p 11 textureWidth + c the width of the texture. + p 12 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIII)V blitSprite a method_52708 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 uWidth + p 9 vHeight + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIIII)V blitSprite a method_52709 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 blitOffset + p 9 uWidth + p 10 vHeight + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51423 + c Renders an item stack for a living entity at the specified coordinates with a random seed. + p 1 entity + c the living entity. + p 2 stack + c the item stack to render. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + p 5 seed + c the random seed. + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51424 + c Renders an item stack for a living entity in a specific level at the specified coordinates with a random seed. + p 1 entity + c the living entity. Can be null. + p 2 level + c the level in which the rendering occurs. Can be null. + p 3 stack + c the item stack to render. + p 4 x + c the x-coordinate of the rendering position. + p 5 y + c the y-coordinate of the rendering position. + p 6 seed + c the random seed. + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;IIII)V renderItem a method_51425 + c Renders an item stack for a living entity in a specific level at the specified coordinates with a random seed and a custom GUI offset. + p 1 entity + c the living entity. Can be null. + p 2 level + c the level in which the rendering occurs. Can be null. + p 3 stack + c the item stack to render. + p 4 x + c the x-coordinate of the rendering position. + p 5 y + c the y-coordinate of the rendering position. + p 6 seed + c the random seed. + p 7 guiOffset + c the GUI offset value. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_57708 a method_57708 + m (Lnet/minecraft/world/item/ItemStack;II)V renderItem a method_51427 + c Renders an item stack at the specified coordinates. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51428 + c Renders an item stack at the specified coordinates with a random seed. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + p 4 seed + c the random seed. + m (Lnet/minecraft/world/item/ItemStack;IIII)V renderItem a method_51429 + c Renders an item stack at the specified coordinates with a random seed and a custom value. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + p 4 seed + c the random seed. + p 5 guiOffset + c the GUI offset. + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIIIII)V fillGradient a method_27533 + c The core `fillGradient` method.\n

\nFills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given render type and coordinates as the boundaries. + p 1 consumer + c the {@linkplain VertexConsumer} object for drawing the vertices on screen. + p 2 x1 + c the x-coordinate of the first corner of the rectangle. + p 3 y1 + c the y-coordinate of the first corner of the rectangle. + p 4 x2 + c the x-coordinate of the second corner of the rectangle. + p 5 y2 + c the y-coordinate of the second corner of the rectangle. + p 6 z + c the z-level of the rectangle. + p 7 colorFrom + c the starting color of the gradient. + p 8 colorTo + c the ending color of the gradient. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;III)V drawCenteredString a method_35719 + c Draws a centered string at the specified coordinates using the given font, formatted character sequence, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;IIIZ)I drawString a method_51430 + c Draws a formatted character sequence at the specified coordinates using the given font, text, color, and drop shadow. Returns the width of the drawn string.\n

\n@return returns the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V renderItemDecorations a method_51431 + c Renders additional decorations for an item stack at the specified coordinates. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to decorate. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;IILjava/lang/String;)V renderItemDecorations a method_51432 + c Renders additional decorations for an item stack at the specified coordinates with optional custom text. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to decorate. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + p 5 text + c the custom text to display. Can be null. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;III)V drawCenteredString a method_25300 + c Draws a centered string at the specified coordinates using the given font, text, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;IIIZ)I drawString a method_51433 + c Draws a string at the specified coordinates using the given font, text, color, and drop shadow. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;II)V renderComponentTooltip a method_51434 + c Renders a tooltip with multiple lines of component-based text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as components. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;IILnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;)V renderTooltipInternal a method_51435 + c Renders an internal tooltip with customizable tooltip components at the specified mouse coordinates using a tooltip positioner. + p 1 font + c the font used for rendering text. + p 2 components + c the tooltip components to render. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + p 5 tooltipPositioner + c the positioner to determine the tooltip's position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;II)V renderTooltip a method_51436 + c Renders a tooltip with multiple lines of formatted text using a custom tooltip positioner at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as formatted character sequences. + p 3 tooltipPositioner + c the positioner to determine the tooltip's position. + p 4 mouseX + c the x-coordinate of the mouse position. + p 5 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;Ljava/util/Optional;II)V renderTooltip a method_51437 + c Renders a tooltip with customizable components at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip. + p 3 visualTooltipComponent + c the visual tooltip component. Can be empty. + p 4 mouseX + c the x-coordinate of the mouse position. + p 5 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;II)V renderTooltip a method_51438 + c Renders a tooltip with a single line of text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 text + c the text to display in the tooltip. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;III)V drawCenteredString a method_27534 + c Draws a centered string at the specified coordinates using the given font, text component, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIII)I drawStringWithBackdrop a method_60649 + p 1 font + p 2 text + p 3 x + p 4 y + p 5 xOffset + p 6 color + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIZ)I drawString a method_51439 + c Draws a component's visual order text at the specified coordinates using the given font, text component, color, and drop shadow.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/FormattedText;IIII)V drawWordWrap a method_51440 + c Draws a formatted text with word wrapping at the specified coordinates using the given font, text, line width, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted text to draw. + p 3 x + c the x-coordinate of the starting position. + p 4 y + c the y-coordinate of the starting position. + p 5 lineWidth + c the maximum width of each line before wrapping. + p 6 color + c the color of the text. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Style;II)V renderComponentHoverEffect a method_51441 + c Renders a hover effect for a text component at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 style + c the style of the text component. Can be null. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V applyScissor a method_49698 + c Applies scissoring based on the provided screen rectangle. + p 1 rectangle + c the screen rectangle to apply scissoring with. Can be null to disable scissoring. + m (Lnet/minecraft/client/renderer/RenderType;IIII)V hLine a method_51738 + c Draws a horizontal line from minX to maxX at the specified y-coordinate with the given color using the specified render type. + p 1 renderType + c the render type to use. + p 2 minX + c the x-coordinate of the start point. + p 3 maxX + c the x-coordinate of the end point. + p 4 y + c the y-coordinate of the line. + p 5 color + c the color of the line. + m (Lnet/minecraft/client/renderer/RenderType;IIIII)V fill a method_51739 + c Fills a rectangle with the specified color using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 minX + c the minimum x-coordinate of the rectangle. + p 3 minY + c the minimum y-coordinate of the rectangle. + p 4 maxX + c the maximum x-coordinate of the rectangle. + p 5 maxY + c the maximum y-coordinate of the rectangle. + p 6 color + c the color to fill the rectangle with. + m (Lnet/minecraft/client/renderer/RenderType;IIIIII)V fill a method_48196 + c Fills a rectangle with the specified color and z-level using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 minX + c the minimum x-coordinate of the rectangle. + p 3 minY + c the minimum y-coordinate of the rectangle. + p 4 maxX + c the maximum x-coordinate of the rectangle. + p 5 maxY + c the maximum y-coordinate of the rectangle. + p 6 z + c the z-level of the rectangle. + p 7 color + c the color to fill the rectangle with. + m (Lnet/minecraft/client/renderer/RenderType;IIIIIII)V fillGradient a method_51740 + c Fills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 x1 + c the x-coordinate of the first corner of the rectangle. + p 3 y1 + c the y-coordinate of the first corner of the rectangle. + p 4 x2 + c the x-coordinate of the second corner of the rectangle. + p 5 y2 + c the y-coordinate of the second corner of the rectangle. + p 6 colorFrom + c the starting color of the gradient. + p 7 colorTo + c the ending color of the gradient. + p 8 z + c the z-level of the rectangle. + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIII)V blitSprite a method_52710 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIIIIIII)V blitSprite a method_52711 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 blitOffset + p 9 uWidth + p 10 vHeight + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIIIIIIIII)V blitTiledSprite a method_52712 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + p 7 uPosition + p 8 vPosition + p 9 spriteWidth + p 10 spriteHeight + p 11 nineSliceWidth + p 12 nineSliceHeight + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;IIIII)V blitNineSlicedSprite a method_52713 + p 1 sprite + p 2 nineSlice + p 3 x + p 4 y + p 5 blitOffset + p 6 width + p 7 height + m (Ljava/lang/Runnable;)V drawManaged a method_51741 + c Executes a runnable while managing the render state. The render state is flushed before and after executing the runnable. + p 1 runnable + c the runnable to execute. + m (Ljava/util/List;Lnet/minecraft/world/inventory/tooltip/TooltipComponent;)V method_51442 a method_51442 + m ()I guiHeight b method_51443 + c {@return returns the height of the GUI screen in pixels} + m (IIII)V vLine b method_25301 + c Draws a vertical line from minY to maxY at the specified x-coordinate with the given color. + p 1 x + c the x-coordinate of the line. + p 2 minY + c the y-coordinate of the start point. + p 3 maxY + c the y-coordinate of the end point. + p 4 color + c the color of the line. + m (IIIII)V renderOutline b method_49601 + c Renders an outline rectangle on the screen with the specified color. + p 1 x + c the x-coordinate of the top-left corner of the rectangle. + p 2 y + c the y-coordinate of the top-left corner of the rectangle. + p 3 width + c the width of the blitted portion. + p 4 height + c the height of the rectangle. + p 5 color + c the color of the outline. + m (IIIIII)V fillGradient b method_25296 + c Fills a rectangle with a gradient color from colorFrom to colorTo using the given coordinates as the boundaries. + p 1 x1 + c the x-coordinate of the first corner of the rectangle. + p 2 y1 + c the y-coordinate of the first corner of the rectangle. + p 3 x2 + c the x-coordinate of the second corner of the rectangle. + p 4 y2 + c the y-coordinate of the second corner of the rectangle. + p 5 colorFrom + c the starting color of the gradient. + p 6 colorTo + c the ending color of the gradient. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_51449 b method_51449 + m (Lnet/minecraft/world/item/ItemStack;II)V renderFakeItem b method_51445 + c Renders a fake item stack at the specified coordinates. + p 1 stack + c the fake item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/world/item/ItemStack;III)V renderFakeItem b method_55231 + p 1 stack + p 2 x + p 3 y + p 4 seed + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;III)I drawString b method_35720 + c Draws a formatted character sequence at the specified coordinates using the given font, text, and color. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V renderTooltip b method_51446 + c Renders a tooltip for an item stack at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to display the tooltip for. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;III)I drawString b method_25303 + c Draws a string at the specified coordinates using the given font, text, and color. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;II)V renderTooltip b method_51447 + c Renders a tooltip with multiple lines of formatted text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as formatted character sequences. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;III)I drawString b method_27535 + c Draws a component's visual order text at the specified coordinates using the given font, text component, and color.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/renderer/RenderType;IIII)V vLine b method_51742 + c Draws a vertical line from minY to maxY at the specified x-coordinate with the given color using the specified render type. + p 1 renderType + c the render type to use. + p 2 x + c the x-coordinate of the line. + p 3 minY + c the y-coordinate of the start point. + p 4 maxY + c the y-coordinate of the end point. + p 5 color + c the color of the line. + m (Lnet/minecraft/client/renderer/RenderType;IIIII)V fillRenderType b method_57709 + p 1 renderType + p 2 x1 + p 3 y1 + p 4 x2 + p 5 y2 + p 6 z + m ()Lcom/mojang/blaze3d/vertex/PoseStack; pose c method_51448 + c {@return returns the PoseStack used for transformations and rendering.} + m (IIII)V enableScissor c method_44379 + c Enables scissoring with the specified screen coordinates. + p 1 minX + c the minimum x-coordinate of the scissor region. + p 2 minY + c the minimum y-coordinate of the scissor region. + p 3 maxX + c the maximum x-coordinate of the scissor region. + p 4 maxY + c the maximum y-coordinate of the scissor region. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_51451 c method_51451 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource d method_51450 + c {@return returns the buffer source for rendering.} + m (IIII)V method_51743 d method_51743 + m ()V flush e method_51452 + c Flushes the render state, ending the current batch and enabling depth testing. + m ()V disableScissor f method_44380 + c Disables scissoring. + m ()V flushIfUnmanaged g method_51744 + c Flushes the render state if it is not managed.\n@deprecated This method is deprecated. + m ()V flushIfManaged h method_51887 + c Flushes the render state if it is managed.\n@deprecated This method is deprecated. + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 minecraft + p 2 pose + p 3 bufferSource + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 minecraft + p 2 bufferSource +c net/minecraft/client/gui/GuiGraphics$ScissorStack fhz$a net/minecraft/class_332$class_8214 + c A utility class for managing a stack of screen rectangles for scissoring. + f Ljava/util/Deque; stack a field_43099 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; pop a method_49699 + c Pops the top screen rectangle from the scissor stack.\n

\n@return The new top screen rectangle after the pop operation, or null if the stack is empty.\n@throws IllegalStateException if the stack is empty. + m (II)Z containsPoint a method_58136 + p 1 x + p 2 y + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; push a method_49700 + c Pushes a screen rectangle onto the scissor stack.\n

\n@return The resulting intersection of the pushed rectangle with the previous top rectangle on the stack, or the pushed rectangle if the stack is empty. + p 1 scissor + c the screen rectangle to push. + m ()V +c net/minecraft/client/gui/GuiSpriteManager fia net/minecraft/class_8658 + f Ljava/util/Set; METADATA_SECTIONS a field_45338 + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; getSpriteScaling a method_52714 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/metadata/gui/GuiMetadataSection; getMetadata b method_52715 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/gui/LayeredDraw fib net/minecraft/class_9080 + f F Z_SEPARATION a field_47848 + f Ljava/util/List; layers b field_47849 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V render a method_55809 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/client/gui/LayeredDraw$Layer;)Lnet/minecraft/client/gui/LayeredDraw; add a method_55810 + p 1 layer + m (Lnet/minecraft/client/gui/LayeredDraw;Ljava/util/function/BooleanSupplier;)Lnet/minecraft/client/gui/LayeredDraw; add a method_55811 + p 1 layeredDraw + p 2 renderInner + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/gui/LayeredDraw;Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55812 a method_55812 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderInner b method_55813 + p 1 guiGraphics + p 2 deltaTracker + m ()V +c net/minecraft/client/gui/LayeredDraw$Layer fib$a net/minecraft/class_9080$class_9081 +c net/minecraft/client/gui/MapRenderer fic net/minecraft/class_330 + f I WIDTH a field_32173 + f I HEIGHT b field_32174 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager c field_2043 + f Lnet/minecraft/client/resources/MapDecorationTextureManager; decorationTextures d field_50036 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; maps e field_2045 + m ()V resetData a method_1771 + c Clears the currently loaded maps and removes their corresponding textures + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V update a method_1769 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Ljava/lang/Integer;Lnet/minecraft/client/gui/MapRenderer$MapInstance;)Lnet/minecraft/client/gui/MapRenderer$MapInstance; method_32600 a method_32600 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;ZI)V render a method_1773 + p 1 poseStack + p 2 buffer + p 3 mapId + p 4 mapData + p 5 active + p 6 packedLight + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)Lnet/minecraft/client/gui/MapRenderer$MapInstance; getOrCreateMapInstance b method_32601 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/resources/MapDecorationTextureManager;)V + p 1 textureManager + p 2 decorationTextures +c net/minecraft/client/gui/MapRenderer$MapInstance fic$a net/minecraft/class_330$class_331 + f Lnet/minecraft/client/gui/MapRenderer; field_2047 a field_2047 + f Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; data b field_2046 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture c field_2048 + f Lnet/minecraft/client/renderer/RenderType; renderType d field_21689 + f Z requiresUpload e field_34044 + m ()V forceUpload a method_37450 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V replaceMapData a method_37451 + p 1 data + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ZI)V draw a method_1777 + p 1 poseStack + p 2 bufferSource + p 3 active + p 4 packedLight + m ()V updateTexture b method_1776 + c Updates a map texture. + m (Lnet/minecraft/client/gui/MapRenderer;ILnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V + p 2 id + p 3 data +c net/minecraft/client/gui/components/AbstractButton fid net/minecraft/class_4264 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES a field_45339 + f I TEXT_MARGIN e field_43050 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderString a method_48589 + p 1 guiGraphics + p 2 font + p 3 color + m ()V onPress b method_25306 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + m ()V +c net/minecraft/client/gui/components/AbstractContainerWidget fie net/minecraft/class_9017 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_47551 + f Z isDragging b field_47552 + m (IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/components/AbstractOptionSliderButton fif net/minecraft/class_4892 + f Lnet/minecraft/client/Options; options a field_22738 + m (Lnet/minecraft/client/Options;IIIID)V + p 1 options + p 2 x + p 3 y + p 4 width + p 5 height + p 6 value +c net/minecraft/client/gui/components/AbstractScrollWidget fig net/minecraft/class_7528 + f Lnet/minecraft/client/gui/components/WidgetSprites; BACKGROUND_SPRITES a field_45905 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE b field_45906 + f I INNER_PADDING c field_39496 + f I SCROLL_BAR_WIDTH d field_45907 + f D scrollAmount e field_39497 + f Z scrolling f field_39498 + m ()I innerPadding a method_44381 + m (D)V setScrollAmount a method_44382 + p 1 scrollAmount + m (II)Z withinContentAreaTopBottom a method_44383 + p 1 top + p 2 bottom + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderDecorations a method_44384 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderBorder a method_52233 + p 1 guiGraphics + p 2 x + p 3 y + p 4 width + p 5 height + m ()I totalInnerPadding b method_44385 + m (DD)Z withinContentAreaPoint b method_44388 + p 1 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderBackground b method_44386 + p 1 guiGraphics + m ()D scrollAmount c method_44387 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderScrollBar c method_44396 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderContents c method_44389 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m ()I getMaxScrollAmount d method_44390 + m ()Z scrollbarVisible e method_44392 + m ()I scrollbarWidth f method_53532 + m ()I getInnerHeight h method_44391 + m ()D scrollRate i method_44393 + m ()I getScrollBarHeight j method_44394 + m ()I getContentHeight k method_44395 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList fih net/minecraft/class_350 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE a field_45908 + f I SCROLLBAR_WIDTH b field_45909 + f Lnet/minecraft/client/Minecraft; minecraft c field_22740 + f I itemHeight d field_22741 + f Z centerListVertically e field_22744 + f I headerHeight f field_22748 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_BACKGROUND_SPRITE m field_49477 + f Lnet/minecraft/resources/ResourceLocation; MENU_LIST_BACKGROUND n field_49478 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_MENU_LIST_BACKGROUND o field_49892 + f Ljava/util/List; children p field_22739 + f D scrollAmount q field_22749 + f Z renderHeader r field_22747 + f Z scrolling s field_22750 + f Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; selected u field_22751 + f Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; hovered v field_33780 + m ()I getRealRowLeft J method_57710 + m ()I getRealRowRight K method_57711 + m ()I getMaxPosition a method_25317 + m (D)V setClampedScrollAmount a method_60321 + p 1 scroll + m (I)V scroll a method_25309 + p 1 scroll + m (II)Z clickedHeader a method_25310 + p 1 x + p 2 y + m (ILnet/minecraft/client/gui/layouts/HeaderAndFooterLayout;)V updateSize a method_57712 + p 1 width + p 2 layout + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderListSeparators a method_57713 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderHeader a method_25312 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIFIIIII)V renderItem a method_44397 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + p 5 index + p 6 left + p 7 top + p 8 width + p 9 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderSelection a method_44398 + p 1 guiGraphics + p 2 top + p 3 width + p 4 height + p 5 outerColor + p 6 innerColor + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V setSelected a method_25313 + p 1 selected + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V narrateListElementPosition a method_37017 + p 1 narrationElementOutput + p 2 entry + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48197 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Ljava/util/function/Predicate;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48198 + p 1 direction + p 2 predicate + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Ljava/util/function/Predicate;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48199 + p 1 direction + p 2 predicate + p 3 selected + m (Ljava/util/Collection;)V replaceEntries a method_25314 + p 1 entries + m (ZI)V setRenderHeader a method_25315 + p 1 renderHeader + p 2 headerHeight + m ()I getRowWidth b method_25322 + m (D)V setScrollAmount b method_25307 + p 1 scroll + m (DD)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getEntryAtPosition b method_25308 + p 1 mouseX + p 3 mouseY + m (III)V updateSizeAndPosition b method_57714 + p 1 width + p 2 height + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderListBackground b method_57715 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderDecorations b method_25320 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)I addEntry b method_25321 + p 1 entry + m ()I getListOutlinePadding c method_57716 + m (DDI)V updateScrollingState c method_25318 + p 1 mouseX + p 3 mouseY + p 5 button + m (Lnet/minecraft/client/gui/GuiGraphics;)V enableScissor c method_49603 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderListItems c method_25311 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V addEntryToTop c method_44399 + p 1 entry + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getEntry d method_25326 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z removeEntryFromTop d method_44650 + p 1 entry + m (I)Z isSelectedItem e method_25332 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V centerScrollOn e method_25324 + p 1 entry + m (I)Z isValidMouseClick f method_53812 + p 1 button + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V ensureVisible f method_25328 + p 1 entry + m (I)I getRowTop g method_25337 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z removeEntry g method_25330 + p 1 entry + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getSelected h method_25334 + m (I)I getRowBottom h method_25319 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V bindEntryToSelf h method_29621 + p 1 entry + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getFirstElement i method_48200 + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; remove i method_25338 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z method_48201 i method_48201 + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getFocused j method_25336 + c Gets the focused GUI element. + m ()V clearEntries k method_25339 + m ()I getItemCount l method_25340 + m ()Z scrollbarVisible m method_57717 + m ()D getScrollAmount n method_25341 + m ()V clampScrollAmount o method_60322 + m ()I getMaxScroll p method_25331 + m ()I getScrollbarPosition q method_25329 + m ()I getDefaultScrollbarPosition r method_57718 + m ()I getRowLeft s method_25342 + m ()I getRowRight t method_31383 + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getHovered v method_37019 + m (Lnet/minecraft/client/Minecraft;IIII)V + p 1 minecraft + p 2 width + p 3 height + p 4 y + p 5 itemHeight + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$1 fih$1 net/minecraft/class_350$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection a field_41786 + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$Entry fih$a net/minecraft/class_350$class_351 + f Lnet/minecraft/client/gui/components/AbstractSelectionList; list a field_22752 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIIIZF)V render a method_25343 + p 1 guiGraphics + p 2 index + p 3 top + p 4 left + p 5 width + p 6 height + p 7 mouseX + p 8 mouseY + p 9 hovering + p 10 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIIIZF)V renderBack b method_49568 + p 1 guiGraphics + p 2 index + p 3 top + p 4 left + p 5 width + p 6 height + p 7 mouseX + p 8 mouseY + p 9 isMouseOver + p 10 partialTick + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$TrackedList fih$b net/minecraft/class_350$class_352 + f Lnet/minecraft/client/gui/components/AbstractSelectionList; field_2145 a field_2145 + f Ljava/util/List; delegate b field_2146 + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; get a method_1912 + p 1 index + m (ILnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; set a method_1909 + p 1 index + p 2 entry + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; remove b method_1911 + p 1 index + m (ILnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V add b method_1910 + p 1 index + p 2 entry + m (Lnet/minecraft/client/gui/components/AbstractSelectionList;)V +c net/minecraft/client/gui/components/AbstractSliderButton fii net/minecraft/class_357 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_SPRITE a field_45340 + f I TEXT_MARGIN b field_43054 + f D value c field_22753 + f Lnet/minecraft/resources/ResourceLocation; HIGHLIGHTED_SPRITE d field_45341 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_HANDLE_SPRITE e field_45342 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_HANDLE_HIGHLIGHTED_SPRITE f field_45343 + f I HANDLE_WIDTH m field_41790 + f I HANDLE_HALF_WIDTH n field_41789 + f Z canChangeValue o field_41796 + m ()V applyValue a method_25344 + m (D)V setValueFromMouse a method_25345 + p 1 mouseX + m ()V updateMessage b method_25346 + m (D)V setValue b method_25347 + p 1 value + m ()Lnet/minecraft/resources/ResourceLocation; getSprite c method_52716 + m ()Lnet/minecraft/resources/ResourceLocation; getHandleSprite e method_52717 + m (IIIILnet/minecraft/network/chat/Component;D)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 value + m ()V +c net/minecraft/client/gui/components/AbstractStringWidget fij net/minecraft/class_8130 + f Lnet/minecraft/client/gui/Font; font a field_42483 + f I color b field_42484 + m ()Lnet/minecraft/client/gui/Font; getFont a method_48977 + m (I)Lnet/minecraft/client/gui/components/AbstractStringWidget; setColor a method_48978 + p 1 color + m ()I getColor b method_48979 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/AbstractWidget fik net/minecraft/class_339 + f D PERIOD_PER_SCROLLED_PIXEL a field_43055 + f D MIN_SCROLL_PERIOD b field_43056 + f I x c field_22760 + f I y d field_22761 + f Lnet/minecraft/network/chat/Component; message e field_22754 + f I tabOrderGroup f field_42116 + f I width g field_22758 + f I height h field_22759 + f Z isHovered i field_22762 + f Z active j field_22763 + f Z visible k field_22764 + f F alpha l field_22765 + f Z focused m field_22756 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip n field_41095 + m ()Z isHovered A method_49606 + m ()Z isHoveredOrFocused B method_25367 + m ()I getRight F method_55442 + m ()I getBottom G method_55443 + m (DD)V onClick a method_25348 + p 1 mouseX + p 3 mouseY + m (F)V setAlpha a method_25350 + p 1 alpha + m (IIII)V setRectangle a method_55444 + p 1 width + p 2 height + p 3 x + p 4 y + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;II)V renderScrollingString a method_49604 + p 1 guiGraphics + p 2 font + p 3 width + p 4 color + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIII)V renderScrollingString a method_52718 + p 0 guiGraphics + p 1 font + p 2 text + p 3 minX + p 4 minY + p 5 maxX + p 6 maxY + p 7 color + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIIII)V renderScrollingString a method_49605 + p 0 guiGraphics + p 1 font + p 2 text + p 3 centerX + p 4 minX + p 5 minY + p 6 maxX + p 7 maxY + p 8 color + m (Lnet/minecraft/client/gui/components/Tooltip;)V setTooltip a method_47400 + p 1 tooltip + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateWidgetNarration a method_47399 + p 1 narrationElementOutput + m (Lnet/minecraft/client/sounds/SoundManager;)V playDownSound a method_25354 + p 1 handler + m (Ljava/time/Duration;)V setTooltipDelay a method_47402 + p 1 tooltipDelay + m ()Lnet/minecraft/network/chat/MutableComponent; createNarrationMessage aQ_ method_25360 + m (DD)V onRelease a_ method_25357 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; wrapDefaultNarrationMessage a_ method_32602 + p 0 message + m (DDDD)V onDrag b method_25349 + p 1 mouseX + p 3 mouseY + p 5 dragX + p 7 dragY + m (II)V setSize b method_55445 + p 1 width + p 2 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderWidget b method_48579 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/network/chat/Component;)V setMessage b method_25355 + p 1 message + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V defaultButtonNarrationText c method_37021 + p 1 narrationElementOutput + m (DD)Z clicked d method_25361 + p 1 mouseX + p 3 mouseY + m (I)Z isValidClickButton j method_25351 + p 1 button + m (I)V setWidth k method_25358 + p 1 width + m (I)V setHeight l method_53533 + p 1 height + m (I)V setTabOrderGroup o method_48591 + p 1 tabOrderGroup + m ()Lnet/minecraft/client/gui/components/Tooltip; getTooltip x method_51254 + m ()Lnet/minecraft/network/chat/Component; getMessage z method_25369 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message +c net/minecraft/client/gui/components/BossHealthOverlay fil net/minecraft/class_337 + f I BAR_WIDTH a field_32177 + f I BAR_HEIGHT b field_32178 + f [Lnet/minecraft/resources/ResourceLocation; BAR_BACKGROUND_SPRITES c field_45344 + f [Lnet/minecraft/resources/ResourceLocation; BAR_PROGRESS_SPRITES d field_45345 + f [Lnet/minecraft/resources/ResourceLocation; OVERLAY_BACKGROUND_SPRITES e field_45346 + f [Lnet/minecraft/resources/ResourceLocation; OVERLAY_PROGRESS_SPRITES f field_45347 + f Lnet/minecraft/client/Minecraft; minecraft g field_2058 + f Ljava/util/Map; events h field_2060 + m ()V reset a method_1801 + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket;)V update a method_1795 + p 1 packet + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1796 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/BossEvent;)V drawBar a method_1799 + p 1 guiGraphics + p 2 x + p 3 y + p 4 bossEvent + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/BossEvent;I[Lnet/minecraft/resources/ResourceLocation;[Lnet/minecraft/resources/ResourceLocation;)V drawBar a method_41830 + p 1 guiGraphics + p 2 x + p 3 y + p 4 bossEvent + p 5 progress + p 6 barProgressSprites + p 7 overlayProgressSprites + m ()Z shouldPlayMusic b method_1798 + m ()Z shouldDarkenScreen c method_1797 + m ()Z shouldCreateWorldFog d method_1800 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/BossHealthOverlay$1 fil$1 net/minecraft/class_337$1 + f Lnet/minecraft/client/gui/components/BossHealthOverlay; field_29071 a field_29071 + m (Lnet/minecraft/client/gui/components/BossHealthOverlay;)V +c net/minecraft/client/gui/components/Button fim net/minecraft/class_4185 + f I SMALL_WIDTH f field_39499 + f I DEFAULT_WIDTH m field_39500 + f I BIG_WIDTH n field_49479 + f I DEFAULT_HEIGHT o field_39501 + f I DEFAULT_SPACING p field_46856 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; DEFAULT_NARRATION q field_40754 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress r field_22767 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; createNarration s field_40755 + m ()Lnet/minecraft/network/chat/MutableComponent; method_46428 a method_46428 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46429 a method_46429 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)Lnet/minecraft/client/gui/components/Button$Builder; builder a method_46430 + p 0 message + p 1 onPress + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 onPress + p 7 createNarration + m ()V +c net/minecraft/client/gui/components/Button$Builder fim$a net/minecraft/class_4185$class_7840 + f Lnet/minecraft/network/chat/Component; message a field_40756 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress b field_40757 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip c field_41099 + f I x d field_40759 + f I y e field_40760 + f I width f field_40761 + f I height g field_40762 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; createNarration h field_40763 + m ()Lnet/minecraft/client/gui/components/Button; build a method_46431 + m (I)Lnet/minecraft/client/gui/components/Button$Builder; width a method_46432 + p 1 width + m (II)Lnet/minecraft/client/gui/components/Button$Builder; pos a method_46433 + p 1 x + p 2 y + m (IIII)Lnet/minecraft/client/gui/components/Button$Builder; bounds a method_46434 + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/components/Button$CreateNarration;)Lnet/minecraft/client/gui/components/Button$Builder; createNarration a method_46435 + p 1 createNarration + m (Lnet/minecraft/client/gui/components/Tooltip;)Lnet/minecraft/client/gui/components/Button$Builder; tooltip a method_46436 + p 1 tooltip + m (II)Lnet/minecraft/client/gui/components/Button$Builder; size b method_46437 + p 1 width + p 2 height + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 onPress +c net/minecraft/client/gui/components/Button$CreateNarration fim$b net/minecraft/class_4185$class_7841 +c net/minecraft/client/gui/components/Button$OnPress fim$c net/minecraft/class_4185$class_4241 +c net/minecraft/client/gui/components/ChatComponent fin net/minecraft/class_338 + f Lorg/slf4j/Logger; LOGGER a field_2065 + f I MAX_CHAT_HISTORY b field_32180 + f I MESSAGE_NOT_FOUND c field_39771 + f I MESSAGE_INDENT d field_39772 + f I MESSAGE_TAG_MARGIN_LEFT e field_39773 + f I BOTTOM_MARGIN f field_40389 + f I TIME_BEFORE_MESSAGE_DELETION g field_40390 + f Lnet/minecraft/network/chat/Component; DELETED_CHAT_MESSAGE h field_40391 + f Lnet/minecraft/client/Minecraft; minecraft i field_2062 + f Lnet/minecraft/util/ArrayListDeque; recentChat j field_2063 + c A list of messages previously sent through the chat GUI + f Ljava/util/List; allMessages k field_2061 + c Chat lines to be displayed in the chat box + f Ljava/util/List; trimmedMessages l field_2064 + c List of the ChatLines currently drawn + f I chatScrollbarPos m field_2066 + f Z newMessageSinceScroll n field_2067 + f Ljava/util/List; messageDeletionQueue o field_40392 + m ()V tick a method_45584 + m (D)I getWidth a method_1806 + p 0 width + m (DD)Z handleChatQueueClicked a method_27146 + p 1 mouseX + p 3 mouseY + m (DLnet/minecraft/client/GuiMessage$Line;Lnet/minecraft/client/GuiMessageTag;)Z hasSelectedMessageTag a method_44718 + p 1 x + p 3 line + p 4 tag + m (I)V scrollChat a method_1802 + p 1 posInc + m (ILnet/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion;)Z method_45585 a method_45585 + m (Lnet/minecraft/client/GuiMessage$Line;)I getTagIconLeft a method_44720 + p 1 line + m (Lnet/minecraft/client/GuiMessage;)V logChatMessage a method_45027 + p 1 message + m (Lnet/minecraft/client/gui/GuiGraphics;IIIZ)V render a method_1805 + p 1 guiGraphics + p 2 tickCount + p 3 mouseX + p 4 mouseY + p 5 focused + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/GuiMessageTag$Icon;)V drawTagIcon a method_44719 + p 1 guiGraphics + p 2 left + p 3 bottom + p 4 tagIcon + m (Lnet/minecraft/client/gui/components/ChatComponent$State;)V restoreState a method_58743 + p 1 state + m (Ljava/lang/String;)V addRecentChat a method_1803 + c Adds this string to the list of sent messages, for recall using the up/down arrow keys + p 1 message + m (Lnet/minecraft/network/chat/Component;)V addMessage a method_1812 + p 1 chatComponent + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/GuiMessageTag;)V addMessage a method_44811 + p 1 chatComponent + p 2 headerSignature + p 3 tag + m (Lnet/minecraft/network/chat/MessageSignature;)V deleteMessage a method_44812 + p 1 messageSignature + m (Z)V clearMessages a method_1808 + c Clears the chat. + p 1 clearSentMsgHistory + c Whether to clear the user's sent message history + m ()V rescaleChat b method_1817 + m (D)I getHeight b method_1818 + p 0 height + m (DD)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt b method_1816 + p 1 mouseX + p 3 mouseY + m (I)D getTimeFactor b method_19348 + p 0 counter + m (Lnet/minecraft/client/GuiMessage;)V addMessageToDisplayQueue b method_1815 + p 1 message + m (Lnet/minecraft/network/chat/MessageSignature;)Lnet/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion; deleteMessageOrDelay b method_45587 + p 1 messageSignature + m ()Lnet/minecraft/util/ArrayListDeque; getRecentChat c method_1809 + m (D)D screenToChatX c method_44722 + p 1 x + m (DD)Lnet/minecraft/client/GuiMessageTag; getMessageTagAt c method_44723 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/GuiMessage;)V addMessageToQueue c method_58744 + p 1 message + m ()V resetChatScroll d method_1820 + c Resets the chat scroll (executed when the GUI is closed, among others) + m (D)D screenToChatY d method_44724 + p 1 y + m (DD)I getMessageEndIndexAt d method_45588 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/GuiMessage;)Lnet/minecraft/client/GuiMessage; createDeletedMarker d method_45586 + p 1 message + m ()Z isChatFocused e method_1819 + c Returns {@code true} if the chat GUI is open + m (DD)I getMessageLineIndexAt e method_44725 + p 1 mouseX + p 3 mouseY + m ()I getWidth f method_1811 + m ()I getHeight g method_1810 + m ()D getScale h method_1814 + m ()D defaultUnfocusedPct i method_41831 + m ()I getLinesPerPage j method_1813 + m ()Lnet/minecraft/client/gui/components/ChatComponent$State; storeState k method_58745 + m ()Z isChatHidden l method_23677 + m ()V processMessageDeletionQueue m method_45589 + m ()V refreshTrimmedMessages n method_44813 + m ()I getLineHeight o method_44752 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion fin$a net/minecraft/class_338$class_7731 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1021 + f I deletableAfter b comp_1022 + m ()Lnet/minecraft/network/chat/MessageSignature; signature a comp_1021 + m ()I deletableAfter b comp_1022 + m (Lnet/minecraft/network/chat/MessageSignature;I)V +c net/minecraft/client/gui/components/ChatComponent$State fin$b net/minecraft/class_338$class_9477 + f Ljava/util/List; messages a field_50218 + f Ljava/util/List; history b field_50219 + f Ljava/util/List; delayedMessageDeletions c field_50220 + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 messages + p 2 history + p 3 delayedMessageDeletions +c net/minecraft/client/gui/components/Checkbox fio net/minecraft/class_4286 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SELECTED_HIGHLIGHTED_SPRITE a field_45348 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SELECTED_SPRITE b field_45349 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_HIGHLIGHTED_SPRITE c field_45350 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SPRITE d field_45351 + f I TEXT_COLOR f field_32181 + f I SPACING m field_47105 + f I BOX_PADDING n field_47106 + f Z selected o field_19230 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; onValueChange p field_47107 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget q field_52293 + m ()Z selected a method_20372 + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)I getAdjustedWidth a method_61128 + p 1 maxWidth + p 2 message + p 3 font + m (Lnet/minecraft/client/gui/Font;)I getBoxSize a method_54786 + p 0 font + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)Lnet/minecraft/client/gui/components/Checkbox$Builder; builder a method_54787 + p 0 message + p 1 font + m (Lnet/minecraft/client/gui/Font;)I getAdjustedHeight b method_61129 + p 1 font + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)I getDefaultWidth b method_61130 + p 0 message + p 1 font + m (IIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;ZLnet/minecraft/client/gui/components/Checkbox$OnValueChange;)V + p 1 x + p 2 y + p 3 maxWidth + p 4 message + p 5 font + p 6 selected + p 7 onValueChange + m ()V +c net/minecraft/client/gui/components/Checkbox$Builder fio$a net/minecraft/class_4286$class_8929 + f Lnet/minecraft/network/chat/Component; message a field_47108 + f Lnet/minecraft/client/gui/Font; font b field_47109 + f I maxWidth c field_52294 + f I x d field_47110 + f I y e field_47111 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; onValueChange f field_47112 + f Z selected g field_47113 + f Lnet/minecraft/client/OptionInstance; option h field_47114 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip i field_47115 + m ()Lnet/minecraft/client/gui/components/Checkbox; build a method_54788 + m (I)Lnet/minecraft/client/gui/components/Checkbox$Builder; maxWidth a method_61131 + p 1 maxWidth + m (II)Lnet/minecraft/client/gui/components/Checkbox$Builder; pos a method_54789 + p 1 x + p 2 y + m (Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/Checkbox$Builder; selected a method_54790 + p 1 option + m (Lnet/minecraft/client/gui/components/Checkbox$OnValueChange;)Lnet/minecraft/client/gui/components/Checkbox$Builder; onValueChange a method_54791 + p 1 onValueChange + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_54792 a method_54792 + m (Lnet/minecraft/client/gui/components/Tooltip;)Lnet/minecraft/client/gui/components/Checkbox$Builder; tooltip a method_54793 + p 1 tooltip + m (Z)Lnet/minecraft/client/gui/components/Checkbox$Builder; selected a method_54794 + p 1 selected + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font +c net/minecraft/client/gui/components/Checkbox$OnValueChange fio$b net/minecraft/class_4286$class_8930 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; NOP a field_47116 + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_54795 a method_54795 + m ()V +c net/minecraft/client/gui/components/CommandSuggestions fip net/minecraft/class_4717 + f Ljava/util/regex/Pattern; WHITESPACE_PATTERN a field_21596 + f Lnet/minecraft/network/chat/Style; UNPARSED_STYLE b field_25885 + f Lnet/minecraft/network/chat/Style; LITERAL_STYLE c field_25886 + f Ljava/util/List; ARGUMENT_STYLES d field_25887 + f Lnet/minecraft/client/Minecraft; minecraft e field_21597 + f Lnet/minecraft/client/gui/screens/Screen; screen f field_21598 + f Lnet/minecraft/client/gui/components/EditBox; input g field_21599 + f Lnet/minecraft/client/gui/Font; font h field_21600 + f Z commandsOnly i field_21601 + f Z onlyShowIfCursorPastError j field_21602 + f I lineStartOffset k field_21603 + f I suggestionLineLimit l field_21604 + f Z anchorToBottom m field_21605 + f I fillColor n field_21606 + f Ljava/util/List; commandUsage o field_21607 + f I commandUsagePosition p field_21608 + f I commandUsageWidth q field_21609 + f Lcom/mojang/brigadier/ParseResults; currentParse r field_21610 + f Ljava/util/concurrent/CompletableFuture; pendingSuggestions s field_21611 + f Lnet/minecraft/client/gui/components/CommandSuggestions$SuggestionsList; suggestions t field_21612 + f Z allowSuggestions u field_21613 + f Z keepSuggestions v field_21614 + f Z allowHiding w field_46191 + m ()Z isVisible a method_53867 + m (D)Z mouseScrolled a method_23921 + p 1 delta + m (DDI)Z mouseClicked a method_23922 + p 1 mouseX + p 3 mouseY + p 5 mouseButton + m (III)Z keyPressed a method_23924 + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;I)Lnet/minecraft/util/FormattedCharSequence; formatText a method_23925 + p 0 provider + p 1 command + p 2 maxLength + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Lnet/minecraft/util/FormattedCharSequence; getExceptionMessage a method_30505 + p 0 exception + m (Lcom/mojang/brigadier/suggestion/Suggestions;)Ljava/util/List; sortSuggestions a method_30104 + p 1 suggestions + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderUsage a method_44932 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_23923 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Ljava/lang/String;)I getLastWordIndex a method_23930 + p 0 text + m (Ljava/lang/String;I)Lnet/minecraft/util/FormattedCharSequence; formatChat a method_23931 + p 1 command + p 2 maxLength + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; calculateSuggestionSuffix a method_23936 + p 0 inputText + p 1 suggestionText + m (Lnet/minecraft/ChatFormatting;)Z fillNodeUsage a method_23929 + p 1 chatFormatting + m (Z)V setAllowSuggestions a method_23933 + p 1 autoSuggest + m ()Lnet/minecraft/network/chat/Component; getUsageNarration b method_53868 + m (Lnet/minecraft/client/gui/GuiGraphics;II)Z renderSuggestions b method_44933 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Z)V setAllowHiding b method_53869 + p 1 allowHiding + m ()V hide c method_44931 + m (Z)V showSuggestions c method_23920 + p 1 narrateFirstSuggestion + m ()V updateCommandInfo d method_23934 + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage e method_23958 + m ()V updateUsageInfo f method_23937 + m ()V method_23939 g method_23939 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/components/EditBox;Lnet/minecraft/client/gui/Font;ZZIIZI)V + p 1 minecraft + p 2 screen + p 3 input + p 4 font + p 5 commandsOnly + p 6 onlyShowIfCursorPastError + p 7 lineStartOffset + p 8 suggestionLineLimit + p 9 anchorToBottom + p 10 fillColor + m ()V +c net/minecraft/client/gui/components/CommandSuggestions$SuggestionsList fip$a net/minecraft/class_4717$class_464 + f Lnet/minecraft/client/gui/components/CommandSuggestions; field_21615 a field_21615 + f Lnet/minecraft/client/renderer/Rect2i; rect b field_2771 + f Ljava/lang/String; originalContents c field_2768 + f Ljava/util/List; suggestionList d field_25709 + f I offset e field_2769 + f I current f field_2766 + f Lnet/minecraft/world/phys/Vec2; lastMouse g field_2767 + f Z tabCycles h field_2765 + f I lastNarratedEntry i field_21630 + m ()V useSuggestion a method_2375 + m (D)Z mouseScrolled a method_2370 + p 1 delta + m (I)V cycle a method_2371 + p 1 change + m (III)Z mouseClicked a method_2372 + p 1 mouseX + p 2 mouseY + p 3 mouseButton + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_2373 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage b method_23960 + m (I)V select b method_2374 + p 1 index + m (III)Z keyPressed b method_2377 + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/CommandSuggestions;IIILjava/util/List;Z)V + p 2 xPos + p 3 yPos + p 4 width + p 5 suggestionList + p 6 narrateFirstSuggestion +c net/minecraft/client/gui/components/CommonButtons fiq net/minecraft/class_8082 + m (ILnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton; language a method_48592 + p 0 width + p 1 onPress + p 2 iconOnly + m (ILnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton; accessibility b method_48594 + p 0 width + p 1 onPress + p 2 iconOnly + m ()V +c net/minecraft/client/gui/components/ComponentRenderUtils fir net/minecraft/class_341 + f Lnet/minecraft/util/FormattedCharSequence; INDENT a field_25263 + m (Lnet/minecraft/client/ComponentCollector;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27536 a method_27536 + m (Ljava/lang/String;)Ljava/lang/String; stripColor a method_1849 + p 0 text + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_30886 a method_30886 + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/client/gui/Font;)Ljava/util/List; wrapComponents a method_1850 + p 0 component + p 1 maxWidth + p 2 font + m ()V + m ()V +c net/minecraft/client/gui/components/ContainerObjectSelectionList fis net/minecraft/class_4265 + m (Lnet/minecraft/client/gui/components/ContainerObjectSelectionList$Entry;)Z method_48207 a method_48207 + m (Lnet/minecraft/client/Minecraft;IIII)V + p 1 minecraft + p 2 width + p 3 height + p 4 y + p 5 itemHeight +c net/minecraft/client/gui/components/ContainerObjectSelectionList$1 fis$1 net/minecraft/class_4265$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection a field_41804 + m ()V +c net/minecraft/client/gui/components/ContainerObjectSelectionList$Entry fis$a net/minecraft/class_4265$class_4266 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_19077 + f Lnet/minecraft/client/gui/narration/NarratableEntry; lastNarratable b field_33782 + f Z dragging c field_19078 + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration a method_37024 + p 1 narrationElementOutput + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;I)Lnet/minecraft/client/gui/ComponentPath; focusPathAtIndex a method_48208 + p 1 event + p 2 index + m ()Ljava/util/List; narratables b method_37025 + m ()V +c net/minecraft/client/gui/components/CycleButton fit net/minecraft/class_5676 + f Ljava/util/function/BooleanSupplier; DEFAULT_ALT_LIST_SELECTOR a field_27961 + f Ljava/util/List; BOOLEAN_OPTIONS b field_27962 + f Lnet/minecraft/network/chat/Component; name c field_27963 + f I index d field_27964 + f Ljava/lang/Object; value f field_27965 + f Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; values m field_27966 + f Ljava/util/function/Function; valueStringifier n field_27967 + f Ljava/util/function/Function; narrationProvider o field_27968 + f Lnet/minecraft/client/gui/components/CycleButton$OnValueChange; onValueChange p field_27969 + f Z displayOnlyValue q field_27971 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier r field_27970 + m ()Ljava/lang/Object; getValue a method_32603 + m (I)V cycleValue a method_32612 + p 1 delta + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_32604 a method_32604 + m (Ljava/lang/Object;)V setValue a method_32605 + p 1 value + m (Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/CycleButton$Builder; builder a method_32606 + p 0 valueStringifier + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/CycleButton$Builder; booleanBuilder a method_32607 + p 0 componentOn + p 1 componentOff + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_32608 a method_32608 + m (I)Ljava/lang/Object; getCycledValue b method_37027 + p 1 delta + m (Ljava/lang/Object;)V updateValue b method_32609 + p 1 value + m (Z)Lnet/minecraft/client/gui/components/CycleButton$Builder; onOffBuilder b method_32613 + p 0 initialValue + m ()Lnet/minecraft/network/chat/MutableComponent; createDefaultNarrationMessage c method_32611 + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; createLabelForValue c method_37026 + p 1 value + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; createFullName d method_32610 + p 1 value + m ()Lnet/minecraft/client/gui/components/CycleButton$Builder; onOffBuilder e method_32614 + m ()V updateTooltip f method_47403 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILjava/lang/Object;Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Z)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 name + p 7 index + p 8 value + p 9 values + p 10 valueStringifier + p 11 narrationProvider + p 12 onValueChange + p 13 tooltipSupplier + p 14 displayOnlyValue + m ()V +c net/minecraft/client/gui/components/CycleButton$Builder fit$a net/minecraft/class_5676$class_5677 + f I initialIndex a field_27972 + f Ljava/lang/Object; initialValue b field_27973 + f Ljava/util/function/Function; valueStringifier c field_27974 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier d field_27975 + f Ljava/util/function/Function; narrationProvider e field_27976 + f Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; values f field_27977 + f Z displayOnlyValue g field_27978 + m ()Lnet/minecraft/client/gui/components/CycleButton$Builder; displayOnlyValue a method_32616 + m (IIIILnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/CycleButton; create a method_35723 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 name + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;)Lnet/minecraft/client/gui/components/CycleButton; create a method_32617 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 name + p 6 onValueChange + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withTooltip a method_32618 + p 1 tooltipSupplier + m (Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_42729 + p 1 values + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Object;)V method_35724 a method_35724 + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withInitialValue a method_32619 + p 1 initialValue + m (Ljava/util/Collection;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32620 + p 1 values + m (Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32621 + p 1 defaultList + p 2 selectedList + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32622 + p 1 altListSelector + p 2 defaultList + p 3 selectedList + m (Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withCustomNarration a method_32623 + p 1 narrationProvider + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;)Lnet/minecraft/client/gui/components/CycleButton; create a method_57720 + p 1 message + p 2 onValueChange + m ([Ljava/lang/Object;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32624 + p 1 values + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_32625 b method_32625 + m (Ljava/util/function/Function;)V + p 1 valueStringifier +c net/minecraft/client/gui/components/CycleButton$OnValueChange fit$b net/minecraft/class_5676$class_5678 +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier fit$c net/minecraft/class_5676$class_5680 + m ()Ljava/util/List; getSelectedList a method_32626 + m (Ljava/util/Collection;)Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; create a method_32627 + p 0 values + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; create a method_32628 + p 0 altListSelector + p 1 defaultList + p 2 selectedList + m ()Ljava/util/List; getDefaultList b method_32629 +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier$1 fit$c$1 net/minecraft/class_5676$class_5680$1 + f Ljava/util/List; val$copy a field_27979 + m (Ljava/util/List;)V +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier$2 fit$c$2 net/minecraft/class_5676$class_5680$2 + f Ljava/util/function/BooleanSupplier; val$altSelector a field_27980 + f Ljava/util/List; val$altCopy b field_27981 + f Ljava/util/List; val$defaultCopy c field_27982 + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/gui/components/DebugScreenOverlay fiu net/minecraft/class_340 + f I COLOR_GREY a field_32187 + f I MARGIN_RIGHT b field_32188 + f I MARGIN_LEFT c field_32189 + f I MARGIN_TOP d field_32190 + f Ljava/util/Map; HEIGHTMAP_NAMES e field_19274 + f Lnet/minecraft/client/Minecraft; minecraft f field_2079 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay$AllocationRateCalculator; allocationRateCalculator g field_38985 + f Lnet/minecraft/client/gui/Font; font h field_2081 + f Lnet/minecraft/world/phys/HitResult; block i field_2082 + f Lnet/minecraft/world/phys/HitResult; liquid j field_2083 + f Lnet/minecraft/world/level/ChunkPos; lastPos k field_2085 + f Lnet/minecraft/world/level/chunk/LevelChunk; clientChunk l field_2084 + f Ljava/util/concurrent/CompletableFuture; serverChunk m field_2080 + f Z renderDebug n field_45988 + f Z renderProfilerChart o field_45989 + f Z renderFpsCharts p field_45990 + f Z renderNetworkCharts q field_45991 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; frameTimeLogger r field_45992 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; tickTimeLogger s field_45993 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; pingLogger t field_45994 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; bandwidthLogger u field_45995 + f Ljava/util/Map; remoteSupportingLoggers v field_48931 + f Lnet/minecraft/client/gui/components/debugchart/FpsDebugChart; fpsChart w field_45910 + f Lnet/minecraft/client/gui/components/debugchart/TpsDebugChart; tpsChart x field_45913 + f Lnet/minecraft/client/gui/components/debugchart/PingDebugChart; pingChart y field_45911 + f Lnet/minecraft/client/gui/components/debugchart/BandwidthDebugChart; bandwidthChart z field_45912 + m ()V clearChunkCache a method_1842 + m (J)V logFrameDuration a method_53534 + p 1 frameDuration + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_40206 a method_40206 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/world/level/chunk/LevelChunk; method_20541 a method_20541 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40203 a method_40203 + m (Lnet/minecraft/world/level/biome/Biome;)Ljava/lang/String; method_40204 a method_40204 + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/Float; method_54796 a method_54796 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1846 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/util/List;Z)V renderLines a method_51745 + p 1 guiGraphics + p 2 lines + p 3 leftSide + m (Lnet/minecraft/client/server/IntegratedServer;)Ljava/util/Optional; method_1841 a method_1841 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/entity/MobCategory;)Ljava/lang/String; method_27870 a method_27870 + m (Ljava/util/EnumMap;)V method_20455 a method_20455 + m (Ljava/util/Map$Entry;)Ljava/lang/String; getPropertyValueString a method_1845 + p 1 entry + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; printBiome a method_40205 + p 0 biomeHolder + m ([JLnet/minecraft/util/debugchart/RemoteDebugSampleType;)V logRemoteSample a method_56828 + p 1 sample + p 2 sampleType + m ()Ljava/util/List; getGameInformation b method_1835 + m (J)J bytesToMegabytes b method_1838 + p 0 bytes + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40207 b method_40207 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawGameInformation b method_1847 + p 1 guiGraphics + m ()Ljava/util/List; getSystemInformation c method_1839 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSystemInformation c method_1848 + p 1 guiGraphics + m ()Z showDebugScreen d method_53536 + m (Lnet/minecraft/client/gui/GuiGraphics;)V method_51746 d method_51746 + m ()Z showProfilerChart e method_53537 + m ()Z showNetworkCharts f method_53538 + m ()Z showFpsCharts g method_56829 + m ()V toggleOverlay h method_53539 + m ()V toggleNetworkCharts i method_53540 + m ()V toggleFpsCharts j method_53541 + m ()V toggleProfilerChart k method_53542 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getTickTimeLogger l method_56577 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getPingLogger m method_53543 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getBandwidthLogger n method_53544 + m ()V reset o method_53545 + m ()Lnet/minecraft/server/level/ServerLevel; getServerLevel p method_20603 + m ()Ljava/lang/String; getServerChunkStats q method_27871 + m ()Lnet/minecraft/world/level/Level; getLevel r method_1840 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getServerChunk s method_1834 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getClientChunk t method_1836 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/DebugScreenOverlay$1 fiu$1 net/minecraft/class_340$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_2086 + m ()V +c net/minecraft/client/gui/components/DebugScreenOverlay$AllocationRateCalculator fiu$a net/minecraft/class_340$class_7412 + f I UPDATE_INTERVAL_MS a field_38986 + f Ljava/util/List; GC_MBEANS b field_38987 + f J lastTime c field_38988 + f J lastHeapUsage d field_38989 + f J lastGcCounts e field_38990 + f J lastRate f field_38991 + m ()J gcCounts a method_43447 + m (J)J bytesAllocatedPerSecond a method_43448 + p 1 heapUsage + m ()V + m ()V +c net/minecraft/client/gui/components/EditBox fiv net/minecraft/class_342 + f Ljava/lang/String; suggestion A field_2106 + f Ljava/util/function/Consumer; responder B field_2088 + f Ljava/util/function/Predicate; filter C field_2104 + c Called to check if the text is valid + f Ljava/util/function/BiFunction; formatter D field_2099 + f Lnet/minecraft/network/chat/Component; hint E field_41100 + f J focusedTime F field_45352 + f I BACKWARDS a field_32194 + f I FORWARDS b field_32195 + f I DEFAULT_TEXT_COLOR c field_32196 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES d field_45914 + f I CURSOR_INSERT_WIDTH e field_32197 + f I CURSOR_INSERT_COLOR f field_32198 + f Ljava/lang/String; CURSOR_APPEND_CHARACTER m field_32199 + f I CURSOR_BLINK_INTERVAL_MS n field_45354 + f Lnet/minecraft/client/gui/Font; font o field_2105 + f Ljava/lang/String; value p field_2092 + c Has the current text being edited on the textbox. + f I maxLength q field_2108 + f Z bordered r field_2095 + f Z canLoseFocus s field_2096 + c if true the textbox can lose focus by clicking elsewhere on the screen + f Z isEditable u field_2094 + c If this value is true along with isFocused, keyTyped will process the keys. + f I displayPos v field_2103 + c The current character index that should be used as start of the rendered text. + f I cursorPos w field_2102 + f I highlightPos x field_2101 + c other selection position, maybe the same as the cursor + f I textColor y field_2100 + f I textColorUneditable z field_2098 + m ()Ljava/lang/String; getValue a method_1882 + c Returns the contents of the textbox + m (I)V deleteWords a method_1877 + c Deletes the given number of words from the current cursor's position, unless there is currently a selection, in which case the selection is deleted instead. + p 1 num + m (II)I getWordPosition a method_1869 + c Gets the starting index of the word at a distance of the specified number of words away from the given position. + p 1 numWords + p 2 pos + m (IIZ)I getWordPosition a method_1864 + c Like getNthWordFromPos (which wraps this), but adds option for skipping consecutive spaces + p 1 numWords + p 2 pos + p 3 skipConsecutiveSpaces + m (IZ)V moveCursor a method_1855 + p 1 delta + p 2 select + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderHighlight a method_1886 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Ljava/lang/String;)V setValue a method_1852 + c Sets the text of the textbox, and moves the cursor to the end. + p 1 text + m (Ljava/lang/String;Ljava/lang/Integer;)Lnet/minecraft/util/FormattedCharSequence; method_1873 a method_1873 + m (Ljava/util/function/BiFunction;)V setFormatter a method_1854 + p 1 textFormatter + m (Ljava/util/function/Predicate;)V setFilter a method_1890 + p 1 validator + m ()Ljava/lang/String; getHighlighted b method_1866 + c Returns the text between the cursor and selectionEnd. + m (I)V deleteChars b method_1878 + c Deletes the given number of characters from the current cursor's position, unless there is currently a selection, in which case the selection is deleted instead. + p 1 num + m (IZ)V moveCursorTo b method_1883 + p 1 delta + p 2 select + m (Ljava/lang/String;)V insertText b method_1867 + c Adds the given text after the cursor, or replaces the currently selected text if there is a selection. + p 1 textToWrite + m (Ljava/util/function/Consumer;)V setResponder b method_1863 + p 1 responder + m (Z)V moveCursorToStart b method_1870 + p 1 select + m ()Z canConsumeInput c method_20315 + m (I)V deleteCharsToPos c method_55506 + p 1 num + m (Ljava/lang/String;)V setSuggestion c method_1887 + p 1 suggestion + m (Lnet/minecraft/network/chat/Component;)V setHint c method_47404 + p 1 hint + m (Z)V moveCursorToEnd c method_1872 + p 1 select + m (I)I getWordPosition d method_1853 + c Gets the starting index of the word at the specified number of words away from the cursor position. + p 1 numWords + m (Ljava/lang/String;)V onValueChange d method_1874 + p 1 newText + m (Z)V setBordered d method_1858 + c Sets whether the background and outline of this text box should be drawn. + p 1 enableBackgroundDrawing + m ()I getCursorPosition e method_1881 + c Returns the current position of the cursor. + m (I)V setCursorPosition e method_1875 + p 1 pos + m (Z)V setEditable e method_1888 + c Sets whether this text box is enabled. Disabled text boxes cannot be typed in. + p 1 enabled + m ()Z isBordered f method_1851 + c Gets whether the background and outline of this text box should be drawn (true if so). + m (I)V setMaxLength f method_1880 + c Sets the maximum length for the text in this text box. If the current text is longer than this length, the current text will be trimmed. + p 1 length + m (Z)V setCanLoseFocus f method_1856 + c Sets whether this text box loses focus when something other than it is clicked. + p 1 canLoseFocus + m (I)V setTextColor g method_1868 + c Sets the color to use when drawing this text box's text. A different color is used if this text box is disabled. + p 1 color + m (Z)V setVisible g method_1862 + c Sets whether this textbox is visible. + p 1 isVisible + m ()I getInnerWidth h method_1859 + c Returns the width of the textbox depending on if background drawing is enabled. + m (I)V setTextColorUneditable h method_1860 + c Sets the color to use for text in this text box when this text box is disabled. + p 1 color + m ()Z isVisible i method_1885 + c Returns {@code true} if this textbox is visible. + m (I)V setHighlightPos i method_1884 + c Sets the position of the selection anchor (the selection anchor and the cursor position mark the edges of the selection). If the anchor is set beyond the bounds of the current text, it will be put back inside. + p 1 position + m ()I getMaxLength j method_1861 + c Returns the maximum number of character that can be contained in this textbox. + m ()Z isEditable k method_20316 + m (I)I getScreenX p method_1889 + p 1 charNum + m (I)V deleteText q method_16873 + p 1 count + m (I)I getCursorPos r method_27537 + p 1 delta + m (I)V scrollTo s method_52719 + p 1 position + m (Lnet/minecraft/client/gui/Font;IILnet/minecraft/network/chat/Component;)V + p 1 font + p 2 width + p 3 height + p 4 message + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 message + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/client/gui/components/EditBox;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 editBox + p 7 message + m ()V +c net/minecraft/client/gui/components/FittingMultiLineTextWidget fiw net/minecraft/class_8577 + f Lnet/minecraft/client/gui/Font; font a field_44947 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; multilineWidget b field_44948 + m (I)Lnet/minecraft/client/gui/components/FittingMultiLineTextWidget; setColor a method_52234 + p 1 color + m ()Z showingScrollBar j method_53546 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/FocusableTextWidget fix net/minecraft/class_8019 + f I DEFAULT_PADDING a field_41802 + f Z alwaysShowBorder b field_45355 + f I padding c field_49480 + m (I)V containWithin b method_57721 + p 1 width + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 maxWidth + p 2 message + p 3 font + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;I)V + p 1 maxWidth + p 2 message + p 3 font + p 4 padding + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;ZI)V + p 1 maxWidth + p 2 message + p 3 font + p 4 alwaysShowBorder + p 5 padding +c net/minecraft/client/gui/components/ImageButton fiy net/minecraft/class_344 + f Lnet/minecraft/client/gui/components/WidgetSprites; sprites a field_45356 + m (IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprites + p 6 onPress + m (IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprites + p 6 onPress + p 7 message + m (IILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 width + p 2 height + p 3 sprites + p 4 onPress + p 5 message +c net/minecraft/client/gui/components/ImageWidget fiz net/minecraft/class_8208 + m (IILnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/components/ImageWidget; sprite a method_52720 + p 0 width + p 1 height + p 2 sprite + m (IILnet/minecraft/resources/ResourceLocation;II)Lnet/minecraft/client/gui/components/ImageWidget; texture a method_52721 + p 0 width + p 1 height + p 2 texture + p 3 textureWidth + p 4 textureHeight + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/components/ImageWidget$Sprite fiz$a net/minecraft/class_8208$class_8659 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45357 + m (IIIILnet/minecraft/resources/ResourceLocation;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprite +c net/minecraft/client/gui/components/ImageWidget$Texture fiz$b net/minecraft/class_8208$class_8660 + f Lnet/minecraft/resources/ResourceLocation; texture a field_45358 + f I textureWidth b field_45359 + f I textureHeight c field_45360 + m (IIIILnet/minecraft/resources/ResourceLocation;II)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 texture + p 6 textureWidth + p 7 textureHeight +c net/minecraft/client/gui/components/LerpingBossEvent fja net/minecraft/class_345 + f F targetPercent h field_2129 + f J setTime i field_2128 + f J LERP_MILLISECONDS j field_32204 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;ZZZ)V + p 1 id + p 2 name + p 3 progress + p 4 color + p 5 overlay + p 6 darkenScreen + p 7 bossMusic + p 8 worldFog +c net/minecraft/client/gui/components/LoadingDotsWidget fjb net/minecraft/class_8661 + f Lnet/minecraft/client/gui/Font; font a field_45361 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 message +c net/minecraft/client/gui/components/LockIconButton fjc net/minecraft/class_347 + f Z locked a field_2131 + m ()Z isLocked a method_1896 + m (Z)V setLocked b method_1895 + p 1 locked + m (IILnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 onPress +c net/minecraft/client/gui/components/LockIconButton$Icon fjc$a net/minecraft/class_347$class_348 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED a field_2137 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED_HOVER b field_2138 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED_DISABLED c field_2139 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED d field_2132 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED_HOVER e field_2133 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED_DISABLED f field_2140 + f Lnet/minecraft/resources/ResourceLocation; sprite g field_45362 + f [Lnet/minecraft/client/gui/components/LockIconButton$Icon; $VALUES h field_2136 + m ()[Lnet/minecraft/client/gui/components/LockIconButton$Icon; $values a method_36870 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;)V + p 3 sprite + m ()V +c net/minecraft/client/gui/components/LogoRenderer fjd net/minecraft/class_8020 + f Lnet/minecraft/resources/ResourceLocation; MINECRAFT_LOGO a field_41805 + f Lnet/minecraft/resources/ResourceLocation; EASTER_EGG_LOGO b field_44540 + f Lnet/minecraft/resources/ResourceLocation; MINECRAFT_EDITION c field_41806 + f I LOGO_WIDTH d field_41807 + f I LOGO_HEIGHT e field_41808 + f I DEFAULT_HEIGHT_OFFSET f field_41809 + f I LOGO_TEXTURE_WIDTH g field_44541 + f I LOGO_TEXTURE_HEIGHT h field_44542 + f I EDITION_WIDTH i field_44543 + f I EDITION_HEIGHT j field_44544 + f I EDITION_TEXTURE_WIDTH k field_44545 + f I EDITION_TEXTURE_HEIGHT l field_44546 + f I EDITION_LOGO_OVERLAP m field_44547 + f Z showEasterEgg n field_41810 + f Z keepLogoThroughFade o field_41811 + m (Lnet/minecraft/client/gui/GuiGraphics;IF)V renderLogo a method_48209 + p 1 guiGraphics + p 2 screenWidth + p 3 transparency + m (Lnet/minecraft/client/gui/GuiGraphics;IFI)V renderLogo a method_48210 + p 1 guiGraphics + p 2 screenWidth + p 3 transparency + p 4 height + m (Z)V + p 1 keepLogoThroughFade + m ()V +c net/minecraft/client/gui/components/MultiLineEditBox fje net/minecraft/class_7529 + f I CURSOR_INSERT_WIDTH a field_39502 + f I CURSOR_INSERT_COLOR b field_39503 + f Ljava/lang/String; CURSOR_APPEND_CHARACTER c field_39504 + f I TEXT_COLOR d field_39505 + f I PLACEHOLDER_TEXT_COLOR e field_39506 + f I CURSOR_BLINK_INTERVAL_MS f field_45363 + f Lnet/minecraft/client/gui/Font; font m field_39507 + f Lnet/minecraft/network/chat/Component; placeholder n field_39508 + f Lnet/minecraft/client/gui/components/MultilineTextField; textField o field_39509 + f J focusedTime p field_45364 + m (I)V setCharacterLimit a method_44402 + p 1 characterLimit + m (Ljava/lang/String;)V setValue a method_44400 + p 1 fullText + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderHighlight b method_44403 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Ljava/util/function/Consumer;)V setValueListener b method_44401 + p 1 valueListener + m (DD)V seekCursorScreen e method_44404 + p 1 mouseX + p 3 mouseY + m ()Ljava/lang/String; getValue j method_44405 + m ()V scrollToCursor k method_44407 + m ()D getDisplayableLineCount l method_44408 + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 placeholder + p 7 message +c net/minecraft/client/gui/components/MultiLineLabel fjf net/minecraft/class_5489 + f Lnet/minecraft/client/gui/components/MultiLineLabel; EMPTY a field_26528 + m ()I getLineCount a method_30887 + m (Lnet/minecraft/client/gui/Font;II[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_61132 + p 0 font + p 1 maxWidth + p 2 maxRows + p 3 components + m (Lnet/minecraft/client/gui/Font;I[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_61133 + p 0 font + p 1 maxWidth + p 2 components + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_30890 + p 0 font + p 1 component + p 2 maxWidth + m (Lnet/minecraft/client/gui/Font;[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_30892 + p 0 font + p 1 components + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderCentered a method_30888 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderCentered a method_30889 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m ()I getWidth b method_44048 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderLeftAligned b method_30893 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)I renderLeftAlignedNoShadow c method_30896 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m ()V +c net/minecraft/client/gui/components/MultiLineLabel$1 fjf$1 net/minecraft/class_5489$1 + m ()V +c net/minecraft/client/gui/components/MultiLineLabel$2 fjf$2 net/minecraft/class_5489$2 + f Lnet/minecraft/client/gui/Font; val$font b field_26529 + f [Lnet/minecraft/network/chat/Component; val$messages c field_52295 + f I val$maxWidth d field_52296 + f I val$maxLines e field_52297 + f Ljava/util/List; cachedTextAndWidth f field_52298 + f Lnet/minecraft/locale/Language; splitWithLanguage g field_52299 + m ()Ljava/util/List; getSplitMessage c method_61134 + m (Lnet/minecraft/client/gui/Font;[Lnet/minecraft/network/chat/Component;II)V +c net/minecraft/client/gui/components/MultiLineLabel$TextAndWidth fjf$a net/minecraft/class_5489$class_5490 + f Lnet/minecraft/util/FormattedCharSequence; text a comp_2877 + f I width b comp_2878 + m ()Lnet/minecraft/util/FormattedCharSequence; text a comp_2877 + m ()I width b comp_2878 + m (Lnet/minecraft/util/FormattedCharSequence;I)V +c net/minecraft/client/gui/components/MultiLineTextWidget fjg net/minecraft/class_7940 + f Ljava/util/OptionalInt; maxWidth a field_42486 + f Ljava/util/OptionalInt; maxRows b field_42487 + f Lnet/minecraft/util/SingleKeyCache; cache c field_42488 + f Z centered d field_41343 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/components/MultiLineTextWidget$CacheKey;)Lnet/minecraft/client/gui/components/MultiLineLabel; method_48980 a method_48980 + m (Z)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setCentered b method_48981 + p 1 centered + m ()Lnet/minecraft/client/gui/components/MultiLineTextWidget$CacheKey; getFreshCacheKey c method_48982 + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setColor c method_48983 + p 1 color + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setMaxWidth d method_48984 + p 1 maxWidth + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setMaxRows e method_48985 + p 1 maxRows + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font + m (IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 message + p 4 font +c net/minecraft/client/gui/components/MultiLineTextWidget$CacheKey fjg$a net/minecraft/class_7940$class_8131 + f Lnet/minecraft/network/chat/Component; message a comp_1256 + f I maxWidth b comp_1257 + f Ljava/util/OptionalInt; maxRows c comp_1258 + m ()Lnet/minecraft/network/chat/Component; message a comp_1256 + m ()I maxWidth b comp_1257 + m ()Ljava/util/OptionalInt; maxRows c comp_1258 + m (Lnet/minecraft/network/chat/Component;ILjava/util/OptionalInt;)V +c net/minecraft/client/gui/components/MultilineTextField fjh net/minecraft/class_7530 + f I NO_CHARACTER_LIMIT a field_39511 + f I LINE_SEEK_PIXEL_BIAS b field_39512 + f Lnet/minecraft/client/gui/Font; font c field_39513 + f Ljava/util/List; displayLines d field_39514 + f Ljava/lang/String; value e field_39515 + f I cursor f field_39516 + f I selectCursor g field_39517 + f Z selecting h field_39518 + f I characterLimit i field_39519 + f I width j field_39520 + f Ljava/util/function/Consumer; valueListener k field_39521 + f Ljava/lang/Runnable; cursorListener l field_39522 + m ()I characterLimit a method_44409 + m (DD)V seekCursorToPoint a method_44410 + p 1 x + p 3 y + m (I)V setCharacterLimit a method_44411 + p 1 characterLimit + m (Lnet/minecraft/client/gui/components/Whence;I)V seekCursor a method_44412 + p 1 whence + p 2 position + m (Ljava/lang/Runnable;)V setCursorListener a method_44413 + p 1 cursorListener + m (Ljava/lang/String;)V setValue a method_44414 + p 1 fullText + m (Ljava/util/function/Consumer;)V setValueListener a method_44415 + p 1 valueListener + m (Lnet/minecraft/network/chat/Style;II)V method_44416 a method_44416 + m (Z)V setSelecting a method_44417 + p 1 selecting + m ()Z hasCharacterLimit b method_44418 + m (I)V deleteText b method_44419 + p 1 length + m (Ljava/lang/String;)V insertText b method_44420 + p 1 text + m ()Ljava/lang/String; value c method_44421 + m (I)Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getLineView c method_44422 + p 1 lineNumber + m (Ljava/lang/String;)Ljava/lang/String; truncateFullText c method_44423 + p 1 fullText + m ()I cursor d method_44424 + m (I)V seekCursorLine d method_44425 + p 1 offset + m (Ljava/lang/String;)Ljava/lang/String; truncateInsertionText d method_44426 + p 1 text + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getSelected e method_44427 + m (I)Z keyPressed e method_44428 + p 1 keyCode + m (Ljava/lang/String;)V method_44429 e method_44429 + m ()I getLineCount f method_44430 + m (I)Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getCursorLineView f method_44431 + p 1 offset + m ()I getLineAtCursor g method_44432 + m (I)I getWordEndPosition g method_44433 + p 1 cursor + m ()Ljava/lang/Iterable; iterateLines h method_44434 + m ()Z hasSelection i method_44435 + m ()Ljava/lang/String; getSelectedText j method_44436 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getPreviousWord k method_44437 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getNextWord l method_44438 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getCursorLineView m method_44439 + m ()V onValueChange n method_44440 + m ()V reflowDisplayLines o method_44441 + m ()V method_44442 p method_44442 + m (Lnet/minecraft/client/gui/Font;I)V + p 1 font + p 2 width +c net/minecraft/client/gui/components/MultilineTextField$1 fjh$1 net/minecraft/class_7530$1 + f [I $SwitchMap$net$minecraft$client$gui$components$Whence a field_39523 + m ()V +c net/minecraft/client/gui/components/MultilineTextField$StringView fjh$a net/minecraft/class_7530$class_7531 + f I beginIndex a comp_862 + f I endIndex b comp_863 + f Lnet/minecraft/client/gui/components/MultilineTextField$StringView; EMPTY c field_39524 + m ()I beginIndex a comp_862 + m ()I endIndex b comp_863 + m (II)V + m ()V +c net/minecraft/client/gui/components/ObjectSelectionList fji net/minecraft/class_4280 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION a field_33783 + m (Lnet/minecraft/client/Minecraft;IIII)V + m ()V +c net/minecraft/client/gui/components/ObjectSelectionList$Entry fji$a net/minecraft/class_4280$class_4281 + m ()Lnet/minecraft/network/chat/Component; getNarration a method_37006 + m ()V +c net/minecraft/client/gui/components/OptionsList fjj net/minecraft/class_353 + f I BIG_BUTTON_WIDTH a field_49481 + f I DEFAULT_ITEM_HEIGHT m field_49482 + f Lnet/minecraft/client/gui/screens/options/OptionsSubScreen; screen n field_49483 + m (Lnet/minecraft/client/OptionInstance;)V addBig a method_20406 + p 1 option + m (Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/components/AbstractWidget;)V addSmall a method_20407 + p 1 leftOption + p 2 rightOption + m (Ljava/util/List;)V addSmall a method_58227 + p 1 options + m ([Lnet/minecraft/client/OptionInstance;)V addSmall a method_20408 + p 1 options + m (Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; findOption b method_31046 + p 1 option + m ()V applyUnsavedChanges c method_59869 + m (DD)Ljava/util/Optional; getMouseOver e method_29624 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/Minecraft;ILnet/minecraft/client/gui/screens/options/OptionsSubScreen;)V + p 1 minecraft + p 2 width + p 3 screen +c net/minecraft/client/gui/components/OptionsList$Entry fjj$a net/minecraft/class_353$class_354 + f Ljava/util/List; children a field_18214 + f Lnet/minecraft/client/gui/screens/Screen; screen b field_49485 + f I X_OFFSET c field_49484 + m (Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/OptionsList$Entry; small a method_20410 + p 0 leftOption + p 1 rightOption + p 2 screen + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/OptionsList$Entry; big a method_20409 + p 0 options + p 1 screen + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 children + p 2 screen +c net/minecraft/client/gui/components/OptionsList$OptionEntry fjj$b net/minecraft/class_353$class_9379 + f Ljava/util/Map; options a field_49893 + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)Lnet/minecraft/client/gui/components/OptionsList$OptionEntry; small a method_58228 + p 0 options + p 1 leftOption + p 2 rightOption + p 3 screen + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)Lnet/minecraft/client/gui/components/OptionsList$OptionEntry; big a method_58229 + p 0 options + p 1 option + p 2 screen + m (Ljava/util/Map;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)V + p 1 options + p 2 screen +c net/minecraft/client/gui/components/PlainTextButton fjk net/minecraft/class_7077 + f Lnet/minecraft/client/gui/Font; font a field_37257 + f Lnet/minecraft/network/chat/Component; message b field_37258 + f Lnet/minecraft/network/chat/Component; underlinedMessage c field_37259 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 onPress + p 7 font +c net/minecraft/client/gui/components/PlayerFaceRenderer fjl net/minecraft/class_7532 + f I SKIN_HEAD_U a field_39525 + f I SKIN_HEAD_V b field_39526 + f I SKIN_HEAD_WIDTH c field_39527 + f I SKIN_HEAD_HEIGHT d field_39528 + f I SKIN_HAT_U e field_39529 + f I SKIN_HAT_V f field_39530 + f I SKIN_HAT_WIDTH g field_39531 + f I SKIN_HAT_HEIGHT h field_39532 + f I SKIN_TEX_WIDTH i field_39533 + f I SKIN_TEX_HEIGHT j field_39534 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;III)V draw a method_44443 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIIZ)V drawHat a method_44444 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + p 5 upsideDown + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIIZZ)V draw a method_44445 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + p 5 drawHat + p 6 upsideDown + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/resources/PlayerSkin;III)V draw a method_52722 + p 0 guiGraphics + p 1 skin + p 2 x + p 3 y + p 4 size + m ()V +c net/minecraft/client/gui/components/PlayerSkinWidget fjm net/minecraft/class_8765 + f F MODEL_OFFSET a field_45996 + f F MODEL_HEIGHT b field_45997 + f F Z_OFFSET c field_45998 + f F ROTATION_SENSITIVITY d field_45999 + f F DEFAULT_ROTATION_X e field_46000 + f F DEFAULT_ROTATION_Y f field_46001 + f F ROTATION_X_LIMIT m field_46002 + f Lnet/minecraft/client/gui/components/PlayerSkinWidget$Model; model n field_46003 + f Ljava/util/function/Supplier; skin o field_46004 + f F rotationX p field_46005 + f F rotationY q field_46006 + m (IILnet/minecraft/client/model/geom/EntityModelSet;Ljava/util/function/Supplier;)V + p 1 width + p 2 height + p 3 model + p 4 skin +c net/minecraft/client/gui/components/PlayerSkinWidget$Model fjm$a net/minecraft/class_8765$class_8766 + f Lnet/minecraft/client/model/PlayerModel; wideModel a comp_1908 + f Lnet/minecraft/client/model/PlayerModel; slimModel b comp_1909 + m ()Lnet/minecraft/client/model/PlayerModel; wideModel a comp_1908 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/resources/PlayerSkin;)V render a method_53547 + p 1 guiGraphics + p 2 skin + m (Lnet/minecraft/client/model/geom/EntityModelSet;)Lnet/minecraft/client/gui/components/PlayerSkinWidget$Model; bake a method_53548 + p 0 model + m ()Lnet/minecraft/client/model/PlayerModel; slimModel b comp_1909 + m (Lnet/minecraft/client/model/PlayerModel;Lnet/minecraft/client/model/PlayerModel;)V +c net/minecraft/client/gui/components/PlayerTabOverlay fjn net/minecraft/class_355 + f I MAX_ROWS_PER_COL a field_32205 + f Lnet/minecraft/resources/ResourceLocation; PING_UNKNOWN_SPRITE b field_45365 + f Lnet/minecraft/resources/ResourceLocation; PING_1_SPRITE c field_45366 + f Lnet/minecraft/resources/ResourceLocation; PING_2_SPRITE d field_45367 + f Lnet/minecraft/resources/ResourceLocation; PING_3_SPRITE e field_45368 + f Lnet/minecraft/resources/ResourceLocation; PING_4_SPRITE f field_45369 + f Lnet/minecraft/resources/ResourceLocation; PING_5_SPRITE g field_45370 + f Lnet/minecraft/resources/ResourceLocation; HEART_CONTAINER_BLINKING_SPRITE h field_45371 + f Lnet/minecraft/resources/ResourceLocation; HEART_CONTAINER_SPRITE i field_45372 + f Lnet/minecraft/resources/ResourceLocation; HEART_FULL_BLINKING_SPRITE j field_45373 + f Lnet/minecraft/resources/ResourceLocation; HEART_HALF_BLINKING_SPRITE k field_45374 + f Lnet/minecraft/resources/ResourceLocation; HEART_ABSORBING_FULL_BLINKING_SPRITE l field_45375 + f Lnet/minecraft/resources/ResourceLocation; HEART_FULL_SPRITE m field_45376 + f Lnet/minecraft/resources/ResourceLocation; HEART_ABSORBING_HALF_BLINKING_SPRITE n field_45377 + f Lnet/minecraft/resources/ResourceLocation; HEART_HALF_SPRITE o field_45378 + f Ljava/util/Comparator; PLAYER_COMPARATOR p field_2156 + f Lnet/minecraft/client/Minecraft; minecraft q field_2155 + f Lnet/minecraft/client/gui/Gui; gui r field_2157 + f Lnet/minecraft/network/chat/Component; footer s field_2154 + f Lnet/minecraft/network/chat/Component; header t field_2153 + f Z visible u field_2158 + c Weither or not the playerlist is currently being rendered + f Ljava/util/Map; healthStates v field_40393 + m ()V reset a method_1920 + m (IIILjava/util/UUID;Lnet/minecraft/client/gui/GuiGraphics;I)V renderTablistHearts a method_45590 + p 1 y + p 2 minX + p 3 maxX + p 4 playerUuid + p 5 guiGraphics + p 6 health + m (ILjava/util/UUID;)Lnet/minecraft/client/gui/components/PlayerTabOverlay$HealthState; method_45591 a method_45591 + m (Lnet/minecraft/world/scores/Objective;ILnet/minecraft/client/gui/components/PlayerTabOverlay$ScoreDisplayEntry;IILjava/util/UUID;Lnet/minecraft/client/gui/GuiGraphics;)V renderTablistScore a method_1922 + p 1 objective + p 2 y + p 3 displayEntry + p 4 minX + p 5 maxX + p 6 playerUuid + p 7 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIILnet/minecraft/client/multiplayer/PlayerInfo;)V renderPingIcon a method_1923 + p 1 guiGraphics + p 2 width + p 3 x + p 4 y + p 5 playerInfo + m (Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Objective;)V render a method_1919 + p 1 guiGraphics + p 2 width + p 3 scoreboard + p 4 objective + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Lnet/minecraft/network/chat/Component; getNameForDisplay a method_1918 + p 1 playerInfo + m (Lnet/minecraft/client/multiplayer/PlayerInfo;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/Component; decorateName a method_27538 + p 1 playerInfo + p 2 name + m (Ljava/util/Set;Ljava/util/UUID;)Z method_45593 a method_45593 + m (Lnet/minecraft/network/chat/Component;)V setFooter a method_1924 + p 1 footer + m (Z)V setVisible a method_1921 + c Called by GuiIngame to update the information stored in the playerlist, does not actually render the list, however. + p 1 visible + m ()Ljava/util/List; getPlayerInfos b method_48213 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/util/UUID; method_45594 b method_45594 + m (Lnet/minecraft/network/chat/Component;)V setHeader b method_1925 + p 1 header + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/lang/String; method_46511 c method_46511 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/lang/String; method_45595 d method_45595 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)I method_45592 e method_45592 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/Gui;)V + p 1 minecraft + p 2 gui + m ()V +c net/minecraft/client/gui/components/PlayerTabOverlay$HealthState fjn$a net/minecraft/class_355$class_7732 + f J DISPLAY_UPDATE_DELAY a field_40394 + f J DECREASE_BLINK_DURATION b field_40395 + f J INCREASE_BLINK_DURATION c field_40396 + f I lastValue d field_40397 + f I displayedValue e field_40398 + f J lastUpdateTick f field_40399 + f J blinkUntilTick g field_40400 + m ()I displayedValue a method_45596 + m (IJ)V update a method_45597 + p 1 value + p 2 guiTicks + m (J)Z isBlinking a method_45598 + p 1 guiTicks + m (I)V + p 1 displayedValue +c net/minecraft/client/gui/components/PlayerTabOverlay$ScoreDisplayEntry fjn$b net/minecraft/class_355$class_9018 + f Lnet/minecraft/network/chat/Component; name a comp_2134 + f I score b comp_2135 + f Lnet/minecraft/network/chat/Component; formattedScore c comp_2136 + f I scoreWidth d comp_2137 + m ()Lnet/minecraft/network/chat/Component; name a comp_2134 + m ()I score b comp_2135 + m ()Lnet/minecraft/network/chat/Component; formattedScore c comp_2136 + m ()I scoreWidth d comp_2137 + m (Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;I)V +c net/minecraft/client/gui/components/PopupScreen fjo net/minecraft/class_8816 + f Ljava/lang/Runnable; onClose A field_46565 + f I contentWidth B field_46566 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46567 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_46554 + f I SPACING b field_46555 + f I BG_BORDER_WITH_SPACING c field_46556 + f I BUTTON_SPACING r field_46557 + f I IMAGE_SIZE_X s field_46558 + f I IMAGE_SIZE_Y u field_46559 + f I POPUP_DEFAULT_WIDTH v field_46560 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen w field_46561 + f Lnet/minecraft/resources/ResourceLocation; image x field_46562 + f Lnet/minecraft/network/chat/Component; message y field_46563 + f Ljava/util/List; buttons z field_46564 + m (Lnet/minecraft/client/gui/components/PopupScreen$ButtonOption;Lnet/minecraft/client/gui/components/Button;)V method_54122 a method_54122 + m (Lnet/minecraft/client/gui/components/PopupScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54123 a method_54123 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; buildButtonRow m method_54124 + m (Lnet/minecraft/client/gui/screens/Screen;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/Runnable;)V + p 1 backgroundScreen + p 2 width + p 3 image + p 4 title + p 5 message + p 6 buttons + p 7 onClose + m ()V +c net/minecraft/client/gui/components/PopupScreen$Builder fjo$a net/minecraft/class_8816$class_8817 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen a field_46568 + f Lnet/minecraft/network/chat/Component; title b field_46569 + f Lnet/minecraft/network/chat/Component; message c field_46570 + f I width d field_46571 + f Lnet/minecraft/resources/ResourceLocation; image e field_46572 + f Ljava/util/List; buttons f field_46573 + f Ljava/lang/Runnable; onClose g field_46574 + m ()Lnet/minecraft/client/gui/components/PopupScreen; build a method_54125 + m (I)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setWidth a method_54126 + p 1 width + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setImage a method_54127 + p 1 image + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; onClose a method_54128 + p 1 onClose + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setMessage a method_54129 + p 1 message + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; addButton a method_54130 + p 1 message + p 2 action + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 backgroundScreen + p 2 title +c net/minecraft/client/gui/components/PopupScreen$ButtonOption fjo$b net/minecraft/class_8816$class_8818 + f Lnet/minecraft/network/chat/Component; message a comp_1979 + f Ljava/util/function/Consumer; action b comp_1980 + m ()Lnet/minecraft/network/chat/Component; message a comp_1979 + m ()Ljava/util/function/Consumer; action b comp_1980 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)V +c net/minecraft/client/gui/components/Renderable fjp net/minecraft/class_4068 + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V render a method_25394 + c Renders the graphical user interface (GUI) element. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 mouseX + c the x-coordinate of the mouse cursor. + p 3 mouseY + c the y-coordinate of the mouse cursor. + p 4 partialTick + c the partial tick time. +c net/minecraft/client/gui/components/SplashRenderer fjq net/minecraft/class_8519 + f Lnet/minecraft/client/gui/components/SplashRenderer; CHRISTMAS a field_44661 + f Lnet/minecraft/client/gui/components/SplashRenderer; NEW_YEAR b field_44662 + f Lnet/minecraft/client/gui/components/SplashRenderer; HALLOWEEN c field_44663 + f I WIDTH_OFFSET d field_44664 + f I HEIGH_OFFSET e field_44665 + f Ljava/lang/String; splash f field_44666 + m (Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/client/gui/Font;I)V render a method_51453 + p 1 guiGraphics + p 2 screenWidth + p 3 font + p 4 color + m (Ljava/lang/String;)V + p 1 splash + m ()V +c net/minecraft/client/gui/components/SpriteIconButton fjr net/minecraft/class_8662 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45379 + f I spriteWidth b field_45380 + f I spriteHeight c field_45381 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; builder a method_52723 + p 0 message + p 1 onPress + p 2 iconOnly + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V + p 1 width + p 2 height + p 3 message + p 4 spriteWidth + p 5 spriteHeight + p 6 sprite + p 7 onPress + p 8 createNarration +c net/minecraft/client/gui/components/SpriteIconButton$Builder fjr$a net/minecraft/class_8662$class_8663 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; narration a field_49486 + f Lnet/minecraft/network/chat/Component; message b field_45382 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress c field_45383 + f Z iconOnly d field_45384 + f I width e field_45385 + f I height f field_45386 + f Lnet/minecraft/resources/ResourceLocation; sprite g field_45387 + f I spriteWidth h field_45388 + f I spriteHeight i field_45389 + m ()Lnet/minecraft/client/gui/components/SpriteIconButton; build a method_52724 + m (I)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; width a method_52725 + p 1 width + m (II)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; size a method_52726 + p 1 width + p 2 height + m (Lnet/minecraft/resources/ResourceLocation;II)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; sprite a method_52727 + p 1 sprite + p 2 spriteWidth + p 3 spriteHeight + m (Lnet/minecraft/client/gui/components/Button$CreateNarration;)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; narration a method_57722 + p 1 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Z)V + p 1 message + p 2 onPress + p 3 iconOnly +c net/minecraft/client/gui/components/SpriteIconButton$CenteredIcon fjr$b net/minecraft/class_8662$class_8664 + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V +c net/minecraft/client/gui/components/SpriteIconButton$TextAndIcon fjr$c net/minecraft/class_8662$class_8665 + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V +c net/minecraft/client/gui/components/StateSwitchingButton fjs net/minecraft/class_361 + f Lnet/minecraft/client/gui/components/WidgetSprites; sprites a field_45390 + f Z isStateTriggered b field_2194 + m ()Z isStateTriggered a method_1965 + m (Lnet/minecraft/client/gui/components/WidgetSprites;)V initTextureValues a method_1962 + p 1 sprites + m (Z)V setStateTriggered b method_1964 + p 1 triggered + m (IIIIZ)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 initialState +c net/minecraft/client/gui/components/StringWidget fjt net/minecraft/class_7842 + f F alignX a field_42121 + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/util/FormattedCharSequence; clipText a method_52728 + p 1 message + p 2 width + m (F)Lnet/minecraft/client/gui/components/StringWidget; horizontalAlignment b method_48598 + p 1 horizontalAlignment + m (I)Lnet/minecraft/client/gui/components/StringWidget; setColor b method_46438 + p 1 color + m ()Lnet/minecraft/client/gui/components/StringWidget; alignLeft c method_48596 + m ()Lnet/minecraft/client/gui/components/StringWidget; alignCenter e method_48597 + m ()Lnet/minecraft/client/gui/components/StringWidget; alignRight f method_48599 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font + m (IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 width + p 2 height + p 3 message + p 4 font + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/SubtitleOverlay fju net/minecraft/class_359 + f J DISPLAY_TIME a field_32214 + f Lnet/minecraft/client/Minecraft; minecraft b field_2182 + f Ljava/util/List; subtitles c field_2183 + f Z isListening d field_2184 + f Ljava/util/List; audibleSubtitles e field_47672 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1957 + p 1 guiGraphics + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt fju$a net/minecraft/class_359$class_9772 + f Lnet/minecraft/world/phys/Vec3; location a comp_2809 + f J time b comp_2810 + m ()Lnet/minecraft/world/phys/Vec3; location a comp_2809 + m ()J time b comp_2810 + m (Lnet/minecraft/world/phys/Vec3;J)V +c net/minecraft/client/gui/components/SubtitleOverlay$Subtitle fju$b net/minecraft/class_359$class_360 + f Lnet/minecraft/network/chat/Component; text a field_2188 + f F range b field_47673 + f Ljava/util/List; playedAt c field_51913 + m ()Lnet/minecraft/network/chat/Component; getText a method_1960 + m (D)V purgeOldInstances a method_60570 + p 1 displayTime + m (JDLnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)Z method_60571 a method_60571 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt; getClosest a method_60572 + p 1 location + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)Z method_60573 a method_60573 + m ()Z isStillActive b method_60574 + m (Lnet/minecraft/world/phys/Vec3;)V refresh b method_1958 + p 1 location + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)D method_60575 b method_60575 + m (Lnet/minecraft/world/phys/Vec3;)Z isAudibleFrom c method_55589 + p 1 location + m (Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/phys/Vec3;)V + p 1 text + p 2 range + p 3 location +c net/minecraft/client/gui/components/TabButton fjv net/minecraft/class_8209 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES a field_45391 + f I SELECTED_OFFSET b field_43063 + f I TEXT_MARGIN c field_43064 + f I UNDERLINE_HEIGHT d field_43065 + f I UNDERLINE_MARGIN_X e field_43066 + f I UNDERLINE_MARGIN_BOTTOM f field_43067 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager m field_43068 + f Lnet/minecraft/client/gui/components/tabs/Tab; tab n field_43069 + m ()Lnet/minecraft/client/gui/components/tabs/Tab; tab a method_49609 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderMenuBackground a method_58230 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderString a method_49608 + p 1 guiGraphics + p 2 font + p 3 color + m ()Z isSelected b method_49611 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderFocusUnderline b method_49610 + p 1 guiGraphics + p 2 font + p 3 color + m (Lnet/minecraft/client/gui/components/tabs/TabManager;Lnet/minecraft/client/gui/components/tabs/Tab;II)V + p 1 tabManager + p 2 tab + p 3 width + p 4 height + m ()V +c net/minecraft/client/gui/components/TabOrderedElement fjw net/minecraft/class_8083 + m ()I getTabOrderGroup I method_48590 + c Returns the tab order group of the GUI component.\nTab order group determines the order in which the components are traversed when using keyboard navigation.\n

\n@return The tab order group of the GUI component. +c net/minecraft/client/gui/components/Tooltip fjx net/minecraft/class_7919 + f I MAX_WIDTH a field_41101 + f Lnet/minecraft/network/chat/Component; message b field_41102 + f Ljava/util/List; cachedTooltip c field_41103 + f Lnet/minecraft/locale/Language; splitWithLanguage d field_51822 + f Lnet/minecraft/network/chat/Component; narration e field_41104 + m (Lnet/minecraft/client/Minecraft;)Ljava/util/List; toCharSequence a method_47405 + p 1 minecraft + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Ljava/util/List; splitTooltip a method_47406 + p 0 minecraft + p 1 message + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/Tooltip; create a method_47407 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/Tooltip; create a method_47408 + p 0 message + p 1 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 message + p 2 narration +c net/minecraft/client/gui/components/Whence fjy net/minecraft/class_7533 + f Lnet/minecraft/client/gui/components/Whence; ABSOLUTE a field_39535 + f Lnet/minecraft/client/gui/components/Whence; RELATIVE b field_39536 + f Lnet/minecraft/client/gui/components/Whence; END c field_39537 + f [Lnet/minecraft/client/gui/components/Whence; $VALUES d field_39538 + m ()[Lnet/minecraft/client/gui/components/Whence; $values a method_44446 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/components/WidgetSprites fjz net/minecraft/class_8666 + f Lnet/minecraft/resources/ResourceLocation; enabled a comp_1604 + f Lnet/minecraft/resources/ResourceLocation; disabled b comp_1605 + f Lnet/minecraft/resources/ResourceLocation; enabledFocused c comp_1606 + f Lnet/minecraft/resources/ResourceLocation; disabledFocused d comp_1607 + m ()Lnet/minecraft/resources/ResourceLocation; enabled a comp_1604 + m (ZZ)Lnet/minecraft/resources/ResourceLocation; get a method_52729 + p 1 enabled + p 2 focused + m ()Lnet/minecraft/resources/ResourceLocation; disabled b comp_1605 + m ()Lnet/minecraft/resources/ResourceLocation; enabledFocused c comp_1606 + m ()Lnet/minecraft/resources/ResourceLocation; disabledFocused d comp_1607 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 enabled + p 2 disabled + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 enabled + p 2 disabled + p 3 enabledFocused + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/components/WidgetTooltipHolder fka net/minecraft/class_9110 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip a field_48390 + f Ljava/time/Duration; delay b field_48391 + f J displayStartTime c field_48392 + f Z wasDisplayed d field_48393 + m ()Lnet/minecraft/client/gui/components/Tooltip; get a method_56137 + m (Lnet/minecraft/client/gui/components/Tooltip;)V set a method_56138 + p 1 tooltip + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration a method_56139 + p 1 output + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;ZZ)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; createTooltipPositioner a method_56140 + p 1 screenRectangle + p 2 hovering + p 3 focused + m (Ljava/time/Duration;)V setDelay a method_56141 + p 1 delay + m (ZZLnet/minecraft/client/gui/navigation/ScreenRectangle;)V refreshTooltipForNextRenderPass a method_56142 + p 1 hovering + p 2 focused + p 3 screenRectangle + m ()V +c net/minecraft/client/gui/components/debugchart/AbstractDebugChart fkb net/minecraft/class_8755 + f I COLOR_GREY a field_45915 + f I CHART_HEIGHT b field_45916 + f I LINE_WIDTH c field_45917 + f Lnet/minecraft/client/gui/Font; font d field_45918 + f Lnet/minecraft/util/debugchart/SampleStorage; sampleStorage e field_45919 + m (D)Ljava/lang/String; toDisplayString a method_53468 + p 1 value + m (DDIDIDI)I getSampleColor a method_53469 + p 1 value + p 3 minPosition + p 5 minColor + p 6 midPosition + p 8 midColor + p 9 maxPosition + p 11 guiGraphics + m (I)I getWidth a method_53470 + p 1 maxWidth + m (J)I getSampleColor a method_53471 + p 1 value + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawChart a method_53472 + p 1 guiGraphics + p 2 x + p 3 width + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawDimensions a method_56578 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;II)V drawStringWithShade a method_53474 + p 1 guiGraphics + p 2 text + p 3 x + p 4 y + m (D)I getSampleHeight b method_53475 + p 1 value + m (I)J getValueForAggregation b method_56579 + p 1 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawMainDimension b method_56580 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawAdditionalDimensions c method_56581 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderAdditionalLinesAndLabels d method_53473 + p 1 guiGraphics + p 2 x + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/BandwidthDebugChart fkc net/minecraft/class_8756 + f I MIN_COLOR f field_45920 + f I MID_COLOR g field_45921 + f I MAX_COLOR h field_45922 + f I KILOBYTE i field_45923 + f I MEGABYTE j field_45924 + f I CHART_TOP_VALUE k field_45925 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawLabeledLineAtValue a method_53476 + p 1 guiGraphics + p 2 x + p 3 width + p 4 y + p 5 value + m (Lnet/minecraft/client/gui/GuiGraphics;IIILjava/lang/String;)V drawLineWithLabel a method_53477 + p 1 guiGraphics + p 2 x + p 3 width + p 4 y + p 5 text + m (D)Ljava/lang/String; toDisplayStringInternal c method_53478 + p 0 value + m (D)I getSampleHeightInternal d method_53479 + p 0 value + m (D)D toBytesPerSecond e method_53480 + p 0 bytesPerTick + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/FpsDebugChart fkd net/minecraft/class_8757 + f I RED f field_45926 + f I YELLOW g field_45927 + f I GREEN h field_45928 + f I CHART_TOP_FPS i field_45929 + f D CHART_TOP_VALUE j field_45930 + m (D)D toMilliseconds c method_53481 + p 0 value + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/PingDebugChart fke net/minecraft/class_8758 + f I RED f field_45931 + f I YELLOW g field_45932 + f I GREEN h field_45933 + f I CHART_TOP_VALUE i field_45934 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V +c net/minecraft/client/gui/components/debugchart/TpsDebugChart fkf net/minecraft/class_8759 + f I RED f field_45935 + f I YELLOW g field_45936 + f I GREEN h field_45937 + f I TICK_METHOD_COLOR i field_48763 + f I TASK_COLOR j field_48764 + f I OTHER_COLOR k field_48765 + f Ljava/util/function/Supplier; msptSupplier l field_47117 + m (D)D toMilliseconds c method_53482 + p 0 value + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;Ljava/util/function/Supplier;)V + p 1 font + p 2 sampleStorage + p 3 msptSupplier +c net/minecraft/client/gui/components/events/AbstractContainerEventHandler fkg net/minecraft/class_362 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_22780 + f Z isDragging b field_22781 + m ()V +c net/minecraft/client/gui/components/events/ContainerEventHandler fkh net/minecraft/class_4069 + m (DDDDLnet/minecraft/client/gui/components/events/GuiEventListener;)Z method_20082 a method_20082 + m (DDILnet/minecraft/client/gui/components/events/GuiEventListener;)Z method_20083 a method_20083 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V setFocused a method_25395 + c Sets the focus state of the GUI element. + p 1 focused + c the focused GUI element. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation;)Lnet/minecraft/client/gui/ComponentPath; handleArrowNavigation a method_48214 + c Handles arrow-based navigation events.\n

\n@return The next focus path for arrow navigation, or {@code null} if no suitable path is found. + p 1 arrowNavigation + c The arrow navigation event. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation;)Lnet/minecraft/client/gui/ComponentPath; handleTabNavigation a method_48215 + c Handles tab-based navigation events.\n

\n@return The next focus path for tab navigation, or {@code null} if no suitable path is found. + p 1 tabNavigation + c The tab navigation event. + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;)Ljava/lang/Integer; method_48216 a method_48216 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPathInDirection a method_48217 + c Calculates the next focus path in a specific direction.\n

\n@return The next focus path in the specified direction, or {@code null} if no suitable path is found. + p 1 rectangle + c The screen rectangle. + p 2 direction + c The direction of navigation. + p 3 listener + c The currently focused GUI event listener. + p 4 event + c The focus navigation event. + m ()Ljava/util/List; children aK_ method_25396 + c {@return a List containing all GUI element children of this GUI element} + m ()Z isDragging aM_ method_25397 + c {@return {@code true} if the GUI element is dragging, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/components/events/GuiEventListener; getFocused aN_ method_25399 + c Gets the focused GUI element. + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)I method_48609 b method_48609 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;)Ljava/lang/Integer; method_48219 b method_48219 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPathVaguelyInDirection b method_48220 + c Calculates the next focus path in a vague direction.\n

\n@return The next focus path in the vague direction, or {@code null} if no suitable path is found. + p 1 rectangle + c The screen rectangle. + p 2 direction + c The direction of navigation. + p 3 listener + c The currently focused GUI event listener. + p 4 event + c The focus navigation event. + m (DD)Ljava/util/Optional; getChildAt b_ method_19355 + c Returns the first event listener that intersects with the mouse coordinates. + p 1 mouseX + p 3 mouseY + m (Z)V setDragging b_ method_25398 + c Sets if the GUI element is dragging or not. + p 1 isDragging + c the dragging state of the GUI element. +c net/minecraft/client/gui/components/events/GuiEventListener fki net/minecraft/class_364 + c Represents a listener for GUI events.\n

\nIt extends the {@code TabOrderedElement} interface, providing tab order functionality for GUI components. + f J DOUBLE_CLICK_THRESHOLD_MS t field_37268 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; getRectangle H method_48202 + c {@return the {@link ScreenRectangle} occupied by the GUI element} + m (CI)Z charTyped a method_25400 + c Called when a character is typed within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 codePoint + c the code point of the typed character. + p 2 modifiers + c the keyboard modifiers. + m (DDDD)Z mouseScrolled a method_25401 + p 1 mouseX + p 3 mouseY + p 5 scrollX + p 7 scrollY + m (DDI)Z mouseClicked a method_25402 + c Called when a mouse button is clicked within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that was clicked. + m (DDIDD)Z mouseDragged a method_25403 + c Called when the mouse is dragged within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that is being dragged. + p 6 dragX + c the X distance of the drag. + p 8 dragY + c the Y distance of the drag. + m (III)Z keyPressed a method_25404 + c Called when a keyboard key is pressed within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 keyCode + c the key code of the pressed key. + p 2 scanCode + c the scan code of the pressed key. + p 3 modifiers + c the keyboard modifiers. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPath a method_48205 + c Retrieves the next focus path based on the given focus navigation event.\n

\n@return the next focus path as a ComponentPath, or {@code null} if there is no next focus path. + p 1 event + c the focus navigation event. + m (Z)V setFocused a method_25365 + c Sets the focus state of the GUI element. + p 1 focused + c {@code true} to apply focus, {@code false} to remove focus + m ()Z isFocused aO_ method_25370 + c {@return {@code true} if the GUI element is focused, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/ComponentPath; getCurrentFocusPath aP_ method_48218 + c {@return the current focus path as a ComponentPath, or {@code null} if there is no current focus path.} + m (DDI)Z mouseReleased b method_25406 + c Called when a mouse button is released within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that was released. + m (DD)Z isMouseOver c method_25405 + c Checks if the given mouse coordinates are over the GUI element.\n

\n@return {@code true} if the mouse is over the GUI element, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + m (III)Z keyReleased c method_16803 + c Called when a keyboard key is released within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 keyCode + c the key code of the released key. + p 2 scanCode + c the scan code of the released key. + p 3 modifiers + c the keyboard modifiers. + m (DD)V mouseMoved f method_16014 + c Called when the mouse is moved within the GUI element. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. +c net/minecraft/client/gui/components/events/package-info fkj net/minecraft/class_6205 +c net/minecraft/client/gui/components/package-info fkk net/minecraft/class_6206 +c net/minecraft/client/gui/components/spectator/SpectatorGui fkl net/minecraft/class_365 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SPRITE a field_45392 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SELECTION_SPRITE b field_45393 + f J FADE_OUT_DELAY c field_32215 + f J FADE_OUT_TIME d field_32216 + f Lnet/minecraft/client/Minecraft; minecraft e field_2201 + f J lastSelectionTime f field_2198 + f Lnet/minecraft/client/gui/spectator/SpectatorMenu; menu g field_2200 + m ()Z isMenuActive a method_1980 + m (I)V onHotbarSelected a method_1977 + p 1 slot + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderHotbar a method_1978 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;FIILnet/minecraft/client/gui/spectator/categories/SpectatorPage;)V renderPage a method_1975 + p 1 guiGraphics + p 2 alpha + p 3 x + p 4 y + p 5 spectatorPage + m (Lnet/minecraft/client/gui/GuiGraphics;IIFFLnet/minecraft/client/gui/spectator/SpectatorMenuItem;)V renderSlot a method_1982 + p 1 guiGraphics + p 2 slot + p 3 x + p 4 y + p 5 alpha + p 6 spectatorMenuItem + m ()V onMouseMiddleClick b method_1983 + m (I)V onMouseScrolled b method_1976 + p 1 amount + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderTooltip b method_1979 + p 1 guiGraphics + m ()F getHotbarAlpha c method_1981 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/spectator/package-info fkm net/minecraft/class_6207 +c net/minecraft/client/gui/components/tabs/GridLayoutTab fkn net/minecraft/class_8086 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout a field_42139 + f Lnet/minecraft/network/chat/Component; title b field_42140 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title +c net/minecraft/client/gui/components/tabs/Tab fko net/minecraft/class_8087 + m ()Lnet/minecraft/network/chat/Component; getTabTitle a method_48610 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V doLayout a method_48611 + p 1 rectangle + m (Ljava/util/function/Consumer;)V visitChildren a method_48612 + p 1 consumer +c net/minecraft/client/gui/components/tabs/TabManager fkp net/minecraft/class_8088 + f Ljava/util/function/Consumer; addWidget a field_42141 + f Ljava/util/function/Consumer; removeWidget b field_42142 + f Lnet/minecraft/client/gui/components/tabs/Tab; currentTab c field_42143 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; tabArea d field_42144 + m ()Lnet/minecraft/client/gui/components/tabs/Tab; getCurrentTab a method_48614 + m (Lnet/minecraft/client/gui/components/tabs/Tab;Z)V setCurrentTab a method_48615 + p 1 tab + p 2 playClickSound + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V setTabArea a method_48616 + p 1 tabArea + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 addWidget + p 2 removeWidget +c net/minecraft/client/gui/components/tabs/TabNavigationBar fkq net/minecraft/class_8089 + f I NO_TAB a field_42489 + f I MAX_WIDTH b field_43076 + f I HEIGHT c field_43077 + f I MARGIN d field_43078 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION e field_43079 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout f field_43080 + f I width g field_42145 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager h field_42146 + f Lcom/google/common/collect/ImmutableList; tabs i field_42147 + f Lcom/google/common/collect/ImmutableList; tabButtons j field_42148 + m (I)V setWidth a method_48618 + p 1 width + m (IZ)V selectTab a method_48987 + c Selects the tab at the specified index. + p 1 index + c the index of the tab to select. + p 2 playClickSound + c whether to play a click sound when selecting the tab. + m (Lnet/minecraft/client/gui/components/tabs/TabManager;I)Lnet/minecraft/client/gui/components/tabs/TabNavigationBar$Builder; builder a method_48623 + p 0 tabManager + p 1 width + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/TabButton;)V narrateListElementPosition a method_49612 + c Narrates the position of a list element (tab button). + p 1 narrationElementOutput + c the narration output to update. + p 2 tabButton + c the tab button whose position is being narrated. + m ()V arrangeElements b method_49613 + c Arranges the elements within the tabbed layout. + m (I)Z keyPressed b method_48988 + c Handles key pressed events.\n

\n@return {@code true} if the key press was handled, {@code false} otherwise. + p 1 keycode + c the keycode of the pressed key. + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/TabButton;)V method_49614 b method_49614 + m ()I currentTabIndex c method_48989 + c Returns the index of the current tab.\n

\n@return the index of the current tab, or -1 if no current tab is set. + m (I)I getNextTabIndex c method_48990 + c Returns the index of the next tab based on the given key code.\n

\n@return the index of the next tab, or -1 if no valid tab index is found. + p 1 keycode + c the keycode of the pressed key. + m ()Lnet/minecraft/client/gui/components/TabButton; currentTabButton d method_49615 + c Returns the current tab button.\n

\n@return the current tab button, or null if no current tab is set. + m ()Ljava/util/Optional; method_49616 h method_49616 + m (ILnet/minecraft/client/gui/components/tabs/TabManager;Ljava/lang/Iterable;)V + p 1 width + p 2 tabManager + p 3 tabs + m ()V +c net/minecraft/client/gui/components/tabs/TabNavigationBar$Builder fkq$a net/minecraft/class_8089$class_8090 + c Builder class for creating a TabNavigationBar instance. + f I width a field_42151 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager b field_42152 + f Ljava/util/List; tabs c field_42153 + m ()Lnet/minecraft/client/gui/components/tabs/TabNavigationBar; build a method_48627 + c Builds and returns a new TabNavigationBar instance.\n

\n@return a new TabNavigationBar instance. + m ([Lnet/minecraft/client/gui/components/tabs/Tab;)Lnet/minecraft/client/gui/components/tabs/TabNavigationBar$Builder; addTabs a method_48631 + c Adds multiple tabs to the TabNavigationBar.\n

\n@return the {@link Builder} instance. + p 1 tabs + c the tabs to add. + m (Lnet/minecraft/client/gui/components/tabs/TabManager;I)V + p 1 tabManager + p 2 width +c net/minecraft/client/gui/components/tabs/package-info fkr net/minecraft/class_8091 +c net/minecraft/client/gui/components/toasts/AdvancementToast fks net/minecraft/class_367 + f I DISPLAY_TIME a field_41812 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE d field_45394 + f Lnet/minecraft/advancements/AdvancementHolder; advancement e field_2205 + f Z playedSound f field_2206 + m (Lnet/minecraft/advancements/AdvancementHolder;)V + p 1 advancement + m ()V +c net/minecraft/client/gui/components/toasts/RecipeToast fkt net/minecraft/class_366 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45395 + f J DISPLAY_TIME d field_32217 + f Lnet/minecraft/network/chat/Component; TITLE_TEXT e field_26533 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_TEXT f field_26534 + f Ljava/util/List; recipes g field_2202 + f J lastChanged h field_2204 + f Z changed i field_2203 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V addItem a method_1984 + p 1 recipe + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/world/item/crafting/RecipeHolder;)V addOrUpdate a method_1985 + p 0 toastComponent + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 recipe + m ()V +c net/minecraft/client/gui/components/toasts/SystemToast fku net/minecraft/class_370 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45396 + f I MAX_LINE_SIZE d field_32219 + f I LINE_SPACING e field_39926 + f I MARGIN f field_39927 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; id g field_2213 + f Lnet/minecraft/network/chat/Component; title h field_2215 + f Ljava/util/List; messageLines i field_25037 + f J lastChanged j field_2216 + f Z changed k field_2214 + f I width l field_25038 + f Z forceHide m field_47582 + m (Lnet/minecraft/client/Minecraft;)V onLowDiskSpace a method_57723 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;I)V onFileDropFailure a method_60865 + p 0 minecraft + p 1 failedFileCount + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/ChunkPos;)V onChunkLoadFailure a method_57724 + p 0 minecraft + p 1 chunkPos + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/toasts/SystemToast; multiline a method_29047 + p 0 minecraft + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onWorldAccessFailure a method_27023 + p 0 minecraft + p 1 message + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderBackgroundRow a method_29046 + p 1 guiGraphics + p 2 width + p 3 vOffset + p 4 y + p 5 height + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;)V forceHide a method_55507 + p 0 toastComponent + p 1 id + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V add a method_27024 + p 0 toastComponent + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/network/chat/Component;)Lcom/google/common/collect/ImmutableList; nullToEmpty a method_29626 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V reset a method_1991 + p 1 title + p 2 message + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/ChunkPos;)V onChunkSaveFailure b method_57725 + p 0 minecraft + p 1 chunkPos + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onWorldDeleteFailure b method_27025 + p 0 minecraft + p 1 message + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V addOrUpdate b method_1990 + p 0 toastComponent + p 1 id + p 2 title + p 3 message + m ()V forceHide c method_55508 + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onPackCopyFailure c method_29627 + p 0 minecraft + p 1 message + m ()Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; getToken d method_1989 + m (Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Ljava/util/List;I)V + p 1 id + p 2 title + p 3 messageLines + p 4 width + m ()V +c net/minecraft/client/gui/components/toasts/SystemToast$SystemToastId fku$a net/minecraft/class_370$class_9037 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; NARRATOR_TOGGLE a field_47583 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; WORLD_BACKUP b field_47584 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PACK_LOAD_FAILURE c field_47585 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; WORLD_ACCESS_FAILURE d field_47586 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PACK_COPY_FAILURE e field_47587 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; FILE_DROP_FAILURE f field_52128 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PERIODIC_NOTIFICATION g field_47588 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; LOW_DISK_SPACE h field_49487 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; CHUNK_LOAD_FAILURE i field_49488 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; CHUNK_SAVE_FAILURE j field_49489 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; UNSECURE_SERVER_WARNING k field_47589 + f J displayTime l field_47590 + m (J)V + p 1 displayTime + m ()V + m ()V +c net/minecraft/client/gui/components/toasts/Toast fkv net/minecraft/class_368 + f Ljava/lang/Object; NO_TOKEN b field_2208 + f I SLOT_HEIGHT c field_39928 + m ()I width a method_29049 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/toasts/ToastComponent;J)Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; render a method_1986 + p 1 guiGraphics + p 2 toastComponent + p 3 timeSinceLastVisible + m ()I height b method_29050 + m ()Ljava/lang/Object; getToken e method_1987 + m ()I slotCount f method_45072 + m ()V +c net/minecraft/client/gui/components/toasts/Toast$Visibility fkv$a net/minecraft/class_368$class_369 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; SHOW a field_2210 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; HIDE b field_2209 + f Lnet/minecraft/sounds/SoundEvent; soundEvent c field_2211 + f [Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; $VALUES d field_2212 + m ()[Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; $values a method_36872 + m (Lnet/minecraft/client/sounds/SoundManager;)V playSound a method_1988 + p 1 handler + m (Ljava/lang/String;ILnet/minecraft/sounds/SoundEvent;)V + p 3 soundEvent + m ()V +c net/minecraft/client/gui/components/toasts/ToastComponent fkw net/minecraft/class_374 + f I SLOT_COUNT a field_39929 + f I NO_SPACE b field_39930 + f Lnet/minecraft/client/Minecraft; minecraft c field_2238 + f Ljava/util/List; visible d field_2239 + f Ljava/util/BitSet; occupiedSlots e field_39931 + f Ljava/util/Deque; queued f field_2240 + m ()V clear a method_2000 + m (I)I findFreeIndex a method_45073 + p 1 slotCount + m (ILnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/toasts/ToastComponent$ToastInstance;)Z method_45074 a method_45074 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1996 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/components/toasts/Toast;)V addToast a method_1999 + p 1 toast + m (Ljava/lang/Class;Ljava/lang/Object;)Lnet/minecraft/client/gui/components/toasts/Toast; getToast a method_1997 + p 1 toastClass + p 2 token + m ()Lnet/minecraft/client/Minecraft; getMinecraft b method_1995 + m (Lnet/minecraft/client/gui/components/toasts/Toast;)Z method_45075 b method_45075 + m ()D getNotificationDisplayTimeMultiplier c method_48221 + m ()I freeSlots d method_45076 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/components/toasts/ToastComponent$ToastInstance fkw$a net/minecraft/class_374$class_375 + f Lnet/minecraft/client/gui/components/toasts/ToastComponent; field_2245 a field_2245 + f J ANIMATION_TIME b field_32221 + f Lnet/minecraft/client/gui/components/toasts/Toast; toast c field_2241 + f I index d field_39932 + f I slotCount e field_39933 + f J animationTime f field_2243 + f J visibleTime g field_2242 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; visibility h field_2244 + m ()Lnet/minecraft/client/gui/components/toasts/Toast; getToast a method_2001 + m (ILnet/minecraft/client/gui/GuiGraphics;)Z render a method_2002 + p 1 screenWidth + p 2 guiGraphics + m (J)F getVisibility a method_2003 + p 1 time + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/Toast;II)V + p 2 toast + p 3 index + p 4 slotCount +c net/minecraft/client/gui/components/toasts/TutorialToast fkx net/minecraft/class_372 + f I PROGRESS_BAR_WIDTH a field_32222 + f I PROGRESS_BAR_HEIGHT d field_32223 + f I PROGRESS_BAR_X e field_32224 + f I PROGRESS_BAR_Y f field_32225 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE g field_45397 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; icon h field_2225 + f Lnet/minecraft/network/chat/Component; title i field_2224 + f Lnet/minecraft/network/chat/Component; message j field_2226 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; visibility k field_2227 + f J lastProgressTime l field_2223 + f F lastProgress m field_2229 + f F progress n field_2228 + f Z progressable o field_2222 + m (F)V updateProgress a method_1992 + p 1 progress + m ()V hide c method_1993 + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 icon + p 2 title + p 3 message + p 4 progressable + m ()V +c net/minecraft/client/gui/components/toasts/TutorialToast$Icons fkx$a net/minecraft/class_372$class_373 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; MOVEMENT_KEYS a field_2230 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; MOUSE b field_2237 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; TREE c field_2235 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; RECIPE_BOOK d field_2233 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; WOODEN_PLANKS e field_2236 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; SOCIAL_INTERACTIONS f field_26848 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; RIGHT_CLICK g field_28782 + f Lnet/minecraft/resources/ResourceLocation; sprite h field_45398 + f [Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; $VALUES i field_2234 + m ()[Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; $values a method_36873 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_1994 + p 1 guiGraphics + p 2 x + p 3 y + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;)V + p 3 sprite + m ()V +c net/minecraft/client/gui/components/toasts/package-info fky net/minecraft/class_6208 +c net/minecraft/client/gui/font/AllMissingGlyphProvider fkz net/minecraft/class_376 + m ()V +c net/minecraft/client/gui/font/CodepointMap fla net/minecraft/class_8532 + f I BLOCK_BITS a field_44749 + f I BLOCK_SIZE b field_44750 + f I IN_BLOCK_MASK c field_44751 + f I MAX_BLOCK d field_44752 + f I BLOCK_COUNT e field_44753 + f [Ljava/lang/Object; empty f field_44754 + f [[Ljava/lang/Object; blockMap g field_44755 + f Ljava/util/function/IntFunction; blockConstructor h field_44756 + m ()V clear a method_51597 + m (I)Ljava/lang/Object; get a method_51598 + p 1 index + m (ILjava/lang/Object;)Ljava/lang/Object; put a method_51599 + p 1 index + p 2 value + m (ILjava/util/function/IntFunction;)Ljava/lang/Object; computeIfAbsent a method_51600 + p 1 index + p 2 valueIfAbsentGetter + m (Lnet/minecraft/client/gui/font/CodepointMap$Output;)V forEach a method_51601 + p 1 output + m (Lit/unimi/dsi/fastutil/ints/IntOpenHashSet;ILjava/lang/Object;)V method_51602 a method_51602 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; keySet b method_51603 + m (I)Ljava/lang/Object; remove b method_51604 + m (Ljava/util/function/IntFunction;Ljava/util/function/IntFunction;)V + p 1 blockConstructor + p 2 blockMapConstructor +c net/minecraft/client/gui/font/CodepointMap$Output fla$a net/minecraft/class_8532$class_8533 +c net/minecraft/client/gui/font/FontManager flb net/minecraft/class_378 + f Lnet/minecraft/resources/ResourceLocation; MISSING_FONT a field_24254 + f Lorg/slf4j/Logger; LOGGER b field_2261 + f Ljava/lang/String; FONTS_PATH c field_32226 + f Lnet/minecraft/resources/FileToIdConverter; FONT_DEFINITIONS d field_40409 + f Lcom/google/gson/Gson; GSON e field_44757 + f Lnet/minecraft/client/gui/font/FontSet; missingFontSet f field_24255 + f Ljava/util/List; providersToClose g field_44758 + f Ljava/util/Map; fontSets h field_2259 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager i field_2260 + f Lnet/minecraft/client/gui/font/FontSet; lastFontSetCache j field_49111 + m ()Lnet/minecraft/client/gui/Font; createFont a method_27539 + m (I)[Ljava/util/concurrent/CompletableFuture; method_51605 a method_51605 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSetRaw a method_57023 + p 1 fontSet + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; prepare a method_51608 + p 1 resourceManager + p 2 executor + m (Lnet/minecraft/util/DependencySorter;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;)V method_51609 a method_51609 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/gui/font/FontManager$Preparation;)V method_51610 a method_51610 + m (Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_51611 a method_51611 + m (Lnet/minecraft/client/Options;)V updateOptions a method_57024 + p 1 options + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;)V method_51612 a method_51612 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; safeLoad a method_51613 + p 1 builderId + p 2 loader + p 3 resourceManager + p 4 executor + m (Lnet/minecraft/client/gui/font/FontManager$Preparation;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_51614 + p 1 preperation + p 2 profiler + m (Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference;)V method_51615 a method_51615 + m (Lnet/minecraft/client/gui/font/FontSet;)V method_27540 a method_27540 + m (Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/gui/font/FontManager$BuilderId;)Ljava/util/Optional; method_51616 a method_51616 + m (Ljava/util/List;)Ljava/util/Map; resolveProviders a method_51617 + p 1 unresolvedBuilderBundles + m (Ljava/util/List;I)V method_51618 a method_51618 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; loadResourceStack a method_51619 + p 0 resources + p 1 fontId + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)V finalizeProviderLoading a method_51620 + p 1 providers + p 2 fallbackProvider + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51621 a method_51621 + m (Ljava/util/List;Ljava/util/Map;Ljava/lang/Void;)Lnet/minecraft/client/gui/font/FontManager$Preparation; method_51622 a method_51622 + m (Ljava/util/Map$Entry;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle; method_51623 a method_51623 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;)V method_51624 a method_51624 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51625 a method_51625 + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51607 a method_51607 + m (Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51626 a method_51626 + m ()Lnet/minecraft/client/gui/Font; createFontFilterFishy b method_45078 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSetCached b method_57025 + p 1 fontSet + m (Lnet/minecraft/client/Options;)Ljava/util/Set; getFontOptions b method_57026 + p 0 options + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)V method_51627 b method_51627 + m ()Lcom/mojang/blaze3d/font/GlyphProvider$Conditional; createFallbackProvider d method_57027 + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/gui/font/FontManager$BuilderId flb$a net/minecraft/class_378$class_8534 + f Lnet/minecraft/resources/ResourceLocation; fontId a comp_1491 + f Ljava/lang/String; pack b comp_1492 + f I index c comp_1493 + m ()Lnet/minecraft/resources/ResourceLocation; fontId a comp_1491 + m ()Ljava/lang/String; pack b comp_1492 + m ()I index c comp_1493 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;I)V +c net/minecraft/client/gui/font/FontManager$BuilderResult flb$b net/minecraft/class_378$class_8535 + f Lnet/minecraft/client/gui/font/FontManager$BuilderId; id a comp_1494 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2350 + f Lcom/mojang/datafixers/util/Either; result c comp_1495 + m ()Lnet/minecraft/client/gui/font/FontManager$BuilderId; id a comp_1494 + m (Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)Lcom/mojang/blaze3d/font/GlyphProvider$Conditional; mergeFilters a method_57028 + p 1 conditional + m (Lcom/mojang/blaze3d/font/GlyphProvider;)Ljava/util/List; method_57029 a method_57029 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/Optional; method_51628 a method_51628 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve a method_51629 + p 1 providerResolver + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_51630 a method_51630 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2350 + m ()Lcom/mojang/datafixers/util/Either; result c comp_1495 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lcom/mojang/datafixers/util/Either;)V +c net/minecraft/client/gui/font/FontManager$FontDefinitionFile flb$c net/minecraft/class_378$class_8556 + f Lcom/mojang/serialization/Codec; CODEC a field_44798 + f Ljava/util/List; providers b comp_1518 + m ()Ljava/util/List; providers a comp_1518 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51747 a method_51747 + m (Ljava/util/List;)V + m ()V +c net/minecraft/client/gui/font/FontManager$Preparation flb$d net/minecraft/class_378$class_8536 + f Ljava/util/Map; fontSets a comp_2351 + f Ljava/util/List; allProviders b comp_1497 + m ()Ljava/util/Map; fontSets a comp_2351 + m ()Ljava/util/List; allProviders b comp_1497 + m (Ljava/util/Map;Ljava/util/List;)V +c net/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle flb$e net/minecraft/class_378$class_8537 + f Lnet/minecraft/resources/ResourceLocation; fontId a comp_1498 + f Ljava/util/List; builders b comp_1499 + f Ljava/util/Set; dependencies c comp_1500 + m ()Lnet/minecraft/resources/ResourceLocation; fontId a comp_1498 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference;)V add a method_51631 + p 1 builderId + p 2 filter + p 3 glyphProvider + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Ljava/util/concurrent/CompletableFuture;)V add a method_51632 + p 1 builderId + p 2 filter + p 3 glyphProvider + m (Lnet/minecraft/client/gui/font/FontManager$BuilderResult;)Ljava/util/stream/Stream; method_51633 a method_51633 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve a method_51634 + p 1 providerResolver + m ()Ljava/util/List; builders b comp_1499 + m ()Ljava/util/Set; dependencies c comp_1500 + m ()Ljava/util/stream/Stream; listBuilders d method_51635 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 fontId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Set;)V +c net/minecraft/client/gui/font/FontOption flc net/minecraft/class_9243 + f Lnet/minecraft/client/gui/font/FontOption; UNIFORM a field_49112 + f Lnet/minecraft/client/gui/font/FontOption; JAPANESE_VARIANTS b field_49113 + f Lcom/mojang/serialization/Codec; CODEC c field_49114 + f Ljava/lang/String; name d field_49115 + f [Lnet/minecraft/client/gui/font/FontOption; $VALUES e field_49116 + m ()[Lnet/minecraft/client/gui/font/FontOption; $values a method_57030 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/gui/font/FontOption$Filter flc$a net/minecraft/class_9243$class_9244 + f Lcom/mojang/serialization/Codec; CODEC a field_49117 + f Lnet/minecraft/client/gui/font/FontOption$Filter; ALWAYS_PASS b field_49118 + f Ljava/util/Map; values c field_49119 + m (Lnet/minecraft/client/gui/font/FontOption$Filter;)Lnet/minecraft/client/gui/font/FontOption$Filter; merge a method_57031 + p 1 filter + m (Ljava/util/Set;)Z apply a method_57032 + p 1 options + m (Lnet/minecraft/client/gui/font/FontOption$Filter;)Ljava/util/Map; method_57033 b method_57033 + m (Ljava/util/Map;)V + p 1 values + m ()V +c net/minecraft/client/gui/font/FontSet fld net/minecraft/class_377 + f Lnet/minecraft/util/RandomSource; RANDOM a field_2252 + f F LARGE_FORWARD_ADVANCE b field_39934 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager c field_2248 + f Lnet/minecraft/resources/ResourceLocation; name d field_2246 + f Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; missingGlyph e field_2256 + f Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; whiteGlyph f field_20910 + f Ljava/util/List; allProviders g field_49120 + f Ljava/util/List; activeProviders h field_49121 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs i field_2253 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphInfos j field_2257 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; glyphsByWidth k field_2249 + f Ljava/util/List; textures l field_2254 + m ()Lnet/minecraft/resources/ResourceLocation; name a method_57034 + m (I)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; getGlyph a method_2014 + p 1 character + m (IZ)Lcom/mojang/blaze3d/font/GlyphInfo; getGlyphInfo a method_2011 + p 1 character + p 2 filterFishyGlyphs + m (Lcom/mojang/blaze3d/font/GlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; getRandomGlyph a method_2013 + p 1 glyph + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; stitch a method_2012 + p 1 glyphInfo + m (Ljava/util/List;Ljava/util/Set;)V reload a method_2004 + p 1 allProviders + p 2 options + m (Ljava/util/List;Ljava/util/Set;I)V method_57035 a method_57035 + m (Ljava/util/Set;)V reload a method_57036 + p 1 options + m ()Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; whiteGlyph b method_22943 + m (I)Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; computeGlyphInfo b method_40038 + p 1 character + m (Lcom/mojang/blaze3d/font/GlyphInfo;)Z hasFishyAdvance b method_45079 + p 0 glyph + m (Ljava/util/List;Ljava/util/Set;)Ljava/util/List; selectProviders b method_57037 + p 1 providers + p 2 options + m ()V resetTextures c method_57038 + m (I)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; computeBakedGlyph c method_41832 + p 1 character + m ()V closeTextures d method_2010 + m (I)Lit/unimi/dsi/fastutil/ints/IntList; method_57039 d method_57039 + m (I)[[Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; method_51636 e method_51636 + m (I)[Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; method_51637 f method_51637 + m (I)[[Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; method_51638 g method_51638 + m (I)[Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; method_51639 h method_51639 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 name + m ()V +c net/minecraft/client/gui/font/FontSet$GlyphInfoFilter fld$a net/minecraft/class_377$class_7647 + f Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfo a comp_979 + f Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfoNotFishy b comp_980 + f Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; MISSING c field_39935 + m ()Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfo a comp_979 + m (Z)Lcom/mojang/blaze3d/font/GlyphInfo; select a method_45080 + p 1 filterFishyGlyphs + m ()Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfoNotFishy b comp_980 + m (Lcom/mojang/blaze3d/font/GlyphInfo;Lcom/mojang/blaze3d/font/GlyphInfo;)V + m ()V +c net/minecraft/client/gui/font/FontTexture fle net/minecraft/class_380 + f I SIZE e field_32227 + f Lnet/minecraft/client/gui/font/GlyphRenderTypes; renderTypes f field_44759 + f Z colored g field_2263 + f Lnet/minecraft/client/gui/font/FontTexture$Node; root h field_2264 + m (I)I method_51640 a method_51640 + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; add a method_2022 + p 1 glyphInfo + m (Lnet/minecraft/client/gui/font/GlyphRenderTypes;Z)V + p 1 renderTypes + p 2 colored +c net/minecraft/client/gui/font/FontTexture$Node fle$a net/minecraft/class_380$class_381 + f I x a field_2269 + f I y b field_2268 + f I width c field_2267 + f I height d field_2266 + f Lnet/minecraft/client/gui/font/FontTexture$Node; left e field_2270 + f Lnet/minecraft/client/gui/font/FontTexture$Node; right f field_2271 + f Z occupied g field_2265 + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/FontTexture$Node; insert a method_2024 + p 1 glyphInfo + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/font/GlyphRenderTypes flf net/minecraft/class_8538 + f Lnet/minecraft/client/renderer/RenderType; normal a comp_1501 + f Lnet/minecraft/client/renderer/RenderType; seeThrough b comp_1502 + f Lnet/minecraft/client/renderer/RenderType; polygonOffset c comp_1503 + m ()Lnet/minecraft/client/renderer/RenderType; normal a comp_1501 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/GlyphRenderTypes; createForIntensityTexture a method_51641 + p 0 id + m (Lnet/minecraft/client/gui/Font$DisplayMode;)Lnet/minecraft/client/renderer/RenderType; select a method_51642 + p 1 displayMode + m ()Lnet/minecraft/client/renderer/RenderType; seeThrough b comp_1502 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/GlyphRenderTypes; createForColorTexture b method_51643 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; polygonOffset c comp_1503 + m (Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/RenderType;)V +c net/minecraft/client/gui/font/GlyphRenderTypes$1 flf$1 net/minecraft/class_8538$1 + f [I $SwitchMap$net$minecraft$client$gui$Font$DisplayMode a field_34000 + m ()V +c net/minecraft/client/gui/font/TextFieldHelper flg net/minecraft/class_3728 + f Ljava/util/function/Supplier; getMessageFn a field_24257 + f Ljava/util/function/Consumer; setMessageFn b field_24258 + f Ljava/util/function/Supplier; getClipboardFn c field_16456 + f Ljava/util/function/Consumer; setClipboardFn d field_16458 + f Ljava/util/function/Predicate; stringValidator e field_24259 + f I cursorPos f field_16453 + f I selectionPos g field_16452 + m ()V cut a method_27547 + m (C)Z charTyped a method_16199 + p 1 character + m (I)Z keyPressed a method_16202 + p 1 key + m (II)V setSelectionRange a method_27548 + p 1 selectionStart + p 2 selectionEnd + m (ILnet/minecraft/client/gui/font/TextFieldHelper$CursorStep;)V removeFromCursor a method_42574 + p 1 direction + p 2 step + m (IZ)V moveByChars a method_27549 + p 1 direction + p 2 keepSelection + m (IZLnet/minecraft/client/gui/font/TextFieldHelper$CursorStep;)V moveBy a method_42575 + p 1 direction + p 2 keepSelection + p 3 cursorStep + m (Lnet/minecraft/client/Minecraft;)Ljava/util/function/Supplier; createClipboardGetter a method_27550 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V setClipboardContents a method_27551 + p 0 minecraft + p 1 text + m (Ljava/lang/String;)V insertText a method_16197 + p 1 text + m (Ljava/lang/String;Ljava/lang/String;)V insertText a method_27552 + p 1 text + p 2 clipboardText + m (Z)V setCursorToStart a method_27553 + p 1 keepSelection + m ()V paste b method_27554 + m (I)V moveByChars b method_35727 + p 1 direction + m (IZ)V moveByWords b method_27555 + p 1 direction + p 2 keepSelection + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; getClipboardContents b method_27556 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V method_27557 b method_27557 + m (Ljava/lang/String;)Ljava/lang/String; getSelected b method_16200 + p 1 text + m (Z)V setCursorToEnd b method_27558 + p 1 keepSelection + m ()V copy c method_27559 + m (I)V moveByWords c method_35728 + p 1 direction + m (IZ)V setCursorPos c method_27560 + p 1 textIndex + p 2 keepSelection + m (Lnet/minecraft/client/Minecraft;)Ljava/util/function/Consumer; createClipboardSetter c method_27561 + p 0 minecraft + m (Ljava/lang/String;)Ljava/lang/String; deleteSelection c method_16198 + p 1 text + m (Z)V resetSelectionIfNeeded c method_27562 + p 1 keepSelection + m ()V selectAll d method_27563 + m (I)V removeWordsFromCursor d method_42576 + p 1 direction + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_27565 d method_27565 + m ()V setCursorToStart e method_35729 + m (I)V removeCharsFromCursor e method_27564 + p 1 direction + m ()V setCursorToEnd f method_16204 + m (I)V setCursorPos f method_35730 + p 1 textIndex + m ()I getCursorPos g method_16201 + m (I)V setSelectionPos g method_35731 + p 1 textIndex + m ()I getSelectionPos h method_16203 + m (I)I clampToMsgLength h method_27567 + p 1 textIndex + m ()Z isSelecting i method_27568 + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Predicate;)V + p 1 getMessage + p 2 setMessage + p 3 getClipboard + p 4 setClipboard + p 5 stringValidator +c net/minecraft/client/gui/font/TextFieldHelper$CursorStep flg$a net/minecraft/class_3728$class_7279 + f Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; CHARACTER a field_38308 + f Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; WORD b field_38309 + f [Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; $VALUES c field_38310 + m ()[Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; $values a method_42577 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/font/glyphs/BakedGlyph flh net/minecraft/class_382 + f Lnet/minecraft/client/gui/font/GlyphRenderTypes; renderTypes a field_44760 + f F u0 b field_2276 + f F u1 c field_2275 + f F v0 d field_2274 + f F v1 e field_2273 + f F left f field_2272 + f F right g field_2280 + f F up h field_2279 + f F down i field_2278 + m (Lnet/minecraft/client/gui/Font$DisplayMode;)Lnet/minecraft/client/renderer/RenderType; renderType a method_24045 + p 1 displayMode + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph$Effect;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;I)V renderEffect a method_22944 + p 1 effect + p 2 matrix + p 3 buffer + p 4 packedLight + m (ZFFLorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFI)V render a method_2025 + p 1 italic + p 2 x + p 3 y + p 4 matrix + p 5 buffer + p 6 red + p 7 green + p 8 blue + p 9 alpha + p 10 packedLight + m (Lnet/minecraft/client/gui/font/GlyphRenderTypes;FFFFFFFF)V + p 1 renderTypes + p 2 u0 + p 3 u1 + p 4 v0 + p 5 v1 + p 6 left + p 7 right + p 8 up + p 9 down +c net/minecraft/client/gui/font/glyphs/BakedGlyph$Effect flh$a net/minecraft/class_382$class_328 + f F x0 a field_2008 + f F y0 b field_2007 + f F x1 c field_2006 + f F y1 d field_2005 + f F depth e field_20911 + f F r f field_2004 + f F g g field_2003 + f F b h field_2010 + f F a i field_2009 + m (FFFFFFFFF)V + p 1 x0 + p 2 y0 + p 3 x1 + p 4 y1 + p 5 depth + p 6 r + p 7 g + p 8 b + p 9 a +c net/minecraft/client/gui/font/glyphs/EmptyGlyph fli net/minecraft/class_384 + f Lnet/minecraft/client/gui/font/glyphs/EmptyGlyph; INSTANCE a field_38311 + m ()V + m ()V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs flj net/minecraft/class_7191 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; WHITE a field_37898 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; MISSING b field_37899 + f Lcom/mojang/blaze3d/platform/NativeImage; image c field_37900 + f [Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; $VALUES d field_37901 + m (II)I method_41833 a method_41833 + m (IILnet/minecraft/client/gui/font/glyphs/SpecialGlyphs$PixelProvider;)Lcom/mojang/blaze3d/platform/NativeImage; generate a method_41834 + p 0 width + p 1 height + p 2 pixelProvider + m (II)I method_41835 b method_41835 + m ()Lcom/mojang/blaze3d/platform/NativeImage; method_41836 c method_41836 + m ()Lcom/mojang/blaze3d/platform/NativeImage; method_41837 d method_41837 + m ()[Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; $values e method_41838 + m (Ljava/lang/String;ILjava/util/function/Supplier;)V + p 3 image + m ()V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs$1 flj$1 net/minecraft/class_7191$1 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; field_37902 a field_37902 + m (Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs;)V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs$PixelProvider flj$a net/minecraft/class_7191$class_7192 +c net/minecraft/client/gui/font/glyphs/package-info flk net/minecraft/class_6209 +c net/minecraft/client/gui/font/package-info fll net/minecraft/class_6210 +c net/minecraft/client/gui/font/providers/BitmapProvider flm net/minecraft/class_386 + f Lorg/slf4j/Logger; LOGGER b field_2286 + f Lcom/mojang/blaze3d/platform/NativeImage; image c field_2285 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs d field_2284 + m (Lcom/mojang/blaze3d/platform/NativeImage;Lnet/minecraft/client/gui/font/CodepointMap;)V + p 1 image + p 2 glyphs + m ()V +c net/minecraft/client/gui/font/providers/BitmapProvider$Definition flm$a net/minecraft/class_386$class_387 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44799 + f Lnet/minecraft/resources/ResourceLocation; file c comp_1519 + f I height d comp_1520 + f I ascent e comp_1521 + f [[I codepointGrid f comp_1522 + f Lcom/mojang/serialization/Codec; CODEPOINT_GRID_CODEC g field_44800 + m (I)[[Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; method_51644 a method_51644 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_2039 + p 1 resoureManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51748 a method_51748 + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)I getActualGlyphWidth a method_2038 + p 1 image + p 2 width + p 3 height + p 4 x + p 5 y + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Definition;)Lcom/mojang/serialization/DataResult; validate a method_51749 + p 0 definition + m (Ljava/util/List;)[[I method_51750 a method_51750 + m ([II)Ljava/lang/String; method_51751 a method_51751 + m ([[I)Lcom/mojang/serialization/DataResult; validateDimensions a method_51752 + p 0 dimensions + m (I)[Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; method_51645 b method_51645 + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Definition;)Ljava/lang/String; method_51753 b method_51753 + m ([[I)Ljava/util/List; method_51754 b method_51754 + m ()Lnet/minecraft/resources/ResourceLocation; file c comp_1519 + m ()I height d comp_1520 + m ()I ascent e comp_1521 + m ()[[I codepointGrid f comp_1522 + m ()Ljava/lang/String; method_51755 g method_51755 + m ()Ljava/lang/String; method_51756 h method_51756 + m (Lnet/minecraft/resources/ResourceLocation;II[[I)V + m ()V +c net/minecraft/client/gui/font/providers/BitmapProvider$Glyph flm$b net/minecraft/class_386$class_388 + f F scale a comp_603 + f Lcom/mojang/blaze3d/platform/NativeImage; image b comp_604 + f I offsetX c comp_605 + f I offsetY d comp_606 + f I width e comp_607 + f I height f comp_608 + f I advance g comp_609 + f I ascent h comp_610 + m ()F scale c comp_603 + m ()Lcom/mojang/blaze3d/platform/NativeImage; image d comp_604 + m ()I offsetX e comp_605 + m ()I offsetY f comp_606 + m ()I width g comp_607 + m ()I height h comp_608 + m ()I advance i comp_609 + m ()I ascent j comp_610 + m (FLcom/mojang/blaze3d/platform/NativeImage;IIIIII)V + p 1 scale + p 2 image + p 3 offsetX + p 4 offsetY + p 5 width + p 6 height + p 7 advance + p 8 ascent +c net/minecraft/client/gui/font/providers/BitmapProvider$Glyph$1 flm$b$1 net/minecraft/class_386$class_388$1 + f Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; field_37903 a field_37903 + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph;)V +c net/minecraft/client/gui/font/providers/FreeTypeUtil fln net/minecraft/class_9111 + f Ljava/lang/Object; LIBRARY_LOCK a field_51483 + f Lorg/slf4j/Logger; LOGGER b field_51484 + f J library c field_48394 + m ()J getLibrary a method_56143 + m (I)Ljava/lang/String; describeError a method_56144 + p 0 errorId + m (ILjava/lang/String;)V assertError a method_59837 + p 0 errorId + p 1 action + m (Lorg/lwjgl/util/freetype/FT_Vector;)F x a method_56146 + p 0 vector + m (Lorg/lwjgl/util/freetype/FT_Vector;FF)Lorg/lwjgl/util/freetype/FT_Vector; setVector a method_56147 + p 0 vector + p 1 x + p 2 y + m ()V destroy b method_56148 + m (ILjava/lang/String;)Z checkError b method_56145 + p 0 errorId + p 1 action + m ()V + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition flo net/minecraft/class_389 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_44801 + m ()Lnet/minecraft/client/gui/font/providers/GlyphProviderType; type a method_51731 + m ()Lcom/mojang/datafixers/util/Either; unpack b method_51734 + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Conditional flo$a net/minecraft/class_389$class_9245 + f Lcom/mojang/serialization/Codec; CODEC a field_49122 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition; definition b comp_2352 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter c comp_2353 + m ()Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition; definition a comp_2352 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57040 a method_57040 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2353 + m (Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition;Lnet/minecraft/client/gui/font/FontOption$Filter;)V + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader flo$b net/minecraft/class_389$class_8539 +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference flo$c net/minecraft/class_389$class_8540 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1504 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1504 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/font/providers/GlyphProviderType flp net/minecraft/class_394 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; BITMAP a field_2312 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; TTF b field_2317 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; SPACE c field_37904 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; UNIHEX d field_2313 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; REFERENCE e field_44761 + f Lcom/mojang/serialization/Codec; CODEC f field_44802 + f Ljava/lang/String; name g field_2314 + f Lcom/mojang/serialization/MapCodec; codec h field_44803 + f [Lnet/minecraft/client/gui/font/providers/GlyphProviderType; $VALUES i field_2316 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_51758 + m ()[Lnet/minecraft/client/gui/font/providers/GlyphProviderType; $values b method_36876 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 name + p 4 codec + m ()V +c net/minecraft/client/gui/font/providers/ProviderReferenceDefinition flq net/minecraft/class_8541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44762 + f Lnet/minecraft/resources/ResourceLocation; id c comp_1523 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51647 a method_51647 + m ()Lnet/minecraft/resources/ResourceLocation; id c comp_1523 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition flr net/minecraft/class_8557 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44804 + f Lnet/minecraft/resources/ResourceLocation; location c comp_1524 + f F size d comp_1525 + f F oversample e comp_1526 + f Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; shift f comp_1527 + f Ljava/lang/String; skip g comp_1528 + f Lcom/mojang/serialization/Codec; SKIP_LIST_CODEC h field_44805 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_51759 + p 1 resourceManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51761 a method_51761 + m (Ljava/util/List;)Ljava/lang/String; method_52730 a method_52730 + m ()Lnet/minecraft/resources/ResourceLocation; location c comp_1524 + m ()F size d comp_1525 + m ()F oversample e comp_1526 + m ()Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; shift f comp_1527 + m ()Ljava/lang/String; skip g comp_1528 + m (Lnet/minecraft/resources/ResourceLocation;FFLnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift;Ljava/lang/String;)V + m ()V +c net/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift flr$a net/minecraft/class_8557$class_8558 + f Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; NONE a field_44806 + f Lcom/mojang/serialization/Codec; CODEC b field_44807 + f F x c comp_1529 + f F y d comp_1530 + m ()F x a comp_1529 + m (Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift;)Ljava/util/List; method_51764 a method_51764 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_51765 a method_51765 + m ()F y b comp_1530 + m (Ljava/util/List;)Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; method_51766 b method_51766 + m (FF)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider fls net/minecraft/class_391 + f Lorg/slf4j/Logger; LOGGER b field_2303 + f I GLYPH_HEIGHT c field_44764 + f I DIGITS_PER_BYTE d field_44765 + f I DIGITS_FOR_WIDTH_8 e field_44766 + f I DIGITS_FOR_WIDTH_16 f field_44767 + f I DIGITS_FOR_WIDTH_24 g field_44768 + f I DIGITS_FOR_WIDTH_32 h field_44769 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs i field_44770 + m (IB)I decodeHex a method_51651 + p 0 lineNumber + p 1 data + m (ILit/unimi/dsi/fastutil/bytes/ByteList;I)I decodeHex a method_51652 + p 0 lineNumber + p 1 byteList + p 2 index + m (Ljava/io/InputStream;Lnet/minecraft/client/gui/font/providers/UnihexProvider$ReaderOutput;)V readFromStream a method_51653 + p 0 stream + p 1 output + m (Ljava/io/InputStream;Lit/unimi/dsi/fastutil/bytes/ByteList;I)Z copyUntil a method_51654 + p 0 stream + p 1 byteList + p 2 value + m (Ljava/nio/IntBuffer;III)V unpackBitsToBytes a method_51655 + p 0 buffer + p 1 lineData + p 2 left + p 3 right + m (Ljava/nio/IntBuffer;Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;II)V unpackBitsToBytes a method_51656 + p 0 buffer + p 1 lineData + p 2 left + p 3 right + m (Lnet/minecraft/client/gui/font/CodepointMap;)V + p 1 glyph + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$ByteContents fls$a net/minecraft/class_391$class_7736 + f [B contents a comp_1505 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read a method_51669 + p 0 index + p 1 byteList + m ()[B contents b comp_1505 + m ([B)V +c net/minecraft/client/gui/font/providers/UnihexProvider$Definition fls$b net/minecraft/class_391$class_392 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44771 + f Lnet/minecraft/resources/ResourceLocation; hexFile c field_2304 + f Ljava/util/List; sizeOverrides d field_44772 + m (I)[[Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; method_51657 a method_51657 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_51658 + p 1 resourceManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51659 a method_51659 + m (Lnet/minecraft/client/gui/font/CodepointMap;ILnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;)V method_51660 a method_51660 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Definition;)Ljava/util/List; method_51661 a method_51661 + m (Ljava/io/InputStream;)Lnet/minecraft/client/gui/font/providers/UnihexProvider; loadData a method_51662 + p 1 inputStream + m (I)[Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; method_51664 b method_51664 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Definition;)Lnet/minecraft/resources/ResourceLocation; method_51665 b method_51665 + m (I)[[Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; method_51666 c method_51666 + m (I)[Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; method_51667 d method_51667 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 hexFile + p 2 sizeOverrides + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$Dimensions fls$c net/minecraft/class_391$class_8542 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_44773 + f Lcom/mojang/serialization/Codec; CODEC b field_44774 + f I left c comp_1506 + f I right d comp_1507 + m ()I pack a method_51670 + m (I)I left a method_51671 + p 0 packedDimensions + m (II)I pack a method_51672 + p 0 left + p 1 right + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51673 a method_51673 + m ()I left b comp_1506 + m (I)I right b method_51674 + p 0 packedDimensions + m ()I right c comp_1507 + m (II)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$Glyph fls$d net/minecraft/class_391$class_393 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; contents a comp_1508 + f I left b comp_1509 + f I right c comp_1510 + m ()I width c method_51675 + m ()Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; contents d comp_1508 + m ()I left e comp_1509 + m ()I right f comp_1510 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;II)V +c net/minecraft/client/gui/font/providers/UnihexProvider$Glyph$1 fls$d$1 net/minecraft/class_391$class_393$1 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; field_37906 a field_37906 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph;)V +c net/minecraft/client/gui/font/providers/UnihexProvider$IntContents fls$e net/minecraft/class_391$class_8543 + f [I contents a comp_1511 + f I bitWidth b comp_1512 + f I SIZE_24 c field_44775 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read32 a method_51676 + p 0 index + p 1 byteList + m ()[I contents b comp_1511 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read24 b method_51677 + p 0 index + p 1 byteList + m ([II)V +c net/minecraft/client/gui/font/providers/UnihexProvider$LineData fls$f net/minecraft/class_391$class_8544 + m ()I bitWidth a comp_1512 + m (I)I line a method_51668 + p 1 index + m ()I mask c method_51678 + m ()I calculateWidth d method_51679 +c net/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange fls$g net/minecraft/class_391$class_8545 + f Lcom/mojang/serialization/Codec; CODEC a field_44776 + f I from b comp_1513 + f I to c comp_1514 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions; dimensions d comp_1515 + f Lcom/mojang/serialization/Codec; RAW_CODEC e field_44777 + m ()I from a comp_1513 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51680 a method_51680 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange;)Lcom/mojang/serialization/DataResult; method_51681 a method_51681 + m ()I to b comp_1514 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange;)Ljava/lang/String; method_51682 b method_51682 + m ()Lnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions; dimensions c comp_1515 + m (IILnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions;)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$ReaderOutput fls$h net/minecraft/class_391$class_8546 +c net/minecraft/client/gui/font/providers/UnihexProvider$ShortContents fls$i net/minecraft/class_391$class_8547 + f [S contents a comp_1516 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read a method_51683 + p 0 index + p 1 byteList + m ()[S contents b comp_1516 + m ([S)V +c net/minecraft/client/gui/font/providers/package-info flt net/minecraft/class_6211 +c net/minecraft/client/gui/layouts/AbstractLayout flu net/minecraft/class_7838 + f I width a field_41813 + f I height b field_41814 + f I x c field_41815 + f I y d field_41816 + m (ILnet/minecraft/client/gui/layouts/LayoutElement;)V method_48223 a method_48223 + m (ILnet/minecraft/client/gui/layouts/LayoutElement;)V method_48226 b method_48226 + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/AbstractLayout$AbstractChildWrapper flu$a net/minecraft/class_7838$class_7839 + f Lnet/minecraft/client/gui/layouts/LayoutElement; child a field_40752 + f Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; layoutSettings b field_40753 + m ()I getHeight a method_46422 + m (II)V setX a method_46423 + p 1 x + p 2 width + m ()I getWidth b method_46424 + m (II)V setY b method_46425 + p 1 y + p 2 height + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V + p 1 child + p 2 layoutSettings +c net/minecraft/client/gui/layouts/CommonLayouts flv net/minecraft/class_8767 + f I LABEL_SPACING a field_46007 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/layouts/Layout; labeledElement a method_53549 + p 0 font + p 1 element + p 2 label + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/Layout; labeledElement a method_53550 + p 0 font + p 1 element + p 2 label + p 3 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_53551 a method_53551 + m ()V +c net/minecraft/client/gui/layouts/EqualSpacingLayout flw net/minecraft/class_7849 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; orientation c field_40784 + f Ljava/util/List; children d field_40785 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSettings e field_40787 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46495 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46496 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52731 + p 1 child + p 2 layoutSettingsCreator + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)V method_48230 a method_48230 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newChildLayoutSettings b method_46499 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSetting c method_46500 + m (IILnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation;)V + p 1 width + p 2 height + p 3 orientation + m (IIIILnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 orientation +c net/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer flw$a net/minecraft/class_7849$class_7850 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V +c net/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation flw$b net/minecraft/class_7849$class_7851 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; HORIZONTAL a field_40789 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; VERTICAL b field_40790 + f [Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; $VALUES c field_40791 + m ()[Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; $values a method_46501 + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)I getPrimaryLength a method_46504 + p 1 container + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;I)V setPrimaryPosition a method_46505 + p 1 container + p 2 position + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;II)V setSecondaryPosition a method_46506 + p 1 container + p 2 position + p 3 length + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getPrimaryLength a method_46502 + p 1 element + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)I getSecondaryLength b method_46508 + p 1 container + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getSecondaryLength b method_46507 + p 1 element + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getPrimaryPosition c method_46509 + p 1 element + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getSecondaryPosition d method_46510 + p 1 element + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/layouts/FrameLayout flx net/minecraft/class_7843 + f Ljava/util/List; children c field_40766 + f I minWidth d field_40768 + f I minHeight e field_40769 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSettings f field_40770 + m (I)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinHeight a method_46447 + p 1 minHeight + m (II)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinDimensions a method_46446 + p 1 minWidth + p 2 minHeight + m (IIILjava/util/function/Consumer;F)V alignInDimension a method_46440 + p 0 position + p 1 rectangleLength + p 2 childLength + p 3 setter + p 4 delta + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46441 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIII)V centerInRectangle a method_46442 + p 0 child + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIIFF)V alignInRectangle a method_46443 + p 0 child + p 1 x + p 2 y + p 3 width + p 4 height + p 5 deltaX + p 6 deltaY + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46444 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V centerInRectangle a method_48634 + p 0 child + p 1 rectangle + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/navigation/ScreenRectangle;FF)V alignInRectangle a method_49617 + p 0 child + p 1 rectangle + p 2 deltaX + p 3 deltaY + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52732 + p 1 child + p 2 layoutSettingsFactory + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/FrameLayout$ChildContainer;)V method_48228 a method_48228 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newChildLayoutSettings b method_46448 + m (I)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinWidth b method_46449 + p 1 minWidth + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSetting c method_46450 + m ()V + m (II)V + p 1 width + p 2 height + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/FrameLayout$ChildContainer flx$a net/minecraft/class_7843$class_7844 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V +c net/minecraft/client/gui/layouts/GridLayout fly net/minecraft/class_7845 + f Ljava/util/List; children c field_40771 + f Ljava/util/List; cellInhabitants d field_40772 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSettings e field_40773 + f I rowSpacing f field_42154 + f I columnSpacing g field_42155 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; columnSpacing a method_48635 + p 1 columnSpacing + m (Lnet/minecraft/client/gui/layouts/LayoutElement;II)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46452 + p 1 child + p 2 row + p 3 column + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIII)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46453 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46454 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILjava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52733 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettingsFactory + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46455 + p 1 child + p 2 row + p 3 column + p 4 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IILjava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52734 + p 1 child + p 2 row + p 3 column + p 4 layoutSettingsFactory + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_46457 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; rowSpacing b method_48636 + p 1 rowSpacing + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_46458 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; spacing c method_48637 + p 1 spacing + m (I)Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper; createRowHelper d method_47610 + p 1 columns + m ()V + m (II)V + p 1 x + p 2 y +c net/minecraft/client/gui/layouts/GridLayout$CellInhabitant fly$a net/minecraft/class_7845$class_7846 + f I row c field_40774 + f I column d field_40775 + f I occupiedRows e field_40776 + f I occupiedColumns f field_40777 + m ()I getLastOccupiedRow c method_46459 + m ()I getLastOccupiedColumn d method_46460 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILnet/minecraft/client/gui/layouts/LayoutSettings;)V + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettings +c net/minecraft/client/gui/layouts/GridLayout$RowHelper fly$b net/minecraft/class_7845$class_7939 + f Lnet/minecraft/client/gui/layouts/GridLayout; field_41338 a field_41338 + f I columns b field_41339 + f I index c field_41340 + m ()Lnet/minecraft/client/gui/layouts/GridLayout; getGrid a method_48638 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47612 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;I)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47613 + p 1 child + p 2 occupiedColumns + m (Lnet/minecraft/client/gui/layouts/LayoutElement;ILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47614 + p 1 child + p 2 occupiedColumns + p 3 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47615 + p 1 child + p 2 layoutSettings + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_47611 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_47616 + m (Lnet/minecraft/client/gui/layouts/GridLayout;I)V + p 2 columns +c net/minecraft/client/gui/layouts/HeaderAndFooterLayout flz net/minecraft/class_8132 + f I DEFAULT_HEADER_AND_FOOTER_HEIGHT a field_42490 + f I CONTENT_MARGIN_TOP b field_43136 + f Lnet/minecraft/client/gui/layouts/FrameLayout; headerFrame c field_42491 + f Lnet/minecraft/client/gui/layouts/FrameLayout; footerFrame d field_42492 + f Lnet/minecraft/client/gui/layouts/FrameLayout; contentsFrame e field_42493 + f Lnet/minecraft/client/gui/screens/Screen; screen f field_42494 + f I headerHeight g field_42495 + f I footerHeight h field_42496 + m (I)V setFooterHeight a method_48991 + p 1 footerHeight + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToHeader a method_48992 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToHeader a method_48993 + p 1 child + p 2 layoutSettingsFactory + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V addTitleHeader a method_57726 + p 1 message + p 2 font + m ()I getFooterHeight b method_48994 + m (I)V setHeaderHeight b method_48995 + p 1 headerHeight + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToFooter b method_48996 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToFooter b method_48997 + p 1 child + p 2 layoutSettingsFactory + m ()I getHeaderHeight c method_48998 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToContents c method_48999 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToContents c method_49000 + p 1 child + p 2 layoutSettingFactory + m ()I getContentHeight d method_57727 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 screen + m (Lnet/minecraft/client/gui/screens/Screen;I)V + p 1 screen + p 2 height + m (Lnet/minecraft/client/gui/screens/Screen;II)V + p 1 screen + p 2 headerHeight + p 3 footerHeight +c net/minecraft/client/gui/layouts/Layout fma net/minecraft/class_8133 + m ()V arrangeElements a method_48222 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_49004 a method_49004 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_49005 a method_49005 + m (Ljava/util/function/Consumer;)V visitChildren b method_48227 + p 1 visitor +c net/minecraft/client/gui/layouts/LayoutElement fmb net/minecraft/class_8021 + m ()I getX D method_46426 + m ()I getY E method_46427 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; getRectangle H method_48202 + m (Ljava/util/function/Consumer;)V visitWidgets a method_48206 + p 1 consumer + m (II)V setPosition c method_48229 + p 1 x + p 2 y + m (I)V setX m method_46421 + p 1 x + m (I)V setY n method_46419 + p 1 y + m ()I getHeight w method_25364 + m ()I getWidth y method_25368 +c net/minecraft/client/gui/layouts/LayoutSettings fmc net/minecraft/class_7847 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyLeft a method_46461 + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontally a method_46462 + p 1 xAlignment + m (FF)Lnet/minecraft/client/gui/layouts/LayoutSettings; align a method_46463 + p 1 xAlignment + p 2 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46464 + p 1 padding + m (II)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46465 + p 1 horizontalPadding + p 2 verticalPadding + m (IIII)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46466 + p 1 paddingLeft + p 2 paddingTop + p 3 paddingRight + p 4 paddingBottom + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyCenter b method_46467 + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVertically b method_46468 + p 1 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingLeft b method_46469 + p 1 paddingLeft + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyRight c method_46470 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingTop c method_46471 + p 1 paddingTop + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyTop d method_46472 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingRight d method_46473 + p 1 paddingRight + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyMiddle e method_46474 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingBottom e method_46475 + p 1 paddingBottom + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyBottom f method_46476 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingHorizontal f method_46477 + p 1 horizontalPadding + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; copy g method_46478 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingVertical g method_46479 + p 1 verticalPadding + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; getExposed h method_46480 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaults i method_46481 +c net/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl fmc$a net/minecraft/class_7847$class_7848 + f I paddingLeft a field_40778 + f I paddingTop b field_40779 + f I paddingRight c field_40780 + f I paddingBottom d field_40781 + f F xAlignment e field_40782 + f F yAlignment f field_40783 + m (FF)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; align b method_46482 + p 1 xAlignment + p 2 yAlignment + m (II)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding b method_46483 + p 1 horizontalPadding + p 2 verticalPadding + m (IIII)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding b method_46484 + p 1 paddingLeft + p 2 paddingTop + p 3 paddingRight + p 4 paddingBottom + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; alignHorizontally c method_46485 + p 1 xAlignment + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; alignVertically d method_46486 + p 1 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding h method_46487 + p 1 padding + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingLeft i method_46488 + p 1 paddingLeft + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; copy j method_46489 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingTop j method_46490 + p 1 paddingTop + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingRight k method_46491 + p 1 paddingRight + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingBottom l method_46492 + p 1 paddingBottom + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingHorizontal m method_46493 + p 1 horizontalPadding + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingVertical n method_46494 + p 1 verticalPadding + m ()V + m (Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl;)V + p 1 other +c net/minecraft/client/gui/layouts/LinearLayout fmd net/minecraft/class_8667 + f Lnet/minecraft/client/gui/layouts/GridLayout; wrapped a field_45400 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; orientation b field_45401 + f I nextChildIndex c field_45402 + m (I)Lnet/minecraft/client/gui/layouts/LinearLayout; spacing a method_52735 + p 1 spacing + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52736 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52737 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52738 + p 1 child + p 2 layoutSettingsFactory + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_52739 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_52740 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; vertical d method_52741 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; horizontal e method_52742 + m (Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation;)V + p 1 orientation + m (IILnet/minecraft/client/gui/layouts/LinearLayout$Orientation;)V + p 1 width + p 2 height + p 3 orientation +c net/minecraft/client/gui/layouts/LinearLayout$Orientation fmd$a net/minecraft/class_8667$class_8668 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; HORIZONTAL a field_45403 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; VERTICAL b field_45404 + f [Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; $VALUES c field_45405 + m ()[Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; $values a method_52743 + m (Lnet/minecraft/client/gui/layouts/GridLayout;I)V setSpacing a method_52744 + p 1 layout + p 2 spacing + m (Lnet/minecraft/client/gui/layouts/GridLayout;Lnet/minecraft/client/gui/layouts/LayoutElement;ILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52745 + p 1 layout + p 2 element + p 3 index + p 4 layoutSettings + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/layouts/SpacerElement fme net/minecraft/class_7852 + f I x a field_41818 + f I y b field_41819 + f I width c field_41820 + f I height d field_41821 + m (I)Lnet/minecraft/client/gui/layouts/SpacerElement; width a method_46512 + p 0 width + m (I)Lnet/minecraft/client/gui/layouts/SpacerElement; height b method_46513 + p 0 height + m (II)V + p 1 width + p 2 height + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/package-info fmf net/minecraft/class_8022 +c net/minecraft/client/gui/narration/NarratableEntry fmg net/minecraft/class_6379 + c An interface for GUI elements that can provide narration information. + m ()Z isActive C method_37303 + c {@return {@code true} if the element is active, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; narrationPriority u method_37018 + c {@return the narration priority} +c net/minecraft/client/gui/narration/NarratableEntry$NarrationPriority fmg$a net/minecraft/class_6379$class_6380 + c The narration priority levels. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; NONE a field_33784 + c No narration priority. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; HOVERED b field_33785 + c Narration priority when the element is being hovered. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; FOCUSED c field_33786 + c Narration priority when the element is focused. + f [Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; $VALUES d field_33787 + m ()Z isTerminal a method_37028 + c Checks if the narration priority is terminal, indicating that no further narration will occur after this.\n

\n@return {@code true} if the narration priority is terminal, {@code false} otherwise. + m ()[Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; $values b method_37029 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/narration/NarratedElementType fmh net/minecraft/class_6381 + f Lnet/minecraft/client/gui/narration/NarratedElementType; TITLE a field_33788 + f Lnet/minecraft/client/gui/narration/NarratedElementType; POSITION b field_33789 + f Lnet/minecraft/client/gui/narration/NarratedElementType; HINT c field_33790 + f Lnet/minecraft/client/gui/narration/NarratedElementType; USAGE d field_33791 + f [Lnet/minecraft/client/gui/narration/NarratedElementType; $VALUES e field_33792 + m ()[Lnet/minecraft/client/gui/narration/NarratedElementType; $values a method_37030 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/narration/NarrationElementOutput fmi net/minecraft/class_6382 + m ()Lnet/minecraft/client/gui/narration/NarrationElementOutput; nest a method_37031 + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Lnet/minecraft/client/gui/narration/NarrationThunk;)V add a method_37032 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Ljava/lang/String;)V add a method_37033 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Lnet/minecraft/network/chat/Component;)V add a method_37034 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;[Lnet/minecraft/network/chat/Component;)V add a method_37035 + p 1 type + p 2 contents +c net/minecraft/client/gui/narration/NarrationSupplier fmj net/minecraft/class_6383 + c An interface for providing narration information. + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration b method_37020 + c Updates the narration output with the current narration information. + p 1 narrationElementOutput + c the output to update with narration information. +c net/minecraft/client/gui/narration/NarrationThunk fmk net/minecraft/class_6384 + f Lnet/minecraft/client/gui/narration/NarrationThunk; EMPTY a field_33793 + f Ljava/lang/Object; contents b field_33794 + f Ljava/util/function/BiConsumer; converter c field_33795 + m (Ljava/lang/String;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37036 + p 0 text + m (Ljava/util/List;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37037 + p 0 components + m (Ljava/util/List;Ljava/util/function/Consumer;Ljava/util/List;)V method_37038 a method_37038 + m (Ljava/util/function/Consumer;)V getText a method_37039 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/util/Unit;)V method_37040 a method_37040 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_37041 a method_37041 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37042 + p 0 component + m (Ljava/lang/Object;Ljava/util/function/BiConsumer;)V + p 1 contents + p 2 converter + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector fml net/minecraft/class_6385 + f I generation a field_33796 + f Ljava/util/Map; entries b field_33797 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Ljava/lang/Integer; method_37043 a method_37043 + m (Ljava/util/function/Consumer;)V update a method_37044 + p 1 updater + m (Z)Ljava/lang/String; collectNarrationText a method_37045 + p 1 collectAll + m (ZLjava/util/function/Consumer;Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry;)V method_37046 a method_37046 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Lnet/minecraft/client/gui/narration/NarratedElementType; method_37047 b method_37047 + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$1 fml$1 net/minecraft/class_6385$1 + f Ljava/lang/StringBuilder; val$result a field_33798 + f Z firstEntry b field_33800 + m (Ljava/lang/String;)V accept a method_37048 + p 1 str + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector;Ljava/lang/StringBuilder;)V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey fml$a net/minecraft/class_6385$class_6386 + f Lnet/minecraft/client/gui/narration/NarratedElementType; type a field_33801 + f I depth b field_33802 + m (Lnet/minecraft/client/gui/narration/NarratedElementType;I)V + p 1 type + p 2 depth +c net/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry fml$b net/minecraft/class_6385$class_6387 + f Lnet/minecraft/client/gui/narration/NarrationThunk; contents a field_33803 + f I generation b field_33804 + f Z alreadyNarrated c field_33805 + m (ILnet/minecraft/client/gui/narration/NarrationThunk;)Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry; update a method_37049 + p 1 generation + p 2 contents + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$Output fml$c net/minecraft/class_6385$class_6388 + f Lnet/minecraft/client/gui/narration/ScreenNarrationCollector; field_33806 a field_33806 + f I depth b field_33807 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry; method_37050 a method_37050 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector;I)V + p 2 depth +c net/minecraft/client/gui/narration/package-info fmm net/minecraft/class_6389 +c net/minecraft/client/gui/navigation/CommonInputs fmn net/minecraft/class_8494 + m (I)Z selected a method_51255 + p 0 key + m ()V +c net/minecraft/client/gui/navigation/FocusNavigationEvent fmo net/minecraft/class_8023 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getVerticalDirectionForInitialFocus a method_48231 +c net/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation fmo$a net/minecraft/class_8023$class_8024 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; direction a comp_1191 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; direction b comp_1191 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)V +c net/minecraft/client/gui/navigation/FocusNavigationEvent$InitialFocus fmo$b net/minecraft/class_8023$class_8025 + m ()V +c net/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation fmo$c net/minecraft/class_8023$class_8026 + f Z forward a comp_1192 + m ()Z forward b comp_1192 + m (Z)V +c net/minecraft/client/gui/navigation/ScreenAxis fmp net/minecraft/class_8027 + f Lnet/minecraft/client/gui/navigation/ScreenAxis; HORIZONTAL a field_41822 + f Lnet/minecraft/client/gui/navigation/ScreenAxis; VERTICAL b field_41823 + f [Lnet/minecraft/client/gui/navigation/ScreenAxis; $VALUES c field_41824 + m ()Lnet/minecraft/client/gui/navigation/ScreenAxis; orthogonal a method_48232 + m (Z)Lnet/minecraft/client/gui/navigation/ScreenDirection; getDirection a method_48233 + p 1 isPositive + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getPositive b method_48234 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getNegative c method_48235 + m ()[Lnet/minecraft/client/gui/navigation/ScreenAxis; $values d method_48236 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/navigation/ScreenDirection fmq net/minecraft/class_8028 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; UP a field_41826 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; DOWN b field_41827 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; LEFT c field_41828 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; RIGHT d field_41829 + f Lit/unimi/dsi/fastutil/ints/IntComparator; coordinateValueComparator e field_41830 + f [Lnet/minecraft/client/gui/navigation/ScreenDirection; $VALUES f field_41831 + m ()Lnet/minecraft/client/gui/navigation/ScreenAxis; getAxis a method_48237 + m (II)Z isAfter a method_48238 + p 1 first + p 2 second + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getOpposite b method_48239 + m (II)Z isBefore b method_48240 + p 1 first + p 2 second + m ()Z isPositive c method_48241 + m (II)I method_48242 c method_48242 + m ()Lit/unimi/dsi/fastutil/ints/IntComparator; coordinateValueComparator d method_48243 + m ()[Lnet/minecraft/client/gui/navigation/ScreenDirection; $values e method_48244 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/navigation/ScreenPosition fmr net/minecraft/class_8029 + f I x a comp_1193 + f I y b comp_1194 + m ()I x a comp_1193 + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getCoordinate a method_48245 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;II)Lnet/minecraft/client/gui/navigation/ScreenPosition; of a method_48246 + p 0 axis + p 1 primaryPosition + p 2 secondaryPosition + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenPosition; step a method_48247 + p 1 direction + m ()I y b comp_1194 + m (II)V +c net/minecraft/client/gui/navigation/ScreenPosition$1 fmr$1 net/minecraft/class_8029$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenAxis a field_41833 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection b field_41834 + m ()V +c net/minecraft/client/gui/navigation/ScreenRectangle fms net/minecraft/class_8030 + f Lnet/minecraft/client/gui/navigation/ScreenPosition; position a comp_1195 + f I width b comp_1196 + f I height c comp_1197 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; EMPTY d field_41835 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; empty a method_48248 + m (II)Z containsPoint a method_58137 + p 1 x + p 2 y + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getLength a method_48249 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;IIII)Lnet/minecraft/client/gui/navigation/ScreenRectangle; of a method_48250 + p 0 axis + p 1 primaryPosition + p 2 secondaryPosition + p 3 primaryLength + p 4 secondaryLength + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; step a method_48251 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Z overlaps a method_48252 + p 1 rectangle + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenAxis;)Z overlapsInAxis a method_48253 + p 1 rectangle + p 2 axis + m ()I top b method_49618 + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getCenterInAxis b method_48254 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)I getBoundInDirection b method_48255 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; intersection b method_49701 + p 1 rectangle + m ()I bottom c method_49619 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; getBorder c method_48256 + p 1 direction + m ()I left d method_49620 + m ()I right e method_49621 + m ()Lnet/minecraft/client/gui/navigation/ScreenPosition; position f comp_1195 + m ()I width g comp_1196 + m ()I height h comp_1197 + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/navigation/ScreenPosition;II)V + m ()V +c net/minecraft/client/gui/navigation/ScreenRectangle$1 fms$1 net/minecraft/class_8030$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenAxis a field_41836 + m ()V +c net/minecraft/client/gui/navigation/package-info fmt net/minecraft/class_8031 +c net/minecraft/client/gui/package-info fmu net/minecraft/class_6212 +c net/minecraft/client/gui/screens/AccessibilityOnboardingScreen fmv net/minecraft/class_8032 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout A field_49491 + f Lnet/minecraft/network/chat/Component; TITLE a field_49490 + f Lnet/minecraft/network/chat/Component; ONBOARDING_NARRATOR_MESSAGE b field_41837 + f I PADDING c field_41838 + f I TITLE_PADDING r field_41839 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer s field_41841 + f Lnet/minecraft/client/Options; options u field_41842 + f Z narratorAvailable v field_42038 + f Z hasNarrated w field_41843 + f F timer x field_41844 + f Ljava/lang/Runnable; onClose y field_46008 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; textWidget z field_41845 + m ()V handleInitialNarrationDelay C method_48260 + m (Lnet/minecraft/client/gui/components/Button;)V method_48639 a method_48639 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52746 a method_52746 + m (Lnet/minecraft/client/gui/screens/Screen;)V closeAndSetScreen a method_49296 + p 1 screen + m (ZLjava/lang/Runnable;)V close a method_53552 + p 1 markAsFinished + p 2 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_49297 b method_49297 + m (Lnet/minecraft/client/gui/screens/Screen;)V method_53553 b method_53553 + m (Lnet/minecraft/client/gui/components/Button;)V method_49298 c method_49298 + m ()I initTitleYPos m method_48259 + m (Lnet/minecraft/client/Options;Ljava/lang/Runnable;)V + p 1 options + p 2 onClose + m ()V +c net/minecraft/client/gui/screens/AlertScreen fmw net/minecraft/class_403 + f I LABEL_Y a field_39539 + f Lnet/minecraft/network/chat/Component; messageText b field_2346 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message c field_2348 + f Ljava/lang/Runnable; callback r field_2345 + f Lnet/minecraft/network/chat/Component; okButton s field_2349 + f Z shouldCloseOnEsc u field_39540 + m (Lnet/minecraft/client/gui/components/Button;)V method_19790 a method_19790 + m (Ljava/lang/Runnable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 text + m (Ljava/lang/Runnable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 messageText + p 4 okButton + p 5 shouldCloseOnEsc +c net/minecraft/client/gui/screens/BackupConfirmScreen fmx net/minecraft/class_405 + f Lnet/minecraft/client/gui/screens/BackupConfirmScreen$Listener; onProceed a field_46857 + f I id b field_32236 + f Ljava/lang/Runnable; onCancel c field_46858 + f Lnet/minecraft/network/chat/Component; description r field_2364 + f Z promptForCacheErase s field_19232 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message u field_2365 + f Lnet/minecraft/client/gui/components/Checkbox; eraseCache v field_19234 + m (Lnet/minecraft/client/gui/components/Button;)V method_19791 a method_19791 + m (Lnet/minecraft/client/gui/components/Button;)V method_19792 b method_19792 + m (Lnet/minecraft/client/gui/components/Button;)V method_19793 c method_19793 + m (Ljava/lang/Runnable;Lnet/minecraft/client/gui/screens/BackupConfirmScreen$Listener;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 onCancel + p 2 onProceed + p 3 title + p 4 description + p 5 promptForCacheErase +c net/minecraft/client/gui/screens/BackupConfirmScreen$Listener fmx$a net/minecraft/class_405$class_406 +c net/minecraft/client/gui/screens/BanNoticeScreens fmy net/minecraft/class_7588 + f Lnet/minecraft/network/chat/Component; NAME_BAN_TITLE a field_46009 + f Lnet/minecraft/network/chat/Component; TEMPORARY_BAN_TITLE b field_39720 + f Lnet/minecraft/network/chat/Component; PERMANENT_BAN_TITLE c field_39721 + f Lnet/minecraft/network/chat/Component; SKIN_BAN_TITLE d field_46010 + f Lnet/minecraft/network/chat/Component; SKIN_BAN_DESCRIPTION e field_46011 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBannedTitle a method_44651 + p 0 banDetails + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; create a method_44652 + p 0 callback + p 1 banDetails + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; createSkinBan a method_53554 + p 0 callback + m (Ljava/lang/String;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; createNameBan a method_53556 + p 0 username + p 1 callback + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53555 a method_53555 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBannedScreenText b method_44653 + p 0 banDetails + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53557 b method_53557 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanReasonText c method_44654 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanStatusText d method_44655 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanDurationText e method_44656 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Z isTemporaryBan f method_44657 + p 0 banDetails + m ()V + m ()V +c net/minecraft/client/gui/screens/ChatScreen fmz net/minecraft/class_408 + f D MOUSE_SCROLL_SPEED a field_32237 + f Lnet/minecraft/client/gui/components/EditBox; input b field_2382 + c Chat entry field + f Lnet/minecraft/network/chat/Component; USAGE_TEXT c field_33953 + f I TOOLTIP_MAX_WIDTH r field_39774 + f Ljava/lang/String; historyBuffer s field_2389 + f I historyPos u field_2387 + c keeps position of which chat message you will select when you press up, (does not increase for duplicated messages sent immediately after each other) + f Ljava/lang/String; initial v field_18973 + c is the text that appears when you press the chat key and the input box appears pre-filled + f Lnet/minecraft/client/gui/components/CommandSuggestions; commandSuggestions w field_21616 + m (I)V moveInHistory a method_2114 + c Input is relative and is applied directly to the sentHistoryCursor so -1 is the previous message, 1 is the next message from the current cursor position. + p 1 msgPos + m (Ljava/lang/String;)Ljava/lang/String; normalizeChatMessage a method_44054 + p 1 message + m (DD)Lnet/minecraft/network/chat/Style; getComponentStyleAt b method_44052 + p 1 mouseX + p 3 mouseY + m (Ljava/lang/String;)V onEdited b method_23945 + p 1 value + m (Ljava/lang/String;Z)V handleChatInput b method_44056 + p 1 message + p 2 addToRecentChat + m (Ljava/lang/String;)V setChatLine c method_2108 + p 1 chatLine + m (Ljava/lang/String;)V + p 1 initial + m ()V +c net/minecraft/client/gui/screens/ChatScreen$1 fmz$1 net/minecraft/class_408$1 + f Lnet/minecraft/client/gui/screens/ChatScreen; field_21631 d field_21631 + m (Lnet/minecraft/client/gui/screens/ChatScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/ConfirmLinkScreen fna net/minecraft/class_407 + f Lnet/minecraft/network/chat/Component; COPY_BUTTON_TEXT r field_2373 + f Lnet/minecraft/network/chat/Component; WARNING_TEXT s field_2372 + f Ljava/lang/String; url u field_2371 + f Z showWarning v field_2370 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;)V confirmLinkNow a method_49623 + p 0 lastScreen + p 1 url + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;Z)V confirmLinkNow a method_60866 + p 0 lastScreen + p 1 url + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;ZLnet/minecraft/client/gui/components/Button;)V method_49624 a method_49624 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;)V confirmLinkNow a method_61033 + p 0 lastScreen + p 1 uri + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;Z)V confirmLinkNow a method_61034 + p 0 lastScreen + p 1 uri + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;ZLnet/minecraft/client/gui/components/Button;)V method_61035 a method_61035 + m (Ljava/lang/String;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Z)V method_49622 a method_49622 + m (Ljava/net/URI;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Z)V method_61036 a method_61036 + m (ZLjava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; confirmMessage a method_44658 + p 0 trusted + p 1 extraInfo + m (Lnet/minecraft/client/gui/components/Button;)V method_19795 b method_19795 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_49625 + p 0 lastScreen + p 1 url + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;Z)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_60867 + p 0 lastScreen + p 1 url + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_61037 + p 0 lastScreen + p 1 uri + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;Z)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_61038 + p 0 lastScreen + p 1 uri + p 2 trusted + m (Lnet/minecraft/client/gui/components/Button;)V method_19796 c method_19796 + m (Z)Lnet/minecraft/network/chat/MutableComponent; confirmMessage c method_44659 + p 0 trusted + m (Lnet/minecraft/client/gui/components/Button;)V method_19797 d method_19797 + m ()V copyToClipboard l method_2100 + c Copies the link to the system clipboard. + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Ljava/lang/String;Z)V + p 1 callback + p 2 url + p 3 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Z)V + p 1 callback + p 2 title + p 3 url + p 4 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Z)V + p 1 callback + p 2 title + p 3 uri + p 4 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 message + p 4 uri + p 5 noButton + p 6 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 message + p 4 url + p 5 noButton + p 6 trusted + m ()V +c net/minecraft/client/gui/screens/ConfirmScreen fnb net/minecraft/class_410 + f Lnet/minecraft/network/chat/Component; yesButton a field_2402 + c The text shown for the first button in GuiYesNo + f Lnet/minecraft/network/chat/Component; noButton b field_2399 + c The text shown for the second button in GuiYesNo + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback c field_2403 + f I MARGIN r field_39722 + f Lnet/minecraft/network/chat/Component; message s field_2401 + f Lnet/minecraft/client/gui/components/MultiLineLabel; multilineMessage u field_2404 + f I delayTicker v field_2400 + f Ljava/util/List; exitButtons w field_33808 + m ()I messageTop C method_44661 + m ()I messageHeight D method_44662 + m (I)V addButtons a method_37051 + p 1 y + m (Lnet/minecraft/client/gui/components/Button;)V addExitButton a method_37052 + p 1 exitButton + m (I)V setDelay b method_2125 + c Sets the number of ticks to wait before enabling the buttons. + p 1 ticksUntilEnable + m (Lnet/minecraft/client/gui/components/Button;)V method_37053 b method_37053 + m (Lnet/minecraft/client/gui/components/Button;)V method_37054 c method_37054 + m ()I titleTop m method_44660 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 message + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 message + p 4 yesButton + p 5 noButton +c net/minecraft/client/gui/screens/ConnectScreen fnc net/minecraft/class_412 + f Lnet/minecraft/network/chat/Component; connectFailedTitle A field_44548 + f Lnet/minecraft/network/chat/Component; ABORT_CONNECTION a field_44970 + f Lnet/minecraft/network/chat/Component; UNKNOWN_HOST_MESSAGE b field_33736 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID c field_2408 + f Lorg/slf4j/Logger; LOGGER r field_2410 + f J NARRATION_DELAY_MS s field_32238 + f Lnet/minecraft/network/Connection; connection u field_2411 + f Lio/netty/channel/ChannelFuture; channelFuture v field_44971 + f Z aborted w field_2409 + f Lnet/minecraft/client/gui/screens/Screen; parent x field_2412 + f Lnet/minecraft/network/chat/Component; status y field_2413 + f J lastNarration z field_19097 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/multiplayer/TransferState;)V connect a method_2130 + p 1 minecraft + p 2 serverAddress + p 3 serverData + p 4 transferState + m (Lnet/minecraft/client/gui/components/Button;)V method_19800 a method_19800 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;ZLnet/minecraft/client/multiplayer/TransferState;)V startConnecting a method_36877 + p 0 parent + p 1 minecraft + p 2 serverAddress + p 3 serverData + p 4 isQuickPlay + p 5 transferState + m (Lnet/minecraft/network/chat/Component;)V updateStatus a method_2131 + p 1 status + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 connectFailedTitle + m ()V +c net/minecraft/client/gui/screens/ConnectScreen$1 fnc$1 net/minecraft/class_412$1 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$hostAndPort a field_33737 + f Lnet/minecraft/client/Minecraft; val$minecraft b field_33738 + f Lnet/minecraft/client/multiplayer/ServerData; val$server c field_40415 + f Lnet/minecraft/client/multiplayer/TransferState; val$transferState d field_48396 + f Lnet/minecraft/client/gui/screens/ConnectScreen; field_2416 e field_2416 + m (Lnet/minecraft/client/Minecraft;)V method_36878 a method_36878 + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V method_36879 a method_36879 + m (Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; convertPackStatus a method_55509 + p 0 packStatus + m (Lnet/minecraft/client/gui/screens/ConnectScreen;Ljava/lang/String;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/multiplayer/TransferState;)V +c net/minecraft/client/gui/screens/ConnectScreen$2 fnc$2 net/minecraft/class_412$2 + f [I $SwitchMap$net$minecraft$client$multiplayer$ServerData$ServerPackStatus a field_47591 + m ()V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen fnd net/minecraft/class_415 + f Lnet/minecraft/network/chat/Component; BIOME_SELECT_INFO a field_26535 + f I SPACING b field_49494 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49495 + f Lnet/minecraft/client/gui/screens/Screen; parent r field_24562 + f Ljava/util/function/Consumer; applySettings s field_24563 + f Lnet/minecraft/core/Registry; biomes u field_25888 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList; list v field_2441 + f Lnet/minecraft/core/Holder; biome w field_25040 + f Lnet/minecraft/client/gui/components/Button; doneButton x field_2438 + m ()Ljava/util/Optional; method_41840 C method_41840 + m (Lnet/minecraft/client/gui/components/Button;)V method_19801 a method_19801 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)Z method_29051 a method_29051 + m (Lnet/minecraft/client/gui/components/Button;)V method_28059 b method_28059 + m ()V updateButtonValidity m method_2151 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/function/Consumer;)V + p 1 parent + p 2 context + p 3 applySettings + m ()V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList fnd$a net/minecraft/class_415$class_4190 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen; field_18736 a field_18736 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)V setSelected a method_20089 + p 1 entry + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_40075 a method_40075 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry; method_28060 a method_28060 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)Ljava/lang/String; method_40076 b method_40076 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen;)V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry fnd$a$a net/minecraft/class_415$class_4190$class_4191 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList; field_18737 a field_18737 + f Lnet/minecraft/core/Holder$Reference; biome b field_24564 + f Lnet/minecraft/network/chat/Component; name c field_26536 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList;Lnet/minecraft/core/Holder$Reference;)V + p 2 biome +c net/minecraft/client/gui/screens/CreateFlatWorldScreen fne net/minecraft/class_413 + f Lnet/minecraft/network/chat/Component; columnHeight A field_2425 + c The text used to identify the height of a layer + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList; list B field_2424 + f Lnet/minecraft/client/gui/components/Button; deleteLayerButton C field_2421 + c The remove layer button + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; parent a field_2422 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE b field_45406 + f I SLOT_BG_SIZE c field_32240 + f I SLOT_STAT_HEIGHT r field_32241 + f I SLOT_BG_X s field_32242 + f I SLOT_BG_Y u field_32243 + f I SLOT_FG_X v field_32244 + f I SLOT_FG_Y w field_32245 + f Ljava/util/function/Consumer; applySettings x field_24565 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; generator y field_2419 + f Lnet/minecraft/network/chat/Component; columnType z field_2418 + c The text used to identify the material for a layer + m ()Z hasValidSelection C method_2147 + c Returns whether there is a valid layer selection + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V setConfig a method_29054 + p 1 generator + m (Lnet/minecraft/client/gui/components/Button;)V method_19804 a method_19804 + m (Lnet/minecraft/client/gui/components/Button;)V method_19805 b method_19805 + m (Lnet/minecraft/client/gui/components/Button;)V method_19806 c method_19806 + m (Lnet/minecraft/client/gui/components/Button;)V method_20093 d method_20093 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings l method_29055 + m ()V updateButtonValidity m method_2145 + c Would update whether the edit and remove buttons are enabled, but is currently disabled and always disables the buttons (which are invisible anyway). + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Ljava/util/function/Consumer;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + p 1 parent + p 2 applySettings + p 3 generator + m ()V +c net/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList fne$a net/minecraft/class_413$class_4192 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen; field_18738 a field_18738 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList$Entry;)V setSelected a method_20094 + p 1 entry + m ()V resetRows c method_19372 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen;)V +c net/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList$Entry fne$a$a net/minecraft/class_413$class_4192$class_4193 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList; field_18739 a field_18739 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; getDisplayItem a method_37055 + p 1 state + m (Lnet/minecraft/client/gui/GuiGraphics;II)V blitSlotBg a method_19373 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/ItemStack;)V blitSlot a method_19375 + p 1 guiGraphics + p 2 x + p 3 y + p 4 stack + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList;)V +c net/minecraft/client/gui/screens/CreditsAndAttributionScreen fnf net/minecraft/class_8219 + f I BUTTON_SPACING a field_43137 + f I BUTTON_WIDTH b field_43138 + f Lnet/minecraft/network/chat/Component; TITLE c field_43139 + f Lnet/minecraft/network/chat/Component; CREDITS_BUTTON r field_43140 + f Lnet/minecraft/network/chat/Component; ATTRIBUTION_BUTTON s field_43141 + f Lnet/minecraft/network/chat/Component; LICENSES_BUTTON u field_43142 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_43143 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout w field_43144 + m ()V method_49736 C method_49736 + m (Lnet/minecraft/client/gui/components/Button;)V method_49737 a method_49737 + m (Lnet/minecraft/client/gui/components/Button;)V method_49738 b method_49738 + m ()V openCreditsScreen m method_49739 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/DatapackLoadFailureScreen fng net/minecraft/class_5346 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message a field_25265 + f Ljava/lang/Runnable; cancelCallback b field_46859 + f Ljava/lang/Runnable; safeModeCallback c field_46860 + m (Lnet/minecraft/client/gui/components/Button;)V method_29345 a method_29345 + m (Lnet/minecraft/client/gui/components/Button;)V method_29346 b method_29346 + m (Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 cancelCallback + p 2 safeModeCallback +c net/minecraft/client/gui/screens/DeathScreen fnh net/minecraft/class_418 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE a field_45407 + f I delayTicker b field_2451 + c The integer value containing the number of ticks that have passed since the player's death + f Lnet/minecraft/network/chat/Component; causeOfDeath c field_2450 + f Z hardcore r field_18974 + f Lnet/minecraft/network/chat/Component; deathScore s field_26537 + f Ljava/util/List; exitButtons u field_33809 + f Lnet/minecraft/client/gui/components/Button; exitToTitleButton v field_41684 + m ()V exitToTitleScreen C method_22364 + m (I)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt a method_2164 + p 1 x + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderDeathBackground a method_59546 + p 0 guiGraphics + p 1 width + p 2 height + m (Lnet/minecraft/client/gui/components/Button;)V method_47938 a method_47938 + m (Lnet/minecraft/client/gui/components/Button;)V method_19809 b method_19809 + m (Z)V setButtonsActive c method_49299 + p 1 active + m (Z)V method_47939 f method_47939 + m ()V handleExitToTitleScreen m method_47940 + m (Lnet/minecraft/network/chat/Component;Z)V + p 1 causeOfDeath + p 2 hardcore + m ()V +c net/minecraft/client/gui/screens/DeathScreen$TitleConfirmScreen fnh$a net/minecraft/class_418$class_8183 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/DemoIntroScreen fni net/minecraft/class_417 + f Lnet/minecraft/resources/ResourceLocation; DEMO_BACKGROUND_LOCATION a field_2447 + f Lnet/minecraft/client/gui/components/MultiLineLabel; movementMessage b field_26538 + f Lnet/minecraft/client/gui/components/MultiLineLabel; durationMessage c field_26539 + m (Lnet/minecraft/client/gui/components/Button;)V method_19810 a method_19810 + m (Lnet/minecraft/client/gui/components/Button;)V method_19811 b method_19811 + m ()V + m ()V +c net/minecraft/client/gui/screens/DirectJoinServerScreen fnj net/minecraft/class_420 + f Lnet/minecraft/network/chat/Component; ENTER_IP_LABEL a field_26540 + f Lnet/minecraft/client/gui/components/Button; selectButton b field_2462 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_2460 + f Lnet/minecraft/client/gui/components/EditBox; ipEdit r field_2463 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback s field_19235 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen u field_21790 + m ()V updateSelectButtonStatus C method_2169 + m (Lnet/minecraft/client/gui/components/Button;)V method_19812 a method_19812 + m (Ljava/lang/String;)V method_19376 a method_19376 + m (Lnet/minecraft/client/gui/components/Button;)V method_19813 b method_19813 + m ()V onSelect m method_2167 + m (Lnet/minecraft/client/gui/screens/Screen;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/client/multiplayer/ServerData;)V + p 1 lastScreen + p 2 callback + p 3 serverData + m ()V +c net/minecraft/client/gui/screens/DisconnectedScreen fnk net/minecraft/class_419 + f Lnet/minecraft/network/chat/Component; TO_SERVER_LIST a field_44549 + f Lnet/minecraft/network/chat/Component; TO_TITLE b field_44550 + f Lnet/minecraft/network/chat/Component; REPORT_TO_SERVER_TITLE c field_52129 + f Lnet/minecraft/network/chat/Component; OPEN_REPORT_DIR_TITLE r field_52130 + f Lnet/minecraft/client/gui/screens/Screen; parent s field_2456 + f Lnet/minecraft/network/DisconnectionDetails; details u field_52131 + f Lnet/minecraft/network/chat/Component; buttonText v field_44551 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout w field_44552 + m (Lnet/minecraft/client/gui/components/Button;)V method_51256 a method_51256 + m (Ljava/net/URI;)V method_60868 a method_60868 + m (Ljava/nio/file/Path;)V method_60870 a method_60870 + m (Ljava/nio/file/Path;Lnet/minecraft/client/gui/components/Button;)V method_60869 a method_60869 + m (Lnet/minecraft/client/gui/components/Button;)V method_19814 b method_19814 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason + p 4 buttonText + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/DisconnectionDetails;)V + p 1 parent + p 2 title + p 3 details + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/DisconnectionDetails;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 details + p 4 buttonText + m ()V +c net/minecraft/client/gui/screens/EditServerScreen fnl net/minecraft/class_422 + f Lnet/minecraft/network/chat/Component; NAME_LABEL a field_26541 + f Lnet/minecraft/network/chat/Component; IP_LABEL b field_26542 + f Lnet/minecraft/client/gui/components/Button; addButton c field_2472 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback r field_19236 + f Lnet/minecraft/client/multiplayer/ServerData; serverData s field_2469 + f Lnet/minecraft/client/gui/components/EditBox; ipEdit u field_2474 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit v field_2471 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen w field_21791 + m ()V updateAddButtonStatus C method_36223 + m (Lnet/minecraft/client/gui/components/Button;)V method_36218 a method_36218 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)V method_36219 a method_36219 + m (Ljava/lang/String;)V method_36221 a method_36221 + m (Lnet/minecraft/client/gui/components/Button;)V method_36220 b method_36220 + m (Ljava/lang/String;)V method_36222 b method_36222 + m ()V onAdd m method_2172 + m (Lnet/minecraft/client/gui/screens/Screen;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/client/multiplayer/ServerData;)V + p 1 lastScreen + p 2 callback + p 3 serverData + m ()V +c net/minecraft/client/gui/screens/ErrorScreen fnm net/minecraft/class_421 + f Lnet/minecraft/network/chat/Component; message a field_2467 + m (Lnet/minecraft/client/gui/components/Button;)V method_19818 a method_19818 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 message +c net/minecraft/client/gui/screens/FaviconTexture fnn net/minecraft/class_8573 + f Lnet/minecraft/resources/ResourceLocation; MISSING_LOCATION a field_44933 + f I WIDTH b field_44934 + f I HEIGHT c field_44935 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager d field_44936 + f Lnet/minecraft/resources/ResourceLocation; textureLocation e field_44937 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture f field_44938 + f Z closed g field_44939 + m ()V clear a method_52198 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V upload a method_52199 + p 1 image + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/lang/String;)Lnet/minecraft/client/gui/screens/FaviconTexture; forWorld a method_52200 + p 0 textureManager + p 1 worldName + m ()Lnet/minecraft/resources/ResourceLocation; textureLocation b method_52201 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/lang/String;)Lnet/minecraft/client/gui/screens/FaviconTexture; forServer b method_52202 + p 0 textureManager + p 1 worldName + m ()V checkOpen c method_52203 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 textureLocation + m ()V +c net/minecraft/client/gui/screens/GenericMessageScreen fno net/minecraft/class_424 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; textWidget a field_49496 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/GenericWaitingScreen fnp net/minecraft/class_7534 + f I TITLE_Y a field_39541 + f I MESSAGE_Y b field_39542 + f I MESSAGE_MAX_WIDTH c field_39543 + f Lnet/minecraft/network/chat/Component; messageText r field_39745 + f Lnet/minecraft/network/chat/Component; buttonLabel s field_39544 + f Ljava/lang/Runnable; buttonCallback u field_39545 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message v field_39546 + f Lnet/minecraft/client/gui/components/Button; button w field_39547 + f I disableButtonTicks x field_39746 + m (Lnet/minecraft/client/gui/components/Button;)V method_44689 a method_44689 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/GenericWaitingScreen; createWaiting a method_44690 + p 0 title + p 1 buttonLabel + p 2 buttonCallback + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/GenericWaitingScreen; createCompleted a method_44691 + p 0 title + p 1 messageText + p 2 buttonLabel + p 3 buttonCallback + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;I)V + p 1 title + p 2 messageText + p 3 buttonLabel + p 4 buttonCallback + p 5 disableButtonTicks +c net/minecraft/client/gui/screens/InBedChatScreen fnq net/minecraft/class_423 + f Lnet/minecraft/client/gui/components/Button; leaveBedButton c field_41710 + m ()V sendWakeUp C method_2180 + m (Lnet/minecraft/client/gui/components/Button;)V method_19819 a method_19819 + m ()V onPlayerWokeUp m method_38530 + m ()V +c net/minecraft/client/gui/screens/LevelLoadingScreen fnr net/minecraft/class_3928 + f J NARRATION_DELAY_MS a field_32246 + f Lnet/minecraft/server/level/progress/StoringChunkProgressListener; progressListener b field_17406 + f J lastNarration c field_19101 + f Z done r field_33810 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; COLORS s field_17407 + m (ILnet/minecraft/client/gui/GuiGraphics;IIIIILnet/minecraft/server/level/progress/StoringChunkProgressListener;III)V method_51767 a method_51767 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/server/level/progress/StoringChunkProgressListener;IIII)V renderChunks a method_17538 + p 0 guiGraphics + p 1 progressListener + p 2 x + p 3 y + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_17537 a method_17537 + m ()Lnet/minecraft/network/chat/Component; getFormattedProgress m method_37057 + m (Lnet/minecraft/server/level/progress/StoringChunkProgressListener;)V + p 1 progressListener + m ()V +c net/minecraft/client/gui/screens/LoadingDotsText fns net/minecraft/class_7413 + f [Ljava/lang/String; FRAMES a field_38992 + f J INTERVAL_MS b field_38993 + m (J)Ljava/lang/String; get a method_43449 + p 0 millis + m ()V + m ()V +c net/minecraft/client/gui/screens/LoadingOverlay fnt net/minecraft/class_425 + f J FADE_OUT_TIME a field_32247 + f J FADE_IN_TIME b field_32248 + f Lnet/minecraft/resources/ResourceLocation; MOJANG_STUDIOS_LOGO_LOCATION c field_2483 + f I LOGO_BACKGROUND_COLOR d field_32249 + f I LOGO_BACKGROUND_COLOR_DARK e field_32250 + f Ljava/util/function/IntSupplier; BRAND_BACKGROUND f field_25041 + f I LOGO_SCALE g field_32251 + f F LOGO_QUARTER_FLOAT h field_32252 + f I LOGO_QUARTER i field_32253 + f I LOGO_HALF j field_32254 + f F LOGO_OVERLAP k field_32255 + f F SMOOTHING l field_32256 + f Lnet/minecraft/client/Minecraft; minecraft m field_18217 + f Lnet/minecraft/server/packs/resources/ReloadInstance; reload n field_17767 + f Ljava/util/function/Consumer; onFinish o field_18218 + f Z fadeIn p field_18219 + f F currentProgress q field_17770 + f J fadeOutStart r field_17771 + f J fadeInStart s field_18220 + m (II)I replaceAlpha a method_35732 + p 0 color + p 1 alpha + m (Lnet/minecraft/client/Minecraft;)V registerTextures a method_18819 + p 0 minecraft + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIF)V drawProgressBar a method_18103 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + p 6 partialTick + m ()I method_35733 b method_35733 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/server/packs/resources/ReloadInstance;Ljava/util/function/Consumer;Z)V + p 1 minecraft + p 2 reload + p 3 onFinish + p 4 fadeIn + m ()V +c net/minecraft/client/gui/screens/LoadingOverlay$LogoTexture fnt$a net/minecraft/class_425$class_4070 + m ()V +c net/minecraft/client/gui/screens/MenuScreens fnu net/minecraft/class_3929 + f Lorg/slf4j/Logger; LOGGER a field_17408 + f Ljava/util/Map; SCREENS b field_17409 + m ()Z selfTest a method_17539 + m (Lnet/minecraft/world/inventory/MenuType;)Lnet/minecraft/client/gui/screens/MenuScreens$ScreenConstructor; getConstructor a method_17540 + p 0 type + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/Minecraft;ILnet/minecraft/network/chat/Component;)V create a method_17541 + p 0 type + p 1 mc + p 2 windowId + p 3 title + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/gui/screens/MenuScreens$ScreenConstructor;)V register a method_17542 + p 0 type + p 1 factory + m ()V + m ()V +c net/minecraft/client/gui/screens/MenuScreens$ScreenConstructor fnu$a net/minecraft/class_3929$class_3930 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/Minecraft;I)V fromPacket a method_17543 + p 1 title + p 2 type + p 3 mc + p 4 windowId +c net/minecraft/client/gui/screens/NoticeWithLinkScreen fnv net/minecraft/class_8669 + f Lnet/minecraft/network/chat/Component; SYMLINK_WORLD_TITLE a field_45408 + f Lnet/minecraft/network/chat/Component; SYMLINK_WORLD_MESSAGE_TEXT b field_45409 + f Lnet/minecraft/network/chat/Component; SYMLINK_PACK_TITLE c field_45410 + f Lnet/minecraft/network/chat/Component; SYMLINK_PACK_MESSAGE_TEXT r field_45411 + f Lnet/minecraft/network/chat/Component; message s field_45412 + f Ljava/net/URI; uri u field_45413 + f Ljava/lang/Runnable; onClose v field_46861 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout w field_45415 + m (Lnet/minecraft/client/gui/components/Button;)V method_52747 a method_52747 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; createWorldSymlinkWarningScreen a method_52748 + p 0 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_52749 b method_52749 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; createPackSymlinkWarningScreen b method_52750 + p 0 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_52751 c method_52751 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Ljava/lang/Runnable;)V + p 1 title + p 2 message + p 3 uri + p 4 onClose + m ()V +c net/minecraft/client/gui/screens/OutOfMemoryScreen fnw net/minecraft/class_428 + f Lnet/minecraft/network/chat/Component; TITLE a field_49504 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_49505 + f I MESSAGE_WIDTH c field_49506 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout r field_49507 + m (Lnet/minecraft/client/gui/components/Button;)V method_19834 a method_19834 + m (Lnet/minecraft/client/gui/components/Button;)V method_19835 b method_19835 + m ()V + m ()V +c net/minecraft/client/gui/screens/Overlay fnx net/minecraft/class_4071 + m ()Z isPauseScreen a method_18640 + m ()V +c net/minecraft/client/gui/screens/PauseScreen fny net/minecraft/class_433 + f Lnet/minecraft/network/chat/Component; FEEDBACK_SUBSCREEN A field_52133 + f Lnet/minecraft/network/chat/Component; SERVER_LINKS B field_52132 + f Lnet/minecraft/network/chat/Component; OPTIONS C field_41626 + f Lnet/minecraft/network/chat/Component; SHARE_TO_LAN D field_41627 + f Lnet/minecraft/network/chat/Component; PLAYER_REPORTING E field_41628 + f Lnet/minecraft/network/chat/Component; RETURN_TO_MENU F field_41611 + f Lnet/minecraft/network/chat/Component; SAVING_LEVEL G field_41613 + f Lnet/minecraft/network/chat/Component; GAME H field_41614 + f Lnet/minecraft/network/chat/Component; PAUSED I field_41615 + f Z showPauseMenu J field_19319 + f Lnet/minecraft/client/gui/components/Button; disconnectButton K field_40792 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE a field_45416 + f I COLUMNS b field_41616 + f I MENU_PADDING_TOP c field_41617 + f I BUTTON_PADDING r field_41618 + f I BUTTON_WIDTH_FULL s field_41619 + f I BUTTON_WIDTH_HALF u field_41620 + f Lnet/minecraft/network/chat/Component; RETURN_TO_GAME v field_41621 + f Lnet/minecraft/network/chat/Component; ADVANCEMENTS w field_41622 + f Lnet/minecraft/network/chat/Component; STATS x field_41623 + f Lnet/minecraft/network/chat/Component; SEND_FEEDBACK y field_41624 + f Lnet/minecraft/network/chat/Component; REPORT_BUGS z field_41625 + m ()V createPauseMenu C method_20543 + m ()V onDisconnect D method_47632 + m ()Lnet/minecraft/client/gui/screens/Screen; method_57733 E method_57733 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47902 F method_47902 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47903 G method_47903 + m ()Lnet/minecraft/client/gui/screens/Screen; method_60871 J method_60871 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47904 K method_47904 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47896 L method_47896 + m (Lnet/minecraft/server/ServerLinks;)Lnet/minecraft/client/gui/screens/Screen; method_60872 a method_60872 + m (Lnet/minecraft/client/gui/components/Button;)V method_19836 a method_19836 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper;)V addFeedbackButtons a method_60873 + p 0 lastScreen + p 1 rowHelper + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/net/URI;)Lnet/minecraft/client/gui/components/Button; openLinkButton a method_47899 + p 0 lastScreen + p 1 buttonText + p 2 uri + m (Ljava/util/function/Supplier;Lnet/minecraft/client/gui/components/Button;)V method_47898 a method_47898 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/client/gui/components/Button; openScreenButton a method_47900 + p 1 message + p 2 screenSupplier + m (Lnet/minecraft/client/gui/components/Button;)V method_19845 b method_19845 + m ()Z showsPauseMenu m method_53558 + m (Z)V + p 1 showPauseMenu + m ()V +c net/minecraft/client/gui/screens/PauseScreen$FeedbackSubScreen fny$a net/minecraft/class_433$class_9804 + f Lnet/minecraft/client/gui/screens/Screen; parent a field_52134 + f Lnet/minecraft/network/chat/Component; TITLE b field_52135 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_52136 + m (Lnet/minecraft/client/gui/components/Button;)V method_60874 a method_60874 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 parent + m ()V +c net/minecraft/client/gui/screens/PresetFlatWorldScreen fnz net/minecraft/class_430 + f Lnet/minecraft/network/chat/Component; shareText A field_2520 + f Lnet/minecraft/network/chat/Component; listText B field_2524 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList; list C field_2521 + f Lnet/minecraft/client/gui/components/Button; selectButton D field_2525 + f Lnet/minecraft/client/gui/components/EditBox; export E field_2523 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings F field_25044 + f Lnet/minecraft/network/chat/Component; UNKNOWN_PRESET a field_37908 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE b field_45417 + f Lorg/slf4j/Logger; LOGGER c field_25043 + f I SLOT_BG_SIZE r field_32264 + f I SLOT_STAT_HEIGHT s field_32265 + f I SLOT_BG_X u field_32266 + f I SLOT_BG_Y v field_32267 + f I SLOT_FG_X w field_32268 + f I SLOT_FG_Y x field_32269 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_BIOME y field_27985 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen; parent z field_2519 + c The parent GUI + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_29061 a method_29061 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/String; save a method_29062 + p 0 levelGeneratorSettings + m (Lnet/minecraft/client/gui/components/Button;)V method_19846 a method_19846 + m (Ljava/lang/String;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder$Reference; method_46741 a method_46741 + m (Lnet/minecraft/core/HolderGetter;Ljava/lang/String;)Ljava/util/List; getLayersInfoFromString a method_29058 + p 0 blockGetter + p 1 layerInfo + m (Lnet/minecraft/core/HolderGetter;Ljava/lang/String;I)Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo; getLayerInfoFromString a method_29059 + p 0 blockGetter + p 1 layerInfo + p 2 currentHeight + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/client/gui/components/Button;)V method_19847 a method_19847 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; fromString a method_29060 + p 0 blockGetter + p 1 biomeGetter + p 2 structureSetGetter + p 3 placedFeatureGetter + p 4 settings + p 5 layerGenerationSettings + m (Z)V updateButtonValidity c method_20102 + p 1 valid + m ()Ljava/lang/IllegalStateException; method_40208 m method_40208 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen;)V + p 1 parent + m ()V +c net/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList fnz$a net/minecraft/class_430$class_4196 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen; field_18747 a field_18747 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_47409 a method_47409 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/level/block/Block;)Z method_47410 a method_47410 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)Lnet/minecraft/world/level/block/Block; method_47411 a method_47411 + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList$Entry;)V setSelected a method_20103 + p 1 entry + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 2 registryAccess + p 3 flags +c net/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList$Entry fnz$a$a net/minecraft/class_430$class_4196$class_432 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList; field_2532 a field_2532 + f Lnet/minecraft/resources/ResourceLocation; STATS_ICON_LOCATION b field_44668 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset; preset c field_33812 + f Lnet/minecraft/network/chat/Component; name d field_37909 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_41842 a method_41842 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V blitSlotBg a method_2198 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/Item;)V blitSlot a method_2200 + p 1 guiGraphics + p 2 x + p 3 y + p 4 item + m ()V select b method_19389 + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList;Lnet/minecraft/core/Holder;)V + p 2 presetHolder + m ()V +c net/minecraft/client/gui/screens/ProgressScreen foa net/minecraft/class_435 + f Lnet/minecraft/network/chat/Component; header a field_2541 + f Lnet/minecraft/network/chat/Component; stage b field_2544 + f I progress c field_2542 + f Z stop r field_2543 + f Z clearScreenAfterStop s field_33625 + m (Z)V + p 1 clearScreenAfterStop +c net/minecraft/client/gui/screens/ReceivingLevelScreen fob net/minecraft/class_434 + f Lnet/minecraft/network/chat/Component; DOWNLOADING_TERRAIN_TEXT a field_26544 + f J CHUNK_LOADING_START_WAIT_LIMIT_MS b field_36365 + f J createdAt c field_36368 + f Ljava/util/function/BooleanSupplier; levelReceived r field_46575 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; reason s field_51485 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; cachedNetherPortalSprite u field_51486 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getNetherPortalSprite m method_59838 + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V + p 1 levelReceived + p 2 reason + m ()V +c net/minecraft/client/gui/screens/ReceivingLevelScreen$Reason fob$a net/minecraft/class_434$class_9678 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; NETHER_PORTAL a field_51487 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; END_PORTAL b field_51488 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; OTHER c field_51489 + f [Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; $VALUES d field_51490 + m ()[Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; $values a method_59839 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/screens/RecoverWorldDataScreen foc net/minecraft/class_8897 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback A field_46873 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout B field_46874 + f Lnet/minecraft/network/chat/Component; message C field_46875 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; messageWidget D field_46876 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; issuesWidget E field_46877 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; storageAccess F field_46878 + f Lorg/slf4j/Logger; LOGGER a field_46862 + f I SCREEN_SIDE_MARGIN b field_46863 + f Lnet/minecraft/network/chat/Component; TITLE c field_46864 + f Lnet/minecraft/network/chat/Component; BUGTRACKER_BUTTON r field_46865 + f Lnet/minecraft/network/chat/Component; RESTORE_BUTTON s field_46866 + f Lnet/minecraft/network/chat/Component; NO_FALLBACK_TOOLTIP u field_46867 + f Lnet/minecraft/network/chat/Component; DONE_TITLE v field_46868 + f Lnet/minecraft/network/chat/Component; DONE_SUCCESS w field_46869 + f Lnet/minecraft/network/chat/Component; DONE_FAILED x field_46870 + f Lnet/minecraft/network/chat/Component; NO_ISSUES y field_46871 + f Lnet/minecraft/network/chat/Component; MISSING_FILE z field_46872 + m ()V method_54582 C method_54582 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)Ljava/lang/Exception; collectIssue a method_54583 + p 1 level + p 2 useFallback + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;ZLjava/lang/Exception;)Lnet/minecraft/network/chat/Component; buildInfo a method_54584 + p 1 level + p 2 useFallback + p 3 exception + m (Lnet/minecraft/client/Minecraft;)V attemptRestore a method_54585 + p 1 minecraft + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/Button;)V method_54586 a method_54586 + m (Lnet/minecraft/client/gui/components/Button;)V method_54587 a method_54587 + m ()V method_54588 m method_54588 + m (Lnet/minecraft/client/Minecraft;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)V + p 1 minecraft + p 2 callback + p 3 storageAccess + m ()V +c net/minecraft/client/gui/screens/Screen fod net/minecraft/class_437 + f J NARRATE_DELAY_KEYBOARD_ACTION A field_33821 + f Lnet/minecraft/client/gui/narration/ScreenNarrationCollector; narrationState B field_33822 + f J narrationSuppressTime C field_33823 + f J nextNarrationTime D field_33824 + f Lnet/minecraft/client/gui/narration/NarratableEntry; lastNarratable E field_33813 + f Lnet/minecraft/client/gui/screens/Screen$DeferredTooltipRendering; deferredTooltipRendering F field_41685 + f Lorg/slf4j/Logger; LOGGER a field_22782 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION b field_33814 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_MENU_BACKGROUND c field_49894 + f Lnet/minecraft/client/renderer/CubeMap; CUBE_MAP d field_49508 + f Lnet/minecraft/client/renderer/PanoramaRenderer; PANORAMA e field_49509 + f Lnet/minecraft/resources/ResourceLocation; MENU_BACKGROUND f field_49511 + f Lnet/minecraft/resources/ResourceLocation; HEADER_SEPARATOR g field_49895 + f Lnet/minecraft/resources/ResourceLocation; FOOTER_SEPARATOR h field_49896 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_HEADER_SEPARATOR i field_49897 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_FOOTER_SEPARATOR j field_49898 + f Lnet/minecraft/network/chat/Component; title k field_22785 + f Lnet/minecraft/client/Minecraft; minecraft l field_22787 + f I width m field_22789 + f I height n field_22790 + f Lnet/minecraft/client/gui/Font; font o field_22793 + f Lnet/minecraft/client/gui/components/CycleButton; narratorButton p field_52252 + f Ljava/util/concurrent/Executor; screenExecutor q field_44944 + f Ljava/util/List; children r field_22786 + f Ljava/util/List; narratables s field_33815 + f Z initialized u field_42156 + f Ljava/util/List; renderables v field_33816 + f J NARRATE_SUPPRESS_AFTER_INIT_TIME w field_33817 + f J NARRATE_DELAY_NARRATOR_ENABLED x field_33818 + f J NARRATE_DELAY_MOUSE_MOVE y field_33819 + f J NARRATE_DELAY_MOUSE_ACTION z field_33820 + m ()V clearTooltipForNextRenderPass A method_59840 + m ()Lnet/minecraft/sounds/Music; getBackgroundMusic B method_50024 + m ()Z shouldRunNarration C method_37073 + m (F)V renderBlurredBackground a method_57734 + p 1 partialTick + m (J)V suppressNarration a method_37058 + p 1 time + m (JZ)V scheduleNarration a method_37059 + p 1 delay + p 3 stopSuppression + m (Lnet/minecraft/client/Minecraft;II)V resize a method_25410 + p 1 minecraft + p 2 width + p 3 height + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getTooltipFromItem a method_25408 + p 0 minecraft + p 1 item + m (Lnet/minecraft/client/gui/ComponentPath;)V changeFocus a method_48263 + p 1 path + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderMenuBackground a method_57735 + p 1 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderPanorama a method_57728 + p 1 guiGraphics + p 2 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderMenuBackground a method_57736 + p 1 guiGraphics + p 2 x + p 3 y + p 4 width + p 5 height + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIFFII)V renderMenuBackgroundTexture a method_57737 + p 0 guiGraphics + p 1 texture + p 2 x + p 3 y + p 4 uOffset + p 5 vOffset + p 6 width + p 7 height + m (Lnet/minecraft/client/gui/components/Renderable;)Lnet/minecraft/client/gui/components/Renderable; addRenderableOnly a method_37060 + p 1 renderable + m (Lnet/minecraft/client/gui/components/Tooltip;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;Z)V setTooltipForNextRenderPass a method_47412 + p 1 tooltip + p 2 positioner + p 3 override + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarrationState a method_37062 + p 1 output + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation; createArrowEvent a method_48264 + p 1 direction + m (Ljava/lang/Runnable;)V method_52221 a method_52221 + m (Ljava/lang/Runnable;Ljava/lang/String;Ljava/lang/String;)V wrapScreenError a method_25412 + p 0 action + p 1 errorDesc + p 2 screenName + m (Ljava/lang/String;)Ljava/lang/String; method_25413 a method_25413 + m (Ljava/lang/String;CI)Z isValidCharacterForName a method_25414 + p 1 text + p 2 charTyped + p 3 cursorPos + m (Ljava/net/URI;Z)V method_61039 a method_61039 + m (Ljava/util/List;)V onFilesDrop a method_29638 + p 1 packs + m (Ljava/util/List;Lnet/minecraft/client/gui/narration/NarratableEntry;)Lnet/minecraft/client/gui/screens/Screen$NarratableSearchResult; findNarratableWidget a method_37061 + p 0 entries + p 1 target + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;Z)V setTooltipForNextRenderPass a method_47942 + p 1 tooltip + p 2 positioner + p 3 override + m (Lnet/minecraft/network/chat/Style;)Z handleComponentClicked a method_25430 + p 1 style + m ()V setInitialFocus aI_ method_56131 + m ()Z shouldCloseOnEsc aJ_ method_25422 + m ()V added aL_ method_49589 + m ()Z shouldNarrateNavigation aS_ method_48262 + m ()V init aT_ method_25426 + m (Ljava/lang/String;Z)V insertText a_ method_25415 + p 1 text + p 2 overwrite + m (Lnet/minecraft/client/Minecraft;II)V init b method_25423 + p 1 minecraft + p 2 width + p 3 height + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderTransparentBackground b method_52752 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderBackground b method_25420 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V setInitialFocus b method_48265 + p 1 listener + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarratedWidget b method_37056 + p 1 narrationElementOutput + m (Ljava/lang/Runnable;)V method_52222 b method_52222 + m (Ljava/util/List;)V setTooltipForNextRenderPass b method_47414 + p 1 tooltip + m ()V repositionElements c method_48640 + m (I)Z isCut c method_25436 + p 0 keyCode + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderWithTooltip c method_47413 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener; addRenderableWidget c method_37063 + p 1 widget + m (Z)V runNarration c method_37065 + p 1 onlyNarrateNew + m ()V onClose d method_25419 + m (I)Z isPaste d method_25437 + p 0 keyCode + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener; addWidget d method_25429 + p 1 listener + m (Lnet/minecraft/network/chat/Component;)V setTooltipForNextRenderPass d method_47415 + p 1 tooltip + m (Z)V triggerImmediateNarration d method_37064 + p 1 onlyNarrateNew + m ()V tick e method_25393 + m (I)Z isCopy e method_25438 + p 0 keyCode + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V removeWidget e method_37066 + p 1 listener + m (Z)V updateNarratorStatus e method_61040 + p 1 narratorEnabled + m (I)Z isSelectAll f method_25439 + p 0 keyCode + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage i method_25435 + m ()V removed j method_25432 + m ()Z isPauseScreen k method_25421 + m ()Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation; createTabEvent m method_48266 + m ()Lnet/minecraft/network/chat/Component; getTitle n method_25440 + m ()V clearFocus o method_48267 + m ()V clearWidgets p method_37067 + m ()V rebuildWidgets q method_41843 + m ()Z hasControlDown r method_25441 + m ()Z hasShiftDown s method_25442 + m ()Z hasAltDown t method_25443 + m ()V afterMouseMove u method_37068 + m ()V afterMouseAction v method_37069 + m ()V afterKeyboardAction x method_37070 + m ()V handleDelayedNarration y method_37071 + m ()Lnet/minecraft/network/chat/Component; getUsageNarration z method_53870 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title + m ()V +c net/minecraft/client/gui/screens/Screen$DeferredTooltipRendering fod$a net/minecraft/class_437$class_7998 + f Ljava/util/List; tooltip a comp_1183 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; positioner b comp_1184 + m ()Ljava/util/List; tooltip a comp_1183 + m ()Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; positioner b comp_1184 + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;)V +c net/minecraft/client/gui/screens/Screen$NarratableSearchResult fod$b net/minecraft/class_437$class_6390 + f Lnet/minecraft/client/gui/narration/NarratableEntry; entry a field_33825 + f I index b field_33826 + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; priority c field_33827 + m (Lnet/minecraft/client/gui/narration/NarratableEntry;ILnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority;)V + p 1 entry + p 2 index + p 3 priority +c net/minecraft/client/gui/screens/ShareToLanScreen foe net/minecraft/class_436 + f Z commands A field_2546 + f I port B field_41110 + f Lnet/minecraft/client/gui/components/EditBox; portEdit C field_41111 + f I PORT_LOWER_BOUND a field_41629 + f I PORT_HIGHER_BOUND b field_41630 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS_LABEL c field_25889 + f Lnet/minecraft/network/chat/Component; GAME_MODE_LABEL r field_25890 + f Lnet/minecraft/network/chat/Component; INFO_TEXT s field_26545 + f Lnet/minecraft/network/chat/Component; PORT_INFO_TEXT u field_41108 + f Lnet/minecraft/network/chat/Component; PORT_UNAVAILABLE v field_41106 + f Lnet/minecraft/network/chat/Component; INVALID_PORT w field_41109 + f I INVALID_PORT_COLOR x field_41107 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen y field_2548 + f Lnet/minecraft/world/level/GameType; gameMode z field_2545 + m (Lnet/minecraft/client/gui/components/Button;)V method_19850 a method_19850 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_47416 a method_47416 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/GameType;)V method_32638 a method_32638 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32639 a method_32639 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/client/gui/components/Button;)V method_19851 a method_19851 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; tryParsePort a method_47417 + p 1 port + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/TitleScreen fof net/minecraft/class_442 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer A field_41847 + f Lorg/slf4j/Logger; LOGGER a field_23775 + f Lnet/minecraft/network/chat/Component; TITLE b field_47850 + f Lnet/minecraft/network/chat/Component; COPYRIGHT_TEXT c field_32271 + f Ljava/lang/String; DEMO_LEVEL_ID r field_32272 + f F FADE_IN_TIME s field_49900 + f Lnet/minecraft/client/gui/components/SplashRenderer; splash u field_2586 + f Lnet/minecraft/client/gui/components/Button; resetDemoButton v field_2590 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; realmsNotificationsScreen w field_2592 + c A screen generated by realms for notifications drawn in addition to the main menu (buttons and such from both are drawn at the same time). May be null. + f F panoramaFade x field_49514 + f Z fading y field_18222 + f J fadeInStart z field_17772 + m ()Lnet/minecraft/network/chat/Component; getMultiplayerDisabledReason C method_44692 + m ()Z checkDemoWorldPresence D method_31129 + m ()V method_54589 E method_54589 + m ()Lnet/minecraft/client/gui/components/LogoRenderer; method_48268 F method_48268 + m (II)V createNormalMenuOptions a method_2249 + c Adds Singleplayer and Multiplayer buttons on Main Menu for players who have bought the game. + p 1 y + p 2 rowHeight + m (Lnet/minecraft/client/gui/components/Button;)V method_19857 a method_19857 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preloadResources a method_18105 + p 0 texMngr + p 1 backgroundExecutor + m (ZLnet/minecraft/client/gui/components/Button;)V method_19858 a method_19858 + m (F)V fadeWidgets b method_59752 + p 1 alpha + m (II)V createDemoMenuOptions b method_2251 + c Adds Demo buttons on Main Menu for players who are playing Demo. + p 1 y + p 2 rowHeight + m (Lnet/minecraft/client/gui/components/Button;)V method_55814 b method_55814 + m (Lnet/minecraft/client/gui/components/Button;)V method_19860 c method_19860 + m (Z)V confirmDemo c method_20375 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19861 d method_19861 + m (Lnet/minecraft/client/gui/components/Button;)V method_41198 e method_41198 + m (Lnet/minecraft/client/gui/components/Button;)V method_20109 f method_20109 + m (Lnet/minecraft/client/gui/components/Button;)V method_19862 g method_19862 + m (Lnet/minecraft/client/gui/components/Button;)V method_19863 h method_19863 + m (Lnet/minecraft/client/gui/components/Button;)V method_19864 i method_19864 + m ()Z realmsNotificationsEnabled m method_2253 + c Is there currently a realms notification screen, and are realms notifications enabled? + m ()V + m (Z)V + p 1 fading + m (ZLnet/minecraft/client/gui/components/LogoRenderer;)V + p 1 fading + p 2 logoRenderer + m ()V +c net/minecraft/client/gui/screens/WinScreen fog net/minecraft/class_445 + f Ljava/lang/Runnable; onFinished A field_2630 + f F scroll B field_2628 + f Ljava/util/List; lines C field_2634 + f Lit/unimi/dsi/fastutil/ints/IntSet; centeredLines D field_24261 + f I totalScrollLength E field_2629 + f Z speedupActive F field_34010 + f Lit/unimi/dsi/fastutil/ints/IntSet; speedupModifiers G field_34011 + f F scrollSpeed H field_2635 + f F unmodifiedScrollSpeed I field_33954 + f I direction J field_44778 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer K field_41848 + f Lorg/slf4j/Logger; LOGGER a field_2632 + f Lnet/minecraft/resources/ResourceLocation; VIGNETTE_LOCATION b field_2633 + f Lnet/minecraft/network/chat/Component; SECTION_HEADING c field_33955 + f Ljava/lang/String; NAME_PREFIX r field_32273 + f Ljava/lang/String; OBFUSCATE_TOKEN s field_24260 + f F SPEEDUP_FACTOR u field_33957 + f F SPEEDUP_FACTOR_FAST v field_34012 + f Lnet/minecraft/resources/ResourceLocation; END_POEM_LOCATION w field_52137 + f Lnet/minecraft/resources/ResourceLocation; CREDITS_LOCATION x field_52138 + f Lnet/minecraft/resources/ResourceLocation; POSTCREDITS_LOCATION y field_52139 + f Z poem z field_2627 + m ()V respawn C method_2257 + m ()V addEmptyLine D method_37306 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/screens/WinScreen$CreditsReader;)V wrapCreditsIO a method_39775 + p 1 location + p 2 reader + m (Ljava/io/Reader;)V addPoemFile a method_39774 + p 1 reader + m (Ljava/lang/String;)V addPoemLines a method_37305 + p 1 text + m (Lnet/minecraft/network/chat/Component;Z)V addCreditsLine a method_37304 + p 1 creditsLine + p 2 centered + m (Ljava/io/Reader;)V addCreditsFile b method_39776 + p 1 reader + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderVignette c method_57738 + p 1 guiGraphics + m ()F calculateScrollSpeed m method_37369 + m (ZLjava/lang/Runnable;)V + p 1 poem + p 2 onFinished + m ()V +c net/minecraft/client/gui/screens/WinScreen$CreditsReader fog$a net/minecraft/class_445$class_6824 +c net/minecraft/client/gui/screens/achievement/StatsScreen foh net/minecraft/class_447 + f I LIST_WIDTH A field_49520 + f I PADDING B field_49521 + f I FOOTER_HEIGHT C field_49522 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49523 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList; statsList E field_2644 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; itemStatsList F field_2642 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList; mobsStatsList G field_2646 + f Lnet/minecraft/stats/StatsCounter; stats H field_2647 + f Lnet/minecraft/client/gui/components/ObjectSelectionList; activeList I field_2643 + f Z isLoading J field_2645 + c When true, the game will be paused when the gui is shown + f Lnet/minecraft/client/gui/screens/Screen; lastScreen a field_2648 + f Lnet/minecraft/network/chat/Component; TITLE b field_49516 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE c field_45418 + f Lnet/minecraft/resources/ResourceLocation; HEADER_SPRITE r field_45419 + f Lnet/minecraft/resources/ResourceLocation; SORT_UP_SPRITE s field_45420 + f Lnet/minecraft/resources/ResourceLocation; SORT_DOWN_SPRITE u field_45421 + f Lnet/minecraft/network/chat/Component; PENDING_TEXT v field_26546 + f Lnet/minecraft/network/chat/Component; NO_VALUE_DISPLAY w field_46185 + f Lnet/minecraft/network/chat/Component; GENERAL_BUTTON x field_49517 + f Lnet/minecraft/network/chat/Component; ITEMS_BUTTON y field_49518 + f Lnet/minecraft/network/chat/Component; MOBS_BUTTON z field_49519 + m ()V initButtons C method_2267 + m ()V onStatsUpdated D method_2300 + m (Lnet/minecraft/stats/Stat;)Ljava/lang/String; getTranslationKey a method_27027 + p 0 stat + m (Lnet/minecraft/client/gui/components/Button;)V method_19869 a method_19869 + m (Lnet/minecraft/client/gui/components/ObjectSelectionList;)V setActiveList a method_19390 + p 1 activeList + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36880 a method_36880 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57739 a method_57739 + m (Lnet/minecraft/client/gui/components/Button;)V method_19866 b method_19866 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36881 b method_36881 + m (Lnet/minecraft/client/gui/components/Button;)V method_19867 c method_19867 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19391 c method_19391 + m (Lnet/minecraft/client/gui/components/Button;)V method_19868 d method_19868 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36882 d method_36882 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19392 e method_19392 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19393 f method_19393 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19396 g method_19396 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19398 h method_19398 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19400 i method_19400 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19401 j method_19401 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19394 k method_19394 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19395 l method_19395 + m ()V initLists m method_2270 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19402 m method_19402 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_57740 n method_57740 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_57741 o method_57741 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_58231 p method_58231 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/stats/StatsCounter;)V + p 1 lastScreen + p 2 stats + m ()V +c net/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList foh$a net/minecraft/class_447$class_4198 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18750 a field_18750 + m (Lnet/minecraft/stats/Stat;)Ljava/lang/String; method_27028 a method_27028 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList$Entry foh$a$a net/minecraft/class_447$class_4198$class_4197 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList; field_18748 a field_18748 + f Lnet/minecraft/stats/Stat; stat b field_18749 + f Lnet/minecraft/network/chat/Component; statDisplay c field_26547 + m ()Ljava/lang/String; getValueText b method_37074 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList;Lnet/minecraft/stats/Stat;)V + p 2 stat +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList foh$b net/minecraft/class_447$class_4200 + f Ljava/util/List; blockColumns a field_18754 + f Ljava/util/List; itemColumns m field_18755 + f Ljava/util/Comparator; itemStatSorter n field_18758 + f Lnet/minecraft/stats/StatType; sortColumn o field_18759 + f I headerPressed p field_18756 + f I sortOrder q field_18760 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18752 r field_18752 + f I SLOT_BG_SIZE s field_49524 + f I SLOT_STAT_HEIGHT u field_49525 + f I SLOT_BG_Y v field_49526 + f I SORT_NONE w field_49527 + f I SORT_DOWN x field_49528 + f I SORT_UP y field_49529 + f [Lnet/minecraft/resources/ResourceLocation; iconSprites z field_45422 + m (I)I getColumnX a method_57742 + p 1 index + m (Lnet/minecraft/stats/StatType;)V sortByColumn a method_19408 + p 1 statType + m (I)Lnet/minecraft/stats/StatType; getColumn b method_19410 + p 1 index + m (Lnet/minecraft/stats/StatType;)I getColumnIndex b method_19409 + p 1 statType + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow foh$b$a net/minecraft/class_447$class_4200$class_4199 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; field_18751 a field_18751 + f Lnet/minecraft/world/item/Item; item b field_33830 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/stats/Stat;IIZ)V renderStat a method_19405 + p 1 guiGraphics + p 2 stat + p 3 x + p 4 y + p 5 evenRow + m ()Lnet/minecraft/world/item/Item; getItem b method_37307 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList;Lnet/minecraft/world/item/Item;)V + p 2 item +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRowComparator foh$b$b net/minecraft/class_447$class_4200$class_450 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; field_2662 a field_2662 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow;Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow;)I compare a method_2297 + p 1 row1 + p 2 row2 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList;)V +c net/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList foh$c net/minecraft/class_447$class_4202 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18763 a field_18763 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList$MobRow foh$c$a net/minecraft/class_447$class_4202$class_4201 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList; field_18761 a field_18761 + f Lnet/minecraft/network/chat/Component; mobName b field_26548 + f Lnet/minecraft/network/chat/Component; kills c field_26549 + f Lnet/minecraft/network/chat/Component; killedBy d field_26551 + f Z hasKills e field_26550 + f Z wasKilledBy f field_26552 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList;Lnet/minecraft/world/entity/EntityType;)V + p 2 entityType +c net/minecraft/client/gui/screens/achievement/package-info foi net/minecraft/class_6213 +c net/minecraft/client/gui/screens/advancements/AdvancementTab foj net/minecraft/class_454 + f Lnet/minecraft/client/Minecraft; minecraft a field_2680 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen; screen b field_2687 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; type c field_2684 + f I index d field_2681 + f Lnet/minecraft/advancements/AdvancementNode; rootNode e field_46142 + f Lnet/minecraft/advancements/DisplayInfo; display f field_2695 + f Lnet/minecraft/world/item/ItemStack; icon g field_2697 + f Lnet/minecraft/network/chat/Component; title h field_2686 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; root i field_2696 + f Ljava/util/Map; widgets j field_2685 + f D scrollX k field_2690 + f D scrollY l field_2689 + f I minX m field_2694 + f I minY n field_2693 + f I maxX o field_2692 + f I maxY p field_2691 + f F fade q field_2688 + f Z centered r field_2683 + m ()Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; getType a method_35734 + m (DD)V scroll a method_2313 + p 1 dragX + p 3 dragY + m (IIDD)Z isMouseOver a method_2316 + p 1 offsetX + p 2 offsetY + p 3 mouseX + p 5 mouseY + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getWidget a method_2308 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V addAdvancement a method_2318 + p 1 node + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;ILnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; create a method_2317 + p 0 minecraft + p 1 screen + p 2 index + p 3 rootNode + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawIcon a method_2315 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawTooltips a method_2314 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 width + p 5 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V drawTab a method_2311 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 isSelected + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget;Lnet/minecraft/advancements/AdvancementHolder;)V addWidget a method_2319 + p 1 widget + p 2 advancement + m ()I getIndex b method_35735 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawContents b method_2310 + p 1 guiGraphics + p 2 x + p 3 y + m ()Lnet/minecraft/advancements/AdvancementNode; getRootNode c method_53813 + m ()Lnet/minecraft/network/chat/Component; getTitle d method_2309 + m ()Lnet/minecraft/advancements/DisplayInfo; getDisplay e method_35736 + m ()Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen; getScreen f method_2312 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType;ILnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/DisplayInfo;)V + p 1 minecraft + p 2 screen + p 3 type + p 4 index + p 5 rootNode + p 6 display +c net/minecraft/client/gui/screens/advancements/AdvancementTabType fok net/minecraft/class_453 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; ABOVE a field_2678 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; BELOW b field_2673 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; LEFT c field_2675 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; RIGHT d field_2677 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites; selectedSprites e field_45423 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites; unselectedSprites f field_45424 + f I width g field_2671 + f I height h field_2670 + f I max i field_2669 + f [Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; $VALUES j field_2676 + m ()I getMax a method_2304 + m (I)I getX a method_2302 + p 1 index + m (IIIDD)Z isMouseOver a method_2303 + p 1 offsetX + p 2 offsetY + p 3 index + p 4 mouseX + p 6 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIILnet/minecraft/world/item/ItemStack;)V drawIcon a method_2306 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 index + p 5 stack + m (Lnet/minecraft/client/gui/GuiGraphics;IIZI)V draw a method_2301 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 isSelected + p 5 index + m ()[Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; $values b method_36883 + m (I)I getY b method_2305 + p 1 index + m (Ljava/lang/String;ILnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites;Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites;III)V + p 3 selectedSprites + p 4 unselectedSprites + p 5 width + p 6 height + p 7 max + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites fok$a net/minecraft/class_453$class_8670 + f Lnet/minecraft/resources/ResourceLocation; first a comp_1608 + f Lnet/minecraft/resources/ResourceLocation; middle b comp_1609 + f Lnet/minecraft/resources/ResourceLocation; last c comp_1610 + m ()Lnet/minecraft/resources/ResourceLocation; first a comp_1608 + m ()Lnet/minecraft/resources/ResourceLocation; middle b comp_1609 + m ()Lnet/minecraft/resources/ResourceLocation; last c comp_1610 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/screens/advancements/AdvancementWidget fol net/minecraft/class_456 + f Lnet/minecraft/resources/ResourceLocation; TITLE_BOX_SPRITE a field_45425 + f I HEIGHT b field_32286 + f I BOX_X c field_32287 + f I BOX_WIDTH d field_32288 + f I FRAME_WIDTH e field_32289 + f I ICON_X f field_32290 + f I ICON_Y g field_32291 + f I ICON_WIDTH h field_32292 + f I TITLE_PADDING_LEFT i field_32293 + f I TITLE_PADDING_RIGHT j field_32294 + f I TITLE_X k field_32295 + f I TITLE_Y l field_32296 + f I TITLE_MAX_WIDTH m field_32297 + f [I TEST_SPLIT_OFFSETS n field_24262 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; tab o field_2703 + f Lnet/minecraft/advancements/AdvancementNode; advancementNode p field_46143 + f Lnet/minecraft/advancements/DisplayInfo; display q field_2712 + f Lnet/minecraft/util/FormattedCharSequence; title r field_2713 + f I width s field_2715 + f Ljava/util/List; description t field_2705 + f Lnet/minecraft/client/Minecraft; minecraft u field_2704 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; parent v field_2706 + f Ljava/util/List; children w field_2707 + f Lnet/minecraft/advancements/AdvancementProgress; progress x field_2714 + f I x y field_2711 + f I y z field_2710 + m ()I getWidth a method_35737 + m (IIII)Z isMouseOver a method_2329 + p 1 x + p 2 y + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getFirstVisibleParent a method_2328 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementProgress;)V setProgress a method_2333 + p 1 progress + m (Lnet/minecraft/client/StringSplitter;Ljava/util/List;)F getMaxWidth a method_27572 + p 0 manager + p 1 text + m (Lnet/minecraft/client/gui/GuiGraphics;II)V draw a method_2325 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIFII)V drawHover a method_2331 + p 1 guiGraphics + p 2 x + p 3 y + p 4 fade + p 5 width + p 6 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V drawConnectivity a method_2323 + p 1 guiGraphics + p 2 x + p 3 y + p 4 dropShadow + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget;)V addChild a method_2322 + p 1 advancementWidget + m (Lnet/minecraft/network/chat/Component;I)Ljava/util/List; findOptimalLines a method_2330 + p 1 component + p 2 maxWidth + m ()V attachToParent b method_2332 + m ()I getY c method_2326 + m ()I getX d method_2327 + m ()I getMaxProgressWidth e method_61041 + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementTab;Lnet/minecraft/client/Minecraft;Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/DisplayInfo;)V + p 1 tab + p 2 minecraft + p 3 advancementNode + p 4 display + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementWidgetType fom net/minecraft/class_455 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; OBTAINED a field_2701 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; UNOBTAINED b field_2699 + f Lnet/minecraft/resources/ResourceLocation; boxSprite c field_45426 + f Lnet/minecraft/resources/ResourceLocation; taskFrameSprite d field_45427 + f Lnet/minecraft/resources/ResourceLocation; challengeFrameSprite e field_45428 + f Lnet/minecraft/resources/ResourceLocation; goalFrameSprite f field_45429 + f [Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; $VALUES g field_2698 + m ()Lnet/minecraft/resources/ResourceLocation; boxSprite a method_52753 + m (Lnet/minecraft/advancements/AdvancementType;)Lnet/minecraft/resources/ResourceLocation; frameSprite a method_52754 + p 1 type + m ()[Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; $values b method_36884 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 3 boxSprite + p 4 taskFrameSprite + p 5 challengeFrameSprite + p 6 goalFrameSprite + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementWidgetType$1 fom$1 net/minecraft/class_455$1 + f [I $SwitchMap$net$minecraft$advancements$AdvancementType a field_45430 + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementsScreen fon net/minecraft/class_457 + f I WINDOW_TITLE_X A field_32308 + f I WINDOW_TITLE_Y B field_32309 + f D SCROLL_SPEED C field_45431 + f Lnet/minecraft/network/chat/Component; VERY_SAD_LABEL D field_26553 + f Lnet/minecraft/network/chat/Component; NO_ADVANCEMENTS_LABEL E field_26554 + f Lnet/minecraft/network/chat/Component; TITLE F field_26555 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout G field_49530 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen H field_49531 + f Lnet/minecraft/client/multiplayer/ClientAdvancements; advancements I field_2721 + f Ljava/util/Map; tabs J field_2719 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; selectedTab K field_2720 + f Z isScrolling L field_2718 + f I WINDOW_WIDTH a field_32298 + f I WINDOW_HEIGHT b field_32299 + f I WINDOW_INSIDE_WIDTH c field_32300 + f I WINDOW_INSIDE_HEIGHT r field_32301 + f I BACKGROUND_TILE_WIDTH s field_32302 + f I BACKGROUND_TILE_HEIGHT u field_32303 + f I BACKGROUND_TILE_COUNT_X v field_32304 + f I BACKGROUND_TILE_COUNT_Y w field_32305 + f Lnet/minecraft/resources/ResourceLocation; WINDOW_LOCATION x field_2717 + f I WINDOW_INSIDE_X y field_32306 + f I WINDOW_INSIDE_Y z field_32307 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderWindow a method_2334 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + m (Lnet/minecraft/client/gui/components/Button;)V method_57743 a method_57743 + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57744 a method_57744 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderInside b method_2337 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderTooltips c method_2338 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getAdvancementWidget e method_2335 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; getTab f method_2336 + p 1 advancement + m (Lnet/minecraft/client/multiplayer/ClientAdvancements;)V + p 1 advancements + m (Lnet/minecraft/client/multiplayer/ClientAdvancements;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 advancements + p 2 lastScreen + m ()V +c net/minecraft/client/gui/screens/advancements/package-info foo net/minecraft/class_6214 +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen fop net/minecraft/class_5289 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; previousHovered A field_24568 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; currentlyHovered B field_24569 + f I firstMouseX C field_24570 + f I firstMouseY D field_24571 + f Z setFirstMousePos E field_24572 + f Ljava/util/List; slots F field_24573 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE a field_45432 + f Lnet/minecraft/resources/ResourceLocation; SELECTION_SPRITE b field_45433 + f Lnet/minecraft/resources/ResourceLocation; GAMEMODE_SWITCHER_LOCATION c field_24566 + f I SPRITE_SHEET_WIDTH r field_32310 + f I SPRITE_SHEET_HEIGHT s field_32311 + f I SLOT_AREA u field_32312 + f I SLOT_PADDING v field_32313 + f I SLOT_AREA_PADDED w field_32314 + f I HELP_TIPS_OFFSET_Y x field_32315 + f I ALL_SLOTS_WIDTH y field_24567 + f Lnet/minecraft/network/chat/Component; SELECT_KEY z field_25454 + m ()V switchToHoveredGameMode C method_28068 + m ()Z checkToClose D method_28069 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon;)V switchToHoveredGameMode a method_28064 + p 0 minecraft + p 1 gameModeIcon + m ()Lnet/minecraft/world/level/GameType; getDefaultSelected m method_30106 + m ()V + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$1 fop$1 net/minecraft/class_5289$1 + f [I $SwitchMap$net$minecraft$world$level$GameType a field_24575 + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon fop$a net/minecraft/class_5289$class_5290 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; CREATIVE a field_24576 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; SURVIVAL b field_24577 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; ADVENTURE c field_24578 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; SPECTATOR d field_24579 + f [Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; VALUES e field_24580 + f I ICON_TOP_LEFT f field_32316 + f Lnet/minecraft/network/chat/Component; name g field_24581 + f Ljava/lang/String; command h field_24582 + f Lnet/minecraft/world/item/ItemStack; renderStack i field_24583 + f I ICON_AREA j field_32317 + f [Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; $VALUES k field_24584 + m ()Lnet/minecraft/network/chat/Component; getName a method_28070 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; getFromGameType a method_28076 + p 0 gameType + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawIcon a method_28074 + p 1 guiGraphics + p 2 x + p 3 y + m ()Ljava/lang/String; getCommand b method_28075 + m ()Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; getNext c method_28078 + m ()[Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; $values d method_36886 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Ljava/lang/String;Lnet/minecraft/world/item/ItemStack;)V + p 3 name + p 4 command + p 5 renderStack + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeSlot fop$b net/minecraft/class_5289$class_5291 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; icon a field_24586 + f Z isSelected b field_24587 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSlot a method_28080 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSelection b method_28082 + p 1 guiGraphics + m (Z)V setSelected b method_28083 + p 1 isSelected + m (Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen;Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon;II)V + p 2 icon + p 3 x + p 4 y +c net/minecraft/client/gui/screens/debug/package-info foq net/minecraft/class_6391 +c net/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen fos net/minecraft/class_463 + f Lnet/minecraft/client/gui/components/EditBox; commandEdit a field_2751 + f Lnet/minecraft/client/gui/components/EditBox; previousEdit b field_2755 + f Lnet/minecraft/client/gui/components/Button; doneButton c field_2762 + f Lnet/minecraft/client/gui/components/Button; cancelButton r field_2753 + f Lnet/minecraft/client/gui/components/CycleButton; outputButton s field_2760 + f Lnet/minecraft/network/chat/Component; SET_COMMAND_LABEL u field_26556 + f Lnet/minecraft/network/chat/Component; COMMAND_LABEL v field_26557 + f Lnet/minecraft/network/chat/Component; PREVIOUS_OUTPUT_LABEL w field_26558 + f Lnet/minecraft/client/gui/components/CommandSuggestions; commandSuggestions x field_21617 + m ()I getPreviousY C method_2364 + m ()V onDone D method_2359 + m (Lnet/minecraft/world/level/BaseCommandBlock;)V populateAndSendPacket a method_2352 + p 1 commandBlock + m (Lnet/minecraft/client/gui/components/Button;)V method_19875 a method_19875 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32641 a method_32641 + m (Ljava/lang/String;)V onEdited a method_2360 + p 1 command + m (Lnet/minecraft/client/gui/components/Button;)V method_19876 b method_19876 + m (Z)V updatePreviousOutput c method_32642 + p 1 trackOutput + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock m method_2351 + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen$1 fos$1 net/minecraft/class_463$1 + f Lnet/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen; field_21632 d field_21632 + m (Lnet/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/inventory/AbstractContainerScreen fot net/minecraft/class_465 + f I leftPos A field_2776 + c Starting X position for the Gui. Inconsistent use for Gui backgrounds. + f I topPos B field_2800 + c Starting Y position for the Gui. Inconsistent use for Gui backgrounds. + f Ljava/util/Set; quickCraftSlots C field_2793 + f Z isQuickCrafting D field_2794 + f F SNAPBACK_SPEED E field_32318 + f I QUICKDROP_DELAY F field_32319 + f I HOVER_ITEM_BLIT_OFFSET G field_32321 + f Lnet/minecraft/world/inventory/Slot; clickedSlot H field_2777 + c Used when touchscreen is enabled + f Lnet/minecraft/world/inventory/Slot; snapbackEnd I field_2802 + f Lnet/minecraft/world/inventory/Slot; quickdropSlot J field_2780 + f Lnet/minecraft/world/inventory/Slot; lastClickSlot K field_2799 + f Z isSplittingStack L field_2789 + c Used when touchscreen is enabled. + f Lnet/minecraft/world/item/ItemStack; draggingItem M field_2782 + c Used when touchscreen is enabled + f I snapbackStartX N field_2784 + f I snapbackStartY O field_2796 + f J snapbackTime P field_2795 + f Lnet/minecraft/world/item/ItemStack; snapbackItem Q field_2785 + c Used when touchscreen is enabled + f J quickdropTime R field_2781 + f I quickCraftingType S field_2790 + f I quickCraftingButton T field_2778 + f Z skipNextRelease U field_2798 + f I quickCraftingRemainder V field_2803 + f J lastClickTime W field_2788 + f I lastClickButton X field_2786 + f Z doubleclick Y field_2783 + f Lnet/minecraft/world/item/ItemStack; lastQuickMoved Z field_2791 + f Lnet/minecraft/resources/ResourceLocation; INVENTORY_LOCATION a field_2801 + c The location of the inventory background texture + f I SLOT_ITEM_BLIT_OFFSET b field_32322 + f I imageWidth c field_2792 + c The X size of the inventory window in pixels. + f I imageHeight r field_2779 + c The Y size of the inventory window in pixels. + f I titleLabelX s field_25267 + f I titleLabelY u field_25268 + f I inventoryLabelX v field_25269 + f I inventoryLabelY w field_25270 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; menu x field_2797 + c A list of the players inventory slots + f Lnet/minecraft/network/chat/Component; playerInventoryTitle y field_29347 + f Lnet/minecraft/world/inventory/Slot; hoveredSlot z field_2787 + c Holds the slot currently hovered + m ()V containerTick C method_37432 + m ()V recalculateQuickCraftRemaining G method_2379 + m (DDIII)Z hasClickedOutside a method_2381 + p 1 mouseX + p 3 mouseY + p 5 guiLeft + p 6 guiTop + p 7 mouseButton + m (I)V checkHotbarMouseClicked a method_30107 + p 1 keyCode + m (II)Z checkHotbarKeyPressed a method_2384 + p 1 keyCode + p 2 scanCode + m (IIIIDD)Z isHovering a method_2378 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 mouseX + p 7 mouseY + m (IIZ)V handleSlotStateChanged a method_54590 + p 1 slotId + p 2 containerId + p 3 newState + m (Lnet/minecraft/world/inventory/Slot;DD)Z isHovering a method_2387 + p 1 slot + p 2 mouseX + p 4 mouseY + m (Lnet/minecraft/world/inventory/Slot;IILnet/minecraft/world/inventory/ClickType;)V slotClicked a method_2383 + c Called when the mouse is clicked over a slot or outside the gui. + p 1 slot + p 2 slotId + p 3 mouseButton + p 4 type + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getTooltipFromContainerItem a method_51454 + p 1 stack + m (Lnet/minecraft/client/gui/GuiGraphics;FII)V renderBg a method_2389 + p 1 guiGraphics + p 2 partialTick + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderTooltip a method_2380 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderSlotHighlight a method_33285 + p 0 guiGraphics + p 1 x + p 2 y + p 3 blitOffset + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/inventory/Slot;)V renderSlot a method_2385 + p 1 guiGraphics + p 2 slot + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/ItemStack;IILjava/lang/String;)V renderFloatingItem a method_2382 + p 1 guiGraphics + p 2 stack + p 3 x + p 4 y + p 5 text + m (DD)Lnet/minecraft/world/inventory/Slot; findSlot b method_2386 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderLabels b method_2388 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m ()V clearDraggingState m method_44339 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/AbstractFurnaceScreen fou net/minecraft/class_489 + f Lnet/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent; recipeBookComponent E field_2924 + f Z widthTooNarrow F field_2925 + f Lnet/minecraft/resources/ResourceLocation; texture G field_18975 + f Lnet/minecraft/resources/ResourceLocation; litProgressSprite H field_45434 + f Lnet/minecraft/resources/ResourceLocation; burnProgressSprite I field_45435 + m (Lnet/minecraft/client/gui/components/Button;)V method_19877 a method_19877 + m (Lnet/minecraft/world/inventory/AbstractFurnaceMenu;Lnet/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 menu + p 2 recipeBookComponent + p 3 playerInventory + p 4 title + p 5 texture + p 6 listProgressSprite + p 7 burnProgressSprite +c net/minecraft/client/gui/screens/inventory/AbstractSignEditScreen fov net/minecraft/class_7743 + f Lnet/minecraft/world/level/block/state/properties/WoodType; woodType a field_40426 + f Lnet/minecraft/world/level/block/entity/SignBlockEntity; sign b field_40424 + c Reference to the sign object. + f Lnet/minecraft/world/level/block/entity/SignText; text c field_43362 + f [Ljava/lang/String; messages r field_40425 + f Z isFrontText s field_43363 + f I frame u field_40427 + c Counts the number of screen updates. + f I line v field_40428 + c The index of the line that is being edited. + f Lnet/minecraft/client/gui/font/TextFieldHelper; signField w field_40429 + m ()Z isValid C method_49912 + m ()V onDone D method_45662 + m ()Ljava/lang/String; method_45663 E method_45663 + m (I)[Ljava/lang/String; method_45652 a method_45652 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/block/state/BlockState;)V renderSignBackground a method_45656 + p 1 guiGraphics + p 2 state + m (Lnet/minecraft/client/gui/components/Button;)V method_45657 a method_45657 + m (Ljava/lang/String;)V setMessage a method_49913 + p 1 message + m (ZI)Lnet/minecraft/network/chat/Component; method_49914 a method_49914 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/block/state/BlockState;)V offsetSign b method_45654 + p 1 guiGraphics + p 2 state + m (Ljava/lang/String;)Z method_45658 b method_45658 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSign c method_45659 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSignText d method_45655 + p 1 guiGraphics + m ()Lorg/joml/Vector3f; getSignTextScale m method_45661 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + p 1 sign + p 2 isFrontText + p 3 isFiltered + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZLnet/minecraft/network/chat/Component;)V + p 1 sign + p 2 isFrontText + p 3 isFiltered + p 4 title +c net/minecraft/client/gui/screens/inventory/AnvilScreen fow net/minecraft/class_471 + f Lnet/minecraft/resources/ResourceLocation; TEXT_FIELD_SPRITE E field_45436 + f Lnet/minecraft/resources/ResourceLocation; TEXT_FIELD_DISABLED_SPRITE F field_45437 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE G field_45438 + f Lnet/minecraft/resources/ResourceLocation; ANVIL_LOCATION H field_2819 + f Lnet/minecraft/network/chat/Component; TOO_EXPENSIVE_TEXT I field_26559 + f Lnet/minecraft/client/gui/components/EditBox; name J field_2821 + f Lnet/minecraft/world/entity/player/Player; player K field_29348 + m (Ljava/lang/String;)V onNameChanged a method_2403 + p 1 name + m (Lnet/minecraft/world/inventory/AnvilMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BeaconScreen fox net/minecraft/class_466 + f Lnet/minecraft/resources/ResourceLocation; BEACON_LOCATION E field_2808 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_DISABLED_SPRITE F field_45443 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_SELECTED_SPRITE G field_45444 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_HIGHLIGHTED_SPRITE H field_45439 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_SPRITE I field_45440 + f Lnet/minecraft/resources/ResourceLocation; CONFIRM_SPRITE J field_45441 + f Lnet/minecraft/resources/ResourceLocation; CANCEL_SPRITE K field_45442 + f Lnet/minecraft/network/chat/Component; PRIMARY_EFFECT_LABEL L field_26560 + f Lnet/minecraft/network/chat/Component; SECONDARY_EFFECT_LABEL M field_26561 + f Ljava/util/List; beaconButtons N field_33832 + f Lnet/minecraft/core/Holder; primary O field_17412 + f Lnet/minecraft/core/Holder; secondary P field_17413 + m ()V updateButtons E method_37078 + m (ILnet/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconButton;)V method_37075 a method_37075 + m (Lnet/minecraft/client/gui/components/AbstractWidget;)V addBeaconButton a method_37076 + p 1 beaconButton + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_47418 a method_47418 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_2394 b method_2394 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_2393 c method_2393 + m (Lnet/minecraft/world/inventory/BeaconMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BeaconScreen$1 fox$1 net/minecraft/class_466$1 + f Lnet/minecraft/world/inventory/BeaconMenu; val$menu a field_17414 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_17415 b field_17415 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;Lnet/minecraft/world/inventory/BeaconMenu;)V +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconButton fox$a net/minecraft/class_466$class_6392 + m (I)V updateStatus a method_37080 + p 1 beaconTier +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconCancelButton fox$b net/minecraft/class_466$class_467 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2809 a field_2809 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;II)V + p 2 x + p 3 y +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconConfirmButton fox$c net/minecraft/class_466$class_468 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2810 a field_2810 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;II)V + p 2 x + p 3 y +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconPowerButton fox$d net/minecraft/class_466$class_469 + f I tier a field_33833 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2811 b field_2811 + f Z isPrimary c field_17416 + f Lnet/minecraft/core/Holder; effect d field_2813 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite f field_18223 + m (Lnet/minecraft/core/Holder;)V setEffect a method_37081 + p 1 effect + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/MutableComponent; createEffectDescription b method_37082 + p 1 effect + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;IILnet/minecraft/core/Holder;ZI)V + p 2 x + p 3 y + p 4 effect + p 5 isPrimary + p 6 tier +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconScreenButton fox$e net/minecraft/class_466$class_470 + f Z selected a field_2815 + m ()Z isSelected a method_2402 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderIcon a method_18641 + p 1 guiGraphics + m (Z)V setSelected b method_2401 + p 1 selected + m (II)V + p 1 x + p 2 y + m (IILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 message +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconSpriteScreenButton fox$f net/minecraft/class_466$class_4072 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45445 + m (IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 sprite + p 4 message +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconUpgradePowerButton fox$g net/minecraft/class_466$class_6393 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_33835 c field_33835 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;IILnet/minecraft/core/Holder;)V + p 2 x + p 3 y + p 4 effect +c net/minecraft/client/gui/screens/inventory/BlastFurnaceScreen foy net/minecraft/class_3871 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45446 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45447 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17115 + m (Lnet/minecraft/world/inventory/BlastFurnaceMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen foz net/minecraft/class_473 + f Z isSigning A field_2828 + c Determines if the signing screen is open + f I frameTick B field_2844 + c Update ticks since the gui was opened + f I currentPage C field_2840 + f Ljava/util/List; pages D field_17116 + f Ljava/lang/String; title E field_2847 + f Lnet/minecraft/client/gui/font/TextFieldHelper; pageEdit F field_24269 + f Lnet/minecraft/client/gui/font/TextFieldHelper; titleEdit G field_24270 + f J lastClickTime H field_2830 + c In milliseconds + f I lastIndex I field_2827 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; forwardButton J field_2843 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; backButton K field_2839 + f Lnet/minecraft/client/gui/components/Button; doneButton L field_2848 + f Lnet/minecraft/client/gui/components/Button; signButton M field_2831 + f Lnet/minecraft/client/gui/components/Button; finalizeButton N field_2841 + f Lnet/minecraft/client/gui/components/Button; cancelButton O field_2849 + f Lnet/minecraft/world/InteractionHand; hand P field_2832 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; displayCache Q field_24268 + f Lnet/minecraft/network/chat/Component; pageMsg R field_25891 + f Lnet/minecraft/network/chat/Component; ownerText S field_25892 + f I TEXT_WIDTH a field_32323 + f I TEXT_HEIGHT b field_32324 + f I IMAGE_WIDTH c field_32326 + f I IMAGE_HEIGHT r field_32327 + f Lnet/minecraft/network/chat/Component; EDIT_TITLE_LABEL s field_25893 + f Lnet/minecraft/network/chat/Component; FINALIZE_WARNING_LABEL u field_25894 + f Lnet/minecraft/util/FormattedCharSequence; BLACK_CURSOR v field_25895 + f Lnet/minecraft/util/FormattedCharSequence; GRAY_CURSOR w field_25896 + f Lnet/minecraft/world/entity/player/Player; owner x field_2826 + f Lnet/minecraft/world/item/ItemStack; book y field_2835 + f Z isModified z field_2837 + c Whether the book's title or contents has been modified since being opened + m ()I getNumPages C method_17046 + c Returns the number of pages in the book + m ()V pageBack D method_2437 + c Displays the previous page + m ()V pageForward E method_2444 + c Displays the next page (creating it if necessary) + m ()V updateButtonVisibility F method_2413 + c Sets visibility for book buttons + m ()V eraseEmptyTrailingPages G method_17047 + m ()V updateLocalCopy J method_37433 + m ()V appendPageToBook K method_2436 + c Adds a new page to the book (capped at 100 pages) + m ()V keyUp L method_27597 + m ()V keyDown M method_27598 + m ()V keyHome N method_2421 + m ()V keyEnd O method_2414 + m ()Ljava/lang/String; getCurrentPageText P method_2427 + c Returns the contents of the current page as a string (or an empty string if the currPage isn't a valid page index) + m ()Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; getDisplayCache Q method_27576 + m ()V clearDisplayCache R method_27577 + m ()V clearDisplayCacheAfterPageChange S method_27872 + m ()Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; rebuildDisplayCache T method_27578 + m ()Ljava/lang/String; method_27579 U method_27579 + m (I)V changeLine a method_27580 + p 1 yChange + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Z)V renderCursor a method_27581 + p 1 guiGraphics + p 2 cursorPos + p 3 isEndOfText + m (Lnet/minecraft/client/gui/GuiGraphics;[Lnet/minecraft/client/renderer/Rect2i;)V renderHighlight a method_27588 + p 1 guiGraphics + p 2 highlightAreas + m (Lnet/minecraft/client/gui/components/Button;)V method_19878 a method_19878 + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; convertScreenToLocal a method_27582 + p 1 screenPos + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/renderer/Rect2i; createSelection a method_27583 + p 1 corner1 + p 2 corner2 + m (Ljava/lang/String;)V setClipboard a method_27584 + p 1 clipboardValue + m (Ljava/lang/String;Lnet/minecraft/client/StringSplitter;IIII)Lnet/minecraft/client/renderer/Rect2i; createPartialLineSelection a method_27585 + p 1 input + p 2 splitter + p 3 startPos + p 4 endPos + p 5 y + p 6 lineStart + m (Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/lang/String;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lit/unimi/dsi/fastutil/ints/IntList;Ljava/util/List;Lnet/minecraft/network/chat/Style;II)V method_27586 a method_27586 + m ([II)I findLineFromPos a method_27591 + p 0 lineStarts + p 1 find + m (I)V selectWord b method_27589 + p 1 index + m (III)Z bookKeyPressed b method_27592 + c Handles keypresses, clipboard functions, and page turning + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/Button;)V method_19879 b method_19879 + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; convertLocalToScreen b method_27590 + p 1 localScreenPos + m (Ljava/lang/String;)V setCurrentPageText b method_2439 + p 1 text + m (Lnet/minecraft/client/gui/components/Button;)V method_19880 c method_19880 + m (Ljava/lang/String;)Z method_27593 c method_27593 + m (Z)V saveChanges c method_2407 + p 1 publish + m (III)Z titleKeyPressed d method_2446 + c Handles special keys pressed while editing the book's title + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/Button;)V method_19881 d method_19881 + m (Ljava/lang/String;)V method_27594 d method_27594 + m (Lnet/minecraft/client/gui/components/Button;)V method_19882 e method_19882 + m (Ljava/lang/String;)Z method_27596 e method_27596 + m (Lnet/minecraft/client/gui/components/Button;)V method_19883 f method_19883 + m ()Ljava/lang/String; getClipboard m method_27595 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)V + p 1 owner + p 2 book + p 3 hand + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache foz$a net/minecraft/class_473$class_5233 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; EMPTY a field_24271 + f Ljava/lang/String; fullText b field_24272 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; cursor c field_24273 + f Z cursorAtEnd d field_24274 + f [I lineStarts e field_24275 + f [Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo; lines f field_24276 + f [Lnet/minecraft/client/renderer/Rect2i; selection g field_24277 + m (I)I findLineStart a method_27600 + p 1 line + m (II)I changeLine a method_27601 + p 1 xChange + p 2 yChange + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)I getIndexAtPosition a method_27602 + p 1 font + p 2 cursorPosition + m (I)I findLineEnd b method_27604 + p 1 line + m (Ljava/lang/String;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Z[I[Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo;[Lnet/minecraft/client/renderer/Rect2i;)V + p 1 fullText + p 2 cursor + p 3 cursorAtEnd + p 4 lineStarts + p 5 lines + p 6 selection + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo foz$b net/minecraft/class_473$class_475 + f Lnet/minecraft/network/chat/Style; style a field_24278 + f Ljava/lang/String; contents b field_24279 + f Lnet/minecraft/network/chat/Component; asComponent c field_24280 + f I x d field_2854 + f I y e field_2853 + m (Lnet/minecraft/network/chat/Style;Ljava/lang/String;II)V + p 1 style + p 2 contents + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i foz$c net/minecraft/class_473$class_5234 + f I x a field_24281 + f I y b field_24282 + m (II)V + p 1 x + p 2 y +c net/minecraft/client/gui/screens/inventory/BookViewScreen fpa net/minecraft/class_3872 + f Ljava/util/List; cachedPageComponents A field_17120 + c Holds a copy of the page text, split into page width lines + f I cachedPage B field_17121 + f Lnet/minecraft/network/chat/Component; pageMsg C field_25897 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; forwardButton D field_17122 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; backButton E field_17123 + f Z playTurnSound F field_18976 + c Determines if a sound is played when the page is turned + f I PAGE_INDICATOR_TEXT_Y_OFFSET a field_32328 + f I PAGE_TEXT_X_OFFSET b field_32329 + f I PAGE_TEXT_Y_OFFSET c field_32330 + f Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; EMPTY_ACCESS r field_17417 + f Lnet/minecraft/resources/ResourceLocation; BOOK_LOCATION s field_17117 + f I TEXT_WIDTH u field_32331 + f I TEXT_HEIGHT v field_32332 + f I IMAGE_WIDTH w field_32333 + f I IMAGE_HEIGHT x field_32334 + f Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; bookAccess y field_17418 + f I currentPage z field_17119 + m ()V createPageControlButtons C method_17558 + m ()I getNumPages D method_17055 + m ()V pageBack E method_17057 + c Moves the display back one page + m ()V pageForward F method_17058 + c Moves the display forward one page + m ()V closeScreen G method_34494 + m ()V updateButtonVisibility J method_17059 + m (I)Z setPage a method_17556 + c Moves the book to the specified page and returns true if it exists, {@code false} otherwise. + p 1 pageNum + m (Lnet/minecraft/client/gui/components/Button;)V method_19884 a method_19884 + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;)V setBookAccess a method_17554 + p 1 bookAccess + m (DD)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt b method_17048 + p 1 mouseX + p 3 mouseY + m (I)Z forcePage b method_17789 + c I'm not sure why this exists. The function it calls is public and does all the work. + p 1 pageNum + m (Lnet/minecraft/client/gui/components/Button;)V method_19885 b method_19885 + m (Lnet/minecraft/client/gui/components/Button;)V method_19886 c method_19886 + m ()V createMenuControls m method_17557 + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;)V + p 1 bookAccess + m ()V + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;Z)V + p 1 bookAccess + p 2 playTurnSound + m ()V +c net/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess fpa$a net/minecraft/class_3872$class_3931 + f Ljava/util/List; pages a comp_2438 + m ()I getPageCount a method_17560 + c Returns the size of the book + m (I)Lnet/minecraft/network/chat/FormattedText; getPage a method_17563 + p 1 page + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; fromItem a method_17562 + p 0 stack + m ()Ljava/util/List; pages b comp_2438 + m (Ljava/util/List;)V +c net/minecraft/client/gui/screens/inventory/BrewingStandScreen fpb net/minecraft/class_472 + f Lnet/minecraft/resources/ResourceLocation; FUEL_LENGTH_SPRITE E field_45448 + f Lnet/minecraft/resources/ResourceLocation; BREW_PROGRESS_SPRITE F field_45449 + f Lnet/minecraft/resources/ResourceLocation; BUBBLES_SPRITE G field_45450 + f Lnet/minecraft/resources/ResourceLocation; BREWING_STAND_LOCATION H field_2823 + f [I BUBBLELENGTHS I field_2824 + m (Lnet/minecraft/world/inventory/BrewingStandMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CartographyTableScreen fpc net/minecraft/class_3934 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45453 + f Lnet/minecraft/resources/ResourceLocation; SCALED_MAP_SPRITE F field_45454 + f Lnet/minecraft/resources/ResourceLocation; DUPLICATED_MAP_SPRITE G field_45455 + f Lnet/minecraft/resources/ResourceLocation; MAP_SPRITE H field_45451 + f Lnet/minecraft/resources/ResourceLocation; LOCKED_SPRITE I field_45452 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION J field_17421 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;IIF)V renderMap a method_17566 + p 1 guiGraphics + p 2 mapId + p 3 mapData + p 4 x + p 5 y + p 6 scale + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;ZZZZ)V renderResultingMap a method_17567 + p 1 guiGraphics + p 2 mapId + p 3 mapData + p 4 hasMap + p 5 hasPaper + p 6 hasGlassPane + p 7 isMaxSize + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CommandBlockEditScreen fpd net/minecraft/class_477 + f Z autoexec A field_2867 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity; autoCommandBlock u field_2865 + f Lnet/minecraft/client/gui/components/CycleButton; modeButton v field_2869 + f Lnet/minecraft/client/gui/components/CycleButton; conditionalButton w field_2871 + f Lnet/minecraft/client/gui/components/CycleButton; autoexecButton x field_2866 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; mode y field_2870 + f Z conditional z field_2868 + m ()V updateGui E method_2457 + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;)Lnet/minecraft/network/chat/Component; method_32643 a method_32643 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;)V method_32644 a method_32644 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32645 a method_32645 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32646 b method_32646 + m (Z)V enableControls f method_32647 + p 1 active + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V + p 1 autoCommandBlock +c net/minecraft/client/gui/screens/inventory/CommandBlockEditScreen$1 fpd$1 net/minecraft/class_477$1 + f [I $SwitchMap$net$minecraft$world$level$block$entity$CommandBlockEntity$Mode a field_2875 + m ()V +c net/minecraft/client/gui/screens/inventory/ContainerScreen fpe net/minecraft/class_476 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_BACKGROUND E field_2861 + c The ResourceLocation containing the chest GUI texture. + f I containerRows F field_2864 + c Window height is calculated with these values" the more rows, the higher + m (Lnet/minecraft/world/inventory/ChestMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CrafterScreen fpf net/minecraft/class_8898 + f Lnet/minecraft/resources/ResourceLocation; DISABLED_SLOT_LOCATION_SPRITE E field_46882 + f Lnet/minecraft/resources/ResourceLocation; POWERED_REDSTONE_LOCATION_SPRITE F field_46883 + f Lnet/minecraft/resources/ResourceLocation; UNPOWERED_REDSTONE_LOCATION_SPRITE G field_46884 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_LOCATION H field_46879 + f Lnet/minecraft/network/chat/Component; DISABLED_SLOT_TOOLTIP I field_46880 + f Lnet/minecraft/world/entity/player/Player; player J field_46881 + m (I)V enableSlot a method_54797 + p 1 slot + m (IZ)V updateSlotState a method_54798 + p 1 slot + p 2 state + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/inventory/CrafterSlot;)V renderDisabledSlot a method_54591 + p 1 guiGraphics + p 2 slot + m (I)V disableSlot b method_54799 + p 1 slot + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderRedstone c method_54592 + p 1 guiGraphics + m (Lnet/minecraft/world/inventory/CrafterMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CrafterScreen$1 fpf$1 net/minecraft/class_8898$1 + f [I $SwitchMap$net$minecraft$world$inventory$ClickType a field_47118 + m ()V +c net/minecraft/client/gui/screens/inventory/CraftingScreen fpg net/minecraft/class_479 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_TABLE_LOCATION E field_2878 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; recipeBookComponent F field_2880 + f Z widthTooNarrow G field_2877 + m (Lnet/minecraft/client/gui/components/Button;)V method_19890 a method_19890 + m (Lnet/minecraft/world/inventory/CraftingMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CreativeInventoryListener fph net/minecraft/class_478 + f Lnet/minecraft/client/Minecraft; minecraft a field_2876 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen fpi net/minecraft/class_481 + c

Interface {@link net.fabricmc.fabric.api.client.itemgroup.v1.FabricCreativeInventoryScreen} injected by mod fabric-item-group-api-v1

+ f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE E field_45459 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE F field_45460 + f [Lnet/minecraft/resources/ResourceLocation; UNSELECTED_TOP_TABS G field_45461 + f [Lnet/minecraft/resources/ResourceLocation; SELECTED_TOP_TABS H field_45456 + f [Lnet/minecraft/resources/ResourceLocation; UNSELECTED_BOTTOM_TABS I field_45457 + f [Lnet/minecraft/resources/ResourceLocation; SELECTED_BOTTOM_TABS J field_45458 + f I NUM_ROWS K field_32337 + f I NUM_COLS L field_32338 + f I TAB_WIDTH M field_32339 + f I TAB_HEIGHT N field_32340 + f I SCROLLER_WIDTH O field_32341 + f I SCROLLER_HEIGHT P field_32342 + f Lnet/minecraft/world/SimpleContainer; CONTAINER Q field_2895 + f Lnet/minecraft/network/chat/Component; TRASH_SLOT_TOOLTIP R field_26563 + f I TEXT_COLOR S field_32343 + f Lnet/minecraft/world/item/CreativeModeTab; selectedTab T field_2896 + c Currently selected creative inventory tab index. + f F scrollOffs U field_2890 + c Amount scrolled in Creative mode inventory (0 = top, 1 = bottom) + f Z scrolling V field_2892 + c True if the scrollbar is being dragged + f Lnet/minecraft/client/gui/components/EditBox; searchBox W field_2894 + f Ljava/util/List; originalSlots X field_2886 + f Lnet/minecraft/world/inventory/Slot; destroyItemSlot Y field_2889 + f Lnet/minecraft/client/gui/screens/inventory/CreativeInventoryListener; listener Z field_2891 + f Z ignoreTextInput aa field_2888 + f Z hasClickedOutside ab field_2887 + f Ljava/util/Set; visibleTags ac field_16201 + f Z displayOperatorCreativeTab ad field_41112 + m ()Z isInventoryOpen E method_47424 + m ()V refreshSearchResults F method_2464 + m ()Z canScroll J method_2465 + c Returns (if you are not on the inventoryTab) and (the flag isn't set) and (you have more than 1 page of items). + m (Lnet/minecraft/world/entity/player/Player;)Z hasPermissions a method_47419 + p 1 player + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)V tryRefreshInvalidatedTabs a method_47420 + p 1 enabledFeatures + p 2 hasPermissions + p 3 provider + m (Lnet/minecraft/world/inventory/Slot;)Z isCreativeSlot a method_2470 + p 1 slot + m (Lnet/minecraft/world/item/CreativeModeTab;)V selectTab a method_2466 + c Sets the current creative tab, restructuring the GUI as needed. + p 1 tab + m (Lnet/minecraft/world/item/CreativeModeTab;DD)Z checkTabClicked a method_2463 + p 1 creativeModeTab + p 2 relativeMouseX + p 4 relativeMouseY + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;Lnet/minecraft/tags/TagKey;)V method_51455 a method_51455 + m (Lnet/minecraft/client/Minecraft;IZZ)V handleHotbarLoadOrSave a method_2462 + p 0 client + p 1 index + p 2 load + p 3 save + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/CreativeModeTab;)V renderTabButton a method_2468 + p 1 guiGraphics + p 2 creativeModeTab + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/CreativeModeTab;II)Z checkTabHovering a method_2471 + p 1 guiGraphics + p 2 creativeModeTab + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/client/multiplayer/SessionSearchTrees;Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z tryRebuildTabContents a method_60324 + p 1 searchTrees + p 2 enabledFeatures + p 3 hasPermissions + p 4 registries + m (Ljava/lang/String;)V updateVisibleTags a method_15871 + p 1 search + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Z method_15875 a method_15875 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Z method_15874 a method_15874 + m (Ljava/util/Collection;)V refreshCurrentTabContents a method_47421 + p 1 items + m (Ljava/util/function/Predicate;Lnet/minecraft/tags/TagKey;)Z method_15873 a method_15873 + m (DD)Z insideScrollbar b method_2467 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/world/item/CreativeModeTab;)I getTabX b method_47422 + p 1 tab + m (Lnet/minecraft/world/item/CreativeModeTab;)I getTabY c method_47423 + p 1 tab + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/flag/FeatureFlagSet;Z)V + p 1 player + p 2 enabledFeatures + p 3 displayOperatorCreativeTab + m ()V +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$CustomCreativeSlot fpi$a net/minecraft/class_481$class_482 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$ItemPickerMenu fpi$b net/minecraft/class_481$class_483 + f Lnet/minecraft/core/NonNullList; items k field_2897 + c The list of items in this container. + f Lnet/minecraft/world/inventory/AbstractContainerMenu; inventoryMenu l field_29349 + m (F)I getRowIndexForScroll a method_47425 + p 1 scrollOffs + m (FD)F subtractInputFromScroll a method_47426 + p 1 scrollOffs + p 2 input + m (F)V scrollTo b method_2473 + c Updates the gui slot's ItemStacks based on scroll position. + p 1 pos + m (I)F getScrollForRowIndex e method_47427 + p 1 rowIndex + m ()I calculateRowCount l method_47428 + m ()Z canScroll m method_2474 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$SlotWrapper fpi$c net/minecraft/class_481$class_484 + f Lnet/minecraft/world/inventory/Slot; target a field_2898 + m (Lnet/minecraft/world/inventory/Slot;III)V + p 1 slot + p 2 index + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/CyclingSlotBackground fpj net/minecraft/class_8064 + f I ICON_CHANGE_TICK_RATE a field_42039 + f I ICON_SIZE b field_42040 + f I ICON_TRANSITION_TICK_DURATION c field_42041 + f I slotIndex d field_42042 + f Ljava/util/List; icons e field_42043 + f I tick f field_42044 + f I iconIndex g field_42045 + m (F)F getIconTransitionTransparency a method_48468 + p 1 partialTick + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/client/gui/GuiGraphics;FII)V render a method_48469 + p 1 containerMenu + p 2 guiGraphics + p 3 partialTick + p 4 x + p 5 y + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/resources/ResourceLocation;FLnet/minecraft/client/gui/GuiGraphics;II)V renderIcon a method_48470 + p 1 slot + p 2 icon + p 3 alpha + p 4 guiGraphics + p 5 x + p 6 y + m (Ljava/util/List;)V tick a method_48471 + p 1 icons + m (I)V + p 1 slotIndex +c net/minecraft/client/gui/screens/inventory/DispenserScreen fpk net/minecraft/class_480 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_LOCATION E field_2885 + m (Lnet/minecraft/world/inventory/DispenserMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/EffectRenderingInventoryScreen fpl net/minecraft/class_485 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_LARGE_SPRITE E field_45462 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_SMALL_SPRITE F field_45463 + m ()Z canSeeEffects G method_38934 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/network/chat/Component; getEffectName a method_38933 + p 1 effect + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;)V renderLabels a method_18644 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;Z)V renderBackgrounds a method_18642 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + p 5 isSmall + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;Z)V renderIcons b method_18643 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + p 5 isSmall + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderEffects c method_2477 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/EnchantmentNames fpm net/minecraft/class_487 + f Lnet/minecraft/resources/ResourceLocation; ALT_FONT a field_24283 + f Lnet/minecraft/network/chat/Style; ROOT_STYLE b field_24284 + f Lnet/minecraft/client/gui/screens/inventory/EnchantmentNames; INSTANCE c field_2917 + f Lnet/minecraft/util/RandomSource; random d field_2918 + f [Ljava/lang/String; words e field_2916 + m ()Lnet/minecraft/client/gui/screens/inventory/EnchantmentNames; getInstance a method_2481 + m (J)V initSeed a method_2480 + c Resets the underlying random number generator using a given seed. + p 1 seed + m (Lnet/minecraft/client/gui/Font;I)Lnet/minecraft/network/chat/FormattedText; getRandomName a method_2479 + p 1 fontRenderer + p 2 maxWidth + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/EnchantmentScreen fpn net/minecraft/class_486 + f I time E field_2915 + f F flip F field_2912 + f F oFlip G field_2914 + f F flipT H field_2909 + f F flipA I field_2906 + f F open J field_2905 + f F oOpen K field_2904 + f [Lnet/minecraft/resources/ResourceLocation; ENABLED_LEVEL_SPRITES L field_45464 + f [Lnet/minecraft/resources/ResourceLocation; DISABLED_LEVEL_SPRITES M field_45465 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_DISABLED_SPRITE N field_45466 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_HIGHLIGHTED_SPRITE O field_45467 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_SPRITE P field_45468 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTING_TABLE_LOCATION Q field_2910 + c The ResourceLocation containing the Enchantment GUI texture location + f Lnet/minecraft/resources/ResourceLocation; ENCHANTING_BOOK_LOCATION R field_2901 + c The ResourceLocation containing the texture for the Book rendered above the enchantment table + f Lnet/minecraft/util/RandomSource; random S field_2911 + c A Random instance for use with the enchantment gui + f Lnet/minecraft/client/model/BookModel; bookModel T field_2908 + f Lnet/minecraft/world/item/ItemStack; last U field_2913 + m ()V tickBook E method_2478 + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderBook d method_52223 + p 1 guiGraphics + p 2 x + p 3 y + p 4 partialTick + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/FurnaceScreen fpo net/minecraft/class_3873 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45469 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45470 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17127 + m (Lnet/minecraft/world/inventory/FurnaceMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/GrindstoneScreen fpp net/minecraft/class_3802 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45471 + f Lnet/minecraft/resources/ResourceLocation; GRINDSTONE_LOCATION F field_16769 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/HangingSignEditScreen fpq net/minecraft/class_7744 + f F MAGIC_BACKGROUND_SCALE b field_40431 + f Lorg/joml/Vector3f; TEXT_SCALE c field_40432 + f I TEXTURE_WIDTH r field_40433 + f I TEXTURE_HEIGHT s field_40434 + f Lnet/minecraft/resources/ResourceLocation; texture u field_40435 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + m ()V +c net/minecraft/client/gui/screens/inventory/HopperScreen fpr net/minecraft/class_488 + f Lnet/minecraft/resources/ResourceLocation; HOPPER_LOCATION E field_2919 + c The ResourceLocation containing the gui texture for the hopper + m (Lnet/minecraft/world/inventory/HopperMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/HorseInventoryScreen fps net/minecraft/class_491 + f Lnet/minecraft/resources/ResourceLocation; CHEST_SLOTS_SPRITE E field_45473 + f Lnet/minecraft/resources/ResourceLocation; SADDLE_SLOT_SPRITE F field_45474 + f Lnet/minecraft/resources/ResourceLocation; LLAMA_ARMOR_SLOT_SPRITE G field_45475 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_SLOT_SPRITE H field_45472 + f Lnet/minecraft/resources/ResourceLocation; HORSE_INVENTORY_LOCATION I field_2937 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse J field_2941 + c The EntityHorse whose inventory is currently being accessed. + f I inventoryColumns K field_52253 + f F xMouse L field_2939 + c The mouse x-position recorded during the last rendered frame. + f F yMouse M field_2938 + c The mouse y-position recorded during the last rendered frame. + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;I)V + p 1 menu + p 2 inventory + p 3 horse + p 4 inventoryColumns + m ()V +c net/minecraft/client/gui/screens/inventory/InventoryScreen fpt net/minecraft/class_490 + f F xMouse E field_2935 + c The old x position of the mouse pointer + f F yMouse F field_2934 + c The old y position of the mouse pointer + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; recipeBookComponent G field_2929 + f Z widthTooNarrow H field_2931 + f Z buttonClicked I field_2930 + m (Lnet/minecraft/client/gui/GuiGraphics;FFFLorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;Lnet/minecraft/world/entity/LivingEntity;)V renderEntityInInventory a method_48472 + p 0 guiGraphics + p 1 x + p 2 y + p 3 scale + p 4 translate + p 5 pose + p 6 cameraOrientation + p 7 entity + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIFFFLnet/minecraft/world/entity/LivingEntity;)V renderEntityInInventoryFollowsMouse a method_2486 + p 0 guiGraphics + p 1 x1 + p 2 y1 + p 3 x2 + p 4 y2 + p 5 scale + p 6 yOffset + p 7 mouseX + p 8 mouseY + p 9 entity + m (Lnet/minecraft/client/gui/components/Button;)V method_19891 a method_19891 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/client/gui/GuiGraphics;)V method_29977 a method_29977 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player +c net/minecraft/client/gui/screens/inventory/ItemCombinerScreen fpu net/minecraft/class_4894 + f Lnet/minecraft/resources/ResourceLocation; menuResource E field_22794 + m ()V subInit E method_25445 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderErrorIcon c method_48467 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderFg d method_25444 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;)V + p 1 menu + p 2 playerInventory + p 3 title + p 4 menuResource +c net/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen fpv net/minecraft/class_3742 + f Lnet/minecraft/client/gui/components/EditBox; targetEdit A field_23349 + f Lnet/minecraft/client/gui/components/EditBox; poolEdit B field_23350 + f Lnet/minecraft/client/gui/components/EditBox; finalStateEdit C field_16519 + f Lnet/minecraft/client/gui/components/EditBox; selectionPriorityEdit D field_47123 + f Lnet/minecraft/client/gui/components/EditBox; placementPriorityEdit E field_47124 + f I levels F field_24052 + f Z keepJigsaws G field_25271 + f Lnet/minecraft/client/gui/components/CycleButton; jointButton H field_23351 + f Lnet/minecraft/client/gui/components/Button; doneButton I field_19103 + f Lnet/minecraft/client/gui/components/Button; generateButton J field_33958 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint K field_23352 + f Lnet/minecraft/network/chat/Component; JOINT_LABEL a field_26564 + f Lnet/minecraft/network/chat/Component; POOL_LABEL b field_26565 + f Lnet/minecraft/network/chat/Component; NAME_LABEL c field_26566 + f Lnet/minecraft/network/chat/Component; TARGET_LABEL r field_26567 + f Lnet/minecraft/network/chat/Component; FINAL_STATE_LABEL s field_26568 + f Lnet/minecraft/network/chat/Component; PLACEMENT_PRIORITY_LABEL u field_47119 + f Lnet/minecraft/network/chat/Component; PLACEMENT_PRIORITY_TOOLTIP v field_47120 + f Lnet/minecraft/network/chat/Component; SELECTION_PRIORITY_LABEL w field_47121 + f Lnet/minecraft/network/chat/Component; SELECTION_PRIORITY_TOOLTIP x field_47122 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity; jigsawEntity y field_16522 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit z field_23348 + m ()V onCancel C method_16349 + m ()V sendToServer D method_16348 + m ()V sendGenerate E method_27272 + m ()V updateValidity F method_20118 + m (Lnet/minecraft/client/gui/components/Button;)V method_19892 a method_19892 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)V method_32648 a method_32648 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32649 a method_32649 + m (Ljava/lang/String;)Z isValidResourceLocation a method_61042 + p 0 location + m (Lnet/minecraft/client/gui/components/Button;)V method_19893 b method_19893 + m (Ljava/lang/String;)I parseAsInt b method_54800 + p 1 string + m (Lnet/minecraft/client/gui/components/Button;)V method_27271 c method_27271 + m (Ljava/lang/String;)V method_26412 c method_26412 + m (Ljava/lang/String;)V method_20119 d method_20119 + m (Ljava/lang/String;)V method_20120 e method_20120 + m ()V onDone m method_16346 + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity;)V + p 1 jigsawEntity + m ()V +c net/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen$1 fpv$1 net/minecraft/class_3742$1 + f Lnet/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen; field_24053 a field_24053 + m (Lnet/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen;IIIILnet/minecraft/network/chat/Component;D)V +c net/minecraft/client/gui/screens/inventory/LecternScreen fpw net/minecraft/class_3935 + f Lnet/minecraft/world/inventory/LecternMenu; menu y field_17422 + f Lnet/minecraft/world/inventory/ContainerListener; listener z field_17423 + m ()Lnet/minecraft/world/inventory/LecternMenu; getMenu J method_17573 + m ()V bookChanged K method_17574 + m ()V pageChanged L method_17575 + m (Lnet/minecraft/client/gui/components/Button;)V method_19894 a method_19894 + m (Lnet/minecraft/client/gui/components/Button;)V method_19895 b method_19895 + m (I)V sendButtonClick g method_17572 + p 1 pageData + m (Lnet/minecraft/world/inventory/LecternMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title +c net/minecraft/client/gui/screens/inventory/LecternScreen$1 fpw$1 net/minecraft/class_3935$1 + f Lnet/minecraft/client/gui/screens/inventory/LecternScreen; field_17424 a field_17424 + m (Lnet/minecraft/client/gui/screens/inventory/LecternScreen;)V +c net/minecraft/client/gui/screens/inventory/LoomScreen fpx net/minecraft/class_494 + f Lnet/minecraft/resources/ResourceLocation; BANNER_SLOT_SPRITE E field_45481 + f Lnet/minecraft/resources/ResourceLocation; DYE_SLOT_SPRITE F field_45482 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SLOT_SPRITE G field_45483 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE H field_45476 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE I field_45477 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SELECTED_SPRITE J field_45478 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_HIGHLIGHTED_SPRITE K field_45479 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SPRITE L field_45480 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE M field_46186 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION N field_2966 + f I PATTERN_COLUMNS O field_32346 + f I PATTERN_ROWS P field_32347 + f I SCROLLER_WIDTH Q field_32348 + f I SCROLLER_HEIGHT R field_32349 + f I PATTERN_IMAGE_SIZE S field_32350 + f I SCROLLER_FULL_HEIGHT T field_32351 + f I PATTERNS_X U field_32352 + f I PATTERNS_Y V field_32353 + f Lnet/minecraft/client/model/geom/ModelPart; flag W field_21694 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; resultBannerPatterns X field_21841 + f Lnet/minecraft/world/item/ItemStack; bannerStack Y field_2955 + f Lnet/minecraft/world/item/ItemStack; dyeStack Z field_2954 + f Lnet/minecraft/world/item/ItemStack; patternStack aa field_2967 + f Z displayPatterns ab field_2965 + f Z hasMaxPatterns ac field_2961 + f F scrollOffs ad field_2968 + f Z scrolling ae field_2958 + f I startRow af field_39190 + m ()I totalRowCount E method_43774 + m ()V containerChanged F method_17576 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/core/Holder;II)V renderPattern a method_22692 + p 1 guiGraphics + p 2 patern + p 3 x + p 4 y + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/MenuAccess fpy net/minecraft/class_3936 + m ()Lnet/minecraft/world/inventory/AbstractContainerMenu; getMenu D method_17577 +c net/minecraft/client/gui/screens/inventory/MerchantScreen fpz net/minecraft/class_492 + f Lnet/minecraft/resources/ResourceLocation; OUT_OF_STOCK_SPRITE E field_45490 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_BACKGROUND_SPRITE F field_45491 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_CURRENT_SPRITE G field_45492 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_RESULT_SPRITE H field_45484 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE I field_45485 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE J field_45486 + f Lnet/minecraft/resources/ResourceLocation; TRADE_ARROW_OUT_OF_STOCK_SPRITE K field_45487 + f Lnet/minecraft/resources/ResourceLocation; TRADE_ARROW_SPRITE L field_45488 + f Lnet/minecraft/resources/ResourceLocation; DISCOUNT_STRIKETHRUOGH_SPRITE M field_45489 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_LOCATION N field_2950 + c The GUI texture for the villager merchant GUI. + f I TEXTURE_WIDTH O field_32354 + f I TEXTURE_HEIGHT P field_32355 + f I MERCHANT_MENU_PART_X Q field_32356 + f I PROGRESS_BAR_X R field_32357 + f I PROGRESS_BAR_Y S field_32358 + f I SELL_ITEM_1_X T field_32359 + f I SELL_ITEM_2_X U field_32360 + f I BUY_ITEM_X V field_32361 + f I LABEL_Y W field_32362 + f I NUMBER_OF_OFFER_BUTTONS X field_32363 + f I TRADE_BUTTON_X Y field_32364 + f I TRADE_BUTTON_HEIGHT Z field_32365 + f I TRADE_BUTTON_WIDTH aa field_32366 + f I SCROLLER_HEIGHT ab field_32367 + f I SCROLLER_WIDTH ac field_32368 + f I SCROLL_BAR_HEIGHT ad field_32369 + f I SCROLL_BAR_TOP_POS_Y ae field_32370 + f I SCROLL_BAR_START_X af field_32371 + f Lnet/minecraft/network/chat/Component; TRADES_LABEL ag field_26569 + f Lnet/minecraft/network/chat/Component; DEPRECATED_TOOLTIP ah field_26571 + f I shopItem ai field_19161 + c The integer value corresponding to the currently selected merchant recipe. + f [Lnet/minecraft/client/gui/screens/inventory/MerchantScreen$TradeOfferButton; tradeOfferButtons aj field_19162 + f I scrollOff ak field_19163 + f Z isDragging al field_19164 + m ()V postButtonClick E method_2496 + m (I)Z canScroll a method_20220 + p 1 numOffers + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/trading/MerchantOffer;)V renderProgressBar a method_19413 + p 1 guiGraphics + p 2 posX + p 3 posY + p 4 merchantOffer + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/trading/MerchantOffers;)V renderScroller a method_20221 + p 1 guiGraphics + p 2 posX + p 3 posY + p 4 merchantOffers + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;II)V renderAndDecorateCostA a method_20222 + p 1 guiGraphics + p 2 realCost + p 3 baseCost + p 4 x + p 5 y + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/trading/MerchantOffer;II)V renderButtonArrows a method_20223 + p 1 guiGraphics + p 2 merchantOffers + p 3 posX + p 4 posY + m (Lnet/minecraft/client/gui/components/Button;)V method_19896 a method_19896 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20227 a method_20227 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20225 b method_20225 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20226 c method_20226 + m (Lnet/minecraft/world/inventory/MerchantMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/MerchantScreen$TradeOfferButton fpz$a net/minecraft/class_492$class_493 + f I index a field_19165 + f Lnet/minecraft/client/gui/screens/inventory/MerchantScreen; field_19166 b field_19166 + m ()I getIndex a method_20228 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderToolTip a method_25352 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;IIILnet/minecraft/client/gui/components/Button$OnPress;)V + p 2 x + p 3 y + p 4 index + p 5 onPress +c net/minecraft/client/gui/screens/inventory/MinecartCommandBlockEditScreen fqa net/minecraft/class_496 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock u field_2976 + m (Lnet/minecraft/world/level/BaseCommandBlock;)V + p 1 commandBlock +c net/minecraft/client/gui/screens/inventory/PageButton fqb net/minecraft/class_474 + f Lnet/minecraft/resources/ResourceLocation; PAGE_FORWARD_HIGHLIGHTED_SPRITE a field_45493 + f Lnet/minecraft/resources/ResourceLocation; PAGE_FORWARD_SPRITE b field_45494 + f Lnet/minecraft/resources/ResourceLocation; PAGE_BACKWARD_HIGHLIGHTED_SPRITE c field_45495 + f Lnet/minecraft/resources/ResourceLocation; PAGE_BACKWARD_SPRITE d field_45496 + f Z isForward u field_2851 + f Z playTurnSound v field_18977 + m (IIZLnet/minecraft/client/gui/components/Button$OnPress;Z)V + p 1 x + p 2 y + p 3 isForward + p 4 onPress + p 5 playTurnSound + m ()V +c net/minecraft/client/gui/screens/inventory/ShulkerBoxScreen fqc net/minecraft/class_495 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_TEXTURE E field_2973 + m (Lnet/minecraft/world/inventory/ShulkerBoxMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/SignEditScreen fqd net/minecraft/class_498 + f F MAGIC_SCALE_NUMBER b field_40436 + f F MAGIC_TEXT_SCALE c field_40437 + f Lorg/joml/Vector3f; TEXT_SCALE r field_40438 + f Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; signModel s field_21525 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + m ()V +c net/minecraft/client/gui/screens/inventory/SmithingScreen fqe net/minecraft/class_4895 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45498 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SMITHING_TEMPLATE_ARMOR_TRIM F field_42052 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SMITHING_TEMPLATE_NETHERITE_UPGRADE G field_42053 + f Lnet/minecraft/network/chat/Component; MISSING_TEMPLATE_TOOLTIP H field_42054 + f Lnet/minecraft/network/chat/Component; ERROR_TOOLTIP I field_42055 + f Ljava/util/List; EMPTY_SLOT_SMITHING_TEMPLATES J field_42056 + f I TITLE_LABEL_X K field_42057 + f I TITLE_LABEL_Y L field_42058 + f I ERROR_ICON_WIDTH M field_42059 + f I ERROR_ICON_HEIGHT N field_42060 + f I ERROR_ICON_X O field_42061 + f I ERROR_ICON_Y P field_42062 + f I TOOLTIP_WIDTH Q field_42063 + f I ARMOR_STAND_Y_ROT R field_42068 + f I ARMOR_STAND_X_ROT S field_42047 + f Lorg/joml/Vector3f; ARMOR_STAND_TRANSLATION T field_45497 + f Lorg/joml/Quaternionf; ARMOR_STAND_ANGLE U field_42048 + f I ARMOR_STAND_SCALE V field_42049 + f I ARMOR_STAND_OFFSET_Y W field_42050 + f I ARMOR_STAND_OFFSET_X X field_42051 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; templateIcon Y field_42064 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; baseIcon Z field_42065 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; additionalIcon aa field_42066 + f Lnet/minecraft/world/entity/decoration/ArmorStand; armorStandPreview ab field_42067 + m ()Ljava/util/Optional; getTemplateItem F method_48473 + m ()Z hasRecipeError G method_48474 + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/network/chat/Component;)V method_48475 a method_48475 + m (Lnet/minecraft/world/item/ItemStack;)V updateArmorStandPreview b method_48641 + p 1 stack + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderOnboardingTooltips d method_48476 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/world/inventory/SmithingMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/SmokerScreen fqf net/minecraft/class_3874 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45499 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45500 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17128 + m (Lnet/minecraft/world/inventory/SmokerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/StonecutterScreen fqg net/minecraft/class_3979 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE E field_45503 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE F field_45504 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_SELECTED_SPRITE G field_45505 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_HIGHLIGHTED_SPRITE H field_45501 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_SPRITE I field_45502 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION J field_17673 + f I SCROLLER_WIDTH K field_32372 + f I SCROLLER_HEIGHT L field_32373 + f I RECIPES_COLUMNS M field_32374 + f I RECIPES_ROWS N field_32375 + f I RECIPES_IMAGE_SIZE_WIDTH O field_32376 + f I RECIPES_IMAGE_SIZE_HEIGHT P field_32377 + f I SCROLLER_FULL_HEIGHT Q field_32378 + f I RECIPES_X R field_32379 + f I RECIPES_Y S field_32380 + f F scrollOffs T field_17674 + f Z scrolling U field_17670 + c Is {@code true} if the player clicked on the scroll wheel in the GUI. + f I startIndex V field_17671 + c The index of the first recipe to display.\nThe number of recipes displayed at any time is 12 (4 recipes per row, and 3 rows). If the player scrolled down one row, this value would be 4 (representing the index of the first slot on the second row). + f Z displayRecipes W field_17672 + m ()I getOffscreenRows E method_17953 + m ()Z isScrollBarActive F method_17954 + m ()V containerChanged G method_17955 + c Called every time this screen's container is changed (is marked as dirty). + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderButtons a method_17952 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 x + p 5 y + p 6 lastVisibleElementIndex + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderRecipes b method_17951 + p 1 guiGraphics + p 2 x + p 3 y + p 4 startIndex + m (Lnet/minecraft/world/inventory/StonecutterMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen fqh net/minecraft/class_497 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity; structure A field_2980 + f Lnet/minecraft/world/level/block/Mirror; initialMirror B field_2996 + f Lnet/minecraft/world/level/block/Rotation; initialRotation C field_3003 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; initialMode D field_3004 + f Z initialEntityIgnoring E field_2985 + f Z initialShowAir F field_2997 + f Z initialShowBoundingBox G field_2983 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit H field_3005 + f Lnet/minecraft/client/gui/components/EditBox; posXEdit I field_2982 + f Lnet/minecraft/client/gui/components/EditBox; posYEdit J field_2999 + f Lnet/minecraft/client/gui/components/EditBox; posZEdit K field_3010 + f Lnet/minecraft/client/gui/components/EditBox; sizeXEdit L field_2988 + f Lnet/minecraft/client/gui/components/EditBox; sizeYEdit M field_2998 + f Lnet/minecraft/client/gui/components/EditBox; sizeZEdit N field_2978 + f Lnet/minecraft/client/gui/components/EditBox; integrityEdit O field_3000 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit P field_2992 + f Lnet/minecraft/client/gui/components/EditBox; dataEdit Q field_2986 + f Lnet/minecraft/client/gui/components/Button; saveButton R field_2987 + f Lnet/minecraft/client/gui/components/Button; loadButton S field_3006 + f Lnet/minecraft/client/gui/components/Button; rot0Button T field_2995 + f Lnet/minecraft/client/gui/components/Button; rot90Button U field_2981 + f Lnet/minecraft/client/gui/components/Button; rot180Button V field_3007 + f Lnet/minecraft/client/gui/components/Button; rot270Button W field_2993 + f Lnet/minecraft/client/gui/components/Button; detectButton X field_3009 + f Lnet/minecraft/client/gui/components/CycleButton; includeEntitiesButton Y field_2990 + f Lnet/minecraft/client/gui/components/CycleButton; mirrorButton Z field_2979 + f Lnet/minecraft/network/chat/Component; NAME_LABEL a field_26572 + f Lnet/minecraft/client/gui/components/CycleButton; toggleAirButton aa field_3008 + f Lnet/minecraft/client/gui/components/CycleButton; toggleBoundingBox ab field_3001 + f Ljava/text/DecimalFormat; decimalFormat ac field_2991 + f Lnet/minecraft/network/chat/Component; POSITION_LABEL b field_26573 + f Lnet/minecraft/network/chat/Component; SIZE_LABEL c field_26574 + f Lnet/minecraft/network/chat/Component; INTEGRITY_LABEL r field_26575 + f Lnet/minecraft/network/chat/Component; CUSTOM_DATA_LABEL s field_26576 + f Lnet/minecraft/network/chat/Component; INCLUDE_ENTITIES_LABEL u field_26577 + f Lnet/minecraft/network/chat/Component; DETECT_SIZE_LABEL v field_26578 + f Lnet/minecraft/network/chat/Component; SHOW_AIR_LABEL w field_26579 + f Lnet/minecraft/network/chat/Component; SHOW_BOUNDING_BOX_LABEL x field_26580 + f Lcom/google/common/collect/ImmutableList; ALL_MODES y field_27993 + f Lcom/google/common/collect/ImmutableList; DEFAULT_MODES z field_27994 + m ()V onCancel C method_2514 + m ()V updateDirectionButtons D method_2510 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType;)Z sendToServer a method_2516 + p 1 updateType + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)V updateMode a method_32650 + p 1 structureMode + m (Lnet/minecraft/client/gui/components/Button;)V method_19898 a method_19898 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/Mirror;)V method_32651 a method_32651 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/state/properties/StructureMode;)V method_32652 a method_32652 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32653 a method_32653 + m (Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen;Ljava/lang/String;CI)Z method_16017 a method_16017 + m (Ljava/lang/String;)J parseSeed a method_2504 + p 1 seed + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Lnet/minecraft/network/chat/Component; method_32654 b method_32654 + m (Lnet/minecraft/client/gui/components/Button;)V method_19899 b method_19899 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32655 b method_32655 + m (Ljava/lang/String;)F parseIntegrity b method_2500 + p 1 integrity + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Z method_32656 c method_32656 + m (Lnet/minecraft/client/gui/components/Button;)V method_19900 c method_19900 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32657 c method_32657 + m (Ljava/lang/String;)I parseCoordinate c method_2517 + p 1 coordinate + m (Lnet/minecraft/client/gui/components/Button;)V method_19901 d method_19901 + m (Lnet/minecraft/client/gui/components/Button;)V method_19906 e method_19906 + m (Lnet/minecraft/client/gui/components/Button;)V method_19908 f method_19908 + m (Lnet/minecraft/client/gui/components/Button;)V method_19909 g method_19909 + m (Lnet/minecraft/client/gui/components/Button;)V method_19910 h method_19910 + m (Lnet/minecraft/client/gui/components/Button;)V method_19911 i method_19911 + m ()V onDone m method_2515 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V + p 1 structure + m ()V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen$1 fqh$1 net/minecraft/class_497$1 + f Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen; field_3023 d field_3023 + m (Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen$2 fqh$2 net/minecraft/class_497$2 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_3025 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StructureMode b field_3024 + m ()V +c net/minecraft/client/gui/screens/inventory/package-info fqi net/minecraft/class_6217 +c net/minecraft/client/gui/screens/inventory/tooltip/BelowOrAboveWidgetTooltipPositioner fqj net/minecraft/class_7999 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; screenRectangle a field_46722 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V + p 1 screenRectangle +c net/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip fqk net/minecraft/class_9805 + f I SKIN_SIZE a field_52140 + f I PADDING b field_52141 + f Ljava/util/List; activePlayers c field_52142 + m (Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip$ActivePlayersTooltip;)V + p 1 tooltip +c net/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip$ActivePlayersTooltip fqk$a net/minecraft/class_9805$class_9806 + f Ljava/util/List; profiles a comp_2848 + m ()Ljava/util/List; profiles a comp_2848 + m (Ljava/util/List;)V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip fql net/minecraft/class_5682 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45506 + f I MARGIN_Y b field_32381 + f I BORDER_WIDTH c field_32382 + f I SLOT_SIZE_X d field_32384 + f I SLOT_SIZE_Y e field_32385 + f Lnet/minecraft/world/item/component/BundleContents; contents f field_49537 + m (IIIZLnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;)V renderSlot a method_33287 + p 1 x + p 2 y + p 3 itemIndex + p 4 isBundleFull + p 5 guiGraphics + p 6 font + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture;)V blit a method_33288 + p 1 guiGraphics + p 2 x + p 3 y + p 4 texture + m ()I backgroundWidth b method_52755 + m ()I backgroundHeight c method_52756 + m ()I gridSizeX d method_33289 + m ()I gridSizeY e method_33290 + m (Lnet/minecraft/world/item/component/BundleContents;)V + p 1 contents + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture fql$a net/minecraft/class_5682$class_5771 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; BLOCKED_SLOT a field_28362 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; SLOT b field_28361 + f Lnet/minecraft/resources/ResourceLocation; sprite c field_45507 + f I w d field_28370 + f I h e field_28371 + f [Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; $VALUES f field_28372 + m ()[Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; $values a method_36887 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;II)V + p 3 sprite + p 4 w + p 5 h + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTextTooltip fqm net/minecraft/class_5683 + f Lnet/minecraft/util/FormattedCharSequence; text a field_27997 + m (Lnet/minecraft/util/FormattedCharSequence;)V + p 1 text +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent fqn net/minecraft/class_5684 + m ()I getHeight a method_32661 + m (Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent; create a method_32662 + p 0 text + m (Lnet/minecraft/world/inventory/tooltip/TooltipComponent;)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent; create a method_32663 + p 0 visualTooltipComponent + m (Lnet/minecraft/client/gui/Font;)I getWidth a method_32664 + p 1 font + m (Lnet/minecraft/client/gui/Font;IILnet/minecraft/client/gui/GuiGraphics;)V renderImage a method_32666 + p 1 font + p 2 x + p 3 y + p 4 guiGraphics + m (Lnet/minecraft/client/gui/Font;IILorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V renderText a method_32665 + p 1 font + p 2 mouseX + p 3 mouseY + p 4 matrix + p 5 bufferSource +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner fqo net/minecraft/class_8000 + m (IIIIII)Lorg/joml/Vector2ic; positionTooltip a method_47944 + p 1 screenWidth + p 2 screenHeight + p 3 mouseX + p 4 mouseY + p 5 tooltipWidth + p 6 tooltipHeight +c net/minecraft/client/gui/screens/inventory/tooltip/DefaultTooltipPositioner fqp net/minecraft/class_8001 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; INSTANCE a field_41687 + m (IILorg/joml/Vector2i;II)V positionTooltip a method_47945 + p 1 screenWidth + p 2 screenHeight + p 3 tooltipPos + p 4 tooltipWidth + p 5 tooltipHeight + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/MenuTooltipPositioner fqq net/minecraft/class_8092 + f I MAX_OVERLAP_WITH_WIDGET a field_42157 + f I MAX_DISTANCE_TO_WIDGET b field_42158 + f I MARGIN c field_42159 + f I MOUSE_OFFSET_X d field_42160 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; screenRectangle e field_46723 + m (III)I getOffset a method_48642 + p 0 mouseY + p 1 widgetY + p 2 widgetHeight + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V + p 1 screenRectangle +c net/minecraft/client/gui/screens/inventory/tooltip/TooltipRenderUtil fqr net/minecraft/class_8002 + f I MOUSE_OFFSET a field_41688 + f I PADDING_LEFT b field_41689 + f I PADDING_RIGHT c field_41690 + f I PADDING_TOP d field_41691 + f I PADDING_BOTTOM e field_41692 + f I PADDING f field_41693 + f I BACKGROUND_COLOR g field_41694 + f I BORDER_COLOR_TOP h field_41695 + f I BORDER_COLOR_BOTTOM i field_41696 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderTooltipBackground a method_47946 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)V renderVerticalLineGradient a method_47947 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 topColor + p 6 bottomColor + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIII)V renderFrameGradient a method_47948 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + p 6 topColor + p 7 bottomColor + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderVerticalLine b method_47949 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)V renderRectangle b method_47950 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + p 6 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderHorizontalLine c method_47951 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 color + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/package-info fqs net/minecraft/class_6664 +c net/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen fqt net/minecraft/class_500 + f Lnet/minecraft/client/gui/components/Button; deleteButton A field_3047 + f Lnet/minecraft/client/multiplayer/ServerData; editingServer B field_3051 + f Lnet/minecraft/client/server/LanServerDetection$LanServerList; lanServerList C field_3046 + f Lnet/minecraft/client/server/LanServerDetection$LanServerDetector; lanServerDetector D field_3045 + f Z initedOnce E field_3048 + f I BUTTON_ROW_WIDTH a field_41849 + f I TOP_ROW_BUTTON_WIDTH b field_41850 + f I LOWER_ROW_BUTTON_WIDTH c field_41851 + f I FOOTER_HEIGHT r field_41852 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList; serverSelectionList s field_3043 + f Lorg/slf4j/Logger; LOGGER u field_3044 + f Lnet/minecraft/client/multiplayer/ServerStatusPinger; pinger v field_3037 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen w field_3049 + f Lnet/minecraft/client/multiplayer/ServerList; servers x field_3040 + f Lnet/minecraft/client/gui/components/Button; editButton y field_3041 + f Lnet/minecraft/client/gui/components/Button; selectButton z field_3050 + m ()V onSelectedChange C method_20121 + m ()Lnet/minecraft/client/multiplayer/ServerStatusPinger; getPinger D method_2538 + m ()Lnet/minecraft/client/multiplayer/ServerList; getServers E method_2529 + m ()V refreshServerList F method_2534 + m (Lnet/minecraft/client/gui/components/Button;)V method_19912 a method_19912 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry;)V setSelected a method_2531 + p 1 selected + m (Lnet/minecraft/client/multiplayer/ServerData;)V join a method_2548 + p 1 server + m (Lnet/minecraft/client/gui/components/Button;)V method_19913 b method_19913 + m (Lnet/minecraft/client/gui/components/Button;)V method_19914 c method_19914 + m (Z)V deleteCallback c method_20377 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19915 d method_19915 + m (Lnet/minecraft/client/gui/components/Button;)V method_19916 e method_19916 + m (Lnet/minecraft/client/gui/components/Button;)V method_19917 f method_19917 + m (Z)V editServerCallback f method_20378 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19918 g method_19918 + m (Z)V addServerCallback g method_20379 + p 1 confirmed + m (Z)V directJoinCallback h method_20380 + p 1 confirmed + m ()V joinSelectedServer m method_2536 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/multiplayer/SafetyScreen fqu net/minecraft/class_4749 + f Lnet/minecraft/network/chat/Component; TITLE b field_21843 + f Lnet/minecraft/network/chat/Component; CONTENT c field_21844 + f Lnet/minecraft/network/chat/Component; CHECK r field_21845 + f Lnet/minecraft/network/chat/Component; NARRATION s field_21846 + f Lnet/minecraft/client/gui/screens/Screen; previous u field_39354 + m (Lnet/minecraft/client/gui/components/Button;)V method_57751 a method_57751 + m (Lnet/minecraft/client/gui/components/Button;)V method_57752 b method_57752 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 previous + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen fqv net/minecraft/class_9807 + f I LINK_BUTTON_WIDTH a field_52143 + f I DEFAULT_ITEM_HEIGHT b field_52144 + f Lnet/minecraft/network/chat/Component; TITLE c field_52145 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen r field_52146 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkList; list s field_52147 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout u field_52148 + f Lnet/minecraft/server/ServerLinks; links v field_52149 + m (Lnet/minecraft/client/gui/components/Button;)V method_60875 a method_60875 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60876 a method_60876 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/ServerLinks;)V + p 1 lastScreen + p 2 links + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkList fqv$a net/minecraft/class_9807$class_9808 + m (ILnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkListEntry;)V method_60877 a method_60877 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;Lnet/minecraft/server/ServerLinks$Entry;)V method_60878 a method_60878 + m (Lnet/minecraft/client/Minecraft;ILnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;)V + p 1 minecraft + p 2 width + p 3 parent +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkListEntry fqv$b net/minecraft/class_9807$class_9809 + f Lnet/minecraft/client/gui/components/AbstractWidget; button a field_52150 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/ServerLinks$Entry;)V + p 1 screen + p 2 entry +c net/minecraft/client/gui/screens/multiplayer/ServerReconfigScreen fqw net/minecraft/class_8671 + f I DISCONNECT_TIME a field_45508 + f Lnet/minecraft/network/Connection; connection b field_45509 + f Lnet/minecraft/client/gui/components/Button; disconnectButton c field_45510 + f I delayTicker r field_45511 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout s field_45512 + m (Lnet/minecraft/client/gui/components/Button;)V method_52757 a method_52757 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerReconfigScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52758 a method_52758 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/Connection;)V + p 1 title + p 2 connection +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList fqx net/minecraft/class_4267 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_HIGHLIGHTED_SPRITE A field_45530 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_SPRITE B field_45513 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_HIGHLIGHTED_SPRITE C field_45514 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_SPRITE D field_45515 + f Lorg/slf4j/Logger; LOGGER E field_19104 + f Ljava/util/concurrent/ThreadPoolExecutor; THREAD_POOL F field_19105 + f Lnet/minecraft/network/chat/Component; SCANNING_LABEL G field_26581 + f Lnet/minecraft/network/chat/Component; CANT_RESOLVE_TEXT H field_26582 + f Lnet/minecraft/network/chat/Component; CANT_CONNECT_TEXT I field_26583 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_STATUS J field_41853 + f Lnet/minecraft/network/chat/Component; NO_CONNECTION_STATUS K field_41854 + f Lnet/minecraft/network/chat/Component; PINGING_STATUS L field_41855 + f Lnet/minecraft/network/chat/Component; ONLINE_STATUS M field_41856 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen N field_19108 + f Ljava/util/List; onlineServers O field_19109 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry; lanHeader P field_19110 + f Ljava/util/List; networkServers Q field_19111 + f Lnet/minecraft/resources/ResourceLocation; INCOMPATIBLE_SPRITE a field_45516 + f Lnet/minecraft/resources/ResourceLocation; UNREACHABLE_SPRITE m field_45517 + f Lnet/minecraft/resources/ResourceLocation; PING_1_SPRITE n field_45518 + f Lnet/minecraft/resources/ResourceLocation; PING_2_SPRITE o field_45519 + f Lnet/minecraft/resources/ResourceLocation; PING_3_SPRITE p field_45520 + f Lnet/minecraft/resources/ResourceLocation; PING_4_SPRITE q field_45521 + f Lnet/minecraft/resources/ResourceLocation; PING_5_SPRITE r field_45522 + f Lnet/minecraft/resources/ResourceLocation; PINGING_1_SPRITE s field_45523 + f Lnet/minecraft/resources/ResourceLocation; PINGING_2_SPRITE u field_45524 + f Lnet/minecraft/resources/ResourceLocation; PINGING_3_SPRITE v field_45525 + f Lnet/minecraft/resources/ResourceLocation; PINGING_4_SPRITE w field_45526 + f Lnet/minecraft/resources/ResourceLocation; PINGING_5_SPRITE x field_45527 + f Lnet/minecraft/resources/ResourceLocation; JOIN_HIGHLIGHTED_SPRITE y field_45528 + f Lnet/minecraft/resources/ResourceLocation; JOIN_SPRITE z field_45529 + m ()V refreshEntries J method_20131 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry;)V setSelected a method_20122 + p 1 entry + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;I)I method_20124 a method_20124 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_22109 a method_22109 + m (Lnet/minecraft/client/multiplayer/ServerList;)V updateOnlineServers a method_20125 + p 1 servers + m (Ljava/util/List;)V updateNetworkServers a method_20126 + p 1 lanServers + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_36888 b method_36888 + m ()V removed c method_52204 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_36889 c method_36889 + m (Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/Minecraft;IIII)V + p 1 screen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$1 fqx$1 net/minecraft/class_4267$1 + f [I $SwitchMap$net$minecraft$client$multiplayer$ServerData$State a field_47851 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry fqx$a net/minecraft/class_4267$class_504 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$LANHeader fqx$b net/minecraft/class_4267$class_4268 + f Lnet/minecraft/client/Minecraft; minecraft a field_19112 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$NetworkServerEntry fqx$c net/minecraft/class_4267$class_4269 + f Lnet/minecraft/client/Minecraft; minecraft a field_19113 + f Lnet/minecraft/client/server/LanServer; serverData b field_19114 + f I ICON_WIDTH c field_32386 + f Lnet/minecraft/network/chat/Component; LAN_SERVER_HEADER d field_26588 + f Lnet/minecraft/network/chat/Component; HIDDEN_ADDRESS_TEXT e field_26589 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen f field_19115 + f J lastClickTime g field_19116 + m ()Lnet/minecraft/client/server/LanServer; getServerData b method_20132 + m ()Lnet/minecraft/network/chat/Component; getServerNarration c method_48273 + m (Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/server/LanServer;)V + p 1 screen + p 2 serverData + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$OnlineServerEntry fqx$d net/minecraft/class_4267$class_4270 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList; field_19117 a field_19117 + f I ICON_WIDTH b field_32387 + f I ICON_HEIGHT c field_32388 + f I SPACING d field_47852 + f I STATUS_ICON_WIDTH e field_47853 + f I STATUS_ICON_HEIGHT f field_47854 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen g field_19118 + f Lnet/minecraft/client/Minecraft; minecraft h field_19119 + f Lnet/minecraft/client/multiplayer/ServerData; serverData i field_19120 + f Lnet/minecraft/client/gui/screens/FaviconTexture; icon j field_19123 + f [B lastIconBytes k field_42874 + f J lastClickTime l field_19124 + f Ljava/util/List; onlinePlayersTooltip m field_47855 + f Lnet/minecraft/resources/ResourceLocation; statusIcon n field_47856 + f Lnet/minecraft/network/chat/Component; statusIconTooltip o field_47857 + m (II)V swap a method_22110 + p 1 pos1 + p 2 pos2 + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/resources/ResourceLocation;)V drawIcon a method_20134 + p 1 guiGraphics + p 2 x + p 3 y + p 4 icon + m ([B)Z uploadServerIcon a method_49300 + p 1 iconBytes + m ()V updateServerList b method_29978 + m ()Lnet/minecraft/client/multiplayer/ServerData; getServerData c method_20133 + m ()V refreshStatus d method_55815 + m ()Z canJoin e method_20136 + m ()V method_20138 f method_20138 + m ()V method_55816 h method_55816 + m ()V method_29980 i method_29980 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/multiplayer/ServerData;)V + p 2 screen + p 3 serverData +c net/minecraft/client/gui/screens/multiplayer/WarningScreen fqy net/minecraft/class_7065 + f Lnet/minecraft/client/gui/components/Checkbox; stopShowing a field_37217 + f I MESSAGE_PADDING b field_49538 + f Lnet/minecraft/network/chat/Component; message c field_37222 + f Lnet/minecraft/network/chat/Component; check r field_37220 + f Lnet/minecraft/network/chat/Component; narration s field_37221 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; messageWidget u field_49539 + f Lnet/minecraft/client/gui/layouts/FrameLayout; layout v field_49540 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_57753 a method_57753 + m (Lnet/minecraft/client/gui/screens/multiplayer/WarningScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57754 a method_57754 + m ()Lnet/minecraft/client/gui/layouts/Layout; addFooterButtons m method_57750 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 content + p 3 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 content + p 3 check + p 4 narration +c net/minecraft/client/gui/screens/multiplayer/package-info fqz net/minecraft/class_6218 +c net/minecraft/client/gui/screens/options/AccessibilityOptionsScreen fra net/minecraft/class_4189 + f Lnet/minecraft/network/chat/Component; TITLE a field_49492 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41839 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_31384 a method_31384 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/ChatOptionsScreen frb net/minecraft/class_404 + f Lnet/minecraft/network/chat/Component; TITLE a field_49493 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_60327 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/FontOptionsScreen frc net/minecraft/class_9246 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_57041 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options +c net/minecraft/client/gui/screens/options/LanguageSelectScreen frd net/minecraft/class_426 + f Lnet/minecraft/network/chat/Component; WARNING_LABEL a field_26543 + f I FOOTER_HEIGHT u field_49497 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList; languageSelectionList v field_2486 + f Lnet/minecraft/client/resources/language/LanguageManager; languageManager w field_2488 + m ()V onDone F method_52184 + m (Lnet/minecraft/client/gui/components/Button;)V method_57729 a method_57729 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;)Lnet/minecraft/client/gui/Font; method_60328 a method_60328 + m (Lnet/minecraft/client/gui/components/Button;)V method_57730 b method_57730 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;)Lnet/minecraft/client/gui/Font; method_61043 b method_61043 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;Lnet/minecraft/client/resources/language/LanguageManager;)V + p 1 lastScreen + p 2 options + p 3 languageManager + m ()V +c net/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList frd$a net/minecraft/class_426$class_4195 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen; field_18744 a field_18744 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList;)I method_20101 a method_20101 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/resources/language/LanguageInfo;)V method_48261 a method_48261 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList$Entry frd$a$a net/minecraft/class_426$class_4195$class_4194 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList; field_19100 a field_19100 + f Ljava/lang/String; code b field_41846 + f Lnet/minecraft/network/chat/Component; language c field_18743 + f J lastClickTime d field_44921 + m ()V select b method_19381 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList;Ljava/lang/String;Lnet/minecraft/client/resources/language/LanguageInfo;)V + p 2 code + p 3 languageInfo +c net/minecraft/client/gui/screens/options/MouseSettingsScreen fre net/minecraft/class_4288 + f Lnet/minecraft/network/chat/Component; TITLE a field_49498 + m (I)[Lnet/minecraft/client/OptionInstance; method_60330 a method_60330 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41841 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OnlineOptionsScreen frf net/minecraft/class_6777 + f Lnet/minecraft/network/chat/Component; TITLE a field_49500 + f Lnet/minecraft/client/OptionInstance; difficultyDisplay u field_41344 + m (Lnet/minecraft/world/Difficulty;Lnet/minecraft/network/chat/Component;Lcom/mojang/datafixers/util/Unit;)Lnet/minecraft/network/chat/Component; method_60331 a method_60331 + m (Lcom/mojang/datafixers/util/Unit;)V method_60332 a method_60332 + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/Minecraft;)[Lnet/minecraft/client/OptionInstance; options a method_60333 + p 1 options + p 2 minecraft + m (Lnet/minecraft/client/multiplayer/ClientLevel;)Lnet/minecraft/client/OptionInstance; method_60334 a method_60334 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OptionsScreen frg net/minecraft/class_429 + f Lnet/minecraft/network/chat/Component; CREDITS_AND_ATTRIBUTION A field_43145 + f I COLUMNS B field_41354 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_49502 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen D field_2501 + f Lnet/minecraft/client/Options; options E field_2502 + f Lnet/minecraft/client/gui/components/CycleButton; difficultyButton F field_2500 + f Lnet/minecraft/client/gui/components/LockIconButton; lockButton G field_2503 + f Lnet/minecraft/network/chat/Component; TITLE a field_49501 + f Lnet/minecraft/network/chat/Component; SKIN_CUSTOMIZATION b field_41345 + f Lnet/minecraft/network/chat/Component; SOUNDS c field_41346 + f Lnet/minecraft/network/chat/Component; VIDEO r field_41347 + f Lnet/minecraft/network/chat/Component; CONTROLS s field_41348 + f Lnet/minecraft/network/chat/Component; LANGUAGE u field_41349 + f Lnet/minecraft/network/chat/Component; CHAT v field_41350 + f Lnet/minecraft/network/chat/Component; RESOURCEPACK w field_41351 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY x field_41352 + f Lnet/minecraft/network/chat/Component; TELEMETRY y field_41353 + f Lnet/minecraft/client/gui/components/Tooltip; TELEMETRY_DISABLED_TOOLTIP z field_50221 + m ()Lnet/minecraft/client/gui/screens/Screen; method_49740 C method_49740 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47629 D method_47629 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47630 E method_47630 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47631 F method_47631 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19825 G method_19825 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19826 J method_19826 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19827 K method_19827 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19828 L method_19828 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19829 M method_19829 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19830 N method_19830 + m (IILjava/lang/String;Lnet/minecraft/client/Minecraft;)Lnet/minecraft/client/gui/components/CycleButton; createDifficultyButton a method_39486 + p 0 x + p 1 y + p 2 name + p 3 minecraft + m (Lnet/minecraft/server/packs/repository/PackRepository;)V applyPacks a method_49626 + p 1 packRepository + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_39487 a method_39487 + m (Lnet/minecraft/client/gui/components/Button;)V method_47623 a method_47623 + m (Lnet/minecraft/client/gui/screens/options/OptionsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60335 a method_60335 + m (Ljava/util/function/Supplier;Lnet/minecraft/client/gui/components/Button;)V method_47624 a method_47624 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/client/gui/components/Button; openScreenButton a method_47625 + p 1 name + p 2 screenSupplier + m (Lnet/minecraft/client/gui/components/Button;)V method_47626 b method_47626 + m (Lnet/minecraft/client/gui/components/Button;)V method_47627 c method_47627 + m (Z)V lockCallback c method_20374 + p 1 confirmed + m ()Lnet/minecraft/client/gui/layouts/LayoutElement; createOnlineButton m method_47628 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OptionsSubScreen frh net/minecraft/class_4667 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen b field_21335 + f Lnet/minecraft/client/Options; options c field_21336 + f Lnet/minecraft/client/gui/components/OptionsList; list r field_51824 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout s field_49503 + m ()V addFooter C method_31387 + m ()V addContents D method_60329 + m ()V addTitle E method_57732 + m (Lnet/minecraft/client/gui/components/Button;)V method_57731 a method_57731 + m (Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60336 a method_60336 + m ()V addOptions m method_60325 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;Lnet/minecraft/network/chat/Component;)V + p 1 lastScreen + p 2 options + p 3 title +c net/minecraft/client/gui/screens/options/SkinCustomizationScreen fri net/minecraft/class_440 + f Lnet/minecraft/network/chat/Component; TITLE a field_49512 + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_60337 a method_60337 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/SoundOptionsScreen frj net/minecraft/class_443 + f Lnet/minecraft/network/chat/Component; TITLE a field_49513 + m ()[Lnet/minecraft/client/OptionInstance; getAllSoundOptionsExceptMaster F method_45631 + m (I)[Lnet/minecraft/client/OptionInstance; method_45627 a method_45627 + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; method_45628 a method_45628 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; buttonOptions a method_45629 + p 0 options + m (Lnet/minecraft/sounds/SoundSource;)Z method_45630 b method_45630 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/UnsupportedGraphicsWarningScreen frk net/minecraft/class_5405 + f I BUTTON_PADDING a field_32260 + f I BUTTON_MARGIN b field_32261 + f I BUTTON_HEIGHT c field_32262 + f Lnet/minecraft/network/chat/Component; narrationMessage r field_33811 + f Ljava/util/List; message s field_25675 + f Lcom/google/common/collect/ImmutableList; buttonOptions u field_25676 + f Lnet/minecraft/client/gui/components/MultiLineLabel; messageLines v field_25677 + f I contentTop w field_25678 + f I buttonWidth x field_25679 + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Lcom/google/common/collect/ImmutableList;)V + p 1 title + p 2 message + p 3 buttonOptions +c net/minecraft/client/gui/screens/options/UnsupportedGraphicsWarningScreen$ButtonOption frk$a net/minecraft/class_5405$class_5406 + f Lnet/minecraft/network/chat/Component; message a field_25680 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress b field_25681 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 onPress +c net/minecraft/client/gui/screens/options/VideoSettingsScreen frl net/minecraft/class_446 + f I oldMipmaps A field_19186 + f Lnet/minecraft/network/chat/Component; TITLE a field_49515 + f Lnet/minecraft/network/chat/Component; FABULOUS u field_25682 + f Lnet/minecraft/network/chat/Component; WARNING_MESSAGE v field_25683 + f Lnet/minecraft/network/chat/Component; WARNING_TITLE w field_25684 + f Lnet/minecraft/network/chat/Component; BUTTON_ACCEPT x field_25685 + f Lnet/minecraft/network/chat/Component; BUTTON_CANCEL y field_25686 + f Lnet/minecraft/client/renderer/GpuWarnlistManager; gpuWarnlistManager z field_25688 + m (Lcom/mojang/blaze3d/platform/Monitor;Lcom/mojang/blaze3d/platform/Window;Ljava/lang/Integer;)V method_60338 a method_60338 + m (Lcom/mojang/blaze3d/platform/Monitor;Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_60339 a method_60339 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41846 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_30052 a method_30052 + m (Lnet/minecraft/client/gui/components/Button;)V method_30053 b method_30053 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 minecraft + p 3 options + m ()V +c net/minecraft/client/gui/screens/options/controls/ControlsScreen frm net/minecraft/class_458 + f Lnet/minecraft/network/chat/Component; TITLE a field_49532 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_58232 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_60340 a method_60340 + m (Lnet/minecraft/client/gui/components/Button;)V method_60341 b method_60341 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList frn net/minecraft/class_459 + f I ITEM_HEIGHT a field_49533 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsScreen; keyBindsScreen m field_2735 + f I maxNameWidth n field_2733 + m ()V refreshEntries J method_49007 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_36885 a method_36885 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20110 b method_20110 + m ()V resetMappingAndUpdateButtons c method_49006 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)I method_57745 c method_57745 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20112 d method_20112 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)I method_57746 e method_57746 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20115 f method_20115 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20116 g method_20116 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20114 h method_20114 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_57747 i method_57747 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsScreen;Lnet/minecraft/client/Minecraft;)V + p 1 keyBindsScreen + p 2 minecraft +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry frn$a net/minecraft/class_459$class_460 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; field_2738 a field_2738 + f Lnet/minecraft/network/chat/Component; name b field_2736 + f I width c field_2737 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;Lnet/minecraft/network/chat/Component;)V + p 2 name +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry$1 frn$a$1 net/minecraft/class_459$class_460$1 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry; field_33831 a field_33831 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry;)V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$Entry frn$b net/minecraft/class_459$class_461 + m ()V refreshEntry c method_48269 + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$KeyEntry frn$c net/minecraft/class_459$class_462 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; field_2742 a field_2742 + f Lnet/minecraft/network/chat/Component; RESET_BUTTON_TITLE b field_49534 + f I PADDING c field_49535 + f Lnet/minecraft/client/KeyMapping; key d field_2740 + f Lnet/minecraft/network/chat/Component; name e field_2741 + f Lnet/minecraft/client/gui/components/Button; changeButton f field_2739 + f Lnet/minecraft/client/gui/components/Button; resetButton g field_2743 + f Z hasCollision h field_42497 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/client/gui/components/Button;)V method_19870 a method_19870 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46514 a method_46514 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46515 a method_46515 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/client/gui/components/Button;)V method_19871 b method_19871 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;Lnet/minecraft/client/KeyMapping;Lnet/minecraft/network/chat/Component;)V + p 2 key + p 3 name + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsScreen fro net/minecraft/class_6599 + f Lnet/minecraft/client/KeyMapping; selectedKey a field_34799 + f J lastKeySelection u field_34800 + f Lnet/minecraft/network/chat/Component; TITLE v field_49536 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; keyBindsList w field_34801 + f Lnet/minecraft/client/gui/components/Button; resetButton x field_34802 + m (Lnet/minecraft/client/gui/components/Button;)V method_57748 a method_57748 + m (Lnet/minecraft/client/gui/components/Button;)V method_60342 b method_60342 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/controls/package-info frp net/minecraft/class_9755 +c net/minecraft/client/gui/screens/options/package-info frq net/minecraft/class_9756 +c net/minecraft/client/gui/screens/package-info frr net/minecraft/class_6219 +c net/minecraft/client/gui/screens/packs/PackSelectionModel frs net/minecraft/class_5369 + f Lnet/minecraft/server/packs/repository/PackRepository; repository a field_25626 + f Ljava/util/List; selected b field_25455 + f Ljava/util/List; unselected c field_25456 + f Ljava/util/function/Function; iconGetter d field_25785 + f Ljava/lang/Runnable; onListChanged e field_25458 + f Ljava/util/function/Consumer; output f field_25459 + m ()Ljava/util/stream/Stream; getUnselected a method_29639 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; method_29640 a method_29640 + m ()Ljava/util/stream/Stream; getSelected b method_29643 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; method_29644 b method_29644 + m ()V commit c method_29642 + m ()V findNewPacks d method_29981 + m ()V updateRepoSelectedList e method_49627 + m (Ljava/lang/Runnable;Ljava/util/function/Function;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;)V + p 1 onListChanged + p 2 iconGetter + p 3 repository + p 4 output +c net/minecraft/client/gui/screens/packs/PackSelectionModel$Entry frs$a net/minecraft/class_5369$class_5371 + m ()Lnet/minecraft/resources/ResourceLocation; getIconTexture a method_30286 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; getCompatibility b method_29648 + m ()Ljava/lang/String; getId c method_48276 + m ()Lnet/minecraft/network/chat/Component; getTitle d method_29650 + m ()Lnet/minecraft/network/chat/Component; getDescription e method_29651 + m ()Lnet/minecraft/server/packs/repository/PackSource; getPackSource f method_29652 + m ()Lnet/minecraft/network/chat/Component; getExtendedDescription g method_29653 + m ()Z isFixedPosition h method_29654 + m ()Z isRequired i method_29655 + m ()V select j method_29656 + m ()V unselect k method_29657 + m ()V moveUp l method_29658 + m ()V moveDown m method_29659 + m ()Z isSelected n method_29660 + m ()Z canSelect o method_29661 + m ()Z canUnselect p method_29662 + m ()Z canMoveUp q method_29663 + m ()Z canMoveDown r method_29664 +c net/minecraft/client/gui/screens/packs/PackSelectionModel$EntryBase frs$b net/minecraft/class_5369$class_5372 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25460 a field_25460 + f Lnet/minecraft/server/packs/repository/Pack; pack b field_25461 + m (I)V move a method_29665 + p 1 offset + m ()Ljava/util/List; getSelfList s method_29666 + m ()Ljava/util/List; getOtherList t method_29667 + m ()V toggleSelection u method_29668 + m ()V updateHighContrastOptionInstance v method_49628 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V + p 2 pack +c net/minecraft/client/gui/screens/packs/PackSelectionModel$SelectedPackEntry frs$c net/minecraft/class_5369$class_5373 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25462 b field_25462 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V +c net/minecraft/client/gui/screens/packs/PackSelectionModel$UnselectedPackEntry frs$d net/minecraft/class_5369$class_5374 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25463 b field_25463 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen frt net/minecraft/class_5375 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher; watcher A field_25787 + f J ticksToReload B field_25788 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; availablePackList C field_25472 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; selectedPackList D field_25473 + f Ljava/nio/file/Path; packDir E field_25474 + f Lnet/minecraft/client/gui/components/Button; doneButton F field_25475 + f Ljava/util/Map; packIcons G field_25789 + f Lorg/slf4j/Logger; LOGGER a field_25464 + f Lnet/minecraft/network/chat/Component; AVAILABLE_TITLE b field_49541 + f Lnet/minecraft/network/chat/Component; SELECTED_TITLE c field_49542 + f Lnet/minecraft/network/chat/Component; OPEN_PACK_FOLDER_TITLE r field_49543 + f I LIST_WIDTH s field_32395 + f Lnet/minecraft/network/chat/Component; DRAG_AND_DROP u field_25465 + f Lnet/minecraft/network/chat/Component; DIRECTORY_BUTTON_TOOLTIP v field_25466 + f I RELOAD_COOLDOWN w field_32396 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_ICON x field_25786 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout y field_49544 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; model z field_25468 + m ()V closeWatcher C method_30291 + m ()V populateLists D method_29678 + m ()V reload E method_29680 + m ()V method_54593 F method_54593 + m ()V method_54594 G method_54594 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/resources/ResourceLocation; getPackIcon a method_30287 + p 1 pack + m (Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; method_30288 a method_30288 + m (Lnet/minecraft/client/Minecraft;Ljava/util/List;Ljava/nio/file/Path;)V copyPacks a method_29669 + p 0 minecraft + p 1 packs + p 2 outDir + m (Lnet/minecraft/client/gui/components/Button;)V method_29982 a method_29982 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57755 a method_57755 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;)V updateFocus a method_48277 + p 1 selection + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Ljava/lang/String;Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry;)V method_29672 a method_29672 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Ljava/util/stream/Stream;)V updateList a method_29673 + p 1 selection + p 2 models + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/resources/ResourceLocation; loadPackIcon a method_30289 + p 1 textureManager + p 2 pack + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29674 a method_29674 + m (Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29675 a method_29675 + m (Ljava/util/Collection;)Ljava/util/stream/Stream; extractPackNames a method_52760 + p 0 paths + m (Ljava/util/List;Z)V method_29676 a method_29676 + m (Lnet/minecraft/client/gui/components/Button;)V method_29670 b method_29670 + m ()V clearSelected m method_48278 + m (Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/network/chat/Component;)V + p 1 repository + p 2 output + p 3 packDir + p 4 title + m ()V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen$1 frt$1 net/minecraft/class_5375$1 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; createZipPack a method_52761 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; createDirectoryPack b method_52762 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;Lnet/minecraft/world/level/validation/DirectoryValidator;)V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher frt$a net/minecraft/class_5375$class_5426 + f Ljava/nio/file/WatchService; watcher a field_25790 + f Ljava/nio/file/Path; packPath b field_25791 + m ()Z pollForChanges a method_30292 + m (Ljava/nio/file/Path;)Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher; create a method_30293 + p 0 packPath + m (Ljava/nio/file/Path;)V watchDir b method_30294 + p 1 path + m (Ljava/nio/file/Path;)V + p 1 packPath +c net/minecraft/client/gui/screens/packs/TransferableSelectionList fru net/minecraft/class_521 + f Lnet/minecraft/resources/ResourceLocation; SELECT_HIGHLIGHTED_SPRITE a field_45532 + f Lnet/minecraft/resources/ResourceLocation; SELECT_SPRITE m field_45533 + f Lnet/minecraft/resources/ResourceLocation; UNSELECT_HIGHLIGHTED_SPRITE n field_45534 + f Lnet/minecraft/resources/ResourceLocation; UNSELECT_SPRITE o field_45535 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_HIGHLIGHTED_SPRITE p field_45536 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_SPRITE q field_45537 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_HIGHLIGHTED_SPRITE r field_45538 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_SPRITE s field_45539 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_TITLE u field_19126 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_CONFIRM_TITLE v field_19127 + f Lnet/minecraft/network/chat/Component; title w field_18978 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen; screen x field_41715 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;)Z method_58491 a method_58491 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;I)I method_20140 a method_20140 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;IILnet/minecraft/network/chat/Component;)V + p 1 minecraft + p 2 screen + p 3 width + p 4 height + p 5 title + m ()V +c net/minecraft/client/gui/screens/packs/TransferableSelectionList$PackEntry fru$a net/minecraft/class_521$class_4271 + f Lnet/minecraft/client/Minecraft; minecraft a field_19128 + f I MAX_DESCRIPTION_WIDTH_PIXELS b field_32403 + f I MAX_NAME_WIDTH_PIXELS c field_32404 + f Ljava/lang/String; TOO_LONG_NAME_SUFFIX d field_32405 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; parent e field_19130 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; pack f field_19129 + f Lnet/minecraft/util/FormattedCharSequence; nameDisplayCache g field_26590 + f Lnet/minecraft/client/gui/components/MultiLineLabel; descriptionDisplayCache h field_26591 + f Lnet/minecraft/util/FormattedCharSequence; incompatibleNameDisplayCache i field_26784 + f Lnet/minecraft/client/gui/components/MultiLineLabel; incompatibleDescriptionDisplayCache j field_26785 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/util/FormattedCharSequence; cacheName a method_31229 + p 0 minecraft + p 1 name + m ()Ljava/lang/String; getPackId b method_48279 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; cacheDescription b method_31230 + p 0 minecraft + p 1 text + m (Z)V method_48477 b method_48477 + m ()V keyboardSelection c method_48280 + m ()Z showHoverOverlay d method_20152 + m ()V keyboardMoveUp e method_48281 + m ()V keyboardMoveDown f method_48282 + m ()Z handlePackSelection h method_48478 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry;)V + p 1 minecraft + p 2 parent + p 3 pack +c net/minecraft/client/gui/screens/packs/package-info frv net/minecraft/class_6220 +c net/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent frw net/minecraft/class_517 + f Lnet/minecraft/client/gui/components/WidgetSprites; FILTER_SPRITES i field_45540 + f Lnet/minecraft/world/item/crafting/Ingredient; fuels j field_3149 + m (Lnet/minecraft/world/item/Item;)Z method_49301 a method_49301 + m ()Ljava/util/Set; getFuelItems b method_17065 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/BlastingRecipeBookComponent frx net/minecraft/class_3875 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26592 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/GhostRecipe fry net/minecraft/class_505 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipe a field_3079 + f Ljava/util/List; ingredients b field_3081 + f F time c field_3080 + m ()V clear a method_2571 + m (I)Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe$GhostIngredient; get a method_2570 + p 1 index + m (Lnet/minecraft/world/item/crafting/Ingredient;II)V addIngredient a method_2569 + p 1 ingredient + p 2 x + p 3 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V setRecipe a method_2565 + p 1 recipe + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/Minecraft;IIZF)V render a method_2567 + p 1 guiGraphics + p 2 minecraft + p 3 leftPos + p 4 topPos + p 5 offset + p 6 partialTick + m ()I size b method_2572 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe c method_2566 + m ()V +c net/minecraft/client/gui/screens/recipebook/GhostRecipe$GhostIngredient fry$a net/minecraft/class_505$class_506 + f Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe; field_3085 a field_3085 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient b field_3082 + f I x c field_3084 + f I y d field_3083 + m ()I getX a method_2574 + m ()I getY b method_2575 + m ()Lnet/minecraft/world/item/ItemStack; getItem c method_2573 + m (Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe;Lnet/minecraft/world/item/crafting/Ingredient;II)V + p 2 ingredient + p 3 x + p 4 y +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent frz net/minecraft/class_508 + f I BUTTON_SIZE a field_42162 + f Lnet/minecraft/resources/ResourceLocation; OVERLAY_RECIPE_SPRITE b field_45541 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_HIGHLIGHTED_SPRITE c field_45542 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_SPRITE d field_45543 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_HIGHLIGHTED_SPRITE e field_45544 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_SPRITE f field_45545 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_DISABLED_HIGHLIGHTED_SPRITE g field_45546 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_DISABLED_SPRITE h field_45547 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_DISABLED_HIGHLIGHTED_SPRITE i field_45548 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_DISABLED_SPRITE j field_45549 + f I MAX_ROW k field_32406 + f I MAX_ROW_LARGE l field_32407 + f F ITEM_RENDER_SCALE m field_33739 + f Ljava/util/List; recipeButtons n field_3106 + f Z isVisible o field_3107 + f I x p field_3105 + f I y q field_3103 + f Lnet/minecraft/client/Minecraft; minecraft r field_3108 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; collection s field_3111 + f Lnet/minecraft/world/item/crafting/RecipeHolder; lastRecipeClicked u field_3104 + f F time v field_3110 + f Z isFurnaceMenu w field_3112 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getRecipeCollection a method_2614 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;IIIIF)V init a method_2617 + p 1 minecraft + p 2 collection + p 3 x + p 4 y + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getLastRecipeClicked b method_2615 + m (Z)V setVisible b method_2613 + p 1 isVisible + m ()Z isVisible c method_2616 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton frz$a net/minecraft/class_508$class_509 + f Ljava/util/List; ingredientPos a field_3116 + f Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent; field_3113 b field_3113 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipe c field_3114 + f Z isCraftable d field_3115 + m (Lnet/minecraft/world/item/crafting/Ingredient;IIII)V addItemToSlot a method_60343 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V calculateIngredientsPositions a method_2619 + p 1 recipe + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent;IILnet/minecraft/world/item/crafting/RecipeHolder;Z)V + p 2 x + p 3 y + p 4 recipe + p 5 isCraftable +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton$Pos frz$a$a net/minecraft/class_508$class_509$class_510 + f [Lnet/minecraft/world/item/ItemStack; ingredients a field_3120 + f I x b field_3119 + f I y c field_3118 + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton;II[Lnet/minecraft/world/item/ItemStack;)V + p 2 x + p 3 y + p 4 ingredients +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlaySmeltingRecipeButton frz$b net/minecraft/class_508$class_511 + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent;IILnet/minecraft/world/item/crafting/RecipeHolder;Z)V +c net/minecraft/client/gui/screens/recipebook/RecipeBookComponent fsa net/minecraft/class_507 + f Z visible A field_33679 + f Z widthTooNarrow B field_34001 + f Lnet/minecraft/client/gui/components/WidgetSprites; RECIPE_BUTTON_SPRITES a field_45550 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_BOOK_LOCATION b field_3097 + f I IMAGE_WIDTH c field_32408 + f I IMAGE_HEIGHT d field_32409 + f Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe; ghostRecipe e field_3092 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; filterButton f field_3088 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu g field_3095 + f Lnet/minecraft/client/Minecraft; minecraft h field_3091 + f Lnet/minecraft/client/gui/components/WidgetSprites; FILTER_BUTTON_SPRITES i field_45551 + f Lnet/minecraft/network/chat/Component; SEARCH_HINT j field_25711 + f I OFFSET_X_POSITION k field_32410 + f Lnet/minecraft/network/chat/Component; ONLY_CRAFTABLES_TOOLTIP l field_26593 + f Lnet/minecraft/network/chat/Component; ALL_RECIPES_TOOLTIP m field_26594 + f I xOffset n field_3102 + f I width o field_3101 + f I height p field_3100 + f Ljava/util/List; tabButtons q field_3094 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookTabButton; selectedTab r field_3098 + f Lnet/minecraft/client/gui/components/EditBox; searchBox s field_3089 + f Ljava/lang/String; lastSearch u field_3099 + f Lnet/minecraft/client/ClientRecipeBook; book v field_3096 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookPage; recipeBookPage w field_3086 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents x field_3090 + f I timesInventoryChanged y field_3093 + f Z ignoreTextInput z field_3087 + m ()V initFilterButtonTextures a method_2585 + m (DDIIIII)Z hasClickedOutside a method_2598 + p 1 mouseX + p 3 mouseY + p 5 x + p 6 y + p 7 width + p 8 height + m (II)I updateScreenPosition a method_2595 + p 1 width + p 2 imageWidth + m (IILnet/minecraft/client/Minecraft;ZLnet/minecraft/world/inventory/RecipeBookMenu;)V init a method_2597 + p 1 width + p 2 height + p 3 minecraft + p 4 widthTooNarrow + p 5 menu + m (Lnet/minecraft/world/inventory/Slot;)V slotClicked a method_2600 + p 1 slot + m (Lnet/minecraft/world/item/crafting/Ingredient;IIII)V addItemToSlot a method_60344 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/List;)V setupGhostRecipe a method_2596 + p 1 recipe + p 2 slots + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderTooltip a method_2601 + p 1 guiGraphics + p 2 renderX + p 3 renderY + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIZF)V renderGhostRecipe a method_2581 + p 1 guiGraphics + p 2 leftPos + p 3 topPos + p 5 partialTick + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeBookTabButton;)Z method_2582 a method_2582 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2584 a method_2584 + m (Lit/unimi/dsi/fastutil/objects/ObjectSet;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_53871 a method_53871 + m (Ljava/lang/String;)V pirateSpeechForThePeople a method_2576 + c Check if we should activate the pirate speak easter egg. + p 1 text + m (Ljava/util/List;Lnet/minecraft/client/gui/components/AbstractWidget;)V method_37308 a method_37308 + m ()V updateFilterButtonTooltip b method_47429 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderGhostRecipeTooltip b method_2602 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2583 b method_2583 + m (Z)V setVisible b method_2593 + p 1 visible + m ()Lnet/minecraft/network/chat/Component; getRecipeFilterName c method_17064 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2580 c method_2580 + m (Z)V updateCollections c method_2603 + p 1 resetPageNumber + m ()V initVisuals d method_2579 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)V method_2577 d method_2577 + m ()V toggleVisibility e method_2591 + m ()Z isVisible f method_2605 + m ()V tick h method_2590 + m ()V recipesUpdated i method_2592 + m ()V sendUpdateSettings j method_2588 + m ()Z isVisibleAccordingToBookData k method_36485 + m ()V updateTabs l method_2606 + m ()V updateStackedContents m method_2587 + m ()Z toggleFiltering n method_2589 + m ()V checkSearchStringUpdate o method_2586 + m ()Z isOffsetNextToMainGUI p method_2604 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeBookPage fsb net/minecraft/class_513 + f I ITEMS_PER_PAGE a field_32411 + f Lnet/minecraft/client/gui/components/WidgetSprites; PAGE_FORWARD_SPRITES b field_45552 + f Lnet/minecraft/client/gui/components/WidgetSprites; PAGE_BACKWARD_SPRITES c field_45553 + f Ljava/util/List; buttons d field_3131 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeButton; hoveredButton e field_3129 + f Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent; overlay f field_3132 + f Lnet/minecraft/client/Minecraft; minecraft g field_3126 + f Ljava/util/List; showListeners h field_3134 + f Ljava/util/List; recipeCollections i field_3127 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; forwardButton j field_3128 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; backButton k field_3130 + f I totalPages l field_3124 + f I currentPage m field_3135 + f Lnet/minecraft/stats/RecipeBook; recipeBook n field_3136 + f Lnet/minecraft/world/item/crafting/RecipeHolder; lastClickedRecipe o field_3125 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; lastClickedRecipeCollection p field_3133 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getLastClickedRecipe a method_2631 + m (DDIIIII)Z mouseClicked a method_2632 + p 1 mouseX + p 3 mouseY + p 5 button + m (Lnet/minecraft/client/Minecraft;II)V init a method_2636 + p 1 minecraft + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderTooltip a method_2628 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIF)V render a method_2634 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 partialTick + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent;)V addListener a method_2630 + p 1 listener + m (Ljava/util/List;)V recipesShown a method_2629 + p 1 recipes + m (Ljava/util/List;Z)V updateCollections a method_2627 + p 1 recipeCollections + p 2 resetPageNumber + m (Ljava/util/function/Consumer;)V listButtons a method_37083 + p 1 consumer + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getLastClickedRecipeCollection b method_2635 + m ()V setInvisible c method_2638 + m ()Lnet/minecraft/client/Minecraft; getMinecraft d method_2637 + m ()Lnet/minecraft/stats/RecipeBook; getRecipeBook e method_2633 + m ()V updateButtonsForPage f method_2625 + m ()V updateArrowButtons g method_2626 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeBookTabButton fsc net/minecraft/class_512 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES c field_45554 + f Lnet/minecraft/client/RecipeBookCategories; category d field_3123 + f F ANIMATION_TIME e field_32412 + f F animationTime f field_3122 + m (Lnet/minecraft/client/ClientRecipeBook;)Z updateVisibility a method_2624 + p 1 recipeBook + m (Lnet/minecraft/client/Minecraft;)V startAnimation a method_2622 + p 1 minecraft + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V renderIcon a method_2621 + p 1 guiGraphics + p 2 itemRenderer + m ()Lnet/minecraft/client/RecipeBookCategories; getCategory b method_2623 + m (Lnet/minecraft/client/RecipeBookCategories;)V + p 1 category + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeButton fsd net/minecraft/class_514 + f I TICKS_TO_SWAP a field_32413 + f Lnet/minecraft/resources/ResourceLocation; SLOT_MANY_CRAFTABLE_SPRITE b field_45555 + f Lnet/minecraft/resources/ResourceLocation; SLOT_CRAFTABLE_SPRITE c field_45556 + f Lnet/minecraft/resources/ResourceLocation; SLOT_MANY_UNCRAFTABLE_SPRITE d field_45557 + f Lnet/minecraft/resources/ResourceLocation; SLOT_UNCRAFTABLE_SPRITE e field_45558 + f F ANIMATION_TIME f field_32414 + f I BACKGROUND_SIZE m field_32415 + f Lnet/minecraft/network/chat/Component; MORE_RECIPES_TOOLTIP n field_26595 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu o field_3137 + f Lnet/minecraft/stats/RecipeBook; book p field_3138 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; collection q field_3142 + f F time r field_3140 + f F animationTime s field_3139 + f I currentIndex u field_3141 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getCollection a method_2645 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;Lnet/minecraft/client/gui/screens/recipebook/RecipeBookPage;)V init a method_2640 + p 1 collection + p 2 recipeBookPage + m ()Z isOnlyOption b method_2642 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe c method_2643 + m ()Ljava/util/List; getTooltipText e method_2644 + m ()Ljava/util/List; getOrderedRecipes f method_2639 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeCollection fse net/minecraft/class_516 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_42069 + f Ljava/util/List; recipes b field_3144 + f Z singleResultItem c field_3148 + f Ljava/util/Set; craftable d field_3146 + f Ljava/util/Set; fitsDimensions e field_3145 + f Ljava/util/Set; known f field_3147 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess a method_48479 + m (Lnet/minecraft/stats/RecipeBook;)V updateKnownRecipes a method_2647 + p 1 book + m (Lnet/minecraft/world/entity/player/StackedContents;IILnet/minecraft/stats/RecipeBook;)V canCraft a method_2649 + p 1 handler + p 2 width + p 3 height + p 4 book + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z isCraftable a method_2653 + p 1 recipe + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Z allRecipesHaveSameResult a method_30295 + p 0 registryAccess + p 1 recipes + m (Z)Ljava/util/List; getRecipes a method_2651 + p 1 onlyCraftable + m ()Z hasKnownRecipes b method_2652 + c Checks if recipebook is not empty + m (Z)Ljava/util/List; getDisplayRecipes b method_2648 + p 1 craftable + c If true, this method will only return craftable recipes. If false, this method will only return uncraftable recipes. + m ()Z hasCraftable c method_2655 + m ()Z hasFitting d method_2657 + m ()Ljava/util/List; getRecipes e method_2650 + m ()Z hasSingleResultItem f method_2656 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)V + p 1 registryAccess + p 2 recipes +c net/minecraft/client/gui/screens/recipebook/RecipeShownListener fsf net/minecraft/class_515 + m (Ljava/util/List;)V recipesShown a method_2646 + p 1 recipes +c net/minecraft/client/gui/screens/recipebook/RecipeUpdateListener fsg net/minecraft/class_518 + m ()V recipesUpdated E method_16891 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; getRecipeBookComponent F method_2659 +c net/minecraft/client/gui/screens/recipebook/SmeltingRecipeBookComponent fsh net/minecraft/class_3876 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26596 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/SmokingRecipeBookComponent fsi net/minecraft/class_3877 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26597 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/package-info fsj net/minecraft/class_6221 +c net/minecraft/client/gui/screens/reporting/AbstractReportScreen fsk net/minecraft/class_8768 + f Lnet/minecraft/client/multiplayer/chat/report/Report$Builder; reportBuilder A field_46021 + f Lnet/minecraft/client/gui/components/Button; sendButton B field_52300 + f Lnet/minecraft/network/chat/Component; REPORT_SENT_MESSAGE C field_46022 + f Lnet/minecraft/network/chat/Component; REPORT_SENDING_TITLE D field_46023 + f Lnet/minecraft/network/chat/Component; REPORT_SENT_TITLE E field_46024 + f Lnet/minecraft/network/chat/Component; REPORT_ERROR_TITLE F field_46025 + f Lnet/minecraft/network/chat/Component; REPORT_SEND_GENERIC_ERROR G field_46026 + f Lnet/minecraft/network/chat/Component; DESCRIBE_PLACEHOLDER H field_46027 + f Lnet/minecraft/network/chat/Component; MORE_COMMENTS_NARRATION I field_46028 + f Lnet/minecraft/network/chat/Component; ATTESTATION_CHECKBOX J field_52301 + f Lorg/slf4j/Logger; LOGGER K field_46029 + f Lnet/minecraft/client/gui/components/Checkbox; attestation L field_52302 + f Lnet/minecraft/network/chat/Component; SEND_REPORT a field_46012 + f Lnet/minecraft/network/chat/Component; OBSERVED_WHAT_LABEL b field_46013 + f Lnet/minecraft/network/chat/Component; SELECT_REASON c field_46014 + f Lnet/minecraft/network/chat/Component; MORE_COMMENTS_LABEL r field_46015 + f I BUTTON_WIDTH s field_52303 + f I MARGIN u field_46016 + f I SCREEN_WIDTH v field_46017 + f I SPACING w field_46018 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen x field_46019 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext y field_46020 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout z field_52304 + m ()V addContent C method_61135 + m ()V createFooter D method_61136 + m ()V onReportChanged E method_53586 + m ()V sendReport F method_53571 + m ()V onReportSendSuccess G method_53559 + m ()V saveDraft J method_53560 + m ()V clearDraft K method_53561 + m ()V method_53562 L method_53562 + m ()V method_53563 M method_53563 + m (IILjava/util/function/Consumer;)Lnet/minecraft/client/gui/components/MultiLineEditBox; createCommentBox a method_53564 + p 1 width + p 2 height + p 3 valueListener + m (Lnet/minecraft/client/gui/components/Button;)V method_61137 a method_61137 + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_61138 a method_61138 + m (Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_61139 a method_61139 + m (Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason;)V method_53565 a method_53565 + m (Lnet/minecraft/client/multiplayer/chat/report/Report$Result;)V method_53566 a method_53566 + m (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object; method_53567 a method_53567 + m (Ljava/lang/Throwable;)V onReportSendError a method_53568 + p 1 throwable + m (Ljava/util/concurrent/CompletableFuture;)V method_53569 a method_53569 + m (Lnet/minecraft/network/chat/Component;)V displayReportSendError a method_53570 + p 1 error + m (Lnet/minecraft/client/gui/components/Button;)V method_61140 b method_61140 + m ()V createHeader m method_61141 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/Report$Builder;)V + p 1 title + p 2 lastScreen + p 3 reportingContext + p 4 reportBuilder + m ()V +c net/minecraft/client/gui/screens/reporting/AbstractReportScreen$DiscardReportWarningScreen fsk$a net/minecraft/class_8768$class_7539 + f Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen; field_39578 b field_39578 + f Lnet/minecraft/network/chat/Component; TITLE c field_39723 + f Lnet/minecraft/network/chat/Component; MESSAGE r field_39724 + f Lnet/minecraft/network/chat/Component; RETURN s field_39725 + f Lnet/minecraft/network/chat/Component; DRAFT u field_40794 + f Lnet/minecraft/network/chat/Component; DISCARD v field_39726 + m (Lnet/minecraft/client/gui/components/Button;)V method_57756 a method_57756 + m (Lnet/minecraft/client/gui/components/Button;)V method_57757 b method_57757 + m (Lnet/minecraft/client/gui/components/Button;)V method_57758 c method_57758 + m (Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen;)V + m ()V +c net/minecraft/client/gui/screens/reporting/ChatReportScreen fsl net/minecraft/class_7538 + f Lnet/minecraft/network/chat/Component; TITLE C field_46031 + f Lnet/minecraft/network/chat/Component; SELECT_CHAT_MESSAGE D field_39574 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox E field_46033 + f Lnet/minecraft/client/gui/components/Button; selectMessagesButton F field_46034 + f Lnet/minecraft/client/gui/components/Button; selectReasonButton G field_46035 + m (Lnet/minecraft/client/gui/components/Button;)V method_61142 a method_61142 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61143 a method_61143 + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;)V method_61144 a method_61144 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V method_61145 a method_61145 + m (Ljava/lang/String;)V method_61146 a method_61146 + m (Lnet/minecraft/client/gui/components/Button;)V method_61147 b method_61147 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportId + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport;)V + p 1 lastScreen + p 2 reportContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller fsm net/minecraft/class_7541 + f Lnet/minecraft/client/multiplayer/chat/ChatLog; log a field_39581 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder; contextBuilder b field_40439 + f Ljava/util/function/Predicate; canReport c field_39582 + f Lnet/minecraft/network/chat/SignedMessageLink; previousLink d field_40795 + f I eventId e field_40440 + f I missedCount f field_40441 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastMessage g field_40442 + m (ILnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output;)V fillNextPage a method_44486 + p 1 maxVisibleEntries + p 2 output + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output;Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)Z acceptMessage a method_45664 + p 1 output + p 2 player + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/function/Predicate;)V + p 1 reportingContext + p 2 canReport +c net/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output fsm$a net/minecraft/class_7541$class_7542 + m (ILnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)V acceptMessage a method_44490 + p 1 chatId + p 2 playerMessage + m (Lnet/minecraft/network/chat/Component;)V acceptDivider a method_44492 + p 1 text +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen fsn net/minecraft/class_7543 + f Lnet/minecraft/resources/ResourceLocation; CHECKMARK_SPRITE a field_45559 + f Lnet/minecraft/network/chat/Component; TITLE b field_39727 + f Lnet/minecraft/network/chat/Component; CONTEXT_INFO c field_39728 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen r field_39584 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext s field_39585 + f Lnet/minecraft/client/gui/components/Button; confirmSelectedButton u field_39586 + f Lnet/minecraft/client/gui/components/MultiLineLabel; contextInfoLabel v field_39729 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; chatSelectionList w field_39587 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder; report x field_39588 + f Ljava/util/function/Consumer; onSelected y field_39589 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller; chatLogFiller z field_39590 + m ()V onReachedScrollTop C method_44507 + m ()V updateConfirmSelectedButton D method_44509 + m (Lnet/minecraft/client/gui/components/Button;)V method_44493 a method_44493 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44494 a method_44494 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage;)Z canReport a method_44495 + p 1 message + m (Lnet/minecraft/client/gui/components/Button;)V method_44496 b method_44496 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44497 b method_44497 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44499 c method_44499 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44500 d method_44500 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44501 e method_44501 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44502 f method_44502 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44726 g method_44726 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44664 h method_44664 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44506 i method_44506 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44508 j method_44508 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44505 k method_44505 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44727 l method_44727 + m ()V extendLog m method_44504 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44728 m method_44728 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;Ljava/util/function/Consumer;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + p 4 onSelected + m ()V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList fsn$a net/minecraft/class_7543$class_7544 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen; field_39592 a field_39592 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading; previousHeading m field_39593 + m ()I getFooterTop J method_44665 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)V setSelected a method_48283 + p 1 selected + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)Lnet/minecraft/client/Minecraft; method_44510 a method_44510 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;Z)V updateHeading a method_44511 + p 1 loggedPlayerChatMessage + p 2 canReport + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; nextEntry b method_48284 + p 1 direction + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)Z shouldHighlightEntry b method_44693 + p 1 entry + m ()I getMaxVisibleEntries c method_44513 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;Lnet/minecraft/client/Minecraft;I)V + p 2 minecraft + p 3 height +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$DividerEntry fsn$a$a net/minecraft/class_7543$class_7544$class_7545 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39594 a field_39594 + f I COLOR b field_39595 + f Lnet/minecraft/network/chat/Component; text c field_39596 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;Lnet/minecraft/network/chat/Component;)V + p 2 text +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry fsn$a$b net/minecraft/class_7543$class_7544$class_7546 + m ()Z isSelected b method_44514 + m ()Z canSelect c method_44515 + m ()Z canReport d method_44694 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading fsn$a$c net/minecraft/class_7543$class_7544$class_7547 + f Ljava/util/UUID; sender a comp_866 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; entry b comp_867 + m ()Ljava/util/UUID; sender a comp_866 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading;)Z canCombine a method_44516 + p 1 other + m ()Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; entry b comp_867 + m (Ljava/util/UUID;Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$MessageEntry fsn$a$d net/minecraft/class_7543$class_7544$class_7548 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39598 a field_39598 + f I CHECKMARK_WIDTH b field_39751 + f I CHECKMARK_HEIGHT c field_39752 + f I INDENT_AMOUNT d field_39599 + f I TAG_MARGIN_LEFT e field_39775 + f I chatId f field_39600 + f Lnet/minecraft/network/chat/FormattedText; text g field_39601 + f Lnet/minecraft/network/chat/Component; narration h field_39602 + f Ljava/util/List; hoverText i field_39603 + f Lnet/minecraft/client/GuiMessageTag$Icon; tagIcon j field_39776 + f Ljava/util/List; tagHoverText k field_39777 + f Z canReport l field_39604 + f Z playerMessage m field_39605 + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderSelectedCheckmark a method_44695 + p 1 guiGraphics + p 2 top + p 3 left + p 4 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderTag a method_44729 + p 1 guiGraphics + p 2 x + p 3 y + p 4 height + p 5 mouseX + p 6 mouseY + m ()I getMaximumTextWidth e method_44666 + m ()I getTextIndent f method_44667 + m ()Z toggleReport h method_44517 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/GuiMessageTag;ZZ)V + p 2 chatId + p 3 text + p 4 narration + p 5 tagIcon + p 6 canReport + p 7 playerMessage +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$MessageHeadingEntry fsn$a$e net/minecraft/class_7543$class_7544$class_7549 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39606 a field_39606 + f I FACE_SIZE b field_39607 + f I PADDING c field_49545 + f Lnet/minecraft/network/chat/Component; heading d field_39608 + f Ljava/util/function/Supplier; skin e field_39609 + f Z canReport f field_39610 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/Component;Z)V + p 2 profile + p 3 heading + p 4 canReport +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$PaddingEntry fsn$a$f net/minecraft/class_7543$class_7544$class_7550 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)V +c net/minecraft/client/gui/screens/reporting/NameReportScreen fso net/minecraft/class_8769 + f Lnet/minecraft/network/chat/Component; TITLE C field_46037 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox D field_46039 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61148 a method_61148 + m (Ljava/lang/String;)V method_61149 a method_61149 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61150 b method_61150 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/NameReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;Ljava/lang/String;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportedProfileId + p 4 reportedName + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/NameReport;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/ReportPlayerScreen fsp net/minecraft/class_8770 + f Lnet/minecraft/network/chat/Component; TITLE a field_46041 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_46042 + f Lnet/minecraft/network/chat/Component; REPORT_CHAT c field_46043 + f Lnet/minecraft/network/chat/Component; REPORT_SKIN r field_46044 + f Lnet/minecraft/network/chat/Component; REPORT_NAME s field_46045 + f I SPACING u field_46046 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_46047 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; context w field_46048 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; player x field_46049 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout y field_46050 + m (Lnet/minecraft/client/gui/components/Button;)V method_53581 a method_53581 + m (Lnet/minecraft/client/gui/screens/reporting/ReportPlayerScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53582 a method_53582 + m (Lnet/minecraft/client/gui/components/Button;)V method_53583 b method_53583 + m (Lnet/minecraft/client/gui/components/Button;)V method_53584 c method_53584 + m (Lnet/minecraft/client/gui/components/Button;)V method_53585 d method_53585 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/gui/screens/social/PlayerEntry;)V + p 1 lastScreen + p 2 context + p 3 player + m ()V +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen fsq net/minecraft/class_7551 + f Lnet/minecraft/network/chat/Component; REASON_TITLE a field_39612 + f Lnet/minecraft/network/chat/Component; REASON_DESCRIPTION b field_39613 + f Lnet/minecraft/network/chat/Component; READ_INFO_LABEL c field_39754 + f I DESCRIPTION_BOX_WIDTH r field_49546 + f I DESCRIPTION_BOX_HEIGHT s field_49547 + f I PADDING u field_39735 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_39615 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList; reasonSelectionList w field_39616 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; currentlySelectedReason x field_39778 + f Ljava/util/function/Consumer; onSelectedReason y field_39618 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout z field_49548 + m ()I descriptionRight C method_57759 + m ()I descriptionTop D method_44668 + m ()I descriptionBottom E method_44669 + m ()I descriptionWidth F method_57760 + m ()I descriptionHeight G method_57761 + m ()I listHeight J method_57762 + m (Lnet/minecraft/client/gui/components/Button;)V method_44520 a method_44520 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44521 a method_44521 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57763 a method_57763 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44671 b method_44671 + m ()I descriptionLeft m method_57764 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportReason;Ljava/util/function/Consumer;)V + p 1 lastScreen + p 2 currentlySelectedReason + p 3 onSelectedReason + m ()V +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList fsq$a net/minecraft/class_7551$class_7552 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen; field_39619 a field_39619 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry;)V setSelected a method_44730 + p 1 selected + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry; findEntry a method_44522 + p 1 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry;)Z method_44523 a method_44523 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry fsq$a$a net/minecraft/class_7551$class_7552$class_7553 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList; field_39620 a field_39620 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason b field_39621 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportReason; getReason b method_44524 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList;Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V + p 2 reason +c net/minecraft/client/gui/screens/reporting/SkinReportScreen fsr net/minecraft/class_8771 + f I SKIN_WIDTH C field_46052 + f I FORM_WIDTH D field_46053 + f Lnet/minecraft/network/chat/Component; TITLE E field_46054 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox F field_46056 + f Lnet/minecraft/client/gui/components/Button; selectReasonButton G field_46058 + m (Lnet/minecraft/client/gui/components/Button;)V method_61151 a method_61151 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61152 a method_61152 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V method_61153 a method_61153 + m (Ljava/lang/String;)V method_61154 a method_61154 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/SkinReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportId + p 4 skinGetter + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/SkinReport;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/package-info fss net/minecraft/class_7554 +c net/minecraft/client/gui/screens/social/PlayerEntry fst net/minecraft/class_5519 + f Lnet/minecraft/network/chat/Component; BLOCKED A field_26906 + f Lnet/minecraft/network/chat/Component; OFFLINE B field_26907 + f Lnet/minecraft/network/chat/Component; HIDDEN_OFFLINE C field_26908 + f Lnet/minecraft/network/chat/Component; BLOCKED_OFFLINE D field_26909 + f Lnet/minecraft/network/chat/Component; REPORT_DISABLED_TOOLTIP E field_39736 + f Lnet/minecraft/network/chat/Component; HIDE_TEXT_TOOLTIP F field_33837 + f Lnet/minecraft/network/chat/Component; SHOW_TEXT_TOOLTIP G field_33838 + f Lnet/minecraft/network/chat/Component; REPORT_PLAYER_TOOLTIP H field_39623 + f I SKIN_SIZE I field_32420 + f I PADDING J field_32421 + f I CHAT_TOGGLE_ICON_SIZE K field_32422 + f I SKIN_SHADE a field_26850 + f I BG_FILL b field_26851 + f I BG_FILL_REMOVED c field_26852 + f I PLAYERNAME_COLOR d field_26853 + f I PLAYER_STATUS_COLOR e field_26903 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE f field_45560 + f Ljava/time/Duration; TOOLTIP_DELAY g field_32418 + f Lnet/minecraft/client/gui/components/WidgetSprites; REPORT_BUTTON_SPRITES h field_45561 + f Lnet/minecraft/client/gui/components/WidgetSprites; MUTE_BUTTON_SPRITES i field_45562 + f Lnet/minecraft/client/gui/components/WidgetSprites; UNMUTE_BUTTON_SPRITES j field_45563 + f Lnet/minecraft/client/Minecraft; minecraft k field_26854 + f Ljava/util/List; children l field_26855 + f Ljava/util/UUID; id m field_26856 + f Ljava/lang/String; playerName n field_26857 + f Ljava/util/function/Supplier; skinGetter o field_26904 + f Z isRemoved p field_26859 + f Z hasRecentMessages q field_39790 + f Z reportingEnabled r field_39791 + f Z hasDraftReport s field_40796 + f Z chatReportable u field_39937 + f Lnet/minecraft/client/gui/components/Button; hideButton v field_26860 + f Lnet/minecraft/client/gui/components/Button; showButton w field_26861 + f Lnet/minecraft/client/gui/components/Button; reportButton x field_39622 + f F tooltipHoverTime y field_26864 + f Lnet/minecraft/network/chat/Component; HIDDEN z field_26905 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)V method_47633 a method_47633 + m (Lnet/minecraft/client/gui/screens/social/PlayerSocialManager;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/client/gui/components/Button;)V method_31326 a method_31326 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/components/Button;)V method_44525 a method_44525 + m (Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; getEntryNarationMessage a method_31389 + p 1 component + m (ZLnet/minecraft/network/chat/Component;)V onHiddenOrShown a method_31329 + p 1 visible + p 2 message + m (Lnet/minecraft/client/gui/screens/social/PlayerSocialManager;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/client/gui/components/Button;)V method_31332 b method_31332 + m ()Ljava/lang/String; getPlayerName c method_31330 + m (Z)V setRemoved c method_31335 + p 1 isRemoved + m ()Ljava/util/UUID; getPlayerId d method_31334 + m (Z)V setHasRecentMessages d method_44753 + p 1 hasRecentMessages + m (Z)V updateHideAndShowButton e method_47905 + p 1 visible + m ()Ljava/util/function/Supplier; getSkinGetter h method_53594 + m ()Z isRemoved i method_44754 + m ()Z hasRecentMessages j method_44756 + m ()Z isChatReportable k method_53595 + m ()Lnet/minecraft/client/gui/components/Tooltip; createReportButtonTooltip l method_47634 + m ()Lnet/minecraft/network/chat/Component; getStatusComponent m method_31390 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Ljava/util/UUID;Ljava/lang/String;Ljava/util/function/Supplier;Z)V + p 1 minecraft + p 2 socialInteractionsScreen + p 3 id + p 4 playerName + p 5 skinGetter + p 6 playerReportable + m ()V +c net/minecraft/client/gui/screens/social/PlayerEntry$1 fst$1 net/minecraft/class_5519$1 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_41113 b field_41113 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerEntry$2 fst$2 net/minecraft/class_5519$2 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_26911 b field_26911 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerEntry$3 fst$3 net/minecraft/class_5519$3 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_41114 b field_41114 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerSocialManager fsu net/minecraft/class_5520 + f Lnet/minecraft/client/Minecraft; minecraft a field_26865 + f Ljava/util/Set; hiddenPlayers b field_26866 + f Lcom/mojang/authlib/minecraft/UserApiService; service c field_26912 + f Ljava/util/Map; discoveredNamesToUUID d field_26927 + f Z onlineMode e field_35081 + f Ljava/util/concurrent/CompletableFuture; pendingBlockListRefresh f field_35082 + m ()V startOnlineMode a method_38935 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)V addPlayer a method_31337 + p 1 playerInfo + m (Ljava/lang/String;)Ljava/util/UUID; getDiscoveredUUID a method_31407 + p 1 uuid + m (Ljava/util/UUID;)V hidePlayer a method_31338 + p 1 id + m ()V stopOnlineMode b method_38936 + m (Ljava/util/UUID;)V showPlayer b method_31339 + p 1 id + m ()Ljava/util/Set; getHiddenPlayers c method_31336 + m (Ljava/util/UUID;)Z shouldHideMessageFrom c method_31391 + p 1 id + m (Ljava/util/UUID;)Z isHidden d method_31340 + p 1 id + m (Ljava/util/UUID;)Z isBlocked e method_31392 + p 1 id + m (Ljava/util/UUID;)V removePlayer f method_31341 + p 1 id + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/authlib/minecraft/UserApiService;)V + p 1 minecraft + p 2 service +c net/minecraft/client/gui/screens/social/SocialInteractionsPlayerList fsv net/minecraft/class_5521 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen; socialInteractionsScreen a field_26867 + f Ljava/util/List; players m field_26869 + f Ljava/lang/String; filter n field_26870 + m ()V sortPlayerEntries J method_44762 + m ()V updateFilteredPlayers K method_31349 + m (Lcom/mojang/authlib/GameProfile;Ljava/util/UUID;)Lnet/minecraft/client/gui/screens/social/PlayerEntry; method_44758 a method_44758 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Z method_31342 a method_31342 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page;)V addPlayer a method_31345 + p 1 playerInfo + p 2 page + m (Lnet/minecraft/client/multiplayer/chat/ChatLog;)Ljava/util/Collection; collectProfilesFromChatLog a method_45665 + p 0 chatLog + m (Ljava/lang/String;)V setFilter a method_31346 + p 1 filter + m (Ljava/util/Collection;D)V updateFiltersAndScroll a method_44698 + p 1 players + p 2 scrollAmount + m (Ljava/util/Collection;DZ)V updatePlayerList a method_31393 + p 1 ids + p 2 scrollAmount + p 4 addChatLogPlayers + m (Ljava/util/Collection;Ljava/util/Map;)V addOnlinePlayers a method_44699 + p 1 ids + p 2 playerMap + m (Ljava/util/Map;Z)V updatePlayersFromChatLog a method_44759 + p 1 playerMap + p 2 addPlayers + m (Ljava/util/UUID;)V removePlayer a method_31347 + p 1 id + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Ljava/lang/Integer; method_44760 b method_44760 + m ()Z isEmpty c method_31348 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Ljava/lang/Integer; method_44761 c method_44761 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/Minecraft;IIII)V + p 1 socialInteractionsScreen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen fsw net/minecraft/class_5522 + f Lnet/minecraft/network/chat/Component; SEARCH_HINT A field_26880 + f Lnet/minecraft/network/chat/Component; EMPTY_SEARCH B field_26917 + f Lnet/minecraft/network/chat/Component; EMPTY_HIDDEN C field_26881 + f Lnet/minecraft/network/chat/Component; EMPTY_BLOCKED D field_26918 + f Lnet/minecraft/network/chat/Component; BLOCKING_HINT E field_26919 + f I BG_BORDER_SIZE F field_32424 + f I BG_WIDTH G field_32426 + f I SEARCH_HEIGHT H field_32427 + f I MARGIN_Y I field_32428 + f I IMAGE_WIDTH J field_32429 + f I BUTTON_HEIGHT K field_32430 + f I ITEM_HEIGHT L field_32431 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout M field_49549 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen N field_49550 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsPlayerList; socialInteractionsPlayerList O field_26882 + f Lnet/minecraft/client/gui/components/EditBox; searchBox P field_26883 + f Ljava/lang/String; lastSearch Q field_26884 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; page R field_26885 + f Lnet/minecraft/client/gui/components/Button; allButton S field_26886 + f Lnet/minecraft/client/gui/components/Button; hiddenButton T field_26887 + f Lnet/minecraft/client/gui/components/Button; blockedButton U field_26913 + f Lnet/minecraft/client/gui/components/Button; blockingHintButton V field_26914 + f Lnet/minecraft/network/chat/Component; serverLabel W field_26888 + f I playerCount X field_26871 + f I SEARCH_START a field_32433 + f I LIST_START b field_32432 + f Lnet/minecraft/network/chat/Component; TITLE c field_49551 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE r field_45564 + f Lnet/minecraft/resources/ResourceLocation; SEARCH_SPRITE s field_45565 + f Lnet/minecraft/network/chat/Component; TAB_ALL u field_26876 + f Lnet/minecraft/network/chat/Component; TAB_HIDDEN v field_26877 + f Lnet/minecraft/network/chat/Component; TAB_BLOCKED w field_26915 + f Lnet/minecraft/network/chat/Component; TAB_ALL_SELECTED x field_26878 + f Lnet/minecraft/network/chat/Component; TAB_HIDDEN_SELECTED y field_26879 + f Lnet/minecraft/network/chat/Component; TAB_BLOCKED_SELECTED z field_26916 + m ()I listEnd C method_31361 + m ()I marginX D method_31362 + m (Lnet/minecraft/client/Minecraft;)V updateServerLabel a method_31350 + p 1 minecraft + m (Lnet/minecraft/client/gui/components/Button;)V method_57765 a method_57765 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page;)V showPage a method_31352 + p 1 page + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57766 a method_57766 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)V onAddPlayer a method_31353 + p 1 playerInfo + m (Ljava/lang/String;)V checkSearchStringUpdate a method_31357 + p 1 newText + m (Ljava/util/UUID;)V onRemovePlayer a method_31355 + p 1 id + m (Lnet/minecraft/client/gui/components/Button;)V method_31396 b method_31396 + m (Lnet/minecraft/client/gui/components/Button;)V method_31351 c method_31351 + m (Lnet/minecraft/client/gui/components/Button;)V method_31356 d method_31356 + m ()I windowHeight m method_31359 + m ()V + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen$1 fsw$1 net/minecraft/class_5522$1 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen; field_26920 d field_26920 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page fsw$a net/minecraft/class_5522$class_5523 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; ALL a field_26890 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; HIDDEN b field_26891 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; BLOCKED c field_26921 + f [Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; $VALUES d field_26892 + m ()[Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; $values a method_36890 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/screens/social/package-info fsx net/minecraft/class_6222 +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget fsy net/minecraft/class_7941 + f I HEADER_HORIZONTAL_PADDING a field_41355 + f Ljava/lang/String; TELEMETRY_REQUIRED_TRANSLATION_KEY b field_41356 + f Ljava/lang/String; TELEMETRY_OPTIONAL_TRANSLATION_KEY c field_41357 + f Ljava/lang/String; TELEMETRY_OPTIONAL_DISABLED_TRANSLATION_KEY d field_47125 + f Lnet/minecraft/network/chat/Component; PROPERTY_TITLE e field_41358 + f Lnet/minecraft/client/gui/Font; font f field_41359 + f Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; content m field_41360 + f Ljava/util/function/DoubleConsumer; onScrolledListener n field_41361 + m (Lnet/minecraft/client/gui/GuiGraphics;IIFLnet/minecraft/client/gui/components/AbstractWidget;)V method_48285 a method_48285 + m (Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder;Lnet/minecraft/client/telemetry/TelemetryEventType;Z)V addEventType a method_47635 + p 1 contentBuilder + p 2 eventType + p 3 disabled + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder;Z)V addEventTypeProperties a method_47636 + p 1 eventType + p 2 contentBuilder + p 3 disabled + m (Ljava/util/function/DoubleConsumer;)V setOnScrolledListener a method_47637 + p 1 onScrolledListener + m (Lnet/minecraft/network/chat/Component;Z)Lnet/minecraft/network/chat/Component; grayOutIfDisabled a method_54801 + p 1 component + p 2 disabled + m (Z)V onOptInChanged b method_47638 + p 1 optIn + m (Z)Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; buildContent c method_47639 + p 1 optIn + m ()V updateLayout j method_57767 + m ()I containerWidth k method_47640 + m (IIIILnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 font + m ()V +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content fsy$a net/minecraft/class_7941$class_7942 + f Lnet/minecraft/client/gui/layouts/Layout; container a comp_1160 + f Lnet/minecraft/network/chat/Component; narration b comp_1161 + m ()Lnet/minecraft/client/gui/layouts/Layout; container a comp_1160 + m ()Lnet/minecraft/network/chat/Component; narration b comp_1161 + m (Lnet/minecraft/client/gui/layouts/Layout;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder fsy$b net/minecraft/class_7941$class_7943 + f I width a field_41362 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout b field_45566 + f Lnet/minecraft/network/chat/MutableComponent; narration c field_41366 + m ()Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; build a method_47641 + m (I)V addSpacer a method_47642 + p 1 height + m (ILnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52763 a method_52763 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V addLine a method_47643 + p 1 font + p 2 message + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;I)V addLine a method_47644 + p 1 font + p 2 message + p 3 padding + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52764 a method_52764 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V addHeader b method_47645 + p 1 font + p 2 message + m (I)V + p 1 width +c net/minecraft/client/gui/screens/telemetry/TelemetryInfoScreen fsz net/minecraft/class_7944 + f Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget; telemetryEventWidget A field_41375 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; description B field_49554 + f D savedScroll C field_41376 + f Lnet/minecraft/network/chat/Component; TITLE a field_41369 + f Lnet/minecraft/network/chat/Component; DESCRIPTION b field_41370 + f Lnet/minecraft/network/chat/Component; BUTTON_PRIVACY_STATEMENT c field_45567 + f Lnet/minecraft/network/chat/Component; BUTTON_GIVE_FEEDBACK r field_41371 + f Lnet/minecraft/network/chat/Component; BUTTON_VIEW_DATA s field_41372 + f Lnet/minecraft/network/chat/Component; CHECKBOX_OPT_IN u field_47126 + f I SPACING v field_41367 + f Z EXTRA_TELEMETRY_AVAILABLE w field_49552 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen x field_41373 + f Lnet/minecraft/client/Options; options y field_41374 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout z field_49553 + m (D)V method_47646 a method_47646 + m (Lnet/minecraft/client/gui/components/AbstractWidget;Z)V onOptInChanged a method_54803 + p 1 widget + p 2 optedIn + m (Lnet/minecraft/client/gui/components/Button;)V openPrivacyStatementLink a method_52765 + p 1 button + m (Lnet/minecraft/client/gui/screens/telemetry/TelemetryInfoScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48286 a method_48286 + m (Lnet/minecraft/client/gui/components/Button;)V openFeedbackLink b method_47650 + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V openDataFolder c method_47651 + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V method_57768 d method_57768 + m ()Lnet/minecraft/client/gui/components/AbstractWidget; createTelemetryCheckbox m method_54802 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/telemetry/package-info fta net/minecraft/class_7945 +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen ftb net/minecraft/class_7745 + f Lnet/minecraft/network/chat/Component; TITLE a field_40443 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_40444 + f Lnet/minecraft/network/chat/Component; DETAILS_BUTTON c field_40445 + f I COLUMN_SPACING r field_42498 + f I DETAILS_BUTTON_WIDTH s field_42499 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback u field_40447 + f Ljava/util/Collection; enabledPacks v field_40448 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout w field_42500 + m (Lnet/minecraft/client/gui/components/Button;)V method_45666 a method_45666 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_49008 a method_49008 + m (Lnet/minecraft/client/gui/components/Button;)V method_45668 b method_45668 + m (Lnet/minecraft/client/gui/components/Button;)V method_45667 c method_45667 + m (Ljava/util/Collection;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 enabledPacks + p 2 callback + m ()V +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen ftb$a net/minecraft/class_7745$class_7746 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen; field_40450 a field_40450 + f Lnet/minecraft/network/chat/Component; TITLE b field_49555 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49556 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackList; list r field_50222 + m (Lnet/minecraft/client/gui/components/Button;)V method_45671 a method_45671 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/gui/Font; method_45672 a method_45672 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57769 a method_57769 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/Minecraft; method_45673 b method_45673 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/gui/Font; method_45674 c method_45674 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackList ftb$a$a net/minecraft/class_7745$class_7746$class_7747 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/client/Minecraft;Ljava/util/Collection;)V + p 2 minecraft + p 3 enabledPacks +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackListEntry ftb$a$b net/minecraft/class_7745$class_7746$class_7748 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen; field_40453 a field_40453 + f Lnet/minecraft/network/chat/Component; packId b field_40454 + f Lnet/minecraft/network/chat/Component; message c field_40455 + f Lnet/minecraft/client/gui/components/MultiLineLabel; splitMessage d field_40456 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/MultiLineLabel;)V + p 2 packId + p 3 message + p 4 splitMessage +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen ftc net/minecraft/class_525 + f I VERTICAL_BUTTON_SPACING A field_42171 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout B field_49557 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState; uiState C field_42172 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager D field_42173 + f Z recreated E field_42502 + f Lnet/minecraft/world/level/validation/DirectoryValidator; packValidator F field_45568 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen G field_3187 + f Ljava/nio/file/Path; tempDataPackDir H field_25477 + f Lnet/minecraft/server/packs/repository/PackRepository; tempDataPackRepository I field_25792 + f Lnet/minecraft/client/gui/components/tabs/TabNavigationBar; tabNavigationBar J field_42164 + f Lnet/minecraft/resources/ResourceLocation; TAB_HEADER_BACKGROUND a field_49902 + f I GROUP_BOTTOM b field_42165 + f I TAB_COLUMN_WIDTH c field_42166 + f Lorg/slf4j/Logger; LOGGER r field_25480 + f Ljava/lang/String; TEMP_WORLD_PREFIX s field_32434 + f Lnet/minecraft/network/chat/Component; GAME_MODEL_LABEL u field_25898 + f Lnet/minecraft/network/chat/Component; NAME_LABEL v field_26600 + f Lnet/minecraft/network/chat/Component; EXPERIMENTS_LABEL w field_42501 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS_INFO x field_42169 + f Lnet/minecraft/network/chat/Component; PREPARING_WORLD_DATA y field_37911 + f I HORIZONTAL_BUTTON_SPACING z field_42170 + m ()V popScreen C method_30297 + m ()V onCreate D method_2736 + m ()Ljava/nio/file/Path; getTempDataPackDir E method_29693 + m ()V removeTempDataPackDir F method_29695 + m ()Ljava/util/Optional; createNewWorldDirectory G method_41848 + m (Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45678 a method_45678 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_49009 a method_49009 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/server/WorldLoader$InitConfig; createDefaultLoadConfig a method_41849 + p 0 packRepository + p 1 initialDataConfig + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;Ljava/util/function/Consumer;)V applyNewPackConfig a method_45679 + p 1 packRepository + p 2 worldDataConfiguration + p 3 consumer + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;Ljava/util/function/Consumer;Z)V method_48643 a method_48643 + m (Lnet/minecraft/server/packs/repository/PackRepository;ZLjava/util/function/Consumer;)V tryApplyNewDataPacks a method_29682 + p 1 packRepository + p 2 shouldConfirm + p 3 consumer + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_45681 a method_45681 + m (Lcom/mojang/serialization/DynamicOps;Lcom/google/gson/JsonElement;)Lcom/mojang/serialization/DataResult; method_45682 a method_45682 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V openExperimentsScreen a method_49010 + p 1 worldDataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete;Lnet/minecraft/core/LayeredRegistryAccess;Lcom/mojang/serialization/Lifecycle;)V method_45683 a method_45683 + m (Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lnet/minecraft/core/LayeredRegistryAccess;Lcom/mojang/serialization/Lifecycle;)V createNewWorld a method_41847 + p 1 specialWorldProperty + p 3 worldGenSettingsLifecycle + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;)V openFresh a method_31130 + p 0 minecraft + p 1 lastScreen + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/nio/file/Path;)Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; createFromExisting a method_40212 + p 0 minecraft + p 1 lastScreen + p 2 levelSettings + p 3 settings + p 4 tempDataPackDir + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)V queueLoadScreen a method_41852 + p 0 minecraft + p 1 title + m (Lnet/minecraft/client/gui/components/AbstractWidget;)V method_48644 a method_48644 + m (Lnet/minecraft/client/gui/components/Button;)V method_19921 a method_19921 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48646 a method_48646 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48649 a method_48649 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_59841 a method_59841 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_58746 a method_58746 + m (Ljava/nio/file/Path;)Z method_41853 a method_41853 + m (Ljava/nio/file/Path;Lnet/minecraft/client/Minecraft;)Ljava/nio/file/Path; createTempDataPackDirFromExistingWorld a method_29685 + p 0 datapackDir + p 1 minecraft + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Z method_29686 a method_29686 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V copyBetweenDirs a method_29687 + p 0 fromDir + p 1 toDir + p 2 filePath + m (Ljava/util/List;Ljava/lang/String;)Z method_29983 a method_29983 + m (Ljava/util/function/Consumer;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/lang/Object; method_49629 a method_49629 + m (Ljava/util/function/Consumer;Z)V method_48654 a method_48654 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_29688 a method_29688 + m (Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45686 b method_45686 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_49011 b method_49011 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_41851 b method_41851 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V openDataPackSelectionScreen b method_29694 + p 1 worldDataConfiguration + m (Lnet/minecraft/client/gui/components/Button;)V method_19922 b method_19922 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48647 b method_48647 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48650 b method_48650 + m (Ljava/nio/file/Path;)V method_29689 b method_29689 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_41855 b method_41855 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Lcom/mojang/datafixers/util/Pair; getDataPackSelectionSettings c method_30296 + p 1 worldDataConfiguration + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48651 c method_48651 + m (Z)Lnet/minecraft/world/level/LevelSettings; createLevelSettings c method_40213 + p 1 debug + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48652 d method_48652 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48653 e method_48653 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48655 f method_48655 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48656 g method_48656 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState; getUiState m method_48657 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;Ljava/util/OptionalLong;)V + p 1 minecraft + p 2 lastScreen + p 3 settings + p 4 preset + p 5 seed + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie ftc$a net/minecraft/class_525$class_7749 + f Lnet/minecraft/world/level/levelgen/WorldGenSettings; worldGenSettings a comp_1025 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_1026 + m ()Lnet/minecraft/world/level/levelgen/WorldGenSettings; worldGenSettings a comp_1025 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_1026 + m (Lnet/minecraft/world/level/levelgen/WorldGenSettings;Lnet/minecraft/world/level/WorldDataConfiguration;)V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$GameTab ftc$b net/minecraft/class_525$class_8093 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42174 b field_42174 + f Lnet/minecraft/network/chat/Component; TITLE c field_42175 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS d field_42176 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit e field_42177 + m (Lnet/minecraft/client/gui/components/Button;)V method_49012 a method_49012 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_48658 a method_48658 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)V method_48659 a method_48659 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48660 a method_48660 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_48661 a method_48661 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)Lnet/minecraft/network/chat/Component; method_48662 a method_48662 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_49702 a method_49702 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_48663 a method_48663 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48664 b method_48664 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48665 c method_48665 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$MoreTab ftc$c net/minecraft/class_525$class_8094 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42178 b field_42178 + f Lnet/minecraft/network/chat/Component; TITLE c field_42179 + f Lnet/minecraft/network/chat/Component; GAME_RULES_LABEL d field_42180 + f Lnet/minecraft/network/chat/Component; DATA_PACKS_LABEL e field_42181 + m (Lnet/minecraft/client/gui/components/Button;)V method_49013 a method_49013 + m (Ljava/util/Optional;)V method_48667 a method_48667 + m ()V openGameRulesScreen b method_48669 + m (Lnet/minecraft/client/gui/components/Button;)V method_49014 b method_49014 + m (Lnet/minecraft/client/gui/components/Button;)V method_48668 c method_48668 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab ftc$d net/minecraft/class_525$class_8095 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42182 b field_42182 + f Lnet/minecraft/network/chat/Component; TITLE c field_42183 + f Lnet/minecraft/network/chat/Component; AMPLIFIED_HELP_TEXT d field_42184 + f Lnet/minecraft/network/chat/Component; GENERATE_STRUCTURES e field_42185 + f Lnet/minecraft/network/chat/Component; GENERATE_STRUCTURES_INFO f field_42186 + f Lnet/minecraft/network/chat/Component; BONUS_CHEST g field_42187 + f Lnet/minecraft/network/chat/Component; SEED_LABEL h field_42188 + f Lnet/minecraft/network/chat/Component; SEED_EMPTY_HINT i field_42189 + f I WORLD_TAB_WIDTH j field_42190 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit k field_42191 + f Lnet/minecraft/client/gui/components/Button; customizeTypeButton l field_42192 + m (Lnet/minecraft/client/gui/components/Button;)V method_48670 a method_48670 + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; createTypeButtonNarration a method_48671 + p 0 button + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry;)V method_48672 a method_48672 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48673 a method_48673 + m (Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper;Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_48674 a method_48674 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48675 a method_48675 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48676 a method_48676 + m (Ljava/lang/String;)V method_48677 a method_48677 + m ()V openPresetEditor b method_48678 + m ()Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; createWorldTypeValueSupplier c method_48679 + m ()Z method_48680 d method_48680 + m ()Z method_48681 e method_48681 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab$1 ftc$d$1 net/minecraft/class_525$class_8095$1 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42193 d field_42193 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab;Lnet/minecraft/client/gui/Font;IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab$2 ftc$d$2 net/minecraft/class_525$class_8095$2 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab; field_42195 a field_42195 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab;)V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen ftd net/minecraft/class_5235 + f Lnet/minecraft/network/chat/Component; TITLE a field_49558 + f I SPACING b field_49559 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49560 + f Ljava/util/function/Consumer; exitCallback r field_24293 + f Ljava/util/Set; invalidEntries s field_24295 + f Lnet/minecraft/world/level/GameRules; gameRules u field_24298 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList; ruleList v field_49903 + f Lnet/minecraft/client/gui/components/Button; doneButton w field_24296 + m (Lnet/minecraft/client/gui/components/Button;)V method_57770 a method_57770 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry;)V markInvalid a method_27620 + p 1 ruleEntry + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27621 a method_27621 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48682 a method_48682 + m (Lnet/minecraft/client/gui/components/Button;)V method_27619 b method_27619 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry;)V clearInvalid b method_27626 + p 1 ruleEntry + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29984 b method_29984 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27629 c method_27629 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29985 d method_29985 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29986 e method_29986 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27627 f method_27627 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/gui/Font; method_57771 g method_57771 + m ()V updateDoneButton m method_27632 + m (Lnet/minecraft/world/level/GameRules;Ljava/util/function/Consumer;)V + p 1 gameRules + p 2 exitCallback + m ()V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$BooleanRuleEntry ftd$a net/minecraft/class_5235$class_5236 + f Lnet/minecraft/client/gui/components/CycleButton; checkbox c field_24300 + m (Lnet/minecraft/world/level/GameRules$BooleanValue;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32674 a method_32674 + m (Ljava/lang/String;Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_32675 a method_32675 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$BooleanValue;)V + p 2 label + p 3 tooltip + p 5 value +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry ftd$b net/minecraft/class_5235$class_5237 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24305 a field_24305 + f Lnet/minecraft/network/chat/Component; label b field_24306 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;)V + p 2 label +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry$1 ftd$b$1 net/minecraft/class_5235$class_5237$1 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry; field_33845 a field_33845 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry;)V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$EntryFactory ftd$c net/minecraft/class_5235$class_5238 +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$GameRuleEntry ftd$d net/minecraft/class_5235$class_5400 + f Ljava/util/List; children a field_25630 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_25631 b field_25631 + f Ljava/util/List; label c field_25629 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderLabel a method_29989 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Ljava/util/List;Lnet/minecraft/network/chat/Component;)V + p 2 tooltip + p 3 label +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$IntegerRuleEntry ftd$e net/minecraft/class_5235$class_5239 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24307 c field_24307 + f Lnet/minecraft/client/gui/components/EditBox; input d field_24309 + m (Lnet/minecraft/world/level/GameRules$IntegerValue;Ljava/lang/String;)V method_27635 a method_27635 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$IntegerValue;)V + p 2 label + p 3 tooltip + p 5 value +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry ftd$f net/minecraft/class_5235$class_5240 + f Ljava/util/List; tooltip a field_24311 + m (Ljava/util/List;)V + p 1 tooltip +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList ftd$g net/minecraft/class_5235$class_5241 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24313 a field_24313 + f I ITEM_HEIGHT m field_49561 + m (Ljava/util/Map$Entry;)V method_27637 a method_27637 + m (Ljava/util/Map$Entry;)V method_27638 b method_27638 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/world/level/GameRules;)V + p 2 gameRules +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList$1 ftd$g$1 net/minecraft/class_5235$class_5241$1 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24314 a field_24314 + f Lnet/minecraft/world/level/GameRules; val$gameRules b field_24315 + f Ljava/util/Map; val$entries c field_24316 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList; field_24317 d field_24317 + m (Lnet/minecraft/world/level/GameRules$Category;)Ljava/util/Map; method_27639 a method_27639 + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$EntryFactory;)V addEntry a method_27640 + p 1 key + p 2 factory + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$BooleanValue;)Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry; method_27641 a method_27641 + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$IntegerValue;)Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry; method_27642 a method_27642 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList;Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/world/level/GameRules;Ljava/util/Map;)V +c net/minecraft/client/gui/screens/worldselection/EditWorldScreen fte net/minecraft/class_524 + f I VERTICAL_SPACING A field_46894 + f I HALF_WIDTH B field_46895 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46896 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback D field_3169 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; levelAccess E field_23777 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit F field_48397 + f Lorg/slf4j/Logger; LOGGER a field_23776 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26603 + f Lnet/minecraft/network/chat/Component; RESET_ICON_BUTTON c field_46885 + f Lnet/minecraft/network/chat/Component; FOLDER_BUTTON r field_46886 + f Lnet/minecraft/network/chat/Component; BACKUP_BUTTON s field_46887 + f Lnet/minecraft/network/chat/Component; BACKUP_FOLDER_BUTTON u field_46888 + f Lnet/minecraft/network/chat/Component; OPTIMIZE_BUTTON v field_46889 + f Lnet/minecraft/network/chat/Component; OPTIMIZE_TITLE w field_46890 + f Lnet/minecraft/network/chat/Component; OPTIMIIZE_DESCRIPTION x field_46891 + f Lnet/minecraft/network/chat/Component; SAVE_BUTTON y field_46892 + f I DEFAULT_WIDTH z field_46893 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Z makeBackupAndShowToast a method_2701 + p 0 levelAccess + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/Minecraft;ZZ)V method_54595 a method_54595 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54596 a method_54596 + m (Lnet/minecraft/client/Minecraft;)V method_54597 a method_54597 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54598 a method_54598 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)Lnet/minecraft/client/gui/screens/worldselection/EditWorldScreen; create a method_54599 + p 0 minecraft + p 1 levelAccess + p 2 callback + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/Button;)V method_54600 a method_54600 + m (Lnet/minecraft/client/gui/components/Button;)V method_54601 a method_54601 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_54602 a method_54602 + m (Lnet/minecraft/client/gui/screens/worldselection/EditWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54604 a method_54604 + m (Ljava/lang/String;)V onRename a method_2691 + p 1 saveName + m (Ljava/nio/file/Path;)Z method_54605 a method_54605 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54606 b method_54606 + m (Lnet/minecraft/client/gui/components/Button;)V method_54603 b method_54603 + m (Ljava/nio/file/Path;)V method_54607 b method_54607 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54608 c method_54608 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 minecraft + p 2 levelAccess + p 3 levelName + p 4 callback + m ()V +c net/minecraft/client/gui/screens/worldselection/ExperimentsScreen ftf net/minecraft/class_8134 + f Lnet/minecraft/network/chat/Component; TITLE a field_49562 + f Lnet/minecraft/network/chat/Component; INFO b field_50043 + f I MAIN_CONTENT_WIDTH c field_42503 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout r field_42504 + f Lnet/minecraft/client/gui/screens/Screen; parent s field_42505 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository u field_42506 + f Ljava/util/function/Consumer; output v field_42507 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; packs w field_42508 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; getHumanReadableTitle a method_49016 + p 0 pack + m (Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49017 a method_49017 + m (Lnet/minecraft/client/gui/components/Button;)V method_49018 a method_49018 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52767 a method_52767 + m (Lnet/minecraft/client/gui/screens/worldselection/ExperimentsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_49019 a method_49019 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49020 a method_49020 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49021 a method_49021 + m (Lnet/minecraft/server/packs/repository/Pack;)Z method_49022 b method_49022 + m (Lnet/minecraft/client/gui/components/Button;)V method_49023 b method_49023 + m ()V onDone m method_49024 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;)V + p 1 parent + p 2 packRepository + p 3 output + m ()V +c net/minecraft/client/gui/screens/worldselection/OptimizeWorldScreen ftg net/minecraft/class_527 + f Lorg/slf4j/Logger; LOGGER a field_25482 + f Ljava/util/function/ToIntFunction; DIMENSION_COLORS b field_3232 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback c field_3233 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; upgrader r field_3234 + m (Lnet/minecraft/client/Minecraft;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)Lnet/minecraft/client/gui/screens/worldselection/OptimizeWorldScreen; create a method_27031 + p 0 minecraft + p 1 callback + p 2 dataFixer + p 3 levelStorage + p 4 eraseCache + m (Lnet/minecraft/client/gui/components/Button;)V method_19938 a method_19938 + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_2747 a method_2747 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/LevelSettings;ZLnet/minecraft/core/RegistryAccess;)V + p 1 callback + p 2 dataFixer + p 3 levelStorage + p 4 levelSettings + p 5 eraseCache + p 6 registryAccess + m ()V +c net/minecraft/client/gui/screens/worldselection/PresetEditor fth net/minecraft/class_5293 + f Ljava/util/Map; EDITORS a field_37912 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater; flatWorldConfigurator a method_41856 + p 0 settings + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_41857 a method_41857 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V method_41858 a method_41858 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/Screen; method_41859 a method_41859 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/core/Holder;)V method_41860 a method_41860 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater; fixedBiomeConfigurator a method_41861 + p 0 biome + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_41862 a method_41862 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/Screen; method_41863 b method_41863 + m ()V +c net/minecraft/client/gui/screens/worldselection/SelectWorldScreen fti net/minecraft/class_526 + f Lnet/minecraft/world/level/levelgen/WorldOptions; TEST_OPTIONS a field_40457 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen b field_3221 + f Lnet/minecraft/client/gui/components/EditBox; searchBox c field_3220 + f Lorg/slf4j/Logger; LOGGER r field_28783 + f Lnet/minecraft/client/gui/components/Button; deleteButton s field_3219 + f Lnet/minecraft/client/gui/components/Button; selectButton u field_3224 + f Lnet/minecraft/client/gui/components/Button; renameButton v field_3215 + f Lnet/minecraft/client/gui/components/Button; copyButton w field_3216 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList; list x field_3218 + m (Lnet/minecraft/world/level/storage/LevelSummary;)V updateButtonStatus a method_19940 + p 1 levelSummary + m (Lnet/minecraft/client/gui/components/Button;)V method_35739 a method_35739 + m (Ljava/lang/String;)V method_2744 a method_2744 + m (Lnet/minecraft/client/gui/components/Button;)V method_19939 b method_19939 + m (Lnet/minecraft/client/gui/components/Button;)V method_19941 c method_19941 + m (Lnet/minecraft/client/gui/components/Button;)V method_19942 d method_19942 + m (Lnet/minecraft/client/gui/components/Button;)V method_19943 e method_19943 + m (Lnet/minecraft/client/gui/components/Button;)V method_19944 f method_19944 + m (Lnet/minecraft/client/gui/components/Button;)V method_19945 g method_19945 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid ftj net/minecraft/class_8096 + f I DEFAULT_SWITCH_BUTTON_WIDTH a field_42196 + f Ljava/util/List; switches b field_42197 + m ()V refreshStates a method_48683 + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; builder a method_48684 + p 0 width + m (Ljava/util/List;)V + p 1 switches +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder ftj$a net/minecraft/class_8096$class_8097 + f I width a field_42198 + f Ljava/util/List; switchBuilders b field_42199 + f I paddingLeft c field_42200 + f I rowSpacing d field_42509 + f I rowCount e field_42510 + f Ljava/util/Optional; infoUnderneath f field_42511 + m ()V increaseRow a method_49025 + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withPaddingLeft a method_48685 + p 1 paddingLeft + m (IZ)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withInfoUnderneath a method_49026 + p 1 maxInfoRows + p 2 alwaysMaxHeight + m (Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid; build a method_48686 + p 1 consumer + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; addSwitch a method_48687 + p 1 label + p 2 stateSupplier + p 3 onClicked + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withRowSpacing b method_49027 + p 1 rowSpacing + m (I)V + p 1 width +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$InfoUnderneathSettings ftj$b net/minecraft/class_8096$class_8135 + f I maxInfoRows a comp_1259 + f Z alwaysMaxHeight b comp_1260 + m ()I maxInfoRows a comp_1259 + m ()Z alwaysMaxHeight b comp_1260 + m (IZ)V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$LabeledSwitch ftj$c net/minecraft/class_8096$class_8098 + f Lnet/minecraft/client/gui/components/CycleButton; button a comp_1261 + f Ljava/util/function/BooleanSupplier; stateSupplier b comp_1262 + f Ljava/util/function/BooleanSupplier; isActiveCondition c comp_1263 + m ()V refreshState a method_48688 + m ()Lnet/minecraft/client/gui/components/CycleButton; button b comp_1261 + m ()Ljava/util/function/BooleanSupplier; stateSupplier c comp_1262 + m ()Ljava/util/function/BooleanSupplier; isActiveCondition d comp_1263 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/util/function/BooleanSupplier;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder ftj$d net/minecraft/class_8096$class_8099 + f Lnet/minecraft/network/chat/Component; label a field_42204 + f Ljava/util/function/BooleanSupplier; stateSupplier b field_42205 + f Ljava/util/function/Consumer; onClicked c field_42206 + f Lnet/minecraft/network/chat/Component; info d field_42207 + f Ljava/util/function/BooleanSupplier; isActiveCondition e field_42208 + f I buttonWidth f field_42209 + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_49028 a method_49028 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_48690 a method_48690 + m (Lnet/minecraft/client/gui/components/Tooltip;Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_49029 a method_49029 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/client/gui/layouts/GridLayout;I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$LabeledSwitch; build a method_48691 + p 1 builder + p 2 gridLayout + p 3 column + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/client/gui/layouts/GridLayout;ILnet/minecraft/client/gui/screens/worldselection/SwitchGrid$InfoUnderneathSettings;)V method_49030 a method_49030 + m (Ljava/util/function/BooleanSupplier;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; withIsActiveCondition a method_48693 + p 1 isActiveCondition + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; withInfo a method_48694 + p 1 info + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_49031 b method_49031 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;I)V + p 1 label + p 2 stateSupplier + p 3 onClicked + p 4 buttonWidth +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext ftk net/minecraft/class_7193 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options a comp_616 + f Lnet/minecraft/core/Registry; datapackDimensions b comp_1027 + f Lnet/minecraft/world/level/levelgen/WorldDimensions; selectedDimensions c comp_1028 + f Lnet/minecraft/core/LayeredRegistryAccess; worldgenRegistries d comp_1029 + f Lnet/minecraft/server/ReloadableServerResources; dataPackResources e comp_619 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration f comp_1030 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; worldgenLoadContext a method_45689 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withSettings a method_41864 + p 1 options + p 2 selectedDimensions + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withDimensions a method_41866 + p 1 dimensionsUpdater + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$OptionsModifier;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withOptions a method_45690 + p 1 optionsModifier + m ()V validate b method_60345 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options c comp_616 + m ()Lnet/minecraft/core/Registry; datapackDimensions d comp_1027 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; selectedDimensions e comp_1028 + m ()Lnet/minecraft/core/LayeredRegistryAccess; worldgenRegistries f comp_1029 + m ()Lnet/minecraft/server/ReloadableServerResources; dataPackResources g comp_619 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration h comp_1030 + m (Lnet/minecraft/world/level/levelgen/WorldGenSettings;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 worldGenSettings + p 2 worldGenRegistries + p 3 dataPackResources + p 4 dataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 options + p 2 selectedDimensions + p 3 worldGenRegistries + p 4 dataPackResources + p 5 dataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldDimensions;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater ftk$a net/minecraft/class_7193$class_7195 +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext$OptionsModifier ftk$b net/minecraft/class_7193$class_7194 +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState ftl net/minecraft/class_8100 + f Lnet/minecraft/network/chat/Component; DEFAULT_WORLD_NAME a field_43104 + f Ljava/util/List; listeners b field_42210 + f Ljava/lang/String; name c field_42211 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; gameMode d field_42213 + f Lnet/minecraft/world/Difficulty; difficulty e field_42214 + f Ljava/lang/Boolean; allowCommands f field_42215 + f Ljava/lang/String; seed g field_42216 + f Z generateStructures h field_42217 + f Z bonusChest i field_42218 + f Ljava/nio/file/Path; savesFolder j field_43105 + f Ljava/lang/String; targetFolder k field_43106 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; settings l field_42219 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry; worldType m field_42220 + f Ljava/util/List; normalPresetList n field_42221 + f Ljava/util/List; altPresetList o field_42222 + f Lnet/minecraft/world/level/GameRules; gameRules p field_42223 + m ()V onChanged a method_48695 + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_48696 + p 1 difficulty + m (Lnet/minecraft/world/level/GameRules;)V setGameRules a method_48697 + p 1 gameRules + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Z tryUpdateDataConfiguration a method_48698 + p 1 worldDataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48699 a method_48699 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater;)V updateDimensions a method_48700 + p 1 dimensionsUpdater + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)V setSettings a method_48701 + p 1 settings + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_48702 a method_48702 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;)Ljava/util/Optional; findPreset a method_48703 + p 0 context + p 1 preset + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)V setGameMode a method_48704 + p 1 gameMode + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry;)V setWorldType a method_48705 + p 1 worldType + m (Ljava/lang/String;)V setName a method_48710 + p 1 name + m (Ljava/util/List;)Z method_48711 a method_48711 + m (Ljava/util/function/Consumer;)V addListener a method_48712 + p 1 listener + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_48706 a method_48706 + m (Lnet/minecraft/core/HolderSet$Named;)Ljava/util/List; method_48707 a method_48707 + m (Lnet/minecraft/core/Registry;)Ljava/util/List; method_48708 a method_48708 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; getNonEmptyList a method_48709 + p 0 registry + p 1 key + m (Z)V setAllowCommands a method_48713 + p 1 allowCommands + m (ZLnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48714 a method_48714 + m ()Ljava/lang/String; getName b method_48715 + m (Ljava/lang/String;)V setSeed b method_48716 + p 1 seed + m (Z)V setGenerateStructures b method_48717 + p 1 generateStructures + m (ZLnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48718 b method_48718 + m ()Ljava/lang/String; getTargetFolder c method_49703 + m (Ljava/lang/String;)Ljava/lang/String; findResultFolder c method_49704 + p 1 name + m (Z)V setBonusChest c method_48720 + p 1 bonusChest + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; getGameMode d method_48721 + m ()Lnet/minecraft/world/Difficulty; getDifficulty e method_48722 + m ()Z isHardcore f method_48723 + m ()Z isAllowCommands g method_48724 + m ()Ljava/lang/String; getSeed h method_48725 + m ()Z isGenerateStructures i method_48726 + m ()Z isBonusChest j method_48727 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; getSettings k method_48728 + m ()Z isDebug l method_48729 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry; getWorldType m method_48730 + m ()Lnet/minecraft/client/gui/screens/worldselection/PresetEditor; getPresetEditor n method_48731 + m ()Ljava/util/List; getNormalPresetList o method_48732 + m ()Ljava/util/List; getAltPresetList p method_48733 + m ()Lnet/minecraft/world/level/GameRules; getGameRules q method_48734 + m ()V updatePresetLists r method_48735 + m (Ljava/nio/file/Path;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;Ljava/util/OptionalLong;)V + p 1 savesFolder + p 2 settings + p 3 preset + p 4 seed + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode ftl$a net/minecraft/class_8100$class_4539 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; SURVIVAL a field_20624 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; HARDCORE b field_20625 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; CREATIVE c field_20626 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; DEBUG d field_20627 + f Lnet/minecraft/world/level/GameType; gameType e field_20629 + f Lnet/minecraft/network/chat/Component; displayName f field_42224 + f Lnet/minecraft/network/chat/Component; info g field_42225 + f [Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; $VALUES h field_20630 + m ()Lnet/minecraft/network/chat/Component; getInfo a method_48736 + m ()[Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; $values b method_36891 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/GameType;)V + p 3 id + p 4 gameType + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry ftl$b net/minecraft/class_8100$class_8101 + f Lnet/minecraft/core/Holder; preset a comp_1238 + f Lnet/minecraft/network/chat/Component; CUSTOM_WORLD_DESCRIPTION b field_42226 + m ()Lnet/minecraft/network/chat/Component; describePreset a method_48737 + m (Lnet/minecraft/resources/ResourceKey;)Z method_48738 a method_48738 + m ()Z isAmplified b method_48739 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_48740 b method_48740 + m ()Lnet/minecraft/core/Holder; preset c comp_1238 + m (Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldOpenFlows ftm net/minecraft/class_7196 + f Lorg/slf4j/Logger; LOGGER a field_37913 + f Ljava/util/UUID; WORLD_PACK_ID b field_47592 + f Lnet/minecraft/client/Minecraft; minecraft c field_37914 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelSource d field_37915 + m ()Ljava/util/concurrent/CompletableFuture; promptBundledPackLoadFailure a method_43324 + m (Lnet/minecraft/server/WorldLoader$PackConfig;Lnet/minecraft/server/WorldLoader$WorldDataSupplier;Lnet/minecraft/server/WorldLoader$ResultFactory;)Ljava/lang/Object; loadWorldDataBlocking a method_45694 + p 1 packConfig + p 2 worldDataSupplier + p 3 resultFactory + m (Lnet/minecraft/server/WorldStem;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57772 a method_57772 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/WorldOpenFlows$1Data;)Lcom/mojang/datafixers/util/Pair; method_45695 a method_45695 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_54609 a method_54609 + m (Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/server/packs/repository/PackRepository;)Lnet/minecraft/server/WorldStem; loadWorldStem a method_54610 + p 1 dynamic + p 2 safeMode + p 3 packRepository + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Lcom/mojang/datafixers/util/Pair; recreateWorldData a method_45696 + p 1 levelStorage + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V createLevelFromExistingSettings a method_41889 + p 1 levelStorage + p 2 resources + p 3 registries + p 4 worldData + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;)V openWorldDoLoad a method_57773 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/client/resources/server/DownloadedPackSource;Ljava/lang/Runnable;Z)V method_57774 a method_57774 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldCheckWorldStemCompatibility a method_57775 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldCheckDiskSpace a method_57776 + p 1 levelStorage + p 2 worldStem + p 3 packSource + p 4 packRepository + p 5 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;Ljava/lang/Boolean;)V method_57777 a method_57777 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;)V method_57778 a method_57778 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;ZZ)V method_57779 a method_57779 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;ZLjava/lang/Runnable;)V openWorldLoadLevelStem a method_57780 + p 1 levelStorage + p 2 levelData + p 3 safeMode + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/storage/LevelSummary;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;)V openWorldCheckVersionCompatibility a method_57781 + p 1 levelStorage + p 2 levelSummary + p 3 levelData + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V openWorldLoadLevelData a method_57782 + p 1 levelStorage + p 2 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;Z)V method_57783 a method_57783 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;ZZ)V method_54617 a method_54617 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;ZLjava/lang/Runnable;Ljava/lang/Runnable;)V askForBackup a method_41898 + p 1 levelStorage + p 2 customized + p 3 loadLevel + p 4 onCancel + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lcom/mojang/serialization/Lifecycle;Ljava/lang/Runnable;Z)V confirmWorldCreation a method_41892 + p 0 minecraft + p 1 screen + p 2 lifecycle + p 3 loadWorld + p 4 skipWarnings + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Ljava/util/concurrent/CompletableFuture; loadBundledResourcePack a method_55510 + p 1 packSource + p 2 level + m (Ljava/lang/Runnable;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Z)V method_41893 a method_41893 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; createWorldAccess a method_41901 + p 1 levelName + m (Ljava/lang/String;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Ljava/util/function/Function;Lnet/minecraft/client/gui/screens/Screen;)V createFreshLevel a method_41895 + p 1 levelName + p 2 levelSettings + p 3 worldOptions + p 4 dimensionGetter + p 5 lastScreen + m (Ljava/lang/String;Ljava/lang/Runnable;)V openWorld a method_57784 + p 1 worldName + p 2 onFail + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_57785 a method_57785 + m (Ljava/lang/Void;)Ljava/lang/Boolean; method_57786 a method_57786 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45698 a method_45698 + m ()V method_54621 b method_54621 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_54622 b method_54622 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldLoadBundledResourcePack b method_57787 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57788 b method_57788 + m (Ljava/lang/Throwable;)Ljava/util/concurrent/CompletionStage; method_57789 b method_57789 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V method_57790 c method_57790 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57791 c method_57791 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource;)V + p 1 minecraft + p 2 levelSource + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldOpenFlows$1Data ftm$a net/minecraft/class_7196$class_7750 + f Lnet/minecraft/world/level/LevelSettings; levelSettings a comp_1031 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1032 + f Lnet/minecraft/core/Registry; existingDimensions c comp_1033 + m ()Lnet/minecraft/world/level/LevelSettings; levelSettings a comp_1031 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1032 + m ()Lnet/minecraft/core/Registry; existingDimensions c comp_1033 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/Registry;)V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList ftn net/minecraft/class_528 + f Lnet/minecraft/network/chat/Component; WORLD_LOCKED_TOOLTIP A field_26610 + f Lnet/minecraft/network/chat/Component; WORLD_REQUIRES_CONVERSION B field_34803 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_VERSION_TOOLTIP C field_46897 + f Lnet/minecraft/network/chat/Component; WORLD_EXPERIMENTAL D field_45569 + f Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; screen E field_3237 + f Ljava/util/concurrent/CompletableFuture; pendingLevels F field_39739 + f Ljava/util/List; currentlyDisplayedLevels G field_39740 + f Ljava/lang/String; filter H field_39738 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList$LoadingHeader; loadingHeader I field_38994 + f Ljava/time/format/DateTimeFormatter; DATE_FORMAT a field_19132 + f Lnet/minecraft/resources/ResourceLocation; ERROR_HIGHLIGHTED_SPRITE m field_45570 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE n field_45571 + f Lnet/minecraft/resources/ResourceLocation; MARKED_JOIN_HIGHLIGHTED_SPRITE o field_45572 + f Lnet/minecraft/resources/ResourceLocation; MARKED_JOIN_SPRITE p field_45573 + f Lnet/minecraft/resources/ResourceLocation; WARNING_HIGHLIGHTED_SPRITE q field_45574 + f Lnet/minecraft/resources/ResourceLocation; WARNING_SPRITE r field_45575 + f Lnet/minecraft/resources/ResourceLocation; JOIN_HIGHLIGHTED_SPRITE s field_45576 + f Lnet/minecraft/resources/ResourceLocation; JOIN_SPRITE u field_45577 + f Lorg/slf4j/Logger; LOGGER v field_3238 + f Lnet/minecraft/network/chat/Component; FROM_NEWER_TOOLTIP_1 w field_26606 + f Lnet/minecraft/network/chat/Component; FROM_NEWER_TOOLTIP_2 x field_26607 + f Lnet/minecraft/network/chat/Component; SNAPSHOT_TOOLTIP_1 y field_26608 + f Lnet/minecraft/network/chat/Component; SNAPSHOT_TOOLTIP_2 z field_26609 + m ()Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; getScreen J method_2752 + m ()Ljava/util/List; pollLevelsIgnoreErrors K method_44679 + m ()V reloadWorldList L method_44680 + m ()Ljava/util/concurrent/CompletableFuture; loadLevels M method_43462 + m ()V fillLoadingLevels N method_43463 + m ()V notifyListUpdated O method_43464 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList$Entry;)V setSelected a method_20157 + p 1 selected + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;)Lnet/minecraft/client/Minecraft; method_43452 a method_43452 + m (Ljava/lang/String;)V updateFilter a method_44677 + p 1 filter + m (Ljava/lang/String;Lnet/minecraft/world/level/storage/LevelSummary;)Z filterAccepts a method_43453 + p 1 filter + p 2 level + m (Ljava/lang/String;Ljava/util/List;)V fillLevels a method_43454 + p 1 filter + p 2 levels + m (Ljava/lang/Throwable;)Ljava/util/List; method_43455 a method_43455 + m (Ljava/util/List;)V handleNewLevels a method_44678 + p 1 levels + m ()Ljava/util/Optional; getSelectedOpt c method_20159 + m (Lnet/minecraft/network/chat/Component;)V handleLevelLoadFailure c method_43460 + p 1 exceptionMessage + m (Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen;Lnet/minecraft/client/Minecraft;IIIILjava/lang/String;Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;)V + p 1 screen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight + p 7 filter + p 8 worlds + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$Entry ftn$a net/minecraft/class_528$class_7414 + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$LoadingHeader ftn$b net/minecraft/class_528$class_7415 + f Lnet/minecraft/network/chat/Component; LOADING_LABEL a field_38997 + f Lnet/minecraft/client/Minecraft; minecraft b field_38998 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$WorldListEntry ftn$c net/minecraft/class_528$class_4272 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList; field_19135 a field_19135 + f I ICON_WIDTH b field_32435 + f I ICON_HEIGHT c field_32436 + f Lnet/minecraft/client/Minecraft; minecraft d field_19136 + f Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; screen e field_19137 + f Lnet/minecraft/world/level/storage/LevelSummary; summary f field_19138 + f Lnet/minecraft/client/gui/screens/FaviconTexture; icon g field_19141 + f Ljava/nio/file/Path; iconFile h field_19140 + f J lastClickTime i field_19142 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/nio/file/Path;Z)V method_20165 a method_20165 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)V method_54628 a method_54628 + m ()Z canJoin b method_54629 + m (Z)V method_20170 b method_20170 + m ()V joinWorld c method_20164 + m ()V deleteWorld d method_20169 + m ()V doDeleteWorld e method_33685 + m ()V editWorld f method_20171 + m ()V recreateWorld h method_20173 + m ()Ljava/lang/String; getLevelName i method_35740 + m ()V validateIconFile j method_52265 + m ()V queueLoadScreen k method_29990 + m ()V loadIcon l method_52205 + m ()V method_20176 m method_20176 + m ()V method_54630 n method_54630 + m ()V method_54631 o method_54631 + m ()V method_54632 p method_54632 + m ()V method_20179 q method_20179 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 2 worldSelectionList + p 3 summary +c net/minecraft/client/gui/screens/worldselection/package-info fto net/minecraft/class_6223 +c net/minecraft/client/gui/spectator/PlayerMenuItem ftp net/minecraft/class_530 + f Lcom/mojang/authlib/GameProfile; profile a field_3253 + f Ljava/util/function/Supplier; skin b field_45578 + f Lnet/minecraft/network/chat/Component; name c field_26611 + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile +c net/minecraft/client/gui/spectator/RootSpectatorMenuCategory ftq net/minecraft/class_534 + f Lnet/minecraft/network/chat/Component; PROMPT_TEXT a field_26612 + f Ljava/util/List; items b field_3266 + m ()V + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu ftr net/minecraft/class_531 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; EMPTY_SLOT a field_3260 + f Lnet/minecraft/resources/ResourceLocation; CLOSE_SPRITE b field_45579 + f Lnet/minecraft/resources/ResourceLocation; SCROLL_LEFT_SPRITE c field_45580 + f Lnet/minecraft/resources/ResourceLocation; SCROLL_RIGHT_SPRITE d field_45581 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; CLOSE_ITEM e field_3261 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_LEFT f field_3262 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_RIGHT_ENABLED g field_3256 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_RIGHT_DISABLED h field_3259 + f I MAX_PER_PAGE i field_32443 + f Lnet/minecraft/network/chat/Component; CLOSE_MENU_TEXT j field_26613 + f Lnet/minecraft/network/chat/Component; PREVIOUS_PAGE_TEXT k field_26614 + f Lnet/minecraft/network/chat/Component; NEXT_PAGE_TEXT l field_26615 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuListener; listener m field_3255 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory; category n field_3258 + f I selectedSlot o field_3254 + f I page p field_3263 + m ()Ljava/util/List; getItems a method_2770 + m (I)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getItem a method_2777 + p 1 index + m (Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory;)V selectCategory a method_2778 + p 1 category + m ()Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getSelectedItem b method_2774 + m (I)V selectSlot b method_2771 + p 1 slot + m ()Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory; getSelectedCategory c method_2776 + m ()V exit d method_2779 + m ()I getSelectedSlot e method_2773 + m ()Lnet/minecraft/client/gui/spectator/categories/SpectatorPage; getCurrentPage f method_2772 + m (Lnet/minecraft/client/gui/spectator/SpectatorMenuListener;)V + p 1 listener + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$1 ftr$1 net/minecraft/class_531$1 + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$CloseSpectatorItem ftr$a net/minecraft/class_531$class_532 + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$ScrollMenuItem ftr$b net/minecraft/class_531$class_533 + f I direction a field_3264 + f Z enabled b field_3265 + m (IZ)V + p 1 direction + p 2 enabled +c net/minecraft/client/gui/spectator/SpectatorMenuCategory fts net/minecraft/class_535 + m ()Ljava/util/List; getItems a method_2780 + m ()Lnet/minecraft/network/chat/Component; getPrompt b method_2781 +c net/minecraft/client/gui/spectator/SpectatorMenuItem ftt net/minecraft/class_537 + m (Lnet/minecraft/client/gui/GuiGraphics;FI)V renderIcon a method_2784 + p 1 guiGraphics + p 2 shadeColor + p 3 alpha + m (Lnet/minecraft/client/gui/spectator/SpectatorMenu;)V selectItem a method_2783 + p 1 menu + m ()Lnet/minecraft/network/chat/Component; getName aU_ method_16892 + m ()Z isEnabled aV_ method_16893 +c net/minecraft/client/gui/spectator/SpectatorMenuListener ftu net/minecraft/class_536 + m (Lnet/minecraft/client/gui/spectator/SpectatorMenu;)V onSpectatorMenuClosed a method_2782 + p 1 menu +c net/minecraft/client/gui/spectator/categories/SpectatorPage ftv net/minecraft/class_539 + f I NO_SELECTION a field_32444 + f Ljava/util/List; items b field_3271 + f I selection c field_3269 + m ()I getSelectedSlot a method_2787 + m (I)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getItem a method_2786 + p 1 index + m (Ljava/util/List;I)V + p 1 items + p 2 selection +c net/minecraft/client/gui/spectator/categories/TeleportToPlayerMenuCategory ftw net/minecraft/class_538 + f Lnet/minecraft/resources/ResourceLocation; TELEPORT_TO_PLAYER_SPRITE a field_45582 + f Ljava/util/Comparator; PROFILE_ORDER b field_3267 + f Lnet/minecraft/network/chat/Component; TELEPORT_TEXT c field_26616 + f Lnet/minecraft/network/chat/Component; TELEPORT_PROMPT d field_26617 + f Ljava/util/List; items e field_3268 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; method_46520 a method_46520 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Z method_46521 b method_46521 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/util/UUID; method_2785 c method_2785 + m ()V + m (Ljava/util/Collection;)V + p 1 players + m ()V +c net/minecraft/client/gui/spectator/categories/TeleportToTeamMenuCategory ftx net/minecraft/class_540 + f Lnet/minecraft/resources/ResourceLocation; TELEPORT_TO_TEAM_SPRITE a field_45583 + f Lnet/minecraft/network/chat/Component; TELEPORT_TEXT b field_26618 + f Lnet/minecraft/network/chat/Component; TELEPORT_PROMPT c field_26619 + f Ljava/util/List; items d field_3272 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/PlayerTeam;)Ljava/util/stream/Stream; method_47431 a method_47431 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/Scoreboard;)Ljava/util/List; createTeamEntries a method_47432 + p 0 minecraft + p 1 scoreboard + m ()V + m ()V +c net/minecraft/client/gui/spectator/categories/TeleportToTeamMenuCategory$TeamSelectionItem ftx$a net/minecraft/class_540$class_541 + f Lnet/minecraft/world/scores/PlayerTeam; team a field_3275 + f Ljava/util/function/Supplier; iconSkin b field_41115 + f Ljava/util/List; players c field_3274 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/PlayerTeam;)Ljava/util/Optional; create a method_47433 + p 0 minecraft + p 1 team + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Ljava/util/function/Supplier;)V + p 1 team + p 2 players + p 3 iconSkin +c net/minecraft/client/gui/spectator/categories/package-info fty net/minecraft/class_6224 +c net/minecraft/client/gui/spectator/package-info ftz net/minecraft/class_6225 +c net/minecraft/client/main/GameConfig fua net/minecraft/class_542 + f Lnet/minecraft/client/main/GameConfig$UserData; user a field_3278 + f Lcom/mojang/blaze3d/platform/DisplayData; display b field_3279 + f Lnet/minecraft/client/main/GameConfig$FolderData; location c field_3277 + f Lnet/minecraft/client/main/GameConfig$GameData; game d field_3280 + f Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlay e field_44553 + m (Lnet/minecraft/client/main/GameConfig$UserData;Lcom/mojang/blaze3d/platform/DisplayData;Lnet/minecraft/client/main/GameConfig$FolderData;Lnet/minecraft/client/main/GameConfig$GameData;Lnet/minecraft/client/main/GameConfig$QuickPlayData;)V + p 1 user + p 2 display + p 3 location + p 4 game + p 5 quickPlay +c net/minecraft/client/main/GameConfig$FolderData fua$a net/minecraft/class_542$class_544 + f Ljava/io/File; gameDirectory a field_3287 + f Ljava/io/File; resourcePackDirectory b field_3290 + f Ljava/io/File; assetDirectory c field_3289 + f Ljava/lang/String; assetIndex d field_3288 + m ()Ljava/nio/file/Path; getExternalAssetSource a method_45701 + m (Ljava/io/File;Ljava/io/File;Ljava/io/File;Ljava/lang/String;)V + p 1 gameDirectory + p 2 resourcePackDirectory + p 3 assetDirectory + p 4 assetIndex +c net/minecraft/client/main/GameConfig$GameData fua$b net/minecraft/class_542$class_545 + f Z demo a field_3292 + f Ljava/lang/String; launchVersion b field_3293 + f Ljava/lang/String; versionType c field_3291 + f Z disableMultiplayer d field_25061 + f Z disableChat e field_25062 + m (ZLjava/lang/String;Ljava/lang/String;ZZ)V + p 1 demo + p 2 launchVersion + p 3 versionType + p 4 disableMultiplayer + p 5 disableChat +c net/minecraft/client/main/GameConfig$QuickPlayData fua$c net/minecraft/class_542$class_8495 + f Ljava/lang/String; path a comp_1476 + f Ljava/lang/String; singleplayer b comp_1477 + f Ljava/lang/String; multiplayer c comp_1478 + f Ljava/lang/String; realms d comp_1479 + m ()Z isEnabled a method_51257 + m ()Ljava/lang/String; path b comp_1476 + m ()Ljava/lang/String; singleplayer c comp_1477 + m ()Ljava/lang/String; multiplayer d comp_1478 + m ()Ljava/lang/String; realms e comp_1479 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/client/main/GameConfig$UserData fua$d net/minecraft/class_542$class_547 + f Lnet/minecraft/client/User; user a field_3299 + f Lcom/mojang/authlib/properties/PropertyMap; userProperties b field_3298 + f Lcom/mojang/authlib/properties/PropertyMap; profileProperties c field_3297 + f Ljava/net/Proxy; proxy d field_3296 + m (Lnet/minecraft/client/User;Lcom/mojang/authlib/properties/PropertyMap;Lcom/mojang/authlib/properties/PropertyMap;Ljava/net/Proxy;)V + p 1 user + p 2 userProperties + p 3 profileProperties + p 4 proxy +c net/minecraft/client/main/SilentInitException fub net/minecraft/class_4718 + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/client/main/package-info fuc net/minecraft/class_6226 +c net/minecraft/client/model/AbstractZombieModel fud net/minecraft/class_3968 + m (Lnet/minecraft/world/entity/monster/Monster;)Z isAggressive a method_17790 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Monster;FFFFF)V setupAnim a method_17791 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AgeableHierarchicalModel fue net/minecraft/class_8184 + f F youngScaleFactor a field_42875 + f F bodyYOffset b field_42876 + m (FF)V + p 1 youngScaleFactor + p 2 bodyYOffset + m (FFLjava/util/function/Function;)V + p 1 youngScaleFactor + p 2 bodyYOffset + p 3 renderType +c net/minecraft/client/model/AgeableListModel fuf net/minecraft/class_4592 + f Z scaleHead a field_20915 + f F babyYHeadOffset b field_20916 + f F babyZHeadOffset f field_20917 + f F babyHeadScale g field_20918 + f F babyBodyScale h field_20919 + f F bodyYOffset i field_20920 + m ()Ljava/lang/Iterable; headParts a method_22946 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22947 a method_22947 + m ()Ljava/lang/Iterable; bodyParts b method_22948 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22949 b method_22949 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22950 c method_22950 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22951 d method_22951 + m (ZFF)V + p 1 scaleHead + p 2 babyYHeadOffset + p 3 babyZHeadOffset + m (ZFFFFF)V + p 1 scaleHead + p 2 babyYHeadOffset + p 3 babyZHeadOffset + p 4 babyHeadScale + p 5 babyBodyScale + p 6 bodyYOffset + m (Ljava/util/function/Function;ZFFFFF)V + p 1 renderType + p 2 scaleHead + p 3 babyYHeadOffset + p 4 babyZHeadOffset + p 5 babyHeadScale + p 6 babyBodyScale + p 7 bodyYOffset + m ()V +c net/minecraft/client/model/AllayModel fug net/minecraft/class_7308 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_38442 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_39459 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_38443 + f Lnet/minecraft/client/model/geom/ModelPart; right_arm g field_38444 + f Lnet/minecraft/client/model/geom/ModelPart; left_arm h field_38445 + f Lnet/minecraft/client/model/geom/ModelPart; right_wing i field_38446 + f Lnet/minecraft/client/model/geom/ModelPart; left_wing j field_38447 + f F FLYING_ANIMATION_X_ROT k field_38999 + f F MAX_HAND_HOLDING_ITEM_X_ROT_RAD l field_39000 + f F MIN_HAND_HOLDING_ITEM_X_ROT_RAD m field_39001 + m (Lnet/minecraft/world/entity/animal/allay/Allay;FFFFF)V setupAnim a method_42732 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_42733 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AnimationUtils fuh net/minecraft/class_4896 + m (Lnet/minecraft/client/model/geom/ModelPart;FF)V bobModelPart a method_29350 + p 0 modelPart + p 1 ageInTicks + p 2 multiplier + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;F)V bobArms a method_32789 + p 0 rightArm + p 1 leftArm + p 2 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/world/entity/LivingEntity;Z)V animateCrossbowCharge a method_25446 + p 0 rightArm + p 1 leftArm + p 2 livingEntity + p 3 rightHanded + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/world/entity/Mob;FF)V swingWeaponDown a method_29351 + p 0 rightArm + p 1 leftArm + p 2 mob + p 3 attackTime + p 4 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Z)V animateCrossbowHold a method_25447 + p 0 rightArm + p 1 leftArm + p 2 head + p 3 rightHanded + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;ZFF)V animateZombieArms a method_29352 + p 0 leftArm + p 1 rightArm + p 2 isAggressive + p 3 attackTime + p 4 ageInTicks + m ()V +c net/minecraft/client/model/ArmadilloModel fui net/minecraft/class_9082 + f F BABY_Y_OFFSET a field_47858 + f F MAX_DOWN_HEAD_ROTATION_EXTENT b field_47860 + f F MAX_UP_HEAD_ROTATION_EXTENT f field_47861 + f F MAX_WALK_ANIMATION_SPEED g field_47862 + f F WALK_ANIMATION_SCALE_FACTOR h field_47863 + f Ljava/lang/String; HEAD_CUBE i field_47864 + f Ljava/lang/String; RIGHT_EAR_CUBE j field_47865 + f Ljava/lang/String; LEFT_EAR_CUBE k field_47866 + f Lnet/minecraft/client/model/geom/ModelPart; root l field_47867 + f Lnet/minecraft/client/model/geom/ModelPart; body m field_47868 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg n field_47869 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg o field_47870 + f Lnet/minecraft/client/model/geom/ModelPart; cube p field_47871 + f Lnet/minecraft/client/model/geom/ModelPart; head q field_47872 + f Lnet/minecraft/client/model/geom/ModelPart; tail r field_47873 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;FFFFF)V setupAnim a method_55817 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_55818 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ArmedModel fuj net/minecraft/class_3881 + m (Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;)V translateToHand a method_2803 + p 1 side + p 2 poseStack +c net/minecraft/client/model/ArmorStandArmorModel fuk net/minecraft/class_548 + m (Lnet/minecraft/world/entity/decoration/ArmorStand;FFFFF)V setupAnim a method_17066 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32686 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ArmorStandModel ful net/minecraft/class_551 + f Lnet/minecraft/client/model/geom/ModelPart; shoulderStick A field_3313 + f Lnet/minecraft/client/model/geom/ModelPart; basePlate B field_3312 + f Ljava/lang/String; RIGHT_BODY_STICK a field_32445 + f Ljava/lang/String; LEFT_BODY_STICK b field_32446 + f Ljava/lang/String; SHOULDER_STICK w field_32447 + f Ljava/lang/String; BASE_PLATE x field_32448 + f Lnet/minecraft/client/model/geom/ModelPart; rightBodyStick y field_27391 + f Lnet/minecraft/client/model/geom/ModelPart; leftBodyStick z field_27392 + m (Lnet/minecraft/world/entity/decoration/ArmorStand;FFF)V prepareMobModel a method_24223 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31979 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AxolotlModel fum net/minecraft/class_5772 + f F SWIMMING_LEG_XROT a field_32449 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_28373 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg f field_28374 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg g field_28375 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg h field_28376 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg i field_28377 + f Lnet/minecraft/client/model/geom/ModelPart; body j field_28378 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_28379 + f Lnet/minecraft/client/model/geom/ModelPart; topGills l field_28380 + f Lnet/minecraft/client/model/geom/ModelPart; leftGills m field_28381 + f Lnet/minecraft/client/model/geom/ModelPart; rightGills n field_28382 + m (F)V setupWaterHoveringAnimation a method_33297 + p 1 ageInTicks + m (FF)F lerpTo a method_37091 + p 1 start + p 2 end + m (FFF)F lerpTo a method_37092 + p 1 delta + p 2 start + p 3 end + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V saveAnimationValues a method_37093 + p 1 axolotl + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;FF)V setupInitialAnimationValues a method_33292 + p 1 axolotl + p 2 netHeadYaw + p 3 headPitch + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;FFFFF)V setupAnim a method_33293 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)Lorg/joml/Vector3f; getRotationVector a method_37094 + p 1 part + m (Lnet/minecraft/client/model/geom/ModelPart;FFF)V lerpPart a method_37095 + p 1 part + p 2 xDelta + p 3 yDelta + p 4 zDelta + m (Lnet/minecraft/client/model/geom/ModelPart;Lorg/joml/Vector3f;)V setRotationFromVector a method_37096 + p 1 part + p 2 rotation + m (F)V setupPlayDeadAnimation b method_33298 + p 1 netHeadYaw + m (FF)V setupLayStillOnGroundAnimation b method_33291 + p 1 ageInTicks + p 2 netHeadYaw + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_33296 + m (FF)V setupGroundCrawlingAnimation c method_33294 + p 1 ageInTicks + p 2 netHeadYaw + m ()V applyMirrorLegRotations d method_33299 + m (FF)V setupSwimmingAnimation d method_33295 + p 1 ageInTicks + p 2 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BatModel fun net/minecraft/class_553 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27393 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3321 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3323 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing g field_3322 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_3320 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip i field_3319 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip j field_3324 + f Lnet/minecraft/client/model/geom/ModelPart; feet k field_47127 + m (F)V applyHeadRotation a method_54805 + p 1 headRotation + m (Lnet/minecraft/world/entity/ambient/Bat;FFFFF)V setupAnim a method_17069 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31980 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BeeModel fuo net/minecraft/class_4495 + f F BEE_Y_BASE a field_32450 + f Ljava/lang/String; BONE b field_32451 + f Ljava/lang/String; STINGER f field_32452 + f Ljava/lang/String; LEFT_ANTENNA g field_32453 + f Ljava/lang/String; RIGHT_ANTENNA h field_32454 + f Ljava/lang/String; FRONT_LEGS i field_32455 + f Ljava/lang/String; MIDDLE_LEGS j field_32456 + f Ljava/lang/String; BACK_LEGS k field_32457 + f Lnet/minecraft/client/model/geom/ModelPart; bone l field_20504 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing m field_20506 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing n field_20507 + f Lnet/minecraft/client/model/geom/ModelPart; frontLeg o field_20508 + f Lnet/minecraft/client/model/geom/ModelPart; midLeg p field_20509 + f Lnet/minecraft/client/model/geom/ModelPart; backLeg q field_20510 + f Lnet/minecraft/client/model/geom/ModelPart; stinger r field_20511 + f Lnet/minecraft/client/model/geom/ModelPart; leftAntenna s field_20512 + f Lnet/minecraft/client/model/geom/ModelPart; rightAntenna t field_20513 + f F rollAmount u field_20514 + m (Lnet/minecraft/world/entity/animal/Bee;FFF)V prepareMobModel a method_22111 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Bee;FFFFF)V setupAnim a method_22112 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31981 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BlazeModel fup net/minecraft/class_555 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27394 + f [Lnet/minecraft/client/model/geom/ModelPart; upperBodyParts b field_3328 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_27395 + m (I)Ljava/lang/String; getPartName a method_31983 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_31984 a method_31984 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31982 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BoatModel fuq net/minecraft/class_554 + f Ljava/lang/String; LEFT_PADDLE a field_32458 + f Ljava/lang/String; RIGHT_PADDLE b field_32459 + f Ljava/lang/String; WATER_PATCH f field_32460 + f Ljava/lang/String; BOTTOM g field_32461 + f Ljava/lang/String; BACK h field_32462 + f Ljava/lang/String; FRONT i field_32463 + f Ljava/lang/String; RIGHT j field_32464 + f Ljava/lang/String; LEFT k field_32465 + f Lnet/minecraft/client/model/geom/ModelPart; leftPaddle l field_27396 + f Lnet/minecraft/client/model/geom/ModelPart; rightPaddle m field_27397 + f Lnet/minecraft/client/model/geom/ModelPart; waterPatch n field_3326 + f Lcom/google/common/collect/ImmutableList; parts o field_20922 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel a method_31985 + m (Lnet/minecraft/world/entity/vehicle/Boat;FFFFF)V setupAnim a method_22952 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/vehicle/Boat;ILnet/minecraft/client/model/geom/ModelPart;F)V animatePaddle a method_2797 + p 0 boat + p 1 side + p 2 paddle + p 3 limbSwing + m (Lnet/minecraft/client/model/geom/ModelPart;)Lcom/google/common/collect/ImmutableList$Builder; createPartsBuilder a method_45702 + p 1 root + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createChildren a method_45703 + p 0 root + m ()Lcom/google/common/collect/ImmutableList; parts b method_22953 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BoggedModel fur net/minecraft/class_9321 + f Lnet/minecraft/client/model/geom/ModelPart; mushrooms a field_49563 + m (Lnet/minecraft/world/entity/monster/Bogged;FFF)V prepareMobModel a method_57792 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_57793 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/BookModel fus net/minecraft/class_557 + f Ljava/lang/String; LEFT_PAGES a field_32466 + f Ljava/lang/String; RIGHT_PAGES b field_32467 + f Ljava/lang/String; FLIP_PAGE_1 c field_32468 + f Ljava/lang/String; FLIP_PAGE_2 d field_32469 + f Lnet/minecraft/client/model/geom/ModelPart; root e field_27398 + f Lnet/minecraft/client/model/geom/ModelPart; leftLid f field_3336 + f Lnet/minecraft/client/model/geom/ModelPart; rightLid g field_3338 + f Lnet/minecraft/client/model/geom/ModelPart; leftPages h field_3337 + f Lnet/minecraft/client/model/geom/ModelPart; rightPages i field_3335 + f Lnet/minecraft/client/model/geom/ModelPart; flipPage1 j field_3334 + f Lnet/minecraft/client/model/geom/ModelPart; flipPage2 k field_3339 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31986 + m (FFFF)V setupAnim a method_17073 + p 1 time + p 2 rightPageFlipAmount + p 3 leftPageFlipAmount + p 4 bookOpenAmount + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V render b method_24184 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BreezeModel fut net/minecraft/class_8973 + f F WIND_TOP_SPEED a field_47431 + f F WIND_MIDDLE_SPEED b field_47432 + f F WIND_BOTTOM_SPEED f field_47433 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_47434 + f Lnet/minecraft/client/model/geom/ModelPart; head h field_47435 + f Lnet/minecraft/client/model/geom/ModelPart; eyes i field_47874 + f Lnet/minecraft/client/model/geom/ModelPart; wind j field_47875 + f Lnet/minecraft/client/model/geom/ModelPart; windTop k field_47437 + f Lnet/minecraft/client/model/geom/ModelPart; windMid l field_47438 + f Lnet/minecraft/client/model/geom/ModelPart; windBottom m field_47439 + f Lnet/minecraft/client/model/geom/ModelPart; rods n field_47440 + m (II)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_55233 + p 0 width + p 1 height + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;FFFFF)V setupAnim a method_55232 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/ModelPart; head b method_55819 + m ()Lnet/minecraft/client/model/geom/ModelPart; eyes c method_55820 + m ()Lnet/minecraft/client/model/geom/ModelPart; rods d method_55821 + m ()Lnet/minecraft/client/model/geom/ModelPart; wind e method_55822 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CamelModel fuu net/minecraft/class_7751 + f F MAX_WALK_ANIMATION_SPEED a field_40459 + f F WALK_ANIMATION_SCALE_FACTOR b field_42227 + f F BABY_SCALE f field_43083 + f F BABY_Y_OFFSET g field_43084 + f Ljava/lang/String; SADDLE h field_40460 + f Ljava/lang/String; BRIDLE i field_40461 + f Ljava/lang/String; REINS j field_40462 + f Lnet/minecraft/client/model/geom/ModelPart; root k field_40463 + f Lnet/minecraft/client/model/geom/ModelPart; head l field_40464 + f [Lnet/minecraft/client/model/geom/ModelPart; saddleParts m field_40465 + f [Lnet/minecraft/client/model/geom/ModelPart; ridingParts n field_40466 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V toggleInvisibleParts a method_45704 + p 1 entity + m (Lnet/minecraft/world/entity/animal/camel/Camel;FFF)V applyHeadRotation a method_45705 + p 1 entity + p 2 netHeadYaw + p 3 headPitch + p 4 ageInTicks + m (Lnet/minecraft/world/entity/animal/camel/Camel;FFFFF)V setupAnim a method_45706 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_45707 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CatModel fuv net/minecraft/class_3680 + f F lieDownAmount q field_16245 + f F lieDownAmountTail r field_16244 + f F relaxStateOneAmount s field_16243 + m (Lnet/minecraft/world/entity/animal/Cat;FFF)V prepareMobModel a method_17074 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Cat;FFFFF)V setupAnim a method_17075 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ChestBoatModel fuw net/minecraft/class_7752 + f Ljava/lang/String; CHEST_BOTTOM a field_40467 + f Ljava/lang/String; CHEST_LID b field_40468 + f Ljava/lang/String; CHEST_LOCK f field_40469 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel e method_45708 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/ChestRaftModel fux net/minecraft/class_7753 + f Ljava/lang/String; CHEST_BOTTOM a field_40470 + f Ljava/lang/String; CHEST_LID b field_40471 + f Ljava/lang/String; CHEST_LOCK f field_40472 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel a method_45709 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/ChestedHorseModel fuy net/minecraft/class_559 + f Lnet/minecraft/client/model/geom/ModelPart; leftChest g field_27399 + f Lnet/minecraft/client/model/geom/ModelPart; rightChest h field_27400 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;FFFFF)V setupAnim a method_17076 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31987 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ChickenModel fuz net/minecraft/class_558 + f Ljava/lang/String; RED_THING a field_32471 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3344 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3346 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg g field_27401 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg h field_27402 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing i field_27403 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing j field_27404 + f Lnet/minecraft/client/model/geom/ModelPart; beak k field_3340 + f Lnet/minecraft/client/model/geom/ModelPart; redThing l field_3342 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31988 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CodModel fva net/minecraft/class_561 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27405 + f Lnet/minecraft/client/model/geom/ModelPart; tailFin b field_3350 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31989 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ColorableAgeableListModel fvb net/minecraft/class_4593 + f I color a field_52151 + m (I)V setColor a method_22955 + p 1 color + m ()V +c net/minecraft/client/model/ColorableHierarchicalModel fvc net/minecraft/class_4594 + f I color a field_52152 + m (I)V setColor a method_22956 + p 1 color + m ()V +c net/minecraft/client/model/CowModel fvd net/minecraft/class_560 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31990 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead d method_2800 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CreeperModel fve net/minecraft/class_562 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27406 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3360 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27407 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27408 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27409 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27410 + f I Y_OFFSET j field_32472 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31991 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/DolphinModel fvf net/minecraft/class_889 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27411 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_4658 + f Lnet/minecraft/client/model/geom/ModelPart; tail f field_4657 + f Lnet/minecraft/client/model/geom/ModelPart; tailFin g field_4655 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31992 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/DrownedModel fvg net/minecraft/class_564 + m (Lnet/minecraft/world/entity/monster/Zombie;FFF)V prepareMobModel a method_17077 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Zombie;FFFFF)V setupAnim a method_17134 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31993 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ElytraModel fvh net/minecraft/class_563 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing a field_27412 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing b field_3365 + m (Lnet/minecraft/world/entity/LivingEntity;FFFFF)V setupAnim a method_17079 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer c method_31994 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/EndermanModel fvi net/minecraft/class_566 + f Z carrying a field_3371 + f Z creepy b field_3370 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31995 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/EndermiteModel fvj net/minecraft/class_565 + f I BODY_COUNT a field_32473 + f [[I BODY_SIZES b field_3366 + f [[I BODY_TEXS f field_3369 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_27413 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyParts h field_3368 + m (I)Ljava/lang/String; createSegmentName a method_31997 + p 0 index + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31996 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/EntityModel fvk net/minecraft/class_583 + f F attackTime c field_3447 + f Z riding d field_3449 + f Z young e field_3448 + m (Lnet/minecraft/world/entity/Entity;FFF)V prepareMobModel a method_2816 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/Entity;FFFFF)V setupAnim a method_2819 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/EntityModel;)V copyPropertiesTo a method_17081 + p 1 otherModel + m ()V + m (Ljava/util/function/Function;)V + p 1 renderType +c net/minecraft/client/model/EvokerFangsModel fvl net/minecraft/class_568 + f Ljava/lang/String; BASE a field_32474 + f Ljava/lang/String; UPPER_JAW b field_32475 + f Ljava/lang/String; LOWER_JAW f field_32476 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_27414 + f Lnet/minecraft/client/model/geom/ModelPart; base h field_3374 + f Lnet/minecraft/client/model/geom/ModelPart; upperJaw i field_3376 + f Lnet/minecraft/client/model/geom/ModelPart; lowerJaw j field_3375 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31998 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/FoxModel fvm net/minecraft/class_4041 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_18015 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_18019 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27415 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27416 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27417 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27418 + f Lnet/minecraft/client/model/geom/ModelPart; tail j field_18024 + f I LEG_SIZE k field_32477 + f F HEAD_HEIGHT l field_32478 + f F LEG_POS m field_32479 + f F legMotionPos n field_18025 + m (Lnet/minecraft/world/entity/animal/Fox;FFF)V prepareMobModel a method_18330 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Fox;FFFFF)V setupAnim a method_18332 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31999 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/FrogModel fvn net/minecraft/class_7198 + f F MAX_WALK_ANIMATION_SPEED a field_39193 + f F MAX_SWIM_ANIMATION_SPEED b field_42228 + f F WALK_ANIMATION_SCALE_FACTOR f field_42229 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_37919 + f Lnet/minecraft/client/model/geom/ModelPart; body h field_37920 + f Lnet/minecraft/client/model/geom/ModelPart; head i field_37921 + f Lnet/minecraft/client/model/geom/ModelPart; eyes j field_37922 + f Lnet/minecraft/client/model/geom/ModelPart; tongue k field_37923 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm l field_37924 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm m field_37925 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg n field_37926 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg o field_37927 + f Lnet/minecraft/client/model/geom/ModelPart; croakingBody p field_38448 + m (Lnet/minecraft/world/entity/animal/frog/Frog;FFFFF)V setupAnim a method_41907 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_41905 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GhastModel fvo net/minecraft/class_567 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27419 + f [Lnet/minecraft/client/model/geom/ModelPart; tentacles b field_3372 + m (I)Ljava/lang/String; createTentacleName a method_32001 + p 0 index + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32000 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GiantZombieModel fvp net/minecraft/class_3969 + m (Lnet/minecraft/world/entity/monster/Giant;)Z isAggressive a method_17792 + p 1 entity + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GoatModel fvq net/minecraft/class_6227 + m (Lnet/minecraft/world/entity/animal/goat/Goat;FFFFF)V setupAnim a method_35741 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_35742 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GuardianModel fvr net/minecraft/class_570 + f [F SPIKE_X_ROT a field_17131 + f [F SPIKE_Y_ROT b field_17132 + f [F SPIKE_Z_ROT f field_17133 + f [F SPIKE_X g field_17134 + f [F SPIKE_Y h field_17135 + f [F SPIKE_Z i field_17136 + f Ljava/lang/String; EYE j field_32480 + f Ljava/lang/String; TAIL_0 k field_32481 + f Ljava/lang/String; TAIL_1 l field_32482 + f Ljava/lang/String; TAIL_2 m field_32483 + f Lnet/minecraft/client/model/geom/ModelPart; root n field_27420 + f Lnet/minecraft/client/model/geom/ModelPart; head o field_3379 + f Lnet/minecraft/client/model/geom/ModelPart; eye p field_3381 + f [Lnet/minecraft/client/model/geom/ModelPart; spikeParts q field_3380 + f [Lnet/minecraft/client/model/geom/ModelPart; tailParts r field_3378 + m (FF)V setupSpikes a method_24185 + p 1 ageInTicks + m (I)Ljava/lang/String; createSpikeName a method_32003 + p 0 index + m (IFF)F getSpikeOffset a method_32004 + p 0 index + p 1 ageInTicks + m (Lnet/minecraft/world/entity/monster/Guardian;FFFFF)V setupAnim a method_17083 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32002 + m (IFF)F getSpikeX b method_32005 + p 0 index + p 1 ageInTicks + m (IFF)F getSpikeY c method_32006 + p 0 index + p 1 ageInTicks + m (IFF)F getSpikeZ d method_32007 + p 0 index + p 1 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/HeadedModel fvs net/minecraft/class_3882 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead d method_2838 +c net/minecraft/client/model/HierarchicalModel fvt net/minecraft/class_5597 + f Lorg/joml/Vector3f; ANIMATION_VECTOR_CACHE a field_39195 + m ()Lnet/minecraft/client/model/geom/ModelPart; root a method_32008 + m (Lnet/minecraft/world/entity/AnimationState;Lnet/minecraft/client/animation/AnimationDefinition;F)V animate a method_43781 + p 1 animationState + p 2 animationDefinition + p 3 ageInTicks + m (Lnet/minecraft/world/entity/AnimationState;Lnet/minecraft/client/animation/AnimationDefinition;FF)V animate a method_43782 + p 1 animationState + p 2 animationDefinition + p 3 ageInTicks + p 4 speed + m (Lnet/minecraft/client/animation/AnimationDefinition;)V applyStatic a method_52185 + p 1 animationDefinition + m (Lnet/minecraft/client/animation/AnimationDefinition;FFFF)V animateWalk a method_48741 + p 1 animationDefinition + p 2 limbSwing + p 3 limbSwingAmount + p 4 maxAnimationSpeed + p 5 animationScaleFactor + m (Lnet/minecraft/client/animation/AnimationDefinition;Lnet/minecraft/world/entity/AnimationState;)V method_43783 a method_43783 + m (Ljava/lang/String;)Ljava/util/Optional; getAnyDescendantWithName a method_41909 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/geom/ModelPart; method_41910 a method_41910 + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)Z method_41911 b method_41911 + m ()V + m (Ljava/util/function/Function;)V + p 1 renderType + m ()V +c net/minecraft/client/model/HoglinModel fvu net/minecraft/class_4791 + f F DEFAULT_HEAD_X_ROT a field_32484 + f F ATTACK_HEAD_X_ROT_END b field_32485 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_22227 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar g field_22228 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar h field_22229 + f Lnet/minecraft/client/model/geom/ModelPart; body i field_22230 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg j field_27421 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg k field_27422 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg l field_27423 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg m field_27424 + f Lnet/minecraft/client/model/geom/ModelPart; mane n field_25484 + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_24461 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32009 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HorseModel fvv net/minecraft/class_549 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg A field_27428 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindBabyLeg B field_27429 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindBabyLeg C field_27430 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontBabyLeg D field_27431 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontBabyLeg E field_27432 + f Lnet/minecraft/client/model/geom/ModelPart; tail F field_3300 + f [Lnet/minecraft/client/model/geom/ModelPart; saddleParts G field_3304 + f [Lnet/minecraft/client/model/geom/ModelPart; ridingParts H field_3301 + f Ljava/lang/String; HEAD_PARTS a field_32486 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_3305 + f Lnet/minecraft/client/model/geom/ModelPart; headParts f field_3307 + f F DEG_125 g field_32487 + f F DEG_60 h field_32488 + f F DEG_45 i field_32489 + f F DEG_30 j field_32490 + f F DEG_15 k field_32491 + f Ljava/lang/String; LEFT_HIND_BABY_LEG l field_32492 + f Ljava/lang/String; RIGHT_HIND_BABY_LEG m field_32493 + f Ljava/lang/String; LEFT_FRONT_BABY_LEG n field_32494 + f Ljava/lang/String; RIGHT_FRONT_BABY_LEG o field_32495 + f Ljava/lang/String; SADDLE p field_32496 + f Ljava/lang/String; LEFT_SADDLE_MOUTH q field_32497 + f Ljava/lang/String; LEFT_SADDLE_LINE r field_32498 + f Ljava/lang/String; RIGHT_SADDLE_MOUTH s field_32499 + f Ljava/lang/String; RIGHT_SADDLE_LINE t field_32500 + f Ljava/lang/String; HEAD_SADDLE u field_32501 + f Ljava/lang/String; MOUTH_SADDLE_WRAP w field_32502 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg x field_27425 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg y field_27426 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg z field_27427 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;FFF)V prepareMobModel a method_17084 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;FFFFF)V setupAnim a method_17085 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32010 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HumanoidArmorModel fvw net/minecraft/class_8136 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyLayer a method_49032 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HumanoidModel fvx net/minecraft/class_572 + f F HORIZONTAL_SHIELD_MOVEMENT_LIMIT A field_46724 + f F DUCK_WALK_ROTATION a field_42512 + f F SPYGLASS_ARM_ROT_Y b field_32503 + f F OVERLAY_SCALE f field_32505 + f F HAT_OVERLAY_SCALE g field_32506 + f F LEGGINGS_OVERLAY_SCALE h field_42513 + f F TOOT_HORN_XROT_BASE i field_39069 + f F TOOT_HORN_YROT_BASE j field_39070 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_3398 + f Lnet/minecraft/client/model/geom/ModelPart; hat l field_3394 + c The Biped's Headwear. Used for the outer layer of player skins. + f Lnet/minecraft/client/model/geom/ModelPart; body m field_3391 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm n field_3401 + c The Biped's Right Arm + f Lnet/minecraft/client/model/geom/ModelPart; leftArm o field_27433 + c The Biped's Left Arm + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg p field_3392 + c The Biped's Right Leg + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg q field_3397 + c The Biped's Left Leg + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; leftArmPose r field_3399 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; rightArmPose s field_3395 + f Z crouching t field_3400 + f F swimAmount u field_3396 + f F SPYGLASS_ARM_ROT_X w field_32504 + f F SPYGLASS_ARM_CROUCH_ROT_X x field_32507 + f F HIGHEST_SHIELD_BLOCKING_ANGLE y field_46576 + f F LOWEST_SHIELD_BLOCKING_ANGLE z field_46577 + m (F)F quadraticArmUpdate a method_2807 + p 1 limbSwing + m (FFF)F rotlerpRad a method_2804 + p 1 angle + p 2 maxAngle + p 3 mul + m (Lnet/minecraft/world/entity/HumanoidArm;)Lnet/minecraft/client/model/geom/ModelPart; getArm a method_2808 + p 1 side + m (Lnet/minecraft/world/entity/LivingEntity;)V poseRightArm a method_30154 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)V setupAttackAnimation a method_29353 + p 1 livingEntity + p 2 ageInTicks + m (Lnet/minecraft/world/entity/LivingEntity;FFF)V prepareMobModel a method_17086 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FFFFF)V setupAnim a method_17087 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/HumanoidModel;)V copyPropertiesTo a method_2818 + p 1 model + m (Lnet/minecraft/client/model/geom/ModelPart;Z)V poseBlockingArm a method_54131 + p 1 arm + p 2 isRightArm + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;F)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32011 + p 0 cubeDeformation + p 1 yOffset + m (Lnet/minecraft/world/entity/LivingEntity;)V poseLeftArm b method_30155 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/HumanoidArm; getAttackArm c method_2806 + p 1 entity + m (Z)V setAllVisible c_ method_2805 + p 1 visible + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m (Lnet/minecraft/client/model/geom/ModelPart;Ljava/util/function/Function;)V + p 1 root + p 2 renderType +c net/minecraft/client/model/HumanoidModel$ArmPose fvx$a net/minecraft/class_572$class_573 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; EMPTY a field_3409 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; ITEM b field_3410 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BLOCK c field_3406 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BOW_AND_ARROW d field_3403 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; THROW_SPEAR e field_3407 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; CROSSBOW_CHARGE f field_3405 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; CROSSBOW_HOLD g field_3408 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; SPYGLASS h field_27434 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; TOOT_HORN i field_39071 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BRUSH j field_42877 + f Z twoHanded k field_25722 + f [Lnet/minecraft/client/model/HumanoidModel$ArmPose; $VALUES l field_3404 + m ()Z isTwoHanded a method_30156 + m ()[Lnet/minecraft/client/model/HumanoidModel$ArmPose; $values b method_36892 + m (Ljava/lang/String;IZ)V + p 3 twoHanded + m ()V +c net/minecraft/client/model/IllagerModel fvy net/minecraft/class_575 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27435 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3422 + f Lnet/minecraft/client/model/geom/ModelPart; hat f field_3419 + f Lnet/minecraft/client/model/geom/ModelPart; arms g field_3423 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg h field_3420 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg i field_3418 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm j field_3426 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm k field_3417 + m (Lnet/minecraft/world/entity/HumanoidArm;)Lnet/minecraft/client/model/geom/ModelPart; getArm a method_2813 + p 1 arm + m (Lnet/minecraft/world/entity/monster/AbstractIllager;FFFFF)V setupAnim a method_17094 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32012 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHat c method_2812 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/IronGolemModel fvz net/minecraft/class_574 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27436 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3415 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm f field_27437 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm g field_27438 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg h field_27439 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg i field_27440 + m (Lnet/minecraft/world/entity/animal/IronGolem;FFF)V prepareMobModel a method_17095 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/IronGolem;FFFFF)V setupAnim a method_17097 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32013 + m ()Lnet/minecraft/client/model/geom/ModelPart; getFlowerHoldingArm c method_2809 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LavaSlimeModel fwa net/minecraft/class_576 + f I SEGMENT_COUNT a field_32508 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27441 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyCubes f field_3427 + m (I)Ljava/lang/String; getSegmentName a method_32015 + p 0 index + m (Lnet/minecraft/world/entity/monster/Slime;FFF)V prepareMobModel a method_17098 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Slime;FFFFF)V setupAnim a method_22958 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32016 a method_32016 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32014 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LeashKnotModel fwb net/minecraft/class_579 + f Ljava/lang/String; KNOT a field_32509 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27442 + f Lnet/minecraft/client/model/geom/ModelPart; knot f field_3431 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32017 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ListModel fwc net/minecraft/class_4595 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22961 a method_22961 + m ()Ljava/lang/Iterable; parts d method_22960 + m ()V + m (Ljava/util/function/Function;)V +c net/minecraft/client/model/LlamaModel fwd net/minecraft/class_578 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_27443 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_27444 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27445 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27446 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27447 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27448 + f Lnet/minecraft/client/model/geom/ModelPart; rightChest j field_27449 + f Lnet/minecraft/client/model/geom/ModelPart; leftChest k field_27450 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;FFFFF)V setupAnim a method_22962 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22963 a method_22963 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32018 + p 0 cubeDeformation + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22964 b method_22964 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LlamaSpitModel fwe net/minecraft/class_581 + f Ljava/lang/String; MAIN a field_32510 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27451 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32019 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/MinecartModel fwf net/minecraft/class_580 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27452 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32020 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/Model fwg net/minecraft/class_3879 + f Ljava/util/function/Function; renderType v field_21343 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; renderType a method_23500 + p 1 location + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderToBuffer a method_60879 + p 1 poseStack + p 2 vertexConsumer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V renderToBuffer a method_2828 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Ljava/util/function/Function;)V + p 1 renderType +c net/minecraft/client/model/ModelUtils fwh net/minecraft/class_4496 + m (FFF)F rotlerpRad a method_22114 + p 0 min + p 1 max + p 2 delta + m ()V +c net/minecraft/client/model/OcelotModel fwi net/minecraft/class_582 + f F BODY_WALK_Z A field_32512 + f F TAIL_1_WALK_Y B field_32513 + f F TAIL_1_WALK_Z C field_32514 + f F TAIL_2_WALK_Y D field_32515 + f F TAIL_2_WALK_Z E field_32516 + f F FRONT_LEG_Z F field_32517 + f Ljava/lang/String; TAIL_1 G field_32518 + f Ljava/lang/String; TAIL_2 H field_32519 + f I SITTING_STATE a field_32520 + f F BACK_LEG_Y b field_32521 + f F BACK_LEG_Z f field_32522 + f F FRONT_LEG_Y g field_32523 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg h field_27454 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg i field_27455 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_27456 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg k field_27457 + f Lnet/minecraft/client/model/geom/ModelPart; tail1 l field_3436 + f Lnet/minecraft/client/model/geom/ModelPart; tail2 m field_3442 + f Lnet/minecraft/client/model/geom/ModelPart; head n field_3435 + f Lnet/minecraft/client/model/geom/ModelPart; body o field_3437 + f I state p field_3434 + f I CROUCH_STATE q field_32524 + f I WALK_STATE r field_32525 + f I SPRINT_STATE s field_32526 + f F XO t field_32527 + f F YO u field_32528 + f F ZO w field_32529 + f F HEAD_WALK_Y x field_32530 + f F HEAD_WALK_Z y field_32531 + f F BODY_WALK_Y z field_32532 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32021 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PandaModel fwj net/minecraft/class_586 + f F sitAmount j field_3470 + f F lieOnBackAmount k field_3469 + f F rollAmount l field_3468 + m (Lnet/minecraft/world/entity/animal/Panda;FFF)V prepareMobModel a method_17102 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Panda;FFFFF)V setupAnim a method_17103 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32022 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ParrotModel fwk net/minecraft/class_584 + f Ljava/lang/String; FEATHER a field_32533 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27458 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3458 + f Lnet/minecraft/client/model/geom/ModelPart; tail g field_3460 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_27459 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing i field_27460 + f Lnet/minecraft/client/model/geom/ModelPart; head j field_3452 + f Lnet/minecraft/client/model/geom/ModelPart; feather k field_3456 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg l field_27461 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg m field_27462 + m (Lnet/minecraft/world/entity/animal/Parrot;)Lnet/minecraft/client/model/ParrotModel$State; getState a method_17107 + p 0 parrot + m (Lnet/minecraft/world/entity/animal/Parrot;FFF)V prepareMobModel a method_17108 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Parrot;FFFFF)V setupAnim a method_17112 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFFFFI)V renderOnShoulder a method_17106 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 limbSwing + p 6 limbSwingAmount + p 7 netHeadYaw + p 8 headPitch + p 9 tickCount + m (Lnet/minecraft/client/model/ParrotModel$State;)V prepare a method_17110 + p 1 state + m (Lnet/minecraft/client/model/ParrotModel$State;IFFFFF)V setupAnim a method_17111 + p 1 state + p 2 tickCount + p 3 limbSwing + p 4 limbSwingAmount + p 5 ageInTicks + p 6 netHeadYaw + p 7 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32023 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ParrotModel$State fwk$a net/minecraft/class_584$class_585 + f Lnet/minecraft/client/model/ParrotModel$State; FLYING a field_3462 + f Lnet/minecraft/client/model/ParrotModel$State; STANDING b field_3465 + f Lnet/minecraft/client/model/ParrotModel$State; SITTING c field_3466 + f Lnet/minecraft/client/model/ParrotModel$State; PARTY d field_3463 + f Lnet/minecraft/client/model/ParrotModel$State; ON_SHOULDER e field_3464 + f [Lnet/minecraft/client/model/ParrotModel$State; $VALUES f field_3467 + m ()[Lnet/minecraft/client/model/ParrotModel$State; $values a method_36893 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/model/PhantomModel fwl net/minecraft/class_588 + f Ljava/lang/String; TAIL_BASE a field_32534 + f Ljava/lang/String; TAIL_TIP b field_32535 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_27463 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingBase g field_3477 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip h field_3476 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingBase i field_3474 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip j field_3472 + f Lnet/minecraft/client/model/geom/ModelPart; tailBase k field_3471 + f Lnet/minecraft/client/model/geom/ModelPart; tailTip l field_3473 + m (Lnet/minecraft/world/entity/monster/Phantom;FFFFF)V setupAnim a method_33686 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32024 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PigModel fwm net/minecraft/class_587 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32025 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PiglinHeadModel fwn net/minecraft/class_7946 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_41379 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar b field_41380 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar c field_41381 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createHeadModel a method_47655 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PiglinModel fwo net/minecraft/class_4840 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar A field_27465 + f Lnet/minecraft/client/model/geom/PartPose; bodyDefault B field_25634 + f Lnet/minecraft/client/model/geom/PartPose; headDefault C field_25635 + f Lnet/minecraft/client/model/geom/PartPose; leftArmDefault D field_25632 + f Lnet/minecraft/client/model/geom/PartPose; rightArmDefault E field_25633 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar a field_27464 + m (Lnet/minecraft/world/entity/Mob;)V holdWeaponHigh a method_29354 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;F)V setupAttackAnimation a method_29355 + p 1 livingEntity + p 2 ageInTicks + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_24803 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32026 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;Lnet/minecraft/client/model/geom/builders/MeshDefinition;)V addHead a method_47656 + p 0 cubeDeformation + p 1 mesh + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/PlayerModel fwp net/minecraft/class_591 + f Ljava/lang/String; CLOAK A field_32539 + f Ljava/lang/String; LEFT_SLEEVE B field_32540 + f Ljava/lang/String; RIGHT_SLEEVE C field_32541 + f Ljava/lang/String; LEFT_PANTS D field_32536 + f Ljava/lang/String; RIGHT_PANTS E field_32537 + f Ljava/util/List; parts F field_27466 + f Lnet/minecraft/client/model/geom/ModelPart; cloak G field_3485 + f Lnet/minecraft/client/model/geom/ModelPart; ear H field_3481 + f Z slim I field_3480 + f Ljava/lang/String; EAR a field_32538 + f Lnet/minecraft/client/model/geom/ModelPart; leftSleeve b field_3484 + f Lnet/minecraft/client/model/geom/ModelPart; rightSleeve w field_3486 + f Lnet/minecraft/client/model/geom/ModelPart; leftPants x field_3482 + f Lnet/minecraft/client/model/geom/ModelPart; rightPants y field_3479 + f Lnet/minecraft/client/model/geom/ModelPart; jacket z field_3483 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/model/geom/ModelPart; getRandomModelPart a method_22697 + p 1 random + m (Lnet/minecraft/client/model/geom/ModelPart;)Z method_32027 a method_32027 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;Z)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32028 + p 0 cubeDeformation + p 1 slim + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderEars b method_2824 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderCloak c method_2823 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lnet/minecraft/client/model/geom/ModelPart;Z)V + p 1 root + p 2 slim +c net/minecraft/client/model/PolarBearModel fwq net/minecraft/class_590 + m (Lnet/minecraft/world/entity/animal/PolarBear;FFFFF)V setupAnim a method_17114 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32029 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishBigModel fwr net/minecraft/class_592 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27467 + f Lnet/minecraft/client/model/geom/ModelPart; leftBlueFin b field_27468 + f Lnet/minecraft/client/model/geom/ModelPart; rightBlueFin f field_27469 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32030 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishMidModel fws net/minecraft/class_595 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27470 + f Lnet/minecraft/client/model/geom/ModelPart; leftBlueFin b field_27471 + f Lnet/minecraft/client/model/geom/ModelPart; rightBlueFin f field_27472 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32031 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishSmallModel fwt net/minecraft/class_594 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27473 + f Lnet/minecraft/client/model/geom/ModelPart; leftFin b field_27474 + f Lnet/minecraft/client/model/geom/ModelPart; rightFin f field_27475 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32032 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/QuadrupedModel fwu net/minecraft/class_597 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3535 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_3538 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27476 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27477 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27478 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27479 + m (ILnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32033 + p 0 yOffset + p 1 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;ZFFFFI)V + p 1 root + p 2 scaleHead + p 3 babyYHeadOffset + p 4 babyZHeadOffset + p 5 babyHeadScale + p 6 babyBodyScale + p 7 bodyYOffset +c net/minecraft/client/model/RabbitModel fwv net/minecraft/class_596 + f F REAR_JUMP_ANGLE a field_32542 + f F FRONT_JUMP_ANGLE b field_32543 + f Ljava/lang/String; LEFT_HAUNCH f field_32544 + f Ljava/lang/String; RIGHT_HAUNCH g field_32545 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearFoot h field_27480 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearFoot i field_27481 + f Lnet/minecraft/client/model/geom/ModelPart; leftHaunch j field_27482 + f Lnet/minecraft/client/model/geom/ModelPart; rightHaunch k field_27483 + f Lnet/minecraft/client/model/geom/ModelPart; body l field_3528 + c The Rabbit's Body + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg m field_27484 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg n field_27485 + f Lnet/minecraft/client/model/geom/ModelPart; head o field_27486 + c The Rabbit's Head + f Lnet/minecraft/client/model/geom/ModelPart; rightEar p field_27487 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar q field_27488 + f Lnet/minecraft/client/model/geom/ModelPart; tail r field_3524 + c The Rabbit's Tail + f Lnet/minecraft/client/model/geom/ModelPart; nose s field_3530 + c The Rabbit's Nose + f F jumpRotation t field_3531 + f F NEW_SCALE u field_32546 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32034 + m (Lnet/minecraft/world/entity/animal/Rabbit;FFF)V prepareMobModel a method_17115 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Rabbit;FFFFF)V setupAnim a method_17117 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22966 a method_22966 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22967 b method_22967 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22968 c method_22968 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/RaftModel fww net/minecraft/class_7754 + f Ljava/lang/String; LEFT_PADDLE a field_40473 + f Ljava/lang/String; RIGHT_PADDLE b field_40474 + f Ljava/lang/String; BOTTOM f field_40475 + f Lnet/minecraft/client/model/geom/ModelPart; leftPaddle g field_40476 + f Lnet/minecraft/client/model/geom/ModelPart; rightPaddle h field_40477 + f Lcom/google/common/collect/ImmutableList; parts i field_40478 + m (Lnet/minecraft/world/entity/vehicle/Boat;FFFFF)V setupAnim a method_45711 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/vehicle/Boat;ILnet/minecraft/client/model/geom/ModelPart;F)V animatePaddle a method_45712 + p 0 boat + p 1 side + p 2 paddle + p 3 limbSwing + m (Lnet/minecraft/client/model/geom/ModelPart;)Lcom/google/common/collect/ImmutableList$Builder; createPartsBuilder a method_45710 + p 1 root + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createChildren a method_45713 + p 0 root + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel b method_45714 + m ()Lcom/google/common/collect/ImmutableList; parts c method_45715 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/RavagerModel fwx net/minecraft/class_571 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27489 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3386 + f Lnet/minecraft/client/model/geom/ModelPart; mouth f field_3388 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg g field_27490 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg h field_27491 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg i field_27492 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_27493 + f Lnet/minecraft/client/model/geom/ModelPart; neck k field_3384 + m (Lnet/minecraft/world/entity/monster/Ravager;FFF)V prepareMobModel a method_17089 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Ravager;FFFFF)V setupAnim a method_17091 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32035 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SalmonModel fwy net/minecraft/class_599 + f Ljava/lang/String; BODY_FRONT a field_32547 + f Ljava/lang/String; BODY_BACK b field_32548 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_27494 + f Lnet/minecraft/client/model/geom/ModelPart; bodyBack g field_3548 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32036 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SheepFurModel fwz net/minecraft/class_598 + f F headXRot j field_3541 + m (Lnet/minecraft/world/entity/animal/Sheep;FFF)V prepareMobModel a method_17118 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Sheep;FFFFF)V setupAnim a method_17119 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createFurLayer c method_32037 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SheepModel fxa net/minecraft/class_601 + f F headXRot j field_3552 + m (Lnet/minecraft/world/entity/animal/Sheep;FFF)V prepareMobModel a method_17120 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Sheep;FFFFF)V setupAnim a method_17121 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32038 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShieldModel fxb net/minecraft/class_600 + f Ljava/lang/String; PLATE a field_32549 + f Ljava/lang/String; HANDLE b field_32550 + f I SHIELD_WIDTH c field_32551 + f I SHIELD_HEIGHT d field_32552 + f Lnet/minecraft/client/model/geom/ModelPart; root e field_27495 + f Lnet/minecraft/client/model/geom/ModelPart; plate f field_3550 + f Lnet/minecraft/client/model/geom/ModelPart; handle g field_3551 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32039 + m ()Lnet/minecraft/client/model/geom/ModelPart; plate b method_23774 + m ()Lnet/minecraft/client/model/geom/ModelPart; handle c method_23775 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShulkerBulletModel fxc net/minecraft/class_603 + f Ljava/lang/String; MAIN a field_32553 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27496 + f Lnet/minecraft/client/model/geom/ModelPart; main f field_3556 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32040 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShulkerModel fxd net/minecraft/class_602 + f Ljava/lang/String; LID a field_32554 + f Ljava/lang/String; BASE b field_32555 + f Lnet/minecraft/client/model/geom/ModelPart; base f field_3553 + f Lnet/minecraft/client/model/geom/ModelPart; lid g field_3555 + f Lnet/minecraft/client/model/geom/ModelPart; head h field_3554 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32041 + m (Lnet/minecraft/world/entity/monster/Shulker;FFFFF)V setupAnim a method_17122 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/ModelPart; getLid b method_2829 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead c method_2830 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SilverfishModel fxe net/minecraft/class_604 + f I BODY_COUNT a field_32556 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27497 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyParts f field_3560 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyLayers g field_3557 + f [[I BODY_SIZES h field_3558 + f [[I BODY_TEXS i field_3559 + m (I)Ljava/lang/String; getLayerName a method_32043 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32044 a method_32044 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32042 + m (I)Ljava/lang/String; getSegmentName b method_32045 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32046 b method_32046 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/SkeletonModel fxf net/minecraft/class_606 + m (Lnet/minecraft/world/entity/Mob;FFF)V prepareMobModel a method_19689 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_19690 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createDefaultSkeletonMesh a method_57794 + p 0 partDefinition + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer e method_32047 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SkullModel fxg net/minecraft/class_607 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3564 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27498 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createHeadModel a method_32048 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHumanoidHeadLayer b method_32049 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createMobHeadLayer c method_32050 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SkullModelBase fxh net/minecraft/class_5598 + m (FFF)V setupAnim a method_2821 + p 1 mouthAnimation + p 2 yRot + p 3 xRot + m ()V +c net/minecraft/client/model/SlimeModel fxi net/minecraft/class_609 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27499 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createOuterBodyLayer b method_32051 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createInnerBodyLayer c method_32052 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SnifferModel fxj net/minecraft/class_8185 + f F WALK_ANIMATION_SPEED_MAX a field_43364 + f F WALK_ANIMATION_SCALE_FACTOR b field_43407 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_42881 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_43085 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;FFFFF)V setupAnim a method_49302 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_49303 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SnowGolemModel fxk net/minecraft/class_608 + f Ljava/lang/String; UPPER_BODY a field_32557 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27500 + f Lnet/minecraft/client/model/geom/ModelPart; upperBody f field_27501 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_3568 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm h field_27502 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm i field_27503 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32053 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead c method_2834 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SpiderModel fxl net/minecraft/class_611 + f Ljava/lang/String; BODY_0 a field_32558 + f Ljava/lang/String; BODY_1 b field_32559 + f Ljava/lang/String; RIGHT_MIDDLE_FRONT_LEG f field_32560 + f Ljava/lang/String; LEFT_MIDDLE_FRONT_LEG g field_32561 + f Ljava/lang/String; RIGHT_MIDDLE_HIND_LEG h field_32562 + f Ljava/lang/String; LEFT_MIDDLE_HIND_LEG i field_32563 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27504 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_3583 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg l field_27505 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg m field_27506 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleHindLeg n field_27507 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleHindLeg o field_27508 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleFrontLeg p field_27509 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleFrontLeg q field_27510 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg r field_27511 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg s field_27512 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSpiderBodyLayer b method_32054 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SquidModel fxm net/minecraft/class_610 + f [Lnet/minecraft/client/model/geom/ModelPart; tentacles a field_3574 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27513 + m (I)Ljava/lang/String; createTentacleName a method_32056 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32057 a method_32057 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32055 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/StriderModel fxn net/minecraft/class_4997 + f Ljava/lang/String; RIGHT_BOTTOM_BRISTLE a field_32564 + f Ljava/lang/String; RIGHT_MIDDLE_BRISTLE b field_32565 + f Ljava/lang/String; RIGHT_TOP_BRISTLE f field_32566 + f Ljava/lang/String; LEFT_TOP_BRISTLE g field_32567 + f Ljava/lang/String; LEFT_MIDDLE_BRISTLE h field_32568 + f Ljava/lang/String; LEFT_BOTTOM_BRISTLE i field_32569 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27514 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg k field_23353 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg l field_23354 + f Lnet/minecraft/client/model/geom/ModelPart; body m field_23355 + f Lnet/minecraft/client/model/geom/ModelPart; rightBottomBristle n field_27515 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleBristle o field_27516 + f Lnet/minecraft/client/model/geom/ModelPart; rightTopBristle p field_27517 + f Lnet/minecraft/client/model/geom/ModelPart; leftTopBristle q field_27518 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleBristle r field_27519 + f Lnet/minecraft/client/model/geom/ModelPart; leftBottomBristle s field_27520 + m (Lnet/minecraft/world/entity/monster/Strider;FFFFF)V setupAnim a method_26414 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32058 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TadpoleModel fxo net/minecraft/class_7201 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_37933 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_37934 + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;FFFFF)V setupAnim a method_41916 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_41917 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TridentModel fxp net/minecraft/class_613 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_3592 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27521 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32059 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/TropicalFishModelA fxq net/minecraft/class_612 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27522 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_27523 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32060 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TropicalFishModelB fxr net/minecraft/class_615 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27524 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_3599 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32061 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TurtleModel fxs net/minecraft/class_614 + f Ljava/lang/String; EGG_BELLY j field_32570 + f Lnet/minecraft/client/model/geom/ModelPart; eggBelly k field_3594 + m (Lnet/minecraft/world/entity/animal/Turtle;FFFFF)V setupAnim a method_17125 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32062 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/VexModel fxt net/minecraft/class_617 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_41116 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_41117 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm f field_41118 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm g field_41119 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing h field_3602 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing i field_3601 + f Lnet/minecraft/client/model/geom/ModelPart; head j field_41711 + m (Lnet/minecraft/world/entity/monster/Vex;FFFFF)V setupAnim a method_17127 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;F)V setArmsCharging a method_48293 + p 1 rightHandItem + p 2 leftHandItem + m (Lcom/mojang/blaze3d/vertex/PoseStack;Z)V offsetStackPosition a method_47977 + p 1 poseStack + p 2 rightSide + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32063 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/VillagerHeadModel fxu net/minecraft/class_3884 + m (Z)V hatVisible a method_17150 + p 1 visible +c net/minecraft/client/model/VillagerModel fxv net/minecraft/class_620 + f Lnet/minecraft/client/model/geom/ModelPart; nose a field_27525 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27526 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_27527 + f Lnet/minecraft/client/model/geom/ModelPart; hat g field_27528 + f Lnet/minecraft/client/model/geom/ModelPart; hatRim h field_27529 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg i field_27530 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg j field_27531 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyModel b method_32064 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WardenModel fxw net/minecraft/class_7280 + f Lnet/minecraft/client/model/geom/ModelPart; bone a field_38315 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_38316 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_38317 + f Lnet/minecraft/client/model/geom/ModelPart; rightTendril g field_38318 + f Lnet/minecraft/client/model/geom/ModelPart; leftTendril h field_38319 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg i field_38320 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm j field_38321 + f Lnet/minecraft/client/model/geom/ModelPart; leftRibcage k field_38449 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm l field_38322 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg m field_38323 + f Lnet/minecraft/client/model/geom/ModelPart; rightRibcage n field_38450 + f F DEFAULT_ARM_X_Y o field_38324 + f F DEFAULT_ARM_Z p field_38325 + f Lnet/minecraft/client/model/geom/ModelPart; root q field_38327 + f Ljava/util/List; tendrilsLayerModelParts r field_38451 + f Ljava/util/List; heartLayerModelParts s field_38452 + f Ljava/util/List; bioluminescentLayerModelParts t field_38453 + f Ljava/util/List; pulsatingSpotsLayerModelParts u field_38454 + m (F)V animateIdlePose a method_42734 + p 1 ageInTicks + m (FF)V animateHeadLookTarget a method_42735 + p 1 yaw + p 2 pitch + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)V animateTendrils a method_42736 + p 1 entity + p 2 ageInTicks + p 3 partialTick + m (Lnet/minecraft/world/entity/monster/warden/Warden;FFFFF)V setupAnim a method_42580 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_42578 + m (FF)V animateWalk b method_42737 + p 1 limbSwing + p 2 limbSwingAmount + m ()Ljava/util/List; getTendrilsLayerModelParts c method_42738 + m ()Ljava/util/List; getHeartLayerModelParts d method_42739 + m ()Ljava/util/List; getBioluminescentLayerModelParts e method_42740 + m ()Ljava/util/List; getPulsatingSpotsLayerModelParts f method_42741 + m ()V resetArmPoses g method_42742 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WaterPatchModel fxx net/minecraft/class_7755 + m ()Lnet/minecraft/client/model/geom/ModelPart; waterPatch c method_22954 +c net/minecraft/client/model/WindChargeModel fxy net/minecraft/class_8974 + f I ROTATION_SPEED a field_48704 + f Lnet/minecraft/client/model/geom/ModelPart; bone b field_47441 + f Lnet/minecraft/client/model/geom/ModelPart; windCharge f field_48705 + f Lnet/minecraft/client/model/geom/ModelPart; wind g field_48706 + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;FFFFF)V setupAnim a method_55239 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_55240 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WitchModel fxz net/minecraft/class_622 + f Z holdingItem b field_3614 + m (Z)V setHoldingItem b method_2840 + p 1 holdingItem + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32065 + m ()Lnet/minecraft/client/model/geom/ModelPart; getNose e method_2839 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WitherBossModel fya net/minecraft/class_621 + f Ljava/lang/String; RIBCAGE a field_32571 + f Ljava/lang/String; CENTER_HEAD b field_32572 + f Ljava/lang/String; RIGHT_HEAD f field_32573 + f Ljava/lang/String; LEFT_HEAD g field_32574 + f F RIBCAGE_X_ROT_OFFSET h field_32575 + f F TAIL_X_ROT_OFFSET i field_32576 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27532 + f Lnet/minecraft/client/model/geom/ModelPart; centerHead k field_27533 + f Lnet/minecraft/client/model/geom/ModelPart; rightHead l field_27534 + f Lnet/minecraft/client/model/geom/ModelPart; leftHead m field_27535 + f Lnet/minecraft/client/model/geom/ModelPart; ribcage n field_27536 + f Lnet/minecraft/client/model/geom/ModelPart; tail o field_27537 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;FFF)V prepareMobModel a method_17128 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;FFFFF)V setupAnim a method_17130 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lnet/minecraft/client/model/geom/ModelPart;I)V setupHeadRotation a method_32066 + p 0 wither + p 1 part + p 2 head + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32067 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WolfModel fyb net/minecraft/class_624 + f Ljava/lang/String; REAL_HEAD a field_32577 + f Ljava/lang/String; UPPER_BODY b field_32578 + f Ljava/lang/String; REAL_TAIL f field_32579 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_3621 + f Lnet/minecraft/client/model/geom/ModelPart; realHead h field_20788 + c Added as a result/workaround for the loss of renderWithRotation + f Lnet/minecraft/client/model/geom/ModelPart; body i field_3623 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg j field_27538 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg k field_27539 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg l field_27540 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg m field_27541 + f Lnet/minecraft/client/model/geom/ModelPart; tail n field_3617 + f Lnet/minecraft/client/model/geom/ModelPart; realTail o field_20789 + c Added as a result/workaround for the loss of renderWithRotation + f Lnet/minecraft/client/model/geom/ModelPart; upperBody p field_3619 + f I LEG_SIZE q field_32580 + m (Lnet/minecraft/world/entity/animal/Wolf;FFF)V prepareMobModel a method_17131 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Wolf;FFFFF)V setupAnim a method_17133 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMeshDefinition a method_32068 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ZombieModel fyc net/minecraft/class_623 + m (Lnet/minecraft/world/entity/monster/Zombie;)Z isAggressive a method_17793 + p 1 entity + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ZombieVillagerModel fyd net/minecraft/class_619 + f Lnet/minecraft/client/model/geom/ModelPart; hatRim a field_17144 + m (Lnet/minecraft/world/entity/monster/Zombie;FFFFF)V setupAnim a method_17135 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createArmorLayer a method_32069 + p 0 cubeDeformation + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32070 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/dragon/DragonHeadModel fye net/minecraft/class_626 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3638 + f Lnet/minecraft/client/model/geom/ModelPart; jaw b field_3639 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHeadLayer a method_32071 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/dragon/package-info fyf net/minecraft/class_6228 +c net/minecraft/client/model/geom/EntityModelSet fyg net/minecraft/class_5599 + f Ljava/util/Map; roots a field_27542 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32072 + p 1 modelLayerLocation + m ()V +c net/minecraft/client/model/geom/LayerDefinitions fyh net/minecraft/class_5600 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; FISH_PATTERN_DEFORMATION a field_27543 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; OUTER_ARMOR_DEFORMATION b field_27544 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; INNER_ARMOR_DEFORMATION c field_27545 + m ()Ljava/util/Map; createRoots a method_32073 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/model/geom/builders/LayerDefinition;Lnet/minecraft/world/level/block/state/properties/WoodType;)V method_45716 a method_45716 + m (Lcom/google/common/collect/ImmutableMap;Lnet/minecraft/client/model/geom/ModelLayerLocation;)Z method_32075 a method_32075 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/model/geom/builders/LayerDefinition;Lnet/minecraft/world/level/block/state/properties/WoodType;)V method_32074 b method_32074 + m ()V + m ()V +c net/minecraft/client/model/geom/ModelLayerLocation fyi net/minecraft/class_5601 + f Lnet/minecraft/resources/ResourceLocation; model a field_27546 + f Ljava/lang/String; layer b field_27547 + m ()Lnet/minecraft/resources/ResourceLocation; getModel a method_35743 + m ()Ljava/lang/String; getLayer b method_35744 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 model + p 2 layer +c net/minecraft/client/model/geom/ModelLayers fyj net/minecraft/class_5602 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHICKEN A field_27691 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COD B field_27692 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COMMAND_BLOCK_MINECART C field_27693 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_CAGE D field_27694 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_EYE E field_27695 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_SHELL F field_27696 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_WIND G field_27697 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COW H field_27698 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER I field_27699 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER_ARMOR J field_27700 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER_HEAD K field_27548 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DECORATED_POT_BASE L field_42882 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DECORATED_POT_SIDES M field_42883 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOLPHIN N field_27549 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DONKEY O field_27550 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOUBLE_CHEST_LEFT P field_27551 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOUBLE_CHEST_RIGHT Q field_27552 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DRAGON_SKULL R field_27553 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED S field_27554 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_INNER_ARMOR T field_27555 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_OUTER_ARMOR U field_27556 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_OUTER_LAYER V field_27557 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ELDER_GUARDIAN W field_27558 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ELYTRA X field_27559 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDERMAN Y field_27560 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDERMITE Z field_27561 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA_SPIT aA field_27612 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MAGMA_CUBE aB field_27613 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MINECART aC field_27614 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MOOSHROOM aD field_27615 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MULE aE field_27616 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; OCELOT aF field_27617 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PANDA aG field_27618 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PARROT aH field_27619 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PHANTOM aI field_27620 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIG aJ field_27621 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN aK field_27622 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE aL field_27623 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ALLAY a field_38455 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE_INNER_ARMOR aM field_27624 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE_OUTER_ARMOR aN field_27625 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_HEAD aO field_41382 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_INNER_ARMOR aP field_27626 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_OUTER_ARMOR aQ field_27574 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIG_SADDLE aR field_27575 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PILLAGER aS field_27576 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER aT field_27577 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_HEAD aU field_27578 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_INNER_ARMOR aV field_27579 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_OUTER_ARMOR aW field_27580 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM aX field_27581 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM_INNER_ARMOR aY field_27582 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM_OUTER_ARMOR aZ field_27583 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDER_DRAGON aa field_27562 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; END_CRYSTAL ab field_27563 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; EVOKER ac field_27564 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; EVOKER_FANGS ad field_27565 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FOX ae field_27566 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FROG af field_37935 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FURNACE_MINECART ag field_27567 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GHAST ah field_27568 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT ai field_27569 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT_INNER_ARMOR aj field_27570 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT_OUTER_ARMOR ak field_27571 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GLOW_SQUID al field_28456 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GOAT am field_32581 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GUARDIAN an field_27572 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HOGLIN ao field_27573 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HOPPER_MINECART ap field_27601 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HORSE aq field_27602 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HORSE_ARMOR ar field_27603 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK as field_27604 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK_INNER_ARMOR at field_27605 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK_OUTER_ARMOR au field_27606 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ILLUSIONER av field_27607 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; IRON_GOLEM aw field_27608 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LEASH_KNOT ax field_27609 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA ay field_27610 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA_DECOR az field_27611 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY bA field_27660 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_INNER_ARMOR bB field_27661 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_OUTER_ARMOR bC field_27662 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_OUTER_LAYER bD field_27663 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRIDER bE field_27664 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRIDER_SADDLE bF field_27665 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TADPOLE bG field_37936 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TNT_MINECART bH field_27666 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TRADER_LLAMA bI field_27667 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TRIDENT bJ field_27668 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_LARGE bK field_27669 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_LARGE_PATTERN bL field_27670 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMADILLO b field_47876 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_SMALL bM field_27671 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_SMALL_PATTERN bN field_27672 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TURTLE bO field_27673 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VEX bP field_27674 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VILLAGER bQ field_27675 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VINDICATOR bR field_27676 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WARDEN bS field_38328 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WANDERING_TRADER bT field_27627 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WIND_CHARGE bU field_47442 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITCH bV field_27628 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER bW field_27629 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_ARMOR bX field_27630 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON bY field_27631 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_INNER_ARMOR bZ field_27632 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SPIN_ATTACK ba field_27584 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; POLAR_BEAR bb field_27585 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_BIG bc field_27587 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_MEDIUM bd field_27588 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_SMALL be field_27589 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; RABBIT bf field_27590 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; RAVAGER bg field_27591 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SALMON bh field_27592 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHEEP bi field_27593 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHEEP_FUR bj field_27594 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHIELD bk field_27595 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHULKER bl field_27596 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHULKER_BULLET bm field_27597 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SILVERFISH bn field_27598 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON bo field_27599 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_HORSE bp field_27600 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_INNER_ARMOR bq field_27651 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_OUTER_ARMOR br field_27652 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_SKULL bs field_27653 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SLIME bt field_27654 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SLIME_OUTER bu field_27655 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SNIFFER bv field_42884 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SNOW_GOLEM bw field_27656 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SPAWNER_MINECART bx field_27657 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SPIDER by field_27658 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SQUID bz field_27659 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND c field_27586 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_OUTER_ARMOR ca field_27633 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_SKULL cb field_27634 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKULL cc field_27635 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WOLF cd field_27636 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WOLF_ARMOR ce field_47877 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOGLIN cf field_27637 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE cg field_27638 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_HEAD ch field_27640 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_HORSE ci field_27641 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_INNER_ARMOR cj field_27642 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_OUTER_ARMOR ck field_27643 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER cl field_27644 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER_INNER_ARMOR cm field_27645 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER_OUTER_ARMOR cn field_27646 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN co field_27647 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN_INNER_ARMOR cp field_27648 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN_OUTER_ARMOR cq field_27649 + f Ljava/lang/String; DEFAULT_LAYER cr field_32582 + f Ljava/util/Set; ALL_MODELS cs field_27650 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND_INNER_ARMOR d field_27639 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND_OUTER_ARMOR e field_27677 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; AXOLOTL f field_28383 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BANNER g field_27678 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BAT h field_27679 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BED_FOOT i field_27680 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BED_HEAD j field_27681 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BEE k field_27682 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BELL l field_27683 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BLAZE m field_27684 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED n field_49159 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_INNER_ARMOR o field_49160 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_OUTER_ARMOR p field_49161 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_OUTER_LAYER q field_49162 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOOK r field_27685 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BREEZE s field_47443 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BREEZE_WIND t field_52153 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAT u field_27686 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAT_COLLAR v field_27687 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAMEL w field_40479 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAVE_SPIDER x field_27688 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHEST y field_27689 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHEST_MINECART z field_27690 + m ()Ljava/util/stream/Stream; getKnownLocations a method_32076 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createRaftModelName a method_45717 + p 0 type + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createSignModelName a method_32078 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; register a method_32079 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; register a method_32080 + p 0 path + p 1 model + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createChestRaftModelName b method_45718 + p 0 type + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createHangingSignModelName b method_45719 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; registerInnerArmor b method_32081 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createLocation b method_32082 + p 0 path + p 1 model + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createBoatModelName c method_32077 + p 0 type + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; registerOuterArmor c method_32083 + p 0 path + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createChestBoatModelName d method_42582 + p 0 type + m ()V + m ()V +c net/minecraft/client/model/geom/ModelPart fyk net/minecraft/class_630 + f F DEFAULT_SCALE a field_37937 + f F x b field_3657 + f F y c field_3656 + f F z d field_3655 + f F xRot e field_3654 + f F yRot f field_3675 + f F zRot g field_3674 + f F xScale h field_37938 + f F yScale i field_37939 + f F zScale j field_37940 + f Z visible k field_3665 + f Z skipDraw l field_38456 + f Ljava/util/List; cubes m field_3663 + f Ljava/util/Map; children n field_3661 + f Lnet/minecraft/client/model/geom/PartPose; initialPose o field_37941 + m ()Lnet/minecraft/client/model/geom/PartPose; storePose a method_32084 + m (FFF)V setPos a method_2851 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/model/geom/ModelPart$Cube; getRandomCube a method_22700 + p 1 random + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V compile a method_22702 + p 1 pose + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V translateAndRotate a method_22703 + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V render a method_22698 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V render a method_22699 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;)V visit a method_35745 + p 1 poseStack + p 2 visitor + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;Ljava/lang/String;)V visit a method_35746 + p 1 poseStack + p 2 visitor + p 3 path + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)V method_35747 a method_35747 + m (Lnet/minecraft/client/model/geom/ModelPart;)V copyFrom a method_17138 + p 1 modelPart + m (Lnet/minecraft/client/model/geom/PartPose;)V setInitialPose a method_41918 + p 1 initialPose + m (Ljava/lang/String;)Z hasChild a method_41919 + p 1 name + m (Lorg/joml/Vector3f;)V offsetPos a method_41920 + p 1 offset + m ()Lnet/minecraft/client/model/geom/PartPose; getInitialPose b method_41921 + m (FFF)V setRotation b method_33425 + p 1 xRot + p 2 yRot + p 3 zRot + m (Lnet/minecraft/client/model/geom/PartPose;)V loadPose b method_32085 + p 1 partPose + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelPart; getChild b method_32086 + p 1 name + m (Lorg/joml/Vector3f;)V offsetRotation b method_41922 + p 1 offset + m ()V resetPose c method_41923 + m (Lorg/joml/Vector3f;)V offsetScale c method_41924 + p 1 offset + m ()Z isEmpty d method_32087 + m ()Ljava/util/stream/Stream; getAllParts e method_32088 + m (Ljava/util/List;Ljava/util/Map;)V + p 1 cubes + p 2 children +c net/minecraft/client/model/geom/ModelPart$Cube fyk$a net/minecraft/class_630$class_628 + f F minX a field_3645 + f F minY b field_3644 + f F minZ c field_3643 + f F maxX d field_3648 + f F maxY e field_3647 + f F maxZ f field_3646 + f [Lnet/minecraft/client/model/geom/ModelPart$Polygon; polygons g field_3649 + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V compile a method_32089 + p 1 pose + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (IIFFFFFFFFFZFFLjava/util/Set;)V + p 1 texCoordU + p 2 texCoordV + p 3 originX + p 4 originY + p 5 originZ + p 6 dimensionX + p 7 dimensionY + p 8 dimensionZ + p 9 gtowX + p 10 growY + p 11 growZ + p 12 mirror + p 13 texScaleU + p 14 texScaleV + p 15 visibleFaces +c net/minecraft/client/model/geom/ModelPart$Polygon fyk$b net/minecraft/class_630$class_593 + f [Lnet/minecraft/client/model/geom/ModelPart$Vertex; vertices a field_3502 + f Lorg/joml/Vector3f; normal b field_21618 + m ([Lnet/minecraft/client/model/geom/ModelPart$Vertex;FFFFFFZLnet/minecraft/core/Direction;)V + p 1 vertices + p 2 u1 + p 3 v1 + p 4 u2 + p 5 v2 + p 6 textureWidth + p 7 textureHeight + p 8 mirror + p 9 direction +c net/minecraft/client/model/geom/ModelPart$Vertex fyk$c net/minecraft/class_630$class_618 + f Lorg/joml/Vector3f; pos a field_3605 + f F u b field_3604 + f F v c field_3603 + m (FF)Lnet/minecraft/client/model/geom/ModelPart$Vertex; remap a method_2837 + p 1 u + p 2 v + m (FFFFF)V + p 1 x + p 2 y + p 3 z + p 4 u + p 5 v + m (Lorg/joml/Vector3f;FF)V + p 1 pos + p 2 u + p 3 v +c net/minecraft/client/model/geom/ModelPart$Visitor fyk$d net/minecraft/class_630$class_6229 + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Ljava/lang/String;ILnet/minecraft/client/model/geom/ModelPart$Cube;)V visit visit method_35748 + p 1 pose + p 2 path + p 3 index + p 4 cube +c net/minecraft/client/model/geom/PartNames fyl net/minecraft/class_6230 + f Ljava/lang/String; RIGHT_HIND_FOOT A field_32638 + f Ljava/lang/String; LEFT_FRONT_FOOT B field_32639 + f Ljava/lang/String; RIGHT_FRONT_FOOT C field_32583 + f Ljava/lang/String; FEET D field_47128 + f Ljava/lang/String; LEFT_HIND_LEG_TIP E field_32584 + f Ljava/lang/String; RIGHT_HIND_LEG_TIP F field_32585 + f Ljava/lang/String; LEFT_FRONT_LEG_TIP G field_32586 + f Ljava/lang/String; RIGHT_FRONT_LEG_TIP H field_32587 + f Ljava/lang/String; LEFT_LID I field_32588 + f Ljava/lang/String; RIGHT_LID J field_32589 + f Ljava/lang/String; LEFT_CHEST K field_32590 + f Ljava/lang/String; RIGHT_CHEST L field_32591 + f Ljava/lang/String; LEFT_HORN M field_32592 + f Ljava/lang/String; RIGHT_HORN N field_32593 + f Ljava/lang/String; LEFT_EYE O field_32594 + f Ljava/lang/String; RIGHT_EYE P field_32595 + f Ljava/lang/String; JAW Q field_32596 + f Ljava/lang/String; NOSE R field_32597 + f Ljava/lang/String; ARMS S field_32598 + f Ljava/lang/String; TAIL T field_32599 + f Ljava/lang/String; CUBE U field_32600 + f Ljava/lang/String; BEAK V field_32601 + f Ljava/lang/String; BACK_FIN W field_32602 + f Ljava/lang/String; MANE X field_32603 + f Ljava/lang/String; NECK Y field_32604 + f Ljava/lang/String; MOUTH Z field_32605 + f Ljava/lang/String; MUSHROOMS aA field_49564 + f Ljava/lang/String; BONE aB field_38331 + f Ljava/lang/String; LEFT_FIN a field_32609 + f Ljava/lang/String; HEAD aa field_32606 + f Ljava/lang/String; HAT ab field_32607 + f Ljava/lang/String; BODY ac field_32608 + f Ljava/lang/String; HAT_RIM ad field_32610 + f Ljava/lang/String; JACKET ae field_32611 + f Ljava/lang/String; TOP_GILLS af field_32612 + f Ljava/lang/String; LEFT_GILLS ag field_32613 + f Ljava/lang/String; RIGHT_GILLS ah field_32614 + f Ljava/lang/String; ROOT ai field_37942 + f Ljava/lang/String; CROAKING_BODY aj field_37943 + f Ljava/lang/String; TONGUE ak field_37944 + f Ljava/lang/String; TONGUE_R1 al field_37945 + f Ljava/lang/String; LEFT_HAND am field_37946 + f Ljava/lang/String; RIGHT_HAND an field_37947 + f Ljava/lang/String; LEFT_FOOT ao field_37948 + f Ljava/lang/String; RIGHT_FOOT ap field_37949 + f Ljava/lang/String; EYES aq field_37950 + f Ljava/lang/String; RIGHT_TENDRIL ar field_38329 + f Ljava/lang/String; LEFT_TENDRIL as field_38330 + f Ljava/lang/String; RIGHT_RIBCAGE at field_38457 + f Ljava/lang/String; LEFT_RIBCAGE au field_38458 + f Ljava/lang/String; WIND_BODY av field_47446 + f Ljava/lang/String; WIND_TOP aw field_47447 + f Ljava/lang/String; WIND_MID ax field_47448 + f Ljava/lang/String; WIND_BOTTOM ay field_47449 + f Ljava/lang/String; RODS az field_47450 + f Ljava/lang/String; RIGHT_FIN b field_32615 + f Ljava/lang/String; TOP_FIN c field_32616 + f Ljava/lang/String; BOTTOM_FIN d field_32617 + f Ljava/lang/String; TAIL_FIN e field_32618 + f Ljava/lang/String; LEFT_BLUE_FIN f field_32619 + f Ljava/lang/String; RIGHT_BLUE_FIN g field_32620 + f Ljava/lang/String; LEFT_ARM h field_32621 + f Ljava/lang/String; RIGHT_ARM i field_32622 + f Ljava/lang/String; LEFT_WING j field_32623 + f Ljava/lang/String; RIGHT_WING k field_32624 + f Ljava/lang/String; LEFT_WING_BASE l field_32625 + f Ljava/lang/String; RIGHT_WING_BASE m field_32626 + f Ljava/lang/String; LEFT_WING_TIP n field_32627 + f Ljava/lang/String; RIGHT_WING_TIP o field_32628 + f Ljava/lang/String; LEFT_EAR p field_32629 + f Ljava/lang/String; RIGHT_EAR q field_32630 + f Ljava/lang/String; LEFT_LEG r field_32631 + f Ljava/lang/String; RIGHT_LEG s field_32632 + f Ljava/lang/String; LEFT_HIND_LEG t field_32633 + f Ljava/lang/String; RIGHT_HIND_LEG u field_32634 + f Ljava/lang/String; LEFT_MID_LEG v field_42885 + f Ljava/lang/String; RIGHT_MID_LEG w field_42886 + f Ljava/lang/String; LEFT_FRONT_LEG x field_32635 + f Ljava/lang/String; RIGHT_FRONT_LEG y field_32636 + f Ljava/lang/String; LEFT_HIND_FOOT z field_32637 + m ()V +c net/minecraft/client/model/geom/PartPose fym net/minecraft/class_5603 + f Lnet/minecraft/client/model/geom/PartPose; ZERO a field_27701 + f F x b field_27702 + f F y c field_27703 + f F z d field_27704 + f F xRot e field_27705 + f F yRot f field_27706 + f F zRot g field_27707 + m (FFF)Lnet/minecraft/client/model/geom/PartPose; offset a method_32090 + p 0 x + p 1 y + p 2 z + m (FFFFFF)Lnet/minecraft/client/model/geom/PartPose; offsetAndRotation a method_32091 + p 0 x + p 1 y + p 2 z + p 3 xRot + p 4 yRot + p 5 zRot + m (FFF)Lnet/minecraft/client/model/geom/PartPose; rotation b method_32092 + p 0 xRot + p 1 yRot + p 2 zRot + m (FFFFFF)V + p 1 x + p 2 y + p 3 z + p 4 xRot + p 5 yRot + p 6 zRot + m ()V +c net/minecraft/client/model/geom/builders/CubeDefinition fyn net/minecraft/class_5604 + f Ljava/lang/String; comment a field_27708 + f Lorg/joml/Vector3f; origin b field_27709 + f Lorg/joml/Vector3f; dimensions c field_27710 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; grow d field_27711 + f Z mirror e field_27712 + f Lnet/minecraft/client/model/geom/builders/UVPair; texCoord f field_27713 + f Lnet/minecraft/client/model/geom/builders/UVPair; texScale g field_27714 + f Ljava/util/Set; visibleFaces h field_42887 + m (II)Lnet/minecraft/client/model/geom/ModelPart$Cube; bake a method_32093 + p 1 texWidth + p 2 texHeight + m (Ljava/lang/String;FFFFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;ZFFLjava/util/Set;)V + p 1 comment + p 2 texCoordU + p 3 texCoordV + p 4 originX + p 5 originY + p 6 originZ + p 7 dimensionX + p 8 dimensionY + p 9 dimensionZ + p 10 grow + p 11 mirror + p 12 texScaleU + p 13 texScaleV + p 14 visibleFaces +c net/minecraft/client/model/geom/builders/CubeDeformation fyo net/minecraft/class_5605 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; NONE a field_27715 + f F growX b field_27716 + f F growY c field_27717 + f F growZ d field_27718 + m (F)Lnet/minecraft/client/model/geom/builders/CubeDeformation; extend a method_32094 + p 1 grow + m (FFF)Lnet/minecraft/client/model/geom/builders/CubeDeformation; extend a method_32095 + p 1 growX + p 2 growY + p 3 growZ + m (FFF)V + p 1 growX + p 2 growY + p 3 growZ + m (F)V + p 1 grow + m ()V +c net/minecraft/client/model/geom/builders/CubeListBuilder fyp net/minecraft/class_5606 + f Ljava/util/Set; ALL_VISIBLE a field_42888 + f Ljava/util/List; cubes b field_27719 + f I xTexOffs c field_27720 + f I yTexOffs d field_27721 + f Z mirror e field_27722 + m ()Lnet/minecraft/client/model/geom/builders/CubeListBuilder; mirror a method_32096 + m (FFFFFF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32097 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + m (FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32098 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 cubeDeformation + m (FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;FF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32099 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 cubeDeformation + p 8 texScaleU + p 9 texScaleV + m (FFFFFFLjava/util/Set;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_49304 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 visibleFaces + m (FFFFFFZ)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32100 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 mirror + m (II)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; texOffs a method_32101 + p 1 xTexOffs + p 2 yTexOffs + m (Ljava/lang/String;FFFFFF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32102 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + m (Ljava/lang/String;FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32103 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 cubeDeformation + m (Ljava/lang/String;FFFIIIII)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32104 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 xTexOffs + p 9 yTexOffs + m (Ljava/lang/String;FFFIIILnet/minecraft/client/model/geom/builders/CubeDeformation;II)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32105 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 cubeDeformation + p 9 xTexOffs + p 10 yTexOffs + m (Z)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; mirror a method_32106 + p 1 mirror + m ()Ljava/util/List; getCubes b method_32107 + m ()Lnet/minecraft/client/model/geom/builders/CubeListBuilder; create c method_32108 + m ()V + m ()V +c net/minecraft/client/model/geom/builders/LayerDefinition fyq net/minecraft/class_5607 + f Lnet/minecraft/client/model/geom/builders/MeshDefinition; mesh a field_27723 + f Lnet/minecraft/client/model/geom/builders/MaterialDefinition; material b field_27724 + m ()Lnet/minecraft/client/model/geom/ModelPart; bakeRoot a method_32109 + m (Lnet/minecraft/client/model/geom/builders/MeshDefinition;II)Lnet/minecraft/client/model/geom/builders/LayerDefinition; create a method_32110 + p 0 mesh + p 1 texWidth + p 2 texHeight + m (Lnet/minecraft/client/model/geom/builders/MeshDefinition;Lnet/minecraft/client/model/geom/builders/MaterialDefinition;)V + p 1 mesh + p 2 material +c net/minecraft/client/model/geom/builders/MaterialDefinition fyr net/minecraft/class_5608 + f I xTexSize a field_27725 + f I yTexSize b field_27726 + m (II)V + p 1 xTexSize + p 2 yTexSize +c net/minecraft/client/model/geom/builders/MeshDefinition fys net/minecraft/class_5609 + f Lnet/minecraft/client/model/geom/builders/PartDefinition; root a field_27727 + m ()Lnet/minecraft/client/model/geom/builders/PartDefinition; getRoot a method_32111 + m ()V +c net/minecraft/client/model/geom/builders/PartDefinition fyt net/minecraft/class_5610 + f Ljava/util/List; cubes a field_27728 + f Lnet/minecraft/client/model/geom/PartPose; partPose b field_27729 + f Ljava/util/Map; children c field_27730 + m (II)Lnet/minecraft/client/model/geom/ModelPart; bake a method_32112 + p 1 texWidth + p 2 texHeight + m (IILnet/minecraft/client/model/geom/builders/CubeDefinition;)Lnet/minecraft/client/model/geom/ModelPart$Cube; method_32113 a method_32113 + m (IILjava/util/Map$Entry;)Lnet/minecraft/client/model/geom/ModelPart; method_32114 a method_32114 + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/geom/ModelPart; method_32115 a method_32115 + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/builders/PartDefinition; getChild a method_32116 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/builders/CubeListBuilder;Lnet/minecraft/client/model/geom/PartPose;)Lnet/minecraft/client/model/geom/builders/PartDefinition; addOrReplaceChild a method_32117 + p 1 name + p 2 cubes + p 3 partPose + m (Ljava/util/List;Lnet/minecraft/client/model/geom/PartPose;)V + p 1 cubes + p 2 partPose +c net/minecraft/client/model/geom/builders/UVPair fyu net/minecraft/class_5611 + f F u a field_27731 + f F v b field_27732 + m ()F u a method_32118 + m ()F v b method_32119 + m (FF)V + p 1 u + p 2 v +c net/minecraft/client/model/geom/builders/package-info fyv net/minecraft/class_6231 +c net/minecraft/client/model/geom/package-info fyw net/minecraft/class_6232 +c net/minecraft/client/model/package-info fyx net/minecraft/class_6233 +c net/minecraft/client/multiplayer/AccountProfileKeyPairManager fyy net/minecraft/class_7434 + f Lorg/slf4j/Logger; LOGGER b field_39074 + f Ljava/time/Duration; MINIMUM_PROFILE_KEY_REFRESH_INTERVAL c field_40797 + f Ljava/nio/file/Path; PROFILE_KEY_PAIR_DIR d field_39075 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService e field_39958 + f Ljava/nio/file/Path; profileKeyPairPath f field_39076 + f Ljava/util/concurrent/CompletableFuture; keyPair g field_39959 + f Ljava/time/Instant; nextProfileKeyRefreshTime h field_40798 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V writeProfileKeyPair a method_43600 + p 1 profileKeyPair + m (Lcom/google/gson/JsonElement;)V method_43601 a method_43601 + m (Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/world/entity/player/ProfileKeyPair; fetchProfileKeyPair a method_43605 + p 1 userApiService + m (Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; parsePublicKey a method_44076 + p 0 keyPairResponse + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture; readOrFetchProfileKeyPair a method_43602 + p 1 pair + m (Ljava/util/Optional;)Ljava/util/Optional; method_44291 b method_44291 + m ()Ljava/util/Optional; readProfileKeyPair c method_43606 + m (Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)V + p 1 userApiService + p 2 uuid + p 3 gameDirectory + m ()V +c net/minecraft/client/multiplayer/ChunkBatchSizeCalculator fyz net/minecraft/class_8760 + f I MAX_OLD_SAMPLES_WEIGHT a field_45939 + f I CLAMP_COEFFICIENT b field_45940 + f D aggregatedNanosPerChunk c field_45941 + f I oldSamplesWeight d field_45942 + f J chunkBatchStartTime e field_45943 + m ()V onBatchStart a method_53483 + m (I)V onBatchFinished a method_53484 + p 1 batchSize + m ()F getDesiredChunksPerTick b method_53485 + m ()V +c net/minecraft/client/multiplayer/ClientAdvancements fza net/minecraft/class_632 + f Lorg/slf4j/Logger; LOGGER a field_3686 + f Lnet/minecraft/client/Minecraft; minecraft b field_3684 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager c field_44808 + f Lnet/minecraft/advancements/AdvancementTree; tree d field_46144 + f Ljava/util/Map; progress e field_3681 + f Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener; listener f field_3682 + f Lnet/minecraft/advancements/AdvancementHolder; selectedTab g field_3685 + m ()Lnet/minecraft/advancements/AdvancementTree; getTree a method_53814 + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket;)V update a method_2861 + p 1 packet + m (Lnet/minecraft/advancements/AdvancementHolder;Z)V setSelectedTab a method_2864 + p 1 advancement + p 2 tellServer + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; get a method_53815 + p 1 id + m (Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener;)V setListener a method_2862 + p 1 listener + m (Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V method_53816 a method_53816 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager;)V + p 1 minecraft + p 2 telemetryManager + m ()V +c net/minecraft/client/multiplayer/ClientAdvancements$Listener fza$a net/minecraft/class_632$class_633 + m (Lnet/minecraft/advancements/AdvancementHolder;)V onSelectedTabChanged a method_2866 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/AdvancementProgress;)V onUpdateAdvancementProgress a method_2865 + p 1 advancement + p 2 advancementProgress +c net/minecraft/client/multiplayer/ClientChunkCache fzb net/minecraft/class_631 + f Lorg/slf4j/Logger; LOGGER a field_3679 + f Lnet/minecraft/world/level/chunk/LevelChunk; emptyChunk b field_3676 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine c field_3677 + f Lnet/minecraft/client/multiplayer/ClientChunkCache$Storage; storage d field_16246 + f Lnet/minecraft/client/multiplayer/ClientLevel; level e field_16525 + m (I)V updateViewRadius a method_20180 + p 1 viewDistance + m (IILnet/minecraft/network/FriendlyByteBuf;)V replaceBiomes a method_49630 + p 1 x + p 2 z + p 3 buffer + m (IILnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Consumer;)Lnet/minecraft/world/level/chunk/LevelChunk; replaceWithPacketData a method_16020 + p 1 x + p 2 z + p 3 buffer + p 4 tag + p 5 consumer + m (Lnet/minecraft/world/level/ChunkPos;)V drop a method_2859 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/LevelChunk;II)Z isValidChunk a method_20181 + p 0 chunk + p 1 x + p 2 z + m (I)I calculateStorageRange b method_20230 + p 0 viewDistance + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk b method_2857 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (II)V updateViewCenter d method_20317 + p 1 x + p 2 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;I)V + p 1 level + p 2 viewDistance + m ()V +c net/minecraft/client/multiplayer/ClientChunkCache$Storage fzb$a net/minecraft/class_631$class_3681 + f Lnet/minecraft/client/multiplayer/ClientChunkCache; field_16254 a field_16254 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; chunks b field_16251 + f I chunkRadius c field_16253 + f I viewRange d field_16252 + f I viewCenterX e field_19204 + f I viewCenterZ f field_19205 + f I chunkCount g field_19143 + m (I)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_16033 + p 1 chunkIndex + m (II)I getIndex a method_16027 + p 1 x + p 2 z + m (ILnet/minecraft/world/level/chunk/LevelChunk;)V replace a method_16031 + p 1 chunkIndex + p 2 chunk + m (ILnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/world/level/chunk/LevelChunk; replace a method_20183 + p 1 chunkIndex + p 2 chunk + p 3 replaceWith + m (Ljava/lang/String;)V dumpChunks a method_35751 + p 1 filePath + m (II)Z inRange b method_16034 + p 1 x + p 2 z + m (Lnet/minecraft/client/multiplayer/ClientChunkCache;I)V + p 2 chunkRadius +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl fzc net/minecraft/class_8673 + f Lnet/minecraft/client/Minecraft; minecraft a field_45588 + f Lnet/minecraft/network/Connection; connection b field_45589 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_45590 + f Ljava/lang/String; serverBrand d field_45591 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager e field_45592 + f Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen f field_45593 + f Z isTransferring g field_51516 + f Z strictErrorHandling h field_51520 + f Ljava/util/Map; serverCookies i field_48399 + f Ljava/util/Map; customReportDetails j field_52154 + f Lnet/minecraft/server/ServerLinks; serverLinks k field_52155 + f Lnet/minecraft/network/chat/Component; GENERIC_DISCONNECT_MESSAGE l field_45594 + f Lorg/slf4j/Logger; LOGGER m field_45944 + f Ljava/util/List; deferredPackets n field_45595 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleCustomPayload a method_11152 + p 1 payload + m (Lnet/minecraft/server/ServerLinks$Entry;)Ljava/util/List; method_60880 a method_60880 + m (Ljava/lang/String;)Ljava/net/URL; parseResourcePackUrl a method_52773 + p 0 url + m (Ljava/util/UUID;)V method_55511 a method_55511 + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/screens/Screen; addOrUpdatePackPrompt a method_55609 + p 1 id + p 2 url + p 3 hash + p 4 required + p 5 prompt + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; preparePackPrompt a method_52778 + p 0 line1 + p 1 line2 + m (Lnet/minecraft/network/protocol/Packet;Ljava/lang/Throwable;)Ljava/util/Optional; storeDisconnectionReport a method_60882 + p 1 packet + p 2 error + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/BooleanSupplier;Ljava/time/Duration;)V sendWhen a method_52779 + p 1 packet + p 2 sendCondition + p 3 expirationTime + m (Lnet/minecraft/network/DisconnectionDetails;)Lnet/minecraft/client/gui/screens/Screen; createDisconnectScreen b method_52786 + p 1 details + m (Lnet/minecraft/network/protocol/Packet;)V send b method_52787 + p 1 packet + m ()V sendDeferredPackets e method_52789 + m ()Ljava/lang/String; serverBrand f method_52790 + m ()Lnet/minecraft/client/gui/screens/Screen; method_52788 g method_52788 + m ()Ljava/lang/String; method_55610 h method_55610 + m ()Ljava/lang/String; method_55611 i method_55611 + m ()V method_55513 j method_55513 + m ()Z method_52792 k method_52792 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$DeferredPacket fzc$a net/minecraft/class_8673$class_8137 + f Lnet/minecraft/network/protocol/Packet; packet a comp_1264 + f Ljava/util/function/BooleanSupplier; sendCondition b comp_1265 + f J expirationTime c comp_1266 + m ()Lnet/minecraft/network/protocol/Packet; packet a comp_1264 + m ()Ljava/util/function/BooleanSupplier; sendCondition b comp_1265 + m ()J expirationTime c comp_1266 + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/BooleanSupplier;J)V +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen fzc$b net/minecraft/class_8673$class_9058 + f Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl; field_47681 r field_47681 + f Ljava/util/List; requests s field_47682 + f Lnet/minecraft/client/gui/screens/Screen; parentScreen u field_47683 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;ZLjava/util/List;Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl;Z)V method_55612 a method_55612 + m (Lnet/minecraft/client/Minecraft;Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen; update a method_55613 + p 1 minecraft + p 2 id + p 3 url + p 4 hash + p 5 required + p 6 prompt + m (Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Ljava/util/List;ZLnet/minecraft/network/chat/Component;)V + p 2 minecraft + p 3 parentScreen + p 4 requests + p 5 required + p 6 prompt +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen$PendingRequest fzc$b$a net/minecraft/class_8673$class_9058$class_9059 + f Ljava/util/UUID; id a comp_2172 + f Ljava/net/URL; url b comp_2173 + f Ljava/lang/String; hash c comp_2174 + m ()Ljava/util/UUID; id a comp_2172 + m ()Ljava/net/URL; url b comp_2173 + m ()Ljava/lang/String; hash c comp_2174 + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V +c net/minecraft/client/multiplayer/ClientConfigurationPacketListenerImpl fzd net/minecraft/class_8674 + f Lnet/minecraft/client/gui/components/ChatComponent$State; chatState l field_50223 + f Lorg/slf4j/Logger; LOGGER m field_45596 + f Lcom/mojang/authlib/GameProfile; localGameProfile n field_45597 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures o field_45599 + f Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries p field_45598 + f Lnet/minecraft/client/multiplayer/RegistryDataCollector; registryDataCollector q field_48766 + f Lnet/minecraft/client/multiplayer/KnownPacksManager; knownPacks r field_49123 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)Lnet/minecraft/core/RegistryAccess$Frozen; method_57043 a method_57043 + m (Ljava/util/function/Function;)Ljava/lang/Object; runWithResources a method_57044 + p 1 resources + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleUnknownCustomPayload b method_52797 + p 1 payload + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl fze net/minecraft/class_635 + f Lorg/slf4j/Logger; LOGGER a field_3710 + f Lnet/minecraft/client/Minecraft; minecraft b field_3708 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_40481 + f Lnet/minecraft/client/gui/screens/Screen; parent d field_3706 + f Ljava/util/function/Consumer; updateStatus e field_3711 + f Lnet/minecraft/network/Connection; connection f field_3707 + f Z newWorld g field_41383 + f Ljava/time/Duration; worldLoadDuration h field_41384 + f Ljava/lang/String; minigameName i field_44809 + f Ljava/util/Map; cookies j field_48400 + f Z wasTransferredTo k field_48401 + f Ljava/util/concurrent/atomic/AtomicReference; state l field_46192 + m (Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V setEncryption a method_56151 + p 1 keyPacket + p 2 decryptingCypher + p 3 encryptingCypher + m (Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;)V switchState a method_53872 + p 1 state + m (Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;)Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; method_53873 a method_53873 + m (Ljava/lang/String;)V setMinigameName a method_51768 + p 1 minigameName + m (Ljava/lang/String;Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_2894 a method_2894 + m (Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_56152 a method_56152 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; authenticateServer b method_2892 + p 1 serverHash + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getMinecraftSessionService d method_2891 + m ()Ljava/lang/String; method_55614 e method_55614 + m ()Ljava/lang/String; method_55615 f method_55615 + m (Lnet/minecraft/network/Connection;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/gui/screens/Screen;ZLjava/time/Duration;Ljava/util/function/Consumer;Lnet/minecraft/client/multiplayer/TransferState;)V + p 1 connection + p 2 minecraft + p 3 serverData + p 4 parent + p 5 newWorld + p 6 worldLoadDuration + p 7 updateStatus + p 8 cookies + m ()V +c net/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State fze$a net/minecraft/class_635$class_8798 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; CONNECTING a field_46193 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; AUTHORIZING b field_46194 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; ENCRYPTING c field_46195 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; JOINING d field_46196 + f Lnet/minecraft/network/chat/Component; message e field_46197 + f Ljava/util/Set; fromStates f field_46198 + f [Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; $VALUES g field_46199 + m ()[Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; $values a method_53874 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Ljava/util/Set;)V + p 3 message + p 4 fromStates + m ()V +c net/minecraft/client/multiplayer/ClientLevel fzf net/minecraft/class_638 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection D field_3727 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer E field_17780 + f Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; clientLevelData F field_24430 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects; effects G field_24606 + f Lnet/minecraft/world/TickRateManager; tickRateManager H field_47129 + f Lnet/minecraft/client/Minecraft; minecraft I field_3729 + f Ljava/util/List; players J field_18226 + f Ljava/util/Map; mapData K field_17675 + f J CLOUD_COLOR L field_32640 + f I skyFlashTime M field_21526 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; tintCaches N field_21527 + f Lnet/minecraft/client/multiplayer/ClientChunkCache; chunkSource O field_24605 + f Ljava/util/Deque; lightUpdateQueue P field_34804 + f I serverSimulationDistance Q field_35163 + f Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; blockStatePredictionHandler R field_37951 + f Ljava/util/Set; MARKER_PARTICLE_ITEMS S field_35432 + f Lorg/slf4j/Logger; LOGGER a field_37952 + f D FLUID_PARTICLE_SPAWN_OFFSET b field_32641 + f I NORMAL_LIGHT_UPDATES_PER_FRAME c field_34805 + f I LIGHT_UPDATE_QUEUE_SIZE_THRESHOLD d field_34806 + f Lnet/minecraft/world/level/entity/EntityTickList; tickingEntities e field_27733 + f Lnet/minecraft/world/level/entity/TransientEntitySectionManager; entityStorage f field_27734 + m ()Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; getBlockStatePredictionHandler a method_41925 + m (DDDDDLnet/minecraft/core/particles/ParticleOptions;)V spawnFluidParticle a method_2932 + p 1 xStart + p 3 xEnd + p 5 zStart + p 7 zEnd + p 9 y + p 11 particleData + m (DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZJ)V playSound a method_43207 + p 1 x + p 3 y + p 5 z + p 7 soundEvent + p 8 source + p 9 volume + p 10 pitch + p 11 distanceDelay + p 12 seed + m (IIIILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos$MutableBlockPos;)V doAnimateTick a method_2943 + p 1 posX + p 2 posY + p 3 posZ + p 4 range + p 5 random + p 6 block + p 7 blockPos + m (ILnet/minecraft/world/entity/Entity$RemovalReason;)V removeEntity a method_2945 + p 1 entityId + p 2 reason + m (Lnet/minecraft/world/entity/Entity;)V tickNonPassenger a method_18646 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V tickPassenger a method_18647 + p 1 mount + p 2 rider + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_23782 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ColorResolver;Lnet/minecraft/client/color/block/BlockTintCache;)V method_32121 a method_32121 + m (Lnet/minecraft/world/level/ColorResolver;Lnet/minecraft/client/color/block/BlockTintCache;)V method_23779 a method_23779 + m (Lnet/minecraft/world/level/biome/BiomeManager;III)Lnet/minecraft/world/phys/Vec3; method_32689 a method_32689 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V unload a method_18110 + p 1 chunk + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; getSkyColor a method_23777 + p 1 pos + p 2 partialTick + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap;)V method_23778 a method_23778 + m (Ljava/lang/Runnable;)V queueLightUpdate a method_38536 + p 1 task + m (Ljava/util/Map;)V addMapData a method_35753 + p 1 map + m (Ljava/util/function/BooleanSupplier;)V tick a method_8441 + c Runs a single tick for the world + p 1 hasTimeLeft + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/biome/AmbientParticleSettings;)V method_24462 a method_24462 + m (Lnet/minecraft/core/BlockPos;)I method_38535 a method_38535 + m (Lnet/minecraft/core/BlockPos;F)V setDefaultSpawnPos a method_27873 + p 1 spawnPos + p 2 spawnAngle + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V syncBlockState a method_41926 + p 1 pos + p 2 state + p 3 playerPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/particles/ParticleOptions;Z)V trySpawnDripParticles a method_2938 + p 1 blockPos + p 2 blockState + p 3 particleData + p 4 shapeDownSolid + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/shapes/VoxelShape;D)V spawnParticle a method_2948 + p 1 pos + p 2 particleData + p 3 voxelShape + p 4 y + m ()V pollLightUpdates b method_38534 + m (I)V handleBlockChangedAck b method_41927 + p 1 sequence + m (III)V animateTick b method_2941 + p 1 posX + p 2 posY + p 3 posZ + m (J)V setGameTime b method_29089 + p 1 time + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V overrideMapData b method_47437 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/core/BlockPos;)I method_38537 b method_38537 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I calculateBlockTint b method_23780 + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)V setServerVerifiedBlockState b method_41928 + p 1 pos + p 2 state + p 3 flags + m ()Z isLightUpdateQueueEmpty c method_38743 + m (III)V setSectionDirtyWithNeighbors c method_18113 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (J)V setDayTime c method_8435 + c Sets the world time. + p 1 time + m (Lnet/minecraft/world/entity/Entity;)V addEntity c method_53875 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)I method_38538 c method_38538 + m ()Lnet/minecraft/client/renderer/DimensionSpecialEffects; effects d method_28103 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_18649 d method_18649 + m ()Ljava/lang/Iterable; entitiesForRendering e method_18112 + m (Lnet/minecraft/world/entity/Entity;)V method_32124 e method_32124 + m ()V tickEntities f method_18116 + m ()V clearTintCaches g method_23784 + m (F)F getSkyDarken g method_23783 + p 1 partialTick + m ()I getEntityCount h method_18120 + m (F)Lnet/minecraft/world/phys/Vec3; getCloudColor h method_23785 + p 1 partialTick + m (I)V setServerSimulationDistance h method_39023 + p 1 serverSimulationDistance + m ()Lnet/minecraft/client/multiplayer/ClientChunkCache; getChunkSource i method_2935 + c Gets the world's chunk provider + m (F)F getStarBrightness i method_23787 + p 1 partialTick + m ()I getSkyFlashTime j method_23789 + m ()Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; getLevelData k method_28104 + c Returns the world's WorldInfo object + m ()Ljava/util/Map; getAllMapData l method_35754 + m ()I getServerSimulationDistance m method_39024 + m ()V tickTime n method_29090 + m ()Lnet/minecraft/world/level/block/Block; getMarkerParticleTarget p method_35752 + m ()Ljava/lang/String; method_54633 q method_54633 + m ()Ljava/lang/String; method_2933 u method_2933 + m ()Ljava/lang/String; method_2946 w method_2946 + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;IILjava/util/function/Supplier;Lnet/minecraft/client/renderer/LevelRenderer;ZJ)V + p 1 connection + p 2 clientLevelData + p 3 dimension + p 4 dimensionType + p 5 viewDistance + p 6 serverSimulationDistance + p 7 profiler + p 8 levelRenderer + p 9 isDebug + p 10 biomeZoomSeed + m ()V +c net/minecraft/client/multiplayer/ClientLevel$1 fzf$1 net/minecraft/class_638$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_22436 + m ()V +c net/minecraft/client/multiplayer/ClientLevel$ClientLevelData fzf$a net/minecraft/class_638$class_5271 + f Z hardcore a field_24433 + f Lnet/minecraft/world/level/GameRules; gameRules b field_24434 + f Z isFlat c field_24607 + f Lnet/minecraft/core/BlockPos; spawnPos d field_48402 + f F spawnAngle e field_26372 + f J gameTime f field_24438 + f J dayTime g field_24439 + f Z raining h field_24440 + f Lnet/minecraft/world/Difficulty; difficulty i field_24441 + f Z difficultyLocked j field_24442 + m (J)V setGameTime a method_177 + p 1 gameTime + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_27875 + p 1 difficulty + m (Lnet/minecraft/world/level/LevelHeightAccessor;)D getHorizonHeight a method_28105 + p 1 level + m (Z)V setDifficultyLocked a method_27876 + p 1 difficultyLocked + m (J)V setDayTime b method_165 + p 1 dayTime + m ()F getClearColorScale e method_28106 + m (Lnet/minecraft/world/Difficulty;ZZ)V + p 1 difficulty + p 2 hardcore + p 3 isFlat +c net/minecraft/client/multiplayer/ClientLevel$EntityCallbacks fzf$b net/minecraft/class_638$class_5612 + f Lnet/minecraft/client/multiplayer/ClientLevel; field_27735 a field_27735 + m (Lnet/minecraft/world/entity/Entity;)V onCreated a method_32125 + m (Lnet/minecraft/world/entity/Entity;)V onDestroyed b method_32126 + m (Lnet/minecraft/world/entity/Entity;)V onTickingStart c method_32127 + m (Lnet/minecraft/world/entity/Entity;)V onTickingEnd d method_32128 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingStart e method_32129 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingEnd f method_32130 + m (Lnet/minecraft/world/entity/Entity;)V onSectionChange g method_43208 + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V +c net/minecraft/client/multiplayer/ClientPacketListener fzg net/minecraft/class_634 + f I serverChunkRadius A field_19144 + f I serverSimulationDistance B field_35164 + f Lnet/minecraft/util/RandomSource; random C field_3687 + c Just an ordinary random number generator, used to randomize audio pitch of item/orb pickup and randomize both particlespawn offset and velocity + f Lcom/mojang/brigadier/CommandDispatcher; commands D field_3696 + f Lnet/minecraft/world/item/crafting/RecipeManager; recipeManager E field_3688 + f Ljava/util/UUID; id F field_16771 + f Ljava/util/Set; levels G field_25273 + f Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess H field_25063 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures I field_45600 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing J field_51439 + f Lnet/minecraft/network/chat/LocalChatSession; chatSession K field_40799 + f Lnet/minecraft/network/chat/SignedMessageChain$Encoder; signedMessageEncoder L field_39808 + f Lnet/minecraft/network/chat/LastSeenMessagesTracker; lastSeenMessages M field_39858 + f Lnet/minecraft/network/chat/MessageSignatureCache; messageSignatureCache N field_40483 + f Lnet/minecraft/client/multiplayer/ChunkBatchSizeCalculator; chunkBatchSizeCalculator O field_45945 + f Lnet/minecraft/client/multiplayer/PingDebugMonitor; pingDebugMonitor P field_45946 + f Lnet/minecraft/client/multiplayer/DebugSampleSubscriber; debugSampleSubscriber Q field_48933 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager; levelLoadStatusManager R field_46578 + f Z serverEnforcesSecureChat S field_48403 + f Z seenInsecureChatWarning T field_45947 + f Z closed U field_46187 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard V field_47878 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees; searchTrees W field_51825 + f Lorg/slf4j/Logger; LOGGER l field_3695 + f Lnet/minecraft/network/chat/Component; UNSECURE_SERVER_TOAST_TITLE m field_39916 + f Lnet/minecraft/network/chat/Component; UNSERURE_SERVER_TOAST n field_39917 + f Lnet/minecraft/network/chat/Component; INVALID_PACKET o field_40485 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_FAILED_ERROR p field_40486 + f Lnet/minecraft/network/chat/Component; RECONFIGURE_SCREEN_MESSAGE q field_45603 + f I PENDING_OFFSET_THRESHOLD r field_40487 + f Lcom/mojang/authlib/GameProfile; localGameProfile s field_3697 + f Lnet/minecraft/client/multiplayer/ClientLevel; level t field_3699 + c Reference to the current ClientWorld instance, which many handler methods operate on + f Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; levelData u field_24321 + f Ljava/util/Map; playerInfoMap v field_3693 + c A mapping from player names to their respective GuiPlayerInfo (specifies the clients response time to the server) + f Ljava/util/Set; listedPlayers w field_40489 + f Lnet/minecraft/client/multiplayer/ClientAdvancements; advancements x field_3700 + f Lnet/minecraft/client/multiplayer/ClientSuggestionProvider; suggestionsProvider y field_3691 + f Lnet/minecraft/client/DebugQueryHandler; debugQueryHandler z field_3692 + m ()V updateSearchTrees A method_60346 + m ()Lnet/minecraft/client/multiplayer/SessionSearchTrees; searchTrees B method_60347 + m ()Lnet/minecraft/server/ServerLinks; serverLinks C method_60885 + m ()Z enforcesSecureChat D method_46529 + m ()V sendChatAcknowledgement E method_45737 + m ()V method_34018 F method_34018 + m (I)V method_37472 a method_37472 + m (IILnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData;)V updateLevelChunk a method_38539 + p 1 x + p 2 z + p 3 data + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V applyLightData a method_38543 + p 1 x + p 2 z + p 3 data + m (IILnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/world/level/LightLayer;Ljava/util/BitSet;Ljava/util/BitSet;Ljava/util/Iterator;)V readSectionList a method_2870 + p 1 x + p 2 z + p 3 lightEngine + p 4 lightLayer + p 5 skyYMask + p 6 emptySkyYMask + p 7 skyUpdates + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket;Lnet/minecraft/world/level/block/entity/BlockEntity;)V method_38542 a method_38542 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;Lnet/minecraft/client/multiplayer/PlayerInfo;)V applyPlayerInfoUpdate a method_45726 + p 1 action + p 2 entry + p 3 playerInfo + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;Lnet/minecraft/client/multiplayer/PlayerInfo;)V initializeChatSession a method_45727 + p 1 entry + p 2 playerInfo + m (Lnet/minecraft/world/entity/Entity;)V postAddEntitySoundInstance a method_43209 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/datafixers/util/Pair;)V method_34008 a method_34008 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; findTotem a method_19691 + p 0 player + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V setKeyPair a method_47657 + p 1 keyPair + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isFeatureEnabled a method_45720 + p 1 enabledFeatures + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_34009 a method_34009 + m (Lnet/minecraft/world/level/ChunkPos;)V method_51685 a method_51685 + m (Lnet/minecraft/world/level/chunk/LevelChunk;II)V enableChunkLight a method_38541 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Parameters;)V method_34010 a method_34010 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_34011 a method_34011 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)V method_34012 a method_34012 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V startWaitingForNewLevel a method_54133 + p 1 player + p 2 level + p 3 reason + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_2874 + c Gets the client's description information about another player on the server. + p 1 name + m (Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessagesTracker$Update;Ljava/lang/String;)Lnet/minecraft/network/chat/MessageSignature; method_45722 a method_45722 + m (Ljava/util/Optional;)V method_46525 a method_46525 + m (Ljava/util/UUID;)Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_2871 + p 1 uniqueId + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_34007 a method_34007 + m (Lnet/minecraft/network/chat/PlayerChatMessage;Z)V markMessageAsProcessed a method_44940 + p 1 chatMessage + p 2 acknowledged + m (ZLnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; determineLevelLoadingReason a method_59842 + p 1 dying + p 2 spawnDimension + p 3 currentDimension + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V method_38545 b method_38545 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleUnknownCustomPayload b method_52801 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)Lnet/minecraft/world/entity/Entity; createEntityFromPacket b method_53876 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket;)V queueLightRemoval b method_51684 + p 1 packet + m (Ljava/lang/String;)V sendChat b method_45729 + p 1 message + m (Ljava/util/Optional;)V method_46528 b method_46528 + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V method_51769 c method_51769 + m (Ljava/lang/String;)V sendCommand c method_45730 + p 1 command + m (Ljava/lang/String;)Z sendUnsignedCommand d method_45731 + p 1 command + m (Ljava/lang/String;)Lcom/mojang/brigadier/ParseResults; parseCommand e method_45733 + p 1 command + m ()Lnet/minecraft/client/multiplayer/ClientSuggestionProvider; getSuggestionsProvider g method_2875 + m ()V close h method_47658 + m ()V clearLevel i method_54134 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager j method_2877 + m ()Lnet/minecraft/network/Connection; getConnection k method_48296 + c Returns this the NetworkManager instance registered with this NetworkHandlerPlayClient + m ()Ljava/util/Collection; getListedOnlinePlayers l method_45732 + m ()Ljava/util/Collection; getOnlinePlayers m method_2880 + m ()Ljava/util/Collection; getOnlinePlayerIds n method_31363 + m ()Lcom/mojang/authlib/GameProfile; getLocalGameProfile o method_2879 + m ()Lnet/minecraft/client/multiplayer/ClientAdvancements; getAdvancements p method_2869 + m ()Lcom/mojang/brigadier/CommandDispatcher; getCommands q method_2886 + m ()Lnet/minecraft/client/multiplayer/ClientLevel; getLevel r method_2890 + m ()Lnet/minecraft/client/DebugQueryHandler; getDebugQueryHandler s method_2876 + m ()Ljava/util/UUID; getId t method_16690 + m ()Ljava/util/Set; levels u method_29356 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess v method_29091 + m ()Lnet/minecraft/client/multiplayer/ServerData; getServerData w method_45734 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures x method_45735 + m ()Lnet/minecraft/world/scores/Scoreboard; scoreboard y method_55823 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing z method_59754 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientPacketListener$1 fzg$1 net/minecraft/class_634$1 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundRecipePacket$State a field_3705 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundPlayerInfoUpdatePacket$Action b field_3702 + m ()V +c net/minecraft/client/multiplayer/ClientRegistryLayer fzh net/minecraft/class_7756 + f Lnet/minecraft/client/multiplayer/ClientRegistryLayer; STATIC a field_40490 + f Lnet/minecraft/client/multiplayer/ClientRegistryLayer; REMOTE b field_40491 + f Ljava/util/List; VALUES c field_40492 + f Lnet/minecraft/core/RegistryAccess$Frozen; STATIC_ACCESS d field_40493 + f [Lnet/minecraft/client/multiplayer/ClientRegistryLayer; $VALUES e field_40494 + m ()Lnet/minecraft/core/LayeredRegistryAccess; createRegistryAccess a method_45738 + m ()[Lnet/minecraft/client/multiplayer/ClientRegistryLayer; $values b method_45739 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ClientSuggestionProvider fzi net/minecraft/class_637 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_3722 + f Lnet/minecraft/client/Minecraft; minecraft b field_3725 + f I pendingSuggestionsId c field_3724 + f Ljava/util/concurrent/CompletableFuture; pendingSuggestionsFuture d field_3723 + f Ljava/util/Set; customCompletionSuggestions e field_39794 + m (D)Ljava/lang/String; prettyPrint a method_2929 + p 0 doubleValue + m (I)Ljava/lang/String; prettyPrint a method_2930 + p 0 intValue + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V completeCustomSuggestions a method_2931 + p 1 transaction + p 2 result + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action;Ljava/util/List;)V modifyCustomCompletions a method_44764 + p 1 action + p 2 entries + m (Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/core/Registry;)Ljava/util/concurrent/CompletableFuture; method_41232 a method_41232 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; method_41233 b method_41233 + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/Minecraft;)V + p 1 connection + p 2 minecraft +c net/minecraft/client/multiplayer/ClientSuggestionProvider$1 fzi$1 net/minecraft/class_637$1 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundCustomChatCompletionsPacket$Action a field_39795 + m ()V +c net/minecraft/client/multiplayer/CommonListenerCookie fzj net/minecraft/class_8675 + f Lcom/mojang/authlib/GameProfile; localGameProfile a comp_1611 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager b comp_1612 + f Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries c comp_1613 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d comp_1614 + f Ljava/lang/String; serverBrand e comp_1615 + f Lnet/minecraft/client/multiplayer/ServerData; serverData f comp_1616 + f Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen g comp_1617 + f Ljava/util/Map; serverCookies h comp_2205 + f Lnet/minecraft/client/gui/components/ChatComponent$State; chatState i comp_2553 + f Z strictErrorHandling j comp_2663 + f Ljava/util/Map; customReportDetails k comp_2849 + f Lnet/minecraft/server/ServerLinks; serverLinks l comp_2850 + m ()Lcom/mojang/authlib/GameProfile; localGameProfile a comp_1611 + m ()Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager b comp_1612 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries c comp_1613 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d comp_1614 + m ()Ljava/lang/String; serverBrand e comp_1615 + m ()Lnet/minecraft/client/multiplayer/ServerData; serverData f comp_1616 + m ()Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen g comp_1617 + m ()Ljava/util/Map; serverCookies h comp_2205 + m ()Lnet/minecraft/client/gui/components/ChatComponent$State; chatState i comp_2553 + m ()Z strictErrorHandling j comp_2663 + m ()Ljava/util/Map; customReportDetails k comp_2849 + m ()Lnet/minecraft/server/ServerLinks; serverLinks l comp_2850 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/lang/String;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/gui/screens/Screen;Ljava/util/Map;Lnet/minecraft/client/gui/components/ChatComponent$State;ZLjava/util/Map;Lnet/minecraft/server/ServerLinks;)V +c net/minecraft/client/multiplayer/DebugSampleSubscriber fzk net/minecraft/class_9211 + f I REQUEST_INTERVAL_MS a field_48934 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection b field_48935 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay; debugScreenOverlay c field_48936 + f Ljava/util/EnumMap; lastRequested d field_48937 + m ()V tick a method_56830 + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V sendSubscriptionRequestIfNeeded a method_56831 + p 1 sampleType + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/gui/components/DebugScreenOverlay;)V + p 1 connection + p 2 debugScreenOverlay +c net/minecraft/client/multiplayer/KnownPacksManager fzl net/minecraft/class_9247 + f Lnet/minecraft/server/packs/repository/PackRepository; repository a field_49124 + f Ljava/util/Map; knownPackToId b field_49125 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; createResourceManager a method_57046 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/KnownPack;)V method_57047 a method_57047 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/server/packs/repository/Pack;)V method_57048 a method_57048 + m (Ljava/util/List;)Ljava/util/List; trySelectingPacks a method_57049 + p 1 packs + m ()V +c net/minecraft/client/multiplayer/LegacyServerPinger fzm net/minecraft/class_8676 + f Lcom/google/common/base/Splitter; SPLITTER a field_45604 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; address b field_45605 + f Lnet/minecraft/client/multiplayer/LegacyServerPinger$Output; output c field_45606 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V channelRead0 a method_3005 + p 1 context + p 2 buffer + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/LegacyServerPinger$Output;)V + p 1 address + p 2 output + m ()V +c net/minecraft/client/multiplayer/LegacyServerPinger$Output fzm$a net/minecraft/class_8676$class_8677 +c net/minecraft/client/multiplayer/LevelLoadStatusManager fzn net/minecraft/class_8819 + f Lnet/minecraft/client/player/LocalPlayer; player a field_46579 + f Lnet/minecraft/client/multiplayer/ClientLevel; level b field_46580 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer c field_46581 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; status d field_46582 + m ()V tick a method_54135 + m ()Z levelReady b method_54136 + m ()V loadingPacketsReceived c method_54137 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/LevelRenderer;)V + p 1 player + p 2 level + p 3 levelRenderer +c net/minecraft/client/multiplayer/LevelLoadStatusManager$Status fzn$a net/minecraft/class_8819$class_8820 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; WAITING_FOR_SERVER a field_46584 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; WAITING_FOR_PLAYER_CHUNK b field_46585 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; LEVEL_READY c field_46586 + f [Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; $VALUES d field_46587 + m ()[Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; $values a method_54138 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/MultiPlayerGameMode fzo net/minecraft/class_636 + f Lorg/slf4j/Logger; LOGGER a field_20316 + f Lnet/minecraft/client/Minecraft; minecraft b field_3712 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection c field_3720 + f Lnet/minecraft/core/BlockPos; destroyBlockPos d field_3714 + f Lnet/minecraft/world/item/ItemStack; destroyingItem e field_3718 + f F destroyProgress f field_3715 + f F destroyTicks g field_3713 + f I destroyDelay h field_3716 + f Z isDestroying i field_3717 + f Lnet/minecraft/world/level/GameType; localPlayerMode j field_3719 + f Lnet/minecraft/world/level/GameType; previousLocalPlayerMode k field_24608 + f I carriedIndex l field_3721 + m ()Z canHurtPlayer a method_2908 + m (I)V handlePickItem a method_2916 + p 1 index + m (II)V handleInventoryButtonClick a method_2900 + c GuiEnchantment uses this during multiplayer to tell PlayerControllerMP to send a packet indicating the enchantment action the player has taken. + p 1 containerId + p 2 buttonId + m (IIILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V handleInventoryMouseClick a method_2906 + p 1 containerId + p 2 slotId + p 3 mouseButton + p 4 clickType + p 5 player + m (IIZ)V handleSlotStateChanged a method_54634 + p 1 slotId + p 2 containerId + p 3 newState + m (ILnet/minecraft/world/item/crafting/RecipeHolder;Z)V handlePlaceRecipe a method_2912 + p 1 containerId + p 2 recipe + p 3 shiftDown + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/entity/player/Player;Lorg/apache/commons/lang3/mutable/MutableObject;I)Lnet/minecraft/network/protocol/Packet; method_41929 a method_41929 + m (Lnet/minecraft/world/entity/player/Player;)V adjustPlayer a method_2903 + c Sets player capabilities depending on current gametype. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; useItem a method_2919 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)V attack a method_2918 + c Attacks an entity + p 1 player + p 2 targetEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interact a method_2905 + c Handles right-clicking an entity, sends a packet to the server. + p 1 player + p 2 target + p 3 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/EntityHitResult;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactAt a method_2917 + c Handles right-clicking an entity from the entities side, sends a packet to the server. + p 1 player + p 2 target + p 3 ray + p 4 hand + m (Lnet/minecraft/world/item/ItemStack;)V handleCreativeModeItemDrop a method_2915 + c Sends a Packet107 to the server to drop the item on the ground + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V handleCreativeModeItemAdd a method_2909 + c Used in PlayerControllerMP to update the server with an ItemStack in a slot. + p 1 stack + p 2 slotId + m (Lnet/minecraft/world/level/GameType;)V setLocalMode a method_2907 + c Sets the game type for the player. + p 1 type + m (Lnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;)V setLocalMode a method_32790 + p 1 localPlayerMode + p 2 previousLocalPlayerMode + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41930 a method_41930 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;)Lnet/minecraft/client/player/LocalPlayer; createPlayer a method_29357 + p 1 level + p 2 statsManager + p 3 recipes + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;ZZ)Lnet/minecraft/client/player/LocalPlayer; createPlayer a method_2901 + p 1 level + p 2 statsManager + p 3 recipes + p 4 wasShiftKeyDown + p 5 wasSprinting + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/multiplayer/prediction/PredictiveAction;)V startPrediction a method_41931 + p 1 level + p 2 action + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useItemOn a method_2896 + p 1 player + p 2 hand + p 3 result + m (Lnet/minecraft/core/BlockPos;)Z destroyBlock a method_2899 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z startDestroyBlock a method_2910 + c Called when the player is hitting a block with an item. + p 1 loc + p 2 face + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41932 a method_41932 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;I)Lnet/minecraft/network/protocol/Packet; method_41933 a method_41933 + m ()V stopDestroyBlock b method_2925 + c Resets current block damage + m (Lnet/minecraft/world/entity/player/Player;)V releaseUsingItem b method_2897 + p 1 player + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; performUseItemOn b method_41934 + p 1 player + p 2 hand + p 3 result + m (Lnet/minecraft/core/BlockPos;)Z sameDestroyTarget b method_2922 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z continueDestroyBlock b method_2902 + p 1 posBlock + p 2 directionFacing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41935 b method_41935 + m ()V tick c method_2927 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41936 c method_41936 + m ()Z hasExperience d method_2913 + m ()Z hasMissTime e method_2924 + c Checks if the player is not creative, used for checking if it should break a block instantly + m ()Z hasInfiniteItems f method_2914 + c Returns {@code true} if player is in creative mode. + m ()Z isServerControlledInventory g method_2895 + c Checks if the player is riding a horse, used to choose the GUI to open + m ()Z isAlwaysFlying h method_2928 + m ()Lnet/minecraft/world/level/GameType; getPreviousPlayerMode i method_28107 + m ()Lnet/minecraft/world/level/GameType; getPlayerMode j method_2920 + m ()Z isDestroying k method_2923 + c Return isHittingBlock + m ()I getDestroyStage l method_51888 + m ()V ensureHasSentCarriedItem m method_2911 + c Syncs the current player item with the server + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ClientPacketListener;)V + p 1 minecraft + p 2 connection + m ()V +c net/minecraft/client/multiplayer/PingDebugMonitor fzp net/minecraft/class_8761 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_45948 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; delayTimer b field_45949 + m ()V tick a method_53486 + m (Lnet/minecraft/network/protocol/ping/ClientboundPongResponsePacket;)V onPongReceived a method_53487 + p 1 packet + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/util/debugchart/LocalSampleLogger;)V + p 1 connection + p 2 delayTimer +c net/minecraft/client/multiplayer/PlayerInfo fzq net/minecraft/class_640 + f Lcom/mojang/authlib/GameProfile; profile a field_3741 + c The GameProfile for the player represented by this NetworkPlayerInfo instance + f Ljava/util/function/Supplier; skinLookup b field_45607 + f Lnet/minecraft/world/level/GameType; gameMode c field_3744 + f I latency d field_3739 + f Lnet/minecraft/network/chat/Component; tabListDisplayName e field_3743 + c When this is non-null, it is displayed instead of the player's real name + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession f field_40495 + f Lnet/minecraft/network/chat/SignedMessageValidator; messageValidator g field_39809 + m ()Lcom/mojang/authlib/GameProfile; getProfile a method_2966 + c Returns the GameProfile for the player represented by this NetworkPlayerInfo instance + m (I)V setLatency a method_2970 + p 1 latency + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; createSkinLookup a method_52803 + p 0 profile + m (Lnet/minecraft/world/level/GameType;)V setGameMode a method_2963 + p 1 gameMode + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin;Z)Lnet/minecraft/client/resources/PlayerSkin; method_52806 a method_52806 + m (Ljava/util/function/Supplier;)Lnet/minecraft/client/resources/PlayerSkin; method_52807 a method_52807 + m (Lnet/minecraft/network/chat/Component;)V setTabListDisplayName a method_2962 + p 1 displayName + m (Lnet/minecraft/network/chat/RemoteChatSession;)V setChatSession a method_45740 + p 1 chatSession + m (Z)V clearChatSession a method_46530 + p 1 enforcesSecureChat + m ()Lnet/minecraft/network/chat/RemoteChatSession; getChatSession b method_45741 + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; method_52808 b method_52808 + m (Z)Lnet/minecraft/network/chat/SignedMessageValidator; fallbackMessageValidator b method_46531 + p 0 enforeSecureChat + m ()Lnet/minecraft/network/chat/SignedMessageValidator; getMessageValidator c method_44817 + m ()Z hasVerifiableChat d method_45742 + m ()Lnet/minecraft/world/level/GameType; getGameMode e method_2958 + m ()I getLatency f method_2959 + m ()Lnet/minecraft/client/resources/PlayerSkin; getSkin g method_52810 + m ()Lnet/minecraft/world/scores/PlayerTeam; getTeam h method_2955 + m ()Lnet/minecraft/network/chat/Component; getTabListDisplayName i method_2971 + m (Lcom/mojang/authlib/GameProfile;Z)V + p 1 profile + p 2 enforeSecureChat +c net/minecraft/client/multiplayer/ProfileKeyPairManager fzr net/minecraft/class_7853 + f Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; EMPTY_KEY_MANAGER a field_40800 + m ()Ljava/util/concurrent/CompletableFuture; prepareKeyPair a method_46522 + m (Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/client/User;Ljava/nio/file/Path;)Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; create a method_46532 + p 0 userApiService + p 1 user + p 2 gameDirectory + m ()Z shouldRefreshKeyPair b method_46523 + m ()V +c net/minecraft/client/multiplayer/ProfileKeyPairManager$1 fzr$1 net/minecraft/class_7853$1 + m ()V +c net/minecraft/client/multiplayer/RegistryDataCollector fzs net/minecraft/class_9173 + f Lnet/minecraft/client/multiplayer/RegistryDataCollector$ContentsCollector; contentsCollector a field_48767 + f Lnet/minecraft/client/multiplayer/TagCollector; tagCollector b field_48768 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V appendContents a method_56583 + p 1 registryKey + p 2 registryEntries + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;Z)Lnet/minecraft/core/RegistryAccess$Frozen; collectGameRegistries a method_56585 + p 1 resourceProvider + p 2 registryAccess + p 3 isMemoryConnection + m (Ljava/util/Map;)V appendTags a method_56586 + p 1 tags + m ()V +c net/minecraft/client/multiplayer/RegistryDataCollector$ContentsCollector fzs$a net/minecraft/class_9173$class_9174 + f Ljava/util/Map; elements a field_48769 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/List; method_56587 a method_56587 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V append a method_56588 + p 1 registryKey + p 2 entries + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/RegistryAccess; loadRegistries a method_56589 + p 1 resourceProvider + p 2 registryAccess + m ()V +c net/minecraft/client/multiplayer/ServerData fzt net/minecraft/class_642 + f Ljava/lang/String; name a field_3752 + f Ljava/lang/String; ip b field_3761 + f Lnet/minecraft/network/chat/Component; status c field_3753 + f Lnet/minecraft/network/chat/Component; motd d field_3757 + f Lnet/minecraft/network/protocol/status/ServerStatus$Players; players e field_41861 + f J ping f field_3758 + f I protocol g field_3756 + f Lnet/minecraft/network/chat/Component; version h field_3760 + f Ljava/util/List; playerList i field_3762 + f Lorg/slf4j/Logger; LOGGER j field_42889 + f I MAX_ICON_SIZE k field_46206 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; packStatus l field_3755 + f [B iconBytes m field_42890 + f Lnet/minecraft/client/multiplayer/ServerData$Type; type n field_45608 + f Lnet/minecraft/client/multiplayer/ServerData$State; state o field_47879 + m ()Lnet/minecraft/nbt/CompoundTag; write a method_2992 + c Returns an NBTTagCompound with the server's name, IP and maybe acceptTextures. + m (Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)V setResourcePackStatus a method_2995 + p 1 packStatus + m (Lnet/minecraft/client/multiplayer/ServerData$State;)V setState a method_55824 + p 1 state + m (Lnet/minecraft/client/multiplayer/ServerData;)V copyNameIconFrom a method_44292 + p 1 other + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/client/multiplayer/ServerData; read a method_2993 + c Takes an NBTTagCompound with 'name' and 'ip' keys, returns a ServerData instance. + p 0 nbtCompound + m ([B)V setIconBytes a method_49305 + p 1 iconBytes + m ()Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; getResourcePackStatus b method_2990 + m (Lnet/minecraft/client/multiplayer/ServerData;)V copyFrom b method_2996 + p 1 serverData + m ([B)[B validateIcon b method_53885 + p 0 icon + m ()[B getIconBytes c method_49306 + m ()Z isLan d method_2994 + c Returns {@code true} if the server is a LAN server. + m ()Z isRealm e method_52811 + m ()Lnet/minecraft/client/multiplayer/ServerData$Type; type f method_55616 + m ()Lnet/minecraft/client/multiplayer/ServerData$State; state g method_55825 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/multiplayer/ServerData$Type;)V + p 1 name + p 2 ip + p 3 type + m ()V +c net/minecraft/client/multiplayer/ServerData$ServerPackStatus fzt$a net/minecraft/class_642$class_643 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; ENABLED a field_3768 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; DISABLED b field_3764 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; PROMPT c field_3767 + f Lnet/minecraft/network/chat/Component; name d field_3765 + f [Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; $VALUES e field_3766 + m ()Lnet/minecraft/network/chat/Component; getName a method_2997 + m ()[Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; $values b method_36896 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/ServerData$State fzt$b net/minecraft/class_642$class_9083 + f Lnet/minecraft/client/multiplayer/ServerData$State; INITIAL a field_47880 + f Lnet/minecraft/client/multiplayer/ServerData$State; PINGING b field_47881 + f Lnet/minecraft/client/multiplayer/ServerData$State; UNREACHABLE c field_47882 + f Lnet/minecraft/client/multiplayer/ServerData$State; INCOMPATIBLE d field_47883 + f Lnet/minecraft/client/multiplayer/ServerData$State; SUCCESSFUL e field_47884 + f [Lnet/minecraft/client/multiplayer/ServerData$State; $VALUES f field_47885 + m ()[Lnet/minecraft/client/multiplayer/ServerData$State; $values a method_55826 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ServerData$Type fzt$c net/minecraft/class_642$class_8678 + f Lnet/minecraft/client/multiplayer/ServerData$Type; LAN a field_45609 + f Lnet/minecraft/client/multiplayer/ServerData$Type; REALM b field_45610 + f Lnet/minecraft/client/multiplayer/ServerData$Type; OTHER c field_45611 + f [Lnet/minecraft/client/multiplayer/ServerData$Type; $VALUES d field_45612 + m ()[Lnet/minecraft/client/multiplayer/ServerData$Type; $values a method_52812 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ServerList fzu net/minecraft/class_641 + f Lorg/slf4j/Logger; LOGGER a field_3751 + f Lnet/minecraft/util/thread/ProcessorMailbox; IO_MAILBOX b field_39360 + f I MAX_HIDDEN_SERVERS c field_39437 + f Lnet/minecraft/client/Minecraft; minecraft d field_3750 + f Ljava/util/List; serverList e field_3749 + f Ljava/util/List; hiddenServerList f field_39438 + m ()V load a method_2981 + c Loads a list of servers from servers.dat, by running ServerData.getServerDataFromNBTCompound on each NBT compound found in the "servers" tag list. + m (I)Lnet/minecraft/client/multiplayer/ServerData; get a method_2982 + c Gets the ServerData instance stored for the given index in the list. + p 1 index + m (II)V swap a method_2985 + c Takes two list indexes, and swaps their order around. + p 1 pos1 + p 2 pos2 + m (ILnet/minecraft/client/multiplayer/ServerData;)V replace a method_2980 + p 1 index + p 2 server + m (Lnet/minecraft/client/multiplayer/ServerData;)V remove a method_2983 + p 1 serverData + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/util/List;)Z set a method_44294 + p 0 server + p 1 serverList + m (Lnet/minecraft/client/multiplayer/ServerData;Z)V add a method_2988 + p 1 server + p 2 hidden + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; get a method_44295 + p 1 ip + m ()V save b method_2987 + c Runs getNBTCompound on each ServerData instance, puts everything into a "servers" NBT list and writes it to servers.dat. + m (Lnet/minecraft/client/multiplayer/ServerData;)V saveSingleServer b method_2986 + p 0 server + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; unhide b method_44296 + p 1 ip + m ()I size c method_2984 + c Counts the number of ServerData instances in the list. + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_44090 c method_44090 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/multiplayer/ServerStatusPinger fzv net/minecraft/class_644 + f Lorg/slf4j/Logger; LOGGER a field_3771 + f Lnet/minecraft/network/chat/Component; CANT_CONNECT_MESSAGE b field_33740 + f Ljava/util/List; connections c field_3769 + c A list of NetworkManagers that have pending pings + m ()V tick a method_3000 + m (II)Lnet/minecraft/network/chat/Component; formatPlayerCount a method_27647 + p 0 players + p 1 capacity + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Ljava/lang/Runnable;)V pingServer a method_3003 + p 1 serverData + p 2 serverListUpdater + p 3 stateUpdater + m (Ljava/net/InetSocketAddress;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;)V pingLegacyServer a method_3001 + p 1 resolvedServerAddress + p 2 serverAddress + p 3 serverData + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/multiplayer/ServerData;)V onPingFailed a method_36897 + p 1 reason + p 2 serverData + m ()V removeAll b method_3004 + m ()V + m ()V +c net/minecraft/client/multiplayer/ServerStatusPinger$1 fzv$1 net/minecraft/class_644$1 + f Lnet/minecraft/network/Connection; val$connection a field_3774 + f Lnet/minecraft/client/multiplayer/ServerData; val$data b field_3776 + f Ljava/lang/Runnable; val$onPersistentDataChange c field_25636 + f Ljava/lang/Runnable; val$onPongResponse d field_47886 + f Ljava/net/InetSocketAddress; val$address e field_33741 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$rawAddress f field_45613 + f Lnet/minecraft/client/multiplayer/ServerStatusPinger; field_3777 g field_3777 + f Z success h field_3775 + f Z receivedPing i field_3773 + f J pingStart j field_3772 + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_49307 a method_49307 + m (Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/network/protocol/status/ServerStatus$Players;)V method_49308 a method_49308 + m (Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/network/protocol/status/ServerStatus$Version;)V method_49309 a method_49309 + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Lnet/minecraft/network/protocol/status/ServerStatus$Favicon;)V method_49310 a method_49310 + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_49311 b method_49311 + m (Lnet/minecraft/client/multiplayer/ServerStatusPinger;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Ljava/lang/Runnable;Ljava/net/InetSocketAddress;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)V +c net/minecraft/client/multiplayer/ServerStatusPinger$2 fzv$2 net/minecraft/class_644$2 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$rawAddress a field_3778 + f Lnet/minecraft/client/multiplayer/ServerData; val$data b field_3779 + m (Lnet/minecraft/client/multiplayer/ServerData;ILjava/lang/String;Ljava/lang/String;II)V method_52813 a method_52813 + m (Lnet/minecraft/client/multiplayer/ServerStatusPinger;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;)V +c net/minecraft/client/multiplayer/SessionSearchTrees fzw net/minecraft/class_1124 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; RECIPE_COLLECTIONS a field_46200 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; CREATIVE_NAMES b field_5495 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; CREATIVE_TAGS c field_5494 + f Ljava/util/concurrent/CompletableFuture; creativeByNameSearch d field_51826 + f Ljava/util/concurrent/CompletableFuture; creativeByTagSearch e field_51827 + f Ljava/util/concurrent/CompletableFuture; recipeSearch f field_51828 + f Ljava/util/Map; reloaders g field_51829 + m ()V rebuildAfterLanguageChange a method_60348 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60349 a method_60349 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60350 a method_60350 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60351 a method_60351 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/core/RegistryAccess$Frozen;)V updateRecipes a method_60352 + p 1 recipeBook + p 2 registries + m (Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key;Ljava/lang/Runnable;)V register a method_60353 + p 1 key + p 2 reloader + m (Ljava/lang/String;)Z method_60354 a method_60354 + m (Ljava/util/List;)V updateCreativeTags a method_60355 + p 1 items + m (Ljava/util/stream/Stream;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;)Ljava/util/stream/Stream; getTooltipLines a method_60356 + p 0 items + p 1 context + p 2 tooltipFlag + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)V updateCreativeTooltips a method_60357 + p 1 registries + p 2 items + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/resources/ResourceLocation; method_60358 a method_60358 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Ljava/util/stream/Stream; method_60359 a method_60359 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Ljava/util/stream/Stream; method_60360 a method_60360 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/core/Registry;Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60361 a method_60361 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_60362 a method_60362 + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/String; method_60363 a method_60363 + m ()Lnet/minecraft/client/searchtree/SearchTree; recipes b method_60364 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60365 b method_60365 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60366 b method_60366 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/core/RegistryAccess$Frozen;)V method_60367 b method_60367 + m (Ljava/util/List;)V method_60368 b method_60368 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)V method_60369 b method_60369 + m ()Lnet/minecraft/client/searchtree/SearchTree; creativeTagSearch c method_60370 + m (Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60371 c method_60371 + m ()Lnet/minecraft/client/searchtree/SearchTree; creativeNameSearch d method_60372 + m ()V + m ()V +c net/minecraft/client/multiplayer/SessionSearchTrees$Key fzw$a net/minecraft/class_1124$class_1125 + m ()V +c net/minecraft/client/multiplayer/TagCollector fzx net/minecraft/class_9175 + f Ljava/util/Map; tags a field_48770 + m ()V refreshBuiltInTagDependentData a method_57054 + m (Lnet/minecraft/resources/ResourceKey;)Z method_57051 a method_57051 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V append a method_56590 + p 1 registryKey + p 2 networkPayload + m (Ljava/util/function/Predicate;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V method_56592 a method_56592 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_57052 a method_57052 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/function/Predicate;)V applyTags a method_56591 + p 1 registryAccess + p 2 filter + m (Lnet/minecraft/core/RegistryAccess;Z)V updateTags a method_57053 + p 1 registryAccess + p 2 isMemoryConnection + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Z method_57055 b method_57055 + m ()V +c net/minecraft/client/multiplayer/TransferState fzy net/minecraft/class_9112 + f Ljava/util/Map; cookies a comp_2206 + m ()Ljava/util/Map; cookies a comp_2206 + m (Ljava/util/Map;)V +c net/minecraft/client/multiplayer/chat/ChatListener fzz net/minecraft/class_7594 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_ERROR a field_45950 + f Lnet/minecraft/client/Minecraft; minecraft b field_39779 + f Ljava/util/Deque; delayedMessageQueue c field_39796 + f J messageDelay d field_39797 + f J previousMessageTime e field_39798 + m ()V tick a method_44765 + m (D)V setMessageDelay a method_44766 + p 1 delaySeconds + m (Ljava/util/UUID;)Z isSenderLocalPlayer a method_44738 + p 1 sender + m (Ljava/util/UUID;Lnet/minecraft/network/chat/ChatType$Bound;)V handleChatMessageError a method_53488 + p 1 sender + p 2 boundChatType + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/Component;)V narrateChatMessage a method_44772 + p 1 boundChatType + p 2 message + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Z method_45745 a method_45745 + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z showMessageToPlayer a method_44943 + p 1 boundChatType + p 2 chatMessage + p 3 decoratedServerContent + p 4 gameProfile + p 5 onlyShowSecureChat + p 6 timestamp + m (Lnet/minecraft/network/chat/Component;)Ljava/util/UUID; guessChatUUID a method_44734 + p 1 message + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)V logSystemMessage a method_44735 + p 1 message + p 2 timestamp + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V handleDisguisedChatMessage a method_45746 + p 1 message + p 2 boundChatType + m (Lnet/minecraft/network/chat/Component;Z)V handleSystemMessage a method_44736 + p 1 message + p 2 isOverlay + m (Lnet/minecraft/network/chat/MessageSignature;)Z removeFromDelayedMessageQueue a method_44819 + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/multiplayer/chat/ChatListener$Message;)Z method_45747 a method_45747 + m (Lnet/minecraft/network/chat/MessageSignature;Ljava/util/function/BooleanSupplier;)V handleMessage a method_44818 + p 1 signature + p 2 handler + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/ChatType$Bound;)V handlePlayerChatMessage a method_45748 + p 1 chatMessage + p 2 gameProfile + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/ChatType$Bound;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)V logPlayerMessage a method_44737 + p 1 message + p 2 boundChatType + p 3 gameProfile + p 4 trustLevel + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; evaluateTrustLevel a method_44732 + p 1 chatMessage + p 2 decoratedServerContent + p 3 timestamp + m ()V acceptNextDelayedMessage b method_44769 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/ChatType$Bound;)Z method_53489 b method_53489 + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z method_45749 b method_45749 + m ()J queueSize c method_44944 + m ()V clearQueue d method_44945 + m ()Z willDelayMessages e method_44775 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/multiplayer/chat/ChatListener$Message fzz$a net/minecraft/class_7594$class_7627 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1034 + f Ljava/util/function/BooleanSupplier; handler b comp_1035 + m ()Z accept a method_45750 + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_1034 + m ()Ljava/util/function/BooleanSupplier; handler c comp_1035 + m (Lnet/minecraft/network/chat/MessageSignature;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/client/multiplayer/chat/ChatLog gaa net/minecraft/class_7555 + f [Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; buffer a field_40496 + f I nextId b field_40497 + m ()I start a method_45751 + m (I)Lcom/mojang/serialization/Codec; codec a method_46533 + p 0 size + m (II)[Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; method_46534 a method_46534 + m (ILjava/util/List;)Lcom/mojang/serialization/DataResult; method_46535 a method_46535 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent;)V push a method_44535 + p 1 event + m ()I end b method_45752 + m (I)Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; lookup b method_44532 + p 1 id + m (II)Ljava/lang/String; method_49632 b method_49632 + m ()Ljava/util/List; loggedChatEvents c method_46536 + m (I)I index c method_45753 + p 1 index + m ()I size d method_46537 + m (I)V + p 1 size + m (ILjava/util/List;)V + p 1 size + p 2 events +c net/minecraft/client/multiplayer/chat/ChatTrustLevel gab net/minecraft/class_7595 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; SECURE a field_39780 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; MODIFIED b field_39781 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; NOT_SECURE c field_39782 + f Lcom/mojang/serialization/Codec; CODEC d field_40801 + f Ljava/lang/String; serializedName e field_40802 + f [Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; $VALUES f field_39784 + m ()Z isNotSecure a method_44740 + m (Lnet/minecraft/network/chat/Component;)Z containsModifiedStyle a method_45754 + p 0 chatMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/client/GuiMessageTag; createTag a method_44741 + p 1 chatMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;)Z isModified a method_45755 + p 0 chatMessage + p 1 decoratedServerContent + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; evaluate a method_44742 + p 0 chatMessage + p 1 decoratedServerContent + p 2 timestamp + m (Lnet/minecraft/network/chat/Style;)Z isModifiedStyle a method_45756 + p 0 style + m (Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_45757 a method_45757 + m ()[Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; $values b method_44743 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 serializedName + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatEvent gac net/minecraft/class_7629 + f Lcom/mojang/serialization/Codec; CODEC a field_40803 + m ()Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; type a method_46538 + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatEvent$Type gac$a net/minecraft/class_7629$class_7854 + f Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; PLAYER a field_40804 + f Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; SYSTEM b field_40805 + f Ljava/lang/String; serializedName c field_40806 + f Ljava/util/function/Supplier; codec d field_40807 + f [Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; $VALUES e field_40808 + m ()Lcom/mojang/serialization/MapCodec; codec a method_46539 + m ()Lcom/mojang/serialization/MapCodec; method_46540 b method_46540 + m ()Lcom/mojang/serialization/MapCodec; method_46541 d method_46541 + m ()[Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; $values e method_46542 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 serializedName + p 4 codec + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatMessage gad net/minecraft/class_7557 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player; player a method_44552 + p 0 profile + p 1 message + p 2 trustLevel + m (Ljava/util/UUID;)Z canReport a method_44553 + p 1 uuid + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$System; system a method_44554 + p 0 message + p 1 timestamp + m ()Lnet/minecraft/network/chat/Component; toContentComponent b method_44551 + m ()Lnet/minecraft/network/chat/Component; toNarrationComponent c method_44555 +c net/minecraft/client/multiplayer/chat/LoggedChatMessage$Player gad$a net/minecraft/class_7557$class_7558 + f Lcom/mojang/serialization/MapCodec; CODEC b field_40809 + f Lcom/mojang/authlib/GameProfile; profile c comp_868 + f Lnet/minecraft/network/chat/PlayerChatMessage; message d comp_870 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; trustLevel e comp_905 + f Ljava/time/format/DateTimeFormatter; TIME_FORMATTER f field_39637 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46543 a method_46543 + m ()Lnet/minecraft/network/chat/Component; toHeadingComponent d method_44556 + m ()Ljava/util/UUID; profileId e method_44557 + m ()Lcom/mojang/authlib/GameProfile; profile f comp_868 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; message g comp_870 + m ()Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; trustLevel h comp_905 + m ()Lnet/minecraft/network/chat/Component; getTimeComponent i method_44558 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)V + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatMessage$System gad$b net/minecraft/class_7557$class_7559 + f Lcom/mojang/serialization/MapCodec; CODEC b field_40810 + f Lnet/minecraft/network/chat/Component; message c comp_871 + f Ljava/time/Instant; timeStamp d comp_872 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46544 a method_46544 + m ()Lnet/minecraft/network/chat/Component; message d comp_871 + m ()Ljava/time/Instant; timeStamp e comp_872 + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)V + m ()V +c net/minecraft/client/multiplayer/chat/package-info gae net/minecraft/class_7562 +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender gaf net/minecraft/class_7563 + m ()Z isEnabled a method_44561 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; create a method_44562 + p 0 environment + p 1 userApiService + m (Ljava/util/UUID;Lnet/minecraft/client/multiplayer/chat/report/ReportType;Lcom/mojang/authlib/minecraft/report/AbuseReport;)Ljava/util/concurrent/CompletableFuture; send a method_44563 + p 1 id + p 2 reportType + p 3 report + m ()Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; reportLimits b method_44564 +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$1 gaf$1 net/minecraft/class_7563$1 + f [I $SwitchMap$com$mojang$authlib$exceptions$MinecraftClientException$ErrorType a field_39641 + m ()V +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$SendException gaf$a net/minecraft/class_7563$class_7564 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)V +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$Services gaf$b net/minecraft/class_7563$class_7565 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment a comp_875 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService b comp_876 + f Lnet/minecraft/network/chat/Component; SERVICE_UNAVAILABLE_TEXT c field_39642 + f Lnet/minecraft/network/chat/Component; HTTP_ERROR_TEXT d field_39643 + f Lnet/minecraft/network/chat/Component; JSON_ERROR_TEXT e field_39644 + m (Lcom/mojang/authlib/exceptions/MinecraftClientException;)Lnet/minecraft/network/chat/Component; getErrorDescription a method_44565 + p 1 exception + m (Lcom/mojang/authlib/exceptions/MinecraftClientHttpException;)Lnet/minecraft/network/chat/Component; getHttpErrorDescription a method_44566 + p 1 httpException + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/report/AbuseReport;Lnet/minecraft/client/multiplayer/chat/report/ReportType;)Lcom/mojang/datafixers/util/Unit; method_44567 a method_44567 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment c comp_875 + m ()Lcom/mojang/authlib/minecraft/UserApiService; userApiService d comp_876 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)V + m ()V +c net/minecraft/client/multiplayer/chat/report/BanReason gag net/minecraft/class_8186 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; GENERIC_VIOLATION a field_42891 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; FALSE_REPORTING b field_42892 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HATE_SPEECH c field_42893 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HATE_TERRORISM_NOTORIOUS_FIGURE d field_42894 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HARASSMENT_OR_BULLYING e field_42895 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; DEFAMATION_IMPERSONATION_FALSE_INFORMATION f field_42896 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; DRUGS g field_42897 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; FRAUD h field_42898 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; SPAM_OR_ADVERTISING i field_42899 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; NUDITY_OR_PORNOGRAPHY j field_42900 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; SEXUALLY_INAPPROPRIATE k field_42901 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; EXTREME_VIOLENCE_OR_GORE l field_42902 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; IMMINENT_HARM_TO_PERSON_OR_PROPERTY m field_42903 + f Lnet/minecraft/network/chat/Component; title n field_42904 + f [Lnet/minecraft/client/multiplayer/chat/report/BanReason; $VALUES o field_42905 + m ()Lnet/minecraft/network/chat/Component; title a method_49312 + m (I)Lnet/minecraft/client/multiplayer/chat/report/BanReason; byId a method_49313 + p 0 id + m ()[Lnet/minecraft/client/multiplayer/chat/report/BanReason; $values b method_49314 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ChatReport gah net/minecraft/class_7566 + f Lit/unimi/dsi/fastutil/ints/IntSet; reportedMessages g field_46059 + m ()Lnet/minecraft/client/multiplayer/chat/report/ChatReport; copy a method_44585 + m (ILcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V toggleReported a method_44569 + p 1 id + p 2 limits + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId +c net/minecraft/client/multiplayer/chat/report/ChatReport$Builder gah$a net/minecraft/class_7566$class_8772 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; reportedMessages a method_53597 + m (I)V toggleReported a method_53598 + p 1 id + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;Z)Lcom/mojang/authlib/minecraft/report/ReportChatMessage; buildReportedChatMessage a method_53599 + p 1 chatMessage + p 2 messageReported + m (Ljava/util/List;ILnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)V method_53601 a method_53601 + m (I)Z isReported b method_53603 + p 1 id + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lcom/mojang/authlib/minecraft/report/ReportEvidence; buildEvidence b method_53604 + p 1 reportingContext + m ()Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder; copy d method_53606 + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedProfileId + p 2 limits +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder gai net/minecraft/class_7757 + f I leadingCount a field_40498 + f Ljava/util/List; activeCollectors b field_40499 + m ()Z isActive a method_45758 + m (Lnet/minecraft/client/multiplayer/chat/ChatLog;Lit/unimi/dsi/fastutil/ints/IntCollection;Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Handler;)V collectAllContext a method_45759 + p 1 chatLog + p 2 reportedMessages + p 3 handler + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V trackContext a method_45760 + p 1 lastChainMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z acceptContext b method_45761 + p 1 lastChainMessage + m (I)V + p 1 leadingCount +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Collector gai$a net/minecraft/class_7757$class_7758 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder; field_40500 a field_40500 + f Ljava/util/Set; lastSeenSignatures b field_40501 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastChainMessage c field_40502 + f Z collectingChain d field_40503 + f I count e field_40504 + m ()Z isComplete a method_45762 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z accept a method_45763 + p 1 message + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder;Lnet/minecraft/network/chat/PlayerChatMessage;)V + p 2 lastChainMessage +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Handler gai$b net/minecraft/class_7757$class_7632 +c net/minecraft/client/multiplayer/chat/report/NameReport gaj net/minecraft/class_8773 + f Ljava/lang/String; reportedName g field_46060 + m ()Ljava/lang/String; getReportedName a method_53607 + m ()Lnet/minecraft/client/multiplayer/chat/report/NameReport; copy c method_53608 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/lang/String;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId + p 4 reportedName +c net/minecraft/client/multiplayer/chat/report/NameReport$Builder gaj$a net/minecraft/class_8773$class_8774 + m (Lnet/minecraft/client/multiplayer/chat/report/NameReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Ljava/lang/String;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedProfileId + p 2 reportedName + p 3 limits +c net/minecraft/client/multiplayer/chat/report/Report gak net/minecraft/class_7855 + f Ljava/util/UUID; reportId a field_40813 + f Ljava/time/Instant; createdAt b field_40814 + f Ljava/util/UUID; reportedProfileId c field_40815 + f Ljava/lang/String; comments d field_40817 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason e field_40818 + f Z attested f field_52305 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lnet/minecraft/client/gui/screens/Screen; createScreen a method_53596 + p 1 lastScreen + p 2 reportingContext + m (Ljava/util/UUID;)Z isReportedPlayer a method_46549 + p 1 playerId + m ()Lnet/minecraft/client/multiplayer/chat/report/Report; copy b method_46547 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId +c net/minecraft/client/multiplayer/chat/report/Report$Builder gak$a net/minecraft/class_7855$class_8775 + f Lnet/minecraft/client/multiplayer/chat/report/Report; report a field_46061 + f Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; limits b field_46062 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V setReason a method_53609 + p 1 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lcom/mojang/datafixers/util/Either; build a method_53600 + p 1 reportingContext + m (Ljava/lang/String;)V setComments a method_53610 + p 1 comments + m (Z)V setAttested a method_61155 + p 1 attested + m ()Z hasContent b method_53602 + m ()Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; checkBuildable c method_53605 + m ()Lnet/minecraft/client/multiplayer/chat/report/Report; report e method_53611 + m ()Ljava/util/UUID; reportedProfileId f method_53612 + m ()Ljava/lang/String; comments g method_53613 + m ()Z attested h method_61156 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason i method_53614 + m (Lnet/minecraft/client/multiplayer/chat/report/Report;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits +c net/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason gak$b net/minecraft/class_7855$class_7567 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NO_REASON a field_39655 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NO_REPORTED_MESSAGES b field_39656 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; TOO_MANY_MESSAGES c field_39657 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; COMMENT_TOO_LONG d field_39658 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NOT_ATTESTED e field_52306 + f Lnet/minecraft/network/chat/Component; message f comp_877 + m ()Lnet/minecraft/client/gui/components/Tooltip; tooltip a method_53615 + m ()Lnet/minecraft/network/chat/Component; message b comp_877 + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/client/multiplayer/chat/report/Report$Result gak$c net/minecraft/class_7855$class_7568 + f Ljava/util/UUID; id a comp_878 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; reportType b comp_1910 + f Lcom/mojang/authlib/minecraft/report/AbuseReport; report c comp_879 + m ()Ljava/util/UUID; id a comp_878 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportType; reportType b comp_1910 + m ()Lcom/mojang/authlib/minecraft/report/AbuseReport; report c comp_879 + m (Ljava/util/UUID;Lnet/minecraft/client/multiplayer/chat/report/ReportType;Lcom/mojang/authlib/minecraft/report/AbuseReport;)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment gal net/minecraft/class_7569 + f Ljava/lang/String; clientVersion a comp_880 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server; server b comp_881 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; local a method_44586 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; realm a method_44587 + p 0 realmsServer + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; create a method_44588 + p 0 server + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; thirdParty a method_44589 + p 0 ip + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ClientInfo; clientInfo b method_44590 + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ThirdPartyServerInfo; thirdPartyServerInfo c method_44591 + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$RealmInfo; realmInfo d method_44592 + m ()Ljava/lang/String; clientVersion e comp_880 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server; server f comp_881 + m ()Ljava/lang/String; getClientVersion g method_44593 + m (Ljava/lang/String;Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server;)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server gal$a net/minecraft/class_7569$class_7570 +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server$Realm gal$a$a net/minecraft/class_7569$class_7570$class_7571 + f J realmId a comp_882 + f I slotId b comp_883 + m ()J realmId a comp_882 + m ()I slotId b comp_883 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 realmsServer + m (JI)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server$ThirdParty gal$a$b net/minecraft/class_7569$class_7570$class_7572 + f Ljava/lang/String; ip a comp_884 + m ()Ljava/lang/String; ip a comp_884 + m (Ljava/lang/String;)V +c net/minecraft/client/multiplayer/chat/report/ReportReason gam net/minecraft/class_7573 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; GENERIC a field_46063 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; HATE_SPEECH b field_39659 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; HARASSMENT_OR_BULLYING c field_39664 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; SELF_HARM_OR_SUICIDE d field_39667 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; IMMINENT_HARM e field_39662 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; DEFAMATION_IMPERSONATION_FALSE_INFORMATION f field_39666 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; ALCOHOL_TOBACCO_DRUGS g field_39670 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; CHILD_SEXUAL_EXPLOITATION_OR_ABUSE h field_39661 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; TERRORISM_OR_VIOLENT_EXTREMISM i field_39660 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; NON_CONSENSUAL_INTIMATE_IMAGERY j field_39663 + f Ljava/lang/String; backendName k field_39671 + f Lnet/minecraft/network/chat/Component; title l field_39672 + f Lnet/minecraft/network/chat/Component; description m field_39673 + f [Lnet/minecraft/client/multiplayer/chat/report/ReportReason; $VALUES n field_39674 + m ()Ljava/lang/String; backendName a method_44594 + m ()Lnet/minecraft/network/chat/Component; title b method_44595 + m ()Lnet/minecraft/network/chat/Component; description c method_44596 + m ()[Lnet/minecraft/client/multiplayer/chat/report/ReportReason; $values d method_44597 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ReportType gan net/minecraft/class_8776 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; CHAT a field_46064 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; SKIN b field_46065 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; USERNAME c field_46066 + f Ljava/lang/String; backendName d field_46067 + f [Lnet/minecraft/client/multiplayer/chat/report/ReportType; $VALUES e field_46068 + m ()Ljava/lang/String; backendName a method_53616 + m ()[Lnet/minecraft/client/multiplayer/chat/report/ReportType; $values b method_53617 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ReportingContext gao net/minecraft/class_7574 + f I LOG_CAPACITY a field_39675 + f Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; sender b field_40819 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment c field_40820 + f Lnet/minecraft/client/multiplayer/chat/ChatLog; chatLog d field_40821 + f Lnet/minecraft/client/multiplayer/chat/report/Report; draftReport e field_40822 + m ()Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; sender a method_46550 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/Runnable;Z)V draftReportHandled a method_46552 + p 1 minecraft + p 2 screen + p 3 quitter + p 4 quitToTitle + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/chat/report/Report;Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/Runnable;Z)V method_46551 a method_46551 + m (Lnet/minecraft/client/multiplayer/chat/report/Report;)V setReportDraft a method_46553 + p 1 draftReport + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;)Z matches a method_44598 + p 1 environment + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; create a method_44599 + p 0 environment + p 1 userApiService + m (Ljava/util/UUID;)Z hasDraftReportFor a method_46554 + p 1 uuid + m ()Lnet/minecraft/client/multiplayer/chat/ChatLog; chatLog b method_46555 + m ()Z hasDraftReport c method_46556 + m (Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender;Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lnet/minecraft/client/multiplayer/chat/ChatLog;)V + p 1 sender + p 2 enviroment + p 3 chatLog +c net/minecraft/client/multiplayer/chat/report/SkinReport gap net/minecraft/class_8777 + f Ljava/util/function/Supplier; skinGetter g field_46069 + m ()Ljava/util/function/Supplier; getSkinGetter a method_53618 + m ()Lnet/minecraft/client/multiplayer/chat/report/SkinReport; copy c method_53619 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 1 reportId + p 2 created + p 3 reportedProfileId + p 4 skinGetter +c net/minecraft/client/multiplayer/chat/report/SkinReport$Builder gap$a net/minecraft/class_8777$class_8778 + m (Lnet/minecraft/client/multiplayer/chat/report/SkinReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Ljava/util/function/Supplier;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedPlayerId + p 2 skinGetter + p 3 limits +c net/minecraft/client/multiplayer/chat/report/package-info gaq net/minecraft/class_7575 +c net/minecraft/client/multiplayer/package-info gar net/minecraft/class_6235 +c net/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler gas net/minecraft/class_7202 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; serverVerifiedStates a field_37953 + f I currentSequenceNr b field_37954 + f Z isPredicting c field_37955 + m ()Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; startPredicting a method_41937 + m (ILnet/minecraft/client/multiplayer/ClientLevel;)V endPredictionsUpTo a method_41938 + p 1 sequence + p 2 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/player/LocalPlayer;Ljava/lang/Long;Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState;)Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState; method_41939 a method_41939 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z updateKnownServerState a method_41940 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/player/LocalPlayer;)V retainKnownServerState a method_41941 + p 1 pos + p 2 state + p 3 player + m ()I currentSequence b method_41942 + m ()Z isPredicting c method_41943 + m ()V +c net/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState gas$a net/minecraft/class_7202$class_7203 + f Lnet/minecraft/world/phys/Vec3; playerPos a field_37956 + f I sequence b field_37957 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_37958 + m (I)Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState; setSequence a method_41944 + p 1 sequence + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState a method_41945 + p 1 blockState + m (ILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V + p 1 sequence + p 2 blockState + p 3 playerPos +c net/minecraft/client/multiplayer/prediction/PredictiveAction gat net/minecraft/class_7204 +c net/minecraft/client/multiplayer/prediction/package-info gau net/minecraft/class_7205 +c net/minecraft/client/multiplayer/resolver/AddressCheck gav net/minecraft/class_6394 + m ()Lnet/minecraft/client/multiplayer/resolver/AddressCheck; createFromService a method_37097 + m (Lnet/minecraft/client/multiplayer/resolver/ResolvedServerAddress;)Z isAllowed a method_37098 + p 1 resolvedServerAddress + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Z isAllowed a method_37099 + p 1 serverAddress +c net/minecraft/client/multiplayer/resolver/AddressCheck$1 gav$1 net/minecraft/class_6394$1 + f Lcom/google/common/collect/ImmutableList; val$blockLists a field_33846 + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37100 a method_37100 + m (Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37101 a method_37101 + m (Lcom/google/common/collect/ImmutableList;)V +c net/minecraft/client/multiplayer/resolver/ResolvedServerAddress gaw net/minecraft/class_6368 + m ()Ljava/lang/String; getHostName a method_36898 + m (Ljava/net/InetSocketAddress;)Lnet/minecraft/client/multiplayer/resolver/ResolvedServerAddress; from a method_36899 + p 0 inetSocketAddress + m ()Ljava/lang/String; getHostIp b method_36900 + m ()I getPort c method_36901 + m ()Ljava/net/InetSocketAddress; asInetSocketAddress d method_36902 +c net/minecraft/client/multiplayer/resolver/ResolvedServerAddress$1 gaw$1 net/minecraft/class_6368$1 + f Ljava/net/InetSocketAddress; val$address a field_33742 + m (Ljava/net/InetSocketAddress;)V +c net/minecraft/client/multiplayer/resolver/ServerAddress gax net/minecraft/class_639 + f Lorg/slf4j/Logger; LOGGER a field_33416 + f Lcom/google/common/net/HostAndPort; hostAndPort b field_33417 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; INVALID c field_33418 + m ()Ljava/lang/String; getHost a method_2952 + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/resolver/ServerAddress; parseString a method_2950 + p 0 ip + m ()I getPort b method_2954 + m (Ljava/lang/String;)Z isValidAddress b method_36224 + p 0 hostAndPort + m (Ljava/lang/String;)I parsePort c method_2951 + p 0 port + m (Ljava/lang/String;I)V + p 1 host + p 2 port + m (Lcom/google/common/net/HostAndPort;)V + p 1 hostAndPort + m ()V +c net/minecraft/client/multiplayer/resolver/ServerAddressResolver gay net/minecraft/class_6369 + f Lorg/slf4j/Logger; LOGGER a field_33743 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver; SYSTEM b field_33744 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36903 a method_36903 + m ()V +c net/minecraft/client/multiplayer/resolver/ServerNameResolver gaz net/minecraft/class_6370 + f Lnet/minecraft/client/multiplayer/resolver/ServerNameResolver; DEFAULT a field_33745 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver; resolver b field_33746 + f Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; redirectHandler c field_33747 + f Lnet/minecraft/client/multiplayer/resolver/AddressCheck; addressCheck d field_33847 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; resolveAddress a method_36907 + p 1 serverAddress + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver;Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler;Lnet/minecraft/client/multiplayer/resolver/AddressCheck;)V + p 1 resolver + p 2 redirectHandler + p 3 addressCheck + m ()V +c net/minecraft/client/multiplayer/resolver/ServerRedirectHandler gba net/minecraft/class_6371 + f Lorg/slf4j/Logger; LOGGER a field_33749 + f Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; EMPTY b field_33750 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36910 a method_36910 + m (Ljavax/naming/directory/DirContext;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36911 a method_36911 + m ()Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; createDnsSrvRedirectHandler createDnsSrvRedirectHandler method_36909 + m ()V +c net/minecraft/client/multiplayer/resolver/package-info gbb net/minecraft/class_6372 +c net/minecraft/client/package-info gbc net/minecraft/class_6236 +c net/minecraft/client/particle/AshParticle gbd net/minecraft/class_4792 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/AshParticle$Provider gbd$a net/minecraft/class_4792$class_4793 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_22235 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24463 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/AttackSweepParticle gbe net/minecraft/class_645 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17781 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/AttackSweepParticle$Provider gbe$a net/minecraft/class_645$class_646 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17782 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3006 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BaseAshSmokeParticle gbf net/minecraft/class_4794 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_22237 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDFFFDDDFLnet/minecraft/client/particle/SpriteSet;FIFZ)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSeedMultiplier + p 9 ySpeedMultiplier + p 10 zSpeedMultiplier + p 11 xSpeed + p 13 ySpeed + p 15 zSpeed + p 17 quadSizeMultiplier + p 18 sprites + p 19 rColMultiplier + p 20 lifetime + p 21 gravity + p 22 hasPhysics +c net/minecraft/client/particle/BlockMarker gbg net/minecraft/class_6734 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 state +c net/minecraft/client/particle/BlockMarker$Provider gbg$a net/minecraft/class_6734$class_6735 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_39196 + m ()V +c net/minecraft/client/particle/BreakingItemParticle gbh net/minecraft/class_647 + f F uo a field_17783 + f F vo b field_17784 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 stack + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 stack +c net/minecraft/client/particle/BreakingItemParticle$CobwebProvider gbh$a net/minecraft/class_647$class_9478 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58747 + m ()V +c net/minecraft/client/particle/BreakingItemParticle$Provider gbh$b net/minecraft/class_647$class_648 + m (Lnet/minecraft/core/particles/ItemParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3007 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BreakingItemParticle$SlimeProvider gbh$c net/minecraft/class_647$class_649 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3008 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BreakingItemParticle$SnowballProvider gbh$d net/minecraft/class_647$class_650 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3009 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BubbleColumnUpParticle gbi net/minecraft/class_653 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/BubbleColumnUpParticle$Provider gbi$a net/minecraft/class_653$class_654 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17786 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3011 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BubbleParticle gbj net/minecraft/class_655 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/BubbleParticle$Provider gbj$a net/minecraft/class_655$class_656 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17785 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3012 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BubblePopParticle gbk net/minecraft/class_661 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17787 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/BubblePopParticle$Provider gbk$a net/minecraft/class_661$class_662 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17788 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3016 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CampfireSmokeParticle gbl net/minecraft/class_3937 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDZ)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 signal +c net/minecraft/client/particle/CampfireSmokeParticle$CosyProvider gbl$a net/minecraft/class_3937$class_3938 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_18290 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_17579 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CampfireSmokeParticle$SignalProvider gbl$b net/minecraft/class_3937$class_3995 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17789 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18820 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CherryParticle gbm net/minecraft/class_8253 + f I CURVE_ENDPOINT_TIME F field_43366 + f F FALL_ACC G field_43367 + f F WIND_BIG H field_43368 + f F rotSpeed I field_43369 + f F particleRandom J field_43370 + f F spinAcceleration K field_43371 + f F ACCELERATION_SCALE a field_43372 + f I INITIAL_LIFETIME b field_43373 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 spriteSet +c net/minecraft/client/particle/CritParticle gbn net/minecraft/class_657 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/CritParticle$DamageIndicatorProvider gbn$a net/minecraft/class_657$class_658 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17790 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3013 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CritParticle$MagicProvider gbn$b net/minecraft/class_657$class_659 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17791 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3014 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CritParticle$Provider gbn$c net/minecraft/class_657$class_3939 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_18291 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_17580 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DragonBreathParticle gbo net/minecraft/class_666 + f F COLOR_MIN_RED F field_32648 + f F COLOR_MIN_GREEN G field_32649 + f F COLOR_MIN_BLUE H field_32650 + f F COLOR_MAX_RED I field_32651 + f F COLOR_MAX_GREEN J field_32652 + f F COLOR_MAX_BLUE K field_32653 + f Z hasHitGround L field_3792 + f Lnet/minecraft/client/particle/SpriteSet; sprites M field_17793 + f I COLOR_MIN a field_32654 + f I COLOR_MAX b field_32655 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/DragonBreathParticle$Provider gbo$a net/minecraft/class_666$class_667 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17794 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3019 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DripParticle gbp net/minecraft/class_663 + f Z isGlowing a field_22437 + f Lnet/minecraft/world/level/material/Fluid; type b field_3789 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createWaterHangParticle a method_49316 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createWaterFallParticle b method_49317 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaHangParticle c method_49318 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaFallParticle d method_49319 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaLandParticle e method_49320 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyHangParticle f method_49324 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Lnet/minecraft/world/level/material/Fluid; getType g method_32791 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyFallParticle g method_49325 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V preMoveUpdate h method_18821 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyLandParticle h method_49326 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V postMoveUpdate i method_18822 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneWaterHangParticle i method_49327 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneWaterFallParticle j method_49328 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneLavaHangParticle k method_49329 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneLavaFallParticle l method_49330 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createNectarFallParticle m method_49331 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createSporeBlossomFallParticle n method_49332 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearHangParticle o method_49333 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearFallParticle p method_49334 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearLandParticle q method_49335 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type +c net/minecraft/client/particle/DripParticle$CoolingDripHangParticle gbp$a net/minecraft/class_663$class_4082 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DripParticle$DripHangParticle gbp$b net/minecraft/class_663$class_4084 + f Lnet/minecraft/core/particles/ParticleOptions; fallingParticle b field_18293 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 fallingParticle +c net/minecraft/client/particle/DripParticle$DripLandParticle gbp$c net/minecraft/class_663$class_4085 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V +c net/minecraft/client/particle/DripParticle$DripstoneFallAndLandParticle gbp$d net/minecraft/class_663$class_5692 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DripParticle$FallAndLandParticle gbp$e net/minecraft/class_663$class_4083 + f Lnet/minecraft/core/particles/ParticleOptions; landParticle b field_18292 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 landParticle +c net/minecraft/client/particle/DripParticle$FallingParticle gbp$f net/minecraft/class_663$class_4497 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;I)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 lifetime +c net/minecraft/client/particle/DripParticle$HoneyFallAndLandParticle gbp$g net/minecraft/class_663$class_4498 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DustColorTransitionParticle gbq net/minecraft/class_5734 + f Lorg/joml/Vector3f; fromColor a field_28244 + f Lorg/joml/Vector3f; toColor b field_28245 + m (Lorg/joml/Vector3f;F)Lorg/joml/Vector3f; randomizeColor a method_33073 + p 1 vector + p 2 multiplier + m (F)V lerpColors f method_33074 + p 1 partialTick + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/DustColorTransitionOptions;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustColorTransitionParticle$Provider gbq$a net/minecraft/class_5734$class_5735 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28246 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33075 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DustParticle gbr net/minecraft/class_671 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/DustParticleOptions;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustParticle$Provider gbr$a net/minecraft/class_671$class_672 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17802 + m (Lnet/minecraft/core/particles/DustParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3022 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DustParticleBase gbs net/minecraft/class_5736 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28247 + m (FF)F randomizeColor a method_33076 + p 1 coordMultiplier + p 2 multiplier + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/ScalableParticleOptionsBase;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustPlumeParticle gbt net/minecraft/class_8845 + f I COLOR_RGB24 a field_46725 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/DustPlumeParticle$Provider gbt$a net/minecraft/class_8845$class_8846 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_46726 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_54387 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/EndRodParticle gbu net/minecraft/class_675 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/EndRodParticle$Provider gbu$a net/minecraft/class_675$class_676 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17805 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3024 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/ExplodeParticle gbv net/minecraft/class_673 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17806 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/ExplodeParticle$Provider gbv$a net/minecraft/class_673$class_674 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17807 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3023 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FallingDustParticle gbw net/minecraft/class_682 + f F rotSpeed a field_3809 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_17808 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDFFFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 9 ySpeed + p 10 zSpeed + p 11 sprites +c net/minecraft/client/particle/FallingDustParticle$Provider gbw$a net/minecraft/class_682$class_683 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17809 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3033 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles gbx net/minecraft/class_677 + m ()V +c net/minecraft/client/particle/FireworkParticles$1 gbx$1 net/minecraft/class_677$1 + f [I $SwitchMap$net$minecraft$world$item$component$FireworkExplosion$Shape a field_3797 + m ()V +c net/minecraft/client/particle/FireworkParticles$FlashProvider gbx$a net/minecraft/class_677$class_3997 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17810 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18121 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles$OverlayParticle gbx$b net/minecraft/class_677$class_678 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/FireworkParticles$SparkParticle gbx$c net/minecraft/class_677$class_680 + f Z twinkle F field_3803 + f Lnet/minecraft/client/particle/ParticleEngine; engine G field_3798 + f F fadeR H field_3801 + f F fadeG I field_3800 + f F fadeB J field_3799 + f Z hasFade K field_3802 + f Z trail b field_3804 + m (Z)V setTrail a method_3027 + p 1 trail + m (Z)V setTwinkle b method_3026 + p 1 twinkle + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/ParticleEngine;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 engine + p 15 sprites +c net/minecraft/client/particle/FireworkParticles$SparkProvider gbx$d net/minecraft/class_677$class_679 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17811 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3025 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles$Starter gbx$e net/minecraft/class_677$class_681 + f I life D field_3808 + f Lnet/minecraft/client/particle/ParticleEngine; engine E field_3805 + f Ljava/util/List; explosions F field_3806 + f Z twinkleDelay G field_3807 + f [[D CREEPER_PARTICLE_COORDS a field_49565 + f [[D STAR_PARTICLE_COORDS b field_49566 + m (DDDDDDLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticle a method_3030 + p 1 x + p 3 y + p 5 z + p 7 xSpeed + p 9 ySpeed + p 11 zSpeed + p 13 colors + p 14 fadeColors + p 15 trail + p 16 twinkle + m (DILit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticleBall a method_3031 + p 1 speed + p 3 radius + p 4 colors + p 5 fadeColors + p 6 trail + p 7 twinkle + m (D[[DLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZZ)V createParticleShape a method_3028 + p 1 speed + p 3 coords + p 4 colors + p 5 fadeColors + p 6 trail + p 7 twinkle + p 8 isCreeper + m (Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticleBurst a method_3032 + p 1 colors + p 2 fadeColors + p 3 trail + p 4 twinkle + m ()Z isFarAwayFromCamera c method_3029 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/ParticleEngine;Ljava/util/List;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xd + p 10 yd + p 12 zd + p 14 engine + p 15 explosions + m ()V +c net/minecraft/client/particle/FlameParticle gby net/minecraft/class_687 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/FlameParticle$Provider gby$a net/minecraft/class_687$class_688 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17812 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3036 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FlameParticle$SmallFlameProvider gby$b net/minecraft/class_687$class_5613 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_27736 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_32131 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FlyStraightTowardsParticle gbz net/minecraft/class_9479 + f D zStart F field_50224 + f I startColor G field_50225 + f I endColor H field_50226 + f D xStart a field_50227 + f D yStart b field_50228 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDII)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 startColor + p 15 endColor +c net/minecraft/client/particle/FlyStraightTowardsParticle$OminousSpawnProvider gbz$a net/minecraft/class_9479$class_9480 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_50229 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58748 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle gca net/minecraft/class_668 + f D zStart F field_3793 + f Z isGlowing G field_48938 + f Lnet/minecraft/client/particle/Particle$LifetimeAlpha; lifetimeAlpha H field_48939 + f D xStart a field_3795 + f D yStart b field_3794 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDZLnet/minecraft/client/particle/Particle$LifetimeAlpha;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 isGlowing + p 15 lifetimeAlpha +c net/minecraft/client/particle/FlyTowardsPositionParticle$EnchantProvider gca$a net/minecraft/class_668$class_670 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17803 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3021 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle$NautilusProvider gca$b net/minecraft/class_668$class_669 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17804 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3020 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle$VaultConnectionProvider gca$c net/minecraft/class_668$class_9212 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_48940 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_56832 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/GlowParticle gcb net/minecraft/class_5786 + f Lnet/minecraft/util/RandomSource; RANDOM a field_28457 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_28458 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites + m ()V +c net/minecraft/client/particle/GlowParticle$ElectricSparkProvider gcb$a net/minecraft/class_5786$class_5956 + f D SPEED_FACTOR a field_29570 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29571 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34748 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$GlowSquidProvider gcb$b net/minecraft/class_5786$class_5957 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_29572 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34749 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$ScrapeProvider gcb$c net/minecraft/class_5786$class_5958 + f D SPEED_FACTOR a field_29573 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29574 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34750 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$WaxOffProvider gcb$d net/minecraft/class_5786$class_5959 + f D SPEED_FACTOR a field_29575 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29576 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34751 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$WaxOnProvider gcb$e net/minecraft/class_5786$class_5960 + f D SPEED_FACTOR a field_29577 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29578 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34752 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustParticle gcc net/minecraft/class_8977 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47454 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 sprites +c net/minecraft/client/particle/GustParticle$Provider gcc$a net/minecraft/class_8977$class_8978 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47455 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55243 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustParticle$SmallProvider gcc$b net/minecraft/class_8977$class_9481 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_50230 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58749 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustSeedParticle gcd net/minecraft/class_8979 + f D scale a field_49126 + f I tickDelayInBetween b field_49127 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDII)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 scale + p 10 lifetime + p 11 tickDelayInBetween +c net/minecraft/client/particle/GustSeedParticle$Provider gcd$a net/minecraft/class_8979$class_8980 + f D scale a field_49128 + f I lifetime b field_49129 + f I tickDelayInBetween c field_49130 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55244 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (DII)V + p 1 scale + p 3 lifetime + p 4 tickDelayInBetween +c net/minecraft/client/particle/HeartParticle gce net/minecraft/class_684 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/HeartParticle$AngryVillagerProvider gce$a net/minecraft/class_684$class_685 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17813 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3034 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HeartParticle$Provider gce$b net/minecraft/class_684$class_686 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17814 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3035 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HugeExplosionParticle gcf net/minecraft/class_691 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17815 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/HugeExplosionParticle$Provider gcf$a net/minecraft/class_691$class_692 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17816 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3038 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HugeExplosionSeedParticle gcg net/minecraft/class_689 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/HugeExplosionSeedParticle$Provider gcg$a net/minecraft/class_689$class_690 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3037 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/ItemPickupParticle gch net/minecraft/class_693 + f Lnet/minecraft/world/entity/Entity; itemEntity D field_3823 + f Lnet/minecraft/world/entity/Entity; target E field_3821 + f I life F field_3826 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher G field_3824 + f D targetX H field_47684 + f D targetY I field_47685 + f D targetZ J field_47686 + f D targetXOld K field_47687 + f D targetYOld L field_47688 + f D targetZOld M field_47689 + f I LIFE_TIME a field_32656 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers b field_20944 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getSafeCopy a method_29358 + p 1 entity + m ()V updatePosition c method_55617 + m ()V saveOldPosition d method_55618 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 entityRenderDispatcher + p 2 buffers + p 3 level + p 4 itemEntity + p 5 target + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 entityRenderDispatcher + p 2 buffers + p 3 level + p 4 itemEntity + p 5 target + p 6 speedVector +c net/minecraft/client/particle/LargeSmokeParticle gci net/minecraft/class_696 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/LargeSmokeParticle$Provider gci$a net/minecraft/class_696$class_697 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17817 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3040 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/LavaParticle gcj net/minecraft/class_694 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/LavaParticle$Provider gcj$a net/minecraft/class_694$class_695 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17818 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3039 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/MobAppearanceParticle gck net/minecraft/class_700 + f Lnet/minecraft/client/model/Model; model a field_21793 + f Lnet/minecraft/client/renderer/RenderType; renderType b field_21792 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/MobAppearanceParticle$Provider gck$a net/minecraft/class_700$class_701 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3042 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/NoRenderParticle gcl net/minecraft/class_3998 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/NoteParticle gcm net/minecraft/class_698 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 color +c net/minecraft/client/particle/NoteParticle$Provider gcm$a net/minecraft/class_698$class_699 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17819 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3041 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/Particle gcn net/minecraft/class_703 + f F oRoll A field_3857 + f F friction B field_28786 + f Z speedUpWhenYMotionIsBlocked C field_28787 + f Lnet/minecraft/world/phys/AABB; bb D field_3872 + f Z stoppedByCollision E field_21507 + f Lnet/minecraft/world/phys/AABB; INITIAL_AABB a field_3860 + f D MAXIMUM_COLLISION_VELOCITY_SQUARED b field_36193 + f Lnet/minecraft/client/multiplayer/ClientLevel; level c field_3851 + f D xo d field_3858 + f D yo e field_3838 + f D zo f field_3856 + f D x g field_3874 + f D y h field_3854 + f D z i field_3871 + f D xd j field_3852 + f D yd k field_3869 + f D zd l field_3850 + f Z onGround m field_3845 + f Z hasPhysics n field_3862 + f Z removed o field_3843 + f F bbWidth p field_3849 + f F bbHeight q field_3867 + f Lnet/minecraft/util/RandomSource; random r field_3840 + f I age s field_3866 + f I lifetime t field_3847 + f F gravity u field_3844 + f F rCol v field_3861 + f F gCol w field_3842 + f F bCol x field_3859 + f F alpha y field_3841 + f F roll z field_3839 + m ()V tick a method_3070 + m (DDD)V move a method_3069 + p 1 x + p 3 y + p 5 z + m (F)I getLightColor a method_3068 + p 1 partialTick + m (FFF)V setColor a method_3084 + p 1 particleRed + p 2 particleGreen + p 3 particleBlue + m (I)V setLifetime a method_3077 + p 1 particleLifeTime + m (Lnet/minecraft/world/phys/AABB;)V setBoundingBox a method_3067 + p 1 bb + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/Camera;F)V render a method_3074 + p 1 buffer + p 2 camera + p 3 partialTicks + m ()Lnet/minecraft/client/particle/ParticleRenderType; getRenderType b method_18122 + m (DDD)V setParticleSpeed b method_34753 + p 1 xd + p 3 yd + p 5 zd + m (FF)V setSize b method_3080 + p 1 width + p 2 height + m (DDD)V setPos c method_3063 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/client/particle/Particle; setPower c method_3075 + p 1 multiplier + m (F)Lnet/minecraft/client/particle/Particle; scale d method_3087 + p 1 scale + m (F)V setAlpha e method_3083 + c Sets the particle alpha (float) + p 1 alpha + m ()I getLifetime j method_3082 + m ()V remove k method_3085 + c Called to indicate that this particle effect has expired and should be discontinued. + m ()V setLocationFromBoundingbox l method_3072 + m ()Z isAlive m method_3086 + c Returns {@code true} if this effect has not yet expired. "I feel happy! I feel happy!" + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox n method_3064 + m ()Ljava/util/Optional; getParticleGroup o method_34019 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V +c net/minecraft/client/particle/Particle$LifetimeAlpha gcn$a net/minecraft/class_703$class_9213 + f Lnet/minecraft/client/particle/Particle$LifetimeAlpha; ALWAYS_OPAQUE a field_48941 + f F startAlpha b comp_2321 + f F endAlpha c comp_2322 + f F startAtNormalizedAge d comp_2323 + f F endAtNormalizedAge e comp_2324 + m ()Z isOpaque a method_56833 + m (IIF)F currentAlphaForAge a method_56834 + p 1 age + p 2 lifetime + p 3 partialTick + m ()F startAlpha b comp_2321 + m ()F endAlpha c comp_2322 + m ()F startAtNormalizedAge d comp_2323 + m ()F endAtNormalizedAge e comp_2324 + m (FFFF)V + m ()V +c net/minecraft/client/particle/ParticleDescription gco net/minecraft/class_4089 + f Ljava/util/List; textures a field_18299 + m ()Ljava/util/List; getTextures a method_18826 + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_18827 a method_18827 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/particle/ParticleDescription; fromJson a method_18828 + p 0 json + m (Ljava/util/List;)V + p 1 textures +c net/minecraft/client/particle/ParticleEngine gcp net/minecraft/class_702 + f Lnet/minecraft/client/multiplayer/ClientLevel; level a field_3834 + f Lorg/slf4j/Logger; LOGGER b field_40505 + f Lnet/minecraft/resources/FileToIdConverter; PARTICLE_LISTER c field_40506 + f Lnet/minecraft/resources/ResourceLocation; PARTICLES_ATLAS_INFO d field_41385 + f I MAX_PARTICLES_PER_LAYER e field_32657 + f Ljava/util/List; RENDER_ORDER f field_17820 + f Ljava/util/Map; particles g field_3830 + f Ljava/util/Queue; trackingEmitters h field_3837 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager i field_3831 + f Lnet/minecraft/util/RandomSource; random j field_3832 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; providers k field_3835 + f Ljava/util/Queue; particlesToAdd l field_3836 + f Ljava/util/Map; spriteSets m field_18300 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; textureAtlas n field_18301 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; trackedParticleCounts o field_29072 + m ()V close a method_18829 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/Optional; loadParticleDescription a method_18836 + p 1 registryName + p 2 resource + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45771 a method_45771 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)V method_45766 a method_45766 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;)V createTrackingEmitter a method_3061 + p 1 entity + p 2 particleData + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;I)V createTrackingEmitter a method_3051 + p 1 entity + p 2 data + p 3 lifetime + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_3045 + p 1 level + m (Lnet/minecraft/client/particle/Particle;)V add a method_3058 + p 1 effect + m (Lnet/minecraft/client/particle/ParticleProvider$Sprite;Lnet/minecraft/client/particle/SpriteSet;)Lnet/minecraft/client/particle/ParticleProvider; method_49336 a method_49336 + m (Lnet/minecraft/client/particle/ParticleProvider$Sprite;Lnet/minecraft/client/particle/SpriteSet;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; method_49337 a method_49337 + m (Lnet/minecraft/client/particle/ParticleRenderType;)Ljava/util/Queue; method_18125 a method_18125 + m (Lnet/minecraft/client/particle/ParticleRenderType;Ljava/util/Queue;)V method_18126 a method_18126 + m (Lnet/minecraft/client/particle/SpriteSet;)Lnet/minecraft/client/particle/ParticleProvider; method_49915 a method_49915 + m (Lnet/minecraft/client/particle/SpriteSet;Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; method_49916 a method_49916 + m (Lnet/minecraft/client/renderer/LightTexture;Lnet/minecraft/client/Camera;F)V render a method_3049 + p 1 lightTexture + p 2 camera + p 3 partialTick + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;Ljava/util/Set;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/particle/ParticleEngine$1ParticleDefinition;)V method_45767 a method_45767 + m (Ljava/util/Collection;)V tickParticleList a method_3048 + p 1 particles + m (Ljava/util/List;Ljava/util/concurrent/Executor;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_45768 a method_45768 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45772 a method_45772 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V destroy a method_3046 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;DDDDDD)V method_34020 a method_34020 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V crack a method_3054 + c Adds block hit particles for the specified block + p 1 pos + p 2 side + m (Lnet/minecraft/core/particles/ParticleGroup;)Z hasSpaceInParticleLimit a method_34021 + p 1 group + m (Lnet/minecraft/core/particles/ParticleGroup;I)V updateCount a method_34022 + p 1 group + p 2 count + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3056 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleEngine$SpriteParticleRegistration;)V register a method_18834 + p 1 particleType + p 2 particleMetaFactory + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider$Sprite;)V register a method_49338 + p 1 particleType + p 2 sprite + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider;)V register a method_3043 + p 1 particleType + p 2 particleFactory + m ()V tick b method_3057 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Lnet/minecraft/client/particle/ParticleEngine$1ParticleDefinition; method_45770 b method_45770 + m (Lnet/minecraft/client/particle/Particle;)V tickParticle b method_3059 + p 1 particle + m (Lnet/minecraft/core/particles/ParticleGroup;)V method_34023 b method_34023 + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)Lnet/minecraft/client/particle/Particle; makeParticle b method_3055 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Ljava/lang/String; countParticles d method_3052 + m ()V registerProviders e method_3062 + m ()V clearParticles f method_48015 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 level + p 2 textureManager + m ()V +c net/minecraft/client/particle/ParticleEngine$1ParticleDefinition gcp$a net/minecraft/class_702$class_7759 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1036 + f Ljava/util/Optional; sprites b comp_1037 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1036 + m ()Ljava/util/Optional; sprites b comp_1037 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V +c net/minecraft/client/particle/ParticleEngine$MutableSpriteSet gcp$b net/minecraft/class_702$class_4090 + f Ljava/util/List; sprites a field_18303 + m (Ljava/util/List;)V rebind a method_18838 + p 1 sprites + m ()V +c net/minecraft/client/particle/ParticleEngine$SpriteParticleRegistration gcp$c net/minecraft/class_702$class_4091 +c net/minecraft/client/particle/ParticleProvider gcq net/minecraft/class_707 + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle createParticle method_3090 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed +c net/minecraft/client/particle/ParticleProvider$Sprite gcq$a net/minecraft/class_707$class_8187 +c net/minecraft/client/particle/ParticleRenderType gcr net/minecraft/class_3999 + f Lnet/minecraft/client/particle/ParticleRenderType; TERRAIN_SHEET a field_17827 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_OPAQUE b field_17828 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_TRANSLUCENT c field_17829 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_LIT d field_17830 + f Lnet/minecraft/client/particle/ParticleRenderType; CUSTOM e field_17831 + f Lnet/minecraft/client/particle/ParticleRenderType; NO_RENDER f field_17832 + m (Lcom/mojang/blaze3d/vertex/Tesselator;Lnet/minecraft/client/renderer/texture/TextureManager;)Lcom/mojang/blaze3d/vertex/BufferBuilder; begin a method_18130 + p 1 tesselator + p 2 textureManager + m ()V +c net/minecraft/client/particle/ParticleRenderType$1 gcr$1 net/minecraft/class_3999$1 + m ()V +c net/minecraft/client/particle/ParticleRenderType$2 gcr$2 net/minecraft/class_3999$2 + m ()V +c net/minecraft/client/particle/ParticleRenderType$3 gcr$3 net/minecraft/class_3999$3 + m ()V +c net/minecraft/client/particle/ParticleRenderType$4 gcr$4 net/minecraft/class_3999$4 + m ()V +c net/minecraft/client/particle/ParticleRenderType$5 gcr$5 net/minecraft/class_3999$5 + m ()V +c net/minecraft/client/particle/ParticleRenderType$6 gcr$6 net/minecraft/class_3999$6 + m ()V +c net/minecraft/client/particle/PlayerCloudParticle gcs net/minecraft/class_704 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17862 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/PlayerCloudParticle$Provider gcs$a net/minecraft/class_704$class_705 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17863 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3088 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/PlayerCloudParticle$SneezeProvider gcs$b net/minecraft/class_704$class_706 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17864 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3089 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/PortalParticle gct net/minecraft/class_709 + f D zStart F field_3884 + f D xStart a field_3886 + f D yStart b field_3885 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/PortalParticle$Provider gct$a net/minecraft/class_709$class_710 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17865 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3094 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/ReversePortalParticle gcu net/minecraft/class_4974 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/ReversePortalParticle$ReversePortalProvider gcu$a net/minecraft/class_4974$class_4975 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_23188 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_26268 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/RisingParticle gcv net/minecraft/class_4955 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V +c net/minecraft/client/particle/SculkChargeParticle gcw net/minecraft/class_7206 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_37959 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprite +c net/minecraft/client/particle/SculkChargeParticle$Provider gcw$a net/minecraft/class_7206$class_7207 + f Lnet/minecraft/client/particle/SpriteSet; sprite a comp_620 + m ()Lnet/minecraft/client/particle/SpriteSet; sprite a comp_620 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41946 + m (Lnet/minecraft/client/particle/SpriteSet;)V +c net/minecraft/client/particle/SculkChargePopParticle gcx net/minecraft/class_7208 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_37960 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprite +c net/minecraft/client/particle/SculkChargePopParticle$Provider gcx$a net/minecraft/class_7208$class_7209 + f Lnet/minecraft/client/particle/SpriteSet; sprite a comp_621 + m ()Lnet/minecraft/client/particle/SpriteSet; sprite a comp_621 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41947 + m (Lnet/minecraft/client/particle/SpriteSet;)V +c net/minecraft/client/particle/ShriekParticle gcy net/minecraft/class_7281 + f F MAGICAL_X_ROT a field_38332 + f I delay b field_38333 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDI)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 delay +c net/minecraft/client/particle/ShriekParticle$Provider gcy$a net/minecraft/class_7281$class_7282 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_38336 + m (Lnet/minecraft/core/particles/ShriekParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_42587 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SimpleAnimatedParticle gcz net/minecraft/class_708 + f F fadeG F field_3877 + f F fadeB G field_3876 + f Z hasFade H field_3880 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17866 + f F fadeR b field_3878 + m (I)V setColor b method_3093 + p 1 color + m (I)V setFadeColor c method_3092 + c Sets a color for the particle to drift toward (20% closer each tick, never actually getting very close) + p 1 rgb + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;F)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 sprites + p 9 gravity +c net/minecraft/client/particle/SingleQuadParticle gda net/minecraft/class_3940 + f F quadSize D field_17867 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/Camera;Lorg/joml/Quaternionf;F)V renderRotatedQuad a method_60373 + p 1 buffer + p 2 camera + p 3 quaternion + p 4 partialTicks + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Quaternionf;FFFF)V renderRotatedQuad a method_60374 + p 1 buffer + p 2 quaternion + p 3 x + p 4 y + p 5 z + p 6 partialTicks + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Quaternionf;FFFFFFFFI)V renderVertex a method_60375 + p 1 buffer + p 2 quaternion + p 3 x + p 4 y + p 5 z + p 6 xOffset + p 7 yOffset + p 8 quadSize + p 9 u + p 10 v + p 11 packedLight + m (F)F getQuadSize b method_18132 + p 1 scaleFactor + m ()F getU0 c method_18133 + m ()F getU1 d method_18134 + m ()F getV0 e method_18135 + m ()F getV1 f method_18136 + m ()Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; getFacingCameraMode p method_55245 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/SingleQuadParticle$FacingCameraMode gda$a net/minecraft/class_3940$class_8981 + f Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; LOOKAT_XYZ a field_47457 + f Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; LOOKAT_Y b field_47458 + m (Lorg/joml/Quaternionf;Lnet/minecraft/client/Camera;F)V method_55246 a method_55246 + m (Lorg/joml/Quaternionf;Lnet/minecraft/client/Camera;F)V method_55247 b method_55247 + m ()V +c net/minecraft/client/particle/SmokeParticle gdb net/minecraft/class_717 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/SmokeParticle$Provider gdb$a net/minecraft/class_717$class_718 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17869 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3101 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SnowflakeParticle gdc net/minecraft/class_5685 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28003 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SnowflakeParticle$Provider gdc$a net/minecraft/class_5685$class_5686 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28004 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_32690 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SonicBoomParticle gdd net/minecraft/class_7452 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/SonicBoomParticle$Provider gdd$a net/minecraft/class_7452$class_7453 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_39196 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_43785 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SoulParticle gde net/minecraft/class_4956 + f Z isGlowing a field_37961 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_23091 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SoulParticle$EmissiveProvider gde$a net/minecraft/class_4956$class_7210 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_37962 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41948 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SoulParticle$Provider gde$b net/minecraft/class_4956$class_4957 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_23092 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_25994 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle gdf net/minecraft/class_711 + f F originalAlpha F field_51440 + f Lnet/minecraft/util/RandomSource; RANDOM a field_3888 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_17870 + m ()Z isCloseToScopingPlayer g method_37102 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites + m ()V +c net/minecraft/client/particle/SpellParticle$InstantProvider gdf$a net/minecraft/class_711$class_713 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17872 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3097 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle$MobEffectProvider gdf$b net/minecraft/class_711$class_714 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17873 + m (Lnet/minecraft/core/particles/ColorParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3098 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SpellParticle$Provider gdf$c net/minecraft/class_711$class_715 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17874 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3099 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle$WitchProvider gdf$d net/minecraft/class_711$class_716 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17875 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3100 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpitParticle gdg net/minecraft/class_721 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SpitParticle$Provider gdg$a net/minecraft/class_721$class_722 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17876 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3103 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SplashParticle gdh net/minecraft/class_719 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V +c net/minecraft/client/particle/SplashParticle$Provider gdh$a net/minecraft/class_719$class_720 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17877 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3102 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpriteSet gdi net/minecraft/class_4002 + m (II)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18138 + p 1 age + p 2 lifetime + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18139 + p 1 random +c net/minecraft/client/particle/SquidInkParticle gdj net/minecraft/class_725 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDILnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 packedColor + p 15 sprites +c net/minecraft/client/particle/SquidInkParticle$GlowInkProvider gdj$a net/minecraft/class_725$class_5788 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28460 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33427 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SquidInkParticle$Provider gdj$b net/minecraft/class_725$class_726 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17878 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3105 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle gdk net/minecraft/class_723 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDD)V + p 1 level + p 2 sprites + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDDDDD)V + p 1 level + p 2 sprites + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed +c net/minecraft/client/particle/SuspendedParticle$CrimsonSporeProvider gdk$a net/minecraft/class_723$class_4795 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22238 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24464 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider gdk$b net/minecraft/class_723$class_5877 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_29073 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34024 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider$1 gdk$b$1 net/minecraft/class_723$class_5877$1 + m (Lnet/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDDDDD)V +c net/minecraft/client/particle/SuspendedParticle$UnderwaterProvider gdk$c net/minecraft/class_723$class_4796 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22239 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24465 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$WarpedSporeProvider gdk$d net/minecraft/class_723$class_4797 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22240 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24466 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle gdl net/minecraft/class_729 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/SuspendedTownParticle$ComposterFillProvider gdl$a net/minecraft/class_729$class_3991 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17880 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18044 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$DolphinSpeedProvider gdl$b net/minecraft/class_729$class_730 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17881 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3110 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$EggCrackProvider gdl$c net/minecraft/class_729$class_8254 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_43374 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_49917 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SuspendedTownParticle$HappyVillagerProvider gdl$d net/minecraft/class_729$class_731 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17882 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3111 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$Provider gdl$e net/minecraft/class_729$class_732 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17883 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3112 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/TerrainParticle gdm net/minecraft/class_727 + f F vo F field_17885 + f Lnet/minecraft/core/BlockPos; pos a field_3891 + f F uo b field_17884 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TerrainParticle; createTerrainParticle a method_58750 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 state + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 state + p 15 pos +c net/minecraft/client/particle/TerrainParticle$DustPillarProvider gdm$a net/minecraft/class_727$class_9482 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58751 + m ()V +c net/minecraft/client/particle/TerrainParticle$Provider gdm$b net/minecraft/class_727$class_728 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3109 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/TextureSheetParticle gdn net/minecraft/class_4003 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite E field_17886 + m (Lnet/minecraft/client/particle/SpriteSet;)V pickSprite a method_18140 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V setSprite a method_18141 + p 1 sprite + m (Lnet/minecraft/client/particle/SpriteSet;)V setSpriteFromAge b method_18142 + p 1 sprite + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/TotemParticle gdo net/minecraft/class_734 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/TotemParticle$Provider gdo$a net/minecraft/class_734$class_735 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17887 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3113 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/TrackingEmitter gdp net/minecraft/class_733 + f I lifeTime D field_3895 + f Lnet/minecraft/core/particles/ParticleOptions; particleType E field_3893 + f Lnet/minecraft/world/entity/Entity; entity a field_3894 + f I life b field_3896 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 entity + p 3 particleType + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;I)V + p 1 level + p 2 entity + p 3 particleType + p 4 lifetime + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;ILnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 entity + p 3 particleType + p 4 lifetime + p 5 speedVector +c net/minecraft/client/particle/TrialSpawnerDetectionParticle gdq net/minecraft/class_8982 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47459 + f I BASE_LIFETIME b field_47460 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sizeMultiplier + p 15 sprites +c net/minecraft/client/particle/TrialSpawnerDetectionParticle$Provider gdq$a net/minecraft/class_8982$class_8983 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47461 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55248 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/VibrationSignalParticle gdr net/minecraft/class_5737 + f F rotO F field_28248 + f F pitch G field_40507 + f F pitchO H field_40508 + f Lnet/minecraft/world/level/gameevent/PositionSource; target a field_28249 + f F rot b field_28250 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 target + p 9 lifetime +c net/minecraft/client/particle/VibrationSignalParticle$Provider gdr$a net/minecraft/class_5737$class_5738 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_28251 + m (Lnet/minecraft/core/particles/VibrationParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33080 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WakeParticle gds net/minecraft/class_738 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17888 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/WakeParticle$Provider gds$a net/minecraft/class_738$class_739 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17889 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3115 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WaterCurrentDownParticle gdt net/minecraft/class_736 + f F angle a field_3897 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/WaterCurrentDownParticle$Provider gdt$a net/minecraft/class_736$class_737 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17890 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3114 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WaterDropParticle gdu net/minecraft/class_740 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/WaterDropParticle$Provider gdu$a net/minecraft/class_740$class_741 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17891 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3116 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WhiteAshParticle gdv net/minecraft/class_5165 + f I COLOR_RGB24 a field_32658 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/WhiteAshParticle$Provider gdv$a net/minecraft/class_5165$class_5166 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_23936 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_27150 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WhiteSmokeParticle gdw net/minecraft/class_8899 + f I COLOR_RGB24 a field_46898 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/WhiteSmokeParticle$Provider gdw$a net/minecraft/class_8899$class_8900 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_46899 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_54635 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/package-info gdx net/minecraft/class_6240 +c net/minecraft/client/player/AbstractClientPlayer gdy net/minecraft/class_742 + f Lnet/minecraft/world/phys/Vec3; deltaMovementOnPreviousTick b field_42906 + f F elytraRotX c field_3900 + f F elytraRotY d field_3899 + f F elytraRotZ e field_3898 + f Lnet/minecraft/client/multiplayer/ClientLevel; clientLevel f field_17892 + f Lnet/minecraft/client/multiplayer/PlayerInfo; playerInfo g field_3901 + m (F)Lnet/minecraft/world/phys/Vec3; getDeltaMovementLerped G method_49339 + p 1 patialTick + m ()Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_3123 + m ()Lnet/minecraft/client/resources/PlayerSkin; getSkin b method_52814 + m ()F getFieldOfViewModifier c method_3118 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lcom/mojang/authlib/GameProfile;)V + p 1 clientLevel + p 2 gameProfile +c net/minecraft/client/player/Input gdz net/minecraft/class_744 + f F leftImpulse a field_3907 + f F forwardImpulse b field_3905 + f Z up c field_3910 + f Z down d field_3909 + f Z left e field_3908 + f Z right f field_3906 + f Z jumping g field_3904 + f Z shiftKeyDown h field_3903 + m ()Lnet/minecraft/world/phys/Vec2; getMoveVector a method_3128 + m (ZF)V tick a method_3129 + p 1 isSneaking + p 2 sneakingSpeedMultiplier + m ()Z hasForwardImpulse b method_20622 + m ()V +c net/minecraft/client/player/KeyboardInput gea net/minecraft/class_743 + f Lnet/minecraft/client/Options; options i field_3902 + m (ZZ)F calculateImpulse a method_40218 + p 0 input + p 1 otherInput + m (Lnet/minecraft/client/Options;)V + p 1 options +c net/minecraft/client/player/LocalPlayer geb net/minecraft/class_746 + f Lnet/minecraft/client/Minecraft; minecraft cA field_3937 + f I sprintTriggerTime cB field_3935 + f F yBob cD field_3932 + f F xBob cE field_3916 + f F yBobO cF field_3931 + f F xBobO cG field_3914 + f F spinningEffectIntensity cH field_44911 + f F oSpinningEffectIntensity cI field_44912 + f I POSITION_REMINDER_INTERVAL cJ field_32671 + f I WATER_VISION_MAX_TIME cK field_32672 + f I WATER_VISION_QUICK_TIME cL field_32673 + f F WATER_VISION_QUICK_PERCENT cM field_32674 + f D SUFFOCATING_COLLISION_CHECK_SCALE cN field_32675 + f D MINOR_COLLISION_ANGLE_THRESHOLD_RADIAN cO field_36194 + f Lnet/minecraft/stats/StatsCounter; stats cP field_3928 + f Lnet/minecraft/client/ClientRecipeBook; recipeBook cQ field_3930 + f Ljava/util/List; ambientSoundHandlers cR field_3933 + f I permissionLevel cS field_3912 + f D xLast cT field_3926 + c The last X position which was transmitted to the server, used to determine when the X position changes and needs to be re-transmitted + f D yLast1 cU field_3940 + c The last Y position which was transmitted to the server, used to determine when the Y position changes and needs to be re-transmitted + f D zLast cV field_3924 + c The last Z position which was transmitted to the server, used to determine when the Z position changes and needs to be re-transmitted + f F yRotLast cW field_3941 + c The last yaw value which was transmitted to the server, used to determine when the yaw changes and needs to be re-transmitted + f F xRotLast cX field_3925 + c The last pitch value which was transmitted to the server, used to determine when the pitch changes and needs to be re-transmitted + f Z lastOnGround cY field_3920 + f Z crouching cZ field_23093 + f Lnet/minecraft/client/player/Input; input cz field_3913 + f Z wasShiftKeyDown da field_3936 + f Z wasSprinting db field_3919 + c the last sprinting state sent to the server + f I positionReminder dc field_3923 + c Reset to 0 every time position is sent to the server, used to send periodic updates every 20 ticks even when the player is not moving. + f Z flashOnSetHealth dd field_3918 + f I jumpRidingTicks de field_3938 + f F jumpRidingScale df field_3922 + f Z startedUsingItem dg field_3915 + f Lnet/minecraft/world/InteractionHand; usingItemHand dh field_3945 + f Z handsBusy di field_3942 + f Z autoJumpEnabled dj field_3927 + f I autoJumpTime dk field_3934 + f Z wasFallFlying dl field_3939 + f I waterVisionTime dm field_3917 + f Z showDeathScreen dn field_20663 + f Z doLimitedCrafting do field_46188 + f Lorg/slf4j/Logger; LOGGER g field_39078 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection h field_3944 + m ()Lnet/minecraft/world/level/block/Portal$Transition; getActivePortalLocalTransition A method_60886 + m ()Z isHandsBusy B method_3144 + m ()Z isAutoJumpEnabled C method_3149 + m ()F getWaterVision D method_3140 + m ()V sendPosition E method_3136 + c Called every tick when the player is on foot. Performs all the things that normally happen during movement. + m ()V sendIsSprintingIfNeeded F method_46742 + m ()Z canAutoJump H method_22119 + m (F)V hurtTo H method_3138 + c Updates health locally. + p 1 health + m ()Z isMoving I method_22120 + m ()Z canStartSprinting J method_48300 + m ()Z hasEnoughImpulseToStartSprinting L method_20623 + m ()Z hasEnoughFoodToStartSprinting N method_46743 + m (FII)V setExperienceValues a method_3145 + c Sets the current XP, total XP, and level number. + p 1 currentXP + p 2 maxXP + p 3 level + m (I)V setPermissionLevel a method_3147 + p 1 permissionLevel + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V removeRecipeHighlight a method_3141 + p 1 recipe + m (Lnet/minecraft/world/level/GameType;)V onGameModeChanged a method_51889 + p 1 gameMode + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/util/stream/Stream; method_3139 a method_3139 + m (Z)Z drop a method_7290 + p 1 fullStack + m (Z)V setShowDeathScreen b method_22420 + p 1 show + m (DD)V moveTowardsClosestSpace c method_30673 + p 1 x + p 3 z + m (Lnet/minecraft/core/BlockPos;)Z suffocatesAt c method_30674 + p 1 pos + m ()F getCurrentMood d method_26269 + m (Lnet/minecraft/world/entity/Entity;)Z vehicleCanSprint d method_48301 + p 1 vehicle + m ()V clientSideCloseContainer e method_3137 + m (FF)V updateAutoJump g method_3148 + p 1 movementX + p 2 movementZ + m ()V sendRidingJump h method_3133 + m ()V sendOpenInventory i method_3132 + m ()Lnet/minecraft/stats/StatsCounter; getStats j method_3143 + m ()Lnet/minecraft/client/ClientRecipeBook; getRecipeBook m method_3130 + m ()Z shouldShowDeathScreen o method_22419 + m ()Z getDoLimitedCrafting p method_53847 + m ()Lnet/minecraft/world/entity/PlayerRideableJumping; jumpableVehicle q method_45773 + m ()F getJumpRidingScale v method_3151 + m ()Z isMovingSlowly w method_20303 + m ()Z isControlledCamera x method_3134 + m (Z)V setDoLimitedCrafting x method_53848 + p 1 doLimitedCrafting + m ()V resetPos y method_33689 + m (Z)V handleConfusionTransitionEffect y method_60887 + p 1 useConfusion + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;ZZ)V + p 1 minecraft + p 2 clientLevel + p 3 connection + p 4 stats + p 5 recipeBook + p 6 wasShiftKeyDown + p 7 wasSprinting + m ()V +c net/minecraft/client/player/RemotePlayer gec net/minecraft/class_745 + f Lnet/minecraft/world/phys/Vec3; lerpDeltaMovement g field_42907 + f I lerpDeltaMovementSteps h field_42908 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lcom/mojang/authlib/GameProfile;)V + p 1 clientLevel + p 2 gameProfile +c net/minecraft/client/player/inventory/Hotbar ged net/minecraft/class_748 + f Lcom/mojang/serialization/Codec; CODEC a field_48942 + f Lorg/slf4j/Logger; LOGGER b field_48943 + f I SIZE c field_48944 + f Lcom/mojang/serialization/DynamicOps; DEFAULT_OPS d field_48945 + f Lcom/mojang/serialization/Dynamic; EMPTY_STACK e field_48946 + f Ljava/util/List; items f field_48947 + m ()Z isEmpty a method_56835 + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/core/RegistryAccess;)V storeFrom a method_56836 + p 1 inventory + p 2 registryAccess + m (Lcom/mojang/serialization/Dynamic;)Z isEmpty a method_56837 + p 0 dynamic + m (Lnet/minecraft/client/player/inventory/Hotbar;)Ljava/util/List; method_56838 a method_56838 + m (Ljava/lang/String;)V method_56841 a method_56841 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_56842 a method_56842 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/List; load a method_56839 + p 1 registries + m (Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/item/ItemStack; method_56840 a method_56840 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/Dynamic; method_56843 a method_56843 + m (Ljava/lang/String;)V method_56844 b method_56844 + m (Ljava/util/List;)V + p 1 items + m ()V + m ()V +c net/minecraft/client/player/inventory/package-info gee net/minecraft/class_6241 +c net/minecraft/client/player/package-info gef net/minecraft/class_6242 +c net/minecraft/client/profiling/ClientMetricsSamplersProvider geg net/minecraft/class_6412 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer a field_33959 + f Ljava/util/Set; samplers b field_33960 + f Lnet/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter; samplerFactory c field_33961 + m ()V registerStaticSamplers a method_37309 + m (Ljava/util/function/LongSupplier;Lnet/minecraft/client/renderer/LevelRenderer;)V + p 1 timeSource + p 2 levelRenderer +c net/minecraft/client/profiling/package-info geh net/minecraft/class_6244 +c net/minecraft/client/quickplay/QuickPlay gei net/minecraft/class_8496 + f Lnet/minecraft/network/chat/Component; ERROR_TITLE a field_44554 + f Lnet/minecraft/network/chat/Component; INVALID_IDENTIFIER b field_44555 + f Lnet/minecraft/network/chat/Component; REALM_CONNECT c field_44556 + f Lnet/minecraft/network/chat/Component; REALM_PERMISSION d field_44557 + f Lnet/minecraft/network/chat/Component; TO_TITLE e field_44558 + f Lnet/minecraft/network/chat/Component; TO_WORLD_LIST f field_44559 + f Lnet/minecraft/network/chat/Component; TO_REALMS_LIST g field_44560 + m (JLcom/mojang/realmsclient/dto/RealmsServer;)Z method_51258 a method_51258 + m (Lnet/minecraft/client/Minecraft;)V method_54636 a method_54636 + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/realmsclient/client/RealmsClient;Ljava/lang/String;)V joinRealmsWorld a method_51259 + p 0 minecraft + p 1 realmsClient + p 2 serverId + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/main/GameConfig$QuickPlayData;Lcom/mojang/realmsclient/client/RealmsClient;)V connect a method_51260 + p 0 minecraft + p 1 quickPlayData + p 2 realmsClient + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V joinSingleplayerWorld a method_51261 + p 0 minecraft + p 1 levelName + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V joinMultiplayerWorld b method_51263 + p 0 minecraft + p 1 ip + m ()V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog gej net/minecraft/class_8497 + f Lnet/minecraft/client/quickplay/QuickPlayLog; INACTIVE a field_44561 + f Lorg/slf4j/Logger; LOGGER b field_44562 + f Lcom/google/gson/Gson; GSON c field_44563 + f Ljava/nio/file/Path; path d field_44564 + f Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; worldData e field_44565 + m (Lcom/google/gson/JsonElement;)V method_51264 a method_51264 + m (Lnet/minecraft/client/Minecraft;)V log a method_51265 + p 1 minecraft + m (Lnet/minecraft/client/quickplay/QuickPlayLog$Type;Ljava/lang/String;Ljava/lang/String;)V setWorldData a method_51266 + p 1 type + p 2 id + p 3 name + m (Ljava/lang/String;)Lnet/minecraft/client/quickplay/QuickPlayLog; of a method_51267 + p 0 path + m (Lnet/minecraft/client/Minecraft;)V method_51268 b method_51268 + m (Ljava/lang/String;)V + p 1 path + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$1 gej$1 net/minecraft/class_8497$1 + m (Ljava/lang/String;)V +c net/minecraft/client/quickplay/QuickPlayLog$QuickPlayEntry gej$a net/minecraft/class_8497$class_8498 + f Lcom/mojang/serialization/Codec; CODEC a field_44566 + f Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; quickPlayWorld b comp_1480 + f Ljava/time/Instant; lastPlayedTime c comp_1481 + f Lnet/minecraft/world/level/GameType; gamemode d comp_1482 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; quickPlayWorld a comp_1480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51269 a method_51269 + m ()Ljava/time/Instant; lastPlayedTime b comp_1481 + m ()Lnet/minecraft/world/level/GameType; gamemode c comp_1482 + m (Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld;Ljava/time/Instant;Lnet/minecraft/world/level/GameType;)V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld gej$b net/minecraft/class_8497$class_8499 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_44567 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; type b comp_1483 + f Ljava/lang/String; id c comp_1484 + f Ljava/lang/String; name d comp_1485 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog$Type; type a comp_1483 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51270 a method_51270 + m ()Ljava/lang/String; id b comp_1484 + m ()Ljava/lang/String; name c comp_1485 + m (Lnet/minecraft/client/quickplay/QuickPlayLog$Type;Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$Type gej$c net/minecraft/class_8497$class_8500 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; SINGLEPLAYER a field_44568 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; MULTIPLAYER b field_44569 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; REALMS c field_44570 + f Lcom/mojang/serialization/Codec; CODEC d field_44571 + f Ljava/lang/String; name e field_44572 + f [Lnet/minecraft/client/quickplay/QuickPlayLog$Type; $VALUES f field_44573 + m ()[Lnet/minecraft/client/quickplay/QuickPlayLog$Type; $values a method_51271 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/quickplay/package-info gek net/minecraft/class_8501 +c net/minecraft/client/renderer/BiomeColors gel net/minecraft/class_1163 + f Lnet/minecraft/world/level/ColorResolver; GRASS_COLOR_RESOLVER a field_5665 + f Lnet/minecraft/world/level/ColorResolver; FOLIAGE_COLOR_RESOLVER b field_5664 + f Lnet/minecraft/world/level/ColorResolver; WATER_COLOR_RESOLVER c field_5666 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageGrassColor a method_4962 + p 0 level + p 1 blockPos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I getAverageColor a method_4965 + p 0 level + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/world/level/biome/Biome;DD)I method_23790 a method_23790 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageFoliageColor b method_4966 + p 0 level + p 1 blockPos + m (Lnet/minecraft/world/level/biome/Biome;DD)I method_23791 b method_23791 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageWaterColor c method_4961 + p 0 level + p 1 blockPos + m ()V + m ()V +c net/minecraft/client/renderer/BlockEntityWithoutLevelRenderer gem net/minecraft/class_756 + f [Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; SHULKER_BOXES a field_3981 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; DEFAULT_SHULKER_BOX b field_3984 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; chest c field_3976 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; trappedChest d field_3978 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; enderChest e field_3977 + f Lnet/minecraft/world/level/block/entity/BannerBlockEntity; banner f field_3983 + f Lnet/minecraft/world/level/block/entity/BedBlockEntity; bed g field_3982 + f Lnet/minecraft/world/level/block/entity/ConduitBlockEntity; conduit h field_3979 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity; decoratedPot i field_42909 + f Lnet/minecraft/client/model/ShieldModel; shieldModel j field_3980 + f Lnet/minecraft/client/model/TridentModel; tridentModel k field_3985 + f Ljava/util/Map; skullModels l field_27737 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher m field_27738 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModelSet n field_27739 + m (I)[Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; method_3165 a method_3165 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; method_32132 a method_32132 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V renderByItem a method_3166 + p 1 stack + p 2 displayContext + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ResolvableProfile;)V method_57795 a method_57795 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 blockEntityRenderDispatcher + p 2 entityModelSet + m ()V +c net/minecraft/client/renderer/CubeMap gen net/minecraft/class_751 + f I SIDES a field_32680 + f [Lnet/minecraft/resources/ResourceLocation; images b field_3952 + m (Lnet/minecraft/client/Minecraft;FFF)V render a method_3156 + p 1 mc + p 2 pitch + p 3 yaw + p 4 alpha + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preload a method_18143 + p 1 texMngr + p 2 backgroundExecutor + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 baseImageLocation +c net/minecraft/client/renderer/DimensionSpecialEffects geo net/minecraft/class_5294 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; EFFECTS a field_24609 + f [F sunriseCol b field_24610 + f F cloudLevel c field_24611 + f Z hasGround d field_24612 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; skyType e field_25637 + f Z forceBrightLightmap f field_24613 + f Z constantAmbientLight g field_25638 + m ()F getCloudHeight a method_28108 + m (FF)[F getSunriseColor a method_28109 + p 1 timeOfDay + p 2 partialTicks + m (II)Z isFoggyAt a method_28110 + p 1 x + p 2 y + m (Lnet/minecraft/world/level/dimension/DimensionType;)Lnet/minecraft/client/renderer/DimensionSpecialEffects; forType a method_28111 + p 0 dimensionType + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; getBrightnessDependentFogColor a method_28112 + p 1 fogColor + p 2 brightness + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap;)V method_29092 a method_29092 + m ()Z hasGround b method_28113 + m ()Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; skyType c method_29992 + m ()Z forceBrightLightmap d method_28114 + m ()Z constantAmbientLight e method_29993 + m (FZLnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType;ZZ)V + p 1 cloudLevel + p 2 hasGround + p 3 skyType + p 4 forceBrightLightmap + p 5 constantAmbientLight + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$EndEffects geo$a net/minecraft/class_5294$class_5295 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$NetherEffects geo$b net/minecraft/class_5294$class_5296 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$OverworldEffects geo$c net/minecraft/class_5294$class_5297 + f I CLOUD_LEVEL a field_32681 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$SkyType geo$d net/minecraft/class_5294$class_5401 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; NONE a field_25639 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; NORMAL b field_25640 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; END c field_25641 + f [Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; $VALUES d field_25642 + m ()[Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; $values a method_36912 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/EffectInstance gep net/minecraft/class_280 + f Ljava/lang/String; EFFECT_SHADER_PATH a field_32682 + f Lorg/slf4j/Logger; LOGGER b field_1514 + f Lcom/mojang/blaze3d/shaders/AbstractUniform; DUMMY_UNIFORM c field_1520 + f Z ALWAYS_REAPPLY d field_32683 + f Lnet/minecraft/client/renderer/EffectInstance; lastAppliedEffect e field_1512 + f I lastProgramId f field_1505 + f Ljava/util/Map; samplerMap g field_1516 + f Ljava/util/List; samplerNames h field_1503 + f Ljava/util/List; samplerLocations i field_1506 + f Ljava/util/List; uniforms j field_1515 + f Ljava/util/List; uniformLocations k field_1507 + f Ljava/util/Map; uniformMap l field_1510 + f I programId m field_1521 + f Ljava/lang/String; name n field_1509 + f Z dirty o field_1511 + f Lcom/mojang/blaze3d/shaders/BlendMode; blend p field_1517 + f Ljava/util/List; attributes q field_1518 + f Ljava/util/List; attributeNames r field_1504 + f Lcom/mojang/blaze3d/shaders/EffectProgram; vertexProgram s field_1508 + f Lcom/mojang/blaze3d/shaders/EffectProgram; fragmentProgram t field_1519 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/EffectProgram; getOrCreate a method_16036 + p 0 resourceProvider + p 1 type + p 2 name + m (Lcom/google/gson/JsonElement;)V parseSamplerNode a method_1276 + p 1 json + m (Lcom/google/gson/JsonObject;)Lcom/mojang/blaze3d/shaders/BlendMode; parseBlendNode a method_16035 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Uniform; getUniform a method_1271 + p 1 name + m (Ljava/lang/String;Ljava/util/function/IntSupplier;)V setSampler a method_1269 + p 1 name + p 2 textureId + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_1272 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/AbstractUniform; safeGetUniform b method_1275 + p 1 name + m ()V clear f method_1273 + m ()V apply g method_1277 + m ()Ljava/lang/String; getName h method_35763 + m ()V updateLocations i method_1268 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;)V + p 1 resourceProvider + p 2 name + m ()V +c net/minecraft/client/renderer/FaceInfo geq net/minecraft/class_753 + f Lnet/minecraft/client/renderer/FaceInfo; DOWN a field_3965 + f Lnet/minecraft/client/renderer/FaceInfo; UP b field_3960 + f Lnet/minecraft/client/renderer/FaceInfo; NORTH c field_3962 + f Lnet/minecraft/client/renderer/FaceInfo; SOUTH d field_3963 + f Lnet/minecraft/client/renderer/FaceInfo; WEST e field_3966 + f Lnet/minecraft/client/renderer/FaceInfo; EAST f field_3961 + f [Lnet/minecraft/client/renderer/FaceInfo; BY_FACING g field_3958 + f [Lnet/minecraft/client/renderer/FaceInfo$VertexInfo; infos h field_3959 + f [Lnet/minecraft/client/renderer/FaceInfo; $VALUES i field_3964 + m ()[Lnet/minecraft/client/renderer/FaceInfo; $values a method_36913 + m (I)Lnet/minecraft/client/renderer/FaceInfo$VertexInfo; getVertexInfo a method_3162 + p 1 index + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/FaceInfo; fromFacing a method_3163 + p 0 facing + m ([Lnet/minecraft/client/renderer/FaceInfo;)V method_3161 a method_3161 + m (Ljava/lang/String;I[Lnet/minecraft/client/renderer/FaceInfo$VertexInfo;)V + p 3 infos + m ()V +c net/minecraft/client/renderer/FaceInfo$Constants geq$a net/minecraft/class_753$class_754 + f I MAX_Z a field_3972 + f I MAX_Y b field_3971 + f I MAX_X c field_3970 + f I MIN_Z d field_3969 + f I MIN_Y e field_3968 + f I MIN_X f field_3967 + m ()V + m ()V +c net/minecraft/client/renderer/FaceInfo$VertexInfo geq$b net/minecraft/class_753$class_755 + f I xFace a field_3975 + f I yFace b field_3974 + f I zFace c field_3973 + m (III)V + p 1 xFace + p 2 yFace + p 3 zFace +c net/minecraft/client/renderer/FogRenderer ger net/minecraft/class_758 + f F BIOME_FOG_TRANSITION_TIME a field_32684 + f I WATER_FOG_DISTANCE b field_32685 + f Ljava/util/List; MOB_EFFECT_FOG c field_38338 + f F fogRed d field_4034 + f F fogGreen e field_4033 + f F fogBlue f field_4032 + f I targetBiomeFog g field_4031 + f I previousBiomeFog h field_4041 + f J biomeChangedTime i field_4042 + m ()V setupNoFog a method_23792 + m (Lnet/minecraft/world/entity/Entity;F)Lnet/minecraft/client/renderer/FogRenderer$MobEffectFogFunction; getPriorityFogFunction a method_42588 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/client/renderer/FogRenderer$MobEffectFogFunction;)Z method_42589 a method_42589 + m (Lnet/minecraft/client/Camera;FLnet/minecraft/client/multiplayer/ClientLevel;IF)V setupColor a method_3210 + p 0 activeRenderInfo + p 1 partialTicks + p 2 level + p 3 renderDistanceChunks + p 4 bossColorModifier + m (Lnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/FogRenderer$FogMode;FZF)V setupFog a method_3211 + p 0 camera + p 1 fogMode + p 2 farPlaneDistance + p 3 shouldCreateFog + p 4 partialTick + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/level/biome/BiomeManager;FIII)Lnet/minecraft/world/phys/Vec3; method_24873 a method_24873 + m ()V levelFogColor b method_3212 + m ()V + m ()V +c net/minecraft/client/renderer/FogRenderer$BlindnessFogFunction ger$a net/minecraft/class_758$class_7283 + m ()V +c net/minecraft/client/renderer/FogRenderer$DarknessFogFunction ger$b net/minecraft/class_758$class_7284 + m ()V +c net/minecraft/client/renderer/FogRenderer$FogData ger$c net/minecraft/class_758$class_7285 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; mode a field_38339 + f F start b field_38340 + f F end c field_38341 + f Lcom/mojang/blaze3d/shaders/FogShape; shape d field_38342 + m (Lnet/minecraft/client/renderer/FogRenderer$FogMode;)V + p 1 mode +c net/minecraft/client/renderer/FogRenderer$FogMode ger$d net/minecraft/class_758$class_4596 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; FOG_SKY a field_20945 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; FOG_TERRAIN b field_20946 + f [Lnet/minecraft/client/renderer/FogRenderer$FogMode; $VALUES c field_20947 + m ()[Lnet/minecraft/client/renderer/FogRenderer$FogMode; $values a method_36914 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/FogRenderer$MobEffectFogFunction ger$e net/minecraft/class_758$class_7286 + m ()Lnet/minecraft/core/Holder; getMobEffect a method_42590 + m (Lnet/minecraft/world/entity/LivingEntity;F)Z isEnabled a method_42593 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;FF)F getModifiedVoidDarkness a method_42592 + p 1 entity + p 2 effectInstance + p 4 partialTick + m (Lnet/minecraft/client/renderer/FogRenderer$FogData;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;FF)V setupFog a method_42591 + p 1 fogData + p 2 entity + p 3 effectInstance + p 4 farPlaneDistance +c net/minecraft/client/renderer/GameRenderer ges net/minecraft/class_757 + f Lnet/minecraft/client/renderer/LightTexture; lightTexture A field_4028 + f Lnet/minecraft/client/renderer/texture/OverlayTexture; overlayTexture B field_20949 + f Z panoramicMode C field_4001 + f F zoom D field_4005 + f F zoomX E field_3988 + f F zoomY F field_4004 + f Lnet/minecraft/world/item/ItemStack; itemActivationItem G field_4006 + f I itemActivationTicks H field_4007 + f F itemActivationOffX I field_4029 + f F itemActivationOffY J field_4003 + f Lnet/minecraft/client/renderer/PostChain; postEffect K field_4024 + f Lnet/minecraft/client/renderer/PostChain; blurEffect L field_49567 + f Z effectActive M field_4013 + f Lnet/minecraft/client/Camera; mainCamera N field_18765 + f Ljava/util/Map; shaders O field_29350 + f Lnet/minecraft/client/renderer/ShaderInstance; positionShader P field_29351 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorShader Q field_29352 + f Lnet/minecraft/client/renderer/ShaderInstance; positionTexShader R field_29354 + f Lnet/minecraft/client/renderer/ShaderInstance; positionTexColorShader S field_29355 + f Lnet/minecraft/client/renderer/ShaderInstance; particleShader T field_29358 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorLightmapShader U field_29359 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorTexLightmapShader V field_29360 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeSolidShader W field_29363 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCutoutMippedShader X field_29364 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCutoutShader Y field_29365 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTranslucentShader Z field_29366 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintDirectShader aA field_29402 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityGlintShader aB field_29367 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityGlintDirectShader aC field_29368 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextShader aD field_29369 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextBackgroundShader aE field_42515 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextIntensityShader aF field_33626 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextSeeThroughShader aG field_29370 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextBackgroundSeeThroughShader aH field_42516 + f I MAX_BLUR_RADIUS a field_49904 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextIntensitySeeThroughShader aI field_33627 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLightningShader aJ field_29371 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTripwireShader aK field_29372 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEndPortalShader aL field_29373 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEndGatewayShader aM field_29374 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCloudsShader aN field_48948 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLinesShader aO field_29375 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCrumblingShader aP field_29376 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiShader aQ field_44810 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiOverlayShader aR field_44811 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiTextHighlightShader aS field_44812 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiGhostRecipeOverlayShader aT field_44813 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTranslucentMovingBlockShader aa field_29377 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorCutoutNoCullShader ab field_29379 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntitySolidShader ac field_29380 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutShader ad field_29381 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutNoCullShader ae field_29382 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutNoCullZOffsetShader af field_29383 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeItemEntityTranslucentCullShader ag field_29384 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentCullShader ah field_29385 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentShader ai field_29386 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentEmissiveShader aj field_38343 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntitySmoothCutoutShader ak field_29387 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeBeaconBeamShader al field_29388 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityDecalShader am field_29389 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityNoOutlineShader an field_29390 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityShadowShader ao field_29391 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityAlphaShader ap field_29392 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEyesShader aq field_29393 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEnergySwirlShader ar field_29394 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeBreezeWindShader as field_47462 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLeashShader at field_29395 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeWaterMaskShader au field_29396 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeOutlineShader av field_29397 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorGlintShader aw field_29398 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorEntityGlintShader ax field_29399 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintTranslucentShader ay field_29400 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintShader az field_29401 + f F PROJECTION_Z_NEAR b field_32686 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer c field_4012 + f I ITEM_ACTIVATION_ANIMATION_LENGTH d field_32687 + f Lnet/minecraft/client/renderer/ShaderInstance; blitShader e field_29403 + f Lnet/minecraft/resources/ResourceLocation; NAUSEA_LOCATION f field_26730 + f Lnet/minecraft/resources/ResourceLocation; BLUR_LOCATION g field_49568 + f Lorg/slf4j/Logger; LOGGER h field_3993 + f Z DEPTH_BUFFER_DEBUG i field_32688 + f F GUI_Z_NEAR j field_44940 + f Lnet/minecraft/client/Minecraft; minecraft k field_4015 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager l field_4018 + f Lnet/minecraft/util/RandomSource; random m field_3994 + f F renderDistance n field_4025 + f Lnet/minecraft/client/gui/MapRenderer; mapRenderer o field_4026 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers p field_20948 + f I confusionAnimationTick q field_47130 + f F fov r field_4019 + f F oldFov s field_3999 + f F darkenWorldAmount t field_4002 + f F darkenWorldAmountO u field_3997 + f Z renderHand v field_3992 + f Z renderBlockOutline w field_4009 + f J lastScreenshotAttempt x field_4017 + f Z hasWorldScreenshot y field_34055 + f J lastActiveTime z field_3998 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorCutoutNoCullShader A method_34501 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36536 A method_36536 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntitySolidShader B method_34502 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36537 B method_36537 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutShader C method_34503 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36538 C method_36538 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutNoCullShader D method_34504 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36539 D method_36539 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutNoCullZOffsetShader E method_34505 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36540 E method_36540 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeItemEntityTranslucentCullShader F method_34506 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36541 F method_36541 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentCullShader G method_34507 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36486 G method_36486 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentShader H method_34508 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36487 H method_36487 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentEmissiveShader I method_42595 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_42594 I method_42594 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntitySmoothCutoutShader J method_34509 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36488 J method_36488 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeBeaconBeamShader K method_34510 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36489 K method_36489 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityDecalShader L method_34511 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_54637 L method_54637 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityNoOutlineShader M method_34512 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36492 M method_36492 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityShadowShader N method_34513 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36493 N method_36493 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityAlphaShader O method_34514 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36494 O method_36494 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEyesShader P method_34515 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36495 P method_36495 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEnergySwirlShader Q method_34516 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36496 Q method_36496 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeBreezeWindShader R method_55249 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36497 R method_36497 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLeashShader S method_34517 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36498 S method_36498 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeWaterMaskShader T method_34518 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36499 T method_36499 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeOutlineShader U method_34519 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_56845 U method_56845 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorGlintShader V method_34520 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36504 V method_36504 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorEntityGlintShader W method_34523 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36505 W method_36505 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintTranslucentShader X method_34524 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36506 X method_36506 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintShader Y method_34525 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36507 Y method_36507 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintDirectShader Z method_34526 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36508 Z method_36508 + m ()Z isPanoramicMode a method_35765 + m (D)Lorg/joml/Matrix4f; getProjectionMatrix a method_22973 + p 1 fov + m (F)V processBlurEffect a method_57796 + p 1 partialTick + m (FFF)V renderZoomed a method_35766 + p 1 zoom + p 2 zoomX + p 3 zoomY + m (II)V resize a method_3169 + p 1 width + p 2 height + m (Lnet/minecraft/resources/ResourceLocation;)V loadEffect a method_3168 + p 1 resourceLocation + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V preloadUiShader a method_34521 + p 1 resourceProvider + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;)Lnet/minecraft/client/renderer/ShaderInstance; preloadShader a method_34522 + p 1 resourceProvider + p 2 name + p 3 format + m (Lnet/minecraft/world/entity/Entity;)V checkEntityPostEffect a method_3167 + c What shader to use when spectating this entity + p 1 entity + m (Lnet/minecraft/world/entity/Entity;DDF)Lnet/minecraft/world/phys/HitResult; pick a method_56153 + p 1 entity + p 2 blockInteractionRange + p 4 entityInteractionRange + p 6 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;F)F getNightVisionScale a method_3174 + p 0 livingEntity + p 1 nanoTime + m (Lcom/mojang/datafixers/util/Pair;)V method_36512 a method_36512 + m (Lnet/minecraft/world/item/ItemStack;)V displayItemActivation a method_3189 + p 1 stack + m (Lnet/minecraft/world/phys/HitResult;Lnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/HitResult; filterHitResult a method_56154 + p 0 hitResult + p 1 pos + p 2 blockInteractionRange + m (Lcom/mojang/blaze3d/platform/NativeImage;Ljava/nio/file/Path;)V method_3181 a method_3181 + m (Lcom/mojang/blaze3d/vertex/PoseStack;F)V bobHurt a method_3198 + p 1 poseStack + p 2 partialTicks + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/gui/GuiGraphics;)V method_60888 a method_60888 + m (Lnet/minecraft/client/Camera;FLorg/joml/Matrix4f;)V renderItemInHand a method_3172 + p 1 camera + p 2 partialTick + p 3 projectionMatrix + m (Lnet/minecraft/client/Camera;FZ)D getFov a method_3196 + p 1 activeRenderInfo + p 2 partialTicks + p 3 useFOVSetting + m (Lnet/minecraft/client/DeltaTracker;)V renderLevel a method_3188 + p 1 deltaTracker + m (Lnet/minecraft/client/DeltaTracker;Z)V render a method_3192 + p 1 deltaTracker + p 2 renderLevel + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderItemActivationAnimation a method_3171 + p 1 guiGraphics + p 2 partialTick + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_55250 a method_55250 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/ShaderInstance; getShader a method_35767 + p 1 name + m (Ljava/nio/file/Path;)V takeAutoScreenshot a method_3176 + p 1 path + m (Lorg/joml/Matrix4f;)V resetProjectionMatrix a method_22709 + p 1 matrix + m (Z)V setRenderHand a method_35768 + p 1 renderHand + m ()Ljava/lang/String; method_18655 aA method_18655 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityGlintShader aa method_34527 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36509 aa method_36509 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityGlintDirectShader ab method_34528 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36510 ab method_36510 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextShader ac method_34529 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36511 ac method_36511 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextBackgroundShader ad method_49037 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextIntensityShader ae method_36432 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextSeeThroughShader af method_34530 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextBackgroundSeeThroughShader ag method_49038 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextIntensitySeeThroughShader ah method_36433 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLightningShader ai method_34531 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTripwireShader aj method_34532 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEndPortalShader ak method_34533 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEndGatewayShader al method_34534 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCloudsShader am method_56846 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLinesShader an method_34535 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCrumblingShader ao method_34536 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiShader ap method_51771 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiOverlayShader aq method_51772 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiTextHighlightShader ar method_51773 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiGhostRecipeOverlayShader as method_51774 + m ()V shutdownShaders at method_34537 + m ()V tickFov au method_3199 + c Update FOV modifier hand + m ()V tryTakeScreenshotIfNeeded av method_37473 + m ()Z shouldRenderBlockOutline aw method_3202 + m ()Ljava/lang/String; method_37103 ax method_37103 + m ()Ljava/lang/String; method_3173 ay method_3173 + m ()Ljava/lang/String; method_3205 az method_3205 + m ()V shutdownEffect b method_3207 + m (F)V pick b method_3190 + c Gets the block or object that is being moused over. + p 1 partialTicks + m (II)Ljava/lang/String; method_3191 b method_3191 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V loadBlurEffect b method_57797 + p 1 resourceProvider + m (Lnet/minecraft/world/entity/Entity;)Z method_18144 b method_18144 + m (Lcom/mojang/datafixers/util/Pair;)V method_36516 b method_36516 + m (Lcom/mojang/blaze3d/vertex/PoseStack;F)V bobView b method_3186 + p 1 poseStack + p 2 partialTicks + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderConfusionOverlay b method_31136 + p 1 guiGraphics + p 2 scalar + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51770 b method_51770 + m (Ljava/nio/file/Path;)V method_37474 b method_37474 + m (Z)V setRenderBlockOutline b method_35769 + p 1 renderBlockOutline + m ()V togglePostEffect c method_3184 + m (F)F getDarkenWorldAmount c method_3195 + p 1 partialTicks + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V reloadShaders c method_34538 + p 1 resourceProvider + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51775 c method_51775 + m (Z)V setPanoramicMode c method_35770 + p 1 panoramicMode + m ()Lnet/minecraft/server/packs/resources/PreparableReloadListener; createReloadListener d method_45774 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51776 d method_51776 + m ()V tick e method_3182 + c Updates the entity renderer + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51777 e method_51777 + m ()Lnet/minecraft/client/renderer/PostChain; currentEffect f method_3183 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36513 f method_36513 + m ()F getDepthFar g method_32796 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36517 g method_36517 + m ()V resetData h method_3203 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36502 h method_36502 + m ()Lnet/minecraft/client/gui/MapRenderer; getMapRenderer i method_3194 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36518 i method_36518 + m ()Lnet/minecraft/client/Minecraft; getMinecraft j method_35772 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36519 j method_36519 + m ()F getRenderDistance k method_3193 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36520 k method_36520 + m ()Lnet/minecraft/client/Camera; getMainCamera l method_19418 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36521 l method_36521 + m ()Lnet/minecraft/client/renderer/LightTexture; lightTexture m method_22974 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36522 m method_36522 + m ()Lnet/minecraft/client/renderer/texture/OverlayTexture; overlayTexture n method_22975 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_49039 n method_49039 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionShader o method_34539 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36523 o method_36523 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorShader p method_34540 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36524 p method_36524 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionTexShader q method_34542 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_49040 q method_49040 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionTexColorShader r method_34543 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36525 r method_36525 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getParticleShader s method_34546 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36526 s method_36526 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorLightmapShader t method_34547 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36527 t method_36527 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorTexLightmapShader u method_34548 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36529 u method_36529 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeSolidShader v method_34495 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36530 v method_36530 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCutoutMippedShader w method_34496 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36531 w method_36531 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCutoutShader x method_34497 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36533 x method_36533 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTranslucentShader y method_34498 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36534 y method_36534 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTranslucentMovingBlockShader z method_34499 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36535 z method_36535 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/ItemInHandRenderer;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/RenderBuffers;)V + p 1 minecraft + p 2 itemInHandRenderer + p 3 resourceManager + p 4 renderBuffers + m ()V +c net/minecraft/client/renderer/GameRenderer$1 ges$1 net/minecraft/class_757$1 + f Lnet/minecraft/client/renderer/GameRenderer; field_40509 a field_40509 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45775 a method_45775 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/renderer/GameRenderer$ResourceCache; prepare a method_45776 + m (Lnet/minecraft/client/renderer/GameRenderer$ResourceCache;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_45777 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_45778 a method_45778 + m ([B)Ljava/io/InputStream; method_45779 a method_45779 + m (Lnet/minecraft/client/renderer/GameRenderer;)V +c net/minecraft/client/renderer/GameRenderer$ResourceCache ges$a net/minecraft/class_757$class_7760 + f Lnet/minecraft/server/packs/resources/ResourceProvider; original a comp_1038 + f Ljava/util/Map; cache c comp_1039 + m ()Lnet/minecraft/server/packs/resources/ResourceProvider; original a comp_1038 + m ()Ljava/util/Map; cache b comp_1039 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/util/Map;)V +c net/minecraft/client/renderer/GpuWarnlistManager get net/minecraft/class_5407 + f Lorg/slf4j/Logger; LOGGER a field_25716 + f Lnet/minecraft/resources/ResourceLocation; GPU_WARNLIST_LOCATION b field_25689 + f Lcom/google/common/collect/ImmutableMap; warnings c field_25690 + f Z showWarning d field_25717 + f Z warningDismissed e field_25718 + f Z skipFabulous f field_25719 + m ()Z hasWarnings a method_30055 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/renderer/GpuWarnlistManager$Preparations; prepare a method_30056 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lcom/google/gson/JsonArray;Ljava/util/List;)V compilePatterns a method_30057 + p 0 jsonArray + p 1 patterns + m (Lnet/minecraft/client/renderer/GpuWarnlistManager$Preparations;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_30058 + p 1 object + p 2 resourceManager + p 3 profiler + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_30919 a method_30919 + m (Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30059 a method_30059 + m ()Z willShowWarning b method_30137 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lcom/google/gson/JsonObject; parseJson c method_30061 + p 0 resourceManager + p 1 profilerFiller + m ()V showWarning d method_30138 + m ()V dismissWarning e method_30139 + m ()V dismissWarningAndSkipFabulous f method_30140 + m ()Z isShowingWarning g method_30141 + m ()Z isSkippingFabulous h method_30142 + m ()V resetWarnings i method_30143 + m ()Ljava/lang/String; getRendererWarnings j method_30060 + m ()Ljava/lang/String; getVersionWarnings k method_30062 + m ()Ljava/lang/String; getVendorWarnings l method_30063 + m ()Ljava/lang/String; getAllWarnings m method_30920 + m ()V + m ()V +c net/minecraft/client/renderer/GpuWarnlistManager$Preparations get$a net/minecraft/class_5407$class_5408 + f Ljava/util/List; rendererPatterns a field_25691 + f Ljava/util/List; versionPatterns b field_25692 + f Ljava/util/List; vendorPatterns c field_25693 + m ()Lcom/google/common/collect/ImmutableMap; apply a method_30064 + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; matchAny a method_30066 + p 0 patterns + p 1 string + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 rendererPatterns + p 2 versionPatterns + p 3 vendorPatterns +c net/minecraft/client/renderer/ItemBlockRenderTypes geu net/minecraft/class_4696 + f Ljava/util/Map; TYPE_BY_BLOCK a field_21469 + f Ljava/util/Map; TYPE_BY_FLUID b field_21471 + f Z renderCutout c field_21472 + m (Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_23678 + p 0 stack + p 1 cull + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/RenderType; getChunkRenderType a method_23679 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_23683 + p 0 state + p 1 cull + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/client/renderer/RenderType; getRenderLayer a method_23680 + p 0 fluidState + m (Ljava/util/HashMap;)V method_23681 a method_23681 + m (Z)V setFancy a method_23682 + p 0 fancy + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/RenderType; getMovingBlockRenderType b method_29359 + p 0 state + m (Ljava/util/HashMap;)V method_23685 b method_23685 + m ()V + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer gev net/minecraft/class_759 + f F ARM_SWING_Z_ROT_AMOUNT A field_32689 + f F ARM_HEIGHT_SCALE B field_32690 + f F ARM_POS_SCALE C field_32691 + f F ARM_POS_X D field_32692 + f F ARM_POS_Y E field_32693 + f F ARM_POS_Z F field_32694 + f F ARM_PRESWING_ROT_Y G field_32695 + f F ARM_PREROTATION_X_OFFSET H field_32696 + f F ARM_PREROTATION_Y_OFFSET I field_32697 + f F ARM_PREROTATION_Z_OFFSET J field_32698 + f F ARM_POSTROTATION_X_OFFSET K field_32699 + f I ARM_ROT_X L field_32700 + f I ARM_ROT_Y M field_32701 + f I ARM_ROT_Z N field_32702 + f F MAP_SWING_X_POS_SCALE O field_32703 + f F MAP_SWING_Z_POS_SCALE P field_32704 + f F MAP_HANDS_POS_X Q field_32705 + f F MAP_HANDS_POS_Y R field_32706 + f F MAP_HANDS_POS_Z S field_32707 + f F MAP_HANDS_HEIGHT_SCALE T field_32708 + f F MAP_HANDS_TILT_SCALE U field_32709 + f F MAP_PLAYER_PITCH_SCALE V field_32710 + f F MAP_HANDS_Z_ROT_AMOUNT W field_32711 + f F MAPHAND_X_ROT_AMOUNT X field_32712 + f F MAPHAND_Y_ROT_AMOUNT Y field_32713 + f F MAPHAND_Z_ROT_AMOUNT Z field_32714 + f F oOffHandHeight aA field_4051 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher aB field_4046 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer aC field_4044 + f Lnet/minecraft/client/renderer/RenderType; MAP_BACKGROUND a field_21807 + f F MAP_HAND_X_POS aa field_32715 + f F MAP_HAND_Y_POS ab field_32716 + f F MAP_HAND_Z_POS ac field_32717 + f F MAP_SWING_X_ROT_AMOUNT ad field_32718 + f F MAP_PRE_ROT_SCALE ae field_32719 + f F MAP_GLOBAL_X_POS af field_32720 + f F MAP_GLOBAL_Y_POS ag field_32721 + f F MAP_GLOBAL_Z_POS ah field_32722 + f F MAP_FINAL_SCALE ai field_32723 + f I MAP_BORDER aj field_32724 + f I MAP_HEIGHT ak field_32725 + f I MAP_WIDTH al field_32726 + f F BOW_CHARGE_X_POS_SCALE am field_32727 + f F BOW_CHARGE_Y_POS_SCALE an field_32728 + f F BOW_CHARGE_Z_POS_SCALE ao field_32729 + f F BOW_CHARGE_SHAKE_X_SCALE ap field_32730 + f F BOW_CHARGE_SHAKE_Y_SCALE aq field_32731 + f F BOW_CHARGE_SHAKE_Z_SCALE ar field_32732 + f F BOW_CHARGE_Z_SCALE as field_32733 + f F BOW_MIN_SHAKE_CHARGE at field_32734 + f Lnet/minecraft/client/Minecraft; minecraft au field_4050 + f Lnet/minecraft/world/item/ItemStack; mainHandItem av field_4047 + f Lnet/minecraft/world/item/ItemStack; offHandItem aw field_4048 + f F mainHandHeight ax field_4043 + f F oMainHandHeight ay field_4053 + f F offHandHeight az field_4052 + f Lnet/minecraft/client/renderer/RenderType; MAP_BACKGROUND_CHECKERBOARD b field_21808 + f F ITEM_SWING_X_POS_SCALE c field_32735 + f F ITEM_SWING_Y_POS_SCALE d field_32736 + f F ITEM_SWING_Z_POS_SCALE e field_32737 + f F ITEM_HEIGHT_SCALE f field_32738 + f F ITEM_POS_X g field_32739 + f F ITEM_POS_Y h field_32740 + f F ITEM_POS_Z i field_32741 + f F ITEM_PRESWING_ROT_Y j field_32742 + f F ITEM_SWING_X_ROT_AMOUNT k field_32743 + f F ITEM_SWING_Y_ROT_AMOUNT l field_32744 + f F ITEM_SWING_Z_ROT_AMOUNT m field_32745 + f F EAT_JIGGLE_X_ROT_AMOUNT n field_32746 + f F EAT_JIGGLE_Y_ROT_AMOUNT o field_32747 + f F EAT_JIGGLE_Z_ROT_AMOUNT p field_32748 + f F EAT_JIGGLE_X_POS_SCALE q field_32749 + f F EAT_JIGGLE_Y_POS_SCALE r field_32750 + f F EAT_JIGGLE_Z_POS_SCALE s field_32751 + f D EAT_JIGGLE_EXPONENT t field_32752 + f F EAT_EXTRA_JIGGLE_CUTOFF u field_32753 + f F EAT_EXTRA_JIGGLE_SCALE v field_32754 + f F ARM_SWING_X_POS_SCALE w field_32755 + f F ARM_SWING_Y_POS_SCALE x field_32756 + f F ARM_SWING_Z_POS_SCALE y field_32757 + f F ARM_SWING_Y_ROT_AMOUNT z field_32758 + m ()V tick a method_3220 + m (F)F calculateMapTilt a method_3227 + c Return the angle to render the Map + p 1 pitch + m (FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;Lnet/minecraft/client/player/LocalPlayer;I)V renderHandsWithItems a method_22976 + p 1 partialTicks + p 2 poseStack + p 3 buffer + p 4 playerEntity + p 5 combinedLight + m (Lnet/minecraft/world/InteractionHand;)V itemUsed a method_3215 + p 1 hand + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderItem a method_3233 + p 1 entity + p 2 itemStack + p 3 displayContext + p 4 leftHand + p 5 poseStack + p 6 buffer + p 7 seed + m (Lnet/minecraft/world/item/ItemStack;)Z isChargedCrossbow a method_33302 + p 0 stack + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/entity/HumanoidArm;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)V applyEatTransform a method_3218 + p 1 poseStack + p 2 partialTick + p 3 arm + p 4 stack + p 5 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/entity/HumanoidArm;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;F)V applyBrushTransform a method_49340 + p 1 poseStack + p 2 partialTick + p 3 arm + p 4 stack + p 5 player + p 6 equippedProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/HumanoidArm;F)V applyItemArmAttackTransform a method_3217 + p 1 poseStack + p 2 hand + p 3 swingProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFFF)V renderTwoHandedMap a method_3231 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 pitch + p 5 equippedProgress + p 6 swingProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFFLnet/minecraft/world/entity/HumanoidArm;)V renderPlayerArm a method_3219 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 equippedProgress + p 5 swingProgress + p 6 side + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFLnet/minecraft/world/entity/HumanoidArm;FLnet/minecraft/world/item/ItemStack;)V renderOneHandedMap a method_3222 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 equippedProgress + p 5 hand + p 6 swingProgress + p 7 stack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/HumanoidArm;)V renderMapHand a method_3216 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 side + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;)V renderMap a method_3223 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 stack + m (Lnet/minecraft/client/player/AbstractClientPlayer;FFLnet/minecraft/world/InteractionHand;FLnet/minecraft/world/item/ItemStack;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithItem a method_3228 + p 1 player + p 2 partialTicks + p 3 pitch + p 4 hand + p 5 swingProgress + p 6 stack + p 7 equippedProgress + p 8 poseStack + p 9 buffer + p 10 combinedLight + m (Lnet/minecraft/client/player/LocalPlayer;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; evaluateWhichHandsToRender a method_33303 + p 0 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/HumanoidArm;F)V applyItemArmTransform b method_3224 + p 1 poseStack + p 2 hand + p 3 equippedProg + m (Lnet/minecraft/client/player/LocalPlayer;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; selectionUsingItemWhileHoldingBowLike b method_33304 + p 0 player + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V + p 1 minecraft + p 2 entityRenderDispatcher + p 3 itemRenderer + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer$1 gev$1 net/minecraft/class_759$1 + f [I $SwitchMap$net$minecraft$world$item$UseAnim a field_4054 + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection gev$a net/minecraft/class_759$class_5773 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_BOTH_HANDS a field_28384 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_MAIN_HAND_ONLY b field_28385 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_OFF_HAND_ONLY c field_28386 + f Z renderMainHand d field_28387 + f Z renderOffHand e field_28388 + f [Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; $VALUES f field_28389 + m ()[Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; $values a method_36915 + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; onlyForHand a method_33305 + p 0 hand + m (Ljava/lang/String;IZZ)V + p 3 renderMainHand + p 4 renderOffHand + m ()V +c net/minecraft/client/renderer/ItemModelShaper gew net/minecraft/class_763 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; shapes a field_4129 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; shapesCache b field_4130 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager c field_4128 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager a method_3303 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/client/resources/model/BakedModel; getItemModel a method_3304 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/client/resources/model/ModelResourceLocation;)V register a method_3309 + p 1 item + p 2 modelLocation + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/resources/model/BakedModel; getItemModel a method_3308 + p 1 stack + m ()V rebuildCache b method_3310 + m (Lnet/minecraft/world/item/Item;)I getIndex b method_3306 + p 0 item + m (Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 modelManager +c net/minecraft/client/renderer/LevelRenderer gex net/minecraft/class_761 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; skyBuffer A field_4087 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; darkBuffer B field_4102 + f Z generateClouds C field_4107 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; cloudBuffer D field_4094 + f Lnet/minecraft/client/renderer/RunningTrimmedMean; frameTimes E field_21799 + f I ticks F field_4073 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; destroyingBlocks G field_4058 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; destructionProgress H field_20950 + f Ljava/util/Map; playingJukeboxSongs I field_4119 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; entityTarget J field_4101 + f Lnet/minecraft/client/renderer/PostChain; entityEffect K field_4059 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; translucentTarget L field_25274 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; itemEntityTarget M field_25275 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; particlesTarget N field_25276 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; weatherTarget O field_25277 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; cloudsTarget P field_25278 + f Lnet/minecraft/client/renderer/PostChain; transparencyChain Q field_25279 + f I lastCameraSectionX R field_4084 + f I lastCameraSectionY S field_4105 + f I lastCameraSectionZ T field_4121 + f D prevCamX U field_4069 + f D prevCamY V field_4081 + f D prevCamZ W field_4096 + f D prevCamRotX X field_4115 + f D prevCamRotY Y field_4064 + f I prevCloudX Z field_4082 + f I SECTION_SIZE a field_32759 + f I prevCloudY aa field_4097 + f I prevCloudZ ab field_4116 + f Lnet/minecraft/world/phys/Vec3; prevCloudColor ac field_4072 + f Lnet/minecraft/client/CloudStatus; prevCloudsType ad field_4080 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; sectionRenderDispatcher ae field_45614 + f I lastViewDistance af field_4062 + f I renderedEntities ag field_4089 + f I culledEntities ah field_4110 + f Lnet/minecraft/client/renderer/culling/Frustum; cullingFrustum ai field_27740 + f Z captureFrustum aj field_4090 + f Lnet/minecraft/client/renderer/culling/Frustum; capturedFrustum ak field_4056 + f [Lorg/joml/Vector4f; frustumPoints al field_4065 + f Lorg/joml/Vector3d; frustumPos am field_4091 + f D xTransparentOld an field_4083 + f D yTransparentOld ao field_4103 + f D zTransparentOld ap field_4118 + f I rainSoundTime aq field_20793 + f [F rainSizeX ar field_20794 + f [F rainSizeZ as field_20795 + f I HALF_SECTION_SIZE b field_34812 + f Lnet/minecraft/resources/ResourceLocation; CLOUDS_LOCATION c field_4108 + f [Lnet/minecraft/core/Direction; DIRECTIONS d field_4095 + f Lorg/slf4j/Logger; LOGGER e field_4060 + f F SKY_DISC_RADIUS f field_32762 + f I MIN_FOG_DISTANCE g field_32763 + f I RAIN_RADIUS h field_32764 + f I RAIN_DIAMETER i field_32765 + f I TRANSPARENT_SORT_COUNT j field_32766 + f Lnet/minecraft/resources/ResourceLocation; MOON_LOCATION k field_4098 + f Lnet/minecraft/resources/ResourceLocation; SUN_LOCATION l field_4111 + f Lnet/minecraft/resources/ResourceLocation; END_SKY_LOCATION m field_4061 + f Lnet/minecraft/resources/ResourceLocation; FORCEFIELD_LOCATION n field_4071 + f Lnet/minecraft/resources/ResourceLocation; RAIN_LOCATION o field_20797 + f Lnet/minecraft/resources/ResourceLocation; SNOW_LOCATION p field_20798 + f Lnet/minecraft/client/Minecraft; minecraft q field_4088 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher r field_4109 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher s field_27741 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers t field_20951 + f Lnet/minecraft/client/multiplayer/ClientLevel; level u field_4085 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph; sectionOcclusionGraph v field_45615 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; visibleSections w field_45616 + f Ljava/util/Set; globalBlockEntities x field_4055 + c Global block entities; these are always rendered, even if off-screen.\nAny block entity is added to this if {@link net.minecraft.client.renderer.blockentity.BlockEntityRenderer#shouldRenderOffScreen(net.minecraft.world.level.block.entity.BlockEntity)} returns {@code true}. + f Lnet/minecraft/client/renderer/ViewArea; viewArea y field_4112 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; starBuffer z field_4113 + m ()V createDarkSky A method_3265 + m ()V createLightSky B method_3277 + m ()V createStars C method_3293 + m ()V initOutline a method_3296 + m (DDD)Ljava/lang/String; method_3264 a method_3264 + m (F)Lnet/minecraft/world/phys/Vec3; mixColor a method_51778 + p 0 hue + m (FFFF)Lnet/minecraft/world/phys/Vec3; shiftHue a method_51779 + p 0 red + p 1 green + p 2 blue + p 3 hue + m (II)V resize a method_3242 + p 1 width + p 2 height + m (III)V setSectionDirtyWithNeighbors a method_18145 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (IIIIII)V setBlocksDirty a method_18146 + c Re-renders all blocks in the specified range. + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m (IIIZ)V setSectionDirty a method_3295 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + p 4 reRenderOnMainThread + m (ILnet/minecraft/core/BlockPos;I)V globalLevelEvent a method_8564 + c Handles a global level event. This includes playing sounds that should be heard by any player, regardless of position and dimension, such as the Wither spawning. + p 1 type + c the type of level event to handle. This method only handles {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_WITHER_BOSS_SPAWN the wither boss spawn sound}, {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_DRAGON_DEATH the dragon's death sound}, and {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_END_PORTAL_SPAWN the end portal spawn sound}. + p 2 pos + p 3 data + m (ILnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/SimpleParticleType;)V shootParticles a method_54638 + p 1 direction + p 2 pos + p 3 random + p 4 particleType + m (J)Ljava/util/SortedSet; method_22988 a method_22988 + m (Lnet/minecraft/server/level/BlockDestructionProgress;)V removeProgress a method_22987 + p 1 progress + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/network/chat/MutableComponent; method_41949 a method_41949 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; method_41950 a method_41950 + m (Lnet/minecraft/world/entity/Entity;DDDFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderEntity a method_22977 + p 1 entity + p 2 camX + p 4 camY + p 6 camZ + p 8 partialTick + p 9 poseStack + p 10 bufferSource + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)I getLightColor a method_23793 + p 0 level + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_23794 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;I)V blockChanged a method_8570 + p 1 level + p 2 pos + p 3 oldState + p 4 newState + p 5 flags + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_52815 + p 1 chunkPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V notifyNearbyEntities a method_3247 + c Notifies living entities in a 3 block range of the specified {@code pos} that a record is or isn't playing nearby, dependent on the specified {@code playing} parameter.\nThis is used to make parrots start or stop partying. + p 1 level + p 2 pos + p 3 playing + m (Lnet/minecraft/world/phys/Vec3;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V prepareCullFrustum a method_32133 + p 1 cameraPosition + p 2 frustumMatrix + p 3 projectionMatrix + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V checkPoseStack a method_22979 + c Asserts that the specified {@code poseStack} is {@linkplain com.mojang.blaze3d.vertex.PoseStack#clear() clear}.\n@throws java.lang.IllegalStateException if the specified {@code poseStack} is not clear + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V renderLineBox a method_22980 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFFFFF)V renderLineBox a method_22981 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + p 18 red2 + p 19 green2 + p 20 blue2 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFFF)V addChainedFilledBoxVertices a method_49041 + p 0 poseStack + p 1 consumer + p 2 minX + p 3 minY + p 4 minZ + p 5 maxX + p 6 maxY + p 7 maxZ + p 8 red + p 9 green + p 10 blue + p 11 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V renderHitOutline a method_22712 + p 1 poseStack + p 2 consumer + p 3 entity + p 4 camX + p 6 camY + p 8 camZ + p 10 pos + p 11 state + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/AABB;FFFF)V renderLineBox a method_22982 + p 0 poseStack + p 1 buffer + p 2 box + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/shapes/VoxelShape;DDDFFFF)V renderShape a method_3291 + p 0 poseStack + p 1 consumer + p 2 shape + p 3 x + p 5 y + p 7 z + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/shapes/VoxelShape;DDDFFFFZ)V renderVoxelShape a method_22983 + p 0 poseStack + p 1 consumer + p 2 shape + p 3 x + p 5 y + p 7 z + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;FFFFFFFFFF)V renderFace a method_61044 + p 0 poseStack + p 1 buffer + p 2 face + p 3 x1 + p 4 y1 + p 5 z1 + p 6 x2 + p 7 y2 + p 8 z2 + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/Camera;)V renderDebug a method_22989 + p 1 poseStack + p 2 buffer + p 3 camera + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FDDD)V renderClouds a method_3259 + p 1 poseStack + p 2 frustumMatrix + p 3 projectionMatrix + p 4 partialTick + p 5 camX + p 7 camY + p 9 camZ + m (Lcom/mojang/blaze3d/vertex/Tesselator;)Lcom/mojang/blaze3d/vertex/MeshData; drawStars a method_3255 + p 1 tesselator + m (Lcom/mojang/blaze3d/vertex/Tesselator;DDDLnet/minecraft/world/phys/Vec3;)Lcom/mojang/blaze3d/vertex/MeshData; buildClouds a method_3239 + p 1 tesselator + p 2 x + p 4 y + p 6 z + p 8 cloudColor + m (Lcom/mojang/blaze3d/vertex/Tesselator;F)Lcom/mojang/blaze3d/vertex/MeshData; buildSkyDisc a method_34550 + p 0 tesselator + p 1 y + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V renderLineBox a method_35773 + p 0 consumer + p 1 minX + p 3 minY + p 5 minZ + p 7 maxX + p 9 maxY + p 11 maxZ + p 13 red + p 14 green + p 15 blue + p 16 alpha + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;DDDFFFFDDDDDD)V method_3278 a method_3278 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;I)V addFrustumVertex a method_22984 + p 1 consumer + p 2 matrix + p 3 vertexIndex + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;IIIIIII)V addFrustumQuad a method_22985 + p 1 consumer + p 2 matrix + p 3 index1 + p 4 index2 + p 5 index3 + p 6 index4 + p 7 red + p 8 green + p 9 blue + m (Lnet/minecraft/client/Camera;)V tickRain a method_22713 + p 1 camera + m (Lnet/minecraft/client/Camera;FZF)V method_37365 a method_37365 + m (Lnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/culling/Frustum;ZZ)V setupRender a method_3273 + p 1 camera + p 2 frustum + p 3 hasCapturedFrustum + p 4 isSpectator + m (Lnet/minecraft/client/DeltaTracker;ZLnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/GameRenderer;Lnet/minecraft/client/renderer/LightTexture;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V renderLevel a method_22710 + p 1 deltaTracker + p 2 renderBlockOutline + p 3 camera + p 4 gameRenderer + p 5 lightTexture + p 6 frustumMatrix + p 7 projectionMatrix + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_3244 + p 1 level + c the level to set, or {@code null} to clear + m (Lnet/minecraft/client/renderer/LightTexture;FDDD)V renderSnowAndRain a method_22714 + p 1 lightTexture + p 2 partialTick + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexConsumer; method_22986 a method_22986 + m (Lnet/minecraft/client/renderer/RenderType;)Ljava/lang/String; method_3248 a method_3248 + m (Lnet/minecraft/client/renderer/RenderType;DDDLorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V renderSectionLayer a method_3251 + p 1 renderType + p 2 x + p 4 y + p 6 z + p 8 frustrumMatrix + p 9 projectionMatrix + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V addRecentlyCompiledSection a method_38550 + p 1 renderSection + m (Lnet/minecraft/client/renderer/culling/Frustum;)Lnet/minecraft/client/renderer/culling/Frustum; offsetFrustum a method_52816 + p 0 frustum + m (Ljava/util/Collection;Ljava/util/Collection;)V updateGlobalBlockEntities a method_3245 + p 1 blockEntitiesToRemove + p 2 blockEntitiesToAdd + m (Lnet/minecraft/core/BlockPos;)V stopJukeboxSongAndNotifyNearby a method_60889 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V setBlockDirty a method_21596 + p 1 pos + p 2 oldState + p 3 newState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_60890 a method_60890 + m (Lnet/minecraft/core/BlockPos;Z)V setBlockDirty a method_16037 + p 1 pos + p 2 reRenderOnMainThread + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)V playJukeboxSong a method_60891 + p 1 song + p 2 pos + m (Lnet/minecraft/core/particles/ParticleOptions;)Ljava/lang/String; method_56847 a method_56847 + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addParticle a method_3276 + p 1 options + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addParticle a method_8568 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZZDDDDDD)V addParticle a method_8563 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, attempts to spawn the particle at a decreased level + p 4 x + p 6 y + p 8 z + p 10 xSpeed + p 12 ySpeed + p 14 zSpeed + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;DDDLnet/minecraft/client/renderer/culling/Frustum;)V captureFrustum a method_3275 + p 1 viewMatrix + p 2 projectionMatrix + p 3 camX + p 5 camY + p 7 camZ + p 9 capturedFrustrum + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FLnet/minecraft/client/Camera;ZLjava/lang/Runnable;)V renderSky a method_3257 + p 1 frustumMatrix + p 2 projectionMatrix + p 3 partialTick + p 4 camera + p 5 isFoggy + p 6 skyFogSetup + m (Z)Lnet/minecraft/client/ParticleStatus; calculateParticleLevel a method_3268 + c Calculates the level of particles to use based on the {@linkplain net.minecraft.client.Options#particles particles option} and the specified {@code decreased} parameter. This leads to randomly generating more or less particles than the set option. + p 1 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, has a 1 in 10 chance to return a decreased level and a further 1 in 3 chance to minimise it + m ()V doEntityOutline b method_3254 + m (III)V setSectionDirty b method_8571 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (ILnet/minecraft/core/BlockPos;I)V levelEvent b method_8567 + p 1 type + p 2 pos + p 3 data + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V renderEndSky b method_3250 + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V addChainedFilledBoxVertices b method_3258 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lnet/minecraft/client/Camera;)Z doesMobEffectBlockSky b method_43788 + p 1 camera + m (Lnet/minecraft/client/renderer/culling/Frustum;)V applyFrustum b method_38551 + p 1 frustum + m (Lnet/minecraft/core/BlockPos;)Z isSectionCompiled b method_40050 + p 1 pos + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)Lnet/minecraft/client/particle/Particle; addParticleInternal b method_3282 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZZDDDDDD)Lnet/minecraft/client/particle/Particle; addParticleInternal b method_3288 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, attempts to spawn the particle at a decreased level + p 4 x + p 6 y + p 8 z + p 10 xSpeed + p 12 ySpeed + p 14 zSpeed + m (ILnet/minecraft/core/BlockPos;I)V destroyBlockProgress c method_8569 + p 1 breakerId + p 2 pos + p 3 progress + m (Lnet/minecraft/client/Camera;)V compileSections c method_3269 + p 1 camera + m (Lnet/minecraft/core/BlockPos;)V stopJukeboxSong c method_60892 + p 1 pos + m ()Z shouldShowEntityOutlines d method_3270 + m (Lnet/minecraft/client/Camera;)V renderWorldBorder d method_3243 + p 1 camera + m ()V graphicsChanged e method_35774 + m ()V allChanged f method_3279 + c Loads all renderers and sets up the basic options usage. + m ()Ljava/lang/String; getSectionStatistics g method_3289 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; getSectionRenderDispatcher h method_34810 + m ()D getTotalSections i method_34811 + m ()D getLastViewDistance j method_34812 + m ()I countRenderedSections k method_3246 + m ()Ljava/lang/String; getEntityStatistics l method_3272 + c @return entity rendering statistics to display on the {@linkplain net.minecraft.client.gui.components.DebugScreenOverlay debug overlay} + m ()V captureFrustum m method_35775 + m ()V killFrustum n method_35776 + m ()V tick o method_3252 + m ()V clear p method_3267 + m ()Z hasRenderedAllSections q method_3281 + m ()V needsUpdate r method_3292 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; entityTarget s method_22990 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getTranslucentTarget t method_29360 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getItemEntityTarget u method_29361 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getParticlesTarget v method_29362 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getWeatherTarget w method_29363 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getCloudsTarget x method_29364 + m ()V initTransparency y method_29365 + m ()V deinitTransparency z method_29701 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;)V + p 1 minecraft + p 2 entityRenderDispatcher + p 3 blockEntityRenderDispatcher + p 4 renderBuffers + m ()V +c net/minecraft/client/renderer/LevelRenderer$1 gex$1 net/minecraft/class_761$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_52254 + m ()V +c net/minecraft/client/renderer/LevelRenderer$TransparencyShaderException gex$a net/minecraft/class_761$class_5347 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/client/renderer/LightTexture gey net/minecraft/class_765 + f I FULL_BRIGHT a field_32767 + f I FULL_SKY b field_32768 + f I FULL_BLOCK c field_32769 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; lightTexture d field_4138 + f Lcom/mojang/blaze3d/platform/NativeImage; lightPixels e field_4133 + f Lnet/minecraft/resources/ResourceLocation; lightTextureLocation f field_4136 + f Z updateLightTexture g field_4135 + f F blockLightRedFlicker h field_21528 + f Lnet/minecraft/client/renderer/GameRenderer; renderer i field_4134 + f Lnet/minecraft/client/Minecraft; minecraft j field_4137 + m ()V tick a method_3314 + m (F)V updateLightTexture a method_3313 + p 1 partialTicks + m (I)I block a method_24186 + p 0 packedLight + m (II)I pack a method_23687 + p 0 blockLight + p 1 skyLight + m (Lnet/minecraft/world/entity/LivingEntity;FF)F calculateDarknessScale a method_42596 + p 1 entity + p 2 gamma + p 3 partialTick + m (Lnet/minecraft/world/level/dimension/DimensionType;I)F getBrightness a method_23284 + p 0 dimensionType + p 1 lightLevel + m (Lorg/joml/Vector3f;)V clampColor a method_46557 + p 0 color + m ()V turnOffLightLayer b method_3315 + m (F)F getDarknessGamma b method_42597 + p 1 partialTick + m (I)I sky b method_24187 + p 0 packedLight + m ()V turnOnLightLayer c method_3316 + m (F)F notGamma c method_23795 + p 1 value + m (Lnet/minecraft/client/renderer/GameRenderer;Lnet/minecraft/client/Minecraft;)V + p 1 renderer + p 2 minecraft +c net/minecraft/client/renderer/MultiBufferSource gez net/minecraft/class_4597 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;)Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; immediate a method_22991 + p 0 sharedBuffer + m (Ljava/util/SequencedMap;Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;)Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; immediateWithBuffers a method_22992 + p 0 fixedBuffers + p 1 sharedBuffer +c net/minecraft/client/renderer/MultiBufferSource$BufferSource gez$a net/minecraft/class_4597$class_4598 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; sharedBuffer a field_52156 + f Ljava/util/SequencedMap; fixedBuffers b field_20953 + f Ljava/util/Map; startedBuilders c field_52157 + f Lnet/minecraft/client/renderer/RenderType; lastSharedType d field_52158 + m ()V endLastBatch a method_37104 + m (Lnet/minecraft/client/renderer/RenderType;)V endBatch a method_22994 + p 1 renderType + m (Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/BufferBuilder;)V endBatch a method_60893 + p 1 renderType + p 2 builder + m ()V endBatch b method_22993 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Ljava/util/SequencedMap;)V + p 1 sharedBuffer + p 2 fixedBuffers +c net/minecraft/client/renderer/OutlineBufferSource gfa net/minecraft/class_4618 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource a field_21058 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; outlineBufferSource b field_21059 + f I teamR c field_21060 + f I teamG d field_21061 + f I teamB e field_21062 + f I teamA f field_21063 + m ()V endOutlineBatch a method_23285 + m (IIII)V setColor a method_23286 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 bufferSource +c net/minecraft/client/renderer/OutlineBufferSource$EntityOutlineGenerator gfa$a net/minecraft/class_4618$class_4586 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a comp_2851 + f I color b comp_2852 + m ()Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a comp_2851 + m ()I color b comp_2852 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;IIII)V + p 1 delegate + p 2 defaultR + p 3 defaultG + p 4 defaultB + p 5 defaultA + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;I)V +c net/minecraft/client/renderer/PanoramaRenderer gfb net/minecraft/class_766 + f Lnet/minecraft/resources/ResourceLocation; PANORAMA_OVERLAY a field_49905 + f Lnet/minecraft/client/Minecraft; minecraft b field_4139 + f Lnet/minecraft/client/renderer/CubeMap; cubeMap c field_4141 + f F spin d field_40510 + f F bob e field_40511 + m (FF)F wrap a method_45780 + p 0 value + p 1 max + m (Lnet/minecraft/client/gui/GuiGraphics;IIFF)V render a method_3317 + p 1 guiGraphics + p 2 width + p 3 height + p 4 fade + p 5 partialTick + m (Lnet/minecraft/client/renderer/CubeMap;)V + p 1 cubeMap + m ()V +c net/minecraft/client/renderer/PostChain gfc net/minecraft/class_279 + f Ljava/lang/String; MAIN_RENDER_TARGET a field_32770 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; screenTarget b field_1499 + f Lnet/minecraft/server/packs/resources/ResourceProvider; resourceProvider c field_49569 + f Ljava/lang/String; name d field_1494 + f Ljava/util/List; passes e field_1497 + f Ljava/util/Map; customRenderTargets f field_1495 + f Ljava/util/List; fullSizedTargets g field_1496 + f Lorg/joml/Matrix4f; shaderOrthoMatrix h field_1498 + f I screenWidth i field_1493 + f I screenHeight j field_1492 + f F time k field_1501 + f F lastStamp l field_1500 + m ()Ljava/lang/String; getName a method_1260 + m (F)V process a method_1258 + p 1 partialTicks + m (I)V setFilterMode a method_58233 + p 1 filterMode + m (II)V resize a method_1259 + p 1 width + p 2 height + m (Lcom/google/gson/JsonElement;)V parseTargetNode a method_1265 + p 1 json + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V load a method_1256 + p 1 textureManager + p 2 resourceLocation + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lcom/google/gson/JsonElement;)V parsePassNode a method_1257 + p 1 textureManager + p 2 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderTarget; getTempTarget a method_1264 + p 1 attributeName + m (Ljava/lang/String;F)V setUniform a method_57799 + p 1 name + p 2 backgroundBlurriness + m (Ljava/lang/String;II)V addTempTarget a method_1261 + p 1 name + p 2 width + p 3 height + m (Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lcom/mojang/blaze3d/pipeline/RenderTarget;Z)Lnet/minecraft/client/renderer/PostPass; addPass a method_1262 + p 1 name + p 2 inTarget + p 3 outTarget + p 4 useLinearFilter + m ()V updateOrthoMatrix b method_1267 + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_1263 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderTarget; getRenderTarget b method_1266 + p 1 target + m (Ljava/lang/String;)Lnet/minecraft/server/ChainedJsonException; method_43210 c method_43210 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 resourceProvider + p 3 screenTarget + p 4 resourceLocation +c net/minecraft/client/renderer/PostPass gfd net/minecraft/class_283 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; inTarget a field_1536 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; outTarget b field_1538 + f Lnet/minecraft/client/renderer/EffectInstance; effect c field_1540 + f Ljava/util/List; auxAssets d field_1534 + f Ljava/util/List; auxNames e field_1539 + f Ljava/util/List; auxWidths f field_1533 + f Ljava/util/List; auxHeights g field_1537 + f Lorg/joml/Matrix4f; shaderOrthoMatrix h field_1535 + f I filterMode i field_49906 + m ()Ljava/lang/String; getName a method_35777 + m (F)V process a method_1293 + p 1 partialTicks + m (Ljava/lang/String;Ljava/util/function/IntSupplier;II)V addAuxAsset a method_1292 + p 1 auxName + p 2 auxFramebuffer + p 3 width + p 4 height + m (Lorg/joml/Matrix4f;)V setOrthoMatrix a method_1291 + p 1 shaderOrthoMatrix + m ()Lnet/minecraft/client/renderer/EffectInstance; getEffect b method_1295 + m ()I getFilterMode c method_58234 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lcom/mojang/blaze3d/pipeline/RenderTarget;Z)V + p 1 resourceProvider + p 2 name + p 3 inTarget + p 4 outTarget + p 5 useLinearFilter +c net/minecraft/client/renderer/Rect2i gfe net/minecraft/class_768 + f I xPos a field_4145 + f I yPos b field_4144 + f I width c field_4143 + f I height d field_4142 + m ()I getX a method_3321 + m (I)V setX a method_35778 + p 1 xPos + m (II)V setPosition a method_35779 + p 1 xPos + p 2 yPos + m (Lnet/minecraft/client/renderer/Rect2i;)Lnet/minecraft/client/renderer/Rect2i; intersect a method_35780 + p 1 other + m ()I getY b method_3322 + m (I)V setY b method_35781 + p 1 yPos + m (II)Z contains b method_3318 + p 1 x + p 2 y + m ()I getWidth c method_3319 + m (I)V setWidth c method_35782 + p 1 width + m ()I getHeight d method_3320 + m (I)V setHeight d method_35783 + p 1 height + m (IIII)V + p 1 xPos + p 2 yPos + p 3 width + p 4 height +c net/minecraft/client/renderer/RenderBuffers gff net/minecraft/class_4599 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBufferPack a field_20956 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPool; sectionBufferPool b field_46900 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource c field_46901 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; crumblingBufferSource d field_20959 + f Lnet/minecraft/client/renderer/OutlineBufferSource; outlineBufferSource e field_20961 + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBufferPack a method_22997 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;)V method_54639 a method_54639 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/client/renderer/RenderType;)V put a method_23798 + p 0 mapBuilders + p 1 renderType + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPool; sectionBufferPool b method_54640 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/client/renderer/RenderType;)V method_54641 b method_54641 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource c method_23000 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; crumblingBufferSource d method_23001 + m ()Lnet/minecraft/client/renderer/OutlineBufferSource; outlineBufferSource e method_23003 + m (I)V + p 1 bufferCount +c net/minecraft/client/renderer/RenderStateShard gfg net/minecraft/class_4668 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_SHADER A field_29407 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_EMISSIVE_SHADER B field_38344 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SMOOTH_CUTOUT_SHADER C field_29408 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_BEACON_BEAM_SHADER D field_29409 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_DECAL_SHADER E field_29410 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_NO_OUTLINE_SHADER F field_29411 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SHADOW_SHADER G field_29412 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_ALPHA_SHADER H field_29413 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_EYES_SHADER I field_29414 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENERGY_SWIRL_SHADER J field_29415 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LEASH_SHADER K field_29416 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_WATER_MASK_SHADER L field_29417 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_OUTLINE_SHADER M field_29418 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ARMOR_ENTITY_GLINT_SHADER N field_29420 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GLINT_TRANSLUCENT_SHADER O field_29421 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GLINT_SHADER P field_29422 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_GLINT_SHADER Q field_29424 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_GLINT_DIRECT_SHADER R field_29425 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CRUMBLING_SHADER S field_29426 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_SHADER T field_29427 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_BACKGROUND_SHADER U field_42517 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_INTENSITY_SHADER V field_33628 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_SEE_THROUGH_SHADER W field_29428 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_BACKGROUND_SEE_THROUGH_SHADER X field_42518 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_INTENSITY_SEE_THROUGH_SHADER Y field_33629 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LIGHTNING_SHADER Z field_29429 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; COLOR_DEPTH_WRITE aA field_21349 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; COLOR_WRITE aB field_21350 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; DEPTH_WRITE aC field_21351 + f D MAX_ENCHANTMENT_GLINT_SPEED_MILLIS a field_42230 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; NO_LAYERING aD field_21352 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; POLYGON_OFFSET_LAYERING aE field_21353 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; VIEW_OFFSET_Z_LAYERING aF field_22241 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; MAIN_TARGET aG field_21358 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; OUTLINE_TARGET aH field_21359 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; TRANSLUCENT_TARGET aI field_25280 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; PARTICLES_TARGET aJ field_25281 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; WEATHER_TARGET aK field_25282 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; CLOUDS_TARGET aL field_25283 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; ITEM_ENTITY_TARGET aM field_25643 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; DEFAULT_LINE aN field_21360 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; NO_COLOR_LOGIC aO field_44815 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; OR_REVERSE_COLOR_LOGIC aP field_44816 + f F VIEW_SCALE_Z_EPSILON aQ field_32771 + f Ljava/lang/Runnable; setupState aR field_21361 + f Ljava/lang/Runnable; clearState aS field_21362 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRIPWIRE_SHADER aa field_29430 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_END_PORTAL_SHADER ab field_29431 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_END_GATEWAY_SHADER ac field_29432 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CLOUDS_SHADER ad field_48949 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LINES_SHADER ae field_29433 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_SHADER af field_44817 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_OVERLAY_SHADER ag field_44818 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_TEXT_HIGHLIGHT_SHADER ah field_44819 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_GHOST_RECIPE_OVERLAY_SHADER ai field_44820 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_BREEZE_WIND_SHADER aj field_47463 + f Lnet/minecraft/client/renderer/RenderStateShard$TextureStateShard; BLOCK_SHEET_MIPPED ak field_21376 + f Lnet/minecraft/client/renderer/RenderStateShard$TextureStateShard; BLOCK_SHEET al field_21377 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; NO_TEXTURE am field_21378 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; DEFAULT_TEXTURING an field_21379 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; GLINT_TEXTURING ao field_21381 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; ENTITY_GLINT_TEXTURING ap field_21382 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; LIGHTMAP aq field_21383 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; NO_LIGHTMAP ar field_21384 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; OVERLAY as field_21385 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; NO_OVERLAY at field_21386 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; CULL au field_21344 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; NO_CULL av field_21345 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; NO_DEPTH_TEST aw field_21346 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; EQUAL_DEPTH_TEST ax field_21347 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; LEQUAL_DEPTH_TEST ay field_21348 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; GREATER_DEPTH_TEST az field_44814 + f Ljava/lang/String; name b field_21363 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; NO_TRANSPARENCY c field_21364 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; ADDITIVE_TRANSPARENCY d field_21366 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; LIGHTNING_TRANSPARENCY e field_21367 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; GLINT_TRANSPARENCY f field_21368 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; CRUMBLING_TRANSPARENCY g field_21369 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; TRANSLUCENT_TRANSPARENCY h field_21370 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; NO_SHADER i field_29434 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_LIGHTMAP_SHADER j field_29437 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_SHADER k field_29438 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_TEX_SHADER l field_29440 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_TEX_LIGHTMAP_SHADER m field_29441 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_SHADER n field_29442 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_SOLID_SHADER o field_29443 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CUTOUT_MIPPED_SHADER p field_29444 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CUTOUT_SHADER q field_29445 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRANSLUCENT_SHADER r field_29446 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRANSLUCENT_MOVING_BLOCK_SHADER s field_29447 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ARMOR_CUTOUT_NO_CULL_SHADER t field_29449 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SOLID_SHADER u field_29450 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_SHADER v field_29451 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_NO_CULL_SHADER w field_29452 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_NO_CULL_Z_OFFSET_SHADER x field_29404 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ITEM_ENTITY_TRANSLUCENT_CULL_SHADER y field_29405 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_CULL_SHADER z field_29406 + m ()V method_23537 A method_23537 + m ()V method_23538 B method_23538 + m ()V method_23539 C method_23539 + m ()V method_23540 D method_23540 + m ()V method_23541 E method_23541 + m ()V method_23542 F method_23542 + m ()V method_23502 G method_23502 + m ()V method_29368 H method_29368 + m ()V method_23504 I method_23504 + m ()V method_23505 J method_23505 + m ()V method_29994 K method_29994 + m ()V method_30675 L method_30675 + m ()V method_29995 M method_29995 + m ()V method_29370 N method_29370 + m ()V method_23510 O method_23510 + m ()V method_23511 P method_23511 + m ()V method_23514 Q method_23514 + m ()V method_23515 R method_23515 + m ()V setupRenderState a method_23516 + m (F)V setupGlintTexturing a method_23517 + p 0 scale + m ()V clearRenderState b method_23518 + m ()V method_51780 c method_51780 + m ()V method_51781 d method_51781 + m ()V method_51782 e method_51782 + m ()V method_51783 f method_51783 + m ()V method_29376 g method_29376 + m ()V method_29377 h method_29377 + m ()V method_29378 i method_29378 + m ()V method_23519 j method_23519 + m ()V method_23520 k method_23520 + m ()V method_34552 l method_34552 + m ()V method_23522 m method_23522 + m ()V method_34553 n method_34553 + m ()V method_34554 o method_34554 + m ()V method_34555 p method_34555 + m ()V method_23524 q method_23524 + m ()V method_34556 r method_34556 + m ()V method_23801 s method_23801 + m ()V method_24467 t method_24467 + m ()V method_23531 u method_23531 + m ()V method_23532 v method_23532 + m ()V method_23533 w method_23533 + m ()V method_23534 x method_23534 + m ()V method_23535 y method_23535 + m ()V method_23536 z method_23536 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 name + p 2 setupState + p 3 clearState + m ()V +c net/minecraft/client/renderer/RenderStateShard$BooleanStateShard gfg$a net/minecraft/class_4668$class_4670 + f Z enabled aQ field_21390 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;Z)V + p 1 name + p 2 setupState + p 3 clearState + p 4 enabled +c net/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard gfg$b net/minecraft/class_4668$class_8559 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$CullStateShard gfg$c net/minecraft/class_4668$class_4671 + m (Z)V method_23545 a method_23545 + m (Z)V method_23546 b method_23546 + m (Z)V + p 1 useCull +c net/minecraft/client/renderer/RenderStateShard$DepthTestStateShard gfg$d net/minecraft/class_4668$class_4672 + f Ljava/lang/String; functionName aQ field_22242 + m (I)V method_23547 a method_23547 + m (I)V method_23548 b method_23548 + m (Ljava/lang/String;I)V + p 1 functionName + p 2 depthFunc +c net/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard gfg$e net/minecraft/class_4668$class_5939 + m ()Ljava/util/Optional; cutoutTexture c method_23564 + m ()V method_34557 d method_34557 + m ()V method_34558 e method_34558 + m (Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 setupState + p 2 clearState + m ()V +c net/minecraft/client/renderer/RenderStateShard$LayeringStateShard gfg$f net/minecraft/class_4668$class_4675 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$LightmapStateShard gfg$g net/minecraft/class_4668$class_4676 + m (Z)V method_23551 a method_23551 + m (Z)V method_23552 b method_23552 + m (Z)V + p 1 useLightmap +c net/minecraft/client/renderer/RenderStateShard$LineStateShard gfg$h net/minecraft/class_4668$class_4677 + f Ljava/util/OptionalDouble; width aQ field_21392 + m (Ljava/util/OptionalDouble;)V method_23553 a method_23553 + m (Ljava/util/OptionalDouble;)V method_23554 b method_23554 + m (Ljava/util/OptionalDouble;)V + p 1 width +c net/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard gfg$i net/minecraft/class_4668$class_5940 + f Ljava/util/Optional; cutoutTexture aQ field_29453 + m (Lcom/google/common/collect/ImmutableList;)V method_34559 a method_34559 + m ()Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder; builder d method_34560 + m ()V method_34561 e method_34561 + m (Lcom/google/common/collect/ImmutableList;)V + p 1 textures +c net/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder gfg$i$a net/minecraft/class_4668$class_5940$class_5941 + f Lcom/google/common/collect/ImmutableList$Builder; builder a field_29454 + m ()Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard; build a method_34562 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder; add a method_34563 + p 1 texture + p 2 blur + p 3 mipmap + m ()V +c net/minecraft/client/renderer/RenderStateShard$OffsetTexturingStateShard gfg$j net/minecraft/class_4668$class_4682 + m (FF)V method_23561 a method_23561 + m ()V method_23562 c method_23562 + m (FF)V + p 1 u + p 2 v +c net/minecraft/client/renderer/RenderStateShard$OutputStateShard gfg$k net/minecraft/class_4668$class_4678 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$OverlayStateShard gfg$l net/minecraft/class_4668$class_4679 + m (Z)V method_23555 a method_23555 + m (Z)V method_23556 b method_23556 + m (Z)V + p 1 useOverlay +c net/minecraft/client/renderer/RenderStateShard$ShaderStateShard gfg$m net/minecraft/class_4668$class_5942 + f Ljava/util/Optional; shader aQ field_29455 + m (Ljava/util/function/Supplier;)V method_34564 a method_34564 + m ()V method_34565 c method_34565 + m ()V method_34566 d method_34566 + m ()Lnet/minecraft/client/renderer/ShaderInstance; method_34567 e method_34567 + m ()V method_34568 f method_34568 + m (Ljava/util/function/Supplier;)V + p 1 shader + m ()V +c net/minecraft/client/renderer/RenderStateShard$TextureStateShard gfg$n net/minecraft/class_4668$class_4683 + f Ljava/util/Optional; texture aQ field_21397 + f Z blur aR field_21398 + f Z mipmap aS field_21399 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V method_23563 a method_23563 + m ()V method_23567 d method_23567 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V + p 1 texture + p 2 blur + p 3 mipmap +c net/minecraft/client/renderer/RenderStateShard$TexturingStateShard gfg$o net/minecraft/class_4668$class_4684 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$TransparencyStateShard gfg$p net/minecraft/class_4668$class_4685 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard gfg$q net/minecraft/class_4668$class_4686 + f Z writeColor aQ field_21400 + f Z writeDepth aR field_21401 + m (ZZ)V method_23568 a method_23568 + m (ZZ)V method_23569 b method_23569 + m (ZZ)V + p 1 writeColor + p 2 writeDepth +c net/minecraft/client/renderer/RenderType gfh net/minecraft/class_1921 + f I BIG_BUFFER_SIZE aQ field_32772 + f I SMALL_BUFFER_SIZE aR field_32774 + f I TRANSIENT_BUFFER_SIZE aS field_32775 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; LINES aT field_21695 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; LINE_STRIP aU field_29456 + f I MEGABYTE aV field_32777 + f Lnet/minecraft/client/renderer/RenderType; SOLID aW field_9178 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT_MIPPED aX field_9175 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT aY field_9174 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT aZ field_9179 + f Lnet/minecraft/client/renderer/RenderType; TEXT_BACKGROUND bA field_42519 + f Ljava/util/function/Function; TEXT_INTENSITY bB field_33630 + f Ljava/util/function/Function; TEXT_POLYGON_OFFSET bC field_34002 + f Ljava/util/function/Function; TEXT_INTENSITY_POLYGON_OFFSET bD field_34003 + f Ljava/util/function/Function; TEXT_SEE_THROUGH bE field_29639 + f Lnet/minecraft/client/renderer/RenderType; TEXT_BACKGROUND_SEE_THROUGH bF field_42520 + f Ljava/util/function/Function; TEXT_INTENSITY_SEE_THROUGH bG field_33631 + f Lnet/minecraft/client/renderer/RenderType; LIGHTNING bH field_20970 + f Lnet/minecraft/client/renderer/RenderType; DRAGON_RAYS bI field_52255 + f Lnet/minecraft/client/renderer/RenderType; DRAGON_RAYS_DEPTH bJ field_52307 + f Lnet/minecraft/client/renderer/RenderType; TRIPWIRE bK field_25644 + f Lnet/minecraft/client/renderer/RenderType; END_PORTAL bL field_29457 + f Lnet/minecraft/client/renderer/RenderType; END_GATEWAY bM field_29458 + f Lnet/minecraft/client/renderer/RenderType; CLOUDS bN field_48950 + f Lnet/minecraft/client/renderer/RenderType; CLOUDS_DEPTH_ONLY bO field_48951 + f Ljava/util/function/Function; DEBUG_LINE_STRIP bP field_42521 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_FILLED_BOX bQ field_42522 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_QUADS bR field_42523 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_STRUCTURE_QUADS bS field_52256 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_SECTION_QUADS bT field_44673 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI bU field_44821 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_OVERLAY bV field_44822 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_TEXT_HIGHLIGHT bW field_44823 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_GHOST_RECIPE_OVERLAY bX field_44824 + f Lcom/google/common/collect/ImmutableList; CHUNK_BUFFER_LAYERS bY field_39002 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format bZ field_20972 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_MOVING_BLOCK ba field_25285 + f Ljava/util/function/Function; ARMOR_CUTOUT_NO_CULL bb field_29622 + f Ljava/util/function/Function; ENTITY_SOLID bc field_29623 + f Ljava/util/function/Function; ENTITY_CUTOUT bd field_29624 + f Ljava/util/function/BiFunction; ENTITY_CUTOUT_NO_CULL be field_29625 + f Ljava/util/function/BiFunction; ENTITY_CUTOUT_NO_CULL_Z_OFFSET bf field_29626 + f Ljava/util/function/Function; ITEM_ENTITY_TRANSLUCENT_CULL bg field_29627 + f Ljava/util/function/Function; ENTITY_TRANSLUCENT_CULL bh field_29628 + f Ljava/util/function/BiFunction; ENTITY_TRANSLUCENT bi field_29629 + f Ljava/util/function/BiFunction; ENTITY_TRANSLUCENT_EMISSIVE bj field_38345 + f Ljava/util/function/Function; ENTITY_SMOOTH_CUTOUT bk field_29630 + f Ljava/util/function/BiFunction; BEACON_BEAM bl field_29631 + f Ljava/util/function/Function; ENTITY_DECAL bm field_29632 + f Ljava/util/function/Function; ENTITY_NO_OUTLINE bn field_29633 + f Ljava/util/function/Function; ENTITY_SHADOW bo field_29634 + f Ljava/util/function/Function; DRAGON_EXPLOSION_ALPHA bp field_29635 + f Ljava/util/function/BiFunction; EYES bq field_29636 + f Lnet/minecraft/client/renderer/RenderType; LEASH br field_20964 + f Lnet/minecraft/client/renderer/RenderType; WATER_MASK bs field_20965 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_ENTITY_GLINT bt field_24473 + f Lnet/minecraft/client/renderer/RenderType; GLINT_TRANSLUCENT bu field_26373 + f Lnet/minecraft/client/renderer/RenderType; GLINT bv field_20967 + f Lnet/minecraft/client/renderer/RenderType; ENTITY_GLINT bw field_20968 + f Lnet/minecraft/client/renderer/RenderType; ENTITY_GLINT_DIRECT bx field_25488 + f Ljava/util/function/Function; CRUMBLING by field_29637 + f Ljava/util/function/Function; TEXT bz field_29638 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode ca field_20973 + f I bufferSize cb field_20806 + f Z affectsCrumbling cc field_20975 + f Z sortOnUpload cd field_21402 + m ()Lnet/minecraft/client/renderer/RenderType; debugFilledBox A method_49047 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_37348 A method_37348 + m ()Lnet/minecraft/client/renderer/RenderType; debugQuads B method_49042 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_36436 B method_36436 + m ()Lnet/minecraft/client/renderer/RenderType; debugStructureQuads C method_61045 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_36437 C method_36437 + m ()Lnet/minecraft/client/renderer/RenderType; debugSectionQuads D method_51456 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34833 D method_34833 + m ()Lnet/minecraft/client/renderer/RenderType; gui E method_51784 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34834 E method_34834 + m ()Lnet/minecraft/client/renderer/RenderType; guiOverlay F method_51785 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34835 F method_34835 + m ()Lnet/minecraft/client/renderer/RenderType; guiTextHighlight G method_51786 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34837 G method_34837 + m ()Lnet/minecraft/client/renderer/RenderType; guiGhostRecipeOverlay H method_51787 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34838 H method_34838 + m ()Ljava/util/List; chunkBufferLayers I method_22720 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34839 I method_34839 + m ()I bufferSize J method_22722 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34840 J method_34840 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; format K method_23031 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34822 K method_34822 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode L method_23033 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34823 L method_34823 + m ()Ljava/util/Optional; outline M method_23289 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34824 M method_34824 + m ()Z isOutline N method_24295 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34825 N method_34825 + m ()Z affectsCrumbling O method_23037 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34826 O method_34826 + m ()Z canConsolidateConsecutiveGeometry P method_43332 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34827 P method_34827 + m ()Z sortOnUpload Q method_60894 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; translucentMovingBlockState R method_29381 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; tripwireState S method_29996 + m (D)Lnet/minecraft/client/renderer/RenderType; debugLineStrip a method_49043 + p 0 width + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; armorCutoutNoCull a method_25448 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;FF)Lnet/minecraft/client/renderer/RenderType; breezeWind a method_55251 + p 0 location + p 1 u + p 2 v + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;)Lnet/minecraft/client/renderer/RenderType; method_34836 a method_34836 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34829 a method_34829 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCull a method_24293 + p 0 location + p 1 outline + m (Lcom/mojang/blaze3d/vertex/MeshData;)V draw a method_60895 + p 1 meshData + m (Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState; translucentState a method_34569 + p 0 state + m (Ljava/lang/Double;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; method_49044 a method_49044 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; createArmorCutoutNoCull a method_53490 + p 0 name + p 1 id + p 2 equalDepthTest + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;ILnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; create a method_24048 + p 0 name + p 1 format + p 2 mode + p 3 bufferSize + p 4 state + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; create a method_24049 + p 0 name + p 1 format + p 2 mode + p 3 bufferSize + p 4 affectsCrumbling + p 5 sortOnUpload + p 6 state + m (Z)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; createClouds a method_56848 + p 0 color + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; createArmorDecalCutoutNoCull b method_53491 + p 0 id + m (Lnet/minecraft/resources/ResourceLocation;FF)Lnet/minecraft/client/renderer/RenderType; energySwirl b method_23018 + p 0 location + p 1 u + p 2 v + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_42598 b method_42598 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCullZOffset b method_28115 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; solid c method_23577 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entitySolid c method_23572 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34830 c method_34830 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityTranslucent c method_24294 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; cutoutMipped d method_23579 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutout d method_23576 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34831 d method_34831 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityTranslucentEmissive d method_42599 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; cutout e method_23581 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCull e method_23578 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34832 e method_34832 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; beaconBeam e method_23592 + p 0 location + p 1 colorFlag + m ()Lnet/minecraft/client/renderer/RenderType; translucent f method_23583 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCullZOffset f method_28116 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; translucentMovingBlock g method_29380 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; itemEntityTranslucentCull g method_29379 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; leash h method_23587 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucentCull h method_23689 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; waterMask i method_23589 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucent i method_23580 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; armorEntityGlint j method_27949 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucentEmissive j method_42600 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; glintTranslucent k method_30676 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entitySmoothCutout k method_23584 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; glint l method_23590 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityDecal l method_23586 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; entityGlint m method_23591 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityNoOutline m method_23588 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; entityGlintDirect n method_29707 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityShadow n method_24469 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; textBackground o method_49045 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; dragonExplosionAlpha o method_23573 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; textBackgroundSeeThrough p method_49046 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; eyes p method_23026 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; lightning q method_23593 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; breezeEyes q method_55252 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; dragonRays r method_61046 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; outline r method_23287 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; dragonRaysDepth s method_61157 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; crumbling s method_23570 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; tripwire t method_29997 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; text t method_23028 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; endPortal u method_23574 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensity u method_36434 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; endGateway v method_34571 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textPolygonOffset v method_37345 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; clouds w method_56849 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensityPolygonOffset w method_37346 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; cloudsDepthOnly x method_56850 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textSeeThrough x method_23030 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; lines y method_23594 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensitySeeThrough y method_36435 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; lineStrip z method_34572 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_37347 z method_37347 + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLjava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 name + p 2 format + p 3 mode + p 4 bufferSize + p 5 affectsCrumbling + p 6 sortOnUpload + p 7 setupState + p 8 clearState + m ()V +c net/minecraft/client/renderer/RenderType$CompositeRenderType gfh$a net/minecraft/class_1921$class_4687 + f Ljava/util/function/BiFunction; OUTLINE aV field_29640 + f Lnet/minecraft/client/renderer/RenderType$CompositeState; state aW field_21403 + f Ljava/util/Optional; outline aX field_21697 + f Z isOutline aY field_21851 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; state R method_35784 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;)Lnet/minecraft/client/renderer/RenderType; method_34844 a method_34844 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;)V method_34842 a method_34842 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34843 a method_34843 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;)V method_23595 b method_23595 + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)V + p 1 name + p 2 format + p 3 mode + p 4 bufferSize + p 5 affectsCrumbling + p 6 sortOnUpload + p 7 state + m ()V +c net/minecraft/client/renderer/RenderType$CompositeState gfh$b net/minecraft/class_1921$class_4688 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; textureState a field_21406 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; shaderState b field_29461 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; transparencyState c field_21407 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; depthTestState d field_21411 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; cullState e field_21412 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; lightmapState f field_21413 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; overlayState g field_21414 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; layeringState h field_21416 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; outputState i field_21417 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; texturingState j field_21418 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; writeMaskState k field_21419 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; lineState l field_21420 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; colorLogicState m field_44825 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; outlineProperty n field_21852 + f Lcom/google/common/collect/ImmutableList; states o field_21422 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; builder a method_23598 + m (Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard;Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard;Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard;Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard;Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard;Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard;Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard;Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard;Lnet/minecraft/client/renderer/RenderType$OutlineProperty;)V + p 1 textureState + p 2 shaderState + p 3 transparencyState + p 4 depthState + p 5 cullState + p 6 lightmapState + p 7 overlayState + p 8 layeringState + p 9 outputState + p 10 texturingState + p 11 writeMaskState + p 12 lineState + p 13 colorLogicState + p 14 outlineProperty +c net/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder gfh$b$a net/minecraft/class_1921$class_4688$class_4689 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; textureState a field_29462 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; shaderState b field_29463 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; transparencyState c field_21424 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; depthTestState d field_21428 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; cullState e field_21429 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; lightmapState f field_21430 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; overlayState g field_21431 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; layeringState h field_21433 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; outputState i field_21434 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; texturingState j field_21435 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; writeMaskState k field_21436 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; lineState l field_21437 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; colorLogicState m field_44826 + m (Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setColorLogicState a method_51788 + p 1 colorLogicState + m (Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setCullState a method_23603 + p 1 cullState + m (Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setDepthTestState a method_23604 + p 1 depthTestState + m (Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTextureState a method_34577 + p 1 textureState + m (Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLayeringState a method_23607 + p 1 layerState + m (Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLightmapState a method_23608 + p 1 lightmapState + m (Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLineState a method_23609 + p 1 lineState + m (Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setOutputState a method_23610 + p 1 outputState + m (Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setOverlayState a method_23611 + p 1 overlayState + m (Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setShaderState a method_34578 + p 1 shaderState + m (Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTexturingState a method_23614 + p 1 texturingState + m (Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTransparencyState a method_23615 + p 1 transparencyState + m (Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setWriteMaskState a method_23616 + p 1 writeMaskState + m (Lnet/minecraft/client/renderer/RenderType$OutlineProperty;)Lnet/minecraft/client/renderer/RenderType$CompositeState; createCompositeState a method_24297 + p 1 outlineState + m (Z)Lnet/minecraft/client/renderer/RenderType$CompositeState; createCompositeState a method_23617 + p 1 outline + m ()V +c net/minecraft/client/renderer/RenderType$OutlineProperty gfh$c net/minecraft/class_1921$class_4750 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; NONE a field_21853 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; IS_OUTLINE b field_21854 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; AFFECTS_OUTLINE c field_21855 + f Ljava/lang/String; name d field_22243 + f [Lnet/minecraft/client/renderer/RenderType$OutlineProperty; $VALUES e field_21856 + m ()[Lnet/minecraft/client/renderer/RenderType$OutlineProperty; $values a method_36916 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/renderer/RunningTrimmedMean gfi net/minecraft/class_4740 + f [J values a field_21800 + f I count b field_21801 + f I cursor c field_21802 + m (J)J registerValueAndGetMean a method_24214 + p 1 value + m (I)V + p 1 size +c net/minecraft/client/renderer/ScreenEffectRenderer gfj net/minecraft/class_4603 + f Lnet/minecraft/resources/ResourceLocation; UNDERWATER_LOCATION a field_20986 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/state/BlockState; getViewBlockingState a method_24225 + p 0 player + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderScreenEffect a method_23067 + p 0 minecraft + p 1 poseStack + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderTex a method_23068 + p 0 texture + p 1 poseStack + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderWater b method_23069 + p 0 minecraft + p 1 poseStack + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderFire c method_23070 + p 0 minecraft + p 1 poseStack + m ()V + m ()V +c net/minecraft/client/renderer/SectionBufferBuilderPack gfk net/minecraft/class_750 + f I TOTAL_BUFFERS_SIZE a field_46902 + f Ljava/util/List; RENDER_TYPES b field_52159 + f Ljava/util/Map; buffers c field_3951 + m ()V clearAll a method_22705 + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer a method_3154 + p 1 renderType + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;)V method_60896 a method_60896 + m ()V discardAll b method_23501 + m ()V + m ()V +c net/minecraft/client/renderer/SectionBufferBuilderPool gfl net/minecraft/class_8901 + f Lorg/slf4j/Logger; LOGGER a field_46904 + f Ljava/util/Queue; freeBuffers b field_46905 + f I freeBufferCount c field_46906 + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPack; acquire a method_54642 + m (I)Lnet/minecraft/client/renderer/SectionBufferBuilderPool; allocate a method_54643 + p 0 bufferCount + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)V release a method_54644 + p 1 buffer + m ()Z isEmpty b method_54645 + m ()I getFreeBufferCount c method_54646 + m (Ljava/util/List;)V + p 1 freeBuffers + m ()V +c net/minecraft/client/renderer/SectionOcclusionGraph gfm net/minecraft/class_8679 + f Lorg/slf4j/Logger; LOGGER a field_45617 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_45618 + f I MINIMUM_ADVANCED_CULLING_DISTANCE c field_45619 + f D CEILED_SECTION_DIAGONAL d field_45620 + f Z needsFullUpdate e field_45621 + f Ljava/util/concurrent/Future; fullUpdateTask f field_45622 + f Lnet/minecraft/client/renderer/ViewArea; viewArea g field_45623 + f Ljava/util/concurrent/atomic/AtomicReference; currentGraph h field_45624 + f Ljava/util/concurrent/atomic/AtomicReference; nextGraphEvents i field_45625 + f Ljava/util/concurrent/atomic/AtomicBoolean; needsFrustumUpdate j field_45626 + m ()V invalidate a method_52817 + m (J)Ljava/util/List; method_52818 a method_52818 + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_52819 + p 1 chunkPos + m (Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/Vec3;Z)V method_52820 a method_52820 + m (Lnet/minecraft/client/Camera;Ljava/util/Queue;)V initializeQueueForFullUpdate a method_52821 + p 1 camera + p 2 nodeQueue + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents;Lnet/minecraft/world/level/ChunkPos;)V addNeighbors a method_52822 + p 1 graphEvents + p 2 chunkPos + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphState;)V queueSectionsWithNewNeighbors a method_52823 + p 1 graphState + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphState;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)V method_52824 a method_52824 + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage;Lnet/minecraft/world/phys/Vec3;Ljava/util/Queue;ZLjava/util/function/Consumer;)V runUpdates a method_52825 + p 1 graphStorage + p 2 cameraPosition + p 3 nodeQueue + p 4 smartCull + p 5 sections + m (Lnet/minecraft/client/renderer/ViewArea;)V waitAndReset a method_52826 + p 1 viewArea + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V onSectionCompiled a method_52827 + p 1 section + m (Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;)V addSectionsInFrustum a method_52828 + p 1 frustum + p 2 sections + m (Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V method_52829 a method_52829 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)D method_52830 a method_52830 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; getRelativeFrom a method_52831 + p 1 pos + p 2 section + p 3 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isInViewDistance a method_52832 + p 1 pos + p 2 origin + m (ZLnet/minecraft/client/Camera;Lnet/minecraft/world/phys/Vec3;)V scheduleFullUpdate a method_52833 + p 1 smartCull + p 2 camera + p 3 cameraPosition + m (ZLnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;)V update a method_52834 + p 1 smartCull + p 2 camera + p 3 frustum + p 4 sections + m (ZLnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;Lnet/minecraft/world/phys/Vec3;)V runPartialUpdate a method_52835 + p 1 smartCull + p 2 frustum + p 3 sections + p 4 cameraPosition + m ()Z consumeFrustumUpdate b method_52836 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; getNode b method_52837 + p 1 section + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V method_52838 c method_52838 + m ()V + m ()V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents gfm$a net/minecraft/class_8679$class_8680 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunksWhichReceivedNeighbors a comp_1618 + f Ljava/util/concurrent/BlockingQueue; sectionsToPropagateFrom b comp_1619 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; chunksWhichReceivedNeighbors a comp_1618 + m ()Ljava/util/concurrent/BlockingQueue; sectionsToPropagateFrom b comp_1619 + m ()V + m (Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/concurrent/BlockingQueue;)V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphState gfm$b net/minecraft/class_8679$class_8681 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage; storage a comp_1620 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents; events b comp_1621 + m ()Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage; storage a comp_1620 + m ()Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents; events b comp_1621 + m (I)V + p 1 size + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage;Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents;)V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage gfm$c net/minecraft/class_8679$class_6600 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$SectionToNodeMap; sectionToNodeMap a field_45627 + f Ljava/util/LinkedHashSet; renderSections b field_34819 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunksWaitingForNeighbors c field_45628 + m (I)V + p 1 size +c net/minecraft/client/renderer/SectionOcclusionGraph$Node gfm$d net/minecraft/class_8679$class_762 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; section a field_4124 + f I step b field_4122 + f B sourceDirections c field_4125 + f B directions d field_4126 + m ()Z hasSourceDirections a method_34813 + m (BLnet/minecraft/core/Direction;)V setDirections a method_3299 + p 1 currentValue + p 2 direction + m (I)Z hasSourceDirection a method_34814 + p 1 direction + m (Lnet/minecraft/core/Direction;)Z hasDirection a method_3298 + p 1 direction + m (Lnet/minecraft/core/Direction;)V addSourceDirection b method_34816 + p 1 sourceDirection + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/core/Direction;I)V + p 1 section + p 2 sourceDirection + p 3 step +c net/minecraft/client/renderer/SectionOcclusionGraph$SectionToNodeMap gfm$e net/minecraft/class_8679$class_5972 + f [Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; nodes a field_29620 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; get a method_34820 + p 1 section + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)V put a method_34821 + p 1 section + p 2 node + m (I)V + p 1 size +c net/minecraft/client/renderer/ShaderInstance gfn net/minecraft/class_5944 + f Ljava/util/List; uniforms A field_29490 + f Ljava/util/List; uniformLocations B field_29491 + f Ljava/util/Map; uniformMap C field_29492 + f I programId D field_29493 + f Ljava/lang/String; name E field_29494 + f Z dirty F field_29495 + f Lcom/mojang/blaze3d/shaders/Program; vertexProgram G field_29467 + f Lcom/mojang/blaze3d/shaders/Program; fragmentProgram H field_29468 + f Lcom/mojang/blaze3d/vertex/VertexFormat; vertexFormat I field_29469 + f Ljava/lang/String; SHADER_PATH a field_32778 + f Lcom/mojang/blaze3d/shaders/Uniform; MODEL_VIEW_MATRIX b field_29470 + f Lcom/mojang/blaze3d/shaders/Uniform; PROJECTION_MATRIX c field_29471 + f Lcom/mojang/blaze3d/shaders/Uniform; TEXTURE_MATRIX d field_29472 + f Lcom/mojang/blaze3d/shaders/Uniform; SCREEN_SIZE e field_29473 + f Lcom/mojang/blaze3d/shaders/Uniform; COLOR_MODULATOR f field_29474 + f Lcom/mojang/blaze3d/shaders/Uniform; LIGHT0_DIRECTION g field_29475 + f Lcom/mojang/blaze3d/shaders/Uniform; LIGHT1_DIRECTION h field_29476 + f Lcom/mojang/blaze3d/shaders/Uniform; GLINT_ALPHA i field_42231 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_START j field_29477 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_END k field_29478 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_COLOR l field_29479 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_SHAPE m field_36373 + f Lcom/mojang/blaze3d/shaders/Uniform; LINE_WIDTH n field_29480 + f Lcom/mojang/blaze3d/shaders/Uniform; GAME_TIME o field_29481 + f Lcom/mojang/blaze3d/shaders/Uniform; CHUNK_OFFSET p field_29482 + f Ljava/lang/String; SHADER_CORE_PATH q field_40512 + f Ljava/lang/String; SHADER_INCLUDE_PATH r field_32779 + f Lorg/slf4j/Logger; LOGGER s field_29483 + f Lcom/mojang/blaze3d/shaders/AbstractUniform; DUMMY_UNIFORM t field_29484 + f Z ALWAYS_REAPPLY u field_32780 + f Lnet/minecraft/client/renderer/ShaderInstance; lastAppliedShader v field_29485 + f I lastProgramId w field_29486 + f Ljava/util/Map; samplerMap x field_29487 + f Ljava/util/List; samplerNames y field_29488 + f Ljava/util/List; samplerLocations z field_29489 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Program; getOrCreate a method_34579 + p 0 resourceProvider + p 1 programType + p 2 name + m (Lcom/google/gson/JsonElement;)V parseSamplerNode a method_34580 + p 1 json + m (Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/platform/Window;)V setDefaultUniforms a method_60897 + p 1 mode + p 2 projectionMatrix + p 3 frustrumMatrix + p 4 window + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Uniform; getUniform a method_34582 + p 1 name + m (Ljava/lang/String;Ljava/lang/Object;)V setSampler a method_34583 + p 1 name + p 2 textureId + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_34584 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/AbstractUniform; safeGetUniform b method_35785 + p 1 name + m ()V clear f method_34585 + m ()V apply g method_34586 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; getVertexFormat h method_35786 + m ()Ljava/lang/String; getName i method_35787 + m ()V updateLocations j method_34588 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;)V + p 1 resourceProvider + p 2 name + p 3 vertexFormat + m ()V +c net/minecraft/client/renderer/ShaderInstance$1 gfn$1 net/minecraft/class_5944$1 + f Ljava/lang/String; val$relativePath a field_29496 + f Lnet/minecraft/server/packs/resources/ResourceProvider; val$resourceProvider b field_29497 + f Ljava/util/Set; importedPaths c field_29498 + m (Ljava/lang/String;Lnet/minecraft/server/packs/resources/ResourceProvider;)V +c net/minecraft/client/renderer/Sheets gfo net/minecraft/class_4722 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION_RIGHT A field_21722 + f Lnet/minecraft/client/resources/model/Material; ENDER_CHEST_LOCATION B field_21723 + f Lnet/minecraft/client/renderer/RenderType; SHULKER_BOX_SHEET_TYPE C field_21724 + f Lnet/minecraft/client/renderer/RenderType; BED_SHEET_TYPE D field_21725 + f Lnet/minecraft/client/renderer/RenderType; BANNER_SHEET_TYPE E field_21726 + f Lnet/minecraft/client/renderer/RenderType; SHIELD_SHEET_TYPE F field_21727 + f Lnet/minecraft/client/renderer/RenderType; SIGN_SHEET_TYPE G field_21728 + f Lnet/minecraft/client/renderer/RenderType; CHEST_SHEET_TYPE H field_21729 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_TRIMS_SHEET_TYPE I field_42070 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_TRIMS_DECAL_SHEET_TYPE J field_46070 + f Lnet/minecraft/client/renderer/RenderType; SOLID_BLOCK_SHEET K field_21700 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT_BLOCK_SHEET L field_21701 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_ITEM_CULL_BLOCK_SHEET M field_25286 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_CULL_BLOCK_SHEET N field_21703 + f Ljava/util/Map; BANNER_MATERIALS O field_28252 + f Ljava/util/Map; SHIELD_MATERIALS P field_28253 + f Lnet/minecraft/resources/ResourceLocation; SHULKER_SHEET a field_21704 + f Lnet/minecraft/resources/ResourceLocation; BED_SHEET b field_21705 + f Lnet/minecraft/resources/ResourceLocation; BANNER_SHEET c field_21706 + f Lnet/minecraft/resources/ResourceLocation; SHIELD_SHEET d field_21707 + f Lnet/minecraft/resources/ResourceLocation; SIGN_SHEET e field_21708 + f Lnet/minecraft/resources/ResourceLocation; CHEST_SHEET f field_21709 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_TRIMS_SHEET g field_42071 + f Lnet/minecraft/resources/ResourceLocation; DECORATED_POT_SHEET h field_42910 + f Lnet/minecraft/client/resources/model/Material; DEFAULT_SHULKER_TEXTURE_LOCATION i field_21710 + f Ljava/util/List; SHULKER_TEXTURE_LOCATION j field_21711 + f Ljava/util/Map; SIGN_MATERIALS k field_21712 + f Ljava/util/Map; HANGING_SIGN_MATERIALS l field_40515 + f Lnet/minecraft/client/resources/model/Material; BANNER_BASE m field_49769 + f Lnet/minecraft/client/resources/model/Material; SHIELD_BASE n field_49770 + f Ljava/util/Map; DECORATED_POT_MATERIALS o field_42911 + f Lnet/minecraft/client/resources/model/Material; DECORATED_POT_BASE p field_51914 + f Lnet/minecraft/client/resources/model/Material; DECORATED_POT_SIDE q field_51915 + f [Lnet/minecraft/client/resources/model/Material; BED_TEXTURES r field_21713 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION s field_21714 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION_LEFT t field_21715 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION_RIGHT u field_21716 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION v field_21717 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION_LEFT w field_21718 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION_RIGHT x field_21719 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION y field_21720 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION_LEFT z field_21721 + m ()Lnet/minecraft/client/renderer/RenderType; bannerSheet a method_24059 + m (I)[Lnet/minecraft/client/resources/model/Material; method_24060 a method_24060 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/client/resources/model/Material; getDecoratedPotMaterial a method_49341 + p 0 key + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; createDecoratedPotMaterial a method_49342 + p 0 assetId + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/client/resources/model/Material; method_24061 a method_24061 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/state/properties/ChestType;Z)Lnet/minecraft/client/resources/model/Material; chooseMaterial a method_24062 + p 0 blockEntity + p 1 chestType + p 2 holiday + m (Lnet/minecraft/world/level/block/state/properties/ChestType;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/resources/model/Material; chooseMaterial a method_24063 + p 0 chestType + p 1 doubleMaterial + p 2 leftMaterial + p 3 rightMaterial + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getSignMaterial a method_33082 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; chestMaterial a method_24065 + p 0 chestName + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/client/resources/model/Material; method_60576 a method_60576 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/resources/model/Material; getBannerMaterial a method_33081 + p 0 pattern + m (Z)Lnet/minecraft/client/renderer/RenderType; armorTrimsSheet a method_48480 + p 0 decal + m ()Lnet/minecraft/client/renderer/RenderType; shieldSheet b method_24067 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; method_58138 b method_58138 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getHangingSignMaterial b method_45781 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; method_24068 b method_24068 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/resources/model/Material; getShieldMaterial b method_33083 + p 0 pattern + m ()Lnet/minecraft/client/renderer/RenderType; bedSheet c method_24069 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; method_58139 c method_58139 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; createSignMaterial c method_24064 + p 0 woodType + m ()Lnet/minecraft/client/renderer/RenderType; shulkerBoxSheet d method_24070 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; createHangingSignMaterial d method_45782 + p 0 woodType + m ()Lnet/minecraft/client/renderer/RenderType; signSheet e method_24071 + m ()Lnet/minecraft/client/renderer/RenderType; hangingSignSheet f method_45783 + m ()Lnet/minecraft/client/renderer/RenderType; chestSheet g method_24072 + m ()Lnet/minecraft/client/renderer/RenderType; solidBlockSheet h method_24073 + m ()Lnet/minecraft/client/renderer/RenderType; cutoutBlockSheet i method_24074 + m ()Lnet/minecraft/client/renderer/RenderType; translucentItemSheet j method_29382 + m ()Lnet/minecraft/client/renderer/RenderType; translucentCullBlockSheet k method_24076 + m ()V + m ()V +c net/minecraft/client/renderer/Sheets$1 gfo$1 net/minecraft/class_4722$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$ChestType a field_21482 + m ()V +c net/minecraft/client/renderer/SpriteCoordinateExpander gfp net/minecraft/class_4723 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a field_21730 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite b field_21731 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V + p 1 delegate + p 2 sprite +c net/minecraft/client/renderer/ViewArea gfq net/minecraft/class_769 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer a field_4146 + f Lnet/minecraft/world/level/Level; level b field_4151 + f I sectionGridSizeY c field_4149 + f I sectionGridSizeX d field_4148 + f I sectionGridSizeZ e field_4147 + f [Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; sections f field_4150 + f I viewDistance g field_45629 + m ()V releaseAllBuffers a method_3327 + m (DD)V repositionCamera a method_3330 + p 1 viewEntityX + p 3 viewEntityZ + m (I)V setViewDistance a method_3325 + p 1 renderDistanceChunks + m (III)I getSectionIndex a method_3326 + p 1 x + p 2 y + p 3 z + m (IIIZ)V setDirty a method_16040 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + p 4 reRenderOnMainThread + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;)V createSections a method_3324 + p 1 sectionRenderDispatcher + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; getRenderSectionAt a method_3323 + p 1 pos + m ()I getViewDistance b method_52839 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getLevelHeightAccessor c method_52840 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;Lnet/minecraft/world/level/Level;ILnet/minecraft/client/renderer/LevelRenderer;)V + p 1 sectionRenderDispatcher + p 2 level + p 3 viewDistance + p 4 levelRenderer +c net/minecraft/client/renderer/VirtualScreen gfr net/minecraft/class_3682 + f Lnet/minecraft/client/Minecraft; minecraft a field_16256 + f Lcom/mojang/blaze3d/platform/ScreenManager; screenManager b field_16255 + m (Lcom/mojang/blaze3d/platform/DisplayData;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/blaze3d/platform/Window; newWindow a method_16038 + p 1 screenSize + p 2 videoModeName + p 3 title + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/block/BlockModelShaper gfs net/minecraft/class_773 + f Ljava/util/Map; modelByStateCache a field_4162 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager b field_4163 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager a method_3333 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/ModelResourceLocation; stateToModelLocation a method_3336 + p 0 location + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getParticleIcon a method_3339 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getValue a method_3334 + p 0 property + p 1 value + m (Ljava/util/Map;)V replaceCache a method_45784 + p 1 modelByStateCache + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/BakedModel; getBlockModel b method_3335 + p 1 state + m (Ljava/util/Map;)Ljava/lang/String; statePropertiesToString b method_3338 + p 0 propertyValues + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/ModelResourceLocation; stateToModelLocation c method_3340 + p 0 state + m (Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 modelManager +c net/minecraft/client/renderer/block/BlockRenderDispatcher gft net/minecraft/class_776 + f Lnet/minecraft/client/renderer/block/BlockModelShaper; blockModelShaper a field_4168 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer; modelRenderer b field_4170 + f Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer; blockEntityRenderer c field_27742 + f Lnet/minecraft/client/renderer/block/LiquidBlockRenderer; liquidBlockRenderer d field_4167 + f Lnet/minecraft/util/RandomSource; random e field_4169 + f Lnet/minecraft/client/color/block/BlockColors; blockColors f field_20987 + m ()Lnet/minecraft/client/renderer/block/BlockModelShaper; getBlockModelShaper a method_3351 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/BakedModel; getBlockModel a method_3349 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V renderSingleBlock a method_3353 + p 1 state + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 packedOverlay + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderBreakingTexture a method_23071 + p 1 state + p 2 pos + p 3 level + p 4 poseStack + p 5 consumer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;)V renderBatched a method_3355 + p 1 state + p 2 pos + p 3 level + p 4 poseStack + p 5 consumer + p 6 checkSides + p 7 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)V renderLiquid a method_3352 + p 1 pos + p 2 level + p 3 consumer + p 4 blockState + p 5 fluidState + m ()Lnet/minecraft/client/renderer/block/ModelBlockRenderer; getModelRenderer b method_3350 + m (Lnet/minecraft/client/renderer/block/BlockModelShaper;Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer;Lnet/minecraft/client/color/block/BlockColors;)V + p 1 blockModelShaper + p 2 blockEntityRenderer + p 3 blockColors +c net/minecraft/client/renderer/block/BlockRenderDispatcher$1 gft$1 net/minecraft/class_776$1 + f [I $SwitchMap$net$minecraft$world$level$block$RenderShape a field_4172 + m ()V +c net/minecraft/client/renderer/block/LiquidBlockRenderer gfu net/minecraft/class_775 + f F MAX_FLUID_HEIGHT a field_32781 + f [Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; lavaIcons b field_4165 + f [Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; waterIcons c field_4166 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; waterOverlay d field_4164 + m ()V setupSprites a method_3345 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;FFFLnet/minecraft/core/BlockPos;)F calculateAverageHeight a method_40077 + p 1 level + p 2 fluid + p 3 currentHeight + p 4 height1 + p 5 height2 + p 6 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;)F getHeight a method_40078 + p 1 level + p 2 fluid + p 3 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)F getHeight a method_40079 + p 1 level + p 2 fluid + p 3 pos + p 4 blockState + p 5 fluidState + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_3343 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/material/FluidState;)Z shouldRenderFace a method_29708 + p 0 level + p 1 pos + p 2 fluidState + p 3 blockState + p 4 side + p 5 neighborFluid + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)V tesselate a method_3347 + p 1 level + p 2 pos + p 3 buffer + p 4 blockState + p 5 fluidState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isFaceOccludedBySelf a method_29709 + p 0 level + p 1 pos + p 2 state + p 3 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;FLnet/minecraft/world/level/block/state/BlockState;)Z isFaceOccludedByNeighbor a method_3344 + p 0 level + p 1 pos + p 2 side + p 3 height + p 4 blockState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/Direction;FLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isFaceOccludedByState a method_29710 + p 0 level + p 1 face + p 2 height + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)Z isNeighborSameFluid a method_3348 + p 0 firstState + p 1 secondState + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFI)V vertex a method_23072 + p 1 buffer + p 2 x + p 3 y + p 4 z + p 5 red + p 6 green + p 7 blue + p 8 u + p 9 v + p 10 packedLight + m ([FF)V addWeightedHeight a method_40080 + p 1 output + p 2 height + m ()V +c net/minecraft/client/renderer/block/LiquidBlockRenderer$1 gfu$1 net/minecraft/class_775$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_36387 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer gfv net/minecraft/class_778 + f I FACE_CUBIC a field_32782 + f I FACE_PARTIAL b field_32783 + f [Lnet/minecraft/core/Direction; DIRECTIONS c field_27743 + f Lnet/minecraft/client/color/block/BlockColors; blockColors d field_4178 + f I CACHE_SIZE e field_32784 + f Ljava/lang/ThreadLocal; CACHE f field_4179 + m ()V enableCaching a method_20544 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;IIZLcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;Ljava/util/BitSet;)V renderModelFaceFlat a method_3370 + p 1 level + p 2 state + p 3 pos + p 4 packedLight + p 5 packedOverlay + p 6 repackLight + c {@code true} if packed light should be re-calculated + p 7 poseStack + p 8 consumer + p 9 quads + p 10 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;[FLjava/util/BitSet;Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace;I)V renderModelFaceAO a method_3363 + p 1 level + p 2 state + p 3 pos + p 4 poseStack + p 5 consumer + p 6 quads + p 7 shape + c the array, of length 12, to store the shape bounds in + p 8 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + p 9 aoFace + p 10 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;FFFFIIIII)V putQuadData a method_23073 + p 1 level + p 2 state + p 3 pos + p 4 consumer + p 5 pose + p 6 quad + p 7 brightness0 + p 8 brightness1 + p 9 brightness2 + p 10 brightness3 + p 11 lightmap0 + p 12 lightmap1 + p 13 lightmap2 + p 14 lightmap3 + p 15 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;[ILnet/minecraft/core/Direction;[FLjava/util/BitSet;)V calculateShape a method_3364 + c Calculates the shape and corresponding flags for the specified {@code direction} and {@code vertices}, storing the resulting shape in the specified {@code shape} array and the shape flags in {@code shapeFlags}. + p 1 level + p 2 state + p 3 pos + p 4 vertices + p 5 direction + p 6 shape + c the array, of length 12, to store the shape bounds in, or {@code null} to only calculate shape flags + p 7 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateBlock a method_3374 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFLjava/util/List;II)V renderQuadList a method_3365 + p 0 pose + p 1 consumer + p 2 red + p 3 green + p 4 blue + p 5 quads + p 6 packedLight + p 7 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/resources/model/BakedModel;FFFII)V renderModel a method_3367 + p 1 pose + p 2 consumer + p 3 state + p 4 model + p 5 red + p 6 green + p 7 blue + p 8 packedLight + p 9 packedOverlay + m ()V clearCache b method_20545 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateWithAO b method_3361 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateWithoutAO c method_3373 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lnet/minecraft/client/color/block/BlockColors;)V + p 1 blockColors + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$1 gfv$1 net/minecraft/class_778$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4197 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo gfv$a net/minecraft/class_778$class_779 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; DOWN a field_4181 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; UP b field_4182 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; NORTH c field_4183 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; SOUTH d field_4184 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; WEST e field_4187 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; EAST f field_4186 + f [Lnet/minecraft/core/Direction; corners g field_4191 + f Z doNonCubicWeight h field_4189 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert0Weights i field_4192 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert1Weights j field_4185 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert2Weights k field_4180 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert3Weights l field_4188 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; BY_FACING m field_4190 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; $VALUES n field_4193 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; $values a method_36917 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; fromFacing a method_3378 + p 0 facing + m ([Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo;)V method_3383 a method_3383 + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;FZ[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;)V + p 3 corners + p 4 shadeBrightness + c the shade brightness for this direction + p 5 doNonCubicWeight + p 6 vert0Weights + p 7 vert1Weights + p 8 vert2Weights + p 9 vert3Weights + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace gfv$b net/minecraft/class_778$class_780 + f [F brightness a field_4196 + f [I lightmap b field_4194 + m (IIII)I blend a method_3386 + c @return the ambient occlusion light color + p 1 lightColor0 + p 2 lightColor1 + p 3 lightColor2 + p 4 lightColor3 + m (IIIIFFFF)I blend a method_3389 + p 1 brightness0 + p 2 brightness1 + p 3 brightness2 + p 4 brightness3 + p 5 weight0 + p 6 weight1 + p 7 weight2 + p 8 weight3 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;[FLjava/util/BitSet;Z)V calculate a method_3388 + p 1 level + p 2 state + p 3 pos + p 4 direction + p 5 shape + c the array, of length 12, containing the shape bounds + p 6 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + p 7 shade + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap gfv$c net/minecraft/class_778$class_781 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; DOWN a field_4199 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; UP b field_4200 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; NORTH c field_4204 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; SOUTH d field_4205 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; WEST e field_4206 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; EAST f field_4207 + f I vert0 g field_4203 + f I vert1 h field_4201 + f I vert2 i field_4198 + f I vert3 j field_4209 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; BY_FACING k field_4202 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; $VALUES l field_4208 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; $values a method_36918 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; fromFacing a method_3394 + p 0 facing + m ([Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap;)V method_3390 a method_3390 + m (Ljava/lang/String;IIIII)V + p 3 vert0 + p 4 vert1 + p 5 vert2 + p 6 vert3 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache gfv$d net/minecraft/class_778$class_4303 + f Z enabled a field_19320 + f Lit/unimi/dsi/fastutil/longs/Long2IntLinkedOpenHashMap; colorCache b field_19321 + f Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; brightnessCache c field_19322 + m ()V enable a method_20548 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_20549 + p 1 state + p 2 level + p 3 pos + m ()V disable b method_20550 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness b method_20551 + p 1 state + p 2 level + p 3 pos + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_20552 c method_20552 + m ()Lit/unimi/dsi/fastutil/longs/Long2IntLinkedOpenHashMap; method_20553 d method_20553 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache$1 gfv$d$1 net/minecraft/class_778$class_4303$1 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache; field_19323 a field_19323 + m (Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache;IF)V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache$2 gfv$d$2 net/minecraft/class_778$class_4303$2 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache; field_19324 a field_19324 + m (Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache;IF)V +c net/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo gfv$e net/minecraft/class_778$class_782 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; DOWN a field_4210 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; UP b field_4212 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; NORTH c field_4211 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; SOUTH d field_4213 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; WEST e field_4215 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; EAST f field_4219 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_DOWN g field_4220 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_UP h field_4217 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_NORTH i field_4218 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_SOUTH j field_4221 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_WEST k field_4216 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_EAST l field_4214 + f I shape m field_4222 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; $VALUES n field_4223 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; $values a method_36919 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;Z)V + p 3 direction + p 4 flip + m ()V +c net/minecraft/client/renderer/block/model/BakedQuad gfw net/minecraft/class_777 + f [I vertices a field_4175 + c Joined 4 vertex records, each stores packed data according to the VertexFormat of the quad. Vanilla minecraft uses DefaultVertexFormats.BLOCK, Forge uses (usually) ITEM, use BakedQuad.getFormat() to get the correct format. + f I tintIndex b field_4174 + f Lnet/minecraft/core/Direction; direction c field_4173 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite d field_4176 + f Z shade e field_22441 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_35788 + m ()[I getVertices b method_3357 + m ()Z isTinted c method_3360 + m ()I getTintIndex d method_3359 + m ()Lnet/minecraft/core/Direction; getDirection e method_3358 + m ()Z isShade f method_24874 + m ([IILnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Z)V + p 1 vertices + p 2 tintIndex + p 3 direction + p 4 sprite + p 5 shade +c net/minecraft/client/renderer/block/model/BlockElement gfx net/minecraft/class_785 + f Lorg/joml/Vector3f; from a field_4228 + f Lorg/joml/Vector3f; to b field_4231 + f Ljava/util/Map; faces c field_4230 + f Lnet/minecraft/client/renderer/block/model/BlockElementRotation; rotation d field_4232 + f Z shade e field_4229 + f Z DEFAULT_RESCALE f field_32785 + f F MIN_EXTENT g field_32786 + f F MAX_EXTENT h field_32787 + m ()V fillUvs a method_3402 + m (Lnet/minecraft/core/Direction;)[F uvsByFace a method_3401 + p 1 face + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)V + p 1 from + p 2 to + p 3 faces + p 4 rotation + p 5 shade +c net/minecraft/client/renderer/block/model/BlockElement$1 gfx$1 net/minecraft/class_785$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4233 + m ()V +c net/minecraft/client/renderer/block/model/BlockElement$Deserializer gfx$a net/minecraft/class_785$class_786 + f Z DEFAULT_SHADE a field_32788 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; getFaces a method_3412 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockElement; deserialize a method_3406 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/BlockElementRotation; getRotation a method_3410 + p 1 json + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lorg/joml/Vector3f; getVector3f a method_3409 + p 1 json + p 2 memberName + m (Ljava/lang/String;)Lnet/minecraft/core/Direction; getFacing a method_3408 + p 1 name + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; filterNullFromFaces b method_3404 + p 1 context + p 2 json + m (Lcom/google/gson/JsonObject;)F getAngle b method_3403 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/core/Direction$Axis; getAxis c method_3411 + p 1 json + m (Lcom/google/gson/JsonObject;)Lorg/joml/Vector3f; getTo d method_3405 + p 1 json + m (Lcom/google/gson/JsonObject;)Lorg/joml/Vector3f; getFrom e method_3407 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockElementFace gfy net/minecraft/class_783 + f I NO_TINT a field_32789 + f Lnet/minecraft/core/Direction; cullForDirection b comp_2867 + f I tintIndex c comp_2868 + f Ljava/lang/String; texture d comp_2869 + f Lnet/minecraft/client/renderer/block/model/BlockFaceUV; uv e comp_2870 + m ()Lnet/minecraft/core/Direction; cullForDirection a comp_2867 + m ()I tintIndex b comp_2868 + m ()Ljava/lang/String; texture c comp_2869 + m ()Lnet/minecraft/client/renderer/block/model/BlockFaceUV; uv d comp_2870 + m (Lnet/minecraft/core/Direction;ILjava/lang/String;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;)V + p 1 cullForDirection + p 2 tintIndex + p 3 texture + p 4 uv +c net/minecraft/client/renderer/block/model/BlockElementFace$Deserializer gfy$a net/minecraft/class_783$class_784 + f I DEFAULT_TINT_INDEX a field_32790 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockElementFace; deserialize a method_3397 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)I getTintIndex a method_3400 + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; getTexture b method_3399 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/core/Direction; getCullFacing c method_3398 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockElementRotation gfz net/minecraft/class_789 + f Lorg/joml/Vector3f; origin a comp_1118 + f Lnet/minecraft/core/Direction$Axis; axis b comp_1119 + f F angle c comp_1120 + f Z rescale d comp_1121 + m ()Lorg/joml/Vector3f; origin a comp_1118 + m ()Lnet/minecraft/core/Direction$Axis; axis b comp_1119 + m ()F angle c comp_1120 + m ()Z rescale d comp_1121 + m (Lorg/joml/Vector3f;Lnet/minecraft/core/Direction$Axis;FZ)V +c net/minecraft/client/renderer/block/model/BlockFaceUV gga net/minecraft/class_787 + f [F uvs a field_4235 + f I rotation b field_4234 + m (I)F getU a method_3415 + p 1 index + m ([F)V setMissingUv a method_3417 + p 1 uvs + m (I)F getV b method_3416 + p 1 index + m (I)I getReverseIndex c method_3414 + p 1 index + m (I)I getShiftedIndex d method_3413 + p 1 index + m ([FI)V + p 1 uvs + p 2 rotation +c net/minecraft/client/renderer/block/model/BlockFaceUV$Deserializer gga$a net/minecraft/class_787$class_788 + f I DEFAULT_ROTATION a field_32791 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockFaceUV; deserialize a method_3418 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)I getRotation a method_3420 + p 1 json + m (Lcom/google/gson/JsonObject;)[F getUVs b method_3419 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModel ggb net/minecraft/class_793 + f Lcom/google/gson/Gson; GSON a field_4254 + f Ljava/lang/String; PARTICLE_TEXTURE_REFERENCE b field_32792 + f Ljava/lang/String; name c field_4252 + f Ljava/util/Map; textureMap d field_4251 + f Lnet/minecraft/client/renderer/block/model/BlockModel; parent e field_4253 + f Lnet/minecraft/resources/ResourceLocation; parentLocation f field_4247 + f Lorg/slf4j/Logger; LOGGER g field_4248 + f Lnet/minecraft/client/renderer/block/model/FaceBakery; FACE_BAKERY h field_4249 + f C REFERENCE_CHAR i field_32793 + f Z DEFAULT_AMBIENT_OCCLUSION j field_42912 + f Ljava/util/List; elements k field_4245 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; guiLight l field_21857 + f Ljava/lang/Boolean; hasAmbientOcclusion m field_4244 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms n field_4250 + f Ljava/util/List; overrides o field_4255 + m ()Ljava/util/List; getElements a method_3433 + m (Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3438 + p 1 displayContext + m (Lnet/minecraft/client/renderer/block/model/BlockElement;Lnet/minecraft/client/renderer/block/model/BlockElementFace;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/renderer/block/model/BakedQuad; bakeFace a method_3447 + p 0 element + p 1 face + p 2 sprite + p 3 facing + p 4 state + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;)Lnet/minecraft/client/renderer/block/model/ItemOverrides; getItemOverrides a method_3440 + p 1 baker + p 2 model + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Ljava/util/function/Function;Lnet/minecraft/client/resources/model/ModelState;Z)Lnet/minecraft/client/resources/model/BakedModel; bake a method_3446 + p 1 baker + p 2 model + p 3 spriteGetter + p 4 state + p 5 guiLight3d + m (Ljava/io/Reader;)Lnet/minecraft/client/renderer/block/model/BlockModel; fromStream a method_3437 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/BlockModel; fromString a method_3430 + p 0 jsonString + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/ItemOverride;)V method_45786 a method_45786 + m ()Z hasAmbientOcclusion b method_3444 + m (Ljava/lang/String;)Z hasTexture b method_3432 + p 1 textureName + m ()Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; getGuiLight c method_24298 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; getMaterial c method_24077 + p 1 name + m ()Z isResolved d method_35789 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Either; findTextureEntry d method_3442 + p 1 name + m ()Ljava/util/List; getOverrides e method_3434 + m (Ljava/lang/String;)Z isTextureReference e method_3439 + p 0 str + m ()Lnet/minecraft/client/renderer/block/model/BlockModel; getRootModel g method_3431 + m ()Lnet/minecraft/client/renderer/block/model/ItemTransforms; getTransforms h method_3443 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Map;Ljava/lang/Boolean;Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight;Lnet/minecraft/client/renderer/block/model/ItemTransforms;Ljava/util/List;)V + p 1 parentLocation + p 2 elements + p 3 textureMap + p 4 hasAmbientOcclusion + p 5 guiLight + p 6 transforms + p 7 overrides + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$Deserializer ggb$a net/minecraft/class_793$class_795 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Lcom/mojang/datafixers/util/Either; parseTextureLocationOrReference a method_24079 + p 0 location + p 1 name + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/List; getOverrides a method_3452 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockModel; deserialize a method_3451 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Ljava/lang/Boolean; getAmbientOcclusion a method_3453 + p 1 json + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/List; getElements b method_3449 + p 1 context + p 2 json + m (Lcom/google/gson/JsonObject;)Ljava/util/Map; getTextureMap b method_3448 + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; getParentName c method_3450 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$GuiLight ggb$b net/minecraft/class_793$class_4751 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; FRONT a field_21858 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; SIDE b field_21859 + f Ljava/lang/String; name c field_21860 + f [Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; $VALUES d field_21861 + m ()Z lightLikeBlock a method_24299 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; getByName a method_24300 + p 0 name + m ()[Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; $values b method_36920 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$LoopException ggb$c net/minecraft/class_793$class_6246 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/client/renderer/block/model/BlockModelDefinition ggc net/minecraft/class_790 + f Ljava/util/Map; variants a field_4241 + f Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; multiPart b field_4240 + m ()Ljava/util/Map; getVariants a method_3423 + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; fromJsonElement a method_45787 + p 0 context + p 1 json + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;Ljava/io/Reader;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; fromStream a method_3424 + p 0 context + p 1 reader + m (Ljava/lang/String;)Z hasVariant a method_35790 + p 1 key + m ()Ljava/util/Set; getMultiVariants b method_35791 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/MultiVariant; getVariant b method_35792 + p 1 key + m ()Z isMultiPart c method_3422 + m ()Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; getMultiPart d method_3421 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;)V + p 1 variants + p 2 multiPart + m (Ljava/util/List;)V + p 1 modelDefinitions +c net/minecraft/client/renderer/block/model/BlockModelDefinition$Context ggc$a net/minecraft/class_790$class_791 + f Lcom/google/gson/Gson; gson a field_4243 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition b field_4242 + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getDefinition a method_3425 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V setDefinition a method_3426 + p 1 stateContainer + m ()V +c net/minecraft/client/renderer/block/model/BlockModelDefinition$Deserializer ggc$b net/minecraft/class_790$class_792 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; getVariants a method_3429 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; deserialize a method_3428 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; getMultiPart b method_3427 + p 1 context + p 2 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModelDefinition$MissingVariantException ggc$c net/minecraft/class_790$class_6247 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; field_32795 a field_32795 + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;)V +c net/minecraft/client/renderer/block/model/FaceBakery ggd net/minecraft/class_796 + f I VERTEX_INT_SIZE a field_32796 + f I VERTEX_COUNT b field_32797 + f I UV_INDEX c field_32798 + f F RESCALE_22_5 d field_4260 + f F RESCALE_45 e field_4259 + f I COLOR_INDEX f field_32799 + m (Lnet/minecraft/client/renderer/block/model/BlockFaceUV;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;[FLcom/mojang/math/Transformation;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)[I makeVertices a method_3458 + p 1 uvs + p 2 sprite + p 3 orientation + p 4 posDiv16 + p 5 rotation + p 6 partRotation + p 7 shade + m (Lnet/minecraft/client/renderer/block/model/BlockFaceUV;Lnet/minecraft/core/Direction;Lcom/mojang/math/Transformation;)Lnet/minecraft/client/renderer/block/model/BlockFaceUV; recomputeUVs a method_3454 + p 0 uv + p 1 facing + p 2 rotation + m (Lorg/joml/Vector3f;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;)V applyElementRotation a method_3463 + p 1 vec + p 2 partRotation + m (Lorg/joml/Vector3f;Lcom/mojang/math/Transformation;)V applyModelRotation a method_3455 + p 1 pos + p 2 transform + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;)[F setupShape a method_3459 + p 1 min + p 2 max + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lnet/minecraft/client/renderer/block/model/BlockElementFace;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/ModelState;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)Lnet/minecraft/client/renderer/block/model/BakedQuad; bakeQuad a method_3468 + p 1 posFrom + p 2 posTo + p 3 face + p 4 sprite + p 5 facing + p 6 transform + p 7 rotation + p 8 shade + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lorg/joml/Matrix4f;Lorg/joml/Vector3f;)V rotateVertexBy a method_3464 + p 1 pos + p 2 origin + p 3 transform + p 4 scale + m ([I)Lnet/minecraft/core/Direction; calculateFacing a method_3467 + p 0 faceData + m ([IILnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;[FLnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lcom/mojang/math/Transformation;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)V bakeVertex a method_3461 + p 1 vertexData + p 2 vertexIndex + p 3 facing + p 4 blockFaceUV + p 5 posDiv16 + p 6 sprite + p 7 rotation + p 8 partRotation + p 9 shade + m ([IILorg/joml/Vector3f;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;)V fillVertex a method_3460 + p 1 vertexData + p 2 vertexIndex + p 3 vector + p 4 sprite + p 5 blockFaceUV + m ([ILnet/minecraft/core/Direction;)V recalculateWinding a method_3462 + p 1 vertices + p 2 direction + m ()V + m ()V +c net/minecraft/client/renderer/block/model/FaceBakery$1 ggd$1 net/minecraft/class_796$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_4265 + m ()V +c net/minecraft/client/renderer/block/model/ItemModelGenerator gge net/minecraft/class_801 + f Ljava/util/List; LAYERS a field_4270 + f F MIN_Z b field_32806 + f F MAX_Z c field_32807 + m (IILnet/minecraft/client/renderer/texture/SpriteContents;Ljava/util/List;I)V method_33428 a method_33428 + m (ILjava/lang/String;Lnet/minecraft/client/renderer/texture/SpriteContents;)Ljava/util/List; processFrames a method_3480 + p 1 tintIndex + p 2 texture + p 3 sprite + m (Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;Ljava/util/List;Lnet/minecraft/client/renderer/texture/SpriteContents;IIIIIZ)V checkTransition a method_3476 + p 1 spanFacing + p 2 listSpans + p 3 contents + p 4 frameIndex + p 5 pixelX + p 6 pixelY + p 7 spriteWidth + p 8 spriteHeight + p 9 transparent + m (Lnet/minecraft/client/renderer/texture/SpriteContents;)Ljava/util/List; getSpans a method_3478 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/SpriteContents;IIIII)Z isTransparent a method_3477 + p 1 sprite + p 2 frameIndex + p 3 pixelX + p 4 pixelY + p 5 spriteWidth + p 6 spriteHeight + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Ljava/lang/String;I)Ljava/util/List; createSideElements a method_3481 + p 1 sprite + p 2 texture + p 3 tintIndex + m (Ljava/util/List;Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;II)V createOrExpandSpan a method_3482 + p 1 listSpans + p 2 spanFacing + p 3 pixelX + p 4 pixelY + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/BlockModel;)Lnet/minecraft/client/renderer/block/model/BlockModel; generateBlockModel a method_3479 + p 1 spriteGetter + p 2 model + m ()V + m ()V +c net/minecraft/client/renderer/block/model/ItemModelGenerator$Span gge$a net/minecraft/class_801$class_802 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; facing a field_4271 + f I min b field_4274 + f I max c field_4273 + f I anchor d field_4272 + m ()Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; getFacing a method_3484 + m (I)V expand a method_3483 + p 1 pos + m ()I getMin b method_3487 + m ()I getMax c method_3485 + m ()I getAnchor d method_3486 + m (Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;II)V + p 1 facing + p 2 minMax + p 3 anchor +c net/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing gge$b net/minecraft/class_801$class_803 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; UP a field_4281 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; DOWN b field_4277 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; LEFT c field_4278 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; RIGHT d field_4283 + f Lnet/minecraft/core/Direction; direction e field_4276 + f I xOffset f field_4280 + f I yOffset g field_4279 + f [Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; $VALUES h field_4282 + m ()Lnet/minecraft/core/Direction; getDirection a method_3488 + c Gets the direction of the block's facing. + m ()I getXOffset b method_3490 + m ()I getYOffset c method_3489 + m ()Z isHorizontal d method_3491 + m ()[Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; $values e method_36921 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;II)V + p 3 direction + p 4 xOffset + p 5 yOffset + m ()V +c net/minecraft/client/renderer/block/model/ItemOverride ggf net/minecraft/class_799 + f Lnet/minecraft/resources/ResourceLocation; model a field_4268 + f Ljava/util/List; predicates b field_4269 + m ()Lnet/minecraft/resources/ResourceLocation; getModel a method_3472 + c @return the location of the target model + m ()Ljava/util/stream/Stream; getPredicates b method_33690 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 model + p 2 predicates +c net/minecraft/client/renderer/block/model/ItemOverride$Deserializer ggf$a net/minecraft/class_799$class_800 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemOverride; deserialize a method_3475 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Ljava/util/List; getPredicates a method_3474 + p 1 json + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/renderer/block/model/ItemOverride$Predicate; method_33691 a method_33691 + m ()V +c net/minecraft/client/renderer/block/model/ItemOverride$Predicate ggf$b net/minecraft/class_799$class_5826 + f Lnet/minecraft/resources/ResourceLocation; property a field_28790 + f F value b field_28791 + m ()Lnet/minecraft/resources/ResourceLocation; getProperty a method_33692 + m ()F getValue b method_33693 + m (Lnet/minecraft/resources/ResourceLocation;F)V + p 1 property + p 2 value +c net/minecraft/client/renderer/block/model/ItemOverrides ggg net/minecraft/class_806 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; EMPTY a field_4292 + f F NO_OVERRIDE b field_42072 + f [Lnet/minecraft/client/renderer/block/model/ItemOverrides$BakedOverride; overrides c field_28792 + f [Lnet/minecraft/resources/ResourceLocation; properties d field_28793 + m (I)[Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; method_33694 a method_33694 + m (Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)Lnet/minecraft/client/resources/model/BakedModel; resolve a method_3495 + p 1 model + p 2 stack + p 3 level + p 4 entity + p 5 seed + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Lnet/minecraft/client/renderer/block/model/ItemOverride;)Lnet/minecraft/client/resources/model/BakedModel; bakeModel a method_33695 + p 1 baker + p 2 model + p 3 override + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/client/renderer/block/model/ItemOverride$Predicate;)Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; method_33696 a method_33696 + m (I)[Lnet/minecraft/resources/ResourceLocation; method_33697 b method_33697 + m ()V + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Ljava/util/List;)V + p 1 baker + p 2 model + p 3 overrides + m ()V +c net/minecraft/client/renderer/block/model/ItemOverrides$BakedOverride ggg$a net/minecraft/class_806$class_5827 + f [Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; matchers a field_28794 + f Lnet/minecraft/client/resources/model/BakedModel; model b field_28795 + m ([F)Z test a method_33700 + p 1 properties + m ([Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher;Lnet/minecraft/client/resources/model/BakedModel;)V + p 1 matchers + p 2 model +c net/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher ggg$b net/minecraft/class_806$class_5828 + f I index a field_28796 + f F value b field_28797 + m (IF)V + p 1 index + p 2 value +c net/minecraft/client/renderer/block/model/ItemTransform ggh net/minecraft/class_804 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; NO_TRANSFORM a field_4284 + f Lorg/joml/Vector3f; rotation b field_4287 + f Lorg/joml/Vector3f; translation c field_4286 + f Lorg/joml/Vector3f; scale d field_4285 + m (ZLcom/mojang/blaze3d/vertex/PoseStack;)V apply a method_23075 + p 1 leftHand + p 2 poseStack + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lorg/joml/Vector3f;)V + p 1 rotation + p 2 translation + p 3 scale + m ()V +c net/minecraft/client/renderer/block/model/ItemTransform$Deserializer ggh$a net/minecraft/class_804$class_805 + f F MAX_TRANSLATION a field_32808 + f F MAX_SCALE b field_32809 + f Lorg/joml/Vector3f; DEFAULT_ROTATION c field_4288 + f Lorg/joml/Vector3f; DEFAULT_TRANSLATION d field_4290 + f Lorg/joml/Vector3f; DEFAULT_SCALE e field_4289 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; deserialize a method_3494 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; getVector3f a method_3493 + p 1 json + p 2 key + p 3 fallback + m ()V + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms ggi net/minecraft/class_809 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; NO_TRANSFORMS a field_4301 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; thirdPersonLeftHand b field_4305 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; thirdPersonRightHand c field_4307 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; firstPersonLeftHand d field_4302 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; firstPersonRightHand e field_4304 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; head f field_4311 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; gui g field_4300 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; ground h field_4303 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; fixed i field_4306 + m (Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3503 + p 1 displayContext + m (Lnet/minecraft/world/item/ItemDisplayContext;)Z hasTransform b method_3501 + p 1 displayContext + m ()V + m (Lnet/minecraft/client/renderer/block/model/ItemTransforms;)V + p 1 transforms + m (Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;)V + p 1 thirdPersonLeftHand + p 2 thirdPersonRightHand + p 3 firstPersonLeftHand + p 4 firstPersonRightHand + p 5 head + p 6 gui + p 7 ground + p 8 fixed + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms$1 ggi$1 net/minecraft/class_809$1 + f [I $SwitchMap$net$minecraft$world$item$ItemDisplayContext a field_4313 + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms$Deserializer ggi$a net/minecraft/class_809$class_810 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3504 + p 1 deserializationContext + p 2 json + p 3 displayContext + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemTransforms; deserialize a method_3505 + p 1 json + p 2 type + p 3 context + m ()V +c net/minecraft/client/renderer/block/model/MultiVariant ggj net/minecraft/class_807 + f Ljava/util/List; variants a field_4294 + m ()Ljava/util/List; getVariants a method_3497 + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceLocation;)V method_45788 a method_45788 + m (Ljava/util/List;)V + p 1 variants +c net/minecraft/client/renderer/block/model/MultiVariant$Deserializer ggj$a net/minecraft/class_807$class_808 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/MultiVariant; deserialize a method_3499 + p 1 json + p 2 type + p 3 context + m ()V +c net/minecraft/client/renderer/block/model/Variant ggk net/minecraft/class_813 + f Lnet/minecraft/resources/ResourceLocation; modelLocation a field_4326 + f Lcom/mojang/math/Transformation; rotation b field_4328 + f Z uvLock c field_4327 + f I weight d field_4325 + m ()Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_3510 + m ()I getWeight d method_3511 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/math/Transformation;ZI)V + p 1 modelLocation + p 2 rotation + p 3 uvLock + p 4 weight +c net/minecraft/client/renderer/block/model/Variant$Deserializer ggk$a net/minecraft/class_813$class_814 + f Z DEFAULT_UVLOCK a field_32810 + f I DEFAULT_WEIGHT b field_32811 + f I DEFAULT_X_ROTATION c field_32812 + f I DEFAULT_Y_ROTATION d field_32813 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/Variant; deserialize a method_3513 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/model/BlockModelRotation; getBlockRotation a method_3515 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/resources/ResourceLocation; getModel b method_3514 + p 1 json + m (Lcom/google/gson/JsonObject;)I getWeight c method_3517 + p 1 json + m (Lcom/google/gson/JsonObject;)Z getUvLock d method_3516 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/multipart/AndCondition ggl net/minecraft/class_812 + f Ljava/lang/String; TOKEN a field_32814 + f Ljava/lang/Iterable; conditions d field_4324 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3507 a method_3507 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/client/renderer/block/model/multipart/Condition;)Ljava/util/function/Predicate; method_3508 a method_3508 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3506 a method_3506 + m (Ljava/lang/Iterable;)V + p 1 conditions +c net/minecraft/client/renderer/block/model/multipart/Condition ggm net/minecraft/class_815 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; TRUE b field_16900 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; FALSE c field_16901 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16811 a method_16811 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; method_16810 a method_16810 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16809 b method_16809 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; method_16808 b method_16808 + m ()V +c net/minecraft/client/renderer/block/model/multipart/KeyValueCondition ggn net/minecraft/class_818 + f Lcom/google/common/base/Splitter; PIPE_SPLITTER a field_4334 + f Ljava/lang/String; key d field_4333 + f Ljava/lang/String; value e field_4332 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3527 a method_3527 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/util/function/Predicate; getBlockStatePredicate a method_3525 + p 1 definition + p 2 property + p 3 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/Optional;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3528 a method_3528 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3524 a method_3524 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/util/function/Predicate; method_3526 b method_3526 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 key + p 2 value + m ()V +c net/minecraft/client/renderer/block/model/multipart/MultiPart ggo net/minecraft/class_816 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition a field_4329 + f Ljava/util/List; selectors b field_4330 + m ()Ljava/util/List; getSelectors a method_3519 + m (Lnet/minecraft/client/renderer/block/model/multipart/Selector;)Ljava/util/stream/Stream; method_3518 a method_3518 + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/multipart/Selector;)V method_45789 a method_45789 + m ()Ljava/util/Set; getMultiVariants b method_3520 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/util/List;)V + p 1 definition + p 2 selectors +c net/minecraft/client/renderer/block/model/multipart/MultiPart$Deserializer ggo$a net/minecraft/class_816$class_817 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context; context a field_4331 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonArray;)Ljava/util/List; getSelectors a method_3522 + p 1 jsonContext + p 2 elements + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; deserialize a method_3523 + p 1 json + p 2 type + p 3 jsonContext + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;)V + p 1 context +c net/minecraft/client/renderer/block/model/multipart/OrCondition ggp net/minecraft/class_821 + f Ljava/lang/String; TOKEN a field_32815 + f Ljava/lang/Iterable; conditions d field_4337 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3539 a method_3539 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/client/renderer/block/model/multipart/Condition;)Ljava/util/function/Predicate; method_3540 a method_3540 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3538 a method_3538 + m (Ljava/lang/Iterable;)V + p 1 conditions +c net/minecraft/client/renderer/block/model/multipart/Selector ggq net/minecraft/class_819 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; condition a field_4335 + f Lnet/minecraft/client/renderer/block/model/MultiVariant; variant b field_4336 + m ()Lnet/minecraft/client/renderer/block/model/MultiVariant; getVariant a method_3529 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; getPredicate a method_3530 + p 1 definition + m (Lnet/minecraft/client/renderer/block/model/multipart/Condition;Lnet/minecraft/client/renderer/block/model/MultiVariant;)V + p 1 condition + p 2 variant +c net/minecraft/client/renderer/block/model/multipart/Selector$Deserializer ggq$a net/minecraft/class_819$class_820 + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; method_3537 a method_3537 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/multipart/Selector; deserialize a method_3535 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getCondition a method_3536 + p 0 json + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getKeyValueCondition a method_3533 + p 0 entry + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; method_3534 b method_3534 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getSelector b method_3531 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/multipart/package-info ggr net/minecraft/class_6248 +c net/minecraft/client/renderer/block/model/package-info ggs net/minecraft/class_6249 +c net/minecraft/client/renderer/block/package-info ggt net/minecraft/class_6250 +c net/minecraft/client/renderer/blockentity/BannerRenderer ggu net/minecraft/class_823 + f Ljava/lang/String; FLAG a field_32816 + f I BANNER_WIDTH b field_32817 + f I BANNER_HEIGHT c field_32818 + f I MAX_PATTERNS d field_32819 + f Ljava/lang/String; POLE e field_32820 + f Ljava/lang/String; BAR f field_32821 + f Lnet/minecraft/client/model/geom/ModelPart; flag g field_20810 + f Lnet/minecraft/client/model/geom/ModelPart; pole h field_20811 + f Lnet/minecraft/client/model/geom/ModelPart; bar i field_20812 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32135 + m (Lnet/minecraft/world/level/block/entity/BannerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3546 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/world/item/DyeColor;)V renderPatternLayer a method_58140 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 material + p 6 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;ZLnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)V renderPatterns a method_29999 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 flagMaterial + p 6 banner + c if {@code true}, uses banner material; otherwise if {@code false} uses shield material + p 7 baseColor + p 8 patterns + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;ZLnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Z)V renderPatterns a method_23802 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 flagMaterial + p 6 banner + c if {@code true}, uses banner material; otherwise if {@code false} uses shield material + p 7 baseColor + p 8 patterns + p 9 glint + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BeaconRenderer ggv net/minecraft/class_822 + f Lnet/minecraft/resources/ResourceLocation; BEAM_LOCATION a field_4338 + f I MAX_RENDER_Y b field_32822 + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)Z shouldRenderOffScreen a method_3542 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3541 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;Lnet/minecraft/world/phys/Vec3;)Z shouldRender a method_33891 + p 1 blockEntity + p 2 cameraPos + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFFFF)V addVertex a method_23076 + p 0 pose + p 1 consumer + p 2 color + p 3 y + p 4 x + p 5 z + p 6 u + p 7 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFFFFFFF)V renderQuad a method_22740 + p 0 pose + p 1 consumer + p 2 color + p 3 minY + p 4 maxY + p 5 minX + p 6 minZ + p 7 maxX + p 8 maxZ + p 9 minU + p 10 maxU + p 11 minV + p 12 maxV + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFFFFFFFFFFF)V renderPart a method_22741 + p 0 poseStack + p 1 consumer + p 2 color + p 3 minY + p 4 maxY + p 5 x1 + p 6 z1 + p 7 x2 + p 8 z2 + p 9 x3 + p 10 z3 + p 11 x4 + p 12 z4 + p 13 minU + p 14 maxU + p 15 minV + p 16 maxV + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;FJIII)V renderBeaconBeam a method_3543 + p 0 poseStack + p 1 bufferSource + p 2 partialTick + p 3 gameTime + p 5 yOffset + p 6 height + p 7 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/resources/ResourceLocation;FFJIIIFF)V renderBeaconBeam a method_3545 + p 0 poseStack + p 1 bufferSource + p 2 beamLocation + p 3 partialTick + p 4 textureScale + p 5 gameTime + p 7 yOffset + p 8 height + p 9 color + p 10 beamRadius + p 11 glowRadius + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/BedRenderer ggw net/minecraft/class_825 + f Lnet/minecraft/client/model/geom/ModelPart; headRoot a field_27744 + f Lnet/minecraft/client/model/geom/ModelPart; footRoot b field_27745 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_24188 a method_24188 + m (Lnet/minecraft/world/level/block/entity/BedBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3557 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/Material;IIZ)V renderPiece a method_3558 + p 1 poseStack + p 2 bufferSource + p 3 modelPart + p 4 direction + p 5 material + p 6 packedLight + p 7 packedOverlay + p 8 foot + c {@code true} if piece to render is the foot of the bed, {@code false} otherwise or if being rendered by a {@link net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer} + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHeadLayer b method_32136 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createFootLayer c method_32137 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BellRenderer ggx net/minecraft/class_3880 + f Lnet/minecraft/client/resources/model/Material; BELL_RESOURCE_LOCATION a field_17145 + f Ljava/lang/String; BELL_BODY b field_32823 + f Lnet/minecraft/client/model/geom/ModelPart; bellBody c field_20816 + m (Lnet/minecraft/world/level/block/entity/BellBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17139 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32138 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher ggy net/minecraft/class_824 + f Lnet/minecraft/world/level/Level; level a field_4348 + f Lnet/minecraft/client/Camera; camera b field_4344 + f Lnet/minecraft/world/phys/HitResult; cameraHitResult c field_4350 + f Ljava/util/Map; renderers d field_4345 + f Lnet/minecraft/client/gui/Font; font e field_4342 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModelSet f field_27746 + f Ljava/util/function/Supplier; blockRenderDispatcher g field_27747 + f Ljava/util/function/Supplier; itemRenderer h field_38880 + f Ljava/util/function/Supplier; entityRenderer i field_38881 + m (Lnet/minecraft/world/level/Level;)V setLevel a method_3551 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/HitResult;)V prepare a method_3549 + p 1 level + p 2 camera + p 3 cameraHitResult + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer; getRenderer a method_3550 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V render a method_3555 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)Z renderItem a method_23077 + c @return {@code true} if no renderer was found; otherwise {@code false} if render completed + p 1 blockEntity + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/lang/Runnable;)V tryRender a method_3554 + p 0 blockEntity + p 1 renderer + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V setupAndRender a method_23079 + p 0 renderer + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V method_23080 a method_23080 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V method_23081 b method_23081 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/model/geom/EntityModelSet;Ljava/util/function/Supplier;Ljava/util/function/Supplier;Ljava/util/function/Supplier;)V + p 1 font + p 2 entityModelSet + p 3 blockRenderDispatcher + p 4 itemRenderer + p 5 entityRenderer +c net/minecraft/client/renderer/blockentity/BlockEntityRenderer ggz net/minecraft/class_827 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Z shouldRenderOffScreen a method_3563 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3569 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/phys/Vec3;)Z shouldRender a method_33892 + p 1 blockEntity + p 2 cameraPos + m ()I getViewDistance aW_ method_33893 +c net/minecraft/client/renderer/blockentity/BlockEntityRendererProvider gha net/minecraft/class_5614 +c net/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context gha$a net/minecraft/class_5614$class_5615 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher a field_27748 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher b field_27749 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer c field_38882 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer d field_38883 + f Lnet/minecraft/client/model/geom/EntityModelSet; modelSet e field_27750 + f Lnet/minecraft/client/gui/Font; font f field_27751 + m ()Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; getBlockEntityRenderDispatcher a method_32139 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32140 + p 1 layerLocation + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderDispatcher b method_32141 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderer c method_43334 + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer d method_43335 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getModelSet e method_32142 + m ()Lnet/minecraft/client/gui/Font; getFont f method_32143 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/gui/Font;)V + p 1 blockEntityRenderDispatcher + p 2 blockRenderDispatcher + p 3 itemRenderer + p 4 entityRenderer + p 5 modelSet + p 6 font +c net/minecraft/client/renderer/blockentity/BlockEntityRenderers ghb net/minecraft/class_5616 + f Ljava/util/Map; PROVIDERS a field_27752 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider;)V method_32145 a method_32145 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider;)V register a method_32144 + p 0 type + p 1 renderProvider + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)Ljava/util/Map; createEntityRenderers a method_32146 + p 0 context + m ()V + m ()V +c net/minecraft/client/renderer/blockentity/BrightnessCombiner ghc net/minecraft/class_4737 + m ()Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptNone a method_24189 + m (I)I method_24190 a method_24190 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptSingle a method_24191 + p 1 single + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptDouble a method_24192 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntity;I)I method_24193 a method_24193 + m (I)I method_24194 b method_24194 + m ()V +c net/minecraft/client/renderer/blockentity/BrushableBlockRenderer ghd net/minecraft/class_8189 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_42928 + m (Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_49348 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/core/Direction;I)[F translations a method_49349 + p 1 direction + p 2 dustedLevel + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BrushableBlockRenderer$1 ghd$1 net/minecraft/class_8189$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_42929 + m ()V +c net/minecraft/client/renderer/blockentity/CampfireRenderer ghe net/minecraft/class_3941 + f F SIZE a field_32824 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_38884 + m (Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17581 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ChestRenderer ghf net/minecraft/class_826 + f Ljava/lang/String; BOTTOM a field_32825 + f Ljava/lang/String; LID b field_32826 + f Ljava/lang/String; LOCK c field_32827 + f Lnet/minecraft/client/model/geom/ModelPart; lid d field_20817 + f Lnet/minecraft/client/model/geom/ModelPart; bottom e field_20818 + f Lnet/minecraft/client/model/geom/ModelPart; lock f field_20819 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftLid g field_20820 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftBottom h field_20821 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftLock i field_20822 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightLid j field_21479 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightBottom k field_21480 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightLock l field_21481 + f Z xmasTextures m field_4365 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;FII)V render a method_22749 + p 1 poseStack + p 2 consumer + p 3 lidPart + p 4 lockPart + p 5 bottomPart + p 6 lidAngle + p 7 packedLight + p 8 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSingleBodyLayer b method_32147 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createDoubleBodyRightLayer c method_32148 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createDoubleBodyLeftLayer d method_32149 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ConduitRenderer ghg net/minecraft/class_829 + f Lnet/minecraft/client/resources/model/Material; SHELL_TEXTURE a field_4377 + f Lnet/minecraft/client/resources/model/Material; ACTIVE_SHELL_TEXTURE b field_4378 + f Lnet/minecraft/client/resources/model/Material; WIND_TEXTURE c field_4373 + f Lnet/minecraft/client/resources/model/Material; VERTICAL_WIND_TEXTURE d field_4371 + f Lnet/minecraft/client/resources/model/Material; OPEN_EYE_TEXTURE e field_4379 + f Lnet/minecraft/client/resources/model/Material; CLOSED_EYE_TEXTURE f field_4380 + f Lnet/minecraft/client/model/geom/ModelPart; eye g field_20823 + f Lnet/minecraft/client/model/geom/ModelPart; wind h field_20824 + f Lnet/minecraft/client/model/geom/ModelPart; shell i field_20825 + f Lnet/minecraft/client/model/geom/ModelPart; cage j field_20826 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; renderer k field_27753 + m (Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_22750 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createEyeLayer b method_32150 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createWindLayer c method_32151 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createShellLayer d method_32152 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createCageLayer e method_32153 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/DecoratedPotRenderer ghh net/minecraft/class_8188 + f Ljava/lang/String; NECK a field_42913 + f Ljava/lang/String; FRONT b field_42914 + f Ljava/lang/String; BACK c field_42915 + f Ljava/lang/String; LEFT d field_42916 + f Ljava/lang/String; RIGHT e field_42917 + f Ljava/lang/String; TOP f field_42918 + f Ljava/lang/String; BOTTOM g field_42919 + f Lnet/minecraft/client/model/geom/ModelPart; neck h field_42920 + f Lnet/minecraft/client/model/geom/ModelPart; frontSide i field_42921 + f Lnet/minecraft/client/model/geom/ModelPart; backSide j field_42922 + f Lnet/minecraft/client/model/geom/ModelPart; leftSide k field_42923 + f Lnet/minecraft/client/model/geom/ModelPart; rightSide l field_42924 + f Lnet/minecraft/client/model/geom/ModelPart; top m field_42925 + f Lnet/minecraft/client/model/geom/ModelPart; bottom n field_42926 + f F WOBBLE_AMPLITUDE o field_46728 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_49344 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/model/geom/ModelPart;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/resources/model/Material;)V renderSide a method_49345 + p 1 modelPart + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 packedOverlay + p 6 material + m (Ljava/util/Optional;)Lnet/minecraft/client/resources/model/Material; getSideMaterial a method_49343 + p 0 item + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBaseLayer b method_49346 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSidesLayer c method_49347 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/EnchantTableRenderer ghi net/minecraft/class_828 + f Lnet/minecraft/client/resources/model/Material; BOOK_LOCATION a field_4369 + c The texture for the book above the enchantment table. + f Lnet/minecraft/client/model/BookModel; bookModel b field_4370 + m (Lnet/minecraft/world/level/block/entity/EnchantingTableBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3571 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/HangingSignRenderer ghj net/minecraft/class_7761 + f Ljava/lang/String; PLANK a field_40522 + f Ljava/lang/String; V_CHAINS b field_40523 + f Ljava/lang/String; NORMAL_CHAINS c field_40516 + f Ljava/lang/String; CHAIN_L_1 d field_40517 + f Ljava/lang/String; CHAIN_L_2 e field_40518 + f Ljava/lang/String; CHAIN_R_1 f field_40519 + f Ljava/lang/String; CHAIN_R_2 g field_40520 + f Ljava/lang/String; BOARD h field_40521 + f F MODEL_RENDER_SCALE i field_44574 + f F TEXT_RENDER_SCALE j field_44575 + f Lnet/minecraft/world/phys/Vec3; TEXT_OFFSET k field_44576 + f Ljava/util/Map; hangingSignModels l field_40524 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/HangingSignRenderer$HangingSignModel; method_45794 a method_45794 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_45796 b method_45796 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHangingSignLayer e method_45795 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/HangingSignRenderer$HangingSignModel ghj$a net/minecraft/class_7761$class_7762 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_40525 + f Lnet/minecraft/client/model/geom/ModelPart; plank b field_40526 + f Lnet/minecraft/client/model/geom/ModelPart; vChains c field_40527 + f Lnet/minecraft/client/model/geom/ModelPart; normalChains d field_40528 + m (Lnet/minecraft/world/level/block/state/BlockState;)V evaluateVisibleParts a method_45797 + p 1 state + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/blockentity/LecternRenderer ghk net/minecraft/class_3942 + f Lnet/minecraft/client/model/BookModel; bookModel a field_17428 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17582 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/PistonHeadRenderer ghl net/minecraft/class_835 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_4389 + m (Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3576 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;ZI)V renderBlock a method_3575 + p 1 pos + p 2 state + p 3 poseStack + p 4 bufferSource + p 5 level + p 6 extended + c if {@code true}, checks all sides before rendering via {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} + p 7 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ShulkerBoxRenderer ghm net/minecraft/class_834 + f Lnet/minecraft/client/model/ShulkerModel; model a field_4387 + m (Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3574 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/SignRenderer ghn net/minecraft/class_837 + f Ljava/lang/String; STICK a field_32830 + f I BLACK_TEXT_OUTLINE_COLOR b field_33962 + f I OUTLINE_RENDER_DISTANCE c field_33963 + f F RENDER_SCALE d field_44577 + f Lnet/minecraft/world/phys/Vec3; TEXT_OFFSET e field_44578 + f Ljava/util/Map; signModels f field_27754 + f Lnet/minecraft/client/gui/Font; font g field_27755 + m (ILnet/minecraft/network/chat/Component;)Lnet/minecraft/util/FormattedCharSequence; method_45799 a method_45799 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_23083 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/SignBlock;Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/client/model/Model;)V renderSignWithText a method_49920 + p 1 signEntity + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 packedOverlay + p 6 state + p 7 signBlock + p 8 woodType + p 9 model + m (Lnet/minecraft/world/level/block/entity/SignText;)I getDarkColor a method_37311 + p 0 signText + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getSignMaterial a method_45792 + p 1 woodType + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/level/block/state/BlockState;)V translateSign a method_49918 + p 1 poseStack + p 2 yRot + p 3 state + m (Lcom/mojang/blaze3d/vertex/PoseStack;IILnet/minecraft/client/model/Model;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderSignModel a method_45793 + p 1 poseStack + p 2 packedLight + p 3 packedOverlay + p 4 model + p 5 vertexConsumer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/client/model/Model;)V renderSign a method_45800 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 woodType + p 6 model + m (Lcom/mojang/blaze3d/vertex/PoseStack;ZLnet/minecraft/world/phys/Vec3;)V translateSignText a method_49919 + p 1 poseStack + p 2 isFrontText + p 3 offset + m (Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; createSignModel a method_32157 + p 0 entityModelSet + p 1 woodType + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; method_32158 a method_32158 + m (Lnet/minecraft/core/BlockPos;I)Z isOutlineVisible a method_37312 + p 0 pos + p 1 textColor + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/SignText;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IIIZ)V renderSignText a method_45798 + p 1 pos + p 2 text + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 lineHeight + p 7 maxWidth + p 8 isFrontText + m ()F getSignModelRenderScale b method_51272 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_32156 b method_32156 + m ()F getSignTextRenderScale c method_51273 + m ()Lnet/minecraft/world/phys/Vec3; getTextOffset d method_45790 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSignLayer f method_32154 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/SignRenderer$SignModel ghn$a net/minecraft/class_837$class_4702 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27756 + f Lnet/minecraft/client/model/geom/ModelPart; stick b field_21531 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/blockentity/SkullBlockRenderer gho net/minecraft/class_836 + f Ljava/util/Map; modelByType a field_4391 + f Ljava/util/Map; SKIN_BY_TYPE b field_4390 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/item/component/ResolvableProfile;)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_3578 + p 0 type + p 1 profile + m (Lnet/minecraft/world/level/block/entity/SkullBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3577 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/model/geom/EntityModelSet;)Ljava/util/Map; createSkullRenderers a method_32160 + p 0 entityModelSet + m (Ljava/util/HashMap;)V method_3580 a method_3580 + m (Lnet/minecraft/core/Direction;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/SkullModelBase;Lnet/minecraft/client/renderer/RenderType;)V renderSkull a method_32161 + p 0 direction + p 1 yRot + p 2 mouthAnimation + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 model + p 7 renderType + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/SpawnerRenderer ghp net/minecraft/class_839 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer a field_38885 + m (FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;DD)V renderEntityInSpawner a method_55253 + p 0 partialTick + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 entity + p 5 entityRenderer + p 6 oSpin + p 8 spin + m (Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3589 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/StructureBlockRenderer ghq net/minecraft/class_838 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z shouldRenderOffScreen a method_3588 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3587 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderStructureVoids a method_61047 + p 1 blockEntity + p 2 buffer + p 3 poseStack + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;Lnet/minecraft/client/renderer/MultiBufferSource;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderInvisibleBlocks a method_3585 + p 1 blockEntity + p 2 bufferSource + p 3 poseStack + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;III)V method_61048 a method_61048 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/StructureBlockRenderer$1 ghq$1 net/minecraft/class_838$1 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror a field_4402 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_4401 + m ()V +c net/minecraft/client/renderer/blockentity/TheEndGatewayRenderer ghr net/minecraft/class_841 + f Lnet/minecraft/resources/ResourceLocation; BEAM_LOCATION c field_4409 + m (Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_22751 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/blockentity/TheEndPortalRenderer ghs net/minecraft/class_840 + f Lnet/minecraft/resources/ResourceLocation; END_SKY_LOCATION a field_4406 + f Lnet/minecraft/resources/ResourceLocation; END_PORTAL_LOCATION b field_4407 + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3591 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderCube a method_23084 + p 1 blockEntity + p 2 pose + p 3 consumer + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFLnet/minecraft/core/Direction;)V renderFace a method_23085 + p 1 blockEntity + p 2 pose + p 3 consumer + p 4 x0 + p 5 x1 + p 6 y0 + p 7 y1 + p 8 z0 + p 9 z1 + p 10 z2 + p 11 z3 + p 12 direction + m ()F getOffsetUp b method_3594 + m ()F getOffsetDown c method_35793 + m ()Lnet/minecraft/client/renderer/RenderType; renderType d method_34589 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/TrialSpawnerRenderer ght net/minecraft/class_8984 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer a field_47464 + m (Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_55254 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/VaultRenderer ghu net/minecraft/class_9214 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_48952 + f Lnet/minecraft/util/RandomSource; random b field_48953 + m (FLnet/minecraft/world/level/Level;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/renderer/entity/ItemRenderer;FFLnet/minecraft/util/RandomSource;)V renderItemInside a method_56851 + p 0 partialTick + p 1 level + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 item + p 6 itemRenderer + p 7 previousSpin + p 8 currentSpin + p 9 random + m (Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_56852 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/package-info ghv net/minecraft/class_6252 +c net/minecraft/client/renderer/chunk/RenderChunk ghw net/minecraft/class_6849 + f Ljava/util/Map; blockEntities a field_36310 + f Ljava/util/List; sections b field_36311 + f Z debug c field_36312 + f Lnet/minecraft/world/level/chunk/LevelChunk; wrapped d field_36313 + m (III)Ljava/lang/String; method_39961 a method_39961 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_39962 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_39963 + p 1 pos + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 wrapped +c net/minecraft/client/renderer/chunk/RenderChunkRegion ghx net/minecraft/class_853 + f I RADIUS a field_52160 + f I SIZE b field_52161 + f [Lnet/minecraft/client/renderer/chunk/RenderChunk; chunks c field_4483 + f Lnet/minecraft/world/level/Level; level d field_4490 + f I minChunkX e field_52162 + f I minChunkZ f field_52163 + m (II)Lnet/minecraft/client/renderer/chunk/RenderChunk; getChunk a method_60898 + p 1 x + p 2 z + m (IIII)I index a method_60899 + p 0 minX + p 1 minZ + p 2 x + p 3 z + m (Lnet/minecraft/world/level/Level;II[Lnet/minecraft/client/renderer/chunk/RenderChunk;)V + p 1 level + p 2 minChunkX + p 3 minChunkZ + p 4 chunks +c net/minecraft/client/renderer/chunk/RenderRegionCache ghy net/minecraft/class_6850 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkInfoCache a field_36314 + m (Lnet/minecraft/world/level/Level;II)Lnet/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo; getChunkInfo a method_60900 + p 1 level + p 2 x + p 3 z + m (Lnet/minecraft/world/level/Level;J)Lnet/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo; method_60901 a method_60901 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/SectionPos;)Lnet/minecraft/client/renderer/chunk/RenderChunkRegion; createRegion a method_39969 + p 1 level + p 2 sectionPos + m ()V +c net/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo ghy$a net/minecraft/class_6850$class_6851 + f Lnet/minecraft/world/level/chunk/LevelChunk; chunk a field_36315 + f Lnet/minecraft/client/renderer/chunk/RenderChunk; renderChunk b field_36316 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; chunk a method_39971 + m ()Lnet/minecraft/client/renderer/chunk/RenderChunk; renderChunk b method_39972 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 chunk +c net/minecraft/client/renderer/chunk/SectionCompiler ghz net/minecraft/class_9810 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_52164 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderer b field_52165 + m (Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results;Lnet/minecraft/world/level/block/entity/BlockEntity;)V handleBlockEntity a method_60902 + p 1 results + p 2 blockEntity + m (Ljava/util/Map;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/BufferBuilder; getOrBeginLayer a method_60903 + p 1 bufferLayers + p 2 sectionBufferBuilderPack + p 3 renderType + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/chunk/RenderChunkRegion;Lcom/mojang/blaze3d/vertex/VertexSorting;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results; compile a method_60904 + p 1 sectionPos + p 2 region + p 3 vertexSorting + p 4 sectionBufferBuilderPack + m (Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;)V + p 1 blockRenderer + p 2 blockEntityRenderer +c net/minecraft/client/renderer/chunk/SectionCompiler$Results ghz$a net/minecraft/class_9810$class_9811 + f Ljava/util/List; globalBlockEntities a field_52166 + f Ljava/util/List; blockEntities b field_52167 + f Ljava/util/Map; renderedLayers c field_52168 + f Lnet/minecraft/client/renderer/chunk/VisibilitySet; visibilitySet d field_52169 + f Lcom/mojang/blaze3d/vertex/MeshData$SortState; transparencyState e field_52170 + m ()V release a method_60905 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher gia net/minecraft/class_846 + f I MAX_HIGH_PRIORITY_QUOTA a field_35300 + f Ljava/util/concurrent/PriorityBlockingQueue; toBatchHighPriority b field_35301 + f Ljava/util/Queue; toBatchLowPriority c field_35302 + f I highPriorityQuota d field_35303 + f Ljava/util/Queue; toUpload e field_4443 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBuffers f field_20828 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPool; bufferPool g field_46907 + f I toBatchCount h field_20992 + f Z closed i field_46908 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox j field_20829 + f Ljava/util/concurrent/Executor; executor k field_20830 + f Lnet/minecraft/client/multiplayer/ClientLevel; level l field_20831 + f Lnet/minecraft/client/renderer/LevelRenderer; renderer m field_20832 + f Lnet/minecraft/world/phys/Vec3; camera n field_18766 + f Lnet/minecraft/client/renderer/chunk/SectionCompiler; sectionCompiler o field_52171 + m ()Ljava/lang/String; getStats a method_3622 + m (Lnet/minecraft/world/phys/Vec3;)V setCamera a method_19419 + p 1 camera + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;Lcom/mojang/blaze3d/vertex/VertexBuffer;)Ljava/util/concurrent/CompletableFuture; uploadSectionIndexBuffer a method_60906 + p 1 result + p 2 vertexBuffer + m (Lcom/mojang/blaze3d/vertex/MeshData;Lcom/mojang/blaze3d/vertex/VertexBuffer;)Ljava/util/concurrent/CompletableFuture; uploadSectionLayer a method_3635 + p 1 meshData + p 2 vertexBuffer + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;)V method_60907 a method_60907 + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;Lcom/mojang/blaze3d/vertex/MeshData;)V method_43610 a method_43610 + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_22752 + p 1 level + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Ljava/lang/Throwable;)V method_22755 a method_22755 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)V schedule a method_22756 + p 1 task + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Ljava/util/concurrent/CompletableFuture; method_22757 a method_22757 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V rebuildSectionSync a method_3627 + p 1 section + p 2 regionCache + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)V method_23618 a method_23618 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_38555 a method_38555 + m ()I getToBatchCount b method_34845 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)V method_23086 b method_23086 + m ()I getToUpload c method_34846 + m ()I getFreeBufferCount d method_34847 + m ()Lnet/minecraft/world/phys/Vec3; getCameraPosition e method_19420 + m ()V uploadAllPendingUploads f method_22761 + m ()V blockUntilClear g method_3632 + m ()Z isQueueEmpty h method_3630 + m ()V dispose i method_3619 + m ()V runTask j method_22763 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask; pollTask k method_39132 + m ()V clearBatchQueue l method_3633 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/LevelRenderer;Ljava/util/concurrent/Executor;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;)V + p 1 level + p 2 renderer + p 3 executor + p 4 buffers + p 5 blockRenderer + p 6 blockEntityRenderer +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection gia$a net/minecraft/class_846$class_849 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; UNCOMPILED a field_4451 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; EMPTY b field_52172 + f Ljava/util/Set; hasBlocks c field_4450 + f Ljava/util/List; renderableBlockEntities d field_4456 + f Lnet/minecraft/client/renderer/chunk/VisibilitySet; visibilitySet e field_4455 + f Lcom/mojang/blaze3d/vertex/MeshData$SortState; transparencyState f field_4453 + m ()Z hasNoRenderableLayers a method_3645 + m (Lnet/minecraft/client/renderer/RenderType;)Z isEmpty a method_3641 + p 1 renderType + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z facesCanSeeEachother a method_3650 + p 1 face1 + p 2 face2 + m ()Ljava/util/List; getRenderableBlockEntities b method_3642 + m ()V + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection$1 gia$a$1 net/minecraft/class_846$class_849$1 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection$2 gia$a$2 net/minecraft/class_846$class_849$2 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection gia$b net/minecraft/class_846$class_851 + f I SIZE a field_32832 + f I index b field_29641 + f Ljava/util/concurrent/atomic/AtomicReference; compiled c field_4459 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; field_20833 d field_20833 + f Ljava/util/concurrent/atomic/AtomicInteger; initialCompilationCancelCount e field_36374 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$RebuildTask; lastRebuildTask f field_20834 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$ResortTransparencyTask; lastResortTransparencyTask g field_4461 + f Ljava/util/Set; globalBlockEntities h field_4457 + f Ljava/util/Map; buffers i field_4462 + f Lnet/minecraft/world/phys/AABB; bb j field_4458 + f Z dirty k field_4464 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; origin l field_4467 + f [Lnet/minecraft/core/BlockPos$MutableBlockPos; relativeOrigins m field_4472 + f Z playerChanged n field_4463 + m ()Z hasAllNeighbors a method_3673 + m (III)V setOrigin a method_3653 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexBuffer; getBuffer a method_3656 + p 1 renderType + m (Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;)Z resortTransparency a method_22773 + p 1 renderType + p 2 sectionRenderDispatcher + m (Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask; createCompileTask a method_3674 + p 1 regionCache + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V setCompiled a method_60908 + p 1 compiled + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V rebuildSectionAsync a method_22777 + p 1 sectionRenderDispatcher + p 2 regionCache + m (Ljava/util/Collection;)V updateGlobalBlockEntities a method_22778 + p 1 blockEntities + m (Lnet/minecraft/core/BlockPos;)Z doesChunkExistAt a method_3651 + p 1 pos + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; getRelativeOrigin a method_3676 + p 1 direction + m (Z)V setDirty a method_3654 + p 1 playerChanged + m ([Lnet/minecraft/core/BlockPos$MutableBlockPos;)V method_3660 a method_3660 + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox b method_40051 + m (III)Z isAxisAlignedWith b method_52841 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexBuffer; method_22779 b method_22779 + m (Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V compileSync b method_22781 + p 1 regionCache + m ()D getDistToPlayerSqr c method_3668 + m (Lnet/minecraft/client/renderer/RenderType;)Lnet/minecraft/client/renderer/RenderType; method_22780 c method_22780 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; getCompiled d method_3677 + m ()V releaseBuffers e method_3659 + m ()Lnet/minecraft/core/BlockPos; getOrigin f method_3670 + m ()V setNotDirty g method_3662 + m ()Z isDirty h method_3672 + m ()Z isDirtyFromPlayer i method_3661 + m ()Z cancelTasks j method_3663 + m ()V reset k method_3675 + m ()Lcom/mojang/blaze3d/vertex/VertexSorting; createVertexSorting l method_60909 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;IIII)V + p 2 index + p 3 originX + p 4 originY + p 5 originZ +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask gia$b$a net/minecraft/class_846$class_851$class_4577 + f D distAtCreation a field_20835 + f Ljava/util/concurrent/atomic/AtomicBoolean; isCancelled b field_20836 + f Z isHighPriority c field_35304 + m ()V cancel a method_22782 + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Ljava/util/concurrent/CompletableFuture; doTask a method_22783 + p 1 sectionBufferBuilderPack + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)I compareTo a method_22784 + p 1 other + m ()Ljava/lang/String; name b method_38556 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DZ)V + p 1 renderSection + p 2 distAtCreation + p 4 isHighPriority +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$RebuildTask gia$b$b net/minecraft/class_846$class_851$class_4578 + f Lnet/minecraft/client/renderer/chunk/RenderChunkRegion; region d field_20838 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; field_20839 e field_20839 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;Ljava/util/List;Ljava/lang/Throwable;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_23619 a method_23619 + m (Ljava/util/List;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/MeshData;)V method_22788 a method_22788 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DLnet/minecraft/client/renderer/chunk/RenderChunkRegion;Z)V + p 2 distAtCreation + p 4 region + p 5 isHighPriority +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$ResortTransparencyTask gia$b$c net/minecraft/class_846$class_851$class_4579 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; field_20840 d field_20840 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; compiledSection e field_20841 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Ljava/lang/Throwable;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_22789 a method_22789 + m (Ljava/lang/Void;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_22790 a method_22790 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DLnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V + p 2 distAtCreation + p 4 compiledSection +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult gia$c net/minecraft/class_846$class_4690 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; SUCCESSFUL a field_21438 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; CANCELLED b field_21439 + f [Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; $VALUES c field_21440 + m ()[Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; $values a method_36923 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/chunk/VisGraph gib net/minecraft/class_852 + f I SIZE_IN_BITS a field_32833 + f I LEN b field_32834 + f I MASK c field_32835 + f I SIZE d field_32836 + f I X_SHIFT e field_32837 + f I Z_SHIFT f field_32838 + f I Y_SHIFT g field_32839 + f I DX h field_4477 + f I DZ i field_4476 + f I DY j field_4475 + f I INVALID_INDEX k field_32840 + f [Lnet/minecraft/core/Direction; DIRECTIONS l field_4479 + f Ljava/util/BitSet; bitSet m field_4478 + f [I INDEX_OF_EDGES n field_4474 + f I empty o field_4473 + m ()Lnet/minecraft/client/renderer/chunk/VisibilitySet; resolve a method_3679 + m (I)Ljava/util/Set; floodFill a method_3687 + p 1 index + m (III)I getIndex a method_3681 + p 0 x + p 1 y + p 2 z + m (ILjava/util/Set;)V addEdges a method_3684 + p 1 index + p 2 faces + m (ILnet/minecraft/core/Direction;)I getNeighborIndexAtFace a method_3685 + p 1 index + p 2 face + m (Lnet/minecraft/core/BlockPos;)V setOpaque a method_3682 + p 1 pos + m ([I)V method_3680 a method_3680 + m (Lnet/minecraft/core/BlockPos;)I getIndex b method_3683 + p 0 pos + m ()V + m ()V +c net/minecraft/client/renderer/chunk/VisGraph$1 gib$1 net/minecraft/class_852$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4480 + m ()V +c net/minecraft/client/renderer/chunk/VisibilitySet gic net/minecraft/class_854 + f I FACINGS a field_4491 + f Ljava/util/BitSet; data b field_4492 + m (Ljava/util/Set;)V add a method_3693 + p 1 faces + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z visibilityBetween a method_3695 + p 1 face + p 2 otherFace + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Z)V set a method_3692 + p 1 face + p 2 otherFace + p 3 visible + m (Z)V setAll a method_3694 + p 1 visible + m ()V + m ()V +c net/minecraft/client/renderer/chunk/package-info gid net/minecraft/class_6253 +c net/minecraft/client/renderer/culling/Frustum gie net/minecraft/class_4604 + f I OFFSET_STEP a field_34820 + f Lorg/joml/FrustumIntersection; intersection b field_40823 + f Lorg/joml/Matrix4f; matrix c field_40824 + f Lorg/joml/Vector4f; viewVector d field_34821 + f D camX e field_20995 + f D camY f field_20996 + f D camZ g field_20997 + m (DDD)V prepare a method_23088 + p 1 camX + p 3 camY + p 5 camZ + m (DDDDDD)Z cubeInFrustum a method_23089 + p 1 minX + p 3 minY + p 5 minZ + p 7 maxX + p 9 maxY + p 11 maxZ + m (I)Lnet/minecraft/client/renderer/culling/Frustum; offsetToFullyIncludeCameraCube a method_38557 + p 1 offset + m (Lnet/minecraft/world/phys/AABB;)Z isVisible a method_23093 + p 1 aabb + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V calculateFrustum a method_23092 + p 1 frustum + p 2 projection + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V + p 1 frustum + p 2 projection + m (Lnet/minecraft/client/renderer/culling/Frustum;)V + p 1 other +c net/minecraft/client/renderer/culling/package-info gif net/minecraft/class_6254 +c net/minecraft/client/renderer/debug/BeeDebugRenderer gig net/minecraft/class_4703 + f Lnet/minecraft/client/Minecraft; minecraft A field_21532 + f Ljava/util/Map; hives B field_21533 + f Ljava/util/Map; beeInfosPerEntity C field_21534 + f Ljava/util/UUID; lastLookedAtUuid D field_21535 + f Z SHOW_GOAL_FOR_ALL_BEES a field_32841 + f Z SHOW_NAME_FOR_ALL_BEES b field_32842 + f Z SHOW_HIVE_FOR_ALL_BEES c field_32843 + f Z SHOW_FLOWER_POS_FOR_ALL_BEES d field_32844 + f Z SHOW_TRAVEL_TICKS_FOR_ALL_BEES e field_32845 + f Z SHOW_PATH_FOR_ALL_BEES f field_32846 + f Z SHOW_GOAL_FOR_SELECTED_BEE g field_32847 + f Z SHOW_NAME_FOR_SELECTED_BEE h field_32848 + f Z SHOW_HIVE_FOR_SELECTED_BEE i field_32849 + f Z SHOW_FLOWER_POS_FOR_SELECTED_BEE j field_32850 + f Z SHOW_TRAVEL_TICKS_FOR_SELECTED_BEE k field_32851 + f Z SHOW_PATH_FOR_SELECTED_BEE l field_32852 + f Z SHOW_HIVE_MEMBERS m field_32853 + f Z SHOW_BLACKLISTS n field_32854 + f I MAX_RENDER_DIST_FOR_HIVE_OVERLAY o field_32855 + f I MAX_RENDER_DIST_FOR_BEE_OVERLAY p field_32856 + f I MAX_TARGETING_DIST q field_32857 + f I HIVE_TIMEOUT r field_32858 + f F TEXT_SCALE s field_32859 + f I WHITE t field_32860 + f I YELLOW u field_32861 + f I ORANGE v field_32862 + f I GREEN w field_32863 + f I GRAY x field_32864 + f I PINK y field_32865 + f I RED z field_32866 + m (I)V removeBeeInfo a method_35794 + p 1 id + m (ILnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z method_35795 a method_35795 + m (JLjava/util/Map$Entry;)Z method_23803 a method_23803 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V addOrUpdateBeeInfo a method_23805 + p 1 beeInfo + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; getPosDescription a method_23806 + p 1 beeInfo + p 2 pos + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;)Ljava/util/Set; getHiveMemberNames a method_35796 + p 1 hiveInfo + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;J)V addOrUpdateHiveInfo a method_23807 + p 1 hiveInfo + p 2 lastSeen + m (Lnet/minecraft/world/entity/Entity;)V method_23804 a method_23804 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V doRender a method_23823 + p 1 poseStack + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V renderPath a method_23820 + p 1 poseStack + p 2 buffer + p 3 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;Ljava/util/Collection;)V renderHiveInfo a method_23821 + p 1 poseStack + p 2 buffer + p 3 hiveInfo + p 4 beeUuids + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;II)V renderTextOverHive a method_23815 + p 0 poseStack + p 1 buffer + p 2 text + p 3 hiveInfo + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;II)V renderTextOverPos a method_23816 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightHive a method_23808 + p 0 poseStack + p 1 buffer + p 2 hivePos + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V renderGhostHive a method_23813 + p 1 poseStack + p 2 buffer + p 3 hivePos + p 4 ghostHives + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/Set;)V method_23817 a method_23817 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/Position;ILjava/lang/String;IF)V renderTextOverMob a method_23814 + p 0 poseStack + p 1 buffer + p 2 pos + p 3 layer + p 4 text + p 5 color + p 6 scale + m (Ljava/util/Collection;)Ljava/lang/String; getBeeUuidsAsString a method_23825 + p 0 beeUuids + m (Ljava/util/Map$Entry;)Z method_23953 a method_23953 + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_23818 a method_23818 + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;Lnet/minecraft/core/BlockPos;)V method_24083 a method_24083 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getHiveMembers a method_23822 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z method_23810 a method_23810 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V method_23812 a method_23812 + m (Lnet/minecraft/core/BlockPos;Ljava/util/Map;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BeeDebugRenderer$HiveDebugInfo;)V method_23811 a method_23811 + m ()V clearRemovedBees b method_23952 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z isBeeSelected b method_23827 + p 1 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderFlowerInfos b method_23826 + p 1 poseStack + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V renderBeeInfo b method_23824 + p 1 poseStack + p 2 buffer + p 3 beeInfo + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_24082 b method_24082 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/List; method_30109 b method_30109 + m ()V clearRemovedHives c method_23819 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z isPlayerCloseEnoughToMob c method_23829 + p 1 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_23831 c method_23831 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Set; method_30110 c method_30110 + m ()Ljava/util/Map; createHiveBlacklistMap d method_24084 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Set; method_30111 d method_30111 + m ()Lnet/minecraft/client/Camera; getCamera e method_23828 + m ()Ljava/util/Map; getGhostHives f method_23830 + m ()V updateLastLookedAtUuid g method_23832 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/BeeDebugRenderer$HiveDebugInfo gig$a net/minecraft/class_4703$class_8682 + f Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; info a comp_1622 + f J lastSeen b comp_1623 + m ()Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; info a comp_1622 + m ()J lastSeen b comp_1623 + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;J)V +c net/minecraft/client/renderer/debug/BrainDebugRenderer gih net/minecraft/class_4207 + f F TEXT_SCALE A field_32897 + f I WHITE B field_32898 + f I YELLOW C field_32867 + f I CYAN D field_32868 + f I GREEN E field_32869 + f I GRAY F field_32870 + f I PINK G field_32871 + f I RED H field_32872 + f I ORANGE I field_32873 + f Lnet/minecraft/client/Minecraft; minecraft J field_18786 + f Ljava/util/Map; pois K field_18787 + f Ljava/util/Map; brainDumpsPerEntity L field_18921 + f Ljava/util/UUID; lastLookedAtUuid M field_18922 + f Lorg/slf4j/Logger; LOGGER a field_18920 + f Z SHOW_NAME_FOR_ALL b field_32874 + f Z SHOW_PROFESSION_FOR_ALL c field_32875 + f Z SHOW_BEHAVIORS_FOR_ALL d field_32876 + f Z SHOW_ACTIVITIES_FOR_ALL e field_32877 + f Z SHOW_INVENTORY_FOR_ALL f field_32878 + f Z SHOW_GOSSIPS_FOR_ALL g field_32879 + f Z SHOW_PATH_FOR_ALL h field_32880 + f Z SHOW_HEALTH_FOR_ALL i field_32881 + f Z SHOW_WANTS_GOLEM_FOR_ALL j field_32882 + f Z SHOW_ANGER_LEVEL_FOR_ALL k field_38346 + f Z SHOW_NAME_FOR_SELECTED l field_32883 + f Z SHOW_PROFESSION_FOR_SELECTED m field_32884 + f Z SHOW_BEHAVIORS_FOR_SELECTED n field_32885 + f Z SHOW_ACTIVITIES_FOR_SELECTED o field_32886 + f Z SHOW_MEMORIES_FOR_SELECTED p field_32887 + f Z SHOW_INVENTORY_FOR_SELECTED q field_32888 + f Z SHOW_GOSSIPS_FOR_SELECTED r field_32889 + f Z SHOW_PATH_FOR_SELECTED s field_32890 + f Z SHOW_HEALTH_FOR_SELECTED t field_32891 + f Z SHOW_WANTS_GOLEM_FOR_SELECTED u field_32892 + f Z SHOW_ANGER_LEVEL_FOR_SELECTED v field_38347 + f Z SHOW_POI_INFO w field_32893 + f I MAX_RENDER_DIST_FOR_BRAIN_INFO x field_32894 + f I MAX_RENDER_DIST_FOR_POI_INFO y field_32895 + f I MAX_TARGETING_DIST z field_32896 + m (I)V removeBrainDump a method_35797 + p 1 id + m (ILnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_35798 a method_35798 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V addOrUpdateBrainDump a method_19432 + p 1 brainDump + m (Lnet/minecraft/world/entity/Entity;)V method_23126 a method_23126 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V method_23148 a method_23148 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;DDD)V renderPath a method_23136 + p 1 poseStack + p 2 buffer + p 3 brainDump + p 4 x + p 6 y + p 8 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V renderPoiInfo a method_23137 + p 1 poseStack + p 2 buffer + p 3 poiInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;II)V renderTextOverPoi a method_23133 + p 0 poseStack + p 1 buffer + p 2 text + p 3 poiInfo + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;II)V renderTextOverPos a method_23134 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightPoi a method_23138 + p 0 poseStack + p 1 buffer + p 2 pos + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V renderGhostPoi a method_23131 + p 1 poseStack + p 2 buffer + p 3 pos + p 4 poiName + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/Position;ILjava/lang/String;IF)V renderTextOverMob a method_23132 + p 0 poseStack + p 1 buffer + p 2 pos + p 3 layer + p 4 text + p 5 color + p 6 scale + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V addPoi a method_19701 + p 1 poiInfo + m (Ljava/util/Map$Entry;)Z method_24804 a method_24804 + m (Lnet/minecraft/core/BlockPos;)V removePoi a method_19434 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)V setFreeTicketCount a method_19702 + p 1 pos + p 2 freeTicketCount + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_29384 a method_29384 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V method_23128 a method_23128 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V method_23129 a method_23129 + m ()V clearRemovedEntities b method_24805 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z isMobSelected b method_23145 + p 1 brainDump + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V doRender b method_23135 + p 1 poseStack + p 2 buffer + p 3 x + p 5 y + p 7 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;DDD)V renderBrainInfo b method_23140 + p 1 poseStack + p 2 buffer + p 3 brainDump + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)Ljava/util/Set; getTicketHolderNames b method_23141 + p 1 poiInfo + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getTicketHolders b method_23142 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_23127 b method_23127 + m ()Ljava/util/Map; getGhostPois c method_23144 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z isPlayerCloseEnoughToMob c method_23147 + p 1 brainDump + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)Ljava/util/Set; getPotentialTicketHolderNames c method_29385 + p 1 poiInfo + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getPotentialTicketHolders c method_29386 + p 1 pos + m ()V updateLastLookedAtUuid d method_23146 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/List; method_30112 d method_30112 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo gih$a net/minecraft/class_4207$class_4233 + f Lnet/minecraft/core/BlockPos; pos a field_18931 + f Ljava/lang/String; type b field_18932 + f I freeTicketCount c field_18933 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;I)V + p 1 pos + p 2 type + p 3 freeTicketCount +c net/minecraft/client/renderer/debug/BreezeDebugRenderer gii net/minecraft/class_8985 + f I JUMP_TARGET_LINE_COLOR a field_47465 + f I TARGET_LINE_COLOR b field_47466 + f I INNER_CIRCLE_COLOR c field_47467 + f I MIDDLE_CIRCLE_COLOR d field_47468 + f I OUTER_CIRCLE_COLOR e field_47469 + f I CIRCLE_VERTICES f field_47470 + f F SEGMENT_SIZE_RADIANS g field_47471 + f Lnet/minecraft/client/Minecraft; minecraft h field_47472 + f Ljava/util/Map; perEntity i field_47473 + m ()V clear a method_55255 + m (ILorg/joml/Matrix4f;DDDLcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/Vec3;FI)V drawCircleVertex a method_55256 + p 0 index + p 1 pose + p 2 xOffset + p 4 yOffset + p 6 zOffset + p 8 consumer + p 9 circleCenter + p 10 radius + p 11 color + m (Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo;)V add a method_55266 + p 1 breeze + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_55257 a method_55257 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z method_55258 a method_55258 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V render a method_55259 + p 1 poseStack + p 2 buffer + p 3 xOffset + p 5 yOffset + p 7 zOffset + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/phys/Vec3;)V method_55260 a method_55260 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)V method_55261 a method_55261 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;I)V drawLine a method_55262 + p 0 poseStack + p 1 buffer + p 2 xOffset + p 4 yOffset + p 6 zOffset + p 8 fromPos + p 9 toPos + p 10 color + m (Lnet/minecraft/client/player/LocalPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;)V method_55263 a method_55263 + m (Lnet/minecraft/client/player/LocalPlayer;Ljava/lang/Integer;)Lnet/minecraft/world/entity/Entity; method_55264 a method_55264 + m (Lorg/joml/Matrix4f;DDDLcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/Vec3;FI)V drawCircle a method_55265 + p 0 pose + p 1 xOffset + p 3 yOffset + p 5 zOffset + p 7 consumer + p 8 pos + p 9 radius + p 10 color + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/ChunkBorderRenderer gij net/minecraft/class_862 + f Lnet/minecraft/client/Minecraft; minecraft a field_4516 + f I CELL_BORDER b field_35557 + f I YELLOW c field_35558 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/ChunkDebugRenderer gik net/minecraft/class_860 + f Lnet/minecraft/client/Minecraft; minecraft a field_4509 + f D lastUpdateTime b field_4510 + f I radius c field_4511 + f Lnet/minecraft/client/renderer/debug/ChunkDebugRenderer$ChunkData; data d field_20998 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/ChunkDebugRenderer$ChunkData gik$a net/minecraft/class_860$class_4605 + f Ljava/util/Map; clientData a field_21000 + f Ljava/util/concurrent/CompletableFuture; serverData b field_21001 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/resources/ResourceKey;II)Ljava/util/Map; method_23096 a method_23096 + m (Lnet/minecraft/client/renderer/debug/ChunkDebugRenderer;Lnet/minecraft/client/server/IntegratedServer;DD)V + p 2 integratedServer + p 3 x + p 5 z +c net/minecraft/client/renderer/debug/CollisionBoxRenderer gil net/minecraft/class_865 + f Lnet/minecraft/client/Minecraft; minecraft a field_4540 + f D lastUpdateTime b field_4541 + f Ljava/util/List; shapes c field_4542 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/DebugRenderer gim net/minecraft/class_863 + f Lnet/minecraft/client/renderer/debug/PathfindingRenderer; pathfindingRenderer a field_4523 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; waterDebugRenderer b field_4528 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; chunkBorderRenderer c field_4532 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; heightMapRenderer d field_4538 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; collisionBoxRenderer e field_4534 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; supportBlockRenderer f field_44827 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; neighborsUpdateRenderer g field_4535 + f Lnet/minecraft/client/renderer/debug/StructureRenderer; structureRenderer h field_4539 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; lightDebugRenderer i field_4536 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; worldGenAttemptRenderer j field_4537 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; solidFaceRenderer k field_4517 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; chunkRenderer l field_4533 + f Lnet/minecraft/client/renderer/debug/BrainDebugRenderer; brainDebugRenderer m field_18777 + f Lnet/minecraft/client/renderer/debug/VillageSectionsDebugRenderer; villageSectionsDebugRenderer n field_22408 + f Lnet/minecraft/client/renderer/debug/BeeDebugRenderer; beeDebugRenderer o field_21547 + f Lnet/minecraft/client/renderer/debug/RaidDebugRenderer; raidDebugRenderer p field_19325 + f Lnet/minecraft/client/renderer/debug/GoalSelectorDebugRenderer; goalSelectorRenderer q field_18778 + f Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer; gameTestDebugRenderer r field_20519 + f Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer; gameEventListenerRenderer s field_28254 + f Lnet/minecraft/client/renderer/debug/LightSectionDebugRenderer; skyLightSectionDebugRenderer t field_44674 + f Lnet/minecraft/client/renderer/debug/BreezeDebugRenderer; breezeDebugRenderer u field_47474 + f Z renderChunkborder v field_4531 + m ()V clear a method_20413 + m (Lnet/minecraft/world/entity/Entity;)Z method_23100 a method_23100 + m (Lnet/minecraft/world/entity/Entity;I)Ljava/util/Optional; getTargetedEntity a method_23101 + p 0 entity + p 1 distance + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;DDD)V render a method_23099 + p 1 poseStack + p 2 bufferSource + p 3 camX + p 5 camY + p 7 camZ + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDDDDFFFF)V renderFilledBox a method_23098 + p 0 poseStack + p 1 bufferSource + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/AABB;FFFF)V renderFilledBox a method_23102 + p 0 poseStack + p 1 bufferSource + p 2 boundingBox + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDI)V renderFloatingText a method_23105 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDIF)V renderFloatingText a method_23106 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + p 10 scale + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDIFZFZ)V renderFloatingText a method_23107 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + p 10 scale + p 13 transparent + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;IIII)V renderFloatingText a method_23108 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 4 y + p 5 z + p 6 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;FFFF)V renderFilledUnitCube a method_54808 + p 0 poseStack + p 1 bufferSource + p 2 pos + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;FFFFF)V renderFilledBox a method_23103 + p 0 poseStack + p 1 bufferSource + p 2 pos + p 3 scale + p 4 red + p 5 green + p 6 blue + p 7 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;FFFF)V renderFilledBox a method_23104 + p 0 poseStack + p 1 bufferSource + p 2 startPos + p 3 endPos + p 4 red + p 5 green + p 6 blue + p 7 alpha + m ()Z switchRenderChunkborder b method_3713 + c Toggles the {@link #renderChunkborder} value, effectively toggling the {@link #chunkBorderRenderer} on or off.\n\n@return the new, inverted value + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer gim$a net/minecraft/class_863$class_864 + m ()V clear a method_20414 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V render a method_23109 + p 1 poseStack + p 2 bufferSource + p 3 camX + p 5 camY + p 7 camZ +c net/minecraft/client/renderer/debug/GameEventListenerRenderer gin net/minecraft/class_5739 + f Lnet/minecraft/client/Minecraft; minecraft a field_28255 + f I LISTENER_RENDER_DIST b field_32899 + f F BOX_HEIGHT c field_32900 + f Ljava/util/List; trackedGameEvents d field_28256 + f Ljava/util/List; trackedListeners e field_28257 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V trackGameEvent a method_33087 + p 1 gameEvent + p 2 position + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener;)Z method_33086 a method_33086 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V trackListener a method_33088 + p 1 listenerSource + p 2 listenerRange + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLnet/minecraft/world/phys/Vec3;)V method_33090 a method_33090 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/AABB;FFFF)V renderFilledBox a method_33089 + p 0 poseStack + p 1 buffer + p 2 boundingBox + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/Vec3;)V method_33092 a method_33092 + m (Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLnet/minecraft/world/phys/Vec3;)V method_33091 a method_33091 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedGameEvent gin$a net/minecraft/class_5739$class_5740 + f J timeStamp a comp_678 + f Lnet/minecraft/resources/ResourceKey; gameEvent b comp_679 + f Lnet/minecraft/world/phys/Vec3; position c comp_680 + m ()Z isExpired a method_33093 + m ()J timeStamp b comp_678 + m ()Lnet/minecraft/resources/ResourceKey; gameEvent c comp_679 + m ()Lnet/minecraft/world/phys/Vec3; position d comp_680 + m (JLnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V +c net/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener gin$b net/minecraft/class_5739$class_5741 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerSource a field_28261 + f I listenerRange b field_28262 + m (Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getPosition a method_33094 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)Z isExpired a method_33095 + p 1 level + p 2 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z method_42601 a method_42601 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 listenerSource + p 2 listenerRange +c net/minecraft/client/renderer/debug/GameTestDebugRenderer gio net/minecraft/class_4503 + f F PADDING a field_32901 + f Ljava/util/Map; markers b field_20520 + m (JLjava/util/Map$Entry;)Z method_23110 a method_23110 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker;)V renderMarker a method_23111 + p 1 poseStack + p 2 buffer + p 3 pos + p 4 marker + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;I)V addMarker a method_22123 + p 1 pos + p 2 color + p 3 text + p 4 removeAfter + c how long after the current time to remove this marker, in milliseconds + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker;)V method_49048 b method_49048 + m ()V +c net/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker gio$a net/minecraft/class_4503$class_4504 + f I color a field_20521 + f Ljava/lang/String; text b field_20522 + f J removeAtTime c field_20523 + m ()F getR a method_23112 + m ()F getG b method_23113 + m ()F getB c method_23114 + m ()F getA d method_23115 + m (ILjava/lang/String;J)V + p 1 color + p 2 text + p 3 removeAtTime +c net/minecraft/client/renderer/debug/GoalSelectorDebugRenderer gip net/minecraft/class_4205 + f I MAX_RENDER_DIST a field_32902 + f Lnet/minecraft/client/Minecraft; minecraft b field_18780 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; goalSelectors c field_18781 + m (I)V removeGoalSelector a method_35799 + p 1 mobId + m (ILnet/minecraft/core/BlockPos;Ljava/util/List;)V addGoalSelector a method_19430 + p 1 mobId + p 2 entityPos + p 3 goals + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/GoalSelectorDebugRenderer$EntityGoalInfo gip$a net/minecraft/class_4205$class_8683 + f Lnet/minecraft/core/BlockPos; entityPos a comp_1624 + f Ljava/util/List; goals b comp_1625 + m ()Lnet/minecraft/core/BlockPos; entityPos a comp_1624 + m ()Ljava/util/List; goals b comp_1625 + m (Lnet/minecraft/core/BlockPos;Ljava/util/List;)V +c net/minecraft/client/renderer/debug/HeightMapRenderer giq net/minecraft/class_867 + f Lnet/minecraft/client/Minecraft; minecraft a field_4613 + f I CHUNK_DIST b field_32903 + f F BOX_HEIGHT c field_32904 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lorg/joml/Vector3f; getColor a method_27037 + p 1 types + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/HeightMapRenderer$1 giq$1 net/minecraft/class_867$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$Heightmap$Types a field_23778 + m ()V +c net/minecraft/client/renderer/debug/LightDebugRenderer gir net/minecraft/class_866 + f Lnet/minecraft/client/Minecraft; minecraft a field_4612 + f I MAX_RENDER_DIST b field_32905 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/LightSectionDebugRenderer gis net/minecraft/class_8520 + f Ljava/time/Duration; REFRESH_INTERVAL a field_44675 + f I RADIUS b field_44676 + f Lorg/joml/Vector4f; LIGHT_AND_BLOCKS_COLOR c field_44677 + f Lorg/joml/Vector4f; LIGHT_ONLY_COLOR d field_44678 + f Lnet/minecraft/client/Minecraft; minecraft e field_44679 + f Lnet/minecraft/world/level/LightLayer; lightLayer f field_44680 + f Ljava/time/Instant; lastUpdateTime g field_44681 + f Lnet/minecraft/client/renderer/debug/LightSectionDebugRenderer$SectionData; data h field_44682 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/SectionPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLorg/joml/Vector4f;)V renderFaces a method_51457 + p 0 poseStack + p 1 shape + p 2 pos + p 3 buffer + p 4 camX + p 6 camY + p 8 camZ + p 10 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLorg/joml/Vector4f;)V renderEdges a method_51458 + p 0 poseStack + p 1 shape + p 2 pos + p 3 bufferSource + p 4 camX + p 6 camY + p 8 camZ + p 10 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDIIIIIILorg/joml/Vector4f;)V renderEdge a method_51459 + p 0 poseStack + p 1 buffer + p 2 camX + p 4 camY + p 6 camZ + p 8 x1 + p 9 y1 + p 10 z1 + p 11 x2 + p 12 y2 + p 13 z2 + p 14 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;DDDIIILorg/joml/Vector4f;)V renderFace a method_51460 + p 0 poseStack + p 1 buffer + p 2 face + p 3 camX + p 5 camY + p 7 camZ + p 9 blockX + p 10 blockY + p 11 blockZ + p 12 color + m (Lnet/minecraft/core/SectionPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLorg/joml/Vector4f;Lnet/minecraft/core/Direction;III)V method_51461 a method_51461 + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/MultiBufferSource;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLorg/joml/Vector4f;IIIIII)V method_51462 a method_51462 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/LightLayer;)V + p 1 minecraft + p 2 lightLayer + m ()V +c net/minecraft/client/renderer/debug/LightSectionDebugRenderer$SectionData gis$a net/minecraft/class_8520$class_8521 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; lightAndBlocksShape a field_44684 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; lightShape b field_44685 + f Lnet/minecraft/core/SectionPos; minPos c field_44686 + m (Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/core/SectionPos;ILnet/minecraft/world/level/LightLayer;)V + p 1 levelLightEngine + p 2 pos + p 3 radius + p 4 lightLayer +c net/minecraft/client/renderer/debug/NeighborsUpdateRenderer git net/minecraft/class_869 + f Lnet/minecraft/client/Minecraft; minecraft a field_4622 + f Ljava/util/Map; lastUpdate b field_4623 + m (JLnet/minecraft/core/BlockPos;)V addUpdate a method_3870 + p 1 gameTime + p 3 pos + m (Ljava/lang/Long;)Ljava/util/Map; method_30113 a method_30113 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/PathfindingRenderer giu net/minecraft/class_868 + f Ljava/util/Map; pathMap a field_4616 + f Ljava/util/Map; pathMaxDist b field_4617 + f Ljava/util/Map; creationMap c field_4615 + f J TIMEOUT d field_32906 + f F MAX_RENDER_DIST e field_32907 + f Z SHOW_OPEN_CLOSED f field_32908 + f Z SHOW_OPEN_CLOSED_COST_MALUS g field_32909 + f Z SHOW_OPEN_CLOSED_NODE_TYPE_WITH_TEXT h field_32910 + f Z SHOW_OPEN_CLOSED_NODE_TYPE_WITH_BOX i field_32911 + f Z SHOW_GROUND_LABELS j field_32912 + f F TEXT_SCALE k field_32913 + m (ILnet/minecraft/world/level/pathfinder/Path;F)V addPath a method_3869 + p 1 entityId + p 2 path + p 3 maxDistanceToWaypoint + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/pathfinder/Path;DDD)V renderPathLine a method_23117 + p 0 poseStack + p 1 consumer + p 2 path + p 3 x + p 5 y + p 7 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/pathfinder/Path;FZZDDD)V renderPath a method_23118 + p 0 poseStack + p 1 buffer + p 2 path + p 6 x + p 8 y + p 10 z + m (Lnet/minecraft/core/BlockPos;DDD)F distanceToCamera a method_23119 + p 0 pos + p 1 x + p 3 y + p 5 z + m ()V +c net/minecraft/client/renderer/debug/RaidDebugRenderer giv net/minecraft/class_4304 + f I MAX_RENDER_DIST a field_32914 + f F TEXT_SCALE b field_32915 + f Lnet/minecraft/client/Minecraft; minecraft c field_19326 + f Ljava/util/Collection; raidCenters d field_19327 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;I)V renderTextOverBlock a method_23123 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightRaidCenter a method_23122 + p 0 poseStack + p 1 buffer + p 2 pos + m (Ljava/util/Collection;)V setRaidCenters a method_20561 + p 1 raidCenters + m ()Lnet/minecraft/client/Camera; getCamera b method_23125 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/SolidFaceRenderer giw net/minecraft/class_871 + f Lnet/minecraft/client/Minecraft; minecraft a field_4628 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/StructureRenderer gix net/minecraft/class_870 + f Lnet/minecraft/client/Minecraft; minecraft a field_4624 + f Ljava/util/Map; postMainBoxes b field_4626 + f Ljava/util/Map; postPieces c field_4627 + f I MAX_RENDER_DIST d field_32916 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Map; method_52842 a method_52842 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V addBoundingBox a method_3871 + p 1 boundingBox + p 2 pieces + p 3 dimension + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Map; method_52843 b method_52843 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/SupportBlockRenderer giy net/minecraft/class_8560 + f Lnet/minecraft/client/Minecraft; minecraft a field_44828 + f D lastUpdateTime b field_44829 + f Ljava/util/List; surroundEntities c field_44830 + m (Lnet/minecraft/world/entity/Entity;)D getBias a method_51789 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/Entity;Ljava/util/function/DoubleSupplier;FFF)V drawHighlights a method_51790 + p 1 poseStack + p 2 buffer + p 3 camX + p 5 camY + p 7 camZ + p 9 entity + p 10 biasGetter + p 11 red + p 12 green + p 13 blue + m (Ljava/util/function/DoubleSupplier;Lnet/minecraft/world/entity/Entity;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLnet/minecraft/client/renderer/MultiBufferSource;FFFLnet/minecraft/core/BlockPos;)V method_51792 a method_51792 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLnet/minecraft/client/renderer/MultiBufferSource;DFFF)V highlightPosition a method_51791 + p 1 pos + p 2 poseStack + p 3 camX + p 5 camY + p 7 camZ + p 9 buffer + p 10 bias + p 12 red + p 13 green + p 14 blue + m ()D method_51793 b method_51793 + m (Lnet/minecraft/world/entity/Entity;)D method_51794 b method_51794 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/VillageSectionsDebugRenderer giz net/minecraft/class_4841 + f I MAX_RENDER_DIST_FOR_VILLAGE_SECTIONS a field_32917 + f Ljava/util/Set; villageSections b field_22409 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/SectionPos;)V highlightVillageSection a method_24810 + p 0 poseStack + p 1 buffer + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/SectionPos;)V method_49049 a method_49049 + m (Lnet/minecraft/core/SectionPos;)V setVillageSection a method_24808 + p 1 pos + m (Lnet/minecraft/core/SectionPos;)V setNotVillageSection b method_24809 + p 1 pos + m ()V +c net/minecraft/client/renderer/debug/WaterDebugRenderer gja net/minecraft/class_872 + f Lnet/minecraft/client/Minecraft; minecraft a field_4629 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/WorldGenAttemptRenderer gjb net/minecraft/class_873 + f Ljava/util/List; toRender a field_4640 + f Ljava/util/List; scales b field_4635 + f Ljava/util/List; alphas c field_4637 + f Ljava/util/List; reds d field_4639 + f Ljava/util/List; greens e field_4636 + f Ljava/util/List; blues f field_4638 + m (Lnet/minecraft/core/BlockPos;FFFFF)V addPos a method_3872 + p 1 pos + p 2 scale + p 3 red + p 4 green + p 5 blue + p 6 alpha + m ()V +c net/minecraft/client/renderer/debug/package-info gjc net/minecraft/class_6255 +c net/minecraft/client/renderer/entity/AbstractHorseRenderer gjd net/minecraft/class_875 + f F scale a field_4641 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3874 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HorseModel;F)V + p 1 context + p 2 model + p 3 scale +c net/minecraft/client/renderer/entity/AbstractZombieRenderer gje net/minecraft/class_968 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_LOCATION a field_4819 + m (Lnet/minecraft/world/entity/monster/Zombie;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4163 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Zombie;)Z isShaking b method_25449 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/ZombieModel;Lnet/minecraft/client/model/ZombieModel;Lnet/minecraft/client/model/ZombieModel;)V + p 1 context + p 2 model + p 3 innerModel + p 4 outerModel + m ()V +c net/minecraft/client/renderer/entity/AllayRenderer gjf net/minecraft/class_7310 + f Lnet/minecraft/resources/ResourceLocation; ALLAY_TEXTURE a field_38461 + m (Lnet/minecraft/world/entity/animal/allay/Allay;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42744 + m (Lnet/minecraft/world/entity/animal/allay/Allay;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_42745 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArmadilloRenderer gjg net/minecraft/class_9084 + f Lnet/minecraft/resources/ResourceLocation; ARMADILLO_LOCATION a field_47887 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55827 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArmorStandRenderer gjh net/minecraft/class_877 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_SKIN_LOCATION a field_4642 + c A constant instance of the armor stand texture, wrapped inside a ResourceLocation wrapper. + m (Lnet/minecraft/world/entity/decoration/ArmorStand;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3880 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/ArmorStand;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3877 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/decoration/ArmorStand;ZZZ)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_24301 + p 1 livingEntity + p 2 bodyVisible + p 3 translucent + p 4 glowing + m (Lnet/minecraft/world/entity/decoration/ArmorStand;)Z shouldShowName b method_3878 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArrowRenderer gji net/minecraft/class_876 + m (Lnet/minecraft/world/entity/projectile/AbstractArrow;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3875 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFIIII)V vertex a method_23153 + p 1 pose + p 2 consumer + p 3 x + p 4 y + p 5 z + p 6 u + p 7 v + p 8 normalX + p 9 normalY + p 10 normalZ + p 11 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/AxolotlRenderer gjj net/minecraft/class_5774 + f Ljava/util/Map; TEXTURE_BY_TYPE a field_28390 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_33306 + m (Ljava/util/HashMap;)V method_33307 a method_33307 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BatRenderer gjk net/minecraft/class_879 + f Lnet/minecraft/resources/ResourceLocation; BAT_LOCATION a field_4645 + m (Lnet/minecraft/world/entity/ambient/Bat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3883 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BeeRenderer gjl net/minecraft/class_4505 + f Lnet/minecraft/resources/ResourceLocation; ANGRY_BEE_TEXTURE a field_20524 + f Lnet/minecraft/resources/ResourceLocation; ANGRY_NECTAR_BEE_TEXTURE i field_20525 + f Lnet/minecraft/resources/ResourceLocation; BEE_TEXTURE j field_20526 + f Lnet/minecraft/resources/ResourceLocation; NECTAR_BEE_TEXTURE k field_20527 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_22129 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BlazeRenderer gjm net/minecraft/class_878 + f Lnet/minecraft/resources/ResourceLocation; BLAZE_LOCATION a field_4644 + m (Lnet/minecraft/world/entity/monster/Blaze;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3881 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Blaze;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24085 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BoatRenderer gjn net/minecraft/class_881 + f Ljava/util/Map; boatResources a field_27758 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/world/entity/vehicle/Boat$Type; method_32162 a method_32162 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42602 + p 0 type + p 1 chestBoat + m (Lnet/minecraft/world/entity/vehicle/Boat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3891 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/Boat;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3888 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)Lnet/minecraft/client/model/ListModel; createBoatModel a method_42603 + p 1 context + p 2 type + p 3 chestBoat + m (ZLnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lcom/mojang/datafixers/util/Pair; method_32163 a method_32163 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Z)V + p 1 context + p 2 chestBoat +c net/minecraft/client/renderer/entity/BoggedRenderer gjo net/minecraft/class_9255 + f Lnet/minecraft/resources/ResourceLocation; BOGGED_SKELETON_LOCATION a field_49163 + f Lnet/minecraft/resources/ResourceLocation; BOGGED_OUTER_LAYER_LOCATION i field_49164 + m (Lnet/minecraft/world/entity/monster/Bogged;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57803 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BreezeRenderer gjp net/minecraft/class_8986 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_47475 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55267 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_55829 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/model/BreezeModel;[Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/BreezeModel; enable a method_55830 + p 0 model + p 1 parts + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CamelRenderer gjq net/minecraft/class_7763 + f Lnet/minecraft/resources/ResourceLocation; CAMEL_LOCATION a field_40529 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_45801 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layerLocation + m ()V +c net/minecraft/client/renderer/entity/CatRenderer gjr net/minecraft/class_929 + m (Lnet/minecraft/world/entity/animal/Cat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4078 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Cat;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4079 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/animal/Cat;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_16045 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/CaveSpiderRenderer gjs net/minecraft/class_880 + f Lnet/minecraft/resources/ResourceLocation; CAVE_SPIDER_LOCATION a field_4646 + f F SCALE i field_32918 + m (Lnet/minecraft/world/entity/monster/CaveSpider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3885 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/CaveSpider;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3886 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ChestedHorseRenderer gjt net/minecraft/class_883 + f Ljava/util/Map; MAP a field_4650 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3894 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FLnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 scale + p 3 layer + m ()V +c net/minecraft/client/renderer/entity/ChickenRenderer gju net/minecraft/class_882 + f Lnet/minecraft/resources/ResourceLocation; CHICKEN_LOCATION a field_4649 + m (Lnet/minecraft/world/entity/animal/Chicken;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3892 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Chicken;F)F getBob a method_3893 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CodRenderer gjv net/minecraft/class_885 + f Lnet/minecraft/resources/ResourceLocation; COD_LOCATION a field_4652 + m (Lnet/minecraft/world/entity/animal/Cod;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3897 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Cod;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3896 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CowRenderer gjw net/minecraft/class_884 + f Lnet/minecraft/resources/ResourceLocation; COW_LOCATION a field_4651 + m (Lnet/minecraft/world/entity/animal/Cow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3895 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CreeperRenderer gjx net/minecraft/class_887 + f Lnet/minecraft/resources/ResourceLocation; CREEPER_LOCATION a field_4653 + m (Lnet/minecraft/world/entity/monster/Creeper;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3899 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Creeper;F)F getWhiteOverlayProgress a method_23154 + p 1 livingEntity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/Creeper;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3900 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/DisplayRenderer gjy net/minecraft/class_8138 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher a field_42525 + m (Lnet/minecraft/world/entity/Display$RenderState;Lnet/minecraft/world/entity/Display;FLorg/joml/Quaternionf;)Lorg/joml/Quaternionf; calculateOrientation a method_49053 + p 1 renderState + p 2 entity + p 3 partialTick + p 4 quaternion + m (Lnet/minecraft/world/entity/Display;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_49050 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Display;F)F entityYRot a method_52844 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/world/entity/Display;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_49051 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/Display;Ljava/lang/Object;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49052 + p 1 textDisplay + p 2 renderState + p 3 poseStack + p 4 buffer + p 5 lightmapUV + p 6 partialTick + m (Lnet/minecraft/client/Camera;)F cameraYrot a method_52845 + p 0 camera + m (Lnet/minecraft/world/entity/Display;)Ljava/lang/Object; getSubState b method_49921 + p 1 textDisplay + m (Lnet/minecraft/world/entity/Display;F)F entityXRot b method_52846 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/client/Camera;)F cameraXRot b method_52847 + p 0 camera + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/DisplayRenderer$1 gjy$1 net/minecraft/class_8138$1 + f [I $SwitchMap$net$minecraft$world$entity$Display$BillboardConstraints a field_42526 + f [I $SwitchMap$net$minecraft$world$entity$Display$TextDisplay$Align b field_42527 + m ()V +c net/minecraft/client/renderer/entity/DisplayRenderer$BlockDisplayRenderer gjy$a net/minecraft/class_8138$class_8139 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_42528 + m (Lnet/minecraft/world/entity/Display$BlockDisplay;)Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; getSubState a method_49922 + m (Lnet/minecraft/world/entity/Display$BlockDisplay;Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49054 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/DisplayRenderer$ItemDisplayRenderer gjy$b net/minecraft/class_8138$class_8140 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_42529 + m (Lnet/minecraft/world/entity/Display$ItemDisplay;)Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; getSubState a method_49923 + m (Lnet/minecraft/world/entity/Display$ItemDisplay;Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49055 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/DisplayRenderer$TextDisplayRenderer gjy$c net/minecraft/class_8138$class_8141 + f Lnet/minecraft/client/gui/Font; font a field_42531 + m (Lnet/minecraft/world/entity/Display$TextDisplay;)Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; getSubState a method_49924 + p 1 textDisplay + m (Lnet/minecraft/world/entity/Display$TextDisplay;Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49056 + p 1 textDisplay + p 2 renderState + p 3 poseStack + p 4 buffer + p 5 lightmapUV + p 6 partialTick + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; splitLines a method_49057 + p 1 text + p 2 maxWidth + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/DolphinRenderer gjz net/minecraft/class_888 + f Lnet/minecraft/resources/ResourceLocation; DOLPHIN_LOCATION a field_4654 + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3903 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/DragonFireballRenderer gka net/minecraft/class_891 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4661 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21735 + m (Lnet/minecraft/world/entity/projectile/DragonFireball;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3905 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/DragonFireball;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3906 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/DragonFireball;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24086 + p 1 entity + p 2 pos + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;IFIII)V vertex a method_23837 + p 0 consumer + p 1 pose + p 2 packedLight + p 3 x + p 4 y + p 5 u + p 6 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/DrownedRenderer gkb net/minecraft/class_890 + f Lnet/minecraft/resources/ResourceLocation; DROWNED_LOCATION a field_4659 + m (Lnet/minecraft/world/entity/monster/Drowned;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4164 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ElderGuardianRenderer gkc net/minecraft/class_893 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_ELDER_LOCATION a field_4665 + m (Lnet/minecraft/world/entity/monster/Guardian;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3910 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EndCrystalRenderer gkd net/minecraft/class_892 + f Lnet/minecraft/resources/ResourceLocation; END_CRYSTAL_LOCATION a field_4663 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21736 + f F SIN_45 h field_21002 + f Ljava/lang/String; GLASS i field_32919 + f Ljava/lang/String; BASE j field_32920 + f Lnet/minecraft/client/model/geom/ModelPart; cube k field_21003 + f Lnet/minecraft/client/model/geom/ModelPart; glass l field_21004 + f Lnet/minecraft/client/model/geom/ModelPart; base m field_21005 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32164 + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3909 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;F)F getY a method_23155 + p 0 endCrystal + p 1 partialTick + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3908 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3907 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EnderDragonRenderer gke net/minecraft/class_895 + f Lnet/minecraft/resources/ResourceLocation; CRYSTAL_BEAM_LOCATION a field_4668 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_EXPLODING_LOCATION g field_4669 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_LOCATION h field_4670 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_EYES_LOCATION i field_21006 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE j field_21737 + f Lnet/minecraft/client/renderer/RenderType; DECAL k field_21738 + f Lnet/minecraft/client/renderer/RenderType; EYES l field_21739 + f Lnet/minecraft/client/renderer/RenderType; BEAM m field_21740 + f F HALF_SQRT_3 n field_21007 + f Lnet/minecraft/client/renderer/entity/EnderDragonRenderer$DragonModel; model o field_21008 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32165 + m (FFFFILcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderCrystalBeams a method_3917 + p 0 x + p 1 y + p 2 z + p 3 partialTick + p 4 tickCount + p 5 poseStack + p 6 bufferSource + p 7 packedLight + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3914 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3918 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLcom/mojang/blaze3d/vertex/VertexConsumer;)V renderRays a method_61158 + p 0 poseStack + p 1 dragonDeathCompletion + p 2 buffer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EnderDragonRenderer$DragonModel gke$a net/minecraft/class_895$class_625 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3630 + f Lnet/minecraft/client/model/geom/ModelPart; neck b field_3637 + f Lnet/minecraft/client/model/geom/ModelPart; jaw f field_3631 + f Lnet/minecraft/client/model/geom/ModelPart; body g field_3627 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_3629 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip i field_21548 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_21549 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLegTip k field_21550 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontFoot l field_21551 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearLeg m field_21552 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearLegTip n field_21553 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearFoot o field_21554 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing p field_21555 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip q field_3635 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg r field_3632 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLegTip s field_3634 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontFoot t field_3625 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearLeg u field_3633 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearLegTip w field_3626 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearFoot x field_3628 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; entity y field_21441 + f F a z field_21442 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFF)V prepareMobModel a method_23620 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFFFF)V setupAnim a method_23621 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFLnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;I)V renderSide a method_23838 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 rotation + p 6 wing + p 7 frontLeg + p 8 frontLegTip + p 9 frontFoot + p 10 rearLeg + p 11 rearLegTip + p 12 rearFoot + p 13 alpha + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/entity/EndermanRenderer gkf net/minecraft/class_894 + f Lnet/minecraft/resources/ResourceLocation; ENDERMAN_LOCATION a field_4666 + f Lnet/minecraft/util/RandomSource; random i field_4667 + m (Lnet/minecraft/world/entity/monster/EnderMan;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3912 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/EnderMan;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23160 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/EnderMan;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3911 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EndermiteRenderer gkg net/minecraft/class_896 + f Lnet/minecraft/resources/ResourceLocation; ENDERMITE_LOCATION a field_4671 + m (Lnet/minecraft/world/entity/monster/Endermite;)F getFlipDegrees a method_3919 + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/Endermite;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_3920 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EntityRenderDispatcher gkh net/minecraft/class_898 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager a field_4685 + f Lnet/minecraft/client/Camera; camera b field_4686 + f Lnet/minecraft/world/entity/Entity; crosshairPickEntity c field_4678 + f Lnet/minecraft/client/Options; options d field_4692 + f Lnet/minecraft/client/renderer/RenderType; SHADOW_RENDER_TYPE e field_21009 + f F MAX_SHADOW_RADIUS f field_43377 + f F SHADOW_POWER_FALLOFF_Y g field_43378 + f Ljava/util/Map; renderers h field_4696 + f Ljava/util/Map; playerRenderers i field_4687 + c lists the various player skin types with their associated Renderer class instances. + f Lnet/minecraft/world/level/Level; level j field_4684 + f Lorg/joml/Quaternionf; cameraOrientation k field_21794 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer l field_27759 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher m field_38886 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer n field_38887 + f Lnet/minecraft/client/gui/Font; font o field_4689 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModels p field_27760 + f Z shouldRenderShadow q field_4681 + f Z renderHitBoxes r field_4680 + m ()Z shouldRenderHitBoxes a method_3958 + m (DDD)D distanceToSqr a method_3959 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/client/renderer/entity/EntityRenderer; getRenderer a method_3953 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;DDDFFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3954 + p 1 entity + p 2 x + p 4 y + p 6 z + p 8 rotationYaw + p 9 partialTicks + p 10 poseStack + p 11 buffer + p 12 packedLight + m (Lnet/minecraft/world/entity/Entity;F)I getPackedLightCoords a method_23839 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3950 + p 1 entity + p 2 frustum + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/level/Level;)V setLevel a method_3944 + c World sets this RenderManager's worldObj to the world provided + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/client/Camera;Lnet/minecraft/world/entity/Entity;)V prepare a method_3941 + p 1 level + p 2 activeRenderInfo + p 3 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFF)V fireVertex a method_23161 + p 0 matrixEntry + p 1 buffer + p 2 x + p 3 y + p 4 z + p 5 texU + p 6 texV + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IFFFFF)V shadowVertex a method_23162 + p 0 pose + p 1 consumer + p 2 color + p 3 offsetX + p 4 offsetY + p 5 offsetZ + p 6 u + p 7 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;DDDFF)V renderBlockShadow a method_23163 + p 0 pose + p 1 vertexConsumer + p 2 chunk + p 3 level + p 4 pos + p 5 x + p 7 y + p 9 z + p 11 size + p 12 weight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderServerSideHitbox a method_61170 + p 0 poseStack + p 1 entity + p 2 bufferSource + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;FFFF)V renderHitbox a method_3956 + p 0 poseStack + p 1 buffer + p 2 entity + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Vector3f;Lnet/minecraft/world/phys/Vec3;I)V renderVector a method_61171 + p 0 poseStack + p 1 buffer + p 2 startPos + p 3 vector + p 4 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;FFLnet/minecraft/world/level/LevelReader;F)V renderShadow a method_23166 + p 0 poseStack + p 1 buffer + p 2 entity + p 3 weight + p 4 partialTicks + p 5 level + p 6 size + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;Lorg/joml/Quaternionf;)V renderFlame a method_23165 + p 1 poseStack + p 2 buffer + p 3 entity + p 4 quaternion + m (Lorg/joml/Quaternionf;)V overrideCameraOrientation a method_24196 + p 1 cameraOrientation + m (Z)V setRenderShadow a method_3948 + p 1 renderShadow + m ()Lorg/joml/Quaternionf; cameraOrientation b method_24197 + m (Lnet/minecraft/world/entity/Entity;)D distanceToSqr b method_23168 + p 1 entity + m (Z)V setRenderHitBoxes b method_3955 + p 1 debugBoundingBox + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getServerSideEntity c method_61172 + p 0 entity + m ()Lnet/minecraft/client/renderer/ItemInHandRenderer; getItemInHandRenderer d method_43336 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/Options;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 minecraft + p 2 textureManager + p 3 itemRenderer + p 4 blockRenderDispatcher + p 5 font + p 6 options + p 7 entityModels + m ()V +c net/minecraft/client/renderer/entity/EntityRenderer gki net/minecraft/class_897 + f Lnet/minecraft/client/gui/Font; font a field_27761 + f F NAMETAG_SCALE b field_32921 + f I LEASH_RENDER_STEPS c field_52257 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher d field_4676 + f F shadowRadius e field_4673 + f F shadowStrength f field_4672 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3931 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23169 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3936 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 bufferSource + p 6 packedLight + m (Lnet/minecraft/world/entity/Entity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;)V renderLeash a method_61049 + p 1 entity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 leashHolder + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3933 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24087 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_3926 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;FFFIIIIFFFFIZ)V addVertexPair a method_61050 + p 0 buffer + p 1 pose + p 2 startX + p 3 startY + p 4 startZ + p 5 entityBlockLight + p 6 holderBlockLight + p 7 entitySkyLight + p 8 holderSkyLight + p 9 yOffset + p 10 dy + p 11 dx + p 12 dz + p 13 index + p 14 reverse + m ()Lnet/minecraft/client/gui/Font; getFont b method_3932 + c Returns the font renderer from the set render manager + m (Lnet/minecraft/world/entity/Entity;)Z shouldShowName b method_3921 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)I getPackedLightCoords b method_24088 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)I getSkyLightLevel b method_27950 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;)F getShadowRadius c method_55831 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/EntityRendererProvider gkj net/minecraft/class_5617 +c net/minecraft/client/renderer/entity/EntityRendererProvider$Context gkj$a net/minecraft/class_5617$class_5618 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher a field_27762 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_27763 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher c field_38888 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer d field_38889 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager e field_27764 + f Lnet/minecraft/client/model/geom/EntityModelSet; modelSet f field_27765 + f Lnet/minecraft/client/gui/Font; font g field_27766 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderDispatcher a method_32166 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32167 + p 1 layer + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer b method_32168 + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderDispatcher c method_43337 + m ()Lnet/minecraft/client/renderer/ItemInHandRenderer; getItemInHandRenderer d method_43338 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager e method_32169 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getModelSet f method_32170 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager g method_48481 + m ()Lnet/minecraft/client/gui/Font; getFont h method_32171 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/ItemInHandRenderer;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/gui/Font;)V + p 1 entityRenderDispatcher + p 2 itemRenderer + p 3 blockRenderDispatcher + p 4 itemInHandRenderer + p 5 resourceManager + p 6 modelSet + p 7 font +c net/minecraft/client/renderer/entity/EntityRenderers gkk net/minecraft/class_5619 + f Lorg/slf4j/Logger; LOGGER a field_27767 + f Ljava/util/Map; PROVIDERS b field_27768 + f Ljava/util/Map; PLAYER_PROVIDERS c field_27769 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32197 A method_32197 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32198 B method_32198 + m ()Z validateRegistrations a method_32172 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V register a method_32173 + p 0 entityType + p 1 provider + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V method_32174 a method_32174 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/resources/PlayerSkin$Model;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V method_32175 a method_32175 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Ljava/util/Map; createEntityRenderers a method_32176 + p 0 context + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Ljava/util/Map; createPlayerRenderers b method_32177 + p 0 context + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32178 c method_32178 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32179 d method_32179 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32180 e method_32180 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_33429 f method_33429 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32181 g method_32181 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32182 h method_32182 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32183 i method_32183 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32184 j method_32184 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32185 k method_32185 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32186 l method_32186 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32187 m method_32187 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32188 n method_32188 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32189 o method_32189 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_33430 p method_33430 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32190 q method_32190 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32191 r method_32191 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32192 s method_32192 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32193 t method_32193 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32194 u method_32194 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32195 v method_32195 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32196 w method_32196 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_42604 x method_42604 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_45802 y method_45802 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_42605 z method_42605 + m ()V + m ()V +c net/minecraft/client/renderer/entity/EvokerFangsRenderer gkl net/minecraft/class_900 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4699 + f Lnet/minecraft/client/model/EvokerFangsModel; model g field_4700 + m (Lnet/minecraft/world/entity/projectile/EvokerFangs;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3963 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/EvokerFangs;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3962 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EvokerRenderer gkm net/minecraft/class_899 + f Lnet/minecraft/resources/ResourceLocation; EVOKER_ILLAGER a field_4697 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3961 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EvokerRenderer$1 gkm$1 net/minecraft/class_899$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/SpellcasterIllager;FFFFFF)V render a method_23170 + m (Lnet/minecraft/client/renderer/entity/EvokerRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/ExperienceOrbRenderer gkn net/minecraft/class_902 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_ORB_LOCATION a field_4701 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21741 + m (Lnet/minecraft/world/entity/ExperienceOrb;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3967 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/ExperienceOrb;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3966 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/ExperienceOrb;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24089 + p 1 entity + p 2 pos + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFIIIFFI)V vertex a method_23171 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 red + p 5 green + p 6 blue + p 7 u + p 8 v + p 9 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/FallingBlockRenderer gko net/minecraft/class_901 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; dispatcher a field_38890 + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3964 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3965 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/FireworkEntityRenderer gkp net/minecraft/class_903 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_4703 + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3969 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3968 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/FishingHookRenderer gkq net/minecraft/class_906 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4707 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21742 + f D VIEW_BOBBING_SCALE h field_33632 + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FF)V stringVertex a method_23172 + p 0 x + p 1 y + p 2 z + p 3 consumer + p 4 pose + p 5 stringFraction + p 6 nextStringFraction + m (II)F fraction a method_23954 + p 0 numerator + p 1 denominator + m (Lnet/minecraft/world/entity/player/Player;FF)Lnet/minecraft/world/phys/Vec3; getPlayerHandPos a method_59755 + p 1 player + p 3 partialTick + m (Lnet/minecraft/world/entity/projectile/FishingHook;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3975 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/FishingHook;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3974 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;IFIII)V vertex a method_23840 + p 0 consumer + p 1 pose + p 2 packedLight + p 3 x + p 4 y + p 5 u + p 6 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/FoxRenderer gkr net/minecraft/class_4042 + f Lnet/minecraft/resources/ResourceLocation; RED_FOX_TEXTURE a field_18026 + f Lnet/minecraft/resources/ResourceLocation; RED_FOX_SLEEP_TEXTURE i field_18027 + f Lnet/minecraft/resources/ResourceLocation; SNOW_FOX_TEXTURE j field_18028 + f Lnet/minecraft/resources/ResourceLocation; SNOW_FOX_SLEEP_TEXTURE k field_18029 + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_18333 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Fox;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_18334 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/FrogRenderer gks net/minecraft/class_7213 + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_41964 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/GhastRenderer gkt net/minecraft/class_905 + f Lnet/minecraft/resources/ResourceLocation; GHAST_LOCATION a field_4705 + f Lnet/minecraft/resources/ResourceLocation; GHAST_SHOOTING_LOCATION i field_4706 + m (Lnet/minecraft/world/entity/monster/Ghast;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3972 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Ghast;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3973 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/GiantMobRenderer gku net/minecraft/class_908 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_LOCATION a field_4710 + f F scale i field_4711 + m (Lnet/minecraft/world/entity/monster/Giant;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3981 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Giant;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3980 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;F)V + p 1 context + p 2 scale + m ()V +c net/minecraft/client/renderer/entity/GlowSquidRenderer gkv net/minecraft/class_5789 + f Lnet/minecraft/resources/ResourceLocation; GLOW_SQUID_LOCATION a field_28461 + m (Lnet/minecraft/world/entity/GlowSquid;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_33431 + m (Lnet/minecraft/world/entity/GlowSquid;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_33432 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/SquidModel;)V + m ()V +c net/minecraft/client/renderer/entity/GoatRenderer gkw net/minecraft/class_6256 + f Lnet/minecraft/resources/ResourceLocation; GOAT_LOCATION a field_32923 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_35800 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/GuardianRenderer gkx net/minecraft/class_907 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_LOCATION a field_4708 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_BEAM_LOCATION i field_4709 + f Lnet/minecraft/client/renderer/RenderType; BEAM_RENDER_TYPE j field_21743 + m (Lnet/minecraft/world/entity/LivingEntity;DF)Lnet/minecraft/world/phys/Vec3; getPosition a method_3979 + p 1 livingEntity + p 2 yOffset + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Guardian;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3976 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Guardian;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3977 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Guardian;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3978 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFFIIIFF)V vertex a method_23173 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 z + p 5 red + p 6 green + p 7 blue + p 8 u + p 9 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FLnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 shadowRadius + p 3 layer + m ()V +c net/minecraft/client/renderer/entity/HoglinRenderer gky net/minecraft/class_4798 + f Lnet/minecraft/resources/ResourceLocation; HOGLIN_LOCATION a field_22244 + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_24472 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isShaking b method_27038 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/HorseRenderer gkz net/minecraft/class_910 + f Ljava/util/Map; LOCATION_BY_VARIANT a field_4714 + m (Lnet/minecraft/world/entity/animal/horse/Horse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3983 + c Returns the location of an entity's texture. + p 1 entity + m (Ljava/util/EnumMap;)V method_27151 a method_27151 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/HumanoidMobRenderer gla net/minecraft/class_909 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HumanoidModel;F)V + p 1 context + p 2 model + p 3 shadowRadius + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HumanoidModel;FFFF)V + p 1 context + p 2 model + p 3 shadowRadius + p 4 scaleX + p 5 scaleY + p 6 scaleZ +c net/minecraft/client/renderer/entity/HuskRenderer glb net/minecraft/class_912 + f Lnet/minecraft/resources/ResourceLocation; HUSK_LOCATION a field_4716 + m (Lnet/minecraft/world/entity/monster/Zombie;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3985 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/IllagerRenderer glc net/minecraft/class_3729 + m (Lnet/minecraft/world/entity/monster/AbstractIllager;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_16460 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/IllagerModel;F)V + p 1 context + p 2 model + p 3 shadowRadius +c net/minecraft/client/renderer/entity/IllusionerRenderer gld net/minecraft/class_914 + f Lnet/minecraft/resources/ResourceLocation; ILLUSIONER a field_4718 + m (Lnet/minecraft/world/entity/monster/Illusioner;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3990 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Illusioner;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3991 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Illusioner;)Z isBodyVisible b method_3988 + p 1 livingEntity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/IllusionerRenderer$1 gld$1 net/minecraft/class_914$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Illusioner;FFFFFF)V render a method_17149 + m (Lnet/minecraft/client/renderer/entity/IllusionerRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/IronGolemRenderer gle net/minecraft/class_913 + f Lnet/minecraft/resources/ResourceLocation; GOLEM_LOCATION a field_4717 + m (Lnet/minecraft/world/entity/animal/IronGolem;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3987 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/IronGolem;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3986 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ItemEntityRenderer glf net/minecraft/class_916 + f F ITEM_BUNDLE_OFFSET_SCALE a field_32924 + f F FLAT_ITEM_BUNDLE_OFFSET_X g field_32929 + f F FLAT_ITEM_BUNDLE_OFFSET_Y h field_32930 + f F FLAT_ITEM_BUNDLE_OFFSET_Z i field_32931 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer j field_4726 + f Lnet/minecraft/util/RandomSource; random k field_4725 + m (I)I getRenderedAmount a method_56855 + p 0 count + m (Lnet/minecraft/world/entity/item/ItemEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3999 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/ItemEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3996 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/item/ItemStack;)I getSeedForItemStack a method_56856 + p 0 stack + m (Lnet/minecraft/client/renderer/entity/ItemRenderer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/Level;)V renderMultipleFromCount a method_56857 + p 0 itemRenderer + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 item + p 5 random + p 6 level + m (Lnet/minecraft/client/renderer/entity/ItemRenderer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/resources/model/BakedModel;ZLnet/minecraft/util/RandomSource;)V renderMultipleFromCount a method_56858 + p 0 itemRenderer + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 item + p 5 model + p 6 isGui3d + p 7 random + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/ItemFrameRenderer glg net/minecraft/class_915 + f I GLOW_FRAME_BRIGHTNESS a field_32932 + f I BRIGHT_MAP_LIGHT_ADJUSTMENT g field_32933 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; FRAME_LOCATION h field_4721 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; MAP_FRAME_LOCATION i field_4723 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; GLOW_FRAME_LOCATION j field_28462 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; GLOW_MAP_FRAME_LOCATION k field_28463 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer l field_4720 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer m field_38891 + m (Lnet/minecraft/world/entity/decoration/ItemFrame;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3993 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/ItemFrame;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23174 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/decoration/ItemFrame;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3994 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/decoration/ItemFrame;II)I getLightVal a method_33433 + p 1 itemFrame + p 2 glowLightVal + p 3 regularLightVal + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/resources/model/ModelResourceLocation; getFrameModelResourceLoc a method_33434 + p 1 entity + p 2 item + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_33435 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_23175 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lnet/minecraft/world/entity/decoration/ItemFrame;)Z shouldShowName b method_23176 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/ItemRenderer glh net/minecraft/class_918 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTED_GLINT_ENTITY a field_43086 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTED_GLINT_ITEM b field_43087 + f I GUI_SLOT_CENTER_X c field_32937 + f I GUI_SLOT_CENTER_Y d field_32938 + f I ITEM_COUNT_BLIT_OFFSET e field_32934 + f F COMPASS_FOIL_UI_SCALE f field_32935 + f F COMPASS_FOIL_FIRST_PERSON_SCALE g field_32936 + f F COMPASS_FOIL_TEXTURE_SCALE h field_41120 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; TRIDENT_IN_HAND_MODEL i field_40530 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; SPYGLASS_IN_HAND_MODEL j field_40531 + f Ljava/util/Set; IGNORED k field_4728 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; TRIDENT_MODEL l field_40532 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; SPYGLASS_MODEL m field_40533 + f Lnet/minecraft/client/Minecraft; minecraft n field_42073 + f Lnet/minecraft/client/renderer/ItemModelShaper; itemModelShaper o field_4732 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager p field_4729 + f Lnet/minecraft/client/color/item/ItemColors; itemColors q field_4733 + f Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer; blockEntityRenderer r field_27770 + m ()Lnet/minecraft/client/renderer/ItemModelShaper; getItemModelShaper a method_4012 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;III)V renderStatic a method_23177 + p 1 entity + p 2 itemStack + p 3 diplayContext + p 4 leftHand + p 5 poseStack + p 6 bufferSource + p 7 level + p 8 combinedLight + p 9 combinedOverlay + p 10 seed + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnimatedTexture a method_51795 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;IILcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;I)V renderStatic a method_23178 + p 1 stack + p 2 displayContext + p 3 combinedLight + p 4 combinedOverlay + p 5 poseStack + p 6 bufferSource + p 7 level + p 8 seed + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/resources/model/BakedModel;)V render a method_23179 + p 1 itemStack + p 2 displayContext + p 3 leftHand + p 4 poseStack + p 5 bufferSource + p 6 combinedLight + p 7 combinedOverlay + p 8 model + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)Lnet/minecraft/client/resources/model/BakedModel; getModel a method_4019 + p 1 stack + p 2 level + p 3 entity + p 4 seed + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;Lnet/minecraft/world/item/ItemStack;II)V renderQuadList a method_23180 + p 1 poseStack + p 2 buffer + p 3 quads + p 4 itemStack + p 5 combinedLight + p 6 combinedOverlay + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;)Lcom/mojang/blaze3d/vertex/VertexConsumer; getCompassFoilBuffer a method_30114 + p 0 bufferSource + p 1 renderType + p 2 pose + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;Z)Lcom/mojang/blaze3d/vertex/VertexConsumer; getArmorFoilBuffer a method_27952 + p 0 bufferSource + p 1 renderType + p 2 hasFoil + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;ZZ)Lcom/mojang/blaze3d/vertex/VertexConsumer; getFoilBuffer a method_23181 + p 0 bufferSource + p 1 renderType + p 2 isItem + p 3 glint + m (Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/item/ItemStack;IILcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderModelLists a method_23182 + p 1 model + p 2 stack + p 3 combinedLight + p 4 combinedOverlay + p 5 poseStack + p 6 buffer + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;ZZ)Lcom/mojang/blaze3d/vertex/VertexConsumer; getFoilBufferDirect b method_29711 + p 0 bufferSource + p 1 renderType + p 2 noEntity + p 3 withGlint + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/resources/model/ModelManager;Lnet/minecraft/client/color/item/ItemColors;Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer;)V + p 1 minecraft + p 2 textureManager + p 3 modelManager + p 4 itemColors + p 5 blockEntityRenderer + m ()V +c net/minecraft/client/renderer/entity/LeashKnotRenderer gli net/minecraft/class_920 + f Lnet/minecraft/resources/ResourceLocation; KNOT_LOCATION a field_4734 + f Lnet/minecraft/client/model/LeashKnotModel; model g field_4735 + m (Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4036 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4035 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/LightningBoltRenderer glj net/minecraft/class_919 + m (Lnet/minecraft/world/entity/LightningBolt;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4033 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/LightningBolt;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4034 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFIFFFFFFFZZZZ)V quad a method_23183 + p 0 matrix + p 1 consumer + p 2 x1 + p 3 z1 + p 4 index + p 5 x2 + p 6 z2 + p 7 red + p 8 green + p 9 blue + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/LivingEntityRenderer glk net/minecraft/class_922 + f Lorg/slf4j/Logger; LOGGER a field_21011 + f Lnet/minecraft/client/model/EntityModel; model g field_4737 + f Ljava/util/List; layers h field_4738 + f F EYE_BED_OFFSET i field_32939 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isShaking a method_25450 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getBob a method_4045 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4054 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4042 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4058 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/LivingEntity;ZZZ)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_24302 + p 1 livingEntity + p 2 bodyVisible + p 3 translucent + p 4 glowing + m (Lnet/minecraft/client/renderer/entity/layers/RenderLayer;)Z addLayer a method_4046 + p 1 layer + m (Lnet/minecraft/core/Direction;)F sleepDirectionToRotation a method_18656 + p 0 facing + m (Lnet/minecraft/world/entity/LivingEntity;)Z shouldShowName b method_4055 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getWhiteOverlayProgress b method_23185 + p 1 livingEntity + p 2 partialTicks + m (Lnet/minecraft/world/entity/LivingEntity;)F getFlipDegrees c method_4039 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)I getOverlayCoords c method_23622 + p 0 livingEntity + p 1 u + m (Lnet/minecraft/world/entity/LivingEntity;)Z isBodyVisible d method_4056 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getAttackAnim d method_4044 + c Returns where in the swing animation the living entity is (from 0 to 1). Args : entity, partialTickTime + p 1 livingBase + p 2 partialTickTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z isEntityUpsideDown e method_38563 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)F getShadowRadius f method_55832 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/EntityModel;F)V + p 1 context + p 2 model + p 3 shadowRadius + m ()V +c net/minecraft/client/renderer/entity/LivingEntityRenderer$1 glk$1 net/minecraft/class_922$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_18227 + f [I $SwitchMap$net$minecraft$world$scores$Team$Visibility b field_4743 + m ()V +c net/minecraft/client/renderer/entity/LlamaRenderer gll net/minecraft/class_921 + f Lnet/minecraft/resources/ResourceLocation; CREAMY a field_41631 + f Lnet/minecraft/resources/ResourceLocation; WHITE i field_41632 + f Lnet/minecraft/resources/ResourceLocation; BROWN j field_41633 + f Lnet/minecraft/resources/ResourceLocation; GRAY k field_41634 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4037 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/LlamaRenderer$1 gll$1 net/minecraft/class_921$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$horse$Llama$Variant a field_41635 + m ()V +c net/minecraft/client/renderer/entity/LlamaSpitRenderer glm net/minecraft/class_923 + f Lnet/minecraft/resources/ResourceLocation; LLAMA_SPIT_LOCATION a field_4745 + f Lnet/minecraft/client/model/LlamaSpitModel; model g field_4744 + m (Lnet/minecraft/world/entity/projectile/LlamaSpit;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4062 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/LlamaSpit;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4061 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/MagmaCubeRenderer gln net/minecraft/class_917 + f Lnet/minecraft/resources/ResourceLocation; MAGMACUBE_LOCATION a field_4727 + m (Lnet/minecraft/world/entity/monster/MagmaCube;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4001 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/MagmaCube;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_48302 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/MagmaCube;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4000 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/MagmaCube;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24090 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/MinecartRenderer glo net/minecraft/class_925 + f Lnet/minecraft/client/model/EntityModel; model a field_4747 + f Lnet/minecraft/resources/ResourceLocation; MINECART_LOCATION g field_4746 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer h field_38892 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4065 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4063 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;FLnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderMinecartContents a method_4064 + p 1 entity + p 2 partialTicks + p 3 state + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/MobRenderer glp net/minecraft/class_927 + m (Lnet/minecraft/world/entity/Mob;)Z shouldShowName a method_4071 + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)F getShadowRadius b method_55833 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/EntityModel;F)V + p 1 context + p 2 model + p 3 shadowRadius +c net/minecraft/client/renderer/entity/MushroomCowRenderer glq net/minecraft/class_926 + f Ljava/util/Map; TEXTURES a field_4748 + m (Lnet/minecraft/world/entity/animal/MushroomCow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4066 + c Returns the location of an entity's texture. + p 1 entity + m (Ljava/util/HashMap;)V method_18657 a method_18657 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/NoopRenderer glr net/minecraft/class_6344 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/OcelotRenderer gls net/minecraft/class_3683 + f Lnet/minecraft/resources/ResourceLocation; CAT_OCELOT_LOCATION a field_16259 + m (Lnet/minecraft/world/entity/animal/Ocelot;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_16046 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/OminousItemSpawnerRenderer glt net/minecraft/class_9483 + f F ROTATION_SPEED a field_50231 + f I TICKS_SCALING g field_50232 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer h field_50233 + m (Lnet/minecraft/world/entity/OminousItemSpawner;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_58752 + m (Lnet/minecraft/world/entity/OminousItemSpawner;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_58753 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/PaintingRenderer glu net/minecraft/class_928 + m (Lnet/minecraft/world/entity/decoration/Painting;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4077 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/Painting;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4075 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFIIII)V vertex a method_23188 + p 1 pose + p 2 consumer + p 3 x + p 4 y + p 5 u + p 6 v + p 7 z + p 8 normalX + p 9 normalY + p 10 normalZ + p 11 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/decoration/Painting;IILnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V renderPainting a method_4074 + p 1 poseStack + p 2 consumer + p 3 painting + p 4 width + p 5 height + p 6 paintingSprite + p 7 backSprite + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/PandaRenderer glv net/minecraft/class_931 + f Ljava/util/Map; TEXTURES a field_17595 + m (FFIFF)F getAngle a method_4086 + p 1 currentAngle + p 2 nextAngle + p 3 nextRollCounter + p 4 partialTick + p 5 rollEndCount + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4083 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Panda;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4085 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Ljava/util/EnumMap;)V method_17796 a method_17796 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ParrotRenderer glw net/minecraft/class_930 + f Lnet/minecraft/resources/ResourceLocation; RED_BLUE a field_41636 + f Lnet/minecraft/resources/ResourceLocation; BLUE i field_41637 + f Lnet/minecraft/resources/ResourceLocation; GREEN j field_41638 + f Lnet/minecraft/resources/ResourceLocation; YELLOW_BLUE k field_41639 + f Lnet/minecraft/resources/ResourceLocation; GREY l field_41640 + m (Lnet/minecraft/world/entity/animal/Parrot$Variant;)Lnet/minecraft/resources/ResourceLocation; getVariantTexture a method_47906 + p 0 variant + m (Lnet/minecraft/world/entity/animal/Parrot;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4080 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Parrot;F)F getBob a method_4081 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ParrotRenderer$1 glw$1 net/minecraft/class_930$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$Parrot$Variant a field_41641 + m ()V +c net/minecraft/client/renderer/entity/PhantomRenderer glx net/minecraft/class_933 + f Lnet/minecraft/resources/ResourceLocation; PHANTOM_LOCATION a field_4756 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4090 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Phantom;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4088 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/Phantom;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4089 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PigRenderer gly net/minecraft/class_932 + f Lnet/minecraft/resources/ResourceLocation; PIG_LOCATION a field_4755 + m (Lnet/minecraft/world/entity/animal/Pig;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4087 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PiglinRenderer glz net/minecraft/class_4842 + f Ljava/util/Map; TEXTURES a field_25793 + f F PIGLIN_CUSTOM_HEAD_SCALE i field_32942 + m (Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/model/geom/ModelLayerLocation;Z)Lnet/minecraft/client/model/PiglinModel; createModel a method_24875 + p 0 modelSet + p 1 layer + p 2 noRightEar + m (Lnet/minecraft/world/entity/Mob;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation c method_3982 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)Z isShaking d method_25451 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Z)V + p 1 context + p 2 layer + p 5 noRightEar + m ()V +c net/minecraft/client/renderer/entity/PillagerRenderer gma net/minecraft/class_934 + f Lnet/minecraft/resources/ResourceLocation; PILLAGER a field_4757 + m (Lnet/minecraft/world/entity/monster/Pillager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4092 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PolarBearRenderer gmb net/minecraft/class_937 + f Lnet/minecraft/resources/ResourceLocation; BEAR_LOCATION a field_4766 + m (Lnet/minecraft/world/entity/animal/PolarBear;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4097 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/PolarBear;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4099 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PufferfishRenderer gmc net/minecraft/class_936 + f Lnet/minecraft/resources/ResourceLocation; PUFFER_LOCATION a field_4762 + f I puffStateO i field_4765 + f Lnet/minecraft/client/model/EntityModel; small j field_4761 + f Lnet/minecraft/client/model/EntityModel; mid k field_4764 + f Lnet/minecraft/client/model/EntityModel; big l field_4763 + m (Lnet/minecraft/world/entity/animal/Pufferfish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4096 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Pufferfish;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4094 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/animal/Pufferfish;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4095 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RabbitRenderer gmd net/minecraft/class_939 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_BROWN_LOCATION a field_4770 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_WHITE_LOCATION i field_4773 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_BLACK_LOCATION j field_4775 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_GOLD_LOCATION k field_4768 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_SALT_LOCATION l field_4774 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_WHITE_SPLOTCHED_LOCATION m field_4772 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_TOAST_LOCATION n field_4771 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_EVIL_LOCATION o field_4769 + m (Lnet/minecraft/world/entity/animal/Rabbit;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4102 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RabbitRenderer$1 gmd$1 net/minecraft/class_939$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$Rabbit$Variant a field_41642 + m ()V +c net/minecraft/client/renderer/entity/RavagerRenderer gme net/minecraft/class_911 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4715 + m (Lnet/minecraft/world/entity/monster/Ravager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3984 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RenderLayerParent gmf net/minecraft/class_3883 + m ()Lnet/minecraft/client/model/EntityModel; getModel a method_4038 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3931 + c Returns the location of an entity's texture. + p 1 entity +c net/minecraft/client/renderer/entity/SalmonRenderer gmg net/minecraft/class_938 + f Lnet/minecraft/resources/ResourceLocation; SALMON_LOCATION a field_4767 + m (Lnet/minecraft/world/entity/animal/Salmon;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4101 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Salmon;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4100 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SheepRenderer gmh net/minecraft/class_941 + f Lnet/minecraft/resources/ResourceLocation; SHEEP_LOCATION a field_4778 + m (Lnet/minecraft/world/entity/animal/Sheep;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4106 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ShulkerBulletRenderer gmi net/minecraft/class_940 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4776 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21744 + f Lnet/minecraft/client/model/ShulkerBulletModel; model h field_4777 + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4105 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4103 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24091 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/ShulkerRenderer gmj net/minecraft/class_943 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_TEXTURE_LOCATION a field_4781 + f [Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION i field_4780 + m (I)[Lnet/minecraft/resources/ResourceLocation; method_22791 a method_22791 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4111 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Shulker;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23189 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/Shulker;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4114 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_4112 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/client/renderer/culling/Frustum;Lnet/minecraft/world/phys/Vec3;)Z method_33436 a method_33436 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_37105 + p 0 color + m (Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/resources/ResourceLocation; method_22792 a method_22792 + m (Ljava/lang/String;)Ljava/lang/String; method_60910 a method_60910 + m (Ljava/lang/String;)Ljava/lang/String; method_60911 b method_60911 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SilverfishRenderer gmk net/minecraft/class_942 + f Lnet/minecraft/resources/ResourceLocation; SILVERFISH_LOCATION a field_4779 + m (Lnet/minecraft/world/entity/monster/Silverfish;)F getFlipDegrees a method_4107 + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/Silverfish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_4108 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SkeletonRenderer gml net/minecraft/class_946 + f Lnet/minecraft/resources/ResourceLocation; SKELETON_LOCATION a field_4785 + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4119 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;)Z isShaking b method_35801 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 skeletonLayer + p 3 innerModelLayer + p 4 outerModelLayer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/SkeletonModel;)V + p 1 context + p 2 skeletonLayer + p 3 innerModelLayer + p 4 model + m ()V +c net/minecraft/client/renderer/entity/SlimeRenderer gmm net/minecraft/class_945 + f Lnet/minecraft/resources/ResourceLocation; SLIME_LOCATION a field_4784 + m (Lnet/minecraft/world/entity/monster/Slime;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4116 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Slime;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4117 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Slime;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4118 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SnifferRenderer gmn net/minecraft/class_8190 + f Lnet/minecraft/resources/ResourceLocation; SNIFFER_LOCATION a field_42930 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_49350 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SnowGolemRenderer gmo net/minecraft/class_948 + f Lnet/minecraft/resources/ResourceLocation; SNOW_GOLEM_LOCATION a field_4788 + m (Lnet/minecraft/world/entity/animal/SnowGolem;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4122 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SpectralArrowRenderer gmp net/minecraft/class_947 + f Lnet/minecraft/resources/ResourceLocation; SPECTRAL_ARROW_LOCATION a field_4787 + m (Lnet/minecraft/world/entity/projectile/SpectralArrow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4120 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/SpiderRenderer gmq net/minecraft/class_949 + f Lnet/minecraft/resources/ResourceLocation; SPIDER_LOCATION a field_4789 + m (Lnet/minecraft/world/entity/monster/Spider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4123 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Spider;)F getFlipDegrees b method_4124 + p 1 livingEntity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/SquidRenderer gmr net/minecraft/class_951 + f Lnet/minecraft/resources/ResourceLocation; SQUID_LOCATION a field_4791 + m (Lnet/minecraft/world/entity/animal/Squid;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4127 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Squid;F)F getBob a method_4125 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/world/entity/animal/Squid;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4126 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/SquidModel;)V + p 1 context + p 2 model + m ()V +c net/minecraft/client/renderer/entity/StrayRenderer gms net/minecraft/class_950 + f Lnet/minecraft/resources/ResourceLocation; STRAY_SKELETON_LOCATION a field_4790 + f Lnet/minecraft/resources/ResourceLocation; STRAY_CLOTHES_LOCATION i field_49165 + m (Lnet/minecraft/world/entity/monster/Stray;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57817 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/StriderRenderer gmt net/minecraft/class_4999 + f Lnet/minecraft/resources/ResourceLocation; STRIDER_LOCATION a field_23372 + f Lnet/minecraft/resources/ResourceLocation; COLD_LOCATION i field_23937 + f F SHADOW_RADIUS j field_47888 + m (Lnet/minecraft/world/entity/monster/Strider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_26421 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Strider;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_56155 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/Strider;)F getShadowRadius b method_55834 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Strider;)Z isShaking c method_26423 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/TadpoleRenderer gmu net/minecraft/class_7214 + f Lnet/minecraft/resources/ResourceLocation; TADPOLE_TEXTURE a field_37969 + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_41966 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ThrownItemRenderer gmv net/minecraft/class_953 + f F MIN_CAMERA_DISTANCE_SQUARED a field_32943 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer g field_4792 + f F scale h field_17147 + f Z fullBright i field_21745 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FZ)V + p 1 context + p 2 scale + p 3 fullBright + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/ThrownTridentRenderer gmw net/minecraft/class_955 + f Lnet/minecraft/resources/ResourceLocation; TRIDENT_LOCATION a field_4796 + f Lnet/minecraft/client/model/TridentModel; model g field_4797 + m (Lnet/minecraft/world/entity/projectile/ThrownTrident;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4134 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/ThrownTrident;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4133 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/TippableArrowRenderer gmx net/minecraft/class_954 + f Lnet/minecraft/resources/ResourceLocation; NORMAL_ARROW_LOCATION a field_4795 + f Lnet/minecraft/resources/ResourceLocation; TIPPED_ARROW_LOCATION g field_4794 + m (Lnet/minecraft/world/entity/projectile/Arrow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4130 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/TntMinecartRenderer gmy net/minecraft/class_957 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer g field_38893 + m (Lnet/minecraft/world/entity/vehicle/MinecartTNT;FLnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderMinecartContents a method_4137 + p 1 entity + p 2 partialTicks + p 3 state + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IZ)V renderWhiteSolidBlock a method_23190 + p 0 blockRenderDispatcher + p 1 state + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 whiteOverlay + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/TntRenderer gmz net/minecraft/class_956 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38894 + m (Lnet/minecraft/world/entity/item/PrimedTnt;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4136 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/PrimedTnt;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4135 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/TropicalFishRenderer gna net/minecraft/class_959 + f Lnet/minecraft/client/model/ColorableHierarchicalModel; modelA a field_4800 + c Breaking recompile intentionally since modelA/B incorrectly mapped. + f Lnet/minecraft/client/model/ColorableHierarchicalModel; modelB i field_4799 + c Breaking recompile intentionally since modelA/B incorrectly mapped. + f Lnet/minecraft/resources/ResourceLocation; MODEL_A_TEXTURE j field_41643 + f Lnet/minecraft/resources/ResourceLocation; MODEL_B_TEXTURE k field_41644 + m (Lnet/minecraft/world/entity/animal/TropicalFish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4141 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/TropicalFish;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4140 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/animal/TropicalFish;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4142 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/TropicalFishRenderer$1 gna$1 net/minecraft/class_959$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Base a field_41645 + m ()V +c net/minecraft/client/renderer/entity/TurtleRenderer gnb net/minecraft/class_958 + f Lnet/minecraft/resources/ResourceLocation; TURTLE_LOCATION a field_4798 + m (Lnet/minecraft/world/entity/animal/Turtle;)F getShadowRadius a method_55835 + p 1 entity + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_4139 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/UndeadHorseRenderer gnc net/minecraft/class_961 + f Ljava/util/Map; MAP a field_4803 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4145 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/VexRenderer gnd net/minecraft/class_960 + f Lnet/minecraft/resources/ResourceLocation; VEX_LOCATION a field_4801 + f Lnet/minecraft/resources/ResourceLocation; VEX_CHARGING_LOCATION i field_4802 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4144 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24092 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VillagerRenderer gne net/minecraft/class_963 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_BASE_SKIN a field_4807 + m (Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4151 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/npc/Villager;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4149 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/npc/Villager;)F getShadowRadius b method_55836 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VindicatorRenderer gnf net/minecraft/class_962 + f Lnet/minecraft/resources/ResourceLocation; VINDICATOR a field_4804 + m (Lnet/minecraft/world/entity/monster/Vindicator;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4147 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VindicatorRenderer$1 gnf$1 net/minecraft/class_962$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Vindicator;FFFFFF)V render a method_17156 + m (Lnet/minecraft/client/renderer/entity/VindicatorRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/WanderingTraderRenderer gng net/minecraft/class_3992 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_BASE_SKIN a field_17739 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_18045 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/npc/WanderingTrader;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_18046 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WardenRenderer gnh net/minecraft/class_7287 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_38349 + f Lnet/minecraft/resources/ResourceLocation; BIOLUMINESCENT_LAYER_TEXTURE i field_38350 + f Lnet/minecraft/resources/ResourceLocation; HEART_TEXTURE j field_38352 + f Lnet/minecraft/resources/ResourceLocation; PULSATING_SPOTS_TEXTURE_1 k field_38353 + f Lnet/minecraft/resources/ResourceLocation; PULSATING_SPOTS_TEXTURE_2 l field_38354 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42606 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42607 a method_42607 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42609 b method_42609 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42610 c method_42610 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42611 d method_42611 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42612 e method_42612 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WindChargeRenderer gni net/minecraft/class_8987 + f F MIN_CAMERA_DISTANCE_SQUARED a field_52258 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION g field_47477 + f Lnet/minecraft/client/model/WindChargeModel; model h field_47478 + m (F)F xOffset a method_55268 + p 1 tickCount + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55269 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_55270 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 bufferSource + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/WitchRenderer gnj net/minecraft/class_965 + f Lnet/minecraft/resources/ResourceLocation; WITCH_LOCATION a field_4814 + m (Lnet/minecraft/world/entity/monster/Witch;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4154 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Witch;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4155 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Witch;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4157 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherBossRenderer gnk net/minecraft/class_964 + f Lnet/minecraft/resources/ResourceLocation; WITHER_INVULNERABLE_LOCATION a field_4812 + f Lnet/minecraft/resources/ResourceLocation; WITHER_LOCATION i field_4813 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4153 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4152 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24093 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherSkeletonRenderer gnl net/minecraft/class_967 + f Lnet/minecraft/resources/ResourceLocation; WITHER_SKELETON_LOCATION a field_4818 + m (Lnet/minecraft/world/entity/monster/WitherSkeleton;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57818 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/WitherSkeleton;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4161 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherSkullRenderer gnm net/minecraft/class_966 + f Lnet/minecraft/resources/ResourceLocation; WITHER_INVULNERABLE_LOCATION a field_4817 + f Lnet/minecraft/resources/ResourceLocation; WITHER_LOCATION g field_4815 + f Lnet/minecraft/client/model/SkullModel; model h field_4816 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSkullLayer a method_32199 + m (Lnet/minecraft/world/entity/projectile/WitherSkull;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4160 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/WitherSkull;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4159 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/WitherSkull;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24094 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/WolfRenderer gnn net/minecraft/class_969 + m (Lnet/minecraft/world/entity/animal/Wolf;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4165 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Wolf;F)F getBob a method_4167 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/world/entity/animal/Wolf;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4166 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/ZoglinRenderer gno net/minecraft/class_5144 + f Lnet/minecraft/resources/ResourceLocation; ZOGLIN_LOCATION a field_23779 + m (Lnet/minecraft/world/entity/monster/Zoglin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_27039 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ZombieRenderer gnp net/minecraft/class_3886 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 zombieLayer + p 3 innerArmor + p 4 outerArmor +c net/minecraft/client/renderer/entity/ZombieVillagerRenderer gnq net/minecraft/class_971 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_VILLAGER_LOCATION a field_4835 + m (Lnet/minecraft/world/entity/monster/ZombieVillager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4175 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/ZombieVillager;)Z isShaking b method_25452 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/layers/ArrowLayer gnr net/minecraft/class_973 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; dispatcher a field_17153 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 context + p 2 renderer +c net/minecraft/client/renderer/entity/layers/BeeStingerLayer gns net/minecraft/class_4506 + f Lnet/minecraft/resources/ResourceLocation; BEE_STINGER_LOCATION a field_20529 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FIFFI)V vertex a method_23295 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 u + p 5 v + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/BreezeEyesLayer gnt net/minecraft/class_8988 + f Lnet/minecraft/client/renderer/RenderType; BREEZE_EYES a field_47889 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/breeze/Breeze;FFFFFF)V render a method_55272 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/BreezeWindLayer gnu net/minecraft/class_8989 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_47484 + f Lnet/minecraft/client/model/BreezeModel; model b field_47485 + m (F)F xOffset a method_55273 + p 1 tickCount + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/breeze/Breeze;FFFFFF)V render a method_55275 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 context + p 2 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/CapeLayer gnv net/minecraft/class_972 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;FFFFFF)V render a method_4177 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/CarriedBlockLayer gnw net/minecraft/class_975 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38895 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/EnderMan;FFFFFF)V render a method_4179 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/CatCollarLayer gnx net/minecraft/class_3684 + f Lnet/minecraft/resources/ResourceLocation; CAT_COLLAR_LOCATION a field_16260 + f Lnet/minecraft/client/model/CatModel; catModel b field_16261 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Cat;FFFFFF)V render a method_16047 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/CreeperPowerLayer gny net/minecraft/class_974 + f Lnet/minecraft/resources/ResourceLocation; POWER_LOCATION a field_4842 + f Lnet/minecraft/client/model/CreeperModel; model b field_4844 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/CrossedArmsItemLayer gnz net/minecraft/class_4004 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38896 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_4208 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/CustomHeadLayer goa net/minecraft/class_976 + f F scaleX a field_24474 + f F scaleY b field_24475 + f F scaleZ c field_24476 + f Ljava/util/Map; skullModels d field_27771 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer e field_38897 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17159 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Z)V translateToHead a method_32798 + p 0 poseStack + p 1 isVillager + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 modelSet + p 3 itemInHandRenderer + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;FFFLnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 modelSet + p 3 scaleX + p 4 scaleY + p 5 scaleZ + p 6 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/Deadmau5EarsLayer gob net/minecraft/class_978 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;FFFFFF)V render a method_4181 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/DolphinCarryingItemLayer goc net/minecraft/class_977 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38898 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Dolphin;FFFFFF)V render a method_17160 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/DrownedOuterLayer god net/minecraft/class_980 + f Lnet/minecraft/resources/ResourceLocation; DROWNED_OUTER_LAYER_LOCATION a field_4854 + f Lnet/minecraft/client/model/DrownedModel; model b field_4855 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Drowned;FFFFFF)V render a method_4182 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/ElytraLayer goe net/minecraft/class_979 + f Lnet/minecraft/resources/ResourceLocation; WINGS_LOCATION a field_4850 + f Lnet/minecraft/client/model/ElytraModel; elytraModel b field_4852 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17161 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/EnderEyesLayer gof net/minecraft/class_985 + f Lnet/minecraft/client/renderer/RenderType; ENDERMAN_EYES a field_4876 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/EnergySwirlLayer gog net/minecraft/class_4607 + m ()Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_23201 + m (F)F xOffset a method_23202 + p 1 tickCount + m ()Lnet/minecraft/client/model/EntityModel; model b method_23203 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/EyesLayer goh net/minecraft/class_4606 + m ()Lnet/minecraft/client/renderer/RenderType; renderType a method_23193 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/FoxHeldItemLayer goi net/minecraft/class_4043 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38899 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Fox;FFFFFF)V render a method_18335 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/HorseArmorLayer goj net/minecraft/class_4073 + f Lnet/minecraft/client/model/HorseModel; model a field_18228 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Horse;FFFFFF)V render a method_18658 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/HorseMarkingLayer gok net/minecraft/class_5167 + f Ljava/util/Map; LOCATION_BY_MARKINGS a field_23938 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Horse;FFFFFF)V render a method_27152 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Ljava/util/EnumMap;)V method_27153 a method_27153 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/HumanoidArmorLayer gol net/minecraft/class_970 + f Ljava/util/Map; ARMOR_LOCATION_CACHE a field_4829 + f Lnet/minecraft/client/model/HumanoidModel; innerModel b field_4830 + f Lnet/minecraft/client/model/HumanoidModel; outerModel c field_4831 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; armorTrimAtlas d field_42074 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/client/model/HumanoidModel; getArmorModel a method_4172 + p 1 slot + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17157 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/HumanoidModel;)V renderGlint a method_52224 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 model + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/HumanoidModel;ILnet/minecraft/resources/ResourceLocation;)V renderModel a method_23192 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 model + p 5 dyeColor + p 6 textureLocation + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;ILnet/minecraft/client/model/HumanoidModel;)V renderArmorPiece a method_4169 + p 1 poseStack + p 2 bufferSource + p 3 livingEntity + p 4 slot + p 5 packedLight + p 6 model + m (Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/world/entity/EquipmentSlot;)V setPartVisibility a method_4170 + p 1 model + p 2 slot + m (Lnet/minecraft/core/Holder;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/armortrim/ArmorTrim;Lnet/minecraft/client/model/HumanoidModel;Z)V renderTrim a method_48482 + p 1 armorMaterial + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 trim + p 6 model + p 7 innerTexture + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z usesInnerModel b method_4173 + p 1 slot + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 renderer + p 2 innerModel + p 3 outerModel + p 4 modelManager + m ()V +c net/minecraft/client/renderer/entity/layers/HumanoidArmorLayer$1 gol$1 net/minecraft/class_970$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot a field_4878 + m ()V +c net/minecraft/client/renderer/entity/layers/IronGolemCrackinessLayer gom net/minecraft/class_4691 + f Ljava/util/Map; resourceLocations a field_21443 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/IronGolem;FFFFFF)V render a method_23623 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/IronGolemFlowerLayer gon net/minecraft/class_986 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38900 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/IronGolem;FFFFFF)V render a method_4188 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/ItemInHandLayer goo net/minecraft/class_989 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38901 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithItem a method_4192 + p 1 livingEntity + p 2 itemStack + p 3 displayContext + p 4 arm + p 5 poseStack + p 6 buffer + p 7 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17162 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/LlamaDecorLayer gop net/minecraft/class_988 + f [Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4880 + f Lnet/minecraft/resources/ResourceLocation; TRADER_LLAMA b field_17740 + f Lnet/minecraft/client/model/LlamaModel; model c field_4881 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Llama;FFFFFF)V render a method_4191 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/MushroomCowMushroomLayer goq net/minecraft/class_991 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38902 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/MushroomCow;FFFFFF)V render a method_4195 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IZLnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/client/resources/model/BakedModel;)V renderMushroomBlock a method_37314 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 outlineOnly + p 5 state + p 6 packedOverlay + p 7 model + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/PandaHoldsItemLayer gor net/minecraft/class_990 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38903 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Panda;FFFFFF)V render a method_4194 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/ParrotOnShoulderLayer gos net/minecraft/class_983 + f Lnet/minecraft/client/model/ParrotModel; model a field_17154 + m (Lnet/minecraft/world/entity/EntityType;)Z method_17957 a method_17957 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/player/Player;FFFFFF)V render a method_4185 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/player/Player;FFFFZ)V render a method_4186 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 netHeadYaw + p 8 headPitch + p 9 leftShoulder + m (Lcom/mojang/blaze3d/vertex/PoseStack;ZLnet/minecraft/world/entity/player/Player;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/client/renderer/MultiBufferSource;IFFFFLnet/minecraft/world/entity/EntityType;)V method_17958 a method_17958 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/PhantomEyesLayer got net/minecraft/class_993 + f Lnet/minecraft/client/renderer/RenderType; PHANTOM_EYES a field_4890 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/PlayerItemInHandLayer gou net/minecraft/class_5697 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38904 + f F X_ROT_MIN b field_32944 + f F X_ROT_MAX c field_32945 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithSpyglass a method_32799 + p 1 entity + p 2 stack + p 3 arm + p 4 poseStack + p 5 buffer + p 6 combinedLight + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/RenderLayer gov net/minecraft/class_3887 + f Lnet/minecraft/client/renderer/entity/RenderLayerParent; renderer a field_17155 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_23194 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;FFFFFF)V render a method_4199 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;I)V renderColoredCutoutModel a method_23199 + p 0 model + p 1 textureLocation + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 entity + p 6 color + m (Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFFI)V coloredCutoutModelCopyLayerRender a method_23196 + p 0 modelParent + p 1 model + p 2 textureLocation + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 entity + p 7 limbSwing + p 8 limbSwingAmount + p 9 ageInTicks + p 10 netHeadYaw + p 11 headPitch + p 12 partialTick + p 13 color + m ()Lnet/minecraft/client/model/EntityModel; getParentModel c method_17165 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/SaddleLayer gow net/minecraft/class_992 + f Lnet/minecraft/resources/ResourceLocation; textureLocation a field_4888 + f Lnet/minecraft/client/model/EntityModel; model b field_4887 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;)V + p 1 renderer + p 2 model + p 3 textureLocation +c net/minecraft/client/renderer/entity/layers/SheepFurLayer gox net/minecraft/class_994 + f Lnet/minecraft/resources/ResourceLocation; SHEEP_FUR_LOCATION a field_4892 + f Lnet/minecraft/client/model/SheepFurModel; model b field_4891 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Sheep;FFFFFF)V render a method_4198 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/ShulkerHeadLayer goy net/minecraft/class_944 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Shulker;FFFFFF)V render a method_4115 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/SkeletonClothingLayer goz net/minecraft/class_1002 + f Lnet/minecraft/client/model/SkeletonModel; layerModel a field_4908 + f Lnet/minecraft/resources/ResourceLocation; clothesLocation b field_49166 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Mob;FFFFFF)V render a method_23204 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 renderer + p 2 models + p 3 modelLayerLocation + p 4 clothesLocation +c net/minecraft/client/renderer/entity/layers/SlimeOuterLayer gpa net/minecraft/class_997 + f Lnet/minecraft/client/model/EntityModel; model a field_4895 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_23200 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/SnowGolemHeadLayer gpb net/minecraft/class_996 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38905 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_38906 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/SnowGolem;FFFFFF)V render a method_4201 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V + p 1 renderer + p 2 blockRenderer + p 3 itemRenderer +c net/minecraft/client/renderer/entity/layers/SpiderEyesLayer gpc net/minecraft/class_1000 + f Lnet/minecraft/client/renderer/RenderType; SPIDER_EYES a field_4902 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/SpinAttackEffectLayer gpd net/minecraft/class_998 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_4898 + f Ljava/lang/String; BOX b field_32946 + f Lnet/minecraft/client/model/geom/ModelPart; box c field_21012 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32200 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_4203 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/StuckInBodyLayer gpe net/minecraft/class_4507 + m (Lnet/minecraft/world/entity/LivingEntity;)I numStuck a method_22134 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;FFFF)V renderStuckItem a method_22130 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 entity + p 5 x + p 6 y + p 7 z + p 8 partialTick + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_22132 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/TropicalFishPatternLayer gpf net/minecraft/class_1001 + f Lnet/minecraft/resources/ResourceLocation; KOB_TEXTURE a field_41646 + f Lnet/minecraft/resources/ResourceLocation; SUNSTREAK_TEXTURE b field_41647 + f Lnet/minecraft/resources/ResourceLocation; SNOOPER_TEXTURE c field_41648 + f Lnet/minecraft/resources/ResourceLocation; DASHER_TEXTURE d field_41649 + f Lnet/minecraft/resources/ResourceLocation; BRINELY_TEXTURE e field_41650 + f Lnet/minecraft/resources/ResourceLocation; SPOTTY_TEXTURE f field_41651 + f Lnet/minecraft/resources/ResourceLocation; FLOPPER_TEXTURE g field_41652 + f Lnet/minecraft/resources/ResourceLocation; STRIPEY_TEXTURE h field_41653 + f Lnet/minecraft/resources/ResourceLocation; GLITTER_TEXTURE i field_41654 + f Lnet/minecraft/resources/ResourceLocation; BLOCKFISH_TEXTURE j field_41655 + f Lnet/minecraft/resources/ResourceLocation; BETTY_TEXTURE k field_41656 + f Lnet/minecraft/resources/ResourceLocation; CLAYFISH_TEXTURE l field_41657 + f Lnet/minecraft/client/model/TropicalFishModelA; modelA m field_17157 + f Lnet/minecraft/client/model/TropicalFishModelB; modelB n field_4903 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/TropicalFish;FFFFFF)V render a method_4205 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/TropicalFishPatternLayer$1 gpf$1 net/minecraft/class_1001$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Base a field_41658 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Pattern b field_41659 + m ()V +c net/minecraft/client/renderer/entity/layers/VillagerProfessionLayer gpg net/minecraft/class_3885 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; LEVEL_LOCATIONS a field_17148 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; typeHatCache b field_17149 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; professionHatCache c field_17150 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager d field_17151 + f Ljava/lang/String; path e field_17152 + m (Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/Optional; method_43211 a method_43211 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17151 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_17152 a method_17152 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/String;Lnet/minecraft/core/DefaultedRegistry;Ljava/lang/Object;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getHatData a method_17153 + p 1 cache + p 2 folder + p 3 villagerTypeRegistry + p 4 key + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getResourceLocation a method_17155 + p 1 folder + p 2 location + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_45803 a method_45803 + m (Ljava/lang/String;Lnet/minecraft/core/DefaultedRegistry;Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; method_17154 a method_17154 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;)V + p 1 renderer + p 2 resourceManager + p 3 path + m ()V +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer gph net/minecraft/class_7288 + f Lnet/minecraft/resources/ResourceLocation; texture a field_38355 + f Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction; alphaFunction b field_38356 + f Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector; drawSelector c field_38464 + m ()V onlyDrawSelectedParts a method_42746 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/warden/Warden;FFFFFF)V render a method_42613 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42747 a method_42747 + m ()V resetDrawForAllParts b method_42748 + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42749 b method_42749 + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42750 c method_42750 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction;Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector;)V + p 1 renderer + p 2 texture + p 3 alphaFunction + p 4 drawSelector +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction gph$a net/minecraft/class_7288$class_7289 +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector gph$b net/minecraft/class_7288$class_7311 +c net/minecraft/client/renderer/entity/layers/WitchItemLayer gpi net/minecraft/class_1005 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/WitherArmorLayer gpj net/minecraft/class_1004 + f Lnet/minecraft/resources/ResourceLocation; WITHER_ARMOR_LOCATION a field_4910 + f Lnet/minecraft/client/model/WitherBossModel; model b field_4909 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/WolfArmorLayer gpk net/minecraft/class_9085 + f Lnet/minecraft/client/model/WolfModel; model a field_47890 + f Ljava/util/Map; ARMOR_CRACK_LOCATIONS b field_49582 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Wolf;FFFFFF)V render a method_55837 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;)V maybeRenderCracks a method_57819 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 armorStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/AnimalArmorItem;)V maybeRenderColoredLayer a method_57820 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 armorStack + p 5 armorItem + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 models + m ()V +c net/minecraft/client/renderer/entity/layers/WolfCollarLayer gpl net/minecraft/class_1006 + f Lnet/minecraft/resources/ResourceLocation; WOLF_COLLAR_LOCATION a field_4913 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Wolf;FFFFFF)V render a method_4209 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/package-info gpm net/minecraft/class_6257 +c net/minecraft/client/renderer/entity/package-info gpn net/minecraft/class_6258 +c net/minecraft/client/renderer/entity/player/PlayerRenderer gpo net/minecraft/class_1007 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;)V renderRightHand a method_4220 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;)V renderHand a method_23205 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + p 5 rendererArm + p 6 rendererArmwear + m (Lnet/minecraft/client/player/AbstractClientPlayer;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4216 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/player/AbstractClientPlayer;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23206 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/client/player/AbstractClientPlayer;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4215 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/client/model/HumanoidModel$ArmPose; getArmPose a method_4210 + p 0 player + p 1 hand + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4217 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4212 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_4213 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;)V renderLeftHand b method_4221 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + m (Lnet/minecraft/client/player/AbstractClientPlayer;)V setModelProperties b method_4218 + p 1 clientPlayer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Z)V + p 1 context + p 2 useSlimModel +c net/minecraft/client/renderer/entity/player/package-info gpp net/minecraft/class_6259 +c net/minecraft/client/renderer/item/ClampedItemPropertyFunction gpq net/minecraft/class_6395 +c net/minecraft/client/renderer/item/CompassItemPropertyFunction gpr net/minecraft/class_7391 + f I DEFAULT_ROTATION a field_38798 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget; compassTarget b field_38799 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble; wobble c field_24449 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble; wobbleRandom d field_24450 + m (I)I hash a method_32800 + p 1 value + m (IJ)F getRandomlySpinningRotation a method_43212 + p 1 seed + p 2 ticks + m (Lnet/minecraft/world/entity/Entity;)D getWrappedVisualRotationY a method_43213 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;JLnet/minecraft/core/BlockPos;)F getRotationTowardsCompassTarget a method_43214 + p 1 entity + p 2 ticks + p 4 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/multiplayer/ClientLevel;)Lnet/minecraft/client/multiplayer/ClientLevel; tryFetchLevelIfMissing a method_43215 + p 1 entity + p 2 level + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)D getAngleFromEntityToPos a method_43216 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/GlobalPos;)Z isValidCompassTargetPos a method_43217 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;ILnet/minecraft/world/entity/Entity;)F getCompassRotation a method_43218 + p 1 stack + p 2 level + p 3 seed + p 4 entity + m (Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget;)V + p 1 compassTarget +c net/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget gpr$a net/minecraft/class_7391$class_7392 +c net/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble gpr$b net/minecraft/class_7391$class_5171 + f D rotation a field_23980 + f D deltaRotation b field_23981 + f J lastUpdateTick c field_23982 + m (J)Z shouldUpdate a method_27316 + p 1 ticks + m (JD)V update a method_27190 + p 1 ticks + p 3 rotation + m ()V +c net/minecraft/client/renderer/item/ItemProperties gps net/minecraft/class_5272 + f Ljava/util/Map; GENERIC_PROPERTIES a field_24443 + f Lnet/minecraft/resources/ResourceLocation; DAMAGED b field_24444 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE c field_24445 + f Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; PROPERTY_DAMAGED d field_24446 + f Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; PROPERTY_DAMAGE e field_24447 + f Ljava/util/Map; PROPERTIES f field_24448 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction;)Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; registerGeneric a method_27881 + p 0 name + p 1 property + m (Lnet/minecraft/world/item/Item;)Ljava/util/Map; method_27877 a method_27877 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction;)V register a method_27879 + p 0 item + p 1 name + p 2 property + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/item/ItemPropertyFunction; getProperty a method_27878 + p 0 stack + p 1 location + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_43611 a method_43611 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/core/GlobalPos; method_43219 a method_43219 + m (Lnet/minecraft/client/renderer/item/ItemPropertyFunction;)V registerCustomModelData a method_37106 + p 0 property + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_35803 b method_35803 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/core/GlobalPos; method_43220 b method_43220 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27880 c method_27880 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27882 d method_27882 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27883 e method_27883 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27884 f method_27884 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27885 g method_27885 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27886 h method_27886 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27887 i method_27887 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27888 j method_27888 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_32202 k method_32202 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27889 l method_27889 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_49351 m method_49351 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27890 n method_27890 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27891 o method_27891 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_48484 p method_48484 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27892 q method_27892 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27893 r method_27893 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27894 s method_27894 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27895 t method_27895 + m ()V + m ()V +c net/minecraft/client/renderer/item/ItemProperties$1 gps$1 net/minecraft/class_5272$1 + f D rotation a field_7911 + f D rota b field_7910 + f J lastUpdateTick c field_7913 + m (Lnet/minecraft/world/level/Level;D)D wobble a method_7736 + p 1 level + p 2 rotation + m ()V +c net/minecraft/client/renderer/item/ItemPropertyFunction gpt net/minecraft/class_1800 +c net/minecraft/client/renderer/item/package-info gpu net/minecraft/class_6260 +c net/minecraft/client/renderer/package-info gpv net/minecraft/class_6261 +c net/minecraft/client/renderer/texture/AbstractTexture gpw net/minecraft/class_1044 + f I NOT_ASSIGNED a field_32948 + f I id b field_5204 + f Z blur c field_5205 + f Z mipmap d field_5203 + m ()I getId a method_4624 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V load a method_4625 + p 1 resourceManager + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)V reset a method_18169 + p 1 textureManager + p 2 resourceManager + p 3 path + p 4 executor + m (ZZ)V setFilter a method_4527 + p 1 blur + p 2 mipmap + c {@code true} if a mipmap is being used (mip level is greater than 0) + m ()V releaseId b method_4528 + m ()V bind c method_23207 + m ()V method_23208 d method_23208 + m ()V method_22604 e method_22604 + m ()V +c net/minecraft/client/renderer/texture/Dumpable gpx net/minecraft/class_8215 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)V dumpContents a method_49712 + p 1 resourceLocation + p 2 path +c net/minecraft/client/renderer/texture/DynamicTexture gpy net/minecraft/class_1043 + f Lorg/slf4j/Logger; LOGGER e field_25794 + f Lcom/mojang/blaze3d/platform/NativeImage; pixels f field_5200 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V setPixels a method_4526 + p 1 pixels + m ()V upload d method_4524 + m ()Lcom/mojang/blaze3d/platform/NativeImage; getPixels e method_4525 + m ()V method_22793 f method_22793 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V + p 1 pixels + m (IIZ)V + p 1 width + p 2 height + p 3 useCalloc + m ()V +c net/minecraft/client/renderer/texture/HttpTexture gpz net/minecraft/class_1046 + f Lorg/slf4j/Logger; LOGGER f field_5212 + f I SKIN_WIDTH g field_34017 + f I SKIN_HEIGHT h field_34018 + f I LEGACY_SKIN_HEIGHT i field_34019 + f Ljava/io/File; file j field_5210 + f Ljava/lang/String; urlString k field_5214 + f Z processLegacySkin l field_20842 + f Ljava/lang/Runnable; onDownloaded m field_20843 + f Ljava/util/concurrent/CompletableFuture; future n field_20844 + f Z uploaded o field_5215 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V loadCallback a method_4534 + p 1 image + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)V doNotchTransparencyHack a method_22794 + p 0 image + p 1 x + p 2 y + p 3 width + p 4 height + m (Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; load a method_22795 + p 1 stream + m (Lcom/mojang/blaze3d/platform/NativeImage;)V upload b method_4531 + p 1 image + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)V setNoAlpha b method_22796 + p 0 image + p 1 x + p 2 y + p 3 width + p 4 height + m (Ljava/io/InputStream;)V method_22797 b method_22797 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V method_22799 c method_22799 + m (Lcom/mojang/blaze3d/platform/NativeImage;)Lcom/mojang/blaze3d/platform/NativeImage; processLegacySkin c method_22798 + p 1 image + m ()V method_22801 d method_22801 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V method_22800 d method_22800 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V method_22802 e method_22802 + m (Ljava/io/File;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;ZLjava/lang/Runnable;)V + p 1 file + p 2 urlString + p 3 location + p 4 processLegacySkin + p 5 onDownloaded + m ()V +c net/minecraft/client/renderer/texture/MipmapGenerator gqa net/minecraft/class_4725 + f I ALPHA_CUTOUT_CUTOFF a field_32949 + f [F POW22 b field_21747 + m (I)F getPow22 a method_24099 + p 0 value + m (IIIII)I gammaBlend a method_24100 + p 0 col0 + p 1 col1 + p 2 col2 + p 3 col3 + p 4 bitOffset + m (IIIIZ)I alphaBlend a method_24101 + p 0 col0 + p 1 col1 + p 2 col2 + p 3 col3 + p 4 transparent + m (Lcom/mojang/blaze3d/platform/NativeImage;)Z hasTransparentPixel a method_45804 + p 0 image + m ([F)V method_24103 a method_24103 + m ([Lcom/mojang/blaze3d/platform/NativeImage;I)[Lcom/mojang/blaze3d/platform/NativeImage; generateMipLevels a method_24102 + p 0 images + p 1 mipLevel + m ()V + m ()V +c net/minecraft/client/renderer/texture/MissingTextureAtlasSprite gqb net/minecraft/class_1047 + f I MISSING_IMAGE_WIDTH a field_32950 + f I MISSING_IMAGE_HEIGHT b field_32951 + f Ljava/lang/String; MISSING_TEXTURE_NAME c field_32952 + f Lnet/minecraft/resources/ResourceLocation; MISSING_TEXTURE_LOCATION d field_5219 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; SPRITE_METADATA e field_45630 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; missingTexture f field_5220 + m ()Lnet/minecraft/client/renderer/texture/SpriteContents; create a method_45805 + m (II)Lcom/mojang/blaze3d/platform/NativeImage; generateMissingImage a method_45806 + p 0 width + p 1 height + m ()Lnet/minecraft/resources/ResourceLocation; getLocation b method_4539 + m ()Lnet/minecraft/client/renderer/texture/DynamicTexture; getTexture c method_4540 + m ()V + m ()V +c net/minecraft/client/renderer/texture/OverlayTexture gqc net/minecraft/class_4608 + f I NO_WHITE_U a field_32953 + f I RED_OVERLAY_V b field_32954 + f I WHITE_OVERLAY_V c field_32955 + f I NO_OVERLAY d field_21444 + f I SIZE e field_32956 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture f field_21013 + m ()V setupOverlayColor a method_23209 + m (F)I u a method_23210 + p 0 u + m (FZ)I pack a method_23624 + p 0 u + p 1 hurt + m (II)I pack a method_23625 + p 0 u + p 1 v + m (Z)I v a method_23212 + p 0 hurt + m ()V teardownOverlayColor b method_23213 + m ()V + m ()V +c net/minecraft/client/renderer/texture/PreloadedTexture gqd net/minecraft/class_4005 + f Ljava/util/concurrent/CompletableFuture; future f field_17894 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; method_18151 a method_18151 + m (Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage;)Ljava/lang/Void; method_18149 a method_18149 + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V method_18150 a method_18150 + m (Ljava/lang/Runnable;)V method_22807 a method_22807 + m (Ljava/util/concurrent/Executor;)Ljava/util/concurrent/Executor; executor a method_22808 + p 0 executor + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_22809 a method_22809 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; method_18152 c method_18152 + m ()Ljava/util/concurrent/CompletableFuture; getFuture d method_18148 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)V + p 1 resourceManager + p 2 location + p 3 backgroundExecutor +c net/minecraft/client/renderer/texture/SimpleTexture gqe net/minecraft/class_1049 + f Lnet/minecraft/resources/ResourceLocation; location e field_5224 + f Lorg/slf4j/Logger; LOGGER f field_5225 + m (Lcom/mojang/blaze3d/platform/NativeImage;ZZ)V doLoad a method_22810 + p 1 image + p 2 blur + p 3 clamp + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; getTextureImage b method_18153 + p 1 resourceManager + m (Lcom/mojang/blaze3d/platform/NativeImage;ZZ)V method_22811 b method_22811 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 location + m ()V +c net/minecraft/client/renderer/texture/SimpleTexture$TextureImage gqe$a net/minecraft/class_1049$class_4006 + f Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; metadata a field_17895 + f Lcom/mojang/blaze3d/platform/NativeImage; image b field_17896 + f Ljava/io/IOException; exception c field_17897 + m ()Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; getTextureMetadata a method_18155 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; load a method_18156 + p 0 resourceManager + p 1 location + m ()Lcom/mojang/blaze3d/platform/NativeImage; getImage b method_18157 + m ()V throwIfError c method_18158 + m (Ljava/io/IOException;)V + p 1 exception + m (Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection;Lcom/mojang/blaze3d/platform/NativeImage;)V + p 1 metadata + p 2 image +c net/minecraft/client/renderer/texture/SpriteContents gqf net/minecraft/class_7764 + f Lorg/slf4j/Logger; LOGGER a field_40535 + f Lnet/minecraft/resources/ResourceLocation; name b field_40536 + f I width c field_40537 + f I height d field_40538 + f Lcom/mojang/blaze3d/platform/NativeImage; originalImage e field_40539 + f [Lcom/mojang/blaze3d/platform/NativeImage; byMipLevel f field_40540 + f Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; animatedTexture g field_40541 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata h field_45631 + m (I)V increaseMipLevel a method_45808 + p 1 mipLevel + m (II)V uploadFirstFrame a method_45809 + p 1 x + p 2 y + m (III)Z isTransparent a method_45810 + p 1 frame + p 2 x + p 3 y + m (IIII[Lcom/mojang/blaze3d/platform/NativeImage;)V upload a method_45811 + p 1 x + p 2 y + p 3 frameX + p 4 frameY + p 5 atlasData + m (Lnet/minecraft/client/resources/metadata/animation/FrameSize;IILnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection;)Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; createAnimatedTexture a method_45812 + p 1 frameSize + p 2 width + p 3 height + p 4 metadata + m (Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_45813 a method_45813 + m (Ljava/util/List;II)V method_45814 a method_45814 + m ()Ljava/util/stream/IntStream; getUniqueFrames d method_45817 + m ()Lnet/minecraft/client/renderer/texture/SpriteTicker; createTicker e method_45818 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata f method_52848 + m ()I getFrameCount g method_45819 + m ()Ljava/lang/String; method_45820 h method_45820 + m ()Ljava/lang/String; method_45821 i method_45821 + m ()Ljava/lang/String; method_45822 j method_45822 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/metadata/animation/FrameSize;Lcom/mojang/blaze3d/platform/NativeImage;Lnet/minecraft/server/packs/resources/ResourceMetadata;)V + p 1 name + p 2 frameSize + p 3 originalImage + p 4 metadata + m ()V +c net/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture gqf$a net/minecraft/class_7764$class_5790 + f Lnet/minecraft/client/renderer/texture/SpriteContents; field_28469 a field_28469 + f Ljava/util/List; frames b field_28472 + f I frameRowSize c field_28473 + f Z interpolateFrames d field_40542 + m ()Lnet/minecraft/client/renderer/texture/SpriteTicker; createTicker a method_45823 + m (I)I getFrameX a method_33446 + p 1 frameIndex + m (II)V uploadFirstFrame a method_33445 + p 1 x + p 2 y + m (III)V uploadFrame a method_33455 + p 1 x + p 2 y + p 3 frameIndex + m (Lnet/minecraft/client/renderer/texture/SpriteContents$FrameInfo;)I method_33449 a method_33449 + m ()Ljava/util/stream/IntStream; getUniqueFrames b method_33450 + m (I)I getFrameY b method_33451 + p 1 frameIndex + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Ljava/util/List;IZ)V + p 2 frames + p 3 frameRowSize + p 4 interpolateFrames +c net/minecraft/client/renderer/texture/SpriteContents$FrameInfo gqf$b net/minecraft/class_7764$class_5791 + f I index a field_28475 + f I time b field_28476 + m (II)V + p 1 index + p 2 time +c net/minecraft/client/renderer/texture/SpriteContents$InterpolationData gqf$c net/minecraft/class_7764$class_4728 + f Lnet/minecraft/client/renderer/texture/SpriteContents; field_21757 a field_21757 + f [Lcom/mojang/blaze3d/platform/NativeImage; activeFrame b field_21758 + m (DII)I mix a method_24129 + p 1 delta + p 3 color1 + p 4 color2 + m (IILnet/minecraft/client/renderer/texture/SpriteContents$Ticker;)V uploadInterpolatedFrame a method_24128 + p 1 x + p 2 y + p 3 ticker + m (Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture;IIII)I getPixel a method_24130 + p 1 animatedTexture + p 2 frameIndex + p 3 mipLevel + p 4 x + p 5 y + m (Lnet/minecraft/client/renderer/texture/SpriteContents;)V +c net/minecraft/client/renderer/texture/SpriteContents$Ticker gqf$d net/minecraft/class_7764$class_7765 + f I frame a field_40544 + f I subFrame b field_40545 + f Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; animationInfo c field_40546 + f Lnet/minecraft/client/renderer/texture/SpriteContents$InterpolationData; interpolationData d field_40547 + m (II)V method_45825 b method_45825 + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture;Lnet/minecraft/client/renderer/texture/SpriteContents$InterpolationData;)V + p 2 animationInfo + p 3 interpolationData +c net/minecraft/client/renderer/texture/SpriteLoader gqg net/minecraft/class_7766 + f Ljava/util/Set; DEFAULT_METADATA_SECTIONS a field_45632 + f Lorg/slf4j/Logger; LOGGER b field_40548 + f Lnet/minecraft/resources/ResourceLocation; location c field_40549 + f I maxSupportedTextureSize d field_40550 + f I minWidth e field_43111 + f I minHeight f field_43112 + m (ILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V method_45826 a method_45826 + m (ILjava/util/concurrent/Executor;Ljava/util/List;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; method_47659 a method_47659 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; method_47660 a method_47660 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;ILjava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadAndStitch a method_52849 + p 1 resouceManager + p 2 location + p 3 mipLevel + p 4 executor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;ILjava/util/concurrent/Executor;Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; loadAndStitch a method_47661 + p 1 resourceManager + p 2 location + p 3 mipLevel + p 4 executor + p 5 sectionSerializers + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)Ljava/lang/String; method_45835 a method_45835 + m (Lnet/minecraft/client/renderer/texture/Stitcher;II)Ljava/util/Map; getStitchedSprites a method_45836 + p 1 stitcher + p 2 x + p 3 y + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;)Lnet/minecraft/client/renderer/texture/SpriteLoader; create a method_45837 + p 0 atlas + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/List;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; runSpriteSuppliers a method_47664 + p 0 spriteResourceLoader + p 1 factories + p 2 executor + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_47665 a method_47665 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_47666 a method_47666 + m (Ljava/util/List;)Ljava/util/List; method_47662 a method_47662 + m (Ljava/util/List;ILjava/util/concurrent/Executor;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; stitch a method_47663 + p 1 contents + p 2 mipLevel + p 3 executor + m (Ljava/util/Map;I)V method_45840 a method_45840 + m (Ljava/util/Map;IILnet/minecraft/client/renderer/texture/SpriteContents;II)V method_45841 a method_45841 + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52850 a method_52850 + m (Lnet/minecraft/resources/ResourceLocation;III)V + p 1 location + p 2 maxSupportedTextureSize + p 3 minWidth + p 4 minHeight + m ()V +c net/minecraft/client/renderer/texture/SpriteLoader$Preparations gqg$a net/minecraft/class_7766$class_7767 + f I width a comp_1040 + f I height b comp_1041 + f I mipLevel c comp_1042 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing d comp_1043 + f Ljava/util/Map; regions e comp_1044 + f Ljava/util/concurrent/CompletableFuture; readyForUpload f comp_1045 + m ()Ljava/util/concurrent/CompletableFuture; waitForUpload a method_45845 + m (Ljava/lang/Void;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; method_45846 a method_45846 + m ()I width b comp_1040 + m ()I height c comp_1041 + m ()I mipLevel d comp_1042 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing e comp_1043 + m ()Ljava/util/Map; regions f comp_1044 + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload g comp_1045 + m (IIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/renderer/texture/SpriteTicker gqh net/minecraft/class_7768 + m (II)V tickAndUpload a method_45824 + p 1 x + p 2 y +c net/minecraft/client/renderer/texture/Stitcher gqi net/minecraft/class_1055 + f Ljava/util/Comparator; HOLDER_COMPARATOR a field_18030 + f I mipLevel b field_5243 + f Ljava/util/List; texturesToBeStitched c field_5237 + f Ljava/util/List; storage d field_5239 + f I storageX e field_5242 + f I storageY f field_5241 + f I maxWidth g field_5240 + f I maxHeight h field_5238 + m ()I getWidth a method_4554 + m (II)I smallestFittingMinTexel a method_4551 + p 0 dimension + p 1 mipLevel + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)V registerSprite a method_4553 + p 1 stitcherEntry + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z addToStorage a method_4550 + c Attempts to find space for specified {@code holder}.\n\n@return {@code true} if there was space; {@code false} otherwise + p 1 holder + m (Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader;)V gatherSprites a method_4549 + p 1 loader + m ()I getHeight b method_4555 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z expand b method_4552 + c Attempts to expand stitched texture in order to make space for specified {@code holder}.\n\n@return {@code true} if there was enough space to expand the texture; {@code false} otherwise + p 1 holder + m ()V stitch c method_4557 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Lnet/minecraft/client/renderer/texture/Stitcher$Entry; method_21686 c method_21686 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Lnet/minecraft/resources/ResourceLocation; method_18337 d method_18337 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Ljava/lang/Integer; method_18338 e method_18338 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Ljava/lang/Integer; method_18339 f method_18339 + m (III)V + p 1 maxWidth + p 2 maxHeight + p 3 mipLevel + m ()V +c net/minecraft/client/renderer/texture/Stitcher$Entry gqi$a net/minecraft/class_1055$class_7769 + m ()I width a method_45807 + m ()I height b method_45815 + m ()Lnet/minecraft/resources/ResourceLocation; name c method_45816 +c net/minecraft/client/renderer/texture/Stitcher$Holder gqi$b net/minecraft/class_1055$class_1056 + f Lnet/minecraft/client/renderer/texture/Stitcher$Entry; entry a comp_1046 + f I width b comp_1047 + f I height c comp_1048 + m ()Lnet/minecraft/client/renderer/texture/Stitcher$Entry; entry a comp_1046 + m ()I width b comp_1047 + m ()I height c comp_1048 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;I)V + p 1 entry + p 2 mipLevel + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;II)V +c net/minecraft/client/renderer/texture/Stitcher$Region gqi$c net/minecraft/class_1055$class_1057 + f I originX a field_5253 + f I originY b field_5252 + f I width c field_5251 + f I height d field_5250 + f Ljava/util/List; subSlots e field_5255 + f Lnet/minecraft/client/renderer/texture/Stitcher$Holder; holder f field_5254 + m ()I getX a method_4569 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z add a method_4566 + p 1 holder + m (Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader;)V walk a method_4568 + p 1 spriteLoader + m ()I getY b method_4567 + m (IIII)V + p 1 originX + p 2 originY + p 3 width + p 4 height +c net/minecraft/client/renderer/texture/Stitcher$SpriteLoader gqi$d net/minecraft/class_1055$class_4726 +c net/minecraft/client/renderer/texture/StitcherException gqj net/minecraft/class_1054 + f Ljava/util/Collection; allSprites a field_20311 + m ()Ljava/util/Collection; getAllSprites a method_21687 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;Ljava/util/Collection;)V + p 1 entry + p 2 allSprites +c net/minecraft/client/renderer/texture/TextureAtlas gqk net/minecraft/class_1059 + f Lnet/minecraft/resources/ResourceLocation; LOCATION_BLOCKS e field_5275 + f Lnet/minecraft/resources/ResourceLocation; LOCATION_PARTICLES f field_17898 + f Lorg/slf4j/Logger; LOGGER g field_5278 + f Ljava/util/List; sprites h field_5277 + f Ljava/util/List; animatedTextures i field_5276 + f Ljava/util/Map; texturesByName j field_5280 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missingSprite k field_46207 + f Lnet/minecraft/resources/ResourceLocation; location l field_21749 + f I maxSupportedTextureSize m field_17899 + f I width n field_43113 + f I height o field_43114 + f I mipLevel p field_43115 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_4608 + p 1 name + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V upload a method_45848 + p 1 preparations + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/util/Map;)V dumpSpriteNames a method_45849 + p 0 outputDir + p 1 outputFilename + p 2 sprites + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V updateFilter b method_24198 + p 1 preparations + m ()V cycleAnimationFrames d method_4612 + m ()V clearTextureData f method_4601 + m ()Lnet/minecraft/resources/ResourceLocation; location g method_24106 + m ()I maxSupportedTextureSize h method_45850 + m ()I getWidth i method_49713 + m ()I getHeight j method_49714 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 location + m ()V +c net/minecraft/client/renderer/texture/TextureAtlasSprite gql net/minecraft/class_1058 + f Lnet/minecraft/resources/ResourceLocation; atlasLocation a field_40552 + f Lnet/minecraft/client/renderer/texture/SpriteContents; contents b field_40553 + f I x c field_5258 + f I y d field_5256 + f F u0 e field_5270 + f F u1 f field_5269 + f F v0 g field_5268 + f F v1 h field_5267 + m ()I getX a method_35806 + m (F)F getU a method_4580 + p 1 u + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; wrap a method_24108 + p 1 consumer + m ()I getY b method_35807 + m (F)F getUOffset b method_35804 + p 1 offset + m ()F getU0 c method_4594 + c @return the minimum U coordinate to use when rendering this sprite + m (F)F getV c method_4570 + p 1 v + m ()F getU1 d method_4577 + c @return the maximum U coordinate to use when rendering this sprite + m (F)F getVOffset d method_35805 + p 1 offset + m ()Lnet/minecraft/client/renderer/texture/SpriteContents; contents e method_45851 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite$Ticker; createTicker f method_33437 + m ()F getV0 g method_4593 + c @return the minimum V coordinate to use when rendering this sprite + m ()F getV1 h method_4575 + c @return the maximum V coordinate to use when rendering this sprite + m ()Lnet/minecraft/resources/ResourceLocation; atlasLocation i method_45852 + m ()V uploadFirstFrame j method_4584 + m ()F uvShrinkRatio k method_23842 + m ()F atlasSize l method_23841 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/SpriteContents;IIII)V + p 1 atlasLocation + p 2 contents + p 3 originX + p 4 originY + p 5 x + p 6 y +c net/minecraft/client/renderer/texture/TextureAtlasSprite$1 gql$1 net/minecraft/class_1058$1 + f Lnet/minecraft/client/renderer/texture/SpriteTicker; val$ticker a field_40554 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; field_40555 b field_40555 + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/texture/SpriteTicker;)V +c net/minecraft/client/renderer/texture/TextureAtlasSprite$Ticker gql$a net/minecraft/class_1058$class_7770 + m ()V tickAndUpload a method_45853 +c net/minecraft/client/renderer/texture/TextureManager gqm net/minecraft/class_1060 + f Lnet/minecraft/resources/ResourceLocation; INTENTIONAL_MISSING_TEXTURE a field_5285 + f Lorg/slf4j/Logger; LOGGER b field_5288 + f Ljava/util/Map; byPath c field_5286 + f Ljava/util/Set; tickableTextures d field_5284 + f Ljava/util/Map; prefixRegister e field_5283 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager f field_5287 + m (Lnet/minecraft/resources/ResourceLocation;)V bindForSetup a method_22813 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V register a method_4616 + p 1 path + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/PreloadedTexture;)V method_18166 a method_18166 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preload a method_18168 + p 1 path + p 2 backgroundExecutor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)V method_18167 a method_18167 + m (Lnet/minecraft/client/renderer/texture/AbstractTexture;)Ljava/lang/String; method_4621 a method_4621 + m (Ljava/lang/Runnable;)V execute a method_22812 + p 0 runnable + m (Ljava/lang/String;Lnet/minecraft/client/renderer/texture/DynamicTexture;)Lnet/minecraft/resources/ResourceLocation; register a method_4617 + p 1 name + p 2 texture + m (Ljava/nio/file/Path;)V dumpAllSheets a method_49715 + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V method_49716 a method_49716 + m (Ljava/util/concurrent/CompletableFuture;)V method_45854 a method_45854 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/AbstractTexture; getTexture b method_4619 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)Lnet/minecraft/client/renderer/texture/AbstractTexture; getTexture b method_34590 + p 1 path + p 2 defaultTexture + m (Ljava/lang/Runnable;)V method_22814 b method_22814 + m (Ljava/nio/file/Path;)V _dumpAllSheets b method_49717 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;)V release c method_4615 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V safeClose c method_30299 + p 1 path + p 2 texture + m (Ljava/lang/Runnable;)V method_22815 c method_22815 + m (Ljava/nio/file/Path;)V method_49718 c method_49718 + m (Lnet/minecraft/resources/ResourceLocation;)V _bind d method_4618 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)Lnet/minecraft/client/renderer/texture/AbstractTexture; loadTexture d method_24303 + p 1 path + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V method_22816 e method_22816 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V + p 1 resourceManager + m ()V +c net/minecraft/client/renderer/texture/Tickable gqn net/minecraft/class_1061 + m ()V tick e method_4622 +c net/minecraft/client/renderer/texture/atlas/SpriteResourceLoader gqo net/minecraft/class_8684 + f Lorg/slf4j/Logger; LOGGER a field_45633 + m (Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52851 a method_52851 + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSource gqp net/minecraft/class_7948 + f Lnet/minecraft/resources/FileToIdConverter; TEXTURE_ID_CONVERTER a field_42075 + m ()Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; type a method_47672 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;)V run a method_47673 + p 1 resourceManager + p 2 output + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSource$Output gqp$a net/minecraft/class_7948$class_7949 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V add a method_47674 + p 1 location + p 2 resource + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_47675 a method_47675 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$SpriteSupplier;)V add a method_47670 + p 1 location + p 2 sprite + m (Ljava/util/function/Predicate;)V removeAll a method_47671 + p 1 predicate +c net/minecraft/client/renderer/texture/atlas/SpriteSource$SpriteSupplier gqp$b net/minecraft/class_7948$class_7950 + m ()V discard a method_47676 +c net/minecraft/client/renderer/texture/atlas/SpriteSourceList gqq net/minecraft/class_7947 + f Lorg/slf4j/Logger; LOGGER a field_41386 + f Lnet/minecraft/resources/FileToIdConverter; ATLAS_INFO_CONVERTER b field_41387 + f Ljava/util/List; sources c field_41388 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/List; list a method_47667 + p 1 resourceManager + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceList; load a method_47668 + p 0 resourceManager + p 1 sprite + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource;)V method_47669 a method_47669 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52852 a method_52852 + m (Ljava/util/List;)V + p 1 sources + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSourceList$1 gqq$1 net/minecraft/class_7947$1 + f Ljava/util/Map; val$sprites a field_41389 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceList;Ljava/util/Map;)V +c net/minecraft/client/renderer/texture/atlas/SpriteSourceType gqr net/minecraft/class_7951 + f Lcom/mojang/serialization/MapCodec; codec a comp_1162 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1162 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/client/renderer/texture/atlas/SpriteSources gqs net/minecraft/class_7952 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; SINGLE_FILE a field_41391 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; DIRECTORY b field_41392 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; FILTER c field_41393 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; UNSTITCHER d field_41394 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; PALETTED_PERMUTATIONS e field_42076 + f Lcom/mojang/serialization/Codec; TYPE_CODEC f field_41395 + f Lcom/mojang/serialization/Codec; CODEC g field_41396 + f Lcom/mojang/serialization/Codec; FILE_CODEC h field_41397 + f Lcom/google/common/collect/BiMap; TYPES i field_41398 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49634 a method_49634 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType;)Lcom/mojang/serialization/DataResult; method_47679 a method_47679 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; register a method_47680 + p 0 name + p 1 codec + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_47677 b method_47677 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49635 c method_49635 + m ()V + m ()V +c net/minecraft/client/renderer/texture/atlas/package-info gqt net/minecraft/class_7953 +c net/minecraft/client/renderer/texture/atlas/sources/DirectoryLister gqu net/minecraft/class_7954 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41399 + f Ljava/lang/String; sourcePath c field_41400 + f Ljava/lang/String; idPrefix d field_41401 + m (Lnet/minecraft/resources/FileToIdConverter;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_47683 a method_47683 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47684 a method_47684 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/DirectoryLister;)Ljava/lang/String; method_47685 a method_47685 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/DirectoryLister;)Ljava/lang/String; method_47686 b method_47686 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 sourcePath + p 2 idPrefix + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage gqv net/minecraft/class_7958 + f Lnet/minecraft/resources/ResourceLocation; id a field_41416 + f Lnet/minecraft/server/packs/resources/Resource; resource b field_41417 + f Ljava/util/concurrent/atomic/AtomicReference; image c field_41418 + f Ljava/util/concurrent/atomic/AtomicInteger; referenceCount d field_41419 + m ()Lcom/mojang/blaze3d/platform/NativeImage; get a method_47697 + m ()V release b method_47698 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;I)V + p 1 id + p 2 resource + p 3 referenceCount +c net/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations gqw net/minecraft/class_8066 + f Lcom/mojang/serialization/MapCodec; CODEC b field_42077 + f Lorg/slf4j/Logger; LOGGER c field_42078 + f Ljava/util/List; textures d field_42079 + f Ljava/util/Map; permutations e field_42080 + f Lnet/minecraft/resources/ResourceLocation; paletteKey f field_42081 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)[I method_48485 a method_48485 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)[I loadPaletteEntryFromImage a method_48486 + p 0 resourceMananger + p 1 palette + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48487 a method_48487 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Ljava/util/Map; method_48488 a method_48488 + m (Lit/unimi/dsi/fastutil/ints/Int2IntMap;I)I method_48489 a method_48489 + m (Ljava/util/Map;Ljava/util/function/Supplier;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V method_48490 a method_48490 + m (Ljava/util/function/Supplier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/IntUnaryOperator; method_48491 a method_48491 + m ([I[I)Ljava/util/function/IntUnaryOperator; createPaletteMapping a method_48492 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Lnet/minecraft/resources/ResourceLocation; method_48493 b method_48493 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Ljava/util/List; method_48494 c method_48494 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)V + p 1 textures + p 2 paletteKey + p 3 permutations + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations$PalettedSpriteSupplier gqw$a net/minecraft/class_8066$class_8067 + f Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; baseImage a comp_1216 + f Ljava/util/function/Supplier; palette b comp_1217 + f Lnet/minecraft/resources/ResourceLocation; permutationLocation c comp_1218 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; apply a method_52853 + m ()Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; baseImage b comp_1216 + m ()Ljava/util/function/Supplier; palette c comp_1217 + m ()Lnet/minecraft/resources/ResourceLocation; permutationLocation d comp_1218 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Ljava/util/function/Supplier;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/renderer/texture/atlas/sources/SingleFile gqx net/minecraft/class_7955 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41402 + f Lorg/slf4j/Logger; LOGGER c field_41403 + f Lnet/minecraft/resources/ResourceLocation; resourceId d field_41405 + f Ljava/util/Optional; spriteId e field_41406 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47687 a method_47687 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SingleFile;)Ljava/util/Optional; method_47688 a method_47688 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SingleFile;)Lnet/minecraft/resources/ResourceLocation; method_47689 b method_47689 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V + p 1 resourceId + p 2 spriteId + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/SourceFilter gqy net/minecraft/class_7956 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41407 + f Lnet/minecraft/util/ResourceLocationPattern; filter c field_41408 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47690 a method_47690 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SourceFilter;)Lnet/minecraft/util/ResourceLocationPattern; method_47691 a method_47691 + m (Lnet/minecraft/util/ResourceLocationPattern;)V + p 1 filter + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher gqz net/minecraft/class_7957 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41409 + f Lorg/slf4j/Logger; LOGGER c field_41410 + f Lnet/minecraft/resources/ResourceLocation; resource d field_41412 + f Ljava/util/List; regions e field_41413 + f D xDivisor f field_41414 + f D yDivisor g field_41415 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47692 a method_47692 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/lang/Double; method_47693 a method_47693 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/lang/Double; method_47694 b method_47694 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/util/List; method_47695 c method_47695 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Lnet/minecraft/resources/ResourceLocation; method_47696 d method_47696 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;DD)V + p 1 resource + p 2 regions + p 3 xDivisor + p 5 yDivisor + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region gqz$a net/minecraft/class_7957$class_7959 + f Lcom/mojang/serialization/Codec; CODEC a field_41420 + f Lnet/minecraft/resources/ResourceLocation; sprite b comp_1163 + f D x c comp_1164 + f D y d comp_1165 + f D width e comp_1166 + f D height f comp_1167 + m ()Lnet/minecraft/resources/ResourceLocation; sprite a comp_1163 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47699 a method_47699 + m ()D x b comp_1164 + m ()D y c comp_1165 + m ()D width d comp_1166 + m ()D height e comp_1167 + m (Lnet/minecraft/resources/ResourceLocation;DDDD)V + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher$RegionInstance gqz$b net/minecraft/class_7957$class_7960 + f Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; image a field_41421 + f Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region; region b field_41422 + f D xDivisor c field_41423 + f D yDivisor d field_41424 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; apply a method_47700 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region;DD)V + p 1 image + p 2 region + p 3 xDivisor + p 5 yDivisor +c net/minecraft/client/renderer/texture/atlas/sources/package-info gra net/minecraft/class_7961 +c net/minecraft/client/renderer/texture/package-info grb net/minecraft/class_6262 +c net/minecraft/client/resources/ClientPackSource grc net/minecraft/class_1065 + f Ljava/lang/String; HIGH_CONTRAST_PACK c field_43088 + f Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection; VERSION_METADATA_SECTION d field_40556 + f Lnet/minecraft/server/packs/BuiltInMetadata; BUILT_IN_METADATA e field_40557 + f Ljava/util/Map; SPECIAL_PACK_NAMES f field_40559 + f Lnet/minecraft/server/packs/PackLocationInfo; VANILLA_PACK_INFO g field_49131 + f Lnet/minecraft/server/packs/PackSelectionConfig; VANILLA_SELECTION_CONFIG h field_49132 + f Lnet/minecraft/server/packs/PackSelectionConfig; BUILT_IN_SELECTION_CONFIG i field_49133 + f Lnet/minecraft/resources/ResourceLocation; PACKS_DIR j field_40560 + f Ljava/nio/file/Path; externalAssetDir k field_40561 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/PackLocationInfo; createBuiltInPackLocation a method_57056 + p 0 id + p 1 title + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; findExplodedAssetPacks a method_45856 + p 1 assetIndex + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResources; createVanillaPackSource b method_45857 + p 0 assetIndex + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 assetIndex + p 2 validator + m ()V +c net/minecraft/client/resources/DefaultPlayerSkin grd net/minecraft/class_1068 + f [Lnet/minecraft/client/resources/PlayerSkin; DEFAULT_SKINS a field_41121 + m ()Lnet/minecraft/resources/ResourceLocation; getDefaultTexture a method_4649 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/client/resources/PlayerSkin; get a method_52854 + p 0 profile + m (Ljava/lang/String;Lnet/minecraft/client/resources/PlayerSkin$Model;)Lnet/minecraft/client/resources/PlayerSkin; create a method_52855 + p 0 path + p 1 skinModel + m (Ljava/util/UUID;)Lnet/minecraft/client/resources/PlayerSkin; get a method_4648 + p 0 uuid + m ()V + m ()V +c net/minecraft/client/resources/FoliageColorReloadListener gre net/minecraft/class_1070 + f Lnet/minecraft/resources/ResourceLocation; LOCATION a field_5303 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)[I prepare a method_18660 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ([ILnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18659 + p 1 object + p 2 resourceManager + p 3 profiler + m ()V + m ()V +c net/minecraft/client/resources/GrassColorReloadListener grf net/minecraft/class_1069 + f Lnet/minecraft/resources/ResourceLocation; LOCATION a field_5302 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)[I prepare a method_18662 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ([ILnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18661 + p 1 object + p 2 resourceManager + p 3 profiler + m ()V + m ()V +c net/minecraft/client/resources/IndexedAssetSource grg net/minecraft/class_1064 + f Lcom/google/common/base/Splitter; PATH_SPLITTER a field_40563 + f Lorg/slf4j/Logger; LOGGER b field_5290 + m (Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/Path; createIndexFs a method_45858 + p 0 assetDirectory + p 1 assetIndex + m ()V + m ()V +c net/minecraft/client/resources/LegacyStuffWrapper grh net/minecraft/class_3685 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)[I getPixels a method_16049 + p 0 manager + p 1 location + m ()V +c net/minecraft/client/resources/MapDecorationTextureManager gri net/minecraft/class_9443 + m (Lnet/minecraft/world/level/saveddata/maps/MapDecoration;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_58516 + p 1 mapDecoration + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager +c net/minecraft/client/resources/MobEffectTextureManager grj net/minecraft/class_4074 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18663 + p 1 effect + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager +c net/minecraft/client/resources/PaintingTextureManager grk net/minecraft/class_4044 + f Lnet/minecraft/resources/ResourceLocation; BACK_SPRITE_LOCATION a field_18032 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getBackSprite a method_18342 + m (Lnet/minecraft/world/entity/decoration/PaintingVariant;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18345 + p 1 paintingVariant + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/resources/PlayerSkin grl net/minecraft/class_8685 + f Lnet/minecraft/resources/ResourceLocation; texture a comp_1626 + f Ljava/lang/String; textureUrl b comp_1911 + f Lnet/minecraft/resources/ResourceLocation; capeTexture c comp_1627 + f Lnet/minecraft/resources/ResourceLocation; elytraTexture d comp_1628 + f Lnet/minecraft/client/resources/PlayerSkin$Model; model e comp_1629 + f Z secure f comp_1630 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_1626 + m ()Ljava/lang/String; textureUrl b comp_1911 + m ()Lnet/minecraft/resources/ResourceLocation; capeTexture c comp_1627 + m ()Lnet/minecraft/resources/ResourceLocation; elytraTexture d comp_1628 + m ()Lnet/minecraft/client/resources/PlayerSkin$Model; model e comp_1629 + m ()Z secure f comp_1630 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/PlayerSkin$Model;Z)V +c net/minecraft/client/resources/PlayerSkin$Model grl$a net/minecraft/class_8685$class_7920 + f Lnet/minecraft/client/resources/PlayerSkin$Model; SLIM a field_41122 + f Lnet/minecraft/client/resources/PlayerSkin$Model; WIDE b field_41123 + f Ljava/lang/String; id c field_41124 + f [Lnet/minecraft/client/resources/PlayerSkin$Model; $VALUES d field_41125 + m ()Ljava/lang/String; id a method_52856 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/PlayerSkin$Model; byName a method_52857 + p 0 name + m ()[Lnet/minecraft/client/resources/PlayerSkin$Model; $values b method_47439 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/client/resources/SkinManager grm net/minecraft/class_1071 + f Lorg/slf4j/Logger; LOGGER a field_46909 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService b field_46910 + f Lcom/google/common/cache/LoadingCache; skinCache c field_45634 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; skinTextures d field_45635 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; capeTextures e field_45636 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; elytraTextures f field_45637 + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; lookupInsecure a method_52858 + p 1 profile + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletableFuture; registerTextures a method_52859 + p 1 uuid + p 2 textures + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin;)Lnet/minecraft/client/resources/PlayerSkin; method_52860 a method_52860 + m (Ljava/util/concurrent/CompletableFuture;Ljava/lang/String;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin$Model;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;Ljava/lang/Void;)Lnet/minecraft/client/resources/PlayerSkin; method_52861 a method_52861 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/client/resources/PlayerSkin; getInsecureSkin b method_52862 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/concurrent/CompletableFuture; getOrLoad c method_52863 + p 1 profile + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/nio/file/Path;Lcom/mojang/authlib/minecraft/MinecraftSessionService;Ljava/util/concurrent/Executor;)V + p 1 textureManager + p 2 root + p 3 sessionService + p 4 executor + m ()V +c net/minecraft/client/resources/SkinManager$1 grm$1 net/minecraft/class_1071$1 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; val$sessionService a field_25795 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor b field_45638 + f Lnet/minecraft/client/resources/SkinManager; field_25796 c field_25796 + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;)Ljava/util/concurrent/CompletableFuture; load a method_52868 + p 1 cacheKey + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletionStage; method_52866 a method_52866 + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;Lcom/mojang/authlib/minecraft/MinecraftSessionService;)Lcom/mojang/authlib/minecraft/MinecraftProfileTextures; method_54647 a method_54647 + m (Lnet/minecraft/client/resources/SkinManager;Lcom/mojang/authlib/minecraft/MinecraftSessionService;Ljava/util/concurrent/Executor;)V +c net/minecraft/client/resources/SkinManager$2 grm$2 net/minecraft/class_1071$2 + f [I $SwitchMap$com$mojang$authlib$minecraft$MinecraftProfileTexture$Type a field_39908 + m ()V +c net/minecraft/client/resources/SkinManager$CacheKey grm$a net/minecraft/class_1071$class_8686 + f Ljava/util/UUID; profileId a comp_2010 + f Lcom/mojang/authlib/properties/Property; packedTextures b comp_2011 + m ()Ljava/util/UUID; profileId a comp_2010 + m ()Lcom/mojang/authlib/properties/Property; packedTextures b comp_2011 + m (Ljava/util/UUID;Lcom/mojang/authlib/properties/Property;)V +c net/minecraft/client/resources/SkinManager$TextureCache grm$b net/minecraft/class_1071$class_8687 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager a field_45639 + f Ljava/nio/file/Path; root b field_45640 + f Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type; type c field_45641 + f Ljava/util/Map; textures d field_45642 + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; getOrLoad a method_52870 + p 1 texture + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_52871 + p 1 name + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/resources/ResourceLocation;)V method_52872 a method_52872 + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; registerTexture b method_52873 + p 1 texture + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/nio/file/Path;Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type;)V + p 1 textureManager + p 2 root + p 3 type +c net/minecraft/client/resources/SplashManager grn net/minecraft/class_4008 + f Lnet/minecraft/resources/ResourceLocation; SPLASHES_LOCATION a field_17904 + f Lnet/minecraft/util/RandomSource; RANDOM b field_17905 + f Ljava/util/List; splashes c field_17906 + f Lnet/minecraft/client/User; user d field_18934 + m ()Lnet/minecraft/client/gui/components/SplashRenderer; getSplash a method_18174 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/List; prepare a method_18176 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Ljava/lang/String;)Z method_18664 a method_18664 + m (Ljava/util/List;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18175 + p 1 object + p 2 resourceManager + p 3 profiler + m (Lnet/minecraft/client/User;)V + p 1 user + m ()V +c net/minecraft/client/resources/TextureAtlasHolder gro net/minecraft/class_4075 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; textureAtlas a field_18230 + f Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b field_41425 + f Ljava/util/Set; metadataSections c field_45644 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_18667 + c Gets a sprite associated with the passed resource location. + p 1 location + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V method_45860 a method_45860 + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18666 + p 1 preparations + p 2 profiler + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 textureAtlasLocation + p 3 atlasInfoLocation + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Set;)V + p 1 textureManager + p 2 textureAtlasLocation + p 3 atlasInfoLocation + p 4 metadataSections +c net/minecraft/client/resources/language/ClientLanguage grp net/minecraft/class_1078 + f Lorg/slf4j/Logger; LOGGER b field_5332 + f Ljava/util/Map; storage c field_5330 + f Z defaultRightToLeft d field_25289 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Z)Lnet/minecraft/client/resources/language/ClientLanguage; loadFrom a method_4675 + p 0 resourceManager + p 1 filenames + p 2 defaultRightToLeft + m (Ljava/lang/String;Ljava/util/List;Ljava/util/Map;)V appendFrom a method_4676 + p 0 languageName + p 1 resources + p 2 destinationMap + m (Ljava/util/Map;Z)V + p 1 storage + p 2 defaultRightToLeft + m ()V +c net/minecraft/client/resources/language/FormattedBidiReorder grq net/minecraft/class_5491 + m (Ljava/lang/String;)Ljava/lang/String; shape a method_30921 + p 0 text + m (Lnet/minecraft/network/chat/FormattedText;Z)Lnet/minecraft/util/FormattedCharSequence; reorder a method_30922 + p 0 text + p 1 defaultRightToLeft + m ()V +c net/minecraft/client/resources/language/I18n grr net/minecraft/class_1074 + f Lnet/minecraft/locale/Language; language a field_25290 + m (Ljava/lang/String;)Z exists a method_4663 + p 0 key + m (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; get a method_4662 + c Translates the given string and then formats it. Equivalent to {@code String.format(translate(key), parameters)}. + p 0 translateKey + p 1 parameters + m (Lnet/minecraft/locale/Language;)V setLanguage a method_29391 + p 0 language + m ()V + m ()V +c net/minecraft/client/resources/language/LanguageInfo grs net/minecraft/class_1077 + f Lcom/mojang/serialization/Codec; CODEC a field_41862 + f Ljava/lang/String; region b comp_1198 + f Ljava/lang/String; name c comp_1199 + f Z bidirectional d comp_1200 + m ()Lnet/minecraft/network/chat/Component; toComponent a method_48303 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48304 a method_48304 + m ()Ljava/lang/String; region b comp_1198 + m ()Ljava/lang/String; name c comp_1199 + m ()Z bidirectional d comp_1200 + m (Ljava/lang/String;Ljava/lang/String;Z)V + m ()V +c net/minecraft/client/resources/language/LanguageManager grt net/minecraft/class_1076 + f Lorg/slf4j/Logger; LOGGER a field_5325 + f Lnet/minecraft/client/resources/language/LanguageInfo; DEFAULT_LANGUAGE b field_25291 + f Ljava/util/Map; languages c field_5324 + f Ljava/lang/String; currentCode d field_5323 + f Ljava/util/function/Consumer; reloadCallback e field_51830 + m ()Ljava/lang/String; getSelected a method_4669 + m (Ljava/lang/String;)V setSelected a method_4667 + p 1 selected + m (Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;)V method_29392 a method_29392 + m (Ljava/util/stream/Stream;)Ljava/util/Map; extractLanguages a method_29393 + p 0 packResources + m ()Ljava/util/SortedMap; getLanguages b method_4665 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/language/LanguageInfo; getLanguage b method_4668 + p 1 code + m (Ljava/lang/String;Ljava/util/function/Consumer;)V + p 1 currentCode + p 2 reloadFallback + m ()V +c net/minecraft/client/resources/language/package-info gru net/minecraft/class_6263 +c net/minecraft/client/resources/metadata/animation/AnimationFrame grv net/minecraft/class_1080 + f I UNKNOWN_FRAME_TIME a field_32973 + f I index b field_5341 + f I time c field_5340 + m ()I getIndex a method_4690 + m (I)I getTime a method_4691 + p 1 defaultValue + m (I)V + p 1 index + m (II)V + p 1 index + p 2 time +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection grw net/minecraft/class_1079 + f Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSectionSerializer; SERIALIZER a field_5337 + f Ljava/lang/String; SECTION_NAME b field_32974 + f I DEFAULT_FRAME_TIME c field_32975 + f I UNKNOWN_SIZE d field_32976 + f Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection; EMPTY e field_21768 + f Ljava/util/List; frames f field_5339 + f I frameWidth g field_5338 + f I frameHeight h field_5336 + f I defaultFrameTime i field_5334 + f Z interpolatedFrames j field_5335 + m ()I getDefaultFrameTime a method_4684 + m (II)Lnet/minecraft/client/resources/metadata/animation/FrameSize; calculateFrameSize a method_24143 + p 1 width + p 2 height + m (Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection$FrameOutput;)V forEachFrame a method_33460 + p 1 output + m ()Z isInterpolatedFrames b method_4685 + m (Ljava/util/List;IIIZ)V + p 1 frames + p 2 frameWidth + p 3 frameHeight + p 4 defaultFrameTime + p 5 interpolatedFrames + m ()V +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection$1 grw$1 net/minecraft/class_1079$1 + m (Ljava/util/List;IIIZ)V +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection$FrameOutput grw$a net/minecraft/class_1079$class_5792 +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSectionSerializer grx net/minecraft/class_1081 + m (ILcom/google/gson/JsonElement;)Lnet/minecraft/client/resources/metadata/animation/AnimationFrame; getFrame a method_4693 + p 1 frame + p 2 element + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection; fromJson b method_4692 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/animation/FrameSize gry net/minecraft/class_7771 + f I width a comp_1049 + f I height b comp_1050 + m ()I width a comp_1049 + m ()I height b comp_1050 + m (II)V +c net/minecraft/client/resources/metadata/animation/VillagerMetaDataSection grz net/minecraft/class_3888 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetadataSectionSerializer; SERIALIZER a field_17158 + f Ljava/lang/String; SECTION_NAME b field_32977 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; hat c field_17159 + m ()Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getHat a method_17167 + m (Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat;)V + p 1 hat + m ()V +c net/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat grz$a net/minecraft/class_3888$class_3889 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; NONE a field_17160 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; PARTIAL b field_17161 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; FULL c field_17162 + f Ljava/util/Map; BY_NAME d field_17163 + f Ljava/lang/String; name e field_17164 + f [Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; $VALUES f field_17165 + m ()Ljava/lang/String; getName a method_17168 + m (Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; method_17169 a method_17169 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getByName a method_17170 + p 0 name + m ()[Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; $values b method_36924 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/resources/metadata/animation/VillagerMetadataSectionSerializer gsa net/minecraft/class_3890 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection; fromJson b method_17171 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/animation/package-info gsb net/minecraft/class_6264 +c net/minecraft/client/resources/metadata/gui/GuiMetadataSection gsc net/minecraft/class_8689 + f Lnet/minecraft/client/resources/metadata/gui/GuiMetadataSection; DEFAULT a field_45645 + f Lcom/mojang/serialization/Codec; CODEC b field_45646 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE c field_45647 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; scaling d comp_1636 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; scaling a comp_1636 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52875 a method_52875 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling;)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling gsd net/minecraft/class_8690 + f Lcom/mojang/serialization/Codec; CODEC a field_45648 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; DEFAULT b field_45649 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; type a method_52876 + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice gsd$a net/minecraft/class_8690$class_8691 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45650 + f I width d comp_1637 + f I height e comp_1638 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; border f comp_1639 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52877 a method_52877 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Ljava/lang/String; method_53492 a method_53492 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Lcom/mojang/serialization/DataResult; validate a method_53493 + p 0 nineSlice + m ()I width b comp_1637 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Ljava/lang/String; method_53494 b method_53494 + m ()I height c comp_1638 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; border d comp_1639 + m (IILnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border gsd$a$a net/minecraft/class_8690$class_8691$class_8692 + f I left a comp_1640 + f I top b comp_1641 + f I right c comp_1642 + f I bottom d comp_1643 + f Lcom/mojang/serialization/Codec; VALUE_CODEC e field_45651 + f Lcom/mojang/serialization/Codec; RECORD_CODEC f field_45652 + f Lcom/mojang/serialization/Codec; CODEC g field_45653 + m ()I left a comp_1640 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52879 a method_52879 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)Lcom/mojang/datafixers/util/Either; method_52880 a method_52880 + m (Ljava/lang/Integer;)Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; method_52881 a method_52881 + m ()I top b comp_1641 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)Lcom/mojang/serialization/DataResult; method_52882 b method_52882 + m ()I right c comp_1642 + m ()I bottom d comp_1643 + m ()Ljava/util/OptionalInt; unpackValue e method_52883 + m ()Ljava/lang/String; method_52884 f method_52884 + m (IIII)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Stretch gsd$b net/minecraft/class_8690$class_8693 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45654 + m ()V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Tile gsd$c net/minecraft/class_8690$class_8694 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45655 + f I width d comp_1644 + f I height e comp_1645 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52885 a method_52885 + m ()I width b comp_1644 + m ()I height c comp_1645 + m (II)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type gsd$d net/minecraft/class_8690$class_8695 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; STRETCH a field_45656 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; TILE b field_45657 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; NINE_SLICE c field_45658 + f Lcom/mojang/serialization/Codec; CODEC d field_45659 + f Ljava/lang/String; key e field_45660 + f Lcom/mojang/serialization/MapCodec; codec f field_45661 + f [Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; $VALUES g field_45662 + m ()Lcom/mojang/serialization/MapCodec; codec a method_52886 + m ()[Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; $values b method_52887 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 key + p 4 codec + m ()V +c net/minecraft/client/resources/metadata/gui/package-info gse net/minecraft/class_8696 +c net/minecraft/client/resources/metadata/language/LanguageMetadataSection gsf net/minecraft/class_1082 + f Lcom/mojang/serialization/Codec; LANGUAGE_CODE_CODEC a field_41863 + f Lcom/mojang/serialization/Codec; CODEC b field_41864 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE c field_41865 + f Ljava/util/Map; languages d comp_1201 + m ()Ljava/util/Map; languages a comp_1201 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/client/resources/metadata/language/package-info gsg net/minecraft/class_6265 +c net/minecraft/client/resources/metadata/package-info gsh net/minecraft/class_6266 +c net/minecraft/client/resources/metadata/texture/TextureMetadataSection gsi net/minecraft/class_1084 + f Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSectionSerializer; SERIALIZER a field_5344 + f Z DEFAULT_BLUR b field_32980 + f Z DEFAULT_CLAMP c field_32981 + f Z blur d field_5346 + f Z clamp e field_5345 + m ()Z isBlur a method_4696 + m ()Z isClamp b method_4697 + m (ZZ)V + p 1 blur + p 2 clamp + m ()V +c net/minecraft/client/resources/metadata/texture/TextureMetadataSectionSerializer gsj net/minecraft/class_1085 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; fromJson b method_4698 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/texture/package-info gsk net/minecraft/class_6267 +c net/minecraft/client/resources/model/AtlasSet gsl net/minecraft/class_4724 + f Ljava/util/Map; atlases a field_21746 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlas; getAtlas a method_24098 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;ILjava/util/concurrent/Executor;)Ljava/util/Map; scheduleLoad a method_45862 + p 1 resourceManager + p 2 mipLevel + p 3 executor + m (Lnet/minecraft/server/packs/resources/ResourceManager;ILjava/util/concurrent/Executor;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_45863 a method_45863 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/Map$Entry;)Lnet/minecraft/client/resources/model/AtlasSet$AtlasEntry; method_45864 a method_45864 + m (Lnet/minecraft/client/resources/model/AtlasSet$AtlasEntry;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)Lnet/minecraft/client/resources/model/AtlasSet$StitchResult; method_45867 a method_45867 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 atlasMap + p 2 textureManager +c net/minecraft/client/resources/model/AtlasSet$AtlasEntry gsl$a net/minecraft/class_4724$class_7772 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a comp_1051 + f Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b comp_1168 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a comp_1051 + m ()Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b comp_1168 + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/resources/model/AtlasSet$StitchResult gsl$b net/minecraft/class_4724$class_7774 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a field_40564 + f Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; preparations b field_40565 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing a method_45868 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_45869 + p 1 location + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload b method_45870 + m ()V upload c method_45871 + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V + p 1 atlas + p 2 preperations +c net/minecraft/client/resources/model/BakedModel gsm net/minecraft/class_1087 + c

Interface {@link net.fabricmc.fabric.api.renderer.v1.model.FabricBakedModel} injected by mod fabric-renderer-api-v1

+ m ()Z useAmbientOcclusion a method_4708 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getQuads a method_4707 + p 1 state + p 2 direction + p 3 random + m ()Z isGui3d b method_4712 + m ()Z usesBlockLight c method_24304 + m ()Z isCustomRenderer d method_4713 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getParticleIcon e method_4711 + m ()Lnet/minecraft/client/renderer/block/model/ItemTransforms; getTransforms f method_4709 + m ()Lnet/minecraft/client/renderer/block/model/ItemOverrides; getOverrides g method_4710 +c net/minecraft/client/resources/model/BlockModelRotation gsn net/minecraft/class_1086 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y0 a field_5350 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y90 b field_5366 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y180 c field_5355 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y270 d field_5347 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y0 e field_5351 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y90 f field_5360 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y180 g field_5367 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y270 h field_5354 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y0 i field_5358 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y90 j field_5348 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y180 k field_5356 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y270 l field_5359 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y0 m field_5353 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y90 n field_5349 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y180 o field_5361 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y270 p field_5352 + f I DEGREES q field_32982 + f Ljava/util/Map; BY_INDEX r field_5357 + f Lcom/mojang/math/Transformation; transformation s field_23373 + f Lcom/mojang/math/OctahedralGroup; actualRotation t field_23374 + f I index u field_5364 + f [Lnet/minecraft/client/resources/model/BlockModelRotation; $VALUES v field_5365 + m ()Lcom/mojang/math/OctahedralGroup; actualRotation a method_35808 + m (II)Lnet/minecraft/client/resources/model/BlockModelRotation; by a method_4699 + p 0 x + p 1 y + m (Lnet/minecraft/client/resources/model/BlockModelRotation;)Lnet/minecraft/client/resources/model/BlockModelRotation; method_4700 a method_4700 + m (II)I getIndex b method_4703 + p 0 x + p 1 y + m (Lnet/minecraft/client/resources/model/BlockModelRotation;)Ljava/lang/Integer; method_4701 b method_4701 + m ()[Lnet/minecraft/client/resources/model/BlockModelRotation; $values d method_36925 + m (Ljava/lang/String;III)V + p 3 x + p 4 y + m ()V +c net/minecraft/client/resources/model/BlockStateModelLoader gso net/minecraft/class_9824 + f I SINGLETON_MODEL_GROUP a field_52259 + f Lnet/minecraft/resources/FileToIdConverter; BLOCKSTATE_LISTER b field_52260 + f Lorg/slf4j/Logger; LOGGER c field_52261 + f I INVISIBLE_MODEL_GROUP d field_52262 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER e field_52263 + f Lcom/google/common/base/Splitter; EQUAL_SPLITTER f field_52264 + f Lnet/minecraft/world/level/block/state/StateDefinition; ITEM_FRAME_FAKE_DEFINITION g field_52265 + f Ljava/util/Map; STATIC_DEFINITIONS h field_52266 + f Ljava/util/Map; blockStateResources i field_52267 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler j field_52268 + f Lnet/minecraft/client/color/block/BlockColors; blockColors k field_52269 + f Ljava/util/function/BiConsumer; discoveredModelOutput l field_52270 + f I nextModelGroup m field_52271 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups n field_52272 + f Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel; missingModel o field_52273 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context; context p field_52274 + m ()V loadAllBlockStates a method_61051 + m (ILnet/minecraft/world/level/block/state/BlockState;)V method_61052 a method_61052 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/StateDefinition;)V loadBlockStateDefinitions a method_61053 + p 1 blockStateId + p 2 stateDefenition + m (Lnet/minecraft/world/level/block/Block;Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;)Z method_61054 a method_61054 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/MultiVariant;Ljava/util/List;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61055 a method_61055 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/List;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61056 a method_61056 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/lang/String;)Ljava/util/function/Predicate; predicate a method_61057 + p 0 stateDefentition + p 1 properties + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/lang/Comparable; getValueHelper a method_61058 + p 0 property + p 1 propertyName + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel;Ljava/util/Map$Entry;)Z method_61059 a method_61059 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;)Ljava/util/Set; method_61060 a method_61060 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;Ljava/util/Set;)V method_61061 a method_61061 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_61062 a method_61062 + m (Ljava/lang/Iterable;)V registerModelGroup a method_61063 + p 1 models + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/util/Map;Ljava/util/List;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedJson;Ljava/lang/String;Lnet/minecraft/client/renderer/block/model/MultiVariant;)V method_61064 a method_61064 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)V method_61065 a method_61065 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)V method_61066 a method_61066 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/MultiVariant;Ljava/util/List;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;Lnet/minecraft/world/level/block/state/BlockState;)V method_61067 a method_61067 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)V method_61068 a method_61068 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getModelGroups b method_61069 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61070 b method_61070 + m (Ljava/util/Map;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/resources/model/UnbakedModel;Lnet/minecraft/client/color/block/BlockColors;Ljava/util/function/BiConsumer;)V + p 1 blockStateResources + p 2 profiler + p 3 missingModel + p 4 blockColors + p 5 discoveredModelOutput + m ()V +c net/minecraft/client/resources/model/BlockStateModelLoader$BlockStateDefinitionException gso$a net/minecraft/class_9824$class_1089 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/client/resources/model/BlockStateModelLoader$LoadedJson gso$b net/minecraft/class_9824$class_7777 + f Ljava/lang/String; source a comp_1056 + f Lcom/google/gson/JsonElement; data b comp_1057 + m ()Ljava/lang/String; source a comp_1056 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; parse a method_61071 + p 1 blockStateId + p 2 context + m ()Lcom/google/gson/JsonElement; data b comp_1057 + m (Ljava/lang/String;Lcom/google/gson/JsonElement;)V +c net/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel gso$c net/minecraft/class_9824$class_9825 + f Lnet/minecraft/client/resources/model/UnbakedModel; model a comp_2871 + f Ljava/util/function/Supplier; key b comp_2872 + m ()Lnet/minecraft/client/resources/model/UnbakedModel; model a comp_2871 + m ()Ljava/util/function/Supplier; key b comp_2872 + m (Lnet/minecraft/client/resources/model/UnbakedModel;Ljava/util/function/Supplier;)V +c net/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey gso$d net/minecraft/class_9824$class_4455 + f Ljava/util/List; models a comp_2873 + f Ljava/util/List; coloringValues b comp_2874 + m ()Ljava/util/List; models a comp_2873 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/Collection;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; create a method_21607 + p 0 state + p 1 model + p 2 properties + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/resources/model/UnbakedModel;Ljava/util/Collection;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; create a method_21608 + p 0 state + p 1 model + p 2 properties + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;)Ljava/util/List; getColoringValues a method_21609 + p 0 state + p 1 properties + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/Selector;)Z method_21610 a method_21610 + m ()Ljava/util/List; coloringValues b comp_2874 + m (Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/resources/model/BuiltInModel gsp net/minecraft/class_1090 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; itemTransforms a field_5404 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides b field_5405 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleTexture c field_16594 + f Z usesBlockLight d field_21862 + m (Lnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Z)V + p 1 itemTransforms + p 2 overrides + p 3 particleTexture + p 4 usesBlockLight +c net/minecraft/client/resources/model/Material gsq net/minecraft/class_4730 + f Ljava/util/Comparator; COMPARATOR a field_40566 + f Lnet/minecraft/resources/ResourceLocation; atlasLocation b field_21769 + f Lnet/minecraft/resources/ResourceLocation; texture c field_21770 + f Lnet/minecraft/client/renderer/RenderType; renderType d field_21771 + m ()Lnet/minecraft/resources/ResourceLocation; atlasLocation a method_24144 + m (Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/util/function/Function;)Lcom/mojang/blaze3d/vertex/VertexConsumer; buffer a method_24145 + p 1 buffer + p 2 renderTypeGetter + m (Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/util/function/Function;Z)Lcom/mojang/blaze3d/vertex/VertexConsumer; buffer a method_30001 + p 1 buffer + p 2 renderTypeGetter + p 3 withGlint + m (Ljava/util/function/Function;)Lnet/minecraft/client/renderer/RenderType; renderType a method_24146 + p 1 renderTypeGetter + m ()Lnet/minecraft/resources/ResourceLocation; texture b method_24147 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite c method_24148 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 atlasLocation + p 2 texture + m ()V +c net/minecraft/client/resources/model/ModelBaker gsr net/minecraft/class_7775 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/UnbakedModel; getModel a method_45872 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bake a method_45873 + p 1 location + p 2 transform +c net/minecraft/client/resources/model/ModelBakery gss net/minecraft/class_1088 + f Ljava/util/Set; loadingStack A field_5390 + f Ljava/util/Map; unbakedCache B field_5376 + f Ljava/util/Map; bakedCache C field_5398 + f Ljava/util/Map; topLevelModels D field_5394 + f Ljava/util/Map; bakedTopLevelModels E field_5387 + f Lnet/minecraft/client/resources/model/UnbakedModel; missingModel F field_52275 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups G field_20274 + f Lnet/minecraft/client/resources/model/Material; FIRE_0 a field_5397 + f Lnet/minecraft/client/resources/model/Material; FIRE_1 b field_5370 + f Lnet/minecraft/client/resources/model/Material; LAVA_FLOW c field_5381 + f Lnet/minecraft/client/resources/model/Material; WATER_FLOW d field_5391 + f Lnet/minecraft/client/resources/model/Material; WATER_OVERLAY e field_5388 + f Lnet/minecraft/client/resources/model/Material; BANNER_BASE f field_20847 + f Lnet/minecraft/client/resources/model/Material; SHIELD_BASE g field_21557 + f Lnet/minecraft/client/resources/model/Material; NO_PATTERN_SHIELD h field_21558 + f I DESTROY_STAGE_COUNT i field_32983 + f Ljava/util/List; DESTROY_STAGES j field_20848 + f Ljava/util/List; BREAKING_LOCATIONS k field_21020 + f Ljava/util/List; DESTROY_TYPES l field_21772 + f Lnet/minecraft/resources/ResourceLocation; MISSING_MODEL_LOCATION m field_5374 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; MISSING_MODEL_VARIANT n field_52276 + f Lnet/minecraft/resources/FileToIdConverter; MODEL_LISTER o field_40570 + f Ljava/lang/String; MISSING_MODEL_MESH p field_5371 + f Lnet/minecraft/client/renderer/block/model/BlockModel; GENERATION_MARKER q field_5400 + f Lnet/minecraft/client/renderer/block/model/BlockModel; BLOCK_ENTITY_MARKER r field_5389 + f Lorg/slf4j/Logger; LOGGER s field_5380 + f Ljava/lang/String; BUILTIN_SLASH t field_32986 + f Ljava/lang/String; BUILTIN_SLASH_GENERATED u field_32987 + f Ljava/lang/String; BUILTIN_BLOCK_ENTITY v field_32988 + f Ljava/lang/String; MISSING_MODEL_NAME w field_32989 + f Ljava/util/Map; BUILTIN_MODELS x field_5396 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator; ITEM_MODEL_GENERATOR y field_5384 + f Ljava/util/Map; modelResources z field_40567 + m ()Ljava/util/Map; getBakedTopLevelModels a method_4734 + m (I)Lnet/minecraft/resources/ResourceLocation; method_22820 a method_22820 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/UnbakedModel; getModel a method_4726 + p 1 modelLocation + m (Lnet/minecraft/client/renderer/block/model/BlockModel;)V method_4721 a method_4721 + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;)V bakeModels a method_45876 + p 1 textureGetter + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V method_61072 a method_61072 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;)V loadSpecialItemModelAndDependencies a method_61073 + p 1 modelLocation + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V registerModelAndLoadDependencies a method_61074 + p 1 modelLocation + p 2 model + m (Lnet/minecraft/client/resources/model/UnbakedModel;)V method_45875 a method_45875 + m (Ljava/lang/String;)Ljava/lang/String; method_60912 a method_60912 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getModelGroups b method_21605 + m (Lnet/minecraft/resources/ResourceLocation;)V loadItemModelAndDependencies b method_61075 + p 1 modelLocation + m (Lnet/minecraft/client/renderer/block/model/BlockModel;)V method_4719 b method_4719 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V registerModel b method_61076 + p 1 modelLocation + p 2 model + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/block/model/BlockModel; loadBlockModel c method_4718 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_23216 d method_23216 + m (Lnet/minecraft/client/color/block/BlockColors;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/Map;)V + p 1 blockColors + p 2 profilerFiller + p 3 modelResources + p 4 blockStateResources + m ()V +c net/minecraft/client/resources/model/ModelBakery$BakedCacheKey gss$a net/minecraft/class_1088$class_7776 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1053 + f Lcom/mojang/math/Transformation; transformation b comp_1054 + f Z isUvLocked c comp_1055 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1053 + m ()Lcom/mojang/math/Transformation; transformation b comp_1054 + m ()Z isUvLocked c comp_1055 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/math/Transformation;Z)V +c net/minecraft/client/resources/model/ModelBakery$ModelBakerImpl gss$b net/minecraft/class_1088$class_7778 + f Lnet/minecraft/client/resources/model/ModelBakery; field_40571 a field_40571 + f Ljava/util/function/Function; modelTextureGetter b field_40572 + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; method_45878 a method_45878 + m (Lnet/minecraft/client/resources/model/UnbakedModel;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bakeUncached a method_61077 + p 1 model + p 2 state + m (Lnet/minecraft/client/resources/model/ModelBakery;Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;)V + p 2 textureGetter + p 3 modelLocation +c net/minecraft/client/resources/model/ModelBakery$TextureGetter gss$c net/minecraft/class_1088$class_9826 +c net/minecraft/client/resources/model/ModelManager gst net/minecraft/class_1092 + c

Interface {@link net.fabricmc.fabric.api.client.model.loading.v1.FabricBakedModelManager} injected by mod fabric-model-loading-api-v1

+ f Lorg/slf4j/Logger; LOGGER a field_40573 + f Ljava/util/Map; VANILLA_ATLASES b field_40574 + f Ljava/util/Map; bakedRegistry c field_5408 + f Lnet/minecraft/client/resources/model/AtlasSet; atlases d field_21775 + f Lnet/minecraft/client/renderer/block/BlockModelShaper; blockModelShaper e field_5410 + f Lnet/minecraft/client/color/block/BlockColors; blockColors f field_20277 + f I maxMipmapLevels g field_21777 + f Lnet/minecraft/client/resources/model/BakedModel; missingModel h field_5407 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups i field_20278 + m ()Lnet/minecraft/client/resources/model/BakedModel; getMissingModel a method_4744 + m (I)V updateMaxMipLevel a method_24152 + p 1 level + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlas; getAtlas a method_24153 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45880 a method_45880 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadBlockModels a method_45881 + p 0 resourceManager + p 1 executor + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/resources/model/ModelManager$ReloadState;)V method_45882 a method_45882 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Lnet/minecraft/client/resources/model/ModelBakery;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; loadModels a method_45883 + p 1 profilerFiller + p 2 atlasPreparations + p 3 modelBakery + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/client/resources/model/ModelBakery; method_45884 a method_45884 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; method_45885 a method_45885 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z requiresRender a method_21611 + p 1 oldState + p 2 newState + m (Lnet/minecraft/client/resources/model/Material;)Ljava/lang/String; method_45886 a method_45886 + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;)Ljava/util/concurrent/CompletionStage; method_45887 a method_45887 + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18179 + p 1 reloadState + p 2 profiler + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;Ljava/lang/Void;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; method_45888 a method_45888 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;)Lnet/minecraft/client/resources/model/BakedModel; getModel a method_4742 + p 1 modelLocation + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Ljava/util/Collection;)V method_45879 a method_45879 + m (Ljava/util/List;)Ljava/util/Map; method_45889 a method_45889 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_45890 a method_45890 + m (Ljava/util/Map;Lcom/google/common/collect/Multimap;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; method_45891 a method_45891 + m (Ljava/util/Map;Lnet/minecraft/client/resources/model/BakedModel;Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;)V method_45892 a method_45892 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45893 a method_45893 + m ()Lnet/minecraft/client/renderer/block/BlockModelShaper; getBlockModelShaper b method_4743 + m (I)[Ljava/util/concurrent/CompletableFuture; method_45894 b method_45894 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45895 b method_45895 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadBlockStates b method_45896 + p 0 resourceManager + p 1 executor + m (Ljava/util/List;)Ljava/util/Map; method_45897 b method_45897 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_45898 b method_45898 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45899 b method_45899 + m (I)[Ljava/util/concurrent/CompletableFuture; method_45900 c method_45900 + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/resources/model/AtlasSet$StitchResult; method_45902 c method_45902 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/color/block/BlockColors;I)V + p 1 textureManager + p 2 blockColors + p 3 maxMipmapLevels + m ()V +c net/minecraft/client/resources/model/ModelManager$ReloadState gst$a net/minecraft/class_1092$class_7779 + f Lnet/minecraft/client/resources/model/ModelBakery; modelBakery a comp_1058 + f Lnet/minecraft/client/resources/model/BakedModel; missingModel b comp_1059 + f Ljava/util/Map; modelCache c comp_1060 + f Ljava/util/Map; atlasPreparations d comp_1061 + f Ljava/util/concurrent/CompletableFuture; readyForUpload e comp_1062 + m ()Lnet/minecraft/client/resources/model/ModelBakery; modelBakery a comp_1058 + m ()Lnet/minecraft/client/resources/model/BakedModel; missingModel b comp_1059 + m ()Ljava/util/Map; modelCache c comp_1060 + m ()Ljava/util/Map; atlasPreparations d comp_1061 + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload e comp_1062 + m (Lnet/minecraft/client/resources/model/ModelBakery;Lnet/minecraft/client/resources/model/BakedModel;Ljava/util/Map;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/resources/model/ModelResourceLocation gsu net/minecraft/class_1091 + f Ljava/lang/String; INVENTORY_VARIANT a field_52277 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2875 + f Ljava/lang/String; variant c comp_2876 + m ()Ljava/lang/String; getVariant a method_4740 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/ModelResourceLocation; inventory a method_61078 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; lowercaseVariant a method_45911 + p 0 variant + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/resources/model/ModelResourceLocation; vanilla a method_45910 + p 0 path + p 1 variant + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2875 + m ()Ljava/lang/String; variant c comp_2876 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 id + p 2 variant +c net/minecraft/client/resources/model/ModelState gsv net/minecraft/class_3665 + m ()Lcom/mojang/math/Transformation; getRotation b method_3509 + m ()Z isUvLocked c method_3512 +c net/minecraft/client/resources/model/MultiPartBakedModel gsw net/minecraft/class_1095 + f Z hasAmbientOcclusion a field_5430 + f Z isGui3d b field_5429 + f Z usesBlockLight c field_21863 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon d field_5425 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms e field_5426 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides f field_5428 + f Ljava/util/List; selectors g field_5427 + f Ljava/util/Map; selectorCache h field_5431 + m (Ljava/util/List;)V + p 1 selectors +c net/minecraft/client/resources/model/MultiPartBakedModel$Builder gsw$a net/minecraft/class_1095$class_1096 + f Ljava/util/List; selectors a field_5432 + m ()Lnet/minecraft/client/resources/model/BakedModel; build a method_4750 + m (Ljava/util/function/Predicate;Lnet/minecraft/client/resources/model/BakedModel;)V add a method_4749 + p 1 predicate + p 2 model + m ()V +c net/minecraft/client/resources/model/SimpleBakedModel gsx net/minecraft/class_1093 + f Ljava/util/List; unculledFaces a field_5411 + f Ljava/util/Map; culledFaces b field_5414 + f Z hasAmbientOcclusion c field_5415 + f Z isGui3d d field_5413 + f Z usesBlockLight e field_21864 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon f field_5416 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms g field_5417 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides h field_5412 + m (Ljava/util/List;Ljava/util/Map;ZZZLnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V + p 1 unculledFaces + p 2 culledFaces + p 3 hasAmbientOcclusion + p 4 usesBlockLight + p 5 isGui3d + p 6 particleIcon + p 7 transforms + p 8 overrides +c net/minecraft/client/resources/model/SimpleBakedModel$Builder gsx$a net/minecraft/class_1093$class_1094 + f Ljava/util/List; unculledFaces a field_5419 + f Ljava/util/Map; culledFaces b field_5422 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides c field_5423 + f Z hasAmbientOcclusion d field_5421 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon e field_5424 + f Z usesBlockLight f field_5420 + f Z isGui3d g field_21865 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms h field_5418 + m ()Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; item a method_35809 + m (Lnet/minecraft/client/renderer/block/model/BakedQuad;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; addUnculledFace a method_4748 + p 1 quad + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; particle a method_4747 + p 1 particleIcon + m (Lnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/block/model/BakedQuad;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; addCulledFace a method_4745 + p 1 facing + p 2 quad + m ()Lnet/minecraft/client/resources/model/BakedModel; build b method_4746 + m (Lnet/minecraft/client/renderer/block/model/BlockModel;Lnet/minecraft/client/renderer/block/model/ItemOverrides;Z)V + p 1 blockModel + p 2 overrides + p 3 isGui3d + m (ZZZLnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V + p 1 hasAmbientOcclusion + p 2 usesBlockLight + p 3 isGui3d + p 4 transforms + p 5 overrides +c net/minecraft/client/resources/model/UnbakedModel gsy net/minecraft/class_1100 + m (Lnet/minecraft/client/resources/model/ModelBaker;Ljava/util/function/Function;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bake a method_4753 + p 1 baker + p 2 spriteGetter + p 3 state + m (Ljava/util/function/Function;)V resolveParents a method_45785 + p 1 resolver + m ()Ljava/util/Collection; getDependencies f method_4755 +c net/minecraft/client/resources/model/WeightedBakedModel gsz net/minecraft/class_1097 + f I totalWeight a field_5433 + f Ljava/util/List; list b field_5434 + f Lnet/minecraft/client/resources/model/BakedModel; wrapped c field_5435 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)Ljava/util/List; method_33461 a method_33461 + m (Ljava/util/List;)V + p 1 list +c net/minecraft/client/resources/model/WeightedBakedModel$Builder gsz$a net/minecraft/class_1097$class_1098 + f Ljava/util/List; list a field_5436 + m ()Lnet/minecraft/client/resources/model/BakedModel; build a method_4751 + m (Lnet/minecraft/client/resources/model/BakedModel;I)Lnet/minecraft/client/resources/model/WeightedBakedModel$Builder; add a method_4752 + p 1 model + p 2 weight + m ()V +c net/minecraft/client/resources/model/package-info gta net/minecraft/class_6268 +c net/minecraft/client/resources/package-info gtb net/minecraft/class_6269 +c net/minecraft/client/resources/server/DownloadedPackSource gtc net/minecraft/class_1066 + f Lnet/minecraft/network/chat/Component; SERVER_NAME a field_40562 + f Ljava/util/regex/Pattern; SHA1 b field_5296 + f Lorg/slf4j/Logger; LOGGER c field_5298 + f Lnet/minecraft/server/packs/repository/RepositorySource; EMPTY_SOURCE d field_47593 + f Lnet/minecraft/server/packs/PackSelectionConfig; DOWNLOADED_PACK_SELECTION e field_49134 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; LOG_ONLY_FEEDBACK f field_47594 + f Lnet/minecraft/client/Minecraft; minecraft g field_47595 + f Lnet/minecraft/server/packs/repository/RepositorySource; packSource h field_47596 + f Lnet/minecraft/client/resources/server/PackReloadConfig$Callbacks; pendingReload i field_47597 + f Lnet/minecraft/client/resources/server/ServerPackManager; manager j field_47598 + f Lnet/minecraft/server/packs/DownloadQueue; downloadQueue k field_47599 + f Lnet/minecraft/server/packs/repository/PackSource; packType l field_47600 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; packFeedback m field_47601 + f I packIdSerialNumber n field_47690 + m ()Lnet/minecraft/server/packs/repository/RepositorySource; createRepositorySource a method_55514 + m (I)Lnet/minecraft/util/HttpUtil$DownloadProgressListener; createDownloadNotifier a method_55515 + p 1 packCount + m (Lnet/minecraft/server/packs/DownloadQueue;Ljava/util/concurrent/Executor;Lnet/minecraft/client/User;Ljava/net/Proxy;)Lnet/minecraft/client/resources/server/PackDownloader; createDownloader a method_55516 + p 1 downloadQueue + p 2 executor + p 3 user + p 4 proxy + m (Lnet/minecraft/client/resources/server/PackReloadConfig$Callbacks;)V startReload a method_55517 + p 1 callbacks + m (Ljava/lang/String;)Lcom/google/common/hash/HashCode; tryParseSha1Hash a method_55518 + p 0 hash + m (Ljava/util/List;)Ljava/util/List; loadRequestedPacks a method_55519 + p 1 packs + m (Ljava/util/UUID;)V popPack a method_55520 + p 1 uuid + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V pushPack a method_55523 + p 1 uuid + p 2 url + p 3 hash + m (Ljava/util/UUID;Ljava/nio/file/Path;)V pushLocalPack a method_55524 + p 1 uuid + p 2 path + m (Ljava/util/concurrent/Executor;)Ljava/lang/Runnable; createUpdateScheduler a method_55525 + p 1 executor + m (Ljava/util/function/Consumer;)V method_55526 a method_55526 + m (Lnet/minecraft/network/Connection;)Lnet/minecraft/client/resources/server/PackLoadFeedback; createPackResponseSender a method_55527 + p 0 connection + m (Lnet/minecraft/network/Connection;Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus;)V configureForServerControl a method_55528 + p 1 connection + p 2 packPromptStatus + m ()V onRecovery b method_55530 + m (Ljava/util/List;)Lnet/minecraft/server/packs/repository/RepositorySource; configureSource b method_55531 + p 0 packs + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; waitForPackFeedback b method_55532 + p 1 uuid + m (Ljava/util/function/Consumer;)V method_55534 b method_55534 + m ()V onRecoveryFailure c method_55535 + m ()V onReloadSuccess d method_55536 + m ()V popAll e method_55537 + m ()V configureForLocalWorld f method_55538 + m ()V allowServerPacks g method_55539 + m ()V rejectServerPacks h method_55540 + m ()V cleanupAfterDisconnect i method_55541 + m ()Lnet/minecraft/client/resources/server/PackReloadConfig; createReloadConfig j method_55542 + m (Lnet/minecraft/client/Minecraft;Ljava/nio/file/Path;Lnet/minecraft/client/main/GameConfig$UserData;)V + p 1 minecraft + p 2 directory + p 3 userData + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$1 gtc$1 net/minecraft/class_1066$1 + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$2 gtc$2 net/minecraft/class_1066$2 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47691 a field_47691 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;)V +c net/minecraft/client/resources/server/DownloadedPackSource$3 gtc$3 net/minecraft/class_1066$3 + f I val$totalCount a field_47602 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47603 b field_47603 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; toastId c field_47604 + f Lnet/minecraft/network/chat/Component; title d field_47605 + f Lnet/minecraft/network/chat/Component; message e field_47606 + f I count f field_47607 + f I failCount g field_47692 + f Ljava/util/OptionalLong; totalBytes h field_47608 + m ()V updateToast b method_55544 + m (J)V updateProgress b method_55543 + p 1 progress + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;I)V +c net/minecraft/client/resources/server/DownloadedPackSource$4 gtc$4 net/minecraft/class_1066$4 + f Lnet/minecraft/client/User; val$user a field_47609 + f Lnet/minecraft/server/packs/DownloadQueue; val$downloadQueue b field_47610 + f Ljava/net/Proxy; val$proxy c field_47611 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor d field_47612 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47613 e field_47613 + f I MAX_PACK_SIZE_BYTES f field_47614 + f Lcom/google/common/hash/HashFunction; CACHE_HASHING_FUNCTION g field_47615 + m ()Ljava/util/Map; createDownloadHeaders a method_55545 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/client/User;Lnet/minecraft/server/packs/DownloadQueue;Ljava/net/Proxy;Ljava/util/concurrent/Executor;)V + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$5 gtc$5 net/minecraft/class_1066$5 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor a field_47616 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47617 b field_47617 + f Z scheduledInMainExecutor c field_47618 + f Z hasUpdates d field_47619 + m ()V runAllUpdates a method_55547 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Ljava/util/concurrent/Executor;)V +c net/minecraft/client/resources/server/DownloadedPackSource$6 gtc$6 net/minecraft/class_1066$6 + f Lnet/minecraft/network/Connection; val$connection a field_47693 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/client/resources/server/DownloadedPackSource$7 gtc$7 net/minecraft/class_1066$7 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; val$original a field_47694 + f Ljava/util/UUID; val$packId b field_47695 + f Ljava/util/concurrent/CompletableFuture; val$result c field_47696 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47697 d field_47697 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/client/resources/server/PackLoadFeedback;Ljava/util/UUID;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/resources/server/DownloadedPackSource$8 gtc$8 net/minecraft/class_1066$8 + f [I $SwitchMap$net$minecraft$client$resources$server$PackLoadFeedback$Update a field_47698 + f [I $SwitchMap$net$minecraft$client$resources$server$PackLoadFeedback$FinalResult b field_47621 + f [I $SwitchMap$net$minecraft$client$resources$server$ServerPackManager$PackPromptStatus c field_47620 + m ()V +c net/minecraft/client/resources/server/PackDownloader gtd net/minecraft/class_9038 + m (Ljava/util/Map;Ljava/util/function/Consumer;)V download a method_55546 + p 1 packs + p 2 resultConsumer +c net/minecraft/client/resources/server/PackLoadFeedback gte net/minecraft/class_9039 + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult;)V reportFinalResult a method_55619 + p 1 id + p 2 result + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/PackLoadFeedback$Update;)V reportUpdate a method_55620 + p 1 id + p 2 update +c net/minecraft/client/resources/server/PackLoadFeedback$FinalResult gte$a net/minecraft/class_9039$class_9040 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DECLINED a field_47623 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; APPLIED b field_47624 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DISCARDED c field_47625 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DOWNLOAD_FAILED d field_47626 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; ACTIVATION_FAILED e field_47627 + f [Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; $VALUES f field_47628 + m ()[Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; $values a method_55548 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/PackLoadFeedback$Update gte$b net/minecraft/class_9039$class_9060 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; ACCEPTED a field_47699 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; DOWNLOADED b field_47700 + f [Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; $VALUES c field_47701 + m ()[Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; $values a method_55621 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/PackReloadConfig gtf net/minecraft/class_9041 +c net/minecraft/client/resources/server/PackReloadConfig$Callbacks gtf$a net/minecraft/class_9041$class_9042 + m ()V onSuccess a method_55549 + m (Z)V onFailure a method_55550 + p 1 recoveryFailure + m ()Ljava/util/List; packsToLoad b method_55551 +c net/minecraft/client/resources/server/PackReloadConfig$IdAndPath gtf$b net/minecraft/class_9041$class_9043 + f Ljava/util/UUID; id a comp_2154 + f Ljava/nio/file/Path; path b comp_2155 + m ()Ljava/util/UUID; id a comp_2154 + m ()Ljava/nio/file/Path; path b comp_2155 + m (Ljava/util/UUID;Ljava/nio/file/Path;)V +c net/minecraft/client/resources/server/ServerPackManager gtg net/minecraft/class_9044 + f Lnet/minecraft/client/resources/server/PackDownloader; downloader a field_47629 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; packLoadFeedback b field_47630 + f Lnet/minecraft/client/resources/server/PackReloadConfig; reloadConfig c field_47631 + f Ljava/lang/Runnable; updateRequest d field_47632 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; packPromptStatus e field_47633 + f Ljava/util/List; packs f field_47634 + m ()V popAll a method_55552 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)V acceptPack a method_55553 + p 1 packData + m (Ljava/util/Collection;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;)V onDownload a method_55554 + p 1 packs + p 2 batchResult + m (Ljava/util/List;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;)V method_55555 a method_55555 + m (Ljava/util/UUID;)V popPack a method_55556 + p 1 id + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)V pushNewPack a method_55557 + p 1 id + p 2 packData + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V pushPack a method_55558 + p 1 id + p 2 url + p 3 hash + m (Ljava/util/UUID;Ljava/nio/file/Path;)V pushLocalPack a method_55559 + p 1 id + p 2 path + m ()V allowServerPacks b method_55560 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)Z method_55561 b method_55561 + m (Ljava/util/UUID;)V markExistingPacksAsRemoved b method_55562 + p 1 id + m ()V rejectServerPacks c method_55563 + m (Ljava/util/UUID;)Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData; findPackInfo c method_55564 + p 1 id + m ()V resetPromptStatus d method_55565 + m ()V tick e method_55566 + m ()V registerForUpdate f method_55567 + m ()V cleanupRemovedPacks g method_55568 + m ()Z updateDownloads h method_55569 + m ()V triggerReloadIfNeeded i method_55570 + m (Lnet/minecraft/client/resources/server/PackDownloader;Lnet/minecraft/client/resources/server/PackLoadFeedback;Lnet/minecraft/client/resources/server/PackReloadConfig;Ljava/lang/Runnable;Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus;)V + p 1 downloader + p 2 packLoadFeedback + p 3 reloadConfig + p 4 updateRequest + p 5 packPromptStatus +c net/minecraft/client/resources/server/ServerPackManager$1 gtg$1 net/minecraft/class_9044$1 + f Ljava/util/List; val$packsToLoad a field_47635 + f Ljava/util/List; val$packsToUnload b field_47636 + f Lnet/minecraft/client/resources/server/ServerPackManager; field_47637 c field_47637 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)Lnet/minecraft/client/resources/server/PackReloadConfig$IdAndPath; method_55571 a method_55571 + m (Lnet/minecraft/client/resources/server/ServerPackManager;Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/resources/server/ServerPackManager$ActivationStatus gtg$a net/minecraft/class_9044$class_9045 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; INACTIVE a field_47639 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; PENDING b field_47640 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; ACTIVE c field_47641 + f [Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; $VALUES d field_47642 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; $values a method_55572 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus gtg$b net/minecraft/class_9044$class_9046 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; REQUESTED a field_47643 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; PENDING b field_47644 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; DONE c field_47645 + f [Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; $VALUES d field_47646 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; $values a method_55573 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$PackPromptStatus gtg$c net/minecraft/class_9044$class_9047 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; PENDING a field_47647 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; ALLOWED b field_47648 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; DECLINED c field_47649 + f [Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; $VALUES d field_47650 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; $values a method_55574 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$RemovalReason gtg$d net/minecraft/class_9044$class_9048 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DOWNLOAD_FAILED a field_47651 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; ACTIVATION_FAILED b field_47652 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DECLINED c field_47653 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DISCARDED d field_47654 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; SERVER_REMOVED e field_47655 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; SERVER_REPLACED f field_47656 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; serverResponse g field_47657 + f [Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; $VALUES h field_47658 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; $values a method_55575 + m (Ljava/lang/String;ILnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult;)V + p 3 serverResponse + m ()V +c net/minecraft/client/resources/server/ServerPackManager$ServerPackData gtg$e net/minecraft/class_9044$class_9049 + f Ljava/util/UUID; id a field_47659 + f Ljava/net/URL; url b field_47660 + f Lcom/google/common/hash/HashCode; hash c field_47661 + f Ljava/nio/file/Path; path d field_47662 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; removalReason e field_47663 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; downloadStatus f field_47664 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; activationStatus g field_47665 + f Z promptAccepted h field_47666 + m ()Z isRemoved a method_55576 + m (Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason;)V setRemovalReasonIfNotSet a method_55577 + p 1 removalReason + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V + p 1 id + p 2 url + p 3 hash +c net/minecraft/client/resources/server/package-info gth net/minecraft/class_9050 +c net/minecraft/client/resources/sounds/AbstractSoundInstance gti net/minecraft/class_1102 + f Lnet/minecraft/client/resources/sounds/Sound; sound a field_5444 + f Lnet/minecraft/sounds/SoundSource; source b field_5447 + f Lnet/minecraft/resources/ResourceLocation; location c field_5448 + f F volume d field_5442 + f F pitch e field_5441 + f D x f field_5439 + f D y g field_5450 + f D z h field_5449 + f Z looping i field_5446 + f I delay j field_5451 + c The number of ticks between repeating the sound + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; attenuation k field_5440 + f Z relative l field_18936 + f Lnet/minecraft/util/RandomSource; random m field_38800 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V + p 1 soundEvent + p 2 source + p 3 random + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V + p 1 location + p 2 source + p 3 random +c net/minecraft/client/resources/sounds/AbstractTickableSoundInstance gtj net/minecraft/class_1101 + f Z stopped n field_5438 + m ()V stop n method_24876 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V +c net/minecraft/client/resources/sounds/AmbientSoundHandler gtk net/minecraft/class_1104 + m ()V tick a method_4756 +c net/minecraft/client/resources/sounds/BeeAggressiveSoundInstance gtl net/minecraft/class_4508 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 bee +c net/minecraft/client/resources/sounds/BeeFlyingSoundInstance gtm net/minecraft/class_4509 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 bee +c net/minecraft/client/resources/sounds/BeeSoundInstance gtn net/minecraft/class_4510 + f Lnet/minecraft/world/entity/animal/Bee; bee n field_20530 + f F VOLUME_MIN o field_32991 + f F VOLUME_MAX p field_32992 + f F PITCH_MIN q field_32993 + f Z hasSwitched r field_20531 + m ()Lnet/minecraft/client/resources/sounds/AbstractTickableSoundInstance; getAlternativeSoundInstance o method_22135 + m ()Z shouldSwitchSounds p method_22136 + m ()F getMinPitch u method_22137 + m ()F getMaxPitch v method_22138 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V + p 1 bee + p 2 soundEvent + p 3 source +c net/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler gto net/minecraft/class_4897 + f I LOOP_SOUND_CROSS_FADE_TIME a field_32994 + f F SKY_MOOD_RECOVERY_RATE b field_32995 + f Lnet/minecraft/client/player/LocalPlayer; player c field_22796 + f Lnet/minecraft/client/sounds/SoundManager; soundManager d field_22797 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager e field_22798 + f Lnet/minecraft/util/RandomSource; random f field_22799 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; loopSounds g field_22800 + f Ljava/util/Optional; moodSettings h field_22801 + f Ljava/util/Optional; additionsSettings i field_22802 + f F moodiness j field_23189 + f Lnet/minecraft/world/level/biome/Biome; previousBiome k field_22804 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)V method_26270 a method_26270 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)V method_26271 a method_26271 + m (Lnet/minecraft/world/level/biome/Biome;Lnet/minecraft/core/Holder;)V method_25460 a method_25460 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/biome/Biome;Lnet/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance;)Lnet/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance; method_25459 a method_25459 + m ()F getMoodiness b method_26272 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/sounds/SoundManager;Lnet/minecraft/world/level/biome/BiomeManager;)V + p 1 player + p 2 soundManager + p 3 biomeManager +c net/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance gto$a net/minecraft/class_4897$class_4898 + f I fadeDirection n field_22805 + f I fade o field_22806 + m ()V fadeOut o method_25464 + m ()V fadeIn p method_25465 + m (Lnet/minecraft/sounds/SoundEvent;)V + p 1 soundEvent +c net/minecraft/client/resources/sounds/BubbleColumnAmbientSoundHandler gtp net/minecraft/class_4277 + f Lnet/minecraft/client/player/LocalPlayer; player a field_19192 + f Z wasInBubbleColumn b field_19193 + f Z firstTick c field_19194 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_29714 a method_29714 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/ElytraOnPlayerSoundInstance gtq net/minecraft/class_1103 + f I DELAY n field_32996 + f Lnet/minecraft/client/player/LocalPlayer; player o field_5452 + f I time p field_5453 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/EntityBoundSoundInstance gtr net/minecraft/class_1106 + f Lnet/minecraft/world/entity/Entity; entity n field_5455 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/world/entity/Entity;J)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 entity + p 6 seed +c net/minecraft/client/resources/sounds/GuardianAttackSoundInstance gts net/minecraft/class_1105 + f F VOLUME_MIN n field_32997 + f F VOLUME_SCALE o field_32998 + f F PITCH_MIN p field_32999 + f F PITCH_SCALE q field_33000 + f Lnet/minecraft/world/entity/monster/Guardian; guardian r field_5454 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/client/resources/sounds/MinecartSoundInstance gtt net/minecraft/class_1108 + f F VOLUME_MIN n field_33001 + f F VOLUME_MAX o field_33002 + f F PITCH_MIN p field_33003 + f F PITCH_MAX q field_33004 + f F PITCH_DELTA r field_33005 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart; minecart s field_5458 + f F pitch t field_5459 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;)V + p 1 minecart +c net/minecraft/client/resources/sounds/RidingMinecartSoundInstance gtu net/minecraft/class_1107 + f F VOLUME_MIN n field_33006 + f F VOLUME_MAX o field_33007 + f Lnet/minecraft/world/entity/player/Player; player p field_5457 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart; minecart q field_5456 + f Z underwaterSound r field_27773 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/vehicle/AbstractMinecart;Z)V + p 1 player + p 2 minecart + p 3 underwaterSound +c net/minecraft/client/resources/sounds/SimpleSoundInstance gtv net/minecraft/class_1109 + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forMusic a method_4759 + p 0 sound + m (Lnet/minecraft/sounds/SoundEvent;F)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_4758 + p 0 sound + p 1 pitch + m (Lnet/minecraft/sounds/SoundEvent;FF)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_4757 + p 0 sound + p 1 pitch + p 2 volume + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/util/RandomSource;DDD)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forAmbientMood a method_25467 + p 0 soundEvent + p 1 random + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forJukeboxSong a method_4760 + p 0 sound + p 1 pos + m (Lnet/minecraft/core/Holder;F)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_47978 + p 0 soundHolder + p 1 pitch + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forAmbientAddition b method_25466 + p 0 sound + m (Lnet/minecraft/sounds/SoundEvent;FF)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forLocalAmbience b method_24877 + p 0 sound + p 1 volume + p 2 pitch + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 entity + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;DDD)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 x + p 8 y + p 10 z + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;ZILnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;DDD)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 looping + p 7 delay + p 8 attenuation + p 9 x + p 11 y + p 13 z + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;ZILnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;DDDZ)V + p 1 location + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 looping + p 7 delay + p 8 attenuation + p 9 x + p 11 y + p 13 z + p 15 relative +c net/minecraft/client/resources/sounds/SnifferSoundInstance gtw net/minecraft/class_8191 + f F VOLUME n field_42931 + f F PITCH o field_42932 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer; sniffer p field_42933 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)V + p 1 sniffer +c net/minecraft/client/resources/sounds/Sound gtx net/minecraft/class_1111 + f Lnet/minecraft/resources/FileToIdConverter; SOUND_LISTER a field_40575 + f Lnet/minecraft/resources/ResourceLocation; location b field_5469 + f Lnet/minecraft/util/valueproviders/SampledFloat; volume c field_5466 + f Lnet/minecraft/util/valueproviders/SampledFloat; pitch d field_5464 + f I weight e field_5468 + f Lnet/minecraft/client/resources/sounds/Sound$Type; type f field_5470 + f Z stream g field_5467 + f Z preload h field_5465 + f I attenuationDistance i field_5463 + m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_4767 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4765 + c Retrieves the sound associated with the element.\nThe sound is obtained using the provided random source.\n

\n@return The sound associated with the element + p 1 randomSource + c the random source used for sound selection + m ()Lnet/minecraft/resources/ResourceLocation; getPath b method_4766 + m ()Lnet/minecraft/util/valueproviders/SampledFloat; getVolume c method_4771 + m ()Lnet/minecraft/util/valueproviders/SampledFloat; getPitch d method_4772 + m ()Lnet/minecraft/client/resources/sounds/Sound$Type; getType f method_4768 + m ()Z shouldStream g method_4769 + m ()Z shouldPreload h method_4764 + m ()I getAttenuationDistance i method_4770 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/util/valueproviders/SampledFloat;Lnet/minecraft/util/valueproviders/SampledFloat;ILnet/minecraft/client/resources/sounds/Sound$Type;ZZI)V + p 1 location + p 2 volume + p 3 pitch + p 4 weight + p 5 type + p 6 stream + p 7 preload + p 8 attenuationDistance + m ()V +c net/minecraft/client/resources/sounds/Sound$Type gtx$a net/minecraft/class_1111$class_1112 + f Lnet/minecraft/client/resources/sounds/Sound$Type; FILE a field_5474 + f Lnet/minecraft/client/resources/sounds/Sound$Type; SOUND_EVENT b field_5473 + f Ljava/lang/String; name c field_5472 + f [Lnet/minecraft/client/resources/sounds/Sound$Type; $VALUES d field_5471 + m ()[Lnet/minecraft/client/resources/sounds/Sound$Type; $values a method_36926 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/sounds/Sound$Type; getByName a method_4773 + p 0 name + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/resources/sounds/SoundEventRegistration gty net/minecraft/class_1110 + f Ljava/util/List; sounds a field_5460 + f Z replace b field_5462 + c if true it will override all the sounds from the resourcepacks loaded before + f Ljava/lang/String; subtitle c field_5461 + m ()Ljava/util/List; getSounds a method_4761 + m ()Z isReplace b method_4763 + m ()Ljava/lang/String; getSubtitle c method_4762 + m (Ljava/util/List;ZLjava/lang/String;)V + p 1 sounds + p 2 replace + p 3 subtitle +c net/minecraft/client/resources/sounds/SoundEventRegistrationSerializer gtz net/minecraft/class_1115 + f Lnet/minecraft/util/valueproviders/FloatProvider; DEFAULT_FLOAT a field_38801 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/resources/sounds/SoundEventRegistration; deserialize a method_4791 + m (Lcom/google/gson/JsonObject;)Ljava/util/List; getSounds a method_4792 + p 1 object + m (Lcom/google/gson/JsonObject;Lnet/minecraft/client/resources/sounds/Sound$Type;)Lnet/minecraft/client/resources/sounds/Sound$Type; getType a method_4789 + p 1 object + p 2 defaultValue + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/sounds/Sound; getSound b method_4790 + p 1 object + m ()V + m ()V +c net/minecraft/client/resources/sounds/SoundInstance gua net/minecraft/class_1113 + c

Interface {@link net.fabricmc.fabric.api.client.sound.v1.FabricSoundInstance} injected by mod fabric-sound-api-v1

+ m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_4775 + m (Lnet/minecraft/client/sounds/SoundManager;)Lnet/minecraft/client/sounds/WeighedSoundEvents; resolve a method_4783 + p 1 manager + m ()Lnet/minecraft/client/resources/sounds/Sound; getSound b method_4776 + m ()Lnet/minecraft/sounds/SoundSource; getSource c method_4774 + m ()Z isLooping d method_4786 + m ()I getDelay e method_4780 + m ()F getVolume f method_4781 + m ()F getPitch g method_4782 + m ()D getX h method_4784 + m ()D getY i method_4779 + m ()D getZ j method_4778 + m ()Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; getAttenuation k method_4777 + m ()Z isRelative l method_4787 + c True if the sound is not tied to a particular position in world (e.g. BGM) + m ()Z canStartSilent r method_4785 + m ()Z canPlaySound s method_26273 + m ()Lnet/minecraft/util/RandomSource; createUnseededRandom t method_43221 +c net/minecraft/client/resources/sounds/SoundInstance$Attenuation gua$a net/minecraft/class_1113$class_1114 + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; NONE a field_5478 + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; LINEAR b field_5476 + f [Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; $VALUES c field_5477 + m ()[Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; $values a method_36927 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/sounds/TickableSoundInstance gub net/minecraft/class_1117 + m ()Z isStopped m method_4793 + m ()V tick q method_16896 +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundHandler guc net/minecraft/class_1116 + f F CHANCE_PER_TICK a field_33008 + f F RARE_CHANCE_PER_TICK b field_33009 + f F ULTRA_RARE_CHANCE_PER_TICK c field_33010 + f I MINIMUM_TICK_DELAY d field_33011 + f Lnet/minecraft/client/player/LocalPlayer; player e field_5481 + f Lnet/minecraft/client/sounds/SoundManager; soundManager f field_5479 + f I tickDelay g field_5480 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/sounds/SoundManager;)V + p 1 player + p 2 soundManager +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances gud net/minecraft/class_1118 + m ()V +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances$SubSound gud$a net/minecraft/class_1118$class_1119 + f Lnet/minecraft/client/player/LocalPlayer; player n field_5482 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/sounds/SoundEvent;)V + p 1 player + p 2 soundEvent +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances$UnderwaterAmbientSoundInstance gud$b net/minecraft/class_1118$class_1120 + f I FADE_DURATION n field_33012 + f Lnet/minecraft/client/player/LocalPlayer; player o field_5483 + f I fade p field_5484 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/package-info gue net/minecraft/class_6270 +c net/minecraft/client/searchtree/FullTextSearchTree guf net/minecraft/class_1126 + f Lnet/minecraft/client/searchtree/SearchTree; plainTextSearchTree c field_39198 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/List;)V + p 1 filter + p 2 idGetter + p 3 contents +c net/minecraft/client/searchtree/IdSearchTree gug net/minecraft/class_1121 + f Ljava/util/Comparator; additionOrder a field_39199 + f Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; resourceLocationSearchTree b field_39200 + m (Ljava/lang/String;)Ljava/util/List; searchPlainText a method_43791 + p 1 query + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; searchResourceLocation a method_43792 + p 1 namespace + p 2 path + m (Ljava/util/function/Function;Ljava/util/List;)V + p 1 idGetter + p 2 contents +c net/minecraft/client/searchtree/IntersectionIterator guh net/minecraft/class_1122 + f Lcom/google/common/collect/PeekingIterator; firstIterator a field_5490 + f Lcom/google/common/collect/PeekingIterator; secondIterator b field_5491 + f Ljava/util/Comparator; comparator c field_5492 + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 1 firstIterator + p 2 secondIterator + p 3 comparator +c net/minecraft/client/searchtree/MergingUniqueIterator gui net/minecraft/class_1127 + f Lcom/google/common/collect/PeekingIterator; firstIterator a field_5499 + f Lcom/google/common/collect/PeekingIterator; secondIterator b field_5500 + f Ljava/util/Comparator; comparator c field_5501 + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 1 firstIterator + p 2 secondIterator + p 3 comparator +c net/minecraft/client/searchtree/ResourceLocationSearchTree guj net/minecraft/class_7455 + m ()Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; empty a method_43799 + m (Lnet/minecraft/client/searchtree/SuffixArray;Ljava/lang/Object;Lnet/minecraft/client/searchtree/SuffixArray;Lnet/minecraft/resources/ResourceLocation;)V method_43800 a method_43800 + m (Ljava/lang/String;)Ljava/util/List; searchNamespace a method_43801 + p 1 query + m (Ljava/util/List;Ljava/util/function/Function;)Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; create a method_43802 + p 0 contents + p 1 idGetter + m (Ljava/lang/String;)Ljava/util/List; searchPath b method_43803 + p 1 query +c net/minecraft/client/searchtree/ResourceLocationSearchTree$1 guj$1 net/minecraft/class_7455$1 + m ()V +c net/minecraft/client/searchtree/ResourceLocationSearchTree$2 guj$2 net/minecraft/class_7455$2 + f Lnet/minecraft/client/searchtree/SuffixArray; val$namespaceTree a field_39201 + f Lnet/minecraft/client/searchtree/SuffixArray; val$pathTree b field_39202 + m (Lnet/minecraft/client/searchtree/SuffixArray;Lnet/minecraft/client/searchtree/SuffixArray;)V +c net/minecraft/client/searchtree/SearchTree guk net/minecraft/class_1129 + m (Lnet/minecraft/client/searchtree/SuffixArray;Ljava/lang/Object;Ljava/lang/String;)V method_60376 a method_60376 + m (Ljava/lang/String;)Ljava/util/List; method_60377 a method_60377 + m (Ljava/lang/String;)Ljava/util/List; search search method_4810 + c Searches this search tree for the given text.\n

\nIf the query does not contain a {@code :}, then only {@link #byName} is searched. If it does contain a colon, both {@link #byName} and {@link #byId} are searched and the results are merged using a {@link MergingIterator}.\n@return A list of all matching items in this search tree. + p 1 query +c net/minecraft/client/searchtree/SuffixArray gul net/minecraft/class_1128 + f Ljava/util/List; list a field_5503 + f Z DEBUG_COMPARISONS b field_5508 + f Z DEBUG_ARRAY c field_5507 + f Lorg/slf4j/Logger; LOGGER d field_5510 + f I END_OF_TEXT_MARKER e field_33013 + f I END_OF_DATA f field_33014 + f Lit/unimi/dsi/fastutil/ints/IntList; chars g field_5505 + f Lit/unimi/dsi/fastutil/ints/IntList; wordStarts h field_5509 + f Lit/unimi/dsi/fastutil/ints/IntList; suffixToT i field_5504 + f Lit/unimi/dsi/fastutil/ints/IntList; offsets j field_5506 + f I maxStringLength k field_5502 + m ()V generate a method_4807 + m (I)Ljava/lang/String; getString a method_4808 + m (Ljava/lang/Object;Ljava/lang/String;)V add a method_4806 + p 1 object + p 2 contents + m (Ljava/lang/String;)Ljava/util/List; search a method_4804 + p 1 query + m (Ljava/lang/String;I)I compare a method_4805 + m ([I[III)I method_38937 a method_38937 + m ([I[I[III)V method_4803 a method_4803 + m ()V print b method_4809 + c Prints the entire array to the logger, on debug level + m ()V + m ()V +c net/minecraft/client/searchtree/package-info gum net/minecraft/class_6272 +c net/minecraft/client/server/IntegratedPlayerList gun net/minecraft/class_1130 + f Lnet/minecraft/nbt/CompoundTag; playerData h field_5514 + m ()Lnet/minecraft/client/server/IntegratedServer; getServer b method_4811 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;)V + p 1 server + p 2 registries + p 3 playerIo +c net/minecraft/client/server/IntegratedServer guo net/minecraft/class_1132 + f Lorg/slf4j/Logger; LOGGER k field_5520 + f I MIN_SIM_DISTANCE l field_34964 + f Lnet/minecraft/client/Minecraft; minecraft m field_5518 + f Z paused n field_5524 + f I publishedPort o field_5522 + f Lnet/minecraft/world/level/GameType; publishedGameType p field_28075 + f Lnet/minecraft/client/server/LanServerPinger; lanPinger q field_5519 + f Ljava/util/UUID; uuid r field_5521 + f I previousSimulationDistance s field_34965 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getTickTimeLogger a method_56881 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V method_48006 a method_48006 + m (Lnet/minecraft/world/level/ChunkPos;)V method_61079 a method_61079 + m (Ljava/util/Optional;)V method_48007 a method_48007 + m (Ljava/util/UUID;)V setUUID a method_4817 + p 1 uuid + m ()V tickPaused b method_36439 + m (Lnet/minecraft/world/level/ChunkPos;)V method_61080 b method_61080 + m ()V warnOnLowDiskSpace c method_57823 + m ()V method_61081 d method_61081 + m ()V method_4816 h method_4816 + m ()Ljava/lang/String; method_4815 s method_4815 + m (Ljava/lang/Thread;Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 minecraft + p 3 storageSource + p 4 packRepository + p 5 worldStem + p 6 services + p 7 progressListenerFactory + m ()V +c net/minecraft/client/server/LanServer gup net/minecraft/class_1131 + f Ljava/lang/String; motd a field_5515 + f Ljava/lang/String; address b field_5517 + f J pingTime c field_5516 + m ()Ljava/lang/String; getMotd a method_4813 + m ()Ljava/lang/String; getAddress b method_4812 + m ()V updatePingTime c method_4814 + c Updates the time this LanServer was last seen. + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 motd + p 2 address +c net/minecraft/client/server/LanServerDetection guq net/minecraft/class_1134 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID a field_5531 + f Lorg/slf4j/Logger; LOGGER b field_5532 + m ()V + m ()V +c net/minecraft/client/server/LanServerDetection$LanServerDetector guq$a net/minecraft/class_1134$class_1135 + f Lnet/minecraft/client/server/LanServerDetection$LanServerList; serverList a field_5533 + f Ljava/net/InetAddress; pingGroup b field_5534 + f Ljava/net/MulticastSocket; socket c field_5535 + m (Lnet/minecraft/client/server/LanServerDetection$LanServerList;)V + p 1 serverList +c net/minecraft/client/server/LanServerDetection$LanServerList guq$b net/minecraft/class_1134$class_1136 + f Ljava/util/List; servers a field_5536 + f Z isDirty b field_5537 + m ()Ljava/util/List; takeDirtyServers a method_45912 + m (Ljava/lang/String;Ljava/net/InetAddress;)V addServer a method_4824 + p 1 pingResponse + p 2 ipAddress + m ()V +c net/minecraft/client/server/LanServerPinger gur net/minecraft/class_1133 + f Ljava/lang/String; MULTICAST_GROUP a field_33016 + f I PING_PORT b field_33017 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID c field_5525 + f Lorg/slf4j/Logger; LOGGER d field_5529 + f J PING_INTERVAL e field_33018 + f Ljava/lang/String; motd f field_5526 + f Ljava/net/DatagramSocket; socket g field_5528 + f Z isRunning h field_5527 + f Ljava/lang/String; serverAddress i field_5530 + m (Ljava/lang/String;)Ljava/lang/String; parseMotd a method_4819 + p 0 pingResponse + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; createPingString a method_4818 + p 0 motdMessage + p 1 adMessage + m (Ljava/lang/String;)Ljava/lang/String; parseAddress b method_4820 + p 0 pingResponse + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 motd + p 2 serverAddress + m ()V +c net/minecraft/client/server/package-info gus net/minecraft/class_6273 +c net/minecraft/client/sounds/AudioStream gut net/minecraft/class_4234 + m ()Ljavax/sound/sampled/AudioFormat; getFormat a method_19719 + c {@return the {@linkplain AudioFormat} of the stream} + m (I)Ljava/nio/ByteBuffer; read a method_19720 + c Reads audio data from the stream and returns a byte buffer containing at most the specified number of bytes.\nThe method reads audio frames from the stream and adds them to the output buffer until the buffer contains at least the specified number of bytes or the end fo the stream is reached.\n@return a byte buffer containing at most the specified number of bytes to read\n@throws IOException if an I/O error occurs while reading the audio data + p 1 size + c the maximum number of bytes to read +c net/minecraft/client/sounds/ChannelAccess guu net/minecraft/class_4235 + c The ChannelAccess class provides access to channels for playing audio data using a given library and executor. + f Ljava/util/Set; channels a field_18937 + f Lcom/mojang/blaze3d/audio/Library; library b field_18938 + f Ljava/util/concurrent/Executor; executor c field_18939 + m ()V scheduleTick a method_19722 + m (Lcom/mojang/blaze3d/audio/Library$Pool;)Ljava/util/concurrent/CompletableFuture; createHandle a method_19723 + c Creates a new channel handle for the specified system mode and returns a CompletableFuture that completes with the handle when it is created.\n

\n@return a CompletableFuture that completes with the channel handle when it is created, or null if it cannot be created + p 1 systemMode + c systemMode the system mode to create the channel handle for + m (Lcom/mojang/blaze3d/audio/Library$Pool;Ljava/util/concurrent/CompletableFuture;)V method_19724 a method_19724 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)Lcom/mojang/blaze3d/audio/Channel; method_19725 a method_19725 + m (Ljava/util/function/Consumer;)V executeOnChannels a method_19727 + p 1 sourceStreamConsumer + c the consumer to execute on the stream of channels + m ()V clear b method_19728 + m (Ljava/util/function/Consumer;)V method_19730 b method_19730 + m ()V method_19731 c method_19731 + m (Lcom/mojang/blaze3d/audio/Library;Ljava/util/concurrent/Executor;)V + p 1 library + p 2 executor +c net/minecraft/client/sounds/ChannelAccess$ChannelHandle guu$a net/minecraft/class_4235$class_4236 + c Represents a handle to a channel. + f Lnet/minecraft/client/sounds/ChannelAccess; field_18940 a field_18940 + f Lcom/mojang/blaze3d/audio/Channel; channel b field_18941 + f Z stopped c field_18942 + m ()Z isStopped a method_19732 + c {@return {@code true} if the channel has been stopped, {@code false} otherwise} + m (Ljava/util/function/Consumer;)V execute a method_19735 + p 1 soundConsumer + m ()V release b method_19736 + m (Ljava/util/function/Consumer;)V method_19737 b method_19737 + m (Lnet/minecraft/client/sounds/ChannelAccess;Lcom/mojang/blaze3d/audio/Channel;)V + p 2 channel +c net/minecraft/client/sounds/ChunkedSampleByteBuf guv net/minecraft/class_4229 + f Ljava/util/List; buffers a field_18911 + f I bufferSize b field_18912 + f I byteCount c field_18913 + f Ljava/nio/ByteBuffer; currentBuffer d field_18914 + m ()Ljava/nio/ByteBuffer; get a method_19679 + m ()I size b method_59756 + m (I)V + p 1 bufferSize +c net/minecraft/client/sounds/FiniteAudioStream guw net/minecraft/class_9672 + m ()Ljava/nio/ByteBuffer; readAll b method_59757 +c net/minecraft/client/sounds/FloatSampleSource gux net/minecraft/class_9673 + f I EXPECTED_MAX_FRAME_SIZE a field_51441 + m (Lit/unimi/dsi/fastutil/floats/FloatConsumer;)Z readChunk a method_59758 + p 1 output +c net/minecraft/client/sounds/JOrbisAudioStream guy net/minecraft/class_4228 + f I BUFSIZE b field_51442 + f I PAGEOUT_RECAPTURE c field_51443 + f I PAGEOUT_NEED_MORE_DATA d field_51444 + f I PAGEOUT_OK e field_51445 + f I PACKETOUT_ERROR f field_51446 + f I PACKETOUT_NEED_MORE_DATA g field_51447 + f I PACKETOUT_OK h field_51448 + f Lcom/jcraft/jogg/SyncState; syncState i field_51449 + f Lcom/jcraft/jogg/Page; page j field_51450 + f Lcom/jcraft/jogg/StreamState; streamState k field_51451 + f Lcom/jcraft/jogg/Packet; packet l field_51452 + f Lcom/jcraft/jorbis/Info; info m field_51453 + f Lcom/jcraft/jorbis/DspState; dspState n field_51454 + f Lcom/jcraft/jorbis/Block; block o field_51455 + f Ljavax/sound/sampled/AudioFormat; audioFormat p field_18908 + f Ljava/io/InputStream; input q field_18909 + f J samplesWritten r field_51456 + f J totalSamplesInStream s field_51457 + m (Lcom/jcraft/jogg/Page;)Lcom/jcraft/jogg/Packet; readIdentificationPacket a method_59759 + p 1 page + m ([FIJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyMono a method_59760 + p 0 source + p 1 startIndex + p 2 samplesToWrite + p 4 output + m ([FI[FIJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyStereo a method_59761 + p 0 leftSource + p 1 leftStartIndex + p 2 rightSource + p 3 rightStartIndex + p 4 samplesToWrite + p 6 output + m ([[FI[IJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyAnyChannels a method_59762 + p 0 source + p 1 channels + p 2 startIndexes + p 3 samplesToWrite + p 5 output + m (I)Z isError b method_59763 + p 0 value + m ()Z readToBuffer c method_59764 + m (I)J getSamplesToWrite c method_59765 + p 1 samples + m ()Lcom/jcraft/jogg/Page; readPage d method_59766 + m ()Lcom/jcraft/jogg/Packet; readPacket e method_59767 + m (Ljava/io/InputStream;)V + p 1 input +c net/minecraft/client/sounds/LoopingAudioStream guz net/minecraft/class_4856 + c The LoopingAudioStream class provides an AudioStream that loops indefinitely over the provided InputStream. + f Lnet/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider; provider a field_22443 + f Lnet/minecraft/client/sounds/AudioStream; stream b field_22444 + f Ljava/io/BufferedInputStream; bufferedInputStream c field_22445 + m (Lnet/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider;Ljava/io/InputStream;)V + p 1 provider + p 2 inputStream +c net/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider guz$a net/minecraft/class_4856$class_4857 + c A functional interface for providing an {@linkplain AudioStream} from an {@linkplain InputStream}. +c net/minecraft/client/sounds/LoopingAudioStream$NoCloseBuffer guz$b net/minecraft/class_4856$class_4858 + c A {@linkplain FilterInputStream} that does not close the underlying {@linkplain InputStream}. + m (Ljava/io/InputStream;)V + p 1 inputStream +c net/minecraft/client/sounds/MusicManager gva net/minecraft/class_1142 + c The MusicManager class manages the playing of music in Minecraft. + f I STARTING_DELAY a field_33019 + c The delay before starting to play the next song. + f Lnet/minecraft/util/RandomSource; random b field_5571 + f Lnet/minecraft/client/Minecraft; minecraft c field_5575 + f Lnet/minecraft/client/resources/sounds/SoundInstance; currentMusic d field_5574 + f I nextSongDelay e field_5572 + c The delay until the next song starts. + m ()V tick a method_18669 + c Called every tick to manage the playing of music. + m (Lnet/minecraft/sounds/Music;)V startPlaying a method_4858 + c Starts playing the specified {@linkplain Music} selector. + p 1 selector + c the {@linkplain Music} selector to play + m ()V stopPlaying b method_4859 + c Stops playing the current {@linkplain Music} selector. + m (Lnet/minecraft/sounds/Music;)V stopPlaying b method_50025 + c Stops playing the specified {@linkplain Music} selector. + p 1 music + c the {@linkplain Music} selector to stop playing + m (Lnet/minecraft/sounds/Music;)Z isPlayingMusic c method_4860 + c {@return {@code true} if the {@linkplain Music} selector is currently playing, {@code false} otherwise} + p 1 selector + c the {@linkplain Music} selector to check for + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/sounds/SoundBufferLibrary gvb net/minecraft/class_4237 + c The {@linkplain SoundBufferLibrary} class provides a cache containing instances of {@linkplain SoundBuffer} and {@linkplain AudioStream} for use in Minecraft sound handling. + f Lnet/minecraft/server/packs/resources/ResourceProvider; resourceManager a field_18943 + c The {@linkplain ResourceProvider} used for loading sound resources. + f Ljava/util/Map; cache b field_18944 + m ()V clear a method_19738 + c Clears the cache of all {@linkplain SoundBuffer} instances. + m (I)[Ljava/util/concurrent/CompletableFuture; method_19739 a method_19739 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/concurrent/CompletableFuture; getCompleteBuffer a method_19743 + c {@return Returns a {@linkplain CompletableFuture} containing the complete {@linkplain SoundBuffer}. The {@linkplain SoundBuffer} is loaded asynchronously and cached.} + p 1 soundID + c the {@linkplain ResourceLocation} of the sound + m (Lnet/minecraft/resources/ResourceLocation;Z)Ljava/util/concurrent/CompletableFuture; getStream a method_19744 + c {@return Returns a {@linkplain CompletableFuture} containing the {@linkplain AudioStream}. The {@linkplain AudioStream} is loaded asynchronously.} + p 1 resourceLocation + c the {@linkplain ResourceLocation} of the sound + p 2 isWrapper + c whether the {@linkplain AudioStream} should be a {@linkplain LoopingAudioStream} + m (Lnet/minecraft/client/resources/sounds/Sound;)Ljava/util/concurrent/CompletableFuture; method_19740 a method_19740 + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; preload a method_19741 + c Preloads the {@linkplain SoundBuffer} objects for the specified collection of sounds.\n

\n@return a {@linkplain CompletableFuture} representing the completion of the preload operation + p 1 sounds + c the collection of sounds to preload + m (Ljava/util/concurrent/CompletableFuture;)V method_19742 a method_19742 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/concurrent/CompletableFuture; method_19746 b method_19746 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/sounds/AudioStream; method_19745 b method_19745 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/blaze3d/audio/SoundBuffer; method_19747 c method_19747 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V + p 1 resourceManager +c net/minecraft/client/sounds/SoundEngine gvc net/minecraft/class_1140 + c The {@code SoundEngine} class handles the management and playback of sounds in the game. + f Ljava/util/Map; queuedSounds A field_5566 + c Contains sounds to play in n ticks. Type: HashMap + f Ljava/util/Map; soundDeleteTime B field_18952 + c The future time in which to stop this sound. Type: HashMap + f Ljava/util/List; listeners C field_5558 + f Ljava/util/List; queuedTickableSounds D field_20532 + f Ljava/util/List; preloadQueue E field_5551 + f Ljava/lang/String; MISSING_SOUND a field_33020 + f Ljava/lang/String; OPEN_AL_SOFT_PREFIX b field_34827 + f I OPEN_AL_SOFT_PREFIX_LENGTH c field_34828 + f Lorg/slf4j/Marker; MARKER d field_5553 + c The marker used for logging + f Lorg/slf4j/Logger; LOGGER e field_5559 + f F PITCH_MIN f field_33021 + f F PITCH_MAX g field_33022 + f F VOLUME_MIN h field_33023 + f F VOLUME_MAX i field_33024 + f I MIN_SOURCE_LIFETIME j field_33025 + f Ljava/util/Set; ONLY_WARN_ONCE k field_5561 + c A set of resource locations for which a missing sound warning has been issued + f J DEFAULT_DEVICE_CHECK_INTERVAL_MS l field_34966 + c The default interval in milliseconds for checking the audio device state + f Lnet/minecraft/client/sounds/SoundManager; soundManager m field_5552 + c A reference to the sound handler. + f Lnet/minecraft/client/Options; options n field_5555 + c Reference to the GameSettings object. + f Z loaded o field_5563 + c Set to true when the SoundManager has been initialised. + f Lcom/mojang/blaze3d/audio/Library; library p field_18945 + f Lcom/mojang/blaze3d/audio/Listener; listener q field_18946 + c The listener object responsible for managing the sound listener position and orientation + f Lnet/minecraft/client/sounds/SoundBufferLibrary; soundBuffers r field_18947 + f Lnet/minecraft/client/sounds/SoundEngineExecutor; executor s field_18948 + f Lnet/minecraft/client/sounds/ChannelAccess; channelAccess t field_18949 + f I tickCount u field_5550 + c A counter for how long the sound manager has been running + f J lastDeviceCheckTime v field_34967 + f Ljava/util/concurrent/atomic/AtomicReference; devicePoolState w field_35083 + c The current state of the audio device check + f Ljava/util/Map; instanceToChannel x field_18950 + f Lcom/google/common/collect/Multimap; instanceBySource y field_18951 + f Ljava/util/List; tickingSounds z field_5557 + c A subset of playingSounds, this contains only {@linkplain TickableSoundInstance} + m ()V reload a method_4837 + c Reloads the sound engine.\n

\nThis method clears the warning set, checks for missing sound events, destroys the current sound system, and reloads the library. + m (FFLnet/minecraft/world/phys/Vec3;Lcom/mojang/blaze3d/audio/Channel;)V method_19748 a method_19748 + m (FFLnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;FZZLnet/minecraft/world/phys/Vec3;ZLcom/mojang/blaze3d/audio/Channel;)V method_19749 a method_19749 + m (FLnet/minecraft/sounds/SoundSource;)F calculateVolume a method_43222 + c Calculates the volume of the sound being played.\n

\nClamps the sound between 0.0f and 1.0f. + p 1 volumeMultiplier + p 2 source + m (FLcom/mojang/blaze3d/audio/Channel;)V method_19750 a method_19750 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V stop a method_4838 + p 1 soundName + p 2 category + m (Lnet/minecraft/sounds/SoundSource;)F getVolume a method_4850 + c {@return the volume value pinned between 0.0f and 1.0f for a given {@linkplain SoundSource} category} + p 1 category + m (Lnet/minecraft/sounds/SoundSource;F)V updateCategoryVolume a method_4844 + c Updates the volume for a specific sound category.\n

\nIf the sound engine has not been loaded, the method returns without performing any action.\n

\nIf the category is the "MASTER" category, the overall listener gain (volume) is set to the specified value.\n

\nFor other categories, the volume is updated for each sound instance associated with the category.\n

\nIf the calculated volume for an instance is less than or equal to 0.0, the instance is stopped.\nOtherwise, the volume of the instance is set to the calculated value. + p 1 category + p 2 volume + m (Lcom/mojang/blaze3d/audio/ListenerTransform;)V method_19751 a method_19751 + m (Lcom/mojang/blaze3d/audio/SoundBuffer;Lcom/mojang/blaze3d/audio/Channel;)V method_19752 a method_19752 + m (Lnet/minecraft/client/Camera;)V updateSource a method_4840 + p 1 renderInfo + m (Lnet/minecraft/client/resources/sounds/Sound;)V requestPreload a method_4851 + c Requests a specific {@linkplain Sound} instance to be preloaded. + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V stop a method_19753 + c Stops the provided {@linkplain SoundInstace} from continuing to play. + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;I)V playDelayed a method_4852 + c Adds a sound to play in n ticks + p 1 sound + p 2 delay + m (Lnet/minecraft/client/resources/sounds/SoundInstance;Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)V method_19754 a method_19754 + m (Lnet/minecraft/client/resources/sounds/TickableSoundInstance;)V queueTickingSound a method_22139 + c Queues a new {@linkplain TickingCodeInstance} + p 1 tickableSound + c the {@linkplain TickableSoundInstance} to queue + m (Lnet/minecraft/client/sounds/AudioStream;Lcom/mojang/blaze3d/audio/Channel;)V method_19755 a method_19755 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)V method_19756 a method_19756 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;Lcom/mojang/blaze3d/audio/SoundBuffer;)V method_19757 a method_19757 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;Lnet/minecraft/client/sounds/AudioStream;)V method_19758 a method_19758 + m (Lnet/minecraft/client/sounds/SoundEventListener;)V addEventListener a method_4855 + p 1 listener + m (Ljava/lang/String;)V method_38938 a method_38938 + m (Ljava/util/stream/Stream;)V method_19759 a method_19759 + m (Z)V tick a method_20185 + c Ticks all active instances of {@code TickableSoundInstance} + p 1 isGamePaused + m ()V destroy b method_4856 + c Cleans up the Sound System + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z isActive b method_4835 + c {@return {@code true} if the {@linkplain SoundInstance} is active, {@code false} otherwise} + p 1 sound + c the SoundInstance to check + m (Lnet/minecraft/client/sounds/SoundEventListener;)V removeEventListener b method_4847 + p 1 listener + m (Ljava/util/stream/Stream;)V method_19760 b method_19760 + m ()V emergencyShutdown c method_54648 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V play c method_4854 + c Plays a given sound instance.\n

\nIf the sound engine is not loaded or the sound instance cannot be played, the method returns early.\n

\nThe method fulfills the following parts:\n

    \n
  • Performs a series of checks to determine if it can play a sound
  • \n
  • Handles the playing of instances of {@code SoundInstance}
  • \n
  • Logs potential errors that may have occured
  • \n
  • Handles mapping instances of {@code SoundInstance} to specific audio channels
  • \n
  • Handles deletion times for active instances of {@code SoundInstance}
  • \n
  • Calculates and handles various sound properties such as volume, pitch, attenuation, looping, position and relative,
  • \n
\n

\n@implNote This method assumes proper synchronization or that thread confinement mechanisms are in place. + p 1 sound + c the sound instance to be played. + m ()V stopAll d method_4843 + c Stops all currently playing sounds + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z requiresManualLooping d method_24878 + c {@return Returns {@code true} if the SoundInstance requires manual looping, {@code false} otherwise + p 0 sound + c the SoundInstance to check + m ()V pause e method_19761 + c Pauses all currently playing sounds + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z shouldLoopManually e method_24879 + c @return Returns {@code true} if the SoundInstance should loop manually, {@code false} otherwise + p 0 sound + c The SoundInstance to check + m ()V resume f method_19762 + c Resumes playing all currently playing sounds (after pauseAllSounds) + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z shouldLoopAutomatically f method_24880 + c @return Returns {@code true} if the SoundInstance should loop automatically, {@code false} otherwise + p 0 sound + c The SoundInstance to check + m ()Ljava/lang/String; getDebugString g method_20304 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)F calculatePitch g method_4849 + c Calculates the pitch of the sound being played.\n

\nClamps the sound between 0.5f and 2.0f. + p 1 sound + c the {@linkplain SoundInstance} being played + m ()Ljava/util/List; getAvailableSoundDevices h method_38564 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)F calculateVolume h method_4853 + c Calculates the volume for the sound being played.\n

\nDelegates to {@code #calculateVolume(float, SoundSource)} + p 1 sound + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getListenerTransform i method_55592 + m ()V loadLibrary j method_4846 + c Loads the sound library if it has not been loaded already.\nIf loading is successful, the library is initialized, and the sound engine is started, otherwise, an error message is logged, and sounds and music are turned off. + m ()Z shouldChangeDevice k method_38744 + c The audio device change is checked by this method.\n

\nIf the current audio device is disconnected, an informational message is logged, and this method returns {@code true} to indicate a change is needed.\n

\nOtherwise, the elapsed time since the last device check is examined.\nIf the elapsed time is greater than or equal to 1000 milliseconds, the device check is performed.\n

\nDuring the device check, the current device state is compared with the preferred sound device specified in the options.\n

    \n
  • If the preferred sound device is an empty string and the system default audio device has changed, an informational message is logged, and the device pool state is set to indicate a change has been detected.
  • \n
  • If the preferred sound device is not an empty string, it is checked whether the current device name is different from the preferred device name and if the preferred device is available in the list of available sound devices.
  • \n
  • If both conditions are true, an informational message is logged, and the device pool state is set to indicate a change has been detected.
  • \n
\n

\nFinally, the device pool state is set to indicate that the device check is complete.\n

\n@return {@code true} if a change in the audio device is needed, {@code false} otherwise. + m ()V tickNonPaused l method_4857 + c Executes a single tick for non-paused sounds.\n

\nThe following steps are taken as part of this method:\n

    \n
  • Increment the tick count.
  • \n
  • Clears the queued tickable sounds list.
  • \n
  • Updates and handles tickable sounds currently playing.
  • \n
  • Updates volume, pitch, and position for each tickable sound.
  • \n
  • Removes stopped or expired tickable sounds from the instance-to-channel mapping.
  • \n
  • Removes stopped tickable sounds from the ticking sounds list.
  • \n
  • Handles queued sounds that are ready to be played.
  • \n
\n

\nNote: This method assumes that it is being called within a tick loop.\n@implNote This method assumes proper synchronization or thread confinement mechanisms are in place. + m (Lnet/minecraft/client/sounds/SoundManager;Lnet/minecraft/client/Options;Lnet/minecraft/server/packs/resources/ResourceProvider;)V + p 1 soundManager + p 2 options + p 3 resourceManager + m ()V +c net/minecraft/client/sounds/SoundEngine$DeviceCheckState gvc$a net/minecraft/class_1140$class_6665 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; ONGOING a field_35084 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; CHANGE_DETECTED b field_35085 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; NO_CHANGE c field_35086 + f [Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; $VALUES d field_35087 + m ()[Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; $values a method_38939 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/sounds/SoundEngineExecutor gvd net/minecraft/class_4238 + c The SoundEngineExecutor class is responsible for executing sound-related tasks in a separate thread.\n

\nIt extends the BlockableEventLoop class, providing an event loop for managing and executing tasks. + f Ljava/lang/Thread; thread a field_18953 + f Z shutdown b field_18954 + m ()V flush a method_19763 + c Flushes the SoundEngineExecutor by interrupting the thread, joining the thread, dropping all pending tasks, and recreating the thread.\nIt sets the shutdown state to false to allow new tasks to be scheduled. + m ()Ljava/lang/Thread; createThread b method_19764 + c Creates and starts a new thread for executing sound-related tasks.\n

\n@return The created thread + m ()V run c method_19765 + c The main run loop of the SoundEngineExecutor.\nIt continuously blocks until the shutdown state is true. + m ()Z method_19766 d method_19766 + m ()V +c net/minecraft/client/sounds/SoundEventListener gve net/minecraft/class_1145 + c The SoundEventListener interface defines a listener for sound events.\nClasses implementing this interface can be registered as listeners to receive notifications when a sound is played. + m (Lnet/minecraft/client/resources/sounds/SoundInstance;Lnet/minecraft/client/sounds/WeighedSoundEvents;F)V onPlaySound a method_4884 + p 1 sound + p 2 accessor + p 3 range +c net/minecraft/client/sounds/SoundManager gvf net/minecraft/class_1144 + c The SoundManager class is responsible for managing sound events and playing sounds.\nIt handles sound event registrations, caching of sound resources, and sound playback. + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SOUND_LOCATION a field_52173 + f Lnet/minecraft/client/resources/sounds/Sound; EMPTY_SOUND b field_5592 + f Lnet/minecraft/resources/ResourceLocation; INTENTIONALLY_EMPTY_SOUND_LOCATION c field_42934 + f Lnet/minecraft/client/sounds/WeighedSoundEvents; INTENTIONALLY_EMPTY_SOUND_EVENT d field_42935 + f Lnet/minecraft/client/resources/sounds/Sound; INTENTIONALLY_EMPTY_SOUND e field_42936 + f Lorg/slf4j/Logger; LOGGER f field_5593 + f Ljava/lang/String; SOUNDS_PATH g field_33026 + f Lcom/google/gson/Gson; GSON h field_5594 + f Lcom/google/gson/reflect/TypeToken; SOUND_EVENT_REGISTRATION_TYPE i field_5591 + f Ljava/util/Map; registry j field_5588 + f Lnet/minecraft/client/sounds/SoundEngine; soundEngine k field_5590 + f Ljava/util/Map; soundCache l field_40576 + m ()Ljava/util/List; getAvailableSoundDevices a method_38565 + c Retrieves a list of available sound devices. + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/sounds/WeighedSoundEvents; getSoundEvent a method_4869 + c {@return The sound event associated with the specific {@linkplain ResourceLocation}, or {@code null} if not found} + p 1 location + c The location of the sound event + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V stop a method_4875 + c Stops all sounds associated with the specified ID and category. + p 1 id + c The ID of the sounds to stop, or null to stop all sounds + p 2 category + c The category of the sounds to stop, or null to stop sounds from all categories + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/sounds/SoundManager$Preparations; prepare a method_18180 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + c The resource manager in-charge of loading sound files + p 2 profiler + c The sound profiler + m (Lnet/minecraft/sounds/SoundSource;F)V updateSourceVolume a method_4865 + c Updates the volume of the specified sound source category. + p 1 category + c The sound source category + p 2 volume + c The new volume + m (Lnet/minecraft/client/Camera;)V updateSource a method_4876 + c Updates the sound source position based on the active render info. + p 1 activeRenderInfo + c The active render info + m (Lnet/minecraft/client/resources/sounds/Sound;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/ResourceProvider;)Z validateSoundResource a method_4868 + c Validates a sound resource\n

\n@return {@code true} if the sound resource is valid, {@code false} otherwise + p 0 sound + c The sound to validate + p 1 location + c The location of the sound event + p 2 resourceProvider + c The resource provider + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V play a method_4873 + c Play a sound + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;I)V playDelayed a method_4872 + c Plays a sound with a delay in ticks. + p 1 sound + c The sound instance to play + p 2 delay + c The delay in ticks before playing the sound + m (Lnet/minecraft/client/resources/sounds/TickableSoundInstance;)V queueTickingSound a method_22140 + c Queues a ticking sound to be played. + p 1 tickableSound + c The ticking sound instance + m (Lnet/minecraft/client/sounds/SoundEventListener;)V addListener a method_4878 + p 1 listener + m (Lnet/minecraft/client/sounds/SoundManager$Preparations;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18182 + c Applies the prepared sound event registrations and caches to the sound manager. + p 1 object + c The prepared sound event registrations and caches + p 2 resourceManager + c The resource manager + p 3 profiler + c The profiler + m (Z)V tick a method_18670 + c Updates the sound manager's tick state. + p 1 isGamePaused + c {@code true} if the game is paused, {@code false} otherwise + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getListenerTransform b method_55593 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V stop b method_4870 + p 1 sound + m (Lnet/minecraft/client/sounds/SoundEventListener;)V removeListener b method_4866 + p 1 listener + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z isActive c method_4877 + c Checks if the specified sound is active (playing or scheduled to be played).\n@return {@code true} if the sound is active, {@code false} otherwise + p 1 sound + c The sound instance to check + m ()Ljava/util/Collection; getAvailableSounds d method_4864 + c {@return The collection of available sound event locations} + m ()V pause e method_4879 + m ()V stop f method_4881 + m ()V destroy g method_4882 + m ()V emergencyShutdown h method_54649 + m ()V resume i method_4880 + m ()Ljava/lang/String; getDebugString j method_20305 + m ()V reload k method_38566 + m (Lnet/minecraft/client/Options;)V + p 1 options + m ()V +c net/minecraft/client/sounds/SoundManager$1 gvf$1 net/minecraft/class_1144$1 + m ()V +c net/minecraft/client/sounds/SoundManager$2 gvf$2 net/minecraft/class_1144$2 + f [I $SwitchMap$net$minecraft$client$resources$sounds$Sound$Type a field_5598 + m ()V +c net/minecraft/client/sounds/SoundManager$Preparations gvf$a net/minecraft/class_1144$class_4009 + c The Preparations class represents the prepared sound event registrations and caches for applying to the sound manager. + f Ljava/util/Map; registry a field_17908 + f Ljava/util/Map; soundCache b field_40577 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/sounds/SoundEventRegistration;)V handleRegistration a method_18187 + p 1 location + p 2 registration + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V listResources a method_45913 + p 1 resourceManager + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/client/sounds/SoundEngine;)V apply a method_18186 + c Applies the prepared sound event registrations and caches to the sound manager. + p 1 soundRegistry + c The sound registry to apply to + p 2 cache + c The sound cache to apply to + p 3 soundEngine + c The sound engine to apply to + m ()V +c net/minecraft/client/sounds/SoundManager$Preparations$1 gvf$a$1 net/minecraft/class_1144$class_4009$1 + f Lnet/minecraft/resources/ResourceLocation; val$soundLocation a field_5596 + f Lnet/minecraft/client/resources/sounds/Sound; val$sound b field_5595 + f Lnet/minecraft/client/sounds/SoundManager$Preparations; field_5597 c field_5597 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4883 + m (Lnet/minecraft/client/sounds/SoundManager$Preparations;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/sounds/Sound;)V +c net/minecraft/client/sounds/WeighedSoundEvents gvg net/minecraft/class_1146 + c The WeighedSoundEvents class represents a collection of weighted sound events.\nIt implements the Weighted interface to provide weighted selection of sounds. + f Ljava/util/List; list a field_5600 + f Lnet/minecraft/network/chat/Component; subtitle b field_5599 + m ()Lnet/minecraft/network/chat/Component; getSubtitle a method_4886 + c {@return The subtitle component, or {@code null} if no subtitle is provided} + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4887 + c Retrieves a randomly selected sound from the sound events based on their weights.\nThe selection is performed using the provided random source.\n

\n@return A randomly selected sound from the sound events\nThe random source used for sound selection + p 1 randomSource + c the random source used for sound selection + m (Lnet/minecraft/client/sounds/Weighted;)V addSound a method_4885 + c Adds a sound event to the collection. + p 1 accessor + c The weighted accessor for the sound event to be added + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 location + c The resource location of the sound events + p 2 subtitleKey + c The key for the subtitle translation component, or null if no subtitle is provided +c net/minecraft/client/sounds/Weighted gvh net/minecraft/class_1148 + c The Weighted interface represents an element with a weight in a weighted collection.\nIt is used to provide weighted selection and retrieval of elements.\n\n@param The type of the element + m (Lnet/minecraft/client/sounds/SoundEngine;)V preloadIfRequired a method_18188 + c Preloads the sound if required by the sound engine.\nThis method is called to preload the sound associated with the element into the sound engine, ensuring it is ready for playback. + p 1 engine + c the sound engine used for sound preloading + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getSound b method_4893 + c Retrieves the sound associated with the element.\nThe sound is obtained using the provided random source.\n

\n@return The sound associated with the element + p 1 randomSource + c the random source used for sound selection + m ()I getWeight e method_4894 + c {@return The weight of the element} +c net/minecraft/client/sounds/package-info gvi net/minecraft/class_6274 +c net/minecraft/client/telemetry/ClientTelemetryManager gvj net/minecraft/class_6628 + f Ljava/util/concurrent/atomic/AtomicInteger; THREAD_COUNT a field_34948 + f Ljava/util/concurrent/Executor; EXECUTOR b field_34949 + f Lnet/minecraft/client/Minecraft; minecraft c field_47702 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService d field_41426 + f Lnet/minecraft/client/telemetry/TelemetryPropertyMap; deviceSessionProperties e field_41427 + f Ljava/nio/file/Path; logDirectory f field_41428 + f Ljava/util/concurrent/CompletableFuture; logManager g field_41429 + f Ljava/util/function/Supplier; outsideSessionSender h field_44831 + m ()Lnet/minecraft/client/telemetry/TelemetryEventSender; getOutsideSessionSender a method_51796 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;Lcom/mojang/authlib/minecraft/TelemetrySession;Ljava/util/Optional;)V method_47702 a method_47702 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/String;)V method_47703 a method_47703 + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_38731 a method_38731 + m (Ljava/util/Optional;)V method_47704 a method_47704 + m (Ljava/util/concurrent/CompletableFuture;Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47705 a method_47705 + m (ZLjava/time/Duration;Ljava/lang/String;)Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; createWorldSessionManager a method_47706 + p 1 newWorld + p 2 worldLoadDuration + p 3 minigameName + m ()Ljava/nio/file/Path; getLogDirectory b method_47701 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/String;)V method_47708 b method_47708 + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletionStage; method_47709 b method_47709 + m ()Lnet/minecraft/client/telemetry/TelemetryEventSender; createEventSender c method_47707 + m ()Ljava/util/concurrent/CompletableFuture; method_47710 d method_47710 + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/client/User;)V + p 1 minecraft + p 2 userApiService + p 3 user + m ()V +c net/minecraft/client/telemetry/TelemetryEventInstance gvk net/minecraft/class_7962 + f Lcom/mojang/serialization/Codec; CODEC a field_41430 + f Lnet/minecraft/client/telemetry/TelemetryEventType; type b comp_1169 + f Lnet/minecraft/client/telemetry/TelemetryPropertyMap; properties c comp_1170 + m ()Lnet/minecraft/client/telemetry/TelemetryEventType; type a comp_1169 + m (Lcom/mojang/authlib/minecraft/TelemetrySession;)Lcom/mojang/authlib/minecraft/TelemetryEvent; export a method_47711 + p 1 session + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/telemetry/TelemetryProperty;)V method_47712 a method_47712 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap; properties b comp_1170 + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)V + m ()V +c net/minecraft/client/telemetry/TelemetryEventLog gvl net/minecraft/class_7963 + f Lorg/slf4j/Logger; LOGGER a field_41431 + f Lnet/minecraft/util/eventlog/JsonEventLog; log b field_41432 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox c field_41433 + m ()Lnet/minecraft/client/telemetry/TelemetryEventLogger; logger a method_47713 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;)V method_47714 a method_47714 + m ()V method_47715 b method_47715 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;)V method_47716 b method_47716 + m (Ljava/nio/channels/FileChannel;Ljava/util/concurrent/Executor;)V + p 1 channel + p 2 dispatcher + m ()V +c net/minecraft/client/telemetry/TelemetryEventLogger gvm net/minecraft/class_7964 +c net/minecraft/client/telemetry/TelemetryEventSender gvn net/minecraft/class_7965 + f Lnet/minecraft/client/telemetry/TelemetryEventSender; DISABLED a field_41434 + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47717 a method_47717 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47718 a method_47718 + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47719 a method_47719 + m ()V +c net/minecraft/client/telemetry/TelemetryEventType gvo net/minecraft/class_7966 + f Lcom/mojang/serialization/Codec; CODEC a field_41435 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_LOADED b field_41436 + f Lnet/minecraft/client/telemetry/TelemetryEventType; PERFORMANCE_METRICS c field_41437 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_LOAD_TIMES d field_41438 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_UNLOADED e field_41439 + f Lnet/minecraft/client/telemetry/TelemetryEventType; ADVANCEMENT_MADE f field_44832 + f Lnet/minecraft/client/telemetry/TelemetryEventType; GAME_LOAD_TIMES g field_44833 + f Ljava/util/Map; REGISTRY h field_41440 + f Ljava/util/List; GLOBAL_PROPERTIES i field_41441 + f Ljava/util/List; WORLD_SESSION_PROPERTIES j field_41442 + f Ljava/lang/String; id k field_41443 + f Ljava/lang/String; exportKey l field_41444 + f Ljava/util/List; properties m field_41445 + f Z isOptIn n field_41446 + f Lcom/mojang/serialization/MapCodec; codec o field_41447 + m ()Ljava/lang/String; id a method_47720 + m (Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lcom/mojang/authlib/minecraft/TelemetryEvent; export a method_47721 + p 1 session + p 2 propertyMap + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Z contains a method_47722 + p 1 property + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lnet/minecraft/client/telemetry/TelemetryEventInstance; method_47723 a method_47723 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; makeTranslation a method_47724 + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; builder a method_47725 + p 0 id + p 1 exportKey + m ()Ljava/util/List; properties b method_47726 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47727 b method_47727 + m ()Lcom/mojang/serialization/MapCodec; codec c method_47728 + m (Ljava/lang/String;)Ljava/lang/String; method_49636 c method_49636 + m ()Z isOptIn d method_47729 + m ()Lnet/minecraft/network/chat/MutableComponent; title e method_47730 + m ()Lnet/minecraft/network/chat/MutableComponent; description f method_47731 + m ()Ljava/util/List; values g method_47732 + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Z)V + p 1 id + p 2 exportKey + p 3 properties + p 4 isOptIn + m ()V +c net/minecraft/client/telemetry/TelemetryEventType$Builder gvo$a net/minecraft/class_7966$class_7967 + f Ljava/lang/String; id a field_41448 + f Ljava/lang/String; exportKey b field_41449 + f Ljava/util/List; properties c field_41450 + f Z isOptIn d field_41451 + m ()Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; optIn a method_47733 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; define a method_47734 + p 1 property + m (Ljava/util/List;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; defineAll a method_47735 + p 1 properties + m ()Lnet/minecraft/client/telemetry/TelemetryEventType; register b method_47736 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 id + p 2 exportKey +c net/minecraft/client/telemetry/TelemetryLogManager gvp net/minecraft/class_7968 + f Lorg/slf4j/Logger; LOGGER a field_41452 + f Ljava/lang/String; RAW_EXTENSION b field_41453 + f I EXPIRY_DAYS c field_41454 + f Lnet/minecraft/util/eventlog/EventLogDirectory; directory d field_41455 + f Ljava/util/concurrent/CompletableFuture; sessionLog e field_41456 + m ()Ljava/util/concurrent/CompletableFuture; openLogger a method_47737 + m (Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; open a method_47738 + p 0 path + m (Ljava/util/Optional;)V method_47739 a method_47739 + m ()Ljava/util/Optional; method_47740 b method_47740 + m (Ljava/nio/file/Path;)Ljava/util/Optional; method_47741 b method_47741 + m (Ljava/util/Optional;)Ljava/util/Optional; method_47742 b method_47742 + m (Lnet/minecraft/util/eventlog/EventLogDirectory;)V + p 1 directory + m ()V +c net/minecraft/client/telemetry/TelemetryProperty gvq net/minecraft/class_7969 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_PRE_WINDOW_MS A field_44834 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_BOOTSTRAP_MS B field_44835 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_LOADING_OVERLAY_MS C field_44836 + f Lnet/minecraft/client/telemetry/TelemetryProperty; ADVANCEMENT_ID D field_44837 + f Lnet/minecraft/client/telemetry/TelemetryProperty; ADVANCEMENT_GAME_TIME E field_44838 + f Ljava/lang/String; id F comp_1171 + f Ljava/lang/String; exportKey G comp_1172 + f Lcom/mojang/serialization/Codec; codec H comp_1173 + f Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter; exporter I comp_1174 + f Ljava/time/format/DateTimeFormatter; TIMESTAMP_FORMATTER J field_41457 + f Lnet/minecraft/client/telemetry/TelemetryProperty; USER_ID a field_41458 + f Lnet/minecraft/client/telemetry/TelemetryProperty; CLIENT_ID b field_41459 + f Lnet/minecraft/client/telemetry/TelemetryProperty; MINECRAFT_SESSION_ID c field_41460 + f Lnet/minecraft/client/telemetry/TelemetryProperty; GAME_VERSION d field_41461 + f Lnet/minecraft/client/telemetry/TelemetryProperty; OPERATING_SYSTEM e field_41462 + f Lnet/minecraft/client/telemetry/TelemetryProperty; PLATFORM f field_41463 + f Lnet/minecraft/client/telemetry/TelemetryProperty; CLIENT_MODDED g field_41464 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LAUNCHER_NAME h field_44839 + f Lnet/minecraft/client/telemetry/TelemetryProperty; WORLD_SESSION_ID i field_41465 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SERVER_MODDED j field_41466 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SERVER_TYPE k field_41467 + f Lnet/minecraft/client/telemetry/TelemetryProperty; OPT_IN l field_41468 + f Lnet/minecraft/client/telemetry/TelemetryProperty; EVENT_TIMESTAMP_UTC m field_41469 + f Lnet/minecraft/client/telemetry/TelemetryProperty; GAME_MODE n field_41470 + f Lnet/minecraft/client/telemetry/TelemetryProperty; REALMS_MAP_CONTENT o field_44840 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SECONDS_SINCE_LOAD p field_41471 + f Lnet/minecraft/client/telemetry/TelemetryProperty; TICKS_SINCE_LOAD q field_41472 + f Lnet/minecraft/client/telemetry/TelemetryProperty; FRAME_RATE_SAMPLES r field_41473 + f Lnet/minecraft/client/telemetry/TelemetryProperty; RENDER_TIME_SAMPLES s field_41474 + f Lnet/minecraft/client/telemetry/TelemetryProperty; USED_MEMORY_SAMPLES t field_41475 + f Lnet/minecraft/client/telemetry/TelemetryProperty; NUMBER_OF_SAMPLES u field_41476 + f Lnet/minecraft/client/telemetry/TelemetryProperty; RENDER_DISTANCE v field_41477 + f Lnet/minecraft/client/telemetry/TelemetryProperty; DEDICATED_MEMORY_KB w field_41478 + f Lnet/minecraft/client/telemetry/TelemetryProperty; WORLD_LOAD_TIME_MS x field_41479 + f Lnet/minecraft/client/telemetry/TelemetryProperty; NEW_WORLD y field_41480 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_TOTAL_TIME_MS z field_44841 + m ()Lnet/minecraft/network/chat/MutableComponent; title a method_47743 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode;)V method_47744 a method_47744 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType;)V method_47745 a method_47745 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement;)V method_51797 a method_51797 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lit/unimi/dsi/fastutil/longs/LongList;)V method_47746 a method_47746 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/time/Instant;)V method_47747 a method_47747 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/util/UUID;)V method_47748 a method_47748 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;)V export a method_47749 + p 1 propertyMap + p 2 container + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; bool a method_47750 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter;)Lnet/minecraft/client/telemetry/TelemetryProperty; create a method_47751 + p 0 id + p 1 exportKey + p 2 codec + p 3 exporter + m ()Ljava/lang/String; id b comp_1171 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; string b method_47752 + p 0 id + p 1 exportKey + m ()Ljava/lang/String; exportKey c comp_1172 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; integer c method_47753 + p 0 id + p 1 exportKey + m ()Lcom/mojang/serialization/Codec; codec d comp_1173 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; makeLong d method_51798 + p 0 id + p 1 exportKey + m ()Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter; exporter e comp_1174 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; uuid e method_47754 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; gameLoadMeasurement f method_51799 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; longSamples g method_47755 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter;)V + m ()V +c net/minecraft/client/telemetry/TelemetryProperty$Exporter gvq$a net/minecraft/class_7969$class_7970 +c net/minecraft/client/telemetry/TelemetryProperty$GameMode gvq$b net/minecraft/class_7969$class_7971 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; SURVIVAL a field_41481 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; CREATIVE b field_41482 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; ADVENTURE c field_41483 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; SPECTATOR d field_41484 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; HARDCORE e field_41485 + f Lcom/mojang/serialization/Codec; CODEC f field_41486 + f Ljava/lang/String; key g field_41487 + f I id h field_41488 + f [Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; $VALUES i field_41489 + m ()I id a method_47756 + m ()[Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; $values b method_47757 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 key + p 4 id + m ()V +c net/minecraft/client/telemetry/TelemetryProperty$ServerType gvq$c net/minecraft/class_7969$class_7972 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; REALM a field_41490 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; LOCAL b field_41491 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; OTHER c field_41492 + f Lcom/mojang/serialization/Codec; CODEC d field_41493 + f Ljava/lang/String; key e field_41494 + f [Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; $VALUES f field_41495 + m ()[Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; $values a method_47758 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 key + m ()V +c net/minecraft/client/telemetry/TelemetryPropertyMap gvr net/minecraft/class_7973 + f Ljava/util/Map; entries a field_41496 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; builder a method_47759 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Ljava/lang/Object; get a method_47760 + p 1 key + m (Ljava/util/List;)Lcom/mojang/serialization/MapCodec; createCodec a method_47761 + p 0 properties + m ()Ljava/util/Set; propertySet b method_47762 + m (Ljava/util/Map;)V + p 1 entries +c net/minecraft/client/telemetry/TelemetryPropertyMap$1 gvr$1 net/minecraft/class_7973$1 + f Ljava/util/List; val$properties a field_41497 + m (Lcom/mojang/serialization/DataResult;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/mojang/serialization/DataResult; decodeProperty a method_47763 + p 1 result + p 2 ops + p 3 value + p 4 property + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; method_47764 a method_47764 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode a method_47765 + p 1 map + p 2 ops + p 3 builder + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/mojang/serialization/RecordBuilder; encodeProperty a method_47766 + p 1 map + p 2 builder + p 3 key + m (Ljava/util/List;)V +c net/minecraft/client/telemetry/TelemetryPropertyMap$Builder gvr$a net/minecraft/class_7973$class_7974 + f Ljava/util/Map; entries a field_41498 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap; build a method_47767 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; put a method_47768 + p 1 key + p 2 value + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; putAll a method_47769 + p 1 propertyMap + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; putIfNotNull b method_51800 + p 1 key + p 2 value + m ()V +c net/minecraft/client/telemetry/WorldSessionTelemetryManager gvs net/minecraft/class_7975 + f Ljava/util/UUID; worldSessionId a field_41499 + f Lnet/minecraft/client/telemetry/TelemetryEventSender; eventSender b field_41500 + f Lnet/minecraft/client/telemetry/events/WorldLoadEvent; worldLoadEvent c field_41501 + f Lnet/minecraft/client/telemetry/events/WorldUnloadEvent; worldUnloadEvent d field_41502 + f Lnet/minecraft/client/telemetry/events/PerformanceMetricsEvent; performanceMetricsEvent e field_41503 + f Lnet/minecraft/client/telemetry/events/WorldLoadTimesEvent; worldLoadTimesEvent f field_41504 + m ()V tick a method_47770 + m (J)V setTime a method_47771 + p 1 time + m (Lnet/minecraft/resources/ResourceLocation;JLnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_51801 a method_51801 + m (Lnet/minecraft/world/level/GameType;Z)V onPlayerInfoReceived a method_47772 + p 1 gameType + p 2 isHardcore + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/advancements/AdvancementHolder;)V onAdvancementDone a method_51802 + p 1 level + p 2 advancement + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47773 a method_47773 + m (Ljava/lang/String;)V onServerBrandReceived a method_47774 + p 1 serverBrand + m ()V worldSessionStart b method_47775 + m ()V onDisconnect c method_47776 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;ZLjava/time/Duration;Ljava/lang/String;)V + p 1 sender + p 2 newWorld + p 3 worldLoadDuration + p 4 minigameName +c net/minecraft/client/telemetry/events/AggregatedTelemetryEvent gvt net/minecraft/class_7976 + f I SAMPLE_INTERVAL_MS a field_41505 + f I SAMPLES_PER_EVENT b field_41506 + f I sampleCount c field_41507 + f Z ticking d field_41508 + f Ljava/time/Instant; lastSampleTime e field_41509 + m ()V start a method_47777 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V tick a method_47778 + p 1 sender + m ()Z shouldTakeSample b method_47779 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V sendEvent b method_47784 + p 1 sender + m ()Z shouldSentEvent c method_47780 + m ()V stop d method_47781 + m ()I getSampleCount e method_47782 + m ()V takeSample f method_47783 + m ()V +c net/minecraft/client/telemetry/events/GameLoadTimesEvent gvu net/minecraft/class_8561 + f Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent; INSTANCE a field_44842 + f Lorg/slf4j/Logger; LOGGER b field_44843 + f Lcom/google/common/base/Ticker; timeSource c field_44844 + f Ljava/util/Map; measurements d field_44845 + f Ljava/util/OptionalLong; bootstrapTime e field_44846 + m (J)V setBootstrapTime a method_51803 + p 1 bootstrapTime + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/google/common/base/Stopwatch; method_51804 a method_51804 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_51805 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)V beginStep a method_51806 + p 1 measurement + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Lcom/google/common/base/Stopwatch;)V beginStep a method_51807 + p 1 measurement + p 2 stopwatch + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/util/function/Function;)V beginStep a method_51808 + p 1 measurement + p 2 stopwatchGetter + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_51809 a method_51809 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;J)V method_51810 a method_51810 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Lnet/minecraft/client/telemetry/TelemetryProperty;Lcom/google/common/base/Stopwatch;)V method_51811 a method_51811 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)V endStep b method_51812 + p 1 measurement + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/google/common/base/Stopwatch; method_51813 c method_51813 + m (Lcom/google/common/base/Ticker;)V + p 1 timeSource + m ()V +c net/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement gvu$a net/minecraft/class_8561$class_8562 + f Lcom/mojang/serialization/Codec; CODEC a field_44847 + f I millis b comp_1531 + m ()I millis a comp_1531 + m (Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement;)Ljava/lang/Integer; method_51814 a method_51814 + m (I)V + m ()V +c net/minecraft/client/telemetry/events/PerformanceMetricsEvent gvv net/minecraft/class_7977 + f J DEDICATED_MEMORY_KB a field_41510 + f Lit/unimi/dsi/fastutil/longs/LongList; fpsSamples b field_41511 + f Lit/unimi/dsi/fastutil/longs/LongList; frameTimeSamples c field_41512 + f Lit/unimi/dsi/fastutil/longs/LongList; usedMemorySamples d field_41513 + m (J)J toKilobytes a method_47785 + p 0 bytes + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47979 a method_47979 + m ()V resetValues g method_47788 + m ()V takeUsedMemorySample h method_47789 + m ()V + m ()V +c net/minecraft/client/telemetry/events/WorldLoadEvent gvw net/minecraft/class_7979 + f Z eventSent a field_41516 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; gameMode b field_41517 + f Ljava/lang/String; serverBrand c field_41518 + f Ljava/lang/String; minigameName d field_44848 + m ()Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; getServerType a method_47794 + m (Lnet/minecraft/world/level/GameType;Z)V setGameMode a method_47791 + p 1 gameMode + p 2 isHardcore + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)Z send a method_47980 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V addProperties a method_47792 + p 1 builder + m (Ljava/lang/String;)V setServerBrand a method_47793 + p 1 serverBrand + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47795 b method_47795 + m (Ljava/lang/String;)V + p 1 minigameName +c net/minecraft/client/telemetry/events/WorldLoadEvent$1 gvw$1 net/minecraft/class_7979$1 + f [I $SwitchMap$net$minecraft$world$level$GameType a field_34955 + m ()V +c net/minecraft/client/telemetry/events/WorldLoadTimesEvent gvx net/minecraft/class_7981 + f Z newWorld a field_41519 + f Ljava/time/Duration; worldLoadDuration b field_41520 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_47981 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47796 a method_47796 + m (ZLjava/time/Duration;)V + p 1 newWorld + p 2 wordLoadDuration +c net/minecraft/client/telemetry/events/WorldUnloadEvent gvy net/minecraft/class_7982 + f I NOT_TRACKING_TIME a field_41712 + f Ljava/util/Optional; worldLoadedTime b field_41521 + f J totalTicks c field_41522 + f J lastGameTime d field_41523 + m ()V onPlayerInfoReceived a method_47982 + m (J)V setTime a method_47798 + p 1 time + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_47786 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;Ljava/time/Instant;)V method_47799 a method_47799 + m (Ljava/time/Instant;)I getTimeInSecondsSinceLoad a method_47800 + p 1 wordLoadedTime + m (Ljava/time/Instant;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47801 a method_47801 + m ()V +c net/minecraft/client/telemetry/events/package-info gvz net/minecraft/class_7983 +c net/minecraft/client/telemetry/package-info gwa net/minecraft/class_7984 +c net/minecraft/client/tutorial/BundleTutorial gwb net/minecraft/class_5829 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial a field_28798 + f Lnet/minecraft/client/Options; options b field_28799 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast c field_28800 + m ()V showToast a method_33701 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V onInventoryAction a method_33702 + p 1 carriedStack + p 2 slottedStack + p 3 action + m ()V clearToast b method_33703 + m (Lnet/minecraft/client/tutorial/Tutorial;Lnet/minecraft/client/Options;)V + p 1 tutorial + p 2 options +c net/minecraft/client/tutorial/CompletedTutorialStepInstance gwc net/minecraft/class_1150 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial +c net/minecraft/client/tutorial/CraftPlanksTutorialStep gwd net/minecraft/class_1149 + f I HINT_DELAY a field_33027 + f Lnet/minecraft/network/chat/Component; CRAFT_TITLE b field_5611 + f Lnet/minecraft/network/chat/Component; CRAFT_DESCRIPTION c field_5612 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5608 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5610 + f I timeWaiting f field_5609 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/tags/TagKey;)Z hasCraftedPlanksPreviously a method_4895 + p 0 player + p 1 items + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/FindTreeTutorialStepInstance gwe net/minecraft/class_1152 + f I HINT_DELAY a field_33028 + f Lnet/minecraft/network/chat/Component; TITLE b field_5631 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5628 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5630 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5633 + f I timeWaiting f field_5629 + m (Lnet/minecraft/client/player/LocalPlayer;)Z hasPunchedTreesPreviously a method_4896 + p 0 player + m (Lnet/minecraft/world/item/ItemStack;)Z method_43340 b method_43340 + m (Lnet/minecraft/client/player/LocalPlayer;)Z hasCollectedTreeItems b method_43341 + p 0 player + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/MovementTutorialStepInstance gwf net/minecraft/class_1151 + f I MINIMUM_TIME_MOVED a field_33029 + f I MINIMUM_TIME_LOOKED b field_33030 + f I MOVE_HINT_DELAY c field_33031 + f I LOOK_HINT_DELAY d field_33032 + f I INCOMPLETE e field_33033 + f Lnet/minecraft/network/chat/Component; MOVE_TITLE f field_5624 + f Lnet/minecraft/network/chat/Component; MOVE_DESCRIPTION g field_5617 + f Lnet/minecraft/network/chat/Component; LOOK_TITLE h field_5621 + f Lnet/minecraft/network/chat/Component; LOOK_DESCRIPTION i field_5614 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial j field_5618 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; moveToast k field_5622 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; lookToast l field_5623 + f I timeWaiting m field_5616 + f I timeMoved n field_5615 + f I timeLooked o field_5627 + f Z moved p field_5620 + f Z turned q field_5619 + f I moveCompleted r field_5626 + f I lookCompleted s field_5625 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/OpenInventoryTutorialStep gwg net/minecraft/class_1154 + f I HINT_DELAY a field_33034 + f Lnet/minecraft/network/chat/Component; TITLE b field_5643 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5644 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5640 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5642 + f I timeWaiting f field_5641 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/PunchTreeTutorialStepInstance gwh net/minecraft/class_1153 + f I HINT_DELAY a field_33035 + f Lnet/minecraft/network/chat/Component; TITLE b field_5638 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5639 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5634 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5637 + f I timeWaiting f field_5636 + f I resetCount g field_5635 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/Tutorial gwi net/minecraft/class_1156 + f Lnet/minecraft/client/Minecraft; minecraft a field_5645 + f Lnet/minecraft/client/tutorial/TutorialStepInstance; instance b field_5646 + f Ljava/util/List; timedToasts c field_26893 + f Lnet/minecraft/client/tutorial/BundleTutorial; bundleTutorial d field_28801 + m ()V onOpenInventory a method_4912 + c Called when the player opens his inventory + m (DD)V onMouse a method_4908 + p 1 velocityX + p 3 velocityY + m (Lnet/minecraft/world/item/ItemStack;)V onGetItem a method_4906 + c Called when the player pick up an ItemStack + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V onInventoryAction a method_33704 + p 1 carriedStack + p 2 slottedStack + p 3 action + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;)V removeTimedToast a method_31364 + p 1 toast + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;I)V addTimedToast a method_31365 + p 1 toast + p 2 durationTicks + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;Lnet/minecraft/client/tutorial/Tutorial$TimedToast;)Z method_31366 a method_31366 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/phys/HitResult;)V onLookAt a method_4911 + p 1 level + p 2 result + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)V onDestroyBlock a method_4907 + p 1 level + p 2 pos + p 3 state + p 4 diggingStage + m (Lnet/minecraft/client/player/Input;)V onInput a method_4909 + p 1 input + m (Lnet/minecraft/client/tutorial/TutorialSteps;)V setStep a method_4910 + c Sets a new step to the tutorial + p 1 step + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; key a method_4913 + p 0 keybind + m ()V stop b method_4915 + m ()V start c method_4916 + c Reloads the tutorial step from the game settings + m ()V tick d method_4917 + m ()Lnet/minecraft/client/Minecraft; getMinecraft e method_4914 + m ()Z isSurvival f method_4905 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/Options;)V + p 1 minecraft + p 2 options +c net/minecraft/client/tutorial/Tutorial$TimedToast gwi$a net/minecraft/class_1156$class_5524 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast a field_26894 + f I durationTicks b field_26895 + f I progress c field_26896 + m ()Z updateProgress a method_31368 + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;I)V + p 1 toast + p 2 durationTicks +c net/minecraft/client/tutorial/TutorialStepInstance gwj net/minecraft/class_1155 + m ()V tick a method_4899 + m (DD)V onMouse a method_4901 + p 1 velocityX + p 3 velocityY + m (Lnet/minecraft/world/item/ItemStack;)V onGetItem a method_4897 + c Called when the player pick up an ItemStack + p 1 stack + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/phys/HitResult;)V onLookAt a method_4898 + c Handles blocks and entities hovering + p 1 level + p 2 result + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)V onDestroyBlock a method_4900 + c Called when a player hits block to destroy it. + p 1 level + p 2 pos + p 3 state + p 4 diggingStage + m (Lnet/minecraft/client/player/Input;)V onInput a method_4903 + c Handles the player movement + p 1 input + m ()V clear b method_4902 + m ()V onOpenInventory c method_4904 + c Called when the player opens his inventory +c net/minecraft/client/tutorial/TutorialSteps gwk net/minecraft/class_1157 + f Lnet/minecraft/client/tutorial/TutorialSteps; MOVEMENT a field_5650 + f Lnet/minecraft/client/tutorial/TutorialSteps; FIND_TREE b field_5648 + f Lnet/minecraft/client/tutorial/TutorialSteps; PUNCH_TREE c field_5649 + f Lnet/minecraft/client/tutorial/TutorialSteps; OPEN_INVENTORY d field_5652 + f Lnet/minecraft/client/tutorial/TutorialSteps; CRAFT_PLANKS e field_5655 + f Lnet/minecraft/client/tutorial/TutorialSteps; NONE f field_5653 + f Ljava/lang/String; name g field_5651 + f Ljava/util/function/Function; constructor h field_5647 + f [Lnet/minecraft/client/tutorial/TutorialSteps; $VALUES i field_5654 + m ()Ljava/lang/String; getName a method_4920 + m (Lnet/minecraft/client/tutorial/Tutorial;)Lnet/minecraft/client/tutorial/TutorialStepInstance; create a method_4918 + p 1 tutorial + m (Ljava/lang/String;)Lnet/minecraft/client/tutorial/TutorialSteps; getByName a method_4919 + p 0 name + m ()[Lnet/minecraft/client/tutorial/TutorialSteps; $values b method_36929 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Function;)V + p 3 name + p 4 constructor + m ()V +c net/minecraft/client/tutorial/package-info gwl net/minecraft/class_6275 +c net/minecraft/realms/DisconnectedRealmsScreen gwm net/minecraft/class_4899 + f I textHeight B field_22811 + f Lnet/minecraft/network/chat/Component; reason a field_22808 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message b field_22809 + f Lnet/minecraft/client/gui/screens/Screen; parent c field_22810 + m (Lnet/minecraft/client/gui/components/Button;)V method_25468 a method_25468 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason +c net/minecraft/realms/RealmsConnect gwn net/minecraft/class_4902 + f Lorg/slf4j/Logger; LOGGER a field_22814 + f Lnet/minecraft/client/gui/screens/Screen; onlineScreen b field_22815 + f Z aborted c field_22816 + f Lnet/minecraft/network/Connection; connection d field_22817 + m ()V abort a method_25477 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)V connect a method_25480 + p 1 server + p 2 address + m ()V tick b method_25481 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 onlineScreen + m ()V +c net/minecraft/realms/RealmsConnect$1 gwn$1 net/minecraft/class_4902$1 + f Ljava/lang/String; val$hostname a field_11112 + f I val$port b field_11114 + f Lnet/minecraft/client/Minecraft; val$minecraft c field_22818 + f Lcom/mojang/realmsclient/dto/RealmsServer; val$server d field_26928 + f Lnet/minecraft/realms/RealmsConnect; field_11113 e field_11113 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/realms/DisconnectedRealmsScreen;)V method_25486 a method_25486 + m (Lnet/minecraft/network/chat/Component;)V method_10210 a method_10210 + m (Lnet/minecraft/realms/RealmsConnect;Ljava/lang/String;Ljava/lang/String;ILnet/minecraft/client/Minecraft;Lcom/mojang/realmsclient/dto/RealmsServer;)V +c net/minecraft/realms/RealmsLabel gwo net/minecraft/class_4903 + f Lnet/minecraft/network/chat/Component; text a field_22819 + f I x b field_22820 + f I y c field_22821 + f I color d field_22822 + m ()Lnet/minecraft/network/chat/Component; getText a method_25487 + m (Lnet/minecraft/network/chat/Component;III)V + p 1 text + p 2 x + p 3 y + p 4 color +c net/minecraft/realms/RealmsObjectSelectionList gwp net/minecraft/class_4904 + m ()V clear J method_25493 + m (Lnet/minecraft/client/gui/components/ObjectSelectionList$Entry;)I addEntry a method_25491 + p 1 entry + m (I)V selectItem b method_25489 + p 1 index + m (I)V setSelectedItem p method_25492 + p 1 index + m (IIII)V + p 1 width + p 2 height + p 3 y + p 4 itemHeight +c net/minecraft/realms/RealmsScreen gwq net/minecraft/class_4905 + f I SKIN_FACE_SIZE A field_39676 + f Ljava/util/List; labels a field_33848 + f I TITLE_HEIGHT r field_33055 + f I EXPIRATION_NOTIFICATION_DAYS s field_33057 + f J SIZE_LIMIT u field_33058 + f I COLOR_DARK_GRAY v field_33061 + f I COLOR_MEDIUM_GRAY w field_33062 + f I COLOR_GREEN x field_33063 + f I COLOR_LINK y field_33040 + f I COLOR_LINK_HOVER z field_33041 + m (Lnet/minecraft/realms/RealmsLabel;)Lnet/minecraft/realms/RealmsLabel; addLabel a method_37107 + p 1 label + m (I)I row g method_25494 + p 0 position + m ()Lnet/minecraft/network/chat/Component; createLabelNarration m method_25495 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title +c net/minecraft/realms/RepeatedNarrator gwr net/minecraft/class_4907 + f F permitsPerSecond a field_22825 + f Ljava/util/concurrent/atomic/AtomicReference; params b field_22826 + m (Lnet/minecraft/client/GameNarrator;Lnet/minecraft/network/chat/Component;)V narrate a method_25499 + p 1 narrator + p 2 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/realms/RepeatedNarrator$Params;)Lnet/minecraft/realms/RepeatedNarrator$Params; method_25500 a method_25500 + m (Ljava/time/Duration;)V + p 1 duration +c net/minecraft/realms/RepeatedNarrator$Params gwr$a net/minecraft/class_4907$class_4908 + f Lnet/minecraft/network/chat/Component; narration a field_22827 + f Lcom/google/common/util/concurrent/RateLimiter; rateLimiter b field_22828 + m (Lnet/minecraft/network/chat/Component;Lcom/google/common/util/concurrent/RateLimiter;)V + p 1 narration + p 2 rateLimiter +c net/minecraft/realms/package-info gws net/minecraft/class_6276 +c net/minecraft/data/Main net/minecraft/data/Main net/minecraft/data/Main + m (Ljava/lang/String;)Ljava/nio/file/Path; method_4967 a method_4967 + m (Ljava/nio/file/Path;Ljava/util/Collection;ZZZZZLnet/minecraft/WorldVersion;Z)Lnet/minecraft/data/DataGenerator; createStandardGenerator a method_4968 + p 0 outputFolder + p 1 inputFolders + p 2 client + p 3 server + p 4 dev + p 5 reports + p 6 validate + p 7 version + p 8 alwaysGenerate + m (Ljava/util/Collection;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/structures/NbtToSnbt; method_46595 a method_46595 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/data/tags/TagsProvider;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/tags/VanillaItemTagsProvider; method_46599 a method_46599 + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/DataProvider$Factory; bindRegistries a method_46839 + p 0 tagProviderFactory + p 1 lookupProvider + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/DataProvider; method_46840 a method_46840 + m (Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/metadata/PackMetadataGenerator; method_52888 a method_52888 + m (Ljava/util/Collection;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/structures/SnbtToNbt; method_46598 b method_46598 + m (Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/metadata/PackMetadataGenerator; method_46597 b method_46597 + m ()V +c net/minecraft/server/Main net/minecraft/server/Main net/minecraft/server/Main + f Lorg/slf4j/Logger; LOGGER a field_24625 + m ()Z method_28126 a method_28126 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lcom/mojang/serialization/Dynamic;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Ljoptsimple/OptionSpec;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43612 a method_43612 + m (Lnet/minecraft/server/dedicated/DedicatedServerProperties;Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/server/packs/repository/PackRepository;)Lnet/minecraft/server/WorldLoader$InitConfig; loadOrCreateConfig a method_46219 + p 0 dedicatedServerProperties + p 1 dynamic + p 2 safeMode + p 3 packRepository + m (Lcom/mojang/serialization/Dynamic;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Ljoptsimple/OptionSpec;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_43613 a method_43613 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Lnet/minecraft/server/Services;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljava/lang/Thread;)Lnet/minecraft/server/dedicated/DedicatedServer; method_29734 a method_29734 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;ZLjava/util/function/BooleanSupplier;Lnet/minecraft/core/RegistryAccess;Z)V forceUpgrade a method_29173 + p 0 levelStorage + p 1 dataFixer + p 2 eraseCache + p 3 shouldContinue + p 4 registryAccess + p 5 recreateRegionFiles + m (Ljava/nio/file/Path;)V writePidFile a method_49066 + p 0 path + m ()V + m ()V +c net/minecraft/server/Main$1 net/minecraft/server/Main$1 net/minecraft/server/Main$1 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$dedicatedServer a field_4611 + m (Ljava/lang/String;Lnet/minecraft/server/dedicated/DedicatedServer;)V +c net/minecraft/client/main/Main net/minecraft/client/main/Main net/minecraft/client/main/Main + m (Ljava/lang/Integer;)Ljava/util/OptionalInt; ofNullable a method_21612 + p 0 value + m (Ljava/lang/String;)Ljava/lang/String; unescapeJavaArgument a method_53858 + p 0 arg + m (Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;)Ljava/lang/Object; parseArgument a method_11428 + c Gets the value of a specified command-line parameter from an OptionSet. If it doesn't exist, it returns the default value for the parameter. + p 0 set + p 1 option + m (Ljava/lang/String;)Ljava/util/Optional; emptyStringToEmptyOptional b method_38752 + p 0 input + m (Ljava/lang/String;)Z stringHasValue c method_11429 + c Returns {@code true} if the given string is neither null nor empty. + p 0 str + m ()V + m ()V +c net/minecraft/client/main/Main$1 net/minecraft/client/main/Main$1 net/minecraft/client/main/Main$1 + f Ljava/lang/String; val$proxyUser a field_12139 + f Ljava/lang/String; val$proxyPass b field_12140 + m (Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/server/MinecraftServer net/minecraft/server/MinecraftServer net/minecraft/server/MinecraftServer + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler A field_16258 + f Ljava/util/function/Consumer; onMetricsRecordingStopped B field_33975 + f Ljava/util/function/Consumer; onMetricsRecordingFinished C field_33976 + f Z willStartRecordingMetrics D field_33977 + f Lnet/minecraft/server/MinecraftServer$TimeProfiler; debugCommandProfiler E field_33978 + f Z debugCommandProfilerDelayStart F field_33979 + f Lnet/minecraft/server/network/ServerConnectionListener; connection G field_4563 + f Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory; progressListenerFactory H field_17439 + f Lnet/minecraft/network/protocol/status/ServerStatus; status I field_4593 + f Lnet/minecraft/network/protocol/status/ServerStatus$Favicon; statusIcon J field_42958 + f Lnet/minecraft/util/RandomSource; random K field_4602 + f Lcom/mojang/datafixers/DataFixer; fixerUpper L field_4587 + f Ljava/lang/String; localIp M field_4585 + f I port N field_4555 + f Lnet/minecraft/core/LayeredRegistryAccess; registries O field_25132 + f Ljava/util/Map; levels P field_4589 + f Lnet/minecraft/server/players/PlayerList; playerList Q field_4550 + f Z running R field_4544 + f Z stopped S field_4561 + f I tickCount T field_4572 + f I ticksUntilAutosave U field_47135 + f Z onlineMode V field_4543 + f Z preventProxyConnections W field_4560 + f Z pvp X field_4604 + f Z allowFlight Y field_4554 + f Ljava/lang/String; motd Z field_4564 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager aA field_24370 + f Lnet/minecraft/server/ServerTickRateManager; tickRateManager aB field_47142 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing aC field_51466 + f Z isSaving aD field_35437 + f Ljava/util/concurrent/atomic/AtomicReference; fatalException aE field_51917 + f I playerIdleTimeout aa field_4596 + f [J tickTimesNanos ab field_47136 + f J aggregatedTickTimesNanos ac field_47137 + f Ljava/security/KeyPair; keyPair ad field_4552 + f Lcom/mojang/authlib/GameProfile; singleplayerProfile ae field_39214 + f Z isDemo af field_4549 + f Z isReady ag field_4547 + f J lastOverloadWarningNanos ah field_47138 + f J lastServerStatus ai field_4551 + f Ljava/lang/Thread; serverThread aj field_16257 + f J lastTickNanos ak field_48773 + f J taskExecutionStartNanos al field_48774 + f J idleTimeNanos am field_48775 + f J nextTickTimeNanos an field_47139 + f J delayedTasksMaxNextTickTimeNanos ao field_47140 + f Z mayHaveDelayedTasks ap field_19249 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository aq field_4595 + f Lnet/minecraft/server/ServerScoreboard; scoreboard ar field_4558 + f Lnet/minecraft/world/level/storage/CommandStorage; commandStorage as field_20850 + f Lnet/minecraft/server/bossevents/CustomBossEvents; customBossEvents at field_4548 + f Lnet/minecraft/server/ServerFunctionManager; functionManager au field_4591 + f Z enforceWhitelist av field_4570 + f F smoothedTickTimeMillis aw field_47141 + f Ljava/util/concurrent/Executor; executor ax field_17200 + f Ljava/lang/String; serverId ay field_17601 + f Lnet/minecraft/server/MinecraftServer$ReloadableResources; resources az field_25318 + f Ljava/lang/String; VANILLA_BRAND b field_34982 + f I ABSOLUTE_MAX_WORLD_SIZE c field_33211 + f Lnet/minecraft/world/level/LevelSettings; DEMO_SETTINGS d field_17704 + f Lcom/mojang/authlib/GameProfile; ANONYMOUS_PLAYER_PROFILE e field_35641 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; storageSource f field_23784 + f Lnet/minecraft/world/level/storage/PlayerDataStorage; playerDataStorage g field_24371 + f Ljava/net/Proxy; proxy h field_4599 + f Lnet/minecraft/server/Services; services i field_39440 + f Lnet/minecraft/world/level/storage/WorldData; worldData j field_24372 + f Lorg/slf4j/Logger; LOGGER k field_4546 + f F AVERAGE_TICK_TIME_SMOOTHING l field_33212 + f I TICK_STATS_SPAN m field_33213 + f J OVERLOADED_THRESHOLD_NANOS n field_47143 + f I OVERLOADED_TICKS_THRESHOLD o field_47144 + f J OVERLOADED_WARNING_INTERVAL_NANOS p field_47145 + f I OVERLOADED_TICKS_WARNING_INTERVAL q field_47146 + f J STATUS_EXPIRE_TIME_NANOS r field_47147 + f J PREPARE_LEVELS_DEFAULT_DELAY_NANOS s field_47148 + f I MAX_STATUS_PLAYER_SAMPLE t field_33218 + f I SPAWN_POSITION_SEARCH_RADIUS u field_48466 + f I AUTOSAVE_INTERVAL v field_33220 + f I MIMINUM_AUTOSAVE_TICKS w field_47149 + f I MAX_TICK_LATENCY x field_33221 + f Ljava/util/List; tickables y field_4568 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; metricsRecorder z field_22250 + m ()Ljava/util/Optional; getWorldScreenshotFile C method_3725 + m ()Ljava/nio/file/Path; getServerDirectory D method_3831 + m ()Z isPaused E method_54809 + m ()V onTickRateChanged F method_54831 + m ()V forceTimeSynchronization G method_49749 + m ()Z isShutdown H method_16043 + m ()Lnet/minecraft/server/level/ServerLevel; overworld I method_30002 + m ()Ljava/util/Set; levelKeys J method_29435 + m ()Ljava/lang/Iterable; getAllLevels K method_3738 + m ()[Ljava/lang/String; getPlayerNames O method_3858 + c Returns an array of the usernames of all the connected players. + m ()Lnet/minecraft/util/ModCheck; getModdedStatus P method_24307 + m ()Ljava/security/KeyPair; getKeyPair Q method_3716 + c Gets KeyPair instanced in MinecraftServer. + m ()I getPort R method_3756 + c Gets serverPort. + m ()Lcom/mojang/authlib/GameProfile; getSingleplayerProfile S method_43824 + m ()Z isSingleplayer T method_3724 + m ()V initializeKeyPair U method_31400 + m ()Z isSpawningMonsters V method_3783 + m ()Z isDemo W method_3799 + c Gets whether this is a demo or not. + m ()Ljava/util/Optional; getServerResourcePack X method_43659 + m ()Z isResourcePackRequired Y method_32303 + m ()Z usesAuthentication Z method_3828 + m (I)V setPort a method_3779 + p 1 port + m (J)V logTickMethodTime a method_56602 + p 1 startTime + m (Lnet/minecraft/SystemReport;)Lnet/minecraft/SystemReport; fillServerSystemReport a method_3859 + p 1 report + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/server/level/ServerLevel; getLevel a method_3847 + c Gets the worldServer by the given dimension. + p 1 dimension + m (Lnet/minecraft/server/TickTask;)Z shouldRun a method_19464 + p 1 runnable + m (Lnet/minecraft/server/level/ServerLevel;)I getSpawnRadius a method_3829 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerChunkCache;Lnet/minecraft/world/level/storage/ServerLevelData;Lnet/minecraft/core/Holder$Reference;)V method_46841 a method_46841 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/ServerLevelData;ZZ)V setInitialSpawn a method_27901 + p 0 level + p 1 levelData + p 2 generateBonusChest + p 3 debug + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z isUnderSpawnProtection a method_3785 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/network/TextFilter; createTextFilterForPlayer a method_31371 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V subscribeToDebugSample a method_56625 + p 1 player + p 2 sampleType + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;)V createLevels a method_3786 + p 1 listener + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/flag/FeatureFlagSet;)V enableForcedFeaturePacks a method_59847 + p 0 packRepository + p 1 enabledFeatures + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;ZZ)Lnet/minecraft/world/level/WorldDataConfiguration; configurePackRepository a method_29736 + p 0 packRepository + p 1 initialDataConfig + p 2 initMode + p 3 safeMode + m (Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/Collection;Lnet/minecraft/world/flag/FeatureFlagSet;Z)Lnet/minecraft/world/level/WorldDataConfiguration; configureRepositoryWithSelection a method_59848 + p 0 packRepository + p 1 selectedPacks + p 2 enabledFeatures + p 3 safeMode + m (Lnet/minecraft/server/packs/repository/PackRepository;Z)Lnet/minecraft/world/level/DataPackConfig; getSelectedPacks a method_29735 + p 0 packRepository + p 1 safeMode + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;)Lnet/minecraft/server/MinecraftServer$ReloadableResources; method_40374 a method_40374 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Throwable;)V method_40375 a method_40375 + m (Lnet/minecraft/server/players/PlayerList;)V setPlayerList a method_3846 + p 1 list + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_38580 a method_38580 + m (Lnet/minecraft/util/profiling/ProfileResults;)V method_37318 a method_37318 + m (Lnet/minecraft/world/Difficulty;Z)V setDifficulty a method_3776 + p 1 difficulty + p 2 forced + m (Lcom/google/common/collect/ImmutableList;)Ljava/util/concurrent/CompletionStage; method_29437 a method_29437 + m (Lcom/mojang/authlib/GameProfile;)Z isSingleplayerOwner a method_19466 + p 1 profile + m (Lnet/minecraft/world/level/GameType;)V setDefaultGameType a method_3838 + c Sets the game type for all worlds. + p 1 gameMode + m (Lnet/minecraft/world/level/GameType;ZI)Z publishServer a method_3763 + p 1 gameMode + p 2 commands + p 3 port + m (Lnet/minecraft/world/level/Level;)Z isLevelEnabled a method_60671 + p 1 level + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)Ljava/lang/String; method_61087 a method_61087 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/CrashReport;Lnet/minecraft/world/level/ChunkPos;)V method_61088 a method_61088 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V readScoreboard a method_17976 + p 1 dataStorage + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; getWorldPath a method_27050 + p 1 levelResource + m (Lnet/minecraft/world/level/storage/WorldData;)V setupDebugLevel a method_17977 + p 1 worldData + m (Lnet/minecraft/commands/CommandSourceStack;)V kickUnlistedPlayers a method_3728 + p 1 commandSource + m (Ljava/lang/Runnable;)Lnet/minecraft/server/TickTask; wrapRunnable a method_16209 + p 1 runnable + m (Ljava/lang/RuntimeException;)V setFatalException a method_60582 + p 0 fatalException + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_3854 a method_3854 + m (Ljava/lang/Throwable;)Lnet/minecraft/CrashReport; constructOrExtractCrashReport a method_40376 + p 0 cause + m (Ljava/nio/file/Path;)V dumpServerProperties a method_37113 + p 1 path + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; reloadResources a method_29439 + c Replaces currently selected list of datapacks, reloads them, and sends new data to players. + p 1 selectedIds + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29738 a method_29738 + m (Ljava/util/Collection;Lnet/minecraft/server/MinecraftServer$ReloadableResources;)V method_29440 a method_29440 + m (Ljava/util/concurrent/atomic/AtomicReference;)V method_29739 a method_29739 + m (Ljava/util/function/BooleanSupplier;)V tickServer a method_3748 + c Main function called by run() every loop. + p 1 hasTimeLeft + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_37319 a method_37319 + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V startRecordingMetrics a method_37320 + p 1 output + p 2 onMetricsRecordingFinished + m (Ljava/util/function/Function;)Lnet/minecraft/server/MinecraftServer; spin a method_29740 + p 0 threadFunction + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46842 a method_46842 + m (Lnet/minecraft/CrashReport;)V onServerCrash a method_3744 + c Called on exit from the main run() loop. + p 1 report + m (Lnet/minecraft/CrashReport;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)V storeChunkIoError a method_61089 + p 1 crashReport + p 2 chunkPos + p 3 regionStorageInfo + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;Ljava/lang/String;)V logChatMessage a method_43614 + p 1 content + p 2 boundChatType + p 3 header + m (Z)V halt a method_3747 + c Sets the serverRunning variable to false, in order to get the server to shut down. + p 1 waitForServer + m (ZZZ)Z saveAllChunks a method_3723 + p 1 suppressLog + p 2 flush + p 3 forced + m ()I getCompressionThreshold aA method_3773 + c The compression threshold. If the packet is larger than the specified amount of bytes, it will be compressed + m ()Z enforceSecureProfile aB method_43500 + m ()J getNextTickTime aC method_3826 + m ()Lcom/mojang/datafixers/DataFixer; getFixerUpper aD method_3855 + m ()Lnet/minecraft/server/ServerAdvancementManager; getAdvancements aE method_3851 + m ()Lnet/minecraft/server/ServerFunctionManager; getFunctions aF method_3740 + m ()Lnet/minecraft/server/packs/repository/PackRepository; getPackRepository aG method_3836 + m ()Lnet/minecraft/commands/Commands; getCommands aH method_3734 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack aI method_3739 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager aJ method_3772 + m ()Lnet/minecraft/server/ServerScoreboard; getScoreboard aK method_3845 + m ()Lnet/minecraft/world/level/storage/CommandStorage; getCommandStorage aL method_22827 + m ()Lnet/minecraft/world/level/GameRules; getGameRules aM method_3767 + m ()Lnet/minecraft/server/bossevents/CustomBossEvents; getCustomBossEvents aN method_3837 + m ()Z isEnforceWhitelist aO method_3729 + m ()F getCurrentSmoothedTickTime aP method_54832 + m ()Lnet/minecraft/server/ServerTickRateManager; tickRateManager aQ method_54833 + m ()J getAverageTickTimeNanos aR method_54834 + m ()[J getTickTimesNanos aS method_54835 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler aT method_16044 + m ()V endMetricsRecordingTick aU method_24490 + m ()Z isRecordingMetrics aV method_37321 + m ()V stopRecordingMetrics aW method_37322 + m ()V finishRecordingMetrics aX method_37323 + m ()V cancelRecordingMetrics aY method_42062 + m ()Z forceSynchronousWrites aZ method_27051 + m (Ljava/lang/String;)V setLocalIp a_ method_3842 + p 1 localIp + m ()Z getPreventProxyConnections aa method_3775 + m ()Z isSpawningAnimals ab method_3796 + m ()Z areNpcsEnabled ac method_3736 + m ()Z isPvpAllowed ad method_3852 + m ()Z isFlightAllowed ae method_3718 + m ()Z isStopped ag method_3750 + m ()Lnet/minecraft/server/players/PlayerList; getPlayerList ah method_3760 + m ()Lnet/minecraft/server/network/ServerConnectionListener; getConnection ai method_3787 + m ()Z isReady aj method_3820 + m ()Z hasGui ak method_3727 + m ()I getTickCount al method_3780 + m ()I getSpawnProtectionRadius am method_3841 + c Return the spawn protection area's size. + m ()Z repliesToStatus an method_27902 + m ()Z hidesOnlinePlayers ao method_39424 + m ()Ljava/net/Proxy; getProxy ap method_36113 + m ()I getPlayerIdleTimeout aq method_3862 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getSessionService ar method_3844 + m ()Lnet/minecraft/util/SignatureValidator; getProfileKeySignatureValidator as method_44301 + m ()Lcom/mojang/authlib/GameProfileRepository; getProfileRepository at method_3719 + m ()Lnet/minecraft/server/players/GameProfileCache; getProfileCache au method_3793 + m ()Lnet/minecraft/network/protocol/status/ServerStatus; getStatus av method_3765 + m ()V invalidateStatus aw method_3856 + m ()I getAbsoluteMaxWorldSize ax method_3749 + m (I)I getScaledTrackingDistance b method_27903 + p 1 trackingDistance + m (Lnet/minecraft/SystemReport;)Lnet/minecraft/SystemReport; fillSystemReport b method_37324 + p 1 systemReport + m (Lnet/minecraft/server/TickTask;)V doRunTask b method_24306 + p 1 task + m (Lnet/minecraft/server/level/ServerLevel;)V synchronizeTime b method_49750 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/level/ServerPlayerGameMode; createGameModeForPlayer b method_32816 + p 1 player + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;)V prepareLevels b method_3774 + c Loads the spawn chunks and any forced chunks + p 1 listener + m (Lcom/mojang/authlib/GameProfile;)V setSingleplayerProfile b method_43825 + p 1 singleplayerProfile + m (Ljava/lang/Runnable;)V addTickable b method_3742 + p 1 tickable + m (Ljava/lang/String;)V setId b method_17819 + p 1 serverId + m (Ljava/nio/file/Path;)V saveDebugReport b method_21613 + p 1 path + m (Ljava/util/Collection;)Lcom/google/common/collect/ImmutableList; method_29442 b method_29442 + m (Z)V setDifficultyLocked b method_19467 + p 1 locked + m (ZZZ)Z saveEverything b method_39218 + p 1 suppressLog + p 2 flush + p 3 forced + m ()Ljava/util/Optional; loadStatusIcon bD method_49384 + m ()I computeNextAutosaveInterval bE method_54837 + m ()Lnet/minecraft/network/protocol/status/ServerStatus; buildServerStatus bF method_49385 + m ()Lnet/minecraft/network/protocol/status/ServerStatus$Players; buildPlayerStatus bG method_49386 + m ()V updateMobSpawningFlags bH method_27729 + m ()V startMetricsRecordingTick bI method_24487 + m ()Ljava/lang/String; method_37325 bJ method_37325 + m ()Ljava/lang/String; method_57961 bK method_57961 + m ()Ljava/lang/String; method_41237 bL method_41237 + m ()Ljava/lang/String; method_46222 bM method_46222 + m ()Ljava/lang/String; method_59849 bN method_59849 + m ()Ljava/lang/String; method_46223 bO method_46223 + m ()Ljava/lang/String; method_37327 bP method_37327 + m ()Ljava/lang/String; method_39965 bQ method_39965 + m ()Ljava/util/Optional; method_49383 bR method_49383 + m ()Z method_5387 bS method_5387 + m ()Z method_54836 bT method_54836 + m ()Z method_40055 bU method_40055 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; getStructureManager ba method_27727 + m ()Lnet/minecraft/world/level/storage/WorldData; getWorldData bb method_27728 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess bc method_30611 + m ()Lnet/minecraft/core/LayeredRegistryAccess; registries bd method_46221 + m ()Lnet/minecraft/server/ReloadableServerRegistries$Holder; reloadableRegistries be method_58576 + m ()Lnet/minecraft/world/level/GameType; getForcedGameType bf method_3761 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager bg method_34864 + m ()Z isCurrentlySaving bh method_39219 + m ()Z isTimeProfilerRunning bi method_24488 + m ()V startTimeProfiler bj method_3832 + m ()Lnet/minecraft/util/profiling/ProfileResults; stopTimeProfiler bk method_24489 + m ()I getMaxChainedNeighborUpdates bl method_41239 + m ()Lnet/minecraft/network/chat/ChatDecorator; getChatDecorator bm method_43929 + m ()Z logIPs bn method_52344 + m ()Z acceptsTransfers bo method_56040 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing bp method_59777 + m ()Lnet/minecraft/server/ServerLinks; serverLinks bq method_60672 + m ()V logFullTickTime br method_56603 + m ()V startMeasuringTaskExecutionTime bs method_56604 + m ()V finishMeasuringTaskExecutionTime bt method_56605 + m ()Z haveTime bu method_3866 + m ()Z pollTaskInternal bv method_20415 + m (I)V setPlayerIdleTimeout c method_3803 + p 1 idleTimeout + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/lang/String; method_3733 c method_3733 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendDifficultyUpdate c method_19465 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)I getProfilePermissions c method_3835 + p 1 profile + m (Ljava/lang/String;)Ljava/nio/file/Path; getFile c method_3758 + p 1 path + m (Ljava/nio/file/Path;)V dumpMiscStats c method_21692 + p 1 path + m (Ljava/util/function/BooleanSupplier;)V tickChildren c method_3813 + p 1 hasTimeLeft + m (Z)V setDemo c method_3730 + c Sets whether this is a demo or not. + p 1 demo + m (Lnet/minecraft/server/level/ServerLevel;)Z method_40056 d method_40056 + m (Lnet/minecraft/server/level/ServerPlayer;)V method_53501 d method_53501 + m (Ljava/lang/String;)V setMotd d method_3834 + p 1 motd + m (Ljava/nio/file/Path;)V dumpGameRules d method_21615 + p 1 path + m (Ljava/util/function/BooleanSupplier;)Z method_60583 d method_60583 + m (Z)V setUsesAuthentication d method_3864 + p 1 online + m ()Z initServer e method_3823 + c Initialises the server and starts it. + m (Ljava/nio/file/Path;)V dumpClasspath e method_21616 + p 1 path + m (Z)V setPreventProxyConnections e method_3764 + p 1 preventProxyConnections + m ()Lnet/minecraft/util/debugchart/SampleLogger; getTickTimeLogger f method_56593 + m (Ljava/nio/file/Path;)V dumpThreads f method_21713 + p 1 path + m (Z)V setPvpAllowed f method_3815 + p 1 allowPvp + m ()Z isTickTimeLoggingEnabled g method_56626 + m (Ljava/nio/file/Path;)V dumpNativeModules g method_38584 + p 1 path + m (Z)V setFlightAllowed g method_3745 + p 1 allow + m (Ljava/nio/file/Path;)V method_37370 h method_37370 + m (Z)V setEnforceWhitelist h method_3731 + p 1 whitelistEnabled + m ()V onServerExit i method_3821 + c Directly calls System.exit(0), instantly killing the program. + m (Ljava/nio/file/Path;)V method_37328 i method_37328 + m ()Z isHardcore j method_3754 + c Defaults to false. + m (Ljava/nio/file/Path;)Ljava/util/Optional; method_49387 j method_49387 + m ()I getOperatorUserPermissionLevel k method_3798 + m (Ljava/nio/file/Path;)Z method_49388 k method_49388 + m ()I getFunctionCompilationLevel l method_21714 + m (Ljava/nio/file/Path;)Z method_49389 l method_49389 + m ()Z shouldRconBroadcast m method_3732 + m (Ljava/nio/file/Path;)V method_37329 m method_37329 + m ()Z isDedicatedServer n method_3816 + m ()I getRateLimitPacketsPerSecond o method_30612 + m ()Z isEpollEnabled p method_3759 + c Get if native transport should be used. Native transport means linux server performance improvements and optimized packet sending/receiving on linux + m ()Z isCommandBlockEnabled q method_3812 + c Return whether command blocks are enabled. + m ()Z isPublished r method_3860 + c Returns {@code true} if this integrated server is open to LAN + m ()V forceDifficulty t method_27731 + m ()V loadLevel t_ method_3735 + m ()Lnet/minecraft/world/level/GameType; getDefaultGameType u_ method_3790 + m ()V stopServer v method_3782 + c Saves all necessary data as preparation for stopping the server. + m ()V waitUntilNextTick v_ method_16208 + c Runs all pending tasks and waits for more tasks until serverTime is reached. + m ()Ljava/lang/String; getLocalIp w method_3819 + c "getHostname" is already taken, but both return the hostname. + m ()Z isRunning x method_3806 + m ()V runServer y method_29741 + m ()Z throwIfFatalException z method_60584 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Ljava/net/Proxy;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 proxy + p 6 fixerUpper + p 7 services + p 8 progressListenerFactory + m ()V +c net/minecraft/server/MinecraftServer$1 net/minecraft/server/MinecraftServer$1 net/minecraft/server/MinecraftServer$1 + f Ljava/util/List; val$entries a field_34851 + f Lnet/minecraft/world/level/GameRules; val$gameRules b field_34852 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/List;Lnet/minecraft/world/level/GameRules;)V +c net/minecraft/server/MinecraftServer$ReloadableResources net/minecraft/server/MinecraftServer$a net/minecraft/server/MinecraftServer$class_6897 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_352 + f Lnet/minecraft/server/ReloadableServerResources; managers b comp_353 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_352 + m ()Lnet/minecraft/server/ReloadableServerResources; managers b comp_353 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;)V +c net/minecraft/server/MinecraftServer$ServerResourcePackInfo net/minecraft/server/MinecraftServer$b net/minecraft/server/MinecraftServer$class_7460 + f Ljava/util/UUID; id a comp_2156 + f Ljava/lang/String; url b comp_784 + f Ljava/lang/String; hash c comp_785 + f Z isRequired d comp_786 + f Lnet/minecraft/network/chat/Component; prompt e comp_787 + m ()Ljava/util/UUID; id a comp_2156 + m ()Ljava/lang/String; url b comp_784 + m ()Ljava/lang/String; hash c comp_785 + m ()Z isRequired d comp_786 + m ()Lnet/minecraft/network/chat/Component; prompt e comp_787 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)V +c net/minecraft/server/MinecraftServer$TimeProfiler net/minecraft/server/MinecraftServer$c net/minecraft/server/MinecraftServer$class_6414 + f J startNanos a field_33980 + f I startTick b field_33981 + m (JI)Lnet/minecraft/util/profiling/ProfileResults; stop a method_37330 + p 1 endTimeNano + p 3 endTimeTicks + m (JI)V + p 1 startNanos + p 3 startTick +c net/minecraft/server/MinecraftServer$TimeProfiler$1 net/minecraft/server/MinecraftServer$c$1 net/minecraft/server/MinecraftServer$class_6414$1 + f J val$stopNanos a field_39215 + f I val$stopTick b field_39216 + f Lnet/minecraft/server/MinecraftServer$TimeProfiler; field_39217 c field_39217 + m (Lnet/minecraft/server/MinecraftServer$TimeProfiler;JI)V +c com/mojang/blaze3d/systems/RenderSystem$1 com/mojang/blaze3d/systems/RenderSystem$1 com/mojang/blaze3d/systems/RenderSystem$1 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$Mode a field_38976 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$IndexType b field_27331 + m ()V +c com/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer com/mojang/blaze3d/systems/RenderSystem$a com/mojang/blaze3d/systems/RenderSystem$class_5590 + f I vertexStride a field_27332 + f I indexStride b field_27333 + f Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator; generator c field_27334 + f I name d field_27335 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; type e field_27336 + f I indexCount f field_27337 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; type a method_31924 + m (I)Z hasStorage a method_43409 + p 1 index + m (Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer; intConsumer a method_31922 + p 1 buffer + m (Ljava/nio/ByteBuffer;I)V method_31923 a method_31923 + m (I)V bind b method_43410 + p 1 index + m (I)V ensureStorage c method_31920 + p 1 neededIndexCount + m (IILcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator;)V + p 1 vertexStride + p 2 indexStride + p 3 generator +c com/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator com/mojang/blaze3d/systems/RenderSystem$a$a com/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591 +c net/minecraft/client/ClientBrandRetriever net/minecraft/client/ClientBrandRetriever net/minecraft/client/ClientBrandRetriever + f Ljava/lang/String; VANILLA_NAME a field_33204 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$BlendState com/mojang/blaze3d/platform/GlStateManager$a com/mojang/blaze3d/platform/GlStateManager$class_1017 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_5045 + f I srcRgb b field_5049 + f I dstRgb c field_5048 + f I srcAlpha d field_5047 + f I dstAlpha e field_5046 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$BooleanState com/mojang/blaze3d/platform/GlStateManager$b com/mojang/blaze3d/platform/GlStateManager$class_1018 + f I state a field_5050 + f Z enabled b field_5051 + m ()V disable a method_4469 + m (Z)V setEnabled a method_4470 + p 1 enabled + m ()V enable b method_4471 + m (I)V + p 1 state +c com/mojang/blaze3d/platform/GlStateManager$ColorLogicState com/mojang/blaze3d/platform/GlStateManager$c com/mojang/blaze3d/platform/GlStateManager$class_1021 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; enable a field_5058 + f I op b field_5059 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$ColorMask com/mojang/blaze3d/platform/GlStateManager$d com/mojang/blaze3d/platform/GlStateManager$class_1022 + f Z red a field_5063 + f Z green b field_5062 + f Z blue c field_5061 + f Z alpha d field_5060 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$CullState com/mojang/blaze3d/platform/GlStateManager$e com/mojang/blaze3d/platform/GlStateManager$class_1025 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; enable a field_5072 + f I mode b field_5073 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$DepthState com/mojang/blaze3d/platform/GlStateManager$f com/mojang/blaze3d/platform/GlStateManager$class_1026 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_5074 + f Z mask b field_5076 + f I func c field_5075 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$LogicOp com/mojang/blaze3d/platform/GlStateManager$g com/mojang/blaze3d/platform/GlStateManager$class_1030 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND a field_5120 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND_INVERTED b field_5112 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND_REVERSE c field_5117 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; CLEAR d field_5103 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; COPY e field_5118 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; COPY_INVERTED f field_5113 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; EQUIV g field_5119 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; INVERT h field_5109 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NAND i field_5114 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NOOP j field_5115 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NOR k field_5104 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR l field_5105 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR_INVERTED m field_5116 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR_REVERSE n field_5110 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; SET o field_5107 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; XOR p field_5111 + f I value q field_5108 + f [Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; $VALUES r field_5106 + m ()[Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; $values a method_36748 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c com/mojang/blaze3d/platform/GlStateManager$PolygonOffsetState com/mojang/blaze3d/platform/GlStateManager$h com/mojang/blaze3d/platform/GlStateManager$class_1031 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; fill a field_5123 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; line b field_5121 + f F factor c field_5124 + f F units d field_5122 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$ScissorState com/mojang/blaze3d/platform/GlStateManager$i com/mojang/blaze3d/platform/GlStateManager$class_5518 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_26840 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$StencilFunc com/mojang/blaze3d/platform/GlStateManager$j com/mojang/blaze3d/platform/GlStateManager$class_1034 + f I func a field_5148 + f I ref b field_16203 + f I mask c field_5147 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$StencilState com/mojang/blaze3d/platform/GlStateManager$k com/mojang/blaze3d/platform/GlStateManager$class_1035 + f Lcom/mojang/blaze3d/platform/GlStateManager$StencilFunc; func a field_5149 + f I mask b field_5153 + f I fail c field_5152 + f I zfail d field_5151 + f I zpass e field_5150 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$TextureState com/mojang/blaze3d/platform/GlStateManager$l com/mojang/blaze3d/platform/GlStateManager$class_1039 + f I binding a field_5167 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$Viewport com/mojang/blaze3d/platform/GlStateManager$m com/mojang/blaze3d/platform/GlStateManager$class_1040 + f Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; INSTANCE a field_5169 + f I x b field_5172 + f I y c field_5171 + f I width d field_5170 + f I height e field_5168 + f [Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; $VALUES f field_5173 + m ()I x a method_35330 + m ()I y b method_35331 + m ()I width c method_35332 + m ()I height d method_35333 + m ()[Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; $values e method_36749 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/platform/GlStateManager$DestFactor com/mojang/blaze3d/platform/GlStateManager$DestFactor com/mojang/blaze3d/platform/GlStateManager$class_4534 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c com/mojang/blaze3d/platform/GlStateManager$SourceFactor com/mojang/blaze3d/platform/GlStateManager$SourceFactor com/mojang/blaze3d/platform/GlStateManager$class_4535 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$Fields net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$a net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6778 + f Ljava/lang/String; REMOTE_ADDRESS a field_35642 + f Ljava/lang/String; SENT_BYTES b field_35643 + f Ljava/lang/String; RECEIVED_BYTES c field_35644 + f Ljava/lang/String; SENT_PACKETS d field_35645 + f Ljava/lang/String; RECEIVED_PACKETS e field_35646 + m ()V +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$SumAggregation net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$b net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6779 + f Ljava/util/concurrent/atomic/AtomicLong; sentBytes a field_35647 + f Ljava/util/concurrent/atomic/AtomicInteger; sentPackets b field_35648 + f Ljava/util/concurrent/atomic/AtomicLong; receivedBytes c field_35649 + f Ljava/util/concurrent/atomic/AtomicInteger; receivedPackets d field_35650 + f Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent; event e field_35651 + m ()V commitEvent a method_39494 + m (I)V trackSentPacket a method_39495 + p 1 delta + m (I)V trackReceivedPacket b method_39496 + p 1 delta + m (Ljava/lang/String;)V + p 1 remoteAddress +c net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$Fields net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$a net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$class_6601 + f Ljava/lang/String; AVERAGE_TICK_DURATION a field_34854 + m ()V +c net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$Fields net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$a net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$class_6602 + f Ljava/lang/String; WORLD_POS_X a field_34855 + f Ljava/lang/String; WORLD_POS_Z b field_34856 + f Ljava/lang/String; CHUNK_POS_X c field_34857 + f Ljava/lang/String; CHUNK_POS_Z d field_34858 + f Ljava/lang/String; STATUS e field_34859 + f Ljava/lang/String; LEVEL f field_34861 + m ()V diff --git a/fabric/.gradle/loom-cache/source_mappings/ce811f5551942c35b86e18cb6e64a69af8e3d925.tiny b/fabric/.gradle/loom-cache/source_mappings/ce811f5551942c35b86e18cb6e64a69af8e3d925.tiny new file mode 100644 index 0000000..5a1197f --- /dev/null +++ b/fabric/.gradle/loom-cache/source_mappings/ce811f5551942c35b86e18cb6e64a69af8e3d925.tiny @@ -0,0 +1,152950 @@ +tiny 2 0 named official intermediary +c com/mojang/math/Axis a net/minecraft/class_7833 + f Lcom/mojang/math/Axis; XN a field_40713 + f Lcom/mojang/math/Axis; XP b field_40714 + f Lcom/mojang/math/Axis; YN c field_40715 + f Lcom/mojang/math/Axis; YP d field_40716 + f Lcom/mojang/math/Axis; ZN e field_40717 + f Lcom/mojang/math/Axis; ZP f field_40718 + m (F)Lorg/joml/Quaternionf; method_46349 a method_46349 + m (Lorg/joml/Vector3f;F)Lorg/joml/Quaternionf; method_46350 a method_46350 + m (F)Lorg/joml/Quaternionf; method_46351 b method_46351 + m (F)Lorg/joml/Quaternionf; method_46352 c method_46352 + m (F)Lorg/joml/Quaternionf; method_46353 d method_46353 + m (F)Lorg/joml/Quaternionf; method_46354 e method_46354 + m (F)Lorg/joml/Quaternionf; method_46355 f method_46355 + m (Lorg/joml/Vector3f;)Lcom/mojang/math/Axis; of of method_46356 + p 0 axis + m ()V +c com/mojang/math/Constants b net/minecraft/class_5973 + f F PI a field_29658 + f F RAD_TO_DEG b field_29659 + f F DEG_TO_RAD c field_29660 + f F EPSILON d field_29661 + m ()V +c com/mojang/math/Divisor c net/minecraft/class_7836 + f I denominator a field_40738 + f I quotient b field_40739 + f I mod c field_40740 + f I returnedParts d field_40741 + f I remainder e field_40742 + m (II)Ljava/lang/Iterable; asIterable a method_46402 + p 0 numerator + p 1 denominator + m (II)Ljava/util/Iterator; method_46403 b method_46403 + m (II)V + p 1 numerator + p 2 denominator +c com/mojang/math/FieldsAreNonnullByDefault d net/minecraft/class_6037 +c com/mojang/math/GivensParameters e net/minecraft/class_8218 + f F sinHalf a comp_1317 + f F cosHalf b comp_1318 + m ()Lcom/mojang/math/GivensParameters; inverse a method_49725 + m (F)Lcom/mojang/math/GivensParameters; fromPositiveAngle a method_49726 + p 0 angle + m (FF)Lcom/mojang/math/GivensParameters; fromUnnormalized a method_49727 + p 0 sinHalf + p 1 cosHalf + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundX a method_49728 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundX a method_49729 + p 1 quaternion + m ()F cos b method_49730 + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundY b method_49731 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundY b method_49732 + p 1 quaternion + m ()F sin c method_49733 + m (Lorg/joml/Matrix3f;)Lorg/joml/Matrix3f; aroundZ c method_49734 + p 1 matrix + m (Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; aroundZ c method_49735 + p 1 quaternion + m ()F sinHalf d comp_1317 + m ()F cosHalf e comp_1318 + m (FF)V +c com/mojang/math/MatrixUtil f net/minecraft/class_7837 + f F G a field_40746 + f Lcom/mojang/math/GivensParameters; PI_4 b field_43146 + m (FF)Lcom/mojang/math/GivensParameters; qrGivensQuat a method_46410 + p 0 input1 + p 1 input2 + m (FFF)Lcom/mojang/math/GivensParameters; approxGivensQuat a method_46411 + m (Lorg/joml/Matrix3f;)Lorg/apache/commons/lang3/tuple/Triple; svdDecompose a method_46412 + p 0 matrix + m (Lorg/joml/Matrix3f;I)Lorg/joml/Quaternionf; eigenvalueJacobi a method_49741 + p 0 input + p 1 iterations + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;)V similarityTransform a method_49742 + p 0 input + p 1 tempStorage + m (Lorg/joml/Matrix3f;Lorg/joml/Matrix3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)V stepJacobi a method_46415 + p 0 input + p 1 tempStorage + p 2 resultEigenvector + p 3 resultEigenvalue + m (Lorg/joml/Matrix4f;)Z isPureTranslation a method_56826 + p 0 matrix + m (Lorg/joml/Matrix4f;F)Lorg/joml/Matrix4f; mulComponentWise a method_46414 + p 0 matrix + p 1 scalar + m (Lorg/joml/Matrix4f;)Z isOrthonormal b method_56827 + p 0 matrix + m ()V + m ()V +c com/mojang/math/MethodsReturnNonnullByDefault g net/minecraft/class_6216 +c com/mojang/math/OctahedralGroup h net/minecraft/class_4990 + f Lcom/mojang/math/OctahedralGroup; INVERT_Y A field_23266 + f Lcom/mojang/math/OctahedralGroup; INVERT_Z B field_23267 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NNN C field_23268 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NNP D field_23269 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NPN E field_23270 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_NPP F field_23271 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PNN G field_23272 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PNP H field_23273 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PPN I field_23274 + f Lcom/mojang/math/OctahedralGroup; ROT_60_REF_PPP J field_23275 + f Lcom/mojang/math/OctahedralGroup; SWAP_XY K field_23276 + f Lcom/mojang/math/OctahedralGroup; SWAP_YZ L field_23277 + f Lcom/mojang/math/OctahedralGroup; SWAP_XZ M field_23278 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_XY N field_23279 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_YZ O field_23280 + f Lcom/mojang/math/OctahedralGroup; SWAP_NEG_XZ P field_23281 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_X_NEG Q field_23282 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_X_POS R field_23283 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Y_NEG S field_23284 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Y_POS T field_23285 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Z_NEG U field_23286 + f Lcom/mojang/math/OctahedralGroup; ROT_90_REF_Z_POS V field_23287 + f Lorg/joml/Matrix3f; transformation X field_23288 + f Ljava/lang/String; name Y field_23289 + f Ljava/util/Map; rotatedDirections Z field_23290 + f Lcom/mojang/math/OctahedralGroup; IDENTITY a field_23292 + f Z invertX aa field_23291 + f Z invertY ab field_23293 + f Z invertZ ac field_23294 + f Lcom/mojang/math/SymmetricGroup3; permutation ad field_23295 + f [[Lcom/mojang/math/OctahedralGroup; cayleyTable ae field_23296 + f [Lcom/mojang/math/OctahedralGroup; inverseTable af field_23297 + f [Lcom/mojang/math/OctahedralGroup; $VALUES ag field_23298 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_XY b field_23299 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_XZ c field_23300 + f Lcom/mojang/math/OctahedralGroup; ROT_180_FACE_YZ d field_23301 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NNN e field_23302 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NNP f field_23303 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NPN g field_23304 + f Lcom/mojang/math/OctahedralGroup; ROT_120_NPP h field_23305 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PNN i field_23306 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PNP j field_23307 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PPN k field_23308 + f Lcom/mojang/math/OctahedralGroup; ROT_120_PPP l field_23309 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XY_NEG m field_23310 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XY_POS n field_23311 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XZ_NEG o field_23312 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_XZ_POS p field_23313 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_YZ_NEG q field_23314 + f Lcom/mojang/math/OctahedralGroup; ROT_180_EDGE_YZ_POS r field_23315 + f Lcom/mojang/math/OctahedralGroup; ROT_90_X_NEG s field_23316 + f Lcom/mojang/math/OctahedralGroup; ROT_90_X_POS t field_23317 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Y_NEG u field_23318 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Y_POS v field_23319 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Z_NEG w field_23320 + f Lcom/mojang/math/OctahedralGroup; ROT_90_Z_POS x field_23321 + f Lcom/mojang/math/OctahedralGroup; INVERSION y field_23322 + f Lcom/mojang/math/OctahedralGroup; INVERT_X z field_23323 + m ()Lcom/mojang/math/OctahedralGroup; inverse a method_35813 + m (I)[Lcom/mojang/math/OctahedralGroup; method_26384 a method_26384 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; compose a method_26385 + p 1 other + m (Lcom/mojang/math/OctahedralGroup;Lcom/mojang/math/OctahedralGroup;)Z method_26386 a method_26386 + m (Lnet/minecraft/core/Direction$Axis;)Z inverts a method_26387 + p 1 axis + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_26388 + p 1 direction + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/core/FrontAndTop; rotate a method_26389 + p 1 frontAndTop + m ([[Lcom/mojang/math/OctahedralGroup;)V method_26390 a method_26390 + m ()Lorg/joml/Matrix3f; transformation b method_35814 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; method_26392 b method_26392 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/math/OctahedralGroup; method_26393 c method_26393 + m ()Lit/unimi/dsi/fastutil/booleans/BooleanList; packInversions d method_26391 + m (Lcom/mojang/math/OctahedralGroup;)Lcom/mojang/datafixers/util/Pair; method_26394 d method_26394 + m ()[Lcom/mojang/math/OctahedralGroup; $values e method_36928 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/SymmetricGroup3;ZZZ)V + p 3 name + p 4 permutation + p 5 invertX + p 6 invertY + p 7 invertZ + m ()V +c com/mojang/math/OctahedralGroup$1 h$1 net/minecraft/class_4990$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_23324 + m ()V +c com/mojang/math/SymmetricGroup3 i net/minecraft/class_4998 + c The symmetric group S3, also known as all the permutation orders of three elements. + f Lcom/mojang/math/SymmetricGroup3; P123 a field_23362 + f Lcom/mojang/math/SymmetricGroup3; P213 b field_23363 + f Lcom/mojang/math/SymmetricGroup3; P132 c field_23364 + f Lcom/mojang/math/SymmetricGroup3; P231 d field_23365 + f Lcom/mojang/math/SymmetricGroup3; P312 e field_23366 + f Lcom/mojang/math/SymmetricGroup3; P321 f field_23367 + f [I permutation g field_23368 + f Lorg/joml/Matrix3f; transformation h field_23369 + f I ORDER i field_33113 + f [[Lcom/mojang/math/SymmetricGroup3; cayleyTable j field_23370 + f [Lcom/mojang/math/SymmetricGroup3; $VALUES k field_23371 + m ()Lorg/joml/Matrix3f; transformation a method_26416 + m (I)I permutation a method_26417 + p 1 element + m (Lcom/mojang/math/SymmetricGroup3;)Lcom/mojang/math/SymmetricGroup3; compose a method_26418 + p 1 other + m ([ILcom/mojang/math/SymmetricGroup3;)Z method_26419 a method_26419 + m ([[Lcom/mojang/math/SymmetricGroup3;)V method_26420 a method_26420 + m ()[Lcom/mojang/math/SymmetricGroup3; $values b method_36937 + m (Ljava/lang/String;IIII)V + p 3 first + p 4 second + p 5 third + m ()V +c com/mojang/math/Transformation j net/minecraft/class_4590 + f Lcom/mojang/serialization/Codec; CODEC a field_42532 + f Lcom/mojang/serialization/Codec; EXTENDED_CODEC b field_42533 + f Lorg/joml/Matrix4f; matrix c field_20900 + f Z decomposed d field_20901 + f Lorg/joml/Vector3f; translation e field_20902 + f Lorg/joml/Quaternionf; leftRotation f field_20903 + f Lorg/joml/Vector3f; scale g field_20904 + f Lorg/joml/Quaternionf; rightRotation h field_20905 + f Lcom/mojang/math/Transformation; IDENTITY i field_20906 + m ()Lcom/mojang/math/Transformation; identity a method_22931 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49059 a method_49059 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; compose a method_22933 + p 1 other + m (Lcom/mojang/math/Transformation;F)Lcom/mojang/math/Transformation; slerp a method_35864 + p 1 transformation + p 2 delta + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;)Lorg/joml/Matrix4f; compose a method_22934 + p 0 translation + p 1 leftRotation + p 2 scale + p 3 rightRotation + m ()Lcom/mojang/math/Transformation; inverse b method_22935 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Quaternionf; method_49062 b method_49062 + m ()Lorg/joml/Matrix4f; getMatrix c method_22936 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Vector3f; method_49063 c method_49063 + m ()Lorg/joml/Vector3f; getTranslation d method_35865 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Quaternionf; method_49064 d method_49064 + m ()Lorg/joml/Quaternionf; getLeftRotation e method_22937 + m (Lcom/mojang/math/Transformation;)Lorg/joml/Vector3f; method_49065 e method_49065 + m ()Lorg/joml/Vector3f; getScale f method_35866 + m ()Lorg/joml/Quaternionf; getRightRotation g method_35867 + m ()V ensureDecomposed h method_22938 + m ()Lcom/mojang/math/Transformation; method_22939 i method_22939 + m (Lorg/joml/Matrix4f;)V + p 1 matrix + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Vector3f;Lorg/joml/Quaternionf;)V + p 1 translation + p 2 leftRotation + p 3 scale + p 4 rightRotation + m ()V +c com/mojang/math/package-info k net/minecraft/class_6305 +c net/minecraft/BlockUtil l net/minecraft/class_5459 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getTopConnectedBlock a method_34851 + p 0 getter + p 1 pos + p 2 baseBlock + p 3 direction + p 4 endBlock + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;I)I getLimit a method_30575 + c Finds the distance we can travel in the given direction while the predicate returns true + p 0 posPredicate + p 1 centerPos + p 2 direction + p 3 max + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;ILnet/minecraft/core/Direction$Axis;ILjava/util/function/Predicate;)Lnet/minecraft/BlockUtil$FoundRectangle; getLargestRectangleAround a method_30574 + c Finds the rectangle with the largest area containing centerPos within the blocks specified by the predicate + p 0 centerPos + p 1 axis1 + p 2 max1 + p 3 axis2 + p 4 max2 + p 5 posPredicate + m ([I)Lcom/mojang/datafixers/util/Pair; getMaxRectangleLocation a method_30576 + c Finds the largest rectangle within the array of heights + p 0 heights + m ()V +c net/minecraft/BlockUtil$FoundRectangle l$a net/minecraft/class_5459$class_5460 + f Lnet/minecraft/core/BlockPos; minCorner a field_25936 + c Starting position of the rectangle represented by this result + f I axis1Size b field_25937 + c Distance between minimum and maximum values on the first axis argument + f I axis2Size c field_25938 + c Distance between minimum and maximum values on the second axis argument + m (Lnet/minecraft/core/BlockPos;II)V + p 1 minCorner + p 2 axis1Size + p 3 axis2Size +c net/minecraft/BlockUtil$IntBounds l$b net/minecraft/class_5459$class_5461 + f I min a field_25939 + c The minimum bound + f I max b field_25940 + c The maximum bound + m (II)V + p 1 min + p 2 max +c net/minecraft/CharPredicate m net/minecraft/class_5462 + m (C)Z method_36124 a method_36124 + m (Lnet/minecraft/CharPredicate;C)Z method_36126 a method_36126 + m (Lnet/minecraft/CharPredicate;)Lnet/minecraft/CharPredicate; and and method_36125 + p 1 predicate + m (Lnet/minecraft/CharPredicate;C)Z method_36128 b method_36128 + m ()Lnet/minecraft/CharPredicate; negate negate method_36123 + m (Lnet/minecraft/CharPredicate;)Lnet/minecraft/CharPredicate; or or method_36127 + p 1 predicate +c net/minecraft/ChatFormatting n net/minecraft/class_124 + f Ljava/lang/String; name A field_1057 + c The name of this color/formatting + f C code B field_1059 + f Z isFormat C field_1081 + f Ljava/lang/String; toString D field_1069 + f I id E field_1071 + c The numerical index that represents this color + f Ljava/lang/Integer; color F field_1053 + f [Lnet/minecraft/ChatFormatting; $VALUES G field_1072 + f Lnet/minecraft/ChatFormatting; BLACK a field_1074 + f Lnet/minecraft/ChatFormatting; DARK_BLUE b field_1058 + f Lnet/minecraft/ChatFormatting; DARK_GREEN c field_1077 + f Lnet/minecraft/ChatFormatting; DARK_AQUA d field_1062 + f Lnet/minecraft/ChatFormatting; DARK_RED e field_1079 + f Lnet/minecraft/ChatFormatting; DARK_PURPLE f field_1064 + f Lnet/minecraft/ChatFormatting; GOLD g field_1065 + f Lnet/minecraft/ChatFormatting; GRAY h field_1080 + f Lnet/minecraft/ChatFormatting; DARK_GRAY i field_1063 + f Lnet/minecraft/ChatFormatting; BLUE j field_1078 + f Lnet/minecraft/ChatFormatting; GREEN k field_1060 + f Lnet/minecraft/ChatFormatting; AQUA l field_1075 + f Lnet/minecraft/ChatFormatting; RED m field_1061 + f Lnet/minecraft/ChatFormatting; LIGHT_PURPLE n field_1076 + f Lnet/minecraft/ChatFormatting; YELLOW o field_1054 + f Lnet/minecraft/ChatFormatting; WHITE p field_1068 + f Lnet/minecraft/ChatFormatting; OBFUSCATED q field_1051 + f Lnet/minecraft/ChatFormatting; BOLD r field_1067 + f Lnet/minecraft/ChatFormatting; STRIKETHROUGH s field_1055 + f Lnet/minecraft/ChatFormatting; UNDERLINE t field_1073 + f Lnet/minecraft/ChatFormatting; ITALIC u field_1056 + f Lnet/minecraft/ChatFormatting; RESET v field_1070 + f Lcom/mojang/serialization/Codec; CODEC w field_39218 + f C PREFIX_CODE x field_33292 + f Ljava/util/Map; FORMATTING_BY_NAME y field_1052 + f Ljava/util/regex/Pattern; STRIP_FORMATTING_PATTERN z field_1066 + m ()C getChar a method_36145 + m (C)Lnet/minecraft/ChatFormatting; getByCode a method_544 + p 0 formattingCode + m (I)Lnet/minecraft/ChatFormatting; getById a method_534 + c Get a TextFormatting from its color index + p 0 index + m (Ljava/lang/String;)Ljava/lang/String; stripFormatting a method_539 + c Returns a copy of the given string, with formatting codes stripped away. + p 0 text + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/ChatFormatting; method_541 a method_541 + m (ZZ)Ljava/util/Collection; getNames a method_540 + c Gets all the valid values. + p 0 getColor + p 1 getFancyStyling + m ()I getId b method_536 + c Returns the numerical color index that represents this formatting + m (Ljava/lang/String;)Lnet/minecraft/ChatFormatting; getByName b method_533 + c Gets a value by its friendly name null if the given name does not map to a defined value. + p 0 friendlyName + m (Lnet/minecraft/ChatFormatting;)Ljava/lang/String; method_531 b method_531 + m (Ljava/lang/String;)Ljava/lang/String; cleanName c method_535 + p 0 string + m ()Z isFormat d method_542 + c False if this is just changing the color or resetting true otherwise. + m ()Z isColor e method_543 + c Checks if this is a color code. + m ()Ljava/lang/Integer; getColor f method_532 + m ()Ljava/lang/String; getName g method_537 + c Gets the friendly name of this value. + m ()[Lnet/minecraft/ChatFormatting; $values h method_36946 + m (Ljava/lang/String;ILjava/lang/String;CILjava/lang/Integer;)V + p 3 name + p 4 code + p 5 id + p 6 color + m (Ljava/lang/String;ILjava/lang/String;CZ)V + p 3 name + p 4 code + p 5 isFormat + m (Ljava/lang/String;ILjava/lang/String;CZILjava/lang/Integer;)V + p 3 name + p 4 code + p 5 isFormat + p 6 id + p 7 color + m ()V +c net/minecraft/CrashReport o net/minecraft/class_128 + f Lorg/slf4j/Logger; LOGGER a field_1091 + f Ljava/time/format/DateTimeFormatter; DATE_TIME_FORMATTER b field_39880 + f Ljava/lang/String; title c field_1087 + f Ljava/lang/Throwable; exception d field_1093 + f Ljava/util/List; details e field_1089 + f Ljava/nio/file/Path; saveFile f field_1090 + f Z trackingStackTrace g field_1086 + f [Ljava/lang/StackTraceElement; uncategorizedStackTrace h field_1088 + f Lnet/minecraft/SystemReport; systemReport i field_1092 + m ()Ljava/lang/String; getTitle a method_561 + c Returns the description of the Crash Report. + m (Ljava/lang/String;)Lnet/minecraft/CrashReportCategory; addCategory a method_562 + c Creates a CrashReportCategory + p 1 name + m (Ljava/lang/String;I)Lnet/minecraft/CrashReportCategory; addCategory a method_556 + c Creates a CrashReportCategory for the given stack trace depth + p 1 categoryName + p 2 stacktraceLength + m (Ljava/lang/StringBuilder;)V getDetails a method_555 + c Gets the various sections of the crash report into the given StringBuilder + p 1 builder + m (Ljava/lang/Throwable;Ljava/lang/String;)Lnet/minecraft/CrashReport; forThrowable a method_560 + c Creates a crash report for the exception + p 0 cause + p 1 description + m (Ljava/nio/file/Path;Lnet/minecraft/ReportType;)Z saveToFile a method_60919 + p 1 path + p 2 type + m (Ljava/nio/file/Path;Lnet/minecraft/ReportType;Ljava/util/List;)Z saveToFile a method_569 + p 1 path + p 2 type + p 3 links + m (Lnet/minecraft/ReportType;)Ljava/lang/String; getFriendlyReport a method_60920 + p 1 type + m (Lnet/minecraft/ReportType;Ljava/util/List;)Ljava/lang/String; getFriendlyReport a method_60921 + p 1 type + p 2 links + m ()Ljava/lang/Throwable; getException b method_564 + c Returns the Throwable object that is the cause for the crash and Crash Report. + m ()Ljava/lang/String; getDetails c method_36147 + m ()Ljava/lang/String; getExceptionMessage d method_557 + c Gets the stack trace of the Throwable that caused this crash report, or if that fails, the cause {@code .toString()}. + m ()Ljava/nio/file/Path; getSaveFile e method_572 + m ()Lnet/minecraft/SystemReport; getSystemReport f method_567 + m ()V preload g method_24305 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 title + p 2 exception + m ()V +c net/minecraft/CrashReportCategory p net/minecraft/class_129 + f Ljava/lang/String; title a field_1096 + f Ljava/util/List; entries b field_1094 + f [Ljava/lang/StackTraceElement; stackTrace c field_1097 + m ()[Ljava/lang/StackTraceElement; getStacktrace a method_575 + m (I)I fillInStackTrace a method_579 + c Resets our stack trace according to the current trace, pruning the deepest 3 entries. The parameter indicates how many additional deepest entries to prune. Returns the number of entries in the resulting pruned stack trace. + p 1 size + m (Lnet/minecraft/world/level/LevelHeightAccessor;DDD)Ljava/lang/String; formatLocation a method_583 + p 0 levelHeightAccess + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;III)Ljava/lang/String; formatLocation a method_581 + p 0 levelHeightAccess + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; formatLocation a method_582 + p 0 levelHeightAccess + p 1 pos + m (Ljava/lang/StackTraceElement;Ljava/lang/StackTraceElement;)Z validateStackTrace a method_584 + c Do the deepest two elements of our saved stack trace match the given elements, in order from the deepest? + p 1 s1 + p 2 s2 + m (Ljava/lang/String;Ljava/lang/Object;)Lnet/minecraft/CrashReportCategory; setDetail a method_578 + c Adds a Crashreport section with the given name with the given value (converted {@code .toString()}) + p 1 sectionName + p 2 value + m (Ljava/lang/String;Ljava/lang/Throwable;)V setDetailError a method_585 + c Adds a Crashreport section with the given name with the given Throwable + p 1 sectionName + p 2 throwable + m (Ljava/lang/String;Lnet/minecraft/CrashReportDetail;)Lnet/minecraft/CrashReportCategory; setDetail a method_577 + c Adds a section to this crash report category, resolved by calling the given callable.\n\nIf the given callable throws an exception, a detail containing that exception will be created instead. + p 1 name + p 2 detail + m (Ljava/lang/StringBuilder;)V getDetails a method_574 + p 1 builder + m (Lnet/minecraft/CrashReportCategory;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V populateBlockDetails a method_586 + p 0 category + p 1 levelHeightAccessor + p 2 pos + p 3 state + m (I)V trimStacktrace b method_580 + c Removes the given number entries from the bottom of the stack trace. + p 1 amount + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; method_576 b method_576 + m (Ljava/lang/String;)V + p 1 title +c net/minecraft/CrashReportCategory$Entry p$a net/minecraft/class_129$class_130 + f Ljava/lang/String; key a field_1098 + f Ljava/lang/String; value b field_1099 + m ()Ljava/lang/String; getKey a method_588 + m ()Ljava/lang/String; getValue b method_587 + m (Ljava/lang/String;Ljava/lang/Object;)V + p 1 key + p 2 value +c net/minecraft/CrashReportDetail q net/minecraft/class_133 +c net/minecraft/DefaultUncaughtExceptionHandler r net/minecraft/class_140 + f Lorg/slf4j/Logger; logger a field_1113 + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/DefaultUncaughtExceptionHandlerWithName s net/minecraft/class_143 + f Lorg/slf4j/Logger; logger a field_1115 + m (Lorg/slf4j/Logger;)V + p 1 logger +c net/minecraft/DetectedVersion t net/minecraft/class_3797 + f Lnet/minecraft/WorldVersion; BUILT_IN a field_25319 + f Lorg/slf4j/Logger; LOGGER b field_16741 + f Ljava/lang/String; id c field_16738 + f Ljava/lang/String; name d field_16733 + f Z stable e field_16737 + f Lnet/minecraft/world/level/storage/DataVersion; worldVersion f field_16736 + f I protocolVersion g field_16735 + f I resourcePackVersion h field_27843 + f I dataPackVersion i field_16734 + f Ljava/util/Date; buildTime j field_16739 + m ()Lnet/minecraft/WorldVersion; tryDetectVersion a method_16672 + c Creates a new instance containing world version data from version.json (or fallback data if necessary).\n\nFor getting data, use {@link SharedConstants#getCurrentVersion} instead, as that is cached. + m ()V + m (Lcom/google/gson/JsonObject;)V + p 1 json + m ()V +c net/minecraft/FieldsAreNonnullByDefault u net/minecraft/class_6319 +c net/minecraft/FileUtil v net/minecraft/class_4239 + f Ljava/util/regex/Pattern; COPY_COUNTER_PATTERN a field_18956 + f I MAX_FILE_NAME b field_33384 + f Ljava/util/regex/Pattern; RESERVED_WINDOWS_FILENAMES c field_18955 + f Ljava/util/regex/Pattern; STRICT_PATH_SEGMENT_CHECK d field_40712 + m (Ljava/lang/String;)Ljava/lang/String; sanitizeName a method_61105 + p 0 name + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_49680 a method_49680 + m (Ljava/nio/file/Path;)Z isPathNormalized a method_20200 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; findAvailableName a method_19773 + p 0 dirPath + p 1 fileName + p 2 fileFormat + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/nio/file/Path; resolvePath a method_46344 + p 0 path + p 1 subdirectories + m ([Ljava/lang/String;)V validatePath a method_46345 + p 0 elements + m (Ljava/lang/String;)Ljava/lang/String; getFullResourcePath b method_34675 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_49681 b method_49681 + m (Ljava/nio/file/Path;)Z isPathPortable b method_20201 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;)Ljava/nio/file/Path; createPathToResource b method_20202 + p 0 dirPath + p 1 locationPath + p 2 fileFormat + m (Ljava/lang/String;)Ljava/lang/String; normalizeResourcePath c method_34676 + p 0 path + m (Ljava/nio/file/Path;)V createDirectoriesSafe c method_47525 + p 0 path + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; decomposePath d method_46346 + p 0 path + m (Ljava/lang/String;)Z isValidStrictPathSegment e method_46347 + p 0 segment + m (Ljava/lang/String;)Ljava/lang/String; method_49682 f method_49682 + m (Ljava/lang/String;)Ljava/lang/String; method_49683 g method_49683 + m ()V + m ()V +c net/minecraft/MethodsReturnNonnullByDefault w net/minecraft/class_6328 +c net/minecraft/Optionull x net/minecraft/class_8144 + m (Ljava/lang/Object;Ljava/util/function/Function;)Ljava/lang/Object; map a method_49077 + p 0 value + p 1 mapper + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; mapOrDefault a method_49078 + p 0 value + p 1 mapper + p 2 defaultValue + m (Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/lang/Object; mapOrElse a method_49079 + p 0 value + p 1 mapper + p 2 supplier + m (Ljava/util/Collection;)Ljava/lang/Object; first a method_49080 + p 0 collection + m (Ljava/util/Collection;Ljava/lang/Object;)Ljava/lang/Object; firstOrDefault a method_49081 + p 0 collection + p 1 defaultValue + m (Ljava/util/Collection;Ljava/util/function/Supplier;)Ljava/lang/Object; firstOrElse a method_49082 + p 0 collection + p 1 supplier + m ([B)Z isNullOrEmpty a method_49083 + p 0 array + m ([C)Z isNullOrEmpty a method_49084 + p 0 array + m ([D)Z isNullOrEmpty a method_49085 + p 0 array + m ([F)Z isNullOrEmpty a method_49086 + p 0 array + m ([I)Z isNullOrEmpty a method_49087 + p 0 array + m ([J)Z isNullOrEmpty a method_49088 + p 0 array + m ([Ljava/lang/Object;)Z isNullOrEmpty a method_49089 + p 0 array + m ([S)Z isNullOrEmpty a method_49090 + p 0 array + m ([Z)Z isNullOrEmpty a method_49091 + p 0 array + m ()V +c net/minecraft/ReportType y net/minecraft/class_9813 + f Lnet/minecraft/ReportType; CRASH a field_52181 + f Lnet/minecraft/ReportType; PROFILE b field_52182 + f Lnet/minecraft/ReportType; TEST c field_52183 + f Lnet/minecraft/ReportType; NETWORK_PROTOCOL_ERROR d field_52184 + f Lnet/minecraft/ReportType; CHUNK_IO_ERROR e field_52284 + f Ljava/lang/String; header f comp_2856 + f Ljava/util/List; nuggets g comp_2857 + m ()Ljava/lang/String; getErrorComment a method_60927 + m (Ljava/lang/StringBuilder;Ljava/util/List;)V appendHeader a method_60928 + p 1 builder + p 2 links + m ()Ljava/lang/String; header b comp_2856 + m ()Ljava/util/List; nuggets c comp_2857 + m (Ljava/lang/String;Ljava/util/List;)V + m ()V +c net/minecraft/ReportedException z net/minecraft/class_148 + f Lnet/minecraft/CrashReport; report a field_1119 + m ()Lnet/minecraft/CrashReport; getReport a method_631 + c Gets the CrashReport wrapped by this exception. + m (Lnet/minecraft/CrashReport;)V + p 1 report +c net/minecraft/ResourceLocationException aa net/minecraft/class_151 + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/SharedConstants ab net/minecraft/class_155 + c Shared global constants.\n\n

Note: The majority of the fields within this class are {@code public static final} with constant expressions (constants), and are inlined by the Java compiler at all places which reference these constant fields. Therefore, changing the value of these constant fields will have no effect on already compiled code.

\n\n

In addition, it is presumed that a large portion of these constant fields (such as those prefixed with {@code DEBUG_} are used as 'flags', for manually toggling code meant for use by Mojang developers in debugging. Therefore, optimizing compilers (which include the Java compiler) may omit the code hidden behind disabled flags, and will result in these flags having no apparent use in the code (when in reality, the optimizing compiler has removed the code which uses them).

\n\n@see The Java® Language Specification, Java SE 16 Edition, § 15.29. "Constant Expressions"\n@see The Java® Language Specification, Java SE 16 Edition, § 14.22. "Unreachable Statements" + f Z DEBUG_SUPPORT_BLOCKS A field_44779 + f Z DEBUG_SHAPES B field_29754 + f Z DEBUG_NEIGHBORSUPDATE C field_29755 + f Z DEBUG_STRUCTURES D field_29756 + f Z DEBUG_LIGHT E field_29676 + f Z DEBUG_SKY_LIGHT_SECTIONS F field_44582 + f Z DEBUG_WORLDGENATTEMPT G field_29677 + f Z DEBUG_SOLID_FACE H field_29678 + f Z DEBUG_CHUNKS I field_29679 + f Z DEBUG_GAME_EVENT_LISTENERS J field_29680 + f Z DEBUG_DUMP_TEXTURE_ATLAS K field_29681 + f Z DEBUG_DUMP_INTERPOLATED_TEXTURE_FRAMES L field_29682 + f Z DEBUG_STRUCTURE_EDIT_MODE M field_29683 + f Z DEBUG_SAVE_STRUCTURES_AS_SNBT N field_29684 + f Z DEBUG_SYNCHRONOUS_GL_LOGS O field_29685 + f Z DEBUG_VERBOSE_SERVER_EVENTS P field_29686 + f Z DEBUG_NAMED_RUNNABLES Q field_29687 + f Z DEBUG_GOAL_SELECTOR R field_29688 + f Z DEBUG_VILLAGE_SECTIONS S field_29689 + f Z DEBUG_BRAIN T field_29690 + f Z DEBUG_BEES U field_29691 + f Z DEBUG_RAIDS V field_29692 + f Z DEBUG_BLOCK_BREAK W field_29693 + f Z DEBUG_RESOURCE_LOAD_TIMES X field_29694 + f Z DEBUG_MONITOR_TICK_TIMES Y field_29695 + f Z DEBUG_KEEP_JIGSAW_BLOCKS_DURING_STRUCTURE_GEN Z field_29696 + f Z DEBUG_DISABLE_ORE_VEINS aA field_33555 + f Z DEBUG_DISABLE_BLENDING aB field_35438 + f Z DEBUG_DISABLE_BELOW_ZERO_RETROGENERATION aC field_35439 + f I DEFAULT_MINECRAFT_PORT aD field_29719 + c The default port used by Minecraft for communication between servers and clients.\n\n

This is not a registered port at the Internet Assigned Numbers Authority, and therefore may conflict with existing applications. Minecraft servers may be hosted at other ports, in which case the clients must supply the correct port when connecting to the server.

\n\n@see https://www.iana.org/assignments/service-names-port-numbers/service-names-port-numbers.xhtml?&page=128 Internet Assigned Numbers Authority, Internet Service Name and Transport Protocol Port Number Registry + f Z INGAME_DEBUG_OUTPUT aE field_29720 + f Z DEBUG_SUBTITLES aF field_29721 + f I FAKE_MS_LATENCY aG field_29722 + f I FAKE_MS_JITTER aH field_29723 + f Lio/netty/util/ResourceLeakDetector$Level; NETTY_LEAK_DETECTION aI field_1124 + f Z COMMAND_STACK_TRACES aJ field_29724 + f Z DEBUG_WORLD_RECREATE aK field_29725 + f Z DEBUG_SHOW_SERVER_DEBUG_VALUES aL field_29726 + f Z DEBUG_FEATURE_COUNT aM field_35652 + f Z DEBUG_RESOURCE_GENERATION_OVERRIDE aN field_39961 + f Z DEBUG_FORCE_TELEMETRY aO field_41533 + f Z DEBUG_DONT_SEND_TELEMETRY_TO_BACKEND aP field_44780 + f J MAXIMUM_TICK_TIME_NANOS aQ field_22251 + f F MAXIMUM_BLOCK_EXPLOSION_RESISTANCE aR field_49016 + f Z USE_WORKFLOWS_HOOKS aS field_44583 + f Z USE_DEVONLY aT field_49773 + f Z CHECK_DATA_FIXER_SCHEMA aU field_25135 + f Z IS_RUNNING_IN_IDE aV field_1125 + f I WORLD_RESOLUTION aW field_29729 + f I MAX_CHAT_LENGTH aX field_29730 + c The maximum length of a chat message that can be typed by a player. + f I MAX_USER_INPUT_COMMAND_LENGTH aY field_29731 + f Z SNAPSHOT a field_29709 + c Indicates whether the currently running game version is a snapshot version.\n\n@see com.mojang.bridge.game.GameVersion#isStable()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#isStable()} instead. + f I MAX_FUNCTION_COMMAND_LENGTH aZ field_49017 + f Z DEBUG_DONT_SAVE_WORLD aa field_29697 + f Z DEBUG_LARGE_DRIPSTONE ab field_29698 + f Z DEBUG_CARVERS ac field_29700 + f Z DEBUG_ORE_VEINS ad field_33554 + f Z DEBUG_SCULK_CATALYST ae field_37273 + f Z DEBUG_BYPASS_REALMS_VERSION_CHECK af field_39090 + f Z DEBUG_SOCIAL_INTERACTIONS ag field_39460 + f Z DEBUG_VALIDATE_RESOURCE_PATH_CASE ah field_39962 + f Z DEBUG_UNLOCK_ALL_TRADES ai field_46154 + f Z DEBUG_BREEZE_MOB aj field_47176 + f Z DEBUG_TRIAL_SPAWNER_DETECTS_SHEEP_AS_PLAYERS ak field_47177 + f Z DEBUG_VAULT_DETECTS_SHEEP_AS_PLAYERS al field_48778 + f Z DEBUG_FORCE_ONBOARDING_SCREEN am field_47178 + f Z DEBUG_IGNORE_LOCAL_MOB_CAP an field_34368 + f Z DEBUG_DISABLE_LIQUID_SPREADING ao field_29710 + f Z DEBUG_AQUIFERS ap field_34369 + f Z DEBUG_JFR_PROFILING_ENABLE_LEVEL_LOADING aq field_34370 + f Z debugGenerateSquareTerrainWithoutNoise ar field_34371 + f Z debugGenerateStripedTerrainWithoutNoise as field_34372 + f Z DEBUG_ONLY_GENERATE_HALF_THE_WORLD at field_29711 + f Z DEBUG_DISABLE_FLUID_GENERATION au field_29712 + f Z DEBUG_DISABLE_AQUIFERS av field_29713 + f Z DEBUG_DISABLE_SURFACE aw field_29715 + f Z DEBUG_DISABLE_CARVERS ax field_29716 + f Z DEBUG_DISABLE_STRUCTURES ay field_29717 + f Z DEBUG_DISABLE_FEATURES az field_29718 + f I WORLD_VERSION b field_29732 + c The numeric format number for worlds used by this game version.\n\n@see com.mojang.bridge.game.GameVersion#getWorldVersion()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#getWorldVersion()} instead. + f I MAX_PLAYER_NAME_LENGTH ba field_49170 + f I MAX_CHAINED_NEIGHBOR_UPDATES bb field_38052 + f I MAX_RENDER_DISTANCE bc field_39898 + f [C ILLEGAL_FILE_CHARACTERS bd field_1126 + c The characters which may not form part of a file's name. Used in various file processing methods to replace these illegal characters with valid characters, such as the underscore "{@code _}".\n\n

This collection of characters is a subset of the forbidden characters listed in the documentation for Microsoft Windows, with the addition of the backtick ({@code `}).\n\n@see Microsoft Corporation, "Naming Files, Paths, and Namespaces", § Naming Conventions + f I TICKS_PER_SECOND be field_29702 + c The amount of game ticks within a real-life second.\n\n

This is not guaranteed by a running server to be an accurate measurement of real-life seconds. Heavy load on the server may cause the actual tick-to-second ratio to go below this defined ratio.

+ f I MILLIS_PER_TICK bf field_44973 + f I TICKS_PER_MINUTE bg field_29703 + c The amount of game ticks within a real-life minute. This is equal to {@code TICKS_PER_SECOND * 60}, and falls under the same guarantees and restrictions as {@link #TICKS_PER_SECOND}.\n\n@see #TICKS_PER_SECOND + f I TICKS_PER_GAME_DAY bh field_29704 + c The amount of game ticks within a game day. A game day is defined as 20 real-life minutes, so this is equal to {@code TICKS_PER_MINUTE * 20}. This falls under the same guarantees and restrictions as {@link #TICKS_PER_SECOND}. + f F AVERAGE_GAME_TICKS_PER_RANDOM_TICK_PER_BLOCK bi field_29705 + f F AVERAGE_RANDOM_TICKS_PER_BLOCK_PER_MINUTE bj field_29706 + f F AVERAGE_RANDOM_TICKS_PER_BLOCK_PER_GAME_DAY bk field_29707 + f I WORLD_ICON_SIZE bl field_44922 + f I SNAPSHOT_PROTOCOL_BIT bm field_29708 + c The bit in the networking protocol version for denoting {@linkplain #SNAPSHOT snapshot versions}.\n\n@see #SNAPSHOT_NETWORK_PROTOCOL_VERSION + f Lnet/minecraft/WorldVersion; CURRENT_VERSION bn field_16742 + f Ljava/lang/String; SERIES c field_34373 + f Ljava/lang/String; VERSION_STRING d field_29733 + c The human readable name of this game version.\n\n@see com.mojang.bridge.game.GameVersion#getName()\n@deprecated Use {@link #getCurrentVersion()} and {@link com.mojang.bridge.game.GameVersion#getName()} instead. + f I RELEASE_NETWORK_PROTOCOL_VERSION e field_29735 + c The numeric format number for the networking protocol used by the release target of this game version.\n\n

This protocol version is used when this game version is a release version, not a {@linkplain #SNAPSHOT snapshots}. For snapshots, see {@link #SNAPSHOT_NETWORK_PROTOCOL_VERSION}.

\n\n@see #getProtocolVersion()\n@deprecated Use {@link #getProtocolVersion()} instead. + f I SNAPSHOT_NETWORK_PROTOCOL_VERSION f field_29736 + c The numeric format number for the networking protocol used by the snapshot of this game version.\n\n

This protocol version is used when this game version is a {@linkplain #SNAPSHOT snapshot version}. For releases, see {@link #RELEASE_NETWORK_PROTOCOL_VERSION}.

\n\n

The actual networking protocol version used in snapshot versions is the combination (bitwise OR) of this number and the bit at the position marked by {@link #SNAPSHOT_PROTOCOL_BIT}.

\n\n@see #getProtocolVersion()\n@deprecated Use {@link #getProtocolVersion()} instead. + f I SNBT_NAG_VERSION g field_29737 + f Z CRASH_EAGERLY h field_36325 + f I RESOURCE_PACK_FORMAT i field_29738 + c The format of the resource packs used by this game version. Resource packs contain client-side assets, such as translation files, models, and textures.\n\n@see com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)\n@deprecated Use {@link #getCurrentVersion()}, {@link com.mojang.bridge.game.GameVersion#com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)}, and com.mojang.bridge.game.PackType#RESOURCE instead. + f I DATA_PACK_FORMAT j field_29739 + c The format of the data packs used by this game version. Data packs contain server-side data such as recipes, loot tables, and tags.\n\n@see com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)\n@deprecated Use {@link #getCurrentVersion()}, {@link com.mojang.bridge.game.GameVersion#com.mojang.bridge.game.GameVersion#getPackVersion(com.mojang.bridge.game.PackType)}, and com.mojang.bridge.game.PackType#DATA instead. + f I LANGUAGE_FORMAT k field_39963 + f I REPORT_FORMAT_VERSION l field_39964 + f Ljava/lang/String; DATA_VERSION_TAG m field_29740 + c The key for the NBT tag which contains the data version of some data, for use in datafixing.\n\n

For various objects, their stored data in a {@link net.minecraft.nbt.CompoundTag} will usually contain a {@link net.minecraft.nbt.IntTag} indexed with this key, which stores the data version when the data for that object was written out. This is used by the datafixer system to determine which fixers needs to be applied to the data.

\n\n@see com.mojang.bridge.game.GameVersion#getWorldVersion() + f Z FIX_TNT_DUPE n field_29745 + f Z FIX_SAND_DUPE o field_33851 + f Z USE_DEBUG_FEATURES p field_29747 + f Z DEBUG_OPEN_INCOMPATIBLE_WORLDS q field_35006 + f Z DEBUG_ALLOW_LOW_SIM_DISTANCE r field_35563 + f Z DEBUG_HOTKEYS s field_29748 + f Z DEBUG_UI_NARRATION t field_33753 + f Z DEBUG_RENDER u field_29749 + f Z DEBUG_PATHFINDING v field_29750 + f Z DEBUG_WATER w field_29751 + f Z DEBUG_HEIGHTMAP x field_29752 + f Z DEBUG_COLLISION y field_29753 + f Z DEBUG_SHOW_LOCAL_SERVER_ENTITY_HIT_BOXES z field_52311 + m ()V tryDetectVersion a method_36208 + m (Lnet/minecraft/WorldVersion;)V setVersion a method_34872 + c Sets the world version, failing if a different world version is already present.\n\n@throws IllegalStateException if a different world version has already been set previously + p 0 version + c the world version to set + m (Lnet/minecraft/world/level/ChunkPos;)Z debugVoidTerrain a method_37896 + p 0 chunkPos + m ()Lnet/minecraft/WorldVersion; getCurrentVersion b method_16673 + c {@return the {@link WorldVersion world version}}\n\n@throws IllegalStateException if a world version has not been set previously + m ()I getProtocolVersion c method_31372 + c {@return the networking protocol version in use by this game version}\n\n

For releases, this will be equivalent to {@link #RELEASE_NETWORK_PROTOCOL_VERSION}. For snapshot versions, this will be the combination (bitwise OR) of {@link #SNAPSHOT_NETWORK_PROTOCOL_VERSION} and the bit marked by {@link #SNAPSHOT_PROTOCOL_BIT}.

+ m ()V + m ()V +c net/minecraft/SystemReport ac net/minecraft/class_6396 + f J BYTES_PER_MEBIBYTE a field_33852 + f J ONE_GIGA b field_33853 + f Lorg/slf4j/Logger; LOGGER c field_33854 + f Ljava/lang/String; OPERATING_SYSTEM d field_33855 + f Ljava/lang/String; JAVA_VERSION e field_33856 + f Ljava/lang/String; JAVA_VM_VERSION f field_33857 + f Ljava/util/Map; entries g field_33858 + m ()Ljava/lang/String; toLineSeparatedString a method_37120 + m (J)F sizeInMiB a method_59895 + p 0 bytes + m (Ljava/lang/String;)V putSpaceForProperty a method_59896 + p 1 property + m (Ljava/lang/String;Ljava/lang/Runnable;)V ignoreErrors a method_37121 + p 1 groupIdentifier + p 2 executor + m (Ljava/lang/String;Ljava/lang/String;)V setDetail a method_37122 + p 1 identifier + p 2 value + m (Ljava/lang/String;Ljava/util/function/Supplier;)V setDetail a method_37123 + p 1 identifier + p 2 valueSupplier + m (Ljava/lang/StringBuilder;)V appendToCrashReportString a method_37124 + p 1 reportAppender + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_37125 a method_37125 + m (Ljava/util/List;)V putPhysicalMemory a method_37126 + p 1 memorySlots + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_37127 a method_37127 + m (Loshi/SystemInfo;)V putHardware a method_37128 + p 1 info + m (Loshi/hardware/CentralProcessor$ProcessorIdentifier;)Ljava/lang/String; method_37129 a method_37129 + m (Loshi/hardware/CentralProcessor;)V putProcessor a method_37130 + p 1 cpu + m (Loshi/hardware/GlobalMemory;)V putMemory a method_37131 + p 1 memory + m (Loshi/hardware/GraphicsCard;)Ljava/lang/String; method_37132 a method_37132 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37133 a method_37133 + m (Loshi/hardware/PhysicalMemory;)Ljava/lang/String; method_37134 a method_37134 + m (Loshi/hardware/VirtualMemory;)V putVirtualMemory a method_37135 + p 1 memory + m ()V putStorage b method_59897 + m (Ljava/lang/String;)Ljava/lang/String; method_59898 b method_59898 + m (Ljava/lang/String;Ljava/util/function/Supplier;)V putSpaceForPath b method_59899 + p 1 property + p 2 valueSupplier + m (Ljava/util/List;)V putGraphics b method_37137 + p 1 gpus + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37138 b method_37138 + m (Loshi/hardware/GlobalMemory;)V method_37139 b method_37139 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37140 b method_37140 + m (Loshi/hardware/PhysicalMemory;)Ljava/lang/String; method_37141 b method_37141 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37142 b method_37142 + m ()Ljava/lang/String; method_59900 c method_59900 + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37144 c method_37144 + m (Loshi/hardware/GlobalMemory;)V method_37145 c method_37145 + m (Loshi/hardware/HardwareAbstractionLayer;)V method_37146 c method_37146 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37147 c method_37147 + m ()Ljava/lang/String; method_37136 d method_37136 + m (Loshi/hardware/CentralProcessor;)Ljava/lang/String; method_37149 d method_37149 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37150 d method_37150 + m ()V method_37143 e method_37143 + m (Loshi/hardware/VirtualMemory;)Ljava/lang/String; method_37152 e method_37152 + m ()Ljava/lang/String; method_37148 f method_37148 + m ()Ljava/lang/String; method_37151 g method_37151 + m ()V + m ()V +c net/minecraft/Util ad net/minecraft/class_156 + f I LINEAR_LOOKUP_THRESHOLD a field_46220 + f J NANOS_PER_MILLI b field_45714 + f Lnet/minecraft/util/TimeSource$NanoTimeSource; timeSource c field_1128 + f Lcom/google/common/base/Ticker; TICKER d field_37250 + f Ljava/util/UUID; NIL_UUID e field_25140 + f Ljava/nio/file/spi/FileSystemProvider; ZIP_FILE_SYSTEM_PROVIDER f field_33859 + f Lorg/slf4j/Logger; LOGGER g field_1129 + f I DEFAULT_MAX_THREADS h field_34891 + f I DEFAULT_SAFE_FILE_OPERATION_RETRIES i field_46764 + f Ljava/lang/String; MAX_THREADS_SYSTEM_PROPERTY j field_34892 + f Ljava/util/concurrent/ExecutorService; BACKGROUND_EXECUTOR k field_18035 + f Ljava/util/concurrent/ExecutorService; IO_POOL l field_24477 + f Ljava/util/concurrent/ExecutorService; DOWNLOAD_POOL m field_47571 + f Ljava/time/format/DateTimeFormatter; FILENAME_DATE_TIME_FORMATTER n field_39824 + f Ljava/util/Set; ALLOWED_UNTRUSTED_LINK_PROTOCOLS o field_52196 + f Ljava/util/function/Consumer; thePauser p field_34893 + m ()Ljava/util/stream/Collector; toMap a method_664 + m (I)Ljava/lang/String; method_49399 a method_49399 + m (IILjava/util/List;)Z isSymmetrical a method_59901 + p 0 width + p 1 height + p 2 list + m (ILjava/lang/String;[Ljava/util/function/BooleanSupplier;)Z runWithRetries a method_30622 + p 0 maxTries + p 1 actionName + p 2 suppliers + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; fetchChoiceType a method_29187 + p 0 type + p 1 choiceName + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/Typed; writeAndReadTypedOrThrow a method_54907 + p 0 typed + p 1 type + p 2 operator + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/Typed; readTypedOrThrow a method_54908 + p 0 type + p 1 data + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;Z)Lcom/mojang/datafixers/Typed; readTypedOrThrow a method_55333 + p 0 type + p 1 data + p 2 partial + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Object;)Ljava/lang/String; getPropertyName a method_650 + p 0 property + p 1 value + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy a method_43027 + p 0 list + p 1 random + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; findNextInIterable a method_660 + p 0 iterable + p 1 element + m (Ljava/lang/Object;)Z method_56612 a method_56612 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; copyAndAdd a method_58272 + p 0 value + p 1 list + m (Ljava/lang/Object;Ljava/util/function/Consumer;)Ljava/lang/Object; make a method_654 + p 0 object + p 1 consumer + m (Ljava/lang/Runnable;Ljava/util/function/Supplier;)Ljava/lang/Runnable; name a method_18839 + p 0 item + p 1 nameSupplier + m (Ljava/lang/String;)Ljava/net/URI; parseAndValidateUntrustedUri a method_60931 + p 0 uri + m (Ljava/lang/String;II)I offsetByCodepoints a method_27761 + p 0 text + p 1 cursorPos + p 2 direction + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; makeDescriptionId a method_646 + p 0 type + p 1 id + m (Ljava/lang/String;Ljava/lang/Runnable;)Ljava/lang/Runnable; wrapThreadWithTaskName a method_33787 + p 0 name + p 1 task + m (Ljava/lang/String;Ljava/lang/Throwable;)V logAndPauseIfInIde a method_39977 + p 0 message + p 1 error + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;Ljava/util/concurrent/ForkJoinPool;)Ljava/util/concurrent/ForkJoinWorkerThread; method_28123 a method_28123 + m (Ljava/lang/String;Ljava/util/concurrent/atomic/AtomicInteger;ZLjava/lang/Runnable;)Ljava/lang/Thread; method_27956 a method_27956 + m (Ljava/lang/String;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; prefix a method_29188 + p 0 prefix + p 1 expectedSize + m (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/function/Supplier; wrapThreadWithTaskName a method_37910 + p 0 name + p 1 task + m (Ljava/lang/String;Lnet/minecraft/CharPredicate;)Ljava/lang/String; sanitizeName a method_30309 + p 0 fileName + p 1 characterValidator + m (Ljava/lang/String;Z)Ljava/util/concurrent/ExecutorService; makeIoExecutor a method_27959 + p 0 name + p 1 daemon + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V onThreadException a method_18347 + p 0 thread + p 1 throwable + m (Ljava/lang/Throwable;)V throwAsRuntime a method_24155 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createDeleter a method_30624 + p 0 filePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createRenamer a method_30625 + p 0 filePath + p 1 newName + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V safeReplaceFile a method_30626 + p 0 current + p 1 latest + p 2 oldBackup + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)Z safeReplaceOrMoveFile a method_41204 + p 0 current + p 1 latest + p 2 oldBackup + m (Ljava/nio/file/spi/FileSystemProvider;)Z method_37153 a method_37153 + m (Ljava/util/List;)Ljava/util/function/Predicate; allOf a method_56613 + p 0 predicates + m (Ljava/util/List;I)Lcom/mojang/serialization/DataResult; fixedSize a method_33141 + p 0 list + p 1 expectedSize + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getRandom a method_32309 + p 0 selections + p 1 random + m (Ljava/util/List;Ljava/lang/Object;)Ljava/util/List; copyAndAdd a method_57108 + p 0 list + p 1 value + m (Ljava/util/List;Ljava/lang/Void;)Ljava/util/List; method_43368 a method_43368 + m (Ljava/util/List;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; fallibleSequence a method_43370 + p 0 completableFutures + p 1 throwableConsumer + m (Ljava/util/List;[Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Consumer;Ljava/util/concurrent/CompletableFuture;)V method_43371 a method_43371 + m (Ljava/util/Map;Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/Map; copyAndPut a method_57109 + p 0 map + p 1 key + p 2 value + m (Ljava/util/Optional;Ljava/util/function/Consumer;Ljava/lang/Runnable;)Ljava/util/Optional; ifElse a method_17974 + p 0 opt + p 1 consumer + p 2 orElse + m (Ljava/util/concurrent/CompletableFuture;Ljava/util/List;Ljava/lang/Throwable;)V method_43369 a method_43369 + m (Ljava/util/concurrent/ExecutorService;)V shutdownExecutor a method_27957 + p 0 service + m (Ljava/util/function/BiFunction;)Ljava/util/function/BiFunction; memoize a method_34865 + p 0 memoBiFunction + m (Ljava/util/function/Consumer;)V setPause a method_38646 + p 0 thePauser + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/lang/String;)V method_29189 a method_29189 + m (Ljava/util/function/Consumer;Ljava/util/List;ILjava/lang/Object;Ljava/lang/Throwable;)V method_43372 a method_43372 + m (Ljava/util/function/Function;)Lnet/minecraft/util/SingleKeyCache; singleKeyCache a method_48746 + p 0 computeValue + m (Ljava/util/function/Function;Ljava/util/function/Predicate;)Ljava/lang/Object; blockUntilDone a method_43498 + p 0 task + p 1 donePredicate + m (Ljava/util/function/Supplier;)Ljava/lang/Object; make a method_656 + p 0 supplier + m (Ljava/util/function/Supplier;Ljava/util/function/Supplier;)Ljava/util/function/Supplier; name a method_41238 + p 0 item + p 1 nameSupplier + m (Ljava/util/stream/IntStream;I)Lcom/mojang/serialization/DataResult; fixedSize a method_29190 + p 0 stream + p 1 size + m (Ljava/util/stream/IntStream;Lnet/minecraft/util/RandomSource;)Lit/unimi/dsi/fastutil/ints/IntArrayList; toShuffledList a method_43251 + p 0 stream + p 1 random + m (Ljava/util/stream/LongStream;I)Lcom/mojang/serialization/DataResult; fixedSize a method_51822 + p 0 stream + p 1 expectedSize + m (Ljava/util/stream/Stream;Lnet/minecraft/util/RandomSource;)Ljava/util/List; toShuffledList a method_43252 + p 0 stream + p 1 random + m (Lnet/minecraft/core/Registry;Ljava/lang/Object;)Ljava/lang/String; getRegisteredName a method_57107 + p 0 registry + p 1 value + m (Lnet/minecraft/CharPredicate;I)Ljava/lang/String; method_30623 a method_30623 + m ([ILnet/minecraft/util/RandomSource;)I getRandom a method_27172 + p 0 selections + p 1 random + m ([Ljava/lang/Object;Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getRandom a method_27173 + p 0 selections + p 1 random + m ([Ljava/util/function/BooleanSupplier;)Z executeInSequence a method_30627 + p 0 suppliers + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_56614 a method_56614 + m ()Ljava/util/stream/Collector; toMutableList b method_58579 + m (I)Ljava/lang/String; method_51823 b method_51823 + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)Lcom/mojang/datafixers/types/Type; doFetchChoiceType b method_29191 + p 0 type + p 1 choiceName + m (Ljava/lang/Iterable;Ljava/lang/Object;)Ljava/lang/Object; findPreviousInIterable b method_645 + p 0 iterable + p 1 current + m (Ljava/lang/Object;)Z method_56615 b method_56615 + m (Ljava/lang/String;)V logAndPauseIfInIde b method_33559 + p 0 error + m (Ljava/lang/String;Ljava/lang/Runnable;)V method_33790 b method_33790 + m (Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/lang/Object; method_37911 b method_37911 + m (Ljava/lang/Throwable;)Ljava/lang/Throwable; pauseInIde b method_22320 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createFileDeletedCheck b method_30628 + p 0 filePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V copyBetweenDirs b method_29775 + p 0 fromDirectory + p 1 toDirectory + p 2 filePath + m (Ljava/util/List;)Ljava/util/function/Predicate; anyOf b method_56616 + p 0 predicates + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomSafe b method_40083 + p 0 selections + p 1 random + m (Ljava/util/List;Ljava/lang/Void;)Ljava/util/List; method_40082 b method_40082 + m (Ljava/util/function/Function;)Ljava/util/function/Function; memoize b method_34866 + p 0 memoFunction + m ([Ljava/lang/Object;Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy b method_43253 + p 0 array + p 1 random + m ([Ljava/util/function/Predicate;Ljava/lang/Object;)Z method_56617 b method_56617 + m ()J getMillis c method_658 + m (I)Ljava/lang/String; method_49400 c method_49400 + m (Ljava/lang/String;)Ljava/util/concurrent/ExecutorService; makeExecutor c method_28122 + p 0 serviceName + m (Ljava/lang/Throwable;)Ljava/lang/String; describeError c method_22321 + p 0 throwable + m (Ljava/nio/file/Path;)Ljava/util/function/BooleanSupplier; createFileCreatedCheck c method_30629 + p 0 filePath + m (Ljava/util/List;)Ljava/lang/Object; lastOf c method_20793 + p 0 list + m (Ljava/util/List;Lnet/minecraft/util/RandomSource;)V shuffle c method_43028 + p 0 list + p 1 random + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; blockUntilDone c method_43499 + p 0 task + m ()J getNanos d method_648 + m (I)[Ljava/util/function/Predicate; method_61111 d method_61111 + m (Ljava/lang/String;)V doPause d method_33560 + p 0 message + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequence d method_33791 + c Takes a list of futures and returns a future of list that completes when all of them succeed or any of them error, + p 0 futures + m ()J getEpochMillis e method_659 + m (I)[Ljava/util/function/Predicate; method_61112 e method_61112 + m (Ljava/lang/String;)Z method_666 e method_666 + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequenceFailFast e method_652 + p 0 completableFutures + m ()Ljava/lang/String; getFilenameFormattedDateTime f method_44893 + m (Ljava/lang/String;)V method_38647 f method_38647 + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; sequenceFailFastAndCancel f method_43373 + p 0 completableFutures + m ()Ljava/util/concurrent/ExecutorService; backgroundExecutor g method_18349 + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; createIndexLookup g method_43658 + p 0 list + m ()Ljava/util/concurrent/ExecutorService; ioPool h method_27958 + m (Ljava/util/List;)Ljava/util/function/ToIntFunction; createIndexIdentityLookup h method_53909 + p 0 list + m ()Ljava/util/concurrent/ExecutorService; nonCriticalIoPool i method_55473 + m ()V shutdownExecutors j method_18350 + m ()Lnet/minecraft/Util$OS; getPlatform k method_668 + m ()Ljava/util/stream/Stream; getVmArguments l method_651 + m ()V startTimerHackThread m method_29476 + m ()I getMaxThreads n method_38648 + m ()Ljava/lang/IllegalStateException; method_37154 o method_37154 + m ()V + m ()V +c net/minecraft/Util$1 ad$1 net/minecraft/class_156$1 + m ()V +c net/minecraft/Util$10 ad$2 net/minecraft/class_156$2 + f Ljava/util/function/Function; val$function a field_29654 + f Ljava/util/Map; cache b field_29655 + m (Ljava/util/function/Function;)V +c net/minecraft/Util$11 ad$3 net/minecraft/class_156$3 + f Ljava/util/function/BiFunction; val$function a field_29656 + f Ljava/util/Map; cache b field_29657 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Object; method_34867 a method_34867 + m (Ljava/util/function/BiFunction;)V +c net/minecraft/Util$2 ad$4 net/minecraft/class_156$4 + m (Ljava/util/concurrent/ForkJoinPool;)V +c net/minecraft/Util$5 ad$5 net/minecraft/class_156$5 + f Ljava/nio/file/Path; val$from a field_26348 + f Ljava/nio/file/Path; val$to b field_26349 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V +c net/minecraft/Util$6 ad$6 net/minecraft/class_156$6 + f Ljava/nio/file/Path; val$target a field_26352 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$7 ad$7 net/minecraft/class_156$7 + f Ljava/nio/file/Path; val$target a field_37251 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$8 ad$8 net/minecraft/class_156$8 + f Ljava/nio/file/Path; val$target a field_37274 + m (Ljava/nio/file/Path;)V +c net/minecraft/Util$9 ad$9 net/minecraft/class_156$9 + m (Ljava/lang/String;)V +c net/minecraft/Util$OS ad$a net/minecraft/class_156$class_158 + f Lnet/minecraft/Util$OS; LINUX a field_1135 + f Lnet/minecraft/Util$OS; SOLARIS b field_1134 + f Lnet/minecraft/Util$OS; WINDOWS c field_1133 + f Lnet/minecraft/Util$OS; OSX d field_1137 + f Lnet/minecraft/Util$OS; UNKNOWN e field_1132 + f Ljava/lang/String; telemetryName f field_34894 + f [Lnet/minecraft/Util$OS; $VALUES g field_1136 + m ()Ljava/lang/String; telemetryName a method_38649 + m (Ljava/io/File;)V openFile a method_672 + p 1 file + m (Ljava/lang/String;)V openUri a method_670 + p 1 uri + m (Ljava/net/URI;)V openUri a method_673 + p 1 uri + m (Ljava/nio/file/Path;)V openPath a method_60932 + p 1 path + m ()[Lnet/minecraft/Util$OS; $values b method_36579 + m (Ljava/net/URI;)[Ljava/lang/String; getOpenUriArguments b method_674 + p 1 uri + m (Ljava/net/URI;)Ljava/lang/Process; method_671 c method_671 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 telemetryName + m ()V +c net/minecraft/Util$OS$1 ad$a$1 net/minecraft/class_156$class_158$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/Util$OS$2 ad$a$2 net/minecraft/class_156$class_158$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/WorldVersion ae net/minecraft/class_6489 + m (Lnet/minecraft/server/packs/PackType;)I getPackVersion a method_48017 + p 1 packType + m ()Ljava/lang/String; getId b method_48018 + m ()Ljava/lang/String; getName c method_48019 + m ()Lnet/minecraft/world/level/storage/DataVersion; getDataVersion d method_37912 + m ()I getProtocolVersion e method_48020 + m ()Ljava/util/Date; getBuildTime f method_48021 + m ()Z isStable g method_48022 +c net/minecraft/advancements/Advancement af net/minecraft/class_161 + f Lcom/mojang/serialization/Codec; CODEC a field_47179 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47996 + f Ljava/util/Optional; parent c comp_1912 + f Ljava/util/Optional; display d comp_1913 + f Lnet/minecraft/advancements/AdvancementRewards; rewards e comp_1914 + f Ljava/util/Map; criteria f comp_1915 + f Lnet/minecraft/advancements/AdvancementRequirements; requirements g comp_1916 + f Z sendsTelemetryEvent h comp_1917 + f Ljava/util/Optional; name i comp_1918 + f Lcom/mojang/serialization/Codec; CRITERIA_CODEC j field_47180 + m ()Z isRoot a method_53630 + m (Lnet/minecraft/advancements/Advancement;)Lcom/mojang/serialization/DataResult; validate a method_54910 + p 0 advancement + m (Lnet/minecraft/advancements/Advancement;Lnet/minecraft/advancements/AdvancementRequirements;)Lnet/minecraft/advancements/Advancement; method_54911 a method_54911 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/chat/Component; name a method_53622 + p 0 advancement + m (Lnet/minecraft/advancements/DisplayInfo;)Lnet/minecraft/network/chat/Component; decorateName a method_53623 + p 0 display + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;)V validate a method_54912 + p 1 reporter + p 2 lootData + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V method_54913 a method_54913 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54914 a method_54914 + m (Ljava/util/Map;)Lnet/minecraft/advancements/AdvancementRequirements; method_54915 a method_54915 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Ljava/util/Optional;Ljava/lang/Boolean;)Lnet/minecraft/advancements/Advancement; method_54916 a method_54916 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_53627 + p 1 buffer + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_53629 a method_53629 + m ()Ljava/util/Optional; parent b comp_1912 + m (Lnet/minecraft/advancements/Advancement;)Ljava/util/Optional; method_54917 b method_54917 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/chat/Component; method_53631 b method_53631 + m (Ljava/util/Map;)Lcom/mojang/serialization/DataResult; method_54918 b method_54918 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/advancements/Advancement; read b method_53632 + p 0 buffer + m ()Ljava/util/Optional; display c comp_1913 + m ()Lnet/minecraft/advancements/AdvancementRewards; rewards d comp_1914 + m ()Ljava/util/Map; criteria e comp_1915 + m ()Lnet/minecraft/advancements/AdvancementRequirements; requirements f comp_1916 + m ()Z sendsTelemetryEvent g comp_1917 + m ()Ljava/util/Optional; name h comp_1918 + m ()Ljava/lang/String; method_54919 i method_54919 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Lnet/minecraft/advancements/AdvancementRequirements;Z)V + p 1 parent + p 2 display + p 3 rewards + p 4 criteria + p 5 requirements + p 6 sendsTelemetryEvent + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementRewards;Ljava/util/Map;Lnet/minecraft/advancements/AdvancementRequirements;ZLjava/util/Optional;)V + m ()V +c net/minecraft/advancements/Advancement$Builder af$a net/minecraft/class_161$class_162 + f Ljava/util/Optional; parent a field_1149 + f Ljava/util/Optional; display b field_1147 + f Lnet/minecraft/advancements/AdvancementRewards; rewards c field_1153 + f Lcom/google/common/collect/ImmutableMap$Builder; criteria d field_1148 + f Ljava/util/Optional; requirements e field_1150 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; requirementsStrategy f field_1151 + f Z sendsTelemetryEvent g field_44783 + m ()Lnet/minecraft/advancements/Advancement$Builder; advancement a method_707 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/Advancement$Builder; parent a method_701 + p 1 parent + m (Lnet/minecraft/advancements/AdvancementRequirements$Strategy;)Lnet/minecraft/advancements/Advancement$Builder; requirements a method_704 + p 1 requirementsStrategy + m (Lnet/minecraft/advancements/AdvancementRequirements;)Lnet/minecraft/advancements/Advancement$Builder; requirements a method_34884 + p 1 requirements + m (Lnet/minecraft/advancements/AdvancementRewards$Builder;)Lnet/minecraft/advancements/Advancement$Builder; rewards a method_703 + p 1 rewardsBuilder + m (Lnet/minecraft/advancements/AdvancementRewards;)Lnet/minecraft/advancements/Advancement$Builder; rewards a method_706 + p 1 rewards + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Advancement$Builder; parent a method_708 + p 1 parentId + m (Lnet/minecraft/advancements/DisplayInfo;)Lnet/minecraft/advancements/Advancement$Builder; display a method_693 + p 1 display + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementType;ZZZ)Lnet/minecraft/advancements/Advancement$Builder; display a method_20416 + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementType;ZZZ)Lnet/minecraft/advancements/Advancement$Builder; display a method_697 + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/advancements/Advancement$Builder; addCriterion a method_705 + p 1 key + p 2 criterion + m (Ljava/util/Map;)Lnet/minecraft/advancements/AdvancementRequirements; method_53633 a method_53633 + m (Ljava/util/function/Consumer;Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; save a method_694 + p 1 output + p 2 id + m ()Lnet/minecraft/advancements/Advancement$Builder; recipeAdvancement b method_51698 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; build b method_695 + p 1 id + m ()Lnet/minecraft/advancements/Advancement$Builder; sendsTelemetryEvent c method_53634 + m ()V +c net/minecraft/advancements/AdvancementHolder ag net/minecraft/class_8779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48180 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC b field_48181 + f Lnet/minecraft/resources/ResourceLocation; id c comp_1919 + f Lnet/minecraft/advancements/Advancement; value d comp_1920 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1919 + m ()Lnet/minecraft/advancements/Advancement; value b comp_1920 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/Advancement;)V + m ()V +c net/minecraft/advancements/AdvancementNode ah net/minecraft/class_8781 + f Lnet/minecraft/advancements/AdvancementHolder; holder a field_46077 + f Lnet/minecraft/advancements/AdvancementNode; parent b field_46078 + f Ljava/util/Set; children c field_46079 + m ()Lnet/minecraft/advancements/Advancement; advancement a method_53647 + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/advancements/AdvancementNode; getRoot a method_53648 + p 0 node + m ()Lnet/minecraft/advancements/AdvancementHolder; holder b method_53649 + m (Lnet/minecraft/advancements/AdvancementNode;)V addChild b method_53650 + p 1 child + m ()Lnet/minecraft/advancements/AdvancementNode; parent c method_53651 + m ()Lnet/minecraft/advancements/AdvancementNode; root d method_53652 + m ()Ljava/lang/Iterable; children e method_53653 + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementNode;)V + p 1 holder + p 2 parent +c net/minecraft/advancements/AdvancementProgress ai net/minecraft/class_167 + f Lcom/mojang/serialization/Codec; CODEC a field_46080 + f Ljava/time/format/DateTimeFormatter; OBTAINED_TIME_FORMAT b field_46081 + f Lcom/mojang/serialization/Codec; OBTAINED_TIME_CODEC c field_46082 + f Lcom/mojang/serialization/Codec; CRITERIA_CODEC d field_46083 + f Ljava/util/Map; criteria e field_1160 + f Lnet/minecraft/advancements/AdvancementRequirements; requirements f field_1161 + m ()Z isDone a method_740 + m (Lnet/minecraft/advancements/AdvancementProgress;)I compareTo a method_738 + p 1 other + m (Lnet/minecraft/advancements/AdvancementRequirements;)V update a method_727 + p 1 requirements + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53654 a method_53654 + m (Ljava/lang/String;)Z grantProgress a method_743 + p 1 criterionName + m (Ljava/time/Instant;)Ljava/time/temporal/TemporalAccessor; method_53655 a method_53655 + m (Ljava/util/Map$Entry;)Ljava/time/Instant; method_53656 a method_53656 + m (Ljava/util/Map;)Ljava/util/Map; method_53657 a method_53657 + m (Ljava/util/Map;Ljava/lang/Boolean;)Lnet/minecraft/advancements/AdvancementProgress; method_53658 a method_53658 + m (Ljava/util/Set;Ljava/util/Map$Entry;)Z method_730 a method_730 + m (Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_733 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/advancements/CriterionProgress;)V method_33895 a method_33895 + m ()Z hasProgress b method_742 + m (Lnet/minecraft/advancements/AdvancementProgress;)Ljava/util/Map; method_53659 b method_53659 + m (Ljava/lang/String;)Z revokeProgress b method_729 + p 1 criterionName + m (Ljava/util/Map$Entry;)Z method_53660 b method_53660 + m (Ljava/util/Map;)Ljava/util/Map; method_53661 b method_53661 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/advancements/AdvancementProgress; fromNetwork b method_732 + p 0 buffer + m ()F getPercent c method_735 + m (Ljava/lang/String;)Lnet/minecraft/advancements/CriterionProgress; getCriterion c method_737 + p 1 criterionName + m (Ljava/util/Map$Entry;)Lnet/minecraft/advancements/CriterionProgress; method_53662 c method_53662 + m ()Lnet/minecraft/network/chat/Component; getProgressText d method_728 + m (Ljava/lang/String;)Z isCriterionDone d method_53663 + p 1 criterionName + m ()Ljava/lang/Iterable; getRemainingCriteria e method_731 + m ()Ljava/lang/Iterable; getCompletedCriteria f method_734 + m ()Ljava/time/Instant; getFirstProgressDate g method_741 + m ()I countCompletedRequirements h method_736 + m (Ljava/util/Map;)V + p 1 criteria + m ()V + m ()V +c net/minecraft/advancements/AdvancementRequirements aj net/minecraft/class_8782 + f Lcom/mojang/serialization/Codec; CODEC a field_47184 + f Lnet/minecraft/advancements/AdvancementRequirements; EMPTY b field_46084 + f Ljava/util/List; requirements c comp_1922 + m ()I size a method_53664 + m (Ljava/util/Collection;)Lnet/minecraft/advancements/AdvancementRequirements; allOf a method_53668 + p 0 requirements + m (Ljava/util/List;Ljava/util/function/Predicate;)Z anyMatch a method_53671 + p 0 requirements + p 1 predicate + m (Ljava/util/Set;)Lcom/mojang/serialization/DataResult; validate a method_54925 + p 1 requirements + m (Ljava/util/Set;Ljava/util/Set;)Ljava/lang/String; method_54926 a method_54926 + m (Ljava/util/function/Predicate;)Z test a method_53669 + p 1 predicate + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53670 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Ljava/util/List;)V method_54927 a method_54927 + m ()Z isEmpty b method_53677 + m (Ljava/util/Collection;)Lnet/minecraft/advancements/AdvancementRequirements; anyOf b method_53674 + p 0 criteria + m (Ljava/util/function/Predicate;)I count b method_53675 + p 1 filter + m (Lnet/minecraft/network/FriendlyByteBuf;)Ljava/util/List; method_54928 b method_54928 + m ()Ljava/util/Set; names c method_53678 + m ()Ljava/util/List; requirements d comp_1922 + m ()Ljava/lang/String; method_54929 e method_54929 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/AdvancementRequirements$Strategy aj$a net/minecraft/class_8782$class_8797 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; AND a field_16882 + f Lnet/minecraft/advancements/AdvancementRequirements$Strategy; OR b field_1257 + m ()V +c net/minecraft/advancements/AdvancementRewards ak net/minecraft/class_170 + f Lcom/mojang/serialization/Codec; CODEC a field_47185 + f Lnet/minecraft/advancements/AdvancementRewards; EMPTY b field_1167 + f I experience c comp_2025 + f Ljava/util/List; loot d comp_2026 + f Ljava/util/List; recipes e comp_2027 + f Ljava/util/Optional; function f comp_2028 + m ()I experience a comp_2025 + m (Lnet/minecraft/server/level/ServerPlayer;)V grant a method_748 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54930 a method_54930 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/commands/functions/CommandFunction;)V method_17978 a method_17978 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/commands/CacheableFunction;)Ljava/util/Optional; method_54931 a method_54931 + m ()Ljava/util/List; loot b comp_2026 + m ()Ljava/util/List; recipes c comp_2027 + m ()Ljava/util/Optional; function d comp_2028 + m (ILjava/util/List;Ljava/util/List;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/AdvancementRewards$Builder ak$a net/minecraft/class_170$class_171 + f I experience a field_1169 + f Lcom/google/common/collect/ImmutableList$Builder; loot b field_1171 + f Lcom/google/common/collect/ImmutableList$Builder; recipes c field_1168 + f Ljava/util/Optional; function d field_1170 + m ()Lnet/minecraft/advancements/AdvancementRewards; build a method_751 + m (I)Lnet/minecraft/advancements/AdvancementRewards$Builder; experience a method_750 + c Creates a new builder with the given amount of experience as a reward + p 0 experience + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/AdvancementRewards$Builder; loot a method_34899 + p 0 lootTable + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; recipe a method_753 + c Creates a new builder with the given recipe as a reward. + p 0 recipeId + m (I)Lnet/minecraft/advancements/AdvancementRewards$Builder; addExperience b method_749 + c Adds the given amount of experience. (Not a direct setter) + p 1 experience + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/AdvancementRewards$Builder; addLootTable b method_34900 + p 1 lootTable + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; addRecipe b method_752 + c Adds the given recipe to the rewards. + p 1 recipeId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; function c method_34901 + p 0 functionId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementRewards$Builder; runs d method_34902 + p 1 functionId + m ()V +c net/minecraft/advancements/AdvancementTree al net/minecraft/class_163 + f Lorg/slf4j/Logger; LOGGER a field_1158 + f Ljava/util/Map; nodes b field_1157 + f Ljava/util/Set; roots c field_1154 + f Ljava/util/Set; tasks d field_1156 + f Lnet/minecraft/advancements/AdvancementTree$Listener; listener e field_1155 + m ()V clear a method_714 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/AdvancementNode; get a method_53690 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V remove a method_718 + p 1 node + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementNode; get a method_716 + p 1 id + m (Lnet/minecraft/advancements/AdvancementTree$Listener;)V setListener a method_717 + p 1 listener + m (Ljava/util/Collection;)V addAll a method_53691 + p 1 advancements + m (Ljava/util/Set;)V remove a method_713 + p 1 advancements + m ()Ljava/lang/Iterable; roots b method_715 + m (Lnet/minecraft/advancements/AdvancementHolder;)Z tryInsert b method_53692 + p 1 advancement + m ()Ljava/util/Collection; nodes c method_53693 + m ()V + m ()V +c net/minecraft/advancements/AdvancementTree$Listener al$a net/minecraft/class_163$class_164 + m ()V onAdvancementsCleared a method_722 + m (Lnet/minecraft/advancements/AdvancementNode;)V onAddAdvancementRoot a method_723 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onRemoveAdvancementRoot b method_720 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onAddAdvancementTask c method_721 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V onRemoveAdvancementTask d method_719 + p 1 advancement +c net/minecraft/advancements/AdvancementType am net/minecraft/class_189 + f Lnet/minecraft/advancements/AdvancementType; TASK a field_1254 + f Lnet/minecraft/advancements/AdvancementType; CHALLENGE b field_1250 + f Lnet/minecraft/advancements/AdvancementType; GOAL c field_1249 + f Lcom/mojang/serialization/Codec; CODEC d field_47186 + f Ljava/lang/String; name e field_1251 + f Lnet/minecraft/ChatFormatting; chatColor f field_1255 + f Lnet/minecraft/network/chat/Component; displayName g field_26386 + f [Lnet/minecraft/advancements/AdvancementType; $VALUES h field_1253 + m ()Lnet/minecraft/ChatFormatting; getChatColor a method_830 + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/MutableComponent; createAnnouncement a method_54932 + p 1 advancement + p 2 player + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_30756 + m ()[Lnet/minecraft/advancements/AdvancementType; $values d method_36593 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 name + p 4 chatColor + m ()V +c net/minecraft/advancements/CriteriaTriggers an net/minecraft/class_174 + f Lnet/minecraft/advancements/critereon/ConsumeItemTrigger; CONSUME_ITEM A field_1198 + f Lnet/minecraft/advancements/critereon/EffectsChangedTrigger; EFFECTS_CHANGED B field_1193 + f Lnet/minecraft/advancements/critereon/UsedTotemTrigger; USED_TOTEM C field_1204 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; NETHER_TRAVEL D field_1211 + f Lnet/minecraft/advancements/critereon/FishingRodHookedTrigger; FISHING_ROD_HOOKED E field_1203 + f Lnet/minecraft/advancements/critereon/ChanneledLightningTrigger; CHANNELED_LIGHTNING F field_1202 + f Lnet/minecraft/advancements/critereon/ShotCrossbowTrigger; SHOT_CROSSBOW G field_1196 + f Lnet/minecraft/advancements/critereon/KilledByCrossbowTrigger; KILLED_BY_CROSSBOW H field_1197 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; RAID_WIN I field_19250 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; RAID_OMEN J field_19251 + f Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger; HONEY_BLOCK_SLIDE K field_21628 + f Lnet/minecraft/advancements/critereon/BeeNestDestroyedTrigger; BEE_NEST_DESTROYED L field_21629 + f Lnet/minecraft/advancements/critereon/TargetBlockTrigger; TARGET_BLOCK_HIT M field_22450 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; ITEM_USED_ON_BLOCK N field_24478 + f Lnet/minecraft/advancements/critereon/DefaultBlockInteractionTrigger; DEFAULT_BLOCK_USE O field_48268 + f Lnet/minecraft/advancements/critereon/AnyBlockInteractionTrigger; ANY_BLOCK_USE P field_48269 + f Lnet/minecraft/advancements/critereon/LootTableTrigger; GENERATE_LOOT Q field_24479 + f Lnet/minecraft/advancements/critereon/PickedUpItemTrigger; THROWN_ITEM_PICKED_UP_BY_ENTITY R field_24480 + f Lnet/minecraft/advancements/critereon/PickedUpItemTrigger; THROWN_ITEM_PICKED_UP_BY_PLAYER S field_38700 + f Lnet/minecraft/advancements/critereon/PlayerInteractTrigger; PLAYER_INTERACTED_WITH_ENTITY T field_25694 + f Lnet/minecraft/advancements/critereon/StartRidingTrigger; START_RIDING_TRIGGER U field_33870 + f Lnet/minecraft/advancements/critereon/LightningStrikeTrigger; LIGHTNING_STRIKE V field_33871 + f Lnet/minecraft/advancements/critereon/UsingItemTrigger; USING_ITEM W field_33872 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; FALL_FROM_HEIGHT X field_35013 + f Lnet/minecraft/advancements/critereon/DistanceTrigger; RIDE_ENTITY_IN_LAVA_TRIGGER Y field_35014 + f Lnet/minecraft/advancements/critereon/KilledTrigger; KILL_MOB_NEAR_SCULK_CATALYST Z field_38376 + f Lcom/mojang/serialization/Codec; CODEC a field_47187 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; ALLAY_DROP_ITEM_ON_BLOCK aa field_38701 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; AVOID_VIBRATION ab field_38838 + f Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger; RECIPE_CRAFTED ac field_44587 + f Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger; CRAFTER_RECIPE_CRAFTED ad field_49922 + f Lnet/minecraft/advancements/critereon/FallAfterExplosionTrigger; FALL_AFTER_EXPLOSION ae field_49923 + f Lnet/minecraft/advancements/critereon/ImpossibleTrigger; IMPOSSIBLE b field_1184 + f Lnet/minecraft/advancements/critereon/KilledTrigger; PLAYER_KILLED_ENTITY c field_1192 + f Lnet/minecraft/advancements/critereon/KilledTrigger; ENTITY_KILLED_PLAYER d field_1188 + f Lnet/minecraft/advancements/critereon/EnterBlockTrigger; ENTER_BLOCK e field_1180 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger; INVENTORY_CHANGED f field_1195 + f Lnet/minecraft/advancements/critereon/RecipeUnlockedTrigger; RECIPE_UNLOCKED g field_1207 + f Lnet/minecraft/advancements/critereon/PlayerHurtEntityTrigger; PLAYER_HURT_ENTITY h field_1199 + f Lnet/minecraft/advancements/critereon/EntityHurtPlayerTrigger; ENTITY_HURT_PLAYER i field_1209 + f Lnet/minecraft/advancements/critereon/EnchantedItemTrigger; ENCHANTED_ITEM j field_1181 + f Lnet/minecraft/advancements/critereon/FilledBucketTrigger; FILLED_BUCKET k field_1208 + f Lnet/minecraft/advancements/critereon/BrewedPotionTrigger; BREWED_POTION l field_1213 + f Lnet/minecraft/advancements/critereon/ConstructBeaconTrigger; CONSTRUCT_BEACON m field_1189 + f Lnet/minecraft/advancements/critereon/UsedEnderEyeTrigger; USED_ENDER_EYE n field_1186 + f Lnet/minecraft/advancements/critereon/SummonedEntityTrigger; SUMMONED_ENTITY o field_1182 + f Lnet/minecraft/advancements/critereon/BredAnimalsTrigger; BRED_ANIMALS p field_1190 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; LOCATION q field_1194 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; SLEPT_IN_BED r field_1212 + f Lnet/minecraft/advancements/critereon/CuredZombieVillagerTrigger; CURED_ZOMBIE_VILLAGER s field_1210 + f Lnet/minecraft/advancements/critereon/TradeTrigger; TRADE t field_1206 + f Lnet/minecraft/advancements/critereon/ItemDurabilityTrigger; ITEM_DURABILITY_CHANGED u field_1185 + f Lnet/minecraft/advancements/critereon/LevitationTrigger; LEVITATION v field_1200 + f Lnet/minecraft/advancements/critereon/ChangeDimensionTrigger; CHANGED_DIMENSION w field_1183 + f Lnet/minecraft/advancements/critereon/PlayerTrigger; TICK x field_1187 + f Lnet/minecraft/advancements/critereon/TameAnimalTrigger; TAME_ANIMAL y field_1201 + f Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger; PLACED_BLOCK z field_1191 + m (Ljava/lang/String;Lnet/minecraft/advancements/CriterionTrigger;)Lnet/minecraft/advancements/CriterionTrigger; register a method_767 + p 0 name + p 1 trigger + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/advancements/CriterionTrigger; bootstrap a method_54933 + p 0 registry + m ()V + m ()V +c net/minecraft/advancements/Criterion ao net/minecraft/class_175 + f Lcom/mojang/serialization/Codec; CODEC a field_47188 + f Lnet/minecraft/advancements/CriterionTrigger; trigger b comp_1923 + f Lnet/minecraft/advancements/CriterionTriggerInstance; triggerInstance c comp_1924 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC d field_47189 + m ()Lnet/minecraft/advancements/CriterionTrigger; trigger a comp_1923 + m (Lnet/minecraft/advancements/CriterionTrigger;)Lcom/mojang/serialization/Codec; criterionCodec a method_54935 + p 0 trigger + m (Lnet/minecraft/advancements/CriterionTrigger;Lnet/minecraft/advancements/CriterionTriggerInstance;)Lnet/minecraft/advancements/Criterion; method_54936 a method_54936 + m ()Lnet/minecraft/advancements/CriterionTriggerInstance; triggerInstance b comp_1924 + m (Lnet/minecraft/advancements/CriterionTrigger;Lnet/minecraft/advancements/CriterionTriggerInstance;)V + m ()V +c net/minecraft/advancements/CriterionProgress ap net/minecraft/class_178 + f Ljava/time/Instant; obtained a field_1219 + m ()Z isDone a method_784 + m (Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_787 + p 1 buffer + m ()V grant b method_789 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/advancements/CriterionProgress; fromNetwork b method_785 + p 0 buffer + m ()V revoke c method_790 + m ()Ljava/time/Instant; getObtained d method_786 + m ()V + m (Ljava/time/Instant;)V + p 1 obtained +c net/minecraft/advancements/CriterionTrigger aq net/minecraft/class_179 + m ()Lcom/mojang/serialization/Codec; codec a method_54937 + m (Lnet/minecraft/server/PlayerAdvancements;)V removePlayerListeners a method_791 + p 1 playerAdvancements + m (Lnet/minecraft/server/PlayerAdvancements;Lnet/minecraft/advancements/CriterionTrigger$Listener;)V addPlayerListener a method_792 + p 1 playerAdvancements + p 2 listener + m (Lnet/minecraft/advancements/CriterionTriggerInstance;)Lnet/minecraft/advancements/Criterion; createCriterion a method_53699 + p 1 triggerInstance + m (Lnet/minecraft/server/PlayerAdvancements;Lnet/minecraft/advancements/CriterionTrigger$Listener;)V removePlayerListener b method_793 + p 1 playerAdvancements + p 2 listener +c net/minecraft/advancements/CriterionTrigger$Listener aq$a net/minecraft/class_179$class_180 + f Lnet/minecraft/advancements/CriterionTriggerInstance; trigger a comp_1925 + f Lnet/minecraft/advancements/AdvancementHolder; advancement b comp_1926 + f Ljava/lang/String; criterion c comp_1927 + m ()Lnet/minecraft/advancements/CriterionTriggerInstance; trigger a comp_1925 + m (Lnet/minecraft/server/PlayerAdvancements;)V run a method_796 + p 1 playerAdvancements + m ()Lnet/minecraft/advancements/AdvancementHolder; advancement b comp_1926 + m ()Ljava/lang/String; criterion c comp_1927 + m (Lnet/minecraft/advancements/CriterionTriggerInstance;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)V +c net/minecraft/advancements/CriterionTriggerInstance ar net/minecraft/class_184 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;)V validate a method_54938 + p 1 validator +c net/minecraft/advancements/DisplayInfo as net/minecraft/class_185 + f Lcom/mojang/serialization/Codec; CODEC a field_47190 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48276 + f Lnet/minecraft/network/chat/Component; title c field_1240 + f Lnet/minecraft/network/chat/Component; description d field_1242 + f Lnet/minecraft/world/item/ItemStack; icon e field_1241 + f Ljava/util/Optional; background f field_1243 + f Lnet/minecraft/advancements/AdvancementType; type g field_1237 + f Z showToast h field_1239 + f Z announceChat i field_1238 + f Z hidden j field_1236 + f F x k field_1245 + f F y l field_1244 + m ()Lnet/minecraft/network/chat/Component; getTitle a method_811 + m (FF)V setLocation a method_816 + p 1 x + p 2 y + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54939 a method_54939 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V serializeToNetwork a method_813 + p 1 buffer + m ()Lnet/minecraft/network/chat/Component; getDescription b method_817 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/advancements/DisplayInfo; fromNetwork b method_820 + p 0 buffer + m ()Lnet/minecraft/world/item/ItemStack; getIcon c method_821 + m ()Ljava/util/Optional; getBackground d method_812 + m ()Lnet/minecraft/advancements/AdvancementType; getType e method_815 + m ()F getX f method_818 + m ()F getY g method_819 + m ()Z shouldShowToast h method_823 + m ()Z shouldAnnounceChat i method_808 + m ()Z isHidden j method_824 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Lnet/minecraft/advancements/AdvancementType;ZZZ)V + p 1 icon + p 2 title + p 3 description + p 4 background + p 5 type + p 6 showToast + p 7 announceChat + p 8 hidden + m ()V +c net/minecraft/advancements/TreeNodePosition at net/minecraft/class_194 + f Lnet/minecraft/advancements/AdvancementNode; node a field_46086 + f Lnet/minecraft/advancements/TreeNodePosition; parent b field_1258 + f Lnet/minecraft/advancements/TreeNodePosition; previousSibling c field_1260 + f I childIndex d field_1261 + f Ljava/util/List; children e field_1267 + f Lnet/minecraft/advancements/TreeNodePosition; ancestor f field_1262 + f Lnet/minecraft/advancements/TreeNodePosition; thread g field_1264 + f I x h field_1259 + f F y i field_1269 + f F mod j field_1268 + f F change k field_1266 + f F shift l field_1265 + m ()V firstWalk a method_847 + m (F)V thirdWalk a method_843 + p 1 y + m (FIF)F secondWalk a method_842 + p 1 offsetY + p 2 columnX + p 3 subtreeTopY + m (Lnet/minecraft/advancements/AdvancementNode;)V run a method_852 + p 0 rootNode + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; addChild a method_846 + p 1 child + p 2 previousSibling + m (Lnet/minecraft/advancements/DisplayInfo;)V method_53710 a method_53710 + m (Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; apportion a method_841 + p 1 node + m (Lnet/minecraft/advancements/TreeNodePosition;F)V moveSubtree a method_848 + p 1 node + p 2 shift + m (Lnet/minecraft/advancements/TreeNodePosition;Lnet/minecraft/advancements/TreeNodePosition;)Lnet/minecraft/advancements/TreeNodePosition; getAncestor a method_845 + p 1 self + p 2 other + m ()V executeShifts b method_850 + m ()Lnet/minecraft/advancements/TreeNodePosition; previousOrThread c method_849 + m ()Lnet/minecraft/advancements/TreeNodePosition; nextOrThread d method_844 + m ()V finalizePosition e method_851 + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/TreeNodePosition;Lnet/minecraft/advancements/TreeNodePosition;II)V + p 1 node + p 2 parent + p 3 previousSibling + p 4 childIndex + p 5 x +c net/minecraft/advancements/critereon/AnyBlockInteractionTrigger au net/minecraft/class_9104 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V trigger a method_56049 + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/AnyBlockInteractionTrigger$TriggerInstance;)Z method_56050 a method_56050 + m ()V +c net/minecraft/advancements/critereon/AnyBlockInteractionTrigger$TriggerInstance au$a net/minecraft/class_9104$class_9105 + f Lcom/mojang/serialization/Codec; CODEC a field_48277 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2203 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_56051 a method_56051 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56052 a method_56052 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_56053 + p 1 context + m ()Ljava/util/Optional; location b comp_2203 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/BeeNestDestroyedTrigger av net/minecraft/class_4708 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_23875 + p 1 player + p 2 state + p 3 stack + p 4 numBees + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/BeeNestDestroyedTrigger$TriggerInstance;)Z method_23872 a method_23872 + m ()V +c net/minecraft/advancements/critereon/BeeNestDestroyedTrigger$TriggerInstance av$a net/minecraft/class_4708$class_4709 + f Lcom/mojang/serialization/Codec; CODEC a field_47217 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2030 + f Ljava/util/Optional; item d comp_2031 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; beesInside e comp_2032 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54940 a method_54940 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; destroyedBeeNest a method_23879 + p 0 block + p 1 item + p 2 numBees + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;I)Z matches a method_23878 + p 1 state + p 2 stack + p 3 numBees + m ()Ljava/util/Optional; block b comp_2030 + m ()Ljava/util/Optional; item c comp_2031 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; beesInside d comp_2032 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/BlockPredicate aw net/minecraft/class_4550 + f Lcom/mojang/serialization/Codec; CODEC a field_45723 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49181 + f Ljava/util/Optional; blocks c comp_1732 + f Ljava/util/Optional; properties d comp_1733 + f Ljava/util/Optional; nbt e comp_1734 + m ()Z requiresNbt a method_57143 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22454 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57144 a method_57144 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/advancements/critereon/NbtPredicate;)Z matchesBlockEntity a method_57145 + p 0 level + p 1 blockEntity + p 2 nbtPredicate + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matchesState a method_57146 + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z matches a method_57147 + p 1 block + m ()Ljava/util/Optional; blocks b comp_1732 + m ()Ljava/util/Optional; properties c comp_1733 + m ()Ljava/util/Optional; nbt d comp_1734 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/BlockPredicate$Builder aw$a net/minecraft/class_4550$class_4710 + f Ljava/util/Optional; blocks a field_21572 + f Ljava/util/Optional; properties b field_21574 + f Ljava/util/Optional; nbt c field_21575 + m ()Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; block a method_23880 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_29233 + p 1 tag + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; setProperties a method_27963 + p 1 properties + m (Ljava/util/Collection;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_37214 + p 1 blocks + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; hasNbt a method_35042 + p 1 nbt + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/critereon/BlockPredicate$Builder; of a method_27962 + p 1 blocks + m ()Lnet/minecraft/advancements/critereon/BlockPredicate; build b method_23882 + m ()V +c net/minecraft/advancements/critereon/BredAnimalsTrigger ax net/minecraft/class_196 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;)V trigger a method_855 + p 1 player + p 2 parent + p 3 partner + p 4 child + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/BredAnimalsTrigger$TriggerInstance;)Z method_22455 a method_22455 + m ()V +c net/minecraft/advancements/critereon/BredAnimalsTrigger$TriggerInstance ax$a net/minecraft/class_196$class_198 + f Lcom/mojang/serialization/Codec; CODEC a field_47228 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; parent c comp_2033 + f Ljava/util/Optional; partner d comp_2034 + f Ljava/util/Optional; child e comp_2035 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; bredAnimals a method_861 + p 0 child + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54952 a method_54952 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_862 + p 1 parentContext + p 2 partnerContext + p 3 childContext + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_53075 + p 0 predicate + p 1 context + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; bredAnimals a method_29918 + p 0 parent + p 1 partner + p 2 child + m ()Lnet/minecraft/advancements/Criterion; bredAnimals b method_860 + m ()Ljava/util/Optional; parent c comp_2033 + m ()Ljava/util/Optional; partner d comp_2034 + m ()Ljava/util/Optional; child e comp_2035 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 parent + p 3 partner + p 4 child + m ()V +c net/minecraft/advancements/critereon/BrewedPotionTrigger ay net/minecraft/class_1996 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/Holder;)V trigger a method_8784 + p 1 player + p 2 potion + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/BrewedPotionTrigger$TriggerInstance;)Z method_22456 a method_22456 + m ()V +c net/minecraft/advancements/critereon/BrewedPotionTrigger$TriggerInstance ay$a net/minecraft/class_1996$class_1998 + f Lcom/mojang/serialization/Codec; CODEC a field_47229 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; potion c comp_2036 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54953 a method_54953 + m (Lnet/minecraft/core/Holder;)Z matches a method_8790 + p 1 potion + m ()Lnet/minecraft/advancements/Criterion; brewedPotion b method_8791 + m ()Ljava/util/Optional; potion c comp_2036 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ChangeDimensionTrigger az net/minecraft/class_1999 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/advancements/critereon/ChangeDimensionTrigger$TriggerInstance;)Z method_22457 a method_22457 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V trigger a method_8794 + p 1 player + p 2 fromLevel + p 3 toLevel + m ()V +c net/minecraft/advancements/critereon/ChangeDimensionTrigger$TriggerInstance az$a net/minecraft/class_1999$class_2001 + f Lcom/mojang/serialization/Codec; CODEC a field_47230 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; from c comp_2037 + f Ljava/util/Optional; to d comp_2038 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimensionTo a method_8799 + p 0 to + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimension a method_35068 + p 0 from + p 1 to + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54954 a method_54954 + m ()Lnet/minecraft/advancements/Criterion; changedDimension b method_35070 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; changedDimensionFrom b method_35069 + p 0 from + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Z matches b method_8800 + p 1 fromLevel + p 2 toLevel + m ()Ljava/util/Optional; from c comp_2037 + m ()Ljava/util/Optional; to d comp_2038 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ChanneledLightningTrigger ba net/minecraft/class_2002 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; method_27791 a method_27791 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/Collection;)V trigger a method_8803 + p 1 player + p 2 entityTriggered + m (Ljava/util/List;Lnet/minecraft/advancements/critereon/ChanneledLightningTrigger$TriggerInstance;)Z method_22458 a method_22458 + m ()V +c net/minecraft/advancements/critereon/ChanneledLightningTrigger$TriggerInstance ba$a net/minecraft/class_2002$class_2004 + f Lcom/mojang/serialization/Codec; CODEC a field_47231 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/List; victims c comp_2039 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54955 a method_54955 + m (Ljava/util/Collection;)Z matches a method_8808 + p 1 victims + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; channeledLightning a method_8809 + p 0 victims + m ()Ljava/util/List; victims b comp_2039 + m (Ljava/util/Optional;Ljava/util/List;)V + p 1 player + p 2 victims + m ()V +c net/minecraft/advancements/critereon/CollectionContentsPredicate bb net/minecraft/class_9639 + m ()Ljava/util/List; unpack a method_59605 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59606 + p 0 testCodec + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/CollectionContentsPredicate; of a method_59607 + p 0 tests + m ([Ljava/util/function/Predicate;)Lnet/minecraft/advancements/critereon/CollectionContentsPredicate; of a method_59608 + p 0 tests +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Multiple bb$a net/minecraft/class_9639$class_9640 + f Ljava/util/List; tests a comp_2611 + m (Ljava/lang/Iterable;)Z test a method_59609 + p 1 contents + m (Ljava/lang/Object;Ljava/util/function/Predicate;)Z method_59610 a method_59610 + m ()Ljava/util/List; tests b comp_2611 + m (Ljava/util/List;)V +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Single bb$b net/minecraft/class_9639$class_9641 + f Ljava/util/function/Predicate; test a comp_2612 + m (Ljava/lang/Iterable;)Z test a method_59611 + p 1 contents + m ()Ljava/util/function/Predicate; test b comp_2612 + m (Ljava/util/function/Predicate;)V +c net/minecraft/advancements/critereon/CollectionContentsPredicate$Zero bb$c net/minecraft/class_9639$class_9642 + m (Ljava/lang/Iterable;)Z test a method_59612 + p 1 contents + m ()V +c net/minecraft/advancements/critereon/CollectionCountsPredicate bc net/minecraft/class_9643 + m ()Ljava/util/List; unpack a method_59613 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59614 + p 0 testCodec + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/CollectionCountsPredicate; of a method_59615 + p 0 entries + m ([Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry;)Lnet/minecraft/advancements/critereon/CollectionCountsPredicate; of a method_59616 + p 0 entries +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Entry bc$a net/minecraft/class_9643$class_9644 + f Ljava/util/function/Predicate; test a comp_2613 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_2614 + m ()Ljava/util/function/Predicate; test a comp_2613 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59617 + p 0 testCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59618 a method_59618 + m (Ljava/lang/Iterable;)Z test a method_59619 + p 1 collection + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_2614 + m (Ljava/util/function/Predicate;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Multiple bc$b net/minecraft/class_9643$class_9645 + f Ljava/util/List; entries a comp_2615 + m (Ljava/lang/Iterable;)Z test a method_59620 + p 1 collection + m ()Ljava/util/List; entries b comp_2615 + m (Ljava/util/List;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Single bc$c net/minecraft/class_9643$class_9646 + f Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry; entry a comp_2616 + m (Ljava/lang/Iterable;)Z test a method_59621 + p 1 collection + m ()Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry; entry b comp_2616 + m (Lnet/minecraft/advancements/critereon/CollectionCountsPredicate$Entry;)V +c net/minecraft/advancements/critereon/CollectionCountsPredicate$Zero bc$d net/minecraft/class_9643$class_9647 + m (Ljava/lang/Iterable;)Z test a method_59622 + p 1 collection + m ()V +c net/minecraft/advancements/critereon/CollectionPredicate bd net/minecraft/class_9648 + f Ljava/util/Optional; contains a comp_2617 + f Ljava/util/Optional; counts b comp_2618 + f Ljava/util/Optional; size c comp_2619 + m ()Ljava/util/Optional; contains a comp_2617 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_59623 + p 0 testCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59624 a method_59624 + m (Ljava/lang/Iterable;)Z test a method_59625 + p 1 collection + m ()Ljava/util/Optional; counts b comp_2618 + m ()Ljava/util/Optional; size c comp_2619 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V +c net/minecraft/advancements/critereon/ConstructBeaconTrigger be net/minecraft/class_2006 + m (ILnet/minecraft/advancements/critereon/ConstructBeaconTrigger$TriggerInstance;)Z method_22459 a method_22459 + m (Lnet/minecraft/server/level/ServerPlayer;I)V trigger a method_8812 + p 1 player + p 2 level + m ()V +c net/minecraft/advancements/critereon/ConstructBeaconTrigger$TriggerInstance be$a net/minecraft/class_2006$class_2008 + f Lcom/mojang/serialization/Codec; CODEC a field_47232 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_2040 + m (I)Z matches a method_8817 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54956 a method_54956 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; constructedBeacon a method_8818 + p 0 level + m ()Lnet/minecraft/advancements/Criterion; constructedBeacon b method_35110 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_2040 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 level + m ()V +c net/minecraft/advancements/critereon/ConsumeItemTrigger bf net/minecraft/class_2010 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8821 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ConsumeItemTrigger$TriggerInstance;)Z method_22460 a method_22460 + m ()V +c net/minecraft/advancements/critereon/ConsumeItemTrigger$TriggerInstance bf$a net/minecraft/class_2010$class_2012 + f Lcom/mojang/serialization/Codec; CODEC a field_47233 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2041 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54957 a method_54957 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; usedItem a method_35112 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_8826 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; usedItem a method_8828 + p 0 item + m ()Lnet/minecraft/advancements/Criterion; usedItem b method_8827 + m ()Ljava/util/Optional; item c comp_2041 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/ContextAwarePredicate bg net/minecraft/class_5258 + f Lcom/mojang/serialization/Codec; CODEC a field_47234 + f Ljava/util/List; conditions b field_24389 + f Ljava/util/function/Predicate; compositePredicates c field_24390 + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)Ljava/util/List; method_54958 a method_54958 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_27806 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_54959 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; create a method_27973 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/advancements/critereon/CriterionValidator bh net/minecraft/class_8944 + f Lnet/minecraft/util/ProblemReporter; reporter a field_47235 + f Lnet/minecraft/core/HolderGetter$Provider; lootData b field_47236 + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/lang/String;)V validate a method_54961 + p 1 entity + p 2 contextParams + p 3 name + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Ljava/lang/String;)V validateEntity a method_54962 + p 1 entity + p 2 name + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_54963 a method_54963 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/lang/String;)V validate a method_54964 + p 1 entities + p 2 contextParams + p 3 name + m (Ljava/util/List;Ljava/lang/String;)V validateEntities a method_54965 + p 1 entities + p 2 name + m (Ljava/util/Optional;Ljava/lang/String;)V validateEntity a method_54966 + p 1 entity + p 2 name + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 reporter + p 2 lootData +c net/minecraft/advancements/critereon/CuredZombieVillagerTrigger bi net/minecraft/class_2014 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/monster/Zombie;Lnet/minecraft/world/entity/npc/Villager;)V trigger a method_8831 + p 1 player + p 2 zombie + p 3 villager + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/CuredZombieVillagerTrigger$TriggerInstance;)Z method_22461 a method_22461 + m ()V +c net/minecraft/advancements/critereon/CuredZombieVillagerTrigger$TriggerInstance bi$a net/minecraft/class_2014$class_2016 + f Lcom/mojang/serialization/Codec; CODEC a field_47237 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; zombie c comp_2042 + f Ljava/util/Optional; villager d comp_2043 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54972 a method_54972 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_8837 + p 1 zombie + p 2 villager + m ()Lnet/minecraft/advancements/Criterion; curedZombieVillager b method_8836 + m ()Ljava/util/Optional; zombie c comp_2042 + m ()Ljava/util/Optional; villager d comp_2043 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 zombie + p 3 villager + m ()V +c net/minecraft/advancements/critereon/DamagePredicate bj net/minecraft/class_2019 + f Lcom/mojang/serialization/Codec; CODEC a field_47238 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage b comp_1735 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage c comp_1736 + f Ljava/util/Optional; sourceEntity d comp_1737 + f Ljava/util/Optional; blocked e comp_1738 + f Ljava/util/Optional; type f comp_1739 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage a comp_1735 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_8838 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54973 a method_54973 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage b comp_1736 + m ()Ljava/util/Optional; sourceEntity c comp_1737 + m ()Ljava/util/Optional; blocked d comp_1738 + m ()Ljava/util/Optional; type e comp_1739 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DamagePredicate$Builder bj$a net/minecraft/class_2019$class_2020 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; dealtDamage a field_9530 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; takenDamage b field_9527 + f Ljava/util/Optional; sourceEntity c field_9528 + f Ljava/util/Optional; blocked d field_9526 + f Ljava/util/Optional; type e field_9529 + m ()Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; damageInstance a method_8844 + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; type a method_8842 + p 1 typeBuilder + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; type a method_35116 + p 1 type + m (Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; sourceEntity a method_35117 + p 1 sourceEntity + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; dealtDamage a method_35118 + p 1 dealtDamage + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; blocked a method_8841 + p 1 blocked + m ()Lnet/minecraft/advancements/critereon/DamagePredicate; build b method_8843 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DamagePredicate$Builder; takenDamage b method_35119 + p 1 takenDamage + m ()V +c net/minecraft/advancements/critereon/DamageSourcePredicate bk net/minecraft/class_2022 + f Lcom/mojang/serialization/Codec; CODEC a field_45727 + f Ljava/util/List; tags b comp_1740 + f Ljava/util/Optional; directEntity c comp_1741 + f Ljava/util/Optional; sourceEntity d comp_1742 + f Ljava/util/Optional; isDirect e comp_2793 + m ()Ljava/util/List; tags a comp_1740 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_8845 + p 1 level + p 2 position + p 3 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_8847 + p 1 player + p 2 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53116 a method_53116 + m ()Ljava/util/Optional; directEntity b comp_1741 + m ()Ljava/util/Optional; sourceEntity c comp_1742 + m ()Ljava/util/Optional; isDirect d comp_2793 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DamageSourcePredicate$Builder bk$a net/minecraft/class_2022$class_2023 + f Lcom/google/common/collect/ImmutableList$Builder; tags a field_42273 + f Ljava/util/Optional; directEntity b field_9544 + f Ljava/util/Optional; sourceEntity c field_9545 + f Ljava/util/Optional; isDirect d field_51883 + m ()Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; damageType a method_8855 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; direct a method_8854 + p 1 directEntity + m (Lnet/minecraft/advancements/critereon/TagPredicate;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; tag a method_48785 + p 1 tag + m (Z)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; isDirect a method_60488 + p 1 isDirect + m ()Lnet/minecraft/advancements/critereon/DamageSourcePredicate; build b method_8851 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder; source b method_35131 + p 1 sourceEntity + m ()V +c net/minecraft/advancements/critereon/DefaultBlockInteractionTrigger bl net/minecraft/class_9107 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)V trigger a method_56066 + p 1 player + p 2 pos + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/DefaultBlockInteractionTrigger$TriggerInstance;)Z method_56067 a method_56067 + m ()V +c net/minecraft/advancements/critereon/DefaultBlockInteractionTrigger$TriggerInstance bl$a net/minecraft/class_9107$class_9108 + f Lcom/mojang/serialization/Codec; CODEC a field_48317 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2204 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_56068 a method_56068 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56069 a method_56069 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_56070 + p 1 context + m ()Ljava/util/Optional; location b comp_2204 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/DistancePredicate bm net/minecraft/class_2025 + f Lcom/mojang/serialization/Codec; CODEC a field_45728 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_1743 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_1744 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_1745 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontal e comp_1746 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; absolute f comp_1747 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_1743 + m (DDDDDD)Z matches a method_8859 + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53118 a method_53118 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; horizontal a method_8860 + p 0 horizontal + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_1744 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; vertical b method_8856 + p 0 vertical + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_1745 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/DistancePredicate; absolute c method_37223 + p 0 absolute + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontal d comp_1746 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; absolute e comp_1747 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + p 1 x + p 2 y + p 3 z + p 4 horizontal + p 5 absolute + m ()V +c net/minecraft/advancements/critereon/DistanceTrigger bn net/minecraft/class_2108 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;)V trigger a method_9080 + p 1 player + p 2 position + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/advancements/critereon/DistanceTrigger$TriggerInstance;)Z method_22486 a method_22486 + m ()V +c net/minecraft/advancements/critereon/DistanceTrigger$TriggerInstance bn$a net/minecraft/class_2108$class_2110 + f Lcom/mojang/serialization/Codec; CODEC a field_47239 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; startPosition c comp_2044 + f Ljava/util/Optional; distance d comp_2045 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z matches a method_9086 + p 1 level + p 2 startPosition + p 3 currentPosition + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; travelledThroughNether a method_9085 + p 0 distance + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; rideEntityInLava a method_38850 + p 0 player + p 1 distance + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DistancePredicate;Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/Criterion; fallFromHeight a method_38851 + p 0 player + p 1 distance + p 2 startPosition + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54976 a method_54976 + m ()Ljava/util/Optional; startPosition b comp_2044 + m ()Ljava/util/Optional; distance c comp_2045 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 startPosition + p 3 distance + m ()V +c net/minecraft/advancements/critereon/EffectsChangedTrigger bo net/minecraft/class_2027 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)V trigger a method_8863 + p 1 player + p 2 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/EffectsChangedTrigger$TriggerInstance;)Z method_22462 a method_22462 + m ()V +c net/minecraft/advancements/critereon/EffectsChangedTrigger$TriggerInstance bo$a net/minecraft/class_2027$class_2029 + f Lcom/mojang/serialization/Codec; CODEC a field_47240 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; effects c comp_2046 + f Ljava/util/Optional; source d comp_2047 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_8868 + p 1 player + p 2 lootContext + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; gotEffectsFrom a method_37224 + p 0 source + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54977 a method_54977 + m (Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder;)Lnet/minecraft/advancements/Criterion; hasEffects a method_8869 + p 0 effects + m ()Ljava/util/Optional; effects b comp_2046 + m ()Ljava/util/Optional; source c comp_2047 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 effects + p 3 source + m ()V +c net/minecraft/advancements/critereon/EnchantedItemTrigger bp net/minecraft/class_2030 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_8870 + p 1 player + p 2 item + p 3 levelsSpent + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/EnchantedItemTrigger$TriggerInstance;)Z method_22463 a method_22463 + m ()V +c net/minecraft/advancements/critereon/EnchantedItemTrigger$TriggerInstance bp$a net/minecraft/class_2030$class_2032 + f Lcom/mojang/serialization/Codec; CODEC a field_47241 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2048 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; levels d comp_2049 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54978 a method_54978 + m (Lnet/minecraft/world/item/ItemStack;I)Z matches a method_8878 + p 1 item + p 2 levels + m ()Lnet/minecraft/advancements/Criterion; enchantedItem b method_8877 + m ()Ljava/util/Optional; item c comp_2048 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; levels d comp_2049 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 item + p 3 levels + m ()V +c net/minecraft/advancements/critereon/EnchantmentPredicate bq net/minecraft/class_2035 + f Lcom/mojang/serialization/Codec; CODEC a field_45741 + f Ljava/util/Optional; enchantments b comp_2665 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level c comp_1749 + m ()Ljava/util/Optional; enchantments a comp_2665 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53126 a method_53126 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Z containedIn a method_8880 + p 1 enchantments + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/core/Holder;)Z matchesEnchantment a method_59916 + p 1 itemEnchantments + p 2 enchantment + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level b comp_1749 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 enchantment + p 2 level + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 enchantments + p 2 level + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/EnterBlockTrigger br net/minecraft/class_2037 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;)V trigger a method_8885 + p 1 player + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Z method_22465 a method_22465 + m ()V +c net/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance br$a net/minecraft/class_2037$class_2039 + f Lcom/mojang/serialization/Codec; CODEC a field_47242 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2050 + f Ljava/util/Optional; state d comp_2051 + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; validate a method_54979 + p 0 triggerInstance + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_54980 a method_54980 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54981 a method_54981 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; entersBlock a method_8890 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_8891 + p 1 state + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_54982 a method_54982 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_54983 a method_54983 + m ()Ljava/util/Optional; block b comp_2050 + m (Lnet/minecraft/advancements/critereon/EnterBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; method_54984 b method_54984 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_54985 b method_54985 + m ()Ljava/util/Optional; state c comp_2051 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityEquipmentPredicate bs net/minecraft/class_3735 + f Lcom/mojang/serialization/Codec; CODEC a field_45744 + f Ljava/util/Optional; head b comp_1750 + f Ljava/util/Optional; chest c comp_1751 + f Ljava/util/Optional; legs d comp_1752 + f Ljava/util/Optional; feet e comp_1753 + f Ljava/util/Optional; body f comp_2620 + f Ljava/util/Optional; mainhand g comp_1754 + f Ljava/util/Optional; offhand h comp_1755 + m ()Ljava/util/Optional; head a comp_1750 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_16226 + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53129 a method_53129 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate; captainPredicate a method_58057 + p 0 patternRegistry + m ()Ljava/util/Optional; chest b comp_1751 + m ()Ljava/util/Optional; legs c comp_1752 + m ()Ljava/util/Optional; feet d comp_1753 + m ()Ljava/util/Optional; body e comp_2620 + m ()Ljava/util/Optional; mainhand f comp_1754 + m ()Ljava/util/Optional; offhand g comp_1755 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder bs$a net/minecraft/class_3735$class_5278 + f Ljava/util/Optional; head a field_24482 + f Ljava/util/Optional; chest b field_24483 + f Ljava/util/Optional; legs c field_24484 + f Ljava/util/Optional; feet d field_24485 + f Ljava/util/Optional; body e field_51371 + f Ljava/util/Optional; mainhand f field_24486 + f Ljava/util/Optional; offhand g field_24487 + m ()Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; equipment a method_27965 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; head a method_27966 + p 1 head + m ()Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate; build b method_27967 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; chest b method_27968 + p 1 chest + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; legs c method_27969 + p 1 legs + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; feet d method_27970 + p 1 feet + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; body e method_59651 + p 1 body + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; mainhand f method_35195 + p 1 mainhand + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder; offhand g method_35196 + p 1 offhand + m ()V +c net/minecraft/advancements/critereon/EntityFlagsPredicate bt net/minecraft/class_2040 + f Lcom/mojang/serialization/Codec; CODEC a field_45745 + f Ljava/util/Optional; isOnGround b comp_2666 + f Ljava/util/Optional; isOnFire c comp_1756 + f Ljava/util/Optional; isCrouching d comp_1757 + f Ljava/util/Optional; isSprinting e comp_1758 + f Ljava/util/Optional; isSwimming f comp_1759 + f Ljava/util/Optional; isFlying g comp_2667 + f Ljava/util/Optional; isBaby h comp_1760 + m ()Ljava/util/Optional; isOnGround a comp_2666 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_8892 + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53131 a method_53131 + m ()Ljava/util/Optional; isOnFire b comp_1756 + m ()Ljava/util/Optional; isCrouching c comp_1757 + m ()Ljava/util/Optional; isSprinting d comp_1758 + m ()Ljava/util/Optional; isSwimming e comp_1759 + m ()Ljava/util/Optional; isFlying f comp_2667 + m ()Ljava/util/Optional; isBaby g comp_1760 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityFlagsPredicate$Builder bt$a net/minecraft/class_2040$class_2041 + f Ljava/util/Optional; isOnGround a field_51567 + f Ljava/util/Optional; isOnFire b field_9587 + f Ljava/util/Optional; isCrouching c field_9586 + f Ljava/util/Optional; isSprinting d field_9588 + f Ljava/util/Optional; isSwimming e field_9585 + f Ljava/util/Optional; isFlying f field_51568 + f Ljava/util/Optional; isBaby g field_9584 + m ()Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; flags a method_8897 + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setOnGround a method_59918 + p 1 onGround + m ()Lnet/minecraft/advancements/critereon/EntityFlagsPredicate; build b method_8899 + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setOnFire b method_8898 + p 1 onFire + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setCrouching c method_35203 + p 1 isCrouching + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setSprinting d method_35204 + p 1 isSprinting + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setSwimming e method_35205 + p 1 isSwimming + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setIsFlying f method_59919 + p 1 isFlying + m (Ljava/lang/Boolean;)Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder; setIsBaby g method_29935 + p 1 isBaby + m ()V +c net/minecraft/advancements/critereon/EntityHurtPlayerTrigger bu net/minecraft/class_2044 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)V trigger a method_22467 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZLnet/minecraft/advancements/critereon/EntityHurtPlayerTrigger$TriggerInstance;)Z method_22468 a method_22468 + m ()V +c net/minecraft/advancements/critereon/EntityHurtPlayerTrigger$TriggerInstance bu$a net/minecraft/class_2044$class_2046 + f Lcom/mojang/serialization/Codec; CODEC a field_47249 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; damage c comp_2052 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_8907 + p 1 player + p 2 source + p 3 dealtDamage + p 4 takenDamage + p 5 blocked + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityHurtPlayer a method_8908 + p 0 damage + m (Lnet/minecraft/advancements/critereon/DamagePredicate;)Lnet/minecraft/advancements/Criterion; entityHurtPlayer a method_35209 + p 0 damage + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54988 a method_54988 + m ()Lnet/minecraft/advancements/Criterion; entityHurtPlayer b method_35210 + m ()Ljava/util/Optional; damage c comp_2052 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 damage + m ()V +c net/minecraft/advancements/critereon/EntityPredicate bv net/minecraft/class_2048 + f Lcom/mojang/serialization/Codec; CODEC a field_45746 + f Lcom/mojang/serialization/Codec; ADVANCEMENT_CODEC b field_47250 + f Ljava/util/Optional; entityType c comp_1761 + f Ljava/util/Optional; distanceToPlayer d comp_1762 + f Ljava/util/Optional; movement e comp_2668 + f Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper; location f comp_1763 + f Ljava/util/Optional; effects g comp_1765 + f Ljava/util/Optional; nbt h comp_1766 + f Ljava/util/Optional; flags i comp_1767 + f Ljava/util/Optional; equipment j comp_1768 + f Ljava/util/Optional; subPredicate k comp_1769 + f Ljava/util/Optional; periodicTick l comp_2669 + f Ljava/util/Optional; vehicle m comp_1770 + f Ljava/util/Optional; passenger n comp_1771 + f Ljava/util/Optional; targetedEntity o comp_1772 + f Ljava/util/Optional; team p comp_1773 + f Ljava/util/Optional; slots q comp_2446 + m ()Ljava/util/Optional; entityType a comp_1761 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z matches a method_8909 + p 1 level + p 2 position + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Z matches a method_8914 + p 1 player + p 2 entity + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; wrap a method_53134 + p 0 builder + m (Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/advancements/critereon/ContextAwarePredicate; wrap a method_51704 + p 0 predicate + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; method_53135 a method_53135 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53136 a method_53136 + m (Ljava/util/Optional;)Ljava/util/Optional; wrap a method_53137 + p 0 predicate + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Ljava/util/List; wrap a method_53139 + p 0 builders + m ()Ljava/util/Optional; distanceToPlayer b comp_1762 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_37227 b method_37227 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; createContext b method_27802 + p 0 player + p 1 entity + m ()Ljava/util/Optional; movement c comp_2668 + m ()Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper; location d comp_1763 + m ()Ljava/util/Optional; effects e comp_1765 + m ()Ljava/util/Optional; nbt f comp_1766 + m ()Ljava/util/Optional; flags g comp_1767 + m ()Ljava/util/Optional; equipment h comp_1768 + m ()Ljava/util/Optional; subPredicate i comp_1769 + m ()Ljava/util/Optional; periodicTick j comp_2669 + m ()Ljava/util/Optional; vehicle k comp_1770 + m ()Ljava/util/Optional; passenger l comp_1771 + m ()Ljava/util/Optional; targetedEntity m comp_1772 + m ()Ljava/util/Optional; team n comp_1773 + m ()Ljava/util/Optional; slots o comp_2446 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/EntityPredicate$LocationWrapper;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntityPredicate$Builder bv$a net/minecraft/class_2048$class_2049 + f Ljava/util/Optional; entityType a field_9607 + f Ljava/util/Optional; distanceToPlayer b field_9602 + f Ljava/util/Optional; fallDistance c field_51572 + f Ljava/util/Optional; movement d field_51573 + f Ljava/util/Optional; location e field_9604 + f Ljava/util/Optional; located f field_51937 + f Ljava/util/Optional; steppingOnLocation g field_33915 + f Ljava/util/Optional; movementAffectedBy h field_51938 + f Ljava/util/Optional; effects i field_9605 + f Ljava/util/Optional; nbt j field_9603 + f Ljava/util/Optional; flags k field_9606 + f Ljava/util/Optional; equipment l field_16491 + f Ljava/util/Optional; subPredicate m field_38722 + f Ljava/util/Optional; periodicTick n field_51574 + f Ljava/util/Optional; vehicle o field_24490 + f Ljava/util/Optional; passenger p field_33917 + f Ljava/util/Optional; targetedEntity q field_24491 + f Ljava/util/Optional; team r field_20700 + f Ljava/util/Optional; slots s field_49721 + m ()Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; entity a method_8916 + m (I)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; periodicTick a method_59929 + p 1 periodicTick + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; of a method_8922 + p 1 entityTypeTag + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; distance a method_8924 + p 1 distanceToPlayer + m (Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; equipment a method_53141 + p 1 equipment + m (Lnet/minecraft/advancements/critereon/EntityEquipmentPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; equipment a method_16227 + p 1 equipment + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; of a method_8921 + p 1 entityType + m (Lnet/minecraft/advancements/critereon/EntityFlagsPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; flags a method_8919 + p 1 flags + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; vehicle a method_27971 + p 1 vehicle + m (Lnet/minecraft/advancements/critereon/EntitySubPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; subPredicate a method_43094 + p 1 subPredicate + m (Lnet/minecraft/advancements/critereon/EntityTypePredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; entityType a method_8917 + p 1 entityType + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; located a method_8918 + p 1 location + m (Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; effects a method_8923 + p 1 effects + m (Lnet/minecraft/advancements/critereon/MovementPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; moving a method_59930 + p 1 movement + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; nbt a method_8915 + p 1 nbt + m (Lnet/minecraft/advancements/critereon/SlotsPredicate;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; slots a method_58058 + p 1 slots + m (Ljava/lang/String;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; team a method_22470 + p 1 team + m ()Lnet/minecraft/advancements/critereon/EntityPredicate; build b method_8920 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; passenger b method_37229 + p 1 passenger + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; steppingOn b method_37230 + p 1 steppingOnLocation + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; targetedEntity c method_27972 + p 1 targetedEntity + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/critereon/EntityPredicate$Builder; movementAffectedBy c method_60611 + p 1 movementAffectedBy + m ()V +c net/minecraft/advancements/critereon/EntityPredicate$LocationWrapper bv$b net/minecraft/class_2048$class_9777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51939 + f Ljava/util/Optional; located b comp_2813 + f Ljava/util/Optional; steppingOn c comp_2814 + f Ljava/util/Optional; affectsMovement d comp_2815 + m ()Ljava/util/Optional; located a comp_2813 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60612 a method_60612 + m ()Ljava/util/Optional; steppingOn b comp_2814 + m ()Ljava/util/Optional; affectsMovement c comp_2815 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicate bw net/minecraft/class_7376 + f Lcom/mojang/serialization/Codec; CODEC a field_45747 + m ()Lcom/mojang/serialization/MapCodec; codec a method_58152 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Z matches a method_22497 + p 1 entity + p 2 level + p 3 position + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicates bx net/minecraft/class_7378 + f Lcom/mojang/serialization/MapCodec; LIGHTNING a field_38725 + f Lcom/mojang/serialization/MapCodec; FISHING_HOOK b field_38726 + f Lcom/mojang/serialization/MapCodec; PLAYER c field_38727 + f Lcom/mojang/serialization/MapCodec; SLIME d field_38728 + f Lcom/mojang/serialization/MapCodec; RAIDER e field_50135 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; AXOLOTL f field_41534 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; BOAT g field_41535 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; FOX h field_41536 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; MOOSHROOM i field_41537 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; RABBIT j field_41539 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; HORSE k field_41540 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; LLAMA l field_41541 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; VILLAGER m field_41542 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; PARROT n field_41543 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; TROPICAL_FISH o field_41544 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; PAINTING p field_41538 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; CAT q field_38729 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; FROG r field_38730 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; WOLF s field_49973 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_58351 a method_58351 + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; register a method_58352 + p 0 name + p 1 predicateType + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; register a method_58155 + p 0 name + p 1 predicateType + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; register a method_58156 + p 0 name + p 1 codec + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; catVariant a method_58153 + p 0 catVariant + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; wolfVariant a method_59667 + p 0 wolfVariant + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_58157 + p 0 registry + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47829 b method_47829 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; frogVariant b method_58154 + p 0 frogVariant + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47830 c method_47830 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47831 d method_47831 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47832 e method_47832 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47833 f method_47833 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47834 g method_47834 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47835 h method_47835 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47836 i method_47836 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47837 j method_47837 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47838 k method_47838 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_47839 l method_47839 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_43100 m method_43100 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_43102 n method_43102 + m ()V + m ()V +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType bx$a net/minecraft/class_7378$class_9419 + f Lcom/mojang/serialization/MapCodec; codec a field_49974 + f Ljava/util/function/Function; getter b field_49975 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58353 a method_58353 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; create a method_58354 + p 0 registryKey + p 1 getter + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance;)Lnet/minecraft/core/HolderSet; method_58355 a method_58355 + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; createPredicate a method_58356 + p 1 variants + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance; method_58357 b method_58357 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)V + p 1 registryKey + p 2 getter +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType$Instance bx$a$a net/minecraft/class_7378$class_9419$class_9420 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType; field_49976 b field_49976 + f Lnet/minecraft/core/HolderSet; variants c field_49977 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityHolderVariantPredicateType;Lnet/minecraft/core/HolderSet;)V + p 2 variants +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType bx$b net/minecraft/class_7378$class_7380 + f Lcom/mojang/serialization/MapCodec; codec a field_49794 + f Ljava/util/function/Function; getter b field_38741 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance;)Ljava/lang/Object; method_58158 a method_58158 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43115 a method_43115 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; create a method_47840 + p 0 codec + p 1 getter + m (Ljava/lang/Object;)Lnet/minecraft/advancements/critereon/EntitySubPredicate; createPredicate a method_43117 + p 1 variant + m (Lnet/minecraft/core/Registry;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; create a method_43116 + p 0 variantRegistry + p 1 getter + m (Ljava/lang/Object;)Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance; method_58159 b method_58159 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)V + p 1 codec + p 2 getter +c net/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType$Instance bx$b$a net/minecraft/class_7378$class_7380$class_9353 + f Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType; field_49795 b field_49795 + f Ljava/lang/Object; variant c field_49796 + m (Lnet/minecraft/advancements/critereon/EntitySubPredicates$EntityVariantPredicateType;Ljava/lang/Object;)V + p 2 variant +c net/minecraft/advancements/critereon/EntityTypePredicate by net/minecraft/class_2050 + f Lcom/mojang/serialization/Codec; CODEC a field_45749 + f Lnet/minecraft/core/HolderSet; types b comp_1775 + m ()Lnet/minecraft/core/HolderSet; types a comp_1775 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/EntityTypePredicate; of a method_8926 + p 0 tag + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/advancements/critereon/EntityTypePredicate; of a method_8929 + p 0 type + m (Lnet/minecraft/world/entity/EntityType;)Z matches b method_8925 + p 1 type + m (Lnet/minecraft/core/HolderSet;)V + m ()V +c net/minecraft/advancements/critereon/FallAfterExplosionTrigger bz net/minecraft/class_9421 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)V trigger a method_58358 + p 1 player + p 2 pos + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/FallAfterExplosionTrigger$TriggerInstance;)Z method_58359 a method_58359 + m ()V +c net/minecraft/advancements/critereon/FallAfterExplosionTrigger$TriggerInstance bz$a net/minecraft/class_9421$class_9422 + f Lcom/mojang/serialization/Codec; CODEC a field_49978 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; startPosition c comp_2488 + f Ljava/util/Optional; distance d comp_2489 + f Ljava/util/Optional; cause e comp_2490 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_58360 + p 1 level + p 2 startPosition + p 3 endPosition + p 4 context + m (Lnet/minecraft/advancements/critereon/DistancePredicate;Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; fallAfterExplosion a method_58361 + p 0 distance + p 1 cause + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58362 a method_58362 + m ()Ljava/util/Optional; startPosition b comp_2488 + m ()Ljava/util/Optional; distance c comp_2489 + m ()Ljava/util/Optional; cause d comp_2490 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FilledBucketTrigger ca net/minecraft/class_2054 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8932 + p 1 player + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/FilledBucketTrigger$TriggerInstance;)Z method_22471 a method_22471 + m ()V +c net/minecraft/advancements/critereon/FilledBucketTrigger$TriggerInstance ca$a net/minecraft/class_2054$class_2056 + f Lcom/mojang/serialization/Codec; CODEC a field_47251 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2053 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54991 a method_54991 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; filledBucket a method_8937 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_8938 + p 1 stack + m ()Ljava/util/Optional; item b comp_2053 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/FishingHookPredicate cb net/minecraft/class_4965 + f Lnet/minecraft/advancements/critereon/FishingHookPredicate; ANY b field_23137 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45750 + f Ljava/util/Optional; inOpenWater d comp_1779 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53150 a method_53150 + m (Z)Lnet/minecraft/advancements/critereon/FishingHookPredicate; inOpenWater a method_26095 + p 0 inOpenWater + m ()Ljava/util/Optional; inOpenWater b comp_1779 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FishingRodHookedTrigger cc net/minecraft/class_2058 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/projectile/FishingHook;Ljava/util/Collection;)V trigger a method_8939 + p 1 player + p 2 rod + p 3 entity + p 4 stacks + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/Collection;Lnet/minecraft/advancements/critereon/FishingRodHookedTrigger$TriggerInstance;)Z method_22472 a method_22472 + m ()V +c net/minecraft/advancements/critereon/FishingRodHookedTrigger$TriggerInstance cc$a net/minecraft/class_2058$class_2060 + f Lcom/mojang/serialization/Codec; CODEC a field_47259 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; rod c comp_2054 + f Ljava/util/Optional; entity d comp_2055 + f Ljava/util/Optional; item e comp_2056 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54992 a method_54992 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/Collection;)Z matches a method_27810 + p 1 rod + p 2 context + p 3 stacks + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; fishedItem a method_8947 + p 0 rod + p 1 entity + p 2 item + m ()Ljava/util/Optional; rod b comp_2054 + m ()Ljava/util/Optional; entity c comp_2055 + m ()Ljava/util/Optional; item d comp_2056 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 rod + p 3 entity + p 4 item + m ()V +c net/minecraft/advancements/critereon/FluidPredicate cd net/minecraft/class_4551 + f Lcom/mojang/serialization/Codec; CODEC a field_45753 + f Ljava/util/Optional; fluids b comp_2372 + f Ljava/util/Optional; properties c comp_1782 + m ()Ljava/util/Optional; fluids a comp_2372 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22475 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53156 a method_53156 + m ()Ljava/util/Optional; properties b comp_1782 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/FluidPredicate$Builder cd$a net/minecraft/class_4551$class_6079 + f Ljava/util/Optional; fluids a field_30913 + f Ljava/util/Optional; properties b field_30914 + m ()Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; fluid a method_35221 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; setProperties a method_35223 + p 1 properties + m (Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; of a method_35224 + p 1 fluid + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/FluidPredicate$Builder; of a method_35222 + m ()Lnet/minecraft/advancements/critereon/FluidPredicate; build b method_35225 + m ()V +c net/minecraft/advancements/critereon/GameTypePredicate ce net/minecraft/class_9789 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; ANY a field_52012 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; SURVIVAL_LIKE b field_52013 + f Lcom/mojang/serialization/Codec; CODEC c field_52014 + f Ljava/util/List; types d comp_2829 + m ()Ljava/util/List; types a comp_2829 + m (Lnet/minecraft/world/level/GameType;)Z matches a method_60723 + p 1 type + m ([Lnet/minecraft/world/level/GameType;)Lnet/minecraft/advancements/critereon/GameTypePredicate; of a method_60724 + p 0 types + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ImpossibleTrigger cf net/minecraft/class_2062 + m ()V +c net/minecraft/advancements/critereon/ImpossibleTrigger$TriggerInstance cf$a net/minecraft/class_2062$class_2063 + f Lcom/mojang/serialization/Codec; CODEC a field_47262 + m ()V + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger cg net/minecraft/class_2066 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;)V trigger a method_8950 + p 1 player + p 2 inventory + p 3 stack + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;III)V trigger a method_24362 + p 1 player + p 2 inventory + p 3 stack + p 4 full + p 5 empty + p 6 occupied + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;IIILnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance;)Z method_22476 a method_22476 + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance cg$a net/minecraft/class_2066$class_2068 + f Lcom/mojang/serialization/Codec; CODEC a field_47263 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; slots c comp_2057 + f Ljava/util/List; items d comp_2058 + m (I)[Lnet/minecraft/advancements/critereon/ItemPredicate; method_53158 a method_53158 + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/ItemStack;III)Z matches a method_8958 + p 1 inventory + p 2 stack + p 3 full + p 4 empty + p 5 occupied + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54997 a method_54997 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ItemPredicate;)Z method_24363 a method_24363 + m ([Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; hasItems a method_53160 + p 0 items + m ([Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; hasItems a method_8957 + p 0 items + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; hasItems a method_8959 + p 0 items + m ()Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; slots b comp_2057 + m ()Ljava/util/List; items c comp_2058 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots;Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots cg$a$a net/minecraft/class_2066$class_2068$class_8948 + f Lcom/mojang/serialization/Codec; CODEC a field_47264 + f Lnet/minecraft/advancements/critereon/InventoryChangeTrigger$TriggerInstance$Slots; ANY b field_47265 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; occupied c comp_2059 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; full d comp_2060 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; empty e comp_2061 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; occupied a comp_2059 + m (III)Z matches a method_54998 + p 1 full + p 2 empty + p 3 occupied + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54999 a method_54999 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; full b comp_2060 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; empty c comp_2061 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemAttributeModifiersPredicate ch net/minecraft/class_9653 + f Lcom/mojang/serialization/Codec; CODEC a field_51378 + f Ljava/util/Optional; modifiers c comp_2623 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59668 a method_59668 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Z matches a method_59669 + p 1 stack + p 2 value + m ()Ljava/util/Optional; modifiers b comp_2623 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemAttributeModifiersPredicate$EntryPredicate ch$a net/minecraft/class_9653$class_9654 + f Lcom/mojang/serialization/Codec; CODEC a field_51379 + f Ljava/util/Optional; attribute b comp_2624 + f Ljava/util/Optional; id c comp_2625 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; amount d comp_2627 + f Ljava/util/Optional; operation e comp_2628 + f Ljava/util/Optional; slot f comp_2629 + m ()Ljava/util/Optional; attribute a comp_2624 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59670 a method_59670 + m (Lnet/minecraft/world/item/component/ItemAttributeModifiers$Entry;)Z test a method_59671 + p 1 entry + m ()Ljava/util/Optional; id b comp_2625 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; amount c comp_2627 + m ()Ljava/util/Optional; operation d comp_2628 + m ()Ljava/util/Optional; slot e comp_2629 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemBundlePredicate ci net/minecraft/class_9655 + f Lcom/mojang/serialization/Codec; CODEC a field_51380 + f Ljava/util/Optional; items c comp_2630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59672 a method_59672 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/BundleContents;)Z matches a method_59673 + p 1 stack + p 2 value + m ()Ljava/util/Optional; items b comp_2630 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemContainerPredicate cj net/minecraft/class_9656 + f Lcom/mojang/serialization/Codec; CODEC a field_51381 + f Ljava/util/Optional; items c comp_2631 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59674 a method_59674 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemContainerContents;)Z matches a method_59675 + p 1 stack + p 2 value + m ()Ljava/util/Optional; items b comp_2631 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemCustomDataPredicate ck net/minecraft/class_9354 + f Lcom/mojang/serialization/Codec; CODEC a field_49797 + f Lnet/minecraft/advancements/critereon/NbtPredicate; value c comp_2458 + m ()Lnet/minecraft/advancements/critereon/NbtPredicate; value a comp_2458 + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)Lnet/minecraft/advancements/critereon/ItemCustomDataPredicate; customData a method_58162 + p 0 value + m (Lnet/minecraft/advancements/critereon/NbtPredicate;)V + m ()V +c net/minecraft/advancements/critereon/ItemDamagePredicate cl net/minecraft/class_9355 + f Lcom/mojang/serialization/Codec; CODEC a field_49798 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability c comp_2459 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; damage d comp_2460 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58164 a method_58164 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Integer;)Z matches a method_58166 + p 1 stack + p 2 value + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/ItemDamagePredicate; durability a method_58165 + p 0 damage + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability b comp_2459 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; damage c comp_2460 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemDurabilityTrigger cm net/minecraft/class_2069 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;I)V trigger a method_8960 + p 1 player + p 2 item + p 3 newDurability + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/advancements/critereon/ItemDurabilityTrigger$TriggerInstance;)Z method_22477 a method_22477 + m ()V +c net/minecraft/advancements/critereon/ItemDurabilityTrigger$TriggerInstance cm$a net/minecraft/class_2069$class_2071 + f Lcom/mojang/serialization/Codec; CODEC a field_47266 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2062 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability d comp_2063 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; delta e comp_2064 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55000 a method_55000 + m (Lnet/minecraft/world/item/ItemStack;I)Z matches a method_8968 + p 1 item + p 2 durability + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; changedDurability a method_35229 + p 0 item + p 1 durability + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; changedDurability a method_8967 + p 0 player + p 1 item + p 2 durability + m ()Ljava/util/Optional; item b comp_2062 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; durability c comp_2063 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; delta d comp_2064 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 item + p 3 durability + p 4 delta + m ()V +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate cn net/minecraft/class_9356 + f Ljava/util/List; enchantments a field_49799 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Z matches a method_58172 + p 1 stack + p 2 enchantments + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/ItemEnchantmentsPredicate$Enchantments; enchantments a method_58173 + p 0 enchantments + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; codec a method_58174 + p 0 predicateFactory + m ()Ljava/util/List; enchantments b method_58175 + m (Ljava/util/List;)Lnet/minecraft/advancements/critereon/ItemEnchantmentsPredicate$StoredEnchantments; storedEnchantments b method_58176 + p 0 enchantments + m (Ljava/util/List;)V + p 1 enchantments +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate$Enchantments cn$a net/minecraft/class_9356$class_9357 + f Lcom/mojang/serialization/Codec; CODEC a field_49800 + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ItemEnchantmentsPredicate$StoredEnchantments cn$b net/minecraft/class_9356$class_9358 + f Lcom/mojang/serialization/Codec; CODEC a field_49801 + m (Ljava/util/List;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworkExplosionPredicate co net/minecraft/class_9657 + f Lcom/mojang/serialization/Codec; CODEC a field_51382 + f Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate; predicate c comp_2632 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/FireworkExplosion;)Z matches a method_59676 + p 1 stack + p 2 value + m ()Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate; predicate b comp_2632 + m (Lnet/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworkExplosionPredicate$FireworkPredicate co$a net/minecraft/class_9657$class_9658 + f Lcom/mojang/serialization/Codec; CODEC a field_51383 + f Ljava/util/Optional; shape b comp_2633 + f Ljava/util/Optional; twinkle c comp_2634 + f Ljava/util/Optional; trail d comp_2635 + m ()Ljava/util/Optional; shape a comp_2633 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59677 a method_59677 + m (Lnet/minecraft/world/item/component/FireworkExplosion;)Z test a method_59678 + p 1 explosion + m ()Ljava/util/Optional; twinkle b comp_2634 + m ()Ljava/util/Optional; trail c comp_2635 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemFireworksPredicate cp net/minecraft/class_9659 + f Lcom/mojang/serialization/Codec; CODEC a field_51384 + f Ljava/util/Optional; explosions c comp_2636 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; flightDuration d comp_2637 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59680 a method_59680 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/Fireworks;)Z matches a method_59681 + p 1 stack + p 2 value + m ()Ljava/util/Optional; explosions b comp_2636 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; flightDuration c comp_2637 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + m ()V +c net/minecraft/advancements/critereon/ItemJukeboxPlayablePredicate cq net/minecraft/class_9790 + f Lcom/mojang/serialization/Codec; CODEC a field_52020 + f Ljava/util/Optional; song c comp_2830 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60730 a method_60730 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/JukeboxPlayable;)Z matches a method_60731 + p 1 stack + p 2 value + m ()Lnet/minecraft/advancements/critereon/ItemJukeboxPlayablePredicate; any b method_60732 + m ()Ljava/util/Optional; song c comp_2830 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemPotionsPredicate cr net/minecraft/class_9359 + f Lcom/mojang/serialization/Codec; CODEC a field_49802 + f Lnet/minecraft/core/HolderSet; potions c comp_2461 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/alchemy/PotionContents;)Z matches a method_58177 + p 1 stack + p 2 value + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/ItemSubPredicate; potions a method_58178 + p 0 potions + m ()Lnet/minecraft/core/HolderSet; potions b comp_2461 + m (Lnet/minecraft/core/HolderSet;)V + m ()V +c net/minecraft/advancements/critereon/ItemPredicate cs net/minecraft/class_2073 + f Lcom/mojang/serialization/Codec; CODEC a field_45754 + f Ljava/util/Optional; items b comp_1784 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count c comp_1785 + f Lnet/minecraft/core/component/DataComponentPredicate; components d comp_2374 + f Ljava/util/Map; subPredicates e comp_2462 + m ()Ljava/util/Optional; items a comp_1784 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57298 a method_57298 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_8970 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b comp_1785 + m ()Lnet/minecraft/core/component/DataComponentPredicate; components c comp_2374 + m ()Ljava/util/Map; subPredicates d comp_2462 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/core/component/DataComponentPredicate;Ljava/util/Map;)V + m ()V +c net/minecraft/advancements/critereon/ItemPredicate$Builder cs$a net/minecraft/class_2073$class_2074 + f Ljava/util/Optional; items a field_9650 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; count b field_9648 + f Lnet/minecraft/core/component/DataComponentPredicate; components c field_49235 + f Lcom/google/common/collect/ImmutableMap$Builder; subPredicates d field_49803 + m ()Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; item a method_8973 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; of a method_8975 + p 1 tag + m (Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type;Lnet/minecraft/advancements/critereon/ItemSubPredicate;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; withSubPredicate a method_58179 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/core/Holder; method_53166 a method_53166 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; withCount a method_35233 + p 1 count + m (Lnet/minecraft/core/component/DataComponentPredicate;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; hasComponents a method_57299 + p 1 components + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/critereon/ItemPredicate$Builder; of a method_8977 + p 1 items + m ()Lnet/minecraft/advancements/critereon/ItemPredicate; build b method_8976 + m ()V +c net/minecraft/advancements/critereon/ItemSubPredicate ct net/minecraft/class_9360 + f Lcom/mojang/serialization/Codec; CODEC b field_49805 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_58161 + p 1 stack + m ()V +c net/minecraft/advancements/critereon/ItemSubPredicate$Type ct$a net/minecraft/class_9360$class_8745 + f Lcom/mojang/serialization/Codec; codec a comp_1774 + m ()Lcom/mojang/serialization/Codec; codec a comp_1774 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/advancements/critereon/ItemSubPredicates cu net/minecraft/class_9361 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; DAMAGE a field_49806 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ENCHANTMENTS b field_49807 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; STORED_ENCHANTMENTS c field_49808 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; POTIONS d field_49809 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; CUSTOM_DATA e field_49810 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; CONTAINER f field_51386 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; BUNDLE_CONTENTS g field_51387 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; FIREWORK_EXPLOSION h field_51388 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; FIREWORKS i field_51389 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; WRITABLE_BOOK j field_51390 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; WRITTEN_BOOK k field_51391 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ATTRIBUTE_MODIFIERS l field_51392 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; ARMOR_TRIM m field_51393 + f Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; JUKEBOX_PLAYABLE n field_52024 + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; register a method_58180 + p 0 name + p 1 codec + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/advancements/critereon/ItemSubPredicate$Type; bootstrap a method_58181 + p 0 registry + m ()V + m ()V +c net/minecraft/advancements/critereon/ItemTrimPredicate cv net/minecraft/class_9660 + f Lcom/mojang/serialization/Codec; CODEC a field_51394 + f Ljava/util/Optional; material c comp_2638 + f Ljava/util/Optional; pattern d comp_2639 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59685 a method_59685 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/armortrim/ArmorTrim;)Z matches a method_59686 + p 1 stack + p 2 value + m ()Ljava/util/Optional; material b comp_2638 + m ()Ljava/util/Optional; pattern c comp_2639 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemUsedOnLocationTrigger cw net/minecraft/class_4711 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V trigger a method_23889 + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance;)Z method_23888 a method_23888 + m ()V +c net/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance cw$a net/minecraft/class_4711$class_4712 + f Lcom/mojang/serialization/Codec; CODEC a field_47267 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; location c comp_2065 + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_51708 a method_51708 + m (Lnet/minecraft/advancements/critereon/CriterionValidator;Lnet/minecraft/advancements/critereon/ContextAwarePredicate;)V method_55003 a method_55003 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55004 a method_55004 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; itemUsedOnBlock a method_27981 + p 0 location + p 1 tool + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedBlock a method_51710 + p 0 block + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_51711 + p 1 context + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/advancements/Criterion; placedBlock a method_51712 + p 0 conditions + m ()Ljava/util/Optional; location b comp_2065 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; allayDropItemOnBlock b method_43125 + p 0 location + p 1 tool + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/critereon/ItemUsedOnLocationTrigger$TriggerInstance; itemUsedOnLocation c method_51709 + p 0 location + p 1 tool + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 location + m ()V +c net/minecraft/advancements/critereon/ItemWritableBookPredicate cx net/minecraft/class_9661 + f Lcom/mojang/serialization/Codec; CODEC a field_51395 + f Ljava/util/Optional; pages c comp_2640 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59687 a method_59687 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/WritableBookContent;)Z matches a method_59688 + p 1 stack + p 2 value + m ()Ljava/util/Optional; pages b comp_2640 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemWritableBookPredicate$PagePredicate cx$a net/minecraft/class_9661$class_9662 + f Lcom/mojang/serialization/Codec; CODEC a field_51396 + f Ljava/lang/String; contents b comp_2641 + m ()Ljava/lang/String; contents a comp_2641 + m (Lnet/minecraft/server/network/Filterable;)Z test a method_59689 + p 1 contents + m (Ljava/lang/String;)V + m ()V +c net/minecraft/advancements/critereon/ItemWrittenBookPredicate cy net/minecraft/class_9663 + f Lcom/mojang/serialization/Codec; CODEC a field_51400 + f Ljava/util/Optional; pages c comp_2642 + f Ljava/util/Optional; author d comp_2643 + f Ljava/util/Optional; title e comp_2644 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; generation f comp_2645 + f Ljava/util/Optional; resolved g comp_2646 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59696 a method_59696 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/WrittenBookContent;)Z matches a method_59697 + p 1 stack + p 2 value + m ()Ljava/util/Optional; pages b comp_2642 + m ()Ljava/util/Optional; author c comp_2643 + m ()Ljava/util/Optional; title d comp_2644 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; generation e comp_2645 + m ()Ljava/util/Optional; resolved f comp_2646 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/ItemWrittenBookPredicate$PagePredicate cy$a net/minecraft/class_9663$class_9664 + f Lcom/mojang/serialization/Codec; CODEC a field_51401 + f Lnet/minecraft/network/chat/Component; contents b comp_2647 + m ()Lnet/minecraft/network/chat/Component; contents a comp_2647 + m (Lnet/minecraft/server/network/Filterable;)Z test a method_59698 + p 1 contents + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/advancements/critereon/KilledByCrossbowTrigger cz net/minecraft/class_2076 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/Collection;)V trigger a method_8980 + p 1 player + p 2 entities + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/advancements/critereon/KilledByCrossbowTrigger$TriggerInstance;)Z method_22478 a method_22478 + m ()V +c net/minecraft/advancements/critereon/KilledByCrossbowTrigger$TriggerInstance cz$a net/minecraft/class_2076$class_2078 + f Lcom/mojang/serialization/Codec; CODEC a field_47268 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/List; victims c comp_2066 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; uniqueEntityTypes d comp_2067 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55005 a method_55005 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/Criterion; crossbowKilled a method_8987 + p 0 uniqueEntityTypes + m (Ljava/util/Collection;I)Z matches a method_8988 + p 1 contexts + p 2 bounds + m ([Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; crossbowKilled a method_8986 + p 0 victims + m ()Ljava/util/List; victims b comp_2066 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; uniqueEntityTypes c comp_2067 + m (Ljava/util/Optional;Ljava/util/List;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 victims + p 3 uniqueEntityTypes + m ()V +c net/minecraft/advancements/critereon/KilledTrigger da net/minecraft/class_2080 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V trigger a method_8990 + p 1 player + p 2 entity + p 3 source + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/advancements/critereon/KilledTrigger$TriggerInstance;)Z method_22479 a method_22479 + m ()V +c net/minecraft/advancements/critereon/KilledTrigger$TriggerInstance da$a net/minecraft/class_2080$class_2083 + f Lcom/mojang/serialization/Codec; CODEC a field_47304 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entityPredicate c comp_2068 + f Ljava/util/Optional; killingBlow d comp_2069 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;)Z matches a method_9000 + p 1 player + p 2 context + p 3 source + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_8997 + p 0 entityPredicate + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_9001 + p 0 entityPredicate + p 1 killingBlow + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35247 + p 0 entityPredicate + p 1 killingBlow + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55050 a method_55050 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35248 + p 0 entityPredicate + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35249 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerKilledEntity a method_35250 + p 0 entityPredicate + p 1 killingBlow + m ()Lnet/minecraft/advancements/Criterion; playerKilledEntity b method_8999 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35251 + p 0 entityPredicate + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35252 + p 0 entityPredicate + p 1 killingBlow + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35253 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35254 + p 0 entityPredicate + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35255 + p 0 entityPredicate + p 1 killingBlow + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; entityKilledPlayer b method_35256 + p 0 entityPredicate + p 1 killingBlow + m ()Lnet/minecraft/advancements/Criterion; playerKilledEntityNearSculkCatalyst c method_42671 + m ()Lnet/minecraft/advancements/Criterion; entityKilledPlayer d method_8998 + m ()Ljava/util/Optional; entityPredicate e comp_2068 + m ()Ljava/util/Optional; killingBlow f comp_2069 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entityPredicate + p 3 killingBlow + m ()V +c net/minecraft/advancements/critereon/LevitationTrigger db net/minecraft/class_2085 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;I)V trigger a method_9008 + p 1 player + p 2 startPos + p 3 duration + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;ILnet/minecraft/advancements/critereon/LevitationTrigger$TriggerInstance;)Z method_22480 a method_22480 + m ()V +c net/minecraft/advancements/critereon/LevitationTrigger$TriggerInstance db$a net/minecraft/class_2085$class_2087 + f Lcom/mojang/serialization/Codec; CODEC a field_47305 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; distance c comp_2070 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration d comp_2071 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/phys/Vec3;I)Z matches a method_9014 + p 1 player + p 2 startPos + p 3 duration + m (Lnet/minecraft/advancements/critereon/DistancePredicate;)Lnet/minecraft/advancements/Criterion; levitated a method_9013 + p 0 distance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55051 a method_55051 + m ()Ljava/util/Optional; distance b comp_2070 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration c comp_2071 + m (Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 player + p 2 distance + p 3 duration + m ()V +c net/minecraft/advancements/critereon/LightPredicate dc net/minecraft/class_4552 + f Lcom/mojang/serialization/Codec; CODEC a field_45757 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite b comp_1791 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite a comp_1791 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z matches a method_22483 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53172 a method_53172 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 composite + m ()V +c net/minecraft/advancements/critereon/LightPredicate$Builder dc$a net/minecraft/class_4552$class_6087 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; composite a field_31078 + m ()Lnet/minecraft/advancements/critereon/LightPredicate$Builder; light a method_35271 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/LightPredicate$Builder; setComposite a method_35272 + p 1 composite + m ()Lnet/minecraft/advancements/critereon/LightPredicate; build b method_35273 + m ()V +c net/minecraft/advancements/critereon/LightningBoltPredicate dd net/minecraft/class_6404 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45759 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; blocksSetOnFire c comp_1792 + f Ljava/util/Optional; entityStruck d comp_1793 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_37235 a method_37235 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53175 a method_53175 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/LightningBoltPredicate; blockSetOnFire a method_37237 + p 0 blocksSetOnFire + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; blocksSetOnFire b comp_1792 + m ()Ljava/util/Optional; entityStruck c comp_1793 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/LightningStrikeTrigger de net/minecraft/class_6405 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/storage/loot/LootContext; method_37239 a method_37239 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/LightningBolt;Ljava/util/List;)V trigger a method_37240 + p 1 player + p 2 lightning + p 3 nearbyEntities + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;Lnet/minecraft/advancements/critereon/LightningStrikeTrigger$TriggerInstance;)Z method_37242 a method_37242 + m ()V +c net/minecraft/advancements/critereon/LightningStrikeTrigger$TriggerInstance de$a net/minecraft/class_6405$class_6406 + f Lcom/mojang/serialization/Codec; CODEC a field_47306 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; lightning c comp_2072 + f Ljava/util/Optional; bystander d comp_2073 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55058 a method_55058 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;)Z matches a method_37244 + p 1 playerContext + p 2 entityContexts + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; lightningStrike a method_37243 + p 0 lightning + p 1 bystander + m ()Ljava/util/Optional; lightning b comp_2072 + m ()Ljava/util/Optional; bystander c comp_2073 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 lightning + p 3 bystander + m ()V +c net/minecraft/advancements/critereon/LocationPredicate df net/minecraft/class_2090 + f Lcom/mojang/serialization/Codec; CODEC a field_45760 + f Ljava/util/Optional; position b comp_1794 + f Ljava/util/Optional; biomes c comp_2375 + f Ljava/util/Optional; structures d comp_2376 + f Ljava/util/Optional; dimension e comp_1797 + f Ljava/util/Optional; smokey f comp_1798 + f Ljava/util/Optional; light g comp_1799 + f Ljava/util/Optional; block h comp_1800 + f Ljava/util/Optional; fluid i comp_1801 + f Ljava/util/Optional; canSeeSky j comp_2771 + m ()Ljava/util/Optional; position a comp_1794 + m (Lnet/minecraft/server/level/ServerLevel;DDD)Z matches a method_9018 + p 1 level + p 2 x + p 4 y + p 6 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53178 a method_53178 + m ()Ljava/util/Optional; biomes b comp_2375 + m ()Ljava/util/Optional; structures c comp_2376 + m ()Ljava/util/Optional; dimension d comp_1797 + m ()Ljava/util/Optional; smokey e comp_1798 + m ()Ljava/util/Optional; light f comp_1799 + m ()Ljava/util/Optional; block g comp_1800 + m ()Ljava/util/Optional; fluid h comp_1801 + m ()Ljava/util/Optional; canSeeSky i comp_2771 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/LocationPredicate$Builder df$a net/minecraft/class_2090$class_2091 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a field_9693 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b field_9689 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c field_9692 + f Ljava/util/Optional; biomes d field_9690 + f Ljava/util/Optional; structures e field_9688 + f Ljava/util/Optional; dimension f field_9691 + f Ljava/util/Optional; smokey g field_24501 + f Ljava/util/Optional; light h field_20717 + f Ljava/util/Optional; block i field_20718 + f Ljava/util/Optional; fluid j field_20719 + f Ljava/util/Optional; canSeeSky k field_51778 + m ()Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; location a method_22484 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inDimension a method_53182 + p 0 dimension + m (Lnet/minecraft/advancements/critereon/BlockPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setBlock a method_27989 + p 1 block + m (Lnet/minecraft/advancements/critereon/FluidPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setFluid a method_35274 + p 1 fluid + m (Lnet/minecraft/advancements/critereon/LightPredicate$Builder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setLight a method_35275 + p 1 light + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; atYLocation a method_53181 + p 0 y + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inBiome a method_53180 + p 0 biome + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setBiomes a method_9024 + p 1 biomes + m (Z)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setSmokey a method_27990 + p 1 smokey + m ()Lnet/minecraft/advancements/critereon/LocationPredicate; build b method_9023 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setDimension b method_35279 + p 1 dimension + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setX b method_35276 + p 1 x + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; inStructure b method_53183 + p 0 structure + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setStructures b method_35277 + p 1 structures + m (Z)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setCanSeeSky b method_60275 + p 1 canSeeSky + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setY c method_35278 + p 1 y + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/LocationPredicate$Builder; setZ d method_35280 + p 1 z + m ()V +c net/minecraft/advancements/critereon/LocationPredicate$PositionPredicate df$b net/minecraft/class_2090$class_8747 + f Lcom/mojang/serialization/Codec; CODEC a field_45761 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_1802 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_1803 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_1804 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_1802 + m (DDD)Z matches a method_53184 + p 1 x + p 3 y + p 5 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53186 a method_53186 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Ljava/util/Optional; of a method_53185 + p 0 x + p 1 y + p 2 z + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_1803 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_1804 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + m ()V +c net/minecraft/advancements/critereon/LootTableTrigger dg net/minecraft/class_5282 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/advancements/critereon/LootTableTrigger$TriggerInstance;)Z method_27992 a method_27992 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceKey;)V trigger a method_27993 + p 1 player + p 2 lootTable + m ()V +c net/minecraft/advancements/critereon/LootTableTrigger$TriggerInstance dg$a net/minecraft/class_5282$class_5283 + f Lcom/mojang/serialization/Codec; CODEC a field_47307 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceKey; lootTable c comp_2074 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/advancements/Criterion; lootTableUsed a method_27995 + p 0 lootTable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55060 a method_55060 + m ()Lnet/minecraft/resources/ResourceKey; lootTable b comp_2074 + m (Lnet/minecraft/resources/ResourceKey;)Z matches b method_27996 + p 1 lootTable + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds dh net/minecraft/class_2096 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EMPTY a field_9700 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SWAPPED b field_9701 + m ()Ljava/util/Optional; min a comp_1805 + m (Lcom/mojang/brigadier/StringReader;)Z isAllowedInputChat a method_9040 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFromReaderFactory;Ljava/util/function/Function;Ljava/util/function/Supplier;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds; fromReader a method_9043 + p 0 reader + p 1 boundedFactory + p 2 valueFactory + p 3 commandExceptionSupplier + p 4 formatter + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;Ljava/util/function/Supplier;)Ljava/util/Optional; readNumber a method_9037 + p 0 reader + p 1 stringToValueFunction + p 2 commandExceptionSupplier + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;)Lcom/mojang/serialization/Codec; createCodec a method_53191 + p 0 codec + p 1 boundsFactory + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53192 a method_53192 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53188 a method_53188 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory;Ljava/lang/Number;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53189 a method_53189 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds;)Lcom/mojang/datafixers/util/Either; method_53190 a method_53190 + m ()Ljava/util/Optional; max b comp_1806 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds;)Lnet/minecraft/advancements/critereon/MinMaxBounds; method_53193 b method_53193 + m ()Z isAny c method_9041 + m ()Ljava/util/Optional; unwrapPoint d method_53194 + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds$BoundsFactory dh$a net/minecraft/class_2096$class_2097 +c net/minecraft/advancements/critereon/MinMaxBounds$BoundsFromReaderFactory dh$b net/minecraft/class_2096$class_2098 +c net/minecraft/advancements/critereon/MinMaxBounds$Doubles dh$c net/minecraft/class_2096$class_2099 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; ANY c field_9705 + f Lcom/mojang/serialization/Codec; CODEC d field_45762 + f Ljava/util/Optional; min e comp_1805 + f Ljava/util/Optional; max f comp_1806 + f Ljava/util/Optional; minSq g comp_1807 + f Ljava/util/Optional; maxSq h comp_1808 + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; exactly a method_35284 + p 0 value + m (DD)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; between a method_35285 + p 0 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fromReader a method_9049 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; create a method_9046 + p 0 reader + p 1 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fromReader a method_9048 + p 0 reader + p 1 formatter + m (Ljava/lang/Double;)Ljava/lang/Double; method_9052 a method_9052 + m (Ljava/util/Optional;)Ljava/util/Optional; squareOpt a method_9044 + p 0 value + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; atLeast b method_9050 + p 0 min + m (Ljava/lang/Double;)Ljava/lang/Double; method_53195 b method_53195 + m (D)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; atMost c method_35286 + p 0 max + m (D)Z matches d method_9047 + p 1 value + m ()Ljava/util/Optional; minSq e comp_1807 + m (D)Z matchesSqr e method_9045 + p 1 value + m ()Ljava/util/Optional; maxSq f comp_1808 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MinMaxBounds$Ints dh$d net/minecraft/class_2096$class_2100 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; ANY c field_9708 + f Lcom/mojang/serialization/Codec; CODEC d field_45763 + f Ljava/util/Optional; min e comp_1805 + f Ljava/util/Optional; max f comp_1806 + f Ljava/util/Optional; minSq g comp_1809 + f Ljava/util/Optional; maxSq h comp_1810 + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; exactly a method_9058 + p 0 value + m (II)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; between a method_35287 + p 0 min + p 1 max + m (J)Z matchesSqr a method_35288 + p 1 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; fromReader a method_9060 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; create a method_9055 + p 0 reader + p 1 min + p 2 max + m (Lcom/mojang/brigadier/StringReader;Ljava/util/function/Function;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; fromReader a method_9057 + p 0 reader + p 1 valueFunction + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_9061 a method_9061 + m (Ljava/util/Optional;)Ljava/util/Optional; squareOpt a method_9059 + p 0 value + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; atLeast b method_9053 + p 0 min + m (Ljava/lang/Integer;)Ljava/lang/Long; method_53197 b method_53197 + m (I)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; atMost c method_35289 + p 0 max + m (Ljava/lang/Integer;)Ljava/lang/Long; method_53198 c method_53198 + m (I)Z matches d method_9054 + p 1 value + m ()Ljava/util/Optional; minSq e comp_1809 + m ()Ljava/util/Optional; maxSq f comp_1810 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate di net/minecraft/class_2102 + f Lcom/mojang/serialization/Codec; CODEC a field_45764 + f Ljava/util/Map; effectMap b comp_1811 + m ()Ljava/util/Map; effectMap a comp_1811 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_9062 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z matches a method_9067 + p 1 entity + m (Ljava/util/Map;)Z matches a method_9063 + p 1 effects + m (Ljava/util/Map;)V + p 1 effectMap + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate$Builder di$a net/minecraft/class_2102$class_8748 + f Lcom/google/common/collect/ImmutableMap$Builder; effectMap a field_45765 + m ()Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; effects a method_53200 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; and a method_53201 + p 1 effect + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MobEffectsPredicate$MobEffectInstancePredicate;)Lnet/minecraft/advancements/critereon/MobEffectsPredicate$Builder; and a method_53202 + p 1 effect + p 2 predicate + m ()Ljava/util/Optional; build b method_53203 + m ()V +c net/minecraft/advancements/critereon/MobEffectsPredicate$MobEffectInstancePredicate di$b net/minecraft/class_2102$class_2103 + f Lcom/mojang/serialization/Codec; CODEC a field_45766 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; amplifier b comp_1812 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration c comp_1813 + f Ljava/util/Optional; ambient d comp_1814 + f Ljava/util/Optional; visible e comp_1815 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; amplifier a comp_1812 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z matches a method_9069 + p 1 effect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53204 a method_53204 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; duration b comp_1813 + m ()Ljava/util/Optional; ambient c comp_1814 + m ()Ljava/util/Optional; visible d comp_1815 + m ()V + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/MovementPredicate dj net/minecraft/class_9750 + f Lcom/mojang/serialization/Codec; CODEC a field_51786 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x b comp_2772 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y c comp_2773 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z d comp_2774 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; speed e comp_2775 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontalSpeed f comp_2776 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; verticalSpeed g comp_2777 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fallDistance h comp_2778 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; x a comp_2772 + m (DDDD)Z matches a method_60277 + p 1 x + p 3 y + p 5 z + p 7 fallDistance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60278 a method_60278 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; speed a method_60279 + p 0 speed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; y b comp_2773 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; horizontalSpeed b method_60280 + p 0 horizontalSpeed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; z c comp_2774 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; verticalSpeed c method_60281 + p 0 verticalSpeed + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; speed d comp_2775 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)Lnet/minecraft/advancements/critereon/MovementPredicate; fallDistance d method_60282 + p 0 fallDistance + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; horizontalSpeed e comp_2776 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; verticalSpeed f comp_2777 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; fallDistance g comp_2778 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + m ()V +c net/minecraft/advancements/critereon/NbtPredicate dk net/minecraft/class_2105 + f Lcom/mojang/serialization/Codec; CODEC a field_45768 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49244 + f Lnet/minecraft/nbt/CompoundTag; tag c comp_1816 + m ()Lnet/minecraft/nbt/CompoundTag; tag a comp_1816 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_9072 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9074 + p 1 stack + m (Lnet/minecraft/nbt/Tag;)Z matches a method_9077 + p 1 tag + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/nbt/CompoundTag; getEntityTagToCompare b method_9076 + p 0 entity + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/advancements/critereon/PickedUpItemTrigger dl net/minecraft/class_5279 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)V trigger a method_27975 + p 1 player + p 2 stack + p 3 entity + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/PickedUpItemTrigger$TriggerInstance;)Z method_27976 a method_27976 + m ()V +c net/minecraft/advancements/critereon/PickedUpItemTrigger$TriggerInstance dl$a net/minecraft/class_5279$class_5280 + f Lcom/mojang/serialization/Codec; CODEC a field_47316 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2075 + f Ljava/util/Optional; entity d comp_2076 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_27979 + p 1 player + p 2 stack + p 3 context + m (Lnet/minecraft/advancements/critereon/ContextAwarePredicate;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; thrownItemPickedUpByEntity a method_27978 + p 0 player + p 1 item + p 2 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55068 a method_55068 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; thrownItemPickedUpByPlayer a method_43277 + p 0 player + p 1 item + p 2 entity + m ()Ljava/util/Optional; item b comp_2075 + m ()Ljava/util/Optional; entity c comp_2076 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerHurtEntityTrigger dm net/minecraft/class_2115 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;FFZ)V trigger a method_9097 + p 1 player + p 2 entity + p 3 source + p 4 amountDealt + p 5 amountTaken + p 6 blocked + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;FFZLnet/minecraft/advancements/critereon/PlayerHurtEntityTrigger$TriggerInstance;)Z method_22493 a method_22493 + m ()V +c net/minecraft/advancements/critereon/PlayerHurtEntityTrigger$TriggerInstance dm$a net/minecraft/class_2115$class_2117 + f Lcom/mojang/serialization/Codec; CODEC a field_47317 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; damage c comp_2077 + f Ljava/util/Optional; entity d comp_2078 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/damagesource/DamageSource;FFZ)Z matches a method_9104 + p 1 player + p 2 context + p 3 damage + p 4 dealt + p 5 taken + p 6 blocked + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerHurtEntityWithDamage a method_35297 + p 0 damage + m (Lnet/minecraft/advancements/critereon/DamagePredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity a method_9103 + p 0 damage + p 1 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55069 a method_55069 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntityWithDamage a method_35296 + p 0 damage + m (Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity a method_35294 + p 0 damage + p 1 entity + m ()Lnet/minecraft/advancements/Criterion; playerHurtEntity b method_35298 + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; playerHurtEntity b method_35295 + p 0 entity + m ()Ljava/util/Optional; damage c comp_2077 + m ()Ljava/util/Optional; entity d comp_2078 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 damage + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerInteractTrigger dn net/minecraft/class_5409 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)V trigger a method_30097 + p 1 player + p 2 item + p 3 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/PlayerInteractTrigger$TriggerInstance;)Z method_30095 a method_30095 + m ()V +c net/minecraft/advancements/critereon/PlayerInteractTrigger$TriggerInstance dn$a net/minecraft/class_5409$class_5410 + f Lcom/mojang/serialization/Codec; CODEC a field_47318 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2079 + f Ljava/util/Optional; entity d comp_2080 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55070 a method_55070 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; itemUsedOnEntity a method_43278 + p 0 item + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_30100 + p 1 item + p 2 lootContext + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; itemUsedOnEntity a method_30099 + p 0 player + p 1 item + p 2 entity + m ()Ljava/util/Optional; item b comp_2079 + m ()Ljava/util/Optional; entity c comp_2080 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + p 3 entity + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate dp net/minecraft/class_4553 + f I LOOKING_AT_RANGE b field_33928 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45770 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level d comp_1817 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType e comp_1818 + f Ljava/util/List; stats f comp_1819 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes g comp_1820 + f Ljava/util/Map; advancements h comp_1821 + f Ljava/util/Optional; lookingAt i comp_1822 + m (Lnet/minecraft/world/entity/Entity;)Z method_37250 a method_37250 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53219 a method_53219 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level b comp_1817 + m ()Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType c comp_1818 + m ()Ljava/util/List; stats d comp_1819 + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes e comp_1820 + m ()Ljava/util/Map; advancements f comp_1821 + m ()Ljava/util/Optional; lookingAt g comp_1822 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/advancements/critereon/GameTypePredicate;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;Ljava/util/Map;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementCriterionsPredicate dp$a net/minecraft/class_4553$class_4554 + f Lcom/mojang/serialization/Codec; CODEC a field_45771 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; criterions c comp_1823 + m ()Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; criterions a comp_1823 + m (Lnet/minecraft/advancements/AdvancementProgress;)Z test a method_22504 + p 1 progress + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanMap;)V + p 1 criterions + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementDonePredicate dp$b net/minecraft/class_4553$class_4555 + f Lcom/mojang/serialization/Codec; CODEC a field_45772 + f Z state c comp_1824 + m ()Z state a comp_1824 + m (Lnet/minecraft/advancements/AdvancementProgress;)Z test a method_22505 + p 1 progress + m (Z)V + p 1 state + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$AdvancementPredicate dp$c net/minecraft/class_4553$class_4556 + f Lcom/mojang/serialization/Codec; CODEC b field_45773 + m (Lnet/minecraft/advancements/critereon/PlayerPredicate$AdvancementPredicate;)Lcom/mojang/datafixers/util/Either; method_53223 a method_53223 + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$Builder dp$d net/minecraft/class_4553$class_4557 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level a field_20730 + f Lnet/minecraft/advancements/critereon/GameTypePredicate; gameType b field_20731 + f Lcom/google/common/collect/ImmutableList$Builder; stats c field_20732 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; recipes d field_20733 + f Ljava/util/Map; advancements e field_20734 + f Ljava/util/Optional; lookingAt f field_33930 + m ()Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; player a method_35310 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; checkAdvancementCriterions a method_35314 + p 1 advancement + p 2 criterions + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; addRecipe a method_35315 + p 1 recipe + p 2 unlocked + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; addStat a method_35311 + p 1 type + p 2 value + p 3 range + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setLookingAt a method_37251 + p 1 lookingAt + m (Lnet/minecraft/advancements/critereon/GameTypePredicate;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setGameType a method_35312 + p 1 gameType + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; setLevel a method_35313 + p 1 level + m ()Lnet/minecraft/advancements/critereon/PlayerPredicate; build b method_22507 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/advancements/critereon/PlayerPredicate$Builder; checkAdvancementDone b method_35316 + p 1 advancement + p 2 done + m ()V +c net/minecraft/advancements/critereon/PlayerPredicate$StatMatcher dp$e net/minecraft/class_4553$class_8749 + f Lcom/mojang/serialization/Codec; CODEC a field_45774 + f Lnet/minecraft/stats/StatType; type b comp_1825 + f Lnet/minecraft/core/Holder; value c comp_1826 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; range d comp_1827 + f Ljava/util/function/Supplier; stat e comp_1828 + m ()Lnet/minecraft/stats/StatType; type a comp_1825 + m (Lnet/minecraft/stats/StatType;)Lcom/mojang/serialization/MapCodec; createTypedCodec a method_53224 + p 0 statType + m (Lnet/minecraft/stats/StatType;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53225 a method_53225 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;)Lnet/minecraft/stats/Stat; method_53226 a method_53226 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/PlayerPredicate$StatMatcher; method_53227 a method_53227 + m (Lnet/minecraft/stats/StatsCounter;)Z matches a method_53228 + p 1 statsCounter + m ()Lnet/minecraft/core/Holder; value b comp_1826 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; range c comp_1827 + m ()Ljava/util/function/Supplier; stat d comp_1828 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 type + p 2 value + p 3 range + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/function/Supplier;)V + m ()V +c net/minecraft/advancements/critereon/PlayerTrigger dq net/minecraft/class_2135 + m (Lnet/minecraft/server/level/ServerPlayer;)V trigger a method_9141 + p 1 player + m (Lnet/minecraft/advancements/critereon/PlayerTrigger$TriggerInstance;)Z method_29964 a method_29964 + m ()V +c net/minecraft/advancements/critereon/PlayerTrigger$TriggerInstance dq$a net/minecraft/class_2135$class_2137 + f Lcom/mojang/serialization/Codec; CODEC a field_47326 + f Ljava/util/Optional; player b comp_2029 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; located a method_53788 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55105 a method_55105 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/advancements/Criterion; located a method_43137 + p 0 location + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/advancements/Criterion; walkOnBlockWithEquipment a method_43136 + p 0 block + p 1 equipment + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; located a method_43135 + p 0 entity + m ()Lnet/minecraft/advancements/Criterion; sleptInBed b method_43138 + m ()Lnet/minecraft/advancements/Criterion; raidWon c method_43139 + m ()Lnet/minecraft/advancements/Criterion; avoidVibration d method_43279 + m ()Lnet/minecraft/advancements/Criterion; tick e method_49195 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/RaiderPredicate dr net/minecraft/class_9471 + f Lcom/mojang/serialization/MapCodec; CODEC b field_50162 + f Lnet/minecraft/advancements/critereon/RaiderPredicate; CAPTAIN_WITHOUT_RAID c field_50163 + f Z hasRaid d comp_2549 + f Z isCaptain e comp_2550 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58678 a method_58678 + m ()Z hasRaid b comp_2549 + m ()Z isCaptain c comp_2550 + m (ZZ)V + m ()V +c net/minecraft/advancements/critereon/RecipeCraftedTrigger ds net/minecraft/class_8508 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Lnet/minecraft/advancements/critereon/RecipeCraftedTrigger$TriggerInstance;)Z method_51349 a method_51349 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V trigger a method_51350 + p 1 player + p 2 recipeId + p 3 items + m ()V +c net/minecraft/advancements/critereon/RecipeCraftedTrigger$TriggerInstance ds$a net/minecraft/class_8508$class_8509 + f Lcom/mojang/serialization/Codec; CODEC a field_47327 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceLocation; recipeId c comp_2087 + f Ljava/util/List; ingredients d comp_2088 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; craftedItem a method_51352 + p 0 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)Lnet/minecraft/advancements/Criterion; craftedItem a method_51353 + p 0 recipeId + p 1 ingredients + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55106 a method_55106 + m ()Lnet/minecraft/resources/ResourceLocation; recipeId b comp_2087 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; crafterCraftedItem b method_58450 + p 0 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)Z matches b method_51354 + p 1 recipeId + p 2 items + m ()Ljava/util/List; ingredients c comp_2088 + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 player + p 2 recipeId + p 3 ingredients + m ()V +c net/minecraft/advancements/critereon/RecipeUnlockedTrigger dt net/minecraft/class_2119 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/Criterion; unlocked a method_27847 + p 0 recipeId + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;)V trigger a method_9107 + p 1 player + p 2 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/advancements/critereon/RecipeUnlockedTrigger$TriggerInstance;)Z method_22508 a method_22508 + m ()V +c net/minecraft/advancements/critereon/RecipeUnlockedTrigger$TriggerInstance dt$a net/minecraft/class_2119$class_2121 + f Lcom/mojang/serialization/Codec; CODEC a field_47333 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/resources/ResourceLocation; recipe c comp_2089 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55118 a method_55118 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z matches a method_9112 + p 1 recipe + m ()Lnet/minecraft/resources/ResourceLocation; recipe b comp_2089 + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceLocation;)V + p 1 player + p 2 recipe + m ()V +c net/minecraft/advancements/critereon/ShotCrossbowTrigger du net/minecraft/class_2123 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9115 + p 1 shooter + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/ShotCrossbowTrigger$TriggerInstance;)Z method_22509 a method_22509 + m ()V +c net/minecraft/advancements/critereon/ShotCrossbowTrigger$TriggerInstance du$a net/minecraft/class_2123$class_2125 + f Lcom/mojang/serialization/Codec; CODEC a field_47334 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2090 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55123 a method_55123 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9121 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; shotCrossbow a method_9120 + p 0 item + m (Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; shotCrossbow a method_35323 + p 0 item + m ()Ljava/util/Optional; item b comp_2090 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/SimpleCriterionTrigger dv net/minecraft/class_4558 + f Ljava/util/Map; players a field_20735 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Predicate;)V trigger a method_22510 + p 1 player + p 2 testTrigger + m (Lnet/minecraft/server/PlayerAdvancements;)Ljava/util/Set; method_22512 b method_22512 + m ()V +c net/minecraft/advancements/critereon/SimpleCriterionTrigger$SimpleInstance dv$a net/minecraft/class_4558$class_8788 + m ()Ljava/util/Optional; player a comp_2029 +c net/minecraft/advancements/critereon/SingleComponentItemPredicate dw net/minecraft/class_9365 + m ()Lnet/minecraft/core/component/DataComponentType; componentType a method_58163 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Object;)Z matches a method_58167 + p 1 stack + p 2 value +c net/minecraft/advancements/critereon/SlideDownBlockTrigger dx net/minecraft/class_4713 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/state/BlockState;)V trigger a method_23909 + p 1 player + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Z method_23906 a method_23906 + m ()V +c net/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance dx$a net/minecraft/class_4713$class_4714 + f Lcom/mojang/serialization/Codec; CODEC a field_47335 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; block c comp_2091 + f Ljava/util/Optional; state d comp_2092 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55125 a method_55125 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; slidesDownBlock a method_23912 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_23913 + p 1 state + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; validate a method_55126 + p 0 triggerInstance + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_55127 a method_55127 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_55128 a method_55128 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55129 a method_55129 + m ()Ljava/util/Optional; block b comp_2091 + m (Lnet/minecraft/advancements/critereon/SlideDownBlockTrigger$TriggerInstance;)Lcom/mojang/serialization/DataResult; method_55130 b method_55130 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_55131 b method_55131 + m ()Ljava/util/Optional; state c comp_2092 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/SlimePredicate dy net/minecraft/class_7383 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45776 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; size c comp_1829 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53234 a method_53234 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Lnet/minecraft/advancements/critereon/SlimePredicate; sized a method_43157 + p 0 size + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; size b comp_1829 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V + p 1 size + m ()V +c net/minecraft/advancements/critereon/SlotsPredicate dz net/minecraft/class_9350 + f Lcom/mojang/serialization/Codec; CODEC a field_49755 + f Ljava/util/Map; slots b comp_2455 + m ()Ljava/util/Map; slots a comp_2455 + m (Lnet/minecraft/world/entity/Entity;)Z matches a method_58119 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/advancements/critereon/ItemPredicate;Lit/unimi/dsi/fastutil/ints/IntList;)Z matchSlots a method_58120 + p 0 entity + p 1 predicate + p 2 slots + m (Ljava/util/Map;)V + m ()V +c net/minecraft/advancements/critereon/StartRidingTrigger ea net/minecraft/class_6407 + m (Lnet/minecraft/server/level/ServerPlayer;)V trigger a method_37257 + p 1 player + m (Lnet/minecraft/advancements/critereon/StartRidingTrigger$TriggerInstance;)Z method_37259 a method_37259 + m ()V +c net/minecraft/advancements/critereon/StartRidingTrigger$TriggerInstance ea$a net/minecraft/class_6407$class_6408 + f Lcom/mojang/serialization/Codec; CODEC a field_47337 + f Ljava/util/Optional; player b comp_2029 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; playerStartsRiding a method_37260 + p 0 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55134 a method_55134 + m (Ljava/util/Optional;)V + p 1 player + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate eb net/minecraft/class_4559 + f Lcom/mojang/serialization/Codec; CODEC a field_45777 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49396 + f Ljava/util/List; properties c comp_1830 + f Lcom/mojang/serialization/Codec; PROPERTIES_CODEC d field_45778 + m ()Ljava/util/List; properties a comp_1830 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z matches a method_22514 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/Optional; checkState a method_53235 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/StateHolder;)Z matches a method_22515 + p 1 properties + p 2 targetProperty + m (Lnet/minecraft/world/level/material/FluidState;)Z matches a method_22518 + p 1 state + m (Ljava/util/List;)Ljava/util/Map; method_53236 a method_53236 + m (Ljava/util/Map$Entry;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$PropertyMatcher; method_53237 a method_53237 + m (Ljava/util/Map;)Ljava/util/List; method_53238 a method_53238 + m (Ljava/util/List;)V + p 1 properties + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$Builder eb$a net/minecraft/class_4559$class_4560 + f Lcom/google/common/collect/ImmutableList$Builder; matchers a field_20738 + m ()Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; properties a method_22523 + m (Lnet/minecraft/world/level/block/state/properties/Property;I)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22524 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22525 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22526 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Z)Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder; hasProperty a method_22527 + p 1 property + p 2 value + m ()Ljava/util/Optional; build b method_22528 + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$ExactMatcher eb$b net/minecraft/class_4559$class_4561 + f Lcom/mojang/serialization/Codec; CODEC a field_45779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49397 + f Ljava/lang/String; value e comp_1831 + m ()Ljava/lang/String; value a comp_1831 + m (Ljava/lang/String;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$PropertyMatcher eb$c net/minecraft/class_4559$class_4562 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49398 + f Ljava/lang/String; name b comp_1832 + f Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher; valueMatcher c comp_1833 + m ()Ljava/lang/String; name a comp_1832 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/Optional; checkState a method_22531 + p 1 state + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/StateHolder;)Z match a method_22530 + p 1 properties + p 2 propertyToMatch + m ()Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher; valueMatcher b comp_1833 + m (Ljava/lang/String;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$RangedMatcher eb$d net/minecraft/class_4559$class_4563 + f Lcom/mojang/serialization/Codec; CODEC a field_45780 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49399 + f Ljava/util/Optional; minValue e comp_1834 + f Ljava/util/Optional; maxValue f comp_1835 + m ()Ljava/util/Optional; minValue a comp_1834 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53239 a method_53239 + m ()Ljava/util/Optional; maxValue b comp_1835 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher eb$e net/minecraft/class_4559$class_8750 + f Lcom/mojang/serialization/Codec; CODEC c field_45781 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49400 + m (Lnet/minecraft/world/level/block/state/StateHolder;Lnet/minecraft/world/level/block/state/properties/Property;)Z match a method_22532 + p 1 stateHolder + p 2 property + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)Lcom/mojang/datafixers/util/Either; method_57564 a method_57564 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$ValueMatcher;)Lcom/mojang/datafixers/util/Either; method_53243 b method_53243 + m ()V +c net/minecraft/advancements/critereon/SummonedEntityTrigger ec net/minecraft/class_2128 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;)V trigger a method_9124 + p 1 player + p 2 entity + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/SummonedEntityTrigger$TriggerInstance;)Z method_22537 a method_22537 + m ()V +c net/minecraft/advancements/critereon/SummonedEntityTrigger$TriggerInstance ec$a net/minecraft/class_2128$class_2130 + f Lcom/mojang/serialization/Codec; CODEC a field_47338 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entity c comp_2093 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; summonedEntity a method_9129 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55135 a method_55135 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_9130 + p 1 lootContext + m ()Ljava/util/Optional; entity b comp_2093 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entity + m ()V +c net/minecraft/advancements/critereon/TagPredicate ed net/minecraft/class_8129 + f Lnet/minecraft/tags/TagKey; tag a comp_1836 + f Z expected b comp_1837 + m ()Lnet/minecraft/tags/TagKey; tag a comp_1836 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_53245 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53246 a method_53246 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/TagPredicate; is a method_48965 + p 0 tag + m (Lnet/minecraft/core/Holder;)Z matches a method_48967 + p 1 value + m ()Z expected b comp_1837 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/critereon/TagPredicate; isNot b method_48968 + p 0 tag + m (Lnet/minecraft/tags/TagKey;Z)V + p 1 tag + p 2 expected +c net/minecraft/advancements/critereon/TameAnimalTrigger ee net/minecraft/class_2131 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/animal/Animal;)V trigger a method_9132 + p 1 player + p 2 entity + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/advancements/critereon/TameAnimalTrigger$TriggerInstance;)Z method_22538 a method_22538 + m ()V +c net/minecraft/advancements/critereon/TameAnimalTrigger$TriggerInstance ee$a net/minecraft/class_2131$class_2133 + f Lcom/mojang/serialization/Codec; CODEC a field_47344 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; entity c comp_2094 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; tamedAnimal a method_16114 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55136 a method_55136 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_9139 + p 1 lootContext + m ()Lnet/minecraft/advancements/Criterion; tamedAnimal b method_9138 + m ()Ljava/util/Optional; entity c comp_2094 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 entity + m ()V +c net/minecraft/advancements/critereon/TargetBlockTrigger ef net/minecraft/class_4851 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;I)V trigger a method_24861 + p 1 player + p 2 projectile + p 3 vector + p 4 signalStrength + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/phys/Vec3;ILnet/minecraft/advancements/critereon/TargetBlockTrigger$TriggerInstance;)Z method_24951 a method_24951 + m ()V +c net/minecraft/advancements/critereon/TargetBlockTrigger$TriggerInstance ef$a net/minecraft/class_4851$class_4852 + f Lcom/mojang/serialization/Codec; CODEC a field_47345 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; signalStrength c comp_2095 + f Ljava/util/Optional; projectile d comp_2096 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55137 a method_55137 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; targetHit a method_24865 + p 0 signalStrength + p 1 projectile + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/phys/Vec3;I)Z matches a method_24952 + p 1 context + p 2 vector + p 3 signalStrength + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; signalStrength b comp_2095 + m ()Ljava/util/Optional; projectile c comp_2096 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)V + p 1 player + p 2 signalStrength + p 3 projectile + m ()V +c net/minecraft/advancements/critereon/TradeTrigger eg net/minecraft/class_2140 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/npc/AbstractVillager;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9146 + p 1 player + p 2 villager + p 3 stack + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/TradeTrigger$TriggerInstance;)Z method_22539 a method_22539 + m ()V +c net/minecraft/advancements/critereon/TradeTrigger$TriggerInstance eg$a net/minecraft/class_2140$class_2142 + f Lcom/mojang/serialization/Codec; CODEC a field_47347 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; villager c comp_2097 + f Ljava/util/Optional; item d comp_2098 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/advancements/Criterion; tradedWithVillager a method_38914 + p 0 villager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55138 a method_55138 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)Z matches a method_9154 + p 1 context + p 2 stack + m ()Lnet/minecraft/advancements/Criterion; tradedWithVillager b method_9153 + m ()Ljava/util/Optional; villager c comp_2097 + m ()Ljava/util/Optional; item d comp_2098 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 villager + p 3 item + m ()V +c net/minecraft/advancements/critereon/UsedEnderEyeTrigger eh net/minecraft/class_2143 + m (DLnet/minecraft/advancements/critereon/UsedEnderEyeTrigger$TriggerInstance;)Z method_22540 a method_22540 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)V trigger a method_9157 + p 1 player + p 2 pos + m ()V +c net/minecraft/advancements/critereon/UsedEnderEyeTrigger$TriggerInstance eh$a net/minecraft/class_2143$class_2145 + f Lcom/mojang/serialization/Codec; CODEC a field_47350 + f Ljava/util/Optional; player b comp_2029 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance c comp_2099 + m (D)Z matches a method_9162 + p 1 distanceSq + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55142 a method_55142 + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance b comp_2099 + m (Ljava/util/Optional;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V + p 1 player + p 2 distance + m ()V +c net/minecraft/advancements/critereon/UsedTotemTrigger ei net/minecraft/class_2148 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_9165 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/UsedTotemTrigger$TriggerInstance;)Z method_22541 a method_22541 + m ()V +c net/minecraft/advancements/critereon/UsedTotemTrigger$TriggerInstance ei$a net/minecraft/class_2148$class_2150 + f Lcom/mojang/serialization/Codec; CODEC a field_47351 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2100 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55143 a method_55143 + m (Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; usedTotem a method_35399 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_9171 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; usedTotem a method_9170 + p 0 item + m ()Ljava/util/Optional; item b comp_2100 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/UsingItemTrigger ej net/minecraft/class_6409 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)V trigger a method_37262 + p 1 player + p 2 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/advancements/critereon/UsingItemTrigger$TriggerInstance;)Z method_37263 a method_37263 + m ()V +c net/minecraft/advancements/critereon/UsingItemTrigger$TriggerInstance ej$a net/minecraft/class_6409$class_6410 + f Lcom/mojang/serialization/Codec; CODEC a field_47353 + f Ljava/util/Optional; player b comp_2029 + f Ljava/util/Optional; item c comp_2101 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; lookingAt a method_37265 + p 0 player + p 1 item + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55144 a method_55144 + m (Lnet/minecraft/world/item/ItemStack;)Z matches a method_37266 + p 1 item + m ()Ljava/util/Optional; item b comp_2101 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 player + p 2 item + m ()V +c net/minecraft/advancements/critereon/WrappedMinMaxBounds ek net/minecraft/class_2152 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; ANY a field_9780 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INTS_ONLY b field_9781 + f Ljava/lang/Float; min c comp_1840 + f Ljava/lang/Float; max d comp_1841 + m ()Lcom/google/gson/JsonElement; serializeToJson a method_35407 + m (D)Z matchesSqr a method_35400 + p 1 value + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; exactly a method_35401 + p 0 value + m (FF)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; between a method_35402 + p 0 min + p 1 max + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromJson a method_35403 + p 0 json + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromReader a method_35404 + p 0 reader + p 1 isFloatingPoint + m (Lcom/mojang/brigadier/StringReader;ZLjava/util/function/Function;)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; fromReader a method_9172 + p 0 reader + p 1 isFloatingPoint + p 2 valueFactory + m (Ljava/lang/Float;)Ljava/lang/Float; method_35405 a method_35405 + m (Ljava/lang/Float;Ljava/util/function/Function;)Ljava/lang/Float; optionallyFormat a method_9174 + p 0 value + p 1 valueFactory + m ()Ljava/lang/Float; min b comp_1840 + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; atLeast b method_35406 + p 0 min + m (Lcom/mojang/brigadier/StringReader;Z)Ljava/lang/Float; readNumber b method_9176 + p 0 reader + p 1 isFloatingPoint + m ()Ljava/lang/Float; max c comp_1841 + m (F)Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; atMost c method_35408 + p 0 max + m (Lcom/mojang/brigadier/StringReader;Z)Z isAllowedNumber c method_9173 + p 0 reader + p 1 isFloatingPoint + m (F)Z matches d method_35409 + p 1 value + m (Ljava/lang/Float;Ljava/lang/Float;)V + p 1 min + p 2 max + m ()V +c net/minecraft/advancements/critereon/package-info el net/minecraft/class_6129 +c net/minecraft/advancements/package-info em net/minecraft/class_6132 +c net/minecraft/commands/BrigadierExceptions en net/minecraft/class_2156 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; DISPATCHER_PARSE_EXCEPTION A field_9790 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; DOUBLE_TOO_SMALL a field_9799 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; DOUBLE_TOO_BIG b field_9788 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; FLOAT_TOO_SMALL c field_9802 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; FLOAT_TOO_BIG d field_9795 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; INTEGER_TOO_SMALL e field_9784 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; INTEGER_TOO_BIG f field_9793 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; LONG_TOO_SMALL g field_18140 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; LONG_TOO_BIG h field_18141 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; LITERAL_INCORRECT i field_9796 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_START_OF_QUOTE j field_9783 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_END_OF_QUOTE k field_9803 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_ESCAPE l field_9791 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_BOOL m field_9789 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_INT n field_9786 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_INT o field_9801 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_LONG p field_18142 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_LONG q field_18143 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_DOUBLE r field_9800 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_DOUBLE s field_9798 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_INVALID_FLOAT t field_9804 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_FLOAT u field_9787 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; READER_EXPECTED_BOOL v field_9794 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; READER_EXPECTED_SYMBOL w field_9785 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_UNKNOWN_COMMAND x field_9797 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_UNKNOWN_ARGUMENT y field_9792 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; DISPATCHER_EXPECTED_ARGUMENT_SEPARATOR z field_9782 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9184 a method_9184 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18479 a method_18479 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9188 b method_9188 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18480 b method_18480 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9179 c method_9179 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9186 c method_9186 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9182 d method_9182 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9190 d method_9190 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_18481 e method_18481 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9178 e method_9178 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9181 f method_9181 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9180 f method_9180 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9185 g method_9185 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9183 g method_9183 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9191 h method_9191 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9187 h method_9187 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9189 i method_9189 + m ()V + m ()V +c net/minecraft/commands/CacheableFunction eo net/minecraft/class_2159 + f Lcom/mojang/serialization/Codec; CODEC a field_47409 + f Lnet/minecraft/resources/ResourceLocation; id b field_9807 + f Z resolved c field_9810 + f Ljava/util/Optional; function d field_9808 + m ()Lnet/minecraft/resources/ResourceLocation; getId a method_9197 + m (Lnet/minecraft/server/ServerFunctionManager;)Ljava/util/Optional; get a method_9196 + p 1 functionManager + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + m ()V +c net/minecraft/commands/CommandBuildContext ep net/minecraft/class_7157 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/commands/CommandBuildContext; simple a method_46722 + p 0 provider + p 1 enabledFeatures +c net/minecraft/commands/CommandBuildContext$1 ep$1 net/minecraft/class_7157$1 + f Lnet/minecraft/core/HolderLookup$Provider; val$access a field_40908 + f Lnet/minecraft/world/flag/FeatureFlagSet; val$enabledFeatures b field_40909 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_56810 a method_56810 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/flag/FeatureFlagSet;)V +c net/minecraft/commands/CommandResultCallback eq net/minecraft/class_8935 + f Lnet/minecraft/commands/CommandResultCallback; EMPTY a field_47158 + m (Lnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/CommandResultCallback;ZI)V method_54880 a method_54880 + m ()V +c net/minecraft/commands/CommandResultCallback$1 eq$1 net/minecraft/class_8935$1 + m ()V +c net/minecraft/commands/CommandSigningContext er net/minecraft/class_7448 + f Lnet/minecraft/commands/CommandSigningContext; ANONYMOUS a field_39901 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; getArgument a method_44907 + p 1 name + m ()V +c net/minecraft/commands/CommandSigningContext$1 er$1 net/minecraft/class_7448$1 + m ()V +c net/minecraft/commands/CommandSigningContext$SignedArguments er$a net/minecraft/class_7448$class_7449 + f Ljava/util/Map; arguments b comp_971 + m ()Ljava/util/Map; arguments a comp_971 + m (Ljava/util/Map;)V +c net/minecraft/commands/CommandSource es net/minecraft/class_2165 + f Lnet/minecraft/commands/CommandSource; NULL a field_17395 + c A {@code CommandSource} that ignores all messages. + m ()Z shouldInformAdmins M_ method_9201 + m (Lnet/minecraft/network/chat/Component;)V sendSystemMessage a method_43496 + p 1 component + m ()Z acceptsSuccess k_ method_9200 + m ()Z alwaysAccepts l_ method_36320 + m ()Z acceptsFailure w_ method_9202 + m ()V +c net/minecraft/commands/CommandSource$1 es$1 net/minecraft/class_2165$1 + m ()V +c net/minecraft/commands/CommandSourceStack et net/minecraft/class_2168 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_PLAYER a field_9824 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_ENTITY b field_9827 + f Lnet/minecraft/commands/CommandSource; source c field_9819 + f Lnet/minecraft/world/phys/Vec3; worldPosition d field_9817 + f Lnet/minecraft/server/level/ServerLevel; level e field_9828 + f I permissionLevel f field_9815 + f Ljava/lang/String; textName g field_9826 + f Lnet/minecraft/network/chat/Component; displayName h field_9825 + f Lnet/minecraft/server/MinecraftServer; server i field_9818 + f Z silent j field_9823 + f Lnet/minecraft/world/entity/Entity; entity k field_9820 + f Lnet/minecraft/commands/CommandResultCallback; resultCallback l field_47159 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor m field_9816 + f Lnet/minecraft/world/phys/Vec2; rotation n field_9822 + f Lnet/minecraft/commands/CommandSigningContext; signingContext o field_39183 + f Lnet/minecraft/util/TaskChainer; chatMessageChainer p field_39834 + m ()Lnet/minecraft/commands/CommandSourceStack; withSuppressedOutput a method_9217 + m (I)Lnet/minecraft/commands/CommandSourceStack; withPermission a method_9206 + p 1 permissionLevel + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/CommandSourceStack; withLevel a method_9227 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Z shouldFilterMessageTo a method_45067 + p 1 receiver + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/commands/CommandSourceStack; withEntity a method_9232 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)Lnet/minecraft/commands/CommandSourceStack; facing a method_9220 + p 1 entity + p 2 anchor + m (Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/CommandSourceStack; withCallback a method_9231 + p 1 callback + m (Lnet/minecraft/commands/CommandResultCallback;Ljava/util/function/BinaryOperator;)Lnet/minecraft/commands/CommandSourceStack; withCallback a method_9209 + p 1 callback + p 2 operator + m (Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/util/TaskChainer;)Lnet/minecraft/commands/CommandSourceStack; withSigningContext a method_43735 + p 1 signingContext + p 2 chatMessageChainer + m (Lnet/minecraft/commands/CommandSource;)Lnet/minecraft/commands/CommandSourceStack; withSource a method_36321 + p 1 source + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/commands/CommandSourceStack; withRotation a method_9216 + p 1 rotation + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/commands/CommandSourceStack; withPosition a method_9208 + p 1 pos + m (Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/core/Registry;)Ljava/util/concurrent/CompletableFuture; method_41212 a method_41212 + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)Lnet/minecraft/commands/CommandSourceStack; withAnchor a method_9218 + p 1 anchor + m (Ljava/util/function/Supplier;Z)V sendSuccess a method_9226 + p 1 messageSupplier + p 2 allowLogging + m (Lnet/minecraft/network/chat/Component;)V sendSystemMessage a method_45068 + p 1 message + m (Lnet/minecraft/network/chat/OutgoingChatMessage;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendChatMessage a method_44749 + p 1 message + p 2 shouldFilter + p 3 boundChatType + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_9223 + m (I)Lnet/minecraft/commands/CommandSourceStack; withMaximumPermission b method_9230 + p 1 permissionLevel + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/commands/CommandSourceStack; facing b method_9221 + p 1 lookPos + m (Lnet/minecraft/network/chat/Component;)V sendFailure b method_9213 + p 1 message + m ()Ljava/lang/String; getTextName c method_9214 + m (Lnet/minecraft/network/chat/Component;)V broadcastToAdmins c method_9212 + p 1 message + m ()Lnet/minecraft/world/phys/Vec3; getPosition d method_9222 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel e method_9225 + m ()Lnet/minecraft/world/entity/Entity; getEntity f method_9228 + m ()Lnet/minecraft/world/entity/Entity; getEntityOrException g method_9229 + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayerOrException h method_9207 + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayer i method_44023 + m ()Z isPlayer j method_43737 + m ()Lnet/minecraft/world/phys/Vec2; getRotation k method_9210 + m ()Lnet/minecraft/server/MinecraftServer; getServer l method_9211 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getAnchor m method_9219 + m ()Lnet/minecraft/commands/CommandSigningContext; getSigningContext n method_43738 + m ()Lnet/minecraft/util/TaskChainer; getChatMessageChainer o method_44909 + m (Lnet/minecraft/commands/CommandSource;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;Lnet/minecraft/server/level/ServerLevel;ILjava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/Entity;)V + p 1 source + p 2 worldPosition + p 3 rotation + p 4 level + p 5 permissionLevel + p 6 textName + p 7 displayName + p 8 server + p 9 entity + m (Lnet/minecraft/commands/CommandSource;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;Lnet/minecraft/server/level/ServerLevel;ILjava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/util/TaskChainer;)V + p 1 source + p 2 worldPosition + p 3 rotation + p 4 level + p 5 permissionLevel + p 6 textName + p 7 displayName + p 8 server + p 9 entity + p 10 silent + p 11 resultCallback + p 12 anchor + p 13 signingContext + p 14 chatMessageChainer + m ()V +c net/minecraft/commands/Commands eu net/minecraft/class_2170 + f I LEVEL_ALL a field_31837 + f I LEVEL_MODERATORS b field_31838 + f I LEVEL_GAMEMASTERS c field_31839 + f I LEVEL_ADMINS d field_31840 + f I LEVEL_OWNERS e field_31841 + f Ljava/lang/ThreadLocal; CURRENT_EXECUTION_CONTEXT f field_46823 + f Lorg/slf4j/Logger; LOGGER g field_9833 + f Lcom/mojang/brigadier/CommandDispatcher; dispatcher h field_9832 + m ()Lcom/mojang/brigadier/CommandDispatcher; getDispatcher a method_9235 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendCommands a method_9241 + p 1 player + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Collection;)V method_41710 a method_41710 + m (Lcom/mojang/brigadier/ParseResults;)V validateParseResults a method_54312 + p 0 parseResults + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;)V performCommand a method_9249 + p 1 parseResults + p 2 command + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)Lcom/mojang/brigadier/context/ContextChain; finishParsing a method_54492 + p 0 parseResults + p 1 command + p 2 source + m (Lcom/mojang/brigadier/ParseResults;Ljava/util/function/UnaryOperator;)Lcom/mojang/brigadier/ParseResults; mapSource a method_45018 + p 0 parseResults + p 1 mapper + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Ljava/lang/String; method_30851 a method_30851 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_9246 a method_9246 + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/tree/CommandNode;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Map;)V fillUsableCommands a method_9239 + p 1 rootCommandSource + p 2 rootSuggestion + p 3 source + p 4 commandNodeToSuggestionNode + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)V performPrefixedCommand a method_44252 + p 1 source + p 2 command + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Consumer;)V executeCommandInContext a method_54313 + p 0 source + p 1 contextConsumer + m (Lnet/minecraft/commands/Commands$ParseFunction;)Ljava/util/function/Predicate; createValidator a method_9238 + p 0 parser + m (Lnet/minecraft/commands/Commands$ParseFunction;Ljava/lang/String;)Z method_9240 a method_9240 + m (Lnet/minecraft/commands/SharedSuggestionProvider;)Z method_9245 a method_9245 + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; literal a method_9247 + c Creates a new argument. Intended to be imported statically. The benefit of this over the brigadier {@link LiteralArgumentBuilder#literal} method is that it is typed to {@link CommandSource}. + p 0 name + m (Ljava/lang/String;Lcom/mojang/brigadier/arguments/ArgumentType;)Lcom/mojang/brigadier/builder/RequiredArgumentBuilder; argument a method_9244 + c Creates a new argument. Intended to be imported statically. The benefit of this over the brigadier {@link RequiredArgumentBuilder#argument} method is that it is typed to {@link CommandSource}. + p 0 name + p 1 type + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;)V method_54314 a method_54314 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_54493 a method_54493 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/commands/CommandBuildContext; createValidationContext a method_46732 + p 0 provider + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_9242 a method_9242 + m ()V validate b method_30852 + m (Lcom/mojang/brigadier/ParseResults;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; getParseException b method_23917 + p 0 result + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Z method_30853 b method_30853 + m (Ljava/lang/String;)Ljava/lang/String; method_44253 b method_44253 + m (Lcom/mojang/brigadier/ParseResults;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_54494 c method_54494 + m (Lnet/minecraft/commands/Commands$CommandSelection;Lnet/minecraft/commands/CommandBuildContext;)V + p 1 selection + p 2 context + m ()V +c net/minecraft/commands/Commands$1 eu$1 net/minecraft/class_2170$1 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries a field_40921 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup$Delegate; createLookup a method_56811 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/commands/Commands$1$1 eu$1$1 net/minecraft/class_2170$1$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$original a field_40922 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; method_46734 c method_46734 + m (Lnet/minecraft/commands/Commands$1;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/commands/Commands$CommandSelection eu$a net/minecraft/class_2170$class_5364 + f Lnet/minecraft/commands/Commands$CommandSelection; ALL a field_25419 + f Lnet/minecraft/commands/Commands$CommandSelection; DEDICATED b field_25420 + f Lnet/minecraft/commands/Commands$CommandSelection; INTEGRATED c field_25421 + f Z includeIntegrated d field_25422 + f Z includeDedicated e field_25423 + f [Lnet/minecraft/commands/Commands$CommandSelection; $VALUES f field_25424 + m ()[Lnet/minecraft/commands/Commands$CommandSelection; $values a method_36791 + m (Ljava/lang/String;IZZ)V + p 3 includeIntegrated + p 4 includeDedicated + m ()V +c net/minecraft/commands/Commands$ParseFunction eu$b net/minecraft/class_2170$class_2171 +c net/minecraft/commands/ExecutionCommandSource ev net/minecraft/class_8839 + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54316 a method_54316 + m (Lcom/mojang/brigadier/exceptions/CommandExceptionType;Lcom/mojang/brigadier/Message;ZLnet/minecraft/commands/execution/TraceCallbacks;)V handleError a method_54491 + p 1 exceptionType + p 2 message + p 3 success + p 4 traceCallbacks + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;ZLnet/minecraft/commands/execution/TraceCallbacks;)V handleError a method_54495 + p 1 exception + p 2 success + p 3 traceCallbacks + m ()Lnet/minecraft/commands/ExecutionCommandSource; clearCallbacks a_ method_54311 + m (Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/ExecutionCommandSource; withCallback b method_54307 + p 1 callback + m ()Lcom/mojang/brigadier/ResultConsumer; resultConsumer b_ method_54317 + m (I)Z hasPermission c method_9259 + p 1 permissionLevel + m ()Lnet/minecraft/commands/CommandResultCallback; callback p method_54881 + m ()Lcom/mojang/brigadier/CommandDispatcher; dispatcher x method_54310 + m ()Z isSilent y method_54882 +c net/minecraft/commands/FunctionInstantiationException ew net/minecraft/class_8643 + f Lnet/minecraft/network/chat/Component; messageComponent a field_45154 + m ()Lnet/minecraft/network/chat/Component; messageComponent a method_52600 + m (Lnet/minecraft/network/chat/Component;)V + p 1 messageComponent +c net/minecraft/commands/ParserUtils ex net/minecraft/class_9010 + f Ljava/lang/reflect/Field; JSON_READER_POS a field_47525 + f Ljava/lang/reflect/Field; JSON_READER_LINESTART b field_47526 + m ()Ljava/lang/reflect/Field; method_55375 a method_55375 + m (Lcom/google/gson/stream/JsonReader;)I getPos a method_55376 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/CharPredicate;)Ljava/lang/String; readWhile a method_58128 + p 0 reader + p 1 predicate + m (Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/brigadier/StringReader;Lcom/mojang/serialization/Codec;)Ljava/lang/Object; parseJson a method_55377 + p 0 registries + p 1 reader + p 2 codec + m ()Ljava/lang/reflect/Field; method_55378 b method_55378 + m ()V + m ()V +c net/minecraft/commands/SharedSuggestionProvider ey net/minecraft/class_2172 + m ()Ljava/util/Collection; getSelectedEntities A method_9269 + m ()Ljava/util/Collection; getRelevantCoordinates B method_17771 + m ()Ljava/util/Collection; getAbsoluteCoordinates C method_17772 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; suggestRegistryElements a method_41213 + p 1 resourceKey + p 2 registryKey + p 3 builder + p 4 context + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_9263 a method_9263 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; customSuggestion a method_9261 + p 1 context + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/resources/ResourceLocation;)V method_9275 a method_9275 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V method_9266 a method_9266 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)V method_9256 a method_9256 + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9270 + p 0 resources + p 1 builder + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9258 + p 0 resources + p 1 builder + p 2 prefix + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9255 + p 0 resources + p 1 builder + p 2 locationFunction + p 3 suggestionFunction + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V filterResources a method_9250 + p 0 resources + p 1 remaining + p 2 prefix + p 3 locationFunction + p 4 resourceConsumer + m (Ljava/lang/Iterable;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Consumer;)V filterResources a method_9268 + p 0 resources + p 1 input + p 2 locationFunction + p 3 resourceConsumer + m (Ljava/lang/String;Ljava/lang/String;)Z matchesSubStr a method_27136 + p 0 input + p 1 substring + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; suggestCoordinates a method_9260 + p 0 remaining + p 1 coordinates + p 2 builder + p 3 validator + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9257 + p 0 resourceLocations + p 1 builder + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_40182 + p 0 resources + p 1 builder + p 2 prefix + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggestResource a method_9271 + p 0 resources + p 1 builder + p 2 locationFunction + p 3 suggestionFunction + m (Lnet/minecraft/core/Registry;Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V suggestRegistryElements a method_41214 + p 1 registry + p 2 type + p 3 builder + m ([Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest a method_9253 + p 0 strings + p 1 builder + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_9251 b method_9251 + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest b method_9265 + p 0 strings + p 1 builder + m (Ljava/lang/Iterable;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; suggest b method_35510 + p 0 resources + p 1 builder + p 2 stringFunction + p 3 suggestionFunction + m (Ljava/lang/String;Ljava/lang/String;)Z method_9272 b method_9272 + m (Ljava/lang/String;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Predicate;)Ljava/util/concurrent/CompletableFuture; suggest2DCoordinates b method_9252 + p 0 remaining + p 1 coordinates + p 2 builder + p 3 validator + m (Ljava/util/stream/Stream;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggest b method_9264 + p 0 strings + p 1 builder + m (I)Z hasPermission c method_9259 + p 1 permissionLevel + m ()Ljava/util/Collection; getOnlinePlayerNames q method_9262 + m ()Ljava/util/Collection; getAllTeams r method_9267 + m ()Ljava/util/stream/Stream; getAvailableSounds s method_9254 + m ()Ljava/util/stream/Stream; getRecipeNames t method_9273 + m ()Ljava/util/Set; levels u method_29310 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess v method_30497 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures w method_45549 + m ()Ljava/util/Collection; getCustomTabSugggestions z method_44750 +c net/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType ey$a net/minecraft/class_2172$class_7078 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; TAGS a field_37262 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; ELEMENTS b field_37263 + f Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; ALL c field_37264 + f [Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; $VALUES d field_37265 + m ()Z shouldSuggestTags a method_41215 + m ()Z shouldSuggestElements b method_41216 + m ()[Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType; $values c method_41217 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/commands/SharedSuggestionProvider$TextCoordinates ey$b net/minecraft/class_2172$class_2173 + f Lnet/minecraft/commands/SharedSuggestionProvider$TextCoordinates; DEFAULT_LOCAL a field_9834 + f Lnet/minecraft/commands/SharedSuggestionProvider$TextCoordinates; DEFAULT_GLOBAL b field_9838 + f Ljava/lang/String; x c field_9835 + f Ljava/lang/String; y d field_9836 + f Ljava/lang/String; z e field_9837 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 x + p 2 y + p 3 z + m ()V +c net/minecraft/commands/arguments/AngleArgument ez net/minecraft/class_5473 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_26368 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_ANGLE b field_27345 + f Ljava/util/Collection; EXAMPLES c field_26369 + m ()Lnet/minecraft/commands/arguments/AngleArgument; angle a method_30658 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/AngleArgument$SingleAngle; parse a method_30659 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)F getAngle a method_30660 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/AngleArgument$SingleAngle ez$a net/minecraft/class_5473$class_5474 + f F angle a field_26370 + f Z isRelative b field_26371 + m (Lnet/minecraft/commands/CommandSourceStack;)F getAngle a method_30661 + p 1 source + m (FZ)V + p 1 angle + p 2 isRelative +c net/minecraft/commands/arguments/ArgumentSignatures fa net/minecraft/class_7450 + f Lnet/minecraft/commands/arguments/ArgumentSignatures; EMPTY a field_39807 + f Ljava/util/List; entries b comp_912 + f I MAX_ARGUMENT_COUNT c field_39418 + f I MAX_ARGUMENT_NAME_LENGTH d field_39185 + m ()Ljava/util/List; entries a comp_912 + m (Lnet/minecraft/commands/arguments/ArgumentSignatures$Signer;Lnet/minecraft/network/chat/SignableCommand$Argument;)Lnet/minecraft/commands/arguments/ArgumentSignatures$Entry; method_45561 a method_45561 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_43749 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/arguments/ArgumentSignatures$Entry;)V method_44799 a method_44799 + m (Lnet/minecraft/network/chat/SignableCommand;Lnet/minecraft/commands/arguments/ArgumentSignatures$Signer;)Lnet/minecraft/commands/arguments/ArgumentSignatures; signCommand a method_44797 + p 0 command + p 1 signer + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/commands/arguments/ArgumentSignatures$Entry fa$a net/minecraft/class_7450$class_7599 + f Ljava/lang/String; name a comp_913 + f Lnet/minecraft/network/chat/MessageSignature; signature b comp_914 + m ()Ljava/lang/String; name a comp_913 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44800 + p 1 buffer + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_914 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Lnet/minecraft/network/chat/MessageSignature;)V +c net/minecraft/commands/arguments/ArgumentSignatures$Signer fa$b net/minecraft/class_7450$class_7600 +c net/minecraft/commands/arguments/ColorArgument fb net/minecraft/class_2177 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9840 + f Ljava/util/Collection; EXAMPLES b field_9839 + m ()Lnet/minecraft/commands/arguments/ColorArgument; color a method_9276 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/ChatFormatting; parse a method_9279 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/ChatFormatting; getColor a method_9277 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9278 a method_9278 + m ()V + m ()V +c net/minecraft/commands/arguments/ComponentArgument fc net/minecraft/class_2178 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_JSON a field_9842 + f Ljava/util/Collection; EXAMPLES b field_9841 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48917 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/network/chat/Component; parse a method_9283 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getComponent a method_9280 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ComponentArgument; textComponent a method_9281 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9282 a method_9282 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/CompoundTagArgument fd net/minecraft/class_2179 + f Ljava/util/Collection; EXAMPLES a field_9843 + m ()Lnet/minecraft/commands/arguments/CompoundTagArgument; compoundTag a method_9284 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/CompoundTag; parse a method_9286 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; getCompoundTag a method_9285 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/DimensionArgument fe net/minecraft/class_2181 + f Ljava/util/Collection; EXAMPLES a field_9844 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE b field_9845 + m ()Lnet/minecraft/commands/arguments/DimensionArgument; dimension a method_9288 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_9291 a method_9291 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; parse a method_9287 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ServerLevel; getDimension a method_9289 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9290 a method_9290 + m ()V + m ()V +c net/minecraft/commands/arguments/EntityAnchorArgument ff net/minecraft/class_2183 + f Ljava/util/Collection; EXAMPLES a field_9847 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID b field_9846 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument; anchor a method_9295 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; parse a method_9292 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getAnchor a method_9294 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9293 a method_9293 + m ()V + m ()V +c net/minecraft/commands/arguments/EntityAnchorArgument$Anchor ff$a net/minecraft/class_2183$class_2184 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; FEET a field_9853 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; EYES b field_9851 + f Ljava/util/Map; BY_NAME c field_9852 + f Ljava/lang/String; name d field_9849 + f Ljava/util/function/BiFunction; transform e field_9848 + f [Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; $VALUES f field_9850 + m ()[Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; $values a method_36814 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; apply a method_9302 + c Gets the coordinate based on the given entity's position. + p 1 entity + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec3; apply a method_9299 + c Gets the coordinate based on the given command source's position. If the source is not an entity, no offsetting occurs. + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_9298 a method_9298 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getByName a method_9296 + p 0 name + m (Ljava/util/HashMap;)V method_9297 a method_9297 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_9300 b method_9300 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 3 name + p 4 transform + m ()V +c net/minecraft/commands/arguments/EntityArgument fg net/minecraft/class_2186 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_SINGLE_ENTITY a field_9860 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_SINGLE_PLAYER b field_9864 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ONLY_PLAYERS_ALLOWED c field_9861 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_ENTITIES_FOUND d field_9863 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_PLAYERS_FOUND e field_9856 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELECTORS_NOT_ALLOWED f field_9862 + f Ljava/util/Collection; EXAMPLES g field_9859 + f Z single h field_9858 + f Z playersOnly i field_9857 + m ()Lnet/minecraft/commands/arguments/EntityArgument; entity a method_9309 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_61178 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_61179 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/selector/EntitySelector; parse a method_9318 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/entity/Entity; getEntity a method_9313 + p 0 context + p 1 name + m (Lnet/minecraft/commands/SharedSuggestionProvider;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9311 a method_9311 + m ()Lnet/minecraft/commands/arguments/EntityArgument; entities b method_9306 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getEntities b method_9317 + p 0 context + p 1 name + m ()Lnet/minecraft/commands/arguments/EntityArgument; player c method_9305 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getOptionalEntities c method_9307 + p 0 context + p 1 name + m ()Lnet/minecraft/commands/arguments/EntityArgument; players d method_9308 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getOptionalPlayers d method_9310 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ServerPlayer; getPlayer e method_9315 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getPlayers f method_9312 + p 0 context + p 1 name + m (ZZ)V + p 1 single + p 2 playersOnly + m ()V +c net/minecraft/commands/arguments/EntityArgument$Info fg$a net/minecraft/class_2186$class_2187 + f B FLAG_SINGLE a field_37850 + f B FLAG_PLAYERS_ONLY b field_37851 + m (Lnet/minecraft/commands/arguments/EntityArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_9319 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/EntityArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_9320 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/EntityArgument;)Lnet/minecraft/commands/arguments/EntityArgument$Info$Template; unpack a method_41727 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/EntityArgument$Info$Template; deserializeFromNetwork a method_9321 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/EntityArgument$Info$Template fg$a$a net/minecraft/class_2186$class_2187$class_7171 + f Lnet/minecraft/commands/arguments/EntityArgument$Info; field_37852 a field_37852 + f Z single b field_37853 + f Z playersOnly c field_37854 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/EntityArgument; instantiate a method_41729 + p 1 context + m (Lnet/minecraft/commands/arguments/EntityArgument$Info;ZZ)V + p 2 single + p 3 playersOnly +c net/minecraft/commands/arguments/GameModeArgument fh net/minecraft/class_7918 + f Ljava/util/Collection; EXAMPLES a field_41088 + f [Lnet/minecraft/world/level/GameType; VALUES b field_41089 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID c field_41090 + m ()Lnet/minecraft/commands/arguments/GameModeArgument; gameMode a method_47383 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/level/GameType; parse a method_47384 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/GameType; getGameMode a method_47385 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47386 a method_47386 + m ()V + m ()V +c net/minecraft/commands/arguments/GameProfileArgument fi net/minecraft/class_2191 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_UNKNOWN_PLAYER a field_9869 + f Ljava/util/Collection; EXAMPLES b field_9868 + m ()Lnet/minecraft/commands/arguments/GameProfileArgument; gameProfile a method_9329 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_61180 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_61181 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/GameProfileArgument$Result; parse a method_9331 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getGameProfiles a method_9330 + p 0 context + p 1 name + m (Lnet/minecraft/commands/SharedSuggestionProvider;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9332 a method_9332 + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/Collection; method_9328 a method_9328 + m ()V + m ()V +c net/minecraft/commands/arguments/GameProfileArgument$Result fi$a net/minecraft/class_2191$class_2192 +c net/minecraft/commands/arguments/GameProfileArgument$SelectorResult fi$b net/minecraft/class_2191$class_2193 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector a field_9870 + m (Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 selector +c net/minecraft/commands/arguments/HeightmapTypeArgument fj net/minecraft/class_8199 + f Lcom/mojang/serialization/Codec; LOWER_CASE_CODEC a field_42994 + m ()Lnet/minecraft/commands/arguments/HeightmapTypeArgument; heightmap a method_49542 + m (I)[Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_49543 a method_49543 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightmap a method_49544 + p 0 context + p 1 argument + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Types; keptTypes b method_49546 + m (Ljava/lang/String;)Ljava/lang/String; method_49547 b method_49547 + m ()V + m ()V +c net/minecraft/commands/arguments/MessageArgument fk net/minecraft/class_2196 + f Ljava/util/Collection; EXAMPLES a field_9876 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; TOO_LONG b field_51482 + m ()Lnet/minecraft/commands/arguments/MessageArgument; message a method_9340 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/MessageArgument$Message; parse a method_9338 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/MessageArgument$Message; parse a method_61182 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getMessage a method_9339 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Consumer;)V resolveChatMessage a method_45562 + p 0 context + p 1 key + p 2 callback + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/concurrent/CompletableFuture; filterPlainText a method_45563 + p 0 source + p 1 message + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59836 a method_59836 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)V resolveSignedMessage a method_45566 + p 0 callback + p 1 source + p 2 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lnet/minecraft/server/network/FilteredText;)V method_45568 a method_45568 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/PlayerChatMessage;)V resolveDisguisedMessage b method_45569 + p 0 callback + p 1 source + p 2 message + m ()V + m ()V +c net/minecraft/commands/arguments/MessageArgument$Message fk$a net/minecraft/class_2196$class_2197 + f Ljava/lang/String; text a comp_2653 + f [Lnet/minecraft/commands/arguments/MessageArgument$Part; parts b comp_2654 + m ()Ljava/lang/String; text a comp_2653 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/MessageArgument$Message; parseText a method_9342 + c Parses a message. The algorithm for this is simply to run through and look for selectors, ignoring any invalid selectors in the text (since players may type e.g. "[@]"). + p 0 reader + p 1 allowSelectors + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/Component; resolveComponent a method_44268 + p 1 source + m (Lnet/minecraft/commands/CommandSourceStack;Z)Lnet/minecraft/network/chat/Component; toComponent a method_9341 + c Converts this message into a text component, replacing any selectors in the text with the actual evaluated selector. + p 1 source + p 2 allowSelectors + m ()[Lnet/minecraft/commands/arguments/MessageArgument$Part; parts b comp_2654 + m (Ljava/lang/String;[Lnet/minecraft/commands/arguments/MessageArgument$Part;)V + p 1 text + p 2 parts +c net/minecraft/commands/arguments/MessageArgument$Part fk$b net/minecraft/class_2196$class_2198 + f I start a comp_2655 + f I end b comp_2656 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector c comp_2657 + m ()I start a comp_2655 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/Component; toComponent a method_9345 + c Runs the selector and returns the component produced by it. This method does not actually appear to ever return null. + p 1 source + m ()I end b comp_2656 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; selector c comp_2657 + m (IILnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 start + p 2 end + p 3 selector +c net/minecraft/commands/arguments/NbtPathArgument fl net/minecraft/class_2203 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_NODE a field_9900 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DATA_TOO_DEEP b field_41706 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOTHING_FOUND c field_9899 + f Ljava/util/Collection; EXAMPLES d field_9898 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_LIST e field_41708 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_INDEX f field_41709 + f C INDEX_MATCH_START g field_32182 + f C INDEX_MATCH_END h field_32183 + f C KEY_MATCH_START i field_32184 + f C KEY_MATCH_END j field_32185 + f C QUOTED_KEY_START k field_32186 + f C SINGLE_QUOTED_KEY_START l field_44920 + m ()Lnet/minecraft/commands/arguments/NbtPathArgument; nbtPath a method_9360 + m (C)Z isAllowedInUnquotedName a method_9355 + c @return {@code true} if the given character is normal for a tag name; otherwise {@code false} if it has special meaning for paths. + p 0 ch + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; parse a method_9362 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$Node; readObjectNode a method_9352 + p 0 reader + p 1 name + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/NbtPathArgument$Node; parseNode a method_9361 + p 0 reader + p 1 first + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; getPath a method_9358 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47969 a method_47969 + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/function/Predicate; createTagPredicate a method_9359 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)Z method_9353 a method_9353 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; readUnquotedName b method_9357 + c Reads a tag name until the next special character. Throws if the result would be a 0-length string. Does not handle quoted tag names. + p 0 reader + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47970 b method_47970 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9356 c method_9356 + m ()V + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$AllElementsNode fl$a net/minecraft/class_2203$class_2204 + f Lnet/minecraft/commands/arguments/NbtPathArgument$AllElementsNode; INSTANCE a field_9901 + m ()V + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$CompoundChildNode fl$b net/minecraft/class_2203$class_2205 + f Ljava/lang/String; name a field_9902 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/commands/arguments/NbtPathArgument$IndexedElementNode fl$c net/minecraft/class_2203$class_2206 + f I index a field_9903 + m (I)V + p 1 index +c net/minecraft/commands/arguments/NbtPathArgument$MatchElementNode fl$d net/minecraft/class_2203$class_2207 + f Lnet/minecraft/nbt/CompoundTag; pattern a field_9904 + f Ljava/util/function/Predicate; predicate b field_9905 + m (Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;)V method_9365 a method_9365 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 pattern +c net/minecraft/commands/arguments/NbtPathArgument$MatchObjectNode fl$e net/minecraft/class_2203$class_2208 + f Ljava/lang/String; name a field_9906 + f Lnet/minecraft/nbt/CompoundTag; pattern b field_9907 + f Ljava/util/function/Predicate; predicate c field_9908 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V + p 1 name + p 2 pattern +c net/minecraft/commands/arguments/NbtPathArgument$MatchRootObjectNode fl$f net/minecraft/class_2203$class_3707 + f Ljava/util/function/Predicate; predicate a field_16319 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/commands/arguments/NbtPathArgument$NbtPath fl$g net/minecraft/class_2203$class_2209 + f Lcom/mojang/serialization/Codec; CODEC a field_50034 + f Ljava/lang/String; original b field_9909 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; nodeToOriginalPosition c field_9910 + f [Lnet/minecraft/commands/arguments/NbtPathArgument$Node; nodes d field_9911 + m ()Ljava/lang/String; asString a method_54100 + m (ILnet/minecraft/nbt/CompoundTag;Ljava/util/List;)I insert a method_47972 + p 1 index + p 2 rootTag + p 3 tagsToInsert + m (Lnet/minecraft/commands/arguments/NbtPathArgument$Node;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; createNotFoundException a method_9375 + p 1 node + m (Lnet/minecraft/commands/arguments/NbtPathArgument$Node;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Ljava/lang/Integer; method_47973 a method_47973 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/lang/Integer; method_9370 a method_9370 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; of a method_58472 + p 0 path + m (Ljava/lang/String;Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Ljava/lang/String; method_58473 a method_58473 + m (Ljava/util/List;Ljava/util/function/Function;)I apply a method_9371 + p 0 tags + p 1 function + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_47974 a method_47974 + m (Lnet/minecraft/nbt/Tag;)Ljava/util/List; get a method_9366 + p 1 tag + m (Lnet/minecraft/nbt/Tag;I)Z isTooDeep a method_47975 + p 0 tag + p 1 currentDepth + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;)Ljava/util/List; getOrCreate a method_9367 + p 1 tag + p 2 supplier + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)I set a method_35722 + p 1 tag + p 2 other + m ()I estimatePathDepth b method_47971 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_58474 b method_58474 + m (Lnet/minecraft/nbt/Tag;)I countMatching b method_9374 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)I remove c method_9372 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/util/List; getOrCreateParents d method_9369 + p 1 tag + m (Ljava/lang/String;[Lnet/minecraft/commands/arguments/NbtPathArgument$Node;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 original + p 2 nodes + p 3 nodeToOriginPosition + m ()V +c net/minecraft/commands/arguments/NbtPathArgument$Node fl$h net/minecraft/class_2203$class_2210 + m ()Lnet/minecraft/nbt/Tag; createPreferredParentTag a method_9382 + c Creates an empty element of the type read by this node. + m (Ljava/util/List;)Ljava/util/List; get a method_9381 + p 1 tags + m (Ljava/util/List;Ljava/util/function/BiConsumer;)Ljava/util/List; collect a method_9384 + p 1 tags + p 2 consumer + m (Ljava/util/List;Ljava/util/function/Supplier;)Ljava/util/List; getOrCreate a method_9377 + p 1 tags + p 2 supplier + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;Ljava/util/List;)V method_9379 a method_9379 + m (Lnet/minecraft/nbt/Tag;)I removeTag a method_9383 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Ljava/util/List;)V getTag a method_9378 + p 1 tag + p 2 tags + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;)I setTag a method_9376 + p 1 tag + p 2 supplier + m (Lnet/minecraft/nbt/Tag;Ljava/util/function/Supplier;Ljava/util/List;)V getOrCreateTag a method_9380 + p 1 tag + p 2 supplier + p 3 tags +c net/minecraft/commands/arguments/NbtTagArgument fm net/minecraft/class_2212 + f Ljava/util/Collection; EXAMPLES a field_9918 + m ()Lnet/minecraft/commands/arguments/NbtTagArgument; nbtTag a method_9389 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/Tag; parse a method_9388 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/nbt/Tag; getNbtTag a method_9390 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ObjectiveArgument fn net/minecraft/class_2214 + f Ljava/util/Collection; EXAMPLES a field_9919 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_OBJECTIVE_NOT_FOUND b field_9922 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_OBJECTIVE_READ_ONLY c field_9921 + m ()Lnet/minecraft/commands/arguments/ObjectiveArgument; objective a method_9391 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_9396 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getObjective a method_9395 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9392 a method_9392 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getWritableObjective b method_9393 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9397 b method_9397 + m ()V + m ()V +c net/minecraft/commands/arguments/ObjectiveCriteriaArgument fo net/minecraft/class_2216 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9927 + f Ljava/util/Collection; EXAMPLES b field_9926 + m ()Lnet/minecraft/commands/arguments/ObjectiveCriteriaArgument; criteria a method_9399 + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)Ljava/lang/String; getName a method_9400 + p 1 type + p 2 value + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; parse a method_9403 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;ILjava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17949 a method_17949 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; getCriteria a method_9402 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9401 a method_9401 + m ()V + m ()V +c net/minecraft/commands/arguments/OperationArgument fp net/minecraft/class_2218 + f Ljava/util/Collection; EXAMPLES a field_9929 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_OPERATION b field_9931 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DIVIDE_BY_ZERO c field_9930 + m ()Lnet/minecraft/commands/arguments/OperationArgument; operation a method_9404 + m (II)I method_9414 a method_9414 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; parse a method_9412 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; getOperation a method_9409 + p 0 context + p 1 name + m (Lnet/minecraft/world/scores/ScoreAccess;Lnet/minecraft/world/scores/ScoreAccess;)V method_9410 a method_9410 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$Operation; getOperation a method_9413 + c Makes an {@link net.minecraft.commands.arguments.OperationArgument.Operation} instance based on the given name. This method handles all operations. + p 0 name + m (II)I method_9411 b method_9411 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/OperationArgument$SimpleOperation; getSimpleOperation b method_9407 + c Makes an {@link net.minecraft.commands.arguments.OperationArgument.Operation} instance based on the given name. This method actually returns {@link net.minecraft.commands.arguments.OperationArgument.SimpleOperation}, which is used as a functional interface target with 2 ints. It handles all operations other than swap (><). + p 0 name + m (II)I method_9415 c method_9415 + m (II)I method_9408 d method_9408 + m (II)I method_9406 e method_9406 + m ()V + m ()V +c net/minecraft/commands/arguments/OperationArgument$Operation fp$a net/minecraft/class_2218$class_2219 +c net/minecraft/commands/arguments/OperationArgument$SimpleOperation fp$b net/minecraft/class_2218$class_2220 +c net/minecraft/commands/arguments/ParticleArgument fq net/minecraft/class_2223 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PARTICLE a field_9936 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_OPTIONS b field_51438 + f Ljava/util/Collection; EXAMPLES c field_9935 + f Lnet/minecraft/core/HolderLookup$Provider; registries d field_48929 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/particles/ParticleOptions; parse a method_9416 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45582 a method_45582 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/particles/ParticleOptions; readParticle a method_9418 + p 0 reader + p 1 registries + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/HolderLookup;)Lnet/minecraft/core/particles/ParticleType; readParticleType a method_45583 + p 0 reader + p 1 particleTypeLookup + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/particles/ParticleOptions; readParticle a method_9420 + p 0 reader + p 1 particleType + p 2 registries + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/particles/ParticleOptions; getParticle a method_9421 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ParticleArgument; particle a method_9417 + p 0 buildContext + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59751 a method_59751 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9419 b method_9419 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 buildContext + m ()V +c net/minecraft/commands/arguments/RangeArgument fr net/minecraft/class_2224 + m ()Lnet/minecraft/commands/arguments/RangeArgument$Ints; intRange a method_9422 + c Note: this class is missing several fields and methods due to them not being used in particular FloatRange has no way of being created. + m ()Lnet/minecraft/commands/arguments/RangeArgument$Floats; floatRange b method_30918 +c net/minecraft/commands/arguments/RangeArgument$Floats fr$a net/minecraft/class_2224$class_2225 + f Ljava/util/Collection; EXAMPLES a field_9937 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; parse a method_9423 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; getRange a method_35738 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/RangeArgument$Ints fr$b net/minecraft/class_2224$class_2227 + f Ljava/util/Collection; EXAMPLES a field_9938 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; parse a method_9426 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; getRange a method_9425 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ResourceArgument fs net/minecraft/class_7733 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_RESOURCE a field_40401 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_RESOURCE_TYPE b field_40402 + f Ljava/util/Collection; EXAMPLES c field_40403 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_SUMMONABLE_ENTITY d field_40404 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_40405 + f Lnet/minecraft/core/HolderLookup; registryLookup f field_40406 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/Holder$Reference; parse a method_45600 + p 1 builder + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45599 a method_45599 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getAttribute a method_45601 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getResource a method_45602 + p 0 context + p 1 argument + p 2 registryKey + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceArgument; resource a method_45603 + p 0 context + p 1 registryKey + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45604 a method_45604 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45605 a method_45605 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45606 a method_45606 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getConfiguredFeature b method_45607 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructure c method_45608 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getEntityType d method_45609 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getSummonableEntityType e method_45610 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getMobEffect f method_45611 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getEnchantment g method_45612 + p 0 context + p 1 argument + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)V + p 1 context + p 2 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceArgument$Info fs$a net/minecraft/class_7733$class_7734 + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_45613 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_45614 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceArgument;)Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template; unpack a method_45615 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceArgument$Info$Template; deserializeFromNetwork a method_45616 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceArgument$Info$Template fs$a$a net/minecraft/class_7733$class_7734$class_7735 + f Lnet/minecraft/commands/arguments/ResourceArgument$Info; field_40407 a field_40407 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_40408 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceArgument; instantiate a method_45617 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceKeyArgument ft net/minecraft/class_7079 + f Ljava/util/Collection; EXAMPLES a field_37269 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_FEATURE b field_37271 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_STRUCTURE c field_39191 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_TEMPLATE_POOL d field_39192 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_37272 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceKeyArgument; key a method_41224 + p 0 registryKey + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceKey; parse a method_41218 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Registry; getRegistry a method_41221 + p 0 context + p 1 registryKey + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getConfiguredFeature a method_41225 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/resources/ResourceKey; getRegistryKey a method_41220 + p 0 context + p 1 argument + p 2 registryKey + p 3 exception + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_43775 a method_43775 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43776 a method_43776 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructure b method_43779 + p 0 context + p 1 argument + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/core/Holder$Reference; resolveKey b method_43777 + p 0 context + p 1 argument + p 2 registryKey + p 3 exception + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41222 b method_41222 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43778 b method_43778 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; getStructureTemplatePool c method_43780 + p 0 context + p 1 argument + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41226 c method_41226 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceKeyArgument$Info ft$a net/minecraft/class_7079$class_7080 + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41229 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41230 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument;)Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template; unpack a method_41903 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info$Template; deserializeFromNetwork a method_41231 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceKeyArgument$Info$Template ft$a$a net/minecraft/class_7079$class_7080$class_7197 + f Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info; field_37916 a field_37916 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37917 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceKeyArgument; instantiate a method_41904 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceKeyArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceLocationArgument fu net/minecraft/class_2232 + f Ljava/util/Collection; EXAMPLES a field_9946 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ADVANCEMENT b field_9945 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_RECIPE c field_9947 + m ()Lnet/minecraft/commands/arguments/ResourceLocationArgument; id a method_9441 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17788 a method_17788 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; parse a method_9446 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; getAdvancement a method_9439 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9444 a method_9444 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe b method_9442 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9440 b method_9440 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getId c method_9443 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/ResourceOrIdArgument fv net/minecraft/class_9433 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_FAILED_TO_PARSE a field_50037 + f Ljava/util/Collection; EXAMPLES b field_50038 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID c field_50039 + f Lnet/minecraft/core/HolderLookup$Provider; registryLookup d field_50040 + f Z hasRegistry e field_50041 + f Lcom/mojang/serialization/Codec; codec f field_50042 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/Holder; parse a method_58479 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58480 a method_58480 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootTable a method_58481 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootTableArgument; lootTable a method_58482 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58483 a method_58483 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/nbt/Tag; parseInlineOrId b method_58484 + p 0 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootModifier b method_58485 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootModifierArgument; lootModifier b method_58486 + p 0 context + m (Lcom/mojang/brigadier/StringReader;)Z hasConsumedWholeArg c method_58487 + p 0 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getLootPredicate c method_58488 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrIdArgument$LootPredicateArgument; lootPredicate c method_58489 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/Holder; getResource d method_58490 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)V + p 1 registryLookup + p 2 registryKey + p 3 codec + m ()V +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootModifierArgument fv$a net/minecraft/class_9433$class_9434 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootPredicateArgument fv$b net/minecraft/class_9433$class_9435 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrIdArgument$LootTableArgument fv$c net/minecraft/class_9433$class_9436 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context +c net/minecraft/commands/arguments/ResourceOrTagArgument fw net/minecraft/class_7737 + f Ljava/util/Collection; EXAMPLES a field_40417 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_TAG b field_40418 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_TAG_TYPE c field_40419 + f Lnet/minecraft/core/HolderLookup; registryLookup d field_40420 + f Lnet/minecraft/resources/ResourceKey; registryKey e field_40421 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45632 a method_45632 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderSet$Named;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45633 a method_45633 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result; parse a method_45635 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45634 a method_45634 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result; getResourceOrTag a method_45636 + p 0 context + p 1 argument + p 2 registryKey + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument; resourceOrTag a method_45637 + p 0 context + p 1 registryKey + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45638 a method_45638 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45639 a method_45639 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45640 a method_45640 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_45641 b method_45641 + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/resources/ResourceKey;)V + p 1 context + p 2 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Info fw$a net/minecraft/class_7737$class_7738 + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_45642 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_45643 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template; unpack a method_45644 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template; deserializeFromNetwork a method_45645 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Info$Template fw$a$a net/minecraft/class_7737$class_7738$class_7739 + f Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info; field_40422 a field_40422 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_40423 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrTagArgument; instantiate a method_45646 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceOrTagArgument$ResourceResult fw$b net/minecraft/class_7737$class_7740 + f Lnet/minecraft/core/Holder$Reference; value a comp_1023 + m (Lnet/minecraft/core/Holder;)Z test a method_45649 + p 1 holder + m ()Lnet/minecraft/core/Holder$Reference; value c comp_1023 + m (Lnet/minecraft/core/Holder$Reference;)V +c net/minecraft/commands/arguments/ResourceOrTagArgument$Result fw$c net/minecraft/class_7737$class_7741 + m ()Lcom/mojang/datafixers/util/Either; unwrap a method_45647 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast a method_45648 + p 1 registryKey + m ()Ljava/lang/String; asPrintable b method_45650 +c net/minecraft/commands/arguments/ResourceOrTagArgument$TagResult fw$d net/minecraft/class_7737$class_7742 + f Lnet/minecraft/core/HolderSet$Named; tag a comp_1024 + m (Lnet/minecraft/core/Holder;)Z test a method_45651 + p 1 holder + m ()Lnet/minecraft/core/HolderSet$Named; tag c comp_1024 + m (Lnet/minecraft/core/HolderSet$Named;)V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument fx net/minecraft/class_7066 + f Ljava/util/Collection; EXAMPLES a field_37223 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37226 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument; resourceOrTagKey a method_41170 + p 0 registryKey + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result; parse a method_41164 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result; getResourceOrTagKey a method_41166 + p 0 context + p 1 argument + p 2 registryKey + p 3 dynamicCommandExceptionType + m (Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41167 a method_41167 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey + m ()V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info fx$a net/minecraft/class_7066$class_7069 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41177 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41178 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template; unpack a method_41912 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template; deserializeFromNetwork a method_41179 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info$Template fx$a$a net/minecraft/class_7066$class_7069$class_7199 + f Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info; field_37928 a field_37928 + f Lnet/minecraft/resources/ResourceKey; registryKey b field_37929 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument; instantiate a method_41913 + p 1 context + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Info;Lnet/minecraft/resources/ResourceKey;)V + p 2 registryKey +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$ResourceResult fx$b net/minecraft/class_7066$class_7067 + f Lnet/minecraft/resources/ResourceKey; key a comp_522 + m (Lnet/minecraft/core/Holder;)Z test a method_41174 + p 1 holder + m ()Lnet/minecraft/resources/ResourceKey; key c comp_522 + m (Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result fx$c net/minecraft/class_7066$class_7068 + m ()Lcom/mojang/datafixers/util/Either; unwrap a method_41173 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast a method_41175 + p 1 registryKey + m ()Ljava/lang/String; asPrintable b method_41176 +c net/minecraft/commands/arguments/ResourceOrTagKeyArgument$TagResult fx$d net/minecraft/class_7066$class_7070 + f Lnet/minecraft/tags/TagKey; key a comp_523 + m (Lnet/minecraft/core/Holder;)Z test a method_41180 + p 1 holder + m ()Lnet/minecraft/tags/TagKey; key c comp_523 + m (Lnet/minecraft/tags/TagKey;)V +c net/minecraft/commands/arguments/ScoreHolderArgument fy net/minecraft/class_2233 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_SCORE_HOLDERS a field_9951 + f Ljava/util/Collection; EXAMPLES b field_9948 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_RESULTS c field_9950 + f Z multiple d field_9949 + m ()Lnet/minecraft/commands/arguments/ScoreHolderArgument; scoreHolder a method_9447 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_61183 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/Object;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_61184 + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Result; parse a method_9453 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9455 a method_9455 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/ScoreHolder; getName a method_9452 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Ljava/util/function/Supplier;)Ljava/util/Collection; getNames a method_9450 + c Gets one or more score holders. + p 0 context + p 1 name + p 2 objectives + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9457 a method_9457 + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55587 a method_55587 + m (Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_9456 a method_9456 + m (Ljava/util/UUID;Ljava/util/List;Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)Ljava/util/Collection; method_55588 a method_55588 + m ()Lnet/minecraft/commands/arguments/ScoreHolderArgument; scoreHolders b method_9451 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V method_9448 b method_9448 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getNames b method_9458 + c Gets one or more score holders, with no objectives list. + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getNamesWithDefaultWildcard c method_9449 + c Gets one or more score holders, using the server's complete list of objectives. + p 0 context + p 1 name + m (Z)V + p 1 multiple + m ()V +c net/minecraft/commands/arguments/ScoreHolderArgument$Info fy$a net/minecraft/class_2233$class_2236 + f B FLAG_MULTIPLE a field_37930 + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_9459 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_9461 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template; unpack a method_41914 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info$Template; deserializeFromNetwork a method_9460 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/ScoreHolderArgument$Info$Template fy$a$a net/minecraft/class_2233$class_2236$class_7200 + f Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info; field_37931 a field_37931 + f Z multiple b field_37932 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/ScoreHolderArgument; instantiate a method_41915 + p 1 context + m (Lnet/minecraft/commands/arguments/ScoreHolderArgument$Info;Z)V + p 2 multiple +c net/minecraft/commands/arguments/ScoreHolderArgument$Result fy$b net/minecraft/class_2233$class_2234 +c net/minecraft/commands/arguments/ScoreHolderArgument$SelectorResult fy$c net/minecraft/class_2233$class_2235 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector a field_9952 + m (Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + p 1 selector +c net/minecraft/commands/arguments/ScoreboardSlotArgument fz net/minecraft/class_2239 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_9954 + f Ljava/util/Collection; EXAMPLES b field_9953 + m ()Lnet/minecraft/commands/arguments/ScoreboardSlotArgument; displaySlot a method_9468 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/scores/DisplaySlot; parse a method_9466 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/DisplaySlot; getDisplaySlot a method_9465 + p 0 context + p 1 slot + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9467 a method_9467 + m ()V + m ()V +c net/minecraft/commands/arguments/SignedArgument ga net/minecraft/class_7451 +c net/minecraft/commands/arguments/SlotArgument gb net/minecraft/class_2240 + f Ljava/util/Collection; EXAMPLES a field_9956 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SLOT b field_9955 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ONLY_SINGLE_SLOT_ALLOWED c field_49766 + m ()Lnet/minecraft/commands/arguments/SlotArgument; slot a method_9473 + m (C)Z method_58129 a method_58129 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; parse a method_9470 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)I getSlot a method_9469 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9472 a method_9472 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9471 b method_9471 + m ()V + m ()V +c net/minecraft/commands/arguments/SlotsArgument gc net/minecraft/class_9351 + f Ljava/util/Collection; EXAMPLES a field_49767 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SLOT b field_49768 + m ()Lnet/minecraft/commands/arguments/SlotsArgument; slots a method_58130 + m (C)Z method_58131 a method_58131 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/world/inventory/SlotRange; parse a method_58132 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/inventory/SlotRange; getSlots a method_58133 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58134 a method_58134 + m ()V + m ()V +c net/minecraft/commands/arguments/StringRepresentableArgument gd net/minecraft/class_7485 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_VALUE a field_39361 + f Lcom/mojang/serialization/Codec; codec b field_39362 + f Ljava/util/function/Supplier; values c field_39363 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Enum; parse a method_44091 + p 1 stringReader + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_44093 a method_44093 + m (Ljava/lang/Object;)Ljava/lang/String; method_44092 a method_44092 + m (Ljava/lang/String;)Ljava/lang/String; convertId a method_49545 + p 1 id + m (Ljava/lang/Object;)Ljava/lang/String; method_44094 b method_44094 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_44095 c method_44095 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)V + p 1 codec + p 2 values + m ()V +c net/minecraft/commands/arguments/StyleArgument ge net/minecraft/class_9019 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_JSON a field_47553 + f Ljava/util/Collection; EXAMPLES b field_47554 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48932 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/network/chat/Style; parse a method_55447 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/network/chat/Style; getStyle a method_55448 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/StyleArgument; style a method_55446 + p 0 context + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_55449 a method_55449 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/TeamArgument gf net/minecraft/class_2243 + f Ljava/util/Collection; EXAMPLES a field_9964 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TEAM_NOT_FOUND b field_9963 + m ()Lnet/minecraft/commands/arguments/TeamArgument; team a method_9482 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_9483 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getTeam a method_9480 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9481 a method_9481 + m ()V + m ()V +c net/minecraft/commands/arguments/TemplateMirrorArgument gg net/minecraft/class_7486 + m ()Lnet/minecraft/commands/arguments/StringRepresentableArgument; templateMirror a method_44100 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/block/Mirror; getMirror a method_44101 + p 0 context + p 1 name + m ()V +c net/minecraft/commands/arguments/TemplateRotationArgument gh net/minecraft/class_7487 + m ()Lnet/minecraft/commands/arguments/TemplateRotationArgument; templateRotation a method_44102 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/level/block/Rotation; getRotation a method_44103 + p 0 context + p 1 name + m ()V +c net/minecraft/commands/arguments/TimeArgument gi net/minecraft/class_2245 + f Ljava/util/Collection; EXAMPLES a field_9969 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_UNIT b field_9970 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TICK_COUNT_TOO_LOW c field_41857 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; UNITS d field_9972 + f I minimum e field_41858 + m ()Lnet/minecraft/commands/arguments/TimeArgument; time a method_9489 + m (I)Lnet/minecraft/commands/arguments/TimeArgument; time a method_48287 + p 0 minimum + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Integer; parse a method_9490 + p 1 reader + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9491 a method_9491 + m (I)V + p 1 minimum + m ()V +c net/minecraft/commands/arguments/TimeArgument$Info gi$a net/minecraft/class_2245$class_8033 + m (Lnet/minecraft/commands/arguments/TimeArgument$Info$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_48288 + p 1 template + p 2 json + m (Lnet/minecraft/commands/arguments/TimeArgument$Info$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_48289 + p 1 template + p 2 buffer + m (Lnet/minecraft/commands/arguments/TimeArgument;)Lnet/minecraft/commands/arguments/TimeArgument$Info$Template; unpack a method_48290 + p 1 argument + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/arguments/TimeArgument$Info$Template; deserializeFromNetwork a method_48291 + p 1 buffer + m ()V +c net/minecraft/commands/arguments/TimeArgument$Info$Template gi$a$a net/minecraft/class_2245$class_8033$class_8034 + f Lnet/minecraft/commands/arguments/TimeArgument$Info; field_41859 a field_41859 + f I min b field_41860 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/TimeArgument; instantiate a method_48292 + p 1 context + m (Lnet/minecraft/commands/arguments/TimeArgument$Info;I)V + p 2 min +c net/minecraft/commands/arguments/UuidArgument gj net/minecraft/class_5242 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_UUID a field_24318 + f Ljava/util/Collection; EXAMPLES b field_24319 + f Ljava/util/regex/Pattern; ALLOWED_CHARACTERS c field_24320 + m ()Lnet/minecraft/commands/arguments/UuidArgument; uuid a method_27643 + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/UUID; parse a method_27644 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/UUID; getUuid a method_27645 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/blocks/BlockInput gk net/minecraft/class_2247 + f Lnet/minecraft/world/level/block/state/BlockState; state a field_10632 + f Ljava/util/Set; properties b field_10631 + f Lnet/minecraft/nbt/CompoundTag; tag c field_10633 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState a method_9494 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z test a method_35758 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;I)Z place a method_9495 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9493 + p 1 block + m ()Ljava/util/Set; getDefinedProperties b method_35759 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Set;Lnet/minecraft/nbt/CompoundTag;)V + p 1 state + p 2 properties + p 3 tag +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument gl net/minecraft/class_2252 + f Ljava/util/Collection; EXAMPLES a field_10672 + f Lnet/minecraft/core/HolderLookup; blocks b field_37963 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; parse a method_9642 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/function/Predicate; getBlockPredicate a method_9644 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument; blockPredicate a method_9645 + p 0 context + m (Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; method_41951 a method_41951 + m (Lnet/minecraft/commands/arguments/blocks/BlockStateParser$TagResult;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; method_41952 a method_41952 + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result; parse a method_41953 + p 0 lookup + p 1 reader + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$BlockPredicate gl$a net/minecraft/class_2252$class_2253 + f Lnet/minecraft/world/level/block/state/BlockState; state a field_10674 + f Ljava/util/Set; properties b field_10673 + f Lnet/minecraft/nbt/CompoundTag; nbt c field_10675 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9648 + p 1 block + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Set;Lnet/minecraft/nbt/CompoundTag;)V + p 1 state + p 2 properties + p 3 nbt +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$Result gl$b net/minecraft/class_2252$class_2254 + m ()Z requiresNbt a method_38559 +c net/minecraft/commands/arguments/blocks/BlockPredicateArgument$TagPredicate gl$c net/minecraft/class_2252$class_2255 + f Lnet/minecraft/core/HolderSet; tag a field_10676 + f Lnet/minecraft/nbt/CompoundTag; nbt b field_10677 + f Ljava/util/Map; vagueProperties c field_10678 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_9649 + p 1 block + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + p 2 vagueProperties + p 3 nbt +c net/minecraft/commands/arguments/blocks/BlockStateArgument gm net/minecraft/class_2257 + f Ljava/util/Collection; EXAMPLES a field_10679 + f Lnet/minecraft/core/HolderLookup; blocks b field_37964 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/blocks/BlockInput; parse a method_9654 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/blocks/BlockInput; getBlock a method_9655 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/blocks/BlockStateArgument; block a method_9653 + p 0 buildContext + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 buildContext + m ()V +c net/minecraft/commands/arguments/blocks/BlockStateParser gn net/minecraft/class_2259 + f Ljava/util/function/Function; suggestions A field_10696 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_TAGS_ALLOWED a field_10691 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_BLOCK b field_10690 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_UNKNOWN_PROPERTY c field_10695 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_DUPLICATE_PROPERTY d field_10692 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_INVALID_VALUE e field_10683 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_EXPECTED_VALUE f field_10688 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_END_OF_PROPERTIES g field_10684 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG h field_37965 + f C SYNTAX_START_PROPERTIES i field_32800 + f C SYNTAX_START_NBT j field_32801 + f C SYNTAX_END_PROPERTIES k field_32802 + f C SYNTAX_EQUALS l field_32803 + f C SYNTAX_PROPERTY_SEPARATOR m field_32804 + f C SYNTAX_TAG n field_32805 + f Ljava/util/function/Function; SUGGEST_NOTHING o field_10682 + f Lnet/minecraft/core/HolderLookup; blocks p field_37966 + f Lcom/mojang/brigadier/StringReader; reader q field_10698 + f Z forTesting r field_10687 + f Z allowNbt s field_37967 + f Ljava/util/Map; properties t field_10699 + f Ljava/util/Map; vagueProperties u field_10685 + f Lnet/minecraft/resources/ResourceLocation; id v field_10697 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition w field_10689 + f Lnet/minecraft/world/level/block/state/BlockState; state x field_10686 + f Lnet/minecraft/nbt/CompoundTag; nbt y field_10693 + f Lnet/minecraft/core/HolderSet; tag z field_10681 + m ()V parse a method_9678 + m (I)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17956 a method_17956 + m (ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_41954 a method_41954 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_41959 a method_41959 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestPropertyNameOrEnd a method_9671 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/world/level/block/state/properties/Property;)Lcom/mojang/brigadier/suggestion/SuggestionsBuilder; addSuggestions a method_9662 + p 0 builder + p 1 property + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyValue a method_9690 + p 1 builder + p 2 propertyName + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/lang/String; serialize a method_9685 + p 0 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9684 a method_9684 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;I)V setValue a method_9668 + p 1 property + p 2 value + p 3 valuePosition + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41958 a method_41958 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9686 a method_9686 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9660 a method_9660 + m (Ljava/lang/String;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_9683 a method_9683 + m (Ljava/lang/StringBuilder;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V appendProperty a method_9663 + p 0 builder + p 1 property + p 2 value + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult; parseForBlock a method_41955 + p 0 lookup + p 1 reader + p 2 allowNbt + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;ZZ)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9666 + p 0 lookup + p 1 builder + p 2 forTesting + p 3 allowNbt + m (Lnet/minecraft/core/HolderLookup;Ljava/lang/String;Z)Lnet/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult; parseForBlock a method_41957 + p 0 lookup + p 1 input + p 2 allowNbt + m ()Z hasBlockEntity b method_9676 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyNameOrEnd b method_9674 + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9682 b method_9682 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9691 b method_9691 + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;Z)Lcom/mojang/datafixers/util/Either; parseForTesting b method_41960 + p 0 lookup + p 1 reader + p 2 allowNbt + m (Lnet/minecraft/core/HolderLookup;Ljava/lang/String;Z)Lcom/mojang/datafixers/util/Either; parseForTesting b method_41962 + p 0 lookup + p 1 input + p 2 allowNbt + m ()V readBlock c method_9675 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestPropertyName c method_9665 + p 1 builder + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9661 c method_9661 + m ()V readTag d method_9677 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestVaguePropertyName d method_9667 + p 1 builder + m ()V readProperties e method_9659 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenNbt e method_9687 + p 1 builder + m ()V readVagueProperties f method_9680 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestEquals f method_9693 + p 1 builder + m ()V readNbt g method_9672 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestNextPropertyOrEnd g method_9689 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenVaguePropertiesOrNbt h method_9679 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestOpenPropertiesOrNbt i method_9681 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTag j method_9670 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestItem k method_41963 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestBlockIdOrTag l method_9673 + p 1 builder + m (Lnet/minecraft/core/HolderLookup;Lcom/mojang/brigadier/StringReader;ZZ)V + p 1 blocks + p 2 reader + p 3 forTesting + p 4 allowNbt + m ()V +c net/minecraft/commands/arguments/blocks/BlockStateParser$BlockResult gn$a net/minecraft/class_2259$class_7211 + f Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_622 + f Ljava/util/Map; properties b comp_623 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_624 + m ()Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_622 + m ()Ljava/util/Map; properties b comp_623 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_624 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/commands/arguments/blocks/BlockStateParser$TagResult gn$b net/minecraft/class_2259$class_7212 + f Lnet/minecraft/core/HolderSet; tag a comp_625 + f Ljava/util/Map; vagueProperties b comp_626 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_627 + m ()Lnet/minecraft/core/HolderSet; tag a comp_625 + m ()Ljava/util/Map; vagueProperties b comp_626 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_627 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/commands/arguments/blocks/package-info go net/minecraft/class_6251 +c net/minecraft/commands/arguments/coordinates/BlockPosArgument gp net/minecraft/class_2262 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_LOADED a field_10703 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OUT_OF_WORLD b field_10704 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OUT_OF_BOUNDS c field_29499 + f Ljava/util/Collection; EXAMPLES d field_10702 + m ()Lnet/minecraft/commands/arguments/coordinates/BlockPosArgument; blockPos a method_9698 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9699 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getLoadedBlockPos a method_48298 + p 0 context + p 1 level + p 2 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getLoadedBlockPos a method_9696 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getBlockPos b method_48299 + p 0 context + p 1 name + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/core/BlockPos; getSpawnablePos c method_9697 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/ColumnPosArgument gq net/minecraft/class_2264 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10706 + f Ljava/util/Collection; EXAMPLES b field_10705 + m ()Lnet/minecraft/commands/arguments/coordinates/ColumnPosArgument; columnPos a method_9701 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9703 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/server/level/ColumnPos; getColumnPos a method_9702 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/Coordinates gr net/minecraft/class_2267 + m ()Z isXRelative a method_9705 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec3; getPosition a method_9708 + p 1 source + m ()Z isYRelative b method_9706 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/phys/Vec2; getRotation b method_9709 + p 1 source + m ()Z isZRelative c method_9707 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/core/BlockPos; getBlockPos c method_9704 + p 1 source +c net/minecraft/commands/arguments/coordinates/LocalCoordinates gs net/minecraft/class_2268 + f C PREFIX_LOCAL_COORDINATE a field_32941 + f D left b field_10714 + f D up c field_10713 + f D forwards d field_10712 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/LocalCoordinates; parse a method_9711 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;I)D readDouble a method_9710 + p 0 reader + p 1 start + m (DDD)V + p 1 left + p 3 up + p 5 forwards +c net/minecraft/commands/arguments/coordinates/RotationArgument gt net/minecraft/class_2270 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10736 + f Ljava/util/Collection; EXAMPLES b field_10735 + m ()Lnet/minecraft/commands/arguments/coordinates/RotationArgument; rotation a method_9717 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9718 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; getRotation a method_9716 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/SwizzleArgument gu net/minecraft/class_2273 + f Ljava/util/Collection; EXAMPLES a field_10740 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID b field_10741 + m ()Lnet/minecraft/commands/arguments/coordinates/SwizzleArgument; swizzle a method_9721 + m (Lcom/mojang/brigadier/StringReader;)Ljava/util/EnumSet; parse a method_9722 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/EnumSet; getSwizzle a method_9720 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/coordinates/Vec2Argument gv net/minecraft/class_2274 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10743 + f Ljava/util/Collection; EXAMPLES b field_10742 + f Z centerCorrect c field_10744 + m ()Lnet/minecraft/commands/arguments/coordinates/Vec2Argument; vec2 a method_9723 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9725 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/phys/Vec2; getVec2 a method_9724 + p 0 context + p 1 name + m (Z)Lnet/minecraft/commands/arguments/coordinates/Vec2Argument; vec2 a method_35802 + p 0 centerCorrect + m (Z)V + p 1 centerCorrect + m ()V +c net/minecraft/commands/arguments/coordinates/Vec3Argument gw net/minecraft/class_2277 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE a field_10755 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MIXED_TYPE b field_10757 + f Ljava/util/Collection; EXAMPLES c field_10754 + f Z centerCorrect d field_10756 + m ()Lnet/minecraft/commands/arguments/coordinates/Vec3Argument; vec3 a method_9737 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; parse a method_9738 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/world/phys/Vec3; getVec3 a method_9736 + p 0 context + p 1 name + m (Z)Lnet/minecraft/commands/arguments/coordinates/Vec3Argument; vec3 a method_9735 + p 0 centerCorrect + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; getCoordinates b method_9734 + p 0 context + p 1 name + m (Z)V + p 1 centerCorrect + m ()V +c net/minecraft/commands/arguments/coordinates/WorldCoordinate gx net/minecraft/class_2278 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_DOUBLE a field_10759 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_INT b field_10761 + f C PREFIX_RELATIVE c field_32972 + f Z relative d field_10760 + f D value e field_10758 + m ()Z isRelative a method_9741 + m (D)D get a method_9740 + p 1 coord + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; parseInt a method_9739 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; parseDouble a method_9743 + p 0 reader + p 1 centerCorrect + m (Lcom/mojang/brigadier/StringReader;)Z isRelative b method_9742 + p 0 reader + m (ZD)V + p 1 relative + p 2 value + m ()V +c net/minecraft/commands/arguments/coordinates/WorldCoordinates gy net/minecraft/class_2280 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; x a field_10765 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; y b field_10764 + f Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate; z c field_10766 + m (DDD)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; absolute a method_35810 + p 0 x + p 2 y + p 4 z + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; parseInt a method_9749 + p 0 reader + m (Lcom/mojang/brigadier/StringReader;Z)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; parseDouble a method_9750 + p 0 reader + p 1 centerCorrect + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; absolute a method_35811 + p 0 vector + m ()Lnet/minecraft/commands/arguments/coordinates/WorldCoordinates; current d method_9751 + c A location with a delta of 0 for all values (equivalent to ~ ~ ~ or ~0 ~0 ~0) + m (Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;Lnet/minecraft/commands/arguments/coordinates/WorldCoordinate;)V + p 1 x + p 2 y + p 3 z +c net/minecraft/commands/arguments/coordinates/package-info gz net/minecraft/class_6271 +c net/minecraft/commands/arguments/item/ComponentPredicateParser ha net/minecraft/class_9437 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/lang/Object; method_58492 a method_58492 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58493 a method_58493 + m (Lnet/minecraft/util/parsing/packrat/Scope;)Lnet/minecraft/util/Unit; method_58494 a method_58494 + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)Lnet/minecraft/util/parsing/packrat/commands/Grammar; createGrammar a method_58495 + p 0 context + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58496 a method_58496 + m (Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/lang/Object; method_58497 a method_58497 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58498 a method_58498 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58499 b method_58499 + m (Ljava/lang/Object;Ljava/util/List;)Ljava/util/List; method_58500 b method_58500 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58501 c method_58501 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/List; method_58502 d method_58502 + m ()V +c net/minecraft/commands/arguments/item/ComponentPredicateParser$ComponentLookupRule ha$a net/minecraft/class_9437$class_9438 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$Context ha$b net/minecraft/class_9437$class_9439 + m ()Ljava/util/stream/Stream; listElementTypes a method_58503 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; forElementType a method_58504 + p 1 reader + p 2 elementType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;)Ljava/lang/Object; createComponentTest a method_58505 + p 1 reader + p 2 context + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; createComponentTest a method_58506 + p 1 reader + p 2 context + p 3 value + m (Ljava/lang/Object;)Ljava/lang/Object; negate a method_58507 + p 1 value + m (Ljava/util/List;)Ljava/lang/Object; anyOf a method_58508 + p 1 values + m ()Ljava/util/stream/Stream; listTagTypes b method_58509 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; forTagType b method_58510 + p 1 reader + p 2 tagType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/Object;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; createPredicateTest b method_58511 + p 1 reader + p 2 predicate + p 3 value + m ()Ljava/util/stream/Stream; listComponentTypes c method_58512 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; lookupComponentType c method_58513 + p 1 reader + p 2 componentType + m ()Ljava/util/stream/Stream; listPredicateTypes d method_58514 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; lookupPredicateType d method_58515 + p 1 reader + p 2 predicateType +c net/minecraft/commands/arguments/item/ComponentPredicateParser$ElementLookupRule ha$c net/minecraft/class_9437$class_9440 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$PredicateLookupRule ha$d net/minecraft/class_9437$class_9441 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/ComponentPredicateParser$TagLookupRule ha$e net/minecraft/class_9437$class_9442 + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/commands/arguments/item/ComponentPredicateParser$Context;)V + p 1 idParser + p 2 context +c net/minecraft/commands/arguments/item/FunctionArgument hb net/minecraft/class_2284 + f Ljava/util/Collection; EXAMPLES a field_10783 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG b field_10782 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_FUNCTION c field_10784 + m ()Lnet/minecraft/commands/arguments/item/FunctionArgument; functions a method_9760 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17959 a method_17959 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/FunctionArgument$Result; parse a method_9764 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/functions/CommandFunction; getFunction a method_9761 + p 0 context + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/Collection; getFunctions a method_9769 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9762 a method_9762 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getFunctionTag b method_9767 + p 0 context + p 1 id + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getFunctionOrTag b method_9768 + p 0 context + p 1 name + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9765 b method_9765 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getFunctionCollection c method_55590 + p 0 context + p 1 name + m ()V + m ()V +c net/minecraft/commands/arguments/item/FunctionArgument$1 hb$1 net/minecraft/class_2284$1 + f Lnet/minecraft/resources/ResourceLocation; val$id a field_10785 + m (Lnet/minecraft/commands/arguments/item/FunctionArgument;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/commands/arguments/item/FunctionArgument$2 hb$2 net/minecraft/class_2284$2 + f Lnet/minecraft/resources/ResourceLocation; val$id a field_10787 + m (Lnet/minecraft/commands/arguments/item/FunctionArgument;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/commands/arguments/item/FunctionArgument$Result hb$a net/minecraft/class_2284$class_2285 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; create a method_9771 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; unwrap b method_9770 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lcom/mojang/datafixers/util/Pair; unwrapToCollection c method_55591 + p 1 context +c net/minecraft/commands/arguments/item/ItemArgument hc net/minecraft/class_2287 + f Ljava/util/Collection; EXAMPLES a field_10790 + f Lnet/minecraft/commands/arguments/item/ItemParser; parser b field_48954 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemInput; parse a method_9778 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/item/ItemInput; getItem a method_9777 + p 0 context + p 1 name + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/item/ItemArgument; item a method_9776 + p 0 context + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/item/ItemInput hd net/minecraft/class_2290 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_STACK_TOO_BIG a field_10797 + f Lnet/minecraft/core/Holder; item b field_10796 + f Lnet/minecraft/core/component/DataComponentPatch; components c field_49570 + m ()Lnet/minecraft/world/item/Item; getItem a method_9785 + m (IZ)Lnet/minecraft/world/item/ItemStack; createItemStack a method_9781 + p 1 count + p 2 allowOversizedStacks + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_60378 a method_60378 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_57800 a method_57800 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9784 a method_9784 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; serialize a method_9782 + p 1 levelRegistry + m ()Ljava/lang/String; getItemName b method_41967 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; serializeComponents b method_57801 + p 1 levelRegistries + m ()Ljava/lang/Object; method_41968 c method_41968 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V + p 1 item + p 2 components + m ()V +c net/minecraft/commands/arguments/item/ItemParser he net/minecraft/class_2291 + f C SYNTAX_START_COMPONENTS a field_50044 + f C SYNTAX_END_COMPONENTS b field_50045 + f C SYNTAX_COMPONENT_SEPARATOR c field_50046 + f C SYNTAX_COMPONENT_ASSIGNMENT d field_50047 + f C SYNTAX_REMOVED_COMPONENT e field_51831 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ITEM f field_50048 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_COMPONENT g field_50049 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_COMPONENT h field_50050 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_COMPONENT i field_50051 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_REPEATED_COMPONENT j field_50052 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_MALFORMED_ITEM k field_51458 + f Ljava/util/function/Function; SUGGEST_NOTHING l field_50053 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; items m field_50054 + f Lcom/mojang/serialization/DynamicOps; registryOps n field_50055 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemParser$ItemResult; parse a method_9789 + p 1 reader + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/commands/arguments/item/ItemParser$Visitor;)V parse a method_58517 + p 1 reader + p 2 visitor + m (Lcom/mojang/brigadier/StringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_59768 a method_59768 + m (Lcom/mojang/brigadier/StringReader;Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V validateComponents a method_59769 + p 0 reader + p 1 item + p 2 components + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9793 + p 1 builder + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_59770 a method_59770 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58519 a method_58519 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58518 b method_58518 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58520 c method_58520 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58521 d method_58521 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/commands/arguments/item/ItemParser$1 he$1 net/minecraft/class_2291$1 + f Lorg/apache/commons/lang3/mutable/MutableObject; val$itemResult a field_48956 + f Lnet/minecraft/core/component/DataComponentPatch$Builder; val$componentsBuilder b field_49571 + m (Lnet/minecraft/commands/arguments/item/ItemParser;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/component/DataComponentPatch$Builder;)V +c net/minecraft/commands/arguments/item/ItemParser$ItemResult he$a net/minecraft/class_2291$class_7215 + f Lnet/minecraft/core/Holder; item a comp_628 + f Lnet/minecraft/core/component/DataComponentPatch; components b comp_2439 + m ()Lnet/minecraft/core/Holder; item a comp_628 + m ()Lnet/minecraft/core/component/DataComponentPatch; components b comp_2439 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)V +c net/minecraft/commands/arguments/item/ItemParser$State he$b net/minecraft/class_2291$class_9217 + f Lnet/minecraft/commands/arguments/item/ItemParser; field_48970 a field_48970 + f Lcom/mojang/brigadier/StringReader; reader b field_48971 + f Lnet/minecraft/commands/arguments/item/ItemParser$Visitor; visitor c field_48972 + m ()V parse a method_56869 + m (ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_56873 a method_56873 + m (ILnet/minecraft/core/component/DataComponentType;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_57806 a method_57806 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/core/component/DataComponentType; readComponentType a method_57807 + p 0 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestStartComponents a method_57808 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; suggestComponent a method_60380 + p 1 builder + p 2 suffix + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/lang/String;Ljava/util/Map$Entry;)V method_60381 a method_60381 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_60382 a method_60382 + m (Lnet/minecraft/core/component/DataComponentType;)V readComponent a method_57811 + p 1 componentType + m ()V readItem b method_56872 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestNextOrEndComponents b method_57812 + p 1 builder + m ()V readComponents c method_57814 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestAssignment c method_57813 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestItem d method_56874 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestComponentAssignmentOrRemoval e method_60383 + p 1 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestComponent f method_60384 + p 1 builder + m (Lnet/minecraft/commands/arguments/item/ItemParser;Lcom/mojang/brigadier/StringReader;Lnet/minecraft/commands/arguments/item/ItemParser$Visitor;)V + p 2 reader + p 3 visitor +c net/minecraft/commands/arguments/item/ItemParser$SuggestionsVisitor he$c net/minecraft/class_2291$class_9218 + f Ljava/util/function/Function; suggestions a field_48973 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lcom/mojang/brigadier/StringReader;)Ljava/util/concurrent/CompletableFuture; resolveSuggestions a method_56879 + p 1 builder + p 2 reader + m ()V +c net/minecraft/commands/arguments/item/ItemParser$Visitor he$d net/minecraft/class_2291$class_9219 + m (Ljava/util/function/Function;)V visitSuggestions a method_56880 + p 1 suggestions + m (Lnet/minecraft/core/Holder;)V visitItem a method_56853 + p 1 item + m (Lnet/minecraft/core/component/DataComponentType;)V visitRemovedComponent a method_60379 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V visitComponent a method_57802 + p 1 componentType + p 2 value +c net/minecraft/commands/arguments/item/ItemPredicateArgument hf net/minecraft/class_2293 + f Ljava/util/Collection; EXAMPLES a field_10812 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_ITEM b field_50056 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_TAG c field_50057 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_COMPONENT d field_50058 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_COMPONENT e field_50059 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PREDICATE f field_50060 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MALFORMED_PREDICATE g field_50061 + f Lnet/minecraft/resources/ResourceLocation; COUNT_ID h field_50062 + f Ljava/util/Map; PSEUDO_COMPONENTS i field_50063 + f Ljava/util/Map; PSEUDO_PREDICATES j field_50064 + f Lnet/minecraft/util/parsing/packrat/commands/Grammar; grammarWithContext k field_50065 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$Result; parse a method_9800 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$Result; getItemPredicate a method_9804 + p 0 context + p 1 name + m (Lnet/minecraft/world/item/ItemStack;)Z method_58522 a method_58522 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Ljava/util/function/Predicate; method_58523 a method_58523 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/item/ItemStack;)Z method_58524 a method_58524 + m (Lnet/minecraft/commands/CommandBuildContext;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument; itemPredicate a method_9801 + p 0 context + m (Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; method_58525 a method_58525 + m (Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper; method_58526 a method_58526 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58527 a method_58527 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58528 a method_58528 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Ljava/util/function/Predicate; method_58529 b method_58529 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/item/ItemStack;)Z method_58530 b method_58530 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58531 b method_58531 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58532 b method_58532 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58533 c method_58533 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58534 d method_58534 + m (Lnet/minecraft/commands/CommandBuildContext;)V + p 1 context + m ()V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper hf$a net/minecraft/class_2293$class_9444 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2527 + f Ljava/util/function/Predicate; presenceChecker b comp_2528 + f Lcom/mojang/serialization/Decoder; valueChecker c comp_2529 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2527 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; decode a method_58535 + p 1 reader + p 2 ops + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; create a method_58536 + p 0 reader + p 1 id + p 2 componentType + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58537 a method_58537 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;)Z method_58538 a method_58538 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/util/function/Predicate; method_58539 a method_58539 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Lnet/minecraft/world/item/ItemStack;)Z method_58540 a method_58540 + m ()Ljava/util/function/Predicate; presenceChecker b comp_2528 + m ()Lcom/mojang/serialization/Decoder; valueChecker c comp_2529 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Predicate;Lcom/mojang/serialization/Decoder;)V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$Context hf$b net/minecraft/class_2293$class_9445 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; items a field_50066 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; components b field_50067 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; predicates c field_50068 + f Lnet/minecraft/resources/RegistryOps; registryOps d field_50069 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;)Ljava/util/function/Predicate; createComponentTest a method_58541 + p 1 reader + p 2 context + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; createComponentTest a method_58542 + p 1 reader + p 2 context + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; createPredicateTest a method_58543 + p 1 reader + p 2 predicate + p 3 value + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; negate a method_58547 + p 1 value + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58544 a method_58544 + m (Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/item/ItemStack;)Z method_58545 a method_58545 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/item/ItemStack;)Z method_58546 a method_58546 + m (Ljava/util/List;)Ljava/util/function/Predicate; anyOf b method_58549 + p 1 values + m (Lnet/minecraft/core/Holder$Reference;)Z method_58548 b method_58548 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Predicate; forElementType e method_58550 + p 1 reader + p 2 elementType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Predicate; forTagType f method_58551 + p 1 reader + p 2 tagType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$ComponentWrapper; lookupComponentType g method_58552 + p 1 reader + p 2 componentType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper; lookupPredicateType h method_58553 + p 1 reader + p 2 predicateType + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58554 i method_58554 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58555 j method_58555 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58556 k method_58556 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58557 l method_58557 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/commands/arguments/item/ItemPredicateArgument$PredicateWrapper hf$c net/minecraft/class_2293$class_9446 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2530 + f Lcom/mojang/serialization/Decoder; type b comp_2531 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2530 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/Tag;)Ljava/util/function/Predicate; decode a method_58559 + p 1 reader + p 2 ops + p 3 value + m (Lcom/mojang/brigadier/ImmutableStringReader;Ljava/lang/String;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_58560 a method_58560 + m (Lnet/minecraft/advancements/critereon/ItemSubPredicate;)Ljava/util/function/Predicate; method_58558 a method_58558 + m ()Lcom/mojang/serialization/Decoder; type b comp_2531 + m (Lnet/minecraft/core/Holder$Reference;)V + p 1 predicate + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/Decoder;)V +c net/minecraft/commands/arguments/item/ItemPredicateArgument$Result hf$d net/minecraft/class_2293$class_2295 +c net/minecraft/commands/arguments/item/package-info hg net/minecraft/class_6277 +c net/minecraft/commands/arguments/package-info hh net/minecraft/class_6278 +c net/minecraft/commands/arguments/selector/EntitySelector hi net/minecraft/class_2300 + f I INFINITE a field_33068 + f Ljava/util/function/BiConsumer; ORDER_ARBITRARY b field_41524 + f Lnet/minecraft/world/level/entity/EntityTypeTest; ANY_TYPE c field_27774 + f I maxResults d field_10822 + f Z includesEntities e field_10830 + f Z worldLimited f field_10829 + f Ljava/util/List; contextFreePredicates g field_52308 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; range h field_10825 + f Ljava/util/function/Function; position i field_10823 + f Lnet/minecraft/world/phys/AABB; aabb j field_10824 + f Ljava/util/function/BiConsumer; order k field_10826 + f Z currentEntity l field_10828 + f Ljava/lang/String; playerName m field_10831 + f Ljava/util/UUID; entityUUID n field_10821 + f Lnet/minecraft/world/level/entity/EntityTypeTest; type o field_10832 + f Z usesSelector p field_10827 + m ()I getMaxResults a method_9815 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/entity/Entity;)Z method_61159 a method_61159 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/entity/Entity; findSingleEntity a method_9809 + p 1 source + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;)Z method_9810 a method_9810 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; getAbsoluteAabb a method_61160 + p 1 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_9812 a method_9812 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/function/Predicate; getPredicate a method_9817 + p 1 pos + p 2 box + p 3 enabledFeatures + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)Ljava/util/List; sortAndLimit a method_9814 + p 1 pos + p 2 entities + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; joinNames a method_9822 + p 0 names + m (Ljava/util/List;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)V addEntities a method_9823 + p 1 entities + p 2 level + p 3 box + p 4 predicate + m ()Z includesEntities b method_9819 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/List; findEntities b method_9816 + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_47802 b method_47802 + m ()Z isSelfSelector c method_9820 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/server/level/ServerPlayer; findSinglePlayer c method_9811 + p 1 source + m ()Z isWorldLimited d method_9821 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/List; findPlayers d method_9813 + p 1 source + m ()Z usesSelector e method_35815 + m (Lnet/minecraft/commands/CommandSourceStack;)V checkPermissions e method_9818 + p 1 source + m ()I getResultLimit f method_47803 + m (IZZLjava/util/List;Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;Ljava/util/function/Function;Lnet/minecraft/world/phys/AABB;Ljava/util/function/BiConsumer;ZLjava/lang/String;Ljava/util/UUID;Lnet/minecraft/world/entity/EntityType;Z)V + p 1 maxResults + p 2 includesEntities + p 3 worldLimited + p 4 contextFreePredicates + p 5 range + p 6 position + p 7 aabb + p 8 order + p 9 currentEntity + p 10 playerName + p 11 entityUUID + p 12 type + p 13 usesSelector + m ()V +c net/minecraft/commands/arguments/selector/EntitySelector$1 hi$1 net/minecraft/class_2300$1 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; tryCast a method_32203 + m ()V +c net/minecraft/commands/arguments/selector/EntitySelectorParser hj net/minecraft/class_2303 + c

Interface {@link net.fabricmc.fabric.api.command.v2.FabricEntitySelectorReader} injected by mod fabric-command-api-v2

+ f Z includesEntities A field_10843 + f Z worldLimited B field_10866 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; distance C field_10838 + f Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; level D field_10842 + f Ljava/lang/Double; x E field_10857 + f Ljava/lang/Double; y F field_10872 + f Ljava/lang/Double; z G field_10839 + f Ljava/lang/Double; deltaX H field_10862 + f Ljava/lang/Double; deltaY I field_10852 + f Ljava/lang/Double; deltaZ J field_10881 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; rotX K field_10877 + f Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; rotY L field_10859 + f Ljava/util/List; predicates M field_10870 + f Ljava/util/function/BiConsumer; order N field_10847 + f Z currentEntity O field_10879 + f Ljava/lang/String; playerName P field_10876 + f I startPosition Q field_10861 + f Ljava/util/UUID; entityUUID R field_10878 + f Ljava/util/function/BiFunction; suggestions S field_10848 + f Z hasNameEquals T field_10854 + f Z hasNameNotEquals U field_10874 + f Z isLimited V field_10851 + f Z isSorted W field_10873 + f Z hasGamemodeEquals X field_10849 + f Z hasGamemodeNotEquals Y field_10871 + f Z hasTeamEquals Z field_10845 + f C SYNTAX_SELECTOR_START a field_33069 + f Z hasTeamNotEquals aa field_10868 + f Lnet/minecraft/world/entity/EntityType; type ab field_10863 + f Z typeInverse ac field_10865 + f Z hasScores ad field_10841 + f Z hasAdvancements ae field_10864 + f Z usesSelectors af field_10840 + f C SYNTAX_OPTIONS_KEY_VALUE_SEPARATOR b field_33070 + f C SYNTAX_NOT c field_33071 + f C SYNTAX_TAG d field_33072 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_NAME_OR_UUID e field_10875 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_SELECTOR_TYPE f field_10853 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELECTORS_NOT_ALLOWED g field_10880 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MISSING_SELECTOR_TYPE h field_10844 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_END_OF_OPTIONS i field_10837 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_OPTION_VALUE j field_10855 + f Ljava/util/function/BiConsumer; ORDER_NEAREST k field_10869 + f Ljava/util/function/BiConsumer; ORDER_FURTHEST l field_10882 + f Ljava/util/function/BiConsumer; ORDER_RANDOM m field_10850 + f Ljava/util/function/BiFunction; SUGGEST_NOTHING n field_10867 + f C SYNTAX_OPTIONS_START o field_33073 + f C SYNTAX_OPTIONS_END p field_33074 + f C SYNTAX_OPTIONS_SEPARATOR q field_33075 + f C SELECTOR_NEAREST_PLAYER r field_33076 + f C SELECTOR_ALL_PLAYERS s field_33077 + f C SELECTOR_RANDOM_PLAYERS t field_33078 + f C SELECTOR_CURRENT_ENTITY u field_33079 + f C SELECTOR_ALL_ENTITIES v field_33080 + f C SELECTOR_NEAREST_ENTITY w field_52174 + f Lcom/mojang/brigadier/StringReader; reader x field_10860 + f Z allowSelectors y field_10846 + f I maxResults z field_10858 + m ()Z hasGamemodeNotEquals A method_9837 + m ()Z hasTeamEquals B method_9904 + m ()Z hasTeamNotEquals C method_35816 + m ()V setTypeLimitedInversely D method_9860 + m ()Z isTypeLimited E method_9886 + m ()Z isTypeLimitedInversely F method_9910 + m ()Z hasScores G method_9843 + m ()Z hasAdvancements H method_9861 + m ()V finalizePredicates I method_9878 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector a method_9871 + m (D)V setX a method_9850 + p 1 x + m (DDD)Lnet/minecraft/world/phys/AABB; createAabb a method_9894 + p 1 sizeX + p 3 sizeY + p 5 sizeZ + m (I)V setMaxResults a method_9900 + p 1 maxResults + m (Lnet/minecraft/world/entity/Entity;)Z method_9856 a method_9856 + m (Lnet/minecraft/world/entity/EntityType;)V limitToType a method_9842 + p 1 type + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V fillSelectorSuggestions a method_9896 + p 0 builder + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; fillSuggestions a method_9908 + p 1 builder + p 2 consumer + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles;)V setDistance a method_9870 + p 1 distance + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)V setLevel a method_9846 + p 1 level + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;)V setRotX a method_9898 + p 1 rotX + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;Ljava/util/function/ToDoubleFunction;)Ljava/util/function/Predicate; createRotationPredicate a method_9859 + p 1 angleBounds + p 2 angleFunction + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_9872 a method_9872 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_9862 a method_9862 + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9867 a method_9867 + m (Ljava/lang/Object;)Z allowSelectors a method_61185 + m (Ljava/util/function/BiConsumer;)V setOrder a method_9845 + p 1 order + m (Ljava/util/function/BiFunction;)V setSuggestions a method_9875 + p 1 suggestionHandler + m (Ljava/util/function/Predicate;)V addPredicate a method_9916 + p 1 predicate + m (Ljava/util/function/ToDoubleFunction;DDLnet/minecraft/world/entity/Entity;)Z method_9881 a method_9881 + m (Z)V setIncludesEntities a method_9841 + p 1 includesEntities + m ()V parseSelector b method_9917 + m (D)V setY b method_9864 + p 1 y + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestNameOrSelector b method_9880 + p 1 builder + p 2 consumer + m (Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds;)V setRotY b method_9855 + p 1 rotY + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_9869 b method_9869 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_9897 b method_9897 + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9901 b method_9901 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9903 b method_9903 + m (Z)V setHasNameEquals b method_9899 + p 1 hasNameEquals + m ()V parseNameOrUUID c method_9849 + m (D)V setZ c method_9879 + p 1 z + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestName c method_9858 + p 1 builder + p 2 consumer + m (Lnet/minecraft/world/phys/Vec3;Ljava/util/List;)V method_9888 c method_9888 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9863 c method_9863 + m (Z)V setHasNameNotEquals c method_9913 + p 1 hasNameNotEquals + m ()V parseOptions d method_9874 + m (D)V setDeltaX d method_9891 + p 1 deltaX + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestSelector d method_9834 + p 1 builder + p 2 consumer + m (Z)V setLimited d method_9877 + p 1 isLimited + m ()Z shouldInvertValue e method_9892 + m (D)V setDeltaY e method_9905 + p 1 deltaY + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOpenOptions e method_9893 + p 1 builder + p 2 consumer + m (Z)V setSorted e method_9887 + p 1 isSorted + m ()Z isTag f method_9915 + m (D)V setDeltaZ f method_9918 + p 1 deltaZ + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsKeyOrClose f method_9911 + p 1 builder + p 2 consumer + m (Z)V setHasGamemodeEquals f method_9890 + p 1 hasGamemodeEquals + m ()Lcom/mojang/brigadier/StringReader; getReader g method_9835 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsKey g method_9909 + p 1 builder + p 2 consumer + m (Z)V setHasGamemodeNotEquals g method_9857 + p 1 hasGamemodeNotEquals + m ()V setWorldLimited h method_9852 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestOptionsNextOrClose h method_9847 + p 1 builder + p 2 consumer + m (Z)V setHasTeamEquals h method_9865 + p 1 hasTeamEquals + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Doubles; getDistance i method_9873 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; suggestEquals i method_35817 + p 1 builder + p 2 consumer + m (Z)V setHasTeamNotEquals i method_9833 + p 1 hasTeamNotEquals + m ()Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints; getLevel j method_9895 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9854 j method_9854 + m (Z)V setHasScores j method_9848 + p 1 hasScores + m ()Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; getRotX k method_9883 + m (Z)V setHasAdvancements k method_9906 + p 1 hasAdvancements + m ()Lnet/minecraft/advancements/critereon/WrappedMinMaxBounds; getRotY l method_9853 + m ()Ljava/lang/Double; getX m method_9902 + m ()Ljava/lang/Double; getY n method_9884 + m ()Ljava/lang/Double; getZ o method_9868 + m ()Ljava/lang/Double; getDeltaX p method_9851 + m ()Ljava/lang/Double; getDeltaY q method_9840 + m ()Ljava/lang/Double; getDeltaZ r method_9907 + m ()Ljava/util/function/BiConsumer; getOrder s method_35818 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; parse t method_9882 + m ()Z isCurrentEntity u method_9885 + m ()Z hasNameEquals v method_9912 + m ()Z hasNameNotEquals w method_9844 + m ()Z isLimited x method_9866 + m ()Z isSorted y method_9889 + m ()Z hasGamemodeEquals z method_9839 + m (Lcom/mojang/brigadier/StringReader;Z)V + p 1 reader + p 2 allowSelectors + m ()V + m (Lcom/mojang/brigadier/StringReader;)V + p 1 reader +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions hk net/minecraft/class_2306 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_OPTION a field_10885 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INAPPLICABLE_OPTION b field_10887 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_NEGATIVE c field_10890 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_LEVEL_NEGATIVE d field_10893 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_LIMIT_TOO_SMALL e field_10886 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SORT_UNKNOWN f field_10888 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GAME_MODE_INVALID g field_10889 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ENTITY_TYPE_INVALID h field_10892 + f Ljava/util/Map; OPTIONS i field_10891 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9928 A method_9928 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9963 B method_9963 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9947 C method_9947 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9962 D method_9962 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9925 E method_9925 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9977 F method_9977 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9944 G method_9944 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9978 H method_9978 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9942 I method_9942 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9979 J method_9979 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9945 K method_9945 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9980 L method_9980 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9934 M method_9934 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9981 N method_9981 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9943 O method_9943 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9982 P method_9982 + m ()V bootStrap a method_9960 + m (Lnet/minecraft/resources/ResourceKey;ZLnet/minecraft/world/entity/Entity;)Z method_22823 a method_22823 + m (Lnet/minecraft/tags/TagKey;ZLnet/minecraft/world/entity/Entity;)Z method_9950 a method_9950 + m (Lnet/minecraft/world/entity/EntityType;ZLnet/minecraft/world/entity/Entity;)Z method_9919 a method_9919 + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9967 a method_9967 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_22822 a method_22822 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;ILnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_17961 a method_17961 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)V suggestNames a method_9930 + p 0 parser + p 1 builder + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9921 a method_9921 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Ljava/lang/String;I)Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; get a method_9976 + p 0 parser + p 1 id + p 2 cursor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9964 a method_9964 + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier;Ljava/util/function/Predicate;Lnet/minecraft/network/chat/Component;)V register a method_9961 + p 0 id + p 1 handler + p 2 predicate + p 3 tooltip + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9965 a method_9965 + m (Ljava/util/Map;Lnet/minecraft/advancements/AdvancementProgress;)Z method_9929 a method_9929 + m (Ljava/util/Map;Lnet/minecraft/world/entity/Entity;)Z method_9958 a method_9958 + m (Lnet/minecraft/nbt/CompoundTag;ZLnet/minecraft/world/entity/Entity;)Z method_9957 a method_9957 + m (ZLnet/minecraft/advancements/AdvancementProgress;)Z method_9936 a method_9936 + m (ZLnet/minecraft/advancements/CriterionProgress;)Z method_9931 a method_9931 + m (ZLnet/minecraft/world/level/GameType;Lnet/minecraft/world/entity/Entity;)Z method_9924 a method_9924 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_22824 b method_22824 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Ljava/util/function/Consumer;)Ljava/util/concurrent/CompletableFuture; method_9946 b method_9946 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9932 b method_9932 + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9922 b method_9922 + m (Ljava/util/Map;Lnet/minecraft/world/entity/Entity;)Z method_9937 b method_9937 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9926 c method_9926 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9956 c method_9956 + m (Ljava/lang/String;ZLnet/minecraft/world/entity/Entity;)Z method_9920 c method_9920 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9974 d method_9974 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9923 d method_9923 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9927 e method_9927 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_9959 e method_9959 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9975 f method_9975 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9941 g method_9941 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9966 h method_9966 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9938 i method_9938 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9968 j method_9968 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9939 k method_9939 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9973 l method_9973 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9940 m method_9940 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9951 n method_9951 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9952 o method_9952 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9948 p method_9948 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9949 q method_9949 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9953 r method_9953 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9954 s method_9954 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9969 t method_9969 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9955 u method_9955 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9970 v method_9970 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9935 w method_9935 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9971 x method_9971 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)Z method_9933 y method_9933 + m (Lnet/minecraft/commands/arguments/selector/EntitySelectorParser;)V method_9972 z method_9972 + m ()V + m ()V +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier hk$a net/minecraft/class_2306$class_2307 +c net/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Option hk$b net/minecraft/class_2306$class_2308 + f Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; modifier a comp_1063 + f Ljava/util/function/Predicate; canUse b comp_1064 + f Lnet/minecraft/network/chat/Component; description c comp_1065 + m ()Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier; modifier a comp_1063 + m ()Ljava/util/function/Predicate; canUse b comp_1064 + m ()Lnet/minecraft/network/chat/Component; description c comp_1065 + m (Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier;Ljava/util/function/Predicate;Lnet/minecraft/network/chat/Component;)V + p 1 modifier + p 2 canUse + p 3 description +c net/minecraft/commands/arguments/selector/options/package-info hl net/minecraft/class_6279 +c net/minecraft/commands/arguments/selector/package-info hm net/minecraft/class_6280 +c net/minecraft/commands/execution/ChainModifiers hn net/minecraft/class_8936 + f Lnet/minecraft/commands/execution/ChainModifiers; DEFAULT a field_47160 + f B flags b comp_2020 + f B FLAG_FORKED c field_47161 + f B FLAG_IS_RETURN d field_47162 + m ()Z isForked a method_54884 + m (B)Lnet/minecraft/commands/execution/ChainModifiers; setFlag a method_54885 + p 1 flag + m ()Lnet/minecraft/commands/execution/ChainModifiers; setForked b method_54886 + m ()Z isReturn c method_54887 + m ()Lnet/minecraft/commands/execution/ChainModifiers; setReturn d method_54888 + m ()B flags e comp_2020 + m (B)V + m ()V +c net/minecraft/commands/execution/CommandQueueEntry ho net/minecraft/class_8847 + f Lnet/minecraft/commands/execution/Frame; frame a comp_2021 + f Lnet/minecraft/commands/execution/EntryAction; action b comp_1993 + m ()Lnet/minecraft/commands/execution/Frame; frame a comp_2021 + m (Lnet/minecraft/commands/execution/ExecutionContext;)V execute a method_54388 + p 1 context + m ()Lnet/minecraft/commands/execution/EntryAction; action b comp_1993 + m (Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/EntryAction;)V +c net/minecraft/commands/execution/CustomCommandExecutor hp net/minecraft/class_8848 + m (Ljava/lang/Object;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54290 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl +c net/minecraft/commands/execution/CustomCommandExecutor$CommandAdapter hp$a net/minecraft/class_8848$class_8849 +c net/minecraft/commands/execution/CustomCommandExecutor$WithErrorHandling hp$b net/minecraft/class_8848$class_8850 + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/TraceCallbacks;)V onError a method_54255 + p 1 error + p 2 source + p 3 chainModifiers + p 4 traceCallbacks + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54389 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded b method_54259 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m ()V +c net/minecraft/commands/execution/CustomModifierExecutor hq net/minecraft/class_8851 + m (Ljava/lang/Object;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54270 + p 1 originalSource + p 2 soruces + p 3 contextChain + p 4 chainModifiers + p 5 executionControl +c net/minecraft/commands/execution/CustomModifierExecutor$ModifierAdapter hq$a net/minecraft/class_8851$class_8852 +c net/minecraft/commands/execution/EntryAction hr net/minecraft/class_8853 +c net/minecraft/commands/execution/ExecutionContext hs net/minecraft/class_8854 + f I MAX_QUEUE_DEPTH a field_46729 + f Lorg/slf4j/Logger; LOGGER b field_46730 + f I commandLimit c field_46731 + f I forkLimit d field_46732 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler e field_46733 + f Lnet/minecraft/commands/execution/TraceCallbacks; tracer f field_46734 + f I commandQuota g field_46735 + f Z queueOverflow h field_46736 + f Ljava/util/Deque; commandQueue i field_46737 + f Ljava/util/List; newTopCommands j field_46738 + f I currentFrameDepth k field_47705 + m ()V runCommandQueue a method_54390 + m (I)V discardAtDepthOrHigher a method_54391 + p 1 depth + m (Lnet/minecraft/commands/execution/CommandQueueEntry;)V queueNext a method_54392 + p 1 entry + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/execution/Frame; createTopFrame a method_54889 + p 0 executionContext + p 1 returnValueConsumer + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/CommandResultCallback;)V queueInitialFunctionCall a method_54395 + p 0 executionContext + p 1 function + p 2 source + p 3 returnValueConsumer + m (Lnet/minecraft/commands/execution/ExecutionContext;Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/CommandResultCallback;)V queueInitialCommandExecution a method_54393 + p 0 executionContext + p 1 commandInput + p 2 command + p 3 source + p 4 returnValueConsumer + m (Lnet/minecraft/commands/execution/TraceCallbacks;)V tracer a method_54394 + p 1 tracer + m ()Lnet/minecraft/commands/execution/TraceCallbacks; tracer b method_54396 + m (I)Lnet/minecraft/commands/execution/Frame$FrameControl; frameControlForDepth b method_54890 + p 1 depth + m ()Lnet/minecraft/util/profiling/ProfilerFiller; profiler c method_54397 + m (I)V method_54891 c method_54891 + m ()I forkLimit d method_54398 + m ()V incrementCost e method_54399 + m ()V handleQueueOverflow f method_54400 + m ()V pushNewCommands g method_55594 + m (IILnet/minecraft/util/profiling/ProfilerFiller;)V + p 1 commandLimit + p 2 forkLimit + p 3 profiler + m ()V +c net/minecraft/commands/execution/ExecutionControl ht net/minecraft/class_8855 + m ()Lnet/minecraft/commands/execution/TraceCallbacks; tracer a method_54404 + m (Lnet/minecraft/commands/execution/EntryAction;)V queueNext a method_54402 + p 1 entry + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)Lnet/minecraft/commands/execution/ExecutionControl; create a method_54892 + p 0 executionContext + p 1 frame + m (Lnet/minecraft/commands/execution/TraceCallbacks;)V tracer a method_54403 + p 1 tracer + m ()Lnet/minecraft/commands/execution/Frame; currentFrame b method_54893 +c net/minecraft/commands/execution/ExecutionControl$1 ht$1 net/minecraft/class_8855$1 + f Lnet/minecraft/commands/execution/ExecutionContext; val$context a field_46742 + f Lnet/minecraft/commands/execution/Frame; val$frame b field_47163 + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V +c net/minecraft/commands/execution/Frame hu net/minecraft/class_8937 + f I depth a comp_2022 + f Lnet/minecraft/commands/CommandResultCallback; returnValueConsumer b comp_2023 + f Lnet/minecraft/commands/execution/Frame$FrameControl; frameControl c comp_2024 + m ()V returnFailure a method_54894 + m (I)V returnSuccess a method_54895 + p 1 result + m ()V discard b method_54896 + m ()I depth c comp_2022 + m ()Lnet/minecraft/commands/CommandResultCallback; returnValueConsumer d comp_2023 + m ()Lnet/minecraft/commands/execution/Frame$FrameControl; frameControl e comp_2024 + m (ILnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/execution/Frame$FrameControl;)V +c net/minecraft/commands/execution/Frame$FrameControl hu$a net/minecraft/class_8937$class_8938 +c net/minecraft/commands/execution/TraceCallbacks hv net/minecraft/class_6346 + m (ILnet/minecraft/resources/ResourceLocation;I)V onCall a method_36351 + p 1 depth + p 2 function + p 3 commands + m (ILjava/lang/String;)V onCommand a method_36349 + p 1 depth + p 2 command + m (ILjava/lang/String;I)V onReturn a method_36350 + p 1 depth + p 2 command + p 3 returnValue + m (Ljava/lang/String;)V onError a method_36352 + p 1 errorMessage +c net/minecraft/commands/execution/UnboundEntryAction hw net/minecraft/class_8856 + m (Ljava/lang/Object;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54405 a method_54405 +c net/minecraft/commands/execution/package-info hx net/minecraft/class_8857 +c net/minecraft/commands/execution/tasks/BuildContexts hy net/minecraft/class_8858 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_FORK_LIMIT_REACHED a field_46739 + f Ljava/lang/String; commandInput b field_46740 + f Lcom/mojang/brigadier/context/ContextChain; command c field_46741 + m ()Ljava/lang/String; method_54406 a method_54406 + m (Lcom/mojang/brigadier/context/CommandContext;ZI)V method_54897 a method_54897 + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/ChainModifiers;)V execute a method_54410 + p 1 originalSource + p 2 sources + p 3 context + p 4 frame + p 5 chainModifiers + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V traceCommandStart a method_54407 + p 1 executionContext + p 2 frame + m (Lnet/minecraft/commands/execution/tasks/ExecuteCommand;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/ExecutionCommandSource;)Lnet/minecraft/commands/execution/CommandQueueEntry; method_54408 a method_54408 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54409 a method_54409 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;)V + p 1 commandInput + p 2 command + m ()V +c net/minecraft/commands/execution/tasks/BuildContexts$Continuation hy$a net/minecraft/class_8858$class_8859 + f Lnet/minecraft/commands/execution/ChainModifiers; modifiers b field_47164 + f Lnet/minecraft/commands/ExecutionCommandSource; originalSource c field_47165 + f Ljava/util/List; sources d field_46745 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;)V + p 1 commandInput + p 2 command + p 3 modifiers + p 4 originalSource + p 5 sources +c net/minecraft/commands/execution/tasks/BuildContexts$TopLevel hy$b net/minecraft/class_8858$class_8860 + f Lnet/minecraft/commands/ExecutionCommandSource; source b field_46746 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/ExecutionCommandSource;)V + p 1 commandInput + p 2 command + p 3 source +c net/minecraft/commands/execution/tasks/BuildContexts$Unbound hy$c net/minecraft/class_8858$class_8861 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54412 + m (Ljava/lang/String;Lcom/mojang/brigadier/context/ContextChain;)V +c net/minecraft/commands/execution/tasks/CallFunction hz net/minecraft/class_8862 + f Lnet/minecraft/commands/functions/InstantiatedFunction; function a field_46747 + f Lnet/minecraft/commands/CommandResultCallback; resultCallback b field_47166 + f Z returnParentFrame c field_47167 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54851 + p 1 source + p 2 executionContext + p 3 frame + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/Frame;Lnet/minecraft/commands/execution/UnboundEntryAction;)Lnet/minecraft/commands/execution/CommandQueueEntry; method_54898 a method_54898 + m (Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandResultCallback;Z)V + p 1 function + p 2 resultCallback + p 3 returnParentFrame +c net/minecraft/commands/execution/tasks/ContinuationTask ia net/minecraft/class_8863 + f Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider; taskFactory a field_46748 + f Ljava/util/List; arguments b field_46749 + f Lnet/minecraft/commands/execution/CommandQueueEntry; selfEntry c field_46750 + f I index d field_46751 + m (Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;Ljava/util/List;Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider;)V schedule a method_54414 + p 0 executionContext + p 1 frame + p 2 arguments + p 3 taskProvider + m (Lnet/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider;Ljava/util/List;Lnet/minecraft/commands/execution/Frame;)V + p 1 taskFactory + p 2 arguments + p 3 frame +c net/minecraft/commands/execution/tasks/ContinuationTask$TaskProvider ia$a net/minecraft/class_8863$class_8864 +c net/minecraft/commands/execution/tasks/ExecuteCommand ib net/minecraft/class_8865 + f Ljava/lang/String; commandInput a field_46752 + f Lnet/minecraft/commands/execution/ChainModifiers; modifiers b field_47168 + f Lcom/mojang/brigadier/context/CommandContext; executionContext c field_46754 + m ()Ljava/lang/String; method_54415 a method_54415 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54416 + p 1 source + p 2 executionContext + p 3 frame + m (Ljava/lang/String;Lnet/minecraft/commands/execution/ChainModifiers;Lcom/mojang/brigadier/context/CommandContext;)V + p 1 commandInput + p 2 modifiers + p 3 executionContext +c net/minecraft/commands/execution/tasks/FallthroughTask ic net/minecraft/class_8939 + f Lnet/minecraft/commands/execution/tasks/FallthroughTask; INSTANCE a field_47169 + m ()Lnet/minecraft/commands/execution/EntryAction; instance a method_54899 + m ()V + m ()V +c net/minecraft/commands/execution/tasks/IsolatedCall id net/minecraft/class_8940 + f Ljava/util/function/Consumer; taskProducer a field_47170 + f Lnet/minecraft/commands/CommandResultCallback; output b field_47171 + m (Ljava/util/function/Consumer;Lnet/minecraft/commands/CommandResultCallback;)V + p 1 taskProducer + p 2 output +c net/minecraft/commands/execution/tasks/package-info ie net/minecraft/class_8866 +c net/minecraft/commands/functions/CommandFunction ig net/minecraft/class_2158 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;)Lnet/minecraft/commands/functions/CommandFunction; fromLines a method_9195 + p 0 id + p 1 dispatcher + p 2 source + p 3 lines + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/commands/execution/UnboundEntryAction; parseCommand a method_54417 + p 0 dispatcher + p 1 source + p 2 command + m (Ljava/lang/CharSequence;)V checkCommandLineLength a method_57057 + p 0 command + m (Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/commands/functions/InstantiatedFunction; instantiate a method_52595 + p 1 arguments + p 2 dispatcher + m (Ljava/lang/CharSequence;)Z shouldConcatenateNextLine b method_52592 + p 0 line +c net/minecraft/commands/functions/FunctionBuilder ih net/minecraft/class_8867 + f Ljava/util/List; plainEntries a field_46755 + f Ljava/util/List; macroEntries b field_46756 + f Ljava/util/List; macroArguments c field_46757 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/functions/CommandFunction; build a method_54418 + p 1 id + m (Lnet/minecraft/commands/execution/UnboundEntryAction;)V addCommand a method_54419 + p 1 command + m (Ljava/lang/String;)I getArgumentIndex a method_54420 + p 1 argument + m (Ljava/lang/String;ILnet/minecraft/commands/ExecutionCommandSource;)V addMacro a method_54421 + p 1 name + p 2 lineNumber + p 3 compilationContext + m (Ljava/util/List;)Lit/unimi/dsi/fastutil/ints/IntList; convertToIndices a method_54422 + p 1 arguments + m ()V +c net/minecraft/commands/functions/InstantiatedFunction ii net/minecraft/class_8868 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + m ()Ljava/util/List; entries b comp_1995 +c net/minecraft/commands/functions/MacroFunction ij net/minecraft/class_8641 + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_46190 + f I MAX_CACHE_ENTRIES b field_45150 + f Ljava/util/List; parameters c field_45149 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap; cache d field_45151 + f Lnet/minecraft/resources/ResourceLocation; id e field_46758 + f Ljava/util/List; entries f field_46759 + m (Ljava/text/DecimalFormat;)V method_54423 a method_54423 + m (Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;Ljava/util/List;)V lookupValues a method_54424 + p 0 arguments + p 1 parameters + p 2 output + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; method_54425 a method_54425 + m (Ljava/util/List;Ljava/util/List;I)V method_54426 a method_54426 + m (Ljava/util/List;Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;)Lnet/minecraft/commands/functions/InstantiatedFunction; substituteAndParse a method_52597 + p 1 argumentNames + p 2 argumentValues + p 3 dispatcher + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; stringify a method_53840 + p 0 tag + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/List;)V + p 1 id + p 2 entries + p 3 parameters + m ()V +c net/minecraft/commands/functions/MacroFunction$Entry ij$a net/minecraft/class_8641$class_8869 + m ()Lit/unimi/dsi/fastutil/ints/IntList; parameters a method_54428 + m (Ljava/util/List;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/commands/execution/UnboundEntryAction; instantiate a method_54429 + p 1 arguments + p 2 dispatcher + p 3 function +c net/minecraft/commands/functions/MacroFunction$MacroEntry ij$b net/minecraft/class_8641$class_8870 + f Lnet/minecraft/commands/functions/StringTemplate; template a field_46760 + f Lit/unimi/dsi/fastutil/ints/IntList; parameters b field_46761 + f Lnet/minecraft/commands/ExecutionCommandSource; compilationContext c field_47891 + m (Lnet/minecraft/commands/functions/StringTemplate;Lit/unimi/dsi/fastutil/ints/IntList;Lnet/minecraft/commands/ExecutionCommandSource;)V + p 1 template + p 2 parameters + p 3 compilationContext +c net/minecraft/commands/functions/MacroFunction$PlainTextEntry ij$c net/minecraft/class_8641$class_8871 + f Lnet/minecraft/commands/execution/UnboundEntryAction; compiledAction a field_46762 + m (Lnet/minecraft/commands/execution/UnboundEntryAction;)V + p 1 compiledAction +c net/minecraft/commands/functions/PlainTextFunction ik net/minecraft/class_8872 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1994 + f Ljava/util/List; entries b comp_1995 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V +c net/minecraft/commands/functions/StringTemplate il net/minecraft/class_8873 + f Ljava/util/List; segments a comp_1996 + f Ljava/util/List; variables b comp_1997 + m ()Ljava/util/List; segments a comp_1996 + m (Ljava/lang/String;)Z isValidVariableName a method_54431 + p 0 variableName + m (Ljava/lang/String;I)Lnet/minecraft/commands/functions/StringTemplate; fromString a method_54432 + p 0 name + p 1 lineNumber + m (Ljava/util/List;)Ljava/lang/String; substitute a method_54433 + p 1 arguments + m ()Ljava/util/List; variables b comp_1997 + m (Ljava/util/List;Ljava/util/List;)V +c net/minecraft/commands/functions/package-info im net/minecraft/class_8874 +c net/minecraft/commands/package-info in net/minecraft/class_6281 +c net/minecraft/commands/synchronization/ArgumentTypeInfo io net/minecraft/class_2314 + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; unpack a method_41726 + p 1 argument + m (Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10006 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10007 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; deserializeFromNetwork b method_10005 + p 1 buffer +c net/minecraft/commands/synchronization/ArgumentTypeInfo$Template io$a net/minecraft/class_2314$class_7217 + m ()Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; type a method_41728 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/ArgumentType; instantiate b method_41730 + p 1 context +c net/minecraft/commands/synchronization/ArgumentTypeInfos ip net/minecraft/class_2316 + f Ljava/util/Map; BY_CLASS a field_10921 + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; byClass a method_41983 + p 0 argument + m (Ljava/lang/Class;)Z isClassRecognized a method_41984 + p 0 clazz + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; bootstrap a method_10015 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Ljava/lang/Class;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo; register a method_10017 + p 0 registry + p 1 id + p 2 argumentClass + p 3 info + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; unpack b method_41985 + p 0 argument + m (Ljava/lang/Class;)Ljava/lang/Class; fixClassType b method_41181 + p 0 type + m ()V + m ()V +c net/minecraft/commands/synchronization/ArgumentUtils iq net/minecraft/class_7218 + f Lorg/slf4j/Logger; LOGGER a field_37975 + f B NUMBER_FLAG_MIN b field_37976 + f B NUMBER_FLAG_MAX c field_37977 + m (B)Z numberHasMin a method_41986 + p 0 number + m (Lcom/google/gson/JsonObject;Lcom/mojang/brigadier/arguments/ArgumentType;)V serializeArgumentToJson a method_41987 + p 0 json + p 1 type + m (Lcom/google/gson/JsonObject;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_41988 + p 0 json + p 1 template + m (Lcom/google/gson/JsonObject;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_41989 + p 0 json + p 1 argumentTypeInfo + p 2 template + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/tree/CommandNode;)Lcom/google/gson/JsonObject; serializeNodeToJson a method_41990 + p 0 dispatcher + p 1 node + m (Lcom/mojang/brigadier/tree/CommandNode;)Ljava/util/Set; findUsedArgumentTypes a method_41991 + p 0 node + m (Lcom/mojang/brigadier/tree/CommandNode;Ljava/util/Set;Ljava/util/Set;)V findUsedArgumentTypes a method_41992 + p 0 node + p 1 types + p 2 nodes + m (Ljava/util/Set;Ljava/util/Set;Lcom/mojang/brigadier/tree/CommandNode;)V method_41993 a method_41993 + m (ZZ)I createNumberFlags a method_41994 + p 0 min + p 1 max + m (B)Z numberHasMax b method_41995 + p 0 number + m ()V + m ()V +c net/minecraft/commands/synchronization/SingletonArgumentInfo ir net/minecraft/class_2319 + f Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; template a field_37978 + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_41996 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_41997 + p 1 template + p 2 buffer + m (Ljava/util/function/Function;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; contextAware a method_41998 + p 0 argumentType + m (Ljava/util/function/Supplier;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; contextFree a method_41999 + p 0 argumentTypeSupplier + m (Ljava/util/function/Supplier;Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/ArgumentType; method_42000 a method_42000 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; deserializeFromNetwork a method_42001 + p 1 buffer + m (Lcom/mojang/brigadier/arguments/ArgumentType;)Lnet/minecraft/commands/synchronization/SingletonArgumentInfo$Template; unpack b method_42002 + p 1 argument + m (Ljava/util/function/Function;)V + p 1 constructor +c net/minecraft/commands/synchronization/SingletonArgumentInfo$Template ir$a net/minecraft/class_2319$class_7219 + f Lnet/minecraft/commands/synchronization/SingletonArgumentInfo; field_37979 a field_37979 + f Ljava/util/function/Function; constructor b field_37980 + m (Lnet/minecraft/commands/synchronization/SingletonArgumentInfo;Ljava/util/function/Function;)V + p 2 constructor +c net/minecraft/commands/synchronization/SuggestionProviders is net/minecraft/class_2321 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; ASK_SERVER a field_10933 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; ALL_RECIPES b field_10932 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; AVAILABLE_SOUNDS c field_10934 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUMMONABLE_ENTITIES d field_10935 + f Ljava/util/Map; PROVIDERS_BY_NAME e field_10931 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_NAME f field_10930 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; getProvider a method_10024 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; register a method_10022 + p 0 name + p 1 provider + m (Lnet/minecraft/world/entity/EntityType;)Lcom/mojang/brigadier/Message; method_10023 a method_10023 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/entity/EntityType;)Z method_45916 a method_45916 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10028 a method_10028 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lnet/minecraft/resources/ResourceLocation; getName a method_10027 + c Gets the ID for the given provider. If the provider is not a wrapped one created via {@link #register}, then it returns {@link #ASK_SERVER_ID} instead, as there is no known ID but ASK_SERVER always works. + p 0 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10025 b method_10025 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lcom/mojang/brigadier/suggestion/SuggestionProvider; safelySwap b method_10026 + c Checks to make sure that the given suggestion provider is a wrapped one that was created via {@link #register}. If not, returns {@link #ASK_SERVER}. Needed because custom providers don't have a known ID to send to the client, but ASK_SERVER always works. + p 0 provider + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10030 c method_10030 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_10029 d method_10029 + m ()V + m ()V +c net/minecraft/commands/synchronization/SuggestionProviders$Wrapper is$a net/minecraft/class_2321$class_2322 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; delegate a field_10937 + f Lnet/minecraft/resources/ResourceLocation; name b field_10936 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/brigadier/suggestion/SuggestionProvider;)V + p 1 name + p 2 delegate +c net/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo it net/minecraft/class_2326 + m (Lcom/mojang/brigadier/arguments/DoubleArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template; unpack a method_42003 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10043 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10041 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template; deserializeFromNetwork a method_10042 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo$Template it$a net/minecraft/class_2326$class_7220 + f Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo; field_37981 a field_37981 + f D min b field_37982 + f D max c field_37983 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/DoubleArgumentType; instantiate a method_42004 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/DoubleArgumentInfo;DD)V + p 2 min + p 4 max +c net/minecraft/commands/synchronization/brigadier/FloatArgumentInfo iu net/minecraft/class_2327 + m (Lcom/mojang/brigadier/arguments/FloatArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template; unpack a method_42005 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10046 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10044 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template; deserializeFromNetwork a method_10045 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/FloatArgumentInfo$Template iu$a net/minecraft/class_2327$class_7221 + f Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo; field_37984 a field_37984 + f F min b field_37985 + f F max c field_37986 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/FloatArgumentType; instantiate a method_42006 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/FloatArgumentInfo;FF)V + p 2 min + p 3 max +c net/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo iv net/minecraft/class_2330 + m (Lcom/mojang/brigadier/arguments/IntegerArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template; unpack a method_42007 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10049 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10048 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template; deserializeFromNetwork a method_10050 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo$Template iv$a net/minecraft/class_2330$class_7222 + f Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo; field_37987 a field_37987 + f I min b field_37988 + f I max c field_37989 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/IntegerArgumentType; instantiate a method_42008 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/IntegerArgumentInfo;II)V + p 2 min + p 3 max +c net/minecraft/commands/synchronization/brigadier/LongArgumentInfo iw net/minecraft/class_4461 + m (Lcom/mojang/brigadier/arguments/LongArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template; unpack a method_42009 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_21689 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_21690 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template; deserializeFromNetwork a method_21691 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/LongArgumentInfo$Template iw$a net/minecraft/class_4461$class_7223 + f Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo; field_37990 a field_37990 + f J min b field_37991 + f J max c field_37992 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/LongArgumentType; instantiate a method_42010 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/LongArgumentInfo;JJ)V + p 2 min + p 4 max +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer ix net/minecraft/class_2332 + m (Lcom/mojang/brigadier/arguments/StringArgumentType;)Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template; unpack a method_42011 + p 1 argument + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template;Lcom/google/gson/JsonObject;)V serializeToJson a method_10051 + p 1 template + p 2 json + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template;Lnet/minecraft/network/FriendlyByteBuf;)V serializeToNetwork a method_10053 + p 1 template + p 2 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template; deserializeFromNetwork a method_10052 + p 1 buffer + m ()V +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$1 ix$1 net/minecraft/class_2332$1 + f [I $SwitchMap$com$mojang$brigadier$arguments$StringArgumentType$StringType a field_10952 + m ()V +c net/minecraft/commands/synchronization/brigadier/StringArgumentSerializer$Template ix$a net/minecraft/class_2332$class_7224 + f Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer; field_37993 a field_37993 + f Lcom/mojang/brigadier/arguments/StringArgumentType$StringType; type b field_37994 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/arguments/StringArgumentType; instantiate a method_42012 + p 1 context + m (Lnet/minecraft/commands/synchronization/brigadier/StringArgumentSerializer;Lcom/mojang/brigadier/arguments/StringArgumentType$StringType;)V + p 2 type +c net/minecraft/commands/synchronization/brigadier/package-info iy net/minecraft/class_6282 +c net/minecraft/commands/synchronization/package-info iz net/minecraft/class_6283 +c net/minecraft/core/AxisCycle ja net/minecraft/class_2335 + f Lnet/minecraft/core/AxisCycle; NONE a field_10962 + f Lnet/minecraft/core/AxisCycle; FORWARD b field_10963 + f Lnet/minecraft/core/AxisCycle; BACKWARD c field_10965 + f [Lnet/minecraft/core/Direction$Axis; AXIS_VALUES d field_10961 + f [Lnet/minecraft/core/AxisCycle; VALUES e field_10960 + f [Lnet/minecraft/core/AxisCycle; $VALUES f field_10964 + m ()Lnet/minecraft/core/AxisCycle; inverse a method_10055 + m (DDDLnet/minecraft/core/Direction$Axis;)D cycle a method_35819 + p 1 x + p 3 y + p 5 z + p 7 axis + m (IIILnet/minecraft/core/Direction$Axis;)I cycle a method_10056 + p 1 x + p 2 y + p 3 z + p 4 axis + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction$Axis; cycle a method_10058 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/AxisCycle; between a method_10057 + p 0 to + p 1 axis2 + m ()[Lnet/minecraft/core/AxisCycle; $values b method_36930 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/AxisCycle$1 ja$1 net/minecraft/class_2335$1 + m (Ljava/lang/String;I)V +c net/minecraft/core/AxisCycle$2 ja$2 net/minecraft/class_2335$2 + m (Ljava/lang/String;I)V +c net/minecraft/core/AxisCycle$3 ja$3 net/minecraft/class_2335$3 + m (Ljava/lang/String;I)V +c net/minecraft/core/BlockBox jb net/minecraft/class_9380 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49907 + f Lnet/minecraft/core/BlockPos; min b comp_2466 + f Lnet/minecraft/core/BlockPos; max c comp_2467 + m ()Z isBlock a method_58235 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; of a method_58236 + p 0 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; of a method_58237 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockBox; extend a method_58238 + p 1 direction + p 2 amount + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockBox; offset a method_58239 + p 1 vector + m ()Lnet/minecraft/world/phys/AABB; aabb b method_58240 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockBox; include b method_58241 + p 1 pos + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockBox; move b method_58242 + p 1 direction + p 2 amount + m ()I sizeX c method_58243 + m (Lnet/minecraft/core/BlockPos;)Z contains c method_58244 + p 1 pos + m ()I sizeY d method_58245 + m ()I sizeZ e method_58246 + m ()Lnet/minecraft/core/BlockPos; min f comp_2466 + m ()Lnet/minecraft/core/BlockPos; max g comp_2467 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V + p 1 min + p 2 max + m ()V +c net/minecraft/core/BlockBox$1 jb$1 net/minecraft/class_9380$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockBox; decode a method_58247 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockBox;)V encode a method_58248 + m ()V +c net/minecraft/core/BlockMath jc net/minecraft/class_4609 + f Ljava/util/Map; VANILLA_UV_TRANSFORM_LOCAL_TO_GLOBAL a field_21021 + f Ljava/util/Map; VANILLA_UV_TRANSFORM_GLOBAL_TO_LOCAL b field_21022 + f Lorg/slf4j/Logger; LOGGER c field_21023 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; blockCenterToCorner a method_23220 + p 0 transformation + m (Lcom/mojang/math/Transformation;Lnet/minecraft/core/Direction;)Lcom/mojang/math/Transformation; getUVLockTransform a method_23221 + p 0 transformation + p 1 direction + m (Ljava/util/EnumMap;)V method_23222 a method_23222 + m (Lcom/mojang/math/Transformation;)Lcom/mojang/math/Transformation; blockCornerToCenter b method_35829 + p 0 transformation + m (Ljava/util/EnumMap;)V method_23223 b method_23223 + m ()V + m ()V +c net/minecraft/core/BlockPos jd net/minecraft/class_2338 + f Lcom/mojang/serialization/Codec; CODEC a field_25064 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48404 + f Lnet/minecraft/core/BlockPos; ZERO c field_10980 + c An immutable BlockPos with zero as all coordinates. + f I PACKED_Y_LENGTH d field_10975 + f Lorg/slf4j/Logger; LOGGER e field_18789 + f I PACKED_X_LENGTH h field_10978 + f I PACKED_Z_LENGTH i field_10977 + f J PACKED_X_MASK j field_10976 + f J PACKED_Y_MASK k field_10974 + f J PACKED_Z_MASK l field_10973 + f I Y_OFFSET m field_33083 + f I Z_OFFSET n field_10983 + f I X_OFFSET o field_10981 + m ()J asLong a method_10063 + m (DDD)Lnet/minecraft/core/BlockPos; containing a method_49637 + p 0 x + p 2 y + p 4 z + m (I)Lnet/minecraft/core/BlockPos; multiply a method_35830 + p 1 scalar + m (III)J asLong a method_10064 + p 0 x + p 1 y + p 2 z + m (IIIIII)Ljava/util/stream/Stream; betweenClosedStream a method_17962 + p 0 minX + p 1 minY + p 2 minZ + p 3 maxX + p 4 maxY + p 5 maxZ + m (IIIIIII)Ljava/util/Iterator; method_25995 a method_25995 + m (IILnet/minecraft/util/RandomSource;IIIII)Ljava/util/Iterator; method_27155 a method_27155 + m (J)I getX a method_10061 + p 0 packedPos + m (JIII)J offset a method_10096 + p 0 pos + p 2 dx + p 3 dy + p 4 dz + m (JLnet/minecraft/core/Direction;)J offset a method_10060 + p 0 pos + p 2 direction + m (Lnet/minecraft/util/RandomSource;IIIIIII)Ljava/lang/Iterable; randomBetweenClosed a method_27156 + p 0 random + p 1 amount + p 2 minX + p 3 minY + p 4 minZ + p 5 maxX + p 6 maxY + p 7 maxZ + m (Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;I)Ljava/lang/Iterable; randomInCube a method_34848 + p 0 random + p 1 amount + p 2 center + p 3 radius + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; rotate a method_10070 + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/util/stream/Stream; betweenClosedStream a method_23627 + p 0 box + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; betweenClosedStream a method_29715 + p 0 aabb + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; clampLocationWithin a method_60913 + p 1 pos + m (Ljava/util/Queue;ILnet/minecraft/core/BlockPos;)V method_49926 a method_49926 + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29094 a method_29094 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; squareOutSouthEast a method_51686 + p 0 pos + m (Lnet/minecraft/core/BlockPos;III)Ljava/lang/Iterable; withinManhattan a method_25996 + p 0 pos + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/BiConsumer;Ljava/util/function/Predicate;)I breadthFirstTraversal a method_49925 + p 0 startPos + p 1 depth + p 2 visitLimit + p 3 action + p 4 predicate + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/Predicate;)Ljava/util/Optional; findClosestMatch a method_25997 + p 0 pos + p 1 width + p 2 height + p 3 posFilter + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Ljava/lang/Iterable; spiralAround a method_30512 + p 0 center + p 1 size + p 2 rotationDirection + p 3 expansionDirection + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; min a method_58249 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/core/BlockPos; relative a method_30513 + p 1 axis + p 2 amount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; relative a method_10093 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockPos; relative a method_10079 + c Offsets this Vector by the given distance in the specified direction. + p 1 direction + p 2 distance + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;I)Ljava/util/Iterator; method_30514 a method_30514 + m (Lnet/minecraft/core/Position;)Lnet/minecraft/core/BlockPos; containing a method_49638 + p 0 position + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; offset a method_10081 + p 1 vector + m ([I)Lnet/minecraft/core/BlockPos; method_29095 a method_29095 + m ()Lnet/minecraft/world/phys/Vec3; getCenter b method_46558 + m (I)Lnet/minecraft/core/BlockPos; above b method_10086 + c Offset this vector upwards by the given distance. + p 1 distance + m (III)Lnet/minecraft/core/BlockPos; offset b method_10069 + p 1 dx + p 2 dy + p 3 dz + m (IIIIII)Ljava/lang/Iterable; betweenClosed b method_10094 + c Creates an Iterable that returns all positions in the box specified by the given corners. Coordinates must be in order. e.g. x1 <= x2.\n\nThis method uses {@link BlockPos.MutableBlockPos MutableBlockPos} instead of regular BlockPos, which grants better performance. However, the resulting BlockPos instances can only be used inside the iteration loop (as otherwise the value will change), unless {@link #toImmutable()} is called. This method is ideal for searching large areas and only storing a few locations.\n\n@see #betweenClosed(BlockPos, BlockPos)\n@see #betweenClosed(int, int, int, int, int, int) + p 0 x1 + p 1 y1 + p 2 z1 + p 3 x2 + p 4 y2 + p 5 z2 + m (J)I getY b method_10071 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/IntStream; method_29093 b method_29093 + m (Lnet/minecraft/core/BlockPos;III)Ljava/util/stream/Stream; withinManhattanStream b method_25998 + c Returns a stream of positions in a box shape, ordered by closest to furthest. Returns by definition the given position as first element in the stream. + p 0 pos + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; max b method_58250 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; subtract b method_10059 + p 1 vector + m ()Lnet/minecraft/world/phys/Vec3; getBottomCenter c method_61082 + m (I)Lnet/minecraft/core/BlockPos; below c method_10087 + c Offset this vector downwards by the given distance. + p 1 distance + m (IIIIII)Ljava/util/Iterator; method_10073 c method_10073 + m (J)I getZ c method_10083 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/lang/Iterable; betweenClosed c method_10097 + p 0 firstPos + p 1 secondPos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos; cross c method_10075 + c Calculate the cross product of this and the given Vector + p 1 vector + m ()Lnet/minecraft/core/BlockPos; above d method_10084 + c Offset this vector 1 unit up + m (I)Lnet/minecraft/core/BlockPos; north d method_10076 + p 1 distance + m (J)Lnet/minecraft/core/BlockPos; of d method_10092 + p 0 packedPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; betweenClosedStream d method_20437 + p 0 firstPos + p 1 secondPos + m ()Lnet/minecraft/core/BlockPos; below e method_10074 + c Offset this vector 1 unit down + m (I)Lnet/minecraft/core/BlockPos; south e method_10077 + p 1 distance + m (J)J getFlatIndex e method_10091 + p 0 packedPos + m ()Lnet/minecraft/core/BlockPos; north f method_10095 + m (I)Lnet/minecraft/core/BlockPos; west f method_10088 + p 1 distance + m ()Lnet/minecraft/core/BlockPos; south g method_10072 + m (I)Lnet/minecraft/core/BlockPos; east g method_10089 + p 1 distance + m ()Lnet/minecraft/core/BlockPos; west h method_10067 + m (I)Lnet/minecraft/core/BlockPos; atY h method_33096 + p 1 y + m ()Lnet/minecraft/core/BlockPos; east i method_10078 + m ()Lnet/minecraft/core/BlockPos; immutable j method_10062 + c Returns a version of this BlockPos that is guaranteed to be immutable.\n\n

When storing a BlockPos given to you for an extended period of time, make sure you\nuse this in case the value is changed internally.

+ m ()Lnet/minecraft/core/BlockPos$MutableBlockPos; mutable k method_25503 + m (III)V + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/Vec3i;)V + p 1 vector + m ()V +c net/minecraft/core/BlockPos$1 jd$1 net/minecraft/class_2338$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockPos; decode a method_56156 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockPos;)V encode a method_56157 + m ()V +c net/minecraft/core/BlockPos$2 jd$2 net/minecraft/class_2338$2 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; nextPos a field_48405 + f I counter b field_48406 + f I val$limit c field_48407 + f I val$minX d field_48408 + f Lnet/minecraft/util/RandomSource; val$random e field_48409 + f I val$width f field_48410 + f I val$minY g field_48411 + f I val$height h field_48412 + f I val$minZ i field_48413 + f I val$depth j field_48414 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_25999 + m (IILnet/minecraft/util/RandomSource;IIIII)V +c net/minecraft/core/BlockPos$3 jd$3 net/minecraft/class_2338$3 + f I val$originZ a field_48415 + f I val$maxDepth b field_48416 + f I val$reachX c field_48417 + f I val$reachY d field_48418 + f I val$reachZ e field_48419 + f I val$originX f field_48420 + f I val$originY g field_48421 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor h field_23380 + f I currentDepth i field_48422 + f I maxX j field_48423 + f I maxY k field_48424 + f I x l field_48425 + f I y m field_48426 + f Z zMirror n field_48427 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_10106 + m (IIIIIII)V +c net/minecraft/core/BlockPos$4 jd$4 net/minecraft/class_2338$4 + f I val$end a field_48428 + f I val$width b field_48429 + f I val$height c field_48430 + f I val$minX d field_48431 + f I val$minY e field_48432 + f I val$minZ f field_48433 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor g field_48434 + f I index h field_48435 + m ()Lnet/minecraft/core/BlockPos; computeNext a method_30515 + m (IIIIII)V +c net/minecraft/core/BlockPos$5 jd$5 net/minecraft/class_2338$5 + f Lnet/minecraft/core/Direction; val$firstDirection a field_48436 + f Lnet/minecraft/core/Direction; val$secondDirection b field_48437 + f Lnet/minecraft/core/BlockPos; val$center c field_48438 + f I val$radius d field_48439 + f [Lnet/minecraft/core/Direction; directions e field_48440 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; cursor f field_48441 + f I legs g field_48442 + f I leg h field_48443 + f I legSize i field_48444 + f I legIndex j field_48445 + f I lastX k field_48446 + f I lastY l field_48447 + f I lastZ m field_48448 + m ()Lnet/minecraft/core/BlockPos$MutableBlockPos; computeNext a method_27157 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;I)V +c net/minecraft/core/BlockPos$6 jd$6 net/minecraft/class_2338$6 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11006 + f [I $SwitchMap$net$minecraft$core$Direction$Axis b field_23955 + m ()V +c net/minecraft/core/BlockPos$MutableBlockPos jd$a net/minecraft/class_2338$class_2339 + m (Lnet/minecraft/core/AxisCycle;III)Lnet/minecraft/core/BlockPos$MutableBlockPos; set a method_17965 + p 1 cycle + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;II)Lnet/minecraft/core/BlockPos$MutableBlockPos; clamp a method_27158 + p 1 axis + p 2 min + p 3 max + m (Lnet/minecraft/core/Vec3i;III)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_25504 + p 1 vector + p 2 offsetX + p 3 offsetY + p 4 offsetZ + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_25505 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; setWithOffset a method_35831 + p 1 pos + p 2 offset + m (DDD)Lnet/minecraft/core/BlockPos$MutableBlockPos; set b method_10102 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos$MutableBlockPos; move c method_10098 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/BlockPos$MutableBlockPos; move c method_10104 + p 1 direction + p 2 n + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; set d method_10103 + p 1 x + p 2 y + p 3 z + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; move e method_10100 + p 1 x + p 2 y + p 3 z + m (J)Lnet/minecraft/core/BlockPos$MutableBlockPos; set f method_16363 + p 1 packedPos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; set g method_10101 + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/BlockPos$MutableBlockPos; move h method_30927 + p 1 offset + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setX p method_33097 + p 1 x + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setY q method_33098 + p 1 y + m (I)Lnet/minecraft/core/BlockPos$MutableBlockPos; setZ r method_33099 + p 1 z + m ()V + m (III)V + p 1 x + p 2 y + p 3 z + m (DDD)V + p 1 x + p 3 y + p 5 z +c net/minecraft/core/Cloner je net/minecraft/class_8990 + f Lcom/mojang/serialization/Codec; directCodec a field_47486 + m (Ljava/lang/Object;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/Object; clone a method_55277 + p 1 object + p 2 lookupProvider1 + p 3 lookupProvider2 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55278 a method_55278 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_55279 b method_55279 + m (Lcom/mojang/serialization/Codec;)V + p 1 directCodec +c net/minecraft/core/Cloner$Factory je$a net/minecraft/class_8990$class_8991 + f Ljava/util/Map; codecs a field_47487 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Cloner; cloner a method_55280 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lnet/minecraft/core/Cloner$Factory; addCodec a method_55281 + p 1 registryKey + p 2 codec + m ()V +c net/minecraft/core/Cursor3D jf net/minecraft/class_3980 + f I TYPE_INSIDE a field_33084 + f I TYPE_FACE b field_33085 + f I TYPE_EDGE c field_33086 + f I TYPE_CORNER d field_33087 + f I originX e field_17683 + f I originY f field_17684 + f I originZ g field_17685 + f I width h field_17686 + f I height i field_17687 + f I depth j field_17688 + f I end k field_23112 + f I index l field_23113 + f I x m field_18233 + f I y n field_18234 + f I z o field_18235 + m ()Z advance a method_17963 + m ()I nextX b method_18671 + m ()I nextY c method_18672 + m ()I nextZ d method_18673 + m ()I getNextType e method_20789 + m (IIIIII)V + p 1 originX + p 2 originY + p 3 originZ + p 4 endX + p 5 endY + p 6 endZ +c net/minecraft/core/DefaultedMappedRegistry jg net/minecraft/class_2348 + f Lnet/minecraft/resources/ResourceLocation; defaultKey b field_11014 + f Lnet/minecraft/core/Holder$Reference; defaultValue c field_11015 + m ()Ljava/util/Optional; method_40219 w method_40219 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Z)V + p 1 defaultKey + p 2 key + p 3 registryLifecycle + p 4 hasIntrusiveHolders +c net/minecraft/core/DefaultedRegistry jh net/minecraft/class_7922 + m ()Lnet/minecraft/resources/ResourceLocation; getDefaultKey b method_10137 +c net/minecraft/core/Direction ji net/minecraft/class_2350 + f Lnet/minecraft/core/Direction; DOWN a field_11033 + f Lnet/minecraft/core/Direction; UP b field_11036 + f Lnet/minecraft/core/Direction; NORTH c field_11043 + f Lnet/minecraft/core/Direction; SOUTH d field_11035 + f Lnet/minecraft/core/Direction; WEST e field_11039 + f Lnet/minecraft/core/Direction; EAST f field_11034 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC g field_29502 + f Lcom/mojang/serialization/Codec; VERTICAL_CODEC h field_35088 + f Ljava/util/function/IntFunction; BY_ID i field_48449 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_48450 + f I data3d k field_11032 + c Ordering index for D-U-N-S-W-E + f I oppositeIndex l field_11031 + c Index of the opposite Direction in the VALUES array + f I data2d m field_11030 + c Ordering index for the HORIZONTALS field (S-W-N-E) + f Ljava/lang/String; name n field_11046 + f Lnet/minecraft/core/Direction$Axis; axis o field_11047 + f Lnet/minecraft/core/Direction$AxisDirection; axisDirection p field_11044 + f Lnet/minecraft/core/Vec3i; normal q field_11042 + c Normalized vector that points in the direction of this Direction + f [Lnet/minecraft/core/Direction; VALUES r field_11040 + f [Lnet/minecraft/core/Direction; BY_3D_DATA s field_11038 + f [Lnet/minecraft/core/Direction; BY_2D_DATA t field_11041 + c All Facings with horizontal axis in order S-W-N-E + f [Lnet/minecraft/core/Direction; $VALUES u field_11037 + m ()Ljava/util/stream/Stream; stream a method_42013 + m (D)Lnet/minecraft/core/Direction; fromYRot a method_10150 + c @return the Direction corresponding to the given angle in degrees (0-360). Out of bounds values are wrapped around. An angle of 0 is SOUTH, an angle of 90 would be WEST. + p 0 angle + m (DDD)Lnet/minecraft/core/Direction; getNearest a method_10142 + p 0 x + p 2 y + p 4 z + m (F)Z isFacingAngle a method_30928 + p 1 degrees + m (FFF)Lnet/minecraft/core/Direction; getNearest a method_10147 + p 0 x + p 1 y + p 2 z + m (I)Lnet/minecraft/core/Direction; from3DDataValue a method_10143 + c @return the {@code Direction} corresponding to the given index (0-5). Out of bounds values are wrapped around. The order is D-U-N-S-W-E.\n@see #get3DDataValue + p 0 index + m (III)Lnet/minecraft/core/Direction; fromDelta a method_50026 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Collection; allShuffled a method_42014 + p 0 random + m (Lnet/minecraft/world/entity/Entity;)[Lnet/minecraft/core/Direction; orderedByNearest a method_10159 + c Gets the {@code Direction} values for the provided entity's\nlooking direction. Dependent on yaw and pitch of entity looking. + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getFacingAxis a method_32801 + p 0 entity + p 1 axis + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/Direction; getNearest a method_58251 + p 0 ois + m (Ljava/lang/String;)Lnet/minecraft/core/Direction; byName a method_10168 + c @return the Direction specified by the given name or null if no such Direction exists + p 0 name + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getClockWise a method_35833 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Direction$AxisDirection;)Lnet/minecraft/core/Direction; fromAxisAndDirection a method_10169 + p 0 axis + p 1 axisDirection + m (Lnet/minecraft/core/Direction$AxisDirection;Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; get a method_10156 + p 0 axisDirection + p 1 axis + m (Lnet/minecraft/core/Direction;)Lcom/mojang/serialization/DataResult; verifyVertical a method_38940 + p 0 direction + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[Lnet/minecraft/core/Direction; makeDirectionArray a method_10145 + p 0 first + p 1 second + p 2 third + m (Lorg/joml/Matrix4f;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_23225 + p 0 matrix + p 1 direction + m ()Lorg/joml/Quaternionf; getRotation b method_23224 + m (I)Lnet/minecraft/core/Direction; from2DDataValue b method_10139 + c @return the Direction corresponding to the given horizontal index (0-3). Out of bounds values are wrapped around. The order is S-W-N-E.\n@see #get2DDataValue + p 0 horizontalIndex + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandom b method_10162 + p 0 random + m (Lnet/minecraft/core/Direction$Axis;)Lnet/minecraft/core/Direction; getCounterClockWise b method_35834 + p 1 axis + m (Lnet/minecraft/core/Direction;)I method_10141 b method_10141 + m (I)[Lnet/minecraft/core/Direction; method_10158 c method_10158 + m (Lnet/minecraft/core/Direction;)Z method_10155 c method_10155 + m ()I get3DDataValue d method_10146 + c @return the index of this Direction (0-5). The order is D-U-N-S-W-E + m (I)[Lnet/minecraft/core/Direction; method_10157 d method_10157 + m (Lnet/minecraft/core/Direction;)I method_10140 d method_10140 + m ()I get2DDataValue e method_10161 + c @return the index of this horizontal facing (0-3). The order is S-W-N-E + m ()Lnet/minecraft/core/Direction$AxisDirection; getAxisDirection f method_10171 + m ()Lnet/minecraft/core/Direction; getOpposite g method_10153 + c @return the opposite Direction (e.g. DOWN => UP) + m ()Lnet/minecraft/core/Direction; getClockWise h method_10170 + c Rotate this Direction around the Y axis clockwise (NORTH => EAST => SOUTH => WEST => NORTH) + m ()Lnet/minecraft/core/Direction; getCounterClockWise i method_10160 + c Rotate this Direction around the Y axis counter-clockwise (NORTH => WEST => SOUTH => EAST => NORTH) + m ()I getStepX j method_10148 + c @return the offset in the x direction + m ()I getStepY k method_10164 + c @return the offset in the y direction + m ()I getStepZ l method_10165 + c @return the offset in the z direction + m ()Lorg/joml/Vector3f; step m method_23955 + m ()Ljava/lang/String; getName n method_10151 + m ()Lnet/minecraft/core/Direction$Axis; getAxis o method_10166 + m ()F toYRot p method_10144 + c @return the angle in degrees corresponding to this Direction.\n@see #fromYRot + m ()Lnet/minecraft/core/Vec3i; getNormal q method_10163 + c @return the normalized Vector that points in the direction of this Direction. + m ()Lnet/minecraft/core/Direction; getClockWiseX r method_35835 + m ()Lnet/minecraft/core/Direction; getCounterClockWiseX s method_35836 + m ()Lnet/minecraft/core/Direction; getClockWiseZ t method_35837 + m ()Lnet/minecraft/core/Direction; getCounterClockWiseZ u method_35838 + m ()Ljava/lang/String; method_49639 v method_49639 + m ()[Lnet/minecraft/core/Direction; $values w method_36931 + m (Ljava/lang/String;IIIILjava/lang/String;Lnet/minecraft/core/Direction$AxisDirection;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/core/Vec3i;)V + p 3 data3d + p 4 oppositeIndex + p 5 data2d + p 6 name + p 7 axisDirection + p 8 axis + p 9 normal + m ()V +c net/minecraft/core/Direction$Axis ji$a net/minecraft/class_2350$class_2351 + f Lnet/minecraft/core/Direction$Axis; X a field_11048 + f Lnet/minecraft/core/Direction$Axis; Y b field_11052 + f Lnet/minecraft/core/Direction$Axis; Z c field_11051 + f [Lnet/minecraft/core/Direction$Axis; VALUES d field_23780 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_25065 + f Ljava/lang/String; name f field_11053 + f [Lnet/minecraft/core/Direction$Axis; $VALUES g field_11049 + m ()Ljava/lang/String; getName a method_10174 + m (DDD)D choose a method_10172 + p 1 x + p 3 y + p 5 z + m (III)I choose a method_10173 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction$Axis; getRandom a method_16699 + p 0 random + m (Ljava/lang/String;)Lnet/minecraft/core/Direction$Axis; byName a method_10177 + c @return the Axis specified by the given name or {@code null} if no such Axis exists + p 0 name + m (Lnet/minecraft/core/Direction;)Z test a method_10176 + p 1 direction + m ()Z isVertical b method_10178 + m ()Z isHorizontal d method_10179 + c @return whether this Axis is on the horizontal plane (true for X and Z) + m ()Lnet/minecraft/core/Direction$Plane; getPlane e method_10180 + c @return this Axis' Plane (VERTICAL for Y, HORIZONTAL for X and Z) + m ()[Lnet/minecraft/core/Direction$Axis; $values f method_36932 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/core/Direction$Axis$1 ji$a$1 net/minecraft/class_2350$class_2351$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$Axis$2 ji$a$2 net/minecraft/class_2350$class_2351$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$Axis$3 ji$a$3 net/minecraft/class_2350$class_2351$3 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/core/Direction$AxisDirection ji$b net/minecraft/class_2350$class_2352 + f Lnet/minecraft/core/Direction$AxisDirection; POSITIVE a field_11056 + f Lnet/minecraft/core/Direction$AxisDirection; NEGATIVE b field_11060 + f I step c field_11059 + f Ljava/lang/String; name d field_11057 + f [Lnet/minecraft/core/Direction$AxisDirection; $VALUES e field_11058 + m ()I getStep a method_10181 + c @return the offset for this AxisDirection. 1 for POSITIVE, -1 for NEGATIVE + m ()Ljava/lang/String; getName b method_35839 + m ()Lnet/minecraft/core/Direction$AxisDirection; opposite c method_26424 + m ()[Lnet/minecraft/core/Direction$AxisDirection; $values d method_36933 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 step + p 4 name + m ()V +c net/minecraft/core/Direction$Plane ji$c net/minecraft/class_2350$class_2353 + f Lnet/minecraft/core/Direction$Plane; HORIZONTAL a field_11062 + f Lnet/minecraft/core/Direction$Plane; VERTICAL b field_11064 + f [Lnet/minecraft/core/Direction; faces c field_11061 + f [Lnet/minecraft/core/Direction$Axis; axis d field_11065 + f [Lnet/minecraft/core/Direction$Plane; $VALUES e field_11063 + m ()Ljava/util/stream/Stream; stream a method_29716 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandomDirection a method_10183 + p 1 random + m (Lnet/minecraft/core/Direction;)Z test a method_10182 + p 1 direction + m ()I length b method_57092 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction$Axis; getRandomAxis b method_33465 + p 1 random + m ()[Lnet/minecraft/core/Direction$Plane; $values c method_36934 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; shuffledCopy c method_43342 + p 1 random + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;[Lnet/minecraft/core/Direction$Axis;)V + p 3 faces + p 4 axis + m ()V +c net/minecraft/core/Direction8 jj net/minecraft/class_2355 + f Lnet/minecraft/core/Direction8; NORTH a field_11069 + f Lnet/minecraft/core/Direction8; NORTH_EAST b field_11074 + f Lnet/minecraft/core/Direction8; EAST c field_11075 + f Lnet/minecraft/core/Direction8; SOUTH_EAST d field_11070 + f Lnet/minecraft/core/Direction8; SOUTH e field_11073 + f Lnet/minecraft/core/Direction8; SOUTH_WEST f field_11068 + f Lnet/minecraft/core/Direction8; WEST g field_11072 + f Lnet/minecraft/core/Direction8; NORTH_WEST h field_11076 + f Ljava/util/Set; directions i field_11078 + f Lnet/minecraft/core/Vec3i; step j field_37995 + f [Lnet/minecraft/core/Direction8; $VALUES k field_11071 + m ()Ljava/util/Set; getDirections a method_10186 + m ()I getStepX b method_42015 + m ()I getStepZ c method_42016 + m ()[Lnet/minecraft/core/Direction8; $values d method_36935 + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;)V + p 3 directions + m ()V +c net/minecraft/core/FrontAndTop jk net/minecraft/class_5000 + f Lnet/minecraft/core/FrontAndTop; DOWN_EAST a field_23381 + f Lnet/minecraft/core/FrontAndTop; DOWN_NORTH b field_23382 + f Lnet/minecraft/core/FrontAndTop; DOWN_SOUTH c field_23383 + f Lnet/minecraft/core/FrontAndTop; DOWN_WEST d field_23384 + f Lnet/minecraft/core/FrontAndTop; UP_EAST e field_23385 + f Lnet/minecraft/core/FrontAndTop; UP_NORTH f field_23386 + f Lnet/minecraft/core/FrontAndTop; UP_SOUTH g field_23387 + f Lnet/minecraft/core/FrontAndTop; UP_WEST h field_23388 + f Lnet/minecraft/core/FrontAndTop; WEST_UP i field_23389 + f Lnet/minecraft/core/FrontAndTop; EAST_UP j field_23390 + f Lnet/minecraft/core/FrontAndTop; NORTH_UP k field_23391 + f Lnet/minecraft/core/FrontAndTop; SOUTH_UP l field_23392 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; LOOKUP_TOP_FRONT m field_23393 + f Ljava/lang/String; name n field_23394 + f Lnet/minecraft/core/Direction; top o field_23395 + f Lnet/minecraft/core/Direction; front p field_23396 + f [Lnet/minecraft/core/FrontAndTop; $VALUES q field_23397 + m ()Lnet/minecraft/core/Direction; front a method_26426 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_35840 a method_35840 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/FrontAndTop; fromFrontAndTop a method_26425 + p 0 front + p 1 top + m ()Lnet/minecraft/core/Direction; top b method_26428 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)I lookupKey b method_26427 + p 0 front + p 1 top + m ()[Lnet/minecraft/core/FrontAndTop; $values d method_36936 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)V + p 3 name + p 4 front + p 5 top + m ()V +c net/minecraft/core/GlobalPos jl net/minecraft/class_4208 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_49583 + f Lcom/mojang/serialization/Codec; CODEC b field_25066 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_48451 + f Lnet/minecraft/resources/ResourceKey; dimension d comp_2207 + f Lnet/minecraft/core/BlockPos; pos e comp_2208 + m ()Lnet/minecraft/resources/ResourceKey; dimension a comp_2207 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/GlobalPos; of a method_19443 + p 0 dimension + p 1 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29096 a method_29096 + m ()Lnet/minecraft/core/BlockPos; pos b comp_2208 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)V + p 1 dimension + p 2 pos + m ()V +c net/minecraft/core/Holder jm net/minecraft/class_6880 + m ()Ljava/lang/Object; value a comp_349 + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_40225 + p 1 resourceKey + m (Lnet/minecraft/resources/ResourceLocation;)Z is a method_40226 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Z is a method_40220 + p 1 tagKey + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder; direct a method_40223 + p 0 value + m (Ljava/util/function/Predicate;)Z is a method_40224 + p 1 predicate + m (Lnet/minecraft/core/Holder;)Z is a method_55838 + p 1 holder + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46745 + p 1 owner + m ()Z isBound b method_40227 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55839 b method_55839 + m ()Ljava/util/stream/Stream; tags c method_40228 + m ()Lcom/mojang/datafixers/util/Either; unwrap d method_40229 + m ()Ljava/util/Optional; unwrapKey e method_40230 + m ()Lnet/minecraft/core/Holder$Kind; kind f method_40231 + m ()Ljava/lang/String; getRegisteredName g method_55840 +c net/minecraft/core/Holder$Direct jm$a net/minecraft/class_6880$class_6881 + f Ljava/lang/Object; value a comp_349 + m (Ljava/lang/Object;)V +c net/minecraft/core/Holder$Kind jm$b net/minecraft/class_6880$class_6882 + f Lnet/minecraft/core/Holder$Kind; REFERENCE a field_36446 + f Lnet/minecraft/core/Holder$Kind; DIRECT b field_36447 + f [Lnet/minecraft/core/Holder$Kind; $VALUES c field_36448 + m ()[Lnet/minecraft/core/Holder$Kind; $values a method_40232 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/Holder$Reference jm$c net/minecraft/class_6880$class_6883 + f Lnet/minecraft/core/HolderOwner; owner a field_40930 + f Ljava/util/Set; tags b field_36450 + f Lnet/minecraft/core/Holder$Reference$Type; type c field_36451 + f Lnet/minecraft/resources/ResourceKey; key d field_36452 + f Ljava/lang/Object; value e field_36453 + m (Ljava/util/Collection;)V bindTags a method_40235 + p 1 tags + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; createStandAlone a method_40234 + p 0 owner + p 1 key + m (Lnet/minecraft/core/HolderOwner;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; createIntrusive a method_40233 + p 0 owner + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)V bindKey b method_45917 + p 1 key + m (Ljava/lang/Object;)V bindValue b method_45918 + p 1 value + m ()Lnet/minecraft/resources/ResourceKey; key h method_40237 + m (Lnet/minecraft/core/Holder$Reference$Type;Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)V + p 1 type + p 2 owner + p 3 key + p 4 value +c net/minecraft/core/Holder$Reference$Type jm$c$a net/minecraft/class_6880$class_6883$class_6884 + f Lnet/minecraft/core/Holder$Reference$Type; STAND_ALONE a field_36454 + f Lnet/minecraft/core/Holder$Reference$Type; INTRUSIVE b field_36455 + f [Lnet/minecraft/core/Holder$Reference$Type; $VALUES c field_36456 + m ()[Lnet/minecraft/core/Holder$Reference$Type; $values a method_40238 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/core/HolderGetter jn net/minecraft/class_7871 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_46746 + p 1 resourceKey + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; get a method_46733 + p 1 tagKey + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrThrow b method_46747 + p 1 resourceKey + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; getOrThrow b method_46735 + p 1 tagKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46748 c method_46748 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/IllegalStateException; method_46749 c method_46749 +c net/minecraft/core/HolderGetter$Provider jn$a net/minecraft/class_7871$class_7872 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46750 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_58561 + p 1 registryKey + p 2 key + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderGetter;)Ljava/util/Optional; method_58562 a method_58562 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderGetter; lookupOrThrow b method_46751 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46752 c method_46752 +c net/minecraft/core/HolderLookup jo net/minecraft/class_7225 + m ()Ljava/util/stream/Stream; listElements b method_42017 + m ()Ljava/util/stream/Stream; listElementIds c method_46754 + m ()Ljava/util/stream/Stream; listTags d method_42020 + m ()Ljava/util/stream/Stream; listTagIds e method_46755 +c net/minecraft/core/HolderLookup$Provider jo$a net/minecraft/class_7225$class_7874 + m ()Ljava/util/stream/Stream; listRegistries a method_55282 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46759 + p 1 registryKey + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/resources/RegistryOps; createSerializationContext a method_57093 + p 1 ops + m (Ljava/util/stream/Stream;)Lnet/minecraft/core/HolderLookup$Provider; create a method_46761 + p 0 lookupStream + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_46760 a method_46760 + m ()Lnet/minecraft/core/HolderGetter$Provider; asGetterLookup b method_46758 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup$RegistryLookup; lookupOrThrow b method_46762 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_46763 e method_46763 +c net/minecraft/core/HolderLookup$Provider$1 jo$a$1 net/minecraft/class_7225$class_7874$1 + f Lnet/minecraft/core/HolderLookup$Provider; field_40934 a field_40934 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderGetter; method_46764 a method_46764 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/core/HolderLookup$Provider$2 jo$a$2 net/minecraft/class_7225$class_7874$2 + f Ljava/util/Map; val$map a field_40935 + m (Ljava/util/Map;)V +c net/minecraft/core/HolderLookup$RegistryLookup jo$b net/minecraft/class_7225$class_7226 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/core/HolderLookup$RegistryLookup; filterFeatures a method_45919 + p 1 enabledFeatures + m (Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/lang/Object;)Z method_45920 a method_45920 + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/HolderLookup$RegistryLookup; filterElements a method_56882 + p 1 predicate + m ()Lnet/minecraft/resources/ResourceKey; key f method_46765 + m ()Lcom/mojang/serialization/Lifecycle; registryLifecycle g method_46766 +c net/minecraft/core/HolderLookup$RegistryLookup$1 jo$b$1 net/minecraft/class_7225$class_7226$1 + f Ljava/util/function/Predicate; val$filter a field_40931 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; field_40932 b field_40932 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/Holder$Reference;)Z method_46756 a method_46756 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/Holder$Reference;)Z method_46757 b method_46757 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Ljava/util/function/Predicate;)V +c net/minecraft/core/HolderLookup$RegistryLookup$Delegate jo$b$a net/minecraft/class_7225$class_7226$class_7875 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; parent a method_46725 +c net/minecraft/core/HolderOwner jp net/minecraft/class_7876 + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46767 + p 1 owner +c net/minecraft/core/HolderSet jq net/minecraft/class_6885 + m ()Ljava/util/stream/Stream; stream a method_40239 + m (I)Lnet/minecraft/core/Holder; get a method_40240 + p 1 index + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomElement a method_40243 + p 1 random + m (Ljava/util/List;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40242 + p 0 contents + m (Ljava/util/function/Function;Ljava/util/Collection;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40244 + p 0 holderFactory + p 1 values + m (Ljava/util/function/Function;[Ljava/lang/Object;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40245 + p 0 holderFactory + p 1 values + m (Lnet/minecraft/core/Holder;)Z contains a method_40241 + p 1 holder + m (Lnet/minecraft/core/HolderOwner;)Z canSerializeIn a method_46768 + p 1 owner + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; emptyNamed a method_45924 + p 0 owner + p 1 key + m ([Lnet/minecraft/core/Holder;)Lnet/minecraft/core/HolderSet$Direct; direct a method_40246 + p 0 contents + m ()I size b method_40247 + m ()Lcom/mojang/datafixers/util/Either; unwrap c method_40248 + m ()Ljava/util/Optional; unwrapKey d method_45925 + m ()Lnet/minecraft/core/HolderSet; empty e method_58563 +c net/minecraft/core/HolderSet$1 jq$1 net/minecraft/class_6885$1 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)V +c net/minecraft/core/HolderSet$Direct jq$a net/minecraft/class_6885$class_6886 + f Lnet/minecraft/core/HolderSet$Direct; EMPTY a field_50070 + f Ljava/util/List; contents b field_36457 + f Ljava/util/Set; contentsSet c field_36458 + m (Ljava/util/List;)V + p 1 contents + m ()V +c net/minecraft/core/HolderSet$ListBacked jq$b net/minecraft/class_6885$class_6887 + m ()Ljava/util/List; contents f method_40249 + m ()V +c net/minecraft/core/HolderSet$Named jq$c net/minecraft/class_6885$class_6888 + f Lnet/minecraft/core/HolderOwner; owner a field_40936 + f Lnet/minecraft/tags/TagKey; key b field_36459 + f Ljava/util/List; contents c field_36460 + m (Ljava/util/List;)V bind b method_40250 + p 1 contents + m ()Lnet/minecraft/tags/TagKey; key g method_40251 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/tags/TagKey;)V + p 1 owner + p 2 key +c net/minecraft/core/IdMap jr net/minecraft/class_2359 + f I DEFAULT a field_34829 + m (I)Ljava/lang/Object; byId a method_10200 + p 1 id + m (Ljava/lang/Object;)I getId a method_10206 + c @return the integer ID used to identify the given object + p 1 value + m (I)Ljava/lang/Object; byIdOrThrow b method_39974 + p 1 id + m ()I size c method_10204 + m (Ljava/lang/Object;)I getIdOrThrow c method_56158 + p 1 value +c net/minecraft/core/IdMapper js net/minecraft/class_2361 + f I nextId b field_11099 + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; tToId c field_11100 + f Ljava/util/List; idToT d field_11098 + m (Ljava/lang/Object;I)V addMapping a method_10203 + p 1 key + p 2 value + m (Ljava/lang/Object;)V add b method_10205 + p 1 key + m (I)Z contains c method_35841 + p 1 id + m ()V + m (I)V + p 1 expectedSize +c net/minecraft/core/LayeredRegistryAccess jt net/minecraft/class_7780 + f Ljava/util/List; keys a field_40581 + f Ljava/util/List; values b field_40582 + f Lnet/minecraft/core/RegistryAccess$Frozen; composite c field_40583 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; compositeAccess a method_45926 + m (II)Lnet/minecraft/core/RegistryAccess$Frozen; getCompositeAccessForLayers a method_45927 + p 1 startIndex + p 2 endIndex + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getLayer a method_45928 + p 1 key + m (Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; replaceFrom a method_45929 + p 1 key + p 2 values + m (Ljava/lang/Object;[Lnet/minecraft/core/RegistryAccess$Frozen;)Lnet/minecraft/core/LayeredRegistryAccess; replaceFrom a method_45930 + p 1 key + p 2 values + m (Ljava/util/List;)Ljava/util/List; method_45931 a method_45931 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_45932 a method_45932 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess;)V method_45933 a method_45933 + m (Ljava/util/stream/Stream;)Ljava/util/Map; collectRegistries a method_45934 + p 0 accesses + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getAccessForLoading b method_45935 + p 1 key + m (Ljava/lang/Object;)Lnet/minecraft/core/RegistryAccess$Frozen; getAccessFrom c method_45936 + p 1 key + m (Ljava/lang/Object;)I getLayerIndexOrThrow d method_45937 + p 1 key + m (Ljava/util/List;)V + p 1 keys + m (Ljava/util/List;Ljava/util/List;)V + p 1 keys + p 2 values +c net/minecraft/core/MappedRegistry ju net/minecraft/class_2370 + f Lorg/slf4j/Logger; LOGGER b field_36635 + f Lnet/minecraft/resources/ResourceKey; key c field_41126 + f Lit/unimi/dsi/fastutil/objects/ObjectList; byId d field_26682 + f Lit/unimi/dsi/fastutil/objects/Reference2IntMap; toId e field_26683 + f Ljava/util/Map; byLocation f field_11107 + f Ljava/util/Map; byKey g field_25067 + f Ljava/util/Map; byValue h field_36461 + f Ljava/util/Map; registrationInfos i field_49135 + f Lcom/mojang/serialization/Lifecycle; registryLifecycle j field_26732 + f Ljava/util/Map; tags k field_36462 + f Z frozen l field_36463 + f Ljava/util/Map; unregisteredIntrusiveHolders m field_40584 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup n field_41127 + f Ljava/lang/Object; tagAdditionLock o field_51521 + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_39665 a method_39665 + m (Ljava/lang/Object;Lnet/minecraft/core/Holder$Reference;)V method_45938 a method_45938 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_41199 a method_41199 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;Ljava/util/List;)V method_40258 a method_40258 + m (Ljava/util/Map;Lnet/minecraft/core/Holder$Reference;)V method_40259 a method_40259 + m (Lnet/minecraft/core/Holder$Reference;)Ljava/lang/Object; getValueFromNullable a method_40253 + p 0 holder + m (Lnet/minecraft/core/HolderSet$Named;)V method_40255 a method_40255 + m ()V validateWrite b method_45939 + m (Ljava/util/Map$Entry;)Z method_40256 b method_40256 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;Ljava/util/List;)V method_40263 b method_40263 + m (Lnet/minecraft/core/Holder$Reference;)V method_40261 b method_40261 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_40262 c method_40262 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; createTag d method_40562 + p 1 key + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40563 e method_40563 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; method_40271 g method_40271 + m (Lnet/minecraft/resources/ResourceKey;)V validateWrite h method_40274 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrCreateHolderOrThrow i method_44298 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_44299 j method_44299 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_56594 k method_56594 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;)V + p 1 key + p 2 registryLifecycle + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Z)V + p 1 key + p 2 registryLifecycle + p 3 hasIntrusiveHolders + m ()V +c net/minecraft/core/MappedRegistry$1 ju$1 net/minecraft/class_2370$1 + f Lnet/minecraft/core/MappedRegistry; field_36468 a field_36468 + m (Lnet/minecraft/core/MappedRegistry;)V +c net/minecraft/core/MappedRegistry$2 ju$2 net/minecraft/class_2370$2 + f Lnet/minecraft/core/MappedRegistry; field_40937 a field_40937 + m (Lnet/minecraft/core/MappedRegistry;)V +c net/minecraft/core/NonNullList jv net/minecraft/class_2371 + f Ljava/util/List; list a field_11115 + f Ljava/lang/Object; defaultValue b field_11116 + m ()Lnet/minecraft/core/NonNullList; create a method_10211 + m (I)Lnet/minecraft/core/NonNullList; createWithCapacity a method_37434 + p 0 initialCapacity + m (ILjava/lang/Object;)Lnet/minecraft/core/NonNullList; withSize a method_10213 + c Creates a new NonNullList with fixed size and default value. The list will be filled with the default value. + p 0 size + p 1 defaultValue + m (Ljava/lang/Object;[Ljava/lang/Object;)Lnet/minecraft/core/NonNullList; of a method_10212 + p 0 defaultValue + p 1 elements + m (Ljava/util/List;Ljava/lang/Object;)V + p 1 list + p 2 defaultValue +c net/minecraft/core/Position jw net/minecraft/class_2374 + m ()D x a method_10216 + m ()D y b method_10214 + m ()D z c method_10215 +c net/minecraft/core/QuartPos jx net/minecraft/class_5742 + c Used to convert between chunk positions (referred to here as sections, from {@link net.minecraft.world.level.chunk.LevelChunkSection}), block positions, and quart positions.\nThe latter is used to query biomes from a noise biome source. + f I BITS a field_33089 + f I SIZE b field_33090 + f I MASK c field_34830 + f I SECTION_TO_QUARTS_BITS d field_33091 + m (I)I fromBlock a method_33100 + p 0 value + m (I)I quartLocal b method_39920 + p 0 value + m (I)I toBlock c method_33101 + p 0 value + m (I)I fromSection d method_33102 + p 0 value + m (I)I toSection e method_33103 + p 0 value + m ()V +c net/minecraft/core/RegistrationInfo jy net/minecraft/class_9248 + f Lnet/minecraft/core/RegistrationInfo; BUILT_IN a field_49136 + f Ljava/util/Optional; knownPackInfo b comp_2354 + f Lcom/mojang/serialization/Lifecycle; lifecycle c comp_2355 + m ()Ljava/util/Optional; knownPackInfo a comp_2354 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_2355 + m (Ljava/util/Optional;Lcom/mojang/serialization/Lifecycle;)V + m ()V +c net/minecraft/core/Registry jz net/minecraft/class_2378 + m ()Ljava/util/Optional; getAny a method_60385 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/Object; get a method_29107 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; get a method_10223 + p 1 name + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet$Named; getOrCreateTag a method_40260 + p 1 key + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomElementOf a method_56159 + p 1 key + p 2 random + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom a method_10240 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/HolderSet$Named;)Ljava/util/Optional; method_56160 a method_56160 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; method_34028 a method_34028 + m (Ljava/util/Map;)V bindTags a method_40257 + p 1 tagMap + m (Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/serialization/Lifecycle; method_57060 a method_57060 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/DataResult; safeCastToReference a method_57061 + p 1 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Ljava/lang/Object; register a method_39197 + p 0 registry + p 1 key + p 2 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)Ljava/lang/Object; register a method_10230 + p 0 registry + p 1 name + p 2 value + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; register a method_10226 + p 0 registry + p 1 name + p 2 value + m ()Lcom/mojang/serialization/Codec; referenceHolderWithLifecycle b method_57059 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getHolder b method_40264 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getOptional b method_17966 + p 1 name + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; getTag b method_40266 + p 1 key + m (Ljava/lang/Object;)Lnet/minecraft/resources/ResourceLocation; getKey b method_10221 + c @return the name used to identify the given object within this registry or {@code null} if the object is not within this registry + p 1 value + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_57062 b method_57062 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_57063 b method_57063 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47984 + p 0 registry + p 1 key + p 2 value + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47985 + p 0 registry + p 1 name + p 2 value + m (I)Ljava/util/Optional; getHolder c method_40265 + p 1 id + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; registrationInfo c method_57058 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getHolder c method_55841 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/Iterable; getTagOrEmpty c method_40286 + p 1 key + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_57064 c method_57064 + m ()Lnet/minecraft/resources/ResourceKey; key d method_30517 + m (Lnet/minecraft/resources/ResourceKey;)Z containsKey d method_35842 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Z containsKey d method_10250 + p 1 name + m (Ljava/lang/Object;)Ljava/util/Optional; getResourceKey d method_29113 + p 1 value + m ()Lcom/mojang/serialization/Lifecycle; registryLifecycle e method_31138 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getOptional e method_31189 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_57065 e method_57065 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder; wrapAsHolder e method_47983 + p 1 value + m ()Ljava/util/Set; keySet f method_10235 + c @return all keys in this registry + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/Object; getOrThrow f method_31140 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_57066 f method_57066 + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; createIntrusiveHolder f method_40269 + p 1 value + m ()Ljava/util/Set; registryKeySet g method_42021 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getHolderOrThrow g method_40290 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57067 g method_57067 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_47448 g method_47448 + m ()Ljava/util/Set; entrySet h method_29722 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_47446 h method_47446 + m ()Ljava/util/stream/Stream; holders i method_40270 + m ()Ljava/util/stream/Stream; getTags j method_40272 + m ()Ljava/util/stream/Stream; getTagNames k method_40273 + m ()Lnet/minecraft/core/Registry; freeze m method_40276 + m ()V resetTags n method_40278 + m ()Lnet/minecraft/core/HolderOwner; holderOwner p method_46770 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; asLookup q method_46771 + m ()Lcom/mojang/serialization/Codec; byNameCodec r method_39673 + m ()Lcom/mojang/serialization/Codec; holderByNameCodec s method_40294 + m ()Ljava/util/stream/Stream; stream t method_10220 + m ()Lnet/minecraft/core/IdMap; asHolderIdMap u method_40295 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; asTagAddingLookup v method_46772 +c net/minecraft/core/Registry$1 jz$1 net/minecraft/class_2378$1 + f Lnet/minecraft/core/Registry; field_40939 b field_40939 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_46773 a method_46773 + m (Lnet/minecraft/core/Holder;)I getId a method_46774 + c @return the integer ID used to identify the given object + p 1 value + m (I)Lnet/minecraft/core/Holder; byId c method_46775 + p 1 id + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/Registry$2 jz$2 net/minecraft/class_2378$2 + f Lnet/minecraft/core/Registry; field_40940 a field_40940 + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryAccess ka net/minecraft/class_5455 + c The root level registry, essentially a registry of registries. It is also an access point, hence the name, for other dynamic registries. + f Lorg/slf4j/Logger; LOGGER a field_25918 + f Lnet/minecraft/core/RegistryAccess$Frozen; EMPTY b field_40585 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/RegistryAccess$Frozen; fromRegistryOfRegistries a method_40302 + p 0 registryOfRegistries + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Lcom/mojang/serialization/Lifecycle; method_41200 a method_41200 + m ()Ljava/util/stream/Stream; registries c method_40311 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; registry c method_33310 + c Get the registry owned by this registry access by the given key. If it doesn't exist, the default registry of registries is queried instead, which contains static registries such as blocks.\nThe returned registry can not guarantee that it is writable here, so the return type is widened to {@code Registry} instead. + p 1 registryKey + m ()Lnet/minecraft/core/RegistryAccess$Frozen; freeze d method_40316 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Registry; registryOrThrow d method_30530 + c A variant of {@link #registry(ResourceKey)} that throws if the registry does not exist. + p 1 registryKey + m ()Lcom/mojang/serialization/Lifecycle; allRegistriesLifecycle e method_41201 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/IllegalStateException; method_30534 f method_30534 + m ()V +c net/minecraft/core/RegistryAccess$1 ka$1 net/minecraft/class_5455$1 + f Lnet/minecraft/core/Registry; val$registries c field_36470 + m (Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryAccess$1FrozenAccess ka$a net/minecraft/class_5455$class_7781 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)V + p 2 registries +c net/minecraft/core/RegistryAccess$Frozen ka$b net/minecraft/class_5455$class_6890 +c net/minecraft/core/RegistryAccess$ImmutableRegistryAccess ka$c net/minecraft/class_5455$class_6891 + f Ljava/util/Map; registries c field_36471 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Registry; method_45942 b method_45942 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Registry; method_45943 c method_45943 + m (Ljava/util/List;)V + p 1 registries + m (Ljava/util/Map;)V + p 1 registries + m (Ljava/util/stream/Stream;)V + p 1 registries +c net/minecraft/core/RegistryAccess$RegistryEntry ka$d net/minecraft/class_5455$class_6892 + f Lnet/minecraft/resources/ResourceKey; key a comp_350 + f Lnet/minecraft/core/Registry; value b comp_351 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_350 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;)Lnet/minecraft/core/RegistryAccess$RegistryEntry; fromUntyped a method_40331 + p 0 key + p 1 value + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/RegistryAccess$RegistryEntry; fromMapEntry a method_40330 + p 0 mapEntry + m ()Lnet/minecraft/core/Registry; value b comp_351 + m ()Lnet/minecraft/core/RegistryAccess$RegistryEntry; freeze c method_40332 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;)V +c net/minecraft/core/RegistryCodecs kb net/minecraft/class_6895 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; homogeneousList a method_40340 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; homogeneousList a method_40341 + p 0 registryKey + p 1 elementCodec + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; homogeneousList a method_40343 + p 0 registryKey + p 1 elementCodec + p 2 disallowInline + m (Lnet/minecraft/resources/ResourceKey;Z)Lcom/mojang/serialization/Codec; homogeneousList a method_40349 + p 0 registryKey + p 1 disallowInline + m ()V +c net/minecraft/core/RegistrySetBuilder kc net/minecraft/class_7877 + f Ljava/util/List; entries a field_40941 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/HolderOwner;Ljava/util/Map;)Lnet/minecraft/core/HolderLookup$RegistryLookup; lookupFromMap a method_55283 + p 0 registryKey + p 1 registryLifecycle + p 2 owner + p 3 elements + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)Lnet/minecraft/core/RegistrySetBuilder; add a method_46776 + p 1 key + p 2 lifecycle + p 3 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)Lnet/minecraft/core/RegistrySetBuilder; add a method_46777 + p 1 key + p 2 bootstrap + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceKey;)V method_55293 a method_55293 + m (Ljava/util/Map;Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/Holder$Reference;)V method_55294 a method_55294 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_55288 a method_55288 + m (Ljava/util/Map;Lnet/minecraft/core/RegistrySetBuilder$RegistryContents;)V method_49352 a method_49352 + m (Ljava/util/Map;Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_57094 a method_57094 + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceKey;)Z method_55295 a method_55295 + m (Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/Object; method_55284 a method_55284 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderGetter; wrapContextLookup a method_46778 + p 0 owner + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_55285 a method_55285 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Lnet/minecraft/core/HolderLookup$RegistryLookup; createLazyFullPatchedRegistries a method_55286 + p 1 owner + p 2 clonerFactory + p 3 registryKey + p 4 registryLookupProvider + p 5 lookupProvider + p 6 object + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/Cloner;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/Map;Lnet/minecraft/core/Holder$Reference;)V method_55287 a method_55287 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/HolderLookup$Provider; build a method_46780 + p 1 registryAccess + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/Cloner$Factory;)Lnet/minecraft/core/RegistrySetBuilder$PatchedRegistries; buildPatch a method_46781 + p 1 registryAccess + p 2 lookupProvider + p 3 clonerFactory + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/Cloner$Factory;Ljava/util/Map;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; createLazyFullPatchedRegistries a method_55289 + p 1 registry + p 2 lookupProvider + p 3 clonerFactory + p 4 registries + p 5 registryLookupProvider + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryContents;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_55291 a method_55291 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)Lnet/minecraft/core/RegistrySetBuilder$RegistryContents; method_46782 a method_46782 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_55292 a method_55292 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)Lnet/minecraft/core/HolderLookup$Provider; buildProviderWithContext a method_55290 + p 0 owner + p 1 registryAccess + p 2 lookups + m (Lnet/minecraft/core/Cloner;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/HolderLookup$Provider;Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/Object; method_55296 b method_55296 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/RegistrySetBuilder$BuildState; createState b method_46784 + p 1 registryAccess + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_46785 b method_46785 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;Lnet/minecraft/core/RegistrySetBuilder$RegistryStub;)V method_46786 c method_46786 + m ()V +c net/minecraft/core/RegistrySetBuilder$1 kc$1 net/minecraft/class_7877$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$original a field_40942 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/core/RegistrySetBuilder$2 kc$2 net/minecraft/class_7877$2 + f Lnet/minecraft/resources/ResourceKey; val$key a field_47488 + f Lcom/mojang/serialization/Lifecycle; val$lifecycle b field_47489 + f Ljava/util/Map; val$entries c field_40947 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$3 kc$3 net/minecraft/class_7877$3 + f Ljava/util/Map; val$lookups a field_49167 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getEntry c method_57095 + p 1 registryKey + m (Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$3$1 kc$3$1 net/minecraft/class_7877$3$1 + f Lnet/minecraft/core/RegistrySetBuilder$3; field_49168 a field_49168 + m (Lnet/minecraft/core/RegistrySetBuilder$3;)V +c net/minecraft/core/RegistrySetBuilder$1Entry kc$a net/minecraft/class_7877$class_9256 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup a comp_2360 + f Lnet/minecraft/resources/RegistryOps$RegistryInfo; opsInfo b comp_2361 + m ()Lnet/minecraft/core/HolderLookup$RegistryLookup; lookup a comp_2360 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/RegistrySetBuilder$1Entry; createForContextRegistry a method_57096 + p 0 lookup + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/RegistrySetBuilder$1Entry; createForNewRegistry a method_57097 + p 0 owner + p 1 lookup + m ()Lnet/minecraft/resources/RegistryOps$RegistryInfo; opsInfo b comp_2361 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/resources/RegistryOps$RegistryInfo;)V +c net/minecraft/core/RegistrySetBuilder$BuildState kc$b net/minecraft/class_7877$class_7878 + f Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner; owner a comp_1135 + f Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup; lookup b comp_1136 + f Ljava/util/Map; registries c comp_1137 + f Ljava/util/Map; registeredValues d comp_1138 + f Ljava/util/List; errors e comp_1139 + m ()Lnet/minecraft/data/worldgen/BootstrapContext; bootstrapContext a method_46787 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue;)V method_55297 a method_55297 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_46790 a method_46790 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup;Lnet/minecraft/resources/ResourceKey;)V method_46791 a method_46791 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/stream/Stream;)Lnet/minecraft/core/RegistrySetBuilder$BuildState; create a method_46796 + p 0 registryAccess + p 1 registries + m ()V reportUnclaimedRegisteredValues b method_55298 + m ()V reportNotCollectedHolders c method_55299 + m ()V throwOnError d method_46798 + m ()Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner; owner e comp_1135 + m ()Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup; lookup f comp_1136 + m ()Ljava/util/Map; registries g comp_1137 + m ()Ljava/util/Map; registeredValues h comp_1138 + m ()Ljava/util/List; errors i comp_1139 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Lnet/minecraft/core/RegistrySetBuilder$UniversalLookup;Ljava/util/Map;Ljava/util/Map;Ljava/util/List;)V +c net/minecraft/core/RegistrySetBuilder$BuildState$1 kc$b$1 net/minecraft/class_7877$class_7878$1 + f Lnet/minecraft/core/RegistrySetBuilder$BuildState; field_40943 a field_40943 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)V +c net/minecraft/core/RegistrySetBuilder$EmptyTagLookup kc$c net/minecraft/class_7877$class_7880 + f Lnet/minecraft/core/HolderOwner; owner d field_40945 + m (Lnet/minecraft/core/HolderOwner;)V + p 1 owner +c net/minecraft/core/RegistrySetBuilder$EmptyTagLookupWrapper kc$d net/minecraft/class_7877$class_9257 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; parent a field_49169 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V + p 1 owner + p 2 parent +c net/minecraft/core/RegistrySetBuilder$EmptyTagRegistryLookup kc$e net/minecraft/class_7877$class_9258 + m (Lnet/minecraft/core/HolderOwner;)V +c net/minecraft/core/RegistrySetBuilder$LazyHolder kc$f net/minecraft/class_7877$class_8992 + f Ljava/util/function/Supplier; supplier a field_47490 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/resources/ResourceKey;)V + p 1 owner + p 2 key +c net/minecraft/core/RegistrySetBuilder$PatchedRegistries kc$g net/minecraft/class_7877$class_8993 + f Lnet/minecraft/core/HolderLookup$Provider; full a comp_2113 + f Lnet/minecraft/core/HolderLookup$Provider; patches b comp_2114 + m ()Lnet/minecraft/core/HolderLookup$Provider; full a comp_2113 + m ()Lnet/minecraft/core/HolderLookup$Provider; patches b comp_2114 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/core/RegistrySetBuilder$RegisteredValue kc$h net/minecraft/class_7877$class_7881 + f Ljava/lang/Object; value a comp_1140 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1141 + m ()Ljava/lang/Object; value a comp_1140 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1141 + m (Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)V +c net/minecraft/core/RegistrySetBuilder$RegistryBootstrap kc$i net/minecraft/class_7877$class_7882 +c net/minecraft/core/RegistrySetBuilder$RegistryContents kc$j net/minecraft/class_7877$class_7883 + f Lnet/minecraft/resources/ResourceKey; key a comp_1305 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1306 + f Ljava/util/Map; values c comp_1143 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1305 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;)Lnet/minecraft/core/HolderLookup$RegistryLookup; buildAsLookup a method_46802 + p 1 owner + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Ljava/util/Map$Entry;)Lnet/minecraft/core/Holder$Reference; method_55301 a method_55301 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1306 + m (Lnet/minecraft/core/RegistrySetBuilder$UniversalOwner;Ljava/util/Map$Entry;)Lnet/minecraft/core/Holder$Reference; method_55302 b method_55302 + m ()Ljava/util/Map; values c comp_1143 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)V +c net/minecraft/core/RegistrySetBuilder$RegistryStub kc$k net/minecraft/class_7877$class_7884 + f Lnet/minecraft/resources/ResourceKey; key a comp_1144 + f Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1145 + f Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap; bootstrap c comp_1146 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1144 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)Lnet/minecraft/core/RegistrySetBuilder$RegistryContents; collectRegisteredValues a method_46805 + p 1 buildState + m ()Lcom/mojang/serialization/Lifecycle; lifecycle b comp_1145 + m (Lnet/minecraft/core/RegistrySetBuilder$BuildState;)V apply b method_46806 + p 1 state + m ()Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap; bootstrap c comp_1146 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Lifecycle;Lnet/minecraft/core/RegistrySetBuilder$RegistryBootstrap;)V +c net/minecraft/core/RegistrySetBuilder$UniversalLookup kc$l net/minecraft/class_7877$class_7885 + f Ljava/util/Map; holders a field_40948 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; getOrCreate c method_46807 + p 1 key + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/Holder$Reference; method_46808 d method_46808 + m (Lnet/minecraft/core/HolderOwner;)V + p 1 owner +c net/minecraft/core/RegistrySetBuilder$UniversalOwner kc$m net/minecraft/class_7877$class_7879 + m ()Lnet/minecraft/core/HolderOwner; cast a method_55300 + m ()V +c net/minecraft/core/RegistrySetBuilder$ValueAndHolder kc$n net/minecraft/class_7877$class_7886 + f Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue; value a comp_1147 + f Ljava/util/Optional; holder b comp_1148 + m ()Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue; value a comp_1147 + m ()Ljava/util/Optional; holder b comp_1148 + m (Lnet/minecraft/core/RegistrySetBuilder$RegisteredValue;Ljava/util/Optional;)V +c net/minecraft/core/RegistrySynchronization kd net/minecraft/class_7782 + f Ljava/util/Set; NETWORKABLE_REGISTRIES a field_48771 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;)V packRegistry a method_56597 + p 0 ops + p 1 registryData + p 2 registryAccess + p 3 packs + p 4 packetSender + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;)V packRegistries a method_56598 + p 0 ops + p 1 registryAccess + p 2 packs + p 3 packetSender + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/RegistryAccess;Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)V method_56599 a method_56599 + m (Ljava/util/Set;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Registry;)V method_56596 a method_56596 + m (Lnet/minecraft/core/Holder$Reference;Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_56600 a method_56600 + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/stream/Stream; networkedRegistries a method_47449 + p 0 registryAccess + m (Lnet/minecraft/core/Registry;Ljava/util/Set;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lcom/mojang/serialization/DynamicOps;Ljava/util/List;Lnet/minecraft/core/Holder$Reference;)V method_56595 a method_56595 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Z method_56601 a method_56601 + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/stream/Stream; ownedNetworkableRegistries a method_45956 + p 0 registryAccess + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/stream/Stream; networkSafeRegistries b method_45953 + p 0 registryAccess + m ()V + m ()V +c net/minecraft/core/RegistrySynchronization$PackedRegistryEntry kd$a net/minecraft/class_7782$class_9176 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48772 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2256 + f Ljava/util/Optional; data c comp_2257 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2256 + m ()Ljava/util/Optional; data b comp_2257 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V + m ()V +c net/minecraft/core/Rotations ke net/minecraft/class_2379 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48452 + f F x b field_11165 + c Rotation on the X axis + f F y c field_11164 + c Rotation on the Y axis + f F z d field_11163 + c Rotation on the Z axis + m ()Lnet/minecraft/nbt/ListTag; save a method_10255 + m ()F getX b method_10256 + c @return the X axis rotation + m ()F getY c method_10257 + c @return the Y axis rotation + m ()F getZ d method_10258 + c @return the Z axis rotation + m ()F getWrappedX e method_35845 + m ()F getWrappedY f method_35846 + m ()F getWrappedZ g method_35847 + m (FFF)V + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/nbt/ListTag;)V + p 1 tag + m ()V +c net/minecraft/core/Rotations$1 ke$1 net/minecraft/class_2379$1 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/Rotations; decode a method_56161 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/Rotations;)V encode a method_56162 + m ()V +c net/minecraft/core/SectionPos kf net/minecraft/class_4076 + f I SECTION_BITS a field_33096 + f I SECTION_SIZE b field_33097 + f I SECTION_MASK c field_33100 + f I SECTION_HALF_SIZE d field_33098 + f I SECTION_MAX_INDEX e field_33099 + f I PACKED_X_LENGTH h field_33101 + f I PACKED_Y_LENGTH i field_33102 + f I PACKED_Z_LENGTH j field_33103 + f J PACKED_X_MASK k field_33104 + f J PACKED_Y_MASK l field_33105 + f J PACKED_Z_MASK m field_33106 + f I Y_OFFSET n field_33107 + f I Z_OFFSET o field_33108 + f I X_OFFSET p field_33109 + f I RELATIVE_X_SHIFT q field_33110 + f I RELATIVE_Y_SHIFT r field_33111 + f I RELATIVE_Z_SHIFT s field_33112 + m ()I x a method_18674 + m (D)I posToSectionCoord a method_32204 + p 0 pos + m (I)I blockToSectionCoord a method_18675 + p 0 blockCoord + m (II)I sectionToBlockCoord a method_32205 + p 0 pos + p 1 offset + m (III)Lnet/minecraft/core/SectionPos; of a method_18676 + p 0 chunkX + p 1 chunkY + p 2 chunkZ + m (IIIIII)Ljava/util/stream/Stream; betweenClosedStream a method_20438 + p 0 x1 + p 1 y1 + p 2 z1 + p 3 x2 + p 4 y2 + p 5 z2 + m (IIILit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39489 + p 0 x + p 1 y + p 2 z + p 3 consumer + m (J)Lnet/minecraft/core/SectionPos; of a method_18677 + p 0 packed + m (JIII)J offset a method_18678 + p 0 packed + p 2 dx + p 3 dy + p 4 dz + m (JLit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39490 + p 0 pos + p 2 consumer + m (JLnet/minecraft/core/Direction;)J offset a method_18679 + p 0 packed + p 2 direction + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/core/SectionPos; of a method_18681 + p 0 chunkPos + p 1 y + m (Lnet/minecraft/world/level/ChunkPos;III)Ljava/util/stream/Stream; aroundChunk a method_22446 + p 0 chunkPos + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/core/SectionPos; bottomOf a method_33705 + p 0 chunk + m (Lnet/minecraft/world/level/entity/EntityAccess;)Lnet/minecraft/core/SectionPos; of a method_42614 + p 0 entity + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/SectionPos; of a method_18682 + p 0 pos + m (Lnet/minecraft/core/BlockPos;Lit/unimi/dsi/fastutil/longs/LongConsumer;)V aroundAndAtBlockPos a method_39491 + p 0 pos + p 1 consumer + m (Lnet/minecraft/core/Position;)Lnet/minecraft/core/SectionPos; of a method_18680 + p 0 position + m (Lnet/minecraft/core/SectionPos;I)Ljava/util/stream/Stream; cube a method_20439 + p 0 center + p 1 radius + m (S)I sectionRelativeX a method_30551 + p 0 x + m ()I y b method_18683 + m (D)I blockToSectionCoord b method_42615 + p 0 coord + m (I)I sectionRelative b method_18684 + p 0 rel + m (II)J getZeroNode b method_51687 + p 0 x + p 1 z + m (III)J asLong b method_18685 + p 0 x + p 1 y + p 2 z + m (J)I x b method_18686 + p 0 packed + m (Lnet/minecraft/core/BlockPos;)S sectionRelativePos b method_19454 + p 0 pos + m (S)I sectionRelativeY b method_30552 + p 0 y + m ()I z c method_18687 + m (I)I sectionToBlockCoord c method_18688 + p 0 sectionCoord + m (J)I y c method_18689 + p 0 packed + m (Lnet/minecraft/core/BlockPos;)J asLong c method_33706 + p 0 blockPos + m (S)I sectionRelativeZ c method_30553 + p 0 z + m ()I minBlockX d method_19527 + m (III)Lnet/minecraft/core/SectionPos; offset d method_34591 + p 1 dx + p 2 dy + p 3 dz + m (J)I z d method_18690 + p 0 packed + m (S)I relativeToBlockX d method_30554 + p 1 x + m ()I minBlockY e method_19528 + m (J)J blockToSection e method_18691 + p 0 levelPos + m (S)I relativeToBlockY e method_30555 + p 1 y + m ()I minBlockZ f method_19529 + m (J)J getZeroNode f method_18693 + p 0 pos + m (S)I relativeToBlockZ f method_30556 + p 1 z + m ()I maxBlockX g method_19530 + m (S)Lnet/minecraft/core/BlockPos; relativeToBlockPos g method_30557 + p 1 pos + m ()I maxBlockY h method_19531 + m ()I maxBlockZ i method_19532 + m ()Lnet/minecraft/core/BlockPos; origin j method_19767 + m ()Lnet/minecraft/core/BlockPos; center k method_19768 + m ()Lnet/minecraft/world/level/ChunkPos; chunk r method_18692 + m ()J asLong s method_18694 + m ()Ljava/util/stream/Stream; blocksInside t method_19533 + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/core/SectionPos$1 kf$1 net/minecraft/class_4076$1 + f Lnet/minecraft/core/Cursor3D; cursor a field_19263 + f I val$minX b field_19264 + f I val$minY c field_19265 + f I val$minZ d field_19266 + f I val$maxX e field_19267 + f I val$maxY f field_19268 + f I val$maxZ g field_19269 + m (JIIIIIII)V +c net/minecraft/core/UUIDUtil kg net/minecraft/class_4844 + f Lcom/mojang/serialization/Codec; CODEC a field_25122 + f Lcom/mojang/serialization/Codec; CODEC_SET b field_47491 + f Lcom/mojang/serialization/Codec; CODEC_LINKED_SET c field_48974 + f Lcom/mojang/serialization/Codec; STRING_CODEC d field_41525 + f Lcom/mojang/serialization/Codec; AUTHLIB_CODEC e field_40825 + f Lcom/mojang/serialization/Codec; LENIENT_CODEC f field_46588 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_48453 + f I UUID_BYTES h field_39211 + f Ljava/lang/String; UUID_PREFIX_OFFLINE_PLAYER i field_38907 + m (JJ)[I leastMostToIntArray a method_26274 + p 0 most + p 2 least + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/UUID; readUUID a method_35848 + p 0 dynamic + m (Ljava/lang/String;)Ljava/util/UUID; createOfflinePlayerUUID a method_43344 + p 0 username + m (Ljava/lang/String;Ljava/lang/IllegalArgumentException;)Ljava/lang/String; method_49645 a method_49645 + m (Ljava/util/UUID;)[I uuidToIntArray a method_26275 + p 0 uuid + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29122 a method_29122 + m ([I)Ljava/util/UUID; uuidFromIntArray a method_26276 + p 0 bits + m (Ljava/lang/String;)Lcom/mojang/authlib/GameProfile; createOfflineProfile b method_54140 + p 0 username + m (Ljava/lang/String;Ljava/lang/IllegalArgumentException;)Ljava/lang/String; method_49646 b method_49646 + m (Ljava/util/UUID;)[B uuidToByteArray b method_44827 + p 0 uuid + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_46560 c method_46560 + m (Ljava/util/UUID;)Ljava/util/stream/IntStream; method_29727 c method_29727 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47804 d method_47804 + m ()V + m ()V +c net/minecraft/core/UUIDUtil$1 kg$1 net/minecraft/class_4844$1 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; decode a method_56163 + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V encode a method_56164 + m ()V +c net/minecraft/core/Vec3i kh net/minecraft/class_2382 + f I x a field_11175 + f I y b field_11174 + f I z c field_11173 + f Lcom/mojang/serialization/Codec; CODEC f field_25123 + f Lnet/minecraft/core/Vec3i; ZERO g field_11176 + c An immutable vector with zero as all coordinates. + m (ILnet/minecraft/core/Vec3i;)Lcom/mojang/serialization/DataResult; method_48305 a method_48305 + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_29125 a method_29125 + m (Lnet/minecraft/core/Direction$Axis;)I get a method_30558 + p 1 axis + m (Lnet/minecraft/core/Position;D)Z closerToCenterThan a method_19769 + p 1 position + p 2 distance + m (Lnet/minecraft/core/Vec3i;)Ljava/util/stream/IntStream; method_29124 a method_29124 + m (Lnet/minecraft/core/Vec3i;D)Z closerThan a method_19771 + p 1 vector + p 2 distance + m ([I)Lnet/minecraft/core/Vec3i; method_29126 a method_29126 + m (ILnet/minecraft/core/Vec3i;)Ljava/lang/String; method_49647 b method_49647 + m (Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/core/Vec3i; relative b method_35850 + p 1 axis + p 2 amount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Vec3i; relative b method_35851 + p 1 direction + m (Lnet/minecraft/core/Direction;I)Lnet/minecraft/core/Vec3i; relative b method_23226 + c Offsets this Vector by the given distance in the specified direction. + p 1 direction + p 2 distance + m (Lnet/minecraft/core/Position;)D distToCenterSqr b method_19770 + p 1 position + m (DDD)D distToCenterSqr c method_10268 + p 1 x + p 3 y + p 5 z + m (III)Lnet/minecraft/core/Vec3i; offset c method_34592 + p 1 dx + p 2 dy + p 3 dz + m (DDD)D distToLowCornerSqr d method_40081 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; cross d method_10259 + c Calculate the cross product of this and the given Vector + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; subtract e method_35852 + p 1 vector + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/core/Vec3i; offset f method_35853 + p 1 vector + m (I)Lnet/minecraft/core/Vec3i; east i method_35854 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)I compareTo i method_10265 + p 1 other + m (I)Lnet/minecraft/core/Vec3i; west j method_35856 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)D distSqr j method_10262 + c Calculate squared distance to the given Vector + p 1 vector + m (I)Lnet/minecraft/core/Vec3i; south k method_35858 + p 1 distance + m (Lnet/minecraft/core/Vec3i;)I distManhattan k method_19455 + p 1 vector + m ()Lnet/minecraft/core/Vec3i; east l method_35855 + m (I)Lnet/minecraft/core/Vec3i; north l method_35860 + p 1 distance + m ()Lnet/minecraft/core/Vec3i; west m method_35857 + m (I)Lnet/minecraft/core/Vec3i; below m method_23227 + c Offset this vector downwards by the given distance. + p 1 distance + m ()Lnet/minecraft/core/Vec3i; south n method_35859 + m (I)Lnet/minecraft/core/Vec3i; above n method_30930 + c Offset this vector upwards by the given distance. + p 1 distance + m ()Lnet/minecraft/core/Vec3i; north o method_35861 + m (I)Lnet/minecraft/core/Vec3i; multiply o method_35862 + p 1 scalar + m ()Lnet/minecraft/core/Vec3i; below p method_23228 + c Offset this vector 1 unit down + m ()Lnet/minecraft/core/Vec3i; above q method_30931 + c Offset this vector 1 unit up + m (I)Lnet/minecraft/core/Vec3i; setZ s method_20788 + p 1 z + m (I)Lnet/minecraft/core/Vec3i; setY t method_10099 + p 1 y + m ()I getX u method_10263 + m (I)Lnet/minecraft/core/Vec3i; setX u method_20787 + p 1 x + m ()I getY v method_10264 + m (I)Lcom/mojang/serialization/Codec; offsetCodec v method_39677 + p 0 maxOffset + m ()I getZ w method_10260 + m ()Ljava/lang/String; toShortString x method_23854 + m (III)V + p 1 x + p 2 y + p 3 z + m ()V +c net/minecraft/core/WritableRegistry ki net/minecraft/class_2385 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Lnet/minecraft/core/RegistrationInfo;)Lnet/minecraft/core/Holder$Reference; register a method_10272 + p 1 key + p 2 value + p 3 registrationInfo + m ()Z isEmpty l method_35863 + m ()Lnet/minecraft/core/HolderGetter; createRegistrationLookup o method_46769 +c net/minecraft/core/cauldron/CauldronInteraction kj net/minecraft/class_5620 + f Ljava/util/Map; INTERACTIONS a field_46589 + f Lcom/mojang/serialization/Codec; CODEC b field_46590 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; EMPTY c field_27775 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; WATER d field_27776 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; LAVA e field_27777 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; POWDER_SNOW f field_28011 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_WATER g field_27778 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_LAVA h field_27779 + f Lnet/minecraft/core/cauldron/CauldronInteraction; FILL_POWDER_SNOW i field_28012 + f Lnet/minecraft/core/cauldron/CauldronInteraction; SHULKER_BOX j field_27780 + f Lnet/minecraft/core/cauldron/CauldronInteraction; BANNER k field_27781 + f Lnet/minecraft/core/cauldron/CauldronInteraction; DYED_ITEM l field_27782 + m ()V bootStrap a method_32212 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/ItemInteractionResult; emptyBucket a method_32207 + p 0 level + p 1 pos + p 2 player + p 3 hand + p 4 filledStack + p 5 state + p 6 emptySound + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32696 a method_32696 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32209 a method_32209 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/ItemInteractionResult; fillBucket a method_32210 + p 0 state + p 1 level + p 2 pos + p 3 player + p 4 hand + p 5 emptyStack + p 6 filledStack + p 7 statePredicate + p 8 fillSound + m (Ljava/lang/String;)Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; newInteractionMap a method_32206 + p 0 name + m (Ljava/util/Map;)V addDefaultInteractions a method_34850 + p 0 interactionsMap + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32208 b method_32208 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32214 b method_32214 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_32213 c method_32213 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32215 c method_32215 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32697 d method_32697 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32216 e method_32216 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32217 f method_32217 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32698 g method_32698 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32218 h method_32218 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32219 i method_32219 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32220 j method_32220 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32221 k method_32221 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32222 l method_32222 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/ItemInteractionResult; method_32223 m method_32223 + m ()V +c net/minecraft/core/cauldron/CauldronInteraction$InteractionMap kj$a net/minecraft/class_5620$class_8821 + f Ljava/lang/String; name a comp_1981 + f Ljava/util/Map; map b comp_1982 + m ()Ljava/lang/String; name a comp_1981 + m ()Ljava/util/Map; map b comp_1982 + m (Ljava/lang/String;Ljava/util/Map;)V +c net/minecraft/core/cauldron/package-info kk net/minecraft/class_6666 +c net/minecraft/core/component/DataComponentHolder kl net/minecraft/class_9322 + m ()Lnet/minecraft/core/component/DataComponentMap; getComponents a method_57353 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_57824 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_57825 + p 1 component + p 2 defaultValue + m (Lnet/minecraft/core/component/DataComponentType;)Z has b method_57826 + p 1 component +c net/minecraft/core/component/DataComponentMap km net/minecraft/class_9323 + f Lnet/minecraft/core/component/DataComponentMap; EMPTY a field_49584 + f Lcom/mojang/serialization/Codec; CODEC b field_50234 + m ()Lnet/minecraft/core/component/DataComponentMap$Builder; builder a method_57827 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; makeCodec a method_60386 + p 0 codec + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/component/DataComponentMap; filter a method_57828 + p 1 predicate + m (Lnet/minecraft/core/component/DataComponentMap;)Lcom/mojang/serialization/DataResult; method_60387 a method_60387 + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentMap; composite a method_59771 + p 0 map1 + p 1 map2 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_57829 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_57830 + p 1 component + p 2 defaultValue + m ()Ljava/util/Set; keySet b method_57831 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; makeCodecFromMap b method_60388 + p 0 codec + m (Lnet/minecraft/core/component/DataComponentType;)Z has b method_57832 + p 1 component + m ()Ljava/util/stream/Stream; stream c method_57833 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; getTyped c method_57834 + p 1 component + m ()I size d method_57835 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; method_57836 d method_57836 + m ()Z isEmpty e method_57837 + m ()V +c net/minecraft/core/component/DataComponentMap$1 km$1 net/minecraft/class_9323$1 + m ()V +c net/minecraft/core/component/DataComponentMap$2 km$2 net/minecraft/class_9323$2 + f Lnet/minecraft/core/component/DataComponentMap; val$overrides c field_51459 + f Lnet/minecraft/core/component/DataComponentMap; val$prototype d field_51460 + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/core/component/DataComponentMap$3 km$3 net/minecraft/class_9323$3 + f Ljava/util/function/Predicate; val$predicate c field_51461 + f Lnet/minecraft/core/component/DataComponentMap; field_51462 d field_51462 + m (Lnet/minecraft/core/component/DataComponentMap;Ljava/util/function/Predicate;)V +c net/minecraft/core/component/DataComponentMap$Builder km$a net/minecraft/class_9323$class_9324 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map a field_49587 + m ()Lnet/minecraft/core/component/DataComponentMap; build a method_57838 + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentMap; buildFromMapTrusted a method_58755 + p 0 map + m (Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentMap$Builder; addAll a method_57839 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentMap$Builder; set a method_57840 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V setUnchecked b method_58756 + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentMap$Builder$SimpleMap km$a$a net/minecraft/class_9323$class_9324$class_9325 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map c comp_2440 + m ()Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map f comp_2440 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V +c net/minecraft/core/component/DataComponentPatch kn net/minecraft/class_9326 + f Lnet/minecraft/core/component/DataComponentPatch; EMPTY a field_49588 + f Lcom/mojang/serialization/Codec; CODEC b field_49589 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49590 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map d field_49591 + f Ljava/lang/String; REMOVED_PREFIX e field_49592 + m ()Lnet/minecraft/core/component/DataComponentPatch$Builder; builder a method_57841 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Ljava/lang/String; toString a method_57842 + p 0 map + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentPatch; method_57843 a method_57843 + m (Ljava/util/function/Predicate;)Lnet/minecraft/core/component/DataComponentPatch; forget a method_58757 + p 1 predicate + m (Lnet/minecraft/core/component/DataComponentMap$Builder;Ljava/util/Set;Lnet/minecraft/core/component/DataComponentType;Ljava/util/Optional;)V method_58758 a method_58758 + m (Lnet/minecraft/core/component/DataComponentPatch;)Ljava/util/Map; method_57844 a method_57844 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/Optional; get a method_57845 + p 1 component + m ()Ljava/util/Set; entrySet b method_57846 + m ()I size c method_57847 + m ()Z isEmpty d method_57848 + m ()Lnet/minecraft/core/component/DataComponentPatch$SplitResult; split e method_58759 + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)V + p 1 map + m ()V +c net/minecraft/core/component/DataComponentPatch$1 kn$1 net/minecraft/class_9326$1 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/component/DataComponentPatch; decode a method_57849 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentPatch;)V encode a method_57850 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V encodeComponent a method_57851 + p 0 buffer + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentPatch$Builder kn$a net/minecraft/class_9326$class_9327 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; map a field_49593 + m ()Lnet/minecraft/core/component/DataComponentPatch; build a method_57852 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/DataComponentPatch$Builder; remove a method_57853 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentPatch$Builder; set a method_57854 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/TypedDataComponent;)Lnet/minecraft/core/component/DataComponentPatch$Builder; set a method_57855 + p 1 component + m ()V +c net/minecraft/core/component/DataComponentPatch$PatchKey kn$b net/minecraft/class_9326$class_9328 + f Lcom/mojang/serialization/Codec; CODEC a field_49594 + f Lnet/minecraft/core/component/DataComponentType; type b comp_2441 + f Z removed c comp_2442 + m ()Lcom/mojang/serialization/Codec; valueCodec a method_57856 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57857 a method_57857 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57858 a method_57858 + m (Lnet/minecraft/core/component/DataComponentPatch$PatchKey;)Lcom/mojang/serialization/DataResult; method_57859 a method_57859 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_57860 a method_57860 + m ()Lnet/minecraft/core/component/DataComponentType; type b comp_2441 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_57861 b method_57861 + m ()Z removed c comp_2442 + m (Lnet/minecraft/core/component/DataComponentType;Z)V + m ()V +c net/minecraft/core/component/DataComponentPatch$SplitResult kn$c net/minecraft/class_9326$class_9484 + f Lnet/minecraft/core/component/DataComponentPatch$SplitResult; EMPTY a field_50235 + f Lnet/minecraft/core/component/DataComponentMap; added b comp_2554 + f Ljava/util/Set; removed c comp_2555 + m ()Lnet/minecraft/core/component/DataComponentMap; added a comp_2554 + m ()Ljava/util/Set; removed b comp_2555 + m (Lnet/minecraft/core/component/DataComponentMap;Ljava/util/Set;)V + m ()V +c net/minecraft/core/component/DataComponentPredicate ko net/minecraft/class_9329 + f Lcom/mojang/serialization/Codec; CODEC a field_49595 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49596 + f Lnet/minecraft/core/component/DataComponentPredicate; EMPTY c field_49597 + f Ljava/util/List; expectedComponents d field_49598 + m ()Lnet/minecraft/core/component/DataComponentPredicate$Builder; builder a method_57862 + m (Ljava/util/Map;)Lnet/minecraft/core/component/DataComponentPredicate; method_57863 a method_57863 + m (Lnet/minecraft/core/component/DataComponentHolder;)Z test a method_57864 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;)Lnet/minecraft/core/component/DataComponentPredicate; allOf a method_57865 + p 0 expectedComponents + m (Lnet/minecraft/core/component/DataComponentPredicate;)Ljava/util/List; method_57866 a method_57866 + m (Lnet/minecraft/core/component/TypedDataComponent;)Z method_58760 a method_58760 + m ()Z alwaysMatches b method_57867 + m (Lnet/minecraft/core/component/DataComponentMap;)Z test b method_57868 + p 1 components + m (Lnet/minecraft/core/component/DataComponentPredicate;)Ljava/util/Map; method_57869 b method_57869 + m ()Lnet/minecraft/core/component/DataComponentPatch; asPatch c method_57870 + m (Ljava/util/List;)V + p 1 expectedComponents + m ()V +c net/minecraft/core/component/DataComponentPredicate$Builder ko$a net/minecraft/class_9329$class_9330 + f Ljava/util/List; expectedComponents a field_49599 + m ()Lnet/minecraft/core/component/DataComponentPredicate; build a method_57871 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/DataComponentPredicate$Builder; expect a method_57872 + p 1 component + p 2 value + m ()V +c net/minecraft/core/component/DataComponentType kp net/minecraft/class_9331 + f Lcom/mojang/serialization/Codec; CODEC a field_49600 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49601 + f Lcom/mojang/serialization/Codec; PERSISTENT_CODEC c field_50236 + f Lcom/mojang/serialization/Codec; VALUE_MAP_CODEC d field_50237 + m ()Lnet/minecraft/core/component/DataComponentType$Builder; builder a method_57873 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_58761 a method_58761 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57874 a method_57874 + m ()Lcom/mojang/serialization/Codec; codec b method_57875 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_58762 b method_58762 + m ()Lcom/mojang/serialization/Codec; codecOrThrow c method_57876 + m ()Z isTransient d method_57877 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec e method_57878 + m ()Lcom/mojang/serialization/Codec; method_57879 f method_57879 + m ()V +c net/minecraft/core/component/DataComponentType$Builder kp$a net/minecraft/class_9331$class_9332 + f Lcom/mojang/serialization/Codec; codec a field_49602 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec b field_49603 + f Z cacheEncoding c field_51517 + m ()Lnet/minecraft/core/component/DataComponentType$Builder; cacheEncoding a method_59871 + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/core/component/DataComponentType$Builder; persistent a method_57881 + p 1 codec + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/core/component/DataComponentType$Builder; networkSynchronized a method_57882 + p 1 streamCodec + m ()Lnet/minecraft/core/component/DataComponentType; build b method_57880 + m ()Lnet/minecraft/network/codec/StreamCodec; method_57883 c method_57883 + m ()V +c net/minecraft/core/component/DataComponentType$Builder$SimpleType kp$a$a net/minecraft/class_9331$class_9332$class_9333 + f Lcom/mojang/serialization/Codec; codec e field_49604 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec f field_49605 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/network/codec/StreamCodec;)V + p 1 codec + p 2 streamCodec +c net/minecraft/core/component/DataComponents kq net/minecraft/class_9334 + f Lnet/minecraft/core/component/DataComponentType; MAP_COLOR A field_49645 + f Lnet/minecraft/core/component/DataComponentType; MAP_ID B field_49646 + f Lnet/minecraft/core/component/DataComponentType; MAP_DECORATIONS C field_49647 + f Lnet/minecraft/core/component/DataComponentType; MAP_POST_PROCESSING D field_49648 + f Lnet/minecraft/core/component/DataComponentType; CHARGED_PROJECTILES E field_49649 + f Lnet/minecraft/core/component/DataComponentType; BUNDLE_CONTENTS F field_49650 + f Lnet/minecraft/core/component/DataComponentType; POTION_CONTENTS G field_49651 + f Lnet/minecraft/core/component/DataComponentType; SUSPICIOUS_STEW_EFFECTS H field_49652 + f Lnet/minecraft/core/component/DataComponentType; WRITABLE_BOOK_CONTENT I field_49653 + f Lnet/minecraft/core/component/DataComponentType; WRITTEN_BOOK_CONTENT J field_49606 + f Lnet/minecraft/core/component/DataComponentType; TRIM K field_49607 + f Lnet/minecraft/core/component/DataComponentType; DEBUG_STICK_STATE L field_49608 + f Lnet/minecraft/core/component/DataComponentType; ENTITY_DATA M field_49609 + f Lnet/minecraft/core/component/DataComponentType; BUCKET_ENTITY_DATA N field_49610 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_ENTITY_DATA O field_49611 + f Lnet/minecraft/core/component/DataComponentType; INSTRUMENT P field_49612 + f Lnet/minecraft/core/component/DataComponentType; OMINOUS_BOTTLE_AMPLIFIER Q field_50238 + f Lnet/minecraft/core/component/DataComponentType; JUKEBOX_PLAYABLE R field_52175 + f Lnet/minecraft/core/component/DataComponentType; RECIPES S field_49613 + f Lnet/minecraft/core/component/DataComponentType; LODESTONE_TRACKER T field_49614 + f Lnet/minecraft/core/component/DataComponentType; FIREWORK_EXPLOSION U field_49615 + f Lnet/minecraft/core/component/DataComponentType; FIREWORKS V field_49616 + f Lnet/minecraft/core/component/DataComponentType; PROFILE W field_49617 + f Lnet/minecraft/core/component/DataComponentType; NOTE_BLOCK_SOUND X field_49618 + f Lnet/minecraft/core/component/DataComponentType; BANNER_PATTERNS Y field_49619 + f Lnet/minecraft/core/component/DataComponentType; BASE_COLOR Z field_49620 + f Lnet/minecraft/util/EncoderCache; ENCODER_CACHE a field_51518 + f Lnet/minecraft/core/component/DataComponentType; POT_DECORATIONS aa field_49621 + f Lnet/minecraft/core/component/DataComponentType; CONTAINER ab field_49622 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_STATE ac field_49623 + f Lnet/minecraft/core/component/DataComponentType; BEES ad field_49624 + f Lnet/minecraft/core/component/DataComponentType; LOCK ae field_49625 + f Lnet/minecraft/core/component/DataComponentType; CONTAINER_LOOT af field_49626 + f Lnet/minecraft/core/component/DataComponentMap; COMMON_ITEM_COMPONENTS ag field_49627 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_DATA b field_49628 + f Lnet/minecraft/core/component/DataComponentType; MAX_STACK_SIZE c field_50071 + f Lnet/minecraft/core/component/DataComponentType; MAX_DAMAGE d field_50072 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE e field_49629 + f Lnet/minecraft/core/component/DataComponentType; UNBREAKABLE f field_49630 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_NAME g field_49631 + f Lnet/minecraft/core/component/DataComponentType; ITEM_NAME h field_50239 + f Lnet/minecraft/core/component/DataComponentType; LORE i field_49632 + f Lnet/minecraft/core/component/DataComponentType; RARITY j field_50073 + f Lnet/minecraft/core/component/DataComponentType; ENCHANTMENTS k field_49633 + f Lnet/minecraft/core/component/DataComponentType; CAN_PLACE_ON l field_49634 + f Lnet/minecraft/core/component/DataComponentType; CAN_BREAK m field_49635 + f Lnet/minecraft/core/component/DataComponentType; ATTRIBUTE_MODIFIERS n field_49636 + f Lnet/minecraft/core/component/DataComponentType; CUSTOM_MODEL_DATA o field_49637 + f Lnet/minecraft/core/component/DataComponentType; HIDE_ADDITIONAL_TOOLTIP p field_49638 + f Lnet/minecraft/core/component/DataComponentType; HIDE_TOOLTIP q field_50074 + f Lnet/minecraft/core/component/DataComponentType; REPAIR_COST r field_49639 + f Lnet/minecraft/core/component/DataComponentType; CREATIVE_SLOT_LOCK s field_49640 + f Lnet/minecraft/core/component/DataComponentType; ENCHANTMENT_GLINT_OVERRIDE t field_49641 + f Lnet/minecraft/core/component/DataComponentType; INTANGIBLE_PROJECTILE u field_49642 + f Lnet/minecraft/core/component/DataComponentType; FOOD v field_50075 + f Lnet/minecraft/core/component/DataComponentType; FIRE_RESISTANT w field_50076 + f Lnet/minecraft/core/component/DataComponentType; TOOL x field_50077 + f Lnet/minecraft/core/component/DataComponentType; STORED_ENCHANTMENTS y field_49643 + f Lnet/minecraft/core/component/DataComponentType; DYED_COLOR z field_49644 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57931 A method_57931 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57932 B method_57932 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57884 C method_57884 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57885 D method_57885 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57886 E method_57886 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57887 F method_57887 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57888 G method_57888 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57889 H method_57889 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58564 I method_58564 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58565 J method_58565 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58566 K method_58566 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57890 L method_57890 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57891 M method_57891 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57892 N method_57892 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57893 O method_57893 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58567 P method_58567 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57894 Q method_57894 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57895 R method_57895 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57896 S method_57896 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57897 T method_57897 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57898 U method_57898 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57899 V method_57899 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58568 W method_58568 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57900 X method_57900 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58763 Y method_58763 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57901 Z method_57901 + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/core/component/DataComponentType; register a method_57906 + p 0 name + p 1 builder + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/component/DataComponentType; bootstrap a method_57905 + p 0 registry + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57907 a method_57907 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57902 aa method_57902 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57903 ab method_57903 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58569 ac method_58569 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58570 ad method_58570 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57904 ae method_57904 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57908 b method_57908 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57909 c method_57909 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57910 d method_57910 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57911 e method_57911 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57912 f method_57912 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57913 g method_57913 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57914 h method_57914 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57915 i method_57915 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57916 j method_57916 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57917 k method_57917 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57918 l method_57918 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57919 m method_57919 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57920 n method_57920 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60914 o method_60914 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_58764 p method_58764 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57921 q method_57921 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57922 r method_57922 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57923 s method_57923 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57924 t method_57924 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57925 u method_57925 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57926 v method_57926 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57927 w method_57927 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57928 x method_57928 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57929 y method_57929 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_57930 z method_57930 + m ()V + m ()V +c net/minecraft/core/component/PatchedDataComponentMap kr net/minecraft/class_9335 + f Lnet/minecraft/core/component/DataComponentMap; prototype c field_49654 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; patch d field_49655 + f Z copyOnWrite e field_49656 + m (Lnet/minecraft/core/component/DataComponentMap;)V setAll a method_57933 + p 1 map + m (Lnet/minecraft/core/component/DataComponentMap;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;)Z isPatchSanitized a method_57934 + p 0 prototype + p 1 map + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentPatch;)Lnet/minecraft/core/component/PatchedDataComponentMap; fromPatch a method_57935 + p 0 prototype + p 1 patch + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyPatch a method_57936 + p 1 patch + m (Lnet/minecraft/core/component/DataComponentType;Ljava/util/Optional;)V applyPatch a method_57937 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentPatch;)V restorePatch b method_59772 + p 1 patch + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; set b method_57938 + p 1 component + p 2 value + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; remove d method_57939 + p 1 component + m ()Lnet/minecraft/core/component/DataComponentPatch; asPatch f method_57940 + m ()Lnet/minecraft/core/component/PatchedDataComponentMap; copy g method_57941 + m ()V ensureMapOwnership h method_57942 + m (Lnet/minecraft/core/component/DataComponentMap;)V + p 1 prototype + m (Lnet/minecraft/core/component/DataComponentMap;Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap;Z)V + p 1 prototype + p 2 patch + p 3 copyOnWtite +c net/minecraft/core/component/TypedDataComponent ks net/minecraft/class_9336 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49657 + f Lnet/minecraft/core/component/DataComponentType; type b comp_2443 + f Ljava/lang/Object; value c comp_2444 + m ()Lnet/minecraft/core/component/DataComponentType; type a comp_2443 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; encodeValue a method_57943 + p 1 ops + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/component/TypedDataComponent; fromEntryUnchecked a method_57944 + p 0 entry + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/core/component/TypedDataComponent; createUnchecked a method_57945 + p 0 type + p 1 value + m (Lnet/minecraft/core/component/PatchedDataComponentMap;)V applyTo a method_57946 + p 1 map + m ()Ljava/lang/Object; value b comp_2444 + m ()Ljava/lang/String; method_57947 c method_57947 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)V + m ()V +c net/minecraft/core/component/TypedDataComponent$1 ks$1 net/minecraft/class_9336$1 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/component/TypedDataComponent; decode a method_57948 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/core/component/TypedDataComponent; decodeTyped a method_57949 + p 0 buffer + p 1 component + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/TypedDataComponent;)V encode a method_57950 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/component/TypedDataComponent;)V encodeCap b method_57951 + p 0 buffer + p 1 component + m ()V +c net/minecraft/core/component/package-info kt net/minecraft/class_9337 +c net/minecraft/core/dispenser/BlockSource ku net/minecraft/class_2342 + f Lnet/minecraft/server/level/ServerLevel; level a comp_1967 + f Lnet/minecraft/core/BlockPos; pos b comp_1968 + f Lnet/minecraft/world/level/block/state/BlockState; state c comp_1969 + f Lnet/minecraft/world/level/block/entity/DispenserBlockEntity; blockEntity d comp_1970 + m ()Lnet/minecraft/world/phys/Vec3; center a method_53906 + m ()Lnet/minecraft/server/level/ServerLevel; level b comp_1967 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1968 + m ()Lnet/minecraft/world/level/block/state/BlockState; state d comp_1969 + m ()Lnet/minecraft/world/level/block/entity/DispenserBlockEntity; blockEntity e comp_1970 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/DispenserBlockEntity;)V +c net/minecraft/core/dispenser/BoatDispenseItemBehavior kv net/minecraft/class_2967 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_13360 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; type d field_13361 + f Z isChestBoat e field_38465 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)V + p 1 type + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)V + p 1 type + p 2 isChestBoat +c net/minecraft/core/dispenser/DefaultDispenseItemBehavior kw net/minecraft/class_2347 + f I DEFAULT_ACCURACY c field_51916 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;Lnet/minecraft/core/Position;)V spawnItem a method_10134 + p 0 level + p 1 stack + p 2 speed + p 3 facing + p 4 position + m (Lnet/minecraft/core/dispenser/BlockSource;)V playSound a method_10136 + p 1 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; execute a method_10135 + p 1 blockSource + p 2 item + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; consumeWithRemainder a method_60577 + p 1 blockSource + p 2 stack + p 3 remainder + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)V playAnimation a method_10133 + p 1 blockSource + p 2 direction + m (Lnet/minecraft/core/dispenser/BlockSource;)V playDefaultSound b method_60578 + p 0 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)V addToInventoryOrDispense b method_60579 + p 1 blockSource + p 2 remainder + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)V playDefaultAnimation b method_60580 + p 0 blockSource + p 1 direction + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior kx net/minecraft/class_2357 + f Lorg/slf4j/Logger; LOGGER a field_34020 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; NOOP b field_16902 + m ()V bootStrap a method_18346 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_16812 a method_16812 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$1 kx$1 net/minecraft/class_2357$1 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$10 kx$2 net/minecraft/class_2357$2 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$11 kx$3 net/minecraft/class_2357$3 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$12 kx$4 net/minecraft/class_2357$4 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$13 kx$5 net/minecraft/class_2357$5 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$14 kx$6 net/minecraft/class_2357$6 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_58770 a method_58770 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; takeLiquid b method_58771 + p 1 source + p 2 emptyItem + p 3 fullItem + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$15 kx$7 net/minecraft/class_2357$7 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$16 kx$8 net/minecraft/class_2357$8 + m (Lnet/minecraft/world/item/Item;)V method_58772 a method_58772 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$17 kx$9 net/minecraft/class_2357$9 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$18 kx$10 net/minecraft/class_2357$10 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_49137 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$2 kx$11 net/minecraft/class_2357$11 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/decoration/ArmorStand;)V method_58765 a method_58765 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$3 kx$12 net/minecraft/class_2357$12 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_58766 a method_58766 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$4 kx$13 net/minecraft/class_2357$13 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Z method_58767 a method_58767 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$5 kx$14 net/minecraft/class_2357$14 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)Z method_58768 a method_58768 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$6 kx$15 net/minecraft/class_2357$15 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_50240 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$7 kx$16 net/minecraft/class_2357$16 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$8 kx$17 net/minecraft/class_2357$17 + m (Lnet/minecraft/world/item/Item;)V method_58769 a method_58769 + m ()V +c net/minecraft/core/dispenser/DispenseItemBehavior$9 kx$18 net/minecraft/class_2357$18 + m ()V +c net/minecraft/core/dispenser/OptionalDispenseItemBehavior ky net/minecraft/class_2969 + f Z success c field_13364 + m (Z)V setSuccess a method_27955 + p 1 success + m ()Z isSuccess b method_27954 + m ()V +c net/minecraft/core/dispenser/ProjectileDispenseBehavior kz net/minecraft/class_2965 + f Lnet/minecraft/world/item/ProjectileItem; projectileItem c field_50243 + f Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; dispenseConfig d field_50244 + m (Lnet/minecraft/world/item/Item;)V + p 1 projectile +c net/minecraft/core/dispenser/ShearsDispenseItemBehavior la net/minecraft/class_5168 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z tryShearBeehive a method_27162 + p 0 level + p 1 pos + m (Lnet/minecraft/world/item/Item;)V method_56167 a method_56167 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40054 a method_40054 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z tryShearLivingEntity b method_27163 + p 0 level + p 1 pos + m ()V +c net/minecraft/core/dispenser/ShulkerBoxDispenseBehavior lb net/minecraft/class_2970 + f Lorg/slf4j/Logger; LOGGER c field_33680 + m ()V + m ()V +c net/minecraft/core/dispenser/package-info lc net/minecraft/class_6284 +c net/minecraft/core/package-info ld net/minecraft/class_6285 +c net/minecraft/core/particles/BlockParticleOption le net/minecraft/class_2388 + f Lcom/mojang/serialization/Codec; BLOCK_STATE_CODEC a field_51463 + f Lnet/minecraft/core/particles/ParticleType; type b field_11183 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_11182 + m (Lnet/minecraft/core/particles/BlockParticleOption;)Lnet/minecraft/world/level/block/state/BlockState; method_56168 a method_56168 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_29128 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/particles/BlockParticleOption; method_56169 a method_56169 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState b method_10278 + m (Lnet/minecraft/core/particles/BlockParticleOption;)Lnet/minecraft/world/level/block/state/BlockState; method_29127 b method_29127 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56170 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/particles/BlockParticleOption; method_29129 b method_29129 + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 state + m ()V +c net/minecraft/core/particles/ColorParticleOption lf net/minecraft/class_9381 + f Lnet/minecraft/core/particles/ParticleType; type a field_49909 + f I color b field_49910 + m (Lnet/minecraft/core/particles/ColorParticleOption;)Ljava/lang/Integer; method_58253 a method_58253 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_58254 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;FFF)Lnet/minecraft/core/particles/ColorParticleOption; create a method_58255 + p 0 type + p 1 red + p 2 green + p 3 blue + m (Lnet/minecraft/core/particles/ParticleType;I)Lnet/minecraft/core/particles/ColorParticleOption; create a method_58256 + p 0 type + p 1 color + m (Lnet/minecraft/core/particles/ParticleType;Ljava/lang/Integer;)Lnet/minecraft/core/particles/ColorParticleOption; method_58258 a method_58258 + m ()F getRed b method_58259 + m (Lnet/minecraft/core/particles/ColorParticleOption;)Ljava/lang/Integer; method_58260 b method_58260 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_58261 + p 0 type + m (Lnet/minecraft/core/particles/ParticleType;Ljava/lang/Integer;)Lnet/minecraft/core/particles/ColorParticleOption; method_58262 b method_58262 + m ()F getGreen c method_58263 + m ()F getBlue d method_58264 + m ()F getAlpha e method_58265 + m (Lnet/minecraft/core/particles/ParticleType;I)V + p 1 type + p 2 color +c net/minecraft/core/particles/DustColorTransitionOptions lg net/minecraft/class_5743 + f Lorg/joml/Vector3f; SCULK_PARTICLE_COLOR a field_28267 + f Lnet/minecraft/core/particles/DustColorTransitionOptions; SCULK_TO_REDSTONE b field_28268 + f Lcom/mojang/serialization/MapCodec; CODEC c field_28269 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48454 + f Lorg/joml/Vector3f; fromColor h field_51491 + f Lorg/joml/Vector3f; toColor i field_28271 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33107 a method_33107 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_56172 a method_56172 + m ()Lorg/joml/Vector3f; getFromColor b method_33110 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_56173 b method_56173 + m ()Lorg/joml/Vector3f; getToColor c method_33112 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_33109 c method_33109 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;)Lorg/joml/Vector3f; method_33111 d method_33111 + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;F)V + p 1 color + p 2 toColor + p 3 scale + m ()V +c net/minecraft/core/particles/DustParticleOptions lh net/minecraft/class_2390 + f Lorg/joml/Vector3f; REDSTONE_PARTICLE_COLOR a field_28272 + f Lnet/minecraft/core/particles/DustParticleOptions; REDSTONE b field_11188 + f Lcom/mojang/serialization/MapCodec; CODEC c field_25124 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48455 + f Lorg/joml/Vector3f; color h field_51492 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33115 a method_33115 + m (Lnet/minecraft/core/particles/DustParticleOptions;)Lorg/joml/Vector3f; method_56175 a method_56175 + m ()Lorg/joml/Vector3f; getColor b method_59843 + m (Lnet/minecraft/core/particles/DustParticleOptions;)Lorg/joml/Vector3f; method_33117 b method_33117 + m (Lorg/joml/Vector3f;F)V + p 1 color + p 2 scale + m ()V +c net/minecraft/core/particles/ItemParticleOption li net/minecraft/class_2392 + f Lcom/mojang/serialization/Codec; ITEM_CODEC a field_51464 + f Lnet/minecraft/core/particles/ParticleType; type b field_11193 + f Lnet/minecraft/world/item/ItemStack; itemStack c field_11192 + m (Lnet/minecraft/core/particles/ItemParticleOption;)Lnet/minecraft/world/item/ItemStack; method_56176 a method_56176 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; codec a method_29136 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/particles/ItemParticleOption; method_56177 a method_56177 + m ()Lnet/minecraft/world/item/ItemStack; getItem b method_10289 + m (Lnet/minecraft/core/particles/ItemParticleOption;)Lnet/minecraft/world/item/ItemStack; method_29135 b method_29135 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56178 + p 0 particleType + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/particles/ItemParticleOption; method_29137 b method_29137 + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/world/item/ItemStack;)V + p 1 type + p 2 itemStack + m ()V +c net/minecraft/core/particles/ParticleGroup lj net/minecraft/class_5878 + f Lnet/minecraft/core/particles/ParticleGroup; SPORE_BLOSSOM a field_29077 + f I limit b field_29078 + m ()I getLimit a method_34045 + m (I)V + p 1 limit + m ()V +c net/minecraft/core/particles/ParticleOptions lk net/minecraft/class_2394 + m ()Lnet/minecraft/core/particles/ParticleType; getType a method_10295 +c net/minecraft/core/particles/ParticleType ll net/minecraft/class_2396 + f Z overrideLimiter a field_11196 + m ()Z getOverrideLimiter b method_10299 + m ()Lcom/mojang/serialization/MapCodec; codec c method_29138 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec d method_56179 + m (Z)V + p 1 overrideLimitter +c net/minecraft/core/particles/ParticleTypes lm net/minecraft/class_2398 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST_EMITTER_SMALL A field_49139 + f Lnet/minecraft/core/particles/SimpleParticleType; SONIC_BOOM B field_38908 + f Lnet/minecraft/core/particles/ParticleType; FALLING_DUST C field_11206 + f Lnet/minecraft/core/particles/SimpleParticleType; FIREWORK D field_11248 + f Lnet/minecraft/core/particles/SimpleParticleType; FISHING E field_11244 + f Lnet/minecraft/core/particles/SimpleParticleType; FLAME F field_11240 + f Lnet/minecraft/core/particles/SimpleParticleType; INFESTED G field_50245 + f Lnet/minecraft/core/particles/SimpleParticleType; CHERRY_LEAVES H field_43379 + f Lnet/minecraft/core/particles/SimpleParticleType; SCULK_SOUL I field_38002 + f Lnet/minecraft/core/particles/ParticleType; SCULK_CHARGE J field_38003 + f Lnet/minecraft/core/particles/SimpleParticleType; SCULK_CHARGE_POP K field_38004 + f Lnet/minecraft/core/particles/SimpleParticleType; SOUL_FIRE_FLAME L field_22246 + f Lnet/minecraft/core/particles/SimpleParticleType; SOUL M field_23114 + f Lnet/minecraft/core/particles/SimpleParticleType; FLASH N field_17909 + f Lnet/minecraft/core/particles/SimpleParticleType; HAPPY_VILLAGER O field_11211 + f Lnet/minecraft/core/particles/SimpleParticleType; COMPOSTER P field_17741 + f Lnet/minecraft/core/particles/SimpleParticleType; HEART Q field_11201 + f Lnet/minecraft/core/particles/SimpleParticleType; INSTANT_EFFECT R field_11213 + f Lnet/minecraft/core/particles/ParticleType; ITEM S field_11218 + f Lnet/minecraft/core/particles/ParticleType; VIBRATION T field_28275 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_SLIME U field_11246 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_COBWEB V field_50246 + f Lnet/minecraft/core/particles/SimpleParticleType; ITEM_SNOWBALL W field_11230 + f Lnet/minecraft/core/particles/SimpleParticleType; LARGE_SMOKE X field_11237 + f Lnet/minecraft/core/particles/SimpleParticleType; LAVA Y field_11239 + f Lnet/minecraft/core/particles/SimpleParticleType; MYCELIUM Z field_11219 + f Lnet/minecraft/core/particles/SimpleParticleType; ASH aA field_22247 + f Lnet/minecraft/core/particles/SimpleParticleType; CRIMSON_SPORE aB field_22248 + f Lnet/minecraft/core/particles/SimpleParticleType; WARPED_SPORE aC field_22249 + f Lnet/minecraft/core/particles/SimpleParticleType; SPORE_BLOSSOM_AIR aD field_28803 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_OBSIDIAN_TEAR aE field_22446 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_OBSIDIAN_TEAR aF field_22447 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_OBSIDIAN_TEAR aG field_22448 + f Lnet/minecraft/core/particles/SimpleParticleType; REVERSE_PORTAL aH field_23190 + f Lnet/minecraft/core/particles/SimpleParticleType; WHITE_ASH aI field_23956 + f Lnet/minecraft/core/particles/SimpleParticleType; SMALL_FLAME aJ field_27783 + f Lnet/minecraft/core/particles/SimpleParticleType; SNOWFLAKE aK field_28013 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_DRIPSTONE_LAVA aL field_28076 + f Lnet/minecraft/core/particles/SimpleParticleType; ANGRY_VILLAGER a field_11231 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_DRIPSTONE_LAVA aM field_28077 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_DRIPSTONE_WATER aN field_28078 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_DRIPSTONE_WATER aO field_28079 + f Lnet/minecraft/core/particles/SimpleParticleType; GLOW_SQUID_INK aP field_28478 + f Lnet/minecraft/core/particles/SimpleParticleType; GLOW aQ field_28479 + f Lnet/minecraft/core/particles/SimpleParticleType; WAX_ON aR field_29642 + f Lnet/minecraft/core/particles/SimpleParticleType; WAX_OFF aS field_29643 + f Lnet/minecraft/core/particles/SimpleParticleType; ELECTRIC_SPARK aT field_29644 + f Lnet/minecraft/core/particles/SimpleParticleType; SCRAPE aU field_29645 + f Lnet/minecraft/core/particles/ParticleType; SHRIEK aV field_38357 + f Lnet/minecraft/core/particles/SimpleParticleType; EGG_CRACK aW field_43380 + f Lnet/minecraft/core/particles/SimpleParticleType; DUST_PLUME aX field_46763 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_SPAWNER_DETECTED_PLAYER aY field_47493 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_SPAWNER_DETECTED_PLAYER_OMINOUS aZ field_50247 + f Lnet/minecraft/core/particles/SimpleParticleType; NOTE aa field_11224 + f Lnet/minecraft/core/particles/SimpleParticleType; POOF ab field_11203 + f Lnet/minecraft/core/particles/SimpleParticleType; PORTAL ac field_11214 + f Lnet/minecraft/core/particles/SimpleParticleType; RAIN ad field_11242 + f Lnet/minecraft/core/particles/SimpleParticleType; SMOKE ae field_11251 + f Lnet/minecraft/core/particles/SimpleParticleType; WHITE_SMOKE af field_46911 + f Lnet/minecraft/core/particles/SimpleParticleType; SNEEZE ag field_11234 + f Lnet/minecraft/core/particles/SimpleParticleType; SPIT ah field_11228 + f Lnet/minecraft/core/particles/SimpleParticleType; SQUID_INK ai field_11233 + f Lnet/minecraft/core/particles/SimpleParticleType; SWEEP_ATTACK aj field_11227 + f Lnet/minecraft/core/particles/SimpleParticleType; TOTEM_OF_UNDYING ak field_11220 + f Lnet/minecraft/core/particles/SimpleParticleType; UNDERWATER al field_11210 + f Lnet/minecraft/core/particles/SimpleParticleType; SPLASH am field_11202 + f Lnet/minecraft/core/particles/SimpleParticleType; WITCH an field_11249 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE_POP ao field_11241 + f Lnet/minecraft/core/particles/SimpleParticleType; CURRENT_DOWN ap field_11243 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE_COLUMN_UP aq field_11238 + f Lnet/minecraft/core/particles/SimpleParticleType; NAUTILUS ar field_11229 + f Lnet/minecraft/core/particles/SimpleParticleType; DOLPHIN as field_11222 + f Lnet/minecraft/core/particles/SimpleParticleType; CAMPFIRE_COSY_SMOKE at field_17430 + f Lnet/minecraft/core/particles/SimpleParticleType; CAMPFIRE_SIGNAL_SMOKE au field_17431 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_HONEY av field_20534 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_HONEY aw field_20535 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_HONEY ax field_20536 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_NECTAR ay field_20537 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_SPORE_BLOSSOM az field_28802 + f Lnet/minecraft/core/particles/ParticleType; BLOCK b field_11217 + f Lnet/minecraft/core/particles/SimpleParticleType; VAULT_CONNECTION ba field_48975 + f Lnet/minecraft/core/particles/ParticleType; DUST_PILLAR bb field_50248 + f Lnet/minecraft/core/particles/SimpleParticleType; OMINOUS_SPAWNING bc field_50249 + f Lnet/minecraft/core/particles/SimpleParticleType; RAID_OMEN bd field_50250 + f Lnet/minecraft/core/particles/SimpleParticleType; TRIAL_OMEN be field_50251 + f Lcom/mojang/serialization/Codec; CODEC bf field_25125 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC bg field_48456 + f Lnet/minecraft/core/particles/ParticleType; BLOCK_MARKER c field_35434 + f Lnet/minecraft/core/particles/SimpleParticleType; BUBBLE d field_11247 + f Lnet/minecraft/core/particles/SimpleParticleType; CLOUD e field_11204 + f Lnet/minecraft/core/particles/SimpleParticleType; CRIT f field_11205 + f Lnet/minecraft/core/particles/SimpleParticleType; DAMAGE_INDICATOR g field_11209 + f Lnet/minecraft/core/particles/SimpleParticleType; DRAGON_BREATH h field_11216 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_LAVA i field_11223 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_LAVA j field_18304 + f Lnet/minecraft/core/particles/SimpleParticleType; LANDING_LAVA k field_18305 + f Lnet/minecraft/core/particles/SimpleParticleType; DRIPPING_WATER l field_11232 + f Lnet/minecraft/core/particles/SimpleParticleType; FALLING_WATER m field_18306 + f Lnet/minecraft/core/particles/ParticleType; DUST n field_11212 + f Lnet/minecraft/core/particles/ParticleType; DUST_COLOR_TRANSITION o field_28276 + f Lnet/minecraft/core/particles/SimpleParticleType; EFFECT p field_11245 + f Lnet/minecraft/core/particles/SimpleParticleType; ELDER_GUARDIAN q field_11250 + f Lnet/minecraft/core/particles/SimpleParticleType; ENCHANTED_HIT r field_11208 + f Lnet/minecraft/core/particles/SimpleParticleType; ENCHANT s field_11215 + f Lnet/minecraft/core/particles/SimpleParticleType; END_ROD t field_11207 + f Lnet/minecraft/core/particles/ParticleType; ENTITY_EFFECT u field_11226 + f Lnet/minecraft/core/particles/SimpleParticleType; EXPLOSION_EMITTER v field_11221 + f Lnet/minecraft/core/particles/SimpleParticleType; EXPLOSION w field_11236 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST x field_47494 + f Lnet/minecraft/core/particles/SimpleParticleType; SMALL_GUST y field_50252 + f Lnet/minecraft/core/particles/SimpleParticleType; GUST_EMITTER_LARGE z field_49140 + m (Ljava/lang/String;Z)Lnet/minecraft/core/particles/SimpleParticleType; register a method_10303 + p 0 key + p 1 overrideLimiter + m (Ljava/lang/String;ZLjava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/core/particles/ParticleType; register a method_42022 + p 0 name + p 1 overrideLimitter + p 2 codecGetter + p 3 streamCodecGetter + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56180 a method_56180 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_42616 b method_42616 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56181 c method_56181 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_33121 d method_33121 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56182 e method_56182 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_42023 f method_42023 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56183 g method_56183 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_33122 h method_33122 + m (Lnet/minecraft/core/particles/ParticleType;)Lnet/minecraft/network/codec/StreamCodec; method_56184 i method_56184 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/MapCodec; method_29139 j method_29139 + m ()V + m ()V +c net/minecraft/core/particles/ParticleTypes$1 lm$1 net/minecraft/class_2398$1 + f Ljava/util/function/Function; val$codec a field_25126 + f Ljava/util/function/Function; val$streamCodec b field_48457 + m (ZLjava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/core/particles/ScalableParticleOptionsBase ln net/minecraft/class_9679 + f F scale a field_51493 + f F MIN_SCALE e field_51494 + f F MAX_SCALE f field_51495 + f Lcom/mojang/serialization/Codec; SCALE g field_51496 + m (Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_59844 a method_59844 + m (Ljava/lang/Float;)Ljava/lang/String; method_59845 b method_59845 + m ()F getScale d method_59846 + m (F)V + p 1 scale + m ()V +c net/minecraft/core/particles/SculkChargeParticleOptions lo net/minecraft/class_7227 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38005 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48458 + f F roll c comp_632 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42024 a method_42024 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;)Ljava/lang/Float; method_56185 a method_56185 + m ()F roll b comp_632 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;)Ljava/lang/Float; method_42025 b method_42025 + m (F)V + m ()V +c net/minecraft/core/particles/ShriekParticleOption lp net/minecraft/class_7290 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38358 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48459 + f I delay c field_38360 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42617 a method_42617 + m (Lnet/minecraft/core/particles/ShriekParticleOption;)Ljava/lang/Integer; method_56186 a method_56186 + m ()I getDelay b method_42619 + m (Lnet/minecraft/core/particles/ShriekParticleOption;)Ljava/lang/Integer; method_42618 b method_42618 + m (I)V + p 1 delay + m ()V +c net/minecraft/core/particles/SimpleParticleType lq net/minecraft/class_2400 + f Lcom/mojang/serialization/MapCodec; codec a field_25127 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec b field_48460 + m ()Lnet/minecraft/core/particles/SimpleParticleType; getType e method_29140 + m (Z)V + p 1 overrideLimiter +c net/minecraft/core/particles/VibrationParticleOption lr net/minecraft/class_5745 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28277 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48461 + f Lcom/mojang/serialization/Codec; SAFE_POSITION_SOURCE_CODEC c field_51465 + f Lnet/minecraft/world/level/gameevent/PositionSource; destination d field_38361 + f I arrivalInTicks e field_38362 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42622 a method_42622 + m (Lnet/minecraft/world/level/gameevent/PositionSource;)Lcom/mojang/serialization/DataResult; method_59773 a method_59773 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getDestination b method_33125 + m ()I getArrivalInTicks c method_42624 + m ()Ljava/lang/String; method_59774 d method_59774 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 destination + p 2 arrivalInTicks + m ()V +c net/minecraft/core/particles/package-info ls net/minecraft/class_6286 +c net/minecraft/core/registries/BuiltInRegistries lt net/minecraft/class_7923 + f Lnet/minecraft/core/DefaultedRegistry; SENSOR_TYPE A field_41130 + f Lnet/minecraft/core/Registry; SCHEDULE B field_41131 + f Lnet/minecraft/core/Registry; ACTIVITY C field_41132 + f Lnet/minecraft/core/Registry; LOOT_POOL_ENTRY_TYPE D field_41133 + f Lnet/minecraft/core/Registry; LOOT_FUNCTION_TYPE E field_41134 + f Lnet/minecraft/core/Registry; LOOT_CONDITION_TYPE F field_41135 + f Lnet/minecraft/core/Registry; LOOT_NUMBER_PROVIDER_TYPE G field_41136 + f Lnet/minecraft/core/Registry; LOOT_NBT_PROVIDER_TYPE H field_41137 + f Lnet/minecraft/core/Registry; LOOT_SCORE_PROVIDER_TYPE I field_41138 + f Lnet/minecraft/core/Registry; FLOAT_PROVIDER_TYPE J field_41139 + f Lnet/minecraft/core/Registry; INT_PROVIDER_TYPE K field_41140 + f Lnet/minecraft/core/Registry; HEIGHT_PROVIDER_TYPE L field_41141 + f Lnet/minecraft/core/Registry; BLOCK_PREDICATE_TYPE M field_41142 + f Lnet/minecraft/core/Registry; CARVER N field_41143 + f Lnet/minecraft/core/Registry; FEATURE O field_41144 + f Lnet/minecraft/core/Registry; STRUCTURE_PLACEMENT P field_41145 + f Lnet/minecraft/core/Registry; STRUCTURE_PIECE Q field_41146 + f Lnet/minecraft/core/Registry; STRUCTURE_TYPE R field_41147 + f Lnet/minecraft/core/Registry; PLACEMENT_MODIFIER_TYPE S field_41148 + f Lnet/minecraft/core/Registry; BLOCKSTATE_PROVIDER_TYPE T field_41149 + f Lnet/minecraft/core/Registry; FOLIAGE_PLACER_TYPE U field_41150 + f Lnet/minecraft/core/Registry; TRUNK_PLACER_TYPE V field_41151 + f Lnet/minecraft/core/Registry; ROOT_PLACER_TYPE W field_41152 + f Lnet/minecraft/core/Registry; TREE_DECORATOR_TYPE X field_41153 + f Lnet/minecraft/core/Registry; FEATURE_SIZE_TYPE Y field_41155 + f Lnet/minecraft/core/Registry; BIOME_SOURCE Z field_41156 + f Lnet/minecraft/core/Registry; REGISTRY aA field_41167 + f Lorg/slf4j/Logger; LOGGER aB field_41168 + f Ljava/util/Map; LOADERS aC field_41169 + f Lnet/minecraft/core/WritableRegistry; WRITABLE_REGISTRY aD field_41170 + f Lnet/minecraft/core/DefaultedRegistry; GAME_EVENT a field_41171 + f Lnet/minecraft/core/Registry; CHUNK_GENERATOR aa field_41157 + f Lnet/minecraft/core/Registry; MATERIAL_CONDITION ab field_41158 + f Lnet/minecraft/core/Registry; MATERIAL_RULE ac field_41159 + f Lnet/minecraft/core/Registry; DENSITY_FUNCTION_TYPE ad field_41160 + f Lnet/minecraft/core/Registry; BLOCK_TYPE ae field_46591 + f Lnet/minecraft/core/Registry; STRUCTURE_PROCESSOR af field_41161 + f Lnet/minecraft/core/Registry; STRUCTURE_POOL_ELEMENT ag field_41162 + f Lnet/minecraft/core/Registry; POOL_ALIAS_BINDING_TYPE ah field_46912 + f Lnet/minecraft/core/Registry; CAT_VARIANT ai field_41163 + f Lnet/minecraft/core/Registry; FROG_VARIANT aj field_41164 + f Lnet/minecraft/core/Registry; INSTRUMENT ak field_41166 + f Lnet/minecraft/core/Registry; DECORATED_POT_PATTERN al field_42940 + f Lnet/minecraft/core/Registry; CREATIVE_MODE_TAB am field_44687 + f Lnet/minecraft/core/Registry; TRIGGER_TYPES an field_47496 + f Lnet/minecraft/core/Registry; NUMBER_FORMAT_TYPE ao field_47555 + f Lnet/minecraft/core/Registry; ARMOR_MATERIAL ap field_48976 + f Lnet/minecraft/core/Registry; DATA_COMPONENT_TYPE aq field_49658 + f Lnet/minecraft/core/Registry; ENTITY_SUB_PREDICATE_TYPE ar field_49911 + f Lnet/minecraft/core/Registry; ITEM_SUB_PREDICATE_TYPE as field_49912 + f Lnet/minecraft/core/Registry; MAP_DECORATION_TYPE at field_50078 + f Lnet/minecraft/core/Registry; ENCHANTMENT_EFFECT_COMPONENT_TYPE au field_51832 + f Lnet/minecraft/core/Registry; ENCHANTMENT_LEVEL_BASED_VALUE_TYPE av field_51833 + f Lnet/minecraft/core/Registry; ENCHANTMENT_ENTITY_EFFECT_TYPE aw field_51834 + f Lnet/minecraft/core/Registry; ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE ax field_51835 + f Lnet/minecraft/core/Registry; ENCHANTMENT_VALUE_EFFECT_TYPE ay field_51836 + f Lnet/minecraft/core/Registry; ENCHANTMENT_PROVIDER_TYPE az field_51837 + f Lnet/minecraft/core/Registry; SOUND_EVENT b field_41172 + f Lnet/minecraft/core/DefaultedRegistry; FLUID c field_41173 + f Lnet/minecraft/core/Registry; MOB_EFFECT d field_41174 + f Lnet/minecraft/core/DefaultedRegistry; BLOCK e field_41175 + f Lnet/minecraft/core/DefaultedRegistry; ENTITY_TYPE f field_41177 + f Lnet/minecraft/core/DefaultedRegistry; ITEM g field_41178 + f Lnet/minecraft/core/Registry; POTION h field_41179 + f Lnet/minecraft/core/Registry; PARTICLE_TYPE i field_41180 + f Lnet/minecraft/core/Registry; BLOCK_ENTITY_TYPE j field_41181 + f Lnet/minecraft/core/Registry; CUSTOM_STAT k field_41183 + f Lnet/minecraft/core/DefaultedRegistry; CHUNK_STATUS l field_41184 + f Lnet/minecraft/core/Registry; RULE_TEST m field_41185 + f Lnet/minecraft/core/Registry; RULE_BLOCK_ENTITY_MODIFIER n field_43381 + f Lnet/minecraft/core/Registry; POS_RULE_TEST o field_41186 + f Lnet/minecraft/core/Registry; MENU p field_41187 + f Lnet/minecraft/core/Registry; RECIPE_TYPE q field_41188 + f Lnet/minecraft/core/Registry; RECIPE_SERIALIZER r field_41189 + f Lnet/minecraft/core/Registry; ATTRIBUTE s field_41190 + f Lnet/minecraft/core/Registry; POSITION_SOURCE_TYPE t field_41191 + f Lnet/minecraft/core/Registry; COMMAND_ARGUMENT_TYPE u field_41192 + f Lnet/minecraft/core/Registry; STAT_TYPE v field_41193 + f Lnet/minecraft/core/DefaultedRegistry; VILLAGER_TYPE w field_41194 + f Lnet/minecraft/core/DefaultedRegistry; VILLAGER_PROFESSION x field_41195 + f Lnet/minecraft/core/Registry; POINT_OF_INTEREST_TYPE y field_41128 + f Lnet/minecraft/core/DefaultedRegistry; MEMORY_MODULE_TYPE z field_41129 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47451 A method_47451 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47452 B method_47452 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47453 C method_47453 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47454 D method_47454 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47455 E method_47455 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47456 F method_47456 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47457 G method_47457 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47459 H method_47459 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47460 I method_47460 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47461 J method_47461 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47462 K method_47462 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_49927 L method_49927 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_60389 M method_60389 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47465 N method_47465 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47466 O method_47466 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47467 P method_47467 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47469 Q method_47469 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47470 R method_47470 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47471 S method_47471 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47472 T method_47472 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47474 U method_47474 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47475 V method_47475 + m ()V bootStrap a method_47476 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55303 a method_55303 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/DefaultedRegistry; registerDefaulted a method_47481 + p 0 key + p 1 defaultKey + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/WritableRegistry; internalRegister a method_47478 + p 0 key + p 1 registry + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/Registry; registerSimple a method_47479 + p 0 key + p 1 bootstrap + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V method_47482 a method_47482 + m (Lnet/minecraft/core/Registry;)V validate a method_47483 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/Registry;)V method_47484 a method_47484 + m (Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;Lnet/minecraft/core/WritableRegistry;)Ljava/lang/Object; method_47485 a method_47485 + m ()V createContents b method_47487 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/DefaultedRegistry; registerDefaultedWithIntrusiveHolders b method_47489 + p 0 key + p 1 defaultKey + p 2 bootstrap + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap;)Lnet/minecraft/core/Registry; registerSimpleWithIntrusiveHolders b method_53495 + p 0 key + p 1 bootstrap + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47492 b method_47492 + m ()V freeze c method_47491 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47493 c method_47493 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47494 d method_47494 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47495 e method_47495 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47496 f method_47496 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47497 g method_47497 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47498 h method_47498 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47499 i method_47499 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47500 j method_47500 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47501 k method_47501 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47502 l method_47502 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47503 m method_47503 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47504 n method_47504 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47505 o method_47505 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47506 p method_47506 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47507 q method_47507 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47508 r method_47508 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47509 s method_47509 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47510 t method_47510 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47511 u method_47511 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47512 v method_47512 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47513 w method_47513 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47514 x method_47514 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47515 y method_47515 + m (Lnet/minecraft/core/Registry;)Ljava/lang/Object; method_47450 z method_47450 + m ()V + m ()V +c net/minecraft/core/registries/BuiltInRegistries$RegistryBootstrap lt$a net/minecraft/class_7923$class_6889 +c net/minecraft/core/registries/Registries lu net/minecraft/class_7924 + f Lnet/minecraft/resources/ResourceKey; FEATURE A field_41267 + f Lnet/minecraft/resources/ResourceKey; FEATURE_SIZE_TYPE B field_41268 + f Lnet/minecraft/resources/ResourceKey; FLOAT_PROVIDER_TYPE C field_41269 + f Lnet/minecraft/resources/ResourceKey; FLUID D field_41270 + f Lnet/minecraft/resources/ResourceKey; FOLIAGE_PLACER_TYPE E field_41271 + f Lnet/minecraft/resources/ResourceKey; FROG_VARIANT F field_41272 + f Lnet/minecraft/resources/ResourceKey; GAME_EVENT G field_41273 + f Lnet/minecraft/resources/ResourceKey; HEIGHT_PROVIDER_TYPE H field_41274 + f Lnet/minecraft/resources/ResourceKey; INSTRUMENT I field_41275 + f Lnet/minecraft/resources/ResourceKey; INT_PROVIDER_TYPE J field_41196 + f Lnet/minecraft/resources/ResourceKey; ITEM K field_41197 + f Lnet/minecraft/resources/ResourceKey; JUKEBOX_SONG L field_52176 + f Lnet/minecraft/resources/ResourceKey; LOOT_CONDITION_TYPE M field_41198 + f Lnet/minecraft/resources/ResourceKey; LOOT_FUNCTION_TYPE N field_41199 + f Lnet/minecraft/resources/ResourceKey; LOOT_NBT_PROVIDER_TYPE O field_41200 + f Lnet/minecraft/resources/ResourceKey; LOOT_NUMBER_PROVIDER_TYPE P field_41201 + f Lnet/minecraft/resources/ResourceKey; LOOT_POOL_ENTRY_TYPE Q field_41202 + f Lnet/minecraft/resources/ResourceKey; LOOT_SCORE_PROVIDER_TYPE R field_41203 + f Lnet/minecraft/resources/ResourceKey; MATERIAL_CONDITION S field_41204 + f Lnet/minecraft/resources/ResourceKey; MATERIAL_RULE T field_41205 + f Lnet/minecraft/resources/ResourceKey; MEMORY_MODULE_TYPE U field_41206 + f Lnet/minecraft/resources/ResourceKey; MENU V field_41207 + f Lnet/minecraft/resources/ResourceKey; MOB_EFFECT W field_41208 + f Lnet/minecraft/resources/ResourceKey; PAINTING_VARIANT X field_41209 + f Lnet/minecraft/resources/ResourceKey; PARTICLE_TYPE Y field_41210 + f Lnet/minecraft/resources/ResourceKey; PLACEMENT_MODIFIER_TYPE Z field_41211 + f Lnet/minecraft/resources/ResourceKey; DATA_COMPONENT_TYPE aA field_49659 + f Lnet/minecraft/resources/ResourceKey; ENTITY_SUB_PREDICATE_TYPE aB field_49913 + f Lnet/minecraft/resources/ResourceKey; ITEM_SUB_PREDICATE_TYPE aC field_49914 + f Lnet/minecraft/resources/ResourceKey; MAP_DECORATION_TYPE aD field_50082 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_EFFECT_COMPONENT_TYPE aE field_51838 + f Lnet/minecraft/resources/ResourceKey; BIOME aF field_41236 + f Lnet/minecraft/resources/ResourceKey; CHAT_TYPE aG field_41237 + f Lnet/minecraft/resources/ResourceKey; CONFIGURED_CARVER aH field_41238 + f Lnet/minecraft/resources/ResourceKey; CONFIGURED_FEATURE aI field_41239 + f Lnet/minecraft/resources/ResourceKey; DENSITY_FUNCTION aJ field_41240 + f Lnet/minecraft/resources/ResourceKey; DIMENSION_TYPE aK field_41241 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT aL field_41265 + f Lnet/minecraft/resources/ResourceLocation; ROOT_REGISTRY_NAME a field_47497 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_PROVIDER aM field_51839 + f Lnet/minecraft/resources/ResourceKey; FLAT_LEVEL_GENERATOR_PRESET aN field_41242 + f Lnet/minecraft/resources/ResourceKey; NOISE_SETTINGS aO field_41243 + f Lnet/minecraft/resources/ResourceKey; NOISE aP field_41244 + f Lnet/minecraft/resources/ResourceKey; PLACED_FEATURE aQ field_41245 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE aR field_41246 + f Lnet/minecraft/resources/ResourceKey; PROCESSOR_LIST aS field_41247 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_SET aT field_41248 + f Lnet/minecraft/resources/ResourceKey; TEMPLATE_POOL aU field_41249 + f Lnet/minecraft/resources/ResourceKey; TRIGGER_TYPE aV field_47498 + f Lnet/minecraft/resources/ResourceKey; TRIM_MATERIAL aW field_42083 + f Lnet/minecraft/resources/ResourceKey; TRIM_PATTERN aX field_42082 + f Lnet/minecraft/resources/ResourceKey; WORLD_PRESET aY field_41250 + f Lnet/minecraft/resources/ResourceKey; MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST aZ field_43089 + f Lnet/minecraft/resources/ResourceKey; POINT_OF_INTEREST_TYPE aa field_41212 + f Lnet/minecraft/resources/ResourceKey; POSITION_SOURCE_TYPE ab field_41213 + f Lnet/minecraft/resources/ResourceKey; POS_RULE_TEST ac field_41214 + f Lnet/minecraft/resources/ResourceKey; POTION ad field_41215 + f Lnet/minecraft/resources/ResourceKey; RECIPE_SERIALIZER ae field_41216 + f Lnet/minecraft/resources/ResourceKey; RECIPE_TYPE af field_41217 + f Lnet/minecraft/resources/ResourceKey; ROOT_PLACER_TYPE ag field_41218 + f Lnet/minecraft/resources/ResourceKey; RULE_TEST ah field_41219 + f Lnet/minecraft/resources/ResourceKey; RULE_BLOCK_ENTITY_MODIFIER ai field_43382 + f Lnet/minecraft/resources/ResourceKey; SCHEDULE aj field_41220 + f Lnet/minecraft/resources/ResourceKey; SENSOR_TYPE ak field_41221 + f Lnet/minecraft/resources/ResourceKey; SOUND_EVENT al field_41225 + f Lnet/minecraft/resources/ResourceKey; STAT_TYPE am field_41226 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PIECE an field_41227 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PLACEMENT ao field_41228 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_POOL_ELEMENT ap field_41229 + f Lnet/minecraft/resources/ResourceKey; POOL_ALIAS_BINDING aq field_46913 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_PROCESSOR ar field_41230 + f Lnet/minecraft/resources/ResourceKey; STRUCTURE_TYPE as field_41231 + f Lnet/minecraft/resources/ResourceKey; TREE_DECORATOR_TYPE at field_41232 + f Lnet/minecraft/resources/ResourceKey; TRUNK_PLACER_TYPE au field_41233 + f Lnet/minecraft/resources/ResourceKey; VILLAGER_PROFESSION av field_41234 + f Lnet/minecraft/resources/ResourceKey; VILLAGER_TYPE aw field_41235 + f Lnet/minecraft/resources/ResourceKey; DECORATED_POT_PATTERN ax field_42941 + f Lnet/minecraft/resources/ResourceKey; NUMBER_FORMAT_TYPE ay field_47556 + f Lnet/minecraft/resources/ResourceKey; ARMOR_MATERIAL az field_48977 + f Lnet/minecraft/resources/ResourceKey; ACTIVITY b field_41222 + f Lnet/minecraft/resources/ResourceKey; DIMENSION ba field_41223 + f Lnet/minecraft/resources/ResourceKey; LEVEL_STEM bb field_41224 + f Lnet/minecraft/resources/ResourceKey; LOOT_TABLE bc field_50079 + f Lnet/minecraft/resources/ResourceKey; ITEM_MODIFIER bd field_50080 + f Lnet/minecraft/resources/ResourceKey; PREDICATE be field_50081 + f Lnet/minecraft/resources/ResourceKey; ADVANCEMENT bf field_52177 + f Lnet/minecraft/resources/ResourceKey; RECIPE bg field_52178 + f Lnet/minecraft/resources/ResourceKey; ATTRIBUTE c field_41251 + f Lnet/minecraft/resources/ResourceKey; BANNER_PATTERN d field_41252 + f Lnet/minecraft/resources/ResourceKey; BIOME_SOURCE e field_41253 + f Lnet/minecraft/resources/ResourceKey; BLOCK f field_41254 + f Lnet/minecraft/resources/ResourceKey; BLOCK_TYPE g field_46592 + f Lnet/minecraft/resources/ResourceKey; BLOCK_ENTITY_TYPE h field_41255 + f Lnet/minecraft/resources/ResourceKey; BLOCK_PREDICATE_TYPE i field_41256 + f Lnet/minecraft/resources/ResourceKey; BLOCK_STATE_PROVIDER_TYPE j field_41257 + f Lnet/minecraft/resources/ResourceKey; CARVER k field_41258 + f Lnet/minecraft/resources/ResourceKey; CAT_VARIANT l field_41259 + f Lnet/minecraft/resources/ResourceKey; WOLF_VARIANT m field_49772 + f Lnet/minecraft/resources/ResourceKey; CHUNK_GENERATOR n field_41260 + f Lnet/minecraft/resources/ResourceKey; CHUNK_STATUS o field_41261 + f Lnet/minecraft/resources/ResourceKey; COMMAND_ARGUMENT_TYPE p field_41262 + f Lnet/minecraft/resources/ResourceKey; CREATIVE_MODE_TAB q field_44688 + f Lnet/minecraft/resources/ResourceKey; CUSTOM_STAT r field_41263 + f Lnet/minecraft/resources/ResourceKey; DAMAGE_TYPE s field_42534 + f Lnet/minecraft/resources/ResourceKey; DENSITY_FUNCTION_TYPE t field_41264 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_ENTITY_EFFECT_TYPE u field_51840 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_LEVEL_BASED_VALUE_TYPE v field_51841 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_LOCATION_BASED_EFFECT_TYPE w field_51842 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_PROVIDER_TYPE x field_51843 + f Lnet/minecraft/resources/ResourceKey; ENCHANTMENT_VALUE_EFFECT_TYPE y field_51844 + f Lnet/minecraft/resources/ResourceKey; ENTITY_TYPE z field_41266 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; levelStemToLevel a method_47516 + p 0 levelStem + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createRegistryKey a method_47517 + p 0 name + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; levelToLevelStem b method_47518 + p 0 level + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; elementsDirPath c method_60915 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; tagsDirPath d method_60916 + p 0 registryKey + m ()V + m ()V +c net/minecraft/core/registries/package-info lv net/minecraft/class_7925 +c net/minecraft/data/BlockFamilies lw net/minecraft/class_5793 + f Lnet/minecraft/data/BlockFamily; EXPOSED_CUT_COPPER A field_28518 + f Lnet/minecraft/data/BlockFamily; WAXED_EXPOSED_COPPER B field_33687 + f Lnet/minecraft/data/BlockFamily; WAXED_EXPOSED_CUT_COPPER C field_28519 + f Lnet/minecraft/data/BlockFamily; WEATHERED_COPPER D field_33688 + f Lnet/minecraft/data/BlockFamily; WEATHERED_CUT_COPPER E field_28520 + f Lnet/minecraft/data/BlockFamily; WAXED_WEATHERED_COPPER F field_33681 + f Lnet/minecraft/data/BlockFamily; WAXED_WEATHERED_CUT_COPPER G field_28521 + f Lnet/minecraft/data/BlockFamily; OXIDIZED_COPPER H field_33682 + f Lnet/minecraft/data/BlockFamily; OXIDIZED_CUT_COPPER I field_28522 + f Lnet/minecraft/data/BlockFamily; WAXED_OXIDIZED_COPPER J field_33683 + f Lnet/minecraft/data/BlockFamily; WAXED_OXIDIZED_CUT_COPPER K field_33419 + f Lnet/minecraft/data/BlockFamily; COBBLESTONE L field_28523 + f Lnet/minecraft/data/BlockFamily; MOSSY_COBBLESTONE M field_28524 + f Lnet/minecraft/data/BlockFamily; DIORITE N field_28525 + f Lnet/minecraft/data/BlockFamily; POLISHED_DIORITE O field_28480 + f Lnet/minecraft/data/BlockFamily; GRANITE P field_28481 + f Lnet/minecraft/data/BlockFamily; POLISHED_GRANITE Q field_28482 + f Lnet/minecraft/data/BlockFamily; TUFF R field_47131 + f Lnet/minecraft/data/BlockFamily; POLISHED_TUFF S field_47132 + f Lnet/minecraft/data/BlockFamily; TUFF_BRICKS T field_47133 + f Lnet/minecraft/data/BlockFamily; NETHER_BRICKS U field_28483 + f Lnet/minecraft/data/BlockFamily; RED_NETHER_BRICKS V field_28484 + f Lnet/minecraft/data/BlockFamily; PRISMARINE W field_28485 + f Lnet/minecraft/data/BlockFamily; PURPUR X field_28486 + f Lnet/minecraft/data/BlockFamily; PRISMARINE_BRICKS Y field_28487 + f Lnet/minecraft/data/BlockFamily; DARK_PRISMARINE Z field_28488 + f Lnet/minecraft/data/BlockFamily; ACACIA_PLANKS a field_28500 + f Lnet/minecraft/data/BlockFamily; QUARTZ aa field_28489 + f Lnet/minecraft/data/BlockFamily; SMOOTH_QUARTZ ab field_28490 + f Lnet/minecraft/data/BlockFamily; SANDSTONE ac field_28491 + f Lnet/minecraft/data/BlockFamily; CUT_SANDSTONE ad field_28492 + f Lnet/minecraft/data/BlockFamily; SMOOTH_SANDSTONE ae field_28493 + f Lnet/minecraft/data/BlockFamily; RED_SANDSTONE af field_28494 + f Lnet/minecraft/data/BlockFamily; CUT_RED_SANDSTONE ag field_28495 + f Lnet/minecraft/data/BlockFamily; SMOOTH_RED_SANDSTONE ah field_28496 + f Lnet/minecraft/data/BlockFamily; STONE ai field_28497 + f Lnet/minecraft/data/BlockFamily; STONE_BRICK aj field_28498 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE ak field_28946 + f Lnet/minecraft/data/BlockFamily; COBBLED_DEEPSLATE al field_29079 + f Lnet/minecraft/data/BlockFamily; POLISHED_DEEPSLATE am field_28947 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE_BRICKS an field_28949 + f Lnet/minecraft/data/BlockFamily; DEEPSLATE_TILES ao field_28948 + f Ljava/util/Map; MAP ap field_28499 + f Ljava/lang/String; RECIPE_GROUP_PREFIX_WOODEN aq field_33117 + f Ljava/lang/String; RECIPE_UNLOCKED_BY_HAS_PLANKS ar field_33118 + f Lnet/minecraft/data/BlockFamily; CHERRY_PLANKS b field_42942 + f Lnet/minecraft/data/BlockFamily; BIRCH_PLANKS c field_28501 + f Lnet/minecraft/data/BlockFamily; CRIMSON_PLANKS d field_28502 + f Lnet/minecraft/data/BlockFamily; JUNGLE_PLANKS e field_28503 + f Lnet/minecraft/data/BlockFamily; OAK_PLANKS f field_28504 + f Lnet/minecraft/data/BlockFamily; DARK_OAK_PLANKS g field_28505 + f Lnet/minecraft/data/BlockFamily; SPRUCE_PLANKS h field_28506 + f Lnet/minecraft/data/BlockFamily; WARPED_PLANKS i field_28507 + f Lnet/minecraft/data/BlockFamily; MANGROVE_PLANKS j field_38007 + f Lnet/minecraft/data/BlockFamily; BAMBOO_PLANKS k field_40589 + f Lnet/minecraft/data/BlockFamily; BAMBOO_MOSAIC l field_40590 + f Lnet/minecraft/data/BlockFamily; MUD_BRICKS m field_38008 + f Lnet/minecraft/data/BlockFamily; ANDESITE n field_28508 + f Lnet/minecraft/data/BlockFamily; POLISHED_ANDESITE o field_28509 + f Lnet/minecraft/data/BlockFamily; BLACKSTONE p field_28510 + f Lnet/minecraft/data/BlockFamily; POLISHED_BLACKSTONE q field_28511 + f Lnet/minecraft/data/BlockFamily; POLISHED_BLACKSTONE_BRICKS r field_28512 + f Lnet/minecraft/data/BlockFamily; BRICKS s field_28513 + f Lnet/minecraft/data/BlockFamily; END_STONE_BRICKS t field_28514 + f Lnet/minecraft/data/BlockFamily; MOSSY_STONE_BRICKS u field_28515 + f Lnet/minecraft/data/BlockFamily; COPPER_BLOCK v field_33684 + f Lnet/minecraft/data/BlockFamily; CUT_COPPER w field_28516 + f Lnet/minecraft/data/BlockFamily; WAXED_COPPER_BLOCK x field_33685 + f Lnet/minecraft/data/BlockFamily; WAXED_CUT_COPPER y field_28517 + f Lnet/minecraft/data/BlockFamily; EXPOSED_COPPER z field_33686 + m ()Ljava/util/stream/Stream; getAllFamilies a method_33467 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; familyBuilder a method_33468 + p 0 baseBlock + m ()V + m ()V +c net/minecraft/data/BlockFamily lx net/minecraft/class_5794 + f Lnet/minecraft/world/level/block/Block; baseBlock a field_28526 + f Ljava/util/Map; variants b field_28527 + f Z generateModel c field_28528 + f Z generateRecipe d field_28529 + f Ljava/lang/String; recipeGroupPrefix e field_28530 + f Ljava/lang/String; recipeUnlockedBy f field_28531 + m ()Lnet/minecraft/world/level/block/Block; getBaseBlock a method_33469 + m (Lnet/minecraft/data/BlockFamily$Variant;)Lnet/minecraft/world/level/block/Block; get a method_33470 + p 1 variant + m ()Ljava/util/Map; getVariants b method_33474 + m ()Z shouldGenerateModel c method_33477 + m ()Z shouldGenerateRecipe d method_33478 + m ()Ljava/util/Optional; getRecipeGroupPrefix e method_33479 + m ()Ljava/util/Optional; getRecipeUnlockedBy f method_33480 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 baseBlock +c net/minecraft/data/BlockFamily$Builder lx$a net/minecraft/class_5794$class_5795 + f Lnet/minecraft/data/BlockFamily; family a field_28532 + m ()Lnet/minecraft/data/BlockFamily; getFamily a method_33481 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; button a method_33482 + p 1 buttonBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; sign a method_33483 + p 1 signBlock + p 2 wallSignBlock + m (Ljava/lang/String;)Lnet/minecraft/data/BlockFamily$Builder; recipeGroupPrefix a method_33484 + p 1 recipeGroupPrefix + m ()Lnet/minecraft/data/BlockFamily$Builder; dontGenerateModel b method_33485 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; chiseled b method_33486 + p 1 chiseledBlock + m (Ljava/lang/String;)Lnet/minecraft/data/BlockFamily$Builder; recipeUnlockedBy b method_33487 + p 1 recipeUnlockedBy + m ()Lnet/minecraft/data/BlockFamily$Builder; dontGenerateRecipe c method_33488 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; mosaic c method_45965 + p 1 mosaicBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; cracked d method_34593 + p 1 crackedBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; cut e method_36544 + p 1 cutBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; door f method_33489 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; customFence g method_45966 + p 1 customFenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; fence h method_33490 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; customFenceGate i method_45967 + p 1 customFenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; fenceGate j method_33491 + p 1 fenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; slab k method_33492 + p 1 slabBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; stairs l method_33493 + p 1 stairsBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; pressurePlate m method_33494 + p 1 pressurePlateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; polished n method_33495 + p 1 polishedBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; trapdoor o method_33496 + p 1 trapdoorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/BlockFamily$Builder; wall p method_33497 + p 1 wallBlock + m (Lnet/minecraft/world/level/block/Block;)V + p 1 baseBlock +c net/minecraft/data/BlockFamily$Variant lx$b net/minecraft/class_5794$class_5796 + f Lnet/minecraft/data/BlockFamily$Variant; BUTTON a field_28533 + f Lnet/minecraft/data/BlockFamily$Variant; CHISELED b field_28534 + f Lnet/minecraft/data/BlockFamily$Variant; CRACKED c field_29503 + f Lnet/minecraft/data/BlockFamily$Variant; CUT d field_33689 + f Lnet/minecraft/data/BlockFamily$Variant; DOOR e field_28535 + f Lnet/minecraft/data/BlockFamily$Variant; CUSTOM_FENCE f field_40592 + f Lnet/minecraft/data/BlockFamily$Variant; FENCE g field_28536 + f Lnet/minecraft/data/BlockFamily$Variant; CUSTOM_FENCE_GATE h field_40593 + f Lnet/minecraft/data/BlockFamily$Variant; FENCE_GATE i field_28537 + f Lnet/minecraft/data/BlockFamily$Variant; MOSAIC j field_40594 + f Lnet/minecraft/data/BlockFamily$Variant; SIGN k field_28538 + f Lnet/minecraft/data/BlockFamily$Variant; SLAB l field_28539 + f Lnet/minecraft/data/BlockFamily$Variant; STAIRS m field_28540 + f Lnet/minecraft/data/BlockFamily$Variant; PRESSURE_PLATE n field_28541 + f Lnet/minecraft/data/BlockFamily$Variant; POLISHED o field_28542 + f Lnet/minecraft/data/BlockFamily$Variant; TRAPDOOR p field_28543 + f Lnet/minecraft/data/BlockFamily$Variant; WALL q field_28544 + f Lnet/minecraft/data/BlockFamily$Variant; WALL_SIGN r field_28545 + f Ljava/lang/String; recipeGroup s field_28546 + f [Lnet/minecraft/data/BlockFamily$Variant; $VALUES t field_28547 + m ()Ljava/lang/String; getRecipeGroup a method_33498 + m ()[Lnet/minecraft/data/BlockFamily$Variant; $values b method_36938 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 variantName + m ()V +c net/minecraft/data/CachedOutput ly net/minecraft/class_7403 + f Lnet/minecraft/data/CachedOutput; NO_CACHE a field_39439 + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V method_44300 a method_44300 + m (Ljava/nio/file/Path;[BLcom/google/common/hash/HashCode;)V writeIfNeeded writeIfNeeded method_43346 + p 1 filePath + p 2 data + p 3 hashCode + m ()V +c net/minecraft/data/DataGenerator lz net/minecraft/class_2403 + f Lorg/slf4j/Logger; LOGGER a field_11275 + f Ljava/nio/file/Path; rootOutputFolder b field_40595 + f Lnet/minecraft/data/PackOutput; vanillaPackOutput c field_40596 + f Ljava/util/Set; allProviderIds d field_40826 + f Ljava/util/Map; providersToRun e field_38909 + f Lnet/minecraft/WorldVersion; version f field_38910 + f Z alwaysGenerate g field_38911 + m ()V run a method_10315 + c Runs all the previously registered data providers. + m (Lnet/minecraft/data/HashCache;Lcom/google/common/base/Stopwatch;Ljava/lang/String;Lnet/minecraft/data/DataProvider;)V method_46563 a method_46563 + m (Z)Lnet/minecraft/data/DataGenerator$PackGenerator; getVanillaPack a method_46564 + p 1 toRun + m (ZLjava/lang/String;)Lnet/minecraft/data/DataGenerator$PackGenerator; getBuiltinDatapack a method_46565 + p 1 toRun + p 2 providerPrefix + m (Ljava/nio/file/Path;Lnet/minecraft/WorldVersion;Z)V + p 1 rootOutputFolder + p 2 version + p 3 alwaysGenerate + m ()V +c net/minecraft/data/DataGenerator$PackGenerator lz$a net/minecraft/class_2403$class_7856 + f Lnet/minecraft/data/DataGenerator; field_40827 a field_40827 + f Z toRun b field_40828 + f Ljava/lang/String; providerPrefix c field_40829 + f Lnet/minecraft/data/PackOutput; output d field_40830 + m (Lnet/minecraft/data/DataProvider$Factory;)Lnet/minecraft/data/DataProvider; addProvider a method_46566 + p 1 factory + m (Lnet/minecraft/data/DataGenerator;ZLjava/lang/String;Lnet/minecraft/data/PackOutput;)V + p 2 toRun + p 3 providerPrefix + p 4 output +c net/minecraft/data/DataProvider ma net/minecraft/class_2405 + f Ljava/util/function/ToIntFunction; FIXED_ORDER_FIELDS a field_39212 + f Ljava/util/Comparator; KEY_COMPARATOR b field_39213 + f Lorg/slf4j/Logger; LOGGER c field_40831 + m ()Ljava/lang/String; getName a method_10321 + c Gets a name for this provider, to use in logging. + m (Lcom/google/gson/JsonElement;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)V method_46567 a method_46567 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_43808 a method_43808 + m (Ljava/lang/String;)Ljava/lang/String; method_43809 a method_43809 + m (Lnet/minecraft/data/CachedOutput;)Ljava/util/concurrent/CompletableFuture; run a method_10319 + p 1 output + m (Lnet/minecraft/data/CachedOutput;Lcom/google/gson/JsonElement;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; saveStable a method_10320 + p 0 output + p 1 json + p 2 path + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; saveStable a method_53496 + p 0 output + p 1 registries + p 2 codec + p 3 value + p 4 path + m ()V +c net/minecraft/data/DataProvider$Factory ma$a net/minecraft/class_2405$class_7857 +c net/minecraft/data/HashCache mb net/minecraft/class_2408 + f Lorg/slf4j/Logger; LOGGER a field_11287 + f Ljava/lang/String; HEADER_MARKER b field_38912 + f Ljava/nio/file/Path; rootDir c field_11285 + f Ljava/nio/file/Path; cacheDir d field_38913 + f Ljava/lang/String; versionId e field_38914 + f Ljava/util/Map; caches f field_40832 + f Ljava/util/Set; cachesToWrite g field_38916 + f Ljava/util/Set; cachePaths h field_38917 + f I initialCount i field_38918 + f I writes j field_40833 + m ()V purgeStaleAndWrite a method_10326 + c Writes the cache file containing the hashes of newly created files to the disk, and deletes any stale files. + m (Ljava/lang/String;)Z shouldRunInThisVersion a method_43347 + p 1 provider + m (Ljava/lang/String;Lnet/minecraft/data/HashCache$UpdateFunction;)Ljava/util/concurrent/CompletableFuture; generateUpdate a method_46570 + p 1 provider + p 2 updateFunction + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/data/HashCache$ProviderCache; readCache a method_43348 + p 0 rootDir + p 1 cachePath + m (Ljava/util/Set;Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;)V method_46571 a method_46571 + m (Lnet/minecraft/data/HashCache$CacheUpdater;Ljava/lang/Object;)Lnet/minecraft/data/HashCache$UpdateResult; method_46568 a method_46568 + m (Lnet/minecraft/data/HashCache$UpdateResult;)V applyUpdate a method_46569 + p 1 updateResult + m (Ljava/lang/String;)Ljava/nio/file/Path; getProviderCachePath b method_43353 + p 1 provider + m (Ljava/nio/file/Path;Ljava/util/Collection;Lnet/minecraft/WorldVersion;)V + p 1 rootDir + p 2 providers + p 3 version + m ()V +c net/minecraft/data/HashCache$1 mb$1 net/minecraft/class_2408$1 + f Lorg/apache/commons/lang3/mutable/MutableInt; val$found a field_48462 + f Ljava/util/Set; val$allowedFiles b field_48463 + f Lorg/apache/commons/lang3/mutable/MutableInt; val$removed c field_48464 + f Lnet/minecraft/data/HashCache; field_48465 d field_48465 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_56187 + m (Lnet/minecraft/data/HashCache;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Set;Lorg/apache/commons/lang3/mutable/MutableInt;)V +c net/minecraft/data/HashCache$CacheUpdater mb$a net/minecraft/class_2408$class_7404 + f Ljava/lang/String; provider b field_40835 + f Lnet/minecraft/data/HashCache$ProviderCache; oldCache c field_38919 + f Lnet/minecraft/data/HashCache$ProviderCacheBuilder; newCache d field_38920 + f Ljava/util/concurrent/atomic/AtomicInteger; writes e field_38921 + f Z closed f field_40836 + m ()Lnet/minecraft/data/HashCache$UpdateResult; close a method_46572 + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Z shouldWrite a method_43355 + p 1 key + p 2 value + m (Lnet/minecraft/data/HashCache;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;)V + p 2 provider + p 3 version + p 4 oldCache +c net/minecraft/data/HashCache$ProviderCache mb$b net/minecraft/class_2408$class_7405 + f Ljava/lang/String; version a comp_729 + f Lcom/google/common/collect/ImmutableMap; data b comp_730 + m ()I count a method_43356 + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/nio/file/Path;Ljava/lang/String;)V method_43361 a method_43361 + m (Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; get a method_43357 + p 1 path + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Lnet/minecraft/data/HashCache$ProviderCache; load a method_43359 + p 0 rootDir + p 1 cachePath + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/lang/String;)V save a method_43360 + p 1 rootDir + p 2 cachePath + p 3 date + m ()Ljava/lang/String; version b comp_729 + m ()Lcom/google/common/collect/ImmutableMap; data c comp_730 + m (Ljava/lang/String;Lcom/google/common/collect/ImmutableMap;)V +c net/minecraft/data/HashCache$ProviderCacheBuilder mb$c net/minecraft/class_2408$class_7858 + f Ljava/lang/String; version a comp_1122 + f Ljava/util/concurrent/ConcurrentMap; data b comp_1123 + m ()Lnet/minecraft/data/HashCache$ProviderCache; build a method_46573 + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)V put a method_46574 + p 1 key + p 2 value + m ()Ljava/lang/String; version b comp_1122 + m ()Ljava/util/concurrent/ConcurrentMap; data c comp_1123 + m (Ljava/lang/String;)V + p 1 version + m (Ljava/lang/String;Ljava/util/concurrent/ConcurrentMap;)V +c net/minecraft/data/HashCache$UpdateFunction mb$d net/minecraft/class_2408$class_7859 +c net/minecraft/data/HashCache$UpdateResult mb$e net/minecraft/class_2408$class_7860 + f Ljava/lang/String; providerId a comp_1124 + f Lnet/minecraft/data/HashCache$ProviderCache; cache b comp_1125 + f I writes c comp_1126 + m ()Ljava/lang/String; providerId a comp_1124 + m ()Lnet/minecraft/data/HashCache$ProviderCache; cache b comp_1125 + m ()I writes c comp_1126 + m (Ljava/lang/String;Lnet/minecraft/data/HashCache$ProviderCache;I)V +c net/minecraft/data/PackOutput mc net/minecraft/class_7784 + f Ljava/nio/file/Path; outputFolder a field_40597 + m ()Ljava/nio/file/Path; getOutputFolder a method_45971 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/PackOutput$PathProvider; createRegistryElementsPathProvider a method_60917 + p 1 registryKey + m (Lnet/minecraft/data/PackOutput$Target;)Ljava/nio/file/Path; getOutputFolder a method_45972 + p 1 target + m (Lnet/minecraft/data/PackOutput$Target;Ljava/lang/String;)Lnet/minecraft/data/PackOutput$PathProvider; createPathProvider a method_45973 + p 1 target + p 2 kind + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/PackOutput$PathProvider; createRegistryTagsPathProvider b method_60918 + p 1 registryKey + m (Ljava/nio/file/Path;)V + p 1 outputFolder +c net/minecraft/data/PackOutput$PathProvider mc$a net/minecraft/class_7784$class_7489 + f Ljava/nio/file/Path; root a field_39365 + f Ljava/lang/String; kind b field_39366 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/nio/file/Path; json a method_44107 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/nio/file/Path; file a method_44108 + p 1 location + p 2 extension + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/data/PackOutput$Target;Ljava/lang/String;)V + p 1 output + p 2 target + p 3 kind +c net/minecraft/data/PackOutput$Target mc$b net/minecraft/class_7784$class_7490 + f Lnet/minecraft/data/PackOutput$Target; DATA_PACK a field_39367 + f Lnet/minecraft/data/PackOutput$Target; RESOURCE_PACK b field_39368 + f Lnet/minecraft/data/PackOutput$Target; REPORTS c field_39369 + f Ljava/lang/String; directory d field_39370 + f [Lnet/minecraft/data/PackOutput$Target; $VALUES e field_39371 + m ()[Lnet/minecraft/data/PackOutput$Target; $values a method_44109 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 directory + m ()V +c net/minecraft/data/advancements/AdvancementProvider md net/minecraft/class_2409 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider d field_39372 + f Ljava/util/List; subProviders e field_11289 + f Ljava/util/concurrent/CompletableFuture; registries f field_40949 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46575 a method_46575 + m (Ljava/util/Set;Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/advancements/AdvancementHolder;)V method_10333 a method_10333 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46809 a method_46809 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)V + p 1 output + p 2 registries + p 3 subProviders +c net/minecraft/data/advancements/AdvancementSubProvider me net/minecraft/class_7785 + m (Ljava/lang/String;)Lnet/minecraft/advancements/AdvancementHolder; createPlaceholder a method_55578 + p 0 location + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/function/Consumer;)V generate a method_10335 + p 1 registries + p 2 writer +c net/minecraft/data/advancements/package-info mf net/minecraft/class_6287 +c net/minecraft/data/advancements/packs/VanillaAdvancementProvider mg net/minecraft/class_7786 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/advancements/AdvancementProvider; create a method_45974 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/advancements/packs/VanillaAdventureAdvancements mh net/minecraft/class_2412 + f Ljava/util/List; MOBS_TO_KILL a field_11294 + f I DISTANCE_FROM_BOTTOM_TO_TOP b field_35091 + f I Y_COORDINATE_AT_TOP c field_35092 + f I Y_COORDINATE_AT_BOTTOM d field_35093 + f I BEDROCK_THICKNESS e field_35094 + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51818 a method_51818 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; smithingWithStyle a method_51689 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/resources/ResourceLocation;)V method_54650 a method_54650 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_55580 a method_55580 + m (Lnet/minecraft/advancements/Advancement$Builder;Lcom/mojang/datafixers/util/Pair;)V method_54651 a method_54651 + m (Lnet/minecraft/advancements/Advancement$Builder;Ljava/util/List;)Lnet/minecraft/advancements/Advancement$Builder; addMobsToKill a method_10336 + p 0 builder + p 1 mobs + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)Lnet/minecraft/advancements/Advancement$Builder; addBiomes a method_10337 + p 0 builder + p 1 levelRegistry + p 2 biomes + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)V method_51690 a method_51690 + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/function/Consumer;Ljava/util/List;)Lnet/minecraft/advancements/AdvancementHolder; createMonsterHunterAdvancement a method_55581 + p 0 advancement + p 1 output + p 2 typesRequired + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)Lnet/minecraft/advancements/Criterion; lookAtThroughItem a method_37315 + p 0 entity + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedBlockReadByComparator a method_51815 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder; method_51816 a method_51816 + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Ljava/util/Optional;)Lnet/minecraft/advancements/Criterion; fireCountAndBystander a method_37316 + p 0 fireCount + p 1 bystander + m (Ljava/util/Set;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)Z method_54652 a method_54652 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51817 a method_51817 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/function/Consumer;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)V createAdventuringTime a method_49356 + p 0 levelRegistry + p 1 writer + p 2 parent + p 3 preset + m (I)[Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; method_51820 b method_51820 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; craftingANewLook b method_51691 + p 0 builder + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; placedComparatorReadingBlock b method_51819 + p 0 block + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; respectingTheRemnantsCriterions c method_51692 + p 0 builder + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaHusbandryAdvancements mi net/minecraft/class_2414 + f Ljava/util/List; BREEDABLE_ANIMALS a field_11296 + f Ljava/util/List; INDIRECTLY_BREEDABLE_ANIMALS b field_38467 + f [Lnet/minecraft/world/item/Item; WAX_SCRAPING_TOOLS c field_33964 + f [Lnet/minecraft/world/item/Item; FISH d field_11295 + f [Lnet/minecraft/world/item/Item; FISH_BUCKETS e field_11297 + f [Lnet/minecraft/world/item/Item; EDIBLE_ITEMS f field_11298 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addLeashedFrogVariants a method_43362 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_48497 a method_48497 + m (Lnet/minecraft/advancements/Advancement$Builder;Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Lnet/minecraft/advancements/Advancement$Builder; addBreedable a method_10342 + p 0 builder + p 1 breedableAnimals + p 2 indirectlyBreedableAnimals + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/Holder$Reference;)V method_16117 a method_16117 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/advancements/Advancement$Builder; addTamedWolfVariants a method_59775 + p 0 builder + p 1 registries + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/function/Consumer;Ljava/util/stream/Stream;Ljava/util/stream/Stream;)Lnet/minecraft/advancements/AdvancementHolder; createBreedAllAnimalsAdvancement a method_47810 + p 0 parent + p 1 writer + p 2 breedableAnimals + p 3 indirectlyBreedableAnimals + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58572 a method_58572 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/resources/ResourceKey;)V method_59776 a method_59776 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFood b method_10341 + c Adds all the items in {@link #EDIBLE_ITEMS} to the given advancement's criteria + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/world/entity/EntityType;)V method_48498 b method_48498 + m (Lnet/minecraft/advancements/Advancement$Builder;Lnet/minecraft/core/Holder$Reference;)V method_43363 b method_43363 + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFishBuckets c method_10340 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addFish d method_10339 + p 0 builder + m (Lnet/minecraft/advancements/Advancement$Builder;)Lnet/minecraft/advancements/Advancement$Builder; addCatVariants e method_16118 + p 0 builder + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaNetherAdvancements mj net/minecraft/class_2416 + f Lnet/minecraft/advancements/critereon/ContextAwarePredicate; DISTRACT_PIGLIN_PLAYER_ARMOR_PREDICATE a field_25712 + m ()V + m ()V +c net/minecraft/data/advancements/packs/VanillaStoryAdvancements mk net/minecraft/class_2417 + m ()V +c net/minecraft/data/advancements/packs/VanillaTheEndAdvancements ml net/minecraft/class_2419 + m ()V +c net/minecraft/data/advancements/packs/package-info mm net/minecraft/class_7787 +c net/minecraft/data/info/BiomeParametersDumpReport mn net/minecraft/class_7228 + f Lorg/slf4j/Logger; LOGGER d field_38012 + f Ljava/nio/file/Path; topPath e field_39373 + f Ljava/util/concurrent/CompletableFuture; registries f field_40950 + f Lcom/mojang/serialization/MapCodec; ENTRY_CODEC g field_43090 + f Lcom/mojang/serialization/Codec; CODEC h field_43091 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46576 a method_46576 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/nio/file/Path; createPath a method_42032 + p 1 location + m (Ljava/nio/file/Path;Ljava/lang/String;)V method_42031 a method_42031 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; dumpValue a method_42030 + p 0 path + p 1 output + p 2 ops + p 3 encoder + p 4 value + m (Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;Lnet/minecraft/world/level/biome/Climate$ParameterList;)V method_49648 a method_49648 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46810 a method_46810 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/info/BlockListReport mo net/minecraft/class_2422 + f Lnet/minecraft/data/PackOutput; output d field_40599 + f Ljava/util/concurrent/CompletableFuture; registries e field_49660 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_57952 a method_57952 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/AssertionError; method_57953 a method_57953 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_57954 a method_57954 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/CommandsReport mp net/minecraft/class_2425 + f Lnet/minecraft/data/PackOutput; output d field_40600 + f Ljava/util/concurrent/CompletableFuture; registries e field_40951 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46811 a method_46811 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/ItemListReport mq net/minecraft/class_9338 + f Lnet/minecraft/data/PackOutput; output d field_49661 + f Ljava/util/concurrent/CompletableFuture; registries e field_49662 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_57955 a method_57955 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_60581 a method_60581 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_57959 a method_57959 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/info/PacketReport mr net/minecraft/class_9827 + f Lnet/minecraft/data/PackOutput; output d field_52278 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/ConnectionProtocol;Ljava/util/List;)V method_61083 a method_61083 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/ProtocolInfo$Unbound;)V method_61084 a method_61084 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/network/protocol/PacketType;I)V method_61085 a method_61085 + m ()Lcom/google/gson/JsonElement; serializePackets b method_61086 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/info/RegistryDumpReport ms net/minecraft/class_2427 + f Lnet/minecraft/data/PackOutput; output d field_40601 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_17174 a method_17174 + m (Lnet/minecraft/core/Registry;)Lcom/google/gson/JsonElement; dumpRegistry a method_17175 + p 0 registry + m (Lnet/minecraft/core/Registry;Lcom/google/gson/JsonObject;Lnet/minecraft/core/Holder$Reference;)V method_40564 a method_40564 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/info/package-info mt net/minecraft/class_6288 +c net/minecraft/data/loot/BlockLootSubProvider mu net/minecraft/class_7788 + c

Interface {@link net.fabricmc.fabric.api.datagen.v1.loot.FabricBlockLootTableGenerator} injected by mod fabric-data-generation-api-v1

+ f Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; HAS_SHEARS a field_40604 + f Lnet/minecraft/core/HolderLookup$Provider; registries b field_51845 + f Ljava/util/Set; explosionResistant c field_40608 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d field_40609 + f Ljava/util/Map; map e field_40610 + f [F NORMAL_LEAVES_SAPLING_CHANCES f field_40605 + f [F NORMAL_LEAVES_STICK_CHANCES g field_40611 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasSilkTouch a method_60390 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTable a method_45976 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; applyExplosionDecay a method_45977 + p 1 item + p 2 functionBuilder + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; applyExplosionCondition a method_45978 + p 1 item + p 2 conditionBuilder + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTable a method_45979 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSlabItemTable a method_45980 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createOreDrop a method_45981 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCropDrops a method_45982 + c If {@code dropGrownCropCondition} fails (i.e. crop is not ready), drops 1 {@code seedsItem}.\nIf {@code dropGrownCropCondition} succeeds (i.e. crop is ready), drops 1 {@code grownCropItem}, and 0-3 {@code seedsItem} with fortune applied. + p 1 cropBlock + p 2 grownCropItem + p 3 seedsItem + p 4 dropGrownCropCondition + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTableWithSilkTouch a method_45983 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSingleItemTableWithSilkTouch a method_45984 + p 1 block + p 2 item + p 3 count + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoublePlantWithSeedDrops a method_45985 + p 1 block + p 2 sheared + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;[F)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createLeavesDrops a method_45986 + c Used for all leaves, drops self with silk touch, otherwise drops the second Block param with the passed chances for fortune levels, adding in sticks. + p 1 leavesBlock + p 2 saplingBlock + p 3 chances + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSinglePropConditionTable a method_45987 + p 1 block + p 2 property + p 3 value + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_45988 + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchDispatchTable a method_45989 + c If the block is mined with Silk Touch, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMultifaceBlockDrops a method_45990 + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSelfDropDispatchTable a method_45991 + c If the condition from {@code conditionBuilder} succeeds, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code alternativeBuilder}. + p 0 block + p 1 conditionBuilder + p 2 alternativeBuilder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_49357 a method_49357 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/Function;)V add a method_45994 + p 1 block + p 2 factory + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_45992 a method_45992 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; doesNotHaveSilkTouch b method_60391 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShearsOnlyDrop b method_45995 + p 0 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createNameableBlockEntityTable b method_45996 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createStemDrops b method_45997 + c Creates a builder that drops the given IItemProvider in amounts between 0 and 3, based on the AGE property. Only used in vanilla for pumpkin and melon stems. + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMushroomBlockDrop b method_45998 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V addNetherVinesDropTable b method_45999 + p 1 vines + p 2 plant + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;[F)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createOakLeavesDrops b method_46000 + c Used for oak and dark oak, same as droppingWithChancesAndSticks but adding in apples. + p 1 oakLeavesBlock + p 2 saplingBlock + p 3 chances + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShearsDispatchTable b method_46001 + c If the block is mined with Shears, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_45993 b method_45993 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; noDrop c method_45975 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchOnlyTable c method_46003 + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createShulkerBoxDrop c method_46004 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createAttachedStemDrops c method_46005 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/ItemLike;)V dropOther c method_46006 + p 1 block + p 2 item + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V otherWhenSilkTouch c method_46007 + p 1 block + p 2 other + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSilkTouchOrShearsDispatchTable c method_46008 + c If the block is mined either with Silk Touch or Shears, drops 1 {@code block}.\nOtherwise, drops loot specified by {@code builder}. + p 1 block + p 2 builder + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_46002 c method_46002 + m ()V generate d method_10379 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPotFlowerItemTable d method_46009 + p 1 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCopperOreDrops d method_46010 + p 1 block + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasShearsOrSilkTouch e method_60392 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createLapisOreDrops e method_46011 + p 1 block + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; doesNotHaveShearsOrSilkTouch f method_60393 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createRedstoneOreDrops f method_46012 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBannerDrop g method_46013 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBeeNestDrop h method_46014 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createBeeHiveDrop i method_46015 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCaveVinesDrop j method_46016 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createGrassDrops k method_46017 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createMangroveLeavesDrops l method_46018 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoublePlantShearsDrop m method_46019 + p 1 sheared + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCandleDrops n method_46020 + p 1 candleBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPetalsDrops o method_49358 + p 1 petalBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createCandleCakeDrops p method_46021 + p 0 candleCakeBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDoorTable q method_46022 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)V dropPottedContents r method_46023 + p 1 flowerPot + m (Lnet/minecraft/world/level/block/Block;)V dropWhenSilkTouch s method_46024 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)V dropSelf t method_46025 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46026 u method_46026 + m (Ljava/util/Set;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 explosionResistant + p 2 enabledFeatures + p 3 registries + m (Ljava/util/Set;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Map;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 explosionResistant + p 2 enabledFeatures + p 3 map + p 4 registries + m ()V +c net/minecraft/data/loot/EntityLootSubProvider mv net/minecraft/class_7789 + f Lnet/minecraft/core/HolderLookup$Provider; registries a field_51846 + f Ljava/util/Set; SPECIAL_LOOT_TABLE_TYPES b field_40613 + f Lnet/minecraft/world/flag/FeatureFlagSet; allowed c field_42084 + f Lnet/minecraft/world/flag/FeatureFlagSet; required d field_42085 + f Ljava/util/Map; map e field_40615 + m ()Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; shouldSmeltLoot a method_60394 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByFrogVariant a method_46030 + p 1 frogVariant + m (Lnet/minecraft/world/entity/EntityType;)Z canHaveLootTable a method_46027 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_46028 + p 1 entityType + p 2 defaultLootTable + p 3 builder + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V add a method_46029 + p 1 entityType + p 2 builder + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createSheepTable a method_46031 + p 0 woolItem + m (Ljava/util/Set;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder$Reference;)V method_46033 a method_46033 + m (Ljava/util/Set;Lnet/minecraft/core/Holder$Reference;Ljava/util/function/BiConsumer;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V method_46032 a method_46032 + m ()V generate b method_10400 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_58573 b method_58573 + m (Lnet/minecraft/world/entity/EntityType;)Ljava/util/Map; method_46035 b method_46035 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByFrog c method_46034 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 required + p 2 registries + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 allowed + p 2 required + p 3 registries + m ()V +c net/minecraft/data/loot/LootTableProvider mw net/minecraft/class_2438 + f Lorg/slf4j/Logger; LOGGER d field_11355 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider e field_39374 + f Ljava/util/Set; requiredTables f field_40617 + f Ljava/util/List; subProviders g field_11354 + f Ljava/util/concurrent/CompletableFuture; registries h field_48978 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46577 a method_46577 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceLocation; sequenceIdForLootTable a method_58574 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_10411 a method_10411 + m (Ljava/lang/String;Ljava/lang/String;)V method_10407 a method_10407 + m (Ljava/util/Map;Lnet/minecraft/data/loot/LootTableProvider$SubProviderEntry;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable$Builder;)V method_10412 a method_10412 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/Map;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/data/loot/LootTableProvider$SubProviderEntry;)V method_10410 a method_10410 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletableFuture; run a method_56883 + p 1 output + p 2 provider + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_10408 a method_10408 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_56884 b method_56884 + m (Lnet/minecraft/data/PackOutput;Ljava/util/Set;Ljava/util/List;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 requiredTables + p 3 subProviders + p 4 registries + m ()V +c net/minecraft/data/loot/LootTableProvider$SubProviderEntry mw$a net/minecraft/class_2438$class_7790 + f Ljava/util/function/Function; provider a comp_1068 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet b comp_1069 + m ()Ljava/util/function/Function; provider a comp_1068 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet b comp_1069 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)V +c net/minecraft/data/loot/LootTableSubProvider mx net/minecraft/class_7791 + m (Ljava/util/function/BiConsumer;)V generate generate method_10399 + p 1 output +c net/minecraft/data/loot/package-info my net/minecraft/class_6289 +c net/minecraft/data/loot/packs/TradeRebalanceChestLoot mz net/minecraft/class_8794 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2785 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; pillagerOutpostLootTable a method_53849 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; desertPyramidLootTable b method_53850 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; ancientCityLootTable c method_53851 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; jungleTempleLootTable d method_53852 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries e comp_2785 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/TradeRebalanceLootTableProvider na net/minecraft/class_8795 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/loot/LootTableProvider; create a method_53853 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaArchaeologyLoot nb net/minecraft/class_8255 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2786 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2786 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaBlockLoot nc net/minecraft/class_2430 + f [F JUNGLE_LEAVES_SAPLING_CHANGES g field_11338 + f Ljava/util/Set; EXPLOSION_RESISTANT h field_11340 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16314 A method_16314 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46182 A method_46182 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16254 B method_16254 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46183 B method_46183 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34594 C method_34594 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46040 C method_46040 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16242 D method_16242 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46041 D method_46041 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34595 E method_34595 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46042 E method_46042 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_43810 F method_43810 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46043 F method_46043 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34047 G method_34047 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46044 G method_46044 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_23230 H method_23230 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46045 H method_46045 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_23231 I method_23231 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46046 I method_46046 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34596 J method_34596 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46047 J method_46047 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_30157 K method_30157 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46048 K method_46048 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34048 L method_34048 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46049 L method_46049 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16324 M method_16324 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46050 M method_46050 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16307 N method_16307 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46051 N method_46051 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16250 O method_16250 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46052 O method_46052 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_26277 P method_26277 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46053 P method_46053 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16290 Q method_16290 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46054 Q method_46054 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16280 R method_16280 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46055 R method_46055 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16266 S method_16266 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46056 S method_46056 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16264 T method_16264 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46057 T method_46057 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16243 U method_16243 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46058 U method_46058 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49950 V method_49950 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46059 V method_46059 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34050 W method_34050 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46060 W method_46060 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_33707 X method_33707 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46061 X method_46061 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49951 Y method_49951 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46062 Y method_46062 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_33708 Z method_33708 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46063 Z method_46063 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43812 a method_43812 + m (Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_49928 a method_49928 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60395 a method_60395 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46066 a method_46066 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16255 aA method_16255 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60396 aA method_60396 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16286 aB method_16286 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60397 aB method_60397 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16235 aC method_16235 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60398 aC method_60398 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34051 aD method_34051 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60399 aD method_60399 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16277 aE method_16277 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60400 aE method_60400 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16241 aF method_16241 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60401 aF method_60401 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16300 aG method_16300 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46117 aG method_46117 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34052 aH method_34052 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49952 aH method_49952 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_29399 aI method_29399 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49953 aI method_49953 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_29400 aJ method_29400 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49954 aJ method_49954 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16328 aK method_16328 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46119 aK method_46119 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16282 aL method_16282 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46120 aL method_46120 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16251 aM method_16251 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46121 aM method_46121 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16302 aN method_16302 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46122 aN method_46122 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16269 aO method_16269 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46067 aO method_46067 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16275 aP method_16275 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46068 aP method_46068 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16283 aQ method_16283 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46069 aQ method_46069 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16252 aR method_16252 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49929 aR method_49929 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16311 aS method_16311 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49930 aS method_49930 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_43813 aT method_43813 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49931 aT method_49931 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49932 aU method_49932 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49933 aV method_49933 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49934 aW method_49934 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49935 aX method_49935 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49936 aY method_49936 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49937 aZ method_49937 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16284 aa method_16284 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46064 aa method_46064 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16303 ab method_16303 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46065 ab method_46065 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16317 ac method_16317 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46093 ac method_46093 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16325 ad method_16325 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46094 ad method_46094 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16245 ae method_16245 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46095 ae method_46095 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34053 af method_34053 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46096 af method_46096 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34054 ag method_34054 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46097 ag method_46097 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34055 ah method_34055 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46098 ah method_46098 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16237 ai method_16237 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46099 ai method_46099 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34056 aj method_34056 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46100 aj method_46100 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16327 ak method_16327 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46101 ak method_46101 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16310 al method_16310 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46102 al method_46102 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16295 am method_16295 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46104 am method_46104 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16233 an method_16233 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46106 an method_46106 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16292 ao method_16292 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46107 ao method_46107 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16273 ap method_16273 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46109 ap method_46109 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16268 aq method_16268 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46111 aq method_46111 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16296 ar method_16296 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46112 ar method_46112 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16232 as method_16232 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46113 as method_46113 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16326 at method_16326 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46114 at method_46114 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16312 au method_16312 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46115 au method_46115 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16316 av method_16316 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60402 av method_60402 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16306 aw method_16306 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60403 aw method_60403 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16246 ax method_16246 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60404 ax method_60404 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16270 ay method_16270 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60405 ay method_60405 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_16263 az method_16263 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60406 az method_60406 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43814 b method_43814 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60407 b method_60407 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46123 b method_46123 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49971 bA method_49971 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49972 bB method_49972 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49973 bC method_49973 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49974 bD method_49974 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49975 bE method_49975 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49976 bF method_49976 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49977 bG method_49977 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49978 bH method_49978 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49979 bI method_49979 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49980 bJ method_49980 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49981 bK method_49981 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49982 bL method_49982 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49955 bM method_49955 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49956 bN method_49956 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49371 bO method_49371 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49372 bP method_49372 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49373 bQ method_49373 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49366 bR method_49366 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49367 bS method_49367 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49368 bT method_49368 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49369 bU method_49369 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49370 bV method_49370 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60408 bW method_60408 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60409 bX method_60409 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60410 bY method_60410 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49938 ba method_49938 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49939 bb method_49939 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49940 bc method_49940 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49941 bd method_49941 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49942 be method_49942 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49943 bf method_49943 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49944 bg method_49944 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49945 bh method_49945 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49946 bi method_49946 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49947 bj method_49947 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49948 bk method_49948 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49949 bl method_49949 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49957 bm method_49957 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49958 bn method_49958 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49959 bo method_49959 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49960 bp method_49960 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49961 bq method_49961 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49962 br method_49962 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49963 bs method_49963 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49964 bt method_49964 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49965 bu method_49965 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49966 bv method_49966 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49967 bw method_49967 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49968 bx method_49968 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49969 by method_49969 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_49970 bz method_49970 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46155 c method_46155 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder; method_43815 c method_43815 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60411 c method_60411 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46156 c method_46156 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46157 d method_46157 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_32226 d method_32226 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46158 d method_46158 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createPitcherCropLoot e method_49983 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46159 e method_46159 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60412 e method_60412 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46160 e method_46160 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46161 f method_46161 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60413 f method_60413 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46162 f method_46162 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46163 g method_46163 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60414 g method_60414 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46164 g method_46164 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60415 h method_60415 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46165 h method_46165 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60416 i method_60416 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46166 i method_46166 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60417 j method_60417 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_60418 k method_60418 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46167 l method_46167 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46168 m method_46168 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46169 n method_46169 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46170 o method_46170 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46171 p method_46171 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46172 q method_46172 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46173 r method_46173 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46174 s method_46174 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46175 t method_46175 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; createDecoratedPotTable u method_49984 + p 1 block + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46176 u method_46176 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_36230 v method_36230 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46177 v method_46177 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34600 w method_34600 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46178 w method_46178 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34599 x method_34599 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46179 x method_46179 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34601 y method_34601 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46180 y method_46180 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_34602 z method_34602 + m (Lnet/minecraft/data/loot/packs/VanillaBlockLoot;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; method_46181 z method_46181 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaChestLoot nd net/minecraft/class_2432 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2787 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckSupplyLootTable a method_48499 + m (Ljava/util/function/BiConsumer;)V spawnerLootTables a method_55304 + p 1 output + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckMapLootTable b method_48500 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionHoglinStableLootTable c method_48501 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionBridgeLootTable d method_48502 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; endCityTreasureLootTable e method_48503 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; netherBridgeLootTable f method_48504 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionTreasureLootTable g method_48505 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; bastionOtherLootTable h method_48506 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; woodlandMansionLootTable i method_48507 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; strongholdLibraryLootTable j method_48508 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; strongholdCorridorLootTable k method_48509 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; ancientCityLootTable l method_48510 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; jungleTempleLootTable m method_48511 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; shipwreckTreasureLootTable n method_48512 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; pillagerOutpostLootTable o method_48513 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; desertPyramidLootTable p method_48514 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries q comp_2787 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaEntityLoot ne net/minecraft/class_2434 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; elderGuardianLootTable d method_48515 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/data/loot/packs/VanillaEquipmentLoot nf net/minecraft/class_9486 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2788 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2788 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/armortrim/ArmorTrim;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; trialChamberEquipment a method_60419 + p 0 helmet + p 1 chestplate + p 2 trim + p 3 enchantments + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaFishingLoot ng net/minecraft/class_2437 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2789 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; fishingFishLootTable a method_48516 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries b comp_2789 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaGiftLoot nh net/minecraft/class_3714 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2790 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2790 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaLootTableProvider ni net/minecraft/class_7794 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/loot/LootTableProvider; create a method_46184 + p 0 output + p 1 registries + m ()V +c net/minecraft/data/loot/packs/VanillaPiglinBarterLoot nj net/minecraft/class_4845 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2791 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2791 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/VanillaShearingLoot nk net/minecraft/class_9340 + f Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2792 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a comp_2792 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/loot/packs/package-info nl net/minecraft/class_7795 +c net/minecraft/data/metadata/PackMetadataGenerator nm net/minecraft/class_7796 + f Lnet/minecraft/data/PackOutput; output d field_40619 + f Ljava/util/Map; elements e field_40620 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionType;Ljava/lang/Object;)Lnet/minecraft/data/metadata/PackMetadataGenerator; add a method_46185 + p 1 type + p 2 value + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/util/function/Supplier;)V method_46186 a method_46186 + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/data/metadata/PackMetadataGenerator; forFeaturePack a method_46812 + p 0 output + p 1 description + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/data/metadata/PackMetadataGenerator; forFeaturePack a method_46187 + p 0 output + p 1 description + p 2 flags + m (Lnet/minecraft/server/packs/metadata/MetadataSectionType;Ljava/lang/Object;)Lcom/google/gson/JsonElement; method_46188 b method_46188 + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/metadata/package-info nn net/minecraft/class_7797 +c net/minecraft/data/models/BlockModelGenerators no net/minecraft/class_4910 + f Ljava/util/List; MULTIFACE_GENERATOR a field_28548 + f Ljava/util/function/Consumer; blockStateOutput b field_22830 + f Ljava/util/function/BiConsumer; modelOutput c field_22831 + f Ljava/util/function/Consumer; skippedAutoModelsOutput d field_22832 + f Ljava/util/List; nonOrientableTrapdoor e field_28549 + f Ljava/util/Map; fullBlockModelCustomGenerators f field_29504 + f Ljava/util/Map; texturedModels g field_28551 + f Ljava/util/Map; SHAPE_CONSUMERS h field_28552 + f Ljava/util/Map; CHISELED_BOOKSHELF_SLOT_MODEL_CACHE i field_41526 + m ()V createCauldrons A method_25709 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createFloorFireModels A method_25700 + p 1 fireBlock + m ()V createChorusFlower B method_25711 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createSideFireModels B method_25702 + p 1 fireBlock + m ()V createCrafterBlock C method_54654 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; createTopFireModels C method_25704 + p 1 fireBlock + m ()V createEndPortalFrame D method_25712 + m (Lnet/minecraft/world/level/block/Block;)V createLantern D method_25706 + p 1 lanternBlock + m ()V createChorusPlant E method_25508 + m (Lnet/minecraft/world/level/block/Block;)V createNonTemplateHorizontalBlock E method_25708 + p 1 horizontalBlock + m ()V createComposter F method_25509 + m (Lnet/minecraft/world/level/block/Block;)V createMultiface F method_33520 + p 1 multifaceBlock + m ()V createAmethystClusters G method_32227 + m (Lnet/minecraft/world/level/block/Block;)V createShulkerBox G method_25710 + p 1 shulkerBoxBlock + m ()V createPointedDripstone H method_32802 + m ()V createDaylightDetector I method_25510 + m ()V createLightningRod J method_34852 + m ()V createFarmland K method_25512 + m ()V createFire L method_25513 + m ()V createSoulFire M method_25514 + m ()V createMuddyMangroveRoots N method_42033 + m ()V createMangrovePropagule O method_42034 + m ()V createFrostedIce P method_25515 + m ()V createGrassBlocks Q method_25516 + m ()V createCocoa R method_25517 + m ()V createDirtPath S method_25518 + m ()V createHopper T method_25519 + m ()V createIronBars U method_25520 + m ()V createLever V method_25521 + m ()V createLilyPad W method_25522 + m ()V createFrogspawnBlock X method_42035 + m ()V createNetherPortalBlock Y method_25523 + m ()V createNetherrack Z method_25524 + m ()V run a method_25534 + m (I)Ljava/util/List; createBambooModels a method_25535 + p 1 age + m (ILjava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;)Lnet/minecraft/resources/ResourceLocation; createTurtleEggModel a method_25536 + p 1 hatchAmount + p 2 variantName + p 3 textureMapping + m (Lnet/minecraft/resources/ResourceLocation;)[Lnet/minecraft/data/models/blockstates/Variant; createRotatedVariants a method_25584 + p 0 modelLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/entity/vault/VaultState;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_56885 a method_56885 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_55305 a method_55305 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;Lnet/minecraft/world/level/block/state/properties/RailShape;)Lnet/minecraft/data/models/blockstates/Variant; method_34628 a method_34628 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_54821 a method_54821 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase;)Lnet/minecraft/data/models/blockstates/Variant; method_49985 a method_49985 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_42036 a method_42036 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; blockEntityModels a method_25585 + p 1 entityBlockModelLocation + p 2 particleBlock + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34625 a method_34625 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34626 a method_34626 + m (Lnet/minecraft/world/item/Item;)V createSimpleFlatItemModel a method_25537 + p 1 flatItem + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V delegateItemModel a method_25538 + p 1 item + p 2 delegateModelLocation + m (Lnet/minecraft/world/item/SpawnEggItem;)V method_34603 a method_34603 + m (Lnet/minecraft/world/level/block/Block;)V createTrivialCube a method_25641 + p 1 block + m (Lnet/minecraft/world/level/block/Block;II)Lnet/minecraft/resources/ResourceLocation; method_34604 a method_34604 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V delegateItemModel a method_25623 + p 1 block + p 2 delegateModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createRotatedVariant a method_25645 + p 0 block + p 1 normalModelLocation + p 2 mirroredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createWall a method_25636 + p 0 wallBlock + p 1 postModelLocation + p 2 lowSideModelLocation + p 3 tallSideModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createCopperBulb a method_54822 + p 1 bulbBlock + p 2 unlit + p 3 unlitPowered + p 4 lit + p 5 litPowered + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createCustomFence a method_46189 + p 0 customFenceBlock + p 1 postModelId + p 2 northModelId + p 3 eastModelId + p 4 southModelId + p 5 westModelId + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createDoor a method_25609 + p 0 doorBlock + p 1 topLeftModelLocation + p 2 topLeftOpenModelLocation + p 3 topRightModelLocation + p 4 topRightOpenModelLocation + p 5 bottomLeftModelLocation + p 6 bottomLeftOpenModelLocation + p 7 bottomRightModelLocation + p 8 bottomRightOpenModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createFenceGate a method_25626 + p 0 fenceGateBlock + p 1 openModelLocation + p 2 closedModelLocation + p 3 wallOpenModelLocation + p 4 wallClosedModelLocation + p 5 uvLock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/blockstates/Variant;)V createGrassLikeBlock a method_25560 + p 1 grassLikeBlock + p 2 modelLocation + p 3 variant + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V createPistonVariant a method_25561 + p 1 pistonBlock + p 2 baseModelLocation + p 3 topTextureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createMirroredCubeGenerator a method_34608 + p 0 cubeBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)V createAirLikeBlock a method_25542 + p 1 airLikeBlock + p 2 particleItem + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyDoorModel a method_54823 + p 1 doorBlock + p 2 sourceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createHangingSign a method_46190 + p 1 particleBlock + p 2 hangingSignBlock + p 3 wallHangingSignBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCoral a method_25544 + p 1 coralBlock + p 2 deadCoralBlock + p 3 coralFullBlock + p 4 deadCoralFullBlock + p 5 coralFanBlock + p 6 deadCoralFanBlock + p 7 coralWallFanBlock + p 8 deadCoralWallFanBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiFunction;)V createCraftingTableLike a method_25546 + p 1 craftingTableBlock + p 2 craftingTableMaterialBlock + p 3 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createPlant a method_25545 + p 1 plantBlock + p 2 pottedPlantBlock + p 3 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/properties/Property;[I)V createCropBlock a method_25547 + p 1 cropBlock + p 2 ageProperty + p 3 ageToVisualStageMapping + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49376 a method_49376 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf;)Lnet/minecraft/data/models/blockstates/Variant; method_49986 a method_49986 + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)V createSimpleFlatItemModel a method_25556 + p 1 flatBlock + p 2 layerZeroTextureSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/ModelTemplate;Ljava/util/function/Function;)Lnet/minecraft/resources/ResourceLocation; createSuffixedVariant a method_25557 + p 1 block + p 2 suffix + p 3 modelTemplate + p 4 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/Function;)V createBeeNest a method_25558 + p 1 beeNestBlock + p 2 textureMappingGetter + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createCrossBlockWithDefaultItem a method_25548 + p 1 crossBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/world/level/block/state/properties/Property;[I)V createCrossBlock a method_49374 + p 1 crossBlock + p 2 tintState + p 3 property + p 4 propertyValues + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/data/models/model/TextureMapping;)V createCrossBlockWithDefaultItem a method_25549 + p 1 crossBlock + p 2 tintState + p 3 textureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;)V method_37366 a method_37366 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)V method_34605 a method_34605 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;)V createPumpkinVariant a method_25550 + p 1 pumpkinBlock + p 2 columnTextureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34606 a method_34606 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createPillarBlockUVLocked a method_47519 + p 0 block + p 1 textureMapping + p 2 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/model/ModelTemplate;)V createTrivialBlock a method_35868 + p 1 block + p 2 textureMapping + p 3 modelTemplate + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createAxisAlignedPillarBlock a method_25553 + p 1 axisAlignedPillarBlock + p 2 provider + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createRotatedPillarWithHorizontalVariant a method_25554 + p 1 rotatedPillarBlock + p 2 modelProvider + p 3 horizontalModelProvider + m (Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; createBooleanModelDispatch a method_25565 + p 0 property + p 1 trueModelLocation + p 2 falseModelLocation + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; createEmptyOrFullDispatch a method_25566 + p 0 property + p 1 minimumValueForFullVariant + p 2 fullVariantModelLocation + p 3 emptyVariantModelLocation + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Lnet/minecraft/data/models/blockstates/Variant; method_34610 a method_34610 + m (Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_34616 a method_34616 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Variant; method_34617 a method_34617 + m (Ljava/lang/Integer;)Lnet/minecraft/resources/ResourceLocation; method_49987 a method_49987 + m (Ljava/lang/Integer;Ljava/lang/Boolean;Ljava/lang/Boolean;)Lnet/minecraft/data/models/blockstates/Variant; method_34619 a method_34619 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Lnet/minecraft/resources/ResourceLocation; createTurtleEggModel a method_25581 + p 1 eggAmount + p 2 variantId + m (Ljava/lang/String;I)Lnet/minecraft/data/models/blockstates/Variant; method_34621 a method_34621 + m (Ljava/util/List;Ljava/util/function/UnaryOperator;)Ljava/util/List; wrapModels a method_25583 + p 0 modelLocations + p 1 variantMapper + m (Ljava/util/function/Function;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49988 a method_49988 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)Lnet/minecraft/data/models/blockstates/Variant; createPointedDripstoneVariant a method_32803 + p 1 direction + p 2 dripstoneThickness + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/data/models/blockstates/Variant; method_34611 a method_34611 + m (Lnet/minecraft/core/FrontAndTop;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; applyRotation a method_26433 + p 1 frontAndTop + p 2 variant + m (Lnet/minecraft/data/BlockFamily;)V method_34612 a method_34612 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/datafixers/util/Pair;)V method_47811 a method_47811 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)V addSlotStateAndRotationVariants a method_47812 + p 1 generator + p 2 condition + p 3 rotation + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;Lcom/mojang/datafixers/util/Pair;)V method_47813 a method_47813 + m (Lnet/minecraft/data/models/blockstates/MultiPartGenerator;Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition;Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/data/models/model/ModelTemplate;Z)V addBookSlotModel a method_47814 + p 1 generator + p 2 condition + p 3 rotation + p 4 hasBookProperty + p 5 template + p 6 hasBook + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4;Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; configureDoorHalf a method_25572 + p 0 properties + p 1 half + p 2 leftModelLocation + p 3 leftOpenModelLocation + p 4 rightModelLocation + p 5 rightOpenModelLocation + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34615 a method_34615 + m (Lnet/minecraft/data/models/model/ModelTemplate;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/BlockModelGenerators$BookSlotModelCacheKey;)Lnet/minecraft/resources/ResourceLocation; method_47815 a method_47815 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34623 a method_34623 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; method_34624 a method_34624 + m (Lnet/minecraft/data/models/model/TexturedModel$Provider;[Lnet/minecraft/world/level/block/Block;)V createColoredBlockWithRandomRotations a method_25576 + p 1 modelProvider + p 2 coloredBlocks + m ([ILnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_49375 a method_49375 + m ([ILit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lnet/minecraft/world/level/block/Block;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34629 a method_34629 + m ([Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34630 a method_34630 + m ([Lnet/minecraft/world/level/block/Block;)V createCampfires a method_27166 + p 1 campfireBlocks + m ()V createInfestedDeepslate aA method_36440 + m ()V createRespawnAnchor aB method_26279 + m ()V createJigsaw aC method_26434 + m ()V createPetrifiedOakSlab aD method_33504 + m ()V createLightBlock aE method_39204 + m ()V createObserver aa method_25525 + m ()V createPistons ab method_25526 + m ()V createPistonHeads ac method_25527 + m ()V createTrialSpawner ad method_55306 + m ()V createVault ae method_56886 + m ()V createSculkSensor af method_33128 + m ()V createCalibratedSculkSensor ag method_49989 + m ()V createSculkShrieker ah method_42037 + m ()V createScaffolding ai method_25528 + m ()V createCaveVines aj method_33710 + m ()V createRedstoneLamp ak method_25529 + m ()V createRedstoneTorch al method_25530 + m ()V createRepeater am method_25531 + m ()V createSeaPickle an method_25532 + m ()V createSnowBlocks ao method_25533 + m ()V createStonecutter ap method_25590 + m ()V createStructureBlock aq method_25591 + m ()V createSweetBerryBush ar method_25592 + m ()V createTripwire as method_25593 + m ()V createTripwireHook at method_25594 + m ()V createTurtleEgg au method_25595 + m ()V createSnifferEgg av method_49990 + m ()V createSculkCatalyst aw method_42038 + m ()V createChiseledBookshelf ax method_46193 + m ()V createMagmaBlock ay method_25597 + m ()V createInfestedStone az method_25598 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createHorizontalFacingDispatch b method_25599 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43818 b method_43818 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase;)Lnet/minecraft/data/models/blockstates/Variant; method_34627 b method_34627 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34639 b method_34639 + m (Lnet/minecraft/world/level/block/Block;)V createGenericCube b method_51463 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createRotatedVariant b method_25634 + p 0 block + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createButton b method_25654 + p 0 buttonBlock + p 1 unpoweredModelLocation + p 2 poweredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createStairs b method_25646 + p 0 stairsBlock + p 1 innerModelLocation + p 2 straightModelLocation + p 3 outerModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createNorthWestMirroredCubeGenerator b method_42039 + p 0 cubeBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyTrapdoorModel b method_54824 + p 1 trapdoorBlock + p 2 sourceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createGrowingPlant b method_25602 + p 1 growingPlantBlock + p 2 plantBlock + p 3 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createCrossBlock b method_25603 + p 1 crossBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;Lnet/minecraft/data/models/model/TextureMapping;)V createCrossBlock b method_25604 + p 1 crossBlock + p 2 tintState + p 3 textureMapping + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createTrivialBlock b method_25622 + p 1 block + p 2 provider + m (Ljava/lang/Integer;)Lnet/minecraft/data/models/blockstates/Variant; method_34618 b method_34618 + m (Ljava/lang/Integer;Ljava/lang/Integer;)Ljava/util/List; method_34634 b method_34634 + m (Lnet/minecraft/core/FrontAndTop;)Lnet/minecraft/data/models/blockstates/Variant; method_54655 b method_54655 + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34633 b method_34633 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34636 b method_34636 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; method_34637 b method_34637 + m (Lnet/minecraft/data/models/model/TexturedModel$Provider;[Lnet/minecraft/world/level/block/Block;)V createColoredBlockWithStateRotations b method_25614 + p 1 modelProvider + p 2 coloredBlocks + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createHorizontalFacingDispatchAlt c method_25618 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43819 c method_43819 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34645 c method_34645 + m (Lnet/minecraft/world/level/block/Block;)V skipAutoItemBlock c method_25540 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; createSimpleBlock c method_25644 + p 0 block + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createFence c method_25661 + p 0 fenceBlock + p 1 fencePostModelLocation + p 2 fenceSideModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createOrientableTrapdoor c method_25655 + p 0 orientableTrapdoorBlock + p 1 topModelLocation + p 2 bottomModelLocation + p 3 openModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createMirroredColumnGenerator c method_34631 + p 0 columnBlock + p 1 location + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNonTemplateModelBlock c method_25543 + p 1 block + p 2 modelBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/BlockModelGenerators$TintState;)V createDoublePlant c method_25621 + p 1 doublePlantBlock + p 2 tintState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createHorizontallyRotatedBlock c method_25605 + p 1 horizontallyRotatedBlock + p 2 provider + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34641 c method_34641 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_34643 c method_34643 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createTorchHorizontalDispatch d method_25630 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43820 d method_43820 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;)V method_34650 d method_34650 + m (Lnet/minecraft/world/level/block/Block;)V createSimpleFlatItemModel d method_25600 + p 1 flatBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createAxisAlignedPillarBlock d method_25653 + p 0 axisAlignedPillarBlock + p 1 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createRotatedPillarWithHorizontalVariant d method_25667 + p 0 rotatedPillarBlock + p 1 modelLocation + p 2 horizontalModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createTrapdoor d method_25662 + p 0 trapdoorBlock + p 1 topModelLocation + p 2 bottomModelLocation + p 3 openModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCoralFans d method_25601 + p 1 coralFanBlock + p 2 coralWallFanBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TexturedModel$Provider;)V createFurnace d method_25652 + p 1 furnaceBlock + p 2 modelProvider + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34647 d method_34647 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_33509 d method_33509 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createFacingDispatch e method_25640 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43821 e method_43821 + m (Lnet/minecraft/world/level/block/Block;)V createRotatedMirroredVariantBlock e method_25619 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V createAxisAlignedPillarBlockCustomModel e method_31063 + p 1 axisAlignedPillarBlock + p 2 modelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createPressurePlate e method_25673 + p 0 pressurePlateBlock + p 1 unpoweredModelLocation + p 2 poweredModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/BlockStateGenerator; createSlab e method_25668 + p 0 slabBlock + p 1 bottomHalfModelLocation + p 2 topHalfModelLocation + p 3 doubleModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createStems e method_25620 + p 1 unattachedStemBlock + p 2 attachedStemBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34651 e method_34651 + m (Lnet/minecraft/data/models/model/TextureMapping;)V method_33512 e method_33512 + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createRotatedPillar f method_25649 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43822 f method_43822 + m (Lnet/minecraft/world/level/block/Block;)V createRotatedVariantBlock f method_25631 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;)V createAirLikeBlock f method_25660 + p 1 airLikeBlock + p 2 particleTexture + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V createDoubleBlock f method_25678 + p 1 doubleBlock + p 2 topHalfModelLocation + p 3 bottomHalfModelLocation + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; blockEntityModels f method_25632 + p 1 entityBlockBaseModel + p 2 particleBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34653 f method_34653 + m ()V createBigDripLeafBlock g method_33711 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_43823 g method_43823 + m (Lnet/minecraft/world/level/block/Block;)V createBrushableBlock g method_49377 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createFullAndCarpetBlocks g method_25642 + p 1 fullBlock + p 2 carpetBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34655 g method_34655 + m ()V createPitcherPlant h method_49991 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/blockstates/Variant; method_34657 h method_34657 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; family h method_25650 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createGlassBlocks h method_25651 + p 1 glassBlock + p 2 paneBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34656 h method_34656 + m ()V createPitcherCrop i method_49992 + m (Lnet/minecraft/world/level/block/Block;)V createDoor i method_25658 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyCopperBulbModel i method_54825 + p 1 bulbBlock + p 2 sourceBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34658 i method_34658 + m ()V createSunflower j method_25657 + m (Lnet/minecraft/world/level/block/Block;)V createOrientableTrapdoor j method_25665 + p 1 orientableTrapdoorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createWeightedPressurePlate j method_25666 + p 1 pressurePlateBlock + p 2 plateMaterialBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_34659 j method_34659 + m ()V createTallSeagrass k method_25664 + m (Lnet/minecraft/world/level/block/Block;)V createTrapdoor k method_25671 + p 1 trapdoorBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copyModel k method_25672 + p 1 sourceBlock + p 2 targetBlock + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; method_25656 k method_25656 + m ()V createSmallDripleaf l method_33712 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; woodProvider l method_25676 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNormalTorch l method_25677 + p 1 torchBlock + p 2 wallTorchBlock + m ()V createBamboo m method_25670 + m (Lnet/minecraft/world/level/block/Block;)V createNonTemplateModelBlock m method_25681 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createBedItem m method_25682 + p 1 bedBlock + p 2 woolBlock + m ()Lnet/minecraft/data/models/blockstates/PropertyDispatch; createColumnWithFacing n method_25675 + m (Lnet/minecraft/world/level/block/Block;)V createPassiveRail n method_25685 + p 1 railBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createNetherRoots n method_25686 + p 1 plantBlock + p 2 pottedPlantBlock + m ()V createBarrel o method_25680 + m (Lnet/minecraft/world/level/block/Block;)V createActiveRail o method_25688 + p 1 railBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V createCandleAndCandleCake o method_32228 + p 1 candleBlock + p 2 candleCakeBlock + m ()V createBell p method_25684 + m (Lnet/minecraft/world/level/block/Block;)V createFlowerBed p method_49378 + p 1 flowerBedBlock + m ()V createGrindstone q method_25687 + m (Lnet/minecraft/world/level/block/Block;)V createCommandBlock q method_25690 + p 1 commandBlock + m ()V createBookshelf r method_25691 + m (Lnet/minecraft/world/level/block/Block;)V createAnvil r method_25692 + p 1 anvilBlock + m ()V createRedstoneWire s method_25693 + m (Lnet/minecraft/world/level/block/Block;)V createAzalea s method_33713 + p 1 azaleaBlock + m ()V createComparator t method_25695 + m (Lnet/minecraft/world/level/block/Block;)V createPottedAzalea t method_37317 + p 1 pottedAzaleaBlock + m ()V createSmoothStoneSlab u method_25697 + m (Lnet/minecraft/world/level/block/Block;)V createMushroomBlock u method_25694 + p 1 mushroomBlock + m ()V createBrewingStand v method_25699 + m (Lnet/minecraft/world/level/block/Block;)V createDispenserBlock v method_25696 + p 1 dispenserBlock + m ()V createCakeBlock w method_25701 + m (Lnet/minecraft/world/level/block/Block;)V createCopperBulb w method_54826 + p 1 bulbBlock + m ()V createCartographyTable x method_25703 + m (Lnet/minecraft/world/level/block/Block;)V createAmethystCluster x method_32229 + p 1 amethystBlock + m ()V createSmithingTable y method_25705 + m (Lnet/minecraft/world/level/block/Block;)V createNyliumBlock y method_25698 + p 1 nyliumBlock + m ()V createPumpkins z method_25707 + m (Lnet/minecraft/world/level/block/Block;)V createRotatableColumn z method_31064 + p 1 rotatableColumnBlock + m (Ljava/util/function/Consumer;Ljava/util/function/BiConsumer;Ljava/util/function/Consumer;)V + p 1 blockStateOutput + p 2 modelOutput + p 3 skippedAutoModelsOutput + m ()V +c net/minecraft/data/models/BlockModelGenerators$1 no$1 net/minecraft/class_4910$1 + f [I $SwitchMap$net$minecraft$core$FrontAndTop a field_23399 + f [I $SwitchMap$net$minecraft$world$level$block$entity$vault$VaultState b field_48979 + f [I $SwitchMap$net$minecraft$world$level$block$entity$trialspawner$TrialSpawnerState c field_47499 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape d field_22833 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$DoubleBlockHalf e field_43383 + m ()V +c net/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator no$a net/minecraft/class_4910$class_4911 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22834 a field_22834 + f Lnet/minecraft/resources/ResourceLocation; baseModel b field_22835 + m (Lnet/minecraft/data/models/model/ModelTemplate;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; createWithCustomBlockItemModel a method_25713 + p 1 modelTemplate + p 2 blocks + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; create a method_25714 + p 1 blocks + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockEntityModelGenerator; createWithoutBlockItem b method_25715 + p 1 blocks + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/Block;)V + p 2 baseModel + p 3 particleBlock +c net/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider no$b net/minecraft/class_4910$class_4912 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22836 a field_22836 + f Lnet/minecraft/data/models/model/TextureMapping; mapping b field_22837 + f Ljava/util/Map; models c field_28553 + f Lnet/minecraft/data/BlockFamily; family d field_28554 + f Lnet/minecraft/resources/ResourceLocation; fullBlock e field_22838 + f Ljava/util/Set; skipGeneratingModelsFor f field_47134 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; button a method_25716 + p 1 buttonBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; donateModelTo a method_54827 + p 1 sourceBlock + p 2 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fullBlock a method_25718 + p 1 block + p 2 modelTemplate + m (Lnet/minecraft/data/BlockFamily$Variant;Lnet/minecraft/world/level/block/Block;)V method_33521 a method_33521 + m (Lnet/minecraft/data/BlockFamily;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; generateFor a method_33522 + p 1 family + m (Lnet/minecraft/data/models/model/ModelTemplate;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getOrCreateModel a method_33524 + p 1 modelTemplate + p 2 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; wall b method_25720 + p 1 wallBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/resources/ResourceLocation; method_33525 b method_33525 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; customFence c method_46194 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fence d method_25721 + p 1 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; customFenceGate e method_46195 + p 1 customFenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fenceGate f method_25722 + p 1 fenceGateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; pressurePlate g method_25723 + p 1 pressurePlateBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; sign h method_25717 + p 1 signBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; slab i method_25724 + p 1 slabBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; stairs j method_25725 + p 1 stairsBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; fullBlockVariant k method_34661 + p 1 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$BlockFamilyProvider; door l method_33527 + p 1 doorBlock + m (Lnet/minecraft/world/level/block/Block;)V trapdoor m method_33528 + p 1 trapdoorBlock + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/data/models/model/TextureMapping;)V + p 2 mapping +c net/minecraft/data/models/BlockModelGenerators$BlockStateGeneratorSupplier no$c net/minecraft/class_4910$class_5879 +c net/minecraft/data/models/BlockModelGenerators$BookSlotModelCacheKey no$d net/minecraft/class_4910$class_7987 + f Lnet/minecraft/data/models/model/ModelTemplate; template a comp_1175 + f Ljava/lang/String; modelSuffix b comp_1176 + m ()Lnet/minecraft/data/models/model/ModelTemplate; template a comp_1175 + m ()Ljava/lang/String; modelSuffix b comp_1176 + m (Lnet/minecraft/data/models/model/ModelTemplate;Ljava/lang/String;)V +c net/minecraft/data/models/BlockModelGenerators$TintState no$e net/minecraft/class_4910$class_4913 + f Lnet/minecraft/data/models/BlockModelGenerators$TintState; TINTED a field_22839 + f Lnet/minecraft/data/models/BlockModelGenerators$TintState; NOT_TINTED b field_22840 + f [Lnet/minecraft/data/models/BlockModelGenerators$TintState; $VALUES c field_22841 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getCross a method_25726 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getCrossPot b method_25727 + m ()[Lnet/minecraft/data/models/BlockModelGenerators$TintState; $values c method_36939 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/data/models/BlockModelGenerators$WoodProvider no$f net/minecraft/class_4910$class_4914 + f Lnet/minecraft/data/models/BlockModelGenerators; field_22842 a field_22842 + f Lnet/minecraft/data/models/model/TextureMapping; logMapping b field_22843 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; wood a method_25728 + p 1 woodBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; log b method_25729 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; logWithHorizontal c method_25730 + p 1 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/BlockModelGenerators$WoodProvider; logUVLocked d method_47520 + p 1 logBlock + m (Lnet/minecraft/data/models/BlockModelGenerators;Lnet/minecraft/data/models/model/TextureMapping;)V + p 2 logMapping +c net/minecraft/data/models/ItemModelGenerators np net/minecraft/class_4915 + f Lnet/minecraft/resources/ResourceLocation; TRIM_TYPE_PREDICATE_ID a field_42086 + f Ljava/util/List; GENERATED_TRIM_MODELS b field_42087 + f Ljava/util/function/BiConsumer; output c field_22844 + m ()V run a method_25731 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V generateLayeredItem a method_48517 + p 1 modelLocation + p 2 layer0 + p 3 layer1 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V generateLayeredItem a method_48742 + p 1 modelLocation + p 2 layer0 + p 3 layer1 + p 4 layer2 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getItemModelForTrimMaterial a method_48518 + p 1 modelLocation + p 2 trimId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;Lnet/minecraft/core/Holder;)Lcom/google/gson/JsonObject; generateBaseArmorTrimTemplate a method_48519 + p 1 modelLocation + p 2 modelGetter + p 3 armorMaterial + m (Lnet/minecraft/world/item/ArmorItem;)V generateArmorTrims a method_48523 + p 1 armorItem + m (Lnet/minecraft/world/item/ArmorItem;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; method_48522 a method_48522 + m (Lnet/minecraft/world/item/Item;)V generateItemWithOverlay a method_57960 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25732 + p 1 item + p 2 layerZeroItem + p 3 modelTemplate + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25734 + p 1 item + p 2 modelLocationSuffix + p 3 modelTemplate + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/data/models/model/ModelTemplate;)V generateFlatItem a method_25733 + p 1 item + p 2 modelTemplate + m (Lnet/minecraft/world/item/ArmorItem;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; method_48743 b method_48743 + m (Lnet/minecraft/world/item/Item;)V generateCompassItem b method_43228 + p 1 item + m (Lnet/minecraft/world/item/Item;)V generateClockItem c method_43229 + p 1 item + m (Ljava/util/function/BiConsumer;)V + p 1 output + m ()V +c net/minecraft/data/models/ItemModelGenerators$TrimModelData np$a net/minecraft/class_4915$class_8072 + f Ljava/lang/String; name a comp_1219 + f F itemModelIndex b comp_1220 + f Ljava/util/Map; overrideArmorMaterials c comp_1239 + m ()Ljava/lang/String; name a comp_1219 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; name a method_48744 + p 1 armorMaterial + m ()F itemModelIndex b comp_1220 + m ()Ljava/util/Map; overrideArmorMaterials c comp_1239 + m (Ljava/lang/String;FLjava/util/Map;)V +c net/minecraft/data/models/ModelProvider nq net/minecraft/class_4916 + f Lnet/minecraft/data/PackOutput$PathProvider; blockStatePathProvider d field_39375 + f Lnet/minecraft/data/PackOutput$PathProvider; modelPathProvider e field_39376 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46578 a method_46578 + m (Lnet/minecraft/world/level/block/Block;)Ljava/nio/file/Path; method_44110 a method_44110 + m (Ljava/util/Map$Entry;)Z method_53817 a method_53817 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V method_25740 a method_25740 + m (Ljava/util/Map;Lnet/minecraft/world/level/block/Block;)Z method_25738 a method_25738 + m (Ljava/util/Map;Lnet/minecraft/data/models/blockstates/BlockStateGenerator;)V method_25739 a method_25739 + m (Ljava/util/Set;Ljava/util/Map;Lnet/minecraft/world/level/block/Block;)V method_25741 a method_25741 + m (Ljava/util/function/Function;Lnet/minecraft/data/CachedOutput;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_25742 a method_25742 + m (Lnet/minecraft/data/CachedOutput;Ljava/util/Map;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; saveCollection a method_25735 + p 1 output + p 2 objectToJsonMap + p 3 resolveObjectPath + m (Lnet/minecraft/data/PackOutput;)V + p 1 output +c net/minecraft/data/models/blockstates/BlockStateGenerator nr net/minecraft/class_4917 + m ()Lnet/minecraft/world/level/block/Block; getBlock a method_25743 +c net/minecraft/data/models/blockstates/Condition ns net/minecraft/class_4918 + m ()Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; condition a method_25744 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V validate a method_25745 + p 1 stateDefinition + m ([Lnet/minecraft/data/models/blockstates/Condition;)Lnet/minecraft/data/models/blockstates/Condition; and a method_35870 + p 0 conditions + m ([Lnet/minecraft/data/models/blockstates/Condition;)Lnet/minecraft/data/models/blockstates/Condition; or b method_25746 + p 0 conditions +c net/minecraft/data/models/blockstates/Condition$CompositeCondition ns$a net/minecraft/class_4918$class_4919 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; operation a field_22848 + f Ljava/util/List; subconditions b field_22849 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/data/models/blockstates/Condition;)V method_25747 a method_25747 + m ()Lcom/google/gson/JsonElement; get b method_25748 + m (Lnet/minecraft/data/models/blockstates/Condition$Operation;Ljava/util/List;)V + p 1 operation + p 2 subconditions +c net/minecraft/data/models/blockstates/Condition$Operation ns$b net/minecraft/class_4918$class_4920 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; AND a field_22850 + f Lnet/minecraft/data/models/blockstates/Condition$Operation; OR b field_22851 + f Ljava/lang/String; id c field_22852 + f [Lnet/minecraft/data/models/blockstates/Condition$Operation; $VALUES d field_22853 + m ()[Lnet/minecraft/data/models/blockstates/Condition$Operation; $values a method_36940 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/data/models/blockstates/Condition$TerminalCondition ns$c net/minecraft/class_4918$class_4921 + f Ljava/util/Map; terms a field_22854 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)V method_25755 a method_25755 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;)Z method_25750 a method_25750 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; term a method_25751 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; term a method_25752 + p 1 property + p 2 firstValue + p 3 additionalValues + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)V putValue a method_25753 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/stream/Stream;)Ljava/lang/String; joinValues a method_25754 + p 0 property + p 1 valueStream + m ()Lcom/google/gson/JsonElement; get b method_25756 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; negatedTerm b method_35871 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Lnet/minecraft/data/models/blockstates/Condition$TerminalCondition; negatedTerm b method_35872 + p 1 property + p 2 firstValue + p 3 additionalValues + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;[Ljava/lang/Comparable;)Ljava/lang/String; getTerm c method_25757 + p 0 property + p 1 firstValue + p 2 additionalValues + m ()V +c net/minecraft/data/models/blockstates/MultiPartGenerator nt net/minecraft/class_4922 + f Lnet/minecraft/world/level/block/Block; block a field_22855 + f Ljava/util/List; parts b field_22856 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; multiPart a method_25758 + p 0 block + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/data/models/blockstates/MultiPartGenerator$Entry;)V method_25759 a method_25759 + m (Ljava/util/List;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25764 + p 1 variants + m (Lnet/minecraft/data/models/blockstates/Condition;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25761 + p 1 condition + p 2 variants + m (Lnet/minecraft/data/models/blockstates/Condition;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25760 + p 1 condition + p 2 variant + m (Lnet/minecraft/data/models/blockstates/Condition;[Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25762 + p 1 condition + p 2 variants + m (Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiPartGenerator; with a method_25763 + p 1 variant + m ()Lcom/google/gson/JsonElement; get b method_25765 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/data/models/blockstates/MultiPartGenerator$ConditionalEntry nt$a net/minecraft/class_4922$class_4923 + f Lnet/minecraft/data/models/blockstates/Condition; condition a field_22857 + m (Lnet/minecraft/data/models/blockstates/Condition;Ljava/util/List;)V + p 1 condition + p 2 variants +c net/minecraft/data/models/blockstates/MultiPartGenerator$Entry nt$b net/minecraft/class_4922$class_4924 + f Ljava/util/List; variants a field_22858 + m ()Lcom/google/gson/JsonElement; get a method_25766 + m (Lcom/google/gson/JsonObject;)V decorate a method_25768 + p 1 jsonObject + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V validate a method_25767 + p 1 stateDefinition + m (Ljava/util/List;)V + p 1 variants +c net/minecraft/data/models/blockstates/MultiVariantGenerator nu net/minecraft/class_4925 + f Lnet/minecraft/world/level/block/Block; block a field_22859 + f Ljava/util/List; baseVariants b field_22860 + f Ljava/util/Set; seenProperties c field_22861 + f Ljava/util/List; declaredPropertySets d field_22862 + m (Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;)V method_25773 a method_25773 + m (Lcom/mojang/datafixers/util/Pair;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_25774 a method_25774 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25769 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25770 + p 0 block + p 1 variant + m (Lnet/minecraft/world/level/block/Block;[Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; multiVariant a method_25771 + p 0 block + p 1 variants + m (Lnet/minecraft/world/level/block/state/properties/Property;)V method_25772 a method_25772 + m (Ljava/util/List;Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/data/models/blockstates/Variant;)V method_25776 a method_25776 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; mergeVariants a method_25777 + p 0 variants1 + p 1 variants2 + m (Ljava/util/Map;Lcom/google/gson/JsonObject;)V method_25778 a method_25778 + m (Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)V method_25779 a method_25779 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch;)Lnet/minecraft/data/models/blockstates/MultiVariantGenerator; with a method_25775 + p 1 propertyDispatch + m ()Lcom/google/gson/JsonElement; get b method_25780 + m (Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)Ljava/util/stream/Stream; method_25781 b method_25781 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/List;)V + p 1 block + p 2 baseVariants +c net/minecraft/data/models/blockstates/PropertyDispatch nv net/minecraft/class_4926 + f Ljava/util/Map; values a field_22863 + m ()Ljava/util/Map; getEntries a method_25782 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; property a method_25783 + p 0 property1 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; properties a method_25784 + p 0 property1 + p 1 property2 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; properties a method_25785 + p 0 property1 + p 1 property2 + p 2 property3 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; properties a method_25786 + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; properties a method_25787 + p 0 property1 + p 1 property2 + p 2 property3 + p 3 property4 + p 4 property5 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/data/models/blockstates/Selector;)Ljava/util/stream/Stream; method_25788 a method_25788 + m (Lnet/minecraft/data/models/blockstates/Selector;)Z method_25789 a method_25789 + m (Lnet/minecraft/data/models/blockstates/Selector;Ljava/util/List;)V putValue a method_25790 + p 1 selector + p 2 values + m ()Ljava/util/List; getDefinedProperties b method_25791 + m ()V verifyComplete c method_25792 + m ()V +c net/minecraft/data/models/blockstates/PropertyDispatch$C1 nv$a net/minecraft/class_4926$class_4927 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22864 + m (Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; select a method_25794 + p 1 propertyValue + p 2 variants + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C1; select a method_25793 + p 1 propertyValue + p 2 variant + m (Ljava/util/function/Function;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25795 + p 1 propertyValueToVariantMapper + m (Ljava/util/function/Function;Ljava/lang/Comparable;)V method_35877 a method_35877 + m (Ljava/util/function/Function;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35878 + p 1 propertyValueToVariantsMapper + m (Ljava/util/function/Function;Ljava/lang/Comparable;)V method_25796 b method_25796 + m (Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 +c net/minecraft/data/models/blockstates/PropertyDispatch$C2 nv$b net/minecraft/class_4926$class_4928 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22865 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22866 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; select a method_25798 + p 1 property1Value + p 2 property2Value + p 3 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C2; select a method_25797 + p 1 property1Value + p 2 property2Value + p 3 variant + m (Ljava/lang/Comparable;Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25799 a method_25799 + m (Ljava/util/function/BiFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25800 + p 1 propertyValuesToVariantMapper + m (Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25801 a method_25801 + m (Ljava/lang/Comparable;Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25802 b method_25802 + m (Ljava/util/function/BiFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_25803 + p 1 propertyValuesToVariantsMapper + m (Ljava/util/function/BiFunction;Ljava/lang/Comparable;)V method_25804 b method_25804 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 +c net/minecraft/data/models/blockstates/PropertyDispatch$C3 nv$c net/minecraft/class_4926$class_4929 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22867 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22868 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22869 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; select a method_25807 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C3; select a method_25806 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35879 a method_35879 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35880 a method_35880 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_25805 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_35881 a method_35881 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25810 b method_25810 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25809 b method_25809 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35882 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$TriFunction;Ljava/lang/Comparable;)V method_25808 b method_25808 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 +c net/minecraft/data/models/blockstates/PropertyDispatch$C4 nv$d net/minecraft/class_4926$class_4930 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22870 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22871 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22872 + f Lnet/minecraft/world/level/block/state/properties/Property; property4 d field_22873 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; select a method_25812 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C4; select a method_25811 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35883 a method_35883 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35884 a method_35884 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35885 a method_35885 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_35886 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35887 a method_35887 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35888 b method_35888 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35889 b method_35889 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35890 b method_35890 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35891 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction;Ljava/lang/Comparable;)V method_35892 b method_35892 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 + p 4 property4 +c net/minecraft/data/models/blockstates/PropertyDispatch$C5 nv$e net/minecraft/class_4926$class_4931 + f Lnet/minecraft/world/level/block/state/properties/Property; property1 a field_22874 + f Lnet/minecraft/world/level/block/state/properties/Property; property2 b field_22875 + f Lnet/minecraft/world/level/block/state/properties/Property; property3 c field_22876 + f Lnet/minecraft/world/level/block/state/properties/Property; property4 d field_22877 + f Lnet/minecraft/world/level/block/state/properties/Property; property5 e field_22878 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/util/List;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; select a method_25814 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 property5Value + p 6 variants + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/PropertyDispatch$C5; select a method_25813 + p 1 property1Value + p 2 property2Value + p 3 property3Value + p 4 property4Value + p 5 property5Value + p 6 variant + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35893 a method_35893 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35894 a method_35894 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35895 a method_35895 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35896 a method_35896 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generate a method_35897 + p 1 propertyValuesToVariantMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35898 a method_35898 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35899 b method_35899 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35900 b method_35900 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35901 b method_35901 + m (Ljava/lang/Comparable;Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35902 b method_35902 + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;)Lnet/minecraft/data/models/blockstates/PropertyDispatch; generateList b method_35903 + p 1 propertyValuesToVariantsMapper + m (Lnet/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction;Ljava/lang/Comparable;)V method_35904 b method_35904 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/properties/Property;)V + p 1 property1 + p 2 property2 + p 3 property3 + p 4 property4 + p 5 property5 +c net/minecraft/data/models/blockstates/PropertyDispatch$PentaFunction nv$f net/minecraft/class_4926$class_6290 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply method_35905 + p 1 p1 + p 2 p2 + p 3 p3 + p 4 p4 + p 5 p5 +c net/minecraft/data/models/blockstates/PropertyDispatch$QuadFunction nv$g net/minecraft/class_4926$class_6291 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; apply apply method_35906 + p 1 p1 + p 2 p2 + p 3 p3 + p 4 p4 +c net/minecraft/data/models/blockstates/PropertyDispatch$TriFunction nv$h net/minecraft/class_4926$class_4932 +c net/minecraft/data/models/blockstates/Selector nw net/minecraft/class_4934 + f Lnet/minecraft/data/models/blockstates/Selector; EMPTY a field_22881 + f Ljava/util/Comparator; COMPARE_BY_NAME b field_22882 + f Ljava/util/List; values c field_22883 + m ()Lnet/minecraft/data/models/blockstates/Selector; empty a method_25818 + m (Lnet/minecraft/world/level/block/state/properties/Property$Value;)Lnet/minecraft/data/models/blockstates/Selector; extend a method_25819 + p 1 value + m (Lnet/minecraft/data/models/blockstates/Selector;)Lnet/minecraft/data/models/blockstates/Selector; extend a method_25820 + p 1 selector + m ([Lnet/minecraft/world/level/block/state/properties/Property$Value;)Lnet/minecraft/data/models/blockstates/Selector; of a method_25821 + p 0 values + m ()Ljava/lang/String; getKey b method_25822 + m (Lnet/minecraft/world/level/block/state/properties/Property$Value;)Ljava/lang/String; method_25823 b method_25823 + m (Ljava/util/List;)V + p 1 values + m ()V +c net/minecraft/data/models/blockstates/Variant nx net/minecraft/class_4935 + f Ljava/util/Map; values a field_22884 + m ()Lnet/minecraft/data/models/blockstates/Variant; variant a method_25824 + m (Lcom/google/gson/JsonArray;Lnet/minecraft/data/models/blockstates/Variant;)V method_25825 a method_25825 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/data/models/blockstates/VariantProperty$Value;)V method_25826 a method_25826 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; convertList a method_25829 + p 0 definitions + m (Lnet/minecraft/data/models/blockstates/Variant;Lnet/minecraft/data/models/blockstates/Variant;)Lnet/minecraft/data/models/blockstates/Variant; merge a method_25827 + p 0 definition1 + p 1 definition2 + m (Lnet/minecraft/data/models/blockstates/VariantProperty;Ljava/lang/Object;)Lnet/minecraft/data/models/blockstates/Variant; with a method_25828 + p 1 property + p 2 value + m ()Lcom/google/gson/JsonElement; get b method_25830 + m ()V +c net/minecraft/data/models/blockstates/VariantProperties ny net/minecraft/class_4936 + f Lnet/minecraft/data/models/blockstates/VariantProperty; X_ROT a field_22885 + f Lnet/minecraft/data/models/blockstates/VariantProperty; Y_ROT b field_22886 + f Lnet/minecraft/data/models/blockstates/VariantProperty; MODEL c field_22887 + f Lnet/minecraft/data/models/blockstates/VariantProperty; UV_LOCK d field_22888 + f Lnet/minecraft/data/models/blockstates/VariantProperty; WEIGHT e field_22889 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/google/gson/JsonElement; method_25832 a method_25832 + m (Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)Lcom/google/gson/JsonElement; method_25831 a method_25831 + m (Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation;)Lcom/google/gson/JsonElement; method_25833 b method_25833 + m ()V + m ()V +c net/minecraft/data/models/blockstates/VariantProperties$Rotation ny$a net/minecraft/class_4936$class_4937 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R0 a field_22890 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R90 b field_22891 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R180 c field_22892 + f Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; R270 d field_22893 + f I value e field_22894 + f [Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; $VALUES f field_22895 + m ()[Lnet/minecraft/data/models/blockstates/VariantProperties$Rotation; $values a method_36941 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/data/models/blockstates/VariantProperty nz net/minecraft/class_4938 + f Ljava/lang/String; key a field_22896 + f Ljava/util/function/Function; serializer b field_22897 + m (Ljava/lang/Object;)Lnet/minecraft/data/models/blockstates/VariantProperty$Value; withValue a method_25836 + p 1 value + m (Ljava/lang/String;Ljava/util/function/Function;)V + p 1 key + p 2 serializer +c net/minecraft/data/models/blockstates/VariantProperty$Value nz$a net/minecraft/class_4938$class_4939 + f Lnet/minecraft/data/models/blockstates/VariantProperty; field_22898 a field_22898 + f Ljava/lang/Object; value b field_22899 + m ()Lnet/minecraft/data/models/blockstates/VariantProperty; getKey a method_35907 + m (Lcom/google/gson/JsonObject;)V addToVariant a method_25838 + p 1 jsonObject + m (Lnet/minecraft/data/models/blockstates/VariantProperty;Ljava/lang/Object;)V + p 2 value +c net/minecraft/data/models/blockstates/package-info oa net/minecraft/class_6292 +c net/minecraft/data/models/model/DelegatedModel ob net/minecraft/class_4940 + f Lnet/minecraft/resources/ResourceLocation; parent a field_22900 + m ()Lcom/google/gson/JsonElement; get a method_25839 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 parent +c net/minecraft/data/models/model/ModelLocationUtils oc net/minecraft/class_4941 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25840 + p 0 item + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25841 + p 0 item + p 1 modelLocationSuffix + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25842 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_25843 + p 0 block + p 1 modelLocationSuffix + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; decorateBlockModelLocation a method_25844 + p 0 blockModelLocation + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46196 a method_46196 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; decorateItemModelLocation b method_25845 + p 0 itemModelLocation + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46197 b method_46197 + m ()V +c net/minecraft/data/models/model/ModelTemplate od net/minecraft/class_4942 + f Ljava/util/Optional; model a field_22901 + f Ljava/util/Set; requiredSlots b field_22902 + f Ljava/util/Optional; suffix c field_22903 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonObject; createBaseTemplate a method_48524 + p 1 modelLocation + p 2 modelGetter + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25852 + p 1 modelLocation + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;Lnet/minecraft/data/models/model/ModelTemplate$JsonFactory;)Lnet/minecraft/resources/ResourceLocation; create a method_48525 + p 1 modelLocation + p 2 textureMapping + p 3 modelOutput + p 4 factory + m (Lcom/google/gson/JsonObject;Lnet/minecraft/resources/ResourceLocation;)V method_48526 a method_48526 + m (Lcom/google/gson/JsonObject;Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)V method_48527 a method_48527 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getDefaultModelLocation a method_54828 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix a method_25847 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 textureMapping + p 4 modelOutput + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25846 + p 1 modelBlock + p 2 textureMapping + p 3 modelOutput + m (Lnet/minecraft/data/models/model/ModelTemplate$JsonFactory;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)Lcom/google/gson/JsonElement; method_48528 a method_48528 + m (Lnet/minecraft/data/models/model/TextureMapping;)Ljava/util/Map; createMap a method_25850 + p 1 textureMapping + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Lnet/minecraft/data/models/model/TextureMapping;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithOverride b method_25853 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 textureMapping + p 4 modelOutput + m (Ljava/util/Optional;Ljava/util/Optional;[Lnet/minecraft/data/models/model/TextureSlot;)V + p 1 model + p 2 suffix + p 3 requiredSlots +c net/minecraft/data/models/model/ModelTemplate$JsonFactory od$a net/minecraft/class_4942$class_8073 +c net/minecraft/data/models/model/ModelTemplates oe net/minecraft/class_4943 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_LEFT_OPEN A field_38021 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_RIGHT B field_38022 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_RIGHT_OPEN C field_38023 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_POST D field_40630 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_NORTH E field_40631 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_EAST F field_40621 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_SOUTH G field_40622 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_SIDE_WEST H field_40623 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_INVENTORY I field_40624 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_POST J field_22988 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_SIDE K field_22989 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_INVENTORY L field_22990 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_POST M field_22991 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_LOW_SIDE N field_22992 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_TALL_SIDE O field_22993 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_INVENTORY P field_22994 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_CLOSED Q field_40625 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_OPEN R field_40626 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_WALL_CLOSED S field_40627 + f Lnet/minecraft/data/models/model/ModelTemplate; CUSTOM_FENCE_GATE_WALL_OPEN T field_40628 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_CLOSED U field_22995 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_OPEN V field_22996 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_WALL_CLOSED W field_22904 + f Lnet/minecraft/data/models/model/ModelTemplate; FENCE_GATE_WALL_OPEN X field_22905 + f Lnet/minecraft/data/models/model/ModelTemplate; PRESSURE_PLATE_UP Y field_22906 + f Lnet/minecraft/data/models/model/ModelTemplate; PRESSURE_PLATE_DOWN Z field_22907 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_4 aA field_42950 + f Lnet/minecraft/data/models/model/ModelTemplate; CORAL_FAN aB field_22946 + f Lnet/minecraft/data/models/model/ModelTemplate; CORAL_WALL_FAN aC field_22947 + f Lnet/minecraft/data/models/model/ModelTemplate; GLAZED_TERRACOTTA aD field_22948 + f Lnet/minecraft/data/models/model/ModelTemplate; CHORUS_FLOWER aE field_22949 + f Lnet/minecraft/data/models/model/ModelTemplate; DAYLIGHT_DETECTOR aF field_22950 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_NOSIDE aG field_22951 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_NOSIDE_ALT aH field_22952 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_POST aI field_22953 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_SIDE aJ field_22954 + f Lnet/minecraft/data/models/model/ModelTemplate; STAINED_GLASS_PANE_SIDE_ALT aK field_22955 + f Lnet/minecraft/data/models/model/ModelTemplate; COMMAND_BLOCK aL field_22956 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE a field_22942 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_LEFT aM field_41527 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_MID aN field_41528 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_TOP_RIGHT aO field_41529 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_LEFT aP field_41530 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_MID aQ field_41531 + f Lnet/minecraft/data/models/model/ModelTemplate; CHISELED_BOOKSHELF_SLOT_BOTTOM_RIGHT aR field_41532 + f Lnet/minecraft/data/models/model/ModelTemplate; ANVIL aS field_22957 + f [Lnet/minecraft/data/models/model/ModelTemplate; STEMS aT field_22958 + f Lnet/minecraft/data/models/model/ModelTemplate; ATTACHED_STEM aU field_22959 + f Lnet/minecraft/data/models/model/ModelTemplate; CROP aV field_22960 + f Lnet/minecraft/data/models/model/ModelTemplate; FARMLAND aW field_22961 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_FLOOR aX field_22962 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_SIDE aY field_22963 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_SIDE_ALT aZ field_22964 + f Lnet/minecraft/data/models/model/ModelTemplate; PARTICLE_ONLY aa field_22908 + f Lnet/minecraft/data/models/model/ModelTemplate; SLAB_BOTTOM ab field_22909 + f Lnet/minecraft/data/models/model/ModelTemplate; SLAB_TOP ac field_22910 + f Lnet/minecraft/data/models/model/ModelTemplate; LEAVES ad field_22911 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_STRAIGHT ae field_22912 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_INNER af field_22913 + f Lnet/minecraft/data/models/model/ModelTemplate; STAIRS_OUTER ag field_22914 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_TOP ah field_22915 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_BOTTOM ai field_22916 + f Lnet/minecraft/data/models/model/ModelTemplate; TRAPDOOR_OPEN aj field_22917 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_TOP ak field_22918 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_BOTTOM al field_22919 + f Lnet/minecraft/data/models/model/ModelTemplate; ORIENTABLE_TRAPDOOR_OPEN am field_22920 + f Lnet/minecraft/data/models/model/ModelTemplate; POINTED_DRIPSTONE an field_28080 + f Lnet/minecraft/data/models/model/ModelTemplate; CROSS ao field_22921 + f Lnet/minecraft/data/models/model/ModelTemplate; TINTED_CROSS ap field_22922 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWER_POT_CROSS aq field_22923 + f Lnet/minecraft/data/models/model/ModelTemplate; TINTED_FLOWER_POT_CROSS ar field_22924 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_FLAT as field_22925 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_CURVED at field_22926 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_RAISED_NE au field_22927 + f Lnet/minecraft/data/models/model/ModelTemplate; RAIL_RAISED_SW av field_22928 + f Lnet/minecraft/data/models/model/ModelTemplate; CARPET aw field_22929 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_1 ax field_42947 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_2 ay field_42948 + f Lnet/minecraft/data/models/model/ModelTemplate; FLOWERBED_3 az field_42949 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_ROD_ITEM bA field_22940 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_LAYERED_ITEM bB field_42232 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_LAYERED_ITEM bC field_42233 + f Lnet/minecraft/data/models/model/ModelTemplate; SHULKER_BOX_INVENTORY bD field_22941 + f Lnet/minecraft/data/models/model/ModelTemplate; BED_INVENTORY bE field_22943 + f Lnet/minecraft/data/models/model/ModelTemplate; BANNER_INVENTORY bF field_22944 + f Lnet/minecraft/data/models/model/ModelTemplate; SKULL_INVENTORY bG field_22945 + f Lnet/minecraft/data/models/model/ModelTemplate; CANDLE bH field_27785 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_CANDLES bI field_27786 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_CANDLES bJ field_27787 + f Lnet/minecraft/data/models/model/ModelTemplate; FOUR_CANDLES bK field_27788 + f Lnet/minecraft/data/models/model/ModelTemplate; CANDLE_CAKE bL field_27789 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_DIRECTIONAL b field_23400 + f Lnet/minecraft/data/models/model/ModelTemplate; SCULK_SHRIEKER bM field_38469 + f Lnet/minecraft/data/models/model/ModelTemplate; VAULT bN field_48980 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_MACE_ITEM bO field_49915 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_UP ba field_22965 + f Lnet/minecraft/data/models/model/ModelTemplate; FIRE_UP_ALT bb field_22966 + f Lnet/minecraft/data/models/model/ModelTemplate; CAMPFIRE bc field_23957 + f Lnet/minecraft/data/models/model/ModelTemplate; LANTERN bd field_22967 + f Lnet/minecraft/data/models/model/ModelTemplate; HANGING_LANTERN be field_22968 + f Lnet/minecraft/data/models/model/ModelTemplate; TORCH bf field_22969 + f Lnet/minecraft/data/models/model/ModelTemplate; WALL_TORCH bg field_22970 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON bh field_22971 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON_HEAD bi field_22930 + f Lnet/minecraft/data/models/model/ModelTemplate; PISTON_HEAD_SHORT bj field_22931 + f Lnet/minecraft/data/models/model/ModelTemplate; SEAGRASS bk field_22932 + f Lnet/minecraft/data/models/model/ModelTemplate; TURTLE_EGG bl field_22933 + f Lnet/minecraft/data/models/model/ModelTemplate; TWO_TURTLE_EGGS bm field_22934 + f Lnet/minecraft/data/models/model/ModelTemplate; THREE_TURTLE_EGGS bn field_22935 + f Lnet/minecraft/data/models/model/ModelTemplate; FOUR_TURTLE_EGGS bo field_22936 + f Lnet/minecraft/data/models/model/ModelTemplate; SINGLE_FACE bp field_22937 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_LEVEL1 bq field_28014 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_LEVEL2 br field_28015 + f Lnet/minecraft/data/models/model/ModelTemplate; CAULDRON_FULL bs field_27784 + f Lnet/minecraft/data/models/model/ModelTemplate; AZALEA bt field_28804 + f Lnet/minecraft/data/models/model/ModelTemplate; POTTED_AZALEA bu field_33965 + f Lnet/minecraft/data/models/model/ModelTemplate; POTTED_FLOWERING_AZALEA bv field_43408 + f Lnet/minecraft/data/models/model/ModelTemplate; SNIFFER_EGG bw field_43384 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_ITEM bx field_22938 + f Lnet/minecraft/data/models/model/ModelTemplate; MUSIC_DISC by field_44581 + f Lnet/minecraft/data/models/model/ModelTemplate; FLAT_HANDHELD_ITEM bz field_22939 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ALL c field_22972 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ALL_INNER_FACES d field_47500 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_MIRRORED_ALL e field_22973 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_NORTH_WEST_MIRRORED_ALL f field_38015 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_X g field_41276 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_Y h field_41277 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_UV_LOCKED_Z i field_41278 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN j field_22974 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_HORIZONTAL k field_22975 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_COLUMN_MIRRORED l field_29081 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_TOP m field_22976 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_BOTTOM_TOP n field_22977 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_BOTTOM_TOP_INNER_FACES o field_47501 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE p field_22978 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE_TOP_BOTTOM q field_22979 + f Lnet/minecraft/data/models/model/ModelTemplate; CUBE_ORIENTABLE_VERTICAL r field_22980 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON s field_22981 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON_PRESSED t field_22982 + f Lnet/minecraft/data/models/model/ModelTemplate; BUTTON_INVENTORY u field_22983 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_LEFT v field_38016 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_LEFT_OPEN w field_38017 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_RIGHT x field_38018 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_BOTTOM_RIGHT_OPEN y field_38019 + f Lnet/minecraft/data/models/model/ModelTemplate; DOOR_TOP_LEFT z field_38020 + m (I)[Lnet/minecraft/data/models/model/ModelTemplate; method_25854 a method_25854 + m (Ljava/lang/String;Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25855 + p 0 blockModelLocation + p 1 suffix + p 2 requiredSlots + m (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25856 + p 0 blockModelLocation + p 1 requiredSlots + m ([Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; create a method_25857 + p 0 requiredSlots + m (I)Lnet/minecraft/data/models/model/ModelTemplate; method_25858 b method_25858 + m (Ljava/lang/String;[Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/ModelTemplate; createItem b method_25859 + p 0 itemModelLocation + p 1 requiredSlots + m ()V + m ()V +c net/minecraft/data/models/model/TextureMapping of net/minecraft/class_4944 + f Ljava/util/Map; slots a field_22997 + f Ljava/util/Set; forcedSlots b field_22998 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCube A method_25907 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCubeOnlyTop B method_25908 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; orientableCubeSameEnds C method_25909 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; top D method_25910 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; campfire E method_27167 + p 0 campfireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; layer0 F method_25911 + p 0 layerZeroBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceLocation; getBlockTexture G method_25860 + p 0 block + m ()Ljava/util/stream/Stream; getForced a method_25861 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; defaultTexture a method_25869 + p 0 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; column a method_25870 + p 0 sideTextureLocation + p 1 endTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layered a method_48745 + p 0 layer0 + p 1 layer1 + p 2 layer2 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/models/model/TextureMapping; particleFromItem a method_25862 + p 0 particleItem + m (Lnet/minecraft/world/item/Item;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getItemTexture a method_25863 + p 0 item + p 1 textureSuffix + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cube a method_25864 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; attachedStem a method_25865 + p 0 unattachedStemBlock + p 1 attachedStemBlock + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getBlockTexture a method_25866 + p 0 block + p 1 textureSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; trialSpawner a method_55307 + p 0 trialSpawnerBlock + p 1 sideSuffix + p 2 topSuffix + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; vault a method_56887 + p 0 vaultBlock + p 1 frontSuffix + p 2 sideSuffix + p 3 topSuffix + p 4 bottomSuffix + m (Lnet/minecraft/world/level/block/Block;Z)Lnet/minecraft/data/models/model/TextureMapping; candleCake a method_32231 + p 0 candleCakeBlock + p 1 lit + m (Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureMapping; snifferEgg a method_50027 + p 0 crackLevel + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46198 a method_46198 + m (Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/resources/ResourceLocation; get a method_25867 + p 1 textureSlot + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; put a method_25868 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureMapping; copySlot a method_35908 + p 1 sourceSlot + p 2 targetSlot + m (Z)Lnet/minecraft/data/models/model/TextureMapping; sculkShrieker a method_42753 + p 0 canSummon + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cube b method_25875 + p 0 allTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; door b method_35910 + p 0 topTextureLocation + p 1 bottomTextureLocation + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/models/model/TextureMapping; layer0 b method_25871 + p 0 layerZeroItem + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; defaultTexture b method_25872 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pane b method_25873 + p 0 glassBlock + p 1 paneBlock + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_46199 b method_46199 + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; putForced b method_35909 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureMapping; copyForced b method_25874 + p 1 sourceSlot + p 2 targetSlot + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cross c method_25880 + p 0 crossTextureLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layered c method_48529 + p 0 layer0 + p 1 layer1 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceLocation; getItemTexture c method_25876 + p 0 item + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cross c method_25877 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; craftingTable c method_25878 + p 0 craftingTableBlock + p 1 craftingTableMaterialBlock + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; copyAndUpdate c method_25879 + p 1 textureSlot + p 2 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; plant d method_25884 + p 0 plantTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; plant d method_25881 + p 0 plantBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fletchingTable d method_25882 + p 0 fletchingTableBlock + p 1 fletchingTableMaterialBlock + m (Lnet/minecraft/data/models/model/TextureSlot;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; singleSlot d method_25883 + p 0 textureSlot + p 1 textureLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; rail e method_25886 + p 0 railTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; rail e method_25885 + p 0 railBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; wool f method_35911 + p 0 woolTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; wool f method_25887 + p 0 woolBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; crop g method_25889 + p 0 cropTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; flowerbed g method_49379 + p 0 flowerbedBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; particle h method_25891 + p 0 textureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; stem h method_25888 + p 0 stemBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; torch i method_25893 + p 0 torchTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pattern i method_25890 + p 0 patternBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; cauldron j method_32232 + p 0 cauldronContentTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fan j method_25892 + p 0 fanBlock + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TextureMapping; layer0 k method_25895 + p 0 layerZeroTextureLocation + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; column k method_25894 + p 0 columnBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeTop l method_25896 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; pottedAzalea m method_50028 + p 0 azaleaBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; logColumn n method_25897 + p 0 logBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fence o method_46200 + p 0 fenceBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; customParticle p method_46201 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeBottomTop q method_25898 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; cubeBottomTopWithWall r method_25899 + p 0 block + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; columnWithWall s method_27168 + p 0 columnBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; door t method_25900 + p 0 doorBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; particle u method_25901 + p 0 particleBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fire0 v method_25902 + p 0 fireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; fire1 w method_25903 + p 0 fireBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; lantern x method_25904 + p 0 lanternBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; torch y method_25905 + p 0 torchBlock + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TextureMapping; commandBlock z method_25906 + p 0 commandBlock + m ()V +c net/minecraft/data/models/model/TextureSlot og net/minecraft/class_4945 + f Lnet/minecraft/data/models/model/TextureSlot; CROP A field_22999 + f Lnet/minecraft/data/models/model/TextureSlot; DIRT B field_23000 + f Lnet/minecraft/data/models/model/TextureSlot; FIRE C field_23001 + f Lnet/minecraft/data/models/model/TextureSlot; LANTERN D field_23002 + f Lnet/minecraft/data/models/model/TextureSlot; PLATFORM E field_23003 + f Lnet/minecraft/data/models/model/TextureSlot; UNSTICKY F field_23004 + f Lnet/minecraft/data/models/model/TextureSlot; TORCH G field_23005 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER0 H field_23006 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER1 I field_42089 + f Lnet/minecraft/data/models/model/TextureSlot; LAYER2 J field_42234 + f Lnet/minecraft/data/models/model/TextureSlot; LIT_LOG K field_23958 + f Lnet/minecraft/data/models/model/TextureSlot; CANDLE L field_27790 + f Lnet/minecraft/data/models/model/TextureSlot; INSIDE M field_27791 + f Lnet/minecraft/data/models/model/TextureSlot; CONTENT N field_27792 + f Lnet/minecraft/data/models/model/TextureSlot; INNER_TOP O field_38470 + f Lnet/minecraft/data/models/model/TextureSlot; FLOWERBED P field_42951 + f Ljava/lang/String; id Q field_23007 + f Lnet/minecraft/data/models/model/TextureSlot; parent R field_23008 + f Lnet/minecraft/data/models/model/TextureSlot; ALL a field_23010 + f Lnet/minecraft/data/models/model/TextureSlot; TEXTURE b field_23011 + f Lnet/minecraft/data/models/model/TextureSlot; PARTICLE c field_23012 + f Lnet/minecraft/data/models/model/TextureSlot; END d field_23013 + f Lnet/minecraft/data/models/model/TextureSlot; BOTTOM e field_23014 + f Lnet/minecraft/data/models/model/TextureSlot; TOP f field_23015 + f Lnet/minecraft/data/models/model/TextureSlot; FRONT g field_23016 + f Lnet/minecraft/data/models/model/TextureSlot; BACK h field_23017 + f Lnet/minecraft/data/models/model/TextureSlot; SIDE i field_23018 + f Lnet/minecraft/data/models/model/TextureSlot; NORTH j field_23019 + f Lnet/minecraft/data/models/model/TextureSlot; SOUTH k field_23020 + f Lnet/minecraft/data/models/model/TextureSlot; EAST l field_23021 + f Lnet/minecraft/data/models/model/TextureSlot; WEST m field_23022 + f Lnet/minecraft/data/models/model/TextureSlot; UP n field_23023 + f Lnet/minecraft/data/models/model/TextureSlot; DOWN o field_23024 + f Lnet/minecraft/data/models/model/TextureSlot; CROSS p field_23025 + f Lnet/minecraft/data/models/model/TextureSlot; PLANT q field_23026 + f Lnet/minecraft/data/models/model/TextureSlot; WALL r field_23027 + f Lnet/minecraft/data/models/model/TextureSlot; RAIL s field_23028 + f Lnet/minecraft/data/models/model/TextureSlot; WOOL t field_23029 + f Lnet/minecraft/data/models/model/TextureSlot; PATTERN u field_23030 + f Lnet/minecraft/data/models/model/TextureSlot; PANE v field_23031 + f Lnet/minecraft/data/models/model/TextureSlot; EDGE w field_23032 + f Lnet/minecraft/data/models/model/TextureSlot; FAN x field_23033 + f Lnet/minecraft/data/models/model/TextureSlot; STEM y field_23034 + f Lnet/minecraft/data/models/model/TextureSlot; UPPER_STEM z field_23035 + m ()Ljava/lang/String; getId a method_25912 + m (Ljava/lang/String;)Lnet/minecraft/data/models/model/TextureSlot; create a method_27043 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/data/models/model/TextureSlot;)Lnet/minecraft/data/models/model/TextureSlot; create a method_27044 + p 0 id + p 1 parent + m ()Lnet/minecraft/data/models/model/TextureSlot; getParent b method_25913 + m (Ljava/lang/String;Lnet/minecraft/data/models/model/TextureSlot;)V + p 1 id + p 2 parent + m ()V +c net/minecraft/data/models/model/TexturedModel oh net/minecraft/class_4946 + f Lnet/minecraft/data/models/model/TextureMapping; mapping A field_23058 + f Lnet/minecraft/data/models/model/ModelTemplate; template B field_23059 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE a field_23036 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_INNER_FACES b field_47502 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_MIRRORED c field_23037 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN d field_23038 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_HORIZONTAL e field_23039 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_TOP_BOTTOM f field_23040 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CUBE_TOP g field_23041 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ORIENTABLE_ONLY_TOP h field_23042 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ORIENTABLE i field_23043 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CARPET j field_23044 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_1 k field_42952 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_2 l field_42953 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_3 m field_42954 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; FLOWERBED_4 n field_42955 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; GLAZED_TERRACOTTA o field_23045 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; CORAL_FAN p field_23046 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; PARTICLE_ONLY q field_23047 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; ANVIL r field_23048 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; LEAVES s field_23049 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; LANTERN t field_23050 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; HANGING_LANTERN u field_23051 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; SEAGRASS v field_23054 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_ALT w field_23055 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_HORIZONTAL_ALT x field_23056 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; TOP_BOTTOM_WITH_WALL y field_23057 + f Lnet/minecraft/data/models/model/TexturedModel$Provider; COLUMN_WITH_WALL z field_23959 + m ()Lnet/minecraft/data/models/model/ModelTemplate; getTemplate a method_25914 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/models/model/TexturedModel; createAllSame a method_25920 + p 0 allTextureLocation + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix a method_25915 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 modelOutput + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create a method_25916 + p 1 modelBlock + p 2 modelOutput + m (Ljava/util/function/Consumer;)Lnet/minecraft/data/models/model/TexturedModel; updateTextures a method_25917 + p 1 textureMappingConsumer + m (Ljava/util/function/Function;Lnet/minecraft/data/models/model/ModelTemplate;)Lnet/minecraft/data/models/model/TexturedModel$Provider; createDefault a method_25918 + p 0 blockToTextureMapping + p 1 modelTemplate + m (Ljava/util/function/Function;Lnet/minecraft/data/models/model/ModelTemplate;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TexturedModel; method_25919 a method_25919 + m ()Lnet/minecraft/data/models/model/TextureMapping; getMapping b method_25921 + m (Lnet/minecraft/data/models/model/TextureMapping;Lnet/minecraft/data/models/model/ModelTemplate;)V + p 1 mapping + p 2 template + m ()V +c net/minecraft/data/models/model/TexturedModel$Provider oh$a net/minecraft/class_4946$class_4947 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/data/models/model/TexturedModel; method_35913 a method_35913 + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; create create method_25923 + p 1 modelBlock + p 2 modelOutput + m (Lnet/minecraft/world/level/block/Block;Ljava/lang/String;Ljava/util/function/BiConsumer;)Lnet/minecraft/resources/ResourceLocation; createWithSuffix createWithSuffix method_25922 + p 1 modelBlock + p 2 modelLocationSuffix + p 3 modelOutput + m (Ljava/util/function/Consumer;)Lnet/minecraft/data/models/model/TexturedModel$Provider; updateTexture updateTexture method_35912 + p 1 textureMappingConsumer +c net/minecraft/data/models/model/package-info oi net/minecraft/class_6293 +c net/minecraft/data/models/package-info oj net/minecraft/class_6294 +c net/minecraft/data/package-info ok net/minecraft/class_6295 +c net/minecraft/data/recipes/RecipeBuilder ol net/minecraft/class_5797 + f Lnet/minecraft/resources/ResourceLocation; ROOT_RECIPE_ADVANCEMENT a field_39377 + m ()Lnet/minecraft/world/item/Item; getResult a method_36441 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/resources/ResourceLocation; getDefaultRecipeId a method_36442 + p 0 itemLike + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/RecipeBuilder; group a method_33529 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/RecipeBuilder; unlockedBy a method_33530 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; determineBookCategory a method_55308 + p 0 category + m (Lnet/minecraft/data/recipes/RecipeOutput;)V save a method_10431 + p 1 recipeOutput + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_17972 + p 1 recipeOutput + p 2 id + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_36443 + p 1 recipeOutput + p 2 id + m ()V +c net/minecraft/data/recipes/RecipeBuilder$1 ol$1 net/minecraft/class_5797$1 + f [I $SwitchMap$net$minecraft$data$recipes$RecipeCategory a field_47503 + m ()V +c net/minecraft/data/recipes/RecipeCategory om net/minecraft/class_7800 + f Lnet/minecraft/data/recipes/RecipeCategory; BUILDING_BLOCKS a field_40634 + f Lnet/minecraft/data/recipes/RecipeCategory; DECORATIONS b field_40635 + f Lnet/minecraft/data/recipes/RecipeCategory; REDSTONE c field_40636 + f Lnet/minecraft/data/recipes/RecipeCategory; TRANSPORTATION d field_40637 + f Lnet/minecraft/data/recipes/RecipeCategory; TOOLS e field_40638 + f Lnet/minecraft/data/recipes/RecipeCategory; COMBAT f field_40639 + f Lnet/minecraft/data/recipes/RecipeCategory; FOOD g field_40640 + f Lnet/minecraft/data/recipes/RecipeCategory; BREWING h field_40641 + f Lnet/minecraft/data/recipes/RecipeCategory; MISC i field_40642 + f Ljava/lang/String; recipeFolderName j field_40643 + f [Lnet/minecraft/data/recipes/RecipeCategory; $VALUES k field_40644 + m ()Ljava/lang/String; getFolderName a method_46203 + m ()[Lnet/minecraft/data/recipes/RecipeCategory; $values b method_46204 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 recipeFolderName + m ()V +c net/minecraft/data/recipes/RecipeOutput on net/minecraft/class_8790 + m ()Lnet/minecraft/advancements/Advancement$Builder; advancement a method_53818 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/crafting/Recipe;Lnet/minecraft/advancements/AdvancementHolder;)V accept a method_53819 + p 1 location + p 2 recipe + p 3 advancement +c net/minecraft/data/recipes/RecipeProvider oo net/minecraft/class_2446 + f Lnet/minecraft/data/PackOutput$PathProvider; recipePathProvider d field_39378 + f Lnet/minecraft/data/PackOutput$PathProvider; advancementPathProvider e field_39379 + f Ljava/util/concurrent/CompletableFuture; registries f field_48981 + f Ljava/util/Map; SHAPE_BUILDERS g field_28555 + m (I)[Lnet/minecraft/advancements/critereon/ItemPredicate; method_53497 a method_53497 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/advancements/Criterion; has a method_10420 + p 0 tag + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/BlockFamily;Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/BlockFamily$Variant;Lnet/minecraft/world/level/block/Block;)V method_33534 a method_33534 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V method_34853 a method_34853 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)Z method_52186 a method_52186 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; has a method_10426 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; doorBuilder a method_33544 + p 0 door + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getConversionRecipeName a method_33714 + p 0 result + p 1 ingredient + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; insideOf a method_10422 + p 0 block + m (Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; has a method_35914 + p 0 count + p 1 item + m (Lnet/minecraft/data/BlockFamily;Lnet/minecraft/data/BlockFamily$Variant;)Lnet/minecraft/world/level/block/Block; getBaseBlock a method_33533 + p 0 family + p 1 variant + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletableFuture; run a method_56888 + p 1 output + p 2 registries + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/advancements/AdvancementHolder;)Ljava/util/concurrent/CompletableFuture; buildAdvancement a method_46206 + p 1 output + p 2 registries + p 3 advancement + m (Lnet/minecraft/data/recipes/RecipeBuilder;Lnet/minecraft/data/BlockFamily$Variant;Ljava/lang/String;)V method_33536 a method_33536 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; slabBuilder a method_32804 + p 0 category + p 1 slab + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;)V buildRecipes a method_10419 + p 1 recipeOutput + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;)V generateForEnabledBlockFamilies a method_46207 + p 0 recipeOutput + p 1 enabledFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/data/BlockFamily;)V method_46210 a method_46210 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V trimSmithing a method_48530 + p 0 recipeOutput + p 1 ingredientItem + p 2 location + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/Item;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)V netheriteSmithing a method_29728 + p 0 recipeOutput + p 1 ingredientItem + p 2 category + p 3 resultItem + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;Ljava/lang/String;)V oreCooking a method_36232 + p 0 recipeOutput + p 1 serializer + p 2 recipeFactory + p 3 ingredients + p 4 category + p 5 result + p 6 experience + p 7 cookingTime + p 8 group + p 9 suffix + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;)V copySmithingTemplate a method_48532 + p 0 recipeOutput + p 1 template + p 2 baseMaterial + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;I)V planksFromLog a method_24475 + p 0 recipeOutput + p 1 planks + p 2 logs + p 3 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)V copySmithingTemplate a method_60922 + p 0 recipeOutput + p 1 template + p 2 baseItem + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V woodFromLogs a method_24476 + p 0 recipeOutput + p 1 wood + p 2 log + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;)V oneToOneConversionRecipe a method_36444 + p 0 recipeOutput + p 1 result + p 2 ingredient + p 3 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;I)V oneToOneConversionRecipe a method_36445 + p 0 recipeOutput + p 1 result + p 2 ingredient + p 3 group + p 4 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V grate a method_54829 + p 0 recipeOutput + p 1 grateBlock + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;I)V cookRecipes a method_17585 + p 0 recipeOutput + p 1 cookingMethod + p 2 cookingSerializer + p 3 recipeFactory + p 4 cookingTime + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;ILnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;F)V simpleCookingRecipe a method_36448 + p 0 recipeOutput + p 1 cookingMethod + p 2 cookingSerializer + p 3 recipeFactory + p 4 cookingTime + p 5 material + p 6 result + p 7 experience + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Ljava/util/List;Ljava/lang/String;)V colorBlockWithDye a method_51890 + p 0 recipeOutput + p 1 dyes + p 2 dyeableItems + p 3 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;)V oreSmelting a method_36233 + p 0 recipeOutput + p 1 ingredients + p 2 category + p 3 result + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/BlockFamily;Lnet/minecraft/world/flag/FeatureFlagSet;)V generateRecipes a method_33535 + p 0 recipeOutput + p 1 blockFamily + p 2 requiredFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V twoByTwoPacker a method_46209 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;I)V stonecutterResultFromBase a method_33715 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + p 4 resultCount + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;)V threeByThreePacker a method_47521 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + p 4 criterionName + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)V nineBlockStorageRecipes a method_36325 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipesWithCustomPacking a method_36446 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 packedName + p 6 packedGroup + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipes a method_36447 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 packedName + p 6 packedGroup + p 7 unpackedName + p 8 unpackedGroup + m ([Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; inventoryTrigger a method_53499 + p 0 items + m ([Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; inventoryTrigger a method_10423 + p 0 predicates + m (I)[Ljava/util/concurrent/CompletableFuture; method_46579 b method_46579 + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getHasName b method_32807 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; stairBuilder b method_32808 + p 0 stairs + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_36546 b method_36546 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_56889 b method_56889 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; chiseledBuilder b method_32805 + p 0 category + p 1 chiseledResult + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/flag/FeatureFlagSet;)V waxRecipes b method_34854 + p 0 recipeOutput + p 1 requiredFeatures + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/tags/TagKey;I)V planksFromLogs b method_24477 + p 0 recipeOutput + p 1 planks + p 2 logs + p 3 result + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V woodenBoat b method_24478 + p 0 recipeOutput + p 1 boat + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V copperBulb b method_54830 + p 0 recipeOutput + p 1 bulbBlock + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;)V oreBlasting b method_36234 + p 0 recipeOutput + p 1 ingredients + p 2 category + p 3 result + p 4 experience + p 5 cookingTime + p 6 group + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V threeByThreePacker b method_47522 + p 0 recipeOutput + p 1 category + p 2 packed + p 3 unpacked + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;)V nineBlockStorageRecipesRecipesWithCustomUnpacking b method_36449 + p 0 recipeOutput + p 1 unpackedCategory + p 2 unpacked + p 3 packedCategory + p 4 packed + p 5 unpackedName + p 6 unpackedGroup + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getItemName c method_33716 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; trapdoorBuilder c method_33553 + p 0 trapdoor + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33556 c method_33556 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; pressurePlateBuilder c method_32806 + p 0 category + p 1 pressurePlate + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V chestBoat c method_42754 + p 0 recipeOutput + p 1 boat + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V slab c method_32814 + p 0 recipeOutput + p 1 category + p 2 slab + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getSimpleRecipeName d method_36450 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; buttonBuilder d method_33542 + p 0 button + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33532 d method_33532 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; wallBuilder d method_33531 + p 0 category + p 1 wall + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V pressurePlate d method_32813 + p 0 recipeOutput + p 1 pressurePlate + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V wall d method_32809 + p 0 recipeOutput + p 1 category + p 2 wall + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getSmeltingRecipeName e method_36451 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; fenceBuilder e method_33546 + p 0 fence + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33538 e method_33538 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; polishedBuilder e method_33537 + p 0 category + p 1 result + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V hangingSign e method_46208 + p 0 recipeOutput + p 1 sign + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V polished e method_32810 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; getBlastingRecipeName f method_36452 + p 0 itemLike + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; fenceGateBuilder f method_33548 + p 0 fenceGate + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33541 f method_33541 + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; cutBuilder f method_36547 + p 0 category + p 1 cutResult + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V carpet f method_24885 + p 0 recipeOutput + p 1 carpet + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V cut f method_32811 + p 0 recipeOutput + p 1 category + p 2 cutResult + p 3 material + m (Lnet/minecraft/world/level/ItemLike;)Ljava/lang/String; method_33540 g method_33540 + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; signBuilder g method_33555 + p 0 sign + p 1 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33543 g method_33543 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V bedFromPlanksAndWool g method_24887 + p 0 recipeOutput + p 1 bed + p 2 wool + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V chiseled g method_32812 + p 0 recipeOutput + p 1 category + p 2 chiseledResult + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33545 h method_33545 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V banner h method_24889 + p 0 recipeOutput + p 1 banner + p 2 material + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V mosaicBuilder h method_46212 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33547 i method_33547 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassFromGlassAndDye i method_24890 + p 0 recipeOutput + p 1 stainedGlass + p 2 dye + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stonecutterResultFromBase i method_33717 + p 0 recipeOutput + p 1 category + p 2 result + p 3 material + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_46213 j method_46213 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassPaneFromStainedGlass j method_24891 + p 0 recipeOutput + p 1 stainedGlassPane + p 2 stainedGlass + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33549 k method_33549 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V stainedGlassPaneFromGlassPaneAndDye k method_24892 + p 0 recipeOutput + p 1 stainedGlassPane + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33551 l method_33551 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V coloredTerracottaFromTerracottaAndDye l method_24893 + p 0 recipeOutput + p 1 terracotta + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33550 m method_33550 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V concretePowder m method_24894 + p 0 recipeOutput + p 1 concretePowder + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_46214 n method_46214 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V candle n method_32233 + p 0 recipeOutput + p 1 candle + p 2 dye + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33552 o method_33552 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V copySmithingTemplate o method_48533 + p 0 recipeOutput + p 1 template + p 2 baseItem + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/RecipeBuilder; method_33554 p method_33554 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V smeltingResultFromBase p method_34662 + p 0 recipeOutput + p 1 result + p 2 ingredient + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/recipes/RecipeProvider$1 oo$1 net/minecraft/class_2446$1 + f Ljava/util/Set; val$allRecipes a field_46145 + f Ljava/util/List; val$tasks b field_46146 + f Lnet/minecraft/data/CachedOutput; val$cache c field_46147 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries d field_48982 + f Lnet/minecraft/data/recipes/RecipeProvider; field_46148 e field_46148 + m (Lnet/minecraft/data/recipes/RecipeProvider;Ljava/util/Set;Ljava/util/List;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/data/recipes/ShapedRecipeBuilder op net/minecraft/class_2447 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40645 + f Lnet/minecraft/world/item/Item; result c field_11380 + f I count d field_11378 + f Ljava/util/List; rows e field_11377 + f Ljava/util/Map; key f field_11376 + f Ljava/util/Map; criteria g field_46149 + f Ljava/lang/String; group h field_11381 + f Z showNotification i field_42956 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; ensureValid a method_10432 + p 1 loaction + m (Ljava/lang/Character;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10433 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 tag + m (Ljava/lang/Character;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10428 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 ingredient + m (Ljava/lang/Character;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; define a method_10434 + c Adds a key to the recipe pattern. + p 1 symbol + p 2 item + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; shaped a method_10437 + c Creates a new builder for a shaped recipe. + p 0 category + p 1 result + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; shaped a method_10436 + c Creates a new builder for a shaped recipe. + p 0 category + p 1 result + p 2 count + m (Z)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; showNotification a method_49380 + p 1 showNotification + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; pattern b method_10439 + c Adds a new entry to the patterns for this recipe. + p 1 pattern + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; unlockedBy b method_10429 + p 1 name + p 2 criterion + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; group c method_10435 + p 1 groupName + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 result + p 3 count +c net/minecraft/data/recipes/ShapelessRecipeBuilder oq net/minecraft/class_2450 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40646 + f Lnet/minecraft/world/item/Item; result c field_11396 + f I count d field_11395 + f Lnet/minecraft/core/NonNullList; ingredients e field_11394 + f Ljava/util/Map; criteria f field_11393 + f Ljava/lang/String; group g field_11398 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_10445 + c Makes sure that this recipe is valid and obtainable. + p 1 id + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10446 + c Adds an ingredient that can be any item in the given tag. + p 1 tag + m (Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10451 + c Adds an ingredient. + p 1 ingredient + m (Lnet/minecraft/world/item/crafting/Ingredient;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10453 + c Adds an ingredient multiple times. + p 1 ingredient + p 2 quantity + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires a method_10449 + c Adds the given ingredient multiple times. + p 1 item + p 2 quantity + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; shapeless a method_10447 + c Creates a new builder for a shapeless recipe. + p 0 category + p 1 result + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; shapeless a method_10448 + c Creates a new builder for a shapeless recipe. + p 0 category + p 1 result + p 2 count + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; requires b method_10454 + c Adds an ingredient of the given item. + p 1 item + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; group b method_10452 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/ShapelessRecipeBuilder; unlockedBy b method_10442 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 result + p 3 count +c net/minecraft/data/recipes/SimpleCookingRecipeBuilder or net/minecraft/class_2454 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40647 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; bookCategory c field_40648 + f Lnet/minecraft/world/item/Item; result d field_11417 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient e field_11418 + f F experience f field_11414 + f I cookingTime g field_11415 + f Ljava/util/Map; criteria h field_46150 + f Ljava/lang/String; group i field_11419 + f Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory; factory j field_47504 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_10471 + c Makes sure that this obtainable. + p 1 id + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; campfireCooking a method_35916 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; generic a method_17801 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + p 5 cookingSerializer + p 6 factory + m (Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineRecipeCategory a method_46215 + p 0 serializer + p 1 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; blasting b method_10473 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineSmeltingRecipeCategory b method_46216 + p 0 result + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; group b method_35917 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; unlockedBy b method_10469 + p 1 name + p 2 criterion + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; smelting c method_17802 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/CookingBookCategory; determineBlastingRecipeCategory c method_46217 + p 0 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FI)Lnet/minecraft/data/recipes/SimpleCookingRecipeBuilder; smoking d method_35918 + p 0 ingredient + p 1 category + p 2 result + p 3 experience + p 4 cookingTime + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;FILnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;)V + p 1 category + p 2 bookCategory + p 3 result + p 4 ingredient + p 5 experience + p 6 cookingTime + p 7 factory +c net/minecraft/data/recipes/SingleItemRecipeBuilder os net/minecraft/class_3981 + f Lnet/minecraft/data/recipes/RecipeCategory; category b field_40650 + f Lnet/minecraft/world/item/Item; result c field_17690 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient d field_17691 + f I count e field_17692 + f Ljava/util/Map; criteria f field_46151 + f Ljava/lang/String; group g field_17694 + f Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory; factory h field_47505 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_17973 + p 1 id + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; stonecutting a method_17968 + p 0 ingredient + p 1 category + p 2 result + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; stonecutting a method_17969 + p 0 ingredient + p 1 category + p 2 result + p 3 count + m (Ljava/lang/String;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; group b method_35919 + p 1 groupName + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SingleItemRecipeBuilder; unlockedBy b method_17970 + p 1 name + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/level/ItemLike;I)V + p 1 category + p 2 factory + p 3 ingredient + p 4 result + p 5 count +c net/minecraft/data/recipes/SmithingTransformRecipeBuilder ot net/minecraft/class_8074 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42090 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42091 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42092 + f Lnet/minecraft/data/recipes/RecipeCategory; category d field_42093 + f Lnet/minecraft/world/item/Item; result e field_42094 + f Ljava/util/Map; criteria f field_46152 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_48534 + p 1 location + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/recipes/SmithingTransformRecipeBuilder; smithing a method_48535 + p 0 template + p 1 base + p 2 addition + p 3 category + p 4 result + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SmithingTransformRecipeBuilder; unlocks a method_48536 + p 1 key + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_48537 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_48538 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/Item;)V + p 1 template + p 2 base + p 3 addition + p 4 category + p 5 result +c net/minecraft/data/recipes/SmithingTrimRecipeBuilder ou net/minecraft/class_8076 + f Lnet/minecraft/data/recipes/RecipeCategory; category a field_42097 + f Lnet/minecraft/world/item/crafting/Ingredient; template b field_42098 + f Lnet/minecraft/world/item/crafting/Ingredient; base c field_42099 + f Lnet/minecraft/world/item/crafting/Ingredient; addition d field_42100 + f Ljava/util/Map; criteria e field_46153 + m (Lnet/minecraft/resources/ResourceLocation;)V ensureValid a method_48539 + p 1 location + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/data/recipes/RecipeCategory;)Lnet/minecraft/data/recipes/SmithingTrimRecipeBuilder; smithingTrim a method_48540 + p 0 template + p 1 base + p 2 addition + p 3 category + m (Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)Lnet/minecraft/data/recipes/SmithingTrimRecipeBuilder; unlocks a method_48541 + p 1 key + p 2 criterion + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_48542 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;)V + p 1 category + p 2 template + p 3 base + p 4 addition +c net/minecraft/data/recipes/SpecialRecipeBuilder ov net/minecraft/class_2456 + f Ljava/util/function/Function; factory a field_47506 + m (Ljava/util/function/Function;)Lnet/minecraft/data/recipes/SpecialRecipeBuilder; special a method_10476 + p 0 factory + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/resources/ResourceLocation;)V save a method_10475 + p 1 recipeOutput + p 2 recipeId + m (Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;)V save a method_53820 + p 1 recipeOutput + p 2 recipeId + m (Ljava/util/function/Function;)V + p 1 factory +c net/minecraft/data/recipes/package-info ow net/minecraft/class_6296 +c net/minecraft/data/recipes/packs/BundleRecipeProvider ox net/minecraft/class_7801 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/data/recipes/packs/VanillaRecipeProvider oy net/minecraft/class_7803 + f Lcom/google/common/collect/ImmutableList; COAL_SMELTABLES d field_40652 + f Lcom/google/common/collect/ImmutableList; IRON_SMELTABLES e field_40653 + f Lcom/google/common/collect/ImmutableList; COPPER_SMELTABLES f field_40654 + f Lcom/google/common/collect/ImmutableList; GOLD_SMELTABLES g field_40655 + f Lcom/google/common/collect/ImmutableList; DIAMOND_SMELTABLES h field_40656 + f Lcom/google/common/collect/ImmutableList; LAPIS_SMELTABLES i field_40657 + f Lcom/google/common/collect/ImmutableList; REDSTONE_SMELTABLES j field_40658 + f Lcom/google/common/collect/ImmutableList; EMERALD_SMELTABLES k field_40659 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate; method_51693 a method_51693 + m (Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate;)V method_51695 a method_51695 + m ()Ljava/util/stream/Stream; smithingTrims b method_51694 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries + m ()V +c net/minecraft/data/recipes/packs/VanillaRecipeProvider$TrimTemplate oy$a net/minecraft/class_7803$class_8905 + f Lnet/minecraft/world/item/Item; template a comp_2012 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2013 + m ()Lnet/minecraft/world/item/Item; template a comp_2012 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2013 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/data/recipes/packs/package-info oz net/minecraft/class_7804 +c net/minecraft/data/registries/RegistriesDatapackGenerator pa net/minecraft/class_5475 + f Lnet/minecraft/data/PackOutput; output d field_40665 + f Ljava/util/concurrent/CompletableFuture; registries e field_40952 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46591 a method_46591 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Ljava/util/concurrent/CompletableFuture; method_46813 a method_46813 + m (Ljava/nio/file/Path;Lcom/mojang/serialization/DataResult$Error;)Ljava/util/concurrent/CompletableFuture; method_61090 a method_61090 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Encoder;Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; dumpValue a method_39680 + p 0 valuePath + p 1 output + p 2 ops + p 3 encoder + p 4 value + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Lcom/google/gson/JsonElement;)Ljava/util/concurrent/CompletableFuture; method_61091 a method_61091 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/concurrent/CompletionStage; method_46814 a method_46814 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Ljava/util/Optional; dumpRegistryCap a method_39678 + p 1 output + p 2 registries + p 3 ops + p 4 registryData + m (Lnet/minecraft/data/PackOutput$PathProvider;Lnet/minecraft/data/CachedOutput;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/Holder$Reference;)Ljava/util/concurrent/CompletableFuture; method_46592 a method_46592 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46815 b method_46815 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Ljava/util/stream/Stream; method_46816 b method_46816 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registries +c net/minecraft/data/registries/RegistryPatchGenerator pb net/minecraft/class_8931 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/core/RegistrySetBuilder;)Ljava/util/concurrent/CompletableFuture; createLookup a method_54840 + p 0 lookup + p 1 registrySetBuilder + m (Lnet/minecraft/core/Cloner$Factory;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)V method_55310 a method_55310 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_54838 a method_54838 + m (Lnet/minecraft/core/RegistrySetBuilder;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/RegistrySetBuilder$PatchedRegistries; method_54839 a method_54839 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_54841 b method_54841 + m ()V +c net/minecraft/data/registries/TradeRebalanceRegistries pc net/minecraft/class_9757 + f Lnet/minecraft/core/RegistrySetBuilder; BUILDER a field_51847 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletableFuture; createLookup a method_60420 + p 0 provider + m ()V + m ()V +c net/minecraft/data/registries/VanillaRegistries pd net/minecraft/class_7887 + f Lnet/minecraft/core/RegistrySetBuilder; BUILDER a field_40953 + m ()Lnet/minecraft/core/HolderLookup$Provider; createLookup a method_46817 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Z validatePlacedFeature a method_46818 + p 0 feature + m (Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V method_46819 a method_46819 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceKey;)V method_46820 a method_46820 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/Holder;)V method_46821 a method_46821 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/Holder$Reference;)V method_46822 a method_46822 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderLookup;)V validateThatAllBiomeFeaturesHaveBiomeFilter a method_49382 + p 0 features + p 1 biomes + m (Lnet/minecraft/core/HolderLookup$Provider;)V validateThatAllBiomeFeaturesHaveBiomeFilter a method_46823 + p 0 provider + m ()V + m ()V +c net/minecraft/data/registries/package-info pe net/minecraft/class_7888 +c net/minecraft/data/structures/NbtToSnbt pf net/minecraft/class_2461 + f Lorg/slf4j/Logger; LOGGER d field_11450 + f Ljava/lang/Iterable; inputFolders e field_40660 + f Lnet/minecraft/data/PackOutput; output f field_40661 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46580 a method_46580 + m (Ljava/nio/file/Path;)Z method_10495 a method_10495 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; getName a method_10496 + c Gets the name of the given NBT file, based on its path and the input directory. The result does not have the ".nbt" extension. + p 0 inputFolder + p 1 nbtPath + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46582 a method_46582 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46583 a method_46583 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/lang/String;)V writeSnbt a method_32234 + p 0 output + p 1 path + p 2 contents + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/lang/String;Ljava/nio/file/Path;)Ljava/nio/file/Path; convertStructure a method_10493 + p 0 output + p 1 nbtPath + p 2 name + p 3 directoryPath + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46581 a method_46581 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46584 b method_46584 + m (Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_10494 b method_10494 + m (Lnet/minecraft/data/PackOutput;Ljava/util/Collection;)V + p 1 output + p 2 inputFolders + m ()V +c net/minecraft/data/structures/SnbtDatafixer pg net/minecraft/class_8796 + m (Ljava/lang/String;)V updateInDirectory a method_53854 + p 0 path + m (Ljava/nio/file/Path;)V method_53855 a method_53855 + m ([Ljava/lang/String;)V main a method_53856 + p 0 args + m (Ljava/nio/file/Path;)Z method_53857 b method_53857 + m ()V +c net/minecraft/data/structures/SnbtToNbt ph net/minecraft/class_2463 + f Lorg/slf4j/Logger; LOGGER d field_11454 + f Lnet/minecraft/data/PackOutput; output e field_40662 + f Ljava/lang/Iterable; inputFolders f field_40663 + f Ljava/util/List; filters g field_20309 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46585 a method_46585 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; applyFilters a method_21673 + p 1 fileName + p 2 tag + m (Ljava/nio/file/Path;)Z method_10499 a method_10499 + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/data/structures/SnbtToNbt$TaskResult; readStructure a method_22144 + p 1 filePath + p 2 fileName + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; getName a method_10500 + c Gets the name of the given SNBT file, based on its path and the input directory. The result does not have the ".snbt" extension. + p 1 inputFolder + p 2 file + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)V method_46588 a method_46588 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46586 a method_46586 + m (Ljava/nio/file/Path;Lnet/minecraft/data/CachedOutput;Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; method_46587 a method_46587 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_46589 a method_46589 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/structures/SnbtToNbt$TaskResult;Ljava/nio/file/Path;)V storeStructureIfChanged a method_10497 + p 1 output + p 2 taskResult + p 3 directoryPath + m (Lnet/minecraft/data/structures/SnbtToNbt$Filter;)Lnet/minecraft/data/structures/SnbtToNbt; addFilter a method_21672 + p 1 filter + m (Lnet/minecraft/data/PackOutput;Ljava/lang/Iterable;)V + p 1 output + p 2 inputFolders + m ()V +c net/minecraft/data/structures/SnbtToNbt$Filter ph$a net/minecraft/class_2463$class_4460 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; apply apply method_21674 + p 1 structureLocationPath + p 2 tag +c net/minecraft/data/structures/SnbtToNbt$StructureConversionException ph$b net/minecraft/class_2463$class_5621 + c Wraps exceptions thrown while reading structures to include the path of the structure in the exception message. + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V + p 1 path + p 2 cause +c net/minecraft/data/structures/SnbtToNbt$TaskResult ph$c net/minecraft/class_2463$class_4511 + f Ljava/lang/String; name a comp_780 + f [B payload b comp_781 + f Lcom/google/common/hash/HashCode; hash c comp_783 + m ()Ljava/lang/String; name a comp_780 + m ()[B payload b comp_781 + m ()Lcom/google/common/hash/HashCode; hash c comp_783 + m (Ljava/lang/String;[BLcom/google/common/hash/HashCode;)V +c net/minecraft/data/structures/StructureUpdater pi net/minecraft/class_3843 + f Lorg/slf4j/Logger; LOGGER a field_24617 + f Ljava/lang/String; PREFIX b field_52179 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; update a method_32235 + p 0 structureLocationPath + p 1 tag + m ()V + m ()V +c net/minecraft/data/structures/package-info pj net/minecraft/class_6297 +c net/minecraft/data/tags/BannerPatternTagsProvider pk net/minecraft/class_7458 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/BiomeTagsProvider pl net/minecraft/class_6957 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/CatVariantTagsProvider pm net/minecraft/class_7393 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/DamageTypeTagsProvider pn net/minecraft/class_8142 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/EnchantmentTagsProvider po net/minecraft/class_9674 + m (Ljava/util/Set;Lnet/minecraft/core/Holder$Reference;)Z method_59779 a method_59779 + m (Lnet/minecraft/core/HolderLookup$Provider;[Lnet/minecraft/resources/ResourceKey;)V tooltipOrder a method_59781 + p 1 provider + p 2 values + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/EntityTypeTagsProvider pp net/minecraft/class_2467 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/resources/ResourceKey; method_46824 a method_46824 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/FlatLevelGeneratorPresetTagsProvider pq net/minecraft/class_7229 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/FluidTagsProvider pr net/minecraft/class_2469 + m (Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/resources/ResourceKey; method_46825 a method_46825 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/GameEventTagsProvider ps net/minecraft/class_5746 + f Ljava/util/List; VIBRATIONS_EXCEPT_FLAP d field_38363 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider + m ()V +c net/minecraft/data/tags/InstrumentTagsProvider pt net/minecraft/class_7459 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/IntrinsicHolderTagsProvider pu net/minecraft/class_7889 + f Ljava/util/function/Function; keyExtractor d field_40954 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; tag a method_46827 + p 1 tag + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 keyExtractor + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/function/Function;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 parentProvider + p 5 keyExtractor +c net/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender pu$a net/minecraft/class_7889$class_7890 + f Ljava/util/function/Function; keyExtractor a field_40955 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; addTag a method_46828 + p 1 tag + m (Ljava/lang/Object;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; add a method_46829 + p 1 value + m ([Ljava/lang/Object;)Lnet/minecraft/data/tags/IntrinsicHolderTagsProvider$IntrinsicTagAppender; add a method_46830 + p 1 values + m (Lnet/minecraft/tags/TagBuilder;Ljava/util/function/Function;)V + p 1 builder + p 2 keyExtractor +c net/minecraft/data/tags/ItemTagsProvider pv net/minecraft/class_7805 + f Ljava/util/concurrent/CompletableFuture; blockTags d field_40664 + c A function that resolves block tag builders. + f Ljava/util/Map; tagsToCopy g field_43092 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V copy a method_46218 + c Copies the entries from a block tag into an item tag. + p 1 blockTag + p 2 itemTag + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; method_46831 a method_46831 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)Lnet/minecraft/core/HolderLookup$Provider; method_49649 a method_49649 + m (Lnet/minecraft/data/tags/TagsProvider$TagLookup;Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V method_49650 a method_49650 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; method_49652 b method_49652 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/IllegalStateException; method_49653 d method_49653 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider + p 3 blockTags + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider + p 3 parentProvider + p 4 blockTags +c net/minecraft/data/tags/PaintingVariantTagsProvider pw net/minecraft/class_7416 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/PoiTypeTagsProvider px net/minecraft/class_7491 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/StructureTagsProvider py net/minecraft/class_7071 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/TagsProvider pz net/minecraft/class_2474 + f Ljava/util/concurrent/CompletableFuture; lookupProvider d field_43107 + f Lnet/minecraft/data/PackOutput$PathProvider; pathProvider e field_39380 + f Lnet/minecraft/resources/ResourceKey; registryKey f field_40957 + f Ljava/util/concurrent/CompletableFuture; contentsDone g field_43108 + f Ljava/util/concurrent/CompletableFuture; parentProvider h field_43093 + f Ljava/util/Map; builders i field_11481 + m (I)[Ljava/util/concurrent/CompletableFuture; method_46590 a method_46590 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; method_27170 a method_27170 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; method_49656 a method_49656 + m (Ljava/lang/Void;)Lnet/minecraft/data/tags/TagsProvider$TagLookup; method_49661 a method_49661 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/tags/TagEntry;)Z method_49658 a method_49658 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/tags/TagsProvider$1CombinedData;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_27046 a method_27046 + m (Lnet/minecraft/core/HolderLookup$Provider;)V addTags a method_10514 + p 1 provider + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)Lnet/minecraft/data/tags/TagsProvider$1CombinedData; method_49657 a method_49657 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/resources/ResourceLocation;)Z method_46832 a method_46832 + m (Lnet/minecraft/data/CachedOutput;Lnet/minecraft/data/tags/TagsProvider$1CombinedData;)Ljava/util/concurrent/CompletionStage; method_49659 a method_49659 + m (Lnet/minecraft/data/tags/TagsProvider$1CombinedData;Lnet/minecraft/resources/ResourceLocation;)Z method_49660 a method_49660 + m ()Ljava/util/concurrent/CompletableFuture; createContentsProvider b method_49651 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; tag b method_10512 + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; method_49706 b method_49706 + m ()Ljava/util/concurrent/CompletableFuture; contentsGetter c method_49662 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/tags/TagBuilder; getOrCreateRawBuilder c method_27169 + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/core/HolderLookup$Provider; method_49707 c method_49707 + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + m (Lnet/minecraft/data/PackOutput;Lnet/minecraft/resources/ResourceKey;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 registryKey + p 3 lookupProvider + p 4 parentProvider +c net/minecraft/data/tags/TagsProvider$1CombinedData pz$a net/minecraft/class_2474$class_8210 + f Lnet/minecraft/core/HolderLookup$Provider; contents a comp_1311 + f Lnet/minecraft/data/tags/TagsProvider$TagLookup; parent b comp_1312 + m ()Lnet/minecraft/core/HolderLookup$Provider; contents a comp_1311 + m ()Lnet/minecraft/data/tags/TagsProvider$TagLookup; parent b comp_1312 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/data/tags/TagsProvider$TagLookup;)V +c net/minecraft/data/tags/TagsProvider$TagAppender pz$b net/minecraft/class_2474$class_5124 + f Lnet/minecraft/tags/TagBuilder; builder a field_23960 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; add a method_46835 + p 1 key + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addOptional a method_35922 + p 1 location + m (Ljava/util/List;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addAll a method_55842 + p 1 keys + m ([Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; add a method_40565 + p 1 keys + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addOptionalTag b method_35923 + p 1 location + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/data/tags/TagsProvider$TagAppender; addTag b method_26792 + p 1 tag + m (Lnet/minecraft/tags/TagBuilder;)V + p 1 builder +c net/minecraft/data/tags/TagsProvider$TagLookup pz$c net/minecraft/class_2474$class_8211 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; method_49664 a method_49664 +c net/minecraft/data/tags/TradeRebalanceEnchantmentTagsProvider qa net/minecraft/class_9758 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 packOutput + p 2 provider +c net/minecraft/data/tags/TradeRebalanceStructureTagsProvider qb net/minecraft/class_8799 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaBlockTagsProvider qc net/minecraft/class_2466 + m (Lnet/minecraft/world/level/block/Block;)Z method_51274 a method_51274 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/resources/ResourceKey; method_46837 b method_46837 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaEnchantmentTagsProvider qd net/minecraft/class_9676 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 lookupProvider +c net/minecraft/data/tags/VanillaItemTagsProvider qe net/minecraft/class_2471 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/data/tags/WorldPresetTagsProvider qf net/minecraft/class_7230 + m (Lnet/minecraft/data/PackOutput;Ljava/util/concurrent/CompletableFuture;)V + p 1 output + p 2 provider +c net/minecraft/data/tags/package-info qg net/minecraft/class_6298 +c net/minecraft/data/worldgen/AncientCityStructurePieces qh net/minecraft/class_7312 + f Lnet/minecraft/resources/ResourceKey; START a field_38471 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42755 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/AncientCityStructurePools qi net/minecraft/class_7313 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42756 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionBridgePools qj net/minecraft/class_5174 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27198 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionHoglinStablePools qk net/minecraft/class_5177 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27199 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionHousingUnitsPools ql net/minecraft/class_5178 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27200 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionPieces qm net/minecraft/class_5179 + f Lnet/minecraft/resources/ResourceKey; START a field_25941 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27201 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/BastionSharedPools qn net/minecraft/class_5181 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27203 + p 0 context + m ()V +c net/minecraft/data/worldgen/BastionTreasureRoomPools qo net/minecraft/class_5182 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27204 + p 0 context + m ()V +c net/minecraft/data/worldgen/BiomeDefaultFeatures qp net/minecraft/class_3864 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLushCavesVegetationFeatures A method_34663 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLushCavesSpecialOres B method_34664 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMountainTrees C method_16957 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMountainForestTrees D method_16958 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleTrees E method_16959 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSparseJungleTrees F method_16960 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandsTrees G method_16961 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSnowyTrees H method_16962 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleGrass I method_16965 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaGrass J method_16966 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addShatteredSavannaGrass K method_16967 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaExtraGrass L method_16968 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandGrass M method_16969 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addForestFlowers N method_16970 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addForestGrass O method_16971 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampVegetation P method_16972 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMangroveSwampVegetation Q method_43230 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMushroomFieldVegetation R method_16973 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addPlainVegetation S method_16974 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertVegetation T method_16975 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addGiantTaigaVegetation U method_16976 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultFlowers V method_16977 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addCherryGroveVegetation W method_49390 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMeadowVegetation X method_38567 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addWarmFlowers Y method_16978 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultGrass Z method_16979 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultCarversAndLakes a method_16983 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Z)V addDefaultOres a method_17006 + p 0 builder + p 1 largeOres + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V farmAnimals a method_30580 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;I)V commonSpawns a method_60650 + p 0 builder + p 1 skeletonWeight + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;II)V warmOceanSpawns a method_30678 + p 0 builder + p 1 squidWeight + p 2 squidMinCount + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;III)V oceanSpawns a method_30679 + p 0 builder + p 1 squidWeight + p 2 squidMaxCount + p 3 codWeight + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;IIIZ)V monsters a method_30578 + p 0 builder + p 1 zombieWeight + p 2 zombieVillagerWeight + p 3 skeletonWeight + p 4 isUnderwater + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTaigaGrass aa method_16980 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addPlainGrass ab method_16981 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultMushrooms ac method_16982 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultExtraVegetation ad method_16984 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBadlandExtraVegetation ae method_16985 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleMelons af method_39931 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSparseJungleMelons ag method_39932 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addJungleVines ah method_39933 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertExtraVegetation ai method_16987 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampExtraVegetation aj method_16988 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDesertExtraDecoration ak method_16989 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFossilDecoration al method_16990 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addColdOceanExtraVegetation am method_16991 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSeagrass an method_16992 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLukeWarmKelp ao method_16995 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSprings ap method_16996 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFrozenSprings aq method_39420 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addIcebergs ar method_16997 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBlueIce as method_16998 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSurfaceFreezing at method_16999 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addNetherDefaultOres au method_24382 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addAncientDebris av method_28439 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultCrystalFormations aw method_32236 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultMonsterRoom b method_17004 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V caveSpawns b method_30579 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultUndergroundVariety c method_17005 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V commonSpawns c method_30581 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDripstone d method_33131 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V plainsSpawns d method_30680 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSculk e method_42042 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V snowySpawns e method_30582 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultOres f method_38568 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V desertSpawns f method_30583 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addExtraGold g method_17007 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V dripstoneCavesSpawns g method_38941 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addExtraEmeralds h method_17008 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V mooshroomSpawns h method_30585 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addInfestedStone i method_17009 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V baseJungleSpawns i method_30586 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addDefaultSoftDisks j method_17010 + p 0 builder + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;)V endSpawns j method_30587 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSwampClayDisk k method_17011 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMangroveSwampDisks l method_43231 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addMossyStoneBlock m method_17012 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addFerns n method_17013 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addRareBerryBushes o method_17014 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addCommonBerryBushes p method_17015 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addLightBambooVegetation q method_17016 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBambooVegetation r method_17017 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTaigaTrees s method_17018 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addGroveTrees t method_38745 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addWaterTrees u method_17019 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addBirchTrees v method_17020 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addOtherBirchTrees w method_17021 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addTallBirchTrees x method_17022 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addSavannaTrees y method_17023 + p 0 builder + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V addShatteredSavannaTrees z method_17024 + p 0 builder + m ()V +c net/minecraft/data/worldgen/BootstrapContext qq net/minecraft/class_7891 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderGetter; lookup a method_46799 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; register a method_46838 + p 1 key + p 2 value + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/core/Holder$Reference; register a method_46800 + p 1 key + p 2 value + p 3 registryLifecycle +c net/minecraft/data/worldgen/Carvers qr net/minecraft/class_5463 + f Lnet/minecraft/resources/ResourceKey; CAVE a field_33119 + f Lnet/minecraft/resources/ResourceKey; CAVE_EXTRA_UNDERGROUND b field_34968 + f Lnet/minecraft/resources/ResourceKey; CANYON c field_33120 + f Lnet/minecraft/resources/ResourceKey; NETHER_CAVE d field_25947 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_30588 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46843 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/DesertVillagePools qs net/minecraft/class_3868 + f Lnet/minecraft/resources/ResourceKey; START a field_25948 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40958 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TERMINATORS_KEY c field_40959 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_17037 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/DimensionTypes qt net/minecraft/class_7231 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_42043 + p 0 context + m ()V +c net/minecraft/data/worldgen/NoiseData qu net/minecraft/class_6736 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; DEFAULT_SHIFT a field_40960 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39216 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;ILnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V registerBiomeNoises a method_39493 + p 0 context + p 1 firstOctave + p 2 temperature + p 3 vegetation + p 4 continentalness + p 5 erosion + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;ID[D)V register a method_39217 + p 0 context + p 1 key + p 2 firstOctave + p 3 amplitude + p 5 otherAmplitudes + m ()V + m ()V +c net/minecraft/data/worldgen/PillagerOutpostPools qv net/minecraft/class_3791 + f Lnet/minecraft/resources/ResourceKey; START a field_26252 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27235 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/PlainVillagePools qw net/minecraft/class_3815 + f Lnet/minecraft/resources/ResourceKey; START a field_26253 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40961 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16754 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/Pools qx net/minecraft/class_5468 + f Lnet/minecraft/resources/ResourceKey; EMPTY a field_26254 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46844 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_30599 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool;)V register a method_30600 + p 0 context + p 1 name + p 2 pool + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; parseKey b method_60923 + p 0 key + m ()V + m ()V +c net/minecraft/data/worldgen/ProcessorLists qy net/minecraft/class_5469 + f Lnet/minecraft/resources/ResourceKey; ROOF A field_26284 + f Lnet/minecraft/resources/ResourceKey; HIGH_WALL B field_26256 + f Lnet/minecraft/resources/ResourceKey; HIGH_RAMPART C field_26257 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_ROT D field_29537 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_COAL E field_29538 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_DIAMONDS F field_29539 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_START_DEGRADATION G field_38472 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_GENERIC_DEGRADATION H field_38473 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_WALLS_DEGRADATION I field_38474 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_HOUSES_ARCHAEOLOGY J field_44689 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ROADS_ARCHAEOLOGY K field_44690 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_TOWER_TOP_ARCHAEOLOGY L field_44691 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_COPPER_BULB_DEGRADATION M field_51848 + f Lnet/minecraft/resources/ResourceKey; EMPTY N field_26688 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_PLAINS a field_26259 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_SAVANNA b field_26260 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_SNOWY c field_26261 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TAIGA d field_26262 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_DESERT e field_26263 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_10_PERCENT f field_26264 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_20_PERCENT g field_26265 + f Lnet/minecraft/resources/ResourceKey; MOSSIFY_70_PERCENT h field_26266 + f Lnet/minecraft/resources/ResourceKey; STREET_PLAINS i field_26267 + f Lnet/minecraft/resources/ResourceKey; STREET_SAVANNA j field_26268 + f Lnet/minecraft/resources/ResourceKey; STREET_SNOWY_OR_TAIGA k field_26269 + f Lnet/minecraft/resources/ResourceKey; FARM_PLAINS l field_26270 + f Lnet/minecraft/resources/ResourceKey; FARM_SAVANNA m field_26271 + f Lnet/minecraft/resources/ResourceKey; FARM_SNOWY n field_26272 + f Lnet/minecraft/resources/ResourceKey; FARM_TAIGA o field_26273 + f Lnet/minecraft/resources/ResourceKey; FARM_DESERT p field_26274 + f Lnet/minecraft/resources/ResourceKey; OUTPOST_ROT q field_26689 + f Lnet/minecraft/resources/ResourceKey; BOTTOM_RAMPART r field_26275 + f Lnet/minecraft/resources/ResourceKey; TREASURE_ROOMS s field_26276 + f Lnet/minecraft/resources/ResourceKey; HOUSING t field_26277 + f Lnet/minecraft/resources/ResourceKey; SIDE_WALL_DEGRADATION u field_26278 + f Lnet/minecraft/resources/ResourceKey; STABLE_DEGRADATION v field_26279 + f Lnet/minecraft/resources/ResourceKey; BASTION_GENERIC_DEGRADATION w field_26280 + f Lnet/minecraft/resources/ResourceKey; RAMPART_DEGRADATION x field_26281 + f Lnet/minecraft/resources/ResourceKey; ENTRANCE_REPLACEMENT y field_26282 + f Lnet/minecraft/resources/ResourceKey; BRIDGE z field_26283 + m (Lnet/minecraft/resources/ResourceKey;I)Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor; trailsArchyLootProcessor a method_51464 + p 0 lootTable + p 1 limit + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46845 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46846 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V register a method_30601 + p 0 context + p 1 key + p 2 processors + m ()V + m ()V +c net/minecraft/data/worldgen/SavannaVillagePools qz net/minecraft/class_3834 + f Lnet/minecraft/resources/ResourceKey; START a field_26285 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40962 + f Lnet/minecraft/resources/ResourceKey; ZOMBIE_TERMINATORS_KEY c field_40963 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16844 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/SnowyVillagePools ra net/minecraft/class_3836 + f Lnet/minecraft/resources/ResourceKey; START a field_26286 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40964 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_16845 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/StructureSets rb net/minecraft/class_7072 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41182 + p 0 context +c net/minecraft/data/worldgen/Structures rc net/minecraft/class_5470 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride; method_60421 a method_60421 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_38569 + p 0 context + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_60422 b method_60422 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride; method_46847 c method_46847 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_46848 d method_46848 + m ()V +c net/minecraft/data/worldgen/SurfaceRuleData rd net/minecraft/class_6725 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SOUL_SAND A field_35335 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SOUL_SOIL B field_35336 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BASALT C field_35337 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BLACKSTONE D field_35338 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WARPED_WART_BLOCK E field_35339 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WARPED_NYLIUM F field_35310 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; NETHER_WART_BLOCK G field_35311 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; CRIMSON_NYLIUM H field_35312 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ENDSTONE I field_35313 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; AIR a field_35314 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; BEDROCK b field_35639 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WHITE_TERRACOTTA c field_35315 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ORANGE_TERRACOTTA d field_35316 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; TERRACOTTA e field_35317 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; RED_SAND f field_35318 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; RED_SANDSTONE g field_35561 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; STONE h field_35319 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; DEEPSLATE i field_35640 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; DIRT j field_35320 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; PODZOL k field_35321 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; COARSE_DIRT l field_35322 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; MYCELIUM m field_35323 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; GRASS_BLOCK n field_35324 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; CALCITE o field_35325 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; GRAVEL p field_35326 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SAND q field_35327 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SANDSTONE r field_35562 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; PACKED_ICE s field_35328 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; SNOW_BLOCK t field_35329 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; MUD u field_38808 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; POWDER_SNOW v field_35330 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ICE w field_35331 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; WATER x field_35332 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; LAVA y field_35333 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; NETHERRACK z field_35334 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; overworld a method_39134 + m (D)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; surfaceNoiseAbove a method_39135 + p 0 value + m (I)[Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; method_39921 a method_39921 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; makeStateRule a method_39136 + p 0 block + m (ZZZ)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; overworldLike a method_39922 + p 0 aboveGround + p 1 bedrockRoof + p 2 bedrockFloor + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; nether b method_39138 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; end c method_39139 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; air d method_44325 + m ()V + m ()V +c net/minecraft/data/worldgen/TaigaVillagePools re net/minecraft/class_3870 + f Lnet/minecraft/resources/ResourceKey; START a field_26341 + f Lnet/minecraft/resources/ResourceKey; TERMINATORS_KEY b field_40965 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_17038 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/TerrainProvider rf net/minecraft/class_6765 + f F DEEP_OCEAN_CONTINENTALNESS a field_38024 + f F OCEAN_CONTINENTALNESS b field_38025 + f F PLAINS_CONTINENTALNESS c field_38026 + f F BEACH_CONTINENTALNESS d field_38027 + f Lnet/minecraft/util/ToFloatFunction; NO_TRANSFORM e field_38028 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_OFFSET f field_38029 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_FACTOR g field_38030 + f Lnet/minecraft/util/ToFloatFunction; AMPLIFIED_JAGGEDNESS h field_38031 + m (F)F calculateMountainRidgeZeroContinentalnessPoint a method_42045 + m (FFF)F mountainContinentalness a method_42046 + m (FFFF)F calculateSlope a method_42047 + p 0 y1 + p 1 y2 + p 2 x1 + p 3 x2 + m (Lnet/minecraft/util/ToFloatFunction;FFFFFFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; ridgeSpline a method_42048 + p 0 ridgesFolded + p 1 y1 + p 2 y2 + p 3 y3 + p 4 y4 + p 5 y5 + p 6 minSmoothing + p 7 transform + m (Lnet/minecraft/util/ToFloatFunction;FLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildWeirdnessJaggednessSpline a method_42049 + p 0 ridges + p 2 transform + m (Lnet/minecraft/util/ToFloatFunction;FZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildMountainRidgeSplineWithPoints a method_42050 + p 0 ridgesFolded + p 3 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFFFFFZZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildErosionOffsetSpline a method_42051 + p 0 erosion + p 1 ridgesFolded + p 10 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildRidgeJaggednessSpline a method_42052 + p 0 ridges + p 1 ridgesFolded + p 4 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FFFFLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; buildErosionJaggednessSpline a method_42053 + p 0 erosion + p 1 ridges + p 2 ridgesFolded + p 7 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;FZLnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline; getErosionFactor a method_42054 + p 0 erosion + p 1 ridges + p 2 ridgesFolded + p 5 transform + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldFactor a method_42055 + p 0 continents + p 1 erosion + p 2 ridges + p 3 ridgesFolded + p 4 amplified + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldOffset a method_42056 + p 0 continents + p 1 erosion + p 2 ridgesFolded + p 3 amplified + m (F)F method_42057 b method_42057 + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Z)Lnet/minecraft/util/CubicSpline; overworldJaggedness b method_42058 + p 0 continents + p 1 erosion + p 2 ridges + p 3 ridgesFolded + p 4 amplified + m (F)F method_42059 c method_42059 + m (F)F method_42060 d method_42060 + m ()V + m ()V +c net/minecraft/data/worldgen/TrailRuinsStructurePools rg net/minecraft/class_8256 + f Lnet/minecraft/resources/ResourceKey; START a field_43386 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_49993 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/TrialChambersStructurePools rh net/minecraft/class_8998 + f Lnet/minecraft/resources/ResourceKey; START a field_47507 + f Lnet/minecraft/resources/ResourceKey; HALLWAY_FALLBACK b field_47508 + f Lnet/minecraft/resources/ResourceKey; CHAMBER_CAP_FALLBACK c field_47509 + f Ljava/util/List; ALIAS_BINDINGS d field_47510 + m (Ljava/lang/String;)Ljava/lang/String; spawner a method_55312 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_55313 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/VillagePools ri net/minecraft/class_3813 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_27221 + p 0 context + m ()V +c net/minecraft/data/worldgen/biome/BiomeData rj net/minecraft/class_5504 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_40363 + p 0 context + m ()V +c net/minecraft/data/worldgen/biome/EndBiomes rk net/minecraft/class_6726 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)Lnet/minecraft/world/level/biome/Biome; baseEndBiome a method_39141 + p 0 generationSettings + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endBarrens a method_39140 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; theEnd b method_39142 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endMidlands c method_39143 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; endHighlands d method_39144 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; smallEndIslands e method_39145 + p 0 placedFeatures + p 1 worldCarvers + m ()V +c net/minecraft/data/worldgen/biome/NetherBiomes rl net/minecraft/class_6727 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; netherWastes a method_39146 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; soulSandValley b method_39147 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; basaltDeltas c method_39148 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; crimsonForest d method_39149 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; warpedForest e method_39150 + p 0 placedFeatures + p 1 worldCarvers + m ()V +c net/minecraft/data/worldgen/biome/OverworldBiomes rm net/minecraft/class_5478 + f I NORMAL_WATER_COLOR a field_35340 + f I NORMAL_WATER_FOG_COLOR b field_35341 + f I SWAMP_SKELETON_WEIGHT c field_51968 + f I OVERWORLD_FOG_COLOR d field_35342 + f Lnet/minecraft/sounds/Music; NORMAL_MUSIC e field_35436 + m (F)I calculateSkyColor a method_30932 + p 0 temperature + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)V globalOverworldGeneration a method_39153 + p 0 generationSettings + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;IILnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;)Lnet/minecraft/world/level/biome/Biome; baseOcean a method_30692 + p 0 mobSpawnSettings + p 1 waterColor + p 2 waterFogColor + p 3 generationSettings + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; sparseJungle a method_30703 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;FZZZLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; baseJungle a method_30695 + p 0 placedFeatures + p 1 worldCarvers + p 2 downfall + p 3 isBambooJungle + p 4 isSparse + p 5 addBamboo + p 6 mobSpawnSettings + p 7 backgroudMusic + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; oldGrowthTaiga a method_30687 + p 0 placedFeatures + p 1 worldCarvers + p 2 isSpruce + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/biome/Biome; savanna a method_30694 + p 0 placedFeatures + p 1 worldCarvers + p 2 isShatteredSavanna + p 3 isPlateau + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZZ)Lnet/minecraft/world/level/biome/Biome; plains a method_30701 + p 0 placedFeatures + p 1 worldCarvers + p 2 isSunflowerPlains + p 3 isCold + p 4 isIceSpikes + m (ZFFIILjava/lang/Integer;Ljava/lang/Integer;Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; biome a method_39151 + p 0 hasPrecipitation + p 1 temperature + p 2 downfall + p 3 waterColor + p 4 waterFogColor + p 5 grassColorOverride + p 6 foliageColorOverride + p 7 mobSpawnSettings + p 8 generationSettings + p 9 backgroundMusic + m (ZFFLnet/minecraft/world/level/biome/MobSpawnSettings$Builder;Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder;Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/Biome; biome a method_39152 + p 0 hasPercipitation + p 1 temperature + p 2 downfall + p 3 mobSpawnSettings + p 4 generationSettings + p 5 backgroundMusic + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; jungle b method_30683 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; windsweptHills b method_30690 + p 0 placedFeatures + p 1 worldCarvers + p 2 isForest + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/biome/Biome; beach b method_30685 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + p 3 isStony + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZZ)Lnet/minecraft/world/level/biome/Biome; forest b method_30704 + p 0 placedFeatures + p 1 worldCarvers + p 2 isBirchForest + p 3 tallBirchTrees + p 4 isFlowerForest + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; bambooJungle c method_30714 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; badlands c method_30696 + p 0 placedFeatures + p 1 worldCarvers + p 2 trees + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; desert d method_30698 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; coldOcean d method_30702 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; mushroomFields e method_30684 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; ocean e method_30706 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; warmOcean f method_30723 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; lukeWarmOcean f method_30709 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; darkForest g method_30705 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; frozenOcean g method_30712 + p 0 placedFeatures + p 1 worldCarvers + p 2 isDeep + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; swamp h method_30708 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; taiga h method_30699 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; mangroveSwamp i method_43232 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; river i method_30686 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCold + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; theVoid j method_30726 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Z)Lnet/minecraft/world/level/biome/Biome; meadowOrCherryGrove j method_38574 + p 0 placedFeatures + p 1 worldCarvers + p 2 isCherryGrove + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; frozenPeaks k method_38575 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; jaggedPeaks l method_38576 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; stonyPeaks m method_38577 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; snowySlopes n method_38578 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; grove o method_38579 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; lushCaves p method_34674 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; dripstoneCaves q method_33132 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/Biome; deepDark r method_42061 + p 0 placedFeatures + p 1 worldCarvers + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; baseOceanGeneration s method_31066 + p 0 placedFeatures + p 1 worldCarvers + m ()V + m ()V +c net/minecraft/data/worldgen/biome/package-info rn net/minecraft/class_6299 +c net/minecraft/data/worldgen/features/AquaticFeatures ro net/minecraft/class_6800 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SHORT a field_35762 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SLIGHTLY_LESS_SHORT b field_35763 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_MID c field_35764 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_TALL d field_35765 + f Lnet/minecraft/resources/ResourceKey; SEA_PICKLE e field_35766 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SIMPLE f field_35767 + f Lnet/minecraft/resources/ResourceKey; KELP g field_35768 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN_VEGETATION h field_35769 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46849 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/CaveFeatures rp net/minecraft/class_6801 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM a field_35770 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_COAL b field_35771 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_DIAMONDS c field_35772 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CLUSTER d field_35773 + f Lnet/minecraft/resources/ResourceKey; LARGE_DRIPSTONE e field_35774 + f Lnet/minecraft/resources/ResourceKey; POINTED_DRIPSTONE f field_35775 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_MAGMA g field_35776 + f Lnet/minecraft/resources/ResourceKey; GLOW_LICHEN h field_35777 + f Lnet/minecraft/resources/ResourceKey; ROOTED_AZALEA_TREE i field_35778 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINE j field_35779 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINE_IN_MOSS k field_35780 + f Lnet/minecraft/resources/ResourceKey; MOSS_VEGETATION l field_35781 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH m field_35782 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH_BONEMEAL n field_35783 + f Lnet/minecraft/resources/ResourceKey; DRIPLEAF o field_35784 + f Lnet/minecraft/resources/ResourceKey; CLAY_WITH_DRIPLEAVES p field_35785 + f Lnet/minecraft/resources/ResourceKey; CLAY_POOL_WITH_DRIPLEAVES q field_35786 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CLAY r field_35787 + f Lnet/minecraft/resources/ResourceKey; MOSS_PATCH_CEILING s field_35788 + f Lnet/minecraft/resources/ResourceKey; SPORE_BLOSSOM t field_35789 + f Lnet/minecraft/resources/ResourceKey; AMETHYST_GEODE u field_35790 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_DEEP_DARK v field_38033 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_ANCIENT_CITY w field_38477 + f Lnet/minecraft/resources/ResourceKey; SCULK_VEIN x field_38034 + m ()Lnet/minecraft/core/Holder; makeSmallDripleaf a method_39686 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Holder; makeDripleaf a method_39687 + p 0 facingDirection + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46850 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/EndFeatures rq net/minecraft/class_6802 + f Lnet/minecraft/resources/ResourceKey; END_PLATFORM a field_52309 + f Lnet/minecraft/resources/ResourceKey; END_SPIKE b field_35795 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_RETURN c field_35796 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_DELAYED d field_35797 + f Lnet/minecraft/resources/ResourceKey; CHORUS_PLANT e field_35798 + f Lnet/minecraft/resources/ResourceKey; END_ISLAND f field_35799 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46851 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/FeatureUtils rr net/minecraft/class_6803 + m (ILnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simpleRandomPatchConfiguration a method_39703 + p 0 tries + p 1 feature + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39704 + p 0 feature + p 1 config + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39705 + p 0 feature + p 1 config + p 2 blocks + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Ljava/util/List;I)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; simplePatchConfiguration a method_39706 + p 0 feature + p 1 config + p 2 blocks + p 3 tries + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46852 + p 0 name + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; simplePatchPredicate a method_39709 + p 0 blocks + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39702 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/feature/Feature;)V register a method_40364 + p 0 context + p 1 key + p 2 feature + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V register a method_39708 + p 0 context + p 1 key + p 2 feature + p 3 config + m ()V +c net/minecraft/data/worldgen/features/MiscOverworldFeatures rs net/minecraft/class_6804 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKE a field_35800 + f Lnet/minecraft/resources/ResourceKey; ICE_PATCH b field_35801 + f Lnet/minecraft/resources/ResourceKey; FOREST_ROCK c field_35802 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PACKED d field_35803 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_BLUE e field_35804 + f Lnet/minecraft/resources/ResourceKey; BLUE_ICE f field_35805 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA g field_35806 + f Lnet/minecraft/resources/ResourceKey; DISK_CLAY h field_35807 + f Lnet/minecraft/resources/ResourceKey; DISK_GRAVEL i field_35808 + f Lnet/minecraft/resources/ResourceKey; DISK_SAND j field_35809 + f Lnet/minecraft/resources/ResourceKey; FREEZE_TOP_LAYER k field_35810 + f Lnet/minecraft/resources/ResourceKey; DISK_GRASS l field_38809 + f Lnet/minecraft/resources/ResourceKey; BONUS_CHEST m field_35811 + f Lnet/minecraft/resources/ResourceKey; VOID_START_PLATFORM n field_35812 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL o field_35813 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_OVERWORLD p field_35814 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_FROZEN q field_35815 + f Lnet/minecraft/resources/ResourceKey; SPRING_WATER r field_35816 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46853 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/NetherFeatures rt net/minecraft/class_6805 + f Lnet/minecraft/resources/ResourceKey; DELTA a field_35817 + f Lnet/minecraft/resources/ResourceKey; SMALL_BASALT_COLUMNS b field_35818 + f Lnet/minecraft/resources/ResourceKey; LARGE_BASALT_COLUMNS c field_35819 + f Lnet/minecraft/resources/ResourceKey; BASALT_BLOBS d field_35820 + f Lnet/minecraft/resources/ResourceKey; BLACKSTONE_BLOBS e field_35821 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE_EXTRA f field_35822 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION g field_35824 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION_BONEMEAL h field_35825 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETION i field_35827 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETATION_BONEMEAL j field_35828 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS k field_35829 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS_BONEMEAL l field_35830 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES m field_35831 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES_BONEMEAL n field_35832 + f Lnet/minecraft/resources/ResourceKey; WEEPING_VINES o field_35833 + f Lnet/minecraft/resources/ResourceKey; PATCH_CRIMSON_ROOTS p field_35834 + f Lnet/minecraft/resources/ResourceKey; BASALT_PILLAR q field_35835 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_NETHER r field_35836 + f Lnet/minecraft/resources/ResourceKey; SPRING_NETHER_CLOSED s field_35837 + f Lnet/minecraft/resources/ResourceKey; SPRING_NETHER_OPEN t field_35838 + f Lnet/minecraft/resources/ResourceKey; PATCH_FIRE u field_35839 + f Lnet/minecraft/resources/ResourceKey; PATCH_SOUL_FIRE v field_35840 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46854 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/OreFeatures ru net/minecraft/class_6806 + f Lnet/minecraft/resources/ResourceKey; ORE_EMERALD A field_35851 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_LARGE B field_35852 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_SMALL C field_35853 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPPER_SMALL D field_35854 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER_LARGE E field_35855 + f Lnet/minecraft/resources/ResourceKey; ORE_CLAY F field_35856 + f Lnet/minecraft/resources/ResourceKey; ORE_MAGMA a field_35868 + f Lnet/minecraft/resources/ResourceKey; ORE_SOUL_SAND b field_35869 + f Lnet/minecraft/resources/ResourceKey; ORE_NETHER_GOLD c field_35870 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ d field_35871 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL_NETHER e field_35872 + f Lnet/minecraft/resources/ResourceKey; ORE_BLACKSTONE f field_35873 + f Lnet/minecraft/resources/ResourceKey; ORE_DIRT g field_35874 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL h field_35875 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE i field_35876 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE j field_35877 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE k field_35878 + f Lnet/minecraft/resources/ResourceKey; ORE_TUFF l field_35879 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL m field_35880 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_BURIED n field_35881 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON o field_35882 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_SMALL p field_35841 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD q field_35842 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_BURIED r field_35843 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE s field_35844 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_SMALL t field_35845 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_MEDIUM u field_45663 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_LARGE v field_35846 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_BURIED w field_35847 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS x field_35848 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS_BURIED y field_35849 + f Lnet/minecraft/resources/ResourceKey; ORE_INFESTED z field_35850 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46855 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/PileFeatures rv net/minecraft/class_6807 + f Lnet/minecraft/resources/ResourceKey; PILE_HAY a field_35883 + f Lnet/minecraft/resources/ResourceKey; PILE_MELON b field_35884 + f Lnet/minecraft/resources/ResourceKey; PILE_SNOW c field_35885 + f Lnet/minecraft/resources/ResourceKey; PILE_ICE d field_35886 + f Lnet/minecraft/resources/ResourceKey; PILE_PUMPKIN e field_35887 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46856 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/TreeFeatures rw net/minecraft/class_6808 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_0002 A field_35922 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_002 B field_35923 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_005 C field_35924 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_0002 D field_35888 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_002 E field_35889 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_005 F field_35890 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_0002 G field_35891 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_002 H field_35892 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_005 I field_35893 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES J field_35894 + f Lnet/minecraft/resources/ResourceKey; CHERRY_BEES_005 K field_42959 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGUS a field_35899 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGUS_PLANTED b field_35900 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGUS c field_35901 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGUS_PLANTED d field_35902 + f Lnet/minecraft/resources/ResourceKey; HUGE_BROWN_MUSHROOM e field_35903 + f Lnet/minecraft/resources/ResourceKey; HUGE_RED_MUSHROOM f field_35904 + f Lnet/minecraft/resources/ResourceKey; OAK g field_35905 + f Lnet/minecraft/resources/ResourceKey; DARK_OAK h field_35906 + f Lnet/minecraft/resources/ResourceKey; BIRCH i field_35907 + f Lnet/minecraft/resources/ResourceKey; ACACIA j field_35908 + f Lnet/minecraft/resources/ResourceKey; SPRUCE k field_35909 + f Lnet/minecraft/resources/ResourceKey; PINE l field_35910 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE m field_35911 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK n field_35912 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE_NO_VINE o field_35913 + f Lnet/minecraft/resources/ResourceKey; MEGA_JUNGLE_TREE p field_35914 + f Lnet/minecraft/resources/ResourceKey; MEGA_SPRUCE q field_35915 + f Lnet/minecraft/resources/ResourceKey; MEGA_PINE r field_35916 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES_0002 s field_35917 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES t field_35918 + f Lnet/minecraft/resources/ResourceKey; SWAMP_OAK u field_35919 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_BUSH v field_35920 + f Lnet/minecraft/resources/ResourceKey; AZALEA_TREE w field_35921 + f Lnet/minecraft/resources/ResourceKey; MANGROVE x field_38810 + f Lnet/minecraft/resources/ResourceKey; TALL_MANGROVE y field_38811 + f Lnet/minecraft/resources/ResourceKey; CHERRY z field_42960 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createOak a method_39710 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;IIII)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createStraightBlobTree a method_39711 + p 0 logBlock + p 1 leavesBlock + p 2 baseHeight + p 3 heightRandA + p 4 heightRandB + p 5 radius + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46857 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createBirch b method_39712 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createSuperBirch c method_39713 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createJungleTree d method_39714 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; createFancyOak e method_39715 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; cherry f method_49392 + m ()V + m ()V +c net/minecraft/data/worldgen/features/VegetationFeatures rx net/minecraft/class_6809 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST_VEGETATION A field_35966 + f Lnet/minecraft/resources/ResourceKey; TREES_FLOWER_FOREST B field_35925 + f Lnet/minecraft/resources/ResourceKey; MEADOW_TREES C field_35926 + f Lnet/minecraft/resources/ResourceKey; TREES_TAIGA D field_35927 + f Lnet/minecraft/resources/ResourceKey; TREES_GROVE E field_35928 + f Lnet/minecraft/resources/ResourceKey; TREES_SAVANNA F field_35929 + f Lnet/minecraft/resources/ResourceKey; BIRCH_TALL G field_35930 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_HILLS H field_35931 + f Lnet/minecraft/resources/ResourceKey; TREES_WATER I field_35932 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH_AND_OAK J field_35933 + f Lnet/minecraft/resources/ResourceKey; TREES_PLAINS K field_35934 + f Lnet/minecraft/resources/ResourceKey; TREES_SPARSE_JUNGLE L field_35935 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_SPRUCE_TAIGA M field_35936 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_PINE_TAIGA N field_35937 + f Lnet/minecraft/resources/ResourceKey; TREES_JUNGLE O field_35938 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_VEGETATION P field_35939 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_ISLAND_VEGETATION Q field_35940 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_VEGETATION R field_38812 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_NO_PODZOL a field_35941 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_SOME_PODZOL b field_35942 + f Lnet/minecraft/resources/ResourceKey; VINES c field_35943 + f Lnet/minecraft/resources/ResourceKey; PATCH_BROWN_MUSHROOM d field_35944 + f Lnet/minecraft/resources/ResourceKey; PATCH_RED_MUSHROOM e field_35945 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUNFLOWER f field_35946 + f Lnet/minecraft/resources/ResourceKey; PATCH_PUMPKIN g field_35947 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_BUSH h field_35948 + f Lnet/minecraft/resources/ResourceKey; PATCH_TAIGA_GRASS i field_35949 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS j field_35950 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_JUNGLE k field_35951 + f Lnet/minecraft/resources/ResourceKey; SINGLE_PIECE_OF_GRASS l field_35952 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH m field_35953 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON n field_35954 + f Lnet/minecraft/resources/ResourceKey; PATCH_WATERLILY o field_35955 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS p field_35956 + f Lnet/minecraft/resources/ResourceKey; PATCH_LARGE_FERN q field_35957 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS r field_35958 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE s field_35959 + f Lnet/minecraft/resources/ResourceKey; FLOWER_DEFAULT t field_35960 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FLOWER_FOREST u field_35961 + f Lnet/minecraft/resources/ResourceKey; FLOWER_SWAMP v field_35962 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAIN w field_35963 + f Lnet/minecraft/resources/ResourceKey; FLOWER_MEADOW x field_35964 + f Lnet/minecraft/resources/ResourceKey; FLOWER_CHERRY y field_42961 + f Lnet/minecraft/resources/ResourceKey; FOREST_FLOWERS z field_35965 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;I)Lnet/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration; grassPatch a method_39717 + p 0 stateProvider + p 1 tries + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46858 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/features/package-info ry net/minecraft/class_6810 +c net/minecraft/data/worldgen/package-info rz net/minecraft/class_6667 +c net/minecraft/data/worldgen/placement/AquaticPlacements sa net/minecraft/class_6811 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_WARM a field_35967 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_NORMAL b field_35968 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_COLD c field_35969 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_RIVER d field_35970 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SWAMP e field_35971 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP_WARM f field_35972 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP g field_35973 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_DEEP_COLD h field_35974 + f Lnet/minecraft/resources/ResourceKey; SEAGRASS_SIMPLE i field_35975 + f Lnet/minecraft/resources/ResourceKey; SEA_PICKLE j field_35976 + f Lnet/minecraft/resources/ResourceKey; KELP_COLD k field_35977 + f Lnet/minecraft/resources/ResourceKey; KELP_WARM l field_35978 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN_VEGETATION m field_35979 + m (I)Ljava/util/List; seagrassPlacement a method_39731 + p 0 count + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46859 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/CavePlacements sb net/minecraft/class_6812 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM a field_35980 + f Lnet/minecraft/resources/ResourceKey; MONSTER_ROOM_DEEP b field_35981 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_UPPER c field_35982 + f Lnet/minecraft/resources/ResourceKey; FOSSIL_LOWER d field_35983 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CLUSTER e field_35984 + f Lnet/minecraft/resources/ResourceKey; LARGE_DRIPSTONE f field_35985 + f Lnet/minecraft/resources/ResourceKey; POINTED_DRIPSTONE g field_35986 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_MAGMA h field_35987 + f Lnet/minecraft/resources/ResourceKey; GLOW_LICHEN i field_35988 + f Lnet/minecraft/resources/ResourceKey; ROOTED_AZALEA_TREE j field_35989 + f Lnet/minecraft/resources/ResourceKey; CAVE_VINES k field_35990 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_VEGETATION l field_35991 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CLAY m field_35992 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES_CEILING_VEGETATION n field_35993 + f Lnet/minecraft/resources/ResourceKey; SPORE_BLOSSOM o field_35994 + f Lnet/minecraft/resources/ResourceKey; CLASSIC_VINES p field_35995 + f Lnet/minecraft/resources/ResourceKey; AMETHYST_GEODE q field_35996 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_DEEP_DARK r field_38036 + f Lnet/minecraft/resources/ResourceKey; SCULK_PATCH_ANCIENT_CITY s field_38478 + f Lnet/minecraft/resources/ResourceKey; SCULK_VEIN t field_38037 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46860 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/EndPlacements sc net/minecraft/class_6813 + f Lnet/minecraft/resources/ResourceKey; END_PLATFORM a field_52310 + f Lnet/minecraft/resources/ResourceKey; END_SPIKE b field_35997 + f Lnet/minecraft/resources/ResourceKey; END_GATEWAY_RETURN c field_35998 + f Lnet/minecraft/resources/ResourceKey; CHORUS_PLANT d field_35999 + f Lnet/minecraft/resources/ResourceKey; END_ISLAND_DECORATED e field_36000 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46861 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/MiscOverworldPlacements sd net/minecraft/class_6814 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKE a field_36001 + f Lnet/minecraft/resources/ResourceKey; ICE_PATCH b field_36002 + f Lnet/minecraft/resources/ResourceKey; FOREST_ROCK c field_36003 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PACKED d field_36004 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_BLUE e field_36005 + f Lnet/minecraft/resources/ResourceKey; BLUE_ICE f field_36006 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA_UNDERGROUND g field_36007 + f Lnet/minecraft/resources/ResourceKey; LAKE_LAVA_SURFACE h field_36008 + f Lnet/minecraft/resources/ResourceKey; DISK_CLAY i field_36009 + f Lnet/minecraft/resources/ResourceKey; DISK_GRAVEL j field_36010 + f Lnet/minecraft/resources/ResourceKey; DISK_SAND k field_36011 + f Lnet/minecraft/resources/ResourceKey; DISK_GRASS l field_38813 + f Lnet/minecraft/resources/ResourceKey; FREEZE_TOP_LAYER m field_36012 + f Lnet/minecraft/resources/ResourceKey; VOID_START_PLATFORM n field_36013 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL o field_36014 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA p field_36015 + f Lnet/minecraft/resources/ResourceKey; SPRING_LAVA_FROZEN q field_36016 + f Lnet/minecraft/resources/ResourceKey; SPRING_WATER r field_36017 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46862 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/NetherPlacements se net/minecraft/class_6815 + f Lnet/minecraft/resources/ResourceKey; DELTA a field_36018 + f Lnet/minecraft/resources/ResourceKey; SMALL_BASALT_COLUMNS b field_36019 + f Lnet/minecraft/resources/ResourceKey; LARGE_BASALT_COLUMNS c field_36020 + f Lnet/minecraft/resources/ResourceKey; BASALT_BLOBS d field_36021 + f Lnet/minecraft/resources/ResourceKey; BLACKSTONE_BLOBS e field_36022 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE_EXTRA f field_36023 + f Lnet/minecraft/resources/ResourceKey; GLOWSTONE g field_36024 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST_VEGETATION h field_36025 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST_VEGETATION i field_36026 + f Lnet/minecraft/resources/ResourceKey; NETHER_SPROUTS j field_36027 + f Lnet/minecraft/resources/ResourceKey; TWISTING_VINES k field_36028 + f Lnet/minecraft/resources/ResourceKey; WEEPING_VINES l field_36029 + f Lnet/minecraft/resources/ResourceKey; PATCH_CRIMSON_ROOTS m field_36030 + f Lnet/minecraft/resources/ResourceKey; BASALT_PILLAR n field_36031 + f Lnet/minecraft/resources/ResourceKey; SPRING_DELTA o field_36032 + f Lnet/minecraft/resources/ResourceKey; SPRING_CLOSED p field_36033 + f Lnet/minecraft/resources/ResourceKey; SPRING_CLOSED_DOUBLE q field_36034 + f Lnet/minecraft/resources/ResourceKey; SPRING_OPEN r field_36035 + f Lnet/minecraft/resources/ResourceKey; PATCH_SOUL_FIRE s field_36037 + f Lnet/minecraft/resources/ResourceKey; PATCH_FIRE t field_36038 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46863 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/OrePlacements sf net/minecraft/class_6816 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE_LOWER A field_36039 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND B field_36040 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_MEDIUM C field_45664 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_LARGE D field_36041 + f Lnet/minecraft/resources/ResourceKey; ORE_DIAMOND_BURIED E field_36042 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS F field_36043 + f Lnet/minecraft/resources/ResourceKey; ORE_LAPIS_BURIED G field_36044 + f Lnet/minecraft/resources/ResourceKey; ORE_INFESTED H field_36045 + f Lnet/minecraft/resources/ResourceKey; ORE_EMERALD I field_36046 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_LARGE J field_36047 + f Lnet/minecraft/resources/ResourceKey; ORE_ANCIENT_DEBRIS_SMALL K field_36048 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER L field_36049 + f Lnet/minecraft/resources/ResourceKey; ORE_COPPER_LARGE M field_36050 + f Lnet/minecraft/resources/ResourceKey; ORE_CLAY N field_36051 + f Lnet/minecraft/resources/ResourceKey; ORE_MAGMA a field_36052 + f Lnet/minecraft/resources/ResourceKey; ORE_SOUL_SAND b field_36053 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_DELTAS c field_36054 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ_DELTAS d field_36055 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_NETHER e field_36056 + f Lnet/minecraft/resources/ResourceKey; ORE_QUARTZ_NETHER f field_36057 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL_NETHER g field_36058 + f Lnet/minecraft/resources/ResourceKey; ORE_BLACKSTONE h field_36059 + f Lnet/minecraft/resources/ResourceKey; ORE_DIRT i field_36060 + f Lnet/minecraft/resources/ResourceKey; ORE_GRAVEL j field_36061 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE_UPPER k field_36062 + f Lnet/minecraft/resources/ResourceKey; ORE_GRANITE_LOWER l field_36063 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE_UPPER m field_36064 + f Lnet/minecraft/resources/ResourceKey; ORE_DIORITE_LOWER n field_36065 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE_UPPER o field_36066 + f Lnet/minecraft/resources/ResourceKey; ORE_ANDESITE_LOWER p field_36067 + f Lnet/minecraft/resources/ResourceKey; ORE_TUFF q field_36068 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_UPPER r field_36069 + f Lnet/minecraft/resources/ResourceKey; ORE_COAL_LOWER s field_36070 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_UPPER t field_36071 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_MIDDLE u field_36072 + f Lnet/minecraft/resources/ResourceKey; ORE_IRON_SMALL v field_36073 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_EXTRA w field_36074 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD x field_36075 + f Lnet/minecraft/resources/ResourceKey; ORE_GOLD_LOWER y field_36076 + f Lnet/minecraft/resources/ResourceKey; ORE_REDSTONE z field_36077 + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; commonOrePlacement a method_39732 + p 0 count + p 1 heightRange + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; orePlacement a method_39733 + p 0 countPlacement + p 1 heightRange + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46864 + p 0 context + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; rareOrePlacement b method_39734 + p 0 chance + p 1 heightRange + m ()V + m ()V +c net/minecraft/data/worldgen/placement/PlacementUtils sg net/minecraft/class_6817 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP a field_36078 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_TOP_SOLID b field_36079 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_WORLD_SURFACE c field_36080 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; HEIGHTMAP_OCEAN_FLOOR d field_36081 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; FULL_RANGE e field_36082 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_10_10 f field_36083 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_8_8 g field_36084 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_4_4 h field_36085 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; RANGE_BOTTOM_TO_MAX_TERRAIN_HEIGHT i field_36086 + m ()Lnet/minecraft/world/level/levelgen/placement/PlacementFilter; isEmpty a method_40371 + m (IFI)Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; countExtra a method_39736 + p 0 baseValue + p 1 chance + p 2 addedAmount + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter; filteredByBlockSurvival a method_40365 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/core/Holder; onlyWhenEmpty a method_40366 + p 0 feature + p 1 config + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/core/Holder; filtered a method_40367 + p 0 feature + p 1 config + p 2 predicate + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lnet/minecraft/core/Holder; inlinePlaced a method_40368 + p 0 feature + p 1 config + p 2 placements + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46865 + p 0 key + m (Lnet/minecraft/core/Holder;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lnet/minecraft/core/Holder; inlinePlaced a method_40369 + p 0 feature + p 1 placements + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_39735 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;Ljava/util/List;)V register a method_39737 + p 0 context + p 1 key + p 2 configuredFeature + p 3 placements + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;[Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)V register a method_40370 + p 0 context + p 1 key + p 2 configuredFeature + p 3 placements + m ()V + m ()V +c net/minecraft/data/worldgen/placement/TreePlacements sh net/minecraft/class_6818 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_002 A field_36113 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES B field_36087 + f Lnet/minecraft/resources/ResourceKey; CHERRY_BEES_005 C field_42962 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FUNGI a field_36088 + f Lnet/minecraft/resources/ResourceKey; WARPED_FUNGI b field_36089 + f Lnet/minecraft/resources/ResourceKey; OAK_CHECKED c field_36090 + f Lnet/minecraft/resources/ResourceKey; DARK_OAK_CHECKED d field_36091 + f Lnet/minecraft/resources/ResourceKey; BIRCH_CHECKED e field_36092 + f Lnet/minecraft/resources/ResourceKey; ACACIA_CHECKED f field_36093 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_CHECKED g field_36094 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_CHECKED h field_38814 + f Lnet/minecraft/resources/ResourceKey; CHERRY_CHECKED i field_42963 + f Lnet/minecraft/resources/ResourceKey; PINE_ON_SNOW j field_36097 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_ON_SNOW k field_36098 + f Lnet/minecraft/resources/ResourceKey; PINE_CHECKED l field_36099 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TREE_CHECKED m field_36100 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_CHECKED n field_36101 + f Lnet/minecraft/resources/ResourceKey; MEGA_JUNGLE_TREE_CHECKED o field_36102 + f Lnet/minecraft/resources/ResourceKey; MEGA_SPRUCE_CHECKED p field_36103 + f Lnet/minecraft/resources/ResourceKey; MEGA_PINE_CHECKED q field_36104 + f Lnet/minecraft/resources/ResourceKey; TALL_MANGROVE_CHECKED r field_38815 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_BUSH s field_36105 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES_0002 t field_36106 + f Lnet/minecraft/resources/ResourceKey; SUPER_BIRCH_BEES u field_36107 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_0002 v field_36108 + f Lnet/minecraft/resources/ResourceKey; OAK_BEES_002 w field_36109 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_0002_PLACED x field_36110 + f Lnet/minecraft/resources/ResourceKey; BIRCH_BEES_002 y field_36111 + f Lnet/minecraft/resources/ResourceKey; FANCY_OAK_BEES_0002 z field_36112 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46866 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/VegetationPlacements si net/minecraft/class_6819 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_DECORATED A field_36185 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_SWAMP B field_36114 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_DESERT C field_36115 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE_BADLANDS D field_36116 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUGAR_CANE E field_36117 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_NETHER F field_36118 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_NETHER G field_36119 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_NORMAL H field_36120 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_NORMAL I field_36121 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_TAIGA J field_36122 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_TAIGA K field_36123 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_OLD_GROWTH L field_36124 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_OLD_GROWTH M field_36125 + f Lnet/minecraft/resources/ResourceKey; BROWN_MUSHROOM_SWAMP N field_36126 + f Lnet/minecraft/resources/ResourceKey; RED_MUSHROOM_SWAMP O field_36127 + f Lnet/minecraft/resources/ResourceKey; FLOWER_WARM P field_36128 + f Lnet/minecraft/resources/ResourceKey; FLOWER_DEFAULT Q field_36129 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FLOWER_FOREST R field_36130 + f Lnet/minecraft/resources/ResourceKey; FLOWER_SWAMP S field_36131 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAINS T field_36132 + f Lnet/minecraft/resources/ResourceKey; FLOWER_MEADOW U field_36133 + f Lnet/minecraft/resources/ResourceKey; FLOWER_CHERRY V field_42964 + f Lnet/minecraft/resources/ResourceKey; TREES_PLAINS W field_36135 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST_VEGETATION X field_36136 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FOREST_FLOWERS Y field_36137 + f Lnet/minecraft/resources/ResourceKey; FOREST_FLOWERS Z field_36138 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_LIGHT a field_36140 + f Lnet/minecraft/resources/ResourceKey; TREES_FLOWER_FOREST aa field_36139 + f Lnet/minecraft/resources/ResourceKey; TREES_MEADOW ab field_36141 + f Lnet/minecraft/resources/ResourceKey; TREES_CHERRY ac field_42965 + f Lnet/minecraft/resources/ResourceKey; TREES_TAIGA ad field_36142 + f Lnet/minecraft/resources/ResourceKey; TREES_GROVE ae field_36143 + f Lnet/minecraft/resources/ResourceKey; TREES_BADLANDS af field_36144 + f Lnet/minecraft/resources/ResourceKey; TREES_SNOWY ag field_36145 + f Lnet/minecraft/resources/ResourceKey; TREES_SWAMP ah field_36146 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_SAVANNA ai field_36147 + f Lnet/minecraft/resources/ResourceKey; TREES_SAVANNA aj field_36148 + f Lnet/minecraft/resources/ResourceKey; BIRCH_TALL ak field_36149 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH al field_36150 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_FOREST am field_36151 + f Lnet/minecraft/resources/ResourceKey; TREES_WINDSWEPT_HILLS an field_36152 + f Lnet/minecraft/resources/ResourceKey; TREES_WATER ao field_36153 + f Lnet/minecraft/resources/ResourceKey; TREES_BIRCH_AND_OAK ap field_36154 + f Lnet/minecraft/resources/ResourceKey; TREES_SPARSE_JUNGLE aq field_36155 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_SPRUCE_TAIGA ar field_36156 + f Lnet/minecraft/resources/ResourceKey; TREES_OLD_GROWTH_PINE_TAIGA as field_36157 + f Lnet/minecraft/resources/ResourceKey; TREES_JUNGLE at field_36158 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_VEGETATION au field_36159 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_ISLAND_VEGETATION av field_36160 + f Lnet/minecraft/resources/ResourceKey; TREES_MANGROVE aw field_38816 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifier; TREE_THRESHOLD ax field_36134 + f Lnet/minecraft/resources/ResourceKey; BAMBOO b field_36161 + f Lnet/minecraft/resources/ResourceKey; VINES c field_36162 + f Lnet/minecraft/resources/ResourceKey; PATCH_SUNFLOWER d field_36163 + f Lnet/minecraft/resources/ResourceKey; PATCH_PUMPKIN e field_36164 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_PLAIN f field_36165 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_FOREST g field_36166 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_BADLANDS h field_36167 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_SAVANNA i field_36168 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_NORMAL j field_36169 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_TAIGA_2 k field_36170 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_TAIGA l field_36171 + f Lnet/minecraft/resources/ResourceKey; PATCH_GRASS_JUNGLE m field_36172 + f Lnet/minecraft/resources/ResourceKey; GRASS_BONEMEAL n field_36173 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH_2 o field_36174 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH p field_36175 + f Lnet/minecraft/resources/ResourceKey; PATCH_DEAD_BUSH_BADLANDS q field_36176 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON r field_36177 + f Lnet/minecraft/resources/ResourceKey; PATCH_MELON_SPARSE s field_36292 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_COMMON t field_36178 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_RARE u field_36179 + f Lnet/minecraft/resources/ResourceKey; PATCH_WATERLILY v field_36180 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS_2 w field_36181 + f Lnet/minecraft/resources/ResourceKey; PATCH_TALL_GRASS x field_36182 + f Lnet/minecraft/resources/ResourceKey; PATCH_LARGE_FERN y field_36183 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_DESERT z field_36184 + m (I)Ljava/util/List; worldSurfaceSquaredWithCount a method_39738 + p 0 count + m (ILnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; getMushroomPlacement a method_39739 + p 0 rarity + p 1 placement + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Ljava/util/List; treePlacement a method_39740 + p 0 placement + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/block/Block;)Ljava/util/List; treePlacement a method_39741 + p 0 placement + p 1 saplingBlock + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46867 + p 0 context + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;)Lcom/google/common/collect/ImmutableList$Builder; treePlacementBase b method_39742 + p 0 placement + m ()V + m ()V +c net/minecraft/data/worldgen/placement/VillagePlacements sj net/minecraft/class_6825 + f Lnet/minecraft/resources/ResourceKey; PILE_HAY_VILLAGE a field_36195 + f Lnet/minecraft/resources/ResourceKey; PILE_MELON_VILLAGE b field_36196 + f Lnet/minecraft/resources/ResourceKey; PILE_SNOW_VILLAGE c field_36197 + f Lnet/minecraft/resources/ResourceKey; PILE_ICE_VILLAGE d field_36198 + f Lnet/minecraft/resources/ResourceKey; PILE_PUMPKIN_VILLAGE e field_36199 + f Lnet/minecraft/resources/ResourceKey; OAK_VILLAGE f field_36200 + f Lnet/minecraft/resources/ResourceKey; ACACIA_VILLAGE g field_36201 + f Lnet/minecraft/resources/ResourceKey; SPRUCE_VILLAGE h field_36202 + f Lnet/minecraft/resources/ResourceKey; PINE_VILLAGE i field_36203 + f Lnet/minecraft/resources/ResourceKey; PATCH_CACTUS_VILLAGE j field_36204 + f Lnet/minecraft/resources/ResourceKey; FLOWER_PLAIN_VILLAGE k field_36205 + f Lnet/minecraft/resources/ResourceKey; PATCH_TAIGA_GRASS_VILLAGE l field_36206 + f Lnet/minecraft/resources/ResourceKey; PATCH_BERRY_BUSH_VILLAGE m field_36207 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_46868 + p 0 context + m ()V + m ()V +c net/minecraft/data/worldgen/placement/package-info sk net/minecraft/class_6820 +c net/minecraft/gametest/framework/AfterBatch sl net/minecraft/class_6300 + c Annotate a method with this annotation in order to have it run after the specified {@link #batch()}. + m ()Ljava/lang/String; batch a method_35930 +c net/minecraft/gametest/framework/BeforeBatch sm net/minecraft/class_6301 + c Annotate a method with this annotation in order to have it run before the specified {@link #batch()}. + m ()Ljava/lang/String; batch a method_35931 +c net/minecraft/gametest/framework/ExhaustedAttemptsException sn net/minecraft/class_5622 + m (IILnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 madeAttempts + p 2 successfulAttempts + p 3 testInfo +c net/minecraft/gametest/framework/GameTest so net/minecraft/class_6302 + m ()I timeoutTicks a method_35932 + m ()Ljava/lang/String; batch b method_35933 + m ()Z skyAccess c method_57098 + m ()I rotationSteps d method_35934 + m ()Z required e method_35935 + m ()Z manualOnly f method_57962 + m ()Ljava/lang/String; template g method_35936 + m ()J setupTicks h method_35937 + m ()I attempts i method_35938 + m ()I requiredSuccesses j method_35939 +c net/minecraft/gametest/framework/GameTestAssertException sp net/minecraft/class_4512 + m (Ljava/lang/String;)V + p 1 exceptionMessage +c net/minecraft/gametest/framework/GameTestAssertPosException sq net/minecraft/class_4513 + f Lnet/minecraft/core/BlockPos; absolutePos a field_20541 + f Lnet/minecraft/core/BlockPos; relativePos b field_20542 + f J tick c field_21449 + m ()Ljava/lang/String; getMessageToShowAtBlock a method_22150 + m ()Lnet/minecraft/core/BlockPos; getRelativePos b method_35940 + m ()Lnet/minecraft/core/BlockPos; getAbsolutePos c method_22151 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;J)V + p 1 exceptionMessage + p 2 absolutePos + p 3 relativePos + p 4 tick +c net/minecraft/gametest/framework/GameTestBatch sr net/minecraft/class_4514 + f Ljava/lang/String; DEFAULT_BATCH_NAME a field_33145 + f Ljava/lang/String; name b comp_2209 + f Ljava/util/Collection; gameTestInfos c comp_2210 + f Ljava/util/function/Consumer; beforeBatchFunction d comp_2211 + f Ljava/util/function/Consumer; afterBatchFunction e comp_2212 + m ()Ljava/lang/String; name a comp_2209 + m ()Ljava/util/Collection; gameTestInfos b comp_2210 + m ()Ljava/util/function/Consumer; beforeBatchFunction c comp_2211 + m ()Ljava/util/function/Consumer; afterBatchFunction d comp_2212 + m (Ljava/lang/String;Ljava/util/Collection;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 name + p 2 gameTestInfos + p 3 beforeBatchFunction + p 4 afterBatchFunction +c net/minecraft/gametest/framework/GameTestBatchFactory ss net/minecraft/class_9113 + f I MAX_TESTS_PER_BATCH a field_48467 + m ()Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; fromGameTestInfo a method_56188 + m (I)Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; fromGameTestInfo a method_61092 + p 0 maxTests + m (ILjava/util/Collection;)Ljava/util/Collection; method_56193 a method_56193 + m (ILjava/util/Map$Entry;)Ljava/util/stream/Stream; method_56196 a method_56196 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;Ljava/util/List;J)Lnet/minecraft/gametest/framework/GameTestBatch; method_56189 a method_56189 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_56190 a method_56190 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/TestFunction;)Lnet/minecraft/gametest/framework/GameTestInfo; method_56191 a method_56191 + m (Ljava/lang/String;Ljava/util/List;J)Lnet/minecraft/gametest/framework/GameTestBatch; method_56192 a method_56192 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Collection; fromTestFunction a method_56194 + p 0 testFunctions + p 1 level + m (Ljava/util/Collection;Ljava/lang/String;J)Lnet/minecraft/gametest/framework/GameTestBatch; toGameTestBatch a method_56195 + p 0 gameTestInfos + p 1 functionName + p 2 index + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/String; method_56197 a method_56197 + m (Lnet/minecraft/gametest/framework/TestFunction;ILnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestInfo; toGameTestInfo a method_56198 + p 0 testFunction + p 1 rotationSteps + p 2 level + m ()V +c net/minecraft/gametest/framework/GameTestBatchListener st net/minecraft/class_9114 + m (Lnet/minecraft/gametest/framework/GameTestBatch;)V testBatchStarting a method_56199 + p 1 batch + m (Lnet/minecraft/gametest/framework/GameTestBatch;)V testBatchFinished b method_56200 + p 1 batch +c net/minecraft/gametest/framework/GameTestEvent su net/minecraft/class_4692 + f Ljava/lang/Long; expectedDelay a field_21450 + f Ljava/lang/Runnable; assertion b field_21451 + m (JLjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestEvent; create a method_35941 + p 0 expectedDelay + p 2 assertion + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestEvent; create a method_35942 + p 0 assertion + m (Ljava/lang/Long;Ljava/lang/Runnable;)V + p 1 expectedDelay + p 2 assertion +c net/minecraft/gametest/framework/GameTestGenerator sv net/minecraft/class_6303 +c net/minecraft/gametest/framework/GameTestHelper sw net/minecraft/class_4516 + f Lnet/minecraft/gametest/framework/GameTestInfo; testInfo a field_20558 + f Z finalCheckAdded b field_33146 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_35943 + m (I)V setDayTime a method_35944 + p 1 time + m (III)V pressButton a method_35945 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/block/Block;)V setBlock a method_35946 + p 1 x + p 2 y + p 3 z + p 4 block + m (IIILnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_35947 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Runnable;)V succeedOnTickWhen a method_35948 + p 1 tick + p 2 criterion + m (JLjava/lang/Runnable;)V runAtTickTime a method_35951 + p 1 tickTime + p 3 task + m (JLnet/minecraft/core/BlockPos;)V assertAtTickTimeContainerEmpty a method_35949 + p 1 tickTime + p 3 pos + m (JLnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V assertAtTickTimeContainerContains a method_35950 + p 1 tickTime + p 3 pos + p 4 item + m (Lnet/minecraft/resources/ResourceKey;)V setBiome a method_55451 + p 1 biome + m (Lnet/minecraft/world/entity/Entity;)Z method_52206 a method_52206 + m (Lnet/minecraft/world/entity/Entity;III)V assertEntityInstancePresent a method_35953 + p 1 entity + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_35954 a method_35954 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;Ljava/lang/String;)V assertEntityPosition a method_61173 + p 1 entity + p 2 box + p 3 exceptionMessage + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Function;Ljava/lang/String;Ljava/lang/Object;)V assertEntityProperty a method_35957 + p 1 entity + p 2 entityPropertyGetter + p 3 valueName + p 4 testEntityProperty + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Ljava/lang/String;)V assertEntityProperty a method_35958 + p 1 entity + p 2 predicate + p 3 name + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V assertEntityInstancePresent a method_35955 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/gametest/framework/GameTestAssertPosException; method_35956 a method_35956 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Entity; findOneEntity a method_56201 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;DDD)V assertEntityTouching a method_35960 + p 1 type + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/EntityType;FFF)Lnet/minecraft/world/entity/Entity; spawn a method_35961 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;I)V assertEntitiesPresent a method_55323 + p 1 entityType + p 2 count + m (Lnet/minecraft/world/entity/EntityType;III)Lnet/minecraft/world/entity/Entity; spawn a method_35962 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;IIID)Lnet/minecraft/world/entity/Entity; findClosestEntity a method_56202 + p 1 type + p 2 x + p 3 y + p 4 z + p 5 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/Entity; spawn a method_35963 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;D)Ljava/util/List; findEntities a method_56203 + p 1 type + p 2 pos + p 3 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V assertEntityPresent a method_46224 + p 1 entityType + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; spawn a method_35964 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;D)V assertEntityPresent a method_35965 + p 1 type + p 2 pos + p 3 expansionAmount + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;ID)V assertEntitiesPresent a method_44606 + p 1 entityType + p 2 pos + p 3 count + p 4 radius + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; makeAboutToDrown a method_35966 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;I)V assertLivingEntityHasMobEffect a method_52889 + p 1 entity + p 2 effect + p 3 amplifier + m (Lnet/minecraft/world/entity/Mob;FFF)V moveTo a method_57099 + p 1 mob + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;F)Lnet/minecraft/gametest/framework/GameTestSequence; walkTo a method_35967 + p 1 mob + p 2 pos + p 3 speed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V placeAt a method_47816 + p 1 player + p 2 stack + p 3 pos + p 4 direction + m (Lnet/minecraft/world/item/Item;)V assertItemEntityPresent a method_54143 + p 1 item + m (Lnet/minecraft/world/item/Item;FFF)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_35968 + p 1 item + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/ItemStack;)Z method_48000 a method_48000 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_57100 + p 1 item + p 2 pos + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/item/ItemEntity; spawnItem a method_46225 + p 1 item + p 2 pos + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;D)V assertItemEntityPresent a method_35969 + p 1 item + p 2 pos + p 3 expansionAmount + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;DI)V assertItemEntityCountIs a method_35970 + p 1 item + p 2 pos + p 3 expansionAmount + p 5 count + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/entity/player/Player; makeMockPlayer a method_36021 + p 1 gameType + m (Lnet/minecraft/world/level/block/Block;III)V assertBlockPresent a method_35971 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V assertBlockPresent a method_35972 + p 1 block + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_35973 a method_35973 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Z method_35974 a method_35974 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/BlockState;)Z method_36000 a method_36000 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_42063 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;)V assertSameBlockStates a method_35977 + p 1 boundingBox + p 2 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;)Z method_56204 a method_56204 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; absoluteVec a method_35978 + p 1 relativeVec3 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_35979 a method_35979 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I method_56205 a method_56205 + m (Ljava/lang/Class;)V killAllEntitiesOfClass a method_52207 + p 1 entityClass + m (Ljava/lang/Object;)Z method_48002 a method_48002 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/String;)V assertValueEqual a method_56606 + p 1 actual + p 2 expected + p 3 valueName + m (Ljava/lang/Runnable;)V succeedIf a method_35993 + p 1 criterion + m (Ljava/lang/Runnable;J)V method_35994 a method_35994 + m (Ljava/lang/String;)V fail a method_35995 + p 1 exceptionMessage + m (Ljava/lang/String;Lnet/minecraft/world/entity/Entity;)V fail a method_35996 + p 1 exceptionMessage + p 2 entity + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)V fail a method_35997 + p 1 exceptionMessage + p 2 pos + m (Ljava/util/function/Consumer;)V forEveryBlockInStructure a method_35998 + p 1 consumer + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/BlockState;)Z method_35999 a method_35999 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_35980 + p 1 pos + m (Lnet/minecraft/core/BlockPos;J)V pulseRedstone a method_35981 + p 1 pos + p 2 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)V assertEntityIsHolding a method_48001 + p 1 pos + p 2 entityType + p 3 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V assertEntityData a method_35982 + p 1 pos + p 2 type + p 3 entityDataGetter + p 4 testEntityData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V useBlock a method_36034 + p 1 pos + p 2 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)V useBlock a method_47817 + p 1 pos + p 2 player + p 3 result + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V assertContainerContains a method_35983 + p 1 pos + p 2 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V setBlock a method_35984 + p 1 pos + p 2 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Z method_35985 a method_35985 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_35986 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V assertBlockProperty a method_35987 + p 1 pos + p 2 property + p 3 value + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;Ljava/lang/String;)V assertBlockProperty a method_35988 + p 1 pos + p 2 property + p 3 predicate + p 4 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;)V method_35989 a method_35989 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/lang/String;)V assertBlock a method_35991 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlock a method_35992 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V assertSameBlockState a method_35990 + p 1 testPos + p 2 comparisonPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Ljava/util/function/IntPredicate;Ljava/util/function/Supplier;)V assertRedstoneSignal a method_52225 + p 1 pos + p 2 direction + p 3 signalStrengthPredicate + p 4 exceptionMessage + m (ZLjava/lang/String;)V assertTrue a method_46226 + p 1 condition + p 2 failureMessage + m ()V killAllEntities b method_36001 + m (III)V pullLever b method_36002 + p 1 x + p 2 y + p 3 z + m (JLjava/lang/Runnable;)V runAfterDelay b method_36003 + p 1 delay + p 3 task + m (Lnet/minecraft/world/entity/EntityType;)V assertEntityPresent b method_35959 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;DDD)V assertEntityNotTouching b method_36005 + p 1 type + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/EntityType;FFF)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36006 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;III)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36007 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;IIID)Ljava/util/List; findEntities b method_56207 + p 1 type + p 2 x + p 3 y + p 4 z + p 5 radius + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36008 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V assertEntityNotPresent b method_59872 + p 1 type + p 2 from + p 3 to + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Mob; spawnWithNoFreeWill b method_36009 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;D)Ljava/util/List; getEntities b method_44335 + p 1 entityType + p 2 pos + p 3 radius + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; withLowHealth b method_51821 + p 1 entity + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;F)V method_36010 b method_36010 + m (Lnet/minecraft/world/item/Item;)V assertItemEntityNotPresent b method_54144 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/BlockPos;D)V assertItemEntityNotPresent b method_42762 + p 1 item + p 2 pos + p 3 radius + m (Lnet/minecraft/world/level/block/Block;III)V assertBlockNotPresent b method_36011 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V assertBlockNotPresent b method_36012 + p 1 block + p 2 pos + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; relativeVec b method_46227 + p 1 absoluteVec3 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Z method_36013 b method_36013 + m (Ljava/lang/Runnable;)V succeedWhen b method_36018 + p 1 criterion + m (Ljava/lang/Runnable;J)V method_36019 b method_36019 + m (Ljava/lang/String;)Ljava/lang/String; method_36020 b method_36020 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity b method_36014 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item;)V assertEntityInventoryContains b method_48003 + p 1 pos + p 2 entityType + p 3 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V succeedWhenEntityData b method_36015 + p 1 pos + p 2 type + p 3 entityDataGetter + p 4 testEntityData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/Item;)V method_36016 b method_36016 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlockState b method_36017 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m (ZLjava/lang/String;)V assertFalse b method_49994 + p 1 condition + p 2 failureMessage + m ()Lnet/minecraft/server/level/ServerPlayer; makeMockServerPlayerInLevel c method_51891 + m (Lnet/minecraft/world/entity/EntityType;)Ljava/util/List; getEntities c method_56208 + p 1 entityType + m (Lnet/minecraft/world/entity/EntityType;III)V assertEntityPresent c method_36022 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V assertEntityPresent c method_36023 + p 1 type + p 2 pos + m (Lnet/minecraft/world/level/block/Block;III)V succeedWhenBlockPresent c method_36024 + p 1 block + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V succeedWhenBlockPresent c method_36025 + p 1 block + p 2 pos + m (Ljava/lang/Runnable;)V failIf c method_36028 + p 1 criterion + m (Ljava/lang/String;)Ljava/lang/String; method_36029 c method_36029 + m (Lnet/minecraft/core/BlockPos;)V pressButton c method_36026 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Function;Ljava/lang/Object;)V method_36027 c method_36027 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Ljava/util/function/Supplier;)V assertBlockEntityData c method_60651 + p 1 pos + p 2 predicate + p 3 exceptionMessage + m ()V setNight d method_36030 + m (Lnet/minecraft/world/entity/EntityType;)V assertEntityNotPresent d method_36004 + p 1 type + m (Lnet/minecraft/world/entity/EntityType;III)V assertEntityNotPresent d method_36031 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V assertEntityNotPresent d method_36032 + p 1 type + p 2 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V method_36033 d method_36033 + m (Ljava/lang/Runnable;)V failIfEver d method_36035 + p 1 criterion + m (Lnet/minecraft/core/BlockPos;)V useBlock d method_46229 + p 1 pos + m ()V succeed e method_36036 + m (Lnet/minecraft/world/entity/EntityType;III)V succeedWhenEntityPresent e method_36037 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V succeedWhenEntityPresent e method_36038 + p 1 type + p 2 pos + m (Ljava/lang/Runnable;)V onEachTick e method_36040 + p 1 task + m (Lnet/minecraft/core/BlockPos;)V pullLever e method_36039 + p 1 pos + m ()V tickPrecipitation f method_55452 + m (Lnet/minecraft/world/entity/EntityType;III)V succeedWhenEntityNotPresent f method_36042 + p 1 type + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V succeedWhenEntityNotPresent f method_36043 + p 1 type + p 2 pos + m (Lnet/minecraft/core/BlockPos;)V destroyBlock f method_36044 + p 1 pos + m ()Lnet/minecraft/gametest/framework/GameTestSequence; startSequence g method_36041 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V method_36046 g method_36046 + m (Lnet/minecraft/core/BlockPos;)V assertContainerEmpty g method_36047 + p 1 pos + m ()Lnet/minecraft/world/level/block/Rotation; getTestRotation h method_61093 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;)V method_36049 h method_36049 + m (Lnet/minecraft/core/BlockPos;)V randomTick h method_36050 + p 1 pos + m ()J getTick i method_36045 + m (Lnet/minecraft/core/BlockPos;)V tickPrecipitation i method_55453 + p 1 pos + m ()Lnet/minecraft/world/phys/AABB; getBounds j method_36051 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; absolutePos j method_36052 + p 1 pos + m ()V ensureSingleFinalCheck k method_36048 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; relativePos k method_36054 + p 1 pos + m ()Lnet/minecraft/world/phys/AABB; getRelativeBounds l method_36053 + m (Lnet/minecraft/core/BlockPos;)V method_36056 l method_36056 + m ()Ljava/lang/Exception; method_36055 m method_36055 + m (Lnet/minecraft/core/BlockPos;)V method_36058 m method_36058 + m ()Ljava/lang/String; method_36057 n method_36057 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 testInfo +c net/minecraft/gametest/framework/GameTestHelper$1 sw$1 net/minecraft/class_4516$1 + f Lnet/minecraft/world/level/GameType; val$gameType b field_48983 + m (Lnet/minecraft/gametest/framework/GameTestHelper;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLcom/mojang/authlib/GameProfile;Lnet/minecraft/world/level/GameType;)V +c net/minecraft/gametest/framework/GameTestHelper$2 sw$2 net/minecraft/class_4516$2 + m (Lnet/minecraft/gametest/framework/GameTestHelper;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerLevel;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)V +c net/minecraft/gametest/framework/GameTestInfo sx net/minecraft/class_4517 + f Lnet/minecraft/gametest/framework/TestFunction; testFunction a field_20559 + f Lnet/minecraft/core/BlockPos; structureBlockPos b field_20560 + f Lnet/minecraft/core/BlockPos; northWestCorner c field_48468 + f Lnet/minecraft/server/level/ServerLevel; level d field_20561 + f Ljava/util/Collection; listeners e field_20562 + f I timeoutTicks f field_20563 + f Ljava/util/Collection; sequences g field_21452 + f Lit/unimi/dsi/fastutil/objects/Object2LongMap; runAtTickTimeMap h field_21453 + f J startTick i field_21454 + f I ticksToWaitForChunkLoading j field_47172 + f Z placedStructure k field_47173 + f Z chunksLoaded l field_47174 + f J tickCount m field_21455 + f Z started n field_20565 + f Lnet/minecraft/gametest/framework/RetryOptions; retryOptions o field_48469 + f Lcom/google/common/base/Stopwatch; timer p field_21456 + f Z done q field_20567 + f Lnet/minecraft/world/level/block/Rotation; rotation r field_25301 + f Ljava/lang/Throwable; error s field_20569 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity; structureBlockEntity t field_27805 + m ()Ljava/util/stream/Stream; getListeners A method_56209 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; copyReset B method_56210 + m ()Z ensureStructureIsPlaced C method_56211 + m ()V tickInternal D method_33315 + m ()V startTest E method_23639 + m ()V finish F method_23640 + m ()Lnet/minecraft/core/BlockPos; getOrCalculateNorthwestCorner G method_56212 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; placeStructure a method_56213 + m (I)Lnet/minecraft/gametest/framework/GameTestInfo; startExecution a method_23634 + p 1 delay + m (JLjava/lang/Runnable;)V setRunAtTickTime a method_36060 + p 1 tickTime + p 3 task + m (Lnet/minecraft/world/entity/Entity;)V method_54434 a method_54434 + m (Lnet/minecraft/world/level/ChunkPos;)Z method_54900 a method_54900 + m (Ljava/lang/Throwable;)V fail a method_22168 + p 1 error + m (Lnet/minecraft/core/BlockPos;)V setStructureBlockPos a method_23635 + p 1 pos + m (Lnet/minecraft/gametest/framework/GameTestListener;)V addListener a method_22167 + p 1 listener + m (Lnet/minecraft/gametest/framework/GameTestRunner;)V tick a method_22165 + p 1 runner + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/GameTestListener;)V method_33316 a method_33316 + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V method_23636 a method_23636 + m ()Ljava/lang/String; getTestName b method_22169 + m (Lnet/minecraft/world/entity/Entity;)Z method_54435 b method_54435 + m (Lnet/minecraft/core/BlockPos;)V setNorthWestCorner b method_56214 + p 1 northWestCorner + m (Lnet/minecraft/gametest/framework/GameTestListener;)V method_22175 b method_22175 + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/GameTestListener;)V method_22171 b method_22171 + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V method_23637 b method_23637 + m ()Lnet/minecraft/core/BlockPos; getStructureBlockPos c method_22172 + m ()Lnet/minecraft/world/phys/AABB; getStructureBounds d method_36062 + m ()Lnet/minecraft/world/level/block/entity/StructureBlockEntity; getStructureBlockEntity e method_36059 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel f method_22176 + m ()Z hasSucceeded g method_22177 + m ()Z hasFailed h method_22178 + m ()Z hasStarted i method_22179 + m ()Z isDone j method_22180 + m ()J getRunTime k method_36063 + m ()V succeed l method_36064 + m ()Ljava/lang/Throwable; getError m method_22182 + m ()Lnet/minecraft/gametest/framework/GameTestInfo; prepareTestStructure n method_22166 + m ()J getTick o method_36065 + m ()Lnet/minecraft/gametest/framework/GameTestSequence; createSequence p method_36066 + m ()Z isRequired q method_22183 + m ()Z isOptional r method_22184 + m ()Ljava/lang/String; getStructureName s method_23638 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation t method_29402 + m ()Lnet/minecraft/gametest/framework/TestFunction; getTestFunction u method_29403 + m ()I getTimeoutTicks v method_36067 + m ()Z isFlaky w method_32241 + m ()I maxAttempts x method_32242 + m ()I requiredSuccesses y method_32243 + m ()Lnet/minecraft/gametest/framework/RetryOptions; retryOptions z method_56215 + m (Lnet/minecraft/gametest/framework/TestFunction;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/RetryOptions;)V + p 1 testFunction + p 2 rotation + p 3 level + p 4 retryOptions +c net/minecraft/gametest/framework/GameTestListener sy net/minecraft/class_4518 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V testStructureLoaded a method_22188 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testAddedForRerun a method_56216 + p 1 oldTest + p 2 newTest + p 3 runner + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testPassed a method_33317 + p 1 test + p 2 runner + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;)V testFailed b method_22190 + p 1 test + p 2 runner +c net/minecraft/gametest/framework/GameTestRegistry sz net/minecraft/class_4519 + f Ljava/util/Collection; TEST_FUNCTIONS a field_20570 + f Ljava/util/Set; TEST_CLASS_NAMES b field_20571 + f Ljava/util/Map; BEFORE_BATCH_FUNCTIONS c field_20572 + f Ljava/util/Map; AFTER_BATCH_FUNCTIONS d field_27806 + f Ljava/util/Set; LAST_FAILED_TESTS e field_25302 + m ()Ljava/util/Collection; getAllTestFunctions a method_22191 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56217 a method_56217 + m (Ljava/lang/Class;)V register a method_36068 + p 0 testClass + m (Ljava/lang/String;)Ljava/util/stream/Stream; getTestFunctionsForClassName a method_22193 + p 0 className + m (Ljava/lang/String;Lnet/minecraft/gametest/framework/TestFunction;)Z method_22194 a method_22194 + m (Ljava/lang/reflect/Method;)V register a method_36069 + p 0 testMethod + m (Ljava/lang/reflect/Method;Ljava/lang/Class;Ljava/util/function/Function;Ljava/util/Map;)V registerBatchFunction a method_36070 + p 0 testMethod + p 1 annotationType + p 2 valueGetter + p 3 positioning + m (Ljava/lang/reflect/Method;Ljava/lang/Object;)V method_36071 a method_36071 + m (Lnet/minecraft/gametest/framework/TestFunction;)V rememberFailedTest a method_29404 + p 0 testFunction + m (Lnet/minecraft/gametest/framework/TestFunction;Ljava/lang/String;)Z isTestFunctionPartOfClass a method_22192 + p 0 testFunction + p 1 className + m ()Ljava/util/Collection; getAllTestClassNames b method_22195 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56218 b method_56218 + m (Ljava/lang/String;)Z isTestClass b method_22196 + p 0 className + m (Ljava/lang/String;Lnet/minecraft/gametest/framework/TestFunction;)Z method_22197 b method_22197 + m (Ljava/lang/reflect/Method;)Ljava/util/Collection; useTestGeneratorMethod b method_36072 + p 0 testMethod + m ()Ljava/util/stream/Stream; getLastFailedTests c method_29405 + m (Ljava/lang/String;)Ljava/util/function/Consumer; getBeforeBatchFunction c method_22198 + p 0 functionName + m (Ljava/lang/reflect/Method;)Lnet/minecraft/gametest/framework/TestFunction; turnMethodIntoTestFunction c method_36073 + p 0 testMethod + m ()V forgetFailedTests d method_29406 + m (Ljava/lang/String;)Ljava/util/function/Consumer; getAfterBatchFunction d method_32244 + p 0 functionName + m (Ljava/lang/reflect/Method;)Ljava/util/function/Consumer; turnMethodIntoConsumer d method_36074 + p 0 testMethod + m (Ljava/lang/String;)Ljava/util/Optional; findTestFunction e method_22199 + p 0 testName + m (Ljava/lang/String;)Lnet/minecraft/gametest/framework/TestFunction; getTestFunction f method_22200 + p 0 testName + m ()V + m ()V +c net/minecraft/gametest/framework/GameTestRunner ta net/minecraft/class_4520 + f I DEFAULT_TESTS_PER_ROW a field_33151 + f Lorg/slf4j/Logger; LOGGER b field_48470 + f Lnet/minecraft/server/level/ServerLevel; level c field_48471 + f Lnet/minecraft/gametest/framework/GameTestTicker; testTicker d field_48472 + f Ljava/util/List; allTestInfos e field_48473 + f Lcom/google/common/collect/ImmutableList; batches f field_48474 + f Ljava/util/List; batchListeners g field_48475 + f Ljava/util/List; scheduledForRerun h field_48476 + f Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; testBatcher i field_48477 + f Z stopped j field_48478 + f Lnet/minecraft/gametest/framework/GameTestBatch; currentBatch k field_48479 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; existingStructureSpawner l field_48480 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; newStructureSpawner m field_48481 + f Z haltOnError n field_52279 + m ()Ljava/util/List; getTestInfos a method_56219 + m (I)V runBatch a method_56220 + p 1 index + m (Lnet/minecraft/server/level/ServerLevel;)V clearMarkers a method_22213 + p 0 serverLevel + m (Ljava/util/Collection;)Ljava/util/Collection; createStructuresForBatch a method_56221 + p 1 batch + m (Lnet/minecraft/gametest/framework/GameTestBatch;)Ljava/util/stream/Stream; method_56222 a method_56222 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V addListener a method_56223 + p 1 listener + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V rerunTest a method_56224 + p 1 test + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestListener;)V method_56225 a method_56225 + m ()V start b method_56226 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V method_56227 b method_56227 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; spawn b method_56228 + p 1 test + m ()V stop c method_56229 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/String; method_57072 c method_57072 + m ()V runScheduledRerunTests d method_56231 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56230 d method_56230 + m (Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher;Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestTicker;Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;Z)V + p 1 testBatcher + p 2 batches + p 3 level + p 4 testTicker + p 5 existingStructureSpawner + p 6 newStructureSpawner + p 7 haltOnError + m ()V +c net/minecraft/gametest/framework/GameTestRunner$1 ta$1 net/minecraft/class_4520$1 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; val$currentBatchTracker a field_48482 + f I val$batchIndex b field_48483 + f Lnet/minecraft/gametest/framework/GameTestRunner; field_48484 c field_48484 + m ()V testCompleted a method_56232 + m (J)V method_61094 a method_61094 + m (Lnet/minecraft/gametest/framework/GameTestBatchListener;)V method_56234 a method_56234 + m (J)V method_56233 b method_56233 + m (Lnet/minecraft/gametest/framework/GameTestRunner;Lnet/minecraft/gametest/framework/MultipleTestTracker;I)V +c net/minecraft/gametest/framework/GameTestRunner$Builder ta$a net/minecraft/class_4520$class_9115 + f Lnet/minecraft/server/level/ServerLevel; level a field_48485 + f Lnet/minecraft/gametest/framework/GameTestTicker; testTicker b field_48486 + f Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher; batcher c field_48487 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; existingStructureSpawner d field_48488 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; newStructureSpawner e field_48489 + f Ljava/util/Collection; batches f field_48490 + f Z haltOnError g field_52280 + m ()Lnet/minecraft/gametest/framework/GameTestRunner; build a method_56235 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; fromBatches a method_56236 + p 0 batches + p 1 level + m (Lnet/minecraft/gametest/framework/GameTestRunner$GameTestBatcher;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; batcher a method_61095 + p 1 batcher + m (Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; newStructureSpawner a method_56237 + p 1 newStructureSpawner + m (Lnet/minecraft/gametest/framework/StructureGridSpawner;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; existingStructureSpawner a method_61096 + p 1 existingStructureSpawner + m (Z)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; haltOnError a method_61097 + p 1 haltOnError + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/gametest/framework/GameTestRunner$Builder; fromInfo b method_56238 + p 0 infos + p 1 level + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;)V + p 1 batches + p 2 level +c net/minecraft/gametest/framework/GameTestRunner$GameTestBatcher ta$b net/minecraft/class_4520$class_9116 +c net/minecraft/gametest/framework/GameTestRunner$StructureSpawner ta$c net/minecraft/class_4520$class_9117 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; IN_PLACE a field_48491 + f Lnet/minecraft/gametest/framework/GameTestRunner$StructureSpawner; NOT_SET b field_48492 + m (Lnet/minecraft/server/level/ServerLevel;)V onBatchStart a method_61098 + p 1 level + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; method_56239 a method_56239 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/util/Optional; method_56240 b method_56240 + m ()V +c net/minecraft/gametest/framework/GameTestSequence tb net/minecraft/class_4693 + f Lnet/minecraft/gametest/framework/GameTestInfo; parent a field_21457 + f Ljava/util/List; events b field_21458 + f J lastTick c field_21459 + m ()V thenSucceed a method_36075 + m (I)Lnet/minecraft/gametest/framework/GameTestSequence; thenIdle a method_36076 + p 1 tick + m (ILjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecuteAfter a method_36077 + p 1 tick + p 2 task + m (J)V tickAndContinue a method_23643 + p 1 tick + m (JLjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenWaitUntil a method_36078 + p 1 expectedDelay + p 3 task + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenWaitUntil a method_36079 + p 1 task + m (Ljava/util/function/Supplier;)V thenFail a method_36080 + p 1 exception + m (Lnet/minecraft/gametest/framework/GameTestSequence$Condition;)V method_36081 a method_36081 + m ()Lnet/minecraft/gametest/framework/GameTestSequence$Condition; thenTrigger b method_36083 + m (ILjava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecuteFor b method_36084 + p 1 tick + p 2 task + m (J)V tickAndFailIfNotComplete b method_23644 + p 1 ticks + m (Ljava/lang/Runnable;)Lnet/minecraft/gametest/framework/GameTestSequence; thenExecute b method_36085 + p 1 task + m (Ljava/util/function/Supplier;)V method_36086 b method_36086 + m ()V method_36087 c method_36087 + m (ILjava/lang/Runnable;)V method_36088 c method_36088 + m (J)V tick c method_23645 + p 1 tick + m (Ljava/lang/Runnable;)V executeWithoutFail c method_36089 + p 1 task + m (ILjava/lang/Runnable;)V method_36090 d method_36090 + m (Ljava/lang/Runnable;)V method_36091 d method_36091 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V + p 1 testInfo +c net/minecraft/gametest/framework/GameTestSequence$Condition tb$a net/minecraft/class_4693$class_6304 + f Lnet/minecraft/gametest/framework/GameTestSequence; field_33153 a field_33153 + f J NOT_TRIGGERED b field_33154 + f J triggerTime c field_33155 + m ()V assertTriggeredThisTick a method_36092 + m (J)V trigger a method_36093 + p 1 triggerTime + m (Lnet/minecraft/gametest/framework/GameTestSequence;)V +c net/minecraft/gametest/framework/GameTestServer tc net/minecraft/class_6306 + f Lorg/slf4j/Logger; LOGGER k field_33156 + f I PROGRESS_REPORT_INTERVAL l field_33157 + f I TEST_POSITION_RANGE m field_47175 + f Lnet/minecraft/server/Services; NO_SERVICES n field_39441 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; sampleLogger o field_48984 + f Ljava/util/List; testBatches p field_33158 + f Ljava/util/List; testFunctions q field_48493 + f Lnet/minecraft/core/BlockPos; spawnPos r field_33159 + f Lcom/google/common/base/Stopwatch; stopwatch s field_48494 + f Lnet/minecraft/world/level/GameRules; TEST_GAME_RULES t field_33160 + f Lnet/minecraft/world/level/levelgen/WorldOptions; WORLD_OPTIONS u field_33161 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; testTracker v field_33162 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lnet/minecraft/world/level/LevelSettings;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43615 a method_43615 + m (Lnet/minecraft/world/level/GameRules;)V method_36094 a method_36094 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_40377 a method_40377 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/gametest/framework/GameTestServer; create a method_40378 + p 0 serverThread + p 1 storageSource + p 2 packRepository + p 3 testBatches + p 4 spawnPos + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_36095 a method_36095 + m (Lnet/minecraft/server/level/ServerLevel;)V startTests b method_36096 + p 1 serverLevel + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_36097 b method_36097 + m ()Z haveTestsStarted br method_36098 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 testBatches + p 6 spawnPos + m ()V +c net/minecraft/gametest/framework/GameTestServer$1 tc$1 net/minecraft/class_6306$1 + m (Lnet/minecraft/gametest/framework/GameTestServer;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;I)V +c net/minecraft/gametest/framework/GameTestTicker td net/minecraft/class_4521 + f Lnet/minecraft/gametest/framework/GameTestTicker; SINGLETON a field_20574 + f Ljava/util/Collection; testInfos b field_20575 + f Lnet/minecraft/gametest/framework/GameTestRunner; runner c field_48495 + m ()V clear a method_22226 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V add a method_22227 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestRunner;)V setRunner a method_56241 + p 1 runner + m ()V tick b method_22228 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56242 b method_56242 + m ()V + m ()V +c net/minecraft/gametest/framework/GameTestTimeoutException te net/minecraft/class_4522 + m (Ljava/lang/String;)V + p 1 exceptionMessage +c net/minecraft/gametest/framework/GlobalTestReporter tf net/minecraft/class_5623 + f Lnet/minecraft/gametest/framework/TestReporter; DELEGATE a field_27807 + m ()V finish a method_36099 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestFailed a method_32245 + p 0 testInfo + m (Lnet/minecraft/gametest/framework/TestReporter;)V replaceWith a method_36100 + p 0 testReporter + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestSuccess b method_33319 + p 0 testInfo + m ()V + m ()V +c net/minecraft/gametest/framework/JUnitLikeTestReporter tg net/minecraft/class_6307 + f Lorg/w3c/dom/Document; document a field_33164 + f Lorg/w3c/dom/Element; testSuite b field_33165 + f Lcom/google/common/base/Stopwatch; stopwatch c field_33166 + f Ljava/io/File; destination d field_33167 + m (Ljava/io/File;)V save a method_36101 + p 1 destination + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)Lorg/w3c/dom/Element; createTestCase a method_36102 + p 1 testInfo + p 2 name + m (Ljava/io/File;)V + p 1 destination +c net/minecraft/gametest/framework/LogTestReporter th net/minecraft/class_4523 + f Lorg/slf4j/Logger; LOGGER a field_20576 + m ()V + m ()V +c net/minecraft/gametest/framework/MultipleTestTracker ti net/minecraft/class_4524 + f C NOT_STARTED_TEST_CHAR a field_33168 + f C ONGOING_TEST_CHAR b field_33169 + f C SUCCESSFUL_TEST_CHAR c field_33170 + f C FAILED_OPTIONAL_TEST_CHAR d field_33171 + f C FAILED_REQUIRED_TEST_CHAR e field_33172 + f Ljava/util/Collection; tests f field_20577 + f Ljava/util/Collection; listeners g field_25303 + m ()I getFailedRequiredCount a method_22229 + m (Ljava/lang/StringBuffer;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_22233 a method_22233 + m (Ljava/util/function/Consumer;)V addFailureListener a method_29407 + p 1 onFail + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V addTestToTrack a method_22230 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestListener;)V addListener a method_22231 + p 1 testListener + m (Lnet/minecraft/gametest/framework/GameTestListener;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_22232 a method_22232 + m ()I getFailedOptionalCount b method_22234 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V remove b method_56243 + p 1 gameTestInfo + m ()I getDoneCount c method_22235 + m ()Z hasFailedRequired d method_22236 + m ()Z hasFailedOptional e method_22237 + m ()Ljava/util/Collection; getFailedRequired f method_36103 + m ()Ljava/util/Collection; getFailedOptional g method_36104 + m ()I getTotalCount h method_22238 + m ()Z isDone i method_22239 + m ()Ljava/lang/String; getProgressBar j method_22240 + m ()V + m (Ljava/util/Collection;)V + p 1 testInfos +c net/minecraft/gametest/framework/MultipleTestTracker$1 ti$1 net/minecraft/class_4524$1 + f Ljava/util/function/Consumer; val$listener a field_25304 + m (Lnet/minecraft/gametest/framework/MultipleTestTracker;Ljava/util/function/Consumer;)V +c net/minecraft/gametest/framework/ReportGameListener tj net/minecraft/class_5624 + f I attempts a field_27808 + f I successes b field_27809 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/lang/String;)V showRedBox a method_32247 + p 0 serverLevel + p 1 pos + p 2 displayMessage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/ChatFormatting;Ljava/lang/String;)V say a method_32248 + p 0 serverLevel + p 1 formatting + p 2 message + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_32249 a method_32249 + m (Ljava/lang/String;Lnet/minecraft/ChatFormatting;Lnet/minecraft/server/level/ServerPlayer;)V method_32250 a method_32250 + m (Ljava/lang/String;ZLjava/lang/String;)Lnet/minecraft/world/item/ItemStack; createBook a method_32251 + p 0 testName + p 1 required + p 2 message + m (Ljava/lang/StringBuffer;Ljava/lang/String;)V method_32252 a method_32252 + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/world/level/block/Block;)V spawnBeacon a method_32253 + p 0 testInfo + p 1 block + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V reportPassed a method_33320 + p 0 testInfo + p 1 message + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/Throwable;)V reportFailure a method_32254 + p 0 testInfo + p 1 error + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/gametest/framework/GameTestRunner;Z)V handleRetry a method_56244 + p 1 testInfo + p 2 runner + p 3 passed + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Lnet/minecraft/core/BlockPos; getBeaconPos b method_61099 + p 0 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/world/level/block/Block;)V updateBeaconGlass b method_61100 + p 0 testInfo + p 1 newBlock + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V visualizePassedTest b method_33321 + p 0 testInfo + p 1 message + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/Throwable;)V visualizeFailedTest b method_32255 + p 0 testInfo + p 1 error + m (Lnet/minecraft/gametest/framework/GameTestInfo;Ljava/lang/String;)V spawnLectern c method_32256 + p 0 testInfo + p 1 message + m ()V +c net/minecraft/gametest/framework/RetryOptions tk net/minecraft/class_9118 + f I numberOfTries a comp_2213 + f Z haltOnFailure b comp_2214 + f Lnet/minecraft/gametest/framework/RetryOptions; NO_RETRIES c field_48496 + m ()Lnet/minecraft/gametest/framework/RetryOptions; noRetries a method_56245 + m (II)Z hasTriesLeft a method_56246 + p 1 attempts + p 2 successes + m ()Z unlimitedTries b method_56247 + m ()Z hasRetries c method_56248 + m ()I numberOfTries d comp_2213 + m ()Z haltOnFailure e comp_2214 + m (IZ)V + m ()V +c net/minecraft/gametest/framework/StructureBlockPosFinder tl net/minecraft/class_9119 +c net/minecraft/gametest/framework/StructureGridSpawner tm net/minecraft/class_9120 + f I SPACE_BETWEEN_COLUMNS c field_48497 + f I SPACE_BETWEEN_ROWS d field_48498 + f I testsPerRow e field_48499 + f I currentRowCount f field_48500 + f Lnet/minecraft/world/phys/AABB; rowBounds g field_48501 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; nextTestNorthWestCorner h field_48502 + f Lnet/minecraft/core/BlockPos; firstTestNorthWestCorner i field_48503 + f Z clearOnBatch j field_52281 + f F maxX k field_52282 + f Ljava/util/Collection; testInLastBatch l field_52283 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestInfo;)V method_61101 a method_61101 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 northTestNorthWestCorner + p 2 testsPerRow + p 3 clearOnBatch +c net/minecraft/gametest/framework/StructureUtils tn net/minecraft/class_4525 + f I DEFAULT_Y_SEARCH_RADIUS a field_51468 + f Ljava/lang/String; DEFAULT_TEST_STRUCTURES_DIR b field_33173 + f Ljava/lang/String; testStructuresDir c field_20579 + f Lorg/slf4j/Logger; LOGGER d field_27813 + m (I)Lnet/minecraft/world/level/block/Rotation; getRotationForRotationSteps a method_29408 + p 0 rotationSteps + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_22254 a method_22254 + m (ILnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)V clearBlock a method_22368 + p 0 structureBlockY + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)V method_54901 a method_54901 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_56250 a method_56250 + m (Lnet/minecraft/world/entity/Entity;)Z method_22241 a method_22241 + m (Lnet/minecraft/world/level/block/Rotation;)I getRotationStepsForRotation a method_36105 + p 0 rotation + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/world/phys/AABB; getStructureBounds a method_22242 + p 0 structureBlockEntity + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/server/level/ServerLevel;)V clearSpaceForStructure a method_22246 + p 0 boundingBox + p 1 level + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/server/level/ServerLevel;)V removeBarriers a method_57101 + p 0 bounds + p 1 level + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/server/level/ServerLevel;Z)V encaseStructure a method_57102 + p 0 bounds + p 1 level + p 2 placeBarriers + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_56251 a method_56251 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_59783 a method_59783 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)V createNewEmptyStructureBlock a method_22251 + p 0 structureName + p 1 pos + p 2 size + p 3 rotation + p 4 serverLevel + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; findStructureBlockContainingPos a method_22244 + p 0 pos + p 1 radius + p 2 serverLevel + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Ljava/util/stream/Stream; findStructureByTestFunction a method_59782 + p 0 pos + p 1 radius + p 2 level + p 3 testName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_22249 a method_22249 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/stream/Stream; lookedAtStructureBlockPos a method_56252 + p 0 pos + p 1 entity + p 2 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)I method_22245 a method_22245 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z doesStructureContain a method_22247 + p 0 structureBlockPos + p 1 posToTest + p 2 serverLevel + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57103 a method_57103 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)V addCommandBlockAndButtonToStartTest a method_22248 + p 0 structureBlockPos + p 1 offset + p 2 rotation + p 3 serverLevel + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57104 a method_57104 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getTransformedFarCorner a method_54847 + p 0 pos + p 1 offset + p 2 rotation + m (Lnet/minecraft/gametest/framework/GameTestInfo;)Ljava/lang/IllegalStateException; method_54902 a method_54902 + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; prepareTestStructure a method_54903 + p 0 gameTestInfo + p 1 pos + p 2 rotation + p 3 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_54845 b method_54845 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getStructureBoundingBox b method_29410 + p 0 structureBlockEntity + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/server/level/ServerLevel;)V forceLoadChunks b method_22256 + p 0 boundingBox + p 1 level + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; findNearestStructureBlock b method_22255 + p 0 pos + p 1 radius + p 2 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getStructureBoundingBox b method_29409 + p 0 pos + p 1 offset + p 2 rotation + m (Lnet/minecraft/gametest/framework/GameTestInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; createStructureBlock b method_22252 + p 0 gameTestInfo + p 1 pos + p 2 rotation + p 3 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; method_59784 c method_59784 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Lnet/minecraft/core/BlockPos; getStructureOrigin c method_54849 + p 0 structureBlockEntity + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Ljava/util/stream/Stream; findStructureBlocks c method_22258 + p 0 pos + p 1 radius + p 2 level + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBoxAtGround d method_59785 + p 0 pos + p 1 radius + p 2 level + m ()V + m ()V +c net/minecraft/gametest/framework/StructureUtils$1 tn$1 net/minecraft/class_4525$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_33175 + m ()V +c net/minecraft/gametest/framework/TestClassNameArgument to net/minecraft/class_4526 + f Ljava/util/Collection; EXAMPLES a field_20580 + m ()Lnet/minecraft/gametest/framework/TestClassNameArgument; testClassName a method_22370 + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; parse a method_22261 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; getTestClassName a method_22262 + p 0 context + p 1 argument + m ()V + m ()V +c net/minecraft/gametest/framework/TestCommand tp net/minecraft/class_4527 + f I STRUCTURE_BLOCK_NEARBY_SEARCH_RADIUS a field_33180 + f I STRUCTURE_BLOCK_FULL_SEARCH_RADIUS b field_33181 + f Lorg/slf4j/Logger; LOGGER c field_45665 + f I DEFAULT_CLEAR_RADIUS d field_33178 + f I MAX_CLEAR_RADIUS e field_33179 + f I TEST_POS_Z_OFFSET_FROM_PLAYER f field_33182 + f I SHOW_POS_DURATION_MS g field_33183 + f I DEFAULT_X_SIZE h field_33184 + f I DEFAULT_Y_SIZE i field_33185 + f I DEFAULT_Z_SIZE j field_33186 + f Ljava/lang/String; STRUCTURE_BLOCK_ENTITY_COULD_NOT_BE_FOUND k field_48504 + f Lnet/minecraft/gametest/framework/TestFinder$Builder; testFinder l field_48505 + m ()I stopTests a method_56254 + m (ILnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/TestFunction;)Lnet/minecraft/gametest/framework/GameTestInfo; method_56255 a method_56255 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Z verifyStructureExists a method_54904 + p 0 level + p 1 structure + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;Lnet/minecraft/ChatFormatting;)V say a method_22275 + p 0 serverLevel + p 1 message + p 2 formatting + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_57105 a method_57105 + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_22276 a method_22276 + m (Lnet/minecraft/world/entity/Entity;)V method_57106 a method_57106 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_22270 + p 0 dispatcher + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56256 a method_56256 + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptions a method_56257 + p 0 argumentBuilder + p 1 runnerGetter + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptions a method_56258 + p 0 argumentBuilder + p 1 runnerGetter + p 2 modifier + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22283 a method_22283 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/core/BlockPos; createTestPositionAround a method_54850 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/GameTestRunner;)I trackAndStartRunner a method_56259 + p 0 source + p 1 level + p 2 runner + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)I saveAndExportTestStructure a method_54905 + p 0 source + p 1 structureBlockEntity + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I showPos a method_22264 + p 0 source + p 1 variableName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;III)I createNewStructure a method_22268 + p 0 source + p 1 structureName + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_56260 a method_56260 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)Ljava/util/stream/Stream; toGameTestInfos a method_56261 + p 0 source + p 1 retryOptions + p 2 structureBlockPosFinder + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/RetryOptions;Lnet/minecraft/gametest/framework/TestFunctionFinder;I)Ljava/util/stream/Stream; toGameTestInfo a method_56262 + p 0 source + p 1 retryOptions + p 2 testFunctionFinder + p 3 rotationSteps + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/TestFunction;)Z method_56263 a method_56263 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52187 a method_52187 + m (Ljava/lang/String;Lnet/minecraft/ChatFormatting;Lnet/minecraft/server/level/ServerPlayer;)V method_22263 a method_22263 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52188 a method_52188 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_56265 a method_56265 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56266 a method_56266 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/RetryOptions;)Ljava/util/Optional; createGameTestInfo a method_56264 + p 0 pos + p 1 level + p 2 retryOptions + m (Lnet/minecraft/gametest/framework/GameTestInfo;)I resetGameTestInfo a method_56267 + p 0 gameTestInfo + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; runWithRetryOptionsAndBuildInfo b method_56268 + p 0 argumentBuilder + p 1 runnerGetter + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22286 b method_22286 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I exportTestStructure b method_22282 + p 0 source + p 1 structurePath + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56269 b method_56269 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V method_56270 b method_56270 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22287 c method_22287 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)V say c method_22278 + p 0 source + p 1 message + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56271 c method_56271 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23648 d method_23648 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I importTestStructure d method_22285 + p 0 source + p 1 structurePath + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56272 d method_56272 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22288 e method_22288 + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)I method_56273 e method_56273 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56274 f method_56274 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22289 g method_22289 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56275 h method_56275 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56276 i method_56276 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56277 j method_56277 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56278 k method_56278 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56279 l method_56279 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56280 m method_56280 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56281 n method_56281 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22290 o method_22290 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56282 p method_56282 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56283 q method_56283 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56284 r method_56284 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_59786 s method_59786 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_61102 t method_61102 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_61103 u method_61103 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57963 v method_57963 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57964 w method_57964 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56285 x method_56285 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56286 y method_56286 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/gametest/framework/TestCommand$Runner; method_56287 z method_56287 + m ()V + m ()V +c net/minecraft/gametest/framework/TestCommand$Runner tp$a net/minecraft/class_4527$class_9121 + f Lnet/minecraft/gametest/framework/TestFinder; finder a field_48506 + m ()I reset a method_56288 + m (I)I run a method_56289 + p 1 rotationSteps + m (II)I run a method_56290 + p 1 rotationSteps + p 2 testsPerRow + m (Lnet/minecraft/server/level/ServerLevel;)V method_56291 a method_56291 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I method_56292 a method_56292 + m (Lnet/minecraft/server/level/ServerLevel;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)I method_56293 a method_56293 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Integer;)V method_56294 a method_56294 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_59788 a method_59788 + m (Ljava/util/stream/Stream;Ljava/util/function/ToIntFunction;Ljava/lang/Runnable;Ljava/util/function/Consumer;)V logAndRun a method_56295 + p 1 structureBlockPos + p 2 testCounter + p 3 onFail + p 4 onSuccess + m (Lnet/minecraft/core/BlockPos;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/BlockPos;)V method_59787 a method_59787 + m (Lnet/minecraft/gametest/framework/RetryOptions;)I run a method_56296 + p 1 retryOptions + m (Lnet/minecraft/gametest/framework/RetryOptions;I)I run a method_56297 + p 1 retryOptions + p 2 rotationSteps + m (Lnet/minecraft/gametest/framework/RetryOptions;II)I run a method_56298 + p 1 retryOptions + p 2 rotationSteps + p 3 testsPerRow + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_59789 a method_59789 + m ()I clear b method_56299 + m (Lnet/minecraft/server/level/ServerLevel;)V method_56300 b method_56300 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Integer;)V method_56301 b method_56301 + m ()I export c method_56302 + m ()I run d method_56303 + m ()I locate e method_59790 + m ()I verify f method_61104 + m (Lnet/minecraft/gametest/framework/TestFinder;)V + p 1 finder +c net/minecraft/gametest/framework/TestCommand$TestBatchSummaryDisplayer tp$b net/minecraft/class_4527$class_9122 + f Lnet/minecraft/commands/CommandSourceStack; source a comp_2215 + m ()Lnet/minecraft/commands/CommandSourceStack; source a comp_2215 + m (Lnet/minecraft/commands/CommandSourceStack;)V +c net/minecraft/gametest/framework/TestCommand$TestSummaryDisplayer tp$c net/minecraft/class_4527$class_4528 + f Lnet/minecraft/server/level/ServerLevel; level a comp_2216 + f Lnet/minecraft/gametest/framework/MultipleTestTracker; tracker b comp_2217 + m ()Lnet/minecraft/server/level/ServerLevel; level a comp_2216 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/MultipleTestTracker;)V showTestSummaryIfAllDone a method_56304 + p 0 level + p 1 tracker + m ()Lnet/minecraft/gametest/framework/MultipleTestTracker; tracker b comp_2217 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/gametest/framework/MultipleTestTracker;)V + p 1 level + p 2 tracker +c net/minecraft/gametest/framework/TestFinder tq net/minecraft/class_9123 + f Lnet/minecraft/gametest/framework/TestFunctionFinder; NO_FUNCTIONS a field_48507 + f Lnet/minecraft/gametest/framework/StructureBlockPosFinder; NO_STRUCTURES b field_48508 + f Lnet/minecraft/gametest/framework/TestFunctionFinder; testFunctionFinder c field_48509 + f Lnet/minecraft/gametest/framework/StructureBlockPosFinder; structureBlockPosFinder d field_48510 + f Lnet/minecraft/commands/CommandSourceStack; source e field_48511 + f Ljava/util/function/Function; contextProvider f field_48512 + m ()Lnet/minecraft/commands/CommandSourceStack; source a method_56305 + m ()Ljava/lang/Object; get b method_56306 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Function;Lnet/minecraft/gametest/framework/TestFunctionFinder;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)V + p 1 source + p 2 contextProvider + p 3 testFunctionFinder + p 4 structureBlockPosFinder + m ()V +c net/minecraft/gametest/framework/TestFinder$Builder tq$a net/minecraft/class_9123$class_9124 + f Ljava/util/function/Function; contextProvider a field_48513 + f Ljava/util/function/UnaryOperator; testFunctionFinderWrapper b field_49663 + f Ljava/util/function/UnaryOperator; structureBlockPosFinderWrapper c field_49664 + m ()Ljava/util/stream/Stream; method_56307 a method_56307 + m (I)Lnet/minecraft/gametest/framework/TestFinder$Builder; createMultipleCopies a method_57965 + p 1 count + m (ILjava/util/function/Supplier;)Ljava/util/function/Supplier; method_57966 a method_57966 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; nearest a method_56309 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;I)Ljava/lang/Object; radius a method_56310 + p 1 context + p 2 radius + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; allTestsInClass a method_56311 + p 1 context + p 2 className + m (Lcom/mojang/brigadier/context/CommandContext;Z)Ljava/lang/Object; failedTests a method_56312 + p 1 context + p 2 onlyRequired + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56313 a method_56313 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/gametest/framework/TestFunctionFinder;Lnet/minecraft/gametest/framework/StructureBlockPosFinder;)Ljava/lang/Object; build a method_57967 + p 1 source + p 2 testFunctionFinder + p 3 structureBlockPosFinder + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_56315 a method_56315 + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_57968 a method_57968 + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56308 a method_56308 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56314 a method_56314 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)Ljava/util/stream/Stream; method_59791 a method_59791 + m (Lnet/minecraft/gametest/framework/TestFunction;)Z method_57969 a method_57969 + m (Z)Ljava/util/stream/Stream; method_56316 a method_56316 + m (ZLnet/minecraft/gametest/framework/TestFunction;)Z method_56317 a method_56317 + m (I)Ljava/util/function/UnaryOperator; createCopies b method_57970 + p 0 count + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; allNearby b method_56318 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; byArgument b method_56319 + p 1 context + p 2 argumentName + m (Ljava/util/function/Supplier;)Ljava/util/function/Supplier; method_57971 b method_57971 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; method_56320 b method_56320 + m (Lnet/minecraft/gametest/framework/TestFunction;)Z method_57972 b method_57972 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; lookedAt c method_56321 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/Object; locateByName c method_59792 + p 1 context + p 2 name + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; allTests d method_56323 + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/util/stream/Stream; method_56322 d method_56322 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/lang/Object; failedTests e method_56324 + p 1 context + m (Ljava/util/function/Function;)V + p 1 contextProvider + m (Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/util/function/UnaryOperator;)V + p 1 contextProvider + p 2 testFunctionFinderWrapper + p 3 structureBlockPosFinderWrapper +c net/minecraft/gametest/framework/TestFunction tr net/minecraft/class_4529 + f Ljava/lang/String; batchName a comp_2218 + f Ljava/lang/String; testName b comp_2219 + f Ljava/lang/String; structureName c comp_2220 + f Lnet/minecraft/world/level/block/Rotation; rotation d comp_2221 + f I maxTicks e comp_2222 + f J setupTicks f comp_2223 + f Z required g comp_2224 + f Z manualOnly h comp_2445 + f I maxAttempts i comp_2225 + f I requiredSuccesses j comp_2226 + f Z skyAccess k comp_2362 + f Ljava/util/function/Consumer; function l comp_2227 + m ()Z isFlaky a method_32257 + m (Lnet/minecraft/gametest/framework/GameTestHelper;)V run a method_22297 + p 1 gameTestHelper + m ()Ljava/lang/String; batchName b comp_2218 + m ()Ljava/lang/String; testName c comp_2219 + m ()Ljava/lang/String; structureName d comp_2220 + m ()Lnet/minecraft/world/level/block/Rotation; rotation e comp_2221 + m ()I maxTicks f comp_2222 + m ()J setupTicks g comp_2223 + m ()Z required h comp_2224 + m ()Z manualOnly i comp_2445 + m ()I maxAttempts j comp_2225 + m ()I requiredSuccesses k comp_2226 + m ()Z skyAccess l comp_2362 + m ()Ljava/util/function/Consumer; function m comp_2227 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;IJZLjava/util/function/Consumer;)V + p 1 batchName + p 2 testName + p 3 structureName + p 4 maxTicks + p 5 setupTicks + p 7 required + p 8 function + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;IJZLjava/util/function/Consumer;)V + p 1 batchName + p 2 testName + p 3 structureName + p 4 rotation + p 5 maxTicks + p 6 setupTicks + p 8 required + p 9 function + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;IJZZIIZLjava/util/function/Consumer;)V +c net/minecraft/gametest/framework/TestFunctionArgument ts net/minecraft/class_4530 + f Ljava/util/Collection; EXAMPLES a field_20589 + m ()Lnet/minecraft/gametest/framework/TestFunctionArgument; testFunctionArgument a method_22371 + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/gametest/framework/TestFunction; parse a method_22302 + p 1 reader + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTestFunction a method_56325 + p 0 context + p 1 builder + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Lnet/minecraft/gametest/framework/TestFunction; getTestFunction a method_22303 + p 0 context + p 1 argument + m ()V + m ()V +c net/minecraft/gametest/framework/TestFunctionFinder tt net/minecraft/class_9125 +c net/minecraft/gametest/framework/TestReporter tu net/minecraft/class_4531 + m ()V finish a method_36109 + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestFailed a method_22304 + p 1 testInfo + m (Lnet/minecraft/gametest/framework/GameTestInfo;)V onTestSuccess b method_33322 + p 1 testInfo +c net/minecraft/gametest/framework/package-info tv net/minecraft/class_6309 +c net/minecraft/locale/Language tw net/minecraft/class_2477 + f Ljava/lang/String; DEFAULT a field_33187 + f Lorg/slf4j/Logger; LOGGER b field_11490 + f Lcom/google/gson/Gson; GSON c field_25307 + f Ljava/util/regex/Pattern; UNSUPPORTED_FORMAT_PATTERN d field_11489 + c Pattern that matches numeric variable placeholders in a resource string, such as "%d", "%3$d", "%.2f" + f Lnet/minecraft/locale/Language; instance e field_11486 + m ()Lnet/minecraft/locale/Language; getInstance a method_10517 + c Return the StringTranslate singleton instance + m (Ljava/io/InputStream;Ljava/util/function/BiConsumer;)V loadFromJson a method_29425 + p 0 stream + p 1 output + m (Ljava/lang/String;)Ljava/lang/String; getOrDefault a method_48307 + p 1 id + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getOrDefault a method_4679 + p 1 key + p 2 defaultValue + m (Ljava/util/List;)Ljava/util/List; getVisualOrder a method_30933 + p 1 text + m (Ljava/util/function/BiConsumer;Ljava/lang/String;)V parseTranslations a method_51465 + p 0 output + p 1 languagePath + m (Lnet/minecraft/locale/Language;)V inject a method_29427 + p 0 instance + m (Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/util/FormattedCharSequence; getVisualOrder a method_30934 + p 1 text + m ()Z isDefaultRightToLeft b method_29428 + m (Ljava/lang/String;)Z has b method_4678 + p 1 id + m ()Lnet/minecraft/locale/Language; loadDefault c method_29429 + m ()V + m ()V +c net/minecraft/locale/Language$1 tw$1 net/minecraft/class_2477$1 + f Ljava/util/Map; val$storage b field_25308 + m (Lnet/minecraft/util/FormattedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_30935 a method_30935 + m (Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/util/FormattedCharSink;)Z method_30936 a method_30936 + m (Ljava/util/Map;)V +c net/minecraft/locale/package-info tx net/minecraft/class_6310 +c net/minecraft/nbt/ByteArrayTag ty net/minecraft/class_2479 + f Lnet/minecraft/nbt/TagType; TYPE a field_21024 + f I SELF_SIZE_IN_BYTES b field_41716 + f [B data c field_11493 + m (I)Lnet/minecraft/nbt/ByteTag; get a method_10523 + p 1 index + m (ILnet/minecraft/nbt/ByteTag;)Lnet/minecraft/nbt/ByteTag; set a method_17803 + p 1 index + p 2 tag + m (Ljava/util/List;)[B toArray a method_10522 + p 0 dataList + m (I)Lnet/minecraft/nbt/ByteTag; remove b method_17804 + p 1 index + m (ILnet/minecraft/nbt/ByteTag;)V add b method_17805 + p 1 index + p 2 tag + m ()[B getAsByteArray e method_10521 + m ([B)V + p 1 data + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/ByteArrayTag$1 ty$1 net/minecraft/class_2479$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ByteArrayTag; load a method_23232 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[B readAccounted d method_53886 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ByteTag tz net/minecraft/class_2481 + f Lnet/minecraft/nbt/TagType; TYPE a field_21025 + f Lnet/minecraft/nbt/ByteTag; ZERO b field_21026 + f Lnet/minecraft/nbt/ByteTag; ONE c field_21027 + f I SELF_SIZE_IN_BYTES w field_41717 + f B data x field_11498 + m (B)Lnet/minecraft/nbt/ByteTag; valueOf a method_23233 + p 0 data + m (Z)Lnet/minecraft/nbt/ByteTag; valueOf a method_23234 + p 0 data + m ()Lnet/minecraft/nbt/ByteTag; copy e method_10530 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (B)V + p 1 data + m ()V +c net/minecraft/nbt/ByteTag$1 tz$1 net/minecraft/class_2481$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ByteTag; load a method_23235 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)B readAccounted d method_53887 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ByteTag$Cache tz$a net/minecraft/class_2481$class_4610 + f [Lnet/minecraft/nbt/ByteTag; cache a field_21028 + m ()V + m ()V +c net/minecraft/nbt/CollectionTag ua net/minecraft/class_2483 + m (ILnet/minecraft/nbt/Tag;)Z setTag a method_10535 + p 1 index + p 2 tag + m (ILnet/minecraft/nbt/Tag;)Z addTag b method_10533 + p 1 index + p 2 tag + m (I)Lnet/minecraft/nbt/Tag; remove c method_10536 + p 1 index + m (ILnet/minecraft/nbt/Tag;)V add c method_10531 + p 1 index + p 2 tag + m (ILnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; set d method_10606 + p 1 index + p 2 tag + m ()B getElementType f method_10601 + m ()V +c net/minecraft/nbt/CompoundTag ub net/minecraft/class_2487 + f Lcom/mojang/serialization/Codec; CODEC a field_25128 + f Lnet/minecraft/nbt/TagType; TYPE b field_21029 + f I SELF_SIZE_IN_BYTES c field_41718 + f I MAP_ENTRY_SIZE_IN_BYTES w field_41719 + f Ljava/util/Map; tags x field_11515 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_29141 a method_29141 + m (Ljava/lang/String;)Ljava/util/UUID; getUUID a method_25926 + p 1 key + m (Ljava/lang/String;B)V putByte a method_10567 + p 1 key + p 2 value + m (Ljava/lang/String;D)V putDouble a method_10549 + p 1 key + p 2 value + m (Ljava/lang/String;F)V putFloat a method_10548 + p 1 key + p 2 value + m (Ljava/lang/String;I)V putInt a method_10569 + p 1 key + p 2 value + m (Ljava/lang/String;J)V putLong a method_10544 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)V putString a method_10582 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/util/List;)V putByteArray a method_36110 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/util/UUID;)V putUUID a method_25927 + p 1 key + p 2 value + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; put a method_10566 + p 1 key + p 2 value + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeNamedTag a method_10555 + p 0 name + p 1 tag + p 2 output + m (Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/ClassCastException;)Lnet/minecraft/CrashReport; createReport a method_10559 + p 1 tagName + p 2 type + p 3 exception + m (Ljava/lang/String;S)V putShort a method_10575 + p 1 key + p 2 value + m (Ljava/lang/String;Z)V putBoolean a method_10556 + p 1 key + p 2 value + m (Ljava/lang/String;[B)V putByteArray a method_10570 + p 1 key + p 2 value + m (Ljava/lang/String;[I)V putIntArray a method_10539 + p 1 key + p 2 value + m (Ljava/lang/String;[J)V putLongArray a method_10564 + p 1 key + p 2 value + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; merge a method_10543 + c Copies all the tags of {@code other} into this tag, then returns itself.\n@see #copy() + p 1 other + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49665 a method_49665 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNamedTagData a method_10581 + p 0 type + p 1 name + p 2 input + p 3 accounter + m (Ljava/lang/String;)Z hasUUID b method_25928 + p 1 key + m (Ljava/lang/String;I)Z contains b method_10573 + c Returns whether the tag of the specified {@code key} is a particular {@code tagType}. If the {@code tagType} is {@code 99}, all numeric tags will be checked against the type of the stored tag. + p 1 key + p 2 tagType + m (Ljava/lang/String;Ljava/util/List;)V putIntArray b method_10572 + p 1 key + p 2 value + m (Lnet/minecraft/nbt/CompoundTag;)Lcom/mojang/serialization/Dynamic; method_29142 b method_29142 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; get c method_10580 + p 1 key + m (Ljava/lang/String;I)Lnet/minecraft/nbt/ListTag; getList c method_10554 + p 1 key + p 2 tagType + m (Ljava/lang/String;Ljava/util/List;)V putLongArray c method_10538 + p 1 key + p 2 value + m (Ljava/lang/String;)B getTagType d method_10540 + c Gets the byte identifier of the tag of the specified {@code key}, or {@code 0} if no tag exists for the {@code key}. + p 1 key + m ()Ljava/util/Set; getAllKeys e method_10541 + m (Ljava/lang/String;)Z contains e method_10545 + p 1 key + m ()I size f method_10546 + m (Ljava/lang/String;)B getByte f method_10571 + p 1 key + m ()Z isEmpty g method_33133 + m (Ljava/lang/String;)S getShort g method_10568 + p 1 key + m ()Lnet/minecraft/nbt/CompoundTag; shallowCopy h method_59873 + m (Ljava/lang/String;)I getInt h method_10550 + p 1 key + m ()Lnet/minecraft/nbt/CompoundTag; copy i method_10553 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (Ljava/lang/String;)J getLong i method_10537 + p 1 key + m ()Ljava/util/Set; entrySet j method_59874 + m (Ljava/lang/String;)F getFloat j method_10583 + p 1 key + m (Ljava/lang/String;)D getDouble k method_10574 + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; getString l method_10558 + p 1 key + m (Ljava/lang/String;)[B getByteArray m method_10547 + p 1 key + m (Ljava/lang/String;)[I getIntArray n method_10561 + p 1 key + m (Ljava/lang/String;)[J getLongArray o method_10565 + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; getCompound p method_10562 + p 1 key + m (Ljava/lang/String;)Z getBoolean q method_10577 + p 1 key + m (Ljava/lang/String;)V remove r method_10551 + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; method_10579 s method_10579 + m (Ljava/util/Map;)V + p 1 tags + m ()V + m ()V +c net/minecraft/nbt/CompoundTag$1 ub$1 net/minecraft/class_2487$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; load a method_23240 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parseCompound c method_53888 + p 0 input + p 1 visitor + p 2 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; loadCompound d method_53889 + p 0 input + p 1 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/String; readString e method_53907 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/CompoundTag$2 ub$2 net/minecraft/class_2487$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$EntryResult a field_36243 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult b field_36244 + m ()V +c net/minecraft/nbt/DoubleTag uc net/minecraft/class_2489 + f Lnet/minecraft/nbt/DoubleTag; ZERO a field_21030 + f Lnet/minecraft/nbt/TagType; TYPE b field_21031 + f I SELF_SIZE_IN_BYTES c field_41720 + f D data w field_11520 + m (D)Lnet/minecraft/nbt/DoubleTag; valueOf a method_23241 + p 0 data + m ()Lnet/minecraft/nbt/DoubleTag; copy e method_10585 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (D)V + p 1 data + m ()V +c net/minecraft/nbt/DoubleTag$1 uc$1 net/minecraft/class_2489$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/DoubleTag; load a method_23242 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)D readAccounted d method_53890 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/EndTag ud net/minecraft/class_2491 + f Lnet/minecraft/nbt/TagType; TYPE a field_21032 + f Lnet/minecraft/nbt/EndTag; INSTANCE b field_21033 + f I SELF_SIZE_IN_BYTES c field_41721 + m ()Lnet/minecraft/nbt/EndTag; copy e method_10586 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()V + m ()V +c net/minecraft/nbt/EndTag$1 ud$1 net/minecraft/class_2491$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/EndTag; load a method_23243 + m ()V +c net/minecraft/nbt/FloatTag ue net/minecraft/class_2494 + f Lnet/minecraft/nbt/FloatTag; ZERO a field_21034 + f Lnet/minecraft/nbt/TagType; TYPE b field_21035 + f I SELF_SIZE_IN_BYTES c field_41722 + f F data w field_11523 + m (F)Lnet/minecraft/nbt/FloatTag; valueOf a method_23244 + p 0 data + m ()Lnet/minecraft/nbt/FloatTag; copy e method_10587 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (F)V + p 1 data + m ()V +c net/minecraft/nbt/FloatTag$1 ue$1 net/minecraft/class_2494$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/FloatTag; load a method_23245 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)F readAccounted d method_53891 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntArrayTag uf net/minecraft/class_2495 + f Lnet/minecraft/nbt/TagType; TYPE a field_21036 + f I SELF_SIZE_IN_BYTES b field_41723 + f [I data c field_11524 + m (I)Lnet/minecraft/nbt/IntTag; get a method_10589 + p 1 index + m (ILnet/minecraft/nbt/IntTag;)Lnet/minecraft/nbt/IntTag; set a method_17806 + p 1 index + p 2 tag + m (Ljava/util/List;)[I toArray a method_10590 + p 0 dataList + m (I)Lnet/minecraft/nbt/IntTag; remove b method_17807 + p 1 index + m (ILnet/minecraft/nbt/IntTag;)V add b method_17808 + p 1 index + p 2 tag + m ()Lnet/minecraft/nbt/IntArrayTag; copy e method_10591 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()[I getAsIntArray g method_10588 + m ([I)V + p 1 data + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/IntArrayTag$1 uf$1 net/minecraft/class_2495$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/IntArrayTag; load a method_23246 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[I readAccounted d method_53892 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntTag ug net/minecraft/class_2497 + f Lnet/minecraft/nbt/TagType; TYPE a field_21037 + f I SELF_SIZE_IN_BYTES b field_41724 + f I data c field_11525 + m (I)Lnet/minecraft/nbt/IntTag; valueOf a method_23247 + p 0 data + m ()Lnet/minecraft/nbt/IntTag; copy e method_10592 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (I)V + p 1 data + m ()V +c net/minecraft/nbt/IntTag$1 ug$1 net/minecraft/class_2497$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/IntTag; load a method_23248 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)I readAccounted d method_53893 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/IntTag$Cache ug$a net/minecraft/class_2497$class_4611 + f [Lnet/minecraft/nbt/IntTag; cache a field_21038 + f I HIGH b field_33197 + f I LOW c field_33198 + m ()V + m ()V +c net/minecraft/nbt/ListTag uh net/minecraft/class_2499 + f Lnet/minecraft/nbt/TagType; TYPE a field_21039 + f I SELF_SIZE_IN_BYTES b field_41725 + f Ljava/util/List; list c field_11550 + f B type w field_11551 + m (I)Lnet/minecraft/nbt/CompoundTag; getCompound a method_10602 + p 1 index + m (Lnet/minecraft/nbt/Tag;)Z updateType a method_10605 + p 1 tag + m (I)Lnet/minecraft/nbt/ListTag; getList b method_10603 + p 1 index + m (I)S getShort d method_10609 + p 1 index + m ()Lnet/minecraft/nbt/ListTag; copy e method_10612 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (I)I getInt e method_10600 + p 1 index + m (I)[I getIntArray f method_36111 + p 1 index + m ()V updateTypeAfterRemove g method_17809 + m (I)[J getLongArray g method_36112 + p 1 index + m (I)D getDouble h method_10611 + p 1 index + m (I)F getFloat i method_10604 + p 1 index + m (I)Ljava/lang/String; getString j method_10608 + p 1 index + m (I)Lnet/minecraft/nbt/Tag; get k method_10534 + p 1 index + m (Ljava/util/List;B)V + p 1 list + p 2 type + m ()V + m ()V +c net/minecraft/nbt/ListTag$1 uh$1 net/minecraft/class_2499$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ListTag; load a method_23249 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parseList c method_53894 + p 0 input + p 1 visitor + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ListTag; loadList d method_53895 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ListTag$2 uh$2 net/minecraft/class_2499$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36245 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$EntryResult b field_36246 + m ()V +c net/minecraft/nbt/LongArrayTag ui net/minecraft/class_2501 + f Lnet/minecraft/nbt/TagType; TYPE a field_21040 + f I SELF_SIZE_IN_BYTES b field_41726 + f [J data c field_11552 + m (I)Lnet/minecraft/nbt/LongTag; get a method_10616 + p 1 index + m (ILnet/minecraft/nbt/LongTag;)Lnet/minecraft/nbt/LongTag; set a method_17810 + p 1 index + p 2 tag + m (Ljava/util/List;)[J toArray a method_10617 + p 0 dataList + m (I)Lnet/minecraft/nbt/LongTag; remove b method_17811 + p 1 index + m (ILnet/minecraft/nbt/LongTag;)V add b method_17812 + p 1 index + p 2 tag + m ()Lnet/minecraft/nbt/LongArrayTag; copy e method_10618 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()[J getAsLongArray g method_10615 + m ([J)V + p 1 data + m (Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 dataSet + m (Ljava/util/List;)V + p 1 dataList + m ()V +c net/minecraft/nbt/LongArrayTag$1 ui$1 net/minecraft/class_2501$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/LongArrayTag; load a method_23250 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)[J readAccounted d method_53896 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/LongTag uj net/minecraft/class_2503 + f Lnet/minecraft/nbt/TagType; TYPE a field_21041 + f I SELF_SIZE_IN_BYTES b field_41727 + f J data c field_11553 + m (J)Lnet/minecraft/nbt/LongTag; valueOf a method_23251 + p 0 data + m ()Lnet/minecraft/nbt/LongTag; copy e method_10621 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (J)V + p 1 data + m ()V +c net/minecraft/nbt/LongTag$1 uj$1 net/minecraft/class_2503$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/LongTag; load a method_23252 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)J readAccounted d method_53897 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/LongTag$Cache uj$a net/minecraft/class_2503$class_4612 + f [Lnet/minecraft/nbt/LongTag; cache a field_21042 + f I HIGH b field_33202 + f I LOW c field_33203 + m ()V + m ()V +c net/minecraft/nbt/NbtAccounter uk net/minecraft/class_2505 + f I MAX_STACK_DEPTH a field_46208 + f J quota b field_11557 + f J usage c field_11555 + f I maxDepth d field_46209 + f I depth e field_46210 + m ()Lnet/minecraft/nbt/NbtAccounter; unlimitedHeap a method_53898 + m (J)Lnet/minecraft/nbt/NbtAccounter; create a method_53899 + p 0 quota + m (JJ)V accountBytes a method_53908 + p 1 bytesPerItem + p 3 items + m ()V pushDepth b method_53900 + m (J)V accountBytes b method_48004 + c Adds the bytes to the current number of read bytes. If the number of bytes is greater than the stored quota, an exception will occur.\n@throws RuntimeException if the number of {@code usage} bytes exceed the number of {@code quota} bytes + p 1 bytes + m ()V popDepth c method_53901 + m ()J getUsage d method_47987 + m ()I getDepth e method_53902 + m (JI)V + p 1 quota + p 3 maxDepth +c net/minecraft/nbt/NbtAccounterException ul net/minecraft/class_8801 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/nbt/NbtException um net/minecraft/class_8909 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/nbt/NbtFormatException un net/minecraft/class_8910 + m (Ljava/lang/String;)V +c net/minecraft/nbt/NbtIo uo net/minecraft/class_2507 + f [Ljava/nio/file/OpenOption; SYNC_OUTPUT_OPTIONS a field_47513 + m (Ljava/io/DataInput;)Lnet/minecraft/nbt/CompoundTag; read a method_10627 + c Reads a compound tag from a file. The size of the file can be infinite. + p 0 input + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; read a method_10625 + c Reads a compound tag from a file. The size of the file is limited by the {@code accounter}.\n@throws RuntimeException if the size of the file is larger than the maximum amount of bytes specified by the {@code accounter} + p 0 input + p 1 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;B)Lnet/minecraft/nbt/Tag; readTagSafe a method_52892 + p 0 input + p 1 accounter + p 2 type + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parse a method_39855 + p 0 input + p 1 visitor + p 2 accounter + m (Ljava/io/InputStream;)Ljava/io/DataInputStream; createDecompressorStream a method_40059 + p 0 zippedStream + m (Ljava/io/InputStream;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; readCompressed a method_10629 + p 0 zippedStream + p 1 accounter + m (Ljava/io/InputStream;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseCompressed a method_40058 + p 0 zippedStream + p 1 visitor + p 2 accounter + m (Ljava/io/OutputStream;)Ljava/io/DataOutputStream; createCompressorStream a method_54906 + p 0 outputSteam + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/CompoundTag; read a method_10633 + p 0 path + m (Ljava/nio/file/Path;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/CompoundTag; readCompressed a method_30613 + p 0 path + p 1 accounter + m (Ljava/nio/file/Path;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseCompressed a method_40057 + p 0 path + p 1 visitor + p 2 accounter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/io/DataOutput;)V write a method_10628 + p 0 compoundTag + p 1 output + m (Lnet/minecraft/nbt/CompoundTag;Ljava/io/OutputStream;)V writeCompressed a method_10634 + c Writes and compresses a compound tag to a GNU zipped file.\n@see #writeCompressed(CompoundTag, File) + p 0 compoundTag + p 1 outputStream + m (Lnet/minecraft/nbt/CompoundTag;Ljava/nio/file/Path;)V writeCompressed a method_30614 + p 0 compoundTag + p 1 path + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeAnyTag a method_52893 + p 0 tag + p 1 output + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readAnyTag b method_52894 + p 0 input + p 1 accounter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/nio/file/Path;)V write b method_10630 + p 0 compoundTag + p 1 path + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeUnnamedTag b method_10631 + p 0 tag + p 1 output + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readUnnamedTag c method_10626 + p 0 input + p 1 accounter + m (Lnet/minecraft/nbt/Tag;Ljava/io/DataOutput;)V writeUnnamedTagWithFallback c method_55324 + p 0 tag + p 1 output + m ()V + m ()V +c net/minecraft/nbt/NbtIo$1 uo$1 net/minecraft/class_2507$1 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36247 + m ()V +c net/minecraft/nbt/NbtIo$StringFallbackDataOutput uo$a net/minecraft/class_2507$class_9003 + m (Ljava/io/DataOutput;)V +c net/minecraft/nbt/NbtOps up net/minecraft/class_2509 + f Lnet/minecraft/nbt/NbtOps; INSTANCE a field_11560 + f Ljava/lang/String; WRAPPER_MARKER b field_40667 + m ()Lnet/minecraft/nbt/Tag; empty a method_10668 + m (B)Lnet/minecraft/nbt/Tag; createByte a method_10640 + p 1 data + m (D)Lnet/minecraft/nbt/Tag; createDouble a method_10652 + p 1 data + m (F)Lnet/minecraft/nbt/Tag; createFloat a method_10662 + p 1 data + m (I)Lnet/minecraft/nbt/Tag; createInt a method_10661 + p 1 data + m (J)Lnet/minecraft/nbt/Tag; createLong a method_10654 + p 1 data + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; convertTo a method_29146 + p 1 ops + p 2 tag + m (Ljava/lang/Number;)Lnet/minecraft/nbt/Tag; createNumeric a method_10660 + p 1 data + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; createString a method_10639 + p 1 data + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/nbt/Tag; createByteList a method_10657 + p 1 data + m (Ljava/util/List;)Ljava/lang/String; method_59875 a method_59875 + m (Ljava/util/List;Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/datafixers/util/Pair;)V method_29147 a method_29147 + m (Ljava/util/List;Lnet/minecraft/nbt/NbtOps$ListCollector;)Lcom/mojang/serialization/DataResult; method_46230 a method_46230 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_10638 a method_10638 + m (Ljava/util/stream/IntStream;)Lnet/minecraft/nbt/Tag; createIntList a method_10663 + p 1 data + m (Ljava/util/stream/LongStream;)Lnet/minecraft/nbt/Tag; createLongList a method_10643 + p 1 data + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/Tag; createMap a method_10655 + p 1 data + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/Tag; tryUnwrap a method_46232 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lcom/mojang/datafixers/util/Pair;)V method_29152 a method_29152 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/BiConsumer;)V method_29153 a method_29153 + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Consumer;)V method_59876 a method_59876 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getNumberValue a method_10645 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap a method_29154 + p 1 map + p 2 otherMap + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lnet/minecraft/nbt/Tag; remove a method_10648 + p 1 map + p 2 removeKey + m (Lnet/minecraft/nbt/Tag;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList a method_29155 + p 1 list + p 2 tags + m (Lnet/minecraft/nbt/Tag;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59877 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/NbtOps$ListCollector;)Lcom/mojang/serialization/DataResult; method_46234 a method_46234 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; mergeToList a method_29156 + p 1 list + p 2 tag + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; mergeToMap a method_29157 + p 1 map + p 2 key + p 3 value + m (S)Lnet/minecraft/nbt/Tag; createShort a method_10635 + p 1 data + m (Z)Lnet/minecraft/nbt/Tag; createBoolean a method_23253 + p 1 data + m ()Ljava/lang/String; method_49667 b method_49667 + m (Ljava/util/List;)Ljava/lang/String; method_49666 b method_49666 + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/Tag; createList b method_10665 + p 1 data + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getStringValue b method_10656 + p 1 tag + m ()Ljava/lang/String; method_49668 c method_49668 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMapValues c method_10669 + p 1 map + m ()Ljava/lang/String; method_49669 d method_49669 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMapEntries d method_29162 + p 1 map + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getMap e method_29163 + p 1 map + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getStream f method_10664 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getList g method_29164 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getByteBuffer h method_10646 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getIntStream i method_10651 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; getLongStream j method_10637 + p 1 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/util/Optional; createCollector k method_46235 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49670 l method_49670 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_10667 m method_10667 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; method_46236 n method_46236 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49671 o method_49671 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49672 p method_49672 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49673 q method_49673 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_59878 r method_59878 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49674 s method_49674 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49675 t method_49675 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49676 u method_49676 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; method_46237 v method_46237 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49677 w method_49677 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; method_46238 x method_46238 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49678 y method_49678 + m ()V + m ()V +c net/minecraft/nbt/NbtOps$1 up$1 net/minecraft/class_2509$1 + f Lnet/minecraft/nbt/CompoundTag; val$tag a field_25129 + f Lnet/minecraft/nbt/NbtOps; field_25130 b field_25130 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; get a method_29165 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_29166 a method_29166 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; get a method_29167 + m (Lnet/minecraft/nbt/NbtOps;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/nbt/NbtOps$ByteListCollector up$a net/minecraft/class_2509$class_7808 + f Lit/unimi/dsi/fastutil/bytes/ByteArrayList; values a field_40668 + m (B)V + p 1 value + m ([B)V + p 1 values +c net/minecraft/nbt/NbtOps$HeterogenousListCollector up$b net/minecraft/class_2509$class_7809 + f Lnet/minecraft/nbt/ListTag; result a field_40669 + m (B)V method_46241 a method_46241 + m (I)V method_46242 a method_46242 + m (J)V method_46243 a method_46243 + m (Lnet/minecraft/nbt/CompoundTag;)Z isWrapper a method_46244 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; wrapIfNeeded b method_46245 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/CompoundTag; wrapElement c method_46246 + p 0 tag + m ()V + m (Ljava/util/Collection;)V + p 1 tags + m (Lit/unimi/dsi/fastutil/ints/IntArrayList;)V + p 1 data + m (Lit/unimi/dsi/fastutil/bytes/ByteArrayList;)V + p 1 data + m (Lit/unimi/dsi/fastutil/longs/LongArrayList;)V + p 1 data +c net/minecraft/nbt/NbtOps$HomogenousListCollector up$c net/minecraft/class_2509$class_7810 + f Lnet/minecraft/nbt/ListTag; result a field_40670 + m (Lnet/minecraft/nbt/Tag;)V + p 1 value + m (Lnet/minecraft/nbt/ListTag;)V + p 1 values +c net/minecraft/nbt/NbtOps$InitialListCollector up$d net/minecraft/class_2509$class_7811 + f Lnet/minecraft/nbt/NbtOps$InitialListCollector; INSTANCE a field_40671 + m ()V + m ()V +c net/minecraft/nbt/NbtOps$IntListCollector up$e net/minecraft/class_2509$class_7812 + f Lit/unimi/dsi/fastutil/ints/IntArrayList; values a field_40672 + m (I)V + p 1 value + m ([I)V + p 1 values +c net/minecraft/nbt/NbtOps$ListCollector up$f net/minecraft/class_2509$class_7813 + m ()Lnet/minecraft/nbt/Tag; result a method_46239 + m (Ljava/lang/Iterable;)Lnet/minecraft/nbt/NbtOps$ListCollector; acceptAll a method_46247 + p 1 tags + m (Ljava/util/stream/Stream;)Lnet/minecraft/nbt/NbtOps$ListCollector; acceptAll a method_46248 + p 1 tags + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/NbtOps$ListCollector; accept a method_46240 + p 1 tag +c net/minecraft/nbt/NbtOps$LongListCollector up$g net/minecraft/class_2509$class_7814 + f Lit/unimi/dsi/fastutil/longs/LongArrayList; values a field_40673 + m (J)V + p 1 value + m ([J)V + p 1 values +c net/minecraft/nbt/NbtOps$NbtRecordBuilder up$h net/minecraft/class_2509$class_5320 + m ()Lnet/minecraft/nbt/CompoundTag; initBuilder a method_29168 + m (Ljava/lang/String;Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; append a method_29169 + p 1 key + p 2 value + p 3 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/DataResult; build a method_29170 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; method_49679 a method_49679 + m (Lnet/minecraft/nbt/NbtOps;)V +c net/minecraft/nbt/NbtUtils uq net/minecraft/class_2512 + f Ljava/lang/String; SNBT_DATA_TAG a field_33224 + f Ljava/util/Comparator; YXZ_LISTTAG_INT_COMPARATOR b field_27816 + f Ljava/util/Comparator; YXZ_LISTTAG_DOUBLE_COMPARATOR c field_27817 + f C PROPERTIES_START d field_33225 + f C PROPERTIES_END e field_33226 + f Ljava/lang/String; ELEMENT_SEPARATOR f field_33227 + f C KEY_VALUE_SEPARATOR g field_33228 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER h field_27818 + f Lcom/google/common/base/Splitter; COLON_SPLITTER i field_27819 + f Lorg/slf4j/Logger; LOGGER j field_11582 + f I INDENT k field_33229 + f I NOT_FOUND l field_33230 + m (ILjava/lang/StringBuilder;)Ljava/lang/StringBuilder; indent a method_36114 + p 0 indentLevel + p 1 stringBuilder + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/nbt/CompoundTag; writeBlockState a method_10686 + p 0 state + m (Lnet/minecraft/world/level/block/state/StateHolder;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/state/StateHolder; setValueHelper a method_10682 + p 0 stateHolder + p 1 property + p 2 propertyName + p 3 propertiesTag + p 4 blockStateTag + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getName a method_10685 + p 0 property + p 1 value + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/nbt/CompoundTag; writeFluidState a method_36115 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; snbtToStructure a method_32260 + p 0 text + m (Ljava/lang/StringBuilder;Lnet/minecraft/nbt/Tag;IZ)Ljava/lang/StringBuilder; prettyPrint a method_36116 + p 0 stringBuilder + p 1 tag + p 2 indentLevel + p 3 prettyPrintArray + m (Ljava/util/Map;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32261 a method_32261 + m (Ljava/util/UUID;)Lnet/minecraft/nbt/IntArrayTag; createUUID a method_25929 + p 0 uuid + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/nbt/Tag; writeBlockPos a method_10692 + p 0 pos + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/state/BlockState; readBlockState a method_10681 + p 0 blockGetter + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/String; structureToSnbt a method_32271 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; addDataVersion a method_48308 + p 0 tag + p 1 dataVersion + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Ljava/util/Optional; readBlockPos a method_10691 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Ljava/lang/String;)V method_32263 a method_32263 + m (Lnet/minecraft/nbt/ListTag;)D method_32264 a method_32264 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/CompoundTag;)V method_32265 a method_32265 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;)V method_32266 a method_32266 + m (Lnet/minecraft/nbt/Tag;)Ljava/util/UUID; loadUUID a method_25930 + p 0 tag + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;Z)Z compareNbt a method_10687 + p 0 tag + p 1 other + p 2 compareListTag + m (Lnet/minecraft/nbt/Tag;Z)Ljava/lang/String; prettyPrint a method_36117 + p 0 tag + p 1 prettyPrintArray + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; unpackBlockState b method_32267 + p 0 blockStateText + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; packStructureTemplate b method_32273 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;I)I getDataVersion b method_48309 + p 0 tag + p 1 defaultValue + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Ljava/lang/String; method_32262 b method_32262 + m (Lnet/minecraft/nbt/ListTag;)D method_32268 b method_32268 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; prettyPrint b method_36118 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; unpackStructureTemplate c method_32275 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)D method_32269 c method_32269 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; toPrettyComponent c method_32270 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/String; packBlockState d method_32277 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)I method_32272 d method_32272 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; addCurrentDataVersion e method_48310 + p 0 tag + m (Lnet/minecraft/nbt/ListTag;)I method_32274 e method_32274 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32278 f method_32278 + m (Lnet/minecraft/nbt/ListTag;)I method_32276 f method_32276 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/ListTag; method_32279 g method_32279 + m ()V + m ()V +c net/minecraft/nbt/NumericTag ur net/minecraft/class_2514 + m ()J getAsLong f method_10699 + m ()I getAsInt g method_10701 + m ()S getAsShort h method_10696 + m ()B getAsByte i method_10698 + m ()D getAsDouble j method_10697 + m ()F getAsFloat k method_10700 + m ()Ljava/lang/Number; getAsNumber l method_10702 + m ()V +c net/minecraft/nbt/ReportedNbtException us net/minecraft/class_8911 + m (Lnet/minecraft/CrashReport;)V +c net/minecraft/nbt/ShortTag ut net/minecraft/class_2516 + f Lnet/minecraft/nbt/TagType; TYPE a field_21043 + f I SELF_SIZE_IN_BYTES b field_41728 + f S data c field_11588 + m (S)Lnet/minecraft/nbt/ShortTag; valueOf a method_23254 + p 0 data + m ()Lnet/minecraft/nbt/ShortTag; copy e method_10704 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (S)V + p 1 data + m ()V +c net/minecraft/nbt/ShortTag$1 ut$1 net/minecraft/class_2516$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/ShortTag; load a method_23255 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)S readAccounted d method_53903 + p 0 input + p 1 accounter + m ()V +c net/minecraft/nbt/ShortTag$Cache ut$a net/minecraft/class_2516$class_4613 + f [Lnet/minecraft/nbt/ShortTag; cache a field_21044 + f I HIGH b field_33232 + f I LOW c field_33233 + m ()V + m ()V +c net/minecraft/nbt/SnbtPrinterTagVisitor uu net/minecraft/class_5625 + f Ljava/util/Map; KEY_ORDER a field_27820 + f Ljava/util/Set; NO_INDENTATION b field_27821 + f Ljava/util/regex/Pattern; SIMPLE_VALUE c field_27822 + f Ljava/lang/String; NAME_VALUE_SEPARATOR d field_27823 + f Ljava/lang/String; ELEMENT_SEPARATOR e field_27824 + f Ljava/lang/String; LIST_OPEN f field_33234 + f Ljava/lang/String; LIST_CLOSE g field_33235 + f Ljava/lang/String; LIST_TYPE_SEPARATOR h field_33236 + f Ljava/lang/String; ELEMENT_SPACING i field_33237 + f Ljava/lang/String; STRUCT_OPEN j field_33238 + f Ljava/lang/String; STRUCT_CLOSE k field_33239 + f Ljava/lang/String; NEWLINE l field_33240 + f Ljava/lang/String; indentation m field_27825 + f I depth n field_27826 + f Ljava/util/List; path o field_27827 + f Ljava/lang/String; result p field_27828 + m ()Ljava/lang/String; pathString a method_32280 + m (Ljava/lang/String;)Ljava/lang/String; handleEscapePretty a method_32281 + p 0 text + m (Ljava/util/HashMap;)V method_32282 a method_32282 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; visit a method_32283 + p 1 tag + m ()V popPath b method_32284 + m (Ljava/lang/String;)V pushPath b method_32285 + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/List; getKeys b method_32286 + p 1 tag + m ()V + m (Ljava/lang/String;ILjava/util/List;)V + p 1 indentation + p 2 depth + p 3 path + m ()V +c net/minecraft/nbt/StreamTagVisitor uv net/minecraft/class_6836 + m ()Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitEnd a method_39856 + m (B)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39857 + p 1 entry + m (D)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39858 + p 1 entry + m (F)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39859 + p 1 entry + m (I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39860 + p 1 entry + m (J)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39861 + p 1 entry + m (Ljava/lang/String;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39862 + p 1 entry + m (Lnet/minecraft/nbt/TagType;)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitEntry a method_39863 + p 1 type + m (Lnet/minecraft/nbt/TagType;I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitList a method_39864 + p 1 type + p 2 size + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitEntry a method_39865 + p 1 type + p 2 id + m (S)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39866 + p 1 entry + m ([B)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39867 + p 1 entry + m ([I)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39868 + p 1 entry + m ([J)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visit a method_39869 + p 1 entry + m ()Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitContainerEnd b method_39870 + m (Lnet/minecraft/nbt/TagType;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; visitRootEntry b method_39871 + p 1 type + m (Lnet/minecraft/nbt/TagType;I)Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; visitElement b method_39872 + p 1 type + p 2 size +c net/minecraft/nbt/StreamTagVisitor$EntryResult uv$a net/minecraft/class_6836$class_6837 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; ENTER a field_36248 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; SKIP b field_36249 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; BREAK c field_36250 + f Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; HALT d field_36251 + f [Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; $VALUES e field_36252 + m ()[Lnet/minecraft/nbt/StreamTagVisitor$EntryResult; $values a method_39873 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/nbt/StreamTagVisitor$ValueResult uv$b net/minecraft/class_6836$class_6838 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; CONTINUE a field_36253 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; BREAK b field_36254 + f Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; HALT c field_36255 + f [Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; $VALUES d field_36256 + m ()[Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; $values a method_39874 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/nbt/StringTag uw net/minecraft/class_2519 + f Ljava/lang/String; data A field_11590 + f Lnet/minecraft/nbt/TagType; TYPE a field_21045 + f I SELF_SIZE_IN_BYTES b field_41729 + f Lnet/minecraft/nbt/StringTag; EMPTY c field_21046 + f C DOUBLE_QUOTE w field_33242 + f C SINGLE_QUOTE x field_33243 + f C ESCAPE y field_33244 + f C NOT_SET z field_33245 + m (Ljava/io/DataInput;)V skipString a method_39875 + p 0 input + m (Ljava/lang/String;)Lnet/minecraft/nbt/StringTag; valueOf a method_23256 + p 0 data + m (Ljava/lang/String;)Ljava/lang/String; quoteAndEscape b method_10706 + p 0 text + m ()Lnet/minecraft/nbt/StringTag; copy e method_10705 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m (Ljava/lang/String;)V + p 1 data + m ()V +c net/minecraft/nbt/StringTag$1 uw$1 net/minecraft/class_2519$1 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StringTag; load a method_23257 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/String; readAccounted d method_53904 + p 0 input + p 1 nbtAccounter + m ()V +c net/minecraft/nbt/StringTagVisitor ux net/minecraft/class_5626 + f Ljava/util/regex/Pattern; SIMPLE_VALUE a field_27829 + f Ljava/lang/StringBuilder; builder b field_27830 + m (Ljava/lang/String;)Ljava/lang/String; handleEscape a method_32287 + p 0 text + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; visit a method_32288 + p 1 tag + m ()V + m ()V +c net/minecraft/nbt/Tag uy net/minecraft/class_2520 + f I OBJECT_HEADER d field_33246 + f I ARRAY_HEADER e field_33247 + f I OBJECT_REFERENCE f field_33248 + f I STRING_SIZE g field_33249 + f B TAG_END h field_33250 + f B TAG_BYTE i field_33251 + f B TAG_SHORT j field_33252 + f B TAG_INT k field_33253 + f B TAG_LONG l field_33254 + f B TAG_FLOAT m field_33255 + f B TAG_DOUBLE n field_33256 + f B TAG_BYTE_ARRAY o field_33257 + f B TAG_STRING p field_33258 + f B TAG_LIST q field_33259 + f B TAG_COMPOUND r field_33260 + f B TAG_INT_ARRAY s field_33261 + f B TAG_LONG_ARRAY t field_33262 + f B TAG_ANY_NUMERIC u field_33263 + f I MAX_DEPTH v field_33264 + m ()I sizeInBytes a method_47988 + m (Ljava/io/DataOutput;)V write a method_10713 + p 1 output + m (Lnet/minecraft/nbt/StreamTagVisitor;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; accept a method_39850 + p 1 visitor + m (Lnet/minecraft/nbt/TagVisitor;)V accept a method_32289 + p 1 visitor + m ()B getId b method_10711 + m (Lnet/minecraft/nbt/StreamTagVisitor;)V acceptAsRoot b method_39876 + p 1 visitor + m ()Lnet/minecraft/nbt/TagType; getType c method_23258 + m ()Lnet/minecraft/nbt/Tag; copy d method_10707 + c Creates a deep copy of the value held by this tag. Primitive and string tage will return the same tag instance while all other objects will return a new tag instance with the copied data. + m ()Ljava/lang/String; getAsString s_ method_10714 +c net/minecraft/nbt/TagParser uz net/minecraft/class_2522 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TRAILING_DATA a field_11602 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_KEY b field_11608 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_EXPECTED_VALUE c field_11605 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INSERT_MIXED_LIST d field_11603 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INSERT_MIXED_ARRAY e field_11597 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INVALID_ARRAY f field_11604 + f C ELEMENT_SEPARATOR g field_33265 + f C NAME_VALUE_SEPARATOR h field_33266 + f Lcom/mojang/serialization/Codec; AS_CODEC i field_45952 + f Lcom/mojang/serialization/Codec; LENIENT_CODEC j field_51469 + f C LIST_OPEN k field_33267 + f C LIST_CLOSE l field_33268 + f C STRUCT_CLOSE m field_33269 + f C STRUCT_OPEN n field_33270 + f Ljava/util/regex/Pattern; DOUBLE_PATTERN_NOSUFFIX o field_11607 + f Ljava/util/regex/Pattern; DOUBLE_PATTERN p field_11600 + f Ljava/util/regex/Pattern; FLOAT_PATTERN q field_11596 + f Ljava/util/regex/Pattern; BYTE_PATTERN r field_11606 + f Ljava/util/regex/Pattern; LONG_PATTERN s field_11609 + f Ljava/util/regex/Pattern; SHORT_PATTERN t field_11601 + f Ljava/util/regex/Pattern; INT_PATTERN u field_11599 + f Lcom/mojang/brigadier/StringReader; reader v field_11598 + m ()Lnet/minecraft/nbt/CompoundTag; readSingleStruct a method_10721 + m (C)V expect a method_10719 + p 1 expected + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10720 a method_10720 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10724 a method_10724 + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; parseTag a method_10718 + p 0 text + m (Lnet/minecraft/nbt/TagType;Lnet/minecraft/nbt/TagType;)Ljava/util/List; readArray a method_10728 + p 1 arrayType + p 2 elementType + m ()Ljava/lang/String; readKey b method_10725 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_10730 b method_10730 + m (Ljava/lang/String;)Lnet/minecraft/nbt/Tag; type b method_10731 + p 1 value + m ()Lnet/minecraft/nbt/Tag; readTypedValue c method_10722 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53502 c method_53502 + m ()Lnet/minecraft/nbt/Tag; readValue d method_10723 + m ()Lnet/minecraft/nbt/Tag; readList e method_10717 + m ()Lnet/minecraft/nbt/CompoundTag; readStruct f method_10727 + m ()Lnet/minecraft/nbt/Tag; readListTag g method_10729 + m ()Lnet/minecraft/nbt/Tag; readArrayTag h method_10726 + m ()Z hasElementSeparator i method_10716 + m (Lcom/mojang/brigadier/StringReader;)V + p 1 reader + m ()V +c net/minecraft/nbt/TagType va net/minecraft/class_4614 + m ()Ljava/lang/String; getName a method_23259 + m (I)Lnet/minecraft/nbt/TagType; createInvalid a method_23260 + p 0 id + m (Ljava/io/DataInput;ILnet/minecraft/nbt/NbtAccounter;)V skip a method_39854 + p 1 input + p 2 entries + p 3 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/StreamTagVisitor$ValueResult; parse a method_39852 + p 1 input + p 2 visitor + p 3 accounter + m ()Ljava/lang/String; getPrettyName b method_23261 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)V skip b method_39851 + p 1 input + p 2 accounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/StreamTagVisitor;Lnet/minecraft/nbt/NbtAccounter;)V parseRoot b method_39877 + p 1 input + p 2 visitor + p 3 nbtAccounter + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; load c method_23262 + p 1 input + p 2 accounter + m ()Z isValue d method_23263 +c net/minecraft/nbt/TagType$1 va$1 net/minecraft/class_4614$1 + f I val$id a field_21047 + m (Ljava/io/DataInput;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/EndTag; load a method_23264 + m ()Ljava/io/IOException; createException c method_39878 + m (I)V +c net/minecraft/nbt/TagType$2 va$2 net/minecraft/class_4614$2 + f [I $SwitchMap$net$minecraft$nbt$StreamTagVisitor$ValueResult a field_36257 + m ()V +c net/minecraft/nbt/TagType$StaticSize va$a net/minecraft/class_4614$class_6839 + m ()I size c method_39853 +c net/minecraft/nbt/TagType$VariableSize va$b net/minecraft/class_4614$class_6840 +c net/minecraft/nbt/TagTypes vb net/minecraft/class_4615 + f [Lnet/minecraft/nbt/TagType; TYPES a field_21048 + m (I)Lnet/minecraft/nbt/TagType; getType a method_23265 + p 0 id + m ()V + m ()V +c net/minecraft/nbt/TagVisitor vc net/minecraft/class_5627 + m (Lnet/minecraft/nbt/ByteArrayTag;)V visitByteArray a method_32290 + p 1 tag + m (Lnet/minecraft/nbt/ByteTag;)V visitByte a method_32291 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)V visitCompound a method_32292 + p 1 tag + m (Lnet/minecraft/nbt/DoubleTag;)V visitDouble a method_32293 + p 1 tag + m (Lnet/minecraft/nbt/EndTag;)V visitEnd a method_32294 + p 1 tag + m (Lnet/minecraft/nbt/FloatTag;)V visitFloat a method_32295 + p 1 tag + m (Lnet/minecraft/nbt/IntArrayTag;)V visitIntArray a method_32296 + p 1 tag + m (Lnet/minecraft/nbt/IntTag;)V visitInt a method_32297 + p 1 tag + m (Lnet/minecraft/nbt/ListTag;)V visitList a method_32298 + p 1 tag + m (Lnet/minecraft/nbt/LongArrayTag;)V visitLongArray a method_32299 + p 1 tag + m (Lnet/minecraft/nbt/LongTag;)V visitLong a method_32300 + p 1 tag + m (Lnet/minecraft/nbt/ShortTag;)V visitShort a method_32301 + p 1 tag + m (Lnet/minecraft/nbt/StringTag;)V visitString a method_32302 + p 1 tag +c net/minecraft/nbt/TextComponentTagVisitor vd net/minecraft/class_5628 + f Lnet/minecraft/network/chat/Component; FLOAT_TYPE A field_51918 + f Lnet/minecraft/network/chat/Component; DOUBLE_TYPE B field_51919 + f Lnet/minecraft/network/chat/Component; BYTE_ARRAY_TYPE C field_51920 + f Ljava/lang/String; indentation D field_27840 + f I indentDepth E field_51499 + f I depth F field_27841 + f Lnet/minecraft/network/chat/MutableComponent; result G field_27842 + f Lorg/slf4j/Logger; LOGGER a field_27831 + f I INLINE_LIST_THRESHOLD b field_33271 + f I MAX_DEPTH c field_51497 + f I MAX_LENGTH d field_51921 + f Lit/unimi/dsi/fastutil/bytes/ByteCollection; INLINE_ELEMENT_TYPES e field_27832 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_KEY f field_27833 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_STRING g field_27834 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_NUMBER h field_27835 + f Lnet/minecraft/ChatFormatting; SYNTAX_HIGHLIGHTING_NUMBER_TYPE i field_27836 + f Ljava/util/regex/Pattern; SIMPLE_VALUE j field_27837 + f Ljava/lang/String; LIST_OPEN k field_33272 + f Ljava/lang/String; LIST_CLOSE l field_33273 + f Ljava/lang/String; LIST_TYPE_SEPARATOR m field_33274 + f Ljava/lang/String; ELEMENT_SPACING n field_33275 + f Ljava/lang/String; STRUCT_OPEN o field_33276 + f Ljava/lang/String; STRUCT_CLOSE p field_33277 + f Ljava/lang/String; NEWLINE q field_33278 + f Ljava/lang/String; NAME_VALUE_SEPARATOR r field_51922 + f Ljava/lang/String; ELEMENT_SEPARATOR s field_27839 + f Ljava/lang/String; WRAPPED_ELEMENT_SEPARATOR t field_51923 + f Ljava/lang/String; SPACED_ELEMENT_SEPARATOR u field_51924 + f Lnet/minecraft/network/chat/Component; FOLDED v field_51925 + f Lnet/minecraft/network/chat/Component; BYTE_TYPE w field_51926 + f Lnet/minecraft/network/chat/Component; SHORT_TYPE x field_51927 + f Lnet/minecraft/network/chat/Component; INT_TYPE y field_51928 + f Lnet/minecraft/network/chat/Component; LONG_TYPE z field_51929 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; handleEscapePretty a method_32304 + p 0 text + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; visit a method_32305 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Z)V appendSubTag a method_60585 + p 1 tag + p 2 indent + m (Ljava/lang/String;)V + p 1 indentation + m ()V +c net/minecraft/nbt/package-info ve net/minecraft/class_6311 +c net/minecraft/nbt/visitors/CollectFields vf net/minecraft/class_6841 + f I fieldsToGetCount a field_36258 + f Ljava/util/Set; wantedTypes b field_36259 + f Ljava/util/Deque; stack c field_36260 + m ()I getMissingFieldCount c method_39879 + m ([Lnet/minecraft/nbt/visitors/FieldSelector;)V + p 1 selectors +c net/minecraft/nbt/visitors/CollectToTag vg net/minecraft/class_6844 + f Ljava/lang/String; lastId a field_36261 + f Lnet/minecraft/nbt/Tag; rootTag b field_36262 + f Ljava/util/Deque; consumerStack c field_36263 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39882 a method_39882 + m (Lnet/minecraft/nbt/Tag;)V appendEntry a method_39883 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39884 b method_39884 + m (Lnet/minecraft/nbt/Tag;)V method_39885 b method_39885 + m (Lnet/minecraft/nbt/TagType;)V enterContainerIfNeeded c method_39886 + p 1 type + m ()Lnet/minecraft/nbt/Tag; getResult d method_39887 + m ()I depth e method_39888 + m ()V +c net/minecraft/nbt/visitors/FieldSelector vh net/minecraft/class_6843 + f Ljava/util/List; path a comp_318 + f Lnet/minecraft/nbt/TagType; type b comp_319 + f Ljava/lang/String; name c comp_320 + m ()Ljava/util/List; path a comp_318 + m ()Lnet/minecraft/nbt/TagType; type b comp_319 + m ()Ljava/lang/String; name c comp_320 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 type + p 2 name + m (Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 element + p 2 type + p 3 name + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V + p 1 firstElement + p 2 secondElement + p 3 type + p 4 name + m (Ljava/util/List;Lnet/minecraft/nbt/TagType;Ljava/lang/String;)V +c net/minecraft/nbt/visitors/FieldTree vi net/minecraft/class_6842 + f I depth a comp_315 + f Ljava/util/Map; selectedFields b comp_323 + f Ljava/util/Map; fieldsToRecurse c comp_317 + m ()Lnet/minecraft/nbt/visitors/FieldTree; createRoot a method_40060 + m (Ljava/lang/String;)Lnet/minecraft/nbt/visitors/FieldTree; method_39880 a method_39880 + m (Lnet/minecraft/nbt/TagType;Ljava/lang/String;)Z isSelected a method_40061 + p 1 type + p 2 name + m (Lnet/minecraft/nbt/visitors/FieldSelector;)V addEntry a method_39881 + p 1 selector + m ()I depth b comp_315 + m ()Ljava/util/Map; selectedFields c comp_323 + m ()Ljava/util/Map; fieldsToRecurse d comp_317 + m (I)V + p 1 depth + m (ILjava/util/Map;Ljava/util/Map;)V +c net/minecraft/nbt/visitors/SkipAll vj net/minecraft/class_6845 + f Lnet/minecraft/nbt/visitors/SkipAll; INSTANCE a field_36264 + m ()V +c net/minecraft/nbt/visitors/SkipAll$1 vj$1 net/minecraft/class_6845$1 + m ()V +c net/minecraft/nbt/visitors/SkipFields vk net/minecraft/class_6856 + f Ljava/util/Deque; stack a field_36378 + m ([Lnet/minecraft/nbt/visitors/FieldSelector;)V + p 1 selectors +c net/minecraft/nbt/visitors/package-info vl net/minecraft/class_6846 +c net/minecraft/network/BandwidthDebugMonitor vm net/minecraft/class_8762 + f Ljava/util/concurrent/atomic/AtomicInteger; bytesReceived a field_45953 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; bandwidthLogger b field_45954 + m ()V tick a method_53503 + m (I)V onReceive a method_53504 + p 1 amount + m (Lnet/minecraft/util/debugchart/LocalSampleLogger;)V + p 1 bandwithLogger +c net/minecraft/network/CipherBase vn net/minecraft/class_2524 + f Ljavax/crypto/Cipher; cipher a field_11612 + f [B heapIn b field_11613 + f [B heapOut c field_11614 + m (Lio/netty/buffer/ByteBuf;)[B bufToByte a method_10733 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encipher a method_10732 + p 1 input + p 2 out + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; decipher a method_10734 + p 1 ctx + p 2 buffer + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/CipherDecoder vo net/minecraft/class_2528 + c Channel handler that handles protocol decryption.\n\n@see Connection#setEncryptionKey + f Lnet/minecraft/network/CipherBase; cipher a field_11619 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Ljava/util/List;)V decode a method_10735 + p 1 context + p 2 in + p 3 out + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/CipherEncoder vp net/minecraft/class_2529 + c Channel handler that handles protocol encryption.\n\n@see Connection#setEncryptionKey + f Lnet/minecraft/network/CipherBase; cipher a field_11620 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10736 + p 1 context + p 2 message + p 3 out + m (Ljavax/crypto/Cipher;)V + p 1 cipher +c net/minecraft/network/ClientboundPacketListener vq net/minecraft/class_8697 +c net/minecraft/network/CompressionDecoder vr net/minecraft/class_2532 + c Handles decompression of network traffic.\n\n@see Connection#setupCompression + f I MAXIMUM_COMPRESSED_LENGTH a field_34057 + f I MAXIMUM_UNCOMPRESSED_LENGTH b field_33279 + f Ljava/util/zip/Inflater; inflater c field_11622 + f I threshold d field_11623 + f Z validateDecompressed e field_34058 + m (IZ)V setThreshold a method_10739 + p 1 threshold + p 2 validateDecompressed + m (Lio/netty/buffer/ByteBuf;)V setupInflaterInput a method_52896 + p 1 buffer + m (Lio/netty/channel/ChannelHandlerContext;I)Lio/netty/buffer/ByteBuf; inflate a method_52897 + p 1 context + p 2 size + m (IZ)V + p 1 threshold + p 2 validateDecompressed +c net/minecraft/network/CompressionEncoder vs net/minecraft/class_2534 + c Handles compression of network traffic.\n\n@see Connection#setupCompression + f [B encodeBuf a field_11637 + f Ljava/util/zip/Deflater; deflater b field_11638 + f I threshold c field_11636 + m ()I getThreshold a method_36120 + m (I)V setThreshold a method_10742 + p 1 threshold + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10741 + p 1 context + p 2 encodingByteBuf + p 3 byteBuf + m (I)V + p 1 threshold +c net/minecraft/network/Connection vt net/minecraft/class_2535 + f Lnet/minecraft/network/DisconnectionDetails; delayedDisconnect A field_44972 + f Lnet/minecraft/network/BandwidthDebugMonitor; bandwidthDebugMonitor B field_45955 + f Lorg/slf4j/Marker; ROOT_MARKER a field_11641 + f Lorg/slf4j/Marker; PACKET_MARKER b field_11639 + f Lorg/slf4j/Marker; PACKET_RECEIVED_MARKER c field_36379 + f Lorg/slf4j/Marker; PACKET_SENT_MARKER d field_36380 + f Ljava/util/function/Supplier; NETWORK_WORKER_GROUP e field_11650 + f Ljava/util/function/Supplier; NETWORK_EPOLL_WORKER_GROUP f field_11657 + f Ljava/util/function/Supplier; LOCAL_WORKER_GROUP g field_11649 + f F AVERAGE_PACKETS_SMOOTHING h field_33280 + f Lorg/slf4j/Logger; LOGGER i field_11642 + f Lnet/minecraft/network/ProtocolInfo; INITIAL_PROTOCOL j field_48514 + f Lnet/minecraft/network/protocol/PacketFlow; receiving k field_11643 + f Z sendLoginDisconnect l field_48515 + f Ljava/util/Queue; pendingActions m field_45668 + f Lio/netty/channel/Channel; channel n field_11651 + c The active channel + f Ljava/net/SocketAddress; address o field_11645 + c The address of the remote party + f Lnet/minecraft/network/PacketListener; disconnectListener p field_45669 + f Lnet/minecraft/network/PacketListener; packetListener q field_11652 + c The PacketListener instance responsible for processing received packets + f Lnet/minecraft/network/DisconnectionDetails; disconnectionDetails r field_52180 + f Z encrypted s field_11647 + f Z disconnectionHandled t field_11646 + f I receivedPackets u field_11658 + f I sentPackets v field_11656 + f F averageReceivedPackets w field_11654 + f F averageSentPackets x field_11653 + f I tickCount y field_11655 + f Z handlingFault z field_11640 + m ()V flushChannel a method_52915 + m (IZ)V setupCompression a method_10760 + c Enables or disables compression for this connection. If {@code threshold} is >= 0 then a {@link CompressionDecoder} and {@link CompressionEncoder}\nare installed in the pipeline or updated if they already exist. If {@code threshold} is < 0 then any such codec are removed.\n\nCompression is enabled as part of the connection handshake when the server sends {@link net.minecraft.network.protocol.login.ClientboundLoginCompressionPacket}. + p 1 threshold + p 2 validateDecompressed + m (Lnet/minecraft/util/debugchart/LocalSampleLogger;)V setBandwidthLogger a method_53505 + p 1 bandwithLogger + m (Lio/netty/channel/ChannelFuture;)V syncAfterConfigurationChange a method_59851 + p 0 future + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V channelRead0 a method_10770 + p 1 context + p 2 packet + m (Lio/netty/channel/ChannelPipeline;)V configurePacketHandler a method_53859 + p 1 pipeline + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/network/protocol/PacketFlow;)V configureInMemoryPipeline a method_52911 + p 0 pipeline + p 1 flow + m (Lio/netty/channel/ChannelPipeline;Lnet/minecraft/network/protocol/PacketFlow;ZLnet/minecraft/network/BandwidthDebugMonitor;)V configureSerialization a method_48311 + p 0 pipeline + p 1 flow + p 2 memoryOnly + p 3 bandwithDebugMonitor + m (Ljava/lang/String;ILnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V initiateServerboundPlayConnection a method_52902 + p 1 hostName + p 2 port + p 3 packetListener + m (Ljava/lang/String;ILnet/minecraft/network/protocol/status/ClientStatusPacketListener;)V initiateServerboundStatusConnection a method_52903 + p 1 hostName + p 2 port + p 3 packetListener + m (Ljava/lang/String;ILnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Lnet/minecraft/network/protocol/handshake/ClientIntent;)V initiateServerboundConnection a method_52904 + p 1 hostName + p 2 port + p 3 serverboundProtocol + p 4 clientboundProtocol + p 5 packetListener + p 6 intention + m (Ljava/lang/String;ILnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Z)V initiateServerboundPlayConnection a method_56326 + p 1 hostName + p 2 port + p 3 serverboundProtocol + p 4 clientbountProtocol + p 5 packetListener + p 6 isTransfer + m (Ljava/net/InetSocketAddress;ZLnet/minecraft/util/debugchart/LocalSampleLogger;)Lnet/minecraft/network/Connection; connectToServer a method_10753 + p 0 address + p 1 useEpollIfAvailable + p 2 sampleLogger + m (Ljava/net/InetSocketAddress;ZLnet/minecraft/network/Connection;)Lio/netty/channel/ChannelFuture; connect a method_52271 + p 0 address + p 1 useEpollIfAvailable + p 2 connection + m (Ljava/net/SocketAddress;)Lnet/minecraft/network/Connection; connectToLocalServer a method_10769 + c Prepares a clientside Connection for a local in-memory connection ("single player").\nEstablishes a connection to the socket supplied and configures the channel pipeline (only the packet handler is necessary,\nsince this is for an in-memory connection). Returns the newly created instance. + p 0 address + m (Ljava/util/function/Consumer;)V runOnceConnected a method_52905 + p 1 action + m (Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V setEncryptionKey a method_10746 + c Enables encryption for this connection using the given decrypting and encrypting ciphers.\nThis adds new handlers to this connection's pipeline which handle the decrypting and encrypting.\nThis happens as part of the normal network handshake.\n\n@see net.minecraft.network.protocol.login.ClientboundHelloPacket\n@see net.minecraft.network.protocol.login.ServerboundKeyPacket + p 1 decryptingCipher + p 2 encryptingCipher + m (Lorg/slf4j/Marker;)V method_40062 a method_40062 + m (Lnet/minecraft/network/BandwidthDebugMonitor;Z)Lio/netty/channel/ChannelInboundHandler; createFrameDecoder a method_59852 + p 0 bandwithDebugMonitor + p 1 memoryOnly + m (Lnet/minecraft/network/DisconnectionDetails;)V disconnect a method_60924 + p 1 disconnectionDetails + m (Lnet/minecraft/network/PacketBundlePacker;Lio/netty/channel/ChannelHandlerContext;)V method_56327 a method_56327 + m (Lnet/minecraft/network/PacketBundleUnpacker;Lio/netty/channel/ChannelHandlerContext;)V method_56328 a method_56328 + m (Lnet/minecraft/network/PacketListener;)V setListenerForServerboundHandshake a method_52912 + p 1 packetListener + m (Lnet/minecraft/network/PacketSendListener;Lio/netty/util/concurrent/Future;)V method_45082 a method_45082 + m (Lnet/minecraft/network/ProtocolInfo;)V setupOutboundProtocol a method_56329 + p 1 protocolInfo + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/ClientboundPacketListener;Ljava/lang/String;ILnet/minecraft/network/protocol/handshake/ClientIntent;Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/Connection;)V method_52900 a method_52900 + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/PacketListener;)V setupInboundProtocol a method_56330 + p 1 protocolInfo + p 2 packetInfo + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_10747 + c Closes the channel with a given reason. The reason is stored for later and will be used for informational purposes (info log on server,\ndisconnection screen on the client). This method is also called on the client when the server requests disconnection via\n{@code ClientboundDisconnectPacket}.\n\nClosing the channel this way does not send any disconnection packets, it simply terminates the underlying netty channel. + p 1 message + m (Lnet/minecraft/network/protocol/Packet;)V send a method_10743 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;)V genericsFtw a method_10759 + p 0 packet + p 1 listener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;)V send a method_10752 + p 1 packet + p 2 sendListener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V send a method_52906 + p 1 packet + p 2 listener + p 3 flush + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;ZLnet/minecraft/network/Connection;)V method_52907 a method_52907 + m (Z)Ljava/lang/String; getLoggableAddress a method_52909 + p 1 logIps + m (ZLio/netty/channel/ChannelHandlerContext;)V method_56331 a method_56331 + m ()V tick b method_10754 + c Checks timeouts and processes all packets received + m (Lorg/slf4j/Marker;)V method_40063 b method_40063 + m (Lnet/minecraft/network/DisconnectionDetails;)V method_60925 b method_60925 + m (Lnet/minecraft/network/ProtocolInfo;Lnet/minecraft/network/PacketListener;)V validateListener b method_56332 + p 1 protocolInfo + p 2 packetListener + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V sendPacket b method_10764 + p 1 packet + p 2 sendListener + p 3 flush + m (Z)Ljava/lang/String; outboundHandlerName b method_56333 + p 0 clientbound + m ()V tickSecond c method_30615 + m (Lorg/slf4j/Marker;)V method_40064 c method_40064 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V doSendPacket c method_36942 + p 1 packet + p 2 sendListener + p 3 flush + m (Z)Ljava/lang/String; inboundHandlerName c method_56334 + p 0 serverbound + m ()Ljava/net/SocketAddress; getRemoteAddress d method_10755 + c Returns the socket address of the remote side. Server-only. + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;Z)V method_52917 d method_52917 + m (Z)Lio/netty/channel/ChannelOutboundHandler; createFrameEncoder d method_59853 + p 0 memoryOnly + m ()Z isMemoryConnection e method_10756 + c True if this {@code Connection} uses a memory connection (single player game). False may imply both an active TCP connection or simply no active connection at all + m ()Lnet/minecraft/network/protocol/PacketFlow; getReceiving f method_36121 + c The receiving packet direction (i.e. SERVERBOUND on the server and CLIENTBOUND on the client). + m ()Lnet/minecraft/network/protocol/PacketFlow; getSending g method_36122 + c The sending packet direction (i.e. SERVERBOUND on the client and CLIENTBOUND on the server) + m ()Z isEncrypted h method_10771 + m ()Z isConnected i method_10758 + c Returns {@code true} if this {@code Connection} has an active channel, {@code false} otherwise. + m ()Z isConnecting j method_10772 + c Returns {@code true} while this connection is still connecting, i.e. {@link #channelActive} has not fired yet. + m ()Lnet/minecraft/network/PacketListener; getPacketListener k method_10744 + c Gets the current handler for processing packets + m ()Lnet/minecraft/network/DisconnectionDetails; getDisconnectionDetails l method_60926 + m ()V setReadOnly m method_10757 + c Switches the channel to manual reading modus + m ()V handleDisconnection n method_10768 + c Checks if the channel is no longer active and if so, processes the disconnection\nby notifying the current packet listener, which will handle things like removing the player from the world (serverside) or\nshowing the disconnection screen (clientside). + m ()F getAverageReceivedPackets o method_10762 + m ()F getAverageSentPackets p method_10745 + m ()V flush q method_52918 + m ()V flushQueue r method_10751 + c Will iterate through the outboundPacketQueue and dispatch all Packets + m ()Lnet/minecraft/network/DisconnectionDetails; method_52919 s method_52919 + m ()V method_52920 t method_52920 + m ()Lio/netty/channel/DefaultEventLoopGroup; method_10766 u method_10766 + m ()Lio/netty/channel/epoll/EpollEventLoopGroup; method_10765 v method_10765 + m ()Lio/netty/channel/nio/NioEventLoopGroup; method_10767 w method_10767 + m (Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 receiving + m ()V +c net/minecraft/network/Connection$1 vt$1 net/minecraft/class_2535$1 + f Lnet/minecraft/network/Connection; val$connection a field_11663 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/Connection$2 vt$2 net/minecraft/class_2535$2 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/Connection$3 vt$3 net/minecraft/class_2535$3 + f Lnet/minecraft/network/Connection; val$connection a field_48517 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/network/ConnectionProtocol vu net/minecraft/class_2539 + c Describes the set of packets a connection understands at a given point.\nA connection always starts out in state {@link #HANDSHAKING}. In this state the client sends its desired protocol using\n{@link ClientIntentionPacket}. The server then either accepts the connection and switches to the desired protocol or it disconnects the client (for example in case of an outdated client).\n\nEach protocol has a {@link PacketListener} implementation tied to it for server and client respectively.\n\nEvery packet must correspond to exactly one protocol. + f Lnet/minecraft/network/ConnectionProtocol; HANDSHAKING a field_20590 + c The handshake protocol. This is the initial protocol, in which the client tells the server its intention (i.e. which protocol it wants to use). + f Lnet/minecraft/network/ConnectionProtocol; PLAY b field_20591 + c The play protocol. This is the main protocol that is used while "in game" and most normal packets reside in here. + f Lnet/minecraft/network/ConnectionProtocol; STATUS c field_20592 + c The status protocol. This protocol is used when a client pings a server while on the multiplayer screen. + f Lnet/minecraft/network/ConnectionProtocol; LOGIN d field_20593 + c The login protocol. This is the first protocol the client switches to to join a server. It handles authentication with the mojang servers. After it is complete, the connection is switched to the PLAY protocol. + f Lnet/minecraft/network/ConnectionProtocol; CONFIGURATION e field_45671 + f Ljava/lang/String; id f field_20594 + f [Lnet/minecraft/network/ConnectionProtocol; $VALUES g field_11694 + m ()Ljava/lang/String; id a method_10785 + m ()[Lnet/minecraft/network/ConnectionProtocol; $values b method_36943 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/network/DisconnectionDetails vv net/minecraft/class_9812 + f Lnet/minecraft/network/chat/Component; reason a comp_2853 + f Ljava/util/Optional; report b comp_2854 + f Ljava/util/Optional; bugReportLink c comp_2855 + m ()Lnet/minecraft/network/chat/Component; reason a comp_2853 + m ()Ljava/util/Optional; report b comp_2854 + m ()Ljava/util/Optional; bugReportLink c comp_2855 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Ljava/util/Optional;)V +c net/minecraft/network/FriendlyByteBuf vw net/minecraft/class_2540 + f I DEFAULT_NBT_QUOTA a field_33287 + f S MAX_STRING_LENGTH b field_33283 + f I MAX_COMPONENT_STRING_LENGTH c field_33284 + f Lio/netty/buffer/ByteBuf; source d field_11695 + f I PUBLIC_KEY_SIZE e field_39381 + f I MAX_PUBLIC_KEY_HEADER_SIZE f field_39382 + f I MAX_PUBLIC_KEY_LENGTH g field_39383 + f Lcom/google/gson/Gson; GSON h field_42966 + m ()Lnet/minecraft/network/FriendlyByteBuf; markWriterIndex A method_52934 + m ()Lnet/minecraft/network/FriendlyByteBuf; resetWriterIndex B method_52935 + m ()Lnet/minecraft/network/FriendlyByteBuf; discardReadBytes C method_52936 + m ()Lnet/minecraft/network/FriendlyByteBuf; discardSomeReadBytes D method_52937 + m ()Lnet/minecraft/network/FriendlyByteBuf; retain E method_52938 + m ()Lnet/minecraft/network/FriendlyByteBuf; touch F method_52939 + m ()Lit/unimi/dsi/fastutil/ints/IntList; readIntIdList a method_34059 + c Read an IntList of VarInts from this buffer.\n\n@see #writeIntIdList + m (D)Lnet/minecraft/network/FriendlyByteBuf; writeDouble a method_52940 + p 1 value + m (F)Lnet/minecraft/network/FriendlyByteBuf; writeFloat a method_52941 + p 1 value + m (I)[B readByteArray a method_10803 + p 1 maxLength + m (ID)Lnet/minecraft/network/FriendlyByteBuf; setDouble a method_52942 + p 1 index + p 2 value + m (IF)Lnet/minecraft/network/FriendlyByteBuf; setFloat a method_52943 + p 1 index + p 2 value + m (II)Lnet/minecraft/network/FriendlyByteBuf; setIndex a method_52944 + p 1 readerIndex + p 2 writerIndex + m (IJ)Lnet/minecraft/network/FriendlyByteBuf; setLong a method_52945 + p 1 index + p 2 value + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52946 + p 1 index + p 2 destination + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52947 + p 1 index + p 2 destination + p 3 length + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52948 + p 1 index + p 2 destination + p 3 destinationIndex + p 4 length + m (ILjava/io/OutputStream;I)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52949 + p 1 index + p 2 out + p 3 length + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52950 + p 1 index + p 2 destination + m (ILjava/util/function/IntFunction;I)Ljava/lang/Object; method_37452 a method_37452 + m (IZ)Lnet/minecraft/network/FriendlyByteBuf; setBoolean a method_52951 + p 1 index + p 2 value + m (I[B)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52952 + p 1 index + p 2 destination + m (I[BII)Lnet/minecraft/network/FriendlyByteBuf; getBytes a method_52953 + p 1 index + p 2 destination + p 3 destinationIndex + p 4 length + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeVarLong a method_10791 + c Writes a compressed long to the buffer. The smallest number of bytes to fit the passed long will be written. Of each such byte only 7 bits will be used to describe the actual value since its most significant bit dictates whether the next byte is part of that same long. Micro-optimization for long values that are usually small. + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; readResourceKey a method_44112 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/FriendlyByteBuf; writeResourceLocation a method_10812 + c Write a ResourceLocation using its String representation.\n\n@see #readResourceLocation + p 1 resourceLocation + m (Lcom/mojang/serialization/Codec;)Ljava/lang/Object; readJsonWithCodec a method_49394 + p 1 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)V writeJsonWithCodec a method_49395 + p 1 codec + p 2 value + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)Ljava/lang/Object; readWithCodecTrusted a method_52954 + p 1 ops + p 2 codec + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; writeWithCodec a method_29172 + p 1 ops + p 2 codec + p 3 value + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/nbt/NbtAccounter;)Ljava/lang/Object; readWithCodec a method_29171 + p 1 ops + p 2 codec + p 3 nbtAccounter + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/FriendlyByteBuf; writeChunkPos a method_36130 + c Writes a ChunkPos encoded as a long to the buffer.\n\n@see #readChunkPos + p 1 chunkPos + m (Lnet/minecraft/world/phys/BlockHitResult;)V writeBlockHitResult a method_17813 + c Write a BlockHitResult.\n\n@see #readBlockHitResult + p 1 result + m (Lnet/minecraft/world/phys/Vec3;)V writeVec3 a method_52955 + p 1 vec3 + m (Lio/netty/buffer/ByteBuf;)[B readByteArray a method_56890 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)[B readByteArray a method_56891 + p 0 buffer + p 1 maxSize + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52958 + p 1 destination + p 2 destinationIndex + p 3 length + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;Lnet/minecraft/network/codec/StreamEncoder;)V writeNullable a method_56892 + p 0 buffer + p 1 value + p 2 writer + m (Lio/netty/buffer/ByteBuf;Ljava/util/UUID;)V writeUUID a method_56337 + p 0 buffer + p 1 id + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/BlockPos;)V writeBlockPos a method_56336 + p 0 buffer + p 1 pos + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionf;)V writeQuaternion a method_56338 + p 0 buffer + p 1 quaternion + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3f;)V writeVector3f a method_56339 + p 0 buffer + p 1 vector3f + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNbt a method_56340 + p 0 buffer + p 1 nbtAccounter + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/Tag;)V writeNbt a method_56341 + p 0 buffer + p 1 nbt + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/lang/Object; readNullable a method_56893 + p 0 buffer + p 1 reader + m (Lio/netty/buffer/ByteBuf;[B)V writeByteArray a method_56894 + p 0 buffer + p 1 array + m (Lit/unimi/dsi/fastutil/ints/IntList;)V writeIntIdList a method_34060 + c Write an IntList to this buffer. Every element is encoded as a VarInt.\n\n@see #readIntIdList + p 1 itIdList + m (Ljava/io/OutputStream;I)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52959 + p 1 out + p 2 length + m (Ljava/lang/Class;)Ljava/util/EnumSet; readEnumSet a method_46251 + p 1 enumClass + m (Ljava/lang/Enum;)Lnet/minecraft/network/FriendlyByteBuf; writeEnum a method_10817 + c Writes an enum of the given type T using the ordinal encoded as a VarInt to the buffer.\n\n@see #readEnum + p 1 value + m (Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; touch a method_52960 + p 1 hint + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_49396 a method_49396 + m (Ljava/lang/Object;Lnet/minecraft/network/codec/StreamEncoder;)V writeNullable a method_43826 + p 1 value + p 2 writer + m (Ljava/lang/String;)Lnet/minecraft/network/FriendlyByteBuf; writeUtf a method_10814 + c Writes a String with a maximum length of {@code Short.MAX_VALUE}.\n\n@see #readUtf + p 1 string + m (Ljava/lang/String;I)Lnet/minecraft/network/FriendlyByteBuf; writeUtf a method_10788 + c Writes a String with a maximum length.\n\n@see #readUtf + p 1 string + p 2 maxLength + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52961 + p 1 destination + m (Ljava/security/PublicKey;)Lnet/minecraft/network/FriendlyByteBuf; writePublicKey a method_44114 + p 1 publicKey + m (Ljava/time/Instant;)V writeInstant a method_44115 + p 1 instant + m (Ljava/util/BitSet;)V writeBitSet a method_33557 + c Write a BitSet as a long[].\n\n@see #readBitSet + p 1 bitSet + m (Ljava/util/BitSet;I)V writeFixedBitSet a method_46252 + p 1 bitSet + p 2 size + m (Ljava/util/Collection;Lnet/minecraft/network/codec/StreamEncoder;)V writeCollection a method_34062 + p 1 collection + p 2 elementWriter + m (Ljava/util/Date;)Lnet/minecraft/network/FriendlyByteBuf; writeDate a method_10796 + c Write a timestamp as milliseconds since the unix epoch.\n\n@see #readDate + p 1 time + m (Ljava/util/EnumSet;Ljava/lang/Class;)V writeEnumSet a method_46253 + p 1 enumSet + p 2 enumClass + m (Ljava/util/Map;Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamEncoder;)V writeMap a method_34063 + p 1 map + p 2 keyWriter + p 3 valueWriter + m (Ljava/util/Optional;Lnet/minecraft/network/codec/StreamEncoder;)V writeOptional a method_37435 + p 1 optional + p 2 writer + m (Ljava/util/UUID;)Lnet/minecraft/network/FriendlyByteBuf; writeUUID a method_10797 + c Writes a UUID encoded as two longs to this buffer.\n\n@see #readUUID + p 1 uuid + m (Ljava/util/function/Consumer;)V readWithCount a method_34065 + c Read a VarInt N from this buffer, then reads N values by calling {@code reader}. + p 1 reader + m (Ljava/util/function/IntFunction;)Ljava/lang/Object; readById a method_52962 + p 1 idLookuo + m (Ljava/util/function/IntFunction;I)Ljava/util/function/IntFunction; limitValue a method_37453 + p 0 function + p 1 limit + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Collection; readCollection a method_34068 + p 1 collectionFactory + p 2 elementReader + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Map; readMap a method_34069 + p 1 mapFactory + p 2 keyReader + p 3 valueReader + m (Ljava/util/function/ToIntFunction;Ljava/lang/Object;)Lnet/minecraft/network/FriendlyByteBuf; writeById a method_52963 + p 1 idGetter + p 2 value + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/FriendlyByteBuf; writeBlockPos a method_10807 + c Writes a BlockPos encoded as a long to the buffer.\n\n@see #readBlockPos + p 1 pos + m (Lnet/minecraft/core/GlobalPos;)V writeGlobalPos a method_44113 + p 1 pos + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/network/FriendlyByteBuf; writeSectionPos a method_36131 + c Writes a SectionPos encoded as a long to the buffer.\n\n@see #readSectionPos + p 1 sectionPos + m (Lorg/joml/Quaternionf;)V writeQuaternion a method_49067 + p 1 quaternion + m (Lorg/joml/Vector3f;)V writeVector3f a method_49068 + p 1 vector3f + m (Lnet/minecraft/nbt/NbtAccounter;)Lnet/minecraft/nbt/Tag; readNbt a method_30616 + p 1 nbtAccounter + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/FriendlyByteBuf; writeNbt a method_10794 + p 1 tag + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_34070 a method_34070 + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/List; readList a method_34066 + p 1 elementReader + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Map; readMap a method_34067 + p 1 keyReader + p 2 valueReader + m (Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamEncoder;Ljava/lang/Object;Ljava/lang/Object;)V method_34064 a method_34064 + m (Z)Lnet/minecraft/network/FriendlyByteBuf; writeBoolean a method_52964 + p 1 value + m ([B)Lnet/minecraft/network/FriendlyByteBuf; writeByteArray a method_10813 + p 1 array + m ([BII)Lnet/minecraft/network/FriendlyByteBuf; readBytes a method_52965 + p 1 destination + p 2 destinationIndex + p 3 length + m ([I)Lnet/minecraft/network/FriendlyByteBuf; writeVarIntArray a method_10806 + c Writes an array of VarInts to the buffer, prefixed by the length of the array (as a VarInt).\n\n@see #readVarIntArray + p 1 array + m ([J)Lnet/minecraft/network/FriendlyByteBuf; writeLongArray a method_10789 + c Writes an array of longs to the buffer, prefixed by the length of the array (as a VarInt).\n\n@see #readLongArray + p 1 array + m ([JI)[J readLongArray a method_10809 + c Reads a length-prefixed array of longs with a maximum length from the buffer.\nWill try to use the given long[] if possible. Note that if an array with the correct size is given, maxLength is ignored. + p 1 array + p 2 maxLength + m ()[B readByteArray b method_10795 + m (I)[I readVarIntArray b method_10799 + c Reads an array of VarInts with a maximum length from this buffer.\n\n@see #writeVarIntArray + p 1 maxLength + m (II)Lnet/minecraft/network/FriendlyByteBuf; setByte b method_52966 + p 1 index + p 2 value + m (IJ)Lnet/minecraft/network/FriendlyByteBuf; setLongLE b method_52967 + p 1 index + p 2 value + m (ILio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52968 + p 1 index + p 2 source + m (ILio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52969 + p 1 index + p 2 source + p 3 length + m (ILio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52970 + p 1 index + p 2 source + p 3 sourceIndex + p 4 length + m (ILjava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52971 + p 1 index + p 2 source + m (I[B)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52972 + p 1 index + p 2 source + m (I[BII)Lnet/minecraft/network/FriendlyByteBuf; setBytes b method_52973 + p 1 index + p 2 source + p 3 sourceIndex + p 4 length + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeLong b method_52974 + p 1 value + m (Lnet/minecraft/resources/ResourceKey;)V writeResourceKey b method_44116 + p 1 resourceKey + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/core/BlockPos; readBlockPos b method_56335 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; readBytes b method_52957 + p 1 destination + p 2 length + m (Lio/netty/buffer/ByteBuf;II)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52977 + p 1 source + p 2 sourceIndex + p 3 length + m (Ljava/lang/Class;)Ljava/lang/Enum; readEnum b method_10818 + c Reads an enum of the given type T using the ordinal encoded as a VarInt from the buffer.\n\n@see #writeEnum + p 1 enumClass + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_34061 b method_34061 + m (Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_49397 b method_49397 + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52978 + p 1 source + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/util/Optional; readOptional b method_37436 + p 1 reader + m ([B)Lnet/minecraft/network/FriendlyByteBuf; readBytes b method_52979 + p 1 destination + m ([BII)Lnet/minecraft/network/FriendlyByteBuf; writeBytes b method_52980 + p 1 source + p 2 sourceIndex + p 3 length + m ([J)[J readLongArray b method_10801 + c Reads a length-prefixed array of longs from the buffer.\nWill try to use the given long[] if possible. Note that if an array with the correct size is given, maxLength is ignored. + p 1 array + m ()[I readVarIntArray c method_10787 + c Reads an array of VarInts from this buffer.\n\n@see #writeVarIntArray + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeVarInt c method_10804 + c Writes a compressed int to the buffer. The smallest number of bytes to fit the passed int will be written. Of each such byte only 7 bits will be used to describe the actual value since its most significant bit dictates whether the next byte is part of that same int. Micro-optimization for int values that are usually small. + p 1 input + m (II)Lnet/minecraft/network/FriendlyByteBuf; setShort c method_52981 + p 1 index + p 2 value + m (J)Lnet/minecraft/network/FriendlyByteBuf; writeLongLE c method_52982 + p 1 value + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3f; readVector3f c method_56342 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lnet/minecraft/network/FriendlyByteBuf; writeBytes c method_52976 + p 1 source + p 2 length + m (Lnet/minecraft/network/codec/StreamDecoder;)Ljava/lang/Object; readNullable c method_43827 + p 1 reader + m ([B)Lnet/minecraft/network/FriendlyByteBuf; writeBytes c method_52983 + p 1 source + m ()[J readLongArray d method_33134 + c Reads a length-prefixed array of longs from the buffer. + m (I)Ljava/lang/String; readUtf d method_10800 + c Reads a string with a maximum length from this buffer.\n\n@see #writeUtf + p 1 maxLength + m (II)Lnet/minecraft/network/FriendlyByteBuf; setShortLE d method_52984 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionf; readQuaternion d method_56343 + p 0 buffer + m ()Lnet/minecraft/core/BlockPos; readBlockPos e method_10811 + c Reads a BlockPos encoded as a long from the buffer.\n\n@see #writeBlockPos + m (I)Ljava/util/BitSet; readFixedBitSet e method_46254 + p 1 size + m (II)Lnet/minecraft/network/FriendlyByteBuf; setMedium e method_52985 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Ljava/util/UUID; readUUID e method_56344 + p 0 buffer + m ()Lnet/minecraft/world/level/ChunkPos; readChunkPos f method_36133 + c Reads a ChunkPos encoded as a long from the buffer.\n\n@see #writeChunkPos + m (I)Lnet/minecraft/network/FriendlyByteBuf; capacity f method_52986 + p 1 newCapacity + m (II)Lnet/minecraft/network/FriendlyByteBuf; setMediumLE f method_52987 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/nbt/CompoundTag; readNbt f method_56345 + p 0 buffer + m ()Lnet/minecraft/core/SectionPos; readSectionPos g method_19456 + c Reads a SectionPos encoded as a long from the buffer.\n\n@see #writeSectionPos + m (I)Lnet/minecraft/network/FriendlyByteBuf; readerIndex g method_52988 + p 1 readerIndex + m (II)Lnet/minecraft/network/FriendlyByteBuf; setInt g method_52989 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; readBytes g method_52956 + p 1 destination + m ()Lnet/minecraft/core/GlobalPos; readGlobalPos h method_44117 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writerIndex h method_52990 + p 1 writerIndex + m (II)Lnet/minecraft/network/FriendlyByteBuf; setIntLE h method_52991 + p 1 index + p 2 value + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/FriendlyByteBuf; writeBytes h method_52975 + p 1 source + m ()Lorg/joml/Vector3f; readVector3f i method_49069 + m (I)Lnet/minecraft/network/FriendlyByteBuf; ensureWritable i method_52992 + p 1 size + m (II)Lnet/minecraft/network/FriendlyByteBuf; setChar i method_52993 + p 1 index + p 2 value + m ()Lorg/joml/Quaternionf; readQuaternion j method_49070 + m (I)Lnet/minecraft/network/FriendlyByteBuf; skipBytes j method_52994 + p 1 length + m (II)Lnet/minecraft/network/FriendlyByteBuf; setZero j method_52995 + p 1 index + p 2 length + m ()Lnet/minecraft/world/phys/Vec3; readVec3 k method_52996 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeByte k method_52997 + p 1 value + m ()I readVarInt l method_10816 + c Reads a compressed int from the buffer. To do so it maximally reads 5 byte-sized chunks whose most significant bit dictates whether another byte should be read.\n\n@see #writeVarInt + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeShort l method_52998 + p 1 value + m ()J readVarLong m method_10792 + c Reads a compressed long from the buffer. To do so it maximally reads 10 byte-sized chunks whose most significant bit dictates whether another byte should be read.\n\n@see #writeVarLong + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeShortLE m method_52999 + p 1 value + m ()Ljava/util/UUID; readUUID n method_10790 + c Reads a UUID encoded as two longs from this buffer.\n\n@see #writeUUID + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeMedium n method_53000 + p 1 value + m ()Lnet/minecraft/nbt/CompoundTag; readNbt o method_10798 + c Reads a NBT CompoundTag from this buffer.\n{@code null} is a valid value and may be returned.\n\nThis method will read a maximum of 0x200000 bytes.\n\n@see #writeNbt\n@see #readAnySizeNbt\n@see #readNbt(NbtAccounter) + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeMediumLE o method_53001 + p 1 value + m ()Ljava/lang/String; readUtf p method_19772 + c Reads a String with a maximum length of {@code Short.MAX_VALUE}.\n\n@see #readUtf(int)\n@see #writeUtf + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeInt p method_53002 + p 1 value + m ()Lnet/minecraft/resources/ResourceLocation; readResourceLocation q method_10810 + c Read a ResourceLocation using its String representation.\n\n@see #writeResourceLocation + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeIntLE q method_53003 + p 1 value + m ()Lnet/minecraft/resources/ResourceKey; readRegistryKey r method_53006 + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeChar r method_53004 + p 1 value + m ()Ljava/util/Date; readDate s method_10802 + c Read a timestamp as milliseconds since the unix epoch.\n\n@see #writeDate + m (I)Lnet/minecraft/network/FriendlyByteBuf; writeZero s method_53005 + p 1 length + m ()Ljava/time/Instant; readInstant t method_44118 + m (I)Lnet/minecraft/network/FriendlyByteBuf; retain t method_53007 + p 1 increment + m ()Ljava/security/PublicKey; readPublicKey u method_44119 + m ()Lnet/minecraft/world/phys/BlockHitResult; readBlockHitResult v method_17814 + c Read a BlockHitResult.\n\n@see #writeBlockHitResult + m ()Ljava/util/BitSet; readBitSet w method_33558 + c Read a BitSet as a long[].\n\n@see #writeBitSet + m ()Lnet/minecraft/network/FriendlyByteBuf; clear x method_52931 + m ()Lnet/minecraft/network/FriendlyByteBuf; markReaderIndex y method_52932 + m ()Lnet/minecraft/network/FriendlyByteBuf; resetReaderIndex z method_52933 + m (Lio/netty/buffer/ByteBuf;)V + p 1 source + m ()V +c net/minecraft/network/HandlerNames vx net/minecraft/class_9126 + f Ljava/lang/String; DECOMPRESS a field_48518 + f Ljava/lang/String; COMPRESS b field_48519 + f Ljava/lang/String; DECODER c field_48520 + f Ljava/lang/String; ENCODER d field_48521 + f Ljava/lang/String; INBOUND_CONFIG e field_48522 + f Ljava/lang/String; OUTBOUND_CONFIG f field_48523 + f Ljava/lang/String; SPLITTER g field_48524 + f Ljava/lang/String; PREPENDER h field_48525 + f Ljava/lang/String; DECRYPT i field_48526 + f Ljava/lang/String; ENCRYPT j field_48527 + f Ljava/lang/String; UNBUNDLER k field_48528 + f Ljava/lang/String; BUNDLER l field_48529 + f Ljava/lang/String; PACKET_HANDLER m field_48530 + f Ljava/lang/String; TIMEOUT n field_48531 + f Ljava/lang/String; LEGACY_QUERY o field_48532 + f Ljava/lang/String; LATENCY p field_48533 + m ()V +c net/minecraft/network/MonitorFrameDecoder vy net/minecraft/class_9680 + f Lnet/minecraft/network/BandwidthDebugMonitor; monitor a field_51500 + m (Lnet/minecraft/network/BandwidthDebugMonitor;)V + p 1 monitor +c net/minecraft/network/NoOpFrameDecoder vz net/minecraft/class_9681 + m ()V +c net/minecraft/network/NoOpFrameEncoder wa net/minecraft/class_9682 + m ()V +c net/minecraft/network/PacketBundlePacker wb net/minecraft/class_8035 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo a field_48534 + f Lnet/minecraft/network/protocol/BundlerInfo$Bundler; currentBundler b field_41869 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Ljava/util/List;)V decode a method_48318 + p 1 context + p 2 packet + m (Lnet/minecraft/network/protocol/Packet;)V verifyNonTerminalPacket a method_56346 + p 0 packet + m (Lnet/minecraft/network/protocol/BundlerInfo;)V + p 1 bundlerInfo +c net/minecraft/network/PacketBundleUnpacker wc net/minecraft/class_8036 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo a field_48535 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Ljava/util/List;)V encode a method_48319 + p 1 context + p 2 packet + m (Lnet/minecraft/network/protocol/BundlerInfo;)V + p 1 bundlerInfo +c net/minecraft/network/PacketDecoder wd net/minecraft/class_2543 + c Main netty packet decoder. Reads the packet ID as a VarInt and creates the corresponding packet\nbased on the current {@link ConnectionProtocol}. + f Lorg/slf4j/Logger; LOGGER a field_11715 + f Lnet/minecraft/network/ProtocolInfo; protocolInfo b field_48536 + m (Lnet/minecraft/network/ProtocolInfo;)V + p 1 protocolInfo + m ()V +c net/minecraft/network/PacketEncoder we net/minecraft/class_2545 + c Main netty packet encoder. Writes the packet ID as a VarInt based on the current {@link ConnectionProtocol} as well as the packet's data. + f Lorg/slf4j/Logger; LOGGER a field_11721 + f Lnet/minecraft/network/ProtocolInfo; protocolInfo b field_48537 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;Lio/netty/buffer/ByteBuf;)V encode a method_10838 + m (Lnet/minecraft/network/ProtocolInfo;)V + p 1 protocolInfo + m ()V +c net/minecraft/network/PacketListener wf net/minecraft/class_2547 + c Describes how packets are handled. There are various implementations of this class for each possible protocol (e.g. PLAY, CLIENTBOUND; PLAY, SERVERBOUND; etc.) + m ()Lnet/minecraft/network/protocol/PacketFlow; flow a method_52895 + m (Lnet/minecraft/CrashReport;)V fillCrashReport a method_55622 + p 1 crashReport + m (Lnet/minecraft/CrashReport;Lnet/minecraft/CrashReportCategory;)V fillListenerSpecificCrashDetails a method_55597 + p 1 crashReport + p 2 category + m (Lnet/minecraft/network/DisconnectionDetails;)V onDisconnect a method_10839 + p 1 details + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)Lnet/minecraft/network/DisconnectionDetails; createDisconnectionInfo a method_60881 + p 1 reason + p 2 error + m (Lnet/minecraft/network/protocol/Packet;)Z shouldHandleMessage a method_52413 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Ljava/lang/Exception;)V onPacketError a method_59807 + p 1 packet + p 2 exception + m ()Lnet/minecraft/network/ConnectionProtocol; protocol b method_52280 + m ()Z isAcceptingMessages c method_48106 + m ()Ljava/lang/String; method_55623 d method_55623 + m ()Ljava/lang/String; method_55624 e method_55624 +c net/minecraft/network/PacketSendListener wg net/minecraft/class_7648 + m ()V onSuccess a method_45083 + m (Ljava/lang/Runnable;)Lnet/minecraft/network/PacketSendListener; thenRun a method_45084 + p 0 onSuccessOrFailure + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/PacketSendListener; exceptionallySend a method_45085 + p 0 exceptionalPacketSupplier + m ()Lnet/minecraft/network/protocol/Packet; onFailure b method_45086 +c net/minecraft/network/PacketSendListener$1 wg$1 net/minecraft/class_7648$1 + f Ljava/lang/Runnable; val$runnable a field_39939 + m (Ljava/lang/Runnable;)V +c net/minecraft/network/PacketSendListener$2 wg$2 net/minecraft/class_7648$2 + f Ljava/util/function/Supplier; val$handler a field_39940 + m (Ljava/util/function/Supplier;)V +c net/minecraft/network/ProtocolInfo wh net/minecraft/class_9127 + m ()Lnet/minecraft/network/ConnectionProtocol; id a comp_2234 + m ()Lnet/minecraft/network/protocol/PacketFlow; flow b comp_2235 + m ()Lnet/minecraft/network/codec/StreamCodec; codec c comp_2236 + m ()Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d comp_2237 +c net/minecraft/network/ProtocolInfo$Unbound wh$a net/minecraft/class_9127$class_9128 + m ()Lnet/minecraft/network/ConnectionProtocol; id a method_61106 + m (Ljava/util/function/Function;)Lnet/minecraft/network/ProtocolInfo; bind a method_61107 + p 1 bufferFactory + m (Lnet/minecraft/network/ProtocolInfo$Unbound$PacketVisitor;)V listPackets a method_61108 + p 1 visitor + m ()Lnet/minecraft/network/protocol/PacketFlow; flow b method_61109 +c net/minecraft/network/ProtocolInfo$Unbound$PacketVisitor wh$a$a net/minecraft/class_9127$class_9128$class_9828 +c net/minecraft/network/ProtocolSwapHandler wi net/minecraft/class_8700 + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V handleInboundTerminalPacket a method_56347 + p 0 context + p 1 packet + m (Lio/netty/channel/ChannelHandlerContext;Lnet/minecraft/network/protocol/Packet;)V handleOutboundTerminalPacket b method_56348 + p 0 context + p 1 packet +c net/minecraft/network/RateKickingConnection wj net/minecraft/class_5472 + c Variant of {@link Connection} that monitors the amount of received packets and disables receiving if the set limit is exceeded. + f Lorg/slf4j/Logger; LOGGER h field_26342 + f Lnet/minecraft/network/chat/Component; EXCEED_REASON i field_26343 + f I rateLimitPacketsPerSecond j field_26344 + m ()V method_30618 q method_30618 + m (I)V + p 1 rateLimitPacketsPerSecond + m ()V +c net/minecraft/network/RegistryFriendlyByteBuf wk net/minecraft/class_9129 + f Lnet/minecraft/core/RegistryAccess; registryAccess d field_48538 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess G method_56349 + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/function/Function; decorator a method_56350 + p 0 registry + m (Lnet/minecraft/core/RegistryAccess;Lio/netty/buffer/ByteBuf;)Lnet/minecraft/network/RegistryFriendlyByteBuf; method_56351 a method_56351 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/core/RegistryAccess;)V + p 1 source + p 2 registryAccess +c net/minecraft/network/ServerboundPacketListener wl net/minecraft/class_8701 +c net/minecraft/network/SkipPacketException wm net/minecraft/class_2548 + c Used to signify that a packet encoding error is not fatal. If a packet fails to encode, but {@link net.minecraft.network.protocol.Packet#isSkippable} returns true, then this exception is thrown instead and {@link Connection} will log a message instead of closing the connection. + m (Ljava/lang/Throwable;)V + p 1 cause +c net/minecraft/network/TickablePacketListener wn net/minecraft/class_7633 + m ()V tick d method_18784 +c net/minecraft/network/UnconfiguredPipelineHandler wo net/minecraft/class_9130 + m (Lio/netty/channel/ChannelInboundHandler;)Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask; setupInboundHandler a method_56352 + p 0 handler + m (Lio/netty/channel/ChannelInboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56353 a method_56353 + m (Lio/netty/channel/ChannelOutboundHandler;)Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask; setupOutboundHandler a method_56354 + p 0 handler + m (Lio/netty/channel/ChannelOutboundHandler;Lio/netty/channel/ChannelHandlerContext;)V method_56355 a method_56355 + m (Lnet/minecraft/network/ProtocolInfo;)Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask; setupInboundProtocol a method_56356 + p 0 protocolInfo + m (Lnet/minecraft/network/ProtocolInfo;)Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask; setupOutboundProtocol b method_56357 + p 0 protocolInfo + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$Inbound wo$a net/minecraft/class_9130$class_9131 + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask wo$b net/minecraft/class_9130$class_9132 + m (Lnet/minecraft/network/UnconfiguredPipelineHandler$InboundConfigurationTask;Lio/netty/channel/ChannelHandlerContext;)V method_56358 a method_56358 +c net/minecraft/network/UnconfiguredPipelineHandler$Outbound wo$c net/minecraft/class_9130$class_9133 + m ()V +c net/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask wo$d net/minecraft/class_9130$class_9134 + m (Lnet/minecraft/network/UnconfiguredPipelineHandler$OutboundConfigurationTask;Lio/netty/channel/ChannelHandlerContext;)V method_56359 a method_56359 +c net/minecraft/network/Utf8String wp net/minecraft/class_8702 + m (Lio/netty/buffer/ByteBuf;I)Ljava/lang/String; read a method_53012 + p 0 buffer + p 1 maxLength + m (Lio/netty/buffer/ByteBuf;Ljava/lang/CharSequence;I)V write a method_53013 + p 0 buffer + p 1 string + p 2 maxLength + m ()V +c net/minecraft/network/VarInt wq net/minecraft/class_8703 + f I MAX_VARINT_SIZE a field_45682 + f I DATA_BITS_MASK b field_45683 + f I CONTINUATION_BIT_MASK c field_45684 + f I DATA_BITS_PER_BYTE d field_45685 + m (B)Z hasContinuationBit a method_53014 + p 0 data + m (I)I getByteSize a method_53015 + p 0 data + m (Lio/netty/buffer/ByteBuf;)I read a method_53016 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;I)Lio/netty/buffer/ByteBuf; write a method_53017 + p 0 buffer + p 1 value + m ()V +c net/minecraft/network/VarLong wr net/minecraft/class_8704 + f I MAX_VARLONG_SIZE a field_45686 + f I DATA_BITS_MASK b field_45687 + f I CONTINUATION_BIT_MASK c field_45688 + f I DATA_BITS_PER_BYTE d field_45689 + m (B)Z hasContinuationBit a method_53018 + p 0 data + m (J)I getByteSize a method_53019 + p 0 data + m (Lio/netty/buffer/ByteBuf;)J read a method_53020 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;J)Lio/netty/buffer/ByteBuf; write a method_53021 + p 0 buffer + p 1 value + m ()V +c net/minecraft/network/Varint21FrameDecoder ws net/minecraft/class_2550 + c Counterpart to {@link Varint21LengthFieldPrepender}. Decodes each frame ("packet") by first reading its length and then its data. + f I MAX_VARINT21_BYTES a field_45690 + f Lio/netty/buffer/ByteBuf; helperBuf b field_45691 + f Lnet/minecraft/network/BandwidthDebugMonitor; monitor c field_45956 + m (Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)Z copyVarint a method_53022 + p 0 in + p 1 out + m (Lnet/minecraft/network/BandwidthDebugMonitor;)V + p 1 monitor +c net/minecraft/network/Varint21LengthFieldPrepender wt net/minecraft/class_2552 + c Prepends each frame ("packet") with its length encoded as a VarInt. Every frame's length must fit within a 3-byte VarInt.\n\n@see Varint21FrameDecoder + f I MAX_VARINT21_BYTES a field_33288 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;Lio/netty/buffer/ByteBuf;)V encode a method_10840 + p 1 context + p 2 encoder + p 3 decoder + m ()V +c net/minecraft/network/chat/ChatDecorator wu net/minecraft/class_7492 + f Lnet/minecraft/network/chat/ChatDecorator; PLAIN a field_39384 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_44303 a method_44303 + m ()V +c net/minecraft/network/chat/ChatType wv net/minecraft/class_2556 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_39227 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51969 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_51970 + f Lnet/minecraft/network/chat/ChatTypeDecoration; DEFAULT_CHAT_DECORATION d field_39677 + f Lnet/minecraft/resources/ResourceKey; CHAT e field_11737 + f Lnet/minecraft/resources/ResourceKey; SAY_COMMAND f field_39228 + f Lnet/minecraft/resources/ResourceKey; MSG_COMMAND_INCOMING g field_39799 + f Lnet/minecraft/resources/ResourceKey; MSG_COMMAND_OUTGOING h field_39800 + f Lnet/minecraft/resources/ResourceKey; TEAM_MSG_COMMAND_INCOMING i field_39881 + f Lnet/minecraft/resources/ResourceKey; TEAM_MSG_COMMAND_OUTGOING j field_39882 + f Lnet/minecraft/resources/ResourceKey; EMOTE_COMMAND k field_39231 + f Lnet/minecraft/network/chat/ChatTypeDecoration; chat l comp_792 + f Lnet/minecraft/network/chat/ChatTypeDecoration; narration m comp_794 + m ()Lnet/minecraft/network/chat/ChatTypeDecoration; chat a comp_792 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44832 + p 0 chatTypeKey + p 1 entity + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44833 + p 0 chatTypeKey + p 1 source + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/ChatType$Bound; bind a method_44834 + p 0 chatTypeKey + p 1 registryAccess + p 2 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43843 a method_43843 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43845 + p 0 key + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43844 + p 0 context + m ()Lnet/minecraft/network/chat/ChatTypeDecoration; narration b comp_794 + m (Lnet/minecraft/network/chat/ChatTypeDecoration;Lnet/minecraft/network/chat/ChatTypeDecoration;)V + m ()V +c net/minecraft/network/chat/ChatType$Bound wv$a net/minecraft/class_2556$class_7602 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48776 + f Lnet/minecraft/core/Holder; chatType b comp_919 + f Lnet/minecraft/network/chat/Component; name c comp_920 + f Ljava/util/Optional; targetName d comp_921 + m ()Lnet/minecraft/core/Holder; chatType a comp_919 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorate a method_44837 + p 1 content + m ()Lnet/minecraft/network/chat/Component; name b comp_920 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorateNarration b method_44838 + p 1 content + m ()Ljava/util/Optional; targetName c comp_921 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/ChatType$Bound; withTargetName c method_44839 + p 1 targetName + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;)V + p 1 chatType + p 2 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/chat/ChatTypeDecoration ww net/minecraft/class_7463 + f Lcom/mojang/serialization/Codec; CODEC a field_39219 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51971 + f Ljava/lang/String; translationKey c comp_788 + f Ljava/util/List; parameters d comp_789 + f Lnet/minecraft/network/chat/Style; style e comp_790 + m ()Ljava/lang/String; translationKey a comp_788 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43830 a method_43830 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; withSender a method_43831 + p 0 translationKey + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; decorate a method_43832 + p 1 content + p 2 boundChatType + m ()Ljava/util/List; parameters b comp_789 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; incomingDirectMessage b method_44779 + p 0 translationKey + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)[Lnet/minecraft/network/chat/Component; resolveParameters b method_43834 + p 1 content + p 2 boundChatType + m ()Lnet/minecraft/network/chat/Style; style c comp_790 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; outgoingDirectMessage c method_44780 + p 0 translationKey + m (Ljava/lang/String;)Lnet/minecraft/network/chat/ChatTypeDecoration; teamMessage d method_43835 + p 0 translationKey + m (Ljava/lang/String;Ljava/util/List;Lnet/minecraft/network/chat/Style;)V + m ()V +c net/minecraft/network/chat/ChatTypeDecoration$Parameter ww$a net/minecraft/class_7463$class_7464 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; SENDER a field_39220 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; TARGET b field_39221 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; CONTENT c field_39222 + f Lcom/mojang/serialization/Codec; CODEC d field_39223 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_51972 + f Ljava/util/function/IntFunction; BY_ID f field_51973 + f I id g field_51974 + f Ljava/lang/String; name h field_39224 + f Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector; selector i field_39225 + f [Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; $VALUES j field_39226 + m ()[Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter; $values a method_43836 + m (Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter;)I method_60652 a method_60652 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; select a method_43837 + p 1 content + p 2 boundChatType + m (Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter;)I method_60653 b method_60653 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43838 b method_43838 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43839 c method_43839 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)Lnet/minecraft/network/chat/Component; method_43840 d method_43840 + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector;)V + p 3 id + p 4 name + p 5 selector + m ()V +c net/minecraft/network/chat/ChatTypeDecoration$Parameter$Selector ww$a$a net/minecraft/class_7463$class_7464$class_7465 +c net/minecraft/network/chat/ClickEvent wx net/minecraft/class_2558 + f Lcom/mojang/serialization/Codec; CODEC a field_46594 + f Lnet/minecraft/network/chat/ClickEvent$Action; action b field_11741 + f Ljava/lang/String; value c field_11740 + m ()Lnet/minecraft/network/chat/ClickEvent$Action; getAction a method_10845 + c Gets the action to perform when this event is raised. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54149 a method_54149 + m (Lnet/minecraft/network/chat/ClickEvent;)Ljava/lang/String; method_54150 a method_54150 + m ()Ljava/lang/String; getValue b method_10844 + c Gets the value to perform the action on when this event is raised. For example, if the action is "open URL", this would be the URL to open. + m (Lnet/minecraft/network/chat/ClickEvent;)Lnet/minecraft/network/chat/ClickEvent$Action; method_54151 b method_54151 + m (Lnet/minecraft/network/chat/ClickEvent$Action;Ljava/lang/String;)V + p 1 action + p 2 value + m ()V +c net/minecraft/network/chat/ClickEvent$Action wx$a net/minecraft/class_2558$class_2559 + f Lnet/minecraft/network/chat/ClickEvent$Action; OPEN_URL a field_11749 + f Lnet/minecraft/network/chat/ClickEvent$Action; OPEN_FILE b field_11746 + f Lnet/minecraft/network/chat/ClickEvent$Action; RUN_COMMAND c field_11750 + f Lnet/minecraft/network/chat/ClickEvent$Action; SUGGEST_COMMAND d field_11745 + f Lnet/minecraft/network/chat/ClickEvent$Action; CHANGE_PAGE e field_11748 + f Lnet/minecraft/network/chat/ClickEvent$Action; COPY_TO_CLIPBOARD f field_21462 + f Lcom/mojang/serialization/MapCodec; UNSAFE_CODEC g field_46595 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46596 + f Z allowFromServer i field_11744 + f Ljava/lang/String; name j field_11742 + c The canonical name used to refer to this action. + f [Lnet/minecraft/network/chat/ClickEvent$Action; $VALUES k field_11747 + m ()Z isAllowedFromServer a method_10847 + c Indicates whether this event can be run from chat text. + m (Lnet/minecraft/network/chat/ClickEvent$Action;)Lcom/mojang/serialization/DataResult; filterForSerialization a method_54152 + p 0 action + m ()[Lnet/minecraft/network/chat/ClickEvent$Action; $values b method_36945 + m (Lnet/minecraft/network/chat/ClickEvent$Action;)Ljava/lang/String; method_54153 b method_54153 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 name + p 4 allowFromServer + m ()V +c net/minecraft/network/chat/CommonComponents wy net/minecraft/class_5244 + f Lnet/minecraft/network/chat/Component; EMPTY a field_39003 + f Lnet/minecraft/network/chat/Component; OPTION_ON b field_24332 + f Lnet/minecraft/network/chat/Component; OPTION_OFF c field_24333 + f Lnet/minecraft/network/chat/Component; GUI_DONE d field_24334 + f Lnet/minecraft/network/chat/Component; GUI_CANCEL e field_24335 + f Lnet/minecraft/network/chat/Component; GUI_YES f field_24336 + f Lnet/minecraft/network/chat/Component; GUI_NO g field_24337 + f Lnet/minecraft/network/chat/Component; GUI_OK h field_44914 + f Lnet/minecraft/network/chat/Component; GUI_PROCEED i field_24338 + f Lnet/minecraft/network/chat/Component; GUI_CONTINUE j field_41873 + f Lnet/minecraft/network/chat/Component; GUI_BACK k field_24339 + f Lnet/minecraft/network/chat/Component; GUI_TO_TITLE l field_43109 + f Lnet/minecraft/network/chat/Component; GUI_ACKNOWLEDGE m field_39742 + f Lnet/minecraft/network/chat/Component; GUI_OPEN_IN_BROWSER n field_44968 + f Lnet/minecraft/network/chat/Component; GUI_COPY_LINK_TO_CLIPBOARD o field_44969 + f Lnet/minecraft/network/chat/Component; GUI_DISCONNECT p field_45692 + f Lnet/minecraft/network/chat/Component; TRANSFER_CONNECT_FAILED q field_48539 + f Lnet/minecraft/network/chat/Component; CONNECT_FAILED r field_26625 + f Lnet/minecraft/network/chat/Component; NEW_LINE s field_33849 + f Lnet/minecraft/network/chat/Component; NARRATION_SEPARATOR t field_33850 + f Lnet/minecraft/network/chat/Component; ELLIPSIS u field_39678 + f Lnet/minecraft/network/chat/Component; SPACE v field_41874 + m ()Lnet/minecraft/network/chat/MutableComponent; space a method_48320 + m (J)Lnet/minecraft/network/chat/MutableComponent; days a method_44682 + p 0 days + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; joinLines a method_37109 + p 0 lines + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; optionNameValue a method_32700 + p 0 caption + p 1 valueMessage + m (Lnet/minecraft/network/chat/Component;Z)Lnet/minecraft/network/chat/MutableComponent; optionStatus a method_30619 + p 0 message + p 1 composed + m (Z)Lnet/minecraft/network/chat/Component; optionStatus a method_36134 + p 0 isEnabled + m ([Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; joinForNarration a method_37111 + p 0 components + m (J)Lnet/minecraft/network/chat/MutableComponent; hours b method_44683 + p 0 hours + m ([Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; joinLines b method_37110 + p 0 lines + m (J)Lnet/minecraft/network/chat/MutableComponent; minutes c method_44684 + p 0 minutes + m ()V + m ()V +c net/minecraft/network/chat/Component wz net/minecraft/class_2561 + m ()Lnet/minecraft/network/chat/Style; getStyle a method_10866 + c Gets the style of this component. + m (I)Ljava/lang/String; getString a method_10858 + c Get the plain text of this FormattedText, without any styling or formatting codes, limited to {@code maxLength} characters. + p 1 maxLength + m (ILjava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_27655 a method_27655 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; translationArg a method_54154 + p 0 location + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/network/chat/Component; translationArg a method_54155 + p 0 message + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/chat/Component; translationArg a method_54156 + p 0 chunkPos + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; nullToEmpty a method_30163 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; translatableWithFallback a method_48321 + p 0 key + p 1 fallback + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatableWithFallback a method_48322 + p 0 key + p 1 fallback + p 2 args + m (Ljava/lang/String;Ljava/util/Optional;)Lnet/minecraft/network/chat/MutableComponent; selector a method_43467 + p 0 pattern + p 1 separator + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)Lnet/minecraft/network/chat/MutableComponent; nbt a method_43468 + p 0 nbtPathPattern + p 1 interpreting + p 2 separator + p 3 dataSource + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatable a method_43469 + p 0 key + p 1 args + m (Ljava/net/URI;)Lnet/minecraft/network/chat/Component; translationArg a method_61110 + p 0 uri + m (Ljava/util/Date;)Lnet/minecraft/network/chat/Component; translationArg a method_54157 + p 0 date + m (Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_36135 a method_36135 + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/Component; translationArg a method_54158 + p 0 uuid + m (Lnet/minecraft/network/chat/Component;)Z contains a method_44745 + p 1 other + m (Lnet/minecraft/network/chat/Style;)Ljava/util/List; toFlatList a method_36136 + p 1 style + m ()Lnet/minecraft/network/chat/ComponentContents; getContents b method_10851 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; literal b method_43470 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; score b method_43466 + p 0 name + p 1 objective + m (Ljava/lang/String;[Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; translatableEscape b method_54159 + p 0 key + p 1 args + m ()Ljava/util/List; getSiblings c method_10855 + c Gets the sibling components of this one. + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; translatable c method_43471 + p 0 key + m ()Ljava/lang/String; tryCollapseToString d method_54160 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; keybind d method_43472 + p 0 name + m ()Lnet/minecraft/network/chat/MutableComponent; plainCopy e method_27662 + c Creates a copy of this component, losing any style or siblings. + m ()Lnet/minecraft/network/chat/MutableComponent; copy f method_27661 + c Creates a copy of this component and also copies the style and siblings. Note that the siblings are copied shallowly, meaning the siblings themselves are not copied. + m ()Lnet/minecraft/util/FormattedCharSequence; getVisualOrderText g method_30937 + m ()Ljava/util/List; toFlatList h method_44746 + m ()Lnet/minecraft/network/chat/MutableComponent; empty i method_43473 +c net/minecraft/network/chat/Component$Serializer wz$a net/minecraft/class_2561$class_2562 + f Lcom/google/gson/Gson; GSON a field_11754 + m (Lcom/google/gson/JsonElement;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJson a method_10872 + p 0 json + p 1 registries + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJson a method_10877 + p 0 json + p 1 registries + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Ljava/lang/String; toJson a method_10867 + p 0 component + p 1 registries + m (Lcom/google/gson/JsonElement;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; deserialize b method_10871 + p 0 json + p 1 provider + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/MutableComponent; fromJsonLenient b method_10873 + p 0 json + p 1 registries + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Lcom/google/gson/JsonElement; serialize b method_10874 + p 0 component + p 1 provider + m ()V + m ()V +c net/minecraft/network/chat/Component$SerializerAdapter wz$b net/minecraft/class_2561$class_8822 + f Lnet/minecraft/core/HolderLookup$Provider; registries a field_49665 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/network/chat/MutableComponent; deserialize a method_54161 + p 1 json + p 2 typeOfT + p 3 context + m (Lnet/minecraft/network/chat/Component;Ljava/lang/reflect/Type;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement; serialize a method_54162 + p 1 src + p 2 typeOfSrc + p 3 context + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries +c net/minecraft/network/chat/ComponentContents xa net/minecraft/class_7417 + m ()Lnet/minecraft/network/chat/ComponentContents$Type; type a method_54163 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/MutableComponent; resolve a method_10890 + p 1 nbtPathPattern + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/network/chat/FormattedText$ContentConsumer;)Ljava/util/Optional; visit a method_27659 + p 1 contentConsumer + m (Lnet/minecraft/network/chat/FormattedText$StyledContentConsumer;Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; visit a method_27660 + p 1 styledContentConsumer + p 2 style +c net/minecraft/network/chat/ComponentContents$Type xa$a net/minecraft/class_7417$class_8823 + f Lcom/mojang/serialization/MapCodec; codec a comp_1983 + f Ljava/lang/String; id b comp_1984 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1983 + m ()Ljava/lang/String; id b comp_1984 + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/String;)V +c net/minecraft/network/chat/ComponentSerialization xb net/minecraft/class_8824 + f Lcom/mojang/serialization/Codec; CODEC a field_46597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48540 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC c field_48985 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_STREAM_CODEC d field_49666 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_OPTIONAL_STREAM_CODEC e field_49667 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_CONTEXT_FREE_STREAM_CODEC f field_49668 + f Lcom/mojang/serialization/Codec; FLAT_CODEC g field_46598 + m (I)Lcom/mojang/serialization/Codec; flatCodec a method_57973 + p 0 maxSize + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/network/chat/Component; method_54165 a method_54165 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; createCodec a method_54166 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54167 a method_54167 + m (Ljava/util/List;)Lnet/minecraft/network/chat/MutableComponent; createFromList a method_54169 + p 0 components + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/MapEncoder; method_54171 a method_54171 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/datafixers/util/Either; method_54172 a method_54172 + m ([Lnet/minecraft/util/StringRepresentable;)[Lnet/minecraft/util/StringRepresentable; method_54173 a method_54173 + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; createLegacyComponentMatcher a method_54174 + p 0 types + p 1 codecGetter + p 2 typeGetter + p 3 typeFieldName + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/network/chat/Component; method_54175 b method_54175 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_54177 b method_54177 + m ()V + m ()V +c net/minecraft/network/chat/ComponentSerialization$1 xb$1 net/minecraft/class_8824$1 + f Lcom/mojang/serialization/Codec; val$stringCodec a field_49669 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/network/chat/Component;)Lcom/mojang/datafixers/util/Pair; method_57974 a method_57974 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/DynamicOps;Lcom/google/gson/JsonElement;)Lcom/mojang/serialization/DataResult; method_57975 a method_57975 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DynamicOps; asJsonOps a method_57976 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_57977 a method_57977 + m (Lnet/minecraft/network/chat/Component;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_57978 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/network/chat/ComponentSerialization$FuzzyCodec xb$a net/minecraft/class_8824$class_8825 + f Ljava/util/List; codecs a field_46599 + f Ljava/util/function/Function; encoderGetter b field_46600 + m ()Ljava/lang/String; method_54180 a method_54180 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapCodec;)Ljava/util/stream/Stream; method_54181 a method_54181 + m (Ljava/util/List;Ljava/util/function/Function;)V + p 1 codecs + p 2 encoderGetter +c net/minecraft/network/chat/ComponentSerialization$StrictEither xb$b net/minecraft/class_8824$class_8912 + f Ljava/lang/String; typeFieldName a field_46914 + f Lcom/mojang/serialization/MapCodec; typed b field_46915 + f Lcom/mojang/serialization/MapCodec; fuzzy c field_46916 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)V + p 1 typeFieldName + p 2 typed + p 3 fuzzy +c net/minecraft/network/chat/ComponentUtils xc net/minecraft/class_2564 + f Ljava/lang/String; DEFAULT_SEPARATOR_TEXT a field_33536 + f Lnet/minecraft/network/chat/Component; DEFAULT_SEPARATOR b field_33537 + f Lnet/minecraft/network/chat/Component; DEFAULT_NO_STYLE_SEPARATOR c field_33538 + m (Lcom/mojang/brigadier/Message;)Lnet/minecraft/network/chat/Component; fromMessage a method_10883 + p 0 message + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Optional;Lnet/minecraft/world/entity/Entity;I)Ljava/util/Optional; updateForEntity a method_36330 + p 0 commandSourceStack + p 1 optionalComponent + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/MutableComponent; updateForEntity a method_10881 + p 0 commandSourceStack + p 1 component + p 2 entity + p 3 recursionDepth + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Style;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/network/chat/Style; resolveStyle a method_27663 + p 0 commandSourceStack + p 1 style + p 2 entity + p 3 recursionDepth + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; copyOnClickText a method_47523 + p 0 text + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_47524 a method_47524 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; formatList a method_10888 + p 0 elements + m (Ljava/util/Collection;Ljava/util/Optional;Ljava/util/function/Function;)Lnet/minecraft/network/chat/MutableComponent; formatList a method_36331 + p 0 elements + p 1 optionalSeparator + p 2 componentExtractor + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/network/chat/Component; formatAndSortList a method_10887 + p 0 elements + p 1 componentExtractor + m (Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; formatList a method_37112 + p 0 elements + p 1 separator + m (Ljava/util/Collection;Lnet/minecraft/network/chat/Component;Ljava/util/function/Function;)Lnet/minecraft/network/chat/MutableComponent; formatList a method_36332 + p 0 elements + p 1 separator + p 2 componentExtractor + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; wrapInSquareBrackets a method_10885 + c Wraps the text with square brackets. + p 0 toWrap + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; mergeStyles a method_10889 + c Merge the component's styles with the given Style. + p 0 component + p 1 style + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_10886 b method_10886 + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/network/chat/Component; formatList b method_10884 + p 0 elements + p 1 componentExtractor + m (Lnet/minecraft/network/chat/Component;)Z isTranslationResolvable b method_43476 + p 0 component + m ()V + m ()V +c net/minecraft/network/chat/FilterMask xd net/minecraft/class_7649 + f Lcom/mojang/serialization/Codec; CODEC a field_40837 + f Lnet/minecraft/network/chat/FilterMask; FULLY_FILTERED b field_39941 + f Lnet/minecraft/network/chat/FilterMask; PASS_THROUGH c field_39942 + f Lnet/minecraft/network/chat/Style; FILTERED_STYLE d field_40674 + f Lcom/mojang/serialization/MapCodec; PASS_THROUGH_CODEC e field_40838 + f Lcom/mojang/serialization/MapCodec; FULLY_FILTERED_CODEC f field_40839 + f Lcom/mojang/serialization/MapCodec; PARTIALLY_FILTERED_CODEC g field_40840 + f C HASH h field_39943 + f Ljava/util/BitSet; mask i field_39944 + f Lnet/minecraft/network/chat/FilterMask$Type; type j field_39945 + m ()Z isEmpty a method_45087 + m (I)V setFiltered a method_45088 + p 1 bitIndex + m (Ljava/lang/String;)Ljava/lang/String; apply a method_45089 + p 1 text + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/FilterMask; read a method_45090 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/FilterMask;)V write a method_45091 + p 0 buffer + p 1 mask + m ()Z isFullyFiltered b method_45093 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; applyWithFormatting b method_46256 + p 1 text + m ()Lnet/minecraft/network/chat/FilterMask$Type; type c method_46600 + m ()Ljava/util/BitSet; mask d method_46601 + m (Ljava/util/BitSet;Lnet/minecraft/network/chat/FilterMask$Type;)V + p 1 mask + p 2 type + m (Ljava/util/BitSet;)V + p 1 mask + m (I)V + p 1 size + m ()V +c net/minecraft/network/chat/FilterMask$Type xd$a net/minecraft/class_7649$class_7650 + f Lnet/minecraft/network/chat/FilterMask$Type; PASS_THROUGH a field_39947 + f Lnet/minecraft/network/chat/FilterMask$Type; FULLY_FILTERED b field_39948 + f Lnet/minecraft/network/chat/FilterMask$Type; PARTIALLY_FILTERED c field_39949 + f Ljava/lang/String; serializedName d field_40841 + f Ljava/util/function/Supplier; codec e field_40842 + f [Lnet/minecraft/network/chat/FilterMask$Type; $VALUES f field_39950 + m ()Lcom/mojang/serialization/MapCodec; codec a method_46602 + m ()Lcom/mojang/serialization/MapCodec; method_46603 b method_46603 + m ()Lcom/mojang/serialization/MapCodec; method_46604 d method_46604 + m ()Lcom/mojang/serialization/MapCodec; method_46605 e method_46605 + m ()[Lnet/minecraft/network/chat/FilterMask$Type; $values f method_45094 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 serializedName + p 4 codec + m ()V +c net/minecraft/network/chat/FormattedText xe net/minecraft/class_5348 + f Ljava/util/Optional; STOP_ITERATION a field_25309 + f Lnet/minecraft/network/chat/FormattedText; EMPTY b field_25310 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; of a method_29431 + p 0 text + p 1 style + m (Ljava/lang/StringBuilder;Ljava/lang/String;)Ljava/util/Optional; method_30067 a method_30067 + m (Ljava/util/List;)Lnet/minecraft/network/chat/FormattedText; composite a method_29432 + p 0 elements + m (Lnet/minecraft/network/chat/FormattedText$ContentConsumer;)Ljava/util/Optional; visit a method_27657 + p 1 acceptor + m (Lnet/minecraft/network/chat/FormattedText$StyledContentConsumer;Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; visit a method_27658 + p 1 acceptor + p 2 style + m ([Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/network/chat/FormattedText; composite a method_29433 + p 0 elements + m (Ljava/lang/String;)Lnet/minecraft/network/chat/FormattedText; of e method_29430 + p 0 text + m ()V +c net/minecraft/network/chat/FormattedText$1 xe$1 net/minecraft/class_5348$1 + m ()V +c net/minecraft/network/chat/FormattedText$2 xe$2 net/minecraft/class_5348$2 + f Ljava/lang/String; val$text c field_25311 + m (Ljava/lang/String;)V +c net/minecraft/network/chat/FormattedText$3 xe$3 net/minecraft/class_5348$3 + f Ljava/lang/String; val$text c field_25312 + f Lnet/minecraft/network/chat/Style; val$style d field_25313 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)V +c net/minecraft/network/chat/FormattedText$4 xe$4 net/minecraft/class_5348$4 + f Ljava/util/List; val$parts c field_25314 + m (Ljava/util/List;)V +c net/minecraft/network/chat/FormattedText$ContentConsumer xe$a net/minecraft/class_5348$class_5245 +c net/minecraft/network/chat/FormattedText$StyledContentConsumer xe$b net/minecraft/class_5348$class_5246 +c net/minecraft/network/chat/HoverEvent xf net/minecraft/class_2568 + f Lcom/mojang/serialization/Codec; CODEC a field_46601 + f Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; event b field_46602 + m ()Lnet/minecraft/network/chat/HoverEvent$Action; getAction a method_10892 + c Gets the action to perform when this event is raised. + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Ljava/lang/Object; getValue a method_10891 + p 1 actionType + m (Lnet/minecraft/network/chat/HoverEvent;)Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; method_54184 a method_54184 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Ljava/lang/Object;)V + p 1 action + p 2 value + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;)V + p 1 event + m ()V +c net/minecraft/network/chat/HoverEvent$Action xf$a net/minecraft/class_2568$class_5247 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_TEXT a field_24342 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_ITEM b field_24343 + f Lnet/minecraft/network/chat/HoverEvent$Action; SHOW_ENTITY c field_24344 + f Lcom/mojang/serialization/Codec; UNSAFE_CODEC d field_46603 + f Lcom/mojang/serialization/Codec; CODEC e field_46604 + f Ljava/lang/String; name f field_24346 + f Z allowFromServer g field_24347 + f Lcom/mojang/serialization/MapCodec; codec h field_46605 + f Lcom/mojang/serialization/MapCodec; legacyCodec i field_46606 + m ()Z isAllowedFromServer a method_27667 + c Indicates whether this event can be run from chat text. + m (Ljava/lang/Object;)Ljava/lang/Object; cast a method_27676 + p 1 parameter + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; method_57979 a method_57979 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/DataResult; filterForSerialization a method_54186 + p 0 action + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;)Ljava/lang/Object; method_54187 a method_54187 + m ()Ljava/lang/String; method_54188 b method_54188 + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent; method_57980 b method_57980 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Ljava/lang/String; method_54190 b method_54190 + m ()[Lnet/minecraft/network/chat/HoverEvent$Action; method_54192 d method_54192 + m (Ljava/lang/String;ZLcom/mojang/serialization/Codec;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;)V + p 1 name + p 2 allowFromServer + p 3 codec + p 4 legacyConverter + m ()V +c net/minecraft/network/chat/HoverEvent$Action$1 xf$a$1 net/minecraft/class_2568$class_5247$1 + f Lnet/minecraft/network/chat/HoverEvent$LegacyConverter; val$legacyConverter a field_49670 + f Lnet/minecraft/network/chat/HoverEvent$Action; field_49671 b field_49671 + m ()Ljava/lang/String; method_57981 a method_57981 + m (Lcom/mojang/datafixers/util/Pair;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_57982 a method_57982 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_57983 a method_57983 + m (Lnet/minecraft/network/chat/HoverEvent$TypedHoverEvent;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_57984 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Lnet/minecraft/network/chat/HoverEvent$LegacyConverter;)V +c net/minecraft/network/chat/HoverEvent$EntityTooltipInfo xf$b net/minecraft/class_2568$class_5248 + f Lcom/mojang/serialization/Codec; CODEC a field_46607 + f Lnet/minecraft/world/entity/EntityType; type b field_24351 + f Ljava/util/UUID; id c field_24352 + f Ljava/util/Optional; name d field_24353 + f Ljava/util/List; linesCache e field_24354 + m ()Ljava/util/List; getTooltipLines a method_27682 + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo; method_57985 a method_57985 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54193 a method_54193 + m (Ljava/lang/Exception;)Ljava/lang/String; method_54194 a method_54194 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; legacyCreate a method_54195 + p 0 name + p 1 ops + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Ljava/util/Optional; method_54196 a method_54196 + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Ljava/util/UUID; method_54197 b method_54197 + m (Lnet/minecraft/network/chat/HoverEvent$EntityTooltipInfo;)Lnet/minecraft/world/entity/EntityType; method_54198 c method_54198 + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)V + p 1 type + p 2 id + p 3 name + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/UUID;Ljava/util/Optional;)V + p 1 type + p 2 id + p 3 name + m ()V +c net/minecraft/network/chat/HoverEvent$ItemStackInfo xf$c net/minecraft/class_2568$class_5249 + f Lcom/mojang/serialization/Codec; FULL_CODEC a field_46608 + f Lcom/mojang/serialization/Codec; CODEC b field_46609 + f Lcom/mojang/serialization/Codec; SIMPLE_CODEC c field_49672 + f Lnet/minecraft/core/Holder; item d field_24355 + f I count e field_24356 + f Lnet/minecraft/core/component/DataComponentPatch; components f field_49673 + f Lnet/minecraft/world/item/ItemStack; itemStack g field_24358 + m ()Lnet/minecraft/world/item/ItemStack; getItemStack a method_27683 + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Ljava/lang/String; method_54200 a method_54200 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/RegistryOps;)Lcom/mojang/serialization/DataResult; legacyCreate a method_54203 + p 0 name + p 1 ops + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPatch;)V + p 1 item + p 2 count + p 3 components + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 stack + m ()V +c net/minecraft/network/chat/HoverEvent$LegacyConverter xf$d net/minecraft/class_2568$class_9341 +c net/minecraft/network/chat/HoverEvent$TypedHoverEvent xf$e net/minecraft/class_2568$class_8826 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46610 + f Lcom/mojang/serialization/MapCodec; LEGACY_CODEC b field_46611 + f Lnet/minecraft/network/chat/HoverEvent$Action; action c comp_1985 + f Ljava/lang/Object; value d comp_1986 + m ()Lnet/minecraft/network/chat/HoverEvent$Action; action a comp_1985 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/MapCodec; method_54208 a method_54208 + m ()Ljava/lang/Object; value b comp_1986 + m (Lnet/minecraft/network/chat/HoverEvent$Action;)Lcom/mojang/serialization/MapCodec; method_54209 b method_54209 + m (Lnet/minecraft/network/chat/HoverEvent$Action;Ljava/lang/Object;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages xg net/minecraft/class_7635 + f Lcom/mojang/serialization/Codec; CODEC a field_40843 + f Lnet/minecraft/network/chat/LastSeenMessages; EMPTY b field_39883 + f I LAST_SEEN_MESSAGES_MAX_LENGTH c field_39884 + f Ljava/util/List; entries d comp_965 + m ()Ljava/util/List; entries a comp_965 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46257 + p 1 updaterOutput + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/LastSeenMessages$Packed; pack a method_46258 + p 1 signatureCache + m (Lnet/minecraft/network/chat/MessageSignatureCache;Lnet/minecraft/network/chat/MessageSignature;)Lnet/minecraft/network/chat/MessageSignature$Packed; method_46259 a method_46259 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages$Packed xg$a net/minecraft/class_7635$class_7815 + f Lnet/minecraft/network/chat/LastSeenMessages$Packed; EMPTY a field_40675 + f Ljava/util/List; entries b comp_1070 + m ()Ljava/util/List; entries a comp_1070 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_46260 + p 1 buffer + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46261 + p 1 signatureCache + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/chat/LastSeenMessages$Update xg$b net/minecraft/class_7635$class_7636 + f I offset a comp_1071 + f Ljava/util/BitSet; acknowledged b comp_1072 + m ()I offset a comp_1071 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44983 + p 1 buffer + m ()Ljava/util/BitSet; acknowledged b comp_1072 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILjava/util/BitSet;)V +c net/minecraft/network/chat/LastSeenMessagesTracker xh net/minecraft/class_7637 + f [Lnet/minecraft/network/chat/LastSeenTrackedEntry; trackedMessages a field_40676 + f I tail b field_40677 + f I offset c field_40678 + f Lnet/minecraft/network/chat/MessageSignature; lastTrackedMessage d field_40679 + m ()I getAndClearOffset a method_46262 + m (Lnet/minecraft/network/chat/LastSeenTrackedEntry;)V addEntry a method_46263 + p 1 entry + m (Lnet/minecraft/network/chat/MessageSignature;)V ignorePending a method_46264 + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignature;Z)Z addPending a method_46265 + p 1 signature + p 2 acknowledged + m ()Lnet/minecraft/network/chat/LastSeenMessagesTracker$Update; generateAndApplyUpdate b method_46266 + m ()I offset c method_46267 + m (I)V + p 1 size +c net/minecraft/network/chat/LastSeenMessagesTracker$Update xh$a net/minecraft/class_7637$class_7816 + f Lnet/minecraft/network/chat/LastSeenMessages; lastSeen a comp_1073 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; update b comp_1074 + m ()Lnet/minecraft/network/chat/LastSeenMessages; lastSeen a comp_1073 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; update b comp_1074 + m (Lnet/minecraft/network/chat/LastSeenMessages;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V +c net/minecraft/network/chat/LastSeenMessagesValidator xi net/minecraft/class_7638 + f I lastSeenCount a field_40680 + f Lit/unimi/dsi/fastutil/objects/ObjectList; trackedMessages b field_40681 + f Lnet/minecraft/network/chat/MessageSignature; lastPendingMessage c field_40682 + m ()I trackedMessagesCount a method_46268 + m (I)Z applyOffset a method_46269 + p 1 offset + m (Lnet/minecraft/network/chat/LastSeenMessages$Update;)Ljava/util/Optional; applyUpdate a method_46270 + p 1 lastSeenUpdater + m (Lnet/minecraft/network/chat/MessageSignature;)V addPending a method_44989 + p 1 signature + m (I)V + p 1 lastSeenCount +c net/minecraft/network/chat/LastSeenTrackedEntry xj net/minecraft/class_7817 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1075 + f Z pending b comp_1076 + m ()Lnet/minecraft/network/chat/LastSeenTrackedEntry; acknowledge a method_46271 + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_1075 + m ()Z pending c comp_1076 + m (Lnet/minecraft/network/chat/MessageSignature;Z)V +c net/minecraft/network/chat/LocalChatSession xk net/minecraft/class_7818 + f Ljava/util/UUID; sessionId a comp_1077 + f Lnet/minecraft/world/entity/player/ProfileKeyPair; keyPair b comp_1078 + m ()Lnet/minecraft/network/chat/RemoteChatSession; asRemote a method_46275 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)Lnet/minecraft/network/chat/LocalChatSession; create a method_46273 + p 0 keyPair + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageChain$Encoder; createMessageEncoder a method_46274 + p 1 sender + m ()Ljava/util/UUID; sessionId b comp_1077 + m ()Lnet/minecraft/world/entity/player/ProfileKeyPair; keyPair c comp_1078 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfileKeyPair;)V +c net/minecraft/network/chat/MessageSignature xl net/minecraft/class_7469 + f Lcom/mojang/serialization/Codec; CODEC a field_40844 + f I BYTES b field_40683 + f [B bytes c comp_925 + m ()Ljava/nio/ByteBuffer; asByteBuffer a method_44994 + m (Lnet/minecraft/util/SignatureValidator;Lnet/minecraft/util/SignatureUpdater;)Z verify a method_44843 + p 1 validator + p 2 updater + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/MessageSignature; read a method_46276 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/MessageSignature;)V write a method_44845 + p 0 buffer + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/MessageSignature$Packed; pack a method_46277 + p 1 signatureCache + m ()[B bytes b comp_925 + m ([B)V + p 1 bytes + m ()V +c net/minecraft/network/chat/MessageSignature$Packed xl$a net/minecraft/class_7469$class_7819 + f I FULL_SIGNATURE a field_40684 + f I id b comp_1079 + f Lnet/minecraft/network/chat/MessageSignature; fullSignature c comp_1080 + m ()I id a comp_1079 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/MessageSignature$Packed; read a method_46278 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/MessageSignature$Packed;)V write a method_46279 + p 0 buffer + p 1 packed + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46280 + p 1 signatureCache + m ()Lnet/minecraft/network/chat/MessageSignature; fullSignature b comp_1080 + m (Lnet/minecraft/network/chat/MessageSignature;)V + p 1 fullSignature + m (I)V + p 1 id + m (ILnet/minecraft/network/chat/MessageSignature;)V +c net/minecraft/network/chat/MessageSignatureCache xm net/minecraft/class_7561 + f I NOT_FOUND a field_40845 + f I DEFAULT_CAPACITY b field_40686 + f [Lnet/minecraft/network/chat/MessageSignature; entries c field_40687 + m ()Lnet/minecraft/network/chat/MessageSignatureCache; createDefault a method_46281 + m (I)Lnet/minecraft/network/chat/MessageSignature; unpack a method_46606 + p 1 index + m (Ljava/util/ArrayDeque;)V push a method_46283 + p 1 deque + m (Ljava/util/List;)V push a method_46284 + p 1 chatMessages + m (Lnet/minecraft/network/chat/MessageSignature;)I pack a method_46607 + p 1 signature + m (Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/network/chat/MessageSignature;)V push a method_46286 + p 1 signedMessageBody + p 2 signature + m (I)V + p 1 size +c net/minecraft/network/chat/MutableComponent xn net/minecraft/class_5250 + c A Component which can have its Style and siblings modified. + f Lnet/minecraft/network/chat/ComponentContents; contents c field_39005 + f Ljava/util/List; siblings d field_39006 + f Lnet/minecraft/network/chat/Style; style e field_39007 + f Lnet/minecraft/util/FormattedCharSequence; visualOrderText f field_39008 + f Lnet/minecraft/locale/Language; decomposedWith g field_39009 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27694 + p 1 modifyFunc + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27692 + p 1 format + m (Lnet/minecraft/network/chat/ComponentContents;)Lnet/minecraft/network/chat/MutableComponent; create a method_43477 + p 0 contents + m ([Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/MutableComponent; withStyle a method_27695 + p 1 formats + m (I)Lnet/minecraft/network/chat/MutableComponent; withColor b method_54663 + p 1 color + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; append b method_10852 + c Add the given component to this component's siblings.\n\nNote: If this component turns the text bold, that will apply to all the siblings until a later sibling turns the text something else. + p 1 sibling + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; setStyle b method_10862 + c Sets the style for this component and returns the component itself. + p 1 style + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/MutableComponent; withStyle c method_27696 + p 1 style + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; append f method_27693 + c Add the given text to this component's siblings.\n\nNote: If this component turns the text bold, that will apply to all the siblings until a later sibling turns the text something else. + p 1 string + m (Lnet/minecraft/network/chat/ComponentContents;Ljava/util/List;Lnet/minecraft/network/chat/Style;)V + p 1 contents + p 2 siblings + p 3 style +c net/minecraft/network/chat/OutgoingChatMessage xo net/minecraft/class_7604 + m ()Lnet/minecraft/network/chat/Component; content a comp_1081 + m (Lnet/minecraft/server/level/ServerPlayer;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendToPlayer a method_45095 + p 1 player + p 2 filtered + p 3 boundType + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/OutgoingChatMessage; create a method_44857 + p 0 message +c net/minecraft/network/chat/OutgoingChatMessage$Disguised xo$a net/minecraft/class_7604$class_7606 + f Lnet/minecraft/network/chat/Component; content a comp_1081 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/network/chat/OutgoingChatMessage$Player xo$b net/minecraft/class_7604$class_7607 + f Lnet/minecraft/network/chat/PlayerChatMessage; message a comp_1082 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; message b comp_1082 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V +c net/minecraft/network/chat/PlayerChatMessage xp net/minecraft/class_7471 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_40846 + f Ljava/time/Duration; MESSAGE_EXPIRES_AFTER_SERVER b field_39786 + f Ljava/time/Duration; MESSAGE_EXPIRES_AFTER_CLIENT c field_39787 + f Lnet/minecraft/network/chat/SignedMessageLink; link d comp_1083 + f Lnet/minecraft/network/chat/MessageSignature; signature e comp_1084 + f Lnet/minecraft/network/chat/SignedMessageBody; signedBody f comp_928 + f Lnet/minecraft/network/chat/Component; unsignedContent g comp_830 + f Lnet/minecraft/network/chat/FilterMask; filterMask h comp_981 + f Ljava/util/UUID; SYSTEM_SENDER i field_40688 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; removeUnsignedContent a method_44607 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V method_46289 a method_46289 + m (Lnet/minecraft/util/SignatureUpdater$Output;Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/SignedMessageBody;)V updateSignature a method_46290 + p 0 output + p 1 link + p 2 body + m (Lnet/minecraft/util/SignatureValidator;)Z verify a method_44858 + p 1 validator + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46608 a method_46608 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; system a method_45041 + p 0 content + m (Ljava/time/Instant;)Z hasExpiredServer a method_44747 + p 1 timestamp + m (Ljava/util/UUID;)Z hasSignatureFrom a method_45040 + p 1 uuid + m (Ljava/util/UUID;Ljava/lang/String;)Lnet/minecraft/network/chat/PlayerChatMessage; unsigned a method_45098 + p 0 sender + p 1 content + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/PlayerChatMessage; withUnsignedContent a method_44863 + p 1 message + m (Lnet/minecraft/network/chat/FilterMask;)Lnet/minecraft/network/chat/PlayerChatMessage; filter a method_45097 + p 1 mask + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/Optional; method_46609 a method_46609 + m (Lnet/minecraft/network/chat/SignedMessageLink;Ljava/util/Optional;Lnet/minecraft/network/chat/SignedMessageBody;Ljava/util/Optional;Lnet/minecraft/network/chat/FilterMask;)Lnet/minecraft/network/chat/PlayerChatMessage; method_46610 a method_46610 + m (Z)Lnet/minecraft/network/chat/PlayerChatMessage; filter a method_45099 + p 1 shouldFilter + m ()Lnet/minecraft/network/chat/PlayerChatMessage; removeSignature b method_55625 + m (Ljava/time/Instant;)Z hasExpiredClient b method_44748 + p 1 timestamp + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Ljava/util/Optional; method_46611 b method_46611 + m ()Ljava/lang/String; signedContent c method_44862 + m ()Lnet/minecraft/network/chat/Component; decoratedContent d method_46291 + m ()Ljava/time/Instant; timeStamp e method_44864 + m ()J salt f method_44865 + m ()Ljava/util/UUID; sender g method_46292 + m ()Z isSystem h method_46293 + m ()Z hasSignature i method_46294 + m ()Z isFullyFiltered j method_45100 + m ()Lnet/minecraft/network/chat/SignedMessageLink; link k comp_1083 + m ()Lnet/minecraft/network/chat/MessageSignature; signature l comp_1084 + m ()Lnet/minecraft/network/chat/SignedMessageBody; signedBody m comp_928 + m ()Lnet/minecraft/network/chat/Component; unsignedContent n comp_830 + m ()Lnet/minecraft/network/chat/FilterMask; filterMask o comp_981 + m ()Lnet/minecraft/network/chat/Component; method_46295 p method_46295 + m (Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/FilterMask;)V + m ()V +c net/minecraft/network/chat/RemoteChatSession xq net/minecraft/class_7822 + f Ljava/util/UUID; sessionId a comp_1085 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; profilePublicKey b comp_1086 + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; asData a method_46298 + m (Ljava/time/Duration;)Lnet/minecraft/network/chat/SignedMessageValidator; createMessageValidator a method_46296 + p 1 duration + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageChain$Decoder; createMessageDecoder a method_46297 + p 1 sender + m ()Z hasExpired b method_51466 + m (Ljava/time/Duration;)Z method_53506 b method_53506 + m ()Ljava/util/UUID; sessionId c comp_1085 + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey; profilePublicKey d comp_1086 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey;)V +c net/minecraft/network/chat/RemoteChatSession$Data xq$a net/minecraft/class_7822$class_7823 + f Ljava/util/UUID; sessionId a comp_1087 + f Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; profilePublicKey b comp_1088 + m ()Ljava/util/UUID; sessionId a comp_1087 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/util/SignatureValidator;)Lnet/minecraft/network/chat/RemoteChatSession; validate a method_46300 + p 1 profile + p 2 signatureValidator + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/chat/RemoteChatSession$Data; read a method_46301 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/chat/RemoteChatSession$Data;)V write a method_46303 + p 0 buffer + p 1 data + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; profilePublicKey b comp_1088 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)V +c net/minecraft/network/chat/SignableCommand xr net/minecraft/class_7644 + f Ljava/util/List; arguments a comp_974 + m ()Ljava/util/List; arguments a comp_974 + m (Lcom/mojang/brigadier/ParseResults;)Z hasSignableArguments a method_58774 + p 0 parseResults + m (Ljava/lang/String;)Lnet/minecraft/network/chat/SignableCommand$Argument; getArgument a method_58775 + p 1 argument + m (Ljava/lang/String;Lcom/mojang/brigadier/context/CommandContextBuilder;)Ljava/util/List; collectArguments a method_45044 + p 0 key + p 1 contextBuilder + m (Lcom/mojang/brigadier/ParseResults;)Lnet/minecraft/network/chat/SignableCommand; of b method_45043 + p 0 results + m (Ljava/util/List;)V +c net/minecraft/network/chat/SignableCommand$Argument xr$a net/minecraft/class_7644$class_7645 + f Lcom/mojang/brigadier/tree/ArgumentCommandNode; node a comp_975 + f Ljava/lang/String; value b comp_1089 + m ()Ljava/lang/String; name a method_45046 + m ()Lcom/mojang/brigadier/tree/ArgumentCommandNode; node b comp_975 + m ()Ljava/lang/String; value c comp_1089 + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;Ljava/lang/String;)V +c net/minecraft/network/chat/SignedMessageBody xs net/minecraft/class_7608 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_40847 + f Ljava/lang/String; content b comp_929 + f Ljava/time/Instant; timeStamp c comp_930 + f J salt d comp_931 + f Lnet/minecraft/network/chat/LastSeenMessages; lastSeen e comp_932 + m ()Ljava/lang/String; content a comp_929 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46304 + p 1 output + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46612 a method_46612 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/SignedMessageBody; unsigned a method_46305 + p 0 content + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Lnet/minecraft/network/chat/SignedMessageBody$Packed; pack a method_46306 + p 1 signatureCache + m ()Ljava/time/Instant; timeStamp b comp_930 + m ()J salt c comp_931 + m ()Lnet/minecraft/network/chat/LastSeenMessages; lastSeen d comp_932 + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessages;)V + m ()V +c net/minecraft/network/chat/SignedMessageBody$Packed xs$a net/minecraft/class_7608$class_7824 + f Ljava/lang/String; content a comp_1090 + f Ljava/time/Instant; timeStamp b comp_1091 + f J salt c comp_1092 + f Lnet/minecraft/network/chat/LastSeenMessages$Packed; lastSeen d comp_1093 + m ()Ljava/lang/String; content a comp_1090 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_46307 + p 1 buffer + m (Lnet/minecraft/network/chat/LastSeenMessages;)Lnet/minecraft/network/chat/SignedMessageBody; method_46308 a method_46308 + m (Lnet/minecraft/network/chat/MessageSignatureCache;)Ljava/util/Optional; unpack a method_46309 + p 1 signatureCache + m ()Ljava/time/Instant; timeStamp b comp_1091 + m ()J salt c comp_1092 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Packed; lastSeen d comp_1093 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessages$Packed;)V +c net/minecraft/network/chat/SignedMessageChain xt net/minecraft/class_7610 + f Lorg/slf4j/Logger; LOGGER a field_40691 + f Lnet/minecraft/network/chat/SignedMessageLink; nextLink b field_40692 + f Ljava/time/Instant; lastTimeStamp c field_47703 + m (Lnet/minecraft/util/Signer;)Lnet/minecraft/network/chat/SignedMessageChain$Encoder; encoder a method_44880 + p 1 signer + m (Lnet/minecraft/util/Signer;Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/MessageSignature; method_46311 a method_46311 + m (Lnet/minecraft/world/entity/player/ProfilePublicKey;)Lnet/minecraft/network/chat/SignedMessageChain$Decoder; decoder a method_44874 + p 1 publicKey + m (Lnet/minecraft/network/chat/SignedMessageLink;Lnet/minecraft/network/chat/SignedMessageBody;Lnet/minecraft/util/SignatureUpdater$Output;)V method_46313 a method_46313 + m (Ljava/util/UUID;Ljava/util/UUID;)V + p 1 sender + p 2 sessionId + m ()V +c net/minecraft/network/chat/SignedMessageChain$1 xt$1 net/minecraft/class_7610$1 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; val$profilePublicKey a field_50253 + f Lnet/minecraft/util/SignatureValidator; val$signatureValidator b field_50254 + f Lnet/minecraft/network/chat/SignedMessageChain; field_50255 c field_50255 + m (Lnet/minecraft/network/chat/SignedMessageChain;Lnet/minecraft/world/entity/player/ProfilePublicKey;Lnet/minecraft/util/SignatureValidator;)V +c net/minecraft/network/chat/SignedMessageChain$DecodeException xt$a net/minecraft/class_7610$class_7825 + f Lnet/minecraft/network/chat/Component; MISSING_PROFILE_KEY a field_50256 + f Lnet/minecraft/network/chat/Component; CHAIN_BROKEN b field_50257 + f Lnet/minecraft/network/chat/Component; EXPIRED_PROFILE_KEY c field_50258 + f Lnet/minecraft/network/chat/Component; INVALID_SIGNATURE d field_50259 + f Lnet/minecraft/network/chat/Component; OUT_OF_ORDER_CHAT e field_50260 + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/network/chat/SignedMessageChain$Decoder xt$b net/minecraft/class_7610$class_7611 + m (Ljava/util/function/BooleanSupplier;Ljava/util/UUID;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/PlayerChatMessage; method_46315 a method_46315 +c net/minecraft/network/chat/SignedMessageChain$Encoder xt$c net/minecraft/class_7610$class_7612 + f Lnet/minecraft/network/chat/SignedMessageChain$Encoder; UNSIGNED a field_40694 + m (Lnet/minecraft/network/chat/SignedMessageBody;)Lnet/minecraft/network/chat/MessageSignature; method_46316 a method_46316 + m ()V +c net/minecraft/network/chat/SignedMessageLink xu net/minecraft/class_7826 + f Lcom/mojang/serialization/Codec; CODEC a field_40849 + f I index b comp_1094 + f Ljava/util/UUID; sender c comp_1095 + f Ljava/util/UUID; sessionId d comp_1096 + m ()Lnet/minecraft/network/chat/SignedMessageLink; advance a method_46317 + m (Lnet/minecraft/util/SignatureUpdater$Output;)V updateSignature a method_46318 + p 1 output + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46614 a method_46614 + m (Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageLink; unsigned a method_46319 + p 0 sender + m (Ljava/util/UUID;Ljava/util/UUID;)Lnet/minecraft/network/chat/SignedMessageLink; root a method_46320 + p 0 sender + p 1 sessionId + m (Lnet/minecraft/network/chat/SignedMessageLink;)Z isDescendantOf a method_46321 + p 1 other + m ()I index b comp_1094 + m ()Ljava/util/UUID; sender c comp_1095 + m ()Ljava/util/UUID; sessionId d comp_1096 + m (ILjava/util/UUID;Ljava/util/UUID;)V + m ()V +c net/minecraft/network/chat/SignedMessageValidator xv net/minecraft/class_7615 + f Lorg/slf4j/Logger; LOGGER a field_45957 + f Lnet/minecraft/network/chat/SignedMessageValidator; ACCEPT_UNSIGNED b field_40695 + f Lnet/minecraft/network/chat/SignedMessageValidator; REJECT_ALL c field_40696 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/PlayerChatMessage; method_55626 a method_55626 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/network/chat/PlayerChatMessage; updateAndValidate updateAndValidate method_45048 + p 1 message + m ()V +c net/minecraft/network/chat/SignedMessageValidator$KeyBased xv$a net/minecraft/class_7615$class_7616 + f Lnet/minecraft/util/SignatureValidator; validator d field_39822 + f Ljava/util/function/BooleanSupplier; expired e field_45958 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastMessage f field_40697 + f Z isChainValid g field_39821 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z validateChain a method_44996 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z validate b method_53509 + p 1 message + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/function/BooleanSupplier;)V + p 1 validator + p 2 expired +c net/minecraft/network/chat/Style xw net/minecraft/class_2583 + c A Style for {@link Component}.\nStores color, text formatting (bold, etc.) as well as possible HoverEvent/ClickEvent. + f Lnet/minecraft/network/chat/Style; EMPTY a field_24360 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_FONT b field_24359 + f Lnet/minecraft/network/chat/TextColor; color c field_11855 + f Ljava/lang/Boolean; bold d field_11856 + f Ljava/lang/Boolean; italic e field_11852 + f Ljava/lang/Boolean; underlined f field_11851 + f Ljava/lang/Boolean; strikethrough g field_11857 + f Ljava/lang/Boolean; obfuscated h field_11861 + f Lnet/minecraft/network/chat/ClickEvent; clickEvent i field_11853 + f Lnet/minecraft/network/chat/HoverEvent; hoverEvent j field_11858 + f Ljava/lang/String; insertion k field_11859 + f Lnet/minecraft/resources/ResourceLocation; font l field_24361 + m ()Lnet/minecraft/network/chat/TextColor; getColor a method_10973 + m (I)Lnet/minecraft/network/chat/Style; withColor a method_36139 + p 1 rgb + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Style; withFont a method_27704 + p 1 fontId + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withBold a method_10982 + p 1 bold + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Style; withInsertion a method_10975 + p 1 insertion + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/network/chat/Style; create a method_43870 + p 0 color + p 1 bold + p 2 italic + p 3 underlined + p 4 strikethrough + p 5 obfuscated + p 6 clickEvent + p 7 hoverEvent + p 8 insertion + p 9 font + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; withColor a method_10977 + p 1 formatting + m (Lnet/minecraft/network/chat/ClickEvent;)Lnet/minecraft/network/chat/Style; withClickEvent a method_10958 + p 1 clickEvent + m (Lnet/minecraft/network/chat/HoverEvent;)Lnet/minecraft/network/chat/Style; withHoverEvent a method_10949 + p 1 hoverEvent + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; applyTo a method_27702 + c Merges the style with another one. If either style is empty the other will be returned. If a value already exists on the current style it will not be overridden. + p 1 style + m (Lnet/minecraft/network/chat/Style;Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/network/chat/Style; checkEmptyAfterChange a method_54210 + p 0 style + p 1 oldValue + p 2 newValue + m (Lnet/minecraft/network/chat/TextColor;)Lnet/minecraft/network/chat/Style; withColor a method_27703 + p 1 color + m ([Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyFormats a method_27705 + p 1 formats + m ()Z isBold b method_10984 + c Whether text of this ChatStyle should be in bold. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withItalic b method_10978 + p 1 italic + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyFormat b method_27706 + p 1 formatting + m ()Z isItalic c method_10966 + c Whether text of this ChatStyle should be italicized. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withUnderlined c method_30938 + p 1 underlined + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Style; applyLegacyFormat c method_27707 + p 1 formatting + m ()Z isStrikethrough d method_10986 + c Whether to format text of this ChatStyle using strikethrough. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withStrikethrough d method_36140 + p 1 strikethrough + m ()Z isUnderlined e method_10965 + c Whether text of this ChatStyle should be underlined. + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Style; withObfuscated e method_36141 + p 1 obfuscated + m ()Z isObfuscated f method_10987 + c Whether text of this ChatStyle should be obfuscated. + m ()Z isEmpty g method_10967 + c Whether this style is empty (inherits everything from the parent). + m ()Lnet/minecraft/network/chat/ClickEvent; getClickEvent h method_10970 + c The effective chat click event. + m ()Lnet/minecraft/network/chat/HoverEvent; getHoverEvent i method_10969 + c The effective chat hover event. + m ()Ljava/lang/String; getInsertion j method_10955 + c Get the text to be inserted into Chat when the component is shift-clicked + m ()Lnet/minecraft/resources/ResourceLocation; getFont k method_27708 + c The font to use for this Style + m (Lnet/minecraft/network/chat/TextColor;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Ljava/lang/Boolean;Lnet/minecraft/network/chat/ClickEvent;Lnet/minecraft/network/chat/HoverEvent;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V + p 1 color + p 2 bold + p 3 italic + p 4 underlined + p 5 strikethrough + p 6 obfuscated + p 7 clickEvent + p 8 hoverEvent + p 9 insertion + p 10 font + m ()V +c net/minecraft/network/chat/Style$1 xw$1 net/minecraft/class_2583$1 + f [I $SwitchMap$net$minecraft$ChatFormatting a field_11751 + m ()V +c net/minecraft/network/chat/Style$1Collector xw$a net/minecraft/class_2583$class_7418 + f Ljava/lang/StringBuilder; val$result a field_39010 + f Z isNotFirst b field_39012 + m ()V prependSeparator a method_43478 + m (Ljava/lang/String;Ljava/lang/Boolean;)V addFlagString a method_43479 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/Object;)V addValueString a method_43480 + p 1 key + p 2 value + m (Lnet/minecraft/network/chat/Style;Ljava/lang/StringBuilder;)V +c net/minecraft/network/chat/Style$Serializer xw$b net/minecraft/class_2583$class_2584 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_46612 + f Lcom/mojang/serialization/Codec; CODEC b field_46613 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_STREAM_CODEC c field_48541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54211 a method_54211 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54212 a method_54212 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54213 b method_54213 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54214 c method_54214 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54215 d method_54215 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54216 e method_54216 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54217 f method_54217 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54218 g method_54218 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54219 h method_54219 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54220 i method_54220 + m (Lnet/minecraft/network/chat/Style;)Ljava/util/Optional; method_54221 j method_54221 + m ()V + m ()V +c net/minecraft/network/chat/SubStringSource xx net/minecraft/class_5492 + f Ljava/lang/String; plainText a field_26626 + f Ljava/util/List; charStyles b field_26627 + f Lit/unimi/dsi/fastutil/ints/Int2IntFunction; reverseCharModifier c field_26628 + m ()Ljava/lang/String; getPlainText a method_30939 + m (I)I method_36142 a method_36142 + m (IIZ)Ljava/util/List; substring a method_30940 + p 1 fromIndex + p 2 toIndex + p 3 reversed + m (Ljava/lang/String;)Ljava/lang/String; method_36143 a method_36143 + m (Ljava/lang/StringBuilder;Ljava/util/List;ILnet/minecraft/network/chat/Style;I)Z method_30941 a method_30941 + m (Ljava/lang/StringBuilder;Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_30942 a method_30942 + m (Lnet/minecraft/network/chat/FormattedText;)Lnet/minecraft/network/chat/SubStringSource; create a method_36144 + p 0 formattedText + m (Lnet/minecraft/network/chat/FormattedText;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/chat/SubStringSource; create a method_30943 + p 0 formattedText + p 1 reverseCharModifier + p 2 textTransformer + m (Ljava/lang/String;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)V + p 1 plainText + p 2 charStyles + p 3 reverseCharModifier +c net/minecraft/network/chat/TextColor xy net/minecraft/class_5251 + f Lcom/mojang/serialization/Codec; CODEC a field_39242 + f Ljava/lang/String; CUSTOM_COLOR_PREFIX b field_33291 + f Ljava/util/Map; LEGACY_FORMAT_TO_COLOR c field_24362 + f Ljava/util/Map; NAMED_COLORS d field_24363 + f I value e field_24364 + f Ljava/lang/String; name f field_24365 + m ()I getValue a method_27716 + m (I)Lnet/minecraft/network/chat/TextColor; fromRgb a method_27717 + p 0 color + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; parseColor a method_27719 + p 0 color + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/TextColor; fromLegacyFormat a method_27718 + p 0 formatting + m (Lnet/minecraft/network/chat/TextColor;)Ljava/lang/String; method_27720 a method_27720 + m ()Ljava/lang/String; serialize b method_27721 + m (Ljava/lang/String;)Ljava/lang/String; method_54222 b method_54222 + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/TextColor; method_27722 b method_27722 + m ()Ljava/lang/String; formatValue c method_27723 + m (Ljava/lang/String;)Ljava/lang/String; method_54223 c method_54223 + m (Ljava/lang/String;)Ljava/lang/String; method_54224 d method_54224 + m (ILjava/lang/String;)V + p 1 value + p 2 name + m (I)V + p 1 value + m ()V +c net/minecraft/network/chat/ThrowingComponent xz net/minecraft/class_7437 + f Lnet/minecraft/network/chat/Component; component a field_39084 + m ()Lnet/minecraft/network/chat/Component; getComponent a method_43626 + m (Lnet/minecraft/network/chat/Component;)V + p 1 component + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)V + p 1 component + p 2 cause +c net/minecraft/network/chat/contents/BlockDataSource ya net/minecraft/class_2575 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46614 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46615 + f Ljava/lang/String; posPattern d comp_733 + f Lnet/minecraft/commands/arguments/coordinates/Coordinates; compiledPos e comp_734 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54226 a method_54226 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/coordinates/Coordinates; compilePos a method_16121 + p 0 posPattern + m ()Ljava/lang/String; posPattern b comp_733 + m ()Lnet/minecraft/commands/arguments/coordinates/Coordinates; compiledPos c comp_734 + m (Ljava/lang/String;)V + p 1 posPattern + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/coordinates/Coordinates;)V + m ()V +c net/minecraft/network/chat/contents/DataSource yb net/minecraft/class_7419 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46616 + m ()Lnet/minecraft/network/chat/contents/DataSource$Type; type a method_54225 + m (Lnet/minecraft/commands/CommandSourceStack;)Ljava/util/stream/Stream; getData a method_10916 + p 1 source + m ()V +c net/minecraft/network/chat/contents/DataSource$Type yb$a net/minecraft/class_7419$class_8827 + f Lcom/mojang/serialization/MapCodec; codec a comp_1987 + f Ljava/lang/String; id b comp_1988 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1987 + m ()Ljava/lang/String; id b comp_1988 + m (Lcom/mojang/serialization/MapCodec;Ljava/lang/String;)V +c net/minecraft/network/chat/contents/EntityDataSource yc net/minecraft/class_2576 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46617 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46618 + f Ljava/lang/String; selectorPattern d comp_735 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; compiledSelector e comp_736 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54227 a method_54227 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; compileSelector a method_10923 + p 0 selectorPattern + m ()Ljava/lang/String; selectorPattern b comp_735 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; compiledSelector c comp_736 + m (Ljava/lang/String;)V + p 1 selectorPattern + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/selector/EntitySelector;)V + m ()V +c net/minecraft/network/chat/contents/KeybindContents yd net/minecraft/class_2572 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46619 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46620 + f Ljava/lang/String; name c field_11767 + f Ljava/util/function/Supplier; nameResolver d field_11768 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54228 a method_54228 + m (Lnet/minecraft/network/chat/contents/KeybindContents;)Ljava/lang/String; method_54229 a method_54229 + m ()Ljava/lang/String; getName b method_10901 + m ()Lnet/minecraft/network/chat/Component; getNestedComponent c method_27691 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/network/chat/contents/KeybindResolver ye net/minecraft/class_7420 + f Ljava/util/function/Function; keyResolver a field_39013 + m (Ljava/lang/String;)Ljava/util/function/Supplier; method_43481 a method_43481 + m (Ljava/util/function/Function;)V setKeyResolver a method_43482 + p 0 keyResolver + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_43483 b method_43483 + m ()V + m ()V +c net/minecraft/network/chat/contents/NbtContents yf net/minecraft/class_2574 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46621 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46622 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; compiledNbtPath c field_11779 + f Lorg/slf4j/Logger; LOGGER d field_11777 + f Z interpreting e field_11778 + f Ljava/util/Optional; separator f field_33539 + f Ljava/lang/String; nbtPathPattern g field_11776 + f Lnet/minecraft/network/chat/contents/DataSource; dataSource h field_39014 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54230 a method_54230 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/lang/String;)Ljava/util/stream/Stream; method_10917 a method_10917 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; compileNbtPath a method_10919 + p 0 nbtPathPattern + m (Ljava/util/stream/Stream;)Lnet/minecraft/network/chat/MutableComponent; method_36333 a method_36333 + m (Ljava/util/stream/Stream;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_36334 a method_36334 + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/stream/Stream; method_10918 a method_10918 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_15880 a method_15880 + m (Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; method_36335 a method_36335 + m ()Ljava/lang/String; getNbtPath b method_10920 + m ()Z isInterpreting c method_10921 + m ()Ljava/util/Optional; getSeparator d method_43484 + m ()Lnet/minecraft/network/chat/contents/DataSource; getDataSource e method_43485 + m (Ljava/lang/String;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)V + p 1 nbtPathPattern + p 2 interpreting + p 3 separator + p 4 dataSource + m (Ljava/lang/String;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;ZLjava/util/Optional;Lnet/minecraft/network/chat/contents/DataSource;)V + p 1 nbtPathPattern + p 2 compiledNbtPath + p 3 interpreting + p 4 separator + p 5 dataSource + m ()V +c net/minecraft/network/chat/contents/PlainTextContents yg net/minecraft/class_8828 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46623 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46624 + f Lnet/minecraft/network/chat/contents/PlainTextContents; EMPTY c field_46625 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54231 a method_54231 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/contents/PlainTextContents; create a method_54232 + p 0 text + m ()Ljava/lang/String; text b comp_737 + m ()V +c net/minecraft/network/chat/contents/PlainTextContents$1 yg$1 net/minecraft/class_8828$1 + m ()V +c net/minecraft/network/chat/contents/PlainTextContents$LiteralContents yg$a net/minecraft/class_8828$class_2585 + f Ljava/lang/String; text d comp_737 + m (Ljava/lang/String;)V +c net/minecraft/network/chat/contents/ScoreContents yh net/minecraft/class_2578 + f Lcom/mojang/serialization/MapCodec; INNER_CODEC a field_46626 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46627 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE c field_46628 + f Ljava/lang/String; name d field_11787 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector e field_11786 + f Ljava/lang/String; objective f field_11785 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54233 a method_54233 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/world/scores/ScoreHolder; findTargetName a method_27699 + p 1 source + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/network/chat/MutableComponent; getScore a method_27700 + p 1 scoreHolder + p 2 source + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parseSelector a method_27701 + p 0 selector + m ()Ljava/lang/String; getName b method_10930 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector c method_36137 + m ()Ljava/lang/String; getObjective d method_10928 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 name + p 2 objective + m ()V +c net/minecraft/network/chat/contents/SelectorContents yi net/minecraft/class_2579 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46629 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE b field_46630 + f Ljava/util/Optional; separator c field_33540 + f Lorg/slf4j/Logger; LOGGER d field_11791 + f Ljava/lang/String; pattern e field_11789 + f Lnet/minecraft/commands/arguments/selector/EntitySelector; selector f field_11790 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54234 a method_54234 + m (Ljava/lang/String;)Lnet/minecraft/commands/arguments/selector/EntitySelector; parseSelector a method_43486 + p 0 selector + m ()Ljava/lang/String; getPattern b method_10932 + m ()Lnet/minecraft/commands/arguments/selector/EntitySelector; getSelector c method_36138 + m ()Ljava/util/Optional; getSeparator d method_36339 + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 pattern + p 2 separator + m ()V +c net/minecraft/network/chat/contents/StorageDataSource yj net/minecraft/class_4616 + f Lcom/mojang/serialization/MapCodec; SUB_CODEC a field_46631 + f Lnet/minecraft/network/chat/contents/DataSource$Type; TYPE b field_46632 + f Lnet/minecraft/resources/ResourceLocation; id d comp_738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54235 a method_54235 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_738 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/network/chat/contents/TranslatableContents yk net/minecraft/class_2588 + f [Ljava/lang/Object; NO_ARGS a field_24367 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46633 + f Lnet/minecraft/network/chat/ComponentContents$Type; TYPE c field_46634 + f Lcom/mojang/serialization/Codec; PRIMITIVE_ARG_CODEC d field_46635 + f Lcom/mojang/serialization/Codec; ARG_CODEC e field_46636 + f Lnet/minecraft/network/chat/FormattedText; TEXT_PERCENT f field_24368 + f Lnet/minecraft/network/chat/FormattedText; TEXT_NULL g field_24369 + f Ljava/lang/String; key h field_11876 + f Ljava/lang/String; fallback i field_41875 + f [Ljava/lang/Object; args j field_11875 + f Lnet/minecraft/locale/Language; decomposedWith k field_25317 + f Ljava/util/List; decomposedParts l field_11877 + c The discrete elements that make up this component. For example, this would be ["Prefix, ", "FirstArg", "SecondArg", " again ", "SecondArg", " and ", "FirstArg", " lastly ", "ThirdArg", " and also ", "FirstArg", " again!"] for "translation.test.complex" (see en_us.json) + f Ljava/util/regex/Pattern; FORMAT_PATTERN m field_11872 + m (I)Lnet/minecraft/network/chat/FormattedText; getArgument a method_29434 + p 1 index + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Object; method_54236 a method_54236 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54237 a method_54237 + m (Ljava/lang/Object;)Z isAllowedPrimitiveArgument a method_54238 + p 0 input + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/network/chat/contents/TranslatableContents; create a method_54239 + p 0 key + p 1 fallback + p 2 args + m (Ljava/lang/String;Ljava/util/function/Consumer;)V decomposeTemplate a method_11024 + p 1 formatTemplate + p 2 consumer + m (Ljava/util/List;)[Ljava/lang/Object; method_54240 a method_54240 + m (Ljava/util/Optional;)[Ljava/lang/Object; adjustArgs a method_54241 + p 0 args + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/Object; method_54242 a method_54242 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/util/Optional; method_54243 a method_54243 + m ([Ljava/lang/Object;)Ljava/util/Optional; adjustArgs a method_54244 + p 0 args + m ()Ljava/lang/String; getKey b method_11022 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; filterAllowedArguments b method_54245 + p 0 input + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/util/Optional; method_54246 b method_54246 + m ()Ljava/lang/String; getFallback c method_48323 + m (Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_54247 c method_54247 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;)Ljava/lang/String; method_54248 c method_54248 + m ()[Ljava/lang/Object; getArgs d method_11023 + m (Ljava/lang/Object;)Ljava/lang/Object; method_54249 d method_54249 + m ()V decompose e method_11025 + c Ensures that all the children are up to date with the most recent translation mapping. + m ()Ljava/lang/String; method_54250 f method_54250 + m (Ljava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V + p 1 key + p 2 fallback + p 3 args + m ()V +c net/minecraft/network/chat/contents/TranslatableFormatException yl net/minecraft/class_2590 + m (Lnet/minecraft/network/chat/contents/TranslatableContents;Ljava/lang/String;)V + p 1 contents + p 2 error + m (Lnet/minecraft/network/chat/contents/TranslatableContents;I)V + p 1 component + p 2 invalidIndex + m (Lnet/minecraft/network/chat/contents/TranslatableContents;Ljava/lang/Throwable;)V + p 1 contents + p 2 cause +c net/minecraft/network/chat/contents/package-info ym net/minecraft/class_7421 +c net/minecraft/network/chat/numbers/BlankFormat yn net/minecraft/class_9020 + f Lnet/minecraft/network/chat/numbers/BlankFormat; INSTANCE a field_47557 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE b field_47558 + m ()V + m ()V +c net/minecraft/network/chat/numbers/BlankFormat$1 yn$1 net/minecraft/class_9020$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47559 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48542 + m ()V + m ()V +c net/minecraft/network/chat/numbers/FixedFormat yo net/minecraft/class_9021 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE a field_47560 + f Lnet/minecraft/network/chat/Component; value b field_47561 + m (Lnet/minecraft/network/chat/Component;)V + p 1 value + m ()V +c net/minecraft/network/chat/numbers/FixedFormat$1 yo$1 net/minecraft/class_9021$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47562 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48543 + m (Lnet/minecraft/network/chat/numbers/FixedFormat;)Lnet/minecraft/network/chat/Component; method_56361 a method_56361 + m (Lnet/minecraft/network/chat/numbers/FixedFormat;)Lnet/minecraft/network/chat/Component; method_55465 b method_55465 + m ()V + m ()V +c net/minecraft/network/chat/numbers/NumberFormat yp net/minecraft/class_9022 + m ()Lnet/minecraft/network/chat/numbers/NumberFormatType; type a method_55456 + m (I)Lnet/minecraft/network/chat/MutableComponent; format a method_55457 + p 1 number +c net/minecraft/network/chat/numbers/NumberFormatType yq net/minecraft/class_9023 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_55458 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56360 +c net/minecraft/network/chat/numbers/NumberFormatTypes yr net/minecraft/class_9024 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47563 + f Lcom/mojang/serialization/Codec; CODEC b field_47564 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_48544 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC d field_48545 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/network/chat/numbers/NumberFormatType; bootstrap a method_55466 + p 0 regsitry + m ()V + m ()V +c net/minecraft/network/chat/numbers/StyledFormat ys net/minecraft/class_9025 + f Lnet/minecraft/network/chat/numbers/NumberFormatType; TYPE a field_47565 + f Lnet/minecraft/network/chat/numbers/StyledFormat; NO_STYLE b field_47566 + f Lnet/minecraft/network/chat/numbers/StyledFormat; SIDEBAR_DEFAULT c field_47567 + f Lnet/minecraft/network/chat/numbers/StyledFormat; PLAYER_LIST_DEFAULT d field_47568 + f Lnet/minecraft/network/chat/Style; style e field_47569 + m (Lnet/minecraft/network/chat/Style;)V + p 1 style + m ()V +c net/minecraft/network/chat/numbers/StyledFormat$1 ys$1 net/minecraft/class_9025$1 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47570 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48546 + m (Lnet/minecraft/network/chat/numbers/StyledFormat;)Lnet/minecraft/network/chat/Style; method_56362 a method_56362 + m (Lnet/minecraft/network/chat/numbers/StyledFormat;)Lnet/minecraft/network/chat/Style; method_55472 b method_55472 + m ()V + m ()V +c net/minecraft/network/chat/numbers/package-info yt net/minecraft/class_9026 +c net/minecraft/network/chat/package-info yu net/minecraft/class_6312 +c net/minecraft/network/codec/ByteBufCodecs yv net/minecraft/class_9135 + f I MAX_INITIAL_COLLECTION_SIZE a field_49674 + f Lnet/minecraft/network/codec/StreamCodec; BOOL b field_48547 + f Lnet/minecraft/network/codec/StreamCodec; BYTE c field_48548 + f Lnet/minecraft/network/codec/StreamCodec; SHORT d field_48549 + f Lnet/minecraft/network/codec/StreamCodec; UNSIGNED_SHORT e field_51470 + f Lnet/minecraft/network/codec/StreamCodec; INT f field_49675 + f Lnet/minecraft/network/codec/StreamCodec; VAR_INT g field_48550 + f Lnet/minecraft/network/codec/StreamCodec; VAR_LONG h field_48551 + f Lnet/minecraft/network/codec/StreamCodec; FLOAT i field_48552 + f Lnet/minecraft/network/codec/StreamCodec; DOUBLE j field_48553 + f Lnet/minecraft/network/codec/StreamCodec; BYTE_ARRAY k field_48987 + f Lnet/minecraft/network/codec/StreamCodec; STRING_UTF8 l field_48554 + f Lnet/minecraft/network/codec/StreamCodec; TAG m field_48555 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_TAG n field_49676 + f Lnet/minecraft/network/codec/StreamCodec; COMPOUND_TAG o field_48556 + f Lnet/minecraft/network/codec/StreamCodec; TRUSTED_COMPOUND_TAG p field_49677 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_COMPOUND_TAG q field_48557 + f Lnet/minecraft/network/codec/StreamCodec; VECTOR3F r field_48558 + f Lnet/minecraft/network/codec/StreamCodec; QUATERNIONF s field_48559 + f Lnet/minecraft/network/codec/StreamCodec; GAME_PROFILE_PROPERTIES t field_49678 + f Lnet/minecraft/network/codec/StreamCodec; GAME_PROFILE u field_49679 + m ()Lnet/minecraft/network/codec/StreamCodec$CodecOperation; list a method_56363 + m (I)Lnet/minecraft/network/codec/StreamCodec; byteArray a method_56895 + p 0 maxSize + m (ILnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57986 a method_57986 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; registry a method_56365 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; registry a method_56366 + p 0 registryKey + p 1 idGetter + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; holder a method_56367 + p 0 registryKey + p 1 codec + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecTrusted a method_57987 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;)Lnet/minecraft/nbt/Tag; method_56369 a method_56369 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; fromCodec a method_57988 + p 0 codec + p 1 accounterSupplier + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/nbt/Tag;)Ljava/lang/Object; method_56370 a method_56370 + m (Lio/netty/buffer/ByteBuf;I)I readCount a method_57989 + p 0 buffer + p 1 maxSize + m (Lio/netty/buffer/ByteBuf;II)V writeCount a method_57990 + p 0 buffer + p 1 count + p 2 maxSize + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_56373 a method_56373 + m (Ljava/util/function/IntFunction;)Lnet/minecraft/network/codec/StreamCodec$CodecOperation; collection a method_56374 + p 0 factory + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)Lnet/minecraft/network/codec/StreamCodec; idMapper a method_56375 + p 0 idLookup + p 1 idGetter + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; collection a method_56376 + p 0 factory + p 1 codec + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;I)Lnet/minecraft/network/codec/StreamCodec; collection a method_57991 + p 0 factory + p 1 codec + p 2 maxSize + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; map a method_56377 + p 0 factory + p 1 keyCodec + p 2 valueCodec + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;I)Lnet/minecraft/network/codec/StreamCodec; map a method_57992 + p 0 factory + p 1 keyCodec + p 2 valueCodec + p 3 maxSize + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; tagCodec a method_56378 + p 0 accounter + m (Lnet/minecraft/core/IdMap;)Lnet/minecraft/network/codec/StreamCodec; idMapper a method_56371 + p 0 idMap + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/IdMap; method_56372 a method_56372 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/Tag; method_57993 a method_57993 + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/CompoundTag; method_57994 a method_57994 + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_56381 a method_56381 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; optional a method_56382 + p 0 codec + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; either a method_57995 + p 0 leftCodec + p 1 rightCodec + m ()Lnet/minecraft/nbt/NbtAccounter; method_57996 b method_57996 + m (I)Lnet/minecraft/network/codec/StreamCodec; stringUtf8 b method_56364 + p 0 maxLength + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; holderRegistry b method_56383 + p 0 registryKey + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodec b method_56368 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistries b method_57997 + p 0 codec + p 1 accounterSupplier + m (Ljava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56384 b method_56384 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/codec/StreamCodec; compoundTagCodec b method_57998 + p 0 accounterSupplier + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56385 b method_56385 + m ()Lnet/minecraft/nbt/NbtAccounter; method_57999 c method_57999 + m (I)Lnet/minecraft/network/codec/StreamCodec$CodecOperation; list c method_58000 + p 0 maxSize + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; holderSet c method_58001 + p 0 registryKey + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistriesTrusted c method_58002 + p 0 codec + m ()Lnet/minecraft/nbt/NbtAccounter; method_58003 d method_58003 + m (Lcom/mojang/serialization/Codec;)Lnet/minecraft/network/codec/StreamCodec; fromCodecWithRegistries d method_56896 + p 0 codec + m ()Lnet/minecraft/nbt/NbtAccounter; method_58004 e method_58004 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$1 yv$1 net/minecraft/class_9135$1 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Boolean; decode a method_56386 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Boolean;)V encode a method_56387 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$10 yv$2 net/minecraft/class_9135$2 + f I val$maxSize a field_51478 + m (Lio/netty/buffer/ByteBuf;)[B decode a method_56403 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;[B)V encode a method_56404 + p 1 buffer + p 2 value + m (I)V +c net/minecraft/network/codec/ByteBufCodecs$11 yv$3 net/minecraft/class_9135$3 + m (Lio/netty/buffer/ByteBuf;)[B decode a method_59799 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;[B)V encode a method_59800 + p 1 buffer + p 2 value + m ()V +c net/minecraft/network/codec/ByteBufCodecs$12 yv$4 net/minecraft/class_9135$4 + f I val$maxStringLength a field_48988 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; decode a method_56897 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V encode a method_56898 + m (I)V +c net/minecraft/network/codec/ByteBufCodecs$13 yv$5 net/minecraft/class_9135$5 + f Ljava/util/function/Supplier; val$accounter a field_48565 + m (Lio/netty/buffer/ByteBuf;)Lnet/minecraft/nbt/Tag; decode a method_56405 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/nbt/Tag;)V encode a method_56406 + m (Ljava/util/function/Supplier;)V +c net/minecraft/network/codec/ByteBufCodecs$14 yv$6 net/minecraft/class_9135$6 + f Lnet/minecraft/network/codec/StreamCodec; val$tagCodec a field_49696 + f Lcom/mojang/serialization/Codec; val$codec b field_48989 + m (Ljava/lang/Object;Ljava/lang/String;)Lio/netty/handler/codec/EncoderException; method_56899 a method_56899 + m (Lnet/minecraft/nbt/Tag;Ljava/lang/String;)Lio/netty/handler/codec/DecoderException; method_56900 a method_56900 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/lang/Object; decode a method_56901 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Ljava/lang/Object;)V encode a method_56902 + m (Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/network/codec/ByteBufCodecs$15 yv$7 net/minecraft/class_9135$7 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56411 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56412 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$16 yv$8 net/minecraft/class_9135$8 + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Vector3f; decode a method_58022 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Vector3f;)V encode a method_58023 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$17 yv$9 net/minecraft/class_9135$9 + m (Lio/netty/buffer/ByteBuf;)Lorg/joml/Quaternionf; decode a method_59801 + m (Lio/netty/buffer/ByteBuf;Lorg/joml/Quaternionf;)V encode a method_59802 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$18 yv$10 net/minecraft/class_9135$10 + f Lnet/minecraft/network/codec/StreamCodec; val$original a field_49697 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56415 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56416 + m (Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$19 yv$11 net/minecraft/class_9135$11 + f I val$maxSize a field_49682 + f Ljava/util/function/IntFunction; val$constructor b field_49685 + f Lnet/minecraft/network/codec/StreamCodec; val$elementCodec c field_51471 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Collection; decode a method_58005 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Collection;)V encode a method_58006 + m (ILjava/util/function/IntFunction;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$2 yv$12 net/minecraft/class_9135$12 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Byte; decode a method_56391 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Byte;)V encode a method_56392 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$20 yv$13 net/minecraft/class_9135$13 + f I val$maxSize a field_49680 + f Lnet/minecraft/network/codec/StreamCodec; val$keyCodec b field_51472 + f Lnet/minecraft/network/codec/StreamCodec; val$valueCodec c field_51473 + f Ljava/util/function/IntFunction; val$constructor d field_48571 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Map; decode a method_56417 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Map;)V encode a method_56418 + m (Lnet/minecraft/network/codec/StreamCodec;Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;Ljava/lang/Object;)V method_59793 a method_59793 + m (ILnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/IntFunction;)V +c net/minecraft/network/codec/ByteBufCodecs$21 yv$14 net/minecraft/class_9135$14 + f Lnet/minecraft/network/codec/StreamCodec; val$leftCodec a field_49686 + f Lnet/minecraft/network/codec/StreamCodec; val$rightCodec b field_49687 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/datafixers/util/Either; decode a method_58008 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/datafixers/util/Either;)V encode a method_58009 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V method_58010 a method_58010 + m (Lio/netty/buffer/ByteBuf;Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V method_58011 b method_58011 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$22 yv$15 net/minecraft/class_9135$15 + f Ljava/util/function/IntFunction; val$byId a field_48572 + f Ljava/util/function/ToIntFunction; val$toId b field_48573 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56420 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56421 + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)V +c net/minecraft/network/codec/ByteBufCodecs$23 yv$16 net/minecraft/class_9135$16 + f Ljava/util/function/Function; val$mapExtractor a field_48574 + f Lnet/minecraft/resources/ResourceKey; val$registryKey b field_48575 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/lang/Object; decode a method_56422 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Ljava/lang/Object;)V encode a method_56423 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/IdMap; getRegistryOrThrow b method_56424 + p 1 buffer + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/network/codec/ByteBufCodecs$24 yv$17 net/minecraft/class_9135$17 + f Lnet/minecraft/resources/ResourceKey; val$registryKey a field_49688 + f Lnet/minecraft/network/codec/StreamCodec; val$directCodec b field_49690 + f I DIRECT_HOLDER_ID c field_51474 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/Holder; decode a method_58012 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/Holder;)V encode a method_58013 + p 1 buffer + p 2 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/IdMap; getRegistryOrThrow b method_59794 + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/codec/ByteBufCodecs$25 yv$18 net/minecraft/class_9135$18 + f Lnet/minecraft/resources/ResourceKey; val$registryKey a field_51475 + f I NAMED_SET b field_51476 + f Lnet/minecraft/network/codec/StreamCodec; holderCodec c field_51477 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/core/HolderSet; decode a method_59795 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/core/HolderSet;)V encode a method_59796 + m (Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/network/codec/ByteBufCodecs$26 yv$19 net/minecraft/class_9135$19 + f I MAX_PROPERTY_NAME_LENGTH a field_49691 + f I MAX_PROPERTY_VALUE_LENGTH b field_49692 + f I MAX_PROPERTY_SIGNATURE_LENGTH c field_49693 + f I MAX_PROPERTIES d field_49694 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/authlib/properties/PropertyMap; decode a method_58014 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/authlib/properties/PropertyMap;)V encode a method_58015 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V method_58016 a method_58016 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; method_58017 b method_58017 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$27 yv$20 net/minecraft/class_9135$20 + m (Lio/netty/buffer/ByteBuf;)Lcom/mojang/authlib/GameProfile; decode a method_58018 + m (Lio/netty/buffer/ByteBuf;Lcom/mojang/authlib/GameProfile;)V encode a method_58019 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$28 yv$21 net/minecraft/class_9135$21 + f [I $SwitchMap$net$minecraft$core$Holder$Kind a field_48563 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$3 yv$22 net/minecraft/class_9135$22 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Short; decode a method_56393 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Short;)V encode a method_56394 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$4 yv$23 net/minecraft/class_9135$23 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56395 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56396 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$5 yv$24 net/minecraft/class_9135$24 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56397 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56398 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$6 yv$25 net/minecraft/class_9135$25 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Integer; decode a method_56399 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Integer;)V encode a method_56400 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$7 yv$26 net/minecraft/class_9135$26 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Long; decode a method_56401 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Long;)V encode a method_56402 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$8 yv$27 net/minecraft/class_9135$27 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Float; decode a method_58020 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Float;)V encode a method_58021 + m ()V +c net/minecraft/network/codec/ByteBufCodecs$9 yv$28 net/minecraft/class_9135$28 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Double; decode a method_59797 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Double;)V encode a method_59798 + m ()V +c net/minecraft/network/codec/IdDispatchCodec yw net/minecraft/class_9136 + f I UNKNOWN_TYPE a field_48576 + f Ljava/util/function/Function; typeGetter b field_48577 + f Ljava/util/List; byId c field_48578 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; toId d field_48579 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56425 + p 1 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56426 + p 1 buffer + p 2 value + m (Ljava/util/function/Function;)Lnet/minecraft/network/codec/IdDispatchCodec$Builder; builder a method_56427 + p 0 typeGetter + m (Ljava/util/function/Function;Ljava/util/List;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 typeGetter + p 2 byId + p 3 toId +c net/minecraft/network/codec/IdDispatchCodec$Builder yw$a net/minecraft/class_9136$class_9137 + f Ljava/util/List; entries a field_48580 + f Ljava/util/function/Function; typeGetter b field_48581 + m ()Lnet/minecraft/network/codec/IdDispatchCodec; build a method_56428 + m (Ljava/lang/Object;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/IdDispatchCodec$Builder; add a method_56429 + p 1 type + p 2 serializer + m (Ljava/util/function/Function;)V + p 1 typeGetter +c net/minecraft/network/codec/IdDispatchCodec$Entry yw$b net/minecraft/class_9136$class_9138 + f Lnet/minecraft/network/codec/StreamCodec; serializer a comp_2228 + f Ljava/lang/Object; type b comp_2229 + m ()Lnet/minecraft/network/codec/StreamCodec; serializer a comp_2228 + m ()Ljava/lang/Object; type b comp_2229 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/lang/Object;)V +c net/minecraft/network/codec/StreamCodec yx net/minecraft/class_9139 + m ()Lnet/minecraft/network/codec/StreamCodec; cast a method_56430 + m (Ljava/lang/Object;)Lnet/minecraft/network/codec/StreamCodec; unit a method_56431 + p 0 expectedValue + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; map a method_56432 + p 1 factory + p 2 getter + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/codec/StreamCodec; recursive a method_58024 + p 0 modifier + m (Lnet/minecraft/network/codec/StreamCodec$CodecOperation;)Lnet/minecraft/network/codec/StreamCodec; apply a method_56433 + p 1 operation + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56434 + p 0 codec + p 1 getter + p 2 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/BiFunction;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56435 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function3;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56436 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function4;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56905 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function5;)Lnet/minecraft/network/codec/StreamCodec; composite a method_56906 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 codec5 + p 9 getter5 + p 10 factory + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Function6;)Lnet/minecraft/network/codec/StreamCodec; composite a method_58025 + p 0 codec1 + p 1 getter1 + p 2 codec2 + p 3 getter2 + p 4 codec3 + p 5 getter3 + p 6 codec4 + p 7 getter4 + p 8 codec5 + p 9 getter5 + p 10 codec6 + p 11 getter6 + p 12 factory + m (Lnet/minecraft/network/codec/StreamEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; of a method_56437 + p 0 encoder + p 1 decoder + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; ofMember a method_56438 + p 0 encoder + p 1 decoder + m (Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; mapStream b method_56439 + p 1 bufferFactory + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/network/codec/StreamCodec; dispatch b method_56440 + p 1 keyGetter + p 2 codecGetter +c net/minecraft/network/codec/StreamCodec$1 yx$1 net/minecraft/class_9139$1 + f Lnet/minecraft/network/codec/StreamDecoder; val$decoder a field_48582 + f Lnet/minecraft/network/codec/StreamEncoder; val$encoder b field_48583 + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamEncoder;)V +c net/minecraft/network/codec/StreamCodec$10 yx$2 net/minecraft/class_9139$2 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48991 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48992 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_48993 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_48994 + f Lcom/mojang/datafixers/util/Function4; val$constructor e field_48995 + f Ljava/util/function/Function; val$getter1 f field_48996 + f Ljava/util/function/Function; val$getter2 g field_48997 + f Ljava/util/function/Function; val$getter3 h field_48998 + f Ljava/util/function/Function; val$getter4 i field_48999 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function4;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$11 yx$3 net/minecraft/class_9139$3 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_49000 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_49001 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_49002 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_49003 + f Lnet/minecraft/network/codec/StreamCodec; val$codec5 e field_49004 + f Lcom/mojang/datafixers/util/Function5; val$constructor f field_49005 + f Ljava/util/function/Function; val$getter1 g field_49006 + f Ljava/util/function/Function; val$getter2 h field_49007 + f Ljava/util/function/Function; val$getter3 i field_49008 + f Ljava/util/function/Function; val$getter4 j field_49009 + f Ljava/util/function/Function; val$getter5 k field_49010 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function5;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$12 yx$4 net/minecraft/class_9139$4 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_49698 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_49699 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_49700 + f Lnet/minecraft/network/codec/StreamCodec; val$codec4 d field_49701 + f Lnet/minecraft/network/codec/StreamCodec; val$codec5 e field_49702 + f Lnet/minecraft/network/codec/StreamCodec; val$codec6 f field_49703 + f Lcom/mojang/datafixers/util/Function6; val$constructor g field_49704 + f Ljava/util/function/Function; val$getter1 h field_49705 + f Ljava/util/function/Function; val$getter2 i field_49706 + f Ljava/util/function/Function; val$getter3 j field_49707 + f Ljava/util/function/Function; val$getter4 k field_49708 + f Ljava/util/function/Function; val$getter5 l field_49709 + f Ljava/util/function/Function; val$getter6 m field_49710 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function6;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$13 yx$5 net/minecraft/class_9139$5 + f Ljava/util/function/UnaryOperator; val$factory a field_49711 + f Ljava/util/function/Supplier; inner b field_49712 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/network/codec/StreamCodec; method_58026 b method_58026 + m (Ljava/util/function/UnaryOperator;)V +c net/minecraft/network/codec/StreamCodec$2 yx$6 net/minecraft/class_9139$6 + f Lnet/minecraft/network/codec/StreamDecoder; val$decoder a field_48584 + f Lnet/minecraft/network/codec/StreamMemberEncoder; val$encoder b field_48585 + m (Lnet/minecraft/network/codec/StreamDecoder;Lnet/minecraft/network/codec/StreamMemberEncoder;)V +c net/minecraft/network/codec/StreamCodec$3 yx$7 net/minecraft/class_9139$7 + f Ljava/lang/Object; val$instance a field_48586 + m (Ljava/lang/Object;)V +c net/minecraft/network/codec/StreamCodec$4 yx$8 net/minecraft/class_9139$8 + f Ljava/util/function/Function; val$to a field_48587 + f Ljava/util/function/Function; val$from b field_48588 + f Lnet/minecraft/network/codec/StreamCodec; field_48589 c field_48589 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$5 yx$9 net/minecraft/class_9139$9 + f Ljava/util/function/Function; val$operation a field_48590 + f Lnet/minecraft/network/codec/StreamCodec; field_48591 b field_48591 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/Object; decode a method_56441 + m (Lio/netty/buffer/ByteBuf;Ljava/lang/Object;)V encode a method_56442 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$CodecOperation yx$a net/minecraft/class_9139$class_9140 +c net/minecraft/network/codec/StreamCodec$6 yx$10 net/minecraft/class_9139$10 + f Ljava/util/function/Function; val$codec a field_48592 + f Ljava/util/function/Function; val$type b field_48593 + f Lnet/minecraft/network/codec/StreamCodec; field_48594 c field_48594 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$7 yx$11 net/minecraft/class_9139$11 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48595 + f Ljava/util/function/Function; val$constructor b field_48596 + f Ljava/util/function/Function; val$getter1 c field_48597 + m (Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$8 yx$12 net/minecraft/class_9139$12 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48598 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48599 + f Ljava/util/function/BiFunction; val$constructor c field_48600 + f Ljava/util/function/Function; val$getter1 d field_48601 + f Ljava/util/function/Function; val$getter2 e field_48602 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamCodec$9 yx$13 net/minecraft/class_9139$13 + f Lnet/minecraft/network/codec/StreamCodec; val$codec1 a field_48603 + f Lnet/minecraft/network/codec/StreamCodec; val$codec2 b field_48604 + f Lnet/minecraft/network/codec/StreamCodec; val$codec3 c field_48605 + f Lcom/mojang/datafixers/util/Function3; val$constructor d field_48606 + f Ljava/util/function/Function; val$getter1 e field_48607 + f Ljava/util/function/Function; val$getter2 f field_48608 + f Ljava/util/function/Function; val$getter3 g field_48609 + m (Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/codec/StreamCodec;Lcom/mojang/datafixers/util/Function3;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/network/codec/StreamDecoder yy net/minecraft/class_9141 +c net/minecraft/network/codec/StreamEncoder yz net/minecraft/class_9142 +c net/minecraft/network/codec/StreamMemberEncoder za net/minecraft/class_9143 +c net/minecraft/network/codec/package-info zb net/minecraft/class_9144 +c net/minecraft/network/package-info zc net/minecraft/class_6313 +c net/minecraft/network/protocol/BundleDelimiterPacket zd net/minecraft/class_8037 + m ()V +c net/minecraft/network/protocol/BundlePacket ze net/minecraft/class_8038 + f Ljava/lang/Iterable; packets a field_41876 + m ()Ljava/lang/Iterable; subPackets b method_48324 + m (Ljava/lang/Iterable;)V + p 1 packets +c net/minecraft/network/protocol/BundlerInfo zf net/minecraft/class_8039 + f I BUNDLE_SIZE_LIMIT a field_41878 + m (Lnet/minecraft/network/protocol/Packet;)Lnet/minecraft/network/protocol/BundlerInfo$Bundler; startPacketBundling a method_48326 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/Consumer;)V unbundlePacket a method_48327 + p 1 packet + p 2 consumer + m (Lnet/minecraft/network/protocol/PacketType;Ljava/util/function/Function;Lnet/minecraft/network/protocol/BundleDelimiterPacket;)Lnet/minecraft/network/protocol/BundlerInfo; createForPacket a method_48325 + p 0 type + p 1 bundler + p 2 packet +c net/minecraft/network/protocol/BundlerInfo$1 zf$1 net/minecraft/class_8039$1 + f Lnet/minecraft/network/protocol/PacketType; val$bundlePacketType b field_48610 + f Lnet/minecraft/network/protocol/BundleDelimiterPacket; val$delimiterPacket c field_48611 + f Ljava/util/function/Function; val$constructor d field_48612 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/protocol/BundleDelimiterPacket;Ljava/util/function/Function;)V +c net/minecraft/network/protocol/BundlerInfo$1$1 zf$1$1 net/minecraft/class_8039$1$1 + f Lnet/minecraft/network/protocol/BundlerInfo$1; field_41883 a field_41883 + f Ljava/util/List; bundlePackets b field_41884 + m (Lnet/minecraft/network/protocol/BundlerInfo$1;)V +c net/minecraft/network/protocol/BundlerInfo$Bundler zf$a net/minecraft/class_8039$class_8040 + m (Lnet/minecraft/network/protocol/Packet;)Lnet/minecraft/network/protocol/Packet; addPacket a method_48328 + p 1 packet +c net/minecraft/network/protocol/Packet zg net/minecraft/class_2596 + m ()Lnet/minecraft/network/protocol/PacketType; type a method_55846 + m (Lnet/minecraft/network/PacketListener;)V handle a method_11054 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56443 + p 0 encoder + p 1 decoder + m ()Z isSkippable c method_11051 + c Whether decoding errors will be ignored for this packet. + m ()Z isTerminal d method_55943 +c net/minecraft/network/protocol/PacketFlow zh net/minecraft/class_2598 + c The direction of packets. + f Lnet/minecraft/network/protocol/PacketFlow; SERVERBOUND a field_11941 + f Lnet/minecraft/network/protocol/PacketFlow; CLIENTBOUND b field_11942 + f Ljava/lang/String; id c field_48613 + f [Lnet/minecraft/network/protocol/PacketFlow; $VALUES d field_11940 + m ()Lnet/minecraft/network/protocol/PacketFlow; getOpposite a method_36146 + m ()Ljava/lang/String; id b method_56444 + m ()[Lnet/minecraft/network/protocol/PacketFlow; $values c method_36947 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/network/protocol/PacketType zi net/minecraft/class_9145 + f Lnet/minecraft/network/protocol/PacketFlow; flow a comp_2230 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2231 + m ()Lnet/minecraft/network/protocol/PacketFlow; flow a comp_2230 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2231 + m (Lnet/minecraft/network/protocol/PacketFlow;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/PacketUtils zj net/minecraft/class_2600 + f Lorg/slf4j/Logger; LOGGER a field_20318 + m (Ljava/lang/Exception;Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;)Lnet/minecraft/ReportedException; makeReportedException a method_59854 + p 0 exception + p 1 packet + p 2 packetListener + m (Lnet/minecraft/CrashReport;Lnet/minecraft/network/PacketListener;Lnet/minecraft/network/protocol/Packet;)V fillCrashReport a method_59803 + p 0 crashReport + p 1 packetListener + p 2 packet + m (Lnet/minecraft/network/PacketListener;Lnet/minecraft/network/protocol/Packet;)V method_11072 a method_11072 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59804 a method_59804 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/server/level/ServerLevel;)V ensureRunningOnSameThread a method_11073 + c Ensures that the given packet is handled on the main thread. If the current thread is not the main thread, this method\nthrows {@link net.minecraft.server.RunningOnDifferentThreadException}, which is caught and ignored in the outer call ({@link net.minecraft.network.Connection#channelRead0(io.netty.channel.ChannelHandlerContext, net.minecraft.network.protocol.Packet)}). Additionally, it then re-schedules the packet to be handled on the main thread,\nwhich will then end up back here, but this time on the main thread. + p 0 packet + p 1 processor + p 2 level + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/util/thread/BlockableEventLoop;)V ensureRunningOnSameThread a method_11074 + c Ensures that the given packet is handled on the main thread. If the current thread is not the main thread, this method\nthrows {@link net.minecraft.server.RunningOnDifferentThreadException}, which is caught and ignored in the outer call ({@link net.minecraft.network.Connection#channelRead0(io.netty.channel.ChannelHandlerContext, net.minecraft.network.protocol.Packet)}). Additionally, it then re-schedules the packet to be handled on the main thread,\nwhich will then end up back here, but this time on the main thread. + p 0 packet + p 1 processor + p 2 executor + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59805 b method_59805 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_59806 c method_59806 + m ()V + m ()V +c net/minecraft/network/protocol/ProtocolCodecBuilder zk net/minecraft/class_9146 + f Lnet/minecraft/network/codec/IdDispatchCodec$Builder; dispatchBuilder a field_48614 + f Lnet/minecraft/network/protocol/PacketFlow; flow b field_48615 + m ()Lnet/minecraft/network/codec/StreamCodec; build a method_56445 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/protocol/ProtocolCodecBuilder; add a method_56446 + p 1 packetType + p 2 codec + m (Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 flow +c net/minecraft/network/protocol/ProtocolInfoBuilder zl net/minecraft/class_9147 + f Lnet/minecraft/network/ConnectionProtocol; protocol a field_48616 + f Lnet/minecraft/network/protocol/PacketFlow; flow b field_48617 + f Ljava/util/List; codecs c field_48618 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d field_48619 + m ()Lnet/minecraft/network/ProtocolInfo$Unbound; buildUnbound a method_56447 + m (Ljava/util/function/Function;)Lnet/minecraft/network/ProtocolInfo; build a method_56449 + p 1 bufferFactory + m (Ljava/util/function/Function;Ljava/util/List;)Lnet/minecraft/network/codec/StreamCodec; buildPacketCodec a method_56450 + p 1 bufferFactory + p 2 codecs + m (Lnet/minecraft/network/ConnectionProtocol;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; serverboundProtocol a method_56451 + p 0 protocol + p 1 setup + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; protocol a method_56452 + p 0 protocol + p 1 flow + p 2 setup + m (Lnet/minecraft/network/protocol/PacketType;Ljava/util/function/Function;Lnet/minecraft/network/protocol/BundleDelimiterPacket;)Lnet/minecraft/network/protocol/ProtocolInfoBuilder; withBundlePacket a method_56453 + p 1 type + p 2 bundler + p 3 packet + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/protocol/ProtocolInfoBuilder; addPacket a method_56454 + p 1 type + p 2 serializer + m (Lnet/minecraft/network/ConnectionProtocol;Ljava/util/function/Consumer;)Lnet/minecraft/network/ProtocolInfo$Unbound; clientboundProtocol b method_56455 + p 0 protocol + p 1 setup + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;)V + p 1 protocol + p 2 flow +c net/minecraft/network/protocol/ProtocolInfoBuilder$1 zl$1 net/minecraft/class_9147$1 + f Ljava/util/List; val$codecs a field_52285 + f Lnet/minecraft/network/protocol/BundlerInfo; val$bundlerInfo b field_52286 + f Lnet/minecraft/network/protocol/ProtocolInfoBuilder; field_52287 c field_52287 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;Ljava/util/List;Lnet/minecraft/network/protocol/BundlerInfo;)V +c net/minecraft/network/protocol/ProtocolInfoBuilder$CodecEntry zl$a net/minecraft/class_9147$class_9148 + f Lnet/minecraft/network/protocol/PacketType; type a comp_2232 + f Lnet/minecraft/network/codec/StreamCodec; serializer b comp_2233 + m ()Lnet/minecraft/network/protocol/PacketType; type a comp_2232 + m (Lnet/minecraft/network/protocol/ProtocolCodecBuilder;Ljava/util/function/Function;)V addToBuilder a method_56459 + p 1 codecBuilder + p 2 bufferFactory + m ()Lnet/minecraft/network/codec/StreamCodec; serializer b comp_2233 + m (Lnet/minecraft/network/protocol/PacketType;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/protocol/ProtocolInfoBuilder$Implementation zl$b net/minecraft/class_9147$class_9149 + f Lnet/minecraft/network/ConnectionProtocol; id a comp_2234 + f Lnet/minecraft/network/protocol/PacketFlow; flow b comp_2235 + f Lnet/minecraft/network/codec/StreamCodec; codec c comp_2236 + f Lnet/minecraft/network/protocol/BundlerInfo; bundlerInfo d comp_2237 + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketFlow;Lnet/minecraft/network/codec/StreamCodec;Lnet/minecraft/network/protocol/BundlerInfo;)V +c net/minecraft/network/protocol/common/ClientCommonPacketListener zm net/minecraft/class_8705 + m (Lnet/minecraft/network/protocol/common/ClientboundCustomPayloadPacket;)V handleCustomPayload a method_52780 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundCustomReportDetailsPacket;)V handleCustomReportDetails a method_60883 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundDisconnectPacket;)V handleDisconnect a method_52781 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundKeepAlivePacket;)V handleKeepAlive a method_52782 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundPingPacket;)V handlePing a method_52783 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundResourcePackPopPacket;)V handleResourcePackPop a method_55512 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundResourcePackPushPacket;)V handleResourcePackPush a method_52784 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundServerLinksPacket;)V handleServerLinks a method_60884 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundStoreCookiePacket;)V handleStoreCookie a method_56149 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundTransferPacket;)V handleTransfer a method_56150 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ClientboundUpdateTagsPacket;)V handleUpdateTags a method_11126 + p 1 packet +c net/minecraft/network/protocol/common/ClientboundCustomPayloadPacket zn net/minecraft/class_2658 + f Lnet/minecraft/network/codec/StreamCodec; GAMEPLAY_STREAM_CODEC a field_48620 + f Lnet/minecraft/network/codec/StreamCodec; CONFIG_STREAM_CODEC b field_48621 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload c comp_1646 + f I MAX_PAYLOAD_SIZE d field_33326 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56460 a method_56460 + m (Ljava/util/ArrayList;)V method_58270 a method_58270 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_53024 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1646 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56461 b method_56461 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundCustomReportDetailsPacket zo net/minecraft/class_9814 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52185 + f Ljava/util/Map; details b comp_2858 + f I MAX_DETAIL_KEY_LENGTH c field_52186 + f I MAX_DETAIL_VALUE_LENGTH d field_52187 + f I MAX_DETAIL_COUNT e field_52188 + f Lnet/minecraft/network/codec/StreamCodec; DETAILS_STREAM_CODEC f field_52189 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_60929 + m ()Ljava/util/Map; details b comp_2858 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundDisconnectPacket zp net/minecraft/class_2661 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48622 + f Lnet/minecraft/network/chat/Component; reason b comp_2325 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11467 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; reason b comp_2325 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m ()V +c net/minecraft/network/protocol/common/ClientboundKeepAlivePacket zq net/minecraft/class_2670 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48623 + f J id b field_12211 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56463 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11518 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()J getId b method_11517 + m (J)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ClientboundPingPacket zr net/minecraft/class_6373 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48624 + f I id b field_33751 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56464 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_36949 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I getId b method_36950 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ClientboundResourcePackPopPacket zs net/minecraft/class_9053 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48625 + f Ljava/util/Optional; id b comp_2157 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56465 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_55582 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/Optional; id b comp_2157 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundResourcePackPushPacket zt net/minecraft/class_2720 + f I MAX_HASH_LENGTH a field_33340 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48626 + f Ljava/util/UUID; id c comp_2158 + f Ljava/lang/String; url d comp_2159 + f Ljava/lang/String; hash e comp_2160 + f Z required f comp_2161 + f Ljava/util/Optional; prompt g comp_2162 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_11774 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/UUID; id b comp_2158 + m ()Ljava/lang/String; url e comp_2159 + m ()Ljava/lang/String; hash f comp_2160 + m ()Z required g comp_2161 + m ()Ljava/util/Optional; prompt h comp_2162 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLjava/util/Optional;)V + p 1 id + p 2 url + p 3 hash + p 4 required + p 5 prompt + m ()V +c net/minecraft/network/protocol/common/ClientboundServerLinksPacket zu net/minecraft/class_9815 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52190 + f Ljava/util/List; links b comp_2859 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_60930 + m ()Ljava/util/List; links b comp_2859 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/ClientboundStoreCookiePacket zv net/minecraft/class_9150 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48627 + f Lnet/minecraft/network/codec/StreamCodec; PAYLOAD_STREAM_CODEC b field_49011 + f Lnet/minecraft/resources/ResourceLocation; key c comp_2238 + f [B payload d comp_2239 + f I MAX_PAYLOAD_SIZE e field_48628 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56467 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_56468 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2238 + m ()[B payload e comp_2239 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;[B)V + m ()V +c net/minecraft/network/protocol/common/ClientboundTransferPacket zw net/minecraft/class_9151 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48629 + f Ljava/lang/String; host b comp_2240 + f I port c comp_2241 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56469 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_56470 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/lang/String; host b comp_2240 + m ()I port e comp_2241 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/ClientboundUpdateTagsPacket zx net/minecraft/class_2790 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48630 + f Ljava/util/Map; tags b field_12757 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56471 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V method_34203 a method_34203 + m (Lnet/minecraft/network/protocol/common/ClientCommonPacketListener;)V handle a method_12001 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/Map; getTags b method_12000 + m (Ljava/util/Map;)V + p 1 tags + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/CommonPacketTypes zy net/minecraft/class_9152 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_PAYLOAD a field_48631 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_REPORT_DETAILS b field_52191 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DISCONNECT c field_48632 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_KEEP_ALIVE d field_48633 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PING e field_48634 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESOURCE_PACK_POP f field_48635 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESOURCE_PACK_PUSH g field_48636 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SERVER_LINKS h field_52192 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STORE_COOKIE i field_48637 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TRANSFER j field_48638 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_TAGS k field_48639 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CLIENT_INFORMATION l field_48640 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CUSTOM_PAYLOAD m field_48641 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_KEEP_ALIVE n field_48642 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PONG o field_48643 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RESOURCE_PACK p field_48644 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56472 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56473 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/common/ServerCommonPacketListener zz net/minecraft/class_8706 + m (Lnet/minecraft/network/protocol/common/ServerboundClientInformationPacket;)V handleClientInformation a method_12069 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundCustomPayloadPacket;)V handleCustomPayload a method_52392 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundKeepAlivePacket;)V handleKeepAlive a method_52393 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundPongPacket;)V handlePong a method_52394 + p 1 packet + m (Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket;)V handleResourcePackResponse a method_52395 + p 1 packet +c net/minecraft/network/protocol/common/ServerboundClientInformationPacket aaa net/minecraft/class_2803 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48645 + f Lnet/minecraft/server/level/ClientInformation; information b comp_1963 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56474 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12133 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/server/level/ClientInformation; information b comp_1963 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/server/level/ClientInformation;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundCustomPayloadPacket aab net/minecraft/class_2817 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48646 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1647 + f I MAX_PAYLOAD_SIZE c field_33361 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; method_56475 a method_56475 + m (Ljava/util/ArrayList;)V method_58271 a method_58271 + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12199 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; payload b comp_1647 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundKeepAlivePacket aac net/minecraft/class_2827 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48647 + f J id b field_12883 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56476 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12266 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()J getId b method_12267 + m (J)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ServerboundPongPacket aad net/minecraft/class_6374 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48648 + f I id b field_33752 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56477 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_36959 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I getId b method_36960 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/common/ServerboundResourcePackPacket aae net/minecraft/class_2856 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48649 + f Ljava/util/UUID; id b comp_2163 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; action c comp_2164 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56478 + p 1 buffer + m (Lnet/minecraft/network/protocol/common/ServerCommonPacketListener;)V handle a method_12409 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Ljava/util/UUID; id b comp_2163 + m ()Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; action e comp_2164 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action;)V + m ()V +c net/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action aae$a net/minecraft/class_2856$class_2857 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; SUCCESSFULLY_LOADED a field_13017 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DECLINED b field_13018 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; FAILED_DOWNLOAD c field_13015 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; ACCEPTED d field_13016 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DOWNLOADED e field_47704 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; INVALID_URL f field_47667 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; FAILED_RELOAD g field_47668 + f Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; DISCARDED h field_47669 + f [Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; $VALUES i field_13019 + m ()Z isTerminal a method_55627 + m ()[Lnet/minecraft/network/protocol/common/ServerboundResourcePackPacket$Action; $values b method_36961 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/BeeDebugPayload aaf net/minecraft/class_8707 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48650 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48651 + f Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo; beeInfo c comp_1648 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53028 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo; beeInfo b comp_1648 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo aaf$a net/minecraft/class_8707$class_5243 + f Ljava/util/UUID; uuid a comp_1649 + f I id b comp_1650 + f Lnet/minecraft/world/phys/Vec3; pos c comp_1651 + f Lnet/minecraft/world/level/pathfinder/Path; path d comp_1652 + f Lnet/minecraft/core/BlockPos; hivePos e comp_1653 + f Lnet/minecraft/core/BlockPos; flowerPos f comp_1654 + f I travelTicks g comp_1655 + f Ljava/util/Set; goals h comp_1656 + f Ljava/util/List; blacklistedHives i comp_1657 + m ()Ljava/lang/String; generateName a method_53029 + m (Lnet/minecraft/core/BlockPos;)Z hasHive a method_27649 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53030 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Path;)V method_53031 a method_53031 + m ()Ljava/util/UUID; uuid b comp_1649 + m ()I id c comp_1650 + m ()Lnet/minecraft/world/phys/Vec3; pos d comp_1651 + m ()Lnet/minecraft/world/level/pathfinder/Path; path e comp_1652 + m ()Lnet/minecraft/core/BlockPos; hivePos f comp_1653 + m ()Lnet/minecraft/core/BlockPos; flowerPos g comp_1654 + m ()I travelTicks h comp_1655 + m ()Ljava/util/Set; goals i comp_1656 + m ()Ljava/util/List; blacklistedHives j comp_1657 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/pathfinder/Path;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ILjava/util/Set;Ljava/util/List;)V +c net/minecraft/network/protocol/common/custom/BrainDebugPayload aag net/minecraft/class_8708 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48652 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48653 + f Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump; brainDump c comp_1658 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56480 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump; brainDump b comp_1658 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V + m ()V +c net/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump aag$a net/minecraft/class_8708$class_4232 + f Ljava/util/UUID; uuid a comp_1659 + f I id b comp_1660 + f Ljava/lang/String; name c comp_1661 + f Ljava/lang/String; profession d comp_1662 + f I xp e comp_1663 + f F health f comp_1664 + f F maxHealth g comp_1665 + f Lnet/minecraft/world/phys/Vec3; pos h comp_1666 + f Ljava/lang/String; inventory i comp_1667 + f Lnet/minecraft/world/level/pathfinder/Path; path j comp_1668 + f Z wantsGolem k comp_1669 + f I angerLevel l comp_1670 + f Ljava/util/List; activities m comp_1671 + f Ljava/util/List; behaviors n comp_1672 + f Ljava/util/List; memories o comp_1673 + f Ljava/util/List; gossips p comp_1674 + f Ljava/util/Set; pois q comp_1675 + f Ljava/util/Set; potentialPois r comp_1676 + m ()Ljava/util/UUID; uuid a comp_1659 + m (Lnet/minecraft/core/BlockPos;)Z hasPoi a method_23151 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53032 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Path;)V method_53033 a method_53033 + m ()I id b comp_1660 + m (Lnet/minecraft/core/BlockPos;)Z hasPotentialPoi b method_29388 + p 1 pos + m ()Ljava/lang/String; name c comp_1661 + m ()Ljava/lang/String; profession d comp_1662 + m ()I xp e comp_1663 + m ()F health f comp_1664 + m ()F maxHealth g comp_1665 + m ()Lnet/minecraft/world/phys/Vec3; pos h comp_1666 + m ()Ljava/lang/String; inventory i comp_1667 + m ()Lnet/minecraft/world/level/pathfinder/Path; path j comp_1668 + m ()Z wantsGolem k comp_1669 + m ()I angerLevel l comp_1670 + m ()Ljava/util/List; activities m comp_1671 + m ()Ljava/util/List; behaviors n comp_1672 + m ()Ljava/util/List; memories o comp_1673 + m ()Ljava/util/List; gossips p comp_1674 + m ()Ljava/util/Set; pois q comp_1675 + m ()Ljava/util/Set; potentialPois r comp_1676 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILjava/lang/String;Ljava/lang/String;IFFLnet/minecraft/world/phys/Vec3;Ljava/lang/String;Lnet/minecraft/world/level/pathfinder/Path;ZILjava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/List;Ljava/util/Set;Ljava/util/Set;)V +c net/minecraft/network/protocol/common/custom/BrandPayload aah net/minecraft/class_8709 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48654 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48655 + f Ljava/lang/String; brand c comp_1677 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56481 + p 1 buffer + m ()Ljava/lang/String; brand b comp_1677 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/common/custom/BreezeDebugPayload aai net/minecraft/class_9004 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48656 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48657 + f Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo; breezeInfo c comp_2115 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56482 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo; breezeInfo b comp_2115 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo aai$a net/minecraft/class_9004$class_9005 + f Ljava/util/UUID; uuid a comp_2116 + f I id b comp_2117 + f Ljava/lang/Integer; attackTarget c comp_2118 + f Lnet/minecraft/core/BlockPos; jumpTarget d comp_2119 + m ()Ljava/lang/String; generateName a method_55325 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55326 + p 1 buffer + m ()Ljava/util/UUID; uuid b comp_2116 + m ()I id c comp_2117 + m ()Ljava/lang/Integer; attackTarget d comp_2118 + m ()Lnet/minecraft/core/BlockPos; jumpTarget e comp_2119 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILjava/lang/Integer;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload aaj net/minecraft/class_8710 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a method_56479 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider;Ljava/util/List;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56485 + p 0 fallbackProvider + p 1 typeAndCodecs + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$TypeAndCodec;)Lnet/minecraft/resources/ResourceLocation; method_56486 a method_56486 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; createType a method_56483 + p 0 id + m (Lnet/minecraft/network/codec/StreamMemberEncoder;Lnet/minecraft/network/codec/StreamDecoder;)Lnet/minecraft/network/codec/StreamCodec; codec a method_56484 + p 0 encoder + p 1 decoder +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$1 aaj$1 net/minecraft/class_8710$1 + f Ljava/util/Map; val$idToType a field_48658 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider; val$fallback b field_48659 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/codec/StreamCodec; findCodec a method_56487 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload; decode a method_56488 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V writeCap a method_56489 + p 1 buffer + p 2 type + p 3 payload + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V encode a method_56490 + p 1 buffer + p 2 value + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$FallbackProvider aaj$a net/minecraft/class_8710$class_9153 +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$Type aaj$b net/minecraft/class_8710$class_9154 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2242 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2242 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/common/custom/CustomPacketPayload$TypeAndCodec aaj$c net/minecraft/class_8710$class_9155 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a comp_2243 + f Lnet/minecraft/network/codec/StreamCodec; codec b comp_2244 + m ()Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; type a comp_2243 + m ()Lnet/minecraft/network/codec/StreamCodec; codec b comp_2244 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type;Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/network/protocol/common/custom/DiscardedPayload aak net/minecraft/class_8711 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1678 + m (ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/common/custom/DiscardedPayload; method_56491 a method_56491 + m (Lnet/minecraft/network/protocol/common/custom/DiscardedPayload;Lnet/minecraft/network/FriendlyByteBuf;)V method_56493 a method_56493 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/network/codec/StreamCodec; codec a method_56492 + p 0 id + p 1 maxSize + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_1678 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/common/custom/GameEventDebugPayload aal net/minecraft/class_8712 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48660 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48661 + f Lnet/minecraft/resources/ResourceKey; gameEventType c comp_1679 + f Lnet/minecraft/world/phys/Vec3; pos d comp_1680 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56494 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceKey; gameEventType b comp_1679 + m ()Lnet/minecraft/world/phys/Vec3; pos c comp_1680 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V + m ()V +c net/minecraft/network/protocol/common/custom/GameEventListenerDebugPayload aam net/minecraft/class_8713 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48662 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48663 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerPos c comp_1681 + f I listenerRange d comp_1682 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; listenerPos b comp_1681 + m ()I listenerRange c comp_1682 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + m ()V +c net/minecraft/network/protocol/common/custom/GameTestAddMarkerDebugPayload aan net/minecraft/class_8714 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48664 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48665 + f Lnet/minecraft/core/BlockPos; pos c comp_1683 + f I color d comp_1684 + f Ljava/lang/String; text e comp_1685 + f I durationMs f comp_1686 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56495 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1683 + m ()I color c comp_1684 + m ()Ljava/lang/String; text d comp_1685 + m ()I durationMs e comp_1686 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/GameTestClearMarkersDebugPayload aao net/minecraft/class_8715 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48666 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48667 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56496 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V + m ()V +c net/minecraft/network/protocol/common/custom/GoalDebugPayload aap net/minecraft/class_8716 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48668 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48669 + f I entityId c comp_1687 + f Lnet/minecraft/core/BlockPos; pos d comp_1688 + f Ljava/util/List; goals e comp_1689 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56497 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/GoalDebugPayload$DebugGoal;)V method_53034 a method_53034 + m ()I entityId b comp_1687 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1688 + m ()Ljava/util/List; goals d comp_1689 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/core/BlockPos;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/GoalDebugPayload$DebugGoal aap$a net/minecraft/class_8716$class_8717 + f I priority a comp_1690 + f Z isRunning b comp_1691 + f Ljava/lang/String; name c comp_1692 + m ()I priority a comp_1690 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53035 + p 1 buffer + m ()Z isRunning b comp_1691 + m ()Ljava/lang/String; name c comp_1692 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IZLjava/lang/String;)V +c net/minecraft/network/protocol/common/custom/HiveDebugPayload aaq net/minecraft/class_8718 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48670 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48671 + f Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; hiveInfo c comp_1693 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56498 + p 1 buffer + m ()Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; hiveInfo b comp_1693 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;)V + m ()V +c net/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo aaq$a net/minecraft/class_8718$class_8719 + f Lnet/minecraft/core/BlockPos; pos a comp_1694 + f Ljava/lang/String; hiveType b comp_1695 + f I occupantCount c comp_1696 + f I honeyLevel d comp_1697 + f Z sedated e comp_1698 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1694 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53036 + p 1 buffer + m ()Ljava/lang/String; hiveType b comp_1695 + m ()I occupantCount c comp_1696 + m ()I honeyLevel d comp_1697 + m ()Z sedated e comp_1698 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;IIZ)V +c net/minecraft/network/protocol/common/custom/NeighborUpdatesDebugPayload aar net/minecraft/class_8720 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48672 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48673 + f J time c comp_1699 + f Lnet/minecraft/core/BlockPos; pos d comp_1700 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56499 + p 1 buffer + m ()J time b comp_1699 + m ()Lnet/minecraft/core/BlockPos; pos c comp_1700 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (JLnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/network/protocol/common/custom/PathfindingDebugPayload aas net/minecraft/class_8721 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48674 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48675 + f I entityId c comp_1701 + f Lnet/minecraft/world/level/pathfinder/Path; path d comp_1702 + f F maxNodeDistance e comp_1703 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56500 + p 1 buffer + m ()I entityId b comp_1701 + m ()Lnet/minecraft/world/level/pathfinder/Path; path c comp_1702 + m ()F maxNodeDistance d comp_1703 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/world/level/pathfinder/Path;F)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiAddedDebugPayload aat net/minecraft/class_8722 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48676 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48677 + f Lnet/minecraft/core/BlockPos; pos c comp_1704 + f Ljava/lang/String; poiType d comp_1705 + f I freeTicketCount e comp_1706 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56501 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1704 + m ()Ljava/lang/String; poiType c comp_1705 + m ()I freeTicketCount d comp_1706 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiRemovedDebugPayload aau net/minecraft/class_8723 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48678 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48679 + f Lnet/minecraft/core/BlockPos; pos c comp_1707 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56502 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1707 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/network/protocol/common/custom/PoiTicketCountDebugPayload aav net/minecraft/class_8724 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48680 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48681 + f Lnet/minecraft/core/BlockPos; pos c comp_1708 + f I freeTicketCount d comp_1709 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56503 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1708 + m ()I freeTicketCount c comp_1709 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;I)V + m ()V +c net/minecraft/network/protocol/common/custom/RaidsDebugPayload aaw net/minecraft/class_8725 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48682 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48683 + f Ljava/util/List; raidCenters c comp_1710 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56504 + p 1 buffer + m ()Ljava/util/List; raidCenters b comp_1710 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/StructuresDebugPayload aax net/minecraft/class_8726 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48684 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48685 + f Lnet/minecraft/resources/ResourceKey; dimension c comp_1711 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; mainBB d comp_1712 + f Ljava/util/List; pieces e comp_1713 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56505 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V writeBoundingBox a method_53037 + p 0 buffer + p 1 boundingBox + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/common/custom/StructuresDebugPayload$PieceInfo;)V method_53038 a method_53038 + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_1711 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; readBoundingBox b method_53039 + p 0 buffer + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; mainBB c comp_1712 + m ()Ljava/util/List; pieces d comp_1713 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/common/custom/StructuresDebugPayload$PieceInfo aax$a net/minecraft/class_8726$class_8727 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox a comp_1714 + f Z isStart b comp_1715 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox a comp_1714 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53040 + p 1 buffer + m ()Z isStart b comp_1715 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Z)V +c net/minecraft/network/protocol/common/custom/VillageSectionsDebugPayload aay net/minecraft/class_8728 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48686 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48687 + f Ljava/util/Set; villageChunks c comp_1716 + f Ljava/util/Set; notVillageChunks d comp_1717 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56506 + p 1 buffer + m ()Ljava/util/Set; villageChunks b comp_1716 + m ()Ljava/util/Set; notVillageChunks c comp_1717 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Set;Ljava/util/Set;)V + m ()V +c net/minecraft/network/protocol/common/custom/WorldGenAttemptDebugPayload aaz net/minecraft/class_8729 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48688 + f Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload$Type; TYPE b field_48689 + f Lnet/minecraft/core/BlockPos; pos c comp_1718 + f F scale d comp_1719 + f F red e comp_1720 + f F green f comp_1721 + f F blue g comp_1722 + f F alpha h comp_1723 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56507 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; pos b comp_1718 + m ()F scale c comp_1719 + m ()F red d comp_1720 + m ()F green e comp_1721 + m ()F blue f comp_1722 + m ()F alpha g comp_1723 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/BlockPos;FFFFF)V + m ()V +c net/minecraft/network/protocol/common/custom/package-info aba net/minecraft/class_8730 +c net/minecraft/network/protocol/common/package-info abb net/minecraft/class_8731 +c net/minecraft/network/protocol/configuration/ClientConfigurationPacketListener abc net/minecraft/class_8732 + m (Lnet/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket;)V handleConfigurationFinished a method_52794 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundRegistryDataPacket;)V handleRegistryData a method_52795 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundResetChatPacket;)V handleResetChat a method_58577 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundSelectKnownPacks;)V handleSelectKnownPacks a method_57045 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ClientboundUpdateEnabledFeaturesPacket;)V handleEnabledFeatures a method_52796 + p 1 packet +c net/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket abd net/minecraft/class_8733 + f Lnet/minecraft/network/protocol/configuration/ClientboundFinishConfigurationPacket; INSTANCE a field_48690 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48691 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_53041 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundRegistryDataPacket abe net/minecraft/class_8734 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48692 + f Lnet/minecraft/resources/ResourceKey; registry b comp_2258 + f Ljava/util/List; entries c comp_2259 + f Lnet/minecraft/network/codec/StreamCodec; REGISTRY_KEY_STREAM_CODEC d field_48777 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_53042 + m ()Lnet/minecraft/resources/ResourceKey; registry b comp_2258 + m ()Ljava/util/List; entries e comp_2259 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundResetChatPacket abf net/minecraft/class_9448 + f Lnet/minecraft/network/protocol/configuration/ClientboundResetChatPacket; INSTANCE a field_50083 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50084 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_58578 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundSelectKnownPacks abg net/minecraft/class_9250 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49141 + f Ljava/util/List; knownPacks b comp_2356 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_57073 + m ()Ljava/util/List; knownPacks b comp_2356 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/ClientboundUpdateEnabledFeaturesPacket abh net/minecraft/class_7832 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48693 + f Ljava/util/Set; features b comp_1113 + m (Lnet/minecraft/network/protocol/configuration/ClientConfigurationPacketListener;)V handle a method_46348 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56509 + p 1 buffer + m ()Ljava/util/Set; features b comp_1113 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/Set;)V + m ()V +c net/minecraft/network/protocol/configuration/ConfigurationPacketTypes abi net/minecraft/class_9156 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_FINISH_CONFIGURATION a field_48694 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REGISTRY_DATA b field_48695 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ENABLED_FEATURES c field_48696 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SELECT_KNOWN_PACKS d field_49018 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESET_CHAT e field_50085 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_FINISH_CONFIGURATION f field_48697 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SELECT_KNOWN_PACKS g field_49019 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56510 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56511 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ConfigurationProtocols abj net/minecraft/class_9157 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52194 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48698 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52195 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48699 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56512 a method_56512 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56513 b method_56513 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ServerConfigurationPacketListener abk net/minecraft/class_8735 + m (Lnet/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket;)V handleConfigurationFinished a method_52408 + p 1 packet + m (Lnet/minecraft/network/protocol/configuration/ServerboundSelectKnownPacks;)V handleSelectKnownPacks a method_56909 + p 1 packet +c net/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket abl net/minecraft/class_8736 + f Lnet/minecraft/network/protocol/configuration/ServerboundFinishConfigurationPacket; INSTANCE a field_48700 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48701 + m (Lnet/minecraft/network/protocol/configuration/ServerConfigurationPacketListener;)V handle a method_53043 + m ()V + m ()V +c net/minecraft/network/protocol/configuration/ServerboundSelectKnownPacks abm net/minecraft/class_9220 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49020 + f Ljava/util/List; knownPacks b comp_2326 + m (Lnet/minecraft/network/protocol/configuration/ServerConfigurationPacketListener;)V handle a method_56910 + m ()Ljava/util/List; knownPacks b comp_2326 + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/configuration/package-info abn net/minecraft/class_8737 +c net/minecraft/network/protocol/cookie/ClientCookiePacketListener abo net/minecraft/class_9087 + m (Lnet/minecraft/network/protocol/cookie/ClientboundCookieRequestPacket;)V handleRequestCookie a method_55845 + p 1 packet +c net/minecraft/network/protocol/cookie/ClientboundCookieRequestPacket abp net/minecraft/class_9088 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47892 + f Lnet/minecraft/resources/ResourceLocation; key b comp_2194 + m (Lnet/minecraft/network/protocol/cookie/ClientCookiePacketListener;)V handle a method_55847 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55848 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2194 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/network/protocol/cookie/CookiePacketTypes abq net/minecraft/class_9089 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COOKIE_REQUEST a field_47893 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_COOKIE_RESPONSE b field_47894 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_55849 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_55850 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/cookie/ServerCookiePacketListener abr net/minecraft/class_9090 + m (Lnet/minecraft/network/protocol/cookie/ServerboundCookieResponsePacket;)V handleCookieResponse a method_55851 + p 1 packet +c net/minecraft/network/protocol/cookie/ServerboundCookieResponsePacket abs net/minecraft/class_9091 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47895 + f Lnet/minecraft/resources/ResourceLocation; key b comp_2195 + f [B payload c comp_2196 + m (Lnet/minecraft/network/protocol/cookie/ServerCookiePacketListener;)V handle a method_55852 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55853 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; key b comp_2195 + m ()[B payload e comp_2196 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/resources/ResourceLocation;[B)V + m ()V +c net/minecraft/network/protocol/cookie/package-info abt net/minecraft/class_9092 +c net/minecraft/network/protocol/game/ClientGamePacketListener abu net/minecraft/class_2602 + c PacketListener for the client side of the PLAY protocol. + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)V handleAddEntity a method_11112 + c Spawns an instance of the objecttype indicated by the packet and sets its position and momentum + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAddExperienceOrbPacket;)V handleAddExperienceOrb a method_11091 + c Spawns an experience orb and sets its value (amount of XP) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAnimatePacket;)V handleAnimate a method_11160 + c Renders a specified animation: Waking up a player, a living entity swinging its currently held item, being hurt or receiving a critical hit by normal or magical means + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAwardStatsPacket;)V handleAwardStats a method_11129 + c Updates the players statistics or achievements + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockChangedAckPacket;)V handleBlockChangedAck a method_21707 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockDestructionPacket;)V handleBlockDestruction a method_11116 + c Updates all registered IWorldAccess instances with destroyBlockInWorldPartially + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket;)V handleBlockEntityData a method_11094 + c Updates the NBTTagCompound metadata of instances of the following entitytypes: Mob spawners, command blocks, beacons, skulls, flowerpot + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEventPacket;)V handleBlockEvent a method_11158 + c Triggers Block.onBlockEventReceived, which is implemented in BlockPistonBase for extension/retraction, BlockNote for setting the instrument (including audiovisual feedback) and in BlockContainer to set the number of players accessing a (Ender)Chest + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBlockUpdatePacket;)V handleBlockUpdate a method_11136 + c Updates the block and metadata and generates a blockupdate (and notify the clients) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket;)V handleBossUpdate a method_11078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundBundlePacket;)V handleBundlePacket a method_48294 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChangeDifficultyPacket;)V handleChangeDifficulty a method_11140 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunkBatchFinishedPacket;)V handleChunkBatchFinished a method_52799 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket;)V handleChunkBatchStart a method_52800 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket;)V handleChunksBiomes a method_49631 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundClearTitlesPacket;)V handleTitlesClear a method_34071 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket;)V handleCommandSuggestions a method_11081 + c This method is only called for manual tab-completion (the {@link net.minecraft.commands.synchronization.SuggestionProviders#ASK_SERVER minecraft:ask_server} suggestion provider). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket;)V handleCommands a method_11145 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerClosePacket;)V handleContainerClose a method_11102 + c Resets the ItemStack held in hand and closes the window that is opened + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetContentPacket;)V handleContainerContent a method_11153 + c Handles the placement of a specified ItemStack in a specified container/inventory slot + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetDataPacket;)V handleContainerSetData a method_11131 + c Sets the progressbar of the opened window to the specified value + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundContainerSetSlotPacket;)V handleContainerSetSlot a method_11109 + c Handles picking up an ItemStack or dropping one in your inventory or an open (non-creative) container + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCooldownPacket;)V handleItemCooldown a method_11087 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket;)V handleCustomChatCompletions a method_44763 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDamageEventPacket;)V handleDamageEvent a method_49034 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDebugSamplePacket;)V handleDebugSample a method_56607 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDeleteChatPacket;)V handleDeleteChat a method_44814 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundDisguisedChatPacket;)V handleDisguisedChat a method_45724 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundEntityEventPacket;)V handleEntityEvent a method_11148 + c Invokes the entities' handleUpdateHealth method which is implemented in LivingBase (hurt/death), MinecartMobSpawner (spawn delay), FireworkRocket & MinecartTNT (explosion), IronGolem (throwing,...), Witch (spawn particles), Zombie (villager transformation), Animal (breeding mode particles), Horse (breeding/smoke particles), Sheep (...), Tameable (...), Villager (particles for breeding mode, angry and happy), Wolf (...) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundExplodePacket;)V handleExplosion a method_11124 + c Initiates a new explosion (sound, particles, drop spawn) for the affected blocks indicated by the packet. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket;)V handleForgetLevelChunk a method_11107 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket;)V handleGameEvent a method_11085 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundHorseScreenOpenPacket;)V handleHorseScreenOpen a method_11089 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundHurtAnimationPacket;)V handleHurtAnimation a method_48295 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundInitializeBorderPacket;)V handleInitializeBorder a method_34072 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket;)V handleLevelChunkWithLight a method_11128 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelEventPacket;)V handleLevelEvent a method_11098 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLevelParticlesPacket;)V handleParticleEvent a method_11077 + c Spawns a specified number of particles at the specified location with a randomized displacement according to specified bounds + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacket;)V handleLightUpdatePacket a method_11143 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundLoginPacket;)V handleLogin a method_11120 + c Registers some server properties (gametype,hardcore-mode,terraintype,difficulty,player limit), creates a new WorldClient and sets the player initial dimension + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMapItemDataPacket;)V handleMapItemData a method_11088 + c Updates the worlds MapStorage with the specified MapData for the specified map-identifier and invokes a MapItemRenderer for it + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMerchantOffersPacket;)V handleMerchantOffers a method_17586 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket;)V handleMoveEntity a method_11155 + c Updates the specified entity's position by the specified relative moment and absolute rotation. Note that subclassing of the packet allows for the specification of a subset of this data (e.g. only rel. position, abs. rotation or both). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundMoveVehiclePacket;)V handleMoveVehicle a method_11134 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenBookPacket;)V handleOpenBook a method_17186 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenScreenPacket;)V handleOpenScreen a method_17587 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundOpenSignEditorPacket;)V handleOpenSignEditor a method_11108 + c Creates a sign in the specified location if it didn't exist and opens the GUI to edit its text + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlaceGhostRecipePacket;)V handlePlaceRecipe a method_11090 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerAbilitiesPacket;)V handlePlayerAbilities a method_11154 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerChatPacket;)V handlePlayerChat a method_43595 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEndPacket;)V handlePlayerCombatEnd a method_34073 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket;)V handlePlayerCombatEnter a method_34074 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatKillPacket;)V handlePlayerCombatKill a method_34075 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoRemovePacket;)V handlePlayerInfoRemove a method_45725 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket;)V handlePlayerInfoUpdate a method_11113 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerLookAtPacket;)V handleLookAt a method_11092 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerPositionPacket;)V handleMovePlayer a method_11157 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundProjectilePowerPacket;)V handleProjectilePowerPacket a method_59504 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket;)V handleAddOrRemoveRecipes a method_11115 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRemoveEntitiesPacket;)V handleRemoveEntities a method_11095 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRemoveMobEffectPacket;)V handleRemoveMobEffect a method_11119 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundResetScorePacket;)V handleResetScore a method_55450 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRespawnPacket;)V handleRespawn a method_11117 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundRotateHeadPacket;)V handleRotateMob a method_11139 + c Updates the direction in which the specified entity is looking, normally this head rotation is independent of the rotation of the entity itself + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket;)V handleChunkBlocksUpdate a method_11100 + c Received from the servers PlayerManager if between 1 and 64 blocks in a chunk are changed. If only one block requires an update, the server sends S23PacketBlockChange and if 64 or more blocks are changed, the server sends S21PacketChunkData + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSelectAdvancementsTabPacket;)V handleSelectAdvancementsTab a method_11161 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundServerDataPacket;)V handleServerData a method_44075 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket;)V setActionBarText a method_34076 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket;)V handleSetBorderCenter a method_34077 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderLerpSizePacket;)V handleSetBorderLerpSize a method_34078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderSizePacket;)V handleSetBorderSize a method_34079 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderWarningDelayPacket;)V handleSetBorderWarningDelay a method_34080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetBorderWarningDistancePacket;)V handleSetBorderWarningDistance a method_34081 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetCameraPacket;)V handleSetCamera a method_11111 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetCarriedItemPacket;)V handleSetCarriedItem a method_11135 + c Updates which hotbar slot of the player is currently selected + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetChunkCacheCenterPacket;)V handleSetChunkCacheCenter a method_20320 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetChunkCacheRadiusPacket;)V handleSetChunkCacheRadius a method_20203 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetDefaultSpawnPositionPacket;)V handleSetSpawn a method_11142 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetDisplayObjectivePacket;)V handleSetDisplayObjective a method_11159 + c Removes or sets the ScoreObjective to be displayed at a particular scoreboard position (list, sidebar, below name) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityDataPacket;)V handleSetEntityData a method_11093 + c Invoked when the server registers new proximate objects in your watchlist or when objects in your watchlist have changed -> Registers any changes locally + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityLinkPacket;)V handleEntityLinkPacket a method_11110 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEntityMotionPacket;)V handleSetEntityMotion a method_11132 + c Sets the velocity of the specified entity to the specified value + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetEquipmentPacket;)V handleSetEquipment a method_11151 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetExperiencePacket;)V handleSetExperience a method_11101 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetHealthPacket;)V handleSetHealth a method_11122 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetObjectivePacket;)V handleAddObjective a method_11144 + c May create a scoreboard objective, remove an objective from the scoreboard or update an objectives' displayname + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetPassengersPacket;)V handleSetEntityPassengersPacket a method_11080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket;)V handleSetPlayerTeamPacket a method_11099 + c Updates a team managed by the scoreboard: Create/Remove the team registration, Register/Remove the player-team-memberships, Set team displayname/prefix/suffix and/or whether friendly fire is enabled + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetScorePacket;)V handleSetScore a method_11118 + c Either updates the score with a specified value or removes the score for an objective + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetSimulationDistancePacket;)V handleSetSimulationDistance a method_39025 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetSubtitleTextPacket;)V setSubtitleText a method_34082 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTimePacket;)V handleSetTime a method_11079 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTitleTextPacket;)V setTitleText a method_34083 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSetTitlesAnimationPacket;)V setTitlesAnimation a method_34084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSoundEntityPacket;)V handleSoundEntityEvent a method_11125 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSoundPacket;)V handleSoundEvent a method_11146 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundStartConfigurationPacket;)V handleConfigurationStart a method_52798 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundStopSoundPacket;)V handleStopSoundEvent a method_11082 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundSystemChatPacket;)V handleSystemChat a method_43596 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTabListPacket;)V handleTabListCustomisation a method_11105 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTagQueryPacket;)V handleTagQueryPacket a method_11127 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTakeItemEntityPacket;)V handleTakeItemEntity a method_11150 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTeleportEntityPacket;)V handleTeleportEntity a method_11086 + c Updates an entity's position and rotation as specified by the packet + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTickingStatePacket;)V handleTickingState a method_54806 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundTickingStepPacket;)V handleTickingStep a method_54807 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket;)V handleUpdateAdvancementsPacket a method_11130 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket;)V handleUpdateAttributes a method_11149 + c Updates en entity's attributes and their respective modifiers, which are used for speed bonuses (player sprinting, animals fleeing, baby speed), weapon/tool attackDamage, hostiles followRange randomization, zombie maxHealth and knockback resistance as well as reinforcement spawning chance. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateMobEffectPacket;)V handleUpdateMobEffect a method_11084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket;)V handleUpdateRecipes a method_11106 + p 1 packet +c net/minecraft/network/protocol/game/ClientboundAddEntityPacket abv net/minecraft/class_2604 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47896 + f D MAGICAL_QUANTIZATION b field_33293 + f D LIMIT c field_33294 + f I id d field_11953 + f Ljava/util/UUID; uuid e field_11952 + f Lnet/minecraft/world/entity/EntityType; type f field_11955 + f D x g field_11948 + f D y h field_11946 + f D z i field_11956 + f I xa j field_11951 + f I ya k field_11950 + f I za l field_11949 + f B xRot m field_11947 + f B yRot n field_11957 + f B yHeadRot o field_38817 + f I data p field_11954 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11178 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55855 + p 1 buffer + m ()I getId b method_11167 + m ()Ljava/util/UUID; getUUID e method_11164 + m ()Lnet/minecraft/world/entity/EntityType; getType f method_11169 + m ()D getX g method_11175 + m ()D getY h method_11174 + m ()D getZ i method_11176 + m ()D getXa j method_11170 + m ()D getYa k method_11172 + m ()D getZa l method_11173 + m ()F getXRot m method_11171 + m ()F getYRot n method_11168 + m ()F getYHeadRot o method_43233 + m ()I getData p method_11166 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerEntity;)V + p 1 entity + p 2 serverEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerEntity;I)V + p 1 entity + p 2 serverEntity + p 3 data + m (Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;)V + p 1 entity + p 2 data + p 3 pos + m (ILjava/util/UUID;DDDFFLnet/minecraft/world/entity/EntityType;ILnet/minecraft/world/phys/Vec3;D)V + p 1 id + p 2 uuid + p 3 x + p 5 y + p 7 z + p 9 xRot + p 10 yRot + p 11 type + p 12 data + p 13 deltaMovement + p 14 yHeadRot + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAddExperienceOrbPacket abw net/minecraft/class_2606 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47897 + f I id b field_11974 + f D x c field_11972 + f D y d field_11971 + f D z e field_11970 + f I value f field_11973 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11182 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55856 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11183 + m ()D getX e method_11185 + m ()D getY f method_11181 + m ()D getZ g method_11180 + m ()I getValue h method_11184 + m (Lnet/minecraft/world/entity/ExperienceOrb;Lnet/minecraft/server/level/ServerEntity;)V + p 1 orb + p 2 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAnimatePacket abx net/minecraft/class_2616 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47898 + f I SWING_MAIN_HAND b field_33295 + f I WAKE_UP c field_33297 + f I SWING_OFF_HAND d field_33298 + f I CRITICAL_HIT e field_33299 + f I MAGIC_CRITICAL_HIT f field_33300 + f I id g field_12029 + f I action h field_12028 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11268 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55857 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11269 + m ()I getAction e method_11267 + m (Lnet/minecraft/world/entity/Entity;I)V + p 1 entity + p 2 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundAwardStatsPacket aby net/minecraft/class_2617 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47899 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats b comp_2197 + f Lnet/minecraft/network/codec/StreamCodec; STAT_VALUES_STREAM_CODEC c field_47900 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11270 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats b comp_2197 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V + p 1 stats + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockChangedAckPacket abz net/minecraft/class_4463 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47901 + f I sequence b comp_633 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_21708 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55858 + p 1 buffer + m ()I sequence b comp_633 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockDestructionPacket aca net/minecraft/class_2620 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47902 + f I id b field_12033 + f Lnet/minecraft/core/BlockPos; pos c field_12034 + f I progress d field_12032 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11279 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55859 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11280 + m ()Lnet/minecraft/core/BlockPos; getPos e method_11277 + m ()I getProgress f method_11278 + m (ILnet/minecraft/core/BlockPos;I)V + p 1 id + p 2 pos + p 3 progress + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket acb net/minecraft/class_2622 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47903 + f Lnet/minecraft/core/BlockPos; pos b field_12040 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type c field_12038 + c Used only for vanilla block entities + f Lnet/minecraft/nbt/CompoundTag; tag d field_12039 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11292 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; create a method_38585 + p 0 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/util/function/BiFunction;)Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; create a method_39026 + p 0 blockEntity + p 1 dataGetter + m ()Lnet/minecraft/core/BlockPos; getPos b method_11293 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; getType e method_11291 + m ()Lnet/minecraft/nbt/CompoundTag; getTag f method_11290 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 type + p 3 tag + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockEventPacket acc net/minecraft/class_2623 + c Triggers a block event on the client.\n\n@see Block#triggerEvent\n@see Level#blockEvent + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47904 + f Lnet/minecraft/core/BlockPos; pos b field_12044 + f I b0 c field_12042 + f I b1 d field_12041 + f Lnet/minecraft/world/level/block/Block; block e field_12043 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11297 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55860 + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11298 + m ()I getB0 e method_11294 + c First parameter of the block event. The meaning of this value depends on the block. + m ()I getB1 f method_11296 + c Second parameter of the block event. The meaning of this value depends on the block. + m ()Lnet/minecraft/world/level/block/Block; getBlock g method_11295 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V + p 1 pos + p 2 block + p 3 b0 + c first parameter of the block event. The meaning of this value depends on the block. + p 4 b1 + c second parameter of the block event. The meaning of this value depends on the block. + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBlockUpdatePacket acd net/minecraft/class_2626 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47905 + f Lnet/minecraft/core/BlockPos; pos b field_12052 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_12051 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11310 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_11308 + m ()Lnet/minecraft/core/BlockPos; getPos e method_11309 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)V + p 1 blockGetter + p 2 pos + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket ace net/minecraft/class_2629 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47906 + f I FLAG_DARKEN b field_33314 + f I FLAG_MUSIC c field_33315 + f I FLAG_FOG d field_33316 + f Ljava/util/UUID; id e field_12074 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; operation f field_12075 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; REMOVE_OPERATION g field_29099 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11330 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler;)V dispatch a method_34091 + p 1 handler + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createAddPacket a method_34089 + p 0 event + m (Ljava/util/UUID;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createRemovePacket a method_34090 + p 0 id + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55861 + p 1 buffer + m (ZZZ)I encodeProperties a method_34095 + p 0 darkenScreen + p 1 playMusic + p 2 createWorldFog + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateProgressPacket b method_34094 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateNamePacket c method_34096 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdateStylePacket d method_34097 + p 0 event + m (Lnet/minecraft/world/BossEvent;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket; createUpdatePropertiesPacket e method_34098 + p 0 event + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation;)V + p 1 id + p 2 operation + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$1 ace$1 net/minecraft/class_2629$1 + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$AddOperation ace$a net/minecraft/class_2629$class_5880 + f Lnet/minecraft/network/chat/Component; name a field_29100 + f F progress b field_29101 + f Lnet/minecraft/world/BossEvent$BossBarColor; color c field_29102 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay d field_29103 + f Z darkenScreen e field_29104 + f Z playMusic f field_29105 + f Z createWorldFog g field_29106 + m (Lnet/minecraft/world/BossEvent;)V + p 1 event + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler ace$b net/minecraft/class_2629$class_5881 + m (Ljava/util/UUID;)V remove a method_34099 + p 1 id + m (Ljava/util/UUID;F)V updateProgress a method_34100 + p 1 id + p 2 progress + m (Ljava/util/UUID;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V updateStyle a method_34101 + p 1 id + p 2 color + p 3 overlay + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;)V updateName a method_34102 + p 1 id + p 2 name + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;ZZZ)V add a method_34103 + p 1 id + p 2 name + p 3 progress + p 4 color + p 5 overlay + p 6 darkenScreen + p 7 playMusic + p 8 createWorldFog + m (Ljava/util/UUID;ZZZ)V updateProperties a method_34104 + p 1 id + p 2 darkenScreen + p 3 playMusic + p 4 createWorldFog +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation ace$c net/minecraft/class_2629$class_5882 + m ()Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; getType a method_34105 + m (Ljava/util/UUID;Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Handler;)V dispatch a method_34106 + p 1 id + p 2 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_34107 + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType ace$d net/minecraft/class_2629$class_5883 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; ADD a field_29107 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; REMOVE b field_29108 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_PROGRESS c field_29109 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_NAME d field_29110 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_STYLE e field_29111 + f Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; UPDATE_PROPERTIES f field_29112 + f Lnet/minecraft/network/codec/StreamDecoder; reader g field_29113 + f [Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; $VALUES h field_29114 + m ()[Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$OperationType; $values a method_36948 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket$Operation; method_34113 a method_34113 + m (Ljava/lang/String;ILnet/minecraft/network/codec/StreamDecoder;)V + p 3 reader + m ()V +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateNameOperation ace$e net/minecraft/class_2629$class_5884 + f Lnet/minecraft/network/chat/Component; name a comp_2260 + m ()Lnet/minecraft/network/chat/Component; name b comp_2260 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/Component;)V + p 1 name +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateProgressOperation ace$f net/minecraft/class_2629$class_5885 + f F progress a comp_2261 + m ()F progress b comp_2261 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (F)V + p 1 progress +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdatePropertiesOperation ace$g net/minecraft/class_2629$class_5886 + f Z darkenScreen a field_29117 + f Z playMusic b field_29118 + f Z createWorldFog c field_29119 + m (ZZZ)V + p 1 darkenScreen + p 2 playMusic + p 3 createWorldFog + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBossEventPacket$UpdateStyleOperation ace$h net/minecraft/class_2629$class_5887 + f Lnet/minecraft/world/BossEvent$BossBarColor; color a field_29120 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay b field_29121 + m (Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 color + p 2 overlay + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundBundleDelimiterPacket acf net/minecraft/class_9093 + m ()V +c net/minecraft/network/protocol/game/ClientboundBundlePacket acg net/minecraft/class_8042 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_48329 + m (Ljava/lang/Iterable;)V +c net/minecraft/network/protocol/game/ClientboundChangeDifficultyPacket ach net/minecraft/class_2632 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47907 + f Lnet/minecraft/world/Difficulty; difficulty b field_12090 + f Z locked c field_12091 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11341 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55862 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isLocked b method_11340 + m ()Lnet/minecraft/world/Difficulty; getDifficulty e method_11342 + m (Lnet/minecraft/world/Difficulty;Z)V + p 1 difficulty + p 2 locked + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundChunkBatchFinishedPacket aci net/minecraft/class_8738 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47908 + f I batchSize b comp_1725 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_53044 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55863 + p 1 buffer + m ()I batchSize b comp_1725 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket acj net/minecraft/class_8739 + f Lnet/minecraft/network/protocol/game/ClientboundChunkBatchStartPacket; INSTANCE a field_47909 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47910 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_53045 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunksBiomesPacket ack net/minecraft/class_8212 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47911 + f Ljava/util/List; chunkBiomeData b comp_1313 + f I TWO_MEGABYTES c field_43094 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_49687 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Ljava/util/List;)Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket; forChunks a method_49685 + p 0 chunks + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55864 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundChunksBiomesPacket$ChunkBiomeData;)V method_49686 a method_49686 + m ()Ljava/util/List; chunkBiomeData b comp_1313 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundChunksBiomesPacket$ChunkBiomeData ack$a net/minecraft/class_8212$class_8213 + f Lnet/minecraft/world/level/ChunkPos; pos a comp_1314 + f [B buffer b comp_1315 + m ()Lnet/minecraft/network/FriendlyByteBuf; getReadBuffer a method_49688 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)I calculateChunkSize a method_49689 + p 0 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_49690 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/chunk/LevelChunk;)V extractChunkData a method_49691 + p 0 buffer + p 1 chunk + m ()Lnet/minecraft/world/level/ChunkPos; pos b comp_1314 + m ()[B buffer c comp_1315 + m ()Lio/netty/buffer/ByteBuf; getWriteBuffer d method_49692 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/ChunkPos;[B)V +c net/minecraft/network/protocol/game/ClientboundClearTitlesPacket acl net/minecraft/class_5888 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47912 + f Z resetTimes b field_29122 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34115 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55865 + p 1 buffer + m ()Z shouldResetTimes b method_34116 + m (Z)V + p 1 resetTimes + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket acm net/minecraft/class_2639 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47913 + f I id b comp_2262 + f I start c comp_2263 + f I length d comp_2264 + f Ljava/util/List; suggestions e comp_2265 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11398 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lcom/mojang/brigadier/context/StringRange;Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry;)Lcom/mojang/brigadier/suggestion/Suggestion; method_56608 a method_56608 + m (Lcom/mojang/brigadier/suggestion/Suggestion;)Lnet/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry; method_56609 a method_56609 + m ()Lcom/mojang/brigadier/suggestion/Suggestions; toSuggestions b method_11397 + m ()I id e comp_2262 + m ()I start f comp_2263 + m ()I length g comp_2264 + m ()Ljava/util/List; suggestions h comp_2265 + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V + p 1 id + p 2 suggestions + m (IIILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandSuggestionsPacket$Entry acm$a net/minecraft/class_2639$class_9177 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48779 + f Ljava/lang/String; text b comp_2266 + f Ljava/util/Optional; tooltip c comp_2267 + m ()Ljava/lang/String; text a comp_2266 + m ()Ljava/util/Optional; tooltip b comp_2267 + m (Ljava/lang/String;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandsPacket acn net/minecraft/class_2641 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47914 + f B MASK_TYPE b field_33317 + f B FLAG_EXECUTABLE c field_33318 + f B FLAG_REDIRECT d field_33319 + f B FLAG_CUSTOM_SUGGESTIONS e field_33320 + f B TYPE_ROOT f field_33321 + f B TYPE_LITERAL g field_33322 + f B TYPE_ARGUMENT h field_33323 + f I rootIndex i field_38038 + f Ljava/util/List; entries j field_38039 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11404 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lcom/mojang/brigadier/tree/CommandNode;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry; createEntry a method_11401 + p 0 node + p 1 nodes + m (Lcom/mojang/brigadier/tree/RootCommandNode;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; enumerateNodes a method_30944 + p 0 rootNode + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/tree/RootCommandNode; getRoot a method_11403 + p 1 context + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Ljava/util/List; createEntries a method_30945 + p 0 nodes + m (Ljava/util/List;)V validateEntries a method_30946 + p 0 entries + m (Ljava/util/List;Ljava/util/function/BiPredicate;)V validateEntries a method_42067 + p 0 entries + p 1 validator + m (Ljava/util/function/BiPredicate;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_42068 a method_42068 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55867 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;B)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub; read a method_11402 + p 0 buffer + p 1 flags + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry;)V method_34119 a method_34119 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry; readNode b method_11405 + p 0 buffer + m (Lcom/mojang/brigadier/tree/RootCommandNode;)V + p 1 root + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$ArgumentNodeStub acn$a net/minecraft/class_2641$class_7232 + f Ljava/lang/String; id a field_38040 + f Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template; argumentType b field_38041 + f Lnet/minecraft/resources/ResourceLocation; suggestionId c field_38042 + m (Lcom/mojang/brigadier/suggestion/SuggestionProvider;)Lnet/minecraft/resources/ResourceLocation; getSuggestionId a method_42069 + p 0 provider + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_42072 + p 0 buffer + p 1 argumentInfoTemplate + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;)V serializeCap a method_42073 + p 0 buffer + p 1 argumentInfo + p 2 argumentInfoTemplate + m (Ljava/lang/String;Lnet/minecraft/commands/synchronization/ArgumentTypeInfo$Template;Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + p 2 argumentType + p 3 suggestionId + m (Lcom/mojang/brigadier/tree/ArgumentCommandNode;)V + p 1 argumentNode +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$Entry acn$b net/minecraft/class_2641$class_2642 + f Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub; stub a field_38043 + f I flags b field_12124 + f I redirect c field_12126 + f [I children d field_12125 + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z canBuild a method_42074 + p 1 children + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_42075 + p 1 buffer + m (Lit/unimi/dsi/fastutil/ints/IntSet;)Z canResolve b method_42076 + p 1 children + m (Lnet/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub;II[I)V + p 1 stub + p 2 flags + p 3 redirect + p 4 children +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$LiteralNodeStub acn$c net/minecraft/class_2641$class_7233 + f Ljava/lang/String; id a field_38044 + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeResolver acn$d net/minecraft/class_2641$class_7234 + f Lnet/minecraft/commands/CommandBuildContext; context a field_38045 + f Ljava/util/List; entries b field_38046 + f Ljava/util/List; nodes c field_38047 + m (I)Lcom/mojang/brigadier/tree/CommandNode; resolve a method_42077 + p 1 index + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42078 a method_42078 + m (Lnet/minecraft/commands/CommandBuildContext;Ljava/util/List;)V + p 1 context + p 2 entries +c net/minecraft/network/protocol/game/ClientboundCommandsPacket$NodeStub acn$e net/minecraft/class_2641$class_7235 + m (Lnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/builder/ArgumentBuilder; build a method_42070 + p 1 context + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_42071 + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundContainerClosePacket aco net/minecraft/class_2645 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47915 + f I containerId b field_12137 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11427 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55868 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_36148 + m (I)V + p 1 containerId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetContentPacket acp net/minecraft/class_2649 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47916 + f I containerId b field_12146 + f I stateId c field_34034 + f Ljava/util/List; items d field_12147 + f Lnet/minecraft/world/item/ItemStack; carriedItem e field_34035 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11439 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55869 + p 1 buffer + m ()I getContainerId b method_11440 + m ()Ljava/util/List; getItems e method_11441 + m ()Lnet/minecraft/world/item/ItemStack; getCarriedItem f method_37437 + m ()I getStateId g method_37438 + m (IILnet/minecraft/core/NonNullList;Lnet/minecraft/world/item/ItemStack;)V + p 1 containerId + p 2 stateId + p 3 items + p 4 carriedItem + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetDataPacket acq net/minecraft/class_2651 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47917 + f I containerId b field_12150 + f I id c field_12149 + f I value d field_12148 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11447 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55870 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_11448 + m ()I getId e method_11445 + m ()I getValue f method_11446 + m (III)V + p 1 containerId + p 2 id + p 3 value + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundContainerSetSlotPacket acr net/minecraft/class_2653 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47918 + f I CARRIED_ITEM b field_33324 + f I PLAYER_INVENTORY c field_33325 + f I containerId d field_12152 + f I stateId e field_34036 + f I slot f field_12151 + f Lnet/minecraft/world/item/ItemStack; itemStack g field_12153 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11451 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55871 + p 1 buffer + m ()I getContainerId b method_11452 + m ()I getSlot e method_11450 + m ()Lnet/minecraft/world/item/ItemStack; getItem f method_11449 + m ()I getStateId g method_37439 + m (IIILnet/minecraft/world/item/ItemStack;)V + p 1 containerId + p 2 stateId + p 3 slot + p 4 itemStack + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundCooldownPacket acs net/minecraft/class_2656 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47919 + f Lnet/minecraft/world/item/Item; item b comp_2198 + f I duration c comp_2199 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11455 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/world/item/Item; item b comp_2198 + m ()I duration e comp_2199 + m (Lnet/minecraft/world/item/Item;I)V + p 1 item + p 2 duration + m ()V +c net/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket act net/minecraft/class_7597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47920 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; action b comp_908 + f Ljava/util/List; entries c comp_909 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44783 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55872 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; action b comp_908 + m ()Ljava/util/List; entries e comp_909 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action;Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action act$a net/minecraft/class_7597$class_7598 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; ADD a field_39801 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; REMOVE b field_39802 + f Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; SET c field_39803 + f [Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; $VALUES d field_39804 + m ()[Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action; $values a method_44784 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDamageEventPacket acu net/minecraft/class_8143 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47921 + f I entityId b comp_1267 + f Lnet/minecraft/core/Holder; sourceType c comp_1268 + f I sourceCauseId d comp_1269 + f I sourceDirectId e comp_1270 + f Ljava/util/Optional; sourcePosition f comp_1271 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_49074 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/damagesource/DamageSource; getSource a method_49071 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)I readOptionalEntityId a method_49075 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;I)V writeOptionalEntityId a method_49072 + p 0 buffer + p 1 optionalEntityId + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/phys/Vec3;)V method_49073 a method_49073 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55873 + p 1 buffer + m ()I entityId b comp_1267 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/phys/Vec3; method_49076 b method_49076 + m ()Lnet/minecraft/core/Holder; sourceType e comp_1268 + m ()I sourceCauseId f comp_1269 + m ()I sourceDirectId g comp_1270 + m ()Ljava/util/Optional; sourcePosition h comp_1271 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V + p 1 entity + p 2 damageSource + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/core/Holder;IILjava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDebugSamplePacket acv net/minecraft/class_9178 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48780 + f [J sample b comp_2268 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; debugSampleType c comp_2269 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_56610 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56611 + p 1 buffer + m ()[J sample b comp_2268 + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; debugSampleType e comp_2269 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ([JLnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDeleteChatPacket acw net/minecraft/class_7617 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47922 + f Lnet/minecraft/network/chat/MessageSignature$Packed; messageSignature b comp_938 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44889 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55874 + p 1 buffer + m ()Lnet/minecraft/network/chat/MessageSignature$Packed; messageSignature b comp_938 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/MessageSignature$Packed;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundDisguisedChatPacket acx net/minecraft/class_7827 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47923 + f Lnet/minecraft/network/chat/Component; message b comp_1097 + f Lnet/minecraft/network/chat/ChatType$Bound; chatType c comp_1098 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_46324 + m ()Lnet/minecraft/network/chat/Component; message b comp_1097 + m ()Lnet/minecraft/network/chat/ChatType$Bound; chatType e comp_1098 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundEntityEventPacket acy net/minecraft/class_2663 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47924 + f I entityId b field_12175 + f B eventId c field_12174 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11471 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11469 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55876 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()B getEventId b method_11470 + m (Lnet/minecraft/world/entity/Entity;B)V + p 1 entity + p 2 eventId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundExplodePacket acz net/minecraft/class_2664 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47925 + f D x b field_12180 + f D y c field_12178 + f D z d field_12177 + f F power e field_12179 + f Ljava/util/List; toBlow f field_12181 + f F knockbackX g field_12176 + f F knockbackY h field_12183 + f F knockbackZ i field_12182 + f Lnet/minecraft/core/particles/ParticleOptions; smallExplosionParticles j field_47515 + f Lnet/minecraft/core/particles/ParticleOptions; largeExplosionParticles k field_47516 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; blockInteraction l field_47517 + f Lnet/minecraft/core/Holder; explosionSound m field_47518 + m (IIILnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/core/BlockPos; method_34121 a method_34121 + m (IIILnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/core/BlockPos;)V method_34122 a method_34122 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11480 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55877 + p 1 buffer + m ()F getKnockbackX b method_11472 + m ()F getKnockbackY e method_11473 + m ()F getKnockbackZ f method_11474 + m ()D getX g method_11475 + m ()D getY h method_11477 + m ()D getZ i method_11478 + m ()F getPower j method_11476 + m ()Ljava/util/List; getToBlow k method_11479 + m ()Lnet/minecraft/world/level/Explosion$BlockInteraction; getBlockInteraction l method_55328 + m ()Lnet/minecraft/core/particles/ParticleOptions; getSmallExplosionParticles m method_55329 + m ()Lnet/minecraft/core/particles/ParticleOptions; getLargeExplosionParticles n method_55330 + m ()Lnet/minecraft/core/Holder; getExplosionSound o method_55331 + m (DDDFLjava/util/List;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 x + p 3 y + p 5 z + p 7 power + p 8 toBlow + p 9 knockback + p 10 blockInteraction + p 11 smallExplosionParticles + p 12 largeExplosionParticles + p 13 explosionSound + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket ada net/minecraft/class_2666 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47926 + f Lnet/minecraft/world/level/ChunkPos; pos b comp_1726 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11486 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55878 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/level/ChunkPos; pos b comp_1726 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/ChunkPos;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundGameEventPacket adb net/minecraft/class_2668 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47927 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; NO_RESPAWN_BLOCK_AVAILABLE b field_25645 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; START_RAINING c field_25646 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; STOP_RAINING d field_25647 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; CHANGE_GAME_MODE e field_25648 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; WIN_GAME f field_25649 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; DEMO_EVENT g field_25650 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; ARROW_HIT_PLAYER h field_25651 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; RAIN_LEVEL_CHANGE i field_25652 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; THUNDER_LEVEL_CHANGE j field_25653 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; PUFFER_FISH_STING k field_25654 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; GUARDIAN_ELDER_EFFECT l field_25655 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; IMMEDIATE_RESPAWN m field_25656 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; LIMITED_CRAFTING n field_46189 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; LEVEL_CHUNKS_LOAD_START o field_46637 + f I DEMO_PARAM_INTRO p field_33328 + f I DEMO_PARAM_HINT_1 q field_33329 + f I DEMO_PARAM_HINT_2 r field_33330 + f I DEMO_PARAM_HINT_3 s field_33331 + f I DEMO_PARAM_HINT_4 t field_33332 + f Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; event u field_12199 + f F param v field_12198 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11490 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55879 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type; getEvent b method_11491 + m ()F getParam e method_11492 + m (Lnet/minecraft/network/protocol/game/ClientboundGameEventPacket$Type;F)V + p 1 event + p 2 param + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundGameEventPacket$Type adb$a net/minecraft/class_2668$class_5402 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; TYPES a field_25657 + f I id b field_25658 + m (I)V + p 1 id + m ()V +c net/minecraft/network/protocol/game/ClientboundHorseScreenOpenPacket adc net/minecraft/class_2648 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47928 + f I containerId b field_12144 + f I inventoryColumns c field_12143 + f I entityId d field_12142 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11437 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55880 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_11432 + m ()I getInventoryColumns e method_11434 + m ()I getEntityId f method_11433 + m (III)V + p 1 containerId + p 2 size + p 3 entityId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundHurtAnimationPacket add net/minecraft/class_8043 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47929 + f I id b comp_1202 + f F yaw c comp_1203 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_48330 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55881 + p 1 buffer + m ()I id b comp_1202 + m ()F yaw e comp_1203 + m (Lnet/minecraft/world/entity/LivingEntity;)V + p 1 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IF)V + m ()V +c net/minecraft/network/protocol/game/ClientboundInitializeBorderPacket ade net/minecraft/class_5889 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47930 + f D newCenterX b field_29123 + f D newCenterZ c field_29124 + f D oldSize d field_29125 + f D newSize e field_29126 + f J lerpTime f field_29127 + f I newAbsoluteMaxSize g field_29128 + f I warningBlocks h field_29129 + f I warningTime i field_29130 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34123 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55882 + p 1 buffer + m ()D getNewCenterX b method_34124 + m ()D getNewCenterZ e method_34125 + m ()D getNewSize f method_34126 + m ()D getOldSize g method_34127 + m ()J getLerpTime h method_34128 + m ()I getNewAbsoluteMaxSize i method_34129 + m ()I getWarningTime j method_34130 + m ()I getWarningBlocks k method_34131 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData adf net/minecraft/class_6603 + f I TWO_MEGABYTES a field_34862 + f Lnet/minecraft/nbt/CompoundTag; heightmaps b field_34863 + f [B buffer c field_34864 + f Ljava/util/List; blockEntitiesData d field_34865 + m ()Lnet/minecraft/network/FriendlyByteBuf; getReadBuffer a method_38586 + m (II)Ljava/util/function/Consumer; getBlockEntitiesTagsConsumer a method_38587 + p 1 chunkX + p 2 chunkZ + m (IILnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput;)V method_38588 a method_38588 + m (Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput;II)V getBlockEntitiesTags a method_38593 + p 1 output + p 2 chunkX + p 3 chunkZ + m (Lnet/minecraft/world/level/chunk/LevelChunk;)I calculateChunkSize a method_38589 + p 0 chunk + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/chunk/LevelChunk;)V extractChunkData a method_38591 + p 0 buffer + p 1 chunk + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_38590 + p 1 buffer + m ()Lnet/minecraft/nbt/CompoundTag; getHeightmaps b method_38594 + m ()Lio/netty/buffer/ByteBuf; getWriteBuffer c method_38595 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 levelChunk + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;II)V + p 1 buffer + p 2 x + p 3 z +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityInfo adf$a net/minecraft/class_6603$class_6604 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47931 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC b field_47932 + f I packedXZ c field_34866 + f I y d field_34867 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type e field_34868 + f Lnet/minecraft/nbt/CompoundTag; tag f field_34869 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityInfo; create a method_38596 + p 0 blockEntity + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_38597 + p 1 buffer + m (IILnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 packedXZ + p 2 y + p 3 type + p 4 tag + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelChunkPacketData$BlockEntityTagOutput adf$b net/minecraft/class_6603$class_6605 +c net/minecraft/network/protocol/game/ClientboundLevelChunkWithLightPacket adg net/minecraft/class_2672 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47933 + f I x b field_12236 + f I z c field_12235 + f Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData; chunkData d field_34870 + f Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; lightData e field_34871 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11528 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55883 + p 1 buffer + m ()I getX b method_11523 + m ()I getZ e method_11524 + m ()Lnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData; getChunkData f method_38598 + m ()Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; getLightData g method_38599 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunk + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelEventPacket adh net/minecraft/class_2673 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47934 + f I type b field_12241 + f Lnet/minecraft/core/BlockPos; pos c field_12242 + f I data d field_12239 + c can be a block/item id or other depending on the soundtype + f Z globalEvent e field_12240 + c If true the sound is played across the server + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11535 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55884 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isGlobalEvent b method_11533 + m ()I getType e method_11532 + m ()I getData f method_11534 + m ()Lnet/minecraft/core/BlockPos; getPos g method_11531 + m (ILnet/minecraft/core/BlockPos;IZ)V + p 1 type + p 2 pos + p 3 data + p 4 globalEvent + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLevelParticlesPacket adi net/minecraft/class_2675 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47935 + f D x b field_12258 + f D y c field_12257 + f D z d field_12256 + f F xDist e field_12255 + f F yDist f field_12252 + f F zDist g field_12251 + f F maxSpeed h field_12260 + f I count i field_12253 + f Z overrideLimiter j field_12254 + f Lnet/minecraft/core/particles/ParticleOptions; particle k field_12259 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11553 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55885 + p 1 buffer + m ()Z isOverrideLimiter b method_11552 + m ()D getX e method_11544 + c Gets the x coordinate to spawn the particle. + m ()D getY f method_11547 + c Gets the y coordinate to spawn the particle. + m ()D getZ g method_11546 + c Gets the z coordinate to spawn the particle. + m ()F getXDist h method_11548 + c Gets the x coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getYDist i method_11549 + c Gets the y coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getZDist j method_11550 + c Gets the z coordinate offset for the particle. The particle may use the offset for particle spread. + m ()F getMaxSpeed k method_11543 + c Gets the speed of the particle animation (used in client side rendering). + m ()I getCount l method_11545 + c Gets the amount of particles to spawn + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle m method_11551 + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDFFFFI)V + p 1 particle + p 2 overrideLimiter + p 3 x + p 5 y + p 7 z + p 9 xDist + p 10 yDist + p 11 zDist + p 12 maxSpeed + p 13 count + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLightUpdatePacket adj net/minecraft/class_2676 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47936 + f I x b field_12265 + f I z c field_12264 + f Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; lightData d field_34872 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11560 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55886 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getX b method_11558 + m ()I getZ e method_11554 + m ()Lnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData; getLightData f method_38600 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunkPos + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundLightUpdatePacketData adk net/minecraft/class_6606 + f Lnet/minecraft/network/codec/StreamCodec; DATA_LAYER_STREAM_CODEC a field_48781 + f Ljava/util/BitSet; skyYMask b field_34873 + f Ljava/util/BitSet; blockYMask c field_34874 + f Ljava/util/BitSet; emptySkyYMask d field_34875 + f Ljava/util/BitSet; emptyBlockYMask e field_34876 + f Ljava/util/List; skyUpdates f field_34877 + f Ljava/util/List; blockUpdates g field_34878 + m ()Ljava/util/BitSet; getSkyYMask a method_38601 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/world/level/LightLayer;ILjava/util/BitSet;Ljava/util/BitSet;Ljava/util/List;)V prepareSectionData a method_38602 + p 1 chunkPos + p 2 levelLightEngine + p 3 lightLayer + p 4 index + p 5 skyLight + p 6 blockLight + p 7 updates + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_38603 + p 1 buffer + m ()Ljava/util/BitSet; getEmptySkyYMask b method_38604 + m ()Ljava/util/List; getSkyUpdates c method_38606 + m ()Ljava/util/BitSet; getBlockYMask d method_38608 + m ()Ljava/util/BitSet; getEmptyBlockYMask e method_38609 + m ()Ljava/util/List; getBlockUpdates f method_38610 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/lighting/LevelLightEngine;Ljava/util/BitSet;Ljava/util/BitSet;)V + p 1 chunkPos + p 2 lightEngine + p 3 skyLight + p 4 blockLight + m (Lnet/minecraft/network/FriendlyByteBuf;II)V + p 1 buffer + p 2 x + p 3 z + m ()V +c net/minecraft/network/protocol/game/ClientboundLoginPacket adl net/minecraft/class_2678 + c @param showDeathScreen Set to false when the doImmediateRespawn gamerule is true + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47937 + f I playerId b comp_88 + f Z hardcore c comp_89 + f Ljava/util/Set; levels d comp_92 + f I maxPlayers e comp_97 + f I chunkRadius f comp_98 + f I simulationDistance g comp_169 + f Z reducedDebugInfo h comp_99 + f Z showDeathScreen i comp_100 + c Set to false when the doImmediateRespawn gamerule is true + f Z doLimitedCrafting j comp_1964 + f Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo k comp_1727 + f Z enforcesSecureChat l comp_2200 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11567 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/resources/ResourceKey; method_34135 a method_34135 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55887 + p 1 buffer + m ()I playerId b comp_88 + m ()Z hardcore e comp_89 + m ()Ljava/util/Set; levels f comp_92 + m ()I maxPlayers g comp_97 + m ()I chunkRadius h comp_98 + m ()I simulationDistance i comp_169 + m ()Z reducedDebugInfo j comp_99 + m ()Z showDeathScreen k comp_100 + m ()Z doLimitedCrafting l comp_1964 + m ()Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo m comp_1727 + m ()Z enforcesSecureChat n comp_2200 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (IZLjava/util/Set;IIIZZZLnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo;Z)V + p 1 playerId + p 2 hardcore + p 3 levels + p 4 maxPlayers + p 5 chunkRadius + p 6 simulationDistance + p 7 reducedDebugInfo + p 8 showDeathScreen + c Set to false when the doImmediateRespawn gamerule is true + p 9 doLimitedCrafting + p 10 commonPlayerSpawnInfo + p 11 enforcesSecureChat + m ()V +c net/minecraft/network/protocol/game/ClientboundMapItemDataPacket adm net/minecraft/class_2683 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47938 + f Lnet/minecraft/world/level/saveddata/maps/MapId; mapId b comp_2270 + f B scale c comp_2271 + f Z locked d comp_2272 + f Ljava/util/Optional; decorations e comp_2273 + f Ljava/util/Optional; colorPatch f comp_2274 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11643 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V applyToMap a method_11642 + c Sets new MapData from the packet to given MapData param + p 1 mapData + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch;)V method_56618 a method_56618 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; mapId b comp_2270 + m ()B scale e comp_2271 + m ()Z locked f comp_2272 + m ()Ljava/util/Optional; decorations g comp_2273 + m ()Ljava/util/Optional; colorPatch h comp_2274 + m (Lnet/minecraft/world/level/saveddata/maps/MapId;BZLjava/util/Collection;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch;)V + p 1 mapId + p 2 scale + p 3 locked + p 4 decorations + p 5 colorPatch + m (Lnet/minecraft/world/level/saveddata/maps/MapId;BZLjava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundMerchantOffersPacket adn net/minecraft/class_3943 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47939 + f I containerId b field_17434 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers c field_17435 + f I villagerLevel d field_18801 + f I villagerXp e field_18802 + f Z showProgress f field_18803 + f Z canRestock g field_19376 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17588 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55889 + p 1 buffer + m ()I getContainerId b method_17589 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers e method_17590 + m ()I getVillagerLevel f method_19458 + m ()I getVillagerXp g method_19459 + m ()Z showProgress h method_19460 + m ()Z canRestock i method_20722 + m (ILnet/minecraft/world/item/trading/MerchantOffers;IIZZ)V + p 1 containerId + p 2 offers + p 3 villagerLevel + p 4 villagerXp + p 5 showProgress + p 6 canRestock + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket ado net/minecraft/class_2684 + f I entityId a field_12310 + f S xa b field_12309 + f S ya c field_12308 + f S za d field_12307 + f B yRot e field_12312 + f B xRot f field_12311 + f Z onGround g field_12306 + f Z hasRot h field_12305 + f Z hasPos i field_20849 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11651 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11645 + p 1 level + m ()S getXa b method_36150 + m ()S getYa e method_36151 + m ()S getZa f method_36152 + m ()B getyRot g method_11649 + m ()B getxRot h method_11650 + m ()Z hasRotation i method_11652 + m ()Z hasPosition j method_22826 + m ()Z isOnGround k method_11653 + m (ISSSBBZZZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 yRot + p 6 xRot + p 7 onGround + p 8 hasRot + p 9 hasPos +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Pos ado$a net/minecraft/class_2684$class_2685 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47940 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Pos; read a method_34138 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55890 + c Writes the raw packet data to the data stream. + p 1 buffer + m (ISSSZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$PosRot ado$b net/minecraft/class_2684$class_2686 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47941 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$PosRot; read a method_34139 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55891 + c Writes the raw packet data to the data stream. + p 1 buffer + m (ISSSBBZ)V + p 1 entityId + p 2 xa + p 3 ya + p 4 za + p 5 yRot + p 6 xRot + p 7 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Rot ado$c net/minecraft/class_2684$class_2687 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_47942 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundMoveEntityPacket$Rot; read a method_34140 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55892 + c Writes the raw packet data to the data stream. + p 1 buffer + m (IBBZ)V + p 1 entityId + p 2 yRot + p 3 xRot + p 4 onGround + m ()V +c net/minecraft/network/protocol/game/ClientboundMoveVehiclePacket adp net/minecraft/class_2692 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47943 + f D x b field_12324 + f D y c field_12322 + f D z d field_12320 + f F yRot e field_12323 + f F xRot f field_12321 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11672 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55893 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_11673 + m ()D getY e method_11674 + m ()D getZ f method_11670 + m ()F getYRot g method_11675 + m ()F getXRot h method_11671 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenBookPacket adq net/minecraft/class_3895 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47944 + f Lnet/minecraft/world/InteractionHand; hand b field_17199 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17187 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55894 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_17188 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenScreenPacket adr net/minecraft/class_3944 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47945 + f I containerId b field_17436 + f Lnet/minecraft/world/inventory/MenuType; type c field_17437 + f Lnet/minecraft/network/chat/Component; title d field_17438 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_17591 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I getContainerId b method_17592 + m ()Lnet/minecraft/world/inventory/MenuType; getType e method_17593 + m ()Lnet/minecraft/network/chat/Component; getTitle f method_17594 + m (ILnet/minecraft/world/inventory/MenuType;Lnet/minecraft/network/chat/Component;)V + p 1 containerId + p 2 menuType + p 3 title + m ()V +c net/minecraft/network/protocol/game/ClientboundOpenSignEditorPacket ads net/minecraft/class_2693 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47946 + f Lnet/minecraft/core/BlockPos; pos b field_12325 + f Z isFrontText c field_43387 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11676 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55895 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11677 + m ()Z isFrontText e method_49995 + m (Lnet/minecraft/core/BlockPos;Z)V + p 1 pos + p 2 isFrontText + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlaceGhostRecipePacket adt net/minecraft/class_2695 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47947 + f I containerId b field_12333 + f Lnet/minecraft/resources/ResourceLocation; recipe c field_12332 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11686 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55896 + c Writes the raw packet data to the data stream. + p 1 byteBuf + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe b method_11684 + m ()I getContainerId e method_11685 + m (ILnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 containerId + p 2 recipe + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerAbilitiesPacket adu net/minecraft/class_2696 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47948 + f I FLAG_INVULNERABLE b field_33336 + f I FLAG_FLYING c field_33337 + f I FLAG_CAN_FLY d field_33338 + f I FLAG_INSTABUILD e field_33339 + f Z invulnerable f field_12339 + f Z isFlying g field_12338 + f Z canFly h field_12337 + f Z instabuild i field_12336 + f F flyingSpeed j field_12335 + f F walkingSpeed k field_12334 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11697 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55897 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isInvulnerable b method_11695 + m ()Z isFlying e method_11698 + m ()Z canFly f method_11699 + m ()Z canInstabuild g method_11696 + m ()F getFlyingSpeed h method_11690 + m ()F getWalkingSpeed i method_11691 + m (Lnet/minecraft/world/entity/player/Abilities;)V + p 1 abilities + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerChatPacket adv net/minecraft/class_7438 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47949 + f Ljava/util/UUID; sender b comp_1099 + f I index c comp_1100 + f Lnet/minecraft/network/chat/MessageSignature; signature d comp_1101 + f Lnet/minecraft/network/chat/SignedMessageBody$Packed; body e comp_1102 + f Lnet/minecraft/network/chat/Component; unsignedContent f comp_1103 + f Lnet/minecraft/network/chat/FilterMask; filterMask g comp_1104 + f Lnet/minecraft/network/chat/ChatType$Bound; chatType h comp_943 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_43629 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55898 + p 1 buffer + m ()Ljava/util/UUID; sender b comp_1099 + m ()I index e comp_1100 + m ()Lnet/minecraft/network/chat/MessageSignature; signature f comp_1101 + m ()Lnet/minecraft/network/chat/SignedMessageBody$Packed; body g comp_1102 + m ()Lnet/minecraft/network/chat/Component; unsignedContent h comp_1103 + m ()Lnet/minecraft/network/chat/FilterMask; filterMask i comp_1104 + m ()Lnet/minecraft/network/chat/ChatType$Bound; chatType j comp_943 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/UUID;ILnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/SignedMessageBody$Packed;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/FilterMask;Lnet/minecraft/network/chat/ChatType$Bound;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatEndPacket adw net/minecraft/class_5890 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47950 + f I duration b field_29132 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34141 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55899 + p 1 buffer + m (Lnet/minecraft/world/damagesource/CombatTracker;)V + p 1 combatTracker + m (I)V + p 1 duration + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket adx net/minecraft/class_5891 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerCombatEnterPacket; INSTANCE a field_47951 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47952 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34142 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerCombatKillPacket ady net/minecraft/class_5892 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47953 + f I playerId b comp_2275 + f Lnet/minecraft/network/chat/Component; message c comp_2276 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34143 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()I playerId b comp_2275 + m ()Lnet/minecraft/network/chat/Component; message e comp_2276 + m (ILnet/minecraft/network/chat/Component;)V + p 1 playerId + p 2 message + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoRemovePacket adz net/minecraft/class_7828 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47954 + f Ljava/util/List; profileIds b comp_1105 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_46325 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55901 + p 1 buffer + m ()Ljava/util/List; profileIds b comp_1105 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket aea net/minecraft/class_2703 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47955 + f Ljava/util/EnumSet; actions b field_40698 + f Ljava/util/List; entries c field_12369 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11721 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Ljava/util/Collection;)Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket; createPlayerInitializing a method_43886 + p 0 players + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry; method_46328 a method_46328 + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46326 a method_46326 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55902 + p 1 buffer + m ()Ljava/util/EnumSet; actions b method_46327 + m ()Ljava/util/List; entries e method_46329 + m ()Ljava/util/List; newEntries f method_46330 + m (Ljava/util/EnumSet;Ljava/util/Collection;)V + p 1 actions + p 2 players + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action;Lnet/minecraft/server/level/ServerPlayer;)V + p 1 action + p 2 player + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action aea$a net/minecraft/class_2703$class_5893 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; ADD_PLAYER a field_29136 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; INITIALIZE_CHAT b field_40699 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_GAME_MODE c field_29137 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_LISTED d field_40700 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_LATENCY e field_29138 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; UPDATE_DISPLAY_NAME f field_29139 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader; reader g field_40701 + f Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer; writer h field_40702 + f [Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; $VALUES i field_29141 + m ()[Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action; $values a method_36951 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46332 a method_46332 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46331 a method_46331 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46334 b method_46334 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46333 b method_46333 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46336 c method_46336 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46335 c method_46335 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46338 d method_46338 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46337 d method_46337 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46340 e method_46340 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46339 e method_46339 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V method_46342 f method_46342 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;)V method_46341 f method_46341 + m (Ljava/lang/String;ILnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer;)V + p 3 reader + p 4 writer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Reader aea$a$a net/minecraft/class_2703$class_5893$class_7829 +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action$Writer aea$a$b net/minecraft/class_2703$class_5893$class_7830 +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry aea$b net/minecraft/class_2703$class_2705 + f Ljava/util/UUID; profileId a comp_1106 + f Lcom/mojang/authlib/GameProfile; profile b comp_1107 + f Z listed c comp_1108 + f I latency d comp_1109 + f Lnet/minecraft/world/level/GameType; gameMode e comp_1110 + f Lnet/minecraft/network/chat/Component; displayName f comp_1111 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g comp_1112 + m ()Ljava/util/UUID; profileId a comp_1106 + m ()Lcom/mojang/authlib/GameProfile; profile b comp_1107 + m ()Z listed c comp_1108 + m ()I latency d comp_1109 + m ()Lnet/minecraft/world/level/GameType; gameMode e comp_1110 + m ()Lnet/minecraft/network/chat/Component; displayName f comp_1111 + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g comp_1112 + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player + m (Ljava/util/UUID;Lcom/mojang/authlib/GameProfile;ZILnet/minecraft/world/level/GameType;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/RemoteChatSession$Data;)V +c net/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$EntryBuilder aea$c net/minecraft/class_2703$class_7831 + f Ljava/util/UUID; profileId a field_40703 + f Lcom/mojang/authlib/GameProfile; profile b field_40704 + f Z listed c field_40705 + f I latency d field_40706 + f Lnet/minecraft/world/level/GameType; gameMode e field_40707 + f Lnet/minecraft/network/chat/Component; displayName f field_40708 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession g field_40709 + m ()Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry; build a method_46343 + m (Ljava/util/UUID;)V + p 1 profileId +c net/minecraft/network/protocol/game/ClientboundPlayerLookAtPacket aeb net/minecraft/class_2707 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47956 + f D x b field_12386 + f D y c field_12384 + f D z d field_12383 + f I entity e field_12388 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; fromAnchor f field_12385 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; toAnchor g field_12389 + f Z atEntity h field_12387 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11731 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3; getPosition a method_11732 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55903 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; getFromAnchor b method_11730 + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;DDD)V + p 1 fromAnchor + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V + p 1 fromAnchor + p 2 entity + p 3 toAnchor + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundPlayerPositionPacket aec net/minecraft/class_2708 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47957 + f D x b field_12395 + f D y c field_12392 + f D z d field_12390 + f F yRot e field_12393 + f F xRot f field_12391 + f Ljava/util/Set; relativeArguments g field_12396 + f I id h field_12394 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11740 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55904 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_11734 + m ()D getY e method_11735 + m ()D getZ f method_11738 + m ()F getYRot g method_11736 + m ()F getXRot h method_11739 + m ()I getId i method_11737 + m ()Ljava/util/Set; getRelativeArguments j method_11733 + c Returns a set of which fields are relative. Items in this set indicate that the value is a relative change applied to the player's position, rather than an exact value. + m (DDDFFLjava/util/Set;I)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 relativeArguments + p 10 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundProjectilePowerPacket aed net/minecraft/class_9632 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51336 + f I id b field_51337 + f D accelerationPower c field_51849 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_59505 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_59506 + p 1 buffer + m ()I getId b method_59507 + m ()D getAccelerationPower e method_60423 + m (ID)V + p 1 id + p 2 accelerationPower + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRecipePacket aee net/minecraft/class_2713 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47958 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; state b field_12408 + f Ljava/util/List; recipes c field_12414 + f Ljava/util/List; toHighlight d field_12409 + f Lnet/minecraft/stats/RecipeBookSettings; bookSettings e field_25797 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11753 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55905 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/util/List; getRecipes b method_11750 + m ()Ljava/util/List; getHighlights e method_11757 + m ()Lnet/minecraft/stats/RecipeBookSettings; getBookSettings f method_11756 + m ()Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; getState g method_11751 + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State;Ljava/util/Collection;Ljava/util/Collection;Lnet/minecraft/stats/RecipeBookSettings;)V + p 1 state + p 2 recipes + p 3 toHighlight + p 4 bookSettings + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRecipePacket$State aee$a net/minecraft/class_2713$class_2714 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; INIT a field_12416 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; ADD b field_12415 + f Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; REMOVE c field_12417 + f [Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; $VALUES d field_12418 + m ()[Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State; $values a method_36953 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRemoveEntitiesPacket aef net/minecraft/class_2716 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47959 + f Lit/unimi/dsi/fastutil/ints/IntList; entityIds b field_33690 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11764 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55906 + p 1 buffer + m ()Lit/unimi/dsi/fastutil/ints/IntList; getEntityIds b method_36548 + m (Lit/unimi/dsi/fastutil/ints/IntList;)V + p 1 entityIds + m ([I)V + p 1 entityIds + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundRemoveMobEffectPacket aeg net/minecraft/class_2718 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47960 + f I entityId b comp_2175 + f Lnet/minecraft/core/Holder; effect c comp_2176 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11769 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11767 + p 1 level + m ()I entityId b comp_2175 + m ()Lnet/minecraft/core/Holder; effect e comp_2176 + m (ILnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundResetScorePacket aeh net/minecraft/class_9006 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47961 + f Ljava/lang/String; owner b comp_2120 + f Ljava/lang/String; objectiveName c comp_2121 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_55332 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55908 + p 1 buffer + m ()Ljava/lang/String; owner b comp_2120 + m ()Ljava/lang/String; objectiveName e comp_2121 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRespawnPacket aei net/minecraft/class_2724 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47962 + f B KEEP_ATTRIBUTE_MODIFIERS b field_41730 + f B KEEP_ENTITY_DATA c field_41731 + f B KEEP_ALL_DATA d field_41732 + f Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo e comp_1728 + f B dataToKeep f comp_1729 + m (B)Z shouldKeep a method_48016 + p 1 data + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11782 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55909 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; commonPlayerSpawnInfo b comp_1728 + m ()B dataToKeep e comp_1729 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo;B)V + m ()V +c net/minecraft/network/protocol/game/ClientboundRotateHeadPacket aej net/minecraft/class_2726 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47963 + f I entityId b field_12437 + f B yHeadRot c field_12436 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11788 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11786 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55910 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()B getYHeadRot b method_11787 + m (Lnet/minecraft/world/entity/Entity;B)V + p 1 entity + p 2 yHeadRot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSectionBlocksUpdatePacket aek net/minecraft/class_2637 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47964 + f I POS_IN_SECTION_BITS b field_33341 + f Lnet/minecraft/core/SectionPos; sectionPos c field_26345 + f [S positions d field_26346 + f [Lnet/minecraft/world/level/block/state/BlockState; states e field_26347 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11392 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/util/function/BiConsumer;)V runUpdates a method_30621 + p 1 consumer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55911 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/core/SectionPos;Lit/unimi/dsi/fastutil/shorts/ShortSet;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V + p 1 sectionPos + p 2 positions + p 3 section + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSelectAdvancementsTabPacket ael net/minecraft/class_2729 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47965 + f Lnet/minecraft/resources/ResourceLocation; tab b field_12440 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11794 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55912 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getTab b method_11793 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 tab + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundServerDataPacket aem net/minecraft/class_7495 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47966 + f Lnet/minecraft/network/chat/Component; motd b comp_2277 + f Ljava/util/Optional; iconBytes c comp_2278 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_44131 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; motd b comp_2277 + m ()Ljava/util/Optional; iconBytes e comp_2278 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;)V + p 1 motd + p 2 iconBytes + m ()V +c net/minecraft/network/protocol/game/ClientboundSetActionBarTextPacket aen net/minecraft/class_5894 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47967 + f Lnet/minecraft/network/chat/Component; text b comp_2279 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34154 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2279 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderCenterPacket aeo net/minecraft/class_5895 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47968 + f D newCenterX b field_29143 + f D newCenterZ c field_29144 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34156 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55915 + p 1 buffer + m ()D getNewCenterZ b method_34157 + m ()D getNewCenterX e method_34158 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderLerpSizePacket aep net/minecraft/class_5896 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47969 + f D oldSize b field_29145 + f D newSize c field_29146 + f J lerpTime d field_29147 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34159 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55916 + p 1 buffer + m ()D getOldSize b method_34160 + m ()D getNewSize e method_34161 + m ()J getLerpTime f method_34162 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderSizePacket aeq net/minecraft/class_5897 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47970 + f D size b field_29148 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34163 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55917 + p 1 buffer + m ()D getSize b method_34164 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderWarningDelayPacket aer net/minecraft/class_5898 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47971 + f I warningDelay b field_29149 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34165 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55918 + p 1 buffer + m ()I getWarningDelay b method_34166 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetBorderWarningDistancePacket aes net/minecraft/class_5899 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47972 + f I warningBlocks b field_29150 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34167 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55919 + p 1 buffer + m ()I getWarningBlocks b method_34168 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetCameraPacket aet net/minecraft/class_2734 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47973 + f I cameraId b field_12462 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11801 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; getEntity a method_11800 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55920 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Lnet/minecraft/world/entity/Entity;)V + p 1 cameraEntity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetCarriedItemPacket aeu net/minecraft/class_2735 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47974 + f I slot b field_12463 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11802 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55921 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_11803 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetChunkCacheCenterPacket aev net/minecraft/class_4282 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47975 + f I x b field_19206 + f I z c field_19207 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_20321 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55922 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getX b method_20322 + m ()I getZ e method_20323 + m (II)V + p 1 x + p 2 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetChunkCacheRadiusPacket aew net/minecraft/class_4273 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47976 + f I radius b field_19146 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_20205 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55923 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getRadius b method_20206 + m (I)V + p 1 radius + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetDefaultSpawnPositionPacket aex net/minecraft/class_2759 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47977 + f Lnet/minecraft/core/BlockPos; pos b field_12615 + f F angle c field_26381 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11869 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55924 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_11870 + m ()F getAngle e method_30732 + m (Lnet/minecraft/core/BlockPos;F)V + p 1 pos + p 2 angle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetDisplayObjectivePacket aey net/minecraft/class_2736 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47978 + f Lnet/minecraft/world/scores/DisplaySlot; slot b field_12464 + f Ljava/lang/String; objectiveName c field_12465 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11805 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55925 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/scores/DisplaySlot; getSlot b method_11806 + m ()Ljava/lang/String; getObjectiveName e method_11804 + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)V + p 1 slot + p 2 objective + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityDataPacket aez net/minecraft/class_2739 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47979 + f I EOF_MARKER b field_40850 + f I id c comp_1127 + f Ljava/util/List; packedItems d comp_1128 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11808 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/util/List;Lnet/minecraft/network/RegistryFriendlyByteBuf;)V pack a method_46615 + p 0 dataValues + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Ljava/util/List; unpack a method_46616 + p 0 buffer + m ()I id b comp_1127 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write b method_55926 + p 1 buffer + m ()Ljava/util/List; packedItems e comp_1128 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (ILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityLinkPacket afa net/minecraft/class_2740 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47980 + f I sourceId b field_12479 + f I destId c field_12478 + c The entity that is holding the leash, or -1 to clear the holder. + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11811 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55927 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSourceId b method_11812 + m ()I getDestId e method_11810 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 source + p 2 destination + c The entity to link to or {@code null} to break any existing link. + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEntityMotionPacket afb net/minecraft/class_2743 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47981 + f I id b field_12564 + f I xa c field_12563 + f I ya d field_12562 + f I za e field_12561 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11817 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55928 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11818 + m ()D getXa e method_11815 + m ()D getYa f method_11816 + m ()D getZa g method_11819 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (ILnet/minecraft/world/phys/Vec3;)V + p 1 id + p 2 deltaMovement + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetEquipmentPacket afc net/minecraft/class_2744 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47982 + f B CONTINUE_MASK b field_33342 + f I entity c field_12565 + f Ljava/util/List; slots d field_25721 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11823 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55929 + p 1 buffer + m ()I getEntity b method_11820 + m ()Ljava/util/List; getSlots e method_30145 + m (ILjava/util/List;)V + p 1 entity + p 2 slots + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetExperiencePacket afd net/minecraft/class_2748 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47983 + f F experienceProgress b field_12580 + f I totalExperience c field_12582 + f I experienceLevel d field_12581 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11829 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55930 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getExperienceProgress b method_11830 + m ()I getTotalExperience e method_11827 + m ()I getExperienceLevel f method_11828 + m (FII)V + p 1 experienceProgress + p 2 totalExperience + p 3 experienceLevel + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetHealthPacket afe net/minecraft/class_2749 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47984 + f F health b field_12584 + f I food c field_12585 + f F saturation d field_12583 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11832 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55931 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getHealth b method_11833 + m ()I getFood e method_11831 + m ()F getSaturation f method_11834 + m (FIF)V + p 1 health + p 2 food + p 3 saturation + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetObjectivePacket aff net/minecraft/class_2751 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47985 + f I METHOD_ADD b field_33343 + f I METHOD_REMOVE c field_33344 + f I METHOD_CHANGE d field_33345 + f Ljava/lang/String; objectiveName e field_12589 + f Lnet/minecraft/network/chat/Component; displayName f field_12591 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType g field_12592 + f Ljava/util/Optional; numberFormat h field_47519 + f I method i field_12590 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11838 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55932 + p 1 buffer + m ()Ljava/lang/String; getObjectiveName b method_11835 + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_11836 + m ()I getMethod f method_11837 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getRenderType g method_11839 + m ()Ljava/util/Optional; getNumberFormat h method_55336 + m (Lnet/minecraft/world/scores/Objective;I)V + p 1 objective + p 2 method + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPassengersPacket afg net/minecraft/class_2752 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47986 + f I vehicle b field_12594 + f [I passengers c field_12593 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11842 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55933 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()[I getPassengers b method_11840 + m ()I getVehicle e method_11841 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket afh net/minecraft/class_5900 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47987 + f I METHOD_ADD b field_33346 + f I METHOD_REMOVE c field_33347 + f I METHOD_CHANGE d field_33348 + f I METHOD_JOIN e field_33349 + f I METHOD_LEAVE f field_33350 + f I MAX_VISIBILITY_LENGTH g field_33351 + f I MAX_COLLISION_LENGTH h field_33352 + f I method i field_29151 + f Ljava/lang/String; name j field_29152 + f Ljava/util/Collection; players k field_29153 + f Ljava/util/Optional; parameters l field_29154 + m (I)Z shouldHavePlayerList a method_34169 + p 0 method + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34173 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createRemovePacket a method_34170 + p 0 team + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/lang/String;Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action;)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createPlayerPacket a method_34171 + p 0 team + p 1 playerName + p 2 action + m (Lnet/minecraft/world/scores/PlayerTeam;Z)Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket; createAddOrModifyPacket a method_34172 + p 0 team + p 1 useAdd + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55934 + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; getPlayerAction b method_34174 + m (I)Z shouldHaveParameters b method_34175 + p 0 method + m ()Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; getTeamAction e method_34176 + m ()Ljava/lang/String; getName f method_34177 + m ()Ljava/util/Collection; getPlayers g method_34178 + m ()Ljava/util/Optional; getParameters h method_34179 + m ()Ljava/lang/IllegalStateException; method_34180 i method_34180 + m (Ljava/lang/String;ILjava/util/Optional;Ljava/util/Collection;)V + p 1 name + p 2 method + p 3 parameters + p 4 players + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action afh$a net/minecraft/class_5900$class_5901 + f Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; ADD a field_29155 + f Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; REMOVE b field_29156 + f [Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; $VALUES c field_29157 + m ()[Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Action; $values a method_36954 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Parameters afh$b net/minecraft/class_5900$class_5902 + f Lnet/minecraft/network/chat/Component; displayName a field_29158 + f Lnet/minecraft/network/chat/Component; playerPrefix b field_29159 + f Lnet/minecraft/network/chat/Component; playerSuffix c field_29160 + f Ljava/lang/String; nametagVisibility d field_29161 + f Ljava/lang/String; collisionRule e field_29162 + f Lnet/minecraft/ChatFormatting; color f field_29163 + f I options g field_29164 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_34181 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_34182 + p 1 buffer + m ()I getOptions b method_34183 + m ()Lnet/minecraft/ChatFormatting; getColor c method_34184 + m ()Ljava/lang/String; getNametagVisibility d method_34185 + m ()Ljava/lang/String; getCollisionRule e method_34186 + m ()Lnet/minecraft/network/chat/Component; getPlayerPrefix f method_34187 + m ()Lnet/minecraft/network/chat/Component; getPlayerSuffix g method_34188 + m (Lnet/minecraft/world/scores/PlayerTeam;)V + p 1 team + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ClientboundSetScorePacket afi net/minecraft/class_2757 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47988 + f Ljava/lang/String; owner b comp_2122 + f Ljava/lang/String; objectiveName c comp_2123 + f I score d comp_2124 + f Ljava/util/Optional; display e comp_2125 + f Ljava/util/Optional; numberFormat f comp_2126 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11866 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Ljava/lang/String; owner b comp_2122 + m ()Ljava/lang/String; objectiveName e comp_2123 + m ()I score f comp_2124 + m ()Ljava/util/Optional; display g comp_2125 + m ()Ljava/util/Optional; numberFormat h comp_2126 + m (Ljava/lang/String;Ljava/lang/String;ILjava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetSimulationDistancePacket afj net/minecraft/class_6682 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47989 + f I simulationDistance b comp_170 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_39027 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55936 + p 1 buffer + m ()I simulationDistance b comp_170 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundSetSubtitleTextPacket afk net/minecraft/class_5903 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47990 + f Lnet/minecraft/network/chat/Component; text b comp_2280 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34189 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2280 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTimePacket afl net/minecraft/class_2761 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47991 + f J gameTime b field_12621 + f J dayTime c field_12620 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11872 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55938 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()J getGameTime b method_11871 + m ()J getDayTime e method_11873 + m (JJZ)V + p 1 gameTime + p 3 dayTime + p 5 daylightCycleEnabled + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTitleTextPacket afm net/minecraft/class_5904 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47992 + f Lnet/minecraft/network/chat/Component; text b comp_2281 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34191 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; text b comp_2281 + m (Lnet/minecraft/network/chat/Component;)V + p 1 text + m ()V +c net/minecraft/network/protocol/game/ClientboundSetTitlesAnimationPacket afn net/minecraft/class_5905 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47993 + f I fadeIn b field_29167 + f I stay c field_29168 + f I fadeOut d field_29169 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_34193 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55940 + p 1 buffer + m ()I getFadeIn b method_34194 + m ()I getStay e method_34195 + m ()I getFadeOut f method_34196 + m (III)V + p 1 fadeIn + p 2 stay + p 3 fadeOut + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSoundEntityPacket afo net/minecraft/class_2765 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47994 + f Lnet/minecraft/core/Holder; sound b field_12642 + f Lnet/minecraft/sounds/SoundSource; source c field_12641 + f I id d field_12640 + f F volume e field_12639 + f F pitch f field_12638 + f J seed g field_38819 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11884 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55941 + p 1 buffer + m ()Lnet/minecraft/core/Holder; getSound b method_11882 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11881 + m ()I getId f method_11883 + m ()F getVolume g method_11885 + m ()F getPitch h method_11880 + m ()J getSeed i method_43235 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/world/entity/Entity;FFJ)V + p 1 sound + p 2 source + p 3 entity + p 4 volume + p 5 pitch + p 6 seed + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSoundPacket afp net/minecraft/class_2767 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47995 + f F LOCATION_ACCURACY b field_33353 + f Lnet/minecraft/core/Holder; sound c field_12661 + f Lnet/minecraft/sounds/SoundSource; source d field_12660 + f I x e field_12659 + f I y f field_12658 + f I z g field_12657 + f F volume h field_12656 + f F pitch i field_12662 + f J seed j field_38820 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11895 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55942 + p 1 buffer + m ()Lnet/minecraft/core/Holder; getSound b method_11894 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11888 + m ()D getX f method_11890 + m ()D getY g method_11889 + m ()D getZ h method_11893 + m ()F getVolume i method_11891 + m ()F getPitch j method_11892 + m ()J getSeed k method_43236 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;DDDFFJ)V + p 1 sound + p 2 source + p 3 x + p 5 y + p 7 z + p 9 volume + p 10 pitch + p 11 seed + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundStartConfigurationPacket afq net/minecraft/class_8588 + f Lnet/minecraft/network/protocol/game/ClientboundStartConfigurationPacket; INSTANCE a field_47997 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_47998 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_52272 + m ()V + m ()V +c net/minecraft/network/protocol/game/ClientboundStopSoundPacket afr net/minecraft/class_2770 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_47999 + f I HAS_SOURCE b field_33354 + f I HAS_SOUND c field_33355 + f Lnet/minecraft/resources/ResourceLocation; name d field_12676 + f Lnet/minecraft/sounds/SoundSource; source e field_12677 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11905 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55944 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getName b method_11904 + m ()Lnet/minecraft/sounds/SoundSource; getSource e method_11903 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V + p 1 name + p 2 source + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundSystemChatPacket afs net/minecraft/class_7439 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48000 + f Lnet/minecraft/network/chat/Component; content b comp_763 + f Z overlay c comp_906 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_43631 + m ()Lnet/minecraft/network/chat/Component; content b comp_763 + m ()Z overlay e comp_906 + m (Lnet/minecraft/network/chat/Component;Z)V + m ()V +c net/minecraft/network/protocol/game/ClientboundTabListPacket aft net/minecraft/class_2772 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48001 + f Lnet/minecraft/network/chat/Component; header b comp_2282 + f Lnet/minecraft/network/chat/Component; footer c comp_2283 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11907 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lnet/minecraft/network/chat/Component; header b comp_2282 + m ()Lnet/minecraft/network/chat/Component; footer e comp_2283 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 header + p 2 footer + m ()V +c net/minecraft/network/protocol/game/ClientboundTagQueryPacket afu net/minecraft/class_2774 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48002 + f I transactionId b field_12691 + f Lnet/minecraft/nbt/CompoundTag; tag c field_12690 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11909 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55947 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getTransactionId b method_11910 + m ()Lnet/minecraft/nbt/CompoundTag; getTag e method_11911 + m (ILnet/minecraft/nbt/CompoundTag;)V + p 1 transactionId + p 2 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTakeItemEntityPacket afv net/minecraft/class_2775 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48003 + f I itemId b field_12694 + f I playerId c field_12693 + f I amount d field_12692 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11914 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55948 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getItemId b method_11915 + m ()I getPlayerId e method_11912 + m ()I getAmount f method_11913 + m (III)V + p 1 itemId + p 2 playerId + p 3 amount + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTeleportEntityPacket afw net/minecraft/class_2777 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48004 + f I id b field_12705 + f D x c field_12703 + f D y d field_12702 + f D z e field_12701 + f B yRot f field_12707 + f B xRot g field_12706 + f Z onGround h field_12704 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11922 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55949 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_11916 + m ()D getX e method_11917 + m ()D getY f method_11919 + m ()D getZ g method_11918 + m ()B getyRot h method_11920 + m ()B getxRot i method_11921 + m ()Z isOnGround j method_11923 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundTickingStatePacket afx net/minecraft/class_8913 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48005 + f F tickRate b comp_2014 + f Z isFrozen c comp_2015 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_54665 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/TickRateManager;)Lnet/minecraft/network/protocol/game/ClientboundTickingStatePacket; from a method_54664 + p 0 tickRateManager + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55950 + p 1 buffer + m ()F tickRate b comp_2014 + m ()Z isFrozen e comp_2015 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (FZ)V + m ()V +c net/minecraft/network/protocol/game/ClientboundTickingStepPacket afy net/minecraft/class_8914 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48006 + f I tickSteps b comp_2016 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_54667 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/world/TickRateManager;)Lnet/minecraft/network/protocol/game/ClientboundTickingStepPacket; from a method_54666 + p 0 tickRateManager + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55951 + p 1 buffer + m ()I tickSteps b comp_2016 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket afz net/minecraft/class_2779 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48007 + f Z reset b field_12718 + f Ljava/util/List; added c field_12717 + f Ljava/util/Set; removed d field_12715 + f Ljava/util/Map; progress e field_12716 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11925 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/advancements/AdvancementProgress;)V method_34197 a method_34197 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55952 + p 1 buffer + m ()Ljava/util/List; getAdded b method_11928 + m ()Ljava/util/Set; getRemoved e method_11926 + m ()Ljava/util/Map; getProgress f method_11927 + m ()Z shouldReset g method_11924 + m (ZLjava/util/Collection;Ljava/util/Set;Ljava/util/Map;)V + p 1 reset + p 2 added + p 3 removed + p 4 progress + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket aga net/minecraft/class_2781 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48008 + f I entityId b field_12719 + f Ljava/util/List; attributes c field_12720 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11936 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I getEntityId b method_11937 + m ()Ljava/util/List; getValues e method_11938 + m (ILjava/util/Collection;)V + p 1 entityId + p 2 attributes + m (ILjava/util/List;)V + p 1 entityId + p 2 attributes + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateAttributesPacket$AttributeSnapshot aga$a net/minecraft/class_2781$class_2782 + f Lnet/minecraft/network/codec/StreamCodec; MODIFIER_STREAM_CODEC a field_48009 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48010 + f Lnet/minecraft/core/Holder; attribute c comp_2177 + f D base d comp_2178 + f Ljava/util/Collection; modifiers e comp_2179 + m ()Lnet/minecraft/core/Holder; attribute a comp_2177 + m ()D base b comp_2178 + m ()Ljava/util/Collection; modifiers c comp_2179 + m (Lnet/minecraft/core/Holder;DLjava/util/Collection;)V + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateMobEffectPacket agb net/minecraft/class_2783 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48011 + f I FLAG_AMBIENT b field_33356 + f I FLAG_VISIBLE c field_33357 + f I FLAG_SHOW_ICON d field_33358 + f I FLAG_BLEND e field_47706 + f I entityId f field_12727 + f Lnet/minecraft/core/Holder; effect g field_12725 + f I effectAmplifier h field_12729 + f I effectDurationTicks i field_12726 + f B flags j field_12728 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11948 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55954 + p 1 buffer + m ()I getEntityId b method_11943 + m ()Lnet/minecraft/core/Holder; getEffect e method_11946 + m ()I getEffectAmplifier f method_11945 + m ()I getEffectDurationTicks g method_11944 + m ()Z isEffectVisible h method_11949 + m ()Z isEffectAmbient i method_11950 + m ()Z effectShowsIcon j method_11942 + m ()Z shouldBlend k method_55629 + m (ILnet/minecraft/world/effect/MobEffectInstance;Z)V + p 1 entityId + p 2 effect + p 3 blend + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket agc net/minecraft/class_2788 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48012 + f Ljava/util/List; recipes b field_12751 + m (Lnet/minecraft/network/protocol/game/ClientGamePacketListener;)V handle a method_11997 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateRecipesPacket;)Ljava/util/List; method_55955 a method_55955 + m ()Ljava/util/List; getRecipes b method_11998 + m (Ljava/util/Collection;)V + p 1 recipes + m ()V +c net/minecraft/network/protocol/game/CommonPlayerSpawnInfo agd net/minecraft/class_8589 + f Lnet/minecraft/core/Holder; dimensionType a comp_1553 + f Lnet/minecraft/resources/ResourceKey; dimension b comp_1554 + f J seed c comp_1555 + f Lnet/minecraft/world/level/GameType; gameType d comp_1556 + f Lnet/minecraft/world/level/GameType; previousGameType e comp_1557 + f Z isDebug f comp_1558 + f Z isFlat g comp_1559 + f Ljava/util/Optional; lastDeathLocation h comp_1560 + f I portalCooldown i comp_1561 + m ()Lnet/minecraft/core/Holder; dimensionType a comp_1553 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_52274 + p 1 buffer + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_1554 + m ()J seed c comp_1555 + m ()Lnet/minecraft/world/level/GameType; gameType d comp_1556 + m ()Lnet/minecraft/world/level/GameType; previousGameType e comp_1557 + m ()Z isDebug f comp_1558 + m ()Z isFlat g comp_1559 + m ()Ljava/util/Optional; lastDeathLocation h comp_1560 + m ()I portalCooldown i comp_1561 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;ZZLjava/util/Optional;I)V +c net/minecraft/network/protocol/game/DebugEntityNameGenerator age net/minecraft/class_4617 + f [Ljava/lang/String; NAMES_FIRST_PART a field_21050 + f [Ljava/lang/String; NAMES_SECOND_PART b field_21051 + m (Lnet/minecraft/util/RandomSource;[Ljava/lang/String;)Ljava/lang/String; getRandomString a method_23266 + p 0 random + p 1 strings + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; getEntityName a method_36154 + p 0 entity + m (Ljava/util/UUID;)Ljava/lang/String; getEntityName a method_23267 + p 0 uuid + m (Ljava/util/UUID;)Lnet/minecraft/util/RandomSource; getRandom b method_23268 + p 0 uuid + m ()V + m ()V +c net/minecraft/network/protocol/game/DebugPackets agf net/minecraft/class_4209 + f Lorg/slf4j/Logger; LOGGER a field_18961 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_44135 a method_44135 + m (Lnet/minecraft/server/level/ServerLevel;)V sendGameTestClearPacket a method_22317 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V sendPacketToAllPlayers a method_22319 + p 0 level + p 1 payload + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)V method_36155 a method_36155 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)V sendPoiPacketsForChunk a method_19775 + p 0 level + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/resources/ResourceKey;)V method_55630 a method_55630 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/lang/Object;)Ljava/lang/String; getShortDescription a method_36156 + p 0 level + p 1 object + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Collection;)V sendRaids a method_20575 + p 0 level + p 1 raids + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiAddedPacket a method_19776 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/lang/String;II)V sendGameTestAddMarker a method_22318 + p 0 level + p 1 pos + p 2 text + p 3 color + p 4 lifetimeMillis + m (Lnet/minecraft/world/entity/LivingEntity;)V sendEntityBrain a method_19774 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;J)Ljava/util/List; getMemoryDescriptions a method_36157 + p 0 entity + p 1 gameTime + m (Lnet/minecraft/world/entity/animal/Bee;)V sendBeeInfo a method_23855 + p 0 bee + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V sendBreezeInfo a method_54909 + p 0 breeze + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/goal/GoalSelector;)V sendGoalSelector a method_19469 + p 0 level + p 1 mob + p 2 goalSelector + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/pathfinder/Path;F)V sendPathFindingPacket a method_19470 + p 0 level + p 1 mob + p 2 path + p 3 maxDistanceToWaypoint + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/gameevent/GameEventListener;)V sendGameEventListenerInfo a method_33140 + p 0 level + p 1 gameEventListener + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V sendNeighborsUpdatePacket a method_19472 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V sendHiveInfo a method_23856 + p 0 level + p 1 pos + p 2 blockState + p 3 hiveBlockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V sendGameEventInfo a method_33139 + p 0 level + p 1 gameEvent + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V sendStructurePacket a method_19474 + p 0 level + p 1 structureStart + m (Ljava/lang/String;)Ljava/lang/String; method_52275 a method_52275 + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)V method_36162 a method_36162 + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/entity/ai/gossip/GossipType;Ljava/lang/Integer;)V method_52276 a method_52276 + m (Ljava/util/List;Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)V method_52277 a method_52277 + m (Lnet/minecraft/core/Holder;)Z method_36159 a method_36159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiRemovedPacket b method_19777 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendPoiTicketCountPacket c method_19778 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V sendVillageSectionsPacket d method_24819 + p 0 level + p 1 pos + m ()V + m ()V +c net/minecraft/network/protocol/game/GamePacketTypes agg net/minecraft/class_9094 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DEBUG_SAMPLE A field_48782 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DELETE_CHAT B field_48013 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DISGUISED_CHAT C field_48014 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ENTITY_EVENT D field_48015 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_EXPLODE E field_48016 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_FORGET_LEVEL_CHUNK F field_48017 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_GAME_EVENT G field_48018 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HORSE_SCREEN_OPEN H field_48019 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HURT_ANIMATION I field_48020 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_INITIALIZE_BORDER J field_48021 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_CHUNK_WITH_LIGHT K field_48022 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_EVENT L field_48023 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LEVEL_PARTICLES M field_48024 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LIGHT_UPDATE N field_48025 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN O field_48026 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MAP_ITEM_DATA P field_48027 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MERCHANT_OFFERS Q field_48028 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_POS R field_48029 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_POS_ROT S field_48030 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_ENTITY_ROT T field_48031 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_MOVE_VEHICLE U field_48032 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_BOOK V field_48033 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_SCREEN W field_48034 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_OPEN_SIGN_EDITOR X field_48035 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLACE_GHOST_RECIPE Y field_48036 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_ABILITIES Z field_48037 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_DEFAULT_SPAWN_POSITION aA field_48091 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_DISPLAY_OBJECTIVE aB field_48040 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_DATA aC field_48041 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_LINK aD field_48042 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ENTITY_MOTION aE field_48043 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_EQUIPMENT aF field_48044 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_EXPERIENCE aG field_48045 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_HEALTH aH field_48046 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_OBJECTIVE aI field_48047 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_PASSENGERS aJ field_48048 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_PLAYER_TEAM aK field_48049 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SCORE aL field_48050 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BUNDLE a field_48039 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SIMULATION_DISTANCE aM field_48051 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_SUBTITLE_TEXT aN field_48052 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TIME aO field_48053 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TITLE_TEXT aP field_48054 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_TITLES_ANIMATION aQ field_48055 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SOUND_ENTITY aR field_48056 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SOUND aS field_48057 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_START_CONFIGURATION aT field_48058 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STOP_SOUND aU field_48059 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SYSTEM_CHAT aV field_48060 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAB_LIST aW field_48061 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAG_QUERY aX field_48062 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TAKE_ITEM_ENTITY aY field_48063 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TELEPORT_ENTITY aZ field_48064 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_CHAT aa field_48038 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_END ab field_48066 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_ENTER ac field_48067 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_COMBAT_KILL ad field_48068 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_INFO_REMOVE ae field_48069 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_INFO_UPDATE af field_48070 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_LOOK_AT ag field_48071 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PLAYER_POSITION ah field_48072 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RECIPE ai field_48073 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REMOVE_ENTITIES aj field_48074 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_REMOVE_MOB_EFFECT ak field_48075 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESPAWN al field_48076 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ROTATE_HEAD am field_48077 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SECTION_BLOCKS_UPDATE an field_48078 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SELECT_ADVANCEMENTS_TAB ao field_48079 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SERVER_DATA ap field_48080 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_ACTION_BAR_TEXT aq field_48081 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_CENTER ar field_48082 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_LERP_SIZE as field_48083 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_SIZE at field_48084 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_WARNING_DELAY au field_48085 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_BORDER_WARNING_DISTANCE av field_48086 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CAMERA aw field_48087 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CARRIED_ITEM ax field_48088 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CHUNK_CACHE_CENTER ay field_48089 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_SET_CHUNK_CACHE_RADIUS az field_48090 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_LOCK_DIFFICULTY bA field_48141 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_POS bB field_48142 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_POS_ROT bC field_48143 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_ROT bD field_48144 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_PLAYER_STATUS_ONLY bE field_48093 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_MOVE_VEHICLE bF field_48094 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PADDLE_BOAT bG field_48095 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PICK_ITEM bH field_48096 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLACE_RECIPE bI field_48097 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_ABILITIES bJ field_48098 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_ACTION bK field_48099 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_COMMAND bL field_48100 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BUNDLE_DELIMITER b field_48092 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PLAYER_INPUT bM field_48101 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RECIPE_BOOK_CHANGE_SETTINGS bN field_48102 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RECIPE_BOOK_SEEN_RECIPE bO field_48103 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_RENAME_ITEM bP field_48104 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SEEN_ADVANCEMENTS bQ field_48105 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SELECT_TRADE bR field_48106 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_BEACON bS field_48107 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_CARRIED_ITEM bT field_48108 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_COMMAND_BLOCK bU field_48109 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_COMMAND_MINECART bV field_48110 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_CREATIVE_MODE_SLOT bW field_48111 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_JIGSAW_BLOCK bX field_48112 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SET_STRUCTURE_BLOCK bY field_48113 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SIGN_UPDATE bZ field_48114 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ADVANCEMENTS ba field_48065 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_ATTRIBUTES bb field_48119 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_MOB_EFFECT bc field_48120 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_UPDATE_RECIPES bd field_48121 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PROJECTILE_POWER be field_51341 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_ACCEPT_TELEPORTATION bf field_48122 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_BLOCK_ENTITY_TAG_QUERY bg field_48123 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHANGE_DIFFICULTY bh field_48124 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_ACK bi field_48125 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_COMMAND bj field_48126 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_COMMAND_SIGNED bk field_50086 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT bl field_48127 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHAT_SESSION_UPDATE bm field_48128 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CHUNK_BATCH_RECEIVED bn field_48129 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CLIENT_COMMAND bo field_48130 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_COMMAND_SUGGESTION bp field_48131 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONFIGURATION_ACKNOWLEDGED bq field_48132 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_BUTTON_CLICK br field_48133 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_CLICK bs field_48134 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_CLOSE bt field_48135 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CONTAINER_SLOT_STATE_CHANGED bu field_48136 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_DEBUG_SAMPLE_SUBSCRIPTION bv field_48783 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_EDIT_BOOK bw field_48137 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_ENTITY_TAG_QUERY bx field_48138 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_INTERACT by field_48139 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_JIGSAW_GENERATE bz field_48140 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ADD_ENTITY c field_48145 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_SWING ca field_48115 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_TELEPORT_TO_ENTITY cb field_48116 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_USE_ITEM_ON cc field_48117 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_USE_ITEM cd field_48118 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_RESET_SCORE ce field_48146 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TICKING_STATE cf field_48147 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_TICKING_STEP cg field_48148 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ADD_EXPERIENCE_ORB d field_48149 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_ANIMATE e field_48150 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_AWARD_STATS f field_48151 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_CHANGED_ACK g field_48152 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_DESTRUCTION h field_48153 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_ENTITY_DATA i field_48154 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_EVENT j field_48155 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BLOCK_UPDATE k field_48156 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_BOSS_EVENT l field_48157 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHANGE_DIFFICULTY m field_48158 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNK_BATCH_FINISHED n field_48159 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNK_BATCH_START o field_48160 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CHUNKS_BIOMES p field_48161 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CLEAR_TITLES q field_48162 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COMMAND_SUGGESTIONS r field_48163 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COMMANDS s field_48164 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_CLOSE t field_48165 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_CONTENT u field_48166 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_DATA v field_48167 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CONTAINER_SET_SLOT w field_48168 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_COOLDOWN x field_48169 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_CHAT_COMPLETIONS y field_48170 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_DAMAGE_EVENT z field_48171 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_55956 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_55957 + p 0 id + m ()V + m ()V +c net/minecraft/network/protocol/game/GameProtocols agh net/minecraft/class_9095 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_48172 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE b field_48173 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_55958 a method_55958 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_55959 b method_55959 + m ()V + m ()V +c net/minecraft/network/protocol/game/ServerGamePacketListener agi net/minecraft/class_2792 + c PacketListener for the server side of the PLAY protocol. + m (Lnet/minecraft/network/protocol/game/ServerboundAcceptTeleportationPacket;)V handleAcceptTeleportPacket a method_12050 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundBlockEntityTagQueryPacket;)V handleBlockEntityTagQuery a method_12072 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChangeDifficultyPacket;)V handleChangeDifficulty a method_19475 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatAckPacket;)V handleChatAck a method_44898 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandPacket;)V handleChatCommand a method_43667 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;)V handleSignedChatCommand a method_58580 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;)V handleChat a method_12048 + c Process chat messages (broadcast back to clients) and commands (executes) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChatSessionUpdatePacket;)V handleChatSessionUpdate a method_46367 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundChunkBatchReceivedPacket;)V handleChunkBatchReceived a method_52278 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket;)V handleClientCommand a method_12068 + c Processes the client status updates: respawn attempt from player, opening statistics or achievements, or acquiring 'open inventory' achievement + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket;)V handleCustomCommandSuggestions a method_12059 + c This method is only called for manual tab-completion (the {@link net.minecraft.commands.synchronization.SuggestionProviders#ASK_SERVER minecraft:ask_server} suggestion provider). + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket;)V handleConfigurationAcknowledged a method_52279 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerButtonClickPacket;)V handleContainerButtonClick a method_12055 + c Enchants the item identified by the packet given some convoluted conditions (matching window, which should/shouldn't be in use?) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerClickPacket;)V handleContainerClick a method_12076 + c Executes a container/inventory slot manipulation as indicated by the packet. Sends the serverside result if they didn't match the indicated result and prevents further manipulation by the player until he confirms that it has the same open container/inventory + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerClosePacket;)V handleContainerClose a method_12054 + c Processes the client closing windows (container) + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundContainerSlotStateChangedPacket;)V handleContainerSlotStateChanged a method_54436 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundDebugSampleSubscriptionPacket;)V handleDebugSampleSubscription a method_56619 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundEditBookPacket;)V handleEditBook a method_12053 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundEntityTagQueryPacket;)V handleEntityTagQuery a method_12074 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket;)V handleInteract a method_12062 + c Processes left and right clicks on entities + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundJigsawGeneratePacket;)V handleJigsawGenerate a method_27273 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundLockDifficultyPacket;)V handleLockDifficulty a method_19476 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket;)V handleMovePlayer a method_12063 + c Processes clients perspective on player positioning and/or orientation + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundMoveVehiclePacket;)V handleMoveVehicle a method_12078 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPaddleBoatPacket;)V handlePaddleBoat a method_12064 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPickItemPacket;)V handlePickItem a method_12084 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlaceRecipePacket;)V handlePlaceRecipe a method_12061 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerAbilitiesPacket;)V handlePlayerAbilities a method_12083 + c Processes a player starting/stopping flying + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket;)V handlePlayerAction a method_12066 + c Processes the player initiating/stopping digging on a particular spot, as well as a player dropping items + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket;)V handlePlayerCommand a method_12045 + c Processes a range of action-types: sneaking, sprinting, waking from sleep, opening the inventory or setting jump height of the horse the player is riding + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerInputPacket;)V handlePlayerInput a method_12067 + c Processes player movement input. Includes walking, strafing, jumping, and sneaking. Excludes riding and toggling flying/sprinting. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRecipeBookChangeSettingsPacket;)V handleRecipeBookChangeSettingsPacket a method_30303 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRecipeBookSeenRecipePacket;)V handleRecipeBookSeenRecipePacket a method_12047 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundRenameItemPacket;)V handleRenameItem a method_12060 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket;)V handleSeenAdvancements a method_12058 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSelectTradePacket;)V handleSelectTrade a method_12080 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetBeaconPacket;)V handleSetBeaconPacket a method_12057 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCarriedItemPacket;)V handleSetCarriedItem a method_12056 + c Updates which quickbar slot is selected + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCommandBlockPacket;)V handleSetCommandBlock a method_12077 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCommandMinecartPacket;)V handleSetCommandMinecart a method_12049 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetCreativeModeSlotPacket;)V handleSetCreativeModeSlot a method_12070 + c Update the server with an ItemStack in a slot. + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetJigsawBlockPacket;)V handleSetJigsawBlock a method_16383 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSetStructureBlockPacket;)V handleSetStructureBlock a method_12051 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;)V handleSignUpdate a method_12071 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundSwingPacket;)V handleAnimate a method_12052 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundTeleportToEntityPacket;)V handleTeleportToEntityPacket a method_12073 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundUseItemOnPacket;)V handleUseItemOn a method_12046 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ServerboundUseItemPacket;)V handleUseItem a method_12065 + c Called when a client is using an item while not pointing at a block, but simply using an item + p 1 packet +c net/minecraft/network/protocol/game/ServerPacketListener agj net/minecraft/class_6857 + f Lorg/slf4j/Logger; LOGGER a field_51479 + m ()V +c net/minecraft/network/protocol/game/ServerboundAcceptTeleportationPacket agk net/minecraft/class_2793 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48174 + f I id b field_12758 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12085 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55960 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_12086 + m (I)V + p 1 id + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundBlockEntityTagQueryPacket agl net/minecraft/class_2795 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48175 + f I transactionId b field_12762 + f Lnet/minecraft/core/BlockPos; pos c field_12763 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12095 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55961 + p 1 buffer + m ()I getTransactionId b method_12096 + m ()Lnet/minecraft/core/BlockPos; getPos e method_12094 + m (ILnet/minecraft/core/BlockPos;)V + p 1 transactionId + p 2 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundChangeDifficultyPacket agm net/minecraft/class_4210 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48176 + f Lnet/minecraft/world/Difficulty; difficulty b field_18805 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_19477 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55962 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/Difficulty; getDifficulty b method_19478 + m (Lnet/minecraft/world/Difficulty;)V + p 1 difficulty + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundChatAckPacket agn net/minecraft/class_7640 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48177 + f I offset b comp_1114 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_44998 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55963 + p 1 buffer + m ()I offset b comp_1114 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatCommandPacket ago net/minecraft/class_7472 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48178 + f Ljava/lang/String; command b comp_808 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_43897 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55964 + p 1 buffer + m ()Ljava/lang/String; command b comp_808 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket agp net/minecraft/class_9449 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_50087 + f Ljava/lang/String; command b comp_2532 + f Ljava/time/Instant; timeStamp c comp_2533 + f J salt d comp_2534 + f Lnet/minecraft/commands/arguments/ArgumentSignatures; argumentSignatures e comp_2535 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages f comp_2536 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_58581 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_58582 + p 1 buffer + m ()Ljava/lang/String; command b comp_2532 + m ()Ljava/time/Instant; timeStamp e comp_2533 + m ()J salt f comp_2534 + m ()Lnet/minecraft/commands/arguments/ArgumentSignatures; argumentSignatures g comp_2535 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages h comp_2536 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/commands/arguments/ArgumentSignatures;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatPacket agq net/minecraft/class_2797 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48179 + f Ljava/lang/String; message b comp_945 + f Ljava/time/Instant; timeStamp c comp_946 + f J salt d comp_947 + f Lnet/minecraft/network/chat/MessageSignature; signature e comp_948 + f Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages f comp_970 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12115 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55965 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; message b comp_945 + m ()Ljava/time/Instant; timeStamp e comp_946 + m ()J salt f comp_947 + m ()Lnet/minecraft/network/chat/MessageSignature; signature g comp_948 + m ()Lnet/minecraft/network/chat/LastSeenMessages$Update; lastSeenMessages h comp_970 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/time/Instant;JLnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/network/chat/LastSeenMessages$Update;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChatSessionUpdatePacket agr net/minecraft/class_7861 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48182 + f Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession b comp_1129 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_46617 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55966 + p 1 buffer + m ()Lnet/minecraft/network/chat/RemoteChatSession$Data; chatSession b comp_1129 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/chat/RemoteChatSession$Data;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundChunkBatchReceivedPacket ags net/minecraft/class_8590 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48183 + f F desiredChunksPerTick b comp_1730 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_52281 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55967 + p 1 buffer + m ()F desiredChunksPerTick b comp_1730 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (F)V + m ()V +c net/minecraft/network/protocol/game/ServerboundClientCommandPacket agt net/minecraft/class_2799 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48184 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; action b field_12773 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12120 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55968 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; getAction b method_12119 + m (Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action;)V + p 1 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action agt$a net/minecraft/class_2799$class_2800 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; PERFORM_RESPAWN a field_12774 + f Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; REQUEST_STATS b field_12775 + f [Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; $VALUES c field_12776 + m ()[Lnet/minecraft/network/protocol/game/ServerboundClientCommandPacket$Action; $values a method_36955 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket agu net/minecraft/class_2805 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48185 + f I id b field_12784 + f Ljava/lang/String; command c field_12785 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12147 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55969 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_12149 + m ()Ljava/lang/String; getCommand e method_12148 + m (ILjava/lang/String;)V + p 1 id + p 2 command + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket agv net/minecraft/class_8591 + f Lnet/minecraft/network/protocol/game/ServerboundConfigurationAcknowledgedPacket; INSTANCE a field_48186 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48187 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_52282 + m ()V + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerButtonClickPacket agw net/minecraft/class_2811 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48188 + f I containerId b comp_2649 + f I buttonId c comp_2650 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12185 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I containerId b comp_2649 + m ()I buttonId e comp_2650 + m (II)V + p 1 containerId + p 2 buttonId + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerClickPacket agx net/minecraft/class_2813 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48189 + f I MAX_SLOT_COUNT b field_34045 + f Lnet/minecraft/network/codec/StreamCodec; SLOTS_STREAM_CODEC c field_48190 + f I containerId d field_12819 + c The id of the window which was clicked. 0 for player inventory. + f I stateId e field_34037 + f I slotNum f field_12818 + c Id of the clicked slot + f I buttonNum g field_12817 + c Button used + f Lnet/minecraft/world/inventory/ClickType; clickType h field_12815 + c Inventory operation mode + f Lnet/minecraft/world/item/ItemStack; carriedItem i field_12816 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; changedSlots j field_29540 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12191 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_55971 + p 1 buffer + m ()I getContainerId b method_12194 + m ()I getSlotNum e method_12192 + m ()I getButtonNum f method_12193 + m ()Lnet/minecraft/world/item/ItemStack; getCarriedItem g method_12190 + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; getChangedSlots h method_34678 + m ()Lnet/minecraft/world/inventory/ClickType; getClickType i method_12195 + m ()I getStateId j method_37440 + m (IIIILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/item/ItemStack;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;)V + p 1 containerId + p 2 stateId + p 3 slotNum + p 4 buttonNum + p 5 clickType + p 6 carriedItem + p 7 changedSlots + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerClosePacket agy net/minecraft/class_2815 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48191 + f I containerId b field_12827 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12198 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55972 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_36168 + m (I)V + p 1 containerId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundContainerSlotStateChangedPacket agz net/minecraft/class_8875 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48192 + f I slotId b comp_1998 + f I containerId c comp_1999 + f Z newState d comp_2000 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_54437 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55973 + p 1 buffer + m ()I slotId b comp_1998 + m ()I containerId e comp_1999 + m ()Z newState f comp_2000 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (IIZ)V + m ()V +c net/minecraft/network/protocol/game/ServerboundDebugSampleSubscriptionPacket aha net/minecraft/class_9179 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48784 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2284 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_56620 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56621 + p 1 buffer + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2284 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundEditBookPacket ahb net/minecraft/class_2820 + f I MAX_BYTES_PER_CHAR a field_34038 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48193 + f I slot c comp_2285 + f Ljava/util/List; pages d comp_2286 + f Ljava/util/Optional; title e comp_2287 + f I TITLE_MAX_CHARS f field_34039 + f I PAGE_MAX_CHARS g field_34040 + f I MAX_PAGES_COUNT h field_34046 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12236 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()I slot b comp_2285 + m ()Ljava/util/List; pages e comp_2286 + m ()Ljava/util/Optional; title f comp_2287 + m (ILjava/util/List;Ljava/util/Optional;)V + p 1 slot + p 2 pages + p 3 title + m ()V +c net/minecraft/network/protocol/game/ServerboundEntityTagQueryPacket ahc net/minecraft/class_2822 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48194 + f I transactionId b field_12868 + f I entityId c field_12867 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12243 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55975 + p 1 buffer + m ()I getTransactionId b method_12245 + m ()I getEntityId e method_12244 + m (II)V + p 1 transactionId + p 2 entityId + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket ahd net/minecraft/class_2824 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48195 + f I entityId b field_12870 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; action c field_12871 + f Z usingSecondaryAction d field_25660 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; ATTACK_ACTION e field_29170 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12251 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Handler;)V dispatch a method_34209 + p 1 handler + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; getTarget a method_12248 + p 1 level + m (Lnet/minecraft/world/entity/Entity;Z)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createAttackPacket a method_34206 + p 0 entity + p 1 usingSecondaryAction + m (Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/world/InteractionHand;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createInteractionPacket a method_34207 + p 0 entity + p 1 usingSecondaryAction + p 2 hand + m (Lnet/minecraft/world/entity/Entity;ZLnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket; createInteractionPacket a method_34208 + p 0 entity + p 1 usingSecondaryAction + p 2 hand + p 3 interactionLocation + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55976 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isUsingSecondaryAction b method_30007 + m (IZLnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action;)V + p 1 entityId + p 2 usingSecondaryAction + p 3 action + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$1 ahd$1 net/minecraft/class_2824$1 + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$Action ahd$a net/minecraft/class_2824$class_5906 + m ()Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; getType a method_34211 + m (Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Handler;)V dispatch a method_34213 + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_34212 + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType ahd$b net/minecraft/class_2824$class_5907 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; INTERACT a field_29171 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; ATTACK b field_29172 + f Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; INTERACT_AT c field_29173 + f Ljava/util/function/Function; reader d field_29174 + f [Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; $VALUES e field_29175 + m ()[Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$ActionType; $values a method_36956 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundInteractPacket$Action; method_34216 a method_34216 + m (Ljava/lang/String;ILjava/util/function/Function;)V + p 3 reader + m ()V +c net/minecraft/network/protocol/game/ServerboundInteractPacket$Handler ahd$c net/minecraft/class_2824$class_5908 + m ()V onAttack a method_34218 + m (Lnet/minecraft/world/InteractionHand;)V onInteraction a method_34219 + p 1 hand + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)V onInteraction a method_34220 + p 1 hand + p 2 interactionLocation +c net/minecraft/network/protocol/game/ServerboundInteractPacket$InteractionAction ahd$d net/minecraft/class_2824$class_5909 + f Lnet/minecraft/world/InteractionHand; hand a field_29176 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundInteractPacket$InteractionAtLocationAction ahd$e net/minecraft/class_2824$class_5910 + f Lnet/minecraft/world/InteractionHand; hand a field_29177 + f Lnet/minecraft/world/phys/Vec3; location b field_29178 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/Vec3;)V + p 1 hand + p 2 location + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer +c net/minecraft/network/protocol/game/ServerboundJigsawGeneratePacket ahe net/minecraft/class_5194 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48196 + f Lnet/minecraft/core/BlockPos; pos b field_24054 + f I levels c field_24055 + f Z keepJigsaws d field_25323 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_27274 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55977 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_27275 + m ()I levels e method_27276 + m ()Z keepJigsaws f method_29446 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 pos + p 2 levels + p 3 keepJigsaws + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundLockDifficultyPacket ahf net/minecraft/class_4211 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48197 + f Z locked b field_18806 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_19484 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55978 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isLocked b method_19485 + m (Z)V + p 1 locked + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket ahg net/minecraft/class_2828 + f D x a field_12889 + f D y b field_12886 + f D z c field_12884 + f F yRot d field_12887 + f F xRot e field_12885 + f Z onGround f field_29179 + f Z hasPos g field_12890 + f Z hasRot h field_12888 + m (D)D getX a method_12269 + p 1 defaultValue + m (F)F getYRot a method_12271 + p 1 defaultValue + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12272 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Z isOnGround b method_12273 + m (D)D getY b method_12268 + p 1 defaultValue + m (F)F getXRot b method_12270 + p 1 defaultValue + m (D)D getZ c method_12274 + p 1 defaultValue + m ()Z hasPosition e method_36171 + m ()Z hasRotation f method_36172 + m (DDDFFZZZ)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 onGround + p 10 hasPos + p 11 hasRot +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Pos ahg$a net/minecraft/class_2828$class_2829 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48198 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Pos; read a method_34221 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55979 + c Writes the raw packet data to the data stream. + p 1 buffer + m (DDDZ)V + p 1 x + p 3 y + p 5 z + p 7 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$PosRot ahg$b net/minecraft/class_2828$class_2830 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48199 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$PosRot; read a method_34222 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55980 + c Writes the raw packet data to the data stream. + p 1 buffer + m (DDDFFZ)V + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Rot ahg$c net/minecraft/class_2828$class_2831 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48200 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$Rot; read a method_34223 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55981 + c Writes the raw packet data to the data stream. + p 1 buffer + m (FFZ)V + p 1 yRot + p 2 xRot + p 3 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMovePlayerPacket$StatusOnly ahg$d net/minecraft/class_2828$class_5911 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48201 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/game/ServerboundMovePlayerPacket$StatusOnly; read a method_34224 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_55982 + p 1 buffer + m (Z)V + p 1 onGround + m ()V +c net/minecraft/network/protocol/game/ServerboundMoveVehiclePacket ahh net/minecraft/class_2833 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48202 + f D x b field_12899 + f D y c field_12897 + f D z d field_12895 + f F yRot e field_12898 + f F xRot f field_12896 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12278 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55983 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()D getX b method_12279 + m ()D getY e method_12280 + m ()D getZ f method_12276 + m ()F getYRot g method_12281 + m ()F getXRot h method_12277 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 vehicle + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPaddleBoatPacket ahi net/minecraft/class_2836 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48203 + f Z left b field_12907 + f Z right c field_12906 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12283 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55984 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z getLeft b method_12284 + m ()Z getRight e method_12285 + m (ZZ)V + p 1 left + p 2 right + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPickItemPacket ahj net/minecraft/class_2838 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48204 + f I slot b field_12908 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12292 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55985 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_12293 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlaceRecipePacket ahk net/minecraft/class_2840 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48205 + f I containerId b field_12933 + f Lnet/minecraft/resources/ResourceLocation; recipe c field_12931 + f Z shiftDown d field_12932 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12317 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55986 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getContainerId b method_12318 + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe e method_12320 + m ()Z isShiftDown f method_12319 + m (ILnet/minecraft/world/item/crafting/RecipeHolder;Z)V + p 1 containerId + p 2 recipe + p 3 shiftDown + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerAbilitiesPacket ahl net/minecraft/class_2842 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48206 + f I FLAG_FLYING b field_33362 + f Z isFlying c field_12948 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12339 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55987 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Z isFlying b method_12346 + m (Lnet/minecraft/world/entity/player/Abilities;)V + p 1 abilities + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerActionPacket ahm net/minecraft/class_2846 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48207 + f Lnet/minecraft/core/BlockPos; pos b field_12967 + f Lnet/minecraft/core/Direction; direction c field_12965 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; action d field_12966 + c Status of the digging (started, ongoing, broken). + f I sequence e field_38048 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12361 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55988 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12362 + m ()Lnet/minecraft/core/Direction; getDirection e method_12360 + m ()Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; getAction f method_12363 + m ()I getSequence g method_42079 + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)V + p 1 action + p 2 pos + p 3 direction + p 4 sequence + m (Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 action + p 2 pos + p 3 direction + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action ahm$a net/minecraft/class_2846$class_2847 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; START_DESTROY_BLOCK a field_12968 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; ABORT_DESTROY_BLOCK b field_12971 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; STOP_DESTROY_BLOCK c field_12973 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; DROP_ALL_ITEMS d field_12970 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; DROP_ITEM e field_12975 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; RELEASE_USE_ITEM f field_12974 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; SWAP_ITEM_WITH_OFFHAND g field_12969 + f [Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; $VALUES h field_12972 + m ()[Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action; $values a method_36957 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerCommandPacket ahn net/minecraft/class_2848 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48208 + f I id b field_12977 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; action c field_12978 + f I data d field_12976 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12364 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55989 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getId b method_36173 + m ()Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; getAction e method_12365 + m ()I getData f method_12366 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action;)V + p 1 entity + p 2 action + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action;I)V + p 1 entity + p 2 action + p 3 data + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action ahn$a net/minecraft/class_2848$class_2849 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; PRESS_SHIFT_KEY a field_12979 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; RELEASE_SHIFT_KEY b field_12984 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_SLEEPING c field_12986 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_SPRINTING d field_12981 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_SPRINTING e field_12985 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_RIDING_JUMP f field_12987 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; STOP_RIDING_JUMP g field_12980 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; OPEN_INVENTORY h field_12988 + f Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; START_FALL_FLYING i field_12982 + f [Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; $VALUES j field_12983 + m ()[Lnet/minecraft/network/protocol/game/ServerboundPlayerCommandPacket$Action; $values a method_36958 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundPlayerInputPacket aho net/minecraft/class_2851 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48209 + f I FLAG_JUMPING b field_33363 + f I FLAG_SHIFT_KEY_DOWN c field_33364 + f F xxa d field_12995 + c Positive for left strafe, negative for right + f F zza e field_12994 + f Z isJumping f field_12997 + f Z isShiftKeyDown g field_12996 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12369 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55990 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()F getXxa b method_12372 + m ()F getZza e method_12373 + m ()Z isJumping f method_12371 + m ()Z isShiftKeyDown g method_12370 + m (FFZZ)V + p 1 xxa + p 2 zza + p 3 isJumping + p 4 isShiftKeyDown + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRecipeBookChangeSettingsPacket ahp net/minecraft/class_5427 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48210 + f Lnet/minecraft/world/inventory/RecipeBookType; bookType b field_25798 + f Z isOpen c field_25799 + f Z isFiltering d field_25800 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_30304 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55991 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/inventory/RecipeBookType; getBookType b method_30305 + m ()Z isOpen e method_30306 + m ()Z isFiltering f method_30307 + m (Lnet/minecraft/world/inventory/RecipeBookType;ZZ)V + p 1 bookType + p 2 isOpen + p 3 isFiltering + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRecipeBookSeenRecipePacket ahq net/minecraft/class_2853 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48211 + f Lnet/minecraft/resources/ResourceLocation; recipe b field_13004 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12400 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55992 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/resources/ResourceLocation; getRecipe b method_12406 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 recipe + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundRenameItemPacket ahr net/minecraft/class_2855 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48212 + f Ljava/lang/String; name b field_13013 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12408 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55993 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getName b method_12407 + m (Ljava/lang/String;)V + p 1 name + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket ahs net/minecraft/class_2859 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48213 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; action b field_13021 + f Lnet/minecraft/resources/ResourceLocation; tab c field_13020 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket; openedTab a method_12418 + p 0 advancement + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12417 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55994 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket; closedScreen b method_12414 + m ()Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; getAction e method_12415 + m ()Lnet/minecraft/resources/ResourceLocation; getTab f method_12416 + m (Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action;Lnet/minecraft/resources/ResourceLocation;)V + p 1 action + p 2 tab + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action ahs$a net/minecraft/class_2859$class_2860 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; OPENED_TAB a field_13024 + f Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; CLOSED_SCREEN b field_13023 + f [Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; $VALUES c field_13022 + m ()[Lnet/minecraft/network/protocol/game/ServerboundSeenAdvancementsPacket$Action; $values a method_36962 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/game/ServerboundSelectTradePacket aht net/minecraft/class_2863 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48214 + f I item b field_13036 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12430 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55995 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getItem b method_12431 + m (I)V + p 1 item + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetBeaconPacket ahu net/minecraft/class_2866 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48215 + f Ljava/util/Optional; primary b comp_2180 + f Ljava/util/Optional; secondary c comp_2181 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12434 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Ljava/util/Optional; primary b comp_2180 + m ()Ljava/util/Optional; secondary e comp_2181 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 primary + p 2 secondary + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCarriedItemPacket ahv net/minecraft/class_2868 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48216 + f I slot b field_13052 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12441 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55996 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getSlot b method_12442 + m (I)V + p 1 slot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCommandBlockPacket ahw net/minecraft/class_2870 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48217 + f I FLAG_TRACK_OUTPUT b field_33365 + f I FLAG_CONDITIONAL c field_33366 + f I FLAG_AUTOMATIC d field_33367 + f Lnet/minecraft/core/BlockPos; pos e field_13065 + f Ljava/lang/String; command f field_13064 + f Z trackOutput g field_13063 + f Z conditional h field_13062 + f Z automatic i field_13061 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; mode j field_13060 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12469 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55997 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12473 + m ()Ljava/lang/String; getCommand e method_12470 + m ()Z isTrackOutput f method_12472 + m ()Z isConditional g method_12471 + m ()Z isAutomatic h method_12474 + m ()Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; getMode i method_12468 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;ZZZ)V + p 1 pos + p 2 command + p 3 mode + p 4 trackOutput + p 5 conditional + p 6 automatic + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCommandMinecartPacket ahx net/minecraft/class_2871 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48218 + f I entity b field_13067 + f Ljava/lang/String; command c field_13068 + f Z trackOutput d field_13066 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12477 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock a method_12476 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_55998 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getCommand b method_12475 + m ()Z isTrackOutput e method_12478 + m (ILjava/lang/String;Z)V + p 1 entity + p 2 command + p 3 trackOutput + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetCreativeModeSlotPacket ahy net/minecraft/class_2873 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48219 + f S slotNum b comp_2609 + f Lnet/minecraft/world/item/ItemStack; itemStack c comp_2610 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12480 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()S slotNum b comp_2609 + m ()Lnet/minecraft/world/item/ItemStack; itemStack e comp_2610 + m (ILnet/minecraft/world/item/ItemStack;)V + p 1 slotNum + p 2 itemStack + m (SLnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/network/protocol/game/ServerboundSetJigsawBlockPacket ahz net/minecraft/class_3753 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48220 + f Lnet/minecraft/core/BlockPos; pos b field_16565 + f Lnet/minecraft/resources/ResourceLocation; name c field_16563 + f Lnet/minecraft/resources/ResourceLocation; target d field_16566 + f Lnet/minecraft/resources/ResourceLocation; pool e field_23401 + f Ljava/lang/String; finalState f field_16564 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint g field_23402 + f I selectionPriority h field_46917 + f I placementPriority i field_46918 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_16392 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56000 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_16396 + m ()Lnet/minecraft/resources/ResourceLocation; getName e method_16395 + m ()Lnet/minecraft/resources/ResourceLocation; getTarget f method_16394 + m ()Lnet/minecraft/resources/ResourceLocation; getPool g method_26435 + m ()Ljava/lang/String; getFinalState h method_16393 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; getJoint i method_26436 + m ()I getSelectionPriority j method_54668 + m ()I getPlacementPriority k method_54669 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;II)V + p 1 pos + p 2 name + p 3 target + p 4 pool + p 5 finalState + p 6 joint + p 7 selectionPriority + p 8 placementPriority + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSetStructureBlockPacket aia net/minecraft/class_2875 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48221 + f I FLAG_IGNORE_ENTITIES b field_33368 + f I FLAG_SHOW_AIR c field_33369 + f I FLAG_SHOW_BOUNDING_BOX d field_33370 + f Lnet/minecraft/core/BlockPos; pos e field_13093 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; updateType f field_13082 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; mode g field_13084 + f Ljava/lang/String; name h field_13080 + f Lnet/minecraft/core/BlockPos; offset i field_13091 + f Lnet/minecraft/core/Vec3i; size j field_13083 + f Lnet/minecraft/world/level/block/Mirror; mirror k field_13081 + f Lnet/minecraft/world/level/block/Rotation; rotation l field_13088 + f Ljava/lang/String; data m field_13085 + f Z ignoreEntities n field_13089 + f Z showAir o field_13087 + f Z showBoundingBox p field_13086 + f F integrity q field_13090 + f J seed r field_13092 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12495 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56001 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12499 + m ()Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; getUpdateType e method_12500 + m ()Lnet/minecraft/world/level/block/state/properties/StructureMode; getMode f method_12504 + m ()Ljava/lang/String; getName g method_12502 + m ()Lnet/minecraft/core/BlockPos; getOffset h method_12496 + m ()Lnet/minecraft/core/Vec3i; getSize i method_12492 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror j method_12493 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation k method_12498 + m ()Ljava/lang/String; getData l method_12501 + m ()Z isIgnoreEntities m method_12506 + m ()Z isShowAir n method_12503 + m ()Z isShowBoundingBox o method_12505 + m ()F getIntegrity p method_12494 + m ()J getSeed q method_12497 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType;Lnet/minecraft/world/level/block/state/properties/StructureMode;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Ljava/lang/String;ZZZFJ)V + p 1 pos + p 2 updateType + p 3 mode + p 4 name + p 5 offset + p 6 size + p 7 mirror + p 8 rotation + p 9 data + p 10 ignoreEntities + p 11 showAir + p 12 showBoundingBox + p 13 integrity + p 14 seed + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSignUpdatePacket aib net/minecraft/class_2877 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48222 + f I MAX_STRING_LENGTH b field_33371 + f Lnet/minecraft/core/BlockPos; pos c field_13101 + f [Ljava/lang/String; lines d field_13100 + f Z isFrontText e field_43153 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12509 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56002 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/core/BlockPos; getPos b method_12510 + m ()Z isFrontText e method_49751 + m ()[Ljava/lang/String; getLines f method_12508 + m (Lnet/minecraft/core/BlockPos;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 pos + p 2 isFrontText + p 3 line1 + p 4 line2 + p 5 line3 + p 6 line4 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundSwingPacket aic net/minecraft/class_2879 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48223 + f Lnet/minecraft/world/InteractionHand; hand b field_13102 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12511 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56003 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12512 + m (Lnet/minecraft/world/InteractionHand;)V + p 1 hand + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundTeleportToEntityPacket aid net/minecraft/class_2884 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48224 + f Ljava/util/UUID; uuid b field_13129 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12542 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; getEntity a method_12541 + p 1 level + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56004 + c Writes the raw packet data to the data stream. + p 1 buffer + m (Ljava/util/UUID;)V + p 1 uuid + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundUseItemOnPacket aie net/minecraft/class_2885 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48225 + f Lnet/minecraft/world/phys/BlockHitResult; blockHit b field_17602 + f Lnet/minecraft/world/InteractionHand; hand c field_13134 + f I sequence d field_38049 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12547 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56005 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12546 + m ()Lnet/minecraft/world/phys/BlockHitResult; getHitResult e method_12543 + m ()I getSequence f method_42080 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;I)V + p 1 hand + p 2 blockHit + p 3 sequence + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/ServerboundUseItemPacket aif net/minecraft/class_2886 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48226 + f Lnet/minecraft/world/InteractionHand; hand b field_13136 + f I sequence c field_38050 + f F yRot d field_51930 + f F xRot e field_51931 + m (Lnet/minecraft/network/protocol/game/ServerGamePacketListener;)V handle a method_12550 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56006 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/world/InteractionHand; getHand b method_12551 + m ()I getSequence e method_42081 + m ()F getYRot f method_60586 + m ()F getXRot g method_60587 + m (Lnet/minecraft/world/InteractionHand;IFF)V + p 1 hand + p 2 sequence + p 3 yRot + p 4 xRot + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/game/VecDeltaCodec aig net/minecraft/class_7422 + f D TRUNCATION_STEPS a field_39015 + f Lnet/minecraft/world/phys/Vec3; base b field_39016 + m ()Lnet/minecraft/world/phys/Vec3; getBase a method_60933 + m (D)J encode a method_43487 + p 0 value + m (J)D decode a method_43488 + p 0 value + m (JJJ)Lnet/minecraft/world/phys/Vec3; decode a method_43489 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)J encodeX a method_43490 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)J encodeY b method_43491 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)J encodeZ c method_43492 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; delta d method_43493 + p 1 value + m (Lnet/minecraft/world/phys/Vec3;)V setBase e method_43494 + p 1 base + m ()V +c net/minecraft/network/protocol/game/package-info aih net/minecraft/class_6314 +c net/minecraft/network/protocol/handshake/ClientIntent aii net/minecraft/class_8592 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; STATUS a field_44974 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; LOGIN b field_44975 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; TRANSFER c field_48227 + f I STATUS_ID d field_44976 + f I LOGIN_ID e field_44977 + f I TRANSFER_ID f field_48228 + f [Lnet/minecraft/network/protocol/handshake/ClientIntent; $VALUES g field_44978 + m ()I id a method_52283 + m (I)Lnet/minecraft/network/protocol/handshake/ClientIntent; byId a method_52284 + p 0 id + m ()[Lnet/minecraft/network/protocol/handshake/ClientIntent; $values b method_52286 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/network/protocol/handshake/ClientIntentionPacket aij net/minecraft/class_2889 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48229 + f I protocolVersion b comp_1563 + f Ljava/lang/String; hostName c comp_1564 + f I port d comp_1565 + f Lnet/minecraft/network/protocol/handshake/ClientIntent; intention e comp_1566 + f I MAX_HOST_LENGTH f field_33372 + m (Lnet/minecraft/network/protocol/handshake/ServerHandshakePacketListener;)V handle a method_12575 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56007 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I protocolVersion b comp_1563 + m ()Ljava/lang/String; hostName e comp_1564 + m ()I port f comp_1565 + m ()Lnet/minecraft/network/protocol/handshake/ClientIntent; intention g comp_1566 + m (ILjava/lang/String;ILnet/minecraft/network/protocol/handshake/ClientIntent;)V + p 1 protocolVersion + p 2 hostName + p 3 port + p 4 intention + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/handshake/HandshakePacketTypes aik net/minecraft/class_9096 + f Lnet/minecraft/network/protocol/PacketType; CLIENT_INTENTION a field_48230 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound a method_56008 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/handshake/HandshakeProtocols ail net/minecraft/class_9097 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52197 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48231 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56009 a method_56009 + m ()V + m ()V +c net/minecraft/network/protocol/handshake/ServerHandshakePacketListener aim net/minecraft/class_2890 + c PacketListener for the server side of the HANDSHAKING protocol. + m (Lnet/minecraft/network/protocol/handshake/ClientIntentionPacket;)V handleIntention a method_12576 + c There are two recognized intentions for initiating a handshake: logging in and acquiring server status. The NetworkManager's protocol will be reconfigured according to the specified intention, although a login-intention must pass a versioncheck or receive a disconnect otherwise + p 1 packet +c net/minecraft/network/protocol/handshake/package-info ain net/minecraft/class_6315 +c net/minecraft/network/protocol/login/ClientLoginPacketListener aio net/minecraft/class_2896 + c PacketListener for the client side of the LOGIN protocol. + m (Lnet/minecraft/network/protocol/login/ClientboundCustomQueryPacket;)V handleCustomQuery a method_12586 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundGameProfilePacket;)V handleGameProfile a method_12588 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundHelloPacket;)V handleHello a method_12587 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundLoginCompressionPacket;)V handleCompression a method_12585 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ClientboundLoginDisconnectPacket;)V handleDisconnect a method_12584 + p 1 packet +c net/minecraft/network/protocol/login/ClientboundCustomQueryPacket aip net/minecraft/class_2899 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48232 + f I transactionId b comp_1567 + f Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; payload c comp_1568 + f I MAX_PAYLOAD_SIZE d field_33373 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12591 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; readPayload a method_52287 + p 0 id + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56010 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I transactionId b comp_1567 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/DiscardedQueryPayload; readUnknownPayload b method_52288 + p 0 id + p 1 buffer + m ()Lnet/minecraft/network/protocol/login/custom/CustomQueryPayload; payload e comp_1568 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (ILnet/minecraft/network/protocol/login/custom/CustomQueryPayload;)V + m ()V +c net/minecraft/network/protocol/login/ClientboundGameProfilePacket aiq net/minecraft/class_2901 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48233 + f Lcom/mojang/authlib/GameProfile; gameProfile b comp_2363 + f Z strictErrorHandling c comp_2662 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12594 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()Lcom/mojang/authlib/GameProfile; gameProfile b comp_2363 + m ()Z strictErrorHandling e comp_2662 + m (Lcom/mojang/authlib/GameProfile;Z)V + m ()V +c net/minecraft/network/protocol/login/ClientboundHelloPacket air net/minecraft/class_2905 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48234 + f Ljava/lang/String; serverId b field_13209 + f [B publicKey c field_13211 + f [B challenge d field_13210 + f Z shouldAuthenticate e field_48235 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12612 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56012 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; getServerId b method_12610 + m ()Ljava/security/PublicKey; getPublicKey e method_12611 + m ()[B getChallenge f method_12613 + m ()Z shouldAuthenticate g method_56013 + m (Ljava/lang/String;[B[BZ)V + p 1 serverId + p 2 publicKey + p 3 challenge + p 4 shouldAuthenticate + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ClientboundLoginCompressionPacket ais net/minecraft/class_2907 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48236 + f I compressionThreshold b field_13232 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12633 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56014 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()I getCompressionThreshold b method_12634 + m (I)V + p 1 compressionThreshold + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ClientboundLoginDisconnectPacket ait net/minecraft/class_2909 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48237 + f Lnet/minecraft/network/chat/Component; reason b field_13243 + m (Lnet/minecraft/network/protocol/login/ClientLoginPacketListener;)V handle a method_12637 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56015 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/chat/Component; getReason b method_12638 + m (Lnet/minecraft/network/chat/Component;)V + p 1 reason + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/LoginPacketTypes aiu net/minecraft/class_9098 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_CUSTOM_QUERY a field_48238 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_GAME_PROFILE b field_48239 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_HELLO c field_48240 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN_COMPRESSION d field_48241 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_LOGIN_DISCONNECT e field_48242 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_CUSTOM_QUERY_ANSWER f field_48243 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_HELLO g field_48244 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_KEY h field_48245 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_LOGIN_ACKNOWLEDGED i field_48246 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56016 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56017 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/login/LoginProtocols aiv net/minecraft/class_9099 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52198 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48247 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52199 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48248 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56018 a method_56018 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56019 b method_56019 + m ()V + m ()V +c net/minecraft/network/protocol/login/ServerLoginPacketListener aiw net/minecraft/class_2911 + c PacketListener for the server side of the LOGIN protocol. + m (Lnet/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket;)V handleCustomQueryPacket a method_12640 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundHelloPacket;)V handleHello a method_12641 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;)V handleKey a method_12642 + p 1 packet + m (Lnet/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket;)V handleLoginAcknowledgement a method_52289 + p 1 packet +c net/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket aix net/minecraft/class_2913 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48249 + f I transactionId b comp_1569 + f Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; payload c comp_1570 + f I MAX_PAYLOAD_SIZE d field_33374 + m (ILnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; readPayload a method_52290 + p 0 transactionId + p 1 buffer + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12645 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/ServerboundCustomQueryAnswerPacket; read a method_52292 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload;)V method_52291 a method_52291 + m ()I transactionId b comp_1569 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; readUnknownPayload b method_52293 + p 0 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)V write c method_11052 + p 1 buffer + m ()Lnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload; payload e comp_1570 + m (ILnet/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload;)V + m ()V +c net/minecraft/network/protocol/login/ServerboundHelloPacket aiy net/minecraft/class_2915 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48250 + f Ljava/lang/String; name b comp_765 + f Ljava/util/UUID; profileId c comp_907 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12649 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56020 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Ljava/lang/String; name b comp_765 + m ()Ljava/util/UUID; profileId e comp_907 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;Ljava/util/UUID;)V + m ()V +c net/minecraft/network/protocol/login/ServerboundKeyPacket aiz net/minecraft/class_2917 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48251 + f [B keybytes b field_13274 + f [B encryptedChallenge c field_39089 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_12653 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Ljava/security/PrivateKey;)Ljavax/crypto/SecretKey; getSecretKey a method_12654 + p 1 key + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56021 + c Writes the raw packet data to the data stream. + p 1 buffer + m ([BLjava/security/PrivateKey;)Z isChallengeValid a method_43643 + p 1 expected + p 2 key + m (Ljavax/crypto/SecretKey;Ljava/security/PublicKey;[B)V + p 1 secretKey + p 2 publicKey + p 3 challenge + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket aja net/minecraft/class_8593 + f Lnet/minecraft/network/protocol/login/ServerboundLoginAcknowledgedPacket; INSTANCE a field_48252 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48253 + m (Lnet/minecraft/network/protocol/login/ServerLoginPacketListener;)V handle a method_52294 + m ()V + m ()V +c net/minecraft/network/protocol/login/custom/CustomQueryAnswerPayload ajb net/minecraft/class_8594 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52295 + p 1 buffer +c net/minecraft/network/protocol/login/custom/CustomQueryPayload ajc net/minecraft/class_8595 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1571 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52296 + p 1 buffer +c net/minecraft/network/protocol/login/custom/DiscardedQueryAnswerPayload ajd net/minecraft/class_8596 + f Lnet/minecraft/network/protocol/login/custom/DiscardedQueryAnswerPayload; INSTANCE a field_44980 + m ()V + m ()V +c net/minecraft/network/protocol/login/custom/DiscardedQueryPayload aje net/minecraft/class_8597 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1571 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/network/protocol/login/custom/package-info ajf net/minecraft/class_8598 +c net/minecraft/network/protocol/login/package-info ajg net/minecraft/class_6316 +c net/minecraft/network/protocol/package-info ajh net/minecraft/class_6317 +c net/minecraft/network/protocol/ping/ClientPongPacketListener aji net/minecraft/class_8763 + m (Lnet/minecraft/network/protocol/ping/ClientboundPongResponsePacket;)V handlePongResponse a method_12666 + p 1 packet +c net/minecraft/network/protocol/ping/ClientboundPongResponsePacket ajj net/minecraft/class_2923 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48254 + f J time b comp_2201 + m (Lnet/minecraft/network/protocol/ping/ClientPongPacketListener;)V handle a method_12670 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56022 + p 1 buffer + m ()J time b comp_2201 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (J)V + m ()V +c net/minecraft/network/protocol/ping/PingPacketTypes ajk net/minecraft/class_9100 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_PONG_RESPONSE a field_48255 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_PING_REQUEST b field_48256 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56023 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56024 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/ping/ServerPingPacketListener ajl net/minecraft/class_8740 + m (Lnet/minecraft/network/protocol/ping/ServerboundPingRequestPacket;)V handlePingRequest a method_12697 + p 1 packet +c net/minecraft/network/protocol/ping/ServerboundPingRequestPacket ajm net/minecraft/class_2935 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48257 + f J time b field_13292 + m (Lnet/minecraft/network/protocol/ping/ServerPingPacketListener;)V handle a method_12699 + c Passes this Packet on to the PacketListener for processing. + p 1 handler + m (Lio/netty/buffer/ByteBuf;)V write a method_56025 + p 1 buffer + m ()J getTime b method_12700 + m (J)V + p 1 time + m (Lio/netty/buffer/ByteBuf;)V + p 1 buffer + m ()V +c net/minecraft/network/protocol/ping/package-info ajn net/minecraft/class_9101 +c net/minecraft/network/protocol/status/ClientStatusPacketListener ajo net/minecraft/class_2921 + c PacketListener for the client side of the STATUS protocol. + m (Lnet/minecraft/network/protocol/status/ClientboundStatusResponsePacket;)V handleStatusResponse a method_12667 + p 1 packet +c net/minecraft/network/protocol/status/ClientboundStatusResponsePacket ajp net/minecraft/class_2924 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48258 + f Lnet/minecraft/network/protocol/status/ServerStatus; status b comp_1272 + m (Lnet/minecraft/network/protocol/status/ClientStatusPacketListener;)V handle a method_12671 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_56026 + c Writes the raw packet data to the data stream. + p 1 buffer + m ()Lnet/minecraft/network/protocol/status/ServerStatus; status b comp_1272 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Lnet/minecraft/network/protocol/status/ServerStatus;)V + p 1 status + m ()V +c net/minecraft/network/protocol/status/ServerStatus ajq net/minecraft/class_2926 + f Lcom/mojang/serialization/Codec; CODEC a field_42535 + f Lnet/minecraft/network/chat/Component; description b comp_1273 + f Ljava/util/Optional; players c comp_1274 + f Ljava/util/Optional; version d comp_1275 + f Ljava/util/Optional; favicon e comp_1276 + f Z enforcesSecureChat f comp_1277 + m ()Lnet/minecraft/network/chat/Component; description a comp_1273 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49092 a method_49092 + m ()Ljava/util/Optional; players b comp_1274 + m ()Ljava/util/Optional; version c comp_1275 + m ()Ljava/util/Optional; favicon d comp_1276 + m ()Z enforcesSecureChat e comp_1277 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Z)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Favicon ajq$a net/minecraft/class_2926$class_8145 + f Lcom/mojang/serialization/Codec; CODEC a field_42538 + f [B iconBytes b comp_1278 + f Ljava/lang/String; PREFIX c field_42539 + m ()[B iconBytes a comp_1278 + m (Lnet/minecraft/network/protocol/status/ServerStatus$Favicon;)Ljava/lang/String; method_49093 a method_49093 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_49094 a method_49094 + m ()Ljava/lang/String; method_49401 b method_49401 + m ()Ljava/lang/String; method_49402 c method_49402 + m ([B)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Players ajq$b net/minecraft/class_2926$class_2927 + f Lcom/mojang/serialization/Codec; CODEC a field_42540 + f I max b comp_1279 + f I online c comp_1280 + f Ljava/util/List; sample d comp_1281 + f Lcom/mojang/serialization/Codec; PROFILE_CODEC e field_42541 + m ()I max a comp_1279 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49095 a method_49095 + m ()I online b comp_1280 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49096 b method_49096 + m ()Ljava/util/List; sample c comp_1281 + m (IILjava/util/List;)V + m ()V +c net/minecraft/network/protocol/status/ServerStatus$Version ajq$c net/minecraft/class_2926$class_2930 + f Lcom/mojang/serialization/Codec; CODEC a field_42542 + f Ljava/lang/String; name b comp_1282 + f I protocol c comp_1283 + m ()Lnet/minecraft/network/protocol/status/ServerStatus$Version; current a method_49097 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49098 a method_49098 + m ()Ljava/lang/String; name b comp_1282 + m ()I protocol c comp_1283 + m (Ljava/lang/String;I)V + p 1 name + p 2 protocol + m ()V +c net/minecraft/network/protocol/status/ServerStatusPacketListener ajr net/minecraft/class_2933 + c PacketListener for the server side of the STATUS protocol. + m (Lnet/minecraft/network/protocol/status/ServerboundStatusRequestPacket;)V handleStatusRequest a method_12698 + p 1 packet +c net/minecraft/network/protocol/status/ServerboundStatusRequestPacket ajs net/minecraft/class_2937 + f Lnet/minecraft/network/protocol/status/ServerboundStatusRequestPacket; INSTANCE a field_48259 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48260 + m (Lnet/minecraft/network/protocol/status/ServerStatusPacketListener;)V handle a method_12701 + c Passes this Packet on to the NetHandler for processing. + p 1 handler + m ()V + m ()V +c net/minecraft/network/protocol/status/StatusPacketTypes ajt net/minecraft/class_9102 + f Lnet/minecraft/network/protocol/PacketType; CLIENTBOUND_STATUS_RESPONSE a field_48261 + f Lnet/minecraft/network/protocol/PacketType; SERVERBOUND_STATUS_REQUEST b field_48262 + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createClientbound a method_56027 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/network/protocol/PacketType; createServerbound b method_56028 + p 0 name + m ()V + m ()V +c net/minecraft/network/protocol/status/StatusProtocols aju net/minecraft/class_9103 + f Lnet/minecraft/network/ProtocolInfo$Unbound; SERVERBOUND_TEMPLATE a field_52200 + f Lnet/minecraft/network/ProtocolInfo; SERVERBOUND b field_48263 + f Lnet/minecraft/network/ProtocolInfo$Unbound; CLIENTBOUND_TEMPLATE c field_52201 + f Lnet/minecraft/network/ProtocolInfo; CLIENTBOUND d field_48264 + m (Lio/netty/buffer/ByteBuf;)Lio/netty/buffer/ByteBuf; method_60934 a method_60934 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56029 a method_56029 + m (Lnet/minecraft/network/protocol/ProtocolInfoBuilder;)V method_56030 b method_56030 + m ()V + m ()V +c net/minecraft/network/protocol/status/package-info ajv net/minecraft/class_6318 +c net/minecraft/network/syncher/EntityDataAccessor ajw net/minecraft/class_2940 + c A Key for {@link SynchedEntityData}. + f I id a comp_2327 + f Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_2328 + m ()I id a comp_2327 + m ()Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_2328 + m (ILnet/minecraft/network/syncher/EntityDataSerializer;)V + p 1 id + p 2 serializer +c net/minecraft/network/syncher/EntityDataSerializer ajx net/minecraft/class_2941 + c Handles encoding and decoding of data for {@link SynchedEntityData}.\nNote that mods cannot add new serializers, because this is not a managed registry and the serializer ID is limited to 16. + m (I)Lnet/minecraft/network/syncher/EntityDataAccessor; createAccessor a method_12717 + p 1 id + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/syncher/EntityDataSerializer; forValueType a method_56031 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_56032 b method_56032 + m (Ljava/lang/Object;)Ljava/lang/Object; copy copy method_12714 + p 1 value +c net/minecraft/network/syncher/EntityDataSerializer$ForValueType ajx$a net/minecraft/class_2941$class_7394 +c net/minecraft/network/syncher/EntityDataSerializers ajy net/minecraft/class_2943 + c Registry for {@link EntityDataSerializer}. + f Lnet/minecraft/network/syncher/EntityDataSerializer; PAINTING_VARIANT A field_39017 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ARMADILLO_STATE B field_47707 + f Lnet/minecraft/network/syncher/EntityDataSerializer; SNIFFER_STATE C field_42543 + f Lnet/minecraft/network/syncher/EntityDataSerializer; VECTOR3 D field_42237 + f Lnet/minecraft/network/syncher/EntityDataSerializer; QUATERNION E field_42235 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; SERIALIZERS F field_13328 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_BLOCK_STATE_CODEC G field_48265 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_UNSIGNED_INT_CODEC H field_48266 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BYTE a field_13319 + f Lnet/minecraft/network/syncher/EntityDataSerializer; INT b field_13327 + f Lnet/minecraft/network/syncher/EntityDataSerializer; LONG c field_39965 + f Lnet/minecraft/network/syncher/EntityDataSerializer; FLOAT d field_13320 + f Lnet/minecraft/network/syncher/EntityDataSerializer; STRING e field_13326 + f Lnet/minecraft/network/syncher/EntityDataSerializer; COMPONENT f field_13317 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_COMPONENT g field_13325 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ITEM_STACK h field_13322 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BLOCK_STATE i field_13312 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_BLOCK_STATE j field_42236 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BOOLEAN k field_13323 + f Lnet/minecraft/network/syncher/EntityDataSerializer; PARTICLE l field_13314 + f Lnet/minecraft/network/syncher/EntityDataSerializer; PARTICLES m field_49774 + f Lnet/minecraft/network/syncher/EntityDataSerializer; ROTATIONS n field_13316 + f Lnet/minecraft/network/syncher/EntityDataSerializer; BLOCK_POS o field_13324 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_BLOCK_POS p field_13315 + f Lnet/minecraft/network/syncher/EntityDataSerializer; DIRECTION q field_13321 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_UUID r field_13313 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_GLOBAL_POS s field_38825 + f Lnet/minecraft/network/syncher/EntityDataSerializer; COMPOUND_TAG t field_13318 + f Lnet/minecraft/network/syncher/EntityDataSerializer; VILLAGER_DATA u field_17207 + f Lnet/minecraft/network/syncher/EntityDataSerializer; OPTIONAL_UNSIGNED_INT v field_17910 + f Lnet/minecraft/network/syncher/EntityDataSerializer; POSE w field_18238 + f Lnet/minecraft/network/syncher/EntityDataSerializer; CAT_VARIANT x field_38826 + f Lnet/minecraft/network/syncher/EntityDataSerializer; WOLF_VARIANT y field_49713 + f Lnet/minecraft/network/syncher/EntityDataSerializer; FROG_VARIANT z field_38827 + m (I)Lnet/minecraft/network/syncher/EntityDataSerializer; getSerializer a method_12721 + p 0 id + m (Lnet/minecraft/network/syncher/EntityDataSerializer;)V registerSerializer a method_12720 + p 0 serializer + m (Lnet/minecraft/network/syncher/EntityDataSerializer;)I getSerializedId b method_12719 + p 0 serializer + m ()V + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$1 ajy$1 net/minecraft/class_2943$1 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; copy a method_12732 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$2 ajy$2 net/minecraft/class_2943$2 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; decode a method_56033 + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V encode a method_56034 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$3 ajy$3 net/minecraft/class_2943$3 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; copy a method_56035 + m ()V +c net/minecraft/network/syncher/EntityDataSerializers$4 ajy$4 net/minecraft/class_2943$4 + m (Lio/netty/buffer/ByteBuf;)Ljava/util/OptionalInt; decode a method_56036 + m (Lio/netty/buffer/ByteBuf;Ljava/util/OptionalInt;)V encode a method_56037 + m ()V +c net/minecraft/network/syncher/SyncedDataHolder ajz net/minecraft/class_9221 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)V onSyncedDataUpdated a method_5674 + p 1 dataAccessor + m (Ljava/util/List;)V onSyncedDataUpdated a method_48850 + p 1 newData +c net/minecraft/network/syncher/SynchedEntityData aka net/minecraft/class_2945 + c Keeps data in sync from server to client for an entity.\nA maximum of 254 parameters per entity class can be registered. The system then ensures that these values are updated on the client whenever they change on the server.\n\nUse {@link #defineId} to register a piece of data for your entity class.\nUse {@link #define} during {@link Entity#defineSynchedData} to set the default value for a given parameter. + f Lorg/slf4j/Logger; LOGGER a field_13334 + f I MAX_ID_VALUE b field_33378 + f Lnet/minecraft/util/ClassTreeIdRegistry; ID_REGISTRY c field_49021 + f Lnet/minecraft/network/syncher/SyncedDataHolder; entity d field_13333 + f [Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; itemsById e field_13331 + f Z isDirty f field_13329 + m ()Z isDirty a method_12786 + c Whether any keys have changed since the last synchronization packet to the client. + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)Ljava/lang/Object; get a method_12789 + c Get the value of the given key for this entity. + p 1 key + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)V set a method_12778 + c Set the value of the given key for this entity. + p 1 key + p 2 value + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;Z)V set a method_49743 + p 1 key + p 2 value + p 3 force + m (Lnet/minecraft/network/syncher/SynchedEntityData$DataItem;Lnet/minecraft/network/syncher/SynchedEntityData$DataValue;)V assignValue a method_12785 + p 1 target + p 2 entry + m (Ljava/lang/Class;Lnet/minecraft/network/syncher/EntityDataSerializer;)Lnet/minecraft/network/syncher/EntityDataAccessor; defineId a method_12791 + c Register a piece of data to be kept in sync for an entity class.\nThis method must be called during a static initializer of an entity class and the first parameter of this method must be that entity class. + p 0 clazz + p 1 serializer + m (Ljava/util/List;)V assignValues a method_12779 + c Updates the data using the given entries. Used on the client when the update packet is received. + p 1 entries + m ()Ljava/util/List; packDirty b method_12781 + c Gets all data entries which have changed since the last check and clears their dirty flag. + m (Lnet/minecraft/network/syncher/EntityDataAccessor;)Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; getItem b method_12783 + p 1 key + m ()Ljava/util/List; getNonDefaultValues c method_46357 + m (Lnet/minecraft/network/syncher/SyncedDataHolder;[Lnet/minecraft/network/syncher/SynchedEntityData$DataItem;)V + p 1 entity + p 2 itemsById + m ()V +c net/minecraft/network/syncher/SynchedEntityData$Builder aka$a net/minecraft/class_2945$class_9222 + f Lnet/minecraft/network/syncher/SyncedDataHolder; entity a field_49022 + f [Lnet/minecraft/network/syncher/SynchedEntityData$DataItem; itemsById b field_49023 + m ()Lnet/minecraft/network/syncher/SynchedEntityData; build a method_56911 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)Lnet/minecraft/network/syncher/SynchedEntityData$Builder; define a method_56912 + p 1 accessor + p 2 value + m (Lnet/minecraft/network/syncher/SyncedDataHolder;)V + p 1 entity +c net/minecraft/network/syncher/SynchedEntityData$DataItem aka$b net/minecraft/class_2945$class_2946 + f Lnet/minecraft/network/syncher/EntityDataAccessor; accessor a field_13337 + f Ljava/lang/Object; value b field_13338 + f Ljava/lang/Object; initialValue c field_40719 + f Z dirty d field_13336 + m ()Lnet/minecraft/network/syncher/EntityDataAccessor; getAccessor a method_12797 + m (Ljava/lang/Object;)V setValue a method_12799 + p 1 value + m (Z)V setDirty a method_12795 + p 1 dirty + m ()Ljava/lang/Object; getValue b method_12794 + m ()Z isDirty c method_12796 + m ()Z isSetToDefault d method_46358 + m ()Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; value e method_46359 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)V + p 1 accessor + p 2 value +c net/minecraft/network/syncher/SynchedEntityData$DataValue aka$c net/minecraft/class_2945$class_7834 + f I id a comp_1115 + f Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_1116 + f Ljava/lang/Object; value c comp_1117 + m ()I id a comp_1115 + m (Lnet/minecraft/network/syncher/EntityDataAccessor;Ljava/lang/Object;)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; create a method_46360 + p 0 dataAccessor + p 1 value + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V write a method_46361 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;I)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; read a method_46362 + p 0 buffer + p 1 id + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;ILnet/minecraft/network/syncher/EntityDataSerializer;)Lnet/minecraft/network/syncher/SynchedEntityData$DataValue; read a method_46363 + p 0 buffer + p 1 id + p 2 serializer + m ()Lnet/minecraft/network/syncher/EntityDataSerializer; serializer b comp_1116 + m ()Ljava/lang/Object; value c comp_1117 + m (ILnet/minecraft/network/syncher/EntityDataSerializer;Ljava/lang/Object;)V +c net/minecraft/network/syncher/package-info akb net/minecraft/class_6320 +c net/minecraft/obfuscate/package-info akc net/minecraft/class_6321 +c net/minecraft/package-info akd net/minecraft/class_6322 +c net/minecraft/recipebook/PlaceRecipe ake net/minecraft/class_2952 + m (IIILnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/Iterator;I)V placeRecipe a method_12816 + p 1 width + p 2 height + p 3 outputSlot + p 4 recipe + p 5 ingredients + p 6 maxAmount + m (Ljava/lang/Object;IIII)V addItemToSlot a method_12815 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y +c net/minecraft/recipebook/ServerPlaceRecipe akf net/minecraft/class_2955 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents a field_13347 + f Lnet/minecraft/world/entity/player/Inventory; inventory b field_13350 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu c field_13348 + f I ITEM_NOT_FOUND d field_51523 + m ()V clearGrid a method_12822 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;Z)V recipeClicked a method_12826 + p 1 player + p 2 recipe + p 3 placeAll + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;I)I moveItemToGrid a method_12824 + p 1 slot + p 2 stack + p 3 maxAmount + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Z)V handleRecipeClicked a method_12821 + p 1 recipe + p 2 placeAll + m (Ljava/lang/Integer;IIII)V addItemToSlot a method_59902 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (ZIZ)I getStackSize a method_12819 + p 1 placeAll + p 2 maxPossible + p 3 recipeMatches + m ()Z testClearGrid b method_12825 + c Places the output of the recipe into the player's inventory. + m ()I getAmountOfFreeSlotsInInventory c method_12823 + m (Lnet/minecraft/world/inventory/RecipeBookMenu;)V + p 1 menu +c net/minecraft/recipebook/package-info akg net/minecraft/class_6323 +c net/minecraft/references/Blocks akh net/minecraft/class_8803 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN a field_46221 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN_STEM b field_46222 + f Lnet/minecraft/resources/ResourceKey; ATTACHED_PUMPKIN_STEM c field_46223 + f Lnet/minecraft/resources/ResourceKey; MELON d field_46224 + f Lnet/minecraft/resources/ResourceKey; MELON_STEM e field_46225 + f Lnet/minecraft/resources/ResourceKey; ATTACHED_MELON_STEM f field_46226 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_53910 + p 0 id + m ()V + m ()V +c net/minecraft/references/Items aki net/minecraft/class_8804 + f Lnet/minecraft/resources/ResourceKey; PUMPKIN_SEEDS a field_46227 + f Lnet/minecraft/resources/ResourceKey; MELON_SEEDS b field_46228 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_53911 + p 0 id + m ()V + m ()V +c net/minecraft/resources/DelegatingOps akj net/minecraft/class_5379 + c A {@link DynamicOps} that delegates all functionality to an internal delegate. Comments and parameters here are copied from {@link DynamicOps} in DataFixerUpper. + f Lcom/mojang/serialization/DynamicOps; delegate a field_25503 + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 delegate +c net/minecraft/resources/FileToIdConverter akk net/minecraft/class_7654 + f Ljava/lang/String; prefix a field_39966 + f Ljava/lang/String; extension b field_39967 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; idToFile a method_45112 + p 1 id + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; listMatchingResources a method_45113 + p 1 resourceManager + m (Ljava/lang/String;)Lnet/minecraft/resources/FileToIdConverter; json a method_45114 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; fileToId b method_45115 + p 1 file + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; listMatchingResourceStacks b method_45116 + p 1 resourceManager + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45117 c method_45117 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45118 d method_45118 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 prefix + p 2 extenstion +c net/minecraft/resources/HolderSetCodec akl net/minecraft/class_6898 + f Lnet/minecraft/resources/ResourceKey; registryKey a field_36480 + f Lcom/mojang/serialization/Codec; elementCodec b field_36481 + f Lcom/mojang/serialization/Codec; homogenousListCodec c field_36482 + f Lcom/mojang/serialization/Codec; registryAwareCodec d field_36483 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; create a method_40388 + p 0 registryKey + p 1 holderCodec + p 2 disallowInline + m (Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; method_58027 a method_58027 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/List; method_40380 a method_40380 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40381 a method_40381 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/HolderSet;)Lcom/mojang/datafixers/util/Pair; method_58028 a method_58028 + m (Lcom/mojang/serialization/Codec;Z)Lcom/mojang/serialization/Codec; homogenousList a method_40382 + p 0 holderCodec + p 1 disallowInline + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; decodeWithoutRegistry a method_40383 + p 1 ops + p 2 input + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_58030 a method_58030 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49403 a method_49403 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; lookupTag a method_58029 + p 0 input + p 1 tagKey + m (Lnet/minecraft/core/HolderGetter;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_40386 a method_40386 + m (Lnet/minecraft/core/HolderSet;)Ljava/lang/String; method_49404 a method_49404 + m (Lnet/minecraft/core/HolderSet;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_40384 + p 1 input + p 2 ops + p 3 prefix + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_58031 b method_58031 + m (Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_40387 b method_40387 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/tags/TagKey;)Lcom/mojang/serialization/DataResult; method_40385 b method_40385 + m (Lnet/minecraft/core/HolderSet;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encodeWithoutRegistry b method_40389 + p 1 input + p 2 ops + p 3 prefix + m (Ljava/util/List;)Ljava/util/List; method_40390 c method_40390 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V + p 1 registryKey + p 2 elementCodec + p 3 disallowInline +c net/minecraft/resources/RegistryDataLoader akm net/minecraft/class_7655 + f Ljava/util/List; WORLDGEN_REGISTRIES a field_39968 + f Ljava/util/List; DIMENSION_REGISTRIES b field_39969 + f Ljava/util/List; SYNCHRONIZED_REGISTRIES c field_48709 + f Lorg/slf4j/Logger; LOGGER d field_39970 + f Lnet/minecraft/core/RegistrationInfo; NETWORK_REGISTRATION_INFO e field_49024 + f Ljava/util/function/Function; REGISTRATION_INFO_CACHE f field_49025 + m (Lnet/minecraft/resources/RegistryDataLoader$LoadingFunction;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_45120 a method_45120 + m (Lnet/minecraft/resources/RegistryDataLoader$LoadingFunction;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_45121 + p 0 loadingFunction + p 1 registryAccess + p 2 registryData + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryDataLoader$Loader;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V method_56514 a method_56514 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V loadContentsFromManager a method_45122 + p 0 resourceManager + p 1 registryInfoLookup + p 2 registry + p 3 codec + p 4 loadingErrors + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_56515 + p 0 resourceManager + p 1 registryAccess + p 2 registryData + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_45123 a method_45123 + m (Ljava/lang/Boolean;)Lcom/mojang/serialization/Lifecycle; method_56913 a method_56913 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_45125 a method_45125 + m (Ljava/util/Map;)V logErrors a method_45126 + p 0 errors + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_46621 a method_46621 + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$RegistryData;)Lnet/minecraft/resources/RegistryDataLoader$Loader; method_45127 a method_45127 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryDataLoader$Loader;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V method_56517 a method_56517 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Ljava/util/Map;)V loadContentsFromNetwork a method_56518 + p 0 elements + p 1 resourceProvider + p 2 registryInfoLookup + p 3 registry + p 4 codec + p 5 loadingErrors + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; load a method_56519 + p 0 elements + p 1 resourceProvider + p 2 registryAccess + p 3 registryData + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_46622 a method_46622 + m (Ljava/util/Optional;)Lnet/minecraft/core/RegistrationInfo; method_56914 a method_56914 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; createInfoForContextRegistry a method_46618 + p 0 registry + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup; createContext a method_46619 + p 0 registryAccess + p 1 registryLoaders + m (Lnet/minecraft/core/WritableRegistry;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; createInfoForNewRegistry a method_46620 + p 0 registry + m (Lnet/minecraft/core/WritableRegistry;Lcom/mojang/serialization/Decoder;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/server/packs/resources/Resource;Lnet/minecraft/core/RegistrationInfo;)V loadElementFromResource a method_56915 + p 0 registry + p 1 codec + p 2 ops + p 3 resourceKey + p 4 resource + p 5 registrationInfo + m (Ljava/io/PrintWriter;Ljava/util/Map$Entry;)V method_45129 b method_45129 + m (Ljava/util/Map$Entry;)Lnet/minecraft/resources/ResourceLocation; method_45130 b method_45130 + m (Ljava/util/Map;Lnet/minecraft/resources/RegistryDataLoader$Loader;)V method_45128 b method_45128 + m ()V + m ()V +c net/minecraft/resources/RegistryDataLoader$1 akm$1 net/minecraft/class_7655$1 + f Ljava/util/Map; val$result a field_40851 + m (Ljava/util/Map;)V +c net/minecraft/resources/RegistryDataLoader$Loader akm$a net/minecraft/class_7655$class_9158 + f Lnet/minecraft/resources/RegistryDataLoader$RegistryData; data a comp_2245 + f Lnet/minecraft/core/WritableRegistry; registry b comp_2246 + f Ljava/util/Map; loadingErrors c comp_2247 + m ()Lnet/minecraft/resources/RegistryDataLoader$RegistryData; data a comp_2245 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V loadFromResources a method_56520 + p 1 resouceManager + p 2 registryInfoLookup + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V loadFromNetwork a method_56521 + p 1 elements + p 2 resourceProvider + p 3 registryInfoLookup + m ()Lnet/minecraft/core/WritableRegistry; registry b comp_2246 + m ()Ljava/util/Map; loadingErrors c comp_2247 + m (Lnet/minecraft/resources/RegistryDataLoader$RegistryData;Lnet/minecraft/core/WritableRegistry;Ljava/util/Map;)V +c net/minecraft/resources/RegistryDataLoader$LoadingFunction akm$b net/minecraft/class_7655$class_7656 +c net/minecraft/resources/RegistryDataLoader$RegistryData akm$c net/minecraft/class_7655$class_7657 + f Lnet/minecraft/resources/ResourceKey; key a comp_985 + f Lcom/mojang/serialization/Codec; elementCodec b comp_986 + f Z requiredNonEmpty c comp_2664 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_985 + m (Lcom/mojang/serialization/Lifecycle;Ljava/util/Map;)Lnet/minecraft/resources/RegistryDataLoader$Loader; create a method_45131 + p 1 registryLifecycle + p 2 loadingErrors + m (Ljava/util/function/BiConsumer;)V runWithArguments a method_54920 + p 1 runner + m ()Lcom/mojang/serialization/Codec; elementCodec b comp_986 + m ()Z requiredNonEmpty c comp_2664 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)V + p 1 key + p 2 elementCodec + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V +c net/minecraft/resources/RegistryFileCodec akn net/minecraft/class_5381 + c A codec that wraps a single element, or "file", within a registry. Possibly allows inline definitions, and always falls back to the element codec (and thus writing the registry element inline) if it fails to decode from the registry. + f Lnet/minecraft/resources/ResourceKey; registryKey a field_25507 + f Lcom/mojang/serialization/Codec; elementCodec b field_25508 + f Z allowInline c field_26758 + m ()Ljava/lang/String; method_49405 a method_49405 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46624 a method_46624 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lnet/minecraft/resources/RegistryFileCodec; create a method_29749 + c Creates a codec for a single registry element, which is held as an un-resolved {@code Supplier}. Both inline definitions of the object, and references to an existing registry element id are allowed. + p 0 registryKey + c The registry which elements may belong to. + p 1 elementCodec + c The codec used to decode either inline definitions, or elements before entering them into the registry. + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)Lnet/minecraft/resources/RegistryFileCodec; create a method_31192 + p 0 registryKey + p 1 elementCodec + p 2 allowInline + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_29746 a method_29746 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/datafixers/util/Pair; method_45133 a method_45133 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_40393 a method_40393 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40392 a method_40392 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49406 a method_49406 + m (Lnet/minecraft/core/Holder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_29748 + p 1 input + p 2 ops + p 3 prefix + m ()Ljava/lang/String; method_49407 b method_49407 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49408 b method_49408 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40394 b method_40394 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Z)V + p 1 registryKey + p 2 elementCodec + p 3 allowInline +c net/minecraft/resources/RegistryFixedCodec ako net/minecraft/class_6899 + f Lnet/minecraft/resources/ResourceKey; registryKey a field_36484 + m ()Ljava/lang/String; method_49409 a method_49409 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/RegistryFixedCodec; create a method_40400 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_46625 a method_46625 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/Holder$Reference;)Lcom/mojang/datafixers/util/Pair; method_44141 a method_44141 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_40395 a method_40395 + m (Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_40397 a method_40397 + m (Ljava/util/Optional;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_44142 a method_44142 + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; method_49410 a method_49410 + m (Lnet/minecraft/core/Holder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_40396 + p 1 holder + p 2 ops + p 3 value + m ()Ljava/lang/String; method_49411 b method_49411 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49412 b method_49412 + m ()Ljava/lang/String; method_49413 c method_49413 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 registryKey +c net/minecraft/resources/RegistryOps akp net/minecraft/class_6903 + f Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup; lookupProvider b field_40852 + m ()Ljava/lang/String; method_49414 a method_49414 + m (Lnet/minecraft/resources/RegistryOps$RegistryInfo;)Lcom/mojang/serialization/DataResult; method_46626 a method_46626 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; owner a method_46628 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/RegistryOps$RegistryInfo;)Ljava/util/Optional; method_46629 a method_46629 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46630 a method_46630 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; method_46631 a method_46631 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/core/HolderLookup$Provider;)Lcom/mojang/serialization/Dynamic; injectRegistryContext a method_56622 + p 0 dynamic + p 1 registries + m (Lcom/mojang/serialization/DynamicOps;)Lnet/minecraft/resources/RegistryOps; withParent a method_57110 + p 1 ops + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)Lnet/minecraft/resources/RegistryOps; create a method_40414 + p 0 delegate + p 1 lookupProvider + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/resources/RegistryOps; create a method_46632 + p 0 delegate + p 1 registries + m (Ljava/lang/Object;)Lnet/minecraft/core/Holder$Reference; method_46633 a method_46633 + m ()Ljava/lang/String; method_49415 b method_49415 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; getter b method_46634 + p 1 registryKey + m (Ljava/lang/Object;)Lnet/minecraft/core/HolderGetter; method_46635 b method_46635 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; retrieveGetter c method_46636 + p 0 registryOps + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; retrieveElement d method_46637 + p 0 key + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46638 e method_46638 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49416 f method_49416 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_46639 g method_46639 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_49417 h method_49417 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V + p 1 delegate + p 2 lookupProvider +c net/minecraft/resources/RegistryOps$HolderLookupAdapter akp$a net/minecraft/class_6903$class_9683 + f Lnet/minecraft/core/HolderLookup$Provider; lookupProvider a field_51501 + f Ljava/util/Map; lookups b field_51502 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; createLookup b method_59855 + p 1 registryKey + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 lookupProvider +c net/minecraft/resources/RegistryOps$RegistryInfo akp$b net/minecraft/class_6903$class_7862 + f Lnet/minecraft/core/HolderOwner; owner a comp_1130 + f Lnet/minecraft/core/HolderGetter; getter b comp_1131 + f Lcom/mojang/serialization/Lifecycle; elementsLifecycle c comp_1132 + m ()Lnet/minecraft/core/HolderOwner; owner a comp_1130 + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/resources/RegistryOps$RegistryInfo; fromRegistryLookup a method_57074 + p 0 registryLookup + m ()Lnet/minecraft/core/HolderGetter; getter b comp_1131 + m ()Lcom/mojang/serialization/Lifecycle; elementsLifecycle c comp_1132 + m (Lnet/minecraft/core/HolderOwner;Lnet/minecraft/core/HolderGetter;Lcom/mojang/serialization/Lifecycle;)V +c net/minecraft/resources/RegistryOps$RegistryInfoLookup akp$c net/minecraft/class_6903$class_7863 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; lookup a method_46623 + p 1 registryKey +c net/minecraft/resources/ResourceKey akq net/minecraft/class_5321 + c An immutable key for a resource, in terms of the name of its parent registry and its location in that registry.\n

\n{@link net.minecraft.core.Registry} uses this to return resource keys for registry objects via {@link net.minecraft.core.Registry#getResourceKey(Object)}. It also uses this class to store its name, with the parent registry name set to {@code minecraft:root}. When used in this way it is usually referred to as a "registry key".

\n

\n@param The type of the resource represented by this {@code ResourceKey}, or the type of the registry if it is a registry key.\n@see net.minecraft.resources.ResourceLocation + f Ljava/util/concurrent/ConcurrentMap; VALUES a field_25136 + f Lnet/minecraft/resources/ResourceLocation; registryName b field_25137 + c The name of the parent registry of the resource. + f Lnet/minecraft/resources/ResourceLocation; location c field_25138 + c The location of the resource within the registry. + m ()Lnet/minecraft/resources/ResourceLocation; location a method_29177 + m (Lnet/minecraft/resources/ResourceKey$InternKey;)Lnet/minecraft/resources/ResourceKey; method_29182 a method_29182 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_39154 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; create a method_29179 + c Constructs a new {@code ResourceKey} for a resource with the specified {@code location} within the registry specified by the given {@code registryKey}.\n\n@return the created resource key. The registry name is set to the location of the specified {@code registryKey} and with the specified {@code location} as the location of the resource. + p 0 registryKey + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; createRegistryKey a method_29180 + c @return the created registry key. The registry name is set to {@code minecraft:root} and the location the specified {@code registryName}. + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; create a method_29181 + p 0 registryName + p 1 location + m ()Lnet/minecraft/resources/ResourceLocation; registry b method_41185 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56038 + p 0 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_56039 b method_56039 + m ()Lnet/minecraft/resources/ResourceKey; registryKey c method_58273 + m (Lnet/minecraft/resources/ResourceKey;)Z isFor c method_31163 + c @return {@code true} if this resource key is a direct child of the specified {@code registryKey}. + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_39155 c method_39155 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast d method_39752 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 registryName + p 2 location + m ()V +c net/minecraft/resources/ResourceKey$InternKey akq$a net/minecraft/class_5321$class_7892 + f Lnet/minecraft/resources/ResourceLocation; registry a comp_1149 + f Lnet/minecraft/resources/ResourceLocation; location b comp_1150 + m ()Lnet/minecraft/resources/ResourceLocation; registry a comp_1149 + m ()Lnet/minecraft/resources/ResourceLocation; location b comp_1150 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/resources/ResourceLocation akr net/minecraft/class_2960 + c An immutable location of a resource, in terms of a path and namespace.\n

\nThis is used as an identifier for a resource, usually for those housed in a {@link net.minecraft.core.Registry}, such as blocks and items.\n

\n{@code minecraft} is always taken as the default namespace for a resource location when none is explicitly stated. When using this for registering objects, this namespace should only be used for resources added by Minecraft itself.\n

\nGenerally, and by the implementation of {@link #toString()}, the string representation of this class is expressed in the form {@code namespace:path}. The colon is also used as the default separator for parsing strings as a {@code ResourceLocation}.\n@see net.minecraft.resources.ResourceKey + f Lcom/mojang/serialization/Codec; CODEC a field_25139 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48267 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID c field_13354 + f C NAMESPACE_SEPARATOR d field_33380 + f Ljava/lang/String; DEFAULT_NAMESPACE e field_33381 + f Ljava/lang/String; REALMS_NAMESPACE f field_33382 + f Z $assertionsDisabled g field_52202 + f Ljava/lang/String; namespace h field_13353 + f Ljava/lang/String; path i field_13355 + m ()Ljava/lang/String; getPath a method_12832 + m (C)Z isAllowedInResourceLocation a method_12831 + p 0 character + m (Lnet/minecraft/resources/ResourceLocation;)I compareTo a method_12833 + p 1 other + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; read a method_12835 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; parse a method_60654 + p 0 location + m (Ljava/lang/String;C)Lnet/minecraft/resources/ResourceLocation; bySeparator a method_12838 + p 0 location + p 1 seperator + m (Ljava/lang/String;Lnet/minecraft/ResourceLocationException;)Ljava/lang/String; method_49418 a method_49418 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; fromNamespaceAndPath a method_60655 + p 0 namespace + p 1 path + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/resources/ResourceLocation; withPath a method_45134 + p 1 pathOperator + m ()Ljava/lang/String; getNamespace b method_12836 + m (C)Z validPathChar b method_29184 + p 0 pathChar + m (Lcom/mojang/brigadier/StringReader;)Lnet/minecraft/resources/ResourceLocation; readNonEmpty b method_58274 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withDefaultNamespace b method_60656 + p 0 location + m (Ljava/lang/String;C)Lnet/minecraft/resources/ResourceLocation; tryBySeparator b method_60935 + p 0 location + p 1 seperator + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; tryBuild b method_43902 + p 0 namespace + p 1 path + m ()Ljava/lang/String; toDebugFileName c method_36181 + m (C)Z validNamespaceChar c method_29185 + p 0 namespaceChar + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/String; readGreedy c method_58275 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; tryParse c method_12829 + c Attempts to parse the specified {@code location} as a {@code ResourceLocation} by splitting it into a\nnamespace and path by a colon.\n

\nIf no colon is present in the {@code location}, the namespace defaults to {@code minecraft}, taking the {@code location} as the path.\n@return the parsed resource location; otherwise {@code null} if there is a non {@code [a-z0-9_.-]} character in the decomposed namespace or a non {@code [a-z0-9/._-]} character in the decomposed path\n@see #of(String, char) + p 0 location + c the location string to try to parse as a {@code ResourceLocation} + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; toLanguageKey c method_48747 + p 1 type + p 2 key + m ()Ljava/lang/String; toLanguageKey d method_42094 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; read d method_29186 + p 0 location + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; createUntrusted d method_60936 + p 0 namespace + p 1 path + m ()Ljava/lang/String; toShortLanguageKey e method_43903 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withPath e method_45136 + p 1 path + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; assertValidNamespace e method_45135 + p 0 namespace + p 1 path + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withPrefix f method_45138 + p 1 pathPrefix + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; assertValidPath f method_45137 + p 0 namespace + p 1 path + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; withSuffix g method_48331 + p 1 pathSuffix + m (Ljava/lang/String;)Ljava/lang/String; toLanguageKey h method_42093 + p 1 type + m (Ljava/lang/String;)Z isValidPath i method_20208 + c @return {@code true} if the specified {@code path} is valid: consists only of {@code [a-z0-9/._-]} characters + p 0 path + m (Ljava/lang/String;)Z isValidNamespace j method_20209 + c @return {@code true} if the specified {@code namespace} is valid: consists only of {@code [a-z0-9_.-]} characters + p 0 namespace + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 namespace + p 2 path + m ()V +c net/minecraft/resources/ResourceLocation$Serializer akr$a net/minecraft/class_2960$class_2961 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/reflect/Type;Lcom/google/gson/JsonSerializationContext;)Lcom/google/gson/JsonElement; serialize a method_12839 + p 1 src + p 2 typeOfSrc + p 3 context + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/resources/ResourceLocation; deserialize a method_12840 + p 1 json + p 2 typeOfT + p 3 context + m ()V +c net/minecraft/resources/package-info aks net/minecraft/class_6324 +c net/minecraft/server/Bootstrap akt net/minecraft/class_2966 + f Ljava/io/PrintStream; STDOUT a field_13358 + f Ljava/util/concurrent/atomic/AtomicLong; bootstrapDuration b field_44781 + f Z isBootstrapped c field_13357 + c Whether the blocks, items, etc have already been registered + f Lorg/slf4j/Logger; LOGGER d field_13359 + m ()V bootStrap a method_12851 + c Registers blocks, items, stats, etc. + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_17595 a method_17595 + m (Ljava/lang/Iterable;Ljava/util/function/Function;Ljava/util/Set;)V checkTranslations a method_12848 + p 0 objects + p 1 objectToKeyFunction + p 2 translationSet + m (Ljava/lang/String;)V realStdoutPrintln a method_12847 + p 0 message + m (Ljava/util/Set;)V checkGameruleTranslations a method_27732 + p 0 translations + m (Ljava/util/function/Function;Lnet/minecraft/locale/Language;Ljava/util/Set;Ljava/lang/Object;)V method_12850 a method_12850 + m (Ljava/util/function/Supplier;)V checkBootstrapCalled a method_36235 + p 0 callSite + m ()Ljava/util/Set; getMissingTranslations b method_17597 + m (Ljava/lang/String;)V method_36236 b method_36236 + m (Ljava/util/function/Supplier;)Ljava/lang/RuntimeException; createBootstrapException b method_36237 + p 0 callSite + m ()V validate c method_17598 + m ()V wrapStreams d method_12852 + c Redirect standard streams to logger. + m ()Ljava/lang/String; method_36238 e method_36238 + m ()V + m ()V +c net/minecraft/server/Bootstrap$1 akt$1 net/minecraft/class_2966$1 + f Lnet/minecraft/locale/Language; val$language a field_24373 + f Ljava/util/Set; val$missing b field_24374 + m (Lnet/minecraft/locale/Language;Ljava/util/Set;)V +c net/minecraft/server/ChainedJsonException aku net/minecraft/class_2973 + f Ljava/util/List; entries a field_13371 + f Ljava/lang/String; message b field_13372 + m (Ljava/lang/Exception;)Lnet/minecraft/server/ChainedJsonException; forException a method_12856 + p 0 exception + m (Ljava/lang/String;)V prependJsonKey a method_12854 + p 1 key + m (Ljava/lang/String;)V setFilenameAndFlush b method_12855 + p 1 filename + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/server/ChainedJsonException$Entry aku$a net/minecraft/class_2973$class_2974 + f Ljava/lang/String; filename a field_13373 + f Ljava/util/List; jsonKeys b field_13374 + m ()Ljava/lang/String; getFilename a method_36182 + m (Ljava/lang/String;)V addJsonKey a method_12858 + p 1 key + m ()Ljava/lang/String; getJsonKeys b method_12857 + m ()V +c net/minecraft/server/ConsoleInput akv net/minecraft/class_2976 + f Ljava/lang/String; msg a field_13377 + f Lnet/minecraft/commands/CommandSourceStack; source b field_13378 + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)V + p 1 msg + p 2 source +c net/minecraft/server/DebugLoggedPrintStream akw net/minecraft/class_2980 + f Lorg/slf4j/Logger; LOGGER b field_36382 + m (Ljava/lang/String;Ljava/io/OutputStream;)V + p 1 name + p 2 out + m ()V +c net/minecraft/server/Eula akx net/minecraft/class_2981 + f Lorg/slf4j/Logger; LOGGER a field_13381 + f Ljava/nio/file/Path; file b field_13380 + f Z agreed c field_13379 + m ()Z hasAgreedToEULA a method_12866 + m ()Z readFile b method_12867 + m ()V saveDefaults c method_12868 + m (Ljava/nio/file/Path;)V + p 1 file + m ()V +c net/minecraft/server/LoggedPrintStream aky net/minecraft/class_2983 + f Ljava/lang/String; name a field_13383 + f Lorg/slf4j/Logger; LOGGER b field_13384 + m (Ljava/lang/String;)V logLine a method_12870 + p 1 string + m (Ljava/lang/String;Ljava/io/OutputStream;)V + p 1 name + p 2 out + m ()V +c net/minecraft/server/PlayerAdvancements akz net/minecraft/class_2985 + f Lorg/slf4j/Logger; LOGGER a field_13394 + f Lcom/google/gson/Gson; GSON b field_13395 + f Lnet/minecraft/server/players/PlayerList; playerList c field_25325 + f Ljava/nio/file/Path; playerSavePath d field_41734 + f Lnet/minecraft/advancements/AdvancementTree; tree e field_46073 + f Ljava/util/Map; progress f field_41735 + f Ljava/util/Set; visible g field_13390 + f Ljava/util/Set; progressChanged h field_13388 + f Ljava/util/Set; rootsToUpdate i field_41736 + f Lnet/minecraft/server/level/ServerPlayer; player j field_13391 + f Lnet/minecraft/advancements/AdvancementHolder; lastSelectedTab k field_13387 + f Z isFirstPacket l field_13396 + f Lcom/mojang/serialization/Codec; codec m field_46074 + m ()V stopListening a method_12881 + m (Lnet/minecraft/advancements/AdvancementHolder;)V setSelectedTab a method_12888 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V startProgress a method_12884 + p 1 advancement + p 2 advancementProgress + m (Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/DisplayInfo;)V method_53637 a method_53637 + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z award a method_12878 + p 1 advancement + p 2 criterionKey + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V registerListener a method_53638 + p 1 advancement + p 2 criterionKey + p 3 criterion + m (Lnet/minecraft/advancements/AdvancementNode;)Z method_48029 a method_48029 + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/Set;Ljava/util/Set;)V updateTreeVisibility a method_48025 + p 1 root + p 2 advancementOutput + p 3 idOutput + m (Lnet/minecraft/server/ServerAdvancementManager;)V reload a method_12886 + p 1 manager + m (Lnet/minecraft/server/ServerAdvancementManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/AdvancementProgress;)V method_53639 a method_53639 + m (Lnet/minecraft/server/ServerAdvancementManager;Lnet/minecraft/server/PlayerAdvancements$Data;)V applyFrom a method_53640 + p 1 advancementManager + p 2 data + m (Lnet/minecraft/server/level/ServerPlayer;)V setPlayer a method_12875 + p 1 player + m (Ljava/util/Map;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V method_53641 a method_53641 + m (Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/advancements/AdvancementNode;Z)V method_48027 a method_48027 + m ()V save b method_12890 + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/advancements/AdvancementProgress; getOrStartProgress b method_12882 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z revoke b method_12883 + p 1 advancement + p 2 criterionKey + m (Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;Lnet/minecraft/advancements/Criterion;)V removeListener b method_53642 + p 1 advancement + p 2 criterionKey + p 3 criterion + m (Lnet/minecraft/server/ServerAdvancementManager;)V registerListeners b method_12889 + p 1 manager + m (Lnet/minecraft/server/level/ServerPlayer;)V flushDirty b method_12876 + p 1 serverPlayer + m ()Lnet/minecraft/server/PlayerAdvancements$Data; asData c method_53643 + m (Lnet/minecraft/advancements/AdvancementHolder;)V markForVisibilityUpdate c method_48028 + p 1 advancement + m (Lnet/minecraft/server/ServerAdvancementManager;)V checkForAutomaticTriggers c method_12872 + p 1 manager + m (Lnet/minecraft/advancements/AdvancementHolder;)V registerListeners d method_12874 + p 1 advancement + m (Lnet/minecraft/server/ServerAdvancementManager;)V load d method_12873 + p 1 manager + m (Lnet/minecraft/advancements/AdvancementHolder;)V unregisterListeners e method_12880 + p 1 advancement + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/ServerAdvancementManager;Ljava/nio/file/Path;Lnet/minecraft/server/level/ServerPlayer;)V + p 1 dataFixer + p 2 playerList + p 3 manager + p 4 playerSavePath + p 5 player + m ()V +c net/minecraft/server/PlayerAdvancements$Data akz$a net/minecraft/class_2985$class_8780 + f Lcom/mojang/serialization/Codec; CODEC a field_46075 + f Ljava/util/Map; map b comp_1921 + m ()Ljava/util/Map; map a comp_1921 + m (Ljava/util/function/BiConsumer;)V forEach a method_53644 + p 1 action + m (Ljava/util/function/BiConsumer;Ljava/util/Map$Entry;)V method_53645 a method_53645 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/server/RegistryLayer ala net/minecraft/class_7659 + f Lnet/minecraft/server/RegistryLayer; STATIC a field_39971 + f Lnet/minecraft/server/RegistryLayer; WORLDGEN b field_39972 + f Lnet/minecraft/server/RegistryLayer; DIMENSIONS c field_39973 + f Lnet/minecraft/server/RegistryLayer; RELOADABLE d field_39974 + f Ljava/util/List; VALUES e field_39975 + f Lnet/minecraft/core/RegistryAccess$Frozen; STATIC_ACCESS f field_39976 + f [Lnet/minecraft/server/RegistryLayer; $VALUES g field_39977 + m ()Lnet/minecraft/core/LayeredRegistryAccess; createRegistryAccess a method_45139 + m ()[Lnet/minecraft/server/RegistryLayer; $values b method_45140 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/ReloadableServerRegistries alb net/minecraft/class_9383 + f Lorg/slf4j/Logger; LOGGER a field_49916 + f Lcom/google/gson/Gson; GSON b field_49917 + f Lnet/minecraft/core/RegistrationInfo; DEFAULT_REGISTRATION_INFO c field_49918 + m (Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/storage/loot/LootDataType;)Ljava/util/concurrent/CompletableFuture; method_58276 a method_58276 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; scheduleElementParse a method_58277 + p 0 lootDataType + p 1 registryOps + p 2 resourceManager + p 3 backgroundExecutor + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonElement;)V method_58278 a method_58278 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/RegistryOps;)Lnet/minecraft/core/WritableRegistry; method_58279 a method_58279 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_58280 a method_58280 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/core/RegistryAccess;)V validateRegistry a method_58281 + p 0 context + p 1 lootDataType + p 2 registryAccess + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/storage/loot/LootDataType;)V method_58282 a method_58282 + m (Ljava/lang/String;Ljava/lang/String;)V method_58283 a method_58283 + m (Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; reload a method_58284 + p 0 registries + p 1 resourceManager + p 2 backgroundExecutor + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; apply a method_58285 + p 0 registryAccess + p 1 registries + m (Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/world/level/storage/loot/LootDataType;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Object;)V method_58286 a method_58286 + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; createUpdatedRegistries b method_58287 + p 0 registryAccess + p 1 registries + m (Lnet/minecraft/core/LayeredRegistryAccess;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; method_58288 c method_58288 + m ()V + m ()V +c net/minecraft/server/ReloadableServerRegistries$EmptyTagLookupWrapper alb$a net/minecraft/class_9383$class_9384 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_49919 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/server/ReloadableServerRegistries$Holder alb$b net/minecraft/class_9383$class_9385 + f Lnet/minecraft/core/RegistryAccess$Frozen; registries a field_49920 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; get a method_58289 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Collection; getKeys a method_58290 + p 1 registryKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Ljava/util/Optional; method_58291 a method_58291 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/resources/ResourceLocation; method_58292 a method_58292 + m (Lnet/minecraft/core/Registry;)Ljava/util/stream/Stream; method_58293 a method_58293 + m ()Lnet/minecraft/core/HolderGetter$Provider; lookup b method_58294 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/LootTable; getLootTable b method_58295 + p 1 lootTableKey + m (Lnet/minecraft/core/RegistryAccess$Frozen;)V + p 1 registries +c net/minecraft/server/ReloadableServerResources alc net/minecraft/class_5350 + f Lorg/slf4j/Logger; LOGGER a field_36491 + f Ljava/util/concurrent/CompletableFuture; DATA_RELOAD_INITIAL_TASK b field_25334 + f Lnet/minecraft/server/ReloadableServerRegistries$Holder; fullRegistryHolder c field_49921 + f Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup; registryLookup d field_48785 + f Lnet/minecraft/commands/Commands; commands e field_25336 + f Lnet/minecraft/world/item/crafting/RecipeManager; recipes f field_25337 + f Lnet/minecraft/tags/TagManager; tagManager g field_25338 + f Lnet/minecraft/server/ServerAdvancementManager; advancements h field_25341 + f Lnet/minecraft/server/ServerFunctionLibrary; functionLibrary i field_25342 + m ()Lnet/minecraft/server/ServerFunctionLibrary; getFunctionLibrary a method_29465 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map$Entry;)Lnet/minecraft/tags/TagKey; method_40424 a method_40424 + m (Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Object;)Lnet/minecraft/server/ReloadableServerResources; method_40425 a method_40425 + m (Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Object;Ljava/lang/Throwable;)V method_42095 a method_42095 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;ILjava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadResources a method_29466 + p 0 resourceManager + p 1 registries + p 2 enabledFeatures + p 3 commandSelection + p 4 functionCompilationLevel + p 5 backgroundExecutor + p 6 gameExecutor + m (Lnet/minecraft/tags/TagManager$LoadResult;)V method_40426 a method_40426 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;ILnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/concurrent/CompletionStage; method_58296 a method_58296 + m (Ljava/util/Map$Entry;)Ljava/util/List; method_40423 a method_40423 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/tags/TagManager$LoadResult;)V updateRegistryTags a method_40422 + p 0 registryAccess + p 1 loadResult + m ()Lnet/minecraft/server/ReloadableServerRegistries$Holder; fullRegistries b method_58297 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager c method_29471 + m ()Lnet/minecraft/commands/Commands; getCommands d method_29472 + m ()Lnet/minecraft/server/ServerAdvancementManager; getAdvancements e method_29473 + m ()Ljava/util/List; listeners f method_40427 + m ()V updateRegistryTags g method_40421 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/commands/Commands$CommandSelection;I)V + p 1 registryAccess + p 2 enabledFeatures + p 3 commandSelection + p 4 functionCompilationLevel + m ()V +c net/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup alc$a net/minecraft/class_5350$class_9180 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_48786 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; missingTagAccessPolicy b field_40912 + m (Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy;)V missingTagAccessPolicy a method_46724 + p 1 missingTagAccessPolicy + m (Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/core/HolderLookup$RegistryLookup; createDispatchedLookup a method_56623 + p 1 lookup + p 2 tagAddingLookup + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/HolderLookup$RegistryLookup; method_56624 a method_56624 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup$1 alc$a$1 net/minecraft/class_5350$class_9180$1 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$originalLookup a field_40913 + f Lnet/minecraft/core/HolderLookup$RegistryLookup; val$originalTagAddingLookup b field_40914 + f Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup; field_40915 c field_40915 + m (Lnet/minecraft/server/ReloadableServerResources$ConfigurableRegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V +c net/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy alc$b net/minecraft/class_5350$class_7158 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; CREATE_NEW a field_37824 + f Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; FAIL b field_37826 + f [Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; $VALUES c field_37827 + m ()[Lnet/minecraft/server/ReloadableServerResources$MissingTagAccessPolicy; $values a method_41701 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/RunningOnDifferentThreadException ald net/minecraft/class_2987 + f Lnet/minecraft/server/RunningOnDifferentThreadException; RUNNING_ON_DIFFERENT_THREAD a field_13400 + m ()V + m ()V +c net/minecraft/server/ServerAdvancementManager ale net/minecraft/class_2989 + f Lorg/slf4j/Logger; LOGGER a field_13406 + f Lcom/google/gson/Gson; GSON b field_13405 + f Ljava/util/Map; advancements c field_13404 + f Lnet/minecraft/advancements/AdvancementTree; tree d field_46076 + f Lnet/minecraft/core/HolderLookup$Provider; registries e field_48787 + m ()Lnet/minecraft/advancements/AdvancementTree; tree a method_53646 + m (Lnet/minecraft/resources/RegistryOps;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonElement;)V method_20723 a method_20723 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; get a method_12896 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/advancements/Advancement;)V validate a method_54921 + p 1 location + p 2 advancement + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V method_54922 a method_54922 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_20724 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/util/Collection; getAllAdvancements b method_12893 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/server/ServerFunctionLibrary alf net/minecraft/class_5349 + f Lnet/minecraft/resources/ResourceKey; TYPE_KEY a field_51976 + f Lorg/slf4j/Logger; LOGGER b field_25326 + f Lnet/minecraft/resources/FileToIdConverter; LISTER c field_39978 + f Ljava/util/Map; functions d field_25329 + f Lnet/minecraft/tags/TagLoader; tagsLoader e field_25330 + f Ljava/util/Map; tags f field_25801 + f I functionCompilationLevel g field_25331 + f Lcom/mojang/brigadier/CommandDispatcher; dispatcher h field_25332 + m ()Ljava/util/Map; getFunctions a method_29447 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getFunction a method_29456 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/commands/functions/CommandFunction;Ljava/lang/Throwable;)Ljava/lang/Object; method_29457 a method_29457 + m (Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/List; readLines a method_29450 + p 0 resource + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45141 a method_45141 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/CompletableFuture;)V method_29452 a method_29452 + m (Lcom/mojang/datafixers/util/Pair;)V method_29453 a method_29453 + m (Ljava/util/Map$Entry;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/functions/CommandFunction; method_29451 a method_29451 + m (Ljava/util/Map;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/util/Map; method_29455 a method_29455 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_29449 a method_29449 + m ()Ljava/lang/Iterable; getAvailableTags b method_29458 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getTag b method_29459 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_33324 b method_33324 + m (ILcom/mojang/brigadier/CommandDispatcher;)V + p 1 functionCompilationLevel + p 2 dispatcher + m ()V +c net/minecraft/server/ServerFunctionManager alg net/minecraft/class_2991 + f Lorg/slf4j/Logger; LOGGER a field_47181 + f Lnet/minecraft/resources/ResourceLocation; TICK_FUNCTION_TAG b field_13417 + f Lnet/minecraft/resources/ResourceLocation; LOAD_FUNCTION_TAG c field_13412 + f Lnet/minecraft/server/MinecraftServer; server d field_13419 + f Ljava/util/List; ticking e field_13418 + f Z postReload f field_13422 + f Lnet/minecraft/server/ServerFunctionLibrary; library g field_25333 + m ()Lcom/mojang/brigadier/CommandDispatcher; getDispatcher a method_12900 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; get a method_12905 + p 1 functionIdentifier + m (Lnet/minecraft/server/ServerFunctionLibrary;)V replaceLibrary a method_29461 + p 1 reloader + m (Lnet/minecraft/commands/functions/CommandFunction;)Ljava/lang/String; method_54251 a method_54251 + m (Lnet/minecraft/commands/functions/CommandFunction;Lnet/minecraft/commands/CommandSourceStack;)V execute a method_12904 + p 1 function + p 2 source + m (Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;)V method_54252 a method_54252 + m (Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;)V executeTagFunctions a method_29460 + p 1 functionObjects + p 2 identifier + m ()V tick b method_18699 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; getTag b method_29462 + p 1 functionTagIdentifier + m (Lnet/minecraft/server/ServerFunctionLibrary;)V postReload b method_29773 + p 1 reloader + m ()Lnet/minecraft/commands/CommandSourceStack; getGameLoopSender c method_12899 + m ()Ljava/lang/Iterable; getFunctionNames d method_29463 + m ()Ljava/lang/Iterable; getTagNames e method_29464 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/ServerFunctionLibrary;)V + p 1 server + p 2 library + m ()V +c net/minecraft/server/ServerInfo alh net/minecraft/class_8599 + m ()Ljava/lang/String; getServerVersion L method_3827 + m ()I getPlayerCount M method_3788 + m ()I getMaxPlayers N method_3802 + m ()Ljava/lang/String; getMotd af method_3818 +c net/minecraft/server/ServerInterface ali net/minecraft/class_2994 + m ()[Ljava/lang/String; getPlayerNames O method_3858 + c Returns an array of the usernames of all the connected players. + m ()Lnet/minecraft/server/dedicated/DedicatedServerProperties; getProperties a method_16705 + m (Ljava/lang/String;)Ljava/lang/String; runCommand a method_12934 + c Handle a command received by an RCon instance + p 1 command + m ()Ljava/lang/String; getServerIp b method_12929 + c Returns the server's hostname. + m ()I getServerPort d method_12918 + c Never used, but "getServerPort" is already taken. + m ()Ljava/lang/String; getServerName h method_12930 + c Returns the server message of the day + m ()Ljava/lang/String; getLevelIdName s method_3865 + m ()Ljava/lang/String; getPluginNames u method_12916 + c Used by RCon's Query in the form of "MajorServerMod 1.2.3: MyPlugin 1.3" AnotherPlugin 2.1" AndSoForth 1.0". +c net/minecraft/server/ServerLinks alj net/minecraft/class_9782 + f Lnet/minecraft/server/ServerLinks; EMPTY a field_51977 + f Lnet/minecraft/network/codec/StreamCodec; TYPE_STREAM_CODEC b field_52203 + f Lnet/minecraft/network/codec/StreamCodec; UNTRUSTED_LINKS_STREAM_CODEC c field_52204 + f Ljava/util/List; entries d comp_2826 + m ()Z isEmpty a method_60657 + m (Lnet/minecraft/server/ServerLinks$Entry;)Lnet/minecraft/server/ServerLinks$UntrustedEntry; method_60937 a method_60937 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)Ljava/util/Optional; findKnownType a method_60658 + p 1 type + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Lnet/minecraft/server/ServerLinks$Entry;)Z method_60659 a method_60659 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Lnet/minecraft/server/ServerLinks$KnownLinkType;)Ljava/lang/Boolean; method_60660 a method_60660 + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/Boolean; method_60661 a method_60661 + m ()Ljava/util/List; untrust b method_60938 + m ()Ljava/util/List; entries c comp_2826 + m (Ljava/util/List;)V + m ()V +c net/minecraft/server/ServerLinks$Entry alj$a net/minecraft/class_9782$class_9783 + f Lcom/mojang/datafixers/util/Either; type a comp_2827 + f Ljava/net/URI; link b comp_2828 + m ()Lnet/minecraft/network/chat/Component; displayName a method_60662 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; knownType a method_60663 + p 0 type + p 1 link + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_60664 a method_60664 + m (Lnet/minecraft/network/chat/Component;Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; custom a method_60665 + p 0 type + p 1 link + m ()Lcom/mojang/datafixers/util/Either; type b comp_2827 + m ()Ljava/net/URI; link c comp_2828 + m (Lcom/mojang/datafixers/util/Either;Ljava/net/URI;)V +c net/minecraft/server/ServerLinks$KnownLinkType alj$b net/minecraft/class_9782$class_9784 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; BUG_REPORT a field_51981 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; COMMUNITY_GUIDELINES b field_52205 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; SUPPORT c field_52206 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; STATUS d field_52207 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; FEEDBACK e field_52208 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; COMMUNITY f field_52209 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; WEBSITE g field_52210 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; FORUMS h field_52211 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; NEWS i field_52212 + f Lnet/minecraft/server/ServerLinks$KnownLinkType; ANNOUNCEMENTS j field_52213 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC k field_51982 + f Ljava/util/function/IntFunction; BY_ID l field_51983 + f I id m field_51984 + f Ljava/lang/String; name n field_51985 + f [Lnet/minecraft/server/ServerLinks$KnownLinkType; $VALUES o field_51986 + m ()Lnet/minecraft/network/chat/Component; displayName a method_60666 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)I method_60667 a method_60667 + m (Ljava/net/URI;)Lnet/minecraft/server/ServerLinks$Entry; create a method_60668 + p 1 uri + m ()[Lnet/minecraft/server/ServerLinks$KnownLinkType; $values b method_60669 + m (Lnet/minecraft/server/ServerLinks$KnownLinkType;)I method_60670 b method_60670 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/server/ServerLinks$UntrustedEntry alj$c net/minecraft/class_9782$class_9816 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_52214 + f Lcom/mojang/datafixers/util/Either; type b comp_2860 + f Ljava/lang/String; link c comp_2861 + m ()Lcom/mojang/datafixers/util/Either; type a comp_2860 + m ()Ljava/lang/String; link b comp_2861 + m (Lcom/mojang/datafixers/util/Either;Ljava/lang/String;)V + m ()V +c net/minecraft/server/ServerScoreboard alk net/minecraft/class_2995 + f Lnet/minecraft/server/MinecraftServer; server b field_13428 + f Ljava/util/Set; trackedObjectives c field_13427 + f Ljava/util/List; dirtyListeners d field_13426 + m ()V setDirty a method_12941 + m (Ljava/lang/Runnable;)V addDirtyListener a method_12935 + p 1 runnable + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/ScoreboardSaveData; createData a method_32704 + p 1 tag + p 2 registries + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; dataFactory b method_52297 + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/List; getStartTrackingPackets d method_12937 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V startTrackingObjective e method_12939 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/List; getStopTrackingPackets f method_12940 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V stopTrackingObjective g method_12938 + p 1 objective + m ()Lnet/minecraft/world/scores/ScoreboardSaveData; createData h method_32705 + m (Lnet/minecraft/world/scores/Objective;)I getObjectiveDisplaySlotCount h method_12936 + p 1 objective + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/ServerScoreboard$Method alk$a net/minecraft/class_2995$class_2996 + f Lnet/minecraft/server/ServerScoreboard$Method; CHANGE a field_13431 + f Lnet/minecraft/server/ServerScoreboard$Method; REMOVE b field_13430 + f [Lnet/minecraft/server/ServerScoreboard$Method; $VALUES c field_13429 + m ()[Lnet/minecraft/server/ServerScoreboard$Method; $values a method_36963 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/ServerTickRateManager all net/minecraft/class_8915 + f J remainingSprintTicks g field_46919 + f J sprintTickStartTime h field_46920 + f J sprintTimeSpend i field_46921 + f J scheduledCurrentSprintTicks j field_46922 + f Z previousIsFrozen k field_46923 + f Lnet/minecraft/server/MinecraftServer; server l field_46924 + m ()Z isSprinting a method_54670 + m (I)Z stepGameIfPaused a method_54672 + p 1 ticks + m (ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_54673 a method_54673 + m (Lnet/minecraft/server/level/ServerPlayer;)V updateJoiningPlayer a method_54674 + p 1 player + m ()Z stopStepping b method_54676 + m (I)Z requestGameToSprint b method_54677 + p 1 sprintTime + m ()Z stopSprinting c method_54678 + m ()Z checkShouldSprintThisTick d method_54679 + m ()V endTickWork e method_54680 + m ()V updateStateToClients n method_54681 + m ()V updateStepTicks o method_54682 + m ()V finishTickSprint p method_54683 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/Services alm net/minecraft/class_7497 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService a comp_837 + f Lcom/mojang/authlib/yggdrasil/ServicesKeySet; servicesKeySet b comp_838 + f Lcom/mojang/authlib/GameProfileRepository; profileRepository c comp_839 + f Lnet/minecraft/server/players/GameProfileCache; profileCache d comp_840 + f Ljava/lang/String; USERID_CACHE_FILE e field_39392 + m ()Lnet/minecraft/util/SignatureValidator; profileKeySignatureValidator a method_51467 + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Ljava/io/File;)Lnet/minecraft/server/Services; create a method_44143 + p 0 authenticationService + p 1 profileRepository + m ()Z canValidateProfileKeys b method_55595 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService c comp_837 + m ()Lcom/mojang/authlib/yggdrasil/ServicesKeySet; servicesKeySet d comp_838 + m ()Lcom/mojang/authlib/GameProfileRepository; profileRepository e comp_839 + m ()Lnet/minecraft/server/players/GameProfileCache; profileCache f comp_840 + m (Lcom/mojang/authlib/minecraft/MinecraftSessionService;Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/GameProfileRepository;Lnet/minecraft/server/players/GameProfileCache;)V +c net/minecraft/server/TickTask aln net/minecraft/class_3738 + f I tick a field_16504 + f Ljava/lang/Runnable; runnable b field_16505 + m ()I getTick a method_16338 + c Get the server time when this task was scheduled + m (ILjava/lang/Runnable;)V + p 1 tick + p 2 runnable +c net/minecraft/server/WorldLoader alo net/minecraft/class_7237 + f Lorg/slf4j/Logger; LOGGER a field_39979 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lnet/minecraft/server/WorldLoader$WorldDataSupplier;Lnet/minecraft/server/WorldLoader$ResultFactory;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; load a method_42098 + p 0 initConfig + p 1 worldDataSupplier + p 2 resultFactory + p 3 backgroundExecutor + p 4 gameExecutor + m (Lnet/minecraft/server/WorldLoader$ResultFactory;Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/WorldLoader$DataLoadOutput;Lnet/minecraft/server/ReloadableServerResources;)Ljava/lang/Object; method_42097 a method_42097 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Throwable;)V method_42096 a method_42096 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/RegistryLayer;Ljava/util/List;)Lnet/minecraft/core/RegistryAccess$Frozen; loadLayer a method_45142 + p 0 resourceManager + p 1 registryAccess + p 2 registryLayer + p 3 registryData + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/RegistryLayer;Ljava/util/List;)Lnet/minecraft/core/LayeredRegistryAccess; loadAndReplaceLayer b method_45143 + p 0 resourceManager + p 1 registryAccess + p 2 registryLayer + p 3 registryData + m ()V + m ()V +c net/minecraft/server/WorldLoader$DataLoadContext alo$a net/minecraft/class_7237$class_7660 + f Lnet/minecraft/server/packs/resources/ResourceManager; resources a comp_987 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_988 + f Lnet/minecraft/core/RegistryAccess$Frozen; datapackWorldgen c comp_989 + f Lnet/minecraft/core/RegistryAccess$Frozen; datapackDimensions d comp_990 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; resources a comp_987 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_988 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; datapackWorldgen c comp_989 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; datapackDimensions d comp_990 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/world/level/WorldDataConfiguration;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/core/RegistryAccess$Frozen;)V +c net/minecraft/server/WorldLoader$DataLoadOutput alo$b net/minecraft/class_7237$class_7661 + f Ljava/lang/Object; cookie a comp_991 + f Lnet/minecraft/core/RegistryAccess$Frozen; finalDimensions b comp_992 + m ()Ljava/lang/Object; cookie a comp_991 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; finalDimensions b comp_992 + m (Ljava/lang/Object;Lnet/minecraft/core/RegistryAccess$Frozen;)V +c net/minecraft/server/WorldLoader$InitConfig alo$c net/minecraft/class_7237$class_6906 + f Lnet/minecraft/server/WorldLoader$PackConfig; packConfig a comp_634 + f Lnet/minecraft/commands/Commands$CommandSelection; commandSelection b comp_361 + f I functionCompilationLevel c comp_362 + m ()Lnet/minecraft/server/WorldLoader$PackConfig; packConfig a comp_634 + m ()Lnet/minecraft/commands/Commands$CommandSelection; commandSelection b comp_361 + m ()I functionCompilationLevel c comp_362 + m (Lnet/minecraft/server/WorldLoader$PackConfig;Lnet/minecraft/commands/Commands$CommandSelection;I)V +c net/minecraft/server/WorldLoader$PackConfig alo$d net/minecraft/class_7237$class_7238 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository a comp_635 + f Lnet/minecraft/world/level/WorldDataConfiguration; initialDataConfig b comp_636 + f Z safeMode c comp_637 + f Z initMode d comp_993 + m ()Lcom/mojang/datafixers/util/Pair; createResourceManager a method_42099 + m ()Lnet/minecraft/server/packs/repository/PackRepository; packRepository b comp_635 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; initialDataConfig c comp_636 + m ()Z safeMode d comp_637 + m ()Z initMode e comp_993 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;ZZ)V +c net/minecraft/server/WorldLoader$ResultFactory alo$e net/minecraft/class_7237$class_7239 +c net/minecraft/server/WorldLoader$WorldDataSupplier alo$f net/minecraft/class_7237$class_6907 +c net/minecraft/server/WorldStem alp net/minecraft/class_6904 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_356 + f Lnet/minecraft/server/ReloadableServerResources; dataPackResources b comp_357 + f Lnet/minecraft/core/LayeredRegistryAccess; registries c comp_358 + f Lnet/minecraft/world/level/storage/WorldData; worldData d comp_359 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_356 + m ()Lnet/minecraft/server/ReloadableServerResources; dataPackResources b comp_357 + m ()Lnet/minecraft/core/LayeredRegistryAccess; registries c comp_358 + m ()Lnet/minecraft/world/level/storage/WorldData; worldData d comp_359 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator alq net/minecraft/class_8005 + f I VISIBILITY_DEPTH a field_41737 + m (Lnet/minecraft/advancements/Advancement;Z)Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; evaluateVisibilityRule a method_48032 + p 0 advancement + p 1 alwaysShow + m (Lnet/minecraft/advancements/AdvancementNode;Lit/unimi/dsi/fastutil/Stack;Ljava/util/function/Predicate;Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output;)Z evaluateVisibility a method_48030 + p 0 advancement + p 1 visibilityRules + p 2 predicate + p 3 output + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/function/Predicate;Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output;)V evaluateVisibility a method_48031 + p 0 advancement + p 1 predicate + p 2 output + m (Lit/unimi/dsi/fastutil/Stack;)Z evaluateVisiblityForUnfinishedNode a method_48033 + p 0 visibilityRules + m ()V +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator$Output alq$a net/minecraft/class_8005$class_8006 +c net/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule alq$b net/minecraft/class_8005$class_8007 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; SHOW a field_41738 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; HIDE b field_41739 + f Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; NO_CHANGE c field_41740 + f [Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; $VALUES d field_41741 + m ()[Lnet/minecraft/server/advancements/AdvancementVisibilityEvaluator$VisibilityRule; $values a method_48034 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/advancements/package-info alr net/minecraft/class_8008 +c net/minecraft/server/bossevents/CustomBossEvent als net/minecraft/class_3002 + f Lnet/minecraft/resources/ResourceLocation; id h field_13441 + f Ljava/util/Set; players i field_13440 + f I value j field_13443 + f I max k field_13442 + m ()Lnet/minecraft/resources/ResourceLocation; getTextId a method_12959 + m (I)V setValue a method_12954 + p 1 value + m (Ljava/util/Collection;)Z setPlayers a method_12962 + p 1 serverPlayerList + m (Ljava/util/UUID;)V addOfflinePlayer a method_12964 + p 1 player + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_12963 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/server/bossevents/CustomBossEvent; load a method_12966 + p 0 tag + p 1 id + p 2 levelRegistry + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_12958 a method_12958 + m (I)V setMax b method_12956 + p 1 max + m ()I getValue c method_12955 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerConnect c method_12957 + p 1 player + m ()I getMax d method_12960 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerDisconnect d method_12961 + p 1 player + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_12965 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)V + p 1 id + p 2 name +c net/minecraft/server/bossevents/CustomBossEvents alt net/minecraft/class_3004 + f Ljava/util/Map; events a field_13447 + m ()Ljava/util/Collection; getIds a method_12968 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/bossevents/CustomBossEvent; get a method_12971 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/bossevents/CustomBossEvent; create a method_12970 + p 1 id + p 2 name + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)V remove a method_12973 + p 1 bossbar + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerConnect a method_12975 + p 1 player + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_12974 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V load a method_12972 + p 1 tag + p 2 levelRegistry + m ()Ljava/util/Collection; getEvents b method_12969 + m (Lnet/minecraft/server/level/ServerPlayer;)V onPlayerDisconnect b method_12976 + p 1 player + m ()V +c net/minecraft/server/bossevents/package-info alu net/minecraft/class_6325 +c net/minecraft/server/chase/ChaseClient alv net/minecraft/class_6630 + f Lorg/slf4j/Logger; LOGGER a field_34983 + f I RECONNECT_INTERVAL_SECONDS b field_34984 + f Ljava/lang/String; serverHost c field_34985 + f I serverPort d field_34986 + f Lnet/minecraft/server/MinecraftServer; server e field_34987 + f Z wantsToRun f field_34988 + f Ljava/net/Socket; socket g field_34989 + f Ljava/lang/Thread; thread h field_34990 + m ()V start a method_38755 + m (Lnet/minecraft/server/chase/ChaseClient$TeleportTarget;)V method_38758 a method_38758 + m (Ljava/lang/String;)V handleMessage a method_38756 + p 1 message + m (Ljava/util/Scanner;)V handleTeleport a method_38757 + p 1 scanner + m ()V stop b method_38759 + m (Ljava/lang/String;)V executeCommand b method_38760 + p 1 command + m (Ljava/util/Scanner;)Ljava/util/Optional; parseTarget b method_38761 + p 1 scanner + m ()V run c method_38762 + m (Ljava/lang/String;)V method_38763 c method_38763 + m (Ljava/lang/String;ILnet/minecraft/server/MinecraftServer;)V + p 1 serverHost + p 2 serverPort + p 3 server + m ()V +c net/minecraft/server/chase/ChaseClient$TeleportTarget alv$a net/minecraft/class_6630$class_6631 + f Lnet/minecraft/resources/ResourceKey; level a comp_138 + f Lnet/minecraft/world/phys/Vec3; pos b comp_139 + f Lnet/minecraft/world/phys/Vec2; rot c comp_140 + m ()Lnet/minecraft/resources/ResourceKey; level a comp_138 + m ()Lnet/minecraft/world/phys/Vec3; pos b comp_139 + m ()Lnet/minecraft/world/phys/Vec2; rot c comp_140 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec2;)V +c net/minecraft/server/chase/ChaseServer alw net/minecraft/class_6632 + f Lorg/slf4j/Logger; LOGGER a field_34991 + f Ljava/lang/String; serverBindAddress b field_34992 + f I serverPort c field_34993 + f Lnet/minecraft/server/players/PlayerList; playerList d field_34994 + f I broadcastIntervalMs e field_34995 + f Z wantsToRun f field_34996 + f Ljava/net/ServerSocket; serverSocket g field_34997 + f Ljava/util/concurrent/CopyOnWriteArrayList; clientSockets h field_34998 + m ()V start a method_38764 + m (Ljava/net/Socket;[B)V method_38765 a method_38765 + m ()V stop b method_38766 + m ()V runSender c method_38767 + m ()V runAcceptor d method_38768 + m ()Lnet/minecraft/server/chase/ChaseServer$PlayerPosition; getPlayerPosition e method_38959 + m (Ljava/lang/String;ILnet/minecraft/server/players/PlayerList;I)V + p 1 serverBindAddress + p 2 serverPort + p 3 playerList + p 4 broadcastIntervalMs + m ()V +c net/minecraft/server/chase/ChaseServer$PlayerPosition alw$a net/minecraft/class_6632$class_6668 + f Ljava/lang/String; dimensionName a comp_160 + f D x b comp_161 + f D y c comp_162 + f D z d comp_163 + f F yRot e comp_164 + f F xRot f comp_165 + m ()Ljava/lang/String; dimensionName a comp_160 + m ()D x b comp_161 + m ()D y c comp_162 + m ()D z d comp_163 + m ()F yRot e comp_164 + m ()F xRot f comp_165 + m ()Ljava/lang/String; format g method_38960 + m (Ljava/lang/String;DDDFF)V +c net/minecraft/server/chase/package-info alx net/minecraft/class_6633 +c net/minecraft/server/commands/AdvancementCommands aly net/minecraft/class_3008 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_ACTION_PERFORMED a field_47182 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_CRITERION_NOT_FOUND b field_47183 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_ADVANCEMENTS c field_13453 + m (Lnet/minecraft/advancements/AdvancementNode;Ljava/util/List;)V addChildren a method_12990 + p 0 node + p 1 output + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/lang/String;Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51895 a method_51895 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51896 a method_51896 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_12980 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12995 a method_12995 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/server/commands/AdvancementCommands$Mode;)Ljava/util/List; getAdvancements a method_12996 + p 0 context + p 1 advancement + p 2 mode + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12992 a method_12992 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_12984 a method_12984 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/commands/AdvancementCommands$Action;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)I performCriterion a method_12981 + p 0 source + p 1 targets + p 2 action + p 3 advancement + p 4 criterionName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;)I perform a method_12988 + c Performs the given action on each advancement in the list, for each player.\n\n@return The number of affected advancements across all players. + p 0 source + p 1 targets + p 2 action + p 3 advancements + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54923 a method_54923 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54924 a method_54924 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/lang/String;Lnet/minecraft/advancements/AdvancementHolder;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51897 b method_51897 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51898 b method_51898 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12978 b method_12978 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12991 b method_12991 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51899 c method_51899 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12983 c method_12983 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_12987 c method_12987 + m (Lnet/minecraft/server/commands/AdvancementCommands$Action;Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51900 d method_51900 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12989 d method_12989 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12982 e method_12982 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12979 f method_12979 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12998 g method_12998 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12993 h method_12993 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12986 i method_12986 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12997 j method_12997 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12994 k method_12994 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_12985 l method_12985 + m ()V + m ()V +c net/minecraft/server/commands/AdvancementCommands$Action aly$a net/minecraft/class_3008$class_3009 + f Lnet/minecraft/server/commands/AdvancementCommands$Action; GRANT a field_13457 + f Lnet/minecraft/server/commands/AdvancementCommands$Action; REVOKE b field_13456 + f Ljava/lang/String; key c field_13454 + f [Lnet/minecraft/server/commands/AdvancementCommands$Action; $VALUES d field_13455 + m ()Ljava/lang/String; getKey a method_13001 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/advancements/AdvancementHolder;)Z perform a method_13002 + p 1 player + p 2 advancement + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/advancements/AdvancementHolder;Ljava/lang/String;)Z performCriterion a method_13000 + p 1 player + p 2 advancement + p 3 criterionName + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Iterable;)I perform a method_12999 + c Applies this action to all the given advancements.\n\n@return The number of players affected. + p 1 player + p 2 advancements + m ()[Lnet/minecraft/server/commands/AdvancementCommands$Action; $values b method_36964 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 key + m ()V +c net/minecraft/server/commands/AdvancementCommands$Action$1 aly$a$1 net/minecraft/class_3008$class_3009$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/server/commands/AdvancementCommands$Action$2 aly$a$2 net/minecraft/class_3008$class_3009$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/server/commands/AdvancementCommands$Mode aly$b net/minecraft/class_3008$class_3010 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; ONLY a field_13464 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; THROUGH b field_13462 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; FROM c field_13458 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; UNTIL d field_13465 + f Lnet/minecraft/server/commands/AdvancementCommands$Mode; EVERYTHING e field_13461 + f Z parents f field_13460 + f Z children g field_13459 + f [Lnet/minecraft/server/commands/AdvancementCommands$Mode; $VALUES h field_13463 + m ()[Lnet/minecraft/server/commands/AdvancementCommands$Mode; $values a method_36965 + m (Ljava/lang/String;IZZ)V + p 3 parents + p 4 children + m ()V +c net/minecraft/server/commands/AttributeCommand alz net/minecraft/class_5252 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_LIVING_ENTITY a field_24376 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NO_SUCH_ATTRIBUTE b field_24377 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_NO_SUCH_MODIFIER c field_24378 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_MODIFIER_ALREADY_PRESENT d field_24379 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51902 a method_51902 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51903 a method_51903 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; getLivingEntity a method_27733 + p 0 target + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttributeInstance a method_27734 + p 0 entity + p 1 attribute + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_27735 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27736 a method_27736 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_27738 a method_27738 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I getAttributeValue a method_27739 + p 0 source + p 1 entity + p 2 attribute + p 3 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)I removeModifier a method_27740 + p 0 source + p 1 entity + p 2 attribute + p 3 id + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;D)I getAttributeModifier a method_27741 + p 0 source + p 1 entity + p 2 attribute + p 3 id + p 4 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)I addModifier a method_27742 + p 0 source + p 1 entity + p 2 attribute + p 3 id + p 4 amount + p 6 operation + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27743 a method_27743 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27744 a method_27744 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27745 a method_27745 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; getAttributeDescription a method_45144 + p 0 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51901 a method_51901 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51905 b method_51905 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/LivingEntity; getEntityWithAttribute b method_27746 + p 0 entity + p 1 attribute + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27747 b method_27747 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I getAttributeBase b method_27748 + p 0 source + p 1 entity + p 2 attribute + p 3 scale + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_27749 b method_27749 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51904 b method_51904 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27750 c method_27750 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;D)I setAttributeBase c method_27751 + p 0 source + p 1 entity + p 2 attribute + p 3 value + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/network/chat/Component; method_51906 c method_51906 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27752 d method_27752 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27753 e method_27753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27754 f method_27754 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27755 g method_27755 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27756 h method_27756 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27757 i method_27757 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27758 j method_27758 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_27759 k method_27759 + m ()V + m ()V +c net/minecraft/server/commands/BanIpCommands ama net/minecraft/class_3012 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_IP a field_13468 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_BANNED b field_13467 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13008 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13010 a method_13010 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13011 a method_13011 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I banIpOrName a method_13009 + p 0 source + p 1 username + p 2 reason + m (Ljava/lang/String;Lnet/minecraft/server/players/IpBanListEntry;)Lnet/minecraft/network/chat/Component; method_51907 a method_51907 + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_51908 a method_51908 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13006 b method_13006 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I banIp b method_13007 + p 0 source + p 1 ip + p 2 reason + m ()V + m ()V +c net/minecraft/server/commands/BanListCommands amb net/minecraft/class_3014 + m ()Lnet/minecraft/network/chat/Component; method_51909 a method_51909 + m (Lnet/minecraft/server/players/BanListEntry;)Lnet/minecraft/network/chat/Component; method_51910 a method_51910 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13014 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13017 a method_13017 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13018 a method_13018 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I showList a method_13015 + p 0 source + p 1 bannedPlayerList + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51911 a method_51911 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13013 b method_13013 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13016 c method_13016 + m ()V +c net/minecraft/server/commands/BanPlayerCommands amc net/minecraft/class_3016 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_BANNED a field_13473 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/players/UserBanListEntry;)Lnet/minecraft/network/chat/Component; method_51912 a method_51912 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13021 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13023 a method_13023 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13024 a method_13024 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)I banPlayers a method_13022 + p 0 source + p 1 gameProfiles + p 2 reason + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13020 b method_13020 + m ()V + m ()V +c net/minecraft/server/commands/BossBarCommands amd net/minecraft/class_3019 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_BOSS_BAR a field_13482 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_EXISTS b field_13478 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_DOESNT_EXIST c field_13486 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYER_CHANGE d field_13483 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_NAME_CHANGE e field_13476 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_COLOR_CHANGE f field_13480 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_STYLE_CHANGE g field_13481 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_VALUE_CHANGE h field_13477 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_MAX_CHANGE i field_13484 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_HIDDEN j field_13479 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_VISIBLE k field_13485 + m ()Lnet/minecraft/network/chat/Component; method_51913 a method_51913 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51914 a method_51914 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;I)Lnet/minecraft/network/chat/Component; method_51915 a method_51915 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51916 a method_51916 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13053 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/bossevents/CustomBossEvent; getBossBar a method_13054 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13044 a method_13044 + m (Lnet/minecraft/commands/CommandSourceStack;)I listBars a method_13045 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)I createBar a method_13049 + p 0 source + p 1 id + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getValue a method_13065 + p 0 source + p 1 bossbar + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;I)I setValue a method_13036 + p 0 source + p 1 bossbar + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/world/BossEvent$BossBarColor;)I setColor a method_13028 + p 0 source + p 1 bossbar + p 2 color + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/world/BossEvent$BossBarOverlay;)I setStyle a method_13050 + p 0 source + p 1 bossbar + p 2 style + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Ljava/util/Collection;)I setPlayers a method_13031 + p 0 source + p 1 bossbar + p 2 players + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Lnet/minecraft/network/chat/Component;)I setName a method_13071 + p 0 source + p 1 bossbar + p 2 name + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;Z)I setVisible a method_13068 + p 0 source + p 1 bossbar + p 2 visible + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13059 a method_13059 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51917 a method_51917 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51918 b method_51918 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;I)Lnet/minecraft/network/chat/Component; method_51919 b method_51919 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13029 b method_13029 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13035 b method_13035 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getMax b method_13056 + p 0 source + p 1 bossbar + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;I)I setMax b method_13066 + p 0 source + p 1 bossbar + p 2 max + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13063 b method_13063 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51920 c method_51920 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13033 c method_13033 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getVisible c method_13041 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51921 d method_51921 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13039 d method_13039 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I getPlayers d method_13030 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51922 e method_51922 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13057 e method_13057 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;)I removeBar e method_13069 + p 0 source + p 1 bossbar + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51923 f method_51923 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13051 f method_13051 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51924 g method_51924 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13072 g method_13072 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51925 h method_51925 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13067 h method_13067 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51926 i method_51926 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13037 i method_13037 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51927 j method_51927 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13047 j method_13047 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51928 k method_51928 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13043 k method_13043 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51929 l method_51929 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13060 l method_13060 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51930 m method_51930 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13052 m method_13052 + m (Lnet/minecraft/server/bossevents/CustomBossEvent;)Lnet/minecraft/network/chat/Component; method_51931 n method_51931 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13058 n method_13058 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13040 o method_13040 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13046 p method_13046 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13032 q method_13032 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13034 r method_13034 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13062 s method_13062 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13055 t method_13055 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13061 u method_13061 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13048 v method_13048 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13042 w method_13042 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13038 x method_13038 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13070 y method_13070 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13064 z method_13064 + m ()V + m ()V +c net/minecraft/server/commands/ChaseCommand ame net/minecraft/class_6634 + f Lcom/google/common/collect/BiMap; DIMENSION_NAMES a field_34999 + f Lorg/slf4j/Logger; LOGGER b field_44981 + f Ljava/lang/String; DEFAULT_CONNECT_HOST c field_35000 + f Ljava/lang/String; DEFAULT_BIND_ADDRESS d field_35001 + f I DEFAULT_PORT e field_35002 + f I BROADCAST_INTERVAL_MS f field_35003 + f Lnet/minecraft/server/chase/ChaseServer; chaseServer g field_35004 + f Lnet/minecraft/server/chase/ChaseClient; chaseClient h field_35005 + m ()Lnet/minecraft/network/chat/Component; method_51932 a method_51932 + m (I)Lnet/minecraft/network/chat/Component; method_51933 a method_51933 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_38770 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38771 a method_38771 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop a method_38772 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;I)I lead a method_38773 + p 0 source + p 1 bindAddress + p 2 port + m (Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_51934 a method_51934 + m ()Lnet/minecraft/network/chat/Component; method_51935 b method_51935 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38774 b method_38774 + m (Lnet/minecraft/commands/CommandSourceStack;)Z alreadyRunning b method_38775 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;I)I follow b method_38776 + p 0 source + p 1 host + p 2 port + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38777 c method_38777 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38778 d method_38778 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38779 e method_38779 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38780 f method_38780 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38781 g method_38781 + m ()V + m ()V +c net/minecraft/server/commands/ClearInventoryCommands amf net/minecraft/class_3020 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SINGLE a field_13487 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_MULTIPLE b field_13488 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51936 a method_51936 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13076 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13080 a method_13080 + m (Lnet/minecraft/world/item/ItemStack;)Z method_13081 a method_13081 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13082 a method_13082 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/function/Predicate;)I clearUnlimited a method_58032 + p 0 source + p 1 targets + p 2 filter + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/function/Predicate;I)I clearInventory a method_13077 + p 0 source + p 1 targetPlayers + p 2 itemPredicate + p 3 maxCount + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13079 a method_13079 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51937 b method_51937 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13073 b method_13073 + m (Lnet/minecraft/world/item/ItemStack;)Z method_13083 b method_13083 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13075 b method_13075 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51938 c method_51938 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13078 c method_13078 + m (ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51939 d method_51939 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13074 d method_13074 + m ()V + m ()V +c net/minecraft/server/commands/CloneCommands amg net/minecraft/class_3023 + f Ljava/util/function/Predicate; FILTER_AIR a field_13490 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OVERLAP b field_13493 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE c field_13491 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED d field_13492 + m (I)Lnet/minecraft/network/chat/Component; method_51940 a method_51940 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrapWithCloneMode a method_48035 + p 0 beginGetter + p 1 endGetter + p 2 targetGetter + p 3 filterGetter + p 4 argumentBuilder + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48036 a method_48036 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48037 a method_48037 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48038 a method_48038 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13089 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48039 a method_48039 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/level/ServerLevel;Ljava/lang/String;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; getLoadedDimensionAndPosition a method_48040 + p 0 context + p 1 level + p 2 name + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48041 a method_48041 + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;)Lcom/mojang/brigadier/builder/ArgumentBuilder; beginEndDestinationAndModeSuffix a method_48042 + p 0 buildContext + p 1 levelGetter + m (Lnet/minecraft/commands/CommandBuildContext;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;)Lcom/mojang/brigadier/builder/ArgumentBuilder; destinationAndModeSuffix a method_48043 + p 0 buildContext + p 1 sourceLevelGetter + p 2 destinationLevelGetter + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13094 a method_13094 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition;Ljava/util/function/Predicate;Lnet/minecraft/server/commands/CloneCommands$Mode;)I clone a method_13090 + p 0 source + p 1 begin + p 2 end + p 3 target + p 4 filter + p 5 mode + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13099 a method_13099 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48044 b method_48044 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48045 b method_48045 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48046 b method_48046 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48047 b method_48047 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48048 b method_48048 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48049 c method_48049 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48050 c method_48050 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/CloneCommands$DimensionAndPosition; method_48051 c method_48051 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/function/Predicate; method_48052 c method_48052 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_48053 c method_48053 + m (Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lnet/minecraft/server/commands/CloneCommands$CommandFunction;Lcom/mojang/brigadier/context/CommandContext;)I method_48054 d method_48054 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48055 d method_48055 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13096 d method_13096 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48056 e method_48056 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48057 f method_48057 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/level/ServerLevel; method_48058 g method_48058 + m ()V + m ()V +c net/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo amg$a net/minecraft/class_3023$class_9450 + f Lnet/minecraft/nbt/CompoundTag; tag a comp_2537 + f Lnet/minecraft/core/component/DataComponentMap; components b comp_2538 + m ()Lnet/minecraft/nbt/CompoundTag; tag a comp_2537 + m ()Lnet/minecraft/core/component/DataComponentMap; components b comp_2538 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/server/commands/CloneCommands$CloneBlockInfo amg$b net/minecraft/class_3023$class_3024 + f Lnet/minecraft/core/BlockPos; pos a comp_2539 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_2540 + f Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo; blockEntityInfo c comp_2541 + m ()Lnet/minecraft/core/BlockPos; pos a comp_2539 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_2540 + m ()Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo; blockEntityInfo c comp_2541 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/commands/CloneCommands$CloneBlockEntityInfo;)V +c net/minecraft/server/commands/CloneCommands$CommandFunction amg$c net/minecraft/class_3023$class_8009 +c net/minecraft/server/commands/CloneCommands$DimensionAndPosition amg$d net/minecraft/class_3023$class_8010 + f Lnet/minecraft/server/level/ServerLevel; dimension a comp_1185 + f Lnet/minecraft/core/BlockPos; position b comp_1186 + m ()Lnet/minecraft/server/level/ServerLevel; dimension a comp_1185 + m ()Lnet/minecraft/core/BlockPos; position b comp_1186 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/server/commands/CloneCommands$Mode amg$e net/minecraft/class_3023$class_3025 + f Lnet/minecraft/server/commands/CloneCommands$Mode; FORCE a field_13497 + f Lnet/minecraft/server/commands/CloneCommands$Mode; MOVE b field_13500 + f Lnet/minecraft/server/commands/CloneCommands$Mode; NORMAL c field_13499 + f Z canOverlap d field_13498 + f [Lnet/minecraft/server/commands/CloneCommands$Mode; $VALUES e field_13501 + m ()Z canOverlap a method_13109 + m ()[Lnet/minecraft/server/commands/CloneCommands$Mode; $values b method_36966 + m (Ljava/lang/String;IZ)V + p 3 canOverlap + m ()V +c net/minecraft/server/commands/DamageCommand amh net/minecraft/class_8102 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVULNERABLE a field_42238 + m (FLnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_51941 a method_51941 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_48748 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48749 a method_48749 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48750 a method_48750 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)I damage a method_48751 + p 0 source + p 1 target + p 2 amount + p 3 damageType + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48752 b method_48752 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48753 c method_48753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48754 d method_48754 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48755 e method_48755 + m ()V + m ()V +c net/minecraft/server/commands/DataPackCommand ami net/minecraft/class_3027 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_UNKNOWN_PACK a field_13503 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_PACK_ALREADY_ENABLED b field_13504 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_PACK_ALREADY_DISABLED c field_13505 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CANNOT_DISABLE_FEATURE d field_49775 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_PACK_FEATURES_NOT_ENABLED e field_39980 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SELECTED_PACKS f field_13506 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; UNSELECTED_PACKS g field_13502 + m ()Lnet/minecraft/network/chat/Component; method_51942 a method_51942 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_13134 a method_13134 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13125 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13138 a method_13138 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13120 a method_13120 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;Z)Lnet/minecraft/server/packs/repository/Pack; getPack a method_13127 + p 0 context + p 1 name + p 2 enabling + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13112 a method_13112 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/server/packs/repository/Pack;)Z method_45145 a method_45145 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPacks a method_13121 + c Sends a list of both enabled and available packs to the user.\n\n@return The total number of packs. + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/packs/repository/Pack;)I disablePack a method_13140 + c Disables the given pack.\n\n@return The number of packs that are loaded after this operation. + p 0 source + p 1 pack + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/packs/repository/Pack;Lnet/minecraft/server/commands/DataPackCommand$Inserter;)I enablePack a method_13114 + c Enables the given pack.\n\n@return The number of packs that are loaded after this operation. + p 0 source + p 1 pack + p 2 priorityCallback + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_58142 a method_58142 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_45146 a method_45146 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51943 a method_51943 + m (Ljava/util/Collection;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/server/packs/repository/Pack;)Z method_29477 a method_29477 + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29776 a method_29776 + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_51944 a method_51944 + m (Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13139 a method_13139 + m ()Lnet/minecraft/network/chat/Component; method_51945 b method_51945 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_13132 b method_13132 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13111 b method_13111 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13136 b method_13136 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13133 b method_13133 + m (Lnet/minecraft/commands/CommandSourceStack;)I listAvailablePacks b method_13128 + c Sends a list of available packs to the user.\n\n@return The number of available packs. + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13131 b method_13131 + m (Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;)V method_13122 b method_13122 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_51946 c method_51946 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13115 c method_13115 + m (Lnet/minecraft/commands/CommandSourceStack;)I listEnabledPacks c method_13126 + c Sends a list of enabled packs to the user.\n\n@return The number of enabled packs. + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13135 c method_13135 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; method_51947 d method_51947 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13118 d method_13118 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13119 d method_13119 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13117 d method_13117 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13130 e method_13130 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13123 f method_13123 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13141 g method_13141 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13137 h method_13137 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13116 i method_13116 + m ()V + m ()V +c net/minecraft/server/commands/DataPackCommand$Inserter ami$a net/minecraft/class_3027$class_3028 +c net/minecraft/server/commands/DeOpCommands amj net/minecraft/class_3030 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_OP a field_13507 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13143 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13146 a method_13146 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13145 a method_13145 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13147 a method_13147 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I deopPlayers a method_13144 + p 0 source + p 1 players + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51948 a method_51948 + m ()V + m ()V +c net/minecraft/server/commands/DebugCommand amk net/minecraft/class_3032 + f Lorg/slf4j/Logger; LOGGER a field_20283 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_RUNNING b field_13597 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_RUNNING c field_13596 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_RECURSIVE_TRACES d field_46638 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; NO_RETURN_RUN e field_47151 + m ()Lnet/minecraft/network/chat/Component; method_51949 a method_51949 + m (DLnet/minecraft/util/profiling/ProfileResults;D)Lnet/minecraft/network/chat/Component; method_51950 a method_51950 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13156 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13154 a method_13154 + m (Lnet/minecraft/commands/CommandSourceStack;)I start a method_13159 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36353 b method_36353 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop b method_13158 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13161 c method_13161 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13157 d method_13157 + m ()V + m ()V +c net/minecraft/server/commands/DebugCommand$TraceCustomExecutor amk$a net/minecraft/class_3032$class_8829 + m (ILjava/util/Collection;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54253 a method_54253 + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded a method_54256 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Ljava/util/Collection;Lnet/minecraft/commands/CommandSourceStack;ILjava/lang/String;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54257 a method_54257 + m (ILjava/util/Collection;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54258 b method_54258 + m ()V +c net/minecraft/server/commands/DebugCommand$TraceCustomExecutor$1 amk$a$1 net/minecraft/class_3032$class_8829$1 + f Ljava/io/PrintWriter; val$output a field_46639 + f Lnet/minecraft/commands/functions/CommandFunction; val$function b field_46640 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V execute a method_54260 + m (Lnet/minecraft/server/commands/DebugCommand$TraceCustomExecutor;Lnet/minecraft/commands/functions/InstantiatedFunction;Lnet/minecraft/commands/CommandResultCallback;ZLjava/io/PrintWriter;Lnet/minecraft/commands/functions/CommandFunction;)V +c net/minecraft/server/commands/DebugCommand$Tracer amk$b net/minecraft/class_3032$class_6347 + f I INDENT_OFFSET b field_33550 + f Ljava/io/PrintWriter; output c field_33551 + f I lastIndent d field_33552 + f Z waitingForResult e field_33553 + m (I)V indentAndSave a method_36355 + p 1 indent + m (I)V printIndent b method_36356 + p 1 indent + m ()V newLine e method_36357 + m (Ljava/io/PrintWriter;)V + p 1 output +c net/minecraft/server/commands/DebugConfigCommand aml net/minecraft/class_8600 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52298 a method_52298 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_52299 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52300 a method_52300 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_52301 a method_52301 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52302 a method_52302 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;)I config a method_52303 + p 0 source + p 1 target + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/UUID;)I unconfig a method_52304 + p 0 source + p 1 target + m (Lnet/minecraft/server/MinecraftServer;)Ljava/lang/Iterable; getUuidsInConfig a method_52305 + p 0 server + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52306 b method_52306 + m ()V +c net/minecraft/server/commands/DebugMobSpawningCommand amm net/minecraft/class_6326 + m (Lnet/minecraft/world/entity/MobCategory;Lcom/mojang/brigadier/context/CommandContext;)I method_36183 a method_36183 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_36184 + p 0 dispatcher + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36185 a method_36185 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;)I spawnMobs a method_36186 + p 0 source + p 1 mobCategory + p 2 pos + m ()V +c net/minecraft/server/commands/DebugPathCommand amn net/minecraft/class_6327 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_MOB a field_33387 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PATH b field_33388 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_COMPLETE c field_33389 + m ()Lnet/minecraft/network/chat/Component; method_51953 a method_51953 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_36187 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36188 a method_36188 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36189 a method_36189 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)I fillBlocks a method_36190 + p 0 stack + p 1 pos + m ()V + m ()V +c net/minecraft/server/commands/DefaultGameModeCommands amo net/minecraft/class_3035 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13166 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13165 a method_13165 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/network/chat/Component; method_51954 a method_51954 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13168 a method_13168 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/GameType;)I setMode a method_13167 + c Sets the {@link net.minecraft.world.level.GameType} of the player who ran the command. + p 0 commandSource + p 1 gamemode + m ()V +c net/minecraft/server/commands/DifficultyCommand amp net/minecraft/class_3036 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_DIFFICULT a field_13602 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/network/chat/Component; method_51955 a method_51955 + m (Lnet/minecraft/world/Difficulty;Lcom/mojang/brigadier/context/CommandContext;)I method_13174 a method_13174 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13169 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13171 a method_13171 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13172 a method_13172 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/Difficulty;)I setDifficulty a method_13173 + p 0 source + p 1 difficulty + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13170 a method_13170 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/network/chat/Component; method_51956 b method_51956 + m ()V + m ()V +c net/minecraft/server/commands/EffectCommands amq net/minecraft/class_3043 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_GIVE_FAILED a field_13607 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CLEAR_EVERYTHING_FAILED b field_13609 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CLEAR_SPECIFIC_FAILED c field_13608 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51957 a method_51957 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_51958 a method_51958 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13229 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48545 a method_48545 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13235 a method_13235 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I clearEffects a method_13230 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;)I clearEffect a method_13231 + p 0 source + p 1 targets + p 2 effect + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;Ljava/lang/Integer;IZ)I giveEffect a method_13227 + p 0 source + p 1 targets + p 2 effect + p 3 seconds + p 4 amplifier + p 5 showParticles + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51959 a method_51959 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51960 b method_51960 + m (Lnet/minecraft/world/effect/MobEffect;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_51961 b method_51961 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48546 b method_48546 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51962 b method_51962 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48547 c method_48547 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13234 d method_13234 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13225 e method_13225 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13233 f method_13233 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13226 g method_13226 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13232 h method_13232 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13228 i method_13228 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23650 j method_23650 + m ()V + m ()V +c net/minecraft/server/commands/EmoteCommands amr net/minecraft/class_3045 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13237 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13238 a method_13238 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_43645 a method_43645 + m ()V +c net/minecraft/server/commands/EnchantCommand ams net/minecraft/class_3048 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_LIVING_ENTITY a field_13629 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_ITEM b field_13631 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_INCOMPATIBLE c field_13633 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_LEVEL_TOO_HIGH d field_13632 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOTHING_HAPPENED e field_13630 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13243 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13245 a method_13245 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13246 a method_13246 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/Holder;I)I enchant a method_13241 + p 0 source + p 1 targets + p 2 enchantment + p 3 level + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13244 a method_13244 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13248 a method_13248 + m (Lnet/minecraft/core/Holder;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51963 a method_51963 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13240 b method_13240 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13242 b method_13242 + m (Lnet/minecraft/core/Holder;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51964 b method_51964 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13247 c method_13247 + m ()V + m ()V +c net/minecraft/server/commands/ExecuteCommand amt net/minecraft/class_3050 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_FUNCTION_CONDITION_INSTANTATION_FAILURE a field_46642 + f I MAX_TEST_AREA b field_33390 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE c field_13635 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_CONDITIONAL_FAILED d field_13636 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CONDITIONAL_FAILED_COUNT e field_13637 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_PREDICATE f field_20852 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13292 A method_13292 + m ()Lnet/minecraft/network/chat/Component; method_51965 a method_51965 + m (I)Lnet/minecraft/network/chat/Component; method_51966 a method_51966 + m (II)Z method_13302 a method_13302 + m (Lnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13296 a method_13296 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I checkMatchingData a method_13303 + p 0 accessor + p 1 path + m (Lnet/minecraft/server/commands/data/DataAccessor;ZLnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/function/IntFunction;ZI)V method_13294 a method_13294 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13317 a method_13317 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13309 a method_13309 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isChunkLoaded a method_48059 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Z)Ljava/util/OptionalInt; checkRegions a method_13261 + p 0 level + p 1 begin + p 2 end + p 3 destination + p 4 isMasked + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/stream/Stream; method_48060 a method_48060 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13271 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58033 a method_58033 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13275 a method_13275 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/ExecuteCommand$IntBiPredicate;)Z checkScore a method_13263 + p 0 source + p 1 predicate + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22831 a method_22831 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;)Z checkScore a method_13313 + p 0 context + p 1 bounds + m (Lcom/mojang/brigadier/context/CommandContext;Z)I checkIfRegions a method_13306 + p 0 context + p 1 isMasked + m (Lcom/mojang/brigadier/context/CommandContext;ZZ)Ljava/util/Collection; expect a method_13319 + c If actual and expected match, returns a collection containing only the source player. + p 0 context + p 1 actual + p 2 expected + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addConditional a method_13310 + p 0 commandNode + p 1 builder + p 2 value + p 3 test + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/ArgumentBuilder;ZZ)Lcom/mojang/brigadier/builder/ArgumentBuilder; addIfBlocksConditional a method_13320 + p 0 commandNode + p 1 literal + p 2 isIf + p 3 isMasked + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; createRelationOperations a method_48061 + p 0 node + p 1 argumentBuilder + m (Lcom/mojang/brigadier/tree/CommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;ZLnet/minecraft/commands/CommandBuildContext;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addConditionals a method_13298 + p 0 parent + p 1 literal + p 2 isIf + p 3 context + m (Lcom/mojang/brigadier/tree/CommandNode;ZLnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13258 a method_13258 + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13253 a method_13253 + m (Lcom/mojang/brigadier/tree/LiteralCommandNode;Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;Z)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrapStores a method_13289 + p 0 parent + p 1 literal + p 2 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13254 a method_13254 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/bossevents/CustomBossEvent;ZZ)Lnet/minecraft/commands/CommandSourceStack; storeValue a method_13297 + p 0 source + p 1 bar + p 2 storingValue + p 3 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/function/IntFunction;Z)Lnet/minecraft/commands/CommandSourceStack; storeData a method_13265 + p 0 source + p 1 accessor + p 2 path + p 3 tagConverter + p 4 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)Ljava/util/List; method_48062 a method_48062 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Z)Lnet/minecraft/commands/CommandSourceStack; storeValue a method_13290 + p 0 source + p 1 targets + p 2 objective + p 3 storingResult + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/inventory/SlotRange;Ljava/util/function/Predicate;)I countItems a method_58034 + p 0 source + p 1 pos + p 2 slotRange + p 3 filter + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/commands/CommandSourceStack; spawnEntityAndRedirect a method_48756 + p 0 source + p 1 entityType + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;)Z checkCustomPredicate a method_22829 + p 0 source + p 1 condition + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Ljava/util/function/Function;Ljava/util/function/IntPredicate;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/ExecuteCommand$CommandGetter;Lnet/minecraft/commands/execution/ChainModifiers;)V scheduleFunctionConditionsAndTest a method_54264 + p 0 originalSource + p 1 sources + p 2 sourceModifier + p 3 successCheck + p 4 contextChain + p 5 arguments + p 6 executionControl + p 7 functions + p 8 chainModifiers + m (Ljava/lang/Iterable;Lnet/minecraft/world/inventory/SlotRange;Ljava/util/function/Predicate;)I countItems a method_58035 + p 0 targets + p 1 slotRange + p 2 filter + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13312 a method_13312 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54263 a method_54263 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Objective;ZZI)V method_13260 a method_13260 + m (Ljava/util/List;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;)V method_54852 a method_54852 + m (Ljava/util/OptionalInt;)Lnet/minecraft/network/chat/Component; method_51967 a method_51967 + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; expandOneToOneEntityRelation a method_48063 + p 0 relation + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48064 a method_48064 + m (Ljava/util/function/IntPredicate;Ljava/util/List;Lnet/minecraft/commands/ExecutionCommandSource;ZI)V method_54853 a method_54853 + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;)Lcom/mojang/brigadier/Command; createNumericConditionalHandler a method_13323 + p 0 isIf + p 1 predicate + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13270 a method_13270 + m (ZLnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13301 a method_13301 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13273 a method_13273 + m (ZZLnet/minecraft/server/bossevents/CustomBossEvent;ZI)V method_13277 a method_13277 + m (ZZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13287 a method_13287 + m ()Lnet/minecraft/network/chat/Component; method_51968 b method_51968 + m (II)Z method_13250 b method_13250 + m (Lnet/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate;Lcom/mojang/brigadier/context/CommandContext;)I method_13305 b method_13305 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13311 b method_13311 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48332 b method_48332 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_58036 b method_58036 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13307 b method_13307 + m (Lcom/mojang/brigadier/context/CommandContext;Z)I checkUnlessRegions b method_13304 + p 0 context + p 1 isMasked + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13255 b method_13255 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13316 b method_13316 + m (Ljava/util/function/Function;)Lcom/mojang/brigadier/RedirectModifier; expandOneToManyEntityRelation b method_48066 + p 0 relation + m (Ljava/util/function/Function;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_48067 b method_48067 + m (ZLnet/minecraft/server/commands/ExecuteCommand$CommandPredicate;Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13267 b method_13267 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_13315 b method_13315 + m ()Lnet/minecraft/network/chat/Component; method_51969 c method_51969 + m (II)Z method_13299 c method_13299 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13264 c method_13264 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48065 c method_48065 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_22830 c method_22830 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13276 c method_13276 + m (Lcom/mojang/brigadier/context/CommandContext;Z)Ljava/util/OptionalInt; checkRegions c method_13272 + p 0 context + p 1 isMasked + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58037 c method_58037 + m (II)Z method_13257 d method_13257 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13251 d method_13251 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48068 d method_48068 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13321 d method_13321 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13318 d method_13318 + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_58038 d method_58038 + m (II)Z method_55338 e method_55338 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13256 e method_13256 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48069 e method_48069 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13262 e method_13262 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13283 e method_13283 + m (ZLcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13300 e method_13300 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13284 f method_13284 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48071 f method_48071 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13266 f method_13266 + m (Lcom/mojang/brigadier/context/CommandContext;I)Lnet/minecraft/nbt/Tag; method_13324 f method_13324 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13285 f method_13285 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48072 g method_48072 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13249 g method_13249 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13322 g method_13322 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; method_48073 h method_48073 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13288 h method_13288 + m (ZLcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13269 h method_13269 + m (Lnet/minecraft/world/entity/Entity;)Z method_48074 i method_48074 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13282 i method_13282 + m (Lnet/minecraft/world/entity/Entity;)Z method_48075 j method_48075 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13280 j method_13280 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48076 k method_48076 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_48070 l method_48070 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_47527 m method_47527 + m (Lcom/mojang/brigadier/context/CommandContext;)Z method_13274 n method_13274 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_48757 o method_48757 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13286 p method_13286 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13259 q method_13259 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13252 r method_13252 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13268 s method_13268 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13291 t method_13291 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13293 u method_13293 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13308 v method_13308 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_49419 w method_49419 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13281 x method_13281 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/commands/CommandSourceStack; method_13314 y method_13314 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_13295 z method_13295 + m ()V + m ()V +c net/minecraft/server/commands/ExecuteCommand$CommandGetter amt$a net/minecraft/class_3050$class_8830 +c net/minecraft/server/commands/ExecuteCommand$CommandNumericPredicate amt$b net/minecraft/class_3050$class_3051 +c net/minecraft/server/commands/ExecuteCommand$CommandPredicate amt$c net/minecraft/class_3050$class_3052 +c net/minecraft/server/commands/ExecuteCommand$ExecuteIfFunctionCustomModifier amt$d net/minecraft/class_3050$class_8831 + f Ljava/util/function/IntPredicate; check a field_46643 + m (I)Z method_54268 a method_54268 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/Collection; method_54269 a method_54269 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54854 + p 1 originalSource + p 2 soruces + p 3 contextChain + p 4 chainModifiers + p 5 executionControl + m (I)Z method_54271 b method_54271 + m (Z)V + p 1 invert +c net/minecraft/server/commands/ExecuteCommand$IntBiPredicate amt$e net/minecraft/class_3050$class_9007 +c net/minecraft/server/commands/ExperienceCommand amu net/minecraft/class_3054 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SET_POINTS_INVALID a field_13638 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51970 a method_51970 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;Lnet/minecraft/server/level/ServerPlayer;I)Lnet/minecraft/network/chat/Component; method_51971 a method_51971 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13330 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13338 a method_13338 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13334 a method_13334 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/commands/ExperienceCommand$Type;)I queryExperience a method_13328 + p 0 source + p 1 player + p 2 type + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/server/commands/ExperienceCommand$Type;)I addExperience a method_13326 + p 0 source + p 1 targets + p 2 amount + p 3 type + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51972 b method_51972 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13327 b method_13327 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13335 b method_13335 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/server/commands/ExperienceCommand$Type;)I setExperience b method_13333 + p 0 source + p 1 targets + p 2 amount + p 3 type + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51973 c method_51973 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13332 c method_13332 + m (Lnet/minecraft/server/commands/ExperienceCommand$Type;ILjava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51974 d method_51974 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13336 d method_13336 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13331 e method_13331 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13329 f method_13329 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13339 g method_13339 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13337 h method_13337 + m ()V + m ()V +c net/minecraft/server/commands/ExperienceCommand$Type amu$a net/minecraft/class_3054$class_3055 + f Lnet/minecraft/server/commands/ExperienceCommand$Type; POINTS a field_13644 + f Lnet/minecraft/server/commands/ExperienceCommand$Type; LEVELS b field_13641 + f Ljava/util/function/BiConsumer; add c field_13639 + f Ljava/util/function/BiPredicate; set d field_13642 + f Ljava/lang/String; name e field_13643 + f Ljava/util/function/ToIntFunction; query f field_13645 + f [Lnet/minecraft/server/commands/ExperienceCommand$Type; $VALUES g field_13640 + m ()[Lnet/minecraft/server/commands/ExperienceCommand$Type; $values a method_36967 + m (Lnet/minecraft/server/level/ServerPlayer;)I method_13340 a method_13340 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Integer;)Z method_13342 a method_13342 + m (Lnet/minecraft/server/level/ServerPlayer;)I method_13341 b method_13341 + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/lang/Integer;)Z method_13343 b method_13343 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiConsumer;Ljava/util/function/BiPredicate;Ljava/util/function/ToIntFunction;)V + p 3 name + p 4 add + p 5 set + p 6 query + m ()V +c net/minecraft/server/commands/FillBiomeCommand amv net/minecraft/class_7926 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_LOADED a field_41279 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_VOLUME_TOO_LARGE b field_41281 + m (I)I quantize a method_47528 + p 0 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Lcom/mojang/datafixers/util/Either; fill a method_55339 + p 0 level + p 1 from + p 2 to + p 3 biome + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Ljava/util/function/Predicate;Ljava/util/function/Consumer;)Lcom/mojang/datafixers/util/Either; fill a method_55340 + p 0 level + p 1 from + p 2 to + p 3 biome + p 4 filter + p 5 messageOutput + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_47529 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47818 a method_47818 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/function/Predicate;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/Holder;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_47534 a method_47534 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_47532 a method_47532 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Supplier;)V method_55341 a method_55341 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;Ljava/util/function/Predicate;)I fill a method_47533 + p 0 source + p 1 from + p 2 to + p 3 biome + p 4 filter + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_47536 a method_47536 + m (Ljava/util/function/Supplier;)V method_55343 a method_55343 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; quantize a method_47535 + p 0 pos + m (Lnet/minecraft/core/Holder;)Z method_55342 a method_55342 + m (Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Holder;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/biome/BiomeResolver; makeResolver a method_47531 + p 0 biomeEntries + p 1 chunk + p 2 targetRegion + p 3 replacementBiome + p 4 filter + m (Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/network/chat/Component; method_51975 a method_51975 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_47530 b method_47530 + m (Lnet/minecraft/core/Holder;)Z method_47819 b method_47819 + m ()V + m ()V +c net/minecraft/server/commands/FillCommand amw net/minecraft/class_3057 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_AREA_TOO_LARGE a field_13649 + f Lnet/minecraft/commands/arguments/blocks/BlockInput; HOLLOW_CORE b field_13648 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED c field_13650 + m (I)Lnet/minecraft/network/chat/Component; method_51976 a method_51976 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13347 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13355 a method_13355 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13348 a method_13348 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13351 a method_13351 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/commands/FillCommand$Mode;Ljava/util/function/Predicate;)I fillBlocks a method_13354 + p 0 source + p 1 area + p 2 newBlock + p 3 mode + p 4 replacingPredicate + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13352 a method_13352 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13345 b method_13345 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13350 c method_13350 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13353 d method_13353 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13349 e method_13349 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13346 f method_13346 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13356 g method_13356 + m ()V + m ()V +c net/minecraft/server/commands/FillCommand$Mode amw$a net/minecraft/class_3057$class_3058 + f Lnet/minecraft/server/commands/FillCommand$Mode; REPLACE a field_13655 + f Lnet/minecraft/server/commands/FillCommand$Mode; OUTLINE b field_13652 + f Lnet/minecraft/server/commands/FillCommand$Mode; HOLLOW c field_13656 + f Lnet/minecraft/server/commands/FillCommand$Mode; DESTROY d field_13651 + f Lnet/minecraft/server/commands/SetBlockCommand$Filter; filter e field_13654 + f [Lnet/minecraft/server/commands/FillCommand$Mode; $VALUES f field_13653 + m ()[Lnet/minecraft/server/commands/FillCommand$Mode; $values a method_36968 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13360 a method_13360 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13361 b method_13361 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13359 c method_13359 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/commands/arguments/blocks/BlockInput; method_13358 d method_13358 + m (Ljava/lang/String;ILnet/minecraft/server/commands/SetBlockCommand$Filter;)V + p 3 filter + m ()V +c net/minecraft/server/commands/ForceLoadCommand amx net/minecraft/class_3060 + f I MAX_CHUNK_LIMIT a field_33392 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TOO_MANY_CHUNKS b field_13657 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NOT_TICKING c field_13659 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALL_ADDED d field_13658 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NONE_REMOVED e field_13660 + m (ILnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51977 a method_51977 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51978 a method_51978 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51979 a method_51979 + m (Lnet/minecraft/server/level/ServerLevel;J)V method_13377 a method_13377 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13365 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13375 a method_13375 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51980 a method_51980 + m (Lnet/minecraft/commands/CommandSourceStack;)I listForceLoad a method_13373 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ColumnPos;)I queryForceLoad a method_13374 + p 0 source + p 1 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ColumnPos;Lnet/minecraft/server/level/ColumnPos;Z)I changeForceLoad a method_13372 + p 0 source + p 1 from + p 2 to + p 3 add + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13369 a method_13369 + m (ZILnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/network/chat/Component; method_51982 a method_51982 + m (ZLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_51981 a method_51981 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13363 b method_13363 + m (Lnet/minecraft/commands/CommandSourceStack;)I removeAll b method_13366 + p 0 source + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13376 b method_13376 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13368 c method_13368 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13371 c method_13371 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13370 d method_13370 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13367 e method_13367 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13364 f method_13364 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13378 g method_13378 + m ()V + m ()V +c net/minecraft/server/commands/FunctionCommand amy net/minecraft/class_3062 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_FUNCTION_INSTANTATION_FAILURE a field_46645 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_FUNCTION b field_13662 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ARGUMENT_NOT_COMPOUND c field_44982 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_FUNCTIONS d field_46644 + f Lnet/minecraft/server/commands/FunctionCommand$Callbacks; FULL_CONTEXT_CALLBACKS e field_46646 + m (Lnet/minecraft/server/commands/FunctionCommand$1Accumulator;Lnet/minecraft/commands/CommandResultCallback;Lnet/minecraft/commands/execution/ExecutionContext;Lnet/minecraft/commands/execution/Frame;)V method_54855 a method_54855 + m (Lnet/minecraft/server/commands/FunctionCommand$1Accumulator;ZI)V method_54856 a method_54856 + m (Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;ZI)V method_54857 a method_54857 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_52309 a method_52309 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13380 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13382 a method_13382 + m (Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/CommandSourceStack; modifySenderForExecution a method_54272 + p 0 source + m (Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;)Lnet/minecraft/commands/CommandResultCallback; decorateOutputIfNeeded a method_54858 + p 0 source + p 1 callbacks + p 2 function + p 3 resultCallback + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/nbt/CompoundTag; getArgumentTag a method_52313 + p 0 nbtPath + p 1 dataAccessor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54273 a method_54273 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_54274 a method_54274 + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;)V queueFunctionsAsReturn a method_54859 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 exectutionControl + p 5 callbacks + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;Lnet/minecraft/commands/execution/ChainModifiers;)V queueFunctions a method_54275 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 executionControl + p 5 callbacks + p 6 chainModifiers + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/execution/ExecutionControl;Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/functions/CommandFunction;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/CommandResultCallback;Z)V instantiateAndQueueFunctions a method_54860 + p 0 arguments + p 1 executionControl + p 2 dispatcher + p 3 source + p 4 function + p 5 functionId + p 6 resultCallback + p 7 returnParentFrame + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13384 b method_13384 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52314 b method_52314 + m (Ljava/util/Collection;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/ExecutionCommandSource;Lnet/minecraft/commands/execution/ExecutionControl;Lnet/minecraft/server/commands/FunctionCommand$Callbacks;)V queueFunctionsNoReturn b method_54861 + p 0 functions + p 1 arguments + p 2 originalSource + p 3 source + p 4 executionControl + p 5 callbacks + m ()V + m ()V +c net/minecraft/server/commands/FunctionCommand$1 amy$1 net/minecraft/class_3062$1 + f Lnet/minecraft/server/commands/data/DataCommands$DataProvider; val$provider a field_46647 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)V +c net/minecraft/server/commands/FunctionCommand$2 amy$2 net/minecraft/class_3062$2 + f Lnet/minecraft/server/commands/data/DataCommands$DataProvider; val$provider a field_46648 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)V +c net/minecraft/server/commands/FunctionCommand$3 amy$3 net/minecraft/class_3062$3 + m ()V +c net/minecraft/server/commands/FunctionCommand$4 amy$4 net/minecraft/class_3062$4 + m ()V +c net/minecraft/server/commands/FunctionCommand$5 amy$5 net/minecraft/class_3062$5 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/network/chat/Component; method_54278 a method_54278 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;I)V signalResult a method_54279 + m ()V +c net/minecraft/server/commands/FunctionCommand$1Accumulator amy$a net/minecraft/class_3062$class_8932 + f Z anyResult a field_47152 + f I sum b field_47153 + m (I)V add a method_54862 + p 1 result + m ()V +c net/minecraft/server/commands/FunctionCommand$Callbacks amy$b net/minecraft/class_3062$class_8832 + m (Ljava/lang/Object;Lnet/minecraft/resources/ResourceLocation;I)V signalResult a method_54280 + p 1 source + p 2 function + p 3 commands +c net/minecraft/server/commands/FunctionCommand$FunctionCustomExecutor amy$c net/minecraft/class_3062$class_8833 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/nbt/CompoundTag; arguments a method_54277 + p 1 context + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V runGuarded a method_54283 + p 1 source + p 2 contextChain + p 3 chainModifiers + p 4 executionControl + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_54284 a method_54284 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_54285 b method_54285 + m ()V +c net/minecraft/server/commands/GameModeCommand amz net/minecraft/class_3064 + f I PERMISSION_LEVEL a field_33393 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_51987 a method_51987 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13388 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13386 a method_13386 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/world/level/GameType;)I setMode a method_13387 + p 0 source + p 1 players + p 2 gameType + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13389 a method_13389 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/GameType;)V logGamemodeChange a method_13390 + p 0 source + p 1 player + p 2 gameType + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_51988 a method_51988 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13391 b method_13391 + m ()V +c net/minecraft/server/commands/GameRuleCommand ana net/minecraft/class_3065 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13392 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/level/GameRules$Key;)I setRule a method_13394 + p 0 source + p 1 gameRule + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)Lnet/minecraft/network/chat/Component; method_51989 a method_51989 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13393 a method_13393 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/GameRules$Key;)I queryRule a method_13397 + p 0 source + p 1 gameRule + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)Lnet/minecraft/network/chat/Component; method_51990 b method_51990 + m ()V +c net/minecraft/server/commands/GameRuleCommand$1 ana$1 net/minecraft/class_3065$1 + f Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; val$base a field_19419 + m (Lnet/minecraft/world/level/GameRules$Key;Lcom/mojang/brigadier/context/CommandContext;)I method_20797 a method_20797 + m (Lnet/minecraft/world/level/GameRules$Key;Lcom/mojang/brigadier/context/CommandContext;)I method_20798 b method_20798 + m (Lcom/mojang/brigadier/builder/LiteralArgumentBuilder;)V +c net/minecraft/server/commands/GiveCommand anb net/minecraft/class_3068 + f I MAX_ALLOWED_ITEMSTACKS a field_33394 + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51991 a method_51991 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13402 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13403 a method_13403 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13404 a method_13404 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/item/ItemInput;Ljava/util/Collection;I)I giveItem a method_13401 + p 0 source + p 1 item + p 2 targets + p 3 count + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_51992 b method_51992 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13400 b method_13400 + m ()V +c net/minecraft/server/commands/HelpCommand anc net/minecraft/class_3069 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13665 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13405 + p 0 dispatcher + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13407 a method_13407 + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51993 a method_51993 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_51994 a method_51994 + m (Lcom/mojang/brigadier/CommandDispatcher;Lcom/mojang/brigadier/context/CommandContext;)I method_13406 b method_13406 + m ()V + m ()V +c net/minecraft/server/commands/ItemCommands and net/minecraft/class_5687 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_TARGET_NOT_A_CONTAINER a field_28018 + f Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType; ERROR_SOURCE_NOT_A_CONTAINER b field_28020 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TARGET_INAPPLICABLE_SLOT c field_28019 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_SOURCE_INAPPLICABLE_SLOT d field_28021 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TARGET_NO_CHANGES e field_28022 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_TARGET_NO_CHANGES_KNOWN_ITEM f field_28023 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_MODIFIER g field_28024 + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/item/ItemStack; getEntityItem a method_32706 + p 0 entity + p 1 slot + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_32707 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32708 a method_32708 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_32709 a method_32709 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_32710 a method_32710 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/util/Collection;I)I entityToEntities a method_32713 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 targets + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILjava/util/Collection;ILnet/minecraft/core/Holder;)I entityToEntities a method_32714 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 targets + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;I)I entityToBlock a method_32711 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;ILnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I entityToBlock a method_32712 + p 0 source + p 1 sourceEntity + p 2 sourceSlot + p 3 pos + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/world/item/ItemStack;)I setEntityItem a method_32724 + p 0 source + p 1 targets + p 2 slot + p 3 item + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;ILnet/minecraft/core/Holder;)I modifyEntityItem a method_32725 + p 0 source + p 1 targets + p 2 sourceSlot + p 3 modifer + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/item/ItemStack; getBlockItem a method_32716 + p 0 source + p 1 pos + p 2 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/item/ItemStack;)I setBlockItem a method_32717 + p 0 source + p 1 pos + p 2 slot + p 3 item + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILjava/util/Collection;I)I blockToEntities a method_32721 + p 0 source + p 1 pos + p 2 sourceSlot + p 3 targets + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILjava/util/Collection;ILnet/minecraft/core/Holder;)I blockToEntities a method_32722 + p 0 source + p 1 pos + p 2 sourceSlot + p 3 targets + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos;I)I blockToBlock a method_32719 + p 0 source + p 1 sourcePos + p 2 sourceSlot + p 3 pos + p 4 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I blockToBlock a method_32720 + p 0 source + p 1 sourcePos + p 2 sourceSlot + p 3 pos + p 4 slot + p 5 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;)I modifyBlockItem a method_32718 + p 0 source + p 1 pos + p 2 slot + p 3 modifier + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lcom/mojang/brigadier/exceptions/Dynamic3CommandExceptionType;)Lnet/minecraft/world/Container; getContainer a method_32723 + p 0 source + p 1 pos + p 2 exception + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; applyModifier a method_32715 + p 0 source + p 1 modifier + p 2 stack + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32726 a method_32726 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32727 a method_32727 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32728 a method_32728 + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51996 a method_51996 + m (Ljava/util/Map$Entry;)Lnet/minecraft/network/chat/Component; method_51997 a method_51997 + m (Ljava/util/Map;)Lnet/minecraft/network/chat/Component; method_51998 a method_51998 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51995 a method_51995 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32729 b method_32729 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32730 b method_32730 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32731 b method_32731 + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_52000 b method_52000 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_51999 b method_51999 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32732 c method_32732 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_32733 c method_32733 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32734 d method_32734 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32735 e method_32735 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32736 f method_32736 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32737 g method_32737 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32738 h method_32738 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32739 i method_32739 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32740 j method_32740 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32741 k method_32741 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32742 l method_32742 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32743 m method_32743 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_32744 n method_32744 + m ()V + m ()V +c net/minecraft/server/commands/JfrCommand ane net/minecraft/class_6607 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; START_FAILED a field_34880 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; DUMP_FAILED b field_34881 + m ()Lnet/minecraft/network/chat/Component; method_52001 a method_52001 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_38612 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38613 a method_38613 + m (Lnet/minecraft/commands/CommandSourceStack;)I startJfr a method_38614 + p 0 source + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_38615 a method_38615 + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_39499 a method_39499 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52002 a method_52002 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_38616 b method_38616 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopJfr b method_38617 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_38618 c method_38618 + m ()V + m ()V +c net/minecraft/server/commands/KickCommand anf net/minecraft/class_3073 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_KICKING_OWNER a field_46229 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SINGLEPLAYER b field_47520 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52003 a method_52003 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13410 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13412 a method_13412 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13413 a method_13413 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;)I kickPlayers a method_13411 + p 0 source + p 1 players + p 2 reason + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13409 b method_13409 + m ()V + m ()V +c net/minecraft/server/commands/KillCommand ang net/minecraft/class_3075 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13429 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13431 a method_13431 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13432 a method_13432 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I kill a method_13430 + p 0 source + p 1 targets + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52004 a method_52004 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22832 b method_22832 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52005 b method_52005 + m ()V +c net/minecraft/server/commands/ListPlayersCommand anh net/minecraft/class_3078 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/Component; method_30310 a method_30310 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13435 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13438 a method_13438 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPlayers a method_13437 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/function/Function;)I format a method_13434 + p 0 source + p 1 nameExtractor + m (Ljava/util/List;Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52006 a method_52006 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13433 b method_13433 + m (Lnet/minecraft/commands/CommandSourceStack;)I listPlayersWithUuids b method_13436 + p 0 source + m ()V +c net/minecraft/server/commands/LocateCommand ani net/minecraft/class_3079 + f Lorg/slf4j/Logger; LOGGER a field_41660 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_STRUCTURE_NOT_FOUND b field_39245 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_STRUCTURE_INVALID c field_39246 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_BIOME_NOT_FOUND d field_39247 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_POI_NOT_FOUND e field_39249 + f I MAX_STRUCTURE_SEARCH_RADIUS f field_39251 + f I MAX_BIOME_SEARCH_RADIUS g field_39252 + f I BIOME_SAMPLE_RESOLUTION_HORIZONTAL h field_39253 + f I BIOME_SAMPLE_RESOLUTION_VERTICAL i field_39254 + f I POI_SEARCH_RADIUS j field_39255 + m (IIII)F dist a method_13439 + p 0 x1 + p 1 z1 + p 2 x2 + p 3 z2 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_41004 a method_41004 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13443 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43904 a method_43904 + m (Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40998 a method_40998 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13448 a method_13448 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;)I locateBiome a method_43912 + p 0 source + p 1 biome + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I showLocateResult a method_45148 + p 0 source + p 1 result + p 2 sourcePosition + p 3 resultWithPosition + p 4 translationKey + p 5 absoluteY + p 6 duration + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)I locateStructure a method_43905 + p 0 source + p 1 structure + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/time/Duration;)I showLocateResult a method_24499 + p 0 source + p 1 result + p 2 sourcePosition + p 3 resultWithPosition + p 4 translationKey + p 5 absoluteY + p 6 duration + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;Ljava/lang/String;ZLjava/lang/String;Ljava/time/Duration;)I showLocateResult a method_45149 + p 0 source + p 1 sourcePosition + p 2 resultWithoutPosition + p 3 translationKey + p 4 absoluteY + p 5 elementName + p 6 duration + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/core/HolderSet$Named;)Ljava/lang/String; method_45150 a method_45150 + m (Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;Lnet/minecraft/core/Holder$Reference;)Ljava/lang/String; method_45151 a method_45151 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;)Lcom/mojang/brigadier/exceptions/CommandSyntaxException; method_43906 a method_43906 + m (Lnet/minecraft/commands/arguments/ResourceOrTagKeyArgument$Result;Lnet/minecraft/core/Registry;)Ljava/util/Optional; getHolders a method_43907 + p 0 structure + p 1 structureRegistry + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43913 a method_43913 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; method_52007 a method_52007 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_13447 a method_13447 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/HolderSet$Direct; method_43908 a method_43908 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_43909 a method_43909 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43911 b method_43911 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/commands/arguments/ResourceOrTagArgument$Result;)I locatePoi b method_43915 + p 0 source + p 1 poiType + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43917 b method_43917 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43914 c method_43914 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_41002 c method_41002 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39985 d method_39985 + m ()V + m ()V +c net/minecraft/server/commands/LootCommand anj net/minecraft/class_3039 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_LOOT_TABLE a field_13605 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_HELD_ITEMS b field_13604 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NO_LOOT_TABLE c field_13606 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13215 a method_13215 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/ItemStack;)V method_13179 a method_13179 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)Z distributeToContainer a method_13223 + p 0 container + p 1 item + m (Lnet/minecraft/world/entity/Entity;Ljava/util/List;IILjava/util/List;)V setSlots a method_16139 + p 0 target + p 1 items + p 2 startSlot + p 3 numSlots + p 4 setItems + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13193 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/LootCommand$TailProvider;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addTargets a method_13206 + p 0 builder + p 1 tailProvider + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropKillLoot a method_13189 + p 0 context + p 1 entity + p 2 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13210 a method_13210 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13220 a method_13220 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropBlockLoot a method_13219 + p 0 context + p 1 pos + p 2 tool + p 3 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropChestLoot a method_13197 + p 0 context + p 1 lootTable + p 2 dropCOnsimer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I drop a method_13180 + p 0 context + p 1 lootTable + p 2 params + p 3 dropConsumer + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)I dropFishingLoot a method_13199 + p 0 context + p 1 lootTable + p 2 pos + p 3 tool + p 4 dropConsumet + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; method_52008 a method_52008 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_52009 a method_52009 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canMergeItems a method_13218 + p 0 first + p 1 second + m (Lnet/minecraft/commands/CommandBuildContext;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/LootCommand$DropConsumer;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13203 a method_13203 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13181 a method_13181 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V method_13185 a method_13185 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getSourceHandItem a method_13178 + p 0 source + p 1 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;)V method_13224 a method_13224 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec3;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I dropInWorld a method_13183 + p 0 source + p 1 pos + p 2 items + p 3 callback + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;)V callback a method_13213 + p 0 source + p 1 items + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V callback a method_13212 + p 0 source + p 1 items + p 2 lootTable + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/Container; getContainer a method_13207 + p 0 source + p 1 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;IILjava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I blockReplace a method_13209 + p 0 source + p 1 pos + p 2 slot + p 3 numSlots + p 4 items + p 5 callback + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I blockDistribute a method_13196 + p 0 source + p 1 pos + p 2 items + p 3 callback + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13217 a method_13217 + m (Ljava/util/Collection;IILjava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I entityReplace a method_13187 + p 0 targets + p 1 startSlot + p 2 numSlots + p 3 items + p 4 callback + m (Ljava/util/Collection;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I playerGive a method_13201 + p 0 targets + p 1 items + p 2 callback + m (Ljava/util/List;)Lnet/minecraft/network/chat/Component; method_52010 a method_52010 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_52011 a method_52011 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13222 b method_13222 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13191 b method_13191 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/List;)V method_13184 b method_13184 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13195 b method_13195 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13204 c method_13204 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13214 c method_13214 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13211 d method_13211 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_16339 d method_16339 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13198 e method_13198 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13202 e method_13202 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13177 f method_13177 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13221 f method_13221 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13188 g method_13188 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/List;Lnet/minecraft/server/commands/LootCommand$Callback;)I method_13182 g method_13182 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13216 h method_13216 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13205 i method_13205 + m (Lnet/minecraft/server/commands/LootCommand$DropConsumer;Lcom/mojang/brigadier/context/CommandContext;)I method_13208 j method_13208 + m ()V + m ()V +c net/minecraft/server/commands/LootCommand$Callback anj$a net/minecraft/class_3039$class_3040 +c net/minecraft/server/commands/LootCommand$DropConsumer anj$b net/minecraft/class_3039$class_3041 +c net/minecraft/server/commands/LootCommand$TailProvider anj$c net/minecraft/class_3039$class_3042 +c net/minecraft/server/commands/MsgCommand ank net/minecraft/class_3082 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13461 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13463 a method_13463 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/util/Collection;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_45153 a method_45153 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/PlayerChatMessage;)V sendMessage a method_13462 + p 0 source + p 1 targets + p 2 message + m ()V +c net/minecraft/server/commands/OpCommand anl net/minecraft/class_3083 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_OP a field_13667 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/lang/String; method_13469 a method_13469 + m (Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/level/ServerPlayer;)Z method_13466 a method_13466 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13464 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13468 a method_13468 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13467 a method_13467 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13470 a method_13470 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I opPlayers a method_13465 + p 0 source + p 1 gameProfiles + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52012 a method_52012 + m ()V + m ()V +c net/minecraft/server/commands/PardonCommand anm net/minecraft/class_3086 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_BANNED a field_13669 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52013 a method_52013 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13472 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13475 a method_13475 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13474 a method_13474 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13476 a method_13476 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I pardonPlayers a method_13473 + p 0 source + p 1 gameProfiles + m ()V + m ()V +c net/minecraft/server/commands/PardonIpCommand ann net/minecraft/class_3088 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID a field_13671 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_BANNED b field_13672 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13478 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13480 a method_13480 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13479 a method_13479 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13481 a method_13481 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I unban a method_13482 + p 0 source + p 1 ipAddress + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52014 a method_52014 + m ()V + m ()V +c net/minecraft/server/commands/ParticleCommand ano net/minecraft/class_3089 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13673 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13486 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13489 a method_13489 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13490 a method_13490 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FIZLjava/util/Collection;)I sendParticles a method_13491 + p 0 source + p 1 particleData + p 2 pos + p 3 delta + p 4 speed + p 5 count + p 6 force + p 7 viewers + m (Lnet/minecraft/core/particles/ParticleOptions;)Lnet/minecraft/network/chat/Component; method_52015 a method_52015 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13483 b method_13483 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13488 c method_13488 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13484 d method_13484 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13487 e method_13487 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13485 f method_13485 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13492 g method_13492 + m ()V + m ()V +c net/minecraft/server/commands/PerfCommand anp net/minecraft/class_6413 + f Lorg/slf4j/Logger; LOGGER a field_33985 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_RUNNING b field_33986 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_RUNNING c field_33987 + m ()Lnet/minecraft/network/chat/Component; method_52016 a method_52016 + m (DI)Lnet/minecraft/network/chat/Component; method_52017 a method_52017 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_37331 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37332 a method_37332 + m (Lnet/minecraft/commands/CommandSourceStack;)I startProfilingDedicatedServer a method_37333 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/util/profiling/ProfileResults;)V whenStopped a method_37334 + p 0 source + p 1 results + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/nio/file/Path;Lnet/minecraft/server/MinecraftServer;)V saveResults a method_37335 + p 0 source + p 1 path + p 2 server + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/MinecraftServer;Ljava/nio/file/Path;)V method_37336 a method_37336 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52018 a method_52018 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_37337 b method_37337 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopProfilingDedicatedServer b method_37338 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/util/profiling/ProfileResults;)V method_37339 b method_37339 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_37340 c method_37340 + m ()V + m ()V +c net/minecraft/server/commands/PlaceCommand anq net/minecraft/class_6852 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FEATURE_FAILED a field_36324 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_JIGSAW_FAILED b field_39091 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_STRUCTURE_FAILED c field_39092 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_TEMPLATE_INVALID d field_39256 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEMPLATE_FAILED e field_39257 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_TEMPLATES f field_39393 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52019 a method_52019 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)Z method_43646 a method_43646 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)V checkLoaded a method_43647 + p 0 level + p 1 start + p 2 end + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_39986 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43918 a method_43918 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_44145 a method_44145 + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/ChunkPos;)V method_43649 a method_43649 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_39988 a method_39988 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;FI)I placeTemplate a method_43919 + p 0 source + p 1 template + p 2 pos + p 3 rotation + p 4 mirror + p 5 integrity + p 6 seed + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/BlockPos;)I placeFeature a method_39989 + p 0 source + p 1 feature + p 2 pos + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;ILnet/minecraft/core/BlockPos;)I placeJigsaw a method_43650 + p 0 source + p 1 templatePool + p 2 target + p 3 maxDepth + p 4 pos + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_43920 a method_43920 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52021 a method_52021 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52020 a method_52020 + m (Lnet/minecraft/core/Holder;)Z method_43651 a method_43651 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43921 b method_43921 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/BlockPos;)I placeStructure b method_43654 + p 0 source + p 1 structure + p 2 pos + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52022 b method_52022 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43922 c method_43922 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43923 d method_43923 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43924 e method_43924 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43925 f method_43925 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43648 g method_43648 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43653 h method_43653 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43655 i method_43655 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_43656 j method_43656 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39987 k method_39987 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_39990 l method_39990 + m ()V + m ()V +c net/minecraft/server/commands/PlaySoundCommand anr net/minecraft/class_3091 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_FAR a field_13678 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52023 a method_52023 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/Collection; getCallingPlayerAsCollection a method_57111 + p 0 player + m (Lnet/minecraft/sounds/SoundSource;)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; source a method_13497 + p 0 category + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13503 a method_13503 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13500 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_57112 a method_57112 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13502 a method_13502 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/world/phys/Vec3;FFF)I playSound a method_13504 + p 0 source + p 1 targets + p 2 sound + p 3 category + p 4 pos + p 5 volume + p 6 pitch + p 7 minVolume + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52024 b method_52024 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13505 b method_13505 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13498 c method_13498 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13501 d method_13501 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13499 e method_13499 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_57113 f method_57113 + m ()V + m ()V +c net/minecraft/server/commands/PublishCommand ans net/minecraft/class_3093 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13680 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_ALREADY_PUBLISHED b field_13679 + m (I)Lnet/minecraft/network/chat/MutableComponent; getSuccessMessage a method_46869 + p 0 port + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13510 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13512 a method_13512 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13513 a method_13513 + m (Lnet/minecraft/commands/CommandSourceStack;IZLnet/minecraft/world/level/GameType;)I publish a method_13509 + p 0 source + p 1 port + p 2 cheats + p 3 gameMode + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13511 a method_13511 + m (I)Lnet/minecraft/network/chat/Component; method_52025 b method_52025 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46870 b method_46870 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_46871 c method_46871 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13508 d method_13508 + m ()V + m ()V +c net/minecraft/server/commands/RaidCommand ant net/minecraft/class_6329 + m ()Lnet/minecraft/network/chat/Component; method_52026 a method_52026 + m (II)Lnet/minecraft/network/chat/Component; method_52027 a method_52027 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/entity/raid/Raid; getRaid a method_36191 + p 0 player + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_36192 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36193 a method_36193 + m (Lnet/minecraft/commands/CommandSourceStack;)I glow a method_36194 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I setRaidOmenLevel a method_36195 + p 0 source + p 1 level + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/Component;)I playSound a method_36196 + p 0 source + p 1 type + m (Ljava/lang/StringBuilder;)Lnet/minecraft/network/chat/Component; method_52028 a method_52028 + m ()Lnet/minecraft/network/chat/Component; method_52029 b method_52029 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36197 b method_36197 + m (Lnet/minecraft/commands/CommandSourceStack;)I spawnLeader b method_36198 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I start b method_36199 + p 0 source + p 1 badOmenLevel + m (Ljava/lang/StringBuilder;)Lnet/minecraft/network/chat/Component; method_52030 b method_52030 + m ()Lnet/minecraft/network/chat/Component; method_52031 c method_52031 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36200 c method_36200 + m (Lnet/minecraft/commands/CommandSourceStack;)I stop c method_36201 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36202 d method_36202 + m (Lnet/minecraft/commands/CommandSourceStack;)I check d method_36203 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36204 e method_36204 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_36205 e method_36205 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36206 f method_36206 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_36207 g method_36207 + m ()V +c net/minecraft/server/commands/RandomCommand anu net/minecraft/class_8602 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_TOO_LARGE a field_44983 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_RANGE_TOO_SMALL b field_44984 + m (I)Lnet/minecraft/network/chat/Component; method_52316 a method_52316 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52317 a method_52317 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_52318 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52319 a method_52319 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestRandomSequence a method_52320 + p 0 context + p 1 suggestionsBuilder + m (Lnet/minecraft/commands/CommandSourceStack;)I resetAllSequences a method_52321 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;IZZ)I resetAllSequencesAndSetNewDefaults a method_52322 + p 0 source + p 1 seed + p 2 includeWorldSeed + p 3 includeSequenceId + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;)I resetSequence a method_52323 + p 0 source + p 1 sequence + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/resources/ResourceLocation;IZZ)I resetSequence a method_52324 + p 0 source + p 1 sequence + p 2 seed + p 3 includeWorldSeed + p 4 includeSequenceId + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/resources/ResourceLocation;Z)I randomSample a method_52325 + p 0 source + p 1 range + p 2 sequence + p 3 displayResult + m (Ljava/lang/String;Z)Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; drawRandomValueTree a method_52326 + p 0 subcommand + p 1 displayResult + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/RandomSequence;)V method_52327 a method_52327 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52328 a method_52328 + m (I)Lnet/minecraft/network/chat/Component; method_52329 b method_52329 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52330 b method_52330 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52331 b method_52331 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52332 b method_52332 + m (ZLcom/mojang/brigadier/context/CommandContext;)I method_52333 b method_52333 + m (I)Lnet/minecraft/network/chat/Component; method_52334 c method_52334 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52335 c method_52335 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_52336 c method_52336 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52337 d method_52337 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52338 e method_52338 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52339 f method_52339 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52340 g method_52340 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_52341 h method_52341 + m ()V + m ()V +c net/minecraft/server/commands/RecipeCommand anv net/minecraft/class_3095 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_GIVE_FAILED a field_13681 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TAKE_FAILED b field_13682 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13517 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13521 a method_13521 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13522 a method_13522 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/Collection;)I giveRecipes a method_13520 + p 0 source + p 1 targets + p 2 recipes + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52032 a method_52032 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13515 b method_13515 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/util/Collection;)I takeRecipes b method_13518 + p 0 source + p 1 targets + p 2 recipes + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52033 b method_52033 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13519 c method_13519 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52034 c method_52034 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13516 d method_13516 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52035 d method_52035 + m ()V + m ()V +c net/minecraft/server/commands/ReloadCommand anw net/minecraft/class_3097 + f Lorg/slf4j/Logger; LOGGER a field_25343 + m ()Lnet/minecraft/network/chat/Component; method_52036 a method_52036 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/storage/WorldData;Ljava/util/Collection;)Ljava/util/Collection; discoverNewPacks a method_29478 + c Gets a list of IDs for the selected packs as well as all packs not disabled by the world config. + p 0 packRepository + p 1 worldData + p 2 selectedIds + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13529 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13530 a method_13530 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13531 a method_13531 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/Throwable;)Ljava/lang/Void; method_29479 a method_29479 + m (Ljava/util/Collection;Lnet/minecraft/commands/CommandSourceStack;)V reloadPacks a method_29480 + p 0 selectedIds + p 1 source + m ()V + m ()V +c net/minecraft/server/commands/ReturnCommand anx net/minecraft/class_8503 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_51277 + p 0 dispatcher + m (Lnet/minecraft/commands/ExecutionCommandSource;)Z method_54286 a method_54286 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnFailCustomExecutor anx$a net/minecraft/class_8503$class_8933 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54863 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnFromCommandCustomModifier anx$b net/minecraft/class_8503$class_8834 + m (Lnet/minecraft/commands/ExecutionCommandSource;Ljava/util/List;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V apply a method_54864 + m ()V +c net/minecraft/server/commands/ReturnCommand$ReturnValueCustomExecutor anx$c net/minecraft/class_8503$class_8835 + m (Lnet/minecraft/commands/ExecutionCommandSource;Lcom/mojang/brigadier/context/ContextChain;Lnet/minecraft/commands/execution/ChainModifiers;Lnet/minecraft/commands/execution/ExecutionControl;)V run a method_54289 + m ()V +c net/minecraft/server/commands/RideCommand any net/minecraft/class_8011 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_RIDING a field_41742 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_ALREADY_RIDING b field_41743 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_MOUNT_FAILED c field_41744 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MOUNTING_PLAYER d field_41745 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MOUNTING_LOOP e field_41746 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_WRONG_DIMENSION f field_42239 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52038 a method_52038 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_48078 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48079 a method_48079 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48080 a method_48080 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)I dismount a method_48081 + p 0 source + p 1 target + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I mount a method_48082 + p 0 source + p 1 target + p 2 vehicle + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48083 a method_48083 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48084 a method_48084 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52039 b method_52039 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48085 b method_48085 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48086 b method_48086 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_48077 c method_48077 + m ()V + m ()V +c net/minecraft/server/commands/SaveAllCommand anz net/minecraft/class_3104 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13701 + m ()Lnet/minecraft/network/chat/Component; method_52040 a method_52040 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13551 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13553 a method_13553 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13554 a method_13554 + m (Lnet/minecraft/commands/CommandSourceStack;Z)I saveAll a method_13550 + p 0 source + p 1 flush + m ()Lnet/minecraft/network/chat/Component; method_52041 b method_52041 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13549 b method_13549 + m ()V + m ()V +c net/minecraft/server/commands/SaveOffCommand aoa net/minecraft/class_3106 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_OFF a field_13703 + m ()Lnet/minecraft/network/chat/Component; method_52042 a method_52042 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13556 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13557 a method_13557 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13558 a method_13558 + m ()V + m ()V +c net/minecraft/server/commands/SaveOnCommand aob net/minecraft/class_3107 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_ON a field_13704 + m ()Lnet/minecraft/network/chat/Component; method_52043 a method_52043 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13559 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13560 a method_13560 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13561 a method_13561 + m ()V + m ()V +c net/minecraft/server/commands/SayCommand aoc net/minecraft/class_3110 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13562 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13563 a method_13563 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_43657 a method_43657 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13564 a method_13564 + m ()V +c net/minecraft/server/commands/ScheduleCommand aod net/minecraft/class_3112 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_TICK a field_13706 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_CANT_REMOVE b field_20853 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_SCHEDULE c field_20854 + m (ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_52044 a method_52044 + m (Lnet/minecraft/resources/ResourceLocation;IJ)Lnet/minecraft/network/chat/Component; method_52045 a method_52045 + m (Lnet/minecraft/resources/ResourceLocation;ZLnet/minecraft/world/level/timers/TimerQueue;JLnet/minecraft/commands/CommandSourceStack;ILnet/minecraft/commands/functions/CommandFunction;)V method_13571 a method_13571 + m (Lnet/minecraft/resources/ResourceLocation;ZLnet/minecraft/world/level/timers/TimerQueue;JLnet/minecraft/commands/CommandSourceStack;ILjava/util/Collection;)V method_13570 a method_13570 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13567 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22834 a method_22834 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22835 a method_22835 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13569 a method_13569 + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/datafixers/util/Pair;IZ)I schedule a method_13566 + p 0 source + p 1 function + p 2 time + p 3 append + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I remove a method_22833 + p 0 source + p 1 function + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_22836 a method_22836 + m (Lnet/minecraft/resources/ResourceLocation;IJ)Lnet/minecraft/network/chat/Component; method_52046 b method_52046 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22837 b method_22837 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_22838 c method_22838 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13568 d method_13568 + m ()V + m ()V +c net/minecraft/server/commands/ScoreboardCommand aoe net/minecraft/class_3115 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_OBJECTIVE_ALREADY_EXISTS a field_13712 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DISPLAY_SLOT_ALREADY_EMPTY b field_13715 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DISPLAY_SLOT_ALREADY_SET c field_13713 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TRIGGER_ALREADY_ENABLED d field_13714 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_TRIGGER e field_13710 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_NO_VALUE f field_13711 + m ()Lcom/mojang/brigadier/builder/LiteralArgumentBuilder; createRenderTypeModify a method_13606 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52049 a method_52049 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52050 a method_52050 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55344 a method_55344 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13595 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13610 a method_13610 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13587 a method_13587 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/numbers/NumberFormat;)I method_55346 a method_55346 + m (Lnet/minecraft/commands/CommandBuildContext;Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;)Lcom/mojang/brigadier/builder/ArgumentBuilder; addNumberFormats a method_55345 + p 0 context + p 1 argumentBuilder + p 2 executor + m (Lnet/minecraft/commands/CommandSourceStack;)I listTrackedPlayers a method_13589 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/DisplaySlot;)I clearDisplaySlot a method_13592 + p 0 source + p 1 slot + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)I setDisplaySlot a method_13596 + p 0 source + p 1 slot + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;)I removeObjective a method_13602 + p 0 source + p 1 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)I setRenderType a method_13581 + p 0 source + p 1 objective + p 2 renderType + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/Component;)I setDisplayName a method_13576 + p 0 source + p 1 objective + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/numbers/NumberFormat;)I setObjectiveFormat a method_55347 + p 0 source + p 1 objective + p 2 format + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/Objective;Z)I setDisplayAutoUpdate a method_55348 + p 0 source + p 1 objective + p 2 displayAutoUpdate + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/ScoreHolder;)I listTrackedPlayerScores a method_13614 + p 0 source + p 1 score + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)I getScore a method_13607 + p 0 source + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)V method_52058 a method_52058 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;)I addObjective a method_13611 + p 0 source + p 1 name + p 2 criteria + p 3 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetScores a method_13575 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestTriggers a method_13613 + p 0 source + p 1 targets + p 2 suggestions + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I enableTrigger a method_13609 + p 0 source + p 1 targets + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I setScore a method_13604 + p 0 source + p 1 targets + p 2 objective + p 3 newValue + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/commands/arguments/OperationArgument$Operation;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I performOperation a method_13584 + p 0 source + p 1 targets + p 2 targetObjectives + p 3 operation + p 4 sourceEntities + p 5 sourceObjective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/Component;)I setScoreDisplay a method_55349 + p 0 source + p 1 targets + p 2 objective + p 3 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/network/chat/numbers/NumberFormat;)I setScoreNumberFormat a method_55350 + p 0 source + p 1 targets + p 2 objective + p 3 numberFormat + m (Lnet/minecraft/world/scores/DisplaySlot;)Lnet/minecraft/network/chat/Component; method_52047 a method_52047 + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52048 a method_52048 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52051 a method_52051 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52052 a method_52052 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52053 a method_52053 + m (Lnet/minecraft/world/scores/ScoreHolder;)Lnet/minecraft/network/chat/Component; method_52054 a method_52054 + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/ReadOnlyScoreInfo;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52055 a method_52055 + m (Lnet/minecraft/world/scores/ScoreHolder;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lnet/minecraft/network/chat/Component; method_52056 a method_52056 + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;Lcom/mojang/brigadier/context/CommandContext;)I method_13601 a method_13601 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lnet/minecraft/network/chat/Component; method_55351 a method_55351 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13605 a method_13605 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; getFirstTargetName a method_55352 + p 0 scores + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55353 a method_55353 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55354 a method_55354 + m ()Lnet/minecraft/network/chat/Component; method_52059 b method_52059 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52060 b method_52060 + m (ILnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52061 b method_52061 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55355 b method_55355 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55356 b method_55356 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/network/chat/numbers/NumberFormat;)I method_55357 b method_55357 + m (Lnet/minecraft/commands/CommandSourceStack;)I listObjectives b method_13597 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)I resetScore b method_13586 + p 0 source + p 1 targets + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I addScore b method_13578 + p 0 source + p 1 targets + p 2 objective + p 3 amount + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52062 b method_52062 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52063 b method_52063 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52064 b method_52064 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52057 b method_52057 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55358 b method_55358 + m (Lnet/minecraft/network/chat/Component;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55359 b method_55359 + m ()Lnet/minecraft/network/chat/Component; method_52066 c method_52066 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55360 c method_55360 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55361 c method_55361 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13585 c method_13585 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;I)I removeScore c method_13600 + p 0 source + p 1 targets + p 2 objective + p 3 amount + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52067 c method_52067 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52068 c method_52068 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;I)Lnet/minecraft/network/chat/Component; method_52069 c method_52069 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52065 c method_52065 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55362 c method_55362 + m (Lnet/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor;Lcom/mojang/brigadier/context/CommandContext;)I method_55363 d method_55363 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13574 d method_13574 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55364 d method_55364 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52072 d method_52072 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52070 d method_52070 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55365 d method_55365 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13579 e method_13579 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55366 e method_55366 + m (Lnet/minecraft/world/scores/Objective;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52074 e method_52074 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52073 e method_52073 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55367 e method_55367 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13582 f method_13582 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55368 f method_55368 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55369 f method_55369 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13598 g method_13598 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_55370 g method_55370 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13593 h method_13593 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52071 h method_52071 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13612 i method_13612 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13608 j method_13608 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13580 k method_13580 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13591 l method_13591 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13588 m method_13588 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13603 n method_13603 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13594 o method_13594 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55371 p method_55371 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13599 q method_13599 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13583 r method_13583 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13590 s method_13590 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13577 t method_13577 + m ()V + m ()V +c net/minecraft/server/commands/ScoreboardCommand$NumberFormatCommandExecutor aoe$a net/minecraft/class_3115$class_9008 +c net/minecraft/server/commands/SeedCommand aof net/minecraft/class_3118 + m (Lcom/mojang/brigadier/CommandDispatcher;Z)V register a method_13616 + p 0 dispatcher + p 1 notIntegratedServer + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13617 a method_13617 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52075 a method_52075 + m (ZLnet/minecraft/commands/CommandSourceStack;)Z method_13618 a method_13618 + m ()V +c net/minecraft/server/commands/ServerPackCommand aog net/minecraft/class_9027 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_55474 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55475 a method_55475 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_55476 a method_55476 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;)I pushPack a method_55477 + p 0 source + p 1 url + p 2 uuid + p 3 hash + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/UUID;)I popPack a method_55478 + p 0 source + p 1 uuid + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/protocol/Packet;)V sendToAllConnections a method_55479 + p 0 source + p 1 packet + m (Ljava/lang/String;)Ljava/util/UUID; method_55480 a method_55480 + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/Connection;)V method_55481 a method_55481 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55482 b method_55482 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55483 c method_55483 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_55484 d method_55484 + m ()V +c net/minecraft/server/commands/SetBlockCommand aoh net/minecraft/class_3119 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13719 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13623 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13626 a method_13626 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_13624 a method_13624 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13627 a method_13627 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;Lnet/minecraft/commands/arguments/blocks/BlockInput;Lnet/minecraft/server/commands/SetBlockCommand$Mode;Ljava/util/function/Predicate;)I setBlock a method_13620 + p 0 source + p 1 pos + p 2 state + p 3 mode + p 4 predicate + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/network/chat/Component; method_52076 a method_52076 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13621 b method_13621 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13625 c method_13625 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13622 d method_13622 + m ()V + m ()V +c net/minecraft/server/commands/SetBlockCommand$Filter aoh$a net/minecraft/class_3119$class_3120 +c net/minecraft/server/commands/SetBlockCommand$Mode aoh$b net/minecraft/class_3119$class_3121 + f Lnet/minecraft/server/commands/SetBlockCommand$Mode; REPLACE a field_13722 + f Lnet/minecraft/server/commands/SetBlockCommand$Mode; DESTROY b field_13721 + f [Lnet/minecraft/server/commands/SetBlockCommand$Mode; $VALUES c field_13720 + m ()[Lnet/minecraft/server/commands/SetBlockCommand$Mode; $values a method_36969 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/commands/SetPlayerIdleTimeoutCommand aoi net/minecraft/class_3123 + m (I)Lnet/minecraft/network/chat/Component; method_52077 a method_52077 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13631 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13632 a method_13632 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13633 a method_13633 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setIdleTimeout a method_13630 + p 0 source + p 1 idleTimeout + m ()V +c net/minecraft/server/commands/SetSpawnCommand aoj net/minecraft/class_3127 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13641 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30733 a method_30733 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13644 a method_13644 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/core/BlockPos;F)I setSpawn a method_13645 + p 0 source + p 1 targets + p 2 pos + p 3 angle + m (Lnet/minecraft/core/BlockPos;FLjava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52078 a method_52078 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13643 b method_13643 + m (Lnet/minecraft/core/BlockPos;FLjava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52079 b method_52079 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13640 c method_13640 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13642 d method_13642 + m ()V +c net/minecraft/server/commands/SetWorldSpawnCommand aok net/minecraft/class_3128 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13647 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_30734 a method_30734 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13649 a method_13649 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/BlockPos;F)I setSpawn a method_13650 + p 0 source + p 1 pos + p 2 angle + m (Lnet/minecraft/core/BlockPos;F)Lnet/minecraft/network/chat/Component; method_52080 a method_52080 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13648 b method_13648 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13646 c method_13646 + m ()V +c net/minecraft/server/commands/SpawnArmorTrimsCommand aol net/minecraft/class_8044 + f Ljava/util/Map; MATERIAL_AND_SLOT_TO_ITEM a field_41885 + f Ljava/util/List; VANILLA_TRIM_PATTERNS b field_41886 + f Ljava/util/List; VANILLA_TRIM_MATERIALS c field_41887 + f Ljava/util/function/ToIntFunction; TRIM_PATTERN_ORDER d field_41888 + f Ljava/util/function/ToIntFunction; TRIM_MATERIAL_ORDER e field_41889 + m ()Lnet/minecraft/network/chat/Component; method_52081 a method_52081 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_48333 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_48334 a method_48334 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_48335 a method_48335 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)I spawnArmorTrims a method_48336 + p 0 source + p 1 player + m (Ljava/util/HashMap;)V method_48341 a method_48341 + m (Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/Registry;Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;Lnet/minecraft/world/item/armortrim/TrimMaterial;)V method_48337 a method_48337 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimMaterial;)Ljava/lang/Integer; method_48338 a method_48338 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;)Ljava/lang/Integer; method_48339 a method_48339 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/armortrim/TrimPattern;)V method_48340 a method_48340 + m ()V + m ()V +c net/minecraft/server/commands/SpectateCommand aom net/minecraft/class_4694 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SELF a field_21463 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_NOT_SPECTATOR b field_21464 + m ()Lnet/minecraft/network/chat/Component; method_52082 a method_52082 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52083 a method_52083 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_23653 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23654 a method_23654 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_23651 a method_23651 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerPlayer;)I spectate a method_23652 + p 0 source + p 1 target + p 2 player + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_23655 a method_23655 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23656 b method_23656 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_23657 c method_23657 + m ()V + m ()V +c net/minecraft/server/commands/SpreadPlayersCommand aon net/minecraft/class_3131 + f I MAX_ITERATION_COUNT a field_33397 + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; ERROR_FAILED_TO_SPREAD_TEAMS b field_13734 + f Lcom/mojang/brigadier/exceptions/Dynamic4CommandExceptionType; ERROR_FAILED_TO_SPREAD_ENTITIES c field_13735 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INVALID_MAX_HEIGHT d field_36326 + m (Lnet/minecraft/util/RandomSource;IDDDD)[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position; createInitialPositions a method_13653 + p 0 random + p 1 count + p 2 minX + p 4 minZ + p 6 maxX + p 8 maxZ + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13654 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_29193 a method_29193 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13659 a method_13659 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec2;FFIZLjava/util/Collection;)I spreadPlayers a method_13656 + p 0 source + p 1 center + p 2 spreadDistance + p 3 maxRange + p 4 maxHeight + p 5 respectTeams + p 6 targets + m (Lnet/minecraft/world/phys/Vec2;DLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;DDDDI[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;Z)V spreadPositions a method_13661 + p 0 center + p 1 spreadDistance + p 3 level + p 4 random + p 5 minX + p 7 minZ + p 9 maxX + p 11 maxZ + p 13 maxHeight + p 14 positions + p 15 respectTeams + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_39991 a method_39991 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13660 a method_13660 + m (Ljava/util/Collection;)I getNumberOfTeams a method_13652 + c Gets the number of unique teams for the given list of entities. + p 0 entities + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;IZ)D setPlayerPositions a method_13657 + p 0 targets + p 1 level + p 2 positions + p 3 maxHeight + p 4 respectTeams + m (Z[Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;Lnet/minecraft/world/phys/Vec2;D)Lnet/minecraft/network/chat/Component; method_52084 a method_52084 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13658 b method_13658 + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13655 b method_13655 + m ()V + m ()V +c net/minecraft/server/commands/SpreadPlayersCommand$Position aon$a net/minecraft/class_3131$class_3132 + f D x a field_13737 + f D z b field_13736 + m ()V normalize a method_13671 + m (DDDD)Z clamp a method_13666 + p 1 minX + p 3 minZ + p 5 maxX + p 7 maxZ + m (Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;)D dist a method_13665 + p 1 other + m (Lnet/minecraft/util/RandomSource;DDDD)V randomize a method_13667 + p 1 random + p 2 minX + p 4 minZ + p 6 maxX + p 8 maxZ + m (Lnet/minecraft/world/level/BlockGetter;I)I getSpawnY a method_13669 + p 1 level + p 2 y + m ()D getLength b method_13668 + m (Lnet/minecraft/server/commands/SpreadPlayersCommand$Position;)V moveAway b method_13670 + p 1 other + m (Lnet/minecraft/world/level/BlockGetter;I)Z isSafe b method_13662 + p 1 level + p 2 y + m ()V +c net/minecraft/server/commands/StopCommand aoo net/minecraft/class_3134 + m ()Lnet/minecraft/network/chat/Component; method_52085 a method_52085 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13675 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13676 a method_13676 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13677 a method_13677 + m ()V +c net/minecraft/server/commands/StopSoundCommand aop net/minecraft/class_3136 + m ()Lnet/minecraft/network/chat/Component; method_52086 a method_52086 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/network/chat/Component; method_52087 a method_52087 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/network/chat/Component; method_52088 a method_52088 + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/network/chat/Component; method_52089 a method_52089 + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13684 a method_13684 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13681 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13683 a method_13683 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13682 a method_13682 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/resources/ResourceLocation;)I stopSound a method_13685 + p 0 source + p 1 targets + p 2 category + p 3 sound + m (Lnet/minecraft/sounds/SoundSource;Lcom/mojang/brigadier/context/CommandContext;)I method_13686 b method_13686 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13680 b method_13680 + m ()V +c net/minecraft/server/commands/SummonCommand aoq net/minecraft/class_3138 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_FAILED a field_13741 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_DUPLICATE_UUID b field_26629 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; INVALID_POSITION c field_22254 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52090 a method_52090 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13690 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13692 a method_13692 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13693 a method_13693 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;Z)Lnet/minecraft/world/entity/Entity; createEntity a method_48758 + p 0 source + p 1 type + p 2 pos + p 3 tag + p 4 randomizeProperties + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_48759 a method_48759 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13689 b method_13689 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;Z)I spawnEntity b method_13694 + p 0 source + p 1 type + p 2 pos + p 3 tag + p 4 randomizeProperties + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13691 c method_13691 + m ()V + m ()V +c net/minecraft/server/commands/TagCommand aor net/minecraft/class_3140 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ADD_FAILED a field_13742 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_REMOVE_FAILED b field_13743 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52091 a method_52091 + m (Lnet/minecraft/world/entity/Entity;Ljava/util/Set;)Lnet/minecraft/network/chat/Component; method_52092 a method_52092 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13698 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13704 a method_13704 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13701 a method_13701 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13705 a method_13705 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I listTags a method_13700 + p 0 source + p 1 entities + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/lang/String;)I addTag a method_13702 + p 0 source + p 1 entities + p 2 tagName + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52093 a method_52093 + m (Ljava/util/Collection;)Ljava/util/Collection; getTags a method_13706 + c Gets all tags that are present on at least one of the given entities. + p 0 entities + m (Ljava/util/Collection;Ljava/util/Set;)Lnet/minecraft/network/chat/Component; method_52094 a method_52094 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13697 b method_13697 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Ljava/lang/String;)I removeTag b method_13699 + p 0 source + p 1 entities + p 2 tagName + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52095 b method_52095 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52096 b method_52096 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13703 c method_13703 + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52097 c method_52097 + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52098 d method_52098 + m ()V + m ()V +c net/minecraft/server/commands/TeamCommand aos net/minecraft/class_3142 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_EXISTS a field_13749 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_EMPTY b field_13751 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_NAME c field_13755 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_COLOR d field_13746 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYFIRE_ENABLED e field_13753 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYFIRE_DISABLED f field_13754 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYINVISIBLES_ENABLED g field_13747 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_ALREADY_FRIENDLYINVISIBLES_DISABLED h field_13756 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_NAMETAG_VISIBLITY_UNCHANGED i field_13752 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_DEATH_MESSAGE_VISIBLITY_UNCHANGED j field_13757 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TEAM_COLLISION_UNCHANGED k field_13750 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13752 A method_13752 + m ()Lnet/minecraft/network/chat/Component; method_52099 a method_52099 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13736 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13712 a method_13712 + m (Lnet/minecraft/commands/CommandSourceStack;)I listTeams a method_13728 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I emptyTeam a method_13723 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$CollisionRule;)I setCollision a method_13713 + p 0 source + p 1 team + p 2 rule + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)I setNametagVisibility a method_13732 + p 0 source + p 1 team + p 2 visibility + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/Collection;)I joinTeam a method_13720 + p 0 source + p 1 team + p 2 players + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/ChatFormatting;)I setColor a method_13745 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setDisplayName a method_13711 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Z)I setFriendlySight a method_13751 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;)I createTeam a method_13757 + p 0 source + p 1 name + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;Lnet/minecraft/network/chat/Component;)I createTeam a method_13715 + p 0 source + p 1 name + p 2 displayName + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I leaveTeam a method_13714 + c Removes the listed players from their teams. + p 0 source + p 1 players + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52100 a method_52100 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$CollisionRule;)Lnet/minecraft/network/chat/Component; method_52101 a method_52101 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/network/chat/Component; method_52102 a method_52102 + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52103 a method_52103 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/ChatFormatting;)Lnet/minecraft/network/chat/Component; method_52104 a method_52104 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; getFirstMemberName a method_55372 + p 0 scores + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52106 a method_52106 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52107 a method_52107 + m (ZLnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52108 a method_52108 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13717 b method_13717 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13719 b method_13719 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I deleteTeam b method_13747 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)I setDeathMessageVisibility b method_13735 + p 0 source + p 1 team + p 2 visibility + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setPrefix b method_13743 + p 0 source + p 1 team + p 2 prefix + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Z)I setFriendlyFire b method_13754 + p 0 source + p 1 team + p 2 value + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52109 b method_52109 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/network/chat/Component; method_52110 b method_52110 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52105 b method_52105 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52112 b method_52112 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_52113 b method_52113 + m (ZLnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52114 b method_52114 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13724 c method_13724 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;)I listMembers c method_13748 + p 0 source + p 1 team + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/chat/Component;)I setSuffix c method_13756 + p 0 source + p 1 team + p 2 suffix + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52115 c method_52115 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52111 c method_52111 + m (Ljava/util/Collection;Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52117 c method_52117 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13739 d method_13739 + m (Lnet/minecraft/world/scores/PlayerTeam;)Lnet/minecraft/network/chat/Component; method_52118 d method_52118 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52116 d method_52116 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13733 e method_13733 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13755 f method_13755 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13750 g method_13750 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13721 h method_13721 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13730 i method_13730 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13727 j method_13727 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13742 k method_13742 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13734 l method_13734 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13740 m method_13740 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13725 n method_13725 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13729 o method_13729 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13716 p method_13716 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13718 q method_13718 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13746 r method_13746 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13738 s method_13738 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13744 t method_13744 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13731 u method_13731 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13726 v method_13726 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13722 w method_13722 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13753 x method_13753 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13749 y method_13749 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13737 z method_13737 + m ()V + m ()V +c net/minecraft/server/commands/TeamMsgCommand aot net/minecraft/class_3945 + f Lnet/minecraft/network/chat/Style; SUGGEST_STYLE a field_24380 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_ON_TEAM b field_17440 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/server/level/ServerPlayer;)Z method_45154 a method_45154 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_17600 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_17601 a method_17601 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Lnet/minecraft/network/chat/PlayerChatMessage;)V sendMessage a method_17599 + p 0 source + p 1 sender + p 2 team + p 3 teamMembers + p 4 chatMessage + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Lnet/minecraft/network/chat/PlayerChatMessage;)V method_45155 b method_45155 + m ()V + m ()V +c net/minecraft/server/commands/TeleportCommand aou net/minecraft/class_3143 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; INVALID_POSITION a field_22255 + m (D)Ljava/lang/String; formatDouble a method_36970 + p 0 value + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13760 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13769 a method_13769 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13763 a method_13763 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;DDDLjava/util/Set;FFLnet/minecraft/server/commands/TeleportCommand$LookAt;)V performTeleport a method_13766 + p 0 source + p 1 entity + p 2 level + p 3 x + p 5 y + p 7 z + p 9 relativeList + p 10 yaw + p 11 pitch + p 12 facing + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/commands/arguments/coordinates/Coordinates;Lnet/minecraft/commands/arguments/coordinates/Coordinates;Lnet/minecraft/server/commands/TeleportCommand$LookAt;)I teleportToPos a method_13765 + p 0 source + p 1 targets + p 2 level + p 3 position + p 4 rotation + p 5 facing + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)I teleportToEntity a method_13771 + p 0 source + p 1 targets + p 2 destination + m (Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52119 a method_52119 + m (Ljava/util/Collection;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/chat/Component; method_52120 a method_52120 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13758 b method_13758 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13764 b method_13764 + m (Ljava/util/Collection;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; method_52121 b method_52121 + m (Ljava/util/Collection;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/network/chat/Component; method_52122 b method_52122 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13762 c method_13762 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13767 d method_13767 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13761 e method_13761 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13759 f method_13759 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13770 g method_13770 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13768 h method_13768 + m ()V + m ()V +c net/minecraft/server/commands/TeleportCommand$LookAt aou$a net/minecraft/class_3143$class_3144 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;)V perform perform method_13772 + p 1 source + p 2 entity +c net/minecraft/server/commands/TeleportCommand$LookAtEntity aou$b net/minecraft/class_3143$class_9251 + f Lnet/minecraft/world/entity/Entity; entity a comp_2357 + f Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor b comp_2358 + m ()Lnet/minecraft/world/entity/Entity; entity a comp_2357 + m ()Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor; anchor b comp_2358 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V +c net/minecraft/server/commands/TeleportCommand$LookAtPosition aou$c net/minecraft/class_3143$class_9252 + f Lnet/minecraft/world/phys/Vec3; position a comp_2359 + m ()Lnet/minecraft/world/phys/Vec3; position a comp_2359 + m (Lnet/minecraft/world/phys/Vec3;)V +c net/minecraft/server/commands/TellRawCommand aov net/minecraft/class_3146 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13776 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13777 a method_13777 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13778 a method_13778 + m ()V +c net/minecraft/server/commands/TickCommand aow net/minecraft/class_8916 + f F MAX_TICKRATE a field_46925 + f Ljava/lang/String; DEFAULT_TICKRATE b field_46926 + m ()Lnet/minecraft/network/chat/Component; method_54684 a method_54684 + m (I)Lnet/minecraft/network/chat/Component; method_54685 a method_54685 + m (J)Ljava/lang/String; nanosToMilisString a method_54686 + p 0 nanos + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_54687 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54688 a method_54688 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54689 a method_54689 + m (Lnet/minecraft/commands/CommandSourceStack;)I tickQuery a method_54690 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;F)I setTickingRate a method_54691 + p 0 source + p 1 tickRate + m (Lnet/minecraft/commands/CommandSourceStack;I)I sprint a method_54692 + p 0 source + p 1 sprintTime + m (Lnet/minecraft/commands/CommandSourceStack;Z)I setFreeze a method_54693 + p 0 source + p 1 frozen + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54694 a method_54694 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54695 a method_54695 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_54696 a method_54696 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[J)Lnet/minecraft/network/chat/Component; method_54697 a method_54697 + m ()Lnet/minecraft/network/chat/Component; method_54698 b method_54698 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54699 b method_54699 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54700 b method_54700 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopStepping b method_54701 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;I)I step b method_54702 + p 0 source + p 1 ticks + m ()Lnet/minecraft/network/chat/Component; method_54703 c method_54703 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54704 c method_54704 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_54705 c method_54705 + m (Lnet/minecraft/commands/CommandSourceStack;)I stopSprinting c method_54706 + p 0 source + m ()Lnet/minecraft/network/chat/Component; method_54707 d method_54707 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54708 d method_54708 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_54709 d method_54709 + m ()Lnet/minecraft/network/chat/Component; method_54710 e method_54710 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54711 e method_54711 + m ()Lnet/minecraft/network/chat/Component; method_54712 f method_54712 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54713 f method_54713 + m ()Lnet/minecraft/network/chat/Component; method_55596 g method_55596 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54865 g method_54865 + m ()Lnet/minecraft/network/chat/Component; method_54714 h method_54714 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54715 h method_54715 + m ()Lnet/minecraft/network/chat/Component; method_54716 i method_54716 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_54717 i method_54717 + m ()Lnet/minecraft/network/chat/Component; method_54718 j method_54718 + m ()V + m ()V +c net/minecraft/server/commands/TimeCommand aox net/minecraft/class_3149 + m (I)Lnet/minecraft/network/chat/Component; method_52123 a method_52123 + m (Lnet/minecraft/server/level/ServerLevel;)I getDayTime a method_13787 + c Returns the day time (time wrapped within a day) + p 0 level + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13786 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13795 a method_13795 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13791 a method_13791 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setTime a method_13784 + p 0 source + p 1 time + m (I)Lnet/minecraft/network/chat/Component; method_52124 b method_52124 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13783 b method_13783 + m (Lnet/minecraft/commands/CommandSourceStack;I)I addTime b method_13788 + p 0 source + p 1 amount + m (I)Lnet/minecraft/network/chat/Component; method_52125 c method_52125 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13790 c method_13790 + m (Lnet/minecraft/commands/CommandSourceStack;I)I queryTime c method_13796 + p 0 source + p 1 time + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13793 d method_13793 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13789 e method_13789 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13785 f method_13785 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13797 g method_13797 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13794 h method_13794 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13792 i method_13792 + m ()V +c net/minecraft/server/commands/TitleCommand aoy net/minecraft/class_3151 + m (Lcom/mojang/brigadier/CommandDispatcher;Lnet/minecraft/commands/CommandBuildContext;)V register a method_13804 + p 0 dispatcher + p 1 context + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13809 a method_13809 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13810 a method_13810 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I clearTitle a method_13805 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;III)I setTimes a method_13806 + p 0 source + p 1 target + p 2 fade + p 3 stay + p 4 fadeOut + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Ljava/util/function/Function;)I showTitle a method_13802 + p 0 source + p 1 targets + p 2 title + p 3 titleType + p 4 packetGetter + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52126 a method_52126 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52127 a method_52127 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13800 b method_13800 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetTitle b method_13799 + p 0 source + p 1 targets + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52128 b method_52128 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52129 b method_52129 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13808 c method_13808 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52130 c method_52130 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13801 d method_13801 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52131 d method_52131 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13807 e method_13807 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52132 e method_52132 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13803 f method_13803 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52133 f method_52133 + m ()V +c net/minecraft/server/commands/TransferCommand aoz net/minecraft/class_9159 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYERS a field_48710 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_56522 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56523 a method_56523 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_56524 a method_56524 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/lang/String;ILjava/util/Collection;)I transfer a method_56525 + p 0 source + p 1 hostname + p 2 port + p 3 players + m (Ljava/util/Collection;Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_56526 a method_56526 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56527 b method_56527 + m (Ljava/util/Collection;Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; method_56528 b method_56528 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_56529 c method_56529 + m ()V + m ()V +c net/minecraft/server/commands/TriggerCommand apa net/minecraft/class_3153 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_PRIMED a field_13763 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_INVALID_OBJECTIVE b field_13764 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13813 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13816 a method_13816 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13814 a method_13814 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;)I simpleTrigger a method_13818 + p 0 source + p 1 player + p 2 objective + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;I)I addValue a method_13817 + p 0 source + p 1 player + p 2 objective + p 3 value + m (Lnet/minecraft/commands/CommandSourceStack;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; suggestObjectives a method_13819 + p 0 source + p 1 builder + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/network/chat/Component; method_52134 a method_52134 + m (Lnet/minecraft/world/scores/Objective;I)Lnet/minecraft/network/chat/Component; method_52135 a method_52135 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ScoreAccess; getScore a method_13821 + p 0 scoreboard + p 1 scoreHolder + p 2 objective + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13812 b method_13812 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/scores/Objective;I)I setValue b method_13820 + p 0 source + p 1 player + p 2 objective + p 3 value + m (Lnet/minecraft/world/scores/Objective;I)Lnet/minecraft/network/chat/Component; method_52136 b method_52136 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13815 c method_13815 + m ()V + m ()V +c net/minecraft/server/commands/WardenSpawnTrackerCommand apb net/minecraft/class_7240 + m (ILnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45156 a method_45156 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_42100 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42101 a method_42101 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_42102 a method_42102 + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I resetTracker a method_42103 + p 0 source + p 1 targets + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;I)I setWarningLevel a method_42104 + p 0 source + p 1 targets + p 2 warningLevel + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52137 a method_52137 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_42105 b method_42105 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52138 b method_52138 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52139 c method_52139 + m (Ljava/util/Collection;)Lnet/minecraft/network/chat/Component; method_52140 d method_52140 + m ()V +c net/minecraft/server/commands/WeatherCommand apc net/minecraft/class_3155 + f I DEFAULT_TIME a field_33398 + m ()Lnet/minecraft/network/chat/Component; method_52141 a method_52141 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13827 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13831 a method_13831 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13832 a method_13832 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setClear a method_13824 + p 0 source + p 1 time + m (Lnet/minecraft/commands/CommandSourceStack;ILnet/minecraft/util/valueproviders/IntProvider;)I getDuration a method_48087 + p 0 source + p 1 time + p 2 timeProvider + m ()Lnet/minecraft/network/chat/Component; method_52142 b method_52142 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13823 b method_13823 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setRain b method_13828 + p 0 source + p 1 time + m ()Lnet/minecraft/network/chat/Component; method_52143 c method_52143 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13830 c method_13830 + m (Lnet/minecraft/commands/CommandSourceStack;I)I setThunder c method_13833 + p 0 source + p 1 time + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13825 d method_13825 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13829 e method_13829 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13826 f method_13826 + m ()V +c net/minecraft/server/commands/WhitelistCommand apd net/minecraft/class_3156 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_ENABLED a field_13767 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_DISABLED b field_13770 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_ALREADY_WHITELISTED c field_13768 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_WHITELISTED d field_13769 + m ()Lnet/minecraft/network/chat/Component; method_52144 a method_52144 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/lang/String; method_13844 a method_13844 + m (Lnet/minecraft/server/players/PlayerList;Lnet/minecraft/server/level/ServerPlayer;)Z method_13841 a method_13841 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52145 a method_52145 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13836 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13851 a method_13851 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13849 a method_13849 + m (Lnet/minecraft/commands/CommandSourceStack;)I reload a method_13850 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I addPlayers a method_13838 + p 0 source + p 1 players + m ([Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_52146 a method_52146 + m ()Lnet/minecraft/network/chat/Component; method_52147 b method_52147 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; method_52148 b method_52148 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13834 b method_13834 + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_13848 b method_13848 + m (Lnet/minecraft/commands/CommandSourceStack;)I enableWhitelist b method_13839 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;Ljava/util/Collection;)I removePlayers b method_13845 + p 0 source + p 1 players + m ()Lnet/minecraft/network/chat/Component; method_52149 c method_52149 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13843 c method_13843 + m (Lnet/minecraft/commands/CommandSourceStack;)I disableWhitelist c method_13837 + p 0 source + m ()Lnet/minecraft/network/chat/Component; method_52150 d method_52150 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13846 d method_13846 + m (Lnet/minecraft/commands/CommandSourceStack;)I showList d method_13840 + p 0 source + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13842 e method_13842 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13847 e method_13847 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13835 f method_13835 + m ()V + m ()V +c net/minecraft/server/commands/WorldBorderCommand ape net/minecraft/class_3158 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_CENTER a field_13775 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_SIZE b field_13780 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_SMALL c field_13776 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_BIG d field_13779 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_TOO_FAR_OUT e field_36188 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_WARNING_TIME f field_13773 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_WARNING_DISTANCE g field_13777 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_DAMAGE_BUFFER h field_13778 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_SAME_DAMAGE_AMOUNT i field_13774 + m (D)Lnet/minecraft/network/chat/Component; method_52151 a method_52151 + m (DJ)Lnet/minecraft/network/chat/Component; method_52152 a method_52152 + m (F)Lnet/minecraft/network/chat/Component; method_52153 a method_52153 + m (I)Lnet/minecraft/network/chat/Component; method_52154 a method_52154 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13858 + p 0 dispatcher + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13870 a method_13870 + m (Lnet/minecraft/commands/CommandSourceStack;)I getSize a method_13868 + p 0 source + m (Lnet/minecraft/commands/CommandSourceStack;DJ)I setSize a method_13854 + p 0 source + p 1 newSize + p 3 time + m (Lnet/minecraft/commands/CommandSourceStack;F)I setDamageBuffer a method_13865 + p 0 source + p 1 distance + m (Lnet/minecraft/commands/CommandSourceStack;I)I setWarningTime a method_13856 + p 0 source + p 1 time + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/phys/Vec2;)I setCenter a method_13869 + p 0 source + p 1 pos + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/network/chat/Component; method_52155 a method_52155 + m (D)Lnet/minecraft/network/chat/Component; method_52156 b method_52156 + m (DJ)Lnet/minecraft/network/chat/Component; method_52157 b method_52157 + m (F)Lnet/minecraft/network/chat/Component; method_52158 b method_52158 + m (I)Lnet/minecraft/network/chat/Component; method_52159 b method_52159 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13855 b method_13855 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13862 b method_13862 + m (Lnet/minecraft/commands/CommandSourceStack;F)I setDamageAmount b method_13863 + p 0 source + p 1 damagePerBlock + m (Lnet/minecraft/commands/CommandSourceStack;I)I setWarningDistance b method_13859 + p 0 source + p 1 distance + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13861 c method_13861 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13866 d method_13866 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13860 e method_13860 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13857 f method_13857 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13872 g method_13872 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13867 h method_13867 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13864 i method_13864 + m (Lcom/mojang/brigadier/context/CommandContext;)I method_13871 j method_13871 + m ()V + m ()V +c net/minecraft/server/commands/data/BlockDataAccessor apf net/minecraft/class_3161 + f Ljava/util/function/Function; PROVIDER a field_13786 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NOT_A_BLOCK_ENTITY b field_13785 + f Lnet/minecraft/world/level/block/entity/BlockEntity; entity c field_13784 + f Lnet/minecraft/core/BlockPos; pos d field_13783 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13878 a method_13878 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/BlockPos;)V + p 1 entity + p 2 pos + m ()V +c net/minecraft/server/commands/data/BlockDataAccessor$1 apf$1 net/minecraft/class_3161$1 + f Ljava/lang/String; val$argPrefix a field_13787 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/DataAccessor apg net/minecraft/class_3162 + m ()Lnet/minecraft/nbt/CompoundTag; getData a method_13881 + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;DI)Lnet/minecraft/network/chat/Component; getPrintSuccess a method_13879 + c Gets the message used as a result of querying the given path with a scale. + p 1 path + p 2 scale + p 4 value + m (Lnet/minecraft/nbt/CompoundTag;)V setData a method_13880 + p 1 other + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; getPrintSuccess a method_13882 + c Gets the message used as a result of querying the given NBT (both for /data get and /data get path) + p 1 nbt + m ()Lnet/minecraft/network/chat/Component; getModifiedSuccess b method_13883 +c net/minecraft/server/commands/data/DataCommands aph net/minecraft/class_3164 + f Ljava/util/List; ALL_PROVIDERS a field_13790 + f Ljava/util/List; TARGET_PROVIDERS b field_13798 + f Ljava/util/List; SOURCE_PROVIDERS c field_13792 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MERGE_UNCHANGED d field_13796 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GET_NOT_NUMBER e field_13791 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_GET_NON_EXISTENT f field_13793 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_MULTIPLE_TAGS g field_13794 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_OBJECT h field_13797 + f Lcom/mojang/brigadier/exceptions/DynamicCommandExceptionType; ERROR_EXPECTED_VALUE i field_41747 + f Lcom/mojang/brigadier/exceptions/Dynamic2CommandExceptionType; ERROR_INVALID_SUBSTRING j field_44916 + m (II)I getOffset a method_51824 + p 0 index + p 1 length + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52160 a method_52160 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;DI)Lnet/minecraft/network/chat/Component; method_52161 a method_52161 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/network/chat/Component; method_52162 a method_52162 + m (Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/network/chat/Component; method_52163 a method_52163 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13899 a method_13899 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48088 a method_48088 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48089 a method_48089 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lcom/mojang/brigadier/context/CommandContext;)I method_13900 a method_13900 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_48090 a method_48090 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13923 a method_13923 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13912 a method_13912 + m (Lcom/mojang/brigadier/CommandDispatcher;)V register a method_13905 + p 0 dispatcher + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Lnet/minecraft/server/commands/data/DataCommands$DataManipulatorDecorator;)V method_13895 a method_13895 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)Ljava/util/List; getSingletonSource a method_48091 + p 0 context + p 1 dataProvider + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Ljava/util/List;)I manipulateData a method_13920 + p 0 source + p 1 dataProvider + p 2 dataManipulator + p 3 tags + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48092 a method_48092 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47952 a method_47952 + m (Lnet/minecraft/commands/CommandSourceStack;)Z method_13890 a method_13890 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;)I getData a method_13908 + c Gets all NBT on the object, and applies syntax highlighting.\n\n@return 1 + p 0 source + p 1 accessor + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I removeData a method_13885 + c Removes the tag at the end of the path.\n\n@return 1 + p 0 source + p 1 accessor + p 2 path + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;D)I getNumeric a method_13903 + c Gets a single numeric element, scaled by the given amount.\n\n@return The element's value, scaled by scale. + p 0 source + p 1 accessor + p 2 path + p 3 scale + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/nbt/CompoundTag;)I mergeData a method_13901 + c Merges the given NBT into the targeted object's NBT.\n\n@return 1 + p 0 source + p 1 accessor + p 2 nbt + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/nbt/Tag; getSingleTag a method_13921 + p 0 path + p 1 accessor + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_48093 a method_48093 + m (Ljava/lang/Object;Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_52164 a method_52164 + m (Ljava/lang/String;)Ljava/lang/String; method_48094 a method_48094 + m (Ljava/lang/String;I)Ljava/lang/String; substring a method_51825 + p 0 source + p 1 start + m (Ljava/lang/String;II)Ljava/lang/String; validatedSubstring a method_52165 + p 0 source + p 1 start + p 2 end + m (Ljava/util/List;Lnet/minecraft/server/commands/data/DataCommands$StringProcessor;)Ljava/util/List; stringifyTagList a method_48095 + p 0 tagList + p 1 processor + m (Ljava/util/function/BiConsumer;)Lcom/mojang/brigadier/builder/ArgumentBuilder; decorateModification a method_13898 + p 0 decorator + m (Ljava/util/function/BiConsumer;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13922 a method_13922 + m (Ljava/util/function/Function;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13906 a method_13906 + m (Lnet/minecraft/nbt/Tag;)Ljava/lang/String; getAsText a method_48096 + p 0 tag + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52166 b method_52166 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13893 b method_13893 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48097 b method_48097 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13911 b method_13911 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13889 b method_13889 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13886 b method_13886 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;)Ljava/util/List; resolveSourcePath b method_48098 + p 0 context + p 1 dataProvider + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)Ljava/lang/String; method_48099 b method_48099 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_13888 b method_13888 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/server/commands/data/DataAccessor;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)I getData b method_13916 + c Gets a value, which can be of any known NBT type.\n\n@return The value associated with the element: length for strings, size for lists and compounds, and numeric value for primitives. + p 0 source + p 1 accessor + p 2 path + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13907 b method_13907 + m (Ljava/lang/String;)Ljava/lang/String; method_48100 b method_48100 + m (Ljava/lang/String;II)Ljava/lang/String; substring b method_51826 + p 0 source + p 1 start + p 2 end + m (Ljava/util/function/Function;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13919 b method_13919 + m (Lnet/minecraft/server/commands/data/DataAccessor;)Lnet/minecraft/network/chat/Component; method_52167 c method_52167 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48101 c method_48101 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/builder/ArgumentBuilder;)Lcom/mojang/brigadier/builder/ArgumentBuilder; method_13896 c method_13896 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13904 c method_13904 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47953 c method_47953 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13892 c method_13892 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48102 d method_48102 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13909 d method_13909 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_47954 d method_47954 + m (Ljava/lang/Object;)Lcom/mojang/brigadier/Message; method_13902 d method_13902 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48103 e method_48103 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_13887 e method_13887 + m (Lcom/mojang/brigadier/context/CommandContext;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)I method_13891 e method_13891 + m (Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lnet/minecraft/server/commands/data/DataCommands$DataManipulator;Lnet/minecraft/server/commands/data/DataCommands$DataProvider;Lcom/mojang/brigadier/context/CommandContext;)I method_48104 f method_48104 + m ()V + m ()V +c net/minecraft/server/commands/data/DataCommands$DataManipulator aph$a net/minecraft/class_3164$class_3165 +c net/minecraft/server/commands/data/DataCommands$DataManipulatorDecorator aph$b net/minecraft/class_3164$class_3166 +c net/minecraft/server/commands/data/DataCommands$DataProvider aph$c net/minecraft/class_3164$class_3167 + m (Lcom/mojang/brigadier/builder/ArgumentBuilder;Ljava/util/function/Function;)Lcom/mojang/brigadier/builder/ArgumentBuilder; wrap a method_13925 + c Creates an argument used for accessing data related to this type of thing, including a literal to distinguish from other types. + p 1 builder + p 2 action + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/server/commands/data/DataAccessor; access a method_13924 + c Creates an accessor based on the command context. This should only refer to arguments registered in {@link createArgument}. + p 1 context +c net/minecraft/server/commands/data/DataCommands$StringProcessor aph$d net/minecraft/class_3164$class_8569 +c net/minecraft/server/commands/data/EntityDataAccessor api net/minecraft/class_3169 + f Ljava/util/function/Function; PROVIDER a field_13800 + f Lcom/mojang/brigadier/exceptions/SimpleCommandExceptionType; ERROR_NO_PLAYERS b field_13799 + f Lnet/minecraft/world/entity/Entity; entity c field_13801 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_13927 a method_13927 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m ()V +c net/minecraft/server/commands/data/EntityDataAccessor$1 api$1 net/minecraft/class_3169$1 + f Ljava/lang/String; val$arg a field_13802 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/StorageDataAccessor apj net/minecraft/class_4580 + f Ljava/util/function/Function; PROVIDER a field_20855 + f Lcom/mojang/brigadier/suggestion/SuggestionProvider; SUGGEST_STORAGE b field_20856 + f Lnet/minecraft/world/level/storage/CommandStorage; storage c field_20857 + f Lnet/minecraft/resources/ResourceLocation; id d field_20858 + m (Lcom/mojang/brigadier/context/CommandContext;)Lnet/minecraft/world/level/storage/CommandStorage; getGlobalTags a method_22842 + p 0 context + m (Lcom/mojang/brigadier/context/CommandContext;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; method_22840 a method_22840 + m (Ljava/lang/String;)Lnet/minecraft/server/commands/data/DataCommands$DataProvider; method_22841 a method_22841 + m (Lnet/minecraft/world/level/storage/CommandStorage;Lnet/minecraft/resources/ResourceLocation;)V + p 1 storage + p 2 id + m ()V +c net/minecraft/server/commands/data/StorageDataAccessor$1 apj$1 net/minecraft/class_4580$1 + f Ljava/lang/String; val$arg a field_20859 + m (Ljava/lang/String;)V +c net/minecraft/server/commands/data/package-info apk net/minecraft/class_5974 +c net/minecraft/server/commands/package-info apl net/minecraft/class_5975 +c net/minecraft/server/dedicated/DedicatedPlayerList apm net/minecraft/class_3174 + f Lorg/slf4j/Logger; LOGGER h field_13804 + m ()V loadOps A method_13934 + m ()V saveOps B method_13935 + m ()V loadWhiteList C method_13936 + m ()V saveWhiteList D method_13937 + m ()Lnet/minecraft/server/dedicated/DedicatedServer; getServer b method_13938 + m ()V saveIpBanList w method_13932 + m ()V saveUserBanList x method_13930 + m ()V loadIpBanList y method_13931 + m ()V loadUserBanList z method_13933 + m (Lnet/minecraft/server/dedicated/DedicatedServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;)V + p 1 server + p 2 registries + p 3 playerIo + m ()V +c net/minecraft/server/dedicated/DedicatedServer apn net/minecraft/class_3176 + f Lorg/slf4j/Logger; LOGGER k field_13814 + f I CONVERSION_RETRY_DELAY_MS l field_29662 + f I CONVERSION_RETRIES m field_29663 + f Ljava/util/List; consoleInput n field_13815 + f Lnet/minecraft/server/rcon/thread/QueryThreadGs4; queryThreadGs4 o field_13816 + f Lnet/minecraft/server/rcon/RconConsoleSource; rconConsoleSource p field_13811 + f Lnet/minecraft/server/rcon/thread/RconThread; rconThread q field_13819 + f Lnet/minecraft/server/dedicated/DedicatedServerSettings; settings r field_16799 + f Lnet/minecraft/server/gui/MinecraftServerGui; gui s field_16800 + f Lnet/minecraft/server/network/TextFilterClient; textFilterClient t field_26898 + f Lnet/minecraft/util/debugchart/RemoteSampleLogger; tickTimeLogger u field_48788 + f Lnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker; debugSampleSubscriptionTracker v field_48789 + f Lnet/minecraft/server/ServerLinks; serverLinks w field_52215 + m (ILnet/minecraft/server/dedicated/DedicatedServerProperties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; method_16710 a method_16710 + m (Lnet/minecraft/server/dedicated/DedicatedServerProperties;)Ljava/util/Optional; parseBugReportLink a method_60939 + p 0 properties + m (Lnet/minecraft/server/dedicated/DedicatedServerSettings;)Lnet/minecraft/server/ServerLinks; createServerLinks a method_60940 + p 0 settings + m (Ljava/lang/String;Lnet/minecraft/commands/CommandSourceStack;)V handleConsoleInput a method_13947 + p 1 msg + p 2 source + m (Ljava/net/URI;)Lnet/minecraft/server/ServerLinks; method_60941 a method_60941 + m (ZLnet/minecraft/server/dedicated/DedicatedServerProperties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; method_16711 a method_16711 + m ()V waitForRetry bD method_13942 + m ()Ljava/lang/String; method_13943 bE method_13943 + m ()Ljava/lang/String; method_13946 bF method_13946 + m ()V handleConsoleInputs br method_13941 + m ()Lnet/minecraft/server/dedicated/DedicatedPlayerList; getPlayerList bs method_13949 + m ()V showGui bt method_13948 + m ()Z convertOldUsers bu method_13951 + m ()J getMaxTickLength bv method_13944 + m (Ljava/lang/String;)V method_20799 e method_20799 + m (Z)V storeUsingWhiteList i method_16712 + p 1 isStoreUsingWhiteList + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 settings + p 6 fixerUpper + p 7 services + p 8 progressListenerFactory + m ()V +c net/minecraft/server/dedicated/DedicatedServer$1 apn$1 net/minecraft/class_3176$1 + f Lnet/minecraft/server/dedicated/DedicatedServer; field_13822 a field_13822 + m (Lnet/minecraft/server/dedicated/DedicatedServer;Ljava/lang/String;)V +c net/minecraft/server/dedicated/DedicatedServerProperties apo net/minecraft/class_3806 + f I spawnProtection A field_16816 + f I opPermissionLevel B field_16845 + f I functionPermissionLevel C field_20324 + f J maxTickTime D field_16815 + f I maxChainedNeighborUpdates E field_37275 + f I rateLimitPacketsPerSecond F field_25802 + f I viewDistance G field_16844 + f I simulationDistance H field_34883 + f I maxPlayers I field_16814 + f I networkCompressionThreshold J field_16842 + f Z broadcastRconToOps K field_16824 + f Z broadcastConsoleToOps L field_16802 + f I maxWorldSize M field_16812 + f Z syncChunkWrites N field_23785 + f Ljava/lang/String; regionFileComression O field_48711 + f Z enableJmxMonitoring P field_24056 + f Z enableStatus Q field_24453 + f Z hideOnlinePlayers R field_35564 + f I entityBroadcastRangePercentage S field_24454 + f Ljava/lang/String; textFilteringConfig T field_26899 + f Ljava/util/Optional; serverResourcePackInfo U field_39093 + f Lnet/minecraft/world/level/DataPackConfig; initialDataPackConfiguration V field_39981 + f Lnet/minecraft/server/dedicated/Settings$MutableValue; playerIdleTimeout W field_16817 + f Lnet/minecraft/server/dedicated/Settings$MutableValue; whiteList X field_16804 + f Z enforceSecureProfile Y field_39018 + f Z logIPs Z field_44985 + f Z onlineMode a field_16813 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions aa field_24623 + f Z acceptsTransfers ab field_48270 + f Lorg/slf4j/Logger; LOGGER ad field_37276 + f Ljava/util/regex/Pattern; SHA1 ae field_39094 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER af field_39982 + f Lnet/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData; worldDimensionData ag field_39983 + f Z preventProxyConnections b field_16839 + f Ljava/lang/String; serverIp c field_16829 + f Z spawnAnimals d field_16836 + f Z spawnNpcs e field_16809 + f Z pvp f field_16833 + f Z allowFlight g field_16807 + f Ljava/lang/String; motd h field_16825 + f Ljava/lang/String; bugReportLink i field_51987 + f Z forceGameMode j field_16827 + f Z enforceWhitelist k field_16805 + f Lnet/minecraft/world/Difficulty; difficulty l field_16840 + f Lnet/minecraft/world/level/GameType; gamemode m field_16841 + f Ljava/lang/String; levelName n field_16820 + f I serverPort o field_16837 + f Ljava/lang/Boolean; announcePlayerAchievements p field_16830 + f Z enableQuery q field_16819 + f I queryPort r field_16831 + f Z enableRcon s field_16818 + f I rconPort t field_16828 + f Ljava/lang/String; rconPassword u field_16823 + f Z hardcore v field_16838 + f Z allowNether w field_16811 + f Z spawnMonsters x field_16835 + f Z useNativeTransport y field_16832 + f Z enableCommandBlock z field_16806 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_27905 a method_27905 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ZLjava/lang/String;)Ljava/util/Optional; getServerPackInfo a method_43660 + p 0 id + p 1 url + p 2 sha1 + p 3 hash + p 4 isRequired + p 5 promptJson + m (Ljava/nio/file/Path;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; fromFile a method_16714 + p 0 path + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; createDimensions a method_45157 + p 1 registryAccess + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/Properties;)Lnet/minecraft/server/dedicated/DedicatedServerProperties; reload a method_16713 + p 1 registryAccess + p 2 properties + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_16715 b method_16715 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/DataPackConfig; getDatapackConfig b method_45159 + p 0 initalEnabledPacks + p 1 initialDisabledPacks + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; parseResourcePackPrompt c method_43661 + p 0 json + m (Ljava/lang/String;)Ljava/lang/String; method_41005 d method_41005 + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; method_41186 e method_41186 + m (Ljava/util/Properties;)V + p 1 properties + m ()V +c net/minecraft/server/dedicated/DedicatedServerProperties$WorldDimensionData apo$a net/minecraft/class_3806$class_7044 + f Lcom/google/gson/JsonObject; generatorSettings a comp_459 + f Ljava/lang/String; levelType b comp_461 + f Ljava/util/Map; LEGACY_PRESET_NAMES c field_37277 + m ()Lcom/google/gson/JsonObject; generatorSettings a comp_459 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_41244 a method_41244 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder$Reference; method_45161 a method_45161 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_41241 a method_41241 + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; create a method_41242 + p 1 registryAccess + m ()Ljava/lang/String; levelType b comp_461 + m ()Ljava/util/Optional; method_41245 c method_41245 + m ()Ljava/lang/IllegalStateException; method_41246 d method_41246 + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)V + m ()V +c net/minecraft/server/dedicated/DedicatedServerSettings app net/minecraft/class_3807 + f Ljava/nio/file/Path; source a field_16846 + f Lnet/minecraft/server/dedicated/DedicatedServerProperties; properties b field_16847 + m ()Lnet/minecraft/server/dedicated/DedicatedServerProperties; getProperties a method_16717 + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/server/dedicated/DedicatedServerSettings; update a method_16718 + p 1 propertiesOperator + m ()V forceSave b method_16719 + m (Ljava/nio/file/Path;)V + p 1 source +c net/minecraft/server/dedicated/ServerWatchdog apq net/minecraft/class_3178 + f Lorg/slf4j/Logger; LOGGER a field_13825 + f J MAX_SHUTDOWN_TIME b field_29664 + f I SHUTDOWN_STATUS c field_29665 + f Lnet/minecraft/server/dedicated/DedicatedServer; server d field_13823 + f J maxTickTimeNanos e field_46927 + m ()V exit a method_13954 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/lang/String; method_31376 a method_31376 + m ()Ljava/lang/String; method_31377 b method_31377 + m ()Ljava/lang/String; method_31378 c method_31378 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)V + p 1 server + m ()V +c net/minecraft/server/dedicated/ServerWatchdog$1 apq$1 net/minecraft/class_3178$1 + m (Lnet/minecraft/server/dedicated/ServerWatchdog;)V +c net/minecraft/server/dedicated/Settings apr net/minecraft/class_3808 + f Lorg/slf4j/Logger; LOGGER a field_16849 + f Ljava/util/Properties; properties ac field_16848 + m ()Ljava/util/Properties; cloneProperties a method_16723 + m (Ljava/lang/String;)Ljava/lang/String; getLegacyString a method_16738 + p 1 key + m (Ljava/lang/String;I)I get a method_16726 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;J)J get a method_16725 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; get a method_16732 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;)Ljava/lang/Object; getLegacy a method_16742 + p 1 key + p 2 serializer + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16737 + p 1 key + p 2 mapper + p 3 value + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16741 + p 1 key + p 2 serializer + p 3 deserializer + p 4 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; get a method_16735 + p 1 key + p 2 serializer + p 3 modifier + p 4 deserializer + p 5 defaultValue + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;I)I get a method_16720 + p 1 key + p 2 modifier + p 3 defaultValue + m (Ljava/lang/String;Z)Z get a method_16740 + p 1 key + p 2 defaultValue + m (Ljava/util/function/Function;)Ljava/util/function/Function; wrapNumberDeserializer a method_16721 + p 0 parseFunc + m (Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Number; method_16733 a method_16733 + m (Ljava/util/function/Function;Ljava/util/function/UnaryOperator;Ljava/lang/String;)Ljava/lang/Object; method_16731 a method_16731 + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;)Ljava/util/function/Function; dispatchNumberOrString a method_16722 + p 0 byId + p 1 byName + m (Ljava/util/function/IntFunction;Ljava/util/function/Function;Ljava/lang/String;)Ljava/lang/Object; method_16729 a method_16729 + m (Ljava/lang/String;)Ljava/lang/Boolean; getLegacyBoolean b method_16736 + p 1 key + m (Ljava/lang/String;I)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16743 + p 1 key + p 2 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16730 + p 1 key + p 2 serializer + p 3 defaultValue + m (Ljava/lang/String;Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16724 + p 1 key + p 2 serializer + p 3 deserializer + p 4 defaultValue + m (Ljava/lang/String;Z)Lnet/minecraft/server/dedicated/Settings$MutableValue; getMutable b method_16744 + p 1 key + p 2 defaultValue + m (Ljava/nio/file/Path;)Ljava/util/Properties; loadFromFile b method_16727 + p 0 path + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/Properties;)Lnet/minecraft/server/dedicated/Settings; reload b method_16739 + p 1 registryAccess + p 2 properties + m (Ljava/lang/String;)Ljava/lang/String; getStringRaw c method_16734 + p 1 key + m (Ljava/nio/file/Path;)V store c method_16728 + p 1 path + m (Ljava/util/Properties;)V + p 1 properties + m ()V +c net/minecraft/server/dedicated/Settings$MutableValue apr$a net/minecraft/class_3808$class_3809 + f Lnet/minecraft/server/dedicated/Settings; field_16853 a field_16853 + f Ljava/lang/String; key b field_16852 + f Ljava/lang/Object; value c field_16850 + f Ljava/util/function/Function; serializer d field_16851 + m (Lnet/minecraft/core/RegistryAccess;Ljava/lang/Object;)Lnet/minecraft/server/dedicated/Settings; update a method_16745 + p 1 registryAccess + p 2 newValue + m (Lnet/minecraft/server/dedicated/Settings;Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;)V + p 2 key + p 3 value + p 4 serializer +c net/minecraft/server/dedicated/package-info aps net/minecraft/class_5976 +c net/minecraft/server/gui/MinecraftServerGui apt net/minecraft/class_3182 + f Ljava/awt/Font; MONOSPACED a field_13837 + f Lorg/slf4j/Logger; LOGGER b field_13840 + f Ljava/lang/String; TITLE c field_29666 + f Ljava/lang/String; SHUTDOWN_TITLE d field_29667 + f Lnet/minecraft/server/dedicated/DedicatedServer; server e field_13839 + f Ljava/lang/Thread; logAppenderThread f field_13838 + f Ljava/util/Collection; finalizers g field_16855 + f Ljava/util/concurrent/atomic/AtomicBoolean; isClosing h field_16854 + m ()V start a method_13974 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)Lnet/minecraft/server/gui/MinecraftServerGui; showFrameFor a method_13969 + p 0 server + m (Ljava/lang/Runnable;)V addFinalizer a method_16746 + p 1 finalizer + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;)V method_13972 a method_13972 + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;Ljava/lang/String;)V print a method_13970 + p 1 textArea + p 2 scrollPane + p 3 line + m (Ljavax/swing/JTextField;Ljava/awt/event/ActionEvent;)V method_13977 a method_13977 + m ()V close b method_16750 + m (Ljavax/swing/JTextArea;Ljavax/swing/JScrollPane;Ljava/lang/String;)V method_13971 b method_13971 + m ()Ljavax/swing/JComponent; buildInfoPanel c method_13976 + c Generates new StatsComponent and returns it. + m ()Ljavax/swing/JComponent; buildPlayerPanel d method_13975 + c Generates new PlayerListComponent and returns it. + m ()Ljavax/swing/JComponent; buildChatPanel e method_13973 + m ()V runFinalizers f method_16747 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)V + p 1 server + m ()V +c net/minecraft/server/gui/MinecraftServerGui$1 apt$1 net/minecraft/class_3182$1 + f Lnet/minecraft/server/gui/MinecraftServerGui; val$gui a field_16857 + f Ljavax/swing/JFrame; val$frame b field_16856 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$server c field_13841 + m (Lnet/minecraft/server/gui/MinecraftServerGui;Ljavax/swing/JFrame;Lnet/minecraft/server/dedicated/DedicatedServer;)V +c net/minecraft/server/gui/MinecraftServerGui$2 apt$2 net/minecraft/class_3182$2 + m (Lnet/minecraft/server/gui/MinecraftServerGui;)V +c net/minecraft/server/gui/PlayerListComponent apu net/minecraft/class_3184 + f Lnet/minecraft/server/MinecraftServer; server a field_13844 + f I tickCount b field_13843 + m ()V tick a method_18700 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server +c net/minecraft/server/gui/StatsComponent apv net/minecraft/class_3186 + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_13846 + f [I values b field_13845 + f I vp c field_13848 + f [Ljava/lang/String; msgs d field_13847 + f Lnet/minecraft/server/MinecraftServer; server e field_13849 + f Ljavax/swing/Timer; timer f field_16858 + m ()V close a method_16751 + m (Ljava/awt/event/ActionEvent;)V method_13983 a method_13983 + m (Ljava/text/DecimalFormat;)V method_13981 a method_13981 + m ()V tick b method_13982 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/gui/package-info apw net/minecraft/class_5977 +c net/minecraft/server/level/BlockDestructionProgress apx net/minecraft/class_3191 + f I id a field_13859 + f Lnet/minecraft/core/BlockPos; pos b field_13860 + f I progress c field_13858 + f I updatedRenderTick d field_13857 + m ()I getId a method_34868 + m (I)V setProgress a method_13987 + c Inserts damage value into this partially destroyed Block. -1 causes client renderer to delete it, otherwise ranges from 1 to 10. + p 1 damage + m (Lnet/minecraft/server/level/BlockDestructionProgress;)I compareTo a method_23269 + p 1 other + m ()Lnet/minecraft/core/BlockPos; getPos b method_13991 + m (I)V updateTick b method_13989 + c Saves the current Cloud update tick into the PartiallyDestroyedBlock. + p 1 createdAtCloudUpdateTick + m ()I getProgress c method_13988 + m ()I getUpdatedRenderTick d method_13990 + c Retrieves the 'date' at which the PartiallyDestroyedBlock was created. + m (ILnet/minecraft/core/BlockPos;)V + p 1 id + p 2 pos +c net/minecraft/server/level/ChunkGenerationTask apy net/minecraft/class_9759 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a field_51850 + f Lnet/minecraft/server/level/GeneratingChunkMap; chunkMap b field_51851 + f Lnet/minecraft/world/level/ChunkPos; pos c field_51852 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; scheduledStatus d field_51853 + f Z markedForCancellation e field_51854 + f Ljava/util/List; scheduledLayer f field_51855 + f Lnet/minecraft/util/StaticCache2D; cache g field_51856 + f Z needsGeneration h field_51857 + m ()Ljava/util/concurrent/CompletableFuture; runUntilWait a method_60424 + m (Lnet/minecraft/server/level/GeneratingChunkMap;II)Lnet/minecraft/server/level/GenerationChunkHolder; method_60425 a method_60425 + m (Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/server/level/ChunkGenerationTask; create a method_60426 + p 0 chunkMap + p 1 targetStatus + p 2 pos + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Z)V scheduleLayer a method_60427 + p 1 status + p 2 needsGeneration + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;ZLnet/minecraft/server/level/GenerationChunkHolder;)Z scheduleChunkInLayer a method_60428 + p 1 status + p 2 needsGeneration + p 3 chunk + m ()V markForCancellation b method_60429 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Z)I getRadiusForLayer b method_60430 + p 1 status + p 2 needsGeneration + m ()Lnet/minecraft/server/level/GenerationChunkHolder; getCenter c method_60431 + m ()V scheduleNextLayer d method_60432 + m ()V releaseClaim e method_60433 + m ()Z canLoadWithoutGeneration f method_60434 + m ()Ljava/util/concurrent/CompletableFuture; waitForScheduledLayer g method_60435 + m (Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/util/StaticCache2D;)V + p 1 chunkMap + p 2 targetStatus + p 3 pos + p 4 cache +c net/minecraft/server/level/ChunkHolder apz net/minecraft/class_3193 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_LEVEL_CHUNK a field_16427 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_LEVEL_CHUNK_FUTURE e field_16429 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor f field_26929 + f Ljava/util/concurrent/CompletableFuture; fullChunkFuture g field_16431 + c A future that returns the chunk if it is a border chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f Ljava/util/concurrent/CompletableFuture; tickingChunkFuture h field_19333 + c A future that returns the chunk if it is a ticking chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f Ljava/util/concurrent/CompletableFuture; entityTickingChunkFuture i field_13865 + c A future that returns the chunk if it is an entity ticking chunk, {@link net.minecraft.world.server.ChunkHolder.ChunkLoadingFailure#UNLOADED} otherwise. + f I oldTicketLevel j field_16432 + f I ticketLevel k field_13862 + f I queueLevel l field_17208 + f Z hasChangedSections m field_25803 + f [Lit/unimi/dsi/fastutil/shorts/ShortSet; changedBlocksPerSection n field_25804 + f Ljava/util/BitSet; blockChangedLightSectionFilter o field_13871 + f Ljava/util/BitSet; skyChangedLightSectionFilter p field_13870 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine q field_13863 + f Lnet/minecraft/server/level/ChunkHolder$LevelChangeListener; onLevelChange r field_17209 + f Lnet/minecraft/server/level/ChunkHolder$PlayerProvider; playerProvider s field_17210 + f Z wasAccessibleSinceLastSave t field_19238 + f Ljava/util/concurrent/CompletableFuture; pendingFullStateConfirmation u field_26930 + f Ljava/util/concurrent/CompletableFuture; sendSync v field_46085 + f Ljava/util/concurrent/CompletableFuture; saveSync w field_51858 + m ()Ljava/util/concurrent/CompletableFuture; getTickingChunkFuture a method_16145 + m (I)V setTicketLevel a method_15890 + p 1 level + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)V demoteFullChunk a method_31408 + p 1 chunkMap + p 2 fullChunkStatus + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/Executor;Lnet/minecraft/server/level/FullChunkStatus;)V scheduleFullChunkPromotion a method_31409 + p 1 chunkMap + p 2 future + p 3 executor + p 4 fullChunkStatus + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/Executor;)V updateFutures a method_14007 + p 1 chunkMap + p 2 executor + m (Lnet/minecraft/world/level/LightLayer;I)V sectionLightChanged a method_14012 + p 1 type + p 2 sectionY + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V broadcastChanges a method_14006 + p 1 chunk + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_39966 a method_39966 + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V broadcastBlockEntity a method_14009 + p 1 players + p 2 level + p 3 pos + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V broadcastBlockEntityIfNeeded a method_30311 + p 1 players + p 2 level + p 3 pos + p 4 state + m (Ljava/util/List;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_13992 + p 1 players + p 2 packet + m (Ljava/util/concurrent/CompletableFuture;)V addSendDependency a method_53680 + p 1 dependency + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/server/level/ChunkResult;)V method_57117 a method_57117 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_31410 a method_31410 + m (Lnet/minecraft/core/BlockPos;)V blockChanged a method_14002 + p 1 pos + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/server/level/ServerPlayer;)V method_13996 a method_13996 + m ()Ljava/util/concurrent/CompletableFuture; getEntityTickingChunkFuture b method_14003 + m (I)V setQueueLevel b method_17207 + p 1 queueLevel + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/FullChunkStatus;)V method_31412 b method_31412 + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_53679 b method_53679 + m (Ljava/util/List;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_30312 b method_30312 + m (Ljava/util/concurrent/CompletableFuture;)V addSaveDependency b method_39967 + p 1 dependency + m ()Ljava/util/concurrent/CompletableFuture; getFullChunkFuture c method_20725 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getTickingChunk d method_16144 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getChunkToSend e method_53682 + m ()Ljava/util/concurrent/CompletableFuture; getSendSyncFuture f method_53681 + m ()Ljava/util/concurrent/CompletableFuture; getSaveSyncFuture g method_14000 + m ()Z isReadyForSaving h method_60436 + m ()Z wasAccessibleSinceLastSave k method_20384 + m ()V refreshAccessibility l method_20385 + m (Lnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/server/level/ChunkHolder$LevelChangeListener;Lnet/minecraft/server/level/ChunkHolder$PlayerProvider;)V + p 1 pos + p 2 ticketLevel + p 3 levelHeightAccessor + p 4 lightEngine + p 5 onLevelChange + p 6 playerProvider + m ()V +c net/minecraft/server/level/ChunkHolder$LevelChangeListener apz$a net/minecraft/class_3193$class_3896 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/IntSupplier;ILjava/util/function/IntConsumer;)V onLevelChange onLevelChange method_17209 + p 1 chunkPos + p 2 queueLevelGetter + p 3 ticketLevel + p 4 queueLevelSetter +c net/minecraft/server/level/ChunkHolder$PlayerProvider apz$b net/minecraft/class_3193$class_3897 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/util/List; getPlayers a method_17210 + c Returns the players tracking the given chunk. + p 1 pos + p 2 boundaryOnly +c net/minecraft/server/level/ChunkLevel aqa net/minecraft/class_8563 + f I RADIUS_AROUND_FULL_CHUNK a field_51859 + f I MAX_LEVEL b field_44849 + f I FULL_CHUNK_LEVEL c field_44850 + f I BLOCK_TICKING_LEVEL d field_44851 + f I ENTITY_TICKING_LEVEL e field_44852 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; FULL_CHUNK_STEP f field_51860 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; generationStatus a method_51827 + p 0 level + m (ILnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatusAroundFullChunk a method_60437 + p 0 distance + p 1 chunkStatus + m (Lnet/minecraft/server/level/FullChunkStatus;)I byStatus a method_51828 + p 0 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I byStatus a method_51829 + p 0 status + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatusAroundFullChunk b method_60438 + p 0 distance + m (I)Lnet/minecraft/server/level/FullChunkStatus; fullStatus c method_51830 + p 0 level + m (I)Z isEntityTicking d method_51831 + p 0 level + m (I)Z isBlockTicking e method_51832 + p 0 level + m (I)Z isLoaded f method_51833 + p 0 level + m ()V + m ()V +c net/minecraft/server/level/ChunkLevel$1 aqa$1 net/minecraft/class_8563$1 + f [I $SwitchMap$net$minecraft$server$level$FullChunkStatus a field_44853 + m ()V +c net/minecraft/server/level/ChunkMap aqb net/minecraft/class_3898 + f Z modified A field_17222 + c True if changes have been made to {@link #loadedChunks} and thus a new copy of the collection has to be made into {@link #immutableLoadedChunks}. + f Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter; queueSorter B field_17223 + f Lnet/minecraft/util/thread/ProcessorHandle; worldgenMailbox C field_17224 + f Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailbox D field_17226 + f Lnet/minecraft/server/level/progress/ChunkProgressListener; progressListener E field_17442 + f Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener; chunkStatusListener F field_26931 + f Lnet/minecraft/server/level/ChunkMap$DistanceManager; distanceManager G field_17228 + f Ljava/util/concurrent/atomic/AtomicInteger; tickingGenerated H field_17230 + f Ljava/lang/String; storageName I field_17707 + f Lnet/minecraft/server/level/PlayerMap; playerMap J field_18241 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; entityMap K field_18242 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunkTypeCache L field_23786 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; chunkSaveCooldowns M field_36383 + f Ljava/util/Queue; unloadQueue N field_19343 + f I serverViewDistance O field_18243 + f Lnet/minecraft/world/level/chunk/status/WorldGenContext; worldGenContext P field_51861 + f I MIN_VIEW_DISTANCE a field_29675 + f I MAX_VIEW_DISTANCE b field_29669 + f I FORCED_TICKET_LEVEL c field_29670 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_CHUNK_LIST_RESULT f field_51862 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_CHUNK_LIST_FUTURE g field_51863 + f B CHUNK_TYPE_REPLACEABLE h field_29671 + f B CHUNK_TYPE_UNKNOWN i field_29672 + f B CHUNK_TYPE_FULL j field_29673 + f Lorg/slf4j/Logger; LOGGER k field_17212 + f I CHUNK_SAVED_PER_TICK l field_29674 + f I CHUNK_SAVED_EAGERLY_PER_TICK m field_36291 + f I EAGER_CHUNK_SAVE_COOLDOWN_IN_MILLIS n field_36384 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; updatingChunkMap o field_17213 + c Chunks in memory. This should only ever be manipulated by the main thread. + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; visibleChunkMap p field_17220 + c Same as {@link #loadedChunks}, but immutable for access from other threads. This should never be mutated. + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; pendingUnloads q field_18807 + f Ljava/util/List; pendingGenerationTasks r field_51864 + f Lnet/minecraft/server/level/ServerLevel; level s field_17214 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine t field_17215 + f Lnet/minecraft/util/thread/BlockableEventLoop; mainThreadExecutor u field_17216 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState v field_37278 + f Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; chunkGeneratorState w field_40856 + f Ljava/util/function/Supplier; overworldDataStorage x field_17705 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager; poiManager y field_18808 + f Lit/unimi/dsi/fastutil/longs/LongSet; toDrop z field_17221 + c Chunks that have been requested to be unloaded, but haven't been unloaded yet. + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator a method_37897 + m (I)V setServerViewDistance a method_17214 + p 1 viewDistance + m (J)Lnet/minecraft/server/level/ChunkHolder; getUpdatingChunkIfPresent a method_17255 + p 1 chunkPos + m (JILnet/minecraft/server/level/ChunkHolder;I)Lnet/minecraft/server/level/ChunkHolder; updateChunkScheduling a method_17217 + c Sets level and loads/unloads chunk. + p 1 chunkPos + p 3 newLevel + p 4 holder + c The {@link net.minecraft.server.level.ChunkHolder} of the chunk if it is loaded, and null otherwise. + p 5 oldLevel + m (JLnet/minecraft/server/level/ChunkHolder;)V scheduleUnload a method_20458 + p 1 chunkPos + p 3 chunkHolder + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V runGenerationTask a method_60439 + p 1 task + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareEntityTickingChunk a method_17247 + p 1 chunk + m (Lnet/minecraft/server/level/ChunkHolder;ILjava/util/function/IntFunction;)Ljava/util/concurrent/CompletableFuture; getChunkRangeFuture a method_17220 + p 1 chunkHolder + p 2 range + p 3 statusGetter + m (Lnet/minecraft/server/level/ChunkHolder;J)V method_60440 a method_60440 + m (Lnet/minecraft/server/level/ChunkHolder;Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_53683 a method_53683 + m (Lnet/minecraft/server/level/ChunkHolder;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_53684 a method_53684 + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Runnable;)V method_20579 a method_20579 + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Void;Ljava/lang/Throwable;)V method_20604 a method_20604 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_20577 a method_20577 + m (Lnet/minecraft/server/level/ChunkResult;Ljava/lang/Throwable;)Ljava/lang/Object; method_51834 a method_51834 + m (Lnet/minecraft/server/level/ServerPlayer;)V move a method_18713 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;II)Z isChunkTracked a method_52345 + c Checks if a chunk is within a player's view distance. + p 1 player + p 2 x + p 3 z + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/level/ChunkTrackingView;)V applyChunkTrackingView a method_52346 + p 1 player + p 2 chunkTrackingView + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V markChunkPendingToSend a method_52347 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/chunk/LevelChunk;)V markChunkPendingToSend a method_52348 + p 0 player + p 1 chunk + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/List;)V method_49420 a method_49420 + m (Lnet/minecraft/server/level/ServerPlayer;Z)V updatePlayerStatus a method_18714 + p 1 player + p 2 track + m (Lnet/minecraft/world/entity/Entity;)V addEntity a method_18701 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_18702 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; getChunkDebugData a method_23272 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;I)V waitForLightBeforeSending a method_53685 + p 1 chunkPos + p 2 range + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V onFullChunkStatusChange a method_31414 + p 1 chunkPos + p 2 fullChunkStatus + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/Entity;)D euclideanDistanceSquared a method_18704 + c Returns the squared distance to the center of the chunk. + p 0 chunkPos + p 1 entity + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkType;)B markPosition a method_27053 + p 1 chunkPos + p 2 chunkType + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_57120 a method_57120 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_43375 a method_43375 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z save a method_17228 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V onChunkReadyToSend a method_53686 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;Ljava/lang/Object;)V method_53687 a method_53687 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;)Ljava/lang/String; method_60444 a method_60444 + m (Ljava/io/Writer;)V dumpChunks a method_21619 + p 1 writer + m (Ljava/lang/IllegalStateException;Ljava/lang/String;)Lnet/minecraft/ReportedException; debugFuturesAndCreateReportedException a method_40067 + p 1 exception + p 2 details + m (Ljava/lang/StringBuilder;Lnet/minecraft/server/level/ChunkHolder;)V method_40068 a method_40068 + m (Ljava/lang/StringBuilder;Lnet/minecraft/server/level/ChunkHolder;Lcom/mojang/datafixers/util/Pair;)V method_40069 a method_40069 + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; handleChunkLoadFailure a method_43376 + p 1 exception + p 2 chunkPos + m (Ljava/util/List;)V resendBiomesForChunks a method_49421 + p 1 chunks + m (Ljava/util/Optional;)Ljava/util/Optional; method_43377 a method_43377 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/lang/String; printFuture a method_21676 + p 0 future + m (Ljava/util/function/BooleanSupplier;)V tick a method_17233 + p 1 hasMoreTime + m (Lnet/minecraft/CrashReport;)V method_60445 a method_60445 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_20578 a method_20578 + m (Z)V saveAllChunks a method_17242 + p 1 flush + m ()Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; generatorState b method_46641 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; method_17245 b method_17245 + m (J)Lnet/minecraft/server/level/ChunkHolder; getVisibleChunkIfPresent b method_17216 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V method_60446 b method_60446 + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareTickingChunk b method_17235 + p 1 holder + m (Lnet/minecraft/server/level/ChunkHolder;Ljava/lang/Runnable;)V method_19487 b method_19487 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_41235 b method_41235 + m (Lnet/minecraft/server/level/ServerPlayer;)I getPlayerViewDistance b method_52350 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;II)Z isChunkOnTrackedBorder b method_52351 + c Checks if a chunk is on the edge of the player's view distance. + p 1 player + p 2 x + p 3 z + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V dropChunk b method_52352 + p 0 player + p 1 chunkPos + m (Lnet/minecraft/world/entity/Entity;)V removeEntity b method_18716 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend b method_18717 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Z anyPlayerCloseEnoughForSpawning b method_38783 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_43374 b method_43374 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Ljava/util/Optional; method_43378 b method_43378 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Z method_43379 b method_43379 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/Optional; method_21620 b method_21620 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_39220 b method_39220 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_31416 b method_31416 + m (Ljava/util/function/BooleanSupplier;)V processUnloads b method_20605 + p 1 hasMoreTime + m (Lnet/minecraft/nbt/CompoundTag;)Z isChunkDataValid b method_43380 + p 0 tag + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c method_41247 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; method_17254 c method_17254 + m (J)Ljava/util/function/IntSupplier; getChunkQueueLevel c method_17604 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V method_60447 c method_60447 + m (Lnet/minecraft/server/level/ChunkHolder;)Ljava/util/concurrent/CompletableFuture; prepareAccessibleChunk c method_31417 + p 1 holder + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_17230 c method_17230 + m (Lnet/minecraft/server/level/ServerPlayer;)Z skipPlayer c method_18722 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)Z playerIsCloseEnoughForSpawning c method_38782 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; getPlayersCloseForSpawning c method_37907 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z method_20582 c method_20582 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_39221 c method_39221 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_41234 c method_41234 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag c method_43381 + p 1 tag + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; getLightEngine d method_17212 + m (Lnet/minecraft/server/level/ChunkHolder;)Z saveChunkIfNeeded d method_39925 + p 1 holder + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/server/level/ChunkResult; method_51282 d method_51282 + m (Lnet/minecraft/server/level/ServerPlayer;)V updatePlayerPos d method_20726 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V method_52354 d method_52354 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Ljava/lang/Integer; method_21621 d method_21621 + m (Ljava/util/List;)Lnet/minecraft/world/level/chunk/LevelChunk; method_17232 d method_17232 + m ()Z hasWork e method_39992 + m (J)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkToSend e method_53688 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkHolder;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_20584 e method_20584 + m (Lnet/minecraft/server/level/ServerPlayer;)V updateChunkTracking e method_17241 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V method_52355 e method_52355 + m (Ljava/util/List;)Lnet/minecraft/server/level/ChunkResult; method_60449 e method_60449 + m ()Z promoteChunkMap f method_17244 + m (J)I method_17605 f method_17605 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/List; method_49422 f method_49422 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; scheduleChunkLoad f method_20619 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; createEmptyChunk g method_43382 + p 1 chunkPos + m ()I getTickingGenerated h method_17253 + m (Lnet/minecraft/world/level/ChunkPos;)V markPositionReplaceable h method_27054 + p 1 chunkPos + m ()I size i method_17260 + m (Lnet/minecraft/world/level/ChunkPos;)Z isExistingChunkFull i method_27055 + p 1 chunkPos + m ()Lnet/minecraft/server/level/DistanceManager; getDistanceManager j method_17263 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; readChunk j method_43383 + p 1 pos + m ()Ljava/lang/Iterable; getChunks k method_17264 + c Gets an unmodifiable iterable of all loaded chunks in the chunk manager + m (Lnet/minecraft/world/level/ChunkPos;)V method_53689 k method_53689 + m ()V tick l method_18727 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager m method_19488 + m ()Ljava/lang/String; getStorageName n method_37476 + m ()Z method_20606 r method_20606 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/concurrent/Executor;Lnet/minecraft/util/thread/BlockableEventLoop;Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/server/level/progress/ChunkProgressListener;Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener;Ljava/util/function/Supplier;IZ)V + p 1 level + p 2 levelStorageAccess + p 3 fixerUpper + p 4 structureManager + p 5 dispatcher + p 6 mainThreadExecutor + p 7 lightChunk + p 8 generator + p 9 progressListener + p 10 chunkStatusListener + p 11 overworldDataStorage + p 12 viewDistance + p 13 sync + m ()V +c net/minecraft/server/level/ChunkMap$DistanceManager aqb$a net/minecraft/class_3898$class_3216 + f Lnet/minecraft/server/level/ChunkMap; field_17443 a field_17443 + m (Lnet/minecraft/server/level/ChunkMap;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 2 dispatcher + p 3 mainThreadExecutor +c net/minecraft/server/level/ChunkMap$TrackedEntity aqb$b net/minecraft/class_3898$class_3208 + f Lnet/minecraft/server/level/ChunkMap; field_18245 a field_18245 + f Lnet/minecraft/server/level/ServerEntity; serverEntity b field_18246 + f Lnet/minecraft/world/entity/Entity; entity c field_18247 + f I range d field_18248 + f Lnet/minecraft/core/SectionPos; lastSectionPos e field_18249 + f Ljava/util/Set; seenBy f field_18250 + m ()V broadcastRemoved a method_18728 + m (I)I scaledRange a method_27906 + p 1 trackingDistance + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer a method_18733 + p 1 player + m (Ljava/util/List;)V updatePlayers a method_18729 + p 1 playersList + m (Lnet/minecraft/network/protocol/Packet;)V broadcast a method_18730 + p 1 packet + m ()I getEffectiveRange b method_22844 + m (Lnet/minecraft/server/level/ServerPlayer;)V updatePlayer b method_18736 + p 1 player + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend b method_18734 + p 1 packet + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/entity/Entity;IIZ)V + p 2 entity + p 3 range + p 4 updateInterval + p 5 trackDelta +c net/minecraft/server/level/ChunkResult aqc net/minecraft/class_9259 + m ()Z isSuccess a method_57122 + m (Lnet/minecraft/server/level/ChunkResult;Ljava/lang/Object;)Ljava/lang/Object; orElse a method_57123 + p 0 chunkResult + p 1 orElse + m (Ljava/lang/Object;)Lnet/minecraft/server/level/ChunkResult; of a method_57124 + p 0 value + m (Ljava/lang/String;)Lnet/minecraft/server/level/ChunkResult; error a method_57125 + p 0 error + m (Ljava/util/function/Consumer;)Lnet/minecraft/server/level/ChunkResult; ifSuccess a method_57126 + p 1 action + m (Ljava/util/function/Function;)Lnet/minecraft/server/level/ChunkResult; map a method_57127 + p 1 mappingFunction + m (Ljava/util/function/Supplier;)Lnet/minecraft/server/level/ChunkResult; error a method_57128 + p 0 errorSupplier + m ()Ljava/lang/String; getError b method_57129 + m (Ljava/lang/Object;)Ljava/lang/Object; orElse b method_57130 + p 1 value + m (Ljava/lang/String;)Ljava/lang/String; method_57131 b method_57131 + m (Ljava/util/function/Supplier;)Ljava/lang/Object; orElseThrow b method_57132 + p 1 exceptionSupplier +c net/minecraft/server/level/ChunkResult$Fail aqc$a net/minecraft/class_9259$class_9260 + f Ljava/util/function/Supplier; error a comp_2367 + m ()Ljava/util/function/Supplier; error c comp_2367 + m (Ljava/util/function/Supplier;)V +c net/minecraft/server/level/ChunkResult$Success aqc$b net/minecraft/class_9259$class_9261 + f Ljava/lang/Object; value a comp_2368 + m ()Ljava/lang/Object; value c comp_2368 + m (Ljava/lang/Object;)V +c net/minecraft/server/level/ChunkTaskPriorityQueue aqd net/minecraft/class_3899 + f I PRIORITY_LEVEL_COUNT a field_17241 + f Ljava/util/List; taskQueue b field_17243 + f I firstQueue c field_17244 + f Ljava/lang/String; name d field_17247 + f Lit/unimi/dsi/fastutil/longs/LongSet; acquired e field_17444 + f I maxTasks f field_17445 + m ()Ljava/util/stream/Stream; pop a method_17606 + m (I)Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; method_17271 a method_17271 + m (ILnet/minecraft/world/level/ChunkPos;I)V resortChunkTasks a method_17272 + p 1 queueLevel + p 2 chunkPos + p 3 ticketLevel + m (J)Ljava/lang/Runnable; acquire a method_17607 + p 1 chunkPos + m (JLjava/util/Optional;)Lcom/mojang/datafixers/util/Either; method_17608 a method_17608 + m (JZ)V release a method_17609 + p 1 chunkPos + p 3 fullClear + m (Ljava/util/Optional;)Z method_17610 a method_17610 + m (Ljava/util/Optional;JI)V submit a method_17274 + p 1 task + p 2 chunkPos + p 4 chunkLevel + m ()Z hasWork b method_39993 + m (J)Lcom/mojang/datafixers/util/Either; method_17611 b method_17611 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAcquired c method_21679 + m (J)V method_17612 c method_17612 + m (J)Ljava/util/List; method_17273 d method_17273 + m (J)Ljava/util/List; method_17277 e method_17277 + m (Ljava/lang/String;I)V + p 1 name + p 2 maxTasks + m ()V +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter aqe net/minecraft/class_3900 + f Lorg/slf4j/Logger; LOGGER a field_17248 + f Ljava/util/Map; queues b field_17249 + f Ljava/util/Set; sleeping c field_17250 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox d field_17251 + m ()Z hasWork a method_39994 + m (I)[Ljava/util/concurrent/CompletableFuture; method_41236 a method_41236 + m (ILnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/server/level/ChunkTaskPriorityQueue; method_17613 a method_17613 + m (ILnet/minecraft/world/level/ChunkPos;ILnet/minecraft/server/level/ChunkTaskPriorityQueue;)V method_17280 a method_17280 + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;)V pollTask a method_17630 + p 1 queue + p 2 processor + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;Ljava/lang/Void;)V method_17631 a method_17631 + m (Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/lang/Runnable;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_17629 + p 0 chunk + p 1 task + m (Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/util/function/Function;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_34870 + p 0 chunk + p 1 task + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/ProcessorHandle; getReleaseProcessor a method_17614 + p 1 processor + m (Lnet/minecraft/util/thread/ProcessorHandle;JLjava/lang/Runnable;Z)V release a method_17615 + p 1 processor + p 2 chunkPos + p 4 task + p 5 clearQueue + m (Lnet/minecraft/util/thread/ProcessorHandle;JZLjava/lang/Runnable;)V method_17616 a method_17616 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release;)V method_17621 a method_17621 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_17617 a method_17617 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;Z)V method_17618 a method_17618 + m (Lnet/minecraft/util/thread/ProcessorHandle;Lcom/mojang/datafixers/util/Either;)Ljava/util/concurrent/CompletableFuture; method_17619 a method_17619 + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/Function;JLjava/util/function/IntSupplier;Z)V submit a method_17282 + p 1 processor + p 2 task + p 3 chunkPos + p 5 level + p 6 flush + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/IntSupplier;JLjava/util/function/Function;Z)V method_17620 a method_17620 + m (Lnet/minecraft/util/thread/ProcessorHandle;Z)Lnet/minecraft/util/thread/ProcessorHandle; getProcessor a method_17622 + p 1 processor + p 2 flush + m (Lnet/minecraft/util/thread/ProcessorHandle;ZLnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message;)V method_17624 a method_17624 + m (Lnet/minecraft/util/thread/ProcessorHandle;ZLnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_17623 a method_17623 + m (Ljava/lang/Long;)Ljava/lang/String; method_21681 a method_21681 + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; method_17625 a method_17625 + m (Ljava/lang/Runnable;JLjava/util/function/IntSupplier;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_17626 + p 0 task + p 1 pos + p 3 level + m (Ljava/lang/Runnable;JZ)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release; release a method_17627 + p 0 task + p 1 pos + p 3 clearQueue + m (Ljava/lang/Runnable;Lnet/minecraft/util/thread/ProcessorHandle;)Ljava/lang/Runnable; method_17628 a method_17628 + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_21682 a method_21682 + m (Ljava/util/function/Function;JLjava/util/function/IntSupplier;)Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message; message a method_34871 + p 0 task + p 1 pos + p 3 level + m (Ljava/util/function/IntSupplier;Lnet/minecraft/world/level/ChunkPos;ILjava/util/function/IntConsumer;)V method_17285 a method_17285 + m ()Ljava/lang/String; getDebugStatus b method_21680 + m (Lnet/minecraft/server/level/ChunkTaskPriorityQueue;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17635 b method_17635 + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/server/level/ChunkTaskPriorityQueue; getQueue b method_17632 + p 1 processor + m (Lnet/minecraft/util/thread/ProcessorHandle;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17633 b method_17633 + m (Ljava/lang/Runnable;Lnet/minecraft/util/thread/ProcessorHandle;)V method_17634 b method_17634 + m (Ljava/util/List;Ljava/util/concurrent/Executor;I)V + p 1 queues + p 2 task + p 3 maxTasks + m ()V +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter$Message aqe$a net/minecraft/class_3900$class_3946 + f Ljava/util/function/Function; task a field_17446 + f J pos b field_17447 + f Ljava/util/function/IntSupplier; level c field_17448 + m (Ljava/util/function/Function;JLjava/util/function/IntSupplier;)V + p 1 task + p 2 pos + p 4 level +c net/minecraft/server/level/ChunkTaskPriorityQueueSorter$Release aqe$b net/minecraft/class_3900$class_3947 + f Ljava/lang/Runnable; task a field_17449 + f J pos b field_17450 + f Z clearQueue c field_17451 + m (Ljava/lang/Runnable;JZ)V + p 1 task + p 2 pos + p 4 clearQueue +c net/minecraft/server/level/ChunkTracker aqf net/minecraft/class_3196 + m (J)I getLevelFromSource b method_14028 + p 1 pos + m (JIZ)V update b method_14027 + p 1 pos + p 3 level + p 4 isDecreasing + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/server/level/ChunkTrackingView aqg net/minecraft/class_8603 + f Lnet/minecraft/server/level/ChunkTrackingView; EMPTY a field_44986 + m (II)Z contains a method_52356 + p 1 x + p 2 z + m (IIIII)Z isInViewDistance a method_52357 + p 0 centerX + p 1 centerZ + p 2 viewDistance + p 3 x + p 4 z + m (IIIIIZ)Z isWithinDistance a method_52358 + c Check if a chunk {@code (x,z)} is within a {@code viewDistance} which is centered on {@code (centerX, centerZ)} + p 0 centerX + p 1 centerZ + p 2 viewDistance + p 3 x + p 4 z + p 5 includeOuterChunksAdjacentToViewBorder + m (IIZ)Z contains a method_52359 + p 1 x + p 2 z + p 3 includeOuterChunksAdjacentToViewBorder + m (Lnet/minecraft/server/level/ChunkTrackingView;Lnet/minecraft/server/level/ChunkTrackingView;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V difference a method_52360 + c Calculates the chunks that the player needs to drop in the {@code oldChunkTrackingView} and the chunks that need to be sent for the {@code newChunkTrackingView}. The chunks that overlap in both views can be kept. + p 0 oldChunkTrackingView + p 1 newChunkTrackingView + p 2 chunkMarker + p 3 chunkDropper + m (Lnet/minecraft/world/level/ChunkPos;)Z contains a method_52361 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/server/level/ChunkTrackingView; of a method_52362 + p 0 center + p 1 viewDistance + m (Ljava/util/function/Consumer;)V forEach a method_52363 + p 1 action + m (II)Z isInViewDistance b method_52364 + p 1 x + p 2 z + m ()V +c net/minecraft/server/level/ChunkTrackingView$1 aqg$1 net/minecraft/class_8603$1 + m ()V +c net/minecraft/server/level/ChunkTrackingView$Positioned aqg$a net/minecraft/class_8603$class_8604 + f Lnet/minecraft/world/level/ChunkPos; center b comp_1574 + f I viewDistance c comp_1575 + m ()Lnet/minecraft/world/level/ChunkPos; center a comp_1574 + m (Lnet/minecraft/server/level/ChunkTrackingView$Positioned;)Z squareIntersects a method_52365 + c Determines if another {@link ChunkTrackingView}'s bounds intersects with its own + p 1 other + m ()I viewDistance b comp_1575 + m ()I minX c method_52366 + m ()I minZ d method_52367 + m ()I maxX e method_52368 + m ()I maxZ f method_52369 + m (Lnet/minecraft/world/level/ChunkPos;I)V +c net/minecraft/server/level/ClientInformation aqh net/minecraft/class_8791 + f I MAX_LANGUAGE_LENGTH a field_46155 + f Ljava/lang/String; language b comp_1951 + f I viewDistance c comp_1952 + f Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility d comp_1953 + f Z chatColors e comp_1954 + f I modelCustomisation f comp_1955 + f Lnet/minecraft/world/entity/HumanoidArm; mainHand g comp_1956 + f Z textFilteringEnabled h comp_1957 + f Z allowsListing i comp_1958 + m ()Lnet/minecraft/server/level/ClientInformation; createDefault a method_53821 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_53822 + p 1 buffer + m ()Ljava/lang/String; language b comp_1951 + m ()I viewDistance c comp_1952 + m ()Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility d comp_1953 + m ()Z chatColors e comp_1954 + m ()I modelCustomisation f comp_1955 + m ()Lnet/minecraft/world/entity/HumanoidArm; mainHand g comp_1956 + m ()Z textFilteringEnabled h comp_1957 + m ()Z allowsListing i comp_1958 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/lang/String;ILnet/minecraft/world/entity/player/ChatVisiblity;ZILnet/minecraft/world/entity/HumanoidArm;ZZ)V +c net/minecraft/server/level/ColumnPos aqi net/minecraft/class_2265 + f I x a comp_638 + f I z b comp_639 + f J COORD_BITS c field_29757 + f J COORD_MASK d field_29758 + m ()Lnet/minecraft/world/level/ChunkPos; toChunkPos a method_34873 + m (II)J asLong a method_34874 + p 0 x + p 1 z + m (J)I getX a method_42106 + p 0 pos + m ()J toLong b method_34875 + m (J)I getZ b method_42107 + p 0 pos + m ()I x c comp_638 + m ()I z d comp_639 + m (II)V +c net/minecraft/server/level/DemoMode aqj net/minecraft/class_3201 + f I DEMO_DAYS a field_29762 + f I TOTAL_PLAY_TICKS b field_29763 + f Z displayedIntro e field_13890 + f Z demoHasEnded f field_13889 + f I demoEndedReminder g field_13888 + f I gameModeTicks h field_13887 + m ()V outputDemoReminder f method_14031 + c Sends a message to the player reminding them that this is the demo version + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player +c net/minecraft/server/level/DistanceManager aqk net/minecraft/class_3204 + f Lorg/slf4j/Logger; LOGGER a field_16211 + f I PLAYER_TICKET_LEVEL b field_17452 + f I INITIAL_TICKET_LIST_CAPACITY c field_29765 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; playersPerChunk d field_17453 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; tickets e field_13895 + f Lnet/minecraft/server/level/DistanceManager$ChunkTicketTracker; ticketTracker f field_18252 + f Lnet/minecraft/server/level/DistanceManager$FixedPlayerDistanceChunkTracker; naturalSpawnChunkCounter g field_17454 + f Lnet/minecraft/server/level/TickingTracker; tickingTicketsTracker h field_34886 + f Lnet/minecraft/server/level/DistanceManager$PlayerTicketTracker; playerTicketManager i field_17455 + f Ljava/util/Set; chunksToUpdateFutures j field_16210 + f Lnet/minecraft/server/level/ChunkTaskPriorityQueueSorter; ticketThrottler k field_17456 + f Lnet/minecraft/util/thread/ProcessorHandle; ticketThrottlerInput l field_17457 + f Lnet/minecraft/util/thread/ProcessorHandle; ticketThrottlerReleaser m field_17458 + f Lit/unimi/dsi/fastutil/longs/LongSet; ticketsToRelease n field_17459 + f Ljava/util/concurrent/Executor; mainThreadExecutor o field_17460 + f J ticketTickCounter p field_13894 + f I simulationDistance q field_34887 + m ()V purgeStaleTickets a method_14045 + m (I)V updatePlayerTickets a method_14049 + p 1 viewDistance + m (J)Z isChunkToRemove a method_14035 + p 1 chunkPos + m (JILnet/minecraft/server/level/ChunkHolder;I)Lnet/minecraft/server/level/ChunkHolder; updateChunkScheduling a method_14053 + p 1 chunkPos + p 3 newLevel + p 4 holder + p 5 oldLevel + m (JLnet/minecraft/server/level/ChunkResult;)V method_17642 a method_17642 + m (JLnet/minecraft/server/level/Ticket;)V addTicket a method_14042 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/ChunkMap;)Z runAllUpdates a method_15892 + p 1 chunkMap + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/ChunkHolder;)V method_15891 a method_15891 + m (Lnet/minecraft/server/level/Ticket;)Z method_14040 a method_14040 + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addTicket a method_17290 + p 1 type + p 2 pos + p 3 level + p 4 value + m (Lnet/minecraft/util/SortedArraySet;)I getTicketLevelAt a method_14046 + c Gets the {@linkplain net.minecraft.server.level.Ticket#getTicketLevel level} of the ticket. + p 0 tickets + m (Lnet/minecraft/world/level/ChunkPos;Z)V updateChunkForced a method_14036 + p 1 pos + p 2 add + m (Ljava/lang/String;)V dumpTickets a method_34876 + p 1 filename + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/server/level/ServerPlayer;)V addPlayer a method_14048 + p 1 sectionPos + p 2 player + m ()I getNaturalSpawnChunkCount b method_14052 + c Returns the number of chunks taken into account when calculating the mob cap + m (I)V updateSimulationDistance b method_38629 + p 1 simulationDistance + m (J)Lnet/minecraft/server/level/ChunkHolder; getChunk b method_14038 + p 1 chunkPos + m (JLnet/minecraft/server/level/Ticket;)V removeTicket b method_17645 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/server/level/ChunkHolder;)V method_60451 b method_60451 + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeTicket b method_20444 + p 1 type + p 2 pos + p 3 level + p 4 value + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/server/level/ServerPlayer;)V removePlayer b method_14051 + p 1 sectionPos + p 2 player + m ()Ljava/lang/String; getDebugStatus c method_21683 + m (J)Z inEntityTickingRange c method_38630 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addRegionTicket c method_17291 + p 1 type + p 2 pos + p 3 distance + p 4 value + m ()Lnet/minecraft/server/level/TickingTracker; tickingTracker d method_38631 + m (J)Z inBlockTickingRange d method_38632 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeRegionTicket d method_17292 + p 1 type + p 2 pos + p 3 distance + p 4 value + m ()V removeTicketsOnClosing e method_39995 + m (J)Ljava/lang/String; getTicketDebugString e method_21623 + p 1 chunkPos + m ()Z hasTickets f method_39996 + m (J)Z hasPlayersNearby f method_20800 + p 1 chunkPos + m ()I getPlayerTicketLevel g method_38633 + m (J)Lnet/minecraft/util/SortedArraySet; getTickets g method_14050 + p 1 chunkPos + m ()V method_17652 h method_17652 + m (J)Lit/unimi/dsi/fastutil/objects/ObjectSet; method_17655 h method_17655 + m (J)Lnet/minecraft/util/SortedArraySet; method_14041 i method_14041 + m (J)V method_17656 j method_17656 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)V + p 1 dispatcher + p 2 mainThreadExecutor + m ()V +c net/minecraft/server/level/DistanceManager$ChunkTicketTracker aqk$a net/minecraft/class_3204$class_4077 + f Lnet/minecraft/server/level/DistanceManager; field_18255 a field_18255 + f I MAX_LEVEL b field_44854 + m (I)I runDistanceUpdates a method_18746 + p 1 toUpdateCount + m (Lnet/minecraft/server/level/DistanceManager;)V + m ()V +c net/minecraft/server/level/DistanceManager$FixedPlayerDistanceChunkTracker aqk$b net/minecraft/class_3204$class_3205 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunks a field_13896 + c Chunks that are at most {@link #range} chunks away from the closest player. + f I maxDistance b field_17461 + f Lnet/minecraft/server/level/DistanceManager; field_17462 c field_17462 + m ()V runAllUpdates a method_14057 + m (JII)V onLevelChange a method_17657 + c Called after {@link PlayerChunkTracker#setLevel(long, int)} puts/removes chunk into/from {@link #chunksInRange}. + p 1 chunkPos + p 3 oldLevel + c Previous level of the chunk if it was smaller than {@link #range}, {@code range + 2} otherwise. + p 4 newLevel + m (Ljava/lang/String;)V dumpChunks a method_34878 + p 1 filename + m (J)Z havePlayer d method_14056 + p 1 chunkPos + m (Lnet/minecraft/server/level/DistanceManager;I)V + p 2 maxDistance +c net/minecraft/server/level/DistanceManager$PlayerTicketTracker aqk$c net/minecraft/class_3204$class_3948 + f Lnet/minecraft/server/level/DistanceManager; field_17463 d field_17463 + f I viewDistance g field_17464 + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; queueLevels h field_17465 + f Lit/unimi/dsi/fastutil/longs/LongSet; toUpdate i field_17466 + m (I)V updateViewDistance a method_17658 + p 1 viewDistance + m (JIZZ)V onLevelChange a method_17660 + p 1 chunkPos + p 3 level + p 4 hadTicket + p 5 hasTicket + m (JLnet/minecraft/server/level/Ticket;)V method_17661 a method_17661 + m (JI)V method_17662 b method_17662 + m (JLnet/minecraft/server/level/Ticket;)V method_17663 b method_17663 + m (I)Z haveTicketFor c method_17664 + p 1 level + m (JLnet/minecraft/server/level/Ticket;)V method_17665 c method_17665 + m ()V method_21693 d method_21693 + m (I)I method_17666 d method_17666 + m (J)I method_17659 d method_17659 + m (JLnet/minecraft/server/level/Ticket;)V method_17667 d method_17667 + m (Lnet/minecraft/server/level/DistanceManager;I)V + p 2 maxDistance +c net/minecraft/server/level/FullChunkStatus aql net/minecraft/class_3194 + f Lnet/minecraft/server/level/FullChunkStatus; INACCESSIBLE a field_19334 + f Lnet/minecraft/server/level/FullChunkStatus; FULL b field_44855 + f Lnet/minecraft/server/level/FullChunkStatus; BLOCK_TICKING c field_44856 + f Lnet/minecraft/server/level/FullChunkStatus; ENTITY_TICKING d field_13877 + f [Lnet/minecraft/server/level/FullChunkStatus; $VALUES e field_13878 + m ()[Lnet/minecraft/server/level/FullChunkStatus; $values a method_36576 + m (Lnet/minecraft/server/level/FullChunkStatus;)Z isOrAfter a method_14014 + p 1 status + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/level/GeneratingChunkMap aqm net/minecraft/class_9760 + m (Lnet/minecraft/server/level/GenerationChunkHolder;)V releaseGeneration a method_60441 + p 1 chunk + m (Lnet/minecraft/server/level/GenerationChunkHolder;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;)Ljava/util/concurrent/CompletableFuture; applyStep a method_60442 + p 1 chunk + p 2 step + p 3 cache + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/server/level/ChunkGenerationTask; scheduleGenerationTask a method_60443 + p 1 targetStatus + p 2 pos + m (J)Lnet/minecraft/server/level/GenerationChunkHolder; acquireGeneration d method_60448 + p 1 chunkPos + m ()V runGenerationTasks g method_60450 +c net/minecraft/server/level/GenerationChunkHolder aqn net/minecraft/class_9761 + f Ljava/util/List; CHUNK_STATUSES a field_51865 + f Lnet/minecraft/server/level/ChunkResult; UNLOADED_CHUNK b field_51866 + f Ljava/util/concurrent/CompletableFuture; UNLOADED_CHUNK_FUTURE c field_51867 + f Lnet/minecraft/world/level/ChunkPos; pos d field_51868 + f Lnet/minecraft/server/level/ChunkResult; NOT_DONE_YET e field_51869 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; highestAllowedStatus f field_51870 + f Ljava/util/concurrent/atomic/AtomicReference; startedWork g field_51871 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; futures h field_51872 + f Ljava/util/concurrent/atomic/AtomicReference; task i field_51873 + f Ljava/util/concurrent/atomic/AtomicInteger; generationRefCount j field_51874 + m (ILjava/util/concurrent/CompletableFuture;)V failAndClearPendingFuture a method_60452 + p 1 status + p 2 future + m (Lnet/minecraft/server/level/ChunkGenerationTask;)V removeTask a method_60453 + p 1 task + m (Lnet/minecraft/server/level/ChunkMap;)V updateHighestAllowedStatus a method_60454 + p 1 chunkMap + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V rescheduleChunkTask a method_60455 + p 1 chunkMap + p 2 targetStatus + m (Lnet/minecraft/world/level/chunk/ImposterProtoChunk;)V replaceProtoChunk a method_60456 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunkIfPresentUnchecked a method_60457 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/server/level/ChunkMap;)Ljava/util/concurrent/CompletableFuture; scheduleChunkGenerationTask a method_60458 + p 1 targetStatus + p 2 chunkMap + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/ChunkAccess;)V completeFuture a method_60459 + p 1 targetStatus + p 2 chunkAccess + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V failAndClearPendingFuturesBetween a method_60460 + p 1 highestAllowableStatus + p 2 currentStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/server/level/GeneratingChunkMap;Lnet/minecraft/util/StaticCache2D;)Ljava/util/concurrent/CompletableFuture; applyStep a method_60461 + p 1 step + p 2 chunkMap + p 3 cache + m (Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/lang/Throwable;)Lnet/minecraft/server/level/ChunkResult; method_60462 a method_60462 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunkIfPresent b method_60463 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Ljava/util/concurrent/CompletableFuture; getOrCreateFuture c method_60464 + p 1 targetStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; findHighestStatusWithPendingFuture d method_60465 + p 1 generationStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z acquireStatusBump e method_60466 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isStatusDisallowed f method_60467 + p 1 status + m ()I getTicketLevel i method_14005 + m ()I getQueueLevel j method_17208 + m ()V increaseGenerationRefCount m method_60468 + m ()V decreaseGenerationRefCount n method_60469 + m ()I getGenerationRefCount o method_60470 + m ()Lnet/minecraft/world/level/chunk/ChunkAccess; getLatestChunk p method_60471 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getPersistedStatus q method_60472 + m ()Lnet/minecraft/world/level/ChunkPos; getPos r method_60473 + m ()Lnet/minecraft/server/level/FullChunkStatus; getFullStatus s method_60474 + m ()Ljava/util/List; getAllFutures t method_60475 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getLatestStatus u method_60476 + m (Lnet/minecraft/world/level/ChunkPos;)V + p 1 pos + m ()V +c net/minecraft/server/level/PlayerMap aqo net/minecraft/class_3210 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; players a field_13910 + m ()Ljava/util/Set; getAllPlayers a method_14083 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer a method_14084 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Z)V addPlayer a method_14085 + p 1 player + p 2 skipPlayer + m (Lnet/minecraft/server/level/ServerPlayer;)V ignorePlayer b method_14086 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)V unIgnorePlayer c method_14087 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)Z ignoredOrUnknown d method_21715 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;)Z ignored e method_14082 + p 1 player + m ()V +c net/minecraft/server/level/PlayerRespawnLogic aqp net/minecraft/class_5322 + m (Lnet/minecraft/server/level/ServerLevel;II)Lnet/minecraft/core/BlockPos; getOverworldRespawnPos a method_29194 + p 0 level + p 1 x + p 2 z + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; getSpawnPosInChunk a method_29196 + p 0 level + p 1 chunkPos + m ()V +c net/minecraft/server/level/SectionTracker aqq net/minecraft/class_4079 + m (J)I getLevelFromSource b method_18749 + p 1 pos + m (JIZ)V update b method_18750 + p 1 pos + p 3 level + p 4 isDecreasing + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/server/level/ServerBossEvent aqr net/minecraft/class_3213 + f Ljava/util/Set; players h field_13913 + f Ljava/util/Set; unmodifiablePlayers i field_13914 + f Z visible j field_13912 + m (Lnet/minecraft/server/level/ServerPlayer;)V addPlayer a method_14088 + c Makes the boss visible to the given player. + p 1 player + m (Ljava/util/function/Function;)V broadcast a method_14090 + p 1 packetGetter + m ()V removeAllPlayers b method_14094 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePlayer b method_14089 + c Makes the boss non-visible to the given player. + p 1 player + m (Z)V setVisible d method_14091 + p 1 visible + m ()Z isVisible f method_14093 + m ()Ljava/util/Collection; getPlayers g method_14092 + c The returned collection is unmodifiable + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 name + p 2 color + p 3 overlay +c net/minecraft/server/level/ServerChunkCache aqs net/minecraft/class_3215 + f Lnet/minecraft/server/level/ChunkMap; chunkMap a field_17254 + f Ljava/util/List; CHUNK_STATUSES b field_13934 + f Lnet/minecraft/server/level/DistanceManager; distanceManager c field_17252 + f Lnet/minecraft/server/level/ServerLevel; level d field_13945 + f Ljava/lang/Thread; mainThread e field_17253 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine f field_13921 + f Lnet/minecraft/server/level/ServerChunkCache$MainThreadExecutor; mainThreadProcessor g field_18809 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; dataStorage h field_17708 + f J lastInhabitedUpdate i field_13928 + f Z spawnEnemies j field_13929 + f Z spawnFriendlies k field_13941 + f I CACHE_SIZE l field_29766 + f [J lastChunkPos m field_19335 + f [Lnet/minecraft/world/level/chunk/status/ChunkStatus; lastChunkStatus n field_19336 + f [Lnet/minecraft/world/level/chunk/ChunkAccess; lastChunk o field_19337 + f Lnet/minecraft/world/level/NaturalSpawner$SpawnState; lastSpawnState p field_24455 + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; getLightEngine a method_17293 + m (I)V setViewDistance a method_14144 + p 1 viewDistance + m (J)Z isPositionTicking a method_37114 + p 1 chunkPos + m (JLnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V storeInCache a method_21738 + p 1 chunkPos + p 3 chunk + p 4 chunkStatus + m (JLjava/util/function/Consumer;)V getFullChunk a method_27907 + p 1 chunkPos + p 3 fullChunkGetter + m (Lnet/minecraft/server/level/ChunkHolder;I)Z chunkAbsent a method_18752 + p 1 chunkHolder + p 2 status + m (Lnet/minecraft/server/level/ServerChunkCache$ChunkAndHolder;)V method_38784 a method_38784 + m (Lnet/minecraft/server/level/ServerPlayer;)V move a method_14096 + p 1 player + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addRegionTicket a method_17297 + p 1 type + p 2 pos + p 3 distance + p 4 value + m (Lnet/minecraft/world/entity/Entity;)V removeEntity a method_18753 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend a method_18751 + p 1 entity + p 2 packet + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; getChunkDebugData a method_23273 + p 1 chunkPos + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_14159 a method_14159 + m (Lnet/minecraft/core/BlockPos;)V blockChanged a method_14128 + p 1 pos + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/LightLayer;)V method_14118 a method_14118 + m (Z)V save a method_17298 + p 1 flush + m ()I getTickingGenerated b method_17301 + m (I)V setSimulationDistance b method_38634 + p 1 simulationDistance + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; getChunkFuture b method_17299 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (J)Lnet/minecraft/server/level/ChunkHolder; getVisibleChunkIfPresent b method_14131 + p 1 chunkPos + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeRegionTicket b method_17300 + p 1 type + p 2 pos + p 3 distance + p 4 value + m (Lnet/minecraft/world/entity/Entity;)V addEntity b method_18755 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/protocol/Packet;)V broadcast b method_18754 + p 1 entity + p 2 packet + m ()Lnet/minecraft/world/level/Level; getLevel c method_16434 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; getChunkFutureMainThread c method_14134 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m ()Z pollTask d method_19492 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Ljava/util/concurrent/CompletableFuture; method_14098 d method_14098 + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; method_20586 e method_20586 + m ()I getPendingTasksCount f method_21694 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; getGenerator g method_12129 + m ()Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; getGeneratorState h method_46642 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState i method_41248 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; getDataStorage k method_17981 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager l method_19493 + m ()Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; chunkScanner m method_39777 + m ()Lnet/minecraft/world/level/NaturalSpawner$SpawnState; getLastSpawnState n method_27908 + m ()V removeTicketsOnClosing o method_39997 + m ()V clearCache r method_20587 + m ()Z runDistanceManagerUpdates s method_16155 + m ()V tickChunks t method_14161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/chunk/ChunkGenerator;IIZLnet/minecraft/server/level/progress/ChunkProgressListener;Lnet/minecraft/world/level/entity/ChunkStatusUpdateListener;Ljava/util/function/Supplier;)V + p 1 level + p 2 levelStorageAccess + p 3 fixerUpper + p 4 structureManager + p 5 dispatcher + p 6 generator + p 7 viewDistance + p 8 simulationDistance + p 9 sync + p 10 progressListener + p 11 chunkStatusListener + p 12 overworldDataStorage + m ()V +c net/minecraft/server/level/ServerChunkCache$ChunkAndHolder aqs$a net/minecraft/class_3215$class_6635 + f Lnet/minecraft/world/level/chunk/LevelChunk; chunk a comp_141 + f Lnet/minecraft/server/level/ChunkHolder; holder b comp_142 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; chunk a comp_141 + m ()Lnet/minecraft/server/level/ChunkHolder; holder b comp_142 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +c net/minecraft/server/level/ServerChunkCache$MainThreadExecutor aqs$b net/minecraft/class_3215$class_4212 + f Lnet/minecraft/server/level/ServerChunkCache; field_18810 a field_18810 + m (Ljava/util/function/BooleanSupplier;)Z method_60477 a method_60477 + m (Lnet/minecraft/server/level/ServerChunkCache;Lnet/minecraft/world/level/Level;)V + p 2 level +c net/minecraft/server/level/ServerEntity aqt net/minecraft/class_3231 + f I FORCED_POS_UPDATE_PERIOD a field_44987 + f Lorg/slf4j/Logger; LOGGER b field_14041 + f I TOLERANCE_LEVEL_ROTATION c field_29767 + f D TOLERANCE_LEVEL_POSITION d field_44988 + f I FORCED_TELEPORT_PERIOD e field_44989 + f Lnet/minecraft/server/level/ServerLevel; level f field_18258 + f Lnet/minecraft/world/entity/Entity; entity g field_14049 + f I updateInterval h field_14037 + f Z trackDelta i field_14039 + f Ljava/util/function/Consumer; broadcast j field_18259 + f Lnet/minecraft/network/protocol/game/VecDeltaCodec; positionCodec k field_39019 + f I lastSentYRot l field_14060 + f I lastSentXRot m field_14047 + f I lastSentYHeadRot n field_14059 + f Lnet/minecraft/world/phys/Vec3; lastSentMovement o field_18278 + f I tickCount p field_14040 + f I teleportDelay q field_14043 + f Ljava/util/List; lastPassengers r field_14045 + f Z wasRiding s field_14051 + f Z wasOnGround t field_14036 + f Ljava/util/List; trackedDataValues u field_41697 + m ()V sendChanges a method_18756 + m (Lnet/minecraft/server/level/ServerPlayer;)V removePairing a method_14302 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Consumer;)V sendPairingData a method_18757 + p 1 player + p 2 consumer + m (Lnet/minecraft/world/entity/Entity;)V method_49426 a method_49426 + m (Ljava/util/List;Lnet/minecraft/world/entity/Entity;)Z method_49752 a method_49752 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/stream/Stream; removedPassengers a method_49753 + p 0 initialPassengers + p 1 currentPassengers + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAndSend a method_18758 + p 1 packet + m ()Lnet/minecraft/world/phys/Vec3; getPositionBase b method_60942 + m (Lnet/minecraft/server/level/ServerPlayer;)V addPairing b method_18760 + p 1 player + m ()Lnet/minecraft/world/phys/Vec3; getLastSentMovement c method_60943 + m ()F getLastSentXRot d method_60944 + m ()F getLastSentYRot e method_60945 + m ()F getLastSentYHeadRot f method_60946 + m ()V sendDirtyEntityData g method_14306 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;IZLjava/util/function/Consumer;)V + p 1 level + p 2 entity + p 3 updateInterval + p 4 trackDelta + p 5 broadcast + m ()V +c net/minecraft/server/level/ServerLevel aqu net/minecraft/class_3218 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f Lnet/minecraft/util/valueproviders/IntProvider; THUNDER_DELAY D field_41748 + f Lorg/slf4j/Logger; LOGGER E field_13952 + f I EMPTY_TIME_NO_TICK F field_29768 + f I MAX_SCHEDULED_TICKS_PER_TICK G field_35441 + f Ljava/util/List; players H field_18261 + f Lnet/minecraft/server/level/ServerChunkCache; chunkSource I field_24624 + f Lnet/minecraft/server/MinecraftServer; server J field_13959 + f Lnet/minecraft/world/level/storage/ServerLevelData; serverLevelData K field_24456 + f I lastSpawnChunkRadius L field_48271 + f Lnet/minecraft/world/level/entity/EntityTickList; entityTickList M field_26934 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; entityManager N field_26935 + f Lnet/minecraft/world/level/gameevent/GameEventDispatcher; gameEventDispatcher O field_39984 + f Lnet/minecraft/server/players/SleepStatus; sleepStatus P field_28859 + f I emptyTime Q field_13948 + f Lnet/minecraft/world/level/portal/PortalForcer; portalForcer R field_13956 + f Lnet/minecraft/world/ticks/LevelTicks; blockTicks S field_13949 + f Lnet/minecraft/world/ticks/LevelTicks; fluidTicks T field_13951 + f Lnet/minecraft/world/level/pathfinder/PathTypeCache; pathTypesByPosCache U field_49172 + f Ljava/util/Set; navigatingMobs V field_26932 + f Z isUpdatingNavigations W field_36317 + f Lit/unimi/dsi/fastutil/objects/ObjectLinkedOpenHashSet; blockEvents X field_13950 + f Ljava/util/List; blockEventsToReschedule Y field_35565 + f Z handlingTick Z field_13953 + f Lnet/minecraft/core/BlockPos; END_SPAWN_POINT a field_25144 + f Ljava/util/List; customSpawners aa field_25141 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight; dragonFight ab field_25142 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; dragonParts ac field_26933 + f Lnet/minecraft/world/level/StructureManager; structureManager ad field_23787 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheck; structureCheck ae field_36208 + f Z tickTime af field_25143 + f Lnet/minecraft/world/RandomSequences; randomSequences ag field_44857 + f Lnet/minecraft/util/valueproviders/IntProvider; RAIN_DELAY b field_41749 + f Lnet/minecraft/util/valueproviders/IntProvider; RAIN_DURATION c field_41750 + f Lnet/minecraft/util/valueproviders/IntProvider; THUNDER_DURATION d field_41751 + f Z noSave e field_13957 + f Lnet/minecraft/world/entity/raid/Raids; raids f field_18811 + m ()Ljava/lang/Iterable; getAllEntities A method_27909 + c Gets an unmodifiable iterator of all loaded entities in the world. + m ()Z isFlat B method_28125 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight; getDragonFight D method_29198 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; findLightningRod E method_31418 + p 1 pos + m ()Ljava/lang/String; getWatchdogStats F method_31268 + m (Lnet/minecraft/core/BlockPos;)V method_39222 F method_39222 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; method_34679 G method_34679 + m ()Lnet/minecraft/world/level/pathfinder/PathTypeCache; getPathTypeCache H method_57133 + m (Lnet/minecraft/core/BlockPos;)Z method_34680 H method_34680 + m ()Lnet/minecraft/world/RandomSequences; getRandomSequences L method_52168 + m ()Lnet/minecraft/world/level/StructureManager; structureManager a method_27056 + m (IIZ)Z setChunkForced a method_17988 + p 1 chunkX + p 2 chunkZ + p 3 add + m (IIZZ)V setWeatherParameters a method_27910 + p 1 clearTime + p 2 weatherTime + p 3 isRaining + p 4 isThundering + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; getRandomSequence a method_51836 + p 1 location + m (Lnet/minecraft/server/level/ServerPlayer;)V addNewPlayer a method_18213 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity$RemovalReason;)V removePlayerImmediately a method_18770 + p 1 player + p 2 reason + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/particles/ParticleOptions;ZDDDIDDDD)Z sendParticles a method_14166 + p 1 player + p 2 type + p 3 longDistance + p 4 posX + p 6 posY + p 8 posZ + p 10 particleCount + p 11 xOffset + p 13 yOffset + p 15 zOffset + p 17 speed + m (Lnet/minecraft/server/level/ServerPlayer;ZDDDLnet/minecraft/network/protocol/Packet;)Z sendParticles a method_14191 + p 1 player + p 2 longDistance + p 3 posX + p 5 posY + p 7 posZ + p 9 packet + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findNearestMapStructure a method_8487 + p 1 structureTag + p 2 pos + p 3 radius + p 4 skipExistingChunks + m (Lnet/minecraft/util/ProgressListener;ZZ)V save a method_14176 + p 1 progress + p 2 flush + p 3 skipSave + m (Lnet/minecraft/world/TickRateManager;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/world/entity/Entity;)V method_31420 a method_31420 + m (Lnet/minecraft/world/entity/Entity;)V tickNonPassenger a method_18762 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V tickPassenger a method_18763 + p 1 ridingEntity + p 2 passengerEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18199 a method_18199 + m (Lnet/minecraft/world/entity/ai/village/ReputationEventType;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/ReputationEventHandler;)V onReputationEvent a method_19496 + p 1 type + p 2 target + p 3 host + m (Lnet/minecraft/world/level/BlockEventData;)Z doBlockEvent a method_14174 + p 1 event + m (Lnet/minecraft/world/level/ChunkPos;)Z isNaturalSpawningAllowed a method_39998 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V onStructureStartsAvailable a method_39778 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V unload a method_18764 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;I)V tickChunk a method_18203 + p 1 chunk + p 2 randomTickSpeed + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight;)V setDragonFight a method_51837 + p 1 dragonFight + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_18198 + p 1 typeTest + p 2 predicate + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;Ljava/util/List;)V getEntities a method_47538 + p 1 typeTest + p 2 predicate + p 3 output + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Ljava/util/function/Predicate;Ljava/util/List;I)V getEntities a method_47539 + p 1 typeTest + p 2 predicate + p 3 output + p 4 maxResults + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V clearBlockEvents a method_23658 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/BlockEventData;)Z method_23659 a method_23659 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Ljava/lang/String; method_31269 a method_31269 + m (Ljava/io/Writer;)V dumpBlockEntityTickers a method_21626 + p 1 output + m (Ljava/io/Writer;Ljava/lang/Iterable;)V dumpEntities a method_21624 + p 0 writer + p 1 entities + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Ljava/lang/String; getTypeCount a method_31270 + p 0 objects + p 1 typeGetter + m (Ljava/nio/file/Path;)V saveDebugReport a method_21625 + p 1 path + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; getEntity a method_14190 + p 1 uniqueId + m (Ljava/util/function/BooleanSupplier;)V tick a method_18765 + c Runs a single tick for the world + p 1 hasTimeLeft + m (Ljava/util/function/Predicate;)Ljava/util/List; getPlayers a method_18766 + p 1 predicate + m (Ljava/util/function/Predicate;I)Ljava/util/List; getPlayers a method_47540 + p 1 predicate + p 2 maxResults + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/world/entity/Entity;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47541 a method_47541 + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;III)Lcom/mojang/datafixers/util/Pair; findClosestBiome3d a method_42108 + p 1 biomePredicate + p 2 pos + p 3 radius + p 4 horizontalStep + p 5 verticalStep + m (Ljava/util/stream/Stream;)V addLegacyChunkEntities a method_31423 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)V tickPrecipitation a method_52370 + p 1 blockPos + m (Lnet/minecraft/core/BlockPos;F)V setDefaultSpawnPos a method_8554 + p 1 pos + p 2 angle + m (Lnet/minecraft/core/BlockPos;I)Z isCloseToVillage a method_19497 + p 1 pos + p 2 sections + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)V tickFluid a method_14171 + p 1 pos + p 2 fluid + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19535 a method_19535 + m (Lnet/minecraft/core/Holder;)Z method_31421 a method_31421 + m (Lnet/minecraft/core/SectionPos;)Z isVillage a method_20588 + p 1 pos + m (Lnet/minecraft/core/particles/ParticleOptions;DDDIDDDD)I sendParticles a method_14199 + p 1 type + p 2 posX + p 4 posY + p 6 posZ + p 8 particleCount + p 9 xOffset + p 11 yOffset + p 13 zOffset + p 15 speed + m (Lnet/minecraft/server/MinecraftServer;)Lnet/minecraft/world/level/storage/DimensionDataStorage; method_17985 a method_17985 + m (ZZ)V tickCustomSpawners a method_29202 + p 1 spawnEnemies + p 2 spawnFriendlies + m ()V wakeUpAllPlayers as method_23660 + m ()V announceSleepStatus at method_33143 + m ()V advanceWeatherCycle au method_39501 + m ()V saveLevelData av method_14188 + c Saves the chunks to disk. + m ()V runBlockEvents aw method_14192 + m ()Ljava/lang/String; method_54438 ax method_54438 + m ()V tickTime b method_29203 + m (I)Lnet/minecraft/world/entity/Entity; getEntityOrPart b method_31424 + p 1 id + m (J)V setDayTime b method_29199 + p 1 time + m (Lnet/minecraft/server/level/ServerPlayer;)V addRespawnedPlayer b method_18215 + p 1 player + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_39926 b method_39926 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V startTickingChunk b method_39223 + p 1 chunk + m (Ljava/util/stream/Stream;)V addWorldGenChunkEntities b method_31426 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findLightningTargetAround b method_18210 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19499 b method_19499 + m (Lnet/minecraft/core/SectionPos;)I sectionsToVillage b method_19498 + p 1 pos + m ()Z isHandlingTick c method_14177 + m (J)Z areEntitiesLoaded c method_37116 + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V addPlayer c method_18771 + p 1 player + m (Lnet/minecraft/world/entity/Entity;)Z addWithUUID c method_18768 + c Used for "unnatural" ways of entities appearing in the world, e.g. summon command, interdimensional teleports + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isVillage c method_19500 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19536 c method_19536 + m ()Z canSleepThroughNights d method_33144 + m (J)Z isPositionTickingWithEntitiesLoaded d method_37117 + p 1 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V method_18773 d method_18773 + m (Lnet/minecraft/world/entity/Entity;)V addDuringTeleport d method_18769 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; getRaidAt d method_19502 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V tickBlock d method_14189 + p 1 pos + p 2 block + m ()V updateSleepingPlayerList e method_8448 + c Updates the flag that indicates whether all players in the world are sleeping. + m (J)Lnet/minecraft/world/RandomSequences; method_51838 e method_51838 + m (Lnet/minecraft/world/entity/Entity;)Z tryAddFreshEntityWithPassengers e method_30736 + c Attempts to summon an entity and it's passangers. They will only be summoned if all entities are unique and not already in queue to be summoned. + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isRaided e method_19503 + p 1 pos + m ()Lnet/minecraft/server/ServerScoreboard; getScoreboard f method_14170 + m (Lnet/minecraft/core/BlockPos;)Z isPositionEntityTicking f method_37118 + p 1 pos + m ()V resetWeatherCycle g method_14195 + m (Lnet/minecraft/core/BlockPos;)Z isNaturalSpawningAllowed g method_39999 + p 1 pos + m ()V resetEmptyTime h method_14197 + c Resets the updateEntityTick field to 0 + m ()Ljava/util/List; getDragons i method_18776 + m (Lnet/minecraft/world/entity/Entity;)Z shouldDiscardEntity i method_31430 + p 1 entity + m ()Lnet/minecraft/server/level/ServerPlayer; getRandomPlayer j method_18779 + m (Lnet/minecraft/world/entity/Entity;)Z addEntity j method_14175 + c Called when an entity is spawned in the world. This includes players. + p 1 entity + m ()I getLogicalHeight k method_32819 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_31431 k method_31431 + m ()Lnet/minecraft/server/level/ServerChunkCache; getChunkSource l method_14178 + c Gets the world's chunk provider + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_24310 l method_24310 + m ()Lnet/minecraft/world/ticks/LevelTicks; getBlockTicks m method_14196 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_18781 m method_18781 + m ()Lnet/minecraft/world/ticks/LevelTicks; getFluidTicks n method_14179 + m ()Lnet/minecraft/world/level/portal/PortalForcer; getPortalForcer p method_14173 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; getStructureManager q method_14183 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; getDataStorage u method_17983 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getForcedChunks w method_17984 + m ()Lnet/minecraft/world/entity/ai/village/poi/PoiManager; getPoiManager y method_19494 + m ()Lnet/minecraft/world/entity/raid/Raids; getRaids z method_19495 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/concurrent/Executor;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/storage/ServerLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;Lnet/minecraft/server/level/progress/ChunkProgressListener;ZJLjava/util/List;ZLnet/minecraft/world/RandomSequences;)V + p 1 server + p 2 dispatcher + p 3 levelStorageAccess + p 4 serverLevelData + p 5 dimension + p 6 levelStem + p 7 progressListener + p 8 isDebug + p 9 biomeZoomSeed + p 11 customSpawners + p 12 tickTime + p 13 randomSequences + m ()V +c net/minecraft/server/level/ServerLevel$EntityCallbacks aqu$a net/minecraft/class_3218$class_5526 + f Lnet/minecraft/server/level/ServerLevel; field_26936 a field_26936 + m (Lnet/minecraft/world/entity/Entity;)V onCreated a method_31432 + m (Lnet/minecraft/world/entity/Entity;)V onDestroyed b method_31433 + m (Lnet/minecraft/world/entity/Entity;)V onTickingStart c method_31434 + m (Lnet/minecraft/world/entity/Entity;)V onTickingEnd d method_31435 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingStart e method_31436 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingEnd f method_31437 + m (Lnet/minecraft/world/entity/Entity;)V onSectionChange g method_43030 + m (Lnet/minecraft/server/level/ServerLevel;)V +c net/minecraft/server/level/ServerPlayer aqv net/minecraft/class_3222 + f D INTERACTION_DISTANCE_VERIFICATION_BUFFER b field_47708 + f I NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_XZ cA field_29769 + f I NEUTRAL_MOB_DEATH_NOTIFICATION_RADII_Y cB field_29770 + f I FLY_STAT_RECORDING_SPEED cD field_46928 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; CREATIVE_BLOCK_INTERACTION_RANGE_MODIFIER cE field_47709 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; CREATIVE_ENTITY_INTERACTION_RANGE_MODIFIER cF field_47710 + f Lnet/minecraft/server/PlayerAdvancements; advancements cG field_13970 + f Lnet/minecraft/stats/ServerStatsCounter; stats cH field_13966 + f F lastRecordedHealthAndAbsorption cI field_13963 + c the total health of the player, includes actual health and absorption health. Updated every tick. + f I lastRecordedFoodLevel cJ field_13983 + f I lastRecordedAirLevel cK field_13968 + f I lastRecordedArmor cL field_13982 + f Lnet/minecraft/server/network/ServerGamePacketListenerImpl; connection c field_13987 + f I lastRecordedLevel cM field_13965 + f I lastRecordedExperience cN field_13980 + f F lastSentHealth cO field_13997 + f I lastSentFood cP field_13979 + f Z lastFoodSaturationZero cQ field_13972 + f I lastSentExp cR field_13978 + f I spawnInvulnerableTime cS field_13998 + f Lnet/minecraft/world/entity/player/ChatVisiblity; chatVisibility cT field_13993 + f Z canChatColor cU field_13971 + f J lastActionTime cV field_13976 + f Lnet/minecraft/world/entity/Entity; camera cW field_13984 + c The entity the player is currently spectating through. + f Z isChangingDimension cX field_13985 + f Lnet/minecraft/stats/ServerRecipeBook; recipeBook cY field_13996 + f Lnet/minecraft/world/phys/Vec3; levitationStartPos cZ field_13992 + f Lorg/slf4j/Logger; LOGGER cz field_13975 + f Lnet/minecraft/server/MinecraftServer; server d field_13995 + f I levitationStartTime da field_13973 + f Z disconnected db field_13964 + f I requestedViewDistance dc field_44990 + f Ljava/lang/String; language dd field_46156 + f Lnet/minecraft/world/phys/Vec3; startingToFallPosition de field_35007 + f Lnet/minecraft/world/phys/Vec3; enteredNetherPosition df field_13994 + f Lnet/minecraft/world/phys/Vec3; enteredLavaOnVehiclePosition dg field_35008 + f Lnet/minecraft/core/SectionPos; lastSectionPos dh field_13990 + c Player section position as last updated by TicketManager, used by ChunkManager + f Lnet/minecraft/server/level/ChunkTrackingView; chunkTrackingView di field_44991 + f Lnet/minecraft/resources/ResourceKey; respawnDimension dj field_23191 + f Lnet/minecraft/core/BlockPos; respawnPosition dk field_23192 + f Z respawnForced dl field_23193 + f F respawnAngle dm field_26353 + f Lnet/minecraft/server/network/TextFilter; textFilter dn field_26821 + f Z textFilteringEnabled do field_28860 + f Z allowsListing dp field_35566 + f Z spawnExtraParticlesOnFall dq field_49776 + f Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker; wardenSpawnTracker dr field_39985 + f Lnet/minecraft/core/BlockPos; raidOmenPosition ds field_50088 + f Lnet/minecraft/world/phys/Vec3; lastKnownClientMovement dt field_51875 + f Lnet/minecraft/world/inventory/ContainerSynchronizer; containerSynchronizer du field_29180 + f Lnet/minecraft/world/inventory/ContainerListener; containerListener dv field_29181 + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession dw field_39986 + f I containerCounter dx field_13986 + f Lnet/minecraft/server/level/ServerPlayerGameMode; gameMode e field_13974 + f Z seenCredits f field_13969 + f Ljava/lang/Object; object g field_49777 + f Z wonGame h field_13989 + m ()Lnet/minecraft/server/level/ServerLevel; serverLevel A method_51469 + m ()Ljava/lang/String; getIpAddress B method_14209 + c Gets the player's IP address. Used in /banip. + m ()Lnet/minecraft/server/level/ClientInformation; clientInformation C method_53823 + m ()Z canChatInColor D method_34879 + m ()Lnet/minecraft/world/entity/player/ChatVisiblity; getChatVisibility E method_14238 + m ()I requestedViewDistance F method_52371 + m ()V resetLastActionTime H method_14234 + m ()Lnet/minecraft/stats/ServerStatsCounter; getStats I method_14248 + m ()Lnet/minecraft/stats/ServerRecipeBook; getRecipeBook J method_14253 + m ()Lnet/minecraft/world/entity/Entity; getCamera L method_14242 + m ()J getLastActionTime N method_14219 + m ()Lnet/minecraft/network/chat/Component; getTabListDisplayName O method_14206 + c Returns null which indicates the tab list should just display the player's name, return a different value to display the specified text instead of the player's name + m ()Z isChangingDimension P method_14208 + m ()V hasChangedDimension Q method_14240 + m ()Lnet/minecraft/server/PlayerAdvancements; getAdvancements R method_14236 + m ()Lnet/minecraft/core/BlockPos; getRespawnPosition S method_26280 + m ()F getRespawnAngle T method_30631 + m ()Lnet/minecraft/resources/ResourceKey; getRespawnDimension U method_26281 + m ()Z isRespawnForced V method_26282 + m ()Lnet/minecraft/core/SectionPos; getLastSectionPos W method_14232 + m ()Lnet/minecraft/server/level/ChunkTrackingView; getChunkTrackingView X method_52372 + m ()Lnet/minecraft/server/network/TextFilter; getTextFilter Y method_31273 + m (DDDZ)V doCheckFallDamage a method_14207 + p 1 movementX + p 3 movementY + p 5 movementZ + p 7 onGround + m (FFZZ)V setPlayerInput a method_14218 + p 1 strafe + p 2 forward + p 3 jumping + p 4 sneaking + m (I)V setExperiencePoints a method_14228 + p 1 experiencePoints + m (ILnet/minecraft/world/scores/ScoreAccess;)V method_14221 a method_14221 + m (Lnet/minecraft/network/protocol/status/ServerStatus;)V sendServerStatus a method_43930 + p 1 serverStatus + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;FZZ)V setRespawnPosition a method_26284 + p 1 dimension + p 2 position + p 3 angle + p 4 forced + p 5 sendMessage + m (Lnet/minecraft/server/level/ChunkTrackingView;)V setChunkTrackingView a method_52373 + p 1 chunkTrackingView + m (Lnet/minecraft/server/level/ClientInformation;)V updateOptions a method_14213 + p 1 clientInformation + m (Lnet/minecraft/server/level/ServerLevel;)V setServerLevel a method_51468 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;DDDFF)V teleportTo a method_14251 + p 1 newLevel + p 2 x + p 4 y + p 6 z + p 8 yaw + p 9 pitch + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; findRespawnAndUseSpawnBlock a method_60588 + p 0 level + p 1 pos + p 2 angle + p 3 forced + p 4 keepInventory + m (Lnet/minecraft/server/level/ServerPlayer;Z)V restoreFrom a method_14203 + p 1 that + p 2 keepEverything + m (Lnet/minecraft/util/Unit;)V method_19504 a method_19504 + m (Lnet/minecraft/world/entity/Mob;)V method_29777 a method_29777 + m (Lnet/minecraft/world/entity/monster/Monster;)Z method_26283 a method_26283 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45164 a method_45164 + m (Lnet/minecraft/world/entity/player/Inventory;I)V method_37412 a method_37412 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V initMenu a method_14235 + p 1 menu + m (Lnet/minecraft/world/level/GameType;)Z setGameMode a method_7336 + p 1 gameMode + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/ScoreHolder;[Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;)V handleTeamKill a method_14227 + p 1 scoreHolder + p 2 teamMember + p 3 crtieria + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;I)V updateScoreForCriteria a method_14212 + p 1 criteria + p 2 points + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;)V lookAt a method_14222 + p 1 fromAnchor + p 2 entity + p 3 toAnchor + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; method_60589 a method_60589 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z bedInRange a method_26285 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/SectionPos;)V setLastSectionPos a method_17668 + p 1 sectionPos + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/world/level/GameType; readPlayerMode a method_32745 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_58583 a method_58583 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_14210 a method_14210 + m (Lnet/minecraft/network/chat/OutgoingChatMessage;ZLnet/minecraft/network/chat/ChatType$Bound;)V sendChatMessage a method_43505 + p 1 message + p 2 filtered + p 3 boundType + m (Lnet/minecraft/network/chat/RemoteChatSession;)V setChatSession a method_46364 + p 1 chatSession + m (Z)Z drop a method_37413 + p 1 dropStack + c Whether to drop the entire stack of items. If {@code false}, drops a single item. + m (ZLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; findRespawnPositionAndUseSpawnBlock a method_60590 + p 1 keepInventory + p 2 postDimensionTransition + m ()Z allowsListing aa method_39426 + m ()Lnet/minecraft/network/chat/RemoteChatSession; getChatSession ac method_45163 + m ()V clearRaidOmenPosition ae method_58584 + m ()Lnet/minecraft/core/BlockPos; getRaidOmenPosition af method_58585 + m (DDD)V checkMovementStatistics b method_54720 + p 1 dx + p 3 dy + p 5 dz + m (I)V setExperienceLevels b method_14252 + p 1 level + m (ILnet/minecraft/world/scores/ScoreAccess;)V method_14250 b method_14250 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/stream/Stream; method_54934 b method_54934 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/network/protocol/game/CommonPlayerSpawnInfo; createCommonSpawnInfo b method_52374 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)V copyRespawnPosition b method_60592 + p 1 player + m (Lnet/minecraft/world/entity/Mob;)Z method_29778 b method_29778 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/GameType; calculateGameModeForNewPlayer b method_32746 + p 1 gameType + m (Lnet/minecraft/world/phys/Vec3;)V setKnownMovement b method_52208 + p 1 knownMovement + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; method_60593 b method_60593 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z bedBlocked b method_26286 + p 1 pos + p 2 direction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29205 b method_29205 + m (Lnet/minecraft/network/chat/Component;Z)V sendSystemMessage b method_43502 + p 1 component + p 2 bypassHiddenChat + m (Z)V setSpawnExtraParticlesOnFall b method_58143 + p 1 spawnExtraParticlesOnFall + m (Lnet/minecraft/server/level/ServerLevel;)V triggerDimensionChangeTriggers c method_18783 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Z shouldFilterMessageTo c method_33795 + p 1 player + m (Lnet/minecraft/core/BlockPos;)V setRaidOmenPosition c method_58586 + p 1 raidOmenPosition + m (Lnet/minecraft/nbt/CompoundTag;)V loadGameTypes c method_32748 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_45165 c method_45165 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/protocol/Packet; method_43507 c method_43507 + m (Lnet/minecraft/world/entity/Entity;)V setCamera d method_14224 + p 1 entityToSpectate + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/protocol/Packet; method_14223 d method_14223 + m ()V updatePlayerAttributes gD method_55633 + m ()V tellNeutralMobsThatIDied gE method_29779 + m ()Z isPvpAllowed gF method_14230 + c Returns if other players can attack this player + m ()V nextContainerCounter gG method_14237 + c Gets the next window id to use. + m ()Z acceptsChatMessages gH method_44706 + m ()V initInventoryMenu h method_34225 + m (Lnet/minecraft/core/BlockPos;)Z isReachableBedBlock i method_26287 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V method_58587 j method_58587 + m (Lnet/minecraft/nbt/CompoundTag;)V storeGameTypes k method_32749 + p 1 tag + m ()V doTick m method_14226 + m ()V trackStartFallingPosition o method_38786 + m ()V trackEnteredOrExitedLavaOnVehicle p method_38787 + m ()V showEndCredits q method_60594 + m (DDD)V checkRidingStatistics q method_54721 + p 1 dx + p 3 dy + p 5 dz + m (DDD)Z didNotMove r method_54722 + p 0 dx + p 2 dy + p 4 dz + m (I)I getCoprime t method_14244 + p 1 spawnArea + m ()V disconnect v method_14231 + m ()Z hasDisconnected w method_14239 + m ()V resetSentInfo x method_14217 + c This function is called when a player's inventory is sent to him, {@code lastHealth} is updated on any dimension transitions, then reset. + m (Z)Z acceptsSystemMessages x method_44707 + p 1 bypassHiddenChat + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/level/ServerLevel;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)V + p 1 server + p 2 level + p 3 gameProfile + p 4 clientInformation + m ()V +c net/minecraft/server/level/ServerPlayer$1 aqv$1 net/minecraft/class_3222$1 + f Lnet/minecraft/server/level/ServerPlayer; field_29182 a field_29182 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V broadcastDataValue b method_34227 + p 1 container + p 2 id + p 3 value + m (Lnet/minecraft/server/level/ServerPlayer;)V +c net/minecraft/server/level/ServerPlayer$2 aqv$2 net/minecraft/class_3222$2 + f Lnet/minecraft/server/level/ServerPlayer; field_29183 a field_29183 + m (Lnet/minecraft/server/level/ServerPlayer;)V +c net/minecraft/server/level/ServerPlayer$RespawnPosAngle aqv$a net/minecraft/class_3222$class_9773 + f Lnet/minecraft/world/phys/Vec3; position a comp_2811 + f F yaw b comp_2812 + m ()Lnet/minecraft/world/phys/Vec3; position a comp_2811 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/server/level/ServerPlayer$RespawnPosAngle; of a method_60595 + p 0 position + p 1 towardsPos + m ()F yaw b comp_2812 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)F calculateLookAtYaw b method_60596 + p 0 position + p 1 towardsPos + m (Lnet/minecraft/world/phys/Vec3;F)V +c net/minecraft/server/level/ServerPlayerGameMode aqw net/minecraft/class_3225 + f Lorg/slf4j/Logger; LOGGER a field_20325 + f Lnet/minecraft/world/level/GameType; gameModeForPlayer b field_14005 + f Lnet/minecraft/server/level/ServerLevel; level c field_14007 + f Lnet/minecraft/server/level/ServerPlayer; player d field_14008 + f Lnet/minecraft/world/level/GameType; previousGameModeForPlayer e field_25715 + f Z isDestroyingBlock f field_14003 + f I destroyProgressStart g field_20326 + f Lnet/minecraft/core/BlockPos; destroyPos h field_20327 + f I gameTicks i field_14000 + f Z hasDelayedDestroy j field_20328 + f Lnet/minecraft/core/BlockPos; delayedDestroyPos k field_20329 + f I delayedTickStart l field_20330 + f I lastSentState m field_20331 + m ()V tick a method_14264 + m (Lnet/minecraft/server/level/ServerLevel;)V setLevel a method_14259 + c Sets the world instance. + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; useItem a method_14256 + p 1 player + p 2 level + p 3 stack + p 4 hand + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useItemOn a method_14262 + p 1 player + p 2 level + p 3 stack + p 4 hand + p 5 hitResult + m (Lnet/minecraft/world/item/Item;)V method_59904 a method_59904 + m (Lnet/minecraft/world/level/GameType;)Z changeGameModeForPlayer a method_30118 + p 1 gameModeForPlayer + m (Lnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;)V setGameModeForPlayer a method_14261 + p 1 gameModeForPlayer + p 2 previousGameModeForPlayer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)F incrementDestroyProgress a method_21716 + p 1 state + p 2 pos + p 3 startTick + m (Lnet/minecraft/core/BlockPos;)Z destroyBlock a method_14266 + c Attempts to harvest a block + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;)V destroyAndAck a method_21717 + p 1 pos + p 2 sequence + p 3 message + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/game/ServerboundPlayerActionPacket$Action;Lnet/minecraft/core/Direction;II)V handleBlockBreakAction a method_14263 + p 1 pos + p 2 action + p 3 face + p 4 maxBuildHeight + p 5 sequence + m (Lnet/minecraft/core/BlockPos;ZILjava/lang/String;)V debugLogging a method_41250 + p 1 pos + p 2 terminate + p 3 sequence + p 4 message + m ()Lnet/minecraft/world/level/GameType; getGameModeForPlayer b method_14257 + m ()Lnet/minecraft/world/level/GameType; getPreviousGameModeForPlayer c method_30119 + m ()Z isSurvival d method_14267 + m ()Z isCreative e method_14268 + c Get if we are in creative game mode. + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player + m ()V +c net/minecraft/server/level/ThreadedLevelLightEngine aqx net/minecraft/class_3227 + f I DEFAULT_BATCH_SIZE a field_44692 + f Lorg/slf4j/Logger; LOGGER d field_14020 + f Lnet/minecraft/util/thread/ProcessorMailbox; taskMailbox e field_17255 + f Lit/unimi/dsi/fastutil/objects/ObjectList; lightTasks f field_17256 + f Lnet/minecraft/server/level/ChunkMap; chunkMap g field_17257 + f Lnet/minecraft/util/thread/ProcessorHandle; sorterMailbox h field_17259 + f I taskPerBatch i field_17260 + f Ljava/util/concurrent/atomic/AtomicBoolean; scheduled j field_18812 + m (II)Ljava/util/concurrent/CompletableFuture; waitForPendingTasks a method_53694 + p 1 x + p 2 z + m (IILnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V addTask a method_17308 + p 1 chunkX + p 2 chunkZ + p 3 type + p 4 task + m (IILjava/lang/Runnable;)V method_53695 a method_53695 + m (IILjava/util/function/IntSupplier;Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V addTask a method_17307 + p 1 chunkX + p 2 chunkZ + p 3 queueLevelSupplier + p 4 type + p 5 task + m (Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType;Ljava/lang/Runnable;)V method_17313 a method_17313 + m (Lnet/minecraft/world/level/ChunkPos;)V updateChunkStatus a method_20386 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Runnable;)V method_17306 a method_17306 + m (Lnet/minecraft/world/level/ChunkPos;ZLnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_51284 a method_51284 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_17309 a method_17309 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;)V method_51288 a method_51288 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Z)Ljava/util/concurrent/CompletableFuture; initializeLight a method_51285 + p 1 chunk + p 2 lightEnabled + m (ZLnet/minecraft/world/level/ChunkPos;)V method_51470 a method_51470 + m ()V tryScheduleUpdate b method_17303 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Runnable;)V method_51287 b method_51287 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/DataLayer;)V method_14280 b method_14280 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Z)Ljava/util/concurrent/CompletableFuture; lightChunk b method_17310 + p 1 chunk + p 2 isLighted + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/String; method_18846 b method_18846 + m (Lnet/minecraft/core/SectionPos;)Ljava/lang/String; method_18844 b method_18844 + m (Lnet/minecraft/core/SectionPos;Z)Ljava/lang/String; method_18847 b method_18847 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_51286 c method_51286 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/lang/String; method_18845 c method_18845 + m (Lnet/minecraft/core/BlockPos;)V method_14279 c method_14279 + m (Lnet/minecraft/core/SectionPos;Z)V method_14273 c method_14273 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_20624 d method_20624 + m (Lnet/minecraft/world/level/ChunkPos;Z)V method_20626 d method_20626 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_51472 e method_51472 + m (Lnet/minecraft/world/level/ChunkPos;Z)Ljava/lang/String; method_51473 e method_51473 + m ()V runUpdate f method_14277 + m (Lnet/minecraft/world/level/ChunkPos;)V method_51474 f method_51474 + m (Lnet/minecraft/world/level/ChunkPos;Z)V method_51475 f method_51475 + m ()V method_53696 g method_53696 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/lang/String; method_20387 g method_20387 + m ()V method_19505 h method_19505 + m (Lnet/minecraft/world/level/ChunkPos;)V method_20388 h method_20388 + m ()I method_20625 i method_20625 + m ()I method_20607 j method_20607 + m ()I method_17314 k method_17314 + m ()I method_20389 l method_20389 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/server/level/ChunkMap;ZLnet/minecraft/util/thread/ProcessorMailbox;Lnet/minecraft/util/thread/ProcessorHandle;)V + p 1 lightChunk + p 2 chunkMap + p 3 skyLight + p 4 taskMailbox + p 5 sorterMailbox + m ()V +c net/minecraft/server/level/ThreadedLevelLightEngine$TaskType aqx$a net/minecraft/class_3227$class_3901 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; PRE_UPDATE a field_17261 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; POST_UPDATE b field_17262 + f [Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; $VALUES c field_17263 + m ()[Lnet/minecraft/server/level/ThreadedLevelLightEngine$TaskType; $values a method_36577 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/level/Ticket aqy net/minecraft/class_3228 + f Lnet/minecraft/server/level/TicketType; type a field_14023 + f I ticketLevel b field_14025 + f Ljava/lang/Object; key c field_14022 + f J createdTick d field_14024 + m ()Lnet/minecraft/server/level/TicketType; getType a method_14281 + m (J)V setCreatedTick a method_23956 + p 1 timestamp + m (Lnet/minecraft/server/level/Ticket;)I compareTo a method_14285 + p 1 other + m ()I getTicketLevel b method_14283 + m (J)Z timedOut b method_20627 + p 1 currentTime + m (Lnet/minecraft/server/level/TicketType;ILjava/lang/Object;)V + p 1 type + p 2 ticketLevel + p 3 key +c net/minecraft/server/level/TicketType aqz net/minecraft/class_3230 + f Lnet/minecraft/server/level/TicketType; START a field_14030 + f Lnet/minecraft/server/level/TicketType; DRAGON b field_17264 + f Lnet/minecraft/server/level/TicketType; PLAYER c field_14033 + f Lnet/minecraft/server/level/TicketType; FORCED d field_14031 + f Lnet/minecraft/server/level/TicketType; PORTAL e field_19280 + f Lnet/minecraft/server/level/TicketType; POST_TELEPORT f field_19347 + f Lnet/minecraft/server/level/TicketType; UNKNOWN g field_14032 + f Ljava/lang/String; name h field_14034 + f Ljava/util/Comparator; comparator i field_14029 + f J timeout j field_19348 + m ()Ljava/util/Comparator; getComparator a method_14292 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)I method_17315 a method_17315 + m (Ljava/lang/String;Ljava/util/Comparator;)Lnet/minecraft/server/level/TicketType; create a method_14291 + p 0 name + p 1 comparator + m (Ljava/lang/String;Ljava/util/Comparator;I)Lnet/minecraft/server/level/TicketType; create a method_20628 + p 0 name + p 1 comparator + p 2 lifespan + m ()J timeout b method_20629 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)I method_17316 b method_17316 + m (Ljava/lang/String;Ljava/util/Comparator;J)V + p 1 name + p 2 comparator + p 3 timeout + m ()V +c net/minecraft/server/level/TickingTracker ara net/minecraft/class_6609 + f I MAX_LEVEL a field_44858 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; chunks b field_34888 + f I INITIAL_TICKET_LIST_CAPACITY c field_34889 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; tickets d field_34890 + m ()V runAllUpdates a method_38635 + m (I)V replacePlayerTicketsLevel a method_38636 + p 1 ticketLevel + m (JLnet/minecraft/server/level/Ticket;)V addTicket a method_38637 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V addTicket a method_38638 + p 1 type + p 2 chunkPos + p 3 ticketLevel + p 4 key + m (Lnet/minecraft/util/SortedArraySet;)I getTicketLevelAt a method_38639 + p 1 tickets + m (Lnet/minecraft/world/level/ChunkPos;)I getLevel a method_38640 + p 1 chunkPos + m (JLnet/minecraft/server/level/Ticket;)V removeTicket b method_38641 + p 1 chunkPos + p 3 ticket + m (Lnet/minecraft/server/level/TicketType;Lnet/minecraft/world/level/ChunkPos;ILjava/lang/Object;)V removeTicket b method_38642 + p 1 type + p 2 chunkPos + p 3 ticketLevel + p 4 key + m (J)Ljava/lang/String; getTicketDebugString d method_38643 + p 1 chunkPos + m (J)Lnet/minecraft/util/SortedArraySet; getTickets g method_38644 + p 1 chunkPos + m (J)Lnet/minecraft/util/SortedArraySet; method_38645 h method_38645 + m ()V +c net/minecraft/server/level/WorldGenRegion arb net/minecraft/class_3233 + f Lorg/slf4j/Logger; LOGGER a field_14092 + f Lnet/minecraft/util/StaticCache2D; cache b field_14098 + f Lnet/minecraft/world/level/chunk/ChunkAccess; center c field_28557 + f Lnet/minecraft/server/level/ServerLevel; level d field_14093 + f J seed e field_14087 + f Lnet/minecraft/world/level/storage/LevelData; levelData f field_14097 + f Lnet/minecraft/util/RandomSource; random g field_14091 + f Lnet/minecraft/world/level/dimension/DimensionType; dimensionType h field_14096 + f Lnet/minecraft/world/ticks/WorldGenTickAccess; blockTicks i field_14099 + f Lnet/minecraft/world/ticks/WorldGenTickAccess; fluidTicks j field_14094 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager k field_20668 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; generatingStep l field_51876 + f Ljava/util/function/Supplier; currentlyGenerating m field_33756 + f Ljava/util/concurrent/atomic/AtomicLong; subTickCount n field_35442 + f Lnet/minecraft/resources/ResourceLocation; WORLDGEN_REGION_RANDOM o field_38683 + m ()Lnet/minecraft/world/level/ChunkPos; getCenter a method_33561 + m (Lnet/minecraft/server/level/GenerationChunkHolder;)Ljava/lang/String; method_60479 a method_60479 + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround a method_42109 + p 1 pos + p 2 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Ljava/lang/String; method_60480 a method_60480 + m (Lnet/minecraft/core/BlockPos;)V markPosForPostprocessing f method_14338 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/TickContainerAccess; method_14337 g method_14337 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/TickContainerAccess; method_14340 k method_14340 + m ()Ljava/lang/String; method_60481 p method_60481 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/world/level/chunk/ChunkAccess;)V + p 1 level + p 2 cache + p 3 generatingStep + p 4 center + m ()V +c net/minecraft/server/level/package-info arc net/minecraft/class_5978 +c net/minecraft/server/level/progress/ChunkProgressListener ard net/minecraft/class_3949 + m ()V start a method_17675 + m (I)I calculateDiameter a method_56041 + p 0 radius + m (Lnet/minecraft/world/level/ChunkPos;)V updateSpawnPos a method_17669 + p 1 center + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V onStatusChange a method_17670 + p 1 chunkPos + p 2 chunkStatus + m ()V stop b method_17671 +c net/minecraft/server/level/progress/ChunkProgressListenerFactory are net/minecraft/class_3950 +c net/minecraft/server/level/progress/LoggerChunkProgressListener arf net/minecraft/class_3951 + f Lorg/slf4j/Logger; LOGGER a field_17467 + f I maxCount b field_17468 + f I count c field_17469 + f J startTime d field_17470 + f J nextTickTime e field_17471 + m (I)Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; createFromGameruleRadius b method_56042 + p 0 radius + m ()Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; createCompleted c method_56043 + m (I)Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; create c method_56044 + p 0 radius + m ()I getProgress d method_17672 + m (I)V + p 1 maxCount + m ()V +c net/minecraft/server/level/progress/ProcessorChunkProgressListener arg net/minecraft/class_3952 + f Lnet/minecraft/server/level/progress/ChunkProgressListener; delegate a field_17472 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox b field_17473 + f Z started c field_48272 + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;Ljava/util/concurrent/Executor;)Lnet/minecraft/server/level/progress/ProcessorChunkProgressListener; createStarted a method_34228 + p 0 delegate + p 1 dispatcher + m (Lnet/minecraft/world/level/ChunkPos;)V method_17673 b method_17673 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V method_17674 b method_17674 + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;Ljava/util/concurrent/Executor;)V + p 1 delegate + p 2 dispatcher +c net/minecraft/server/level/progress/StoringChunkProgressListener arh net/minecraft/class_3953 + f Lnet/minecraft/server/level/progress/LoggerChunkProgressListener; delegate a field_17474 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; statuses b field_17475 + f Lnet/minecraft/world/level/ChunkPos; spawnPos c field_17476 + f I fullDiameter d field_17477 + f I radius e field_17478 + f I diameter f field_17479 + f Z started g field_17480 + m (II)Lnet/minecraft/world/level/chunk/status/ChunkStatus; getStatus a method_17676 + p 1 x + p 2 z + m (I)Lnet/minecraft/server/level/progress/StoringChunkProgressListener; createFromGameruleRadius b method_56045 + p 0 radius + m ()Lnet/minecraft/server/level/progress/StoringChunkProgressListener; createCompleted c method_56046 + m (I)Lnet/minecraft/server/level/progress/StoringChunkProgressListener; create c method_56047 + p 0 radius + m ()I getFullDiameter d method_17677 + m ()I getDiameter e method_17678 + m ()I getProgress f method_17679 + m (Lnet/minecraft/server/level/progress/LoggerChunkProgressListener;III)V + p 1 delegate + p 2 fullDiameter + p 3 radius + p 4 diameter +c net/minecraft/server/level/progress/package-info ari net/minecraft/class_5979 +c net/minecraft/server/network/CommonListenerCookie arj net/minecraft/class_8792 + f Lcom/mojang/authlib/GameProfile; gameProfile a comp_1959 + f I latency b comp_1960 + f Lnet/minecraft/server/level/ClientInformation; clientInformation c comp_1961 + f Z transferred d comp_2202 + m ()Lcom/mojang/authlib/GameProfile; gameProfile a comp_1959 + m (Lcom/mojang/authlib/GameProfile;Z)Lnet/minecraft/server/network/CommonListenerCookie; createInitial a method_53824 + p 0 gameProfile + p 1 transferred + m ()I latency b comp_1960 + m ()Lnet/minecraft/server/level/ClientInformation; clientInformation c comp_1961 + m ()Z transferred d comp_2202 + m (Lcom/mojang/authlib/GameProfile;ILnet/minecraft/server/level/ClientInformation;Z)V +c net/minecraft/server/network/ConfigurationTask ark net/minecraft/class_8605 + m ()Lnet/minecraft/server/network/ConfigurationTask$Type; type a method_52375 + m (Ljava/util/function/Consumer;)V start a method_52376 + p 1 task +c net/minecraft/server/network/ConfigurationTask$Type ark$a net/minecraft/class_8605$class_8606 + f Ljava/lang/String; id a comp_1576 + m ()Ljava/lang/String; id a comp_1576 + m (Ljava/lang/String;)V +c net/minecraft/server/network/Filterable arl net/minecraft/class_9262 + f Ljava/lang/Object; raw a comp_2369 + f Ljava/util/Optional; filtered b comp_2370 + m ()Ljava/lang/Object; raw a comp_2369 + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; from a method_57134 + p 0 filteredText + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_57135 + p 0 codec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57136 a method_57136 + m (Ljava/lang/Object;)Lnet/minecraft/server/network/Filterable; passThrough a method_57137 + p 0 value + m (Ljava/util/function/Function;)Lnet/minecraft/server/network/Filterable; map a method_57138 + p 1 mappingFunction + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_57139 + p 0 codec + m (Z)Ljava/lang/Object; get a method_57140 + p 1 filtered + m ()Ljava/util/Optional; filtered b comp_2370 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve b method_57141 + p 1 resolver + m (Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/server/network/FilteredText arm net/minecraft/class_5837 + f Lnet/minecraft/server/network/FilteredText; EMPTY a field_28863 + f Ljava/lang/String; raw b comp_841 + f Lnet/minecraft/network/chat/FilterMask; mask c comp_978 + m ()Ljava/lang/String; filtered a method_45059 + m (Ljava/lang/String;)Lnet/minecraft/server/network/FilteredText; passThrough a method_45060 + p 0 raw + m ()Ljava/lang/String; filteredOrEmpty b method_45061 + m (Ljava/lang/String;)Lnet/minecraft/server/network/FilteredText; fullyFiltered b method_45062 + p 0 raw + m ()Z isFiltered c method_45063 + m ()Ljava/lang/String; raw d comp_841 + m ()Lnet/minecraft/network/chat/FilterMask; mask e comp_978 + m (Ljava/lang/String;Lnet/minecraft/network/chat/FilterMask;)V + m ()V +c net/minecraft/server/network/LegacyProtocolUtils arn net/minecraft/class_8607 + f I CUSTOM_PAYLOAD_PACKET_ID a field_44992 + f Ljava/lang/String; CUSTOM_PAYLOAD_PACKET_PING_CHANNEL b field_44993 + f I GET_INFO_PACKET_ID c field_44994 + f I GET_INFO_PACKET_VERSION_1 d field_44995 + f I DISCONNECT_PACKET_ID e field_44996 + f I FAKE_PROTOCOL_VERSION f field_44997 + m (Lio/netty/buffer/ByteBuf;)Ljava/lang/String; readLegacyString a method_52377 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/lang/String;)V writeLegacyString a method_52378 + p 0 buffer + p 1 string + m ()V +c net/minecraft/server/network/LegacyQueryHandler aro net/minecraft/class_3238 + f Lorg/slf4j/Logger; LOGGER a field_14101 + f Lnet/minecraft/server/ServerInfo; server b field_44998 + m (Lnet/minecraft/server/ServerInfo;)Ljava/lang/String; createVersion0Response a method_52379 + p 0 server + m (Lio/netty/buffer/ByteBuf;)Z readCustomPayloadPacket a method_52380 + p 0 buffer + m (Lio/netty/buffer/ByteBufAllocator;Ljava/lang/String;)Lio/netty/buffer/ByteBuf; createLegacyDisconnectPacket a method_52381 + p 0 bufferAllocator + p 1 reason + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V sendFlushAndClose a method_14344 + p 0 context + p 1 buffer + m (Lnet/minecraft/server/ServerInfo;)Ljava/lang/String; createVersion1Response b method_52382 + p 0 server + m (Lnet/minecraft/server/ServerInfo;)V + p 1 server + m ()V +c net/minecraft/server/network/MemoryServerHandshakePacketListenerImpl arp net/minecraft/class_3240 + f Lnet/minecraft/server/MinecraftServer; server b field_14104 + f Lnet/minecraft/network/Connection; connection c field_14103 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;)V + p 1 server + p 2 connection +c net/minecraft/server/network/PlayerChunkSender arq net/minecraft/class_8608 + f F MIN_CHUNKS_PER_TICK a field_45000 + f F MAX_CHUNKS_PER_TICK b field_45001 + f Lorg/slf4j/Logger; LOGGER c field_45002 + f F START_CHUNKS_PER_TICK d field_45003 + f I MAX_UNACKNOWLEDGED_BATCHES e field_45004 + f Lit/unimi/dsi/fastutil/longs/LongSet; pendingChunks f field_45005 + f Z memoryConnection g field_45006 + f F desiredChunksPerTick h field_45007 + f F batchQuota i field_45008 + f I unacknowledgedBatches j field_45009 + f I maxUnacknowledgedBatches k field_45010 + m (F)V onChunkBatchReceivedByClient a method_52383 + p 1 desiredBatchSize + m (J)Z isPending a method_52384 + p 1 chunkPos + m (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; collectChunksToSend a method_52385 + p 1 chunkMap + p 2 chunkPos + m (Lnet/minecraft/server/level/ServerPlayer;)V sendNextChunks a method_52386 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/ChunkPos;)V dropChunk a method_52387 + p 1 player + p 2 chunkPos + m (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V sendChunk a method_52388 + p 0 packetListener + p 1 level + p 2 chunk + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/LevelChunk;)I method_52389 a method_52389 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V markChunkPendingToSend a method_52390 + p 1 chunk + m (Z)V + p 1 memoryConnection + m ()V +c net/minecraft/server/network/ServerCommonPacketListenerImpl arr net/minecraft/class_8609 + f I LATENCY_CHECK_INTERVAL b field_45011 + f Lnet/minecraft/network/chat/Component; DISCONNECT_UNEXPECTED_QUERY c field_48273 + f Lnet/minecraft/server/MinecraftServer; server d field_45012 + f Lnet/minecraft/network/Connection; connection e field_45013 + f Lorg/slf4j/Logger; LOGGER f field_45014 + f I CLOSED_LISTENER_TIMEOUT g field_51342 + f Lnet/minecraft/network/chat/Component; TIMEOUT_DISCONNECTION_MESSAGE h field_45015 + f Z transferred i field_48274 + f J keepAliveTime j field_45016 + f Z keepAlivePending k field_45017 + f J keepAliveChallenge l field_45018 + f J closedListenerTime m field_51343 + f Z closed n field_51344 + f I latency o field_45019 + f Z suspendFlushingOnServerThread p field_45715 + m (J)Z checkIfClosed a method_59511 + p 1 time + m (Lnet/minecraft/server/level/ClientInformation;)Lnet/minecraft/server/network/CommonListenerCookie; createCookie a method_53825 + p 1 clientInformation + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_52396 + p 1 reason + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketSendListener;)V send a method_52391 + p 1 packet + p 2 listener + m (Lnet/minecraft/network/DisconnectionDetails;)V disconnect b method_60673 + p 1 disconnectionDetails + m (Lnet/minecraft/network/protocol/Packet;)V send b method_14364 + p 1 packet + m (Lnet/minecraft/network/DisconnectionDetails;)V method_60674 c method_60674 + m (Lnet/minecraft/network/protocol/Packet;)Ljava/lang/String; method_52399 c method_52399 + m ()V keepConnectionAlive e method_52400 + m ()V suspendFlushing f method_53046 + m ()V resumeFlushing g method_53047 + m ()Z isSingleplayerOwner h method_52402 + m ()Lcom/mojang/authlib/GameProfile; playerProfile i method_52403 + m ()Lcom/mojang/authlib/GameProfile; getOwner j method_52404 + m ()I latency k method_52405 + m ()V close l method_59512 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 cookie + m ()V +c net/minecraft/server/network/ServerConfigurationPacketListenerImpl ars net/minecraft/class_8610 + c

Interface {@link net.fabricmc.fabric.api.networking.v1.FabricServerConfigurationNetworkHandler} injected by mod fabric-networking-api-v1

+ f Lorg/slf4j/Logger; LOGGER f field_45020 + f Lnet/minecraft/network/chat/Component; DISCONNECT_REASON_INVALID_DATA g field_45021 + f Lcom/mojang/authlib/GameProfile; gameProfile h field_45022 + f Ljava/util/Queue; configurationTasks i field_45023 + f Lnet/minecraft/server/network/ConfigurationTask; currentTask j field_45024 + f Lnet/minecraft/server/level/ClientInformation; clientInformation k field_46157 + f Lnet/minecraft/server/network/config/SynchronizeRegistriesTask; synchronizeRegistriesTask l field_49026 + m (Lnet/minecraft/server/network/ConfigurationTask$Type;)V finishCurrentTask a method_52406 + p 1 taskType + m (Lnet/minecraft/server/packs/PackResources;)Ljava/util/stream/Stream; method_56530 a method_56530 + m (Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo;)V method_52407 a method_52407 + m ()V startConfiguration l method_52409 + m ()V returnToWorld m method_52410 + m ()V addOptionalTasks n method_52411 + m ()V startNextTask o method_52412 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 cookie + m ()V +c net/minecraft/server/network/ServerConnectionListener art net/minecraft/class_3242 + f Ljava/util/function/Supplier; SERVER_EVENT_GROUP a field_14111 + f Ljava/util/function/Supplier; SERVER_EPOLL_EVENT_GROUP b field_14105 + f Z running c field_14108 + c True if this NetworkSystem has never had his endpoints terminated + f Lorg/slf4j/Logger; LOGGER d field_14110 + f Lnet/minecraft/server/MinecraftServer; server e field_14109 + c Reference to the MinecraftServer object. + f Ljava/util/List; channels f field_14106 + c Contains all endpoints added to this NetworkSystem + f Ljava/util/List; connections g field_14107 + c A list containing all NetworkManager instances of all endpoints + m ()Ljava/net/SocketAddress; startMemoryChannel a method_14353 + c Adds a channel that listens locally + m (Ljava/net/InetAddress;I)V startTcpServerListener a method_14354 + c Adds a channel that listens on publicly accessible network ports + p 1 address + p 2 port + m (Lnet/minecraft/network/Connection;Lnet/minecraft/network/chat/Component;)V method_14352 a method_14352 + m ()V stop b method_14356 + c Shuts down all open endpoints (with immediate effect?) + m ()V tick c method_14357 + c Will try to process the packets received by each NetworkManager, gracefully manage processing failures and cleans up dead connections + m ()Lnet/minecraft/server/MinecraftServer; getServer d method_14351 + m ()Ljava/util/List; getConnections e method_37909 + m ()Lio/netty/channel/epoll/EpollEventLoopGroup; method_14349 f method_14349 + m ()Lio/netty/channel/nio/NioEventLoopGroup; method_14348 g method_14348 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/network/ServerConnectionListener$1 art$1 net/minecraft/class_3242$1 + f Lnet/minecraft/server/network/ServerConnectionListener; field_14112 a field_14112 + m (Lnet/minecraft/server/network/ServerConnectionListener;)V +c net/minecraft/server/network/ServerConnectionListener$2 art$2 net/minecraft/class_3242$2 + f Lnet/minecraft/server/network/ServerConnectionListener; field_14113 a field_14113 + m (Lnet/minecraft/server/network/ServerConnectionListener;)V +c net/minecraft/server/network/ServerConnectionListener$LatencySimulator art$a net/minecraft/class_3242$class_5980 + f Lio/netty/util/Timer; TIMER a field_29772 + f I delay b field_29773 + f I jitter c field_29774 + f Ljava/util/List; queuedMessages d field_29775 + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V delayDownstream a method_34880 + p 1 ctx + p 2 msg + m (Lio/netty/util/Timeout;)V onTimeout a method_34881 + p 1 timeout + m (II)V + p 1 delay + p 2 jitter + m ()V +c net/minecraft/server/network/ServerConnectionListener$LatencySimulator$DelayedMessage art$a$a net/minecraft/class_3242$class_5980$class_5981 + f Lio/netty/channel/ChannelHandlerContext; ctx a field_29776 + f Ljava/lang/Object; msg b field_29777 + m (Lio/netty/channel/ChannelHandlerContext;Ljava/lang/Object;)V + p 1 ctx + p 2 msg +c net/minecraft/server/network/ServerGamePacketListenerImpl aru net/minecraft/class_3244 + f D vehicleFirstGoodY A field_14124 + f D vehicleFirstGoodZ B field_14142 + f D vehicleLastGoodX C field_14122 + f D vehicleLastGoodY D field_14141 + f D vehicleLastGoodZ E field_14120 + f Lnet/minecraft/world/phys/Vec3; awaitingPositionFromClient F field_14119 + f I awaitingTeleport G field_14123 + f I awaitingTeleportTime H field_14139 + f Z clientIsFloating I field_14131 + f I aboveGroundTickCount J field_14138 + c Used to keep track of how the player is floating while gamerules should prevent that. Surpassing 80 ticks means kick + f Z clientVehicleIsFloating K field_14129 + f I aboveGroundVehicleTickCount L field_14137 + f I receivedMovePacketCount M field_14117 + f I knownMovePacketCount N field_14135 + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession O field_40720 + f Lnet/minecraft/network/chat/SignedMessageChain$Decoder; signedMessageDecoder P field_39805 + f Lnet/minecraft/network/chat/LastSeenMessagesValidator; lastSeenMessages Q field_39825 + f Lnet/minecraft/network/chat/MessageSignatureCache; messageSignatureCache R field_39987 + f Lnet/minecraft/util/FutureChain; chatMessageChain S field_39826 + f Z waitingForSwitchToConfig T field_45025 + f Lnet/minecraft/server/level/ServerPlayer; player f field_14140 + f Lnet/minecraft/server/network/PlayerChunkSender; chunkSender g field_45026 + f Lorg/slf4j/Logger; LOGGER h field_14121 + f I NO_BLOCK_UPDATES_TO_ACK i field_37281 + f I TRACKED_MESSAGE_DISCONNECT_THRESHOLD j field_39989 + f I MAXIMUM_FLYING_TICKS k field_49027 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_FAILED l field_39990 + f Lnet/minecraft/network/chat/Component; INVALID_COMMAND_SIGNATURE m field_50089 + f I MAX_COMMAND_SUGGESTIONS n field_49778 + f I tickCount o field_14118 + f I ackBlockChangesUpTo p field_37282 + f I chatSpamTickCount q field_14116 + c Incremented by 20 each time a user sends a chat message, decreased by one every tick. Non-ops kicked when over 200 + f I dropSpamTickCount r field_14133 + f D firstGoodX s field_14130 + f D firstGoodY t field_14146 + f D firstGoodZ u field_14128 + f D lastGoodX v field_14145 + f D lastGoodY w field_14126 + f D lastGoodZ x field_14144 + f Lnet/minecraft/world/entity/Entity; lastVehicle y field_14147 + f D vehicleFirstGoodX z field_14143 + m (D)D clampHorizontal a method_34882 + p 0 value + m (DDDFF)V teleport a method_14363 + p 1 x + p 3 y + p 5 z + p 7 yaw + p 8 pitch + m (DDDFFLjava/util/Set;)V teleport a method_14360 + c Teleports the player position to the (relative) values specified, and syncs to the client + p 1 x + p 3 y + p 5 z + p 7 yaw + p 8 pitch + p 9 relativeSet + m (I)V ackBlockChangesUpTo a method_41255 + p 1 sequence + m (ILjava/util/List;)V method_31274 a method_31274 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Ljava/util/Optional;)V method_58588 a method_58588 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Lnet/minecraft/network/chat/LastSeenMessages;)V performSignedChatCommand a method_45010 + p 1 packet + p 2 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandSignedPacket;Lnet/minecraft/network/chat/SignableCommand;Lnet/minecraft/network/chat/LastSeenMessages;)Ljava/util/Map; collectSignedArguments a method_45006 + p 1 packet + p 2 command + p 3 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;Ljava/util/Optional;)V method_44900 a method_44900 + m (Lnet/minecraft/network/protocol/game/ServerboundChatPacket;Lnet/minecraft/network/chat/LastSeenMessages;)Lnet/minecraft/network/chat/PlayerChatMessage; getSignedMessage a method_45011 + p 1 packet + p 2 lastSeenMessages + m (Lnet/minecraft/network/protocol/game/ServerboundCommandSuggestionPacket;Lcom/mojang/brigadier/suggestion/Suggestions;)V method_14365 a method_14365 + m (Lnet/minecraft/network/protocol/game/ServerboundPlaceRecipePacket;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_17820 a method_17820 + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;Ljava/util/List;)V updateSignText a method_31282 + p 1 packet + p 2 filteredText + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/ItemStack;)Z wasBlockPlacementAttempt a method_27913 + p 0 player + p 1 stack + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; filterableFromOutgoing a method_57142 + p 1 filteredText + m (Lnet/minecraft/server/network/FilteredText;Ljava/util/List;I)V signBook a method_31276 + p 1 title + p 2 pages + p 3 index + m (Lnet/minecraft/world/entity/Entity;)I getMaximumFlyingTicks a method_56922 + p 1 entity + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/phys/AABB;DDD)Z isPlayerCollidingWithAnythingNew a method_20630 + p 1 level + p 2 box + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/commands/CommandSigningContext;Lnet/minecraft/commands/CommandSourceStack;)Lnet/minecraft/commands/CommandSourceStack; method_45002 a method_45002 + m (Ljava/lang/Object;)Ljava/lang/Object; method_31284 a method_31284 + m (Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31275 + p 1 message + p 2 processor + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31277 + p 1 text + m (Ljava/lang/String;Ljava/lang/Runnable;)V tryHandleChat a method_44337 + p 1 message + p 2 handler + m (Ljava/lang/String;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/network/chat/SignedMessageChain$DecodeException; createSignedArgumentMismatchException a method_58589 + p 0 command + p 1 signedArguments + p 2 unsignedArguments + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; filterTextPacket a method_31279 + p 1 texts + m (Ljava/util/List;I)V updateBookContents a method_31278 + p 1 pages + p 2 index + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V sendDisguisedChatMessage a method_45168 + p 1 message + p 2 boundType + m (Lnet/minecraft/network/chat/LastSeenMessages$Update;)Ljava/util/Optional; unpackAndApplyLastSeen a method_45169 + p 1 update + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V addPendingMessage a method_44897 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/ChatType$Bound;)V sendPlayerChatMessage a method_45170 + p 1 chatMessage + p 2 boundType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/network/FilteredText;)V method_45064 a method_45064 + m (Lnet/minecraft/network/chat/RemoteChatSession;)V resetPlayerChatState a method_46365 + p 1 chatSession + m (Lnet/minecraft/network/chat/SignedMessageChain$DecodeException;)V handleMessageDecodeFailure a method_45171 + p 1 exception + m (D)D clampVertical b method_34883 + p 0 value + m (DDDFF)Z containsInvalidValues b method_14371 + p 0 x + p 2 y + p 4 z + p 6 yRot + p 7 xRot + m (ILjava/util/List;)V method_31283 b method_31283 + m (Lnet/minecraft/network/protocol/game/ServerboundChatCommandPacket;)V method_44356 b method_44356 + m (Lnet/minecraft/network/protocol/game/ServerboundSignUpdatePacket;Ljava/util/List;)V method_31285 b method_31285 + m (Lnet/minecraft/server/network/FilteredText;)Lnet/minecraft/server/network/Filterable; method_33799 b method_33799 + m (Lnet/minecraft/world/entity/Entity;)Z noBlocksAround b method_29780 + p 1 entity + m (Ljava/lang/String;)V performUnsignedChatCommand b method_58590 + p 1 command + m (Ljava/util/List;)Ljava/util/Map; collectUnsignedArguments b method_58591 + p 1 arguments + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V broadcastChatMessage b method_44155 + p 1 message + m (Lnet/minecraft/network/chat/RemoteChatSession;)V method_54439 b method_54439 + m (Ljava/lang/String;)Lcom/mojang/brigadier/ParseResults; parseCommand c method_45003 + p 1 command + m (Ljava/lang/String;)Z isChatMessageIllegal d method_43508 + p 0 message + m ()V resetPosition l method_14372 + m ()Ljava/net/SocketAddress; getRemoteAddress m method_48107 + m ()V switchToConfig n method_52414 + m ()Z updateAwaitingTeleport p method_60947 + m ()V removePlayerFromWorld q method_52415 + m ()V detectRateSpam r method_43669 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/network/CommonListenerCookie;)V + p 1 server + p 2 connection + p 3 player + p 4 cookie + m ()V +c net/minecraft/server/network/ServerGamePacketListenerImpl$1 aru$1 net/minecraft/class_3244$1 + f Lnet/minecraft/server/level/ServerLevel; val$level a field_39991 + f Lnet/minecraft/world/entity/Entity; val$target b field_28962 + f Lnet/minecraft/server/network/ServerGamePacketListenerImpl; field_28963 c field_28963 + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/server/network/ServerGamePacketListenerImpl$EntityInteraction;)V performInteraction a method_33897 + p 1 hand + p 2 entityInteraction + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; method_33898 a method_33898 + m (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V +c net/minecraft/server/network/ServerGamePacketListenerImpl$2 aru$2 net/minecraft/class_3244$2 + f [I $SwitchMap$net$minecraft$world$level$block$entity$CommandBlockEntity$Mode a field_28964 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundPlayerActionPacket$Action b field_28965 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundPlayerCommandPacket$Action c field_28966 + f [I $SwitchMap$net$minecraft$network$protocol$game$ServerboundClientCommandPacket$Action d field_28967 + m ()V +c net/minecraft/server/network/ServerGamePacketListenerImpl$EntityInteraction aru$a net/minecraft/class_3244$class_5860 +c net/minecraft/server/network/ServerHandshakePacketListenerImpl arv net/minecraft/class_3246 + f Lnet/minecraft/network/chat/Component; IGNORE_STATUS_REASON b field_24457 + f Lnet/minecraft/server/MinecraftServer; server c field_14154 + f Lnet/minecraft/network/Connection; connection d field_14153 + m (Lnet/minecraft/network/protocol/handshake/ClientIntentionPacket;Z)V beginLogin a method_56048 + p 1 packet + p 2 transferred + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;)V + p 1 server + p 2 connection + m ()V +c net/minecraft/server/network/ServerHandshakePacketListenerImpl$1 arv$1 net/minecraft/class_3246$1 + f [I $SwitchMap$net$minecraft$network$protocol$handshake$ClientIntent a field_14155 + m ()V +c net/minecraft/server/network/ServerLoginPacketListenerImpl arw net/minecraft/class_3248 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID b field_14157 + f Lorg/slf4j/Logger; LOGGER c field_14166 + f I MAX_TICKS_BEFORE_LOGIN d field_29779 + f [B challenge e field_14167 + f Lnet/minecraft/server/MinecraftServer; server f field_14162 + f Lnet/minecraft/network/Connection; connection g field_14158 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; state h field_14163 + f I tick i field_14156 + c How long has player been trying to login into the server. + f Ljava/lang/String; requestedUsername j field_45028 + f Lcom/mojang/authlib/GameProfile; authenticatedProfile k field_45029 + f Ljava/lang/String; serverId l field_14165 + f Z transferred m field_48275 + m (Lcom/mojang/authlib/GameProfile;)Z isPlayerAlreadyInWorld a method_52416 + p 1 profile + m (Lnet/minecraft/network/chat/Component;)V disconnect a method_14380 + p 1 reason + m (Lcom/mojang/authlib/GameProfile;)V startClientVerification b method_52417 + p 1 authenticatedProfile + m (Lcom/mojang/authlib/GameProfile;)V verifyLoginAndFinishConnectionSetup c method_52419 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)V finishLoginAndWaitForClient d method_52420 + p 1 profile + m ()Ljava/lang/String; getUserName e method_14383 + m ()Ljava/lang/String; method_55598 f method_55598 + m ()V method_52421 g method_52421 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/network/Connection;Z)V + p 1 server + p 2 connection + p 3 transferred + m ()V +c net/minecraft/server/network/ServerLoginPacketListenerImpl$1 arw$1 net/minecraft/class_3248$1 + f Ljava/lang/String; val$digest a field_26900 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl; field_14176 b field_14176 + m ()Ljava/net/InetAddress; getAddress a method_14386 + m (Lnet/minecraft/server/network/ServerLoginPacketListenerImpl;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/server/network/ServerLoginPacketListenerImpl$State arw$a net/minecraft/class_3248$class_3249 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; HELLO a field_14170 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; KEY b field_14175 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; AUTHENTICATING c field_14169 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; NEGOTIATING d field_14173 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; VERIFYING e field_45030 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; WAITING_FOR_DUPE_DISCONNECT f field_45031 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; PROTOCOL_SWITCHING g field_45032 + f Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; ACCEPTED h field_14172 + f [Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; $VALUES i field_14174 + m ()[Lnet/minecraft/server/network/ServerLoginPacketListenerImpl$State; $values a method_36581 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/network/ServerPlayerConnection arx net/minecraft/class_5629 + m (Lnet/minecraft/network/protocol/Packet;)V send b method_14364 + p 1 packet + m ()Lnet/minecraft/server/level/ServerPlayer; getPlayer o method_32311 +c net/minecraft/server/network/ServerStatusPacketListenerImpl ary net/minecraft/class_3251 + f Lnet/minecraft/network/chat/Component; DISCONNECT_REASON b field_14179 + f Lnet/minecraft/network/protocol/status/ServerStatus; status c field_42544 + f Lnet/minecraft/network/Connection; connection d field_14178 + f Z hasRequestedStatus e field_14177 + m (Lnet/minecraft/network/protocol/status/ServerStatus;Lnet/minecraft/network/Connection;)V + p 1 status + p 2 connection + m ()V +c net/minecraft/server/network/TextFilter arz net/minecraft/class_5513 + f Lnet/minecraft/server/network/TextFilter; DUMMY a field_28862 + m ()V join a method_31287 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; processStreamMessage a method_31288 + p 1 text + m (Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; processMessageBundle a method_31289 + p 1 texts + m ()V leave b method_31290 + m ()V +c net/minecraft/server/network/TextFilter$1 arz$1 net/minecraft/class_5513$1 + m ()V +c net/minecraft/server/network/TextFilterClient asa net/minecraft/class_5514 + f Lorg/slf4j/Logger; LOGGER a field_26823 + f Ljava/util/concurrent/atomic/AtomicInteger; WORKER_COUNT b field_26824 + f Ljava/util/concurrent/ThreadFactory; THREAD_FACTORY c field_26825 + f Ljava/lang/String; DEFAULT_ENDPOINT d field_38055 + f Ljava/net/URL; chatEndpoint e field_26826 + f Lnet/minecraft/server/network/TextFilterClient$MessageEncoder; chatEncoder f field_38056 + f Ljava/net/URL; joinEndpoint g field_26827 + f Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder; joinEncoder h field_38057 + f Ljava/net/URL; leaveEndpoint i field_26828 + f Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder; leaveEncoder j field_38058 + f Ljava/lang/String; authKey k field_26829 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; chatIgnoreStrategy l field_26832 + f Ljava/util/concurrent/ExecutorService; workerPool m field_26833 + m (ILjava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_42110 a method_42110 + m (Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Lcom/mojang/authlib/GameProfile;Ljava/net/URL;)V method_31296 a method_31296 + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getEndpointFromConfig a method_42111 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Lcom/google/gson/JsonObject; processRequestResponse a method_31295 + p 1 json + p 2 requestUrl + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/server/network/TextFilter; createContext a method_31297 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;)Lnet/minecraft/server/network/FilteredText; method_31294 a method_31294 + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; requestMessageProcessing a method_31298 + p 1 profile + p 2 text + p 3 ignoreStrategy + p 4 executor + m (Lcom/mojang/authlib/GameProfile;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/util/concurrent/Executor;)V processJoinOrLeave a method_31299 + p 1 profile + p 2 url + p 3 encoder + p 4 executor + m (Ljava/io/InputStream;)V drainStream a method_31300 + p 1 stream + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_31301 a method_31301 + m (Ljava/lang/String;)Lnet/minecraft/server/network/TextFilterClient; createFromConfig a method_33805 + p 0 config + m (Ljava/lang/String;Lcom/google/gson/JsonArray;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;)Lnet/minecraft/network/chat/FilterMask; parseMask a method_45066 + p 1 text + p 2 hashes + p 3 ignoreStrategy + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;)Lcom/google/gson/JsonObject; method_42112 a method_42112 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/authlib/GameProfile;Ljava/lang/String;)Lcom/google/gson/JsonObject; method_42113 a method_42113 + m (Ljava/net/URI;Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/net/URL; getEndpoint a method_41206 + p 0 uri + p 1 json + p 2 memberName + p 3 fallback + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)V processRequest b method_31304 + p 1 json + p 2 requestUrl + m (Lcom/google/gson/JsonObject;Ljava/net/URL;)Ljava/net/HttpURLConnection; makeRequest c method_31306 + p 1 json + p 2 requestUrl + m (Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$MessageEncoder;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/net/URL;Lnet/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder;Ljava/lang/String;Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy;I)V + p 1 chatEndpoint + p 2 chatEncoder + p 3 joinEndpoint + p 4 joinEncoder + p 5 leaveEndpoint + p 6 leaveEncoder + p 7 authKey + p 8 chatIgnoreStrategy + p 9 workerThreadCount + m ()V +c net/minecraft/server/network/TextFilterClient$IgnoreStrategy asa$a net/minecraft/class_5514$class_5515 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; NEVER_IGNORE a field_26834 + f Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; IGNORE_FULLY_FILTERED b field_26835 + m (ILjava/lang/String;I)Z method_33807 a method_33807 + m (Ljava/lang/String;I)Z method_31310 a method_31310 + m (Ljava/lang/String;I)Z method_31312 b method_31312 + m (I)Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; ignoreOverThreshold ignoreOverThreshold method_33806 + p 0 threshold + m (I)Lnet/minecraft/server/network/TextFilterClient$IgnoreStrategy; select select method_33808 + p 0 threshold + m ()V +c net/minecraft/server/network/TextFilterClient$JoinOrLeaveEncoder asa$b net/minecraft/class_5514$class_7241 +c net/minecraft/server/network/TextFilterClient$MessageEncoder asa$c net/minecraft/class_5514$class_7242 +c net/minecraft/server/network/TextFilterClient$PlayerContext asa$d net/minecraft/class_5514$class_5516 + f Lnet/minecraft/server/network/TextFilterClient; field_26836 b field_26836 + f Lcom/mojang/authlib/GameProfile; profile c field_26837 + f Ljava/util/concurrent/Executor; streamExecutor d field_26838 + m (Ljava/lang/Throwable;)Ljava/util/List; method_33809 a method_33809 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; method_31315 b method_31315 + m (Lnet/minecraft/server/network/TextFilterClient;Lcom/mojang/authlib/GameProfile;)V + p 2 profile +c net/minecraft/server/network/TextFilterClient$RequestFailedException asa$e net/minecraft/class_5514$class_5517 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/server/network/config/JoinWorldTask asb net/minecraft/class_8611 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_45033 + m ()V + m ()V +c net/minecraft/server/network/config/ServerResourcePackConfigurationTask asc net/minecraft/class_8612 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_45034 + f Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo; info b field_45035 + m (Lnet/minecraft/server/MinecraftServer$ServerResourcePackInfo;)V + p 1 info + m ()V +c net/minecraft/server/network/config/SynchronizeRegistriesTask asd net/minecraft/class_9223 + f Lnet/minecraft/server/network/ConfigurationTask$Type; TYPE a field_49028 + f Ljava/util/List; requestedPacks b field_49029 + f Lnet/minecraft/core/LayeredRegistryAccess; registries c field_49030 + m (Ljava/util/List;Ljava/util/function/Consumer;)V handleResponse a method_56923 + p 1 packs + p 2 packetSender + m (Ljava/util/function/Consumer;Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V method_56924 a method_56924 + m (Ljava/util/function/Consumer;Ljava/util/Set;)V sendRegistries a method_56925 + p 1 packetSender + p 2 packs + m (Ljava/util/List;Lnet/minecraft/core/LayeredRegistryAccess;)V + p 1 requestedPacks + p 2 registries + m ()V +c net/minecraft/server/network/config/package-info ase net/minecraft/class_8613 +c net/minecraft/server/network/package-info asf net/minecraft/class_5982 +c net/minecraft/server/package-info asg net/minecraft/class_5983 +c net/minecraft/server/packs/AbstractPackResources ash net/minecraft/class_3255 + f Lorg/slf4j/Logger; LOGGER c field_14182 + f Lnet/minecraft/server/packs/PackLocationInfo; location d field_49031 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/io/InputStream;)Ljava/lang/Object; getMetadataFromStream a method_14392 + p 0 deserializer + p 1 inputStream + m (Lnet/minecraft/server/packs/PackLocationInfo;)V + p 1 location + m ()V +c net/minecraft/server/packs/BuiltInMetadata asi net/minecraft/class_7662 + f Lnet/minecraft/server/packs/BuiltInMetadata; EMPTY a field_39994 + f Ljava/util/Map; values b field_39995 + m ()Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45172 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/lang/Object; get a method_45173 + p 1 serializer + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45174 + p 0 serializer + p 1 value + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/BuiltInMetadata; of a method_45175 + p 0 serializer1 + p 1 value1 + p 2 serializer2 + p 3 value2 + m (Ljava/util/Map;)V + p 1 values + m ()V +c net/minecraft/server/packs/CompositePackResources asj net/minecraft/class_8614 + f Lnet/minecraft/server/packs/PackResources; primaryPackResources c field_45036 + f Ljava/util/List; packResourcesStack d field_45037 + m (Lnet/minecraft/server/packs/PackResources;Ljava/util/List;)V + p 1 primaryPackResources + p 2 packResourcesStack +c net/minecraft/server/packs/DownloadCacheCleaner ask net/minecraft/class_9055 + f Lorg/slf4j/Logger; LOGGER a field_47674 + m (Ljava/nio/file/Path;)Ljava/util/List; listFilesWithModificationTimes a method_55599 + p 0 path + m (Ljava/nio/file/Path;I)V vacuumCacheDir a method_55600 + p 0 path + p 1 maxEntries + m (Ljava/util/List;)Ljava/util/List; prioritizeFilesInDirs a method_55601 + p 0 paths + m ()V + m ()V +c net/minecraft/server/packs/DownloadCacheCleaner$1 ask$1 net/minecraft/class_9055$1 + f Ljava/nio/file/Path; val$cacheDir a field_47675 + f Ljava/util/List; val$unsortedFiles b field_47676 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_55602 + p 1 path + p 2 file + m (Ljava/nio/file/Path;Ljava/util/List;)V +c net/minecraft/server/packs/DownloadCacheCleaner$PathAndPriority ask$a net/minecraft/class_9055$class_9056 + f Ljava/util/Comparator; HIGHEST_PRIORITY_FIRST a field_47677 + f Ljava/nio/file/Path; path b comp_2168 + f I removalPriority c comp_2169 + m ()Ljava/nio/file/Path; path a comp_2168 + m ()I removalPriority b comp_2169 + m (Ljava/nio/file/Path;I)V + m ()V +c net/minecraft/server/packs/DownloadCacheCleaner$PathAndTime ask$b net/minecraft/class_9055$class_9057 + f Ljava/util/Comparator; NEWEST_FIRST a field_47678 + f Ljava/nio/file/Path; path b comp_2170 + f Ljava/nio/file/attribute/FileTime; modifiedTime c comp_2171 + m ()Ljava/nio/file/Path; path a comp_2170 + m ()Ljava/nio/file/attribute/FileTime; modifiedTime b comp_2171 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/FileTime;)V + m ()V +c net/minecraft/server/packs/DownloadQueue asl net/minecraft/class_9028 + f Lorg/slf4j/Logger; LOGGER a field_47572 + f I MAX_KEPT_PACKS b field_47679 + f Ljava/nio/file/Path; cacheDir c field_47573 + f Lnet/minecraft/util/eventlog/JsonEventLog; eventLog d field_47574 + f Lnet/minecraft/util/thread/ProcessorMailbox; tasks e field_47575 + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;Ljava/util/UUID;Lnet/minecraft/server/packs/DownloadQueue$DownloadRequest;)V method_55485 a method_55485 + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Ljava/util/concurrent/CompletableFuture; downloadBatch a method_55486 + p 1 batchConfig + p 2 downloads + m (Ljava/nio/file/Path;)Lcom/mojang/datafixers/util/Either; getFileInfo a method_55487 + p 1 path + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Lnet/minecraft/server/packs/DownloadQueue$BatchResult; runDownload b method_55488 + p 1 batchConfig + p 2 downloads + m (Lnet/minecraft/server/packs/DownloadQueue$BatchConfig;Ljava/util/Map;)Lnet/minecraft/server/packs/DownloadQueue$BatchResult; method_55489 c method_55489 + m (Ljava/nio/file/Path;)V + p 1 cacheDir + m ()V +c net/minecraft/server/packs/DownloadQueue$BatchConfig asl$a net/minecraft/class_9028$class_9029 + f Lcom/google/common/hash/HashFunction; hashFunction a comp_2138 + f I maxSize b comp_2139 + f Ljava/util/Map; headers c comp_2140 + f Ljava/net/Proxy; proxy d comp_2141 + f Lnet/minecraft/util/HttpUtil$DownloadProgressListener; listener e comp_2142 + m ()Lcom/google/common/hash/HashFunction; hashFunction a comp_2138 + m ()I maxSize b comp_2139 + m ()Ljava/util/Map; headers c comp_2140 + m ()Ljava/net/Proxy; proxy d comp_2141 + m ()Lnet/minecraft/util/HttpUtil$DownloadProgressListener; listener e comp_2142 + m (Lcom/google/common/hash/HashFunction;ILjava/util/Map;Ljava/net/Proxy;Lnet/minecraft/util/HttpUtil$DownloadProgressListener;)V +c net/minecraft/server/packs/DownloadQueue$BatchResult asl$b net/minecraft/class_9028$class_9030 + f Ljava/util/Map; downloaded a comp_2143 + f Ljava/util/Set; failed b comp_2144 + m ()Ljava/util/Map; downloaded a comp_2143 + m ()Ljava/util/Set; failed b comp_2144 + m ()V + m (Ljava/util/Map;Ljava/util/Set;)V +c net/minecraft/server/packs/DownloadQueue$DownloadRequest asl$c net/minecraft/class_9028$class_9031 + f Ljava/net/URL; url a comp_2145 + f Lcom/google/common/hash/HashCode; hash b comp_2146 + m ()Ljava/net/URL; url a comp_2145 + m ()Lcom/google/common/hash/HashCode; hash b comp_2146 + m (Ljava/net/URL;Lcom/google/common/hash/HashCode;)V +c net/minecraft/server/packs/DownloadQueue$FileInfoEntry asl$d net/minecraft/class_9028$class_9032 + f Lcom/mojang/serialization/Codec; CODEC a field_47576 + f Ljava/lang/String; name b comp_2147 + f J size c comp_2148 + m ()Ljava/lang/String; name a comp_2147 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55490 a method_55490 + m ()J size b comp_2148 + m (Ljava/lang/String;J)V + m ()V +c net/minecraft/server/packs/DownloadQueue$LogEntry asl$e net/minecraft/class_9028$class_9033 + f Lcom/mojang/serialization/Codec; CODEC a field_47577 + f Ljava/util/UUID; id b comp_2149 + f Ljava/lang/String; url c comp_2150 + f Ljava/time/Instant; time d comp_2151 + f Ljava/util/Optional; hash e comp_2152 + f Lcom/mojang/datafixers/util/Either; errorOrFileInfo f comp_2153 + m ()Ljava/util/UUID; id a comp_2149 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55491 a method_55491 + m ()Ljava/lang/String; url b comp_2150 + m ()Ljava/time/Instant; time c comp_2151 + m ()Ljava/util/Optional; hash d comp_2152 + m ()Lcom/mojang/datafixers/util/Either; errorOrFileInfo e comp_2153 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/time/Instant;Ljava/util/Optional;Lcom/mojang/datafixers/util/Either;)V + m ()V +c net/minecraft/server/packs/FeatureFlagsMetadataSection asm net/minecraft/class_7663 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_39996 + f Lnet/minecraft/world/flag/FeatureFlagSet; flags b comp_994 + f Lcom/mojang/serialization/Codec; CODEC c field_39997 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; flags a comp_994 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45176 a method_45176 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)V + m ()V +c net/minecraft/server/packs/FilePackResources asn net/minecraft/class_3258 + f Lorg/slf4j/Logger; LOGGER c field_39096 + f Lnet/minecraft/server/packs/FilePackResources$SharedZipFileAccess; zipFileAccess d field_45038 + f Ljava/lang/String; prefix e field_45039 + m (Ljava/lang/String;)Ljava/lang/String; addPrefix a method_52422 + p 1 resourcePath + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; extractNamespace a method_52423 + p 0 directory + p 1 name + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; getPathFromLocation b method_45177 + p 0 packType + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource b method_14391 + p 1 resourcePath + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/FilePackResources$SharedZipFileAccess;Ljava/lang/String;)V + p 1 location + p 2 zipFileAccess + p 3 prefix + m ()V +c net/minecraft/server/packs/FilePackResources$FileResourcesSupplier asn$a net/minecraft/class_3258$class_8615 + f Ljava/io/File; content a field_45040 + m (Ljava/nio/file/Path;)V + p 1 content + m (Ljava/io/File;)V + p 1 content +c net/minecraft/server/packs/FilePackResources$SharedZipFileAccess asn$b net/minecraft/class_3258$class_8616 + f Ljava/io/File; file a field_45042 + f Ljava/util/zip/ZipFile; zipFile b field_45043 + f Z failedToLoad c field_45044 + m ()Ljava/util/zip/ZipFile; getOrCreateZipFile a method_52426 + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/packs/OverlayMetadataSection aso net/minecraft/class_8617 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_45045 + f Ljava/util/List; overlays b comp_1577 + f Ljava/util/regex/Pattern; DIR_VALIDATOR c field_45046 + f Lcom/mojang/serialization/Codec; CODEC d field_45047 + m ()Ljava/util/List; overlays a comp_1577 + m (I)Ljava/util/List; overlaysForVersion a method_52427 + p 1 version + m (ILnet/minecraft/server/packs/OverlayMetadataSection$OverlayEntry;)Z method_52428 a method_52428 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52429 a method_52429 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; validateOverlayDir a method_52430 + p 0 directoryName + m (Ljava/lang/String;)Ljava/lang/String; method_52431 b method_52431 + m (Ljava/util/List;)V + m ()V +c net/minecraft/server/packs/OverlayMetadataSection$OverlayEntry aso$a net/minecraft/class_8617$class_8618 + f Lnet/minecraft/util/InclusiveRange; format a comp_1578 + f Ljava/lang/String; overlay b comp_1579 + f Lcom/mojang/serialization/Codec; CODEC c field_45048 + m ()Lnet/minecraft/util/InclusiveRange; format a comp_1578 + m (I)Z isApplicable a method_52432 + p 1 version + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52433 a method_52433 + m ()Ljava/lang/String; overlay b comp_1579 + m (Lnet/minecraft/util/InclusiveRange;Ljava/lang/String;)V + m ()V +c net/minecraft/server/packs/PackLocationInfo asp net/minecraft/class_9224 + f Ljava/lang/String; id a comp_2329 + f Lnet/minecraft/network/chat/Component; title b comp_2330 + f Lnet/minecraft/server/packs/repository/PackSource; source c comp_2331 + f Ljava/util/Optional; knownPackInfo d comp_2332 + m ()Ljava/lang/String; id a comp_2329 + m (ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; createChatLink a method_56927 + p 1 enabled + p 2 text + m (ZLnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_56928 a method_56928 + m ()Lnet/minecraft/network/chat/Component; title b comp_2330 + m ()Lnet/minecraft/server/packs/repository/PackSource; source c comp_2331 + m ()Ljava/util/Optional; knownPackInfo d comp_2332 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/packs/repository/PackSource;Ljava/util/Optional;)V +c net/minecraft/server/packs/PackResources asq net/minecraft/class_3262 + f Ljava/lang/String; METADATA_EXTENSION a field_29780 + f Ljava/lang/String; PACK_META b field_29781 + m ()Lnet/minecraft/server/packs/PackLocationInfo; location a method_56926 + m (Lnet/minecraft/server/packs/PackType;)Ljava/util/Set; getNamespaces a method_14406 + p 1 type + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource a method_14405 + p 1 packType + p 2 location + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;)V listResources a method_14408 + p 1 packType + p 2 namespace + p 3 path + p 4 resourceOutput + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/lang/Object; getMetadataSection a method_14407 + p 1 deserializer + m ([Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getRootResource a method_14410 + p 1 elements + m ()Ljava/lang/String; packId b method_14409 + m ()Ljava/util/Optional; knownPackInfo c method_56929 +c net/minecraft/server/packs/PackResources$ResourceOutput asq$a net/minecraft/class_3262$class_7664 +c net/minecraft/server/packs/PackSelectionConfig asr net/minecraft/class_9225 + f Z required a comp_2333 + f Lnet/minecraft/server/packs/repository/Pack$Position; defaultPosition b comp_2334 + f Z fixedPosition c comp_2335 + m ()Z required a comp_2333 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; defaultPosition b comp_2334 + m ()Z fixedPosition c comp_2335 + m (ZLnet/minecraft/server/packs/repository/Pack$Position;Z)V +c net/minecraft/server/packs/PackType ass net/minecraft/class_3264 + f Lnet/minecraft/server/packs/PackType; CLIENT_RESOURCES a field_14188 + f Lnet/minecraft/server/packs/PackType; SERVER_DATA b field_14190 + f Ljava/lang/String; directory c field_14189 + f [Lnet/minecraft/server/packs/PackType; $VALUES d field_14191 + m ()Ljava/lang/String; getDirectory a method_14413 + m ()[Lnet/minecraft/server/packs/PackType; $values b method_36582 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 directory + m ()V +c net/minecraft/server/packs/PathPackResources ast net/minecraft/class_3259 + f Lorg/slf4j/Logger; LOGGER c field_14187 + f Lcom/google/common/base/Joiner; PATH_JOINER d field_40000 + f Ljava/nio/file/Path; root e field_40001 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45179 a method_45179 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/resources/IoSupplier; getResource a method_45180 + p 0 location + p 1 path + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/util/List;)V method_45181 a method_45181 + m (Ljava/lang/String;Lcom/mojang/serialization/DataResult$Error;)V method_45182 a method_45182 + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;Lnet/minecraft/server/packs/PackResources$ResourceOutput;)V listPath a method_45183 + p 0 namespace + p 1 namespacePath + p 2 decomposedPath + p 3 resourceOutput + m (Ljava/nio/file/Path;)Z validatePath a method_14402 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/nio/file/Path;)V method_45184 a method_45184 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_45185 a method_45185 + m (Ljava/nio/file/Path;Ljava/util/List;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45186 a method_45186 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/resources/IoSupplier; returnFileIfExists b method_45187 + p 0 path + m (Lnet/minecraft/server/packs/PackLocationInfo;Ljava/nio/file/Path;)V + p 1 location + p 2 root + m ()V +c net/minecraft/server/packs/PathPackResources$PathResourcesSupplier ast$a net/minecraft/class_3259$class_8619 + f Ljava/nio/file/Path; content a field_45049 + m (Ljava/nio/file/Path;)V + p 1 content +c net/minecraft/server/packs/VanillaPackResources asu net/minecraft/class_3268 + f Lorg/slf4j/Logger; LOGGER c field_14195 + f Lnet/minecraft/server/packs/PackLocationInfo; location d field_49032 + f Lnet/minecraft/server/packs/BuiltInMetadata; metadata e field_26938 + f Ljava/util/Set; namespaces f field_14193 + f Ljava/util/List; rootPaths g field_40002 + f Ljava/util/Map; pathsForType h field_40003 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_45188 a method_45188 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackType;Ljava/util/List;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45189 a method_45189 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackType;Ljava/util/function/Consumer;Ljava/util/List;)V method_45190 a method_45190 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)Lnet/minecraft/server/packs/resources/IoSupplier; method_45191 a method_45191 + m (Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/lang/String;Ljava/nio/file/Path;Ljava/util/List;)V getResources a method_14418 + p 0 resourceOutput + p 1 namespace + p 2 root + p 3 paths + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V listRawPaths a method_45192 + p 1 packType + p 2 packLocation + p 3 output + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackResources$ResourceOutput;Ljava/lang/String;Ljava/util/List;)V method_45193 a method_45193 + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/Resource; method_45194 a method_45194 + m (Ljava/lang/String;Lcom/mojang/serialization/DataResult$Error;)V method_45195 a method_45195 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)V method_45196 b method_45196 + m ()Lnet/minecraft/server/packs/resources/ResourceProvider; asProvider d method_43032 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/BuiltInMetadata;Ljava/util/Set;Ljava/util/List;Ljava/util/Map;)V + p 1 location + p 2 metadata + p 3 namespaces + p 4 rootPaths + p 5 pathsForType + m ()V +c net/minecraft/server/packs/VanillaPackResourcesBuilder asv net/minecraft/class_7665 + f Ljava/util/function/Consumer; developmentConfig a field_40004 + f Lorg/slf4j/Logger; LOGGER b field_40005 + f Ljava/util/Map; ROOT_DIR_BY_TYPE c field_40006 + f Ljava/util/Set; rootPaths d field_40007 + f Ljava/util/Map; pathsForType e field_40008 + f Lnet/minecraft/server/packs/BuiltInMetadata; metadata f field_40009 + f Ljava/util/Set; namespaces g field_40010 + m ()Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushJarResources a method_45197 + m (Lnet/minecraft/server/packs/BuiltInMetadata;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; setMetadata a method_45198 + p 1 metadata + m (Lnet/minecraft/server/packs/PackLocationInfo;)Lnet/minecraft/server/packs/VanillaPackResources; build a method_45210 + p 1 location + m (Lnet/minecraft/server/packs/PackType;)Ljava/util/Set; method_45199 a method_45199 + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/Class;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushClasspathResources a method_45200 + p 1 packType + p 2 clazz + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushAssetPath a method_45201 + p 1 packType + p 2 path + m (Lnet/minecraft/server/packs/VanillaPackResourcesBuilder;)V method_45202 a method_45202 + m (Ljava/net/URI;)Ljava/nio/file/Path; safeGetPath a method_45203 + p 0 uri + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; pushUniversalPath a method_45204 + p 1 path + m (Ljava/util/Collection;)Ljava/util/List; copyAndReverse a method_45205 + p 0 paths + m ([Ljava/lang/String;)Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; exposeNamespace a method_45206 + p 1 namespaces + m ()Lnet/minecraft/server/packs/VanillaPackResourcesBuilder; applyDevelopmentConfig b method_45207 + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)V pushPathForType b method_45208 + p 1 packType + p 2 path + m (Ljava/nio/file/Path;)Z validateDirPath b method_45209 + p 1 path + m ()Lcom/google/common/collect/ImmutableMap; method_45213 c method_45213 + m (Lnet/minecraft/server/packs/PackType;Ljava/nio/file/Path;)V method_45211 c method_45211 + m (Ljava/nio/file/Path;)V pushRootPath c method_45212 + p 1 rootPath + m ()V + m ()V +c net/minecraft/server/packs/linkfs/DummyFileAttributes asw net/minecraft/class_7666 + f Ljava/nio/file/attribute/FileTime; EPOCH a field_40011 + m ()V + m ()V +c net/minecraft/server/packs/linkfs/LinkFSFileStore asx net/minecraft/class_7667 + f Ljava/lang/String; name a field_40012 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/server/packs/linkfs/LinkFSPath asy net/minecraft/class_7668 + f Ljava/nio/file/attribute/BasicFileAttributes; DIRECTORY_ATTRIBUTES a field_40013 + f Ljava/nio/file/attribute/BasicFileAttributes; FILE_ATTRIBUTES b field_40014 + f Ljava/util/Comparator; PATH_COMPARATOR c field_40015 + f Ljava/lang/String; name d field_40016 + f Lnet/minecraft/server/packs/linkfs/LinkFileSystem; fileSystem e field_40017 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; parent f field_40018 + f Ljava/util/List; pathToRoot g field_40019 + f Ljava/lang/String; pathString h field_40020 + f Lnet/minecraft/server/packs/linkfs/PathContents; pathContents i field_40021 + m ()Lnet/minecraft/server/packs/linkfs/LinkFileSystem; getFileSystem a method_45214 + m (I)Lnet/minecraft/server/packs/linkfs/LinkFSPath; getName a method_45215 + p 1 index + m (II)Lnet/minecraft/server/packs/linkfs/LinkFSPath; subpath a method_45216 + p 1 start + p 2 end + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; createRelativePath a method_45217 + p 1 parent + p 2 name + m (Lnet/minecraft/server/packs/linkfs/PathContents;)Z isRelativeOrMissing a method_45218 + p 0 pathContents + m (Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolveName a method_45219 + p 1 name + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolve a method_45220 + p 1 path + m (Ljava/util/List;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; resolve a method_45221 + p 1 names + m ([Ljava/nio/file/LinkOption;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toRealPath a method_45222 + p 1 options + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getRoot b method_45223 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; relativize b method_45224 + p 1 path + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getFileName c method_45225 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toLinkPath c method_45226 + p 1 path + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; getParent d method_45227 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; normalize e method_45228 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; toAbsolutePath f method_45229 + m ()Z exists g method_45230 + m ()Ljava/nio/file/Path; getTargetPath h method_45231 + m ()Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents; getDirectoryContents i method_45232 + m ()Ljava/nio/file/attribute/BasicFileAttributeView; getBasicAttributeView j method_45233 + m ()Ljava/nio/file/attribute/BasicFileAttributes; getBasicAttributes k method_45234 + m ()Ljava/util/List; pathToRoot l method_45235 + m ()Z hasRealContents m method_45236 + m ()Ljava/lang/String; pathToString n method_45237 + m (Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Lnet/minecraft/server/packs/linkfs/PathContents;)V + p 1 fileSystem + p 2 name + p 3 parent + p 4 pathContents + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$1 asy$1 net/minecraft/class_7668$1 + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$2 asy$2 net/minecraft/class_7668$2 + m ()V +c net/minecraft/server/packs/linkfs/LinkFSPath$3 asy$3 net/minecraft/class_7668$3 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; field_40022 a field_40022 + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;)V +c net/minecraft/server/packs/linkfs/LinkFSProvider asz net/minecraft/class_7669 + f Ljava/lang/String; SCHEME a field_40023 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; toLinkPath a method_45238 + p 0 path + m ()V +c net/minecraft/server/packs/linkfs/LinkFSProvider$1 asz$1 net/minecraft/class_7669$1 + f Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents; val$directoryContents a field_40024 + f Ljava/nio/file/DirectoryStream$Filter; val$filter b field_40025 + m (Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Ljava/nio/file/Path; method_45239 a method_45239 + m (Ljava/nio/file/DirectoryStream$Filter;Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Z method_45240 a method_45240 + m (Lnet/minecraft/server/packs/linkfs/LinkFSProvider;Lnet/minecraft/server/packs/linkfs/PathContents$DirectoryContents;Ljava/nio/file/DirectoryStream$Filter;)V +c net/minecraft/server/packs/linkfs/LinkFSProvider$2 asz$2 net/minecraft/class_7669$2 + f [I $SwitchMap$java$nio$file$AccessMode a field_40027 + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem ata net/minecraft/class_7670 + f Ljava/lang/String; PATH_SEPARATOR a field_40028 + f Ljava/util/Set; VIEWS b field_40029 + f Lcom/google/common/base/Splitter; PATH_SPLITTER c field_40030 + f Ljava/nio/file/FileStore; store d field_40031 + f Ljava/nio/file/spi/FileSystemProvider; provider e field_40032 + f Lnet/minecraft/server/packs/linkfs/LinkFSPath; root f field_40033 + m ()Ljava/nio/file/FileStore; store a method_45241 + m (Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFSPath;)Lnet/minecraft/server/packs/linkfs/LinkFSPath; buildPath a method_45242 + p 0 directory + p 1 fileSystem + p 2 name + p 3 parent + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;)V method_45243 a method_45243 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;Lnet/minecraft/server/packs/linkfs/LinkFileSystem;Lnet/minecraft/server/packs/linkfs/LinkFSPath;Ljava/lang/String;Ljava/nio/file/Path;)V method_45244 a method_45244 + m ()Lnet/minecraft/server/packs/linkfs/LinkFSPath; rootPath b method_45245 + m ()Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; builder c method_45246 + m (Ljava/lang/String;Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry;)V + p 1 name + p 2 root + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem$Builder ata$a net/minecraft/class_7670$class_7671 + f Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry; root a field_40034 + m (Ljava/lang/String;)Ljava/nio/file/FileSystem; build a method_45247 + p 1 name + m (Ljava/util/List;Ljava/lang/String;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; put a method_45248 + p 1 pathString + p 2 fileName + p 3 filePath + m (Ljava/util/List;Ljava/nio/file/Path;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$Builder; put a method_45249 + p 1 pathString + p 2 filePath + m (Ljava/lang/String;)Lnet/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry; method_45250 b method_45250 + m ()V +c net/minecraft/server/packs/linkfs/LinkFileSystem$DirectoryEntry ata$b net/minecraft/class_7670$class_7672 + f Ljava/util/Map; children a comp_995 + f Ljava/util/Map; files b comp_996 + m ()Ljava/util/Map; children a comp_995 + m ()Ljava/util/Map; files b comp_996 + m ()V + m (Ljava/util/Map;Ljava/util/Map;)V +c net/minecraft/server/packs/linkfs/PathContents atb net/minecraft/class_7673 + f Lnet/minecraft/server/packs/linkfs/PathContents; MISSING a field_40035 + f Lnet/minecraft/server/packs/linkfs/PathContents; RELATIVE b field_40036 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$1 atb$1 net/minecraft/class_7673$1 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$2 atb$2 net/minecraft/class_7673$2 + m ()V +c net/minecraft/server/packs/linkfs/PathContents$DirectoryContents atb$a net/minecraft/class_7673$class_7674 + f Ljava/util/Map; children c comp_997 + m ()Ljava/util/Map; children a comp_997 + m (Ljava/util/Map;)V +c net/minecraft/server/packs/linkfs/PathContents$FileContents atb$b net/minecraft/class_7673$class_7675 + f Ljava/nio/file/Path; contents c comp_998 + m ()Ljava/nio/file/Path; contents a comp_998 + m (Ljava/nio/file/Path;)V +c net/minecraft/server/packs/linkfs/package-info atc net/minecraft/class_7676 +c net/minecraft/server/packs/metadata/MetadataSectionSerializer atd net/minecraft/class_3270 + m ()Ljava/lang/String; getMetadataSectionName a method_14420 + c The name of this section type as it appears in JSON. + m (Lcom/google/gson/JsonObject;)Ljava/lang/Object; fromJson a method_14421 + p 1 json +c net/minecraft/server/packs/metadata/MetadataSectionType ate net/minecraft/class_7677 + m (Ljava/lang/Object;)Lcom/google/gson/JsonObject; toJson a method_45251 + p 1 data + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/server/packs/metadata/MetadataSectionType; fromCodec a method_45252 + p 0 name + p 1 codec +c net/minecraft/server/packs/metadata/MetadataSectionType$1 ate$1 net/minecraft/class_7677$1 + f Ljava/lang/String; val$name a field_40037 + f Lcom/mojang/serialization/Codec; val$codec b field_40038 + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)V +c net/minecraft/server/packs/metadata/pack/PackMetadataSection atf net/minecraft/class_3272 + f Lcom/mojang/serialization/Codec; CODEC a field_45051 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE b field_14202 + f Lnet/minecraft/network/chat/Component; description c comp_1580 + f I packFormat d comp_1581 + f Ljava/util/Optional; supportedFormats e comp_1582 + m ()Lnet/minecraft/network/chat/Component; description a comp_1580 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52434 a method_52434 + m ()I packFormat b comp_1581 + m ()Ljava/util/Optional; supportedFormats c comp_1582 + m (Lnet/minecraft/network/chat/Component;ILjava/util/Optional;)V + m ()V +c net/minecraft/server/packs/metadata/pack/package-info atg net/minecraft/class_5984 +c net/minecraft/server/packs/metadata/package-info ath net/minecraft/class_5985 +c net/minecraft/server/packs/package-info ati net/minecraft/class_5986 +c net/minecraft/server/packs/repository/BuiltInPackSource atj net/minecraft/class_7678 + f Ljava/lang/String; VANILLA_ID a field_40039 + f Lnet/minecraft/server/packs/repository/KnownPack; CORE_PACK_INFO b field_49033 + f Lorg/slf4j/Logger; LOGGER c field_40040 + f Lnet/minecraft/server/packs/PackType; packType d field_40041 + f Lnet/minecraft/server/packs/VanillaPackResources; vanillaPack e field_40042 + f Lnet/minecraft/resources/ResourceLocation; packDir f field_40043 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator g field_45052 + m ()Lnet/minecraft/server/packs/VanillaPackResources; getVanillaPack a method_45256 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/repository/Pack; createVanillaPack a method_45257 + p 1 resources + m (Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Ljava/lang/String;)Lnet/minecraft/server/packs/repository/Pack; method_45258 a method_45258 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getPackTitle a method_45259 + p 1 id + m (Ljava/lang/String;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/repository/Pack; createBuiltinPack a method_45260 + p 1 id + p 2 resources + p 3 title + m (Ljava/nio/file/Path;)Ljava/lang/String; pathToId a method_45261 + p 0 path + m (Ljava/nio/file/Path;Ljava/util/function/BiConsumer;)V discoverPacksInPath a method_45262 + p 1 directoryPath + p 2 packGetter + m (Ljava/util/function/BiConsumer;)V populatePackList a method_45263 + p 1 populator + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;)V method_45264 a method_45264 + m (Ljava/util/function/BiConsumer;Ljava/nio/file/Path;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;)V method_45265 a method_45265 + m (Ljava/util/function/Consumer;)V listBundledPacks a method_45267 + p 1 packConsumer + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;)V method_45266 a method_45266 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; fixedResources b method_52435 + p 0 resources + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/VanillaPackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 packType + p 2 vanillaPack + p 3 packDir + p 4 validator + m ()V +c net/minecraft/server/packs/repository/BuiltInPackSource$1 atj$1 net/minecraft/class_7678$1 + f Lnet/minecraft/server/packs/PackResources; val$instance a field_45053 + m (Lnet/minecraft/server/packs/PackResources;)V +c net/minecraft/server/packs/repository/FolderRepositorySource atk net/minecraft/class_3279 + f Lorg/slf4j/Logger; LOGGER a field_40044 + f Lnet/minecraft/server/packs/PackSelectionConfig; DISCOVERED_PACK_SELECTION_CONFIG b field_49034 + f Ljava/nio/file/Path; folder c field_14218 + f Lnet/minecraft/server/packs/PackType; packType d field_40045 + f Lnet/minecraft/server/packs/repository/PackSource; packSource e field_25345 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator f field_45054 + m (Ljava/nio/file/Path;)Ljava/lang/String; nameFromPath a method_45273 + p 0 path + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;Ljava/util/function/BiConsumer;)V discoverPacks a method_45271 + p 0 folder + p 1 validator + p 2 output + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;)V method_45272 a method_45272 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/PackLocationInfo; createDiscoveredFilePackInfo b method_56930 + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/repository/PackSource;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 folder + p 2 packType + p 3 packSource + p 4 validator + m ()V +c net/minecraft/server/packs/repository/FolderRepositorySource$FolderPackDetector atk$a net/minecraft/class_3279$class_8620 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; createZipPack a method_52436 + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; createDirectoryPack b method_52437 + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V +c net/minecraft/server/packs/repository/KnownPack atl net/minecraft/class_9226 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_49035 + f Ljava/lang/String; VANILLA_NAMESPACE b field_49036 + f Ljava/lang/String; namespace c comp_2336 + f Ljava/lang/String; id d comp_2337 + f Ljava/lang/String; version e comp_2338 + m ()Z isVanilla a method_56931 + m (Ljava/lang/String;)Lnet/minecraft/server/packs/repository/KnownPack; vanilla a method_56932 + p 0 name + m ()Ljava/lang/String; namespace b comp_2336 + m ()Ljava/lang/String; id c comp_2337 + m ()Ljava/lang/String; version d comp_2338 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/server/packs/repository/Pack atm net/minecraft/class_3288 + f Lorg/slf4j/Logger; LOGGER a field_14279 + f Lnet/minecraft/server/packs/PackLocationInfo; location b field_49037 + f Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; resources c field_14273 + f Lnet/minecraft/server/packs/repository/Pack$Metadata; metadata d field_49038 + f Lnet/minecraft/server/packs/PackSelectionConfig; selectionConfig e field_49039 + m ()Lnet/minecraft/server/packs/PackLocationInfo; location a method_56933 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;I)Lnet/minecraft/server/packs/repository/Pack$Metadata; readPackMetadata a method_45274 + p 0 location + p 1 resources + p 2 version + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackSelectionConfig;)Lnet/minecraft/server/packs/repository/Pack; readMetaAndCreate a method_45275 + p 0 location + p 1 resources + p 2 packType + p 3 selectionConfig + m (Ljava/lang/String;Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection;)Lnet/minecraft/util/InclusiveRange; getDeclaredPackVersions a method_52440 + p 0 id + p 1 metadata + m (Z)Lnet/minecraft/network/chat/Component; getChatLink a method_14461 + p 1 green + c used to indicate either a successful operation or datapack enabled status + m ()Lnet/minecraft/network/chat/Component; getTitle b method_14457 + m ()Lnet/minecraft/network/chat/Component; getDescription c method_14459 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; getCompatibility d method_14460 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; getRequestedFeatures e method_45276 + m ()Lnet/minecraft/server/packs/PackResources; open f method_14458 + m ()Ljava/lang/String; getId g method_14463 + m ()Lnet/minecraft/server/packs/PackSelectionConfig; selectionConfig h method_56934 + m ()Z isRequired i method_14464 + m ()Z isFixedPosition j method_14465 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; getDefaultPosition k method_14466 + m ()Lnet/minecraft/server/packs/repository/PackSource; getPackSource l method_29483 + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier;Lnet/minecraft/server/packs/repository/Pack$Metadata;Lnet/minecraft/server/packs/PackSelectionConfig;)V + p 1 location + p 2 resources + p 3 metadata + p 4 selectionConfig + m ()V +c net/minecraft/server/packs/repository/Pack$Metadata atm$a net/minecraft/class_3288$class_7679 + f Lnet/minecraft/network/chat/Component; description a comp_999 + f Lnet/minecraft/server/packs/repository/PackCompatibility; compatibility b comp_1583 + f Lnet/minecraft/world/flag/FeatureFlagSet; requestedFeatures c comp_1001 + f Ljava/util/List; overlays d comp_1584 + m ()Lnet/minecraft/network/chat/Component; description a comp_999 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; compatibility b comp_1583 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; requestedFeatures c comp_1001 + m ()Ljava/util/List; overlays d comp_1584 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/packs/repository/PackCompatibility;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/List;)V +c net/minecraft/server/packs/repository/Pack$Position atm$b net/minecraft/class_3288$class_3289 + f Lnet/minecraft/server/packs/repository/Pack$Position; TOP a field_14280 + f Lnet/minecraft/server/packs/repository/Pack$Position; BOTTOM b field_14281 + f [Lnet/minecraft/server/packs/repository/Pack$Position; $VALUES c field_14282 + m ()Lnet/minecraft/server/packs/repository/Pack$Position; opposite a method_14467 + m (Ljava/util/List;Ljava/lang/Object;Ljava/util/function/Function;Z)I insert a method_14468 + p 1 list + p 2 element + p 3 packFactory + p 4 flipPosition + m ()[Lnet/minecraft/server/packs/repository/Pack$Position; $values b method_36583 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/packs/repository/Pack$ResourcesSupplier atm$c net/minecraft/class_3288$class_7680 + m (Lnet/minecraft/server/packs/PackLocationInfo;)Lnet/minecraft/server/packs/PackResources; openPrimary a method_52424 + p 1 location + m (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/Pack$Metadata;)Lnet/minecraft/server/packs/PackResources; openFull a method_52425 + p 1 location + p 2 metadata +c net/minecraft/server/packs/repository/PackCompatibility atn net/minecraft/class_3281 + f Lnet/minecraft/server/packs/repository/PackCompatibility; TOO_OLD a field_14223 + f Lnet/minecraft/server/packs/repository/PackCompatibility; TOO_NEW b field_14220 + f Lnet/minecraft/server/packs/repository/PackCompatibility; COMPATIBLE c field_14224 + f Lnet/minecraft/network/chat/Component; description d field_14219 + f Lnet/minecraft/network/chat/Component; confirmation e field_14222 + f [Lnet/minecraft/server/packs/repository/PackCompatibility; $VALUES f field_14221 + m ()Z isCompatible a method_14437 + m (Lnet/minecraft/util/InclusiveRange;I)Lnet/minecraft/server/packs/repository/PackCompatibility; forVersion a method_14436 + p 0 range + p 1 version + m ()Lnet/minecraft/network/chat/Component; getDescription b method_14439 + m ()Lnet/minecraft/network/chat/Component; getConfirmation c method_14438 + m ()[Lnet/minecraft/server/packs/repository/PackCompatibility; $values d method_36584 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 type + m ()V +c net/minecraft/server/packs/repository/PackDetector ato net/minecraft/class_8621 + f Lnet/minecraft/world/level/validation/DirectoryValidator; validator a field_45057 + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/Object; detectPackResources a method_52441 + p 1 path + p 2 forbiddenSymlinkInfos + m (Ljava/nio/file/Path;)Ljava/lang/Object; createDirectoryPack c method_52438 + p 1 path + m (Ljava/nio/file/Path;)Ljava/lang/Object; createZipPack d method_52439 + p 1 path + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 validator +c net/minecraft/server/packs/repository/PackRepository atp net/minecraft/class_3283 + f Ljava/util/Set; sources a field_14227 + f Ljava/util/Map; available b field_14226 + f Ljava/util/List; selected c field_14225 + m ()V reload a method_14445 + m (Lnet/minecraft/server/packs/repository/Pack;)Ljava/lang/String; method_59808 a method_59808 + m (Ljava/lang/String;)Z addPack a method_49427 + p 1 id + m (Ljava/util/Collection;)Ljava/lang/String; displayPackList a method_59809 + p 0 packs + m (Ljava/util/Map;Lnet/minecraft/server/packs/repository/Pack;)V method_29484 a method_29484 + m ()Ljava/util/Collection; getAvailableIds b method_29206 + m (Ljava/lang/String;)Z removePack b method_49428 + p 1 id + m (Ljava/util/Collection;)V setSelected b method_14447 + p 1 ids + m ()Ljava/util/Collection; getAvailablePacks c method_14441 + c Gets all known packs, including those that are not enabled. + m (Ljava/lang/String;)Lnet/minecraft/server/packs/repository/Pack; getPack c method_14449 + p 1 id + m (Ljava/util/Collection;)Ljava/util/List; rebuildSelected c method_29208 + p 1 ids + m ()Ljava/util/Collection; getSelectedIds d method_29210 + m (Ljava/lang/String;)Z isAvailable d method_29207 + p 1 id + m (Ljava/util/Collection;)Ljava/util/stream/Stream; getAvailablePacks d method_29209 + p 1 ids + m ()Lnet/minecraft/world/flag/FeatureFlagSet; getRequestedFeatureFlags e method_45278 + m ()Ljava/util/Collection; getSelectedPacks f method_14444 + c Gets all packs that have been enabled. + m ()Ljava/util/List; openAllSelected g method_29211 + m ()Ljava/util/Map; discoverAvailable h method_29212 + m ([Lnet/minecraft/server/packs/repository/RepositorySource;)V + p 1 sources +c net/minecraft/server/packs/repository/PackSource atq net/minecraft/class_5352 + f Ljava/util/function/UnaryOperator; NO_DECORATION a field_40047 + f Lnet/minecraft/server/packs/repository/PackSource; DEFAULT b field_25347 + f Lnet/minecraft/server/packs/repository/PackSource; BUILT_IN c field_25348 + f Lnet/minecraft/server/packs/repository/PackSource; FEATURE d field_40048 + f Lnet/minecraft/server/packs/repository/PackSource; WORLD e field_25349 + f Lnet/minecraft/server/packs/repository/PackSource; SERVER f field_25350 + m ()Z shouldAddAutomatically a method_45279 + m (Ljava/lang/String;)Ljava/util/function/UnaryOperator; decorateWithSource a method_45280 + p 0 translationKey + m (Ljava/util/function/UnaryOperator;Z)Lnet/minecraft/server/packs/repository/PackSource; create a method_45281 + p 0 decorator + p 1 shouldAddAutomatically + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; decorate a method_45282 + p 1 name + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_45283 a method_45283 + m ()V +c net/minecraft/server/packs/repository/PackSource$1 atq$1 net/minecraft/class_5352$1 + f Ljava/util/function/UnaryOperator; val$decorator g field_40049 + f Z val$addAutomatically h field_40050 + m (Ljava/util/function/UnaryOperator;Z)V +c net/minecraft/server/packs/repository/RepositorySource atr net/minecraft/class_3285 + m (Ljava/util/function/Consumer;)V loadPacks loadPacks method_14453 + p 1 onLoad +c net/minecraft/server/packs/repository/ServerPacksSource ats net/minecraft/class_3286 + f Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection; VERSION_METADATA_SECTION c field_40051 + f Lnet/minecraft/server/packs/FeatureFlagsMetadataSection; FEATURE_FLAGS_METADATA_SECTION d field_40052 + f Lnet/minecraft/server/packs/BuiltInMetadata; BUILT_IN_METADATA e field_26939 + f Lnet/minecraft/server/packs/PackLocationInfo; VANILLA_PACK_INFO f field_49040 + f Lnet/minecraft/server/packs/PackSelectionConfig; VANILLA_SELECTION_CONFIG g field_49041 + f Lnet/minecraft/server/packs/PackSelectionConfig; FEATURE_SELECTION_CONFIG h field_49042 + f Lnet/minecraft/resources/ResourceLocation; PACKS_DIR i field_40053 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Lnet/minecraft/server/packs/repository/PackRepository; createPackRepository a method_45285 + p 0 level + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/PackLocationInfo; createBuiltInPackLocation a method_56935 + p 0 id + p 1 title + m (Ljava/nio/file/Path;)Z method_52442 a method_52442 + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;)Lnet/minecraft/server/packs/repository/PackRepository; createPackRepository a method_45286 + p 0 folder + p 1 validator + m ()Lnet/minecraft/server/packs/VanillaPackResources; createVanillaPackSource b method_45287 + m ()Lnet/minecraft/server/packs/repository/PackRepository; createVanillaTrustedRepository c method_52443 + m (Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 validator + m ()V +c net/minecraft/server/packs/repository/package-info att net/minecraft/class_5987 +c net/minecraft/server/packs/resources/CloseableResourceManager atu net/minecraft/class_6860 +c net/minecraft/server/packs/resources/FallbackResourceManager atv net/minecraft/class_3294 + f Ljava/util/List; fallbacks a field_14283 + f Lorg/slf4j/Logger; LOGGER c field_14285 + f Lnet/minecraft/server/packs/PackType; type d field_14284 + f Ljava/lang/String; namespace e field_21561 + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/server/packs/resources/IoSupplier; createStackMetadataFinder a method_43035 + p 1 location + p 2 fallbackIndex + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/IoSupplier; wrapForDebug a method_45288 + p 0 location + p 1 packResources + p 2 stream + m (Lnet/minecraft/server/packs/PackResources;)V push a method_24233 + p 1 resources + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45289 a method_45289 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/Resource; createResource a method_45290 + p 0 source + p 1 location + p 2 streamSupplier + p 3 metadataSupplier + m (Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V push a method_41256 + p 1 resources + p 2 filter + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;)Lnet/minecraft/server/packs/PackResources; method_41257 a method_41257 + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/Map;)V listPackResources a method_41258 + p 1 entry + p 2 path + p 3 filter + p 4 output + m (Lnet/minecraft/server/packs/resources/FallbackResourceManager$PackEntry;Ljava/util/Map;)V applyPackFiltersToExistingResources a method_41259 + p 0 packEntry + p 1 resources + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/IoSupplier; convertToMetadata a method_45291 + p 0 streamSupplier + m (Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/PackResources;)Ljava/io/InputStream; method_45292 a method_45292 + m (Ljava/lang/String;Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V pushInternal a method_41260 + p 1 name + p 2 resources + p 3 filter + m (Ljava/lang/String;Ljava/util/function/Predicate;)V pushFilterOnly a method_41261 + p 1 name + p 2 filter + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/FallbackResourceManager$1ResourceWithSourceAndIndex;)V method_45293 a method_45293 + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;ILjava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;)V method_45294 a method_45294 + m (Ljava/util/function/Predicate;Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/IoSupplier;)V method_45295 a method_45295 + m (Lnet/minecraft/resources/ResourceLocation;)Z isMetadata b method_45296 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;I)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_43037 b method_43037 + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/ResourceMetadata; parseMetadata b method_45297 + p 0 streamSupplier + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getResourceLocationFromMetadata c method_45298 + p 0 metadataResourceLocation + m (Lnet/minecraft/server/packs/resources/IoSupplier;)Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45299 c method_45299 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getMetadataLocation d method_14473 + p 0 location + m (Lnet/minecraft/server/packs/PackType;Ljava/lang/String;)V + p 1 type + p 2 namespace + m ()V +c net/minecraft/server/packs/resources/FallbackResourceManager$1ResourceWithSourceAndIndex atv$a net/minecraft/class_3294$class_7681 + f Lnet/minecraft/server/packs/PackResources; packResources a comp_1002 + f Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1003 + f I packIndex c comp_1004 + m ()Lnet/minecraft/server/packs/PackResources; packResources a comp_1002 + m ()Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1003 + m ()I packIndex c comp_1004 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;I)V +c net/minecraft/server/packs/resources/FallbackResourceManager$EntryStack atv$b net/minecraft/class_3294$class_7081 + f Lnet/minecraft/resources/ResourceLocation; fileLocation a comp_1005 + f Lnet/minecraft/resources/ResourceLocation; metadataLocation b comp_527 + f Ljava/util/List; fileSources c comp_1006 + f Ljava/util/Map; metaSources d comp_1007 + m ()Lnet/minecraft/resources/ResourceLocation; fileLocation a comp_1005 + m ()Lnet/minecraft/resources/ResourceLocation; metadataLocation b comp_527 + m ()Ljava/util/List; fileSources c comp_1006 + m ()Ljava/util/Map; metaSources d comp_1007 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 fileLocation + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Map;)V +c net/minecraft/server/packs/resources/FallbackResourceManager$LeakedResourceWarningInputStream atv$c net/minecraft/class_3294$class_3295 + f Ljava/util/function/Supplier; message a field_14288 + f Z closed b field_14287 + m (Ljava/lang/Exception;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/lang/String; method_45300 a method_45300 + m (Ljava/io/InputStream;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 inputStream + p 2 resourceLocation + p 3 packName +c net/minecraft/server/packs/resources/FallbackResourceManager$PackEntry atv$d net/minecraft/class_3294$class_7082 + f Ljava/lang/String; name a comp_529 + f Lnet/minecraft/server/packs/PackResources; resources b comp_530 + f Ljava/util/function/Predicate; filter c comp_531 + m ()Ljava/lang/String; name a comp_529 + m (Lnet/minecraft/resources/ResourceLocation;)Z isFiltered a method_41269 + p 1 location + m (Ljava/util/Collection;)V filterAll a method_41268 + p 1 locations + m ()Lnet/minecraft/server/packs/PackResources; resources b comp_530 + m ()Ljava/util/function/Predicate; filter c comp_531 + m (Ljava/lang/String;Lnet/minecraft/server/packs/PackResources;Ljava/util/function/Predicate;)V +c net/minecraft/server/packs/resources/FallbackResourceManager$ResourceWithSource atv$e net/minecraft/class_3294$class_7682 + f Lnet/minecraft/server/packs/PackResources; source a comp_1008 + f Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1009 + m ()Lnet/minecraft/server/packs/PackResources; source a comp_1008 + m ()Lnet/minecraft/server/packs/resources/IoSupplier; resource b comp_1009 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)V +c net/minecraft/server/packs/resources/IoSupplier atw net/minecraft/class_7367 + m (Ljava/nio/file/Path;)Ljava/io/InputStream; method_45301 a method_45301 + m (Ljava/util/zip/ZipFile;Ljava/util/zip/ZipEntry;)Ljava/io/InputStream; method_45302 a method_45302 +c net/minecraft/server/packs/resources/MultiPackResourceManager atx net/minecraft/class_6861 + f Lorg/slf4j/Logger; LOGGER a field_37288 + f Ljava/util/Map; namespacedManagers c field_36389 + f Ljava/util/List; packs d field_36390 + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/resources/ResourceFilterSection; getPackFilterSection a method_41274 + p 1 packResources + m (Lnet/minecraft/server/packs/PackType;Lnet/minecraft/server/packs/PackResources;)Ljava/util/stream/Stream; method_41275 a method_41275 + m (Lnet/minecraft/server/packs/resources/ResourceFilterSection;Lnet/minecraft/resources/ResourceLocation;)Z method_41276 a method_41276 + m (Ljava/lang/String;)V checkTrailingDirectoryPath a method_45303 + p 0 path + m (Lnet/minecraft/server/packs/PackType;Ljava/util/List;)V + p 1 type + p 2 packs + m ()V +c net/minecraft/server/packs/resources/PreparableReloadListener aty net/minecraft/class_3302 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; reload a method_25931 + p 1 preparationBarrier + p 2 resourceManager + p 3 preparationsProfiler + p 4 reloadProfiler + p 5 backgroundExecutor + p 6 gameExecutor + m ()Ljava/lang/String; getName c method_22322 +c net/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier aty$a net/minecraft/class_3302$class_4045 + m (Ljava/lang/Object;)Ljava/util/concurrent/CompletableFuture; wait a method_18352 + p 1 backgroundResult +c net/minecraft/server/packs/resources/ProfiledReloadInstance atz net/minecraft/class_4010 + f Lorg/slf4j/Logger; LOGGER c field_17918 + f Lcom/google/common/base/Stopwatch; total d field_17919 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;Lnet/minecraft/util/profiling/ActiveProfiler;Lnet/minecraft/util/profiling/ActiveProfiler;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Void;)Lnet/minecraft/server/packs/resources/ProfiledReloadInstance$State; method_18356 a method_18356 + m (Ljava/lang/Runnable;Ljava/util/concurrent/atomic/AtomicLong;)V method_18353 a method_18353 + m (Ljava/util/List;)Ljava/util/List; finish a method_18238 + p 1 datapoints + m (Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_18355 a method_18355 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Runnable;)V method_18354 a method_18354 + m (Ljava/lang/Runnable;Ljava/util/concurrent/atomic/AtomicLong;)V method_18357 b method_18357 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/atomic/AtomicLong;Ljava/lang/Runnable;)V method_18358 b method_18358 + m ()I method_18224 e method_18224 + m ()I method_18225 f method_18225 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)V + p 1 resourceManager + p 2 listeners + p 3 backgroundExecutor + p 4 gameExecutor + p 5 alsoWaitedFor + m ()V +c net/minecraft/server/packs/resources/ProfiledReloadInstance$State atz$a net/minecraft/class_4010$class_4046 + f Ljava/lang/String; name a field_18037 + f Lnet/minecraft/util/profiling/ProfileResults; preparationResult b field_18038 + f Lnet/minecraft/util/profiling/ProfileResults; reloadResult c field_18039 + f Ljava/util/concurrent/atomic/AtomicLong; preparationNanos d field_18040 + f Ljava/util/concurrent/atomic/AtomicLong; reloadNanos e field_18041 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/ProfileResults;Lnet/minecraft/util/profiling/ProfileResults;Ljava/util/concurrent/atomic/AtomicLong;Ljava/util/concurrent/atomic/AtomicLong;)V + p 1 name + p 2 preperationResult + p 3 reloadResult + p 4 preperationNanos + p 5 reloadNanos +c net/minecraft/server/packs/resources/ReloadInstance aua net/minecraft/class_4011 + m ()Ljava/util/concurrent/CompletableFuture; done a method_18364 + m ()F getActualProgress b method_18229 + m ()Z isDone c method_18787 + m ()V checkExceptions d method_18849 +c net/minecraft/server/packs/resources/ReloadableResourceManager aub net/minecraft/class_3304 + f Lorg/slf4j/Logger; LOGGER a field_14295 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resources c field_36391 + f Ljava/util/List; listeners d field_17935 + f Lnet/minecraft/server/packs/PackType; type e field_14294 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;)V registerReloadListener a method_14477 + p 1 listener + m (Ljava/util/List;)Ljava/lang/Object; method_29491 a method_29491 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/util/List;)Lnet/minecraft/server/packs/resources/ReloadInstance; createReload a method_18232 + p 1 backgroundExecutor + p 2 gameExecutor + p 3 waitingFor + p 4 resourcePacks + m (Lnet/minecraft/server/packs/PackType;)V + p 1 type + m ()V +c net/minecraft/server/packs/resources/Resource auc net/minecraft/class_3298 + f Lnet/minecraft/server/packs/PackResources; source a field_40054 + f Lnet/minecraft/server/packs/resources/IoSupplier; streamSupplier b field_38685 + f Lnet/minecraft/server/packs/resources/IoSupplier; metadataSupplier c field_38686 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; cachedMetadata d field_38687 + m ()Lnet/minecraft/server/packs/PackResources; source a method_45304 + m ()Ljava/lang/String; sourcePackId b method_14480 + m ()Ljava/util/Optional; knownPackInfo c method_56936 + m ()Ljava/io/InputStream; open d method_14482 + m ()Ljava/io/BufferedReader; openAsReader e method_43039 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata f method_14481 + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;Lnet/minecraft/server/packs/resources/IoSupplier;)V + p 1 source + p 2 streamSupplier + p 3 metadataSupplier + m (Lnet/minecraft/server/packs/PackResources;Lnet/minecraft/server/packs/resources/IoSupplier;)V + p 1 source + p 2 streamSupplier +c net/minecraft/server/packs/resources/ResourceFilterSection aud net/minecraft/class_7084 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE a field_40055 + f Lcom/mojang/serialization/Codec; CODEC b field_37291 + f Ljava/util/List; blockList c field_37292 + m (Lnet/minecraft/server/packs/resources/ResourceFilterSection;)Ljava/util/List; method_41277 a method_41277 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41278 a method_41278 + m (Ljava/lang/String;)Z isNamespaceFiltered a method_41279 + p 1 namespace + m (Ljava/lang/String;Lnet/minecraft/util/ResourceLocationPattern;)Z method_41280 a method_41280 + m (Ljava/lang/String;)Z isPathFiltered b method_41281 + p 1 path + m (Ljava/lang/String;Lnet/minecraft/util/ResourceLocationPattern;)Z method_41282 b method_41282 + m (Ljava/util/List;)V + p 1 blockList + m ()V +c net/minecraft/server/packs/resources/ResourceManager aue net/minecraft/class_3300 + m ()Ljava/util/Set; getNamespaces a method_14487 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; getResourceStack a method_14489 + p 1 location + m ()Ljava/util/stream/Stream; listPacks b method_29213 + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; listResources b method_14488 + p 1 path + p 2 filter + m (Ljava/lang/String;Ljava/util/function/Predicate;)Ljava/util/Map; listResourceStacks c method_41265 + p 1 path + p 2 filter +c net/minecraft/server/packs/resources/ResourceManager$Empty aue$a net/minecraft/class_3300$class_5353 + f Lnet/minecraft/server/packs/resources/ResourceManager$Empty; INSTANCE a field_25351 + f [Lnet/minecraft/server/packs/resources/ResourceManager$Empty; $VALUES c field_25352 + m ()[Lnet/minecraft/server/packs/resources/ResourceManager$Empty; $values c method_36585 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/server/packs/resources/ResourceManagerReloadListener auf net/minecraft/class_4013 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V onResourceManagerReload a method_14491 + p 1 resourceManager + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/server/packs/resources/ResourceManager;)V method_29490 a method_29490 +c net/minecraft/server/packs/resources/ResourceMetadata aug net/minecraft/class_7368 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; EMPTY a field_38688 + f Lnet/minecraft/server/packs/resources/IoSupplier; EMPTY_SUPPLIER b field_40056 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; method_45306 a method_45306 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)Ljava/util/Optional; getSection a method_43041 + p 1 serializer + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;)V copySection a method_52444 + p 1 builder + p 2 serializer + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)V method_52445 a method_52445 + m (Ljava/io/InputStream;)Lnet/minecraft/server/packs/resources/ResourceMetadata; fromJsonStream a method_43042 + p 0 stream + m (Ljava/util/Collection;)Lnet/minecraft/server/packs/resources/ResourceMetadata; copySections a method_52446 + p 1 serializers + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$1 aug$1 net/minecraft/class_7368$1 + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$2 aug$2 net/minecraft/class_7368$2 + f Lcom/google/gson/JsonObject; val$metadata c field_38689 + m (Lcom/google/gson/JsonObject;)V +c net/minecraft/server/packs/resources/ResourceMetadata$Builder aug$a net/minecraft/class_7368$class_8622 + f Lcom/google/common/collect/ImmutableMap$Builder; map a field_45058 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; build a method_52447 + m (Lnet/minecraft/server/packs/metadata/MetadataSectionSerializer;Ljava/lang/Object;)Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder; put a method_52448 + p 1 key + p 2 value + m ()V +c net/minecraft/server/packs/resources/ResourceMetadata$Builder$1 aug$a$1 net/minecraft/class_7368$class_8622$1 + f Lcom/google/common/collect/ImmutableMap; val$map c field_45059 + m (Lnet/minecraft/server/packs/resources/ResourceMetadata$Builder;Lcom/google/common/collect/ImmutableMap;)V +c net/minecraft/server/packs/resources/ResourceProvider auh net/minecraft/class_5912 + f Lnet/minecraft/server/packs/resources/ResourceProvider; EMPTY b field_49043 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_45307 a method_45307 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/io/FileNotFoundException; method_43043 b method_43043 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_56937 c method_56937 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getResource getResource method_14486 + p 1 location + m ()V +c net/minecraft/server/packs/resources/SimpleJsonResourceReloadListener aui net/minecraft/class_4309 + f Lorg/slf4j/Logger; LOGGER a field_19377 + f Lcom/google/gson/Gson; gson b field_19379 + f Ljava/lang/String; directory c field_19380 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/Map; prepare a method_20731 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;Lcom/google/gson/Gson;Ljava/util/Map;)V scanDirectory a method_51148 + p 0 resourceManager + p 1 name + p 2 gson + p 3 output + m (Lcom/google/gson/Gson;Ljava/lang/String;)V + p 1 gson + p 2 directory + m ()V +c net/minecraft/server/packs/resources/SimplePreparableReloadListener auj net/minecraft/class_4080 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/lang/Object; method_18791 a method_18791 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/lang/Object;)V method_18790 a method_18790 + m (Ljava/lang/Object;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18788 + p 1 object + p 2 resourceManager + p 3 profiler + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/lang/Object; prepare b method_18789 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ()V +c net/minecraft/server/packs/resources/SimpleReloadInstance auk net/minecraft/class_4014 + f Ljava/util/concurrent/CompletableFuture; allPreparations a field_18042 + f Ljava/util/concurrent/CompletableFuture; allDone b field_18043 + f I PREPARATION_PROGRESS_WEIGHT c field_29784 + f I EXTRA_RELOAD_PROGRESS_WEIGHT d field_29785 + f I LISTENER_PROGRESS_WEIGHT e field_29786 + f Ljava/util/Set; preparingListeners f field_18044 + f I listenerCount g field_18045 + f I startedReloads h field_18046 + f I finishedReloads i field_18047 + f Ljava/util/concurrent/atomic/AtomicInteger; startedTaskCounter j field_18048 + f Ljava/util/concurrent/atomic/AtomicInteger; doneTaskCounter k field_18049 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/server/packs/resources/SimpleReloadInstance; of a method_18369 + p 0 resourceManager + p 1 listeners + p 2 backgroundExecutor + p 3 gameExecutor + p 4 alsoWaitedFor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Z)Lnet/minecraft/server/packs/resources/ReloadInstance; create a method_40087 + p 0 resourceManager + p 1 listeners + p 2 backgroundExecutor + p 3 gameExecutor + p 4 alsoWaitedFor + p 5 profiled + m (Ljava/lang/Runnable;)V method_18365 a method_18365 + m (Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener$PreparationBarrier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_18368 a method_18368 + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_18367 a method_18367 + m (Ljava/lang/Runnable;)V method_18371 b method_18371 + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_18372 b method_18372 + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Lnet/minecraft/server/packs/resources/SimpleReloadInstance$StateFactory;Ljava/util/concurrent/CompletableFuture;)V + p 1 backgroundExecutor + p 2 gameExecutor + p 3 resourceManager + p 4 listeners + p 5 stateFactory + p 6 alsoWaitedFor +c net/minecraft/server/packs/resources/SimpleReloadInstance$1 auk$1 net/minecraft/class_4014$1 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor a field_18050 + f Lnet/minecraft/server/packs/resources/PreparableReloadListener; val$listener b field_18051 + f Ljava/util/concurrent/CompletableFuture; val$previousTask c field_18052 + f Lnet/minecraft/server/packs/resources/SimpleReloadInstance; field_18053 d field_18053 + m (Lnet/minecraft/server/packs/resources/PreparableReloadListener;)V method_18374 a method_18374 + m (Ljava/lang/Object;Lnet/minecraft/util/Unit;Ljava/lang/Object;)Ljava/lang/Object; method_18373 a method_18373 + m (Lnet/minecraft/server/packs/resources/SimpleReloadInstance;Ljava/util/concurrent/Executor;Lnet/minecraft/server/packs/resources/PreparableReloadListener;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/server/packs/resources/SimpleReloadInstance$StateFactory auk$a net/minecraft/class_4014$class_4047 +c net/minecraft/server/packs/resources/package-info aul net/minecraft/class_5988 +c net/minecraft/server/players/BanListEntry aum net/minecraft/class_3309 + f Ljava/text/SimpleDateFormat; DATE_FORMAT a field_14308 + f Ljava/lang/String; EXPIRES_NEVER b field_29787 + f Ljava/util/Date; created c field_14306 + f Ljava/lang/String; source d field_14304 + f Ljava/util/Date; expires e field_14305 + f Ljava/lang/String; reason f field_14307 + m ()Ljava/util/Date; getCreated a method_34885 + m ()Ljava/lang/String; getSource b method_14501 + m ()Ljava/util/Date; getExpires c method_14502 + m ()Ljava/lang/String; getReason d method_14503 + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_14504 + m (Ljava/lang/Object;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 user + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Ljava/lang/Object;Lcom/google/gson/JsonObject;)V + p 1 user + p 2 entryData + m ()V +c net/minecraft/server/players/GameProfileCache aun net/minecraft/class_3312 + f Lorg/slf4j/Logger; LOGGER a field_25805 + f I GAMEPROFILES_MRU_LIMIT b field_29788 + f I GAMEPROFILES_EXPIRATION_MONTHS c field_29789 + f Z usesAuthentication d field_14313 + f Ljava/util/Map; profilesByName e field_14312 + c A map between player usernames and + f Ljava/util/Map; profilesByUUID f field_14310 + c A map between and + f Ljava/util/Map; requests g field_33860 + f Lcom/mojang/authlib/GameProfileRepository; profileRepository h field_14315 + f Lcom/google/gson/Gson; gson i field_14318 + f Ljava/io/File; file j field_14314 + f Ljava/util/concurrent/atomic/AtomicLong; operationCount k field_25724 + f Ljava/util/concurrent/Executor; executor l field_33861 + m ()V clearExecutor a method_39753 + m (I)Ljava/util/stream/Stream; getTopMRUProfiles a method_14516 + p 1 limit + m (Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;)V safeAdd a method_30164 + p 1 profile + m (Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;Ljava/text/DateFormat;)Lcom/google/gson/JsonElement; writeGameProfile a method_30165 + p 0 profileInfo + p 1 dateFormat + m (Lcom/google/gson/JsonArray;Ljava/text/DateFormat;Lnet/minecraft/server/players/GameProfileCache$GameProfileInfo;)V method_30166 a method_30166 + m (Lcom/google/gson/JsonElement;Ljava/text/DateFormat;)Ljava/util/Optional; readGameProfile a method_30167 + p 0 json + p 1 dateFormat + m (Lcom/mojang/authlib/GameProfile;)V add a method_14508 + c Add an entry to this cache + p 1 gameProfile + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/lang/String;)Ljava/util/Optional; lookupGameProfile a method_14509 + p 0 profileRepo + p 1 name + m (Ljava/lang/String;)Ljava/util/Optional; get a method_14515 + c Get a player's GameProfile given their username. Mojang's servers will be contacted if the entry is not cached locally. + p 1 name + m (Ljava/lang/String;Ljava/util/Optional;Ljava/lang/Throwable;)V method_37155 a method_37155 + m (Ljava/text/DateFormat;Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30168 a method_30168 + m (Ljava/util/UUID;)Ljava/util/Optional; get a method_14512 + p 1 uuid + c Get a player's {@link GameProfile} given their UUID + m (Ljava/util/concurrent/Executor;)V setExecutor a method_37157 + p 1 exectutor + m (Z)V setUsesAuthentication a method_14510 + p 0 onlineMode + m ()Ljava/util/List; load b method_14517 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; getAsync b method_37156 + p 1 name + m ()V save c method_14518 + c Save the cached profiles to disk + m (Ljava/lang/String;)Ljava/util/Optional; createUnknownProfile c method_53912 + p 0 profileName + m ()Z usesAuthentication d method_14514 + m (Ljava/lang/String;)Ljava/util/Optional; method_37159 d method_37159 + m ()J getNextOperation e method_30169 + m ()Ljava/text/DateFormat; createDateFormat f method_30170 + m (Lcom/mojang/authlib/GameProfileRepository;Ljava/io/File;)V + p 1 profileRepository + p 2 file + m ()V +c net/minecraft/server/players/GameProfileCache$1 aun$1 net/minecraft/class_3312$1 + f Ljava/util/concurrent/atomic/AtomicReference; val$result a field_25725 + m (Ljava/util/concurrent/atomic/AtomicReference;)V +c net/minecraft/server/players/GameProfileCache$GameProfileInfo aun$a net/minecraft/class_3312$class_3313 + f Lcom/mojang/authlib/GameProfile; profile a field_14321 + c The player's GameProfile + f Ljava/util/Date; expirationDate b field_14319 + c The date that this entry will expire + f J lastAccess c field_25726 + m ()Lcom/mojang/authlib/GameProfile; getProfile a method_14519 + c Get the player's GameProfile + m (J)V setLastAccess a method_30171 + p 1 lastAccess + m ()Ljava/util/Date; getExpirationDate b method_14520 + c Get the date that this entry will expire + m ()J getLastAccess c method_30172 + m (Lcom/mojang/authlib/GameProfile;Ljava/util/Date;)V + p 1 profile + p 2 expirationDate +c net/minecraft/server/players/IpBanList auo net/minecraft/class_3317 + m (Ljava/lang/String;)Z isBanned a method_14529 + p 1 address + m (Ljava/net/SocketAddress;)Z isBanned a method_14527 + p 1 address + m (Ljava/net/SocketAddress;)Lnet/minecraft/server/players/IpBanListEntry; get b method_14528 + p 1 address + m (Ljava/net/SocketAddress;)Ljava/lang/String; getIpFromAddress c method_14526 + p 1 address + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/IpBanListEntry aup net/minecraft/class_3320 + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; createIpInfo b method_14532 + p 0 json + m (Ljava/lang/String;)V + p 1 ip + m (Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 ip + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/OldUsersConverter auq net/minecraft/class_3321 + f Ljava/io/File; OLD_IPBANLIST a field_14324 + f Ljava/io/File; OLD_USERBANLIST b field_14328 + f Ljava/io/File; OLD_OPLIST c field_14327 + f Ljava/io/File; OLD_WHITELIST d field_14325 + f Lorg/slf4j/Logger; LOGGER e field_14326 + m ()Z areOldUserlistsRemoved a method_14541 + m (I)[Ljava/lang/String; method_14551 a method_14551 + m (Lnet/minecraft/server/dedicated/DedicatedServer;)Z convertPlayers a method_14550 + p 0 server + m (Ljava/io/File;)V ensureDirectoryExists a method_14534 + p 0 dir + m (Ljava/io/File;Ljava/util/Map;)Ljava/util/List; readOldListFormat a method_14543 + p 0 inFile + p 1 read + m (Ljava/lang/String;)Z method_14552 a method_14552 + m (Ljava/lang/String;Ljava/util/Date;)Ljava/util/Date; parseDate a method_14535 + p 0 input + p 1 defaultValue + m (Lnet/minecraft/server/MinecraftServer;)Z convertUserBanlist a method_14547 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;Ljava/lang/String;)Ljava/util/UUID; convertMobOwnerIfNecessary a method_14546 + p 0 server + p 1 username + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/Collection;Lcom/mojang/authlib/ProfileLookupCallback;)V lookupPlayers a method_14538 + p 0 server + p 1 names + p 2 callback + m (Ljava/io/File;)V renameOldFile b method_14549 + p 0 convertedFile + m (Lnet/minecraft/server/MinecraftServer;)Z convertIpBanlist b method_14545 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z convertOpsList c method_14539 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z convertWhiteList d method_14533 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z serverReadyAfterUserconversion e method_14540 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Z areOldPlayersConverted f method_14542 + p 0 server + m (Lnet/minecraft/server/MinecraftServer;)Ljava/io/File; getWorldPlayersDirectory g method_14536 + p 0 server + m ()V + m ()V +c net/minecraft/server/players/OldUsersConverter$1 auq$1 net/minecraft/class_3321$1 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14331 + f Ljava/util/Map; val$userMap b field_14330 + f Lnet/minecraft/server/players/UserBanList; val$bans c field_14329 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/Map;Lnet/minecraft/server/players/UserBanList;)V +c net/minecraft/server/players/OldUsersConverter$2 auq$2 net/minecraft/class_3321$2 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14332 + f Lnet/minecraft/server/players/ServerOpList; val$opsList b field_14333 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/players/ServerOpList;)V +c net/minecraft/server/players/OldUsersConverter$3 auq$3 net/minecraft/class_3321$3 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14335 + f Lnet/minecraft/server/players/UserWhiteList; val$whitelist b field_14334 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/server/players/UserWhiteList;)V +c net/minecraft/server/players/OldUsersConverter$4 auq$4 net/minecraft/class_3321$4 + f Lnet/minecraft/server/MinecraftServer; val$server a field_14336 + f Ljava/util/List; val$profiles b field_14337 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/List;)V +c net/minecraft/server/players/OldUsersConverter$5 auq$5 net/minecraft/class_3321$5 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$server a field_14341 + f Ljava/io/File; val$worldNewPlayerDirectory b field_14342 + f Ljava/io/File; val$unknownPlayerDirectory c field_14339 + f Ljava/io/File; val$worldPlayerDirectory d field_14338 + f [Ljava/lang/String; val$names e field_14340 + m (Ljava/io/File;Ljava/lang/String;Ljava/lang/String;)V movePlayerFile a method_14553 + p 1 file + p 2 oldFileName + p 3 newFileName + m (Ljava/lang/String;)Ljava/lang/String; getFileNameForProfile a method_14554 + p 1 profileName + m (Lnet/minecraft/server/dedicated/DedicatedServer;Ljava/io/File;Ljava/io/File;Ljava/io/File;[Ljava/lang/String;)V +c net/minecraft/server/players/OldUsersConverter$ConversionError auq$a net/minecraft/class_3321$class_3322 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/server/players/PlayerList aur net/minecraft/class_3324 + f I sendAllPlayerInfoIn A field_14357 + f Ljava/io/File; USERBANLIST_FILE a field_14355 + f Ljava/io/File; IPBANLIST_FILE b field_14364 + f Ljava/io/File; OPLIST_FILE c field_14348 + f Ljava/io/File; WHITELIST_FILE d field_14343 + f Lnet/minecraft/network/chat/Component; CHAT_FILTERED_FULL e field_39921 + f Lnet/minecraft/network/chat/Component; DUPLICATE_LOGIN_DISCONNECT_MESSAGE f field_45061 + f I maxPlayers g field_14347 + f Lorg/slf4j/Logger; LOGGER h field_14349 + f I SEND_PLAYER_INFO_INTERVAL i field_29790 + f Ljava/text/SimpleDateFormat; BAN_DATE_FORMAT j field_14356 + f Lnet/minecraft/server/MinecraftServer; server k field_14360 + f Ljava/util/List; players l field_14351 + f Ljava/util/Map; playersByUUID m field_14354 + c A map containing the key-value pairs for UUIDs and their EntityPlayerMP objects. + f Lnet/minecraft/server/players/UserBanList; bans n field_14344 + f Lnet/minecraft/server/players/IpBanList; ipBans o field_14345 + f Lnet/minecraft/server/players/ServerOpList; ops p field_14353 + f Lnet/minecraft/server/players/UserWhiteList; whitelist q field_14361 + f Ljava/util/Map; stats r field_14362 + f Ljava/util/Map; advancements s field_14346 + f Lnet/minecraft/world/level/storage/PlayerDataStorage; playerIo t field_14358 + f Z doWhiteList u field_14352 + f Lnet/minecraft/core/LayeredRegistryAccess; registries v field_24626 + f I viewDistance w field_14359 + f I simulationDistance x field_34895 + f Z allowCommandsForAllPlayers y field_14350 + f Z ALLOW_LOGOUTIVATOR z field_29791 + m ()V reloadWhiteList a method_14599 + m (I)V setViewDistance a method_14608 + p 1 viewDistance + m (Lnet/minecraft/server/ServerScoreboard;Lnet/minecraft/server/level/ServerPlayer;)V updateEntireScoreboard a method_14588 + p 1 scoreboard + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;)V addWorldborderListener a method_14591 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_18241 a method_18241 + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/Optional; load a method_14600 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;I)V sendPlayerPermissionLevel a method_14596 + p 1 player + p 2 permLevel + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/level/ServerLevel;)V sendLevelInfo a method_14606 + c Updates the time and weather for the given player to those of the given world + p 1 player + p 2 level + m (Lnet/minecraft/server/level/ServerPlayer;ZLnet/minecraft/world/entity/Entity$RemovalReason;)Lnet/minecraft/server/level/ServerPlayer; respawn a method_14556 + p 1 player + p 2 keepInventory + p 3 reason + m (Lnet/minecraft/world/entity/Entity;)V method_31441 a method_31441 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/server/network/ServerGamePacketListenerImpl;)V sendActiveEffects a method_60597 + p 1 entity + p 2 connection + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/stats/ServerStatsCounter; getPlayerStats a method_14583 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;DDDDLnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/protocol/Packet;)V broadcast a method_14605 + p 1 except + p 2 x + p 4 y + p 6 z + p 8 radius + p 10 dimension + p 11 packet + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V broadcastSystemToTeam a method_14564 + p 1 player + p 2 message + m (Lcom/mojang/authlib/GameProfile;)V op a method_14582 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/server/level/ClientInformation;)Lnet/minecraft/server/level/ServerPlayer; getPlayerForLogin a method_14613 + p 1 gameProfile + p 2 clientInformation + m (Ljava/lang/String;)Lnet/minecraft/server/level/ServerPlayer; getPlayerByName a method_14566 + p 1 username + m (Ljava/net/SocketAddress;Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/network/chat/Component; canPlayerLogin a method_14586 + p 1 socketAddress + p 2 gameProfile + m (Ljava/util/UUID;)Lnet/minecraft/server/level/ServerPlayer; getPlayer a method_14602 + c Gets the ServerPlayer object representing the player with the UUID. + p 1 playerUUID + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; method_55634 a method_55634 + m (Lnet/minecraft/network/Connection;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/server/network/CommonListenerCookie;)V placeNewPlayer a method_14570 + p 1 connection + p 2 player + p 3 cookie + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/network/chat/Component; method_43511 a method_43511 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Function;Z)V broadcastSystemMessage a method_43512 + p 1 serverMessage + p 2 playerMessageFactory + p 3 bypassHiddenChat + m (Lnet/minecraft/network/chat/Component;Z)V broadcastSystemMessage a method_43514 + p 1 message + p 2 bypassHiddenChat + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z verifyChatTrusted a method_44793 + p 1 message + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_43673 + p 1 message + p 2 sender + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_44166 + p 1 message + p 2 sender + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/network/chat/ChatType$Bound;)V broadcastChatMessage a method_44791 + p 1 message + p 2 shouldFilterMessageTo + p 3 sender + p 4 boundChatType + m (Lnet/minecraft/network/protocol/Packet;)V broadcastAll a method_14581 + p 1 packet + m (Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/resources/ResourceKey;)V broadcastAll a method_14589 + p 1 packet + p 2 dimension + m (Z)V setUsingWhiteList a method_14557 + p 1 whitelistEnabled + m (I)V setSimulationDistance b method_38650 + p 1 simulationDistance + m (Lnet/minecraft/server/level/ServerPlayer;)V save b method_14577 + c Also stores the NBTTags if this is an IntegratedPlayerList. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V broadcastSystemToAllExceptTeam b method_14565 + p 1 player + p 2 message + m (Lcom/mojang/authlib/GameProfile;)V deop b method_14604 + p 1 profile + m (Ljava/lang/String;)Ljava/util/List; getPlayersWithAddress b method_14559 + p 1 address + m (Z)V setAllowCommandsForAllPlayers b method_14607 + p 1 allowCommandsForAllPlayers + m ()Lnet/minecraft/server/MinecraftServer; getServer c method_14561 + m (Lnet/minecraft/server/level/ServerPlayer;)V remove c method_14611 + c Called when a player disconnects from the game. Writes player data to disk and removes them from the world. + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z isWhiteListed c method_14587 + p 1 profile + m ()V tick d method_14601 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendActivePlayerEffects d method_60598 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z canBypassPlayerLimit d method_14609 + p 1 profile + m ()[Ljava/lang/String; getPlayerNamesArray e method_14580 + c Returns an array of the usernames of all the connected players. + m (Lnet/minecraft/server/level/ServerPlayer;)V sendPlayerPermissionLevel e method_14576 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z disconnectAllPlayersWithProfile e method_52449 + p 1 gameProfile + m ()Lnet/minecraft/server/players/UserBanList; getBans f method_14563 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendAllPlayerInfo f method_14594 + c Sends the players inventory to himself. + p 1 player + m (Lcom/mojang/authlib/GameProfile;)Z isOp f method_14569 + p 1 profile + m ()Lnet/minecraft/server/players/IpBanList; getIpBans g method_14585 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/PlayerAdvancements; getPlayerAdvancements g method_14578 + p 1 player + m ()V saveAll h method_14617 + c Saves all of the players' current states. + m ()Lnet/minecraft/server/players/UserWhiteList; getWhiteList i method_14590 + m ()[Ljava/lang/String; getWhiteListNames j method_14560 + m ()Lnet/minecraft/server/players/ServerOpList; getOps k method_14603 + m ()[Ljava/lang/String; getOpNames l method_14584 + m ()I getPlayerCount m method_14574 + c Returns the number of players currently on the server. + m ()I getMaxPlayers n method_14592 + c Returns the maximum number of players allowed on the server. + m ()Z isUsingWhitelist o method_14614 + m ()I getViewDistance p method_14568 + c Gets the view distance, in chunks. + m ()I getSimulationDistance q method_38651 + m ()Lnet/minecraft/nbt/CompoundTag; getSingleplayerData r method_14567 + c On integrated servers, returns the host's player data to be written to level.dat. + m ()V removeAll s method_14597 + c Kicks everyone with "Server closed" as reason. + m ()Ljava/util/List; getPlayers t method_14571 + m ()V reloadResources u method_14572 + m ()Z isAllowCommandsForAllPlayers v method_14579 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;I)V + p 1 server + p 2 registries + p 3 playerIo + p 4 maxPlayers + m ()V +c net/minecraft/server/players/PlayerList$1 aur$1 net/minecraft/class_3324$1 + f Lnet/minecraft/server/players/PlayerList; field_14365 a field_14365 + m (Lnet/minecraft/server/players/PlayerList;)V +c net/minecraft/server/players/ServerOpList aus net/minecraft/class_3326 + m (I)[Ljava/lang/String; method_32820 a method_32820 + m (Lcom/mojang/authlib/GameProfile;)Z canBypassPlayerLimit a method_14620 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14619 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/ServerOpListEntry aut net/minecraft/class_3327 + f I level a field_14366 + f Z bypassesPlayerLimit b field_14367 + m ()I getLevel a method_14623 + c Gets the permission level of the user, as defined in the "level" attribute of the ops.json file + m ()Z getBypassesPlayerLimit b method_14622 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14621 + p 0 profileData + m (Lcom/mojang/authlib/GameProfile;IZ)V + p 1 user + p 2 level + p 3 bypassesPlayerLimit + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/SleepStatus auu net/minecraft/class_5838 + f I activePlayers a field_28866 + f I sleepingPlayers b field_28867 + m ()V removeAllSleepers a method_33811 + m (I)Z areEnoughSleeping a method_33812 + p 1 requiredSleepPercentage + m (ILjava/util/List;)Z areEnoughDeepSleeping a method_33813 + p 1 requiredSleepPercentage + p 2 sleepingPlayers + m (Ljava/util/List;)Z update a method_33814 + p 1 players + m ()I amountSleeping b method_33815 + m (I)I sleepersNeeded b method_33816 + p 1 requiredSleepPercentage + m ()V +c net/minecraft/server/players/StoredUserEntry auv net/minecraft/class_3330 + f Ljava/lang/Object; user a field_14368 + m (Lcom/google/gson/JsonObject;)V serialize a method_24896 + p 1 data + m ()Z hasExpired f method_14627 + m ()Ljava/lang/Object; getUser g method_14626 + m (Ljava/lang/Object;)V + p 1 user +c net/minecraft/server/players/StoredUserList auw net/minecraft/class_3331 + f Lorg/slf4j/Logger; LOGGER a field_14373 + f Lcom/google/gson/Gson; GSON b field_14374 + f Ljava/io/File; file c field_14370 + f Ljava/util/Map; map d field_14371 + m ()[Ljava/lang/String; getUserList a method_14636 + m (Lnet/minecraft/server/players/StoredUserEntry;)V add a method_14633 + c Adds an entry to the list + p 1 entry + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/server/players/StoredUserEntry; createEntry a method_14642 + p 1 entryData + m (Ljava/lang/Object;)Ljava/lang/String; getKeyForUser a method_14634 + c Gets the key value for the given object + p 1 obj + m ()Ljava/io/File; getFile b method_14643 + m (Lnet/minecraft/server/players/StoredUserEntry;)V remove b method_14638 + p 1 entry + m (Ljava/lang/Object;)Lnet/minecraft/server/players/StoredUserEntry; get b method_14640 + p 1 obj + m ()Z isEmpty c method_14641 + m (Lnet/minecraft/server/players/StoredUserEntry;)Lcom/google/gson/JsonObject; method_24897 c method_24897 + m (Ljava/lang/Object;)V remove c method_14635 + p 1 user + m ()Ljava/util/Collection; getEntries d method_14632 + m (Ljava/lang/Object;)Z contains d method_14644 + p 1 entry + m ()V save e method_14629 + m ()V load f method_14630 + m ()V removeExpired g method_14631 + c Removes expired bans from the list. See {@link BanEntry#hasBanExpired} + m (Ljava/io/File;)V + p 1 file + m ()V +c net/minecraft/server/players/UserBanList auy net/minecraft/class_3335 + m (I)[Ljava/lang/String; method_32821 a method_32821 + m (Lcom/mojang/authlib/GameProfile;)Z isBanned a method_14650 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14649 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/UserBanListEntry auz net/minecraft/class_3336 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14651 + c Convert a {@linkplain com.google.gson.JsonObject JsonObject} into a {@linkplain com.mojang.authlib.GameProfile}. The json object must have {@code uuid} and {@code name} attributes or {@code null} will be returned. + p 0 json + m (Lcom/mojang/authlib/GameProfile;)V + p 1 user + m (Lcom/mojang/authlib/GameProfile;Ljava/util/Date;Ljava/lang/String;Ljava/util/Date;Ljava/lang/String;)V + p 1 profile + p 2 created + p 3 source + p 4 expires + p 5 reason + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/UserWhiteList ava net/minecraft/class_3337 + m (I)[Ljava/lang/String; method_32822 a method_32822 + m (Lcom/mojang/authlib/GameProfile;)Z isWhiteListed a method_14653 + c Returns {@code true} if the profile is in the whitelist. + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/lang/String; getKeyForUser b method_14652 + c Gets the key value for the given object + p 1 obj + m (Ljava/io/File;)V + p 1 file +c net/minecraft/server/players/UserWhiteListEntry avb net/minecraft/class_3340 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/authlib/GameProfile; createGameProfile b method_14656 + p 0 json + m (Lcom/mojang/authlib/GameProfile;)V + p 1 user + m (Lcom/google/gson/JsonObject;)V + p 1 entryData +c net/minecraft/server/players/package-info avc net/minecraft/class_5989 +c net/minecraft/server/rcon/NetworkDataOutputStream avd net/minecraft/class_3345 + f Ljava/io/ByteArrayOutputStream; outputStream a field_14395 + f Ljava/io/DataOutputStream; dataOutputStream b field_14396 + m ()[B toByteArray a method_14689 + c Returns the contents of the output stream as a byte array + m (F)V writeFloat a method_34886 + p 1 data + m (I)V write a method_14692 + c Writes the given int to the output stream + p 1 data + m (Ljava/lang/String;)V writeString a method_14690 + c Writes the given String to the output stream + p 1 data + m (S)V writeShort a method_14691 + c Writes the given short to the output stream + p 1 data + m ([B)V writeBytes a method_14694 + c Writes the given byte array to the output stream + p 1 data + m ()V reset b method_14693 + c Resets the byte array output. + m (I)V writeInt b method_34887 + p 1 data + m (I)V + p 1 capacity +c net/minecraft/server/rcon/PktUtils ave net/minecraft/class_3347 + f I MAX_PACKET_SIZE a field_29792 + f [C HEX_CHAR b field_14398 + m (B)Ljava/lang/String; toHexString a method_14699 + c Returns a String representation of the byte in hexadecimal format + p 0 input + m ([BI)I intFromByteArray a method_14695 + c Read 4 bytes from the + p 0 input + p 1 offset + m ([BII)Ljava/lang/String; stringFromByteArray a method_14697 + c Read a null-terminated string from the given byte array + p 0 input + p 1 offset + p 2 length + m ([BII)I intFromByteArray b method_14696 + c Read 4 bytes from the given array in little-endian format and return them as an int + p 0 input + p 1 offset + p 2 length + m ([BII)I intFromNetworkByteArray c method_14698 + c Read 4 bytes from the given array in big-endian format and return them as an int + p 0 input + p 1 offset + p 2 length + m ()V + m ()V +c net/minecraft/server/rcon/RconConsoleSource avf net/minecraft/class_3350 + f Ljava/lang/String; RCON b field_29793 + f Lnet/minecraft/network/chat/Component; RCON_COMPONENT c field_25146 + f Ljava/lang/StringBuffer; buffer d field_14404 + f Lnet/minecraft/server/MinecraftServer; server e field_14405 + m ()V prepareForCommand e method_14702 + c Clears the RCon log + m ()Ljava/lang/String; getCommandResponse f method_14701 + c Gets the contents of the RCon log + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack g method_14700 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/server/rcon/package-info avg net/minecraft/class_5990 +c net/minecraft/server/rcon/thread/GenericThread avh net/minecraft/class_3359 + f Z running a field_14431 + f Ljava/lang/String; name b field_14424 + f Ljava/lang/Thread; thread c field_14423 + f Lorg/slf4j/Logger; LOGGER d field_14430 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID e field_14428 + f I MAX_STOP_WAIT f field_29794 + m ()Z start a method_14728 + m ()V stop b method_18050 + m ()Z isRunning c method_14731 + c Returns {@code true} if the Thread is running, {@code false} otherwise. + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/server/rcon/thread/QueryThreadGs4 avi net/minecraft/class_3364 + f Lorg/slf4j/Logger; LOGGER d field_23963 + f Ljava/lang/String; GAME_TYPE e field_29795 + f Ljava/lang/String; GAME_ID f field_29796 + f J CHALLENGE_CHECK_INTERVAL g field_29797 + f J RESPONSE_CACHE_TIME h field_29798 + f J lastChallengeCheck i field_14443 + f I port j field_14442 + f I serverPort k field_14457 + f I maxPlayers l field_14456 + f Ljava/lang/String; serverName m field_14445 + f Ljava/lang/String; worldName n field_14447 + f Ljava/net/DatagramSocket; socket o field_14449 + f [B buffer p field_14452 + f Ljava/lang/String; hostIp q field_14444 + f Ljava/lang/String; serverIp r field_14454 + f Ljava/util/Map; validChallenges s field_14453 + f Lnet/minecraft/server/rcon/NetworkDataOutputStream; rulesResponse t field_14446 + f J lastRulesResponse u field_14450 + f Lnet/minecraft/server/ServerInterface; serverInterface v field_23964 + m (JLnet/minecraft/server/rcon/thread/QueryThreadGs4$RequestChallenge;)Z method_27174 a method_27174 + m (Lnet/minecraft/server/ServerInterface;)Lnet/minecraft/server/rcon/thread/QueryThreadGs4; create a method_30737 + p 0 serverInterface + m (Ljava/lang/Exception;)V recoverSocketError a method_14752 + c Stops the query server and reports the given Exception + p 1 exception + m (Ljava/net/DatagramPacket;)Z processPacket a method_14750 + c Parses an incoming DatagramPacket, returning true if the packet was valid + p 1 requestPacket + m (Ljava/net/SocketAddress;)[B getIdentBytes a method_14748 + c Returns the request ID provided by the authorized client + p 1 address + m ([BLjava/net/DatagramPacket;)V sendTo a method_14751 + c Sends a byte array as a DatagramPacket response to the client who sent the given DatagramPacket + p 1 data + p 2 requestPacket + m (Ljava/net/DatagramPacket;)[B buildRuleResponse b method_14747 + c Creates a query response as a byte array for the specified query DatagramPacket + p 1 requestPacket + m (Ljava/net/DatagramPacket;)Ljava/lang/Boolean; validChallenge c method_14753 + c Returns {@code true} if the client has a valid auth, otherwise {@code false}. + p 1 requestPacket + m ()V pruneChallenges d method_14746 + c Removes all clients whose auth is no longer valid + m (Ljava/net/DatagramPacket;)V sendChallenge d method_14749 + c Sends an auth challenge DatagramPacket to the client and adds the client to the queryClients map + p 1 requestPacket + m ()Z initSocket e method_14754 + c Initializes the query system by binding it to a port + m (Lnet/minecraft/server/ServerInterface;I)V + p 1 serverInterface + p 2 port + m ()V +c net/minecraft/server/rcon/thread/QueryThreadGs4$RequestChallenge avi$a net/minecraft/class_3364$class_3365 + f J time a field_14459 + f I challenge b field_14458 + f [B identBytes c field_14460 + f [B challengeBytes d field_14461 + f Ljava/lang/String; ident e field_14462 + m ()I getChallenge a method_14756 + c Returns the random challenge number assigned to this auth + m (J)Ljava/lang/Boolean; before a method_14755 + c Returns {@code true} if the auth's creation timestamp is less than the given time, otherwise {@code false}. + p 1 currentTime + m ()[B getChallengeBytes b method_14757 + c Returns the auth challenge value + m ()[B getIdentBytes c method_14758 + c Returns the request ID provided by the client. + m ()Ljava/lang/String; getIdent d method_34888 + m (Ljava/net/DatagramPacket;)V + p 1 datagramPacket +c net/minecraft/server/rcon/thread/RconClient avj net/minecraft/class_3389 + f Lorg/slf4j/Logger; LOGGER d field_14491 + f I SERVERDATA_AUTH e field_29799 + f I SERVERDATA_EXECCOMMAND f field_29800 + f I SERVERDATA_RESPONSE_VALUE g field_29801 + f I SERVERDATA_AUTH_RESPONSE h field_29802 + f I SERVERDATA_AUTH_FAILURE i field_29803 + f Z authed j field_14488 + f Ljava/net/Socket; client k field_14489 + f [B buf l field_14490 + f Ljava/lang/String; rconPassword m field_14492 + f Lnet/minecraft/server/ServerInterface; serverInterface n field_23965 + m (IILjava/lang/String;)V send a method_14790 + c Sends the given response message to the client + p 1 id + p 2 type + p 3 message + m (ILjava/lang/String;)V sendCmdResponse a method_14789 + c Splits the response message into individual packets and sends each one + p 1 id + p 2 message + m ()V sendAuthFailure d method_14787 + c Sends the standard RCon 'authorization failed' response packet + m ()V closeSocket e method_14788 + c Closes the client socket + m (Lnet/minecraft/server/ServerInterface;Ljava/lang/String;Ljava/net/Socket;)V + p 1 serverInterface + p 2 rconPassword + p 3 client + m ()V +c net/minecraft/server/rcon/thread/RconThread avk net/minecraft/class_3408 + f Lorg/slf4j/Logger; LOGGER d field_23966 + f Ljava/net/ServerSocket; socket e field_14511 + f Ljava/lang/String; rconPassword f field_14512 + f Ljava/util/List; clients g field_14514 + f Lnet/minecraft/server/ServerInterface; serverInterface h field_23967 + m (Lnet/minecraft/server/ServerInterface;)Lnet/minecraft/server/rcon/thread/RconThread; create a method_30738 + p 0 serverInterface + m (Lnet/minecraft/server/rcon/thread/RconClient;)Z method_27175 a method_27175 + m (Ljava/net/ServerSocket;)V closeSocket a method_27176 + p 1 socket + m ()V clearClients d method_14820 + c Cleans up the clientThreads map by removing client Threads that are not running + m (Lnet/minecraft/server/ServerInterface;Ljava/net/ServerSocket;Ljava/lang/String;)V + p 1 serverInterface + p 2 socket + p 3 rconPassword + m ()V +c net/minecraft/server/rcon/thread/package-info avl net/minecraft/class_5991 +c net/minecraft/sounds/Music avm net/minecraft/class_5195 + f Lcom/mojang/serialization/Codec; CODEC a field_24627 + f Lnet/minecraft/core/Holder; event b field_24057 + f I minDelay c field_24058 + f I maxDelay d field_24059 + f Z replaceCurrentMusic e field_24060 + m ()Lnet/minecraft/core/Holder; getEvent a method_27279 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Boolean; method_28127 a method_28127 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28128 a method_28128 + m ()I getMinDelay b method_27280 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Integer; method_28129 b method_28129 + m ()I getMaxDelay c method_27281 + m (Lnet/minecraft/sounds/Music;)Ljava/lang/Integer; method_28130 c method_28130 + m ()Z replaceCurrentMusic d method_27282 + m (Lnet/minecraft/sounds/Music;)Lnet/minecraft/core/Holder; method_28131 d method_28131 + m (Lnet/minecraft/core/Holder;IIZ)V + p 1 event + p 2 minDelay + p 3 maxDelay + p 4 replaceCurrentMusic + m ()V +c net/minecraft/sounds/Musics avn net/minecraft/class_1143 + f Lnet/minecraft/sounds/Music; MENU a field_5585 + f Lnet/minecraft/sounds/Music; CREATIVE b field_5581 + f Lnet/minecraft/sounds/Music; CREDITS c field_5578 + f Lnet/minecraft/sounds/Music; END_BOSS d field_5580 + f Lnet/minecraft/sounds/Music; END e field_5583 + f Lnet/minecraft/sounds/Music; UNDER_WATER f field_5576 + f Lnet/minecraft/sounds/Music; GAME g field_5586 + f I ONE_SECOND h field_29804 + f I THIRTY_SECONDS i field_29805 + f I TEN_MINUTES j field_29806 + f I TWENTY_MINUTES k field_29807 + f I FIVE_MINUTES l field_29808 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/sounds/Music; createGameMusic a method_27283 + p 0 event + m ()V + m ()V +c net/minecraft/sounds/SoundEvent avo net/minecraft/class_3414 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_41698 + f Lcom/mojang/serialization/Codec; CODEC b field_41699 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC c field_48278 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48279 + f F DEFAULT_RANGE e field_41661 + f Lnet/minecraft/resources/ResourceLocation; location f field_14533 + f F range g field_38690 + f Z newSystem h field_38691 + m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_14833 + m (F)F getRange a method_43044 + p 1 volume + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; createVariableRangeEvent a method_47908 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;F)Lnet/minecraft/sounds/SoundEvent; createFixedRangeEvent a method_47909 + p 0 location + p 1 range + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Float;)Lnet/minecraft/sounds/SoundEvent; method_47955 a method_47955 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)Lnet/minecraft/sounds/SoundEvent; create a method_47956 + p 0 location + p 1 range + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47957 a method_47957 + m ()Ljava/util/Optional; fixedRange b method_47959 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; method_47960 b method_47960 + m (Lnet/minecraft/resources/ResourceLocation;FZ)V + p 1 location + p 2 range + p 3 newSystem + m ()V +c net/minecraft/sounds/SoundEvents avp net/minecraft/class_3417 + f Lnet/minecraft/sounds/SoundEvent; VAULT_ACTIVATE AA field_48796 + f Lnet/minecraft/sounds/SoundEvent; VAULT_AMBIENT AB field_48797 + f Lnet/minecraft/sounds/SoundEvent; VAULT_BREAK AC field_48798 + f Lnet/minecraft/sounds/SoundEvent; VAULT_CLOSE_SHUTTER AD field_48799 + f Lnet/minecraft/sounds/SoundEvent; VAULT_DEACTIVATE AE field_48800 + f Lnet/minecraft/sounds/SoundEvent; VAULT_EJECT_ITEM AF field_48801 + f Lnet/minecraft/sounds/SoundEvent; VAULT_REJECT_REWARDED_PLAYER AG field_51988 + f Lnet/minecraft/sounds/SoundEvent; VAULT_FALL AH field_48802 + f Lnet/minecraft/sounds/SoundEvent; VAULT_HIT AI field_48790 + f Lnet/minecraft/sounds/SoundEvent; VAULT_INSERT_ITEM AJ field_48791 + f Lnet/minecraft/sounds/SoundEvent; VAULT_INSERT_ITEM_FAIL AK field_48792 + f Lnet/minecraft/sounds/SoundEvent; VAULT_OPEN_SHUTTER AL field_48793 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS A field_15028 + f Lnet/minecraft/sounds/SoundEvent; VAULT_PLACE AM field_48794 + f Lnet/minecraft/sounds/SoundEvent; VAULT_STEP AN field_48795 + f Lnet/minecraft/sounds/SoundEvent; VEX_AMBIENT AO field_14812 + f Lnet/minecraft/sounds/SoundEvent; VEX_CHARGE AP field_14898 + f Lnet/minecraft/sounds/SoundEvent; VEX_DEATH AQ field_14964 + f Lnet/minecraft/sounds/SoundEvent; VEX_HURT AR field_15072 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_AMBIENT AS field_15175 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_CELEBRATE AT field_19152 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_DEATH AU field_15225 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_HURT AV field_15139 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_NO AW field_15008 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_TRADE AX field_14933 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_YES AY field_14815 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_ARMORER AZ field_20669 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_BREAK Aa field_46951 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_FALL Ab field_46952 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_HIT Ac field_46953 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_PLACE Ad field_46954 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_TUFF_STEP Ae field_46955 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_AMBIENT_LAND Af field_14722 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_DEATH Ag field_14856 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_DEATH_BABY Ah field_14618 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_BREAK Ai field_14687 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_CRACK Aj field_15109 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_EGG_HATCH Ak field_14902 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_HURT Al field_15183 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_HURT_BABY Am field_15070 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_LAY_EGG An field_14634 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SHAMBLE Ao field_14549 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SHAMBLE_BABY Ap field_14864 + f Lnet/minecraft/sounds/SoundEvent; TURTLE_SWIM Aq field_14764 + f Lnet/minecraft/core/Holder$Reference; UI_BUTTON_CLICK Ar field_15015 + f Lnet/minecraft/sounds/SoundEvent; UI_LOOM_SELECT_PATTERN As field_14920 + f Lnet/minecraft/sounds/SoundEvent; UI_LOOM_TAKE_RESULT At field_15096 + f Lnet/minecraft/sounds/SoundEvent; UI_CARTOGRAPHY_TABLE_TAKE_RESULT Au field_17484 + f Lnet/minecraft/sounds/SoundEvent; UI_STONECUTTER_TAKE_RESULT Av field_17710 + f Lnet/minecraft/sounds/SoundEvent; UI_STONECUTTER_SELECT_RECIPE Aw field_17711 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_CHALLENGE_COMPLETE Ax field_15195 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_IN Ay field_14561 + f Lnet/minecraft/sounds/SoundEvent; UI_TOAST_OUT Az field_14641 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DRINK_POTION BA field_18313 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_HURT BB field_17749 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_NO BC field_17750 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_REAPPEARED BD field_18314 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_TRADE BE field_17751 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_YES BF field_17752 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_AGITATED BG field_38061 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_AMBIENT BH field_38062 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ANGRY BI field_38063 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ATTACK_IMPACT BJ field_38064 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_DEATH BK field_38065 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_DIG BL field_38066 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS_RARE B field_15068 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_EMERGE BM field_38067 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_HEARTBEAT BN field_38068 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_HURT BO field_38069 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_LISTENING BP field_38070 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_LISTENING_ANGRY BQ field_38071 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSE BR field_38072 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSER BS field_38073 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_NEARBY_CLOSEST BT field_38074 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_ROAR BU field_38075 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SNIFF BV field_38076 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SONIC_BOOM BW field_38830 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_SONIC_CHARGE BX field_38831 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_STEP BY field_38077 + f Lnet/minecraft/sounds/SoundEvent; WARDEN_TENDRIL_CLICKS BZ field_38078 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_BUTCHER Ba field_20670 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_CARTOGRAPHER Bb field_20671 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_CLERIC Bc field_20672 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FARMER Bd field_20673 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FISHERMAN Be field_20674 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_FLETCHER Bf field_20675 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_LEATHERWORKER Bg field_20676 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_LIBRARIAN Bh field_20677 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_MASON Bi field_20678 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_SHEPHERD Bj field_20679 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_TOOLSMITH Bk field_20680 + f Lnet/minecraft/sounds/SoundEvent; VILLAGER_WORK_WEAPONSMITH Bl field_20681 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_AMBIENT Bm field_14735 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_CELEBRATE Bn field_19151 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_DEATH Bo field_14642 + f Lnet/minecraft/sounds/SoundEvent; VINDICATOR_HURT Bp field_14558 + f Lnet/minecraft/sounds/SoundEvent; VINE_BREAK Bq field_28617 + f Lnet/minecraft/sounds/SoundEvent; VINE_FALL Br field_28618 + f Lnet/minecraft/sounds/SoundEvent; VINE_HIT Bs field_28619 + f Lnet/minecraft/sounds/SoundEvent; VINE_PLACE Bt field_28620 + f Lnet/minecraft/sounds/SoundEvent; VINE_STEP Bu field_23061 + f Lnet/minecraft/sounds/SoundEvent; LILY_PAD_PLACE Bv field_15173 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_AMBIENT Bw field_17747 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DEATH Bx field_17748 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DISAPPEARED By field_18315 + f Lnet/minecraft/sounds/SoundEvent; WANDERING_TRADER_DRINK_MILK Bz field_18316 + f Lnet/minecraft/sounds/SoundEvent; WITHER_DEATH CA field_15136 + f Lnet/minecraft/sounds/SoundEvent; WITHER_HURT CB field_14688 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SHOOT CC field_14588 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_AMBIENT CD field_15214 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_DEATH CE field_15122 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_HURT CF field_15027 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SKELETON_STEP CG field_14955 + f Lnet/minecraft/sounds/SoundEvent; WITHER_SPAWN CH field_14792 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_BREAK CI field_49174 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_CRACK CJ field_49175 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_DAMAGE CK field_49176 + f Lnet/minecraft/sounds/SoundEvent; WOLF_ARMOR_REPAIR CL field_49177 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP_ADDITIONS_ULTRA_RARE C field_15178 + f Lnet/minecraft/sounds/SoundEvent; WOLF_AMBIENT CM field_14724 + f Lnet/minecraft/sounds/SoundEvent; WOLF_DEATH CN field_14659 + f Lnet/minecraft/sounds/SoundEvent; WOLF_GROWL CO field_14575 + f Lnet/minecraft/sounds/SoundEvent; WOLF_HOWL CP field_15117 + f Lnet/minecraft/sounds/SoundEvent; WOLF_HURT CQ field_15218 + f Lnet/minecraft/sounds/SoundEvent; WOLF_PANT CR field_14922 + f Lnet/minecraft/sounds/SoundEvent; WOLF_SHAKE CS field_15042 + f Lnet/minecraft/sounds/SoundEvent; WOLF_STEP CT field_14772 + f Lnet/minecraft/sounds/SoundEvent; WOLF_WHINE CU field_14807 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_DOOR_CLOSE CV field_14541 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_DOOR_OPEN CW field_14664 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_TRAPDOOR_CLOSE CX field_15080 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_TRAPDOOR_OPEN CY field_14932 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_BUTTON_CLICK_OFF CZ field_15105 + f Lnet/minecraft/sounds/SoundEvent; WAXED_HANGING_SIGN_INTERACT_FAIL Ca field_46651 + f Lnet/minecraft/sounds/SoundEvent; WAXED_SIGN_INTERACT_FAIL Cb field_43167 + f Lnet/minecraft/sounds/SoundEvent; WATER_AMBIENT Cc field_15237 + f Lnet/minecraft/sounds/SoundEvent; WEATHER_RAIN Cd field_14946 + f Lnet/minecraft/sounds/SoundEvent; WEATHER_RAIN_ABOVE Ce field_15020 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_BREAK Cf field_15120 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_FALL Cg field_15207 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_HIT Ch field_14953 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_PLACE Ci field_15025 + f Lnet/minecraft/sounds/SoundEvent; WET_GRASS_STEP Cj field_14774 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_BREAK Ck field_45967 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_DRIES Cl field_49173 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_FALL Cm field_45968 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_HIT Cn field_45959 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_PLACE Co field_45960 + f Lnet/minecraft/sounds/SoundEvent; WET_SPONGE_STEP Cp field_45961 + f Lnet/minecraft/core/Holder$Reference; WIND_CHARGE_BURST Cq field_49044 + f Lnet/minecraft/sounds/SoundEvent; WIND_CHARGE_THROW Cr field_49045 + f Lnet/minecraft/sounds/SoundEvent; WITCH_AMBIENT Cs field_14736 + f Lnet/minecraft/sounds/SoundEvent; WITCH_CELEBRATE Ct field_19153 + f Lnet/minecraft/sounds/SoundEvent; WITCH_DEATH Cu field_14820 + f Lnet/minecraft/sounds/SoundEvent; WITCH_DRINK Cv field_14565 + f Lnet/minecraft/sounds/SoundEvent; WITCH_HURT Cw field_14645 + f Lnet/minecraft/sounds/SoundEvent; WITCH_THROW Cx field_15067 + f Lnet/minecraft/sounds/SoundEvent; WITHER_AMBIENT Cy field_15163 + f Lnet/minecraft/sounds/SoundEvent; WITHER_BREAK_BLOCK Cz field_15236 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_AMBIENT DA field_15154 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_DEATH DB field_14543 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HORSE_HURT DC field_15179 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_HURT DD field_15088 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_INFECT DE field_14986 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_AMBIENT DF field_14926 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_ANGRY DG field_14852 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_DEATH DH field_14743 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIFIED_PIGLIN_HURT DI field_14710 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_STEP DJ field_14621 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_AMBIENT DK field_15056 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_CONVERTED DL field_15168 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_BREAK D field_26979 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_CURE DM field_14905 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_DEATH DN field_14996 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_HURT DO field_14728 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_VILLAGER_STEP DP field_14841 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_BAD_OMEN DQ field_50090 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_TRIAL_OMEN DR field_50091 + f Lnet/minecraft/sounds/SoundEvent; APPLY_EFFECT_RAID_OMEN DS field_50092 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_BUTTON_CLICK_ON Da field_14699 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_PRESSURE_PLATE_CLICK_OFF Db field_15002 + f Lnet/minecraft/sounds/SoundEvent; WOODEN_PRESSURE_PLATE_CLICK_ON Dc field_14961 + f Lnet/minecraft/sounds/SoundEvent; WOOD_BREAK Dd field_15215 + f Lnet/minecraft/sounds/SoundEvent; WOOD_FALL De field_14607 + f Lnet/minecraft/sounds/SoundEvent; WOOD_HIT Df field_14808 + f Lnet/minecraft/sounds/SoundEvent; WOOD_PLACE Dg field_14718 + f Lnet/minecraft/sounds/SoundEvent; WOOD_STEP Dh field_15053 + f Lnet/minecraft/sounds/SoundEvent; WOOL_BREAK Di field_14983 + f Lnet/minecraft/sounds/SoundEvent; WOOL_FALL Dj field_15048 + f Lnet/minecraft/sounds/SoundEvent; WOOL_HIT Dk field_14628 + f Lnet/minecraft/sounds/SoundEvent; WOOL_PLACE Dl field_15226 + f Lnet/minecraft/sounds/SoundEvent; WOOL_STEP Dm field_15181 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_AMBIENT Dn field_23672 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_ANGRY Do field_23673 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_ATTACK Dp field_23674 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_DEATH Dq field_23675 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_HURT Dr field_23676 + f Lnet/minecraft/sounds/SoundEvent; ZOGLIN_STEP Ds field_23677 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_AMBIENT Dt field_15174 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_ATTACK_WOODEN_DOOR Du field_14562 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_ATTACK_IRON_DOOR Dv field_14670 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_BREAK_WOODEN_DOOR Dw field_14742 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_CONVERTED_TO_DROWNED Dx field_14850 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_DEATH Dy field_14930 + f Lnet/minecraft/sounds/SoundEvent; ZOMBIE_DESTROY_EGG Dz field_15023 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_CHIME E field_26980 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_FALL F field_26981 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_HIT G field_26982 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_PLACE H field_26940 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_RESONATE I field_43154 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_BLOCK_STEP J field_26941 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_BREAK K field_26942 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_FALL L field_26943 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_HIT M field_26944 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_PLACE N field_26945 + f Lnet/minecraft/sounds/SoundEvent; AMETHYST_CLUSTER_STEP O field_26946 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_BREAK P field_21891 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_STEP Q field_21906 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_PLACE R field_21929 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_HIT S field_21930 + f Lnet/minecraft/sounds/SoundEvent; ANCIENT_DEBRIS_FALL T field_21936 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_BREAK U field_14542 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_DESTROY V field_14665 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_FALL W field_14727 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_HIT X field_14927 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_LAND Y field_14833 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_PLACE Z field_14785 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_BREAK aA field_15118 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_FALL aB field_15186 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_HIT aC field_14897 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_STAND_PLACE aD field_14969 + f Lnet/minecraft/sounds/SoundEvent; ARROW_HIT aE field_15151 + f Lnet/minecraft/sounds/SoundEvent; ARROW_HIT_PLAYER aF field_15224 + f Lnet/minecraft/sounds/SoundEvent; ARROW_SHOOT aG field_14600 + f Lnet/minecraft/sounds/SoundEvent; AXE_STRIP aH field_14675 + f Lnet/minecraft/sounds/SoundEvent; AXE_SCRAPE aI field_29541 + f Lnet/minecraft/sounds/SoundEvent; AXE_WAX_OFF aJ field_29542 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_ATTACK aK field_28287 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_DEATH aL field_28288 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_AMBIENT_WITH_ITEM a field_38365 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_HURT aM field_28289 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_IDLE_AIR aN field_28290 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_IDLE_WATER aO field_28291 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_SPLASH aP field_28292 + f Lnet/minecraft/sounds/SoundEvent; AXOLOTL_SWIM aQ field_28293 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_BREAK aR field_28560 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_FALL aS field_28561 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_HIT aT field_28562 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_PLACE aU field_28563 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_STEP aV field_28564 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_BREAK aW field_28565 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_FALL aX field_28566 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_HIT aY field_28567 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_PLACE aZ field_28558 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_STEP aa field_14695 + f Lnet/minecraft/sounds/SoundEvent; ANVIL_USE ab field_14559 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_EAT ac field_47711 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_HURT ad field_47712 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_HURT_REDUCED ae field_48712 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_AMBIENT af field_47713 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_STEP ag field_47714 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_DEATH ah field_47715 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_ROLL ai field_47716 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_LAND aj field_47717 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_SCUTE_DROP ak field_47718 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_UNROLL_FINISH al field_49046 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_PEEK am field_49047 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_UNROLL_START an field_49048 + f Lnet/minecraft/sounds/SoundEvent; ARMADILLO_BRUSH ao field_47720 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_CHAIN ap field_15191 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_DIAMOND aq field_15103 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_ELYTRA ar field_14966 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_GENERIC as field_14883 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_GOLD at field_14761 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_IRON au field_14862 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_LEATHER av field_14581 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_NETHERITE aw field_21866 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_TURTLE ax field_14684 + f Lnet/minecraft/core/Holder; ARMOR_EQUIP_WOLF ay field_47721 + f Lnet/minecraft/sounds/SoundEvent; ARMOR_UNEQUIP_WOLF az field_47722 + f Lnet/minecraft/sounds/SoundEvent; BASALT_BREAK bA field_21867 + f Lnet/minecraft/sounds/SoundEvent; BASALT_STEP bB field_21868 + f Lnet/minecraft/sounds/SoundEvent; BASALT_PLACE bC field_21869 + f Lnet/minecraft/sounds/SoundEvent; BASALT_HIT bD field_21870 + f Lnet/minecraft/sounds/SoundEvent; BASALT_FALL bE field_21871 + f Lnet/minecraft/sounds/SoundEvent; BAT_AMBIENT bF field_15009 + f Lnet/minecraft/sounds/SoundEvent; BAT_DEATH bG field_14911 + f Lnet/minecraft/sounds/SoundEvent; BAT_HURT bH field_14746 + f Lnet/minecraft/sounds/SoundEvent; BAT_LOOP bI field_14845 + f Lnet/minecraft/sounds/SoundEvent; BAT_TAKEOFF bJ field_14610 + f Lnet/minecraft/sounds/SoundEvent; BEACON_ACTIVATE bK field_14703 + f Lnet/minecraft/sounds/SoundEvent; BEACON_AMBIENT bL field_15045 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_AMBIENT_WITHOUT_ITEM b field_38366 + f Lnet/minecraft/sounds/SoundEvent; BEACON_DEACTIVATE bM field_19344 + f Lnet/minecraft/sounds/SoundEvent; BEACON_POWER_SELECT bN field_14891 + f Lnet/minecraft/sounds/SoundEvent; BEE_DEATH bO field_20602 + f Lnet/minecraft/sounds/SoundEvent; BEE_HURT bP field_20603 + f Lnet/minecraft/sounds/SoundEvent; BEE_LOOP_AGGRESSIVE bQ field_20604 + f Lnet/minecraft/sounds/SoundEvent; BEE_LOOP bR field_20605 + f Lnet/minecraft/sounds/SoundEvent; BEE_STING bS field_20606 + f Lnet/minecraft/sounds/SoundEvent; BEE_POLLINATE bT field_20607 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_DRIP bU field_20608 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_ENTER bV field_20609 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_EXIT bW field_20610 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_SHEAR bX field_20611 + f Lnet/minecraft/sounds/SoundEvent; BEEHIVE_WORK bY field_20612 + f Lnet/minecraft/sounds/SoundEvent; BELL_BLOCK bZ field_17265 + f Lnet/minecraft/sounds/SoundEvent; AZALEA_LEAVES_STEP ba field_28559 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_BREAK bb field_14740 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_FALL bc field_14906 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_HIT bd field_14811 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_PLACE be field_14719 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_STEP bf field_14635 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_BREAK bg field_14629 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_HIT bh field_15227 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_SAPLING_PLACE bi field_15125 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BREAK bj field_40057 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FALL bk field_40058 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HIT bl field_40059 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PLACE bm field_40060 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_STEP bn field_40061 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_DOOR_CLOSE bo field_40062 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_DOOR_OPEN bp field_40063 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_TRAPDOOR_CLOSE bq field_40064 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_TRAPDOOR_OPEN br field_40065 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BUTTON_CLICK_OFF bs field_40066 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_BUTTON_CLICK_ON bt field_40067 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PRESSURE_PLATE_CLICK_OFF bu field_40068 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_PRESSURE_PLATE_CLICK_ON bv field_40069 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FENCE_GATE_CLOSE bw field_40070 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_FENCE_GATE_OPEN bx field_40071 + f Lnet/minecraft/sounds/SoundEvent; BARREL_CLOSE by field_17603 + f Lnet/minecraft/sounds/SoundEvent; BARREL_OPEN bz field_17604 + f Lnet/minecraft/sounds/SoundEvent; BLASTFURNACE_FIRE_CRACKLE cA field_17605 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_EMPTY cB field_14826 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_FILL cC field_14779 + f Lnet/minecraft/sounds/SoundEvent; BOTTLE_FILL_DRAGONBREATH cD field_15029 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_CHARGE cE field_47724 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_DEFLECT cF field_47725 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_INHALE cG field_47192 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_IDLE_GROUND cH field_47193 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_IDLE_AIR cI field_47194 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_SHOOT cJ field_47195 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_JUMP cK field_47196 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_LAND cL field_47197 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_DEATH c field_38367 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_SLIDE cM field_47198 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_DEATH cN field_47199 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_HURT cO field_47200 + f Lnet/minecraft/sounds/SoundEvent; BREEZE_WHIRL cP field_47723 + f Lnet/minecraft/core/Holder$Reference; BREEZE_WIND_CHARGE_BURST cQ field_49049 + f Lnet/minecraft/sounds/SoundEvent; BREWING_STAND_BREW cR field_14978 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GENERIC cS field_43155 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_SAND cT field_43156 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GRAVEL cU field_43157 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_SAND_COMPLETED cV field_43158 + f Lnet/minecraft/sounds/SoundEvent; BRUSH_GRAVEL_COMPLETED cW field_43159 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_BUBBLE_POP cX field_15065 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_UPWARDS_AMBIENT cY field_15161 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_UPWARDS_INSIDE cZ field_19195 + f Lnet/minecraft/sounds/SoundEvent; BELL_RESONATE ca field_19167 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_BREAK cb field_28568 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_FALL cc field_28569 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_HIT cd field_28570 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_PLACE ce field_28571 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_STEP cf field_28572 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_AMBIENT cg field_14991 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_BURN ch field_14734 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_DEATH ci field_14580 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_HURT cj field_14842 + f Lnet/minecraft/sounds/SoundEvent; BLAZE_SHOOT ck field_14970 + f Lnet/minecraft/sounds/SoundEvent; BOAT_PADDLE_LAND cl field_14886 + f Lnet/minecraft/sounds/SoundEvent; BOAT_PADDLE_WATER cm field_15171 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_AMBIENT cn field_49142 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_DEATH co field_49143 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_HURT cp field_49144 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_SHEAR cq field_49178 + f Lnet/minecraft/sounds/SoundEvent; BOGGED_STEP cr field_49145 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_BREAK cs field_21872 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_FALL ct field_21873 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_HIT cu field_21874 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_PLACE cv field_21875 + f Lnet/minecraft/sounds/SoundEvent; BONE_BLOCK_STEP cw field_21876 + f Lnet/minecraft/sounds/SoundEvent; BONE_MEAL_USE cx field_33433 + f Lnet/minecraft/sounds/SoundEvent; BOOK_PAGE_TURN cy field_17481 + f Lnet/minecraft/sounds/SoundEvent; BOOK_PUT cz field_17482 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DEATH dA field_40075 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_EAT dB field_40076 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_HURT dC field_40077 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_SADDLE dD field_40078 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_SIT dE field_40079 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STAND dF field_40080 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STEP dG field_40081 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_STEP_SAND dH field_40082 + f Lnet/minecraft/sounds/SoundEvent; CAMPFIRE_CRACKLE dI field_17483 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_AMBIENT dJ field_26953 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_BREAK dK field_26954 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_EXTINGUISH dL field_26955 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_HURT d field_38369 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_FALL dM field_26956 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_HIT dN field_26957 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_PLACE dO field_26958 + f Lnet/minecraft/sounds/SoundEvent; CANDLE_STEP dP field_26959 + f Lnet/minecraft/sounds/SoundEvent; CAT_AMBIENT dQ field_15051 + f Lnet/minecraft/sounds/SoundEvent; CAT_STRAY_AMBIENT dR field_16440 + f Lnet/minecraft/sounds/SoundEvent; CAT_DEATH dS field_14971 + f Lnet/minecraft/sounds/SoundEvent; CAT_EAT dT field_16439 + f Lnet/minecraft/sounds/SoundEvent; CAT_HISS dU field_14938 + f Lnet/minecraft/sounds/SoundEvent; CAT_BEG_FOR_FOOD dV field_16438 + f Lnet/minecraft/sounds/SoundEvent; CAT_HURT dW field_14867 + f Lnet/minecraft/sounds/SoundEvent; CAT_PURR dX field_14741 + f Lnet/minecraft/sounds/SoundEvent; CAT_PURREOW dY field_14589 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_BREAK dZ field_28576 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_WHIRLPOOL_AMBIENT da field_14650 + f Lnet/minecraft/sounds/SoundEvent; BUBBLE_COLUMN_WHIRLPOOL_INSIDE db field_19196 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY dc field_14834 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_AXOLOTL dd field_28294 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_FISH de field_14912 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_LAVA df field_15010 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_POWDER_SNOW dg field_27847 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_EMPTY_TADPOLE dh field_37300 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL di field_15126 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_AXOLOTL dj field_28295 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_FISH dk field_14568 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_LAVA dl field_15202 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_POWDER_SNOW dm field_27846 + f Lnet/minecraft/sounds/SoundEvent; BUCKET_FILL_TADPOLE dn field_37301 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_DROP_CONTENTS do field_34375 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_INSERT dp field_34376 + f Lnet/minecraft/sounds/SoundEvent; BUNDLE_REMOVE_ONE dq field_34377 + f Lnet/minecraft/sounds/SoundEvent; CAKE_ADD_CANDLE dr field_26947 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_BREAK ds field_26948 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_STEP dt field_26949 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_PLACE du field_26950 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_HIT dv field_26951 + f Lnet/minecraft/sounds/SoundEvent; CALCITE_FALL dw field_26952 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_AMBIENT dx field_40072 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DASH dy field_40073 + f Lnet/minecraft/sounds/SoundEvent; CAMEL_DASH_READY dz field_40074 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_BREAK eA field_42562 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_FALL eB field_42563 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_HIT eC field_42564 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_PLACE eD field_42565 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_DOOR_CLOSE eE field_42566 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_DOOR_OPEN eF field_42567 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_TRAPDOOR_CLOSE eG field_42568 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_TRAPDOOR_OPEN eH field_42569 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BUTTON_CLICK_OFF eI field_42570 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BUTTON_CLICK_ON eJ field_42571 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PRESSURE_PLATE_CLICK_OFF eK field_42572 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PRESSURE_PLATE_CLICK_ON eL field_42574 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_ITEM_GIVEN e field_38370 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FENCE_GATE_CLOSE eM field_42575 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FENCE_GATE_OPEN eN field_42576 + f Lnet/minecraft/sounds/SoundEvent; CHEST_CLOSE eO field_14823 + f Lnet/minecraft/sounds/SoundEvent; CHEST_LOCKED eP field_14731 + f Lnet/minecraft/sounds/SoundEvent; CHEST_OPEN eQ field_14982 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_AMBIENT eR field_14871 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_DEATH eS field_15140 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_EGG eT field_15219 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_HURT eU field_14601 + f Lnet/minecraft/sounds/SoundEvent; CHICKEN_STEP eV field_14685 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_BREAK eW field_40967 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_FALL eX field_40968 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_HIT eY field_40969 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_INSERT eZ field_40970 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_FALL ea field_28577 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_HIT eb field_28578 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_PLACE ec field_28573 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_STEP ed field_28574 + f Lnet/minecraft/sounds/SoundEvent; CAVE_VINES_PICK_BERRIES ee field_28575 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_BREAK ef field_24065 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_FALL eg field_24061 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_HIT eh field_24062 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_PLACE ei field_24063 + f Lnet/minecraft/sounds/SoundEvent; CHAIN_STEP ej field_24064 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_BREAK ek field_42573 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_FALL el field_42547 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HIT em field_42548 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_PLACE en field_42549 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_STEP eo field_42550 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_BREAK ep field_42551 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_FALL eq field_42552 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_HIT er field_42553 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_PLACE es field_42554 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_SAPLING_STEP et field_42555 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_BREAK eu field_42556 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_FALL ev field_42557 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_HIT ew field_42558 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_PLACE ex field_42559 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_LEAVES_STEP ey field_42560 + f Lnet/minecraft/sounds/SoundEvent; CHERRY_WOOD_HANGING_SIGN_STEP ez field_42561 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_DEACTIVATE fA field_14979 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_BREAK fB field_46929 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_STEP fC field_46930 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_PLACE fD field_46931 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_HIT fE field_46932 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_FALL fF field_46933 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_TURN_ON fG field_46934 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BULB_TURN_OFF fH field_46935 + f Lnet/minecraft/sounds/SoundEvent; COPPER_BREAK fI field_26960 + f Lnet/minecraft/sounds/SoundEvent; COPPER_STEP fJ field_26961 + f Lnet/minecraft/sounds/SoundEvent; COPPER_PLACE fK field_26962 + f Lnet/minecraft/sounds/SoundEvent; COPPER_HIT fL field_26963 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_ITEM_TAKEN f field_38371 + f Lnet/minecraft/sounds/SoundEvent; COPPER_FALL fM field_26964 + f Lnet/minecraft/sounds/SoundEvent; COPPER_DOOR_CLOSE fN field_46936 + f Lnet/minecraft/sounds/SoundEvent; COPPER_DOOR_OPEN fO field_46937 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_BREAK fP field_46938 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_STEP fQ field_46939 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_PLACE fR field_46940 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_HIT fS field_46941 + f Lnet/minecraft/sounds/SoundEvent; COPPER_GRATE_FALL fT field_46942 + f Lnet/minecraft/sounds/SoundEvent; COPPER_TRAPDOOR_CLOSE fU field_46943 + f Lnet/minecraft/sounds/SoundEvent; COPPER_TRAPDOOR_OPEN fV field_46944 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_BREAK fW field_14804 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_FALL fX field_14551 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_HIT fY field_14672 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_PLACE fZ field_15087 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_INSERT_ENCHANTED fa field_40971 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_STEP fb field_40972 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PICKUP fc field_40973 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PICKUP_ENCHANTED fd field_40974 + f Lnet/minecraft/sounds/SoundEvent; CHISELED_BOOKSHELF_PLACE fe field_40975 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FLOWER_DEATH ff field_14739 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FLOWER_GROW fg field_14817 + f Lnet/minecraft/sounds/SoundEvent; CHORUS_FRUIT_TELEPORT fh field_14890 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_BREAK fi field_50093 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_STEP fj field_50094 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_PLACE fk field_50095 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_HIT fl field_50096 + f Lnet/minecraft/sounds/SoundEvent; COBWEB_FALL fm field_50097 + f Lnet/minecraft/sounds/SoundEvent; COD_AMBIENT fn field_15083 + f Lnet/minecraft/sounds/SoundEvent; COD_DEATH fo field_15003 + f Lnet/minecraft/sounds/SoundEvent; COD_FLOP fp field_14918 + f Lnet/minecraft/sounds/SoundEvent; COD_HURT fq field_14851 + f Lnet/minecraft/sounds/SoundEvent; COMPARATOR_CLICK fr field_14762 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_EMPTY fs field_17606 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_FILL ft field_17607 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_FILL_SUCCESS fu field_17608 + f Lnet/minecraft/sounds/SoundEvent; COMPOSTER_READY fv field_17609 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_ACTIVATE fw field_14700 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_AMBIENT fx field_14632 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_AMBIENT_SHORT fy field_15071 + f Lnet/minecraft/sounds/SoundEvent; CONDUIT_ATTACK_TARGET fz field_15177 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_STEP gA field_42580 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_PLACE gB field_42581 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_SHATTER gC field_42582 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_BREAK gD field_28968 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_FALL gE field_28969 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_HIT gF field_28970 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_PLACE gG field_28971 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BRICKS_STEP gH field_28972 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_BREAK gI field_28973 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_FALL gJ field_28974 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_HIT gK field_28975 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_PLACE gL field_28976 + f Lnet/minecraft/sounds/SoundEvent; ALLAY_THROW g field_38923 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_STEP gM field_28977 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_BREAK gN field_28978 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_FALL gO field_28979 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_HIT gP field_28980 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_PLACE gQ field_28981 + f Lnet/minecraft/sounds/SoundEvent; DEEPSLATE_TILES_STEP gR field_28982 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_DISPENSE gS field_14611 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_FAIL gT field_14701 + f Lnet/minecraft/sounds/SoundEvent; DISPENSER_LAUNCH gU field_14711 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_AMBIENT gV field_14799 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_AMBIENT_WATER gW field_14881 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_ATTACK gX field_14992 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_DEATH gY field_15101 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_EAT gZ field_14590 + f Lnet/minecraft/sounds/SoundEvent; CORAL_BLOCK_STEP ga field_14935 + f Lnet/minecraft/sounds/SoundEvent; COW_AMBIENT gb field_14780 + f Lnet/minecraft/sounds/SoundEvent; COW_DEATH gc field_14857 + f Lnet/minecraft/sounds/SoundEvent; COW_HURT gd field_14597 + f Lnet/minecraft/sounds/SoundEvent; COW_MILK ge field_14691 + f Lnet/minecraft/sounds/SoundEvent; COW_STEP gf field_15110 + f Lnet/minecraft/sounds/SoundEvent; CRAFTER_CRAFT gg field_46765 + f Lnet/minecraft/sounds/SoundEvent; CRAFTER_FAIL gh field_46766 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_DEATH gi field_14907 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_HURT gj field_15192 + f Lnet/minecraft/sounds/SoundEvent; CREEPER_PRIMED gk field_15057 + f Lnet/minecraft/sounds/SoundEvent; CROP_BREAK gl field_17610 + f Lnet/minecraft/sounds/SoundEvent; CROP_PLANTED gm field_17611 + f Lnet/minecraft/sounds/SoundEvent; CROSSBOW_HIT gn field_14636 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_END go field_14626 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_MIDDLE gp field_14860 + f Lnet/minecraft/core/Holder; CROSSBOW_LOADING_START gq field_14765 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_1 gr field_15011 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_2 gs field_14916 + f Lnet/minecraft/core/Holder; CROSSBOW_QUICK_CHARGE_3 gt field_15089 + f Lnet/minecraft/sounds/SoundEvent; CROSSBOW_SHOOT gu field_15187 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_BREAK gv field_42577 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_FALL gw field_42578 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_HIT gx field_42579 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_INSERT gy field_46649 + f Lnet/minecraft/sounds/SoundEvent; DECORATED_POT_INSERT_FAIL gz field_46650 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_WATER_INTO_CAULDRON hA field_28037 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_TILT_DOWN hB field_28579 + f Lnet/minecraft/sounds/SoundEvent; BIG_DRIPLEAF_TILT_UP hC field_28580 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_AMBIENT hD field_15030 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_AMBIENT_WATER hE field_14980 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_DEATH hF field_15066 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_DEATH_WATER hG field_15162 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_HURT hH field_14571 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_HURT_WATER hI field_14651 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_SHOOT hJ field_14753 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_STEP hK field_14835 + f Lnet/minecraft/sounds/SoundEvent; DROWNED_SWIM hL field_14913 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CAVE h field_14564 + f Lnet/minecraft/sounds/SoundEvent; DYE_USE hM field_28391 + f Lnet/minecraft/sounds/SoundEvent; EGG_THROW hN field_15012 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_AMBIENT hO field_15127 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_AMBIENT_LAND hP field_14569 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_CURSE hQ field_15203 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_DEATH hR field_15052 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_DEATH_LAND hS field_14973 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_FLOP hT field_14939 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_HURT hU field_14868 + f Lnet/minecraft/sounds/SoundEvent; ELDER_GUARDIAN_HURT_LAND hV field_14652 + f Lnet/minecraft/sounds/SoundEvent; ELYTRA_FLYING hW field_14572 + f Lnet/minecraft/sounds/SoundEvent; ENCHANTMENT_TABLE_USE hX field_15119 + f Lnet/minecraft/sounds/SoundEvent; ENDER_CHEST_CLOSE hY field_15206 + f Lnet/minecraft/sounds/SoundEvent; ENDER_CHEST_OPEN hZ field_14952 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_HURT ha field_15216 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_JUMP hb field_14707 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_PLAY hc field_14972 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_SPLASH hd field_14887 + f Lnet/minecraft/sounds/SoundEvent; DOLPHIN_SWIM he field_15172 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_AMBIENT hf field_15094 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_ANGRY hg field_14661 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_CHEST hh field_14598 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_DEATH hi field_14827 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_EAT hj field_24629 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_HURT hk field_14781 + f Lnet/minecraft/sounds/SoundEvent; DONKEY_JUMP hl field_49179 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_BREAK hm field_28038 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_STEP hn field_28039 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_PLACE ho field_28025 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_HIT hp field_28026 + f Lnet/minecraft/sounds/SoundEvent; DRIPSTONE_BLOCK_FALL hq field_28027 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_BREAK hr field_28028 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_STEP hs field_28029 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_PLACE ht field_28030 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_HIT hu field_28031 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_FALL hv field_28032 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_LAND hw field_28033 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_LAVA hx field_28034 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_WATER hy field_28035 + f Lnet/minecraft/sounds/SoundEvent; POINTED_DRIPSTONE_DRIP_LAVA_INTO_CAULDRON hz field_28036 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_DEATH iA field_14599 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_FANGS_ATTACK iB field_14692 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_HURT iC field_15111 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_ATTACK iD field_14908 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_SUMMON iE field_15193 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_PREPARE_WOLOLO iF field_15058 + f Lnet/minecraft/sounds/SoundEvent; EXPERIENCE_BOTTLE_THROW iG field_14637 + f Lnet/minecraft/sounds/SoundEvent; EXPERIENCE_ORB_PICKUP iH field_14627 + f Lnet/minecraft/sounds/SoundEvent; FENCE_GATE_CLOSE iI field_14861 + f Lnet/minecraft/sounds/SoundEvent; FENCE_GATE_OPEN iJ field_14766 + f Lnet/minecraft/sounds/SoundEvent; FIRECHARGE_USE iK field_15013 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_BLAST iL field_14917 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_ADDITIONS i field_23790 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_BLAST_FAR iM field_15090 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LARGE_BLAST iN field_15188 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LARGE_BLAST_FAR iO field_14612 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_LAUNCH iP field_14702 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_SHOOT iQ field_14712 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_TWINKLE iR field_14800 + f Lnet/minecraft/sounds/SoundEvent; FIREWORK_ROCKET_TWINKLE_FAR iS field_14882 + f Lnet/minecraft/sounds/SoundEvent; FIRE_AMBIENT iT field_14993 + f Lnet/minecraft/sounds/SoundEvent; FIRE_EXTINGUISH iU field_15102 + f Lnet/minecraft/sounds/SoundEvent; FISH_SWIM iV field_14591 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_RETRIEVE iW field_15093 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_SPLASH iX field_14660 + f Lnet/minecraft/sounds/SoundEvent; FISHING_BOBBER_THROW iY field_14596 + f Lnet/minecraft/sounds/SoundEvent; FLINTANDSTEEL_USE iZ field_15145 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_AMBIENT ia field_15024 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_DEATH ib field_14773 + f Lnet/minecraft/sounds/SoundEvent; DRAGON_FIREBALL_EXPLODE ic field_14803 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_FLAP id field_14550 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_GROWL ie field_14671 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_HURT if field_15086 + f Lnet/minecraft/sounds/SoundEvent; ENDER_DRAGON_SHOOT ig field_14934 + f Lnet/minecraft/sounds/SoundEvent; ENDER_EYE_DEATH ih field_15210 + f Lnet/minecraft/sounds/SoundEvent; ENDER_EYE_LAUNCH ii field_15155 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_AMBIENT ij field_14696 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_DEATH ik field_14608 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_HURT il field_14797 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_SCREAM im field_14713 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_STARE in field_14967 + f Lnet/minecraft/sounds/SoundEvent; ENDERMAN_TELEPORT io field_14879 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_AMBIENT ip field_15137 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_DEATH iq field_15230 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_HURT ir field_14582 + f Lnet/minecraft/sounds/SoundEvent; ENDERMITE_STEP is field_14678 + f Lnet/minecraft/sounds/SoundEvent; ENDER_PEARL_THROW it field_14757 + f Lnet/minecraft/sounds/SoundEvent; END_GATEWAY_SPAWN iu field_14816 + f Lnet/minecraft/sounds/SoundEvent; END_PORTAL_FRAME_FILL iv field_19197 + f Lnet/minecraft/sounds/SoundEvent; END_PORTAL_SPAWN iw field_14981 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_AMBIENT ix field_14782 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_CAST_SPELL iy field_14858 + f Lnet/minecraft/sounds/SoundEvent; EVOKER_CELEBRATE iz field_19147 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_BREAK jA field_37302 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_FALL jB field_37303 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_HIT jC field_37304 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_PLACE jD field_37305 + f Lnet/minecraft/sounds/SoundEvent; FROGLIGHT_STEP jE field_37306 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWNSTEP jF field_37307 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_BREAK jG field_37308 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_FALL jH field_37309 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_HATCH jI field_37310 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_HIT jJ field_37311 + f Lnet/minecraft/sounds/SoundEvent; FROGSPAWN_PLACE jK field_37312 + f Lnet/minecraft/sounds/SoundEvent; FROG_AMBIENT jL field_37313 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_LOOP j field_23791 + f Lnet/minecraft/sounds/SoundEvent; FROG_DEATH jM field_37314 + f Lnet/minecraft/sounds/SoundEvent; FROG_EAT jN field_37315 + f Lnet/minecraft/sounds/SoundEvent; FROG_HURT jO field_37316 + f Lnet/minecraft/sounds/SoundEvent; FROG_LAY_SPAWN jP field_37317 + f Lnet/minecraft/sounds/SoundEvent; FROG_LONG_JUMP jQ field_37318 + f Lnet/minecraft/sounds/SoundEvent; FROG_STEP jR field_37319 + f Lnet/minecraft/sounds/SoundEvent; FROG_TONGUE jS field_37320 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_BREAK jT field_21877 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_STEP jU field_21878 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_PLACE jV field_21879 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_HIT jW field_21880 + f Lnet/minecraft/sounds/SoundEvent; ROOTS_FALL jX field_21881 + f Lnet/minecraft/sounds/SoundEvent; FURNACE_FIRE_CRACKLE jY field_15006 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_BIG_FALL jZ field_14928 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_BREAK ja field_28581 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_FALL jb field_28582 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_HIT jc field_28583 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_PLACE jd field_28584 + f Lnet/minecraft/sounds/SoundEvent; FLOWERING_AZALEA_STEP je field_28585 + f Lnet/minecraft/sounds/SoundEvent; FOX_AGGRO jf field_18055 + f Lnet/minecraft/sounds/SoundEvent; FOX_AMBIENT jg field_18056 + f Lnet/minecraft/sounds/SoundEvent; FOX_BITE jh field_18058 + f Lnet/minecraft/sounds/SoundEvent; FOX_DEATH ji field_18059 + f Lnet/minecraft/sounds/SoundEvent; FOX_EAT jj field_18060 + f Lnet/minecraft/sounds/SoundEvent; FOX_HURT jk field_18061 + f Lnet/minecraft/sounds/SoundEvent; FOX_SCREECH jl field_18265 + f Lnet/minecraft/sounds/SoundEvent; FOX_SLEEP jm field_18062 + f Lnet/minecraft/sounds/SoundEvent; FOX_SNIFF jn field_18063 + f Lnet/minecraft/sounds/SoundEvent; FOX_SPIT jo field_18054 + f Lnet/minecraft/sounds/SoundEvent; FOX_TELEPORT jp field_24630 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_BREAK jq field_42583 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_STEP jr field_42584 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_PLACE js field_42585 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_HIT jt field_42586 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_SAND_FALL ju field_42587 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_BREAK jv field_43160 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_STEP jw field_43161 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_PLACE jx field_43162 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_HIT jy field_43163 + f Lnet/minecraft/sounds/SoundEvent; SUSPICIOUS_GRAVEL_FALL jz field_43164 + f Lnet/minecraft/sounds/SoundEvent; GLOW_INK_SAC_USE kA field_28392 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_ADD_ITEM kB field_29188 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_BREAK kC field_29189 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_PLACE kD field_29190 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_REMOVE_ITEM kE field_29191 + f Lnet/minecraft/sounds/SoundEvent; GLOW_ITEM_FRAME_ROTATE_ITEM kF field_29192 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_AMBIENT kG field_28393 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_DEATH kH field_28394 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_HURT kI field_28395 + f Lnet/minecraft/sounds/SoundEvent; GLOW_SQUID_SQUIRT kJ field_28396 + f Lnet/minecraft/sounds/SoundEvent; GOAT_AMBIENT kK field_29809 + f Lnet/minecraft/sounds/SoundEvent; GOAT_DEATH kL field_29810 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_BASALT_DELTAS_MOOD k field_23792 + f Lnet/minecraft/sounds/SoundEvent; GOAT_EAT kM field_33437 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HURT kN field_29811 + f Lnet/minecraft/sounds/SoundEvent; GOAT_LONG_JUMP kO field_33438 + f Lnet/minecraft/sounds/SoundEvent; GOAT_MILK kP field_29812 + f Lnet/minecraft/sounds/SoundEvent; GOAT_PREPARE_RAM kQ field_29813 + f Lnet/minecraft/sounds/SoundEvent; GOAT_RAM_IMPACT kR field_33439 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HORN_BREAK kS field_39024 + f Lnet/minecraft/sounds/SoundEvent; GOAT_HORN_PLAY kT field_39025 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_AMBIENT kU field_29814 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_DEATH kV field_29815 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_EAT kW field_33440 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_HURT kX field_29816 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_LONG_JUMP kY field_33434 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_MILK kZ field_29817 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_BURN ka field_14821 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_DEATH kb field_14732 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_DRINK kc field_20613 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_EAT kd field_20614 + f Lnet/minecraft/core/Holder$Reference; GENERIC_EXPLODE ke field_15152 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_EXTINGUISH_FIRE kf field_15222 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_HURT kg field_14940 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SMALL_FALL kh field_15018 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SPLASH ki field_14737 + f Lnet/minecraft/sounds/SoundEvent; GENERIC_SWIM kj field_14818 + f Lnet/minecraft/sounds/SoundEvent; GHAST_AMBIENT kk field_14566 + f Lnet/minecraft/sounds/SoundEvent; GHAST_DEATH kl field_14648 + f Lnet/minecraft/sounds/SoundEvent; GHAST_HURT km field_15054 + f Lnet/minecraft/sounds/SoundEvent; GHAST_SCREAM kn field_14958 + f Lnet/minecraft/sounds/SoundEvent; GHAST_SHOOT ko field_15231 + f Lnet/minecraft/sounds/SoundEvent; GHAST_WARN kp field_15130 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_BREAK kq field_24066 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_FALL kr field_24067 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_HIT ks field_24068 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_PLACE kt field_24069 + f Lnet/minecraft/sounds/SoundEvent; GILDED_BLACKSTONE_STEP ku field_24070 + f Lnet/minecraft/sounds/SoundEvent; GLASS_BREAK kv field_15081 + f Lnet/minecraft/sounds/SoundEvent; GLASS_FALL kw field_14666 + f Lnet/minecraft/sounds/SoundEvent; GLASS_HIT kx field_14583 + f Lnet/minecraft/sounds/SoundEvent; GLASS_PLACE ky field_14843 + f Lnet/minecraft/sounds/SoundEvent; GLASS_STEP kz field_14769 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_HIT lA field_28588 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_PLACE lB field_28589 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_STEP lC field_28590 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_STEP lD field_40083 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_BREAK lE field_40084 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_FALL lF field_40085 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_HIT lG field_40086 + f Lnet/minecraft/sounds/SoundEvent; HANGING_SIGN_PLACE lH field_40087 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_BREAK lI field_49779 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_FALL lJ field_49780 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_HIT lK field_49781 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_PLACE lL field_49782 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_ADDITIONS l field_22451 + f Lnet/minecraft/sounds/SoundEvent; HEAVY_CORE_STEP lM field_49783 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_STEP lN field_40976 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_BREAK lO field_40977 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_FALL lP field_40978 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_HIT lQ field_40979 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HANGING_SIGN_PLACE lR field_40980 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_STEP lS field_40981 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_BREAK lT field_40982 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_FALL lU field_40983 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_HIT lV field_40984 + f Lnet/minecraft/sounds/SoundEvent; BAMBOO_WOOD_HANGING_SIGN_PLACE lW field_40985 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_BREAK lX field_47201 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_STEP lY field_47202 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_PLACE lZ field_47203 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_PREPARE_RAM la field_33435 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_RAM_IMPACT lb field_33436 + f Lnet/minecraft/sounds/SoundEvent; GOAT_SCREAMING_HORN_BREAK lc field_39026 + f Lnet/minecraft/sounds/SoundEvent; GOAT_STEP ld field_29819 + f Lnet/minecraft/sounds/SoundEvent; GRASS_BREAK le field_15037 + f Lnet/minecraft/sounds/SoundEvent; GRASS_FALL lf field_14965 + f Lnet/minecraft/sounds/SoundEvent; GRASS_HIT lg field_14720 + f Lnet/minecraft/sounds/SoundEvent; GRASS_PLACE lh field_14653 + f Lnet/minecraft/sounds/SoundEvent; GRASS_STEP li field_14573 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_BREAK lj field_15211 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_FALL lk field_15156 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_HIT ll field_14697 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_PLACE lm field_14609 + f Lnet/minecraft/sounds/SoundEvent; GRAVEL_STEP ln field_14798 + f Lnet/minecraft/sounds/SoundEvent; GRINDSTONE_USE lo field_16865 + f Lnet/minecraft/sounds/SoundEvent; GROWING_PLANT_CROP lp field_34896 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_AMBIENT lq field_14714 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_AMBIENT_LAND lr field_14968 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_ATTACK ls field_14880 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_DEATH lt field_15138 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_DEATH_LAND lu field_15232 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_FLOP lv field_14584 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_HURT lw field_14679 + f Lnet/minecraft/sounds/SoundEvent; GUARDIAN_HURT_LAND lx field_14758 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_BREAK ly field_28586 + f Lnet/minecraft/sounds/SoundEvent; HANGING_ROOTS_FALL lz field_28587 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_SLIDE mA field_21074 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_STEP mB field_21075 + f Lnet/minecraft/sounds/SoundEvent; HONEYCOMB_WAX_ON mC field_29543 + f Lnet/minecraft/sounds/SoundEvent; HONEY_DRINK mD field_20615 + f I GOAT_HORN_VARIANT_COUNT mE field_39027 + f Lcom/google/common/collect/ImmutableList; GOAT_HORN_SOUND_VARIANTS mF field_39028 + f Lnet/minecraft/sounds/SoundEvent; HORSE_AMBIENT mG field_14947 + f Lnet/minecraft/sounds/SoundEvent; HORSE_ANGRY mH field_15043 + f Lnet/minecraft/sounds/SoundEvent; HORSE_ARMOR mI field_15141 + f Lnet/minecraft/sounds/SoundEvent; HORSE_BREATHE mJ field_14556 + f Lnet/minecraft/sounds/SoundEvent; HORSE_DEATH mK field_15166 + f Lnet/minecraft/sounds/SoundEvent; HORSE_EAT mL field_15099 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_LOOP m field_22452 + f Lnet/minecraft/sounds/SoundEvent; HORSE_GALLOP mM field_14987 + f Lnet/minecraft/sounds/SoundEvent; HORSE_HURT mN field_14923 + f Lnet/minecraft/sounds/SoundEvent; HORSE_JUMP mO field_14831 + f Lnet/minecraft/sounds/SoundEvent; HORSE_LAND mP field_14783 + f Lnet/minecraft/sounds/SoundEvent; HORSE_SADDLE mQ field_14704 + f Lnet/minecraft/sounds/SoundEvent; HORSE_STEP mR field_14613 + f Lnet/minecraft/sounds/SoundEvent; HORSE_STEP_WOOD mS field_15061 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_BIG_FALL mT field_15157 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_DEATH mU field_14899 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_HURT mV field_14994 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SMALL_FALL mW field_14754 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SPLASH mX field_14836 + f Lnet/minecraft/sounds/SoundEvent; HOSTILE_SWIM mY field_14630 + f Lnet/minecraft/sounds/SoundEvent; HUSK_AMBIENT mZ field_14680 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_HIT ma field_47204 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_FALL mb field_47205 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_MOB mc field_47206 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_ABOUT_TO_SPAWN_ITEM md field_50098 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_ITEM me field_50099 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_SPAWN_ITEM_BEGIN mf field_50100 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_DETECT_PLAYER mg field_47207 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_OMINOUS_ACTIVATE mh field_50101 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_AMBIENT mi field_47208 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_AMBIENT_OMINOUS mj field_50102 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_OPEN_SHUTTER mk field_47209 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_CLOSE_SHUTTER ml field_47210 + f Lnet/minecraft/sounds/SoundEvent; TRIAL_SPAWNER_EJECT_ITEM mm field_47211 + f Lnet/minecraft/sounds/SoundEvent; HOE_TILL mn field_14846 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_AMBIENT mo field_22256 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_ANGRY mp field_22257 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_ATTACK mq field_22258 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_CONVERTED_TO_ZOMBIFIED mr field_23671 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_DEATH ms field_22259 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_HURT mt field_22260 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_RETREAT mu field_22261 + f Lnet/minecraft/sounds/SoundEvent; HOGLIN_STEP mv field_22262 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_BREAK mw field_21070 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_FALL mx field_21071 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_HIT my field_21072 + f Lnet/minecraft/sounds/SoundEvent; HONEY_BLOCK_PLACE mz field_21073 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_ROTATE_ITEM nA field_15038 + f Lnet/minecraft/sounds/SoundEvent; ITEM_BREAK nB field_15075 + f Lnet/minecraft/sounds/SoundEvent; ITEM_PICKUP nC field_15197 + f Lnet/minecraft/sounds/SoundEvent; LADDER_BREAK nD field_14546 + f Lnet/minecraft/sounds/SoundEvent; LADDER_FALL nE field_14646 + f Lnet/minecraft/sounds/SoundEvent; LADDER_HIT nF field_14775 + f Lnet/minecraft/sounds/SoundEvent; LADDER_PLACE nG field_14853 + f Lnet/minecraft/sounds/SoundEvent; LADDER_STEP nH field_14948 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_BREAK nI field_17745 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_FALL nJ field_17746 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_HIT nK field_17742 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_PLACE nL field_17743 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_CRIMSON_FOREST_MOOD n field_22453 + f Lnet/minecraft/sounds/SoundEvent; LANTERN_STEP nM field_17744 + f Lnet/minecraft/sounds/SoundEvent; LARGE_AMETHYST_BUD_BREAK nN field_26966 + f Lnet/minecraft/sounds/SoundEvent; LARGE_AMETHYST_BUD_PLACE nO field_26965 + f Lnet/minecraft/sounds/SoundEvent; LAVA_AMBIENT nP field_15021 + f Lnet/minecraft/sounds/SoundEvent; LAVA_EXTINGUISH nQ field_19198 + f Lnet/minecraft/sounds/SoundEvent; LAVA_POP nR field_14576 + f Lnet/minecraft/sounds/SoundEvent; LEASH_KNOT_BREAK nS field_15184 + f Lnet/minecraft/sounds/SoundEvent; LEASH_KNOT_PLACE nT field_15062 + f Lnet/minecraft/sounds/SoundEvent; LEVER_CLICK nU field_14962 + f Lnet/minecraft/sounds/SoundEvent; LIGHTNING_BOLT_IMPACT nV field_14956 + f Lnet/minecraft/sounds/SoundEvent; LIGHTNING_BOLT_THUNDER nW field_14865 + f Lnet/minecraft/sounds/SoundEvent; LINGERING_POTION_THROW nX field_14767 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_AMBIENT nY field_14682 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_ANGRY nZ field_14586 + f Lnet/minecraft/sounds/SoundEvent; HUSK_CONVERTED_TO_ZOMBIE na field_15128 + f Lnet/minecraft/sounds/SoundEvent; HUSK_DEATH nb field_14892 + f Lnet/minecraft/sounds/SoundEvent; HUSK_HURT nc field_15196 + f Lnet/minecraft/sounds/SoundEvent; HUSK_STEP nd field_15046 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_AMBIENT ne field_14644 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_CAST_SPELL nf field_14545 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_DEATH ng field_15153 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_HURT nh field_15223 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_MIRROR_MOVE ni field_14941 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_PREPARE_BLINDNESS nj field_15019 + f Lnet/minecraft/sounds/SoundEvent; ILLUSIONER_PREPARE_MIRROR nk field_14738 + f Lnet/minecraft/sounds/SoundEvent; INK_SAC_USE nl field_28397 + f Lnet/minecraft/sounds/SoundEvent; IRON_DOOR_CLOSE nm field_14819 + f Lnet/minecraft/sounds/SoundEvent; IRON_DOOR_OPEN nn field_14567 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_ATTACK no field_14649 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_DAMAGE np field_21076 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_DEATH nq field_15055 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_HURT nr field_14959 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_REPAIR ns field_21077 + f Lnet/minecraft/sounds/SoundEvent; IRON_GOLEM_STEP nt field_15233 + f Lnet/minecraft/sounds/SoundEvent; IRON_TRAPDOOR_CLOSE nu field_15131 + f Lnet/minecraft/sounds/SoundEvent; IRON_TRAPDOOR_OPEN nv field_15082 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_ADD_ITEM nw field_14667 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_BREAK nx field_14585 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_PLACE ny field_14844 + f Lnet/minecraft/sounds/SoundEvent; ITEM_FRAME_REMOVE_ITEM nz field_14770 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_PLACE oA field_37324 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_STEP oB field_37325 + f Lnet/minecraft/sounds/SoundEvent; MEDIUM_AMETHYST_BUD_BREAK oC field_26967 + f Lnet/minecraft/sounds/SoundEvent; MEDIUM_AMETHYST_BUD_PLACE oD field_26968 + f Lnet/minecraft/sounds/SoundEvent; METAL_BREAK oE field_15044 + f Lnet/minecraft/sounds/SoundEvent; METAL_FALL oF field_15142 + f Lnet/minecraft/sounds/SoundEvent; METAL_HIT oG field_14557 + f Lnet/minecraft/sounds/SoundEvent; METAL_PLACE oH field_15167 + f Lnet/minecraft/sounds/SoundEvent; METAL_PRESSURE_PLATE_CLICK_OFF oI field_15100 + f Lnet/minecraft/sounds/SoundEvent; METAL_PRESSURE_PLATE_CLICK_ON oJ field_14988 + f Lnet/minecraft/sounds/SoundEvent; METAL_STEP oK field_14924 + f Lnet/minecraft/sounds/SoundEvent; MINECART_INSIDE_UNDERWATER oL field_26969 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_ADDITIONS o field_22454 + f Lnet/minecraft/sounds/SoundEvent; MINECART_INSIDE oM field_14832 + f Lnet/minecraft/sounds/SoundEvent; MINECART_RIDING oN field_14784 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_CONVERT oO field_18266 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_EAT oP field_18267 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_MILK oQ field_18268 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_MILK_SUSPICIOUSLY oR field_18269 + f Lnet/minecraft/sounds/SoundEvent; MOOSHROOM_SHEAR oS field_14705 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_BREAK oT field_28591 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_FALL oU field_28592 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_HIT oV field_28593 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_PLACE oW field_28594 + f Lnet/minecraft/sounds/SoundEvent; MOSS_CARPET_STEP oX field_28595 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_BREAK oY field_42588 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_FALL oZ field_42589 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_CHEST oa field_15097 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_DEATH ob field_15189 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_EAT oc field_14884 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_HURT od field_15031 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_SPIT oe field_14789 + f Lnet/minecraft/sounds/SoundEvent; LLAMA_STEP of field_14795 + f Lnet/minecraft/core/Holder; LLAMA_SWAG og field_14554 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_DEATH_SMALL oh field_14889 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_BREAK oi field_23194 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_STEP oj field_23195 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_PLACE ok field_23196 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_HIT ol field_23197 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_FALL om field_23198 + f Lnet/minecraft/sounds/SoundEvent; LODESTONE_COMPASS_LOCK on field_23199 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_AIR oo field_49784 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_GROUND op field_49785 + f Lnet/minecraft/sounds/SoundEvent; MACE_SMASH_GROUND_HEAVY oq field_49924 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_DEATH or field_14662 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_HURT os field_14747 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_HURT_SMALL ot field_15005 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_JUMP ou field_14847 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_SQUISH ov field_14949 + f Lnet/minecraft/sounds/SoundEvent; MAGMA_CUBE_SQUISH_SMALL ow field_14749 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_BREAK ox field_37321 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_FALL oy field_37322 + f Lnet/minecraft/sounds/SoundEvent; MANGROVE_ROOTS_HIT oz field_37323 + f Lnet/minecraft/sounds/SoundEvent; MULE_DEATH pA field_15158 + f Lnet/minecraft/sounds/SoundEvent; MULE_EAT pB field_24632 + f Lnet/minecraft/sounds/SoundEvent; MULE_HURT pC field_14900 + f Lnet/minecraft/sounds/SoundEvent; MULE_JUMP pD field_49180 + f Lnet/minecraft/core/Holder$Reference; MUSIC_CREATIVE pE field_14995 + f Lnet/minecraft/core/Holder$Reference; MUSIC_CREDITS pF field_14755 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_5 pG field_38924 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_11 pH field_14654 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_13 pI field_14592 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_BLOCKS pJ field_14829 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CAT pK field_14744 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CHIRP pL field_15039 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_LOOP p field_22455 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_FAR pM field_14944 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_MALL pN field_15059 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_MELLOHI pO field_15169 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_PIGSTEP pP field_23968 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_STAL pQ field_14578 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_STRAD pR field_14656 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_WAIT pS field_14759 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_WARD pT field_14838 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_OTHERSIDE pU field_35343 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_RELIC pV field_44700 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CREATOR pW field_51524 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_CREATOR_MUSIC_BOX pX field_51525 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DISC_PRECIPICE pY field_51526 + f Lnet/minecraft/core/Holder$Reference; MUSIC_DRAGON pZ field_14837 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_HIT pa field_42590 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_PLACE pb field_42591 + f Lnet/minecraft/sounds/SoundEvent; PINK_PETALS_STEP pc field_42592 + f Lnet/minecraft/sounds/SoundEvent; MOSS_BREAK pd field_28596 + f Lnet/minecraft/sounds/SoundEvent; MOSS_FALL pe field_28597 + f Lnet/minecraft/sounds/SoundEvent; MOSS_HIT pf field_28598 + f Lnet/minecraft/sounds/SoundEvent; MOSS_PLACE pg field_28599 + f Lnet/minecraft/sounds/SoundEvent; MOSS_STEP ph field_28600 + f Lnet/minecraft/sounds/SoundEvent; MUD_BREAK pi field_37329 + f Lnet/minecraft/sounds/SoundEvent; MUD_FALL pj field_37330 + f Lnet/minecraft/sounds/SoundEvent; MUD_HIT pk field_37331 + f Lnet/minecraft/sounds/SoundEvent; MUD_PLACE pl field_37332 + f Lnet/minecraft/sounds/SoundEvent; MUD_STEP pm field_37333 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_BREAK pn field_37334 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_FALL po field_37335 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_HIT pp field_37336 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_PLACE pq field_37337 + f Lnet/minecraft/sounds/SoundEvent; MUD_BRICKS_STEP pr field_37338 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_BREAK ps field_37339 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_FALL pt field_37340 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_HIT pu field_37326 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_PLACE pv field_37327 + f Lnet/minecraft/sounds/SoundEvent; MUDDY_MANGROVE_ROOTS_STEP pw field_37328 + f Lnet/minecraft/sounds/SoundEvent; MULE_AMBIENT px field_14614 + f Lnet/minecraft/sounds/SoundEvent; MULE_ANGRY py field_24631 + f Lnet/minecraft/sounds/SoundEvent; MULE_CHEST pz field_15063 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BAMBOO_JUNGLE qA field_44699 + f Lnet/minecraft/core/Holder$Reference; MUSIC_UNDER_WATER qB field_15198 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_BREAK qC field_21882 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_STEP qD field_21883 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_PLACE qE field_21884 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_HIT qF field_21885 + f Lnet/minecraft/sounds/SoundEvent; NETHER_BRICKS_FALL qG field_21886 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WART_BREAK qH field_17612 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WART_PLANTED qI field_17613 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BREAK qJ field_40097 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FALL qK field_40098 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_HIT qL field_40099 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_NETHER_WASTES_MOOD q field_22456 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PLACE qM field_40100 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_STEP qN field_40101 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_DOOR_CLOSE qO field_40102 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_DOOR_OPEN qP field_40088 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_TRAPDOOR_CLOSE qQ field_40089 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_TRAPDOOR_OPEN qR field_40090 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BUTTON_CLICK_OFF qS field_40091 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_BUTTON_CLICK_ON qT field_40092 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PRESSURE_PLATE_CLICK_OFF qU field_40093 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_PRESSURE_PLATE_CLICK_ON qV field_40094 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FENCE_GATE_CLOSE qW field_40095 + f Lnet/minecraft/sounds/SoundEvent; NETHER_WOOD_FENCE_GATE_OPEN qX field_40096 + f Lnet/minecraft/sounds/SoundEvent; EMPTY qY field_42593 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_BREAK qZ field_37346 + f Lnet/minecraft/core/Holder$Reference; MUSIC_END qa field_14631 + f Lnet/minecraft/core/Holder$Reference; MUSIC_GAME qb field_14681 + f Lnet/minecraft/core/Holder$Reference; MUSIC_MENU qc field_15129 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BASALT_DELTAS qd field_23793 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_CRIMSON_FOREST qe field_23796 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DEEP_DARK qf field_37345 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DRIPSTONE_CAVES qg field_35344 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_GROVE qh field_35345 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_JAGGED_PEAKS qi field_35346 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_LUSH_CAVES qj field_35347 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SWAMP qk field_38925 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FOREST ql field_44693 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_OLD_GROWTH_TAIGA qm field_38927 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_MEADOW qn field_35348 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_CHERRY_GROVE qo field_42594 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_NETHER_WASTES qp field_23794 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FROZEN_PEAKS qq field_35349 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SNOWY_SLOPES qr field_35350 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SOUL_SAND_VALLEY qs field_23795 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_STONY_PEAKS qt field_35351 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_WARPED_FOREST qu field_23797 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_FLOWER_FOREST qv field_44694 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_DESERT qw field_44695 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_BADLANDS qx field_44696 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_JUNGLE qy field_44697 + f Lnet/minecraft/core/Holder$Reference; MUSIC_BIOME_SPARSE_JUNGLE qz field_44698 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_PLACE rA field_21911 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_HIT rB field_21912 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_FALL rC field_21913 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_BREAK rD field_21914 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_STEP rE field_21915 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_PLACE rF field_21916 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_HIT rG field_21917 + f Lnet/minecraft/sounds/SoundEvent; WART_BLOCK_FALL rH field_21918 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_BREAK rI field_21919 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_STEP rJ field_21920 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_PLACE rK field_21921 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_HIT rL field_21922 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_ADDITIONS r field_22457 + f Lnet/minecraft/sounds/SoundEvent; NETHERITE_BLOCK_FALL rM field_21923 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_BREAK rN field_21924 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_STEP rO field_21925 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_PLACE rP field_21926 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_HIT rQ field_21927 + f Lnet/minecraft/sounds/SoundEvent; NETHERRACK_FALL rR field_21928 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BASEDRUM rS field_15047 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BASS rT field_14624 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BELL rU field_14793 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_CHIME rV field_14725 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_FLUTE rW field_14989 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_GUITAR rX field_14903 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_HARP rY field_15114 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_HAT rZ field_15204 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_FALL ra field_37341 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_HIT rb field_37342 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_PLACE rc field_37343 + f Lnet/minecraft/sounds/SoundEvent; PACKED_MUD_STEP rd field_37344 + f Lnet/minecraft/sounds/SoundEvent; STEM_BREAK re field_21887 + f Lnet/minecraft/sounds/SoundEvent; STEM_STEP rf field_21888 + f Lnet/minecraft/sounds/SoundEvent; STEM_PLACE rg field_21889 + f Lnet/minecraft/sounds/SoundEvent; STEM_HIT rh field_21890 + f Lnet/minecraft/sounds/SoundEvent; STEM_FALL ri field_21892 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_BREAK rj field_21893 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_STEP rk field_21894 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_PLACE rl field_21895 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_HIT rm field_21896 + f Lnet/minecraft/sounds/SoundEvent; NYLIUM_FALL rn field_21897 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_BREAK ro field_21898 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_STEP rp field_21899 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_PLACE rq field_21900 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_HIT rr field_21901 + f Lnet/minecraft/sounds/SoundEvent; NETHER_SPROUTS_FALL rs field_21902 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_BREAK rt field_21903 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_STEP ru field_21904 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_PLACE rv field_21905 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_HIT rw field_21907 + f Lnet/minecraft/sounds/SoundEvent; FUNGUS_FALL rx field_21908 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_BREAK ry field_21909 + f Lnet/minecraft/sounds/SoundEvent; WEEPING_VINES_STEP rz field_21910 + f Lnet/minecraft/sounds/SoundEvent; PANDA_CANT_BREED sA field_14936 + f Lnet/minecraft/sounds/SoundEvent; PANDA_AGGRESSIVE_AMBIENT sB field_14801 + f Lnet/minecraft/sounds/SoundEvent; PANDA_WORRIED_AMBIENT sC field_14715 + f Lnet/minecraft/sounds/SoundEvent; PANDA_HURT sD field_14668 + f Lnet/minecraft/sounds/SoundEvent; PANDA_BITE sE field_14552 + f Lnet/minecraft/sounds/SoundEvent; PARROT_AMBIENT sF field_15132 + f Lnet/minecraft/sounds/SoundEvent; PARROT_DEATH sG field_15234 + f Lnet/minecraft/sounds/SoundEvent; PARROT_EAT sH field_14960 + f Lnet/minecraft/sounds/SoundEvent; PARROT_FLY sI field_14925 + f Lnet/minecraft/sounds/SoundEvent; PARROT_HURT sJ field_15077 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BLAZE sK field_15199 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BOGGED sL field_49146 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_LOOP s field_22458 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_BREEZE sM field_47212 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_CREEPER sN field_14547 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_DROWNED sO field_14647 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ELDER_GUARDIAN sP field_14777 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ENDER_DRAGON sQ field_14854 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ENDERMITE sR field_15022 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_EVOKER sS field_15113 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_GHAST sT field_14577 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_GUARDIAN sU field_18813 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_HOGLIN sV field_24634 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_HUSK sW field_15185 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ILLUSIONER sX field_15064 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_MAGMA_CUBE sY field_14963 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PHANTOM sZ field_14957 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_PLING sa field_14622 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_SNARE sb field_14708 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_XYLOPHONE sc field_14776 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IRON_XYLOPHONE sd field_18308 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_COW_BELL se field_18309 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_DIDGERIDOO sf field_18310 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BIT sg field_18311 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_BANJO sh field_18312 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_ZOMBIE si field_41700 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_SKELETON sj field_41701 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_CREEPER sk field_41702 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_ENDER_DRAGON sl field_41703 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_WITHER_SKELETON sm field_41704 + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_IMITATE_PIGLIN sn field_41705 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_HURT so field_16441 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_AMBIENT sp field_16437 + f Lnet/minecraft/sounds/SoundEvent; OCELOT_DEATH sq field_16442 + f Lnet/minecraft/sounds/SoundEvent; OMINOUS_BOTTLE_DISPOSE sr field_50103 + f Lnet/minecraft/sounds/SoundEvent; PAINTING_BREAK ss field_14809 + f Lnet/minecraft/sounds/SoundEvent; PAINTING_PLACE st field_14875 + f Lnet/minecraft/sounds/SoundEvent; PANDA_PRE_SNEEZE su field_14997 + f Lnet/minecraft/sounds/SoundEvent; PANDA_SNEEZE sv field_15076 + f Lnet/minecraft/sounds/SoundEvent; PANDA_AMBIENT sw field_14604 + f Lnet/minecraft/sounds/SoundEvent; PANDA_DEATH sx field_15208 + f Lnet/minecraft/sounds/SoundEvent; PANDA_EAT sy field_15106 + f Lnet/minecraft/sounds/SoundEvent; PANDA_STEP sz field_15035 + f Lnet/minecraft/sounds/SoundEvent; PIG_AMBIENT tA field_14615 + f Lnet/minecraft/sounds/SoundEvent; PIG_DEATH tB field_14689 + f Lnet/minecraft/sounds/SoundEvent; PIG_HURT tC field_14750 + f Lnet/minecraft/sounds/SoundEvent; PIG_SADDLE tD field_14824 + f Lnet/minecraft/sounds/SoundEvent; PIG_STEP tE field_14894 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_ADMIRING_ITEM tF field_22263 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_AMBIENT tG field_22264 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_ANGRY tH field_22265 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_CELEBRATE tI field_22266 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_DEATH tJ field_22267 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_JEALOUS tK field_22268 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_HURT tL field_22269 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_SOUL_SAND_VALLEY_MOOD t field_22459 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_RETREAT tM field_22270 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_STEP tN field_22271 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_CONVERTED_TO_ZOMBIFIED tO field_22272 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_AMBIENT tP field_25728 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_ANGRY tQ field_25729 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_DEATH tR field_25730 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_HURT tS field_25731 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_STEP tT field_25732 + f Lnet/minecraft/sounds/SoundEvent; PIGLIN_BRUTE_CONVERTED_TO_ZOMBIFIED tU field_25733 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_AMBIENT tV field_14976 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_CELEBRATE tW field_19150 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_DEATH tX field_15049 + f Lnet/minecraft/sounds/SoundEvent; PILLAGER_HURT tY field_15159 + f Lnet/minecraft/sounds/SoundEvent; PISTON_CONTRACT tZ field_15228 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PIGLIN ta field_24635 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PIGLIN_BRUTE tb field_25727 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_PILLAGER tc field_18815 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_RAVAGER td field_18816 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SHULKER te field_14768 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SILVERFISH tf field_14683 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SKELETON tg field_14587 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SLIME th field_15098 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_SPIDER ti field_15190 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_STRAY tj field_14885 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_VEX tk field_15032 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_VINDICATOR tl field_14790 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WARDEN tm field_38059 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITCH tn field_14796 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITHER to field_14555 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_WITHER_SKELETON tp field_15073 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOGLIN tq field_24633 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOMBIE tr field_15220 + f Lnet/minecraft/sounds/SoundEvent; PARROT_IMITATE_ZOMBIE_VILLAGER ts field_14676 + f Lnet/minecraft/sounds/SoundEvent; PARROT_STEP tt field_14602 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_AMBIENT tu field_14813 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_BITE tv field_14729 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_DEATH tw field_14974 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_FLAP tx field_14869 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_HURT ty field_15149 + f Lnet/minecraft/sounds/SoundEvent; PHANTOM_SWOOP tz field_15238 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_STEP uA field_15036 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_WARNING uB field_14937 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_BREAK uC field_28983 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_FALL uD field_28984 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_HIT uE field_28985 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_PLACE uF field_28986 + f Lnet/minecraft/sounds/SoundEvent; POLISHED_DEEPSLATE_STEP uG field_28987 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_AMBIENT uH field_14802 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_TRAVEL uI field_14716 + f Lnet/minecraft/sounds/SoundEvent; PORTAL_TRIGGER uJ field_14669 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_BREAK uK field_27848 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_FALL uL field_27849 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_ADDITIONS u field_22460 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_HIT uM field_27850 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_PLACE uN field_27851 + f Lnet/minecraft/sounds/SoundEvent; POWDER_SNOW_STEP uO field_27852 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_AMBIENT uP field_14553 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_BLOW_OUT uQ field_15133 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_BLOW_UP uR field_15235 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_DEATH uS field_14888 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_FLOP uT field_15004 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_HURT uU field_14748 + f Lnet/minecraft/sounds/SoundEvent; PUFFER_FISH_STING uV field_14848 + f Lnet/minecraft/sounds/SoundEvent; PUMPKIN_CARVE uW field_14619 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_AMBIENT uX field_14693 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_ATTACK uY field_15147 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_DEATH uZ field_14872 + f Lnet/minecraft/sounds/SoundEvent; PISTON_EXTEND ua field_15134 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_CRIT ub field_15016 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_KNOCKBACK uc field_14999 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_NODAMAGE ud field_14914 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_STRONG ue field_14840 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_SWEEP uf field_14706 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_ATTACK_WEAK ug field_14625 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BIG_FALL uh field_14794 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BREATH ui field_14726 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_BURP uj field_19149 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_DEATH uk field_14904 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT ul field_15115 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_DROWN um field_15205 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_FREEZE un field_27853 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_ON_FIRE uo field_14623 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_HURT_SWEET_BERRY_BUSH up field_17614 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_LEVELUP uq field_14709 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SMALL_FALL ur field_14778 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SPLASH us field_14810 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SPLASH_HIGH_SPEED ut field_14876 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_SWIM uu field_14998 + f Lnet/minecraft/sounds/SoundEvent; PLAYER_TELEPORT uv field_46945 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_AMBIENT uw field_15078 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_AMBIENT_BABY ux field_14605 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_DEATH uy field_15209 + f Lnet/minecraft/sounds/SoundEvent; POLAR_BEAR_HURT uz field_15107 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_BREAK vA field_28601 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_FALL vB field_28602 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_HIT vC field_28603 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_PLACE vD field_28604 + f Lnet/minecraft/sounds/SoundEvent; ROOTED_DIRT_STEP vE field_28605 + f Lnet/minecraft/sounds/SoundEvent; SALMON_AMBIENT vF field_15033 + f Lnet/minecraft/sounds/SoundEvent; SALMON_DEATH vG field_15123 + f Lnet/minecraft/sounds/SoundEvent; SALMON_FLOP vH field_14563 + f Lnet/minecraft/sounds/SoundEvent; SALMON_HURT vI field_14638 + f Lnet/minecraft/sounds/SoundEvent; SAND_BREAK vJ field_15074 + f Lnet/minecraft/sounds/SoundEvent; SAND_FALL vK field_14943 + f Lnet/minecraft/sounds/SoundEvent; SAND_HIT vL field_15221 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_LOOP v field_22461 + f Lnet/minecraft/sounds/SoundEvent; SAND_PLACE vM field_15144 + f Lnet/minecraft/sounds/SoundEvent; SAND_STEP vN field_14677 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_BREAK vO field_16509 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_FALL vP field_16510 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_HIT vQ field_16506 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_PLACE vR field_16507 + f Lnet/minecraft/sounds/SoundEvent; SCAFFOLDING_STEP vS field_16508 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_SPREAD vT field_37357 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_CHARGE vU field_37358 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_BREAK vV field_37359 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_FALL vW field_37360 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_HIT vX field_37361 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_PLACE vY field_37362 + f Lnet/minecraft/sounds/SoundEvent; SCULK_BLOCK_STEP vZ field_37363 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_HURT va field_15164 + f Lnet/minecraft/sounds/SoundEvent; RABBIT_JUMP vb field_15091 + f Lnet/minecraft/core/Holder$Reference; RAID_HORN vc field_17266 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_AMBIENT vd field_14639 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_ATTACK ve field_15240 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_CELEBRATE vf field_19148 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_DEATH vg field_15146 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_HURT vh field_15007 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_STEP vi field_14929 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_STUNNED vj field_14822 + f Lnet/minecraft/sounds/SoundEvent; RAVAGER_ROAR vk field_14733 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_BREAK vl field_24071 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_FALL vm field_24072 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_HIT vn field_24073 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_PLACE vo field_24074 + f Lnet/minecraft/sounds/SoundEvent; NETHER_GOLD_ORE_STEP vp field_24075 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_BREAK vq field_21937 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_FALL vr field_21938 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_HIT vs field_21939 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_PLACE vt field_21940 + f Lnet/minecraft/sounds/SoundEvent; NETHER_ORE_STEP vu field_21941 + f Lnet/minecraft/sounds/SoundEvent; REDSTONE_TORCH_BURNOUT vv field_19199 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_AMBIENT vw field_23115 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_CHARGE vx field_23116 + f Lnet/minecraft/core/Holder$Reference; RESPAWN_ANCHOR_DEPLETE vy field_23117 + f Lnet/minecraft/sounds/SoundEvent; RESPAWN_ANCHOR_SET_SPAWN vz field_23118 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_HURT wA field_14730 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_SHEAR wB field_14975 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_STEP wC field_14870 + f Lnet/minecraft/sounds/SoundEvent; SHIELD_BLOCK wD field_15150 + f Lnet/minecraft/sounds/SoundEvent; SHIELD_BREAK wE field_15239 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_BREAK wF field_21931 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_STEP wG field_21932 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_PLACE wH field_21933 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_HIT wI field_21934 + f Lnet/minecraft/sounds/SoundEvent; SHROOMLIGHT_FALL wJ field_21935 + f Lnet/minecraft/sounds/SoundEvent; SHOVEL_FLATTEN wK field_14616 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_AMBIENT wL field_14690 + f Lnet/minecraft/core/Holder$Reference; AMBIENT_WARPED_FOREST_MOOD w field_22462 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BOX_CLOSE wM field_14751 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BOX_OPEN wN field_14825 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BULLET_HIT wO field_14895 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_BULLET_HURT wP field_14977 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_CLOSE wQ field_15050 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_DEATH wR field_15160 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_HURT wS field_15229 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_HURT_CLOSED wT field_15135 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_OPEN wU field_15017 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_SHOOT wV field_15000 + f Lnet/minecraft/sounds/SoundEvent; SHULKER_TELEPORT wW field_14915 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_AMBIENT wX field_14786 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_DEATH wY field_14673 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_HURT wZ field_14593 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_BLOOM wa field_37364 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_BREAK wb field_37365 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_FALL wc field_37366 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_HIT wd field_37367 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_PLACE we field_37368 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CATALYST_STEP wf field_37369 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CLICKING wg field_28081 + f Lnet/minecraft/sounds/SoundEvent; SCULK_CLICKING_STOP wh field_28082 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_BREAK wi field_28083 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_FALL wj field_28084 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_HIT wk field_28085 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_PLACE wl field_28086 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SENSOR_STEP wm field_28087 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_BREAK wn field_37347 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_FALL wo field_37348 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_HIT wp field_37349 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_PLACE wq field_37350 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_SHRIEK wr field_38060 + f Lnet/minecraft/sounds/SoundEvent; SCULK_SHRIEKER_STEP ws field_37351 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_BREAK wt field_37352 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_FALL wu field_37353 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_HIT wv field_37354 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_PLACE ww field_37355 + f Lnet/minecraft/sounds/SoundEvent; SCULK_VEIN_STEP wx field_37356 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_AMBIENT wy field_14603 + f Lnet/minecraft/sounds/SoundEvent; SHEEP_DEATH wz field_14814 + f Lnet/minecraft/sounds/SoundEvent; SMALL_AMETHYST_BUD_PLACE xA field_26971 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_BREAK xB field_28612 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_FALL xC field_28613 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_HIT xD field_28614 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_PLACE xE field_28615 + f Lnet/minecraft/sounds/SoundEvent; SMALL_DRIPLEAF_STEP xF field_28616 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_BREAK xG field_21949 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_STEP xH field_21950 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_PLACE xI field_21951 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_HIT xJ field_21942 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SAND_FALL xK field_21943 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_BREAK xL field_21944 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_ENTER x field_14756 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_STEP xM field_21945 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_PLACE xN field_21946 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_HIT xO field_21947 + f Lnet/minecraft/sounds/SoundEvent; SOUL_SOIL_FALL xP field_21948 + f Lnet/minecraft/core/Holder$Reference; SOUL_ESCAPE xQ field_23060 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_BREAK xR field_28607 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_FALL xS field_28608 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_HIT xT field_28609 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_PLACE xU field_28610 + f Lnet/minecraft/sounds/SoundEvent; SPORE_BLOSSOM_STEP xV field_28611 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_AMBIENT xW field_23200 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_HAPPY xX field_23201 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_RETREAT xY field_23202 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_DEATH xZ field_23203 + f Lnet/minecraft/sounds/SoundEvent; SILVERFISH_STEP xa field_15084 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_AMBIENT xb field_15200 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_CONVERTED_TO_STRAY xc field_28606 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_DEATH xd field_14877 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_AMBIENT xe field_14984 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_DEATH xf field_14721 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_HURT xg field_14855 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_SWIM xh field_14617 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_AMBIENT_WATER xi field_14686 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_GALLOP_WATER xj field_15108 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_JUMP_WATER xk field_14901 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HORSE_STEP_WATER xl field_15182 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_HURT xm field_15069 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_SHOOT xn field_14633 + f Lnet/minecraft/sounds/SoundEvent; SKELETON_STEP xo field_14548 + f Lnet/minecraft/sounds/SoundEvent; SLIME_ATTACK xp field_14863 + f Lnet/minecraft/sounds/SoundEvent; SLIME_DEATH xq field_14763 + f Lnet/minecraft/sounds/SoundEvent; SLIME_HURT xr field_15014 + f Lnet/minecraft/sounds/SoundEvent; SLIME_JUMP xs field_14919 + f Lnet/minecraft/sounds/SoundEvent; SLIME_SQUISH xt field_15095 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_BREAK xu field_15194 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_FALL xv field_14560 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_HIT xw field_14640 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_PLACE xx field_14788 + f Lnet/minecraft/sounds/SoundEvent; SLIME_BLOCK_STEP xy field_15180 + f Lnet/minecraft/sounds/SoundEvent; SMALL_AMETHYST_BUD_BREAK xz field_26970 + f Lnet/minecraft/sounds/SoundEvent; SNOWBALL_THROW yA field_14873 + f Lnet/minecraft/sounds/SoundEvent; SNOW_BREAK yB field_15165 + f Lnet/minecraft/sounds/SoundEvent; SNOW_FALL yC field_15092 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_AMBIENT yD field_14655 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_DEATH yE field_14594 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_HURT yF field_14830 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_SHOOT yG field_14745 + f Lnet/minecraft/sounds/SoundEvent; SNOW_GOLEM_SHEAR yH field_22273 + f Lnet/minecraft/sounds/SoundEvent; SNOW_HIT yI field_15040 + f Lnet/minecraft/sounds/SoundEvent; SNOW_PLACE yJ field_14945 + f Lnet/minecraft/sounds/SoundEvent; SNOW_STEP yK field_15060 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_AMBIENT yL field_15170 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_EXIT y field_14828 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_DEATH yM field_14579 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_HURT yN field_14657 + f Lnet/minecraft/sounds/SoundEvent; SPIDER_STEP yO field_14760 + f Lnet/minecraft/sounds/SoundEvent; SPLASH_POTION_BREAK yP field_14839 + f Lnet/minecraft/sounds/SoundEvent; SPLASH_POTION_THROW yQ field_14910 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_BREAK yR field_45962 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_FALL yS field_45963 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_HIT yT field_45964 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_PLACE yU field_45965 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_STEP yV field_45966 + f Lnet/minecraft/sounds/SoundEvent; SPONGE_ABSORB yW field_45062 + f Lnet/minecraft/sounds/SoundEvent; SPYGLASS_USE yX field_26972 + f Lnet/minecraft/sounds/SoundEvent; SPYGLASS_STOP_USING yY field_26973 + f Lnet/minecraft/sounds/SoundEvent; SQUID_AMBIENT yZ field_15034 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_HURT ya field_23204 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_STEP yb field_23205 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_STEP_LAVA yc field_23206 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_EAT yd field_23207 + f Lnet/minecraft/sounds/SoundEvent; STRIDER_SADDLE ye field_23798 + f Lnet/minecraft/sounds/SoundEvent; SLIME_DEATH_SMALL yf field_14849 + f Lnet/minecraft/sounds/SoundEvent; SLIME_HURT_SMALL yg field_14620 + f Lnet/minecraft/sounds/SoundEvent; SLIME_JUMP_SMALL yh field_14694 + f Lnet/minecraft/sounds/SoundEvent; SLIME_SQUISH_SMALL yi field_15148 + f Lnet/minecraft/sounds/SoundEvent; SMITHING_TABLE_USE yj field_22463 + f Lnet/minecraft/sounds/SoundEvent; SMOKER_SMOKE yk field_17618 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_STEP yl field_42595 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EAT ym field_42596 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_IDLE yn field_42597 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_HURT yo field_42598 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DEATH yp field_42599 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DROP_SEED yq field_42600 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SCENTING yr field_42601 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SNIFFING ys field_42602 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_SEARCHING yt field_42603 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DIGGING yu field_42604 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_DIGGING_STOP yv field_42605 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_HAPPY yw field_42606 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_PLOP yx field_44588 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_CRACK yy field_43165 + f Lnet/minecraft/sounds/SoundEvent; SNIFFER_EGG_HATCH yz field_43166 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_HIT zA field_15213 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_HIT_GROUND zB field_15104 + f Lnet/minecraft/sounds/SoundEvent; TRIDENT_RETURN zC field_14698 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_1 zD field_14606 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_2 zE field_14806 + f Lnet/minecraft/core/Holder; TRIDENT_RIPTIDE_3 zF field_14717 + f Lnet/minecraft/core/Holder; TRIDENT_THROW zG field_15001 + f Lnet/minecraft/core/Holder; TRIDENT_THUNDER zH field_14896 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_ATTACH zI field_14859 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_CLICK_OFF zJ field_14787 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_CLICK_ON zK field_14674 + f Lnet/minecraft/sounds/SoundEvent; TRIPWIRE_DETACH zL field_14595 + f Lnet/minecraft/sounds/SoundEvent; AMBIENT_UNDERWATER_LOOP z field_14951 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_AMBIENT zM field_15085 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_DEATH zN field_15201 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_FLOP zO field_14878 + f Lnet/minecraft/sounds/SoundEvent; TROPICAL_FISH_HURT zP field_14985 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BREAK zQ field_26974 + f Lnet/minecraft/sounds/SoundEvent; TUFF_STEP zR field_26975 + f Lnet/minecraft/sounds/SoundEvent; TUFF_PLACE zS field_26976 + f Lnet/minecraft/sounds/SoundEvent; TUFF_HIT zT field_26977 + f Lnet/minecraft/sounds/SoundEvent; TUFF_FALL zU field_26978 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_BREAK zV field_46946 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_FALL zW field_46947 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_HIT zX field_46948 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_PLACE zY field_46949 + f Lnet/minecraft/sounds/SoundEvent; TUFF_BRICKS_STEP zZ field_46950 + f Lnet/minecraft/sounds/SoundEvent; SQUID_DEATH za field_15124 + f Lnet/minecraft/sounds/SoundEvent; SQUID_HURT zb field_15212 + f Lnet/minecraft/sounds/SoundEvent; SQUID_SQUIRT zc field_15121 + f Lnet/minecraft/sounds/SoundEvent; STONE_BREAK zd field_15026 + f Lnet/minecraft/sounds/SoundEvent; STONE_BUTTON_CLICK_OFF ze field_14954 + f Lnet/minecraft/sounds/SoundEvent; STONE_BUTTON_CLICK_ON zf field_14791 + f Lnet/minecraft/sounds/SoundEvent; STONE_FALL zg field_14723 + f Lnet/minecraft/sounds/SoundEvent; STONE_HIT zh field_14658 + f Lnet/minecraft/sounds/SoundEvent; STONE_PLACE zi field_14574 + f Lnet/minecraft/sounds/SoundEvent; STONE_PRESSURE_PLATE_CLICK_OFF zj field_15116 + f Lnet/minecraft/sounds/SoundEvent; STONE_PRESSURE_PLATE_CLICK_ON zk field_15217 + f Lnet/minecraft/sounds/SoundEvent; STONE_STEP zl field_14921 + f Lnet/minecraft/sounds/SoundEvent; STRAY_AMBIENT zm field_15041 + f Lnet/minecraft/sounds/SoundEvent; STRAY_DEATH zn field_14771 + f Lnet/minecraft/sounds/SoundEvent; STRAY_HURT zo field_14805 + f Lnet/minecraft/sounds/SoundEvent; STRAY_STEP zp field_14540 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_BREAK zq field_17615 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_PLACE zr field_17616 + f Lnet/minecraft/sounds/SoundEvent; SWEET_BERRY_BUSH_PICK_BERRIES zs field_17617 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_DEATH zt field_37370 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_FLOP zu field_37372 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_GROW_UP zv field_37373 + f Lnet/minecraft/sounds/SoundEvent; TADPOLE_HURT zw field_37374 + f Lnet/minecraft/sounds/SoundEvent; THORNS_HIT zx field_14663 + f Lnet/minecraft/sounds/SoundEvent; TNT_PRIMED zy field_15079 + f Lnet/minecraft/sounds/SoundEvent; TOTEM_USE zz field_14931 + m ()Lcom/google/common/collect/ImmutableList; registerGoatHornSoundVariants a method_43516 + m (I)Lnet/minecraft/core/Holder$Reference; method_43517 a method_43517 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; register a method_47962 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/sounds/SoundEvent; register a method_47963 + p 0 name + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;F)Lnet/minecraft/core/Holder; register a method_43045 + p 0 name + p 1 location + p 2 range + m (Ljava/lang/String;)Lnet/minecraft/sounds/SoundEvent; register a method_14838 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47964 + p 0 name + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47965 + p 0 name + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; registerForHolder b method_47966 + p 0 name + m ()V + m ()V +c net/minecraft/sounds/SoundSource avq net/minecraft/class_3419 + f Lnet/minecraft/sounds/SoundSource; MASTER a field_15250 + f Lnet/minecraft/sounds/SoundSource; MUSIC b field_15253 + f Lnet/minecraft/sounds/SoundSource; RECORDS c field_15247 + f Lnet/minecraft/sounds/SoundSource; WEATHER d field_15252 + f Lnet/minecraft/sounds/SoundSource; BLOCKS e field_15245 + f Lnet/minecraft/sounds/SoundSource; HOSTILE f field_15251 + f Lnet/minecraft/sounds/SoundSource; NEUTRAL g field_15254 + f Lnet/minecraft/sounds/SoundSource; PLAYERS h field_15248 + f Lnet/minecraft/sounds/SoundSource; AMBIENT i field_15256 + f Lnet/minecraft/sounds/SoundSource; VOICE j field_15246 + f Ljava/lang/String; name k field_15249 + f [Lnet/minecraft/sounds/SoundSource; $VALUES l field_15255 + m ()Ljava/lang/String; getName a method_14840 + m ()[Lnet/minecraft/sounds/SoundSource; $values b method_36586 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/sounds/package-info avr net/minecraft/class_5992 +c net/minecraft/stats/RecipeBook avs net/minecraft/class_3439 + f Ljava/util/Set; known a field_15300 + f Ljava/util/Set; highlight b field_15295 + f Lnet/minecraft/stats/RecipeBookSettings; bookSettings c field_25734 + m ()Lnet/minecraft/stats/RecipeBookSettings; getBookSettings a method_30173 + m (Lnet/minecraft/resources/ResourceLocation;)V add a method_14881 + p 1 recipeId + m (Lnet/minecraft/stats/RecipeBook;)V copyOverData a method_14875 + p 1 other + m (Lnet/minecraft/stats/RecipeBookSettings;)V setBookSettings a method_30174 + p 1 settings + m (Lnet/minecraft/world/inventory/RecipeBookMenu;)Z isFiltering a method_14880 + p 1 bookMenu + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isOpen a method_14887 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setOpen a method_14884 + p 1 bookType + p 2 open + m (Lnet/minecraft/world/inventory/RecipeBookType;ZZ)V setBookSetting a method_30175 + p 1 bookType + p 2 open + p 3 filtering + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V add a method_14876 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)Z contains b method_22845 + p 1 recipeId + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isFiltering b method_30176 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setFiltering b method_30177 + p 1 bookType + p 2 filtering + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z contains b method_14878 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)V remove c method_14879 + p 1 recipeId + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V remove c method_14893 + p 1 recipe + m (Lnet/minecraft/resources/ResourceLocation;)V addHighlight d method_14877 + p 1 recipeId + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z willHighlight d method_14883 + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V removeHighlight e method_14886 + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V addHighlight f method_14885 + p 1 recipe + m ()V +c net/minecraft/stats/RecipeBookSettings avt net/minecraft/class_5411 + f Ljava/util/Map; TAG_FIELDS a field_25735 + f Ljava/util/Map; states b field_25736 + m ()Lnet/minecraft/stats/RecipeBookSettings; copy a method_30178 + m (Lnet/minecraft/stats/RecipeBookSettings;)V replaceFrom a method_30179 + p 1 other + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isOpen a method_30180 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setOpen a method_30181 + p 1 bookType + p 2 open + m (Ljava/util/EnumMap;)V method_30182 a method_30182 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/stats/RecipeBookSettings; read a method_30183 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/inventory/RecipeBookType;Lcom/mojang/datafixers/util/Pair;)V method_30184 a method_30184 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/Map;Lnet/minecraft/world/inventory/RecipeBookType;Lcom/mojang/datafixers/util/Pair;)V method_30185 a method_30185 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/stats/RecipeBookSettings; read a method_30186 + p 0 buffer + m (Lnet/minecraft/world/inventory/RecipeBookType;)Z isFiltering b method_30187 + p 1 bookType + m (Lnet/minecraft/world/inventory/RecipeBookType;Z)V setFiltering b method_30188 + p 1 bookType + p 2 filtering + m (Lnet/minecraft/nbt/CompoundTag;)V write b method_30189 + p 1 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_30190 + p 1 buffer + m (Ljava/util/Map;)V + p 1 states + m ()V + m ()V +c net/minecraft/stats/RecipeBookSettings$TypeSettings avt$a net/minecraft/class_5411$class_5412 + f Z open a field_25737 + f Z filtering b field_25738 + m ()Lnet/minecraft/stats/RecipeBookSettings$TypeSettings; copy a method_30191 + m (ZZ)V + p 1 open + p 2 filtering +c net/minecraft/stats/ServerRecipeBook avu net/minecraft/class_3441 + f Ljava/lang/String; RECIPE_BOOK_TAG c field_29820 + f Lorg/slf4j/Logger; LOGGER d field_15303 + m (Lnet/minecraft/network/protocol/game/ClientboundRecipePacket$State;Lnet/minecraft/server/level/ServerPlayer;Ljava/util/List;)V sendRecipes a method_14899 + p 1 state + p 2 player + p 3 recipes + m (Lnet/minecraft/server/level/ServerPlayer;)V sendInitialRecipeBook a method_14904 + p 1 player + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerPlayer;)I addRecipes a method_14903 + p 1 recipes + p 2 player + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/item/crafting/RecipeManager;)V fromNbt a method_14901 + p 1 tag + p 2 recipeManager + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Consumer;Lnet/minecraft/world/item/crafting/RecipeManager;)V loadRecipes a method_20732 + p 1 tags + p 2 recipeConsumer + p 3 recipeManager + m ()Lnet/minecraft/nbt/CompoundTag; toNbt b method_14902 + m (Ljava/util/Collection;Lnet/minecraft/server/level/ServerPlayer;)I removeRecipes b method_14900 + p 1 recipes + p 2 player + m ()V + m ()V +c net/minecraft/stats/ServerStatsCounter avv net/minecraft/class_3442 + c Server-side implementation of {@link net.minecraft.stats.StatsCounter}; handles counting, serialising, and de-serialising statistics, as well as sending them to connected clients via the {@linkplain net.minecraft.network.protocol.game.ClientboundAwardStatsPacket award stats packet}. + f Lorg/slf4j/Logger; LOGGER b field_15309 + f Lnet/minecraft/server/MinecraftServer; server c field_15308 + f Ljava/io/File; file d field_15305 + f Ljava/util/Set; dirty e field_15307 + m ()V save a method_14912 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendStats a method_14910 + p 1 player + m (Lnet/minecraft/stats/StatType;)Lcom/google/gson/JsonObject; method_14913 a method_14913 + m (Lnet/minecraft/stats/StatType;Ljava/lang/String;)Ljava/util/Optional; getStat a method_14905 + p 1 type + p 2 location + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/nbt/CompoundTag; fromJson a method_14908 + p 0 json + m (Lcom/mojang/datafixers/DataFixer;Ljava/lang/String;)V parseLocal a method_14906 + p 1 fixerUpper + p 2 json + m (Ljava/lang/String;)V method_17992 a method_17992 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/stats/Stat;)V method_17990 a method_17990 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/stats/StatType;)V method_17991 a method_17991 + m ()Ljava/lang/String; toJson b method_14911 + m (Lnet/minecraft/stats/Stat;)Lnet/minecraft/resources/ResourceLocation; getKey b method_14907 + p 0 stat + m (Ljava/lang/String;)V method_17993 b method_17993 + m ()V markAllDirty c method_14914 + m ()Ljava/util/Set; getDirty d method_14909 + m (Lnet/minecraft/server/MinecraftServer;Ljava/io/File;)V + p 1 server + p 2 file + m ()V +c net/minecraft/stats/Stat avw net/minecraft/class_3445 + c An immutable statistic to be counted for a particular entry in the {@linkplain #type}'s registry. This is used as a key in a {@link net.minecraft.stats.StatsCounter} for a corresponding count.\n

\nBy default, the statistic's {@linkplain #getName() name} is formatted {@code .:.}, as created by {@link #buildName(StatType, Object)}.\n\n@param the type of the registry entry for this statistic\n@see net.minecraft.stats.StatType\n@see net.minecraft.stats.Stats + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48280 + f Lnet/minecraft/stats/StatFormatter; formatter o field_15319 + f Ljava/lang/Object; value p field_15320 + c The registry entry for this statistic. + f Lnet/minecraft/stats/StatType; type q field_15321 + c The parent statistic type. + m ()Lnet/minecraft/stats/StatType; getType a method_14949 + m (I)Ljava/lang/String; format a method_14953 + p 1 value + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; locationToKey a method_14952 + c @return the specified {@code location} as a string with {@code .} as the separator character + p 0 location + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)Ljava/lang/String; buildName a method_14950 + c @return the name for the specified {@code type} and {@code value} in the form {@code .:.} + p 0 type + p 1 value + m ()Ljava/lang/Object; getValue b method_14951 + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;Lnet/minecraft/stats/StatFormatter;)V + p 1 type + p 2 value + p 3 formatter + m ()V +c net/minecraft/stats/StatFormatter avx net/minecraft/class_3446 + c A formatter for a {@linkplain Stat statistic}'s corresponding count. + f Ljava/text/DecimalFormat; DECIMAL_FORMAT a field_16976 + f Lnet/minecraft/stats/StatFormatter; DEFAULT b field_16975 + f Lnet/minecraft/stats/StatFormatter; DIVIDE_BY_TEN c field_16978 + f Lnet/minecraft/stats/StatFormatter; DISTANCE d field_16977 + f Lnet/minecraft/stats/StatFormatter; TIME e field_16979 + m (I)Ljava/lang/String; method_16819 a method_16819 + m (Ljava/text/DecimalFormat;)V method_16817 a method_16817 + m (I)Ljava/lang/String; method_16816 b method_16816 + m (I)Ljava/lang/String; method_16818 c method_16818 + m ()V +c net/minecraft/stats/StatType avy net/minecraft/class_3448 + c Holds a map of {@linkplain net.minecraft.stats.Stat statistics} with type {@code T} for a corresponding {@link #registry}.\n

\nA single type usually defines a particular thing to be counted, such as {@linkplain net.minecraft.stats.Stats#ITEM_USED the number of items used} or {@link net.minecraft.stats.Stats#BLOCK_MINED the number of blocks mined}. However, there is also a {@link net.minecraft.stats.Stats#CUSTOM custom type} which uses entries from the {@linkplain Registry#CUSTOM_STAT custom stat registry}. This is keyed by a {@link net.minecraft.resources.ResourceLocation} and can be used to count any statistic that doesn't require an associated {@link net.minecraft.core.Registry} entry.\n\n@param the type of the associated registry's entry values\n@see net.minecraft.stats.Stat\n@see net.minecraft.stats.Stats\n@see net.minecraft.core.Registry#STAT_TYPE\n@see net.minecraft.core.Registry#CUSTOM_STAT + f Lnet/minecraft/core/Registry; registry a field_15323 + f Ljava/util/Map; map b field_15324 + c A map of registry entries to their corresponding {@link Stat statistic}. Lazily populated by {@link #get(Object, StatFormatter)}. + f Lnet/minecraft/network/chat/Component; displayName c field_26382 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec d field_48281 + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_56054 + m (Lnet/minecraft/stats/StatFormatter;Ljava/lang/Object;)Lnet/minecraft/stats/Stat; method_14961 a method_14961 + m (Ljava/lang/Object;)Z contains a method_14958 + p 1 value + m (Ljava/lang/Object;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/stats/Stat; get a method_14955 + p 1 value + p 2 formatter + m ()Lnet/minecraft/core/Registry; getRegistry b method_14959 + m (Ljava/lang/Object;)Lnet/minecraft/stats/Stat; get b method_14956 + p 1 value + m ()Lnet/minecraft/network/chat/Component; getDisplayName c method_30739 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/network/chat/Component;)V + p 1 registry + p 2 displayName +c net/minecraft/stats/Stats avz net/minecraft/class_3468 + f Lnet/minecraft/resources/ResourceLocation; HORSE_ONE_CM A field_15396 + f Lnet/minecraft/resources/ResourceLocation; AVIATE_ONE_CM B field_15374 + f Lnet/minecraft/resources/ResourceLocation; SWIM_ONE_CM C field_15423 + f Lnet/minecraft/resources/ResourceLocation; STRIDER_ONE_CM D field_24458 + f Lnet/minecraft/resources/ResourceLocation; JUMP E field_15428 + f Lnet/minecraft/resources/ResourceLocation; DROP F field_15406 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT G field_15399 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT_ABSORBED H field_15408 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_DEALT_RESISTED I field_15397 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_TAKEN J field_15388 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_BLOCKED_BY_SHIELD K field_15380 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_ABSORBED L field_15365 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE_RESISTED M field_15425 + f Lnet/minecraft/resources/ResourceLocation; DEATHS N field_15421 + f Lnet/minecraft/resources/ResourceLocation; MOB_KILLS O field_15414 + f Lnet/minecraft/resources/ResourceLocation; ANIMALS_BRED P field_15410 + f Lnet/minecraft/resources/ResourceLocation; PLAYER_KILLS Q field_15404 + f Lnet/minecraft/resources/ResourceLocation; FISH_CAUGHT R field_15391 + f Lnet/minecraft/resources/ResourceLocation; TALKED_TO_VILLAGER S field_15384 + f Lnet/minecraft/resources/ResourceLocation; TRADED_WITH_VILLAGER T field_15378 + f Lnet/minecraft/resources/ResourceLocation; EAT_CAKE_SLICE U field_15369 + f Lnet/minecraft/resources/ResourceLocation; FILL_CAULDRON V field_15430 + f Lnet/minecraft/resources/ResourceLocation; USE_CAULDRON W field_15373 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_ARMOR X field_15382 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_BANNER Y field_15390 + f Lnet/minecraft/resources/ResourceLocation; CLEAN_SHULKER_BOX Z field_15398 + f Lnet/minecraft/resources/ResourceLocation; RAID_TRIGGER aA field_19256 + f Lnet/minecraft/resources/ResourceLocation; RAID_WIN aB field_19257 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_ANVIL aC field_21778 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_GRINDSTONE aD field_21779 + f Lnet/minecraft/resources/ResourceLocation; TARGET_HIT aE field_22413 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_SMITHING_TABLE aF field_22464 + f Lnet/minecraft/stats/StatType; BLOCK_MINED a field_15427 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BREWINGSTAND aa field_15407 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BEACON ab field_15416 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_DROPPER ac field_15367 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_HOPPER ad field_15366 + f Lnet/minecraft/resources/ResourceLocation; INSPECT_DISPENSER ae field_15371 + f Lnet/minecraft/resources/ResourceLocation; PLAY_NOTEBLOCK af field_15385 + f Lnet/minecraft/resources/ResourceLocation; TUNE_NOTEBLOCK ag field_15393 + f Lnet/minecraft/resources/ResourceLocation; POT_FLOWER ah field_15412 + f Lnet/minecraft/resources/ResourceLocation; TRIGGER_TRAPPED_CHEST ai field_15402 + f Lnet/minecraft/resources/ResourceLocation; OPEN_ENDERCHEST aj field_15424 + f Lnet/minecraft/resources/ResourceLocation; ENCHANT_ITEM ak field_15420 + f Lnet/minecraft/resources/ResourceLocation; PLAY_RECORD al field_15375 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_FURNACE am field_15379 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CRAFTING_TABLE an field_15368 + f Lnet/minecraft/resources/ResourceLocation; OPEN_CHEST ao field_15395 + f Lnet/minecraft/resources/ResourceLocation; SLEEP_IN_BED ap field_15381 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SHULKER_BOX aq field_15418 + f Lnet/minecraft/resources/ResourceLocation; OPEN_BARREL ar field_17271 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_BLAST_FURNACE as field_17272 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_SMOKER at field_17273 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_LECTERN au field_17485 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CAMPFIRE av field_17486 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_CARTOGRAPHY_TABLE aw field_19252 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_LOOM ax field_19253 + f Lnet/minecraft/resources/ResourceLocation; INTERACT_WITH_STONECUTTER ay field_19254 + f Lnet/minecraft/resources/ResourceLocation; BELL_RING az field_19255 + f Lnet/minecraft/stats/StatType; ITEM_CRAFTED b field_15370 + f Lnet/minecraft/stats/StatType; ITEM_USED c field_15372 + f Lnet/minecraft/stats/StatType; ITEM_BROKEN d field_15383 + f Lnet/minecraft/stats/StatType; ITEM_PICKED_UP e field_15392 + f Lnet/minecraft/stats/StatType; ITEM_DROPPED f field_15405 + f Lnet/minecraft/stats/StatType; ENTITY_KILLED g field_15403 + f Lnet/minecraft/stats/StatType; ENTITY_KILLED_BY h field_15411 + f Lnet/minecraft/stats/StatType; CUSTOM i field_15419 + f Lnet/minecraft/resources/ResourceLocation; LEAVE_GAME j field_15389 + f Lnet/minecraft/resources/ResourceLocation; PLAY_TIME k field_15417 + f Lnet/minecraft/resources/ResourceLocation; TOTAL_WORLD_TIME l field_33558 + f Lnet/minecraft/resources/ResourceLocation; TIME_SINCE_DEATH m field_15400 + f Lnet/minecraft/resources/ResourceLocation; TIME_SINCE_REST n field_15429 + f Lnet/minecraft/resources/ResourceLocation; CROUCH_TIME o field_15422 + f Lnet/minecraft/resources/ResourceLocation; WALK_ONE_CM p field_15377 + f Lnet/minecraft/resources/ResourceLocation; CROUCH_ONE_CM q field_15376 + f Lnet/minecraft/resources/ResourceLocation; SPRINT_ONE_CM r field_15364 + f Lnet/minecraft/resources/ResourceLocation; WALK_ON_WATER_ONE_CM s field_15394 + f Lnet/minecraft/resources/ResourceLocation; FALL_ONE_CM t field_15386 + f Lnet/minecraft/resources/ResourceLocation; CLIMB_ONE_CM u field_15413 + f Lnet/minecraft/resources/ResourceLocation; FLY_ONE_CM v field_15426 + f Lnet/minecraft/resources/ResourceLocation; WALK_UNDER_WATER_ONE_CM w field_15401 + f Lnet/minecraft/resources/ResourceLocation; MINECART_ONE_CM x field_15409 + f Lnet/minecraft/resources/ResourceLocation; BOAT_ONE_CM y field_15415 + f Lnet/minecraft/resources/ResourceLocation; PIG_ONE_CM z field_15387 + m (Ljava/lang/String;Lnet/minecraft/stats/StatFormatter;)Lnet/minecraft/resources/ResourceLocation; makeCustomStat a method_15021 + p 0 key + p 1 formatter + m (Ljava/lang/String;Lnet/minecraft/core/Registry;)Lnet/minecraft/stats/StatType; makeRegistryStatType a method_15020 + p 0 key + p 1 registry + m ()V + m ()V +c net/minecraft/stats/StatsCounter awa net/minecraft/class_3469 + c Manages counting a set of {@link net.minecraft.stats.Stat} objects, stored by a map of statistics to their count.\n

\nThis base {@code StatsCounter} is only used client-side for keeping track of and reading counts sent from the server.\n\n@see net.minecraft.stats.ServerStatsCounter + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stats a field_15431 + m (Lnet/minecraft/stats/Stat;)I getValue a method_15025 + p 1 stat + m (Lnet/minecraft/stats/StatType;Ljava/lang/Object;)I getValue a method_15024 + p 1 type + p 2 value + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/stats/Stat;I)V setValue a method_15023 + p 1 player + p 2 stat + p 3 value + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/stats/Stat;I)V increment b method_15022 + p 1 player + p 2 stat + p 3 amount + m ()V +c net/minecraft/stats/package-info awb net/minecraft/class_5993 +c net/minecraft/tags/BannerPatternTags awc net/minecraft/class_7440 + f Lnet/minecraft/tags/TagKey; NO_ITEM_REQUIRED a field_39097 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_FLOWER b field_39098 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_CREEPER c field_39099 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_SKULL d field_39100 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_MOJANG e field_39101 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_GLOBE f field_39102 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_PIGLIN g field_39103 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_FLOW h field_49786 + f Lnet/minecraft/tags/TagKey; PATTERN_ITEM_GUSTER i field_49787 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43675 + p 0 name + m ()V + m ()V +c net/minecraft/tags/BiomeTags awd net/minecraft/class_6908 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_JUNGLE A field_36530 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_OCEAN B field_36531 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_SWAMP C field_36532 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_MOUNTAIN D field_36533 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_STANDARD E field_36492 + f Lnet/minecraft/tags/TagKey; HAS_SHIPWRECK_BEACHED F field_36493 + f Lnet/minecraft/tags/TagKey; HAS_SHIPWRECK G field_36494 + f Lnet/minecraft/tags/TagKey; HAS_STRONGHOLD H field_36502 + f Lnet/minecraft/tags/TagKey; HAS_TRIAL_CHAMBERS I field_47213 + f Lnet/minecraft/tags/TagKey; HAS_SWAMP_HUT J field_36495 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_DESERT K field_36496 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_PLAINS L field_36497 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_SAVANNA M field_36498 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_SNOWY N field_36499 + f Lnet/minecraft/tags/TagKey; HAS_VILLAGE_TAIGA O field_36500 + f Lnet/minecraft/tags/TagKey; HAS_TRAIL_RUINS P field_43168 + f Lnet/minecraft/tags/TagKey; HAS_WOODLAND_MANSION Q field_36501 + f Lnet/minecraft/tags/TagKey; HAS_NETHER_FORTRESS R field_36503 + f Lnet/minecraft/tags/TagKey; HAS_NETHER_FOSSIL S field_36504 + f Lnet/minecraft/tags/TagKey; HAS_BASTION_REMNANT T field_36505 + f Lnet/minecraft/tags/TagKey; HAS_ANCIENT_CITY U field_38372 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_NETHER V field_36506 + f Lnet/minecraft/tags/TagKey; HAS_END_CITY W field_36507 + f Lnet/minecraft/tags/TagKey; REQUIRED_OCEAN_MONUMENT_SURROUNDING X field_37376 + f Lnet/minecraft/tags/TagKey; MINESHAFT_BLOCKING Y field_39444 + f Lnet/minecraft/tags/TagKey; PLAYS_UNDERWATER_MUSIC Z field_37377 + f Lnet/minecraft/tags/TagKey; IS_DEEP_OCEAN a field_36508 + f Lnet/minecraft/tags/TagKey; HAS_CLOSER_WATER_FOG aa field_37378 + f Lnet/minecraft/tags/TagKey; WATER_ON_MAP_OUTLINES ab field_37379 + f Lnet/minecraft/tags/TagKey; PRODUCES_CORALS_FROM_BONEMEAL ac field_37380 + f Lnet/minecraft/tags/TagKey; INCREASED_FIRE_BURNOUT ad field_41752 + f Lnet/minecraft/tags/TagKey; SNOW_GOLEM_MELTS ae field_41753 + f Lnet/minecraft/tags/TagKey; WITHOUT_ZOMBIE_SIEGES af field_37381 + f Lnet/minecraft/tags/TagKey; WITHOUT_PATROL_SPAWNS ag field_37382 + f Lnet/minecraft/tags/TagKey; WITHOUT_WANDERING_TRADER_SPAWNS ah field_37383 + f Lnet/minecraft/tags/TagKey; SPAWNS_COLD_VARIANT_FROGS ai field_37384 + f Lnet/minecraft/tags/TagKey; SPAWNS_WARM_VARIANT_FROGS aj field_37385 + f Lnet/minecraft/tags/TagKey; SPAWNS_GOLD_RABBITS ak field_41754 + f Lnet/minecraft/tags/TagKey; SPAWNS_WHITE_RABBITS al field_41755 + f Lnet/minecraft/tags/TagKey; REDUCED_WATER_AMBIENT_SPAWNS am field_37387 + f Lnet/minecraft/tags/TagKey; ALLOWS_TROPICAL_FISH_SPAWNS_AT_ANY_HEIGHT an field_37388 + f Lnet/minecraft/tags/TagKey; POLAR_BEARS_SPAWN_ON_ALTERNATE_BLOCKS ao field_37389 + f Lnet/minecraft/tags/TagKey; MORE_FREQUENT_DROWNED_SPAWNS ap field_37390 + f Lnet/minecraft/tags/TagKey; ALLOWS_SURFACE_SLIME_SPAWNS aq field_37391 + f Lnet/minecraft/tags/TagKey; SPAWNS_SNOW_FOXES ar field_41756 + f Lnet/minecraft/tags/TagKey; IS_OCEAN b field_36509 + f Lnet/minecraft/tags/TagKey; IS_BEACH c field_36510 + f Lnet/minecraft/tags/TagKey; IS_RIVER d field_36511 + f Lnet/minecraft/tags/TagKey; IS_MOUNTAIN e field_36512 + f Lnet/minecraft/tags/TagKey; IS_BADLANDS f field_36513 + f Lnet/minecraft/tags/TagKey; IS_HILL g field_36514 + f Lnet/minecraft/tags/TagKey; IS_TAIGA h field_36515 + f Lnet/minecraft/tags/TagKey; IS_JUNGLE i field_36516 + f Lnet/minecraft/tags/TagKey; IS_FOREST j field_36517 + f Lnet/minecraft/tags/TagKey; IS_SAVANNA k field_37392 + f Lnet/minecraft/tags/TagKey; IS_OVERWORLD l field_37393 + f Lnet/minecraft/tags/TagKey; IS_NETHER m field_36518 + f Lnet/minecraft/tags/TagKey; IS_END n field_37394 + f Lnet/minecraft/tags/TagKey; STRONGHOLD_BIASED_TO o field_37395 + f Lnet/minecraft/tags/TagKey; HAS_BURIED_TREASURE p field_36519 + f Lnet/minecraft/tags/TagKey; HAS_DESERT_PYRAMID q field_36520 + f Lnet/minecraft/tags/TagKey; HAS_IGLOO r field_36521 + f Lnet/minecraft/tags/TagKey; HAS_JUNGLE_TEMPLE s field_36522 + f Lnet/minecraft/tags/TagKey; HAS_MINESHAFT t field_36523 + f Lnet/minecraft/tags/TagKey; HAS_MINESHAFT_MESA u field_36524 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_MONUMENT v field_36525 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_RUIN_COLD w field_36526 + f Lnet/minecraft/tags/TagKey; HAS_OCEAN_RUIN_WARM x field_36527 + f Lnet/minecraft/tags/TagKey; HAS_PILLAGER_OUTPOST y field_36528 + f Lnet/minecraft/tags/TagKey; HAS_RUINED_PORTAL_DESERT z field_36529 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_40434 + p 0 name + m ()V + m ()V +c net/minecraft/tags/BlockTags awe net/minecraft/class_3481 + f Lnet/minecraft/tags/TagKey; JUNGLE_LOGS A field_15474 + f Lnet/minecraft/tags/TagKey; SPRUCE_LOGS B field_15489 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS C field_37401 + f Lnet/minecraft/tags/TagKey; CRIMSON_STEMS D field_21955 + f Lnet/minecraft/tags/TagKey; WARPED_STEMS E field_21956 + f Lnet/minecraft/tags/TagKey; BAMBOO_BLOCKS F field_40986 + f Lnet/minecraft/tags/TagKey; WART_BLOCKS G field_21954 + f Lnet/minecraft/tags/TagKey; BANNERS H field_15501 + f Lnet/minecraft/tags/TagKey; SAND I field_15466 + f Lnet/minecraft/tags/TagKey; SMELTS_TO_GLASS J field_42968 + f Lnet/minecraft/tags/TagKey; STAIRS K field_15459 + f Lnet/minecraft/tags/TagKey; SLABS L field_15469 + f Lnet/minecraft/tags/TagKey; WALLS M field_15504 + f Lnet/minecraft/tags/TagKey; ANVIL N field_15486 + f Lnet/minecraft/tags/TagKey; RAILS O field_15463 + f Lnet/minecraft/tags/TagKey; LEAVES P field_15503 + f Lnet/minecraft/tags/TagKey; TRAPDOORS Q field_15487 + f Lnet/minecraft/tags/TagKey; SMALL_FLOWERS R field_15480 + f Lnet/minecraft/tags/TagKey; BEDS S field_16443 + f Lnet/minecraft/tags/TagKey; FENCES T field_16584 + f Lnet/minecraft/tags/TagKey; TALL_FLOWERS U field_20338 + f Lnet/minecraft/tags/TagKey; FLOWERS V field_20339 + f Lnet/minecraft/tags/TagKey; PIGLIN_REPELLENTS W field_22465 + f Lnet/minecraft/tags/TagKey; GOLD_ORES X field_23062 + f Lnet/minecraft/tags/TagKey; IRON_ORES Y field_28988 + f Lnet/minecraft/tags/TagKey; DIAMOND_ORES Z field_28989 + f Lnet/minecraft/tags/TagKey; WALL_HANGING_SIGNS aA field_40104 + f Lnet/minecraft/tags/TagKey; ALL_HANGING_SIGNS aB field_40105 + f Lnet/minecraft/tags/TagKey; ALL_SIGNS aC field_41282 + f Lnet/minecraft/tags/TagKey; DRAGON_IMMUNE aD field_17753 + f Lnet/minecraft/tags/TagKey; DRAGON_TRANSPARENT aE field_37396 + f Lnet/minecraft/tags/TagKey; WITHER_IMMUNE aF field_17754 + f Lnet/minecraft/tags/TagKey; WITHER_SUMMON_BASE_BLOCKS aG field_22274 + f Lnet/minecraft/tags/TagKey; BEEHIVES aH field_20340 + f Lnet/minecraft/tags/TagKey; CROPS aI field_20341 + f Lnet/minecraft/tags/TagKey; BEE_GROWABLES aJ field_20342 + f Lnet/minecraft/tags/TagKey; PORTALS aK field_21780 + f Lnet/minecraft/tags/TagKey; FIRE aL field_21952 + f Lnet/minecraft/tags/TagKey; WOOL a field_15481 + f Lnet/minecraft/tags/TagKey; NYLIUM aM field_21953 + f Lnet/minecraft/tags/TagKey; BEACON_BASE_BLOCKS aN field_22275 + f Lnet/minecraft/tags/TagKey; SOUL_SPEED_BLOCKS aO field_23063 + f Lnet/minecraft/tags/TagKey; WALL_POST_OVERRIDE aP field_22276 + f Lnet/minecraft/tags/TagKey; CLIMBABLE aQ field_22414 + f Lnet/minecraft/tags/TagKey; FALL_DAMAGE_RESETTING aR field_36327 + f Lnet/minecraft/tags/TagKey; SHULKER_BOXES aS field_21490 + f Lnet/minecraft/tags/TagKey; HOGLIN_REPELLENTS aT field_22466 + f Lnet/minecraft/tags/TagKey; SOUL_FIRE_BASE_BLOCKS aU field_23119 + f Lnet/minecraft/tags/TagKey; STRIDER_WARM_BLOCKS aV field_23209 + f Lnet/minecraft/tags/TagKey; CAMPFIRES aW field_23799 + f Lnet/minecraft/tags/TagKey; GUARDED_BY_PIGLINS aX field_23800 + f Lnet/minecraft/tags/TagKey; PREVENT_MOB_SPAWNING_INSIDE aY field_24459 + f Lnet/minecraft/tags/TagKey; FENCE_GATES aZ field_25147 + f Lnet/minecraft/tags/TagKey; REDSTONE_ORES aa field_28990 + f Lnet/minecraft/tags/TagKey; LAPIS_ORES ab field_28991 + f Lnet/minecraft/tags/TagKey; COAL_ORES ac field_29193 + f Lnet/minecraft/tags/TagKey; EMERALD_ORES ad field_29194 + f Lnet/minecraft/tags/TagKey; COPPER_ORES ae field_29195 + f Lnet/minecraft/tags/TagKey; CANDLES af field_26983 + f Lnet/minecraft/tags/TagKey; DIRT ag field_29822 + f Lnet/minecraft/tags/TagKey; TERRACOTTA ah field_36265 + f Lnet/minecraft/tags/TagKey; BADLANDS_TERRACOTTA ai field_49050 + f Lnet/minecraft/tags/TagKey; CONCRETE_POWDER aj field_45063 + f Lnet/minecraft/tags/TagKey; COMPLETES_FIND_TREE_TUTORIAL ak field_38834 + f Lnet/minecraft/tags/TagKey; FLOWER_POTS al field_15470 + f Lnet/minecraft/tags/TagKey; ENDERMAN_HOLDABLE am field_15460 + f Lnet/minecraft/tags/TagKey; ICE an field_15467 + f Lnet/minecraft/tags/TagKey; VALID_SPAWN ao field_15478 + f Lnet/minecraft/tags/TagKey; IMPERMEABLE ap field_15490 + f Lnet/minecraft/tags/TagKey; UNDERWATER_BONEMEALS aq field_15496 + f Lnet/minecraft/tags/TagKey; CORAL_BLOCKS ar field_15461 + f Lnet/minecraft/tags/TagKey; WALL_CORALS as field_15476 + f Lnet/minecraft/tags/TagKey; CORAL_PLANTS at field_15483 + f Lnet/minecraft/tags/TagKey; CORALS au field_15488 + f Lnet/minecraft/tags/TagKey; BAMBOO_PLANTABLE_ON av field_15497 + f Lnet/minecraft/tags/TagKey; STANDING_SIGNS aw field_15472 + f Lnet/minecraft/tags/TagKey; WALL_SIGNS ax field_15492 + f Lnet/minecraft/tags/TagKey; SIGNS ay field_15500 + f Lnet/minecraft/tags/TagKey; CEILING_HANGING_SIGNS az field_40103 + f Lnet/minecraft/tags/TagKey; SNOW bA field_29823 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_AXE bB field_33713 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_HOE bC field_33714 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_PICKAXE bD field_33715 + f Lnet/minecraft/tags/TagKey; MINEABLE_WITH_SHOVEL bE field_33716 + f Lnet/minecraft/tags/TagKey; SWORD_EFFICIENT bF field_44469 + f Lnet/minecraft/tags/TagKey; NEEDS_DIAMOND_TOOL bG field_33717 + f Lnet/minecraft/tags/TagKey; NEEDS_IRON_TOOL bH field_33718 + f Lnet/minecraft/tags/TagKey; NEEDS_STONE_TOOL bI field_33719 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_NETHERITE_TOOL bJ field_49925 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_DIAMOND_TOOL bK field_49926 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_IRON_TOOL bL field_49927 + f Lnet/minecraft/tags/TagKey; PLANKS b field_15471 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_STONE_TOOL bM field_49928 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_GOLD_TOOL bN field_49929 + f Lnet/minecraft/tags/TagKey; INCORRECT_FOR_WOODEN_TOOL bO field_49930 + f Lnet/minecraft/tags/TagKey; FEATURES_CANNOT_REPLACE bP field_33757 + f Lnet/minecraft/tags/TagKey; LAVA_POOL_STONE_CANNOT_REPLACE bQ field_33862 + f Lnet/minecraft/tags/TagKey; GEODE_INVALID_BLOCKS bR field_33863 + f Lnet/minecraft/tags/TagKey; FROG_PREFER_JUMP_TO bS field_37398 + f Lnet/minecraft/tags/TagKey; SCULK_REPLACEABLE bT field_37399 + f Lnet/minecraft/tags/TagKey; SCULK_REPLACEABLE_WORLD_GEN bU field_37400 + f Lnet/minecraft/tags/TagKey; ANCIENT_CITY_REPLACEABLE bV field_38374 + f Lnet/minecraft/tags/TagKey; VIBRATION_RESONATORS bW field_43169 + f Lnet/minecraft/tags/TagKey; ANIMALS_SPAWNABLE_ON bX field_35567 + f Lnet/minecraft/tags/TagKey; ARMADILLO_SPAWNABLE_ON bY field_48282 + f Lnet/minecraft/tags/TagKey; AXOLOTLS_SPAWNABLE_ON bZ field_35568 + f Lnet/minecraft/tags/TagKey; UNSTABLE_BOTTOM_CENTER ba field_25148 + f Lnet/minecraft/tags/TagKey; MUSHROOM_GROW_BLOCK bb field_25739 + f Lnet/minecraft/tags/TagKey; INFINIBURN_OVERWORLD bc field_25588 + f Lnet/minecraft/tags/TagKey; INFINIBURN_NETHER bd field_25589 + f Lnet/minecraft/tags/TagKey; INFINIBURN_END be field_25590 + f Lnet/minecraft/tags/TagKey; BASE_STONE_OVERWORLD bf field_25806 + f Lnet/minecraft/tags/TagKey; STONE_ORE_REPLACEABLES bg field_28992 + f Lnet/minecraft/tags/TagKey; DEEPSLATE_ORE_REPLACEABLES bh field_28993 + f Lnet/minecraft/tags/TagKey; BASE_STONE_NETHER bi field_25807 + f Lnet/minecraft/tags/TagKey; OVERWORLD_CARVER_REPLACEABLES bj field_38832 + f Lnet/minecraft/tags/TagKey; NETHER_CARVER_REPLACEABLES bk field_38833 + f Lnet/minecraft/tags/TagKey; CANDLE_CAKES bl field_26984 + f Lnet/minecraft/tags/TagKey; CAULDRONS bm field_26985 + f Lnet/minecraft/tags/TagKey; CRYSTAL_SOUND_BLOCKS bn field_26986 + f Lnet/minecraft/tags/TagKey; INSIDE_STEP_SOUND_BLOCKS bo field_28040 + f Lnet/minecraft/tags/TagKey; COMBINATION_STEP_SOUND_BLOCKS bp field_43170 + f Lnet/minecraft/tags/TagKey; CAMEL_SAND_STEP_SOUND_BLOCKS bq field_45064 + f Lnet/minecraft/tags/TagKey; OCCLUDES_VIBRATION_SIGNALS br field_28088 + f Lnet/minecraft/tags/TagKey; DAMPENS_VIBRATIONS bs field_38835 + f Lnet/minecraft/tags/TagKey; DRIPSTONE_REPLACEABLE bt field_28089 + f Lnet/minecraft/tags/TagKey; CAVE_VINES bu field_28621 + f Lnet/minecraft/tags/TagKey; MOSS_REPLACEABLE bv field_28622 + f Lnet/minecraft/tags/TagKey; LUSH_GROUND_REPLACEABLE bw field_29196 + f Lnet/minecraft/tags/TagKey; AZALEA_ROOT_REPLACEABLE bx field_36268 + f Lnet/minecraft/tags/TagKey; SMALL_DRIPLEAF_PLACEABLE by field_33641 + f Lnet/minecraft/tags/TagKey; BIG_DRIPLEAF_PLACEABLE bz field_35443 + f Lnet/minecraft/tags/TagKey; DOES_NOT_BLOCK_HOPPERS cA field_49147 + f Lnet/minecraft/tags/TagKey; AIR cB field_51989 + f Lnet/minecraft/tags/TagKey; STONE_BRICKS c field_15465 + f Lnet/minecraft/tags/TagKey; GOATS_SPAWNABLE_ON ca field_35569 + f Lnet/minecraft/tags/TagKey; MOOSHROOMS_SPAWNABLE_ON cb field_35570 + f Lnet/minecraft/tags/TagKey; PARROTS_SPAWNABLE_ON cc field_35571 + f Lnet/minecraft/tags/TagKey; POLAR_BEARS_SPAWNABLE_ON_ALTERNATE cd field_35572 + f Lnet/minecraft/tags/TagKey; RABBITS_SPAWNABLE_ON ce field_35573 + f Lnet/minecraft/tags/TagKey; FOXES_SPAWNABLE_ON cf field_35574 + f Lnet/minecraft/tags/TagKey; WOLVES_SPAWNABLE_ON cg field_35575 + f Lnet/minecraft/tags/TagKey; FROGS_SPAWNABLE_ON ch field_38928 + f Lnet/minecraft/tags/TagKey; AZALEA_GROWS_ON ci field_36266 + f Lnet/minecraft/tags/TagKey; CONVERTABLE_TO_MUD cj field_37397 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS_CAN_GROW_THROUGH ck field_38692 + f Lnet/minecraft/tags/TagKey; MANGROVE_ROOTS_CAN_GROW_THROUGH cl field_38693 + f Lnet/minecraft/tags/TagKey; DEAD_BUSH_MAY_PLACE_ON cm field_38694 + f Lnet/minecraft/tags/TagKey; SNAPS_GOAT_HORN cn field_39029 + f Lnet/minecraft/tags/TagKey; REPLACEABLE_BY_TREES co field_44470 + f Lnet/minecraft/tags/TagKey; SNOW_LAYER_CANNOT_SURVIVE_ON cp field_39104 + f Lnet/minecraft/tags/TagKey; SNOW_LAYER_CAN_SURVIVE_ON cq field_39105 + f Lnet/minecraft/tags/TagKey; INVALID_SPAWN_INSIDE cr field_40107 + f Lnet/minecraft/tags/TagKey; SNIFFER_DIGGABLE_BLOCK cs field_42607 + f Lnet/minecraft/tags/TagKey; SNIFFER_EGG_HATCH_BOOST ct field_43171 + f Lnet/minecraft/tags/TagKey; TRAIL_RUINS_REPLACEABLE cu field_43172 + f Lnet/minecraft/tags/TagKey; REPLACEABLE cv field_44471 + f Lnet/minecraft/tags/TagKey; ENCHANTMENT_POWER_PROVIDER cw field_44472 + f Lnet/minecraft/tags/TagKey; ENCHANTMENT_POWER_TRANSMITTER cx field_44473 + f Lnet/minecraft/tags/TagKey; MAINTAINS_FARMLAND cy field_44589 + f Lnet/minecraft/tags/TagKey; BLOCKS_WIND_CHARGE_EXPLOSIONS cz field_49051 + f Lnet/minecraft/tags/TagKey; WOODEN_BUTTONS d field_15499 + f Lnet/minecraft/tags/TagKey; STONE_BUTTONS e field_44590 + f Lnet/minecraft/tags/TagKey; BUTTONS f field_15493 + f Lnet/minecraft/tags/TagKey; WOOL_CARPETS g field_15479 + f Lnet/minecraft/tags/TagKey; WOODEN_DOORS h field_15494 + f Lnet/minecraft/tags/TagKey; MOB_INTERACTABLE_DOORS i field_52288 + f Lnet/minecraft/tags/TagKey; WOODEN_STAIRS j field_15502 + f Lnet/minecraft/tags/TagKey; WOODEN_SLABS k field_15468 + f Lnet/minecraft/tags/TagKey; WOODEN_FENCES l field_17619 + f Lnet/minecraft/tags/TagKey; PRESSURE_PLATES m field_24076 + f Lnet/minecraft/tags/TagKey; WOODEN_PRESSURE_PLATES n field_15477 + f Lnet/minecraft/tags/TagKey; STONE_PRESSURE_PLATES o field_24077 + f Lnet/minecraft/tags/TagKey; WOODEN_TRAPDOORS p field_15491 + f Lnet/minecraft/tags/TagKey; DOORS q field_15495 + f Lnet/minecraft/tags/TagKey; SAPLINGS r field_15462 + f Lnet/minecraft/tags/TagKey; LOGS_THAT_BURN s field_23210 + f Lnet/minecraft/tags/TagKey; OVERWORLD_NATURAL_LOGS t field_39030 + f Lnet/minecraft/tags/TagKey; LOGS u field_15475 + f Lnet/minecraft/tags/TagKey; DARK_OAK_LOGS v field_15485 + f Lnet/minecraft/tags/TagKey; OAK_LOGS w field_15482 + f Lnet/minecraft/tags/TagKey; BIRCH_LOGS x field_15498 + f Lnet/minecraft/tags/TagKey; ACACIA_LOGS y field_15458 + f Lnet/minecraft/tags/TagKey; CHERRY_LOGS z field_42608 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15069 + p 0 name + m ()V + m ()V +c net/minecraft/tags/CatVariantTags awf net/minecraft/class_7369 + f Lnet/minecraft/tags/TagKey; DEFAULT_SPAWNS a field_38695 + f Lnet/minecraft/tags/TagKey; FULL_MOON_SPAWNS b field_38696 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43046 + p 0 name + m ()V + m ()V +c net/minecraft/tags/DamageTypeTags awg net/minecraft/class_8103 + f Lnet/minecraft/tags/TagKey; ALWAYS_KILLS_ARMOR_STANDS A field_46211 + f Lnet/minecraft/tags/TagKey; CAN_BREAK_ARMOR_STAND B field_46230 + f Lnet/minecraft/tags/TagKey; BYPASSES_WOLF_ARMOR C field_49182 + f Lnet/minecraft/tags/TagKey; IS_PLAYER_ATTACK D field_50104 + f Lnet/minecraft/tags/TagKey; BURN_FROM_STEPPING E field_51527 + f Lnet/minecraft/tags/TagKey; PANIC_CAUSES F field_51990 + f Lnet/minecraft/tags/TagKey; PANIC_ENVIRONMENTAL_CAUSES G field_51991 + f Lnet/minecraft/tags/TagKey; DAMAGES_HELMET a field_42240 + f Lnet/minecraft/tags/TagKey; BYPASSES_ARMOR b field_42241 + f Lnet/minecraft/tags/TagKey; BYPASSES_SHIELD c field_43116 + f Lnet/minecraft/tags/TagKey; BYPASSES_INVULNERABILITY d field_42242 + f Lnet/minecraft/tags/TagKey; BYPASSES_COOLDOWN e field_42969 + f Lnet/minecraft/tags/TagKey; BYPASSES_EFFECTS f field_42243 + f Lnet/minecraft/tags/TagKey; BYPASSES_RESISTANCE g field_42244 + f Lnet/minecraft/tags/TagKey; BYPASSES_ENCHANTMENTS h field_42245 + f Lnet/minecraft/tags/TagKey; IS_FIRE i field_42246 + f Lnet/minecraft/tags/TagKey; IS_PROJECTILE j field_42247 + f Lnet/minecraft/tags/TagKey; WITCH_RESISTANT_TO k field_42248 + f Lnet/minecraft/tags/TagKey; IS_EXPLOSION l field_42249 + f Lnet/minecraft/tags/TagKey; IS_FALL m field_42250 + f Lnet/minecraft/tags/TagKey; IS_DROWNING n field_42251 + f Lnet/minecraft/tags/TagKey; IS_FREEZING o field_42252 + f Lnet/minecraft/tags/TagKey; IS_LIGHTNING p field_42253 + f Lnet/minecraft/tags/TagKey; NO_ANGER q field_42254 + f Lnet/minecraft/tags/TagKey; NO_IMPACT r field_42255 + f Lnet/minecraft/tags/TagKey; ALWAYS_MOST_SIGNIFICANT_FALL s field_42256 + f Lnet/minecraft/tags/TagKey; WITHER_IMMUNE_TO t field_42257 + f Lnet/minecraft/tags/TagKey; IGNITES_ARMOR_STANDS u field_42258 + f Lnet/minecraft/tags/TagKey; BURNS_ARMOR_STANDS v field_42259 + f Lnet/minecraft/tags/TagKey; AVOIDS_GUARDIAN_THORNS w field_42260 + f Lnet/minecraft/tags/TagKey; ALWAYS_TRIGGERS_SILVERFISH x field_42261 + f Lnet/minecraft/tags/TagKey; ALWAYS_HURTS_ENDER_DRAGONS y field_42970 + f Lnet/minecraft/tags/TagKey; NO_KNOCKBACK z field_45065 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_48762 + p 0 name + m ()V +c net/minecraft/tags/EnchantmentTags awh net/minecraft/class_9636 + f Lnet/minecraft/tags/TagKey; TRADES_SNOW_COMMON A field_51528 + f Lnet/minecraft/tags/TagKey; TRADES_SWAMP_COMMON B field_51529 + f Lnet/minecraft/tags/TagKey; TRADES_TAIGA_COMMON C field_51530 + f Lnet/minecraft/tags/TagKey; TRADES_DESERT_SPECIAL D field_51531 + f Lnet/minecraft/tags/TagKey; TRADES_JUNGLE_SPECIAL E field_51532 + f Lnet/minecraft/tags/TagKey; TRADES_PLAINS_SPECIAL F field_51533 + f Lnet/minecraft/tags/TagKey; TRADES_SAVANNA_SPECIAL G field_51534 + f Lnet/minecraft/tags/TagKey; TRADES_SNOW_SPECIAL H field_51535 + f Lnet/minecraft/tags/TagKey; TRADES_SWAMP_SPECIAL I field_51536 + f Lnet/minecraft/tags/TagKey; TRADES_TAIGA_SPECIAL J field_51537 + f Lnet/minecraft/tags/TagKey; TOOLTIP_ORDER a field_51362 + f Lnet/minecraft/tags/TagKey; ARMOR_EXCLUSIVE b field_51538 + f Lnet/minecraft/tags/TagKey; BOOTS_EXCLUSIVE c field_51539 + f Lnet/minecraft/tags/TagKey; BOW_EXCLUSIVE d field_51540 + f Lnet/minecraft/tags/TagKey; CROSSBOW_EXCLUSIVE e field_51541 + f Lnet/minecraft/tags/TagKey; DAMAGE_EXCLUSIVE f field_51542 + f Lnet/minecraft/tags/TagKey; MINING_EXCLUSIVE g field_51543 + f Lnet/minecraft/tags/TagKey; RIPTIDE_EXCLUSIVE h field_51544 + f Lnet/minecraft/tags/TagKey; TRADEABLE i field_51545 + f Lnet/minecraft/tags/TagKey; DOUBLE_TRADE_PRICE j field_51546 + f Lnet/minecraft/tags/TagKey; IN_ENCHANTING_TABLE k field_51547 + f Lnet/minecraft/tags/TagKey; ON_MOB_SPAWN_EQUIPMENT l field_51548 + f Lnet/minecraft/tags/TagKey; ON_TRADED_EQUIPMENT m field_51549 + f Lnet/minecraft/tags/TagKey; ON_RANDOM_LOOT n field_51550 + f Lnet/minecraft/tags/TagKey; CURSE o field_51551 + f Lnet/minecraft/tags/TagKey; SMELTS_LOOT p field_51552 + f Lnet/minecraft/tags/TagKey; PREVENTS_BEE_SPAWNS_WHEN_MINING q field_51553 + f Lnet/minecraft/tags/TagKey; PREVENTS_DECORATED_POT_SHATTERING r field_51554 + f Lnet/minecraft/tags/TagKey; PREVENTS_ICE_MELTING s field_51555 + f Lnet/minecraft/tags/TagKey; PREVENTS_INFESTED_SPAWNS t field_51556 + f Lnet/minecraft/tags/TagKey; TREASURE u field_51557 + f Lnet/minecraft/tags/TagKey; NON_TREASURE v field_51558 + f Lnet/minecraft/tags/TagKey; TRADES_DESERT_COMMON w field_51559 + f Lnet/minecraft/tags/TagKey; TRADES_JUNGLE_COMMON x field_51560 + f Lnet/minecraft/tags/TagKey; TRADES_PLAINS_COMMON y field_51561 + f Lnet/minecraft/tags/TagKey; TRADES_SAVANNA_COMMON z field_51562 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_59548 + p 0 name + m ()V +c net/minecraft/tags/EntityTypeTags awi net/minecraft/class_3483 + f Lnet/minecraft/tags/TagKey; NOT_SCARY_FOR_PUFFERFISH A field_48283 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_IMPALING B field_48284 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_BANE_OF_ARTHROPODS C field_48285 + f Lnet/minecraft/tags/TagKey; SENSITIVE_TO_SMITE D field_49931 + f Lnet/minecraft/tags/TagKey; NO_ANGER_FROM_WIND_CHARGE E field_48713 + f Lnet/minecraft/tags/TagKey; IMMUNE_TO_OOZING F field_50105 + f Lnet/minecraft/tags/TagKey; IMMUNE_TO_INFESTED G field_50106 + f Lnet/minecraft/tags/TagKey; REDIRECTABLE_PROJECTILE H field_51503 + f Lnet/minecraft/tags/TagKey; SKELETONS a field_15507 + f Lnet/minecraft/tags/TagKey; ZOMBIES b field_46231 + f Lnet/minecraft/tags/TagKey; RAIDERS c field_19168 + f Lnet/minecraft/tags/TagKey; UNDEAD d field_46232 + f Lnet/minecraft/tags/TagKey; BEEHIVE_INHABITORS e field_20631 + f Lnet/minecraft/tags/TagKey; ARROWS f field_21508 + f Lnet/minecraft/tags/TagKey; IMPACT_PROJECTILES g field_22415 + f Lnet/minecraft/tags/TagKey; POWDER_SNOW_WALKABLE_MOBS h field_27855 + f Lnet/minecraft/tags/TagKey; AXOLOTL_ALWAYS_HOSTILES i field_28296 + f Lnet/minecraft/tags/TagKey; AXOLOTL_HUNT_TARGETS j field_29824 + f Lnet/minecraft/tags/TagKey; FREEZE_IMMUNE_ENTITY_TYPES k field_29825 + f Lnet/minecraft/tags/TagKey; FREEZE_HURTS_EXTRA_TYPES l field_29826 + f Lnet/minecraft/tags/TagKey; CAN_BREATHE_UNDER_WATER m field_46233 + f Lnet/minecraft/tags/TagKey; FROG_FOOD n field_38697 + f Lnet/minecraft/tags/TagKey; FALL_DAMAGE_IMMUNE o field_42971 + f Lnet/minecraft/tags/TagKey; DISMOUNTS_UNDERWATER p field_43096 + f Lnet/minecraft/tags/TagKey; NON_CONTROLLING_RIDER q field_45066 + f Lnet/minecraft/tags/TagKey; DEFLECTS_PROJECTILES r field_48286 + f Lnet/minecraft/tags/TagKey; CAN_TURN_IN_BOATS s field_47578 + f Lnet/minecraft/tags/TagKey; ILLAGER t field_48287 + f Lnet/minecraft/tags/TagKey; AQUATIC u field_48288 + f Lnet/minecraft/tags/TagKey; ARTHROPOD v field_48289 + f Lnet/minecraft/tags/TagKey; IGNORES_POISON_AND_REGEN w field_48290 + f Lnet/minecraft/tags/TagKey; INVERTED_HEALING_AND_HARM x field_48291 + f Lnet/minecraft/tags/TagKey; WITHER_FRIENDS y field_48292 + f Lnet/minecraft/tags/TagKey; ILLAGER_FRIENDS z field_48293 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15077 + p 0 name + m ()V +c net/minecraft/tags/FlatLevelGeneratorPresetTags awj net/minecraft/class_7088 + f Lnet/minecraft/tags/TagKey; VISIBLE a field_37402 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41292 + p 0 name + m ()V + m ()V +c net/minecraft/tags/FluidTags awk net/minecraft/class_3486 + f Lnet/minecraft/tags/TagKey; WATER a field_15517 + f Lnet/minecraft/tags/TagKey; LAVA b field_15518 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_15095 + p 0 name + m ()V + m ()V +c net/minecraft/tags/GameEventTags awl net/minecraft/class_5698 + f Lnet/minecraft/tags/TagKey; VIBRATIONS a field_28090 + f Lnet/minecraft/tags/TagKey; WARDEN_CAN_LISTEN b field_38079 + f Lnet/minecraft/tags/TagKey; SHRIEKER_CAN_LISTEN c field_38698 + f Lnet/minecraft/tags/TagKey; IGNORE_VIBRATIONS_SNEAKING d field_28091 + f Lnet/minecraft/tags/TagKey; ALLAY_CAN_LISTEN e field_39031 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_32823 + p 0 name + m ()V + m ()V +c net/minecraft/tags/InstrumentTags awm net/minecraft/class_7441 + f Lnet/minecraft/tags/TagKey; REGULAR_GOAT_HORNS a field_39106 + f Lnet/minecraft/tags/TagKey; SCREAMING_GOAT_HORNS b field_39107 + f Lnet/minecraft/tags/TagKey; GOAT_HORNS c field_39108 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43676 + p 0 name + m ()V +c net/minecraft/tags/ItemTags awn net/minecraft/class_3489 + f Lnet/minecraft/tags/TagKey; CRIMSON_STEMS A field_21957 + f Lnet/minecraft/tags/TagKey; WARPED_STEMS B field_21958 + f Lnet/minecraft/tags/TagKey; BAMBOO_BLOCKS C field_40987 + f Lnet/minecraft/tags/TagKey; WART_BLOCKS D field_38837 + f Lnet/minecraft/tags/TagKey; BANNERS E field_15556 + f Lnet/minecraft/tags/TagKey; SAND F field_15532 + f Lnet/minecraft/tags/TagKey; SMELTS_TO_GLASS G field_42972 + f Lnet/minecraft/tags/TagKey; STAIRS H field_15526 + f Lnet/minecraft/tags/TagKey; SLABS I field_15535 + f Lnet/minecraft/tags/TagKey; WALLS J field_15560 + f Lnet/minecraft/tags/TagKey; ANVIL K field_15547 + f Lnet/minecraft/tags/TagKey; RAILS L field_15529 + f Lnet/minecraft/tags/TagKey; LEAVES M field_15558 + f Lnet/minecraft/tags/TagKey; TRAPDOORS N field_15548 + f Lnet/minecraft/tags/TagKey; SMALL_FLOWERS O field_15543 + f Lnet/minecraft/tags/TagKey; BEDS P field_16444 + f Lnet/minecraft/tags/TagKey; FENCES Q field_16585 + f Lnet/minecraft/tags/TagKey; TALL_FLOWERS R field_20343 + f Lnet/minecraft/tags/TagKey; FLOWERS S field_20344 + f Lnet/minecraft/tags/TagKey; PIGLIN_REPELLENTS T field_23064 + f Lnet/minecraft/tags/TagKey; PIGLIN_LOVED U field_24481 + f Lnet/minecraft/tags/TagKey; IGNORED_BY_PIGLIN_BABIES V field_26987 + f Lnet/minecraft/tags/TagKey; MEAT W field_49932 + f Lnet/minecraft/tags/TagKey; SNIFFER_FOOD X field_42609 + f Lnet/minecraft/tags/TagKey; PIGLIN_FOOD Y field_26988 + f Lnet/minecraft/tags/TagKey; FOX_FOOD Z field_28624 + f Lnet/minecraft/tags/TagKey; IRON_ORES aA field_28994 + f Lnet/minecraft/tags/TagKey; DIAMOND_ORES aB field_28995 + f Lnet/minecraft/tags/TagKey; REDSTONE_ORES aC field_28996 + f Lnet/minecraft/tags/TagKey; LAPIS_ORES aD field_28997 + f Lnet/minecraft/tags/TagKey; COAL_ORES aE field_29197 + f Lnet/minecraft/tags/TagKey; EMERALD_ORES aF field_29198 + f Lnet/minecraft/tags/TagKey; COPPER_ORES aG field_29199 + f Lnet/minecraft/tags/TagKey; NON_FLAMMABLE_WOOD aH field_23211 + f Lnet/minecraft/tags/TagKey; SOUL_FIRE_BASE_BLOCKS aI field_23801 + f Lnet/minecraft/tags/TagKey; CANDLES aJ field_26989 + f Lnet/minecraft/tags/TagKey; DIRT aK field_36269 + f Lnet/minecraft/tags/TagKey; TERRACOTTA aL field_36270 + f Lnet/minecraft/tags/TagKey; WOOL a field_15544 + f Lnet/minecraft/tags/TagKey; COMPLETES_FIND_TREE_TUTORIAL aM field_38836 + f Lnet/minecraft/tags/TagKey; BOATS aN field_15536 + f Lnet/minecraft/tags/TagKey; CHEST_BOATS aO field_38080 + f Lnet/minecraft/tags/TagKey; FISHES aP field_15527 + f Lnet/minecraft/tags/TagKey; SIGNS aQ field_15533 + f Lnet/minecraft/tags/TagKey; CREEPER_DROP_MUSIC_DISCS aR field_23969 + f Lnet/minecraft/tags/TagKey; COALS aS field_17487 + f Lnet/minecraft/tags/TagKey; ARROWS aT field_18317 + f Lnet/minecraft/tags/TagKey; LECTERN_BOOKS aU field_21465 + f Lnet/minecraft/tags/TagKey; BOOKSHELF_BOOKS aV field_40109 + f Lnet/minecraft/tags/TagKey; BEACON_PAYMENT_ITEMS aW field_22277 + f Lnet/minecraft/tags/TagKey; STONE_TOOL_MATERIALS aX field_23802 + f Lnet/minecraft/tags/TagKey; STONE_CRAFTING_MATERIALS aY field_25808 + f Lnet/minecraft/tags/TagKey; FREEZE_IMMUNE_WEARABLES aZ field_28041 + f Lnet/minecraft/tags/TagKey; COW_FOOD aa field_49933 + f Lnet/minecraft/tags/TagKey; GOAT_FOOD ab field_49934 + f Lnet/minecraft/tags/TagKey; SHEEP_FOOD ac field_49935 + f Lnet/minecraft/tags/TagKey; WOLF_FOOD ad field_49936 + f Lnet/minecraft/tags/TagKey; CAT_FOOD ae field_49937 + f Lnet/minecraft/tags/TagKey; HORSE_FOOD af field_49938 + f Lnet/minecraft/tags/TagKey; HORSE_TEMPT_ITEMS ag field_49939 + f Lnet/minecraft/tags/TagKey; CAMEL_FOOD ah field_49940 + f Lnet/minecraft/tags/TagKey; ARMADILLO_FOOD ai field_49941 + f Lnet/minecraft/tags/TagKey; BEE_FOOD aj field_49942 + f Lnet/minecraft/tags/TagKey; CHICKEN_FOOD ak field_49943 + f Lnet/minecraft/tags/TagKey; FROG_FOOD al field_49944 + f Lnet/minecraft/tags/TagKey; HOGLIN_FOOD am field_49945 + f Lnet/minecraft/tags/TagKey; LLAMA_FOOD an field_49946 + f Lnet/minecraft/tags/TagKey; LLAMA_TEMPT_ITEMS ao field_49947 + f Lnet/minecraft/tags/TagKey; OCELOT_FOOD ap field_49948 + f Lnet/minecraft/tags/TagKey; PANDA_FOOD aq field_49949 + f Lnet/minecraft/tags/TagKey; PIG_FOOD ar field_49950 + f Lnet/minecraft/tags/TagKey; RABBIT_FOOD as field_49951 + f Lnet/minecraft/tags/TagKey; STRIDER_FOOD at field_49952 + f Lnet/minecraft/tags/TagKey; STRIDER_TEMPT_ITEMS au field_49953 + f Lnet/minecraft/tags/TagKey; TURTLE_FOOD av field_49954 + f Lnet/minecraft/tags/TagKey; PARROT_FOOD aw field_49955 + f Lnet/minecraft/tags/TagKey; PARROT_POISONOUS_FOOD ax field_49956 + f Lnet/minecraft/tags/TagKey; AXOLOTL_FOOD ay field_49957 + f Lnet/minecraft/tags/TagKey; GOLD_ORES az field_23065 + f Lnet/minecraft/tags/TagKey; CHEST_ARMOR_ENCHANTABLE bA field_48301 + f Lnet/minecraft/tags/TagKey; HEAD_ARMOR_ENCHANTABLE bB field_48302 + f Lnet/minecraft/tags/TagKey; ARMOR_ENCHANTABLE bC field_48303 + f Lnet/minecraft/tags/TagKey; SWORD_ENCHANTABLE bD field_48304 + f Lnet/minecraft/tags/TagKey; FIRE_ASPECT_ENCHANTABLE bE field_50107 + f Lnet/minecraft/tags/TagKey; SHARP_WEAPON_ENCHANTABLE bF field_50108 + f Lnet/minecraft/tags/TagKey; WEAPON_ENCHANTABLE bG field_48305 + f Lnet/minecraft/tags/TagKey; MINING_ENCHANTABLE bH field_48306 + f Lnet/minecraft/tags/TagKey; MINING_LOOT_ENCHANTABLE bI field_48307 + f Lnet/minecraft/tags/TagKey; FISHING_ENCHANTABLE bJ field_48308 + f Lnet/minecraft/tags/TagKey; TRIDENT_ENCHANTABLE bK field_48309 + f Lnet/minecraft/tags/TagKey; DURABILITY_ENCHANTABLE bL field_48310 + f Lnet/minecraft/tags/TagKey; PLANKS b field_15537 + f Lnet/minecraft/tags/TagKey; BOW_ENCHANTABLE bM field_48311 + f Lnet/minecraft/tags/TagKey; EQUIPPABLE_ENCHANTABLE bN field_48312 + f Lnet/minecraft/tags/TagKey; CROSSBOW_ENCHANTABLE bO field_48313 + f Lnet/minecraft/tags/TagKey; VANISHING_ENCHANTABLE bP field_48314 + f Lnet/minecraft/tags/TagKey; MACE_ENCHANTABLE bQ field_50109 + f Lnet/minecraft/tags/TagKey; DAMPENS_VIBRATIONS ba field_28300 + f Lnet/minecraft/tags/TagKey; CLUSTER_MAX_HARVESTABLES bb field_29544 + f Lnet/minecraft/tags/TagKey; COMPASSES bc field_38699 + f Lnet/minecraft/tags/TagKey; HANGING_SIGNS bd field_40108 + f Lnet/minecraft/tags/TagKey; CREEPER_IGNITERS be field_41662 + f Lnet/minecraft/tags/TagKey; NOTE_BLOCK_TOP_INSTRUMENTS bf field_41757 + f Lnet/minecraft/tags/TagKey; FOOT_ARMOR bg field_48294 + f Lnet/minecraft/tags/TagKey; LEG_ARMOR bh field_48295 + f Lnet/minecraft/tags/TagKey; CHEST_ARMOR bi field_48296 + f Lnet/minecraft/tags/TagKey; HEAD_ARMOR bj field_48297 + f Lnet/minecraft/tags/TagKey; SKULLS bk field_48298 + f Lnet/minecraft/tags/TagKey; TRIMMABLE_ARMOR bl field_41890 + f Lnet/minecraft/tags/TagKey; TRIM_MATERIALS bm field_41891 + f Lnet/minecraft/tags/TagKey; TRIM_TEMPLATES bn field_41892 + f Lnet/minecraft/tags/TagKey; DECORATED_POT_SHERDS bo field_42610 + f Lnet/minecraft/tags/TagKey; DECORATED_POT_INGREDIENTS bp field_44701 + f Lnet/minecraft/tags/TagKey; SWORDS bq field_42611 + f Lnet/minecraft/tags/TagKey; AXES br field_42612 + f Lnet/minecraft/tags/TagKey; HOES bs field_42613 + f Lnet/minecraft/tags/TagKey; PICKAXES bt field_42614 + f Lnet/minecraft/tags/TagKey; SHOVELS bu field_42615 + f Lnet/minecraft/tags/TagKey; BREAKS_DECORATED_POTS bv field_42617 + f Lnet/minecraft/tags/TagKey; VILLAGER_PLANTABLE_SEEDS bw field_44591 + f Lnet/minecraft/tags/TagKey; DYEABLE bx field_48803 + f Lnet/minecraft/tags/TagKey; FOOT_ARMOR_ENCHANTABLE by field_48299 + f Lnet/minecraft/tags/TagKey; LEG_ARMOR_ENCHANTABLE bz field_48300 + f Lnet/minecraft/tags/TagKey; STONE_BRICKS c field_15531 + f Lnet/minecraft/tags/TagKey; WOODEN_BUTTONS d field_15555 + f Lnet/minecraft/tags/TagKey; STONE_BUTTONS e field_44592 + f Lnet/minecraft/tags/TagKey; BUTTONS f field_15551 + f Lnet/minecraft/tags/TagKey; WOOL_CARPETS g field_15542 + f Lnet/minecraft/tags/TagKey; WOODEN_DOORS h field_15552 + f Lnet/minecraft/tags/TagKey; WOODEN_STAIRS i field_15557 + f Lnet/minecraft/tags/TagKey; WOODEN_SLABS j field_15534 + f Lnet/minecraft/tags/TagKey; WOODEN_FENCES k field_17620 + f Lnet/minecraft/tags/TagKey; FENCE_GATES l field_40858 + f Lnet/minecraft/tags/TagKey; WOODEN_PRESSURE_PLATES m field_15540 + f Lnet/minecraft/tags/TagKey; WOODEN_TRAPDOORS n field_15550 + f Lnet/minecraft/tags/TagKey; DOORS o field_15553 + f Lnet/minecraft/tags/TagKey; SAPLINGS p field_15528 + f Lnet/minecraft/tags/TagKey; LOGS_THAT_BURN q field_23212 + f Lnet/minecraft/tags/TagKey; LOGS r field_15539 + f Lnet/minecraft/tags/TagKey; DARK_OAK_LOGS s field_15546 + f Lnet/minecraft/tags/TagKey; OAK_LOGS t field_15545 + f Lnet/minecraft/tags/TagKey; BIRCH_LOGS u field_15554 + f Lnet/minecraft/tags/TagKey; ACACIA_LOGS v field_15525 + f Lnet/minecraft/tags/TagKey; CHERRY_LOGS w field_42618 + f Lnet/minecraft/tags/TagKey; JUNGLE_LOGS x field_15538 + f Lnet/minecraft/tags/TagKey; SPRUCE_LOGS y field_15549 + f Lnet/minecraft/tags/TagKey; MANGROVE_LOGS z field_37403 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; bind a method_15102 + p 0 name + m ()V + m ()V +c net/minecraft/tags/PaintingVariantTags awo net/minecraft/class_7406 + f Lnet/minecraft/tags/TagKey; PLACEABLE a field_38929 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43384 + p 0 name + m ()V + m ()V +c net/minecraft/tags/PoiTypeTags awp net/minecraft/class_7473 + f Lnet/minecraft/tags/TagKey; ACQUIRABLE_JOB_SITE a field_39262 + f Lnet/minecraft/tags/TagKey; VILLAGE b field_39263 + f Lnet/minecraft/tags/TagKey; BEE_HOME c field_39264 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_43935 + p 0 name + m ()V + m ()V +c net/minecraft/tags/StructureTags awq net/minecraft/class_7045 + f Lnet/minecraft/tags/TagKey; EYE_OF_ENDER_LOCATED a field_37040 + f Lnet/minecraft/tags/TagKey; DOLPHIN_LOCATED b field_37041 + f Lnet/minecraft/tags/TagKey; ON_WOODLAND_EXPLORER_MAPS c field_37042 + f Lnet/minecraft/tags/TagKey; ON_OCEAN_EXPLORER_MAPS d field_37043 + f Lnet/minecraft/tags/TagKey; ON_SAVANNA_VILLAGE_MAPS e field_46158 + f Lnet/minecraft/tags/TagKey; ON_DESERT_VILLAGE_MAPS f field_46159 + f Lnet/minecraft/tags/TagKey; ON_PLAINS_VILLAGE_MAPS g field_46160 + f Lnet/minecraft/tags/TagKey; ON_TAIGA_VILLAGE_MAPS h field_46161 + f Lnet/minecraft/tags/TagKey; ON_SNOWY_VILLAGE_MAPS i field_46162 + f Lnet/minecraft/tags/TagKey; ON_JUNGLE_EXPLORER_MAPS j field_46163 + f Lnet/minecraft/tags/TagKey; ON_SWAMP_EXPLORER_MAPS k field_46164 + f Lnet/minecraft/tags/TagKey; ON_TREASURE_MAPS l field_37044 + f Lnet/minecraft/tags/TagKey; ON_TRIAL_CHAMBERS_MAPS m field_49958 + f Lnet/minecraft/tags/TagKey; CATS_SPAWN_IN n field_37404 + f Lnet/minecraft/tags/TagKey; CATS_SPAWN_AS_BLACK o field_37405 + f Lnet/minecraft/tags/TagKey; VILLAGE p field_37045 + f Lnet/minecraft/tags/TagKey; MINESHAFT q field_37046 + f Lnet/minecraft/tags/TagKey; SHIPWRECK r field_37047 + f Lnet/minecraft/tags/TagKey; RUINED_PORTAL s field_37048 + f Lnet/minecraft/tags/TagKey; OCEAN_RUIN t field_37049 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41006 + p 0 name + m ()V +c net/minecraft/tags/TagBuilder awr net/minecraft/class_3495 + f Ljava/util/List; entries a field_23688 + m ()Lnet/minecraft/tags/TagBuilder; create a method_26778 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addElement a method_26784 + p 1 elementLocation + m (Lnet/minecraft/tags/TagEntry;)Lnet/minecraft/tags/TagBuilder; add a method_27064 + p 1 entry + m ()Ljava/util/List; build b method_26782 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addOptionalElement b method_34891 + p 1 elementLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addTag c method_26787 + p 1 tagLocation + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagBuilder; addOptionalTag d method_34892 + p 1 tagLocation + m ()V +c net/minecraft/tags/TagEntry aws net/minecraft/class_3497 + f Lcom/mojang/serialization/Codec; CODEC a field_39265 + f Lcom/mojang/serialization/Codec; FULL_CODEC b field_39266 + f Lnet/minecraft/resources/ResourceLocation; id c field_15584 + f Z tag d field_39267 + f Z required e field_39268 + m ()Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; elementOrTag a method_43936 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; element a method_43937 + p 0 elementLocation + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/function/Consumer;)Z build a method_26790 + p 1 lookup + p 2 consumer + m (Lnet/minecraft/tags/TagEntry;)Lcom/mojang/datafixers/util/Either; method_43938 a method_43938 + m (Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation;)Lnet/minecraft/tags/TagEntry; method_43939 a method_43939 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/tags/TagEntry; method_43940 a method_43940 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43941 a method_43941 + m (Ljava/util/function/Consumer;)V visitRequiredDependencies a method_32831 + p 1 visitor + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;)Z verifyIfPresent a method_32832 + p 1 elementPredicate + p 2 tagPredicate + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; optionalElement b method_43942 + p 0 elementLocation + m (Lnet/minecraft/tags/TagEntry;)Lnet/minecraft/tags/TagEntry; method_43943 b method_43943 + m (Ljava/util/function/Consumer;)V visitOptionalDependencies b method_43944 + p 1 visitor + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; tag c method_43945 + p 0 tagLocation + m (Lnet/minecraft/tags/TagEntry;)Ljava/lang/Boolean; method_43946 c method_43946 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagEntry; optionalTag d method_43947 + p 0 tagLocation + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V + p 1 id + p 2 tag + p 3 required + m (Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation;Z)V + p 1 tagOrElementLocation + p 2 required + m ()V +c net/minecraft/tags/TagEntry$Lookup aws$a net/minecraft/class_3497$class_7474 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; element a method_43948 + p 1 elementLocation + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Collection; tag b method_43949 + p 1 tagLocation +c net/minecraft/tags/TagFile awt net/minecraft/class_7475 + f Lcom/mojang/serialization/Codec; CODEC a field_39269 + f Ljava/util/List; entries b comp_811 + f Z replace c comp_812 + m ()Ljava/util/List; entries a comp_811 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43950 a method_43950 + m ()Z replace b comp_812 + m (Ljava/util/List;Z)V + m ()V +c net/minecraft/tags/TagKey awu net/minecraft/class_6862 + c

Interface {@link net.fabricmc.fabric.api.tag.FabricTagKey} injected by mod fabric-convention-tags-v2

+ f Lnet/minecraft/resources/ResourceKey; registry a comp_326 + f Lnet/minecraft/resources/ResourceLocation; location b comp_327 + f Lcom/google/common/collect/Interner; VALUES c field_36394 + m ()Lnet/minecraft/resources/ResourceKey; registry a comp_326 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; codec a method_40090 + p 0 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; create a method_40092 + p 0 registry + p 1 location + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_40091 a method_40091 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40089 a method_40089 + m ()Lnet/minecraft/resources/ResourceLocation; location b comp_327 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/Codec; hashedCodec b method_40093 + p 0 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; method_40094 b method_40094 + m ()Ljava/lang/String; method_49429 c method_49429 + m (Lnet/minecraft/resources/ResourceKey;)Z isFor c method_41007 + p 1 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/tags/TagKey; method_40095 c method_40095 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; cast d method_41008 + p 1 registry + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceLocation;)V + p 1 registry + p 2 location + m ()V +c net/minecraft/tags/TagLoader awv net/minecraft/class_3503 + f Lorg/slf4j/Logger; LOGGER a field_15607 + f Ljava/util/function/Function; idToValue b field_15609 + f Ljava/lang/String; directory c field_15605 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; method_43951 a method_43951 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)V method_33175 a method_33175 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; load a method_33174 + p 1 resourceManager + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/List;)Lcom/mojang/datafixers/util/Either; build a method_43952 + p 1 lookup + p 2 entries + m (Lnet/minecraft/tags/TagEntry$Lookup;Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/tags/TagLoader$SortingEntry;)V method_51476 a method_51476 + m (Lnet/minecraft/util/DependencySorter;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51477 a method_51477 + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/tags/TagEntry;)V method_43954 a method_43954 + m (Ljava/util/Map;)Ljava/util/Map; build a method_18242 + p 1 builders + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Collection;)V method_32840 a method_32840 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; loadAndBuild b method_33176 + p 1 resourceManager + m (Ljava/util/function/Function;Ljava/lang/String;)V + p 1 idToValue + p 2 directory + m ()V +c net/minecraft/tags/TagLoader$1 awv$1 net/minecraft/class_3503$1 + f Ljava/util/Map; val$newTags a field_39270 + f Lnet/minecraft/tags/TagLoader; field_39271 b field_39271 + m (Lnet/minecraft/tags/TagLoader;Ljava/util/Map;)V +c net/minecraft/tags/TagLoader$EntryWithSource awv$a net/minecraft/class_3503$class_5145 + f Lnet/minecraft/tags/TagEntry; entry a comp_324 + f Ljava/lang/String; source b comp_325 + m ()Lnet/minecraft/tags/TagEntry; entry a comp_324 + m ()Ljava/lang/String; source b comp_325 + m (Lnet/minecraft/tags/TagEntry;Ljava/lang/String;)V +c net/minecraft/tags/TagLoader$SortingEntry awv$b net/minecraft/class_3503$class_8522 + f Ljava/util/List; entries a comp_1486 + m ()Ljava/util/List; entries a comp_1486 + m (Ljava/util/function/Consumer;Lnet/minecraft/tags/TagLoader$EntryWithSource;)V method_51479 a method_51479 + m (Ljava/util/function/Consumer;Lnet/minecraft/tags/TagLoader$EntryWithSource;)V method_51481 b method_51481 + m (Ljava/util/List;)V +c net/minecraft/tags/TagManager aww net/minecraft/class_3505 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_28312 + f Ljava/util/List; results b field_36396 + m ()Ljava/util/List; getResult a method_40096 + m (I)[Ljava/util/concurrent/CompletableFuture; method_33177 a method_33177 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagLoader;Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/tags/TagManager$LoadResult; method_33181 a method_33181 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Ljava/util/concurrent/CompletableFuture; createLoader a method_33178 + p 1 resourceManager + p 2 backgroundExecutor + p 3 entry + m (Ljava/util/List;Ljava/lang/Void;)V method_40098 a method_40098 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Ljava/util/concurrent/CompletableFuture; method_40100 b method_40100 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registryAccess +c net/minecraft/tags/TagManager$LoadResult aww$a net/minecraft/class_3505$class_6863 + f Lnet/minecraft/resources/ResourceKey; key a comp_328 + f Ljava/util/Map; tags b comp_329 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_328 + m ()Ljava/util/Map; tags b comp_329 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V +c net/minecraft/tags/TagNetworkSerialization awx net/minecraft/class_6864 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;Lnet/minecraft/tags/TagNetworkSerialization$TagOutput;)V deserializeTagsFromNetwork a method_40106 + p 0 registryKey + p 1 registry + p 2 networkPayload + p 3 output + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagNetworkSerialization$TagOutput;Lnet/minecraft/resources/ResourceLocation;Lit/unimi/dsi/fastutil/ints/IntList;)V method_40107 a method_40107 + m (Lcom/mojang/datafixers/util/Pair;)Z method_40101 a method_40101 + m (Lnet/minecraft/core/LayeredRegistryAccess;)Ljava/util/Map; serializeTagsToNetwork a method_40105 + p 0 registryAccess + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload; serializeToNetwork a method_40102 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/util/Map;Lcom/mojang/datafixers/util/Pair;)V method_40103 a method_40103 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Lcom/mojang/datafixers/util/Pair; method_40104 a method_40104 + m ()V +c net/minecraft/tags/TagNetworkSerialization$NetworkPayload awx$a net/minecraft/class_6864$class_5748 + f Ljava/util/Map; tags a field_28304 + m ()I size a method_56531 + m (Lnet/minecraft/core/Registry;)V applyToRegistry a method_56532 + p 1 registry + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_33159 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload; read b method_33160 + p 0 buffer + m (Ljava/util/Map;)V + p 1 tags +c net/minecraft/tags/TagNetworkSerialization$TagOutput awx$b net/minecraft/class_6864$class_6865 +c net/minecraft/tags/WorldPresetTags awy net/minecraft/class_7089 + f Lnet/minecraft/tags/TagKey; NORMAL a field_37406 + f Lnet/minecraft/tags/TagKey; EXTENDED b field_37407 + m (Ljava/lang/String;)Lnet/minecraft/tags/TagKey; create a method_41293 + p 0 name + m ()V + m ()V +c net/minecraft/tags/package-info awz net/minecraft/class_5994 +c net/minecraft/util/AbortableIterationConsumer axa net/minecraft/class_7927 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47542 a method_47542 +c net/minecraft/util/AbortableIterationConsumer$Continuation axa$a net/minecraft/class_7927$class_7928 + f Lnet/minecraft/util/AbortableIterationConsumer$Continuation; CONTINUE a field_41283 + f Lnet/minecraft/util/AbortableIterationConsumer$Continuation; ABORT b field_41284 + f [Lnet/minecraft/util/AbortableIterationConsumer$Continuation; $VALUES c field_41285 + m ()Z shouldAbort a method_47543 + m ()[Lnet/minecraft/util/AbortableIterationConsumer$Continuation; $values b method_47544 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/ArrayListDeque axb net/minecraft/class_8623 + f I MIN_GROWTH a field_45067 + f [Ljava/lang/Object; contents b field_45068 + f I head c field_45069 + f I size d field_45070 + m ()I capacity a method_52450 + m (I)I getIndex a method_52451 + p 1 index + m (II)V verifyIndexInRange a method_52452 + p 0 index + p 1 size + m ([Ljava/lang/Object;I)V copyCount a method_52453 + p 1 output + p 2 count + m (I)V verifyIndexInRange b method_52455 + p 1 index + m ()V grow c method_52454 + m (I)Ljava/lang/Object; getInner c method_52456 + p 1 index + m ()V + m (I)V + p 1 size +c net/minecraft/util/ArrayListDeque$DescendingIterator axb$a net/minecraft/class_8623$class_8624 + f Lnet/minecraft/util/ArrayListDeque; field_45071 a field_45071 + f I index b field_45072 + m (Lnet/minecraft/util/ArrayListDeque;)V +c net/minecraft/util/ArrayListDeque$ReversedView axb$b net/minecraft/class_8623$class_9633 + f Lnet/minecraft/util/ArrayListDeque; field_51345 a field_51345 + f Lnet/minecraft/util/ArrayListDeque; source b field_51346 + m (I)I reverseIndex a method_59514 + p 1 index + m (Lnet/minecraft/util/ArrayListDeque;Lnet/minecraft/util/ArrayListDeque;)V + p 2 source +c net/minecraft/util/BitStorage axc net/minecraft/class_6490 + m ()[J getRaw a method_15212 + c Gets the long array that is used to store the data in this BitArray. This is useful for sending packet data. + m (I)I get a method_15211 + c Gets the entry at the given index + p 1 index + m (II)I getAndSet a method_15214 + p 1 index + p 2 value + m (Ljava/util/function/IntConsumer;)V getAll a method_21739 + p 1 consumer + m ([I)V unpack a method_39892 + p 1 array + m ()I getSize b method_15215 + m (II)V set b method_15210 + c Sets the entry at the given location to the given value + p 1 index + p 2 value + m ()I getBits c method_34896 + m ()Lnet/minecraft/util/BitStorage; copy d method_39939 +c net/minecraft/util/Brightness axd net/minecraft/class_8104 + f Lcom/mojang/serialization/Codec; LIGHT_VALUE_CODEC a field_42262 + f Lcom/mojang/serialization/Codec; CODEC b field_42263 + f Lnet/minecraft/util/Brightness; FULL_BRIGHT c field_42264 + f I block d comp_1240 + f I sky e comp_1241 + m ()I pack a method_48763 + m (I)Lnet/minecraft/util/Brightness; unpack a method_48764 + p 0 packedBrightness + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48765 a method_48765 + m ()I block b comp_1240 + m ()I sky c comp_1241 + m (II)V + m ()V +c net/minecraft/util/ByIdMap axe net/minecraft/class_7995 + m (I[Ljava/lang/Object;Ljava/lang/Object;I)Ljava/lang/Object; method_47911 a method_47911 + m (Ljava/util/function/IntFunction;Ljava/lang/Object;I)Ljava/lang/Object; method_47912 a method_47912 + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)Ljava/util/function/IntFunction; createMap a method_47913 + p 0 keyExtractor + p 1 values + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy;)Ljava/util/function/IntFunction; continuous a method_47914 + p 0 keyExtractor + p 1 values + p 2 outOfBoundsStrategy + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;Ljava/lang/Object;)Ljava/util/function/IntFunction; sparse a method_47915 + p 0 keyExtractor + p 1 values + p 2 fallback + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47916 a method_47916 + m (Ljava/util/function/ToIntFunction;[Ljava/lang/Object;)[Ljava/lang/Object; createSortedArray b method_47917 + p 0 keyExtractor + p 1 values + m ([Ljava/lang/Object;II)Ljava/lang/Object; method_47918 b method_47918 + m ()V +c net/minecraft/util/ByIdMap$OutOfBoundsStrategy axe$a net/minecraft/class_7995$class_7996 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; ZERO a field_41664 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; WRAP b field_41665 + f Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; CLAMP c field_41666 + f [Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; $VALUES d field_41667 + m ()[Lnet/minecraft/util/ByIdMap$OutOfBoundsStrategy; $values a method_47919 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/ClassInstanceMultiMap axf net/minecraft/class_3509 + f Ljava/util/Map; byClass a field_15636 + f Ljava/lang/Class; baseClass b field_15637 + f Ljava/util/List; allInstances c field_15635 + m ()Ljava/util/List; getAllInstances a method_34897 + m (Ljava/lang/Class;)Ljava/util/Collection; find a method_15216 + p 1 type + m (Ljava/lang/Class;)Ljava/util/List; method_15217 b method_15217 + m (Ljava/lang/Class;)V + p 1 baseClass +c net/minecraft/util/ClassTreeIdRegistry axg net/minecraft/class_9227 + f I NO_ID_VALUE a field_49052 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; classToLastIdCache b field_49053 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_56938 a method_56938 + m (Ljava/lang/Class;)I getLastIdFor a method_56939 + p 1 clazz + m (Ljava/lang/Class;)I getCount b method_56940 + p 1 clazz + m (Ljava/lang/Class;)I define c method_56941 + p 1 clazz + m ()V +c net/minecraft/util/ColorRGBA axh net/minecraft/class_8805 + f Lcom/mojang/serialization/Codec; CODEC a field_46234 + f I rgba b comp_1971 + f Ljava/lang/String; CUSTOM_COLOR_PREFIX c field_46235 + m ()I rgba a comp_1971 + m (Ljava/lang/NumberFormatException;)Ljava/lang/String; method_53913 a method_53913 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53914 a method_53914 + m ()Ljava/lang/String; formatValue b method_53915 + m (Ljava/lang/String;)Ljava/lang/String; method_53916 b method_53916 + m (I)V + m ()V +c net/minecraft/util/CommonColors axi net/minecraft/class_8012 + f I WHITE a field_42973 + f I BLACK b field_42974 + f I GRAY c field_44941 + f I LIGHT_GRAY d field_45073 + f I LIGHTER_GRAY e field_49788 + f I RED f field_41758 + f I GREEN g field_52312 + f I BLUE h field_52313 + f I SOFT_RED i field_46652 + f I YELLOW j field_46767 + f I SOFT_YELLOW k field_46768 + m ()V +c net/minecraft/util/CommonLinks axj net/minecraft/class_8216 + f Ljava/net/URI; GDPR a field_43117 + f Ljava/net/URI; EULA b field_43118 + f Ljava/net/URI; PRIVACY_STATEMENT c field_45074 + f Ljava/net/URI; ATTRIBUTION d field_43119 + f Ljava/net/URI; LICENSES e field_43120 + f Ljava/net/URI; BUY_MINECRAFT_JAVA f field_43121 + f Ljava/net/URI; ACCOUNT_SETTINGS g field_43122 + f Ljava/net/URI; SNAPSHOT_FEEDBACK h field_43123 + f Ljava/net/URI; RELEASE_FEEDBACK i field_43124 + f Ljava/net/URI; SNAPSHOT_BUGS_FEEDBACK j field_43125 + f Ljava/net/URI; GENERAL_HELP k field_46769 + f Ljava/net/URI; ACCESSIBILITY_HELP l field_43126 + f Ljava/net/URI; REPORTING_HELP m field_43127 + f Ljava/net/URI; SUSPENSION_HELP n field_43128 + f Ljava/net/URI; BLOCKING_HELP o field_43129 + f Ljava/net/URI; SYMLINK_HELP p field_44949 + f Ljava/net/URI; START_REALMS_TRIAL q field_43130 + f Ljava/net/URI; BUY_REALMS r field_43131 + f Ljava/net/URI; REALMS_TERMS s field_43132 + f Ljava/net/URI; REALMS_CONTENT_CREATION t field_43133 + m (Ljava/lang/String;Ljava/util/UUID;)Ljava/lang/String; extendRealms a method_49719 + p 0 subscriptionId + p 1 profileId + m (Ljava/lang/String;Ljava/util/UUID;Z)Ljava/lang/String; extendRealms a method_49720 + p 0 subscriptionId + p 1 profileId + p 2 isTrial + m ()V + m ()V +c net/minecraft/util/CrudeIncrementalIntIdentityHashBiMap axk net/minecraft/class_3513 + f I NOT_FOUND b field_29828 + f Ljava/lang/Object; EMPTY_SLOT c field_15650 + f F LOADFACTOR d field_29829 + f [Ljava/lang/Object; keys e field_15651 + f [I values f field_15646 + f [Ljava/lang/Object; byId g field_15647 + f I nextId h field_15649 + f I size i field_15648 + m ()V clear a method_15229 + m (Ljava/lang/Object;I)V addMapping a method_15230 + c Puts the provided object value with the integer key. + p 1 object + p 2 intKey + m ()Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; copy b method_39940 + m (Ljava/lang/Object;)Z contains b method_34904 + p 1 value + m (Ljava/lang/Object;I)I indexOf b method_15232 + p 1 object + p 2 startIndex + m (I)Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; create c method_37913 + p 0 size + m ()I nextId d method_15226 + m (I)Z contains d method_34903 + p 1 value + m (Ljava/lang/Object;)I add d method_15225 + c Adds the given object while expanding this map + p 1 object + m (I)I getValue e method_15222 + p 1 key + m (Ljava/lang/Object;)I hash e method_15228 + p 1 object + m (I)V grow f method_15224 + c Rehashes the map to the new capacity + p 1 capacity + m (I)I findEmpty g method_15223 + p 1 startIndex + m (I)V + p 1 size + m ([Ljava/lang/Object;[I[Ljava/lang/Object;II)V + p 1 keys + p 2 values + p 3 byId + p 4 nextId + p 5 size + m ()V +c net/minecraft/util/Crypt axl net/minecraft/class_3515 + f Ljava/lang/String; SIGNING_ALGORITHM a field_39109 + f I SIGNATURE_BYTES b field_40111 + f Ljava/lang/String; RSA_PUBLIC_KEY_HEADER c field_39033 + f Ljava/lang/String; MIME_LINE_SEPARATOR d field_39034 + f Ljava/util/Base64$Encoder; MIME_ENCODER e field_39272 + f Lcom/mojang/serialization/Codec; PUBLIC_KEY_CODEC f field_39035 + f Lcom/mojang/serialization/Codec; PRIVATE_KEY_CODEC g field_39036 + f Ljava/lang/String; SYMMETRIC_ALGORITHM h field_29830 + f I SYMMETRIC_BITS i field_29831 + f Ljava/lang/String; ASYMMETRIC_ALGORITHM j field_29832 + f I ASYMMETRIC_BITS k field_29833 + f Ljava/lang/String; BYTE_ENCODING l field_29834 + f Ljava/lang/String; HASH_ALGORITHM m field_29835 + f Ljava/lang/String; PEM_RSA_PRIVATE_KEY_HEADER n field_39037 + f Ljava/lang/String; PEM_RSA_PRIVATE_KEY_FOOTER o field_39038 + f Ljava/lang/String; RSA_PUBLIC_KEY_FOOTER p field_39039 + m ()Ljavax/crypto/SecretKey; generateSecretKey a method_15239 + c Generate a new shared secret AES key from a secure random source + m (ILjava/lang/String;Ljava/security/Key;)Ljavax/crypto/Cipher; setupCipher a method_15241 + c Creates the Cipher Instance. + p 0 opMode + p 1 transformation + p 2 key + m (ILjava/security/Key;)Ljavax/crypto/Cipher; getCipher a method_15235 + c Creates a Cipher instance using the AES/CFB8/NoPadding algorithm. Used for protocol encryption. + p 0 opMode + p 1 key + m (ILjava/security/Key;[B)[B cipherData a method_15244 + c Encrypt or decrypt byte[] data using the specified key + p 0 opMode + p 1 key + p 2 data + m (Ljava/lang/String;)Ljava/security/PrivateKey; stringToPemRsaPrivateKey a method_43519 + p 0 keyBase64 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/util/Crypt$ByteArrayToKeyFunction;)Ljava/security/Key; rsaStringToKey a method_43520 + p 0 keyBase64 + p 1 header + p 2 footer + p 3 keyFunction + m (Ljava/lang/String;Ljava/security/PublicKey;Ljavax/crypto/SecretKey;)[B digestData a method_15240 + c Compute a serverId hash for use by sendSessionRequest() + p 0 serverId + p 1 publicKey + p 2 secretKey + m (Ljava/security/Key;[B)[B encryptUsingKey a method_15238 + c Encrypt byte[] data with RSA public key + p 0 key + p 1 data + m (Ljava/security/PrivateKey;)Ljava/lang/String; pemRsaPrivateKeyToString a method_43521 + p 0 key + m (Ljava/security/PrivateKey;[B)Ljavax/crypto/SecretKey; decryptByteToSecretKey a method_15234 + c Decrypt shared secret AES key using RSA private key + p 0 key + p 1 secretKeyEncrypted + m (Ljava/security/PublicKey;)Ljava/lang/String; rsaPublicKeyToString a method_43522 + p 0 key + m ([B)Ljava/security/PublicKey; byteToPublicKey a method_15242 + c Create a new PublicKey from encoded X.509 data + p 0 encodedKey + m ([[B)[B digestData a method_15236 + p 0 data + m ()Ljava/security/KeyPair; generateKeyPair b method_15237 + c Generates RSA KeyPair + m (Ljava/lang/String;)Ljava/security/PublicKey; stringToRsaPublicKey b method_43524 + p 0 keyBase64 + m (Ljava/security/Key;[B)[B decryptUsingKey b method_15243 + c Decrypt byte[] data with RSA private key + p 0 key + p 1 data + m ([B)Ljava/security/PrivateKey; byteToPrivateKey b method_43525 + p 0 keyBytes + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43526 c method_43526 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43527 d method_43527 + m ()V + m ()V +c net/minecraft/util/Crypt$ByteArrayToKeyFunction axl$a net/minecraft/class_3515$class_7424 +c net/minecraft/util/Crypt$SaltSignaturePair axl$b net/minecraft/class_3515$class_7425 + f Lnet/minecraft/util/Crypt$SaltSignaturePair; EMPTY a field_39040 + f J salt b comp_739 + f [B signature c comp_740 + m ()Z isValid a method_43528 + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/util/Crypt$SaltSignaturePair;)V write a method_43529 + p 0 buffer + p 1 signaturePair + m ()[B saltAsBytes b method_43530 + m ()J salt c comp_739 + m ()[B signature d comp_740 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (J[B)V + m ()V +c net/minecraft/util/Crypt$SaltSupplier axl$c net/minecraft/class_3515$class_7426 + f Ljava/security/SecureRandom; secureRandom a field_39041 + m ()J getLong a method_43531 + m ()V + m ()V +c net/minecraft/util/CryptException axm net/minecraft/class_5525 + m (Ljava/lang/Throwable;)V + p 1 cause +c net/minecraft/util/CsvOutput axn net/minecraft/class_4456 + f Ljava/lang/String; LINE_SEPARATOR a field_29836 + f Ljava/lang/String; FIELD_SEPARATOR b field_29837 + f Ljava/io/Writer; output c field_20284 + f I columnCount d field_20285 + m ()Lnet/minecraft/util/CsvOutput$Builder; builder a method_21627 + m (Ljava/lang/Object;)Ljava/lang/String; getStringValue a method_21628 + p 0 value + m (Ljava/util/stream/Stream;)V writeLine a method_21629 + p 1 data + m ([Ljava/lang/Object;)V writeRow a method_21630 + p 1 data + m (Ljava/io/Writer;Ljava/util/List;)V + p 1 output + p 2 firstRow +c net/minecraft/util/CsvOutput$Builder axn$a net/minecraft/class_4456$class_4457 + f Ljava/util/List; headers a field_20286 + m (Ljava/io/Writer;)Lnet/minecraft/util/CsvOutput; build a method_21631 + p 1 output + m (Ljava/lang/String;)Lnet/minecraft/util/CsvOutput$Builder; addColumn a method_21632 + p 1 header + m ()V +c net/minecraft/util/CubicSampler axo net/minecraft/class_6491 + f I GAUSSIAN_SAMPLE_RADIUS a field_33222 + f I GAUSSIAN_SAMPLE_BREADTH b field_33223 + f [D GAUSSIAN_SAMPLE_KERNEL c field_22449 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/util/CubicSampler$Vec3Fetcher;)Lnet/minecraft/world/phys/Vec3; gaussianSampleVec3 a method_24895 + p 0 vec + p 1 fetcher + m ()V + m ()V +c net/minecraft/util/CubicSampler$Vec3Fetcher axo$a net/minecraft/class_6491$class_4859 +c net/minecraft/util/CubicSpline axp net/minecraft/class_6492 + m ()Ljava/lang/String; parityString a method_39225 + m (F)Lnet/minecraft/util/CubicSpline; constant a method_39427 + p 0 value + m (FLnet/minecraft/util/CubicSpline;F)Lnet/minecraft/util/CubicSpline$1Point; method_39226 a method_39226 + m (Lnet/minecraft/util/CubicSpline$CoordinateVisitor;)Lnet/minecraft/util/CubicSpline; mapAll a method_41187 + p 1 visitor + m (Lnet/minecraft/util/CubicSpline$Multipoint;)Ljava/lang/Record; method_39227 a method_39227 + m (Lnet/minecraft/util/CubicSpline$Multipoint;I)Lnet/minecraft/util/CubicSpline$1Point; method_39228 a method_39228 + m (Lnet/minecraft/util/CubicSpline;)Lcom/mojang/datafixers/util/Either; method_39229 a method_39229 + m (Lnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline$Builder; builder a method_37918 + p 0 coordinate + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;)Lnet/minecraft/util/CubicSpline$Builder; builder a method_39502 + p 0 coordinate + p 1 valueTransformer + m (Lnet/minecraft/util/ToFloatFunction;Ljava/util/List;)Lnet/minecraft/util/CubicSpline$Multipoint; method_39230 a method_39230 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/CubicSpline; method_39231 a method_39231 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_39232 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39233 a method_39233 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39234 a method_39234 + m (Lnet/minecraft/util/CubicSpline$Multipoint;)Ljava/util/List; method_39235 b method_39235 +c net/minecraft/util/CubicSpline$1Point axp$a net/minecraft/class_6492$class_6737 + f F location a comp_225 + f Lnet/minecraft/util/CubicSpline; value b comp_226 + f F derivative c comp_227 + m ()F location a comp_225 + m ()Lnet/minecraft/util/CubicSpline; value b comp_226 + m ()F derivative c comp_227 + m (FLnet/minecraft/util/CubicSpline;F)V +c net/minecraft/util/CubicSpline$Builder axp$b net/minecraft/class_6492$class_6493 + f Lnet/minecraft/util/ToFloatFunction; coordinate a field_34382 + f Lnet/minecraft/util/ToFloatFunction; valueTransformer b field_35661 + f Lit/unimi/dsi/fastutil/floats/FloatList; locations c field_34383 + f Ljava/util/List; values d field_34384 + f Lit/unimi/dsi/fastutil/floats/FloatList; derivatives e field_34385 + m ()Lnet/minecraft/util/CubicSpline; build a method_37923 + m (FF)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_41294 + p 1 location + p 2 value + m (FFF)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_37924 + p 1 location + p 2 value + p 3 derivative + m (FLnet/minecraft/util/CubicSpline;)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_41295 + p 1 location + p 2 value + m (FLnet/minecraft/util/CubicSpline;F)Lnet/minecraft/util/CubicSpline$Builder; addPoint a method_37925 + p 1 location + p 2 value + p 3 derivative + m (Lnet/minecraft/util/ToFloatFunction;)V + p 1 coordinate + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;)V + p 1 coordinate + p 2 valueTransformer +c net/minecraft/util/CubicSpline$Constant axp$c net/minecraft/class_6492$class_6494 + f F value b comp_228 + m ()F value d comp_228 + m (F)V +c net/minecraft/util/CubicSpline$CoordinateVisitor axp$d net/minecraft/class_6492$class_7073 +c net/minecraft/util/CubicSpline$Multipoint axp$e net/minecraft/class_6492$class_6738 + f Lnet/minecraft/util/ToFloatFunction; coordinate b comp_229 + f [F locations c comp_230 + f Ljava/util/List; values d comp_231 + f [F derivatives e comp_232 + f F minValue f comp_532 + f F maxValue g comp_533 + m (D)Ljava/lang/String; method_39236 a method_39236 + m (F[FF[FI)F linearExtend a method_41297 + p 0 coordinate + p 1 locations + p 2 value + p 3 derivatives + p 4 index + m (F[FI)Z method_41298 a method_41298 + m (Lnet/minecraft/util/CubicSpline$CoordinateVisitor;Lnet/minecraft/util/CubicSpline;)Lnet/minecraft/util/CubicSpline; method_41188 a method_41188 + m (Lnet/minecraft/util/ToFloatFunction;[FLjava/util/List;[F)Lnet/minecraft/util/CubicSpline$Multipoint; create a method_41299 + p 0 coordinate + p 1 locations + p 2 values + p 3 derivatives + m ([F)Ljava/lang/String; toString a method_39238 + p 1 locations + m ([FF)I findIntervalStart a method_41300 + p 0 locations + p 1 start + m ([FI)D method_39239 a method_39239 + m ([FLjava/util/List;[F)V validateSizes a method_41301 + p 0 locations + p 1 values + p 2 derivatives + m ()Lnet/minecraft/util/ToFloatFunction; coordinate d comp_229 + m ()[F locations e comp_230 + m ()Ljava/util/List; values f comp_231 + m ()[F derivatives g comp_232 + m (Lnet/minecraft/util/ToFloatFunction;[FLjava/util/List;[FFF)V + p 1 coordinate + p 2 locations + p 3 values + p 4 derivatives + p 5 minValue + p 6 maxValue +c net/minecraft/util/DebugBuffer axq net/minecraft/class_5831 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; data a field_28810 + f Ljava/util/concurrent/atomic/AtomicInteger; index b field_28811 + m ()Ljava/util/List; dump a method_33720 + m (Ljava/lang/Object;)V push a method_33721 + p 1 value + m (I)V + p 1 length +c net/minecraft/util/DelegateDataOutput axr net/minecraft/class_8941 + f Ljava/io/DataOutput; parent a field_47218 + m (Ljava/io/DataOutput;)V + p 1 parent +c net/minecraft/util/DependencySorter axs net/minecraft/class_8523 + f Ljava/util/Map; contents a field_44702 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)V method_51482 a method_51482 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z isCyclic a method_51483 + p 0 dependencies + p 1 source + p 2 target + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/lang/Object;Ljava/util/function/BiConsumer;)V visitDependenciesAndElement a method_51484 + p 1 dependencies + p 2 visited + p 3 element + p 4 action + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51485 a method_51485 + m (Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)Lnet/minecraft/util/DependencySorter; addEntry a method_51486 + p 1 key + p 2 value + m (Ljava/util/function/BiConsumer;)V orderByDependencies a method_51487 + p 1 action + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Lnet/minecraft/util/DependencySorter$Entry;)V method_51488 b method_51488 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V addDependencyIfNotCyclic b method_51489 + p 0 dependencies + p 1 source + p 2 target + m (Lcom/google/common/collect/Multimap;Ljava/util/Set;Ljava/util/function/BiConsumer;Ljava/lang/Object;)V method_51490 b method_51490 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51491 c method_51491 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)V method_51492 d method_51492 + m (Lcom/google/common/collect/Multimap;Ljava/lang/Object;Ljava/lang/Object;)Z method_51493 e method_51493 + m ()V +c net/minecraft/util/DependencySorter$Entry axs$a net/minecraft/class_8523$class_8524 + m (Ljava/util/function/Consumer;)V visitRequiredDependencies a method_51478 + p 1 visitor + m (Ljava/util/function/Consumer;)V visitOptionalDependencies b method_51480 + p 1 visitor +c net/minecraft/util/DirectoryLock axt net/minecraft/class_5125 + f Ljava/lang/String; LOCK_FILE a field_29838 + f Ljava/nio/channels/FileChannel; lockFile b field_23692 + f Ljava/nio/channels/FileLock; lock c field_23693 + f Ljava/nio/ByteBuffer; DUMMY d field_25353 + m ()Z isValid a method_26802 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/DirectoryLock; create a method_26803 + p 0 path + m (Ljava/nio/file/Path;)Z isLocked b method_26804 + p 0 path + m (Ljava/nio/channels/FileChannel;Ljava/nio/channels/FileLock;)V + p 1 lockFile + p 2 lock + m ()V +c net/minecraft/util/DirectoryLock$LockException axt$a net/minecraft/class_5125$class_5126 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/DirectoryLock$LockException; alreadyLocked a method_26805 + p 0 path + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 1 path + p 2 message +c net/minecraft/util/EncoderCache axu net/minecraft/class_9684 + f Lcom/google/common/cache/LoadingCache; cache a field_51504 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrap a method_59856 + p 1 codec + m (I)V + p 1 maxSize +c net/minecraft/util/EncoderCache$1 axu$1 net/minecraft/class_9684$1 + m (Lnet/minecraft/util/EncoderCache$Key;)Lcom/mojang/serialization/DataResult; load a method_59857 + p 1 key + m (Lnet/minecraft/util/EncoderCache;)V +c net/minecraft/util/EncoderCache$2 axu$2 net/minecraft/class_9684$2 + f Lcom/mojang/serialization/Codec; val$codec a field_51505 + f Lnet/minecraft/util/EncoderCache; field_51506 b field_51506 + m (Ljava/lang/Object;)Ljava/lang/Object; method_59890 a method_59890 + m (Lnet/minecraft/util/EncoderCache;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/EncoderCache$Key axu$a net/minecraft/class_9684$class_9685 + f Lcom/mojang/serialization/Codec; codec a comp_2658 + f Ljava/lang/Object; value b comp_2659 + f Lcom/mojang/serialization/DynamicOps; ops c comp_2660 + m ()Lcom/mojang/serialization/DataResult; resolve a method_59858 + m ()Lcom/mojang/serialization/Codec; codec b comp_2658 + m ()Ljava/lang/Object; value c comp_2659 + m ()Lcom/mojang/serialization/DynamicOps; ops d comp_2660 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)V +c net/minecraft/util/ExceptionCollector axv net/minecraft/class_5127 + f Ljava/lang/Throwable; result a field_23694 + m ()V throwIfPresent a method_26806 + m (Ljava/lang/Throwable;)V add a method_26807 + p 1 exception + m ()V +c net/minecraft/util/ExtraCodecs axw net/minecraft/class_5699 + f Lcom/mojang/serialization/Codec; RESOURCE_PATH_CODEC A field_45075 + f Lcom/mojang/serialization/Codec; PROPERTY B field_40727 + f Lcom/mojang/serialization/MapCodec; GAME_PROFILE_WITHOUT_PROPERTIES C field_45076 + f Lcom/mojang/serialization/Codec; JSON a field_40721 + f Lcom/mojang/serialization/Codec; JAVA b field_46236 + f Lcom/mojang/serialization/Codec; VECTOR3F c field_40723 + f Lcom/mojang/serialization/Codec; VECTOR4F d field_51364 + f Lcom/mojang/serialization/Codec; QUATERNIONF_COMPONENTS e field_42265 + f Lcom/mojang/serialization/Codec; AXISANGLE4F f field_42266 + f Lcom/mojang/serialization/Codec; QUATERNIONF g field_42267 + f Lcom/mojang/serialization/Codec; MATRIX4F h field_42268 + f Lcom/mojang/serialization/Codec; ARGB_COLOR_CODEC i field_51365 + f Lcom/mojang/serialization/Codec; UNSIGNED_BYTE j field_49012 + f Lcom/mojang/serialization/Codec; NON_NEGATIVE_INT k field_33441 + f Lcom/mojang/serialization/Codec; POSITIVE_INT l field_33442 + f Lcom/mojang/serialization/Codec; POSITIVE_FLOAT m field_34387 + f Lcom/mojang/serialization/Codec; PATTERN n field_37408 + f Lcom/mojang/serialization/Codec; INSTANT_ISO8601 o field_39042 + f Lcom/mojang/serialization/Codec; BASE64_STRING p field_39273 + f Lcom/mojang/serialization/Codec; ESCAPED_STRING q field_46165 + f Lcom/mojang/serialization/Codec; TAG_OR_ELEMENT_ID r field_39274 + f Ljava/util/function/Function; toOptionalLong s field_39395 + f Ljava/util/function/Function; fromOptionalLong t field_39396 + f Lcom/mojang/serialization/Codec; BIT_SET u field_40724 + f Lcom/mojang/serialization/Codec; PROPERTY_MAP v field_40725 + f Lcom/mojang/serialization/Codec; PLAYER_NAME w field_49183 + f Lcom/mojang/serialization/Codec; GAME_PROFILE x field_40726 + f Lcom/mojang/serialization/Codec; NON_EMPTY_STRING y field_41759 + f Lcom/mojang/serialization/Codec; CODEPOINT z field_44703 + m ()Ljava/lang/String; method_49430 a method_49430 + m (FFLjava/util/function/Function;)Lcom/mojang/serialization/Codec; floatRangeMinExclusiveWithMessage a method_37928 + p 0 min + p 1 max + p 2 errorMessage + m (FFLjava/util/function/Function;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_48108 a method_48108 + m (II)Lcom/mojang/serialization/Codec; intRange a method_48766 + p 0 min + p 1 max + m (IILjava/lang/Integer;)Ljava/lang/String; method_48767 a method_48767 + m (IILjava/util/function/Function;)Lcom/mojang/serialization/Codec; intRangeWithMessage a method_36241 + p 0 min + p 1 max + p 2 errorMessage + m (IILjava/util/function/Function;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_48111 a method_48111 + m (ILjava/util/Map;)Lcom/mojang/serialization/DataResult; method_57149 a method_57149 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; method_43958 a method_43958 + m (Lcom/mojang/authlib/GameProfile;Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/authlib/GameProfile; method_46370 a method_46370 + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/String;Lcom/mojang/authlib/properties/Property;)V method_46371 a method_46371 + m (Lcom/mojang/authlib/properties/Property;)Ljava/util/Optional; method_46372 a method_46372 + m (Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/datafixers/util/Either; method_46373 a method_46373 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/lang/String;Ljava/util/List;)V method_46374 a method_46374 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/util/List;)V method_46375 a method_46375 + m (Lcom/mojang/authlib/properties/PropertyMap;Ljava/util/Map;)V method_46376 a method_46376 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/authlib/properties/PropertyMap; method_46377 a method_46377 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; nonEmptyList a method_36973 + p 0 codec + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; sizeLimitedMap a method_57153 + p 0 mapCodec + p 1 maxSize + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; orCompressed a method_39512 + p 0 first + p 1 second + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_37930 a method_37930 + m (Lcom/mojang/serialization/Codec;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; intervalCodec a method_37931 + p 0 codec + p 1 minFieldName + p 2 maxFieldName + p 3 factory + p 4 minGetter + p 5 maxGetter + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; overrideLifecycle a method_56942 + p 0 codec + p 1 lifecycleGetter + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; overrideLifecycle a method_39504 + p 0 codec + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Codec; converter a method_53918 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;)Ljava/lang/Object; method_53919 a method_53919 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_53920 a method_53920 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; asOptionalLong a method_44167 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; orCompressed a method_53921 + p 0 first + p 1 second + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52459 a method_52459 + m (Ljava/lang/Float;)Ljava/lang/String; method_37932 a method_37932 + m (Ljava/lang/Integer;)Ljava/lang/String; method_36242 a method_36242 + m (Ljava/lang/Object;)Lcom/mojang/serialization/Codec$ResultFunction; orElsePartial a method_39028 + p 0 value + m (Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/String; method_49431 a method_49431 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_52460 a method_52460 + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; dispatchOptionalValue a method_54941 + p 2 codec + p 3 keyGetter + p 4 codecGetter + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/authlib/properties/Property; method_46381 a method_46381 + m (Ljava/lang/String;Ljava/util/regex/PatternSyntaxException;)Ljava/lang/String; method_49433 a method_49433 + m (Ljava/time/format/DateTimeFormatter;)Lcom/mojang/serialization/Codec; temporalCodec a method_53700 + p 0 dateTimeFormatter + m (Ljava/time/format/DateTimeFormatter;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53701 a method_53701 + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_46382 a method_46382 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48115 a method_48115 + m (Ljava/util/Map;I)Ljava/lang/String; method_57152 a method_57152 + m (Ljava/util/Optional;)Ljava/util/OptionalLong; method_44168 a method_44168 + m (Ljava/util/OptionalLong;)Ljava/util/Optional; method_44169 a method_44169 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/serialization/DataResult; method_37935 a method_37935 + m (Ljava/util/function/BiFunction;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_37936 a method_37936 + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_37937 a method_37937 + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37938 a method_37938 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; retrieveContext a method_40110 + p 0 retriever + m (Ljava/util/function/Function;Ljava/lang/Float;)Ljava/lang/String; method_49434 a method_49434 + m (Ljava/util/function/Function;Ljava/lang/Integer;)Ljava/lang/String; method_49435 a method_49435 + m (Ljava/util/function/Function;Ljava/util/Collection;)Lcom/mojang/serialization/DataResult; method_40111 a method_40111 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Either; method_37939 a method_37939 + m (Ljava/util/function/IntFunction;Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_39509 a method_39509 + m (Ljava/util/function/ToIntFunction;ILjava/lang/Object;)Lcom/mojang/serialization/DataResult; method_39510 a method_39510 + m (Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;I)Lcom/mojang/serialization/Codec; idResolverCodec a method_39511 + p 0 encoder + p 1 decoder + p 2 notFoundValue + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_46384 a method_46384 + m (Lnet/minecraft/core/HolderSet;)Lcom/mojang/serialization/DataResult; method_48113 a method_48113 + m (Lorg/joml/AxisAngle4f;)Lorg/joml/Vector3f; method_48768 a method_48768 + m (Lorg/joml/Matrix4f;)Ljava/util/List; method_48769 a method_48769 + m (Lorg/joml/Quaternionf;)Ljava/util/List; method_48777 a method_48777 + m (Lorg/joml/Vector3f;)Ljava/util/List; method_46385 a method_46385 + m (Lorg/joml/Vector4f;)Ljava/lang/Integer; method_59549 a method_59549 + m ([B)Ljava/lang/String; method_43960 a method_43960 + m ()Ljava/lang/String; method_49436 b method_49436 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/ExtraCodecs$TagOrElementLocation; method_43961 b method_43961 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; nonEmptyHolderSet b method_40113 + p 0 codec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)Lnet/minecraft/util/ExtraCodecs$StrictUnboundedMapCodec; strictUnboundedMap b method_53703 + p 0 key + p 1 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52462 b method_52462 + m (Ljava/lang/Integer;)Ljava/lang/String; method_36246 b method_36246 + m (Ljava/lang/Object;)Ljava/lang/String; method_49442 b method_49442 + m (Ljava/lang/String;)Ljava/lang/String; method_52464 b method_52464 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48771 b method_48771 + m (Ljava/util/function/BiFunction;Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_37942 b method_37942 + m (Ljava/util/function/Function;)Ljava/util/function/Function; ensureHomogenous b method_40114 + p 0 typeGetter + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_37943 b method_37943 + m (Lorg/joml/AxisAngle4f;)Ljava/lang/Float; method_48772 b method_48772 + m (Lorg/joml/Vector4f;)Ljava/util/List; method_59550 b method_59550 + m ()Ljava/lang/String; method_49438 c method_49438 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; catchDecoderException c method_42114 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46388 c method_46388 + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_39514 c method_39514 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_51494 c method_51494 + m (Ljava/util/List;)Lorg/joml/Matrix4f; method_48776 c method_48776 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/util/List; method_37944 c method_37944 + m ()Ljava/lang/String; method_49440 d method_49440 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; object2BooleanMap d method_53058 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48775 d method_48775 + m (Ljava/lang/Integer;)Ljava/lang/String; method_49441 d method_49441 + m (Ljava/lang/String;)Ljava/lang/String; method_51495 d method_51495 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_59551 d method_59551 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; optionalEmptyMap e method_57155 + p 0 codec + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_56907 e method_56907 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_48114 e method_48114 + m (Ljava/util/List;)Lorg/joml/Quaternionf; method_59552 e method_59552 + m (Ljava/lang/Integer;)Ljava/lang/String; method_56908 f method_56908 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57156 f method_57156 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_48778 f method_48778 + m (Ljava/lang/String;)Ljava/lang/String; method_57157 g method_57157 + m (Ljava/util/List;)Lorg/joml/Vector4f; method_48779 g method_48779 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43959 h method_43959 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_46389 h method_46389 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53826 i method_53826 + m (Ljava/util/List;)Lorg/joml/Vector3f; method_46391 i method_46391 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_43962 j method_43962 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_41302 k method_41302 + m ()V + m ()V +c net/minecraft/util/ExtraCodecs$1 axw$1 net/minecraft/class_5699$1 + f Ljava/lang/Object; val$value a field_35173 + m (Lorg/apache/commons/lang3/mutable/MutableObject;)Ljava/lang/String; method_49444 a method_49444 + m (Ljava/lang/Object;)V +c net/minecraft/util/ExtraCodecs$2 axw$2 net/minecraft/class_5699$2 + f Lcom/mojang/serialization/Codec; val$compressed a field_35662 + f Lcom/mojang/serialization/Codec; val$normal b field_35663 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$3 axw$3 net/minecraft/class_5699$3 + f Lcom/mojang/serialization/MapCodec; val$compressed a field_46237 + f Lcom/mojang/serialization/MapCodec; val$normal b field_46238 + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/util/ExtraCodecs$4 axw$4 net/minecraft/class_5699$4 + f Ljava/util/function/Function; val$decodeLifecycle a field_35664 + f Ljava/util/function/Function; val$encodeLifecycle b field_35665 + m (Lcom/mojang/serialization/DataResult;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_39515 a method_39515 + m (Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/util/ExtraCodecs$5 axw$5 net/minecraft/class_5699$5 + f Lcom/mojang/serialization/Codec; val$codec a field_38082 + m (Ljava/lang/Object;Ljava/lang/Exception;)Ljava/lang/String; method_49445 a method_49445 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$6 axw$6 net/minecraft/class_5699$6 + f Ljava/lang/String; val$typeKey a field_47219 + f Ljava/lang/String; val$valueKey b field_47220 + f Lcom/mojang/serialization/Codec; val$typeCodec c field_47221 + f Ljava/util/function/Function; val$valueCodec d field_47222 + f Ljava/util/function/Function; val$typeGetter e field_47223 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; encode a method_54942 + p 1 valueCodec + p 2 value + p 3 ops + m (Lcom/mojang/serialization/MapLike;Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/DataResult; method_54943 a method_54943 + m (Ljava/lang/String;Lcom/mojang/serialization/MapLike;)Ljava/lang/String; method_54944 a method_54944 + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/util/ExtraCodecs$7 axw$7 net/minecraft/class_5699$7 + f Lcom/mojang/serialization/Codec; val$codec a field_50110 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_58592 a method_58592 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Z isEmptyMap a method_58593 + p 0 ops + p 1 value + m (Ljava/util/Optional;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_58594 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$1ContextRetrievalCodec axw$a net/minecraft/class_5699$class_6866 + f Ljava/util/function/Function; val$getter a field_36397 + m (Ljava/util/function/Function;)V + p 1 valGetter +c net/minecraft/util/ExtraCodecs$StrictUnboundedMapCodec axw$b net/minecraft/class_5699$class_8783 + m ()Ljava/lang/String; method_53704 a method_53704 + m (Lcom/mojang/serialization/DataResult;Ljava/lang/String;)Ljava/lang/String; method_53705 a method_53705 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_53706 a method_53706 + m (Ljava/lang/Object;Ljava/util/Map;)Lcom/mojang/datafixers/util/Pair; method_53707 a method_53707 + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_53708 + p 1 input + p 2 ops + p 3 value + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/ExtraCodecs$TagOrElementLocation axw$c net/minecraft/class_5699$class_7476 + f Lnet/minecraft/resources/ResourceLocation; id a comp_813 + f Z tag b comp_814 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_813 + m ()Z tag b comp_814 + m ()Ljava/lang/String; decoratedId c method_43963 + m (Lnet/minecraft/resources/ResourceLocation;Z)V +c net/minecraft/util/FastBufferedInputStream axx net/minecraft/class_6826 + f I DEFAULT_BUFFER_SIZE a field_36209 + f Ljava/io/InputStream; in b field_36210 + f [B buffer c field_36211 + f I limit d field_36212 + f I position e field_36213 + m ()I bytesInBuffer a method_39779 + m ()V fill b method_39780 + m (Ljava/io/InputStream;)V + p 1 in + m (Ljava/io/InputStream;I)V + p 1 in + p 2 bufferSize +c net/minecraft/util/FastColor axy net/minecraft/class_5253 + m (F)I as8BitChannel a method_59553 + p 0 value + m ()V +c net/minecraft/util/FastColor$ABGR32 axy$a net/minecraft/class_5253$class_8045 + m (I)I alpha a method_48342 + p 0 packedColor + m (II)I color a method_48343 + p 0 alpha + p 1 packedColor + m (IIII)I color a method_48344 + p 0 alpha + p 1 blue + p 2 green + p 3 red + m (I)I red b method_48345 + p 0 packedColor + m (I)I green c method_48346 + p 0 packedColor + m (I)I blue d method_48347 + p 0 packedColor + m (I)I transparent e method_48348 + p 0 packedColor + m (I)I opaque f method_48548 + p 0 packedColor + m (I)I fromArgb32 g method_60675 + p 0 color + m ()V +c net/minecraft/util/FastColor$ARGB32 axy$b net/minecraft/class_5253$class_5254 + m (FFFF)I colorFromFloat a method_59554 + p 0 alpha + p 1 red + p 2 green + p 3 blue + m (FII)I lerp a method_48780 + p 0 delta + p 1 min + p 2 max + m (I)I alpha a method_27762 + p 0 packedColor + m (II)I multiply a method_27763 + p 0 packedColourOne + p 1 packedColorTwo + m (III)I color a method_57173 + p 0 red + p 1 green + p 2 blue + m (IIII)I color a method_27764 + p 0 alpha + p 1 red + p 2 green + p 3 blue + m (I)I red b method_27765 + p 0 packedColor + m (II)I color b method_58144 + p 0 alpha + p 1 color + m (I)I green c method_27766 + p 0 packedColor + m (II)I average c method_60676 + p 0 color1 + p 1 color2 + m (I)I blue d method_27767 + p 0 packedColor + m (I)I opaque e method_57174 + p 0 color + m ()V +c net/minecraft/util/FileZipper axz net/minecraft/class_6397 + f Lorg/slf4j/Logger; LOGGER a field_33864 + f Ljava/nio/file/Path; outputFile b field_33865 + f Ljava/nio/file/Path; tempFile c field_33866 + f Ljava/nio/file/FileSystem; fs d field_33867 + m (Ljava/nio/file/Path;)V add a method_37161 + p 1 path + m (Ljava/nio/file/Path;Ljava/io/File;)V add a method_37162 + p 1 path + p 2 filename + m (Ljava/nio/file/Path;Ljava/lang/String;)V add a method_37163 + p 1 path + p 2 filename + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_37164 a method_37164 + m (Ljava/nio/file/Path;)V + p 1 outputFile + m ()V +c net/minecraft/util/FormattedCharSequence aya net/minecraft/class_5481 + f Lnet/minecraft/util/FormattedCharSequence; EMPTY a field_26385 + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSink;)Z method_30743 a method_30743 + m (Lnet/minecraft/util/FormattedCharSink;)Z method_30744 a method_30744 + m (Lnet/minecraft/util/FormattedCharSink;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;ILnet/minecraft/network/chat/Style;I)Z method_30746 a method_30746 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z method_34907 a method_34907 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/util/FormattedCharSink;)Z method_30748 a method_30748 + m (Ljava/util/List;Lnet/minecraft/util/FormattedCharSink;)Z method_30750 a method_30750 + m (Lnet/minecraft/network/chat/Style;ILnet/minecraft/util/FormattedCharSink;)Z method_30751 a method_30751 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z method_30753 b method_30753 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;Lnet/minecraft/util/FormattedCharSink;)Z method_34911 b method_34911 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; backward backward method_34910 + p 0 text + p 1 style + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSequence; backward backward method_30754 + p 0 text + p 1 style + p 2 codePointMapper + m (ILnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; codepoint codepoint method_30741 + p 0 codePoint + p 1 style + m ()Lnet/minecraft/util/FormattedCharSequence; composite composite method_34905 + m (Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_34906 + p 0 sequence + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_30742 + p 0 first + p 1 second + m (Ljava/util/List;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_30749 + p 0 parts + m ([Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; composite composite method_34909 + p 0 parts + m (Lnet/minecraft/util/FormattedCharSink;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSink; decorateOutput decorateOutput method_30745 + p 0 sink + p 1 codePointMapper + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/util/FormattedCharSequence; forward forward method_30747 + p 0 text + p 1 style + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lnet/minecraft/util/FormattedCharSequence; forward forward method_34908 + p 0 text + p 1 style + p 2 codePointMapper + m (Ljava/util/List;)Lnet/minecraft/util/FormattedCharSequence; fromList fromList method_30755 + p 0 parts + m (Lnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/util/FormattedCharSequence; fromPair fromPair method_30752 + p 0 first + p 1 second + m ()V +c net/minecraft/util/FormattedCharSink ayb net/minecraft/class_5224 +c net/minecraft/util/FutureChain ayc net/minecraft/class_7619 + f Lorg/slf4j/Logger; LOGGER b field_39828 + f Ljava/util/concurrent/CompletableFuture; head c field_39829 + f Ljava/util/concurrent/Executor; executor d field_39830 + f Z closed e field_40112 + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; method_54440 a method_54440 + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_44904 a method_44904 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)V method_44903 a method_44903 + m (Ljava/util/concurrent/Executor;)V + p 1 executor + m ()V +c net/minecraft/util/Graph ayd net/minecraft/class_6496 + m (Ljava/util/Map;Ljava/util/Set;Ljava/util/Set;Ljava/util/function/Consumer;Ljava/lang/Object;)Z depthFirstSearch a method_37951 + c Detects if a cycle is present in the given graph, via a depth first search, and returns {@code true} if a cycle was found. + p 0 graph + p 1 nonCyclicalNodes + c Nodes that are verified to have no cycles involving them. + p 2 pathSet + c The current collection of seen nodes. When invoked not recursively, this should be an empty set. + p 3 onNonCyclicalNodeFound + c Invoked on each node as we prove that no cycles can be reached starting from this node. + p 4 currentNode + m ()V +c net/minecraft/util/GsonHelper aye net/minecraft/class_3518 + f Lcom/google/gson/Gson; GSON a field_15657 + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; fromJson a method_15297 + p 0 gson + p 1 reader + p 2 type + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromNullableJson a method_47992 + p 0 gson + p 1 reader + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;)Ljava/lang/Object; fromJson a method_15276 + p 0 gson + p 1 reader + p 2 jsonClass + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;Z)Ljava/lang/Object; fromNullableJson a method_47993 + p 0 gson + p 1 reader + p 2 adapter + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Lcom/google/gson/reflect/TypeToken;)Ljava/lang/Object; fromNullableJson a method_15290 + p 0 gson + p 1 json + p 2 type + m (Lcom/google/gson/Gson;Ljava/lang/String;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromNullableJson a method_15262 + p 0 gson + p 1 json + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object; fromJson a method_15284 + p 0 gson + p 1 json + p 2 adapter + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object; fromJson a method_15279 + p 0 gson + p 1 json + p 2 adapter + p 3 lenient + m (Lcom/google/gson/JsonElement;)Z isStringValue a method_15286 + c Is the given JsonElement a string? + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/lang/String; convertToString a method_15287 + c Gets the string value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; convertToObject a method_15291 + p 0 json + p 1 memberName + p 2 context + p 3 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isStringValue a method_15289 + c Does the given JsonObject contain a string field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;B)B getAsByte a method_15271 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;C)C getAsCharacter a method_34914 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;D)D getAsDouble a method_34915 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;F)F getAsFloat a method_15277 + c Gets the float value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;I)I getAsInt a method_15282 + c Gets the integer value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;J)J getAsLong a method_15280 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonArray;)Lcom/google/gson/JsonArray; getAsJsonArray a method_15292 + c Gets the JsonArray field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; getAsObject a method_15272 + p 0 json + p 1 memberName + p 2 context + p 3 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lcom/google/gson/JsonObject;)Lcom/google/gson/JsonObject; getAsJsonObject a method_15281 + c Gets the JsonObject field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/Object;Lcom/google/gson/JsonDeserializationContext;Ljava/lang/Class;)Ljava/lang/Object; getAsObject a method_15283 + p 0 json + p 1 memberName + p 2 fallback + p 3 context + p 4 adapter + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; getAsString a method_15253 + c Gets the string value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigDecimal;)Ljava/math/BigDecimal; getAsBigDecimal a method_34917 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Ljava/math/BigInteger;)Ljava/math/BigInteger; getAsBigInteger a method_34918 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getAsItem a method_34916 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;S)S getAsShort a method_34919 + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Z)Z getAsBoolean a method_15258 + c Gets the boolean value of the field on the JsonObject with the given name, or the given default value if the field is missing. + p 0 json + p 1 memberName + p 2 fallback + m (Lcom/google/gson/stream/JsonWriter;Lcom/google/gson/JsonElement;Ljava/util/Comparator;)V writeValue a method_43677 + p 0 writer + p 1 jsonElement + p 2 sorter + m (Ljava/io/Reader;)Lcom/google/gson/JsonObject; parse a method_15255 + p 0 reader + m (Ljava/io/Reader;Z)Lcom/google/gson/JsonObject; parse a method_15274 + p 0 reader + p 1 lenient + m (Ljava/lang/String;)Lcom/google/gson/JsonObject; parse a method_15285 + p 0 json + m (Ljava/lang/String;Ljava/lang/String;)Lcom/google/gson/JsonSyntaxException; method_17995 a method_17995 + m (Ljava/lang/String;Z)Lcom/google/gson/JsonObject; parse a method_15298 + p 0 json + p 1 lenient + m (Ljava/util/Collection;Ljava/util/Comparator;)Ljava/util/Collection; sortByKeyIfNeeded a method_43678 + p 0 entries + p 1 sorter + m (Lcom/google/gson/Gson;Ljava/io/Reader;Lcom/google/gson/reflect/TypeToken;Z)Ljava/lang/Object; fromJson b method_15273 + p 0 gson + p 1 reader + p 2 type + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/io/Reader;Ljava/lang/Class;Z)Ljava/lang/Object; fromJson b method_15267 + p 0 gson + p 1 reader + p 2 adapter + p 3 lenient + m (Lcom/google/gson/Gson;Ljava/lang/String;Ljava/lang/Class;Z)Ljava/lang/Object; fromNullableJson b method_47994 + p 0 gson + p 1 json + p 2 adapter + p 3 lenient + m (Lcom/google/gson/JsonElement;)Z isNumberValue b method_15275 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lnet/minecraft/core/Holder; convertToItem b method_15256 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isNumberValue b method_34920 + p 0 json + p 1 memberName + m (Ljava/io/Reader;)Lcom/google/gson/JsonArray; parseArray b method_37165 + p 0 reader + m (Ljava/lang/String;)Lcom/google/gson/JsonArray; parseArray b method_43679 + p 0 string + m (Lcom/google/gson/JsonElement;)Z isBooleanValue c method_34921 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Z convertToBoolean c method_15268 + c Gets the boolean value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isBooleanValue c method_15254 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; getType d method_15266 + c Gets a human-readable description of the given JsonElement's type. For example: "a number (4)" + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)D convertToDouble d method_34922 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isArrayNode d method_15264 + c Does the given JsonObject contain an array field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; toStableString e method_43680 + p 0 json + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)F convertToFloat e method_15269 + c Gets the float value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isObjectNode e method_34923 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)J convertToLong f method_15263 + c Gets a long from a JSON element and validates that the value is actually a number. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isValidPrimitive f method_15278 + c Does the given JsonObject contain a field with the given name whose type is primitive (String, Java primitive, or Java primitive wrapper)? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)I convertToInt g method_15257 + c Gets the integer value of the given JsonElement. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z isValidNode g method_15294 + c Does the given JsonObject contain a field with the given name? + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)B convertToByte h method_15293 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonElement; getNonNull h method_52226 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)C convertToCharacter i method_34924 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getAsString i method_15265 + c Gets the string value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigDecimal; convertToBigDecimal j method_34925 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lnet/minecraft/core/Holder; getAsItem j method_15288 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Ljava/math/BigInteger; convertToBigInteger k method_34926 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Z getAsBoolean k method_15270 + c Gets the boolean value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)S convertToShort l method_34928 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)D getAsDouble l method_34927 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonObject; convertToJsonObject m method_15295 + c Gets the given JsonElement as a JsonObject. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)F getAsFloat m method_15259 + c Gets the float value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonElement;Ljava/lang/String;)Lcom/google/gson/JsonArray; convertToJsonArray n method_15252 + c Gets the given JsonElement as a JsonArray. Expects the second parameter to be the name of the element's field if an error message needs to be thrown. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)J getAsLong n method_22449 + c Gets a long from a JSON element, throws an error if the member does not exist. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)I getAsInt o method_15260 + c Gets the integer value of the field on the JsonObject with the given name. + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)B getAsByte p method_34929 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)C getAsCharacter q method_34930 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigDecimal; getAsBigDecimal r method_34931 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/math/BigInteger; getAsBigInteger s method_34932 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)S getAsShort t method_34933 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonObject; getAsJsonObject u method_15296 + p 0 json + p 1 memberName + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lcom/google/gson/JsonArray; getAsJsonArray v method_15261 + c Gets the JsonArray field on the JsonObject with the given name. + p 0 json + p 1 memberName + m ()V + m ()V +c net/minecraft/util/HttpUtil ayf net/minecraft/class_3521 + f Lorg/slf4j/Logger; LOGGER a field_15665 + m ()I getAvailablePort a method_15302 + m (I)Z isPortAvailable a method_46872 + p 0 port + m (Lcom/google/common/hash/HashFunction;ILnet/minecraft/util/HttpUtil$DownloadProgressListener;Ljava/io/InputStream;Ljava/nio/file/Path;)Lcom/google/common/hash/HashCode; downloadAndHash a method_55492 + p 0 hashFuntion + p 1 maxSize + p 2 progressListener + p 3 stream + p 4 outputPath + m (Ljava/nio/file/Path;)V updateModificationTime a method_55603 + p 0 path + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashCode;)Ljava/nio/file/Path; cachedFilePath a method_55493 + p 0 path + p 1 hash + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;)Lcom/google/common/hash/HashCode; hashFile a method_55494 + p 0 path + p 1 hashFunction + m (Ljava/nio/file/Path;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;)Z checkExistingFile a method_55495 + p 0 path + p 1 hashFunction + p 2 expectedHash + m (Ljava/nio/file/Path;Ljava/net/URL;Ljava/util/Map;Lcom/google/common/hash/HashFunction;Lcom/google/common/hash/HashCode;ILjava/net/Proxy;Lnet/minecraft/util/HttpUtil$DownloadProgressListener;)Ljava/nio/file/Path; downloadFile a method_55496 + p 0 saveFile + p 1 url + p 2 requestProperties + p 3 hashFunction + p 4 hash + p 5 maxSize + p 6 proxy + p 7 progressListener + m ()V + m ()V +c net/minecraft/util/HttpUtil$DownloadProgressListener ayf$a net/minecraft/class_3521$class_9034 + m ()V requestStart a method_55497 + m (J)V downloadedBytes a method_55498 + p 1 progress + m (Ljava/util/OptionalLong;)V downloadStart a method_55499 + p 1 totalSize + m (Z)V requestFinished a method_55500 + p 1 success +c net/minecraft/util/InclusiveRange ayg net/minecraft/class_6497 + f Lcom/mojang/serialization/Codec; INT a field_34390 + f Ljava/lang/Comparable; minInclusive b comp_1 + f Ljava/lang/Comparable; maxInclusive c comp_2 + m ()Ljava/lang/Comparable; minInclusive a comp_1 + m (Lnet/minecraft/util/InclusiveRange;)Z contains a method_37952 + p 1 value + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_37953 + p 0 codec + m (Lcom/mojang/serialization/Codec;Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/Codec; codec a method_37954 + p 0 codec + p 1 min + p 2 max + m (Ljava/lang/Comparable;)Z isValueInRange a method_37955 + p 1 value + m (Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Ljava/lang/String; method_49447 a method_49447 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)Lcom/mojang/serialization/DataResult; create a method_37956 + p 0 min + p 1 max + m (Ljava/lang/Comparable;Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Lcom/mojang/serialization/DataResult; method_37957 a method_37957 + m ()Ljava/lang/Comparable; maxInclusive b comp_2 + m (Ljava/lang/Comparable;Lnet/minecraft/util/InclusiveRange;)Ljava/lang/String; method_49448 b method_49448 + m ()Ljava/lang/String; method_49449 c method_49449 + m (Ljava/lang/Comparable;Ljava/lang/Comparable;)V + p 1 minInclusive + p 2 maxInclusive + m (Ljava/lang/Comparable;)V + p 1 value + m ()V +c net/minecraft/util/KeyDispatchDataCodec ayh net/minecraft/class_7243 + f Lcom/mojang/serialization/MapCodec; codec a comp_640 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_640 + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/KeyDispatchDataCodec; of a method_42116 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/util/LazyLoadedValue ayi net/minecraft/class_3528 + f Ljava/util/function/Supplier; factory a field_15719 + m ()Ljava/lang/Object; get a method_15332 + m (Ljava/util/function/Supplier;)V + p 1 supplier +c net/minecraft/util/LinearCongruentialGenerator ayj net/minecraft/class_4540 + f J MULTIPLIER a field_29842 + f J INCREMENT b field_29843 + m (JJ)J next a method_22372 + p 0 left + p 2 right + m ()V +c net/minecraft/util/ListAndDeque ayk net/minecraft/class_9634 + m ()Lnet/minecraft/util/ListAndDeque; reversed b method_59513 +c net/minecraft/util/LowerCaseEnumTypeAdapterFactory ayl net/minecraft/class_3530 + m (Ljava/lang/Object;)Ljava/lang/String; toLowercase a method_15334 + p 1 object + m ()V +c net/minecraft/util/LowerCaseEnumTypeAdapterFactory$1 ayl$1 net/minecraft/class_3530$1 + f Ljava/util/Map; val$lowercaseToConstant a field_15720 + f Lnet/minecraft/util/LowerCaseEnumTypeAdapterFactory; field_15721 b field_15721 + m (Lnet/minecraft/util/LowerCaseEnumTypeAdapterFactory;Ljava/util/Map;)V +c net/minecraft/util/MemoryReserve aym net/minecraft/class_6416 + f [B reserve a field_34021 + m ()V allocate a method_37414 + m ()V release b method_37415 + m ()V + m ()V +c net/minecraft/util/ModCheck ayn net/minecraft/class_6683 + f Lnet/minecraft/util/ModCheck$Confidence; confidence a comp_171 + f Ljava/lang/String; description b comp_172 + m ()Z shouldReportAsModified a method_39029 + m (Lnet/minecraft/util/ModCheck;)Lnet/minecraft/util/ModCheck; merge a method_39030 + p 1 other + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/util/ModCheck; identify a method_39031 + p 0 vanillaBrandName + p 1 brandNameGetter + p 2 side + p 3 signingClass + m ()Ljava/lang/String; fullDescription b method_39032 + m ()Lnet/minecraft/util/ModCheck$Confidence; confidence c comp_171 + m ()Ljava/lang/String; description d comp_172 + m (Lnet/minecraft/util/ModCheck$Confidence;Ljava/lang/String;)V +c net/minecraft/util/ModCheck$Confidence ayn$a net/minecraft/class_6683$class_6684 + f Lnet/minecraft/util/ModCheck$Confidence; PROBABLY_NOT a field_35174 + f Lnet/minecraft/util/ModCheck$Confidence; VERY_LIKELY b field_35175 + f Lnet/minecraft/util/ModCheck$Confidence; DEFINITELY c field_35176 + f Ljava/lang/String; description d field_35177 + f Z shouldReportAsModified e field_35178 + f [Lnet/minecraft/util/ModCheck$Confidence; $VALUES f field_35179 + m ()[Lnet/minecraft/util/ModCheck$Confidence; $values a method_39033 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 description + p 4 shouldReportAsModified + m ()V +c net/minecraft/util/Mth ayo net/minecraft/class_3532 + f F PI a field_29844 + f F HALF_PI b field_29845 + f F TWO_PI c field_29846 + f F DEG_TO_RAD d field_29847 + f F RAD_TO_DEG e field_29848 + f F EPSILON f field_29849 + f F SQRT_OF_TWO g field_15724 + f Lorg/joml/Vector3f; Y_AXIS h field_46242 + f Lorg/joml/Vector3f; X_AXIS i field_46243 + f Lorg/joml/Vector3f; Z_AXIS j field_46244 + f J UUID_VERSION k field_29852 + f J UUID_VERSION_TYPE_4 l field_29853 + f J UUID_VARIANT m field_29854 + f J UUID_VARIANT_2 n field_29855 + f F SIN_SCALE o field_29856 + f [F SIN p field_15725 + f Lnet/minecraft/util/RandomSource; RANDOM q field_15726 + f [I MULTIPLY_DE_BRUIJN_BIT_POSITION r field_15723 + c Though it looks like an array, this is really more like a mapping. Key (index of this array) is the upper 5 bits of the result of multiplying a 32-bit unsigned integer by the B(2, 5) De Bruijn sequence 0x077CB531. Value (value stored in the array) is the unique index (from the right) of the leftmo + f D ONE_SIXTH s field_29857 + f I FRAC_EXP t field_29858 + f I LUT_SIZE u field_29859 + f D FRAC_BIAS v field_15728 + f [D ASIN_TAB w field_15727 + f [D COS_TAB x field_15722 + m ()Ljava/util/UUID; createInsecureUUID a method_15394 + c Generates a random UUID using the shared random + m (D)I floor a method_15357 + c {@return the greatest integer less than or equal to the double argument} + p 0 value + m (DD)D absMax a method_15391 + c {@return the maximum of the absolute value of two numbers} + p 0 x + p 2 y + m (DDD)D clamp a method_15350 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 2 min + c The lower bound for the clamp. + p 4 max + c The upper bound for the clamp. + m (DDDDD)D clampedMap a method_32854 + p 0 input + p 2 inputMin + p 4 inputMax + p 6 ouputMin + p 8 outputMax + m (DDDDDD)D lerp2 a method_16437 + p 0 delta1 + p 2 delta2 + p 4 start1 + p 6 end1 + p 8 start2 + p 10 end2 + m (DDDDDDDDDDD)D lerp3 a method_16438 + p 0 delta1 + p 2 delta2 + p 4 delta3 + p 6 start1 + p 8 end1 + p 10 start2 + p 12 end2 + p 14 start3 + p 16 end3 + p 18 start4 + p 20 end4 + m (DI)I quantize a method_38961 + c Gets the value closest to zero that is not closer to zero than the given value and is a multiple of the factor. + p 0 value + p 2 factor + m (F)F sin a method_15374 + c sin looked up in a table + p 0 value + m (FF)Z equal a method_15347 + p 0 x + p 1 y + m (FFF)F clamp a method_15363 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 1 min + c The lower bound for the clamp. + p 2 max + c The upper bound for the clamp. + m (FFFFF)F catmullrom a method_41303 + p 0 delta + p 1 controlPoint1 + p 2 controlPoint2 + p 3 controlPoint3 + p 4 controlPoint4 + m (FFFI)I hsvToArgb a method_60599 + p 0 hue + p 1 saturation + p 2 value + p 3 alpha + m (FII)I lerpInt a method_48781 + p 0 delta + p 1 start + p 2 end + m (I)I abs a method_15382 + c {@return the unsigned value of an int} + p 0 value + m (II)I floorDiv a method_48116 + p 0 dividend + p 1 divisor + m (III)I clamp a method_15340 + c {@return the given value if between the lower and the upper bound. If the value is less than the lower bound, returns the lower bound} If the value is greater than the upper bound, returns the upper bound. + p 0 value + c The value that is clamped. + p 1 min + c The lower bound for the clamp. + p 2 max + c The upper bound for the clamp. + m (IIII)Ljava/util/stream/IntStream; outFromOrigin a method_42117 + p 0 input + p 1 lowerBound + p 2 upperBound + p 3 steps + m (IIIII)I method_42118 a method_42118 + m (IILjava/util/function/IntPredicate;)I binarySearch a method_15360 + p 0 min + p 1 max + p 2 isTargetBeforeOrAt + m (J)J square a method_38652 + p 0 value + m (JJJ)J clamp a method_53062 + p 0 value + p 2 min + p 4 max + m (Lnet/minecraft/util/RandomSource;)Ljava/util/UUID; createInsecureUUID a method_15378 + p 0 random + m (Lnet/minecraft/util/RandomSource;DD)D nextDouble a method_15366 + p 0 random + p 1 minimum + p 3 maximum + m (Lnet/minecraft/util/RandomSource;FF)F nextFloat a method_15344 + p 0 random + p 1 minimum + p 2 maximum + m (Lnet/minecraft/util/RandomSource;II)I nextInt a method_15395 + p 0 random + p 1 minimum + p 2 maximum + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;)Z rayIntersectsAABB a method_34945 + p 0 start + p 1 end + p 2 boundingBox + m (Ljava/lang/String;I)I getInt a method_15343 + c Parses the string as an integer or returns the second parameter if it fails. + p 0 value + p 1 defaultValue + m (Lnet/minecraft/core/Vec3i;)J getSeed a method_15389 + p 0 pos + m (Lorg/apache/commons/lang3/math/Fraction;I)I mulAndTruncate a method_59515 + p 0 fraction + p 1 factor + m (Lorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;)Lorg/joml/Quaternionf; rotationAroundAxis a method_53948 + p 0 axis + p 1 cameraOrentation + p 2 output + m ([F)V method_15376 a method_15376 + m (D)J lfloor b method_15372 + c Long version of floor() + p 0 value + m (DD)Z equal b method_20390 + p 0 x + p 2 y + m (DDD)D clampedLerp b method_15390 + c Method for linear interpolation of doubles. + p 0 start + c Start value for the lerp. + p 2 end + c End value for the lerp. + p 4 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) If the value is not between 0 and 1, it is clamped. + m (DDDDD)D map b method_33722 + p 0 input + p 2 inputMin + p 4 inputMax + p 6 outputMin + p 8 outputMax + m (F)F cos b method_15362 + c cos looked up in the sin table with the appropriate offset + p 0 value + m (FF)F positiveModulo b method_15341 + p 0 numerator + p 1 denominator + m (FFF)F clampedLerp b method_37166 + c Method for linear interpolation of floats. + p 0 start + c Start value for the lerp. + p 1 end + c End value for the lerp. + p 2 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) If the value is not between 0 and 1, it is clamped. + m (FFFFF)F clampedMap b method_37958 + p 0 input + p 1 inputMin + p 2 inputMax + p 3 outputMin + p 4 outputMax + m (FII)I lerpDiscrete b method_53063 + p 0 delta + p 1 start + p 2 end + m (I)I wrapDegrees b method_15392 + c Adjust the angle so that its value is in the range [-180;180) + p 0 angle + m (II)I positiveModulo b method_15387 + p 0 x + p 1 y + m (III)J getSeed b method_15371 + p 0 x + p 1 y + p 2 z + m (IIII)Z method_42119 b method_42119 + m (Lnet/minecraft/util/RandomSource;FF)F randomBetween b method_32750 + p 0 random + p 1 minInclusive + p 2 maxExclusive + m (Lnet/minecraft/util/RandomSource;II)I randomBetweenInclusive b method_32751 + p 0 random + p 1 minInclusive + p 2 maxInclusive + m (D)I ceil c method_15384 + p 0 value + m (DD)D positiveModulo c method_15367 + p 0 numerator + p 2 denominator + m (DDD)D inverseLerp c method_15370 + p 0 delta + p 2 start + p 4 end + m (F)F sqrt c method_15355 + p 0 value + m (FF)F degreesDifference c method_15381 + c {@return the difference between two angles in degrees} + p 0 start + p 1 end + m (FFF)F rotateIfNecessary c method_20306 + c Takes a rotation and compares it to another rotation.\nIf the difference is greater than a given maximum, clamps the original rotation between to have at most the given difference to the actual rotation.\nThis is used to match the body rotation of entities to their head rotation.\n@return The new value for the rotation that was adjusted + p 0 rotationToAdjust + p 1 actualRotation + p 2 maxDifference + m (FFFFF)F map c method_37959 + p 0 input + p 1 inputMin + p 2 inputMax + p 3 outputMin + p 4 outputMax + m (I)I smallestEncompassingPowerOfTwo c method_15339 + c {@return the input value rounded up to the next highest power of two} + p 0 value + m (II)Z isMultipleOf c method_48117 + p 0 number + p 1 multiple + m (III)Ljava/util/stream/IntStream; outFromOrigin c method_42120 + p 0 input + p 1 lowerBound + p 2 upperBound + m (Lnet/minecraft/util/RandomSource;FF)F normal c method_32855 + c Generates a value from a normal distribution with the given mean and deviation. + p 0 random + p 1 mean + p 2 deviation + m (D)D wrapDegrees d method_15338 + c The angle is reduced to an angle between -180 and +180 by mod, and a 360 check. + p 0 value + m (DD)D atan2 d method_15349 + p 0 y + p 2 x + m (DDD)D lerp d method_16436 + c Method for linear interpolation of doubles + p 0 delta + c A value usually between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 2 start + c Start value for the lerp + p 4 end + c End value for the lerp + m (F)I floor d method_15375 + c {@return the greatest integer less than or equal to the float argument} + p 0 value + m (FF)F degreesDifferenceAbs d method_15356 + c {@return the absolute of the difference between two angles in degrees} + p 0 start + p 1 end + m (FFF)F approach d method_15348 + c Changes value by stepSize towards the limit and returns the result.\nIf value is smaller than limit, the result will never be bigger than limit.\nIf value is bigger than limit, the result will never be smaller than limit. + p 0 value + p 1 limit + p 2 stepSize + m (I)Z isPowerOfTwo d method_15352 + c Is the given value a power of two? (1, 2, 4, 8, 16, ...) + p 0 value + m (II)I roundToward d method_28139 + c Rounds the given value up to a multiple of factor.\n@return The smallest integer multiple of factor that is greater than or equal to the value + p 0 value + p 1 factor + m (D)D frac e method_15385 + c Gets the decimal portion of the given double. For instance, {@code frac(5.5)} returns {@code .5}. + p 0 number + m (DD)D lengthSquared e method_41189 + p 0 xDistance + p 2 yDistance + m (DDD)D rotLerp e method_52468 + p 0 delta + p 2 start + p 4 end + m (F)F abs e method_15379 + p 0 value + m (FF)F triangleWave e method_24504 + p 0 input + p 1 period + m (FFF)F approachDegrees e method_15388 + c Changes the angle by stepSize towards the limit in the direction where the distance is smaller.\n{@see #approach(float, float, float)} + p 0 angle + p 1 limit + p 2 stepSize + m (I)I ceillog2 e method_15342 + c Uses a B(2, 5) De Bruijn sequence and a lookup table to efficiently calculate the log-base-two of the given value. Optimized for cases where the input value is a power-of-two. If the input value is not a power-of-two, then subtract 1 from the return value. + p 0 value + m (II)I positiveCeilDiv e method_38788 + c Returns the smallest (closest to negative infinity) int value that is greater than or equal to the algebraic quotient.\n@see java.lang.Math#floorDiv(int, int) + p 0 x + p 1 y + m (D)D invSqrt f method_48118 + p 0 number + m (DD)D length f method_39241 + p 0 xDistance + p 2 yDistance + m (DDD)D lengthSquared f method_41190 + p 0 xDistance + p 2 yDistance + p 4 zDistance + m (F)I ceil f method_15386 + p 0 value + m (FFF)I color f method_15353 + c Makes an integer color from the given red, green, and blue float values + p 0 r + p 1 g + p 2 b + m (I)I log2 f method_15351 + c Efficiently calculates the floor of the base-2 log of an integer value. This is effectively the index of the highest bit that is set. For example, if the number in binary is 0...100101, this will return 5. + p 0 value + m (D)D fastInvSqrt g method_15345 + c Computes 1/sqrt(n) using the fast inverse square root with a constant of 0x5FE6EB50C7B537AA. + p 0 number + m (DDD)D length g method_33825 + p 0 xDistance + p 2 yDistance + p 4 zDistance + m (F)F wrapDegrees g method_15393 + c The angle is reduced to an angle between -180 and +180 by mod, and a 360 check. + p 0 value + m (FFF)F inverseLerp g method_37960 + p 0 delta + p 1 start + p 2 end + m (I)I murmurHash3Mixer g method_15354 + p 0 input + m (D)D smoothstep h method_16435 + p 0 input + m (F)F frac h method_22450 + p 0 number + m (FFF)I hsvToRgb h method_15369 + p 0 hue + p 1 saturation + p 2 value + m (I)I square h method_34954 + p 0 value + m (D)D smoothstepDerivative i method_34956 + p 0 input + m (F)F invSqrt i method_48119 + p 0 number + m (FFF)F lerp i method_16439 + c Method for linear interpolation of floats + p 0 delta + c A value usually between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 1 start + c Start value for the lerp + p 2 end + c End value for the lerp + m (D)I sign j method_17822 + p 0 x + m (F)F fastInvCubeRoot j method_23278 + p 0 number + m (FFF)F rotLerp j method_17821 + c Linearly interpolates an angle between the start between the start and end values given as degrees. + p 0 delta + c A value between 0 and 1 that indicates the percentage of the lerp. (0 will give the start value and 1 will give the end value) + p 1 start + p 2 end + m (D)D square k method_33723 + p 0 value + m (F)F square k method_27285 + p 0 value + m (FFF)F lengthSquared k method_60677 + p 0 xDistance + p 1 yDistance + p 2 zDistance + m (D)D wobble l method_34957 + p 0 input + m ()V + m ()V +c net/minecraft/util/NativeModuleLister ayp net/minecraft/class_6498 + f Lorg/slf4j/Logger; LOGGER a field_34391 + f I LANG_MASK b field_34392 + f I DEFAULT_LANG c field_34393 + f I CODEPAGE_MASK d field_34394 + f I DEFAULT_CODEPAGE e field_34395 + m ()Ljava/util/List; listModules a method_37961 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_37962 a method_37962 + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Lcom/sun/jna/Pointer; queryVersionValue a method_37963 + p 0 block + p 1 subBlock + p 2 size + m (Ljava/lang/String;)Ljava/util/Optional; tryGetVersion a method_37964 + p 0 filename + m (Ljava/lang/String;II)Ljava/lang/String; langTableKey a method_37965 + p 0 key + p 1 lang + p 2 codepage + m (Lnet/minecraft/CrashReportCategory;)V addCrashSection a method_37966 + p 0 crashSection + m ([I)Ljava/util/OptionalInt; findLangAndCodepage a method_37967 + p 0 versionValue + m ()Ljava/lang/String; method_37968 b method_37968 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_37969 b method_37969 + m (Lcom/sun/jna/Pointer;Ljava/lang/String;Lcom/sun/jna/ptr/IntByReference;)Ljava/lang/String; queryVersionString b method_37970 + p 0 block + p 1 subBlock + p 2 size + m ()V + m ()V +c net/minecraft/util/NativeModuleLister$NativeModuleInfo ayp$a net/minecraft/class_6498$class_6499 + f Ljava/lang/String; name a field_34396 + f Ljava/util/Optional; version b field_34397 + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleVersion;)Ljava/lang/String; method_37971 a method_37971 + m (Ljava/lang/String;Ljava/util/Optional;)V + p 1 name + p 2 version +c net/minecraft/util/NativeModuleLister$NativeModuleVersion ayp$b net/minecraft/class_6498$class_6500 + f Ljava/lang/String; description a field_34398 + f Ljava/lang/String; version b field_34399 + f Ljava/lang/String; company c field_34400 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 description + p 2 version + p 3 company +c net/minecraft/util/NullOps ayq net/minecraft/class_9637 + f Lnet/minecraft/util/NullOps; INSTANCE a field_51366 + m ()Lnet/minecraft/util/Unit; empty a method_59555 + m (B)Lnet/minecraft/util/Unit; createByte a method_59556 + p 1 value + m (D)Lnet/minecraft/util/Unit; createDouble a method_59557 + p 1 value + m (F)Lnet/minecraft/util/Unit; createFloat a method_59558 + p 1 value + m (I)Lnet/minecraft/util/Unit; createInt a method_59559 + p 1 value + m (J)Lnet/minecraft/util/Unit; createLong a method_59560 + p 1 value + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getNumberValue a method_59561 + p 1 input + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; mergeToList a method_59562 + p 1 list + p 2 value + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59563 + p 1 map + p 2 key + p 3 value + m (Lnet/minecraft/util/Unit;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59564 + p 1 map + p 2 values + m (Lnet/minecraft/util/Unit;Ljava/lang/String;)Lnet/minecraft/util/Unit; remove a method_59565 + p 1 input + p 2 key + m (Lnet/minecraft/util/Unit;Ljava/util/List;)Lcom/mojang/serialization/DataResult; mergeToList a method_59566 + p 1 list + p 2 values + m (Lnet/minecraft/util/Unit;Ljava/util/Map;)Lcom/mojang/serialization/DataResult; mergeToMap a method_59567 + p 1 map + p 2 values + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/util/Unit;)Ljava/lang/Object; convertTo a method_59568 + p 1 ops + p 2 unit + m (Ljava/lang/Number;)Lnet/minecraft/util/Unit; createNumeric a method_59569 + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/util/Unit; createString a method_59570 + p 1 value + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/Unit; createByteList a method_59571 + p 1 input + m (Ljava/util/Map;)Lnet/minecraft/util/Unit; createMap a method_59572 + p 1 map + m (Ljava/util/stream/IntStream;)Lnet/minecraft/util/Unit; createIntList a method_59573 + p 1 input + m (Ljava/util/stream/LongStream;)Lnet/minecraft/util/Unit; createLongList a method_59574 + p 1 input + m (Ljava/util/stream/Stream;)Lnet/minecraft/util/Unit; createMap a method_59575 + p 1 map + m (S)Lnet/minecraft/util/Unit; createShort a method_59576 + p 1 value + m (Z)Lnet/minecraft/util/Unit; createBoolean a method_59577 + p 1 value + m ()Lnet/minecraft/util/Unit; emptyMap b method_59578 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getBooleanValue b method_59579 + p 1 input + m (Ljava/util/stream/Stream;)Lnet/minecraft/util/Unit; createList b method_59580 + p 1 input + m ()Lnet/minecraft/util/Unit; emptyList c method_59581 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getStringValue c method_59582 + p 1 input + m ()Ljava/lang/String; method_59583 d method_59583 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMapValues d method_59584 + p 1 input + m ()Ljava/lang/String; method_59585 e method_59585 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMapEntries e method_59586 + p 1 input + m ()Ljava/lang/String; method_59587 f method_59587 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getMap f method_59588 + p 1 input + m ()Ljava/lang/String; method_59589 g method_59589 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getStream g method_59590 + p 1 input + m ()Ljava/lang/String; method_59591 h method_59591 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getList h method_59592 + p 1 input + m ()Ljava/lang/String; method_59593 i method_59593 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getByteBuffer i method_59594 + p 1 input + m ()Ljava/lang/String; method_59595 j method_59595 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getIntStream j method_59596 + p 1 input + m ()Ljava/lang/String; method_59597 k method_59597 + m (Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; getLongStream k method_59598 + p 1 input + m ()Ljava/lang/String; method_59599 l method_59599 + m ()Ljava/lang/String; method_59600 m method_59600 + m ()Ljava/lang/String; method_59601 n method_59601 + m ()V + m ()V +c net/minecraft/util/NullOps$NullMapBuilder ayq$a net/minecraft/class_9637$class_9638 + m ()Lnet/minecraft/util/Unit; initBuilder a method_59602 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lcom/mojang/serialization/DataResult; build a method_59603 + m (Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;Lnet/minecraft/util/Unit;)Lnet/minecraft/util/Unit; append a method_59604 + m (Lcom/mojang/serialization/DynamicOps;)V + p 1 ops +c net/minecraft/util/OptionEnum ayr net/minecraft/class_7291 + m ()I getId a method_7362 + m ()Ljava/lang/String; getKey b method_7359 + m ()Lnet/minecraft/network/chat/Component; getCaption d method_42627 +c net/minecraft/util/ParticleUtils ays net/minecraft/class_5945 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; getRandomSpeedRanges a method_41306 + p 0 random + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3; method_41304 a method_41304 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/ParticleOptions;)V spawnParticleBelow a method_49099 + p 0 level + p 1 pos + p 2 random + p 3 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/Vec3;D)V spawnParticleOnFace a method_34681 + p 0 level + p 1 pos + p 2 direction + p 3 particle + p 4 speed + p 5 spread + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/IntProvider;)V spawnParticlesOnBlockFaces a method_34682 + p 0 level + p 1 pos + p 2 particle + p 3 count + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/core/Direction;Ljava/util/function/Supplier;D)V spawnParticlesOnBlockFace a method_41305 + p 0 level + p 1 pos + p 2 particle + p 3 count + p 4 direction + p 5 speedSupplier + p 6 spread + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V spawnSmashAttackParticles a method_58595 + p 0 level + p 1 pos + p 2 power + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IDDZLnet/minecraft/core/particles/ParticleOptions;)V spawnParticles a method_55635 + p 0 level + p 1 pos + p 2 count + p 3 xzSpread + p 5 ySpread + p 7 allowInAir + p 8 particle + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/particles/ParticleOptions;)V spawnParticleInBlock a method_55636 + p 0 level + p 1 pos + p 2 count + p 3 particle + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;DLnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/util/valueproviders/UniformInt;)V spawnParticlesAlongAxis a method_34683 + p 0 axis + p 1 level + p 2 pos + p 3 spread + p 5 particle + p 6 count + m ()V +c net/minecraft/util/PngInfo ayt net/minecraft/class_8800 + f I width a comp_1965 + f I height b comp_1966 + f J PNG_HEADER c field_46201 + f I IHDR_TYPE d field_46202 + f I IHDR_SIZE e field_46203 + m ()I width a comp_1965 + m (Ljava/io/InputStream;)Lnet/minecraft/util/PngInfo; fromStream a method_53877 + p 0 stream + m (Ljava/nio/ByteBuffer;)V validateHeader a method_54945 + p 0 buffer + m ([B)Lnet/minecraft/util/PngInfo; fromBytes a method_53878 + p 0 bytes + m ()I height b comp_1966 + m (II)V +c net/minecraft/util/ProblemReporter ayu net/minecraft/class_8942 + m (Ljava/lang/String;)Lnet/minecraft/util/ProblemReporter; forChild a method_54946 + p 1 name + m (Ljava/lang/String;)V report b method_54947 + p 1 message +c net/minecraft/util/ProblemReporter$Collector ayu$a net/minecraft/class_8942$class_8943 + f Lcom/google/common/collect/Multimap; problems a field_47225 + f Ljava/util/function/Supplier; path b field_47226 + f Ljava/lang/String; pathCache c field_47227 + m ()Lcom/google/common/collect/Multimap; get a method_54948 + m (Ljava/util/Map$Entry;)Ljava/lang/String; method_59905 a method_59905 + m ()Ljava/util/Optional; getReport b method_59906 + m ()Ljava/lang/String; getPath c method_54949 + m (Ljava/lang/String;)Ljava/lang/String; method_54951 c method_54951 + m ()Ljava/lang/String; method_54950 d method_54950 + m ()V + m (Lcom/google/common/collect/Multimap;Ljava/util/function/Supplier;)V + p 1 problems + p 2 path +c net/minecraft/util/ProgressListener ayv net/minecraft/class_3536 + m ()V stop a method_15411 + m (I)V progressStagePercentage a method_15410 + c Updates the progress bar on the loading screen to the specified amount. + p 1 progress + m (Lnet/minecraft/network/chat/Component;)V progressStartNoAbort a method_15412 + p 1 component + m (Lnet/minecraft/network/chat/Component;)V progressStart b method_15413 + p 1 header + m (Lnet/minecraft/network/chat/Component;)V progressStage c method_15414 + p 1 stage +c net/minecraft/util/RandomSource ayw net/minecraft/class_5819 + c A basic interface for random number generation. This mirrors the same methods in {@link java.util.Random}, however it does not make any guarantee that these are thread-safe, unlike {@code Random}.\nThe notable difference is that {@link #setSeed(long)} is not {@code synchronized} and should not be accessed from multiple threads.\nThe documentation for each individual method can be assumed to be otherwise the same as the identically named method in {@link java.util.Random}.\n@see java.util.Random\n@see net.minecraft.world.level.levelgen.SimpleRandomSource + f D GAUSSIAN_SPREAD_FACTOR a field_38930 + m ()Lnet/minecraft/util/RandomSource; create a method_43047 + m (DD)D triangle a method_43385 + p 1 center + p 3 maxDeviation + m (I)I nextInt a method_43048 + p 1 bound + m (II)I nextIntBetweenInclusive a method_39332 + p 1 min + p 2 max + m (J)Lnet/minecraft/util/RandomSource; create a method_43049 + p 0 seed + m ()Lnet/minecraft/util/RandomSource; createThreadSafe b method_43050 + m (I)V consumeCount b method_33650 + p 1 count + m (II)I nextInt b method_43051 + p 1 origin + p 2 bound + m (J)V setSeed b method_43052 + p 1 seed + m ()Lnet/minecraft/util/RandomSource; createNewThreadLocalInstance c method_43053 + m ()Lnet/minecraft/util/RandomSource; fork d method_38420 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; forkPositional e method_38421 + m ()I nextInt f method_43054 + m ()J nextLong g method_43055 + m ()Z nextBoolean h method_43056 + m ()F nextFloat i method_43057 + m ()D nextDouble j method_43058 + m ()D nextGaussian k method_43059 +c net/minecraft/util/ResourceLocationPattern ayx net/minecraft/class_7085 + f Lcom/mojang/serialization/Codec; CODEC a field_37293 + f Ljava/util/Optional; namespacePattern b field_37294 + f Ljava/util/function/Predicate; namespacePredicate c field_37295 + f Ljava/util/Optional; pathPattern d field_37296 + f Ljava/util/function/Predicate; pathPredicate e field_37297 + f Ljava/util/function/Predicate; locationPredicate f field_41286 + m ()Ljava/util/function/Predicate; namespacePredicate a method_47545 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_47546 a method_47546 + m (Lnet/minecraft/util/ResourceLocationPattern;)Ljava/util/Optional; method_41284 a method_41284 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41285 a method_41285 + m (Ljava/lang/String;)Z method_41286 a method_41286 + m ()Ljava/util/function/Predicate; pathPredicate b method_47547 + m (Lnet/minecraft/util/ResourceLocationPattern;)Ljava/util/Optional; method_41288 b method_41288 + m (Ljava/lang/String;)Z method_41289 b method_41289 + m ()Ljava/util/function/Predicate; locationPredicate c method_47548 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 namespacePattern + p 2 pathPattern + m ()V +c net/minecraft/util/SegmentedAnglePrecision ayy net/minecraft/class_8013 + f I mask a field_41760 + f I precision b field_41761 + f F degreeToAngle c field_41762 + f F angleToDegree d field_41763 + m ()I getMask a method_48120 + m (F)I fromDegreesWithTurns a method_48121 + p 1 degreesWithTurns + m (I)F toDegreesWithTurns a method_48122 + p 1 degrees + m (II)Z isSameAxis a method_48123 + p 1 first + p 2 second + m (Lnet/minecraft/core/Direction;)I fromDirection a method_48124 + p 1 direction + m (F)I fromDegrees b method_48125 + p 1 degrees + m (I)F toDegrees b method_48126 + p 1 degreesWithTurns + m (I)I normalize c method_48127 + p 1 degrees + m (I)V + p 1 precision +c net/minecraft/util/SequencedPriorityIterator ayz net/minecraft/class_8917 + f I MIN_PRIO a field_48714 + f Ljava/util/Deque; highestPrioQueue b field_48715 + f I highestPrio c field_48716 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; queuesByPriority d field_48717 + m ()V switchCacheToNextHighestPrioQueue a method_56533 + m (I)Ljava/util/Deque; method_54723 a method_54723 + m (Ljava/lang/Object;I)V add a method_54726 + p 1 value + p 2 priority + m ()V +c net/minecraft/util/SignatureUpdater aza net/minecraft/class_7498 +c net/minecraft/util/SignatureUpdater$Output aza$a net/minecraft/class_7498$class_7499 +c net/minecraft/util/SignatureValidator azb net/minecraft/class_7500 + f Lnet/minecraft/util/SignatureValidator; NO_VALIDATION a field_39397 + f Lorg/slf4j/Logger; LOGGER b field_39398 + m (Lnet/minecraft/util/SignatureUpdater;[B)Z method_44170 a method_44170 + m (Lnet/minecraft/util/SignatureUpdater;[BLcom/mojang/authlib/yggdrasil/ServicesKeyInfo;)Z method_44173 a method_44173 + m (Lnet/minecraft/util/SignatureUpdater;[BLjava/security/Signature;)Z verifySignature a method_44171 + p 0 updater + p 1 signatureBytes + p 2 signature + m (Lcom/mojang/authlib/yggdrasil/ServicesKeySet;Lcom/mojang/authlib/yggdrasil/ServicesKeyType;)Lnet/minecraft/util/SignatureValidator; from a method_44172 + p 0 serviceKeySet + p 1 serviceKeyType + m (Ljava/lang/String;Ljava/security/PublicKey;Lnet/minecraft/util/SignatureUpdater;[B)Z method_44174 a method_44174 + m (Ljava/security/PublicKey;Ljava/lang/String;)Lnet/minecraft/util/SignatureValidator; from a method_44175 + p 0 publicKey + p 1 algorithm + m (Ljava/util/Collection;Lnet/minecraft/util/SignatureUpdater;[B)Z method_51496 a method_51496 + m ([BLnet/minecraft/util/SignatureUpdater$Output;)V method_44176 a method_44176 + m ([B[B)Z validate a method_44177 + p 1 digest + p 2 signature + m ()V +c net/minecraft/util/Signer azc net/minecraft/class_7501 + f Lorg/slf4j/Logger; LOGGER a field_39399 + m (Ljava/lang/String;Ljava/security/PrivateKey;Lnet/minecraft/util/SignatureUpdater;)[B method_44178 a method_44178 + m (Ljava/security/PrivateKey;Ljava/lang/String;)Lnet/minecraft/util/Signer; from a method_44179 + p 0 privateKey + p 1 algorithm + m ([B)[B sign a method_44180 + p 1 signature + m ([BLnet/minecraft/util/SignatureUpdater$Output;)V method_44181 a method_44181 + m ()V +c net/minecraft/util/SimpleBitStorage azd net/minecraft/class_3508 + f [I MAGIC a field_24078 + f [J data b field_15631 + f I bits c field_15633 + f J mask d field_15634 + f I size e field_15632 + f I valuesPerLong f field_24079 + f I divideMul g field_24080 + f I divideAdd h field_24081 + f I divideShift i field_24082 + m (I)I cellIndex b method_27284 + p 1 index + m (II[I)V + p 1 bits + p 2 size + p 3 data + m (II)V + p 1 bits + p 2 size + m (II[J)V + p 1 bits + p 2 size + p 3 data + m ()V +c net/minecraft/util/SimpleBitStorage$InitializationException azd$a net/minecraft/class_3508$class_6685 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/util/SingleKeyCache aze net/minecraft/class_8105 + f Ljava/util/function/Function; computeValue a field_42269 + f Ljava/lang/Object; cacheKey b field_42270 + f Ljava/lang/Object; cachedValue c field_42271 + m (Ljava/lang/Object;)Ljava/lang/Object; getValue a method_48782 + p 1 cacheKey + m (Ljava/util/function/Function;)V + p 1 computeValue +c net/minecraft/util/SmoothDouble azf net/minecraft/class_3540 + f D targetValue a field_15760 + f D remainingValue b field_15759 + f D lastAmount c field_15758 + m ()V reset a method_15428 + m (DD)D getNewDeltaValue a method_15429 + m ()V +c net/minecraft/util/SortedArraySet azg net/minecraft/class_4706 + f I DEFAULT_INITIAL_CAPACITY a field_29860 + f Ljava/util/Comparator; comparator b field_21562 + f [Ljava/lang/Object; contents c field_21563 + f I size d field_21564 + m ()Lnet/minecraft/util/SortedArraySet; create a method_34958 + m (I)Lnet/minecraft/util/SortedArraySet; create a method_23859 + p 0 initialCapacity + m (Ljava/lang/Object;)Ljava/lang/Object; addOrGet a method_23862 + p 1 element + m (Ljava/lang/Object;I)V addInternal a method_23863 + p 1 element + p 2 index + m (Ljava/util/Comparator;)Lnet/minecraft/util/SortedArraySet; create a method_34959 + p 0 comparator + m (Ljava/util/Comparator;I)Lnet/minecraft/util/SortedArraySet; create a method_34960 + p 0 comparator + p 1 initialCapacity + m ([Ljava/lang/Object;)[Ljava/lang/Object; castRawArray a method_23864 + p 0 array + m ()Ljava/lang/Object; first b method_23865 + c Gets the smallest element in the set + m (I)I getInsertionPosition b method_23866 + p 0 index + m (Ljava/lang/Object;)Ljava/lang/Object; get b method_34961 + p 1 element + m ()Ljava/lang/Object; last c method_34962 + m (I)V grow c method_23868 + p 1 size + m (Ljava/lang/Object;)I findIndex c method_23869 + p 1 object + m (I)V removeInternal d method_23870 + p 1 index + m (I)Ljava/lang/Object; getInternal e method_23871 + p 1 index + m (ILjava/util/Comparator;)V + p 1 initialCapacity + p 2 comparator +c net/minecraft/util/SortedArraySet$ArrayIterator azg$a net/minecraft/class_4706$class_4707 + f Lnet/minecraft/util/SortedArraySet; field_21565 a field_21565 + f I index b field_21566 + f I last c field_21567 + m (Lnet/minecraft/util/SortedArraySet;)V +c net/minecraft/util/SpawnUtil azh net/minecraft/class_7244 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/util/SpawnUtil$Strategy;)Z moveToPossibleSpawnPosition a method_42121 + p 0 level + p 1 yOffset + p 2 pos + p 3 strategy + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;IIILnet/minecraft/util/SpawnUtil$Strategy;)Ljava/util/Optional; trySpawnMob a method_42122 + p 0 entityType + p 1 spawnType + p 2 level + p 3 pos + p 4 attempts + p 5 spread + p 6 yOffset + p 7 strategy + m ()V +c net/minecraft/util/SpawnUtil$Strategy azh$a net/minecraft/class_7244$class_7502 + f Lnet/minecraft/util/SpawnUtil$Strategy; LEGACY_IRON_GOLEM a field_39400 + f Lnet/minecraft/util/SpawnUtil$Strategy; ON_TOP_OF_COLLIDER b field_39401 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_44182 a method_44182 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_44183 b method_44183 + m ()V +c net/minecraft/util/StaticCache2D azi net/minecraft/class_9762 + f I minX a field_51878 + f I minZ b field_51879 + f I sizeX c field_51880 + f I sizeZ d field_51881 + f [Ljava/lang/Object; cache e field_51882 + m (II)Ljava/lang/Object; get a method_60482 + p 1 x + p 2 z + m (IIILnet/minecraft/util/StaticCache2D$Initializer;)Lnet/minecraft/util/StaticCache2D; create a method_60483 + p 0 centerX + p 1 centerZ + p 2 size + p 3 initializer + m (Ljava/util/function/Consumer;)V forEach a method_60484 + p 1 action + m (II)Z contains b method_60485 + p 1 x + p 2 z + m (II)I getIndex c method_60486 + p 1 x + p 2 z + m (IIIILnet/minecraft/util/StaticCache2D$Initializer;)V + p 1 minX + p 2 minZ + p 3 sizeX + p 4 sizeZ + p 5 initializer +c net/minecraft/util/StaticCache2D$Initializer azi$a net/minecraft/class_9762$class_9763 +c net/minecraft/util/StringDecomposer azj net/minecraft/class_5223 + f C REPLACEMENT_CHAR a field_29861 + f Ljava/util/Optional; STOP_ITERATION b field_24215 + m (Lnet/minecraft/util/FormattedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27470 a method_27470 + m (Ljava/lang/String;)Ljava/lang/String; filterBrokenSurrogates a method_27471 + p 0 text + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27472 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 skip + c The amount of characters to skip from the beginning. + p 2 style + p 3 sink + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27473 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 skip + c The amount of character to skip from the beginning. + p 2 currentStyle + c The current style at the starting position after the skip. + p 3 defaultStyle + c The default style for the sequence that should be applied after a reset format code ({@code §r}) + p 4 sink + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterate a method_27474 + p 0 text + p 1 style + p 2 sink + m (Ljava/lang/StringBuilder;ILnet/minecraft/network/chat/Style;I)Z method_31401 a method_31401 + m (Lnet/minecraft/network/chat/FormattedText;)Ljava/lang/String; getPlainText a method_31402 + p 0 text + m (Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted a method_27476 + p 0 text + p 1 style + p 2 sink + m (Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;IC)Z feedChar a method_27477 + p 0 style + p 1 sink + p 2 position + p 3 character + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateBackwards b method_27478 + p 0 text + p 1 style + p 2 sink + m (Ljava/lang/StringBuilder;ILnet/minecraft/network/chat/Style;I)Z method_27475 b method_27475 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;Lnet/minecraft/util/FormattedCharSink;)Z iterateFormatted c method_27479 + c Iterate a String while applying legacy formatting codes starting with a {@code §} sign. + p 0 text + p 1 style + p 2 sink + m ()V + m ()V +c net/minecraft/util/StringRepresentable azk net/minecraft/class_3542 + f I PRE_BUILT_MAP_THRESHOLD W field_38377 + m (Lnet/minecraft/util/StringRepresentable;)Lnet/minecraft/util/StringRepresentable; method_53949 a method_53949 + m (Ljava/lang/String;)Ljava/lang/String; method_53950 a method_53950 + m (Ljava/util/Map;Ljava/lang/String;)Lnet/minecraft/util/StringRepresentable; method_53951 a method_53951 + m (Ljava/util/function/Function;Lnet/minecraft/util/StringRepresentable;)Ljava/lang/String; method_53952 a method_53952 + m (Ljava/util/function/Supplier;)Lnet/minecraft/util/StringRepresentable$EnumCodec; fromEnum a method_28140 + p 0 elementsSupplier + m (Ljava/util/function/Supplier;Ljava/util/function/Function;)Lnet/minecraft/util/StringRepresentable$EnumCodec; fromEnumWithMapping a method_49454 + p 0 enumValues + p 1 keyFunction + m ([Lnet/minecraft/util/StringRepresentable;)Lcom/mojang/serialization/Keyable; keys a method_28142 + p 0 serializables + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;)Ljava/util/function/Function; createNameLookup a method_53953 + p 0 values + p 1 keyFunction + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/lang/String;)Lnet/minecraft/util/StringRepresentable; method_53954 a method_53954 + m (Ljava/lang/String;)Ljava/lang/String; method_49451 b method_49451 + m (Ljava/util/function/Supplier;)Lcom/mojang/serialization/Codec; fromValues b method_53955 + p 0 valuesSupplier + m ()Ljava/lang/String; getSerializedName c method_15434 +c net/minecraft/util/StringRepresentable$1 azk$1 net/minecraft/class_3542$1 + f [Lnet/minecraft/util/StringRepresentable; val$values a field_35666 + m ([Lnet/minecraft/util/StringRepresentable;)V +c net/minecraft/util/StringRepresentable$EnumCodec azk$a net/minecraft/class_3542$class_7292 + f Ljava/util/function/Function; resolver a field_38379 + m (Ljava/lang/Object;)I method_42632 a method_42632 + m (Ljava/lang/String;)Ljava/lang/Enum; byName a method_42633 + p 1 name + m (Ljava/lang/String;Ljava/lang/Enum;)Ljava/lang/Enum; byName a method_47920 + p 1 name + p 2 defaultValue + m ([Ljava/lang/Enum;Ljava/util/function/Function;)V + p 1 values + p 2 resolver +c net/minecraft/util/StringRepresentable$StringRepresentableCodec azk$b net/minecraft/class_3542$class_8808 + f Lcom/mojang/serialization/Codec; codec a field_46245 + m (Lnet/minecraft/util/StringRepresentable;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_53956 + p 1 input + p 2 ops + p 3 prefix + m ([Lnet/minecraft/util/StringRepresentable;I)Lnet/minecraft/util/StringRepresentable; method_53957 a method_53957 + m ([Lnet/minecraft/util/StringRepresentable;Ljava/util/function/Function;Ljava/util/function/ToIntFunction;)V + p 1 values + p 2 nameLookup + p 3 indexLookup +c net/minecraft/util/StringUtil azl net/minecraft/class_3544 + f Ljava/util/regex/Pattern; STRIP_COLOR_PATTERN a field_15771 + f Ljava/util/regex/Pattern; LINE_PATTERN b field_29204 + f Ljava/util/regex/Pattern; LINE_END_PATTERN c field_33559 + m (C)Z isAllowedChatCharacter a method_57175 + p 0 character + m (I)Z isWhitespace a method_57176 + p 0 character + m (IF)Ljava/lang/String; formatTickDuration a method_15439 + p 0 ticks + p 1 ticksPerSecond + m (Ljava/lang/String;)Ljava/lang/String; stripColor a method_15440 + p 0 text + m (Ljava/lang/String;IZ)Ljava/lang/String; truncateStringIfNecessary a method_34963 + p 0 string + p 1 maxSize + p 2 addEllipsis + m (Ljava/lang/String;Z)Ljava/lang/String; filterText a method_57177 + p 0 text + p 1 allowLineBreaks + m (I)Z method_57178 b method_57178 + m (Ljava/lang/String;)Z isNullOrEmpty b method_15438 + c Returns a value indicating whether the given string is null or empty. + p 0 string + m (Ljava/lang/String;)I lineCount c method_34238 + p 0 string + m (Ljava/lang/String;)Z endsWithNewLine d method_36358 + p 0 string + m (Ljava/lang/String;)Ljava/lang/String; trimChatMessage e method_43681 + p 0 string + m (Ljava/lang/String;)Z isValidPlayerName f method_57179 + p 0 playerName + m (Ljava/lang/String;)Ljava/lang/String; filterText g method_57180 + p 0 text + m (Ljava/lang/String;)Z isBlank h method_57181 + p 0 string + m ()V + m ()V +c net/minecraft/util/TaskChainer azm net/minecraft/class_7620 + f Lorg/slf4j/Logger; LOGGER a field_39831 + m (Ljava/lang/Runnable;Ljava/lang/Object;)V method_54441 a method_54441 + m ()V +c net/minecraft/util/TaskChainer$1 azm$1 net/minecraft/class_7620$1 + f Ljava/util/concurrent/Executor; val$executor b field_46770 + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_54442 a method_54442 + m (Ljava/util/concurrent/Executor;)V +c net/minecraft/util/ThreadingDetector azn net/minecraft/class_5798 + f Lorg/slf4j/Logger; LOGGER a field_36293 + f Ljava/lang/String; name b field_36294 + f Ljava/util/concurrent/Semaphore; lock c field_36295 + f Ljava/util/concurrent/locks/Lock; stackTraceLock d field_36296 + f Ljava/lang/Thread; threadThatFailedToAcquire e field_36297 + f Lnet/minecraft/ReportedException; fullException f field_36298 + m ()V checkAndLock a method_39935 + m (Ljava/lang/String;Ljava/lang/Thread;)Lnet/minecraft/ReportedException; makeThreadingException a method_33564 + p 0 accessed + p 1 thread + m (Ljava/lang/Thread;)Ljava/lang/String; stackTrace a method_39936 + p 0 thread + m ()V checkAndUnlock b method_39937 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/util/TimeSource azo net/minecraft/class_7576 +c net/minecraft/util/TimeSource$NanoTimeSource azo$a net/minecraft/class_7576$class_7577 +c net/minecraft/util/TimeUtil azp net/minecraft/class_4802 + f J NANOSECONDS_PER_SECOND a field_33868 + f J NANOSECONDS_PER_MILLISECOND b field_33869 + f J MILLISECONDS_PER_SECOND c field_46957 + f J SECONDS_PER_HOUR d field_46958 + f I SECONDS_PER_MINUTE e field_47726 + m (II)Lnet/minecraft/util/valueproviders/UniformInt; rangeOfSeconds a method_24505 + p 0 minInclusive + p 1 maxInclusive + m ()V + m ()V +c net/minecraft/util/ToFloatFunction azq net/minecraft/class_6501 + f Lnet/minecraft/util/ToFloatFunction; IDENTITY a field_37409 + m (F)F method_41307 a method_41307 + m (Lit/unimi/dsi/fastutil/floats/Float2FloatFunction;)Lnet/minecraft/util/ToFloatFunction; createUnlimited a method_41308 + p 0 wrapped + m (Ljava/lang/Object;)F apply a method_41296 + p 1 object + m (Ljava/util/function/Function;)Lnet/minecraft/util/ToFloatFunction; comap a method_41309 + p 1 converter + m ()F minValue b comp_532 + m ()F maxValue c comp_533 + m ()V +c net/minecraft/util/ToFloatFunction$1 azq$1 net/minecraft/class_6501$1 + f Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; val$function b field_37410 + m (Ljava/lang/Float;)F apply a method_41310 + m (Lit/unimi/dsi/fastutil/floats/Float2FloatFunction;)V +c net/minecraft/util/ToFloatFunction$2 azq$2 net/minecraft/class_6501$2 + f Lnet/minecraft/util/ToFloatFunction; val$outer b field_37411 + f Ljava/util/function/Function; val$function c field_37412 + m (Lnet/minecraft/util/ToFloatFunction;Lnet/minecraft/util/ToFloatFunction;Ljava/util/function/Function;)V +c net/minecraft/util/Tuple azr net/minecraft/class_3545 + f Ljava/lang/Object; a a field_15772 + f Ljava/lang/Object; b b field_15773 + m ()Ljava/lang/Object; getA a method_15442 + m (Ljava/lang/Object;)V setA a method_34964 + p 1 a + m ()Ljava/lang/Object; getB b method_15441 + m (Ljava/lang/Object;)V setB b method_34965 + p 1 b + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 1 a + p 2 b +c net/minecraft/util/Unit azs net/minecraft/class_3902 + f Lnet/minecraft/util/Unit; INSTANCE a field_17274 + f Lcom/mojang/serialization/Codec; CODEC b field_51563 + f [Lnet/minecraft/util/Unit; $VALUES c field_17275 + m ()[Lnet/minecraft/util/Unit; $values a method_36588 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/VisibleForDebug azt net/minecraft/class_5996 +c net/minecraft/util/ZeroBitStorage azu net/minecraft/class_6502 + f [J RAW a field_34401 + f I size b field_34402 + m (I)V + p 1 size + m ()V +c net/minecraft/util/datafix/ComponentDataFixUtils azv net/minecraft/class_8809 + f Ljava/lang/String; EMPTY_CONTENTS a field_46246 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; wrapLiteralStringAsComponent a method_53958 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_53959 a method_53959 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; createEmptyComponent a method_53960 + p 0 ops + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createPlainTextComponent a method_53961 + p 0 ops + p 1 text + m (Ljava/lang/String;)Ljava/util/Optional; extractTranslationString a method_58596 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; rewriteFromLenient b method_56629 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createTranslatableComponent b method_53963 + p 0 ops + p 1 translationKey + m (Ljava/lang/String;)Ljava/lang/String; createTextComponentJson b method_53962 + p 0 text + m ()V + m ()V +c net/minecraft/util/datafix/DataFixTypes azw net/minecraft/class_4284 + f Lnet/minecraft/util/datafix/DataFixTypes; LEVEL a field_19212 + f Lnet/minecraft/util/datafix/DataFixTypes; PLAYER b field_19213 + f Lnet/minecraft/util/datafix/DataFixTypes; CHUNK c field_19214 + f Lnet/minecraft/util/datafix/DataFixTypes; HOTBAR d field_19215 + f Lnet/minecraft/util/datafix/DataFixTypes; OPTIONS e field_19216 + f Lnet/minecraft/util/datafix/DataFixTypes; STRUCTURE f field_19217 + f Lnet/minecraft/util/datafix/DataFixTypes; STATS g field_19218 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_COMMAND_STORAGE h field_45077 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_FORCED_CHUNKS i field_45078 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_MAP_DATA j field_45079 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_MAP_INDEX k field_45080 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_RAIDS l field_45081 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_RANDOM_SEQUENCES m field_45082 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_SCOREBOARD n field_45083 + f Lnet/minecraft/util/datafix/DataFixTypes; SAVED_DATA_STRUCTURE_FEATURE_INDICES o field_45084 + f Lnet/minecraft/util/datafix/DataFixTypes; ADVANCEMENTS p field_19220 + f Lnet/minecraft/util/datafix/DataFixTypes; POI_CHUNK q field_19221 + f Lnet/minecraft/util/datafix/DataFixTypes; WORLD_GEN_SETTINGS r field_24640 + f Lnet/minecraft/util/datafix/DataFixTypes; ENTITY_CHUNK s field_26990 + f Ljava/util/Set; TYPES_FOR_LEVEL_LIST t field_42975 + f Lcom/mojang/datafixers/DSL$TypeReference; type u field_19222 + f [Lnet/minecraft/util/datafix/DataFixTypes; $VALUES v field_19223 + m ()I currentVersion a method_48132 + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; updateToCurrentVersion a method_48128 + p 1 fixer + p 2 input + p 3 version + m (Lcom/mojang/datafixers/DataFixer;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; update a method_48129 + p 1 fixer + p 2 input + p 3 version + p 4 newVersion + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; updateToCurrentVersion a method_48130 + p 1 fixer + p 2 tag + p 3 version + m (Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/nbt/CompoundTag;II)Lnet/minecraft/nbt/CompoundTag; update a method_48131 + p 1 fixer + p 2 tag + p 3 version + p 4 newVersion + m (Lcom/mojang/serialization/Codec;Lcom/mojang/datafixers/DataFixer;I)Lcom/mojang/serialization/Codec; wrapCodec a method_53711 + p 1 codec + p 2 dataFixer + p 3 dataVersion + m ()[Lnet/minecraft/util/datafix/DataFixTypes; $values b method_36589 + m (Ljava/lang/String;ILcom/mojang/datafixers/DSL$TypeReference;)V + p 3 type + m ()V +c net/minecraft/util/datafix/DataFixTypes$1 azw$1 net/minecraft/class_4284$1 + f Lcom/mojang/serialization/Codec; val$codec a field_46087 + f I val$defaultVersion b field_46088 + f Lcom/mojang/datafixers/DataFixer; val$dataFixer c field_46089 + f Lnet/minecraft/util/datafix/DataFixTypes; field_46090 d field_46090 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; method_53712 a method_53712 + m (Lnet/minecraft/util/datafix/DataFixTypes;Lcom/mojang/serialization/Codec;ILcom/mojang/datafixers/DataFixer;)V +c net/minecraft/util/datafix/DataFixers azx net/minecraft/class_3551 + f I BLENDING_VERSION a field_38844 + f Ljava/util/function/BiFunction; SAME b field_15776 + f Ljava/util/function/BiFunction; SAME_NAMESPACED c field_15775 + f Lcom/mojang/datafixers/DataFixerBuilder$Result; DATA_FIXER d field_15777 + m ()Lcom/mojang/datafixers/DataFixer; getDataFixer a method_15450 + m (Lcom/google/common/collect/ImmutableMap;Ljava/lang/String;)Ljava/lang/String; method_43060 a method_43060 + m (Lcom/mojang/datafixers/DataFixerBuilder;)V addFixers a method_15451 + p 0 builder + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43061 a method_43061 + m (Ljava/lang/String;)Ljava/lang/String; method_51289 a method_51289 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/function/UnaryOperator; createRenamer a method_30068 + p 0 oldName + p 1 newName + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_30069 a method_30069 + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; createRenamerNoNamespace a method_57075 + p 0 renameMap + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_30071 a method_30071 + m (Ljava/util/Set;)Ljava/util/concurrent/CompletableFuture; optimize a method_60487 + p 0 references + m ()Lcom/mojang/datafixers/DataFixerBuilder$Result; createFixerUpper b method_15471 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43062 b method_43062 + m (Ljava/lang/String;)Ljava/lang/String; method_15459 b method_15459 + m (Ljava/util/Map;)Ljava/util/function/UnaryOperator; createRenamer b method_30070 + p 0 renameMap + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_57076 b method_57076 + m (Ljava/lang/String;)Ljava/lang/String; method_15455 c method_15455 + m (Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String; method_44184 c method_44184 + m (Ljava/lang/String;)Ljava/lang/String; method_15449 d method_15449 + m ()V + m ()V +c net/minecraft/util/datafix/DataFixers$1 azx$1 net/minecraft/class_3551$1 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V +c net/minecraft/util/datafix/DataFixers$2 azx$2 net/minecraft/class_3551$2 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V +c net/minecraft/util/datafix/ExtraDataFixUtils azy net/minecraft/class_9228 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; cast a method_57182 + p 0 type + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockPos a method_56943 + p 0 data + m ([Ljava/util/function/Function;)Ljava/util/function/Function; chainAllFilters a method_59907 + p 0 filters + m ([Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59908 a method_59908 + m ()V +c net/minecraft/util/datafix/FixWolfHealth azz net/minecraft/class_9229 + f Ljava/lang/String; WOLF_ID a field_49054 + f Ljava/lang/String; WOLF_HEALTH b field_49055 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56948 a method_56948 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56949 a method_56949 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56950 b method_56950 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56951 b method_56951 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56952 c method_56952 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/PackedBitStorage baa net/minecraft/class_5298 + f I BIT_TO_LONG_SHIFT a field_29862 + f [J data b field_24641 + f I bits c field_24642 + f J mask d field_24643 + f I size e field_24644 + m ()[J getRaw a method_28151 + m (I)I get a method_28152 + p 1 index + m (II)V set a method_28153 + p 1 index + p 2 value + m ()I getBits b method_28154 + m (II)V + p 1 bits + p 2 size + m (II[J)V + p 1 bits + p 2 size + p 3 data +c net/minecraft/util/datafix/fixes/AbstractArrowPickupFix bab net/minecraft/class_5946 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateProjectiles a method_34684 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_34685 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updatePickup a method_34686 + p 0 dynamic + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_34687 a method_34687 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/AbstractPoiSectionFix bac net/minecraft/class_4620 + f Ljava/lang/String; name a field_39402 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23302 a method_23302 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_23299 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_44185 a method_44185 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28243 a method_28243 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; processRecords a method_44186 + p 1 records + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_23305 b method_23305 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; processSection b method_44187 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; processSectionRecords c method_44188 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28246 d method_28246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/AbstractUUIDFix bad net/minecraft/class_4958 + f Lcom/mojang/datafixers/DSL$TypeReference; typeReference a field_23121 + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateNamedChoice a method_26009 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; createUUIDFromML a method_26002 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;JJ)Ljava/util/Optional; createUUIDTag a method_26003 + p 0 dynamic + p 1 most + p 3 least + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28155 a method_28155 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; createUUIDFromString a method_26005 + p 0 dynamic + p 1 uuidKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDString a method_26006 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28156 a method_28156 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28157 a method_28157 + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26010 a method_26010 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDMLTag b method_26011 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28158 b method_28158 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; replaceUUIDLeastMost c method_26013 + p 0 dynamic + p 1 oldKey + p 2 newKey + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; createUUIDFromLongs d method_26014 + p 0 dynamic + p 1 mostKey + p 2 leastKey + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 typeReference +c net/minecraft/util/datafix/fixes/AddFlagIfNotPresentFix bae net/minecraft/class_6636 + f Ljava/lang/String; name a field_35009 + f Z flagValue b field_35010 + f Ljava/lang/String; flagKey c field_35011 + f Lcom/mojang/datafixers/DSL$TypeReference; typeReference d field_35012 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38789 a method_38789 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38790 a method_38790 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38791 b method_38791 + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Z)V + p 1 outputSchema + p 2 typeReference + p 3 flagKey + p 4 flagValue +c net/minecraft/util/datafix/fixes/AddNewChoices baf net/minecraft/class_3553 + f Ljava/lang/String; name a field_15779 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_15780 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15476 + p 1 inputChoiceType + p 2 outputChoiceType + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15475 a method_15475 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15477 a method_15477 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 name + p 3 type +c net/minecraft/util/datafix/fixes/AdvancementsFix bag net/minecraft/class_3555 + f Ljava/util/Map; RENAMES a field_15788 + m (Ljava/lang/String;)Ljava/lang/String; method_24238 a method_24238 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/AdvancementsRenameFix bah net/minecraft/class_4744 + f Ljava/lang/String; name a field_21814 + f Ljava/util/function/Function; renamer b field_21815 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24242 a method_24242 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28159 a method_28159 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28160 a method_28160 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28161 a method_28161 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/util/function/Function;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 renamer +c net/minecraft/util/datafix/fixes/AreaEffectCloudPotionFix bai net/minecraft/class_9263 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_57191 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/AttributeModifierIdFix baj net/minecraft/class_9785 + f Ljava/util/Map; ID_MAP a field_51992 + f Ljava/util/Map; NAME_MAP b field_51993 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60678 a method_60678 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixEntity a method_60679 + p 0 entity + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; convertModifierForEntity a method_60680 + p 0 modifier + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60681 a method_60681 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)V method_60682 a method_60682 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixModifiersTypeWrapper a method_60683 + p 0 modifiers + m ([I)Ljava/util/UUID; uuidFromIntArray a method_60684 + p 0 intArray + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60685 b method_60685 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixItemStackComponents b method_60686 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixModifiers b method_60687 + p 0 modifiers + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAttribute c method_60688 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_60689 c method_60689 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60690 d method_60690 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_60691 d method_60691 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60692 e method_60692 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60693 f method_60693 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60694 g method_60694 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60695 h method_60695 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/AttributesRename bak net/minecraft/class_5129 + f Ljava/lang/String; name a field_49056 + f Ljava/util/function/UnaryOperator; renames b field_23695 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26809 a method_26809 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixItemStackTag a method_26810 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixName a method_26808 + p 1 data + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28162 a method_28162 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fixEntity b method_26814 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28163 b method_28163 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_28164 b method_28164 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28165 c method_28165 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28166 d method_28166 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28167 e method_28167 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28168 f method_28168 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28169 g method_28169 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/BannerEntityCustomNameToOverrideComponentFix bal net/minecraft/class_9451 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;)Lcom/mojang/datafixers/Typed; fix a method_58597 + p 1 data + p 2 finder + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58598 a method_58598 + m (Lcom/mojang/serialization/OptionalDynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58599 a method_58599 + m (Ljava/lang/String;)Z method_58600 a method_58600 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BannerPatternFormatFix bam net/minecraft/class_9264 + f Ljava/util/Map; PATTERN_ID_MAP a field_49187 + m (I)Ljava/lang/String; fixColor a method_57192 + p 0 color + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_57193 + p 0 tag + m (Ljava/lang/String;)Ljava/lang/String; method_57194 a method_57194 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixLayer b method_57195 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57197 c method_57197 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57198 d method_57198 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BedItemColorFix ban net/minecraft/class_3559 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15521 a method_15521 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BeehiveFieldRenameFix bao net/minecraft/class_9265 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57199 a method_57199 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57200 a method_57200 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57201 a method_57201 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57202 a method_57202 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBeehive a method_57203 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBee b method_57204 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BiomeFix bap net/minecraft/class_3561 + f Ljava/util/Map; BIOMES a field_15810 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/BitStorageAlignFix baq net/minecraft/class_5196 + f I BIT_TO_LONG_SHIFT a field_29863 + f I SECTION_WIDTH b field_29864 + f I SECTION_HEIGHT c field_29865 + f I SECTION_SIZE d field_29866 + f I HEIGHTMAP_BITS e field_29867 + f I HEIGHTMAP_SIZE f field_29868 + m (II[J)[J addPadding a method_27288 + p 0 numBits + p 1 bitWidth + p 2 inputData + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28172 a method_28172 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27292 a method_27292 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateSections a method_27774 + p 0 sections + p 2 palette + p 3 data + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27294 a method_27294 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27295 a method_27295 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateHeightmaps a method_27775 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_27769 a method_27769 + m (Lcom/mojang/serialization/Dynamic;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28173 a method_28173 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_27773 a method_27773 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28174 a method_28174 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateBitStorage a method_27772 + p 0 output + p 1 data + p 2 numBits + p 3 bitWidth + m (Ljava/util/List;)Ljava/lang/Integer; method_27296 a method_27296 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27293 b method_27293 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28175 b method_28175 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlendingDataFix bar net/minecraft/class_7090 + f Ljava/lang/String; name a field_37414 + f Ljava/util/Set; STATUSES_TO_SKIP_BLENDING b field_37415 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41311 a method_41311 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44685 a method_44685 + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateBlendingData a method_41313 + p 0 chunkTag + p 1 maxY + p 2 minY + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_41312 + p 0 chunkTag + p 1 context + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BlendingDataRemoveFromNetherEndFix bas net/minecraft/class_7589 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_44686 a method_44686 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44687 a method_44687 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_44688 + p 0 chunkTag + p 1 context + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlockEntityBannerColorFix bat net/minecraft/class_3564 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15546 + p 1 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_15545 a method_15545 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28176 b method_28176 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28177 c method_28177 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28178 d method_28178 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28179 e method_28179 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityBlockStateFix bau net/minecraft/class_3566 + m ()Ljava/lang/IllegalStateException; method_15553 a method_15553 + m ()Ljava/lang/IllegalStateException; method_15554 b method_15554 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityCustomNameToComponentFix bav net/minecraft/class_3567 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15555 a method_15555 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28180 a method_28180 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityIdFix baw net/minecraft/class_3571 + f Ljava/util/Map; ID_MAP a field_15824 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15576 a method_15576 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28181 a method_28181 + m (Ljava/lang/String;)Ljava/lang/String; method_15577 a method_15577 + m (Ljava/util/HashMap;)V method_15575 a method_15575 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/BlockEntityJukeboxFix bax net/minecraft/class_3573 + m ()Ljava/lang/IllegalStateException; method_15578 a method_15578 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityKeepPacked bay net/minecraft/class_3574 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15579 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityRenameFix baz net/minecraft/class_8220 + f Ljava/lang/String; name a field_43174 + f Ljava/util/function/UnaryOperator; nameChangeLookup b field_43175 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lcom/mojang/datafixers/DataFix; create a method_49756 + p 0 outputSchema + p 1 name + p 2 nameChangeLookup + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_49757 a method_49757 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_49758 a method_49758 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 nameChangeLookup +c net/minecraft/util/datafix/fixes/BlockEntityShulkerBoxColorFix bba net/minecraft/class_3575 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15580 a method_15580 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntitySignDoubleSidedEditableTextFix bbb net/minecraft/class_8221 + f Ljava/lang/String; FILTERED_CORRECT a field_45085 + f Ljava/lang/String; DEFAULT_COLOR b field_45086 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49760 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/stream/Stream; getLines a method_52469 + p 0 dynamic + p 1 prefix + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; method_52470 a method_52470 + m (Ljava/util/List;Ljava/util/Optional;J)Lcom/mojang/serialization/Dynamic; method_52471 a method_52471 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFrontTextTag b method_52472 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; createDefaultText c method_52473 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; createEmptyLines d method_52474 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 entityName +c net/minecraft/util/datafix/fixes/BlockEntitySignTextStrictJsonFix bbc net/minecraft/class_3577 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15581 a method_15581 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateLine a method_15582 + p 1 dynamic + p 2 key + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockEntityUUIDFix bbd net/minecraft/class_4959 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26016 a method_26016 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26015 a method_26015 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSkull b method_26017 + p 1 skullTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateConduit c method_26018 + p 1 conduitTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26019 d method_26019 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/BlockNameFlatteningFix bbe net/minecraft/class_3578 + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/String; method_15584 a method_15584 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15586 a method_15586 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15585 a method_15585 + m (Ljava/lang/String;)Ljava/lang/String; method_15587 a method_15587 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/BlockPosFormatAndRenamesFix bbf net/minecraft/class_9230 + f Ljava/util/List; PATROLLING_MOBS a field_49057 + m (Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)Lcom/mojang/datafixers/TypeRewriteRule; createEntityFixer a method_56953 + p 1 reference + p 2 entityId + p 3 renames + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/Map;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56954 a method_56954 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56955 a method_56955 + m (Lcom/mojang/datafixers/Typed;Ljava/util/Map;)Lcom/mojang/datafixers/Typed; fixFields a method_56956 + p 1 data + p 2 renames + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMapSavedData a method_56957 + p 1 data + m (Ljava/util/List;)V addEntityRules a method_56958 + p 1 output + m (Ljava/util/Map;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56959 a method_56959 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56960 a method_56960 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56961 b method_56961 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56962 b method_56962 + m (Ljava/util/List;)V addBlockEntityRules b method_56963 + p 1 output + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56964 c method_56964 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56965 d method_56965 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56966 e method_56966 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56967 f method_56967 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56968 g method_56968 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56969 h method_56969 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/BlockRenameFix bbg net/minecraft/class_3579 + f Ljava/lang/String; name a field_15828 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_55637 a method_55637 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; create a method_15589 + p 0 outputSchema + p 1 name + p 2 renamer + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15591 a method_15591 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockState a method_15588 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15590 a method_15590 + m (Ljava/lang/String;)Ljava/lang/String; renameBlock a method_15593 + p 1 name + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15592 b method_15592 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_55638 b method_55638 + m (Ljava/lang/String;)Ljava/lang/String; fixFlatBlockState b method_55639 + p 1 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/BlockRenameFix$1 bbg$1 net/minecraft/class_3579$1 + f Ljava/util/function/Function; val$renamer a field_15829 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V +c net/minecraft/util/datafix/fixes/BlockStateData bbh net/minecraft/class_3580 + f Ljava/lang/String; FILTER_ME a field_29869 + f Lorg/slf4j/Logger; LOGGER b field_15832 + f [Lcom/mojang/serialization/Dynamic; MAP c field_24645 + f [Lcom/mojang/serialization/Dynamic; BLOCK_DEFAULTS d field_24646 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; ID_BY_OLD e field_15831 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; ID_BY_OLD_NAME f field_15833 + m ()V bootstrap0 a method_31448 + m (I)Ljava/lang/String; upgradeBlock a method_15599 + p 0 id + m (ILjava/lang/String;[Ljava/lang/String;)V register a method_15596 + p 0 id + p 1 fixedNBT + p 2 sourceNBTs + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; upgradeBlockStateTag a method_15597 + p 0 nbt + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_15595 a method_15595 + m (Ljava/lang/String;)Ljava/lang/String; upgradeBlock a method_15600 + p 0 name + m ()V bootstrap1 b method_31449 + m (I)Lcom/mojang/serialization/Dynamic; getTag b method_15594 + p 0 id + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_15601 b method_15601 + m (Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; parse b method_15598 + p 0 nbt + m ()V bootstrap2 c method_31450 + m ()V bootstrap3 d method_31451 + m ()V bootstrap4 e method_31452 + m ()V bootstrap5 f method_31453 + m ()V bootstrap6 g method_31454 + m ()V bootstrap7 h method_31455 + m ()V bootstrap8 i method_31456 + m ()V bootstrap9 j method_31457 + m ()V bootstrap10 k method_31458 + m ()V bootstrap11 l method_31459 + m ()V bootstrap12 m method_31460 + m ()V bootstrap13 n method_31461 + m ()V bootstrap14 o method_31462 + m ()V bootstrap15 p method_31463 + m ()V finalizeMaps q method_22426 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/BlockStateStructureTemplateFix bbi net/minecraft/class_3581 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15602 a method_15602 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CatTypeFix bbj net/minecraft/class_3903 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_17325 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CauldronRenameFix bbk net/minecraft/class_5528 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_31464 a method_31464 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_31465 + p 0 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CavesAndCliffsRenames bbl net/minecraft/class_6669 + f Lcom/google/common/collect/ImmutableMap; RENAMES a field_35100 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/ChestedHorsesInventoryZeroIndexingFix bbm net/minecraft/class_9182 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56630 a method_56630 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56631 a method_56631 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56632 a method_56632 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;)Lcom/mojang/datafixers/TypeRewriteRule; horseLikeInventoryIndexingFixer a method_56633 + p 1 opticFinder + p 2 type + p 3 entityId + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56634 a method_56634 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56635 a method_56635 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56636 b method_56636 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56637 b method_56637 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_56638 c method_56638 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkBedBlockEntityInjecterFix bbn net/minecraft/class_3557 + m ()Ljava/lang/IllegalStateException; method_15507 a method_15507 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15510 a method_15510 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/templates/List$ListType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15506 + p 1 levelType + p 2 tileEntityTypes + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15511 a method_15511 + m (Lcom/mojang/serialization/Dynamic;IIIIJ)Ljava/util/Map; method_49456 a method_49456 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28171 a method_28171 + m (Ljava/util/List;Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)V method_49457 a method_49457 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkBiomeFix bbo net/minecraft/class_4541 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_22374 a method_22374 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_22375 a method_22375 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_22373 a method_22373 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkDeleteIgnoredLightDataFix bbp net/minecraft/class_7091 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41314 a method_41314 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_41315 a method_41315 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41316 a method_41316 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkDeleteLightFix bbq net/minecraft/class_8525 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51497 a method_51497 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51498 a method_51498 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51499 a method_51499 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51500 b method_51500 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkHeightAndBiomeFix bbr net/minecraft/class_6637 + f Ljava/lang/String; DATAFIXER_CONTEXT_TAG a field_35444 + f I BLOCKS_PER_SECTION b field_36214 + f Ljava/lang/String; DEFAULT_BIOME c field_35016 + f Ljava/lang/String; NAME d field_35017 + f I OLD_SECTION_COUNT e field_35018 + f I NEW_SECTION_COUNT f field_35019 + f I NEW_MIN_SECTION_Y g field_35020 + f I LONGS_PER_SECTION h field_36215 + f I HEIGHTMAP_BITS i field_35022 + f J HEIGHTMAP_MASK j field_35023 + f I HEIGHTMAP_OFFSET k field_35024 + f [Ljava/lang/String; HEIGHTMAP_TYPES l field_35025 + f Ljava/util/Set; STATUS_IS_OR_AFTER_SURFACE m field_35667 + f Ljava/util/Set; STATUS_IS_OR_AFTER_NOISE n field_35668 + f Ljava/util/Set; BLOCKS_BEFORE_FEATURE_STATUS o field_35669 + f I BIOME_CONTAINER_LAYER_SIZE p field_35026 + f I BIOME_CONTAINER_SIZE q field_35027 + f I BIOME_CONTAINER_TOP_LAYER_OFFSET r field_35028 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; BIOMES_BY_ID s field_35029 + m ()Ljava/lang/IllegalStateException; method_38811 a method_38811 + m (I)I ceillog2 a method_38793 + p 0 value + m (IILcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_38794 a method_38794 + m (J)J method_38795 a method_38795 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38796 a method_38796 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38797 a method_38797 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; shiftUpgradeData a method_39754 + p 0 data + m (Lcom/mojang/serialization/Dynamic;II)Lcom/mojang/serialization/Dynamic; updateCarvingMasks a method_38799 + p 0 data + p 1 sectionCount + p 2 offset + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makePalettedContainer a method_38802 + p 0 palette + p 1 blockStates + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Ljava/util/List;)Lcom/mojang/serialization/Dynamic; padPaletteEntries a method_39781 + p 0 palette + p 1 blockStates + p 2 paletteEntries + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)Lcom/mojang/serialization/Dynamic; makeBiomeContainer a method_38803 + p 0 data + p 1 oldBiomeGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)Lcom/mojang/serialization/Dynamic; method_38804 a method_38804 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; addPaddingEntries a method_38805 + p 0 data + p 1 key + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Set;)Lcom/mojang/serialization/Dynamic; predictChunkStatusBeforeSurface a method_39517 + p 1 data + p 2 blockPalette + m (Lcom/mojang/serialization/Dynamic;ZILorg/apache/commons/lang3/mutable/MutableBoolean;)[Lcom/mojang/serialization/Dynamic; getBiomeContainers a method_38806 + p 0 data + p 1 overworld + p 2 lowestY + p 3 isTallChunk + m (Lcom/mojang/serialization/Dynamic;ZZZLjava/util/function/Supplier;)Lcom/mojang/serialization/Dynamic; updateChunkTag a method_38807 + p 0 chunkTag + p 1 overworld + p 2 isTallChunk + p 3 isNoiseGenerator + p 4 paletteSupplier + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_39755 a method_39755 + m (Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Ljava/lang/Integer;)V method_39756 a method_39756 + m (Ljava/util/Map;Ljava/util/Map;)V method_39757 a method_39757 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39518 a method_39518 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;I[Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/IntSet;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38801 a method_38801 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;I[Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38800 a method_38800 + m (Ljava/util/Set;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_38817 a method_38817 + m (ZLjava/util/Set;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/lang/String;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38808 a method_38808 + m ([II)I getOldBiome a method_39519 + p 0 biomes + p 1 index + m ([III)I method_38809 a method_38809 + m ()Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39242 b method_39242 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateHeightmaps b method_38798 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makeOptimizedPalettedContainer b method_38813 + p 0 palette + p 1 blockStates + m ([II)I method_38810 b method_38810 + m ([III)I method_38814 b method_38814 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; getFixedHeightmap c method_38812 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38819 c method_38819 + m ([II)I method_38815 c method_38815 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; makePalettedContainer d method_38816 + p 0 palette + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38818 e method_38818 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39758 f method_39758 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39243 g method_39243 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_39520 h method_39520 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ChunkLightRemoveFix bbs net/minecraft/class_3755 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16441 a method_16441 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16442 a method_16442 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_16440 a method_16440 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix bbt net/minecraft/class_3582 + f Ljava/util/Map; BED_BLOCK_MAP A field_15849 + f Ljava/util/Map; BANNER_BLOCK_MAP B field_15851 + f Lcom/mojang/serialization/Dynamic; AIR C field_15843 + f I SIZE D field_29870 + f I NORTH_WEST_MASK a field_29871 + f I WEST_MASK b field_29872 + f I SOUTH_WEST_MASK c field_29873 + f I SOUTH_MASK d field_29874 + f I SOUTH_EAST_MASK e field_29875 + f I EAST_MASK f field_29876 + f I NORTH_EAST_MASK g field_29877 + f I NORTH_MASK h field_29878 + f Lorg/slf4j/Logger; LOGGER i field_15844 + f Ljava/util/BitSet; VIRTUAL j field_15842 + f Ljava/util/BitSet; FIX k field_15854 + f Lcom/mojang/serialization/Dynamic; PUMPKIN l field_15840 + f Lcom/mojang/serialization/Dynamic; SNOWY_PODZOL m field_15852 + f Lcom/mojang/serialization/Dynamic; SNOWY_GRASS n field_15838 + f Lcom/mojang/serialization/Dynamic; SNOWY_MYCELIUM o field_15850 + f Lcom/mojang/serialization/Dynamic; UPPER_SUNFLOWER p field_15839 + f Lcom/mojang/serialization/Dynamic; UPPER_LILAC q field_15848 + f Lcom/mojang/serialization/Dynamic; UPPER_TALL_GRASS r field_15834 + f Lcom/mojang/serialization/Dynamic; UPPER_LARGE_FERN s field_15845 + f Lcom/mojang/serialization/Dynamic; UPPER_ROSE_BUSH t field_15835 + f Lcom/mojang/serialization/Dynamic; UPPER_PEONY u field_15847 + f Ljava/util/Map; FLOWER_POT_MAP v field_15841 + f Ljava/util/Map; SKULL_MAP w field_15853 + f Ljava/util/Map; DOOR_MAP x field_15836 + f Ljava/util/Map; NOTE_BLOCK_MAP y field_15846 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; DYE_COLOR_MAP z field_15837 + m (Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap;Lcom/mojang/serialization/Dynamic;)I idFor a method_15616 + p 0 palette + p 1 data + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getName a method_15637 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/lang/String; getProperty a method_15638 + p 0 data + p 1 key + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_15603 a method_15603 + m (Ljava/util/HashMap;)V method_15608 a method_15608 + m (Ljava/util/Map;ILjava/lang/String;)V addBeds a method_15636 + p 0 map + p 1 id + p 2 bedColor + m (Ljava/util/Map;ILjava/lang/String;Ljava/lang/String;)V mapSkull a method_15610 + p 0 map + p 1 id + p 2 skullType + p 3 suffix + m (Ljava/util/Map;Ljava/lang/String;I)V mapDoor a method_15611 + p 0 map + p 1 doorId + p 2 id + m (ZZZZ)I getSideMask a method_15615 + p 0 west + p 1 east + p 2 north + p 3 south + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix b method_15633 + p 1 dynamic + m (Ljava/util/HashMap;)V method_15626 b method_15626 + m (Ljava/util/Map;ILjava/lang/String;)V addBanners b method_15605 + p 0 map + p 1 id + p 2 bannerColor + m (Ljava/util/HashMap;)V method_15613 c method_15613 + m (Ljava/util/HashMap;)V method_15607 d method_15607 + m (Ljava/util/HashMap;)V method_15639 e method_15639 + m (Ljava/util/HashMap;)V method_15631 f method_15631 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer bbt$a net/minecraft/class_3582$class_3583 + f I SIZE a field_29879 + f I NIBBLE_SIZE b field_29880 + f [B data c field_15855 + m (I)Z isFirst a method_15641 + m (III)I get a method_15640 + m (I)I getPosition b method_15642 + m ()V + m ([B)V + p 1 data +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction bbt$b net/minecraft/class_3582$class_3584 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; DOWN a field_15858 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; UP b field_15863 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; NORTH c field_15859 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; SOUTH d field_15862 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; WEST e field_15857 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; EAST f field_15860 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; axis g field_15864 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; axisDirection h field_15861 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; $VALUES i field_15865 + m ()Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; getAxisDirection a method_15643 + m ()Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; getAxis b method_15644 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction; $values c method_36590 + m (Ljava/lang/String;ILnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection;Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis;)V + p 3 axisDirection + p 4 axis + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis bbt$b$a net/minecraft/class_3582$class_3584$class_3585 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; X a field_15869 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; Y b field_15866 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; Z c field_15867 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; $VALUES d field_15868 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$Axis; $values a method_36591 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection bbt$b$b net/minecraft/class_3582$class_3584$class_3586 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; POSITIVE a field_15873 + f Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; NEGATIVE b field_15870 + f I step c field_15872 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; $VALUES d field_15871 + m ()I getStep a method_15645 + m ()[Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction$AxisDirection; $values b method_36592 + m (Ljava/lang/String;II)V + p 3 step + m ()V +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section bbt$c net/minecraft/class_3582$class_3587 + f I y a field_15879 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; palette b field_15882 + f Ljava/util/List; listTag c field_15880 + f Lcom/mojang/serialization/Dynamic; section d field_15878 + f Z hasData e field_15876 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; toFix f field_15881 + f Lit/unimi/dsi/fastutil/ints/IntList; update g field_15874 + f Ljava/util/Set; seen h field_15875 + f [I buffer i field_15877 + m ()Lcom/mojang/serialization/Dynamic; write a method_15651 + m (I)Lcom/mojang/serialization/Dynamic; getBlock a method_15649 + p 1 id + m (II)V addFix a method_15650 + m (ILcom/mojang/serialization/Dynamic;)V setBlock a method_15647 + p 1 index + p 2 data + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer; method_15654 a method_15654 + m (I)I upgrade b method_15652 + m (Ljava/nio/ByteBuffer;)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$DataLayer; method_15646 b method_15646 + m (Lcom/mojang/serialization/Dynamic;)V + p 1 section +c net/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$UpgradeChunk bbt$d net/minecraft/class_3582$class_3588 + f I sides a field_15885 + f [Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section; sections b field_15888 + f Lcom/mojang/serialization/Dynamic; level c field_15886 + f I x d field_15884 + f I z e field_15883 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; blockEntities f field_15887 + m ()Lcom/mojang/serialization/Dynamic; write a method_15664 + m (I)Lcom/mojang/serialization/Dynamic; getBlock a method_15662 + m (ILnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Direction;)I relative a method_15663 + p 1 direction + m (ILcom/mojang/serialization/Dynamic;)V setBlock a method_15657 + p 2 dynamic + m (Lcom/mojang/serialization/Dynamic;)V method_15656 a method_15656 + m (Ljava/util/stream/Stream;)V method_15661 a method_15661 + m (I)Lcom/mojang/serialization/Dynamic; getBlockEntity b method_15655 + p 1 index + m (Lcom/mojang/serialization/Dynamic;)V method_15665 b method_15665 + m (Ljava/util/stream/Stream;)V method_15659 b method_15659 + m (I)Lcom/mojang/serialization/Dynamic; removeBlockEntity c method_15660 + p 1 index + m (I)Lnet/minecraft/util/datafix/fixes/ChunkPalettedStorageFix$Section; getSection d method_15658 + m (Lcom/mojang/serialization/Dynamic;)V + p 1 level +c net/minecraft/util/datafix/fixes/ChunkProtoTickListFix bbu net/minecraft/class_6740 + f I SECTION_WIDTH a field_35446 + f Lcom/google/common/collect/ImmutableSet; ALWAYS_WATERLOGGED b field_35447 + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39244 a method_39244 + m (I)Z method_39245 a method_39245 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39246 a method_39246 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39247 a method_39247 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39248 a method_39248 + m (Lcom/mojang/datafixers/OpticFinder;Lorg/apache/commons/lang3/mutable/MutableInt;Lcom/mojang/datafixers/OpticFinder;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39249 a method_39249 + m (Lcom/mojang/datafixers/Typed;)Ljava/util/List; method_39250 a method_39250 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;)Lnet/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer; method_39251 a method_39251 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getBlock a method_39252 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39253 a method_39253 + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;BIILjava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; makeTickList a method_39254 + p 1 data + p 2 palette + p 3 y + p 4 x + p 5 z + p 6 name + p 7 idGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIIILjava/util/function/Function;)Lcom/mojang/serialization/Dynamic; createTick a method_39255 + p 1 data + p 2 palette + p 3 x + p 4 y + p 5 z + p 6 index + p 7 idGetter + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Supplier;IIILjava/util/function/Function;I)Lcom/mojang/serialization/Dynamic; method_39256 a method_39256 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;ILcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)V method_39257 a method_39257 + m (BLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39258 b method_39258 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getLiquid b method_39259 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39260 b method_39260 + m (Lcom/mojang/serialization/Dynamic;)I method_39261 c method_39261 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/List; method_39262 d method_39262 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39263 e method_39263 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ChunkProtoTickListFix$PoorMansPalettedContainer bbu$a net/minecraft/class_6740$class_6741 + f J SIZE_BITS a field_35448 + f Ljava/util/List; palette b field_35449 + f [J data c field_35450 + f I bits d field_35451 + f J mask e field_35452 + f I valuesPerLong f field_35453 + m ()Ljava/util/List; palette a method_39264 + m (III)Lcom/mojang/serialization/Dynamic; get a method_39265 + p 1 x + p 2 y + p 3 z + m ()[J data b method_39266 + m (III)I getIndex b method_39267 + p 1 x + p 2 y + p 3 z + m (Ljava/util/List;[J)V + p 1 palette + p 2 data +c net/minecraft/util/datafix/fixes/ChunkRenamesFix bbv net/minecraft/class_6742 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39268 a method_39268 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; appendChunkName a method_39269 + p 0 typed + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; mergeRemainders a method_39270 + p 0 typed + p 1 dynamic + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; renameField a method_39271 + p 0 typed + p 1 oldName + p 2 newName + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; renameFieldHelper a method_39272 + p 0 typed + p 1 oldName + p 2 newName + p 3 type + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39938 a method_39938 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_39273 a method_39273 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_39274 a method_39274 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39782 a method_39782 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_39275 b method_39275 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ChunkStatusFix bbw net/minecraft/class_3589 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15666 a method_15666 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15667 a method_15667 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ChunkStatusFix2 bbx net/minecraft/class_3788 + f Ljava/util/Map; RENAMES_AND_DOWNGRADES a field_16691 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16642 a method_16642 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_16643 a method_16643 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkStructuresTemplateRenameFix bby net/minecraft/class_3590 + f Lcom/google/common/collect/ImmutableMap; RENAMES a field_15889 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49458 a method_49458 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixChildren a method_49459 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15671 + p 1 parent + p 2 child + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49460 b method_49460 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49461 c method_49461 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ChunkToProtochunkFix bbz net/minecraft/class_3591 + f I NUM_SECTIONS a field_29881 + m (I)Lit/unimi/dsi/fastutil/shorts/ShortArrayList; method_39941 a method_39941 + m (III)S packOffsetCoordinates a method_15675 + p 0 x + p 1 y + p 2 z + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixChunkData a method_39943 + p 0 chunkData + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; method_39944 a method_39944 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39945 a method_39945 + m (Lcom/mojang/serialization/Dynamic;Lit/unimi/dsi/fastutil/shorts/ShortList;)Lcom/mojang/serialization/Dynamic; method_39946 a method_39946 + m (Lcom/mojang/serialization/Dynamic;Ljava/nio/ByteBuffer;)Lcom/mojang/serialization/Dynamic; method_39947 a method_39947 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_39948 a method_39948 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;)V method_39949 a method_39949 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; repackBiomes b method_39951 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; repackTicks c method_39952 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_39954 d method_39954 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ColorlessShulkerEntityFix bca net/minecraft/class_3592 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15678 a method_15678 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/CriteriaRenameFix bcb net/minecraft/class_7370 + f Ljava/lang/String; name a field_38702 + f Ljava/lang/String; advancementId b field_38703 + f Ljava/util/function/UnaryOperator; conversions c field_38704 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_43063 a method_43063 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_43064 a method_43064 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAdvancements a method_43065 + p 1 advancementData + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_43066 a method_43066 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43067 b method_43067 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43068 c method_43068 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43069 d method_43069 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 advancementId + p 4 conversions +c net/minecraft/util/datafix/fixes/DecoratedPotFieldRenameFix bcc net/minecraft/class_8504 + f Ljava/lang/String; DECORATED_POT_ID a field_44593 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/DropInvalidSignDataFix bcd net/minecraft/class_8625 + f [Ljava/lang/String; FIELDS_TO_DROP a field_45089 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_52475 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Z method_52476 a method_52476 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_52477 a method_52477 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixText b method_52478 + p 0 textDynamic + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 entityName + m ()V +c net/minecraft/util/datafix/fixes/DyeItemRenameFix bce net/minecraft/class_3593 + f Ljava/util/Map; RENAMED_IDS a field_15890 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/EffectDurationFix bcf net/minecraft/class_8079 + f Ljava/util/Set; ITEM_TYPES a field_42105 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48549 a method_48549 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48550 a method_48550 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixEffect a method_48551 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48552 a method_48552 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48553 b method_48553 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix b method_48554 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEntity c method_48555 + p 1 entityTag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/EmptyItemInHotbarFix bcg net/minecraft/class_9266 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_57205 a method_57205 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_57206 a method_57206 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_57207 b method_57207 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EmptyItemInVillagerTradeFix bch net/minecraft/class_9649 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59626 a method_59626 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityArmorStandSilentFix bci net/minecraft/class_3594 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15679 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityBlockStateFix bcj net/minecraft/class_3595 + f Ljava/util/Map; MAP a field_15891 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateFallingBlock a method_15695 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/datafixers/Typed; updateBlockToBlockState a method_15687 + p 1 typed + p 2 tileKey + p 3 dataKey + p 4 outputKey + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_15682 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15692 a method_15692 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Integer; method_15693 a method_15693 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/Integer; method_15681 a method_15681 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Either; method_15690 a method_15690 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Unit;)Ljava/lang/Integer; method_15694 a method_15694 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15684 a method_15684 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15688 a method_15688 + m (Ljava/lang/String;)I getBlockId a method_15686 + p 0 name + m (Ljava/util/HashMap;)V method_15683 a method_15683 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15691 a method_15691 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15685 b method_15685 + m (Ljava/lang/Integer;)Ljava/lang/Integer; method_15689 b method_15689 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15680 c method_15680 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15696 d method_15696 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityBrushableBlockFieldsRenameFix bck net/minecraft/class_8222 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49763 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityCatSplitFix bcl net/minecraft/class_3725 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityCodSalmonFix bcm net/minecraft/class_3596 + f Ljava/util/Map; RENAMED_IDS a field_15892 + f Ljava/util/Map; RENAMED_EGG_IDS b field_15893 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityCustomNameToComponentFix bcn net/minecraft/class_3597 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15698 a method_15698 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15699 a method_15699 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTagCustomName a method_15697 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityElderGuardianSplitFix bco net/minecraft/class_3598 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityEquipmentToArmorAndHandFix bcp net/minecraft/class_3599 + m ()Ljava/lang/IllegalStateException; method_15702 a method_15702 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15700 a method_15700 + m (Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_15703 + p 1 itemStackType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15701 a method_15701 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityGoatMissingStateFix bcq net/minecraft/class_7520 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44319 a method_44319 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityHealthFix bcr net/minecraft/class_3600 + f Ljava/util/Set; ENTITIES a field_15894 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15705 a method_15705 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15704 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityHorseSaddleFix bcs net/minecraft/class_3601 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityHorseSplitFix bct net/minecraft/class_3602 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15706 a method_15706 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityIdFix bcu net/minecraft/class_3603 + f Ljava/util/Map; ID_MAP a field_15895 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_15709 a method_15709 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_15707 a method_15707 + m (Ljava/lang/String;)Ljava/lang/String; method_15710 a method_15710 + m (Ljava/util/HashMap;)V method_15708 a method_15708 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityItemFrameDirectionFix bcv net/minecraft/class_3604 + m (B)B direction2dTo3d a method_15712 + p 0 direction2d + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15711 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityMinecartIdentifiersFix bcw net/minecraft/class_3605 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59879 a method_59879 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPaintingFieldsRenameFix bcx net/minecraft/class_7407 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_43386 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPaintingItemFrameDirectionFix bcy net/minecraft/class_3606 + f [[I DIRECTIONS a field_15897 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15716 a method_15716 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15722 a method_15722 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15718 a method_15718 + m (Lcom/mojang/serialization/Dynamic;ZZ)Lcom/mojang/serialization/Dynamic; doFix a method_15719 + p 1 dynamic + p 2 fixDirection + p 3 fixItemRotation + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15717 b method_15717 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_15720 b method_15720 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_15721 b method_15721 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityPaintingMotiveFix bcz net/minecraft/class_3607 + f Ljava/util/Map; MAP a field_15898 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_15723 + p 1 tag + m (Ljava/util/HashMap;)V method_15724 a method_15724 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityProjectileOwnerFix bda net/minecraft/class_4860 + m (JJ)[I createUUIDArray a method_24898 + p 0 uuidMost + p 2 uuidLeast + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateProjectiles a method_24901 + p 1 typed + m (Lcom/mojang/datafixers/Typed;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateEntity a method_24902 + p 1 typed + p 2 choiceName + p 3 updater + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerArrow a method_24899 + p 1 arrowTag + m (Lcom/mojang/serialization/Dynamic;JJ)Lcom/mojang/serialization/Dynamic; setUUID a method_24900 + p 1 dynamic + p 2 uuidMost + p 4 uuidLeast + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24903 a method_24903 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerLlamaSpit b method_24904 + p 1 llamaSpitTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateItemPotion c method_24905 + p 1 itemPotionTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateOwnerThrowable d method_24906 + p 1 throwableTag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityPufferfishRenameFix bdb net/minecraft/class_3608 + f Ljava/util/Map; RENAMED_IDS a field_15899 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRavagerRenameFix bdc net/minecraft/class_3983 + f Ljava/util/Map; RENAMED_IDS a field_17712 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRedundantChanceTagsFix bdd net/minecraft/class_1165 + f Lcom/mojang/serialization/Codec; FLOAT_LIST_CODEC a field_25695 + m (ILjava/util/List;)Ljava/lang/Boolean; method_30072 a method_30072 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4972 a method_4972 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28188 a method_28188 + m (Lcom/mojang/serialization/OptionalDynamic;I)Z isZeroList a method_30073 + p 0 list + p 1 size + m (Ljava/lang/Float;)Z method_30074 a method_30074 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityRenameFix bde net/minecraft/class_1167 + f Ljava/lang/String; name a field_5670 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_4981 a method_4981 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_4984 a method_4984 + m (Ljava/lang/Object;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; getEntity a method_4983 + p 1 value + p 2 ops + p 3 type + m (Ljava/lang/String;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/util/Pair; fix a method_4982 + p 1 entityName + p 2 typed + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/EntityRidingToPassengersFix bdf net/minecraft/class_1166 + m ()Ljava/lang/IllegalStateException; method_4973 a method_4973 + m (Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/schemas/Schema;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_4978 + p 1 inputSchema + p 2 outputSchema + p 3 oldEntityTreeType + p 4 newEntityTreeType + p 5 entityType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_4980 a method_4980 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_4977 a method_4977 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Either; method_4979 a method_4979 + m ()Ljava/lang/IllegalStateException; method_4974 b method_4974 + m ()Ljava/lang/IllegalStateException; method_4975 c method_4975 + m ()Ljava/lang/IllegalStateException; method_4976 d method_4976 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityShulkerColorFix bdg net/minecraft/class_1169 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4985 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityShulkerRotationFix bdh net/minecraft/class_5277 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_27960 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/Double; method_27961 b method_27961 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntitySkeletonSplitFix bdi net/minecraft/class_1168 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityStringUuidFix bdj net/minecraft/class_1171 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4987 a method_4987 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4986 a method_4986 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityTheRenameningFix bdk net/minecraft/class_1170 + f Ljava/util/Map; RENAMED_IDS a field_5671 + f Ljava/util/Map; RENAMED_BLOCKS b field_5672 + f Ljava/util/Map; RENAMED_ITEMS c field_5673 + f Ljava/lang/String; MINECRAFT_BRED d field_29882 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/EntityTippedArrowFix bdl net/minecraft/class_1173 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityUUIDFix bdm net/minecraft/class_4960 + f Lorg/slf4j/Logger; LOGGER b field_36328 + f Ljava/util/Set; ABSTRACT_HORSES c field_23122 + f Ljava/util/Set; TAMEABLE_ANIMALS d field_23123 + f Ljava/util/Set; ANIMALS e field_23124 + f Ljava/util/Set; MOBS f field_23125 + f Ljava/util/Set; LIVING_ENTITIES g field_23126 + f Ljava/util/Set; PROJECTILES h field_23127 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26021 a method_26021 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26020 a method_26020 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLivingEntity b method_26037 + p 0 livingEntityTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26023 b method_26023 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEntityUUID c method_26039 + p 0 entityTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28191 c method_28191 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updatePiglin d method_26022 + p 0 piglinTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28192 d method_28192 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateEvokerFangs e method_26024 + p 0 evokerFangsTag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28193 e method_28193 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateZombieVillager f method_26026 + p 0 zombieVillagerTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAreaEffectCloud g method_26028 + p 0 areaEffectCloudTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateShulkerBullet h method_26030 + p 0 shulkerBulletTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateItem i method_26031 + p 0 itemTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateFox j method_26032 + p 0 foxTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateHurtBy k method_26033 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAnimalOwner l method_26034 + p 0 ownerTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAnimal m method_26035 + p 0 animalTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMob n method_26036 + p 0 mobTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateProjectile o method_26038 + p 0 projectileTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26040 p method_26040 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26041 q method_26041 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26042 r method_26042 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28194 s method_28194 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28195 t method_28195 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28196 u method_28196 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28197 v method_28197 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28198 w method_28198 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28199 x method_28199 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/EntityVariantFix bdn net/minecraft/class_7371 + f Ljava/lang/String; fieldName a field_38705 + f Ljava/util/function/IntFunction; idConversions b field_38706 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43070 a method_43070 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Number;)Lcom/mojang/serialization/Dynamic; method_43071 a method_43071 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/Dynamic; updateAndRename a method_43072 + p 0 dynamic + p 1 fieldName + p 2 newFieldName + p 3 fixer + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Function;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object; method_43073 a method_43073 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Ljava/lang/String;Ljava/util/function/Function;Ljava/lang/Object;)Ljava/lang/Object; method_43074 a method_43074 + m (Ljava/util/function/Function;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/lang/Object; method_43075 a method_43075 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_43076 b method_43076 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/IntFunction;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 entityName + p 5 fieldName + p 6 idConversions +c net/minecraft/util/datafix/fixes/EntityWolfColorFix bdo net/minecraft/class_1172 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4988 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_4989 b method_4989 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityZombieSplitFix bdp net/minecraft/class_1175 + f Ljava/util/function/Supplier; zombieVillagerType b field_51480 + m ()Lcom/mojang/datafixers/types/Type; method_59810 a method_59810 + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59811 a method_59811 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; changeSchemaToZombieVillager a method_59812 + p 1 typed + p 2 profession + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59813 a method_59813 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/EntityZombieVillagerTypeFix bdq net/minecraft/class_1174 + f I PROFESSION_MAX a field_29883 + m (I)I getVillagerProfession a method_4991 + p 1 villagerProfession + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4990 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/EntityZombifiedPiglinRenameFix bdr net/minecraft/class_4846 + f Ljava/util/Map; RENAMED_IDS a field_22416 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/FeatureFlagRemoveFix bds net/minecraft/class_8223 + f Ljava/lang/String; name a field_43176 + f Ljava/util/Set; flagsToRemove b field_43177 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49766 a method_49766 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_49767 + p 1 tag + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_49768 a method_49768 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_49769 a method_49769 + m (Ljava/util/List;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Z method_49770 b method_49770 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Set;)V + p 1 outputSchema + p 2 name + p 3 flagsToRemove +c net/minecraft/util/datafix/fixes/FilteredBooksFix bdt net/minecraft/class_7503 + m (Ljava/lang/String;)Z method_44189 a method_44189 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FilteredSignsFix bdu net/minecraft/class_7504 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44190 a method_44190 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FixProjectileStoredItem bdv net/minecraft/class_8918 + f Ljava/lang/String; EMPTY_POTION a field_46959 + m (Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54727 a method_54727 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54728 a method_54728 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; fixArrow a method_54729 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; getArrowType a method_54730 + p 0 arrowTag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; createItemStack a method_54731 + p 0 dynamic + p 1 itemId + m (Ljava/lang/String;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;)Ljava/util/function/Function; fixChoice a method_54733 + p 1 itemId + p 2 fixer + m (Ljava/lang/String;Lnet/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; fixChoiceCap a method_54734 + p 0 itemId + p 1 fixer + p 2 oldType + p 3 newType + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; fixSpectralArrow b method_54737 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54738 b method_54738 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/Typed; castUnchecked c method_54740 + p 0 typed + p 1 newType + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54741 c method_54741 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/FixProjectileStoredItem$SubFixer bdv$a net/minecraft/class_8918$class_8919 +c net/minecraft/util/datafix/fixes/ForcePoiRebuild bdw net/minecraft/class_4731 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_24159 a method_24159 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_24157 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_24158 a method_24158 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_24161 b method_24161 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24160 b method_24160 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24162 c method_24162 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/FurnaceRecipeFix bdx net/minecraft/class_4752 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24312 a method_24312 + m (Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_24313 + p 1 type + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateFurnaceContents a method_24314 + p 1 type + p 2 recipesUsed + p 3 data + m (Lcom/mojang/datafixers/types/Type;Ljava/util/List;ILcom/mojang/serialization/Dynamic;)V method_24315 a method_24315 + m (Ljava/util/List;ILcom/mojang/datafixers/util/Pair;)V method_24316 a method_24316 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24317 b method_24317 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24318 c method_24318 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24319 d method_24319 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/GoatHornIdFix bdy net/minecraft/class_7442 + f [Ljava/lang/String; INSTRUMENTS a field_39110 + m (Ljava/lang/String;)Z method_44191 a method_44191 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/GossipUUIDFix bdz net/minecraft/class_4976 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26289 a method_26289 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_26290 a method_26290 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28200 b method_28200 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28201 c method_28201 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/HeightmapRenamingFix bea net/minecraft/class_1177 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_4999 a method_4999 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5000 a method_5000 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_4998 + p 1 dynamic + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/HorseBodyArmorItemFix beb net/minecraft/class_9183 + f Ljava/lang/String; previousBodyArmorTag a field_48805 + f Z clearArmorItems b field_51519 + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59885 a method_59885 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59886 b method_59886 + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; method_59887 b method_59887 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59888 c method_59888 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Z)V + p 1 outputSchema + p 2 entityName + p 3 previousBodyArmorTag + p 4 clearArmorItems +c net/minecraft/util/datafix/fixes/IglooMetadataRemovalFix bec net/minecraft/class_1176 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_49462 a method_49462 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_4993 + p 0 tag + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_4992 a method_4992 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; removeIglooPieces b method_4996 + p 0 dynamic + m (Ljava/util/stream/Stream;)Ljava/lang/Boolean; method_4995 b method_4995 + m (Lcom/mojang/serialization/Dynamic;)Z isIglooPiece c method_4997 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Z method_4994 d method_4994 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemBannerColorFix bed net/minecraft/class_1179 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5004 a method_5004 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemCustomNameToComponentFix bee net/minecraft/class_1178 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5002 a method_5002 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5003 a method_5003 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5001 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemIdFix bef net/minecraft/class_1181 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; ITEM_NAMES a field_5675 + m (I)Ljava/lang/String; getItem a method_5018 + p 0 id + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5013 a method_5013 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/datafixers/util/Pair; method_5014 a method_5014 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5017 a method_5017 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5015 a method_5015 + m (Ljava/lang/Integer;)Lcom/mojang/datafixers/util/Pair; method_5016 a method_5016 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemLoreFix beg net/minecraft/class_1180 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5007 a method_5007 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5011 a method_5011 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28202 a method_28202 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; fixLoreList a method_5005 + p 0 loreListTags + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28203 b method_28203 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28204 c method_28204 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemPotionFix beh net/minecraft/class_1183 + f Ljava/lang/String; DEFAULT a field_29884 + f I SPLASH b field_29885 + f [Ljava/lang/String; POTIONS c field_5678 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5024 a method_5024 + m ([Ljava/lang/String;)V method_5023 a method_5023 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemRemoveBlockEntityTagFix bei net/minecraft/class_7641 + f Ljava/util/Set; items a field_39900 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_45014 a method_45014 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/util/Set;)V + p 1 outputSchema + p 2 changesType + p 3 items +c net/minecraft/util/datafix/fixes/ItemRenameFix bej net/minecraft/class_1182 + f Ljava/lang/String; name a field_5676 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/DataFix; create a method_5019 + p 0 outputSchema + p 1 name + p 2 fixer + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5021 a method_5021 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5020 a method_5020 + m (Ljava/lang/String;)Ljava/lang/String; fixItem a method_5022 + p 1 item + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 name +c net/minecraft/util/datafix/fixes/ItemRenameFix$1 bej$1 net/minecraft/class_1182$1 + f Ljava/util/function/Function; val$fixItem a field_5677 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V +c net/minecraft/util/datafix/fixes/ItemShulkerBoxColorFix bek net/minecraft/class_1185 + f [Ljava/lang/String; NAMES_BY_COLOR a field_5680 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5031 a method_5031 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemSpawnEggFix bel net/minecraft/class_1184 + f [Ljava/lang/String; ID_TO_ENTITY a field_5679 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5027 a method_5027 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5028 a method_5028 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28205 a method_28205 + m ([Ljava/lang/String;)V method_5029 a method_5029 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5030 b method_5030 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_5025 c method_5025 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackComponentRemainderFix bem net/minecraft/class_9342 + f Ljava/lang/String; name a field_49714 + f Ljava/lang/String; componentId b field_49715 + f Ljava/lang/String; newComponentId c field_49716 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58043 a method_58043 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58044 a method_58044 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixComponent a method_58045 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58046 b method_58046 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 componentId + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 name + p 3 componentId + p 4 newComponentId +c net/minecraft/util/datafix/fixes/ItemStackComponentizationFix ben net/minecraft/class_9267 + f I HIDE_ENCHANTMENTS a field_49188 + f I HIDE_MODIFIERS b field_49189 + f I HIDE_UNBREAKABLE c field_49190 + f I HIDE_CAN_DESTROY d field_49191 + f I HIDE_CAN_PLACE e field_49192 + f I HIDE_ADDITIONAL f field_49193 + f I HIDE_DYE g field_49194 + f I HIDE_UPGRADES h field_49195 + f Ljava/util/Set; POTION_HOLDER_IDS i field_49196 + f Ljava/util/Set; BUCKETED_MOB_IDS j field_49197 + f Ljava/util/List; BUCKETED_MOB_TAGS k field_49198 + f Ljava/util/Set; BOOLEAN_BLOCK_STATE_PROPERTIES l field_51347 + f Lcom/google/common/base/Splitter; PROPERTY_SPLITTER m field_49199 + m (I)Ljava/lang/String; fixMapDecorationType a method_57208 + p 0 decorationType + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)V fixFireworkStar a method_57209 + p 0 itemStackData + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57210 a method_57210 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixItemStack a method_57211 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; fixDisplay a method_57212 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixBlockEntityTag a method_57213 + p 0 itemStackData + p 1 tag + p 2 entityId + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V fixEnchantments a method_57214 + p 0 itemStackData + p 1 tag + p 2 key + p 3 component + p 4 hideEnchantments + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_59516 a method_59516 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixProfile a method_57236 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_58047 a method_58047 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixBlockStatePredicate a method_57216 + p 0 tag + p 1 blockId + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/util/Optional;)Lcom/mojang/serialization/Dynamic; createFilteredText a method_57217 + p 0 tag + p 1 unfilteredText + p 2 filteredText + m (Lcom/mojang/serialization/OptionalDynamic;)Lcom/mojang/serialization/Dynamic; fixProfileProperties a method_57218 + p 0 tag + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_57219 a method_57219 + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_57220 a method_57220 + m (Ljava/lang/String;)Z isValidPlayerName a method_58048 + p 0 name + m (Ljava/lang/String;Ljava/lang/Number;)Lcom/mojang/datafixers/util/Pair; method_57222 a method_57222 + m (Ljava/util/stream/Stream;)Ljava/util/Map; method_59517 a method_59517 + m (I)Z method_58049 b method_58049 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)V fixFireworkRocket b method_57223 + p 0 itemStackData + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixPotionContents b method_57224 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)V fixAdventureModeChecks b method_57225 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;Z)V fixBlockStatePredicates b method_57226 + p 0 itemStackData + p 1 tag + p 2 key + p 3 component + p 4 hide + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBlockStateTag b method_58050 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_57228 b method_57228 + m (Ljava/lang/String;)Z method_57221 b method_57221 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;)Lcom/mojang/serialization/Dynamic; method_57229 c method_57229 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixWritableBook c method_57230 + p 0 itemStackData + p 1 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;I)V fixAttributeModifiers c method_57231 + p 0 itemStackData + p 1 tag + p 2 hideFlags + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; parseEnchantment c method_57215 + p 0 enchantmentTag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixWrittenBook d method_57233 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAttributeModifier d method_57227 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBookPages e method_57235 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; fixMapDecoration e method_57232 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixBucketedMobData f method_57237 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFireworkExplosion f method_57234 + p 0 tag + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V fixLodestoneTracker g method_57239 + p 0 itemStackData + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57238 g method_57238 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57241 h method_57241 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/List; method_57240 h method_57240 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57243 i method_57243 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_57242 i method_57242 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V method_57245 j method_57245 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57244 j method_57244 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57247 k method_57247 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57248 k method_57248 + m (Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData;Lcom/mojang/serialization/Dynamic;)V method_58051 l method_58051 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57249 l method_57249 + m (Lcom/mojang/serialization/Dynamic;)Ljava/lang/String; method_57250 m method_57250 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57251 n method_57251 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57252 o method_57252 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57253 p method_57253 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_57254 q method_57254 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57255 r method_57255 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData ben$a net/minecraft/class_9267$class_9268 + f Ljava/lang/String; item a field_49200 + f I count b field_49201 + f Lcom/mojang/serialization/Dynamic; components c field_49202 + f Lcom/mojang/serialization/Dynamic; remainder d field_49203 + f Lcom/mojang/serialization/Dynamic; tag e field_49204 + m ()Lcom/mojang/serialization/Dynamic; write a method_57256 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; read a method_57257 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; mergeRemainder a method_57258 + p 0 tag + p 1 remainder + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/Number;)Lnet/minecraft/util/datafix/fixes/ItemStackComponentizationFix$ItemStackData; method_57259 a method_57259 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/MapLike;)Lcom/mojang/serialization/DataResult; method_57260 a method_57260 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/Dynamic; method_57261 a method_57261 + m (Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; removeTag a method_57262 + p 1 key + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V setComponent a method_57263 + p 1 component + p 2 value + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; moveTagInto a method_57264 + p 1 oldKey + p 2 tag + p 3 newKey + m (Ljava/lang/String;Lcom/mojang/serialization/OptionalDynamic;)V setComponent a method_57265 + p 1 component + p 2 value + m (Ljava/lang/String;Ljava/lang/String;)V moveTagToComponent a method_57266 + p 1 key + p 2 component + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V moveTagToComponent a method_57267 + p 1 key + p 2 component + p 3 tag + m (Ljava/lang/String;ZLjava/util/function/UnaryOperator;)V fixSubTag a method_57268 + p 1 key + p 2 skipIfEmpty + p 3 fixer + m (Ljava/util/Set;)Z is a method_57269 + p 1 items + m (Ljava/lang/String;)Z is b method_57270 + p 1 item + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57271 b method_57271 + m (Ljava/lang/String;)Z hasComponent c method_58054 + p 1 component + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)V method_57272 c method_57272 + m (Ljava/lang/String;ILcom/mojang/serialization/Dynamic;)V + p 1 item + p 2 count + p 3 nbt +c net/minecraft/util/datafix/fixes/ItemStackCustomNameToOverrideComponentFix beo net/minecraft/class_9452 + f Ljava/util/Set; MAP_NAMES a field_50111 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58601 a method_58601 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58602 a method_58602 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMap a method_58603 + p 0 data + m (Lcom/mojang/serialization/Dynamic;Ljava/util/function/Predicate;)Lcom/mojang/serialization/Dynamic; fixCustomName a method_58604 + p 0 data + p 1 shouldFix + m (Ljava/lang/String;)Z method_58605 a method_58605 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_58606 b method_58606 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixBanner b method_58607 + p 0 data + m (Ljava/lang/String;)Z method_58608 b method_58608 + m (Ljava/lang/String;)Z method_58609 c method_58609 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ItemStackEnchantmentNamesFix bep net/minecraft/class_1187 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; MAP a field_5681 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5036 a method_5036 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5041 a method_5041 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5035 + p 1 tag + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5033 a method_5033 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5034 a method_5034 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28206 b method_28206 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5037 b method_5037 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28207 c method_28207 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28208 d method_28208 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackMapIdFix beq net/minecraft/class_1186 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5032 a method_5032 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemStackSpawnEggFix ber net/minecraft/class_1189 + f Ljava/lang/String; itemType a field_41287 + f Ljava/util/Map; MAP b field_5685 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5046 a method_5046 + m (Ljava/util/HashMap;)V method_5047 a method_5047 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 itemType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackTagFix bes net/minecraft/class_7505 + f Ljava/lang/String; name a field_39403 + f Ljava/util/function/Predicate; idFilter b field_39404 + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Predicate;Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/UnaryOperator;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56970 a method_56970 + m (Lcom/mojang/datafixers/types/Type;Ljava/util/function/Predicate;Ljava/util/function/UnaryOperator;)Ljava/util/function/UnaryOperator; createFixer a method_56971 + p 0 type + p 1 filter + p 2 fixer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixItemStackTag a method_20445 + p 1 itemStackTag + m (Ljava/util/function/UnaryOperator;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56972 a method_56972 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 1 outputSchema + p 2 name + p 3 idFilter +c net/minecraft/util/datafix/fixes/ItemStackTheFlatteningFix bet net/minecraft/class_1188 + f Ljava/util/Map; MAP a field_5684 + f Ljava/util/Set; IDS b field_5683 + f Ljava/util/Set; DAMAGE_IDS c field_5682 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5044 a method_5044 + m (Ljava/lang/String;)Ljava/lang/String; method_5045 a method_5045 + m (Ljava/lang/String;I)Ljava/lang/String; updateItem a method_5042 + p 0 item + p 1 dataValue + m (Ljava/util/HashMap;)V method_5043 a method_5043 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/ItemStackUUIDFix beu net/minecraft/class_4961 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26294 a method_26294 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26296 a method_26296 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26295 a method_26295 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Boolean; method_26051 a method_26051 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26293 a method_26293 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateAttributeModifiers b method_26297 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSkullOwner c method_26298 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26053 d method_26053 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26299 e method_26299 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ItemWaterPotionFix bev net/minecraft/class_1190 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5048 a method_5048 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ItemWrittenBookPagesStrictJsonFix bew net/minecraft/class_1194 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5086 a method_5086 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5088 a method_5088 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_5085 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5089 a method_5089 + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_5084 a method_5084 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/JigsawPropertiesFix bex net/minecraft/class_4977 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_26300 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/JigsawRotationFix bey net/minecraft/class_4978 + f Ljava/util/Map; RENAMES a field_23213 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26302 a method_26302 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_26301 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26303 b method_26303 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/JukeboxTicksSinceSongStartedFix bez net/minecraft/class_9786 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_60696 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/LeavesFix bfa net/minecraft/class_1191 + f I NORTH_WEST_MASK a field_29886 + f I WEST_MASK b field_29887 + f I SOUTH_WEST_MASK c field_29888 + f I SOUTH_MASK d field_29889 + f I SOUTH_EAST_MASK e field_29890 + f I EAST_MASK f field_29891 + f I NORTH_EAST_MASK g field_29892 + f I NORTH_MASK h field_29893 + f [[I DIRECTIONS i field_5687 + f I DECAY_DISTANCE j field_29894 + f I SIZE_BITS k field_29895 + f I SIZE l field_29896 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; LEAVES m field_5688 + f Ljava/util/Set; LOGS n field_5686 + m (I)I getX a method_5052 + p 1 index + m (III)I getIndex a method_5051 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection;)Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection; method_5049 a method_5049 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5056 a method_5056 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5054 a method_5054 + m (Lcom/mojang/datafixers/OpticFinder;[ILcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5063 a method_5063 + m (Lcom/mojang/datafixers/Typed;)Lnet/minecraft/util/datafix/fixes/LeavesFix$LeavesSection; method_5057 a method_5057 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectMap;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5058 a method_5058 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_5055 a method_5055 + m (ZZZZ)I getSideMask a method_5061 + p 0 west + p 1 east + p 2 north + p 3 south + m ([ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5059 a method_5059 + m (I)I getY b method_5062 + p 1 index + m (I)I getZ c method_5050 + p 1 index + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LeavesFix$LeavesSection bfa$a net/minecraft/class_1191$class_1192 + f Ljava/lang/String; PERSISTENT h field_29897 + f Ljava/lang/String; DECAYABLE i field_29898 + f Ljava/lang/String; DISTANCE j field_29899 + f Lit/unimi/dsi/fastutil/ints/IntSet; leaveIds k field_5689 + f Lit/unimi/dsi/fastutil/ints/IntSet; logIds l field_5691 + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; stateToIdMap m field_5690 + m (I)Z isLog a method_5068 + p 1 id + m (III)V setDistance a method_5070 + p 1 index + p 2 block + p 3 distance + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;ZI)Lcom/mojang/serialization/Dynamic; makeLeafTag a method_5072 + p 1 dynamic + p 2 name + p 3 persistent + p 4 distance + m (I)Z isLeaf b method_5071 + p 1 id + m (I)I getDistance d method_5065 + p 1 index + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/LeavesFix$Section bfa$b net/minecraft/class_1191$class_1193 + f Ljava/lang/String; BLOCK_STATES_TAG a field_29900 + f Ljava/lang/String; NAME_TAG b field_29901 + f Ljava/lang/String; PROPERTIES_TAG c field_29902 + f Lcom/mojang/datafixers/OpticFinder; paletteFinder d field_5693 + f Ljava/util/List; palette e field_5692 + f I index f field_5694 + f Lnet/minecraft/util/datafix/PackedBitStorage; storage g field_5696 + f Lcom/mojang/datafixers/types/Type; blockStateType h field_5695 + m ()Z skippable a method_5076 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; write a method_5083 + p 1 data + m (Lcom/mojang/serialization/Dynamic;)V readStorage a method_5074 + p 1 data + m (Ljava/lang/String;ZI)I getStateId a method_5082 + p 1 name + p 2 persistent + p 3 distance + m (Ljava/util/List;)Ljava/util/List; method_5081 a method_5081 + m ()Z isSkippable b method_5079 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; method_5078 b method_5078 + m ()I getIndex c method_5077 + m (I)I getBlock c method_5075 + p 1 index + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5080 c method_5080 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/LegacyDragonFightFix bfb net/minecraft/class_8575 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52227 a method_52227 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixDragonFight a method_56973 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52228 b method_52228 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/LevelDataGeneratorOptionsFix bfc net/minecraft/class_1196 + f Ljava/util/Map; MAP a field_5702 + f Ljava/lang/String; GENERATOR_OPTIONS b field_29903 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5096 a method_5096 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28209 a method_28209 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;)Ljava/lang/Object; method_5098 a method_5098 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_5095 a method_5095 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; getLayerInfoFromString a method_5099 + p 0 layer + m (Ljava/lang/String;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; convert a method_5100 + p 0 generatorOptions + p 1 ops + m (Ljava/util/HashMap;)V method_5101 a method_5101 + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_28210 b method_28210 + m (Ljava/lang/String;)Ljava/util/List; getLayersInfoFromString b method_5103 + p 0 layers + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LevelFlatGeneratorInfoFix bfd net/minecraft/class_1195 + f Ljava/lang/String; DEFAULT a field_29904 + f Ljava/lang/String; GENERATOR_OPTIONS b field_29905 + f Lcom/google/common/base/Splitter; SPLITTER c field_5700 + f Lcom/google/common/base/Splitter; LAYER_SPLITTER d field_5701 + f Lcom/google/common/base/Splitter; OLD_AMOUNT_SPLITTER e field_5699 + f Lcom/google/common/base/Splitter; AMOUNT_SPLITTER f field_5698 + f Lcom/google/common/base/Splitter; BLOCK_SPLITTER g field_5697 + m (Lcom/google/common/base/Splitter;ILjava/lang/String;)Ljava/lang/String; method_5091 a method_5091 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5093 a method_5093 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_5090 + p 1 dynamic + m (Ljava/lang/String;)Ljava/lang/String; fixString a method_5094 + p 1 string + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5092 b method_5092 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/LevelLegacyWorldGenSettingsFix bfe net/minecraft/class_8876 + f Ljava/lang/String; WORLD_GEN_SETTINGS a field_46771 + f Ljava/util/List; OLD_SETTINGS_KEYS b field_46772 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54443 a method_54443 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54444 a method_54444 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/LevelUUIDFix bff net/minecraft/class_4962 + f Lorg/slf4j/Logger; LOGGER b field_36329 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26055 a method_26055 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28211 a method_28211 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28212 a method_28212 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26058 b method_26058 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_28213 b method_28213 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateWanderingTrader b method_26057 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateDragonFight c method_26060 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateCustomBossEvents d method_26061 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28214 e method_28214 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28215 f method_28215 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28216 g method_28216 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28217 h method_28217 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28218 i method_28218 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28219 j method_28219 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28220 k method_28220 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28221 l method_28221 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/LodestoneCompassComponentFix bfg net/minecraft/class_9343 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/MapBannerBlockPosFormatFix bfh net/minecraft/class_9231 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56974 a method_56974 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMapSavedData a method_56975 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56976 b method_56976 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56977 c method_56977 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56978 d method_56978 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/MapIdFix bfi net/minecraft/class_3970 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17828 a method_17828 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28222 a method_28222 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/MemoryExpiryDataFix bfj net/minecraft/class_4803 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; updateMemoryEntry a method_24507 + p 1 memory + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_24506 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateBrain b method_24508 + p 1 brainTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMemories c method_24509 + p 1 memoriesTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; wrapMemoryValue d method_24510 + p 1 memory + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/MissingDimensionFix bfk net/minecraft/class_5396 + m (Lcom/mojang/datafixers/FieldFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29909 a method_29909 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29910 a method_29910 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_29911 a method_29911 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/Type; flatType a method_38820 + p 0 schema + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; recreateSettings a method_29912 + p 1 dynamic + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; fields a method_29913 + p 0 name + p 1 element + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; optionalFields a method_29914 + p 0 name1 + p 1 element1 + p 2 name2 + p 3 element2 + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/types/Type; optionalFields b method_29915 + p 0 name + p 1 element + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/MobEffectIdFix bfl net/minecraft/class_8744 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; ID_MAP a field_45725 + f Ljava/util/Set; MOB_EFFECT_INSTANCE_CARRIER_ITEMS b field_45726 + m ()Lcom/mojang/datafixers/TypeRewriteRule; blockEntityFixer a method_53078 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53079 a method_53079 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53080 a method_53080 + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/datafixers/Typed; updateNamedChoice a method_53081 + p 1 typed + p 2 reference + p 3 id + p 4 fixer + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateMobEffectInstance a method_53082 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSuspiciousStewEntry a method_53083 + p 0 oldDynamic + p 1 newDynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Optional; getAndConvertMobEffectId a method_53084 + p 0 dynamic + p 1 key + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectIdField a method_53085 + p 0 oldDynamic + p 1 oldName + p 2 newDynamic + p 3 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectIdField a method_53096 + p 0 dynamic + p 1 oldName + p 2 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53089 a method_53089 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_53090 a method_53090 + m (Ljava/lang/Number;)Ljava/lang/String; method_53091 a method_53091 + m (Ljava/util/function/Function;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53092 a method_53092 + m ()Lcom/mojang/datafixers/TypeRewriteRule; entityFixer b method_53093 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53094 b method_53094 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateSuspiciousStewEntry b method_53095 + p 0 suspiciousStewEntry + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateMobEffectInstanceList b method_53101 + p 0 tag + p 1 oldName + p 2 newName + m (Lcom/mojang/serialization/Dynamic;Ljava/util/stream/Stream;)Lcom/mojang/serialization/Dynamic; method_53097 b method_53097 + m ()Lcom/mojang/datafixers/TypeRewriteRule; playerFixer c method_53713 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53714 c method_53714 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixMooshroomTag c method_53100 + p 0 mooshroomTag + m ()Lcom/mojang/datafixers/TypeRewriteRule; itemStackFixer d method_53098 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53099 d method_53099 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixArrowTag d method_53103 + p 0 arrowTag + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_53102 e method_53102 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixAreaEffectCloudTag e method_53104 + p 0 areaEffectCloudTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLivingEntityTag f method_53105 + p 0 livingEntityTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixSuspiciousStewTag g method_53106 + p 0 suspiciousStewTag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53107 h method_53107 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_53108 i method_53108 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/MobSpawnerEntityIdentifiersFix bfm net/minecraft/class_1198 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5107 a method_5107 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_5106 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5108 b method_5108 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/NamedEntityFix bfn net/minecraft/class_1197 + f Ljava/lang/String; name a field_5703 + f Ljava/lang/String; entityName b field_5705 + f Lcom/mojang/datafixers/DSL$TypeReference; type c field_5704 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5104 a method_5104 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; fix a method_5105 + p 1 typed + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 type + p 5 entityName +c net/minecraft/util/datafix/fixes/NamedEntityWriteReadFix bfo net/minecraft/class_8877 + f Ljava/lang/String; name a field_46773 + f Ljava/lang/String; entityName b field_46774 + f Lcom/mojang/datafixers/DSL$TypeReference; type c field_46775 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_56639 a method_56639 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; typePatcher a method_56640 + p 0 type + p 1 newType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Lcom/mojang/datafixers/TypeRewriteRule; fix a method_56641 + p 1 inputType + p 2 outputType + p 3 finder + p 4 outputChoiceType + p 5 newType + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;Ljava/lang/Object;)Ljava/lang/Object; method_56642 a method_56642 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/types/Type;Ljava/lang/Object;)Ljava/lang/Object; method_56643 a method_56643 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_54447 + p 1 tag + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_56644 a method_56644 + m (Ljava/lang/Object;)Ljava/lang/Object; method_56645 a method_56645 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 name + p 4 type + p 5 entityName +c net/minecraft/util/datafix/fixes/NamespacedTypeRenameFix bfp net/minecraft/class_7293 + f Ljava/lang/String; name a field_38381 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_38383 + f Ljava/util/function/UnaryOperator; renamer c field_43178 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_49771 a method_49771 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_42638 a method_42638 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 renamer +c net/minecraft/util/datafix/fixes/NewVillageFix bfq net/minecraft/class_3904 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17329 a method_17329 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17330 a method_17330 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17331 a method_17331 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17332 a method_17332 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_17333 a method_17333 + m (Lcom/mojang/datafixers/types/templates/CompoundList$CompoundListType;)Lcom/mojang/datafixers/TypeRewriteRule; cap a method_17334 + p 1 type + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_17335 a method_17335 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28223 a method_28223 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28224 a method_28224 + m (Ljava/lang/String;)Ljava/lang/String; method_17336 a method_17336 + m (Ljava/util/List;)Ljava/util/List; method_17337 a method_17337 + m (Lcom/mojang/datafixers/util/Pair;)Z method_17339 b method_17339 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28225 b method_28225 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28226 c method_28226 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28227 d method_28227 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ObjectiveDisplayNameFix bfr net/minecraft/class_1200 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37372 a method_37372 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37373 a method_37373 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/ObjectiveRenderTypeFix bfs net/minecraft/class_1199 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37376 a method_37376 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37377 a method_37377 + m (Ljava/lang/String;)Ljava/lang/String; getRenderType a method_5112 + p 0 oldRenderType + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OminousBannerBlockEntityRenameFix bft net/minecraft/class_4299 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_20481 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OminousBannerRenameFix bfu net/minecraft/class_4294 + m (Ljava/lang/String;)Z method_44194 a method_44194 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 schema +c net/minecraft/util/datafix/fixes/OptionsAccessibilityOnboardFix bfv net/minecraft/class_8014 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_48133 a method_48133 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_48134 a method_48134 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsAddTextBackgroundFix bfw net/minecraft/class_4092 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_18852 a method_18852 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28233 a method_28233 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_28234 a method_28234 + m (Ljava/lang/String;)D calculateBackground a method_18853 + p 1 oldBackground + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsAmbientOcclusionFix bfx net/minecraft/class_8004 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_47995 a method_47995 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_47996 a method_47996 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_47997 a method_47997 + m (Ljava/lang/String;)Ljava/lang/String; updateValue a method_47998 + p 0 oldValue + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsForceVBOFix bfy net/minecraft/class_1202 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5124 a method_5124 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5123 a method_5123 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsKeyLwjgl3Fix bfz net/minecraft/class_1201 + f Ljava/lang/String; KEY_UNKNOWN a field_29906 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; MAP b field_5706 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5121 a method_5121 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28235 a method_28235 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28236 a method_28236 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_5118 a method_5118 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_5122 a method_5122 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/OptionsKeyTranslationFix bga net/minecraft/class_1204 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5130 a method_5130 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28237 a method_28237 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_28238 a method_28238 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;)Lcom/mojang/serialization/Dynamic; method_28239 a method_28239 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsLowerCaseLanguageFix bgb net/minecraft/class_1203 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5126 a method_5126 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5125 a method_5125 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/OptionsMenuBlurrinessFix bgc net/minecraft/class_9774 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_60600 a method_60600 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60601 a method_60601 + m (Ljava/lang/String;)I convertToIntRange a method_60602 + p 1 value + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_60603 b method_60603 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsProgrammerArtFix bgd net/minecraft/class_7683 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_45313 a method_45313 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixList a method_45314 + p 1 list + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_45315 a method_45315 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_45316 b method_45316 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/OptionsRenameFieldFix bge net/minecraft/class_5404 + f Ljava/lang/String; fixName a field_25665 + f Ljava/lang/String; fieldFrom b field_25666 + f Ljava/lang/String; fieldTo c field_25667 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_30019 a method_30019 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30020 a method_30020 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30021 a method_30021 + m (Lcom/mojang/datafixers/schemas/Schema;ZLjava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 outputSchema + p 2 changesType + p 3 fixName + p 4 fieldFrom + p 5 fieldTo +c net/minecraft/util/datafix/fixes/OverreachingTickFix bgf net/minecraft/class_6909 + m (IILcom/mojang/serialization/Dynamic;)Z method_40437 a method_40437 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40438 a method_40438 + m (Lcom/mojang/serialization/Dynamic;IILjava/util/Optional;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; extractOverreachingTicks a method_40439 + p 0 tag + p 1 x + p 2 z + p 3 ticks + p 4 id + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40440 a method_40440 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ParticleUnflatteningFix bgg net/minecraft/class_9650 + f Lorg/slf4j/Logger; LOGGER a field_51367 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_59627 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/brigadier/StringReader;)Lcom/mojang/serialization/Dynamic; readVector a method_59628 + p 0 tag + p 1 reader + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateItem a method_59629 + p 1 tag + p 2 item + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; parseTag a method_59630 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateBlock b method_59631 + p 1 tag + p 2 block + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Ljava/util/Map; parseBlockProperties c method_59632 + p 0 tag + p 1 properties + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateDust d method_59633 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateDustTransition e method_59634 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateSculkCharge f method_59635 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateVibration g method_59636 + p 1 tag + p 2 options + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; updateShriek h method_59637 + p 1 tag + p 2 options + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/PlayerHeadBlockProfileFix bgh net/minecraft/class_9344 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_58055 + p 1 tag + m (Ljava/util/Optional;)Ljava/util/Optional; method_58056 a method_58056 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/PlayerUUIDFix bgi net/minecraft/class_4963 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26070 a method_26070 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26072 b method_26072 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28240 b method_28240 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28241 c method_28241 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/PoiTypeRemoveFix bgj net/minecraft/class_7506 + f Ljava/util/function/Predicate; typesToKeep a field_39405 + m (Lcom/mojang/serialization/Dynamic;)Z shouldKeepRecord a method_44195 + p 1 record + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Predicate;)V + p 1 outputSchema + p 2 name + p 3 typesToRemove +c net/minecraft/util/datafix/fixes/PoiTypeRenameFix bgk net/minecraft/class_7507 + f Ljava/util/function/Function; renamer a field_39406 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44196 a method_44196 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44197 b method_44197 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/Function;)V + p 1 schema + p 2 name + p 3 renamer +c net/minecraft/util/datafix/fixes/PrimedTntBlockStateFixer bgl net/minecraft/class_8878 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; renameFuse b method_54449 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; insertBlockState c method_54450 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/ProjectileStoredWeaponFix bgm net/minecraft/class_9689 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59909 a method_59909 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59910 a method_59910 + m (Ljava/lang/String;)Ljava/util/function/Function; fixChoice a method_59911 + p 1 entityId + m (Ljava/lang/String;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/types/Type;)Ljava/util/function/Function; fixChoiceCap a method_59912 + p 0 entityId + p 1 inputType + p 2 outputType + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RandomSequenceSettingsFix bgn net/minecraft/class_8626 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52479 a method_52479 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52480 a method_52480 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52481 b method_52481 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RecipesFix bgo net/minecraft/class_1206 + f Ljava/util/Map; RECIPES a field_5708 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RecipesRenameningFix bgp net/minecraft/class_1205 + f Ljava/util/Map; RECIPES a field_5707 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RedstoneWireConnectionsFix bgq net/minecraft/class_5255 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_27779 a method_27779 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateRedstoneConnections a method_27778 + p 1 dynamic + m (Ljava/lang/String;)Z isConnected a method_27780 + p 0 state + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28249 a method_28249 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28250 b method_28250 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28251 b method_28251 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28252 c method_28252 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28253 d method_28253 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/References bgr net/minecraft/class_1208 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_TREE A field_5723 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY B field_5729 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_NAME C field_5731 + f Lcom/mojang/datafixers/DSL$TypeReference; ITEM_NAME D field_5713 + f Lcom/mojang/datafixers/DSL$TypeReference; GAME_EVENT_NAME E field_38380 + f Lcom/mojang/datafixers/DSL$TypeReference; UNTAGGED_SPAWNER F field_5718 + f Lcom/mojang/datafixers/DSL$TypeReference; STRUCTURE_FEATURE G field_5724 + f Lcom/mojang/datafixers/DSL$TypeReference; OBJECTIVE H field_5721 + f Lcom/mojang/datafixers/DSL$TypeReference; TEAM I field_5714 + f Lcom/mojang/datafixers/DSL$TypeReference; RECIPE J field_5711 + f Lcom/mojang/datafixers/DSL$TypeReference; BIOME K field_5728 + f Lcom/mojang/datafixers/DSL$TypeReference; MULTI_NOISE_BIOME_SOURCE_PARAMETER_LIST L field_43179 + f Lcom/mojang/datafixers/DSL$TypeReference; WORLD_GEN_SETTINGS M field_23067 + f Lcom/mojang/datafixers/DSL$TypeReference; LEVEL a field_5710 + f Lcom/mojang/datafixers/DSL$TypeReference; PLAYER b field_5715 + f Lcom/mojang/datafixers/DSL$TypeReference; CHUNK c field_5726 + f Lcom/mojang/datafixers/DSL$TypeReference; HOTBAR d field_5722 + f Lcom/mojang/datafixers/DSL$TypeReference; OPTIONS e field_5717 + f Lcom/mojang/datafixers/DSL$TypeReference; STRUCTURE f field_5716 + f Lcom/mojang/datafixers/DSL$TypeReference; STATS g field_5730 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_COMMAND_STORAGE h field_45090 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_FORCED_CHUNKS i field_45091 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_MAP_DATA j field_45092 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_MAP_INDEX k field_45093 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_RAIDS l field_45094 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_RANDOM_SEQUENCES m field_45095 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_STRUCTURE_FEATURE_INDICES n field_45096 + f Lcom/mojang/datafixers/DSL$TypeReference; SAVED_DATA_SCOREBOARD o field_45097 + f Lcom/mojang/datafixers/DSL$TypeReference; ADVANCEMENTS p field_5725 + f Lcom/mojang/datafixers/DSL$TypeReference; POI_CHUNK q field_19224 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_CHUNK r field_26993 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_ENTITY s field_5727 + f Lcom/mojang/datafixers/DSL$TypeReference; ITEM_STACK t field_5712 + f Lcom/mojang/datafixers/DSL$TypeReference; BLOCK_STATE u field_5720 + f Lcom/mojang/datafixers/DSL$TypeReference; FLAT_BLOCK_STATE v field_47727 + f Lcom/mojang/datafixers/DSL$TypeReference; DATA_COMPONENTS w field_49205 + f Lcom/mojang/datafixers/DSL$TypeReference; VILLAGER_TRADE x field_51368 + f Lcom/mojang/datafixers/DSL$TypeReference; PARTICLE y field_51369 + f Lcom/mojang/datafixers/DSL$TypeReference; ENTITY_NAME z field_5719 + m (Ljava/lang/String;)Lcom/mojang/datafixers/DSL$TypeReference; reference a method_59518 + p 0 name + m ()V + m ()V +c net/minecraft/util/datafix/fixes/References$1 bgr$1 net/minecraft/class_1208$1 + f Ljava/lang/String; val$id a field_51348 + m (Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/RemapChunkStatusFix bgs net/minecraft/class_8505 + f Ljava/lang/String; name a field_44594 + f Ljava/util/function/UnaryOperator; mapper b field_44595 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_51290 a method_51290 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixStatus a method_51291 + p 1 dynamic + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51292 b method_51292 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_51501 c method_51501 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/function/UnaryOperator;)V + p 1 outputSchema + p 2 name + p 3 mapper +c net/minecraft/util/datafix/fixes/RemoveEmptyItemInBrushableBlockFix bgt net/minecraft/class_9687 + m (Lcom/mojang/serialization/Dynamic;)Z isEmptyStack b method_59889 + p 0 tag + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/RemoveGolemGossipFix bgu net/minecraft/class_5429 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixValue a method_30326 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30327 a method_30327 + m (Lcom/mojang/serialization/Dynamic;)Z method_30328 b method_30328 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/RenameEnchantmentsFix bgv net/minecraft/class_9106 + f Ljava/lang/String; name a field_48315 + f Ljava/util/Map; renames b field_48316 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56055 a method_56055 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_56056 a method_56056 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_56057 + p 1 tag + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/DataResult$Error;)Lcom/mojang/serialization/Dynamic; method_56058 a method_56058 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56059 a method_56059 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixEnchantmentList a method_56060 + p 1 tag + p 2 key + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; method_56061 a method_56061 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56062 b method_56062 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/DataResult$Error;)Lcom/mojang/serialization/Dynamic; method_56063 b method_56063 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_56064 b method_56064 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_56065 c method_56065 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/RenamedCoralFansFix bgw net/minecraft/class_1207 + f Ljava/util/Map; RENAMED_IDS a field_5709 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/RenamedCoralFix bgx net/minecraft/class_1210 + f Ljava/util/Map; RENAMED_IDS a field_5733 + m ()V + m ()V +c net/minecraft/util/datafix/fixes/ReorganizePoi bgy net/minecraft/class_4285 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_20342 a method_20342 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; cap a method_20340 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_20341 a method_20341 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/SavedDataFeaturePoolElementFix bgz net/minecraft/class_5947 + f Ljava/util/regex/Pattern; INDEX_PATTERN a field_29545 + f Ljava/util/Set; PIECE_TYPE b field_29546 + f Ljava/util/Set; FEATURES c field_29547 + m (I)Ljava/lang/String; method_49463 a method_49463 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixFeature a method_34688 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;[Ljava/lang/String;)Lcom/mojang/serialization/OptionalDynamic; get a method_34689 + p 0 dynamic + p 1 path + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Ljava/util/Optional; getReplacement a method_34690 + p 0 type + p 1 name + p 2 stateProviderType + p 3 state + p 4 stateProviderName + p 5 foliagePlacerType + p 6 leavesState + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; updateChildren a method_34691 + p 0 children + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag b method_34692 + p 0 tag + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateChildren c method_34693 + p 0 data + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34694 d method_34694 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_34695 e method_34695 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/SavedDataUUIDFix bha net/minecraft/class_4964 + f Lorg/slf4j/Logger; LOGGER b field_36330 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_26073 a method_26073 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_26075 b method_26075 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28254 c method_28254 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28255 d method_28255 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28256 e method_28256 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28257 f method_28257 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28258 g method_28258 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28259 h method_28259 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/ScoreboardDisplaySlotFix bhb net/minecraft/class_8627 + f Ljava/util/Map; SLOT_RENAMES a field_45098 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52489 a method_52489 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52490 a method_52490 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_52491 a method_52491 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52492 a method_52492 + m (Ljava/lang/String;)Ljava/lang/String; rename a method_52493 + p 0 oldName + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52494 b method_52494 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52495 c method_52495 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/SimpleEntityRenameFix bhc net/minecraft/class_1212 + m (Ljava/lang/String;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/datafixers/util/Pair; getNewNameAndTag a method_5164 + p 1 name + p 2 tag + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/SimplestEntityRenameFix bhd net/minecraft/class_1211 + f Ljava/lang/String; name a field_5734 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5160 a method_5160 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5159 a method_5159 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Ljava/lang/String;)Ljava/lang/String; method_5161 a method_5161 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5162 a method_5162 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_5158 a method_5158 + m (Ljava/lang/String;)Ljava/lang/String; rename a method_5163 + p 1 name + m (Ljava/lang/String;Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 name + p 2 outputSchema + p 3 changesType +c net/minecraft/util/datafix/fixes/SpawnerDataFix bhe net/minecraft/class_6503 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37973 a method_37973 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; wrapEntityToSpawnData a method_37974 + p 1 type + p 2 typed + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/datafixers/util/Pair; method_37975 a method_37975 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; wrapSpawnPotentialsToWeightedEntries b method_37976 + p 1 type + p 2 typed + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37977 c method_37977 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37978 d method_37978 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/StatsCounterFix bhf net/minecraft/class_1214 + f Ljava/util/Set; SPECIAL_OBJECTIVE_CRITERIA a field_45099 + f Ljava/util/Set; SKIP b field_5739 + f Ljava/util/Map; CUSTOM_MAP c field_5737 + f Ljava/lang/String; BLOCK_KEY d field_29907 + f Ljava/lang/String; NEW_BLOCK_KEY e field_29908 + f Ljava/util/Map; ITEM_KEYS f field_5738 + f Ljava/util/Map; ENTITY_KEYS g field_5736 + f Ljava/util/Map; ENTITIES h field_5735 + f Ljava/lang/String; NEW_CUSTOM_KEY i field_29909 + m ()Lcom/mojang/datafixers/TypeRewriteRule; makeStatFixer a method_52496 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52497 a method_52497 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52498 a method_52498 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_52499 a method_52499 + m (Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StatsCounterFix$StatType; unpackLegacyKey a method_52500 + p 0 key + m ()Lcom/mojang/datafixers/TypeRewriteRule; makeObjectiveFixer b method_52501 + m (Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_52502 b method_52502 + m (Ljava/lang/String;)Ljava/lang/String; upgradeItem b method_5172 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; upgradeBlock c method_5173 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; method_52505 d method_52505 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/StatsCounterFix$StatType bhf$a net/minecraft/class_1214$class_8628 + f Ljava/lang/String; type a comp_1585 + f Ljava/lang/String; typeKey b comp_1586 + m ()Ljava/lang/String; type a comp_1585 + m ()Ljava/lang/String; typeKey b comp_1586 + m (Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/StatsRenameFix bhg net/minecraft/class_1213 + f Ljava/lang/String; name a field_33560 + f Ljava/util/Map; renames b field_33561 + m ()Lcom/mojang/datafixers/TypeRewriteRule; createCriteriaRule a method_37378 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37379 a method_37379 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37380 a method_37380 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37381 a method_37381 + m (Ljava/lang/String;)Ljava/lang/String; method_37382 a method_37382 + m ()Lcom/mojang/datafixers/TypeRewriteRule; createStatRule b method_37383 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37384 b method_37384 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37385 b method_37385 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_37386 b method_37386 + m (Ljava/lang/String;)Ljava/lang/String; method_37387 b method_37387 + m ()Ljava/lang/IllegalStateException; method_37388 c method_37388 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 renames +c net/minecraft/util/datafix/fixes/StriderGravityFix bhh net/minecraft/class_5256 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixTag a method_27789 + p 1 tag + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/StructureReferenceCountFix bhi net/minecraft/class_4695 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_23662 a method_23662 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; setCountToAtLeastOne a method_23661 + p 0 dynamic + m (Ljava/lang/Integer;)Z method_23663 a method_23663 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_23664 b method_23664 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/StructureSettingsFlattenFix bhj net/minecraft/class_6867 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40115 a method_40115 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; fixDimension a method_40116 + p 0 dimensions + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixStructures a method_40117 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_40118 a method_40118 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40119 a method_40119 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40441 a method_40441 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_40120 b method_40120 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40121 b method_40121 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40122 c method_40122 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54960 d method_54960 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix bhk net/minecraft/class_7046 + f Lorg/slf4j/Logger; LOGGER a field_51349 + f Ljava/util/Map; CONVERSION_MAP b field_37050 + m (Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41009 a method_41009 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_41012 + p 1 data + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;)Ljava/util/Optional; guessConfiguration a method_41013 + p 1 data + p 2 conversion + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateStarts a method_41015 + p 1 starts + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59519 a method_59519 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59520 a method_59520 + m (Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion;Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;Lcom/mojang/serialization/Dynamic;)V method_41017 b method_41017 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateReferences b method_41020 + p 1 references + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59521 b method_59521 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/HashMap;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_59522 b method_59522 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; findUpdatedStructureType c method_41022 + p 2 data + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41023 d method_41023 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41024 e method_41024 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_41025 f method_41025 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion bhk$a net/minecraft/class_7046$class_7047 + f Ljava/util/Map; biomeMapping a comp_462 + f Ljava/lang/String; fallback b comp_463 + m ()Ljava/util/Map; biomeMapping a comp_462 + m (Lcom/google/common/collect/ImmutableMap$Builder;Ljava/util/Map$Entry;Ljava/lang/String;)V method_41026 a method_41026 + m (Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion; trivial a method_41027 + p 0 fallback + m (Ljava/util/Map;)Ljava/util/Map; unpack a method_41028 + p 0 mapping + m (Ljava/util/Map;Ljava/lang/String;)Lnet/minecraft/util/datafix/fixes/StructuresBecomeConfiguredFix$Conversion; biomeMapped a method_41029 + p 0 biomeMapping + p 1 fallback + m ()Ljava/lang/String; fallback b comp_463 + m (Ljava/util/Map;Ljava/lang/String;)V +c net/minecraft/util/datafix/fixes/TeamDisplayNameFix bhl net/minecraft/class_1217 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5183 a method_5183 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28260 a method_28260 + m (Lcom/mojang/serialization/DynamicOps;)Ljava/util/function/Function; method_28262 a method_28262 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/TippedArrowPotionToItemFix bhm net/minecraft/class_9269 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_57274 a method_57274 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/TrappedChestBlockEntityFix bhn net/minecraft/class_1215 + f Lorg/slf4j/Logger; LOGGER a field_5740 + f I SIZE b field_29910 + f S SIZE_BITS c field_29911 + m (IILit/unimi/dsi/fastutil/ints/IntSet;Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5174 a method_5174 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5177 a method_5177 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5175 a method_5175 + m (Lcom/mojang/datafixers/types/templates/TaggedChoice$TaggedChoiceType;IILit/unimi/dsi/fastutil/ints/IntSet;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_5176 a method_5176 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5178 a method_5178 + m (Ljava/lang/String;)Ljava/lang/String; method_5179 a method_5179 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/TrappedChestBlockEntityFix$TrappedChestSection bhn$a net/minecraft/class_1215$class_1216 + f Lit/unimi/dsi/fastutil/ints/IntSet; chestIds h field_5741 + m (I)Z isTrappedChest a method_5180 + p 1 id + m (Lcom/mojang/datafixers/Typed;Lcom/mojang/datafixers/schemas/Schema;)V + p 1 data + p 2 schema +c net/minecraft/util/datafix/fixes/TrialSpawnerConfigFix bho net/minecraft/class_9453 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; moveToConfigTag b method_58610 + p 0 data + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/VariantRenameFix bhp net/minecraft/class_7508 + f Ljava/util/Map; renames a field_39407 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44198 a method_44198 + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; method_44199 a method_44199 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_44200 b method_44200 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;Ljava/lang/String;Ljava/util/Map;)V + p 1 outputSchema + p 2 name + p 3 type + p 4 entityName + p 5 renames +c net/minecraft/util/datafix/fixes/VillagerDataFix bhq net/minecraft/class_3845 + m (II)Ljava/lang/String; upgradeData a method_16897 + p 0 profession + p 1 career + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)V + p 1 outputSchema + p 2 entityName +c net/minecraft/util/datafix/fixes/VillagerFollowRangeFix bhr net/minecraft/class_5273 + f D ORIGINAL_VALUE a field_29912 + f D NEW_BASE_VALUE b field_29913 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fixValue a method_27914 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28263 a method_28263 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28264 b method_28264 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/VillagerRebuildLevelAndXpFix bhs net/minecraft/class_4300 + f I TRADES_PER_LEVEL a field_29914 + f [I LEVEL_XP_THRESHOLDS b field_19285 + m (I)I getMinXpPerLevel a method_20482 + p 0 level + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28265 a method_28265 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20484 a method_20484 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/lang/Integer; method_20485 a method_20485 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_20486 a method_20486 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; addLevel a method_20487 + p 0 typed + p 1 level + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28266 b method_28266 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Ljava/util/Optional; method_20489 b method_20489 + m (Lcom/mojang/datafixers/Typed;I)Lcom/mojang/datafixers/Typed; addXpFromLevel b method_20490 + p 0 typed + p 1 xp + m (ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28267 c method_28267 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/VillagerTradeFix bht net/minecraft/class_1219 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; updateItemStack a method_5187 + p 1 id + p 2 typed + m (Lcom/mojang/datafixers/OpticFinder;Ljava/util/function/Function;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59638 a method_59638 + m (Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/datafixers/util/Pair; method_5190 a method_5190 + m (Ljava/lang/String;)Ljava/lang/String; method_5192 a method_5192 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_59639 b method_59639 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WallPropertyFix bhu net/minecraft/class_4754 + f Ljava/util/Set; WALL_BLOCKS a field_21960 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_24325 a method_24325 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; upgradeBlockStateTag a method_24323 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/String;)Lcom/mojang/serialization/Dynamic; fixWallProperty a method_24324 + p 0 dynamic + p 1 key + m (Ljava/lang/String;)Ljava/lang/String; mapProperty a method_24326 + p 0 property + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24327 b method_24327 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_24328 c method_24328 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType + m ()V +c net/minecraft/util/datafix/fixes/WeaponSmithChestLootTableFix bhv net/minecraft/class_6858 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_40070 a method_40070 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/WorldGenSettingsDisallowOldCustomWorldsFix bhw net/minecraft/class_6638 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38821 a method_38821 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38822 a method_38822 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; method_38823 a method_38823 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_38824 a method_38824 + m (Ljava/util/Map;)Ljava/util/Map; method_38825 a method_38825 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WorldGenSettingsFix bhx net/minecraft/class_5299 + f Ljava/lang/String; VILLAGE a field_29915 + f Ljava/lang/String; DESERT_PYRAMID b field_29916 + f Ljava/lang/String; IGLOO c field_29917 + f Ljava/lang/String; JUNGLE_TEMPLE d field_29918 + f Ljava/lang/String; SWAMP_HUT e field_29919 + f Ljava/lang/String; PILLAGER_OUTPOST f field_29920 + f Ljava/lang/String; END_CITY g field_29921 + f Ljava/lang/String; WOODLAND_MANSION h field_29922 + f Ljava/lang/String; OCEAN_MONUMENT i field_29923 + f Lcom/google/common/collect/ImmutableMap; DEFAULTS j field_24647 + m (JLcom/mojang/serialization/DynamicLike;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; noise a method_28268 + p 0 seed + p 2 data + p 3 settings + p 4 biomeNoise + m (Lcom/google/common/collect/ImmutableMap$Builder;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)V method_28269 a method_28269 + m (Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_28270 a method_28270 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; fix a method_28271 + p 0 data + m (Lcom/mojang/serialization/Dynamic;J)Lcom/mojang/serialization/Dynamic; defaultOverworld a method_29916 + p 0 data + p 1 seed + m (Lcom/mojang/serialization/Dynamic;JLcom/mojang/serialization/Dynamic;Z)Ljava/lang/Object; vanillaLevels a method_29917 + p 0 data + p 1 seed + p 4 caves + m (Lcom/mojang/serialization/Dynamic;JZZ)Lcom/mojang/serialization/Dynamic; vanillaBiomeSource a method_28272 + p 0 data + p 1 seed + p 3 legacyBiomeInitLayer + p 4 largeBiomes + m (Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28273 a method_28273 + m (Lcom/mojang/serialization/Dynamic;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Ljava/util/Map;)V method_28274 a method_28274 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/OptionalDynamic;)Ljava/util/Map; fixFlatStructures a method_28275 + p 0 ops + p 1 generatorOptions + m (Lcom/mojang/serialization/DynamicOps;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_28276 a method_28276 + m (Lcom/mojang/serialization/OptionalDynamic;Ljava/util/Map$Entry;)Lcom/mojang/serialization/Dynamic; method_28277 a method_28277 + m (Ljava/lang/String;)Ljava/lang/String; method_28278 a method_28278 + m (Ljava/lang/String;I)I getInt a method_28279 + p 0 string + p 1 defaultValue + m (Ljava/lang/String;II)I getInt a method_28280 + p 0 string + p 1 defaultValue + p 2 minValue + m (Ljava/util/Map;Ljava/lang/String;Ljava/lang/String;I)V setSpacing a method_28281 + p 2 spacing + m (Ljava/util/Optional;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28282 a method_28282 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)V method_28283 a method_28283 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/util/Map;Ljava/util/Map;)V method_28284 a method_28284 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28285 b method_28285 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_28286 c method_28286 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_30075 d method_30075 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema + m ()V +c net/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration bhx$a net/minecraft/class_5299$class_5300 + f Lcom/mojang/serialization/Codec; CODEC a field_24648 + f I spacing b field_24649 + f I separation c field_24650 + f I salt d field_24651 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28292 a method_28292 + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; serialize a method_28288 + p 1 ops + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28289 a method_28289 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28293 b method_28293 + m (Lnet/minecraft/util/datafix/fixes/WorldGenSettingsFix$StructureFeatureConfiguration;)Ljava/lang/Integer; method_28294 c method_28294 + m (III)V + p 1 spacing + p 2 separation + p 3 salt + m ()V +c net/minecraft/util/datafix/fixes/WorldGenSettingsHeightAndBiomeFix bhy net/minecraft/class_6639 + f Ljava/lang/String; WAS_PREVIOUSLY_INCREASED_KEY a field_35030 + f Ljava/lang/String; NAME b field_35031 + m (Lcom/mojang/datafixers/OpticFinder;Lcom/mojang/datafixers/types/Type;Lcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_38827 a method_38827 + m (Lcom/mojang/datafixers/types/Type;ZZLcom/mojang/datafixers/Typed;)Lcom/mojang/datafixers/Typed; method_54967 a method_54967 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; updateLayers a method_38828 + p 0 dynamic + m (ZLorg/apache/commons/lang3/mutable/MutableBoolean;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54968 a method_54968 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38831 a method_38831 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54969 b method_54969 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38834 b method_38834 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54970 c method_54970 + m (ZZLcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_54971 c method_54971 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_38836 d method_38836 + m (Lcom/mojang/datafixers/schemas/Schema;)V + p 1 outputSchema +c net/minecraft/util/datafix/fixes/WriteAndReadFix bhz net/minecraft/class_1218 + f Ljava/lang/String; name a field_5742 + f Lcom/mojang/datafixers/DSL$TypeReference; type b field_5743 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;Lcom/mojang/datafixers/DSL$TypeReference;)V + p 1 outputSchema + p 2 name + p 3 type +c net/minecraft/util/datafix/fixes/ZombieVillagerRebuildXpFix bia net/minecraft/class_4301 + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_20492 a method_20492 + m (Lcom/mojang/datafixers/schemas/Schema;Z)V + p 1 outputSchema + p 2 changesType +c net/minecraft/util/datafix/fixes/package-info bib net/minecraft/class_5997 +c net/minecraft/util/datafix/package-info bic net/minecraft/class_5998 +c net/minecraft/util/datafix/schemas/NamespacedSchema bid net/minecraft/class_1220 + f Lcom/mojang/serialization/codecs/PrimitiveCodec; NAMESPACED_STRING_CODEC a field_24652 + f Lcom/mojang/datafixers/types/Type; NAMESPACED_STRING b field_24653 + m ()Lcom/mojang/datafixers/types/Type; namespacedString a method_28295 + m (Ljava/lang/String;)Ljava/lang/String; ensureNamespaced a method_5193 + p 0 string + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/NamespacedSchema$1 bid$1 net/minecraft/class_1220$1 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;)Ljava/lang/Object; write a method_28296 + p 1 ops + p 2 value + m ()V +c net/minecraft/util/datafix/schemas/V100 bie net/minecraft/class_1222 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; equipment a method_5196 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59640 a method_59640 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5195 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5201 b method_5201 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5199 b method_5199 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5200 c method_5200 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5197 c method_5197 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5198 d method_5198 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V102 bif net/minecraft/class_1221 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5194 a method_5194 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1022 big net/minecraft/class_1224 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5204 a method_5204 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5203 a method_5203 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5205 b method_5205 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V106 bih net/minecraft/class_1223 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5202 a method_5202 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V107 bii net/minecraft/class_1226 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1125 bij net/minecraft/class_1225 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5206 a method_5206 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5208 b method_5208 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5207 c method_5207 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V135 bik net/minecraft/class_1228 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5209 a method_5209 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5210 b method_5210 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V143 bil net/minecraft/class_1227 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451 bim net/minecraft/class_1230 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5212 a method_5212 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_1 bin net/minecraft/class_1229 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5211 a method_5211 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_2 bio net/minecraft/class_1232 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5225 a method_5225 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_3 bip net/minecraft/class_1231 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5221 a method_5221 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5217 a method_5217 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5224 b method_5224 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5216 c method_5216 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5222 d method_5222 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5223 e method_5223 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5218 f method_5218 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5219 g method_5219 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5214 h method_5214 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5213 i method_5213 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5220 j method_5220 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5215 k method_5215 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_4 biq net/minecraft/class_1234 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5226 b method_5226 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_5 bir net/minecraft/class_1233 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1451_6 bis net/minecraft/class_1236 + f Ljava/lang/String; SPECIAL_OBJECTIVE_MARKER b field_34013 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; UNPACK_OBJECTIVE_ID c field_34014 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; REPACK_OBJECTIVE_ID d field_34015 + m (Lcom/mojang/datafixers/schemas/Schema;)Ljava/util/Map; createCriterionTypes a method_37389 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/function/Supplier;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5229 a method_5229 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37390 a method_37390 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37391 b method_37391 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37392 b method_37392 + m (Ljava/lang/String;)Ljava/lang/String; packNamespacedWithDot b method_52506 + p 0 namespace + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37393 c method_37393 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37394 c method_37394 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37395 d method_37395 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5228 e method_5228 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V1451_6$1 bis$1 net/minecraft/class_1236$1 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/datafixers/util/Pair;)Lcom/mojang/serialization/Dynamic; method_37396 a method_37396 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Pair; method_37397 a method_37397 + m ()V +c net/minecraft/util/datafix/schemas/V1451_6$2 bis$2 net/minecraft/class_1236$2 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_37398 a method_37398 + m (Lcom/mojang/serialization/Dynamic;Lcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_37400 b method_37400 + m ()V +c net/minecraft/util/datafix/schemas/V1460 bit net/minecraft/class_1238 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59641 A method_59641 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59642 a method_59642 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5270 a method_5270 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5261 a method_5261 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5232 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/function/Supplier;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5235 a method_5235 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37401 a method_37401 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59643 b method_59643 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_31467 b method_31467 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5250 b method_5250 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory b method_5273 + p 0 schema + p 1 map + p 2 name + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5236 b method_5236 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5251 c method_5251 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37402 c method_37402 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5241 c method_5241 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5248 d method_5248 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5240 d method_5240 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59644 d method_59644 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5257 e method_5257 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_52507 e method_52507 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5271 e method_5271 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5274 f method_5274 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5243 f method_5243 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5256 f method_5256 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5268 g method_5268 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5253 g method_5253 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5244 g method_5244 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5276 h method_5276 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5277 h method_5277 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5237 i method_5237 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5262 i method_5262 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5259 j method_5259 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5247 j method_5247 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5266 k method_5266 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5279 k method_5279 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5239 l method_5239 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5249 l method_5249 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5260 m method_5260 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5263 m method_5263 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5267 n method_5267 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5278 n method_5278 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5242 o method_5242 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5245 o method_5245 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5258 p method_5258 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5272 q method_5272 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5238 r method_5238 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5252 s method_5252 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5275 t method_5275 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5233 u method_5233 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5255 v method_5255 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5264 w method_5264 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5234 x method_5234 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5246 y method_5246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5265 z method_5265 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1466 biu net/minecraft/class_1237 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5231 a method_5231 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1470 biv net/minecraft/class_1240 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5281 a method_5281 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5282 a method_5282 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5280 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1481 biw net/minecraft/class_1239 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1483 bix net/minecraft/class_1242 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1486 biy net/minecraft/class_1241 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1510 biz net/minecraft/class_1243 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1800 bja net/minecraft/class_1245 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48135 a method_48135 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5287 a method_5287 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1801 bjb net/minecraft/class_1244 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48136 a method_48136 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1904 bjc net/minecraft/class_3686 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48137 a method_48137 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1906 bjd net/minecraft/class_3687 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_16053 a method_16053 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_16054 a method_16054 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_16052 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1909 bje net/minecraft/class_3743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_55641 a method_55641 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1920 bjf net/minecraft/class_3905 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_17342 a method_17342 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_17343 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1928 bjg net/minecraft/class_3984 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_17999 a method_17999 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_17998 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1929 bjh net/minecraft/class_3985 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18000 a method_18000 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_18001 b method_18001 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V1931 bji net/minecraft/class_4016 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48138 a method_48138 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2100 bjj net/minecraft/class_4465 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_21745 a method_21745 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_21746 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_21747 b method_21747 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2501 bjk net/minecraft/class_4755 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_24329 a method_24329 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerFurnace a method_24330 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2502 bjl net/minecraft/class_4756 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48139 a method_48139 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2505 bjm net/minecraft/class_4804 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48140 a method_48140 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2509 bjn net/minecraft/class_4847 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48141 a method_48141 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2519 bjo net/minecraft/class_4979 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48142 a method_48142 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2522 bjp net/minecraft/class_5130 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48143 a method_48143 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2551 bjq net/minecraft/class_5301 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28297 a method_28297 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28298 b method_28298 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28299 c method_28299 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28300 d method_28300 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28301 e method_28301 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_28302 f method_28302 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2568 bjr net/minecraft/class_5416 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48144 a method_48144 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2571 bjs net/minecraft/class_5999 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48145 a method_48145 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2684 bjt net/minecraft/class_5701 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42640 a method_42640 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42641 b method_42641 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2686 bju net/minecraft/class_5752 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48146 a method_48146 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2688 bjv net/minecraft/class_5775 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48147 a method_48147 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48148 a method_48148 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2704 bjw net/minecraft/class_6000 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48149 a method_48149 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2707 bjx net/minecraft/class_6332 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2831 bjy net/minecraft/class_6504 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_37979 a method_37979 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2832 bjz net/minecraft/class_6640 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38837 a method_38837 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49773 b method_49773 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38838 b method_38838 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38839 c method_38839 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38840 d method_38840 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38841 e method_38841 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38842 f method_38842 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_38843 g method_38843 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V2842 bka net/minecraft/class_6743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_39276 a method_39276 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3076 bkb net/minecraft/class_7092 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3078 bkc net/minecraft/class_7093 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42642 a method_42642 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_41318 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_41317 b method_41317 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3081 bkd net/minecraft/class_7245 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48150 a method_48150 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3082 bke net/minecraft/class_7246 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_42125 a method_42125 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3083 bkf net/minecraft/class_7294 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57275 a method_57275 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3202 bkg net/minecraft/class_7684 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3203 bkh net/minecraft/class_7685 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48151 a method_48151 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3204 bki net/minecraft/class_7686 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48152 a method_48152 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3325 bkj net/minecraft/class_8106 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48783 a method_48783 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48784 b method_48784 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3326 bkk net/minecraft/class_8146 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49100 a method_49100 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3327 bkl net/minecraft/class_8147 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49101 a method_49101 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_49102 b method_49102 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3328 bkm net/minecraft/class_8148 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3438 bkn net/minecraft/class_8224 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3448 bko net/minecraft/class_8506 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_51293 a method_51293 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3682 bkp net/minecraft/class_8879 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54451 a method_54451 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3683 bkq net/minecraft/class_8880 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54452 a method_54452 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3685 bkr net/minecraft/class_8920 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; abstractArrow a method_54742 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54743 b method_54743 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54744 c method_54744 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54745 d method_54745 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3689 bks net/minecraft/class_8945 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54974 a method_54974 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_54975 b method_54975 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3799 bkt net/minecraft/class_9061 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_55642 a method_55642 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3807 bku net/minecraft/class_9184 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56646 a method_56646 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808 bkv net/minecraft/class_9185 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56647 a method_56647 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808_1 bkw net/minecraft/class_9186 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_56648 a method_56648 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3808_2 bkx net/minecraft/class_9688 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59893 a method_59893 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3816 bky net/minecraft/class_9253 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57077 a method_57077 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818 bkz net/minecraft/class_9270 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57276 a method_57276 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_3 bla net/minecraft/class_9271 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57277 a method_57277 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_4 blb net/minecraft/class_9272 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_57278 a method_57278 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3818_5 blc net/minecraft/class_9651 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59645 a method_59645 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3825 bld net/minecraft/class_9454 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_58611 a method_58611 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V3938 ble net/minecraft/class_9690 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; abstractArrow a method_59913 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59914 b method_59914 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59915 c method_59915 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V501 blf net/minecraft/class_1247 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48153 a method_48153 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V700 blg net/minecraft/class_1246 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_48154 a method_48154 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V701 blh net/minecraft/class_1249 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5295 a method_5295 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5294 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V702 bli net/minecraft/class_1248 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59814 a method_59814 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59815 a method_59815 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V703 blj net/minecraft/class_1251 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5304 a method_5304 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5308 b method_5308 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5306 c method_5306 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5305 d method_5305 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5307 e method_5307 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V704 blk net/minecraft/class_1250 + f Ljava/util/Map; ITEM_TO_BLOCKENTITY a field_5744 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5745 + m ()Lcom/google/common/collect/ImmutableMap; method_5297 a method_5297 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5300 a method_5300 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5298 a method_5298 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59523 a method_59523 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_5296 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5303 b method_5303 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5301 b method_5301 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5302 c method_5302 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V704$1 blk$1 net/minecraft/class_1250$1 + m ()V +c net/minecraft/util/datafix/schemas/V705 bll net/minecraft/class_1253 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5746 + f Ljava/util/Map; ITEM_TO_ENTITY c field_49717 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5319 a method_5319 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5326 a method_5326 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5311 + p 0 schema + p 1 map + p 2 name + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5315 a method_5315 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5336 b method_5336 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59646 b method_59646 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerThrowableProjectile b method_5330 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5329 c method_5329 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5332 c method_5332 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5320 d method_5320 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5327 e method_5327 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5312 f method_5312 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5322 g method_5322 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5333 h method_5333 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5316 i method_5316 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5324 j method_5324 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5337 k method_5337 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5325 l method_5325 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5318 m method_5318 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5335 n method_5335 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5323 o method_5323 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5313 p method_5313 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5328 q method_5328 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5317 r method_5317 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5334 s method_5334 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5331 t method_5331 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5314 u method_5314 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5338 v method_5338 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5321 w method_5321 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59647 x method_59647 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V705$1 bll$1 net/minecraft/class_1253$1 + m ()V +c net/minecraft/util/datafix/schemas/V808 blm net/minecraft/class_1252 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5310 a method_5310 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory a method_5309 + p 0 schema + p 1 map + p 2 name + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent +c net/minecraft/util/datafix/schemas/V99 bln net/minecraft/class_1254 + f Ljava/util/Map; ITEM_TO_ENTITY a field_49718 + f Lcom/mojang/datafixers/types/templates/Hook$HookFunction; ADD_NAMES b field_5747 + f Lorg/slf4j/Logger; LOGGER c field_5749 + f Ljava/util/Map; ITEM_TO_BLOCKENTITY d field_5748 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59648 a method_59648 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; equipment a method_5353 + p 0 schema + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5365 a method_5365 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5347 a method_5347 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMob a method_5339 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5371 a method_5371 + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;)Ljava/lang/Object; addNames a method_5359 + p 0 tag + p 1 blockEntityRenames + p 2 entityRenames + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5357 a method_5357 + m (Ljava/util/HashMap;)V method_5344 a method_5344 + m (Ljava/util/Map;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5348 a method_5348 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5373 b method_5373 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59649 b method_59649 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5372 b method_5372 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerThrowableProjectile b method_5368 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/serialization/Dynamic;Ljava/util/Map;Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_5375 b method_5375 + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5341 c method_5341 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_31468 c method_31468 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5354 c method_5354 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerMinecart c method_5377 + p 0 schema + p 1 map + p 2 name + m ()Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5369 d method_5369 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_52508 d method_52508 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_59650 d method_59650 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/util/Map;Ljava/lang/String;)V registerInventory d method_5346 + p 0 schema + p 1 map + p 2 name + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5379 e method_5379 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5366 e method_5366 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5364 f method_5364 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5340 f method_5340 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5355 g method_5355 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5356 g method_5356 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5378 h method_5378 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5374 h method_5374 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5370 i method_5370 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5349 i method_5349 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5350 j method_5350 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5362 j method_5362 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5343 k method_5343 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5381 k method_5381 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5360 l method_5360 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5363 l method_5363 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5352 m method_5352 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5351 m method_5351 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5345 n method_5345 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5376 n method_5376 + m (Lcom/mojang/datafixers/schemas/Schema;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5361 o method_5361 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5358 o method_5358 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5342 p method_5342 + m (Lcom/mojang/datafixers/schemas/Schema;Ljava/lang/String;)Lcom/mojang/datafixers/types/templates/TypeTemplate; method_5367 q method_5367 + m (ILcom/mojang/datafixers/schemas/Schema;)V + p 1 versionKey + p 2 parent + m ()V +c net/minecraft/util/datafix/schemas/V99$1 bln$1 net/minecraft/class_1254$1 + m ()V +c net/minecraft/util/datafix/schemas/package-info blo net/minecraft/class_6001 +c net/minecraft/util/debugchart/AbstractSampleLogger blp net/minecraft/class_9187 + f [J defaults a field_48806 + f [J sample b field_48807 + m ()V useSample a method_56649 + m ()V resetSample b method_56651 + m (I[J)V + p 1 size + p 2 defaults +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker blq net/minecraft/class_9188 + f I STOP_SENDING_AFTER_TICKS a field_48808 + f I STOP_SENDING_AFTER_MS b field_48809 + f Lnet/minecraft/server/players/PlayerList; playerList c field_48810 + f Ljava/util/EnumMap; subscriptions d field_48811 + f Ljava/util/Queue; subscriptionRequestQueue e field_48812 + m (I)V tick a method_56652 + p 1 tick + m (IJLjava/util/Map$Entry;)Z method_56653 a method_56653 + m (JI)V handleSubscriptions a method_56654 + p 1 millis + p 3 tick + m (Lnet/minecraft/network/protocol/game/ClientboundDebugSamplePacket;)V broadcast a method_56655 + p 1 packet + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V subscribe a method_56656 + p 1 player + p 2 sampleType + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)Z shouldLogSamples a method_56657 + p 1 sampleType + m (JI)V handleUnsubscriptions b method_56658 + p 1 millis + p 3 tick + m (Lnet/minecraft/server/players/PlayerList;)V + p 1 playerList +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker$SubscriptionRequest blq$a net/minecraft/class_9188$class_9189 + f Lnet/minecraft/server/level/ServerPlayer; player a comp_2288 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2289 + m ()Lnet/minecraft/server/level/ServerPlayer; player a comp_2288 + m ()Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType b comp_2289 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V +c net/minecraft/util/debugchart/DebugSampleSubscriptionTracker$SubscriptionStartedAt blq$b net/minecraft/class_9188$class_9190 + f J millis a comp_2290 + f I tick b comp_2291 + m ()J millis a comp_2290 + m ()I tick b comp_2291 + m (JI)V +c net/minecraft/util/debugchart/LocalSampleLogger blr net/minecraft/class_9191 + f I CAPACITY c field_48813 + f [[J samples d field_48814 + f I start e field_48815 + f I size f field_48816 + m (I)I wrapIndex b method_56661 + p 1 index + m (I)V + p 1 size + m (I[J)V + p 1 size + p 2 defaults +c net/minecraft/util/debugchart/RemoteDebugSampleType bls net/minecraft/class_9192 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; TICK_TIME a field_48817 + f [Lnet/minecraft/util/debugchart/RemoteDebugSampleType; $VALUES b field_48818 + m ()[Lnet/minecraft/util/debugchart/RemoteDebugSampleType; $values a method_56665 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/debugchart/RemoteSampleLogger blt net/minecraft/class_9193 + f Lnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker; subscriptionTracker c field_48819 + f Lnet/minecraft/util/debugchart/RemoteDebugSampleType; sampleType d field_48820 + m (ILnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V + p 1 size + p 2 subscriptionTracker + p 3 sampleType + m (ILnet/minecraft/util/debugchart/DebugSampleSubscriptionTracker;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;[J)V + p 1 size + p 2 subscriptionTracker + p 3 sampleType + p 4 defaults +c net/minecraft/util/debugchart/SampleLogger blu net/minecraft/class_8743 + m (J)V logSample a method_53066 + p 1 value + m (JI)V logPartialSample a method_56535 + p 1 value + p 3 index + m ([J)V logFullSample a method_56650 + p 1 sample +c net/minecraft/util/debugchart/SampleStorage blv net/minecraft/class_9194 + m (I)J get a method_56659 + p 1 index + m (II)J get a method_56660 + p 1 index + p 2 dimension + m ()I capacity c method_56662 + m ()I size d method_56663 + m ()V reset e method_56664 +c net/minecraft/util/debugchart/TpsDebugDimensions blw net/minecraft/class_9160 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; FULL_TICK a field_48718 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; TICK_SERVER_METHOD b field_48719 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; SCHEDULED_TASKS c field_48720 + f Lnet/minecraft/util/debugchart/TpsDebugDimensions; IDLE d field_48721 + f [Lnet/minecraft/util/debugchart/TpsDebugDimensions; $VALUES e field_48722 + m ()[Lnet/minecraft/util/debugchart/TpsDebugDimensions; $values a method_56536 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/eventlog/EventLogDirectory blx net/minecraft/class_7929 + f Lorg/slf4j/Logger; LOGGER a field_41288 + f I COMPRESS_BUFFER_SIZE b field_41289 + f Ljava/lang/String; COMPRESSED_EXTENSION c field_41290 + f Ljava/nio/file/Path; root d field_41291 + f Ljava/lang/String; extension e field_41292 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; listFiles a method_47549 + m (Ljava/nio/channels/ReadableByteChannel;Ljava/nio/file/Path;)V writeCompressed a method_47550 + p 0 channel + p 1 outputPath + m (Ljava/nio/file/Path;)Lnet/minecraft/util/eventlog/EventLogDirectory$File; parseFile a method_47551 + p 1 path + m (Ljava/nio/file/Path;Ljava/lang/String;)Lnet/minecraft/util/eventlog/EventLogDirectory; open a method_47552 + p 0 root + p 1 extension + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V tryCompress a method_47553 + p 0 path + p 1 outputPath + m (Ljava/time/LocalDate;)Lnet/minecraft/util/eventlog/EventLogDirectory$RawFile; createNewFile a method_47554 + p 1 date + m (Ljava/nio/file/Path;)Z method_47555 b method_47555 + m (Ljava/nio/file/Path;Ljava/lang/String;)V + p 1 root + p 2 extension + m ()V +c net/minecraft/util/eventlog/EventLogDirectory$CompressedFile blx$a net/minecraft/class_7929$class_7930 + f Ljava/nio/file/Path; path a comp_1156 + f Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id b comp_1157 + m (Ljava/nio/file/Path;Lnet/minecraft/util/eventlog/EventLogDirectory$FileId;)V +c net/minecraft/util/eventlog/EventLogDirectory$File blx$b net/minecraft/class_7929$class_7931 + m ()Ljava/io/Reader; openReader a method_47556 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$CompressedFile; compress b method_47557 + m ()Ljava/nio/file/Path; path c comp_1156 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id d comp_1157 +c net/minecraft/util/eventlog/EventLogDirectory$FileId blx$c net/minecraft/class_7929$class_7932 + f Ljava/time/LocalDate; date a comp_1158 + f I index b comp_1159 + f Ljava/time/format/DateTimeFormatter; DATE_FORMATTER c field_41293 + m ()Ljava/time/LocalDate; date a comp_1158 + m (Ljava/lang/String;)Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; parse a method_47558 + p 0 fileName + m ()I index b comp_1159 + m (Ljava/lang/String;)Ljava/lang/String; toFileName b method_47559 + p 1 extension + m (Ljava/time/LocalDate;I)V + m ()V +c net/minecraft/util/eventlog/EventLogDirectory$FileList blx$d net/minecraft/class_7929$class_7933 + f Ljava/util/List; files a field_41294 + m ()Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; compressAll a method_47560 + m (ILjava/time/LocalDate;Lnet/minecraft/util/eventlog/EventLogDirectory$File;)Z method_47561 a method_47561 + m (Ljava/time/LocalDate;I)Lnet/minecraft/util/eventlog/EventLogDirectory$FileList; prune a method_47562 + p 1 date + p 2 daysToKeep + m ()Ljava/util/stream/Stream; stream b method_47563 + m ()Ljava/util/Set; ids c method_47564 + m (Ljava/util/List;)V + p 1 files +c net/minecraft/util/eventlog/EventLogDirectory$RawFile blx$e net/minecraft/class_7929$class_7934 + f Ljava/nio/file/Path; path a comp_1156 + f Lnet/minecraft/util/eventlog/EventLogDirectory$FileId; id b comp_1157 + m ()Ljava/nio/channels/FileChannel; openChannel e method_47565 + m (Ljava/nio/file/Path;Lnet/minecraft/util/eventlog/EventLogDirectory$FileId;)V +c net/minecraft/util/eventlog/JsonEventLog bly net/minecraft/class_7935 + f Lcom/google/gson/Gson; GSON a field_41295 + f Lcom/mojang/serialization/Codec; codec b field_41296 + f Ljava/nio/channels/FileChannel; channel c field_41297 + f Ljava/util/concurrent/atomic/AtomicInteger; referenceCount d field_41298 + m ()Lnet/minecraft/util/eventlog/JsonEventLogReader; openReader a method_47566 + m (Lcom/mojang/serialization/Codec;Ljava/nio/file/Path;)Lnet/minecraft/util/eventlog/JsonEventLog; open a method_47567 + p 0 codec + p 1 path + m (Ljava/lang/Object;)V write a method_47568 + p 1 data + m ()V releaseReference b method_47569 + m (Lcom/mojang/serialization/Codec;Ljava/nio/channels/FileChannel;)V + p 1 codec + p 2 channel + m ()V +c net/minecraft/util/eventlog/JsonEventLog$1 bly$1 net/minecraft/class_7935$1 + f Lnet/minecraft/util/eventlog/JsonEventLogReader; val$reader a field_41299 + f Lnet/minecraft/util/eventlog/JsonEventLog; field_41300 b field_41300 + f J position c field_41301 + m (Lnet/minecraft/util/eventlog/JsonEventLog;Lnet/minecraft/util/eventlog/JsonEventLogReader;)V +c net/minecraft/util/eventlog/JsonEventLogReader blz net/minecraft/class_7936 + m ()Ljava/lang/Object; next a method_47570 + m (Lcom/mojang/serialization/Codec;Ljava/io/Reader;)Lnet/minecraft/util/eventlog/JsonEventLogReader; create a method_47571 + p 0 codec + p 1 reader +c net/minecraft/util/eventlog/JsonEventLogReader$1 blz$1 net/minecraft/class_7936$1 + f Lcom/google/gson/stream/JsonReader; val$jsonReader a field_41302 + f Lcom/mojang/serialization/Codec; val$codec b field_41303 + m (Lcom/google/gson/stream/JsonReader;Lcom/mojang/serialization/Codec;)V +c net/minecraft/util/eventlog/package-info bma net/minecraft/class_7937 +c net/minecraft/util/monitoring/jmx/MinecraftServerStatistics bmb net/minecraft/class_5169 + f Lorg/slf4j/Logger; LOGGER a field_23970 + f Lnet/minecraft/server/MinecraftServer; server b field_23971 + f Ljavax/management/MBeanInfo; mBeanInfo c field_23972 + f Ljava/util/Map; attributeDescriptionByName d field_23973 + m ()F getAverageTickTime a method_27177 + m (I)[Ljavax/management/MBeanAttributeInfo; method_27178 a method_27178 + m (Lnet/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription;)Ljavax/management/Attribute; method_27179 a method_27179 + m (Lnet/minecraft/server/MinecraftServer;)V registerJmxMonitoring a method_27181 + p 0 server + m ()[J getTickTimes b method_27182 + m (Lnet/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription;)Ljava/lang/String; method_27183 b method_27183 + m (Lnet/minecraft/server/MinecraftServer;)V + p 1 server + m ()V +c net/minecraft/util/monitoring/jmx/MinecraftServerStatistics$AttributeDescription bmb$a net/minecraft/class_5169$class_5170 + f Ljava/lang/String; name a field_23974 + f Ljava/util/function/Supplier; getter b field_23975 + f Ljava/lang/String; description c field_23976 + f Ljava/lang/Class; type d field_23977 + m ()Ljavax/management/MBeanAttributeInfo; asMBeanAttributeInfo a method_27184 + m (Ljava/lang/String;Ljava/util/function/Supplier;Ljava/lang/String;Ljava/lang/Class;)V + p 1 name + p 2 getter + p 3 description + p 4 type +c net/minecraft/util/monitoring/jmx/package-info bmc net/minecraft/class_6641 +c net/minecraft/util/package-info bmd net/minecraft/class_6002 +c net/minecraft/util/parsing/package-info bme net/minecraft/class_9386 +c net/minecraft/util/parsing/packrat/Atom bmf net/minecraft/class_9387 + f Ljava/lang/String; name a comp_2468 + m ()Ljava/lang/String; name a comp_2468 + m (Ljava/lang/String;)Lnet/minecraft/util/parsing/packrat/Atom; of a method_58298 + p 0 name + m (Ljava/lang/String;)V +c net/minecraft/util/parsing/packrat/Control bmg net/minecraft/class_9388 + f Lnet/minecraft/util/parsing/packrat/Control; UNBOUND a field_49959 + m ()V method_58299 a method_58299 + m ()V +c net/minecraft/util/parsing/packrat/Dictionary bmh net/minecraft/class_9389 + f Ljava/util/Map; terms a field_49960 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Lnet/minecraft/util/parsing/packrat/Rule; get a method_58300 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Rule;)V put a method_58301 + p 1 atom + p 2 rule + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;)V put a method_58302 + p 1 atom + p 2 term + p 3 ruleAction + m (Lnet/minecraft/util/parsing/packrat/Atom;Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;)V put a method_58303 + p 1 atom + p 2 term + p 3 simpleRuleAction + m ()V +c net/minecraft/util/parsing/packrat/ErrorCollector bmi net/minecraft/class_9390 + m (I)V finish a method_58304 + p 1 cursor + m (ILnet/minecraft/util/parsing/packrat/SuggestionSupplier;Ljava/lang/Object;)V store a method_58305 + p 1 cursor + p 2 suggestions + p 3 reason + m (ILjava/lang/Object;)V store a method_58306 + p 1 cursor + p 2 reason +c net/minecraft/util/parsing/packrat/ErrorCollector$LongestOnly bmi$a net/minecraft/class_9390$class_9391 + f Ljava/util/List; entries a field_49961 + f I lastCursor b field_49962 + m ()Ljava/util/List; entries a method_58307 + m ()I cursor b method_58308 + m (I)V discardErrorsFromShorterParse b method_58309 + p 1 cursor + m ()V +c net/minecraft/util/parsing/packrat/ErrorEntry bmj net/minecraft/class_9392 + f I cursor a comp_2469 + f Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; suggestions b comp_2470 + f Ljava/lang/Object; reason c comp_2471 + m ()I cursor a comp_2469 + m ()Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; suggestions b comp_2470 + m ()Ljava/lang/Object; reason c comp_2471 + m (ILnet/minecraft/util/parsing/packrat/SuggestionSupplier;Ljava/lang/Object;)V +c net/minecraft/util/parsing/packrat/ParseState bmk net/minecraft/class_9393 + f Ljava/util/Map; ruleCache a field_49963 + f Lnet/minecraft/util/parsing/packrat/Dictionary; dictionary b field_49964 + f Lnet/minecraft/util/parsing/packrat/ErrorCollector; errorCollector c field_49965 + m ()Lnet/minecraft/util/parsing/packrat/ErrorCollector; errorCollector a method_58310 + m (I)V restore a method_58311 + p 1 cursor + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/util/Optional; parseTopRule a method_58312 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/ParseState$CacheKey;)Lnet/minecraft/util/parsing/packrat/ParseState$CacheEntry; lookupInCache a method_58313 + p 1 key + m (Lnet/minecraft/util/parsing/packrat/ParseState$CacheKey;Ljava/util/Optional;)V storeInCache a method_58314 + p 1 key + p 2 value + m ()Ljava/lang/Object; input b method_58315 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/util/Optional; parse b method_58316 + p 1 atom + m ()I mark c method_58317 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/ErrorCollector;)V + p 1 dictionary + p 2 errorCollector +c net/minecraft/util/parsing/packrat/ParseState$CacheEntry bmk$a net/minecraft/class_9393$class_9394 + f Ljava/util/Optional; value a comp_2472 + f I mark b comp_2473 + m ()Ljava/util/Optional; value a comp_2472 + m ()I mark b comp_2473 + m (Ljava/util/Optional;I)V +c net/minecraft/util/parsing/packrat/ParseState$CacheKey bmk$b net/minecraft/class_9393$class_9395 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2474 + f I mark b comp_2475 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2474 + m ()I mark b comp_2475 + m (Lnet/minecraft/util/parsing/packrat/Atom;I)V +c net/minecraft/util/parsing/packrat/Rule bml net/minecraft/class_9396 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/Optional; parse a method_58318 + p 1 parseState + m (Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;)Ljava/util/Optional; method_58319 a method_58319 + m (Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;)Lnet/minecraft/util/parsing/packrat/Rule; fromTerm a method_58320 + p 0 child + p 1 action + m (Lnet/minecraft/util/parsing/packrat/Term;Lnet/minecraft/util/parsing/packrat/Rule$SimpleRuleAction;)Lnet/minecraft/util/parsing/packrat/Rule; fromTerm a method_58321 + p 0 child + p 1 action +c net/minecraft/util/parsing/packrat/Rule$RuleAction bml$a net/minecraft/class_9396$class_9397 +c net/minecraft/util/parsing/packrat/Rule$SimpleRuleAction bml$b net/minecraft/class_9396$class_9398 +c net/minecraft/util/parsing/packrat/Rule$WrappedTerm bml$c net/minecraft/class_9396$class_9399 + f Lnet/minecraft/util/parsing/packrat/Rule$RuleAction; action a comp_2476 + f Lnet/minecraft/util/parsing/packrat/Term; child b comp_2477 + m ()Lnet/minecraft/util/parsing/packrat/Rule$RuleAction; action a comp_2476 + m ()Lnet/minecraft/util/parsing/packrat/Term; child b comp_2477 + m (Lnet/minecraft/util/parsing/packrat/Rule$RuleAction;Lnet/minecraft/util/parsing/packrat/Term;)V +c net/minecraft/util/parsing/packrat/Scope bmm net/minecraft/class_9400 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; values a field_49966 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; get a method_58322 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V put a method_58323 + p 1 atom + p 2 value + m (Lnet/minecraft/util/parsing/packrat/Scope;)V putAll a method_58324 + p 1 scope + m ([Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getAny a method_58325 + p 1 atoms + m (Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getOrThrow b method_58326 + p 1 atom + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault b method_58327 + p 1 atom + p 2 defaultValue + m ([Lnet/minecraft/util/parsing/packrat/Atom;)Ljava/lang/Object; getAnyOrThrow b method_58328 + p 1 atoms + m ()V +c net/minecraft/util/parsing/packrat/SuggestionSupplier bmn net/minecraft/class_9401 + m ()Lnet/minecraft/util/parsing/packrat/SuggestionSupplier; empty b method_58329 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58330 b method_58330 +c net/minecraft/util/parsing/packrat/Term bmo net/minecraft/class_9402 + m ()Lnet/minecraft/util/parsing/packrat/Term; cut a method_58331 + m (Lnet/minecraft/util/parsing/packrat/Atom;)Lnet/minecraft/util/parsing/packrat/Term; named a method_58332 + p 0 name + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)Lnet/minecraft/util/parsing/packrat/Term; marker a method_58333 + p 0 name + p 1 value + m (Lnet/minecraft/util/parsing/packrat/ParseState;Lnet/minecraft/util/parsing/packrat/Scope;Lnet/minecraft/util/parsing/packrat/Control;)Z parse a method_58334 + p 1 parseState + p 2 scope + p 3 control + m (Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; optional a method_58335 + p 0 term + m ([Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; sequence a method_58336 + p 0 elements + m ()Lnet/minecraft/util/parsing/packrat/Term; empty b method_58337 + m ([Lnet/minecraft/util/parsing/packrat/Term;)Lnet/minecraft/util/parsing/packrat/Term; alternative b method_58338 + p 0 elements +c net/minecraft/util/parsing/packrat/Term$1 bmo$1 net/minecraft/class_9402$1 + m ()V +c net/minecraft/util/parsing/packrat/Term$2 bmo$2 net/minecraft/class_9402$2 + m ()V +c net/minecraft/util/parsing/packrat/Term$Alternative bmo$a net/minecraft/class_9402$class_9403 + f Ljava/util/List; elements a comp_2478 + m ()Ljava/util/List; elements c comp_2478 + m (Ljava/util/List;)V +c net/minecraft/util/parsing/packrat/Term$Marker bmo$b net/minecraft/class_9402$class_9404 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2479 + f Ljava/lang/Object; value b comp_2480 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name c comp_2479 + m ()Ljava/lang/Object; value d comp_2480 + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V +c net/minecraft/util/parsing/packrat/Term$Maybe bmo$c net/minecraft/class_9402$class_9405 + f Lnet/minecraft/util/parsing/packrat/Term; term a comp_2481 + m ()Lnet/minecraft/util/parsing/packrat/Term; term c comp_2481 + m (Lnet/minecraft/util/parsing/packrat/Term;)V +c net/minecraft/util/parsing/packrat/Term$Reference bmo$d net/minecraft/class_9402$class_9406 + f Lnet/minecraft/util/parsing/packrat/Atom; name a comp_2482 + m ()Lnet/minecraft/util/parsing/packrat/Atom; name c comp_2482 + m (Lnet/minecraft/util/parsing/packrat/Atom;)V +c net/minecraft/util/parsing/packrat/Term$Sequence bmo$e net/minecraft/class_9402$class_9407 + f Ljava/util/List; elements a comp_2483 + m ()Ljava/util/List; elements c comp_2483 + m (Ljava/util/List;)V +c net/minecraft/util/parsing/packrat/commands/Grammar bmp net/minecraft/class_9408 + f Lnet/minecraft/util/parsing/packrat/Dictionary; rules a comp_2484 + f Lnet/minecraft/util/parsing/packrat/Atom; top b comp_2485 + m ()Lnet/minecraft/util/parsing/packrat/Dictionary; rules a comp_2484 + m (Lnet/minecraft/util/parsing/packrat/ErrorEntry;Ljava/util/function/Consumer;)V method_58339 a method_58339 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/Optional; parse a method_58340 + p 1 parseState + m (Lcom/mojang/brigadier/StringReader;)Ljava/lang/Object; parseForCommands a method_58341 + p 1 reader + m (Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;)Ljava/util/concurrent/CompletableFuture; parseForSuggestions a method_58342 + p 1 builder + m ()Lnet/minecraft/util/parsing/packrat/Atom; top b comp_2485 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/Atom;)V +c net/minecraft/util/parsing/packrat/commands/ResourceLocationParseRule bmq net/minecraft/class_9409 + f Lnet/minecraft/util/parsing/packrat/Rule; INSTANCE a field_49967 + m ()V + m ()V +c net/minecraft/util/parsing/packrat/commands/ResourceLookupRule bmr net/minecraft/class_9410 + f Ljava/lang/Object; context a field_49968 + f Lnet/minecraft/util/parsing/packrat/Atom; idParser b field_49969 + m (Lcom/mojang/brigadier/ImmutableStringReader;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; validateElement a method_58343 + p 1 reader + p 2 elementType + m (Lnet/minecraft/util/parsing/packrat/Atom;Ljava/lang/Object;)V + p 1 idParser + p 2 context +c net/minecraft/util/parsing/packrat/commands/ResourceSuggestion bms net/minecraft/class_9411 + m ()Ljava/util/stream/Stream; possibleResources a method_58344 +c net/minecraft/util/parsing/packrat/commands/StringReaderParserState bmt net/minecraft/class_9412 + f Lcom/mojang/brigadier/StringReader; input a field_49970 + m ()Lcom/mojang/brigadier/StringReader; input d method_58345 + m (Lnet/minecraft/util/parsing/packrat/Dictionary;Lnet/minecraft/util/parsing/packrat/ErrorCollector;Lcom/mojang/brigadier/StringReader;)V + p 1 dictionary + p 2 errorCollector + p 3 input +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms bmu net/minecraft/class_9413 + m (C)Lnet/minecraft/util/parsing/packrat/Term; character a method_58346 + p 0 value + m (Ljava/lang/String;)Lnet/minecraft/util/parsing/packrat/Term; word a method_58347 + p 0 value +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms$TerminalCharacter bmu$a net/minecraft/class_9413$class_9414 + f C value a comp_2486 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58348 a method_58348 + m ()C value c comp_2486 + m (C)V +c net/minecraft/util/parsing/packrat/commands/StringReaderTerms$TerminalWord bmu$b net/minecraft/class_9413$class_9415 + f Ljava/lang/String; value a comp_2487 + m (Lnet/minecraft/util/parsing/packrat/ParseState;)Ljava/util/stream/Stream; method_58349 a method_58349 + m ()Ljava/lang/String; value c comp_2487 + m (Ljava/lang/String;)V +c net/minecraft/util/parsing/packrat/commands/TagParseRule bmv net/minecraft/class_9416 + f Lnet/minecraft/util/parsing/packrat/Rule; INSTANCE a field_49971 + m ()V + m ()V +c net/minecraft/util/parsing/packrat/commands/package-info bmw net/minecraft/class_9417 +c net/minecraft/util/parsing/packrat/package-info bmx net/minecraft/class_9418 +c net/minecraft/util/profiling/ActiveProfiler bmy net/minecraft/class_3533 + f J WARNING_TIME_NANOS a field_16267 + f Lorg/slf4j/Logger; LOGGER c field_15735 + f Ljava/util/List; paths d field_15736 + f Lit/unimi/dsi/fastutil/longs/LongList; startTimes e field_15730 + f Ljava/util/Map; entries f field_21818 + f Ljava/util/function/IntSupplier; getTickTime g field_16266 + f Ljava/util/function/LongSupplier; getRealTime h field_21961 + f J startTimeNano i field_15732 + f I startTimeTicks j field_15729 + f Ljava/lang/String; path k field_15734 + f Z started l field_15733 + f Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; currentEntry m field_21819 + f Z warn n field_20345 + f Ljava/util/Set; chartedPaths o field_33873 + m (J)Ljava/lang/Object; method_21718 a method_21718 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; method_24245 e method_24245 + m ()Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; getCurrentEntry f method_24246 + m ()Ljava/lang/Object; method_21719 g method_21719 + m ()Ljava/lang/Object; method_21720 h method_21720 + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;Z)V + p 1 startTimeNano + p 2 startTimeTicks + p 3 warn + m ()V +c net/minecraft/util/profiling/ActiveProfiler$PathEntry bmy$a net/minecraft/class_3533$class_4746 + f J maxDuration a field_33874 + f J minDuration b field_33875 + f J accumulatedDuration c field_21820 + f J count d field_21821 + f Lit/unimi/dsi/fastutil/objects/Object2LongOpenHashMap; counters e field_21822 + m ()V +c net/minecraft/util/profiling/ContinuousProfiler bmz net/minecraft/class_4757 + f Ljava/util/function/LongSupplier; realTime a field_21962 + f Ljava/util/function/IntSupplier; tickCount b field_21963 + f Lnet/minecraft/util/profiling/ProfileCollector; profiler c field_21964 + m ()Z isEnabled a method_24333 + m ()V disable b method_24334 + m ()V enable c method_24335 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getFiller d method_24336 + m ()Lnet/minecraft/util/profiling/ProfileResults; getResults e method_24337 + m (Ljava/util/function/LongSupplier;Ljava/util/function/IntSupplier;)V + p 1 realTime + p 2 tickCount +c net/minecraft/util/profiling/EmptyProfileResults bna net/minecraft/class_3688 + f Lnet/minecraft/util/profiling/EmptyProfileResults; EMPTY a field_16265 + m ()V + m ()V +c net/minecraft/util/profiling/FilledProfileResults bnb net/minecraft/class_3692 + f Lorg/slf4j/Logger; LOGGER a field_16279 + f Lnet/minecraft/util/profiling/ProfilerPathEntry; EMPTY b field_21823 + f Lcom/google/common/base/Splitter; SPLITTER c field_21824 + f Ljava/util/Comparator; COUNTER_ENTRY_COMPARATOR e field_21825 + f Ljava/util/Map; entries f field_21826 + f J startTimeNano g field_16278 + f I startTimeTicks h field_16275 + f J endTimeNano i field_16276 + f I endTimeTicks j field_16274 + f I tickDuration k field_19383 + m (IILjava/lang/StringBuilder;Ljava/util/Map$Entry;)V method_24252 a method_24252 + m (ILjava/lang/String;Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;ILjava/lang/StringBuilder;)V appendCounterResults a method_24253 + p 1 indents + p 2 name + p 3 collector + p 4 tickSpan + p 5 builder + m (ILjava/lang/String;Ljava/lang/StringBuilder;)V appendProfilerResults a method_16061 + p 1 depth + p 2 sectionPath + p 3 builder + m (JI)Ljava/lang/String; getProfilerResults a method_16063 + p 1 timeSpan + p 3 tickSpan + m (Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;)J method_24254 a method_24254 + m (Ljava/lang/String;Ljava/lang/String;)Z isDirectChild a method_24255 + p 0 sectionPath + p 1 entry + m (Ljava/lang/StringBuilder;I)Ljava/lang/StringBuilder; indentLine a method_24256 + p 0 builder + p 1 indents + m (Ljava/lang/StringBuilder;ILjava/lang/String;Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector;)V method_24257 a method_24257 + m (Ljava/lang/StringBuilder;ILjava/lang/String;Ljava/lang/Long;)V method_24258 a method_24258 + m (Ljava/util/Map;Ljava/lang/String;Lnet/minecraft/util/profiling/ProfilerPathEntry;)V method_24259 a method_24259 + m (Ljava/util/Map;Ljava/lang/StringBuilder;I)V appendCounters a method_24260 + p 1 counters + p 2 builder + p 3 tickSpan + m (Ljava/util/Map;Ljava/util/List;Ljava/lang/String;Ljava/lang/Long;)V method_24261 a method_24261 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ProfilerPathEntry; getEntry c method_24262 + p 1 key + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector; method_24263 d method_24263 + m ()Ljava/util/Map; getCounterValues h method_24264 + m (Ljava/util/Map;JIJI)V + p 1 entries + p 2 startTimeNano + p 4 startTimeTicks + p 5 endTimeNano + p 7 endTimeTicks + m ()V +c net/minecraft/util/profiling/FilledProfileResults$1 bnb$1 net/minecraft/class_3692$1 + m ()V +c net/minecraft/util/profiling/FilledProfileResults$CounterCollector bnb$a net/minecraft/class_3692$class_4747 + f J selfValue a field_21827 + f J totalValue b field_21828 + f Ljava/util/Map; children c field_21829 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/FilledProfileResults$CounterCollector; method_24266 a method_24266 + m (Ljava/util/Iterator;J)V addValue a method_24267 + p 1 counters + p 2 value + m ()V +c net/minecraft/util/profiling/InactiveProfiler bnc net/minecraft/class_3694 + f Lnet/minecraft/util/profiling/InactiveProfiler; INSTANCE a field_16280 + m ()V + m ()V +c net/minecraft/util/profiling/ProfileCollector bnd net/minecraft/class_3693 + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/ActiveProfiler$PathEntry; getEntry c method_34696 + p 1 entryId + m ()Lnet/minecraft/util/profiling/ProfileResults; getResults d method_16064 + m ()Ljava/util/Set; getChartedPaths e method_37168 +c net/minecraft/util/profiling/ProfileResults bne net/minecraft/class_3696 + f C PATH_SEPARATOR d field_29924 + m ()J getStartTimeNano a method_16068 + m (Ljava/lang/String;)Ljava/util/List; getTimes a method_16067 + p 1 sectionPath + m (Ljava/nio/file/Path;)Z saveResults a method_16069 + p 1 path + m ()I getStartTimeTicks b method_16072 + m (Ljava/lang/String;)Ljava/lang/String; demanglePath b method_21721 + p 0 path + m ()J getEndTimeNano c method_16073 + m ()I getEndTimeTicks d method_16070 + m ()Ljava/lang/String; getProfilerResults e method_34970 + m ()I getTickDuration f method_16074 + m ()J getNanoDuration g method_16071 +c net/minecraft/util/profiling/ProfilerFiller bnf net/minecraft/class_3695 + f Ljava/lang/String; ROOT b field_29925 + m ()V startTick a method_16065 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/util/profiling/ProfilerFiller; tee a method_24338 + p 0 first + p 1 second + m (Lnet/minecraft/util/profiling/metrics/MetricCategory;)V markForCharting a method_37167 + p 1 category + m (Ljava/lang/String;)V push a method_15396 + c Start section + p 1 name + m (Ljava/lang/String;I)V incrementCounter a method_24270 + p 1 counterName + p 2 increment + m (Ljava/util/function/Supplier;)V push a method_15400 + p 1 nameSupplier + m (Ljava/util/function/Supplier;I)V incrementCounter a method_24271 + p 1 counterNameSupplier + p 2 increment + m ()V endTick b method_16066 + m (Ljava/lang/String;)V popPush b method_15405 + p 1 name + m (Ljava/util/function/Supplier;)V popPush b method_15403 + p 1 nameSupplier + m ()V pop c method_15407 + c End section + m (Ljava/util/function/Supplier;)V incrementCounter c method_39277 + p 1 entryIdSupplier + m (Ljava/lang/String;)V incrementCounter d method_39278 + p 1 entryId +c net/minecraft/util/profiling/ProfilerFiller$1 bnf$1 net/minecraft/class_3695$1 + f Lnet/minecraft/util/profiling/ProfilerFiller; val$first a field_21965 + f Lnet/minecraft/util/profiling/ProfilerFiller; val$second c field_21966 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/ProfilerFiller;)V +c net/minecraft/util/profiling/ProfilerPathEntry bng net/minecraft/class_4748 + m ()J getDuration a method_24272 + m ()J getMaxDuration b method_37169 + m ()J getCount c method_24273 + m ()Lit/unimi/dsi/fastutil/objects/Object2LongMap; getCounters d method_24274 +c net/minecraft/util/profiling/ResultField bnh net/minecraft/class_3534 + f D percentage a field_15739 + f D globalPercentage b field_15737 + f J count c field_19384 + f Ljava/lang/String; name d field_15738 + m ()I getColor a method_15409 + m (Lnet/minecraft/util/profiling/ResultField;)I compareTo a method_15408 + m (Ljava/lang/String;DDJ)V + p 1 name + p 2 percentage + p 4 globalPercentage + p 6 count +c net/minecraft/util/profiling/SingleTickProfiler bni net/minecraft/class_4758 + f Lorg/slf4j/Logger; LOGGER a field_21967 + f Ljava/util/function/LongSupplier; realTime b field_21968 + f J saveThreshold c field_21969 + f I tick d field_21970 + f Ljava/io/File; location e field_21971 + f Lnet/minecraft/util/profiling/ProfileCollector; profiler f field_21972 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; startTick a method_24339 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/util/profiling/SingleTickProfiler;)Lnet/minecraft/util/profiling/ProfilerFiller; decorateFiller a method_24340 + p 0 profiler + p 1 singleTickProfiler + m (Ljava/lang/String;)Lnet/minecraft/util/profiling/SingleTickProfiler; createTickProfiler a method_24341 + p 0 name + m ()V endTick b method_24342 + m ()I method_24343 c method_24343 + m (Ljava/util/function/LongSupplier;Ljava/lang/String;J)V + p 1 realTime + p 2 location + p 3 saveThreshold + m ()V +c net/minecraft/util/profiling/jfr/Environment bnj net/minecraft/class_6506 + f Lnet/minecraft/util/profiling/jfr/Environment; CLIENT a field_34412 + f Lnet/minecraft/util/profiling/jfr/Environment; SERVER b field_34413 + f Ljava/lang/String; description c field_34414 + f [Lnet/minecraft/util/profiling/jfr/Environment; $VALUES d field_34415 + m ()Ljava/lang/String; getDescription a method_37986 + m (Lnet/minecraft/server/MinecraftServer;)Lnet/minecraft/util/profiling/jfr/Environment; from a method_37987 + p 0 server + m ()[Lnet/minecraft/util/profiling/jfr/Environment; $values b method_37988 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 description + m ()V +c net/minecraft/util/profiling/jfr/JfrProfiler bnk net/minecraft/class_6505 + f Ljava/lang/String; ROOT_CATEGORY a field_34403 + f Ljava/lang/String; WORLD_GEN_CATEGORY b field_34404 + f Ljava/lang/String; TICK_CATEGORY c field_34405 + f Ljava/lang/String; NETWORK_CATEGORY d field_34406 + f Ljava/lang/String; STORAGE_CATEGORY e field_49058 + f Lorg/slf4j/Logger; LOGGER g field_34408 + f Ljava/util/List; CUSTOM_EVENTS h field_34407 + f Ljava/lang/String; FLIGHT_RECORDER_CONFIG i field_34409 + f Ljava/time/format/DateTimeFormatter; DATE_TIME_FORMATTER j field_34410 + f Lnet/minecraft/util/profiling/jfr/JfrProfiler; INSTANCE k field_35576 + f Ljdk/jfr/Recording; recording l field_34411 + f F currentAverageTickTime m field_35577 + f Ljava/util/Map; networkTrafficByAddress n field_35578 + m ()Lnet/minecraft/util/profiling/jfr/JfrProfiler; getInstance a method_39428 + m (Lnet/minecraft/util/profiling/jfr/Environment;Ljava/lang/String;Ljdk/jfr/Recording;)V method_37982 a method_37982 + m (Ljava/io/Reader;Lnet/minecraft/util/profiling/jfr/Environment;)Z start a method_37983 + p 1 reader + p 2 environment + m (Ljava/net/SocketAddress;)Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$SumAggregation; networkStatFor a method_39429 + p 1 remoteAddress + m ()V setupSummaryListener f method_38660 + m ()V method_39430 g method_39430 + m ()V method_39431 h method_39431 + m ()V + m ()V +c net/minecraft/util/profiling/jfr/JfrProfiler$1 bnk$1 net/minecraft/class_6505$1 + f Lnet/minecraft/util/profiling/jfr/SummaryReporter; summaryReporter a field_34921 + f Lnet/minecraft/util/profiling/jfr/JfrProfiler; field_34922 b field_34922 + m ()V method_38661 a method_38661 + m (Lnet/minecraft/util/profiling/jfr/JfrProfiler;)V +c net/minecraft/util/profiling/jfr/JvmProfiler bnl net/minecraft/class_6611 + f Lnet/minecraft/util/profiling/jfr/JvmProfiler; INSTANCE f field_34923 + m (F)V onServerTick a method_38654 + p 1 currentAverageTickTime + m (Lnet/minecraft/util/profiling/jfr/Environment;)Z start a method_37981 + p 1 environment + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; onChunkGenerate a method_38655 + p 1 chunkPos + p 2 level + p 3 name + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V onRegionFileRead a method_56979 + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketType;Ljava/net/SocketAddress;I)V onPacketReceived a method_38656 + p 1 protocol + p 2 packetType + p 3 address + p 4 size + m ()Ljava/nio/file/Path; stop b method_37980 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V onRegionFileWrite b method_56980 + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes + m (Lnet/minecraft/network/ConnectionProtocol;Lnet/minecraft/network/protocol/PacketType;Ljava/net/SocketAddress;I)V onPacketSent b method_38657 + p 1 protocol + p 2 packetType + p 3 address + p 4 size + m ()Z isRunning c method_37984 + m ()Z isAvailable d method_38658 + m ()Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; onWorldLoadedStarted e method_38659 + m ()V +c net/minecraft/util/profiling/jfr/JvmProfiler$NoOpProfiler bnl$a net/minecraft/class_6611$class_6612 + f Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration; noOpCommit a field_34925 + f Lorg/slf4j/Logger; LOGGER b field_34924 + m ()V method_38662 a method_38662 + m ()V + m ()V +c net/minecraft/util/profiling/jfr/Percentiles bnm net/minecraft/class_6508 + f Lcom/google/common/math/Quantiles$ScaleAndIndexes; DEFAULT_INDEXES a field_34418 + m (Ljava/util/Map;)Ljava/util/Map; sorted a method_37996 + p 0 input + m (Ljava/util/Map;Lit/unimi/dsi/fastutil/ints/Int2DoubleRBTreeMap;)V method_37997 a method_37997 + m ([D)Ljava/util/Map; evaluate a method_37998 + p 0 input + m ([J)Ljava/util/Map; evaluate a method_37999 + p 0 input + m ()V + m ()V +c net/minecraft/util/profiling/jfr/SummaryReporter bnn net/minecraft/class_6507 + f Lorg/slf4j/Logger; LOGGER a field_34926 + f Ljava/lang/Runnable; onDeregistration b field_34417 + m ()Ljava/lang/String; method_37993 a method_37993 + m (Ljava/nio/file/Path;)V recordingStopped a method_38663 + p 1 outputPath + m (Ljava/util/function/Supplier;)V infoWithFallback a method_37991 + p 0 message + m (Ljava/util/function/Supplier;Ljava/lang/Throwable;)V warnWithFallback a method_37992 + p 0 message + p 1 throwable + m ()Ljava/lang/String; method_37995 b method_37995 + m (Ljava/nio/file/Path;)Ljava/lang/String; method_37990 b method_37990 + m (Ljava/nio/file/Path;)Ljava/lang/String; method_37994 c method_37994 + m (Ljava/lang/Runnable;)V + p 1 onDeregistration + m ()V +c net/minecraft/util/profiling/jfr/callback/ProfiledDuration bno net/minecraft/class_6613 +c net/minecraft/util/profiling/jfr/callback/package-info bnp net/minecraft/class_6614 +c net/minecraft/util/profiling/jfr/event/ChunkRegionIoEvent bnq net/minecraft/class_9232 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;I)V + p 1 regionStorageInfo + p 2 chunkPos + p 3 version + p 4 bytes +c net/minecraft/util/profiling/jfr/event/ChunkRegionIoEvent$Fields bnq$a net/minecraft/class_9232$class_9233 + f Ljava/lang/String; REGION_POS_X a field_49059 + f Ljava/lang/String; REGION_POS_Z b field_49060 + f Ljava/lang/String; LOCAL_POS_X c field_49061 + f Ljava/lang/String; LOCAL_POS_Z d field_49062 + f Ljava/lang/String; CHUNK_POS_X e field_49063 + f Ljava/lang/String; CHUNK_POS_Z f field_49064 + f Ljava/lang/String; LEVEL g field_49065 + f Ljava/lang/String; DIMENSION h field_49066 + f Ljava/lang/String; TYPE i field_49067 + f Ljava/lang/String; COMPRESSION j field_49068 + f Ljava/lang/String; BYTES k field_49069 + m ()V +c net/minecraft/util/profiling/jfr/event/PacketEvent bnr net/minecraft/class_6509 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/net/SocketAddress;I)V + p 1 protocolId + p 2 packetDirection + p 3 packetId + p 4 address + p 5 bytes +c net/minecraft/util/profiling/jfr/event/PacketEvent$Fields bnr$a net/minecraft/class_6509$class_6510 + f Ljava/lang/String; REMOTE_ADDRESS a field_34419 + f Ljava/lang/String; PROTOCOL_ID b field_35579 + f Ljava/lang/String; PACKET_DIRECTION c field_48318 + f Ljava/lang/String; PACKET_ID d field_35580 + f Ljava/lang/String; BYTES e field_34421 + m ()V +c net/minecraft/util/profiling/jfr/event/package-info bns net/minecraft/class_6512 +c net/minecraft/util/profiling/jfr/package-info bnt net/minecraft/class_6515 +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser bnu net/minecraft/class_6516 + f Ljava/time/Instant; recordingStarted a field_34422 + f Ljava/time/Instant; recordingEnded b field_34423 + f Ljava/util/List; chunkGenStats c field_34424 + f Ljava/util/List; cpuLoadStat d field_34425 + f Ljava/util/Map; receivedPackets e field_34426 + f Ljava/util/Map; sentPackets f field_34427 + f Ljava/util/Map; readChunks g field_49070 + f Ljava/util/Map; writtenChunks h field_49071 + f Ljava/util/List; fileWrites i field_34428 + f Ljava/util/List; fileReads j field_34429 + f I garbageCollections k field_34430 + f Ljava/time/Duration; gcTotalDuration l field_34431 + f Ljava/util/List; gcHeapStats m field_34432 + f Ljava/util/List; threadAllocationStats n field_34433 + f Ljava/util/List; tickTimes o field_34434 + f Ljava/time/Duration; worldCreationDuration p field_34435 + m ()Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult; results a method_38000 + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize; method_56981 a method_56981 + m (Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize; method_39432 a method_39432 + m (Ljava/nio/file/Path;)Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult; parse a method_38001 + p 0 file + m (Ljava/time/Duration;Ljava/util/Map;)Lnet/minecraft/util/profiling/jfr/stats/IoSummary; collectIoStats a method_39433 + p 0 recordingDuration + p 1 entries + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_39434 a method_39434 + m (Ljava/util/stream/Stream;)V capture a method_38002 + p 1 events + m (Ljdk/jfr/consumer/RecordedEvent;)V method_38003 a method_38003 + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V incrementPacket a method_39435 + p 1 event + p 2 increment + p 3 packets + m (Ljdk/jfr/consumer/RecordedEvent;Ljava/util/List;Ljava/lang/String;)V appendFileIO a method_38004 + p 1 event + p 2 stats + p 3 id + m (Ljdk/jfr/consumer/RecordedEvent;ILjava/util/Map;)V incrementChunk b method_56982 + p 1 event + p 2 increment + p 3 chunks + m (Ljava/util/stream/Stream;)V + p 1 events +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser$1 bnu$1 net/minecraft/class_6516$1 + f Ljdk/jfr/consumer/RecordingFile; val$recordingFile a field_34436 + m ()Ljdk/jfr/consumer/RecordedEvent; next a method_38005 + m (Ljdk/jfr/consumer/RecordingFile;)V +c net/minecraft/util/profiling/jfr/parse/JfrStatsParser$MutableCountAndSize bnu$a net/minecraft/class_6516$class_6766 + f J count a field_35581 + f J totalSize b field_35582 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; toCountAndSize a method_39436 + m (I)V increment a method_39437 + p 1 increment + m ()V +c net/minecraft/util/profiling/jfr/parse/JfrStatsResult bnv net/minecraft/class_6517 + f Ljava/time/Instant; recordingStarted a comp_3 + f Ljava/time/Instant; recordingEnded b comp_4 + f Ljava/time/Duration; recordingDuration c comp_5 + f Ljava/time/Duration; worldCreationDuration d comp_6 + f Ljava/util/List; tickTimes e comp_7 + f Ljava/util/List; cpuLoadStats f comp_8 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; heapSummary g comp_9 + f Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; threadAllocationSummary h comp_10 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; receivedPacketsSummary i comp_11 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; sentPacketsSummary j comp_12 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; writtenChunks k comp_2339 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary; readChunks l comp_2340 + f Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileWrites m comp_13 + f Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileReads n comp_14 + f Ljava/util/List; chunkGenStats o comp_15 + m ()Ljava/util/List; chunkGenSummary a method_38006 + m (Lcom/mojang/datafixers/util/Pair;)Ljava/time/Duration; method_38007 a method_38007 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38008 a method_38008 + m ()Ljava/lang/String; asJson b method_38009 + m ()Ljava/time/Instant; recordingStarted c comp_3 + m ()Ljava/time/Instant; recordingEnded d comp_4 + m ()Ljava/time/Duration; recordingDuration e comp_5 + m ()Ljava/time/Duration; worldCreationDuration f comp_6 + m ()Ljava/util/List; tickTimes g comp_7 + m ()Ljava/util/List; cpuLoadStats h comp_8 + m ()Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; heapSummary i comp_9 + m ()Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; threadAllocationSummary j comp_10 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; receivedPacketsSummary k comp_11 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; sentPacketsSummary l comp_12 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; writtenChunks m comp_2339 + m ()Lnet/minecraft/util/profiling/jfr/stats/IoSummary; readChunks n comp_2340 + m ()Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileWrites o comp_13 + m ()Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; fileReads p comp_14 + m ()Ljava/util/List; chunkGenStats q comp_15 + m (Ljava/time/Instant;Ljava/time/Instant;Ljava/time/Duration;Ljava/time/Duration;Ljava/util/List;Ljava/util/List;Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;Ljava/util/List;)V +c net/minecraft/util/profiling/jfr/parse/package-info bnw net/minecraft/class_6518 +c net/minecraft/util/profiling/jfr/serialize/JfrResultJsonSerializer bnx net/minecraft/class_6519 + f Lcom/google/gson/Gson; gson a field_34437 + f Ljava/lang/String; BYTES_PER_SECOND b field_34438 + f Ljava/lang/String; COUNT c field_34439 + f Ljava/lang/String; DURATION_NANOS_TOTAL d field_34440 + f Ljava/lang/String; TOTAL_BYTES e field_34441 + f Ljava/lang/String; COUNT_PER_SECOND f field_34442 + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Ljava/lang/String; format a method_38010 + p 1 result + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkGenStat;)Lcom/google/gson/JsonElement; method_38011 a method_38011 + m (Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification;Lcom/google/gson/JsonObject;)V serializeChunkId a method_56983 + p 0 chunkIndentification + p 1 json + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary;)Lcom/google/gson/JsonElement; fileIoSummary a method_38012 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary;)Lcom/google/gson/JsonElement; heap a method_38013 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/IoSummary;Ljava/util/function/BiConsumer;)Lcom/google/gson/JsonElement; ioSummary a method_38014 + p 1 ioSummary + p 2 serializer + m (Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification;Lcom/google/gson/JsonObject;)V serializePacketId a method_56984 + p 0 packetIdentification + p 1 json + m (Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary;)Lcom/google/gson/JsonElement; threadAllocations a method_38015 + p 1 summary + m (Lnet/minecraft/util/profiling/jfr/stats/TickTimeStat;)D method_38664 a method_38664 + m (Lcom/google/gson/JsonArray;Lcom/mojang/datafixers/util/Pair;)V method_38026 a method_38026 + m (Lcom/google/gson/JsonArray;Ljava/lang/String;Ljava/lang/Double;)V method_38017 a method_38017 + m (Lcom/google/gson/JsonArray;Ljava/util/function/BiConsumer;Lcom/mojang/datafixers/util/Pair;)V method_38016 a method_38016 + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonArray;)V method_38018 a method_38018 + m (Lcom/google/gson/JsonObject;Lcom/google/gson/JsonObject;)V method_38019 a method_38019 + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38020 a method_38020 + m (Lcom/mojang/datafixers/util/Pair;)D method_38021 a method_38021 + m (Ljava/lang/String;Ljava/lang/Double;Lcom/google/gson/JsonObject;)V method_38022 a method_38022 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; chunkGen a method_38023 + p 1 summary + m (Ljava/util/List;Ljava/util/function/ToDoubleFunction;)Lcom/google/gson/JsonObject; method_38024 a method_38024 + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Lcom/google/gson/JsonElement; fileIO b method_38025 + p 1 result + m (Lcom/google/gson/JsonObject;Ljava/lang/Integer;Ljava/lang/Double;)V method_38027 b method_38027 + m (Ljava/util/List;)Lcom/google/gson/JsonElement; serverTicks b method_38028 + p 1 stats + m (Lnet/minecraft/util/profiling/jfr/parse/JfrStatsResult;)Lcom/google/gson/JsonElement; network c method_38029 + p 1 result + m (Ljava/util/List;)Lcom/google/gson/JsonElement; cpu c method_38030 + p 1 stats + m ()V +c net/minecraft/util/profiling/jfr/serialize/package-info bny net/minecraft/class_6520 +c net/minecraft/util/profiling/jfr/stats/ChunkGenStat bnz net/minecraft/class_6521 + f Ljava/time/Duration; duration a comp_16 + f Lnet/minecraft/world/level/ChunkPos; chunkPos b comp_17 + f Lnet/minecraft/server/level/ColumnPos; worldPos c comp_18 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status d comp_19 + f Ljava/lang/String; level e comp_21 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ChunkGenStat; from a method_38031 + p 0 event + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos b comp_17 + m ()Lnet/minecraft/server/level/ColumnPos; worldPos c comp_18 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; status d comp_19 + m ()Ljava/lang/String; level e comp_21 + m (Ljava/time/Duration;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/ColumnPos;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/lang/String;)V +c net/minecraft/util/profiling/jfr/stats/ChunkIdentification boa net/minecraft/class_9234 + f Ljava/lang/String; level a comp_2341 + f Ljava/lang/String; dimension b comp_2342 + f I x c comp_2343 + f I z d comp_2344 + m ()Ljava/lang/String; level a comp_2341 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ChunkIdentification; from a method_56985 + p 0 event + m ()Ljava/lang/String; dimension b comp_2342 + m ()I x c comp_2343 + m ()I z d comp_2344 + m (Ljava/lang/String;Ljava/lang/String;II)V +c net/minecraft/util/profiling/jfr/stats/CpuLoadStat bob net/minecraft/class_6522 + f D jvm a comp_22 + f D userJvm b comp_23 + f D system c comp_24 + m ()D jvm a comp_22 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/CpuLoadStat; from a method_38032 + p 0 event + m ()D userJvm b comp_23 + m ()D system c comp_24 + m (DDD)V +c net/minecraft/util/profiling/jfr/stats/FileIOStat boc net/minecraft/class_6523 + f Ljava/time/Duration; duration a comp_25 + f Ljava/lang/String; path b comp_26 + f J bytes c comp_27 + m ()Ljava/time/Duration; duration a comp_25 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)J method_38033 a method_38033 + m (Ljava/time/Duration;Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/FileIOStat$Summary; summary a method_38034 + p 0 duration + p 1 stats + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_38035 a method_38035 + m ()Ljava/lang/String; path b comp_26 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)Ljava/lang/String; method_38036 b method_38036 + m ()J bytes c comp_27 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)Z method_38037 c method_38037 + m (Lnet/minecraft/util/profiling/jfr/stats/FileIOStat;)J method_38038 d method_38038 + m (Ljava/time/Duration;Ljava/lang/String;J)V +c net/minecraft/util/profiling/jfr/stats/FileIOStat$Summary boc$a net/minecraft/class_6523$class_6524 + f J totalBytes a comp_28 + f D bytesPerSecond b comp_29 + f J counts c comp_30 + f D countsPerSecond d comp_31 + f Ljava/time/Duration; timeSpentInIO e comp_32 + f Ljava/util/List; topTenContributorsByTotalBytes f comp_33 + m ()J totalBytes a comp_28 + m ()D bytesPerSecond b comp_29 + m ()J counts c comp_30 + m ()D countsPerSecond d comp_31 + m ()Ljava/time/Duration; timeSpentInIO e comp_32 + m ()Ljava/util/List; topTenContributorsByTotalBytes f comp_33 + m (JDJDLjava/time/Duration;Ljava/util/List;)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat bod net/minecraft/class_6525 + f Ljava/time/Instant; timestamp a comp_34 + f J heapUsed b comp_35 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; timing c comp_36 + m ()Ljava/time/Instant; timestamp a comp_34 + m (Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat;)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; method_38039 a method_38039 + m (Ljava/time/Duration;Ljava/util/List;Ljava/time/Duration;I)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary; summary a method_38040 + p 0 duration + p 1 stats + p 2 gcTotalDuration + p 3 totalGCs + m (Ljava/util/List;)D calculateAllocationRatePerSecond a method_38041 + p 0 stats + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat; from a method_38042 + p 0 event + m ()J heapUsed b comp_35 + m ()Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; timing c comp_36 + m (Ljava/time/Instant;JLnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing;)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat$Summary bod$a net/minecraft/class_6525$class_6526 + f Ljava/time/Duration; duration a comp_37 + f Ljava/time/Duration; gcTotalDuration b comp_38 + f I totalGCs c comp_39 + f D allocationRateBytesPerSecond d comp_40 + m ()F gcOverHead a method_38043 + m ()Ljava/time/Duration; duration b comp_37 + m ()Ljava/time/Duration; gcTotalDuration c comp_38 + m ()I totalGCs d comp_39 + m ()D allocationRateBytesPerSecond e comp_40 + m (Ljava/time/Duration;Ljava/time/Duration;ID)V +c net/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing bod$b net/minecraft/class_6525$class_6527 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; BEFORE_GC a field_34443 + f Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; AFTER_GC b field_34444 + f [Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; $VALUES c field_34445 + m ()[Lnet/minecraft/util/profiling/jfr/stats/GcHeapStat$Timing; $values a method_38044 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/util/profiling/jfr/stats/IoSummary boe net/minecraft/class_6767 + f Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; totalCountAndSize a field_35583 + f Ljava/util/List; largestSizeContributors b field_35584 + f Ljava/time/Duration; recordingDuration c field_35585 + m ()D getCountsPerSecond a method_39438 + m ()D getSizePerSecond b method_39439 + m ()J getTotalCount c method_39440 + m ()J getTotalSize d method_39441 + m ()Ljava/util/List; largestSizeContributors e method_39442 + m (Ljava/time/Duration;Ljava/util/List;)V + p 1 recordingDuration + p 2 entries +c net/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize boe$a net/minecraft/class_6767$class_6768 + f J totalCount a comp_257 + f J totalSize b comp_258 + f Ljava/util/Comparator; SIZE_THEN_COUNT c field_35586 + m ()F averageSize a method_56986 + m (Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize;)Lnet/minecraft/util/profiling/jfr/stats/IoSummary$CountAndSize; add a method_39444 + p 1 countAndSize + m ()J totalCount b comp_257 + m ()J totalSize c comp_258 + m (JJ)V + m ()V +c net/minecraft/util/profiling/jfr/stats/PacketIdentification bof net/minecraft/class_6769 + f Ljava/lang/String; direction a comp_259 + f Ljava/lang/String; protocolId b comp_260 + f Ljava/lang/String; packetId c comp_261 + m ()Ljava/lang/String; direction a comp_259 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/PacketIdentification; from a method_39447 + p 0 event + m ()Ljava/lang/String; protocolId b comp_260 + m ()Ljava/lang/String; packetId c comp_261 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/util/profiling/jfr/stats/ThreadAllocationStat bog net/minecraft/class_6530 + f Ljava/time/Instant; timestamp a comp_48 + f Ljava/lang/String; threadName b comp_49 + f J totalBytes c comp_50 + f Ljava/lang/String; UNKNOWN_THREAD d field_34446 + m ()Ljava/time/Instant; timestamp a comp_48 + m (Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat;)Ljava/lang/String; method_38054 a method_38054 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary; summary a method_38055 + p 0 stats + m (Ljava/util/Map;Ljava/lang/String;Ljava/util/List;)V method_38056 a method_38056 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/ThreadAllocationStat; from a method_38057 + p 0 event + m ()Ljava/lang/String; threadName b comp_49 + m ()J totalBytes c comp_50 + m (Ljava/time/Instant;Ljava/lang/String;J)V +c net/minecraft/util/profiling/jfr/stats/ThreadAllocationStat$Summary bog$a net/minecraft/class_6530$class_6531 + f Ljava/util/Map; allocationsPerSecondByThread a comp_51 + m ()Ljava/util/Map; allocationsPerSecondByThread a comp_51 + m (Ljava/util/Map;)V +c net/minecraft/util/profiling/jfr/stats/TickTimeStat boh net/minecraft/class_6532 + f Ljava/time/Instant; timestamp a comp_52 + f Ljava/time/Duration; currentAverage b comp_53 + m ()Ljava/time/Instant; timestamp a comp_52 + m (Ljdk/jfr/consumer/RecordedEvent;)Lnet/minecraft/util/profiling/jfr/stats/TickTimeStat; from a method_38058 + p 0 event + m ()Ljava/time/Duration; currentAverage b comp_53 + m (Ljava/time/Instant;Ljava/time/Duration;)V +c net/minecraft/util/profiling/jfr/stats/TimedStat boi net/minecraft/class_6534 + m ()Ljava/time/Duration; duration a comp_16 +c net/minecraft/util/profiling/jfr/stats/TimedStatSummary boj net/minecraft/class_6535 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; fastest a comp_54 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; slowest b comp_55 + f Lnet/minecraft/util/profiling/jfr/stats/TimedStat; secondSlowest c comp_56 + f I count d comp_57 + f Ljava/util/Map; percentilesNanos e comp_58 + f Ljava/time/Duration; totalDuration f comp_59 + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; fastest a comp_54 + m (Lnet/minecraft/util/profiling/jfr/stats/TimedStat;)J method_38059 a method_38059 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/jfr/stats/TimedStatSummary; summary a method_38060 + p 0 stats + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; slowest b comp_55 + m ()Lnet/minecraft/util/profiling/jfr/stats/TimedStat; secondSlowest c comp_56 + m ()I count d comp_57 + m ()Ljava/util/Map; percentilesNanos e comp_58 + m ()Ljava/time/Duration; totalDuration f comp_59 + m (Lnet/minecraft/util/profiling/jfr/stats/TimedStat;Lnet/minecraft/util/profiling/jfr/stats/TimedStat;Lnet/minecraft/util/profiling/jfr/stats/TimedStat;ILjava/util/Map;Ljava/time/Duration;)V +c net/minecraft/util/profiling/jfr/stats/package-info bok net/minecraft/class_6536 +c net/minecraft/util/profiling/metrics/MetricCategory bol net/minecraft/class_5949 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; PATH_FINDING a field_33876 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; EVENT_LOOPS b field_29551 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; MAIL_BOXES c field_29552 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; TICK_LOOP d field_33877 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; JVM e field_33878 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CHUNK_RENDERING f field_33879 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CHUNK_RENDERING_DISPATCHING g field_33880 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; CPU h field_33881 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; GPU i field_37416 + f Ljava/lang/String; description j field_29553 + f [Lnet/minecraft/util/profiling/metrics/MetricCategory; $VALUES k field_29554 + m ()Ljava/lang/String; getDescription a method_34700 + m ()[Lnet/minecraft/util/profiling/metrics/MetricCategory; $values b method_36594 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 description + m ()V +c net/minecraft/util/profiling/metrics/MetricSampler bom net/minecraft/class_5965 + f Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest a field_29603 + f Ljava/lang/String; name b field_33882 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; category c field_29598 + f Ljava/util/function/DoubleSupplier; sampler d field_29599 + f Lio/netty/buffer/ByteBuf; ticks e field_33883 + f Lio/netty/buffer/ByteBuf; values f field_29600 + f Z isRunning g field_29601 + f Ljava/lang/Runnable; beforeTick h field_29602 + f D currentValue i field_33884 + m ()V onStartTick a method_34780 + m (I)V onEndTick a method_34781 + p 1 tickTime + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/lang/Object;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/util/profiling/metrics/MetricSampler; create a method_34778 + p 0 name + p 1 category + p 2 context + p 3 sampler + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/DoubleSupplier;)Lnet/minecraft/util/profiling/metrics/MetricSampler; create a method_34776 + p 0 name + p 1 category + p 2 sampler + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; builder a method_34779 + p 0 name + p 1 category + p 2 sampler + p 3 context + m ()V onFinished b method_34782 + m ()Ljava/util/function/DoubleSupplier; getSampler c method_37170 + m ()Ljava/lang/String; getName d method_37171 + m ()Lnet/minecraft/util/profiling/metrics/MetricCategory; getCategory e method_37172 + m ()Lnet/minecraft/util/profiling/metrics/MetricSampler$SamplerResult; result f method_37173 + m ()Z triggersThreshold g method_37174 + m ()V verifyRunning h method_34786 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/DoubleSupplier;Ljava/lang/Runnable;Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest;)V + p 1 name + p 2 category + p 3 sampler + p 4 beforeTick + p 5 thresholdTest +c net/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder bom$a net/minecraft/class_5965$class_5966 + f Ljava/lang/String; name a field_33885 + f Lnet/minecraft/util/profiling/metrics/MetricCategory; category b field_33886 + f Ljava/util/function/DoubleSupplier; sampler c field_29605 + f Ljava/lang/Object; context d field_29606 + f Ljava/lang/Runnable; beforeTick e field_29607 + f Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest f field_29608 + m ()Lnet/minecraft/util/profiling/metrics/MetricSampler; build a method_34787 + m (Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; withThresholdAlert a method_34788 + p 1 thresholdTest + m (Ljava/util/function/Consumer;)Lnet/minecraft/util/profiling/metrics/MetricSampler$MetricSamplerBuilder; withBeforeTick a method_34789 + p 1 beforeTick + m (Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)D method_34790 a method_34790 + m (Ljava/util/function/Consumer;)V method_34791 b method_34791 + m (Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/function/ToDoubleFunction;Ljava/lang/Object;)V + p 1 name + p 2 category + p 3 sampler + p 4 context +c net/minecraft/util/profiling/metrics/MetricSampler$SamplerResult bom$b net/minecraft/class_5965$class_6398 + f Lit/unimi/dsi/fastutil/ints/Int2DoubleMap; recording a field_33887 + f I firstTick b field_33888 + f I lastTick c field_33889 + m ()I getFirstTick a method_37175 + m (I)D valueAtTick a method_37176 + p 1 tick + m ()I getLastTick b method_37177 + m (IILit/unimi/dsi/fastutil/ints/Int2DoubleMap;)V + p 1 firstTick + p 2 lastTick + p 3 recording +c net/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest bom$c net/minecraft/class_5965$class_5967 + m (D)Z test test method_34792 + p 1 value +c net/minecraft/util/profiling/metrics/MetricSampler$ValueIncreasedByPercentage bom$d net/minecraft/class_5965$class_5968 + f F percentageIncreaseThreshold a field_29609 + f D previousValue b field_29611 + m (F)V + p 1 percentageIncreaseThreshold +c net/minecraft/util/profiling/metrics/MetricsRegistry bon net/minecraft/class_5950 + f Lnet/minecraft/util/profiling/metrics/MetricsRegistry; INSTANCE a field_29555 + f Ljava/util/WeakHashMap; measuredInstances b field_29556 + m ()Ljava/util/List; getRegisteredSamplers a method_37178 + m (Lnet/minecraft/util/profiling/metrics/ProfilerMeasured;)V add a method_34702 + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37179 a method_37179 + m (Ljava/util/Map;)Ljava/util/List; aggregateDuplicates a method_37180 + p 0 samplers + m (Lnet/minecraft/util/profiling/metrics/ProfilerMeasured;)Ljava/util/stream/Stream; method_37181 b method_37181 + m ()V + m ()V +c net/minecraft/util/profiling/metrics/MetricsRegistry$AggregatedMetricSampler bon$a net/minecraft/class_5950$class_6399 + f Ljava/util/List; delegates b field_33890 + m (DLnet/minecraft/util/profiling/metrics/MetricSampler;)Z method_37182 a method_37182 + m (Ljava/util/List;)Lnet/minecraft/util/profiling/metrics/MetricSampler$ThresholdTest; thresholdTest a method_37183 + p 0 samplers + m (Ljava/util/List;D)Z method_37184 a method_37184 + m (Ljava/util/List;)V beforeTick b method_37185 + p 0 samplers + m (Ljava/util/List;)D averageValueFromDelegates c method_37186 + p 0 samplers + m (Ljava/util/List;)V method_37187 d method_37187 + m (Ljava/util/List;)D method_37188 e method_37188 + m (Ljava/lang/String;Ljava/util/List;)V + p 1 name + p 2 delegates +c net/minecraft/util/profiling/metrics/MetricsSamplerProvider boo net/minecraft/class_6400 + m (Ljava/util/function/Supplier;)Ljava/util/Set; samplers a method_37189 + p 1 profiles +c net/minecraft/util/profiling/metrics/ProfilerMeasured bop net/minecraft/class_5952 + m ()Ljava/util/List; profiledMetrics bw method_34705 +c net/minecraft/util/profiling/metrics/package-info boq net/minecraft/class_6243 +c net/minecraft/util/profiling/metrics/profiling/ActiveMetricsRecorder bor net/minecraft/class_5961 + f I PROFILING_MAX_DURATION_SECONDS a field_32676 + f Ljava/util/function/Consumer; globalOnReportFinished b field_29579 + f Ljava/util/Map; deviationsBySampler c field_33891 + f Lnet/minecraft/util/profiling/ContinuousProfiler; taskProfiler d field_29581 + f Ljava/util/concurrent/Executor; ioExecutor e field_29582 + f Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister; metricsPersister f field_29583 + f Ljava/util/function/Consumer; onProfilingEnd g field_29584 + f Ljava/util/function/Consumer; onReportFinished h field_29585 + f Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider; metricsSamplerProvider i field_33892 + f Ljava/util/function/LongSupplier; wallTimeSource j field_29586 + f J deadlineNano k field_29588 + f I currentTick l field_29589 + f Lnet/minecraft/util/profiling/ProfileCollector; singleTickProfiler m field_29590 + f Z killSwitch n field_29591 + f Ljava/util/Set; thisTickSamplers o field_33893 + m (Lnet/minecraft/util/profiling/ProfileResults;)V scheduleSaveResults a method_34763 + p 1 results + m (Lnet/minecraft/util/profiling/metrics/MetricSampler;)Ljava/util/List; method_37190 a method_37190 + m (Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)Lnet/minecraft/util/profiling/metrics/profiling/ActiveMetricsRecorder; createStarted a method_37191 + p 0 metricsSamplerProvider + p 1 wallTimeSource + p 2 ioExecutor + p 3 metricsPersister + p 4 onProfilerEnd + p 5 onReportFinished + m (Ljava/util/Collection;)V cleanup a method_41319 + p 1 samplers + m (Ljava/util/HashSet;Lnet/minecraft/util/profiling/ProfileResults;)V method_37192 a method_37192 + m (Ljava/util/function/Consumer;)V registerGlobalCompletionCallback a method_35762 + p 0 globalOnReportFinished + m ()V verifyStarted g method_34762 + m ()I method_34765 h method_34765 + m ()Lnet/minecraft/util/profiling/ProfileCollector; method_37193 i method_37193 + m ()I method_34768 j method_34768 + m ()I method_34769 k method_34769 + m (Lnet/minecraft/util/profiling/metrics/MetricsSamplerProvider;Ljava/util/function/LongSupplier;Ljava/util/concurrent/Executor;Lnet/minecraft/util/profiling/metrics/storage/MetricsPersister;Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 metricsSamplerProvider + p 2 wallTimeSource + p 3 ioExecutor + p 4 metricPersister + p 5 onProfilerEnd + p 6 onReportFinished + m ()V +c net/minecraft/util/profiling/metrics/profiling/InactiveMetricsRecorder bos net/minecraft/class_5963 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; INSTANCE a field_29594 + m ()V + m ()V +c net/minecraft/util/profiling/metrics/profiling/MetricsRecorder bot net/minecraft/class_5962 + m ()V end a method_34770 + m ()V cancel b method_41320 + m ()V startTick c method_34771 + m ()V endTick d method_34772 + m ()Z isRecording e method_34773 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler f method_34774 +c net/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter bou net/minecraft/class_6401 + f Ljava/util/Set; previouslyFoundSamplerNames a field_33894 + m (Ljava/util/function/Supplier;)Ljava/util/Set; newSamplersFoundInProfiler a method_37194 + p 1 profiles + m (Ljava/util/function/Supplier;Ljava/lang/String;)D method_37195 a method_37195 + m (Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/util/profiling/metrics/MetricCategory;)Lnet/minecraft/util/profiling/metrics/MetricSampler; samplerForProfilingPath a method_37196 + p 0 profiles + p 1 name + p 2 category + m (Ljava/util/function/Supplier;Lorg/apache/commons/lang3/tuple/Pair;)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37197 a method_37197 + m (Lorg/apache/commons/lang3/tuple/Pair;)Z method_37198 a method_37198 + m ()V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider bov net/minecraft/class_6402 + f Lorg/slf4j/Logger; LOGGER a field_33988 + f Ljava/util/Set; samplers b field_33895 + f Lnet/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter; samplerFactory c field_33896 + m ()Ljava/util/Set; runtimeIndependentSamplers a method_37199 + m (Lnet/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats;I)Lnet/minecraft/util/profiling/metrics/MetricSampler; method_37200 a method_37200 + m (Lcom/google/common/base/Stopwatch;)D method_37201 a method_37201 + m (Ljava/util/function/LongSupplier;)Lnet/minecraft/util/profiling/metrics/MetricSampler; tickTimeSampler a method_37202 + p 0 timeSource + m ()D method_37203 b method_37203 + m (Lnet/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats;I)D method_37204 b method_37204 + m (Ljava/util/function/LongSupplier;Z)V + p 1 timeSource + p 2 dedicatedServer + m ()V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$1 bov$1 net/minecraft/class_6402$1 + f Ljava/util/function/LongSupplier; val$timeSource a field_29592 + m (Ljava/util/function/LongSupplier;)V +c net/minecraft/util/profiling/metrics/profiling/ServerMetricsSamplersProvider$CpuStats bov$a net/minecraft/class_6402$class_6403 + f I nrOfCpus a field_33897 + f Loshi/SystemInfo; systemInfo b field_33898 + f Loshi/hardware/CentralProcessor; processor c field_33899 + f [[J previousCpuLoadTick d field_33900 + f [D currentLoad e field_33901 + f J lastPollMs f field_33902 + m (I)D loadForCpu a method_37205 + p 1 index + m ()V +c net/minecraft/util/profiling/metrics/profiling/package-info bow net/minecraft/class_6004 +c net/minecraft/util/profiling/metrics/storage/MetricsPersister box net/minecraft/class_5971 + f Ljava/nio/file/Path; PROFILING_RESULTS_DIR a field_29616 + f Ljava/lang/String; METRICS_DIR_NAME b field_32677 + f Ljava/lang/String; DEVIATIONS_DIR_NAME c field_32678 + f Ljava/lang/String; PROFILING_RESULT_FILENAME d field_32679 + f Lorg/slf4j/Logger; LOGGER e field_29618 + f Ljava/lang/String; rootFolderName f field_33903 + m (I)[Ljava/lang/String; method_37206 a method_37206 + m (ILnet/minecraft/util/profiling/metrics/MetricSampler$SamplerResult;)Ljava/lang/String; method_37207 a method_37207 + m (Lnet/minecraft/util/profiling/ProfileResults;Ljava/nio/file/Path;)V saveProfilingTaskExecutionResult a method_34802 + p 1 results + p 2 outputPath + m (Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/List;Ljava/nio/file/Path;)V saveCategory a method_37208 + p 1 category + p 2 samplers + p 3 path + m (Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricCategory;Ljava/util/List;)V method_37209 a method_37209 + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricSampler;Lnet/minecraft/util/profiling/metrics/storage/RecordedDeviation;)V method_37210 a method_37210 + m (Ljava/time/format/DateTimeFormatter;Ljava/nio/file/Path;Lnet/minecraft/util/profiling/metrics/MetricSampler;Ljava/util/List;)V method_37211 a method_37211 + m (Ljava/util/Map;Ljava/nio/file/Path;)V saveDeviations a method_37212 + p 1 deviations + p 2 path + m (Ljava/util/Set;Ljava/nio/file/Path;)V saveMetrics a method_34803 + p 1 samplers + p 2 path + m (Ljava/util/Set;Ljava/util/Map;Lnet/minecraft/util/profiling/ProfileResults;)Ljava/nio/file/Path; saveReports a method_34807 + p 1 samplers + p 2 deviations + p 3 results + m (Ljava/lang/String;)V + p 1 rootFolderName + m ()V +c net/minecraft/util/profiling/metrics/storage/RecordedDeviation boy net/minecraft/class_5964 + f Ljava/time/Instant; timestamp a field_29595 + f I tick b field_29596 + f Lnet/minecraft/util/profiling/ProfileResults; profilerResultAtTick c field_29597 + m (Ljava/time/Instant;ILnet/minecraft/util/profiling/ProfileResults;)V + p 1 timestamp + p 2 tick + p 3 profilerResultAtTick +c net/minecraft/util/profiling/metrics/storage/package-info boz net/minecraft/class_6245 +c net/minecraft/util/profiling/package-info bpa net/minecraft/class_6003 +c net/minecraft/util/random/SimpleWeightedRandomList bpb net/minecraft/class_6005 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; builder a method_34971 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandomValue a method_34973 + p 1 random + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrappedCodecAllowingEmpty a method_39521 + p 0 codec + m (Ljava/lang/Object;)Lnet/minecraft/util/random/SimpleWeightedRandomList; single a method_38061 + p 0 data + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; empty b method_38062 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; wrappedCodec b method_34972 + p 0 elementCodec + m (Ljava/util/List;)V + p 1 items +c net/minecraft/util/random/SimpleWeightedRandomList$Builder bpb$a net/minecraft/class_6005$class_6006 + f Lcom/google/common/collect/ImmutableList$Builder; result a field_29926 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; build a method_34974 + m (Ljava/lang/Object;)Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; add a method_54453 + p 1 data + m (Ljava/lang/Object;I)Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder; add a method_34975 + p 1 data + p 2 weight + m ()V +c net/minecraft/util/random/Weight bpc net/minecraft/class_6007 + f Lcom/mojang/serialization/Codec; CODEC a field_29927 + f Lnet/minecraft/util/random/Weight; ONE b field_29928 + f Lorg/slf4j/Logger; LOGGER c field_29929 + f I value d field_29930 + m ()I asInt a method_34976 + m (I)Lnet/minecraft/util/random/Weight; of a method_34977 + p 0 weight + m (I)V validateWeight b method_34978 + p 0 weight + m (I)V + p 1 weight + m ()V +c net/minecraft/util/random/WeightedEntry bpd net/minecraft/class_6008 + m ()Lnet/minecraft/util/random/Weight; getWeight a method_34979 + m (Ljava/lang/Object;I)Lnet/minecraft/util/random/WeightedEntry$Wrapper; wrap a method_34980 + p 0 data + p 1 weight +c net/minecraft/util/random/WeightedEntry$IntrusiveBase bpd$a net/minecraft/class_6008$class_6009 + f Lnet/minecraft/util/random/Weight; weight a field_29931 + m (I)V + p 1 weight + m (Lnet/minecraft/util/random/Weight;)V + p 1 weight +c net/minecraft/util/random/WeightedEntry$Wrapper bpd$b net/minecraft/class_6008$class_6010 + f Ljava/lang/Object; data a comp_2542 + f Lnet/minecraft/util/random/Weight; weight b comp_2543 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_34981 + p 0 elementCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34982 a method_34982 + m ()Ljava/lang/Object; data b comp_2542 + m ()Lnet/minecraft/util/random/Weight; weight c comp_2543 + m (Ljava/lang/Object;Lnet/minecraft/util/random/Weight;)V + p 1 data + p 2 weight +c net/minecraft/util/random/WeightedRandom bpe net/minecraft/class_6011 + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)Ljava/util/Optional; getRandomItem a method_34986 + p 0 random + p 1 entries + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;I)Ljava/util/Optional; getRandomItem a method_34987 + p 0 random + p 1 entries + p 2 totalWeight + m (Ljava/util/List;)I getTotalWeight a method_34984 + p 0 entries + m (Ljava/util/List;I)Ljava/util/Optional; getWeightedItem a method_34985 + p 0 entries + p 1 weightedIndex + m ()V +c net/minecraft/util/random/WeightedRandomList bpf net/minecraft/class_6012 + f I totalWeight a field_29934 + f Lcom/google/common/collect/ImmutableList; items b field_29935 + m (Ljava/util/List;)Lnet/minecraft/util/random/WeightedRandomList; create a method_34988 + p 0 items + m ([Lnet/minecraft/util/random/WeightedEntry;)Lnet/minecraft/util/random/WeightedRandomList; create a method_34989 + p 0 items + m (Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom b method_34992 + p 1 random + m ()Lnet/minecraft/util/random/WeightedRandomList; create c method_34990 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec c method_34991 + p 0 elementCodec + m ()Z isEmpty d method_34993 + m ()Ljava/util/List; unwrap e method_34994 + m (Ljava/util/List;)V + p 1 items +c net/minecraft/util/random/package-info bpg net/minecraft/class_6013 +c net/minecraft/util/thread/BlockableEventLoop bph net/minecraft/class_1255 + f Ljava/lang/String; name b field_18318 + f Lorg/slf4j/Logger; LOGGER c field_5751 + f Ljava/util/Queue; pendingRunnables d field_5750 + f I blockingCount e field_18319 + m ()V waitForTasks A method_20813 + m ()Z pollTask B method_16075 + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; submitAsync a method_5382 + p 1 task + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; submit a method_5385 + p 1 supplier + m ()Z scheduleExecutables ay method_5384 + m ()Ljava/lang/Thread; getRunningThread az method_3777 + m (Ljava/lang/Runnable;)Ljava/lang/Void; method_5386 b method_5386 + m (Ljava/util/function/BooleanSupplier;)V managedBlock b method_18857 + c Drive the executor until the given BooleanSupplier returns true + p 1 isDone + m ()V dropAllTasks bA method_18855 + m ()V runAllTasks bB method_5383 + m ()Z isSameThread bx method_18854 + m ()I getPendingTasksCount by method_21684 + m (Ljava/lang/Runnable;)V executeIfPossible c method_40000 + p 1 task + m (Ljava/lang/Runnable;)V doRunTask d method_18859 + p 1 task + m (Ljava/lang/Runnable;)Z shouldRun e method_18856 + p 1 runnable + m (Ljava/lang/Runnable;)Ljava/lang/Runnable; wrapRunnable f method_16211 + p 1 runnable + m (Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; submit g method_20493 + p 1 task + m (Ljava/lang/Runnable;)V executeBlocking h method_19537 + p 1 task + m (Ljava/lang/Runnable;)V tell i method_18858 + p 1 task + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/util/thread/NamedThreadFactory bpi net/minecraft/class_6014 + f Lorg/slf4j/Logger; LOGGER a field_29936 + f Ljava/lang/ThreadGroup; group b field_29937 + f Ljava/util/concurrent/atomic/AtomicInteger; threadNumber c field_29938 + f Ljava/lang/String; namePrefix d field_29939 + m (Ljava/lang/Runnable;Ljava/lang/Thread;Ljava/lang/Throwable;)V method_34995 a method_34995 + m (Ljava/lang/String;)V + p 1 namePrefix + m ()V +c net/minecraft/util/thread/ProcessorHandle bpj net/minecraft/class_3906 + m (Ljava/lang/Object;)V tell a method_16901 + p 1 task + m (Ljava/lang/String;Ljava/util/function/Consumer;)Lnet/minecraft/util/thread/ProcessorHandle; of a method_17344 + p 0 name + p 1 task + m (Ljava/util/concurrent/CompletableFuture;Lcom/mojang/datafixers/util/Either;)V method_27917 a method_27917 + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; ask b method_17345 + p 1 task + m ()Ljava/lang/String; name bz method_16898 + m (Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; askEither c method_27918 + p 1 task +c net/minecraft/util/thread/ProcessorHandle$1 bpj$1 net/minecraft/class_3906$1 + f Ljava/lang/String; val$name a field_17276 + f Ljava/util/function/Consumer; val$tell b field_17277 + m (Ljava/lang/String;Ljava/util/function/Consumer;)V +c net/minecraft/util/thread/ProcessorMailbox bpk net/minecraft/class_3846 + f Lorg/slf4j/Logger; LOGGER a field_17040 + f I CLOSED_BIT b field_29940 + f I SCHEDULED_BIT c field_29941 + f Ljava/util/concurrent/atomic/AtomicInteger; status d field_17041 + f Lnet/minecraft/util/thread/StrictQueue; queue e field_17039 + f Ljava/util/concurrent/Executor; dispatcher f field_17042 + f Ljava/lang/String; name g field_17043 + m ()V runAll a method_37477 + m (I)Z method_37478 a method_37478 + m (Lit/unimi/dsi/fastutil/ints/Int2BooleanFunction;)I pollUntil a method_16900 + p 1 continuePolling + m (Ljava/util/concurrent/Executor;Ljava/lang/String;)Lnet/minecraft/util/thread/ProcessorMailbox; create a method_16902 + p 0 dispatcher + p 1 name + m ()I size b method_34996 + m (I)Z method_16899 b method_16899 + m ()Z hasWork c method_40001 + m ()Z setAsScheduled d method_16903 + m ()V setAsIdle e method_16904 + m ()Z canBeScheduled f method_16905 + m ()Z shouldProcess g method_16906 + m ()Z pollTask h method_16907 + m ()V registerForExecution i method_16908 + m (Lnet/minecraft/util/thread/StrictQueue;Ljava/util/concurrent/Executor;Ljava/lang/String;)V + p 1 queue + p 2 dispatcher + p 3 name + m ()V +c net/minecraft/util/thread/ReentrantBlockableEventLoop bpl net/minecraft/class_4093 + f I reentrantCount b field_18320 + m ()Z runningTask bC method_18860 + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/util/thread/StrictQueue bpm net/minecraft/class_3847 + m ()Ljava/lang/Object; pop a method_16909 + m (Ljava/lang/Object;)Z push a method_16910 + p 1 value + m ()Z isEmpty b method_16911 + m ()I size c method_34706 +c net/minecraft/util/thread/StrictQueue$FixedPriorityQueue bpm$a net/minecraft/class_3847$class_3848 + f [Ljava/util/Queue; queues a field_35032 + f Ljava/util/concurrent/atomic/AtomicInteger; size b field_35033 + m (Lnet/minecraft/util/thread/StrictQueue$IntRunnable;)Z push a method_16913 + p 1 value + m ()Ljava/lang/Runnable; pop d method_17346 + m (I)V + p 1 size +c net/minecraft/util/thread/StrictQueue$IntRunnable bpm$b net/minecraft/class_3847$class_3907 + f I priority a field_17278 + f Ljava/lang/Runnable; task b field_17279 + m ()I getPriority a method_17347 + m (ILjava/lang/Runnable;)V + p 1 priority + p 2 task +c net/minecraft/util/thread/StrictQueue$QueueStrictQueue bpm$c net/minecraft/class_3847$class_3849 + f Ljava/util/Queue; queue a field_17045 + m (Ljava/util/Queue;)V + p 1 queue +c net/minecraft/util/thread/package-info bpn net/minecraft/class_6015 +c net/minecraft/util/valueproviders/BiasedToBottomInt bpo net/minecraft/class_6333 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33443 + f I minInclusive b field_33444 + f I maxInclusive f field_33445 + m (II)Lnet/minecraft/util/valueproviders/BiasedToBottomInt; of a method_36249 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Lcom/mojang/serialization/DataResult; method_36250 a method_36250 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36251 a method_36251 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/String; method_49464 b method_49464 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/Integer; method_36252 c method_36252 + m (Lnet/minecraft/util/valueproviders/BiasedToBottomInt;)Ljava/lang/Integer; method_36253 d method_36253 + m (II)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ClampedInt bpp net/minecraft/class_6334 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33446 + f Lnet/minecraft/util/valueproviders/IntProvider; source b field_33447 + f I minInclusive f field_33448 + f I maxInclusive g field_33449 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Lcom/mojang/serialization/DataResult; method_36254 a method_36254 + m (Lnet/minecraft/util/valueproviders/IntProvider;II)Lnet/minecraft/util/valueproviders/ClampedInt; of a method_36255 + p 0 source + p 1 minInclusive + p 2 maxInclusive + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36256 a method_36256 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/String; method_49465 b method_49465 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/Integer; method_36257 c method_36257 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Ljava/lang/Integer; method_36258 d method_36258 + m (Lnet/minecraft/util/valueproviders/ClampedInt;)Lnet/minecraft/util/valueproviders/IntProvider; method_36259 e method_36259 + m (Lnet/minecraft/util/valueproviders/IntProvider;II)V + p 1 source + p 2 minInclusive + p 3 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ClampedNormalFloat bpq net/minecraft/class_5861 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28998 + f F mean b field_28999 + f F deviation d field_29000 + f F min e field_29001 + f F max f field_29002 + m (FFFF)Lnet/minecraft/util/valueproviders/ClampedNormalFloat; of a method_33900 + p 0 mean + p 1 deviation + p 2 min + p 3 max + m (Lnet/minecraft/util/RandomSource;FFFF)F sample a method_33903 + p 0 random + p 1 mean + p 2 deviation + p 3 min + p 4 max + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Lcom/mojang/serialization/DataResult; method_33901 a method_33901 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33902 a method_33902 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/String; method_49466 b method_49466 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33904 c method_33904 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33905 d method_33905 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33906 e method_33906 + m (Lnet/minecraft/util/valueproviders/ClampedNormalFloat;)Ljava/lang/Float; method_33907 f method_33907 + m (FFFF)V + p 1 mean + p 2 deviation + p 3 min + p 4 max + m ()V +c net/minecraft/util/valueproviders/ClampedNormalInt bpr net/minecraft/class_6728 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35352 + f F mean b field_35353 + f F deviation f field_35354 + f I minInclusive g field_35355 + f I maxInclusive h field_35356 + m (FFII)Lnet/minecraft/util/valueproviders/ClampedNormalInt; of a method_39156 + p 0 mean + p 1 deviation + p 2 minInclusive + p 3 maxInclusive + m (Lnet/minecraft/util/RandomSource;FFFF)I sample a method_39159 + p 0 random + p 1 mean + p 2 deviation + p 3 minInclusive + p 4 maxInclusive + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Lcom/mojang/serialization/DataResult; method_39157 a method_39157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39158 a method_39158 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/String; method_49467 b method_49467 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Integer; method_39160 c method_39160 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Integer; method_39161 d method_39161 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Float; method_39162 e method_39162 + m (Lnet/minecraft/util/valueproviders/ClampedNormalInt;)Ljava/lang/Float; method_39163 f method_39163 + m (FFII)V + p 1 mean + p 2 deviation + p 3 minInclusive + p 4 maxInclusive + m ()V +c net/minecraft/util/valueproviders/ConstantFloat bps net/minecraft/class_5862 + f Lnet/minecraft/util/valueproviders/ConstantFloat; ZERO a field_29003 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29004 + f F value d field_29005 + m (F)Lnet/minecraft/util/valueproviders/ConstantFloat; of a method_33908 + p 0 value + m ()F getValue d method_33914 + m (F)V + p 1 value + m ()V +c net/minecraft/util/valueproviders/ConstantInt bpt net/minecraft/class_6016 + f Lnet/minecraft/util/valueproviders/ConstantInt; ZERO a field_29942 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29943 + f I value f field_29944 + m (I)Lnet/minecraft/util/valueproviders/ConstantInt; of a method_34998 + p 0 value + m ()I getValue d method_34997 + m (I)V + p 1 value + m ()V +c net/minecraft/util/valueproviders/FloatProvider bpu net/minecraft/class_5863 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_29006 + f Lcom/mojang/serialization/Codec; CODEC c field_29007 + m ()F getMinValue a method_33915 + m (FF)Lcom/mojang/serialization/Codec; codec a method_33916 + c Creates a codec for a FloatProvider that only accepts numbers in the given range. + p 0 minInclusive + p 1 maxInclusive + m (FFLnet/minecraft/util/valueproviders/FloatProvider;)Lcom/mojang/serialization/DataResult; method_33917 a method_33917 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)Ljava/lang/String; method_49468 a method_49468 + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lcom/mojang/datafixers/util/Either; method_33918 a method_33918 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33919 a method_33919 + m ()F getMaxValue b method_33921 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)Ljava/lang/String; method_49469 b method_49469 + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33922 b method_33922 + m ()Lnet/minecraft/util/valueproviders/FloatProviderType; getType c method_33923 + m ()V + m ()V +c net/minecraft/util/valueproviders/FloatProviderType bpv net/minecraft/class_5864 + f Lnet/minecraft/util/valueproviders/FloatProviderType; CONSTANT a field_29008 + f Lnet/minecraft/util/valueproviders/FloatProviderType; UNIFORM b field_29009 + f Lnet/minecraft/util/valueproviders/FloatProviderType; CLAMPED_NORMAL c field_29010 + f Lnet/minecraft/util/valueproviders/FloatProviderType; TRAPEZOID d field_29011 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_33924 a method_33924 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/valueproviders/FloatProviderType; register a method_33925 + p 0 name + p 1 codec + m ()V +c net/minecraft/util/valueproviders/IntProvider bpw net/minecraft/class_6017 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_29945 + f Lcom/mojang/serialization/Codec; CODEC c field_29946 + f Lcom/mojang/serialization/Codec; NON_NEGATIVE_CODEC d field_33450 + f Lcom/mojang/serialization/Codec; POSITIVE_CODEC e field_33451 + m ()I getMinValue a method_35009 + m (IILnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/serialization/DataResult; validate a method_58612 + p 0 min + p 1 max + p 2 provider + m (IILcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; validateCodec a method_49103 + p 0 min + p 1 max + p 2 codec + m (ILnet/minecraft/util/valueproviders/IntProvider;)Ljava/lang/String; method_49470 a method_49470 + m (Lnet/minecraft/util/RandomSource;)I sample a method_35008 + p 1 random + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/datafixers/util/Either; method_35006 a method_35006 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/util/valueproviders/IntProvider; method_35007 a method_35007 + m ()I getMaxValue b method_35011 + m (II)Lcom/mojang/serialization/Codec; codec b method_35004 + c Creates a codec for an IntProvider that only accepts numbers in the given range. + p 0 minInclusive + p 1 maxInclusive + m (IILnet/minecraft/util/valueproviders/IntProvider;)Lcom/mojang/serialization/DataResult; method_35005 b method_35005 + m (ILnet/minecraft/util/valueproviders/IntProvider;)Ljava/lang/String; method_49471 b method_49471 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/util/valueproviders/IntProvider; method_35010 b method_35010 + m ()Lnet/minecraft/util/valueproviders/IntProviderType; getType c method_35012 + m ()V + m ()V +c net/minecraft/util/valueproviders/IntProviderType bpx net/minecraft/class_6018 + f Lnet/minecraft/util/valueproviders/IntProviderType; CONSTANT a field_29947 + f Lnet/minecraft/util/valueproviders/IntProviderType; UNIFORM b field_29948 + f Lnet/minecraft/util/valueproviders/IntProviderType; BIASED_TO_BOTTOM c field_33452 + f Lnet/minecraft/util/valueproviders/IntProviderType; CLAMPED d field_33453 + f Lnet/minecraft/util/valueproviders/IntProviderType; WEIGHTED_LIST e field_35034 + f Lnet/minecraft/util/valueproviders/IntProviderType; CLAMPED_NORMAL f field_35357 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_35013 a method_35013 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/valueproviders/IntProviderType; register a method_35014 + p 0 name + p 1 codec + m ()V +c net/minecraft/util/valueproviders/MultipliedFloats bpy net/minecraft/class_7372 + f [Lnet/minecraft/util/valueproviders/SampledFloat; values a field_38707 + m ([Lnet/minecraft/util/valueproviders/SampledFloat;)V + p 1 values +c net/minecraft/util/valueproviders/SampledFloat bpz net/minecraft/class_7373 + m (Lnet/minecraft/util/RandomSource;)F sample a method_33920 + p 1 random +c net/minecraft/util/valueproviders/TrapezoidFloat bqa net/minecraft/class_5865 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29012 + f F min b field_29013 + f F max d field_29014 + f F plateau e field_29015 + m (FFF)Lnet/minecraft/util/valueproviders/TrapezoidFloat; of a method_33926 + p 0 min + p 1 max + p 2 plateau + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Lcom/mojang/serialization/DataResult; method_33927 a method_33927 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33928 a method_33928 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/String; method_49472 b method_49472 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/String; method_49473 c method_49473 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33929 d method_33929 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33930 e method_33930 + m (Lnet/minecraft/util/valueproviders/TrapezoidFloat;)Ljava/lang/Float; method_33931 f method_33931 + m (FFF)V + p 1 min + p 2 max + p 3 plateau + m ()V +c net/minecraft/util/valueproviders/UniformFloat bqb net/minecraft/class_5866 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29016 + f F minInclusive b field_29017 + f F maxExclusive d field_29018 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Lcom/mojang/serialization/DataResult; method_33932 a method_33932 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33933 a method_33933 + m (FF)Lnet/minecraft/util/valueproviders/UniformFloat; of b method_33934 + p 0 minInclusive + p 1 maxExclusive + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/String; method_49474 b method_49474 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/Float; method_33935 c method_33935 + m (Lnet/minecraft/util/valueproviders/UniformFloat;)Ljava/lang/Float; method_33936 d method_33936 + m (FF)V + p 1 minInclusive + p 2 maxExclusive + m ()V +c net/minecraft/util/valueproviders/UniformInt bqc net/minecraft/class_6019 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29949 + f I minInclusive b field_29950 + f I maxInclusive f field_29951 + m (II)Lnet/minecraft/util/valueproviders/UniformInt; of a method_35017 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/util/valueproviders/UniformInt;)Lcom/mojang/serialization/DataResult; method_35015 a method_35015 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35016 a method_35016 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/String; method_49475 b method_49475 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/Integer; method_35018 c method_35018 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Ljava/lang/Integer; method_35019 d method_35019 + m (II)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/util/valueproviders/WeightedListInt bqd net/minecraft/class_6642 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35035 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; distribution b field_35036 + f I minValue f field_35037 + f I maxValue g field_35038 + m (Lnet/minecraft/util/valueproviders/WeightedListInt;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_38844 a method_38844 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38845 a method_38845 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 distribution + m ()V +c net/minecraft/util/valueproviders/package-info bqe net/minecraft/class_6020 +c net/minecraft/util/worldupdate/WorldUpgrader bqf net/minecraft/class_1257 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; overworldDataStorage A field_5755 + f Lorg/slf4j/Logger; LOGGER a field_5756 + f Ljava/util/concurrent/ThreadFactory; THREAD_FACTORY b field_5757 + f Ljava/lang/String; NEW_DIRECTORY_PREFIX c field_48723 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_POI d field_48724 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_POI e field_48725 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_ENTITIES f field_48726 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_ENTITIES g field_48727 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_UPGRADING_CHUNKS h field_48728 + f Lnet/minecraft/network/chat/MutableComponent; STATUS_FINISHED_CHUNKS i field_48729 + f Lnet/minecraft/core/Registry; dimensions j field_40113 + f Ljava/util/Set; levels k field_40114 + f Z eraseCache l field_19225 + f Z recreateRegionFiles m field_48730 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; levelStorage n field_24083 + f Ljava/lang/Thread; thread o field_5767 + f Lcom/mojang/datafixers/DataFixer; dataFixer p field_24084 + f Z running q field_5760 + f Z finished r field_5759 + f F progress s field_5763 + f I totalChunks t field_5768 + f I totalFiles u field_48731 + f I converted v field_5766 + f I skipped w field_5764 + f Lit/unimi/dsi/fastutil/objects/Reference2FloatMap; progressMap x field_5762 + f Lnet/minecraft/network/chat/Component; status y field_5765 + f Ljava/util/regex/Pattern; REGEX z field_17622 + m ()V cancel a method_5402 + m (Lnet/minecraft/resources/ResourceKey;)F dimensionProgress a method_5393 + p 1 level + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_5398 a method_5398 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; resolveRecreateDirectory a method_56987 + p 0 path + m ()Z isFinished b method_5403 + m ()Ljava/util/Set; levels c method_28304 + m ()F getProgress d method_5401 + m ()I getTotalChunks e method_5397 + m ()I getConverted f method_5400 + m ()I getSkipped g method_5399 + m ()Lnet/minecraft/network/chat/Component; getStatus h method_5394 + m ()V work i method_5404 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/RegistryAccess;ZZ)V + p 1 levelStorage + p 2 dataFixer + p 3 registryAccess + p 4 eraseCache + p 5 recreateRegionFiles + m ()V +c net/minecraft/util/worldupdate/WorldUpgrader$AbstractUpgrader bqf$a net/minecraft/class_1257$class_9161 + f Ljava/util/concurrent/CompletableFuture; previousWriteFuture a field_48732 + f Lnet/minecraft/util/datafix/DataFixTypes; dataFixType b field_48733 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48734 c field_48734 + f Lnet/minecraft/network/chat/MutableComponent; upgradingStatus d field_48735 + f Lnet/minecraft/network/chat/MutableComponent; finishedStatus e field_48736 + f Ljava/lang/String; type f field_49072 + f Ljava/lang/String; folderName g field_48737 + m ()V upgrade a method_56537 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/AutoCloseable;Lnet/minecraft/world/level/ChunkPos;)Z processOnePosition a method_56538 + p 1 dimesion + p 2 storage + p 3 chunkPos + m (Lnet/minecraft/util/worldupdate/WorldUpgrader$FileToUpgrade;)I method_56540 a method_56540 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;)V onFileFinished a method_56541 + p 1 regionFile + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/lang/AutoCloseable; createStorage a method_56546 + p 1 regionStorageInfo + p 2 path + m (Ljava/io/File;Ljava/lang/String;)Z method_56542 a method_56542 + m (Ljava/lang/AutoCloseable;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56543 + p 1 chunkStorage + p 2 chunkPos + p 3 dimension + m ()Ljava/util/List; getDimensionsToUpgrade b method_56544 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/ListIterator; getFilesToProcess b method_56545 + p 1 regionStorageInfo + p 2 path + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Ljava/util/List; getAllChunkPositions c method_56539 + p 0 regionStorageInfo + p 1 path + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)V + p 2 dataFixType + p 3 type + p 4 folderName + p 5 upgradingStatus + p 6 finishedStatus +c net/minecraft/util/worldupdate/WorldUpgrader$ChunkUpgrader bqf$b net/minecraft/class_1257$class_9162 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48738 d field_48738 + m (Lnet/minecraft/world/level/chunk/storage/ChunkStorage;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56547 + m ()Lnet/minecraft/world/level/storage/DimensionDataStorage; method_56548 b method_56548 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Lnet/minecraft/world/level/chunk/storage/ChunkStorage; createStorage b method_56549 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$DimensionToUpgrade bqf$c net/minecraft/class_1257$class_9163 + f Lnet/minecraft/resources/ResourceKey; dimensionKey a comp_2248 + f Ljava/lang/Object; storage b comp_2249 + f Ljava/util/ListIterator; files c comp_2250 + m ()Lnet/minecraft/resources/ResourceKey; dimensionKey a comp_2248 + m ()Ljava/lang/Object; storage b comp_2249 + m ()Ljava/util/ListIterator; files c comp_2250 + m (Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;Ljava/util/ListIterator;)V +c net/minecraft/util/worldupdate/WorldUpgrader$EntityUpgrader bqf$d net/minecraft/class_1257$class_9164 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$FileToUpgrade bqf$e net/minecraft/class_1257$class_9165 + f Lnet/minecraft/world/level/chunk/storage/RegionFile; file a comp_2251 + f Ljava/util/List; chunksToUpgrade b comp_2252 + m ()Lnet/minecraft/world/level/chunk/storage/RegionFile; file a comp_2251 + m ()Ljava/util/List; chunksToUpgrade b comp_2252 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;Ljava/util/List;)V +c net/minecraft/util/worldupdate/WorldUpgrader$PoiUpgrader bqf$f net/minecraft/class_1257$class_9166 + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;)V +c net/minecraft/util/worldupdate/WorldUpgrader$SimpleRegionStorageUpgrader bqf$g net/minecraft/class_1257$class_9167 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; field_48741 d field_48741 + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceKey;)Z tryProcessOnePosition a method_56551 + p 1 chunkStorage + p 2 chunkPos + p 3 dimension + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; upgradeTag a method_56550 + p 1 regionStorage + p 2 chunkTag + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;)Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; createStorage b method_56552 + p 1 regionStorageInfo + p 2 path + m (Lnet/minecraft/util/worldupdate/WorldUpgrader;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;Lnet/minecraft/network/chat/MutableComponent;Lnet/minecraft/network/chat/MutableComponent;)V + p 2 dataFixType + p 3 type + p 4 upgradingStatus + p 5 finishedStatus +c net/minecraft/util/worldupdate/package-info bqg net/minecraft/class_6021 +c net/minecraft/world/BossEvent bqh net/minecraft/class_1259 + f Lnet/minecraft/network/chat/Component; name a field_5777 + f F progress b field_5774 + f Lnet/minecraft/world/BossEvent$BossBarColor; color c field_5778 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; overlay d field_5779 + f Z darkenScreen e field_5776 + f Z playBossMusic f field_5775 + f Z createWorldFog g field_5773 + f Ljava/util/UUID; id h field_5772 + m (F)V setProgress a method_5408 + p 1 progress + m (Lnet/minecraft/world/BossEvent$BossBarColor;)V setColor a method_5416 + p 1 color + m (Lnet/minecraft/world/BossEvent$BossBarOverlay;)V setOverlay a method_5409 + p 1 overlay + m (Lnet/minecraft/network/chat/Component;)V setName a method_5413 + p 1 name + m (Z)Lnet/minecraft/world/BossEvent; setDarkenScreen a method_5406 + p 1 darkenSky + m (Z)Lnet/minecraft/world/BossEvent; setPlayBossMusic b method_5410 + p 1 playEndBossMusic + m (Z)Lnet/minecraft/world/BossEvent; setCreateWorldFog c method_5411 + p 1 createFog + m ()Ljava/util/UUID; getId h method_5407 + m ()Lnet/minecraft/network/chat/Component; getName i method_5414 + m ()F getProgress j method_5412 + m ()Lnet/minecraft/world/BossEvent$BossBarColor; getColor k method_5420 + m ()Lnet/minecraft/world/BossEvent$BossBarOverlay; getOverlay l method_5415 + m ()Z shouldDarkenScreen m method_5417 + m ()Z shouldPlayBossMusic n method_5418 + m ()Z shouldCreateWorldFog o method_5419 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;)V + p 1 id + p 2 name + p 3 color + p 4 overlay +c net/minecraft/world/BossEvent$BossBarColor bqh$a net/minecraft/class_1259$class_1260 + f Lnet/minecraft/world/BossEvent$BossBarColor; PINK a field_5788 + f Lnet/minecraft/world/BossEvent$BossBarColor; BLUE b field_5780 + f Lnet/minecraft/world/BossEvent$BossBarColor; RED c field_5784 + f Lnet/minecraft/world/BossEvent$BossBarColor; GREEN d field_5785 + f Lnet/minecraft/world/BossEvent$BossBarColor; YELLOW e field_5782 + f Lnet/minecraft/world/BossEvent$BossBarColor; PURPLE f field_5783 + f Lnet/minecraft/world/BossEvent$BossBarColor; WHITE g field_5786 + f Ljava/lang/String; name h field_5781 + f Lnet/minecraft/ChatFormatting; formatting i field_5787 + f [Lnet/minecraft/world/BossEvent$BossBarColor; $VALUES j field_5789 + m ()Lnet/minecraft/ChatFormatting; getFormatting a method_5423 + m (Ljava/lang/String;)Lnet/minecraft/world/BossEvent$BossBarColor; byName a method_5422 + p 0 name + m ()Ljava/lang/String; getName b method_5421 + m ()[Lnet/minecraft/world/BossEvent$BossBarColor; $values c method_36595 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 name + p 4 formatting + m ()V +c net/minecraft/world/BossEvent$BossBarOverlay bqh$b net/minecraft/class_1259$class_1261 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; PROGRESS a field_5795 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_6 b field_5796 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_10 c field_5791 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_12 d field_5793 + f Lnet/minecraft/world/BossEvent$BossBarOverlay; NOTCHED_20 e field_5790 + f Ljava/lang/String; name f field_5794 + f [Lnet/minecraft/world/BossEvent$BossBarOverlay; $VALUES g field_5792 + m ()Ljava/lang/String; getName a method_5425 + m (Ljava/lang/String;)Lnet/minecraft/world/BossEvent$BossBarOverlay; byName a method_5424 + p 0 name + m ()[Lnet/minecraft/world/BossEvent$BossBarOverlay; $values b method_36596 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/Clearable bqi net/minecraft/class_3829 + m ()V clearContent a method_5448 + m (Ljava/lang/Object;)V tryClear a_ method_16825 + p 0 object +c net/minecraft/world/CompoundContainer bqj net/minecraft/class_1258 + f Lnet/minecraft/world/Container; container1 b field_5769 + f Lnet/minecraft/world/Container; container2 c field_5771 + m (Lnet/minecraft/world/Container;)Z contains a method_5405 + c Return whether the given inventory is part of this large chest. + p 1 inventory + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;)V + p 1 container1 + p 2 container2 +c net/minecraft/world/Container bqk net/minecraft/class_1263 + f F DEFAULT_DISTANCE_BUFFER p_ field_48319 + m (I)Lnet/minecraft/world/item/ItemStack; getItem a method_5438 + c Returns the stack in the given slot. + p 1 slot + m (II)Lnet/minecraft/world/item/ItemStack; removeItem a method_5434 + c Removes up to a specified number of items from an inventory slot and returns them in a new stack. + p 1 slot + p 2 amount + m (ILnet/minecraft/world/item/ItemStack;)V setItem a method_5447 + c Sets the given item stack to the specified slot in the inventory (can be crafting or armor sections). + p 1 slot + p 2 stack + m (Lnet/minecraft/world/Container;ILnet/minecraft/world/item/ItemStack;)Z canTakeItem a method_49104 + c {@return {@code true} if the given stack can be extracted into the target inventory} + p 1 target + c the container into which the item should be extracted + p 2 slot + c the slot from which to extract the item + p 3 stack + c the item to extract + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid a method_5443 + c Don't rename this method to canInteractWith due to conflicts with Container + p 1 player + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/player/Player;)Z stillValidBlockEntity a method_49105 + p 0 blockEntity + p 1 player + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/player/Player;F)Z stillValidBlockEntity a method_49106 + p 0 blockEntity + p 1 player + p 2 distance + m (Ljava/util/Set;)Z hasAnyOf a method_18862 + c Returns {@code true} if any item from the passed set exists in this inventory. + p 1 set + m (Ljava/util/Set;Lnet/minecraft/world/item/ItemStack;)Z method_43255 a method_43255 + m (Lnet/minecraft/world/item/Item;)I countItem a_ method_18861 + c Returns the total amount of the specified item in this inventory. This method does not check for nbt. + p 1 item + m (Ljava/util/function/Predicate;)Z hasAnyMatching a_ method_43256 + p 1 predicate + m ()I getMaxStackSize al_ method_5444 + c Returns the maximum stack size for an inventory slot. Seems to always be 64, possibly will be extended. + m ()I getContainerSize b method_5439 + c Returns the number of slots in the inventory. + m (I)Lnet/minecraft/world/item/ItemStack; removeItemNoUpdate b method_5441 + c Removes a stack from the given slot and returns it. + p 1 slot + m (ILnet/minecraft/world/item/ItemStack;)Z canPlaceItem b method_5437 + c Returns {@code true} if automation is allowed to insert the given stack (ignoring stack size) into the given slot. For guis use Slot.isItemValid + p 1 slot + p 2 stack + m ()Z isEmpty c method_5442 + m (Lnet/minecraft/world/entity/player/Player;)V stopOpen c method_5432 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)V startOpen d_ method_5435 + p 1 player + m ()V setChanged e method_5431 + c For block entities, ensures the chunk containing the block entity is saved to disk later - the game won't think it hasn't changed and skip it. + m (Lnet/minecraft/world/item/ItemStack;)I getMaxStackSize e_ method_58350 + p 1 stack +c net/minecraft/world/ContainerHelper bql net/minecraft/class_1262 + f Ljava/lang/String; TAG_ITEMS a field_49719 + m (Lnet/minecraft/world/Container;Ljava/util/function/Predicate;IZ)I clearOrCountMatchingItems a method_29234 + c Clears items from the inventory matching a predicate.\n@return The amount of items cleared + p 0 container + p 1 itemPredicate + p 2 maxItems + c The maximum amount of items to be cleared. A negative value means unlimited and 0 means count how many items are found that could be cleared. + p 3 simulate + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;IZ)I clearOrCountMatchingItems a method_29235 + p 0 stack + p 1 itemPredicate + p 2 maxItems + p 3 simulate + m (Ljava/util/List;I)Lnet/minecraft/world/item/ItemStack; takeItem a method_5428 + p 0 stacks + p 1 index + m (Ljava/util/List;II)Lnet/minecraft/world/item/ItemStack; removeItem a method_5430 + p 0 stacks + p 1 index + p 2 amount + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveAllItems a method_5426 + p 0 tag + p 1 items + p 2 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;ZLnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveAllItems a method_5427 + p 0 tag + p 1 items + p 2 alwaysPutTag + p 3 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/NonNullList;Lnet/minecraft/core/HolderLookup$Provider;)V loadAllItems b method_5429 + p 0 tag + p 1 items + p 2 levelRegistry + m ()V +c net/minecraft/world/ContainerListener bqm net/minecraft/class_1265 + m (Lnet/minecraft/world/Container;)V containerChanged a method_5453 + c Called by {@code InventoryBasic.onInventoryChanged()} on an array that is never filled. + p 1 container +c net/minecraft/world/Containers bqn net/minecraft/class_1264 + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/Container;)V dropContents a method_5450 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 inventory + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V dropItemStack a method_5449 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/Container;)V dropContents a method_5452 + p 0 level + p 1 entityAt + p 2 inventory + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/Container;)V dropContents a method_5451 + p 0 level + p 1 pos + p 2 inventory + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_17348 a method_17348 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/NonNullList;)V dropContents a method_17349 + p 0 level + p 1 pos + p 2 stackList + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropContentsOnDestroy a method_54291 + p 0 state + p 1 newState + p 2 level + p 3 pos + m ()V +c net/minecraft/world/Difficulty bqo net/minecraft/class_1267 + f Lnet/minecraft/world/Difficulty; PEACEFUL a field_5801 + f Lnet/minecraft/world/Difficulty; EASY b field_5805 + f Lnet/minecraft/world/Difficulty; NORMAL c field_5802 + f Lnet/minecraft/world/Difficulty; HARD d field_5807 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_41668 + f Ljava/util/function/IntFunction; BY_ID f field_5800 + f I id g field_5803 + f Ljava/lang/String; key h field_5806 + f [Lnet/minecraft/world/Difficulty; $VALUES i field_5804 + m ()I getId a method_5461 + m (I)Lnet/minecraft/world/Difficulty; byId a method_5462 + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/world/Difficulty; byName a method_16691 + p 0 name + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_5463 + m ()Lnet/minecraft/network/chat/Component; getInfo d method_48556 + m ()Ljava/lang/String; getKey e method_5460 + m ()[Lnet/minecraft/world/Difficulty; $values f method_36597 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/world/DifficultyInstance bqp net/minecraft/class_1266 + f F DIFFICULTY_TIME_GLOBAL_OFFSET a field_29953 + f F MAX_DIFFICULTY_TIME_GLOBAL b field_29954 + f F MAX_DIFFICULTY_TIME_LOCAL c field_29955 + f Lnet/minecraft/world/Difficulty; base d field_5798 + f F effectiveDifficulty e field_5799 + m ()Lnet/minecraft/world/Difficulty; getDifficulty a method_5454 + m (F)Z isHarderThan a method_5455 + p 1 difficulty + m (Lnet/minecraft/world/Difficulty;JJF)F calculateDifficulty a method_5456 + p 1 difficulty + p 2 levelTime + p 4 chunkInhabitedTime + p 6 moonPhaseFactor + m ()F getEffectiveDifficulty b method_5457 + m ()Z isHard c method_35020 + m ()F getSpecialMultiplier d method_5458 + m (Lnet/minecraft/world/Difficulty;JJF)V + p 1 base + p 2 levelTime + p 4 chunkInhabitedTime + p 6 moonPhaseFactor +c net/minecraft/world/InteractionHand bqq net/minecraft/class_1268 + f Lnet/minecraft/world/InteractionHand; MAIN_HAND a field_5808 + f Lnet/minecraft/world/InteractionHand; OFF_HAND b field_5810 + f [Lnet/minecraft/world/InteractionHand; $VALUES c field_5809 + m ()[Lnet/minecraft/world/InteractionHand; $values a method_36598 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/InteractionResult bqr net/minecraft/class_1269 + f Lnet/minecraft/world/InteractionResult; SUCCESS a field_5812 + f Lnet/minecraft/world/InteractionResult; SUCCESS_NO_ITEM_USED b field_51370 + f Lnet/minecraft/world/InteractionResult; CONSUME c field_21466 + f Lnet/minecraft/world/InteractionResult; CONSUME_PARTIAL d field_33562 + f Lnet/minecraft/world/InteractionResult; PASS e field_5811 + f Lnet/minecraft/world/InteractionResult; FAIL f field_5814 + f [Lnet/minecraft/world/InteractionResult; $VALUES g field_5813 + m ()Z consumesAction a method_23665 + m (Z)Lnet/minecraft/world/InteractionResult; sidedSuccess a method_29236 + p 0 isClientSide + m ()Z shouldSwing b method_23666 + m ()Z indicateItemUse c method_36360 + m ()[Lnet/minecraft/world/InteractionResult; $values d method_36599 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/InteractionResultHolder bqs net/minecraft/class_1271 + f Lnet/minecraft/world/InteractionResult; result a field_5815 + f Ljava/lang/Object; object b field_5816 + m ()Lnet/minecraft/world/InteractionResult; getResult a method_5467 + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; success a method_22427 + p 0 type + m (Ljava/lang/Object;Z)Lnet/minecraft/world/InteractionResultHolder; sidedSuccess a method_29237 + p 0 object + p 1 isClientSide + m ()Ljava/lang/Object; getObject b method_5466 + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; consume b method_22428 + p 0 type + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; pass c method_22430 + p 0 type + m (Ljava/lang/Object;)Lnet/minecraft/world/InteractionResultHolder; fail d method_22431 + p 0 type + m (Lnet/minecraft/world/InteractionResult;Ljava/lang/Object;)V + p 1 result + p 2 object +c net/minecraft/world/ItemInteractionResult bqt net/minecraft/class_9062 + f Lnet/minecraft/world/ItemInteractionResult; SUCCESS a field_47728 + f Lnet/minecraft/world/ItemInteractionResult; CONSUME b field_47729 + f Lnet/minecraft/world/ItemInteractionResult; CONSUME_PARTIAL c field_47730 + f Lnet/minecraft/world/ItemInteractionResult; PASS_TO_DEFAULT_BLOCK_INTERACTION d field_47731 + f Lnet/minecraft/world/ItemInteractionResult; SKIP_DEFAULT_BLOCK_INTERACTION e field_47732 + f Lnet/minecraft/world/ItemInteractionResult; FAIL f field_47733 + f [Lnet/minecraft/world/ItemInteractionResult; $VALUES g field_47734 + m ()Z consumesAction a method_55643 + m (Z)Lnet/minecraft/world/ItemInteractionResult; sidedSuccess a method_55644 + p 0 clientSide + m ()Lnet/minecraft/world/InteractionResult; result b method_55645 + m ()[Lnet/minecraft/world/ItemInteractionResult; $values c method_55646 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/LockCode bqu net/minecraft/class_1273 + f Lnet/minecraft/world/LockCode; NO_LOCK a field_5817 + f Lcom/mojang/serialization/Codec; CODEC b field_49206 + f Ljava/lang/String; TAG_LOCK c field_29956 + f Ljava/lang/String; key d comp_2371 + m ()Ljava/lang/String; key a comp_2371 + m (Lnet/minecraft/world/item/ItemStack;)Z unlocksWith a method_5472 + p 1 stack + m (Lnet/minecraft/nbt/CompoundTag;)V addToTag a method_5474 + p 1 nbt + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/LockCode; fromTag b method_5473 + p 0 nbt + m (Ljava/lang/String;)V + p 1 key + m ()V +c net/minecraft/world/MenuProvider bqv net/minecraft/class_3908 + c

Interface {@link net.fabricmc.fabric.api.screenhandler.v1.FabricScreenHandlerFactory} injected by mod fabric-screen-handler-api-v1

+ m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 +c net/minecraft/world/Nameable bqw net/minecraft/class_1275 + m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 + m ()Lnet/minecraft/network/chat/Component; getName ah method_5477 + m ()Z hasCustomName ai method_16914 + m ()Lnet/minecraft/network/chat/Component; getCustomName aj method_5797 +c net/minecraft/world/RandomSequence bqx net/minecraft/class_8564 + f Lcom/mojang/serialization/Codec; CODEC a field_44859 + f Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; source b field_44860 + m ()Lnet/minecraft/util/RandomSource; random a method_51839 + m (JLjava/util/Optional;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; createSequence a method_52189 + p 0 seed + p 2 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; seedForKey a method_52171 + p 0 key + m (Lnet/minecraft/world/RandomSequence;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; method_51840 a method_51840 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51841 a method_51841 + m (Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource;)V + p 1 source + m (JLnet/minecraft/resources/ResourceLocation;)V + p 1 seed + p 3 location + m (JLjava/util/Optional;)V + p 1 seed + p 3 location + m ()V +c net/minecraft/world/RandomSequences bqy net/minecraft/class_8565 + f Lorg/slf4j/Logger; LOGGER a field_44861 + f J worldSeed b field_44862 + f I salt c field_45100 + f Z includeWorldSeed d field_45101 + f Z includeSequenceId e field_45102 + f Ljava/util/Map; sequences f field_44863 + m ()I clear a method_52509 + m (IZZ)V setSeedDefaults a method_52510 + p 1 salt + p 2 includeWorldSeed + p 3 includeSequenceId + m (J)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52511 + p 0 seed + m (JLnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/RandomSequences; load a method_51842 + p 0 seed + p 2 tag + m (JLnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/RandomSequences; method_52516 a method_52516 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; get a method_51843 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;IZZ)V reset a method_52512 + p 1 sequence + p 2 seed + p 3 includeWorldSeed + p 4 includeSequenceId + m (Ljava/util/function/BiConsumer;)V forAllSequences a method_52513 + p 1 action + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/RandomSequence;)V method_51844 a method_51844 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Z)Z getBooleanWithDefault a method_52514 + p 0 tag + p 1 key + p 2 defaultValue + m (J)Lnet/minecraft/world/RandomSequences; method_52515 b method_52515 + m (Lnet/minecraft/resources/ResourceLocation;)V reset b method_52517 + p 1 sequence + m (Lnet/minecraft/resources/ResourceLocation;IZZ)Lnet/minecraft/world/RandomSequence; createSequence b method_52518 + p 1 location + p 2 salt + p 3 includeWorldSeed + p 4 includeSequenceId + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/RandomSequence; createSequence c method_52519 + p 1 location + m (J)V + p 1 seed + m ()V +c net/minecraft/world/RandomSequences$DirtyMarkingRandomSource bqy$a net/minecraft/class_8565$class_8629 + f Lnet/minecraft/world/RandomSequences; field_44865 b field_44865 + f Lnet/minecraft/util/RandomSource; random c field_44864 + m (Lnet/minecraft/world/RandomSequences;Lnet/minecraft/util/RandomSource;)V + p 2 random +c net/minecraft/world/RandomizableContainer bqz net/minecraft/class_8934 + f Ljava/lang/String; LOOT_TABLE_TAG b field_47154 + f Ljava/lang/String; LOOT_TABLE_SEED_TAG c field_47155 + m (J)V setLootTableSeed a method_54866 + p 1 seed + m (Lnet/minecraft/resources/ResourceKey;)V setLootTable a method_11285 + p 1 lootTable + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_54867 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V setBlockEntityLootTable a method_54868 + p 0 level + p 1 random + p 2 ps + p 3 lootTable + m ()Lnet/minecraft/resources/ResourceKey; getLootTable aB_ method_54869 + m ()J getLootTableSeed aC_ method_54870 + m ()Lnet/minecraft/core/BlockPos; getBlockPos aD_ method_11016 + m (Lnet/minecraft/nbt/CompoundTag;)Z tryLoadLootTable b_ method_54871 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;)Z trySaveLootTable c_ method_54872 + p 1 tag + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable e_ method_54873 + p 1 player + m ()Lnet/minecraft/world/level/Level; getLevel i method_10997 +c net/minecraft/world/SimpleContainer bra net/minecraft/class_1277 + f I size b field_5831 + f Lnet/minecraft/core/NonNullList; items c field_5828 + f Ljava/util/List; listeners d field_5829 + m (Lnet/minecraft/world/ContainerListener;)V addListener a method_5489 + c Add a listener that will be notified when any item in this inventory is modified. + p 1 listener + m (Lnet/minecraft/world/item/Item;I)Lnet/minecraft/world/item/ItemStack; removeItemType a method_20631 + p 1 item + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V moveItemsBetweenStacks a method_20632 + p 1 stack + p 2 other + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; createTag a method_7660 + p 1 levelRegistry + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V fromTag a method_7659 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/ContainerListener;)V removeListener b method_5488 + c Removes the specified {@link net.minecraft.world.ContainerListener} from receiving further change notices. + p 1 listener + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; addItem b method_5491 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canAddItem c method_27070 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V moveItemToEmptySlots d method_20633 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V moveItemToOccupiedSlotsWithSameType e method_20634 + p 1 stack + m ()Ljava/util/List; removeAllItems f method_24514 + m (Lnet/minecraft/world/item/ItemStack;)Z method_20635 f method_20635 + m ()Lnet/minecraft/core/NonNullList; getItems g method_54454 + m (Lnet/minecraft/world/item/ItemStack;)Z method_24513 g method_24513 + m (I)V + p 1 size + m ([Lnet/minecraft/world/item/ItemStack;)V + p 1 items +c net/minecraft/world/SimpleMenuProvider brb net/minecraft/class_747 + f Lnet/minecraft/network/chat/Component; title a field_3947 + f Lnet/minecraft/world/inventory/MenuConstructor; menuConstructor b field_17280 + m (Lnet/minecraft/world/inventory/MenuConstructor;Lnet/minecraft/network/chat/Component;)V + p 1 menuConstructor + p 2 title +c net/minecraft/world/TickRateManager brc net/minecraft/class_8921 + f F MIN_TICKRATE a field_46960 + f F tickrate b field_46961 + f J nanosecondsPerTick c field_46962 + f I frozenTicksToRun d field_46963 + f Z runGameElements e field_46964 + f Z isFrozen f field_46965 + m (F)V setTickRate a method_54671 + p 1 tickRate + m (Lnet/minecraft/world/entity/Entity;)Z isEntityFrozen a method_54746 + p 1 entity + m (Z)V setFrozen a method_54675 + p 1 frozen + m (I)V setFrozenTicksToRun c method_54747 + p 1 frozenTicksToRun + m ()F tickrate f method_54748 + m ()F millisecondsPerTick g method_54749 + m ()J nanosecondsPerTick h method_54750 + m ()Z runsNormally i method_54751 + m ()Z isSteppingForward j method_54752 + m ()I frozenTicksToRun k method_54753 + m ()Z isFrozen l method_54754 + m ()V tick m method_54755 + m ()V +c net/minecraft/world/WorldlyContainer brd net/minecraft/class_1278 + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Z canPlaceItemThroughFace a method_5492 + c Returns {@code true} if automation can insert the given item in the given slot from the given side. + p 1 index + p 2 itemStack + p 3 direction + m (Lnet/minecraft/core/Direction;)[I getSlotsForFace a method_5494 + p 1 side + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Z canTakeItemThroughFace b method_5493 + c Returns {@code true} if automation can extract the given item in the given slot from the given side. + p 1 index + p 2 stack + p 3 direction +c net/minecraft/world/WorldlyContainerHolder bre net/minecraft/class_3954 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/WorldlyContainer; getContainer a method_17680 + p 1 state + p 2 level + p 3 pos +c net/minecraft/world/damagesource/CombatEntry brf net/minecraft/class_1281 + f Lnet/minecraft/world/damagesource/DamageSource; source a comp_1535 + f F damage b comp_1536 + f Lnet/minecraft/world/damagesource/FallLocation; fallLocation c comp_1537 + f F fallDistance d comp_1538 + m ()Lnet/minecraft/world/damagesource/DamageSource; source a comp_1535 + m ()F damage b comp_1536 + m ()Lnet/minecraft/world/damagesource/FallLocation; fallLocation c comp_1537 + m ()F fallDistance d comp_1538 + m (Lnet/minecraft/world/damagesource/DamageSource;FLnet/minecraft/world/damagesource/FallLocation;F)V +c net/minecraft/world/damagesource/CombatRules brg net/minecraft/class_1280 + f F MAX_ARMOR a field_29962 + f F ARMOR_PROTECTION_DIVIDER b field_29963 + f F BASE_ARMOR_TOUGHNESS c field_29964 + f F MIN_ARMOR_RATIO d field_29965 + f I NUM_ARMOR_ITEMS e field_29966 + m (FF)F getDamageAfterMagicAbsorb a method_5497 + p 0 damage + p 1 enchantModifiers + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/damagesource/DamageSource;FF)F getDamageAfterAbsorb a method_5496 + p 0 entity + p 1 damage + p 2 damageSource + p 3 armorValue + p 4 armorToughness + m ()V +c net/minecraft/world/damagesource/CombatTracker brh net/minecraft/class_1283 + f I RESET_DAMAGE_STATUS_TIME a field_29967 + f I RESET_COMBAT_STATUS_TIME b field_29968 + f Lnet/minecraft/network/chat/Style; INTENTIONAL_GAME_DESIGN_STYLE c field_42274 + f Ljava/util/List; entries d field_5870 + f Lnet/minecraft/world/entity/LivingEntity; mob e field_5877 + f I lastDamageTime f field_5876 + f I combatStartTime g field_5875 + f I combatEndTime h field_5873 + f Z inCombat i field_5874 + f Z takingDamage j field_5872 + m ()Lnet/minecraft/network/chat/Component; getDeathMessage a method_5548 + m (Lnet/minecraft/world/damagesource/CombatEntry;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; getFallMessage a method_52190 + p 1 combatEntry + p 2 entity + m (Lnet/minecraft/world/damagesource/DamageSource;)Z shouldEnterCombat a method_52191 + p 0 source + m (Lnet/minecraft/world/damagesource/DamageSource;F)V recordDamage a method_5547 + p 1 source + p 2 damage + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; getDisplayName a method_52192 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getMessageForAssistedFall a method_52193 + p 1 entity + p 2 entityDisplayName + p 3 hasWeaponTranslationKey + p 4 noWeaponTranslationKey + m ()I getCombatDuration b method_5546 + m ()V recheckStatus c method_5539 + c Resets this trackers list of combat entries + m ()Lnet/minecraft/world/damagesource/CombatEntry; getMostSignificantFall d method_5544 + m (Lnet/minecraft/world/entity/LivingEntity;)V + p 1 mob + m ()V +c net/minecraft/world/damagesource/DamageEffects bri net/minecraft/class_8107 + f Lnet/minecraft/world/damagesource/DamageEffects; HURT a field_42275 + f Lnet/minecraft/world/damagesource/DamageEffects; THORNS b field_42276 + f Lnet/minecraft/world/damagesource/DamageEffects; DROWNING c field_42277 + f Lnet/minecraft/world/damagesource/DamageEffects; BURNING d field_42278 + f Lnet/minecraft/world/damagesource/DamageEffects; POKING e field_42279 + f Lnet/minecraft/world/damagesource/DamageEffects; FREEZING f field_42280 + f Lcom/mojang/serialization/Codec; CODEC g field_42281 + f Ljava/lang/String; id h field_42282 + f Lnet/minecraft/sounds/SoundEvent; sound i field_42283 + f [Lnet/minecraft/world/damagesource/DamageEffects; $VALUES j field_42284 + m ()Lnet/minecraft/sounds/SoundEvent; sound a method_48786 + m ()[Lnet/minecraft/world/damagesource/DamageEffects; $values b method_48787 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/sounds/SoundEvent;)V + p 3 id + p 4 sound + m ()V +c net/minecraft/world/damagesource/DamageScaling brj net/minecraft/class_8108 + f Lnet/minecraft/world/damagesource/DamageScaling; NEVER a field_42285 + f Lnet/minecraft/world/damagesource/DamageScaling; WHEN_CAUSED_BY_LIVING_NON_PLAYER b field_42286 + f Lnet/minecraft/world/damagesource/DamageScaling; ALWAYS c field_42287 + f Lcom/mojang/serialization/Codec; CODEC d field_42288 + f Ljava/lang/String; id e field_42289 + f [Lnet/minecraft/world/damagesource/DamageScaling; $VALUES f field_42290 + m ()[Lnet/minecraft/world/damagesource/DamageScaling; $values a method_48788 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/damagesource/DamageSource brk net/minecraft/class_1282 + f Lnet/minecraft/core/Holder; type a field_42291 + f Lnet/minecraft/world/entity/Entity; causingEntity b field_42292 + f Lnet/minecraft/world/entity/Entity; directEntity c field_42293 + f Lnet/minecraft/world/phys/Vec3; damageSourcePosition d field_42294 + m ()F getFoodExhaustion a method_5528 + c How much satiate (food) is consumed by this {@code DamageSource}. + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_49708 + p 1 damageTypeKey + m (Lnet/minecraft/tags/TagKey;)Z is a method_48789 + p 1 damageTypeKey + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/network/chat/Component; getLocalizedDeathMessage a method_5506 + c Gets the death message that is displayed when the player dies + p 1 livingEntity + m ()Z isDirect b method_60489 + m ()Lnet/minecraft/world/entity/Entity; getDirectEntity c method_5526 + c Retrieves the immediate causer of the damage, e.g. the arrow entity, not its shooter + m ()Lnet/minecraft/world/entity/Entity; getEntity d method_5529 + c Retrieves the true causer of the damage, e.g. the player who fired an arrow, the shulker who fired the bullet, etc. + m ()Lnet/minecraft/world/item/ItemStack; getWeaponItem e method_60948 + m ()Ljava/lang/String; getMsgId f method_5525 + c Return the name of damage type. + m ()Z scalesWithDifficulty g method_5514 + c Return whether this damage source will have its damage amount scaled based on the current difficulty. + m ()Z isCreativePlayer h method_5530 + m ()Lnet/minecraft/world/phys/Vec3; getSourcePosition i method_5510 + c Gets the location from which the damage originates. + m ()Lnet/minecraft/world/phys/Vec3; sourcePositionRaw j method_48791 + m ()Lnet/minecraft/world/damagesource/DamageType; type k method_48792 + m ()Lnet/minecraft/core/Holder; typeHolder l method_48793 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 type + p 2 directEntity + p 3 causingEntity + p 4 damageSourcePosition + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 type + p 2 directEntity + p 3 causingEntity + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V + p 1 type + p 2 damageSourcePosition + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)V + p 1 type + p 2 entity + m (Lnet/minecraft/core/Holder;)V + p 1 type +c net/minecraft/world/damagesource/DamageSource$1 brk$1 net/minecraft/class_1282$1 + f [I $SwitchMap$net$minecraft$world$damagesource$DamageScaling a field_42295 + m ()V +c net/minecraft/world/damagesource/DamageSources brl net/minecraft/class_8109 + f Lnet/minecraft/core/Registry; damageTypes a field_42296 + f Lnet/minecraft/world/damagesource/DamageSource; inFire b field_42297 + f Lnet/minecraft/world/damagesource/DamageSource; campfire c field_51564 + f Lnet/minecraft/world/damagesource/DamageSource; lightningBolt d field_42298 + f Lnet/minecraft/world/damagesource/DamageSource; onFire e field_42299 + f Lnet/minecraft/world/damagesource/DamageSource; lava f field_42300 + f Lnet/minecraft/world/damagesource/DamageSource; hotFloor g field_42301 + f Lnet/minecraft/world/damagesource/DamageSource; inWall h field_42302 + f Lnet/minecraft/world/damagesource/DamageSource; cramming i field_42303 + f Lnet/minecraft/world/damagesource/DamageSource; drown j field_42304 + f Lnet/minecraft/world/damagesource/DamageSource; starve k field_42305 + f Lnet/minecraft/world/damagesource/DamageSource; cactus l field_42306 + f Lnet/minecraft/world/damagesource/DamageSource; fall m field_42307 + f Lnet/minecraft/world/damagesource/DamageSource; flyIntoWall n field_42308 + f Lnet/minecraft/world/damagesource/DamageSource; fellOutOfWorld o field_42309 + f Lnet/minecraft/world/damagesource/DamageSource; generic p field_42310 + f Lnet/minecraft/world/damagesource/DamageSource; magic q field_42311 + f Lnet/minecraft/world/damagesource/DamageSource; wither r field_42312 + f Lnet/minecraft/world/damagesource/DamageSource; dragonBreath s field_42313 + f Lnet/minecraft/world/damagesource/DamageSource; dryOut t field_42314 + f Lnet/minecraft/world/damagesource/DamageSource; sweetBerryBush u field_42315 + f Lnet/minecraft/world/damagesource/DamageSource; freeze v field_42316 + f Lnet/minecraft/world/damagesource/DamageSource; stalagmite w field_42317 + f Lnet/minecraft/world/damagesource/DamageSource; outsideBorder x field_44866 + f Lnet/minecraft/world/damagesource/DamageSource; genericKill y field_44867 + m ()Lnet/minecraft/world/damagesource/DamageSource; inFire a method_48794 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48795 + p 1 damageTypeKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48796 + p 1 damageTypeKey + p 2 entity + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; source a method_48797 + p 1 damageTypeKey + p 2 causingEntity + p 3 directEntity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fallingBlock a method_48798 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; trident a method_48799 + p 1 trident + p 2 thrower + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; mobProjectile a method_48800 + p 1 projectile + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; sting a method_48801 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/damagesource/DamageSource; playerAttack a method_48802 + p 1 player + m (Lnet/minecraft/world/entity/projectile/AbstractArrow;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; arrow a method_48803 + p 1 arrow + p 2 shooter + m (Lnet/minecraft/world/entity/projectile/Fireball;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fireball a method_48804 + p 1 fireball + p 2 thrower + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fireworks a method_48805 + p 1 firework + p 2 shooter + m (Lnet/minecraft/world/entity/projectile/WitherSkull;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; witherSkull a method_48806 + p 1 witherSkull + p 2 shooter + m (Lnet/minecraft/world/level/Explosion;)Lnet/minecraft/world/damagesource/DamageSource; explosion a method_48807 + p 1 explosion + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/damagesource/DamageSource; badRespawnPointExplosion a method_48808 + p 1 position + m ()Lnet/minecraft/world/damagesource/DamageSource; campfire b method_59917 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; anvil b method_48810 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; thrown b method_48811 + p 1 causingEntity + p 2 directEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; spit b method_55647 + p 1 spit + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; mobAttack b method_48812 + p 1 mob + m ()Lnet/minecraft/world/damagesource/DamageSource; lightningBolt c method_48809 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; fallingStalactite c method_48814 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; indirectMagic c method_48815 + p 1 causingEntity + p 2 directEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; windCharge c method_55648 + p 1 windCharge + p 2 thrower + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/DamageSource; noAggroMobAttack c method_48816 + p 1 mob + m ()Lnet/minecraft/world/damagesource/DamageSource; onFire d method_48813 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; thorns d method_48818 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; explosion d method_48819 + p 1 causingEntity + p 2 directEntity + m ()Lnet/minecraft/world/damagesource/DamageSource; lava e method_48817 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; sonicBoom e method_48821 + p 1 entity + m ()Lnet/minecraft/world/damagesource/DamageSource; hotFloor f method_48820 + m ()Lnet/minecraft/world/damagesource/DamageSource; inWall g method_48822 + m ()Lnet/minecraft/world/damagesource/DamageSource; cramming h method_48823 + m ()Lnet/minecraft/world/damagesource/DamageSource; drown i method_48824 + m ()Lnet/minecraft/world/damagesource/DamageSource; starve j method_48825 + m ()Lnet/minecraft/world/damagesource/DamageSource; cactus k method_48826 + m ()Lnet/minecraft/world/damagesource/DamageSource; fall l method_48827 + m ()Lnet/minecraft/world/damagesource/DamageSource; flyIntoWall m method_48828 + m ()Lnet/minecraft/world/damagesource/DamageSource; fellOutOfWorld n method_48829 + m ()Lnet/minecraft/world/damagesource/DamageSource; generic o method_48830 + m ()Lnet/minecraft/world/damagesource/DamageSource; magic p method_48831 + m ()Lnet/minecraft/world/damagesource/DamageSource; wither q method_48832 + m ()Lnet/minecraft/world/damagesource/DamageSource; dragonBreath r method_48833 + m ()Lnet/minecraft/world/damagesource/DamageSource; dryOut s method_48834 + m ()Lnet/minecraft/world/damagesource/DamageSource; sweetBerryBush t method_48835 + m ()Lnet/minecraft/world/damagesource/DamageSource; freeze u method_48836 + m ()Lnet/minecraft/world/damagesource/DamageSource; stalagmite v method_48837 + m ()Lnet/minecraft/world/damagesource/DamageSource; outOfBorder w method_51846 + m ()Lnet/minecraft/world/damagesource/DamageSource; genericKill x method_51847 + m (Lnet/minecraft/core/RegistryAccess;)V + p 1 registry +c net/minecraft/world/damagesource/DamageType brm net/minecraft/class_8110 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42318 + f Lcom/mojang/serialization/Codec; CODEC b field_51565 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_51932 + f Ljava/lang/String; msgId d comp_1242 + f Lnet/minecraft/world/damagesource/DamageScaling; scaling e comp_1243 + f F exhaustion f comp_1244 + f Lnet/minecraft/world/damagesource/DamageEffects; effects g comp_1245 + f Lnet/minecraft/world/damagesource/DeathMessageType; deathMessageType h comp_1246 + m ()Ljava/lang/String; msgId a comp_1242 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48838 a method_48838 + m ()Lnet/minecraft/world/damagesource/DamageScaling; scaling b comp_1243 + m ()F exhaustion c comp_1244 + m ()Lnet/minecraft/world/damagesource/DamageEffects; effects d comp_1245 + m ()Lnet/minecraft/world/damagesource/DeathMessageType; deathMessageType e comp_1246 + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;F)V + p 1 msgId + p 2 scaling + p 3 exhaustion + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;FLnet/minecraft/world/damagesource/DamageEffects;)V + p 1 msgId + p 2 scaling + p 3 exhaustion + p 4 effects + m (Ljava/lang/String;FLnet/minecraft/world/damagesource/DamageEffects;)V + p 1 msgId + p 2 exhaustion + p 3 effects + m (Ljava/lang/String;F)V + p 1 msgId + p 2 exhaustion + m (Ljava/lang/String;Lnet/minecraft/world/damagesource/DamageScaling;FLnet/minecraft/world/damagesource/DamageEffects;Lnet/minecraft/world/damagesource/DeathMessageType;)V + m ()V +c net/minecraft/world/damagesource/DamageTypes brn net/minecraft/class_8111 + f Lnet/minecraft/resources/ResourceKey; MOB_ATTACK A field_42360 + f Lnet/minecraft/resources/ResourceKey; MOB_ATTACK_NO_AGGRO B field_42319 + f Lnet/minecraft/resources/ResourceKey; PLAYER_ATTACK C field_42320 + f Lnet/minecraft/resources/ResourceKey; ARROW D field_42321 + f Lnet/minecraft/resources/ResourceKey; TRIDENT E field_42322 + f Lnet/minecraft/resources/ResourceKey; MOB_PROJECTILE F field_42323 + f Lnet/minecraft/resources/ResourceKey; SPIT G field_47736 + f Lnet/minecraft/resources/ResourceKey; WIND_CHARGE H field_47737 + f Lnet/minecraft/resources/ResourceKey; FIREWORKS I field_42324 + f Lnet/minecraft/resources/ResourceKey; FIREBALL J field_42325 + f Lnet/minecraft/resources/ResourceKey; UNATTRIBUTED_FIREBALL K field_42326 + f Lnet/minecraft/resources/ResourceKey; WITHER_SKULL L field_42327 + f Lnet/minecraft/resources/ResourceKey; THROWN M field_42328 + f Lnet/minecraft/resources/ResourceKey; INDIRECT_MAGIC N field_42329 + f Lnet/minecraft/resources/ResourceKey; THORNS O field_42330 + f Lnet/minecraft/resources/ResourceKey; EXPLOSION P field_42331 + f Lnet/minecraft/resources/ResourceKey; PLAYER_EXPLOSION Q field_42332 + f Lnet/minecraft/resources/ResourceKey; SONIC_BOOM R field_42333 + f Lnet/minecraft/resources/ResourceKey; BAD_RESPAWN_POINT S field_42334 + f Lnet/minecraft/resources/ResourceKey; OUTSIDE_BORDER T field_44868 + f Lnet/minecraft/resources/ResourceKey; GENERIC_KILL U field_44869 + f Lnet/minecraft/resources/ResourceKey; IN_FIRE a field_42335 + f Lnet/minecraft/resources/ResourceKey; CAMPFIRE b field_51566 + f Lnet/minecraft/resources/ResourceKey; LIGHTNING_BOLT c field_42336 + f Lnet/minecraft/resources/ResourceKey; ON_FIRE d field_42337 + f Lnet/minecraft/resources/ResourceKey; LAVA e field_42338 + f Lnet/minecraft/resources/ResourceKey; HOT_FLOOR f field_42339 + f Lnet/minecraft/resources/ResourceKey; IN_WALL g field_42340 + f Lnet/minecraft/resources/ResourceKey; CRAMMING h field_42341 + f Lnet/minecraft/resources/ResourceKey; DROWN i field_42342 + f Lnet/minecraft/resources/ResourceKey; STARVE j field_42343 + f Lnet/minecraft/resources/ResourceKey; CACTUS k field_42344 + f Lnet/minecraft/resources/ResourceKey; FALL l field_42345 + f Lnet/minecraft/resources/ResourceKey; FLY_INTO_WALL m field_42346 + f Lnet/minecraft/resources/ResourceKey; FELL_OUT_OF_WORLD n field_42347 + f Lnet/minecraft/resources/ResourceKey; GENERIC o field_42348 + f Lnet/minecraft/resources/ResourceKey; MAGIC p field_42349 + f Lnet/minecraft/resources/ResourceKey; WITHER q field_42350 + f Lnet/minecraft/resources/ResourceKey; DRAGON_BREATH r field_42351 + f Lnet/minecraft/resources/ResourceKey; DRY_OUT s field_42352 + f Lnet/minecraft/resources/ResourceKey; SWEET_BERRY_BUSH t field_42353 + f Lnet/minecraft/resources/ResourceKey; FREEZE u field_42354 + f Lnet/minecraft/resources/ResourceKey; STALAGMITE v field_42355 + f Lnet/minecraft/resources/ResourceKey; FALLING_BLOCK w field_42356 + f Lnet/minecraft/resources/ResourceKey; FALLING_ANVIL x field_42357 + f Lnet/minecraft/resources/ResourceKey; FALLING_STALACTITE y field_42358 + f Lnet/minecraft/resources/ResourceKey; STING z field_42359 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48839 + p 0 context + m ()V +c net/minecraft/world/damagesource/DeathMessageType bro net/minecraft/class_8112 + f Lnet/minecraft/world/damagesource/DeathMessageType; DEFAULT a field_42361 + f Lnet/minecraft/world/damagesource/DeathMessageType; FALL_VARIANTS b field_42362 + f Lnet/minecraft/world/damagesource/DeathMessageType; INTENTIONAL_GAME_DESIGN c field_42363 + f Lcom/mojang/serialization/Codec; CODEC d field_42364 + f Ljava/lang/String; id e field_42365 + f [Lnet/minecraft/world/damagesource/DeathMessageType; $VALUES f field_42366 + m ()[Lnet/minecraft/world/damagesource/DeathMessageType; $values a method_48840 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/damagesource/FallLocation brp net/minecraft/class_8572 + f Lnet/minecraft/world/damagesource/FallLocation; GENERIC a field_44923 + f Lnet/minecraft/world/damagesource/FallLocation; LADDER b field_44924 + f Lnet/minecraft/world/damagesource/FallLocation; VINES c field_44925 + f Lnet/minecraft/world/damagesource/FallLocation; WEEPING_VINES d field_44926 + f Lnet/minecraft/world/damagesource/FallLocation; TWISTING_VINES e field_44927 + f Lnet/minecraft/world/damagesource/FallLocation; SCAFFOLDING f field_44928 + f Lnet/minecraft/world/damagesource/FallLocation; OTHER_CLIMBABLE g field_44929 + f Lnet/minecraft/world/damagesource/FallLocation; WATER h field_44930 + f Ljava/lang/String; id i comp_1539 + m ()Ljava/lang/String; languageKey a method_52194 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/damagesource/FallLocation; getCurrentFallLocation a method_52195 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/damagesource/FallLocation; blockToFallLocation a method_52196 + p 0 state + m ()Ljava/lang/String; id b comp_1539 + m (Ljava/lang/String;)V + m ()V +c net/minecraft/world/damagesource/package-info brq net/minecraft/class_6022 +c net/minecraft/world/effect/AbsorptionMobEffect brr net/minecraft/class_1288 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/BadOmenMobEffect brs net/minecraft/class_8631 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/HealOrHarmMobEffect brt net/minecraft/class_8632 + f Z isHarm c field_45103 + m (Lnet/minecraft/world/effect/MobEffectCategory;IZ)V + p 1 category + p 2 color + p 3 isHarm +c net/minecraft/world/effect/HungerMobEffect bru net/minecraft/class_8633 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/InfestedMobEffect brv net/minecraft/class_9455 + f F chanceToSpawn c field_50112 + f Ljava/util/function/ToIntFunction; spawnedCount d field_50113 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;DDD)V spawnSilverfish a method_58615 + p 1 level + p 2 entity + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/effect/MobEffectCategory;IFLjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 chanceToSpawn + p 4 spawnedCount +c net/minecraft/world/effect/InstantenousMobEffect brw net/minecraft/class_1289 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V + p 1 category + p 2 color +c net/minecraft/world/effect/MobEffect brx net/minecraft/class_1291 + f Lcom/mojang/serialization/Codec; CODEC a field_51933 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51934 + f I AMBIENT_ALPHA c field_49789 + f Ljava/util/Map; attributeModifiers d field_5885 + c Contains a Map of the AttributeModifiers registered by potions + f Lnet/minecraft/world/effect/MobEffectCategory; category e field_18270 + f I color f field_5886 + f Ljava/util/function/Function; particleFactory g field_49790 + f Ljava/lang/String; descriptionId h field_5883 + f I blendDurationTicks i field_47738 + f Ljava/util/Optional; soundOnAdded j field_50114 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures k field_50115 + m ()Z isInstantenous a method_5561 + c Returns {@code true} if the potion has an instant effect instead of a continuous one (e.g. Harming) + m (I)Lnet/minecraft/world/effect/MobEffect; setBlendDuration a method_55649 + p 1 blendDuration + m (II)Z shouldApplyEffectTickThisTick a method_5552 + p 1 duration + p 2 amplifier + m (ILnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; method_58145 a method_58145 + m (ILjava/util/function/BiConsumer;)V createModifiers a method_55650 + p 1 amplifier + p 2 output + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/effect/MobEffect; withSoundOnAdded a method_58616 + p 1 sound + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; createParticleOptions a method_58146 + p 1 effect + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;ID)V applyInstantenousEffect a method_5564 + p 1 source + p 2 indirectSource + p 3 livingEntity + p 4 amplifier + p 5 health + m (Lnet/minecraft/world/entity/LivingEntity;I)Z applyEffectTick a method_5572 + p 1 livingEntity + p 2 amplifier + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/damagesource/DamageSource;F)V onMobHurt a method_58614 + p 1 livingEntity + p 2 amplifier + p 3 damageSource + p 4 amount + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/Entity$RemovalReason;)V onMobRemoved a method_58617 + p 1 livingEntity + p 2 amplifier + p 3 reason + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/sounds/SoundEvent;)V method_58618 a method_58618 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V removeAttributeModifiers a method_5562 + p 1 attributeMap + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;I)V addAttributeModifiers a method_5555 + p 1 attributeMap + p 2 amplifier + m (Ljava/util/function/BiConsumer;ILnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffect$AttributeTemplate;)V method_55651 a method_55651 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Lnet/minecraft/world/effect/MobEffect; addAttributeModifier a method_5566 + p 1 attribute + p 2 id + p 3 amount + p 5 operation + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/core/particles/ParticleOptions; method_58147 a method_58147 + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/effect/MobEffect; requiredFeatures a method_58619 + p 1 requiredFeatures + m ()I getBlendDurationTicks b method_55652 + m (Lnet/minecraft/world/entity/LivingEntity;I)V onEffectStarted b method_52520 + p 1 livingEntity + p 2 amplifier + m ()Ljava/lang/String; getOrCreateDescriptionId c method_5559 + m (Lnet/minecraft/world/entity/LivingEntity;I)V onEffectAdded c method_58620 + p 1 livingEntity + p 2 amplifier + m ()Ljava/lang/String; getDescriptionId d method_5567 + c Returns the name of the effect. + m ()Lnet/minecraft/network/chat/Component; getDisplayName e method_5560 + m ()Lnet/minecraft/world/effect/MobEffectCategory; getCategory f method_18792 + m ()I getColor g method_5556 + c Returns the color of the potion liquid. + m ()Z isBeneficial h method_5573 + c Get if the potion is beneficial to the player. Beneficial potions are shown on the first row of the HUD + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V + p 1 category + p 2 color + m (Lnet/minecraft/world/effect/MobEffectCategory;ILnet/minecraft/core/particles/ParticleOptions;)V + p 1 category + p 2 color + p 3 particle + m ()V +c net/minecraft/world/effect/MobEffect$AttributeTemplate brx$a net/minecraft/class_1291$class_8634 + f Lnet/minecraft/resources/ResourceLocation; id a comp_2182 + f D amount b comp_2183 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_2184 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_2182 + m (I)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; create a method_52522 + p 1 level + m ()D amount b comp_2183 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_2184 + m (Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V +c net/minecraft/world/effect/MobEffectCategory bry net/minecraft/class_4081 + f Lnet/minecraft/world/effect/MobEffectCategory; BENEFICIAL a field_18271 + f Lnet/minecraft/world/effect/MobEffectCategory; HARMFUL b field_18272 + f Lnet/minecraft/world/effect/MobEffectCategory; NEUTRAL c field_18273 + f Lnet/minecraft/ChatFormatting; tooltipFormatting d field_18274 + f [Lnet/minecraft/world/effect/MobEffectCategory; $VALUES e field_18275 + m ()Lnet/minecraft/ChatFormatting; getTooltipFormatting a method_18793 + m ()[Lnet/minecraft/world/effect/MobEffectCategory; $values b method_36600 + m (Ljava/lang/String;ILnet/minecraft/ChatFormatting;)V + p 3 tooltipFormatting + m ()V +c net/minecraft/world/effect/MobEffectInstance brz net/minecraft/class_1293 + f I INFINITE_DURATION a field_42106 + f I MIN_AMPLIFIER b field_49014 + f I MAX_AMPLIFIER c field_49015 + f Lcom/mojang/serialization/Codec; CODEC d field_48821 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_49207 + f Lorg/slf4j/Logger; LOGGER f field_5897 + f Lnet/minecraft/core/Holder; effect g field_5896 + f I duration h field_5895 + f I amplifier i field_5893 + f Z ambient j field_5892 + f Z visible k field_5890 + f Z showIcon l field_5889 + f Lnet/minecraft/world/effect/MobEffectInstance; hiddenEffect m field_21830 + c A hidden effect which is not shown to the player. + f Lnet/minecraft/world/effect/MobEffectInstance$BlendState; blendState n field_47739 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticleOptions a method_58148 + m (I)Z endsWithin a method_48557 + p 1 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;)V setDetailsFrom a method_24276 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;)V onEffectStarted a method_52523 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getBlendFactor a method_55653 + p 1 entity + p 2 delta + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;F)V onMobHurt a method_58621 + p 1 livingEntity + p 2 damageSource + p 3 amount + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity$RemovalReason;)V onMobRemoved a method_58622 + p 1 livingEntity + p 2 reason + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/lang/Runnable;)Z tick a method_5585 + p 1 entity + p 2 onExpirationRunnable + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56666 a method_56666 + m (Lit/unimi/dsi/fastutil/ints/Int2IntFunction;)I mapDuration a method_48558 + p 1 mapper + m (Lnet/minecraft/core/Holder;)Z is a method_55654 + p 1 effect + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance$Details;)Lnet/minecraft/world/effect/MobEffectInstance; method_56667 a method_56667 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/effect/MobEffectInstance; load a method_5583 + c Read a custom potion effect from a potion item's NBT data. + p 0 nbt + m ()Z isInfiniteDuration b method_48559 + m (I)I method_48560 b method_48560 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z update b method_5590 + p 1 other + m (Lnet/minecraft/world/entity/LivingEntity;)V onEffectAdded b method_58623 + p 1 livingEntity + m ()Lnet/minecraft/core/Holder; getEffect c method_5579 + m (Lnet/minecraft/world/effect/MobEffectInstance;)I compareTo c method_5587 + p 1 other + m ()I getDuration d method_5584 + m (Lnet/minecraft/world/effect/MobEffectInstance;)V copyBlendState d method_55656 + p 1 effectInstance + m ()I getAmplifier e method_5578 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z isShorterDurationThan e method_48561 + p 1 other + m ()Z isAmbient f method_5591 + c Gets whether this potion effect originated from a beacon + m ()Z isVisible g method_5581 + c Gets whether this potion effect will show ambient particles or not. + m ()Z showIcon h method_5592 + m ()Ljava/lang/String; getDescriptionId i method_5586 + m ()Lnet/minecraft/nbt/Tag; save j method_5582 + m ()V skipBlending k method_55657 + m ()Lnet/minecraft/world/effect/MobEffectInstance$Details; asDetails l method_56668 + m ()Z hasRemainingDuration m method_48562 + m ()I tickDownDuration n method_5588 + m ()Ljava/lang/String; describeDuration o method_48563 + m (Lnet/minecraft/core/Holder;)V + p 1 effect + m (Lnet/minecraft/core/Holder;I)V + p 1 effect + p 2 duration + m (Lnet/minecraft/core/Holder;II)V + p 1 effect + p 2 duration + p 3 amplifier + m (Lnet/minecraft/core/Holder;IIZZ)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + m (Lnet/minecraft/core/Holder;IIZZZ)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + p 6 showIcon + m (Lnet/minecraft/core/Holder;IIZZZLnet/minecraft/world/effect/MobEffectInstance;)V + p 1 effect + p 2 duration + p 3 amplifier + p 4 ambient + p 5 visible + p 6 showIcon + p 7 hiddenEffect + m (Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 other + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance$Details;)V + p 1 effect + p 2 details + m ()V +c net/minecraft/world/effect/MobEffectInstance$BlendState brz$a net/minecraft/class_1293$class_9063 + f F factor a field_47740 + f F factorPreviousFrame b field_47741 + m (Lnet/minecraft/world/effect/MobEffectInstance$BlendState;)V copyFrom a method_55658 + p 1 blendState + m (Lnet/minecraft/world/effect/MobEffectInstance;)V setImmediate a method_55659 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;F)F getFactor a method_55660 + p 1 entity + p 2 delta + m (Lnet/minecraft/world/effect/MobEffectInstance;)V tick b method_55661 + p 1 effect + m (Lnet/minecraft/world/effect/MobEffectInstance;)F computeTarget c method_55662 + p 0 effect + m (Lnet/minecraft/world/effect/MobEffectInstance;)I getBlendDuration d method_55663 + p 0 effect + m ()V +c net/minecraft/world/effect/MobEffectInstance$Details brz$b net/minecraft/class_1293$class_9195 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_48822 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49208 + f I amplifier c comp_2292 + f I duration d comp_2293 + f Z ambient e comp_2294 + f Z showParticles f comp_2295 + f Z showIcon g comp_2296 + f Ljava/util/Optional; hiddenEffect h comp_2297 + m ()I amplifier a comp_2292 + m (IIZZLjava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/effect/MobEffectInstance$Details; create a method_56669 + p 0 amplifier + p 1 duration + p 2 ambient + p 3 showParticles + p 4 showIcon + p 5 hiddenEffect + m (Lnet/minecraft/world/effect/MobEffectInstance$Details;)Ljava/util/Optional; method_56670 a method_56670 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/MapCodec; method_56671 a method_56671 + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56672 a method_56672 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; method_57279 a method_57279 + m ()I duration b comp_2293 + m ()Z ambient c comp_2294 + m ()Z showParticles d comp_2295 + m ()Z showIcon e comp_2296 + m ()Ljava/util/Optional; hiddenEffect f comp_2297 + m (IIZZZLjava/util/Optional;)V + m ()V +c net/minecraft/world/effect/MobEffectUtil bsa net/minecraft/class_1292 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;DLnet/minecraft/world/effect/MobEffectInstance;I)Ljava/util/List; addEffectToPlayersAround a method_42143 + p 0 level + p 1 source + p 2 pos + p 3 radius + p 5 effect + p 6 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;FF)Lnet/minecraft/network/chat/Component; formatDuration a method_5577 + p 0 effect + p 1 durationFactor + p 2 ticksPerSecond + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerPlayer;)V method_42144 a method_42144 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;DLnet/minecraft/core/Holder;Lnet/minecraft/world/effect/MobEffectInstance;ILnet/minecraft/server/level/ServerPlayer;)Z method_42145 a method_42145 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasDigSpeed a method_5576 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)I getDigSpeedAmplification b method_5575 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasWaterBreathing c method_5574 + p 0 entity + m ()V +c net/minecraft/world/effect/MobEffects bsb net/minecraft/class_1294 + f Lnet/minecraft/core/Holder; UNLUCK A field_5908 + f Lnet/minecraft/core/Holder; SLOW_FALLING B field_5906 + f Lnet/minecraft/core/Holder; CONDUIT_POWER C field_5927 + f Lnet/minecraft/core/Holder; DOLPHINS_GRACE D field_5900 + f Lnet/minecraft/core/Holder; BAD_OMEN E field_16595 + f Lnet/minecraft/core/Holder; HERO_OF_THE_VILLAGE F field_18980 + f Lnet/minecraft/core/Holder; DARKNESS G field_38092 + f Lnet/minecraft/core/Holder; TRIAL_OMEN H field_50116 + f Lnet/minecraft/core/Holder; RAID_OMEN I field_50117 + f Lnet/minecraft/core/Holder; WIND_CHARGED J field_50118 + f Lnet/minecraft/core/Holder; WEAVING K field_50119 + f Lnet/minecraft/core/Holder; OOZING L field_50120 + f Lnet/minecraft/core/Holder; INFESTED M field_50121 + f I DARKNESS_EFFECT_FACTOR_PADDING_DURATION_TICKS N field_38093 + f Lnet/minecraft/core/Holder; MOVEMENT_SPEED a field_5904 + f Lnet/minecraft/core/Holder; MOVEMENT_SLOWDOWN b field_5909 + f Lnet/minecraft/core/Holder; DIG_SPEED c field_5917 + f Lnet/minecraft/core/Holder; DIG_SLOWDOWN d field_5901 + f Lnet/minecraft/core/Holder; DAMAGE_BOOST e field_5910 + f Lnet/minecraft/core/Holder; HEAL f field_5915 + f Lnet/minecraft/core/Holder; HARM g field_5921 + f Lnet/minecraft/core/Holder; JUMP h field_5913 + f Lnet/minecraft/core/Holder; CONFUSION i field_5916 + f Lnet/minecraft/core/Holder; REGENERATION j field_5924 + f Lnet/minecraft/core/Holder; DAMAGE_RESISTANCE k field_5907 + f Lnet/minecraft/core/Holder; FIRE_RESISTANCE l field_5918 + f Lnet/minecraft/core/Holder; WATER_BREATHING m field_5923 + f Lnet/minecraft/core/Holder; INVISIBILITY n field_5905 + f Lnet/minecraft/core/Holder; BLINDNESS o field_5919 + f Lnet/minecraft/core/Holder; NIGHT_VISION p field_5925 + f Lnet/minecraft/core/Holder; HUNGER q field_5903 + f Lnet/minecraft/core/Holder; WEAKNESS r field_5911 + f Lnet/minecraft/core/Holder; POISON s field_5899 + f Lnet/minecraft/core/Holder; WITHER t field_5920 + f Lnet/minecraft/core/Holder; HEALTH_BOOST u field_5914 + f Lnet/minecraft/core/Holder; ABSORPTION v field_5898 + f Lnet/minecraft/core/Holder; SATURATION w field_5922 + f Lnet/minecraft/core/Holder; GLOWING x field_5912 + f Lnet/minecraft/core/Holder; LEVITATION y field_5902 + f Lnet/minecraft/core/Holder; LUCK z field_5926 + m (Lnet/minecraft/util/RandomSource;)I method_58624 a method_58624 + m (Ljava/lang/String;Lnet/minecraft/world/effect/MobEffect;)Lnet/minecraft/core/Holder; register a method_5594 + p 0 name + p 1 effect + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55664 + p 0 registry + m (Lnet/minecraft/util/RandomSource;)I method_58625 b method_58625 + m (Lnet/minecraft/util/RandomSource;)I method_58626 c method_58626 + m ()V + m ()V +c net/minecraft/world/effect/OozingMobEffect bsc net/minecraft/class_9456 + f I SLIME_SIZE c field_51372 + f I RADIUS_TO_CHECK_SLIMES d field_51373 + f Ljava/util/function/ToIntFunction; spawnedCount e field_50122 + m (ILnet/minecraft/world/effect/OozingMobEffect$NearbySlimes;I)I numberOfSlimesToSpawn a method_59652 + p 0 maxEntityCramming + p 1 nearbySlimes + p 2 spawnCount + m (Lnet/minecraft/world/level/Level;DDD)V spawnSlimeOffspring a method_58627 + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/effect/MobEffectCategory;ILjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 spawnedCount +c net/minecraft/world/effect/OozingMobEffect$NearbySlimes bsc$a net/minecraft/class_9456$class_9775 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/effect/OozingMobEffect$NearbySlimes; closeTo a method_60604 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;I)I method_60605 a method_60605 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/Slime;)Z method_60606 a method_60606 +c net/minecraft/world/effect/PoisonMobEffect bsd net/minecraft/class_8635 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/RaidOmenMobEffect bse net/minecraft/class_9457 + m (Lnet/minecraft/world/effect/MobEffectCategory;ILnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/world/effect/RegenerationMobEffect bsf net/minecraft/class_8636 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/SaturationMobEffect bsg net/minecraft/class_8637 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/WeavingMobEffect bsh net/minecraft/class_9458 + f Ljava/util/function/ToIntFunction; maxCobwebs c field_50123 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V spawnCobwebsRandomlyAround a method_58628 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/effect/MobEffectCategory;ILjava/util/function/ToIntFunction;)V + p 1 category + p 2 color + p 3 maxCobwebs +c net/minecraft/world/effect/WindChargedMobEffect bsi net/minecraft/class_9459 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/WitherMobEffect bsj net/minecraft/class_8638 + m (Lnet/minecraft/world/effect/MobEffectCategory;I)V +c net/minecraft/world/effect/package-info bsk net/minecraft/class_6023 +c net/minecraft/world/entity/AgeableMob bsl net/minecraft/class_1296 + f I BABY_START_AGE b field_29969 + f I age c field_5950 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID cc field_5949 + f I FORCED_AGE_PARTICLE_TICKS cd field_29970 + f I forcedAge d field_5948 + f I forcedAgeTimer e field_5947 + m (IZ)V ageUp a method_5620 + p 1 amount + p 2 forced + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/AgeableMob; getBreedOffspring a method_5613 + p 1 level + p 2 otherParent + m ()Z canBreed ab_ method_19184 + m (I)V ageUp b_ method_5615 + p 1 amount + m (I)V setAge c_ method_5614 + p 1 age + m (I)I getSpeedUpSecondsWhenFeeding d_ method_41321 + p 0 ticksUntilAdult + m ()I getAge g method_5618 + m ()V ageBoundaryReached k method_5619 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/AgeableMob$AgeableMobGroupData bsl$a net/minecraft/class_1296$class_4697 + f I groupSize a field_20684 + f Z shouldSpawnBaby b field_20685 + f F babySpawnChance c field_20686 + m ()I getGroupSize a method_22432 + m ()V increaseGroupSizeByOne b method_22435 + m ()Z isShouldSpawnBaby c method_22436 + m ()F getBabySpawnChance d method_22437 + m (ZF)V + p 1 shouldSpawnBaby + p 2 babySpawnChance + m (Z)V + p 1 shouldSpawnBaby + m (F)V + p 1 babySpawnChance +c net/minecraft/world/entity/AnimationState bsm net/minecraft/class_7094 + f J STOPPED a field_37417 + f J lastTime b field_37418 + f J accumulatedTime c field_39112 + m ()V stop a method_41325 + m (FF)V updateTime a method_43686 + p 1 ageInTicks + p 2 speed + m (I)V start a method_41322 + p 1 tickCount + m (IF)V fastForward a method_56988 + p 1 duration + p 2 speed + m (Ljava/util/function/Consumer;)V ifStarted a method_41323 + p 1 action + m (ZI)V animateWhen a method_45317 + p 1 condition + p 2 tickCount + m ()J getAccumulatedTime b method_43687 + m (I)V startIfStopped b method_41324 + p 1 tickCount + m ()Z isStarted c method_41327 + m ()V +c net/minecraft/world/entity/AreaEffectCloud bsn net/minecraft/class_1295 + f F DEFAULT_WIDTH b field_40732 + f F HEIGHT c field_40733 + f Lorg/slf4j/Logger; LOGGER d field_5935 + f I TIME_BETWEEN_APPLICATIONS e field_29972 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RADIUS f field_5938 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WAITING g field_5944 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PARTICLE h field_5931 + f F MAX_RADIUS i field_29971 + f F MINIMAL_RADIUS j field_40730 + f F DEFAULT_RADIUS k field_40731 + f Lnet/minecraft/world/item/alchemy/PotionContents; potionContents l field_49209 + f Ljava/util/Map; victims m field_5942 + f I duration n field_5939 + f I waitTime o field_5941 + f I reapplicationDelay p field_5937 + f I durationOnUse q field_5932 + f F radiusOnUse r field_5929 + f F radiusPerTick s field_5930 + f Lnet/minecraft/world/entity/LivingEntity; owner t field_5943 + f Ljava/util/UUID; ownerUUID u field_5940 + m (F)V setRadius a method_5603 + p 1 radius + m (I)V setDuration a method_5604 + p 1 duration + m (Lnet/minecraft/world/effect/MobEffectInstance;)V addEffect a method_5610 + p 1 effectInstance + m (Lnet/minecraft/world/entity/LivingEntity;)V setOwner a method_5607 + p 1 owner + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V setPotionContents a method_57280 + p 1 potionContents + m (Ljava/util/Map$Entry;)Z method_32874 a method_32874 + m (Lnet/minecraft/core/particles/ParticleOptions;)V setParticle a method_5608 + p 1 particleOption + m (Z)V setWaiting a method_5598 + c Sets if the cloud is waiting. While waiting, the radius is ignored and the cloud shows fewer particles in its area. + p 1 waiting + m (F)V setRadiusOnUse b method_5609 + p 1 radiusOnUse + m (I)V setDurationOnUse b method_35043 + p 1 durationOnUse + m (F)V setRadiusPerTick c method_5596 + p 1 radiusPerTick + m (I)V setWaitTime c method_5595 + p 1 waitTime + m (I)I method_48564 d method_48564 + m (Ljava/lang/String;)V method_57281 d method_57281 + m (Ljava/lang/String;)V method_59654 e method_59654 + m ()F getRadius g method_5599 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle h method_5600 + m ()Z isWaiting i method_5611 + c Returns {@code true} if the cloud is waiting. While waiting, the radius is ignored and the cloud shows fewer particles in its area. + m ()I getDuration j method_5605 + m ()F getRadiusOnUse k method_35044 + m ()F getRadiusPerTick m method_35045 + m ()I getDurationOnUse o method_35046 + m ()I getWaitTime p method_35047 + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner q method_5601 + m ()V updateColor t method_5597 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/Attackable bso net/minecraft/class_8149 + m ()Lnet/minecraft/world/entity/LivingEntity; getLastAttacker Y_ method_49107 +c net/minecraft/world/entity/Crackiness bsp net/minecraft/class_9273 + f Lnet/minecraft/world/entity/Crackiness; GOLEM a field_49210 + f Lnet/minecraft/world/entity/Crackiness; WOLF_ARMOR b field_49211 + f F fractionLow c field_49212 + f F fractionMedium d field_49213 + f F fractionHigh e field_49214 + m (F)Lnet/minecraft/world/entity/Crackiness$Level; byFraction a method_57282 + p 1 fraction + m (II)Lnet/minecraft/world/entity/Crackiness$Level; byDamage a method_57283 + p 1 damage + p 2 durability + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/Crackiness$Level; byDamage a method_57284 + p 1 stack + m (FFF)V + p 1 fractionLow + p 2 fractionMedium + p 3 fractionHigh + m ()V +c net/minecraft/world/entity/Crackiness$Level bsp$a net/minecraft/class_9273$class_4621 + f Lnet/minecraft/world/entity/Crackiness$Level; NONE a field_21081 + f Lnet/minecraft/world/entity/Crackiness$Level; LOW b field_21082 + f Lnet/minecraft/world/entity/Crackiness$Level; MEDIUM c field_21083 + f Lnet/minecraft/world/entity/Crackiness$Level; HIGH d field_21084 + f [Lnet/minecraft/world/entity/Crackiness$Level; $VALUES e field_21085 + m ()[Lnet/minecraft/world/entity/Crackiness$Level; $values a method_36638 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/Display bsq net/minecraft/class_8113 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_ROTATION_ID aD field_42367 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BILLBOARD_RENDER_CONSTRAINTS_ID aE field_42368 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BRIGHTNESS_OVERRIDE_ID aF field_42369 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VIEW_RANGE_ID aG field_42370 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHADOW_RADIUS_ID aH field_42371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHADOW_STRENGTH_ID aI field_42372 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WIDTH_ID aJ field_42373 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEIGHT_ID aK field_42374 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_GLOW_COLOR_OVERRIDE_ID aL field_42375 + f Lit/unimi/dsi/fastutil/ints/IntSet; RENDER_STATE_IDS aM field_43180 + f F INITIAL_SHADOW_RADIUS aN field_42376 + f F INITIAL_SHADOW_STRENGTH aO field_42377 + f I NO_GLOW_COLOR_OVERRIDE aP field_42378 + f J interpolationStartClientTick aQ field_42620 + f I interpolationDuration aR field_43181 + f F lastProgress aS field_43135 + f Lnet/minecraft/world/phys/AABB; cullingBoundingBox aT field_42383 + f Z updateStartTick aU field_43182 + f Z updateInterpolationDuration aV field_43183 + f Lnet/minecraft/world/entity/Display$RenderState; renderState aW field_43184 + f Lnet/minecraft/world/entity/Display$PosRotInterpolationTarget; posRotInterpolationTarget aX field_45108 + f I NO_BRIGHTNESS_OVERRIDE b field_42384 + f Ljava/lang/String; TAG_POS_ROT_INTERPOLATION_DURATION c field_45109 + f Ljava/lang/String; TAG_TRANSFORMATION_INTERPOLATION_DURATION d field_45110 + f Ljava/lang/String; TAG_TRANSFORMATION_START_INTERPOLATION e field_45111 + f Ljava/lang/String; TAG_TRANSFORMATION f field_42387 + f Ljava/lang/String; TAG_BILLBOARD g field_42388 + f Ljava/lang/String; TAG_BRIGHTNESS h field_42389 + f Ljava/lang/String; TAG_VIEW_RANGE i field_42390 + f Ljava/lang/String; TAG_SHADOW_RADIUS j field_42391 + f Ljava/lang/String; TAG_SHADOW_STRENGTH k field_42392 + f Ljava/lang/String; TAG_WIDTH l field_42393 + f Ljava/lang/String; TAG_HEIGHT m field_42394 + f Ljava/lang/String; TAG_GLOW_COLOR_OVERRIDE n field_42395 + f Z updateRenderState o field_43185 + f Lorg/slf4j/Logger; LOGGER p field_42397 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSFORMATION_INTERPOLATION_START_DELTA_TICKS_ID q field_45112 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSFORMATION_INTERPOLATION_DURATION_ID r field_45113 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_POS_ROT_INTERPOLATION_DURATION_ID s field_45114 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRANSLATION_ID t field_42401 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SCALE_ID u field_42402 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_ROTATION_ID v field_42403 + m ()F getShadowRadius A method_48870 + m ()F getShadowStrength B method_48871 + m ()F getWidth C method_48874 + m ()I getGlowColorOverride D method_48876 + m ()F getHeight E method_48877 + m ()V updateCulling F method_48878 + m ()Lnet/minecraft/world/entity/Display$RenderState; createFreshRenderState H method_49774 + m (F)F calculateInterpolationProgress a method_48844 + p 1 partialTick + m (Lnet/minecraft/network/syncher/SynchedEntityData;)Lcom/mojang/math/Transformation; createTransformation a method_48845 + p 0 synchedEntityData + m (Lnet/minecraft/util/Brightness;)V setBrightnessOverride a method_48846 + p 1 brightnessOverride + m (Lnet/minecraft/world/entity/Display$BillboardConstraints;)V setBillboardConstraints a method_48847 + p 1 billboardConstraints + m (Lnet/minecraft/world/entity/Display$RenderState;F)Lnet/minecraft/world/entity/Display$RenderState; createInterpolatedRenderState a method_49775 + p 1 renderState + p 2 partialTick + m (Lcom/mojang/datafixers/util/Pair;)V method_48848 a method_48848 + m (Lcom/mojang/math/Transformation;)V setTransformation a method_48849 + p 1 transformation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48851 a method_48851 + m (ZF)V updateRenderSubState a method_49776 + p 1 interpolate + p 2 partialTick + m (F)V setViewRange b method_48861 + p 1 viewRange + m (I)V setTransformationInterpolationDuration b method_52524 + p 1 transformationInterpolationDuration + m (Lcom/mojang/datafixers/util/Pair;)V method_48855 b method_48855 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48856 b method_48856 + m (F)V setShadowRadius c method_48862 + p 1 shadowRadius + m (I)V setTransformationInterpolationDelay c method_52525 + p 1 transformationInterpolationDelay + m (Lcom/mojang/datafixers/util/Pair;)V method_48859 c method_48859 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48860 c method_48860 + m (I)V setPosRotInterpolationDuration d method_52526 + p 1 posRotInterpolationDuration + m (I)V setGlowColorOverride m method_48858 + p 1 glowColorOverride + m ()Lnet/minecraft/world/entity/Display$RenderState; renderState p method_49777 + m ()I getTransformationInterpolationDuration s method_52527 + m ()I getTransformationInterpolationDelay t method_52528 + m ()I getPosRotInterpolationDuration v method_52529 + m (F)V setShadowStrength v method_48872 + p 1 shadowStrength + m ()Lnet/minecraft/world/entity/Display$BillboardConstraints; getBillboardConstraints w method_48864 + m (F)V setWidth w method_48873 + p 1 width + m ()Lnet/minecraft/util/Brightness; getBrightnessOverride x method_48868 + m (F)V setHeight x method_48875 + p 1 height + m ()I getPackedBrightnessOverride y method_48865 + m ()F getViewRange z method_48869 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$BillboardConstraints bsq$a net/minecraft/class_8113$class_8114 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; FIXED a field_42406 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; VERTICAL b field_42407 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; HORIZONTAL c field_42408 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; CENTER d field_42409 + f Lcom/mojang/serialization/Codec; CODEC e field_42410 + f Ljava/util/function/IntFunction; BY_ID f field_42411 + f B id g field_42412 + f Ljava/lang/String; name h field_42413 + f [Lnet/minecraft/world/entity/Display$BillboardConstraints; $VALUES i field_42414 + m ()B getId a method_48881 + m ()[Lnet/minecraft/world/entity/Display$BillboardConstraints; $values b method_48882 + m (Ljava/lang/String;IBLjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/Display$BlockDisplay bsq$b net/minecraft/class_8113$class_8115 + f Ljava/lang/String; TAG_BLOCK_STATE p field_42415 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BLOCK_STATE_ID q field_42416 + f Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; blockRenderState r field_43186 + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_48883 + p 1 blockState + m ()Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; blockRenderState s method_49778 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState t method_48884 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$BlockDisplay$BlockRenderState bsq$b$a net/minecraft/class_8113$class_8115$class_8225 + f Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_1319 + m ()Lnet/minecraft/world/level/block/state/BlockState; blockState a comp_1319 + m (Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/entity/Display$ColorInterpolator bsq$c net/minecraft/class_8113$class_8116 + f I previous a comp_1320 + f I current b comp_1321 + m ()I previous a comp_1320 + m ()I current b comp_1321 + m (II)V +c net/minecraft/world/entity/Display$FloatInterpolator bsq$d net/minecraft/class_8113$class_8117 + m (FF)F method_49779 a method_49779 + m (F)F get get method_48886 + p 1 partialTick +c net/minecraft/world/entity/Display$GenericInterpolator bsq$e net/minecraft/class_8113$class_8118 + m (Ljava/lang/Object;F)Ljava/lang/Object; method_49780 a method_49780 + m (F)Ljava/lang/Object; get get method_48888 + p 1 partialTick +c net/minecraft/world/entity/Display$IntInterpolator bsq$f net/minecraft/class_8113$class_8119 + m (IF)I method_49781 a method_49781 + m (F)I get get method_48889 + p 1 partialTick +c net/minecraft/world/entity/Display$ItemDisplay bsq$g net/minecraft/class_8113$class_8122 + f Ljava/lang/String; TAG_ITEM p field_42421 + f Ljava/lang/String; TAG_ITEM_DISPLAY q field_42422 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK_ID r field_42423 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_DISPLAY_ID s field_42424 + f Lnet/minecraft/world/entity/SlotAccess; slot t field_42425 + f Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; itemRenderState u field_43187 + m (Lcom/mojang/datafixers/util/Pair;)V method_48898 a method_48898 + m (Lnet/minecraft/world/item/ItemDisplayContext;)V setItemTransform a method_48896 + p 1 itemTransform + m (Lnet/minecraft/world/item/ItemStack;)V setItemStack a method_48897 + p 1 itemStack + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48899 a method_48899 + m ()Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; itemRenderState s method_49782 + m ()Lnet/minecraft/world/item/ItemStack; getItemStack t method_48900 + m ()Lnet/minecraft/world/item/ItemDisplayContext; getItemTransform v method_48901 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$ItemDisplay$ItemRenderState bsq$g$a net/minecraft/class_8113$class_8122$class_8226 + f Lnet/minecraft/world/item/ItemStack; itemStack a comp_1322 + f Lnet/minecraft/world/item/ItemDisplayContext; itemTransform b comp_1323 + m ()Lnet/minecraft/world/item/ItemStack; itemStack a comp_1322 + m ()Lnet/minecraft/world/item/ItemDisplayContext; itemTransform b comp_1323 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;)V +c net/minecraft/world/entity/Display$LinearFloatInterpolator bsq$h net/minecraft/class_8113$class_8227 + f F previous a comp_1324 + f F current b comp_1325 + m ()F previous a comp_1324 + m ()F current b comp_1325 + m (FF)V +c net/minecraft/world/entity/Display$LinearIntInterpolator bsq$i net/minecraft/class_8113$class_8228 + f I previous a comp_1326 + f I current b comp_1327 + m ()I previous a comp_1326 + m ()I current b comp_1327 + m (II)V +c net/minecraft/world/entity/Display$PosRotInterpolationTarget bsq$j net/minecraft/class_8113$class_8639 + f I steps a field_45115 + f D targetX b field_45116 + f D targetY c field_45117 + f D targetZ d field_45118 + f D targetYRot e field_45119 + f D targetXRot f field_45120 + m (Lnet/minecraft/world/entity/Entity;)V applyTargetPosAndRot a method_52530 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V applyLerpStep b method_52531 + p 1 entity + m (IDDDDD)V + p 1 steps + p 2 targetX + p 4 targetY + p 6 targetZ + p 8 targetYRot + p 10 targetXRot +c net/minecraft/world/entity/Display$RenderState bsq$k net/minecraft/class_8113$class_8229 + f Lnet/minecraft/world/entity/Display$GenericInterpolator; transformation a comp_1328 + f Lnet/minecraft/world/entity/Display$BillboardConstraints; billboardConstraints b comp_1329 + f I brightnessOverride c comp_1330 + f Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowRadius d comp_1331 + f Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowStrength e comp_1332 + f I glowColorOverride f comp_1333 + m ()Lnet/minecraft/world/entity/Display$GenericInterpolator; transformation a comp_1328 + m ()Lnet/minecraft/world/entity/Display$BillboardConstraints; billboardConstraints b comp_1329 + m ()I brightnessOverride c comp_1330 + m ()Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowRadius d comp_1331 + m ()Lnet/minecraft/world/entity/Display$FloatInterpolator; shadowStrength e comp_1332 + m ()I glowColorOverride f comp_1333 + m (Lnet/minecraft/world/entity/Display$GenericInterpolator;Lnet/minecraft/world/entity/Display$BillboardConstraints;ILnet/minecraft/world/entity/Display$FloatInterpolator;Lnet/minecraft/world/entity/Display$FloatInterpolator;I)V +c net/minecraft/world/entity/Display$TextDisplay bsq$l net/minecraft/class_8113$class_8123 + f Ljava/lang/String; TAG_LINE_WIDTH aD field_42427 + f Ljava/lang/String; TAG_TEXT_OPACITY aE field_42428 + f Ljava/lang/String; TAG_BACKGROUND_COLOR aF field_42429 + f Ljava/lang/String; TAG_SHADOW aG field_42430 + f Ljava/lang/String; TAG_SEE_THROUGH aH field_42431 + f Ljava/lang/String; TAG_USE_DEFAULT_BACKGROUND aI field_42432 + f Ljava/lang/String; TAG_ALIGNMENT aJ field_42433 + f B INITIAL_TEXT_OPACITY aK field_42434 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TEXT_ID aL field_42435 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LINE_WIDTH_ID aM field_42436 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BACKGROUND_COLOR_ID aN field_42437 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TEXT_OPACITY_ID aO field_42438 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STYLE_FLAGS_ID aP field_42439 + f Lit/unimi/dsi/fastutil/ints/IntSet; TEXT_RENDER_STATE_IDS aQ field_43188 + f Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; clientDisplayCache aR field_42442 + f Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; textRenderState aS field_43189 + f Ljava/lang/String; TAG_TEXT p field_42443 + f B FLAG_SHADOW q field_42444 + f B FLAG_SEE_THROUGH r field_42445 + f B FLAG_USE_DEFAULT_BACKGROUND s field_42446 + f B FLAG_ALIGN_LEFT t field_42447 + f B FLAG_ALIGN_RIGHT u field_42448 + f I INITIAL_BACKGROUND v field_42449 + m (B)Lnet/minecraft/world/entity/Display$TextDisplay$Align; getAlign a method_48902 + p 0 flags + m (BLnet/minecraft/nbt/CompoundTag;Ljava/lang/String;B)B loadFlag a method_48903 + p 0 currentValue + p 1 tag + p 2 flag + p 3 mask + m (Lnet/minecraft/world/entity/Display$TextDisplay$LineSplitter;)Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; cacheDisplay a method_48905 + p 1 splitter + m (Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState;F)Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; createInterpolatedTextRenderState a method_49783 + p 1 renderState + p 2 partialTick + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_48906 a method_48906 + m (BLnet/minecraft/nbt/CompoundTag;Ljava/lang/String;B)V storeFlag b method_48907 + p 0 currentValue + p 1 tag + p 2 flag + p 3 mask + m (I)V setLineWidth b method_48908 + p 1 lineWidth + m (B)V setTextOpacity c method_48909 + p 1 textOpacity + m (I)V setBackgroundColor c method_48910 + p 1 backgroundColor + m (Lnet/minecraft/network/chat/Component;)V setText c method_48911 + p 1 text + m (B)V setFlags d method_48912 + p 1 flags + m ()Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; textRenderState s method_49784 + m ()Lnet/minecraft/network/chat/Component; getText t method_48915 + m ()I getLineWidth v method_48916 + m ()B getTextOpacity w method_48918 + m ()I getBackgroundColor x method_48919 + m ()B getFlags y method_48917 + m ()Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; createFreshTextRenderState z method_49785 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Display$TextDisplay$Align bsq$l$a net/minecraft/class_8113$class_8123$class_8124 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; CENTER a field_42450 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; LEFT b field_42451 + f Lnet/minecraft/world/entity/Display$TextDisplay$Align; RIGHT c field_42452 + f Lcom/mojang/serialization/Codec; CODEC d field_42453 + f Ljava/lang/String; name e field_42454 + f [Lnet/minecraft/world/entity/Display$TextDisplay$Align; $VALUES f field_42455 + m ()[Lnet/minecraft/world/entity/Display$TextDisplay$Align; $values a method_48920 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/entity/Display$TextDisplay$CachedInfo bsq$l$b net/minecraft/class_8113$class_8123$class_8125 + f Ljava/util/List; lines a comp_1247 + f I width b comp_1248 + m ()Ljava/util/List; lines a comp_1247 + m ()I width b comp_1248 + m (Ljava/util/List;I)V +c net/minecraft/world/entity/Display$TextDisplay$CachedLine bsq$l$c net/minecraft/class_8113$class_8123$class_8126 + f Lnet/minecraft/util/FormattedCharSequence; contents a comp_1249 + f I width b comp_1250 + m ()Lnet/minecraft/util/FormattedCharSequence; contents a comp_1249 + m ()I width b comp_1250 + m (Lnet/minecraft/util/FormattedCharSequence;I)V +c net/minecraft/world/entity/Display$TextDisplay$LineSplitter bsq$l$d net/minecraft/class_8113$class_8123$class_8127 +c net/minecraft/world/entity/Display$TextDisplay$TextRenderState bsq$l$e net/minecraft/class_8113$class_8123$class_8230 + f Lnet/minecraft/network/chat/Component; text a comp_1334 + f I lineWidth b comp_1335 + f Lnet/minecraft/world/entity/Display$IntInterpolator; textOpacity c comp_1336 + f Lnet/minecraft/world/entity/Display$IntInterpolator; backgroundColor d comp_1337 + f B flags e comp_1338 + m ()Lnet/minecraft/network/chat/Component; text a comp_1334 + m ()I lineWidth b comp_1335 + m ()Lnet/minecraft/world/entity/Display$IntInterpolator; textOpacity c comp_1336 + m ()Lnet/minecraft/world/entity/Display$IntInterpolator; backgroundColor d comp_1337 + m ()B flags e comp_1338 + m (Lnet/minecraft/network/chat/Component;ILnet/minecraft/world/entity/Display$IntInterpolator;Lnet/minecraft/world/entity/Display$IntInterpolator;B)V +c net/minecraft/world/entity/Display$TransformationInterpolator bsq$m net/minecraft/class_8113$class_8231 + f Lcom/mojang/math/Transformation; previous a comp_1339 + f Lcom/mojang/math/Transformation; current b comp_1340 + m ()Lcom/mojang/math/Transformation; previous a comp_1339 + m (F)Lcom/mojang/math/Transformation; get a method_49786 + m ()Lcom/mojang/math/Transformation; current b comp_1340 + m (Lcom/mojang/math/Transformation;Lcom/mojang/math/Transformation;)V +c net/minecraft/world/entity/Entity bsr net/minecraft/class_1297 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f I TOTAL_AIR_SUPPLY A field_29988 + f I MAX_ENTITY_TAG_COUNT B field_29989 + f F DELTA_AFFECTED_BY_BLOCKS_BELOW_0_2 C field_44870 + f D DELTA_AFFECTED_BY_BLOCKS_BELOW_0_5 D field_44871 + f D DELTA_AFFECTED_BY_BLOCKS_BELOW_1_0 E field_44872 + f I BASE_TICKS_REQUIRED_TO_FREEZE F field_29992 + f I FREEZE_HURT_FREQUENCY G field_29993 + f I BASE_SAFE_FALL_DISTANCE H field_49073 + f Ljava/lang/String; UUID_TAG I field_29994 + f Z blocksBuilding J field_23807 + f I boardingCooldown K field_5951 + f D xo L field_6014 + f D yo M field_6036 + f D zo N field_5969 + f F yRotO O field_5982 + f F xRotO P field_6004 + f Z horizontalCollision Q field_5976 + f Z verticalCollision R field_5992 + f Z verticalCollisionBelow S field_36331 + f Z minorHorizontalCollision T field_34927 + f Z hurtMarked U field_6037 + f Lnet/minecraft/world/phys/Vec3; stuckSpeedMultiplier V field_17046 + f F DEFAULT_BB_WIDTH W field_29973 + f F DEFAULT_BB_HEIGHT X field_29974 + f F walkDistO Y field_6039 + f F walkDist Z field_5973 + f Z wasInPowderSnow aA field_28628 + f Z wasOnFire aB field_28629 + f Ljava/util/Optional; mainSupportingBlockPos aC field_44784 + f F yRot aD field_6031 + f F xRot aE field_5965 + f Lnet/minecraft/world/phys/AABB; bb aF field_6005 + f Z onGround aG field_5952 + f Lnet/minecraft/world/entity/Entity$RemovalReason; removalReason aH field_26995 + f F nextStep aI field_6003 + f I remainingFireTicks aJ field_5956 + f Ljava/util/Set; fluidOnEyes aK field_25599 + f I FLAG_SHIFT_KEY_DOWN aL field_29975 + f I FLAG_SPRINTING aM field_29976 + f I FLAG_SWIMMING aN field_29977 + f I FLAG_INVISIBLE aO field_29978 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_AIR_SUPPLY_ID aP field_6032 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CUSTOM_NAME aQ field_6027 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CUSTOM_NAME_VISIBLE aR field_5975 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SILENT aS field_5962 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_NO_GRAVITY aT field_5995 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TICKS_FROZEN aU field_27858 + f Lnet/minecraft/world/level/entity/EntityInLevelCallback; levelCallback aV field_26996 + f Lnet/minecraft/network/protocol/game/VecDeltaCodec; packetPositionCodec aW field_38931 + f I portalCooldown aX field_6018 + f Z invulnerable aY field_6009 + f Z hasGlowingTag aZ field_5958 + f F moveDist aa field_5994 + f F flyDist ab field_28627 + f F fallDistance ac field_6017 + f D xOld ad field_6038 + f D yOld ae field_5971 + f D zOld af field_5989 + f Z noPhysics ag field_5960 + f Lnet/minecraft/util/RandomSource; random ah field_5974 + f I tickCount ai field_6012 + f Z wasTouchingWater aj field_5957 + f Lit/unimi/dsi/fastutil/objects/Object2DoubleMap; fluidHeight ak field_5964 + f Z wasEyeInWater al field_6000 + f I invulnerableTime am field_6008 + f Z firstTick an field_5953 + f Lnet/minecraft/network/syncher/SynchedEntityData; entityData ao field_6011 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHARED_FLAGS_ID ap field_5990 + f I FLAG_ONFIRE aq field_29979 + f I FLAG_GLOWING ar field_29980 + f I FLAG_FALL_FLYING as field_29981 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_POSE at field_18064 + f Z noCulling au field_5985 + f Z hasImpulse av field_6007 + f Lnet/minecraft/world/entity/PortalProcessor; portalProcess aw field_51994 + f Ljava/util/UUID; uuid ax field_6021 + f Ljava/lang/String; stringUUID ay field_5981 + f Z isInPowderSnow az field_27857 + f Lorg/slf4j/Logger; LOGGER b field_5955 + f Ljava/util/Set; tags ba field_6029 + f [D pistonDeltas bb field_5993 + f J pistonDeltasGameTime bc field_5996 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions bd field_18065 + f F eyeHeight be field_18066 + f Z onGroundNoBlocks bf field_44873 + f F crystalSoundIntensity bg field_26997 + f I lastCrystalSoundPlayTick bh field_26994 + f Z hasVisualFire bi field_33758 + f Lnet/minecraft/world/level/block/state/BlockState; inBlockState bj field_47742 + f Ljava/util/concurrent/atomic/AtomicInteger; ENTITY_COUNTER c field_5978 + f Lnet/minecraft/world/phys/AABB; INITIAL_AABB d field_6025 + f D WATER_FLOW_SCALE e field_29984 + f D LAVA_FAST_FLOW_SCALE k field_29982 + f D LAVA_SLOW_FLOW_SCALE l field_29983 + f D viewScale m field_5999 + f Lnet/minecraft/world/entity/EntityType; type n field_5961 + f I id o field_5986 + f Lcom/google/common/collect/ImmutableList; passengers p field_5979 + f Lnet/minecraft/world/entity/Entity; vehicle q field_6034 + f Lnet/minecraft/world/level/Level; level r field_6002 + f Lnet/minecraft/world/phys/Vec3; position s field_22467 + f Lnet/minecraft/core/BlockPos; blockPosition t field_22468 + f Lnet/minecraft/world/level/ChunkPos; chunkPosition u field_35101 + f Lnet/minecraft/world/phys/Vec3; deltaMovement v field_18276 + f Ljava/lang/String; ID_TAG w field_29985 + f Ljava/lang/String; PASSENGERS_TAG x field_29986 + f I CONTENTS_SLOT_INDEX y field_49791 + f I BOARDING_COOLDOWN z field_29987 + m (Lnet/minecraft/world/entity/Entity;)Z method_37217 A method_37217 + m ()Z isInBubbleColumn F method_5798 + m ()I getPermissionLevel G method_5691 + m ()V updateFluidOnEyes H method_5630 + m ()V teleportPassengers I method_49792 + m ()Ljava/util/stream/Stream; getIndirectPassengersStream J method_31484 + m ()Ljava/util/Iterator; method_31485 K method_31485 + m ()Ljava/lang/String; method_5849 L method_5849 + m ()V processPortalCooldown M method_5760 + c Decrements the counter for the remaining time until the entity may use a portal again. + m ()Ljava/lang/String; method_5766 N method_5766 + m ()Ljava/lang/String; method_5689 O method_5689 + m ()Ljava/lang/String; method_5761 P method_5761 + m ()D lerpTargetZ P_ method_53828 + m ()F lerpTargetXRot Q_ method_53829 + m ()Z isSpectator R_ method_7325 + c Returns {@code true} if the player is in spectator mode. + m (D)Z shouldRenderAtSqrDistance a method_5640 + c Checks if the entity is in range to render. + p 1 distance + m (DDD)V dismountTo a method_33567 + p 1 x + p 3 y + p 5 z + m (DDDFF)V absMoveTo a method_5641 + c Sets position and rotation, clamping and wrapping params to valid values. Used by network code. + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + m (DDDFFI)V lerpTo a method_5759 + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + p 9 steps + m (DDF)Lnet/minecraft/world/phys/Vec3; getCollisionHorizontalEscapeVector a method_24826 + p 0 vehicleWidth + p 2 passengerWidth + p 4 yRot + m (DFZ)Lnet/minecraft/world/phys/HitResult; pick a method_5745 + p 1 hitDistance + p 3 partialTicks + p 4 hitFluids + m (DZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V checkFallDamage a method_5623 + p 1 y + p 3 onGround + p 4 state + p 5 pos + m (FF)V setRot a method_5710 + c Sets the rotation of the entity. + p 1 yRot + p 2 xRot + m (FFLnet/minecraft/world/damagesource/DamageSource;)Z causeFallDamage a method_5747 + p 1 fallDistance + p 2 multiplier + p 3 source + m (FI)V lerpHeadTo a method_5683 + p 1 yaw + p 2 pitch + m (FLnet/minecraft/world/phys/Vec3;)V moveRelative a method_5724 + p 1 amount + p 2 relative + m (IDDDDD)V lerpPositionAndRotationStep a method_52532 + p 1 steps + p 2 targetX + p 4 targetY + p 6 targetZ + p 8 targetYRot + p 10 targetXRot + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)V recreateFromPacket a method_31471 + p 1 packet + m (Lnet/minecraft/network/syncher/SynchedEntityData$Builder;)V defineSynchedData a method_5693 + p 1 builder + m (Lnet/minecraft/server/level/ServerEntity;)Lnet/minecraft/network/protocol/Packet; getAddEntityPacket a method_18002 + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;DDDLjava/util/Set;FF)Z teleportTo a method_48105 + p 1 level + p 2 x + p 4 y + p 6 z + p 8 relativeMovements + p 9 yRot + p 10 xRot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LightningBolt;)V thunderHit a method_5800 + p 1 level + p 2 lightning + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z killedEntity a method_5874 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; adjustSpawnLocation a method_14245 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z broadcastToPlayer a method_5680 + p 1 player + m (Lnet/minecraft/sounds/SoundEvent;)V playSound a method_43077 + p 1 sound + m (Lnet/minecraft/sounds/SoundEvent;FF)V playSound a method_5783 + p 1 sound + p 2 volume + p 3 pitch + m (Lnet/minecraft/tags/TagKey;)Z isEyeInFluid a method_5777 + p 1 fluidTag + m (Lnet/minecraft/tags/TagKey;D)Z updateFluidHeightAndDoFluidPushing a method_5692 + p 1 fluidTag + p 2 motionScale + m (Lnet/minecraft/world/damagesource/DamageSource;F)Z hurt a method_5643 + c Called when the entity is attacked. + p 1 source + p 2 amount + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V remove a method_5650 + p 1 reason + m (Lnet/minecraft/world/entity/Entity;)V onExplosionHit a method_56918 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;D)Z closerThan a method_24516 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/Entity;DD)Z closerThan a method_43259 + p 1 entity + p 2 horizontalDistance + p 4 verticalDistance + m (Lnet/minecraft/world/entity/Entity;ILnet/minecraft/world/damagesource/DamageSource;)V awardKillScore a method_5716 + p 1 killed + p 2 scoreValue + p 3 source + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity$MoveFunction;)V positionRider a method_5865 + p 1 passenger + p 2 callback + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_31475 a method_31475 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityAttachments;)Lnet/minecraft/world/phys/Vec3; getDefaultPassengerAttachmentPoint a method_55665 + p 0 vehicle + p 1 passenger + p 2 attachments + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityDimensions;F)Lnet/minecraft/world/phys/Vec3; getPassengerAttachmentPoint a method_52533 + p 1 entity + p 2 dimensions + p 3 partialTick + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Ljava/util/List;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; collectColliders a method_59920 + p 0 entity + p 1 level + p 2 collisions + p 3 boundingBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/level/Level;Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; collideBoundingBox a method_20736 + p 0 entity + p 1 vec + p 2 collisionBox + p 3 level + p 4 potentialHits + m (Lnet/minecraft/world/entity/Entity;Z)Z startRiding a method_5873 + p 1 vehicle + p 2 force + m (Lnet/minecraft/world/entity/EntityDimensions;)Z fudgePositionAfterSizeChange a method_60490 + p 1 dimensions + m (Lnet/minecraft/world/entity/MoverType;Lnet/minecraft/world/phys/Vec3;)V move a method_5784 + p 1 type + p 2 pos + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/entity/EntityDimensions; getDimensions a method_18377 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interact a method_5688 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactAt a method_5664 + c Applies the given player interaction to this Entity. + p 1 player + p 2 vec + p 3 hand + m (Lnet/minecraft/world/entity/projectile/Projectile;)Lnet/minecraft/world/entity/projectile/ProjectileDeflection; deflection a method_56071 + p 1 projectile + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/phys/Vec3; getHandHoldingItemAngle a method_40123 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;F)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5699 + c Drops an item at the position of the entity. + p 1 stack + p 2 offsetY + m (Lnet/minecraft/world/level/Explosion;)Z ignoreExplosion a method_5659 + p 1 explosion + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)Z shouldBlockExplode a method_5853 + p 1 explosion + p 2 level + p 3 pos + p 4 blockState + p 5 explosionPower + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;F)F getBlockExplosionResistance a method_5774 + c Explosion resistance of a block relative to this entity + p 1 explosion + p 2 level + p 3 pos + p 4 blockState + p 5 fluidState + p 6 explosionPower + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5706 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation a method_5870 + p 1 item + p 2 offsetY + m (Lnet/minecraft/world/level/Level;)V setLevel a method_51502 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/Level;)Z canChangeDimensions a method_61113 + p 1 oldLevel + p 2 newLevel + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z mayInteract a method_36971 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Mirror;)F mirror a method_5763 + c Transforms the entity's current yaw with the given Mirror and returns it. This does not have a side-effect. + p 1 transformMirror + m (Lnet/minecraft/world/level/block/Portal;Lnet/minecraft/core/BlockPos;)V setAsInsidePortal a method_60697 + p 1 portal + p 2 pos + m (Lnet/minecraft/world/level/block/Rotation;)F rotate a method_5832 + c Transforms the entity's current yaw with the given Rotation and returns it. This does not have a side-effect. + p 1 transformRotation + m (Lnet/minecraft/world/level/block/state/BlockState;)V onInsideBlock a method_5622 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V playCombinationStepSounds a method_49787 + p 1 primaryState + p 2 secondaryState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V makeStuckInBlock a method_5844 + p 1 state + p 2 motionMultiplier + m (Lnet/minecraft/world/level/portal/DimensionTransition;)Lnet/minecraft/world/entity/Entity; changeDimension a method_5731 + p 1 transition + m (Lnet/minecraft/world/phys/AABB;)V setBoundingBox a method_5857 + p 1 bb + m (Lnet/minecraft/world/phys/AABB;Ljava/util/List;FF)[F collectCandidateStepUpHeights a method_59921 + p 0 box + p 1 colliders + p 2 deltaY + p 3 maxUpStep + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/BlockPos;)Z method_30022 a method_30022 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; collide a method_17835 + c Given a motion vector, return an updated vector that takes into account restrictions such as collisions (from all directions) and step-up from stepHeight + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;FF)V moveTo a method_60949 + p 1 pos + p 2 yRot + p 3 xRot + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/MoverType;)Lnet/minecraft/world/phys/Vec3; maybeBackOffFromEdge a method_18796 + p 1 vec + p 2 mover + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; collideWithShapes a method_20737 + p 0 deltaMovement + p 1 entityBB + p 2 shapes + m (Lnet/minecraft/world/scores/Team;)Z isAlliedTo a method_5645 + c Returns whether this Entity is on the given scoreboard team. + p 1 team + m (Lnet/minecraft/commands/arguments/EntityAnchorArgument$Anchor;Lnet/minecraft/world/phys/Vec3;)V lookAt a method_5702 + p 1 anchor + p 2 target + m (Ljava/lang/String;)Z addTag a method_5780 + p 1 tag + m (Ljava/util/function/BiConsumer;)V updateDynamicGameEventListener a method_42147 + p 1 listenerConsumer + m (Ljava/util/function/Predicate;)Z hasPassenger a method_5703 + p 1 predicate + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; method_51700 a method_51700 + m (Lnet/minecraft/core/BlockPos;FF)V moveTo a method_5725 + p 1 pos + p 2 yRot + p 3 xRot + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isColliding a method_30632 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZLnet/minecraft/world/phys/Vec3;)Z vibrationAndSoundEffectsFromBlock a method_51701 + p 1 pos + p 2 state + p 3 playStepSound + p 4 broadcastGameEvent + p 5 entityPos + m (Lnet/minecraft/core/Direction$Axis;D)D applyPistonMovementRestriction a method_18797 + p 1 axis + p 2 distance + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/BlockUtil$FoundRectangle;)Lnet/minecraft/world/phys/Vec3; getRelativePortalPosition a method_30633 + p 1 axis + p 2 portal + m (Lnet/minecraft/core/Holder;)V gameEvent a method_32876 + p 1 gameEvent + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;)V gameEvent a method_32875 + p 1 gameEvent + p 2 entity + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_5819 + p 1 category + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData a method_5749 + c (abstract) Protected helper method to read subclass entity data from NBT. + p 1 compound + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_5813 a method_5813 + m (ZLnet/minecraft/world/phys/Vec3;)V setOnGroundWithMovement a method_60607 + p 1 onGround + p 2 movement + m ([D)Lnet/minecraft/nbt/ListTag; newDoubleList a method_5846 + c creates a NBT list from the array of doubles passed to this function + p 1 numbers + m ([F)Lnet/minecraft/nbt/ListTag; newFloatList a method_5726 + c Returns a new NBTTagList filled with the specified floats + p 1 numbers + m ()Z isOnPortalCooldown aA method_30230 + m ()V lavaHurt aB method_5730 + c Called whenever the entity is walking inside of lava. + m ()I getRemainingFireTicks aC method_20802 + m ()V clearFire aD method_5646 + c Removes fire from entity. + m ()V onBelowWorld aE method_5825 + m ()Z onGround aF method_24828 + m ()V tryCheckInsideBlocks aG method_36974 + m ()V playEntityOnFireExtinguishedSound aH method_36975 + m ()V extinguishFire aI method_46395 + m ()V processFlappingMovement aJ method_33573 + m ()Lnet/minecraft/core/BlockPos; getOnPosLegacy aK method_43260 + m ()Lnet/minecraft/core/BlockPos; getBlockPosBelowThatAffectsMyMovement aL method_23314 + m ()Lnet/minecraft/core/BlockPos; getOnPos aM method_23312 + m ()F getBlockJumpFactor aN method_23313 + m ()F getBlockSpeedFactor aO method_23326 + m ()F nextStep aP method_5867 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimSound aQ method_5737 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimSplashSound aR method_5625 + m ()Lnet/minecraft/sounds/SoundEvent; getSwimHighSpeedSplashSound aS method_5672 + m ()V checkInsideBlocks aT method_5852 + m ()V waterSwimSound aU method_51295 + m ()V onFlap aV method_5801 + m ()Z isFlapping aW method_5776 + m ()Z isSilent aX method_5701 + c @return True if this entity will not play sounds + m ()Z isNoGravity aY method_5740 + m ()D getDefaultGravity aZ method_7490 + m (DDD)V setPos a_ method_5814 + c Sets the x,y,z of the entity from the given parameters. Also seems to set up a bounding box. + p 1 x + p 3 y + p 5 z + m (I)Lnet/minecraft/world/entity/SlotAccess; getSlot a_ method_32318 + p 1 slot + m (Ljava/util/UUID;)V setUUID a_ method_5826 + p 1 uniqueId + m ()V stopRiding ad method_5848 + c Dismounts this entity from the entity it is riding. + m ()Lnet/minecraft/world/phys/Vec3; getKnownMovement ag method_60478 + m ()V unRide ak method_18375 + m ()Lnet/minecraft/network/protocol/game/VecDeltaCodec; getPositionCodec al method_43389 + m ()Lnet/minecraft/world/entity/EntityType; getType am method_5864 + m ()Ljava/util/Set; getTags ao method_5752 + m ()V kill ap method_5768 + c Called by the /kill command. + m ()V discard aq method_31472 + m ()Lnet/minecraft/network/syncher/SynchedEntityData; getEntityData ar method_5841 + m ()V onClientRemoval as method_36209 + m ()Lnet/minecraft/world/entity/Pose; getPose at method_18376 + m ()Lnet/minecraft/world/phys/AABB; makeBoundingBox au method_33332 + m ()V reapplyPosition av method_23311 + c Recomputes this entity's bounding box so that it is positioned at this entity's X/Y/Z. + m ()V baseTick aw method_5670 + c Gets called every tick from main Entity class + m ()V checkBelowWorld ax method_31473 + m ()V setPortalCooldown ay method_30229 + m ()I getPortalCooldown az method_51848 + m (B)V handleEntityEvent b method_5711 + c Handles an entity event received from a {@link net.minecraft.network.protocol.game.ClientboundEntityEventPacket}. + p 1 id + m (D)V setViewScale b method_5840 + p 0 renderDistWeight + m (DD)V turn b method_5872 + p 1 yRot + p 3 xRot + m (DDDFF)V moveTo b method_5808 + c Sets the location and rotation of the entity in the world. + p 1 x + p 3 y + p 5 z + p 7 yRot + p 8 xRot + m (FF)V absRotateTo b method_60608 + p 1 yRot + p 2 xRot + m (IZ)V setSharedFlag b method_5729 + c Enable or disable an entity flag, see {@link #getEntityFlag} to read the known flags. + p 1 flag + p 2 set + m (Lnet/minecraft/tags/TagKey;)D getFluidHeight b method_5861 + p 1 fluidTag + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isInvulnerableTo b method_5679 + c Returns whether this Entity is invulnerable to the given DamageSource. + p 1 source + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getDismountLocationForPassenger b method_24829 + p 1 passenger + m (Lnet/minecraft/world/entity/Pose;)V setPose b method_18380 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/item/ItemEntity; spawnAtLocation b method_5775 + p 1 stack + m (Lnet/minecraft/world/level/block/state/BlockState;)V playMuffledStepSound b method_51296 + p 1 state + m (Lnet/minecraft/world/phys/AABB;)Z isFree b method_5629 + c Determines if the entity has no collision with a block or a liquid within the specified bounding box. + p 1 box + m (Lnet/minecraft/world/phys/Vec3;FF)Lnet/minecraft/world/phys/Vec3; getInputVector b method_18795 + p 0 relative + p 1 motionScaler + p 2 facing + m (Ljava/lang/String;)Z removeTag b method_5738 + p 1 tag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V playStepSound b method_5712 + p 1 pos + p 2 state + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData b method_5652 + p 1 compound + m (Lnet/minecraft/network/chat/Component;)V setCustomName b method_5665 + p 1 name + m (ZLnet/minecraft/world/phys/Vec3;)V checkSupportingBlock b method_51703 + p 1 onGround + p 2 movement + m ()Z isPickable bA method_5863 + c Returns {@code true} if other Entities should be prevented from moving through this Entity. + m ()Z isPushable bB method_5810 + c Returns {@code true} if this entity should push and be pushed by other entities when colliding. + m ()Z repositionEntityAfterLoad bC method_5638 + m ()Ljava/lang/String; getEncodeId bD method_5653 + c Returns the string that identifies this Entity's class + m ()Z isAlive bE method_5805 + c Returns {@code true} if the entity has not been {@link #removed}. + m ()Z isInWall bF method_5757 + c Checks if this entity is inside an opaque block. + m ()Z canBeCollidedWith bG method_30948 + m ()Z showVehicleHealth bH method_5709 + m ()V ejectPassengers bI method_5772 + c Dismounts all entities riding this entity from this entity. + m ()V removeVehicle bJ method_29239 + m ()Z couldAcceptPassenger bK method_48921 + m ()F getPickRadius bL method_5871 + m ()Lnet/minecraft/world/phys/Vec3; getLookAngle bM method_5720 + c Returns a (normalized) vector of where this entity is looking. + m ()Lnet/minecraft/world/phys/Vec2; getRotationVector bN method_5802 + c Returns the Entity's pitch and yaw as a {@link net.minecraft.world.phys.Vec2}. + m ()Lnet/minecraft/world/phys/Vec3; getForward bO method_5663 + m ()V handlePortal bP method_60698 + m ()I getDimensionChangingDelay bQ method_5806 + c Return the amount of cooldown before this entity can use a portal again. + m ()Z isOnFire bR method_5809 + c Returns {@code true} if the entity is on fire. Used by render to add the fire effect on rendering. + m ()Z isPassenger bS method_5765 + m ()Z isVehicle bT method_5782 + c If at least 1 entity is riding this one + m ()Z dismountsUnderwater bU method_49693 + m ()Z canControlVehicle bV method_52534 + m ()Z isShiftKeyDown bW method_5715 + m ()Z isSteppingCarefully bX method_21749 + m ()Z isSuppressingBounce bY method_21750 + m ()Z isDiscrete bZ method_21751 + m (Lnet/minecraft/world/entity/player/Player;)V playerTouch b_ method_5694 + c Called by a player entity when they collide with an entity + p 1 player + m ()D getGravity ba method_56989 + m ()V applyGravity bb method_56990 + m ()Lnet/minecraft/world/entity/Entity$MovementEmission; getMovementEmission bc method_33570 + m ()Z dampensVibrations bd method_33189 + m ()Z fireImmune be method_5753 + m ()Z isInWater bf method_5799 + c Checks if this entity is inside water (if inWater field is true as a result of handleWaterMovement() returning true) + m ()Z isInWaterOrRain bg method_5721 + c Checks if this entity is either in water or on an open air block in rain (used in wolves). + m ()Z isInWaterRainOrBubble bh method_5637 + m ()Z isInWaterOrBubble bi method_5816 + m ()Z isInLiquid bj method_52535 + m ()Z isUnderWater bk method_5869 + m ()V updateSwimming bl method_5790 + m ()Z updateInWaterStateAndDoFluidPushing bm method_5876 + m ()V updateInWaterStateAndDoWaterCurrentPushing bn method_5713 + m ()V doWaterSplashEffect bo method_5746 + c Plays the {@link #getSplashSound() splash sound}, and the {@link ParticleType#WATER_BUBBLE} and {@link ParticleType#WATER_SPLASH} particles. + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockStateOnLegacy bp method_43261 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockStateOn bq method_25936 + m ()Z canSpawnSprintParticle br method_27298 + m ()V spawnSprintParticle bs method_5839 + m ()Z isInLava bt method_5771 + m ()F getLightLevelDependentMagicValue bu method_5718 + m ()V setOldPosAndRot bv method_22862 + m ()V markHurt bw method_5785 + c Marks this entity's velocity as changed, so that it can be re-synced with the client later + m ()Lnet/minecraft/core/Direction; getNearestViewDirection bx method_58149 + m ()Lnet/minecraft/world/phys/Vec3; getEyePosition by method_33571 + m ()Z canBeHitByProjectile bz method_49108 + m (D)D getX c method_23316 + p 1 scale + m (DDD)V teleportTo c method_5859 + c Sets the position of the entity and updates the 'last' variables + p 1 x + p 3 y + p 5 z + m (FF)Lnet/minecraft/world/phys/Vec3; calculateViewVector c method_5631 + c Calculates the view vector using the X and Y rotation of an entity. + p 1 xRot + p 2 yRot + m (Lnet/minecraft/world/damagesource/DamageSource;)V handleDamageEvent c method_48922 + p 1 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z method_54756 c method_54756 + m (Lnet/minecraft/world/entity/Pose;)Z hasPose c method_41328 + p 1 pose + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStateClimbable c method_51702 + p 1 state + m (Lnet/minecraft/world/phys/Vec3;)V setPos c method_33574 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V walkingStepSound c method_51297 + p 1 pos + p 2 state + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; removeAction c method_5856 + p 0 name + m (Z)V setSharedFlagOnFire c method_33572 + p 1 isOnFire + m ()Ljava/lang/String; getStringUUID cA method_5845 + m ()Z isPushedByFluid cC method_5675 + m ()D getViewScale cD method_5824 + m ()Z isCustomNameVisible cE method_5807 + m ()Z shouldShowName cF method_5733 + m ()V fixupDimensions cG method_46396 + m ()Lnet/minecraft/core/Direction; getDirection cH method_5735 + c Gets the horizontal facing direction of this Entity. + m ()Lnet/minecraft/core/Direction; getMotionDirection cI method_5755 + c Gets the horizontal facing direction of this Entity, adjusted to take specially-treated entity types into account. + m ()Lnet/minecraft/network/chat/HoverEvent; createHoverEvent cJ method_5769 + m ()F getEyeHeight cL method_5751 + m ()Lnet/minecraft/world/phys/Vec3; getLeashOffset cM method_29919 + m ()Lnet/minecraft/world/level/Level; getCommandSenderWorld cN method_5770 + c Get the world, if available. {@code null} is not allowed! If you are not an entity in the world, return the overworld + m ()Lnet/minecraft/server/MinecraftServer; getServer cO method_5682 + c Get the Minecraft server instance + m ()Z onlyOpCanSetNbt cP method_5833 + c Checks if players can use this entity to access operator (permission level 2) commands either directly or indirectly, such as give or setblock. A similar method exists for entities at {@link net.minecraft.world.entity.Entity#onlyOpCanSetNbt()}.

For example, {@link net.minecraft.world.entity.vehicle.MinecartCommandBlock#onlyOpCanSetNbt() command block minecarts} and {@link net.minecraft.world.entity.vehicle.MinecartSpawner#onlyOpCanSetNbt() mob spawner minecarts} (spawning command block minecarts or drops) are considered accessible.

@return true if this entity offers ways for unauthorized players to use restricted commands + m ()Lnet/minecraft/world/entity/LivingEntity; getControllingPassenger cQ method_5642 + m ()Z hasControllingPassenger cR method_42148 + m ()Ljava/util/List; getPassengers cS method_5685 + m ()Lnet/minecraft/world/entity/Entity; getFirstPassenger cT method_31483 + m ()Ljava/lang/Iterable; getIndirectPassengers cW method_5736 + m ()I countPlayerPassengers cX method_54757 + m ()Z hasExactlyOnePlayerPassenger cY method_5817 + m ()Lnet/minecraft/world/entity/Entity; getRootVehicle cZ method_5668 + m ()D lerpTargetX c_ method_53830 + m ()Z isDescending ca method_21752 + m ()Z isCrouching cb method_18276 + m ()Z isSprinting cc method_5624 + c Get if the Entity is sprinting. + m ()Z isSwimming cd method_5681 + m ()Z isVisuallySwimming ce method_20232 + m ()Z isVisuallyCrawling cf method_20448 + m ()Z hasGlowingTag cg method_36361 + m ()Z isCurrentlyGlowing ch method_5851 + m ()Z isInvisible ci method_5767 + m ()Z isOnRails cj method_52172 + m ()Lnet/minecraft/world/scores/PlayerTeam; getTeam ck method_5781 + m ()I getMaxAirSupply cl method_5748 + m ()I getAirSupply cm method_5669 + m ()I getTicksFrozen cn method_32312 + m ()F getPercentFrozen co method_32313 + m ()Z isFullyFrozen cp method_32314 + m ()I getTicksRequiredToFreeze cq method_32315 + m ()V checkSlowFallDistance cr method_45318 + m ()Lnet/minecraft/network/chat/Component; getTypeName cs method_23315 + m ()F getYHeadRot ct method_5791 + m ()Z isAttackable cu method_5732 + c Returns {@code true} if it's possible to attack this entity with an item. + m ()Z isInvulnerable cv method_5655 + m ()V removeAfterChangingDimensions cw method_30076 + m ()I getMaxFallDistance cx method_5850 + c The maximum height from where the entity is allowed to jump (used in pathfinder) + m ()Z displayFireAnimation cy method_5862 + c Return whether this entity should be rendered as on fire. + m (D)D getRandomX d method_23322 + p 1 scale + m (DDD)V teleportRelative d method_45166 + p 1 dx + p 3 dy + p 5 dz + m (F)V igniteForSeconds d method_5639 + p 1 seconds + m (FF)Lnet/minecraft/world/phys/Vec3; calculateUpVector d method_18863 + p 1 xRot + p 2 yRot + m (Lnet/minecraft/server/level/ServerPlayer;)V startSeenByPlayer d method_5837 + c Add the given player to the list of players tracking this entity. For instance, a player may track a boss in order to view its associated boss bar. + p 1 serverPlayer + m (Lnet/minecraft/world/entity/Entity;)V method_49789 d method_49789 + m (Lnet/minecraft/world/entity/Pose;)F getEyeHeight d method_18381 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;)Z isInvisibleTo d method_5756 + c Only used by renderer in EntityLivingBase subclasses.\nDetermines if an entity is visible or not to a specific player, if the entity is normally invisible.\nFor EntityLivingBase subclasses, returning false when invisible will render the entity semi-transparent. + p 1 player + m (Lnet/minecraft/world/level/block/state/BlockState;)Z shouldPlayAmethystStepSound d method_49790 + p 1 state + m (Lnet/minecraft/world/phys/Vec3;)Z isHorizontalCollisionMinor d method_39759 + p 1 deltaMovement + m (Lnet/minecraft/core/BlockPos;)Z isSupportedBy d method_51849 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z saveAsPassenger d method_5786 + c Writes this entity to NBT, unless it has been removed. Also writes this entity's passengers, and the entity type ID (so the produced NBT is sufficient to recreate the entity).\n\nGenerally, {@link #writeUnlessPassenger} or {@link #writeWithoutTypeId} should be used instead of this method.\n\n@return True if the entity was written (and the passed compound should be saved)" false if the entity was not written. + p 1 compound + m (Z)V setOnGround d method_24830 + p 1 onGround + m ()V checkDespawn dA method_5982 + c Makes the entity despawn if requirements are reached + m ()Lnet/minecraft/world/item/ItemStack; getPickResult dB method_31480 + m ()Z canFreeze dC method_32316 + m ()Z isFreezing dD method_40071 + m ()F getYRot dE method_36454 + c Gets the rotation of this entity around the y-axis (the yaw) in degrees. + m ()F getVisualRotationYInDegrees dF method_43078 + m ()F getXRot dG method_36455 + c Gets the rotation of this entity around the x-axis (the pitch) in degrees. + m ()Z canSprint dH method_48155 + m ()F maxUpStep dI method_49476 + m ()Z isRemoved dJ method_31481 + m ()Lnet/minecraft/world/entity/Entity$RemovalReason; getRemovalReason dK method_35049 + m ()V unsetRemoved dL method_31482 + m ()Lnet/minecraft/world/level/Level; level dO method_37908 + m ()Lnet/minecraft/world/damagesource/DamageSources; damageSources dP method_48923 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess dQ method_56673 + m ()Lnet/minecraft/util/RandomSource; getRandom dR method_59922 + m ()Lnet/minecraft/world/item/ItemStack; getWeaponItem dS method_59958 + m ()D lerpTargetY d_ method_53827 + m ()Z isControlledByLocalInstance da method_5787 + m ()Z isEffectiveAi db method_6034 + m ()Lnet/minecraft/world/entity/Entity; getVehicle dc method_5854 + c Get entity this is riding + m ()Lnet/minecraft/world/entity/Entity; getControlledVehicle dd method_49694 + m ()Lnet/minecraft/sounds/SoundSource; getSoundSource de method_5634 + m ()I getFireImmuneTicks df method_5676 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack dg method_5671 + m ()Z touchingUnloadedChunk dh method_33724 + m ()D getFluidJumpThreshold di method_29241 + m ()F getBbWidth dj method_17681 + m ()F getBbHeight dk method_17682 + m ()Lnet/minecraft/world/entity/EntityAttachments; getAttachments dl method_56072 + m ()Lnet/minecraft/world/phys/Vec3; position dm method_19538 + m ()Lnet/minecraft/world/phys/Vec3; trackingPosition dn method_43390 + m ()Lnet/minecraft/world/level/block/state/BlockState; getInBlockState dp method_55667 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPosition dq method_31476 + m ()Lnet/minecraft/world/phys/Vec3; getDeltaMovement dr method_18798 + m ()I getBlockX ds method_31477 + m ()D getX dt method_23317 + m ()I getBlockY du method_31478 + m ()D getY dv method_23318 + m ()D getRandomY dw method_23319 + m ()D getEyeY dx method_23320 + m ()I getBlockZ dy method_31479 + m ()D getZ dz method_23321 + m (D)D getY e method_23323 + p 1 scale + m (DDD)V moveTo e method_24203 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/core/BlockPos; getOnPos e method_43258 + p 1 yOffset + m (I)V setId e method_5838 + p 1 id + m (Lnet/minecraft/server/level/ServerPlayer;)V stopSeenByPlayer e method_5742 + c Removes the given player from the list of players tracking this entity. See {@link Entity#addTrackingPlayer} for more information on tracking. + p 1 serverPlayer + m (Lnet/minecraft/world/entity/Entity;)V method_37216 e method_37216 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_29494 e method_29494 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; limitPistonMovement e method_18794 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getPrimaryStepSoundBlockPos e method_49788 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z save e method_5662 + c Writes this entity to NBT, unless it has been removed or it is a passenger. Also writes this entity's passengers, and the entity type ID (so the produced NBT is sufficient to recreate the entity).\nTo always write the entity, use {@link #writeWithoutTypeId}.\n\n@return True if the entity was written (and the passed compound should be saved)" false if the entity was not written. + p 1 compound + m (Z)V setSilent e method_5803 + c When set to true the entity will not play sounds. + p 1 isSilent + m ()F lerpTargetYRot e_ method_53831 + m (D)D getZ f method_23324 + p 1 scale + m (DDD)V syncPacketPositionCodec f method_43391 + p 1 x + p 3 y + p 5 z + m (F)V playSwimSound f method_5734 + p 1 volume + m (I)V setPortalCooldown f method_51850 + p 1 portalCooldown + m (Lnet/minecraft/world/entity/Entity;)F distanceTo f method_5739 + c Returns the distance to the entity. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V moveTo f method_29495 + p 1 vec + m (Lnet/minecraft/core/BlockPos;)V placePortalTicket f method_60950 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; saveWithoutId f method_5647 + c Writes this entity, including passengers, to NBT, regardless as to whether it is removed or a passenger. Does not include the entity's type ID, so the NBT is insufficient to recreate the entity using {@link AnvilChunkLoader#readWorldEntity}. Use {@link #writeUnlessPassenger} for that purpose. + p 1 compound + m (Z)V setNoGravity f method_5875 + p 1 noGravity + m (D)D getRandomZ g method_23325 + p 1 scale + m (DDD)Z isFree g method_5654 + c Checks if the offset position from the entity's current position has a collision with a block or a liquid. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getViewVector g method_5828 + c Gets the interpolated look vector. + p 1 partialTicks + m (I)V igniteForTicks g method_56073 + p 1 ticks + m (Lnet/minecraft/world/entity/Entity;)D distanceToSqr g method_5858 + c Returns the squared distance to the entity. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr g method_5707 + p 1 vec + m (Lnet/minecraft/nbt/CompoundTag;)V load g method_5651 + c Reads the entity from NBT (calls an abstract helper method to read specialized data) + p 1 compound + m (Z)V setShiftKeyDown g method_5660 + p 1 keyDown + m (DDD)V absMoveTo h method_30634 + p 1 x + p 3 y + p 5 z + m (F)F getViewXRot h method_5695 + c Returns the current X rotation of the entity. + p 1 partialTicks + m (I)V setRemainingFireTicks h method_20803 + p 1 remainingFireTicks + m (Lnet/minecraft/world/entity/Entity;)V push h method_5697 + c Applies a velocity to the entities, to push them away from each other. + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V push h method_60491 + p 1 vector + m (Z)V setSprinting h method_5728 + c Set sprinting switch for Entity. + p 1 sprinting + m ()Lnet/minecraft/world/phys/AABB; getBoundingBoxForCulling h_ method_5830 + c Gets the bounding box of this Entity, adjusted to take auxiliary entities into account (e.g. the tile contained by a minecart, such as a command block). + m (DDD)D distanceToSqr i method_5649 + c Gets the squared distance to the position. + p 1 x + p 3 y + p 5 z + m (F)F getViewYRot i method_5705 + c Returns the current Y rotation of the entity. + p 1 partialTick + m (I)Z getSharedFlag i method_5795 + c Returns {@code true} if the flag is active for the entity. Known flags: 0: burning 1: sneaking 2: unused 3: sprinting 4: swimming 5: invisible 6: glowing 7: elytra flying + p 1 flag + m (Lnet/minecraft/world/entity/Entity;)Z canCollideWith i method_30949 + p 1 entity + m (Lnet/minecraft/world/phys/Vec3;)V setDeltaMovement i method_18799 + p 1 deltaMovement + m (Z)V setSwimming i method_5796 + p 1 swimming + m ()V refreshDimensions i_ method_18382 + m (DDD)V push j method_5762 + c Adds to the current velocity of the entity, and sets {@link #isAirBorne} to true. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getUpVector j method_18864 + p 1 partialTicks + m (I)V setAirSupply j method_5855 + p 1 air + m (Lnet/minecraft/world/entity/Entity;)V positionRider j method_24201 + p 1 passenger + m (Lnet/minecraft/world/phys/Vec3;)V addDeltaMovement j method_45319 + p 1 addend + m (Z)V setGlowingTag j method_5834 + p 1 hasGlowingTag + m ()Lnet/minecraft/world/level/material/PushReaction; getPistonPushReaction j_ method_5657 + m (DDD)Z shouldRender k method_5727 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getEyePosition k method_5836 + p 1 partialTicks + m (I)V setTicksFrozen k method_32317 + p 1 ticksFrozen + m (Lnet/minecraft/world/entity/Entity;)V onPassengerTurned k method_5644 + c Applies this entity's orientation to another entity. Used to update passenger orientation. + p 1 entityToUpdate + m (Z)V setInvisible k method_5648 + p 1 invisible + m ()V tick l method_5773 + c Called to update the entity's position/logic. + m (DDD)V lerpMotion l method_5750 + c Updates the entity motion clientside, called by packets from the server + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getLightProbePosition l method_31166 + p 1 partialTicks + m (I)Z hasPermissions l method_5687 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getVehicleAttachmentPoint l method_55668 + p 1 entity + m (Z)V onAboveBubbleCol l method_5700 + p 1 downwards + m (DDD)V moveTowardsClosestSpace m method_5632 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; getPosition m method_30950 + p 1 partialTicks + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getPassengerRidingPosition m method_52538 + p 1 entity + m (Z)V onInsideBubbleColumn m method_5764 + p 1 downwards + m ()V resetFallDistance n method_38785 + m (DDD)V setDeltaMovement n method_18800 + p 1 x + p 3 y + p 5 z + m (F)V animateHurt n method_5879 + p 1 yaw + m (Lnet/minecraft/world/entity/Entity;)Z startRiding n method_5804 + p 1 vehicle + m (Z)V setInvulnerable n method_5684 + c Sets whether this Entity is invulnerable. + p 1 isInvulnerable + m (DDD)V setPosRaw o method_23327 + c Directly updates the {@link #posX}, {@link posY}, and {@link posZ} fields, without performing any collision checks, updating the bounding box position, or sending any packets. In general, this is not what you want and {@link #setPosition} is better, as that handles the bounding box. + p 1 x + p 3 y + p 5 z + m (F)V setYHeadRot o method_5847 + c Sets the head's Y rotation of the entity. + p 1 yHeadRot + m (Lnet/minecraft/world/entity/Entity;)Z canRide o method_5860 + p 1 vehicle + m (Z)Z canUsePortal o method_5822 + p 1 allowPassengers + m (F)V setYBodyRot p method_5636 + c Set the body Y rotation of the entity. + p 1 yBodyRot + m (Lnet/minecraft/world/entity/Entity;)V addPassenger p method_5627 + p 1 passenger + m (Z)V setCustomNameVisible p method_5880 + p 1 alwaysRenderNameTag + m (F)Lnet/minecraft/world/phys/Vec3; getLeashOffset q method_45321 + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)V removePassenger q method_5793 + p 1 passenger + m (Z)V setIsInPowderSnow q method_32319 + p 1 isInPowderSnow + m ()I getTeamColor q_ method_22861 + m (F)F getPreciseBodyRotation r method_60951 + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)Z canAddPassenger r method_5818 + p 1 passenger + m ()Z isIgnoringBlockTriggers r_ method_5696 + c Return whether this entity should NOT trigger a pressure plate or a tripwire. + m (F)Lnet/minecraft/world/phys/Vec3; getRopeHoldPosition s method_30951 + p 1 partialTicks + m (Lnet/minecraft/world/entity/Entity;)Z isAlliedTo s method_5722 + c Returns whether this Entity is on the same team as the given Entity. + p 1 entity + m (F)V setYRot t method_36456 + c Sets the rotation of this entity around the y-axis (the yaw) in degrees. + p 1 yRot + m (Lnet/minecraft/world/entity/Entity;)Z is t method_5779 + c Returns {@code true} if Entity argument is equal to this Entity + p 1 entity + m ()V rideTick u method_5842 + c Handles updating while riding another entity + m (F)V setXRot u method_36457 + c Sets the rotation of this entity around the x-axis (the pitch) in degrees. + p 1 xRot + m (Lnet/minecraft/world/entity/Entity;)Z skipAttackInteraction u method_5698 + c Called when a player attacks an entity. If this returns true the attack will not happen. + p 1 entity + m ()V playAmethystStepSound v method_37215 + m (Lnet/minecraft/world/entity/Entity;)V copyPosition v method_5719 + c Sets this entity's location and angles to the location and angles of the passed in entity. + p 1 entity + m ()Z isInRain w method_5778 + m (Lnet/minecraft/world/entity/Entity;)V restoreFrom w method_5878 + c Prepares this entity in new dimension by copying NBT data from entity in old dimension + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z hasPassenger x method_5626 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z isPassengerOfSameVehicle y method_5794 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z hasIndirectPassenger z method_5821 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Entity$1 bsr$1 net/minecraft/class_1297$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_6041 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_6040 + m ()V +c net/minecraft/world/entity/Entity$MoveFunction bsr$a net/minecraft/class_1297$class_4738 +c net/minecraft/world/entity/Entity$MovementEmission bsr$b net/minecraft/class_1297$class_5799 + f Lnet/minecraft/world/entity/Entity$MovementEmission; NONE a field_28630 + f Lnet/minecraft/world/entity/Entity$MovementEmission; SOUNDS b field_28631 + f Lnet/minecraft/world/entity/Entity$MovementEmission; EVENTS c field_28632 + f Lnet/minecraft/world/entity/Entity$MovementEmission; ALL d field_28633 + f Z sounds e field_28634 + f Z events f field_28635 + f [Lnet/minecraft/world/entity/Entity$MovementEmission; $VALUES g field_28636 + m ()Z emitsAnything a method_33576 + m ()Z emitsEvents b method_33577 + m ()Z emitsSounds c method_33578 + m ()[Lnet/minecraft/world/entity/Entity$MovementEmission; $values d method_36602 + m (Ljava/lang/String;IZZ)V + p 3 sounds + p 4 events + m ()V +c net/minecraft/world/entity/Entity$RemovalReason bsr$c net/minecraft/class_1297$class_5529 + f Lnet/minecraft/world/entity/Entity$RemovalReason; KILLED a field_26998 + f Lnet/minecraft/world/entity/Entity$RemovalReason; DISCARDED b field_26999 + f Lnet/minecraft/world/entity/Entity$RemovalReason; UNLOADED_TO_CHUNK c field_27000 + f Lnet/minecraft/world/entity/Entity$RemovalReason; UNLOADED_WITH_PLAYER d field_27001 + f Lnet/minecraft/world/entity/Entity$RemovalReason; CHANGED_DIMENSION e field_27002 + f Z destroy f field_27003 + f Z save g field_27004 + f [Lnet/minecraft/world/entity/Entity$RemovalReason; $VALUES h field_27005 + m ()Z shouldDestroy a method_31486 + m ()Z shouldSave b method_31487 + m ()[Lnet/minecraft/world/entity/Entity$RemovalReason; $values c method_36603 + m (Ljava/lang/String;IZZ)V + p 3 destroy + p 4 save + m ()V +c net/minecraft/world/entity/EntityAttachment bss net/minecraft/class_9064 + f Lnet/minecraft/world/entity/EntityAttachment; PASSENGER a field_47743 + f Lnet/minecraft/world/entity/EntityAttachment; VEHICLE b field_47744 + f Lnet/minecraft/world/entity/EntityAttachment; NAME_TAG c field_47745 + f Lnet/minecraft/world/entity/EntityAttachment; WARDEN_CHEST d field_48320 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; fallback e field_47746 + f [Lnet/minecraft/world/entity/EntityAttachment; $VALUES f field_47747 + m ()[Lnet/minecraft/world/entity/EntityAttachment; $values a method_55669 + m (FF)Ljava/util/List; createFallbackPoints a method_55670 + p 1 width + p 2 height + m (Ljava/lang/String;ILnet/minecraft/world/entity/EntityAttachment$Fallback;)V + p 3 fallback + m ()V +c net/minecraft/world/entity/EntityAttachment$Fallback bss$a net/minecraft/class_9064$class_9065 + f Ljava/util/List; ZERO a field_47748 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_FEET b field_47749 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_HEIGHT c field_47750 + f Lnet/minecraft/world/entity/EntityAttachment$Fallback; AT_CENTER d field_48321 + m (FF)Ljava/util/List; method_56074 a method_56074 + m (FF)Ljava/util/List; method_55671 b method_55671 + m (FF)Ljava/util/List; method_55672 c method_55672 + m ()V +c net/minecraft/world/entity/EntityAttachments bst net/minecraft/class_9066 + f Ljava/util/Map; attachments a field_47752 + m ()Lnet/minecraft/world/entity/EntityAttachments$Builder; builder a method_55673 + m (FF)Lnet/minecraft/world/entity/EntityAttachments; createDefault a method_55844 + p 0 width + p 1 height + m (FFF)Lnet/minecraft/world/entity/EntityAttachments; scale a method_55674 + p 1 xScale + p 2 yScale + p 3 zScale + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; getNullable a method_55675 + p 1 attachment + p 2 index + p 3 yRot + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; transformPoint a method_55676 + p 0 point + p 1 yRot + m (Ljava/util/List;FFF)Ljava/util/List; scalePoints a method_55677 + p 0 attachmentPoints + p 1 xScale + p 2 yScale + p 3 zScale + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; get b method_55678 + p 1 attachment + p 2 index + p 3 yRot + m (Lnet/minecraft/world/entity/EntityAttachment;IF)Lnet/minecraft/world/phys/Vec3; getClamped c method_55679 + p 1 attachment + p 2 index + p 3 yRot + m (Ljava/util/Map;)V + p 1 attachments +c net/minecraft/world/entity/EntityAttachments$Builder bst$a net/minecraft/class_9066$class_9067 + f Ljava/util/Map; attachments a field_47753 + m (FF)Lnet/minecraft/world/entity/EntityAttachments; build a method_55680 + p 1 width + p 2 height + m (Lnet/minecraft/world/entity/EntityAttachment;)Ljava/util/List; method_55681 a method_55681 + m (Lnet/minecraft/world/entity/EntityAttachment;FFF)Lnet/minecraft/world/entity/EntityAttachments$Builder; attach a method_55682 + p 1 attachment + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityAttachment;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityAttachments$Builder; attach a method_55683 + p 1 attachment + p 2 poas + m ()V +c net/minecraft/world/entity/EntityDimensions bsu net/minecraft/class_4048 + f F width a comp_2185 + f F height b comp_2186 + f F eyeHeight c comp_2187 + f Lnet/minecraft/world/entity/EntityAttachments; attachments d comp_2188 + f Z fixed e comp_2189 + m ()F width a comp_2185 + m (DDD)Lnet/minecraft/world/phys/AABB; makeBoundingBox a method_30231 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/entity/EntityDimensions; scale a method_18383 + p 1 factor + m (FF)Lnet/minecraft/world/entity/EntityDimensions; scale a method_19539 + p 1 widthFactor + p 2 heightFactor + m (Lnet/minecraft/world/entity/EntityAttachments$Builder;)Lnet/minecraft/world/entity/EntityDimensions; withAttachments a method_55684 + p 1 attachments + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; makeBoundingBox a method_30757 + p 1 pos + m ()F height b comp_2186 + m (F)Lnet/minecraft/world/entity/EntityDimensions; withEyeHeight b method_55685 + p 1 eyeHeight + m (FF)Lnet/minecraft/world/entity/EntityDimensions; scalable b method_18384 + p 0 width + p 1 height + m ()F eyeHeight c comp_2187 + m (F)F defaultEyeHeight c method_55686 + p 0 height + m (FF)Lnet/minecraft/world/entity/EntityDimensions; fixed c method_18385 + p 0 width + p 1 height + m ()Lnet/minecraft/world/entity/EntityAttachments; attachments d comp_2188 + m ()Z fixed e comp_2189 + m (FFZ)V + p 1 width + p 2 height + p 3 fixed + m (FFFLnet/minecraft/world/entity/EntityAttachments;Z)V +c net/minecraft/world/entity/EntityEvent bsv net/minecraft/class_6024 + f B PERMISSION_LEVEL_OWNERS A field_29996 + f B ATTACK_BLOCKED B field_29997 + f B SHIELD_DISABLED C field_29998 + f B FISHING_ROD_REEL_IN D field_29999 + f B ARMORSTAND_WOBBLE E field_30000 + f B STOP_OFFER_FLOWER F field_30002 + f B TALISMAN_ACTIVATE G field_30003 + f B DOLPHIN_LOOKING_FOR_TREASURE H field_30006 + f B RAVAGER_STUNNED I field_30007 + f B TRUSTING_FAILED J field_30008 + f B TRUSTING_SUCCEEDED K field_30009 + f B VILLAGER_SWEAT L field_30010 + f B FOX_EAT M field_30013 + f B TELEPORT N field_30014 + f B MAINHAND_BREAK O field_30015 + f B OFFHAND_BREAK P field_30016 + f B HEAD_BREAK Q field_30017 + f B CHEST_BREAK R field_30018 + f B LEGS_BREAK S field_30019 + f B FEET_BREAK T field_30020 + f B HONEY_SLIDE U field_30022 + f B HONEY_JUMP V field_30023 + f B SWAP_HANDS W field_30024 + f B CANCEL_SHAKE_WETNESS X field_30025 + f B START_RAM Y field_33454 + f B END_RAM Z field_33455 + f B JUMP a field_30021 + f B POOF aa field_33691 + f B TENDRILS_SHIVER ab field_38094 + f B SONIC_CHARGE ac field_38847 + f B SNIFFER_DIGGING_SOUND ad field_42621 + f B ARMADILLO_PEEK ae field_49074 + f B BODY_BREAK af field_49215 + f B DEATH b field_30028 + f B START_ATTACKING c field_30029 + f B STOP_ATTACKING d field_30030 + f B TAMING_FAILED e field_30031 + f B TAMING_SUCCEEDED f field_30032 + f B SHAKE_WETNESS g field_30033 + f B USE_ITEM_COMPLETE h field_30034 + f B EAT_GRASS i field_30035 + f B OFFER_FLOWER j field_30036 + f B LOVE_HEARTS k field_30037 + f B VILLAGER_ANGRY l field_30038 + f B VILLAGER_HAPPY m field_30039 + f B WITCH_HAT_MAGIC n field_30040 + f B ZOMBIE_CONVERTING o field_30041 + f B FIREWORKS_EXPLODE p field_30042 + f B IN_LOVE_HEARTS q field_30043 + f B SQUID_ANIM_SYNCH r field_30044 + f B SILVERFISH_MERGE_ANIM s field_30045 + f B GUARDIAN_ATTACK_SOUND t field_30046 + f B REDUCED_DEBUG_INFO u field_30047 + f B FULL_DEBUG_INFO v field_30048 + f B PERMISSION_LEVEL_ALL w field_30049 + f B PERMISSION_LEVEL_MODERATORS x field_30050 + f B PERMISSION_LEVEL_GAMEMASTERS y field_30051 + f B PERMISSION_LEVEL_ADMINS z field_29995 + m ()V +c net/minecraft/world/entity/EntitySelector bsw net/minecraft/class_1301 + f Ljava/util/function/Predicate; ENTITY_STILL_ALIVE a field_6154 + c Selects only entities which are alive + f Ljava/util/function/Predicate; LIVING_ENTITY_STILL_ALIVE b field_6157 + c Selects only entities which are LivingEntities and alive + f Ljava/util/function/Predicate; ENTITY_NOT_BEING_RIDDEN c field_6153 + c Selects only entities which are neither ridden by anything nor ride on anything + f Ljava/util/function/Predicate; CONTAINER_ENTITY_SELECTOR d field_6152 + c Selects only entities which are container entities + f Ljava/util/function/Predicate; NO_CREATIVE_OR_SPECTATOR e field_6156 + c Selects entities which are neither creative-mode players nor spectator-players + f Ljava/util/function/Predicate; NO_SPECTATORS f field_6155 + c Selects entities which are either not players or players that are not spectating + f Ljava/util/function/Predicate; CAN_BE_COLLIDED_WITH g field_35589 + c Selects entities which are collidable with and aren't spectators + m (DDDD)Ljava/util/function/Predicate; withinDistance a method_5909 + p 0 x + p 2 y + p 4 z + p 6 range + m (DDDDLnet/minecraft/world/entity/Entity;)Z method_5912 a method_5912 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; pushableBy a method_5911 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z method_5906 a method_5906 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/Team;Lnet/minecraft/world/scores/Team$CollisionRule;Lnet/minecraft/world/entity/Entity;)Z method_5915 a method_5915 + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; notRiding b method_5913 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Z method_24517 c method_24517 + m (Lnet/minecraft/world/entity/Entity;)Z method_5910 d method_5910 + m (Lnet/minecraft/world/entity/Entity;)Z method_5914 e method_5914 + m (Lnet/minecraft/world/entity/Entity;)Z method_5908 f method_5908 + m (Lnet/minecraft/world/entity/Entity;)Z method_32878 g method_32878 + m ()V + m ()V +c net/minecraft/world/entity/EntitySelector$MobCanWearArmorEntitySelector bsw$a net/minecraft/class_1301$class_1302 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_6158 + m (Lnet/minecraft/world/entity/Entity;)Z test a method_5916 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 stack +c net/minecraft/world/entity/EntityType bsx net/minecraft/class_1299 + f Lnet/minecraft/world/entity/EntityType; DRAGON_FIREBALL A field_6129 + f Lnet/minecraft/world/entity/EntityType; DROWNED B field_6123 + f Lnet/minecraft/world/entity/EntityType; EGG C field_6144 + f Lnet/minecraft/world/entity/EntityType; ELDER_GUARDIAN D field_6086 + f Lnet/minecraft/world/entity/EntityType; END_CRYSTAL E field_6110 + f Lnet/minecraft/world/entity/EntityType; ENDER_DRAGON F field_6116 + f Lnet/minecraft/world/entity/EntityType; ENDER_PEARL G field_6082 + f Lnet/minecraft/world/entity/EntityType; ENDERMAN H field_6091 + f Lnet/minecraft/world/entity/EntityType; ENDERMITE I field_6128 + f Lnet/minecraft/world/entity/EntityType; EVOKER J field_6090 + f Lnet/minecraft/world/entity/EntityType; EVOKER_FANGS K field_6060 + f Lnet/minecraft/world/entity/EntityType; EXPERIENCE_BOTTLE L field_6064 + f Lnet/minecraft/world/entity/EntityType; EXPERIENCE_ORB M field_6044 + f Lnet/minecraft/world/entity/EntityType; EYE_OF_ENDER N field_6061 + f Lnet/minecraft/world/entity/EntityType; FALLING_BLOCK O field_6089 + f Lnet/minecraft/world/entity/EntityType; FIREWORK_ROCKET P field_6133 + f Lnet/minecraft/world/entity/EntityType; FOX Q field_17943 + f Lnet/minecraft/world/entity/EntityType; FROG R field_37419 + f Lnet/minecraft/world/entity/EntityType; FURNACE_MINECART S field_6080 + f Lnet/minecraft/world/entity/EntityType; GHAST T field_6107 + f Lnet/minecraft/world/entity/EntityType; GIANT U field_6095 + f Lnet/minecraft/world/entity/EntityType; GLOW_ITEM_FRAME V field_28401 + f Lnet/minecraft/world/entity/EntityType; GLOW_SQUID W field_28402 + f Lnet/minecraft/world/entity/EntityType; GOAT X field_30052 + f Lnet/minecraft/world/entity/EntityType; GUARDIAN Y field_6118 + f Lnet/minecraft/world/entity/EntityType; HOGLIN Z field_21973 + f Lnet/minecraft/world/entity/EntityType; PIGLIN aA field_22281 + f Lnet/minecraft/world/entity/EntityType; PIGLIN_BRUTE aB field_25751 + f Lnet/minecraft/world/entity/EntityType; PILLAGER aC field_6105 + f Lnet/minecraft/world/entity/EntityType; POLAR_BEAR aD field_6042 + f Lnet/minecraft/world/entity/EntityType; POTION aE field_6045 + f Lnet/minecraft/world/entity/EntityType; PUFFERFISH aF field_6062 + f Lnet/minecraft/world/entity/EntityType; RABBIT aG field_6140 + f Lnet/minecraft/world/entity/EntityType; RAVAGER aH field_6134 + f Lnet/minecraft/world/entity/EntityType; SALMON aI field_6073 + f Lnet/minecraft/world/entity/EntityType; SHEEP aJ field_6115 + f Lnet/minecraft/world/entity/EntityType; SHULKER aK field_6109 + f Lnet/minecraft/world/entity/EntityType; SHULKER_BULLET aL field_6100 + f Lnet/minecraft/world/entity/EntityType; ALLAY a field_38384 + f Lnet/minecraft/world/entity/EntityType; SILVERFISH aM field_6125 + f Lnet/minecraft/world/entity/EntityType; SKELETON aN field_6137 + f Lnet/minecraft/world/entity/EntityType; SKELETON_HORSE aO field_6075 + f Lnet/minecraft/world/entity/EntityType; SLIME aP field_6069 + f Lnet/minecraft/world/entity/EntityType; SMALL_FIREBALL aQ field_6049 + f Lnet/minecraft/world/entity/EntityType; SNIFFER aR field_42622 + f Lnet/minecraft/world/entity/EntityType; SNOW_GOLEM aS field_6047 + f Lnet/minecraft/world/entity/EntityType; SNOWBALL aT field_6068 + f Lnet/minecraft/world/entity/EntityType; SPAWNER_MINECART aU field_6142 + f Lnet/minecraft/world/entity/EntityType; SPECTRAL_ARROW aV field_6135 + f Lnet/minecraft/world/entity/EntityType; SPIDER aW field_6079 + f Lnet/minecraft/world/entity/EntityType; SQUID aX field_6114 + f Lnet/minecraft/world/entity/EntityType; STRAY aY field_6098 + f Lnet/minecraft/world/entity/EntityType; STRIDER aZ field_23214 + f Lnet/minecraft/world/entity/EntityType; HOPPER_MINECART aa field_6058 + f Lnet/minecraft/world/entity/EntityType; HORSE ab field_6139 + f Lnet/minecraft/world/entity/EntityType; HUSK ac field_6071 + f Lnet/minecraft/world/entity/EntityType; ILLUSIONER ad field_6065 + f Lnet/minecraft/world/entity/EntityType; INTERACTION ae field_42623 + f Lnet/minecraft/world/entity/EntityType; IRON_GOLEM af field_6147 + f Lnet/minecraft/world/entity/EntityType; ITEM ag field_6052 + f Lnet/minecraft/world/entity/EntityType; ITEM_DISPLAY ah field_42456 + f Lnet/minecraft/world/entity/EntityType; ITEM_FRAME ai field_6043 + f Lnet/minecraft/world/entity/EntityType; OMINOUS_ITEM_SPAWNER aj field_50124 + f Lnet/minecraft/world/entity/EntityType; FIREBALL ak field_6066 + f Lnet/minecraft/world/entity/EntityType; LEASH_KNOT al field_6138 + f Lnet/minecraft/world/entity/EntityType; LIGHTNING_BOLT am field_6112 + f Lnet/minecraft/world/entity/EntityType; LLAMA an field_6074 + f Lnet/minecraft/world/entity/EntityType; LLAMA_SPIT ao field_6124 + f Lnet/minecraft/world/entity/EntityType; MAGMA_CUBE ap field_6102 + f Lnet/minecraft/world/entity/EntityType; MARKER aq field_33456 + f Lnet/minecraft/world/entity/EntityType; MINECART ar field_6096 + f Lnet/minecraft/world/entity/EntityType; MOOSHROOM as field_6143 + f Lnet/minecraft/world/entity/EntityType; MULE at field_6057 + f Lnet/minecraft/world/entity/EntityType; OCELOT au field_6081 + f Lnet/minecraft/world/entity/EntityType; PAINTING av field_6120 + f Lnet/minecraft/world/entity/EntityType; PANDA aw field_6146 + f Lnet/minecraft/world/entity/EntityType; PARROT ax field_6104 + f Lnet/minecraft/world/entity/EntityType; PHANTOM ay field_6078 + f Lnet/minecraft/world/entity/EntityType; PIG az field_6093 + f Lorg/slf4j/Logger; LOGGER bB field_6088 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder bC field_36398 + f F MAGIC_HORSE_WIDTH bD field_30054 + f I DISPLAY_TRACKING_RANGE bE field_42459 + f Lnet/minecraft/world/entity/EntityType$EntityFactory; factory bF field_6101 + f Lnet/minecraft/world/entity/MobCategory; category bG field_6094 + f Lcom/google/common/collect/ImmutableSet; immuneTo bH field_25355 + f Z serialize bI field_6056 + f Z summon bJ field_6072 + f Z fireImmune bK field_18981 + f Z canSpawnFarFromPlayer bL field_19423 + f Lnet/minecraft/world/entity/EntityType; AREA_EFFECT_CLOUD b field_6083 + f I clientTrackingRange bM field_24085 + f I updateInterval bN field_24086 + f Ljava/lang/String; descriptionId bO field_6106 + f Lnet/minecraft/network/chat/Component; description bP field_6092 + f Lnet/minecraft/resources/ResourceKey; lootTable bQ field_16526 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions bR field_18070 + f F spawnDimensionsScale bS field_50125 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures bT field_40115 + f Lnet/minecraft/world/entity/EntityType; TADPOLE ba field_37420 + f Lnet/minecraft/world/entity/EntityType; TEXT_DISPLAY bb field_42457 + f Lnet/minecraft/world/entity/EntityType; TNT bc field_6063 + f Lnet/minecraft/world/entity/EntityType; TNT_MINECART bd field_6053 + f Lnet/minecraft/world/entity/EntityType; TRADER_LLAMA be field_17714 + f Lnet/minecraft/world/entity/EntityType; TRIDENT bf field_6127 + f Lnet/minecraft/world/entity/EntityType; TROPICAL_FISH bg field_6111 + f Lnet/minecraft/world/entity/EntityType; TURTLE bh field_6113 + f Lnet/minecraft/world/entity/EntityType; VEX bi field_6059 + f Lnet/minecraft/world/entity/EntityType; VILLAGER bj field_6077 + f Lnet/minecraft/world/entity/EntityType; VINDICATOR bk field_6117 + f Lnet/minecraft/world/entity/EntityType; WANDERING_TRADER bl field_17713 + f Lnet/minecraft/world/entity/EntityType; WARDEN bm field_38095 + f Lnet/minecraft/world/entity/EntityType; WIND_CHARGE bn field_47243 + f Lnet/minecraft/world/entity/EntityType; WITCH bo field_6145 + f Lnet/minecraft/world/entity/EntityType; WITHER bp field_6119 + f Lnet/minecraft/world/entity/EntityType; WITHER_SKELETON bq field_6076 + f Lnet/minecraft/world/entity/EntityType; WITHER_SKULL br field_6130 + f Lnet/minecraft/world/entity/EntityType; WOLF bs field_6055 + f Lnet/minecraft/world/entity/EntityType; ZOGLIN bt field_23696 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE bu field_6051 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE_HORSE bv field_6048 + f Lnet/minecraft/world/entity/EntityType; ZOMBIE_VILLAGER bw field_6054 + f Lnet/minecraft/world/entity/EntityType; ZOMBIFIED_PIGLIN bx field_6050 + f Lnet/minecraft/world/entity/EntityType; PLAYER by field_6097 + f Lnet/minecraft/world/entity/EntityType; FISHING_BOBBER bz field_6103 + f Lnet/minecraft/world/entity/EntityType; ARMADILLO c field_47754 + f Lnet/minecraft/world/entity/EntityType; ARMOR_STAND d field_6131 + f Lnet/minecraft/world/entity/EntityType; ARROW e field_6122 + f Lnet/minecraft/world/entity/EntityType; AXOLOTL f field_28315 + f Lnet/minecraft/world/entity/EntityType; BAT g field_6108 + f Lnet/minecraft/world/entity/EntityType; BEE h field_20346 + f Lnet/minecraft/world/entity/EntityType; BLAZE i field_6099 + f Lnet/minecraft/world/entity/EntityType; BLOCK_DISPLAY j field_42460 + f Lnet/minecraft/world/entity/EntityType; BOAT k field_6121 + f Lnet/minecraft/world/entity/EntityType; BOGGED l field_49148 + f Lnet/minecraft/world/entity/EntityType; BREEZE m field_47244 + f Lnet/minecraft/world/entity/EntityType; BREEZE_WIND_CHARGE n field_49075 + f Lnet/minecraft/world/entity/EntityType; CAMEL o field_40116 + f Lnet/minecraft/world/entity/EntityType; CAT p field_16281 + f Lnet/minecraft/world/entity/EntityType; CAVE_SPIDER q field_6084 + f Lnet/minecraft/world/entity/EntityType; CHEST_BOAT r field_38096 + f Lnet/minecraft/world/entity/EntityType; CHEST_MINECART s field_6126 + f Lnet/minecraft/world/entity/EntityType; CHICKEN t field_6132 + f Lnet/minecraft/world/entity/EntityType; COD u field_6070 + f Lnet/minecraft/world/entity/EntityType; COMMAND_BLOCK_MINECART v field_6136 + f Lnet/minecraft/world/entity/EntityType; COW w field_6085 + f Lnet/minecraft/world/entity/EntityType; CREEPER x field_6046 + f Lnet/minecraft/world/entity/EntityType; DOLPHIN y field_6087 + f Lnet/minecraft/world/entity/EntityType; DONKEY z field_6067 + m (DDD)Lnet/minecraft/world/phys/AABB; getSpawnAABB a method_58629 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/component/CustomData;Lnet/minecraft/world/entity/Entity;)V method_48008 a method_48008 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; createDefaultStackConfig a method_48009 + p 0 serverLevel + p 1 stack + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; spawn a method_5894 + p 1 serverLevel + p 2 stack + p 3 player + p 4 pos + p 5 spawnType + p 6 shouldOffsetY + p 7 shouldOffsetYMore + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; spawn a method_5899 + p 1 level + p 2 consumer + p 3 pos + p 4 spawnType + p 5 shouldOffsetY + p 6 shouldOffsetYMore + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;)Lnet/minecraft/world/entity/Entity; spawn a method_47821 + p 1 level + p 2 pos + p 3 spawnType + m (Lnet/minecraft/tags/TagKey;)Z is a method_20210 + c Checks if this entity type is contained in the tag + p 1 tag + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; tryCast a method_31488 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/resources/ResourceLocation; getKey a method_5890 + p 0 entityType + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; create a method_5883 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Entity; method_17846 a method_17846 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/component/CustomData;)V updateCustomEntityTag a method_5881 + p 0 level + p 1 player + p 2 entity + p 3 customData + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/phys/AABB;)D getYOffset a method_5884 + p 0 level + p 1 pos + p 2 shouldOffsetYMore + p 3 box + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isBlockDangerous a method_29496 + p 1 state + m (Ljava/lang/String;)Ljava/util/Optional; byString a method_5898 + c Tries to get the entity type associated by the key. + p 0 key + m (Ljava/lang/String;Lnet/minecraft/world/entity/EntityType$Builder;)Lnet/minecraft/world/entity/EntityType; register a method_5895 + p 0 key + p 1 builder + m (Ljava/util/List;Lnet/minecraft/world/level/Level;)Ljava/util/stream/Stream; loadEntitiesRecursive a method_31489 + p 0 tags + p 1 level + m (Ljava/util/function/Consumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; appendDefaultStackConfig a method_48156 + p 0 consumer + p 1 serverLevel + p 2 stack + p 3 player + m (Ljava/util/function/Consumer;Lnet/minecraft/world/item/ItemStack;)Ljava/util/function/Consumer; appendCustomNameConfig a method_48012 + p 0 consumer + p 1 stack + m (Lnet/minecraft/core/HolderSet;)Z is a method_53125 + p 1 entityType + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; by a method_17684 + p 0 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/entity/Entity;)V method_17839 a method_17839 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; create a method_5892 + p 0 tag + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;Ljava/util/function/Function;)Lnet/minecraft/world/entity/Entity; loadEntityRecursive a method_17842 + p 0 compound + p 1 level + p 2 entityFunction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;Ljava/util/function/Function;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_17843 a method_17843 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/entity/Entity;)V method_48010 a method_48010 + m ()Z canSerialize b method_5893 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/MobSpawnType;ZZ)Lnet/minecraft/world/entity/Entity; create b method_5888 + p 1 level + p 2 consumer + p 3 pos + p 4 spawnType + p 5 shouldOffsetY + p 6 shouldOffsetYMore + m (Lnet/minecraft/world/entity/Entity;)V method_48013 b method_48013 + m (Ljava/util/function/Consumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Ljava/util/function/Consumer; appendCustomEntityStackConfig b method_48011 + p 0 consumer + p 1 level + p 2 stack + p 3 player + m (Lnet/minecraft/nbt/CompoundTag;)V method_17847 b method_17847 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; loadStaticEntity b method_17848 + p 0 compound + p 1 level + m ()Z canSummon c method_5896 + m (Lnet/minecraft/world/entity/Entity;)V method_47823 c method_47823 + m ()Z fireImmune d method_19946 + m ()Z canSpawnFarFromPlayer e method_20814 + m ()Lnet/minecraft/world/entity/MobCategory; getCategory f method_5891 + m ()Ljava/lang/String; getDescriptionId g method_5882 + m ()Lnet/minecraft/network/chat/Component; getDescription h method_5897 + m ()Ljava/lang/String; toShortString j method_35050 + m ()Lnet/minecraft/resources/ResourceKey; getDefaultLootTable k method_16351 + m ()F getWidth l method_17685 + m ()F getHeight m method_17686 + m ()Lnet/minecraft/world/entity/EntityDimensions; getDimensions n method_18386 + m ()I clientTrackingRange o method_18387 + m ()I updateInterval p method_18388 + m ()Z trackDeltas q method_18389 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder r method_40124 + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;ZZZZLcom/google/common/collect/ImmutableSet;Lnet/minecraft/world/entity/EntityDimensions;FIILnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 factory + p 2 category + p 3 serialize + p 4 summon + p 5 fireImmune + p 6 canSpawnFarFromPlayer + p 7 immuneTo + p 8 dimensions + p 9 spawnDimensionsScale + p 10 clientTrackingRange + p 11 updateInterval + p 12 requiredFeatures + m ()V +c net/minecraft/world/entity/EntityType$1 bsx$1 net/minecraft/class_1299$1 + f Ljava/util/Spliterator; val$tagSpliterator a field_27006 + f Lnet/minecraft/world/level/Level; val$level b field_27007 + f Ljava/util/List; val$entities c field_27008 + m (Lnet/minecraft/world/level/Level;Ljava/util/function/Consumer;Lnet/minecraft/nbt/Tag;)V method_31490 a method_31490 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_31491 a method_31491 + m (Ljava/util/Spliterator;Lnet/minecraft/world/level/Level;Ljava/util/List;)V +c net/minecraft/world/entity/EntityType$Builder bsx$a net/minecraft/class_1299$class_1300 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.entity.FabricEntityType.Builder} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/entity/EntityType$EntityFactory; factory a field_6148 + f Lnet/minecraft/world/entity/MobCategory; category b field_6149 + f Lcom/google/common/collect/ImmutableSet; immuneTo c field_25356 + f Z serialize d field_6151 + f Z summon e field_6150 + f Z fireImmune f field_18982 + f Z canSpawnFarFromPlayer g field_19424 + f I clientTrackingRange h field_24087 + f I updateInterval i field_24088 + f Lnet/minecraft/world/entity/EntityDimensions; dimensions j field_18071 + f F spawnDimensionsScale k field_50126 + f Lnet/minecraft/world/entity/EntityAttachments$Builder; attachments l field_47755 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures m field_40117 + m ()Lnet/minecraft/world/entity/EntityType$Builder; noSummon a method_5901 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; spawnDimensionsScale a method_58630 + p 1 spawnDimensionsScale + m (FF)Lnet/minecraft/world/entity/EntityType$Builder; sized a method_17687 + p 1 width + p 2 height + m (I)Lnet/minecraft/world/entity/EntityType$Builder; clientTrackingRange a method_27299 + p 1 clientTrackingRange + m (Lnet/minecraft/world/entity/EntityAttachment;FFF)Lnet/minecraft/world/entity/EntityType$Builder; attach a method_56075 + p 1 attachment + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/entity/EntityAttachment;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; attach a method_56076 + p 1 attachment + p 2 pos + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/EntityType$Builder; of a method_5903 + p 0 factory + p 1 category + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/Entity; method_5900 a method_5900 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/EntityType$Builder; createNothing a method_5902 + p 0 category + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; vehicleAttachment a method_55688 + p 1 attachPoint + m (Ljava/lang/String;)Lnet/minecraft/world/entity/EntityType; build a method_5905 + p 1 key + m ([F)Lnet/minecraft/world/entity/EntityType$Builder; passengerAttachments a method_55689 + p 1 attachPoints + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/entity/EntityType$Builder; requiredFeatures a method_45323 + p 1 requiredFeatures + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/entity/EntityType$Builder; immuneTo a method_29497 + p 1 blocks + m ([Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EntityType$Builder; passengerAttachments a method_55690 + p 1 attachPoints + m ()Lnet/minecraft/world/entity/EntityType$Builder; noSave b method_5904 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; eyeHeight b method_55687 + p 1 eyeHeight + m (I)Lnet/minecraft/world/entity/EntityType$Builder; updateInterval b method_27300 + p 1 updateInterval + m ()Lnet/minecraft/world/entity/EntityType$Builder; fireImmune c method_19947 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; ridingOffset c method_55691 + p 1 ridingOffset + m ()Lnet/minecraft/world/entity/EntityType$Builder; canSpawnFarFromPlayer d method_20815 + m (F)Lnet/minecraft/world/entity/EntityType$Builder; nameTagOffset d method_55692 + p 1 nameTagOffset + m (Lnet/minecraft/world/entity/EntityType$EntityFactory;Lnet/minecraft/world/entity/MobCategory;)V + p 1 factory + p 2 category +c net/minecraft/world/entity/EntityType$EntityFactory bsx$b net/minecraft/class_1299$class_4049 +c net/minecraft/world/entity/EquipmentSlot bsy net/minecraft/class_1304 + f Lnet/minecraft/world/entity/EquipmentSlot; MAINHAND a field_6173 + f Lnet/minecraft/world/entity/EquipmentSlot; OFFHAND b field_6171 + f Lnet/minecraft/world/entity/EquipmentSlot; FEET c field_6166 + f Lnet/minecraft/world/entity/EquipmentSlot; LEGS d field_6172 + f Lnet/minecraft/world/entity/EquipmentSlot; CHEST e field_6174 + f Lnet/minecraft/world/entity/EquipmentSlot; HEAD f field_6169 + f Lnet/minecraft/world/entity/EquipmentSlot; BODY g field_48824 + f I NO_COUNT_LIMIT h field_51935 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC i field_45739 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; type j field_6170 + f I index k field_6168 + f I countLimit l field_51936 + f I filterFlag m field_6167 + f Ljava/lang/String; name n field_6175 + f [Lnet/minecraft/world/entity/EquipmentSlot; $VALUES o field_6176 + m ()Lnet/minecraft/world/entity/EquipmentSlot$Type; getType a method_5925 + m (I)I getIndex a method_32320 + p 1 baseIndex + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; limit a method_60610 + p 1 stack + m (Ljava/lang/String;)Lnet/minecraft/world/entity/EquipmentSlot; byName a method_5924 + p 0 targetName + m ()I getIndex b method_5927 + m ()I getFilterFlag d method_5926 + c Gets the actual slot index. + m ()Ljava/lang/String; getName e method_5923 + m ()Z isArmor f method_46643 + m ()[Lnet/minecraft/world/entity/EquipmentSlot; $values g method_36604 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot$Type;IIILjava/lang/String;)V + p 3 type + p 4 index + p 5 countLimit + p 6 filterFlag + p 7 name + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot$Type;IILjava/lang/String;)V + p 3 type + p 4 index + p 5 filterFlag + p 6 name + m ()V +c net/minecraft/world/entity/EquipmentSlot$Type bsy$a net/minecraft/class_1304$class_1305 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; HAND a field_6177 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; HUMANOID_ARMOR b field_6178 + f Lnet/minecraft/world/entity/EquipmentSlot$Type; ANIMAL_ARMOR c field_48825 + f [Lnet/minecraft/world/entity/EquipmentSlot$Type; $VALUES d field_6179 + m ()[Lnet/minecraft/world/entity/EquipmentSlot$Type; $values a method_36605 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/EquipmentSlotGroup bsz net/minecraft/class_9274 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; ANY a field_49216 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; MAINHAND b field_49217 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; OFFHAND c field_49218 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; HAND d field_49219 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; FEET e field_49220 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; LEGS f field_49221 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; CHEST g field_49222 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; HEAD h field_49223 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; ARMOR i field_49224 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; BODY j field_50127 + f Ljava/util/function/IntFunction; BY_ID k field_49225 + f Lcom/mojang/serialization/Codec; CODEC l field_49226 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC m field_49227 + f I id n field_49228 + f Ljava/lang/String; key o field_49229 + f Ljava/util/function/Predicate; predicate p field_49230 + f [Lnet/minecraft/world/entity/EquipmentSlotGroup; $VALUES q field_49231 + m ()[Lnet/minecraft/world/entity/EquipmentSlotGroup; $values a method_57285 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/EquipmentSlotGroup; bySlot a method_59524 + p 0 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57287 a method_57287 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)I method_57288 a method_57288 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z test b method_57286 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)I method_57290 b method_57290 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57289 c method_57289 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z method_57291 d method_57291 + m (Ljava/lang/String;IILjava/lang/String;Ljava/util/function/Predicate;)V + p 3 id + p 4 key + p 5 predicate + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/world/entity/EquipmentSlot;)V + p 3 id + p 4 key + p 5 slot + m ()V +c net/minecraft/world/entity/EquipmentSlotGroup$1 bsz$1 net/minecraft/class_9274$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot a field_51350 + m ()V +c net/minecraft/world/entity/EquipmentTable bta net/minecraft/class_9652 + f Lcom/mojang/serialization/Codec; DROP_CHANCES_CODEC a field_51374 + f Lcom/mojang/serialization/Codec; CODEC b field_51375 + f Lnet/minecraft/resources/ResourceKey; lootTable c comp_2621 + f Ljava/util/Map; slotDropChances d comp_2622 + m ()Lnet/minecraft/resources/ResourceKey; lootTable a comp_2621 + m (F)Ljava/util/Map; createForAllSlots a method_59658 + p 0 dropChance + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/Map; method_59659 a method_59659 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59660 a method_59660 + m (Ljava/util/List;F)Ljava/util/Map; createForAllSlots a method_59661 + p 0 equipmentSlots + p 1 dropChance + m (Ljava/util/Map;)Lcom/mojang/datafixers/util/Either; method_59662 a method_59662 + m ()Ljava/util/Map; slotDropChances b comp_2622 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V + m ()V +c net/minecraft/world/entity/EquipmentUser btb net/minecraft/class_9460 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootParams;JLjava/util/Map;)V equip a method_58632 + p 1 equipmentLootTable + p 2 params + p 3 seed + p 5 slotDropChances + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/Map;)V equip a method_59663 + p 1 equipmentLootTable + p 2 params + p 3 slotDropChances + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getItemBySlot a method_6118 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;F)V setDropChance a method_5946 + p 1 slot + p 2 dropChance + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlot a method_5673 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/EquipmentTable;Lnet/minecraft/world/level/storage/loot/LootParams;)V equip a method_58631 + p 1 equipmentTable + p 2 params + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)Lnet/minecraft/world/entity/EquipmentSlot; resolveSlot a method_58633 + p 1 stack + p 2 excludedSlots +c net/minecraft/world/entity/ExperienceOrb btc net/minecraft/class_1303 + f I LIFETIME b field_30055 + f I ENTITY_SCAN_PERIOD c field_30056 + f I MAX_FOLLOW_DIST d field_30057 + f I ORB_GROUPS_PER_AREA e field_30058 + f D ORB_MERGE_DISTANCE f field_30059 + f I age g field_6164 + f I health h field_6161 + f I value i field_6159 + f I count j field_27009 + f Lnet/minecraft/world/entity/player/Player; followingPlayer k field_6162 + m (IILnet/minecraft/world/entity/ExperienceOrb;)Z method_31492 a method_31492 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;I)V award a method_31493 + p 0 level + p 1 pos + p 2 amount + m (Lnet/minecraft/server/level/ServerPlayer;I)I repairPlayerItems a method_35051 + p 1 player + p 2 value + m (Lnet/minecraft/world/entity/ExperienceOrb;)Z canMerge a method_31494 + p 1 orb + m (Lnet/minecraft/world/entity/ExperienceOrb;II)Z canMerge a method_31495 + p 0 orb + p 1 amount + p 2 other + m (I)I getExperienceValue b method_5918 + c Get a fragment of the maximum experience points value for the supplied value of experience points value. + p 0 expValue + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;I)Z tryMergeToExisting b method_31496 + p 0 level + p 1 pos + p 2 amount + m (Lnet/minecraft/world/entity/ExperienceOrb;)V merge b method_31497 + p 1 orb + m ()I getValue p method_5919 + c Returns the XP value of this XP orb. + m ()I getIcon s method_5920 + c Returns a number from 1 to 10 based on how much XP this orb is worth. This is used by RenderXPOrb to determine what texture to use. + m ()V scanForEntities t method_31498 + m ()V setUnderwaterMovement v method_5921 + m (Lnet/minecraft/world/level/Level;DDDI)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 value + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/FlyingMob btd net/minecraft/class_1307 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/GlowSquid bte net/minecraft/class_5776 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DARK_TICKS_REMAINING cg field_28403 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGlowSquidSpawnRules a method_38962 + p 0 glowSquid + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (I)V setDarkTicks c method_33333 + p 1 darkTicks + m ()I getDarkTicksRemaining x method_33334 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/HasCustomInventoryScreen btf net/minecraft/class_7248 + m (Lnet/minecraft/world/entity/player/Player;)V openCustomInventoryScreen b method_6722 + p 1 player +c net/minecraft/world/entity/HumanoidArm btg net/minecraft/class_1306 + f Lnet/minecraft/world/entity/HumanoidArm; LEFT a field_6182 + f Lnet/minecraft/world/entity/HumanoidArm; RIGHT b field_6183 + f Lcom/mojang/serialization/Codec; CODEC c field_45121 + f Ljava/util/function/IntFunction; BY_ID d field_46166 + f I id e field_38385 + f Ljava/lang/String; name f field_6181 + f Ljava/lang/String; translationKey g field_45122 + f [Lnet/minecraft/world/entity/HumanoidArm; $VALUES h field_6180 + m ()Lnet/minecraft/world/entity/HumanoidArm; getOpposite e method_5928 + m ()[Lnet/minecraft/world/entity/HumanoidArm; $values f method_36606 + m (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V + p 3 id + p 4 name + p 5 translationKey + m ()V +c net/minecraft/world/entity/Interaction bth net/minecraft/class_8150 + f Lorg/slf4j/Logger; LOGGER b field_42624 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WIDTH_ID c field_42625 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEIGHT_ID d field_42626 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RESPONSE_ID e field_42627 + f Ljava/lang/String; TAG_WIDTH f field_42628 + f Ljava/lang/String; TAG_HEIGHT g field_42629 + f Ljava/lang/String; TAG_ATTACK h field_42630 + f Ljava/lang/String; TAG_INTERACTION i field_42631 + f Ljava/lang/String; TAG_RESPONSE j field_42632 + f Lnet/minecraft/world/entity/Interaction$PlayerAction; attack k field_42633 + f Lnet/minecraft/world/entity/Interaction$PlayerAction; interaction l field_42634 + m (F)V setWidth a method_49109 + p 1 width + m (Lcom/mojang/datafixers/util/Pair;)V method_49110 a method_49110 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49111 a method_49111 + m (Z)V setResponse a method_49112 + p 1 response + m (F)V setHeight b method_49113 + p 1 height + m (Lcom/mojang/datafixers/util/Pair;)V method_49114 b method_49114 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49115 b method_49115 + m ()F getWidth s method_49116 + m ()F getHeight t method_49117 + m ()Z getResponse v method_49118 + m ()Lnet/minecraft/world/entity/EntityDimensions; getDimensions w method_49119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Interaction$PlayerAction bth$a net/minecraft/class_8150$class_8151 + f Lcom/mojang/serialization/Codec; CODEC a field_42635 + f Ljava/util/UUID; player b comp_1284 + f J timestamp c comp_1285 + m ()Ljava/util/UUID; player a comp_1284 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49120 a method_49120 + m ()J timestamp b comp_1285 + m (Ljava/util/UUID;J)V + m ()V +c net/minecraft/world/entity/ItemBasedSteering bti net/minecraft/class_4980 + f I MIN_BOOST_TIME a field_30060 + f I MAX_BOOST_TIME b field_30061 + f Lnet/minecraft/network/syncher/SynchedEntityData; entityData c field_23218 + f Lnet/minecraft/network/syncher/EntityDataAccessor; boostTimeAccessor d field_23219 + f Lnet/minecraft/network/syncher/EntityDataAccessor; hasSaddleAccessor e field_23220 + f Z boosting f field_23215 + f I boostTime g field_23216 + m ()V onSynced a method_26307 + m (Lnet/minecraft/util/RandomSource;)Z boost a method_26308 + p 1 random + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData a method_26309 + p 1 nbt + m (Z)V setSaddle a method_26310 + p 1 saddled + m ()V tickBoost b method_49478 + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData b method_26312 + p 1 nbt + m ()F boostFactor c method_49479 + m ()Z hasSaddle d method_26311 + m ()I boostTimeTotal e method_49480 + m (Lnet/minecraft/network/syncher/SynchedEntityData;Lnet/minecraft/network/syncher/EntityDataAccessor;Lnet/minecraft/network/syncher/EntityDataAccessor;)V + p 1 entityData + p 2 boostTimeAccessor + p 3 hasSaddleAccessor +c net/minecraft/world/entity/ItemSteerable btj net/minecraft/class_4981 + m ()Z boost a method_6577 +c net/minecraft/world/entity/Leashable btk net/minecraft/class_9817 + f Ljava/lang/String; LEASH_TAG b_ field_52216 + f D LEASH_TOO_FAR_DIST q_ field_52314 + f D LEASH_ELASTIC_DIST r_ field_52315 + m ()Lnet/minecraft/world/entity/Entity; getLeashHolder A method_60952 + m ()Z isLeashed N_ method_60953 + m ()Z mayBeLeashed O_ method_60954 + m ()Lnet/minecraft/world/entity/Leashable$LeashData; getLeashData X_ method_60955 + m (Lnet/minecraft/world/entity/Entity;F)Z handleLeashAtDistance a method_60956 + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;F)V legacyElasticRangeLeashBehaviour a method_61161 + p 0 entity + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Z)V setLeashedTo a method_60957 + p 0 entity + p 1 leashHolder + p 2 broadcastPacket + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Leashable$LeashData;)V restoreLeashFromSave a method_60958 + p 0 entity + p 1 leashData + m (Lnet/minecraft/world/entity/Entity;ZZ)V dropLeash a method_60959 + p 0 entity + p 1 broadcastPacket + p 2 dropItem + m (Lnet/minecraft/world/entity/Leashable$LeashData;)V setLeashData a method_60960 + p 1 leashData + m (Ljava/util/UUID;)Lnet/minecraft/nbt/Tag; method_60961 a method_60961 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/entity/Leashable$LeashData;)V writeLeashData a method_60962 + p 1 tag + p 2 leashData + m (ZZ)V dropLeash a method_5932 + p 1 broadcastPacket + p 2 dropItem + m (Lnet/minecraft/world/entity/Entity;)V closeRangeLeashBehaviour b method_60963 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)V elasticRangeLeashBehaviour b method_61162 + p 1 leashHolder + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Z)V setLeashedTo b method_60964 + p 1 leashHolder + p 2 broadcastPacket + m (Lnet/minecraft/world/entity/Entity;)V tickLeash b_ method_60965 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getLeashHolder c method_60966 + p 0 entity + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/Leashable$LeashData; readLeashData c method_60967 + p 1 tag + m (I)V setDelayedLeashHolderId h_ method_60968 + p 1 delayedLeashHolderId + m ()Z canHaveALeashAttachedToIt q method_60969 + m ()Z canBeLeashed y method_5931 + m ()V leashTooFarBehaviour z method_60970 +c net/minecraft/world/entity/Leashable$LeashData btk$a net/minecraft/class_9817$class_9818 + f Lnet/minecraft/world/entity/Entity; leashHolder a field_52217 + f Lcom/mojang/datafixers/util/Either; delayedLeashInfo b field_52218 + f I delayedLeashHolderId c field_52219 + m (Lnet/minecraft/world/entity/Entity;)V setLeashHolder a method_60971 + p 1 leashHolder + m (Lcom/mojang/datafixers/util/Either;)V + p 1 delayedLeashInfo + m (Lnet/minecraft/world/entity/Entity;)V + p 1 leashHolder + m (I)V + p 1 delayedLeashInfoId +c net/minecraft/world/entity/LerpingModel btl net/minecraft/class_6375 + m ()Ljava/util/Map; getModelRotationValues a method_36976 +c net/minecraft/world/entity/LightningBolt btm net/minecraft/class_1538 + f J seed b field_7186 + f I START_LIFE c field_30062 + f D DAMAGE_RADIUS d field_33906 + f D DETECTION_RADIUS e field_33907 + f I life f field_7185 + f I flashes g field_7183 + f Z visualOnly h field_7184 + f Lnet/minecraft/server/level/ServerPlayer; cause i field_7182 + f Ljava/util/Set; hitEntities j field_33904 + f I blocksSetOnFire k field_33905 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_34708 a method_34708 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)V randomWalkCleaningCopper a method_34709 + p 0 level + p 1 pos + p 2 mutable + p 3 steps + m (Z)V setVisualOnly a method_29498 + p 1 visualOnly + m (I)V spawnFire b method_6960 + p 1 extraIgnitions + m (Lnet/minecraft/server/level/ServerPlayer;)V setCause b method_6961 + p 1 cause + m (Lnet/minecraft/world/entity/Entity;)Z method_37218 b method_37218 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V clearCopperOnLightningStrike b method_34707 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_37219 c method_37219 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; randomStepCleaningCopper c method_34710 + p 0 level + p 1 pos + m ()Lnet/minecraft/server/level/ServerPlayer; getCause p method_35052 + m ()I getBlocksSetOnFire s method_37220 + m ()Ljava/util/stream/Stream; getHitEntities t method_37221 + m ()V powerLightningRod v method_31499 + m ()Lnet/minecraft/core/BlockPos; getStrikePosition w method_36607 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/LivingEntity btn net/minecraft/class_1309 + c @return null or the {@linkplain LivingEntity} it was ignited by + f I LIVING_ENTITY_FLAG_SPIN_ATTACK aD field_30066 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LIVING_ENTITY_FLAGS aE field_6257 + f Lnet/minecraft/world/entity/EntityDimensions; SLEEPING_DIMENSIONS aF field_18072 + f F EXTRA_RENDER_CULLING_SIZE_WITH_BIG_HAT aG field_30068 + f F DEFAULT_BABY_SCALE aH field_47756 + f Ljava/lang/String; ATTRIBUTES_FIELD aI field_51995 + f Z swinging aJ field_6252 + f Lnet/minecraft/world/InteractionHand; swingingArm aK field_6266 + f I swingTime aL field_6279 + f I removeArrowTime aM field_6218 + f I removeStingerTime aN field_20347 + f I hurtTime aO field_6235 + f I hurtDuration aP field_6254 + f I deathTime aQ field_6213 + f F oAttackAnim aR field_6229 + f F attackAnim aS field_6251 + f I attackStrengthTicker aT field_6273 + f Lnet/minecraft/world/entity/WalkAnimationState; walkAnimation aU field_42108 + f I invulnerableDuration aV field_6269 + f F timeOffs aW field_6244 + f F rotA aX field_6262 + f F yBodyRot aY field_6283 + f F yBodyRotO aZ field_6220 + f I useItemRemaining bA field_6222 + f I fallFlyTicks bB field_6239 + f I autoSpinAttackTicks bC field_6261 + f F autoSpinAttackDmg bD field_51569 + f Lnet/minecraft/world/item/ItemStack; autoSpinAttackItemStack bE field_51570 + f Lnet/minecraft/world/entity/ai/Brain; brain bF field_18321 + f F appliedScale bG field_47757 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_SPRINTING bH field_6231 + f I DAMAGE_SOURCE_TIMEOUT bI field_30078 + f I TICKS_PER_ELYTRA_FREE_FALL_EVENT bJ field_30080 + f I FREE_FALL_EVENTS_PER_ELYTRA_BREAK bK field_30081 + f D MAX_LINE_OF_SIGHT_TEST_RANGE bL field_33908 + f Lorg/slf4j/Logger; LOGGER b field_36332 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEALTH_ID bM field_6247 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_EFFECT_PARTICLES bN field_49792 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_EFFECT_AMBIENCE_ID bO field_6214 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ARROW_COUNT_ID bP field_6219 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STINGER_COUNT_ID bQ field_20348 + f Lnet/minecraft/network/syncher/EntityDataAccessor; SLEEPING_POS_ID bR field_18073 + f I PARTICLE_FREQUENCY_WHEN_INVISIBLE bS field_49793 + f F ITEM_USE_EFFECT_START_FRACTION bT field_49972 + f Lnet/minecraft/world/entity/ai/attributes/AttributeMap; attributes bU field_6260 + f Lnet/minecraft/world/damagesource/CombatTracker; combatTracker bV field_6256 + f Ljava/util/Map; activeEffects bW field_6280 + f Lnet/minecraft/core/NonNullList; lastHandItemStacks bX field_6234 + f Lnet/minecraft/core/NonNullList; lastArmorItemStacks bY field_6248 + f Lnet/minecraft/world/item/ItemStack; lastBodyItemStack bZ field_48826 + f F yHeadRot ba field_6241 + f F yHeadRotO bb field_6259 + f Lnet/minecraft/world/entity/player/Player; lastHurtByPlayer bc field_6258 + f I lastHurtByPlayerTime bd field_6238 + f Z dead be field_6272 + f I noActionTime bf field_6278 + f F oRun bg field_6217 + f F run bh field_6233 + f F animStep bi field_6255 + f F animStepO bj field_6275 + f F rotOffs bk field_6215 + f I deathScore bl field_6232 + f F lastHurt bm field_6253 + c Damage taken in the last hit. Mobs are resistant to damage less than this for a short time after taking damage. + f Z jumping bn field_6282 + f F xxa bo field_6212 + f F yya bp field_6227 + f F zza bq field_6250 + f I lerpSteps br field_6210 + f D lerpX bs field_6224 + f D lerpY bt field_6245 + f D lerpZ bu field_6263 + f D lerpYRot bv field_6284 + f D lerpXRot bw field_6221 + f D lerpYHeadRot bx field_45123 + f I lerpHeadSteps by field_6265 + f Lnet/minecraft/world/item/ItemStack; useItem bz field_6277 + f Ljava/lang/String; TAG_ACTIVE_EFFECTS c field_45740 + f Z discardFriction ca field_30082 + f Z effectsDirty cb field_6285 + f Lnet/minecraft/world/entity/LivingEntity; lastHurtByMob cc field_6274 + f I lastHurtByMobTimestamp cd field_6230 + f Lnet/minecraft/world/entity/LivingEntity; lastHurtMob ce field_6236 + f I lastHurtMobTimestamp cf field_6270 + c Holds the value of ticksExisted when setLastAttacker was last called. + f F speed cg field_6287 + f I noJumpDelay ch field_6228 + f F absorptionAmount ci field_6246 + f Lnet/minecraft/core/BlockPos; lastPos cj field_6268 + f Ljava/util/Optional; lastClimbablePos ck field_22418 + f Lnet/minecraft/world/damagesource/DamageSource; lastDamageSource cl field_6276 + f J lastDamageStamp cm field_6226 + f F swimAmount cn field_6243 + f F swimAmountO co field_6264 + f Z skipDropExperience cp field_37421 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; activeLocationDependentEnchantments cq field_51571 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_POWDER_SNOW_ID d field_27859 + f Lnet/minecraft/resources/ResourceLocation; SPRINTING_MODIFIER_ID e field_51996 + f I HAND_SLOTS i field_30069 + f I ARMOR_SLOTS j field_30070 + f I EQUIPMENT_SLOT_OFFSET k field_30071 + f I ARMOR_SLOT_OFFSET l field_30072 + f I BODY_ARMOR_OFFSET m field_48827 + f I SWING_DURATION n field_30073 + f I PLAYER_HURT_EXPERIENCE_TIME o field_30074 + f D MIN_MOVEMENT_DISTANCE p field_30075 + f D DEFAULT_BASE_GRAVITY q field_30076 + f I DEATH_DURATION r field_30077 + f I USE_ITEM_INTERVAL s field_30063 + f F BASE_JUMP_POWER t field_44874 + f I LIVING_ENTITY_FLAG_IS_USING u field_30064 + f I LIVING_ENTITY_FLAG_OFF_HAND v field_30065 + m (F)V setSpeed A method_6125 + c Sets the movespeed used for the new AI system. + p 1 speed + m (Lnet/minecraft/world/entity/Entity;)V setLastHurtMob A method_6114 + p 1 entity + m ()V refreshDirtyAttributes B method_52543 + m (F)F getAttackAnim B method_6055 + c Gets the progression of the swing animation, ranges from 0.0 to 1.0. + p 1 partialTick + m (Lnet/minecraft/world/entity/Entity;)D getVisibilityPercent B method_18390 + p 1 lookingEntity + m ()I getCurrentSwingDuration C method_6028 + c Returns an integer indicating the end point of the swing animation, used by {@link #swingProgress} to provide a progress indicator. Takes dig speed enchantments into account. + m (F)V setAbsorptionAmount C method_6073 + p 1 absorptionAmount + m (Lnet/minecraft/world/entity/Entity;)V dropExperience C method_23883 + p 1 entity + m ()V makePoofParticles D method_36549 + m (F)V internalSetAbsorptionAmount D method_52544 + p 1 absorptionAmount + m (Lnet/minecraft/world/entity/Entity;)Z doHurtTarget D method_6121 + p 1 target + m ()V swapHandItems E method_30127 + m (F)F getFrictionInfluencedSpeed E method_18802 + p 1 friction + m (Lnet/minecraft/world/entity/Entity;)V doPush E method_6087 + p 1 entity + m ()V detectEquipmentUpdates F method_30128 + m (Lnet/minecraft/world/entity/Entity;)Z hasLineOfSight F method_6057 + p 1 entity + m ()Ljava/util/Map; collectEquipmentChanges H method_30129 + m ()V updateFallFlying I method_6053 + c Called each tick. Updates state for the elytra. + m ()V updatingUsingItem J method_6076 + m ()V updateInvisibilityStatus K method_6027 + c Clears potion metadata values if the entity has no potion effects. Otherwise, updates potion effect color, ambience, and invisibility metadata values + m ()Z shouldTriggerItemUseEffects L method_22382 + m ()V completeUsingItem L_ method_6040 + c Used for when item use count runs out, ie: eating completed + m ()V updateSwimAmount N method_6072 + m ()Z checkBedExists O method_18406 + m (DD)V indicateDamage a method_48761 + p 1 xDistance + p 3 zDistance + m (DZLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getFluidFallingAdjustedMovement a method_26317 + p 1 gravity + p 3 isFalling + p 4 deltaMovement + m (F)F getSwimAmount a method_6024 + p 1 partialTicks + m (ID)V lerpHeadRotationStep a method_52539 + p 1 lerpHeadSteps + p 2 lerpYHeadRot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V dropAllDeathLoot a method_16080 + p 1 level + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;Z)V dropCustomDeathLoot a method_6099 + p 1 level + p 2 damageSource + p 3 recentlyHit + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)I getExperienceReward a method_59923 + p 1 level + p 2 killer + m (Lnet/minecraft/world/InteractionHand;)V swing a method_6104 + p 1 hand + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)V setItemInHand a method_6122 + p 1 hand + p 2 stack + m (Lnet/minecraft/world/InteractionHand;Z)V swing a method_23667 + p 1 hand + p 2 updateSelf + m (Lnet/minecraft/world/damagesource/DamageSource;)V die a method_6078 + c Called when the mob's health reaches 0. + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F[Lnet/minecraft/world/entity/EquipmentSlot;)V doHurtEquipment a method_57292 + p 1 damageSource + p 2 damageAmount + p 3 slots + m (Lnet/minecraft/world/damagesource/DamageSource;Z)V dropFromLootTable a method_16077 + p 1 damageSource + p 2 hitByPlayer + m (Lnet/minecraft/world/effect/MobEffectInstance;)V onEffectRemoved a method_6129 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)V onEffectAdded a method_6020 + p 1 effectInstance + p 2 entity + m (Lnet/minecraft/world/effect/MobEffectInstance;ZLnet/minecraft/world/entity/Entity;)V onEffectUpdated a method_6009 + p 1 effectInstance + p 2 forced + p 3 entity + m (Lnet/minecraft/world/entity/Entity;I)V take a method_6103 + c Called when the entity picks up an item. + p 1 entity + p 2 amount + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)F getKnockback a method_59924 + p 1 attacker + p 2 damageSource + m (Lnet/minecraft/world/entity/EntityType;)Z canAttackType a method_5973 + p 1 entityType + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getItemBySlot a method_6118 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlot a method_5673 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V onEquipItem a method_6116 + p 1 slot + p 2 oldItem + p 3 newItem + m (Lnet/minecraft/world/entity/LivingEntity;)V setLastHurtByMob a method_6015 + c Hint to AI tasks that we were attacked by the passed EntityLivingBase and should retaliate. Is not guaranteed to change our actual active target (for example if we are currently busy attacking someone else) + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/SlotAccess; createEquipmentSlotAccess a method_32321 + p 0 entity + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)Z method_32323 a method_32323 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;)Z canAttack a method_18391 + p 1 livingentity + p 2 condition + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57294 a method_57294 + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onItemPickup a method_29499 + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)V tickRidden a method_49481 + p 1 player + p 2 travelVector + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_18867 + p 1 dynamic + m (Lnet/minecraft/world/food/FoodProperties;)V addEatEffect a method_18865 + p 1 foodProperties + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/entity/EquipmentSlot;)V onEquippedItemBroken a method_20235 + p 1 item + p 2 slot + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/ItemStack;)Z method_24519 a method_24519 + m (Lnet/minecraft/world/item/ItemStack;)V updateUsingItem a method_37119 + p 1 usingItem + m (Lnet/minecraft/world/item/ItemStack;I)V spawnItemParticles a method_6037 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57293 a method_57293 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z equipmentHasChanged a method_45324 + p 1 oldItem + p 2 newItem + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; eat a method_60492 + p 1 level + p 2 food + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/food/FoodProperties;)Lnet/minecraft/world/item/ItemStack; eat a method_18866 + p 1 level + p 2 food + p 3 foodProperties + m (Lnet/minecraft/world/level/material/FluidState;)Z canStandOnFluid a method_26319 + p 1 fluidState + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/phys/AABB;)V checkAutoSpinAttack a method_6035 + p 1 boundingBoxBeforeSpin + p 2 boundingBoxAfterSpin + m (Lnet/minecraft/world/phys/Vec3;)V travel a method_6091 + p 1 travelVector + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; handleRelativeFrictionAndCalculateMovement a method_26318 + p 1 deltaMovement + p 2 friction + m (Ljava/util/List;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V method_30120 a method_30120 + m (Ljava/util/Map;)V handleHandSwap a method_30121 + p 1 hands + m (Lnet/minecraft/core/BlockPos;)V setPosToBed a method_18392 + c Sets entity position to a supplied BlockPos plus a little offset + p 1 pos + m (Lnet/minecraft/core/BlockPos;Z)V setRecordPlayingNearby a method_6006 + c Called when a record starts or stops playing. Used to make parrots start or stop partying. + p 1 jukebox + p 2 partyParrot + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/BlockPos;)V method_18393 a method_18393 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28305 a method_28305 + m (DDDZ)Z randomTeleport b method_6082 + p 1 x + p 3 y + p 5 z + p 7 broadcastTeleport + m (F)F sanitizeScale b method_56077 + p 1 scale + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V onChangedBlock b method_6126 + p 1 level + p 2 pos + m (Lnet/minecraft/sounds/SoundEvent;)V makeSound b method_56078 + p 1 sound + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/item/ItemStack; getItemInHand b method_5998 + p 1 hand + m (Lnet/minecraft/world/damagesource/DamageSource;F)V hurtArmor b method_6105 + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z addEffect b method_6092 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)Z addEffect b method_37222 + p 1 effectInstance + p 2 entity + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z doesEmitEquipEvent b method_44201 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setLastArmorItem b method_30122 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getRiddenInput b method_49482 + p 1 player + p 2 travelVector + m (Lnet/minecraft/world/item/Item;)Z isHolding b method_24518 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;I)V triggerItemUseEffects b method_6098 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; handleOnClimbable b method_18801 + p 1 deltaMovement + m (Ljava/util/Map;)V handleEquipmentChanges b method_30123 + p 1 equipments + m (Ljava/util/function/Predicate;)Z isHolding b method_24520 + p 1 predicate + m (Lnet/minecraft/core/BlockPos;)V startSleeping b method_18403 + p 1 pos + m (Lnet/minecraft/core/Holder;)Z hasEffect b method_6059 + p 1 effect + m (F)V heal c method_6025 + c Heal living entity (param: amount of half-hearts) + p 1 healAmount + m (IZ)V setLivingEntityFlag c method_6085 + p 1 key + p 2 value + m (Lnet/minecraft/tags/TagKey;)V jumpInLiquid c method_6010 + p 1 fluidTag + m (Lnet/minecraft/world/InteractionHand;)V startUsingItem c method_6019 + p 1 hand + m (Lnet/minecraft/world/damagesource/DamageSource;F)V hurtHelmet c method_36977 + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)Z canBeAffected c method_6049 + p 1 effectInstance + m (Lnet/minecraft/world/effect/MobEffectInstance;Lnet/minecraft/world/entity/Entity;)V forceAddEffect c method_26082 + p 1 instance + p 2 entity + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V triggerOnDeathMobEffects c method_60699 + p 1 removalReason + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z hasItemInSlot c method_6084 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setLastHandItem c method_30124 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/LivingEntity;)Z canAttack c method_18395 + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V setLastHurtByPlayer c method_29505 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/Vec3;)V travelRidden c method_49483 + p 1 player + p 2 travelVector + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/sounds/SoundEvent; getDrinkingSound c method_18807 + p 1 stack + m (Ljava/util/Collection;)Z areAllEffectsAmbient c method_6089 + c Returns {@code true} if all the potion effects in the specified collection are ambient. + p 0 potionEffects + m (Lnet/minecraft/core/BlockPos;)V method_18404 c method_18404 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z trapdoorUsableAsLadder c method_6077 + p 1 pos + p 2 state + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/effect/MobEffectInstance; getEffect c method_6112 + p 1 effect + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/entity/EquipmentSlot; getSlotForHand d method_56079 + p 0 hand + m (Lnet/minecraft/world/damagesource/DamageSource;)Lnet/minecraft/sounds/SoundEvent; getHurtSound d method_6011 + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F)F getDamageAfterArmorAbsorb d method_6132 + c Reduces damage, depending on armor + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)V sendEffectToPassengers d method_52197 + p 1 effectInstance + m (Lnet/minecraft/world/entity/Entity;)V dismountVehicle d method_6038 + p 1 vehicle + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z canUseSlot d method_56991 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V blockUsingShield d method_6090 + p 1 attacker + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/sounds/SoundEvent; getEatingSound d method_18869 + p 1 stack + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/effect/MobEffectInstance; removeEffectNoUpdate d method_6111 + p 1 effect + m ()Lnet/minecraft/world/entity/ai/Brain; getBrain dT method_18868 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider dU method_28306 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createLivingAttributes dV method_26827 + m ()Z canBreatheUnderwater dW method_6094 + m ()Z hasLandedInLiquid dX method_59925 + m ()V removeFrost dY method_32324 + m ()V tryAddFrost dZ method_32325 + m (FF)I calculateFallDamage e method_23329 + p 1 fallDistance + p 2 damageMultiplier + m (Lnet/minecraft/world/damagesource/DamageSource;)V playHurtSound e method_6013 + p 1 source + m (Lnet/minecraft/world/damagesource/DamageSource;F)F getDamageAfterMagicAbsorb e method_6036 + c Reduces damage, depending on potions + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/effect/MobEffectInstance;)V method_24311 e method_24311 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getLastArmorItem e method_30125 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V blockedByShield e method_6060 + p 1 defender + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/entity/EntityDimensions; getDefaultDimensions e method_55694 + p 1 pose + m (Lnet/minecraft/world/entity/player/Player;)F getRiddenSpeed e method_49485 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)V verifyEquippedItem e method_37410 + p 1 stack + m (Lnet/minecraft/core/Holder;)Z removeEffect e method_6016 + p 1 effect + m ()Lnet/minecraft/resources/ResourceKey; getLootTable eA method_5989 + m ()J getLootTableSeed eB method_51851 + m ()V skipDropExperience eC method_41329 + m ()Z wasExperienceConsumed eD method_41330 + m ()F getHurtDir eE method_48157 + m ()Lnet/minecraft/world/phys/AABB; getHitbox eF method_53510 + m ()Ljava/util/Map; activeLocationDependentEnchantments eG method_59926 + m ()Lnet/minecraft/world/entity/LivingEntity$Fallsounds; getFallSounds eH method_39760 + m ()Ljava/util/Optional; getLastClimbablePos eI method_24832 + m ()V playBlockFallSound eJ method_23328 + c Plays the fall sound for the block landed on + m ()I getArmorValue eK method_6096 + c Returns the current armor value as determined by a call to InventoryPlayer.getTotalArmorValue + m ()Lnet/minecraft/world/damagesource/CombatTracker; getCombatTracker eL method_6066 + c 1.8.9 + m ()Lnet/minecraft/world/entity/LivingEntity; getKillCredit eM method_6124 + m ()F getMaxHealth eN method_6063 + c Returns the maximum health of the entity (what it is able to regenerate up to, what it spawned with, etc.) + m ()F getMaxAbsorption eO method_52541 + m ()I getArrowCount eP method_6022 + c Counts the amount of arrows stuck in the entity. Getting hit by arrows increases this, used for rendering. + m ()I getStingerCount eQ method_21753 + m ()V updateSwingTime eR method_6119 + c Updates the arm swing progress counters and animation progress + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeMap; getAttributes eS method_6127 + m ()Lnet/minecraft/world/item/ItemStack; getMainHandItem eT method_6047 + m ()Lnet/minecraft/world/item/ItemStack; getOffhandItem eU method_6079 + m ()Ljava/lang/Iterable; getArmorSlots eV method_5661 + m ()Ljava/lang/Iterable; getHandSlots eW method_5877 + m ()Ljava/lang/Iterable; getArmorAndBodyArmorSlots eX method_56674 + m ()Ljava/lang/Iterable; getAllSlots eY method_56675 + m ()F getArmorCoverPercentage eZ method_18396 + m ()F getAgeScale ea method_17825 + m ()F getScale eb method_55693 + m ()Z isAffectedByFluids ec method_29920 + m ()V tickDeath ed method_6108 + c Handles entity death timer, experience orb, and particle creation. + m ()Z shouldDropExperience ee method_6054 + c Entity won't drop experience points if this returns false + m ()Z shouldDropLoot ef method_27071 + c Entity won't drop items if this returns false + m ()I getBaseExperienceReward eg method_6110 + m ()Z isAlwaysExperienceDropper eh method_6071 + c Only use is to identify if class is an instance of player for experience dropping + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtByMob ei method_6065 + m ()I getLastHurtByMobTimestamp ej method_6117 + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtMob ek method_6052 + m ()I getLastHurtMobTimestamp el method_6083 + m ()I getNoActionTime em method_6131 + m ()Z shouldDiscardFriction en method_35053 + m ()V tickEffects eo method_6050 + m ()Z canBeSeenAsEnemy ep method_33190 + m ()Z canBeSeenByAnyone eq method_36608 + m ()V removeEffectParticles er method_6069 + c Resets the potion effect color and ambience metadata values + m ()Z removeAllEffects es method_6012 + m ()Ljava/util/Collection; getActiveEffects et method_6026 + m ()Ljava/util/Map; getActiveEffectsMap eu method_6088 + m ()Z isInvertedHealAndHarm ev method_5999 + c Returns {@code true} if this entity is undead. + m ()F getHealth ew method_6032 + m ()Z isDeadOrDying ex method_29504 + m ()Lnet/minecraft/world/damagesource/DamageSource; getLastDamageSource ey method_6081 + m ()V dropEquipment ez method_16078 + m (FF)F tickHeadTurn f method_6031 + p 1 yRot + p 2 animStep + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isDamageSourceBlocked f method_6061 + c Determines whether the entity can block the damage source based on the damage source's location, whether the damage source is blockable, and whether the entity is blocking. + p 1 damageSource + m (Lnet/minecraft/world/damagesource/DamageSource;F)V actuallyHurt f method_6074 + c Deals damage to the entity. This will take the armor of the entity into consideration before damaging the health bar. + p 1 damageSource + p 2 damageAmount + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; getLastHandItem f method_30126 + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V createWitherRose f method_23733 + p 1 entitySource + m (Lnet/minecraft/world/entity/Pose;)Lnet/minecraft/world/phys/AABB; getLocalBoundsForPose f method_24833 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Z canTakeItem f method_18397 + p 1 stack + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttribute f method_5996 + p 1 attribute + m ()Z isFallFlying fA method_6128 + m ()I getFallFlyingTicks fB method_6003 + m ()Z isAffectedByPotions fC method_6086 + c Returns false if the entity is an armor stand. Returns {@code true} for all other entity living bases. + m ()Z attackable fD method_6102 + m ()Lcom/google/common/collect/ImmutableList; getDismountPoses fE method_24831 + m ()Ljava/util/Optional; getSleepingPos fF method_18398 + m ()V clearSleepingPos fG method_18399 + m ()Z isSleeping fH method_6113 + c Returns whether player is sleeping or not + m ()V stopSleeping fI method_18400 + m ()Lnet/minecraft/core/Direction; getBedOrientation fJ method_18401 + c Gets the {@link net.minecraft.core.Direction} for the camera if this entity is sleeping. + m ()Z canDisableShield fK method_42149 + m ()Z hasInfiniteMaterials fL method_56992 + m ()V onEnterCombat f_ method_6000 + c Sends an ENTER_COMBAT packet to the client + m ()F getSoundVolume fa method_6107 + c Returns the volume for the sounds this mob makes. + m ()F getVoicePitch fb method_6017 + c Gets the pitch of living sounds in living entities. + m ()Z isImmobile fc method_6062 + c Dead and sleeping entities cannot move + m ()F getJumpPower fd method_6106 + m ()F getJumpBoostPower fe method_37416 + m ()V jumpFromGround ff method_6043 + c Causes this entity to do an upwards motion (jumping). + m ()V goDownInWater fg method_6093 + m ()F getWaterSlowDown fh method_6120 + m ()F getFlyingSpeed fi method_49484 + m ()F getSpeed fj method_6029 + c Gets the movespeed used for the new AI system. + m ()F getMaxHeadRotationRelativeToBody fk method_53964 + m ()Z isSensitiveToWater fl method_29503 + m ()V serverAiStep fm method_6023 + m ()Z isAutoSpinAttack fn method_6123 + m ()F getAbsorptionAmount fo method_6067 + c Returns the amount of health added by the Absorption effect. + m ()V updateEffectVisibility fp method_6008 + m ()Lnet/minecraft/world/entity/HumanoidArm; getMainArm fq method_6068 + m ()Z isUsingItem fr method_6115 + m ()Lnet/minecraft/world/InteractionHand; getUsedItemHand fs method_6058 + m ()Lnet/minecraft/world/item/ItemStack; getUseItem ft method_6030 + m ()I getUseItemRemainingTicks fu method_6014 + m ()I getTicksUsingItem fv method_6048 + m ()V releaseUsingItem fw method_6075 + m ()V stopUsingItem fx method_6021 + m ()Z isBlocking fy method_6039 + m ()Z isSuppressingSlidingDownLadder fz method_21754 + m (Lnet/minecraft/world/damagesource/DamageSource;)Z checkTotemDeathProtection g method_6095 + p 1 damageSource + m (Lnet/minecraft/world/entity/EquipmentSlot;)B entityEventForEquipmentBreak g method_20237 + p 0 slot + m (Lnet/minecraft/world/entity/LivingEntity;)V doAutoAttackOnTouch g method_5997 + p 1 target + m (Lnet/minecraft/world/entity/Pose;)Z wouldNotSuffocateAtTargetPose g method_52542 + p 1 pose + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; getProjectile g method_18808 + c Gets an item stack available to this entity to be loaded into the provided weapon, or an empty item stack if no such item stack is available. + p 1 weaponStack + m (Lnet/minecraft/core/BlockPos;)V setSleepingPos g method_18402 + p 1 pos + m (Lnet/minecraft/core/Holder;)D getAttributeValue g method_45325 + p 1 attribute + m ()V onLeaveCombat g_ method_6044 + c Sends an END_COMBAT packet to the client + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlotForItem h method_32326 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_20477 h method_20477 + m (Lnet/minecraft/core/Holder;)D getAttributeBaseValue h method_45326 + p 1 attribute + m (Lnet/minecraft/world/item/ItemStack;)V breakItem i method_6045 + c Renders broken item particles using the given ItemStack + p 1 stack + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_18405 i method_18405 + m (Lnet/minecraft/core/Holder;)V onAttributeUpdated i method_52540 + p 1 attribute + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; resetForwardDirectionOfRelativePortalPosition k method_31079 + p 0 relativePortalPosition + m (I)I decreaseAirSupply m method_6130 + c Decrements the entity's air supply when underwater + p 1 currentAir + m ()V aiStep m_ method_6007 + c Called every tick so the entity can update its state as required. For example, zombies and skeletons use this to react to sunlight and start to burn. + m (I)I increaseAirSupply n method_6064 + p 1 currentAir + m ()Lnet/minecraft/sounds/SoundEvent; getDeathSound n_ method_6002 + m (I)V setNoActionTime o method_16826 + p 1 idleTime + m ()Z isBaby o_ method_6109 + c If Animal, checks if the age timer is negative + m (DDD)V knockback p method_6005 + p 1 strength + p 3 x + p 5 z + m (I)V setArrowCount p method_6097 + c Sets the amount of arrows stuck in the entity. Used for rendering those. + p 1 count + m ()Z onClimbable p_ method_6101 + c Returns {@code true} if this entity should move as if it were on a ladder (either because it's actually on a ladder, or for AI reasons) + m (I)V setStingerCount q method_21755 + p 1 stingerCount + m ()V pushEntities r method_6070 + m (I)Lnet/minecraft/sounds/SoundEvent; getFallDamageSound r method_6041 + p 1 height + m (Z)V setDiscardFriction r method_35054 + p 1 discardFriction + m ()V updateSynchronizedMobEffectParticles s method_58150 + m (I)Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlot s method_32322 + p 0 index + m (Z)V calculateEntityAnimation s method_29242 + p 1 includeHeight + m (Z)V setJumping t method_6100 + p 1 jumping + m ()V updateGlowingStatus v method_36362 + m (F)V setHealth v method_6033 + p 1 health + m (F)I getComfortableFallDistance w method_56993 + p 1 health + m (F)V hurtCurrentlyUsedShield x method_6056 + p 1 damageAmount + m (F)F getJumpPower y method_56994 + p 1 multiplier + m (F)V updateWalkAnimation z method_48565 + p 1 partialTick + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/LivingEntity$1 btn$1 net/minecraft/class_1309$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_6288 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot b field_19169 + m ()V +c net/minecraft/world/entity/LivingEntity$Fallsounds btn$a net/minecraft/class_1309$class_6823 + f Lnet/minecraft/sounds/SoundEvent; small a comp_301 + f Lnet/minecraft/sounds/SoundEvent; big b comp_302 + m ()Lnet/minecraft/sounds/SoundEvent; small a comp_301 + m ()Lnet/minecraft/sounds/SoundEvent; big b comp_302 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V +c net/minecraft/world/entity/Marker bto net/minecraft/class_6335 + f Ljava/lang/String; DATA_TAG b field_33457 + f Lnet/minecraft/nbt/CompoundTag; data c field_33458 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/Mob btp net/minecraft/class_1308 + f F MAX_WEARING_ARMOR_CHANCE bH field_30091 + f F MAX_PICKUP_LOOT_CHANCE bI field_30083 + f F MAX_ENCHANTED_ARMOR_CHANCE bJ field_30084 + f F MAX_ENCHANTED_WEAPON_CHANCE bK field_30085 + f F DEFAULT_EQUIPMENT_DROP_CHANCE bL field_34043 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_MOB_FLAGS_ID b field_6193 + f F PRESERVE_ITEM_DROP_CHANCE_THRESHOLD bM field_52220 + f I PRESERVE_ITEM_DROP_CHANCE bN field_38932 + f I UPDATE_GOAL_SELECTOR_EVERY_N_TICKS bO field_35039 + f Lnet/minecraft/resources/ResourceLocation; RANDOM_SPAWN_BONUS_ID bP field_51997 + f I ambientSoundTime bQ field_6191 + f I xpReward bR field_6194 + f Lnet/minecraft/world/entity/ai/control/LookControl; lookControl bS field_6206 + f Lnet/minecraft/world/entity/ai/control/MoveControl; moveControl bT field_6207 + f Lnet/minecraft/world/entity/ai/control/JumpControl; jumpControl bU field_6204 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation bV field_6189 + f Lnet/minecraft/world/entity/ai/goal/GoalSelector; goalSelector bW field_6201 + f Lnet/minecraft/world/entity/ai/goal/GoalSelector; targetSelector bX field_6185 + f [F handDropChances bY field_6187 + f [F armorDropChances bZ field_6186 + f I MOB_FLAG_NO_AI c field_30088 + f F bodyArmorDropChance ca field_48828 + f Lnet/minecraft/core/Vec3i; ITEM_PICKUP_REACH cb field_38386 + f D DEFAULT_ATTACK_REACH cc field_45969 + f Lnet/minecraft/world/entity/ai/control/BodyRotationControl; bodyRotationControl cd field_6188 + f Lnet/minecraft/world/entity/LivingEntity; target ce field_6199 + f Lnet/minecraft/world/entity/ai/sensing/Sensing; sensing cf field_6190 + f Lnet/minecraft/core/NonNullList; handItems cg field_6195 + f Lnet/minecraft/core/NonNullList; armorItems ch field_6205 + f Lnet/minecraft/world/item/ItemStack; bodyArmorItem ci field_48829 + f Z canPickUpLoot cj field_6203 + f Z persistenceRequired ck field_6200 + f Ljava/util/Map; pathfindingMalus cl field_6196 + f Lnet/minecraft/resources/ResourceKey; lootTable cm field_6198 + f J lootTableSeed cn field_6184 + f Lnet/minecraft/world/entity/Leashable$LeashData; leashData co field_52221 + f Lnet/minecraft/core/BlockPos; restrictCenter cp field_18074 + f F restrictRadius cq field_18075 + f I MOB_FLAG_LEFTHANDED d field_30089 + f I MOB_FLAG_AGGRESSIVE e field_30090 + f I PICKUP_REACH h field_30087 + m ()V registerGoals B method_5959 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createMobAttributes C method_26828 + m ()Z shouldPassengersInheritMalus D method_26323 + m ()V onPathfindingStart E method_51504 + m (F)V setZza E method_5930 + p 1 amount + m ()V onPathfindingDone F method_51503 + m (F)V setYya F method_5976 + p 1 amount + m (F)V setXxa G method_5938 + p 1 amount + m ()Lnet/minecraft/world/entity/ai/control/BodyRotationControl; createBodyControl H method_5963 + m ()Lnet/minecraft/world/entity/ai/control/LookControl; getLookControl I method_5988 + m ()Lnet/minecraft/world/entity/ai/control/MoveControl; getMoveControl J method_5962 + m ()Lnet/minecraft/world/entity/ai/control/JumpControl; getJumpControl L method_5993 + m ()Lnet/minecraft/world/entity/ai/navigation/PathNavigation; getNavigation N method_5942 + m ()Lnet/minecraft/world/entity/ai/sensing/Sensing; getSensing O method_5985 + m ()Lnet/minecraft/world/entity/LivingEntity; getTargetFromBrain P method_59664 + m ()V ate Q method_5983 + c Applies the benefits of growing back wool and faster growing up to the acting entity. This function is used in the {@code EatBlockGoal}. + m ()I getAmbientSoundInterval R method_5970 + c Get number of ticks, at least during which the living entity will be silent. + m ()V playAmbientSound S method_5966 + c Plays living's sound at its position + m ()V spawnAnim T method_5990 + c Spawns an explosion particle around the Entity's location + m ()V updateControlFlags U method_20417 + c Sets MOVE, JUMP, LOOK Goal.Flags depending if entity is riding or been controlled + m ()Lnet/minecraft/resources/ResourceKey; getDefaultLootTable V method_5991 + m ()V stopInPlace W method_55695 + m ()Lnet/minecraft/core/Vec3i; getPickupReach X method_42646 + m ()Z requiresCustomPersistence Y method_17326 + m ()Z shouldDespawnInPeaceful Z method_23734 + m (FFF)F rotlerp a method_5960 + c Arguments: current rotation, intended rotation, max increment. + p 1 angle + p 2 targetAngle + p 3 maxIncrease + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/Map;)V equip a method_59665 + p 1 equipmentLootTable + p 2 slotDropChances + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/storage/loot/LootParams; createEquipmentParams a method_58635 + p 1 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V populateDefaultEquipmentSlots a method_5964 + p 1 random + p 2 difficulty + m (Lnet/minecraft/world/entity/Entity;FF)V lookAt a method_5951 + c Changes the X and Y rotation so that this entity is facing the given entity. + p 1 entity + p 2 maxYRotIncrease + p 3 maxXRotIncrease + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMobSpawnRules a method_20636 + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Z)Lnet/minecraft/world/entity/Mob; convertTo a method_29243 + p 1 entityType + p 2 transferInventory + m (Lnet/minecraft/world/entity/EquipmentSlot;I)Lnet/minecraft/world/item/Item; getEquipmentForSlot a method_5948 + p 0 slot + p 1 chance + m (Lnet/minecraft/world/entity/EquipmentTable;)V equip a method_58634 + p 1 equipmentTable + m (Lnet/minecraft/world/entity/ai/goal/Goal;)Z method_47824 a method_47824 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;)V onOffspringSpawnedFromEgg a method_18249 + p 1 player + p 2 child + m (Lnet/minecraft/world/item/ProjectileWeaponItem;)Z canFireProjectileWeapon a method_25938 + p 1 projectileWeapon + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;)Z checkSpawnRules a method_5979 + p 1 level + p 2 reason + m (Lnet/minecraft/world/level/LevelReader;)Z checkSpawnObstruction a method_5957 + p 1 level + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V populateDefaultEquipmentEnchantments a method_5984 + p 1 level + p 2 random + p 3 difficulty + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/DifficultyInstance;)V enchantSpawnedArmor a method_30758 + p 1 level + p 2 random + p 3 slot + p 4 difficulty + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/world/entity/SpawnGroupData;)Lnet/minecraft/world/entity/SpawnGroupData; finalizeSpawn a method_5943 + p 1 level + p 2 difficulty + p 3 spawnType + p 4 spawnGroupData + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/util/RandomSource;FLnet/minecraft/world/DifficultyInstance;)V enchantSpawnedEquipment a method_59927 + p 1 level + p 2 slot + p 3 random + p 4 enchantChance + p 5 difficulty + m (Lnet/minecraft/world/level/pathfinder/PathType;)F getPathfindingMalus a method_5944 + p 1 pathType + m (Lnet/minecraft/world/level/pathfinder/PathType;F)V setPathfindingMalus a method_5941 + p 1 pathType + p 2 malus + m (Lnet/minecraft/core/BlockPos;)Z isWithinRestriction a method_18407 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)V restrictTo a method_18408 + p 1 pos + p 2 distance + m (Z)V setBaby a method_7217 + c Set whether this mob is a child. + p 1 baby + m (Z)V setCanPickUpLoot a_ method_5952 + p 1 canPickUpLoot + m ()V sendDebugPackets aa method_18409 + m ()V customServerAiStep ab method_5958 + m ()I getMaxHeadXRot ac method_5978 + c The speed it takes to move the entity's head rotation through the faceEntity method. + m ()I getMaxHeadYRot ae method_5986 + m ()V clampHeadRotationToBody af method_56080 + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;)V setItemSlotAndDropWhenKilled b method_24834 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem b method_5949 + c Tests if this entity should pick up a weapon or an armor piece. Entity drops current weapon or armor if the new one is better. + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; mobInteract b method_5992 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;)V method_24522 b method_24522 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canReplaceCurrentItem b method_5955 + p 1 candidate + p 2 existing + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; createNavigation b method_5965 + p 1 level + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V enchantSpawnedWeapon b method_30759 + p 1 level + p 2 random + p 3 difficulty + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; checkAndHandleImportantInteractions c method_29506 + p 1 player + p 2 hand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canReplaceEqualItem c method_26320 + p 1 candidate + p 2 existing + m (Ljava/util/function/Predicate;)Ljava/util/Set; dropPreservedEquipment c method_60972 + p 1 predicate + m (Ljava/util/function/Predicate;)V removeAllGoals d method_47825 + p 1 filter + m (Lnet/minecraft/world/entity/EquipmentSlot;)V setGuaranteedDrop e method_25939 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;)F getEquipmentDropChance f method_5929 + p 1 slot + m ()I getHeadRotSpeed fM method_20240 + m ()I getMaxSpawnClusterSize fN method_5945 + c Will return how many at most can spawn in a chunk at once. + m ()Lnet/minecraft/world/item/ItemStack; getBodyArmorItem fO method_56676 + m ()Z isWearingBodyArmor fP method_56677 + m ()V dropPreservedEquipment fQ method_60973 + m ()V setPersistenceRequired fR method_5971 + c Enable the Entity persistence + m ()Z canPickUpLoot fS method_5936 + m ()Z isPersistenceRequired fT method_5947 + c @return {@code true} if this entity may not naturally despawn. + m ()Z isWithinRestriction fU method_18411 + m ()Lnet/minecraft/core/BlockPos; getRestrictCenter fV method_18412 + m ()F getRestrictRadius fW method_18413 + m ()V clearRestriction fX method_35055 + m ()Z hasRestriction fY method_18410 + m ()Z isNoAi fZ method_5987 + c Get whether this Entity's AI is disabled + m ()Z isLeftHanded ga method_5961 + m ()Z isAggressive gb method_6510 + m ()Lnet/minecraft/world/phys/AABB; getAttackBoundingBox gc method_53511 + m ()V playAttackSound gd method_59928 + m ()Z isSunBurnTick ge method_5972 + m ()V removeFreeWill gf method_35056 + m (D)Z removeWhenFarAway h method_5974 + p 1 distanceToClosestPlayer + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget h method_5980 + c Sets the active target the Goal system uses for tracking + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z isWithinMeleeAttackRange i method_42150 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; equipItemIfPossible i method_24523 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canHoldItem j method_5939 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z wantsToPickUp k method_20820 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isBodyArmorItem l method_6773 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V setBodyArmorItem m method_56678 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)D getApproximateAttackDamageWithItem o method_57295 + p 1 itemStack + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnyComponentExceptDamage p method_57296 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;)V method_37341 q method_37341 + m (I)Z isMaxGroupSizeReached r method_5969 + p 1 size + m (Lnet/minecraft/world/item/ItemStack;)Z method_60974 r method_60974 + m ()V resetAmbientSoundTime s method_5975 + m (Z)V setNoAi u method_5977 + c Set whether this Entity's AI is disabled + p 1 noAi + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientSound v method_5994 + m (Z)V setLeftHanded v method_5937 + p 1 leftHanded + m (Z)V setAggressive w method_19540 + p 1 aggressive + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/Mob$1 btp$1 net/minecraft/class_1308$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_6209 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot b field_6208 + m ()V +c net/minecraft/world/entity/MobCategory btq net/minecraft/class_1311 + f Lnet/minecraft/world/entity/MobCategory; MONSTER a field_6302 + f Lnet/minecraft/world/entity/MobCategory; CREATURE b field_6294 + f Lnet/minecraft/world/entity/MobCategory; AMBIENT c field_6303 + f Lnet/minecraft/world/entity/MobCategory; AXOLOTLS d field_34447 + f Lnet/minecraft/world/entity/MobCategory; UNDERGROUND_WATER_CREATURE e field_30092 + f Lnet/minecraft/world/entity/MobCategory; WATER_CREATURE f field_6300 + f Lnet/minecraft/world/entity/MobCategory; WATER_AMBIENT g field_24460 + f Lnet/minecraft/world/entity/MobCategory; MISC h field_17715 + f Lcom/mojang/serialization/Codec; CODEC i field_24655 + f I max j field_6297 + f Z isFriendly k field_6298 + f Z isPersistent l field_6295 + f Ljava/lang/String; name m field_6304 + f I noDespawnDistance n field_24461 + f I despawnDistance o field_24462 + f [Lnet/minecraft/world/entity/MobCategory; $VALUES p field_6301 + m ()Ljava/lang/String; getName a method_6133 + m ()I getMaxInstancesPerChunk b method_6134 + m ()Z isFriendly d method_6136 + c Gets whether this creature type is peaceful. + m ()Z isPersistent e method_6135 + c Return whether this creature type is an animal. + m ()I getDespawnDistance f method_27919 + m ()I getNoDespawnDistance g method_27920 + m ()[Lnet/minecraft/world/entity/MobCategory; $values h method_36609 + m (Ljava/lang/String;ILjava/lang/String;IZZI)V + p 3 name + p 4 max + p 5 isFriendly + p 6 isPersistent + p 7 despawnDistance + m ()V +c net/minecraft/world/entity/MobSpawnType btr net/minecraft/class_3730 + f Lnet/minecraft/world/entity/MobSpawnType; NATURAL a field_16459 + f Lnet/minecraft/world/entity/MobSpawnType; CHUNK_GENERATION b field_16472 + f Lnet/minecraft/world/entity/MobSpawnType; SPAWNER c field_16469 + f Lnet/minecraft/world/entity/MobSpawnType; STRUCTURE d field_16474 + f Lnet/minecraft/world/entity/MobSpawnType; BREEDING e field_16466 + f Lnet/minecraft/world/entity/MobSpawnType; MOB_SUMMONED f field_16471 + f Lnet/minecraft/world/entity/MobSpawnType; JOCKEY g field_16460 + f Lnet/minecraft/world/entity/MobSpawnType; EVENT h field_16467 + f Lnet/minecraft/world/entity/MobSpawnType; CONVERSION i field_16468 + f Lnet/minecraft/world/entity/MobSpawnType; REINFORCEMENT j field_16463 + f Lnet/minecraft/world/entity/MobSpawnType; TRIGGERED k field_16461 + f Lnet/minecraft/world/entity/MobSpawnType; BUCKET l field_16473 + f Lnet/minecraft/world/entity/MobSpawnType; SPAWN_EGG m field_16465 + f Lnet/minecraft/world/entity/MobSpawnType; COMMAND n field_16462 + f Lnet/minecraft/world/entity/MobSpawnType; DISPENSER o field_16470 + f Lnet/minecraft/world/entity/MobSpawnType; PATROL p field_16527 + f Lnet/minecraft/world/entity/MobSpawnType; TRIAL_SPAWNER q field_47245 + f [Lnet/minecraft/world/entity/MobSpawnType; $VALUES r field_16464 + m ()[Lnet/minecraft/world/entity/MobSpawnType; $values a method_36610 + m (Lnet/minecraft/world/entity/MobSpawnType;)Z isSpawner a method_54986 + p 0 spawnType + m (Lnet/minecraft/world/entity/MobSpawnType;)Z ignoresLightRequirements b method_54987 + p 0 spawnType + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/MoverType bts net/minecraft/class_1313 + f Lnet/minecraft/world/entity/MoverType; SELF a field_6308 + f Lnet/minecraft/world/entity/MoverType; PLAYER b field_6305 + f Lnet/minecraft/world/entity/MoverType; PISTON c field_6310 + f Lnet/minecraft/world/entity/MoverType; SHULKER_BOX d field_6306 + f Lnet/minecraft/world/entity/MoverType; SHULKER e field_6309 + f [Lnet/minecraft/world/entity/MoverType; $VALUES f field_6307 + m ()[Lnet/minecraft/world/entity/MoverType; $values a method_36611 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/NeutralMob btt net/minecraft/class_5354 + f Ljava/lang/String; TAG_ANGER_TIME c_ field_30093 + f Ljava/lang/String; TAG_ANGRY_AT d_ field_30094 + m ()V stopBeingAngry Z_ method_29922 + m ()I getRemainingPersistentAngerTime a method_29507 + m (I)V setRemainingPersistentAngerTime a method_29514 + p 1 remainingPersistentAngerTime + m (Lnet/minecraft/server/level/ServerLevel;Z)V updatePersistentAnger a method_29510 + p 1 serverLevel + p 2 updateAnger + m (Lnet/minecraft/world/entity/LivingEntity;)V setLastHurtByMob a method_6015 + c Hint to AI tasks that we were attacked by the passed EntityLivingBase and should retaliate. Is not guaranteed to change our actual active target (for example if we are currently busy attacking someone else) + p 1 livingEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/nbt/CompoundTag;)V readPersistentAngerSaveData a method_29512 + p 1 level + p 2 tag + m (Ljava/util/UUID;)V setPersistentAngerTarget a method_29513 + p 1 persistentAngerTarget + m (Lnet/minecraft/world/entity/LivingEntity;)Z isAngryAt a_ method_29515 + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V playerDied a_ method_29516 + p 1 player + m (Lnet/minecraft/world/level/Level;)Z isAngryAtAllPlayers a_ method_29923 + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;)V addPersistentAngerSaveData a_ method_29517 + p 1 nbt + m ()Z isAngry ad_ method_29511 + m ()V forgetCurrentTargetAndRefreshUniversalAnger ae_ method_29921 + m ()Ljava/util/UUID; getPersistentAngerTarget b method_29508 + m ()V startPersistentAngerTimer c method_29509 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canAttack c method_18395 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;)V setLastHurtByPlayer c method_29505 + p 1 player + m ()Lnet/minecraft/world/entity/LivingEntity; getLastHurtByMob ei method_6065 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget h method_5980 + c Sets the active target the Task system uses for tracking + p 1 livingEntity + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 + c Gets the active target the Task system uses for tracking +c net/minecraft/world/entity/OminousItemSpawner btu net/minecraft/class_9461 + f I TICKS_BEFORE_ABOUT_TO_SPAWN_SOUND b field_50128 + f I SPAWN_ITEM_DELAY_MIN c field_50129 + f I SPAWN_ITEM_DELAY_MAX d field_50130 + f Ljava/lang/String; TAG_SPAWN_ITEM_AFTER_TICKS e field_50131 + f Ljava/lang/String; TAG_ITEM f field_50132 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM g field_50133 + f J spawnItemAfterTicks h field_50134 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_58636 + p 1 item + m (Lnet/minecraft/world/level/Level;I)V method_58637 a method_58637 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/OminousItemSpawner; create a method_58638 + p 0 level + p 1 item + m ()V addParticles p method_58639 + m ()Lnet/minecraft/world/item/ItemStack; getItem s method_58640 + m ()V tickServer t method_58641 + m ()V tickClient v method_58642 + m ()V spawnItem w method_58643 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/OwnableEntity btv net/minecraft/class_6025 + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner T_ method_35057 + m ()Ljava/util/UUID; getOwnerUUID aa_ method_6139 + m ()Lnet/minecraft/world/level/EntityGetter; level e method_48926 +c net/minecraft/world/entity/PathfinderMob btw net/minecraft/class_1314 + f F DEFAULT_WALK_TARGET_VALUE cb field_35670 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelReader;)F getWalkTargetValue a method_6144 + p 1 pos + p 2 level + m (Lnet/minecraft/core/BlockPos;)F getWalkTargetValue c method_6149 + p 1 pos + m ()Z isPathFinding gg method_6150 + c Returns whether the entity got a {@link net.minecraft.world.level.pathfinder.Path}. + m ()Z isPanicking gh method_52546 + m ()Z shouldStayCloseToLeashHolder gi method_43689 + m ()D followLeashSpeed gj method_6148 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/PlayerRideable btx net/minecraft/class_6026 +c net/minecraft/world/entity/PlayerRideableJumping bty net/minecraft/class_1316 + m ()Z canJump a method_6153 + m ()V handleStopJump b method_6156 + m (I)V onPlayerJump b method_6154 + p 1 jumpPower + m ()I getJumpCooldown c method_45327 + m (I)V handleStartJump c method_6155 + p 1 jumpPower +c net/minecraft/world/entity/PortalProcessor btz net/minecraft/class_9787 + f Lnet/minecraft/world/level/block/Portal; portal a field_51998 + f Lnet/minecraft/core/BlockPos; entryPosition b field_51999 + f I portalTime c field_52000 + f Z insidePortalThisTick d field_52001 + m ()Lnet/minecraft/world/level/block/Portal$Transition; getPortalLocalTransition a method_60700 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/portal/DimensionTransition; getPortalDestination a method_60701 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Z)Z processPortalTeleportation a method_60702 + p 1 level + p 2 entity + p 3 canChangeDimensions + m (Lnet/minecraft/world/level/block/Portal;)Z isSamePortal a method_60703 + p 1 portal + m (Lnet/minecraft/core/BlockPos;)V updateEntryPosition a method_60704 + p 1 entryPosition + m (Z)V setAsInsidePortalThisTick a method_60705 + p 1 insidePortalThisTick + m ()Z hasExpired b method_60706 + m ()Lnet/minecraft/core/BlockPos; getEntryPosition c method_60707 + m ()I getPortalTime d method_60708 + m ()Z isInsidePortalThisTick e method_60709 + m ()V decayTick f method_60710 + m (Lnet/minecraft/world/level/block/Portal;Lnet/minecraft/core/BlockPos;)V + p 1 portal + p 2 entryPosition +c net/minecraft/world/entity/Pose bua net/minecraft/class_4050 + f Lnet/minecraft/world/entity/Pose; STANDING a field_18076 + f Lnet/minecraft/world/entity/Pose; FALL_FLYING b field_18077 + f Lnet/minecraft/world/entity/Pose; SLEEPING c field_18078 + f Lnet/minecraft/world/entity/Pose; SWIMMING d field_18079 + f Lnet/minecraft/world/entity/Pose; SPIN_ATTACK e field_18080 + f Lnet/minecraft/world/entity/Pose; CROUCHING f field_18081 + f Lnet/minecraft/world/entity/Pose; LONG_JUMPING g field_30095 + f Lnet/minecraft/world/entity/Pose; DYING h field_18082 + f Lnet/minecraft/world/entity/Pose; CROAKING i field_37422 + f Lnet/minecraft/world/entity/Pose; USING_TONGUE j field_37423 + f Lnet/minecraft/world/entity/Pose; SITTING k field_40118 + f Lnet/minecraft/world/entity/Pose; ROARING l field_38097 + f Lnet/minecraft/world/entity/Pose; SNIFFING m field_38098 + f Lnet/minecraft/world/entity/Pose; EMERGING n field_38099 + f Lnet/minecraft/world/entity/Pose; DIGGING o field_38100 + f Lnet/minecraft/world/entity/Pose; SLIDING p field_47246 + f Lnet/minecraft/world/entity/Pose; SHOOTING q field_47247 + f Lnet/minecraft/world/entity/Pose; INHALING r field_47248 + f Ljava/util/function/IntFunction; BY_ID s field_48322 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC t field_48323 + f I id u field_48324 + f [Lnet/minecraft/world/entity/Pose; $VALUES v field_18083 + m ()I id a method_56081 + m ()[Lnet/minecraft/world/entity/Pose; $values b method_36612 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/PowerableMob bub net/minecraft/class_4582 + m ()Z isPowered a method_6872 +c net/minecraft/world/entity/RelativeMovement buc net/minecraft/class_2709 + f Lnet/minecraft/world/entity/RelativeMovement; X a field_12400 + f Lnet/minecraft/world/entity/RelativeMovement; Y b field_12398 + f Lnet/minecraft/world/entity/RelativeMovement; Z c field_12403 + f Lnet/minecraft/world/entity/RelativeMovement; Y_ROT d field_12401 + f Lnet/minecraft/world/entity/RelativeMovement; X_ROT e field_12397 + f Ljava/util/Set; ALL f field_40710 + f Ljava/util/Set; ROTATION g field_40711 + f I bit h field_12399 + f [Lnet/minecraft/world/entity/RelativeMovement; $VALUES i field_12402 + m ()I getMask a method_11742 + m (I)Ljava/util/Set; unpack a method_11744 + p 0 packedMovements + m (Ljava/util/Set;)I pack a method_11741 + p 0 movements + m ()[Lnet/minecraft/world/entity/RelativeMovement; $values b method_36952 + m (I)Z isSet b method_11743 + p 1 packedMovements + m (Ljava/lang/String;II)V + p 3 bit + m ()V +c net/minecraft/world/entity/ReputationEventHandler bud net/minecraft/class_4094 + m (Lnet/minecraft/world/entity/ai/village/ReputationEventType;Lnet/minecraft/world/entity/Entity;)V onReputationEventFrom a method_18870 + p 1 type + p 2 target +c net/minecraft/world/entity/Saddleable bue net/minecraft/class_5146 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/sounds/SoundSource;)V equipSaddle a method_6576 + p 1 stack + p 2 soundSource + m ()Lnet/minecraft/sounds/SoundEvent; getSaddleSoundEvent ac_ method_45328 + m ()Z isSaddleable f method_6765 + m ()Z isSaddled i method_6725 +c net/minecraft/world/entity/Shearable buf net/minecraft/class_5147 + m ()Z readyForShearing a method_27072 + m (Lnet/minecraft/sounds/SoundSource;)V shear a method_6636 + p 1 source +c net/minecraft/world/entity/SlotAccess bug net/minecraft/class_5630 + f Lnet/minecraft/world/entity/SlotAccess; NULL a field_27860 + m ()Lnet/minecraft/world/item/ItemStack; get a method_32327 + m (Lnet/minecraft/world/Container;I)Lnet/minecraft/world/entity/SlotAccess; forContainer a method_32328 + p 0 inventory + p 1 slot + m (Lnet/minecraft/world/Container;ILjava/util/function/Predicate;)Lnet/minecraft/world/entity/SlotAccess; forContainer a method_32329 + p 0 inventory + p 1 slot + p 2 stackFilter + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/entity/SlotAccess; forEquipmentSlot a method_32330 + p 0 entity + p 1 slot + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/SlotAccess; forEquipmentSlot a method_32331 + p 0 entity + p 1 slot + p 2 stackFilter + m (Lnet/minecraft/world/item/ItemStack;)Z set a method_32332 + p 1 carried + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;)Lnet/minecraft/world/entity/SlotAccess; of a method_59666 + p 0 getter + p 1 setter + m (Lnet/minecraft/world/item/ItemStack;)Z method_32333 b method_32333 + m (Lnet/minecraft/world/item/ItemStack;)Z method_32334 c method_32334 + m ()V +c net/minecraft/world/entity/SlotAccess$1 bug$1 net/minecraft/class_5630$1 + m ()V +c net/minecraft/world/entity/SlotAccess$2 bug$2 net/minecraft/class_5630$2 + f Ljava/util/function/Supplier; val$getter b field_51376 + f Ljava/util/function/Consumer; val$setter c field_51377 + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;)V +c net/minecraft/world/entity/SlotAccess$3 bug$3 net/minecraft/class_5630$3 + f Lnet/minecraft/world/Container; val$inventory b field_27861 + f I val$id c field_27862 + f Ljava/util/function/Predicate; val$validator d field_27863 + m (Lnet/minecraft/world/Container;ILjava/util/function/Predicate;)V +c net/minecraft/world/entity/SlotAccess$4 bug$4 net/minecraft/class_5630$4 + f Lnet/minecraft/world/entity/LivingEntity; val$entity b field_27864 + f Lnet/minecraft/world/entity/EquipmentSlot; val$slot c field_27865 + f Ljava/util/function/Predicate; val$validator d field_27866 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/Predicate;)V +c net/minecraft/world/entity/SpawnGroupData buh net/minecraft/class_1315 +c net/minecraft/world/entity/SpawnPlacementType bui net/minecraft/class_9168 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; adjustSpawnPosition a method_56553 + p 1 level + p 2 pos +c net/minecraft/world/entity/SpawnPlacementTypes buj net/minecraft/class_9169 + f Lnet/minecraft/world/entity/SpawnPlacementType; NO_RESTRICTIONS a field_48742 + f Lnet/minecraft/world/entity/SpawnPlacementType; IN_WATER b field_48743 + f Lnet/minecraft/world/entity/SpawnPlacementType; IN_LAVA c field_48744 + f Lnet/minecraft/world/entity/SpawnPlacementType; ON_GROUND d field_48745 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56554 a method_56554 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56555 b method_56555 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_56556 c method_56556 + m ()V +c net/minecraft/world/entity/SpawnPlacementTypes$1 buj$1 net/minecraft/class_9169$1 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z isValidEmptySpawnBlock a method_56557 + p 1 level + p 2 pos + p 3 entityType + m ()V +c net/minecraft/world/entity/SpawnPlacements buk net/minecraft/class_1317 + f Ljava/util/Map; DATA_BY_TYPE a field_6313 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/SpawnPlacementType; getPlacementType a method_6159 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/SpawnPlacementType;Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate;)V register a method_20637 + p 0 entityType + p 1 spawnPlacementType + p 2 heightmapType + p 3 predicate + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isSpawnPositionOk a method_56558 + p 0 entityType + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSpawnRules a method_20638 + p 0 entityType + p 1 serverLevel + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightmapType b method_6160 + p 0 entityType + m ()V + m ()V +c net/minecraft/world/entity/SpawnPlacements$Data buk$a net/minecraft/class_1317$class_1318 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightMap a comp_2253 + f Lnet/minecraft/world/entity/SpawnPlacementType; placement b comp_2254 + f Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate; predicate c comp_2255 + m ()Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightMap a comp_2253 + m ()Lnet/minecraft/world/entity/SpawnPlacementType; placement b comp_2254 + m ()Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate; predicate c comp_2255 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/entity/SpawnPlacementType;Lnet/minecraft/world/entity/SpawnPlacements$SpawnPredicate;)V +c net/minecraft/world/entity/SpawnPlacements$SpawnPredicate buk$b net/minecraft/class_1317$class_4306 +c net/minecraft/world/entity/TamableAnimal bul net/minecraft/class_1321 + f I TELEPORT_WHEN_DISTANCE_IS_SQ cc field_52002 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID cd field_6322 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_OWNERUUID_ID ce field_6320 + f I MIN_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING cg field_52003 + f I MAX_HORIZONTAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING ch field_52004 + f I MAX_VERTICAL_DISTANCE_FROM_TARGET_AFTER_TELEPORTING ci field_52005 + f Z orderedToSit cj field_21974 + m (III)Z maybeTeleportTo a method_60711 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z wantsToAttack a method_6178 + p 1 target + p 2 owner + m (Lnet/minecraft/world/entity/player/Player;)V tame a method_6170 + p 1 player + m (Ljava/util/UUID;)V setOwnerUUID b method_6174 + p 1 uuid + m (ZZ)V setTame b method_6173 + p 1 tame + p 2 applyTamingSideEffects + m ()Z isOrderedToSit gk method_24345 + m ()V tryToTeleportToOwner gl method_60713 + m ()Z shouldTryTeleportToOwner gm method_60714 + m ()Z unableToMoveToOwner gn method_60715 + m ()Z canFlyToOwner go method_60716 + m (Lnet/minecraft/core/BlockPos;)V teleportToAroundBlockPos h method_60712 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z canTeleportTo i method_60717 + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;)Z isOwnedBy j method_6171 + p 1 entity + m ()Z isTame s method_6181 + m ()V applyTamingSideEffects t method_56996 + m ()Z isInSittingPose x method_6172 + m (Z)V spawnTamingParticles x method_6180 + c Play the taming effect, will either be hearts or smoke depending on status + p 1 tamed + m (Z)V setInSittingPose y method_6179 + p 1 sitting + m (Z)V setOrderedToSit z method_24346 + p 1 orderedToSit + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/TamableAnimal$TamableAnimalPanicGoal bul$a net/minecraft/class_1321$class_9788 + f Lnet/minecraft/world/entity/TamableAnimal; field_52006 a field_52006 + m (Lnet/minecraft/world/entity/TamableAnimal;DLnet/minecraft/tags/TagKey;)V + p 2 speedModifier + p 4 panicCausingDamageTypes + m (Lnet/minecraft/world/entity/TamableAnimal;D)V + p 2 speedModifier +c net/minecraft/world/entity/Targeting bum net/minecraft/class_8152 + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 +c net/minecraft/world/entity/TraceableEntity bun net/minecraft/class_8046 + m ()Lnet/minecraft/world/entity/Entity; getOwner s method_24921 +c net/minecraft/world/entity/VariantHolder buo net/minecraft/class_7988 + m (Ljava/lang/Object;)V setVariant a method_47826 + p 1 variant + m ()Ljava/lang/Object; getVariant d method_47827 +c net/minecraft/world/entity/WalkAnimationState bup net/minecraft/class_8080 + f F speedOld a field_42109 + f F speed b field_42110 + f F position c field_42111 + m ()F speed a method_48566 + m (F)V setSpeed a method_48567 + p 1 speed + m (FF)V update a method_48568 + p 1 newSpeed + p 2 partialTick + m ()F position b method_48569 + m (F)F speed b method_48570 + p 1 partialTick + m ()Z isMoving c method_48571 + m (F)F position c method_48572 + p 1 partialTick + m ()V +c net/minecraft/world/entity/ai/Brain buq net/minecraft/class_4095 + f Lorg/slf4j/Logger; LOGGER a field_24656 + f Ljava/util/function/Supplier; codec b field_24657 + f I SCHEDULE_UPDATE_DELAY c field_30096 + f Ljava/util/Map; memories d field_18322 + f Ljava/util/Map; sensors e field_18323 + f Ljava/util/Map; availableBehaviorsByPriority f field_18324 + f Lnet/minecraft/world/entity/schedule/Schedule; schedule g field_18325 + f Ljava/util/Map; activityRequirements h field_18326 + f Ljava/util/Map; activityMemoriesToEraseWhenStopped i field_22282 + f Ljava/util/Set; coreActivities j field_18327 + f Ljava/util/Set; activeActivities k field_18328 + f Lnet/minecraft/world/entity/schedule/Activity; defaultActivity l field_18329 + f J lastScheduleUpdate m field_18853 + m ()V clearMemories a method_49709 + m (ILcom/google/common/collect/ImmutableList;)Lcom/google/common/collect/ImmutableList; createPriorityPairs a method_24524 + p 1 priorityStart + p 2 tasks + m (JJ)V updateActivityFromSchedule a method_18871 + p 1 dayTime + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tick a method_19542 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Z hasMemoryValue a method_18896 + p 1 type + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryStatus;)Z checkMemory a method_18876 + p 1 memoryType + p 2 memoryStatus + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;)V setMemory a method_18878 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;J)V setMemoryWithExpiry a method_24525 + p 1 memoryType + p 2 memory + p 3 timeToLive + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V setMemory a method_18879 + p 1 memoryType + p 2 memory + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/DataResult; serializeStart a method_28310 + p 1 ops + m (Lnet/minecraft/world/entity/schedule/Activity;)V setActiveActivityIfPossible a method_24526 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;)V addActivity a method_18882 + p 1 activity + p 2 priorityStart + p 3 tasks + m (Lnet/minecraft/world/entity/schedule/Activity;ILcom/google/common/collect/ImmutableList;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V addActivityAndRemoveMemoryWhenStopped a method_24527 + p 1 activity + p 2 priorityStart + p 3 tasks + p 4 memoryType + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;)V addActivity a method_18881 + p 1 activity + p 2 tasks + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;)V addActivityWithConditions a method_24529 + p 1 activity + p 2 tasks + p 3 memoryStatuses + m (Lnet/minecraft/world/entity/schedule/Activity;Lcom/google/common/collect/ImmutableList;Ljava/util/Set;Ljava/util/Set;)V addActivityAndRemoveMemoriesWhenStopped a method_24530 + p 1 activity + p 2 tasks + p 3 memorieStatuses + p 4 memoryTypes + m (Lnet/minecraft/world/entity/schedule/Schedule;)V setSchedule a method_18884 + p 1 newSchedule + m (Ljava/lang/Integer;)Ljava/util/Map; method_18887 a method_18887 + m (Ljava/lang/Object;)Z isEmptyCollection a method_19948 + p 1 collection + m (Ljava/lang/Object;Ljava/lang/Object;)Z method_29518 a method_29518 + m (Ljava/util/Collection;Ljava/util/Collection;)Lnet/minecraft/world/entity/ai/Brain$Provider; provider a method_28311 + p 0 memoryTypes + p 1 sensorTypes + m (Ljava/util/List;)V setActiveActivityToFirstValid a method_24531 + p 1 activities + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; method_28312 a method_28312 + m (Ljava/util/Set;)V setCoreActivities a method_18890 + p 1 newActivities + m ()Ljava/util/Map; getMemories b method_35058 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V stopAll b method_18900 + p 1 level + p 2 owner + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V eraseMemory b method_18875 + p 1 type + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/lang/Object;)Z isMemoryValue b method_29519 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V setMemoryInternal b method_24535 + p 1 memoryType + p 2 memory + m (Lnet/minecraft/world/entity/schedule/Activity;)V setDefaultActivity b method_18897 + p 1 newFallbackActivity + m (Ljava/util/Collection;Ljava/util/Collection;)Lcom/mojang/serialization/Codec; codec b method_28313 + p 0 memoryTypes + p 1 sensorTypes + m ()Lnet/minecraft/world/entity/schedule/Schedule; getSchedule c method_18894 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickSensors c method_27073 + p 1 level + p 2 brainHolder + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getMemory c method_18904 + p 1 type + m (Lnet/minecraft/world/entity/schedule/Activity;)Z isActive c method_18906 + p 1 activity + m ()Ljava/util/Set; getActiveActivities d method_35059 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V startEachNonRunningBehavior d method_18891 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getMemoryInternal d method_46873 + p 1 type + m (Lnet/minecraft/world/entity/schedule/Activity;)V setActiveActivity d method_18880 + p 1 activity + m ()Ljava/util/List; getRunningBehaviors e method_27074 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickEachRunningBehavior e method_19545 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)J getTimeUntilExpiry e method_36978 + p 1 memoryType + m (Lnet/minecraft/world/entity/schedule/Activity;)V eraseMemoriesForOtherActivitesThan e method_24537 + p 1 activity + m ()V useDefaultActivity f method_24536 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V method_49710 f method_49710 + m (Lnet/minecraft/world/entity/schedule/Activity;)Z activityRequirementsAreMet f method_18874 + p 1 activity + m ()Ljava/util/Optional; getActiveNonCoreActivity g method_24538 + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/util/Set; method_18910 g method_18910 + m ()V removeAllBehaviors h method_35060 + m ()Lnet/minecraft/world/entity/ai/Brain; copyWithoutBehaviors i method_18911 + m ()Ljava/util/stream/Stream; memories j method_28315 + m ()V forgetOutdatedMemories k method_27075 + m (Ljava/util/Collection;Ljava/util/Collection;Lcom/google/common/collect/ImmutableList;Ljava/util/function/Supplier;)V + p 1 memoryModuleTypes + p 2 sensorTypes + p 3 memoryValues + p 4 codec + m ()V +c net/minecraft/world/entity/ai/Brain$1 buq$1 net/minecraft/class_4095$1 + f Ljava/util/Collection; val$memoryTypes a field_24658 + f Ljava/util/Collection; val$sensorTypes b field_24659 + f Lorg/apache/commons/lang3/mutable/MutableObject; val$codecReference c field_24660 + m (Lnet/minecraft/world/entity/ai/Brain;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode a method_28316 + p 1 input + p 2 ops + p 3 prefix + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lcom/mojang/serialization/DataResult; method_28317 a method_28317 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; method_28318 a method_28318 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/serialization/Codec;)Lnet/minecraft/resources/ResourceLocation; method_28319 a method_28319 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; captureRead a method_28320 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/Object; method_28325 a method_28325 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/datafixers/util/Pair;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lcom/mojang/serialization/DataResult; method_28321 a method_28321 + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/world/entity/ai/Brain$MemoryValue;)V method_28322 a method_28322 + m (Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/DataResult; method_28323 a method_28323 + m (Lcom/mojang/serialization/DynamicOps;Lorg/apache/commons/lang3/mutable/MutableObject;Lcom/mojang/datafixers/util/Pair;)V method_28324 a method_28324 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/lang/String; method_49486 b method_49486 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/stream/Stream; method_28326 c method_28326 + m (Ljava/util/Collection;Ljava/util/Collection;Lorg/apache/commons/lang3/mutable/MutableObject;)V +c net/minecraft/world/entity/ai/Brain$MemoryValue buq$a net/minecraft/class_4095$class_5302 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; type a field_24661 + f Ljava/util/Optional; value b field_24662 + m (Lnet/minecraft/world/entity/ai/Brain;)V setMemoryInternal a method_28328 + p 1 brain + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/Brain$MemoryValue; createUnchecked a method_28333 + p 0 memoryType + p 1 memory + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)V serialize a method_28330 + p 1 ops + p 2 builder + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;)V method_28331 a method_28331 + m (Lcom/mojang/serialization/RecordBuilder;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)V method_28332 a method_28332 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/Optional;)V + p 1 type + p 2 value +c net/minecraft/world/entity/ai/Brain$Provider buq$b net/minecraft/class_4095$class_5303 + f Ljava/util/Collection; memoryTypes a field_24663 + f Ljava/util/Collection; sensorTypes b field_24664 + f Lcom/mojang/serialization/Codec; codec c field_24665 + m ()Lnet/minecraft/world/entity/ai/Brain; method_28334 a method_28334 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_28335 + p 1 ops + m ()Lcom/mojang/serialization/Codec; method_28336 b method_28336 + m (Ljava/util/Collection;Ljava/util/Collection;)V + p 1 memoryTypes + p 2 sensorTypes +c net/minecraft/world/entity/ai/attributes/Attribute bur net/minecraft/class_1320 + c Defines an entity attribute. These are properties of entities that can be dynamically modified.\n@see net.minecraft.core.Registry#ATTRIBUTE + f Lcom/mojang/serialization/Codec; CODEC a field_51575 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51940 + f D defaultValue c field_23697 + c The default value of the attribute. + f Z syncable d field_23698 + c Whether the value of this attribute should be kept in sync on the client. + f Ljava/lang/String; descriptionId e field_23699 + c A description Id for the attribute. This is most commonly used as the localization key. + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; sentiment f field_51884 + m ()D getDefaultValue a method_6169 + c Gets the default value for the attribute.\n@return The default value for the attribute. + m (D)D sanitizeValue a method_6165 + c Sanitizes the value of the attribute to fit within the expected parameter range of the attribute.\n@return The sanitized attribute value. + p 1 value + c The value of the attribute to sanitize. + m (Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment;)Lnet/minecraft/world/entity/ai/attributes/Attribute; setSentiment a method_60493 + p 1 sentiment + m (Z)Lnet/minecraft/world/entity/ai/attributes/Attribute; setSyncable a method_26829 + c Sets whether the attribute value should be synced to the client.\n@return The same attribute instance being modified. + p 1 watch + c Whether the attribute value should be kept in sync. + m ()Z isClientSyncable b method_6168 + c Checks if the attribute value should be kept in sync on the client.\n@return Whether the attribute value should be kept in sync on the client. + m (Z)Lnet/minecraft/ChatFormatting; getStyle b method_60494 + p 1 isPositive + m ()Ljava/lang/String; getDescriptionId c method_26830 + c Gets the description Id of the attribute. This is most commonly used as a localization key.\n@return The description Id of the attribute. + m (Ljava/lang/String;D)V + p 1 descriptionId + p 2 defaultValue + m ()V +c net/minecraft/world/entity/ai/attributes/Attribute$Sentiment bur$a net/minecraft/class_1320$class_9764 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; POSITIVE a field_51885 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; NEUTRAL b field_51886 + f Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; NEGATIVE c field_51887 + f [Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; $VALUES d field_51888 + m ()[Lnet/minecraft/world/entity/ai/attributes/Attribute$Sentiment; $values a method_60495 + m (Z)Lnet/minecraft/ChatFormatting; getStyle a method_60496 + p 1 isPositive + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeInstance bus net/minecraft/class_1324 + f Ljava/lang/String; ID_FIELD a field_52007 + f Ljava/lang/String; BASE_FIELD b field_52008 + f Ljava/lang/String; MODIFIERS_FIELD c field_52009 + f Lnet/minecraft/core/Holder; attribute d field_23700 + c The Attribute this is an instance of + f Ljava/util/Map; modifiersByOperation e field_23701 + f Ljava/util/Map; modifierById f field_23702 + f Ljava/util/Map; permanentModifiers g field_23703 + f D baseValue h field_23704 + f Z dirty i field_23705 + f D cachedValue j field_23706 + f Ljava/util/function/Consumer; onDirty k field_23707 + m ()Lnet/minecraft/core/Holder; getAttribute a method_6198 + m (D)V setBaseValue a method_6192 + p 1 baseValue + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; getModifier a method_6199 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V replaceFrom a method_26831 + p 1 instance + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Map; getModifiers a method_6193 + p 1 operation + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Ljava/util/Map;)V method_26832 a method_26832 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addOrUpdateTransientModifier a method_55696 + p 1 modifier + m (Lnet/minecraft/nbt/CompoundTag;)V load a method_26833 + p 1 nbt + m ()D getBaseValue b method_6201 + m (Lnet/minecraft/resources/ResourceLocation;)Z hasModifier b method_6196 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Collection; getModifiersOrEmpty b method_26834 + p 1 operation + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addTransientModifier b method_26835 + p 1 modifier + m ()Ljava/util/Set; getModifiers c method_6195 + m (Lnet/minecraft/resources/ResourceLocation;)Z removeModifier c method_6200 + p 1 id + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)Ljava/util/Map; method_26836 c method_26836 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addOrReplacePermanentModifier c method_61163 + p 1 modifier + m ()V setDirty d method_26838 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addPermanentModifier d method_26837 + p 1 modifier + m ()V removeModifiers e method_6203 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V removeModifier e method_6202 + p 1 modifier + m ()D getValue f method_6194 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addModifier f method_6197 + p 1 modifier + m ()Lnet/minecraft/nbt/CompoundTag; save g method_26839 + m ()D calculateValue h method_26840 + m ()Ljava/lang/IllegalStateException; method_55697 i method_55697 + m (Lnet/minecraft/core/Holder;Ljava/util/function/Consumer;)V + p 1 attribute + p 2 onDirty +c net/minecraft/world/entity/ai/attributes/AttributeMap but net/minecraft/class_5131 + f Lorg/slf4j/Logger; LOGGER a field_23708 + f Ljava/util/Map; attributes b field_23709 + f Ljava/util/Set; attributesToSync c field_51889 + f Ljava/util/Set; attributesToUpdate d field_51890 + f Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; supplier e field_23711 + m ()Ljava/util/Set; getAttributesToSync a method_60497 + m (Lnet/minecraft/resources/ResourceLocation;)V method_26848 a method_26848 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V onAttributeModified a method_26845 + p 1 instance + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_59931 a method_59931 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V assignAllValues a method_26846 + p 1 map + m (Lcom/google/common/collect/Multimap;)V addTransientAttributeModifiers a method_59932 + p 1 modifiers + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getInstance a method_45329 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z hasModifier a method_45330 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_59933 a method_59933 + m (Lnet/minecraft/core/Holder;Ljava/util/Collection;)V method_59934 a method_59934 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/Holder$Reference;)V method_26849 a method_26849 + m (Lnet/minecraft/nbt/ListTag;)V load a method_26850 + p 1 nbt + m ()Ljava/util/Set; getAttributesToUpdate b method_60498 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_60613 b method_60613 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeMap;)V assignBaseValues b method_60614 + p 1 map + m (Lcom/google/common/collect/Multimap;)V removeAttributeModifiers b method_59935 + p 1 modifiers + m (Lnet/minecraft/core/Holder;)Z hasAttribute b method_45331 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)D getModifierValue b method_45332 + p 1 attribute + p 2 id + m ()Ljava/util/Collection; getSyncableAttributes c method_26851 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_26853 c method_26853 + m (Lnet/minecraft/core/Holder;)D getValue c method_26852 + p 1 attribute + m ()Lnet/minecraft/nbt/ListTag; save d method_26855 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)Z method_26857 d method_26857 + m (Lnet/minecraft/core/Holder;)D getBaseValue d method_26856 + p 1 attribute + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; method_55698 e method_55698 + m (Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier;)V + p 1 supplier + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeModifier buu net/minecraft/class_1322 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_49232 + f Lcom/mojang/serialization/Codec; CODEC b field_46247 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49233 + f Lnet/minecraft/resources/ResourceLocation; id d comp_2447 + f D amount e comp_2449 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation f comp_2450 + f Lorg/slf4j/Logger; LOGGER g field_23712 + m ()Lnet/minecraft/nbt/CompoundTag; save a method_26860 + m (Lnet/minecraft/resources/ResourceLocation;)Z is a method_60718 + p 1 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60719 a method_60719 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; load a method_26859 + p 0 nbt + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2447 + m ()D amount c comp_2449 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation d comp_2450 + m (Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeModifier$Operation buu$a net/minecraft/class_1322$class_1323 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_VALUE a field_6328 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_MULTIPLIED_BASE b field_6330 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; ADD_MULTIPLIED_TOTAL c field_6331 + f Ljava/util/function/IntFunction; BY_ID d field_48325 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_48326 + f Lcom/mojang/serialization/Codec; CODEC f field_45742 + f Ljava/lang/String; name g field_45743 + f I id h field_6329 + f [Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; $VALUES i field_6333 + m ()I id a method_56082 + m ()[Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; $values b method_36614 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 value + m ()V +c net/minecraft/world/entity/ai/attributes/AttributeSupplier buv net/minecraft/class_5132 + f Ljava/util/Map; instances a field_23713 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; builder a method_26861 + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; createInstance a method_26863 + p 1 onDirty + p 2 attribute + m (Lnet/minecraft/core/Holder;)D getValue a method_26862 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)D getModifierValue a method_27308 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;)D getBaseValue b method_26864 + p 1 attribute + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z hasModifier b method_27309 + p 1 attribute + p 2 id + m (Lnet/minecraft/core/Holder;)Z hasAttribute c method_27310 + p 1 attribute + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; getAttributeInstance d method_26865 + p 1 attribute + m (Ljava/util/Map;)V + p 1 instances +c net/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder buv$a net/minecraft/class_5132$class_5133 + f Lcom/google/common/collect/ImmutableMap$Builder; builder a field_23714 + f Z instanceFrozen b field_23715 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; build a method_26866 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; add a method_26867 + p 1 attribute + m (Lnet/minecraft/core/Holder;D)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; add a method_26868 + p 1 attribute + p 2 baseValue + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeInstance;)V method_26869 a method_26869 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/ai/attributes/AttributeInstance; create b method_26870 + p 1 attribute + m ()V +c net/minecraft/world/entity/ai/attributes/Attributes buw net/minecraft/class_5134 + c Contains all entity attributes defined and registered by the vanilla game. + f Lnet/minecraft/core/Holder; SPAWN_REINFORCEMENTS_CHANCE A field_23727 + c Handles the chance for a zombie to summon reinforcements when attacked. + f Lnet/minecraft/core/Holder; STEP_HEIGHT B field_47761 + f Lnet/minecraft/core/Holder; SUBMERGED_MINING_SPEED C field_51576 + f Lnet/minecraft/core/Holder; SWEEPING_DAMAGE_RATIO D field_51577 + f Lnet/minecraft/core/Holder; WATER_MOVEMENT_EFFICIENCY E field_51578 + f Lnet/minecraft/core/Holder; ARMOR a field_23724 + c Handles the armor points for an entity. Each point represents half a chestplate of armor on the armor bar. + f Lnet/minecraft/core/Holder; ARMOR_TOUGHNESS b field_23725 + c Handles the amount of damage mitigated by wearing armor. + f Lnet/minecraft/core/Holder; ATTACK_DAMAGE c field_23721 + c Handles the attack damage inflicted by entities. The value of this attribute represents half hearts. + f Lnet/minecraft/core/Holder; ATTACK_KNOCKBACK d field_23722 + c Handles additional horizontal knockback when damaging another entity. + f Lnet/minecraft/core/Holder; ATTACK_SPEED e field_23723 + c Handles the cooldown rate when attacking with an item. The value represents the number of full strength attacks that can be performed per second. + f Lnet/minecraft/core/Holder; BLOCK_BREAK_SPEED f field_49076 + f Lnet/minecraft/core/Holder; BLOCK_INTERACTION_RANGE g field_47758 + f Lnet/minecraft/core/Holder; BURNING_TIME h field_51579 + f Lnet/minecraft/core/Holder; EXPLOSION_KNOCKBACK_RESISTANCE i field_51580 + f Lnet/minecraft/core/Holder; ENTITY_INTERACTION_RANGE j field_47759 + f Lnet/minecraft/core/Holder; FALL_DAMAGE_MULTIPLIER k field_49077 + f Lnet/minecraft/core/Holder; FLYING_SPEED l field_23720 + c Handles the movement speed of flying entities such as parrots and bees. + f Lnet/minecraft/core/Holder; FOLLOW_RANGE m field_23717 + c Handles the range in blocks that a mob will notice and track players and other potential targets. + f Lnet/minecraft/core/Holder; GRAVITY n field_49078 + f Lnet/minecraft/core/Holder; JUMP_STRENGTH o field_23728 + c Handles the jump strength for horses. + f Lnet/minecraft/core/Holder; KNOCKBACK_RESISTANCE p field_23718 + c Handles the reduction of horizontal knockback when damaged by attacks or projectiles. + f Lnet/minecraft/core/Holder; LUCK q field_23726 + c Handles luck when a player generates loot from a loot table. This can impact the quality of loot and influence bonus rolls. + f Lnet/minecraft/core/Holder; MAX_ABSORPTION r field_45124 + f Lnet/minecraft/core/Holder; MAX_HEALTH s field_23716 + c Handles the maximum health of an entity. + f Lnet/minecraft/core/Holder; MINING_EFFICIENCY t field_51581 + f Lnet/minecraft/core/Holder; MOVEMENT_EFFICIENCY u field_51582 + f Lnet/minecraft/core/Holder; MOVEMENT_SPEED v field_23719 + c Handles the movement speed of entities. + f Lnet/minecraft/core/Holder; OXYGEN_BONUS w field_51583 + f Lnet/minecraft/core/Holder; SAFE_FALL_DISTANCE x field_49079 + f Lnet/minecraft/core/Holder; SCALE y field_47760 + f Lnet/minecraft/core/Holder; SNEAKING_SPEED z field_51584 + m (Ljava/lang/String;Lnet/minecraft/world/entity/ai/attributes/Attribute;)Lnet/minecraft/core/Holder; register a method_26871 + p 0 name + p 1 attribute + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55699 + p 0 registry + m ()V + m ()V +c net/minecraft/world/entity/ai/attributes/DefaultAttributes bux net/minecraft/class_5135 + f Lorg/slf4j/Logger; LOGGER a field_23729 + f Ljava/util/Map; SUPPLIERS b field_23730 + m ()V validate a method_26872 + m (Lnet/minecraft/resources/ResourceLocation;)V method_26874 a method_26874 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier; getSupplier a method_26873 + p 0 livingEntity + m (Lnet/minecraft/world/entity/EntityType;)Z hasSupplier b method_26875 + p 0 entityType + m (Lnet/minecraft/world/entity/EntityType;)Z method_26876 c method_26876 + m (Lnet/minecraft/world/entity/EntityType;)Z method_26877 d method_26877 + m ()V + m ()V +c net/minecraft/world/entity/ai/attributes/RangedAttribute buy net/minecraft/class_1329 + c Defines an entity {@linkplain net.minecraft.world.entity.ai.attributes.Attribute attribute} that is limited to a range of values. + f D minValue c field_6353 + c The lowest possible value for the attribute. + f D maxValue d field_6351 + c The highest possible value for the attribute. + m ()D getMinValue d method_35061 + c Gets the lowest possible value for the attribute.\n@return The lowest possible value for the attribute; {@link #minValue}. + m ()D getMaxValue e method_35062 + c Gets the highest possible value for the attribute.\n@return The highest possible value for the attribute; {@link #maxValue}. + m (Ljava/lang/String;DDD)V + p 1 descriptionId + p 2 defaultValue + p 4 min + p 6 max +c net/minecraft/world/entity/ai/attributes/package-info buz net/minecraft/class_6027 +c net/minecraft/world/entity/ai/behavior/AcquirePoi bva net/minecraft/class_4096 + f I SCAN_RANGE a field_30098 + m (JLit/unimi/dsi/fastutil/longs/Long2ObjectMap$Entry;)Z method_46874 a method_46874 + m (Lnet/minecraft/server/level/ServerLevel;JJ)Lnet/minecraft/world/entity/ai/behavior/AcquirePoi$JitteredLinearRetry; method_46875 a method_46875 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Byte;)V method_46876 a method_46876 + m (Lnet/minecraft/world/entity/Mob;Ljava/util/Set;)Lnet/minecraft/world/level/pathfinder/Path; findPathToPois a method_43965 + p 0 mob + p 1 poiPositions + m (Lnet/minecraft/world/entity/ai/behavior/OneShot;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46877 a method_46877 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/behavior/OneShot;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46878 a method_46878 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46879 a method_46879 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Ljava/util/Optional;Lnet/minecraft/world/entity/PathfinderMob;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Lnet/minecraft/core/Holder;)V method_46880 a method_46880 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;JLnet/minecraft/core/BlockPos;)Z method_46882 a method_46882 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46883 + p 0 acquirablePois + p 1 existingAbsentMemory + p 2 acquiringMemory + p 3 onlyIfAdult + p 4 entityEventId + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46884 + p 0 acquirablePois + p 1 acquiringMemory + p 2 onlyIfAdult + p 3 entityEventId + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)Z method_46881 a method_46881 + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_46885 a method_46885 + m (ZLorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2ObjectMap;Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46886 a method_46886 + m ()V +c net/minecraft/world/entity/ai/behavior/AcquirePoi$JitteredLinearRetry bva$a net/minecraft/class_4096$class_5397 + f I MIN_INTERVAL_INCREASE a field_30101 + f I MAX_INTERVAL_INCREASE b field_30102 + f I MAX_RETRY_PATHFINDING_INTERVAL c field_30103 + f Lnet/minecraft/util/RandomSource; random d field_25600 + f J previousAttemptTimestamp e field_25601 + f J nextScheduledAttemptTimestamp f field_25602 + f I currentDelay g field_25603 + m (J)V markAttempt a method_29926 + p 1 timestamp + m (J)Z isStillValid b method_29927 + p 1 timestamp + m (J)Z shouldRetry c method_29928 + p 1 timestamp + m (Lnet/minecraft/util/RandomSource;J)V + p 1 random + p 2 timestamp +c net/minecraft/world/entity/ai/behavior/AnimalMakeLove bvb net/minecraft/class_4806 + f I BREED_RANGE c field_30104 + f I MIN_DURATION d field_30105 + f I MAX_DURATION e field_30106 + f Lnet/minecraft/world/entity/EntityType; partnerType f field_22283 + f F speedModifier g field_23129 + f I closeEnoughDistance h field_48327 + f I DEFAULT_CLOSE_ENOUGH_DISTANCE i field_48328 + f J spawnChildAtTime j field_22284 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;)Z checkExtraStartConditions a method_24543 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V start a method_24544 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Lnet/minecraft/world/entity/animal/Animal; getBreedTarget a method_24542 + p 1 animal + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/LivingEntity;)Z method_24545 a method_24545 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)Z canStillUse b method_24547 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Z hasBreedTargetOfRightType b method_24546 + p 1 animal + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V tick c method_24549 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/Animal;)Ljava/util/Optional; findValidBreedPartner c method_24548 + p 1 animal + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;J)V stop d method_24550 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/EntityType;)V + p 1 partnerType + m (Lnet/minecraft/world/entity/EntityType;FI)V + p 1 partnerType + p 2 speedModifier + p 3 closeEnoughDistance +c net/minecraft/world/entity/ai/behavior/AnimalPanic bvc net/minecraft/class_6028 + f I PANIC_MIN_DURATION c field_30107 + f I PANIC_MAX_DURATION d field_30108 + f I PANIC_DISTANCE_HORIZONTAL e field_30109 + f I PANIC_DISTANCE_VERTICAL f field_30110 + f F speedMultiplier g field_30111 + f Ljava/util/function/Function; panicCausingDamageTypes h field_52010 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;)Z checkExtraStartConditions a method_49487 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse a method_35063 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60720 a method_60720 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/phys/Vec3; getPanicPos a method_39761 + p 1 pathfinder + p 2 level + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/damagesource/DamageSource;)Ljava/lang/Boolean; method_60721 a method_60721 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;)Ljava/util/Optional; lookForWater a method_39762 + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39763 a method_39763 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start b method_35064 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_51505 b method_51505 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop c method_44203 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_51506 c method_51506 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_35065 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 speedMultiplier + m (FLjava/util/function/Function;)V + p 1 speedMultiplier + p 2 panicCausingDamageTypes +c net/minecraft/world/entity/ai/behavior/AssignProfessionFromJobSite bvd net/minecraft/class_4114 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46887 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46888 a method_46888 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46889 a method_46889 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_46890 a method_46890 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/VillagerProfession;)V method_46891 a method_46891 + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_46892 a method_46892 + m (Lnet/minecraft/core/Holder;)Ljava/util/Optional; method_46893 a method_46893 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/VillagerProfession;)Z method_46894 a method_46894 + m ()V +c net/minecraft/world/entity/ai/behavior/BabyFollowAdult bve net/minecraft/class_5355 + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_46895 a method_46895 + m (Lnet/minecraft/util/valueproviders/UniformInt;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46896 + p 0 followRange + p 1 speedModifier + m (Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46897 + p 0 followRange + p 1 speedModifier + m (Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46898 a method_46898 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46899 a method_46899 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;J)Z method_46900 a method_46900 + m ()V +c net/minecraft/world/entity/ai/behavior/BackUpIfTooClose bvf net/minecraft/class_4807 + m (IF)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46901 + p 0 tooCloseDistance + p 1 strafeSpeed + m (IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46902 a method_46902 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46903 a method_46903 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46904 a method_46904 + m ()V +c net/minecraft/world/entity/ai/behavior/BecomePassiveIfMemoryPresent bvg net/minecraft/class_4808 + m (ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46905 a method_46905 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46906 a method_46906 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/lang/String; method_46907 a method_46907 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46908 + p 0 pacifyingMemory + p 1 pacifyDuration + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46909 a method_46909 + m ()V +c net/minecraft/world/entity/ai/behavior/Behavior bvh net/minecraft/class_4097 + f I DEFAULT_DURATION a field_30112 + f Ljava/util/Map; entryCondition b field_19291 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status c field_18333 + f J endTimestamp d field_18334 + f I minDuration e field_18335 + f I maxDuration f field_18336 + m (J)Z timedOut a method_18915 + p 1 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z checkExtraStartConditions a method_18919 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z canStillUse a method_18927 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasRequiredMemories a method_19546 + p 1 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V stop b method_18926 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V tick c method_18924 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V start d method_18920 + p 1 level + p 2 entity + p 3 gameTime + m (Ljava/util/Map;)V + p 1 entryCondition + m (Ljava/util/Map;I)V + p 1 entryCondition + p 2 duration + m (Ljava/util/Map;II)V + p 1 entryCondition + p 2 minDuration + p 3 maxDuration +c net/minecraft/world/entity/ai/behavior/Behavior$Status bvh$a net/minecraft/class_4097$class_4098 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; STOPPED a field_18337 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; RUNNING b field_18338 + f [Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; $VALUES c field_18339 + m ()[Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; $values a method_36615 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/BehaviorControl bvi net/minecraft/class_7893 + m ()Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; getStatus a method_18921 + m ()Ljava/lang/String; debugString b method_46910 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z tryStart e method_18922 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V tickOrStop f method_18923 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V doStop g method_18925 + p 1 level + p 2 entity + p 3 gameTime +c net/minecraft/world/entity/ai/behavior/BehaviorUtils bvj net/minecraft/class_4215 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/core/SectionPos;)Z method_20418 a method_20418 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;I)Lnet/minecraft/core/SectionPos; findSectionClosestToVillage a method_20419 + p 0 serverLevel + p 1 sectionPos + p 2 radius + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_31500 a method_31500 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_19547 a method_19547 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isBreeding a method_41331 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;FI)V setWalkAndLookTargetMemories a method_24557 + p 0 livingEntity + p 1 target + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V lookAtEntity a method_19554 + p 0 entity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;D)Z isOtherTargetMuchFurtherAwayThanCurrentAttackTarget a method_24558 + p 0 livingEntity + p 1 target + p 2 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;FI)V lockGazeAndWalkToEachOther a method_19548 + p 0 firstEntity + p 1 secondEntity + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getTargetNearestMe a method_24559 + p 0 centerEntity + p 1 livingEntity1 + p 2 livingEntity2 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;FI)V setWalkAndLookTargetMemories a method_42647 + p 0 entity + p 1 positionTracker + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getLivingEntityFromUUIDMemory a method_24560 + p 0 livingEntity + p 1 targetMemory + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;)V throwItem a method_19949 + p 0 livingEntity + p 1 stack + p 2 offset + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;F)V throwItem a method_43392 + p 0 entity + p 1 stack + p 2 offset + p 3 speedMultiplier + p 4 yOffset + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/Optional;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getNearestTarget a method_24562 + p 0 centerEntity + p 1 optionalEntity + p 2 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; method_24563 a method_24563 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;FI)V setWalkAndLookTargetMemories a method_24561 + p 0 livingEntity + p 1 pos + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;I)Z isWithinAttackRange a method_25940 + p 0 mob + p 1 target + p 2 cooldown + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getRandomSwimmablePos a method_33193 + p 0 pathfinder + p 1 radius + p 2 verticalDistance + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)Z entityIsVisible a method_19550 + p 0 brain + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/EntityType;)Z targetIsValid a method_19551 + p 0 brains + p 1 memorymodule + p 2 entityType + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;)Z targetIsValid a method_24564 + p 0 brain + p 1 memoryType + p 2 livingPredicate + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z canSee b method_24565 + p 0 livingEntity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;FI)V setWalkAndLookTargetMemoriesToEachOther b method_19555 + p 0 firstEntity + p 1 secondEntity + p 2 speed + p 3 distance + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)Z method_19553 b method_19553 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V lookAtEachOther c method_19552 + p 0 firstEntity + p 1 secondEntity + m ()V +c net/minecraft/world/entity/ai/behavior/BlockPosTracker bvk net/minecraft/class_4099 + f Lnet/minecraft/core/BlockPos; blockPos a field_18340 + f Lnet/minecraft/world/phys/Vec3; centerPosition b field_18341 + m (Lnet/minecraft/core/BlockPos;)V + p 1 blockPos + m (Lnet/minecraft/world/phys/Vec3;)V + p 1 centerPosition +c net/minecraft/world/entity/ai/behavior/CelebrateVillagersSurvivedRaid bvl net/minecraft/class_4242 + f Lnet/minecraft/world/entity/raid/Raid; currentRaid c field_18983 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19951 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19952 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/item/DyeColor;I)Lnet/minecraft/world/item/ItemStack; getFirework a method_19950 + p 1 color + p 2 flightTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop b method_19953 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19954 + p 1 level + p 2 owner + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/CopyMemoryWithExpiry bvm net/minecraft/class_4809 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46911 a method_46911 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46912 a method_46912 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46913 a method_46913 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46914 + p 0 canCopyMemory + p 1 sourceMemory + p 2 targetMemory + p 3 durationOfCopy + m ()V +c net/minecraft/world/entity/ai/behavior/CountDownCooldownTicks bvn net/minecraft/class_5753 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; cooldownTicks c field_30113 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getCooldownTickMemory b method_33194 + p 1 entity + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V + p 1 cooldownTicks +c net/minecraft/world/entity/ai/behavior/Croak bvo net/minecraft/class_7095 + f I CROAK_TICKS c field_37424 + f I TIME_OUT_DURATION d field_37425 + f I croakCounter e field_37426 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)Z checkExtraStartConditions a method_42648 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)Z canStillUse a method_41332 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V start b method_41333 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V stop c method_41334 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V tick d method_41335 + m ()V +c net/minecraft/world/entity/ai/behavior/CrossbowAttack bvp net/minecraft/class_4810 + f I TIMEOUT c field_30114 + f I attackDelay d field_22293 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; crossbowState e field_22294 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_24570 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_24571 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V crossbowAttack a method_24569 + p 1 shooter + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick b method_24573 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; getAttackTarget b method_24568 + p 0 shooter + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V lookAtTarget b method_24572 + p 1 shooter + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop c method_24574 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState bvp$a net/minecraft/class_4810$class_4811 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; UNCHARGED a field_22295 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; CHARGING b field_22296 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; CHARGED c field_22297 + f Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; READY_TO_ATTACK d field_22298 + f [Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; $VALUES e field_22299 + m ()[Lnet/minecraft/world/entity/ai/behavior/CrossbowAttack$CrossbowState; $values a method_36616 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/DismountOrSkipMounting bvq net/minecraft/class_4812 + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46915 + p 0 maxDistanceFromVehicle + p 1 shouldStopRiding + m (ILjava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46916 a method_46916 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;I)Z isVehicleValid a method_24575 + p 0 entity + p 1 vehicle + p 2 distance + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILjava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46917 a method_46917 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILjava/util/function/BiPredicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46918 a method_46918 + m ()V +c net/minecraft/world/entity/ai/behavior/DoNothing bvr net/minecraft/class_4101 + f I minDuration a field_40988 + f I maxDuration b field_40989 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status c field_40990 + f J endTimestamp d field_40991 + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/EntityTracker bvs net/minecraft/class_4102 + f Lnet/minecraft/world/entity/Entity; entity a field_18342 + f Z trackEyeHeight b field_24382 + m ()Lnet/minecraft/world/entity/Entity; getEntity c method_35066 + m (Lnet/minecraft/world/entity/Entity;Z)V + p 1 entity + p 2 trackEyeHeight +c net/minecraft/world/entity/ai/behavior/EraseMemoryIf bvt net/minecraft/class_4813 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46919 a method_46919 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46920 a method_46920 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46921 a method_46921 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46922 + p 0 shouldEraseMemory + p 1 erasingMemory + m ()V +c net/minecraft/world/entity/ai/behavior/FollowTemptation bvu net/minecraft/class_5754 + f I TEMPTATION_COOLDOWN c field_30115 + f D DEFAULT_CLOSE_ENOUGH_DIST d field_45125 + f D BACKED_UP_CLOSE_ENOUGH_DIST e field_45126 + f Ljava/util/function/Function; speedModifier f field_28316 + f Ljava/util/function/Function; closeEnoughDistance g field_44704 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse a method_33195 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;)F getSpeedModifier a method_33196 + p 1 pathfinder + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start b method_33197 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52173 b method_52173 + m (Lnet/minecraft/world/entity/PathfinderMob;)Ljava/util/Optional; getTemptingPlayer b method_33198 + p 1 pathfinder + m ()Lcom/google/common/collect/ImmutableMap; method_51507 c method_51507 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop c method_33199 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_33200 + p 1 level + p 2 owner + p 3 gameTime + m (Ljava/util/function/Function;)V + p 1 speedModifier + m (Ljava/util/function/Function;Ljava/util/function/Function;)V + p 1 speedModifier + p 2 closeEnoughDistance +c net/minecraft/world/entity/ai/behavior/GateBehavior bvv net/minecraft/class_4103 + f Ljava/util/Map; entryCondition a field_40992 + f Ljava/util/Set; exitErasedMemories b field_18344 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; orderPolicy c field_18345 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; runningPolicy d field_18346 + f Lnet/minecraft/world/entity/ai/behavior/ShufflingList; behaviors e field_18347 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status f field_40993 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46923 a method_46923 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasRequiredMemories a method_46924 + p 1 entity + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46925 a method_46925 + m (Lcom/mojang/datafixers/util/Pair;)V method_18929 a method_18929 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46926 b method_46926 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46927 b method_46927 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46928 c method_46928 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46929 d method_46929 + m (Ljava/util/Map;Ljava/util/Set;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Ljava/util/List;)V + p 1 entryCondition + p 2 exitErasedMemories + p 3 orderPolicy + p 4 runningPolicy + p 5 durations +c net/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy bvv$a net/minecraft/class_4103$class_4104 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; ORDERED a field_18348 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; SHUFFLED b field_18349 + f Ljava/util/function/Consumer; consumer c field_18350 + f [Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; $VALUES d field_18351 + m ()[Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy; $values a method_36617 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)V apply a method_18939 + p 1 list + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)V method_18940 b method_18940 + m (Ljava/lang/String;ILjava/util/function/Consumer;)V + p 3 consumer + m ()V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy bvv$b net/minecraft/class_4103$class_4216 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; RUN_ONE a field_18855 + f Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; TRY_ALL b field_18856 + f [Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; $VALUES c field_18857 + m ()[Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy; $values a method_36618 + m (Ljava/util/stream/Stream;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)V apply a method_19559 + p 1 behaviors + p 2 level + p 3 owner + p 4 gameTime + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy$1 bvv$b$1 net/minecraft/class_4103$class_4216$1 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46930 a method_46930 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46931 a method_46931 + m (Ljava/lang/String;I)V +c net/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy$2 bvv$b$2 net/minecraft/class_4103$class_4216$2 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;JLnet/minecraft/world/entity/ai/behavior/BehaviorControl;)V method_46932 a method_46932 + m (Lnet/minecraft/world/entity/ai/behavior/BehaviorControl;)Z method_46933 a method_46933 + m (Ljava/lang/String;I)V +c net/minecraft/world/entity/ai/behavior/GiveGiftToHero bvw net/minecraft/class_4243 + f I THROW_GIFT_AT_DISTANCE c field_30117 + f I MIN_TIME_BETWEEN_GIFTS d field_30118 + f I MAX_TIME_BETWEEN_GIFTS e field_30119 + f I TIME_TO_DELAY_FOR_HEAD_TO_FINISH_TURNING f field_30120 + f Ljava/util/Map; GIFTS g field_18984 + f F SPEED_MODIFIER h field_30121 + f I timeUntilNextGift i field_18985 + f Z giftGivenDuringThisRun j field_18986 + f J timeSinceStart k field_18987 + m (Lnet/minecraft/server/level/ServerLevel;)I calculateTimeUntilNextGift a method_19961 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19962 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_19963 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/List; getItemToThrow a method_19956 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)V throwGift a method_19957 + p 1 villager + p 2 hero + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/player/Player;)Z isWithinThrowingDistance a method_19958 + p 1 villager + p 2 hero + m (Lnet/minecraft/world/entity/player/Player;)Z isHero a method_19959 + p 1 player + m (Ljava/util/HashMap;)V method_19960 a method_19960 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse b method_19965 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Z isHeroVisible b method_19964 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19967 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; getNearestTargetableHero c method_19966 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19968 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration + m ()V +c net/minecraft/world/entity/ai/behavior/GoAndGiveItemsToTarget bvx net/minecraft/class_7296 + f I CLOSE_ENOUGH_DISTANCE_TO_TARGET c field_38387 + f I ITEM_PICKUP_COOLDOWN_AFTER_THROWING d field_38388 + f Ljava/util/function/Function; targetPositionGetter e field_38389 + f F speedModifier f field_38390 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)V method_42650 a method_42650 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/Vec3;)V throwItem a method_43393 + p 0 entity + p 1 stack + p 2 throwPos + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)Lnet/minecraft/world/phys/Vec3; getThrowPosition a method_42651 + p 0 positionTracker + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/level/ServerPlayer;)V triggerDropItemOnBlock a method_43079 + p 1 positionTracker + p 2 stack + p 3 player + m (Lnet/minecraft/world/entity/LivingEntity;)Z canThrowItemToTarget b method_42649 + p 1 target + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/server/level/ServerPlayer;)V method_43080 b method_43080 + m (Ljava/util/function/Function;FI)V + p 1 targetPositionGetter + p 2 speedModifier + p 3 duration +c net/minecraft/world/entity/ai/behavior/GoToClosestVillage bvy net/minecraft/class_4458 + m (FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46934 + p 0 speedModifier + p 1 closeEnoughDist + m (FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46935 a method_46935 + m (FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46936 a method_46936 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_46937 a method_46937 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Lnet/minecraft/core/BlockPos;)D method_46938 a method_46938 + m ()V +c net/minecraft/world/entity/ai/behavior/GoToPotentialJobSite bvz net/minecraft/class_5325 + f F speedModifier c field_25155 + f I TICKS_UNTIL_TIMEOUT d field_30122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_29251 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_29523 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/GlobalPos;)V method_29524 a method_29524 + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/lang/Boolean; method_29250 a method_29250 + m (Lnet/minecraft/core/Holder;)Z method_29783 a method_29783 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick b method_29252 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_29525 + p 1 level + p 2 entity + p 3 gameTime + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/GoToTargetLocation bwa net/minecraft/class_4814 + m (Lnet/minecraft/util/RandomSource;)I getRandomOffset a method_24578 + p 0 random + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getNearbyPos a method_24577 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46939 a method_46939 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;IFLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46940 a method_46940 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IF)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46941 + p 0 locationMemory + p 1 closeEnoughDist + p 2 speedModifier + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46942 a method_46942 + m ()V +c net/minecraft/world/entity/ai/behavior/GoToWantedItem bwb net/minecraft/class_4815 + m (FZI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46943 + p 0 speedModifier + p 1 hasTarget + p 2 maxDistToWalk + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_46944 a method_46944 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46945 a method_46945 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46946 a method_46946 + m (Ljava/util/function/Predicate;FZI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46947 + p 0 canWalkToItem + p 1 speedModifier + p 2 hasTarget + p 3 maxDistToWalk + m (ZLjava/util/function/Predicate;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46948 a method_46948 + m ()V +c net/minecraft/world/entity/ai/behavior/HarvestFarmland bwc net/minecraft/class_4217 + f F SPEED_MODIFIER c field_30123 + f I HARVEST_DURATION d field_30124 + f Lnet/minecraft/core/BlockPos; aboveFarmlandPos e field_18858 + f J nextOkStartTime f field_18861 + f I timeWorkedSoFar g field_19239 + f Ljava/util/List; validFarmlandAroundVillager h field_19351 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/core/BlockPos; getValidFarmland a method_20641 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19564 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_20392 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z validPos a method_20640 + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop b method_19566 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19565 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse d method_20394 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/InsideBrownianWalk bwd net/minecraft/class_4289 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46949 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46950 a method_46950 + m (FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46951 a method_46951 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_46952 a method_46952 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_46953 a method_46953 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_46954 a method_46954 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/core/BlockPos;)V method_46955 a method_46955 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_46956 b method_46956 + m ()V +c net/minecraft/world/entity/ai/behavior/InteractWith bwe net/minecraft/class_4106 + m (Lnet/minecraft/world/entity/EntityType;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; of a method_18941 + p 0 type + p 1 interactionRange + p 2 interactMemory + p 3 speedModifier + p 4 maxDist + m (Lnet/minecraft/world/entity/EntityType;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; of a method_46957 + p 0 type + p 1 interactionRange + p 2 selfFilter + p 3 targetFilter + p 4 memory + p 5 speedModifier + p 6 maxDist + m (Lnet/minecraft/world/entity/EntityType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_46958 a method_46958 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18948 a method_18948 + m (Lnet/minecraft/world/entity/LivingEntity;ILjava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_46959 a method_46959 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Ljava/util/function/Predicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46960 a method_46960 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46961 a method_46961 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/world/entity/LivingEntity;)V method_46962 a method_46962 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46963 a method_46963 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18949 b method_18949 + m ()V +c net/minecraft/world/entity/ai/behavior/InteractWithDoor bwf net/minecraft/class_4107 + f I COOLDOWN_BEFORE_RERUNNING_IN_SAME_NODE a field_30125 + f D SKIP_CLOSING_DOOR_IF_FURTHER_AWAY_THAN b field_30126 + f D MAX_DISTANCE_TO_HOLD_DOOR_OPEN_FOR_OTHER_MOBS c field_30127 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46964 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Set;)V method_46965 a method_46965 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;Ljava/util/Optional;)V closeDoorsThatIHaveOpenedOrPassedThrough a method_30760 + p 0 level + p 1 entity + p 2 previous + p 3 next + p 4 doorPositions + p 5 nearestLivingEntities + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/GlobalPos;)Z isDoorTooFarAway a method_30762 + p 0 level + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_30764 a method_30764 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;Ljava/util/Optional;)Z areOtherMobsComingThroughDoor a method_30761 + p 0 entity + p 1 pos + p 2 nearestLivingEntities + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/BlockPos;)Z isMobComingThroughDoor a method_30766 + p 0 brain + p 1 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46966 a method_46966 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46967 a method_46967 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; rememberDoorToClose a method_46969 + p 0 doorsToClose + p 1 doorPositions + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40002 a method_40002 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_46970 a method_46970 + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Set; method_46968 a method_46968 + m (Lnet/minecraft/core/GlobalPos;Ljava/util/Set;)Ljava/util/Set; method_46971 a method_46971 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46972 a method_46972 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_46973 b method_46973 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_30765 b method_30765 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_46974 c method_46974 + m ()V +c net/minecraft/world/entity/ai/behavior/JumpOnBed bwg net/minecraft/class_4245 + f I MAX_TIME_TO_REACH_BED c field_30128 + f I MIN_JUMPS d field_30129 + f I MAX_JUMPS e field_30130 + f I COOLDOWN_BETWEEN_JUMPS f field_30131 + f F speedModifier g field_18988 + f Lnet/minecraft/core/BlockPos; targetBed h field_18989 + f I remainingTimeToReachBed i field_18990 + f I remainingJumps j field_18991 + f I remainingCooldownUntilNextJump k field_18992 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_19971 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_19972 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)V method_19973 a method_19973 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isBed a method_19974 + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/Mob;)Ljava/util/Optional; getNearestBed a method_19969 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)V startWalkingTowardsBed a method_19970 + p 1 mob + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z nearBed b method_19975 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_19976 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z onOrOverBed c method_19977 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse c method_19978 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z onBedSurface d method_19979 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick d method_19980 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z tiredOfWalking e method_19981 + p 1 level + p 2 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z tiredOfJumping f method_19982 + p 1 level + p 2 mob + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/LocateHidingPlace bwh net/minecraft/class_4246 + m (IFI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46975 + p 0 radius + p 1 speedModifier + p 2 closeEnoughDist + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46976 a method_46976 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46977 a method_46977 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46978 a method_46978 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;I)Ljava/util/Optional; method_46979 a method_46979 + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/core/BlockPos;)Z method_46980 a method_46980 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; method_46981 a method_46981 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/core/BlockPos;)V method_46982 a method_46982 + m (Lnet/minecraft/core/BlockPos;)Z method_46983 a method_46983 + m (Lnet/minecraft/core/Holder;)Z method_46984 a method_46984 + m (Lnet/minecraft/core/BlockPos;)Z method_46985 b method_46985 + m (Lnet/minecraft/core/Holder;)Z method_46986 b method_46986 + m ()V +c net/minecraft/world/entity/ai/behavior/LongJumpMidJump bwi net/minecraft/class_6029 + f I TIME_OUT_DURATION c field_30132 + f Lnet/minecraft/util/valueproviders/UniformInt; timeBetweenLongJumps d field_30133 + f Lnet/minecraft/sounds/SoundEvent; landingSound e field_33459 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_35073 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start b method_35074 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop c method_35075 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/sounds/SoundEvent;)V + p 1 timeBetweenLongJumps + p 2 landingSound +c net/minecraft/world/entity/ai/behavior/LongJumpToPreferredBlock bwj net/minecraft/class_7096 + f Lnet/minecraft/tags/TagKey; preferredBlockTag m field_37427 + f F preferredBlocksChance n field_37428 + f Ljava/util/List; notPrefferedJumpCandidates o field_37429 + f Z currentlyWantingPreferredOnes p field_37430 + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Lnet/minecraft/tags/TagKey;FLjava/util/function/BiPredicate;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + p 6 preferredBlockTag + p 7 preferredBlocksChance + p 8 acceptableLandingSpot +c net/minecraft/world/entity/ai/behavior/LongJumpToRandomPos bwk net/minecraft/class_6030 + f I FIND_JUMP_TRIES c field_30135 + f I MIN_PATHFIND_DISTANCE_TO_VALID_JUMP d field_30137 + f I maxLongJumpHeight e field_30139 + f I maxLongJumpWidth f field_30140 + f F maxJumpVelocityMultiplier g field_30141 + f Ljava/util/List; jumpCandidates h field_30142 + f Ljava/util/Optional; initialPosition i field_30143 + f Lnet/minecraft/world/phys/Vec3; chosenJump j field_30144 + f I findJumpTries k field_30145 + f J prepareJumpStart l field_30146 + f I PREPARE_JUMP_DURATION m field_30136 + f I TIME_OUT_DURATION n field_30134 + f Ljava/util/List; ALLOWED_ANGLES o field_37431 + f Lnet/minecraft/util/valueproviders/UniformInt; timeBetweenLongJumps p field_30138 + f Ljava/util/function/Function; getJumpSound q field_33460 + f Ljava/util/function/BiPredicate; acceptableLandingSpot r field_37432 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getJumpCandidate a method_41336 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_35076 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_35082 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z isAcceptableLandingPosition a method_41337 + p 1 level + p 2 entity + p 3 pos + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; calculateOptimalJumpVector a method_35078 + p 1 mob + p 2 target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z defaultAcceptableLandingSpot a method_45333 + p 0 mob + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump; method_41340 a method_41340 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse b method_35077 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z method_41341 b method_41341 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick c method_35083 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V pickCandidate d method_41342 + p 1 level + p 2 entity + p 3 prepareJumpStart + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + m (Lnet/minecraft/util/valueproviders/UniformInt;IIFLjava/util/function/Function;Ljava/util/function/BiPredicate;)V + p 1 timeBetweenLongJumps + p 2 maxLongJumpHeight + p 3 maxLongJumpWidth + p 4 maxJumpVelocity + p 5 getJumpSound + p 6 acceptableLandingSpot + m ()V +c net/minecraft/world/entity/ai/behavior/LongJumpToRandomPos$PossibleJump bwk$a net/minecraft/class_6030$class_6031 + f Lnet/minecraft/core/BlockPos; jumpTarget a field_30147 + m ()Lnet/minecraft/core/BlockPos; getJumpTarget b method_35084 + m (Lnet/minecraft/core/BlockPos;I)V + p 1 jumpTarget + p 2 weight +c net/minecraft/world/entity/ai/behavior/LongJumpUtil bwl net/minecraft/class_8946 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/EntityDimensions;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z isClearTransition a method_54989 + p 0 mob + p 1 dimensions + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;FIZ)Ljava/util/Optional; calculateJumpVectorForAngle a method_54990 + p 0 mob + p 1 target + p 2 maxJumpVelocity + p 3 angle + p 4 requireClearTransition + m ()V +c net/minecraft/world/entity/ai/behavior/LookAndFollowTradingPlayerSink bwm net/minecraft/class_4108 + f F speedModifier c field_18362 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_18954 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_18955 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V followPlayer a method_18953 + p 1 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_18956 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_18957 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick d method_18958 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 speedModifier +c net/minecraft/world/entity/ai/behavior/LookAtTargetSink bwn net/minecraft/class_4110 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_18967 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)V method_18966 a method_18966 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_18968 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/behavior/PositionTracker;)Z method_19569 b method_19569 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick c method_18969 + p 1 level + p 2 owner + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/MeleeAttack bwo net/minecraft/class_4816 + m (I)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46987 + p 0 cooldownBetweenAttacks + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46988 a method_46988 + m (Lnet/minecraft/world/entity/Mob;)Z isHoldingUsableProjectileWeapon a method_25942 + p 0 mob + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;)Z method_25943 a method_25943 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46989 a method_46989 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_46990 a method_46990 + m ()V +c net/minecraft/world/entity/ai/behavior/Mount bwp net/minecraft/class_4817 + f I CLOSE_ENOUGH_TO_START_RIDING_DIST a field_30149 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_46991 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46992 a method_46992 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46993 a method_46993 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46994 a method_46994 + m ()V +c net/minecraft/world/entity/ai/behavior/MoveToSkySeeingSpot bwq net/minecraft/class_4248 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_46995 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46996 a method_46996 + m (FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_46997 a method_46997 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getOutdoorPosition a method_19987 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)Z hasNoBlocksAbove a method_20497 + p 0 level + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_46998 a method_46998 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/world/phys/Vec3;)V method_46999 a method_46999 + m ()V +c net/minecraft/world/entity/ai/behavior/MoveToTargetSink bwr net/minecraft/class_4112 + f I MAX_COOLDOWN_BEFORE_RETRYING c field_30150 + f I remainingCooldown d field_18964 + f Lnet/minecraft/world/level/pathfinder/Path; path e field_18369 + f Lnet/minecraft/core/BlockPos; lastTargetPos f field_18370 + f F speedModifier g field_18371 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_18978 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_18979 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/memory/WalkTarget;)Z reachedTarget a method_18980 + p 1 mob + p 2 target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/ai/memory/WalkTarget;J)Z tryComputePath a method_18977 + p 1 mob + p 2 target + p 3 time + m (Lnet/minecraft/world/entity/ai/memory/WalkTarget;)Z isWalkTargetSpectator a method_49793 + p 0 walkTarget + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V stop b method_18981 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start c method_18982 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick d method_18983 + p 1 level + p 2 owner + p 3 gameTime + m ()V + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/OneShot bws net/minecraft/class_7894 + f Lnet/minecraft/world/entity/ai/behavior/Behavior$Status; status a field_40994 + m ()V +c net/minecraft/world/entity/ai/behavior/PlayTagWithOtherKids bwt net/minecraft/class_4218 + f I MAX_FLEE_XZ_DIST a field_30151 + f I MAX_FLEE_Y_DIST b field_30152 + f F FLEE_SPEED_MODIFIER c field_30153 + f F CHASE_SPEED_MODIFIER d field_30154 + f I MAX_CHASERS_PER_TARGET e field_30155 + f I AVERAGE_WAIT_TIME_BETWEEN_RUNS f field_30156 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47000 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/LivingEntity; whoAreYouChasing a method_19576 + p 0 kid + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isFriendChasingMe a method_19577 + p 0 entity + p 1 kid + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/lang/Integer;)Ljava/lang/Integer; method_19578 a method_19578 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_47001 a method_47001 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47002 a method_47002 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47003 a method_47003 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47004 a method_47004 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V chaseKid a method_19580 + p 0 interactionTarget + p 1 lookTarget + p 2 walkTarget + p 3 kid + m (Ljava/util/List;)Ljava/util/Optional; findSomeoneBeingChased a method_19588 + p 0 kids + m (Ljava/util/Map$Entry;)Z method_19581 a method_19581 + m (Ljava/util/Map;Lnet/minecraft/world/entity/LivingEntity;)V method_19582 a method_19582 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isChasingSomeone b method_19593 + p 0 kid + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_19587 b method_19587 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47005 b method_47005 + m (Ljava/util/List;)Ljava/util/Map; checkHowManyChasersEachFriendHas b method_19592 + p 0 kids + m ()V +c net/minecraft/world/entity/ai/behavior/PoiCompetitorScan bwu net/minecraft/class_5326 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47006 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/npc/Villager; method_47007 a method_47007 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47008 a method_47008 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47009 a method_47009 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47010 a method_47010 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;)V method_47011 a method_47011 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)Z method_47012 a method_47012 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/world/entity/npc/Villager; selectWinner a method_29255 + p 0 villagerA + p 1 villagerB + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;)Z competesForSameJobsite a method_29257 + p 0 jobSitePos + p 1 poi + p 2 poiType + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/VillagerProfession;)Z hasMatchingProfession a method_29253 + p 0 poi + p 1 poiType + m (Lnet/minecraft/core/GlobalPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;)Z method_47013 b method_47013 + m ()V +c net/minecraft/world/entity/ai/behavior/PositionTracker bwv net/minecraft/class_4115 + m ()Lnet/minecraft/world/phys/Vec3; currentPosition a method_18991 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isVisibleBy a method_18990 + p 1 entity + m ()Lnet/minecraft/core/BlockPos; currentBlockPosition b method_18989 +c net/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget bww net/minecraft/class_6336 + f I TIME_OUT_DURATION c field_33461 + f Ljava/util/function/ToIntFunction; getCooldownOnFail d field_33462 + f I minRamDistance e field_33463 + f I maxRamDistance f field_33464 + f F walkSpeed g field_33465 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ramTargeting h field_33466 + f I ramPrepareTime i field_33467 + f Ljava/util/function/Function; getPrepareRamSound j field_33468 + f Ljava/util/Optional; reachedRamPositionTimestamp k field_33469 + f Ljava/util/Optional; ramCandidate l field_33470 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V start a method_36260 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget$RamCandidate; method_36261 a method_36261 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; calculateRammingStartPosition a method_36262 + p 1 pathfinder + p 2 entity + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)Ljava/util/Optional; method_36264 a method_36264 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isWalkableBlock a method_36263 + p 1 pathfinder + p 2 pos + m (Lnet/minecraft/world/entity/ai/navigation/PathNavigation;Lnet/minecraft/core/BlockPos;)Z method_36265 a method_36265 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getEdgeOfBlock a method_36266 + p 1 pos + p 2 other + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V stop b method_36267 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)V chooseRamPosition b method_36268 + p 1 pathfinder + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z canStillUse c method_36269 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)V method_36270 c method_36270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)V tick d method_36271 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_36272 d method_36272 + m (Ljava/util/function/ToIntFunction;IIFLnet/minecraft/world/entity/ai/targeting/TargetingConditions;ILjava/util/function/Function;)V + p 1 getCooldownOnFall + p 2 minRamDistance + p 3 maxRamDistance + p 4 walkSpeed + p 5 ramTargeting + p 6 ramPrepareTime + p 7 getPrepareRamSound +c net/minecraft/world/entity/ai/behavior/PrepareRamNearestTarget$RamCandidate bww$a net/minecraft/class_6336$class_6337 + f Lnet/minecraft/core/BlockPos; startPosition a field_33471 + f Lnet/minecraft/core/BlockPos; targetPosition b field_33472 + f Lnet/minecraft/world/entity/LivingEntity; target c field_33473 + m ()Lnet/minecraft/core/BlockPos; getStartPosition a method_36273 + m ()Lnet/minecraft/core/BlockPos; getTargetPosition b method_36275 + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget c method_36276 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 startPosition + p 2 targetPosition + p 3 target +c net/minecraft/world/entity/ai/behavior/RamTarget bwx net/minecraft/class_6338 + f I TIME_OUT_DURATION c field_33474 + f F RAM_SPEED_FORCE_FACTOR d field_33475 + f Ljava/util/function/Function; getTimeBetweenRams e field_33476 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ramTargeting f field_33477 + f F speed g field_33479 + f Ljava/util/function/ToDoubleFunction; getKnockbackForce h field_33480 + f Lnet/minecraft/world/phys/Vec3; ramDirection i field_33481 + f Ljava/util/function/Function; getImpactSound j field_33482 + f Ljava/util/function/Function; getHornBreakSound k field_39044 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)Z checkExtraStartConditions a method_36277 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)Z canStillUse a method_36278 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)V finishRam b method_36279 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)V start b method_36280 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;)Z hasRammedHornBreakingBlock c method_43535 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/goat/Goat;J)V tick c method_36281 + p 1 level + p 2 owner + p 3 gameTime + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;FLjava/util/function/ToDoubleFunction;Ljava/util/function/Function;Ljava/util/function/Function;)V + p 1 getTimeBetweenRams + p 2 ramTargeting + p 3 speed + p 4 getKnockbackForce + p 5 getImpactSound + p 6 getHornBreakSound +c net/minecraft/world/entity/ai/behavior/RandomLookAround bwy net/minecraft/class_7687 + f Lnet/minecraft/util/valueproviders/IntProvider; interval c field_40119 + f F maxYaw d field_40120 + f F minPitch e field_40121 + f F pitchRange f field_40122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V start a method_45334 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/util/valueproviders/IntProvider;FFF)V + p 1 interval + p 2 maxYaw + p 3 minPitch + p 4 maxPitch +c net/minecraft/world/entity/ai/behavior/RandomStroll bwz net/minecraft/class_4818 + f I MAX_XZ_DIST a field_30157 + f I MAX_Y_DIST b field_30158 + f [[I SWIM_XY_DISTANCE_TIERS c field_40995 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; stroll a method_47014 + p 0 speedModifier + m (FII)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; stroll a method_47015 + p 0 speedModifier + p 1 maxHorizontalDistance + p 2 maxVerticalDistance + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47016 a method_47016 + m (FLjava/util/function/Function;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; strollFlyOrSwim a method_47017 + p 0 speedModifier + p 1 target + p 2 canStroll + m (FZ)Lnet/minecraft/world/entity/ai/behavior/OneShot; stroll a method_47018 + p 0 speedModifier + p 1 mayStrollFromWater + m (IILnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47019 a method_47019 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; getTargetSwimPos a method_47020 + p 0 mob + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getTargetFlyPos a method_47021 + p 0 mob + p 1 maxDistance + p 2 yRange + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47022 a method_47022 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47023 a method_47023 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47024 a method_47024 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; fly b method_47025 + p 0 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47026 b method_47026 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; swim c method_47027 + p 0 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47028 c method_47028 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47029 d method_47029 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47030 e method_47030 + m (Lnet/minecraft/world/entity/PathfinderMob;)Z method_47031 f method_47031 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/world/phys/Vec3; method_47032 g method_47032 + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/ReactToBell bxa net/minecraft/class_4249 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47033 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47034 a method_47034 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47035 a method_47035 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47036 a method_47036 + m ()V +c net/minecraft/world/entity/ai/behavior/ResetProfession bxb net/minecraft/class_4295 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47037 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47038 a method_47038 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47039 a method_47039 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47040 a method_47040 + m ()V +c net/minecraft/world/entity/ai/behavior/ResetRaidStatus bxc net/minecraft/class_4250 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47041 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47042 a method_47042 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47043 a method_47043 + m ()V +c net/minecraft/world/entity/ai/behavior/RingBell bxd net/minecraft/class_4251 + f I RING_BELL_FROM_DISTANCE a field_30159 + f F BELL_RING_CHANCE b field_30160 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47044 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47045 a method_47045 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47046 a method_47046 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47047 a method_47047 + m ()V +c net/minecraft/world/entity/ai/behavior/RunOne bxe net/minecraft/class_4118 + m (Ljava/util/List;)V + p 1 entryCondition + m (Ljava/util/Map;Ljava/util/List;)V + p 1 entryCondition + p 2 durations +c net/minecraft/world/entity/ai/behavior/SetClosestHomeAsWalkTarget bxf net/minecraft/class_4290 + f I CACHE_TIMEOUT a field_30161 + f I BATCH_SIZE b field_30162 + f I RATE c field_30163 + f I OK_DISTANCE_SQR d field_30164 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47048 + p 0 speedModifier + m (Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lorg/apache/commons/lang3/mutable/MutableInt;Lorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/core/BlockPos;)Z method_47050 a method_47050 + m (Lnet/minecraft/core/Holder;)Z method_47049 a method_47049 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap$Entry;)Z method_47051 a method_47051 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47052 a method_47052 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47053 a method_47053 + m (Lorg/apache/commons/lang3/mutable/MutableLong;Lit/unimi/dsi/fastutil/longs/Long2LongMap;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47054 a method_47054 + m (Lnet/minecraft/core/Holder;)Z method_47055 b method_47055 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTarget bxg net/minecraft/class_4119 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47056 + p 0 maxDist + m (Lnet/minecraft/world/entity/EntityType;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47057 + p 0 entityType + p 1 maxDist + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47058 a method_47058 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47059 a method_47059 + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/entity/LivingEntity;)Z method_47060 a method_47060 + m (Lnet/minecraft/world/entity/MobCategory;F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47061 + p 0 category + p 1 makDist + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/entity/LivingEntity;)Z method_47062 a method_47062 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47063 a method_47063 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47064 a method_47064 + m (Ljava/util/function/Predicate;F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47065 + p 0 canLootAtTarget + p 1 maxDist + m (Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47066 a method_47066 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes bxh net/minecraft/class_7895 + m (FLnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47067 + p 0 maxDist + p 1 interval + m (FLnet/minecraft/util/valueproviders/UniformInt;Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47068 + p 0 maxDist + p 1 interval + p 2 canLookAtTarget + m (Lnet/minecraft/world/entity/EntityType;FLnet/minecraft/util/valueproviders/UniformInt;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47069 + p 0 entityType + p 1 maxDist + p 2 interval + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47070 a method_47070 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47071 a method_47071 + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/world/entity/LivingEntity;)Z method_47072 a method_47072 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47073 a method_47073 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47074 a method_47074 + m (Ljava/util/function/Predicate;FLnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47075 a method_47075 + m ()V +c net/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker bxh$a net/minecraft/class_7895$class_7896 + f Lnet/minecraft/util/valueproviders/UniformInt; interval a field_40996 + f I ticksUntilNextStart b field_40997 + m (Lnet/minecraft/util/RandomSource;)Z tickDownAndCheck a method_47076 + p 1 random + m (Lnet/minecraft/util/valueproviders/UniformInt;)V + p 1 interval +c net/minecraft/world/entity/ai/behavior/SetHiddenState bxi net/minecraft/class_4252 + f I HIDE_TIMEOUT a field_30165 + m (II)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47077 + p 0 stayHiddenSeconds + p 1 closeEnoughdist + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47078 a method_47078 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47079 a method_47079 + m (Lorg/apache/commons/lang3/mutable/MutableInt;IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47080 a method_47080 + m ()V +c net/minecraft/world/entity/ai/behavior/SetLookAndInteract bxj net/minecraft/class_4109 + m (ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47081 a method_47081 + m (Lnet/minecraft/world/entity/EntityType;I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47082 + p 0 entityType + p 1 maxDist + m (Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;)Z method_47083 a method_47083 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47084 a method_47084 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47085 a method_47085 + m ()V +c net/minecraft/world/entity/ai/behavior/SetRaidStatus bxk net/minecraft/class_4253 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47086 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47087 a method_47087 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47088 a method_47088 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetAwayFrom bxl net/minecraft/class_4121 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ZLjava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;IFLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47089 a method_47089 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ZLjava/util/function/Function;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47090 a method_47090 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZ)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; pos a method_47091 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZLjava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47092 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + p 4 toPosition + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ZLjava/util/function/Function;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47093 a method_47093 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIZ)Lnet/minecraft/world/entity/ai/behavior/OneShot; entity b method_24603 + p 0 walkTargetAwayFromMemory + p 1 speedModifier + p 2 desiredDistance + p 3 hasTarget + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromAttackTargetIfTargetOutOfReach bxm net/minecraft/class_4822 + f I PROJECTILE_ATTACK_RANGE_BUFFER a field_30166 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47094 + p 0 speedModifier + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_47095 a method_47095 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Function;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47096 a method_47096 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47097 a method_47097 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47098 + p 0 speedModifier + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47099 a method_47099 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromBlockMemory bxn net/minecraft/class_4122 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47100 a method_47100 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47101 a method_47101 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIII)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47102 + p 0 blockTargetMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 tooFarDistance + p 4 tooLongUnreachableDuration + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;IIFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47103 a method_47103 + m ()V +c net/minecraft/world/entity/ai/behavior/SetWalkTargetFromLookTarget bxo net/minecraft/class_4120 + m (FI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47104 + p 0 speedModifier + p 1 closeEnoughDist + m (FLnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_47105 a method_47105 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47106 a method_47106 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Function;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47107 a method_47107 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Function;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47108 a method_47108 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;I)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47109 + p 0 canSetWalkTarget + p 1 speedModifier + p 2 closeEnoughDist + m (Ljava/util/function/Predicate;Ljava/util/function/Function;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47110 a method_47110 + m ()V +c net/minecraft/world/entity/ai/behavior/ShowTradesToPlayer bxp net/minecraft/class_4130 + f I MAX_LOOK_TIME c field_30167 + f I STARTING_LOOK_TIME d field_30168 + f Lnet/minecraft/world/item/ItemStack; playerItemStack e field_18392 + f Ljava/util/List; displayItems f field_18393 + f I cycleCounter g field_18394 + f I displayIndex h field_18395 + f I lookTime i field_18396 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19599 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19600 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/npc/Villager;)V findItemsToDisplay a method_19027 + p 1 entity + p 2 villager + m (Lnet/minecraft/world/entity/npc/Villager;)V displayFirstItem a method_19598 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/item/ItemStack;)V displayAsHeldItem a method_37447 + p 0 villager + p 1 item + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Z playerItemStackMatchesCostOfOffer a method_19028 + p 1 offer + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_19602 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V updateDisplayItems b method_19601 + p 1 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19604 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V clearHeldItem c method_37448 + p 0 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19605 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/world/entity/LivingEntity; lookAtTarget d method_19603 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;)V displayCyclingItems e method_19026 + p 1 villager + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/ai/behavior/ShufflingList bxq net/minecraft/class_6032 + f Ljava/util/List; entries a field_30169 + f Lnet/minecraft/util/RandomSource; random b field_30170 + m ()Lnet/minecraft/world/entity/ai/behavior/ShufflingList; shuffle a method_35088 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;)V method_35089 a method_35089 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;)Ljava/util/List; method_35090 a method_35090 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_35091 + p 0 codec + m (Ljava/lang/Object;I)Lnet/minecraft/world/entity/ai/behavior/ShufflingList; add a method_35093 + p 1 data + p 2 weight + m ()Ljava/util/stream/Stream; stream b method_35094 + m ()V + m (Ljava/util/List;)V + p 1 entries +c net/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry bxq$a net/minecraft/class_6032$class_6033 + f Ljava/lang/Object; data a field_30171 + f I weight b field_30172 + f D randWeight c field_30173 + m ()Ljava/lang/Object; getData a method_35095 + m (F)V setRandom a method_35096 + p 1 chance + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_35099 + p 0 codec + m ()I getWeight b method_35100 + m ()D getRandWeight c method_35102 + m (Ljava/lang/Object;I)V + p 1 data + p 2 weight +c net/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry$1 bxq$a$1 net/minecraft/class_6032$class_6033$1 + f Lcom/mojang/serialization/Codec; val$elementCodec a field_30174 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encode a method_35104 + p 1 input + p 2 ops + p 3 prefix + m (Lcom/mojang/serialization/Dynamic;Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry; method_35105 a method_35105 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/entity/ai/behavior/ShufflingList$WeightedEntry;)Lcom/mojang/datafixers/util/Pair; method_35106 a method_35106 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/entity/ai/behavior/SleepInBed bxr net/minecraft/class_4123 + f I COOLDOWN_AFTER_BEING_WOKEN c field_30175 + f J nextOkStartTime d field_18848 + m ()V +c net/minecraft/world/entity/ai/behavior/SocializeAtBell bxs net/minecraft/class_4124 + f F SPEED_MODIFIER a field_30176 + m ()Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47111 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47112 a method_47112 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_47113 a method_47113 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47114 a method_47114 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47115 a method_47115 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47116 a method_47116 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47117 a method_47117 + m ()V +c net/minecraft/world/entity/ai/behavior/StartAttacking bxt net/minecraft/class_4824 + m (Lnet/minecraft/world/entity/Mob;)Z method_47118 a method_47118 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47119 + p 0 targetFinder + m (Ljava/util/function/Predicate;Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47120 + p 0 canAttack + p 1 targetFinder + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47121 a method_47121 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47122 a method_47122 + m (Ljava/util/function/Predicate;Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47123 a method_47123 + m ()V +c net/minecraft/world/entity/ai/behavior/StartCelebratingIfTargetDead bxu net/minecraft/class_4825 + m (ILjava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47124 + p 0 duration + p 1 canDance + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47125 a method_47125 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/BiPredicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47126 a method_47126 + m (Ljava/util/function/BiPredicate;ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47127 a method_47127 + m ()V +c net/minecraft/world/entity/ai/behavior/StayCloseToTarget bxv net/minecraft/class_7297 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47128 a method_47128 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IFILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47129 a method_47129 + m (Ljava/util/function/Function;Ljava/util/function/Predicate;IIF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47130 + p 0 targetPositionGetter + p 1 predicate + p 2 closeEnoughDist + p 3 tooClose + p 4 speedModifier + m (Ljava/util/function/Function;Ljava/util/function/Predicate;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47131 a method_47131 + m ()V +c net/minecraft/world/entity/ai/behavior/StopAttackingIfTargetInvalid bxw net/minecraft/class_4828 + f I TIMEOUT_TO_GET_WITHIN_ATTACK_RANGE a field_30177 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47132 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47133 a method_47133 + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/Optional;)Z isTiredOfTryingToReachTarget a method_24621 + p 0 entity + p 1 timeSinceInvalidTarget + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V method_47134 a method_47134 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ZLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z method_47135 a method_47135 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ZLjava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47136 a method_47136 + m (Ljava/util/function/BiConsumer;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47137 + p 0 onStopAttacking + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47138 + p 0 canStopAttacking + m (Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;Z)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47139 + p 0 canStopAttacking + p 1 onStopAttacking + p 2 canGrowTiredOfTryingToReachTarget + m (ZLjava/util/function/Predicate;Ljava/util/function/BiConsumer;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47140 a method_47140 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_47141 b method_47141 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V method_47142 b method_47142 + m ()V +c net/minecraft/world/entity/ai/behavior/StopBeingAngryIfTargetDead bxx net/minecraft/class_4829 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47143 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z method_47144 a method_47144 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_47145 a method_47145 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47146 a method_47146 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47147 a method_47147 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47148 a method_47148 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/LivingEntity;)V method_47149 a method_47149 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollAroundPoi bxy net/minecraft/class_4116 + f I MIN_TIME_BETWEEN_STROLLS a field_30179 + f I STROLL_MAX_XZ_DIST b field_30180 + f I STROLL_MAX_Y_DIST c field_30181 + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47150 a method_47150 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47151 a method_47151 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47152 a method_47152 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FI)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47153 + p 0 poiPosMemory + p 1 speedModifier + p 2 maxDistFromPoi + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47154 a method_47154 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollToPoi bxz net/minecraft/class_4219 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47155 a method_47155 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47156 a method_47156 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FII)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47157 + p 0 poiPosMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 maxDistFromPoi + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47158 a method_47158 + m ()V +c net/minecraft/world/entity/ai/behavior/StrollToPoiList bya net/minecraft/class_4220 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47159 a method_47159 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILorg/apache/commons/lang3/mutable/MutableLong;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47160 a method_47160 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;FIILnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47161 + p 0 poiListMemory + p 1 speedModifier + p 2 closeEnoughDist + p 3 maxDistFromPoi + p 4 mustBeCloseToMemory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;ILorg/apache/commons/lang3/mutable/MutableLong;FILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47162 a method_47162 + m ()V +c net/minecraft/world/entity/ai/behavior/Swim byb net/minecraft/class_4125 + f F chance c field_18387 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)Z checkExtraStartConditions a method_19010 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)Z canStillUse a method_19011 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/Mob;)Z shouldSwim a method_55700 + p 0 mob + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;J)V tick b method_19012 + p 1 level + p 2 owner + p 3 gameTime + m (F)V + p 1 chance +c net/minecraft/world/entity/ai/behavior/TradeWithVillager byc net/minecraft/class_4126 + f Ljava/util/Set; trades c field_18389 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19015 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_19016 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Set; figureOutWhatIAmWillingToTrade a method_19611 + p 0 villager + p 1 other + m (Lnet/minecraft/world/entity/npc/Villager;Ljava/util/Set;Lnet/minecraft/world/entity/LivingEntity;)V throwHalfStack a method_19013 + p 0 villager + p 1 stack + p 2 entity + m (Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/world/item/Item;)Z method_19014 a method_19014 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_19017 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_19018 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_19019 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/TriggerGate byd net/minecraft/class_7897 + m (Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47163 a method_47163 + m (Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47164 a method_47164 + m (Lnet/minecraft/world/entity/ai/behavior/ShufflingList;Lcom/mojang/datafixers/util/Pair;)V method_47165 a method_47165 + m (Ljava/util/List;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerOneShuffled a method_47166 + p 0 triggers + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$OrderPolicy;Lnet/minecraft/world/entity/ai/behavior/GateBehavior$RunningPolicy;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerGate a method_47167 + p 0 triggers + p 1 orderPolicy + p 2 runningPolicy + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindLand bye net/minecraft/class_7097 + f I COOLDOWN_TICKS a field_37433 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47168 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47169 a method_47169 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47170 a method_47170 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47171 a method_47171 + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindLandNearWater byf net/minecraft/class_7098 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47172 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47173 a method_47173 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47174 a method_47174 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47175 a method_47175 + m ()V +c net/minecraft/world/entity/ai/behavior/TryFindWater byg net/minecraft/class_5756 + m (IF)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47176 + p 0 range + p 1 speedModifier + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47177 a method_47177 + m (Lorg/apache/commons/lang3/mutable/MutableLong;IFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47178 a method_47178 + m (Lorg/apache/commons/lang3/mutable/MutableLong;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47179 a method_47179 + m ()V +c net/minecraft/world/entity/ai/behavior/TryLaySpawnOnWaterNearLand byh net/minecraft/class_7099 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47180 + p 0 spawnBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47181 a method_47181 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47182 a method_47182 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47183 a method_47183 + m ()V +c net/minecraft/world/entity/ai/behavior/UpdateActivityFromSchedule byi net/minecraft/class_4127 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47184 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47185 a method_47185 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47186 a method_47186 + m ()V +c net/minecraft/world/entity/ai/behavior/UseBonemeal byj net/minecraft/class_4982 + f I BONEMEALING_DURATION c field_30184 + f J nextWorkCycleTime d field_23222 + f J lastBonemealingSession e field_23223 + f I timeWorkedSoFar f field_23224 + f Ljava/util/Optional; cropPos g field_23225 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_26327 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_26328 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/npc/Villager;)V setCurrentCropAsTarget a method_26324 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)V method_26325 a method_26325 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z validPos a method_26326 + p 1 pos + p 2 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; pickNextTarget b method_26329 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_26330 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop c method_26331 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick d method_26332 + p 1 level + p 2 owner + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/ValidateNearbyPoi byk net/minecraft/class_4128 + f I MAX_DISTANCE a field_30185 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z bedIsOccupied a method_20500 + p 0 level + p 1 pos + p 2 entity + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47187 a method_47187 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47188 a method_47188 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47189 a method_47189 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47190 + p 0 poiValidator + p 1 poiPosMemory + m ()V +c net/minecraft/world/entity/ai/behavior/VillageBoundRandomStroll byl net/minecraft/class_4117 + f I MAX_XZ_DIST a field_30186 + f I MAX_Y_DIST b field_30187 + m (F)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47191 + p 0 speedModifier + m (FII)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47192 + p 0 speedModifier + p 1 maxHorizontalDist + p 2 maxVerticalDist + m (FLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/ai/memory/WalkTarget; method_47193 a method_47193 + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47194 a method_47194 + m (IIFLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47195 a method_47195 + m (IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;J)Z method_47196 a method_47196 + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerCalmDown bym net/minecraft/class_4100 + f I SAFE_DISTANCE_FROM_DANGER a field_30188 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47197 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_47198 a method_47198 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47199 a method_47199 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47200 a method_47200 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47201 a method_47201 + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerGoalPackages byn net/minecraft/class_4129 + f I INTERACT_DIST_SQR a field_48329 + f I INTERACT_WALKUP_DIST b field_48330 + f F INTERACT_SPEED_MODIFIER c field_48331 + f F STROLL_SPEED_MODIFIER d field_30189 + m ()Lcom/mojang/datafixers/util/Pair; getFullLookBehavior a method_20241 + m (F)Lcom/google/common/collect/ImmutableList; getPlayPackage a method_19990 + p 0 speedModifier + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z raidExistsAndActive a method_47202 + p 0 level + p 1 entity + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getCorePackage a method_19020 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43968 a method_43968 + m ()Lcom/mojang/datafixers/util/Pair; getMinimalLookBehavior b method_20242 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Z raidExistsAndNotVictory b method_47203 + p 0 level + p 1 entity + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getWorkPackage b method_19021 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43969 b method_43969 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getRestPackage c method_19022 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43970 c method_43970 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getMeetPackage d method_19023 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/core/Holder;)Z method_43971 d method_43971 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getIdlePackage e method_19024 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getPanicPackage f method_19025 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getPreRaidPackage g method_19991 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getRaidPackage h method_19992 + p 0 profession + p 1 speedModifier + m (Lnet/minecraft/world/entity/npc/VillagerProfession;F)Lcom/google/common/collect/ImmutableList; getHidePackage i method_19993 + p 0 profession + p 1 speedModifier + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerMakeLove byo net/minecraft/class_4111 + f J birthTimestamp c field_18368 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions a method_19571 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_18973 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)V tryToGiveBirth a method_20643 + p 1 level + p 2 parent + p 3 partner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)V giveBedToChild a method_19572 + p 1 level + p 2 villager + p 3 pos + m (Lnet/minecraft/world/entity/AgeableMob;)Z method_24631 a method_24631 + m (Lnet/minecraft/world/entity/npc/Villager;)Z isBreedingPossible a method_18972 + p 1 villager + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Z canReach a method_20642 + p 1 villager + p 2 pos + p 3 poiType + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)Z method_20644 a method_20644 + m (Lnet/minecraft/core/Holder;)Z method_43972 a method_43972 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; takeVacantBed b method_19573 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_18974 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/npc/Villager;)Ljava/util/Optional; breed b method_18970 + p 1 level + p 2 parent + p 3 partner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_18975 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V stop d method_18976 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/VillagerPanicTrigger byp net/minecraft/class_4113 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse a method_20646 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start b method_20647 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasHostile b method_19574 + p 0 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V tick c method_20648 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHurt c method_19575 + p 0 entity + m ()V +c net/minecraft/world/entity/ai/behavior/WakeUp byq net/minecraft/class_4214 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47204 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47205 a method_47205 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47206 a method_47206 + m ()V +c net/minecraft/world/entity/ai/behavior/WorkAtComposter byr net/minecraft/class_4983 + f Ljava/util/List; COMPOSTABLE_ITEMS c field_23226 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/GlobalPos;Lnet/minecraft/world/level/block/state/BlockState;)V compostItems a method_26334 + p 1 level + p 2 villager + p 3 global + p 4 state + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnComposterFillEffects a method_30232 + p 1 level + p 2 preState + p 3 pos + p 4 postState + m (Lnet/minecraft/world/entity/npc/Villager;)V makeBread a method_26333 + p 1 villager + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/WorkAtPoi bys net/minecraft/class_4133 + f I CHECK_COOLDOWN c field_30192 + f D DISTANCE d field_30193 + f J lastCheck e field_19426 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V useWorkstation a method_26335 + p 1 level + p 2 villager + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V start a method_21642 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/GlobalPos;)V method_19613 a method_19613 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)Z checkExtraStartConditions b method_21641 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z canStillUse b method_26336 + p 1 level + p 2 entity + p 3 gameTime + m ()V +c net/minecraft/world/entity/ai/behavior/YieldJobSite byt net/minecraft/class_5327 + m (F)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47207 + p 0 speedModifier + m (FLnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47208 a method_47208 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/npc/Villager; method_47209 a method_47209 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiType;)Z canReachPos a method_29262 + p 0 mob + p 1 pos + p 2 poi + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;FLnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47210 a method_47210 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)Z method_47211 a method_47211 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/core/BlockPos;FLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V method_47212 a method_47212 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/world/entity/LivingEntity;)Z method_47213 a method_47213 + m (Ljava/util/Optional;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/npc/Villager;)Z method_47214 a method_47214 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/BlockPos;)Z nearbyWantsJobsite a method_29260 + p 0 poi + p 1 villager + p 2 pos + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder byu net/minecraft/class_7898 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; trigger a field_40998 + m ()Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance; instance a method_47215 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; create a method_47216 + p 0 trigger + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)Lnet/minecraft/world/entity/ai/behavior/OneShot; sequence a method_47217 + p 0 predicateTrigger + p 1 trigger + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47218 a method_47218 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;Lcom/mojang/datafixers/util/Unit;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47219 a method_47219 + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; unbox a method_47220 + p 0 app + m (Ljava/util/function/BiPredicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47221 + p 0 predicate + m (Ljava/util/function/BiPredicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47222 a method_47222 + m (Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47223 a method_47223 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47224 + p 0 initializer + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47225 + p 0 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47226 a method_47226 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/OneShot;)Lnet/minecraft/world/entity/ai/behavior/OneShot; triggerIf a method_47227 + p 0 predicate + p 1 trigger + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47228 a method_47228 + m (Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; get b method_47229 + p 0 app + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V + p 1 trigger +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$1 byu$1 net/minecraft/class_7898$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$resolvedBuilder a field_40999 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Constant byu$a net/minecraft/class_7898$class_7899 + m (Ljava/lang/Object;)Ljava/lang/String; method_47230 a method_47230 + m (Ljava/lang/Object;)V + p 1 value + m (Ljava/lang/Object;Ljava/util/function/Supplier;)V + p 1 value + p 2 name +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Constant$1 byu$a$1 net/minecraft/class_7898$class_7899$1 + f Ljava/lang/Object; val$a a field_41000 + f Ljava/util/function/Supplier; val$debugString b field_41001 + m (Ljava/lang/Object;Ljava/util/function/Supplier;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance byu$b net/minecraft/class_7898$class_7900 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; tryGet a method_47233 + p 1 memory + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ifTriggered a method_47234 + p 1 trigger + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; registered a method_47235 + p 1 memoryType + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lcom/mojang/datafixers/kinds/App; method_47236 a method_47236 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap2 a method_47237 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap3 a method_47238 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + p 4 behavior3 + m (Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; ap4 a method_47239 + p 1 mapper + p 2 behavior1 + p 3 behavior2 + p 4 behavior3 + p 5 behavior4 + m (Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; point a method_47240 + p 1 value + m (Ljava/util/function/Function;Lcom/mojang/datafixers/kinds/App;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; map a method_47241 + p 1 mapper + p 2 behavior + m (Ljava/util/function/Supplier;Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; point a method_47242 + p 1 name + p 2 value + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/lang/Object; get b method_47243 + p 1 memory + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; present b method_47244 + p 1 memoryType + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder; absent c method_47245 + p 1 memoryType + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$1 byu$b$1 net/minecraft/class_7898$class_7900$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$aTrigger a field_41002 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger b field_41003 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$2 byu$b$2 net/minecraft/class_7898$class_7900$2 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$tTrigger a field_41005 + f Ljava/util/function/Function; val$func b field_41006 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Ljava/util/function/Function;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$3 byu$b$3 net/minecraft/class_7898$class_7900$3 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$aTrigger a field_41008 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$bTrigger b field_41009 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger c field_41010 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$4 byu$b$4 net/minecraft/class_7898$class_7900$4 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t1Trigger a field_41012 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t2Trigger b field_41013 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t3Trigger c field_41014 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger d field_41015 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$5 byu$b$5 net/minecraft/class_7898$class_7900$5 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t1Trigger a field_41017 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t2Trigger b field_41018 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t3Trigger c field_41019 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$t4Trigger d field_41020 + f Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult; val$fTrigger e field_41021 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance$Mu byu$b$a net/minecraft/class_7898$class_7900$class_7901 + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Mu byu$c net/minecraft/class_7898$class_7902 + m ()V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$PureMemory byu$d net/minecraft/class_7898$class_7903 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition;)V + p 1 memoryCondition +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$PureMemory$1 byu$d$1 net/minecraft/class_7898$class_7903$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition; val$condition a field_41023 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor; tryTrigger b method_47246 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryCondition;)V +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWithResult byu$e net/minecraft/class_7898$class_7904 + m ()Ljava/lang/String; debugString a method_47231 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Ljava/lang/Object; tryTrigger a method_47232 + p 1 level + p 2 entity + p 3 gameTime +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWrapper byu$f net/minecraft/class_7898$class_7905 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)V + p 1 trigger +c net/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$TriggerWrapper$1 byu$f$1 net/minecraft/class_7898$class_7905$1 + f Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; val$dependentTrigger a field_41024 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Lcom/mojang/datafixers/util/Unit; tryTrigger b method_47247 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor byv net/minecraft/class_7906 + f Lnet/minecraft/world/entity/ai/Brain; brain a field_41025 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memoryType b field_41026 + f Lcom/mojang/datafixers/kinds/App; value c field_41027 + m ()Lcom/mojang/datafixers/kinds/App; value a method_47248 + m (Ljava/lang/Object;)V set a method_47249 + p 1 value + m (Ljava/lang/Object;J)V setWithExpiry a method_47250 + p 1 memory + p 2 expiry + m (Ljava/util/Optional;)V setOrErase a method_47251 + p 1 memory + m ()V erase b method_47252 + m (Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lcom/mojang/datafixers/kinds/App;)V + p 1 brain + p 2 memoryType + p 3 value +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition byw net/minecraft/class_7907 + m ()Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/Brain;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor; createAccessor a method_47253 + p 1 brain + p 2 memory + m ()Lnet/minecraft/world/entity/ai/memory/MemoryStatus; condition b method_47254 +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Absent byw$a net/minecraft/class_7907$class_7908 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Present byw$b net/minecraft/class_7907$class_7909 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/MemoryCondition$Registered byw$c net/minecraft/class_7907$class_7910 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; memory a comp_1151 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V +c net/minecraft/world/entity/ai/behavior/declarative/Trigger byx net/minecraft/class_7911 +c net/minecraft/world/entity/ai/behavior/declarative/package-info byy net/minecraft/class_7912 +c net/minecraft/world/entity/ai/behavior/package-info byz net/minecraft/class_6034 +c net/minecraft/world/entity/ai/behavior/warden/Digging bza net/minecraft/class_7249 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)Z checkExtraStartConditions a method_42151 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42152 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42153 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42154 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/Emerging bzb net/minecraft/class_7250 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42155 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42156 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42157 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/ForceUnmount bzc net/minecraft/class_7521 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/Roar bzd net/minecraft/class_7255 + f I TICKS_BEFORE_PLAYING_ROAR_SOUND c field_38131 + f I ROAR_ANGER_INCREASE d field_39276 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start a method_42189 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse b method_42190 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V tick c method_42191 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop d method_42192 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/SetRoarTarget bze net/minecraft/class_7256 + m (Ljava/util/function/Function;)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47255 + p 0 targetFinder + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47256 a method_47256 + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z method_47257 a method_47257 + m (Ljava/util/function/Function;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47258 a method_47258 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/SetWardenLookTarget bzf net/minecraft/class_7257 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47259 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47260 a method_47260 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Ljava/util/Optional; method_47261 a method_47261 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47262 a method_47262 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47263 a method_47263 + m ()V +c net/minecraft/world/entity/ai/behavior/warden/Sniffing bzg net/minecraft/class_7251 + f D ANGER_FROM_SNIFFING_MAX_DISTANCE_XZ c field_38708 + f D ANGER_FROM_SNIFFING_MAX_DISTANCE_Y d field_38848 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_42158 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_42159 a method_42159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_42160 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop c method_42161 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/ai/behavior/warden/SonicBoom bzh net/minecraft/class_7396 + f I COOLDOWN c field_38849 + f I DISTANCE_XZ d field_38850 + f I DISTANCE_Y e field_38851 + f D KNOCKBACK_VERTICAL f field_38852 + f D KNOCKBACK_HORIZONTAL g field_38853 + f I TICKS_BEFORE_PLAYING_SOUND h field_38854 + f I DURATION i field_38855 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)Z checkExtraStartConditions a method_43262 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z canStillUse a method_43263 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;I)V setCooldown a method_43264 + p 0 entity + p 1 cooldown + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V method_43265 a method_43265 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_43266 a method_43266 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V start b method_43267 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_43973 b method_43973 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V tick c method_43268 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)V stop d method_43269 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/warden/TryToSniff bzi net/minecraft/class_7259 + f Lnet/minecraft/util/valueproviders/IntProvider; SNIFF_COOLDOWN a field_38133 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47264 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47265 a method_47265 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47266 a method_47266 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47267 a method_47267 + m ()V + m ()V +c net/minecraft/world/entity/ai/behavior/warden/package-info bzj net/minecraft/class_7374 +c net/minecraft/world/entity/ai/control/BodyRotationControl bzk net/minecraft/class_1330 + f Lnet/minecraft/world/entity/Mob; mob a field_6356 + f I HEAD_STABLE_ANGLE b field_30194 + f I DELAY_UNTIL_STARTING_TO_FACE_FORWARD c field_30195 + f I HOW_LONG_IT_TAKES_TO_FACE_FORWARD d field_30196 + f I headStableTime e field_6355 + f F lastStableYHeadRot f field_6354 + m ()V clientTick a method_6224 + c Update the Head and Body rendering angles + m ()V rotateBodyIfNecessary b method_20243 + m ()V rotateHeadIfNecessary c method_20244 + m ()V rotateHeadTowardsFront d method_20245 + m ()Z notCarryingMobPassengers e method_20246 + m ()Z isMoving f method_20247 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/Control bzl net/minecraft/class_6035 +c net/minecraft/world/entity/ai/control/FlyingMoveControl bzm net/minecraft/class_1331 + f I maxTurn l field_20349 + f Z hoversInPlace m field_20350 + m (Lnet/minecraft/world/entity/Mob;IZ)V + p 1 mob + p 2 maxTurn + p 3 hoversInPlace +c net/minecraft/world/entity/ai/control/JumpControl bzn net/minecraft/class_1334 + f Z jump a field_6365 + f Lnet/minecraft/world/entity/Mob; mob b field_6366 + m ()V jump a method_6233 + m ()V tick b method_6234 + c Called to actually make the entity jump if isJumping is true. + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/LookControl bzo net/minecraft/class_1333 + f Lnet/minecraft/world/entity/Mob; mob a field_6361 + f F yMaxRotSpeed b field_6359 + f F xMaxRotAngle c field_6358 + f I lookAtCooldown d field_35103 + f D wantedX e field_6364 + f D wantedY f field_6363 + f D wantedZ g field_6362 + m ()V tick a method_6231 + c Updates look + m (DDD)V setLookAt a method_20248 + p 1 x + p 3 y + p 5 z + m (DDDFF)V setLookAt a method_6230 + c Sets position to look at + p 1 x + p 3 y + p 5 z + p 7 deltaYaw + p 8 deltaPitch + m (FFF)F rotateTowards a method_6229 + c Rotate as much as possible from {@code from} to {@code to} within the bounds of {@code maxDelta} + p 1 from + p 2 to + p 3 maxDelta + m (Lnet/minecraft/world/entity/Entity;)V setLookAt a method_35111 + c Sets the controlling mob's look vector to the provided entity's location + p 1 entity + m (Lnet/minecraft/world/entity/Entity;FF)V setLookAt a method_6226 + c Sets position to look at using entity + p 1 entity + p 2 deltaYaw + p 3 deltaPitch + m (Lnet/minecraft/world/phys/Vec3;)V setLookAt a method_19615 + c Sets the mob's look vector + p 1 lookVector + m (Ljava/lang/Float;)V method_37355 a method_37355 + m ()V clampHeadRotationToBody b method_36980 + m (Lnet/minecraft/world/entity/Entity;)D getWantedY b method_20249 + p 0 entity + m (Ljava/lang/Float;)V method_37356 b method_37356 + m ()Z resetXRotOnTick c method_20433 + m ()Z isLookingAtTarget d method_38970 + m ()D getWantedX e method_6225 + m ()D getWantedY f method_6227 + m ()D getWantedZ g method_6228 + m ()Ljava/util/Optional; getXRotD h method_20250 + m ()Ljava/util/Optional; getYRotD i method_20251 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/MoveControl bzp net/minecraft/class_1335 + f F MIN_SPEED a field_30197 + f F MIN_SPEED_SQR b field_30198 + f I MAX_TURN c field_30199 + f Lnet/minecraft/world/entity/Mob; mob d field_6371 + f D wantedX e field_6370 + f D wantedY f field_6369 + f D wantedZ g field_6367 + f D speedModifier h field_6372 + f F strafeForwards i field_6368 + f F strafeRight j field_6373 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; operation k field_6374 + m ()V tick a method_6240 + m (DDDD)V setWantedPosition a method_6239 + c Sets the speed and location to move to + p 1 x + p 3 y + p 5 z + p 7 speed + m (FF)V strafe a method_6243 + p 1 forward + p 2 strafe + m (FFF)F rotlerp a method_6238 + c Attempt to rotate the first angle to become the second angle, but only allow overall direction change to at max be third parameter + p 1 sourceAngle + p 2 targetAngle + p 3 maximumChange + m ()Z hasWanted b method_6241 + c @return If the mob is currently trying to go somewhere + m (FF)Z isWalkable b method_25946 + c @return true if the mob can walk successfully to a given X and Z + p 1 relativeX + p 2 relativeZ + m ()D getSpeedModifier c method_6242 + m ()D getWantedX d method_6236 + m ()D getWantedY e method_6235 + m ()D getWantedZ f method_6237 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/control/MoveControl$Operation bzp$a net/minecraft/class_1335$class_1336 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; WAIT a field_6377 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; MOVE_TO b field_6378 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; STRAFE c field_6376 + f Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; JUMPING d field_6379 + f [Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; $VALUES e field_6375 + m ()[Lnet/minecraft/world/entity/ai/control/MoveControl$Operation; $values a method_36619 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/control/SmoothSwimmingLookControl bzq net/minecraft/class_1332 + f I maxYRotFromCenter h field_6357 + f I HEAD_TILT_X i field_30200 + f I HEAD_TILT_Y j field_30201 + m (Ljava/lang/Float;)V method_37357 a method_37357 + m (Ljava/lang/Float;)V method_37358 b method_37358 + m (Lnet/minecraft/world/entity/Mob;I)V + p 1 mob + p 2 maxYRotFromCenter +c net/minecraft/world/entity/ai/control/SmoothSwimmingMoveControl bzr net/minecraft/class_5757 + f F FULL_SPEED_TURN_THRESHOLD l field_40123 + f F STOP_TURN_THRESHOLD m field_40124 + f I maxTurnX n field_28319 + f I maxTurnY o field_28320 + f F inWaterSpeedModifier p field_28321 + f F outsideWaterSpeedModifier q field_28322 + f Z applyGravity r field_28323 + m (F)F getTurningSpeedFactor a method_45335 + p 0 degreesToTurn + m (Lnet/minecraft/world/entity/Mob;IIFFZ)V + p 1 mob + p 2 maxTurnX + p 3 maxTurnY + p 4 inWaterSpeedModifier + p 5 outsideWaterSpeedModifier + p 6 applyGravity +c net/minecraft/world/entity/ai/control/package-info bzs net/minecraft/class_6036 +c net/minecraft/world/entity/ai/goal/AvoidEntityGoal bzt net/minecraft/class_1338 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6391 + f Lnet/minecraft/world/entity/LivingEntity; toAvoid b field_6390 + f F maxDist c field_6386 + f Lnet/minecraft/world/level/pathfinder/Path; path d field_6387 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; pathNav e field_6394 + f Ljava/lang/Class; avoidClass f field_6392 + c Class of entity this behavior seeks to avoid + f Ljava/util/function/Predicate; avoidPredicate g field_6393 + f Ljava/util/function/Predicate; predicateOnAvoidEntity h field_6388 + f D walkSpeedModifier i field_6385 + f D sprintSpeedModifier j field_6395 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; avoidEntityTargeting k field_18084 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31501 a method_31501 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6245 b method_6245 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6246 c method_6246 + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;FDD)V + p 1 mob + p 2 entityClassToAvoid + p 3 maxDistance + p 4 walkSpeedModifier + p 6 sprintSpeedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;Ljava/util/function/Predicate;FDDLjava/util/function/Predicate;)V + c Goal that helps mobs avoid mobs of a specific class + p 1 mob + p 2 entityClassToAvoid + p 3 avoidPredicate + p 4 maxDistance + p 5 walkSpeedModifier + p 7 sprintSpeedModifier + p 9 predicateOnAvoidEntity + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/lang/Class;FDDLjava/util/function/Predicate;)V + p 1 mob + p 2 entityClassToAvoid + p 3 maxDistance + p 4 walkSpeedModifier + p 6 sprintSpeedModifier + p 8 predicateOnAvoidEntity +c net/minecraft/world/entity/ai/goal/BegGoal bzu net/minecraft/class_1337 + f Lnet/minecraft/world/entity/animal/Wolf; wolf a field_6384 + f Lnet/minecraft/world/entity/player/Player; player b field_6383 + f Lnet/minecraft/world/level/Level; level c field_6381 + f F lookDistance d field_6380 + f I lookTime e field_6382 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; begTargeting f field_18085 + m (Lnet/minecraft/world/entity/player/Player;)Z playerHoldingInteresting a method_6244 + c Gets if the Player has the Bone in the hand. + p 1 player + m (Lnet/minecraft/world/entity/animal/Wolf;F)V + p 1 wolf + p 2 lookDistance +c net/minecraft/world/entity/ai/goal/BoatGoals bzv net/minecraft/class_1340 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; GO_TO_BOAT a field_6401 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; GO_IN_BOAT_DIRECTION b field_6400 + f [Lnet/minecraft/world/entity/ai/goal/BoatGoals; $VALUES c field_6399 + m ()[Lnet/minecraft/world/entity/ai/goal/BoatGoals; $values a method_36620 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/BreakDoorGoal bzw net/minecraft/class_1339 + f I breakTime a field_6398 + f I lastBreakProgress b field_6397 + f I doorBreakTime c field_16596 + f I DEFAULT_DOOR_BREAK_TIME g field_30202 + f Ljava/util/function/Predicate; validDifficulties h field_19003 + m (Lnet/minecraft/world/Difficulty;)Z isValidDifficulty a method_19994 + p 1 difficulty + m ()I getDoorBreakTime f method_16462 + m (Lnet/minecraft/world/entity/Mob;Ljava/util/function/Predicate;)V + p 1 mob + p 2 validDifficulties + m (Lnet/minecraft/world/entity/Mob;ILjava/util/function/Predicate;)V + p 1 mob + p 2 doorBreakTime + p 3 validDifficulties +c net/minecraft/world/entity/ai/goal/BreathAirGoal bzx net/minecraft/class_1342 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6408 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z givesAir a method_6253 + p 1 level + p 2 pos + m ()V findAirPosition h method_6252 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/BreedGoal bzy net/minecraft/class_1341 + f Lnet/minecraft/world/entity/animal/Animal; animal a field_6404 + f Lnet/minecraft/world/level/Level; level b field_6405 + f Lnet/minecraft/world/entity/animal/Animal; partner c field_6406 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; PARTNER_TARGETING d field_18086 + f Ljava/lang/Class; partnerClass e field_6403 + f I loveTime f field_6402 + f D speedModifier g field_6407 + m ()V breed g method_6249 + c Spawns a baby animal of the same type. + m ()Lnet/minecraft/world/entity/animal/Animal; getFreePartner h method_6250 + c Loops through nearby animals and finds another animal of the same type that can be mated with. Returns the first valid mate found. + m (Lnet/minecraft/world/entity/animal/Animal;D)V + p 1 animal + p 2 speedModifier + m (Lnet/minecraft/world/entity/animal/Animal;DLjava/lang/Class;)V + p 1 animal + p 2 speedModifier + p 4 partnerClass + m ()V +c net/minecraft/world/entity/ai/goal/CatLieOnBedGoal bzz net/minecraft/class_3697 + f Lnet/minecraft/world/entity/animal/Cat; cat g field_16282 + m (Lnet/minecraft/world/entity/animal/Cat;DI)V + p 1 cat + p 2 speedModifier + p 4 searchRange +c net/minecraft/world/entity/ai/goal/CatSitOnBlockGoal caa net/minecraft/class_1373 + f Lnet/minecraft/world/entity/animal/Cat; cat g field_6545 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_27793 a method_27793 + m (Lnet/minecraft/world/level/block/state/properties/BedPart;)Ljava/lang/Boolean; method_27794 a method_27794 + m (Lnet/minecraft/world/entity/animal/Cat;D)V + p 1 cat + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/ClimbOnTopOfPowderSnowGoal cab net/minecraft/class_6868 + f Lnet/minecraft/world/entity/Mob; mob a field_36399 + f Lnet/minecraft/world/level/Level; level b field_36400 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/goal/DolphinJumpGoal cac net/minecraft/class_1357 + f [I STEPS_TO_CHECK a field_6474 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin b field_6471 + f I interval c field_6472 + f Z breached d field_6473 + m (Lnet/minecraft/core/BlockPos;III)Z waterIsClear a method_6284 + p 1 pos + p 2 dx + p 3 dz + p 4 scale + m (Lnet/minecraft/core/BlockPos;III)Z surfaceIsClear b method_6282 + p 1 pos + p 2 dx + p 3 dz + p 4 scale + m (Lnet/minecraft/world/entity/animal/Dolphin;I)V + p 1 dolphin + p 2 interval + m ()V +c net/minecraft/world/entity/ai/goal/DoorInteractGoal cad net/minecraft/class_1343 + f Z passed a field_6411 + f F doorOpenDirX b field_6410 + f F doorOpenDirZ c field_6409 + f Lnet/minecraft/world/entity/Mob; mob d field_6413 + f Lnet/minecraft/core/BlockPos; doorPos e field_6414 + f Z hasDoor f field_6412 + m (Z)V setOpen a method_19995 + p 1 open + m ()Z isOpen h method_6256 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/EatBlockGoal cae net/minecraft/class_1345 + f I EAT_ANIMATION_TICKS a field_30203 + f Ljava/util/function/Predicate; IS_TALL_GRASS b field_6423 + f Lnet/minecraft/world/entity/Mob; mob c field_6424 + c The entity owner of this AITask + f Lnet/minecraft/world/level/Level; level d field_6421 + c The world the grass eater entity is eating from + f I eatAnimationTick e field_6422 + c Number of ticks since the entity started to eat grass + m ()I getEatAnimationTick h method_6258 + c Number of ticks since the entity started to eat grass + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob + m ()V +c net/minecraft/world/entity/ai/goal/FleeSunGoal caf net/minecraft/class_1344 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6419 + f D wantedX b field_6417 + f D wantedY c field_6416 + f D wantedZ d field_6415 + f D speedModifier e field_6420 + f Lnet/minecraft/world/level/Level; level f field_6418 + m ()Z setWantedPos h method_18250 + m ()Lnet/minecraft/world/phys/Vec3; getHidePos i method_6257 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/FloatGoal cag net/minecraft/class_1347 + f Lnet/minecraft/world/entity/Mob; mob a field_6429 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/FollowBoatGoal cah net/minecraft/class_1346 + f I timeToRecalcPath a field_6428 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_6426 + f Lnet/minecraft/world/entity/player/Player; following c field_6427 + f Lnet/minecraft/world/entity/ai/goal/BoatGoals; currentGoal d field_6425 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/FollowFlockLeaderGoal cai net/minecraft/class_1349 + f I INTERVAL_TICKS a field_30204 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; mob b field_6441 + f I timeToRecalcPath c field_6440 + f I nextStartTick d field_6439 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)I nextStartTick a method_6261 + p 1 taskOwner + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6260 b method_6260 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6262 c method_6262 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V + p 1 fish +c net/minecraft/world/entity/ai/goal/FollowMobGoal caj net/minecraft/class_1348 + c A goal allowing a mob to follow others. The mob must have Ground or Flying navigation. + f Lnet/minecraft/world/entity/Mob; mob a field_6432 + f Ljava/util/function/Predicate; followPredicate b field_6436 + f Lnet/minecraft/world/entity/Mob; followingMob c field_6433 + f D speedModifier d field_6430 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation e field_6434 + f I timeToRecalcPath f field_6431 + f F stopDistance g field_6438 + f F oldWaterCost h field_6437 + f F areaSize i field_6435 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/Mob;)Z method_6259 a method_6259 + m (Lnet/minecraft/world/entity/Mob;DFF)V + c Constructs a goal allowing a mob to follow others. The mob must have Ground or Flying navigation. + p 1 mob + p 2 speedModifier + p 4 stopDistance + p 5 areaSize +c net/minecraft/world/entity/ai/goal/FollowOwnerGoal cak net/minecraft/class_1350 + f Lnet/minecraft/world/entity/TamableAnimal; tamable a field_6448 + f Lnet/minecraft/world/entity/LivingEntity; owner b field_6444 + f D speedModifier c field_6442 + f Lnet/minecraft/world/entity/ai/navigation/PathNavigation; navigation d field_6446 + f I timeToRecalcPath e field_6443 + f F stopDistance f field_6450 + f F startDistance g field_6449 + f F oldWaterCost h field_6447 + m (Lnet/minecraft/world/entity/TamableAnimal;DFF)V + p 1 tamable + p 2 speedModifier + p 4 startDistance + p 5 stopDistance +c net/minecraft/world/entity/ai/goal/FollowParentGoal cal net/minecraft/class_1353 + f I HORIZONTAL_SCAN_RANGE a field_30209 + f I VERTICAL_SCAN_RANGE b field_30210 + f I DONT_FOLLOW_IF_CLOSER_THAN c field_30211 + f Lnet/minecraft/world/entity/animal/Animal; animal d field_6455 + f Lnet/minecraft/world/entity/animal/Animal; parent e field_6452 + f D speedModifier f field_6453 + f I timeToRecalcPath g field_6454 + m (Lnet/minecraft/world/entity/animal/Animal;D)V + p 1 animal + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/Goal cam net/minecraft/class_1352 + f Ljava/util/EnumSet; flags a field_6451 + m ()Z isInterruptable U_ method_6267 + m ()Z requiresUpdateEveryTick V_ method_38846 + m ()V tick a method_6268 + c Called every tick to update a goal that is in progress. + m (I)I adjustedTickDelay a method_38847 + p 1 adjustment + m (Ljava/util/EnumSet;)V setFlags a method_6265 + p 1 flagSet + m ()Z canUse b method_6264 + c Returns whether execution should begin. You can also read and cache any state necessary for execution in this method as well. + m (I)I reducedTickDelay b method_38848 + p 0 reduction + m ()Z canContinueToUse c method_6266 + c @return whether the goal should continue executing + m ()V start d method_6269 + c Called when the goal is about to start executing + m ()V stop e method_6270 + c Called when the goal stops executing, usually to reset the mob's state. + m ()Ljava/util/EnumSet; getFlags j method_6271 + m ()V +c net/minecraft/world/entity/ai/goal/Goal$Flag cam$a net/minecraft/class_1352$class_4134 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; MOVE a field_18405 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; LOOK b field_18406 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; JUMP c field_18407 + f Lnet/minecraft/world/entity/ai/goal/Goal$Flag; TARGET d field_18408 + f [Lnet/minecraft/world/entity/ai/goal/Goal$Flag; $VALUES e field_18409 + m ()[Lnet/minecraft/world/entity/ai/goal/Goal$Flag; $values a method_36621 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector can net/minecraft/class_1355 + f Lnet/minecraft/world/entity/ai/goal/WrappedGoal; NO_GOAL a field_18410 + f Ljava/util/Map; lockedFlags b field_18411 + c Goals currently using a particular flag + f Ljava/util/Set; availableGoals c field_6461 + f Ljava/util/function/Supplier; profiler d field_6463 + f Ljava/util/EnumSet; disabledFlags e field_6462 + m ()V tick a method_6275 + c Ticks every goal in the selector.\nAttempts to start each goal based on if it can be used, or stop it if it can't. + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V addGoal a method_6277 + c Add a goal to the GoalSelector with a certain priority. Lower numbers are higher priority. + p 1 priority + p 2 goal + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;)V disableControlFlag a method_6274 + p 1 flag + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;Z)V setControlFlag a method_6276 + p 1 flag + p 2 enabled + m (Lnet/minecraft/world/entity/ai/goal/Goal;)V removeGoal a method_6280 + c Remove the goal from the GoalSelector. This must be the same object as the goal you are trying to remove, which may not always be accessible. + p 1 goal + m (Lnet/minecraft/world/entity/ai/goal/Goal;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z method_20650 a method_20650 + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;Ljava/util/EnumSet;)Z goalContainsAnyFlags a method_38063 + p 0 goal + p 1 flag + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;Ljava/util/Map;)Z goalCanBeReplacedForAllFlags a method_38064 + p 0 goal + p 1 flag + m (Ljava/util/Map$Entry;)Z method_55701 a method_55701 + m (Ljava/util/function/Predicate;)V removeAllGoals a method_35113 + p 1 filter + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z method_47828 a method_47828 + m (Z)V tickRunningGoals a method_38849 + p 1 tickAllRunning + m ()Ljava/util/Set; getAvailableGoals b method_35115 + m (Lnet/minecraft/world/entity/ai/goal/Goal$Flag;)V enableControlFlag b method_6273 + p 1 flag + m (Ljava/util/function/Supplier;)V + p 1 profiler + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector$1 can$1 net/minecraft/class_1355$1 + m ()V +c net/minecraft/world/entity/ai/goal/GoalSelector$2 can$2 net/minecraft/class_1355$2 + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V +c net/minecraft/world/entity/ai/goal/GolemRandomStrollInVillageGoal cao net/minecraft/class_5274 + f I POI_SECTION_SCAN_RADIUS i field_30213 + f I VILLAGER_SCAN_RADIUS j field_30214 + f I RANDOM_POS_XY_DISTANCE k field_30215 + f I RANDOM_POS_Y_DISTANCE l field_30216 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;)Z method_27924 a method_27924 + m (Lnet/minecraft/world/entity/npc/Villager;)Z doesVillagerWantGolem a method_27922 + p 1 villager + m (Lnet/minecraft/core/Holder;)Z method_27921 a method_27921 + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/core/BlockPos; getRandomPoiWithinSection a method_27923 + p 1 sectionPos + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsAnywhere k method_27925 + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsVillagerWhoWantsGolem l method_27926 + m ()Lnet/minecraft/world/phys/Vec3; getPositionTowardsPoi m method_27927 + m ()Lnet/minecraft/core/SectionPos; getRandomVillageSection n method_27928 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/InteractGoal cap net/minecraft/class_1358 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FF)V +c net/minecraft/world/entity/ai/goal/JumpGoal caq net/minecraft/class_4017 + m ()V +c net/minecraft/world/entity/ai/goal/LandOnOwnersShoulderGoal car net/minecraft/class_1360 + f Lnet/minecraft/world/entity/animal/ShoulderRidingEntity; entity a field_6478 + f Lnet/minecraft/server/level/ServerPlayer; owner b field_6479 + f Z isSittingOnShoulder c field_6480 + m (Lnet/minecraft/world/entity/animal/ShoulderRidingEntity;)V + p 1 entity +c net/minecraft/world/entity/ai/goal/LeapAtTargetGoal cas net/minecraft/class_1359 + f Lnet/minecraft/world/entity/Mob; mob a field_6476 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6477 + f F yd c field_6475 + m (Lnet/minecraft/world/entity/Mob;F)V + p 1 mob + p 2 yd +c net/minecraft/world/entity/ai/goal/LlamaFollowCaravanGoal cat net/minecraft/class_1362 + f Lnet/minecraft/world/entity/animal/horse/Llama; llama a field_6488 + f D speedModifier b field_6487 + f I CARAVAN_LIMIT c field_30217 + f I distCheckCounter d field_6489 + m (Lnet/minecraft/world/entity/Entity;)Z method_19616 a method_19616 + m (Lnet/minecraft/world/entity/animal/horse/Llama;I)Z firstIsLeashed a method_6285 + p 1 llama + p 2 leashedQueuePosition + m (Lnet/minecraft/world/entity/animal/horse/Llama;D)V + p 1 llama + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/LookAtPlayerGoal cau net/minecraft/class_1361 + f F DEFAULT_PROBABILITY a field_33760 + f Lnet/minecraft/world/entity/Mob; mob b field_6486 + f Lnet/minecraft/world/entity/Entity; lookAt c field_6484 + f F lookDistance d field_6482 + f F probability e field_6481 + f Ljava/lang/Class; lookAtType f field_6485 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; lookAtContext g field_18087 + f I lookTime h field_6483 + f Z onlyHorizontal i field_33761 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31502 a method_31502 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)Z method_18414 a method_18414 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FF)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + p 4 probability + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;FFZ)V + p 1 mob + p 2 lookAtType + p 3 lookDistance + p 4 probability + p 5 onlyHorizontal +c net/minecraft/world/entity/ai/goal/LookAtTradingPlayerGoal cav net/minecraft/class_1364 + f Lnet/minecraft/world/entity/npc/AbstractVillager; villager h field_6495 + m (Lnet/minecraft/world/entity/npc/AbstractVillager;)V + p 1 villager +c net/minecraft/world/entity/ai/goal/MeleeAttackGoal caw net/minecraft/class_1366 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6503 + f D speedModifier b field_6500 + f Z followingTargetEvenIfNotSeen c field_6502 + f Lnet/minecraft/world/level/pathfinder/Path; path d field_6509 + f D pathedTargetX e field_6508 + f D pathedTargetY f field_6507 + f D pathedTargetZ g field_6506 + f I ticksUntilNextPathRecalculation h field_6501 + f I ticksUntilNextAttack i field_24667 + f I attackInterval j field_6504 + f J lastCanUseCheck k field_19200 + f J COOLDOWN_BETWEEN_CAN_USE_CHECKS l field_30218 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkAndPerformAttack a method_6288 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z canPerformAttack b method_53715 + p 1 entity + m ()V resetAttackCooldown h method_28346 + m ()Z isTimeToAttack i method_28347 + m ()I getTicksUntilNextAttack k method_28348 + m ()I getAttackInterval l method_28349 + m (Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 1 mob + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/ai/goal/MoveBackToVillageGoal cax net/minecraft/class_4291 + f I MAX_XZ_DIST i field_30219 + f I MAX_Y_DIST j field_30220 + m (Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 1 mob + p 2 speedModifier + p 4 checkNoActionTime +c net/minecraft/world/entity/ai/goal/MoveThroughVillageGoal cay net/minecraft/class_1368 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6525 + f D speedModifier b field_6520 + f Lnet/minecraft/world/level/pathfinder/Path; path c field_6523 + f Lnet/minecraft/core/BlockPos; poiPos d field_18412 + f Z onlyAtNight e field_6524 + f Ljava/util/List; visited f field_18413 + f I distanceToPoi g field_18414 + f Ljava/util/function/BooleanSupplier; canDealWithDoors h field_18415 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_19053 a method_19053 + m (Lnet/minecraft/core/BlockPos;)Z hasNotVisited a method_19052 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/lang/Double; method_43974 a method_43974 + m (Lnet/minecraft/core/Holder;)Z method_43975 a method_43975 + m (Lnet/minecraft/core/Holder;)Z method_43976 b method_43976 + m ()V updateVisited h method_6297 + m (Lnet/minecraft/world/entity/PathfinderMob;DZILjava/util/function/BooleanSupplier;)V + p 1 mob + p 2 speedModifier + p 4 onlyAtNight + p 5 distanceToPoi + p 6 canDealWithDoors +c net/minecraft/world/entity/ai/goal/MoveToBlockGoal caz net/minecraft/class_1367 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6516 + f D speedModifier b field_6514 + f I nextStartTick c field_6518 + c Controls task execution delay + f I tryTicks d field_6517 + f Lnet/minecraft/core/BlockPos; blockPos e field_6512 + c Block to move to + f I verticalSearchStart f field_6515 + f I GIVE_UP_TICKS g field_30221 + f I STAY_TICKS h field_30222 + f I INTERVAL_TICKS i field_30223 + f I maxStayTicks j field_6511 + f Z reachedTarget k field_6513 + f I searchRange l field_6510 + f I verticalSearchRange m field_6519 + m (Lnet/minecraft/world/entity/PathfinderMob;)I nextStartTick a method_6293 + p 1 creature + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isValidTarget a method_6296 + c Return {@code true} to set given position as destination + p 1 level + p 2 pos + m ()V moveMobToBlock h method_6290 + m ()D acceptedDistance i method_6291 + m ()Lnet/minecraft/core/BlockPos; getMoveToTarget k method_30953 + m ()Z shouldRecalculatePath l method_6294 + m ()Z isReachedTarget m method_6295 + m ()Z findNearestBlock n method_6292 + c Searches and sets new destination block and returns true if a suitable block (specified in {@link #isValidTarget(net.minecraft.world.level.LevelReader, net.minecraft.core.BlockPos)}) can be found. + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 mob + p 2 speedModifier + p 4 searchRange + m (Lnet/minecraft/world/entity/PathfinderMob;DII)V + p 1 mob + p 2 speedModifier + p 4 searchRange + p 5 verticalSearchRange +c net/minecraft/world/entity/ai/goal/MoveTowardsRestrictionGoal cba net/minecraft/class_1370 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6536 + f D wantedX b field_6535 + f D wantedY c field_6534 + f D wantedZ d field_6533 + f D speedModifier e field_6537 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/MoveTowardsTargetGoal cbb net/minecraft/class_1369 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6528 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6529 + f D wantedX c field_6527 + f D wantedY d field_6526 + f D wantedZ e field_6531 + f D speedModifier f field_6530 + f F within g field_6532 + m (Lnet/minecraft/world/entity/PathfinderMob;DF)V + p 1 mob + p 2 speedModifier + p 4 within +c net/minecraft/world/entity/ai/goal/OcelotAttackGoal cbc net/minecraft/class_1371 + f Lnet/minecraft/world/entity/Mob; mob a field_6541 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6539 + f I attackTime c field_6540 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/OfferFlowerGoal cbd net/minecraft/class_1372 + f I OFFER_TICKS a field_30224 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; OFFER_TARGER_CONTEXT b field_18089 + f Lnet/minecraft/world/entity/animal/IronGolem; golem c field_6542 + f Lnet/minecraft/world/entity/npc/Villager; villager d field_6544 + f I tick e field_6543 + m (Lnet/minecraft/world/entity/animal/IronGolem;)V + p 1 golem + m ()V +c net/minecraft/world/entity/ai/goal/OpenDoorGoal cbe net/minecraft/class_4255 + f Z closeDoor a field_19004 + f I forgetTime b field_19005 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 closeDoor +c net/minecraft/world/entity/ai/goal/PanicGoal cbf net/minecraft/class_1374 + f Ljava/util/function/Function; panicCausingDamageTypes a field_52011 + f I WATER_CHECK_DISTANCE_VERTICAL b field_36271 + f Lnet/minecraft/world/entity/PathfinderMob; mob c field_6549 + f D speedModifier d field_6548 + f D posX e field_6547 + f D posY f field_6546 + f D posZ g field_6550 + f Z isRunning h field_23227 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60722 a method_60722 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/core/BlockPos; lookForWater a method_6300 + p 1 level + p 2 entity + p 3 range + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39764 a method_39764 + m ()Z shouldPanic h method_40072 + m ()Z findRandomPosition i method_6301 + m ()Z isRunning k method_26337 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DLnet/minecraft/tags/TagKey;)V + p 1 mob + p 2 speedModifier + p 4 panicCausingDamageTypes + m (Lnet/minecraft/world/entity/PathfinderMob;DLjava/util/function/Function;)V + p 1 mob + p 2 speedModifier + p 4 panicCausingDamageTypes +c net/minecraft/world/entity/ai/goal/PathfindToRaidGoal cbg net/minecraft/class_3759 + f I RECRUITMENT_SEARCH_TICK_DELAY a field_36302 + f F SPEED_MODIFIER b field_30225 + f Lnet/minecraft/world/entity/raid/Raider; mob c field_16597 + f I recruitmentTick d field_36303 + m (Lnet/minecraft/world/entity/raid/Raid;)V recruitNearby a method_16465 + p 1 raid + m (Lnet/minecraft/world/entity/raid/Raid;Lnet/minecraft/world/entity/raid/Raider;)Z method_16466 a method_16466 + m (Lnet/minecraft/world/entity/raid/Raider;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RandomLookAroundGoal cbh net/minecraft/class_1376 + f Lnet/minecraft/world/entity/Mob; mob a field_6556 + f D relX b field_6554 + f D relZ c field_6553 + f I lookTime d field_6555 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RandomStandGoal cbi net/minecraft/class_7688 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse a field_40125 + f I nextStand b field_40126 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V resetStandInterval a method_45336 + p 1 horse + m ()V playStandSound h method_45337 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V + p 1 horse +c net/minecraft/world/entity/ai/goal/RandomStrollGoal cbj net/minecraft/class_1379 + f I DEFAULT_INTERVAL a field_30226 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_6566 + f D wantedX c field_6563 + f D wantedY d field_6562 + f D wantedZ e field_6561 + f D speedModifier f field_6567 + f I interval g field_6564 + f Z forceTrigger h field_6565 + f Z checkNoActionTime i field_24463 + m (I)V setInterval c method_6303 + c Changes task random possibility for execution + p 1 newchance + m ()Lnet/minecraft/world/phys/Vec3; getPosition h method_6302 + m ()V trigger i method_6304 + c Makes task to bypass chance + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 mob + p 2 speedModifier + p 4 interval + m (Lnet/minecraft/world/entity/PathfinderMob;DIZ)V + p 1 mob + p 2 speedModifier + p 4 interval + p 5 checkNoActionTime +c net/minecraft/world/entity/ai/goal/RandomSwimmingGoal cbk net/minecraft/class_1378 + m (Lnet/minecraft/world/entity/PathfinderMob;DI)V +c net/minecraft/world/entity/ai/goal/RangedAttackGoal cbl net/minecraft/class_1381 + f Lnet/minecraft/world/entity/Mob; mob a field_6583 + f Lnet/minecraft/world/entity/monster/RangedAttackMob; rangedAttackMob b field_6582 + f Lnet/minecraft/world/entity/LivingEntity; target c field_6580 + f I attackTime d field_6581 + f D speedModifier e field_6586 + f I seeTime f field_6579 + f I attackIntervalMin g field_6578 + f I attackIntervalMax h field_6577 + f F attackRadius i field_6585 + f F attackRadiusSqr j field_6584 + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackInterval + p 5 attackRadius + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackIntervalMin + p 5 attackIntervalMax + p 6 attackRadius +c net/minecraft/world/entity/ai/goal/RangedBowAttackGoal cbm net/minecraft/class_1380 + f Lnet/minecraft/world/entity/monster/Monster; mob a field_6576 + f D speedModifier b field_6569 + f I attackIntervalMin c field_6575 + f F attackRadiusSqr d field_6570 + f I attackTime e field_6574 + f I seeTime f field_6572 + f Z strafingClockwise g field_6573 + f Z strafingBackwards h field_6571 + f I strafingTime i field_6568 + m (I)V setMinAttackInterval c method_6305 + p 1 attackCooldown + m ()Z isHoldingBow h method_6306 + m (Lnet/minecraft/world/entity/monster/Monster;DIF)V + p 1 mob + p 2 speedModifier + p 4 attackIntervalMin + p 5 attackRadius +c net/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal cbn net/minecraft/class_1383 + f Lnet/minecraft/util/valueproviders/UniformInt; PATHFINDING_DELAY_RANGE a field_25696 + f Lnet/minecraft/world/entity/monster/Monster; mob b field_6593 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; crossbowState c field_16528 + f D speedModifier d field_6590 + f F attackRadiusSqr e field_6591 + f I seeTime f field_6592 + f I attackDelay g field_16529 + f I updatePathDelay h field_25697 + m ()Z isHoldingCrossbow h method_6310 + m ()Z isValidTarget i method_19996 + m ()Z canRun k method_16352 + m (Lnet/minecraft/world/entity/monster/Monster;DF)V + p 1 mob + p 2 speedModifier + p 4 attackRadius + m ()V +c net/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState cbn$a net/minecraft/class_1383$class_3744 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; UNCHARGED a field_16534 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; CHARGING b field_16530 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; CHARGED c field_16532 + f Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; READY_TO_ATTACK d field_16533 + f [Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; $VALUES e field_16531 + m ()[Lnet/minecraft/world/entity/ai/goal/RangedCrossbowAttackGoal$CrossbowState; $values a method_36622 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/goal/RemoveBlockGoal cbo net/minecraft/class_1382 + f Lnet/minecraft/world/level/block/Block; blockToRemove g field_6587 + f Lnet/minecraft/world/entity/Mob; removerMob h field_6589 + f I ticksSinceReachedGoal i field_6588 + f I WAIT_AFTER_BLOCK_FOUND j field_30227 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playBreakSound a method_6309 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V playDestroyProgressSound a method_6307 + p 1 level + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockGetter;)Lnet/minecraft/core/BlockPos; getPosWithBlock a method_6308 + p 1 pos + p 2 level + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 1 blockToRemove + p 2 removerMob + p 3 speedModifier + p 5 searchRange +c net/minecraft/world/entity/ai/goal/RestrictSunGoal cbp net/minecraft/class_1384 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6594 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/RunAroundLikeCrazyGoal cbq net/minecraft/class_1387 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse a field_6602 + f D speedModifier b field_6601 + f D posX c field_6600 + f D posY d field_6599 + f D posZ e field_6603 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;D)V + p 1 horse + p 2 speedModifier +c net/minecraft/world/entity/ai/goal/SitWhenOrderedToGoal cbr net/minecraft/class_1386 + f Lnet/minecraft/world/entity/TamableAnimal; mob a field_6597 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/StrollThroughVillageGoal cbs net/minecraft/class_4018 + f I DISTANCE_THRESHOLD a field_30228 + f Lnet/minecraft/world/entity/PathfinderMob; mob b field_17944 + f I interval c field_17945 + f Lnet/minecraft/core/BlockPos; wantedPos d field_17947 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)D method_19054 a method_19054 + m ()V moveRandomly h method_18252 + m (Lnet/minecraft/world/entity/PathfinderMob;I)V + p 1 mob + p 2 interval +c net/minecraft/world/entity/ai/goal/SwellGoal cbt net/minecraft/class_1389 + f Lnet/minecraft/world/entity/monster/Creeper; creeper a field_6608 + f Lnet/minecraft/world/entity/LivingEntity; target b field_6609 + m (Lnet/minecraft/world/entity/monster/Creeper;)V + p 1 creeper +c net/minecraft/world/entity/ai/goal/TemptGoal cbu net/minecraft/class_1391 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6616 + f Lnet/minecraft/world/entity/player/Player; player b field_6617 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TEMP_TARGETING c field_18090 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetingConditions d field_28404 + f D speedModifier e field_6615 + f D px f field_6614 + f D py g field_6611 + f D pz h field_6621 + f D pRotX i field_6619 + f D pRotY j field_6618 + f I calmDown k field_6612 + f Z isRunning l field_6613 + f Ljava/util/function/Predicate; items m field_6622 + f Z canScare n field_6620 + m (Lnet/minecraft/world/entity/LivingEntity;)Z shouldFollow a method_6312 + p 1 entity + m ()Z canScare h method_16081 + m ()Z isRunning i method_6313 + c @see #isRunning + m (Lnet/minecraft/world/entity/PathfinderMob;DLjava/util/function/Predicate;Z)V + p 1 mob + p 2 speedModifier + p 4 items + p 5 canScare + m ()V +c net/minecraft/world/entity/ai/goal/TradeWithPlayerGoal cbv net/minecraft/class_1390 + f Lnet/minecraft/world/entity/npc/AbstractVillager; mob a field_6610 + m (Lnet/minecraft/world/entity/npc/AbstractVillager;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/TryFindWaterGoal cbw net/minecraft/class_1393 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_6625 + m (Lnet/minecraft/world/entity/PathfinderMob;)V + p 1 mob +c net/minecraft/world/entity/ai/goal/UseItemGoal cbx net/minecraft/class_3993 + f Lnet/minecraft/world/entity/Mob; mob a field_17755 + f Lnet/minecraft/world/item/ItemStack; item b field_17756 + f Ljava/util/function/Predicate; canUseSelector c field_17757 + f Lnet/minecraft/sounds/SoundEvent; finishUsingSound d field_18280 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/sounds/SoundEvent;Ljava/util/function/Predicate;)V + p 1 mob + p 2 item + p 3 finishUsingSound + p 4 canUseSelector +c net/minecraft/world/entity/ai/goal/WaterAvoidingRandomFlyingGoal cby net/minecraft/class_1395 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V +c net/minecraft/world/entity/ai/goal/WaterAvoidingRandomStrollGoal cbz net/minecraft/class_1394 + f F PROBABILITY i field_30229 + f F probability j field_6626 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier + m (Lnet/minecraft/world/entity/PathfinderMob;DF)V + p 1 mob + p 2 speedModifier + p 4 probability +c net/minecraft/world/entity/ai/goal/WrappedGoal cca net/minecraft/class_4135 + c This is an internal object used by the GoalSelector to choose between Goals.\nIn most cases, it should not be constructed directly.\n\nFor information on how individual methods work, see the javadocs for Goal:\n{@link net.minecraft.entity.ai.goal.Goal} + f Lnet/minecraft/world/entity/ai/goal/Goal; goal a field_18416 + f I priority b field_18417 + f Z isRunning c field_18418 + m (Lnet/minecraft/world/entity/ai/goal/WrappedGoal;)Z canBeReplacedBy a method_19055 + p 1 other + m ()Z isRunning h method_19056 + m ()I getPriority i method_19057 + m ()Lnet/minecraft/world/entity/ai/goal/Goal; getGoal k method_19058 + c Gets the private goal enclosed by this WrappedGoal. + m (ILnet/minecraft/world/entity/ai/goal/Goal;)V + p 1 priority + p 2 goal +c net/minecraft/world/entity/ai/goal/ZombieAttackGoal ccb net/minecraft/class_1396 + f Lnet/minecraft/world/entity/monster/Zombie; zombie b field_6628 + f I raiseArmTicks c field_6627 + m (Lnet/minecraft/world/entity/monster/Zombie;DZ)V + p 1 zombie + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/ai/goal/package-info ccc net/minecraft/class_6038 +c net/minecraft/world/entity/ai/goal/target/DefendVillageTargetGoal ccd net/minecraft/class_1397 + f Lnet/minecraft/world/entity/animal/IronGolem; golem a field_6629 + f Lnet/minecraft/world/entity/LivingEntity; potentialTarget b field_6630 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; attackTargeting c field_19340 + m (Lnet/minecraft/world/entity/animal/IronGolem;)V + p 1 golem +c net/minecraft/world/entity/ai/goal/target/HurtByTargetGoal cce net/minecraft/class_1399 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; HURT_BY_TARGETING a field_18091 + f I ALERT_RANGE_Y b field_30230 + f Z alertSameType c field_6639 + f I timestamp d field_6638 + c Store the previous revengeTimer value + f [Ljava/lang/Class; toIgnoreDamage i field_6637 + f [Ljava/lang/Class; toIgnoreAlert j field_6640 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/LivingEntity;)V alertOther a method_6319 + p 1 mob + p 2 target + m ([Ljava/lang/Class;)Lnet/minecraft/world/entity/ai/goal/target/HurtByTargetGoal; setAlertOthers a method_6318 + p 1 reinforcementTypes + m ()V alertOthers h method_6317 + m (Lnet/minecraft/world/entity/PathfinderMob;[Ljava/lang/Class;)V + p 1 mob + p 2 toIgnoreDamage + m ()V +c net/minecraft/world/entity/ai/goal/target/NearestAttackableTargetGoal ccf net/minecraft/class_1400 + f Ljava/lang/Class; targetType a field_6643 + f I randomInterval b field_6641 + f Lnet/minecraft/world/entity/LivingEntity; target c field_6644 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetConditions d field_6642 + c This filter is applied to the Entity search. Only matching entities will be targeted. + f I DEFAULT_RANDOM_INTERVAL i field_36304 + m (D)Lnet/minecraft/world/phys/AABB; getTargetSearchArea a method_6321 + p 1 targetDistance + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_24632 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31503 b method_31503 + m ()V findTarget h method_18415 + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;Z)V + p 1 mob + p 2 targetType + p 3 mustSee + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 targetPredicate + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;ZZ)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 mustReach + m (Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;IZZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 randomInterval + p 4 mustSee + p 5 mustReach + p 6 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NearestAttackableWitchTargetGoal ccg net/minecraft/class_3760 + f Z canAttack i field_17281 + m (Z)V setCanAttack a method_17351 + p 1 active + m (Lnet/minecraft/world/entity/raid/Raider;Ljava/lang/Class;IZZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 randomInterval + p 4 mustSee + p 5 mustReach + p 6 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NearestHealableRaiderTargetGoal cch net/minecraft/class_3909 + f I DEFAULT_COOLDOWN i field_30231 + f I cooldown j field_17282 + m ()I getCooldown i method_17352 + m ()V decrementCooldown k method_17353 + m (Lnet/minecraft/world/entity/raid/Raider;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 mob + p 2 targetType + p 3 mustSee + p 4 targetPredicate +c net/minecraft/world/entity/ai/goal/target/NonTameRandomTargetGoal cci net/minecraft/class_1404 + f Lnet/minecraft/world/entity/TamableAnimal; tamableMob i field_6656 + m (Lnet/minecraft/world/entity/TamableAnimal;Ljava/lang/Class;ZLjava/util/function/Predicate;)V + p 1 tamableMob + p 2 targetType + p 3 mustSee + p 4 targetPredicate +c net/minecraft/world/entity/ai/goal/target/OwnerHurtByTargetGoal ccj net/minecraft/class_1403 + f Lnet/minecraft/world/entity/TamableAnimal; tameAnimal a field_6654 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurtBy b field_6655 + f I timestamp c field_6653 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 tameAnimal +c net/minecraft/world/entity/ai/goal/target/OwnerHurtTargetGoal cck net/minecraft/class_1406 + f Lnet/minecraft/world/entity/TamableAnimal; tameAnimal a field_6666 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurt b field_6667 + f I timestamp c field_6665 + m (Lnet/minecraft/world/entity/TamableAnimal;)V + p 1 tameAnimal +c net/minecraft/world/entity/ai/goal/target/ResetUniversalAngerTargetGoal ccl net/minecraft/class_5398 + f I ALERT_RANGE_Y a field_30232 + f Lnet/minecraft/world/entity/Mob; mob b field_25604 + f Z alertOthersOfSameType c field_25605 + f I lastHurtByPlayerTimestamp d field_25606 + m (Lnet/minecraft/world/entity/Mob;)Lnet/minecraft/world/entity/NeutralMob; method_29930 a method_29930 + m (Lnet/minecraft/world/entity/Mob;)Z method_29931 b method_29931 + m ()Z wasHurtByPlayer h method_29932 + m ()Ljava/util/List; getNearbyMobsOfSameType i method_29933 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 alertOthersOfSameType +c net/minecraft/world/entity/ai/goal/target/TargetGoal ccm net/minecraft/class_1405 + f I EMPTY_REACH_CACHE a field_30233 + f I CAN_REACH_CACHE b field_30234 + f I CANT_REACH_CACHE c field_30235 + f Z mustReach d field_6663 + f Lnet/minecraft/world/entity/Mob; mob e field_6660 + c The entity that this goal belongs to + f Z mustSee f field_6658 + f Lnet/minecraft/world/entity/LivingEntity; targetMob g field_6664 + f I unseenMemoryTicks h field_6657 + f I reachCache i field_6662 + f I reachCacheTime j field_6661 + f I unseenTicks k field_6659 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canReach a method_6329 + c Checks to see if this entity can find a short path to the given target. + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;)Z canAttack a method_6328 + c Checks if this is a suitable target. + p 1 potentialTarget + p 2 targetPredicate + m (I)Lnet/minecraft/world/entity/ai/goal/target/TargetGoal; setUnseenMemoryTicks c method_6330 + p 1 unseenMemoryTicks + m ()D getFollowDistance l method_6326 + m (Lnet/minecraft/world/entity/Mob;Z)V + p 1 mob + p 2 mustSee + m (Lnet/minecraft/world/entity/Mob;ZZ)V + p 1 mob + p 2 mustSee + p 3 mustReach +c net/minecraft/world/entity/ai/goal/target/package-info ccn net/minecraft/class_6039 +c net/minecraft/world/entity/ai/gossip/GossipContainer cco net/minecraft/class_4136 + f I DISCARD_THRESHOLD a field_30236 + f Lorg/slf4j/Logger; LOGGER b field_41669 + f Ljava/util/Map; gossips c field_18419 + m ()Ljava/util/Map; getGossipEntries a method_35120 + m (II)I mergeValuesForTransfer a method_19059 + c Returns the greater of two int values + p 0 value1 + p 1 value2 + m (Lnet/minecraft/util/RandomSource;I)Ljava/util/Collection; selectGossipsForTransfer a method_19070 + p 1 random + p 2 amount + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry;)V method_19060 a method_19060 + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer;Lnet/minecraft/util/RandomSource;I)V transferFrom a method_19061 + p 1 container + p 2 randomSource + p 3 amount + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove a method_35121 + p 1 gossipType + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;II)I mergeValuesForAddition a method_19063 + p 1 gossipType + p 2 existing + p 3 additive + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;Ljava/util/function/DoublePredicate;)J getCountForType a method_35122 + p 1 gossipType + p 2 gossipPredicate + m (Lcom/mojang/datafixers/util/Pair;)Ljava/util/stream/Stream; method_47924 a method_47924 + m (Lcom/mojang/serialization/Dynamic;)V update a method_19066 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Ljava/lang/Object; store a method_19067 + p 1 ops + m (Ljava/lang/String;)V method_47925 a method_47925 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19069 a method_19069 + m (Ljava/util/Map;Ljava/util/UUID;)V method_35123 a method_35123 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips; getOrCreate a method_19071 + p 1 identifier + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove a method_35124 + p 1 identifier + p 2 gossipType + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V add a method_19072 + p 1 identifier + p 2 gossipType + p 3 gossipValue + m (Ljava/util/UUID;Ljava/util/function/Predicate;)I getReputation a method_19073 + p 1 identifier + p 2 gossip + m (Ljava/util/function/DoublePredicate;Lnet/minecraft/world/entity/ai/gossip/GossipType;Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips;)Z method_35125 a method_35125 + m ()V decay b method_20651 + m (Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry;)V method_19075 b method_19075 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;II)I method_19065 b method_19065 + m (Ljava/lang/String;)V method_47926 b method_47926 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips; method_19076 b method_19076 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V remove b method_35126 + p 1 identifier + p 2 gossipType + p 3 gossipValue + m ()Ljava/util/stream/Stream; unpack c method_19074 + m ()V + m ()V +c net/minecraft/world/entity/ai/gossip/GossipContainer$EntityGossips cco$a net/minecraft/class_4136$class_4137 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; entries a field_18420 + m ()V decay a method_20652 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V makeSureValueIsntTooLowOrTooHigh a method_20653 + p 1 gossipType + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)I method_19078 a method_19078 + m (Ljava/util/UUID;)Ljava/util/stream/Stream; unpack a method_19079 + p 1 identifier + m (Ljava/util/UUID;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lnet/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry; method_19080 a method_19080 + m (Ljava/util/function/Predicate;)I weightedValue a method_19081 + p 1 gossipType + m (Ljava/util/function/Predicate;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Z method_19082 a method_19082 + m ()Z isEmpty b method_20654 + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)V remove b method_20655 + p 1 gossipType + m ()V +c net/minecraft/world/entity/ai/gossip/GossipContainer$GossipEntry cco$b net/minecraft/class_4136$class_4138 + f Lcom/mojang/serialization/Codec; CODEC a field_41670 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_41671 + f Ljava/util/UUID; target c comp_1180 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; type d comp_1181 + f I value e comp_1182 + m ()I weightedValue a method_19083 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47927 a method_47927 + m ()Ljava/util/UUID; target b comp_1180 + m ()Lnet/minecraft/world/entity/ai/gossip/GossipType; type c comp_1181 + m ()I value d comp_1182 + m (Ljava/util/UUID;Lnet/minecraft/world/entity/ai/gossip/GossipType;I)V + p 1 target + p 2 type + p 3 value + m ()V +c net/minecraft/world/entity/ai/gossip/GossipType ccp net/minecraft/class_4139 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MAJOR_NEGATIVE a field_18424 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MINOR_NEGATIVE b field_18425 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MINOR_POSITIVE c field_18426 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; MAJOR_POSITIVE d field_18427 + f Lnet/minecraft/world/entity/ai/gossip/GossipType; TRADING e field_18428 + f I REPUTATION_CHANGE_PER_EVENT f field_30240 + f I REPUTATION_CHANGE_PER_EVERLASTING_MEMORY g field_30241 + f I REPUTATION_CHANGE_PER_TRADE h field_30242 + f Ljava/lang/String; id i field_18430 + f I weight j field_18431 + f I max k field_18432 + f I decayPerDay l field_19354 + f I decayPerTransfer m field_18434 + f Lcom/mojang/serialization/Codec; CODEC n field_41672 + f [Lnet/minecraft/world/entity/ai/gossip/GossipType; $VALUES o field_18436 + m ()[Lnet/minecraft/world/entity/ai/gossip/GossipType; $values a method_36623 + m (Ljava/lang/String;ILjava/lang/String;IIII)V + p 3 id + p 4 weight + p 5 max + p 6 decayPerDay + p 7 decayPerTransfer + m ()V +c net/minecraft/world/entity/ai/gossip/package-info ccq net/minecraft/class_6040 +c net/minecraft/world/entity/ai/memory/ExpirableValue ccr net/minecraft/class_4831 + f Ljava/lang/Object; value a field_22330 + f J timeToLive b field_22331 + m ()V tick a method_24913 + m (Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Ljava/util/Optional; method_28352 a method_28352 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_28353 + p 0 valueCodec + m (Lcom/mojang/serialization/Codec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28354 a method_28354 + m (Ljava/lang/Object;)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; of a method_28355 + p 0 value + m (Ljava/lang/Object;J)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; of a method_24636 + p 0 value + p 1 timeToLive + m (Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/world/entity/ai/memory/ExpirableValue; method_28356 a method_28356 + m ()J getTimeToLive b method_35127 + m (Lnet/minecraft/world/entity/ai/memory/ExpirableValue;)Ljava/lang/Object; method_28357 b method_28357 + m ()Ljava/lang/Object; getValue c method_24637 + m ()Z hasExpired d method_24634 + m ()Z canExpire e method_24914 + m (Ljava/lang/Object;J)V + p 1 value + p 2 timeToLive +c net/minecraft/world/entity/ai/memory/MemoryModuleType ccs net/minecraft/class_4140 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_HOSTILE A field_18453 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_ATTACKABLE B field_30243 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HIDING_PLACE C field_19008 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HEARD_BELL_TIME D field_19009 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; CANT_REACH_WALK_TARGET_SINCE E field_19293 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; GOLEM_DETECTED_RECENTLY F field_25754 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DANGER_DETECTED_RECENTLY G field_47762 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_SLEPT H field_19385 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_WOKEN I field_20616 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LAST_WORKED_AT_POI J field_19386 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT K field_25359 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_WANTED_ITEM L field_22332 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_NEMESIS M field_25360 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PLAY_DEAD_TICKS N field_28324 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TEMPTING_PLAYER O field_28325 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TEMPTATION_COOLDOWN_TICKS P field_28326 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; GAZE_COOLDOWN_TICKS Q field_40127 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_TEMPTED R field_28327 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LONG_JUMP_COOLDOWN_TICKS S field_30244 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LONG_JUMP_MID_JUMP T field_30245 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HAS_HUNTING_COOLDOWN U field_30246 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RAM_COOLDOWN_TICKS V field_33483 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RAM_TARGET W field_33484 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_IN_WATER X field_37442 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_PREGNANT Y field_37443 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_PANICKING Z field_39408 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RECENT_PROJECTILE aA field_38110 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_SNIFFING aB field_38111 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; IS_EMERGING aC field_38112 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_SOUND_DELAY aD field_38113 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DIG_COOLDOWN aE field_38103 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_SOUND_COOLDOWN aF field_38104 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFF_COOLDOWN aG field_38105 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TOUCH_COOLDOWN aH field_38106 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VIBRATION_COOLDOWN aI field_38107 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_COOLDOWN aJ field_38856 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_SOUND_COOLDOWN aK field_38857 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SONIC_BOOM_SOUND_DELAY aL field_38858 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DUMMY a field_18437 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_PLAYER aM field_38394 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_NOTEBLOCK_POSITION aN field_38395 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LIKED_NOTEBLOCK_COOLDOWN_TICKS aO field_38396 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ITEM_PICKUP_COOLDOWN_TICKS aP field_38397 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_EXPLORED_POSITIONS aQ field_42637 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_SNIFFING_TARGET aR field_42638 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_DIGGING aS field_42639 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SNIFFER_HAPPY aT field_42640 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_COOLDOWN aU field_47252 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT aV field_47253 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_CHARGING aW field_47254 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_RECOVERING aX field_47255 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_SHOOT_COOLDOWN aY field_47256 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_INHALING aZ field_47257 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; UNREACHABLE_TONGUE_TARGETS aa field_39450 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ANGRY_AT ab field_22333 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; UNIVERSAL_ANGER ac field_25361 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ADMIRING_ITEM ad field_22334 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; TIME_TRYING_TO_REACH_ADMIRE_ITEM ae field_25813 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DISABLE_WALK_TO_ADMIRE_ITEM af field_25814 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ADMIRING_DISABLED ag field_22473 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HUNTED_RECENTLY ah field_22336 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; CELEBRATE_LOCATION ai field_22337 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DANCING aj field_25159 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_HUNTABLE_HOGLIN ak field_22339 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_BABY_HOGLIN al field_22340 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_TARGETABLE_PLAYER_NOT_WEARING_GOLD am field_22342 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEARBY_ADULT_PIGLINS an field_25755 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_PIGLINS ao field_22343 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_HOGLINS ap field_22344 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ADULT_PIGLIN aq field_22345 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ZOMBIFIED ar field_22346 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_ADULT_PIGLIN_COUNT as field_22347 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_ADULT_HOGLIN_COUNT at field_22348 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_PLAYER_HOLDING_WANTED_ITEM au field_22349 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATE_RECENTLY av field_22350 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_REPELLENT aw field_22474 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PACIFIED ax field_22353 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ROAR_TARGET ay field_38108 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DISTURBANCE_LOCATION az field_38109 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HOME b field_18438 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_JUMP_TARGET ba field_47258 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREEZE_LEAVING_WATER bb field_47763 + f Ljava/util/Optional; codec bc field_24668 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; JOB_SITE c field_18439 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; POTENTIAL_JOB_SITE d field_25160 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; MEETING_POINT e field_18440 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; SECONDARY_JOB_SITE f field_18873 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_LIVING_ENTITIES g field_18441 + c Holds a list of nearby living entities inside the brain entity's bounding box expanded 16 blocks in all directions. + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_LIVING_ENTITIES h field_18442 + c Holds a list of nearby living entities inside the brain entity's bounding box expanded 16 blocks in all directions which the brain entity can see. + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; VISIBLE_VILLAGER_BABIES i field_19006 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_PLAYERS j field_18443 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_PLAYER k field_18444 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_VISIBLE_ATTACKABLE_PLAYER l field_22354 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; WALK_TARGET m field_18445 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; LOOK_TARGET n field_18446 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATTACK_TARGET o field_22355 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; ATTACK_COOLING_DOWN p field_22475 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; INTERACTION_TARGET q field_18447 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; BREED_TARGET r field_18448 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; RIDE_TARGET s field_22356 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; PATH t field_18449 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; INTERACTABLE_DOORS u field_18450 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; DOORS_TO_CLOSE v field_26389 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; NEAREST_BED w field_19007 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HURT_BY x field_18451 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; HURT_BY_ENTITY y field_18452 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; AVOID_TARGET z field_22357 + m ()Ljava/util/Optional; getCodec a method_19093 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; register a method_20738 + p 0 identifier + m (Ljava/lang/String;Lcom/mojang/serialization/Codec;)Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; register a method_19092 + p 0 identifier + p 1 codec + m (Ljava/util/Optional;)V + p 1 optionalCodec + m ()V +c net/minecraft/world/entity/ai/memory/MemoryStatus cct net/minecraft/class_4141 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; VALUE_PRESENT a field_18456 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; VALUE_ABSENT b field_18457 + f Lnet/minecraft/world/entity/ai/memory/MemoryStatus; REGISTERED c field_18458 + f [Lnet/minecraft/world/entity/ai/memory/MemoryStatus; $VALUES d field_18459 + m ()[Lnet/minecraft/world/entity/ai/memory/MemoryStatus; $values a method_36624 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities ccu net/minecraft/class_6670 + f Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; EMPTY a field_35104 + f Ljava/util/List; nearbyEntities b field_35105 + f Ljava/util/function/Predicate; lineOfSightTest c field_35106 + m ()Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; empty a method_38971 + m (Lnet/minecraft/world/entity/LivingEntity;)Z contains a method_38972 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_38973 a method_38973 + m (Lit/unimi/dsi/fastutil/objects/Object2BooleanOpenHashMap;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38974 a method_38974 + m (Ljava/util/function/Predicate;)Ljava/util/Optional; findClosest a method_38975 + p 1 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38976 a method_38976 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38977 b method_38977 + m (Ljava/util/function/Predicate;)Ljava/lang/Iterable; findAll b method_38978 + p 1 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/LivingEntity;)Z method_38979 b method_38979 + m (Ljava/util/function/Predicate;)Ljava/util/stream/Stream; find c method_38980 + p 1 predicate + m (Ljava/util/function/Predicate;)Z contains d method_38981 + p 1 predicate + m ()V + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/List;)V + p 1 livingEntity + p 2 nearbyLivingEntities + m ()V +c net/minecraft/world/entity/ai/memory/WalkTarget ccv net/minecraft/class_4142 + f Lnet/minecraft/world/entity/ai/behavior/PositionTracker; target a field_18460 + f F speedModifier b field_18461 + f I closeEnoughDist c field_18462 + m ()Lnet/minecraft/world/entity/ai/behavior/PositionTracker; getTarget a method_19094 + m ()F getSpeedModifier b method_19095 + m ()I getCloseEnoughDist c method_19096 + m (Lnet/minecraft/core/BlockPos;FI)V + c Constructs a walk target that tracks a position + p 1 pos + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/phys/Vec3;FI)V + c Constructs a walk target using a vector that's directly converted to a BlockPos. + p 1 vectorPos + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/Entity;FI)V + c Constructs a walk target that tracks an entity's position + p 1 targetEntity + p 2 speedModifier + p 3 closeEnoughDist + m (Lnet/minecraft/world/entity/ai/behavior/PositionTracker;FI)V + p 1 target + p 2 speedModifier + p 3 closeEnoughDist +c net/minecraft/world/entity/ai/memory/package-info ccw net/minecraft/class_6041 +c net/minecraft/world/entity/ai/navigation/AmphibiousPathNavigation ccx net/minecraft/class_5766 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/ai/navigation/FlyingPathNavigation ccy net/minecraft/class_1407 + m (Z)V setCanOpenDoors b method_6332 + p 1 canOpenDoors + m (Z)V setCanPassDoors c method_6331 + p 1 canEnterDoors + m ()Z canPassDoors d method_35128 + m ()Z canOpenDoors e method_35129 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/GroundPathNavigation ccz net/minecraft/class_1409 + f Z avoidSun p field_6686 + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z hasValidPathType a method_26338 + p 1 pathType + m (Z)V setCanOpenDoors b method_6363 + p 1 canOpenDoors + m (Z)V setCanPassDoors c method_35139 + p 1 canPassDoors + m (Z)V setAvoidSun d method_6361 + p 1 avoidSun + m ()Z canPassDoors e method_35140 + m (Z)V setCanWalkOverFences e method_46645 + p 1 canWalkOverFences + m ()Z canOpenDoors f method_6366 + m ()I getSurfaceY s method_6362 + c Gets the safe pathing Y position for the entity depending on if it can path swim or not + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/PathNavigation cda net/minecraft/class_1408 + f Lnet/minecraft/world/entity/Mob; mob a field_6684 + f Lnet/minecraft/world/level/Level; level b field_6677 + f Lnet/minecraft/world/level/pathfinder/Path; path c field_6681 + f D speedModifier d field_6668 + f I tick e field_6675 + f I lastStuckCheck f field_6674 + f Lnet/minecraft/world/phys/Vec3; lastStuckCheckPos g field_6672 + f Lnet/minecraft/core/Vec3i; timeoutCachedNode h field_6680 + f J timeoutTimer i field_6670 + f J lastTimeoutCheck j field_6669 + f D timeoutLimit k field_6682 + f F maxDistanceToWaypoint l field_6683 + f Z hasDelayedRecomputation m field_6679 + c Whether the path can be changed by {@link net.minecraft.pathfinding.PathNavigate#onUpdateNavigation() onUpdateNavigation()} + f J timeLastRecompute n field_6685 + f Lnet/minecraft/world/level/pathfinder/NodeEvaluator; nodeEvaluator o field_6678 + f I MAX_TIME_RECOMPUTE p field_30247 + f I STUCK_CHECK_INTERVAL q field_41545 + f F STUCK_THRESHOLD_DISTANCE_FACTOR r field_41546 + f Lnet/minecraft/core/BlockPos; targetPos s field_20293 + f I reachRange t field_20294 + c Distance in which a path point counts as target-reaching + f F maxVisitedNodesMultiplier u field_21642 + f Lnet/minecraft/world/level/pathfinder/PathFinder; pathFinder v field_6673 + f Z isStuck w field_26820 + m ()V trimPath W_ method_6359 + c Trims path data from the end to the first sun covered block + m ()Z canUpdatePath a method_6358 + c If on ground or swimming and can swim + m (D)V setSpeedModifier a method_6344 + c Sets the speed + p 1 speed + m (DDDD)Z moveTo a method_6337 + c Try to find and set a path to XYZ. Returns {@code true} if successful. + p 1 x + p 3 y + p 5 z + p 7 speed + m (DDDI)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6352 + c Returns path to given BlockPos + p 1 x + p 3 y + p 5 z + p 7 accuracy + m (DDDID)Z moveTo a method_58160 + p 1 x + p 3 y + p 5 z + p 7 accuracy + p 8 speed + m (F)V setMaxVisitedNodesMultiplier a method_23964 + p 1 multiplier + m (I)Lnet/minecraft/world/level/pathfinder/PathFinder; createPathFinder a method_6336 + p 1 maxVisitedNodes + m (Lnet/minecraft/world/entity/Entity;D)Z moveTo a method_6335 + c Try to find and set a path to EntityLiving. Returns {@code true} if successful. + p 1 entity + p 2 speed + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6349 + c Returns a path to the given entity or null + p 1 entity + p 2 accuracy + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Z)Z isClearForMovementBetween a method_43394 + p 0 mob + p 1 pos1 + p 2 pos2 + p 3 allowSwimming + m (Lnet/minecraft/world/level/pathfinder/Path;D)Z moveTo a method_6334 + c Sets a new path. If it's different from the old path. Checks to adjust path for sun avoiding, and stores start coords. + p 1 pathentity + p 2 speed + m (Lnet/minecraft/world/phys/Vec3;)D getGroundY a method_38065 + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z canMoveDirectly a method_6341 + c Checks if the specified entity can safely walk to the specified location. + p 1 posVec31 + p 2 posVec32 + m (Ljava/util/Set;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_29934 + p 1 positions + p 2 distance + m (Ljava/util/Set;IZI)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_35142 + c Returns a path to one of the given targets or null + p 1 targets + p 2 regionOffset + p 3 offsetUpward + p 4 accuracy + m (Ljava/util/Set;IZIF)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_18416 + p 1 targets + p 2 regionOffset + p 3 offsetUpward + p 4 accuracy + p 5 followRange + m (Ljava/util/stream/Stream;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_21643 + c Returns a path to one of the elements of the stream or null + p 1 targets + p 2 accuracy + m (Lnet/minecraft/core/BlockPos;)Z isStableDestination a method_6333 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_6348 + c Returns path to given BlockPos + p 1 pos + p 2 accuracy + m (Lnet/minecraft/core/BlockPos;II)Lnet/minecraft/world/level/pathfinder/Path; createPath a method_35141 + p 1 pos + p 2 regionOffset + p 3 accuracy + m (Z)V setCanFloat a method_6354 + p 1 canSwim + m ()Lnet/minecraft/world/phys/Vec3; getTempMobPos b method_6347 + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z canCutCorner b method_48158 + p 1 pathType + m (Lnet/minecraft/world/phys/Vec3;)V doStuckDetection b method_6346 + c Checks if entity haven't been moved when last checked and if so, stops the current navigation. + p 1 positionVec3 + m (Lnet/minecraft/core/BlockPos;)Z shouldRecomputePath b method_18053 + p 1 pos + m ()V tick c method_6360 + m (Lnet/minecraft/world/phys/Vec3;)Z shouldTargetNextNodeInDirection c method_27799 + p 1 vec + m ()V timeoutPath e method_31266 + m ()V resetStuckTimeout f method_26085 + m ()V resetMaxVisitedNodesMultiplier g method_23965 + m ()Lnet/minecraft/core/BlockPos; getTargetPos h method_6355 + m ()V recomputePath i method_6356 + m ()Lnet/minecraft/world/level/pathfinder/Path; getPath j method_6345 + c Gets the actively used {@link net.minecraft.world.level.pathfinder.Path}. + m ()V followThePath k method_6339 + m ()Z isDone l method_6357 + c If null path or reached the end + m ()Z isInProgress m method_23966 + m ()V stop n method_6340 + c Sets the active {@link net.minecraft.world.level.pathfinder.Path} to {@code null}. + m ()Lnet/minecraft/world/level/pathfinder/NodeEvaluator; getNodeEvaluator o method_6342 + m ()Z canFloat p method_6350 + m ()F getMaxDistanceToWaypoint q method_35143 + m ()Z isStuck r method_31267 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/WallClimberNavigation cdb net/minecraft/class_1410 + f Lnet/minecraft/core/BlockPos; pathToPosition p field_6687 + c Current path navigation target + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/WaterBoundPathNavigation cdc net/minecraft/class_1412 + f Z allowBreaching p field_6689 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/ai/navigation/package-info cdd net/minecraft/class_6042 +c net/minecraft/world/entity/ai/package-info cde net/minecraft/class_6043 +c net/minecraft/world/entity/ai/sensing/AdultSensor cdf net/minecraft/class_5356 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)V doTick a method_29531 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/LivingEntity;)Z method_29528 a method_29528 + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)V setNearestVisibleAdult a method_29529 + p 1 mob + p 2 nearbyEntities + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)V method_29532 b method_29532 + m ()V +c net/minecraft/world/entity/ai/sensing/AxolotlAttackablesSensor cdg net/minecraft/class_6044 + f F TARGET_DETECTION_DISTANCE a field_30248 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHostileTarget b method_35145 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isHuntTarget e method_35144 + p 1 attacker + p 2 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isClose f method_35146 + p 1 attacker + p 2 target + m ()V +c net/minecraft/world/entity/ai/sensing/BreezeAttackEntitySensor cdh net/minecraft/class_8947 + f I BREEZE_SENSOR_RADIUS a field_47260 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)V doTick a method_54993 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V method_54994 a method_54994 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)V method_54995 a method_54995 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z method_54996 b method_54996 + m ()V +c net/minecraft/world/entity/ai/sensing/DummySensor cdi net/minecraft/class_4143 + m ()V +c net/minecraft/world/entity/ai/sensing/FrogAttackablesSensor cdj net/minecraft/class_7100 + f F TARGET_DETECTION_DISTANCE a field_37444 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isUnreachableAttackTarget e method_44331 + p 1 attacker + p 2 target + m ()V +c net/minecraft/world/entity/ai/sensing/GolemSensor cdk net/minecraft/class_4307 + f I GOLEM_SCAN_RATE a field_30249 + f I MEMORY_TIME_TO_LIVE c field_30250 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkForNearbyGolem a method_20656 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V golemDetected b method_30233 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_20657 c method_20657 + m ()V + m (I)V + p 1 scanRate +c net/minecraft/world/entity/ai/sensing/HoglinSpecificSensor cdl net/minecraft/class_4832 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V doTick a method_24639 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_24640 a method_24640 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38982 a method_38982 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; findNearestRepellent b method_24641 + p 1 level + p 2 hoglin + m ()V +c net/minecraft/world/entity/ai/sensing/HurtBySensor cdm net/minecraft/class_4144 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)V method_24642 a method_24642 + m ()V +c net/minecraft/world/entity/ai/sensing/IsInWaterSensor cdn net/minecraft/class_7101 + m ()V +c net/minecraft/world/entity/ai/sensing/MobSensor cdo net/minecraft/class_9068 + f Ljava/util/function/BiPredicate; mobTest a field_47764 + f Ljava/util/function/Predicate; readyTest c field_47765 + f Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; toSet d field_47766 + f I memoryTimeToLive e field_47767 + m (Lnet/minecraft/world/entity/LivingEntity;)V checkForMobsNearby a method_55702 + p 1 sensingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_55703 a method_55703 + m (Lnet/minecraft/world/entity/LivingEntity;)V mobDetected b method_55704 + p 1 sensingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V clearMemory c method_55705 + p 1 sensingEntity + m (ILjava/util/function/BiPredicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;I)V + p 1 scanRate + p 2 mobTest + p 3 readyTest + p 4 toSet + p 5 memoryTimeToLive +c net/minecraft/world/entity/ai/sensing/NearestBedSensor cdp net/minecraft/class_4256 + f I CACHE_TIMEOUT a field_30251 + f I BATCH_SIZE c field_30252 + f I RATE d field_30253 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; batchCache e field_20295 + f I triedCount f field_20296 + f J lastUpdate g field_20297 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)V doTick a method_21646 + p 1 level + p 2 entity + m (Lit/unimi/dsi/fastutil/longs/Long2LongMap$Entry;)Z method_21645 a method_21645 + m (Lnet/minecraft/core/BlockPos;)Z method_21644 a method_21644 + m (Lnet/minecraft/core/Holder;)Z method_43977 a method_43977 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestItemSensor cdq net/minecraft/class_4833 + f I MAX_DISTANCE_TO_WANTED_ITEM a field_30254 + f J XZ_RANGE c field_30255 + f J Y_RANGE d field_30256 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;)V doTick a method_24645 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24643 a method_24643 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24644 a method_24644 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_24646 b method_24646 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestLivingEntitySensor cdr net/minecraft/class_4146 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_19097 a method_19097 + m ()I radiusXZ b method_43081 + m ()I radiusY c method_43082 + m ()V +c net/minecraft/world/entity/ai/sensing/NearestVisibleLivingEntitySensor cds net/minecraft/class_6045 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getVisibleEntities a method_35147 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isMatchingEntity a method_35148 + p 1 attacker + p 2 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities;)Ljava/util/Optional; method_35149 a method_35149 + m ()Lnet/minecraft/world/entity/ai/memory/MemoryModuleType; getMemory b method_35150 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getNearestEntity b method_35151 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_35152 e method_35152 + m ()V +c net/minecraft/world/entity/ai/sensing/PiglinBruteSpecificSensor cdt net/minecraft/class_5417 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38983 a method_38983 + m ()V +c net/minecraft/world/entity/ai/sensing/PiglinSpecificSensor cdu net/minecraft/class_4834 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z isValidRepellent a method_24648 + p 0 level + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_38984 a method_38984 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z method_30077 b method_30077 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; findNearestRepellent c method_24649 + p 0 level + p 1 livingEntity + m ()V +c net/minecraft/world/entity/ai/sensing/PlayerSensor cdv net/minecraft/class_4147 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/server/level/ServerPlayer;)Z method_19098 a method_19098 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z method_36981 a method_36981 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z method_29268 b method_29268 + m ()V +c net/minecraft/world/entity/ai/sensing/SecondaryPoiSensor cdw net/minecraft/class_4221 + f I SCAN_RATE a field_30257 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;)V doTick a method_19617 + p 1 level + p 2 entity + m ()V +c net/minecraft/world/entity/ai/sensing/Sensing cdx net/minecraft/class_1413 + f Lnet/minecraft/world/entity/Mob; mob a field_6691 + f Lit/unimi/dsi/fastutil/ints/IntSet; seen b field_6692 + f Lit/unimi/dsi/fastutil/ints/IntSet; unseen c field_6690 + m ()V tick a method_6370 + c Clears seen and unseen. + m (Lnet/minecraft/world/entity/Entity;)Z hasLineOfSight a method_6369 + c Updates list of visible and not visible entities for the given entity + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/ai/sensing/Sensor cdy net/minecraft/class_4148 + f Lnet/minecraft/util/RandomSource; RANDOM a field_19294 + f I TARGETING_RANGE b field_30258 + f I DEFAULT_SCAN_RATE c field_30259 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGET_CONDITIONS d field_26630 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGET_CONDITIONS_IGNORE_INVISIBILITY_TESTING e field_26631 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS f field_33762 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_INVISIBILITY_TESTING g field_33763 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_LINE_OF_SIGHT h field_34050 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ATTACK_TARGET_CONDITIONS_IGNORE_INVISIBILITY_AND_LINE_OF_SIGHT i field_34051 + f I scanRate j field_18464 + f J timeToTick k field_18463 + m ()Ljava/util/Set; requires a method_19099 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V doTick a method_19101 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tick b method_19100 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityTargetable b method_30954 + c @return if the entity is remembered as a target and then tests the condition + p 0 livingEntity + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityAttackable c method_36982 + c @return if entity is remembered as an attack target and is valid to attack + p 0 attacker + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isEntityAttackableIgnoringLineOfSight d method_37456 + p 0 attacker + p 1 target + m (I)V + p 1 scanRate + m ()V + m ()V +c net/minecraft/world/entity/ai/sensing/SensorType cdz net/minecraft/class_4149 + f Ljava/util/function/Supplier; factory A field_18471 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; DUMMY a field_18465 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_ITEMS b field_22358 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_LIVING_ENTITIES c field_18466 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_PLAYERS d field_18467 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_BED e field_19010 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; HURT_BY f field_18469 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; VILLAGER_HOSTILES g field_18470 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; VILLAGER_BABIES h field_19011 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; SECONDARY_POIS i field_18875 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; GOLEM_DETECTED j field_25756 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; ARMADILLO_SCARE_DETECTED k field_47768 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; PIGLIN_SPECIFIC_SENSOR l field_22359 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; PIGLIN_BRUTE_SPECIFIC_SENSOR m field_25757 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; HOGLIN_SPECIFIC_SENSOR n field_22360 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; NEAREST_ADULT o field_25362 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; AXOLOTL_ATTACKABLES p field_30260 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; AXOLOTL_TEMPTATIONS q field_28329 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; GOAT_TEMPTATIONS r field_30261 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; FROG_TEMPTATIONS s field_37445 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; CAMEL_TEMPTATIONS t field_40128 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; ARMADILLO_TEMPTATIONS u field_47769 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; FROG_ATTACKABLES v field_37446 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; IS_IN_WATER w field_37447 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; WARDEN_ENTITY_SENSOR x field_38114 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; SNIFFER_TEMPTATIONS y field_44475 + f Lnet/minecraft/world/entity/ai/sensing/SensorType; BREEZE_ATTACK_ENTITY_SENSOR z field_47261 + m ()Lnet/minecraft/world/entity/ai/sensing/Sensor; create a method_19102 + m (Ljava/lang/String;Ljava/util/function/Supplier;)Lnet/minecraft/world/entity/ai/sensing/SensorType; register a method_19103 + p 0 key + p 1 sensorSupplier + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_51153 b method_51153 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_55706 c method_55706 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_45338 d method_45338 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_41351 e method_41351 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_35153 f method_35153 + m ()Lnet/minecraft/world/entity/ai/sensing/TemptingSensor; method_33212 g method_33212 + m ()Lnet/minecraft/world/entity/ai/sensing/MobSensor; method_55707 h method_55707 + m (Ljava/util/function/Supplier;)V + p 1 factory + m ()V +c net/minecraft/world/entity/ai/sensing/TemptingSensor cea net/minecraft/class_5760 + f I TEMPTATION_RANGE a field_30262 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TEMPT_TARGETING c field_28330 + f Ljava/util/function/Predicate; temptations d field_28331 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/PathfinderMob;)V doTick a method_33213 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_45339 a method_45339 + m (Lnet/minecraft/world/entity/player/Player;)Z playerHoldingTemptation a method_33215 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)Z isTemptation a method_33216 + p 1 stack + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_33214 b method_33214 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/server/level/ServerPlayer;)Z method_33217 c method_33217 + m (Ljava/util/function/Predicate;)V + p 1 temptations + m ()V +c net/minecraft/world/entity/ai/sensing/VillagerBabiesSensor ceb net/minecraft/class_4257 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/List; getNearestVillagerBabies a method_20000 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z isVillagerBaby b method_20001 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/ai/memory/NearestVisibleLivingEntities; getVisibleEntities c method_20002 + p 1 livingEntity + m ()V +c net/minecraft/world/entity/ai/sensing/VillagerHostilesSensor cec net/minecraft/class_4150 + f Lcom/google/common/collect/ImmutableMap; ACCEPTABLE_DISTANCE_FROM_HOSTILES a field_18473 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isHostile b method_19104 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z isClose e method_19105 + p 1 attacker + p 2 target + m ()V + m ()V +c net/minecraft/world/entity/ai/sensing/WardenEntitySensor ced net/minecraft/class_7252 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;)V doTick a method_43083 + p 1 level + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_43084 a method_43084 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V method_43085 a method_43085 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V method_42164 a method_42164 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Ljava/util/function/Predicate;)Ljava/util/Optional; getClosest a method_43086 + p 0 warden + p 1 predicate + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_42166 b method_42166 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Ljava/util/Optional; method_43087 b method_43087 + m ()V +c net/minecraft/world/entity/ai/sensing/package-info cee net/minecraft/class_6046 +c net/minecraft/world/entity/ai/targeting/TargetingConditions cef net/minecraft/class_4051 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; DEFAULT a field_18092 + f D MIN_VISIBILITY_DISTANCE_FOR_INVISIBLE_TARGET b field_30263 + f Z isCombat c field_33720 + f D range d field_18093 + f Z checkLineOfSight e field_33721 + f Z testInvisible f field_18098 + f Ljava/util/function/Predicate; selector g field_28405 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; forCombat a method_36625 + m (D)Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; range a method_18418 + p 1 distance + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z test a method_18419 + p 1 attacker + p 2 target + m (Ljava/util/function/Predicate;)Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; selector a method_18420 + p 1 customPredicate + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; forNonCombat b method_36626 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; copy c method_33335 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ignoreLineOfSight d method_36627 + m ()Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; ignoreInvisibilityTesting e method_18424 + m (Z)V + p 1 isCombat + m ()V +c net/minecraft/world/entity/ai/targeting/package-info ceg net/minecraft/class_6047 +c net/minecraft/world/entity/ai/util/AirAndWaterRandomPos ceh net/minecraft/class_5530 + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDD)Lnet/minecraft/world/phys/Vec3; getPos a method_31504 + p 0 mob + p 1 maxDistance + p 2 yRange + p 3 y + p 4 x + p 6 z + p 8 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDDZ)Lnet/minecraft/core/BlockPos; generateRandomPos a method_31505 + p 0 mob + p 1 maxDistance + p 2 yRange + p 3 y + p 4 x + p 6 z + p 8 amplifier + p 10 shortCircuit + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31506 a method_31506 + m (Lnet/minecraft/world/entity/PathfinderMob;IIIDDDZ)Lnet/minecraft/core/BlockPos; method_31507 b method_31507 + m ()V +c net/minecraft/world/entity/ai/util/AirRandomPos cei net/minecraft/class_5531 + m (Lnet/minecraft/world/entity/PathfinderMob;IIILnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31508 + p 0 mob + p 1 radius + p 2 yRange + p 3 y + p 4 vectorPosition + p 5 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IIILnet/minecraft/world/phys/Vec3;DZ)Lnet/minecraft/core/BlockPos; method_31509 a method_31509 + m ()V +c net/minecraft/world/entity/ai/util/DefaultRandomPos cej net/minecraft/class_5532 + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getPos a method_31510 + p 0 mob + p 1 radius + p 2 verticalDistance + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosAway a method_31511 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31512 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + p 4 amplifier + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;DZ)Lnet/minecraft/core/BlockPos; method_31513 a method_31513 + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/core/BlockPos; method_31514 a method_31514 + m (Lnet/minecraft/world/entity/PathfinderMob;IIZ)Lnet/minecraft/core/BlockPos; method_31515 a method_31515 + m (Lnet/minecraft/world/entity/PathfinderMob;IZLnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31516 + p 0 mob + p 1 radius + p 2 shortCircuit + p 3 pos + m ()V +c net/minecraft/world/entity/ai/util/GoalUtils cek net/minecraft/class_5493 + m (Lnet/minecraft/world/entity/Mob;)Z hasGroundPathNavigation a method_30955 + p 0 mob + m (Lnet/minecraft/world/entity/PathfinderMob;I)Z mobRestricted a method_31517 + c @return if a mob is stuck, within a certain radius beyond it's restriction radius + p 0 mob + p 1 radius + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isWater a method_31518 + c @return if the position is water in the mob's level + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/navigation/PathNavigation;Lnet/minecraft/core/BlockPos;)Z isNotStable a method_31519 + c @return if the destination can't be pathfinded to + p 0 navigation + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/PathfinderMob;)Z isOutsideLimits a method_31520 + c @return if a mob is above or below the map + p 0 pos + p 1 mob + m (ZLnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isRestricted a method_31521 + c @return if a mob is restricted. The first parameter short circuits the operation. + p 0 shortCircuit + p 1 mob + p 2 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z hasMalus b method_31522 + c @return if the pathfinding malus exists + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z isSolid c method_31523 + c @return if the mob is standing on a solid material + p 0 mob + p 1 pos + m ()V +c net/minecraft/world/entity/ai/util/HoverRandomPos cel net/minecraft/class_5533 + m (Lnet/minecraft/world/entity/PathfinderMob;IIDDFII)Lnet/minecraft/world/phys/Vec3; getPos a method_31524 + c Tries to generate a random position a couple different ways, and if failing, sees if swimming vertically is an option. + p 0 mob + p 1 radius + p 2 yRange + p 3 x + p 5 z + p 7 amplifier + p 8 maxSwimUp + p 9 minSwimUp + m (Lnet/minecraft/world/entity/PathfinderMob;IIDDFZII)Lnet/minecraft/core/BlockPos; method_31525 a method_31525 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31526 a method_31526 + m ()V +c net/minecraft/world/entity/ai/util/LandRandomPos cem net/minecraft/class_5534 + m (Lnet/minecraft/world/entity/PathfinderMob;II)Lnet/minecraft/world/phys/Vec3; getPos a method_31527 + p 0 mob + p 1 radius + p 2 verticalRange + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosTowards a method_31528 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/world/phys/Vec3; getPosInDirection a method_31529 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + p 4 shortCircuit + m (Lnet/minecraft/world/entity/PathfinderMob;IILjava/util/function/ToDoubleFunction;)Lnet/minecraft/world/phys/Vec3; getPos a method_31530 + p 0 mob + p 1 radius + p 2 yRange + p 3 toDoubleFunction + m (Lnet/minecraft/world/entity/PathfinderMob;IIZ)Lnet/minecraft/core/BlockPos; method_31531 a method_31531 + m (Lnet/minecraft/world/entity/PathfinderMob;IZLnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31532 + p 0 mob + p 1 radius + p 2 shortCircuit + p 3 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; movePosUpOutOfSolid a method_31533 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; getPosAway b method_31534 + p 0 mob + p 1 radius + p 2 yRange + p 3 vectorPosition + m (Lnet/minecraft/world/entity/PathfinderMob;IILnet/minecraft/world/phys/Vec3;Z)Lnet/minecraft/core/BlockPos; method_31535 b method_31535 + m (Lnet/minecraft/world/entity/PathfinderMob;Lnet/minecraft/core/BlockPos;)Z method_31536 b method_31536 + m ()V +c net/minecraft/world/entity/ai/util/RandomPos cen net/minecraft/class_5535 + f I RANDOM_POS_ATTEMPTS a field_30264 + m (Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/core/BlockPos; generateRandomDirection a method_31541 + c Gets a random position within a certain distance. + p 0 random + p 1 horizontalDistance + p 2 verticalDistance + m (Lnet/minecraft/util/RandomSource;IIIDDD)Lnet/minecraft/core/BlockPos; generateRandomDirectionWithinRadians a method_31542 + c @return a random (x, y, z) coordinate by picking a point (x, z), adding a random angle, up to a difference of {@code maxAngleDelta}. The y position is randomly chosen from the range {@code [y - yRange, y + yRange]}. Will be {@code null} if the chosen coordinate is outside a distance of {@code maxHorizontalDistance} from the origin. + p 0 random + p 1 maxHorizontalDifference + c The maximum value in x and z, in absolute value, that could be returned. + p 2 yRange + c The range plus or minus the y position to be chosen + p 3 y + c The target y position + p 4 x + c The x offset to the target position + p 6 z + c The z offset to the target position + p 8 maxAngleDelta + c The maximum variance of the returned angle, from the base angle being a vector from (0, 0) to (x, z). + m (Lnet/minecraft/world/entity/PathfinderMob;ILnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; generateRandomPosTowardDirection a method_31537 + c @return a random position within range, only if the mob is currently restricted + p 0 mob + p 1 range + p 2 random + p 3 pos + m (Lnet/minecraft/world/entity/PathfinderMob;Ljava/util/function/Supplier;)Lnet/minecraft/world/phys/Vec3; generateRandomPos a method_31538 + p 0 mob + p 1 posSupplier + m (Ljava/util/function/Supplier;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/world/phys/Vec3; generateRandomPos a method_31543 + c Tries 10 times to maximize the return value of the position to double function based on the supplied position + p 0 posSupplier + p 1 toDoubleFunction + m (Lnet/minecraft/core/BlockPos;IILjava/util/function/Predicate;)Lnet/minecraft/core/BlockPos; moveUpToAboveSolid a method_31539 + c Finds a position above based on the conditions.\n\nAfter it finds the position once, it will continue to move up until aboveSolidAmount is reached or the position is no longer valid + p 0 pos + p 1 aboveSolidAmount + p 2 maxY + p 3 posPredicate + m (Lnet/minecraft/core/BlockPos;ILjava/util/function/Predicate;)Lnet/minecraft/core/BlockPos; moveUpOutOfSolid a method_31540 + c @return the highest above position that is within the provided conditions + p 0 pos + p 1 maxY + p 2 posPredicate + m ()V +c net/minecraft/world/entity/ai/util/package-info ceo net/minecraft/class_6048 +c net/minecraft/world/entity/ai/village/ReputationEventType cep net/minecraft/class_4151 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; ZOMBIE_VILLAGER_CURED a field_18474 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; GOLEM_KILLED b field_18475 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; VILLAGER_HURT c field_18476 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; VILLAGER_KILLED d field_18477 + f Lnet/minecraft/world/entity/ai/village/ReputationEventType; TRADE e field_18478 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/ai/village/ReputationEventType; register a method_19109 + p 0 key + m ()V +c net/minecraft/world/entity/ai/village/ReputationEventType$1 cep$1 net/minecraft/class_4151$1 + f Ljava/lang/String; val$name f field_17066 + m (Ljava/lang/String;)V +c net/minecraft/world/entity/ai/village/VillageSiege ceq net/minecraft/class_1419 + f Lorg/slf4j/Logger; LOGGER a field_26390 + f Z hasSetupSiege b field_6725 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; siegeState c field_18479 + f I zombiesToSpawn d field_6723 + f I nextSpawnTime e field_6722 + f I spawnX f field_6721 + f I spawnY g field_6720 + f I spawnZ h field_6719 + m (Lnet/minecraft/server/level/ServerLevel;)Z tryToSetupSiege a method_6446 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; findRandomSpawnPos a method_6448 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;)V trySpawn b method_6447 + p 1 level + m ()V + m ()V +c net/minecraft/world/entity/ai/village/VillageSiege$State ceq$a net/minecraft/class_1419$class_4152 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_CAN_ACTIVATE a field_18480 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_TONIGHT b field_18481 + f Lnet/minecraft/world/entity/ai/village/VillageSiege$State; SIEGE_DONE c field_18482 + f [Lnet/minecraft/world/entity/ai/village/VillageSiege$State; $VALUES d field_18483 + m ()[Lnet/minecraft/world/entity/ai/village/VillageSiege$State; $values a method_36628 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/ai/village/package-info cer net/minecraft/class_6049 +c net/minecraft/world/entity/ai/village/poi/PoiManager ces net/minecraft/class_4153 + f I MAX_VILLAGE_DISTANCE a field_30265 + f I VILLAGE_SECTION_SIZE b field_30266 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$DistanceTracker; distanceTracker d field_18484 + f Lit/unimi/dsi/fastutil/longs/LongSet; loadedChunks e field_20688 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;)Z existsAtPosition a method_26339 + p 1 type + p 2 pos + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_43978 a method_43978 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/BlockPos; method_19128 a method_19128 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_20592 a method_20592 + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/ChunkPos; method_22440 a method_22440 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Integer;)Ljava/util/Optional; method_19124 a method_19124 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/ChunkPos;)V method_22438 a method_22438 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;I)V ensureLoadedAndValid a method_22439 + p 1 levelReader + p 2 pos + p 3 coordinateOffset + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;)Z mayHavePoi a method_20345 + p 0 section + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;)V method_19511 a method_19511 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;)V method_20347 a method_20347 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)V method_20346 a method_20346 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Ljava/util/function/BiConsumer;)V updateFromSection a method_20348 + p 1 section + p 2 sectionPos + p 3 posToTypeConsumer + m (Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_19512 a method_19512 + m (Ljava/util/function/BiPredicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19130 a method_19130 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; method_19121 a method_19121 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Ljava/util/Optional;)Ljava/util/stream/Stream; method_19120 a method_19120 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_20004 a method_20004 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInChunk a method_19123 + p 1 typePredicate + p 2 posChunk + p 3 status + m (Ljava/util/function/Predicate;Ljava/util/function/BiPredicate;Lnet/minecraft/core/BlockPos;I)Ljava/util/Optional; take a method_19126 + p 1 typePredicate + p 2 combinedTypePosPredicate + p 3 pos + p 4 distance + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;Lnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;)Ljava/util/Optional; getRandom a method_20005 + p 1 typePredicate + p 2 posPredicate + p 3 status + p 4 pos + p 5 distance + p 6 random + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAll a method_21647 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)J getCountInRange a method_20252 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)V remove a method_19112 + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19113 a method_19113 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)D method_43979 a method_43979 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Integer; method_35154 a method_35154 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;)D method_30956 a method_30956 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z exists a method_19116 + p 1 pos + p 2 typePredicate + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_19117 a method_19117 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_34711 a method_34711 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V add a method_19115 + p 1 pos + p 2 type + m (Lnet/minecraft/core/Holder;)Z method_43980 a method_43980 + m (Lnet/minecraft/core/SectionPos;)I sectionsToVillage a method_19118 + p 1 sectionPos + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/LevelChunkSection;)V checkConsistencyWithBlocks a method_19510 + p 1 sectionPos + p 2 levelChunkSection + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lcom/mojang/datafixers/util/Pair; method_43981 b method_43981 + m (Lcom/mojang/datafixers/util/Pair;)Z method_22442 b method_22442 + m (Lnet/minecraft/world/level/ChunkPos;)Z method_22441 b method_22441 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/core/SectionPos;Ljava/util/function/BiConsumer;)V method_20349 b method_20349 + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_43982 b method_43982 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAllWithType b method_43983 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInSquare b method_22383 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Z release b method_19129 + p 1 pos + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_30335 b method_30335 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/util/Optional; method_33580 b method_33580 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_20003 b method_20003 + m (Lnet/minecraft/core/SectionPos;)Lcom/mojang/datafixers/util/Pair; method_22443 b method_22443 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lcom/mojang/datafixers/util/Pair; method_43984 c method_43984 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; findAllClosestFirstWithType c method_30957 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getInRange c method_19125 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getType c method_19132 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_33581 c method_33581 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; find d method_19127 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosest d method_20006 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)I getFreeTickets d method_35155 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)V method_33582 d method_33582 + m (Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosest e method_34712 + p 1 typePredicate + p 2 posPredicate + p 3 pos + p 4 distance + p 5 status + m (Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/Optional; findClosestWithType e method_43985 + p 1 typePredicate + p 2 pos + p 3 distance + p 4 status + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/IllegalStateException; method_33583 e method_33583 + m (J)Z isVillageCenter g method_19133 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync + p 5 registryAccess + p 6 errorReporter + p 7 levelHeightAccessor +c net/minecraft/world/entity/ai/village/poi/PoiManager$DistanceTracker ces$a net/minecraft/class_4153$class_4154 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager; field_18485 a field_18485 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; levels b field_18486 + m ()V runAllUpdates a method_19134 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiManager;)V +c net/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy ces$b net/minecraft/class_4153$class_4155 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; HAS_SPACE a field_18487 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; IS_OCCUPIED b field_18488 + f Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; ANY c field_18489 + f Ljava/util/function/Predicate; test d field_18490 + f [Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; $VALUES e field_18491 + m ()Ljava/util/function/Predicate; getTest a method_19135 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z method_19136 a method_19136 + m ()[Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy; $values b method_36629 + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 test + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiRecord cet net/minecraft/class_4156 + f Lnet/minecraft/core/BlockPos; pos a field_18492 + f Lnet/minecraft/core/Holder; poiType b field_18493 + f I freeTickets c field_18494 + f Ljava/lang/Runnable; setDirty d field_18495 + m ()I getFreeTickets a method_35156 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Ljava/lang/Integer; method_28358 a method_28358 + m (Ljava/lang/Runnable;)Lcom/mojang/serialization/Codec; codec a method_28359 + p 0 executable + m (Ljava/lang/Runnable;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28360 a method_28360 + m ()Z acquireTicket b method_19137 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/Holder; method_28361 b method_28361 + m ()Z releaseTicket c method_19138 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Lnet/minecraft/core/BlockPos; method_28362 c method_28362 + m ()Z hasSpace d method_19139 + m ()Z isOccupied e method_19140 + m ()Lnet/minecraft/core/BlockPos; getPos f method_19141 + m ()Lnet/minecraft/core/Holder; getPoiType g method_19142 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;ILjava/lang/Runnable;)V + p 1 pos + p 2 poiType + p 3 freeTickets + p 4 setDirty + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Ljava/lang/Runnable;)V + p 1 pod + p 2 poiType + p 3 setDirty +c net/minecraft/world/entity/ai/village/poi/PoiSection ceu net/minecraft/class_4157 + f Lorg/slf4j/Logger; LOGGER a field_18496 + f Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap; records b field_18497 + f Ljava/util/Map; byType c field_18498 + f Ljava/lang/Runnable; setDirty d field_18499 + f Z isValid e field_19226 + m ()Z isValid a method_22444 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiRecord;)Z add a method_20350 + p 1 record + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/util/List; method_28363 a method_28363 + m (Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_20352 a method_20352 + m (Ljava/lang/Runnable;)Lcom/mojang/serialization/Codec; codec a method_28364 + p 0 executable + m (Ljava/lang/Runnable;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28365 a method_28365 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_19149 a method_19149 + m (Ljava/util/function/Consumer;)V refresh a method_20353 + p 1 posToTypeConsumer + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/ai/village/poi/PoiManager$Occupancy;)Ljava/util/stream/Stream; getRecords a method_19150 + p 1 typePredicate + p 2 status + m (Ljava/util/function/Predicate;Ljava/util/Map$Entry;)Z method_19151 a method_19151 + m (Lnet/minecraft/core/BlockPos;)V remove a method_19145 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z exists a method_19147 + p 1 pos + p 2 typePredicate + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V add a method_19146 + p 1 pos + p 2 type + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;S)Lnet/minecraft/world/entity/ai/village/poi/PoiRecord; method_20351 a method_20351 + m (Lnet/minecraft/core/Holder;)Ljava/util/Set; method_19143 a method_19143 + m ()V clear b method_20395 + m (Lnet/minecraft/world/entity/ai/village/poi/PoiSection;)Ljava/lang/Boolean; method_28366 b method_28366 + m (Ljava/lang/Runnable;)Lnet/minecraft/world/entity/ai/village/poi/PoiSection; method_28367 b method_28367 + m (Lnet/minecraft/core/BlockPos;)I getFreeTickets b method_35157 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z release c method_19153 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getType d method_19154 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getPoiRecord e method_33584 + p 1 pos + m (Ljava/lang/Runnable;)V + p 1 setDirty + m (Ljava/lang/Runnable;ZLjava/util/List;)V + p 1 setDirty + p 2 isValid + p 3 records + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiType cev net/minecraft/class_4158 + f Ljava/util/function/Predicate; NONE a field_39277 + f Ljava/util/Set; matchingStates b comp_815 + f I maxTickets c comp_816 + f I validRange d comp_817 + m ()Ljava/util/Set; matchingStates a comp_815 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z is a method_35159 + p 1 state + m (Lnet/minecraft/core/Holder;)Z method_43987 a method_43987 + m ()I maxTickets b comp_816 + m ()I validRange c comp_817 + m (Ljava/util/Set;II)V + p 1 matchingStates + p 2 maxTickets + p 3 validRange + m ()V +c net/minecraft/world/entity/ai/village/poi/PoiTypes cew net/minecraft/class_7477 + f Lnet/minecraft/resources/ResourceKey; ARMORER a field_39278 + f Lnet/minecraft/resources/ResourceKey; BUTCHER b field_39279 + f Lnet/minecraft/resources/ResourceKey; CARTOGRAPHER c field_39280 + f Lnet/minecraft/resources/ResourceKey; CLERIC d field_39281 + f Lnet/minecraft/resources/ResourceKey; FARMER e field_39282 + f Lnet/minecraft/resources/ResourceKey; FISHERMAN f field_39283 + f Lnet/minecraft/resources/ResourceKey; FLETCHER g field_39284 + f Lnet/minecraft/resources/ResourceKey; LEATHERWORKER h field_39285 + f Lnet/minecraft/resources/ResourceKey; LIBRARIAN i field_39286 + f Lnet/minecraft/resources/ResourceKey; MASON j field_39287 + f Lnet/minecraft/resources/ResourceKey; SHEPHERD k field_39288 + f Lnet/minecraft/resources/ResourceKey; TOOLSMITH l field_39289 + f Lnet/minecraft/resources/ResourceKey; WEAPONSMITH m field_39290 + f Lnet/minecraft/resources/ResourceKey; HOME n field_39291 + f Lnet/minecraft/resources/ResourceKey; MEETING o field_39292 + f Lnet/minecraft/resources/ResourceKey; BEEHIVE p field_39293 + f Lnet/minecraft/resources/ResourceKey; BEE_NEST q field_39294 + f Lnet/minecraft/resources/ResourceKey; NETHER_PORTAL r field_39295 + f Lnet/minecraft/resources/ResourceKey; LODESTONE s field_39296 + f Lnet/minecraft/resources/ResourceKey; LIGHTNING_ROD t field_39297 + f Ljava/util/Set; BEDS u field_39299 + f Ljava/util/Set; CAULDRONS v field_39300 + f Ljava/util/Map; TYPE_BY_STATE w field_39301 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Set; getBlockStates a method_43988 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; forState a method_43989 + p 0 state + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_43994 + p 0 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/BlockState;)V method_43991 a method_43991 + m (Lnet/minecraft/core/Holder;Ljava/util/Set;)V registerBlockStates a method_43990 + p 0 poi + p 1 states + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/ai/village/poi/PoiType; bootstrap a method_43992 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/util/Set;II)Lnet/minecraft/world/entity/ai/village/poi/PoiType; register a method_43993 + p 0 key + p 1 value + p 2 matchingStates + p 3 maxTickets + p 4 validRange + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_43995 b method_43995 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasPoi b method_46397 + p 0 state + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_43997 c method_43997 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43996 c method_43996 + m ()V + m ()V +c net/minecraft/world/entity/ai/village/poi/package-info cex net/minecraft/class_6050 +c net/minecraft/world/entity/ambient/AmbientCreature cey net/minecraft/class_1421 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/ambient/Bat cez net/minecraft/class_1420 + f F FLAP_LENGTH_SECONDS b field_46966 + f F TICKS_PER_FLAP c field_46967 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS cb field_6728 + f I FLAG_RESTING cc field_30269 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; BAT_RESTING_TARGETING cd field_18100 + f Lnet/minecraft/core/BlockPos; targetPosition ce field_6729 + f Lnet/minecraft/world/entity/AnimationState; flyAnimationState d field_46968 + f Lnet/minecraft/world/entity/AnimationState; restAnimationState e field_46969 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkBatSpawnRules b method_20661 + p 0 bat + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V setupAnimationStates gg method_54758 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26878 + m ()Z isResting t method_6450 + m ()Z isHalloween x method_6451 + m (Z)V setResting x method_6449 + p 1 isResting + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/ambient/package-info cfa net/minecraft/class_6051 +c net/minecraft/world/entity/animal/AbstractFish cfb net/minecraft/class_1422 + f Lnet/minecraft/network/syncher/EntityDataAccessor; FROM_BUCKET b field_6730 + m ()Z canRandomSwim gk method_6456 + m ()Lnet/minecraft/sounds/SoundEvent; getFlopSound gl method_6457 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26879 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/AbstractFish$FishMoveControl cfb$a net/minecraft/class_1422$class_1423 + f Lnet/minecraft/world/entity/animal/AbstractFish; fish l field_6731 + m (Lnet/minecraft/world/entity/animal/AbstractFish;)V + p 1 fish +c net/minecraft/world/entity/animal/AbstractFish$FishSwimGoal cfb$b net/minecraft/class_1422$class_1424 + f Lnet/minecraft/world/entity/animal/AbstractFish; fish i field_6732 + m (Lnet/minecraft/world/entity/animal/AbstractFish;)V + p 1 fish +c net/minecraft/world/entity/animal/AbstractGolem cfc net/minecraft/class_1427 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/AbstractSchoolingFish cfd net/minecraft/class_1425 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; leader b field_6734 + f I schoolSize c field_6733 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; startFollowing a method_6461 + p 1 leader + m (Ljava/util/stream/Stream;)V addFollowers a method_6468 + p 1 followers + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V method_6458 b method_6458 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)Z method_6460 c method_6460 + m ()I getMaxSchoolSize gm method_6465 + m ()Z isFollower gn method_6470 + m ()V stopFollowing go method_6466 + m ()Z canBeFollowed gp method_6469 + m ()Z hasFollowers gq method_6467 + m ()Z inRangeOfLeader gr method_6464 + m ()V pathToLeader gs method_6463 + m ()V addFollower gt method_6462 + m ()V removeFollower gu method_6459 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/AbstractSchoolingFish$SchoolSpawnGroupData cfd$a net/minecraft/class_1425$class_1426 + f Lnet/minecraft/world/entity/animal/AbstractSchoolingFish; leader a field_6735 + m (Lnet/minecraft/world/entity/animal/AbstractSchoolingFish;)V + p 1 leader +c net/minecraft/world/entity/animal/Animal cfe net/minecraft/class_1429 + f I inLove cc field_6745 + f Ljava/util/UUID; loveCause cd field_6744 + f I PARENT_AGE_AFTER_BREEDING cf field_30270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;)V spawnChildFromBreeding a method_24650 + p 1 level + p 2 mate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;)V finalizeSpawnChildFromBreeding a method_49794 + p 1 level + p 2 animal + p 3 baby + m (Lnet/minecraft/world/entity/animal/Animal;)Z canMate a method_6474 + c Returns {@code true} if the mob is currently able to mate with the specified mob. + p 1 otherAnimal + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/server/level/ServerPlayer;)V method_49795 a method_49795 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;)V usePlayerItem a method_6475 + p 1 player + p 2 hand + p 3 stack + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)Z isBrightEnoughToSpawn a method_39448 + p 0 level + p 1 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAnimalSpawnRules b method_20663 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/Animal;)Ljava/util/Optional; method_49796 b method_49796 + m (Lnet/minecraft/world/entity/player/Player;)V setInLove f method_6480 + p 1 player + m ()Z canFallInLove gp method_6482 + m ()I getInLoveTime gq method_29270 + m ()Lnet/minecraft/server/level/ServerPlayer; getLoveCause gr method_6478 + m ()Z isInLove gs method_6479 + c Returns if the entity is currently in 'love mode'. + m ()V resetLove gt method_6477 + m (Lnet/minecraft/world/item/ItemStack;)Z isFood o method_6481 + c Checks if the parameter is an item which this animal can be fed to breed it (wheat, carrots or seeds depending on the animal type) + p 1 stack + m (I)V setInLoveTime s method_6476 + p 1 inLove + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Bee cff net/minecraft/class_4466 + f I PATHFIND_TO_HIVE_WHEN_CLOSER_THAN cA field_30293 + f I HIVE_SEARCH_DISTANCE cB field_30294 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cD field_25363 + f Ljava/util/UUID; persistentAngerTarget cE field_25364 + f F rollAmount cF field_20356 + f F rollAmountO cG field_20357 + f I timeSinceSting cH field_20358 + f I ticksWithoutNectarSinceExitingHive cI field_20359 + f I stayOutOfHiveCountdown cJ field_20360 + f I numCropsGrownSincePollination cK field_20361 + f I COOLDOWN_BEFORE_LOCATING_NEW_HIVE cL field_30274 + f I remainingCooldownBeforeLocatingNewHive cM field_21643 + f I COOLDOWN_BEFORE_LOCATING_NEW_FLOWER cN field_30275 + f I remainingCooldownBeforeLocatingNewFlower cO field_21644 + f Lnet/minecraft/core/BlockPos; savedFlowerPos cP field_20362 + f Lnet/minecraft/core/BlockPos; hivePos cQ field_20363 + f Lnet/minecraft/world/entity/animal/Bee$BeePollinateGoal; beePollinateGoal cR field_21079 + f Lnet/minecraft/world/entity/animal/Bee$BeeGoToHiveGoal; goToHiveGoal cS field_21645 + f Lnet/minecraft/world/entity/animal/Bee$BeeGoToKnownFlowerGoal; goToKnownFlowerGoal cT field_21646 + f I underWaterTicks cU field_21509 + f F FLAP_DEGREES_PER_TICK cc field_30271 + f I TICKS_PER_FLAP cd field_28638 + f Ljava/lang/String; TAG_CROPS_GROWN_SINCE_POLLINATION ce field_30272 + f Ljava/lang/String; TAG_CANNOT_ENTER_HIVE_TICKS cg field_30273 + f Ljava/lang/String; TAG_TICKS_SINCE_POLLINATION ch field_30276 + f Ljava/lang/String; TAG_HAS_STUNG ci field_30277 + f Ljava/lang/String; TAG_HAS_NECTAR cj field_30278 + f Ljava/lang/String; TAG_FLOWER_POS ck field_30279 + f Ljava/lang/String; TAG_HIVE_POS cl field_30280 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID cm field_20353 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_REMAINING_ANGER_TIME cn field_20354 + f I FLAG_ROLL co field_30281 + f I FLAG_HAS_STUNG cp field_30282 + f I FLAG_HAS_NECTAR cq field_30283 + f I STING_DEATH_COUNTDOWN cr field_30284 + f I TICKS_BEFORE_GOING_TO_KNOWN_FLOWER cs field_30285 + f I TICKS_WITHOUT_NECTAR_BEFORE_GOING_HOME ct field_30286 + f I MIN_ATTACK_DIST cu field_30287 + f I MAX_CROPS_GROWABLE cv field_30288 + f I POISON_SECONDS_NORMAL cw field_30289 + f I POISON_SECONDS_HARD cx field_30290 + f I TOO_FAR_DISTANCE cy field_30291 + f I HIVE_CLOSE_ENOUGH_DISTANCE cz field_30292 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21801 A method_21801 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21803 B method_21803 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_36630 C method_36630 + m (F)F getRollAmount H method_21811 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36631 a method_36631 + m (Lnet/minecraft/world/level/Level;DDDDDLnet/minecraft/core/particles/ParticleOptions;)V spawnFluidParticle a method_21769 + p 1 level + p 2 startX + p 4 endX + p 6 startZ + p 8 endZ + p 10 posY + p 12 particleOption + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Bee; getBreedOffspring b method_21771 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21765 b method_21765 + m (Lnet/minecraft/core/BlockPos;I)Z closerThan b method_23979 + p 1 pos + p 2 distance + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36632 c method_36632 + m (IZ)V setFlag d method_21775 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36633 d method_36633 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36634 e method_36634 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23989 f method_23989 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23991 g method_23991 + m ()Z wantsToEnterHive gA method_21789 + m ()V updateRollAmount gB method_21790 + m ()Z isHiveNearFire gC method_23984 + m ()I getCropsGrownSincePollination gD method_21792 + m ()V resetNumCropsGrownSincePollination gE method_21783 + m ()V incrementNumCropsGrownSincePollination gF method_21793 + m ()Z isHiveValid gG method_21794 + m ()Z isRolling gH method_21786 + m ()Ljava/util/List; getBlacklistedHives gk method_35162 + m ()V resetTicksWithoutNectarSinceExitingHive gl method_21780 + m ()Z hasHive gm method_21791 + m ()Lnet/minecraft/core/BlockPos; getHivePos gn method_23884 + m ()Lnet/minecraft/world/entity/ai/goal/GoalSelector; getGoalSelector go method_35163 + m ()Z hasNectar gu method_21784 + m ()Z hasStung gv method_21785 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gw method_26880 + m ()V dropOffNectar gy method_21788 + m ()Z isTiredOfLookingForNectar gz method_23983 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_36635 h method_36635 + m (Lnet/minecraft/core/BlockPos;)V setSavedFlowerPos h method_21797 + p 1 savedFlowerPos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23994 i method_23994 + m (Lnet/minecraft/core/BlockPos;)V setHivePos i method_57301 + p 1 hivePos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23976 j method_23976 + m (Lnet/minecraft/core/BlockPos;)V pathfindRandomlyTowards j method_23987 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23999 k method_23999 + m (Lnet/minecraft/core/BlockPos;)Z doesHiveHaveSpace k method_23988 + p 1 hivePos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23980 l method_23980 + m (Lnet/minecraft/core/BlockPos;)Z isTooFarAway l method_23990 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23982 m method_23982 + m (Lnet/minecraft/core/BlockPos;)Z isFlowerValid m method_23992 + p 1 pos + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23985 n method_23985 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58363 n method_58363 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24000 o method_24000 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24001 p method_24001 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24002 q method_24002 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_24003 r method_24003 + m ()Lnet/minecraft/core/BlockPos; getSavedFlowerPos s method_21778 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23967 s method_23967 + m ()Z hasSavedFlowerPos t method_21779 + m (I)V setStayOutOfHiveCountdown t method_21807 + p 1 stayOutOfHiveCountdown + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21795 t method_21795 + m (I)Z getFlag u method_21812 + p 1 flagId + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21796 u method_21796 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23993 v method_23993 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_23739 w method_23739 + m ()I getTravellingTicks x method_35161 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_23995 x method_23995 + m (Z)V setHasNectar x method_21805 + p 1 hasNectar + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_21798 y method_21798 + m (Z)V setHasStung y method_21806 + p 1 hasStung + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/util/RandomSource; method_23740 z method_23740 + m (Z)V setRolling z method_21808 + p 1 isRolling + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Bee$1 cff$1 net/minecraft/class_4466$1 + f Lnet/minecraft/world/entity/animal/Bee; field_20364 p field_20364 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/animal/Bee$BaseBeeGoal cff$a net/minecraft/class_4466$class_4467 + f Lnet/minecraft/world/entity/animal/Bee; field_20365 a field_20365 + m ()Z canBeeUse h method_21814 + m ()Z canBeeContinueToUse i method_21815 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeAttackGoal cff$b net/minecraft/class_4466$class_4468 + f Lnet/minecraft/world/entity/animal/Bee; field_20366 b field_20366 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/PathfinderMob;DZ)V + p 2 mob + p 3 speedModifier + p 5 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Bee$BeeBecomeAngryTargetGoal cff$c net/minecraft/class_4466$class_4469 + m ()Z beeCanTarget i method_21816 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 mob +c net/minecraft/world/entity/animal/Bee$BeeEnterHiveGoal cff$d net/minecraft/class_4466$class_4470 + f Lnet/minecraft/world/entity/animal/Bee; field_20367 b field_20367 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGoToHiveGoal cff$e net/minecraft/class_4466$class_4472 + f I MAX_TRAVELLING_TICKS b field_30295 + f Lnet/minecraft/world/entity/animal/Bee; field_20371 c field_20371 + f I travellingTicks d field_21647 + f I MAX_BLACKLISTED_TARGETS e field_30296 + f Ljava/util/List; blacklistedTargets f field_21648 + f Lnet/minecraft/world/level/pathfinder/Path; lastPath g field_21649 + f I TICKS_BEFORE_HIVE_DROP h field_30297 + f I ticksStuck i field_23133 + m (Lnet/minecraft/core/BlockPos;)Z pathfindDirectlyTowards a method_24006 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isTargetBlacklisted b method_24007 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V blacklistTarget c method_24009 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z hasReachedTarget d method_24010 + p 1 pos + m ()V clearBlacklist k method_24011 + m ()V dropAndBlacklistHive l method_24012 + m ()V dropHive m method_23885 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGoToKnownFlowerGoal cff$f net/minecraft/class_4466$class_4473 + f Lnet/minecraft/world/entity/animal/Bee; field_20372 b field_20372 + f I MAX_TRAVELLING_TICKS c field_30298 + f I travellingTicks d field_21650 + m ()Z wantsToGoToKnownFlower k method_24013 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeGrowCropGoal cff$g net/minecraft/class_4466$class_4474 + f I GROW_CHANCE b field_30299 + f Lnet/minecraft/world/entity/animal/Bee; field_20373 c field_20373 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeHurtByOtherGoal cff$h net/minecraft/class_4466$class_4475 + f Lnet/minecraft/world/entity/animal/Bee; field_20374 a field_20374 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/animal/Bee;)V + p 2 mob +c net/minecraft/world/entity/animal/Bee$BeeLocateHiveGoal cff$i net/minecraft/class_4466$class_4476 + f Lnet/minecraft/world/entity/animal/Bee; field_20375 b field_20375 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_24015 a method_24015 + m (Lnet/minecraft/core/Holder;)Z method_23743 a method_23743 + m ()Ljava/util/List; findNearbyHivesWithSpace k method_23742 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeLookControl cff$j net/minecraft/class_4466$class_4477 + f Lnet/minecraft/world/entity/animal/Bee; field_20376 h field_20376 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/animal/Bee$BeePollinateGoal cff$k net/minecraft/class_4466$class_4478 + f Lnet/minecraft/world/entity/animal/Bee; field_20377 b field_20377 + f I MIN_POLLINATION_TICKS c field_30300 + f I MIN_FIND_FLOWER_RETRY_COOLDOWN d field_30301 + f I MAX_FIND_FLOWER_RETRY_COOLDOWN e field_30302 + f Ljava/util/function/Predicate; VALID_POLLINATION_BLOCKS f field_20617 + f D ARRIVAL_THRESHOLD g field_30303 + f I POSITION_CHANGE_CHANCE h field_30304 + f F SPEED_MODIFIER i field_30305 + f F HOVER_HEIGHT_WITHIN_FLOWER j field_30306 + f F HOVER_POS_OFFSET k field_30307 + f I successfulPollinatingTicks l field_20378 + f I lastSoundPlayedTick m field_20379 + f Z pollinating n field_21080 + f Lnet/minecraft/world/phys/Vec3; hoverPos o field_21511 + f I pollinatingTicks p field_21651 + f I MAX_POLLINATING_TICKS q field_30308 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_21819 a method_21819 + m (Ljava/util/function/Predicate;D)Ljava/util/Optional; findNearestBlock a method_22326 + p 1 predicate + p 2 distance + m ()Z hasPollinatedLongEnough k method_21820 + m ()Z isPollinating l method_23346 + m ()V stopPollinating m method_23748 + m ()V setWantedPos n method_23749 + m ()F getOffset o method_23750 + m ()Ljava/util/Optional; findNearbyFlower p method_21821 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bee$BeeWanderGoal cff$l net/minecraft/class_4466$class_4479 + f Lnet/minecraft/world/entity/animal/Bee; field_20380 a field_20380 + f I WANDER_THRESHOLD b field_30309 + m ()Lnet/minecraft/world/phys/Vec3; findPos h method_21822 + m (Lnet/minecraft/world/entity/animal/Bee;)V +c net/minecraft/world/entity/animal/Bucketable cfg net/minecraft/class_5761 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/item/ItemStack;)V saveDefaultDataToBucketTag a method_35167 + p 0 mob + p 1 bucket + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/nbt/CompoundTag;)V loadDefaultDataFromBucketTag a method_35168 + p 0 mob + p 1 tag + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; bucketMobPickup a method_35169 + p 0 player + p 1 hand + p 2 entity + m ()Lnet/minecraft/world/item/ItemStack; getBucketItemStack b method_6452 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/nbt/CompoundTag;)V method_57302 b method_57302 + m (Lnet/minecraft/nbt/CompoundTag;)V loadFromBucketTag h method_35170 + p 1 tag + m (Lnet/minecraft/world/item/ItemStack;)V saveToBucketTag n method_6455 + p 1 stack + m ()Z fromBucket t method_6453 + m ()Lnet/minecraft/sounds/SoundEvent; getPickupSound x method_35171 + m (Z)V setFromBucket x method_6454 + p 1 fromBucket +c net/minecraft/world/entity/animal/Cat cfh net/minecraft/class_1451 + f D TEMPT_SPEED_MOD cg field_30310 + f D WALK_SPEED_MOD ch field_30311 + f D SPRINT_SPEED_MOD ci field_30312 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID cj field_6811 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_LYING ck field_16284 + f Lnet/minecraft/network/syncher/EntityDataAccessor; RELAX_STATE_ONE cl field_16292 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLLAR_COLOR cm field_16285 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_VARIANT cn field_49979 + f Lnet/minecraft/world/entity/animal/Cat$CatAvoidEntityGoal; avoidPlayersGoal co field_6808 + f Lnet/minecraft/world/entity/ai/goal/TemptGoal; temptGoal cp field_6810 + f F lieDownAmount cq field_16290 + f F lieDownAmountO cr field_16291 + f F lieDownAmountTail cs field_16288 + f F lieDownAmountOTail ct field_16289 + f F relaxStateOneAmount cu field_16286 + f F relaxStateOneAmountO cv field_16287 + m (Z)V setLying A method_16088 + p 1 lying + m (Z)V setRelaxStateOne B method_16087 + p 1 relaxStateOne + m (F)F getLieDownAmount H method_16082 + p 1 partialTicks + m (F)F getLieDownAmountTail I method_16091 + p 1 partialTicks + m (F)F getRelaxStateOneAmount J method_16095 + p 1 partialTicks + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58364 a method_58364 + m (Lnet/minecraft/world/item/DyeColor;)V setCollarColor a method_16094 + p 1 color + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Cat; getBreedOffspring b method_6573 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/player/Player;)V tryToTame g method_58168 + p 1 player + m ()V reassessTameGoals gA method_6175 + m ()Z isRelaxStateOne gB method_16093 + m ()V handleLieDown gC method_16085 + m ()V updateLieDownAmount gD method_16090 + m ()V updateRelaxStateOneAmount gE method_16084 + m ()Lnet/minecraft/resources/ResourceLocation; getTextureId gu method_16092 + m ()Lnet/minecraft/core/Holder; getVariant gv method_47843 + m ()Z isLying gw method_16086 + m ()Lnet/minecraft/world/item/DyeColor; getCollarColor gx method_16096 + m ()V hiss gy method_16089 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gz method_26881 + m (Lnet/minecraft/core/Holder;)V setVariant i method_47842 + p 1 variant + m (Lnet/minecraft/world/item/ItemStack;)Z method_58365 n method_58365 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Cat$CatAvoidEntityGoal cfh$a net/minecraft/class_1451$class_3698 + f Lnet/minecraft/world/entity/animal/Cat; cat i field_16293 + m (Lnet/minecraft/world/entity/animal/Cat;Ljava/lang/Class;FDD)V + p 1 cat + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Cat$CatRelaxOnOwnerGoal cfh$b net/minecraft/class_1451$class_3699 + f Lnet/minecraft/world/entity/animal/Cat; cat a field_16297 + f Lnet/minecraft/world/entity/player/Player; ownerPlayer b field_16295 + f Lnet/minecraft/core/BlockPos; goalPos c field_16294 + f I onBedTicks d field_16296 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; method_27800 a method_27800 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; method_27801 a method_27801 + m ()Z spaceIsOccupied h method_16098 + m ()V giveMorningGift i method_16097 + m (Lnet/minecraft/world/entity/animal/Cat;)V + p 1 cat +c net/minecraft/world/entity/animal/Cat$CatTemptGoal cfh$c net/minecraft/class_1451$class_3700 + f Lnet/minecraft/world/entity/player/Player; selectedPlayer c field_16298 + f Lnet/minecraft/world/entity/animal/Cat; cat d field_17948 + m (Lnet/minecraft/world/entity/animal/Cat;DLjava/util/function/Predicate;Z)V + p 1 cat + p 2 speedModifier + p 4 items + p 5 canScare +c net/minecraft/world/entity/animal/CatVariant cfi net/minecraft/class_7375 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51941 + f Lnet/minecraft/resources/ResourceKey; TABBY b field_38709 + f Lnet/minecraft/resources/ResourceKey; BLACK c field_38710 + f Lnet/minecraft/resources/ResourceKey; RED d field_38711 + f Lnet/minecraft/resources/ResourceKey; SIAMESE e field_38712 + f Lnet/minecraft/resources/ResourceKey; BRITISH_SHORTHAIR f field_38713 + f Lnet/minecraft/resources/ResourceKey; CALICO g field_38714 + f Lnet/minecraft/resources/ResourceKey; PERSIAN h field_38715 + f Lnet/minecraft/resources/ResourceKey; RAGDOLL i field_38716 + f Lnet/minecraft/resources/ResourceKey; WHITE j field_38717 + f Lnet/minecraft/resources/ResourceKey; JELLIE k field_38718 + f Lnet/minecraft/resources/ResourceKey; ALL_BLACK l field_38719 + f Lnet/minecraft/resources/ResourceLocation; texture m comp_706 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_706 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_46647 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/animal/CatVariant; bootstrap a method_46646 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/entity/animal/CatVariant; register a method_43090 + p 0 registry + p 1 key + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/animal/Chicken cfj net/minecraft/class_1428 + f F flap cc field_6741 + f F flapSpeed cd field_6743 + f F oFlapSpeed ce field_6738 + f F oFlap cg field_6736 + f F flapping ch field_6737 + f I eggTime ci field_6739 + f Z isChickenJockey cj field_6740 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ck field_47770 + f F nextFlap cl field_28639 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Chicken; getBreedOffspring b method_6471 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58366 n method_58366 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26882 + m ()Z isChickenJockey t method_6472 + c Determines if this chicken is a jokey with a zombie riding it. + m (Z)V setChickenJockey x method_6473 + c Sets whether this chicken is a jockey or not. + p 1 isChickenJockey + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Cod cfk net/minecraft/class_1431 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Cow cfl net/minecraft/class_1430 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cc field_47771 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Cow; getBreedOffspring b method_6483 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58367 n method_58367 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26883 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Dolphin cfm net/minecraft/class_1433 + f I TOTAL_AIR_SUPPLY b field_30326 + f Ljava/util/function/Predicate; ALLOWED_ITEMS c field_6748 + f Lnet/minecraft/network/syncher/EntityDataAccessor; MOISTNESS_LEVEL cc field_6749 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; SWIM_WITH_PLAYER_TARGETING cd field_18101 + f I TOTAL_MOISTNESS_LEVEL ce field_30327 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TREASURE_POS d field_6747 + f Lnet/minecraft/network/syncher/EntityDataAccessor; GOT_FISH e field_6750 + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_18055 a method_18055 + m (Lnet/minecraft/core/particles/ParticleOptions;)V addParticlesAroundSelf a method_6492 + p 1 particleOption + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_6488 b method_6488 + m (I)V setMoisntessLevel c method_6489 + p 1 moistnessLevel + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/util/RandomSource; method_18054 c method_18054 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_6485 c method_6485 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26884 + m ()Z closeToNextPos gl method_6484 + m (Lnet/minecraft/core/BlockPos;)V setTreasurePos h method_6493 + p 1 pos + m ()Lnet/minecraft/core/BlockPos; getTreasurePos s method_6494 + m ()Z gotFish t method_6487 + m ()I getMoistnessLevel x method_6491 + m (Z)V setGotFish x method_6486 + p 1 gotFish + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Dolphin$DolphinSwimToTreasureGoal cfm$a net/minecraft/class_1433$class_1435 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin a field_6752 + f Z stuck b field_6753 + m (Lnet/minecraft/world/entity/animal/Dolphin;)V + p 1 dolphin +c net/minecraft/world/entity/animal/Dolphin$DolphinSwimWithPlayerGoal cfm$b net/minecraft/class_1433$class_1436 + f Lnet/minecraft/world/entity/animal/Dolphin; dolphin a field_6755 + f D speedModifier b field_6754 + f Lnet/minecraft/world/entity/player/Player; player c field_6756 + m (Lnet/minecraft/world/entity/animal/Dolphin;D)V + p 1 dolphin + p 2 speedModifier +c net/minecraft/world/entity/animal/Dolphin$PlayWithItemsGoal cfm$c net/minecraft/class_1433$class_1437 + f Lnet/minecraft/world/entity/animal/Dolphin; field_6757 a field_6757 + f I cooldown b field_6758 + m (Lnet/minecraft/world/item/ItemStack;)V drop a method_18056 + p 1 stack + m (Lnet/minecraft/world/entity/animal/Dolphin;)V +c net/minecraft/world/entity/animal/FlyingAnimal cfn net/minecraft/class_1432 + m ()Z isFlying gx method_6581 +c net/minecraft/world/entity/animal/Fox cfo net/minecraft/class_4019 + f F crouchAmountO cA field_17963 + f I ticksSinceEaten cB field_17964 + f I FLAG_CROUCHING cc field_30328 + f I FLAG_INTERESTED cd field_30329 + f I FLAG_POUNCING ce field_30330 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE_ID cg field_17949 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID ch field_17950 + f I FLAG_SITTING ci field_30331 + f I FLAG_SLEEPING cj field_30332 + f I FLAG_FACEPLANTED ck field_30333 + f I FLAG_DEFENDING cl field_30334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTED_ID_0 cm field_17951 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTED_ID_1 cn field_17952 + f Ljava/util/function/Predicate; ALLOWED_ITEMS co field_17953 + f Ljava/util/function/Predicate; TRUSTED_TARGET_SELECTOR cp field_17954 + f Ljava/util/function/Predicate; STALKABLE_PREY cq field_17955 + f Ljava/util/function/Predicate; AVOID_PLAYERS cr field_17956 + f I MIN_TICKS_BEFORE_EAT cs field_30335 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ct field_47772 + f Lnet/minecraft/world/entity/ai/goal/Goal; landTargetGoal cu field_17957 + f Lnet/minecraft/world/entity/ai/goal/Goal; turtleEggTargetGoal cv field_17958 + f Lnet/minecraft/world/entity/ai/goal/Goal; fishTargetGoal cw field_17959 + f F interestedAngle cx field_17960 + f F interestedAngleO cy field_17961 + f F crouchAmount cz field_17962 + m (Z)V setIsInterested A method_18299 + p 1 isInterested + m (Z)V setFaceplanted B method_18295 + p 1 faceplanted + m (Z)V setDefending C method_18301 + p 1 defending + m (Z)V setSleeping D method_18302 + p 1 sleeping + m (F)F getHeadRollAngle H method_18298 + p 1 partialTick + m (F)F getCrouchAmount I method_18300 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Fox$Type;)V setVariant a method_47844 + p 1 variant + m (Lnet/minecraft/world/entity/animal/Fox;)Z method_36636 a method_36636 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/LivingEntity;)Z isPathClear a method_18257 + p 0 fox + p 1 livingEntity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Fox; getBreedOffspring b method_18260 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18287 b method_18287 + m (Ljava/util/UUID;)V addTrustedUUID b method_18266 + p 1 uuid + m (Lnet/minecraft/world/entity/Entity;)Z method_18253 c method_18253 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkFoxSpawnRules c method_39449 + p 0 fox + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18288 c method_18288 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_18265 c method_18265 + m (Ljava/util/UUID;)Z trusts c method_18428 + p 1 uuid + m (IZ)V setFlag d method_18269 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/Entity;)Z method_18261 d method_18261 + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/util/RandomSource; method_18290 d method_18290 + m (Lnet/minecraft/world/entity/Entity;)Z method_18267 e method_18267 + m ()Z isFaceplanted gk method_18273 + m ()Z isPouncing gl method_18274 + m ()Z isJumping gm method_35172 + m ()Z isFullyCrouched gn method_18275 + m ()Z isInterested go method_18277 + m ()V setTargetGoals gu method_18280 + m ()Ljava/util/List; getTrustedUUIDs gv method_18281 + m ()Z isDefending gw method_18282 + m ()V wakeUp gx method_18283 + m ()V clearStates gy method_18284 + m ()Z canMove gz method_18285 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18429 j method_18429 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_24347 k method_24347 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_20451 l method_20451 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18431 m method_18431 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18254 n method_18254 + m (Lnet/minecraft/world/item/ItemStack;)Z canEat n method_18430 + p 1 stack + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18262 o method_18262 + m (Lnet/minecraft/world/item/ItemStack;)V spitOutItem p method_18289 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V dropItemStack q method_18291 + p 1 stack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26885 + m ()Lnet/minecraft/world/entity/animal/Fox$Type; getVariant t method_47845 + m (I)Z getFlag t method_18293 + p 1 flagId + m ()Z isSitting x method_18272 + m (Z)V setSitting x method_18294 + p 1 sitting + m (Z)V setIsPouncing y method_18296 + p 1 isPouncing + m (Z)V setIsCrouching z method_18297 + p 1 isCrouching + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Fox$DefendTrustedTargetGoal cfo$a net/minecraft/class_4019$class_4020 + f Lnet/minecraft/world/entity/animal/Fox; field_17965 i field_17965 + f Lnet/minecraft/world/entity/LivingEntity; trustedLastHurtBy j field_17966 + f Lnet/minecraft/world/entity/LivingEntity; trustedLastHurt k field_17967 + f I timestamp l field_17968 + m (Lnet/minecraft/world/entity/animal/Fox;Ljava/lang/Class;ZZLjava/util/function/Predicate;)V + p 2 targetType + p 3 mustSee + p 4 mustReach + p 5 predicate +c net/minecraft/world/entity/animal/Fox$FaceplantGoal cfo$b net/minecraft/class_4019$class_4021 + f I countdown a field_17969 + f Lnet/minecraft/world/entity/animal/Fox; field_17970 b field_17970 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxAlertableEntitiesSelector cfo$c net/minecraft/class_4019$class_4022 + f Lnet/minecraft/world/entity/animal/Fox; field_17971 a field_17971 + m (Lnet/minecraft/world/entity/LivingEntity;)Z test a method_18303 + p 1 entity + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxBehaviorGoal cfo$d net/minecraft/class_4019$class_4023 + f Lnet/minecraft/world/entity/animal/Fox; field_17972 a field_17972 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; alertableTargeting b field_18102 + m ()Z hasShelter h method_18305 + m ()Z alertable i method_18306 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxBreedGoal cfo$e net/minecraft/class_4019$class_4024 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxEatBerriesGoal cfo$f net/minecraft/class_4019$class_4025 + f I ticksWaited g field_17974 + f Lnet/minecraft/world/entity/animal/Fox; field_17975 h field_17975 + f I WAIT_TICKS i field_30336 + m (Lnet/minecraft/world/level/block/state/BlockState;)V pickGlowBerry a method_33586 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)V pickSweetBerries b method_33587 + p 1 state + m ()V onReachedTarget o method_18307 + m (Lnet/minecraft/world/entity/animal/Fox;DII)V + p 2 speedModifier + p 4 searchRange + p 5 verticalSearchRange +c net/minecraft/world/entity/animal/Fox$FoxFloatGoal cfo$g net/minecraft/class_4019$class_4026 + f Lnet/minecraft/world/entity/animal/Fox; field_17976 a field_17976 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxFollowParentGoal cfo$h net/minecraft/class_4019$class_4052 + f Lnet/minecraft/world/entity/animal/Fox; fox d field_18104 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 fox + p 3 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxGroupData cfo$i net/minecraft/class_4019$class_4027 + f Lnet/minecraft/world/entity/animal/Fox$Type; type a field_17977 + m (Lnet/minecraft/world/entity/animal/Fox$Type;)V + p 1 type +c net/minecraft/world/entity/animal/Fox$FoxLookAtPlayerGoal cfo$j net/minecraft/class_4019$class_4292 + f Lnet/minecraft/world/entity/animal/Fox; field_19261 h field_19261 + m (Lnet/minecraft/world/entity/animal/Fox;Lnet/minecraft/world/entity/Mob;Ljava/lang/Class;F)V + p 2 mob + p 3 lookAtType + p 4 lookDistance +c net/minecraft/world/entity/animal/Fox$FoxLookControl cfo$k net/minecraft/class_4019$class_4028 + f Lnet/minecraft/world/entity/animal/Fox; field_17979 h field_17979 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxMeleeAttackGoal cfo$l net/minecraft/class_4019$class_4029 + f Lnet/minecraft/world/entity/animal/Fox; field_17980 b field_17980 + m (Lnet/minecraft/world/entity/animal/Fox;DZ)V + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Fox$FoxMoveControl cfo$m net/minecraft/class_4019$class_4030 + f Lnet/minecraft/world/entity/animal/Fox; field_17981 l field_17981 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxPanicGoal cfo$n net/minecraft/class_4019$class_4032 + f Lnet/minecraft/world/entity/animal/Fox; field_17983 a field_17983 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$FoxPounceGoal cfo$o net/minecraft/class_4019$class_4033 + f Lnet/minecraft/world/entity/animal/Fox; field_17984 a field_17984 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxSearchForItemsGoal cfo$p net/minecraft/class_4019$class_4034 + f Lnet/minecraft/world/entity/animal/Fox; field_17985 a field_17985 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$FoxStrollThroughVillageGoal cfo$q net/minecraft/class_4019$class_4031 + f Lnet/minecraft/world/entity/animal/Fox; field_17982 a field_17982 + m ()Z canFoxMove h method_18308 + m (Lnet/minecraft/world/entity/animal/Fox;II)V + p 2 unused32 + p 3 interval +c net/minecraft/world/entity/animal/Fox$PerchAndSearchGoal cfo$r net/minecraft/class_4019$class_4035 + f Lnet/minecraft/world/entity/animal/Fox; field_17986 b field_17986 + f D relX c field_17987 + f D relZ d field_17988 + f I lookTime e field_17989 + f I looksRemaining f field_17990 + m ()V resetLook k method_18309 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$SeekShelterGoal cfo$s net/minecraft/class_4019$class_4036 + f Lnet/minecraft/world/entity/animal/Fox; field_17991 b field_17991 + f I interval c field_17992 + m (Lnet/minecraft/world/entity/animal/Fox;D)V + p 2 speedModifier +c net/minecraft/world/entity/animal/Fox$SleepGoal cfo$t net/minecraft/class_4019$class_4037 + f Lnet/minecraft/world/entity/animal/Fox; field_17993 b field_17993 + f I WAIT_TIME_BEFORE_SLEEP c field_30337 + f I countdown d field_17994 + m ()Z canSleep k method_18432 + m (Lnet/minecraft/world/entity/animal/Fox;)V + m ()V +c net/minecraft/world/entity/animal/Fox$StalkPreyGoal cfo$u net/minecraft/class_4019$class_4038 + f Lnet/minecraft/world/entity/animal/Fox; field_17995 a field_17995 + m (Lnet/minecraft/world/entity/animal/Fox;)V +c net/minecraft/world/entity/animal/Fox$Type cfo$v net/minecraft/class_4019$class_4039 + f Lnet/minecraft/world/entity/animal/Fox$Type; RED a field_17996 + f Lnet/minecraft/world/entity/animal/Fox$Type; SNOW b field_17997 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41548 + f Ljava/util/function/IntFunction; BY_ID d field_17998 + f I id e field_18000 + f Ljava/lang/String; name f field_18001 + f [Lnet/minecraft/world/entity/animal/Fox$Type; $VALUES g field_18003 + m ()I getId a method_18317 + m (I)Lnet/minecraft/world/entity/animal/Fox$Type; byId a method_18311 + p 0 index + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/Fox$Type; byName a method_18314 + p 0 name + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/animal/Fox$Type; byBiome a method_18313 + p 0 biome + m ()[Lnet/minecraft/world/entity/animal/Fox$Type; $values b method_36637 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/FrogVariant cfp net/minecraft/class_7106 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_51942 + f Lnet/minecraft/resources/ResourceKey; TEMPERATE b field_37462 + f Lnet/minecraft/resources/ResourceKey; WARM c field_37463 + f Lnet/minecraft/resources/ResourceKey; COLD d field_37464 + f Lnet/minecraft/resources/ResourceLocation; texture e comp_707 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_707 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_58368 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/entity/animal/FrogVariant; bootstrap a method_58369 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/entity/animal/FrogVariant; register a method_43091 + p 0 registry + p 1 key + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/animal/IronGolem cfq net/minecraft/class_1439 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID c field_6763 + f I offerFlowerTick cc field_6759 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cd field_25365 + f I remainingPersistentAngerTime ce field_25366 + f Ljava/util/UUID; persistentAngerTarget cf field_25367 + f I IRON_INGOT_HEAL_AMOUNT d field_30338 + f I attackAnimationTick e field_6762 + m ()I getOfferFlowerTick gk method_6502 + m ()Z isPlayerCreated gl method_6496 + m ()F getAttackDamage gm method_22328 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6498 j method_6498 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26886 + m ()Lnet/minecraft/world/entity/Crackiness$Level; getCrackiness t method_23347 + m ()I getAttackAnimationTick x method_6501 + m (Z)V offerFlower x method_6497 + p 1 offeringFlower + m (Z)V setPlayerCreated y method_6499 + p 1 playerCreated + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/MushroomCow cfr net/minecraft/class_1438 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE cc field_18105 + f I MUTATE_CHANCE cd field_30339 + f Ljava/lang/String; TAG_STEW_EFFECTS ce field_45751 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; stewEffects cg field_45752 + f Ljava/util/UUID; lastLightningBoltUUID ch field_18108 + c Stores the UUID of the most recent lightning bolt to strike + m (Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType;)V setVariant a method_47846 + p 1 variant + m (Lnet/minecraft/world/entity/animal/MushroomCow;)Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; getOffspringType a method_18434 + p 1 mate + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;)V method_53155 a method_53155 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_53154 a method_53154 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/MushroomCow; getBreedOffspring c method_6495 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMushroomSpawnRules c method_20665 + p 0 mushroomCow + p 1 level + p 2 spawnType + p 3 pos + p 4 randomSource + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getEffectsFromItemStack n method_18436 + p 1 stack + m ()Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; getVariant t method_47847 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/MushroomCow$MushroomType cfr$a net/minecraft/class_1438$class_4053 + f Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; RED a field_18109 + f Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; BROWN b field_18110 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41549 + f Ljava/lang/String; type d field_18111 + f Lnet/minecraft/world/level/block/state/BlockState; blockState e field_18112 + f [Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; $VALUES f field_18113 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_18437 + c A block state that is rendered on the back of the mooshroom. + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; byType a method_18441 + p 0 name + m ()[Lnet/minecraft/world/entity/animal/MushroomCow$MushroomType; $values b method_36639 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/state/BlockState;)V + p 3 type + p 4 blockState + m ()V +c net/minecraft/world/entity/animal/Ocelot cfs net/minecraft/class_3701 + f D CROUCH_SPEED_MOD cc field_30340 + f D WALK_SPEED_MOD cd field_30341 + f D SPRINT_SPEED_MOD ce field_30342 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TRUSTING cg field_16301 + f Lnet/minecraft/world/entity/animal/Ocelot$OcelotAvoidEntityGoal; ocelotAvoidPlayersGoal ch field_16300 + f Lnet/minecraft/world/entity/animal/Ocelot$OcelotTemptGoal; temptGoal ci field_16302 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Ocelot; getBreedOffspring b method_16104 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkOcelotSpawnRules c method_20666 + p 0 ocelot + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58370 n method_58370 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26887 + m ()V reassessTrustingGoals t method_16103 + m ()Z isTrusting x method_16099 + m (Z)V setTrusting x method_16102 + p 1 trusting + m (Z)V spawnTrustingParticles y method_16100 + p 1 isTrusted + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Ocelot$OcelotAvoidEntityGoal cfs$a net/minecraft/class_3701$class_3702 + f Lnet/minecraft/world/entity/animal/Ocelot; ocelot i field_16303 + m (Lnet/minecraft/world/entity/animal/Ocelot;Ljava/lang/Class;FDD)V + p 1 ocelot + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Ocelot$OcelotTemptGoal cfs$b net/minecraft/class_3701$class_3703 + f Lnet/minecraft/world/entity/animal/Ocelot; ocelot c field_16304 + m (Lnet/minecraft/world/entity/animal/Ocelot;DLjava/util/function/Predicate;Z)V + p 1 ocelot + p 2 speedModifier + p 4 items + p 5 canScare +c net/minecraft/world/entity/animal/Panda cft net/minecraft/class_1440 + f F rollAmount cA field_6772 + f F rollAmountO cB field_6773 + f Lnet/minecraft/world/entity/animal/Panda$PandaLookAtPlayerGoal; lookAtPlayerGoal cD field_21804 + f Ljava/util/function/Predicate; PANDA_ITEMS cE field_6765 + f I TOTAL_ROLL_STEPS cc field_30343 + f I rollCounter cd field_6767 + f Lnet/minecraft/network/syncher/EntityDataAccessor; UNHAPPY_COUNTER ce field_6764 + f Lnet/minecraft/network/syncher/EntityDataAccessor; SNEEZE_COUNTER cg field_6771 + f Lnet/minecraft/network/syncher/EntityDataAccessor; EAT_COUNTER ch field_6780 + f Lnet/minecraft/network/syncher/EntityDataAccessor; MAIN_GENE_ID ci field_6766 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HIDDEN_GENE_ID cj field_6781 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS ck field_6768 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; BREED_TARGETING cl field_21803 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cm field_47773 + f I FLAG_SNEEZE cn field_30344 + f I FLAG_ROLL co field_30345 + f I FLAG_SIT cp field_30346 + f I FLAG_ON_BACK cq field_30347 + f I EAT_TICK_INTERVAL cr field_30348 + f I TOTAL_UNHAPPY_TIME cs field_30349 + f Z gotBamboo ct field_6769 + f Z didBite cu field_6770 + f Lnet/minecraft/world/phys/Vec3; rollDelta cv field_18277 + f F sitAmount cw field_6777 + f F sitAmountO cx field_6779 + f F onBackAmount cy field_6774 + f F onBackAmountO cz field_6775 + m (Z)V sneeze A method_6546 + p 1 sneezing + m (Z)V roll B method_6541 + p 1 rolling + m (F)F getSitAmount H method_6534 + p 1 partialTick + m (F)F getLieOnBackAmount I method_6555 + p 1 partialTick + m (F)F getRollAmount J method_6560 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Panda$Gene;)V setMainGene a method_6529 + p 1 pandaType + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_36640 a method_36640 + m (Lnet/minecraft/world/entity/animal/Panda;Lnet/minecraft/world/entity/animal/Panda;)V setGeneFromParents a method_6515 + p 1 father + p 2 mother + m (Lnet/minecraft/world/entity/animal/Panda$Gene;)V setHiddenGene b method_6547 + p 1 pandaType + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_24838 b method_24838 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6551 c method_6551 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_6504 c method_6504 + m (IZ)V setFlag d method_6557 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6556 d method_6556 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6559 e method_6559 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6507 f method_6507 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_36641 g method_36641 + m ()Z isBrown gA method_35173 + m ()Z isWeak gB method_6550 + m ()Z isScared gC method_6524 + m ()V setAttributes gD method_6538 + m ()Z canPerformAction gE method_18442 + m ()I getEatCounter gF method_6528 + m ()V handleEating gG method_6536 + m ()V addEatingParticles gH method_6512 + m ()V updateSitAmount gI method_6544 + m ()V updateOnBackAnimation gJ method_6503 + m ()V updateRollAmount gK method_6523 + m ()V handleRoll gL method_6537 + m ()V afterSneeze gM method_6548 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getOneOfGenesRandomly gN method_6519 + m ()V tryToSit gO method_18057 + m ()Z isOnBack gk method_6514 + m ()Z isEating gl method_6527 + m ()I getSneezeCounter gm method_6532 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getMainGene gn method_6525 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getHiddenGene go method_6508 + m ()Z isRolling gu method_6526 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gv method_26888 + m ()Lnet/minecraft/world/entity/animal/Panda$Gene; getVariant gw method_6554 + m ()Z isLazy gx method_6549 + m ()Z isWorried gy method_6509 + m ()Z isPlayful gz method_6522 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6542 h method_6542 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6511 i method_6511 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6531 j method_6531 + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/util/RandomSource; method_6506 k method_6506 + m (Lnet/minecraft/world/item/ItemStack;)Z isFoodOrCake n method_16106 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_58371 p method_58371 + m ()I getUnhappyCounter s method_6521 + m ()Z isSneezing t method_6545 + m (I)V setUnhappyCounter t method_6517 + p 1 unhappyCounter + m (I)V setSneezeCounter u method_6539 + p 1 sneezeCounter + m (I)V setEatCounter v method_6558 + p 1 eatCounter + m (I)Z getFlag w method_6533 + p 1 flag + m ()Z isSitting x method_6535 + m (Z)V sit x method_6513 + p 1 sitting + m (Z)V setOnBack y method_6505 + p 1 onBack + m (Z)V eat z method_6552 + p 1 eating + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Panda$Gene cft$a net/minecraft/class_1440$class_1443 + f Lnet/minecraft/world/entity/animal/Panda$Gene; NORMAL a field_6788 + f Lnet/minecraft/world/entity/animal/Panda$Gene; LAZY b field_6794 + f Lnet/minecraft/world/entity/animal/Panda$Gene; WORRIED c field_6795 + f Lnet/minecraft/world/entity/animal/Panda$Gene; PLAYFUL d field_6791 + f Lnet/minecraft/world/entity/animal/Panda$Gene; BROWN e field_6792 + f Lnet/minecraft/world/entity/animal/Panda$Gene; WEAK f field_6793 + f Lnet/minecraft/world/entity/animal/Panda$Gene; AGGRESSIVE g field_6789 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC h field_41673 + f Ljava/util/function/IntFunction; BY_ID i field_6786 + f I MAX_GENE j field_30350 + f I id k field_6785 + f Ljava/lang/String; name l field_6797 + f Z isRecessive m field_6790 + f [Lnet/minecraft/world/entity/animal/Panda$Gene; $VALUES n field_6796 + m ()I getId a method_6564 + m (I)Lnet/minecraft/world/entity/animal/Panda$Gene; byId a method_6566 + p 0 index + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/Panda$Gene; getRandom a method_17688 + p 0 random + m (Lnet/minecraft/world/entity/animal/Panda$Gene;Lnet/minecraft/world/entity/animal/Panda$Gene;)Lnet/minecraft/world/entity/animal/Panda$Gene; getVariantFromGenes a method_6569 + p 0 mainGene + p 1 hiddenGene + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/Panda$Gene; byName a method_6567 + p 0 name + m ()Z isRecessive b method_6568 + m ()[Lnet/minecraft/world/entity/animal/Panda$Gene; $values d method_36642 + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 3 id + p 4 name + p 5 isRecessive + m ()V +c net/minecraft/world/entity/animal/Panda$PandaAttackGoal cft$b net/minecraft/class_1440$class_4054 + f Lnet/minecraft/world/entity/animal/Panda; panda b field_18114 + m (Lnet/minecraft/world/entity/animal/Panda;DZ)V + p 1 panda + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/animal/Panda$PandaAvoidGoal cft$c net/minecraft/class_1440$class_1441 + f Lnet/minecraft/world/entity/animal/Panda; panda i field_6782 + m (Lnet/minecraft/world/entity/animal/Panda;Ljava/lang/Class;FDD)V + p 1 panda + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Panda$PandaBreedGoal cft$d net/minecraft/class_1440$class_1442 + f Lnet/minecraft/world/entity/animal/Panda; panda d field_6784 + f I unhappyCooldown e field_6783 + m ()Z canFindBamboo h method_6561 + m (Lnet/minecraft/world/entity/animal/Panda;D)V + p 1 panda + p 2 speedModifier +c net/minecraft/world/entity/animal/Panda$PandaHurtByTargetGoal cft$e net/minecraft/class_1440$class_1444 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6798 + m (Lnet/minecraft/world/entity/animal/Panda;[Ljava/lang/Class;)V + p 1 panda + p 2 entityClassToIgnoreDamage +c net/minecraft/world/entity/animal/Panda$PandaLieOnBackGoal cft$f net/minecraft/class_1440$class_1445 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6800 + f I cooldown b field_6799 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaLookAtPlayerGoal cft$g net/minecraft/class_1440$class_4056 + f Lnet/minecraft/world/entity/animal/Panda; panda h field_18116 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_24217 + p 1 lookAt + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31545 b method_31545 + m (Lnet/minecraft/world/entity/animal/Panda;Ljava/lang/Class;F)V + p 1 panda + p 2 lookAtType + p 3 lookDistance +c net/minecraft/world/entity/animal/Panda$PandaMoveControl cft$h net/minecraft/class_1440$class_1446 + f Lnet/minecraft/world/entity/animal/Panda; panda l field_6801 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaPanicGoal cft$i net/minecraft/class_1440$class_1447 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6802 + m (Lnet/minecraft/world/entity/animal/Panda;D)V + p 1 panda + p 2 speedModifier +c net/minecraft/world/entity/animal/Panda$PandaRollGoal cft$j net/minecraft/class_1440$class_1448 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6803 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Panda$PandaSitGoal cft$k net/minecraft/class_1440$class_1449 + f Lnet/minecraft/world/entity/animal/Panda; field_6805 a field_6805 + f I cooldown b field_6804 + m (Lnet/minecraft/world/entity/animal/Panda;)V +c net/minecraft/world/entity/animal/Panda$PandaSneezeGoal cft$l net/minecraft/class_1440$class_1450 + f Lnet/minecraft/world/entity/animal/Panda; panda a field_6806 + m (Lnet/minecraft/world/entity/animal/Panda;)V + p 1 panda +c net/minecraft/world/entity/animal/Parrot cfu net/minecraft/class_1453 + f F flap cg field_6818 + f F flapSpeed ch field_6819 + f F oFlapSpeed ci field_6827 + f F oFlap cj field_6829 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_6826 + f Ljava/util/function/Predicate; NOT_PARROT_PREDICATE cl field_6821 + f Ljava/util/Map; MOB_SOUND_MAP cm field_6822 + f F flapping cn field_6824 + f F nextFlap co field_28640 + f Z partyParrot cp field_6823 + f Lnet/minecraft/core/BlockPos; jukebox cq field_6820 + m (Lnet/minecraft/util/RandomSource;)F getPitch a method_6580 + p 0 random + m (Lnet/minecraft/world/entity/animal/Parrot$Variant;)V setVariant a method_47848 + p 1 variant + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/sounds/SoundEvent; getAmbient a method_6583 + p 0 level + p 1 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Z imitateNearbyMobs a method_6587 + p 0 level + p 1 parrot + m (Ljava/util/HashMap;)V method_6579 a method_6579 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/sounds/SoundEvent; getImitatedSound b method_6586 + p 0 type + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkParrotSpawnRules c method_20667 + p 0 parrot + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26889 + m ()Z isPartyParrot gv method_6582 + m ()Lnet/minecraft/world/entity/animal/Parrot$Variant; getVariant gw method_6584 + m ()V calculateFlapping gz method_6578 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Parrot$1 cfu$1 net/minecraft/class_1453$1 + m (Lnet/minecraft/world/entity/Mob;)Z test a method_6590 + p 1 mob + m ()V +c net/minecraft/world/entity/animal/Parrot$ParrotWanderGoal cfu$a net/minecraft/class_1453$class_6537 + m ()Lnet/minecraft/world/phys/Vec3; getTreePos k method_38066 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V +c net/minecraft/world/entity/animal/Parrot$Variant cfu$b net/minecraft/class_1453$class_7989 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; RED_BLUE a field_41550 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; BLUE b field_41551 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; GREEN c field_41552 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; YELLOW_BLUE d field_41553 + f Lnet/minecraft/world/entity/animal/Parrot$Variant; GRAY e field_41554 + f Lcom/mojang/serialization/Codec; CODEC f field_41555 + f Ljava/util/function/IntFunction; BY_ID g field_41556 + f I id h field_41557 + f Ljava/lang/String; name i field_41558 + f [Lnet/minecraft/world/entity/animal/Parrot$Variant; $VALUES j field_41559 + m ()I getId a method_47849 + m (I)Lnet/minecraft/world/entity/animal/Parrot$Variant; byId a method_47850 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/Parrot$Variant; $values b method_47851 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/Pig cfv net/minecraft/class_1452 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SADDLE_ID cc field_6816 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BOOST_TIME cd field_6815 + f Lnet/minecraft/world/entity/ItemBasedSteering; steering ce field_23230 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Pig; getBreedOffspring b method_6574 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/ItemStack;)Z method_58372 n method_58372 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58373 p method_58373 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26890 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/PolarBear cfw net/minecraft/class_1456 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STANDING_ID cc field_6840 + f F STAND_ANIMATION_TICKS cd field_30352 + f F clientSideStandAnimationO ce field_6838 + f F clientSideStandAnimation cg field_6837 + f I warningSoundTicks ch field_6839 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25369 + f I remainingPersistentAngerTime cj field_25370 + f Ljava/util/UUID; persistentAngerTarget ck field_25368 + m (F)F getStandingAnimationScale H method_6601 + p 1 partialTick + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60725 a method_60725 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPolarBearSpawnRules c method_20668 + p 0 polarBear + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26891 + m ()V playWarningSound t method_6602 + m ()Z isStanding x method_6600 + m (Z)V setStanding x method_6603 + p 1 standing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/PolarBear$PolarBearAttackPlayersGoal cfw$a net/minecraft/class_1456$class_1457 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6841 i field_6841 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/PolarBear$PolarBearHurtByTargetGoal cfw$b net/minecraft/class_1456$class_1459 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6843 a field_6843 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/PolarBear$PolarBearMeleeAttackGoal cfw$c net/minecraft/class_1456$class_1460 + f Lnet/minecraft/world/entity/animal/PolarBear; field_6844 b field_6844 + m (Lnet/minecraft/world/entity/animal/PolarBear;)V +c net/minecraft/world/entity/animal/Pufferfish cfx net/minecraft/class_1454 + f I STATE_SMALL b field_30353 + f I STATE_MID c field_30354 + f I inflateCounter cc field_6833 + f I deflateTimer cd field_6832 + f Ljava/util/function/Predicate; SCARY_MOB ce field_6834 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; targetingConditions cf field_33692 + f I STATE_FULL d field_30355 + f Lnet/minecraft/network/syncher/EntityDataAccessor; PUFF_STATE e field_6835 + m (Lnet/minecraft/world/entity/Mob;)V touch a method_6593 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;)Z method_36550 b method_36550 + m (I)V setPuffState c method_6596 + p 1 puffState + m ()I getPuffState gm method_6594 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6591 j method_6591 + m (I)F getScale s method_6592 + p 0 puffState + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Pufferfish$PufferfishPuffGoal cfx$a net/minecraft/class_1454$class_1455 + f Lnet/minecraft/world/entity/animal/Pufferfish; fish a field_6836 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_36552 a method_36552 + m (Lnet/minecraft/world/entity/animal/Pufferfish;)V + p 1 fish +c net/minecraft/world/entity/animal/Rabbit cfy net/minecraft/class_1463 + f D STROLL_SPEED_MOD cc field_30356 + f D BREED_SPEED_MOD cd field_30357 + f D FOLLOW_SPEED_MOD ce field_30358 + f D FLEE_SPEED_MOD cg field_30359 + f D ATTACK_SPEED_MOD ch field_30360 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TYPE_ID ci field_6852 + f Lnet/minecraft/resources/ResourceLocation; KILLER_BUNNY cj field_6846 + f I DEFAULT_ATTACK_POWER ck field_51585 + f I EVIL_ATTACK_POWER_INCREMENT cl field_51586 + f Lnet/minecraft/resources/ResourceLocation; EVIL_ATTACK_POWER_MODIFIER cm field_51587 + f I EVIL_ARMOR_VALUE cn field_30369 + f I MORE_CARROTS_DELAY co field_30370 + f I jumpTicks cp field_6851 + f I jumpDuration cq field_6849 + f Z wasOnGround cr field_6850 + f I jumpDelayTicks cs field_6848 + f I moreCarrotTicks ct field_6847 + m (F)F getJumpCompletion H method_6605 + p 1 partialTick + m (Lnet/minecraft/world/entity/animal/Rabbit$Variant;)V setVariant a method_47853 + p 1 variant + m (Lnet/minecraft/world/entity/animal/Rabbit;)Z method_24839 a method_24839 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/animal/Rabbit$Variant; getRandomRabbitVariant a method_47854 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Rabbit; getBreedOffspring b method_6620 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/animal/Rabbit;)Lnet/minecraft/world/entity/ai/control/JumpControl; method_6604 b method_6604 + m (DD)V facePoint c method_6616 + p 1 x + p 3 z + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkRabbitSpawnRules c method_20669 + p 0 rabbit + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/animal/Rabbit$Variant; getVariant gk method_47855 + m ()V enableJumpControl gl method_6611 + m ()V disableJumpControl gm method_6621 + m ()V setLandingDelay gn method_6608 + m ()V checkLandingDelay go method_6619 + m ()Z wantsMoreFood gu method_6607 + c Returns {@code true} if {@link #moreCarrotTicks} has reached zero + m (D)V setSpeedModifier i method_6606 + p 1 speedModifier + m (Lnet/minecraft/world/item/ItemStack;)Z method_58374 n method_58374 + m ()V startJumping s method_6618 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26892 + m ()Lnet/minecraft/sounds/SoundEvent; getJumpSound x method_6615 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Rabbit$RabbitAvoidEntityGoal cfy$a net/minecraft/class_1463$class_1465 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit i field_6853 + m (Lnet/minecraft/world/entity/animal/Rabbit;Ljava/lang/Class;FDD)V + p 1 rabbit + p 2 entityClassToAvoid + p 3 maxDist + p 4 walkSpeedModifier + p 6 sprintSpeedModifier +c net/minecraft/world/entity/animal/Rabbit$RabbitGroupData cfy$b net/minecraft/class_1463$class_1466 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; variant a field_41560 + m (Lnet/minecraft/world/entity/animal/Rabbit$Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/Rabbit$RabbitJumpControl cfy$c net/minecraft/class_1463$class_5197 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit b field_24090 + f Z canJump c field_24091 + m (Z)V setCanJump a method_27311 + p 1 canJump + m ()Z wantJump c method_27312 + m ()Z canJump d method_27313 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$RabbitMoveControl cfy$d net/minecraft/class_1463$class_1468 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit l field_6859 + f D nextJumpSpeed m field_6858 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$RabbitPanicGoal cfy$e net/minecraft/class_1463$class_1469 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit a field_6860 + m (Lnet/minecraft/world/entity/animal/Rabbit;D)V + p 1 rabbit + p 2 speedModifier +c net/minecraft/world/entity/animal/Rabbit$RaidGardenGoal cfy$f net/minecraft/class_1463$class_1470 + f Lnet/minecraft/world/entity/animal/Rabbit; rabbit g field_6863 + f Z wantsToRaid h field_6862 + f Z canRaid i field_6861 + m (Lnet/minecraft/world/entity/animal/Rabbit;)V + p 1 rabbit +c net/minecraft/world/entity/animal/Rabbit$Variant cfy$g net/minecraft/class_1463$class_7990 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; BROWN a field_41561 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; WHITE b field_41562 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; BLACK c field_41563 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; WHITE_SPLOTCHED d field_41564 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; GOLD e field_41565 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; SALT f field_41566 + f Lnet/minecraft/world/entity/animal/Rabbit$Variant; EVIL g field_41567 + f Lcom/mojang/serialization/Codec; CODEC h field_41568 + f Ljava/util/function/IntFunction; BY_ID i field_41569 + f I id j field_41570 + f Ljava/lang/String; name k field_41571 + f [Lnet/minecraft/world/entity/animal/Rabbit$Variant; $VALUES l field_41572 + m ()I id a method_47856 + m (I)Lnet/minecraft/world/entity/animal/Rabbit$Variant; byId a method_47857 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/Rabbit$Variant; $values b method_47859 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/Salmon cfz net/minecraft/class_1462 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Sheep cga net/minecraft/class_1472 + f I EAT_ANIMATION_TICKS cc field_30371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_WOOL_ID cd field_6870 + f Ljava/util/Map; ITEM_BY_DYE ce field_6868 + f Ljava/util/Map; COLOR_BY_DYE cg field_6867 + f I eatAnimationTick ch field_6865 + f Lnet/minecraft/world/entity/ai/goal/EatBlockGoal; eatBlockGoal ci field_6869 + m (F)F getHeadEatPositionScale H method_6628 + p 1 partialTick + m (F)F getHeadEatAngleScale I method_6641 + p 1 partialTick + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/DyeColor; getRandomSheepColor a method_6632 + p 0 random + m (Lnet/minecraft/world/entity/animal/Animal;Lnet/minecraft/world/entity/animal/Animal;)Lnet/minecraft/world/item/DyeColor; getOffspringColor a method_6639 + c Attempts to mix both parent sheep to come up with a mixed dye color. + p 1 father + p 2 mother + m (Lnet/minecraft/world/item/DyeColor;)I getColor a method_6634 + p 0 dyeColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/crafting/CraftingInput; makeCraftInput a method_59936 + p 0 color1 + p 1 color2 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_17689 a method_17689 + m (Ljava/util/EnumMap;)V method_6637 a method_6637 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Sheep; getBreedOffspring b method_6640 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/item/DyeColor;)V setColor b method_6631 + c Sets the wool color of this sheep + p 1 dyeColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_17691 b method_17691 + m (Lnet/minecraft/world/item/DyeColor;)I createSheepColor c method_6630 + p 0 dyeColor + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_6638 d method_6638 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58375 n method_58375 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26893 + m ()Lnet/minecraft/world/item/DyeColor; getColor t method_6633 + c Gets the wool color of this sheep. + m ()Z isSheared x method_6629 + c Returns {@code true} if a sheep's wool has been sheared. + m (Z)V setSheared x method_6635 + c Makes a sheep sheared if set to {@code true}. + p 1 sheared + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Sheep$1 cga$1 net/minecraft/class_1472$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_6872 + m ()V +c net/minecraft/world/entity/animal/ShoulderRidingEntity cgb net/minecraft/class_1471 + f I RIDE_COOLDOWN cg field_30372 + f I rideCooldownCounter ch field_6864 + m (Lnet/minecraft/server/level/ServerPlayer;)Z setEntityOnShoulder b method_6627 + p 1 player + m ()Z canSitOnShoulder gy method_6626 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/SnowGolem cgc net/minecraft/class_1473 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PUMPKIN_ID b field_6873 + f B PUMPKIN_FLAG c field_30373 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18443 j method_18443 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26894 + m ()Z hasPumpkin t method_6643 + m (Z)V setPumpkin x method_6642 + p 1 pumpkinEquipped + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Squid cgd net/minecraft/class_1477 + f F xBodyRot b field_6907 + f F xBodyRotO c field_6905 + f F tentacleMovement cc field_6908 + f F oldTentacleMovement cd field_6902 + f F tentacleAngle ce field_6904 + f F oldTentacleAngle cf field_6900 + f F speed cg field_6901 + f F tentacleSpeed ch field_6912 + f F rotateSpeed ci field_6913 + f F tx cj field_6910 + f F ty ck field_6911 + f F tz cl field_6909 + f F zBodyRot d field_6903 + f F zBodyRotO e field_6906 + m (FFF)V setMovementVector a method_6670 + p 1 tx + p 2 ty + p 3 tz + m (Lnet/minecraft/world/entity/animal/Squid;)Z method_6668 a method_6668 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; rotateVector b method_6671 + p 1 vector + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26895 + m ()Z hasMovementVector gl method_6672 + m ()Lnet/minecraft/core/particles/ParticleOptions; getInkParticle s method_33336 + m ()Lnet/minecraft/sounds/SoundEvent; getSquirtSound t method_33337 + m ()V spawnInk x method_6669 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Squid$SquidFleeGoal cgd$a net/minecraft/class_1477$class_1478 + f Lnet/minecraft/world/entity/animal/Squid; field_6914 a field_6914 + f F SQUID_FLEE_SPEED b field_30375 + f F SQUID_FLEE_MIN_DISTANCE c field_30376 + f F SQUID_FLEE_MAX_DISTANCE d field_30377 + f I fleeTicks e field_6915 + m (Lnet/minecraft/world/entity/animal/Squid;)V +c net/minecraft/world/entity/animal/Squid$SquidRandomMovementGoal cgd$b net/minecraft/class_1477$class_1479 + f Lnet/minecraft/world/entity/animal/Squid; squid a field_6917 + m (Lnet/minecraft/world/entity/animal/Squid;Lnet/minecraft/world/entity/animal/Squid;)V + p 2 squid +c net/minecraft/world/entity/animal/TropicalFish cge net/minecraft/class_1474 + f Ljava/lang/String; BUCKET_VARIANT_TAG b field_30378 + f Ljava/util/List; COMMON_VARIANTS c field_41573 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE_VARIANT d field_6874 + f Z isSchool e field_6877 + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;)V setVariant a method_47860 + p 1 variant + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)I packVariant a method_47861 + p 0 pattern + p 1 baseColor + p 2 patternColor + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkTropicalFishSpawnRules b method_38985 + p 0 tropicalFish + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (I)Ljava/lang/String; getPredefinedName c method_6649 + p 0 variantId + m ()Lnet/minecraft/world/item/DyeColor; getBaseColor gt method_6658 + m ()Lnet/minecraft/world/item/DyeColor; getPatternColor gu method_6655 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; getVariant gv method_47862 + m ()I getPackedVariant gw method_47863 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57303 i method_57303 + m (I)Lnet/minecraft/world/item/DyeColor; getBaseColor s method_6652 + p 0 variantId + m (I)Lnet/minecraft/world/item/DyeColor; getPatternColor t method_6651 + p 0 variantId + m (I)Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; getPattern u method_47864 + p 0 variantId + m (I)V setPackedVariant v method_47865 + p 1 packedVariant + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/TropicalFish$Base cge$a net/minecraft/class_1474$class_7991 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; SMALL a field_41574 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; LARGE b field_41575 + f I id c field_41576 + f [Lnet/minecraft/world/entity/animal/TropicalFish$Base; $VALUES d field_41577 + m ()[Lnet/minecraft/world/entity/animal/TropicalFish$Base; $values a method_47866 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/TropicalFish$Pattern cge$b net/minecraft/class_1474$class_1475 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; KOB a field_6881 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SUNSTREAK b field_6880 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SNOOPER c field_6882 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; DASHER d field_6890 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BRINELY e field_6891 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; SPOTTY f field_6892 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; FLOPPER g field_6893 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; STRIPEY h field_6887 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; GLITTER i field_6883 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BLOCKFISH j field_6884 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; BETTY k field_6888 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; CLAYFISH l field_6889 + f Lcom/mojang/serialization/Codec; CODEC m field_41578 + f Ljava/util/function/IntFunction; BY_ID n field_41579 + f Ljava/lang/String; name o field_41580 + f Lnet/minecraft/network/chat/Component; displayName p field_41581 + f Lnet/minecraft/world/entity/animal/TropicalFish$Base; base q field_41582 + f I packedId r field_41583 + f [Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; $VALUES s field_6886 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Base; base a method_47867 + m (I)Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; byId a method_47868 + p 0 packedId + m ()I getPackedId b method_47870 + m ()Lnet/minecraft/network/chat/Component; displayName d method_47871 + m ()[Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; $values e method_36643 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/entity/animal/TropicalFish$Base;I)V + p 3 name + p 4 base + p 5 id + m ()V +c net/minecraft/world/entity/animal/TropicalFish$TropicalFishGroupData cge$c net/minecraft/class_1474$class_1476 + f Lnet/minecraft/world/entity/animal/TropicalFish$Variant; variant b field_41584 + m (Lnet/minecraft/world/entity/animal/TropicalFish;Lnet/minecraft/world/entity/animal/TropicalFish$Variant;)V + p 1 leader + p 2 variant +c net/minecraft/world/entity/animal/TropicalFish$Variant cge$d net/minecraft/class_1474$class_7992 + f Lcom/mojang/serialization/Codec; CODEC a field_49236 + f Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; pattern b comp_1177 + f Lnet/minecraft/world/item/DyeColor; baseColor c comp_1178 + f Lnet/minecraft/world/item/DyeColor; patternColor d comp_1179 + m ()I getPackedId a method_47872 + m ()Lnet/minecraft/world/entity/animal/TropicalFish$Pattern; pattern b comp_1177 + m ()Lnet/minecraft/world/item/DyeColor; baseColor c comp_1178 + m ()Lnet/minecraft/world/item/DyeColor; patternColor d comp_1179 + m (I)V + p 1 id + m (Lnet/minecraft/world/entity/animal/TropicalFish$Pattern;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/DyeColor;)V + m ()V +c net/minecraft/world/entity/animal/Turtle cgf net/minecraft/class_1481 + f Ljava/util/function/Predicate; BABY_ON_LAND_SELECTOR cc field_6921 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HOME_POS cd field_6920 + f Lnet/minecraft/network/syncher/EntityDataAccessor; HAS_EGG ce field_6919 + f Lnet/minecraft/network/syncher/EntityDataAccessor; LAYING_EGG cg field_6923 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TRAVEL_POS ch field_6922 + f Lnet/minecraft/network/syncher/EntityDataAccessor; GOING_HOME ci field_6924 + f Lnet/minecraft/network/syncher/EntityDataAccessor; TRAVELLING cj field_6925 + f F BABY_SCALE ck field_47774 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cl field_47775 + f I layEggCounter cm field_6918 + m (Z)V setTravelling A method_6696 + p 1 isTravelling + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/util/RandomSource; method_6685 a method_6685 + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/util/RandomSource; method_6677 b method_6677 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkTurtleSpawnRules c method_20671 + p 0 turtle + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/core/BlockPos; getHomePos gk method_6693 + m ()Lnet/minecraft/core/BlockPos; getTravelPos gl method_6687 + m ()Z isGoingHome gm method_6684 + m ()Z isTravelling gn method_6691 + m (Lnet/minecraft/core/BlockPos;)V setHomePos h method_6683 + p 1 homePos + m (Lnet/minecraft/core/BlockPos;)V setTravelPos i method_6699 + p 1 travelPos + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6688 j method_6688 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58376 n method_58376 + m ()Z hasEgg s method_6679 + m ()Z isLayingEgg t method_6695 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_26896 + m (Z)V setHasEgg x method_6680 + p 1 hasEgg + m (Z)V setLayingEgg y method_6676 + p 1 isLayingEgg + m (Z)V setGoingHome z method_6697 + p 1 isGoingHome + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Turtle$TurtleBreedGoal cgf$a net/minecraft/class_1481$class_1482 + f Lnet/minecraft/world/entity/animal/Turtle; turtle d field_6926 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleGoHomeGoal cgf$b net/minecraft/class_1481$class_1483 + f Lnet/minecraft/world/entity/animal/Turtle; turtle a field_6930 + f D speedModifier b field_6927 + f Z stuck c field_6929 + f I closeToHomeTryTicks d field_6928 + f I GIVE_UP_TICKS e field_30384 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleGoToWaterGoal cgf$c net/minecraft/class_1481$class_1484 + f I GIVE_UP_TICKS g field_30385 + f Lnet/minecraft/world/entity/animal/Turtle; turtle h field_6931 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleLayEggGoal cgf$d net/minecraft/class_1481$class_1485 + f Lnet/minecraft/world/entity/animal/Turtle; turtle g field_6932 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtleMoveControl cgf$e net/minecraft/class_1481$class_1486 + f Lnet/minecraft/world/entity/animal/Turtle; turtle l field_6933 + m ()V updateSpeed g method_6700 + m (Lnet/minecraft/world/entity/animal/Turtle;)V + p 1 turtle +c net/minecraft/world/entity/animal/Turtle$TurtlePanicGoal cgf$f net/minecraft/class_1481$class_1487 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/Turtle$TurtlePathNavigation cgf$g net/minecraft/class_1481$class_1488 + m (Lnet/minecraft/world/entity/animal/Turtle;Lnet/minecraft/world/level/Level;)V + p 1 turtle + p 2 level +c net/minecraft/world/entity/animal/Turtle$TurtleRandomStrollGoal cgf$h net/minecraft/class_1481$class_1489 + f Lnet/minecraft/world/entity/animal/Turtle; turtle i field_6934 + m (Lnet/minecraft/world/entity/animal/Turtle;DI)V + p 1 turtle + p 2 speedModifier + p 4 interval +c net/minecraft/world/entity/animal/Turtle$TurtleTravelGoal cgf$i net/minecraft/class_1481$class_1491 + f Lnet/minecraft/world/entity/animal/Turtle; turtle a field_6942 + f D speedModifier b field_6940 + f Z stuck c field_6941 + m (Lnet/minecraft/world/entity/animal/Turtle;D)V + p 1 turtle + p 2 speedModifier +c net/minecraft/world/entity/animal/WaterAnimal cgg net/minecraft/class_1480 + m (I)V handleAirSupply b method_6673 + p 1 airSupply + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSurfaceWaterAnimalSpawnRules c method_38986 + p 0 waterAnimal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/Wolf cgh net/minecraft/class_1493 + f Ljava/util/function/Predicate; PREY_SELECTOR cg field_18004 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_INTERESTED_ID ch field_6946 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLLAR_COLOR ci field_6950 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_REMAINING_ANGER_TIME cj field_25373 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_49722 + f F START_HEALTH cl field_30386 + f F TAME_HEALTH cm field_30387 + f F ARMOR_REPAIR_UNIT cn field_49237 + f F interestedAngle co field_6952 + f F interestedAngleO cp field_6949 + f Z isWet cq field_6944 + f Z isShaking cr field_6951 + f F shakeAnim cs field_6947 + f F shakeAnimO ct field_6945 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME cu field_25371 + f Ljava/util/UUID; persistentAngerTarget cv field_25372 + m (Z)V setIsInterested A method_6712 + p 1 isInterested + m (F)F getWetShade H method_6707 + c Used when calculating the amount of shading to apply while the wolf is wet. + p 1 partialTicks + m (F)F getHeadRollAngle I method_6719 + p 1 partialTicks + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_58059 a method_58059 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58060 a method_58060 + m (Lnet/minecraft/world/entity/animal/Wolf;)Lnet/minecraft/util/RandomSource; method_6716 a method_6716 + m (Lnet/minecraft/world/item/DyeColor;)V setCollarColor a method_6708 + p 1 collarColor + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;)V method_59937 a method_59937 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/Wolf; getBreedOffspring b method_6717 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkWolfSpawnRules c method_39450 + p 0 wolf + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (FF)F getBodyRollAngle g method_6715 + p 1 partialTicks + p 2 offset + m (Lnet/minecraft/world/damagesource/DamageSource;)Z canArmorAbsorb g method_57304 + p 1 damageSource + m (Lnet/minecraft/world/entity/player/Player;)V tryToTame g method_58169 + p 1 player + m ()Z hasArmor gA method_55710 + m ()Z isInterested gB method_6710 + m ()V cancelShake gC method_31167 + m ()Lnet/minecraft/resources/ResourceLocation; getTexture gu method_58061 + m ()Lnet/minecraft/core/Holder; getVariant gv method_58062 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gw method_26897 + m ()Z isWet gx method_6711 + c True if the wolf is wet + m ()F getTailAngle gy method_6714 + m ()Lnet/minecraft/world/item/DyeColor; getCollarColor gz method_6713 + m (Lnet/minecraft/core/Holder;)V setVariant i method_58063 + p 1 variant + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18444 k method_18444 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/Wolf$WolfAvoidEntityGoal cgh$a net/minecraft/class_1493$class_1494 + f Lnet/minecraft/world/entity/animal/Wolf; field_6953 i field_6953 + f Lnet/minecraft/world/entity/animal/Wolf; wolf j field_6954 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)Z avoidLlama a method_6720 + p 1 llama + m (Lnet/minecraft/world/entity/animal/Wolf;Lnet/minecraft/world/entity/animal/Wolf;Ljava/lang/Class;FDD)V + p 2 wolf + p 3 entityClassToAvoid + p 4 maxDist + p 5 walkSpeedModifier + p 7 sprintSpeedModifier +c net/minecraft/world/entity/animal/Wolf$WolfPackData cgh$b net/minecraft/class_1493$class_9345 + f Lnet/minecraft/core/Holder; type a field_49723 + m (Lnet/minecraft/core/Holder;)V + p 1 type +c net/minecraft/world/entity/animal/WolfVariant cgi net/minecraft/class_9346 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49724 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51943 + f Lcom/mojang/serialization/Codec; CODEC c field_49980 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51944 + f Lnet/minecraft/resources/ResourceLocation; wildTexture e field_49981 + f Lnet/minecraft/resources/ResourceLocation; tameTexture f field_49982 + f Lnet/minecraft/resources/ResourceLocation; angryTexture g field_49983 + f Lnet/minecraft/resources/ResourceLocation; wildTextureFull h field_49984 + f Lnet/minecraft/resources/ResourceLocation; tameTextureFull i field_49985 + f Lnet/minecraft/resources/ResourceLocation; angryTextureFull j field_49986 + f Lnet/minecraft/core/HolderSet; biomes k field_49987 + m ()Lnet/minecraft/resources/ResourceLocation; wildTexture a method_58377 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; fullTextureId a method_58378 + p 0 texture + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58379 a method_58379 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58064 a method_58064 + m (Ljava/lang/String;)Ljava/lang/String; method_58380 a method_58380 + m ()Lnet/minecraft/resources/ResourceLocation; tameTexture b method_58381 + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58382 b method_58382 + m ()Lnet/minecraft/resources/ResourceLocation; angryTexture c method_58383 + m (Lnet/minecraft/world/entity/animal/WolfVariant;)Lnet/minecraft/resources/ResourceLocation; method_58384 c method_58384 + m ()Lnet/minecraft/core/HolderSet; biomes d method_58385 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/HolderSet;)V + p 1 wildTexture + p 2 tameTexture + p 3 angryTexture + p 4 biomes + m ()V +c net/minecraft/world/entity/animal/WolfVariants cgj net/minecraft/class_9347 + f Lnet/minecraft/resources/ResourceKey; PALE a field_49725 + f Lnet/minecraft/resources/ResourceKey; SPOTTED b field_49726 + f Lnet/minecraft/resources/ResourceKey; SNOWY c field_49727 + f Lnet/minecraft/resources/ResourceKey; BLACK d field_49728 + f Lnet/minecraft/resources/ResourceKey; ASHEN e field_49729 + f Lnet/minecraft/resources/ResourceKey; RUSTY f field_49730 + f Lnet/minecraft/resources/ResourceKey; WOODS g field_49731 + f Lnet/minecraft/resources/ResourceKey; CHESTNUT h field_49732 + f Lnet/minecraft/resources/ResourceKey; STRIPED i field_49733 + f Lnet/minecraft/resources/ResourceKey; DEFAULT j field_51588 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_58066 + p 0 name + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder$Reference;)Z method_58065 a method_58065 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_59938 a method_59938 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getSpawnVariant a method_58067 + p 0 registryAccess + p 1 biome + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_58068 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)V register a method_58069 + p 0 context + p 1 key + p 2 name + p 3 spawnBiome + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/tags/TagKey;)V register a method_58170 + p 0 context + p 1 key + p 2 name + p 3 spawnBiomes + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;Lnet/minecraft/core/HolderSet;)V register a method_58171 + p 0 context + p 1 key + p 2 name + p 3 spawnBiomes + m ()V + m ()V +c net/minecraft/world/entity/animal/allay/Allay cgk net/minecraft/class_7298 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES b field_38398 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES c field_38403 + f Lnet/minecraft/core/Vec3i; ITEM_PICKUP_REACH cc field_38399 + f I LIFTING_ITEM_ANIMATION_DURATION cd field_39461 + f F DANCING_LOOP_DURATION ce field_39462 + f F SPINNING_ANIMATION_DURATION cf field_39463 + f Lnet/minecraft/world/item/crafting/Ingredient; DUPLICATION_ITEM cg field_39464 + f I DUPLICATION_COOLDOWN_TICKS ch field_39465 + f I NUM_OF_DUPLICATION_HEARTS ci field_39679 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DANCING cj field_39466 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CAN_DUPLICATE ck field_39467 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicVibrationListener cl field_38401 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData cm field_44596 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser cn field_39468 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicJukeboxListener co field_39469 + f Lnet/minecraft/world/SimpleContainer; inventory cp field_38402 + f Lnet/minecraft/core/BlockPos; jukeboxPos cq field_39470 + f J duplicationCooldown cr field_39471 + f F holdingItemAnimationTicks cs field_38935 + f F holdingItemAnimationTicks0 ct field_38936 + f F dancingAnimationTicks cu field_39472 + f F spinningAnimationTicks cv field_39473 + f F spinningAnimationTicks0 cw field_39474 + f Lcom/google/common/collect/ImmutableList; THROW_SOUND_PITCHES d field_38937 + f Lorg/slf4j/Logger; LOGGER e field_39045 + m (F)F getHoldingItemAnimationProgress H method_43397 + p 1 partialTick + m (F)F getSpinningProgress I method_44368 + p 1 partialTick + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V removeInteractionItem a method_44357 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_43536 a method_43536 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_43537 a method_43537 + m (Lnet/minecraft/core/BlockPos;Z)V setJukeboxPlaying b method_44358 + p 1 jukeboxPos + p 2 jukeboxPlaying + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z allayConsidersItemEqual d method_45340 + p 1 first + p 2 second + m (Ljava/lang/String;)V method_60975 d method_60975 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasNonMatchingPotion e method_45341 + p 1 first + p 2 second + m (Ljava/lang/String;)V method_60976 e method_60976 + m ()Z isDancing gk method_44359 + m ()Z isSpinning gl method_44360 + m ()Z isOnPickupCooldown go method_42654 + m ()Z shouldStopDancing gp method_44361 + m ()V updateDuplicationCooldown gq method_44362 + m ()V duplicateAllay gr method_44363 + m ()V resetDuplicationCooldown gs method_44364 + m ()Z canDuplicate gt method_44365 + m ()V spawnHeartParticle gu method_44608 + m (Lnet/minecraft/world/item/ItemStack;)Z isDuplicationItem n method_44366 + p 1 stack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_42655 + m ()Z hasItemInHand t method_43396 + m (Z)V setDancing x method_44367 + p 1 dancing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/allay/Allay$JukeboxListener cgk$a net/minecraft/class_7298$class_7525 + f Lnet/minecraft/world/entity/animal/allay/Allay; field_39477 a field_39477 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerSource b field_39478 + f I listenerRadius c field_39479 + m (Lnet/minecraft/world/entity/animal/allay/Allay;Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 2 listenerSource + p 3 listenerRadius +c net/minecraft/world/entity/animal/allay/Allay$VibrationUser cgk$b net/minecraft/class_7298$class_7524 + f Lnet/minecraft/world/entity/animal/allay/Allay; field_39476 a field_39476 + f I VIBRATION_EVENT_LISTENER_RANGE b field_43190 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44597 + m (Lnet/minecraft/world/entity/animal/allay/Allay;)V +c net/minecraft/world/entity/animal/allay/AllayAi cgl net/minecraft/class_7299 + f F SPEED_MULTIPLIER_WHEN_IDLING a field_38406 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_DEPOSIT_TARGET b field_38407 + f F SPEED_MULTIPLIER_WHEN_RETRIEVING_ITEM c field_38408 + f F SPEED_MULTIPLIER_WHEN_PANICKING d field_39113 + f I CLOSE_ENOUGH_TO_TARGET e field_38938 + f I TOO_FAR_FROM_TARGET f field_38939 + f I MAX_LOOK_DISTANCE g field_38410 + f I MIN_WAIT_DURATION h field_38411 + f I MAX_WAIT_DURATION i field_38412 + f I TIME_TO_FORGET_NOTEBLOCK j field_38413 + f I DISTANCE_TO_WANTED_ITEM k field_38940 + f I GIVE_ITEM_TIMEOUT_DURATION l field_40130 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/entity/ai/behavior/PositionTracker; method_43092 a method_43092 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getLikedPlayer a method_43093 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/core/GlobalPos;)Z shouldDepositItemsAtLikedNoteblock a method_42658 + p 0 entity + p 1 brain + p 2 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/BlockPos;)V hearNoteblock a method_42659 + p 0 entity + p 1 pos + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_42660 + p 0 brain + m (Lnet/minecraft/world/entity/animal/allay/Allay;)V updateActivity a method_42661 + p 0 allay + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getItemDepositPosition b method_42657 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_42663 + p 0 brain + m (Lnet/minecraft/world/entity/animal/allay/Allay;)Z method_42664 b method_42664 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasWantedItem c method_49122 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_42666 + p 0 brain + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Optional; getLikedPlayerPositionTracker d method_42662 + p 0 entity + m ()V +c net/minecraft/world/entity/animal/allay/package-info cgm net/minecraft/class_7300 +c net/minecraft/world/entity/animal/armadillo/Armadillo cgn net/minecraft/class_9069 + f F BABY_SCALE cc field_47778 + f F MAX_HEAD_ROTATION_EXTENT cd field_48332 + f I SCARE_CHECK_INTERVAL ce field_47779 + f Lnet/minecraft/world/entity/AnimationState; rollOutAnimationState cg field_49080 + f Lnet/minecraft/world/entity/AnimationState; rollUpAnimationState ch field_49081 + f Lnet/minecraft/world/entity/AnimationState; peekAnimationState ci field_49082 + f D SCARE_DISTANCE_HORIZONTAL cj field_48333 + f D SCARE_DISTANCE_VERTICAL ck field_48334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ARMADILLO_STATE cl field_47785 + f J inStateTicks cm field_47786 + f I scuteTime cn field_47787 + f Z peekReceivedClient co field_49083 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState;)V switchToState a method_55713 + p 1 state + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkArmadilloSpawnRules c method_56083 + p 0 entityType + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z shouldSwitchToScaredState gk method_55714 + m ()Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; getState gl method_55718 + m ()V rollUp gm method_55715 + m ()V rollOut gn method_55724 + m ()Z brushOffScute go method_55716 + m ()Z canStayRolledUp gu method_55717 + m ()I pickNextScuteDropTime gv method_55719 + m ()V setupAnimationStates gw method_55720 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isScaredBy j method_55721 + p 1 entity + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55722 + m ()Z isScared t method_55723 + m ()Z shouldHideInShell x method_55711 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/armadillo/Armadillo$1 cgn$1 net/minecraft/class_9069$1 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo; field_47788 a field_47788 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;Lnet/minecraft/world/entity/Mob;)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState cgn$a net/minecraft/class_9069$class_9070 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; IDLE a field_47790 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; ROLLING b field_47791 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; SCARED c field_47792 + f Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; UNROLLING d field_49084 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC e field_48335 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC f field_47794 + f Ljava/util/function/IntFunction; BY_ID g field_48336 + f Ljava/lang/String; name h field_47793 + f Z isThreatened i field_49085 + f I animationDuration j field_49086 + f I id k field_48337 + f [Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; $VALUES l field_47795 + m ()Z isThreatened a method_56998 + m (J)Z shouldHideInShell a method_56999 + p 1 inStateTicks + m (Ljava/lang/String;)Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; fromName a method_55727 + p 0 name + m ()I animationDuration b method_57000 + m ()I id d method_56084 + m ()[Lnet/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState; $values e method_55726 + m (Ljava/lang/String;ILjava/lang/String;ZII)V + p 3 name + p 4 isThreatened + p 5 animationDuration + p 6 id + m ()V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$1 cgn$a$1 net/minecraft/class_9069$class_9070$1 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$2 cgn$a$2 net/minecraft/class_9069$class_9070$2 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$3 cgn$a$3 net/minecraft/class_9069$class_9070$3 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/Armadillo$ArmadilloState$4 cgn$a$4 net/minecraft/class_9069$class_9070$4 + m (Ljava/lang/String;ILjava/lang/String;ZII)V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi cgo net/minecraft/class_9071 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_47797 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_47798 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_47799 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT d field_47800 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE e field_47801 + f D DEFAULT_CLOSE_ENOUGH_DIST f field_48338 + f D BABY_CLOSE_ENOUGH_DIST g field_48339 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE h field_47802 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES i field_47803 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES j field_47804 + f Lnet/minecraft/world/entity/ai/behavior/OneShot; ARMADILLO_ROLLING_OUT k field_47805 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider a method_55728 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)Z method_55729 a method_55729 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_55730 a method_55730 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_55731 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55732 a method_55732 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_55733 a method_55733 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)V updateActivity a method_55734 + p 0 armadillo + m (Lnet/minecraft/world/item/ItemStack;)Z method_58386 a method_58386 + m ()Ljava/util/function/Predicate; getTemptations b method_55735 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_55736 b method_55736 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_55737 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_55738 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initScaredActivity d method_55739 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$1 cgo$1 net/minecraft/class_9071$1 + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$ArmadilloBallUp cgo$a net/minecraft/class_9071$class_9072 + f I BALL_UP_STAY_IN_STATE c field_49087 + f I TICKS_DELAY_TO_DETERMINE_IF_DANGER_IS_STILL_AROUND d field_49088 + f I DANGER_DETECTED_RECENTLY_DANGER_THRESHOLD e field_49089 + f I nextPeekTimer f field_49090 + f Z dangerWasAround g field_49091 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)Z checkExtraStartConditions a method_55740 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V tick a method_55741 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)I pickNextPeekTimer a method_57001 + p 1 armadillo + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)Z canStillUse b method_55742 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V start c method_55743 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V stop d method_55744 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/animal/armadillo/ArmadilloAi$ArmadilloPanic cgo$b net/minecraft/class_9071$class_9073 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/armadillo/Armadillo;J)V start a method_57002 + m (Lnet/minecraft/world/entity/PathfinderMob;)Lnet/minecraft/tags/TagKey; method_60726 a method_60726 + m (F)V +c net/minecraft/world/entity/animal/armadillo/package-info cgp net/minecraft/class_9074 +c net/minecraft/world/entity/animal/axolotl/Axolotl cgq net/minecraft/class_5762 + f I TOTAL_PLAYDEAD_TIME cc field_30388 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cd field_28333 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES ce field_28334 + f D PLAYER_REGEN_DETECTION_RANGE cg field_30389 + f I RARE_VARIANT_CHANCE ch field_30390 + f Ljava/lang/String; VARIANT_TAG ci field_30391 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT cj field_28335 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYING_DEAD ck field_28336 + f Lnet/minecraft/network/syncher/EntityDataAccessor; FROM_BUCKET cl field_28337 + f I AXOLOTL_TOTAL_AIR_SUPPLY cm field_30392 + f I REHYDRATE_AIR_SUPPLY cn field_33485 + f I REGEN_BUFF_MAX_DURATION co field_34005 + f Ljava/util/Map; modelRotationValues cp field_33764 + f I REGEN_BUFF_BASE_DURATION cq field_30393 + m (Lnet/minecraft/util/RandomSource;)Z useRareVariant a method_33221 + p 0 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAxolotlSpawnRules a method_38987 + p 0 axolotl + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)V setVariant a method_33219 + p 1 variant + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;Lnet/minecraft/world/entity/LivingEntity;)V onStopAttacking a method_35175 + p 0 axolotl + p 1 target + m (Lnet/minecraft/world/entity/player/Player;)V applySupportingEffects a method_33223 + p 1 player + m ()Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getVariant gk method_33225 + m ()Z isPlayingDead gl method_33226 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gm method_33227 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57305 i method_57305 + m ()V rehydrate s method_36282 + m (I)V handleAirSupply t method_33230 + p 1 airSupply + m (Z)V setPlayingDead y method_33231 + p 1 playingDead + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlGroupData cgq$a net/minecraft/class_5762$class_5763 + f [Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; types a field_28338 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getVariant a method_33232 + p 1 random + m ([Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)V + p 1 types +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlLookControl cgq$b net/minecraft/class_5762$class_5764 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl; field_28339 h field_28339 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;I)V + p 2 axolotl + p 3 maxYRotFromCenter +c net/minecraft/world/entity/animal/axolotl/Axolotl$AxolotlMoveControl cgq$c net/minecraft/class_5762$class_5765 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl; axolotl l field_28340 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V + p 1 axolotl +c net/minecraft/world/entity/animal/axolotl/Axolotl$Variant cgq$d net/minecraft/class_5762$class_5767 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; LUCY a field_28341 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; WILD b field_28342 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; GOLD c field_28343 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; CYAN d field_28344 + f Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; BLUE e field_28345 + f Lcom/mojang/serialization/Codec; CODEC f field_41585 + f Ljava/util/function/IntFunction; BY_ID g field_28346 + f I id h field_28347 + f Ljava/lang/String; name i field_28348 + f Z common j field_28349 + f [Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; $VALUES k field_28350 + m ()I getId a method_33233 + m (I)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; byId a method_47928 + p 0 id + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getCommonSpawnVariant a method_33235 + p 0 random + m (Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getSpawnVariant a method_33236 + p 0 random + p 1 common + m (ZLnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant;)Z method_33237 a method_33237 + m ()Ljava/lang/String; getName b method_33238 + m (I)[Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; method_33234 b method_33234 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; getRareSpawnVariant b method_33240 + p 0 random + m ()[Lnet/minecraft/world/entity/animal/axolotl/Axolotl$Variant; $values d method_36644 + m (Ljava/lang/String;IILjava/lang/String;Z)V + p 3 id + p 4 name + p 5 common + m ()V +c net/minecraft/world/entity/animal/axolotl/AxolotlAi cgr net/minecraft/class_5768 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE a field_28351 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE b field_30394 + f F SPEED_MULTIPLIER_ON_LAND c field_30395 + f F SPEED_MULTIPLIER_WHEN_IDLING_IN_WATER d field_30396 + f F SPEED_MULTIPLIER_WHEN_CHASING_IN_WATER e field_30397 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT_IN_WATER f field_30398 + m ()Ljava/util/function/Predicate; getTemptations a method_33241 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canSetWalkTargetFromLookTarget a method_37457 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_33243 + p 0 brain + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V updateActivity a method_33244 + p 0 axolotl + m (Lnet/minecraft/world/item/ItemStack;)Z method_58387 a method_58387 + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifierChasing b method_33242 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initPlayDeadActivity b method_33246 + p 0 brain + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Ljava/util/Optional; findNearestValidAttackTarget b method_33247 + p 0 axolotl + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifierFollowingAdult c method_33245 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity c method_33249 + p 0 brain + m (Lnet/minecraft/world/entity/LivingEntity;)F getSpeedModifier d method_33248 + p 0 entity + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity d method_33251 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity e method_33252 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/axolotl/PlayDead cgs net/minecraft/class_5769 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Z checkExtraStartConditions a method_33253 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;J)Z canStillUse a method_33254 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/axolotl/Axolotl;J)V start b method_33255 + m ()V +c net/minecraft/world/entity/animal/axolotl/ValidatePlayDead cgt net/minecraft/class_5770 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47268 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47269 a method_47269 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47270 a method_47270 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47271 a method_47271 + m ()V +c net/minecraft/world/entity/animal/axolotl/package-info cgu net/minecraft/class_6052 +c net/minecraft/world/entity/animal/camel/Camel cgv net/minecraft/class_7689 + f F RUNNING_SPEED_BONUS cD field_40146 + f F DASH_VERTICAL_MOMENTUM cE field_40147 + f F DASH_HORIZONTAL_MOMENTUM cF field_40148 + f I DASH_MINIMUM_DURATION_TICKS cG field_43388 + f I SITDOWN_DURATION_TICKS cH field_40149 + f I STANDUP_DURATION_TICKS cI field_40133 + f I IDLE_MINIMAL_DURATION_TICKS cJ field_40134 + f F SITTING_HEIGHT_DIFFERENCE cK field_40135 + f Lnet/minecraft/world/entity/EntityDimensions; SITTING_DIMENSIONS cL field_40136 + f I dashCooldown cM field_40137 + f I idleAnimationTimeout cN field_40138 + f F BABY_SCALE cc field_45127 + f I DASH_COOLDOWN_TICKS cd field_40132 + f I MAX_HEAD_Y_ROT ce field_41764 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DASH cg field_40139 + f Lnet/minecraft/network/syncher/EntityDataAccessor; LAST_POSE_CHANGE_TICK ch field_40140 + f Lnet/minecraft/world/entity/AnimationState; sitAnimationState ci field_40142 + f Lnet/minecraft/world/entity/AnimationState; sitPoseAnimationState cj field_40734 + f Lnet/minecraft/world/entity/AnimationState; sitUpAnimationState ck field_40143 + f Lnet/minecraft/world/entity/AnimationState; idleAnimationState cl field_40144 + f Lnet/minecraft/world/entity/AnimationState; dashAnimationState cm field_40145 + m (J)V resetLastPoseChangeTick a method_45344 + p 1 lastPoseChangeTick + m (ZFLnet/minecraft/world/entity/EntityDimensions;F)D getBodyAnchorAnimationYOffset a method_45346 + p 1 firstPassenger + p 2 partialTick + p 3 dimensions + p 4 scale + m (J)V resetLastPoseChangeTickToFullStand b method_48160 + p 1 lastPoseChangedTick + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/camel/Camel; getBreedOffspring b method_45347 + p 1 level + p 2 otherParent + m ()V setupAnimationStates gV method_45356 + m ()Z isVisuallySittingDown gW method_46398 + m ()Z canCamelChangePose gk method_52548 + m ()Z isCamelSitting gn method_45350 + m ()Z isCamelVisuallySitting go method_48573 + m ()Z isInPoseTransition gu method_45351 + m ()V sitDown gv method_45352 + m ()V standUp gw method_45353 + m ()V standUpInstantly gx method_45354 + m ()J getPoseTime gy method_45355 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_45360 + m ()Z refuseToMove t method_45357 + m ()Z isDashing x method_45361 + m (Z)V setDashing x method_45362 + p 1 dashing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/camel/Camel$CamelBodyRotationControl cgv$a net/minecraft/class_7689$class_7690 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_40151 a field_40151 + m (Lnet/minecraft/world/entity/animal/camel/Camel;Lnet/minecraft/world/entity/animal/camel/Camel;)V + p 2 camel +c net/minecraft/world/entity/animal/camel/Camel$CamelLookControl cgv$b net/minecraft/class_7689$class_8784 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_46091 h field_46091 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V +c net/minecraft/world/entity/animal/camel/Camel$CamelMoveControl cgv$c net/minecraft/class_7689$class_8196 + f Lnet/minecraft/world/entity/animal/camel/Camel; field_42978 l field_42978 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V +c net/minecraft/world/entity/animal/camel/CamelAi cgw net/minecraft/class_7691 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_40152 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_40153 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_40154 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT d field_40155 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE e field_40156 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE f field_40157 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES g field_40158 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES h field_40159 + m ()Lnet/minecraft/world/entity/ai/Brain$Provider; brainProvider a method_45363 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52549 a method_52549 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_45365 + p 0 brain + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V updateActivity a method_45366 + p 0 camel + m (Lnet/minecraft/world/entity/animal/camel/Camel;Lnet/minecraft/util/RandomSource;)V initMemories a method_45367 + p 0 camel + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58388 a method_58388 + m ()Ljava/util/function/Predicate; getTemptations b method_45368 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_45364 b method_45364 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_45369 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_45370 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/camel/CamelAi$CamelPanic cgw$a net/minecraft/class_7691$class_7692 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;J)V start a method_57003 + m (F)V +c net/minecraft/world/entity/animal/camel/CamelAi$RandomSitting cgw$b net/minecraft/class_7691$class_7693 + f I minimalPoseTicks c field_40160 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;)Z checkExtraStartConditions a method_45371 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/camel/Camel;J)V start a method_45372 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 minimalPoseSeconds +c net/minecraft/world/entity/animal/camel/package-info cgx net/minecraft/class_7694 +c net/minecraft/world/entity/animal/frog/Frog cgy net/minecraft/class_7102 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cc field_37449 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cd field_37450 + f Ljava/lang/String; VARIANT_KEY ce field_38720 + f Lnet/minecraft/world/entity/AnimationState; jumpAnimationState cg field_37451 + f Lnet/minecraft/world/entity/AnimationState; croakAnimationState ch field_37452 + f Lnet/minecraft/world/entity/AnimationState; tongueAnimationState ci field_37453 + f Lnet/minecraft/world/entity/AnimationState; swimIdleAnimationState cj field_37456 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ck field_37457 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TONGUE_TARGET_ID cl field_37458 + f I FROG_FALL_DAMAGE_REDUCTION cm field_37459 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_VARIANT cn field_49988 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_58389 a method_58389 + m (Lnet/minecraft/world/entity/Entity;)V setTongueTarget c method_41352 + p 1 tongueTarget + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkFrogSpawnRules c method_43398 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_41355 + m (Lnet/minecraft/core/Holder;)V setVariant i method_41353 + p 1 variant + m (Lnet/minecraft/world/entity/LivingEntity;)Z canEat j method_41358 + p 0 entity + m ()V eraseTongueTarget s method_41359 + m ()Ljava/util/Optional; getTongueTarget t method_41360 + m ()Lnet/minecraft/core/Holder; getVariant x method_41354 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/frog/Frog$FrogLookControl cgy$a net/minecraft/class_7102$class_7103 + f Lnet/minecraft/world/entity/animal/frog/Frog; field_37460 h field_37460 + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/animal/frog/Frog$FrogNodeEvaluator cgy$b net/minecraft/class_7102$class_7104 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; belowPos l field_37461 + m (Z)V +c net/minecraft/world/entity/animal/frog/Frog$FrogPathNavigation cgy$c net/minecraft/class_7102$class_7105 + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/level/Level;)V + p 1 mob + p 2 level +c net/minecraft/world/entity/animal/frog/FrogAi cgz net/minecraft/class_7107 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_37469 + f F SPEED_MULTIPLIER_WHEN_IDLING b field_37471 + f F SPEED_MULTIPLIER_ON_LAND c field_37472 + f F SPEED_MULTIPLIER_IN_WATER d field_37473 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_LONG_JUMPS e field_37474 + f I MAX_LONG_JUMP_HEIGHT f field_37475 + f I MAX_LONG_JUMP_WIDTH g field_37476 + f F MAX_JUMP_VELOCITY_MULTIPLIER h field_49092 + f F SPEED_MULTIPLIER_WHEN_TEMPTED i field_37478 + m ()Ljava/util/function/Predicate; getTemptations a method_41366 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_41367 a method_41367 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Z isAcceptableLandingSpot a method_45373 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_41368 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)V updateActivity a method_41373 + p 0 frog + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/util/RandomSource;)V initMemories a method_41369 + p 0 frog + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58390 a method_58390 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_41371 b method_41371 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_41372 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Z canAttack b method_41375 + p 0 frog + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_41374 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Lnet/minecraft/sounds/SoundEvent; method_41377 c method_41377 + m (Lnet/minecraft/world/entity/ai/Brain;)V initSwimActivity d method_41376 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41379 d method_41379 + m (Lnet/minecraft/world/entity/ai/Brain;)V initLaySpawnActivity e method_41378 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41381 e method_41381 + m (Lnet/minecraft/world/entity/ai/Brain;)V initJumpActivity f method_41380 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Ljava/util/Optional; method_41383 f method_41383 + m (Lnet/minecraft/world/entity/ai/Brain;)V initTongueActivity g method_41382 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/frog/ShootTongue cha net/minecraft/class_7108 + f I TIME_OUT_DURATION c field_37479 + f I CATCH_ANIMATION_DURATION d field_38414 + f I TONGUE_ANIMATION_DURATION e field_37480 + f I UNREACHABLE_TONGUE_TARGETS_COOLDOWN_DURATION f field_39452 + f I MAX_UNREACHBLE_TONGUE_TARGETS_IN_MEMORY g field_39453 + f F EATING_DISTANCE h field_37481 + f F EATING_MOVEMENT_FACTOR i field_37482 + f I eatAnimationTimer j field_37483 + f I calculatePathCounter k field_37484 + f Lnet/minecraft/sounds/SoundEvent; tongueSound l field_37485 + f Lnet/minecraft/sounds/SoundEvent; eatSound m field_37486 + f Lnet/minecraft/world/phys/Vec3; itemSpawnPos n field_37487 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; state o field_37489 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)Z checkExtraStartConditions a method_41384 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)Z canStillUse a method_41385 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/LivingEntity;)Z canPathfindToTarget a method_44332 + p 1 frog + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;)V eatEntity b method_42667 + p 1 level + p 2 frog + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V start b method_41387 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/frog/Frog;Lnet/minecraft/world/entity/LivingEntity;)V addUnreachableTargetToMemory b method_44333 + p 1 frog + p 2 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V stop c method_41388 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/frog/Frog;J)V tick d method_41389 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 1 tongueSound + p 2 eatSound +c net/minecraft/world/entity/animal/frog/ShootTongue$State cha$a net/minecraft/class_7108$class_7109 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; MOVE_TO_TARGET a field_37492 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; CATCH_ANIMATION b field_38415 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; EAT_ANIMATION c field_37493 + f Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; DONE d field_37494 + f [Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; $VALUES e field_37495 + m ()[Lnet/minecraft/world/entity/animal/frog/ShootTongue$State; $values a method_41390 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/animal/frog/Tadpole chb net/minecraft/class_7110 + f I ticksToBeFrog b field_37496 + f F HITBOX_WIDTH c field_39302 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_37498 + f I age cd field_37499 + f F HITBOX_HEIGHT d field_39303 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_37497 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V feed a method_41391 + p 1 player + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V usePlayerItem b method_41393 + p 1 player + p 2 stack + m (I)V ageUp c method_41392 + p 1 offset + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gm method_41395 + m ()I getAge gn method_41396 + m ()V ageUp go method_41397 + m ()I getTicksLeftUntilAdult gp method_41398 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57306 i method_57306 + m (Lnet/minecraft/world/item/ItemStack;)Z isFood o method_41399 + p 1 stack + m (I)V setAge s method_41394 + p 1 age + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/frog/TadpoleAi chc net/minecraft/class_7111 + f F SPEED_MULTIPLIER_WHEN_PANICKING a field_37500 + f F SPEED_MULTIPLIER_WHEN_IDLING_IN_WATER b field_37502 + f F SPEED_MULTIPLIER_WHEN_TEMPTED c field_39409 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_44204 a method_44204 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_41400 + p 0 brain + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;)V updateActivity a method_41401 + p 0 tadpole + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_41402 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_41403 + p 0 brain + m ()V +c net/minecraft/world/entity/animal/frog/package-info chd net/minecraft/class_7112 +c net/minecraft/world/entity/animal/goat/Goat che net/minecraft/class_6053 + f Lnet/minecraft/world/entity/EntityDimensions; LONG_JUMPING_DIMENSIONS cc field_30399 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cd field_30400 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES ce field_30401 + f I GOAT_FALL_DAMAGE_REDUCTION cg field_30402 + f D GOAT_SCREAMING_CHANCE ch field_30403 + f D UNIHORN_CHANCE ci field_39046 + f I ADULT_ATTACK_DAMAGE cj field_34022 + f I BABY_ATTACK_DAMAGE ck field_34023 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_SCREAMING_GOAT cl field_33486 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HAS_LEFT_HORN cm field_39047 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HAS_RIGHT_HORN cn field_39048 + f Z isLoweringHead co field_33487 + f I lowerHeadTick cp field_33488 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/goat/Goat; getBreedOffspring b method_35177 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGoatSpawnRules c method_38067 + p 0 goat + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z hasLeftHorn gk method_43538 + m ()Z hasRightHorn gl method_43539 + m ()Z dropHorn gm method_43540 + m ()V addHorns gn method_43541 + m ()V removeHorns go method_43542 + m ()Z isScreamingGoat gu method_35178 + m ()F getRammingXHeadRot gv method_36283 + m ()Lnet/minecraft/world/item/ItemStack; createHorn s method_43690 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_35179 + m ()Lnet/minecraft/sounds/SoundEvent; getMilkingSound x method_35180 + m (Z)V setScreamingGoat x method_36284 + p 1 isScreamingGoat + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/goat/GoatAi chf net/minecraft/class_6054 + f I RAM_PREPARE_TIME a field_33490 + f I RAM_MAX_DISTANCE b field_33491 + f I MAX_LONG_JUMP_HEIGHT c field_33492 + f I MAX_LONG_JUMP_WIDTH d field_33493 + f F MAX_JUMP_VELOCITY_MULTIPLIER e field_49093 + f I RAM_MIN_DISTANCE f field_33495 + f F ADULT_RAM_KNOCKBACK_FORCE g field_33496 + f F BABY_RAM_KNOCKBACK_FORCE h field_33497 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE i field_30407 + f F SPEED_MULTIPLIER_WHEN_IDLING j field_30406 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT k field_30408 + f F SPEED_MULTIPLIER_WHEN_TEMPTED l field_30409 + f F SPEED_MULTIPLIER_WHEN_PANICKING m field_30410 + f F SPEED_MULTIPLIER_WHEN_PREPARING_TO_RAM n field_33498 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_LONG_JUMPS o field_30411 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_RAMS p field_33499 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_RAMS_SCREAMER q field_33693 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; RAM_TARGET_CONDITIONS r field_33500 + f F SPEED_MULTIPLIER_WHEN_RAMMING s field_33501 + m ()Ljava/util/function/Predicate; getTemptations a method_35181 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_35182 a method_35182 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_35183 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)V updateActivity a method_35186 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;Lnet/minecraft/util/RandomSource;)V initMemories a method_35184 + p 0 goat + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Z method_58391 a method_58391 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_36285 b method_36285 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_35185 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36287 b method_36287 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_35187 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)I method_36553 c method_36553 + m (Lnet/minecraft/world/entity/ai/Brain;)V initLongJumpActivity d method_35188 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_43543 d method_43543 + m (Lnet/minecraft/world/entity/ai/Brain;)V initRamActivity e method_36288 + p 0 brain + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36286 e method_36286 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)D method_36289 f method_36289 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/util/valueproviders/UniformInt; method_36290 g method_36290 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/sounds/SoundEvent; method_36291 h method_36291 + m ()V + m ()V +c net/minecraft/world/entity/animal/goat/package-info chg net/minecraft/class_6055 +c net/minecraft/world/entity/animal/horse/AbstractChestedHorse chh net/minecraft/class_1492 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_CHEST cc field_6943 + f Lnet/minecraft/world/entity/EntityDimensions; babyDimensions cd field_47806 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V equipChest d method_45374 + p 1 player + p 2 chestStack + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createBaseChestedHorseAttributes s method_26898 + m ()Z hasChest t method_6703 + m ()V playChestEquipsSound x method_6705 + m (Z)V setChest x method_6704 + p 1 chested + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/AbstractChestedHorse$1 chh$1 net/minecraft/class_1492$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse; field_27867 b field_27867 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)V +c net/minecraft/world/entity/animal/horse/AbstractHorse chi net/minecraft/class_1496 + f Z canGallop cA field_6964 + f I gallopSoundCounter cB field_6975 + c Used to determine the sound that the horse should make when it steps + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FLAGS cD field_6959 + f I FLAG_TAME cE field_30419 + f I FLAG_SADDLE cF field_30420 + f I FLAG_BRED cG field_30421 + f I FLAG_EATING cH field_30422 + f I FLAG_STANDING cI field_30423 + f I FLAG_OPEN_MOUTH cJ field_30424 + f I eatingCounter cK field_6971 + f I mouthCounter cL field_6973 + f I standCounter cM field_6970 + f F eatAnim cN field_6969 + f F eatAnimO cO field_6966 + f F standAnim cP field_6967 + f F standAnimO cQ field_6963 + f F mouthAnim cR field_6965 + f F mouthAnimO cS field_6961 + f Ljava/util/UUID; owner cT field_42462 + f Lnet/minecraft/world/Container; bodyArmorAccess cU field_48830 + f F MIN_MOVEMENT_SPEED cc field_42641 + f F MAX_MOVEMENT_SPEED cd field_42642 + f F MIN_JUMP_STRENGTH ce field_42643 + f F MAX_JUMP_STRENGTH cg field_42644 + f F MIN_HEALTH ch field_42645 + f F MAX_HEALTH ci field_42646 + f F BACKWARDS_MOVE_SPEED_FACTOR cj field_42979 + f F SIDEWAYS_MOVE_SPEED_FACTOR ck field_42980 + f Ljava/util/function/Predicate; PARENT_HORSE_SELECTOR cl field_6956 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; MOMMY_TARGETING cm field_18118 + f I EQUIPMENT_SLOT_OFFSET cn field_30413 + f I CHEST_SLOT_OFFSET co field_30414 + f I INVENTORY_SLOT_OFFSET cp field_30415 + f D BREEDING_CROSS_FACTOR cq field_42647 + f I INV_SLOT_SADDLE cr field_30416 + f I INV_BASE_COUNT cs field_30418 + f I tailCounter ct field_6957 + f I sprintCounter cu field_6958 + f Z isJumping cv field_6968 + f Lnet/minecraft/world/SimpleContainer; inventory cw field_6962 + f I temper cx field_6955 + c The higher this value, the more likely the horse is to be tamed next time a player rides it. + f F playerJumpPendingScale cy field_6976 + f Z allowStandSliding cz field_6960 + m (Z)V setBred A method_6751 + p 1 breeding + m (Z)V setEating B method_6740 + p 1 eating + m (Z)V setStanding C method_6737 + p 1 standing + m (Z)V spawnTamingParticles D method_6760 + c Spawns particles for the horse entity. + p 1 tamed + c whether to spawn hearts or smoke. + m (F)F getEatAnim H method_6739 + p 1 partialTick + m (F)F getStandAnim I method_6767 + p 1 partialTick + m (F)F getMouthAnim J method_6772 + p 1 partialTick + m (DDDDLnet/minecraft/util/RandomSource;)D createOffspringAttribute a method_49123 + p 0 value1 + p 2 value2 + p 4 min + p 6 max + p 8 random + m (Lnet/minecraft/util/RandomSource;)V randomizeAttributes a method_6001 + p 1 random + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V setOffspringAttributes a method_6743 + p 1 parent + p 2 child + m (Lnet/minecraft/world/entity/AgeableMob;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lnet/minecraft/core/Holder;DD)V setOffspringAttribute a method_49124 + p 1 parent + p 2 child + p 3 attribute + p 4 min + p 6 max + m (Lnet/minecraft/world/entity/player/Player;)V doPlayerRide a method_6726 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Z handleEating a method_6742 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/block/SoundType;)V playGallopSound a method_6761 + p 1 soundType + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; getDismountLocationInDirection a method_27930 + p 1 direction + p 2 passenger + m (Ljava/util/function/DoubleSupplier;)D generateJumpStrength a method_6774 + p 0 supplier + m (Ljava/util/function/IntUnaryOperator;)F generateMaxHealth a method_6754 + p 0 operator + m ()I getInventoryColumns af_ method_6702 + m (FLnet/minecraft/world/phys/Vec3;)V executeRidersJump b method_45343 + p 1 playerJumpPendingScale + p 2 travelVector + m (Lnet/minecraft/world/Container;)Z hasInventoryChanged b method_33338 + p 1 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V equipBodyArmor b method_45375 + p 1 player + p 2 stack + m (Lnet/minecraft/world/level/block/SoundType;)Z isWoodSoundType b method_49996 + p 1 soundType + m (Ljava/util/UUID;)V setOwnerUUID b method_6732 + p 1 uuid + m (Ljava/util/function/DoubleSupplier;)D generateSpeed b method_6728 + p 0 supplier + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/InteractionResult; fedFood c method_30009 + p 1 player + p 2 stack + m (IZ)V setFlag d method_6769 + p 1 flagId + p 2 value + m (Lnet/minecraft/world/entity/player/Player;)Z tameWithName g method_6752 + p 1 player + m ()V addBehaviourGoals gA method_6764 + m ()Z isJumping gB method_6763 + m ()Z isEating gC method_6724 + m ()Z isStanding gD method_6736 + m ()Z isBred gE method_6744 + m ()I getTemper gF method_6729 + m ()I getInventorySize gG method_6750 + m ()V createInventory gH method_6721 + m ()V syncSaddleToClients gI method_56679 + m ()Lnet/minecraft/sounds/SoundEvent; getAngrySound gJ method_6747 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createBaseHorseAttributes gK method_26899 + m ()I getMaxTemper gL method_6755 + m ()V followMommy gM method_6746 + m ()Z canEatGrass gN method_6762 + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientStandSound gO method_45376 + m ()V standIfPossible gP method_6748 + m ()V makeMad gQ method_6757 + m ()V playJumpSound gR method_6723 + m ()Z canParent gS method_6734 + c Returns {@code true} if the horse entity ready to mate. (no rider, not riding, tame, adult, not steril...) + m ()I getAmbientStandInterval gT method_45377 + m ()Lnet/minecraft/world/Container; getBodyArmorAccess gU method_56680 + m ()Z canPerformRearing gl method_45349 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound gm method_28368 + m ()D method_49125 gn method_49125 + m ()D method_49126 go method_49126 + m ()D method_49127 gu method_49127 + m ()D method_49128 gv method_49128 + m ()Z isTamed gz method_6727 + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec2; getRiddenRotation j method_49489 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6741 k method_6741 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58392 n method_58392 + m ()V eating s method_6733 + m ()V moveTail t method_6759 + m (I)Z getFlag t method_6730 + p 1 flagId + m (I)V setTemper u method_6749 + p 1 temper + m (I)I modifyTemper v method_6745 + p 1 addedTemper + m (I)I getInventorySize w method_60977 + p 0 columns + m ()V openMouth x method_6738 + m (I)I method_49129 x method_49129 + m (I)I method_49130 y method_49130 + m (Z)V setTamed y method_6766 + p 1 tamed + m (Z)V setIsJumping z method_6758 + p 1 jumping + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/AbstractHorse$1 chi$1 net/minecraft/class_1496$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; field_48831 b field_48831 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/entity/animal/horse/AbstractHorse$2 chi$2 net/minecraft/class_1496$2 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; field_48832 b field_48832 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/entity/animal/horse/Donkey chj net/minecraft/class_1495 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/Horse chk net/minecraft/class_1498 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE_VARIANT cc field_6990 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cd field_47807 + m (Lnet/minecraft/world/entity/animal/horse/Variant;)V setVariant a method_47873 + p 1 variant + m (Lnet/minecraft/world/entity/animal/horse/Variant;Lnet/minecraft/world/entity/animal/horse/Markings;)V setVariantAndMarkings a method_27076 + p 1 variant + p 2 marking + m ()Lnet/minecraft/world/entity/animal/horse/Variant; getVariant s method_27077 + m ()Lnet/minecraft/world/entity/animal/horse/Markings; getMarkings t method_27078 + m ()I getTypeVariant x method_6788 + m (I)V setTypeVariant x method_6783 + p 1 typeVariant + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/Horse$HorseGroupData chk$a net/minecraft/class_1498$class_1499 + f Lnet/minecraft/world/entity/animal/horse/Variant; variant a field_6994 + m (Lnet/minecraft/world/entity/animal/horse/Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/horse/Llama chl net/minecraft/class_1501 + f I MAX_STRENGTH cc field_30425 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STRENGTH_ID cd field_6998 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VARIANT_ID ce field_6996 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cg field_47808 + f Z didSpit ch field_6999 + f Lnet/minecraft/world/entity/animal/horse/Llama; caravanHead ci field_7000 + f Lnet/minecraft/world/entity/animal/horse/Llama; caravanTail cj field_6997 + m (Z)V setDidSpit E method_6808 + p 1 didSpit + m (Lnet/minecraft/world/entity/animal/horse/Llama$Variant;)V setVariant a method_47874 + p 1 variant + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V joinCaravan a method_6791 + p 1 caravanHead + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/animal/horse/Llama; getBreedOffspring b method_6804 + p 1 level + p 2 otherParent + m (Lnet/minecraft/util/RandomSource;)V setRandomStrength b method_6796 + p 1 random + m ()Z hasCaravanTail gV method_6793 + m ()Z inCaravan gW method_6805 + m ()Lnet/minecraft/world/entity/animal/horse/Llama; getCaravanHead gX method_6806 + m ()Z isTraderLlama gn method_6807 + m ()I getStrength go method_6803 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26900 + m ()Lnet/minecraft/world/entity/animal/horse/Llama$Variant; getVariant gv method_6809 + m ()Lnet/minecraft/world/item/DyeColor; getSwag gw method_6800 + m ()Lnet/minecraft/world/entity/animal/horse/Llama; makeNewLlama gx method_18004 + m ()V leaveCaravan gy method_6797 + m (Lnet/minecraft/world/entity/LivingEntity;)V spit k method_6792 + p 1 target + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/DyeColor; getDyeColor n method_6794 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_58393 p method_58393 + m (I)V setStrength x method_6802 + p 1 strength + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/Llama$LlamaAttackWolfGoal chl$a net/minecraft/class_1501$class_1502 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18446 b method_18446 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Llama$LlamaGroupData chl$b net/minecraft/class_1501$class_1503 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; variant a field_7001 + m (Lnet/minecraft/world/entity/animal/horse/Llama$Variant;)V + p 1 variant +c net/minecraft/world/entity/animal/horse/Llama$LlamaHurtByTargetGoal chl$c net/minecraft/class_1501$class_1504 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Llama$Variant chl$d net/minecraft/class_1501$class_7993 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; CREAMY a field_41586 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; WHITE b field_41587 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; BROWN c field_41588 + f Lnet/minecraft/world/entity/animal/horse/Llama$Variant; GRAY d field_41589 + f Lcom/mojang/serialization/Codec; CODEC e field_41590 + f Ljava/util/function/IntFunction; BY_ID f field_41591 + f I id g field_41592 + f Ljava/lang/String; name h field_41593 + f [Lnet/minecraft/world/entity/animal/horse/Llama$Variant; $VALUES i field_41594 + m ()I getId a method_47875 + m (I)Lnet/minecraft/world/entity/animal/horse/Llama$Variant; byId a method_47876 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Llama$Variant; $values b method_47877 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/horse/Markings chm net/minecraft/class_5148 + f Lnet/minecraft/world/entity/animal/horse/Markings; NONE a field_23808 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE b field_23809 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE_FIELD c field_23810 + f Lnet/minecraft/world/entity/animal/horse/Markings; WHITE_DOTS d field_23811 + f Lnet/minecraft/world/entity/animal/horse/Markings; BLACK_DOTS e field_23812 + f Ljava/util/function/IntFunction; BY_ID f field_23813 + f I id g field_23814 + f [Lnet/minecraft/world/entity/animal/horse/Markings; $VALUES h field_23815 + m ()I getId a method_27079 + m (I)Lnet/minecraft/world/entity/animal/horse/Markings; byId a method_27080 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Markings; $values b method_36645 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/horse/Mule chn net/minecraft/class_1500 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/SkeletonHorse cho net/minecraft/class_1506 + f Lnet/minecraft/world/entity/animal/horse/SkeletonTrapGoal; skeletonTrapGoal cc field_7003 + f I TRAP_MAX_LIFE cd field_30427 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS ce field_47809 + f Z isTrap cg field_7005 + f I trapTime ch field_7004 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSkeletonHorseSpawnRules c method_55001 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26901 + m ()Z isTrap t method_6812 + m (Z)V setTrap x method_6813 + p 1 isTrap + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/SkeletonTrapGoal chp net/minecraft/class_1505 + f Lnet/minecraft/world/entity/animal/horse/SkeletonHorse; horse a field_7002 + m (Lnet/minecraft/world/DifficultyInstance;)Lnet/minecraft/world/entity/animal/horse/AbstractHorse; createHorse a method_6810 + p 1 difficulty + m (Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Lnet/minecraft/world/entity/monster/Skeleton; createSkeleton a method_6811 + p 1 difficulty + p 2 horse + m (Lnet/minecraft/world/entity/monster/Skeleton;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/DifficultyInstance;)V enchant a method_59939 + p 1 skeleton + p 2 slot + p 3 difficulty + m (Lnet/minecraft/world/entity/animal/horse/SkeletonHorse;)V + p 1 horse +c net/minecraft/world/entity/animal/horse/TraderLlama chq net/minecraft/class_3986 + f I despawnDelay cc field_17716 + m ()V maybeDespawn gZ method_20501 + m ()Z canDespawn ha method_20502 + m ()Z isLeashedToWanderingTrader hb method_20503 + m ()Z isLeashedToSomethingOtherThanTheWanderingTrader hc method_20504 + m (I)V setDespawnDelay x method_35189 + p 1 despawnDelay + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/animal/horse/TraderLlama$TraderLlamaDefendWanderingTraderGoal chq$a net/minecraft/class_3986$class_3987 + f Lnet/minecraft/world/entity/animal/horse/Llama; llama a field_17718 + f Lnet/minecraft/world/entity/LivingEntity; ownerLastHurtBy b field_17719 + f I timestamp c field_17720 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 llama +c net/minecraft/world/entity/animal/horse/Variant chr net/minecraft/class_5149 + f Lnet/minecraft/world/entity/animal/horse/Variant; WHITE a field_23816 + f Lnet/minecraft/world/entity/animal/horse/Variant; CREAMY b field_23817 + f Lnet/minecraft/world/entity/animal/horse/Variant; CHESTNUT c field_23818 + f Lnet/minecraft/world/entity/animal/horse/Variant; BROWN d field_23819 + f Lnet/minecraft/world/entity/animal/horse/Variant; BLACK e field_23820 + f Lnet/minecraft/world/entity/animal/horse/Variant; GRAY f field_23821 + f Lnet/minecraft/world/entity/animal/horse/Variant; DARK_BROWN g field_23822 + f Lcom/mojang/serialization/Codec; CODEC h field_41595 + f Ljava/util/function/IntFunction; BY_ID i field_23823 + f I id j field_23824 + f Ljava/lang/String; name k field_41596 + f [Lnet/minecraft/world/entity/animal/horse/Variant; $VALUES l field_23825 + m ()I getId a method_27082 + m (I)Lnet/minecraft/world/entity/animal/horse/Variant; byId a method_27083 + p 0 id + m ()[Lnet/minecraft/world/entity/animal/horse/Variant; $values b method_36646 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/entity/animal/horse/ZombieHorse chs net/minecraft/class_1507 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cc field_47810 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkZombieHorseSpawnRules c method_55002 + p 0 animal + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26902 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/horse/package-info cht net/minecraft/class_6056 +c net/minecraft/world/entity/animal/package-info chu net/minecraft/class_6057 +c net/minecraft/world/entity/animal/sniffer/Sniffer chv net/minecraft/class_8153 + f Lnet/minecraft/world/entity/AnimationState; feelingHappyAnimationState cc field_42650 + f Lnet/minecraft/world/entity/AnimationState; scentingAnimationState cd field_42651 + f Lnet/minecraft/world/entity/AnimationState; sniffingAnimationState ce field_42652 + f Lnet/minecraft/world/entity/AnimationState; diggingAnimationState cg field_42654 + f Lnet/minecraft/world/entity/AnimationState; risingAnimationState ch field_42655 + f I DIGGING_PARTICLES_DELAY_TICKS ci field_42656 + f I DIGGING_PARTICLES_DURATION_TICKS cj field_42657 + f I DIGGING_PARTICLES_AMOUNT ck field_42658 + f I DIGGING_DROP_SEED_OFFSET_TICKS cl field_42659 + f I SNIFFER_BABY_AGE_TICKS cm field_42661 + f F DIGGING_BB_HEIGHT_OFFSET cn field_44785 + f Lnet/minecraft/world/entity/EntityDimensions; DIGGING_DIMENSIONS co field_44786 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STATE cp field_42662 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DROP_SEED_AT_TICK cq field_42663 + m (Lnet/minecraft/world/entity/AnimationState;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; emitDiggingParticles a method_49131 + p 1 animationState + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; transitionTo a method_49132 + p 1 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/GlobalPos;)Z method_51154 a method_51154 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; setState b method_49133 + p 1 state + m ()Ljava/util/stream/Stream; getExploredPositions gA method_49143 + m ()V playSearchingSound gB method_49144 + m ()Z canSniff gk method_51155 + m ()Z canPlayDiggingSound gl method_49150 + m ()Ljava/util/Optional; calculateDigPosition gm method_49134 + m ()Z canDig gn method_49135 + m ()Lnet/minecraft/core/BlockPos; getHeadBlock go method_51508 + m ()Lnet/minecraft/world/phys/Vec3; getHeadPosition gu method_49137 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; getState gv method_49138 + m ()V resetAnimations gw method_49139 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onScentingStart gx method_51156 + m ()Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onDiggingStart gy method_49141 + m ()V dropSeed gz method_49142 + m (Lnet/minecraft/core/BlockPos;)Z canDig h method_49140 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; storeExploredPosition i method_49145 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z method_51157 j method_51157 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_49146 + m ()Z isSearching t method_51301 + m (I)Lnet/minecraft/world/phys/Vec3; method_49148 t method_49148 + m ()Z isTempted x method_51158 + m (Z)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; onDiggingComplete x method_49149 + p 1 storeExploredPosition + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/animal/sniffer/Sniffer$State chv$a net/minecraft/class_8153$class_8154 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; IDLING a field_42665 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; FEELING_HAPPY b field_42666 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SCENTING c field_42667 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SNIFFING d field_42668 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; SEARCHING e field_42669 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; DIGGING f field_42670 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; RISING g field_42671 + f Ljava/util/function/IntFunction; BY_ID h field_48340 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48341 + f I id j field_48342 + f [Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; $VALUES k field_42672 + m ()I id a method_56085 + m ()[Lnet/minecraft/world/entity/animal/sniffer/Sniffer$State; $values b method_49151 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi chw net/minecraft/class_8155 + f Ljava/util/List; SENSOR_TYPES a field_42673 + f Ljava/util/List; MEMORY_TYPES b field_42674 + f Lorg/slf4j/Logger; LOGGER c field_42675 + f I MAX_LOOK_DISTANCE d field_42676 + f I SNIFFING_COOLDOWN_TICKS e field_42677 + f F SPEED_MULTIPLIER_WHEN_IDLING f field_42678 + f F SPEED_MULTIPLIER_WHEN_PANICKING g field_42679 + f F SPEED_MULTIPLIER_WHEN_SNIFFING h field_42680 + f F SPEED_MULTIPLIER_WHEN_TEMPTED i field_44476 + m ()Ljava/util/function/Predicate; getTemptations a method_51159 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Double; method_52174 a method_52174 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_49152 + p 0 brain + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)V updateActivity a method_49153 + p 0 sniffer + m (Lnet/minecraft/world/item/ItemStack;)Z method_58394 a method_58394 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Float; method_51160 b method_51160 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_49154 + p 0 brain + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Lnet/minecraft/world/entity/animal/sniffer/Sniffer; resetSniffing b method_51161 + p 0 sniffer + m (Lnet/minecraft/world/entity/ai/Brain;)V initSniffingActivity c method_49155 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initDigActivity d method_49156 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity e method_49157 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$1 chw$1 net/minecraft/class_8155$1 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start a method_57004 + m (F)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$2 chw$2 net/minecraft/class_8155$2 + m (Lnet/minecraft/world/entity/EntityType;)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$3 chw$3 net/minecraft/class_8155$3 + m (Ljava/util/function/Function;Ljava/util/function/Function;)V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Digging chw$a net/minecraft/class_8155$class_8156 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49158 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49159 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49160 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49161 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$FeelingHappy chw$b net/minecraft/class_8155$class_8157 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49162 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49163 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49164 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$FinishedDigging chw$c net/minecraft/class_8155$class_8158 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49165 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49166 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49167 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49168 + p 1 level + p 2 entity + p 3 gameTime + m (I)V + p 1 duration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Scenting chw$d net/minecraft/class_8155$class_8159 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_51162 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49169 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49170 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49171 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Searching chw$e net/minecraft/class_8155$class_8160 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49172 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49173 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49174 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49175 + m ()V +c net/minecraft/world/entity/animal/sniffer/SnifferAi$Sniffing chw$f net/minecraft/class_8155$class_8161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Z checkExtraStartConditions a method_49176 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)Z canStillUse a method_49177 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;Lnet/minecraft/core/BlockPos;)V method_49178 a method_49178 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V start b method_49179 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/animal/sniffer/Sniffer;J)V stop c method_49180 + p 1 level + p 2 entity + p 3 gameTime + m (II)V + p 1 minDuration + p 2 maxDuration +c net/minecraft/world/entity/animal/sniffer/package-info chx net/minecraft/class_9235 +c net/minecraft/world/entity/boss/EnderDragonPart chy net/minecraft/class_1508 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; parentMob b field_7007 + f Ljava/lang/String; name c field_7006 + f Lnet/minecraft/world/entity/EntityDimensions; size d field_18119 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;Ljava/lang/String;FF)V + p 1 parentMob + p 2 name + p 3 width + p 4 height +c net/minecraft/world/entity/boss/enderdragon/EndCrystal chz net/minecraft/class_1511 + f I time b field_7034 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BEAM_TARGET c field_7033 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOW_BOTTOM d field_7035 + m (Lnet/minecraft/world/damagesource/DamageSource;)V onDestroyedBy a method_6835 + p 1 source + m (Lnet/minecraft/core/BlockPos;)V setBeamTarget a method_6837 + p 1 beamTarget + m (Z)V setShowBottom a method_6839 + p 1 showBottom + m ()Lnet/minecraft/core/BlockPos; getBeamTarget p method_6838 + m ()Z showsBottom s method_6836 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/boss/enderdragon/EnderDragon cia net/minecraft/class_1510 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PHASE b field_7013 + f F sittingDamageReceived cA field_7029 + f [Lnet/minecraft/world/level/pathfinder/Node; nodes cB field_7012 + f [I nodeAdjacency cD field_7025 + f Lnet/minecraft/world/level/pathfinder/BinaryHeap; openSet cE field_7008 + f [[D positions c field_7026 + f F oFlapTime cb field_7019 + f F flapTime cc field_7030 + f Z inWall cd field_7027 + f I dragonDeathTime ce field_7031 + f F yRotA cf field_20865 + f Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal; nearestCrystal cg field_7024 + f Lorg/slf4j/Logger; LOGGER ch field_7021 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; CRYSTAL_DESTROY_TARGETING ci field_18120 + f I GROWL_INTERVAL_MIN cj field_30428 + f I GROWL_INTERVAL_MAX ck field_30429 + f F SITTING_ALLOWED_DAMAGE_PERCENTAGE cl field_30430 + f Ljava/lang/String; DRAGON_DEATH_TIME_KEY cm field_33910 + f Ljava/lang/String; DRAGON_PHASE_KEY cn field_33911 + f [Lnet/minecraft/world/entity/boss/EnderDragonPart; subEntities co field_7032 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; neck cp field_7011 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; body cq field_7023 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail1 cr field_7020 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail2 cs field_7009 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; tail3 ct field_7022 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; wing1 cu field_7015 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; wing2 cv field_7014 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight; dragonFight cw field_7016 + f Lnet/minecraft/core/BlockPos; fightOrigin cx field_44875 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager; phaseManager cy field_7028 + f I growlTime cz field_7018 + f I posPointer d field_7010 + f Lnet/minecraft/world/entity/boss/EnderDragonPart; head e field_7017 + m (F)Lnet/minecraft/world/phys/Vec3; getHeadLookVector H method_6834 + p 1 partialTicks + m (IF)[D getLatencyPos a method_6817 + c Returns a double[3] array with movement offsets, used to calculate trailing tail/neck positions. [0] = yaw offset, [1] = y offset, [2] = unused, always 0. Parameters: buffer index offset, partial ticks. + p 1 bufferIndexOffset + p 2 partialTicks + m (IILnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_6833 + c Find and return a path among the circles described by pathPoints, or null if the shortest path would just be directly between the start and finish with no intermediate points.\n\nStarting with pathPoint[startIdx], it searches the neighboring points (and their neighboring points, and so on) until it reaches pathPoint[finishIdx], at which point it calls makePath to seal the deal. + p 1 startIndex + p 2 finishIndex + p 3 andThen + m (I[D[D)F getHeadPartYOffset a method_6823 + p 1 partIndex + p 2 spineEndOffsets + p 3 headPartOffsets + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)V knockBack a method_6825 + p 1 level + p 2 targets + m (Lnet/minecraft/world/entity/boss/EnderDragonPart;DDD)V tickPart a method_22863 + p 1 part + p 2 offsetX + p 4 offsetY + p 6 offsetZ + m (Lnet/minecraft/world/entity/boss/EnderDragonPart;Lnet/minecraft/world/damagesource/DamageSource;F)Z hurt a method_6816 + p 1 part + p 2 source + p 3 damage + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/damagesource/DamageSource;)V onCrystalDestroyed a method_6828 + p 1 crystal + p 2 pos + p 3 damageSource + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight;)V setDragonFight a method_51852 + p 1 dragonFight + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Path; reconstructPath a method_6826 + c Create and return a new PathEntity defining a path from the start to the finish, using the connections already made by the caller, findPath. + p 1 start + p 2 finish + m (Lnet/minecraft/world/phys/AABB;)Z checkWalls b method_6821 + c Destroys all blocks that aren't associated with 'The End' inside the given bounding box. + p 1 area + m (Ljava/util/List;)V hurt b method_6827 + c Attacks all entities inside this list, dealing 5 hearts of damage. + p 1 entities + m (Lnet/minecraft/core/BlockPos;)V setFightOrigin c method_51853 + p 1 fightOrigin + m (Lnet/minecraft/world/damagesource/DamageSource;F)Z reallyHurt g method_6819 + c Provides a way to cause damage to an ender dragon. + p 1 damageSource + p 2 amount + m ()[Lnet/minecraft/world/entity/boss/EnderDragonPart; getSubEntities gg method_5690 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager; getPhaseManager gh method_6831 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight; getDragonFight gi method_6829 + m ()F getHeadYOffset gj method_6820 + m ()V checkCrystals gk method_6830 + c Updates the state of the dragon's current endercrystal. + m (D)F rotWrap i method_6832 + c Simplifies the value of a number by adding/subtracting 180 to the point that the number is between -180 and 180. + p 1 angle + m (DDD)I findClosestNode q method_6822 + c Returns the index into pathPoints of the nearest PathPoint. + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/core/BlockPos; getFightOrigin s method_51854 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26903 + m ()I findClosestNode x method_6818 + c Generates values for the fields pathPoints, and neighbors, and then returns the nearest pathPoint to the specified position. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/boss/enderdragon/package-info cib net/minecraft/class_6058 +c net/minecraft/world/entity/boss/enderdragon/phases/AbstractDragonPhaseInstance cic net/minecraft/class_1512 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; dragon a field_7036 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/AbstractDragonSittingPhase cid net/minecraft/class_1514 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonChargePlayerPhase cie net/minecraft/class_1513 + f Lorg/slf4j/Logger; LOGGER b field_7039 + f I CHARGE_RECOVERY_TIME c field_30431 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7038 + f I timeSinceCharge e field_7037 + m (Lnet/minecraft/world/phys/Vec3;)V setTarget a method_6840 + p 1 targetLocation + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonDeathPhase cif net/minecraft/class_1515 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7041 + f I time c field_7040 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonHoldingPatternPhase cig net/minecraft/class_1517 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; NEW_TARGET_TARGETING b field_18121 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7043 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7045 + f Z clockwise e field_7044 + m (Lnet/minecraft/world/entity/player/Player;)V strafePlayer a method_6843 + p 1 player + m ()V findNewTarget j method_6841 + m ()V navigateToNextPathNode k method_6842 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonHoverPhase cih net/minecraft/class_1516 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7042 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonLandingApproachPhase cii net/minecraft/class_1519 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; NEAR_EGG_TARGETING b field_18122 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7047 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7048 + m ()V findNewTarget j method_6844 + m ()V navigateToNextPathNode k method_6845 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonLandingPhase cij net/minecraft/class_1518 + f Lnet/minecraft/world/phys/Vec3; targetLocation b field_7046 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance cik net/minecraft/class_1521 + m ()Z isSitting a method_6848 + m (Lnet/minecraft/world/damagesource/DamageSource;F)F onHurt a method_6852 + p 1 damageSource + p 2 amount + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/entity/player/Player;)V onCrystalDestroyed a method_6850 + p 1 crystal + p 2 pos + p 3 damageSource + p 4 player + m ()V doClientTick b method_6853 + c Generates particle effects appropriate to the phase (or sometimes sounds).\nCalled by dragon's onLivingUpdate. Only used when worldObj.isRemote. + m ()V doServerTick c method_6855 + c Gives the phase a chance to update its status.\nCalled by dragon's onLivingUpdate. Only used when !worldObj.isRemote. + m ()V begin d method_6856 + c Called when this phase is set to active + m ()V end e method_6854 + m ()F getFlySpeed f method_6846 + c Returns the maximum amount dragon may rise or fall during this phase + m ()Lnet/minecraft/world/phys/Vec3; getFlyTargetLocation g method_6851 + c Returns the location the dragon is flying toward + m ()F getTurnSpeed h method_6847 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; getPhase i method_6849 +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingAttackingPhase cil net/minecraft/class_1520 + f I ROAR_DURATION b field_30432 + f I attackingTicks c field_7049 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingFlamingPhase cim net/minecraft/class_1523 + f I FLAME_DURATION b field_30433 + f I SITTING_FLAME_ATTACKS_COUNT c field_30434 + f I WARMUP_TIME d field_30435 + f I flameTicks e field_7053 + f I flameCount f field_7052 + f Lnet/minecraft/world/entity/AreaEffectCloud; flame g field_7051 + m ()V resetFlameCount j method_6857 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/DragonSittingScanningPhase cin net/minecraft/class_1522 + f I SITTING_SCANNING_IDLE_TICKS b field_30436 + f I SITTING_ATTACK_Y_VIEW_RANGE c field_30437 + f I SITTING_ATTACK_VIEW_RANGE d field_30438 + f I SITTING_CHARGE_VIEW_RANGE e field_30439 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; CHARGE_TARGETING f field_18123 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; scanTargeting g field_18124 + f I scanningTime h field_7050 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;Lnet/minecraft/world/entity/LivingEntity;)Z method_18447 a method_18447 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonStrafePlayerPhase cio net/minecraft/class_1525 + f Lorg/slf4j/Logger; LOGGER b field_7061 + f I FIREBALL_CHARGE_AMOUNT c field_30440 + f I fireballCharge d field_7060 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath e field_7059 + f Lnet/minecraft/world/phys/Vec3; targetLocation f field_7057 + f Lnet/minecraft/world/entity/LivingEntity; attackTarget g field_7062 + f Z holdingPatternClockwise h field_7058 + m (Lnet/minecraft/world/entity/LivingEntity;)V setTarget a method_6862 + p 1 attackTarget + m ()V findNewTarget j method_6860 + m ()V navigateToNextPathNode k method_6861 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/DragonTakeoffPhase cip net/minecraft/class_1524 + f Z firstTick b field_7056 + f Lnet/minecraft/world/level/pathfinder/Path; currentPath c field_7054 + f Lnet/minecraft/world/phys/Vec3; targetLocation d field_7055 + m ()V findNewTarget j method_6858 + m ()V navigateToNextPathNode k method_6859 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon +c net/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase ciq net/minecraft/class_1527 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; HOLDING_PATTERN a field_7069 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; STRAFE_PLAYER b field_7076 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; LANDING_APPROACH c field_7071 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; LANDING d field_7067 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; TAKEOFF e field_7077 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_FLAMING f field_7072 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_SCANNING g field_7081 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; SITTING_ATTACKING h field_7073 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; CHARGING_PLAYER i field_7078 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; DYING j field_7068 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; HOVERING k field_7075 + f [Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; phases l field_7080 + f Ljava/lang/Class; instanceClass m field_7074 + f I id n field_7079 + f Ljava/lang/String; name o field_7070 + m ()Ljava/lang/reflect/Constructor; getConstructor a method_6867 + m (I)Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; getById a method_6868 + c Gets a phase by its ID. If the phase is out of bounds (negative or beyond the end of the phase array), returns {@link #HOLDING_PATTERN}. + p 0 id + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; createInstance a method_6866 + p 1 dragon + m (Ljava/lang/Class;Ljava/lang/String;)Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase; create a method_6870 + p 0 phase + p 1 name + m ()I getId b method_6871 + m ()I getCount c method_6869 + m (ILjava/lang/Class;Ljava/lang/String;)V + p 1 id + p 2 instanceClass + p 3 name + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhaseManager cir net/minecraft/class_1526 + f Lorg/slf4j/Logger; LOGGER a field_7066 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; dragon b field_7065 + f [Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; phases c field_7064 + f Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; currentPhase d field_7063 + m ()Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; getCurrentPhase a method_6864 + m (Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase;)V setPhase a method_6863 + p 1 phase + m (Lnet/minecraft/world/entity/boss/enderdragon/phases/EnderDragonPhase;)Lnet/minecraft/world/entity/boss/enderdragon/phases/DragonPhaseInstance; getPhase b method_6865 + p 1 phase + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V + p 1 dragon + m ()V +c net/minecraft/world/entity/boss/enderdragon/phases/package-info cis net/minecraft/class_6059 +c net/minecraft/world/entity/boss/package-info cit net/minecraft/class_6060 +c net/minecraft/world/entity/boss/wither/WitherBoss ciu net/minecraft/class_1528 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_A b field_7088 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_B c field_7090 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_INV cc field_7085 + f I INVULNERABLE_TICKS cd field_30441 + f [F xRotHeads ce field_7084 + f [F yRotHeads cf field_7083 + f [F xRotOHeads cg field_7095 + f [F yRotOHeads ch field_7094 + f [I nextHeadUpdate ci field_7091 + f [I idleHeadUpdates cj field_7092 + f I destroyBlocksTick ck field_7082 + f Lnet/minecraft/server/level/ServerBossEvent; bossEvent cl field_7093 + f Ljava/util/function/Predicate; LIVING_ENTITY_SELECTOR cm field_7086 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; TARGETING_CONDITIONS cn field_18125 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_TARGET_C d field_7089 + f Ljava/util/List; DATA_TARGETS e field_7087 + m (FFF)F rotlerp a method_6886 + p 1 angle + p 2 targetAngle + p 3 max + m (IDDDZ)V performRangedAttack a method_6877 + c Launches a Wither skull toward (par2, par4, par6) + p 1 head + p 2 x + p 4 y + p 6 z + p 8 isDangerous + m (II)V setAlternativeTarget a method_6876 + c Updates the target entity ID + p 1 targetOffset + p 2 newId + m (ILnet/minecraft/world/entity/LivingEntity;)V performRangedAttack a method_6878 + p 1 head + p 2 target + m (I)F getHeadYRot b method_6879 + p 1 head + m (I)F getHeadXRot c method_6887 + p 1 head + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canDestroy c method_6883 + p 0 state + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_6873 j method_6873 + m ()V makeInvulnerable s method_6885 + c Initializes this Wither's explosion sequence and makes it invulnerable. Called immediately after spawning. + m (I)V setInvulnerableTicks s method_6875 + p 1 invulnerableTicks + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26904 + m (I)I getAlternativeTarget t method_6882 + c Returns the target entity ID if present, or -1 if not + p 1 head + c The target offset, should be from 0-2 + m (I)D getHeadX u method_6874 + p 1 head + m (I)D getHeadY v method_6880 + p 1 head + m (I)D getHeadZ w method_6881 + p 1 head + m ()I getInvulnerableTicks x method_6884 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/boss/wither/WitherBoss$WitherDoNothingGoal ciu$a net/minecraft/class_1528$class_1529 + f Lnet/minecraft/world/entity/boss/wither/WitherBoss; field_7096 a field_7096 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;)V +c net/minecraft/world/entity/boss/wither/package-info civ net/minecraft/class_6061 +c net/minecraft/world/entity/decoration/ArmorStand ciw net/minecraft/class_1531 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CLIENT_FLAGS bH field_7107 + f I WOBBLE_TIME b field_30443 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HEAD_POSE bI field_7123 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BODY_POSE bJ field_7122 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_ARM_POSE bK field_7116 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_ARM_POSE bL field_7105 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_LEFT_LEG_POSE bM field_7127 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_RIGHT_LEG_POSE bN field_7125 + f J lastHit bO field_7112 + c After punching the stand, the cooldown before you can punch it again without breaking it. + f Z ENABLE_ARMS bP field_30445 + f Lnet/minecraft/core/Rotations; DEFAULT_HEAD_POSE bQ field_7113 + f Lnet/minecraft/core/Rotations; DEFAULT_BODY_POSE bR field_7119 + f Lnet/minecraft/core/Rotations; DEFAULT_LEFT_ARM_POSE bS field_7124 + f Lnet/minecraft/core/Rotations; DEFAULT_RIGHT_ARM_POSE bT field_7115 + f Lnet/minecraft/core/Rotations; DEFAULT_LEFT_LEG_POSE bU field_7121 + f Lnet/minecraft/core/Rotations; DEFAULT_RIGHT_LEG_POSE bV field_7117 + f Lnet/minecraft/world/entity/EntityDimensions; MARKER_DIMENSIONS bW field_26745 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS bX field_26746 + f D FEET_OFFSET bY field_30447 + f D CHEST_OFFSET bZ field_30448 + f I DISABLE_TAKING_OFFSET c field_30446 + f D LEGS_OFFSET ca field_30449 + f D HEAD_OFFSET cb field_30450 + f Ljava/util/function/Predicate; RIDABLE_MINECARTS cc field_7102 + f Lnet/minecraft/core/NonNullList; handItems cd field_7114 + f Lnet/minecraft/core/NonNullList; armorItems ce field_7108 + f Z invisible cf field_7111 + f I disabledSlots cg field_7118 + f Lnet/minecraft/core/Rotations; headPose ch field_7104 + f Lnet/minecraft/core/Rotations; bodyPose ci field_7106 + f Lnet/minecraft/core/Rotations; leftArmPose cj field_7126 + f Lnet/minecraft/core/Rotations; rightArmPose ck field_7120 + f Lnet/minecraft/core/Rotations; leftLegPose cl field_7110 + f Lnet/minecraft/core/Rotations; rightLegPose cm field_7103 + f I DISABLE_PUTTING_OFFSET d field_30451 + f I CLIENT_FLAG_SMALL e field_30452 + f I CLIENT_FLAG_SHOW_ARMS f field_30453 + f I CLIENT_FLAG_NO_BASEPLATE g field_30442 + f I CLIENT_FLAG_MARKER h field_30444 + m ()Lnet/minecraft/core/Rotations; getHeadPose A method_6921 + m ()Lnet/minecraft/core/Rotations; getBodyPose B method_6923 + m ()Lnet/minecraft/core/Rotations; getLeftArmPose C method_6930 + m ()Lnet/minecraft/core/Rotations; getRightArmPose D method_6903 + m ()Lnet/minecraft/core/Rotations; getLeftLegPose E method_6917 + m ()Lnet/minecraft/core/Rotations; getRightLegPose F method_6900 + m ()Z hasPhysics H method_18059 + m ()Lnet/minecraft/nbt/CompoundTag; writePose I method_6911 + m ()V showBreakingParticles J method_6898 + m ()V playBrokenSound L method_6920 + m (BIZ)B setBit a method_6906 + p 1 oldBit + p 2 offset + p 3 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;F)V causeDamage a method_6905 + p 1 level + p 2 damageSource + p 3 damageAmount + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)Z swapItem a method_6904 + p 1 player + p 2 slot + p 3 stack + p 4 hand + m (Lnet/minecraft/core/Rotations;)V setHeadPose a method_6919 + p 1 headPose + m (Z)V setShowArms a method_6913 + p 1 showArms + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V brokenByPlayer b method_6924 + p 1 level + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z method_6918 b method_6918 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/entity/EquipmentSlot; getClickedSlot b method_6916 + p 1 vector + m (Lnet/minecraft/core/Rotations;)V setBodyPose b method_6927 + p 1 bodyPose + m (Z)V setNoBasePlate b method_6907 + p 1 noBasePlate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/damagesource/DamageSource;)V brokenByAnything c method_6908 + p 1 level + p 2 damageSource + m (Lnet/minecraft/core/Rotations;)V setLeftArmPose c method_6910 + p 1 leftArmPose + m (Lnet/minecraft/nbt/CompoundTag;)V readPose c method_6928 + p 1 compound + m (Lnet/minecraft/core/Rotations;)V setRightArmPose d method_6925 + p 1 rightArmPose + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z isDisabled e method_6915 + p 1 slot + m (Lnet/minecraft/core/Rotations;)V setLeftLegPose e method_6909 + p 1 leftLegPose + m (Lnet/minecraft/core/Rotations;)V setRightLegPose f method_6926 + p 1 rightLegPose + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55745 + m ()Z isSmall t method_6914 + m (Z)V setSmall u method_6922 + p 1 small + m ()Z isShowArms v method_6929 + m (Z)V setMarker v method_6902 + c Marker defines where if true, the size is 0 and will not be rendered or intractable. + p 1 marker + m (Z)Lnet/minecraft/world/entity/EntityDimensions; getDimensionsMarker w method_31168 + p 1 isMarker + m ()Z isNoBasePlate x method_6901 + m ()Z isMarker z method_6912 + c Gets whether the armor stand has marker enabled. If true, the armor stand's bounding box is set to zero and cannot be interacted with. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/decoration/ArmorStand$1 ciw$1 net/minecraft/class_1531$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot$Type a field_7128 + m ()V +c net/minecraft/world/entity/decoration/BlockAttachedEntity cix net/minecraft/class_9691 + f Lnet/minecraft/core/BlockPos; pos b field_51589 + f Lorg/slf4j/Logger; LOGGER c field_51590 + f I checkInterval d field_51591 + m (Lnet/minecraft/world/entity/Entity;)V dropItem b method_6889 + p 1 entity + m ()V recalculateBoundingBox p method_6895 + m ()Z survives s method_6888 + m ()Lnet/minecraft/core/BlockPos; getPos t method_59940 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 entityType + p 2 level + p 3 pos + m ()V +c net/minecraft/world/entity/decoration/GlowItemFrame ciy net/minecraft/class_5915 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V +c net/minecraft/world/entity/decoration/HangingEntity ciz net/minecraft/class_1530 + f Ljava/util/function/Predicate; HANGING_ENTITY c field_7098 + f Lnet/minecraft/core/Direction; direction d field_7099 + c The direction the entity is facing + m ()Lnet/minecraft/world/phys/AABB; calculateSupportBox B method_59941 + m ()V playPlacementSound C method_6894 + m (Lnet/minecraft/core/BlockPos;)Z method_59942 a method_59942 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/AABB; calculateBoundingBox a method_59943 + p 1 pos + p 2 direction + m (Lnet/minecraft/core/Direction;)V setDirection a method_6892 + c Updates facing and bounding box based on it + p 1 facingDirection + m (Lnet/minecraft/world/entity/Entity;)Z method_6890 c method_6890 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 entityType + p 2 level + p 3 pos + m ()V +c net/minecraft/world/entity/decoration/HangingEntity$1 ciz$1 net/minecraft/class_1530$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_7101 + m ()V +c net/minecraft/world/entity/decoration/ItemFrame cja net/minecraft/class_1533 + f I NUM_ROTATIONS e field_30454 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM f field_7130 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ROTATION g field_7132 + f F DEPTH h field_51592 + f F WIDTH i field_51593 + f F HEIGHT j field_51594 + f F dropChance k field_7129 + f Z fixed l field_22476 + m ()Lnet/minecraft/world/item/ItemStack; getFrameItemStack A method_33340 + m ()Lnet/minecraft/world/item/ItemStack; getItem D method_6940 + m ()Z hasFramedMap E method_43273 + m ()I getRotation F method_6934 + c Return the rotation of the item currently on this frame. + m ()I getAnalogOutput H method_6938 + m (IZ)V setRotation a method_6941 + p 1 rotation + p 2 updateNeighbours + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/saveddata/maps/MapId; getFramedMapId a method_43272 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Z)V setItem a method_6933 + p 1 stack + p 2 updateNeighbours + m (I)V setRotation b method_6939 + p 1 rotation + m (Lnet/minecraft/world/entity/Entity;Z)V dropItem b method_6936 + p 1 entity + p 2 dropSelf + m (Lnet/minecraft/world/item/ItemStack;)V setItem c method_6935 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V removeFramedMap d method_6937 + c Removes the dot representing this frame's position from the map when the item frame is broken. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V onItemChanged e method_43271 + p 1 item + m ()Lnet/minecraft/sounds/SoundEvent; getRemoveItemSound v method_34240 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakSound w method_34241 + m ()Lnet/minecraft/sounds/SoundEvent; getPlaceSound x method_34242 + m ()Lnet/minecraft/sounds/SoundEvent; getAddItemSound y method_34243 + m ()Lnet/minecraft/sounds/SoundEvent; getRotateItemSound z method_34244 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 level + p 2 pos + p 3 facingDirection + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V + p 1 entityType + p 2 level + p 3 pos + p 4 direction + m ()V +c net/minecraft/world/entity/decoration/LeashFenceKnotEntity cjb net/minecraft/class_1532 + f D OFFSET_Y c field_30455 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Leashable;)Z method_61164 a method_61164 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity; getOrCreateKnot b method_6932 + p 0 level + p 1 pos + m ()V playPlacementSound v method_59944 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 pos +c net/minecraft/world/entity/decoration/Painting cjc net/minecraft/class_1534 + f Lcom/mojang/serialization/MapCodec; VARIANT_MAP_CODEC e field_49238 + f Lcom/mojang/serialization/Codec; VARIANT_CODEC f field_49239 + f F DEPTH g field_51595 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PAINTING_VARIANT_ID h field_38941 + m (ILnet/minecraft/core/Holder;)Z method_43399 a method_43399 + m (Lnet/minecraft/world/entity/decoration/Painting;Lnet/minecraft/core/Holder;)Z method_43400 a method_43400 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Ljava/util/Optional; create a method_43401 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_59945 a method_59945 + m (I)D offsetForPaintingSize b method_59946 + p 1 size + m (Lnet/minecraft/core/Holder;)V setVariant b method_43402 + p 1 variant + m (Lnet/minecraft/core/Holder;)I variantArea c method_43403 + p 0 variant + m ()Lnet/minecraft/core/Holder; getVariant v method_43404 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 pos + p 3 direction + p 4 variant + m ()V +c net/minecraft/world/entity/decoration/PaintingVariant cjd net/minecraft/class_1535 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_51596 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_51945 + f Lcom/mojang/serialization/Codec; CODEC c field_51597 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51946 + f I width e comp_2670 + f I height f comp_2671 + f Lnet/minecraft/resources/ResourceLocation; assetId g comp_2672 + m ()I area a method_59947 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59948 a method_59948 + m ()I width b comp_2670 + m ()I height c comp_2671 + m ()Lnet/minecraft/resources/ResourceLocation; assetId d comp_2672 + m (IILnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/entity/decoration/PaintingVariants cje net/minecraft/class_7408 + f Lnet/minecraft/resources/ResourceKey; EARTH A field_38943 + f Lnet/minecraft/resources/ResourceKey; WIND B field_38944 + f Lnet/minecraft/resources/ResourceKey; WATER C field_38945 + f Lnet/minecraft/resources/ResourceKey; FIRE D field_38946 + f Lnet/minecraft/resources/ResourceKey; BAROQUE E field_51598 + f Lnet/minecraft/resources/ResourceKey; HUMBLE F field_51599 + f Lnet/minecraft/resources/ResourceKey; MEDITATIVE G field_51600 + f Lnet/minecraft/resources/ResourceKey; PRAIRIE_RIDE H field_51601 + f Lnet/minecraft/resources/ResourceKey; UNPACKED I field_51602 + f Lnet/minecraft/resources/ResourceKey; BACKYARD J field_51603 + f Lnet/minecraft/resources/ResourceKey; BOUQUET K field_51604 + f Lnet/minecraft/resources/ResourceKey; CAVEBIRD L field_51605 + f Lnet/minecraft/resources/ResourceKey; CHANGING M field_51606 + f Lnet/minecraft/resources/ResourceKey; COTAN N field_51607 + f Lnet/minecraft/resources/ResourceKey; ENDBOSS O field_51608 + f Lnet/minecraft/resources/ResourceKey; FERN P field_51609 + f Lnet/minecraft/resources/ResourceKey; FINDING Q field_51610 + f Lnet/minecraft/resources/ResourceKey; LOWMIST R field_51611 + f Lnet/minecraft/resources/ResourceKey; ORB S field_51612 + f Lnet/minecraft/resources/ResourceKey; OWLEMONS T field_51613 + f Lnet/minecraft/resources/ResourceKey; PASSAGE U field_51614 + f Lnet/minecraft/resources/ResourceKey; POND V field_51615 + f Lnet/minecraft/resources/ResourceKey; SUNFLOWERS W field_51616 + f Lnet/minecraft/resources/ResourceKey; TIDES X field_51617 + f Lnet/minecraft/resources/ResourceKey; KEBAB a field_38947 + f Lnet/minecraft/resources/ResourceKey; AZTEC b field_38948 + f Lnet/minecraft/resources/ResourceKey; ALBAN c field_38949 + f Lnet/minecraft/resources/ResourceKey; AZTEC2 d field_38950 + f Lnet/minecraft/resources/ResourceKey; BOMB e field_38951 + f Lnet/minecraft/resources/ResourceKey; PLANT f field_38952 + f Lnet/minecraft/resources/ResourceKey; WASTELAND g field_38953 + f Lnet/minecraft/resources/ResourceKey; POOL h field_38954 + f Lnet/minecraft/resources/ResourceKey; COURBET i field_38955 + f Lnet/minecraft/resources/ResourceKey; SEA j field_38956 + f Lnet/minecraft/resources/ResourceKey; SUNSET k field_38957 + f Lnet/minecraft/resources/ResourceKey; CREEBET l field_38958 + f Lnet/minecraft/resources/ResourceKey; WANDERER m field_38959 + f Lnet/minecraft/resources/ResourceKey; GRAHAM n field_38960 + f Lnet/minecraft/resources/ResourceKey; MATCH o field_38961 + f Lnet/minecraft/resources/ResourceKey; BUST p field_38962 + f Lnet/minecraft/resources/ResourceKey; STAGE q field_38963 + f Lnet/minecraft/resources/ResourceKey; VOID r field_38964 + f Lnet/minecraft/resources/ResourceKey; SKULL_AND_ROSES s field_38965 + f Lnet/minecraft/resources/ResourceKey; WITHER t field_38966 + f Lnet/minecraft/resources/ResourceKey; FIGHTERS u field_38967 + f Lnet/minecraft/resources/ResourceKey; POINTER v field_38968 + f Lnet/minecraft/resources/ResourceKey; PIGSCENE w field_38969 + f Lnet/minecraft/resources/ResourceKey; BURNING_SKULL x field_38970 + f Lnet/minecraft/resources/ResourceKey; SKELETON y field_38971 + f Lnet/minecraft/resources/ResourceKey; DONKEY_KONG z field_38972 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43407 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43406 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;II)V register a method_59949 + p 0 context + p 1 key + p 2 width + p 3 height + m ()V + m ()V +c net/minecraft/world/entity/decoration/package-info cjf net/minecraft/class_6062 +c net/minecraft/world/entity/item/FallingBlockEntity cjg net/minecraft/class_1540 + f I time b field_7192 + f Z dropItem c field_7193 + f Lnet/minecraft/nbt/CompoundTag; blockData d field_7194 + f Z forceTickAfterTeleportToDuplicate e field_52015 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_START_POS f field_7195 + f Lorg/slf4j/Logger; LOGGER g field_36333 + f Lnet/minecraft/world/level/block/state/BlockState; blockState h field_7188 + f Z cancelDrop i field_7189 + f Z hurtEntities j field_7191 + f I fallDamageMax k field_7190 + f F fallDamagePerDistance l field_7187 + m (Lnet/minecraft/world/damagesource/DamageSource;FLnet/minecraft/world/entity/Entity;)V method_32879 a method_32879 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/entity/item/FallingBlockEntity; fall a method_40005 + p 0 level + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V callOnBrokenAfterFall a method_32752 + p 1 block + p 2 pos + m (Lnet/minecraft/core/BlockPos;)V setStartPos a method_6963 + p 1 startPos + m (FI)V setHurtsEntities b method_6965 + p 1 fallDamagePerDistance + p 2 fallDamageMax + m ()Lnet/minecraft/core/BlockPos; getStartPos p method_6964 + m ()V disableDrop s method_49181 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState t method_6962 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 state + m ()V +c net/minecraft/world/entity/item/ItemEntity cjh net/minecraft/class_1542 + f F EYE_HEIGHT b field_48702 + f F bobOffs c field_7203 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM d field_7199 + f F FLOAT_HEIGHT e field_48703 + f I LIFETIME f field_30456 + f I INFINITE_PICKUP_DELAY g field_30457 + f I INFINITE_LIFETIME h field_30458 + f I age i field_7204 + f I pickupDelay j field_7202 + f I health k field_7201 + f Ljava/util/UUID; thrower l field_7200 + f Lnet/minecraft/world/entity/Entity; cachedThrower m field_46653 + f Ljava/util/UUID; target n field_41893 + m ()V setExtendedLifetime A method_6976 + m ()V makeFakeItem B method_6987 + m ()Lnet/minecraft/world/entity/item/ItemEntity; copy C method_29271 + m ()V setUnderwaterMovement D method_6974 + m ()V setUnderLavaMovement E method_24348 + m ()V mergeWithNeighbours F method_6973 + c Looks for other itemstacks nearby and tries to stack them together + m ()Z isMergable H method_20397 + m (F)F getSpin a method_27314 + p 1 partialTicks + m (Lnet/minecraft/world/entity/item/ItemEntity;)V tryToMerge a method_6972 + p 1 itemEntity + m (Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;)V merge a method_18006 + p 0 destinationEntity + p 1 destinationStack + p 2 originEntity + p 3 originStack + m (Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V merge a method_24016 + p 0 destinationEntity + p 1 destinationStack + p 2 originStack + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_6979 + c Sets the item that this entity represents. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z areMergable a method_24017 + p 0 destinationStack + p 1 originStack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; merge a method_24018 + p 0 destinationStack + p 1 originStack + p 2 amount + m (I)V setPickUpDelay b method_6982 + p 1 pickupDelay + m (Lnet/minecraft/world/entity/Entity;)V setThrower b method_6981 + p 1 thrower + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_20396 b method_20396 + m (Ljava/util/UUID;)V setTarget b method_48349 + p 1 target + m ()Lnet/minecraft/world/item/ItemStack; getItem p method_6983 + c Gets the item that this entity represents. + m ()I getAge t method_6985 + m ()V setDefaultPickUpDelay v method_6988 + m ()V setNoPickUpDelay w method_6975 + m ()V setNeverPickUp x method_6989 + m ()Z hasPickUpDelay y method_6977 + m ()V setUnlimitedLifetime z method_35190 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 posX + p 4 posY + p 6 posZ + p 8 itemStack + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;DDD)V + p 1 level + p 2 posX + p 4 posY + p 6 posZ + p 8 itemStack + p 9 deltaX + p 11 deltaY + p 13 deltaZ + m (Lnet/minecraft/world/entity/item/ItemEntity;)V + p 1 other + m ()V +c net/minecraft/world/entity/item/PrimedTnt cji net/minecraft/class_1541 + f Ljava/lang/String; TAG_FUSE b field_46776 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FUSE_ID c field_7197 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BLOCK_STATE_ID d field_46777 + f I DEFAULT_FUSE_TIME e field_30459 + f Ljava/lang/String; TAG_BLOCK_STATE f field_46778 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; USED_PORTAL_DAMAGE_CALCULATOR g field_52317 + f Lnet/minecraft/world/entity/LivingEntity; owner h field_7198 + f Z usedPortal i field_52318 + m (Z)V setUsedPortal a method_61174 + p 1 usedPortal + m (I)V setFuse b method_6967 + p 1 life + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_54455 + p 1 blockState + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner p method_6970 + c Returns null or the entityliving it was ignited by + m ()I getFuse t method_6969 + c Gets the fuse from the data manager + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState v method_54456 + m ()V explode w method_6971 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 owner + m ()V +c net/minecraft/world/entity/item/PrimedTnt$1 cji$1 net/minecraft/class_1541$1 + m ()V +c net/minecraft/world/entity/item/package-info cjj net/minecraft/class_6063 +c net/minecraft/world/entity/monster/AbstractIllager cjk net/minecraft/class_1543 + m ()Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; getArmPose s method_6990 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose cjk$a net/minecraft/class_1543$class_1544 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSED a field_7207 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; ATTACKING b field_7211 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; SPELLCASTING c field_7212 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; BOW_AND_ARROW d field_7208 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSBOW_HOLD e field_7213 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CROSSBOW_CHARGE f field_7210 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; CELEBRATING g field_19012 + f Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; NEUTRAL h field_21512 + f [Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; $VALUES i field_7209 + m ()[Lnet/minecraft/world/entity/monster/AbstractIllager$IllagerArmPose; $values a method_36647 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/AbstractIllager$RaiderOpenDoorGoal cjk$b net/minecraft/class_1543$class_4258 + f Lnet/minecraft/world/entity/monster/AbstractIllager; field_19013 a field_19013 + m (Lnet/minecraft/world/entity/monster/AbstractIllager;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 raider +c net/minecraft/world/entity/monster/AbstractSkeleton cjl net/minecraft/class_1547 + f I HARD_ATTACK_INTERVAL b field_49149 + f I NORMAL_ATTACK_INTERVAL c field_49150 + f Lnet/minecraft/world/entity/ai/goal/RangedBowAttackGoal; bowGoal d field_7220 + f Lnet/minecraft/world/entity/ai/goal/MeleeAttackGoal; meleeGoal e field_7221 + m (Lnet/minecraft/world/item/ItemStack;FLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; getArrow a method_6996 + p 1 arrow + p 2 velocity + p 3 weapon + m ()I getHardAttackInterval gk method_57078 + m ()I getAttackInterval gl method_57079 + m ()Z isShaking gm method_35191 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26905 + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound t method_6998 + m ()V reassessWeaponGoal x method_6997 + c Sets this entity's combat AI. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/AbstractSkeleton$1 cjl$1 net/minecraft/class_1547$1 + f Lnet/minecraft/world/entity/monster/AbstractSkeleton; field_7223 b field_7223 + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;Lnet/minecraft/world/entity/PathfinderMob;DZ)V +c net/minecraft/world/entity/monster/Blaze cjm net/minecraft/class_1545 + f F allowedHeightOffset b field_7214 + f I nextHeightOffsetChangeTick c field_7215 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID d field_7216 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26906 + m ()Z isCharged t method_6994 + m (Z)V setCharged x method_6993 + p 1 charged + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Blaze$BlazeAttackGoal cjm$a net/minecraft/class_1545$class_1546 + f Lnet/minecraft/world/entity/monster/Blaze; blaze a field_7219 + f I attackStep b field_7218 + f I attackTime c field_7217 + f I lastSeen d field_19420 + m ()D getFollowDistance h method_6995 + m (Lnet/minecraft/world/entity/monster/Blaze;)V + p 1 blaze +c net/minecraft/world/entity/monster/Bogged cjn net/minecraft/class_9254 + f Ljava/lang/String; SHEARED_TAG_NAME b field_49240 + f I HARD_ATTACK_INTERVAL c field_49151 + f I NORMAL_ATTACK_INTERVAL d field_49152 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHEARED e field_49241 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gn method_57080 + m ()Z isSheared go method_57308 + m ()V spawnShearedMushrooms gr method_57309 + m (Z)V setSheared x method_57310 + p 1 sheared + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/CaveSpider cjo net/minecraft/class_1549 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createCaveSpider s method_26907 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Creeper cjp net/minecraft/class_1548 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SWELL_DIR b field_7230 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_POWERED c field_7224 + f I swell cc field_7227 + f I maxSwell cd field_7228 + f I explosionRadius ce field_7225 + f I droppedSkulls cf field_7226 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_IGNITED d field_7231 + f I oldSwell e field_7229 + m (F)F getSwelling H method_7003 + c Params: (Float)Render tick. Returns the intensity of the creeper's flash when it is ignited. + p 1 partialTicks + m (I)V setSwellDir b method_7005 + c Sets the state of creeper, -1 to idle and 1 to be 'in fuse' + p 1 state + m ()V ignite gk method_7004 + m ()Z canDropMobsSkull gl method_7008 + c Returns {@code true} if an entity is able to drop its skull due to being blown up by this creeper.\n\nDoes not test if this creeper is charged, the caller must do that. However, does test the doMobLoot gamerule. + m ()V increaseDroppedSkulls gm method_7002 + m ()V explodeCreeper gn method_7006 + c Creates an explosion as determined by this creeper's power and explosion radius. + m ()V spawnLingeringCloud go method_7001 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26908 + m ()I getSwellDir t method_7007 + c Returns the current state of creeper, -1 is idle, 1 is 'in fuse' + m ()Z isIgnited x method_7000 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/CrossbowAttackMob cjq net/minecraft/class_3745 + m ()V onCrossbowAttackPerformed a method_24651 + m (Lnet/minecraft/world/entity/LivingEntity;F)V performCrossbowAttack b method_24654 + p 1 user + p 2 velocity + m (Z)V setChargingCrossbow b method_7110 + p 1 chargingCrossbow + m ()Lnet/minecraft/world/entity/LivingEntity; getTarget p method_5968 + c Gets the active target the Task system uses for tracking +c net/minecraft/world/entity/monster/Drowned cjr net/minecraft/class_1551 + f F NAUTILUS_SHELL_CHANCE b field_30460 + f Lnet/minecraft/world/entity/ai/navigation/WaterBoundPathNavigation; waterNavigation c field_7234 + f Z searchingForLand cf field_7233 + f Lnet/minecraft/world/entity/ai/navigation/GroundPathNavigation; groundNavigation d field_7232 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkDrownedSpawnRules a method_20673 + p 0 drowned + p 1 serverLevel + p 2 mobSpawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/monster/Drowned;Lnet/minecraft/world/entity/ai/navigation/PathNavigation;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_7017 a method_7017 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isDeepEnoughToSpawn a method_20672 + p 0 level + p 1 pos + m ()Z closeToNextPos gn method_7016 + m ()Z wantsToSwim gu method_7018 + m (Lnet/minecraft/world/entity/LivingEntity;)Z okTarget j method_7012 + p 1 target + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55746 + m (Z)V setSearchingForLand x method_7013 + p 1 searchingForLand + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Drowned$DrownedAttackGoal cjr$a net/minecraft/class_1551$class_1552 + f Lnet/minecraft/world/entity/monster/Drowned; drowned b field_7235 + m (Lnet/minecraft/world/entity/monster/Drowned;DZ)V + p 1 drowned + p 2 speedModifier + p 4 followingTargetEvenIfNotSeen +c net/minecraft/world/entity/monster/Drowned$DrownedGoToBeachGoal cjr$b net/minecraft/class_1551$class_1554 + f Lnet/minecraft/world/entity/monster/Drowned; drowned g field_7237 + m (Lnet/minecraft/world/entity/monster/Drowned;D)V + p 1 drowned + p 2 speedModifier +c net/minecraft/world/entity/monster/Drowned$DrownedGoToWaterGoal cjr$c net/minecraft/class_1551$class_1555 + f Lnet/minecraft/world/entity/PathfinderMob; mob a field_7242 + f D wantedX b field_7240 + f D wantedY c field_7239 + f D wantedZ d field_7238 + f D speedModifier e field_7243 + f Lnet/minecraft/world/level/Level; level f field_7241 + m ()Lnet/minecraft/world/phys/Vec3; getWaterPos h method_7021 + m (Lnet/minecraft/world/entity/PathfinderMob;D)V + p 1 mob + p 2 speedModifier +c net/minecraft/world/entity/monster/Drowned$DrownedMoveControl cjr$d net/minecraft/class_1551$class_1556 + f Lnet/minecraft/world/entity/monster/Drowned; drowned l field_7244 + m (Lnet/minecraft/world/entity/monster/Drowned;)V + p 1 drowned +c net/minecraft/world/entity/monster/Drowned$DrownedSwimUpGoal cjr$e net/minecraft/class_1551$class_1557 + f Lnet/minecraft/world/entity/monster/Drowned; drowned a field_7246 + f D speedModifier b field_7245 + f I seaLevel c field_7247 + f Z stuck d field_7248 + m (Lnet/minecraft/world/entity/monster/Drowned;DI)V + p 1 drowned + p 2 speedModifier + p 4 seaLevel +c net/minecraft/world/entity/monster/Drowned$DrownedTridentAttackGoal cjr$f net/minecraft/class_1551$class_1558 + f Lnet/minecraft/world/entity/monster/Drowned; drowned a field_7249 + m (Lnet/minecraft/world/entity/monster/RangedAttackMob;DIF)V + p 1 rangedAttackMob + p 2 speedModifier + p 4 attackInterval + p 5 attackRadius +c net/minecraft/world/entity/monster/ElderGuardian cjs net/minecraft/class_1550 + f F ELDER_SIZE_SCALE b field_17492 + f I EFFECT_RADIUS cc field_38115 + f I EFFECT_DURATION cd field_38116 + f I EFFECT_AMPLIFIER ce field_38117 + f I EFFECT_DISPLAY_LIMIT cf field_38118 + f I EFFECT_INTERVAL e field_38119 + m (Lnet/minecraft/server/level/ServerPlayer;)V method_7011 b method_7011 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26909 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/EnderMan cjt net/minecraft/class_1560 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_ATTACKING_ID c field_7256 + f I MIN_DEAGGRESSION_TIME cc field_30461 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CARRY_STATE cd field_7257 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CREEPY ce field_7255 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STARED_AT cf field_20618 + f I lastStareSound cg field_7253 + f I targetChangeTime ch field_7254 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25378 + f I remainingPersistentAngerTime cj field_25376 + f Ljava/util/UUID; persistentAngerTarget ck field_25377 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_ATTACKING d field_7252 + f I DELAY_BETWEEN_CREEPY_STARE_SOUND e field_30462 + m (Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/entity/projectile/ThrownPotion;F)Z hurtWithCleanWater a method_38068 + p 1 source + p 2 potion + p 3 amount + m (Lnet/minecraft/world/entity/Entity;)Z teleportTowards c method_7025 + c Teleport the enderman to another entity + p 1 target + m (Lnet/minecraft/world/level/block/state/BlockState;)V setCarriedBlock c method_7032 + p 1 state + m (Lnet/minecraft/world/entity/player/Player;)Z isLookingAtMe f method_7026 + c Checks to see if this enderman should be attacking this player + p 1 player + m ()Lnet/minecraft/world/level/block/state/BlockState; getCarriedBlock gk method_7027 + m ()Z isCreepy gl method_7028 + m ()Z hasBeenStaredAt gm method_22330 + m ()V setBeingStaredAt gn method_22331 + m (DDD)Z teleport q method_7024 + c Teleport the enderman + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26910 + m ()V playStareSound t method_7030 + m ()Z teleport x method_7029 + c Teleport the enderman to a random nearby position + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/EnderMan$EndermanFreezeWhenLookedAt cjt$a net/minecraft/class_1560$class_4159 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_18524 + f Lnet/minecraft/world/entity/LivingEntity; target b field_21513 + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/EnderMan$EndermanLeaveBlockGoal cjt$b net/minecraft/class_1560$class_1561 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_7258 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z canPlaceBlock a method_7033 + p 1 level + p 2 destinationPos + p 3 carriedState + p 4 destinationState + p 5 belowDestinationState + p 6 belowDestinationPos + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/EnderMan$EndermanLookForPlayerGoal cjt$c net/minecraft/class_1560$class_1562 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman i field_7260 + f Lnet/minecraft/world/entity/player/Player; pendingTarget j field_7259 + c The player + f I aggroTime k field_7262 + f I teleportTime l field_7261 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; startAggroTargetConditions m field_18127 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; continueAggroTargetConditions n field_18876 + f Ljava/util/function/Predicate; isAngerInducing o field_40735 + m (Lnet/minecraft/world/entity/monster/EnderMan;Lnet/minecraft/world/entity/LivingEntity;)Z method_18449 a method_18449 + m (Lnet/minecraft/world/entity/monster/EnderMan;Ljava/util/function/Predicate;)V + p 1 enderman + p 2 selectionPredicate +c net/minecraft/world/entity/monster/EnderMan$EndermanTakeBlockGoal cjt$d net/minecraft/class_1560$class_1563 + f Lnet/minecraft/world/entity/monster/EnderMan; enderman a field_7263 + m (Lnet/minecraft/world/entity/monster/EnderMan;)V + p 1 enderman +c net/minecraft/world/entity/monster/Endermite cju net/minecraft/class_1559 + f I MAX_LIFE b field_30463 + f I life c field_7250 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkEndermiteSpawnRules b method_20674 + p 0 endermite + p 1 serverLevel + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26911 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Enemy cjv net/minecraft/class_1569 + f I XP_REWARD_NONE i_ field_30464 + f I XP_REWARD_SMALL j_ field_30465 + f I XP_REWARD_MEDIUM k_ field_30466 + f I XP_REWARD_LARGE l_ field_30467 + f I XP_REWARD_HUGE m_ field_30468 + f I XP_REWARD_BOSS n_ field_30469 +c net/minecraft/world/entity/monster/Evoker cjw net/minecraft/class_1564 + f Lnet/minecraft/world/entity/animal/Sheep; wololoTarget e field_7264 + m (Lnet/minecraft/world/entity/animal/Sheep;)V setWololoTarget a method_7036 + p 1 wololoTarget + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7038 a method_7038 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7037 b method_7037 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7043 c method_7043 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7041 d method_7041 + m (Lnet/minecraft/world/entity/monster/Evoker;)Lnet/minecraft/util/RandomSource; method_7040 e method_7040 + m ()Lnet/minecraft/world/entity/animal/Sheep; getWololoTarget gF method_7039 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26912 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Evoker$EvokerAttackSpellGoal cjw$a net/minecraft/class_1564$class_1565 + f Lnet/minecraft/world/entity/monster/Evoker; field_7265 a field_7265 + m (DDDDFI)V createSpellEntity a method_7044 + p 1 x + p 3 z + p 5 minY + p 7 maxY + p 9 yRot + p 10 warmupDelay + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerCastingSpellGoal cjw$b net/minecraft/class_1564$class_1566 + f Lnet/minecraft/world/entity/monster/Evoker; field_7266 a field_7266 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerSummonSpellGoal cjw$c net/minecraft/class_1564$class_1567 + f Lnet/minecraft/world/entity/monster/Evoker; field_7267 a field_7267 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; vexCountTargeting e field_18129 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Evoker$EvokerWololoSpellGoal cjw$d net/minecraft/class_1564$class_1568 + f Lnet/minecraft/world/entity/monster/Evoker; field_7268 a field_7268 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; wololoTargeting e field_7269 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_7045 a method_7045 + m (Lnet/minecraft/world/entity/monster/Evoker;)V +c net/minecraft/world/entity/monster/Ghast cjx net/minecraft/class_1571 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_CHARGING b field_7273 + f I explosionPower c field_7272 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGhastSpawnRules b method_20675 + p 0 ghast + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/damagesource/DamageSource;)Z isReflectedFireball g method_44320 + p 0 damageSource + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18450 j method_18450 + m ()Z isCharging s method_7050 + m ()I getExplosionPower t method_7049 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_26913 + m (Z)V setCharging x method_7048 + p 1 charging + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Ghast$GhastLookGoal cjx$a net/minecraft/class_1571$class_1572 + f Lnet/minecraft/world/entity/monster/Ghast; ghast a field_7274 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$GhastMoveControl cjx$b net/minecraft/class_1571$class_1573 + f Lnet/minecraft/world/entity/monster/Ghast; ghast l field_7275 + f I floatDuration m field_7276 + m (Lnet/minecraft/world/phys/Vec3;I)Z canReach a method_7051 + p 1 pos + p 2 length + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$GhastShootFireballGoal cjx$c net/minecraft/class_1571$class_1574 + f I chargeTime a field_7278 + f Lnet/minecraft/world/entity/monster/Ghast; ghast b field_7277 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Ghast$RandomFloatAroundGoal cjx$d net/minecraft/class_1571$class_1575 + f Lnet/minecraft/world/entity/monster/Ghast; ghast a field_7279 + m (Lnet/minecraft/world/entity/monster/Ghast;)V + p 1 ghast +c net/minecraft/world/entity/monster/Giant cjy net/minecraft/class_1570 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26914 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Guardian cjz net/minecraft/class_1577 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_MOVING b field_7280 + f I ATTACK_TIME c field_30470 + f F clientSideTailAnimation cc field_7286 + f F clientSideTailAnimationO cd field_7284 + f F clientSideTailAnimationSpeed ce field_7281 + f F clientSideSpikesAnimation cf field_7285 + f F clientSideSpikesAnimationO cg field_7287 + f Lnet/minecraft/world/entity/LivingEntity; clientSideCachedAttackTarget ch field_7288 + f I clientSideAttackTime ci field_7282 + f Z clientSideTouchedGround cj field_7283 + f Lnet/minecraft/world/entity/ai/goal/RandomStrollGoal; randomStrollGoal d field_7289 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_ATTACK_TARGET e field_7290 + m (F)F getTailAnimation H method_7057 + p 1 partialTick + m (F)F getSpikesAnimation I method_7053 + p 1 partialTick + m (F)F getAttackAnimationScale J method_7061 + p 1 partialTick + m (I)V setActiveAttackTarget b method_7060 + p 1 activeAttackTargetId + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkGuardianSpawnRules b method_20676 + p 0 guardian + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gk method_26915 + m ()Z isMoving gl method_7058 + m ()Z hasActiveAttackTarget gm method_7063 + m ()Lnet/minecraft/world/entity/LivingEntity; getActiveAttackTarget gn method_7052 + m ()F getClientSideAttackTime go method_48161 + m ()I getAttackDuration t method_7055 + m ()Lnet/minecraft/sounds/SoundEvent; getFlopSound x method_7062 + m (Z)V setMoving x method_7054 + p 1 moving + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Guardian$GuardianAttackGoal cjz$a net/minecraft/class_1577$class_1578 + f Lnet/minecraft/world/entity/monster/Guardian; guardian a field_7293 + f I attackTime b field_7291 + f Z elder c field_7292 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Guardian$GuardianAttackSelector cjz$b net/minecraft/class_1577$class_1579 + f Lnet/minecraft/world/entity/monster/Guardian; guardian a field_7294 + m (Lnet/minecraft/world/entity/LivingEntity;)Z test a method_7064 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Guardian$GuardianMoveControl cjz$c net/minecraft/class_1577$class_1580 + f Lnet/minecraft/world/entity/monster/Guardian; guardian l field_7295 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/world/entity/monster/Husk cka net/minecraft/class_1576 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkHuskSpawnRules a method_20677 + p 0 husk + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Illusioner ckb net/minecraft/class_1581 + f I ILLUSION_TRANSITION_TICKS cc field_30471 + f I ILLUSION_SPREAD cd field_30472 + f I clientSideIllusionTicks ce field_7296 + f [[Lnet/minecraft/world/phys/Vec3; clientSideIllusionOffsets cf field_7297 + f I NUM_ILLUSIONS e field_30473 + m (F)[Lnet/minecraft/world/phys/Vec3; getIllusionOffsets H method_7065 + p 1 partialTick + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26916 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Illusioner$IllusionerBlindnessSpellGoal ckb$a net/minecraft/class_1581$class_1582 + f Lnet/minecraft/world/entity/monster/Illusioner; field_7299 a field_7299 + f I lastTargetId e field_7298 + m (Lnet/minecraft/world/entity/monster/Illusioner;)V +c net/minecraft/world/entity/monster/Illusioner$IllusionerMirrorSpellGoal ckb$b net/minecraft/class_1581$class_1583 + f Lnet/minecraft/world/entity/monster/Illusioner; field_7300 a field_7300 + m (Lnet/minecraft/world/entity/monster/Illusioner;)V +c net/minecraft/world/entity/monster/MagmaCube ckc net/minecraft/class_1589 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMagmaCubeSpawnRules b method_20678 + p 0 magmaCube + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26917 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Monster ckd net/minecraft/class_1588 + m (Lnet/minecraft/world/entity/player/Player;)Z isPreventingPlayerRest a method_7076 + p 1 player + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z isDarkEnoughToSpawn a method_20679 + c Static predicate for determining if the current light level and environmental conditions allow for a monster to spawn. + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkMonsterSpawnRules b method_20680 + c Static predicate for determining whether a monster can spawn at the provided location, incorporating a check of the current light level at the location. + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkAnyLightMonsterSpawnRules c method_20681 + c Static predicate for determining whether a monster can spawn at the provided location. + p 0 type + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V updateNoActionTime gp method_16827 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createMonsterAttributes gq method_26918 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/PatrollingMonster cke net/minecraft/class_3732 + f Lnet/minecraft/core/BlockPos; patrolTarget b field_16478 + f Z patrolLeader c field_16479 + f Z patrolling d field_16477 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPatrollingMonsterSpawnRules b method_20739 + p 0 patrollingMonster + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z canBeLeader gl method_16485 + m ()Lnet/minecraft/core/BlockPos; getPatrolTarget gm method_16215 + m ()Z hasPatrolTarget gn method_16220 + m ()Z isPatrolLeader go method_16219 + m ()Z canJoinPatrol gr method_16472 + m ()V findPatrolTarget gs method_16218 + m ()Z isPatrolling gt method_16915 + m (Lnet/minecraft/core/BlockPos;)V setPatrolTarget h method_16216 + p 1 patrolTarget + m (Lnet/minecraft/core/BlockPos;)V method_57005 i method_57005 + m (Z)V setPatrolLeader x method_16217 + p 1 patrolLeader + m (Z)V setPatrolling y method_22332 + p 1 patrolling + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/PatrollingMonster$LongDistancePatrolGoal cke$a net/minecraft/class_3732$class_3733 + f I NAVIGATION_FAILED_COOLDOWN a field_30474 + f Lnet/minecraft/world/entity/monster/PatrollingMonster; mob b field_16481 + f D speedModifier c field_16480 + f D leaderSpeedModifier d field_16535 + f J cooldownUntil e field_20701 + m (Lnet/minecraft/world/entity/monster/PatrollingMonster;)Z method_16223 a method_16223 + m ()Ljava/util/List; findPatrolCompanions h method_22333 + m ()Z moveRandomly i method_16222 + m (Lnet/minecraft/world/entity/monster/PatrollingMonster;DD)V + p 1 mob + p 2 speedModifier + p 4 leaderSpeedModifier +c net/minecraft/world/entity/monster/Phantom ckf net/minecraft/class_1593 + f F FLAP_DEGREES_PER_TICK b field_30475 + f I TICKS_PER_FLAP c field_28641 + f Lnet/minecraft/core/BlockPos; anchorPoint cb field_7312 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; attackPhase cc field_7315 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_SIZE d field_7313 + f Lnet/minecraft/world/phys/Vec3; moveTargetPoint e field_7314 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36649 a method_36649 + m (I)V setPhantomSize b method_7091 + p 1 phantomSize + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36650 b method_36650 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36651 c method_36651 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7090 d method_7090 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7086 e method_7086 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_36652 f method_36652 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7080 g method_7080 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7098 h method_7098 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7099 i method_7099 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7096 j method_7096 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7093 k method_7093 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/util/RandomSource; method_7092 l method_7092 + m ()I getPhantomSize s method_7084 + m ()I getUniqueFlapTickOffset t method_33588 + m ()V updatePhantomSizeInfo x method_7097 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Phantom$AttackPhase ckf$a net/minecraft/class_1593$class_1594 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; CIRCLE a field_7318 + f Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; SWOOP b field_7317 + f [Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; $VALUES c field_7316 + m ()[Lnet/minecraft/world/entity/monster/Phantom$AttackPhase; $values a method_36653 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/Phantom$PhantomAttackPlayerTargetGoal ckf$b net/minecraft/class_1593$class_1595 + f Lnet/minecraft/world/entity/monster/Phantom; field_7319 a field_7319 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; attackTargeting b field_18130 + f I nextScanTick c field_7320 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomAttackStrategyGoal ckf$c net/minecraft/class_1593$class_1596 + f Lnet/minecraft/world/entity/monster/Phantom; field_7321 a field_7321 + f I nextSweepTick b field_7322 + m ()V setAnchorAboveTarget h method_7102 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomBodyRotationControl ckf$d net/minecraft/class_1593$class_1597 + f Lnet/minecraft/world/entity/monster/Phantom; field_7323 a field_7323 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomCircleAroundAnchorGoal ckf$e net/minecraft/class_1593$class_1598 + f Lnet/minecraft/world/entity/monster/Phantom; field_7325 a field_7325 + f F angle c field_7328 + f F distance d field_7327 + f F height e field_7326 + f F clockwise f field_7324 + m ()V selectNext i method_7103 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomLookControl ckf$f net/minecraft/class_1593$class_1599 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomMoveControl ckf$g net/minecraft/class_1593$class_1600 + f Lnet/minecraft/world/entity/monster/Phantom; field_7330 l field_7330 + f F speed m field_7331 + m (Lnet/minecraft/world/entity/monster/Phantom;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Phantom$PhantomMoveTargetGoal ckf$h net/minecraft/class_1593$class_1601 + f Lnet/minecraft/world/entity/monster/Phantom; field_7332 b field_7332 + m ()Z touchingTarget h method_7104 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Phantom$PhantomSweepAttackGoal ckf$i net/minecraft/class_1593$class_1602 + f Lnet/minecraft/world/entity/monster/Phantom; field_7333 a field_7333 + f I CAT_SEARCH_TICK_DELAY c field_36305 + f Z isScaredOfCat d field_36306 + f I catSearchTick e field_36307 + m (Lnet/minecraft/world/entity/monster/Phantom;)V +c net/minecraft/world/entity/monster/Pillager ckg net/minecraft/class_1604 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_CHARGING_CROSSBOW b field_7334 + f I SLOT_OFFSET cc field_30476 + f Lnet/minecraft/world/SimpleContainer; inventory cd field_7335 + f I INVENTORY_SIZE e field_30478 + m ()Z isChargingCrossbow gk method_7108 + m (Lnet/minecraft/world/item/ItemStack;)Z wantsItem n method_7111 + p 1 item + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26919 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/RangedAttackMob ckh net/minecraft/class_1603 + m (Lnet/minecraft/world/entity/LivingEntity;F)V performRangedAttack a method_7105 + c Attack the specified entity using a ranged attack. + p 1 target + p 2 velocity +c net/minecraft/world/entity/monster/Ravager cki net/minecraft/class_1584 + f I STUN_DURATION b field_30479 + f D BASE_MOVEMENT_SPEED cc field_30480 + f D ATTACK_MOVEMENT_SPEED cd field_30481 + f I STUNNED_COLOR ce field_30482 + f F STUNNED_COLOR_BLUE cf field_30483 + f F STUNNED_COLOR_GREEN cg field_30484 + f F STUNNED_COLOR_RED ch field_30485 + f I ATTACK_DURATION ci field_30486 + f I attackTick cj field_7303 + f I stunnedTick ck field_7302 + f I roarTick cl field_7305 + f Ljava/util/function/Predicate; NO_RAVAGER_AND_ALIVE e field_7301 + m (Lnet/minecraft/world/entity/Entity;)V strongKnockback c method_7068 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z method_7069 d method_7069 + m ()I getStunnedTick gk method_7074 + m ()I getRoarTick gu method_7072 + m ()V stunEffect gv method_7073 + m ()V roar gw method_7071 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_39955 j method_39955 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26920 + m ()I getAttackTick t method_7070 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Shulker ckj net/minecraft/class_1606 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ATTACH_FACE_ID b field_7344 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PEEK_ID c field_7346 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; COVERED_ARMOR_MODIFIER cc field_7342 + f I TELEPORT_STEPS cd field_30487 + f B NO_COLOR ce field_30488 + f B DEFAULT_COLOR cf field_30489 + f I MAX_TELEPORT_DISTANCE cg field_30490 + f I OTHER_SHULKER_SCAN_RADIUS ch field_30491 + f I OTHER_SHULKER_LIMIT ci field_30492 + f F PEEK_PER_TICK cj field_30493 + f Lorg/joml/Vector3f; FORWARD ck field_33765 + f F MAX_SCALE cl field_48343 + f F currentPeekAmountO cm field_7339 + f F currentPeekAmount cn field_7337 + f Lnet/minecraft/core/BlockPos; clientOldAttachPosition co field_7345 + f I clientSideTeleportInterpolation cp field_7340 + f F MAX_LID_OPEN cq field_30494 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_COLOR_ID d field_7343 + f Lnet/minecraft/resources/ResourceLocation; COVERED_ARMOR_MODIFIER_ID e field_7341 + m (F)F getClientPeekAmount H method_7116 + p 1 partialTick + m (F)Ljava/util/Optional; getRenderPosition I method_33352 + p 1 partial + m (F)F getPhysicalPeek J method_33342 + p 0 peek + m (FLnet/minecraft/core/Direction;F)Lnet/minecraft/world/phys/AABB; getProgressAabb a method_33346 + p 0 scale + p 1 expansionDirection + p 2 peek + m (FLnet/minecraft/core/Direction;FF)Lnet/minecraft/world/phys/AABB; getProgressDeltaAabb a method_33347 + p 0 scale + p 1 expansionDirection + p 2 currentPeek + p 3 oldPeek + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36654 a method_36654 + m (Lnet/minecraft/world/item/DyeColor;)Ljava/lang/Byte; method_47879 a method_47879 + m (Ljava/util/Optional;)V setVariant a method_47880 + p 1 variant + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canStayAt a method_24350 + p 1 pos + p 2 facing + m (Lnet/minecraft/core/Direction;)V setAttachFace a method_35192 + p 1 attachFace + m (I)V setRawPeekAmount b method_7122 + c Applies or removes armor modifier + p 1 peekAmount + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_7118 b method_7118 + m (Lnet/minecraft/world/entity/Entity;)Z method_33343 c method_33343 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36655 c method_36655 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_7112 d method_7112 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/util/RandomSource; method_36656 e method_36656 + m ()Ljava/util/Optional; getVariant gk method_47881 + m ()Lnet/minecraft/world/item/DyeColor; getColor gl method_7121 + m ()V findNewAttachment gm method_33348 + m ()Z updatePeekAmount gn method_33349 + m ()V onPeekAmountChange go method_33350 + m ()Z isClosed gp method_7124 + m ()V hitByShulkerBullet gq method_31547 + m ()I getRawPeekAmount gr method_7115 + m ()Lorg/joml/Vector3f; method_36983 gs method_36983 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction; findAttachableSurface h method_24351 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isPositionBlocked i method_33351 + p 1 pos + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26921 + m ()Z teleportSomewhere t method_7127 + m ()Lnet/minecraft/core/Direction; getAttachFace x method_7119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Shulker$ShulkerAttackGoal ckj$a net/minecraft/class_1606$class_1607 + f Lnet/minecraft/world/entity/monster/Shulker; field_7348 a field_7348 + f I attackTime b field_7347 + m (Lnet/minecraft/world/entity/monster/Shulker;)V +c net/minecraft/world/entity/monster/Shulker$ShulkerBodyRotationControl ckj$b net/minecraft/class_1606$class_1608 + m (Lnet/minecraft/world/entity/Mob;)V + p 1 mob +c net/minecraft/world/entity/monster/Shulker$ShulkerDefenseAttackGoal ckj$c net/minecraft/class_1606$class_1609 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_7129 b method_7129 + m (Lnet/minecraft/world/entity/monster/Shulker;)V + p 1 shulker +c net/minecraft/world/entity/monster/Shulker$ShulkerLookControl ckj$d net/minecraft/class_1606$class_6376 + f Lnet/minecraft/world/entity/monster/Shulker; field_33766 h field_33766 + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/world/entity/Mob;)V + p 2 mob +c net/minecraft/world/entity/monster/Shulker$ShulkerNearestAttackGoal ckj$e net/minecraft/class_1606$class_1610 + f Lnet/minecraft/world/entity/monster/Shulker; field_7351 i field_7351 + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/world/entity/monster/Shulker;)V + p 2 shulker +c net/minecraft/world/entity/monster/Shulker$ShulkerPeekGoal ckj$f net/minecraft/class_1606$class_1611 + f Lnet/minecraft/world/entity/monster/Shulker; field_7353 a field_7353 + f I peekTime b field_7352 + m (Lnet/minecraft/world/entity/monster/Shulker;)V +c net/minecraft/world/entity/monster/Silverfish ckk net/minecraft/class_1614 + f Lnet/minecraft/world/entity/monster/Silverfish$SilverfishWakeUpFriendsGoal; friendsGoal b field_7366 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSilverfishSpawnRules b method_20684 + p 0 silverfish + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26922 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Silverfish$SilverfishMergeWithStoneGoal ckk$a net/minecraft/class_1614$class_1615 + f Lnet/minecraft/core/Direction; selectedDirection i field_7368 + f Z doMerge j field_7367 + m (Lnet/minecraft/world/entity/monster/Silverfish;)V + p 1 silverfish +c net/minecraft/world/entity/monster/Silverfish$SilverfishWakeUpFriendsGoal ckk$b net/minecraft/class_1614$class_1616 + f Lnet/minecraft/world/entity/monster/Silverfish; silverfish a field_7370 + f I lookForFriends b field_7369 + m ()V notifyHurt h method_7136 + m (Lnet/minecraft/world/entity/monster/Silverfish;)V + p 1 silverfish +c net/minecraft/world/entity/monster/Skeleton ckl net/minecraft/class_1613 + f Ljava/lang/String; CONVERSION_TAG b field_30495 + f I TOTAL_CONVERSION_TIME c field_41714 + f I conversionTime cc field_28644 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_STRAY_CONVERSION_ID d field_28642 + f I inPowderSnowTime e field_28643 + m (I)V startFreezeConversion b method_33589 + p 1 conversionTime + m ()Z isFreezeConverting gn method_33590 + m ()V doFreezeConversion go method_33591 + m (Z)V setFreezeConverting x method_35193 + p 1 isFrozen + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Slime ckm net/minecraft/class_1621 + f I MIN_SIZE b field_30496 + f I MAX_SIZE c field_30497 + f F squish cb field_7388 + f F oSquish cc field_7387 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_SIZE cd field_7390 + f Z wasOnGround ce field_7391 + f I MAX_NATURAL_SIZE d field_50136 + f F targetSquish e field_7389 + m (IZ)V setSize a method_7161 + p 1 size + p 2 resetHealth + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkSlimeSpawnRules c method_20685 + p 0 slime + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V decreaseSquish gg method_7156 + m ()Z isDealsDamage gh method_7163 + c Indicates weather the slime is able to damage the player (based upon the slime's size) + m ()F getAttackDamage gi method_7158 + m ()Lnet/minecraft/sounds/SoundEvent; getSquishSound gj method_7160 + m ()Lnet/minecraft/sounds/SoundEvent; getJumpSound gk method_7153 + m ()I getSize gl method_7152 + c Returns the size of the slime. + m ()Z isTiny gm method_7157 + m ()Z doPlayJumpSound gn method_7159 + c Returns {@code true} if the slime makes a sound when it jumps (based upon the slime's size) + m (Lnet/minecraft/world/entity/LivingEntity;)V dealDamage j method_7155 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_18451 k method_18451 + m ()F getSoundPitch s method_24353 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticleType t method_7162 + m ()I getJumpDelay x method_7154 + c Gets the amount of time the slime needs to wait between jumps. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Slime$SlimeAttackGoal ckm$a net/minecraft/class_1621$class_1622 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7393 + f I growTiredTimer b field_7392 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeFloatGoal ckm$b net/minecraft/class_1621$class_1623 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7394 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeKeepOnJumpingGoal ckm$c net/minecraft/class_1621$class_1624 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7395 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeMoveControl ckm$d net/minecraft/class_1621$class_1625 + f F yRot l field_7397 + f I jumpDelay m field_7399 + f Lnet/minecraft/world/entity/monster/Slime; slime n field_7396 + f Z isAggressive o field_7398 + m (D)V setWantedMovement a method_7164 + p 1 speed + m (FZ)V setDirection a method_7165 + p 1 yRot + p 2 aggressive + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/Slime$SlimeRandomDirectionGoal ckm$e net/minecraft/class_1621$class_1626 + f Lnet/minecraft/world/entity/monster/Slime; slime a field_7402 + f F chosenDegrees b field_7400 + f I nextRandomizeTime c field_7401 + m (Lnet/minecraft/world/entity/monster/Slime;)V + p 1 slime +c net/minecraft/world/entity/monster/SpellcasterIllager ckn net/minecraft/class_1617 + f I spellCastingTickCount b field_7372 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; currentSpell cc field_7371 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SPELL_CASTING_ID e field_7373 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell;)V setIsCastingSpell a method_7138 + p 1 currentSpell + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_7141 a method_7141 + m ()Lnet/minecraft/sounds/SoundEvent; getCastingSoundEvent gk method_7142 + m ()Z isCastingSpell gu method_7137 + m ()Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; getCurrentSpell gv method_7140 + m ()I getSpellCastingTime gw method_7139 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell ckn$a net/minecraft/class_1617$class_1618 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; NONE a field_7377 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; SUMMON_VEX b field_7379 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; FANGS c field_7380 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; WOLOLO d field_7381 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; DISAPPEAR e field_7382 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; BLINDNESS f field_7378 + f Ljava/util/function/IntFunction; BY_ID g field_41674 + f I id h field_7375 + f [D spellColor i field_7374 + f [Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; $VALUES j field_7376 + m ()[Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; $values a method_36658 + m (I)Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; byId a method_7144 + p 0 id + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell;)I method_47929 a method_47929 + m (Ljava/lang/String;IIDDD)V + p 3 id + p 4 red + p 6 green + p 8 blue + m ()V +c net/minecraft/world/entity/monster/SpellcasterIllager$SpellcasterCastingSpellGoal ckn$b net/minecraft/class_1617$class_1619 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager; field_7383 b field_7383 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)V +c net/minecraft/world/entity/monster/SpellcasterIllager$SpellcasterUseSpellGoal ckn$c net/minecraft/class_1617$class_1620 + f I attackWarmupDelay b field_7385 + f I nextAttackTickCount c field_7384 + f Lnet/minecraft/world/entity/monster/SpellcasterIllager; field_7386 d field_7386 + m ()I getCastingTime h method_7149 + m ()I getCastingInterval i method_7151 + m ()V performSpellCasting k method_7148 + m ()Lnet/minecraft/sounds/SoundEvent; getSpellPrepareSound l method_7150 + m ()Lnet/minecraft/world/entity/monster/SpellcasterIllager$IllagerSpell; getSpell m method_7147 + m ()I getCastWarmupTime n method_7146 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)V +c net/minecraft/world/entity/monster/Spider cko net/minecraft/class_1628 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID b field_7403 + f F SPIDER_SPECIAL_EFFECT_CHANCE c field_30498 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_56086 j method_56086 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26923 + m ()Z isClimbing x method_7167 + c Returns {@code true} if the WatchableObject (Byte) is 0x01 otherwise returns {@code false}. The WatchableObject is updated using setBesideClimbableBlock. + m (Z)V setClimbing x method_7166 + c Updates the WatchableObject (Byte) created in entityInit(), setting it to 0x01 if par1 is true or 0x00 if it is false. + p 1 climbing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Spider$SpiderAttackGoal cko$a net/minecraft/class_1628$class_1629 + m (Lnet/minecraft/world/entity/monster/Spider;)V + p 1 spider +c net/minecraft/world/entity/monster/Spider$SpiderEffectsGroupData cko$b net/minecraft/class_1628$class_1630 + f Lnet/minecraft/core/Holder; effect a field_7404 + m (Lnet/minecraft/util/RandomSource;)V setRandomEffect a method_7168 + p 1 random + m ()V +c net/minecraft/world/entity/monster/Spider$SpiderTargetGoal cko$c net/minecraft/class_1628$class_1631 + m (Lnet/minecraft/world/entity/monster/Spider;Ljava/lang/Class;)V + p 1 spider + p 2 entityTypeToTarget +c net/minecraft/world/entity/monster/Stray ckp net/minecraft/class_1627 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkStraySpawnRules a method_20686 + p 0 stray + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Strider ckq net/minecraft/class_4985 + f Lnet/minecraft/resources/ResourceLocation; SUFFOCATING_MODIFIER_ID cc field_42981 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SUFFOCATING_MODIFIER cd field_42982 + f F SUFFOCATE_STEERING_MODIFIER ce field_30499 + f F STEERING_MODIFIER cg field_30501 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BOOST_TIME ch field_23245 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SUFFOCATING ci field_23246 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SADDLE_ID cj field_23247 + f Lnet/minecraft/world/entity/ItemBasedSteering; steering ck field_23240 + f Lnet/minecraft/world/entity/ai/goal/TemptGoal; temptGoal cl field_23241 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/SpawnGroupData;)Lnet/minecraft/world/entity/SpawnGroupData; spawnJockey a method_30336 + p 1 serverLevel + p 2 difficulty + p 3 jockey + p 4 spawnData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/monster/Strider; getBreedOffspring b method_26343 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkStriderSpawnRules c method_26344 + p 0 strider + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()V floatStrider gk method_26347 + m (Lnet/minecraft/world/item/ItemStack;)Z method_58395 n method_58395 + m ()Z isSuffocating s method_26348 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26924 + m ()Z isBeingTempted x method_30079 + m (Z)V setSuffocating x method_26349 + p 1 suffocating + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Strider$StriderGoToLavaGoal ckq$a net/minecraft/class_4985$class_5494 + f Lnet/minecraft/world/entity/monster/Strider; strider g field_26632 + m (Lnet/minecraft/world/entity/monster/Strider;D)V + p 1 strider + p 2 speedModifier +c net/minecraft/world/entity/monster/Strider$StriderPathNavigation ckq$b net/minecraft/class_4985$class_4988 + m (Lnet/minecraft/world/entity/monster/Strider;Lnet/minecraft/world/level/Level;)V + p 1 strider + p 2 level +c net/minecraft/world/entity/monster/Vex ckr net/minecraft/class_1634 + f F FLAP_DEGREES_PER_TICK b field_30502 + f I TICKS_PER_FLAP c field_28645 + f Lnet/minecraft/world/entity/Mob; owner cc field_7411 + f Lnet/minecraft/core/BlockPos; boundOrigin cd field_7407 + f Z hasLimitedLife ce field_7409 + f I limitedLifeTicks cf field_7408 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_FLAGS_ID d field_7410 + f I FLAG_IS_CHARGING e field_30503 + m (IZ)V setVexFlag a method_7189 + p 1 mask + p 2 value + m (Lnet/minecraft/world/entity/Mob;)V setOwner a method_7178 + p 1 owner + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7183 a method_7183 + m (I)V setLimitedLife b method_7181 + p 1 limitedLifeTicks + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7174 b method_7174 + m (I)Z getVexFlag c method_7184 + p 1 mask + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7175 c method_7175 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7190 d method_7190 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7187 e method_7187 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7179 f method_7179 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/util/RandomSource; method_7180 g method_7180 + m ()Lnet/minecraft/core/BlockPos; getBoundOrigin gk method_7186 + m ()Z isCharging gl method_7176 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/world/entity/ai/control/MoveControl; method_7191 h method_7191 + m (Lnet/minecraft/core/BlockPos;)V setBoundOrigin h method_7188 + p 1 boundOrigin + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26925 + m ()Lnet/minecraft/world/entity/Mob; getOwner x method_7182 + m (Z)V setIsCharging x method_7177 + p 1 charging + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Vex$VexChargeAttackGoal ckr$a net/minecraft/class_1634$class_1635 + f Lnet/minecraft/world/entity/monster/Vex; field_7412 a field_7412 + m (Lnet/minecraft/world/entity/monster/Vex;)V +c net/minecraft/world/entity/monster/Vex$VexCopyOwnerTargetGoal ckr$b net/minecraft/class_1634$class_1636 + f Lnet/minecraft/world/entity/monster/Vex; field_7413 a field_7413 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; copyOwnerTargeting b field_18132 + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/world/entity/PathfinderMob;)V + p 2 mob +c net/minecraft/world/entity/monster/Vex$VexMoveControl ckr$c net/minecraft/class_1634$class_1637 + f Lnet/minecraft/world/entity/monster/Vex; field_7414 l field_7414 + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/world/entity/monster/Vex;)V + p 2 vex +c net/minecraft/world/entity/monster/Vex$VexRandomMoveGoal ckr$d net/minecraft/class_1634$class_1638 + f Lnet/minecraft/world/entity/monster/Vex; field_7415 a field_7415 + m (Lnet/minecraft/world/entity/monster/Vex;)V +c net/minecraft/world/entity/monster/Vindicator cks net/minecraft/class_1632 + f Ljava/lang/String; TAG_JOHNNY b field_30504 + f Z isJohnny cc field_7406 + f Ljava/util/function/Predicate; DOOR_BREAKING_PREDICATE e field_19014 + m (Lnet/minecraft/world/Difficulty;)Z method_20007 a method_20007 + m (Lnet/minecraft/world/entity/monster/Vindicator;)Lnet/minecraft/util/RandomSource; method_20257 a method_20257 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26926 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Vindicator$VindicatorBreakDoorGoal cks$a net/minecraft/class_1632$class_3761 + m (Lnet/minecraft/world/entity/Mob;)V +c net/minecraft/world/entity/monster/Vindicator$VindicatorJohnnyAttackGoal cks$b net/minecraft/class_1632$class_1633 + m (Lnet/minecraft/world/entity/monster/Vindicator;)V + p 1 vindicator +c net/minecraft/world/entity/monster/Witch ckt net/minecraft/class_1640 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_DRINKING_ID b field_7418 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_USING_ITEM cc field_7419 + f I usingTime cd field_7417 + f Lnet/minecraft/world/entity/ai/goal/target/NearestHealableRaiderTargetGoal; healRaidersGoal ce field_17283 + f Lnet/minecraft/world/entity/ai/goal/target/NearestAttackableWitchTargetGoal; attackPlayersGoal cf field_17284 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_DRINKING e field_7416 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_16474 j method_16474 + m ()Z isDrinkingPotion s method_7193 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes t method_26927 + m (Z)V setUsingItem z method_7192 + c Set whether this witch is aggressive at an entity. + p 1 usingItem + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/WitherSkeleton cku net/minecraft/class_1639 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/monster/Zoglin ckv net/minecraft/class_5136 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES b field_23731 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES c field_23733 + f I ATTACK_KNOCKBACK cc field_30505 + f F KNOCKBACK_RESISTANCE cd field_30506 + f I ATTACK_DAMAGE ce field_30507 + f F BABY_ATTACK_DAMAGE cf field_30508 + f I ATTACK_INTERVAL cg field_30509 + f I BABY_ATTACK_INTERVAL ch field_30510 + f I ATTACK_DURATION ci field_30511 + f F MOVEMENT_SPEED_WHEN_FIGHTING cj field_30512 + f F SPEED_MULTIPLIER_WHEN_IDLING ck field_30513 + f I attackAnimationRemainingTicks cl field_23732 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID d field_23734 + f I MAX_HEALTH e field_30514 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_26928 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_26929 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity c method_26930 + p 0 brain + m ()V playAngrySound gl method_26933 + m ()Ljava/util/Optional; findNearestValidAttackTarget gm method_26934 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isTargetable j method_26936 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget k method_26938 + p 1 target + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26937 + m ()Z isAdult t method_26939 + m ()V updateActivity x method_26931 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/Zombie ckw net/minecraft/class_1642 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_BABY_ID b field_7429 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_BABY c field_7430 + f I REINFORCEMENT_ATTEMPTS cc field_30515 + f I REINFORCEMENT_RANGE_MAX cd field_30516 + f I REINFORCEMENT_RANGE_MIN ce field_30517 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; ZOMBIE_REINFORCEMENT_CALLEE_CHARGE cf field_52016 + f Lnet/minecraft/resources/ResourceLocation; LEADER_ZOMBIE_BONUS_ID cg field_52017 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_RANDOM_SPAWN_BONUS_ID ch field_52193 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID ci field_7434 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SPECIAL_TYPE_ID cj field_7427 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DROWNED_CONVERSION_ID ck field_7425 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS cl field_47811 + f F BREAK_DOOR_CHANCE cm field_30518 + f Ljava/util/function/Predicate; DOOR_BREAKING_PREDICATE cn field_19015 + f Lnet/minecraft/world/entity/ai/goal/BreakDoorGoal; breakDoorGoal co field_7433 + f Z canBreakDoors cp field_7432 + f I inWaterTime cq field_7426 + f I conversionTime cr field_7424 + f Lnet/minecraft/resources/ResourceLocation; REINFORCEMENT_CALLER_CHARGE_ID d field_52018 + f F ZOMBIE_LEADER_CHANCE e field_30519 + m (F)V handleAttributes H method_7205 + p 1 difficulty + m (Lnet/minecraft/util/RandomSource;)Z getSpawnAsBabyOdds a method_29936 + p 0 random + m (Lnet/minecraft/world/Difficulty;)Z method_20009 a method_20009 + m (Lnet/minecraft/world/entity/monster/Zombie;)Lnet/minecraft/util/RandomSource; method_7210 a method_7210 + m ()V doUnderWaterConversion ag_ method_7218 + m ()Z isSunSensitive ah_ method_7216 + m (I)V startUnderWaterConversion b method_7213 + p 1 conversionTime + m (Lnet/minecraft/world/entity/EntityType;)V convertToZombieType b method_7200 + p 1 entityType + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound gk method_7207 + m ()Lnet/minecraft/world/item/ItemStack; getSkull gl method_7215 + m ()Z convertsInWater gm method_7209 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes go method_26940 + m ()Z isUnderWaterConverting gr method_7206 + m ()Z canBreakDoors gs method_7211 + m ()V randomizeReinforcementsChance gt method_6001 + m ()V addBehaviourGoals t method_7208 + m ()Z supportsBreakDoorGoal x method_7212 + m (Z)V setCanBreakDoors y method_7201 + c Sets or removes EntityAIBreakDoor task + p 1 canBreakDoors + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;)V + p 1 level + m ()V +c net/minecraft/world/entity/monster/Zombie$ZombieAttackTurtleEggGoal ckw$a net/minecraft/class_1642$class_1643 + f Lnet/minecraft/world/entity/monster/Zombie; field_7437 g field_7437 + m (Lnet/minecraft/world/entity/monster/Zombie;Lnet/minecraft/world/entity/PathfinderMob;DI)V + p 2 mob + p 3 speedModifier + p 5 verticalSearchRange +c net/minecraft/world/entity/monster/Zombie$ZombieGroupData ckw$b net/minecraft/class_1642$class_1644 + f Z isBaby a field_7439 + f Z canSpawnJockey b field_25607 + m (ZZ)V + p 1 isBaby + p 2 canSpawnJockey +c net/minecraft/world/entity/monster/ZombieVillager ckx net/minecraft/class_1641 + f Lorg/slf4j/Logger; LOGGER b field_36334 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_CONVERTING_ID c field_7423 + f I VILLAGER_CONVERSION_WAIT_MIN cf field_30523 + f I VILLAGER_CONVERSION_WAIT_MAX cg field_30520 + f I MAX_SPECIAL_BLOCKS_COUNT ch field_30521 + f I SPECIAL_BLOCK_RADIUS ci field_30522 + f I villagerConversionTime cj field_7422 + f Ljava/util/UUID; conversionStarter ck field_7421 + f Lnet/minecraft/nbt/Tag; gossips cl field_20299 + f Lnet/minecraft/world/item/trading/MerchantOffers; tradeOffers cm field_17047 + f I villagerXp cn field_18877 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VILLAGER_DATA d field_7420 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_7197 + p 1 serverLevel + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setTradeOffers a method_16916 + p 1 tradeOffers + m (Ljava/util/UUID;I)V startConverting a method_7199 + c Starts conversion of this zombie villager to a villager + p 1 conversionStarter + p 2 villagerConversionTime + m (Lnet/minecraft/core/Holder$Reference;)V method_40125 a method_40125 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28369 a method_28369 + m (Lnet/minecraft/nbt/Tag;)V setGossips a method_21649 + p 1 gossips + m (I)V setVillagerXp b method_19622 + p 1 villagerXp + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V method_56681 b method_56681 + m ()Z isConverting gu method_7198 + c Returns whether this zombie is in the process of converting to a villager + m ()I getVillagerXp gw method_35194 + m ()I getConversionProgress gx method_7194 + m (Lnet/minecraft/world/item/ItemStack;)Z method_60978 n method_60978 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/ZombifiedPiglin cky net/minecraft/class_1590 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS c field_47812 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_ATTACKING cf field_7307 + f Lnet/minecraft/util/valueproviders/UniformInt; FIRST_ANGER_SOUND_DELAY cg field_25382 + f I playFirstAngerSoundIn ch field_7308 + f Lnet/minecraft/util/valueproviders/UniformInt; PERSISTENT_ANGER_TIME ci field_25379 + f I remainingPersistentAngerTime cj field_25380 + f Ljava/util/UUID; persistentAngerTarget ck field_25381 + f I ALERT_RANGE_Y cl field_30524 + f Lnet/minecraft/util/valueproviders/UniformInt; ALERT_INTERVAL cm field_25609 + f I ticksUntilNextAlert cn field_25608 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_ATTACKING_ID d field_7311 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)V method_29937 a method_29937 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkZombifiedPiglinSpawnRules b method_20682 + p 0 zombifiedPiglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29938 b method_29938 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29939 c method_29939 + m (Lnet/minecraft/world/entity/monster/ZombifiedPiglin;)Z method_29940 d method_29940 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gu method_26941 + m ()V maybePlayFirstAngerSound gv method_30080 + m ()V maybeAlertOthers gw method_29941 + m ()V alertOthers gx method_29942 + m ()V playAngerSound gy method_29533 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/breeze/Breeze ckz net/minecraft/class_8949 + f Lnet/minecraft/world/entity/AnimationState; idle b field_47269 + f Lnet/minecraft/world/entity/AnimationState; slide c field_47277 + f Lnet/minecraft/world/entity/AnimationState; shoot cc field_47281 + f Lnet/minecraft/world/entity/AnimationState; inhale cd field_47270 + f I SLIDE_PARTICLES_AMOUNT ce field_47271 + f I IDLE_PARTICLES_AMOUNT cf field_47272 + f I JUMP_DUST_PARTICLES_AMOUNT cg field_47273 + f I JUMP_TRAIL_PARTICLES_AMOUNT ch field_47274 + f I JUMP_TRAIL_DURATION_TICKS ci field_47275 + f I JUMP_CIRCLE_DISTANCE_Y cj field_47276 + f F FALL_DISTANCE_SOUND_TRIGGER_THRESHOLD ck field_47278 + f I WHIRL_SOUND_FREQUENCY_MIN cl field_47813 + f I WHIRL_SOUND_FREQUENCY_MAX cm field_47814 + f I jumpTrailStartedTick cn field_47279 + f I soundTick co field_47815 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; PROJECTILE_DEFLECTION cp field_48344 + f Lnet/minecraft/world/entity/AnimationState; slideBack d field_47816 + f Lnet/minecraft/world/entity/AnimationState; longJump e field_47280 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56087 a method_56087 + m (I)V emitGroundParticles b method_55007 + p 1 count + m (Lnet/minecraft/world/phys/Vec3;)Z withinInnerCircleRange b method_55013 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_56560 c method_56560 + m (Lnet/minecraft/world/entity/Entity;)Z method_56561 d method_56561 + m ()V playWhirlSound gk method_55747 + m ()Ljava/util/Optional; getHurtBy gl method_56562 + m ()D getSnoutYPosition gm method_55009 + m ()V resetAnimations gn method_55010 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_55014 + m ()Lnet/minecraft/world/entity/monster/breeze/Breeze; resetJumpTrail t method_55015 + m ()V emitJumpTrailParticles x method_55008 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/breeze/Breeze$1 ckz$1 net/minecraft/class_8949$1 + f [I $SwitchMap$net$minecraft$world$entity$Pose a field_47282 + m ()V +c net/minecraft/world/entity/monster/breeze/BreezeAi cla net/minecraft/class_8950 + f F SPEED_MULTIPLIER_WHEN_SLIDING a field_47283 + f F JUMP_CIRCLE_INNER_RADIUS b field_47284 + f F JUMP_CIRCLE_MIDDLE_RADIUS c field_47285 + f F JUMP_CIRCLE_OUTER_RADIUS d field_47286 + f Ljava/util/List; SENSOR_TYPES e field_47287 + f Ljava/util/List; MEMORY_TYPES f field_47288 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_55018 + p 0 brain + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)V updateActivity a method_55748 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z method_60727 a method_60727 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_55016 + p 0 breeze + p 1 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_55750 + p 0 brain + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Ljava/util/Optional; method_55749 b method_55749 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity b method_55019 + p 0 breeze + p 1 brain + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/BreezeAi$SlideToTargetSink cla$a net/minecraft/class_8950$class_8951 + m (II)V +c net/minecraft/world/entity/monster/breeze/BreezeUtil clb net/minecraft/class_9075 + f D MAX_LINE_OF_SIGHT_TEST_RANGE a field_47817 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPointBehindTarget a method_55751 + p 0 target + p 1 random + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/phys/Vec3;)Z hasLineOfSight a method_55752 + p 0 breeze + p 1 pos + m ()V +c net/minecraft/world/entity/monster/breeze/LongJump clc net/minecraft/class_8952 + f I REQUIRED_AIR_BLOCKS_ABOVE c field_47289 + f I JUMP_COOLDOWN_TICKS d field_47291 + f I JUMP_COOLDOWN_WHEN_HURT_TICKS e field_47292 + f I INHALING_DURATION_TICKS f field_47293 + f F MAX_JUMP_VELOCITY g field_47294 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; ALLOWED_ANGLES h field_47295 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z canRun a method_58644 + p 0 level + p 1 breeze + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55021 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/BlockPos; snapToSurface a method_55023 + p 0 owner + p 1 targetPos + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z isFinishedInhaling a method_55024 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; calculateOptimalJumpVector a method_55025 + p 0 breeze + p 1 random + p 2 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z outOfAggroRange a method_55026 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_55028 a method_55028 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions b method_55020 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55030 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z isFinishedJumping b method_55031 + p 0 breeze + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z tooCloseForJump b method_55032 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)V method_55033 b method_55033 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z canJumpFromCurrentPosition c method_55029 + p 0 level + p 1 breeze + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V tick c method_55034 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V stop d method_55035 + p 1 level + p 2 entity + p 3 gameTime + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/Shoot cld net/minecraft/class_8953 + f I ATTACK_RANGE_MIN_SQRT c field_47296 + f I ATTACK_RANGE_MAX_SQRT d field_47297 + f I UNCERTAINTY_BASE e field_47298 + f I UNCERTAINTY_MULTIPLIER f field_47299 + f F PROJECTILE_MOVEMENT_SCALE g field_47300 + f I SHOOT_INITIAL_DELAY_TICKS h field_47301 + f I SHOOT_RECOVER_DELAY_TICKS i field_47302 + f I SHOOT_COOLDOWN_TICKS j field_47303 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55036 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55037 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z isFacingTarget a method_55038 + p 0 breeze + p 1 target + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Ljava/lang/Boolean;)Ljava/lang/Boolean; method_55039 a method_55039 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55040 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Z isTargetWithinRange b method_55041 + p 0 breeze + p 1 target + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V stop c method_55042 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)V method_55043 c method_55043 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V tick d method_55044 + p 1 level + p 2 owner + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Ljava/lang/Boolean; method_55045 d method_55045 + m ()V + m ()V +c net/minecraft/world/entity/monster/breeze/ShootWhenStuck cle net/minecraft/class_9035 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55501 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)Z canStillUse a method_55502 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start b method_55503 + m ()V +c net/minecraft/world/entity/monster/breeze/Slide clf net/minecraft/class_8954 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z checkExtraStartConditions a method_55046 + p 1 level + p 2 owner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/breeze/Breeze;J)V start a method_55047 + p 1 level + p 2 entity + p 3 gameTime + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/phys/Vec3; randomPointInMiddleCircle a method_55048 + p 0 breeze + p 1 target + m ()V +c net/minecraft/world/entity/monster/breeze/package-info clg net/minecraft/class_8955 +c net/minecraft/world/entity/monster/hoglin/Hoglin clh net/minecraft/class_4760 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cc field_22365 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cd field_22366 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IMMUNE_TO_ZOMBIFICATION ce field_23737 + f F PROBABILITY_OF_SPAWNING_AS_BABY cg field_30525 + f I MAX_HEALTH ch field_30526 + f F MOVEMENT_SPEED_WHEN_FIGHTING ci field_30527 + f I ATTACK_KNOCKBACK cj field_30528 + f F KNOCKBACK_RESISTANCE ck field_30529 + f I ATTACK_DAMAGE cl field_30530 + f F BABY_ATTACK_DAMAGE cm field_30531 + f I CONVERSION_TIME cn field_30532 + f I attackAnimationRemainingTicks co field_22368 + f I timeInOverworld cp field_23735 + f Z cannotBeHunted cq field_23736 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_26942 + p 1 serverLevel + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkHoglinSpawnRules c method_24349 + p 0 hoglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Z canBeHunted gl method_26945 + m ()Z isImmuneToZombification gm method_26946 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_26943 + m ()Z isAdult t method_24658 + m ()Z isConverting x method_26944 + m (Z)V setImmuneToZombification x method_26948 + p 1 immuneToZombification + m (Z)V setCannotBeHunted y method_26949 + p 1 cannotBeHunted + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/hoglin/HoglinAi cli net/minecraft/class_4835 + f I REPELLENT_DETECTION_RANGE_HORIZONTAL a field_30533 + f I REPELLENT_DETECTION_RANGE_VERTICAL b field_30534 + f Lnet/minecraft/util/valueproviders/UniformInt; RETREAT_DURATION c field_22369 + f I ATTACK_DURATION d field_30535 + f I DESIRED_DISTANCE_FROM_PIGLIN_WHEN_IDLING e field_30536 + f I DESIRED_DISTANCE_FROM_PIGLIN_WHEN_RETREATING f field_30537 + f I ATTACK_INTERVAL g field_30538 + f I BABY_ATTACK_INTERVAL h field_30539 + f I REPELLENT_PACIFY_TIME i field_30540 + f Lnet/minecraft/util/valueproviders/UniformInt; ADULT_FOLLOW_RANGE j field_25383 + f F SPEED_MULTIPLIER_WHEN_AVOIDING_REPELLENT k field_30541 + f F SPEED_MULTIPLIER_WHEN_RETREATING l field_30542 + f F SPEED_MULTIPLIER_WHEN_MAKING_LOVE m field_30543 + f F SPEED_MULTIPLIER_WHEN_IDLING n field_30544 + f F SPEED_MULTIPLIER_WHEN_FOLLOWING_ADULT o field_30545 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors a method_24662 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V method_24663 a method_24663 + m (Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_24668 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V updateActivity a method_24664 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V onHitTarget a method_24665 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; getSoundForActivity a method_30082 + p 0 hoglin + p 1 activity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/core/BlockPos;)Z isPosNearNearestRepellent a method_24669 + p 0 hoglin + p 1 pos + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)V method_24670 b method_24670 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_24666 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; getSoundForCurrentActivity b method_30083 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy b method_24672 + p 0 hoglin + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; method_30084 b method_30084 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_24673 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isPacified c method_24677 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastRetreat c method_24675 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity d method_24676 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/Optional; findNearestValidAttackTarget d method_24684 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V retreatFromNearestTarget d method_24678 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initRetreatActivity e method_24679 + p 0 brain + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z wantsToStopFleeing e method_25947 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAvoidTarget e method_24681 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z piglinsOutnumberHoglins f method_24686 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V maybeRetaliate f method_24683 + p 0 hoglin + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Ljava/util/List; getVisibleAdultHoglins g method_24690 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget g method_24685 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isNearRepellent h method_30085 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastAttackTarget h method_24687 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isBreeding i method_24691 + p 0 hoglin + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;Lnet/minecraft/world/entity/LivingEntity;)V setAttackTargetIfCloserThanCurrent i method_24689 + p 0 hoglin + p 1 target + m ()V + m ()V +c net/minecraft/world/entity/monster/hoglin/HoglinBase clj net/minecraft/class_5137 + f I ATTACK_ANIMATION_DURATION o_ field_30546 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z hurtAndThrowTarget a method_26950 + p 0 hoglin + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V throwTarget b method_26951 + p 0 hoglin + p 1 target + m ()I getAttackAnimationRemainingTicks gk method_24657 +c net/minecraft/world/entity/monster/hoglin/package-info clk net/minecraft/class_6064 +c net/minecraft/world/entity/monster/package-info cll net/minecraft/class_6065 +c net/minecraft/world/entity/monster/piglin/AbstractPiglin clm net/minecraft/class_5418 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IMMUNE_TO_ZOMBIFICATION b field_25758 + f I CONVERSION_TIME c field_30547 + f I timeInOverworld d field_25759 + m (Lnet/minecraft/server/level/ServerLevel;)V finishConversion a method_24694 + p 1 serverLevel + m ()Z isConverting gk method_30235 + m ()Z isAdult gl method_30236 + m ()Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; getArmPose gm method_24705 + m ()Z isHoldingMeleeWeapon gn method_30237 + m ()V playConvertedSound go method_30238 + m ()Z canHunt s method_26952 + m ()Z isImmuneToZombification t method_30234 + m ()V applyOpenDoorsAbility x method_30239 + m (Z)V setImmuneToZombification x method_30240 + p 1 immuneToZombification + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/Piglin cln net/minecraft/class_4836 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_22381 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BABY_ID cd field_22377 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_CHARGING_CROSSBOW ce field_22378 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_IS_DANCING cf field_25164 + f Lnet/minecraft/resources/ResourceLocation; SPEED_MODIFIER_BABY_ID cg field_22379 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; SPEED_MODIFIER_BABY ch field_22380 + f I MAX_HEALTH ci field_30548 + f F MOVEMENT_SPEED_WHEN_FIGHTING cj field_30549 + f I ATTACK_DAMAGE ck field_30550 + f F CHANCE_OF_WEARING_EACH_ARMOUR_ITEM cl field_30552 + f I MAX_PASSENGERS_ON_ONE_HOGLIN cm field_30553 + f F PROBABILITY_OF_SPAWNING_AS_BABY cn field_30554 + f Lnet/minecraft/world/entity/EntityDimensions; BABY_DIMENSIONS co field_47818 + f D PROBABILITY_OF_SPAWNING_WITH_CROSSBOW_INSTEAD_OF_SWORD cp field_30556 + f Lnet/minecraft/world/SimpleContainer; inventory cq field_22371 + f Z cannotHunt cr field_23738 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_22376 + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;)V maybeWearArmor a method_24696 + p 1 slot + p 2 stack + p 3 random + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/entity/Entity; getTopPassenger b method_26089 + p 1 vehicle + p 2 maxPosition + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/entity/MobSpawnType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z checkPiglinSpawnRules b method_24695 + p 0 piglin + p 1 level + p 2 spawnType + p 3 pos + p 4 random + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gr method_26953 + m ()Z isDancing gs method_29272 + m ()Lnet/minecraft/world/item/ItemStack; createSpawnWeapon gt method_24702 + m ()Z isChargingCrossbow gu method_24703 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; addToInventory n method_24711 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canAddToInventory o method_27085 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V holdInMainHand p method_24844 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V holdInOffHand q method_24845 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z canReplaceCurrentItem r method_24846 + p 1 candidate + m (Z)V setDancing y method_29274 + p 1 dancing + m (Z)V setCannotHunt z method_26954 + p 1 cannotHunt + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinAi clo net/minecraft/class_4838 + f Lnet/minecraft/util/valueproviders/UniformInt; AVOID_ZOMBIFIED_DURATION A field_25384 + f Lnet/minecraft/util/valueproviders/UniformInt; BABY_AVOID_NEMESIS_DURATION B field_25698 + f F PROBABILITY_OF_CELEBRATION_DANCE C field_30557 + f F SPEED_MULTIPLIER_WHEN_AVOIDING D field_30558 + f F SPEED_MULTIPLIER_WHEN_RETREATING E field_30559 + f F SPEED_MULTIPLIER_WHEN_MOUNTING F field_30560 + f F SPEED_MULTIPLIER_WHEN_GOING_TO_WANTED_ITEM G field_30561 + f F SPEED_MULTIPLIER_WHEN_GOING_TO_CELEBRATE_LOCATION H field_30562 + f F SPEED_MULTIPLIER_WHEN_DANCING I field_30563 + f F SPEED_MULTIPLIER_WHEN_IDLING J field_30564 + f I REPELLENT_DETECTION_RANGE_HORIZONTAL a field_30565 + f I REPELLENT_DETECTION_RANGE_VERTICAL b field_30566 + f Lnet/minecraft/world/item/Item; BARTERING_ITEM c field_23826 + f Lnet/minecraft/util/valueproviders/UniformInt; TIME_BETWEEN_HUNTS d field_22388 + f I PLAYER_ANGER_RANGE e field_30567 + f I ANGER_DURATION f field_30568 + f I ADMIRE_DURATION g field_30569 + f I MAX_DISTANCE_TO_WALK_TO_ITEM h field_30570 + f I MAX_TIME_TO_WALK_TO_ITEM i field_30571 + f I HOW_LONG_TIME_TO_DISABLE_ADMIRE_WALKING_IF_CANT_REACH_ITEM j field_30572 + f I CELEBRATION_TIME k field_30573 + f I BABY_FLEE_DURATION_AFTER_GETTING_HIT l field_30574 + f I HIT_BY_PLAYER_MEMORY_TIMEOUT m field_30575 + f I MAX_WALK_DISTANCE_TO_START_RIDING n field_30576 + f Lnet/minecraft/util/valueproviders/UniformInt; RIDE_START_INTERVAL o field_22389 + f Lnet/minecraft/util/valueproviders/UniformInt; RIDE_DURATION p field_22390 + f Lnet/minecraft/util/valueproviders/UniformInt; RETREAT_DURATION q field_22391 + f I MELEE_ATTACK_COOLDOWN r field_30577 + f I EAT_COOLDOWN s field_30578 + f I DESIRED_DISTANCE_FROM_ENTITY_WHEN_AVOIDING t field_30579 + f I MAX_LOOK_DIST u field_30580 + f I MAX_LOOK_DIST_FOR_PLAYER_HOLDING_LOVED_ITEM v field_30581 + f I INTERACTION_RANGE w field_30582 + f I MIN_DESIRED_DIST_FROM_TARGET_WHEN_HOLDING_CROSSBOW x field_30583 + f F SPEED_WHEN_STRAFING_BACK_FROM_TARGET y field_30584 + f I DESIRED_DISTANCE_FROM_ZOMBIFIED z field_30585 + m ()Lcom/google/common/collect/ImmutableList; createLookBehaviors a method_47272 + m (Lnet/minecraft/world/entity/EntityType;)Z isZombified a method_29534 + p 0 entityType + m (Lnet/minecraft/world/entity/LivingEntity;)Z isWearingGold a method_24719 + p 0 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z wantsToDance a method_29276 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/ai/Brain;Lnet/minecraft/world/entity/LivingEntity;)V method_29535 a method_29535 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_24721 a method_24721 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_24725 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/SetEntityLookTargetSometimes$Ticker;Lnet/minecraft/world/entity/LivingEntity;)Z method_47273 a method_47273 + m (Lnet/minecraft/world/entity/item/ItemEntity;)Lnet/minecraft/world/item/ItemStack; removeOneItemFromItemEntity a method_24848 + p 0 itemEntity + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V broadcastUniversalAnger a method_29945 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V maybeRetaliate a method_24759 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/player/Player;)V method_29944 a method_29944 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V updateActivity a method_24722 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/util/RandomSource;)V initMemories a method_24736 + p 0 piglin + p 1 random + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/Entity;)Z wantsToStopRiding a method_24723 + p 0 piglin + p 1 vehicle + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy a method_24724 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_24732 + p 0 piglin + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem a method_24726 + p 0 piglin + p 1 itemEntity + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; mobInteract a method_24728 + p 0 piglin + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/player/Player;Ljava/util/List;)V throwItemsTowardPlayer a method_24727 + p 0 piglin + p 1 player + p 2 stacks + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; getSoundForActivity a method_30087 + p 0 piglin + p 1 activity + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)Z wantsToPickup a method_24730 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;)V throwItems a method_24772 + p 0 pilgin + p 1 stacks + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;Lnet/minecraft/world/phys/Vec3;)V throwItemsTowardPos a method_24731 + p 0 piglin + p 1 stacks + p 2 pos + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Z)V stopHoldingOffHandItem a method_24741 + p 0 piglin + p 1 shouldBarter + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/monster/piglin/Piglin;)V method_24734 a method_24734 + m (Lnet/minecraft/world/entity/player/Player;Z)V angerNearbyPiglins a method_24733 + p 0 player + p 1 angerOnlyIfCanSee + m (Lnet/minecraft/world/item/ItemStack;)Z isLovedItem a method_24735 + p 0 item + m (ZLnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_24745 a method_24745 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleLookBehaviors b method_24717 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isPlayerHoldingLovedItem b method_24739 + p 0 player + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_24720 b method_24720 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_24740 b method_24740 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity b method_24743 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; getNearestVisibleTargetablePlayer b method_29947 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastAngerTarget b method_24742 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V cancelAdmiring b method_25948 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)Z isNearestValidAttackTarget b method_24755 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity b method_24751 + p 0 piglin + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/sounds/SoundEvent; method_30088 b method_30088 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)Z canAdmire b method_27086 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Ljava/util/List;)V throwItemsTowardRandomPos b method_24774 + p 0 piglin + p 1 stacks + m (Lnet/minecraft/world/item/ItemStack;)Z isBarterCurrency b method_24746 + p 0 stack + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors c method_24718 + m (Lnet/minecraft/world/entity/LivingEntity;)Z hasCrossbow c method_24748 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initCelebrateActivity c method_24756 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V dontKillAnyMoreHoglinsForAWhile c method_24762 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTarget c method_24750 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; getSoundForCurrentActivity c method_30091 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V broadcastRetreat c method_24767 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)V holdInOffhand c method_30089 + p 0 piglin + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFood c method_24752 + p 0 stack + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; avoidRepellent d method_24738 + m (Lnet/minecraft/world/entity/LivingEntity;)V admireGoldItem d method_24753 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initAdmireItemActivity d method_24760 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z isIdle d method_24766 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTargetToNearestTargetablePlayerIfFound d method_29946 + p 0 piglin + p 1 currentTarget + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/List; getVisibleAdultPiglins d method_24780 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V retreatFromNearestTarget d method_24771 + p 0 piglin + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/item/ItemStack;)V putInInventory d method_24849 + p 0 piglin + p 1 stack + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; babyAvoidNemesis e method_30090 + m (Lnet/minecraft/world/entity/LivingEntity;)Z seesPlayerHoldingLovedItem e method_24761 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initRetreatActivity e method_24764 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/List; getAdultPiglins e method_26350 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTargetIfCloserThanCurrent e method_24763 + p 0 piglin + p 1 currentTarget + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; getAvoidTarget e method_29536 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)V setAvoidTargetAndDontHuntForAWhile e method_24773 + p 0 piglin + p 1 target + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; avoidZombified f method_24747 + m (Lnet/minecraft/world/entity/LivingEntity;)Z doesntSeeAnyPlayerHoldingLovedItem f method_24765 + p 0 piglin + m (Lnet/minecraft/world/entity/ai/Brain;)V initRideHoglinActivity f method_24768 + p 0 brain + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; getAngerTarget f method_24782 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isBabyRidingBaby f method_29277 + p 0 passenger + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;Lnet/minecraft/world/entity/LivingEntity;)Z method_24775 f method_24775 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; babySometimesRideBabyHoglin g method_24737 + m (Lnet/minecraft/world/entity/LivingEntity;)Z wasHurtRecently g method_24769 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z method_30241 g method_30241 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/List; getBarterResponseItems g method_24776 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)V method_29943 h method_29943 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearZombified h method_29537 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Ljava/util/Optional; findNearestValidAttackTarget i method_24777 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearAvoidTarget j method_29538 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V stopWalking k method_24781 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z wantsToStopFleeing l method_24783 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z piglinsEqualOrOutnumberHoglins m method_24784 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z hoglinsOutnumberPiglins n method_24785 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)V eat o method_24787 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Lnet/minecraft/world/phys/Vec3; getRandomNearbyPos p method_24788 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z hasEatenRecently q method_24789 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isAdmiringItem r method_24790 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNearRepellent s method_24791 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isAdmiringDisabled t method_24714 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isHoldingItemInOffHand u method_24917 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z isNotHoldingLovedItemInOffHand v method_24850 + p 0 piglin + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_47274 w method_47274 + m (Lnet/minecraft/world/entity/monster/piglin/Piglin;)Z method_29275 x method_29275 + m ()V + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinArmPose clp net/minecraft/class_4837 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; ATTACKING_WITH_MELEE_WEAPON a field_25165 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; CROSSBOW_HOLD b field_22383 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; CROSSBOW_CHARGE c field_22384 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; ADMIRING_ITEM d field_22385 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; DANCING e field_25166 + f Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; DEFAULT f field_22386 + f [Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; $VALUES g field_22387 + m ()[Lnet/minecraft/world/entity/monster/piglin/PiglinArmPose; $values a method_36659 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinBrute clq net/minecraft/class_5419 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cc field_25760 + f I MAX_HEALTH cd field_30586 + f F MOVEMENT_SPEED_WHEN_FIGHTING ce field_30587 + f I ATTACK_DAMAGE cf field_30588 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES e field_25761 + m ()V playAngrySound gr method_30243 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes x method_30242 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/piglin/PiglinBruteAi clr net/minecraft/class_5420 + f I ANGER_DURATION a field_30589 + f I MELEE_ATTACK_COOLDOWN b field_30590 + f D ACTIVITY_SOUND_LIKELIHOOD_PER_TICK c field_30591 + f I MAX_LOOK_DIST d field_30592 + f I INTERACTION_RANGE e field_30593 + f D TARGETING_RANGE f field_30594 + f F SPEED_MULTIPLIER_WHEN_IDLING g field_30595 + f I HOME_CLOSE_ENOUGH_DISTANCE h field_30596 + f I HOME_TOO_FAR_DISTANCE i field_30597 + f I HOME_STROLL_AROUND_DISTANCE j field_30598 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleLookBehaviors a method_30244 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_30246 a method_30246 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Ljava/util/Optional; findNearestValidAttackTarget a method_30247 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)Z isNearestValidAttackTarget a method_30248 + p 0 piglinBrute + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)Ljava/util/Optional; getTargetIfWithinRange a method_30249 + p 0 piglinBrute + p 1 memoryType + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V initMemories a method_30250 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)V wasHurtBy a method_30251 + p 0 piglinBrute + p 1 target + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_30252 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/schedule/Activity;)V method_30253 a method_30253 + m ()Lnet/minecraft/world/entity/ai/behavior/RunOne; createIdleMovementBehaviors b method_30254 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;Lnet/minecraft/world/entity/LivingEntity;)Z method_30255 b method_30255 + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V updateActivity b method_30256 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)V setAngerTarget b method_35198 + p 0 piglinBrute + p 1 angerTarget + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity b method_30257 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V maybePlayActivitySound c method_30258 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/LivingEntity;)Z method_30259 c method_30259 + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity c method_30260 + p 0 piglinBrute + p 1 brain + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;)V playActivitySound d method_30261 + p 0 piglinBrute + m (Lnet/minecraft/world/entity/monster/piglin/PiglinBrute;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity d method_30262 + p 0 piglinBrute + p 1 brain + m ()V +c net/minecraft/world/entity/monster/piglin/RememberIfHoglinWasKilled cls net/minecraft/class_4819 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47275 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47276 a method_47276 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47277 a method_47277 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47278 a method_47278 + m ()V +c net/minecraft/world/entity/monster/piglin/StartAdmiringItemIfSeen clt net/minecraft/class_4823 + m (I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47279 + p 0 admireDuration + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47280 a method_47280 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47281 a method_47281 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47282 a method_47282 + m ()V +c net/minecraft/world/entity/monster/piglin/StartHuntingHoglin clu net/minecraft/class_4826 + m ()Lnet/minecraft/world/entity/ai/behavior/OneShot; create a method_47283 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47284 a method_47284 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/piglin/Piglin;J)Z method_47285 a method_47285 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47286 a method_47286 + m (Lnet/minecraft/world/entity/monster/piglin/AbstractPiglin;)Z hasHuntedRecently a method_47287 + p 0 piglin + m (Ljava/util/List;)V method_47288 a method_47288 + m (Ljava/util/List;)Ljava/lang/Boolean; method_47289 b method_47289 + m ()V +c net/minecraft/world/entity/monster/piglin/StopAdmiringIfItemTooFarAway clv net/minecraft/class_4827 + m (I)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47290 + p 0 maxDist + m (ILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47291 a method_47291 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47292 a method_47292 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47293 a method_47293 + m ()V +c net/minecraft/world/entity/monster/piglin/StopAdmiringIfTiredOfTryingToReachItem clw net/minecraft/class_5430 + m (II)Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47294 + p 0 maxTimeToReachItem + p 1 disableDuration + m (IILnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47295 a method_47295 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;IILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47296 a method_47296 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;J)Z method_47297 a method_47297 + m ()V +c net/minecraft/world/entity/monster/piglin/StopHoldingItemIfNoLongerAdmiring clx net/minecraft/class_4830 + m ()Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; create a method_47298 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/piglin/Piglin;J)Z method_47299 a method_47299 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47300 a method_47300 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47301 a method_47301 + m ()V +c net/minecraft/world/entity/monster/piglin/package-info cly net/minecraft/class_6066 +c net/minecraft/world/entity/monster/warden/AngerLevel clz net/minecraft/class_7253 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; CALM a field_38120 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; AGITATED b field_38121 + f Lnet/minecraft/world/entity/monster/warden/AngerLevel; ANGRY c field_38122 + f [Lnet/minecraft/world/entity/monster/warden/AngerLevel; SORTED_LEVELS d field_38123 + f I minimumAnger e field_38124 + f Lnet/minecraft/sounds/SoundEvent; ambientSound f field_38125 + f Lnet/minecraft/sounds/SoundEvent; listeningSound g field_38732 + f [Lnet/minecraft/world/entity/monster/warden/AngerLevel; $VALUES h field_38126 + m ()I getMinimumAnger a method_42170 + m (I)Lnet/minecraft/world/entity/monster/warden/AngerLevel; byAnger a method_42171 + p 0 anger + m (Lnet/minecraft/world/entity/monster/warden/AngerLevel;Lnet/minecraft/world/entity/monster/warden/AngerLevel;)I method_42172 a method_42172 + m ([Lnet/minecraft/world/entity/monster/warden/AngerLevel;)V method_42173 a method_42173 + m ()Lnet/minecraft/sounds/SoundEvent; getAmbientSound b method_42174 + m ()Lnet/minecraft/sounds/SoundEvent; getListeningSound c method_43103 + m ()Z isAngry d method_43691 + m ()[Lnet/minecraft/world/entity/monster/warden/AngerLevel; $values e method_42175 + m (Ljava/lang/String;IILnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 3 minimumAnger + p 4 ambientSound + p 5 listeningSound + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement cma net/minecraft/class_7254 + f I CONVERSION_DELAY a field_38733 + f I MAX_ANGER b field_38128 + f Ljava/util/ArrayList; suspects c field_38734 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; angerBySuspect d field_38130 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; angerByUuid e field_38735 + f I DEFAULT_ANGER_DECREASE f field_38129 + f I conversionDelay g field_38736 + f I highestAnger h field_39304 + f Lcom/mojang/serialization/Codec; SUSPECT_ANGER_PAIR i field_38737 + f Ljava/util/function/Predicate; filter j field_39114 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement$Sorter; suspectSorter k field_39115 + m ()Ljava/util/Optional; getActiveEntity a method_42181 + m (ILnet/minecraft/world/entity/Entity;Ljava/lang/Integer;)Ljava/lang/Integer; method_42177 a method_42177 + m (Lnet/minecraft/server/level/ServerLevel;)V convertFromUuids a method_43104 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Predicate;)V tick a method_42176 + p 1 level + p 2 predicate + m (Lnet/minecraft/world/entity/Entity;)V clearAnger a method_42178 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;I)I increaseAnger a method_42179 + p 1 entity + p 2 offset + m (Lcom/mojang/datafixers/util/Pair;)V method_43105 a method_43105 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43107 a method_43107 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;)Lcom/mojang/datafixers/util/Pair; method_43106 a method_43106 + m (Ljava/util/function/Predicate;)Lcom/mojang/serialization/Codec; codec a method_43692 + p 0 filter + m (Ljava/util/function/Predicate;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43693 a method_43693 + m (Ljava/util/function/Predicate;Ljava/util/List;)Lnet/minecraft/world/entity/monster/warden/AngerManagement; method_43694 a method_43694 + m ()Ljava/util/List; createUuidAngerPairs b method_43108 + m (Lnet/minecraft/world/entity/Entity;)I getActiveAnger b method_42185 + p 1 entity + m ()V sortAndUpdateHighestAnger c method_43998 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; method_42186 c method_42186 + m ()Lnet/minecraft/world/entity/Entity; getTopSuspect d method_42187 + m (Lnet/minecraft/world/entity/Entity;)Z method_42188 d method_42188 + m (Lnet/minecraft/world/entity/Entity;)Lcom/mojang/datafixers/util/Pair; method_43109 e method_43109 + m (Ljava/util/function/Predicate;Ljava/util/List;)V + p 1 filter + p 2 angerByUuid + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement$1 cma$1 net/minecraft/class_7254$1 + f [I $SwitchMap$net$minecraft$world$entity$Entity$RemovalReason a field_39116 + m ()V +c net/minecraft/world/entity/monster/warden/AngerManagement$Sorter cma$a net/minecraft/class_7254$class_7379 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement a comp_708 + m ()Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement a comp_708 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)I compare a method_43110 + p 1 first + p 2 second + m (Lnet/minecraft/world/entity/monster/warden/AngerManagement;)V +c net/minecraft/world/entity/monster/warden/Warden cmb net/minecraft/class_7260 + f Lnet/minecraft/world/entity/AnimationState; roarAnimationState b field_38168 + f I PROJECTILE_ANGER_DISTANCE cA field_39305 + f I tendrilAnimation cB field_38162 + f I tendrilAnimationO cD field_38163 + f I heartAnimation cE field_38164 + f I heartAnimationO cF field_38165 + f Lnet/minecraft/world/level/gameevent/DynamicGameEventListener; dynamicGameEventListener cG field_38166 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser cH field_44598 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData cI field_44599 + f Lnet/minecraft/world/entity/monster/warden/AngerManagement; angerManagement cJ field_38141 + f Lnet/minecraft/world/entity/AnimationState; sniffAnimationState c field_38169 + f Lnet/minecraft/world/entity/AnimationState; attackAnimationState cc field_38137 + f Lnet/minecraft/world/entity/AnimationState; sonicBoomAnimationState cd field_38859 + f Lorg/slf4j/Logger; LOGGER ce field_38138 + f I VIBRATION_COOLDOWN_TICKS cf field_38142 + f I TIME_TO_USE_MELEE_UNTIL_SONIC_BOOM cg field_38860 + f I MAX_HEALTH ch field_38143 + f F MOVEMENT_SPEED_WHEN_FIGHTING ci field_38144 + f F KNOCKBACK_RESISTANCE cj field_38145 + f F ATTACK_KNOCKBACK ck field_38146 + f I ATTACK_DAMAGE cl field_38147 + f Lnet/minecraft/network/syncher/EntityDataAccessor; CLIENT_ANGER_LEVEL cm field_38148 + f I DARKNESS_DISPLAY_LIMIT cn field_38149 + f I DARKNESS_DURATION co field_38150 + f I DARKNESS_RADIUS cp field_38151 + f I DARKNESS_INTERVAL cq field_38152 + f I ANGERMANAGEMENT_TICK_DELAY cr field_38153 + f I DEFAULT_ANGER cs field_38155 + f I PROJECTILE_ANGER ct field_38156 + f I ON_HURT_ANGER_BOOST cu field_39117 + f I RECENT_PROJECTILE_TICK_THRESHOLD cv field_38157 + f I TOUCH_COOLDOWN_TICKS cw field_38158 + f I DIGGING_PARTICLES_AMOUNT cx field_38159 + f F DIGGING_PARTICLES_DURATION cy field_38160 + f F DIGGING_PARTICLES_OFFSET cz field_38161 + f Lnet/minecraft/world/entity/AnimationState; emergeAnimationState d field_38135 + f Lnet/minecraft/world/entity/AnimationState; diggingAnimationState e field_38136 + m (F)F getTendrilAnimation H method_42223 + p 1 partialTick + m (F)F getHeartAnimation I method_42202 + p 1 partialTick + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;I)V applyDarknessAround a method_42204 + p 0 level + p 1 pos + p 2 source + p 3 radius + m (Lnet/minecraft/world/entity/AnimationState;)V clientDiggingParticles a method_42205 + p 1 animationState + m (Lnet/minecraft/world/entity/Entity;IZ)V increaseAngerAt a method_42212 + p 1 entity + p 2 offset + p 3 playListeningSound + m (Lnet/minecraft/world/entity/monster/warden/AngerManagement;)V method_42208 a method_42208 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Lnet/minecraft/world/entity/ai/Brain; method_51302 a method_51302 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_51303 a method_51303 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42669 a method_42669 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42209 b method_42209 + m (Lnet/minecraft/world/entity/Entity;)Z canTargetEntity c method_42206 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V clearAnger d method_42211 + p 1 entity + m (Ljava/lang/String;)V method_60979 d method_60979 + m (Lnet/minecraft/world/entity/Entity;)V increaseAngerAt e method_42213 + p 1 entity + m (Ljava/lang/String;)V method_60980 e method_60980 + m (Ljava/lang/String;)V method_60981 f method_60981 + m (Ljava/lang/String;)V method_60982 g method_60982 + m ()Ljava/util/Optional; getEntityAngryAt gk method_42215 + m ()Lnet/minecraft/world/entity/monster/warden/AngerManagement; getAngerManagement gl method_42216 + m ()Z isDiggingOrEmerging go method_43113 + m ()V syncClientAngerLevel gr method_42217 + m ()I getHeartBeatDelay gs method_42218 + m ()V playListeningSound gt method_42219 + m ()I getActiveAnger gu method_43999 + m (Lnet/minecraft/world/entity/LivingEntity;)V setAttackTarget j method_43274 + p 1 attackTarget + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes s method_42221 + m ()I getClientAngerLevel t method_42222 + m ()Lnet/minecraft/world/entity/monster/warden/AngerLevel; getAngerLevel x method_42214 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/monster/warden/Warden$1 cmb$1 net/minecraft/class_7260$1 + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/entity/monster/warden/Warden$1$1 cmb$1$1 net/minecraft/class_7260$1$1 + m (Lnet/minecraft/world/entity/monster/warden/Warden$1;Lnet/minecraft/world/level/pathfinder/NodeEvaluator;I)V +c net/minecraft/world/entity/monster/warden/Warden$2 cmb$2 net/minecraft/class_7260$2 + f [I $SwitchMap$net$minecraft$world$entity$Pose a field_38170 + m ()V +c net/minecraft/world/entity/monster/warden/Warden$VibrationUser cmb$a net/minecraft/class_7260$class_8507 + f Lnet/minecraft/world/entity/monster/warden/Warden; field_44600 a field_44600 + f I GAME_EVENT_LISTENER_RANGE b field_44601 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44602 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V +c net/minecraft/world/entity/monster/warden/WardenAi cmc net/minecraft/class_7261 + f I EMERGE_DURATION a field_38171 + f I ROAR_DURATION b field_38172 + f I DIGGING_COOLDOWN c field_38173 + f F SPEED_MULTIPLIER_WHEN_IDLING d field_38175 + f F SPEED_MULTIPLIER_WHEN_INVESTIGATING e field_38176 + f F SPEED_MULTIPLIER_WHEN_FIGHTING f field_38177 + f I MELEE_ATTACK_COOLDOWN g field_38178 + f I DIGGING_DURATION h field_38179 + f I SNIFFING_DURATION i field_38180 + f I DISTURBANCE_LOCATION_EXPIRY_TIME j field_38181 + f Ljava/util/List; SENSOR_TYPES k field_38416 + f Ljava/util/List; MEMORY_TYPES l field_38417 + f Lnet/minecraft/world/entity/ai/behavior/BehaviorControl; DIG_COOLDOWN_SETTER m field_38182 + m (Lnet/minecraft/world/entity/LivingEntity;)V setDigCooldown a method_42225 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z method_42232 a method_42232 + m (Lnet/minecraft/world/entity/ai/Brain;)V initCoreActivity a method_42227 + p 0 brain + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47302 a method_47302 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;)Lnet/minecraft/world/entity/ai/behavior/declarative/Trigger; method_47303 a method_47303 + m (Lnet/minecraft/world/entity/ai/behavior/declarative/BehaviorBuilder$Instance;Lnet/minecraft/world/entity/ai/behavior/declarative/MemoryAccessor;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/monster/warden/Warden;J)Z method_47304 a method_47304 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)V updateActivity a method_42228 + p 0 warden + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z isTarget a method_42229 + p 0 warden + p 1 entity + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/ai/Brain;)V initFightActivity a method_42236 + p 0 warden + p 1 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/entity/ai/Brain; makeBrain a method_42230 + p 0 warden + p 1 ops + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/core/BlockPos;)V setDisturbanceLocation a method_42231 + p 0 warden + p 1 disturbanceLocation + m (Lnet/minecraft/world/entity/ai/Brain;)V initEmergeActivity b method_42233 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)V onTargetInvalid b method_42235 + p 0 warden + p 1 target + m (Lnet/minecraft/world/entity/ai/Brain;)V initDiggingActivity c method_42237 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_42241 c method_42241 + m (Lnet/minecraft/world/entity/ai/Brain;)V initIdleActivity d method_42240 + p 0 brain + m (Lnet/minecraft/world/entity/monster/warden/Warden;Lnet/minecraft/world/entity/LivingEntity;)Z method_42243 d method_42243 + m (Lnet/minecraft/world/entity/ai/Brain;)V initInvestigateActivity e method_42242 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initSniffingActivity f method_42244 + p 0 brain + m (Lnet/minecraft/world/entity/ai/Brain;)V initRoarActivity g method_42245 + p 0 brain + m ()V + m ()V +c net/minecraft/world/entity/monster/warden/WardenSpawnTracker cmd net/minecraft/class_7262 + f Lcom/mojang/serialization/Codec; CODEC a field_38183 + f I MAX_WARNING_LEVEL b field_38184 + f D PLAYER_SEARCH_RADIUS c field_38738 + f I WARNING_CHECK_DIAMETER d field_38186 + f I DECREASE_WARNING_LEVEL_EVERY_INTERVAL e field_38187 + f I WARNING_LEVEL_INCREASE_COOLDOWN f field_38188 + f I ticksSinceLastWarning g field_38194 + f I warningLevel h field_38195 + f I cooldownTicks i field_38196 + m ()V tick a method_42247 + m (I)V setWarningLevel a method_42248 + p 1 warningLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z hasNearbyWarden a method_42259 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/OptionalInt; tryWarn a method_42250 + p 0 level + p 1 pos + p 2 player + m (Lnet/minecraft/server/level/ServerPlayer;)Ljava/util/stream/Stream; method_45380 a method_45380 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V copyData a method_42252 + p 1 other + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;Lnet/minecraft/server/level/ServerPlayer;)V method_44002 a method_44002 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)V method_45381 a method_45381 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42254 a method_42254 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerPlayer;)Z method_42255 a method_42255 + m ()V reset b method_42258 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/List; getNearbyPlayers b method_42265 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_44001 b method_44001 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42263 b method_42263 + m ()I getWarningLevel c method_42267 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42266 c method_42266 + m ()Z onCooldown d method_44003 + m (Lnet/minecraft/world/entity/monster/warden/WardenSpawnTracker;)Ljava/lang/Integer; method_42269 d method_42269 + m ()V increaseWarningLevel e method_42261 + m ()V decreaseWarningLevel f method_42264 + m (III)V + p 1 ticksSinceLastWarning + p 2 warningLevel + p 3 cooldownTicks + m ()V +c net/minecraft/world/entity/monster/warden/package-info cme net/minecraft/class_7263 +c net/minecraft/world/entity/npc/AbstractVillager cmf net/minecraft/class_3988 + f I VILLAGER_SLOT_OFFSET cc field_30599 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers cd field_17721 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_UNHAPPY_COUNTER ce field_19295 + f Lorg/slf4j/Logger; LOGGER cf field_48833 + f I VILLAGER_INVENTORY_SIZE cg field_30600 + f Lnet/minecraft/world/entity/player/Player; tradingPlayer ch field_17722 + f Lnet/minecraft/world/SimpleContainer; inventory ci field_17723 + m (Lnet/minecraft/world/item/trading/MerchantOffers;[Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;I)V addOffersFromItemListings a method_19170 + c Adds limited numbers of trades to the given {@link net.minecraft.world.item.trading.MerchantOffers}. + p 1 givenMerchantOffers + p 2 newTrades + p 3 maxNumbers + m (Lnet/minecraft/core/particles/ParticleOptions;)V addParticlesAroundSelf a method_18007 + p 1 particleOption + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V rewardTradeXp b method_18008 + p 1 offer + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V method_56682 b method_56682 + m ()Z isTrading gl method_18009 + m ()V playCelebrateSound gp method_20010 + m ()V stopTrading gq method_19181 + m ()V updateTrades gr method_7237 + m ()I getUnhappyCounter s method_20506 + m (I)V setUnhappyCounter s method_20507 + p 1 unhappyCounter + m (Z)Lnet/minecraft/sounds/SoundEvent; getTradeUpdatedSound x method_18012 + p 1 isYesSound + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/npc/CatSpawner cmg net/minecraft/class_4274 + f I TICK_DELAY a field_30601 + f I nextTick b field_19171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I spawnInVillage a method_20263 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)I spawnCat a method_20262 + p 1 pos + p 2 serverLevel + m (Lnet/minecraft/core/Holder;)Z method_44004 a method_44004 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)I spawnInHut b method_20260 + p 1 serverLevel + p 2 pos + m ()V +c net/minecraft/world/entity/npc/ClientSideMerchant cmh net/minecraft/class_1645 + f Lnet/minecraft/world/entity/player/Player; source a field_7441 + f Lnet/minecraft/world/item/trading/MerchantOffers; offers b field_7442 + f I xp c field_18525 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 source +c net/minecraft/world/entity/npc/InventoryCarrier cmi net/minecraft/class_6067 + f Ljava/lang/String; TAG_INVENTORY e_ field_40736 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/npc/InventoryCarrier;Lnet/minecraft/world/entity/item/ItemEntity;)V pickUpItem a method_43544 + p 0 mob + p 1 carrier + p 2 itemEntity + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V readInventoryFromTag a method_46400 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V writeInventoryToTag b method_46399 + p 1 tag + p 2 levelRegistry + m ()Lnet/minecraft/world/SimpleContainer; getInventory x method_35199 +c net/minecraft/world/entity/npc/Npc cmj net/minecraft/class_1655 +c net/minecraft/world/entity/npc/Villager cmk net/minecraft/class_1646 + f J lastGossipDecayTime cA field_19357 + f I villagerXp cB field_18536 + f J lastRestockGameTime cD field_18537 + f I numberOfRestocksToday cE field_19427 + f J lastRestockCheckDayTime cF field_20332 + f Z assignProfessionWhenSpawned cG field_25167 + f Lcom/google/common/collect/ImmutableList; MEMORY_TYPES cH field_18538 + f Lcom/google/common/collect/ImmutableList; SENSOR_TYPES cI field_18539 + f I BREEDING_FOOD_THRESHOLD ce field_30602 + f Ljava/util/Map; FOOD_POINTS cf field_18526 + c Mapping between valid food items and their respective efficiency values. + f F SPEED_MODIFIER cg field_30603 + f Ljava/util/Map; POI_MEMORIES ch field_18851 + f Lorg/slf4j/Logger; LOGGER ci field_36335 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_VILLAGER_DATA cj field_7445 + f I TRADES_PER_LEVEL ck field_30604 + f Ljava/util/Set; WANTED_ITEMS cl field_18527 + c Defaults items a villager regardless of its profession can pick up. + f I MAX_GOSSIP_TOPICS cm field_30605 + f I GOSSIP_COOLDOWN cn field_30606 + f I GOSSIP_DECAY_INTERVAL co field_30607 + f I REPUTATION_CHANGE_PER_EVENT cp field_30608 + f I HOW_FAR_AWAY_TO_TALK_TO_OTHER_VILLAGERS_ABOUT_GOLEMS cq field_30609 + f I HOW_MANY_VILLAGERS_NEED_TO_AGREE_TO_SPAWN_A_GOLEM cr field_30610 + f J TIME_SINCE_SLEEPING_FOR_GOLEM_SPAWNING cs field_30611 + f I updateMerchantTimer ct field_18528 + f Z increaseProfessionLevelOnUpdate cu field_18529 + f Lnet/minecraft/world/entity/player/Player; lastTradedPlayer cv field_18530 + f Z chasing cw field_30612 + f I foodLevel cx field_18533 + f Lnet/minecraft/world/entity/ai/gossip/GossipContainer; gossips cy field_18534 + f J lastGossipTime cz field_18535 + m (J)Z wantsToSpawnGolem a method_20687 + p 1 gameTime + m (JLnet/minecraft/world/entity/npc/Villager;)Z method_20693 a method_20693 + m (Lnet/minecraft/server/level/ServerLevel;)V refreshBrain a method_19179 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;JI)V spawnGolemIfNeeded a method_20688 + p 1 serverLevel + p 2 gameTime + p 4 minVillagerAmount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)V method_20699 a method_20699 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/Villager;J)V gossip a method_19177 + p 1 serverLevel + p 2 target + p 3 gameTime + m (Lnet/minecraft/world/SimpleContainer;Ljava/util/Map$Entry;)I method_19172 a method_19172 + m (Lnet/minecraft/world/entity/ai/Brain;)V registerBrainGoals a method_19174 + p 1 villagerBrain + m (Lnet/minecraft/world/entity/ai/gossip/GossipType;)Z method_20593 a method_20593 + m (Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;)V releasePoi a method_19176 + p 1 moduleType + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19520 a method_19520 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/entity/ai/memory/MemoryModuleType;Lnet/minecraft/core/GlobalPos;)V method_19178 a method_19178 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28370 a method_28370 + m (Lnet/minecraft/nbt/Tag;)V setGossips a method_21650 + p 1 gossip + m (J)Z golemSpawnConditionsMet b method_20741 + p 1 gameTime + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/AgeableMob;)Lnet/minecraft/world/entity/npc/Villager; getBreedOffspring b method_7225 + p 1 level + p 2 otherParent + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_29278 b method_29278 + m (Lnet/minecraft/world/entity/npc/VillagerData;)V method_56683 b method_56683 + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setOffers b method_16917 + p 1 offers + m (Lnet/minecraft/world/entity/Entity;)V tellWitnessesThatIWasMurdered c method_20690 + p 1 murderer + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19521 c method_19521 + m (Lnet/minecraft/world/entity/npc/Villager;Lnet/minecraft/core/Holder;)Z method_19522 d method_19522 + m (Lnet/minecraft/world/entity/player/Player;)I getPlayerReputation f method_20594 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)V startTrading g method_19191 + p 1 player + m ()Z isChasing gA method_35200 + m ()V eatAndDigestFood gB method_20697 + m ()Z hasExcessFood gC method_7234 + c Used by {@link net.minecraft.world.entity.ai.behavior.TradeWithVillager} to check if the villager can give some items from an inventory to another villager. + m ()Z wantsMoreFood gD method_7239 + m ()Z hasFarmSeeds gE method_19623 + c Returns {@code true} if villager has seeds, potatoes or carrots in inventory + m ()Lnet/minecraft/world/entity/ai/gossip/GossipContainer; getGossips gF method_21651 + m ()V setUnhappy gG method_20264 + m ()V resetSpecialPrices gH method_19187 + m ()V resendOffersToTradingPlayer gI method_49695 + m ()Z needsToRestock gJ method_20823 + m ()Z allowedToRestock gK method_20824 + m ()V catchUpDemand gL method_21723 + m ()V updateDemand gM method_21724 + m ()V releaseAllPois gN method_30958 + m ()Z hungry gO method_20698 + m ()V eatUntilFull gP method_19185 + m ()Z shouldIncreaseLevel gQ method_19188 + m ()V increaseMerchantCareer gR method_16918 + m ()I countFoodPointsInInventory gS method_19189 + c @return calculated food value from item stacks in this villager's inventory + m ()V maybeDecayGossip gT method_20696 + m ()V resetNumberOfRestocks gU method_20821 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes gt method_26955 + m ()Z assignProfessionWhenSpawned gu method_29279 + m ()V restock gx method_19182 + m ()Z shouldRestock gy method_20822 + m ()V playWorkSound gz method_19183 + m (Lnet/minecraft/world/entity/player/Player;)V updateSpecialPrices h method_19192 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)Z method_51304 o method_51304 + m (I)V setVillagerXp u method_19625 + p 1 villagerXp + m (I)V digestFood v method_19193 + p 1 qty + m (Z)V setChasing y method_35201 + p 1 chasing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/npc/VillagerType;)V + p 1 entityType + p 2 level + p 3 villagerType + m ()V +c net/minecraft/world/entity/npc/VillagerData cml net/minecraft/class_3850 + f I MIN_VILLAGER_LEVEL a field_30613 + f I MAX_VILLAGER_LEVEL b field_30614 + f Lcom/mojang/serialization/Codec; CODEC c field_24669 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48345 + f [I NEXT_LEVEL_XP_THRESHOLDS e field_18540 + f Lnet/minecraft/world/entity/npc/VillagerType; type f field_17048 + f Lnet/minecraft/world/entity/npc/VillagerProfession; profession g field_17049 + f I level h field_17050 + m ()Lnet/minecraft/world/entity/npc/VillagerType; getType a method_16919 + m (I)Lnet/minecraft/world/entity/npc/VillagerData; setLevel a method_16920 + p 1 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Ljava/lang/Integer; method_56089 a method_56089 + m (Lnet/minecraft/world/entity/npc/VillagerProfession;)Lnet/minecraft/world/entity/npc/VillagerData; setProfession a method_16921 + p 1 profession + m (Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerData; setType a method_16922 + p 1 type + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28372 a method_28372 + m ()Lnet/minecraft/world/entity/npc/VillagerProfession; getProfession b method_16924 + m (I)I getMinXpPerLevel b method_19194 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerProfession; method_56090 b method_56090 + m ()I getLevel c method_16925 + m (I)I getMaxXpPerLevel c method_19195 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerType; method_56091 c method_56091 + m ()Lnet/minecraft/world/entity/npc/VillagerProfession; method_29948 d method_29948 + m (I)Z canLevelUp d method_19196 + p 0 level + m (Lnet/minecraft/world/entity/npc/VillagerData;)Ljava/lang/Integer; method_28371 d method_28371 + m ()Lnet/minecraft/world/entity/npc/VillagerType; method_29949 e method_29949 + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerProfession; method_28373 e method_28373 + m (Lnet/minecraft/world/entity/npc/VillagerData;)Lnet/minecraft/world/entity/npc/VillagerType; method_28374 f method_28374 + m (Lnet/minecraft/world/entity/npc/VillagerType;Lnet/minecraft/world/entity/npc/VillagerProfession;I)V + p 1 type + p 2 profession + p 3 level + m ()V +c net/minecraft/world/entity/npc/VillagerDataHolder cmm net/minecraft/class_3851 + m ()Lnet/minecraft/world/entity/npc/VillagerType; getVariant a method_47882 + m (Lnet/minecraft/world/entity/npc/VillagerData;)V setVillagerData a method_7195 + p 1 data + m (Lnet/minecraft/world/entity/npc/VillagerType;)V setVariant a method_47883 + p 1 variant + m ()Lnet/minecraft/world/entity/npc/VillagerData; getVillagerData gv method_7231 +c net/minecraft/world/entity/npc/VillagerProfession cmn net/minecraft/class_3852 + c @param requestedItems Defines items villagers of this profession can pick up and use.\n@param secondaryPoi World blocks this profession interacts with. + f Ljava/util/function/Predicate; ALL_ACQUIRABLE_JOBS a field_39308 + f Lnet/minecraft/world/entity/npc/VillagerProfession; NONE b field_17051 + f Lnet/minecraft/world/entity/npc/VillagerProfession; ARMORER c field_17052 + f Lnet/minecraft/world/entity/npc/VillagerProfession; BUTCHER d field_17053 + f Lnet/minecraft/world/entity/npc/VillagerProfession; CARTOGRAPHER e field_17054 + f Lnet/minecraft/world/entity/npc/VillagerProfession; CLERIC f field_17055 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FARMER g field_17056 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FISHERMAN h field_17057 + f Lnet/minecraft/world/entity/npc/VillagerProfession; FLETCHER i field_17058 + f Lnet/minecraft/world/entity/npc/VillagerProfession; LEATHERWORKER j field_17059 + f Lnet/minecraft/world/entity/npc/VillagerProfession; LIBRARIAN k field_17060 + f Lnet/minecraft/world/entity/npc/VillagerProfession; MASON l field_17061 + f Lnet/minecraft/world/entity/npc/VillagerProfession; NITWIT m field_17062 + f Lnet/minecraft/world/entity/npc/VillagerProfession; SHEPHERD n field_17063 + f Lnet/minecraft/world/entity/npc/VillagerProfession; TOOLSMITH o field_17064 + f Lnet/minecraft/world/entity/npc/VillagerProfession; WEAPONSMITH p field_17065 + f Ljava/lang/String; name q comp_818 + f Ljava/util/function/Predicate; heldJobSite r comp_819 + f Ljava/util/function/Predicate; acquirableJobSite s comp_820 + f Lcom/google/common/collect/ImmutableSet; requestedItems t comp_821 + c Defines items villagers of this profession can pick up and use. + f Lcom/google/common/collect/ImmutableSet; secondaryPoi u comp_822 + c World blocks this profession interacts with. + f Lnet/minecraft/sounds/SoundEvent; workSound v comp_823 + m ()Ljava/lang/String; name a comp_818 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44321 a method_44321 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_16926 + p 0 name + p 1 jobSite + p 2 workSound + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_19197 + p 0 name + p 1 jobSite + p 2 requestedItems + p 3 secondaryPoi + p 4 workSound + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_44007 + p 0 name + p 1 heldJobSite + p 2 acquirableJobSites + p 3 workSound + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/world/entity/npc/VillagerProfession; register a method_44008 + p 0 name + p 1 heldJobSite + p 2 acquirableJobSites + p 3 requestedItems + p 4 secondaryPoi + p 5 workSound + m (Lnet/minecraft/core/Holder;)Z method_44006 a method_44006 + m ()Ljava/util/function/Predicate; heldJobSite b comp_819 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44005 b method_44005 + m ()Ljava/util/function/Predicate; acquirableJobSite c comp_820 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44322 c method_44322 + m ()Lcom/google/common/collect/ImmutableSet; requestedItems d comp_821 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;)Z method_44009 d method_44009 + m ()Lcom/google/common/collect/ImmutableSet; secondaryPoi e comp_822 + m ()Lnet/minecraft/sounds/SoundEvent; workSound f comp_823 + m (Ljava/lang/String;Ljava/util/function/Predicate;Ljava/util/function/Predicate;Lcom/google/common/collect/ImmutableSet;Lcom/google/common/collect/ImmutableSet;Lnet/minecraft/sounds/SoundEvent;)V + p 1 name + p 2 heldJobSite + p 3 acquirableJobSite + p 4 requestedItems + c Defines items villagers of this profession can pick up and use. + p 5 secondaryPoi + c World blocks this profession interacts with. + p 6 workSound + m ()V +c net/minecraft/world/entity/npc/VillagerTrades cmo net/minecraft/class_3853 + f Ljava/util/Map; TRADES a field_17067 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; WANDERING_TRADER_TRADES b field_17724 + f Ljava/util/Map; EXPERIMENTAL_TRADES c field_45128 + f Ljava/util/List; EXPERIMENTAL_WANDERING_TRADER_TRADES d field_45129 + f I DEFAULT_SUPPLY e field_30615 + f I COMMON_ITEMS_SUPPLY f field_30616 + f I UNCOMMON_ITEMS_SUPPLY g field_30617 + f I XP_LEVEL_1_SELL h field_30618 + f I XP_LEVEL_1_BUY i field_30619 + f I XP_LEVEL_2_SELL j field_30620 + f I XP_LEVEL_2_BUY k field_30621 + f I XP_LEVEL_3_SELL l field_30622 + f I XP_LEVEL_3_BUY m field_30623 + f I XP_LEVEL_4_SELL n field_30624 + f I XP_LEVEL_4_BUY o field_30625 + f I XP_LEVEL_5_TRADE p field_30626 + f F LOW_TIER_PRICE_MULTIPLIER q field_30627 + f F HIGH_TIER_PRICE_MULTIPLIER r field_30628 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; DESERT_MAP s field_46167 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SAVANNA_MAP t field_46168 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; PLAINS_MAP u field_46169 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; TAIGA_MAP v field_46170 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SNOWY_MAP w field_46171 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; JUNGLE_MAP x field_46172 + f Lnet/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds; SWAMP_MAP y field_46173 + m ()Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; specialBooks a method_52551 + m (I)Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; commonBooks a method_52552 + p 0 villagerXp + m (Lcom/google/common/collect/ImmutableMap;)Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; toIntMap a method_16928 + p 0 map + m (Ljava/util/HashMap;)V method_16929 a method_16929 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/trading/ItemCost; potionCost a method_57311 + p 0 potion + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPredicate$Builder;)Lnet/minecraft/core/component/DataComponentPredicate$Builder; method_57312 a method_57312 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; potion b method_52553 + p 0 potion + m ()V + m ()V +c net/minecraft/world/entity/npc/VillagerTrades$DyedArmorForEmeralds cmo$a net/minecraft/class_3853$class_4160 + f Lnet/minecraft/world/item/Item; item a field_18544 + f I value b field_18545 + f I maxUses c field_18546 + f I villagerXp d field_18547 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/DyeItem; getRandomDye a method_19200 + p 0 random + m (Lnet/minecraft/world/item/Item;I)V + p 1 item + p 2 value + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 value + p 3 maxUses + p 4 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$EmeraldForItems cmo$b net/minecraft/class_3853$class_4161 + f Lnet/minecraft/world/item/trading/ItemCost; itemStack a field_45130 + f I maxUses b field_18550 + f I villagerXp c field_18551 + f I emeraldAmount d field_18549 + f F priceMultiplier e field_18552 + m (Lnet/minecraft/world/level/ItemLike;III)V + p 1 item + p 2 cost + p 3 maxUses + p 4 villagerXp + m (Lnet/minecraft/world/level/ItemLike;IIII)V + p 1 item + p 2 cost + p 3 maxUses + p 4 villagerXp + p 5 emeraldAmount + m (Lnet/minecraft/world/item/trading/ItemCost;III)V + p 1 itemStack + p 2 maxUses + p 3 villagerXp + p 4 emeraldAmount +c net/minecraft/world/entity/npc/VillagerTrades$EmeraldsForVillagerTypeItem cmo$c net/minecraft/class_3853$class_4162 + f Ljava/util/Map; trades a field_18553 + f I cost b field_18554 + f I maxUses c field_18555 + f I villagerXp d field_18556 + m (Lnet/minecraft/world/entity/npc/VillagerType;)V method_19201 a method_19201 + m (Ljava/util/Map;Lnet/minecraft/world/entity/npc/VillagerType;)Z method_19202 a method_19202 + m (IIILjava/util/Map;)V + p 1 cost + p 2 maxUses + p 3 villagerXp + p 4 trades +c net/minecraft/world/entity/npc/VillagerTrades$EnchantBookForEmeralds cmo$d net/minecraft/class_3853$class_1648 + f I villagerXp a field_18557 + f Lnet/minecraft/tags/TagKey; tradeableEnchantments b field_45131 + f I minLevel c field_45132 + f I maxLevel d field_45133 + m (ILnet/minecraft/tags/TagKey;)V + p 1 villagerXp + p 2 tradeableEnchantments + m (IIILnet/minecraft/tags/TagKey;)V + p 1 villagerXp + p 2 minLevel + p 3 maxLevel + p 4 tradeableEnchantments +c net/minecraft/world/entity/npc/VillagerTrades$EnchantedItemForEmeralds cmo$e net/minecraft/class_3853$class_4163 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_18558 + f I baseEmeraldCost b field_18559 + f I maxUses c field_18560 + f I villagerXp d field_18561 + f F priceMultiplier e field_18562 + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 baseEmeraldCost + p 3 maxUses + p 4 villagerXp + m (Lnet/minecraft/world/item/Item;IIIF)V + p 1 item + p 2 baseEmeraldCost + p 3 maxUses + p 4 villagerXp + p 5 priceMultiplier +c net/minecraft/world/entity/npc/VillagerTrades$FailureItemListing cmo$f net/minecraft/class_3853$class_8793 + m ()V +c net/minecraft/world/entity/npc/VillagerTrades$ItemListing cmo$g net/minecraft/class_3853$class_1652 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/trading/MerchantOffer; getOffer a method_7246 + p 1 trader + p 2 random +c net/minecraft/world/entity/npc/VillagerTrades$ItemsAndEmeraldsToItems cmo$h net/minecraft/class_3853$class_4164 + f Lnet/minecraft/world/item/trading/ItemCost; fromItem a field_18563 + f I emeraldCost b field_18565 + f Lnet/minecraft/world/item/ItemStack; toItem c field_18566 + f I maxUses d field_18568 + f I villagerXp e field_18569 + f F priceMultiplier f field_18570 + f Ljava/util/Optional; enchantmentProvider g field_51618 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;Lnet/minecraft/resources/ResourceKey;)V method_59950 a method_59950 + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/item/Item;IIIF)V + p 1 fromItem + p 2 fromItemCount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/item/ItemStack;IIIF)V + p 1 fromItem + p 2 fromItemCount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + m (Lnet/minecraft/world/level/ItemLike;IILnet/minecraft/world/level/ItemLike;IIIFLnet/minecraft/resources/ResourceKey;)V + p 1 fromItem + p 2 fromItemAmount + p 3 emeraldCost + p 4 toItem + p 5 toItemCount + p 6 maxUses + p 7 villagerXp + p 8 priceMultiplier + p 9 enchantmentProvider + m (Lnet/minecraft/world/item/trading/ItemCost;ILnet/minecraft/world/item/ItemStack;IIFLjava/util/Optional;)V + p 1 fromItem + p 2 emeraldCost + p 3 toItem + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider +c net/minecraft/world/entity/npc/VillagerTrades$ItemsForEmeralds cmo$i net/minecraft/class_3853$class_4165 + f Lnet/minecraft/world/item/ItemStack; itemStack a field_18571 + f I emeraldCost b field_18572 + f I maxUses c field_18574 + f I villagerXp d field_18575 + f F priceMultiplier e field_18576 + f Ljava/util/Optional; enchantmentProvider f field_51619 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;Lnet/minecraft/resources/ResourceKey;)V method_59951 a method_59951 + m (Lnet/minecraft/world/level/block/Block;IIII)V + p 1 block + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/Item;III)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 villagerXp + m (Lnet/minecraft/world/item/Item;IIII)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/ItemStack;IIII)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + m (Lnet/minecraft/world/item/Item;IIIIF)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/Item;IIIIFLnet/minecraft/resources/ResourceKey;)V + p 1 item + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider + m (Lnet/minecraft/world/item/ItemStack;IIIIF)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/ItemStack;IIIIFLjava/util/Optional;)V + p 1 itemStack + p 2 emeraldCost + p 3 numberOfItems + p 4 maxUses + p 5 villagerXp + p 6 priceMultiplier + p 7 enchantmentProvider +c net/minecraft/world/entity/npc/VillagerTrades$SuspiciousStewForEmerald cmo$j net/minecraft/class_3853$class_4166 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; effects a field_45756 + f I xp b field_18579 + f F priceMultiplier c field_18580 + m (Lnet/minecraft/core/Holder;II)V + p 1 effect + p 2 duration + p 3 xp + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;IF)V + p 1 effects + p 2 xp + p 3 priceMultiplier +c net/minecraft/world/entity/npc/VillagerTrades$TippedArrowForItemsAndEmeralds cmo$k net/minecraft/class_3853$class_4167 + f Lnet/minecraft/world/item/ItemStack; toItem a field_18581 + c An ItemStack that can have potion effects written to it. + f I toCount b field_18582 + f I emeraldCost c field_18583 + f I maxUses d field_18584 + f I villagerXp e field_18585 + f Lnet/minecraft/world/item/Item; fromItem f field_18586 + f I fromCount g field_18587 + f F priceMultiplier h field_18588 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder$Reference;)Z method_19203 a method_19203 + m (Lnet/minecraft/world/item/Item;ILnet/minecraft/world/item/Item;IIII)V + p 1 fromItem + p 2 fromCount + p 3 toItem + p 4 toCount + p 5 emeraldCost + p 6 maxUses + p 7 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$TreasureMapForEmeralds cmo$l net/minecraft/class_3853$class_1654 + f I emeraldCost a field_18589 + f Lnet/minecraft/tags/TagKey; destination b field_7474 + f Ljava/lang/String; displayName c field_37051 + f Lnet/minecraft/core/Holder; destinationType d field_7473 + f I maxUses e field_18590 + f I villagerXp f field_18591 + m (ILnet/minecraft/tags/TagKey;Ljava/lang/String;Lnet/minecraft/core/Holder;II)V + p 1 emeraldCost + p 2 destination + p 3 displayName + p 4 destinationType + p 5 maxUses + p 6 villagerXp +c net/minecraft/world/entity/npc/VillagerTrades$TypeSpecificTrade cmo$m net/minecraft/class_3853$class_8640 + f Ljava/util/Map; trades a comp_1962 + m ()Ljava/util/Map; trades a comp_1962 + m (Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing; method_53833 a method_53833 + m (Lnet/minecraft/world/entity/npc/VillagerTrades$ItemListing;[Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerTrades$TypeSpecificTrade; oneTradeInBiomes a method_53834 + p 0 listing + p 1 types + m (Lnet/minecraft/world/entity/npc/VillagerType;)Lnet/minecraft/world/entity/npc/VillagerType; method_53835 a method_53835 + m (Ljava/util/Map;)V + p 1 trades +c net/minecraft/world/entity/npc/VillagerType cmp net/minecraft/class_3854 + f Lnet/minecraft/world/entity/npc/VillagerType; DESERT a field_17071 + f Lnet/minecraft/world/entity/npc/VillagerType; JUNGLE b field_17072 + f Lnet/minecraft/world/entity/npc/VillagerType; PLAINS c field_17073 + f Lnet/minecraft/world/entity/npc/VillagerType; SAVANNA d field_17074 + f Lnet/minecraft/world/entity/npc/VillagerType; SNOW e field_17075 + f Lnet/minecraft/world/entity/npc/VillagerType; SWAMP f field_17076 + f Lnet/minecraft/world/entity/npc/VillagerType; TAIGA g field_17077 + f Ljava/lang/String; name h field_26690 + f Ljava/util/Map; BY_BIOME i field_17078 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/npc/VillagerType; register a method_16931 + p 0 key + m (Ljava/util/HashMap;)V method_16932 a method_16932 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/entity/npc/VillagerType; byBiome a method_16930 + p 0 biome + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/entity/npc/WanderingTrader cmq net/minecraft/class_3989 + f I NUMBER_OF_TRADE_OFFERS ce field_30629 + f Lnet/minecraft/core/BlockPos; wanderTarget cf field_17758 + f I despawnDelay cg field_17725 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18061 a method_18061 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18066 b method_18066 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18063 c method_18063 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/world/entity/ai/navigation/PathNavigation; method_18064 d method_18064 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Z method_18067 e method_18067 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Z method_18068 f method_18068 + m ()I getDespawnDelay gt method_18014 + m ()V experimentalUpdateTrades gu method_52557 + m ()V maybeDespawn gv method_20508 + m ()Lnet/minecraft/core/BlockPos; getWanderTarget gx method_18065 + m (Lnet/minecraft/core/BlockPos;)V setWanderTarget h method_18069 + p 1 wanderTarget + m (Lnet/minecraft/core/BlockPos;)V method_57006 i method_57006 + m (I)V setDespawnDelay u method_18013 + p 1 despawnDelay + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/npc/WanderingTrader$WanderToPositionGoal cmq$a net/minecraft/class_3989$class_3994 + f Lnet/minecraft/world/entity/npc/WanderingTrader; trader a field_17759 + f D stopDistance b field_17760 + f D speedModifier c field_17761 + f Lnet/minecraft/world/entity/npc/WanderingTrader; field_17762 d field_17762 + m (Lnet/minecraft/core/BlockPos;D)Z isTooFarAway a method_18070 + p 1 pos + p 2 distance + m (Lnet/minecraft/world/entity/npc/WanderingTrader;Lnet/minecraft/world/entity/npc/WanderingTrader;DD)V + p 2 trader + p 3 stopDistance + p 5 speedModifier +c net/minecraft/world/entity/npc/WanderingTraderSpawner cmr net/minecraft/class_3990 + f I DEFAULT_SPAWN_DELAY a field_30630 + f I DEFAULT_TICK_DELAY b field_30631 + f I MIN_SPAWN_CHANCE c field_30632 + f I MAX_SPAWN_CHANCE d field_30633 + f I SPAWN_CHANCE_INCREASE e field_30634 + f I SPAWN_ONE_IN_X_CHANCE f field_30635 + f I NUMBER_OF_SPAWN_ATTEMPTS g field_30636 + f Lnet/minecraft/util/RandomSource; random h field_17726 + f Lnet/minecraft/world/level/storage/ServerLevelData; serverLevelData i field_24387 + f I tickDelay j field_17728 + f I spawnDelay k field_17729 + f I spawnChance l field_17730 + m (Lnet/minecraft/server/level/ServerLevel;)Z spawn a method_18018 + p 1 serverLevel + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/npc/WanderingTrader;I)V tryToSpawnLlamaFor a method_18016 + p 1 serverLevel + p 2 trader + p 3 maxDistance + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasEnoughSpace a method_23279 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; findSpawnPositionNear a method_18017 + p 1 level + p 2 pos + p 3 maxDistance + m (Lnet/minecraft/core/BlockPos;)Z method_19631 a method_19631 + m (Lnet/minecraft/core/Holder;)Z method_44010 a method_44010 + m (Lnet/minecraft/world/level/storage/ServerLevelData;)V + p 1 serverLevelData +c net/minecraft/world/entity/npc/package-info cms net/minecraft/class_6068 +c net/minecraft/world/entity/package-info cmt net/minecraft/class_6069 +c net/minecraft/world/entity/player/Abilities cmu net/minecraft/class_1656 + f Z invulnerable a field_7480 + f Z flying b field_7479 + f Z mayfly c field_7478 + f Z instabuild d field_7477 + f Z mayBuild e field_7476 + f F flyingSpeed f field_7481 + f F walkingSpeed g field_7482 + m ()F getFlyingSpeed a method_7252 + m (F)V setFlyingSpeed a method_7248 + p 1 flyingSpeed + m (Lnet/minecraft/nbt/CompoundTag;)V addSaveData a method_7251 + p 1 compound + m ()F getWalkingSpeed b method_7253 + m (F)V setWalkingSpeed b method_7250 + p 1 walkingSpeed + m (Lnet/minecraft/nbt/CompoundTag;)V loadSaveData b method_7249 + p 1 compound + m ()V +c net/minecraft/world/entity/player/ChatVisiblity cmv net/minecraft/class_1659 + f Lnet/minecraft/world/entity/player/ChatVisiblity; FULL a field_7538 + f Lnet/minecraft/world/entity/player/ChatVisiblity; SYSTEM b field_7539 + f Lnet/minecraft/world/entity/player/ChatVisiblity; HIDDEN c field_7536 + f Ljava/util/function/IntFunction; BY_ID d field_7534 + f I id e field_7535 + f Ljava/lang/String; key f field_7540 + f [Lnet/minecraft/world/entity/player/ChatVisiblity; $VALUES g field_7537 + m (I)Lnet/minecraft/world/entity/player/ChatVisiblity; byId a method_7360 + p 0 id + m ()[Lnet/minecraft/world/entity/player/ChatVisiblity; $values c method_36660 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/world/entity/player/Inventory cmw net/minecraft/class_1661 + f I POP_TIME_DURATION b field_30637 + f I INVENTORY_SIZE c field_30638 + f I SLOT_OFFHAND d field_30639 + f I NOT_FOUND_INDEX e field_30640 + f [I ALL_ARMOR_SLOTS f field_33767 + f [I HELMET_SLOT_ONLY g field_33768 + f Lnet/minecraft/core/NonNullList; items h field_7547 + f Lnet/minecraft/core/NonNullList; armor i field_7548 + f Lnet/minecraft/core/NonNullList; offhand j field_7544 + f I selected k field_7545 + f Lnet/minecraft/world/entity/player/Player; player l field_7546 + f I SELECTION_SIZE m field_30641 + f Ljava/util/List; compartments n field_7543 + f I timesChanged o field_7542 + m (D)V swapPaint a method_7373 + c Change the selected item in the hotbar after a mouse scroll. Select the slot to the left if {@code direction} is positive, or to the right if negative. + p 1 direction + m (Lnet/minecraft/tags/TagKey;)Z contains a method_7382 + p 1 tag + m (Lnet/minecraft/world/entity/player/Inventory;)V replaceWith a method_7377 + c Copy the ItemStack contents from another InventoryPlayer instance + p 1 playerInventory + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillStackedContents a method_7387 + p 1 stackedContent + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasRemainingSpaceForItem a method_7393 + p 1 destination + p 2 origin + m (Lnet/minecraft/world/item/ItemStack;Z)V placeItemBackInInventory a method_32338 + p 1 stack + p 2 sendPacket + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_7370 + p 1 state + m (Ljava/util/function/Predicate;ILnet/minecraft/world/Container;)I clearOrCountMatchingItems a method_29280 + p 1 stackPredicate + p 2 maxCount + p 3 inventory + m (Lnet/minecraft/nbt/ListTag;)Lnet/minecraft/nbt/ListTag; save a method_7384 + c Writes the inventory out as a list of compound tags. This is where the slot indices are used (+100 for armor, +80 for crafting). + p 1 listTag + m (Z)Lnet/minecraft/world/item/ItemStack; removeFromSelected a method_37417 + p 1 removeStack + c Whether to remove the entire stack of items. If {@code false}, removes a single item. + m (Lnet/minecraft/world/item/ItemStack;)V setPickedItem b method_7374 + p 1 stack + m (Ljava/util/function/Predicate;)Z contains b method_55753 + p 1 predicate + m (Lnet/minecraft/nbt/ListTag;)V load b method_7397 + c Reads from the given tag list and fills the slots in the inventory with the correct items. + p 1 listTag + m (I)V pickSlot c method_7365 + p 1 index + m (ILnet/minecraft/world/item/ItemStack;)Z add c method_7367 + c Adds the stack to the specified slot in the player's inventory. Returns {@code false} if it's not possible to place the entire stack in the inventory. + p 1 slot + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)I findSlotMatchingItem c method_7395 + c Finds the stack or an equivalent one in the main inventory + p 1 stack + m (I)Z isHotbarSlot d method_7380 + p 0 index + m (ILnet/minecraft/world/item/ItemStack;)I addResource d method_7385 + p 1 slot + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)I findSlotMatchingUnusedItem d method_7371 + p 1 stack + m (I)Lnet/minecraft/world/item/ItemStack; getArmor e method_7372 + c @return a player armor item (as an {@code ItemStack}) contained in specified armor slot + p 1 slot + m (Lnet/minecraft/world/item/ItemStack;)I getSlotWithRemainingSpace e method_7390 + c Stores a stack in the player's inventory. It first tries to place it in the selected slot in the player's hotbar, then the offhand slot, then any available/empty slot in the player's inventory. + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getSelected f method_7391 + c Returns the item stack currently held by the player. + m (Lnet/minecraft/world/item/ItemStack;)Z add f method_7394 + c Adds the stack to the first empty slot in the player's inventory. Returns {@code false} if it's not possible to place the entire stack in the inventory. + p 1 stack + m ()I getSelectionSize g method_7368 + c Get the size of the player hotbar inventory + m (Lnet/minecraft/world/item/ItemStack;)V placeItemBackInInventory g method_7398 + p 1 stack + m ()I getFreeSlot h method_7376 + c Returns the first item stack that is empty. + m (Lnet/minecraft/world/item/ItemStack;)V removeItem h method_7378 + p 1 stack + m ()I getSuitableHotbarSlot i method_7386 + m (Lnet/minecraft/world/item/ItemStack;)Z contains i method_7379 + c Returns {@code true} if the specified {@link net.minecraft.world.item.ItemStack} exists in the inventory. + p 1 stack + m ()V tick j method_7381 + c Ticks every item in inventory. Used for animations. Is called on client and server. + m (Lnet/minecraft/world/item/ItemStack;)I addResource j method_7366 + c This function stores as many items of an ItemStack as possible in a matching slot and returns the quantity of left over items. + p 1 stack + m ()V dropAll k method_7388 + c Drop all armor and main inventory items. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_7389 k method_7389 + m ()I getTimesChanged l method_7364 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player + m ()V +c net/minecraft/world/entity/player/Player cmx net/minecraft/class_1657 + f Lnet/minecraft/world/entity/HumanoidArm; DEFAULT_MAIN_HAND bH field_46174 + f I DEFAULT_MODEL_CUSTOMIZATION bI field_46175 + f I MAX_HEALTH bJ field_30644 + f I SLEEP_DURATION bK field_30645 + f I WAKE_UP_DURATION bL field_30646 + f Lorg/slf4j/Logger; LOGGER b field_38197 + f I ENDER_SLOT_OFFSET bM field_30647 + f I HELD_ITEM_SLOT bN field_49734 + f I CRAFTING_SLOT_OFFSET bO field_49735 + f F DEFAULT_BLOCK_INTERACTION_RANGE bP field_47819 + f F DEFAULT_ENTITY_INTERACTION_RANGE bQ field_47820 + f F CROUCH_BB_HEIGHT bR field_30648 + f F SWIMMING_BB_WIDTH bS field_30649 + f F SWIMMING_BB_HEIGHT bT field_30650 + f F DEFAULT_EYE_HEIGHT bU field_30651 + f Lnet/minecraft/world/phys/Vec3; DEFAULT_VEHICLE_ATTACHMENT bV field_47821 + f Lnet/minecraft/world/entity/EntityDimensions; STANDING_DIMENSIONS bW field_18135 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_MODE_CUSTOMISATION bX field_7518 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_MAIN_HAND bY field_7488 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOULDER_LEFT bZ field_7496 + f Lnet/minecraft/world/entity/player/Abilities; abilities cA field_7503 + f I lastLevelUpTime cB field_7508 + f Lcom/mojang/authlib/GameProfile; gameProfile cD field_7507 + c The player's unique game profile + f Z reducedDebugInfo cE field_7523 + f Lnet/minecraft/world/item/ItemStack; lastItemInMainHand cF field_7525 + f Lnet/minecraft/world/item/ItemCooldowns; cooldowns cG field_7484 + f Ljava/util/Optional; lastDeathLocation cH field_39445 + f I CURRENT_IMPULSE_CONTEXT_RESET_GRACE_TIME_TICKS c field_52222 + f Z ignoreFallDamageFromCurrentImpulse cI field_49991 + f I currentImpulseContextResetGraceTime cJ field_52223 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOULDER_RIGHT ca field_7506 + f Lnet/minecraft/world/inventory/PlayerEnderChestContainer; enderChestInventory cb field_7486 + f Lnet/minecraft/world/inventory/InventoryMenu; inventoryMenu cc field_7498 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; containerMenu cd field_7512 + f Lnet/minecraft/world/food/FoodData; foodData ce field_7493 + f I jumpTriggerTime cf field_7489 + f F oBob cg field_7505 + f F bob ch field_7483 + f I takeXpDelay ci field_7504 + f D xCloakO cj field_7524 + f D yCloakO ck field_7502 + f D zCloakO cl field_7522 + f D xCloak cm field_7500 + f D yCloak cn field_7521 + f D zCloak co field_7499 + f Z wasUnderwater cp field_7490 + f I experienceLevel cq field_7520 + f I totalExperience cr field_7495 + f F experienceProgress cs field_7510 + f I enchantmentSeed ct field_7494 + f F defaultFlySpeed cu field_7509 + f Lnet/minecraft/world/entity/projectile/FishingHook; fishing cv field_7513 + f F hurtDir cw field_41765 + f Lnet/minecraft/world/phys/Vec3; currentImpulseImpactPos cx field_49989 + f Lnet/minecraft/world/entity/Entity; currentExplosionCause cy field_49990 + f I sleepCounter cz field_7487 + f Ljava/util/Map; POSES d field_18134 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_PLAYER_ABSORPTION_ID e field_7491 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SCORE_ID f field_7511 + f J timeEntitySatOnShoulder g field_19428 + f Lnet/minecraft/world/entity/player/Inventory; inventory h field_7514 + m (F)V causeFoodExhaustion E method_7322 + c Increases exhaustion level by the supplied amount. + p 1 exhaustion + m (F)F getAttackStrengthScale F method_7261 + c Returns the percentage of attack power available based on the cooldown (zero to one). + p 1 adjustTicks + m (F)Z isAboveGround G method_30263 + p 1 maxUpStep + m (Lnet/minecraft/world/entity/Entity;)V method_17853 G method_17853 + m ()Z isTextFilteringEnabled Z method_33793 + m (IFLnet/minecraft/world/item/ItemStack;)V startAutoSpinAttack a method_40126 + c Starts the attack used by the Riptide enchantment. + p 1 ticks + p 2 damage + p 3 itemStack + m (ILnet/minecraft/world/item/trading/MerchantOffers;IIZZ)V sendMerchantOffers a method_17354 + p 1 containerId + p 2 offers + p 3 villagerLevel + p 4 villagerXp + p 5 showProgress + p 6 canRestock + m (Lnet/minecraft/resources/ResourceLocation;)V awardStat a method_7281 + p 1 statKey + m (Lnet/minecraft/resources/ResourceLocation;I)V awardStat a method_7339 + p 1 stat + p 2 increment + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playNotifySound a method_17356 + p 1 sound + p 2 source + p 3 volume + p 4 pitch + m (Lnet/minecraft/stats/Stat;)V resetStat a method_7266 + p 1 stat + m (Lnet/minecraft/stats/Stat;I)V awardStat a method_7342 + c Adds a value to a statistic field. + p 1 stat + p 2 increment + m (Lnet/minecraft/world/MenuProvider;)Ljava/util/OptionalInt; openMenu a method_17355 + p 1 menu + m (Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)F getEnchantedDamage a method_59903 + p 1 entity + p 2 damage + p 3 damageSource + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactOn a method_7287 + p 1 entityToInteractOn + p 2 hand + m (Lnet/minecraft/world/entity/HumanoidArm;)V setMainArm a method_7283 + p 1 hand + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lnet/minecraft/world/Container;)V openHorseInventory a method_7291 + p 1 horse + p 2 inventory + m (Lnet/minecraft/world/entity/player/Player;)Z canHarmPlayer a method_7256 + p 1 other + m (Lnet/minecraft/world/entity/player/PlayerModelPart;)Z isModelPartShown a method_7348 + p 1 part + m (Lnet/minecraft/world/item/ItemStack;I)V onEnchantmentPerformed a method_7286 + p 1 enchantedItem + p 2 levelCost + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)V openItemGui a method_7315 + p 1 stack + p 2 hand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V updateTutorialInventoryAction a method_33592 + p 1 carried + p 2 clicked + p 3 action + m (Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/entity/item/ItemEntity; drop a method_7328 + c Drops an item into the world. + p 1 itemStack + p 2 includeThrowerName + m (Lnet/minecraft/world/item/ItemStack;ZZ)Lnet/minecraft/world/entity/item/ItemEntity; drop a method_7329 + c Creates and drops the provided item. Depending on the dropAround, it will drop the item around the player, instead of dropping the item from where the player is pointing at. Likewise, if includeThrowerName is true, the dropped item entity will have the thrower set as the player. + p 1 droppedItem + p 2 dropAround + p 3 includeThrowerName + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/List;)V triggerRecipeCrafted a method_51283 + p 1 recipe + p 2 items + m (Lnet/minecraft/world/level/BaseCommandBlock;)V openMinecartCommandBlock a method_7257 + p 1 commandEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/GameType;)Z blockActionRestricted a method_21701 + p 1 level + p 2 pos + p 3 gameMode + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V openCommandBlock a method_7323 + p 1 commandBlockEntity + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity;)V openJigsawBlock a method_16354 + p 1 jigsawBlockEntity + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)V openTextEdit a method_7311 + p 1 signEntity + p 2 isFrontText + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V openStructureBlock a method_7303 + p 1 structureEntity + m (Lnet/minecraft/world/phys/AABB;D)Z canInteractWithEntity a method_56092 + p 1 boundingBox + p 2 distance + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_7321 a method_7321 + m (Ljava/util/Collection;)I awardRecipes a method_7254 + p 1 recipes + m (Ljava/util/Optional;)V setLastDeathLocation a method_43120 + p 1 lastDeathLocation + m (Lnet/minecraft/core/BlockPos;)Lcom/mojang/datafixers/util/Either; startSleepInBed a method_7269 + p 1 bedPos + m (Lnet/minecraft/core/BlockPos;D)Z canInteractWithBlock a method_56093 + p 1 pos + p 2 distance + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;)Z mayUseItemAt a method_7343 + c Returns whether this player can modify the block at a certain location with the given stack.\n

\nThe position being queried is {@code pos.offset(facing.getOpposite())}.\n\n@return Whether this player may modify the queried location in the current world\n@see ItemStack#canPlaceOn(Block)\n@see ItemStack#canEditBlocks()\n@see PlayerCapabilities#allowEdit + p 1 pos + p 2 facing + p 3 stack + m (Lnet/minecraft/core/GlobalPos;)Ljava/util/Optional; method_43119 a method_43119 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_43121 a method_43121 + m (Lnet/minecraft/network/chat/Component;Z)V displayClientMessage a method_7353 + p 1 chatComponent + p 2 actionBar + m (Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; decorateDisplayNameComponent a method_7299 + p 1 displayName + m (ZZ)V stopSleepInBed a method_7358 + p 1 wakeImmediately + p 2 updateLevelForSleepingPlayers + m ()Ljava/util/Optional; getWardenSpawnTracker ab method_42272 + m (DDF)Z canFallAtLeast b method_59818 + p 1 x + p 3 z + p 5 distance + m (Lnet/minecraft/stats/Stat;)V awardStat b method_7259 + c Add a stat once + p 1 stat + m (Lnet/minecraft/world/entity/Entity;)V crit b method_7277 + c Called when the entity is dealt a critical hit. + p 1 entityHit + m (Lnet/minecraft/world/entity/Entity;D)Z canInteractWithEntity b method_56094 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/EntityType;)V method_17851 b method_17851 + m (Lnet/minecraft/world/phys/Vec3;)V method_58397 b method_58397 + m (Ljava/util/Collection;)I resetRecipes b method_7333 + p 1 recipes + m (Ljava/util/List;)V awardRecipesByKey b method_7335 + p 1 recipes + m (I)V giveExperienceLevels c method_7316 + c Add experience levels to this player. + p 1 levels + m (Lnet/minecraft/world/entity/Entity;)V magicCrit c method_7304 + c Called when the entity hit is dealt extra melee damage due to an enchantment. + p 1 entityHit + m (Lnet/minecraft/world/entity/EntityType;)Z method_17852 c method_17852 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed c method_7351 + p 1 state + m (Lnet/minecraft/nbt/CompoundTag;)V playShoulderEntityAmbientSound c method_7267 + p 1 entityCompound + m (I)V giveExperiencePoints d method_7255 + p 1 xpPoints + m (Lnet/minecraft/world/entity/Entity;)V touch d method_7341 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasCorrectToolForDrops d method_7305 + p 1 state + m (Lnet/minecraft/world/entity/Entity;)V attack e method_7324 + c Attacks for the player the targeted entity with the currently equipped item. The equipped item has hitEntity called on it. Args: targetEntity + p 1 target + m ()Z isCreative f method_7337 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeSupplier$Builder; createAttributes fM method_26956 + m ()Z isSecondaryUseActive fN method_21823 + m ()Z wantsToStopRiding fO method_21824 + m ()Z isStayingOnGroundSurface fP method_21825 + m ()Z updateIsUnderwater fQ method_7295 + m ()V updatePlayerPose fR method_7318 + m ()I getScore fS method_7272 + m ()V destroyVanishingCursedItems fT method_7293 + m ()V disableShield fU method_7284 + m ()V sweepAttack fV method_7263 + m ()V respawn fW method_7331 + m ()Lcom/mojang/authlib/GameProfile; getGameProfile fX method_7334 + c Returns the GameProfile for this player + m ()Lnet/minecraft/world/entity/player/Inventory; getInventory fY method_31548 + m ()Lnet/minecraft/world/entity/player/Abilities; getAbilities fZ method_31549 + m ()Z isLocalPlayer g method_7340 + c Returns whether this is a {@link net.minecraft.client.player.LocalPlayer}. + m ()Z isIgnoringFallDamageFromCurrentImpulse gA method_61165 + m ()V tryResetCurrentImpulseContext gB method_60983 + m ()V resetCurrentImpulseContext gC method_58396 + m ()Z hasContainerOpen ga method_45015 + m ()Z isSleepingLongEnough gb method_7276 + c Returns whether the player is asleep and the screen has fully faded. + m ()I getSleepTimer gc method_7297 + m ()Z tryToStartFallFlying gd method_23668 + m ()V startFallFlying ge method_23669 + m ()V stopFallFlying gf method_23670 + m ()I getEnchantmentSeed gg method_7278 + m ()I getXpNeededForNextLevel gh method_7349 + c This method returns the cap amount of experience that the experience bar can hold. With each level, the experience cap on the player's experience bar is raised by 10. + m ()Lnet/minecraft/world/food/FoodData; getFoodData gi method_7344 + c Returns the player's FoodStats object. + m ()Z isHurt gj method_7317 + c Checks if the player's health is not full and not zero. + m ()Z mayBuild gk method_7294 + m ()Lnet/minecraft/world/inventory/PlayerEnderChestContainer; getEnderChestInventory gl method_7274 + c Returns the InventoryEnderChest of this player. + m ()V removeEntitiesOnShoulder gm method_7262 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard gn method_7327 + m ()Z isReducedDebugInfo go method_7302 + c Whether the "reducedDebugInfo" option is active for this player. + m ()Lnet/minecraft/nbt/CompoundTag; getShoulderEntityLeft gp method_7356 + m ()Lnet/minecraft/nbt/CompoundTag; getShoulderEntityRight gq method_7308 + m ()F getCurrentItemAttackStrengthDelay gr method_7279 + m ()V resetAttackStrengthTicker gs method_7350 + m ()Lnet/minecraft/world/item/ItemCooldowns; getCooldowns gt method_7357 + m ()F getLuck gu method_7292 + m ()Z canUseGameMasterBlocks gv method_7338 + m ()Z isScoping gw method_31550 + m ()Ljava/util/Optional; getLastDeathLocation gx method_43122 + m ()D blockInteractionRange gy method_55754 + m ()D entityInteractionRange gz method_55755 + m (Lnet/minecraft/world/entity/Pose;)Z canPlayerFitWithinBlocksAndEntitiesWhen h method_52558 + p 1 pose + m (Lnet/minecraft/core/BlockPos;)Z freeAt h method_7326 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)Z setEntityOnShoulder h method_7298 + p 1 entityCompound + m (Lnet/minecraft/world/item/ItemStack;)Z addItem i method_7270 + p 1 stack + m (Lnet/minecraft/nbt/CompoundTag;)V setShoulderEntityLeft i method_7273 + p 1 entityCompound + m (Lnet/minecraft/nbt/CompoundTag;)V setShoulderEntityRight j method_7345 + p 1 entityCompound + m ()Lnet/minecraft/world/item/ItemCooldowns; createItemCooldowns k method_7265 + m (Lnet/minecraft/nbt/CompoundTag;)V respawnEntityOnShoulder k method_7296 + p 1 entityCompound + m (I)V setScore r method_7320 + c Set player's score + p 1 score + m ()V closeContainer s method_7346 + c Sets the current crafting inventory back to the 2x2 square. + m (I)V increaseScore s method_7285 + c Add to player's score + p 1 score + m ()V doCloseContainer t method_14247 + m (Z)Z canEat u method_7332 + p 1 canAlwaysEat + m ()V turtleHelmetTick v method_7330 + m (Z)V setReducedDebugInfo v method_7268 + p 1 reducedDebugInfo + m (Z)V setIgnoreFallDamageFromCurrentImpulse w method_60984 + p 1 ignoreFallDamageFromCurrentImpulse + m ()V moveCloak x method_7313 + m ()V onUpdateAbilities z method_7355 + c Sends the player's abilities to the server (if there is one). + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLcom/mojang/authlib/GameProfile;)V + p 1 level + p 2 pos + p 3 yRot + p 4 gameProfile + m ()V +c net/minecraft/world/entity/player/Player$1 cmx$1 net/minecraft/class_1657$1 + f Lnet/minecraft/world/entity/player/Player; field_49736 b field_49736 + m (Lnet/minecraft/world/entity/player/Player;)V +c net/minecraft/world/entity/player/Player$2 cmx$2 net/minecraft/class_1657$2 + f I val$craftSlot b field_49737 + f Lnet/minecraft/world/entity/player/Player; field_49738 c field_49738 + m (Lnet/minecraft/world/entity/player/Player;I)V +c net/minecraft/world/entity/player/Player$BedSleepingProblem cmx$a net/minecraft/class_1657$class_1658 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_POSSIBLE_HERE a field_7528 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_POSSIBLE_NOW b field_7529 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; TOO_FAR_AWAY c field_7530 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; OBSTRUCTED d field_18592 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; OTHER_PROBLEM e field_7531 + f Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; NOT_SAFE f field_7532 + f Lnet/minecraft/network/chat/Component; message g field_18593 + f [Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; $VALUES h field_7526 + m ()Lnet/minecraft/network/chat/Component; getMessage a method_19206 + m ()[Lnet/minecraft/world/entity/player/Player$BedSleepingProblem; $values b method_36661 + m (Ljava/lang/String;I)V + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V + p 3 message + m ()V +c net/minecraft/world/entity/player/PlayerModelPart cmy net/minecraft/class_1664 + f Lnet/minecraft/world/entity/player/PlayerModelPart; CAPE a field_7559 + f Lnet/minecraft/world/entity/player/PlayerModelPart; JACKET b field_7564 + f Lnet/minecraft/world/entity/player/PlayerModelPart; LEFT_SLEEVE c field_7568 + f Lnet/minecraft/world/entity/player/PlayerModelPart; RIGHT_SLEEVE d field_7570 + f Lnet/minecraft/world/entity/player/PlayerModelPart; LEFT_PANTS_LEG e field_7566 + f Lnet/minecraft/world/entity/player/PlayerModelPart; RIGHT_PANTS_LEG f field_7565 + f Lnet/minecraft/world/entity/player/PlayerModelPart; HAT g field_7563 + f I bit h field_7561 + f I mask i field_7560 + f Ljava/lang/String; id j field_7569 + f Lnet/minecraft/network/chat/Component; name k field_7567 + f [Lnet/minecraft/world/entity/player/PlayerModelPart; $VALUES l field_7562 + m ()I getMask a method_7430 + m ()I getBit b method_35206 + m ()Ljava/lang/String; getId c method_7429 + m ()Lnet/minecraft/network/chat/Component; getName d method_7428 + m ()[Lnet/minecraft/world/entity/player/PlayerModelPart; $values e method_36662 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 bit + p 4 id + m ()V +c net/minecraft/world/entity/player/ProfileKeyPair cmz net/minecraft/class_7427 + f Lcom/mojang/serialization/Codec; CODEC a field_39049 + f Ljava/security/PrivateKey; privateKey b comp_741 + f Lnet/minecraft/world/entity/player/ProfilePublicKey; publicKey c comp_742 + f Ljava/time/Instant; refreshedAfter d comp_743 + m ()Z dueRefresh a method_43546 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43547 a method_43547 + m ()Ljava/security/PrivateKey; privateKey b comp_741 + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey; publicKey c comp_742 + m ()Ljava/time/Instant; refreshedAfter d comp_743 + m (Ljava/security/PrivateKey;Lnet/minecraft/world/entity/player/ProfilePublicKey;Ljava/time/Instant;)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey cna net/minecraft/class_7428 + f Lnet/minecraft/network/chat/Component; EXPIRED_PROFILE_PUBLIC_KEY a field_39954 + f Ljava/time/Duration; EXPIRY_GRACE_PERIOD b field_39955 + f Lcom/mojang/serialization/Codec; TRUSTED_CODEC c field_39050 + f Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; data d comp_767 + f Lnet/minecraft/network/chat/Component; INVALID_SIGNATURE e field_39956 + m ()Lnet/minecraft/util/SignatureValidator; createSignatureValidator a method_43697 + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/UUID;Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)Lnet/minecraft/world/entity/player/ProfilePublicKey; createValidated a method_43550 + p 0 signatureValidator + p 1 profileId + p 2 data + m ()Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; data b comp_767 + m (Lnet/minecraft/world/entity/player/ProfilePublicKey$Data;)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey$Data cna$a net/minecraft/class_7428$class_7443 + f Lcom/mojang/serialization/Codec; CODEC a field_39119 + f Ljava/time/Instant; expiresAt b comp_769 + f Ljava/security/PublicKey; key c comp_770 + f [B keySignature d comp_771 + f I MAX_KEY_SIGNATURE_SIZE e field_39309 + m ()Z hasExpired a method_43704 + m (Lnet/minecraft/util/SignatureValidator;Ljava/util/UUID;)Z validateSignature a method_44205 + p 1 signatureValidator + p 2 profileId + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43701 a method_43701 + m (Ljava/time/Duration;)Z hasExpired a method_45103 + p 1 gracePeriod + m (Ljava/util/UUID;)[B signedPayload a method_43702 + p 1 profileId + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_44011 + p 1 buffer + m ()Ljava/time/Instant; expiresAt b comp_769 + m ()Ljava/security/PublicKey; key c comp_770 + m ()[B keySignature d comp_771 + m (Lnet/minecraft/network/FriendlyByteBuf;)V + p 1 buffer + m (Ljava/time/Instant;Ljava/security/PublicKey;[B)V + m ()V +c net/minecraft/world/entity/player/ProfilePublicKey$ValidationException cna$b net/minecraft/class_7428$class_7652 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/world/entity/player/StackedContents cnb net/minecraft/class_1662 + f Lit/unimi/dsi/fastutil/ints/Int2IntMap; contents a field_7550 + f I EMPTY b field_30653 + m ()V clear a method_7409 + m (I)Lnet/minecraft/world/item/ItemStack; fromStackingIndex a method_7405 + p 0 stackingIndex + m (II)I take a method_7411 + p 1 stackingIndex + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;)V accountSimpleStack a method_7404 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V accountStack a method_20478 + p 1 stack + p 2 amount + m (Lnet/minecraft/world/item/crafting/Recipe;Lit/unimi/dsi/fastutil/ints/IntList;)Z canCraft a method_7402 + p 1 recipe + p 2 stackingIndexList + m (Lnet/minecraft/world/item/crafting/Recipe;Lit/unimi/dsi/fastutil/ints/IntList;I)Z canCraft a method_7406 + p 1 recipe + p 2 stackingIndexList + p 3 amount + m (Lnet/minecraft/world/item/crafting/RecipeHolder;ILit/unimi/dsi/fastutil/ints/IntList;)I getBiggestCraftableStack a method_7403 + p 1 recipe + p 2 amount + p 3 stackingIndexList + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lit/unimi/dsi/fastutil/ints/IntList;)I getBiggestCraftableStack a method_7407 + p 1 recipe + p 2 stackingIndexList + m (I)Z has b method_7410 + p 1 stackingIndex + m (II)V put b method_7401 + p 1 stackingIndex + p 2 increment + m (Lnet/minecraft/world/item/ItemStack;)V accountStack b method_7400 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getStackingIndex c method_7408 + p 0 stack + m ()V +c net/minecraft/world/entity/player/StackedContents$RecipePicker cnb$a net/minecraft/class_1662$class_1663 + f Lnet/minecraft/world/entity/player/StackedContents; field_7554 a field_7554 + f Lnet/minecraft/world/item/crafting/Recipe; recipe b field_7555 + f Ljava/util/List; ingredients c field_7552 + f I ingredientCount d field_7556 + f [I items e field_7551 + f I itemCount f field_7553 + f Ljava/util/BitSet; data g field_7558 + f Lit/unimi/dsi/fastutil/ints/IntList; path h field_7557 + m ()[I getUniqueAvailableIngredientItems a method_7422 + m (I)Z dfs a method_7423 + p 1 amount + m (ILit/unimi/dsi/fastutil/ints/IntList;)Z tryPick a method_7417 + p 1 amount + p 2 stackingIndexList + m (ZI)V visit a method_7413 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)Z hasConnection a method_7418 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m ()I getMinIngredientCount b method_7415 + m (I)Z isSatisfied b method_7416 + p 1 stackingIndex + m (ILit/unimi/dsi/fastutil/ints/IntList;)I tryPickAll b method_7427 + p 1 amount + p 2 stackingIndexList + m (ZI)Z hasVisited b method_7426 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)Z hasResidual b method_7425 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (I)V setSatisfied c method_7421 + p 1 stackingIndex + m (ZI)I getVisitedIndex c method_7424 + p 1 isIngredientPath + p 2 pathIndex + m (ZII)V toggleResidual c method_7414 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (I)I getSatisfiedIndex d method_7419 + p 1 stackingIndex + m (ZII)I getIndex d method_7420 + p 1 isIngredientPath + p 2 stackingIndex + p 3 pathIndex + m (Lnet/minecraft/world/entity/player/StackedContents;Lnet/minecraft/world/item/crafting/Recipe;)V + p 2 recipe +c net/minecraft/world/entity/player/package-info cnc net/minecraft/class_6070 +c net/minecraft/world/entity/projectile/AbstractArrow cnd net/minecraft/class_1665 + f Z inGround b field_7588 + f I inGroundTime c field_7576 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; pickup d field_7572 + f I shakeTime e field_7574 + f D ARROW_BASE_DAMAGE f field_30657 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_FLAGS g field_7573 + f Lnet/minecraft/network/syncher/EntityDataAccessor; PIERCE_LEVEL h field_7589 + f I FLAG_CRIT i field_30654 + f I FLAG_NOPHYSICS j field_30655 + f Lnet/minecraft/world/level/block/state/BlockState; lastState k field_7586 + f I life l field_7578 + f D baseDamage m field_7571 + f Lnet/minecraft/sounds/SoundEvent; soundEvent n field_7584 + f Lit/unimi/dsi/fastutil/ints/IntOpenHashSet; piercingIgnoreEntityIds o field_7590 + f Ljava/util/List; piercedAndKilledEntities p field_7579 + f Lnet/minecraft/world/item/ItemStack; pickupItemStack q field_46970 + f Lnet/minecraft/world/item/ItemStack; firedFromWeapon r field_51620 + m ()Z isCritArrow A method_7443 + c Whether the arrow has a stream of critical hit particles flying behind it. + m ()Z shotFromCrossbow B method_7456 + c Whether the arrow was shot from a crossbow. + m ()B getPierceLevel C method_7447 + m ()F getWaterInertia D method_7436 + m ()Z isNoPhysics E method_7441 + c Whether the arrow can noClip + m ()Z shouldFall F method_26351 + m ()V startFalling J method_26352 + m ()V resetPiercedEntities K method_7453 + m (B)V setPierceLevel a method_7451 + p 1 pierceLevel + m (F)V setBaseDamageFromMob a method_59955 + p 1 velocity + m (IZ)V setFlag a method_7455 + p 1 id + p 2 value + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/item/ItemStack;)V hitBlockEnchantmentEffects a method_59956 + p 1 level + p 2 hitResult + p 3 stack + m (Lnet/minecraft/world/entity/LivingEntity;)V doPostHurtEffects a method_7450 + p 1 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)V doKnockback a method_59957 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/player/Player;)Z tryPickup a method_34713 + p 1 player + m (Lnet/minecraft/world/item/ItemStack;)V setPickupItemStack a method_57313 + p 1 pickupItemStack + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/EntityHitResult; findHitEntity a method_7434 + c Gets the EntityRayTraceResult representing the entity hit + p 1 startVec + p 2 endVec + m (Z)V setCritArrow a method_7439 + c Whether the arrow has a stream of critical hit particles flying behind it. + p 1 critArrow + m (Lnet/minecraft/sounds/SoundEvent;)V setSoundEvent b method_7444 + p 1 soundEvent + m (Lnet/minecraft/world/item/Item;)V method_59953 b method_59953 + m (Z)V setNoPhysics b method_7433 + c Sets if this arrow can noClip + p 1 noPhysics + m (Lnet/minecraft/world/item/Item;)V method_59954 c method_59954 + m (D)V setBaseDamage h method_7438 + p 1 baseDamage + m ()V tickDespawn p method_7446 + m ()Lnet/minecraft/sounds/SoundEvent; getDefaultHitGroundSoundEvent t method_7440 + c The sound made when an entity is hit by this projectile + m ()Lnet/minecraft/sounds/SoundEvent; getHitGroundSoundEvent v method_20011 + m ()Lnet/minecraft/world/item/ItemStack; getPickupItem w method_7445 + m ()Lnet/minecraft/world/item/ItemStack; getDefaultPickupItem x method_57314 + m ()Lnet/minecraft/world/item/ItemStack; getPickupItemStackOrigin y method_54759 + m ()D getBaseDamage z method_7448 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + p 9 pickupItemStack + p 10 firedFromWeapon + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 entityType + p 2 owner + p 3 level + p 4 pickupItemStack + p 5 firedFromWeapon + m ()V +c net/minecraft/world/entity/projectile/AbstractArrow$Pickup cnd$a net/minecraft/class_1665$class_1666 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; DISALLOWED a field_7592 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; ALLOWED b field_7593 + f Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; CREATIVE_ONLY c field_7594 + f [Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; $VALUES d field_7591 + m ()[Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; $values a method_36663 + m (I)Lnet/minecraft/world/entity/projectile/AbstractArrow$Pickup; byOrdinal a method_7458 + p 0 ordinal + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/AbstractHurtingProjectile cne net/minecraft/class_1668 + f D INITAL_ACCELERATION_POWER b field_51891 + f D DEFLECTION_SCALE c field_51892 + f D accelerationPower d field_51893 + m (Lnet/minecraft/world/phys/Vec3;D)V assignDirectionalMovement a method_60499 + p 1 movement + p 2 accelerationPower + m ()Lnet/minecraft/world/level/ClipContext$Block; getClipType aj_ method_55053 + m ()Z shouldBurn t method_7468 + m ()Lnet/minecraft/core/particles/ParticleOptions; getTrailParticle v method_7467 + m ()F getInertia w method_7466 + c Return the motion factor for this projectile. The factor is multiplied by the original motion. + m ()F getLiquidInertia x method_55583 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 owner + p 3 movement + p 4 level +c net/minecraft/world/entity/projectile/Arrow cnf net/minecraft/class_1667 + f I EXPOSED_POTION_DECAY_TIME f field_30660 + f I NO_EFFECT_COLOR g field_30658 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_EFFECT_COLOR h field_7595 + f B EVENT_POTION_PUFF i field_30659 + m ()I getColor F method_7460 + m ()Lnet/minecraft/world/item/alchemy/PotionContents; getPotionContents J method_57315 + m ()V updateColor K method_7462 + m (Lnet/minecraft/world/effect/MobEffectInstance;)V addEffect a method_7463 + p 1 effectInstance + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V setPotionContents a method_57316 + p 1 potionContents + m (I)V makeParticle b method_7461 + p 1 particleAmount + m (I)I method_48574 c method_48574 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + p 9 firedFromWeapon + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 owner + p 3 pickupItemStack + p 4 firedFromWeapon + m ()V +c net/minecraft/world/entity/projectile/DragonFireball cng net/minecraft/class_1670 + f F SPLASH_RANGE e field_30661 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement +c net/minecraft/world/entity/projectile/EvokerFangs cnh net/minecraft/class_1669 + f I ATTACK_DURATION b field_30662 + f I LIFE_OFFSET c field_30663 + f I ATTACK_TRIGGER_TICKS d field_30664 + f I warmupDelayTicks e field_7609 + f Z sentSpikeEvent f field_7610 + f I lifeTicks g field_7607 + f Z clientSideAttackStarted h field_7608 + f Lnet/minecraft/world/entity/LivingEntity; owner i field_7605 + f Ljava/util/UUID; ownerUUID j field_7606 + m (F)F getAnimationProgress a method_7472 + p 1 partialTicks + m (Lnet/minecraft/world/entity/LivingEntity;)V setOwner a method_7473 + p 1 owner + m (Lnet/minecraft/world/entity/LivingEntity;)V dealDamageTo c method_7471 + p 1 target + m ()Lnet/minecraft/world/entity/LivingEntity; getOwner p method_7470 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDFILnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 yRot + p 9 warmupDelay + p 10 owner +c net/minecraft/world/entity/projectile/EyeOfEnder cni net/minecraft/class_1672 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK b field_17080 + f D tx c field_7619 + f D ty d field_7618 + f D tz e field_7617 + f I life f field_7620 + f Z surviveAfterDeath g field_7621 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16933 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)V signalTo a method_7478 + p 1 pos + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem s method_56684 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/Fireball cnj net/minecraft/class_3855 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK e field_17081 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16936 + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem y method_56685 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 owner + p 3 movement + p 4 level + m ()V +c net/minecraft/world/entity/projectile/FireworkRocketEntity cnk net/minecraft/class_1671 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FIREWORKS_ITEM b field_7614 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ATTACHED_TO_TARGET c field_7611 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_SHOT_AT_ANGLE d field_7615 + f I life e field_7613 + f I lifetime f field_7612 + f Lnet/minecraft/world/entity/LivingEntity; attachedToEntity g field_7616 + m ()Lnet/minecraft/world/item/ItemStack; getDefaultItem A method_57317 + m (I)V method_18072 b method_18072 + m ()Z isShotAtAngle t method_7477 + m ()V explode v method_16830 + m ()Z hasExplosion w method_20308 + m ()V dealExplosionDamage x method_7475 + m ()Z isAttachedToEntity y method_7476 + m ()Ljava/util/List; getExplosions z method_57318 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 shooter + p 3 x + p 5 y + p 7 z + p 9 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 stack + p 3 shooter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;DDDZ)V + p 1 level + p 2 stack + p 3 x + p 5 y + p 7 z + p 9 shotAtAngle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;DDDZ)V + p 1 level + p 2 stack + p 3 shooter + p 4 x + p 6 y + p 8 z + p 10 shotAtAngle + m ()V +c net/minecraft/world/entity/projectile/FishingHook cnl net/minecraft/class_1536 + f Lorg/slf4j/Logger; LOGGER b field_36336 + f Lnet/minecraft/util/RandomSource; syncronizedRandom c field_23231 + f Z biting d field_23232 + f I outOfWaterTime e field_23233 + f I MAX_OUT_OF_WATER_TIME f field_30665 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_HOOKED_ENTITY g field_7170 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_BITING h field_23234 + f I life i field_7167 + f I nibble j field_7173 + f I timeUntilLured k field_7174 + f I timeUntilHooked l field_7172 + f F fishAngle m field_7169 + f Z openWater n field_23134 + f Lnet/minecraft/world/entity/Entity; hookedIn o field_7165 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; currentState p field_7175 + f I luck q field_7171 + f I lureSpeed r field_7168 + m (Lnet/minecraft/world/entity/Entity;)V setHookedEntity A method_6951 + p 1 hookedEntity + m (Lnet/minecraft/world/entity/player/Player;)Z shouldStopFishing a method_6959 + p 1 player + m (Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType;Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; method_26340 a method_26340 + m (Lnet/minecraft/world/entity/projectile/FishingHook;)V updateOwnerInfo a method_36210 + p 1 fishingHook + m (Lnet/minecraft/world/item/ItemStack;)I retrieve a method_6957 + p 1 stack + m (Lnet/minecraft/core/BlockPos;)V catchingFish a method_6949 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; getOpenWaterTypeForArea a method_26341 + p 1 firstPos + p 2 secondPos + m (Lnet/minecraft/core/BlockPos;)Z calculateOpenWater b method_26086 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; getOpenWaterTypeForBlock c method_26342 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)V pullEntity d method_6954 + p 1 entity + m ()Z isOpenWaterFishing p method_26088 + m ()Lnet/minecraft/world/entity/player/Player; getPlayerOwner t method_6947 + m ()Lnet/minecraft/world/entity/Entity; getHookedIn v method_26957 + m ()V checkCollision w method_6958 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;II)V + p 1 entityType + p 2 level + p 3 luck + p 4 lureSpeed + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;II)V + p 1 player + p 2 level + p 3 luck + p 4 lureSpeed + m ()V +c net/minecraft/world/entity/projectile/FishingHook$FishHookState cnl$a net/minecraft/class_1536$class_1537 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; FLYING a field_7180 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; HOOKED_IN_ENTITY b field_7178 + f Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; BOBBING c field_7179 + f [Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; $VALUES d field_7181 + m ()[Lnet/minecraft/world/entity/projectile/FishingHook$FishHookState; $values a method_36664 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/FishingHook$OpenWaterType cnl$b net/minecraft/class_1536$class_4984 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; ABOVE_WATER a field_23236 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; INSIDE_WATER b field_23237 + f Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; INVALID c field_23238 + f [Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; $VALUES d field_23239 + m ()[Lnet/minecraft/world/entity/projectile/FishingHook$OpenWaterType; $values a method_36665 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/projectile/ItemSupplier cnm net/minecraft/class_3856 + m ()Lnet/minecraft/world/item/ItemStack; getItem p method_7495 +c net/minecraft/world/entity/projectile/LargeFireball cnn net/minecraft/class_1674 + f I explosionPower e field_7624 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;I)V + p 1 level + p 2 owner + p 3 movement + p 4 explosionPower +c net/minecraft/world/entity/projectile/LlamaSpit cno net/minecraft/class_1673 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/animal/horse/Llama;)V + p 1 level + p 2 spitter +c net/minecraft/world/entity/projectile/Projectile cnp net/minecraft/class_1676 + f Ljava/util/UUID; ownerUUID b field_22478 + f Lnet/minecraft/world/entity/Entity; cachedOwner c field_33399 + f Z leftOwner d field_23740 + f Z hasBeenShot e field_28646 + f Lnet/minecraft/world/entity/Entity; lastDeflectedBy f field_51621 + m ()Lnet/minecraft/world/entity/Entity; getEffectSource H method_37225 + m ()V updateRotation I method_26962 + m (Lnet/minecraft/world/entity/Entity;FFFFF)V shootFromRotation a method_24919 + p 1 shooter + p 2 x + p 3 y + p 4 z + p 5 velocity + p 6 inaccuracy + m (Lnet/minecraft/world/entity/projectile/ProjectileDeflection;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Z)Z deflect a method_59859 + p 1 deflection + p 2 entity + p 3 owner + p 4 deflectedByPlayer + m (Lnet/minecraft/world/phys/BlockHitResult;)V onHitBlock a method_24920 + p 1 result + m (Lnet/minecraft/world/phys/EntityHitResult;)V onHitEntity a method_7454 + c Called when the arrow hits an entity + p 1 result + m (Lnet/minecraft/world/phys/HitResult;)V onHit a method_7488 + c Called when this EntityFireball hits a block or entity. + p 1 result + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)Lit/unimi/dsi/fastutil/doubles/DoubleDoubleImmutablePair; calculateHorizontalHurtKnockbackDirection a_ method_59959 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;)Z canHitEntity b method_26958 + p 1 target + m (Lnet/minecraft/world/entity/Entity;Z)V onDeflection b method_59525 + p 1 entity + p 2 deflectedByPlayer + m (Lnet/minecraft/world/level/Level;)Z mayBreak b method_54457 + p 1 level + m (Lnet/minecraft/world/phys/HitResult;)Lnet/minecraft/world/entity/projectile/ProjectileDeflection; hitTargetOrDeflectSelf b method_59860 + p 1 hitResult + m (DDDFF)V shoot c method_7485 + c Similar to setArrowHeading, it's point the throwable entity to a x, y, z direction. + p 1 x + p 3 y + p 5 z + p 7 velocity + p 8 inaccuracy + m (Lnet/minecraft/world/entity/Entity;)V setOwner c method_7432 + p 1 owner + m (DDDFF)Lnet/minecraft/world/phys/Vec3; getMovementToShoot d method_58645 + p 1 x + p 3 y + p 5 z + p 7 velocity + p 8 inaccuracy + m (Lnet/minecraft/world/entity/Entity;)Z method_26959 d method_26959 + m (FF)F lerpRotation e method_26960 + p 0 currentRotation + p 1 targetRotation + m (Lnet/minecraft/world/entity/Entity;)Z ownedBy e method_34714 + p 1 entity + m ()Z checkLeftOwner t method_26961 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level +c net/minecraft/world/entity/projectile/ProjectileDeflection cnq net/minecraft/class_9109 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; NONE a field_48347 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; REVERSE b field_48348 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; AIM_DEFLECT c field_51509 + f Lnet/minecraft/world/entity/projectile/ProjectileDeflection; MOMENTUM_DEFLECT d field_51510 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_59861 a method_59861 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_59862 b method_59862 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56095 c method_56095 + m (Lnet/minecraft/world/entity/projectile/Projectile;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/util/RandomSource;)V method_56096 d method_56096 + m ()V +c net/minecraft/world/entity/projectile/ProjectileUtil cnr net/minecraft/class_1675 + f F DEFAULT_ENTITY_HIT_RESULT_MARGIN a field_46654 + m (Lnet/minecraft/world/entity/Entity;F)V rotateTowardsMovement a method_7484 + p 0 projectile + p 1 rotationSpeed + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_18075 + c Gets the EntityRayTraceResult representing the entity hit + p 0 shooter + p 1 startVec + p 2 endVec + p 3 boundingBox + p 4 filter + p 5 distance + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/HitResult; getHitResultOnMoveVector a method_49997 + p 0 projectile + p 1 filter + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;D)Lnet/minecraft/world/phys/HitResult; getHitResultOnViewVector a method_49998 + p 0 projectile + p 1 filter + p 2 scale + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult; getHitResultOnMoveVector a method_55054 + p 0 projectile + p 1 filter + p 2 clipContext + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/InteractionHand; getWeaponHoldingHand a method_18812 + p 0 shooter + p 1 weapon + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;FLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; getMobArrow a method_18813 + p 0 shooter + p 1 arrow + p 2 velocity + p 3 weapon + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_18077 + c Gets the EntityHitResult representing the entity hit + p 0 level + p 1 projectile + p 2 startVec + p 3 endVec + p 4 boundingBox + p 5 filter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;F)Lnet/minecraft/world/phys/EntityHitResult; getEntityHitResult a method_37226 + c Gets the EntityHitResult representing the entity hit + p 0 level + p 1 projectile + p 2 startVec + p 3 endVec + p 4 boundingBox + p 5 filter + p 6 inflationAmount + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;FLnet/minecraft/world/level/ClipContext$Block;)Lnet/minecraft/world/phys/HitResult; getHitResult a method_18074 + p 0 pos + p 1 projectile + p 2 filter + p 3 deltaMovement + p 4 level + p 5 margin + p 6 clipContext + m ()V +c net/minecraft/world/entity/projectile/ShulkerBullet cns net/minecraft/class_1678 + f D SPEED b field_30666 + f Lnet/minecraft/world/entity/Entity; finalTarget c field_7626 + f Lnet/minecraft/core/Direction; currentMoveDirection d field_7628 + f I flightSteps e field_7627 + f D targetDeltaX f field_7635 + f D targetDeltaY g field_7633 + f D targetDeltaZ h field_7625 + f Ljava/util/UUID; targetId i field_7632 + m (Lnet/minecraft/core/Direction$Axis;)V selectNextMoveDirection a method_7486 + p 1 axis + m (Lnet/minecraft/core/Direction;)V setMoveDirection a method_7487 + p 1 direction + m ()Lnet/minecraft/core/Direction; getMoveDirection p method_35208 + m ()V destroy t method_49723 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction$Axis;)V + p 1 level + p 2 shooter + p 3 finalTarget + p 4 axis +c net/minecraft/world/entity/projectile/SmallFireball cnt net/minecraft/class_1677 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 movement +c net/minecraft/world/entity/projectile/Snowball cnu net/minecraft/class_1680 + m ()Lnet/minecraft/core/particles/ParticleOptions; getParticle v method_16939 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/projectile/SpectralArrow cnv net/minecraft/class_1679 + f I duration f field_7636 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 owner + p 3 pickupItemStack + p 4 firedFromWeapon + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + p 9 firedFromWeapon +c net/minecraft/world/entity/projectile/ThrowableItemProjectile cnw net/minecraft/class_3857 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ITEM_STACK b field_17082 + m (Lnet/minecraft/world/item/ItemStack;)V setItem a method_16940 + p 1 stack + m ()Lnet/minecraft/world/item/Item; getDefaultItem t method_16942 + m ()Lnet/minecraft/world/item/ItemStack; method_57319 v method_57319 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 shooter + p 3 level + m ()V +c net/minecraft/world/entity/projectile/ThrowableProjectile cnx net/minecraft/class_1682 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 shooter + p 3 level +c net/minecraft/world/entity/projectile/ThrownEgg cny net/minecraft/class_1681 + f Lnet/minecraft/world/entity/EntityDimensions; ZERO_SIZED_DIMENSIONS b field_51894 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/ThrownEnderpearl cnz net/minecraft/class_1684 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;)Z isAllowedToTeleportOwner a method_60985 + p 0 entity + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)V playSound a method_60729 + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter +c net/minecraft/world/entity/projectile/ThrownExperienceBottle coa net/minecraft/class_1683 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/projectile/ThrownPotion cob net/minecraft/class_1686 + f D SPLASH_RANGE b field_30667 + f Ljava/util/function/Predicate; WATER_SENSITIVE_OR_ON_FIRE c field_40737 + f D SPLASH_RANGE_SQ d field_30668 + m (DI)I method_48575 a method_48575 + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_46401 a method_46401 + m (Lnet/minecraft/world/item/alchemy/PotionContents;)V makeAreaOfEffectCloud a method_7497 + p 1 potionContents + m (Ljava/lang/Iterable;Lnet/minecraft/world/entity/Entity;)V applySplash a method_7498 + p 1 effects + p 2 entity + m (Lnet/minecraft/core/BlockPos;)V dowseFire a method_7499 + p 1 pos + m ()V applyWater v method_7500 + m ()Z isLingering w method_7501 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 level + p 2 shooter + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/projectile/ThrownTrident coc net/minecraft/class_1685 + f I clientSideReturnTridentTickCount f field_7649 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_LOYALTY g field_7647 + f Lnet/minecraft/network/syncher/EntityDataAccessor; ID_FOIL h field_21514 + f Z dealtDamage i field_7648 + m ()Z isFoil F method_23751 + m ()Z isAcceptibleReturnOwner J method_7493 + m (Lnet/minecraft/world/item/Item;)V method_60616 b method_60616 + m (Lnet/minecraft/world/item/ItemStack;)B getLoyaltyFromItem c method_59960 + p 1 stack + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 shooter + p 3 pickupItemStack + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 pickupItemStack + m ()V +c net/minecraft/world/entity/projectile/WitherSkull cod net/minecraft/class_1687 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_DANGEROUS e field_7654 + m (Z)V setDangerous a method_7502 + c Set whether this skull comes from an invulnerable (aura) wither boss. + p 1 invulnerable + m ()Z isDangerous y method_7503 + c Return whether this skull comes from an invulnerable (aura) wither boss. + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 owner + p 3 movement + m ()V +c net/minecraft/world/entity/projectile/package-info coe net/minecraft/class_6071 +c net/minecraft/world/entity/projectile/windcharge/AbstractWindCharge cof net/minecraft/class_9236 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR e field_50137 + f D JUMP_SCALE f field_52224 + m (Lnet/minecraft/world/phys/Vec3;)V explode a method_55055 + p 1 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDD)V + p 1 entityType + p 2 level + p 3 owner + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 movement + p 9 level + m ()V +c net/minecraft/world/entity/projectile/windcharge/BreezeWindCharge cog net/minecraft/class_9238 + f F RADIUS g field_49242 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/level/Level;)V + p 1 breeze + p 2 level +c net/minecraft/world/entity/projectile/windcharge/WindCharge coh net/minecraft/class_8956 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR g field_47579 + f F RADIUS h field_49243 + f I noDeflectTicks i field_52019 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;DDD)V + p 1 player + p 2 level + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 movement + m ()V +c net/minecraft/world/entity/raid/Raid coi net/minecraft/class_3765 + f Ljava/util/Set; heroesOfTheVillage A field_19021 + f J ticksActive B field_16605 + f Lnet/minecraft/core/BlockPos; center C field_16613 + f Lnet/minecraft/server/level/ServerLevel; level D field_16619 + f Z started E field_16611 + f I id F field_16625 + f F totalHealth G field_16620 + f I raidOmenLevel H field_16623 + f Z active I field_16606 + f I groupsSpawned J field_16621 + f Lnet/minecraft/server/level/ServerBossEvent; raidEvent K field_16607 + f I postRaidTicks L field_16616 + f I raidCooldownTicks M field_16614 + f Lnet/minecraft/util/RandomSource; random N field_16608 + f I numGroups O field_19022 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; status P field_19023 + f I celebrationTicks Q field_19024 + f Ljava/util/Optional; waveSpawnPos R field_19172 + f I VILLAGE_RADIUS_BUFFER a field_30669 + f I MAX_NO_ACTION_TIME b field_30670 + f I MAX_CELEBRATION_TICKS c field_30671 + f I TICKS_PER_DAY d field_30672 + f I DEFAULT_MAX_RAID_OMEN_LEVEL e field_30673 + f I VALID_RAID_RADIUS_SQR f field_30674 + f I RAID_REMOVAL_THRESHOLD_SQR g field_30675 + f I SECTION_RADIUS_FOR_FINDING_NEW_VILLAGE_CENTER h field_30676 + f I ATTEMPT_RAID_FARTHEST i field_30677 + f I ATTEMPT_RAID_CLOSE j field_30678 + f I ATTEMPT_RAID_INSIDE k field_30679 + f I VILLAGE_SEARCH_RADIUS l field_30680 + f I RAID_TIMEOUT_TICKS m field_30681 + f I NUM_SPAWN_ATTEMPTS n field_30682 + f Lnet/minecraft/network/chat/Component; OMINOUS_BANNER_PATTERN_NAME o field_30683 + f Ljava/lang/String; RAIDERS_REMAINING p field_30684 + f I POST_RAID_TICK_LIMIT q field_30685 + f I DEFAULT_PRE_RAID_TICKS r field_30686 + f I OUTSIDE_RAID_BOUNDS_TIMEOUT s field_30687 + f I LOW_MOB_THRESHOLD t field_30688 + f Lnet/minecraft/network/chat/Component; RAID_NAME_COMPONENT u field_19016 + f Lnet/minecraft/network/chat/Component; RAID_BAR_VICTORY_COMPONENT v field_19019 + f Lnet/minecraft/network/chat/Component; RAID_BAR_DEFEAT_COMPONENT w field_19020 + f I HERO_OF_THE_VILLAGE_DURATION x field_30689 + f Ljava/util/Map; groupToLeaderMap y field_16615 + f Ljava/util/Map; groupRaiderMap z field_16618 + m ()Z isFinalWave A method_20012 + m ()Z hasBonusWave B method_20013 + m ()Z hasSpawnedBonusWave C method_20014 + m ()Z shouldSpawnBonusGroup D method_20015 + m ()V updateRaiders E method_16834 + m ()Z shouldSpawnGroup F method_16519 + m ()V setDirty G method_16520 + m ()Z isOver a method_16832 + m (I)V setRaidOmenLevel a method_35211 + p 1 raidOmenLevel + m (II)Lnet/minecraft/core/BlockPos; findRandomSpawnPos a method_16525 + p 1 offsetMultiplier + p 2 maxTry + m (ILnet/minecraft/world/entity/raid/Raider;)V setLeader a method_16491 + p 1 wave + p 2 raider + m (ILnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/core/BlockPos;Z)V joinRaid a method_16516 + p 1 wave + p 2 raider + p 3 pos + p 4 isRecruited + m (ILnet/minecraft/world/entity/raid/Raider;Z)Z addWaveMob a method_16487 + p 1 wave + p 2 raider + p 3 isRecruited + m (Lnet/minecraft/server/level/ServerPlayer;)Z absorbRaidOmen a method_16518 + p 1 player + m (Lnet/minecraft/world/Difficulty;)I getNumGroups a method_20016 + p 1 difficulty + m (Lnet/minecraft/world/entity/Entity;)V addHeroOfTheVillage a method_20017 + p 1 player + m (Lnet/minecraft/world/entity/raid/Raid$RaiderType;IZ)I getDefaultNumSpawns a method_20018 + p 1 raiderType + p 2 wave + p 3 shouldSpawnBonusGroup + m (Lnet/minecraft/world/entity/raid/Raid$RaiderType;Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/DifficultyInstance;Z)I getPotentialBonusSpawns a method_20019 + p 1 raiderType + p 2 random + p 3 wave + p 4 difficulty + p 5 shouldSpawnBonusGroup + m (Lnet/minecraft/world/entity/raid/Raider;Z)V removeFromRaid a method_16510 + p 1 raider + p 2 wanderedOutOfRaid + m (Ljava/lang/Integer;)Ljava/util/Set; method_16508 a method_16508 + m (Lnet/minecraft/core/BlockPos;)V playSound a method_16521 + p 1 pos + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/item/ItemStack; getLeaderBannerInstance a method_16515 + p 0 patternRegistry + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_16502 + p 1 compound + m ()Z isBetweenWaves b method_20020 + m (I)Lnet/minecraft/world/entity/raid/Raider; getLeader b method_16496 + p 1 wave + m (ILnet/minecraft/world/entity/raid/Raider;)Z addWaveMob b method_16505 + p 1 wave + p 2 raider + m (Lnet/minecraft/server/level/ServerPlayer;)Z method_19208 b method_19208 + m (Lnet/minecraft/core/BlockPos;)V spawnGroup b method_16522 + p 1 pos + m ()Z hasFirstWaveSpawned c method_20021 + m (I)V removeLeader c method_16500 + p 1 wave + m (Lnet/minecraft/core/BlockPos;)V setCenter c method_20509 + p 1 center + m ()Z isStopped d method_20022 + m (I)Ljava/util/Optional; getValidSpawnPos d method_20267 + p 1 offsetMultiplier + m (Lnet/minecraft/core/BlockPos;)D method_20510 d method_20510 + m ()Z isVictory e method_20023 + m ()Z isLoss f method_20024 + m ()F getTotalHealth g method_35212 + m ()Ljava/util/Set; getAllRaiders h method_35213 + m ()Lnet/minecraft/world/level/Level; getLevel i method_16831 + m ()Z isStarted j method_16524 + m ()I getGroupsSpawned k method_16490 + m ()I getMaxRaidOmenLevel l method_16514 + m ()I getRaidOmenLevel m method_16493 + m ()V stop n method_16506 + m ()V tick o method_16509 + m ()V updateBossbar p method_16523 + m ()F getHealthOfLivingRaiders q method_16513 + m ()I getTotalRaidersAlive r method_16517 + m ()Lnet/minecraft/core/BlockPos; getCenter s method_16495 + m ()I getId t method_16494 + m ()Z isActive u method_16504 + m ()F getEnchantOdds v method_20025 + m ()Ljava/util/function/Predicate; validPlayer w method_16501 + m ()V updatePlayers x method_16499 + m ()V moveRaidCenterToNearbyVillageSection y method_20511 + m ()Z hasMoreWaves z method_16833 + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V + p 1 id + p 2 level + p 3 center + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)V + p 1 level + p 2 compound + m ()V +c net/minecraft/world/entity/raid/Raid$1 coi$1 net/minecraft/class_3765$1 + f [I $SwitchMap$net$minecraft$world$Difficulty a field_16626 + m ()V +c net/minecraft/world/entity/raid/Raid$RaidStatus coi$a net/minecraft/class_3765$class_4259 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; ONGOING a field_19026 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; VICTORY b field_19027 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; LOSS c field_19028 + f Lnet/minecraft/world/entity/raid/Raid$RaidStatus; STOPPED d field_19029 + f [Lnet/minecraft/world/entity/raid/Raid$RaidStatus; VALUES e field_19030 + f [Lnet/minecraft/world/entity/raid/Raid$RaidStatus; $VALUES f field_19031 + m ()Ljava/lang/String; getName a method_20026 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/raid/Raid$RaidStatus; getByName a method_20028 + p 0 name + m ()[Lnet/minecraft/world/entity/raid/Raid$RaidStatus; $values b method_36666 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/raid/Raid$RaiderType coi$b net/minecraft/class_3765$class_3766 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; VINDICATOR a field_16631 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; EVOKER b field_16634 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; PILLAGER c field_16633 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; WITCH d field_16635 + f Lnet/minecraft/world/entity/raid/Raid$RaiderType; RAVAGER e field_16630 + f [Lnet/minecraft/world/entity/raid/Raid$RaiderType; VALUES f field_16636 + f Lnet/minecraft/world/entity/EntityType; entityType g field_16629 + f [I spawnsPerWaveBeforeBonus h field_16628 + f [Lnet/minecraft/world/entity/raid/Raid$RaiderType; $VALUES i field_16632 + m ()[Lnet/minecraft/world/entity/raid/Raid$RaiderType; $values a method_36667 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EntityType;[I)V + p 3 entityType + p 4 spawnsPerWaveBeforeBonus + m ()V +c net/minecraft/world/entity/raid/Raider coj net/minecraft/class_3763 + f Ljava/util/function/Predicate; ALLOWED_ITEMS b field_16600 + f Lnet/minecraft/network/syncher/EntityDataAccessor; IS_CELEBRATING c field_19032 + f Z canJoinRaid cc field_16602 + f I ticksOutsideRaid cd field_16997 + f Lnet/minecraft/world/entity/raid/Raid; raid d field_16599 + f I wave e field_16601 + m (Z)V setCanJoinRaid A method_16480 + p 1 canJoinRaid + m (Z)V setCelebrating B method_20036 + p 1 celebrating + m (Lnet/minecraft/server/level/ServerLevel;IZ)V applyRaidBuffs a method_16484 + p 1 level + p 2 wave + p 3 unused + m (Lnet/minecraft/world/entity/raid/Raid;)V setCurrentRaid a method_16476 + p 1 raid + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20029 a method_20029 + m ()Lnet/minecraft/sounds/SoundEvent; getCelebrateSound ai_ method_20033 + m (I)V setWave b method_16477 + p 1 wave + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20032 b method_20032 + m (I)V setTicksOutsideRaid c method_16835 + p 1 ticksOutsideRaid + m (Lnet/minecraft/world/entity/item/ItemEntity;)Z method_16483 c method_16483 + m (Lnet/minecraft/world/entity/raid/Raider;)Z method_19632 c method_19632 + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_20035 d method_20035 + m (Lnet/minecraft/world/entity/raid/Raider;)Lnet/minecraft/util/RandomSource; method_36668 e method_36668 + m ()Z hasRaid gA method_58647 + m ()Z hasActiveRaid gB method_16482 + m ()I getWave gC method_16486 + m ()Z isCelebrating gD method_20034 + m ()I getTicksOutsideRaid gE method_16836 + m ()Z canJoinRaid gx method_16481 + m ()Lnet/minecraft/world/entity/raid/Raid; getCurrentRaid gy method_16478 + m ()Z isCaptain gz method_58646 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/raid/Raider$HoldGroundAttackGoal coj$a net/minecraft/class_3763$class_4223 + f Lnet/minecraft/world/entity/ai/targeting/TargetingConditions; shoutTargeting a field_18881 + f Lnet/minecraft/world/entity/raid/Raider; mob b field_18883 + f F hostileRadiusSqr c field_18884 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/monster/AbstractIllager;F)V + p 2 mob + p 3 hostileRadiusSquare +c net/minecraft/world/entity/raid/Raider$ObtainRaidLeaderBannerGoal coj$b net/minecraft/class_3763$class_3764 + f Lnet/minecraft/world/entity/raid/Raider; mob a field_16603 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 mob +c net/minecraft/world/entity/raid/Raider$RaiderCelebration coj$c net/minecraft/class_3763$class_4260 + f Lnet/minecraft/world/entity/raid/Raider; field_19033 a field_19033 + f Lnet/minecraft/world/entity/raid/Raider; mob b field_19034 + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raider;)V + p 2 mob +c net/minecraft/world/entity/raid/Raider$RaiderMoveThroughVillageGoal coj$d net/minecraft/class_3763$class_4261 + f Lnet/minecraft/world/entity/raid/Raider; raider a field_19035 + f D speedModifier b field_19036 + f Lnet/minecraft/core/BlockPos; poiPos c field_19037 + f Ljava/util/List; visited d field_19038 + f I distanceToPoi e field_19039 + f Z stuck f field_19040 + m (Lnet/minecraft/core/BlockPos;)Z hasNotVisited a method_20038 + p 1 pos + m (Lnet/minecraft/core/Holder;)Z method_20037 a method_20037 + m ()Z isValidRaid h method_20039 + m ()Z hasSuitablePoi i method_20040 + m ()V updateVisited k method_20041 + m (Lnet/minecraft/world/entity/raid/Raider;DI)V + p 1 raider + p 2 speedModifier + p 4 distanceToPoi +c net/minecraft/world/entity/raid/Raids cok net/minecraft/class_3767 + f Ljava/lang/String; RAID_FILE_ID a field_30690 + f Ljava/util/Map; raidMap b field_16639 + f Lnet/minecraft/server/level/ServerLevel; level c field_16641 + f I nextAvailableID d field_16638 + f I tick e field_16637 + m ()V tick a method_16539 + m (I)Lnet/minecraft/world/entity/raid/Raid; get a method_16541 + p 1 id + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52559 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; getOrCreateRaid a method_16532 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/entity/raid/Raids; load a method_77 + p 0 level + p 1 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/entity/raid/Raids; method_52561 a method_52561 + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/raid/Raid; createOrExtendRaid a method_16540 + p 1 player + p 2 pos + m (Lnet/minecraft/world/entity/raid/Raider;Lnet/minecraft/world/entity/raid/Raid;)Z canJoinRaid a method_16838 + p 0 raider + p 1 raid + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/entity/raid/Raid; getNearbyRaid a method_19209 + p 1 pos + p 2 distance + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; getFileId a method_16533 + p 0 dimensionTypeHolder + m ()I getUniqueId b method_16534 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/raid/Raids; method_52560 b method_52560 + m (Lnet/minecraft/core/Holder;)Z method_44012 b method_44012 + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/entity/raid/package-info col net/minecraft/class_6072 +c net/minecraft/world/entity/schedule/Activity com net/minecraft/class_4168 + f Ljava/lang/String; name A field_18600 + f I hashCode B field_23827 + f Lnet/minecraft/world/entity/schedule/Activity; CORE a field_18594 + f Lnet/minecraft/world/entity/schedule/Activity; IDLE b field_18595 + f Lnet/minecraft/world/entity/schedule/Activity; WORK c field_18596 + f Lnet/minecraft/world/entity/schedule/Activity; PLAY d field_18885 + f Lnet/minecraft/world/entity/schedule/Activity; REST e field_18597 + f Lnet/minecraft/world/entity/schedule/Activity; MEET f field_18598 + f Lnet/minecraft/world/entity/schedule/Activity; PANIC g field_18599 + f Lnet/minecraft/world/entity/schedule/Activity; RAID h field_19041 + f Lnet/minecraft/world/entity/schedule/Activity; PRE_RAID i field_19042 + f Lnet/minecraft/world/entity/schedule/Activity; HIDE j field_19043 + f Lnet/minecraft/world/entity/schedule/Activity; FIGHT k field_22396 + f Lnet/minecraft/world/entity/schedule/Activity; CELEBRATE l field_22397 + f Lnet/minecraft/world/entity/schedule/Activity; ADMIRE_ITEM m field_22398 + f Lnet/minecraft/world/entity/schedule/Activity; AVOID n field_22399 + f Lnet/minecraft/world/entity/schedule/Activity; RIDE o field_22400 + f Lnet/minecraft/world/entity/schedule/Activity; PLAY_DEAD p field_28352 + f Lnet/minecraft/world/entity/schedule/Activity; LONG_JUMP q field_30691 + f Lnet/minecraft/world/entity/schedule/Activity; RAM r field_33504 + f Lnet/minecraft/world/entity/schedule/Activity; TONGUE s field_37503 + f Lnet/minecraft/world/entity/schedule/Activity; SWIM t field_37504 + f Lnet/minecraft/world/entity/schedule/Activity; LAY_SPAWN u field_37505 + f Lnet/minecraft/world/entity/schedule/Activity; SNIFF v field_38199 + f Lnet/minecraft/world/entity/schedule/Activity; INVESTIGATE w field_38200 + f Lnet/minecraft/world/entity/schedule/Activity; ROAR x field_38201 + f Lnet/minecraft/world/entity/schedule/Activity; EMERGE y field_38202 + f Lnet/minecraft/world/entity/schedule/Activity; DIG z field_38203 + m ()Ljava/lang/String; getName a method_19634 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/schedule/Activity; register a method_19210 + p 0 key + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/entity/schedule/Keyframe coo net/minecraft/class_4169 + f I timeStamp a field_18601 + f F value b field_18602 + m ()I getTimeStamp a method_19211 + m ()F getValue b method_19212 + m (IF)V + p 1 timestamp + p 2 value +c net/minecraft/world/entity/schedule/Schedule cop net/minecraft/class_4170 + f I WORK_START_TIME a field_30692 + f I TOTAL_WORK_TIME b field_30693 + f Lnet/minecraft/world/entity/schedule/Schedule; EMPTY c field_18603 + f Lnet/minecraft/world/entity/schedule/Schedule; SIMPLE d field_18604 + f Lnet/minecraft/world/entity/schedule/Schedule; VILLAGER_BABY e field_18605 + f Lnet/minecraft/world/entity/schedule/Schedule; VILLAGER_DEFAULT f field_18606 + f Ljava/util/Map; timelines g field_18607 + m (I)Lnet/minecraft/world/entity/schedule/Activity; getActivityAt a method_19213 + p 1 dayTime + m (ILjava/util/Map$Entry;)D method_19214 a method_19214 + m (Lnet/minecraft/world/entity/schedule/Activity;)V ensureTimelineExistsFor a method_19215 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;Ljava/util/Map$Entry;)Z method_19216 a method_19216 + m (Ljava/lang/String;)Lnet/minecraft/world/entity/schedule/ScheduleBuilder; register a method_19217 + p 0 key + m (Lnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/world/entity/schedule/Timeline; getTimelineFor b method_19218 + p 1 activity + m (Lnet/minecraft/world/entity/schedule/Activity;)Ljava/util/List; getAllTimelinesExceptFor c method_19219 + p 1 activity + m ()V + m ()V +c net/minecraft/world/entity/schedule/ScheduleBuilder coq net/minecraft/class_4171 + f Lnet/minecraft/world/entity/schedule/Schedule; schedule a field_18608 + f Ljava/util/List; transitions b field_18609 + m ()Lnet/minecraft/world/entity/schedule/Schedule; build a method_19220 + m (ILnet/minecraft/world/entity/schedule/Activity;)Lnet/minecraft/world/entity/schedule/ScheduleBuilder; changeActivityAt a method_19221 + p 1 duration + p 2 activity + m (Lnet/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition;)V method_19222 a method_19222 + m (Lnet/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition;Lnet/minecraft/world/entity/schedule/Timeline;)V method_19223 a method_19223 + m (Lnet/minecraft/world/entity/schedule/Schedule;)V + p 1 schedule +c net/minecraft/world/entity/schedule/ScheduleBuilder$ActivityTransition coq$a net/minecraft/class_4171$class_4172 + f I time a field_18610 + f Lnet/minecraft/world/entity/schedule/Activity; activity b field_18611 + m ()I getTime a method_19224 + m ()Lnet/minecraft/world/entity/schedule/Activity; getActivity b method_19225 + m (ILnet/minecraft/world/entity/schedule/Activity;)V + p 1 time + p 2 activity +c net/minecraft/world/entity/schedule/Timeline cor net/minecraft/class_4173 + f Ljava/util/List; keyframes a field_18612 + f I previousIndex b field_18613 + m ()Lcom/google/common/collect/ImmutableList; getKeyframes a method_35214 + m (I)F getValueAt a method_19226 + p 1 dayTime + m (IF)Lnet/minecraft/world/entity/schedule/Timeline; addKeyframe a method_19227 + p 1 duration + p 2 active + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectSortedMap;Lnet/minecraft/world/entity/schedule/Keyframe;)V method_19228 a method_19228 + m (Ljava/util/Collection;)Lnet/minecraft/world/entity/schedule/Timeline; addKeyframes a method_35215 + p 1 frames + m ()V sortAndDeduplicateKeyframes b method_19229 + m ()V +c net/minecraft/world/entity/schedule/package-info cos net/minecraft/class_6073 +c net/minecraft/world/entity/vehicle/AbstractMinecart cot net/minecraft/class_1688 + f F WATER_SLOWDOWN_FACTOR b field_30694 + f Lnet/minecraft/world/phys/Vec3; LOWERED_PASSENGER_ATTACHMENT c field_47822 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DISPLAY_BLOCK d field_7671 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DISPLAY_OFFSET e field_7661 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_CUSTOM_DISPLAY i field_7670 + f Lcom/google/common/collect/ImmutableMap; POSE_DISMOUNT_HEIGHTS j field_24464 + f Z flipped k field_7660 + f Z onRails l field_44917 + f I lerpSteps m field_45135 + f D lerpX n field_45136 + f D lerpY o field_45137 + f D lerpZ p field_45138 + f D lerpYRot q field_45139 + f D lerpXRot r field_45140 + f Lnet/minecraft/world/phys/Vec3; targetDeltaMovement s field_45141 + f Ljava/util/Map; EXITS t field_7664 + m ()Z hasCustomDisplay A method_7510 + m (DDDD)Lnet/minecraft/world/phys/Vec3; getPosOffs a method_7505 + p 1 x + p 3 y + p 5 z + p 7 offset + m (IIIZ)V activateMinecart a method_7506 + c Called every tick the minecart is on an activator rail. + p 1 x + p 2 y + p 3 z + p 4 powered + m (Lnet/minecraft/server/level/ServerLevel;DDDLnet/minecraft/world/entity/vehicle/AbstractMinecart$Type;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/entity/vehicle/AbstractMinecart; createMinecart a method_7523 + p 0 level + p 1 x + p 3 y + p 5 z + p 7 type + p 8 stack + p 9 player + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)Lcom/mojang/datafixers/util/Pair; exits a method_22864 + p 0 shape + m (Ljava/util/EnumMap;)V method_22865 a method_22865 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30339 a method_30339 + m (Lnet/minecraft/core/BlockPos;)Z isRedstoneConductor a method_18803 + p 1 pos + m (Z)V setCustomDisplay a method_7511 + p 1 customDisplay + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30340 b method_30340 + m (I)V setDisplayOffset c method_7515 + p 1 displayOffset + m (Lnet/minecraft/world/level/block/state/BlockState;)V setDisplayBlockState c method_7527 + p 1 displayState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V moveAlongTrack c method_7513 + p 1 pos + p 2 state + m ()D getMaxSpeed p method_7504 + c Gets the maximum speed for a minecart + m (DDD)Lnet/minecraft/world/phys/Vec3; getPos p method_7508 + p 1 x + p 3 y + p 5 z + m ()V comeOffTrack s method_7512 + c Moves a minecart that is not attached to a rail + m ()V applyNaturalSlowdown t method_7525 + m ()Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; getMinecartType v method_7518 + m ()Lnet/minecraft/world/level/block/state/BlockState; getDisplayBlockState w method_7519 + m ()Lnet/minecraft/world/level/block/state/BlockState; getDefaultDisplayBlockState x method_7517 + m ()I getDisplayOffset y method_7514 + m ()I getDefaultDisplayOffset z method_7526 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;DDD)V + p 1 entityType + p 2 level + p 3 x + p 5 y + p 7 z + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecart$1 cot$1 net/minecraft/class_1688$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_7682 + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecart$Type cot$a net/minecraft/class_1688$class_1689 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; RIDEABLE a field_7674 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; CHEST b field_7678 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; FURNACE c field_7679 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; TNT d field_7675 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; SPAWNER e field_7680 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; HOPPER f field_7677 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; COMMAND_BLOCK g field_7681 + f [Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; $VALUES h field_7673 + m ()[Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; $values a method_36669 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/vehicle/AbstractMinecartContainer cou net/minecraft/class_1693 + f Lnet/minecraft/core/NonNullList; itemStacks c field_7735 + f Lnet/minecraft/resources/ResourceKey; lootTable d field_7734 + f J lootTableSeed e field_7732 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; createMenu a method_17357 + p 1 containerId + p 2 playerInventory + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_7562 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/entity/EntityType;DDDLnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 x + p 4 y + p 6 z + p 8 level +c net/minecraft/world/entity/vehicle/Boat cov net/minecraft/class_1690 + f D lerpYRot aD field_7699 + f D lerpXRot aE field_7684 + f Z inputLeft aF field_7710 + f Z inputRight aG field_7695 + f Z inputUp aH field_7709 + f Z inputDown aI field_7693 + f D waterLevel aJ field_7697 + f F landFriction aK field_7714 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; status aL field_7702 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; oldStatus aM field_7701 + f D lastYd aN field_7696 + f Z isAboveBubbleColumn aO field_7689 + f Z bubbleColumnDirectionIsDown aP field_7703 + f F bubbleMultiplier aQ field_7712 + f F bubbleAngle aR field_7694 + f F bubbleAngleO aS field_7711 + f Lnet/minecraft/world/entity/Leashable$LeashData; leashData aT field_52225 + f I PADDLE_LEFT b field_30697 + f I PADDLE_RIGHT c field_30698 + f D PADDLE_SOUND_TIME d field_30699 + f I BUBBLE_TIME e field_30700 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_TYPE i field_7698 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_PADDLE_LEFT j field_7687 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_PADDLE_RIGHT k field_7713 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_BUBBLE_TIME l field_7691 + f I TIME_TO_EJECT m field_30695 + f F PADDLE_SPEED n field_30696 + f [F paddlePositions o field_7704 + f F invFriction p field_7692 + f F outOfControlTicks q field_7706 + f F deltaRotation r field_7690 + f I lerpSteps s field_7708 + f D lerpX t field_7686 + f D lerpY u field_7700 + f D lerpZ v field_7685 + m ()V tickBubbleColumn B method_7550 + m ()V tickLerp C method_7555 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Status; getStatus D method_7552 + c Determines whether the boat is in water, gliding on land, or in air + m ()Z checkInWater E method_7545 + m ()I getMaxPassengers F method_42281 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Status; isUnderwater H method_7532 + c Decides whether the boat is currently underwater. + m ()V floatBoat I method_7534 + c Update the boat's speed, based on momentum. + m ()V controlBoat J method_7549 + m ()I getBubbleTime K method_7539 + m (F)F getBubbleAngle a method_7547 + p 1 partialTicks + m (IF)F getRowingTime a method_7551 + p 1 side + p 2 limbSwing + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Z canVehicleCollide a method_30959 + p 0 vehicle + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)V setVariant a method_47884 + p 1 variant + m (ZZZZ)V setInput a method_7535 + p 1 inputLeft + p 2 inputRight + p 3 inputUp + p 4 inputDown + m (I)V setBubbleTime b method_7531 + p 1 bubbleTime + m (ZZ)V setPaddleState b method_7538 + p 1 left + p 2 right + m (I)Z getPaddleState c method_7556 + p 1 side + m (Lnet/minecraft/world/entity/Entity;)Z hasEnoughSpaceFor c method_49182 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V clampRotation d method_7546 + c Applies this boat's yaw to the given entity. Used to update the orientation of its passenger. + p 1 entityToUpdate + m (Lnet/minecraft/world/entity/Entity;)Z method_31552 e method_31552 + m ()Lnet/minecraft/sounds/SoundEvent; getPaddleSound s method_7537 + m ()F getWaterLevelAbove t method_7544 + m ()F getGroundFriction v method_7548 + c Decides how much the boat should be gliding on the land (based on any slippery blocks) + m ()F getSinglePassengerXOffset w method_42280 + m ()Lnet/minecraft/world/entity/vehicle/Boat$Type; getVariant x method_47885 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/Boat$Status cov$a net/minecraft/class_1690$class_1691 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; IN_WATER a field_7718 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; UNDER_WATER b field_7717 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; UNDER_FLOWING_WATER c field_7716 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; ON_LAND d field_7719 + f Lnet/minecraft/world/entity/vehicle/Boat$Status; IN_AIR e field_7720 + f [Lnet/minecraft/world/entity/vehicle/Boat$Status; $VALUES f field_7715 + m ()[Lnet/minecraft/world/entity/vehicle/Boat$Status; $values a method_36670 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/entity/vehicle/Boat$Type cov$b net/minecraft/class_1690$class_1692 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; OAK a field_7727 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; SPRUCE b field_7728 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; BIRCH c field_7729 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; JUNGLE d field_7730 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; ACACIA e field_7725 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; CHERRY f field_42681 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; DARK_OAK g field_7723 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; MANGROVE h field_37506 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; BAMBOO i field_40161 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC j field_41599 + f Ljava/lang/String; name k field_7726 + f Lnet/minecraft/world/level/block/Block; planks l field_7731 + f Ljava/util/function/IntFunction; BY_ID m field_41675 + f [Lnet/minecraft/world/entity/vehicle/Boat$Type; $VALUES n field_7724 + m ()Ljava/lang/String; getName a method_7559 + m (I)Lnet/minecraft/world/entity/vehicle/Boat$Type; byId a method_7558 + c Get a boat type by its enum ordinal + p 0 id + m (Ljava/lang/String;)Lnet/minecraft/world/entity/vehicle/Boat$Type; byName a method_7561 + p 0 name + m ()Lnet/minecraft/world/level/block/Block; getPlanks b method_7560 + m ()[Lnet/minecraft/world/entity/vehicle/Boat$Type; $values d method_36671 + m (Ljava/lang/String;ILnet/minecraft/world/level/block/Block;Ljava/lang/String;)V + p 3 planks + p 4 name + m ()V +c net/minecraft/world/entity/vehicle/ChestBoat cow net/minecraft/class_7264 + f I CONTAINER_SIZE i field_38207 + f Lnet/minecraft/core/NonNullList; itemStacks j field_38204 + f Lnet/minecraft/resources/ResourceKey; lootTable k field_38205 + f J lootTableSeed l field_38206 + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable e method_42282 + p 1 player + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/ChestBoat$1 cow$1 net/minecraft/class_7264$1 + f [I $SwitchMap$net$minecraft$world$entity$vehicle$Boat$Type a field_38208 + m ()V +c net/minecraft/world/entity/vehicle/ContainerEntity cox net/minecraft/class_7265 + m ()Lnet/minecraft/resources/ResourceKey; getLootTable B method_42276 + m ()J getLootTableSeed C method_42277 + m ()Lnet/minecraft/core/NonNullList; getItemStacks D method_42278 + m ()V clearItemStacks E method_42273 + m (J)V setLootTableSeed a method_42274 + p 1 lootTableSeed + m (Lnet/minecraft/resources/ResourceKey;)V setLootTable a method_42275 + p 1 lootTable + m (Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)V chestVehicleDestroyed a method_42283 + p 1 damageSource + p 2 level + p 3 entity + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V addChestVehicleSaveData a method_42288 + p 1 tag + p 2 levelRegistry + m (II)Lnet/minecraft/world/item/ItemStack; removeChestVehicleItem b method_42286 + p 1 slot + p 2 amount + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V readChestVehicleSaveData b method_42285 + p 1 tag + p 2 levelRegistry + m (ILnet/minecraft/world/item/ItemStack;)V setChestVehicleItem c method_42287 + p 1 slot + p 2 stack + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox cK method_5829 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; interactWithContainerVehicle c_ method_42284 + p 1 player + m ()Z isRemoved dJ method_31481 + m ()Lnet/minecraft/world/level/Level; level dO method_37908 + m ()Lnet/minecraft/world/phys/Vec3; position dm method_19538 + m (I)Lnet/minecraft/world/item/ItemStack; removeChestVehicleItemNoUpdate e_ method_42289 + p 1 slot + m ()V clearChestVehicleContent f method_42293 + m (Lnet/minecraft/world/entity/player/Player;)V unpackChestVehicleLootTable f method_42291 + p 1 player + m (I)Lnet/minecraft/world/item/ItemStack; getChestVehicleItem f_ method_42290 + p 1 slot + m ()Z isChestVehicleEmpty g method_42295 + m (Lnet/minecraft/world/entity/player/Player;)Z isChestVehicleStillValid g method_42294 + p 1 player + m (I)Lnet/minecraft/world/entity/SlotAccess; getChestVehicleSlot g_ method_42292 + p 1 index +c net/minecraft/world/entity/vehicle/ContainerEntity$1 cox$1 net/minecraft/class_7265$1 + f I val$slot b field_38209 + f Lnet/minecraft/world/entity/vehicle/ContainerEntity; field_38210 c field_38210 + m (Lnet/minecraft/world/entity/vehicle/ContainerEntity;I)V +c net/minecraft/world/entity/vehicle/DismountHelper coy net/minecraft/class_5275 + m (D)Z isBlockFloorValid a method_27932 + p 0 distance + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/phys/Vec3; findSafeDismountLocation a method_30769 + p 0 entityType + p 1 level + p 2 pos + p 3 onlySafePositions + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; nonClimbableShape a method_30341 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Z canDismountTo a method_27933 + p 0 level + p 1 passenger + p 2 boundingBox + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Pose;)Z canDismountTo a method_33353 + p 0 level + p 1 offset + p 2 passenger + p 3 pose + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30770 a method_30770 + m (Lnet/minecraft/core/BlockPos;ILjava/util/function/Function;)D findCeilingFrom a method_30343 + p 0 pos + p 1 ceiling + p 2 shapeForPos + m (Lnet/minecraft/core/Direction;)[[I offsetsForDirection a method_27934 + p 0 direction + m ()V +c net/minecraft/world/entity/vehicle/Minecart coz net/minecraft/class_1695 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartChest cpa net/minecraft/class_1694 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartCommandBlock cpb net/minecraft/class_1697 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_COMMAND_NAME c field_7743 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_LAST_OUTPUT d field_7741 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock e field_7744 + f I ACTIVATION_DELAY i field_30701 + f I lastActivated j field_7742 + c Cooldown before command block logic runs again in ticks + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock B method_7567 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/MinecartCommandBlock$MinecartCommandBase cpb$a net/minecraft/class_1697$class_1698 + f Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock; field_7745 b field_7745 + m ()Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock; getMinecart h method_7569 + m (Lnet/minecraft/world/entity/vehicle/MinecartCommandBlock;)V +c net/minecraft/world/entity/vehicle/MinecartFurnace cpc net/minecraft/class_1696 + f D xPush c field_7737 + f D zPush d field_7736 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_FUEL e field_7740 + f I fuel i field_7739 + f Lnet/minecraft/world/item/crafting/Ingredient; INGREDIENT j field_7738 + c The fuel item used to make the minecart move. + m ()Z hasFuel B method_7565 + m (Z)V setHasFuel b method_7564 + p 1 hasFuel + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m ()V +c net/minecraft/world/entity/vehicle/MinecartHopper cpd net/minecraft/class_1700 + f Z enabled c field_7749 + m ()Z isEnabled F method_7572 + c Get whether this hopper minecart is being blocked by an activator rail. + m ()Z suckInItems L method_7574 + m (Z)V setEnabled b method_7570 + c Set whether this hopper minecart is being blocked by an activator rail. + p 1 enabled + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartSpawner cpe net/minecraft/class_1699 + f Lnet/minecraft/world/level/BaseSpawner; spawner c field_7746 + f Ljava/lang/Runnable; ticker d field_27012 + m ()Lnet/minecraft/world/level/BaseSpawner; getSpawner B method_35216 + m (Lnet/minecraft/world/level/Level;)Ljava/lang/Runnable; createTicker b method_31553 + p 1 level + m (Lnet/minecraft/world/level/Level;)V method_31554 c method_31554 + m (Lnet/minecraft/world/level/Level;)V method_31555 d method_31555 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/MinecartSpawner$1 cpe$1 net/minecraft/class_1699$1 + f Lnet/minecraft/world/entity/vehicle/MinecartSpawner; field_7747 a field_7747 + m (Lnet/minecraft/world/entity/vehicle/MinecartSpawner;)V +c net/minecraft/world/entity/vehicle/MinecartTNT cpf net/minecraft/class_1701 + f B EVENT_PRIME c field_30703 + f I fuse d field_7751 + m ()V primeFuse B method_7575 + c Ignites this TNT cart. + m ()I getFuse C method_7577 + c Gets the remaining fuse time in ticks. + m ()Z isPrimed D method_7578 + c Returns {@code true} if the TNT minecart is ignited. + m (Lnet/minecraft/world/damagesource/DamageSource;D)V explode a method_7576 + p 1 damageSource + p 2 radiusModifier + m (Lnet/minecraft/world/damagesource/DamageSource;)Z damageSourceIgnitesTnt e method_55057 + p 0 source + m (D)V explode h method_47305 + c Makes the minecart explode. + p 1 radiusModifier + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m (Lnet/minecraft/world/level/Level;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/world/entity/vehicle/VehicleEntity cpg net/minecraft/class_8836 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_HURT f field_46655 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_HURTDIR g field_46656 + f Lnet/minecraft/network/syncher/EntityDataAccessor; DATA_ID_DAMAGE h field_46657 + m ()F getDamage N method_54294 + m ()I getHurtTime O method_54295 + m ()I getHurtDir P method_54296 + m (Lnet/minecraft/world/damagesource/DamageSource;)V destroy a method_7516 + p 1 source + m ()Lnet/minecraft/world/item/Item; getDropItem ak_ method_7557 + m (F)V setDamage b method_54297 + p 1 damage + m (Lnet/minecraft/world/item/Item;)V destroy b method_54298 + p 1 dropItem + m (I)V setHurtTime d method_54299 + p 1 hurtTime + m (Lnet/minecraft/world/damagesource/DamageSource;)Z shouldSourceDestroy d method_55056 + p 1 source + m (I)V setHurtDir m method_54300 + p 1 hurtDir + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V + p 1 entityType + p 2 level + m ()V +c net/minecraft/world/entity/vehicle/package-info cph net/minecraft/class_6074 +c net/minecraft/world/flag/FeatureElement cpi net/minecraft/class_7695 + f Ljava/util/Set; FILTERED_REGISTRIES bA field_40162 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isEnabled a method_45382 + p 1 enabledFeatures + m ()Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures i method_45322 + m ()V +c net/minecraft/world/flag/FeatureFlag cpj net/minecraft/class_7696 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe a field_40163 + f J mask b field_40164 + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;I)V + p 1 universe + p 2 maskBit +c net/minecraft/world/flag/FeatureFlagRegistry cpk net/minecraft/class_7697 + f Lorg/slf4j/Logger; LOGGER a field_40165 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe b field_40166 + f Ljava/util/Map; names c field_40167 + f Lnet/minecraft/world/flag/FeatureFlagSet; allFlags d field_40168 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; allFlags a method_45383 + m (Lnet/minecraft/resources/ResourceLocation;)V method_45384 a method_45384 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isSubset a method_45385 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/flag/FeatureFlag;)V method_45386 a method_45386 + m (Ljava/lang/Iterable;)Lnet/minecraft/world/flag/FeatureFlagSet; fromNames a method_45387 + p 1 names + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;)Lnet/minecraft/world/flag/FeatureFlagSet; fromNames a method_45388 + p 1 names + p 2 onError + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_45389 a method_45389 + m (Ljava/util/Set;)Ljava/lang/String; method_49492 a method_49492 + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; subset a method_45390 + p 1 flags + m ()Lcom/mojang/serialization/Codec; codec b method_45391 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/Set; toNames b method_45392 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/util/List; method_45393 c method_45393 + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/util/Map;)V + p 1 universe + p 2 allFlags + p 3 names + m ()V +c net/minecraft/world/flag/FeatureFlagRegistry$Builder cpk$a net/minecraft/class_7697$class_7698 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe a field_40169 + f I id b field_40170 + f Ljava/util/Map; flags c field_40171 + m ()Lnet/minecraft/world/flag/FeatureFlagRegistry; build a method_45394 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/flag/FeatureFlag; create a method_45395 + p 1 location + m (Ljava/lang/String;)Lnet/minecraft/world/flag/FeatureFlag; createVanilla a method_45396 + p 1 id + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/world/flag/FeatureFlagSet cpl net/minecraft/class_7699 + f I MAX_CONTAINER_SIZE a field_40172 + f Lnet/minecraft/world/flag/FeatureFlagSet; EMPTY b field_40173 + f Lnet/minecraft/world/flag/FeatureFlagUniverse; universe c field_40174 + f J mask d field_40175 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45397 + m (Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45398 + p 0 flag + m (Lnet/minecraft/world/flag/FeatureFlag;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/flag/FeatureFlagSet; of a method_45399 + p 0 flag + p 1 others + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isSubsetOf a method_45400 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;JLjava/lang/Iterable;)J computeMask a method_45401 + p 0 universe + p 1 mask + p 3 flags + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;Ljava/util/Collection;)Lnet/minecraft/world/flag/FeatureFlagSet; create a method_45402 + p 0 universe + p 1 flags + m ()Z isEmpty b method_58398 + m (Lnet/minecraft/world/flag/FeatureFlag;)Z contains b method_45403 + p 1 flag + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z intersects b method_59819 + p 1 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/flag/FeatureFlagSet; join c method_45404 + p 1 other + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/flag/FeatureFlagSet; subtract d method_59820 + p 1 other + m (Lnet/minecraft/world/flag/FeatureFlagUniverse;J)V + p 1 universe + p 2 mask + m ()V +c net/minecraft/world/flag/FeatureFlagUniverse cpm net/minecraft/class_7700 + f Ljava/lang/String; id a field_40176 + m (Ljava/lang/String;)V + p 1 id +c net/minecraft/world/flag/FeatureFlags cpn net/minecraft/class_7701 + f Lnet/minecraft/world/flag/FeatureFlag; VANILLA a field_40177 + f Lnet/minecraft/world/flag/FeatureFlag; BUNDLE b field_40178 + f Lnet/minecraft/world/flag/FeatureFlag; TRADE_REBALANCE c field_45142 + f Lnet/minecraft/world/flag/FeatureFlagRegistry; REGISTRY d field_40180 + f Lcom/mojang/serialization/Codec; CODEC e field_40181 + f Lnet/minecraft/world/flag/FeatureFlagSet; VANILLA_SET f field_40182 + f Lnet/minecraft/world/flag/FeatureFlagSet; DEFAULT_FLAGS g field_40183 + m (Lnet/minecraft/world/flag/FeatureFlagRegistry;Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/lang/String; printMissingFlags a method_45405 + p 0 registry + p 1 enabledFeatures + p 2 requestedFeatures + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isExperimental a method_45406 + p 0 set + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/flag/FeatureFlagSet;)Ljava/lang/String; printMissingFlags a method_45407 + p 0 enabledFeatures + p 1 requestedFeatures + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;)Z method_45408 a method_45408 + m ()V + m ()V +c net/minecraft/world/flag/package-info cpo net/minecraft/class_7702 +c net/minecraft/world/food/FoodConstants cpp net/minecraft/class_6075 + f I MAX_FOOD a field_30704 + f F MAX_SATURATION b field_30705 + f F START_SATURATION c field_30706 + f F SATURATION_FLOOR d field_30707 + f F EXHAUSTION_DROP e field_30708 + f I HEALTH_TICK_COUNT f field_30709 + f I HEALTH_TICK_COUNT_SATURATED g field_30710 + f I HEAL_LEVEL h field_30711 + f I SPRINT_LEVEL i field_30712 + f I STARVE_LEVEL j field_30713 + f F FOOD_SATURATION_POOR k field_30714 + f F FOOD_SATURATION_LOW l field_30715 + f F FOOD_SATURATION_NORMAL m field_30716 + f F FOOD_SATURATION_GOOD n field_30717 + f F FOOD_SATURATION_MAX o field_30718 + f F FOOD_SATURATION_SUPERNATURAL p field_30719 + f F EXHAUSTION_HEAL q field_30720 + f F EXHAUSTION_JUMP r field_30721 + f F EXHAUSTION_SPRINT_JUMP s field_30722 + f F EXHAUSTION_MINE t field_30723 + f F EXHAUSTION_ATTACK u field_30724 + f F EXHAUSTION_WALK v field_30726 + f F EXHAUSTION_CROUCH w field_30727 + f F EXHAUSTION_SPRINT x field_30728 + f F EXHAUSTION_SWIM y field_30729 + m (IF)F saturationByModifier a method_59683 + p 0 foodLevel + p 1 saturationModifier + m ()V +c net/minecraft/world/food/FoodData cpq net/minecraft/class_1702 + f I foodLevel a field_7756 + f F saturationLevel b field_7753 + f F exhaustionLevel c field_7752 + f I tickTimer d field_7755 + f I lastFoodLevel e field_7754 + m ()I getFoodLevel a method_7586 + c Get the player's food level. + m (F)V addExhaustion a method_7583 + c Adds input to {@code foodExhaustionLevel} to a max of 40. + p 1 exhaustion + m (I)V setFoodLevel a method_7580 + p 1 foodLevel + m (IF)V eat a method_7585 + c Add food stats. + p 1 foodLevelModifier + p 2 saturationLevelModifier + m (Lnet/minecraft/world/entity/player/Player;)V tick a method_7588 + c Handles the food game logic. + p 1 player + m (Lnet/minecraft/world/food/FoodProperties;)V eat a method_7579 + p 1 foodProperties + m (Lnet/minecraft/nbt/CompoundTag;)V readAdditionalSaveData a method_7584 + c Reads the food data for the player. + p 1 compoundTag + m ()I getLastFoodLevel b method_35217 + m (F)V setSaturation b method_7581 + p 1 saturationLevel + m (IF)V add b method_59684 + p 1 foodLevel + p 2 saturationLevel + m (Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData b method_7582 + c Writes the food data for the player. + p 1 compoundTag + m ()Z needsFood c method_7587 + c Get whether the player must eat food. + m (F)V setExhaustion c method_35218 + p 1 exhaustionLevel + m ()F getExhaustionLevel d method_35219 + m ()F getSaturationLevel e method_7589 + c Get the player's food saturation level. + m ()V +c net/minecraft/world/food/FoodProperties cpr net/minecraft/class_4174 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49992 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49993 + f I nutrition c comp_2491 + f F saturation d comp_2492 + f Z canAlwaysEat e comp_2493 + f F eatSeconds f comp_2494 + f Ljava/util/Optional; usingConvertsTo g comp_2794 + f Ljava/util/List; effects h comp_2495 + f F DEFAULT_EAT_SECONDS i field_49994 + m ()I eatDurationTicks a method_58399 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58400 a method_58400 + m ()I nutrition b comp_2491 + m ()F saturation c comp_2492 + m ()Z canAlwaysEat d comp_2493 + m ()F eatSeconds e comp_2494 + m ()Ljava/util/Optional; usingConvertsTo f comp_2794 + m ()Ljava/util/List; effects g comp_2495 + m (IFZFLjava/util/Optional;Ljava/util/List;)V + m ()V +c net/minecraft/world/food/FoodProperties$Builder cpr$a net/minecraft/class_4174$class_4175 + f I nutrition a field_18620 + f F saturationModifier b field_18621 + f Z canAlwaysEat c field_18623 + f F eatSeconds d field_49995 + f Ljava/util/Optional; usingConvertsTo e field_51895 + f Lcom/google/common/collect/ImmutableList$Builder; effects f field_18625 + m ()Lnet/minecraft/world/food/FoodProperties$Builder; alwaysEdible a method_19240 + m (F)Lnet/minecraft/world/food/FoodProperties$Builder; saturationModifier a method_19237 + p 1 saturationModifier + m (I)Lnet/minecraft/world/food/FoodProperties$Builder; nutrition a method_19238 + p 1 nutrition + m (Lnet/minecraft/world/effect/MobEffectInstance;F)Lnet/minecraft/world/food/FoodProperties$Builder; effect a method_19239 + p 1 effect + p 2 probability + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/food/FoodProperties$Builder; usingConvertsTo a method_60500 + p 1 item + m ()Lnet/minecraft/world/food/FoodProperties$Builder; fast b method_19241 + m ()Lnet/minecraft/world/food/FoodProperties; build c method_19242 + m ()V +c net/minecraft/world/food/FoodProperties$PossibleEffect cpr$b net/minecraft/class_4174$class_9423 + f Lcom/mojang/serialization/Codec; CODEC a field_49996 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49997 + f Lnet/minecraft/world/effect/MobEffectInstance; effect c comp_2496 + f F probability d comp_2497 + m ()Lnet/minecraft/world/effect/MobEffectInstance; effect a comp_2496 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58401 a method_58401 + m ()F probability b comp_2497 + m (Lnet/minecraft/world/effect/MobEffectInstance;F)V + m ()V +c net/minecraft/world/food/Foods cps net/minecraft/class_4176 + f Lnet/minecraft/world/food/FoodProperties; POISONOUS_POTATO A field_18663 + f Lnet/minecraft/world/food/FoodProperties; PORKCHOP B field_18626 + f Lnet/minecraft/world/food/FoodProperties; POTATO C field_18627 + f Lnet/minecraft/world/food/FoodProperties; PUFFERFISH D field_18628 + f Lnet/minecraft/world/food/FoodProperties; PUMPKIN_PIE E field_18629 + f Lnet/minecraft/world/food/FoodProperties; RABBIT F field_18630 + f Lnet/minecraft/world/food/FoodProperties; RABBIT_STEW G field_18631 + f Lnet/minecraft/world/food/FoodProperties; ROTTEN_FLESH H field_18632 + f Lnet/minecraft/world/food/FoodProperties; SALMON I field_18633 + f Lnet/minecraft/world/food/FoodProperties; SPIDER_EYE J field_18634 + f Lnet/minecraft/world/food/FoodProperties; SUSPICIOUS_STEW K field_18635 + f Lnet/minecraft/world/food/FoodProperties; SWEET_BERRIES L field_18636 + f Lnet/minecraft/world/food/FoodProperties; GLOW_BERRIES M field_28647 + f Lnet/minecraft/world/food/FoodProperties; TROPICAL_FISH N field_18637 + f Lnet/minecraft/world/food/FoodProperties; OMINOUS_BOTTLE O field_50138 + f Lnet/minecraft/world/food/FoodProperties; APPLE a field_18638 + f Lnet/minecraft/world/food/FoodProperties; BAKED_POTATO b field_18639 + f Lnet/minecraft/world/food/FoodProperties; BEEF c field_18640 + f Lnet/minecraft/world/food/FoodProperties; BEETROOT d field_18641 + f Lnet/minecraft/world/food/FoodProperties; BEETROOT_SOUP e field_18642 + f Lnet/minecraft/world/food/FoodProperties; BREAD f field_18643 + f Lnet/minecraft/world/food/FoodProperties; CARROT g field_18644 + f Lnet/minecraft/world/food/FoodProperties; CHICKEN h field_18645 + f Lnet/minecraft/world/food/FoodProperties; CHORUS_FRUIT i field_18646 + f Lnet/minecraft/world/food/FoodProperties; COD j field_18647 + f Lnet/minecraft/world/food/FoodProperties; COOKED_BEEF k field_18648 + f Lnet/minecraft/world/food/FoodProperties; COOKED_CHICKEN l field_18649 + f Lnet/minecraft/world/food/FoodProperties; COOKED_COD m field_18650 + f Lnet/minecraft/world/food/FoodProperties; COOKED_MUTTON n field_18651 + f Lnet/minecraft/world/food/FoodProperties; COOKED_PORKCHOP o field_18652 + f Lnet/minecraft/world/food/FoodProperties; COOKED_RABBIT p field_18653 + f Lnet/minecraft/world/food/FoodProperties; COOKED_SALMON q field_18654 + f Lnet/minecraft/world/food/FoodProperties; COOKIE r field_18655 + f Lnet/minecraft/world/food/FoodProperties; DRIED_KELP s field_18656 + f Lnet/minecraft/world/food/FoodProperties; ENCHANTED_GOLDEN_APPLE t field_18657 + f Lnet/minecraft/world/food/FoodProperties; GOLDEN_APPLE u field_18658 + f Lnet/minecraft/world/food/FoodProperties; GOLDEN_CARROT v field_18659 + f Lnet/minecraft/world/food/FoodProperties; HONEY_BOTTLE w field_20381 + f Lnet/minecraft/world/food/FoodProperties; MELON_SLICE x field_18660 + f Lnet/minecraft/world/food/FoodProperties; MUSHROOM_STEW y field_18661 + f Lnet/minecraft/world/food/FoodProperties; MUTTON z field_18662 + m (I)Lnet/minecraft/world/food/FoodProperties$Builder; stew a method_19243 + p 0 nutrition + m ()V + m ()V +c net/minecraft/world/food/package-info cpt net/minecraft/class_6076 +c net/minecraft/world/inventory/AbstractContainerMenu cpu net/minecraft/class_1703 + f I SLOT_CLICKED_OUTSIDE a field_30730 + f I QUICKCRAFT_TYPE_CHARITABLE b field_30731 + f I QUICKCRAFT_TYPE_GREEDY c field_30732 + f I QUICKCRAFT_TYPE_CLONE d field_30733 + f I QUICKCRAFT_HEADER_START e field_30734 + f I QUICKCRAFT_HEADER_CONTINUE f field_30735 + f I QUICKCRAFT_HEADER_END g field_30736 + f I CARRIED_SLOT_SIZE h field_30737 + f Lnet/minecraft/core/NonNullList; slots i field_7761 + f I containerId j field_7763 + f Lorg/slf4j/Logger; LOGGER k field_36534 + f Lnet/minecraft/core/NonNullList; lastSlots l field_7764 + f Ljava/util/List; dataSlots m field_17285 + f Lnet/minecraft/world/item/ItemStack; carried n field_29205 + f Lnet/minecraft/core/NonNullList; remoteSlots o field_29206 + f Lit/unimi/dsi/fastutil/ints/IntList; remoteDataSlots p field_29559 + f Lnet/minecraft/world/item/ItemStack; remoteCarried q field_29207 + f I stateId r field_34024 + f Lnet/minecraft/world/inventory/MenuType; menuType s field_17493 + f I quickcraftType t field_7762 + f I quickcraftStatus u field_7759 + f Ljava/util/Set; quickcraftSlots v field_7757 + f Ljava/util/List; containerListeners w field_7765 + f Lnet/minecraft/world/inventory/ContainerSynchronizer; synchronizer x field_29208 + f Z suppressRemoteUpdates y field_29209 + m ()Lnet/minecraft/world/inventory/MenuType; getType a method_17358 + m (I)Z isValidSlotIndex a method_40442 + p 1 slotIndex + m (II)V setData a method_7606 + p 1 id + p 2 data + m (IILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V clicked a method_7593 + p 1 slotId + p 2 button + p 3 clickType + p 4 player + m (IILnet/minecraft/world/item/ItemStack;)V setItem a method_7619 + c Puts an ItemStack in a slot. + p 1 slotId + p 2 stateId + p 3 stack + m (ILnet/minecraft/world/entity/player/Player;)Z isValidQuickcraftType a method_7600 + p 0 dragMode + p 1 player + m (ILnet/minecraft/world/item/ItemStack;)V setRemoteSlot a method_34245 + p 1 slot + p 2 stack + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/function/Supplier;)V triggerSlotListeners a method_34246 + p 1 slotIndex + p 2 stack + p 3 supplier + m (ILjava/util/List;Lnet/minecraft/world/item/ItemStack;)V initializeContents a method_7610 + p 1 stateId + p 2 items + p 3 carried + m (Lnet/minecraft/world/Container;)V slotsChanged a method_7609 + c Callback for when the crafting matrix is changed. + p 1 container + m (Lnet/minecraft/world/Container;I)V checkContainerSize a method_17359 + p 0 container + p 1 minSize + m (Lnet/minecraft/world/entity/player/Player;)V removed a method_7595 + c Called when the container is closed. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;I)Z clickMenuButton a method_7604 + c Handles the given Button-click on the server, currently only used by enchanting. Name is for legacy. + p 1 player + p 2 id + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/Container;)V clearContainer a method_7607 + p 1 player + p 2 container + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z tryItemClickBehaviourOverride a method_45409 + p 1 player + p 2 action + p 3 slot + p 4 clickedItem + p 5 carriedItem + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V transferState a method_34247 + p 1 menu + m (Lnet/minecraft/world/inventory/ContainerData;)V addDataSlots a method_17360 + p 1 array + m (Lnet/minecraft/world/inventory/ContainerData;I)V checkContainerDataCount a method_17361 + p 0 intArray + p 1 minSize + m (Lnet/minecraft/world/inventory/ContainerLevelAccess;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/Block;)Z stillValid a method_17695 + p 0 access + p 1 player + p 2 targetBlock + m (Lnet/minecraft/world/inventory/ContainerListener;)V addSlotListener a method_7596 + p 1 listener + m (Lnet/minecraft/world/inventory/ContainerSynchronizer;)V setSynchronizer a method_34248 + p 1 synchronizer + m (Lnet/minecraft/world/inventory/DataSlot;)Lnet/minecraft/world/inventory/DataSlot; addDataSlot a method_17362 + p 1 intValue + m (Lnet/minecraft/world/inventory/Slot;)Lnet/minecraft/world/inventory/Slot; addSlot a method_7621 + c Adds an item slot to this container + p 1 slot + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34249 a method_34249 + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/item/ItemStack;Z)Z canItemQuickReplace a method_7592 + c Checks if it's possible to add the given itemstack to the given slot. + p 0 slot + p 1 stack + p 2 stackSizeMatters + m (Lnet/minecraft/world/item/ItemStack;)V setRemoteCarried a method_34250 + p 1 remoteCarried + m (Lnet/minecraft/world/item/ItemStack;IIZ)Z moveItemStackTo a method_7616 + c Merges provided ItemStack with the first available one in the container/player inventor between minIndex (included) and maxIndex (excluded). Args : stack, minIndex, maxIndex, negativDirection. [!] the Container implementation do not check if the item is valid for the slot + p 1 stack + p 2 startIndex + p 3 endIndex + p 4 reverseDirection + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;)Z canTakeItemForPickAll a method_7613 + c Called to determine if the current slot is valid for the stack merging (double-click) code. The stack passed in is null for the initial slot that was double-clicked. + p 1 stack + p 2 slot + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34251 a method_34251 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_17696 a method_17696 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)I getRedstoneSignalFromBlockEntity a method_7608 + c Like the version that takes an inventory. If the given BlockEntity is not an Inventory, 0 is returned instead. + p 0 blockEntity + m (Ljava/util/Set;ILnet/minecraft/world/item/ItemStack;)I getQuickCraftPlaceCount a method_7617 + p 0 slots + p 1 type + p 2 stack + m ()V sendAllDataToRemote b method_34252 + m (I)Lnet/minecraft/world/inventory/Slot; getSlot b method_7611 + p 1 slotId + m (II)I getQuickcraftMask b method_7591 + p 0 quickCraftingHeader + p 1 quickCraftingType + m (IILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V doClick b method_30010 + p 1 slotId + p 2 button + p 3 clickType + p 4 player + m (ILnet/minecraft/world/item/ItemStack;)V setRemoteSlotNoCopy b method_37449 + p 1 slot + p 2 stack + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/function/Supplier;)V synchronizeSlotToRemote b method_34253 + p 1 slotIndex + p 2 stack + p 3 supplier + m (Lnet/minecraft/world/Container;)I getRedstoneSignalFromContainer b method_7618 + p 0 container + m (Lnet/minecraft/world/Container;I)Ljava/util/OptionalInt; findSlot b method_37418 + p 1 container + p 2 slotIndex + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid b method_7597 + c Determines whether supplied player can use this container + p 1 player + m (Lnet/minecraft/world/entity/player/Player;I)Lnet/minecraft/world/item/ItemStack; quickMoveStack b method_7601 + c Handle when the stack in slot {@code index} is shift-clicked. Normally this moves the stack between the player inventory and the other inventory(s). + p 1 player + p 2 index + m (Lnet/minecraft/world/inventory/ContainerListener;)V removeSlotListener b method_7603 + c Remove the given Listener. Method name is for legacy. + p 1 listener + m (Lnet/minecraft/world/inventory/Slot;)Z canDragTo b method_7615 + c Returns {@code true} if the player can "drag-spilt" items into this slot. Returns {@code true} by default. Called to check if the slot can be added to a list of Slots to split the held ItemStack across. + p 1 slot + m (Lnet/minecraft/world/item/ItemStack;)V setCarried b method_34254 + p 1 stack + m ()Lnet/minecraft/core/NonNullList; getItems c method_7602 + c Returns a list if {@code ItemStacks}, for each slot. + m (I)I getQuickcraftType c method_7620 + c Extracts the drag mode. Args : eventButton. Return (0 : evenly split, 1 : one item by slot, 2 : not used ?) + p 0 eventButton + m (II)V updateDataSlotListeners c method_37419 + p 1 slotIndex + p 2 value + m ()V broadcastChanges d method_7623 + c Looks for changes made in the container, sends them to every listener. + m (I)I getQuickcraftHeader d method_7594 + c Args : clickedButton, Returns (0 : start drag, 1 : add slot, 2 : end drag) + p 0 clickedButton + m (II)V synchronizeDataSlotToRemote d method_34715 + p 1 slotIndex + p 2 value + m ()V broadcastFullState e method_37420 + m ()V resetQuickCraft f method_7605 + c Reset the drag fields + m ()Lnet/minecraft/world/item/ItemStack; getCarried g method_34255 + m ()V suppressRemoteUpdates h method_34256 + m ()V resumeRemoteUpdates i method_34257 + m ()I getStateId j method_37421 + m ()I incrementStateId k method_37422 + m ()V synchronizeCarriedToRemote l method_34258 + m ()Lnet/minecraft/world/entity/SlotAccess; createCarriedSlotAccess m method_34259 + m ()Ljava/lang/String; method_30024 n method_30024 + m ()Ljava/lang/String; method_30011 o method_30011 + m (Lnet/minecraft/world/inventory/MenuType;I)V + p 1 menuType + p 2 containerId + m ()V +c net/minecraft/world/inventory/AbstractContainerMenu$1 cpu$1 net/minecraft/class_1703$1 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; field_29210 b field_29210 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;)V +c net/minecraft/world/inventory/AbstractFurnaceMenu cpv net/minecraft/class_1720 + f I INGREDIENT_SLOT k field_30738 + f I FUEL_SLOT l field_30739 + f I RESULT_SLOT m field_30740 + f I SLOT_COUNT n field_30741 + f I DATA_COUNT o field_30742 + f Lnet/minecraft/world/level/Level; level p field_7822 + f I INV_SLOT_START q field_30743 + f I INV_SLOT_END r field_30744 + f I USE_ROW_SLOT_START s field_30745 + f I USE_ROW_SLOT_END t field_30746 + f Lnet/minecraft/world/Container; container u field_7824 + f Lnet/minecraft/world/inventory/ContainerData; data v field_17286 + f Lnet/minecraft/world/item/crafting/RecipeType; recipeType w field_17494 + f Lnet/minecraft/world/inventory/RecipeBookType; recipeBookType x field_25762 + m (Lnet/minecraft/world/item/ItemStack;)Z canSmelt c method_7640 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFuel d method_16945 + p 1 stack + m ()F getBurnProgress q method_17363 + m ()F getLitProgress r method_17364 + m ()Z isLit s method_17365 + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/inventory/RecipeBookType;ILnet/minecraft/world/entity/player/Inventory;)V + p 1 menuType + p 2 recipeType + p 3 recipeBookType + p 4 containerId + p 5 playerInventory + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/inventory/RecipeBookType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 menuType + p 2 recipeType + p 3 recipeBookType + p 4 containerId + p 5 playerInventory + p 6 container + p 7 data +c net/minecraft/world/inventory/AnvilMenu cpw net/minecraft/class_1706 + f I COST_REPAIR_MATERIAL A field_30747 + f I COST_REPAIR_SACRIFICE B field_30748 + f I COST_INCOMPATIBLE_PENALTY C field_30749 + f I COST_RENAME D field_30750 + f I INPUT_SLOT_X_PLACEMENT E field_41894 + f I ADDITIONAL_SLOT_X_PLACEMENT F field_41895 + f I RESULT_SLOT_X_PLACEMENT G field_41896 + f I SLOT_Y_PLACEMENT H field_41897 + f I INPUT_SLOT k field_41898 + f I ADDITIONAL_SLOT l field_41899 + f I RESULT_SLOT m field_41900 + f I MAX_NAME_LENGTH n field_30751 + f Lorg/slf4j/Logger; LOGGER s field_7771 + f Z DEBUG_COST t field_30752 + f I repairItemCountCost u field_7776 + f Ljava/lang/String; itemName v field_7774 + f Lnet/minecraft/world/inventory/DataSlot; cost w field_7770 + f I COST_FAIL x field_30753 + f I COST_BASE y field_30754 + f I COST_ADDED_BASE z field_30755 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24922 a method_24922 + m (Ljava/lang/String;)Z setItemName a method_7625 + p 1 itemName + m (Ljava/lang/String;)Ljava/lang/String; validateName b method_52176 + p 0 itemName + m (I)I calculateIncreasedRepairCost e method_20398 + p 0 oldRepairCost + m (Lnet/minecraft/world/item/ItemStack;)Z method_48350 e method_48350 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48351 f method_48351 + m ()I getCost n method_17369 + c Gets the maximum xp cost + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access + m ()V +c net/minecraft/world/inventory/ArmorSlot cpx net/minecraft/class_9692 + f Lnet/minecraft/world/entity/LivingEntity; owner a field_51622 + f Lnet/minecraft/world/entity/EquipmentSlot; slot b field_51623 + f Lnet/minecraft/resources/ResourceLocation; emptyIcon g field_51624 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;IIILnet/minecraft/resources/ResourceLocation;)V + p 1 container + p 2 owner + p 3 slot + p 4 slotIndex + p 5 x + p 6 y + p 7 emptyIcon +c net/minecraft/world/inventory/BeaconMenu cpy net/minecraft/class_1704 + f I PAYMENT_SLOT k field_30756 + f I SLOT_COUNT l field_30757 + f I DATA_COUNT m field_30758 + f I INV_SLOT_START n field_30759 + f I INV_SLOT_END o field_30760 + f I USE_ROW_SLOT_START p field_30761 + f I USE_ROW_SLOT_END q field_30762 + f I NO_EFFECT r field_45758 + f Lnet/minecraft/world/Container; beacon s field_17287 + f Lnet/minecraft/world/inventory/BeaconMenu$PaymentSlot; paymentSlot t field_17288 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access u field_17289 + f Lnet/minecraft/world/inventory/ContainerData; beaconData v field_17290 + m (Ljava/util/Optional;Ljava/util/Optional;)V updateEffects a method_17372 + p 1 primaryEffect + p 2 secondaryEffect + m (Lnet/minecraft/core/Holder;)I encodeEffect a method_53173 + p 0 effect + m (I)Lnet/minecraft/core/Holder; decodeEffect e method_53174 + p 0 effectId + m ()I getLevels l method_17373 + m ()Lnet/minecraft/core/Holder; getPrimaryEffect m method_17374 + m ()Lnet/minecraft/core/Holder; getSecondaryEffect n method_17375 + m ()Z hasPayment o method_17376 + m (ILnet/minecraft/world/Container;)V + p 1 containerId + p 2 container + m (ILnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 container + p 3 beaconData + p 4 access +c net/minecraft/world/inventory/BeaconMenu$1 cpy$1 net/minecraft/class_1704$1 + m (Lnet/minecraft/world/inventory/BeaconMenu;I)V +c net/minecraft/world/inventory/BeaconMenu$PaymentSlot cpy$a net/minecraft/class_1704$class_1705 + m (Lnet/minecraft/world/inventory/BeaconMenu;Lnet/minecraft/world/Container;III)V + p 2 container + p 3 containerIndex + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/BlastFurnaceMenu cpz net/minecraft/class_3705 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 blastFurnaceContainer + p 4 blastFurnaceData +c net/minecraft/world/inventory/BrewingStandMenu cqa net/minecraft/class_1708 + f I BOTTLE_SLOT_START k field_30763 + f I BOTTLE_SLOT_END l field_30764 + f I INGREDIENT_SLOT m field_30765 + f I FUEL_SLOT n field_30766 + f I SLOT_COUNT o field_30767 + f I DATA_COUNT p field_30768 + f I INV_SLOT_START q field_30769 + f I INV_SLOT_END r field_30770 + f I USE_ROW_SLOT_START s field_30771 + f I USE_ROW_SLOT_END t field_30772 + f Lnet/minecraft/world/Container; brewingStand u field_7788 + f Lnet/minecraft/world/inventory/ContainerData; brewingStandData v field_17292 + f Lnet/minecraft/world/inventory/Slot; ingredientSlot w field_7787 + m ()I getFuel l method_17377 + m ()I getBrewingTicks m method_17378 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 brewingStandContainer + p 4 brewingStandData +c net/minecraft/world/inventory/BrewingStandMenu$FuelSlot cqa$a net/minecraft/class_1708$class_1709 + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlaceItem b method_7630 + c Returns {@code true} if the given {@link net.minecraft.world.item.ItemStack} is usable as fuel in the brewing stand. + p 0 itemStack + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/BrewingStandMenu$IngredientsSlot cqa$b net/minecraft/class_1708$class_1710 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing a field_51385 + m (Lnet/minecraft/world/item/alchemy/PotionBrewing;Lnet/minecraft/world/Container;III)V + p 1 potionBrewing + p 2 container + p 3 slot + p 4 x + p 5 y +c net/minecraft/world/inventory/BrewingStandMenu$PotionSlot cqa$c net/minecraft/class_1708$class_1711 + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlaceItem b method_7631 + c Returns {@code true} if this {@link net.minecraft.world.item.ItemStack} can be filled with a potion. + p 0 stack + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/CartographyTableMenu cqb net/minecraft/class_3910 + f I MAP_SLOT k field_30773 + f I ADDITIONAL_SLOT l field_30774 + f I RESULT_SLOT m field_30775 + f Lnet/minecraft/world/Container; container n field_17293 + f I INV_SLOT_START o field_30776 + f I INV_SLOT_END p field_30777 + f I USE_ROW_SLOT_START q field_30778 + f I USE_ROW_SLOT_END r field_30779 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access s field_17294 + f J lastSoundTime t field_20382 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer u field_19272 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17379 a method_17379 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V setupResultSlot a method_17381 + p 1 map + p 2 firstSlotStack + p 3 resultOutput + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17382 a method_17382 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/CartographyTableMenu$1 cqb$1 net/minecraft/class_3910$1 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_17298 b field_17298 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;I)V +c net/minecraft/world/inventory/CartographyTableMenu$2 cqb$2 net/minecraft/class_3910$2 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_19273 b field_19273 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;)V +c net/minecraft/world/inventory/CartographyTableMenu$3 cqb$3 net/minecraft/class_3910$3 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/CartographyTableMenu$4 cqb$4 net/minecraft/class_3910$4 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/CartographyTableMenu$5 cqb$5 net/minecraft/class_3910$5 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17301 + f Lnet/minecraft/world/inventory/CartographyTableMenu; field_17303 b field_17303 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17387 a method_17387 + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/ChestMenu cqc net/minecraft/class_1707 + f I SLOTS_PER_ROW k field_30780 + f Lnet/minecraft/world/Container; container l field_17495 + f I containerRows m field_17496 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; oneRow a method_19244 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)Lnet/minecraft/world/inventory/ChestMenu; threeRows a method_19245 + p 0 containerId + p 1 playerInventory + p 2 container + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; twoRows b method_19246 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)Lnet/minecraft/world/inventory/ChestMenu; sixRows b method_19247 + p 0 containerId + p 1 playerInventory + p 2 container + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; threeRows c method_19248 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; fourRows d method_19249 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; fiveRows e method_19250 + p 0 containerId + p 1 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/ChestMenu; sixRows f method_19251 + p 0 containerId + p 1 playerInventory + m ()Lnet/minecraft/world/Container; getContainer l method_7629 + c Gets the inventory associated with this chest container.\n\n@see #field_75155_e + m ()I getRowCount m method_17388 + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;I)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 rows + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;I)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 container + p 5 rows +c net/minecraft/world/inventory/ClickAction cqd net/minecraft/class_5536 + f Lnet/minecraft/world/inventory/ClickAction; PRIMARY a field_27013 + f Lnet/minecraft/world/inventory/ClickAction; SECONDARY b field_27014 + f [Lnet/minecraft/world/inventory/ClickAction; $VALUES c field_27015 + m ()[Lnet/minecraft/world/inventory/ClickAction; $values a method_36672 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/ClickType cqe net/minecraft/class_1713 + f Lnet/minecraft/world/inventory/ClickType; PICKUP a field_7790 + f Lnet/minecraft/world/inventory/ClickType; QUICK_MOVE b field_7794 + f Lnet/minecraft/world/inventory/ClickType; SWAP c field_7791 + f Lnet/minecraft/world/inventory/ClickType; CLONE d field_7796 + f Lnet/minecraft/world/inventory/ClickType; THROW e field_7795 + f Lnet/minecraft/world/inventory/ClickType; QUICK_CRAFT f field_7789 + f Lnet/minecraft/world/inventory/ClickType; PICKUP_ALL g field_7793 + f [Lnet/minecraft/world/inventory/ClickType; $VALUES h field_7792 + m ()[Lnet/minecraft/world/inventory/ClickType; $values a method_36673 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/ContainerData cqf net/minecraft/class_3913 + m ()I getCount a method_17389 + m (I)I get a method_17390 + p 1 index + m (II)V set a method_17391 + p 1 index + p 2 value +c net/minecraft/world/inventory/ContainerLevelAccess cqg net/minecraft/class_3914 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; NULL a field_17304 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/inventory/ContainerLevelAccess; create a method_17392 + p 0 level + p 1 pos + m (Ljava/util/function/BiConsumer;)V execute a method_17393 + p 1 levelPosConsumer + m (Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; method_17394 a method_17394 + m (Ljava/util/function/BiFunction;)Ljava/util/Optional; evaluate a method_17395 + p 1 levelPosConsumer + m (Ljava/util/function/BiFunction;Ljava/lang/Object;)Ljava/lang/Object; evaluate a method_17396 + p 1 levelPosConsumer + p 2 defaultValue + m ()V +c net/minecraft/world/inventory/ContainerLevelAccess$1 cqg$1 net/minecraft/class_3914$1 + m ()V +c net/minecraft/world/inventory/ContainerLevelAccess$2 cqg$2 net/minecraft/class_3914$2 + f Lnet/minecraft/world/level/Level; val$level b field_17305 + f Lnet/minecraft/core/BlockPos; val$pos c field_17306 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/world/inventory/ContainerListener cqh net/minecraft/class_1712 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V dataChanged a method_7633 + p 1 containerMenu + p 2 dataSlotIndex + p 3 value + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;ILnet/minecraft/world/item/ItemStack;)V slotChanged a method_7635 + c Sends the contents of an inventory slot to the client-side Container. This doesn't have to match the actual contents of that slot. + p 1 containerToSend + p 2 dataSlotIndex + p 3 stack +c net/minecraft/world/inventory/ContainerSynchronizer cqi net/minecraft/class_5916 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V sendDataChange a method_34260 + p 1 container + p 2 id + p 3 value + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;ILnet/minecraft/world/item/ItemStack;)V sendSlotChange a method_34261 + p 1 container + p 2 slot + p 3 itemStack + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/item/ItemStack;)V sendCarriedChange a method_34262 + p 1 containerMenu + p 2 stack + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/core/NonNullList;Lnet/minecraft/world/item/ItemStack;[I)V sendInitialData a method_34263 + p 1 container + p 2 items + p 3 carriedItem + p 4 initialData +c net/minecraft/world/inventory/CrafterMenu cqj net/minecraft/class_8881 + f I SLOT_COUNT k field_46781 + f I INV_SLOT_START l field_46782 + f I INV_SLOT_END m field_46783 + f I USE_ROW_SLOT_START n field_46784 + f I USE_ROW_SLOT_END o field_46785 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer p field_46780 + f Lnet/minecraft/world/inventory/ContainerData; containerData q field_46786 + f Lnet/minecraft/world/entity/player/Player; player r field_46787 + f Lnet/minecraft/world/inventory/CraftingContainer; container s field_46788 + m (IZ)V setSlotState a method_54458 + p 1 slot + p 2 enabled + m (Lnet/minecraft/world/entity/player/Inventory;)V addSlots a method_54459 + p 1 playerInventory + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_54460 a method_54460 + m (I)Z isSlotDisabled e method_54461 + p 1 slot + m ()Z isPowered l method_54462 + m ()Lnet/minecraft/world/Container; getContainer m method_54463 + m ()V refreshRecipeResult n method_54464 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 container + p 4 containerData +c net/minecraft/world/inventory/CrafterSlot cqk net/minecraft/class_8882 + f Lnet/minecraft/world/inventory/CrafterMenu; menu a field_46789 + m (Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/CrafterMenu;)V + p 1 container + p 2 slot + p 3 x + p 4 y + p 5 menu +c net/minecraft/world/inventory/CraftingContainer cql net/minecraft/class_8566 + m ()Lnet/minecraft/world/item/crafting/CraftingInput; asCraftInput aE_ method_59961 + m ()Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; asPositionedCraftInput aF_ method_60501 + m ()I getWidth f method_17398 + m ()I getHeight g method_17397 + m ()Ljava/util/List; getItems h method_51305 +c net/minecraft/world/inventory/CraftingMenu cqm net/minecraft/class_1714 + f I RESULT_SLOT k field_30781 + f I CRAFT_SLOT_START l field_30782 + f I CRAFT_SLOT_END m field_30783 + f I INV_SLOT_START n field_30784 + f I INV_SLOT_END o field_30785 + f I USE_ROW_SLOT_START p field_30786 + f I USE_ROW_SLOT_END q field_30787 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots r field_7801 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots s field_7800 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access t field_7799 + f Lnet/minecraft/world/entity/player/Player; player u field_7797 + f Z placingRecipe v field_51625 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17402 a method_17402 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/inventory/ResultContainer;Lnet/minecraft/world/item/crafting/RecipeHolder;)V slotChangedCraftingGrid a method_17399 + p 0 menu + p 1 level + p 2 player + p 3 craftSlots + p 4 resultSlots + p 5 recipe + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17400 a method_17400 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_59962 a method_59962 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17401 a method_17401 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/DataSlot cqn net/minecraft/class_3915 + f I prevValue a field_17307 + m ()Lnet/minecraft/world/inventory/DataSlot; standalone a method_17403 + m (I)V set a method_17404 + p 1 value + m (Lnet/minecraft/world/inventory/ContainerData;I)Lnet/minecraft/world/inventory/DataSlot; forContainer a method_17405 + p 0 data + p 1 idx + m ([II)Lnet/minecraft/world/inventory/DataSlot; shared a method_17406 + p 0 data + p 1 idx + m ()I get b method_17407 + m ()Z checkAndClearUpdateFlag c method_17408 + m ()V +c net/minecraft/world/inventory/DataSlot$1 cqn$1 net/minecraft/class_3915$1 + f Lnet/minecraft/world/inventory/ContainerData; val$container a field_17308 + f I val$dataId b field_17309 + m (Lnet/minecraft/world/inventory/ContainerData;I)V +c net/minecraft/world/inventory/DataSlot$2 cqn$2 net/minecraft/class_3915$2 + f [I val$storage a field_17310 + f I val$index b field_17311 + m ([II)V +c net/minecraft/world/inventory/DataSlot$3 cqn$3 net/minecraft/class_3915$3 + f I value a field_17312 + m ()V +c net/minecraft/world/inventory/DispenserMenu cqo net/minecraft/class_1716 + f I SLOT_COUNT k field_30788 + f I INV_SLOT_START l field_30789 + f I INV_SLOT_END m field_30790 + f I USE_ROW_SLOT_START n field_30791 + f I USE_ROW_SLOT_END o field_30792 + f Lnet/minecraft/world/Container; dispenser p field_7806 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/EnchantmentMenu cqp net/minecraft/class_1718 + f [I costs k field_7808 + f [I enchantClue l field_7812 + f [I levelClue m field_7810 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LAPIS_LAZULI n field_45143 + f Lnet/minecraft/world/Container; enchantSlots o field_7809 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access p field_7813 + f Lnet/minecraft/util/RandomSource; random q field_7811 + f Lnet/minecraft/world/inventory/DataSlot; enchantmentSeed r field_7814 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17412 a method_17412 + m (Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/world/entity/player/Player;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17410 a method_17410 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17411 a method_17411 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/ItemStack;II)Ljava/util/List; getEnchantmentList a method_7637 + p 1 registryAccess + p 2 stack + p 3 slot + p 4 cost + m ()I getGoldCount l method_7638 + m ()I getEnchantmentSeed m method_17413 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access + m ()V +c net/minecraft/world/inventory/EnchantmentMenu$1 cqp$1 net/minecraft/class_1718$1 + f Lnet/minecraft/world/inventory/EnchantmentMenu; field_7815 b field_7815 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;I)V +c net/minecraft/world/inventory/EnchantmentMenu$2 cqp$2 net/minecraft/class_1718$2 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/EnchantmentMenu$3 cqp$3 net/minecraft/class_1718$3 + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/FurnaceFuelSlot cqq net/minecraft/class_1717 + f Lnet/minecraft/world/inventory/AbstractFurnaceMenu; menu a field_17083 + m (Lnet/minecraft/world/item/ItemStack;)Z isBucket c method_7636 + p 0 stack + m (Lnet/minecraft/world/inventory/AbstractFurnaceMenu;Lnet/minecraft/world/Container;III)V + p 1 furnaceMenu + p 2 furnaceContainer + p 3 slot + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/FurnaceMenu cqr net/minecraft/class_3858 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 furnaceContainer + p 4 furnaceData +c net/minecraft/world/inventory/FurnaceResultSlot cqs net/minecraft/class_1719 + f Lnet/minecraft/world/entity/player/Player; player a field_7818 + f I removeCount b field_7819 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/Container;III)V + p 1 player + p 2 container + p 3 slot + p 4 xPosition + p 5 yPosition +c net/minecraft/world/inventory/GrindstoneMenu cqt net/minecraft/class_3803 + f I MAX_NAME_LENGTH k field_30793 + f I INPUT_SLOT l field_30794 + f I ADDITIONAL_SLOT m field_30795 + f I RESULT_SLOT n field_30796 + f I INV_SLOT_START o field_30797 + f I INV_SLOT_END p field_30798 + f I USE_ROW_SLOT_START q field_30799 + f I USE_ROW_SLOT_END r field_30800 + f Lnet/minecraft/world/Container; resultSlots s field_16773 + c The inventory slot that stores the output of the crafting recipe. + f Lnet/minecraft/world/Container; repairSlots t field_16772 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access u field_16775 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17415 a method_17415 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; computeResult a method_58070 + p 1 inputItem + p 2 additionalItem + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_58071 a method_58071 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_58072 a method_58072 + m (Lnet/minecraft/core/Holder;)Z method_58073 a method_58073 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; mergeItems b method_58074 + p 1 inputItem + p 2 additionalItem + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; removeNonCursesFrom c method_16693 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V mergeEnchantsFrom c method_20268 + p 1 inputItem + p 2 additionalItem + m ()V createResult l method_16695 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/GrindstoneMenu$1 cqt$1 net/minecraft/class_3803$1 + f Lnet/minecraft/world/inventory/GrindstoneMenu; field_16776 b field_16776 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;I)V +c net/minecraft/world/inventory/GrindstoneMenu$2 cqt$2 net/minecraft/class_3803$2 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/GrindstoneMenu$3 cqt$3 net/minecraft/class_3803$3 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/GrindstoneMenu$4 cqt$4 net/minecraft/class_3803$4 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_16779 + f Lnet/minecraft/world/inventory/GrindstoneMenu; field_16780 b field_16780 + m (Lnet/minecraft/world/level/Level;)I getExperienceAmount a method_17416 + c Returns the total amount of XP stored in all the input slots of this container. The return value is randomized, so that it returns between 50% and 100% of the total XP. + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17417 a method_17417 + m (Lnet/minecraft/world/item/ItemStack;)I getExperienceFromItem g method_16696 + c Returns the total amount of XP stored in the enchantments of this stack. + p 1 stack + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/HopperMenu cqu net/minecraft/class_1722 + f I CONTAINER_SIZE k field_30801 + f Lnet/minecraft/world/Container; hopper l field_7826 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/HorseInventoryMenu cqv net/minecraft/class_1724 + f Lnet/minecraft/world/Container; horseContainer k field_7836 + f Lnet/minecraft/world/Container; armorContainer l field_48834 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse m field_7837 + f I SLOT_BODY_ARMOR n field_48835 + f I SLOT_HORSE_INVENTORY_START o field_48836 + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;I)V + p 1 containerId + p 2 inventory + p 3 horseContainer + p 4 horse + p 5 columns +c net/minecraft/world/inventory/HorseInventoryMenu$1 cqv$1 net/minecraft/class_1724$1 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; val$horse a field_7838 + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/inventory/HorseInventoryMenu$2 cqv$2 net/minecraft/class_1724$2 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; val$horse a field_7840 + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;IIILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)V +c net/minecraft/world/inventory/InventoryMenu cqw net/minecraft/class_1723 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_LEGGINGS A field_21671 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_BOOTS B field_21672 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_SHIELD C field_21673 + f Z active D field_7827 + f Ljava/util/Map; TEXTURE_EMPTY_SLOTS E field_7829 + f [Lnet/minecraft/world/entity/EquipmentSlot; SLOT_IDS F field_7832 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots G field_7831 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots H field_7830 + f Lnet/minecraft/world/entity/player/Player; owner I field_7828 + f I CONTAINER_ID k field_30802 + f I RESULT_SLOT l field_30803 + f I CRAFT_SLOT_START m field_30804 + f I CRAFT_SLOT_COUNT n field_49739 + f I CRAFT_SLOT_END o field_30805 + f I ARMOR_SLOT_START p field_30806 + f I ARMOR_SLOT_COUNT q field_49740 + f I ARMOR_SLOT_END r field_30807 + f I INV_SLOT_START s field_30808 + f I INV_SLOT_END t field_30809 + f I USE_ROW_SLOT_START u field_30810 + f I USE_ROW_SLOT_END v field_30811 + f I SHIELD_SLOT w field_30812 + f Lnet/minecraft/resources/ResourceLocation; BLOCK_ATLAS x field_21668 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_HELMET y field_21669 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_ARMOR_SLOT_CHESTPLATE z field_21670 + m (I)Z isHotbarSlot f method_36211 + p 0 index + m ()Lnet/minecraft/world/inventory/CraftingContainer; getCraftSlots r method_29281 + m (Lnet/minecraft/world/entity/player/Inventory;ZLnet/minecraft/world/entity/player/Player;)V + p 1 playerInventory + p 2 active + p 3 owner + m ()V +c net/minecraft/world/inventory/InventoryMenu$1 cqw$1 net/minecraft/class_1723$1 + f Lnet/minecraft/world/entity/player/Player; val$owner a field_39410 + m (Lnet/minecraft/world/inventory/InventoryMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/entity/player/Player;)V +c net/minecraft/world/inventory/ItemCombinerMenu cqx net/minecraft/class_4861 + f I INVENTORY_SLOTS_PER_ROW k field_41901 + f I INVENTORY_SLOTS_PER_COLUMN l field_41902 + f Ljava/util/List; inputSlotIndexes m field_41903 + f I resultSlotIndex n field_41904 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access o field_22481 + f Lnet/minecraft/world/entity/player/Player; player p field_22482 + f Lnet/minecraft/world/Container; inputSlots q field_22480 + f Lnet/minecraft/world/inventory/ResultContainer; resultSlots r field_22479 + m (Lnet/minecraft/world/entity/player/Inventory;)V createInventorySlots a method_48353 + p 1 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V onTake a method_24923 + p 1 player + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/lang/Boolean; method_24924 a method_24924 + m (Lnet/minecraft/world/entity/player/Player;Z)Z mayPickup a method_24927 + p 1 player + p 2 hasStack + m (Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition;)V createInputSlots a method_48354 + p 1 slotDefinition + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBlock a method_24925 + p 1 state + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24926 b method_24926 + m (Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition;)V createResultSlot b method_48355 + p 1 slotDefinition + m (Lnet/minecraft/world/item/ItemStack;)Z canMoveIntoInputSlots c method_48356 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getSlotToQuickMoveTo d method_48357 + p 1 stack + m (I)Lnet/minecraft/world/SimpleContainer; createContainer e method_48358 + p 1 size + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition; createInputSlotDefinitions l method_48352 + m ()V createResult m method_24928 + c Called when the Anvil Input Slot changes, calculates the new result and puts it in the output slot. + m ()I getInventorySlotStart n method_48359 + m ()I getResultSlot o method_48360 + m ()I getInventorySlotEnd p method_48361 + m ()I getUseRowStart q method_48362 + m ()I getUseRowEnd r method_48363 + m (Lnet/minecraft/world/inventory/MenuType;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 type + p 2 containerId + p 3 playerInventory + p 4 access +c net/minecraft/world/inventory/ItemCombinerMenu$1 cqx$1 net/minecraft/class_4861$1 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; val$slot a field_41905 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition;)V +c net/minecraft/world/inventory/ItemCombinerMenu$2 cqx$2 net/minecraft/class_4861$2 + f Lnet/minecraft/world/inventory/ItemCombinerMenu; field_22483 a field_22483 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/ItemCombinerMenu$3 cqx$3 net/minecraft/class_4861$3 + f Lnet/minecraft/world/inventory/ItemCombinerMenu; field_7778 b field_7778 + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;I)V +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition cqy net/minecraft/class_8047 + f Ljava/util/List; slots a field_41907 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; resultSlot b field_41908 + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; create a method_48364 + m (I)Z hasSlot a method_48365 + p 1 slot + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; getResultSlot b method_48366 + m (I)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; getSlot b method_48367 + p 1 slot + m ()Ljava/util/List; getSlots c method_48368 + m ()I getNumOfInputSlots d method_48369 + m ()I getResultSlotIndex e method_48370 + m ()Ljava/util/List; getInputSlotIndexes f method_48371 + m (Ljava/util/List;Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition;)V + p 1 slots + p 2 resultSlot +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder cqy$a net/minecraft/class_8047$class_8048 + f Ljava/util/List; slots a field_41909 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; resultSlot b field_41910 + m ()Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition; build a method_48372 + m (III)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; withResultSlot a method_48373 + p 1 slotIndex + p 2 x + p 3 y + m (IIILjava/util/function/Predicate;)Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$Builder; withSlot a method_48374 + p 1 slotIndex + p 2 x + p 3 y + p 4 mayPlace + m (Lnet/minecraft/world/item/ItemStack;)Z method_48375 a method_48375 + m ()V +c net/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition cqy$b net/minecraft/class_8047$class_8049 + f I slotIndex a comp_1204 + f I x b comp_1205 + f I y c comp_1206 + f Ljava/util/function/Predicate; mayPlace d comp_1207 + f Lnet/minecraft/world/inventory/ItemCombinerMenuSlotDefinition$SlotDefinition; EMPTY e field_41911 + m ()I slotIndex a comp_1204 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48376 a method_48376 + m ()I x b comp_1205 + m ()I y c comp_1206 + m ()Ljava/util/function/Predicate; mayPlace d comp_1207 + m (IIILjava/util/function/Predicate;)V + m ()V +c net/minecraft/world/inventory/LecternMenu cqz net/minecraft/class_3916 + f I BUTTON_PREV_PAGE k field_30820 + f I BUTTON_NEXT_PAGE l field_30821 + f I BUTTON_TAKE_BOOK m field_30822 + f I BUTTON_PAGE_JUMP_RANGE_START n field_30823 + f I DATA_COUNT o field_30824 + f I SLOT_COUNT p field_30825 + f Lnet/minecraft/world/Container; lectern q field_17313 + f Lnet/minecraft/world/inventory/ContainerData; lecternData r field_17314 + m ()Lnet/minecraft/world/item/ItemStack; getBook l method_17418 + m ()I getPage m method_17419 + m (I)V + p 1 containerId + m (ILnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 lectern + p 3 lecternData +c net/minecraft/world/inventory/LecternMenu$1 cqz$1 net/minecraft/class_3916$1 + f Lnet/minecraft/world/inventory/LecternMenu; field_17315 a field_17315 + m (Lnet/minecraft/world/inventory/LecternMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu cra net/minecraft/class_1726 + f Lnet/minecraft/world/Container; outputContainer A field_17323 + f I PATTERN_NOT_SET k field_39120 + f I INV_SLOT_START l field_30826 + f I INV_SLOT_END m field_30827 + f I USE_ROW_SLOT_START n field_30828 + f I USE_ROW_SLOT_END o field_30829 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access p field_17316 + f Lnet/minecraft/world/inventory/DataSlot; selectedBannerPatternIndex q field_17317 + f Ljava/util/List; selectablePatterns r field_39121 + f Ljava/lang/Runnable; slotUpdateListener s field_17318 + f Lnet/minecraft/core/HolderGetter; patternGetter t field_49741 + f Lnet/minecraft/world/inventory/Slot; bannerSlot u field_17319 + f Lnet/minecraft/world/inventory/Slot; dyeSlot v field_17320 + f Lnet/minecraft/world/inventory/Slot; patternSlot w field_17321 + f Lnet/minecraft/world/inventory/Slot; resultSlot x field_17322 + f J lastSoundTime y field_20383 + f Lnet/minecraft/world/Container; inputContainer z field_7850 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17420 a method_17420 + m (Ljava/lang/Runnable;)V registerUpdateListener a method_17423 + p 1 listener + m (Lnet/minecraft/core/Holder;)V setupResultSlot a method_7648 + c Creates an output banner ItemStack based on the patterns, dyes, etc. in the loom. + p 1 pattern + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_57322 a method_57322 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getSelectablePatterns c method_43705 + p 1 stack + m (I)Z isValidPatternIndex e method_45016 + p 1 index + m ()Ljava/util/List; getSelectablePatterns l method_43706 + m ()I getSelectedBannerPatternIndex m method_7647 + m ()Lnet/minecraft/world/inventory/Slot; getBannerSlot n method_17428 + m ()Lnet/minecraft/world/inventory/Slot; getDyeSlot o method_17429 + m ()Lnet/minecraft/world/inventory/Slot; getPatternSlot p method_17430 + m ()Lnet/minecraft/world/inventory/Slot; getResultSlot q method_17431 + m ()V method_17432 r method_17432 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/LoomMenu$1 cra$1 net/minecraft/class_1726$1 + f Lnet/minecraft/world/inventory/LoomMenu; field_7851 b field_7851 + m (Lnet/minecraft/world/inventory/LoomMenu;I)V +c net/minecraft/world/inventory/LoomMenu$2 cra$2 net/minecraft/class_1726$2 + f Lnet/minecraft/world/inventory/LoomMenu; field_17324 b field_17324 + m (Lnet/minecraft/world/inventory/LoomMenu;I)V +c net/minecraft/world/inventory/LoomMenu$3 cra$3 net/minecraft/class_1726$3 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$4 cra$4 net/minecraft/class_1726$4 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$5 cra$5 net/minecraft/class_1726$5 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/LoomMenu$6 cra$6 net/minecraft/class_1726$6 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17325 + f Lnet/minecraft/world/inventory/LoomMenu; field_7855 b field_7855 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17433 a method_17433 + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/MenuConstructor crb net/minecraft/class_1270 +c net/minecraft/world/inventory/MenuType crc net/minecraft/class_3917 + f Lnet/minecraft/world/inventory/MenuType$MenuSupplier; constructor A field_17344 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x1 a field_18664 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x2 b field_18665 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x3 c field_17326 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x4 d field_18666 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x5 e field_18667 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_9x6 f field_17327 + f Lnet/minecraft/world/inventory/MenuType; GENERIC_3x3 g field_17328 + f Lnet/minecraft/world/inventory/MenuType; CRAFTER_3x3 h field_46790 + f Lnet/minecraft/world/inventory/MenuType; ANVIL i field_17329 + f Lnet/minecraft/world/inventory/MenuType; BEACON j field_17330 + f Lnet/minecraft/world/inventory/MenuType; BLAST_FURNACE k field_17331 + f Lnet/minecraft/world/inventory/MenuType; BREWING_STAND l field_17332 + f Lnet/minecraft/world/inventory/MenuType; CRAFTING m field_17333 + f Lnet/minecraft/world/inventory/MenuType; ENCHANTMENT n field_17334 + f Lnet/minecraft/world/inventory/MenuType; FURNACE o field_17335 + f Lnet/minecraft/world/inventory/MenuType; GRINDSTONE p field_17336 + f Lnet/minecraft/world/inventory/MenuType; HOPPER q field_17337 + f Lnet/minecraft/world/inventory/MenuType; LECTERN r field_17338 + f Lnet/minecraft/world/inventory/MenuType; LOOM s field_17339 + f Lnet/minecraft/world/inventory/MenuType; MERCHANT t field_17340 + f Lnet/minecraft/world/inventory/MenuType; SHULKER_BOX u field_17341 + f Lnet/minecraft/world/inventory/MenuType; SMITHING v field_22484 + f Lnet/minecraft/world/inventory/MenuType; SMOKER w field_17342 + f Lnet/minecraft/world/inventory/MenuType; CARTOGRAPHY_TABLE x field_17343 + f Lnet/minecraft/world/inventory/MenuType; STONECUTTER y field_17625 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures z field_41923 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; create a method_17434 + p 1 containerId + p 2 playerInventory + m (Ljava/lang/String;Lnet/minecraft/world/inventory/MenuType$MenuSupplier;)Lnet/minecraft/world/inventory/MenuType; register a method_17435 + p 0 key + p 1 factory + m (Ljava/lang/String;Lnet/minecraft/world/inventory/MenuType$MenuSupplier;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/inventory/MenuType; register a method_48387 + p 0 key + p 1 factory + p 2 requiredFeatures + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/LecternMenu; method_17436 b method_17436 + m (Lnet/minecraft/world/inventory/MenuType$MenuSupplier;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 constructor + p 2 requiredFeatures + m ()V +c net/minecraft/world/inventory/MenuType$MenuSupplier crc$a net/minecraft/class_3917$class_3918 +c net/minecraft/world/inventory/MerchantContainer crd net/minecraft/class_1725 + f Lnet/minecraft/world/item/trading/Merchant; merchant b field_7844 + f Lnet/minecraft/core/NonNullList; itemStacks c field_7845 + f Lnet/minecraft/world/item/trading/MerchantOffer; activeOffer d field_7843 + f I selectionHint e field_7842 + f I futureXp f field_18668 + m (I)V setSelectionHint c method_7643 + p 1 currentRecipeIndex + m (I)Z isPaymentSlot d method_7644 + c if par1 slot has changed, does resetRecipeAndSlots need to be called? + p 1 slot + m ()V updateSellItem f method_7645 + m ()Lnet/minecraft/world/item/trading/MerchantOffer; getActiveOffer g method_7642 + m ()I getFutureXp h method_19252 + m (Lnet/minecraft/world/item/trading/Merchant;)V + p 1 merchant +c net/minecraft/world/inventory/MerchantMenu cre net/minecraft/class_1728 + f I PAYMENT1_SLOT k field_30830 + f I PAYMENT2_SLOT l field_30831 + f I RESULT_SLOT m field_30832 + f I INV_SLOT_START n field_30833 + f I INV_SLOT_END o field_30834 + f I USE_ROW_SLOT_START p field_30835 + f I USE_ROW_SLOT_END q field_30836 + f I SELLSLOT1_X r field_30837 + f I SELLSLOT2_X s field_30838 + f I BUYSLOT_X t field_30839 + f I ROW_Y u field_30840 + f Lnet/minecraft/world/item/trading/Merchant; trader v field_7863 + f Lnet/minecraft/world/inventory/MerchantContainer; tradeContainer w field_7861 + f I merchantLevel x field_18669 + f Z showProgressBar y field_18670 + f Z canRestock z field_19358 + m (ILnet/minecraft/world/item/trading/ItemCost;)V moveFromInventoryToPaymentSlot a method_20214 + p 1 paymentSlotIndex + p 2 payment + m (Lnet/minecraft/world/item/trading/ItemCost;)V method_57323 a method_57323 + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V setOffers a method_17437 + c {@link net.minecraft.client.multiplayer.ClientPacketListener} uses this to set offers for the client side MerchantContainer. + p 1 offers + m (Z)V setShowProgressBar a method_19253 + p 1 showProgressBar + m (Z)V setCanRestock b method_20700 + p 1 canRestock + m (I)V setSelectionHint e method_7650 + p 1 currentRecipeIndex + m (I)V setXp f method_19255 + p 1 xp + m (I)V setMerchantLevel g method_19257 + p 1 level + m (I)V tryMoveItems h method_20215 + p 1 selectedMerchantRecipe + m ()I getTraderXp l method_19254 + m ()I getFutureTraderXp m method_19256 + m ()I getTraderLevel n method_19258 + m ()Z canRestock o method_20701 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers p method_17438 + m ()Z showProgressBar q method_19259 + m ()V playTradeSound r method_20595 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/item/trading/Merchant;)V + p 1 containerId + p 2 playerInventory + p 3 trader +c net/minecraft/world/inventory/MerchantResultSlot crf net/minecraft/class_1727 + f Lnet/minecraft/world/inventory/MerchantContainer; slots a field_7860 + f Lnet/minecraft/world/entity/player/Player; player b field_7857 + f I removeCount g field_7859 + f Lnet/minecraft/world/item/trading/Merchant; merchant h field_7858 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/trading/Merchant;Lnet/minecraft/world/inventory/MerchantContainer;III)V + p 1 player + p 2 merchant + p 3 slots + p 4 slot + p 5 xPosition + p 6 yPosition +c net/minecraft/world/inventory/NonInteractiveResultSlot crg net/minecraft/class_8883 + m (Lnet/minecraft/world/Container;III)V +c net/minecraft/world/inventory/PlayerEnderChestContainer crh net/minecraft/class_1730 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; activeChest b field_7864 + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V setActiveChest a method_7661 + p 1 enderChestBlockEntity + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)Z isActiveChest b method_31556 + p 1 enderChest + m ()V +c net/minecraft/world/inventory/RecipeBookMenu cri net/minecraft/class_1729 + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillCraftSlotsStackedContents a method_7654 + p 1 itemHelper + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z recipeMatches a method_7652 + p 1 recipe + m (ZLnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/server/level/ServerPlayer;)V handlePlacement a method_17697 + p 1 placeAll + p 2 recipe + p 3 player + m ()V beginPlacingRecipe an_ method_59963 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V finishPlacingRecipe b method_59964 + p 1 recipe + m (I)Z shouldMoveToInventory e method_32339 + p 1 slotIndex + m ()V clearCraftingContent l method_7657 + m ()I getResultSlotIndex m method_7655 + m ()I getGridWidth n method_7653 + m ()I getGridHeight o method_7656 + m ()I getSize p method_7658 + m ()Lnet/minecraft/world/inventory/RecipeBookType; getRecipeBookType t method_30264 + m (Lnet/minecraft/world/inventory/MenuType;I)V + p 1 menuType + p 2 containerId +c net/minecraft/world/inventory/RecipeBookType crj net/minecraft/class_5421 + f Lnet/minecraft/world/inventory/RecipeBookType; CRAFTING a field_25763 + f Lnet/minecraft/world/inventory/RecipeBookType; FURNACE b field_25764 + f Lnet/minecraft/world/inventory/RecipeBookType; BLAST_FURNACE c field_25765 + f Lnet/minecraft/world/inventory/RecipeBookType; SMOKER d field_25766 + f [Lnet/minecraft/world/inventory/RecipeBookType; $VALUES e field_25767 + m ()[Lnet/minecraft/world/inventory/RecipeBookType; $values a method_36674 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/inventory/RecipeCraftingHolder crk net/minecraft/class_1732 + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;)V awardUsedRecipes a method_7664 + p 1 player + p 2 items + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V setRecipeUsed a method_7662 + p 1 recipe + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z setRecipeUsed a method_7665 + p 1 level + p 2 players + p 3 recipe + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipeUsed d method_7663 +c net/minecraft/world/inventory/ResultContainer crl net/minecraft/class_1731 + f Lnet/minecraft/core/NonNullList; itemStacks b field_7866 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipeUsed c field_7865 + m ()V +c net/minecraft/world/inventory/ResultSlot crm net/minecraft/class_1734 + f Lnet/minecraft/world/inventory/CraftingContainer; craftSlots a field_7870 + f Lnet/minecraft/world/entity/player/Player; player b field_7868 + f I removeCount g field_7869 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/inventory/CraftingContainer;Lnet/minecraft/world/Container;III)V + p 1 player + p 2 craftSlots + p 3 container + p 4 slot + p 5 xPosition + p 6 yPosition +c net/minecraft/world/inventory/ShulkerBoxMenu crn net/minecraft/class_1733 + f I CONTAINER_SIZE k field_30841 + f Lnet/minecraft/world/Container; container l field_7867 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;)V + p 1 containerId + p 2 playerInventory + p 3 container +c net/minecraft/world/inventory/ShulkerBoxSlot cro net/minecraft/class_1736 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/SimpleContainerData crp net/minecraft/class_3919 + f [I ints a field_17345 + m (I)V + p 1 size +c net/minecraft/world/inventory/Slot crq net/minecraft/class_1735 + f I slot a field_7875 + f Lnet/minecraft/world/Container; container c field_7871 + f I index d field_7874 + f I x e field_7873 + f I y f field_7872 + m ()I getMaxStackSize a method_7675 + c Returns the maximum stack size for a given slot (usually the same as getInventoryStackLimit(), but 1 in the case of armor slots) + m (I)Lnet/minecraft/world/item/ItemStack; remove a method_7671 + c Decrease the size of the stack in slot (first int arg) by the amount of the second int arg. Returns the new stack. + p 1 amount + m (IILnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; tryRemove a method_34264 + p 1 count + p 2 decrement + p 3 player + m (Lnet/minecraft/world/entity/player/Player;)Z mayPickup a method_7674 + c Return whether this slot's stack can be taken from this slot. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V onTake a method_7667 + p 1 player + p 2 stack + m (Lnet/minecraft/world/item/ItemStack;)Z mayPlace a method_7680 + c Check if the stack is allowed to be placed in this slot, used for armor slots as well as furnace fuel. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V onQuickCraft a method_7678 + c Typically increases an internal count, then calls {@code onCrafting(item)}. + p 1 stack + c the output - ie, iron ingots, and pickaxes, not ore and wood. + p 2 amount + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V setByPlayer a method_48931 + p 1 newStack + p 2 oldStack + m (Lnet/minecraft/world/item/ItemStack;)I getMaxStackSize a_ method_7676 + p 1 stack + m ()Lcom/mojang/datafixers/util/Pair; getNoItemIcon b method_7679 + m (I)V onSwapCraft b method_7672 + p 1 numItemsCrafted + m (IILnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; safeTake b method_32753 + p 1 count + p 2 decrement + p 3 player + m (Lnet/minecraft/world/entity/player/Player;)Z allowModification b method_32754 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_34265 b method_34265 + m (Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; safeInsert b method_32755 + p 1 stack + p 2 increment + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V onQuickCraft b method_7670 + c if par2 has more items than par1, onCrafting(item,countIncrease) is called + p 1 oldStack + p 2 newStack + m (Lnet/minecraft/world/item/ItemStack;)V checkTakeAchievements b_ method_7669 + p 1 stack + c the output - ie, iron ingots, and pickaxes, not ore and wood. + m ()V setChanged c method_7668 + c Called when the stack in a Slot changes + m ()Z isActive d method_7682 + c Actually only call when we want to render the white square effect over the slots. Return always True, except for the armor slot of the Donkey/Mule (we can't interact with the Undead and Skeleton horses) + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; safeInsert d method_32756 + p 1 stack + m ()Z isHighlightable e method_51306 + m (Lnet/minecraft/world/item/ItemStack;)V setByPlayer e method_53512 + p 1 stack + m ()Z isFake f method_55059 + m (Lnet/minecraft/world/item/ItemStack;)V set f method_7673 + c Helper method to put a stack in the slot. + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; getItem g method_7677 + c Helper function to get the stack in the slot. + m ()Z hasItem h method_7681 + c Returns if this slot contains a stack. + m ()I getContainerSlot i method_34266 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/world/inventory/SlotRange crr net/minecraft/class_9348 + m ()Lit/unimi/dsi/fastutil/ints/IntList; slots a method_58075 + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/inventory/SlotRange; of a method_58076 + p 0 name + p 1 values + m ()I size b method_58077 +c net/minecraft/world/inventory/SlotRange$1 crr$1 net/minecraft/class_9348$1 + f Lit/unimi/dsi/fastutil/ints/IntList; val$slots a field_49742 + f Ljava/lang/String; val$name b field_49743 + m (Lit/unimi/dsi/fastutil/ints/IntList;Ljava/lang/String;)V +c net/minecraft/world/inventory/SlotRanges crs net/minecraft/class_9349 + f Lcom/mojang/serialization/Codec; CODEC a field_49744 + f Ljava/util/List; SLOTS b field_49745 + f Ljava/util/function/Function; NAME_LOOKUP c field_49746 + m ()Ljava/util/stream/Stream; allNames a method_58078 + m (Lnet/minecraft/world/inventory/SlotRange;)Z method_58079 a method_58079 + m (Ljava/lang/String;)Lnet/minecraft/world/inventory/SlotRange; nameToIds a method_58080 + p 0 name + m (Ljava/lang/String;I)Lnet/minecraft/world/inventory/SlotRange; create a method_58081 + p 0 name + p 1 value + m (Ljava/lang/String;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/inventory/SlotRange; create a method_58082 + p 0 name + p 1 values + m (Ljava/lang/String;[I)Lnet/minecraft/world/inventory/SlotRange; create a method_58083 + p 0 name + p 1 values + m (Ljava/util/ArrayList;)V method_58084 a method_58084 + m (Ljava/util/List;Ljava/lang/String;I)V addSingleSlot a method_58085 + p 0 list + p 1 name + p 2 value + m (Ljava/util/List;Ljava/lang/String;II)V addSlotRange a method_58086 + p 0 list + p 1 prefix + p 2 startValue + p 3 size + m (Ljava/util/List;Ljava/lang/String;[I)V addSlots a method_58087 + p 0 list + p 1 name + p 2 values + m ()Ljava/util/stream/Stream; singleSlotNames b method_58088 + m (Ljava/lang/String;)Ljava/lang/String; method_58089 b method_58089 + m ()[Lnet/minecraft/world/inventory/SlotRange; method_58090 c method_58090 + m ()V + m ()V +c net/minecraft/world/inventory/SmithingMenu crt net/minecraft/class_4862 + f I TEMPLATE_SLOT k field_41924 + f I BASE_SLOT l field_41925 + f I ADDITIONAL_SLOT m field_41926 + f I RESULT_SLOT n field_41927 + f I TEMPLATE_SLOT_X_PLACEMENT s field_41928 + f I BASE_SLOT_X_PLACEMENT t field_41929 + f I ADDITIONAL_SLOT_X_PLACEMENT u field_41930 + f I SLOT_Y_PLACEMENT v field_41931 + f I RESULT_SLOT_X_PLACEMENT w field_41932 + f Lnet/minecraft/world/level/Level; level x field_25385 + f Lnet/minecraft/world/item/crafting/RecipeHolder; selectedRecipe y field_25386 + f Ljava/util/List; recipes z field_25668 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/util/stream/IntStream; method_52562 a method_52562 + m (Lnet/minecraft/world/item/crafting/SmithingRecipe;Lnet/minecraft/world/item/ItemStack;)Ljava/util/OptionalInt; findSlotMatchingIngredient a method_48389 + p 0 recipe + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_24929 a method_24929 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_51713 b method_51713 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_51714 c method_51714 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_48394 d method_48394 + m (I)V shrinkStackInSlot e method_29539 + p 1 index + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/OptionalInt; findSlotToQuickMoveTo e method_52563 + p 1 stack + m (I)Z method_52564 f method_52564 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48393 f method_48393 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48395 g method_48395 + m (Lnet/minecraft/world/item/ItemStack;)Z method_48396 h method_48396 + m ()Ljava/util/List; getRelevantItems n method_51307 + m ()Lnet/minecraft/world/item/crafting/SmithingRecipeInput; createRecipeInput p method_59965 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/SmokerMenu cru net/minecraft/class_3706 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/Container;Lnet/minecraft/world/inventory/ContainerData;)V + p 1 containerId + p 2 playerInventory + p 3 smokerContainer + p 4 smokerData +c net/minecraft/world/inventory/StackedContentsCompatible crv net/minecraft/class_1737 + m (Lnet/minecraft/world/entity/player/StackedContents;)V fillStackedContents a method_7683 + p 1 contents +c net/minecraft/world/inventory/StonecutterMenu crw net/minecraft/class_3971 + f Lnet/minecraft/world/inventory/ResultContainer; resultContainer A field_19173 + c The inventory that stores the output of the crafting recipe. + f I INPUT_SLOT k field_30842 + f I RESULT_SLOT l field_30843 + f Lnet/minecraft/world/inventory/Slot; inputSlot m field_17627 + f Lnet/minecraft/world/inventory/Slot; resultSlot n field_17628 + c The inventory slot that stores the output of the crafting recipe. + f Lnet/minecraft/world/Container; container o field_17629 + f I INV_SLOT_START p field_30844 + f I INV_SLOT_END q field_30845 + f I USE_ROW_SLOT_START r field_30846 + f I USE_ROW_SLOT_END s field_30847 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; access t field_17630 + f Lnet/minecraft/world/inventory/DataSlot; selectedRecipeIndex u field_17631 + c The index of the selected recipe in the GUI. + f Lnet/minecraft/world/level/Level; level v field_17632 + f Ljava/util/List; recipes w field_17633 + f Lnet/minecraft/world/item/ItemStack; input x field_17634 + c The {@linkplain net.minecraft.world.item.ItemStack} set in the input slot by the player. + f J lastSoundTime y field_17635 + c Stores the game time of the last time the player took items from the the crafting result slot. This is used to prevent the sound from being played multiple times on the same tick. + f Ljava/lang/Runnable; slotUpdateListener z field_17636 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)V setupRecipeList a method_17855 + p 1 container + p 2 stack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17856 a method_17856 + m (Ljava/lang/Runnable;)V registerUpdateListener a method_17859 + p 1 listener + m (Lnet/minecraft/world/Container;)Lnet/minecraft/world/item/crafting/SingleRecipeInput; createRecipeInput c method_59966 + p 0 container + m (I)Z isValidRecipeIndex e method_30160 + p 1 recipeIndex + m ()I getSelectedRecipeIndex l method_17862 + c Returns the index of the selected recipe. + m ()Ljava/util/List; getRecipes m method_17863 + m ()I getNumRecipes n method_17864 + m ()Z hasInputItem o method_17865 + m ()V setupResultSlot p method_17866 + m ()V method_17867 q method_17867 + m (ILnet/minecraft/world/entity/player/Inventory;)V + p 1 containerId + p 2 playerInventory + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/inventory/ContainerLevelAccess;)V + p 1 containerId + p 2 playerInventory + p 3 access +c net/minecraft/world/inventory/StonecutterMenu$1 crw$1 net/minecraft/class_3971$1 + f Lnet/minecraft/world/inventory/StonecutterMenu; field_17637 b field_17637 + m (Lnet/minecraft/world/inventory/StonecutterMenu;I)V +c net/minecraft/world/inventory/StonecutterMenu$2 crw$2 net/minecraft/class_3971$2 + f Lnet/minecraft/world/inventory/ContainerLevelAccess; val$access a field_17638 + f Lnet/minecraft/world/inventory/StonecutterMenu; field_17639 b field_17639 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V method_17868 a method_17868 + m ()Ljava/util/List; getRelevantItems j method_51308 + m (Lnet/minecraft/world/inventory/StonecutterMenu;Lnet/minecraft/world/Container;IIILnet/minecraft/world/inventory/ContainerLevelAccess;)V +c net/minecraft/world/inventory/TransientCraftingContainer crx net/minecraft/class_1715 + f Lnet/minecraft/core/NonNullList; items b field_7805 + f I width c field_7804 + f I height d field_7803 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; menu e field_7802 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;II)V + p 1 menu + p 2 width + p 3 height + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;IILnet/minecraft/core/NonNullList;)V + p 1 menu + p 2 width + p 3 height + p 4 items +c net/minecraft/world/inventory/package-info cry net/minecraft/class_6077 +c net/minecraft/world/inventory/tooltip/BundleTooltip crz net/minecraft/class_5631 + f Lnet/minecraft/world/item/component/BundleContents; contents a comp_2377 + m ()Lnet/minecraft/world/item/component/BundleContents; contents a comp_2377 + m (Lnet/minecraft/world/item/component/BundleContents;)V +c net/minecraft/world/inventory/tooltip/TooltipComponent csa net/minecraft/class_5632 +c net/minecraft/world/inventory/tooltip/package-info csb net/minecraft/class_6078 +c net/minecraft/world/item/AdventureModePredicate csc net/minecraft/class_6538 + f Lcom/mojang/serialization/Codec; CODEC a field_49245 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49246 + f Lnet/minecraft/network/chat/Component; CAN_BREAK_HEADER c field_49247 + f Lnet/minecraft/network/chat/Component; CAN_PLACE_HEADER d field_49248 + f Lcom/mojang/serialization/Codec; SIMPLE_CODEC e field_49249 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49250 + f Lnet/minecraft/network/chat/Component; UNKNOWN_USE g field_49251 + f Ljava/util/List; predicates h field_49252 + f Z showInTooltip i field_49253 + f Ljava/util/List; tooltip j field_49254 + f Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; lastCheckedBlock k field_34450 + f Z lastResult l field_34451 + f Z checksBlockEntity m field_34452 + m ()Z showInTooltip a method_57324 + m (Lnet/minecraft/advancements/critereon/BlockPredicate;)Ljava/util/stream/Stream; method_57325 a method_57325 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57326 a method_57326 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Ljava/util/List; method_57327 a method_57327 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z test a method_38070 + p 1 block + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;Z)Z areSameBlocks a method_38071 + p 0 first + p 1 second + p 2 checkNbt + m (Ljava/util/List;)Ljava/util/List; computeTooltip a method_57329 + p 0 predicates + m (Ljava/util/function/Consumer;)V addToTooltip a method_57330 + p 1 tooltipAdder + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; method_57328 a method_57328 + m (Z)Lnet/minecraft/world/item/AdventureModePredicate; withTooltip a method_58402 + p 1 showInTooltip + m ()Ljava/lang/String; method_57331 b method_57331 + m (Lnet/minecraft/advancements/critereon/BlockPredicate;)Lnet/minecraft/world/item/AdventureModePredicate; method_57332 b method_57332 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Ljava/util/List; method_57333 b method_57333 + m (Lnet/minecraft/world/item/AdventureModePredicate;)Lcom/mojang/serialization/DataResult; method_57334 c method_57334 + m (Ljava/util/List;ZLjava/util/List;)V + p 1 predicates + p 2 showInTooltip + p 3 tooltip + m (Ljava/util/List;Z)V + p 1 predicates + p 2 showInTooltip + m ()V +c net/minecraft/world/item/AirItem csd net/minecraft/class_1739 + f Lnet/minecraft/world/level/block/Block; block a field_7882 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/AnimalArmorItem cse net/minecraft/class_4059 + f Lnet/minecraft/resources/ResourceLocation; textureLocation j field_47823 + f Lnet/minecraft/resources/ResourceLocation; overlayTextureLocation k field_49255 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; bodyType l field_47824 + m ()Lnet/minecraft/resources/ResourceLocation; getTexture b method_18454 + m ()Lnet/minecraft/resources/ResourceLocation; getOverlayTexture c method_57335 + m ()Lnet/minecraft/world/item/AnimalArmorItem$BodyType; getBodyType d method_55756 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/AnimalArmorItem$BodyType;ZLnet/minecraft/world/item/Item$Properties;)V + p 1 armorMaterial + p 2 bodyType + p 3 hasOverlay + p 4 properties +c net/minecraft/world/item/AnimalArmorItem$BodyType cse$a net/minecraft/class_4059$class_9076 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; EQUESTRIAN a field_47825 + f Lnet/minecraft/world/item/AnimalArmorItem$BodyType; CANINE b field_47826 + f Ljava/util/function/Function; textureLocator c field_47827 + f Lnet/minecraft/sounds/SoundEvent; breakingSound d field_49256 + f [Lnet/minecraft/world/item/AnimalArmorItem$BodyType; $VALUES e field_47828 + m ()[Lnet/minecraft/world/item/AnimalArmorItem$BodyType; $values a method_55757 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_56686 a method_56686 + m (Ljava/lang/String;)Ljava/lang/String; method_56687 a method_56687 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_56688 b method_56688 + m (Ljava/lang/String;ILjava/util/function/Function;Lnet/minecraft/sounds/SoundEvent;)V + p 3 textureLocator + p 4 breakingSound + m ()V +c net/minecraft/world/item/ArmorItem csf net/minecraft/class_1738 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_ITEM_BEHAVIOR a field_7879 + f Lnet/minecraft/world/item/ArmorItem$Type; type b field_41933 + f Lnet/minecraft/core/Holder; material c field_7881 + f Ljava/util/function/Supplier; defaultModifiers j field_23741 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ArmorItem$Type;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_56689 a method_56689 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/world/item/ItemStack;)Z dispenseArmor a method_7684 + p 0 blockSource + p 1 armorItem + m ()Lnet/minecraft/world/item/ArmorItem$Type; getType f method_48398 + m ()Lnet/minecraft/core/Holder; getMaterial h method_7686 + m ()I getDefense k method_7687 + m ()F getToughness l method_26353 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ArmorItem$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 material + p 2 type + p 3 properties + m ()V +c net/minecraft/world/item/ArmorItem$1 csf$1 net/minecraft/class_1738$1 + m ()V +c net/minecraft/world/item/ArmorItem$Type csf$a net/minecraft/class_1738$class_8051 + f Lnet/minecraft/world/item/ArmorItem$Type; HELMET a field_41934 + f Lnet/minecraft/world/item/ArmorItem$Type; CHESTPLATE b field_41935 + f Lnet/minecraft/world/item/ArmorItem$Type; LEGGINGS c field_41936 + f Lnet/minecraft/world/item/ArmorItem$Type; BOOTS d field_41937 + f Lnet/minecraft/world/item/ArmorItem$Type; BODY e field_48838 + f Lcom/mojang/serialization/Codec; CODEC f field_48839 + f Lnet/minecraft/world/entity/EquipmentSlot; slot g field_41938 + f Ljava/lang/String; name h field_41939 + f I durability i field_49257 + f [Lnet/minecraft/world/item/ArmorItem$Type; $VALUES j field_41940 + m ()Lnet/minecraft/world/entity/EquipmentSlot; getSlot a method_48399 + m (I)I getDurability a method_56690 + p 1 durabilityFactor + m ()Ljava/lang/String; getName b method_48400 + m ()Z hasTrims d method_56691 + m ()[Lnet/minecraft/world/item/ArmorItem$Type; $values e method_48401 + m (Ljava/lang/String;ILnet/minecraft/world/entity/EquipmentSlot;ILjava/lang/String;)V + p 3 slot + p 4 durability + p 5 name + m ()V +c net/minecraft/world/item/ArmorMaterial csg net/minecraft/class_1741 + f Lcom/mojang/serialization/Codec; CODEC a field_48840 + f Ljava/util/Map; defense b comp_2298 + f I enchantmentValue c comp_2299 + f Lnet/minecraft/core/Holder; equipSound d comp_2300 + f Ljava/util/function/Supplier; repairIngredient e comp_2301 + f Ljava/util/List; layers f comp_2302 + f F toughness g comp_2303 + f F knockbackResistance h comp_2304 + m ()Ljava/util/Map; defense a comp_2298 + m (Lnet/minecraft/world/item/ArmorItem$Type;)I getDefense a method_48403 + p 1 type + m ()I enchantmentValue b comp_2299 + m ()Lnet/minecraft/core/Holder; equipSound c comp_2300 + m ()Ljava/util/function/Supplier; repairIngredient d comp_2301 + m ()Ljava/util/List; layers e comp_2302 + m ()F toughness f comp_2303 + m ()F knockbackResistance g comp_2304 + m (Ljava/util/Map;ILnet/minecraft/core/Holder;Ljava/util/function/Supplier;Ljava/util/List;FF)V + m ()V +c net/minecraft/world/item/ArmorMaterial$Layer csg$a net/minecraft/class_1741$class_9196 + f Lnet/minecraft/resources/ResourceLocation; assetName a field_48841 + f Ljava/lang/String; suffix b field_48842 + f Z dyeable c field_48843 + f Lnet/minecraft/resources/ResourceLocation; innerTexture d field_48844 + f Lnet/minecraft/resources/ResourceLocation; outerTexture e field_48845 + m ()Z dyeable a method_56692 + m (Z)Lnet/minecraft/resources/ResourceLocation; texture a method_56693 + p 1 innerTexture + m (ZLjava/lang/String;)Ljava/lang/String; method_56694 a method_56694 + m (Z)Lnet/minecraft/resources/ResourceLocation; resolveTexture b method_56695 + p 1 innerTexture + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Z)V + p 1 assetName + p 2 suffix + p 3 dyeable + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 assetName +c net/minecraft/world/item/ArmorMaterials csh net/minecraft/class_1740 + f Lnet/minecraft/core/Holder; LEATHER a field_7897 + f Lnet/minecraft/core/Holder; CHAIN b field_7887 + f Lnet/minecraft/core/Holder; IRON c field_7892 + f Lnet/minecraft/core/Holder; GOLD d field_7895 + f Lnet/minecraft/core/Holder; DIAMOND e field_7889 + f Lnet/minecraft/core/Holder; TURTLE f field_7890 + f Lnet/minecraft/core/Holder; NETHERITE g field_21977 + f Lnet/minecraft/core/Holder; ARMADILLO h field_48846 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_56696 a method_56696 + m (Ljava/lang/String;Ljava/util/EnumMap;ILnet/minecraft/core/Holder;FFLjava/util/function/Supplier;)Lnet/minecraft/core/Holder; register a method_56698 + p 0 name + p 1 defense + p 2 enchantmentValue + p 3 equipSound + p 4 toughness + p 5 knockbackResistance + p 6 repairIngredient + m (Ljava/lang/String;Ljava/util/EnumMap;ILnet/minecraft/core/Holder;FFLjava/util/function/Supplier;Ljava/util/List;)Lnet/minecraft/core/Holder; register a method_56699 + p 0 name + p 1 defense + p 2 enchantmentValue + p 3 equipSound + p 4 toughness + p 5 knockbackResistance + p 6 repairIngridient + p 7 layers + m (Ljava/util/EnumMap;)V method_48405 a method_48405 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_56697 + p 0 registry + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_24356 b method_24356 + m (Ljava/util/EnumMap;)V method_48406 b method_48406 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7693 c method_7693 + m (Ljava/util/EnumMap;)V method_48407 c method_48407 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7692 d method_7692 + m (Ljava/util/EnumMap;)V method_48408 d method_48408 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7691 e method_7691 + m (Ljava/util/EnumMap;)V method_48409 e method_48409 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7689 f method_7689 + m (Ljava/util/EnumMap;)V method_48410 f method_48410 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7690 g method_7690 + m (Ljava/util/EnumMap;)V method_48411 g method_48411 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_7688 h method_7688 + m (Ljava/util/EnumMap;)V method_48412 h method_48412 + m ()V + m ()V +c net/minecraft/world/item/ArmorStandItem csi net/minecraft/class_1742 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ArrowItem csj net/minecraft/class_1744 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/projectile/AbstractArrow; createArrow a method_7702 + p 1 level + p 2 ammo + p 3 shooter + p 4 weapon + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/AxeItem csk net/minecraft/class_1743 + f Ljava/util/Map; STRIPPABLES a field_7898 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; evaluateNewBlockState a method_54760 + p 1 level + p 2 pos + p 3 player + p 4 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getStripped a method_34716 + p 1 unstrippedState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34717 a method_34717 + m (Lnet/minecraft/world/item/context/UseOnContext;)Z playerHasShieldUseIntent b method_59967 + p 0 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_54761 b method_54761 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/BannerItem csl net/minecraft/class_1746 + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)V appendHoverTextFromBannerBlockEntityTag a method_7705 + p 0 stack + p 1 tooltipComponents + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_7706 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/BannerPatternItem csm net/minecraft/class_1745 + f Lnet/minecraft/tags/TagKey; bannerPattern a field_7900 + m ()Lnet/minecraft/tags/TagKey; getBannerPattern b method_7704 + m ()Lnet/minecraft/network/chat/MutableComponent; getDisplayName c method_7703 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/Item$Properties;)V + p 1 bannerPattern + p 2 properties +c net/minecraft/world/item/BedItem csn net/minecraft/class_1748 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/BlockItem cso net/minecraft/class_1747 + f Lnet/minecraft/world/level/block/Block; block a field_7901 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V setBlockEntityData a method_57338 + p 0 stack + p 1 blockEntityType + p 2 blockEntityData + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/InteractionResult; place a method_7712 + p 1 context + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/world/level/block/state/BlockState;)Z placeBlock a method_7708 + p 1 context + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Z updateCustomBlockEntityTag a method_7714 + p 0 level + p 1 player + p 2 pos + p 3 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V updateBlockEntityComponents a method_57339 + p 0 level + p 1 poa + p 2 stack + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/sounds/SoundEvent; getPlaceSound a method_19260 + p 1 state + m (Ljava/util/Map;Lnet/minecraft/world/item/Item;)V registerBlocks a method_7713 + p 1 blockToItemMap + p 2 item + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Z updateCustomBlockEntityTag a method_7710 + p 1 pos + p 2 level + p 3 player + p 4 stack + p 5 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateBlockStateFromTag a method_18084 + p 1 pos + p 2 level + p 3 stack + p 4 state + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/item/context/BlockPlaceContext; updatePlacementContext b method_16356 + p 1 context + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlace b method_7709 + p 1 context + p 2 state + m ()Z mustSurvive c method_20360 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/BlockState; getPlacementState c method_7707 + p 1 context + m ()Lnet/minecraft/world/level/block/Block; getBlock d method_7711 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/BoatItem csp net/minecraft/class_1749 + f Ljava/util/function/Predicate; ENTITY_PREDICATE a field_17497 + f Lnet/minecraft/world/entity/vehicle/Boat$Type; type b field_7902 + f Z hasChest c field_38211 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/HitResult;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/entity/vehicle/Boat; getBoat a method_42296 + p 1 level + p 2 hitResult + p 3 stack + p 4 player + m (ZLnet/minecraft/world/entity/vehicle/Boat$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 hasChest + p 2 type + p 3 properties + m ()V +c net/minecraft/world/item/BoneMealItem csq net/minecraft/class_1752 + f I GRASS_SPREAD_WIDTH a field_30851 + f I GRASS_SPREAD_HEIGHT b field_30852 + f I GRASS_COUNT_MULTIPLIER c field_30853 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z growCrop a method_7720 + p 0 stack + p 1 level + p 2 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z growWaterPlant a method_7719 + p 0 stack + p 1 level + p 2 pos + p 3 clickedSide + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V addGrowthParticles a method_7721 + p 0 level + p 1 pos + p 2 data + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40006 a method_40006 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/block/state/BlockState; method_40128 a method_40128 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/block/state/BlockState; method_40130 b method_40130 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BoneMealItem$1 csq$1 net/minecraft/class_1752$1 + f [I $SwitchMap$net$minecraft$world$level$block$BonemealableBlock$Type a field_47829 + m ()V +c net/minecraft/world/item/BookItem csr net/minecraft/class_1751 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BottleItem css net/minecraft/class_1754 + m (Lnet/minecraft/world/entity/AreaEffectCloud;)Z method_7726 a method_7726 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; turnBottleIntoItem a method_7725 + p 1 bottleStack + p 2 player + p 3 filledBottleStack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BowItem cst net/minecraft/class_1753 + f I MAX_DRAW_DURATION a field_30855 + f I DEFAULT_RANGE b field_30856 + m (I)F getPowerForTime a method_7722 + c Gets the velocity of the arrow entity from the bow's charge + p 0 charge + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BrushItem csu net/minecraft/class_8162 + f I ANIMATION_DURATION a field_43390 + f I USE_DURATION b field_42683 + m (Lnet/minecraft/world/entity/Entity;)Z method_51309 a method_51309 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/phys/HitResult; calculateHitResult a method_49999 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/HumanoidArm;)V spawnDustParticles a method_49184 + p 1 level + p 2 hitResult + p 3 state + p 4 pos + p 5 arm + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/BrushItem$1 csu$1 net/minecraft/class_8162$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_42684 + m ()V +c net/minecraft/world/item/BrushItem$DustParticlesDelta csu$a net/minecraft/class_8162$class_8163 + f D xd a comp_1286 + f D yd b comp_1287 + f D zd c comp_1288 + f D ALONG_SIDE_DELTA d field_42685 + f D OUT_FROM_SIDE_DELTA e field_42686 + m ()D xd a comp_1286 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/BrushItem$DustParticlesDelta; fromDirection a method_49185 + p 0 pos + p 1 direction + m ()D yd b comp_1287 + m ()D zd c comp_1288 + m (DDD)V +c net/minecraft/world/item/BucketItem csv net/minecraft/class_1755 + f Lnet/minecraft/world/level/material/Fluid; content a field_7905 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/sounds/SoundEvent;)V method_32342 a method_32342 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V playEmptySound a method_7727 + p 1 player + p 2 level + p 3 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; getEmptySuccessItem a method_7732 + p 0 bucketStack + p 1 player + m (Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/item/Item$Properties;)V + p 1 content + p 2 properties +c net/minecraft/world/item/BundleItem csw net/minecraft/class_5537 + f I BAR_COLOR a field_27016 + f I TOOLTIP_MAX_WEIGHT b field_51352 + m (Lnet/minecraft/world/entity/Entity;)V playRemoveOneSound a method_38074 + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V method_57341 a method_57341 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Z dropContents a method_32757 + p 0 stack + p 1 player + m (Lnet/minecraft/world/entity/Entity;)V playInsertSound b method_38076 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V playDropContentsSound c method_38077 + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;)F getFullnessDisplay c method_31561 + p 0 stack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/ChorusFruitItem csx net/minecraft/class_1757 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/CompassItem csy net/minecraft/class_1759 + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/GlobalPos; getSpawnPosition a method_43123 + p 0 level + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ComplexItem csz net/minecraft/class_1762 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/network/protocol/Packet; getUpdatePacket a method_7757 + p 1 stack + p 2 level + p 3 player + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/CreativeModeTab cta net/minecraft/class_1761 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_BACKGROUND a field_52021 + f Lnet/minecraft/network/chat/Component; displayName b field_26391 + f Lnet/minecraft/resources/ResourceLocation; backgroundTexture c field_7919 + f Z canScroll d field_7920 + f Z showTitle e field_7917 + f Z alignedRight f field_41031 + f Lnet/minecraft/world/item/CreativeModeTab$Row; row g field_41032 + f I column h field_41033 + f Lnet/minecraft/world/item/CreativeModeTab$Type; type i field_41034 + f Lnet/minecraft/world/item/ItemStack; iconItemStack j field_7934 + f Ljava/util/Collection; displayItems k field_40859 + f Ljava/util/Set; displayItemsSearchTab l field_40860 + f Ljava/util/function/Supplier; iconGenerator m field_41036 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; displayItemsGenerator n field_41037 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_7737 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;)V buildContents a method_47306 + p 1 parameters + m (Lnet/minecraft/world/item/CreativeModeTab$Row;I)Lnet/minecraft/world/item/CreativeModeTab$Builder; builder a method_47307 + p 0 row + p 1 column + m (Lnet/minecraft/world/item/ItemStack;)Z contains a method_45412 + p 1 stack + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; createTextureLocation a method_60733 + p 0 name + m ()Lnet/minecraft/world/item/ItemStack; getIconItem b method_7747 + m ()Lnet/minecraft/resources/ResourceLocation; getBackgroundTexture c method_7742 + m ()Z showTitle d method_7754 + m ()Z canScroll e method_7756 + m ()I column f method_7743 + m ()Lnet/minecraft/world/item/CreativeModeTab$Row; row g method_47309 + m ()Z hasAnyItems h method_47310 + m ()Z shouldDisplay i method_47311 + m ()Z isAlignedRight j method_7752 + m ()Lnet/minecraft/world/item/CreativeModeTab$Type; getType k method_47312 + m ()Ljava/util/Collection; getDisplayItems l method_47313 + m ()Ljava/util/Collection; getSearchTabDisplayItems m method_45414 + m ()Ljava/lang/IllegalStateException; method_51310 n method_51310 + m (Lnet/minecraft/world/item/CreativeModeTab$Row;ILnet/minecraft/world/item/CreativeModeTab$Type;Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator;)V + p 1 row + p 2 column + p 3 type + p 4 displayName + p 5 iconGenerator + p 6 displayItemGenerator + m ()V +c net/minecraft/world/item/CreativeModeTab$Builder cta$a net/minecraft/class_1761$class_7913 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; EMPTY_GENERATOR a field_41038 + f Lnet/minecraft/world/item/CreativeModeTab$Row; row b field_41039 + f I column c field_41040 + f Lnet/minecraft/network/chat/Component; displayName d field_41041 + f Ljava/util/function/Supplier; iconGenerator e field_41042 + f Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator; displayItemsGenerator f field_41043 + f Z canScroll g field_41044 + f Z showTitle h field_41045 + f Z alignedRight i field_41046 + f Lnet/minecraft/world/item/CreativeModeTab$Type; type j field_41047 + f Lnet/minecraft/resources/ResourceLocation; backgroundTexture k field_41048 + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; alignedRight a method_47315 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/CreativeModeTab$Builder; backgroundTexture a method_47319 + p 1 backgroundTexture + m (Lnet/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator;)Lnet/minecraft/world/item/CreativeModeTab$Builder; displayItems a method_47317 + p 1 displayItemsGenerator + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_47316 a method_47316 + m (Lnet/minecraft/world/item/CreativeModeTab$Type;)Lnet/minecraft/world/item/CreativeModeTab$Builder; type a method_47318 + p 1 type + m (Ljava/util/function/Supplier;)Lnet/minecraft/world/item/CreativeModeTab$Builder; icon a method_47320 + p 1 icon + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/item/CreativeModeTab$Builder; title a method_47321 + p 1 title + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; hideTitle b method_47322 + m ()Lnet/minecraft/world/item/CreativeModeTab$Builder; noScrollBar c method_47323 + m ()Lnet/minecraft/world/item/CreativeModeTab; build d method_47324 + m ()Lnet/minecraft/world/item/ItemStack; method_47325 e method_47325 + m (Lnet/minecraft/world/item/CreativeModeTab$Row;I)V + p 1 row + p 2 column + m ()V +c net/minecraft/world/item/CreativeModeTab$DisplayItemsGenerator cta$b net/minecraft/class_1761$class_7914 +c net/minecraft/world/item/CreativeModeTab$ItemDisplayBuilder cta$c net/minecraft/class_1761$class_7703 + f Ljava/util/Collection; tabContents a field_40187 + f Ljava/util/Set; searchTabContents b field_40188 + f Lnet/minecraft/world/item/CreativeModeTab; tab c field_40189 + f Lnet/minecraft/world/flag/FeatureFlagSet; featureFlagSet d field_40190 + m (Lnet/minecraft/world/item/CreativeModeTab;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 tab + p 2 featureFlagSet +c net/minecraft/world/item/CreativeModeTab$ItemDisplayParameters cta$d net/minecraft/class_1761$class_8128 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures a comp_1251 + f Z hasPermissions b comp_1252 + f Lnet/minecraft/core/HolderLookup$Provider; holders c comp_1253 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures a comp_1251 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z needsUpdate a method_48932 + p 1 enabledFeatures + p 2 hasPermissions + p 3 holders + m ()Z hasPermissions b comp_1252 + m ()Lnet/minecraft/core/HolderLookup$Provider; holders c comp_1253 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/world/item/CreativeModeTab$Output cta$e net/minecraft/class_1761$class_7704 + m (Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_45419 a method_45419 + m (Lnet/minecraft/world/item/ItemStack;)V accept a method_45420 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V accept a method_45417 + p 1 stack + p 2 tabVisibility + m (Lnet/minecraft/world/level/ItemLike;)V accept a method_45421 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V accept a method_45422 + p 1 item + p 2 tabVisibility + m (Ljava/util/Collection;)V acceptAll a method_45423 + p 1 stacks + m (Ljava/util/Collection;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V acceptAll a method_45424 + p 1 stacks + p 2 tabVisibility +c net/minecraft/world/item/CreativeModeTab$Row cta$f net/minecraft/class_1761$class_7915 + f Lnet/minecraft/world/item/CreativeModeTab$Row; TOP a field_41049 + f Lnet/minecraft/world/item/CreativeModeTab$Row; BOTTOM b field_41050 + f [Lnet/minecraft/world/item/CreativeModeTab$Row; $VALUES c field_41051 + m ()[Lnet/minecraft/world/item/CreativeModeTab$Row; $values a method_47326 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTab$TabVisibility cta$g net/minecraft/class_1761$class_7705 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; PARENT_AND_SEARCH_TABS a field_40191 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; PARENT_TAB_ONLY b field_40192 + f Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; SEARCH_TAB_ONLY c field_40193 + f [Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; $VALUES d field_40194 + m ()[Lnet/minecraft/world/item/CreativeModeTab$TabVisibility; $values a method_45425 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTab$Type cta$h net/minecraft/class_1761$class_7916 + f Lnet/minecraft/world/item/CreativeModeTab$Type; CATEGORY a field_41052 + f Lnet/minecraft/world/item/CreativeModeTab$Type; INVENTORY b field_41053 + f Lnet/minecraft/world/item/CreativeModeTab$Type; HOTBAR c field_41054 + f Lnet/minecraft/world/item/CreativeModeTab$Type; SEARCH d field_41055 + f [Lnet/minecraft/world/item/CreativeModeTab$Type; $VALUES e field_41056 + m ()[Lnet/minecraft/world/item/CreativeModeTab$Type; $values a method_47327 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/CreativeModeTabs ctb net/minecraft/class_7706 + f Lnet/minecraft/resources/ResourceLocation; INVENTORY_BACKGROUND a field_52022 + f Lnet/minecraft/resources/ResourceLocation; SEARCH_BACKGROUND b field_52023 + f Lnet/minecraft/resources/ResourceKey; BUILDING_BLOCKS c field_40195 + f Lnet/minecraft/resources/ResourceKey; COLORED_BLOCKS d field_41059 + f Lnet/minecraft/resources/ResourceKey; NATURAL_BLOCKS e field_40743 + f Lnet/minecraft/resources/ResourceKey; FUNCTIONAL_BLOCKS f field_40197 + f Lnet/minecraft/resources/ResourceKey; REDSTONE_BLOCKS g field_40198 + f Lnet/minecraft/resources/ResourceKey; HOTBAR h field_40199 + f Lnet/minecraft/resources/ResourceKey; SEARCH i field_40200 + f Lnet/minecraft/resources/ResourceKey; TOOLS_AND_UTILITIES j field_41060 + f Lnet/minecraft/resources/ResourceKey; COMBAT k field_40202 + f Lnet/minecraft/resources/ResourceKey; FOOD_AND_DRINKS l field_41061 + f Lnet/minecraft/resources/ResourceKey; INGREDIENTS m field_41062 + f Lnet/minecraft/resources/ResourceKey; SPAWN_EGGS n field_40205 + f Lnet/minecraft/resources/ResourceKey; OP_BLOCKS o field_41063 + f Lnet/minecraft/resources/ResourceKey; INVENTORY p field_40206 + f Ljava/util/Comparator; PAINTING_COMPARATOR q field_42465 + f Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters; CACHED_PARAMETERS r field_42466 + m ()V validate a method_47334 + m (Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/core/Holder$Reference;)V method_48935 a method_48935 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/core/Holder$Reference;)Z method_58650 a method_58650 + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z tryRebuildTabContents a method_47330 + p 0 enabledFeatures + p 1 hasPermissions + p 2 registries + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;)V buildAllTabContents a method_47337 + p 0 parameters + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51311 a method_51311 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab;)V method_47331 a method_47331 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51312 a method_51312 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateSuspiciousStews a method_47332 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48934 a method_48934 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/core/HolderLookup$RegistryLookup;Ljava/util/function/Predicate;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generatePresetPaintings a method_48937 + p 0 output + p 1 registries + p 2 paintingVariants + p 3 predicate + p 4 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51313 a method_51313 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateEnchantmentBookTypesOnlyMaxLevel a method_45428 + p 0 output + p 1 enchantments + p 2 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/Item;Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateInstrumentTypes a method_45426 + p 0 output + p 1 instruments + p 2 item + p 3 instrument + p 4 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/flag/FeatureFlagSet;)V generatePotionEffectTypes a method_45427 + p 0 output + p 1 potions + p 2 item + p 3 tabVisibility + p 4 requiredFeatures + m (Lnet/minecraft/world/item/CreativeModeTab;)Z method_47333 a method_47333 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/core/HolderSet$Named;)V method_48939 a method_48939 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/world/item/ItemStack; method_48940 a method_48940 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; method_48941 a method_48941 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_51317 + p 0 name + m (Lnet/minecraft/core/Holder$Reference;)Ljava/util/stream/Stream; method_59969 a method_59969 + m (Lnet/minecraft/core/Holder$Reference;I)Lnet/minecraft/world/item/ItemStack; method_59970 a method_59970 + m (Lnet/minecraft/core/Holder;)Z method_51314 a method_51314 + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/item/CreativeModeTab; bootstrap a method_51315 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51316 a method_51316 + m (Lnet/minecraft/nbt/CompoundTag;)V method_58091 a method_58091 + m ()Lnet/minecraft/world/item/CreativeModeTab; getDefaultTab b method_47328 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51318 b method_51318 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab;)V method_47338 b method_47338 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51319 b method_51319 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateOminousVials b method_58652 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48947 b method_48947 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51324 b method_51324 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateEnchantmentBookTypesAllLevels b method_45430 + p 0 output + p 1 enchantments + p 2 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab;)Z method_47340 b method_47340 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/world/item/ItemStack; method_59972 b method_59972 + m (Lnet/minecraft/core/Holder;)Z method_51320 b method_51320 + m ()Ljava/util/List; tabs c method_47335 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51321 c method_51321 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51322 c method_51322 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;)V generateFireworksAllDurations c method_47339 + p 0 output + p 1 tabVisibility + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48952 c method_48952 + m ()Ljava/util/List; allTabs d method_47341 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51323 d method_51323 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/core/HolderLookup$RegistryLookup;)V method_51326 d method_51326 + m (Lnet/minecraft/world/item/CreativeModeTab$Output;Lnet/minecraft/world/item/CreativeModeTab$TabVisibility;Lnet/minecraft/world/item/ItemStack;)V method_48954 d method_48954 + m ()Lnet/minecraft/world/item/CreativeModeTab; searchTab e method_47344 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51325 e method_51325 + m ()Ljava/util/stream/Stream; streamAllTabs f method_51327 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51328 f method_51328 + m ()Lnet/minecraft/world/item/ItemStack; method_51329 g method_51329 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51330 g method_51330 + m ()Lnet/minecraft/world/item/ItemStack; method_51331 h method_51331 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51332 h method_51332 + m ()Lnet/minecraft/world/item/ItemStack; method_51333 i method_51333 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51334 i method_51334 + m ()Lnet/minecraft/world/item/ItemStack; method_51335 j method_51335 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51336 j method_51336 + m ()Lnet/minecraft/world/item/ItemStack; method_51337 k method_51337 + m (Lnet/minecraft/world/item/CreativeModeTab$ItemDisplayParameters;Lnet/minecraft/world/item/CreativeModeTab$Output;)V method_51338 k method_51338 + m ()Lnet/minecraft/world/item/ItemStack; method_51339 l method_51339 + m ()Lnet/minecraft/world/item/ItemStack; method_51340 m method_51340 + m ()Lnet/minecraft/world/item/ItemStack; method_51341 n method_51341 + m ()Lnet/minecraft/world/item/ItemStack; method_51342 o method_51342 + m ()Lnet/minecraft/world/item/ItemStack; method_51343 p method_51343 + m ()Lnet/minecraft/world/item/ItemStack; method_51344 q method_51344 + m ()Lnet/minecraft/world/item/ItemStack; method_51345 r method_51345 + m ()Lnet/minecraft/world/item/ItemStack; method_51346 s method_51346 + m ()Lnet/minecraft/world/item/ItemStack; method_51347 t method_51347 + m ()V + m ()V +c net/minecraft/world/item/CrossbowItem ctc net/minecraft/class_1764 + f I DEFAULT_RANGE a field_30863 + f F MOB_ARROW_POWER b field_49258 + f F MAX_CHARGE_DURATION k field_30866 + f Z startSoundPlayed l field_7937 + c Set to {@code true} when the crossbow is 20% charged. + f Z midLoadSoundPlayed m field_7936 + c Set to {@code true} when the crossbow is 50% charged. + f F START_SOUND_PERCENT n field_30867 + f F MID_SOUND_PERCENT o field_30868 + f F ARROW_POWER p field_30869 + f F FIREWORK_POWER q field_30870 + f Lnet/minecraft/world/item/CrossbowItem$ChargingSounds; DEFAULT_SOUNDS r field_51626 + m (ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)F getPowerForTime a method_7770 + p 0 timeLeft + p 1 stack + p 2 shooter + m (Lnet/minecraft/util/RandomSource;I)F getShotPitch a method_57342 + p 0 random + p 1 index + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)Z tryLoadProjectiles a method_7767 + p 0 shooter + p 1 crossbowStack + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;F)Lorg/joml/Vector3f; getProjectileShotVector a method_57343 + p 0 shooter + p 1 distance + p 2 angle + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)F getShootingPower a method_20309 + p 0 projectile + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;FFLnet/minecraft/world/entity/LivingEntity;)V performShooting a method_7777 + p 1 level + p 2 shooter + p 3 hand + p 4 weapon + p 5 velocity + p 6 inaccuracy + p 7 target + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59973 a method_59973 + m (ZLnet/minecraft/util/RandomSource;)F getRandomShotPitch a method_7784 + p 0 isHighPitched + p 1 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)I getChargeDuration b method_7775 + p 0 stack + p 1 shooter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59974 b method_59974 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;)V method_59975 c method_59975 + m (Lnet/minecraft/world/item/ItemStack;)Z isCharged i method_7781 + p 0 crossbowStack + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/CrossbowItem$ChargingSounds; getChargingSounds k method_59976 + p 1 stack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/CrossbowItem$ChargingSounds ctc$a net/minecraft/class_1764$class_9693 + f Lcom/mojang/serialization/Codec; CODEC a field_51627 + f Ljava/util/Optional; start b comp_2673 + f Ljava/util/Optional; mid c comp_2674 + f Ljava/util/Optional; end d comp_2675 + m ()Ljava/util/Optional; start a comp_2673 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59977 a method_59977 + m ()Ljava/util/Optional; mid b comp_2674 + m ()Ljava/util/Optional; end c comp_2675 + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/DebugStickItem ctd net/minecraft/class_1763 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/item/ItemStack;)Z handleInteraction a method_7759 + p 1 player + p 2 stateClicked + p 3 accessor + p 4 pos + p 5 shouldCycleState + p 6 debugStack + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)V message a method_7762 + p 0 player + p 1 messageComponent + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/String; getNameHelper a method_7761 + p 0 state + p 1 property + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Z)Lnet/minecraft/world/level/block/state/BlockState; cycleState a method_7758 + p 0 state + p 1 property + p 2 backwards + m (Ljava/lang/Iterable;Ljava/lang/Object;Z)Ljava/lang/Object; getRelative a method_7760 + p 0 allowedValues + p 1 currentValue + p 2 backwards + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/DiggerItem cte net/minecraft/class_1766 + m (Lnet/minecraft/world/item/Tier;FF)Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes a method_57346 + p 0 tier + p 1 attackDamage + p 2 attackSpeed + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 blocks + p 3 properties +c net/minecraft/world/item/DiscFragmentItem ctf net/minecraft/class_7409 + m ()Lnet/minecraft/network/chat/MutableComponent; getDisplayName c method_43408 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/DispensibleContainerItem ctg net/minecraft/class_5633 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V checkExtraContent a method_7728 + p 1 player + p 2 level + p 3 containerStack + p 4 pos + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/BlockHitResult;)Z emptyContents a method_7731 + p 1 player + p 2 level + p 3 pos + p 4 result +c net/minecraft/world/item/DoubleHighBlockItem cth net/minecraft/class_1765 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/DyeColor cti net/minecraft/class_1767 + f [Lnet/minecraft/world/item/DyeColor; $VALUES A field_7953 + f Lnet/minecraft/world/item/DyeColor; WHITE a field_7952 + f Lnet/minecraft/world/item/DyeColor; ORANGE b field_7946 + f Lnet/minecraft/world/item/DyeColor; MAGENTA c field_7958 + f Lnet/minecraft/world/item/DyeColor; LIGHT_BLUE d field_7951 + f Lnet/minecraft/world/item/DyeColor; YELLOW e field_7947 + f Lnet/minecraft/world/item/DyeColor; LIME f field_7961 + f Lnet/minecraft/world/item/DyeColor; PINK g field_7954 + f Lnet/minecraft/world/item/DyeColor; GRAY h field_7944 + f Lnet/minecraft/world/item/DyeColor; LIGHT_GRAY i field_7967 + f Lnet/minecraft/world/item/DyeColor; CYAN j field_7955 + f Lnet/minecraft/world/item/DyeColor; PURPLE k field_7945 + f Lnet/minecraft/world/item/DyeColor; BLUE l field_7966 + f Lnet/minecraft/world/item/DyeColor; BROWN m field_7957 + f Lnet/minecraft/world/item/DyeColor; GREEN n field_7942 + f Lnet/minecraft/world/item/DyeColor; RED o field_7964 + f Lnet/minecraft/world/item/DyeColor; BLACK p field_7963 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC q field_41600 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC r field_49259 + f Ljava/util/function/IntFunction; BY_ID s field_7959 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap; BY_FIREWORK_COLOR t field_7950 + f I id u field_7965 + f Ljava/lang/String; name v field_7948 + f Lnet/minecraft/world/level/material/MapColor; mapColor w field_7956 + f I textureDiffuseColor x field_7943 + f I fireworkColor y field_7960 + f I textColor z field_16537 + m ()I getId a method_7789 + m (I)Lnet/minecraft/world/item/DyeColor; byId a method_7791 + p 0 colorId + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; method_7797 a method_7797 + m (Ljava/lang/String;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeColor; byName a method_7793 + p 0 translationKey + p 1 fallback + m ()Ljava/lang/String; getName b method_7792 + m (I)Lnet/minecraft/world/item/DyeColor; byFireworkColor b method_7786 + p 0 fireworkColor + m (Lnet/minecraft/world/item/DyeColor;)Ljava/lang/Integer; method_7795 b method_7795 + m ()I getTextureDiffuseColor d method_7787 + m ()Lnet/minecraft/world/level/material/MapColor; getMapColor e method_7794 + m ()I getFireworkColor f method_7790 + m ()I getTextColor g method_16357 + m ()[Lnet/minecraft/world/item/DyeColor; $values h method_36676 + m (Ljava/lang/String;IILjava/lang/String;ILnet/minecraft/world/level/material/MapColor;II)V + p 3 id + p 4 name + p 5 textureDefuseColor + p 6 mapColor + p 7 fireworkColor + p 8 textColor + m ()V +c net/minecraft/world/item/DyeItem ctj net/minecraft/class_1769 + f Ljava/util/Map; ITEM_BY_COLOR a field_7968 + f Lnet/minecraft/world/item/DyeColor; dyeColor b field_7969 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/DyeItem; byColor a method_7803 + p 0 color + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49799 a method_49799 + m ()Lnet/minecraft/world/item/DyeColor; getDyeColor c method_7802 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/item/Item$Properties;)V + p 1 dyeColor + p 2 properties + m ()V +c net/minecraft/world/item/EggItem ctk net/minecraft/class_1771 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EitherHolder ctl net/minecraft/class_9791 + f Ljava/util/Optional; holder a comp_2831 + f Lnet/minecraft/resources/ResourceKey; key b comp_2832 + m ()Lcom/mojang/datafixers/util/Either; asEither a method_60734 + m (Lnet/minecraft/resources/ResourceKey;)Lcom/mojang/serialization/DataResult; method_60735 a method_60735 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; codec a method_60736 + p 0 registryKey + p 1 codec + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; streamCodec a method_60737 + p 0 registryKey + p 1 streamCodec + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/EitherHolder; fromEither a method_60738 + p 0 either + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/Optional; unwrap a method_60739 + p 1 registries + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; unwrap a method_60740 + p 1 registry + m ()Ljava/util/Optional; holder b comp_2831 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/Optional; method_60741 b method_60741 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_60742 b method_60742 + m ()Lnet/minecraft/resources/ResourceKey; key c comp_2832 + m ()Lcom/mojang/datafixers/util/Either; method_60743 d method_60743 + m ()Ljava/lang/String; method_60744 e method_60744 + m (Lnet/minecraft/core/Holder;)V + p 1 holder + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 key + m (Ljava/util/Optional;Lnet/minecraft/resources/ResourceKey;)V +c net/minecraft/world/item/ElytraItem ctm net/minecraft/class_1770 + m (Lnet/minecraft/world/item/ItemStack;)Z isFlyEnabled i method_7804 + p 0 elytraStack + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EmptyMapItem ctn net/minecraft/class_1773 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnchantedBookItem cto net/minecraft/class_1772 + m (Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)Lnet/minecraft/world/item/ItemStack; createForEnchantment a method_7808 + c Returns the ItemStack of an enchanted version of this item. + p 0 instance + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EndCrystalItem ctp net/minecraft/class_1774 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnderEyeItem ctq net/minecraft/class_1777 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/EnderpearlItem ctr net/minecraft/class_1776 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/Equipable cts net/minecraft/class_5151 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; swapWithEquipmentSlot a method_48576 + p 1 item + p 2 level + p 3 player + p 4 hand + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/Equipable; get c_ method_48957 + p 0 stack + m ()Lnet/minecraft/world/entity/EquipmentSlot; getEquipmentSlot m method_7685 + m ()Lnet/minecraft/core/Holder; getEquipSound n method_31570 +c net/minecraft/world/item/ExperienceBottleItem ctt net/minecraft/class_1779 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FireChargeItem ctu net/minecraft/class_1778 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playSound a method_18453 + p 1 level + p 2 pos + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58655 a method_58655 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FireworkRocketItem ctv net/minecraft/class_1781 + f [B CRAFTABLE_DURATIONS a field_41064 + f D ROCKET_PLACEMENT_OFFSET b field_30884 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/Vec3; getEntityPokingOutOfBlockPos a method_58656 + p 0 source + p 1 direction + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/FireworkStarItem ctw net/minecraft/class_1780 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/FishingRodItem ctx net/minecraft/class_1787 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FlintAndSteelItem cty net/minecraft/class_1786 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/FoodOnAStickItem ctz net/minecraft/class_1758 + f Lnet/minecraft/world/entity/EntityType; canInteractWith a field_23253 + f I consumeItemDamage b field_23743 + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/entity/EntityType;I)V + p 1 properties + p 2 canInteractWith + p 3 consumeItemDamage +c net/minecraft/world/item/GameMasterBlockItem cua net/minecraft/class_1788 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/GlowInkSacItem cub net/minecraft/class_8232 + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49800 a method_49800 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/HangingEntityItem cuc net/minecraft/class_1790 + f Lnet/minecraft/network/chat/Component; TOOLTIP_RANDOM_VARIANT a field_42467 + f Lnet/minecraft/world/entity/EntityType; type b field_7999 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)Z mayPlace a method_7834 + p 1 player + p 2 direction + p 3 hangingEntityStack + p 4 pos + m (Ljava/util/List;)V method_48958 a method_48958 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V method_48959 a method_48959 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V method_48960 a method_48960 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/item/HangingSignItem cud net/minecraft/class_7707 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/HoeItem cue net/minecraft/class_1794 + f Ljava/util/Map; TILLABLES a field_8023 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/function/Consumer; changeIntoState a method_36988 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/context/UseOnContext;)V method_36984 a method_36984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/ItemLike;)Ljava/util/function/Consumer; changeIntoStateAndDropItem a method_36985 + p 0 state + p 1 itemToDrop + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/context/UseOnContext;)V method_36986 a method_36986 + m (Lnet/minecraft/world/item/context/UseOnContext;)Z onlyIfAirAbove b method_36987 + p 0 context + m (Lnet/minecraft/world/item/context/UseOnContext;)Z method_36989 c method_36989 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/HoneyBottleItem cuf net/minecraft/class_4480 + f I DRINK_DURATION a field_30885 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/HoneycombItem cug net/minecraft/class_5953 + f Ljava/util/function/Supplier; WAXABLES a field_29560 + f Ljava/util/function/Supplier; WAX_OFF_BY_BLOCK b field_29561 + m (Lnet/minecraft/world/item/context/UseOnContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/InteractionResult; method_34719 a method_34719 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getWaxed a method_34720 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34721 a method_34721 + m ()Lcom/google/common/collect/BiMap; method_34722 h method_34722 + m ()Lcom/google/common/collect/BiMap; method_34723 k method_34723 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/InkSacItem cuh net/minecraft/class_8233 + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49802 a method_49802 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/Instrument cui net/minecraft/class_7444 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49260 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49261 + f Lcom/mojang/serialization/Codec; CODEC c field_39122 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49262 + f Lnet/minecraft/core/Holder; soundEvent e comp_772 + f I useDuration f comp_773 + f F range g comp_774 + m ()Lnet/minecraft/core/Holder; soundEvent a comp_772 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43709 a method_43709 + m ()I useDuration b comp_773 + m ()F range c comp_774 + m (Lnet/minecraft/core/Holder;IF)V + m ()V +c net/minecraft/world/item/InstrumentItem cuj net/minecraft/class_7430 + f Lnet/minecraft/tags/TagKey; instruments a field_39123 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; create a method_43558 + p 0 item + p 1 instrument + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/tags/TagKey;Lnet/minecraft/util/RandomSource;)V setRandom a method_43562 + p 0 stack + p 1 instrumentTag + p 2 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;)V method_45433 a method_45433 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/Instrument;)V play a method_43563 + p 0 level + p 1 player + p 2 instrument + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_45432 a method_45432 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getInstrument i method_43711 + p 1 stack + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/tags/TagKey;)V + p 1 properties + p 2 instruments +c net/minecraft/world/item/Instruments cuk net/minecraft/class_7445 + f I GOAT_HORN_RANGE_BLOCKS a field_39124 + f I GOAT_HORN_DURATION b field_39125 + f Lnet/minecraft/resources/ResourceKey; PONDER_GOAT_HORN c field_39126 + f Lnet/minecraft/resources/ResourceKey; SING_GOAT_HORN d field_39127 + f Lnet/minecraft/resources/ResourceKey; SEEK_GOAT_HORN e field_39128 + f Lnet/minecraft/resources/ResourceKey; FEEL_GOAT_HORN f field_39129 + f Lnet/minecraft/resources/ResourceKey; ADMIRE_GOAT_HORN g field_39130 + f Lnet/minecraft/resources/ResourceKey; CALL_GOAT_HORN h field_39131 + f Lnet/minecraft/resources/ResourceKey; YEARN_GOAT_HORN i field_39132 + f Lnet/minecraft/resources/ResourceKey; DREAM_GOAT_HORN j field_39133 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43714 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/item/Instrument; bootstrap a method_43713 + p 0 registry + m ()V +c net/minecraft/world/item/Item cul net/minecraft/class_1792 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItem} injected by mod fabric-item-api-v1

+ f Lorg/slf4j/Logger; LOGGER a field_27017 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36401 + f Lnet/minecraft/core/component/DataComponentMap; components c field_49263 + f Ljava/util/Map; BY_BLOCK d field_8003 + f Lnet/minecraft/resources/ResourceLocation; BASE_ATTACK_DAMAGE_ID e field_8006 + f Lnet/minecraft/resources/ResourceLocation; BASE_ATTACK_SPEED_ID f field_8001 + f I DEFAULT_MAX_STACK_SIZE g field_30887 + f I ABSOLUTE_MAX_STACK_SIZE h field_49998 + f I MAX_BAR_WIDTH i field_30889 + f Lnet/minecraft/world/item/Item; craftingRemainingItem j field_8008 + f Ljava/lang/String; descriptionId k field_8014 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures l field_40209 + m ()Ljava/lang/String; getDescriptionId a method_7876 + c Returns the unlocalized name of this item. + m (Lnet/minecraft/world/entity/Entity;FLnet/minecraft/world/damagesource/DamageSource;)F getAttackDamageBonus a method_58403 + p 1 target + p 2 damage + p 3 damageSource + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onDestroyed a method_33261 + p 1 itemEntity + m (Lnet/minecraft/world/item/Item;)I getId a method_7880 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)Z isEnchantable a method_7870 + c Checks isDamagable and if it cannot be stacked + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)I getUseDuration a method_7881 + p 1 stack + p 2 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)Z hurtEnemy a method_7873 + c Current implementations of this method in child classes do not use the entry argument beside ev. They just raise the damage on the stack. + p 1 stack + p 2 target + p 3 attacker + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactLivingEntity a method_7847 + c Try interacting with given entity. Return {@code InteractionResult.PASS} if nothing should happen. + p 1 stack + p 2 player + p 3 interactionTarget + p 4 usedHand + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;)Z overrideStackedOnOther a method_31565 + p 1 stack + p 2 slot + p 3 action + p 4 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/List;Lnet/minecraft/world/item/TooltipFlag;)V appendHoverText a method_7851 + p 1 stack + p 2 context + p 3 tooltipComponents + p 4 tooltipFlag + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isValidRepairItem a method_7878 + c Return whether this item is repairable in an anvil. + p 1 stack + p 2 repairCandidate + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/SlotAccess;)Z overrideOtherStackedOnMe a method_31566 + p 1 stack + p 2 other + p 3 slot + p 4 action + p 5 player + p 6 access + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)V onCraftedPostProcess a method_7843 + p 1 stack + p 2 level + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;IZ)V inventoryTick a method_7888 + c Called each tick as long the item is in a player's inventory. Used by maps to check if it's in a player's hand and update its contents. + p 1 stack + p 2 level + p 3 entity + p 4 slotId + p 5 isSelected + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; finishUsingItem a method_7861 + c Called when the player finishes using this Item (E.g. finishes eating.). Not called when the player stops using the Item before the action is complete. + p 1 stack + p 2 level + p 3 livingEntity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V releaseUsing a method_7840 + c Called when the player stops using an Item (stops holding the right mouse button). + p 1 stack + p 2 level + p 3 livingEntity + p 4 timeCharged + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z mineBlock a method_7879 + c Called when a {@link net.minecraft.world.level.block.Block} is destroyed using this Item. Return {@code true} to trigger the "Use Item" statistic. + p 1 stack + p 2 level + p 3 state + p 4 pos + p 5 miningEntity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_58404 + p 1 stack + p 2 state + m (Lnet/minecraft/world/item/context/UseOnContext;)Lnet/minecraft/world/InteractionResult; useOn a method_7884 + c Called when this item is used when targeting a Block + p 1 context + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;I)V onUseTick a method_7852 + c Called as the item is being used by an entity. + p 1 level + p 2 livingEntity + p 3 stack + p 4 remainingUseDuration + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; use a method_7836 + c Called to trigger the item's "innate" right click behavior. To handle when this item is used on a Block, see {@link net.minecraft.world.item.Item#useOn(net.minecraft.world.item.context.UseOnContext)}. + p 1 level + p 2 player + p 3 usedHand + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/ClipContext$Fluid;)Lnet/minecraft/world/phys/BlockHitResult; getPlayerPOVHitResult a method_7872 + p 0 level + p 1 player + p 2 fluidMode + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; byBlock a method_7867 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z canAttackBlock a method_7885 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()Z isComplex ao_ method_16698 + c Returns {@code true} if this is a complex item. + m ()Lnet/minecraft/sounds/SoundEvent; getDrinkingSound ap_ method_21831 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound aq_ method_21830 + m ()Z canFitInsideContainerItems ar_ method_31568 + m (I)Lnet/minecraft/world/item/Item; byId b method_7875 + p 0 id + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/UseAnim; getUseAnimation b method_7853 + c Returns the action that specifies what animation to play when the item is being used. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/LivingEntity;)V postHurtEnemy b method_59978 + p 1 stack + p 2 target + p 3 attacker + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;)V onCraftedBy b method_54465 + c Called when item is crafted/smelted. Used only by maps so far. + p 1 stack + p 2 level + p 3 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectToolForDrops b method_58405 + p 1 stack + p 2 state + m (Lnet/minecraft/world/item/ItemStack;)Z isBarVisible d method_31567 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isFoil d_ method_7886 + c Returns {@code true} if this item has an enchantment glint. By default, this returns {@code stack.isEnchanted()}, but other items can override it (for instance, written books always return true).\n\nNote that if you override this method, you generally want to also call the super version (on {@link Item}) to get the glint for enchanted items. Of course, that is unnecessary if the overwritten version always returns true. + p 1 stack + m ()Lnet/minecraft/sounds/SoundEvent; getBreakingSound e method_57336 + m (Lnet/minecraft/world/item/ItemStack;)I getBarWidth e method_31569 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)I getBarColor f method_31571 + p 1 stack + m ()I getEnchantmentValue g method_7837 + c Return the enchantability factor of the item, most of the time is based on material. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getTooltipImage g method_32346 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; getDescriptionId h method_7866 + c Returns the unlocalized name of this item. This version accepts an ItemStack so different stacks can have different names based on their damage or NBT. + p 1 stack + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; getDefaultAttributeModifiers j method_7844 + m (Lnet/minecraft/world/item/ItemStack;)Z useOnRelease l method_7838 + c If this stack's item is a crossbow + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)V verifyComponentsAfterLoad m method_7860 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/network/chat/Component; getName n method_7864 + p 1 stack + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder o method_40131 + m ()Lnet/minecraft/core/component/DataComponentMap; components p method_57347 + m ()I getDefaultMaxStackSize q method_7882 + m ()Lnet/minecraft/network/chat/Component; getDescription s method_7848 + m ()Ljava/lang/String; getOrCreateDescriptionId t method_7869 + m ()Lnet/minecraft/world/item/Item; getCraftingRemainingItem u method_7858 + m ()Z hasCraftingRemainingItem v method_7857 + c True if this Item has a container item (a.k.a. crafting result) + m ()Lnet/minecraft/world/item/ItemStack; getDefaultInstance w method_7854 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/Item$Properties cul$a net/minecraft/class_1792$class_1793 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItem.Settings} injected by mod fabric-item-api-v1

+ f Lcom/google/common/collect/Interner; COMPONENT_INTERNER a field_49264 + f Lnet/minecraft/core/component/DataComponentMap$Builder; components b field_49265 + f Lnet/minecraft/world/item/Item; craftingRemainingItem c field_8018 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures d field_40210 + m ()Lnet/minecraft/world/item/Item$Properties; fireResistant a method_24359 + m (I)Lnet/minecraft/world/item/Item$Properties; stacksTo a method_7889 + p 1 maxStackSize + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/item/Item$Properties; jukeboxPlayable a method_60745 + p 1 song + m (Lnet/minecraft/world/food/FoodProperties;)Lnet/minecraft/world/item/Item$Properties; food a method_19265 + p 1 food + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item$Properties; craftRemainder a method_7896 + p 1 craftingRemainingItem + m (Lnet/minecraft/world/item/Rarity;)Lnet/minecraft/world/item/Item$Properties; rarity a method_7894 + p 1 rarity + m (Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/Item$Properties; attributes a method_57348 + p 1 attributes + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/Item$Properties; component a method_57349 + p 1 component + p 2 value + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/Item$Properties; requiredFeatures a method_45434 + p 1 requiredFeatures + m ()Lnet/minecraft/core/component/DataComponentMap; buildAndValidateComponents b method_58406 + m (I)Lnet/minecraft/world/item/Item$Properties; durability b method_7895 + p 1 maxDamage + m ()Lnet/minecraft/core/component/DataComponentMap; buildComponents c method_57350 + m ()V + m ()V +c net/minecraft/world/item/Item$TooltipContext cul$b net/minecraft/class_1792$class_9635 + f Lnet/minecraft/world/item/Item$TooltipContext; EMPTY a field_51353 + m ()Lnet/minecraft/core/HolderLookup$Provider; registries a method_59527 + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/item/Item$TooltipContext; of a method_59528 + p 0 level + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; mapData a method_59529 + p 1 mapId + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/Item$TooltipContext; of a method_59530 + p 0 registries + m ()F tickRate b method_59531 + m ()V +c net/minecraft/world/item/Item$TooltipContext$1 cul$b$1 net/minecraft/class_1792$class_9635$1 + m ()V +c net/minecraft/world/item/Item$TooltipContext$2 cul$b$2 net/minecraft/class_1792$class_9635$2 + f Lnet/minecraft/world/level/Level; val$level b field_51354 + m (Lnet/minecraft/world/level/Level;)V +c net/minecraft/world/item/Item$TooltipContext$3 cul$b$3 net/minecraft/class_1792$class_9635$3 + f Lnet/minecraft/core/HolderLookup$Provider; val$registries b field_51355 + m (Lnet/minecraft/core/HolderLookup$Provider;)V +c net/minecraft/world/item/ItemCooldowns cum net/minecraft/class_1796 + f Ljava/util/Map; cooldowns a field_8024 + f I tickCount b field_8025 + m ()V tick a method_7903 + m (Lnet/minecraft/world/item/Item;)Z isOnCooldown a method_7904 + p 1 item + m (Lnet/minecraft/world/item/Item;F)F getCooldownPercent a method_7905 + p 1 item + p 2 partialTicks + m (Lnet/minecraft/world/item/Item;I)V addCooldown a method_7906 + p 1 item + p 2 ticks + m (Lnet/minecraft/world/item/Item;)V removeCooldown b method_7900 + p 1 item + m (Lnet/minecraft/world/item/Item;I)V onCooldownStarted b method_7902 + p 1 item + p 2 ticks + m (Lnet/minecraft/world/item/Item;)V onCooldownEnded c method_7901 + p 1 item + m ()V +c net/minecraft/world/item/ItemCooldowns$CooldownInstance cum$a net/minecraft/class_1796$class_1797 + f I startTime a field_8028 + f I endTime b field_8027 + m (II)V + p 1 startTime + p 2 endTime +c net/minecraft/world/item/ItemDisplayContext cun net/minecraft/class_811 + f Lnet/minecraft/world/item/ItemDisplayContext; NONE a field_4315 + f Lnet/minecraft/world/item/ItemDisplayContext; THIRD_PERSON_LEFT_HAND b field_4323 + f Lnet/minecraft/world/item/ItemDisplayContext; THIRD_PERSON_RIGHT_HAND c field_4320 + f Lnet/minecraft/world/item/ItemDisplayContext; FIRST_PERSON_LEFT_HAND d field_4321 + f Lnet/minecraft/world/item/ItemDisplayContext; FIRST_PERSON_RIGHT_HAND e field_4322 + f Lnet/minecraft/world/item/ItemDisplayContext; HEAD f field_4316 + f Lnet/minecraft/world/item/ItemDisplayContext; GUI g field_4317 + f Lnet/minecraft/world/item/ItemDisplayContext; GROUND h field_4318 + f Lnet/minecraft/world/item/ItemDisplayContext; FIXED i field_4319 + f Lcom/mojang/serialization/Codec; CODEC j field_42468 + f Ljava/util/function/IntFunction; BY_ID k field_42469 + f B id l field_42470 + f Ljava/lang/String; name m field_42471 + f [Lnet/minecraft/world/item/ItemDisplayContext; $VALUES n field_4314 + m ()B getId a method_48961 + m ()Z firstPerson b method_29998 + m ()[Lnet/minecraft/world/item/ItemDisplayContext; $values d method_36922 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/item/ItemFrameItem cuo net/minecraft/class_1795 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties +c net/minecraft/world/item/ItemNameBlockItem cup net/minecraft/class_1798 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/ItemStack cuq net/minecraft/class_1799 + c

Interface {@link net.fabricmc.fabric.api.item.v1.FabricItemStack} injected by mod fabric-item-api-v1

+ f Lcom/mojang/serialization/Codec; ITEM_NON_AIR_CODEC a field_47312 + f Lcom/mojang/serialization/Codec; CODEC b field_24671 + f Lcom/mojang/serialization/Codec; SINGLE_ITEM_CODEC c field_49747 + f Lcom/mojang/serialization/Codec; STRICT_CODEC d field_51397 + f Lcom/mojang/serialization/Codec; STRICT_SINGLE_ITEM_CODEC e field_51398 + f Lcom/mojang/serialization/Codec; OPTIONAL_CODEC f field_49266 + f Lcom/mojang/serialization/Codec; SIMPLE_ITEM_CODEC g field_49267 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC h field_49268 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48349 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_LIST_STREAM_CODEC j field_49269 + f Lnet/minecraft/network/codec/StreamCodec; LIST_STREAM_CODEC k field_48350 + f Lnet/minecraft/world/item/ItemStack; EMPTY l field_8037 + f Lorg/slf4j/Logger; LOGGER m field_8033 + f Lnet/minecraft/network/chat/Component; DISABLED_ITEM_TOOLTIP n field_40211 + f I count o field_8031 + f I popTime p field_8030 + f Lnet/minecraft/world/item/Item; item q field_8038 + f Lnet/minecraft/core/component/PatchedDataComponentMap; components r field_49270 + f Lnet/minecraft/world/entity/Entity; entityRepresentation s field_24093 + c The entity the item is attached to, like an Item Frame. + m ()Z isEnchanted A method_7942 + c True if the item has enchantment data + m ()Lnet/minecraft/world/item/enchantment/ItemEnchantments; getEnchantments B method_58657 + m ()Z isFramed C method_7961 + c Return whether this stack is on an item frame. + m ()Lnet/minecraft/world/entity/decoration/ItemFrame; getFrame D method_7945 + c Return the item frame this stack is on. Returns null if not on an item frame. + m ()Lnet/minecraft/world/entity/Entity; getEntityRepresentation E method_27319 + c For example, it'll return an {@code ItemFrameEntity} if it is in an itemframe. + m ()Lnet/minecraft/network/chat/Component; getDisplayName F method_7954 + c Get a ChatComponent for this Item's display name that shows this Item on hover + m ()I getPopTime G method_7965 + m ()I getCount H method_7947 + m ()Lnet/minecraft/sounds/SoundEvent; getDrinkingSound I method_21832 + m ()Lnet/minecraft/sounds/SoundEvent; getEatingSound J method_21833 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakingSound K method_57351 + m ()Ljava/lang/String; method_59690 L method_59690 + m ()Lcom/mojang/serialization/Codec; method_55066 M method_55066 + m ()Lcom/mojang/serialization/Codec; method_57352 N method_57352 + m ()Ljava/lang/String; method_55061 O method_55061 + m (I)Lnet/minecraft/world/item/ItemStack; split a method_7971 + c Splits off a stack of the given amount of this stack and reduces this stack by the amount. + p 1 amount + m (II)Ljava/lang/String; method_60502 a method_60502 + m (ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;Ljava/util/function/Consumer;)V hurtAndBreak a method_7956 + p 1 damage + p 2 level + p 3 player + p 4 onBreak + m (ILnet/minecraft/world/entity/LivingEntity;)V consume a method_57008 + p 1 amount + p 2 entity + m (ILnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V hurtAndBreak a method_7970 + p 1 amount + p 2 entity + p 3 slot + m (ILnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/world/item/ItemStack; hurtAndConvertOnBreak a method_60986 + p 1 amount + p 2 item + p 3 entity + p 4 slot + m (Lnet/minecraft/tags/TagKey;)Z is a method_31573 + p 1 tag + m (Lnet/minecraft/world/damagesource/DamageSource;)Z canBeHurtBy a method_58407 + p 1 damageSource + m (Lnet/minecraft/world/entity/Entity;)V setEntityRepresentation a method_27320 + p 1 entity + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEachModifier a method_57354 + p 1 equipmentSLot + p 2 action + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEachModifier a method_60617 + p 1 slotGroup + p 2 action + m (Lnet/minecraft/world/entity/LivingEntity;)I getUseDuration a method_7935 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/Item;)V method_56097 a method_56097 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)Z hurtEnemy a method_7979 + p 1 target + p 2 attacker + m (Lnet/minecraft/world/entity/item/ItemEntity;)V onDestroyed a method_33262 + p 1 itemEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactLivingEntity a method_7920 + p 1 player + p 2 entity + p 3 usedHand + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58092 a method_58092 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isItemEnabled a method_45435 + p 1 enabledFlags + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;)Z overrideStackedOnOther a method_31575 + p 1 slot + p 2 action + p 3 player + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/TooltipFlag;)Ljava/util/List; getTooltipLines a method_7950 + p 1 tooltipContext + p 2 player + p 3 tooltipFlag + m (Lnet/minecraft/world/item/Item;)Z is a method_31574 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;)I hashItemAndComponents a method_57355 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/Unit;)Lnet/minecraft/world/item/ItemStack; method_57383 a method_57383 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/inventory/ClickAction;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/SlotAccess;)Z overrideOtherStackedOnMe a method_31576 + p 1 stack + p 2 slot + p 3 action + p 4 player + p 5 access + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z matches a method_7973 + c Compares both {@code ItemStacks}, returns {@code true} if both {@code ItemStacks} are equal. + p 0 stack + p 1 other + m (Lnet/minecraft/world/item/context/UseOnContext;)Lnet/minecraft/world/InteractionResult; useOn a method_7981 + p 1 context + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/ItemStack; transmuteCopy a method_60503 + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/item/ItemStack; transmuteCopy a method_56701 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/Level;)V onCraftedBySystem a method_54466 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;IZ)V inventoryTick a method_7917 + c Called each tick as long the {@code ItemStack} in in player's inventory. Used to progress the pickup animation and update maps. + p 1 level + p 2 entity + p 3 inventorySlot + p 4 isCurrentItem + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; finishUsingItem a method_7910 + c Called when the item in use count reach 0, e.g. item food eaten. Return the new ItemStack. Args : world, entity + p 1 level + p 2 livingEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V releaseUsing a method_7930 + c Called when the player releases the use item button. + p 1 level + p 2 livingEntity + p 3 timeLeft + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;I)V onCraftedBy a method_7982 + p 1 level + p 2 player + p 3 amount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; use a method_7913 + c Called when the {@code ItemStack} is equipped and right-clicked. Replaces the {@code ItemStack} with the return value. + p 1 level + p 2 player + p 3 usedHand + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V mineBlock a method_7952 + c Called when a Block is destroyed using this ItemStack + p 1 level + p 2 state + p 3 pos + p 4 player + m (Lnet/minecraft/world/level/block/state/BlockState;)F getDestroySpeed a method_7924 + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z canPlaceOnBlockInAdventureMode a method_57357 + p 1 block + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; lenientOptionalFieldOf a method_56702 + p 0 fieldName + m (Ljava/util/List;)I hashStackList a method_57361 + p 0 list + m (Ljava/util/List;Ljava/util/List;)Z listMatches a method_57362 + p 0 list + p 1 other + m (Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; method_56703 a method_56703 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/player/Player;)V addAttributeTooltips a method_57363 + p 1 tooltipAdder + p 2 player + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V addModifierTooltip a method_57364 + p 1 tooltipAdder + p 2 player + p 3 attribute + p 4 modifier + m (Ljava/util/function/Predicate;)Z is a method_41407 + p 1 item + m (Lnet/minecraft/core/Holder;)Z is a method_41406 + p 1 item + m (Lnet/minecraft/core/Holder;I)V enchant a method_7978 + p 1 enchantment + p 2 level + m (Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57356 a method_57356 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/component/DataComponentPatch;)Lnet/minecraft/world/item/ItemStack; method_58093 a method_58093 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; save a method_57358 + p 1 levelRegistryAccess + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/item/ItemStack; parseOptional a method_57359 + p 0 lookupProvider + p 1 tag + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/Tag;)Ljava/util/Optional; parse a method_57360 + p 0 lookupProvider + p 1 tag + m (Lnet/minecraft/core/HolderSet;)Z is a method_53187 + p 1 item + m (Lnet/minecraft/core/component/DataComponentMap;)Lcom/mojang/serialization/DataResult; validateComponents a method_59691 + p 0 components + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyComponentsAndValidate a method_59692 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/function/Consumer;Lnet/minecraft/world/item/TooltipFlag;)V addToTooltip a method_57369 + p 1 component + p 2 context + p 3 tooltipAdder + p 4 tooltipFlag + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/lang/Object;Ljava/util/function/BiFunction;)Ljava/lang/Object; update a method_57367 + p 1 component + p 2 defaultValue + p 3 updateValue + p 4 updater + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/util/function/UnaryOperator;)Ljava/lang/Object; update a method_57368 + p 1 component + p 2 defaultValue + p 3 updater + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Consumer;Lnet/minecraft/world/entity/EquipmentSlotGroup;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_57370 a method_57370 + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_7966 a method_7966 + m (Lnet/minecraft/network/codec/StreamCodec;)Lnet/minecraft/network/codec/StreamCodec; validatedStreamCodec a method_59693 + p 0 codec + m ()Ljava/util/Optional; getTooltipImage b method_32347 + m (I)V setDamageValue b method_7974 + p 1 damage + m (ILnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/item/ItemStack; consumeAndReturn b method_60504 + p 1 amount + p 2 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/player/Player;)V postHurtEnemy b method_59979 + p 1 target + p 2 attacker + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57371 b method_57371 + m (Lnet/minecraft/world/item/ItemStack;)Lcom/mojang/serialization/DataResult; validateStrict b method_57372 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isSameItem b method_7984 + p 0 stack + p 1 other + m (Lnet/minecraft/world/level/ItemLike;I)Lnet/minecraft/world/item/ItemStack; transmuteCopyIgnoreEmpty b method_56704 + p 1 item + p 2 count + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)V onUseTick b method_7949 + c Called as the stack is being used by an entity. + p 1 level + p 2 livingEntity + p 3 count + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectToolForDrops b method_7951 + c Check whether the given Block can be harvested using this ItemStack. + p 1 state + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z canBreakBlockInAdventureMode b method_57373 + p 1 block + m (Ljava/lang/String;)V method_57377 b method_57377 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; method_57378 b method_57378 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/DataResult; method_57374 b method_57374 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; saveOptional b method_57375 + p 1 levelRegistryAccess + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/Tag;)Lnet/minecraft/nbt/Tag; save b method_57376 + p 1 levelRegistryAccess + p 2 outputTag + m (Lnet/minecraft/core/component/DataComponentMap;)V applyComponents b method_57365 + p 1 components + m (Lnet/minecraft/core/component/DataComponentPatch;)V applyComponents b method_57366 + p 1 components + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; set b method_57379 + p 1 component + p 2 value + m ()Lnet/minecraft/core/component/DataComponentMap; getPrototype c method_58658 + m (I)Lnet/minecraft/world/item/ItemStack; copyWithCount c method_46651 + p 1 count + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; method_56700 c method_56700 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z isSameItemSameComponents c method_31577 + p 0 stack + p 1 other + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; remove c method_57381 + p 1 component + m ()Lnet/minecraft/core/component/DataComponentPatch; getComponentsPatch d method_57380 + m (I)V setPopTime d method_7912 + p 1 popTime + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; method_57382 d method_57382 + m ()Z isEmpty e method_7960 + m (I)V setCount e method_7939 + p 1 count + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_57384 e method_57384 + m ()Lnet/minecraft/world/item/ItemStack; copyAndClear f method_51164 + m (I)V limitSize f method_58408 + p 1 maxSize + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentPatch; method_58094 f method_58094 + m ()Lnet/minecraft/world/item/Item; getItem g method_7909 + c Returns the object corresponding to the stack. + m (I)V grow g method_7933 + p 1 increment + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentPatch; method_57385 g method_57385 + m ()Lnet/minecraft/core/Holder; getItemHolder h method_41409 + m (I)V shrink h method_7934 + p 1 decrement + m ()Ljava/util/stream/Stream; getTags i method_40133 + m ()I getMaxStackSize j method_7914 + c Returns maximum size of the stack. + m ()Z isStackable k method_7946 + c Returns {@code true} if the {@code ItemStack} can hold 2 or more units of the item. + m ()Z isDamageableItem l method_7963 + c Returns {@code true} if this {@code ItemStack} is damageable. + m ()Z isDamaged m method_7986 + c Returns {@code true} when a damageable item is damaged. + m ()I getDamageValue n method_7919 + m ()I getMaxDamage o method_7936 + c Returns the max damage an item in the stack can take. + m ()Z isBarVisible p method_31578 + m ()I getBarWidth q method_31579 + m ()I getBarColor r method_31580 + m ()Lnet/minecraft/world/item/ItemStack; copy s method_7972 + c Returns a new stack with the same properties. + m ()Ljava/lang/String; getDescriptionId t method_7922 + m ()Lnet/minecraft/world/item/UseAnim; getUseAnimation u method_7976 + m ()Z useOnRelease v method_7967 + m ()Lnet/minecraft/network/chat/Component; getHoverName w method_7964 + m ()Z hasFoil x method_7958 + m ()Lnet/minecraft/world/item/Rarity; getRarity y method_7932 + m ()Z isEnchantable z method_7923 + c True if it is a tool and has no enchantments to begin with + m (Lnet/minecraft/world/level/ItemLike;)V + p 1 item + m (Lnet/minecraft/core/Holder;)V + p 1 tag + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPatch;)V + p 1 tag + p 2 count + p 3 components + m (Lnet/minecraft/core/Holder;I)V + p 1 item + p 2 count + m (Lnet/minecraft/world/level/ItemLike;I)V + p 1 item + p 2 count + m (Lnet/minecraft/world/level/ItemLike;ILnet/minecraft/core/component/PatchedDataComponentMap;)V + p 1 item + p 2 count + p 3 components + m (Ljava/lang/Void;)V + p 1 unused + m ()V +c net/minecraft/world/item/ItemStack$1 cuq$1 net/minecraft/class_1799$1 + f Lnet/minecraft/network/codec/StreamCodec; ITEM_STREAM_CODEC a field_48351 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_56099 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_56100 + m ()V + m ()V +c net/minecraft/world/item/ItemStack$2 cuq$2 net/minecraft/class_1799$2 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_57386 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_57387 + m ()V +c net/minecraft/world/item/ItemStack$3 cuq$3 net/minecraft/class_1799$3 + f Lnet/minecraft/network/codec/StreamCodec; val$codec a field_51399 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/ItemStack; decode a method_59694 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/ItemStack;)V encode a method_59695 + m (Lnet/minecraft/network/codec/StreamCodec;)V +c net/minecraft/world/item/ItemStack$4 cuq$4 net/minecraft/class_1799$4 + f [I $SwitchMap$net$minecraft$world$item$Rarity a field_8021 + m ()V +c net/minecraft/world/item/ItemStackLinkedSet cur net/minecraft/class_7708 + f Lit/unimi/dsi/fastutil/Hash$Strategy; TYPE_AND_TAG a field_40212 + m ()Ljava/util/Set; createTypeAndComponentsSet a method_47572 + m ()V + m ()V +c net/minecraft/world/item/ItemStackLinkedSet$1 cur$1 net/minecraft/class_7708$1 + m (Lnet/minecraft/world/item/ItemStack;)I hashCode a method_45436 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z equals a method_45437 + p 1 first + p 2 second + m ()V +c net/minecraft/world/item/ItemUtils cus net/minecraft/class_5328 + m (Lnet/minecraft/world/entity/item/ItemEntity;Ljava/lang/Iterable;)V onContainerDestroyed a method_33263 + p 0 container + p 1 contents + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; createFilledResult a method_30012 + p 0 emptyStack + p 1 player + p 2 filledStack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/item/ItemStack; createFilledResult a method_30270 + p 0 emptyStack + p 1 player + p 2 filledStack + p 3 preventDuplicates + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/item/ItemEntity;Lnet/minecraft/world/item/ItemStack;)V method_33265 a method_33265 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResultHolder; startUsingInstantly a method_29282 + p 0 level + p 1 player + p 2 hand + m ()V +c net/minecraft/world/item/Items cut net/minecraft/class_1802 + f Lnet/minecraft/world/item/Item; DRIPSTONE_BLOCK A field_28043 + f Lnet/minecraft/world/item/Item; GRASS_BLOCK B field_8270 + f Lnet/minecraft/world/item/Item; DIRT C field_8831 + f Lnet/minecraft/world/item/Item; COARSE_DIRT D field_8460 + f Lnet/minecraft/world/item/Item; PODZOL E field_8382 + f Lnet/minecraft/world/item/Item; ROOTED_DIRT F field_28655 + f Lnet/minecraft/world/item/Item; MUD G field_37537 + f Lnet/minecraft/world/item/Item; CRIMSON_NYLIUM H field_22013 + f Lnet/minecraft/world/item/Item; WARPED_NYLIUM I field_22015 + f Lnet/minecraft/world/item/Item; COBBLESTONE J field_20412 + f Lnet/minecraft/world/item/Item; OAK_PLANKS K field_8118 + f Lnet/minecraft/world/item/Item; SPRUCE_PLANKS L field_8113 + f Lnet/minecraft/world/item/Item; BIRCH_PLANKS M field_8191 + f Lnet/minecraft/world/item/Item; JUNGLE_PLANKS N field_8842 + f Lnet/minecraft/world/item/Item; ACACIA_PLANKS O field_8651 + f Lnet/minecraft/world/item/Item; CHERRY_PLANKS P field_42687 + f Lnet/minecraft/world/item/Item; DARK_OAK_PLANKS Q field_8404 + f Lnet/minecraft/world/item/Item; MANGROVE_PLANKS R field_37507 + f Lnet/minecraft/world/item/Item; BAMBOO_PLANKS S field_40213 + f Lnet/minecraft/world/item/Item; CRIMSON_PLANKS T field_22031 + f Lnet/minecraft/world/item/Item; WARPED_PLANKS U field_22032 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC V field_40214 + f Lnet/minecraft/world/item/Item; OAK_SAPLING W field_17535 + f Lnet/minecraft/world/item/Item; SPRUCE_SAPLING X field_17536 + f Lnet/minecraft/world/item/Item; BIRCH_SAPLING Y field_17537 + f Lnet/minecraft/world/item/Item; JUNGLE_SAPLING Z field_17538 + f Lnet/minecraft/world/item/Item; NETHER_GOLD_ORE aA field_23140 + f Lnet/minecraft/world/item/Item; NETHER_QUARTZ_ORE aB field_8702 + f Lnet/minecraft/world/item/Item; ANCIENT_DEBRIS aC field_22019 + f Lnet/minecraft/world/item/Item; COAL_BLOCK aD field_8797 + f Lnet/minecraft/world/item/Item; RAW_IRON_BLOCK aE field_33505 + f Lnet/minecraft/world/item/Item; RAW_COPPER_BLOCK aF field_33506 + f Lnet/minecraft/world/item/Item; RAW_GOLD_BLOCK aG field_33507 + f Lnet/minecraft/world/item/Item; HEAVY_CORE aH field_49813 + f Lnet/minecraft/world/item/Item; AMETHYST_BLOCK aI field_27064 + f Lnet/minecraft/world/item/Item; BUDDING_AMETHYST aJ field_27065 + f Lnet/minecraft/world/item/Item; IRON_BLOCK aK field_8773 + f Lnet/minecraft/world/item/Item; COPPER_BLOCK aL field_27071 + f Lnet/minecraft/world/item/Item; AIR a field_8162 + f Lnet/minecraft/world/item/Item; GOLD_BLOCK aM field_8494 + f Lnet/minecraft/world/item/Item; DIAMOND_BLOCK aN field_8603 + f Lnet/minecraft/world/item/Item; NETHERITE_BLOCK aO field_22018 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER aP field_27072 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER aQ field_27073 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER aR field_27074 + f Lnet/minecraft/world/item/Item; CHISELED_COPPER aS field_46974 + f Lnet/minecraft/world/item/Item; EXPOSED_CHISELED_COPPER aT field_46975 + f Lnet/minecraft/world/item/Item; WEATHERED_CHISELED_COPPER aU field_46976 + f Lnet/minecraft/world/item/Item; OXIDIZED_CHISELED_COPPER aV field_46977 + f Lnet/minecraft/world/item/Item; CUT_COPPER aW field_27075 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER aX field_27076 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER aY field_27077 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER aZ field_27030 + f Lnet/minecraft/world/item/Item; ACACIA_SAPLING aa field_17539 + f Lnet/minecraft/world/item/Item; CHERRY_SAPLING ab field_42688 + f Lnet/minecraft/world/item/Item; DARK_OAK_SAPLING ac field_17540 + f Lnet/minecraft/world/item/Item; MANGROVE_PROPAGULE ad field_37508 + f Lnet/minecraft/world/item/Item; BEDROCK ae field_8542 + f Lnet/minecraft/world/item/Item; SAND af field_8858 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_SAND ag field_42689 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_GRAVEL ah field_43191 + f Lnet/minecraft/world/item/Item; RED_SAND ai field_8200 + f Lnet/minecraft/world/item/Item; GRAVEL aj field_8110 + f Lnet/minecraft/world/item/Item; COAL_ORE ak field_8476 + f Lnet/minecraft/world/item/Item; DEEPSLATE_COAL_ORE al field_29212 + f Lnet/minecraft/world/item/Item; IRON_ORE am field_8599 + f Lnet/minecraft/world/item/Item; DEEPSLATE_IRON_ORE an field_29020 + f Lnet/minecraft/world/item/Item; COPPER_ORE ao field_27018 + f Lnet/minecraft/world/item/Item; DEEPSLATE_COPPER_ORE ap field_29211 + f Lnet/minecraft/world/item/Item; GOLD_ORE aq field_8775 + f Lnet/minecraft/world/item/Item; DEEPSLATE_GOLD_ORE ar field_29019 + f Lnet/minecraft/world/item/Item; REDSTONE_ORE as field_8604 + f Lnet/minecraft/world/item/Item; DEEPSLATE_REDSTONE_ORE at field_29023 + f Lnet/minecraft/world/item/Item; EMERALD_ORE au field_8837 + f Lnet/minecraft/world/item/Item; DEEPSLATE_EMERALD_ORE av field_29216 + f Lnet/minecraft/world/item/Item; LAPIS_ORE aw field_8809 + f Lnet/minecraft/world/item/Item; DEEPSLATE_LAPIS_ORE ax field_29021 + f Lnet/minecraft/world/item/Item; DIAMOND_ORE ay field_8787 + f Lnet/minecraft/world/item/Item; DEEPSLATE_DIAMOND_ORE az field_29022 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER_SLAB bA field_27050 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER_SLAB bB field_33406 + f Lnet/minecraft/world/item/Item; OAK_LOG bC field_8583 + f Lnet/minecraft/world/item/Item; SPRUCE_LOG bD field_8684 + f Lnet/minecraft/world/item/Item; BIRCH_LOG bE field_8170 + f Lnet/minecraft/world/item/Item; JUNGLE_LOG bF field_8125 + f Lnet/minecraft/world/item/Item; ACACIA_LOG bG field_8820 + f Lnet/minecraft/world/item/Item; CHERRY_LOG bH field_42692 + f Lnet/minecraft/world/item/Item; DARK_OAK_LOG bI field_8652 + f Lnet/minecraft/world/item/Item; MANGROVE_LOG bJ field_37512 + f Lnet/minecraft/world/item/Item; MANGROVE_ROOTS bK field_37513 + f Lnet/minecraft/world/item/Item; MUDDY_MANGROVE_ROOTS bL field_37514 + f Lnet/minecraft/world/item/Item; STONE b field_20391 + f Lnet/minecraft/world/item/Item; CRIMSON_STEM bM field_21981 + f Lnet/minecraft/world/item/Item; WARPED_STEM bN field_21982 + f Lnet/minecraft/world/item/Item; BAMBOO_BLOCK bO field_41066 + f Lnet/minecraft/world/item/Item; STRIPPED_OAK_LOG bP field_8415 + f Lnet/minecraft/world/item/Item; STRIPPED_SPRUCE_LOG bQ field_8624 + f Lnet/minecraft/world/item/Item; STRIPPED_BIRCH_LOG bR field_8767 + f Lnet/minecraft/world/item/Item; STRIPPED_JUNGLE_LOG bS field_8334 + f Lnet/minecraft/world/item/Item; STRIPPED_ACACIA_LOG bT field_8072 + f Lnet/minecraft/world/item/Item; STRIPPED_CHERRY_LOG bU field_42693 + f Lnet/minecraft/world/item/Item; STRIPPED_DARK_OAK_LOG bV field_8808 + f Lnet/minecraft/world/item/Item; STRIPPED_MANGROVE_LOG bW field_37515 + f Lnet/minecraft/world/item/Item; STRIPPED_CRIMSON_STEM bX field_21983 + f Lnet/minecraft/world/item/Item; STRIPPED_WARPED_STEM bY field_21984 + f Lnet/minecraft/world/item/Item; STRIPPED_OAK_WOOD bZ field_8248 + f Lnet/minecraft/world/item/Item; CUT_COPPER_STAIRS ba field_27031 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER_STAIRS bb field_27032 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER_STAIRS bc field_27033 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER_STAIRS bd field_27034 + f Lnet/minecraft/world/item/Item; CUT_COPPER_SLAB be field_27035 + f Lnet/minecraft/world/item/Item; EXPOSED_CUT_COPPER_SLAB bf field_27036 + f Lnet/minecraft/world/item/Item; WEATHERED_CUT_COPPER_SLAB bg field_27037 + f Lnet/minecraft/world/item/Item; OXIDIZED_CUT_COPPER_SLAB bh field_27038 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_BLOCK bi field_27039 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER bj field_27040 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER bk field_27041 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER bl field_33403 + f Lnet/minecraft/world/item/Item; WAXED_CHISELED_COPPER bm field_46978 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CHISELED_COPPER bn field_46979 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CHISELED_COPPER bo field_46980 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CHISELED_COPPER bp field_46981 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER bq field_27042 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER br field_27043 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER bs field_27044 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER bt field_33404 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER_STAIRS bu field_27045 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER_STAIRS bv field_27046 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_CUT_COPPER_STAIRS bw field_27047 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_CUT_COPPER_STAIRS bx field_33405 + f Lnet/minecraft/world/item/Item; WAXED_CUT_COPPER_SLAB by field_27048 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_CUT_COPPER_SLAB bz field_27049 + f Lnet/minecraft/world/item/Item; DARK_OAK_LEAVES cA field_17508 + f Lnet/minecraft/world/item/Item; MANGROVE_LEAVES cB field_37511 + f Lnet/minecraft/world/item/Item; AZALEA_LEAVES cC field_28648 + f Lnet/minecraft/world/item/Item; FLOWERING_AZALEA_LEAVES cD field_28649 + f Lnet/minecraft/world/item/Item; SPONGE cE field_8535 + f Lnet/minecraft/world/item/Item; WET_SPONGE cF field_8554 + f Lnet/minecraft/world/item/Item; GLASS cG field_8280 + f Lnet/minecraft/world/item/Item; TINTED_GLASS cH field_27019 + f Lnet/minecraft/world/item/Item; LAPIS_BLOCK cI field_8055 + f Lnet/minecraft/world/item/Item; SANDSTONE cJ field_20384 + f Lnet/minecraft/world/item/Item; CHISELED_SANDSTONE cK field_8552 + f Lnet/minecraft/world/item/Item; CUT_SANDSTONE cL field_20385 + f Lnet/minecraft/world/item/Item; GRANITE c field_20394 + f Lnet/minecraft/world/item/Item; COBWEB cM field_8786 + f Lnet/minecraft/world/item/Item; SHORT_GRASS cN field_8602 + f Lnet/minecraft/world/item/Item; FERN cO field_8471 + f Lnet/minecraft/world/item/Item; AZALEA cP field_28650 + f Lnet/minecraft/world/item/Item; FLOWERING_AZALEA cQ field_28651 + f Lnet/minecraft/world/item/Item; DEAD_BUSH cR field_8689 + f Lnet/minecraft/world/item/Item; SEAGRASS cS field_8158 + f Lnet/minecraft/world/item/Item; SEA_PICKLE cT field_17498 + f Lnet/minecraft/world/item/Item; WHITE_WOOL cU field_19044 + f Lnet/minecraft/world/item/Item; ORANGE_WOOL cV field_19045 + f Lnet/minecraft/world/item/Item; MAGENTA_WOOL cW field_19046 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_WOOL cX field_19047 + f Lnet/minecraft/world/item/Item; YELLOW_WOOL cY field_19048 + f Lnet/minecraft/world/item/Item; LIME_WOOL cZ field_19049 + f Lnet/minecraft/world/item/Item; STRIPPED_SPRUCE_WOOD ca field_8362 + f Lnet/minecraft/world/item/Item; STRIPPED_BIRCH_WOOD cb field_8472 + f Lnet/minecraft/world/item/Item; STRIPPED_JUNGLE_WOOD cc field_8785 + f Lnet/minecraft/world/item/Item; STRIPPED_ACACIA_WOOD cd field_8284 + f Lnet/minecraft/world/item/Item; STRIPPED_CHERRY_WOOD ce field_42690 + f Lnet/minecraft/world/item/Item; STRIPPED_DARK_OAK_WOOD cf field_8219 + f Lnet/minecraft/world/item/Item; STRIPPED_MANGROVE_WOOD cg field_37509 + f Lnet/minecraft/world/item/Item; STRIPPED_CRIMSON_HYPHAE ch field_22487 + f Lnet/minecraft/world/item/Item; STRIPPED_WARPED_HYPHAE ci field_22488 + f Lnet/minecraft/world/item/Item; STRIPPED_BAMBOO_BLOCK cj field_41065 + f Lnet/minecraft/world/item/Item; OAK_WOOD ck field_8888 + f Lnet/minecraft/world/item/Item; SPRUCE_WOOD cl field_8210 + f Lnet/minecraft/world/item/Item; BIRCH_WOOD cm field_8201 + f Lnet/minecraft/world/item/Item; JUNGLE_WOOD cn field_8439 + f Lnet/minecraft/world/item/Item; ACACIA_WOOD co field_8587 + f Lnet/minecraft/world/item/Item; CHERRY_WOOD cp field_42691 + f Lnet/minecraft/world/item/Item; DARK_OAK_WOOD cq field_8458 + f Lnet/minecraft/world/item/Item; MANGROVE_WOOD cr field_37510 + f Lnet/minecraft/world/item/Item; CRIMSON_HYPHAE cs field_22489 + f Lnet/minecraft/world/item/Item; WARPED_HYPHAE ct field_22490 + f Lnet/minecraft/world/item/Item; OAK_LEAVES cu field_17503 + f Lnet/minecraft/world/item/Item; SPRUCE_LEAVES cv field_17504 + f Lnet/minecraft/world/item/Item; BIRCH_LEAVES cw field_17505 + f Lnet/minecraft/world/item/Item; JUNGLE_LEAVES cx field_17506 + f Lnet/minecraft/world/item/Item; ACACIA_LEAVES cy field_17507 + f Lnet/minecraft/world/item/Item; CHERRY_LEAVES cz field_42694 + f Lnet/minecraft/world/item/Item; BROWN_MUSHROOM dA field_17516 + f Lnet/minecraft/world/item/Item; RED_MUSHROOM dB field_17517 + f Lnet/minecraft/world/item/Item; CRIMSON_FUNGUS dC field_21987 + f Lnet/minecraft/world/item/Item; WARPED_FUNGUS dD field_21988 + f Lnet/minecraft/world/item/Item; CRIMSON_ROOTS dE field_21989 + f Lnet/minecraft/world/item/Item; WARPED_ROOTS dF field_21990 + f Lnet/minecraft/world/item/Item; NETHER_SPROUTS dG field_21991 + f Lnet/minecraft/world/item/Item; WEEPING_VINES dH field_21992 + f Lnet/minecraft/world/item/Item; TWISTING_VINES dI field_23070 + f Lnet/minecraft/world/item/Item; SUGAR_CANE dJ field_17531 + f Lnet/minecraft/world/item/Item; KELP dK field_17532 + f Lnet/minecraft/world/item/Item; MOSS_CARPET dL field_28653 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE d field_20397 + f Lnet/minecraft/world/item/Item; PINK_PETALS dM field_42696 + f Lnet/minecraft/world/item/Item; MOSS_BLOCK dN field_28654 + f Lnet/minecraft/world/item/Item; HANGING_ROOTS dO field_28656 + f Lnet/minecraft/world/item/Item; BIG_DRIPLEAF dP field_28657 + f Lnet/minecraft/world/item/Item; SMALL_DRIPLEAF dQ field_28658 + f Lnet/minecraft/world/item/Item; BAMBOO dR field_8648 + f Lnet/minecraft/world/item/Item; OAK_SLAB dS field_8320 + f Lnet/minecraft/world/item/Item; SPRUCE_SLAB dT field_8189 + f Lnet/minecraft/world/item/Item; BIRCH_SLAB dU field_8843 + f Lnet/minecraft/world/item/Item; JUNGLE_SLAB dV field_8224 + f Lnet/minecraft/world/item/Item; ACACIA_SLAB dW field_8400 + f Lnet/minecraft/world/item/Item; CHERRY_SLAB dX field_42697 + f Lnet/minecraft/world/item/Item; DARK_OAK_SLAB dY field_8540 + f Lnet/minecraft/world/item/Item; MANGROVE_SLAB dZ field_37516 + f Lnet/minecraft/world/item/Item; PINK_WOOL da field_19050 + f Lnet/minecraft/world/item/Item; GRAY_WOOL db field_19051 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_WOOL dc field_19052 + f Lnet/minecraft/world/item/Item; CYAN_WOOL dd field_19053 + f Lnet/minecraft/world/item/Item; PURPLE_WOOL de field_19054 + f Lnet/minecraft/world/item/Item; BLUE_WOOL df field_19055 + f Lnet/minecraft/world/item/Item; BROWN_WOOL dg field_19056 + f Lnet/minecraft/world/item/Item; GREEN_WOOL dh field_19057 + f Lnet/minecraft/world/item/Item; RED_WOOL di field_19058 + f Lnet/minecraft/world/item/Item; BLACK_WOOL dj field_19059 + f Lnet/minecraft/world/item/Item; DANDELION dk field_8491 + f Lnet/minecraft/world/item/Item; POPPY dl field_8880 + f Lnet/minecraft/world/item/Item; BLUE_ORCHID dm field_17499 + f Lnet/minecraft/world/item/Item; ALLIUM dn field_17500 + f Lnet/minecraft/world/item/Item; AZURE_BLUET do field_17501 + f Lnet/minecraft/world/item/Item; RED_TULIP dp field_17502 + f Lnet/minecraft/world/item/Item; ORANGE_TULIP dq field_17509 + f Lnet/minecraft/world/item/Item; WHITE_TULIP dr field_17510 + f Lnet/minecraft/world/item/Item; PINK_TULIP ds field_17511 + f Lnet/minecraft/world/item/Item; OXEYE_DAISY dt field_17512 + f Lnet/minecraft/world/item/Item; CORNFLOWER du field_17513 + f Lnet/minecraft/world/item/Item; LILY_OF_THE_VALLEY dv field_17514 + f Lnet/minecraft/world/item/Item; WITHER_ROSE dw field_17515 + f Lnet/minecraft/world/item/Item; TORCHFLOWER dx field_42695 + f Lnet/minecraft/world/item/Item; PITCHER_PLANT dy field_43192 + f Lnet/minecraft/world/item/Item; SPORE_BLOSSOM dz field_28652 + f Lnet/minecraft/world/item/Item; BOOKSHELF eA field_8536 + f Lnet/minecraft/world/item/Item; CHISELED_BOOKSHELF eB field_40215 + f Lnet/minecraft/world/item/Item; DECORATED_POT eC field_42699 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE eD field_20392 + f Lnet/minecraft/world/item/Item; OBSIDIAN eE field_8281 + f Lnet/minecraft/world/item/Item; TORCH eF field_8810 + f Lnet/minecraft/world/item/Item; END_ROD eG field_8056 + f Lnet/minecraft/world/item/Item; CHORUS_PLANT eH field_8358 + f Lnet/minecraft/world/item/Item; CHORUS_FLOWER eI field_8710 + f Lnet/minecraft/world/item/Item; PURPUR_BLOCK eJ field_20393 + f Lnet/minecraft/world/item/Item; PURPUR_PILLAR eK field_8490 + f Lnet/minecraft/world/item/Item; PURPUR_STAIRS eL field_8644 + f Lnet/minecraft/world/item/Item; DIORITE e field_20401 + f Lnet/minecraft/world/item/Item; SPAWNER eM field_8849 + f Lnet/minecraft/world/item/Item; CHEST eN field_8106 + f Lnet/minecraft/world/item/Item; CRAFTING_TABLE eO field_8465 + f Lnet/minecraft/world/item/Item; FARMLAND eP field_8365 + f Lnet/minecraft/world/item/Item; FURNACE eQ field_8732 + f Lnet/minecraft/world/item/Item; LADDER eR field_8121 + f Lnet/minecraft/world/item/Item; COBBLESTONE_STAIRS eS field_8310 + f Lnet/minecraft/world/item/Item; SNOW eT field_8749 + f Lnet/minecraft/world/item/Item; ICE eU field_8426 + f Lnet/minecraft/world/item/Item; SNOW_BLOCK eV field_8246 + f Lnet/minecraft/world/item/Item; CACTUS eW field_17520 + f Lnet/minecraft/world/item/Item; CLAY eX field_19060 + f Lnet/minecraft/world/item/Item; JUKEBOX eY field_8565 + f Lnet/minecraft/world/item/Item; OAK_FENCE eZ field_8792 + f Lnet/minecraft/world/item/Item; BAMBOO_SLAB ea field_40216 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC_SLAB eb field_40217 + f Lnet/minecraft/world/item/Item; CRIMSON_SLAB ec field_21985 + f Lnet/minecraft/world/item/Item; WARPED_SLAB ed field_21986 + f Lnet/minecraft/world/item/Item; STONE_SLAB ee field_8595 + f Lnet/minecraft/world/item/Item; SMOOTH_STONE_SLAB ef field_8291 + f Lnet/minecraft/world/item/Item; SANDSTONE_SLAB eg field_18888 + f Lnet/minecraft/world/item/Item; CUT_STANDSTONE_SLAB eh field_18889 + f Lnet/minecraft/world/item/Item; PETRIFIED_OAK_SLAB ei field_8060 + f Lnet/minecraft/world/item/Item; COBBLESTONE_SLAB ej field_8194 + f Lnet/minecraft/world/item/Item; BRICK_SLAB ek field_8342 + f Lnet/minecraft/world/item/Item; STONE_BRICK_SLAB el field_8524 + f Lnet/minecraft/world/item/Item; MUD_BRICK_SLAB em field_37517 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_SLAB en field_8505 + f Lnet/minecraft/world/item/Item; QUARTZ_SLAB eo field_8412 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_SLAB ep field_18886 + f Lnet/minecraft/world/item/Item; CUT_RED_SANDSTONE_SLAB eq field_18887 + f Lnet/minecraft/world/item/Item; PURPUR_SLAB er field_8202 + f Lnet/minecraft/world/item/Item; PRISMARINE_SLAB es field_8440 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICK_SLAB et field_8588 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE_SLAB eu field_8459 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ ev field_20386 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE ew field_20387 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE ex field_20388 + f Lnet/minecraft/world/item/Item; SMOOTH_STONE ey field_20389 + f Lnet/minecraft/world/item/Item; BRICKS ez field_20390 + f Lnet/minecraft/world/item/Item; INFESTED_CHISELED_STONE_BRICKS fA field_8148 + f Lnet/minecraft/world/item/Item; INFESTED_DEEPSLATE fB field_29213 + f Lnet/minecraft/world/item/Item; STONE_BRICKS fC field_20395 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICKS fD field_20396 + f Lnet/minecraft/world/item/Item; CRACKED_STONE_BRICKS fE field_8343 + f Lnet/minecraft/world/item/Item; CHISELED_STONE_BRICKS fF field_8525 + f Lnet/minecraft/world/item/Item; PACKED_MUD fG field_37518 + f Lnet/minecraft/world/item/Item; MUD_BRICKS fH field_37519 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICKS fI field_28859 + f Lnet/minecraft/world/item/Item; CRACKED_DEEPSLATE_BRICKS fJ field_29214 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILES fK field_28860 + f Lnet/minecraft/world/item/Item; CRACKED_DEEPSLATE_TILES fL field_29215 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE f field_20403 + f Lnet/minecraft/world/item/Item; CHISELED_DEEPSLATE fM field_28861 + f Lnet/minecraft/world/item/Item; REINFORCED_DEEPSLATE fN field_38418 + f Lnet/minecraft/world/item/Item; BROWN_MUSHROOM_BLOCK fO field_8506 + f Lnet/minecraft/world/item/Item; RED_MUSHROOM_BLOCK fP field_8682 + f Lnet/minecraft/world/item/Item; MUSHROOM_STEM fQ field_17521 + f Lnet/minecraft/world/item/Item; IRON_BARS fR field_8076 + f Lnet/minecraft/world/item/Item; CHAIN fS field_23983 + f Lnet/minecraft/world/item/Item; GLASS_PANE fT field_8141 + f Lnet/minecraft/world/item/Item; MELON fU field_17522 + f Lnet/minecraft/world/item/Item; VINE fV field_17523 + f Lnet/minecraft/world/item/Item; GLOW_LICHEN fW field_28409 + f Lnet/minecraft/world/item/Item; BRICK_STAIRS fX field_8663 + f Lnet/minecraft/world/item/Item; STONE_BRICK_STAIRS fY field_8481 + f Lnet/minecraft/world/item/Item; MUD_BRICK_STAIRS fZ field_37522 + f Lnet/minecraft/world/item/Item; SPRUCE_FENCE fa field_8701 + f Lnet/minecraft/world/item/Item; BIRCH_FENCE fb field_8457 + f Lnet/minecraft/world/item/Item; JUNGLE_FENCE fc field_8823 + f Lnet/minecraft/world/item/Item; ACACIA_FENCE fd field_8646 + f Lnet/minecraft/world/item/Item; CHERRY_FENCE fe field_42698 + f Lnet/minecraft/world/item/Item; DARK_OAK_FENCE ff field_8454 + f Lnet/minecraft/world/item/Item; MANGROVE_FENCE fg field_37520 + f Lnet/minecraft/world/item/Item; BAMBOO_FENCE fh field_40218 + f Lnet/minecraft/world/item/Item; CRIMSON_FENCE fi field_21995 + f Lnet/minecraft/world/item/Item; WARPED_FENCE fj field_21996 + f Lnet/minecraft/world/item/Item; PUMPKIN fk field_17518 + f Lnet/minecraft/world/item/Item; CARVED_PUMPKIN fl field_17519 + f Lnet/minecraft/world/item/Item; JACK_O_LANTERN fm field_8693 + f Lnet/minecraft/world/item/Item; NETHERRACK fn field_8328 + f Lnet/minecraft/world/item/Item; SOUL_SAND fo field_8067 + f Lnet/minecraft/world/item/Item; SOUL_SOIL fp field_21999 + f Lnet/minecraft/world/item/Item; BASALT fq field_22000 + f Lnet/minecraft/world/item/Item; POLISHED_BASALT fr field_23069 + f Lnet/minecraft/world/item/Item; SMOOTH_BASALT fs field_29024 + f Lnet/minecraft/world/item/Item; SOUL_TORCH ft field_22001 + f Lnet/minecraft/world/item/Item; GLOWSTONE fu field_8801 + f Lnet/minecraft/world/item/Item; INFESTED_STONE fv field_8225 + f Lnet/minecraft/world/item/Item; INFESTED_COBBLESTONE fw field_8401 + f Lnet/minecraft/world/item/Item; INFESTED_STONE_BRICKS fx field_8541 + f Lnet/minecraft/world/item/Item; INFESTED_MOSSY_STONE_BRICKS fy field_8596 + f Lnet/minecraft/world/item/Item; INFESTED_CRACKED_STONE_BRICKS fz field_8292 + f Lnet/minecraft/world/item/Item; MANGROVE_STAIRS gA field_37526 + f Lnet/minecraft/world/item/Item; BAMBOO_STAIRS gB field_40219 + f Lnet/minecraft/world/item/Item; BAMBOO_MOSAIC_STAIRS gC field_40220 + f Lnet/minecraft/world/item/Item; CRIMSON_STAIRS gD field_22006 + f Lnet/minecraft/world/item/Item; WARPED_STAIRS gE field_22007 + f Lnet/minecraft/world/item/Item; COMMAND_BLOCK gF field_8866 + f Lnet/minecraft/world/item/Item; BEACON gG field_8668 + f Lnet/minecraft/world/item/Item; COBBLESTONE_WALL gH field_8392 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_WALL gI field_8708 + f Lnet/minecraft/world/item/Item; BRICK_WALL gJ field_8804 + f Lnet/minecraft/world/item/Item; PRISMARINE_WALL gK field_8057 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_WALL gL field_8359 + f Lnet/minecraft/world/item/Item; ANDESITE g field_20407 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_WALL gM field_8811 + f Lnet/minecraft/world/item/Item; GRANITE_WALL gN field_8488 + f Lnet/minecraft/world/item/Item; STONE_BRICK_WALL gO field_8337 + f Lnet/minecraft/world/item/Item; MUD_BRICK_WALL gP field_37521 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_WALL gQ field_8765 + f Lnet/minecraft/world/item/Item; ANDESITE_WALL gR field_8206 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_WALL gS field_8419 + f Lnet/minecraft/world/item/Item; SANDSTONE_WALL gT field_8223 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_WALL gU field_8819 + f Lnet/minecraft/world/item/Item; DIORITE_WALL gV field_8559 + f Lnet/minecraft/world/item/Item; BLACKSTONE_WALL gW field_23846 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_WALL gX field_23833 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_WALL gY field_23840 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_WALL gZ field_28862 + f Lnet/minecraft/world/item/Item; MYCELIUM ga field_8610 + f Lnet/minecraft/world/item/Item; LILY_PAD gb field_17524 + f Lnet/minecraft/world/item/Item; NETHER_BRICKS gc field_20398 + f Lnet/minecraft/world/item/Item; CRACKED_NETHER_BRICKS gd field_23828 + f Lnet/minecraft/world/item/Item; CHISELED_NETHER_BRICKS ge field_23829 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_FENCE gf field_8080 + f Lnet/minecraft/world/item/Item; NETHER_BRICK_STAIRS gg field_8444 + f Lnet/minecraft/world/item/Item; SCULK gh field_37523 + f Lnet/minecraft/world/item/Item; SCULK_VEIN gi field_37524 + f Lnet/minecraft/world/item/Item; SCULK_CATALYST gj field_37525 + f Lnet/minecraft/world/item/Item; SCULK_SHRIEKER gk field_37538 + f Lnet/minecraft/world/item/Item; ENCHANTING_TABLE gl field_8657 + f Lnet/minecraft/world/item/Item; END_PORTAL_FRAME gm field_8827 + f Lnet/minecraft/world/item/Item; END_STONE gn field_20399 + f Lnet/minecraft/world/item/Item; END_STONE_BRICKS go field_20400 + f Lnet/minecraft/world/item/Item; DRAGON_EGG gp field_8840 + f Lnet/minecraft/world/item/Item; SANDSTONE_STAIRS gq field_8443 + f Lnet/minecraft/world/item/Item; ENDER_CHEST gr field_8466 + f Lnet/minecraft/world/item/Item; EMERALD_BLOCK gs field_8733 + f Lnet/minecraft/world/item/Item; OAK_STAIRS gt field_8212 + f Lnet/minecraft/world/item/Item; SPRUCE_STAIRS gu field_8122 + f Lnet/minecraft/world/item/Item; BIRCH_STAIRS gv field_8130 + f Lnet/minecraft/world/item/Item; JUNGLE_STAIRS gw field_8311 + f Lnet/minecraft/world/item/Item; ACACIA_STAIRS gx field_8445 + f Lnet/minecraft/world/item/Item; CHERRY_STAIRS gy field_42700 + f Lnet/minecraft/world/item/Item; DARK_OAK_STAIRS gz field_8658 + f Lnet/minecraft/world/item/Item; BLACK_TERRACOTTA hA field_8181 + f Lnet/minecraft/world/item/Item; BARRIER hB field_8077 + f Lnet/minecraft/world/item/Item; LIGHT hC field_30904 + f Lnet/minecraft/world/item/Item; HAY_BLOCK hD field_17528 + f Lnet/minecraft/world/item/Item; WHITE_CARPET hE field_8850 + f Lnet/minecraft/world/item/Item; ORANGE_CARPET hF field_8683 + f Lnet/minecraft/world/item/Item; MAGENTA_CARPET hG field_8384 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CARPET hH field_8078 + f Lnet/minecraft/world/item/Item; YELLOW_CARPET hI field_8142 + f Lnet/minecraft/world/item/Item; LIME_CARPET hJ field_8253 + f Lnet/minecraft/world/item/Item; PINK_CARPET hK field_8580 + f Lnet/minecraft/world/item/Item; GRAY_CARPET hL field_8875 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE h field_20411 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CARPET hM field_8654 + f Lnet/minecraft/world/item/Item; CYAN_CARPET hN field_8290 + f Lnet/minecraft/world/item/Item; PURPLE_CARPET hO field_8098 + f Lnet/minecraft/world/item/Item; BLUE_CARPET hP field_8115 + f Lnet/minecraft/world/item/Item; BROWN_CARPET hQ field_8294 + f Lnet/minecraft/world/item/Item; GREEN_CARPET hR field_8664 + f Lnet/minecraft/world/item/Item; RED_CARPET hS field_8482 + f Lnet/minecraft/world/item/Item; BLACK_CARPET hT field_8611 + f Lnet/minecraft/world/item/Item; TERRACOTTA hU field_8260 + f Lnet/minecraft/world/item/Item; PACKED_ICE hV field_8081 + f Lnet/minecraft/world/item/Item; DIRT_PATH hW field_8519 + f Lnet/minecraft/world/item/Item; SUNFLOWER hX field_17525 + f Lnet/minecraft/world/item/Item; LILAC hY field_17526 + f Lnet/minecraft/world/item/Item; ROSE_BUSH hZ field_17527 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_WALL ha field_28863 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_WALL hb field_28865 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_WALL hc field_28864 + f Lnet/minecraft/world/item/Item; ANVIL hd field_8782 + f Lnet/minecraft/world/item/Item; CHIPPED_ANVIL he field_8750 + f Lnet/minecraft/world/item/Item; DAMAGED_ANVIL hf field_8427 + f Lnet/minecraft/world/item/Item; CHISELED_QUARTZ_BLOCK hg field_8084 + f Lnet/minecraft/world/item/Item; QUARTZ_BLOCK hh field_20402 + f Lnet/minecraft/world/item/Item; QUARTZ_BRICKS hi field_23830 + f Lnet/minecraft/world/item/Item; QUARTZ_PILLAR hj field_8746 + f Lnet/minecraft/world/item/Item; QUARTZ_STAIRS hk field_8499 + f Lnet/minecraft/world/item/Item; WHITE_TERRACOTTA hl field_8156 + f Lnet/minecraft/world/item/Item; ORANGE_TERRACOTTA hm field_8043 + f Lnet/minecraft/world/item/Item; MAGENTA_TERRACOTTA hn field_8783 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_TERRACOTTA ho field_8717 + f Lnet/minecraft/world/item/Item; YELLOW_TERRACOTTA hp field_8385 + f Lnet/minecraft/world/item/Item; LIME_TERRACOTTA hq field_8672 + f Lnet/minecraft/world/item/Item; PINK_TERRACOTTA hr field_8853 + f Lnet/minecraft/world/item/Item; GRAY_TERRACOTTA hs field_8304 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_TERRACOTTA ht field_8133 + f Lnet/minecraft/world/item/Item; CYAN_TERRACOTTA hu field_8821 + f Lnet/minecraft/world/item/Item; PURPLE_TERRACOTTA hv field_8715 + f Lnet/minecraft/world/item/Item; BLUE_TERRACOTTA hw field_8455 + f Lnet/minecraft/world/item/Item; BROWN_TERRACOTTA hx field_8467 + f Lnet/minecraft/world/item/Item; GREEN_TERRACOTTA hy field_8798 + f Lnet/minecraft/world/item/Item; RED_TERRACOTTA hz field_8353 + f Lnet/minecraft/world/item/Item; GRAY_STAINED_GLASS_PANE iA field_8871 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_STAINED_GLASS_PANE iB field_8240 + f Lnet/minecraft/world/item/Item; CYAN_STAINED_GLASS_PANE iC field_8085 + f Lnet/minecraft/world/item/Item; PURPLE_STAINED_GLASS_PANE iD field_8739 + f Lnet/minecraft/world/item/Item; BLUE_STAINED_GLASS_PANE iE field_8747 + f Lnet/minecraft/world/item/Item; BROWN_STAINED_GLASS_PANE iF field_8501 + f Lnet/minecraft/world/item/Item; GREEN_STAINED_GLASS_PANE iG field_8656 + f Lnet/minecraft/world/item/Item; RED_STAINED_GLASS_PANE iH field_8879 + f Lnet/minecraft/world/item/Item; BLACK_STAINED_GLASS_PANE iI field_8157 + f Lnet/minecraft/world/item/Item; PRISMARINE iJ field_20404 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICKS iK field_20405 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE iL field_20406 + f Lnet/minecraft/world/item/Item; DEEPSLATE i field_28866 + f Lnet/minecraft/world/item/Item; PRISMARINE_STAIRS iM field_8386 + f Lnet/minecraft/world/item/Item; PRISMARINE_BRICK_STAIRS iN field_8673 + f Lnet/minecraft/world/item/Item; DARK_PRISMARINE_STAIRS iO field_8854 + f Lnet/minecraft/world/item/Item; SEA_LANTERN iP field_8305 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE iQ field_20408 + f Lnet/minecraft/world/item/Item; CHISELED_RED_SANDSTONE iR field_8822 + f Lnet/minecraft/world/item/Item; CUT_RED_SANDSTONE iS field_20409 + f Lnet/minecraft/world/item/Item; RED_SANDSTONE_STAIRS iT field_8456 + f Lnet/minecraft/world/item/Item; REPEATING_COMMAND_BLOCK iU field_8468 + f Lnet/minecraft/world/item/Item; CHAIN_COMMAND_BLOCK iV field_8799 + f Lnet/minecraft/world/item/Item; MAGMA_BLOCK iW field_8354 + f Lnet/minecraft/world/item/Item; NETHER_WART_BLOCK iX field_8182 + f Lnet/minecraft/world/item/Item; WARPED_WART_BLOCK iY field_22008 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICKS iZ field_20410 + f Lnet/minecraft/world/item/Item; PEONY ia field_17529 + f Lnet/minecraft/world/item/Item; TALL_GRASS ib field_8256 + f Lnet/minecraft/world/item/Item; LARGE_FERN ic field_8561 + f Lnet/minecraft/world/item/Item; WHITE_STAINED_GLASS id field_8483 + f Lnet/minecraft/world/item/Item; ORANGE_STAINED_GLASS ie field_8393 + f Lnet/minecraft/world/item/Item; MAGENTA_STAINED_GLASS if field_8243 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_STAINED_GLASS ig field_8869 + f Lnet/minecraft/world/item/Item; YELLOW_STAINED_GLASS ih field_8095 + f Lnet/minecraft/world/item/Item; LIME_STAINED_GLASS ii field_8340 + f Lnet/minecraft/world/item/Item; PINK_STAINED_GLASS ij field_8770 + f Lnet/minecraft/world/item/Item; GRAY_STAINED_GLASS ik field_8507 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_STAINED_GLASS il field_8363 + f Lnet/minecraft/world/item/Item; CYAN_STAINED_GLASS im field_8685 + f Lnet/minecraft/world/item/Item; PURPLE_STAINED_GLASS in field_8838 + f Lnet/minecraft/world/item/Item; BLUE_STAINED_GLASS io field_8126 + f Lnet/minecraft/world/item/Item; BROWN_STAINED_GLASS ip field_8332 + f Lnet/minecraft/world/item/Item; GREEN_STAINED_GLASS iq field_8734 + f Lnet/minecraft/world/item/Item; RED_STAINED_GLASS ir field_8636 + f Lnet/minecraft/world/item/Item; BLACK_STAINED_GLASS is field_8410 + f Lnet/minecraft/world/item/Item; WHITE_STAINED_GLASS_PANE it field_8736 + f Lnet/minecraft/world/item/Item; ORANGE_STAINED_GLASS_PANE iu field_8761 + f Lnet/minecraft/world/item/Item; MAGENTA_STAINED_GLASS_PANE iv field_8119 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_STAINED_GLASS_PANE iw field_8196 + f Lnet/minecraft/world/item/Item; YELLOW_STAINED_GLASS_PANE ix field_8703 + f Lnet/minecraft/world/item/Item; LIME_STAINED_GLASS_PANE iy field_8581 + f Lnet/minecraft/world/item/Item; PINK_STAINED_GLASS_PANE iz field_8500 + f Lnet/minecraft/world/item/Item; GRAY_GLAZED_TERRACOTTA jA field_8885 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_GLAZED_TERRACOTTA jB field_8172 + f Lnet/minecraft/world/item/Item; CYAN_GLAZED_TERRACOTTA jC field_8257 + f Lnet/minecraft/world/item/Item; PURPLE_GLAZED_TERRACOTTA jD field_8562 + f Lnet/minecraft/world/item/Item; BLUE_GLAZED_TERRACOTTA jE field_8484 + f Lnet/minecraft/world/item/Item; BROWN_GLAZED_TERRACOTTA jF field_8394 + f Lnet/minecraft/world/item/Item; GREEN_GLAZED_TERRACOTTA jG field_8244 + f Lnet/minecraft/world/item/Item; RED_GLAZED_TERRACOTTA jH field_8870 + f Lnet/minecraft/world/item/Item; BLACK_GLAZED_TERRACOTTA jI field_8096 + f Lnet/minecraft/world/item/Item; WHITE_CONCRETE jJ field_8341 + f Lnet/minecraft/world/item/Item; ORANGE_CONCRETE jK field_8771 + f Lnet/minecraft/world/item/Item; MAGENTA_CONCRETE jL field_8508 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE j field_29025 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CONCRETE jM field_8364 + f Lnet/minecraft/world/item/Item; YELLOW_CONCRETE jN field_8686 + f Lnet/minecraft/world/item/Item; LIME_CONCRETE jO field_8839 + f Lnet/minecraft/world/item/Item; PINK_CONCRETE jP field_8127 + f Lnet/minecraft/world/item/Item; GRAY_CONCRETE jQ field_8333 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CONCRETE jR field_8735 + f Lnet/minecraft/world/item/Item; CYAN_CONCRETE jS field_8637 + f Lnet/minecraft/world/item/Item; PURPLE_CONCRETE jT field_8411 + f Lnet/minecraft/world/item/Item; BLUE_CONCRETE jU field_8737 + f Lnet/minecraft/world/item/Item; BROWN_CONCRETE jV field_8762 + f Lnet/minecraft/world/item/Item; GREEN_CONCRETE jW field_8120 + f Lnet/minecraft/world/item/Item; RED_CONCRETE jX field_8197 + f Lnet/minecraft/world/item/Item; BLACK_CONCRETE jY field_8704 + f Lnet/minecraft/world/item/Item; WHITE_CONCRETE_POWDER jZ field_8582 + f Lnet/minecraft/world/item/Item; BONE_BLOCK ja field_8242 + f Lnet/minecraft/world/item/Item; STRUCTURE_VOID jb field_8615 + f Lnet/minecraft/world/item/Item; SHULKER_BOX jc field_8545 + f Lnet/minecraft/world/item/Item; WHITE_SHULKER_BOX jd field_8722 + f Lnet/minecraft/world/item/Item; ORANGE_SHULKER_BOX je field_8380 + f Lnet/minecraft/world/item/Item; MAGENTA_SHULKER_BOX jf field_8050 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_SHULKER_BOX jg field_8829 + f Lnet/minecraft/world/item/Item; YELLOW_SHULKER_BOX jh field_8271 + f Lnet/minecraft/world/item/Item; LIME_SHULKER_BOX ji field_8548 + f Lnet/minecraft/world/item/Item; PINK_SHULKER_BOX jj field_8520 + f Lnet/minecraft/world/item/Item; GRAY_SHULKER_BOX jk field_8627 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_SHULKER_BOX jl field_8451 + f Lnet/minecraft/world/item/Item; CYAN_SHULKER_BOX jm field_8213 + f Lnet/minecraft/world/item/Item; PURPLE_SHULKER_BOX jn field_8816 + f Lnet/minecraft/world/item/Item; BLUE_SHULKER_BOX jo field_8350 + f Lnet/minecraft/world/item/Item; BROWN_SHULKER_BOX jp field_8584 + f Lnet/minecraft/world/item/Item; GREEN_SHULKER_BOX jq field_8461 + f Lnet/minecraft/world/item/Item; RED_SHULKER_BOX jr field_8676 + f Lnet/minecraft/world/item/Item; BLACK_SHULKER_BOX js field_8268 + f Lnet/minecraft/world/item/Item; WHITE_GLAZED_TERRACOTTA jt field_8177 + f Lnet/minecraft/world/item/Item; ORANGE_GLAZED_TERRACOTTA ju field_8139 + f Lnet/minecraft/world/item/Item; MAGENTA_GLAZED_TERRACOTTA jv field_8318 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_GLAZED_TERRACOTTA jw field_8640 + f Lnet/minecraft/world/item/Item; YELLOW_GLAZED_TERRACOTTA jx field_8889 + f Lnet/minecraft/world/item/Item; LIME_GLAZED_TERRACOTTA jy field_8649 + f Lnet/minecraft/world/item/Item; PINK_GLAZED_TERRACOTTA jz field_8277 + f Lnet/minecraft/world/item/Item; HORN_CORAL_BLOCK kA field_8104 + f Lnet/minecraft/world/item/Item; TUBE_CORAL kB field_8847 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL kC field_8616 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL kD field_8538 + f Lnet/minecraft/world/item/Item; FIRE_CORAL kE field_8546 + f Lnet/minecraft/world/item/Item; HORN_CORAL kF field_8723 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL kG field_8381 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL kH field_8051 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL kI field_8830 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL kJ field_8272 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL kK field_8549 + f Lnet/minecraft/world/item/Item; TUBE_CORAL_FAN kL field_8521 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE k field_28871 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL_FAN kM field_8628 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL_FAN kN field_8452 + f Lnet/minecraft/world/item/Item; FIRE_CORAL_FAN kO field_8214 + f Lnet/minecraft/world/item/Item; HORN_CORAL_FAN kP field_8817 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL_FAN kQ field_8351 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL_FAN kR field_8585 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL_FAN kS field_8462 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL_FAN kT field_8677 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL_FAN kU field_8269 + f Lnet/minecraft/world/item/Item; BLUE_ICE kV field_8178 + f Lnet/minecraft/world/item/Item; CONDUIT kW field_8140 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE_STAIRS kX field_8319 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE_STAIRS kY field_8641 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_STAIRS kZ field_8890 + f Lnet/minecraft/world/item/Item; ORANGE_CONCRETE_POWDER ka field_8487 + f Lnet/minecraft/world/item/Item; MAGENTA_CONCRETE_POWDER kb field_8336 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CONCRETE_POWDER kc field_8764 + f Lnet/minecraft/world/item/Item; YELLOW_CONCRETE_POWDER kd field_8205 + f Lnet/minecraft/world/item/Item; LIME_CONCRETE_POWDER ke field_8418 + f Lnet/minecraft/world/item/Item; PINK_CONCRETE_POWDER kf field_8222 + f Lnet/minecraft/world/item/Item; GRAY_CONCRETE_POWDER kg field_8818 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CONCRETE_POWDER kh field_8558 + f Lnet/minecraft/world/item/Item; CYAN_CONCRETE_POWDER ki field_8593 + f Lnet/minecraft/world/item/Item; PURPLE_CONCRETE_POWDER kj field_8690 + f Lnet/minecraft/world/item/Item; BLUE_CONCRETE_POWDER kk field_8164 + f Lnet/minecraft/world/item/Item; BROWN_CONCRETE_POWDER kl field_8437 + f Lnet/minecraft/world/item/Item; GREEN_CONCRETE_POWDER km field_8198 + f Lnet/minecraft/world/item/Item; RED_CONCRETE_POWDER kn field_8757 + f Lnet/minecraft/world/item/Item; BLACK_CONCRETE_POWDER ko field_8516 + f Lnet/minecraft/world/item/Item; TURTLE_EGG kp field_8618 + f Lnet/minecraft/world/item/Item; SNIFFER_EGG kq field_43193 + f Lnet/minecraft/world/item/Item; DEAD_TUBE_CORAL_BLOCK kr field_8856 + f Lnet/minecraft/world/item/Item; DEAD_BRAIN_CORAL_BLOCK ks field_8237 + f Lnet/minecraft/world/item/Item; DEAD_BUBBLE_CORAL_BLOCK kt field_8089 + f Lnet/minecraft/world/item/Item; DEAD_FIRE_CORAL_BLOCK ku field_8160 + f Lnet/minecraft/world/item/Item; DEAD_HORN_CORAL_BLOCK kv field_8698 + f Lnet/minecraft/world/item/Item; TUBE_CORAL_BLOCK kw field_8402 + f Lnet/minecraft/world/item/Item; BRAIN_CORAL_BLOCK kx field_8474 + f Lnet/minecraft/world/item/Item; BUBBLE_CORAL_BLOCK ky field_8883 + f Lnet/minecraft/world/item/Item; FIRE_CORAL_BLOCK kz field_8278 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE_SLAB lA field_8395 + f Lnet/minecraft/world/item/Item; DIORITE_SLAB lB field_8659 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_SLAB lC field_28873 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_SLAB lD field_28872 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_SLAB lE field_28875 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_SLAB lF field_28874 + f Lnet/minecraft/world/item/Item; SCAFFOLDING lG field_16482 + f Lnet/minecraft/world/item/Item; REDSTONE lH field_8725 + f Lnet/minecraft/world/item/Item; REDSTONE_TORCH lI field_8530 + f Lnet/minecraft/world/item/Item; REDSTONE_BLOCK lJ field_8793 + f Lnet/minecraft/world/item/Item; REPEATER lK field_8619 + f Lnet/minecraft/world/item/Item; COMPARATOR lL field_8857 + f Lnet/minecraft/world/item/Item; CALCITE l field_27020 + f Lnet/minecraft/world/item/Item; PISTON lM field_8249 + f Lnet/minecraft/world/item/Item; STICKY_PISTON lN field_8105 + f Lnet/minecraft/world/item/Item; SLIME_BLOCK lO field_8828 + f Lnet/minecraft/world/item/Item; HONEY_BLOCK lP field_21086 + f Lnet/minecraft/world/item/Item; OBSERVER lQ field_8537 + f Lnet/minecraft/world/item/Item; HOPPER lR field_8239 + f Lnet/minecraft/world/item/Item; DISPENSER lS field_8357 + f Lnet/minecraft/world/item/Item; DROPPER lT field_8878 + f Lnet/minecraft/world/item/Item; LECTERN lU field_16312 + f Lnet/minecraft/world/item/Item; TARGET lV field_22420 + f Lnet/minecraft/world/item/Item; LEVER lW field_8865 + f Lnet/minecraft/world/item/Item; LIGHTNING_ROD lX field_27051 + f Lnet/minecraft/world/item/Item; DAYLIGHT_DETECTOR lY field_8566 + f Lnet/minecraft/world/item/Item; SCULK_SENSOR lZ field_28101 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE_STAIRS la field_8650 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_STAIRS lb field_8275 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_STAIRS lc field_8152 + f Lnet/minecraft/world/item/Item; STONE_STAIRS ld field_8053 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE_STAIRS le field_8166 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ_STAIRS lf field_8430 + f Lnet/minecraft/world/item/Item; GRANITE_STAIRS lg field_8608 + f Lnet/minecraft/world/item/Item; ANDESITE_STAIRS lh field_8526 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_STAIRS li field_8302 + f Lnet/minecraft/world/item/Item; POLISHED_ANDESITE_STAIRS lj field_8316 + f Lnet/minecraft/world/item/Item; DIORITE_STAIRS lk field_8860 + f Lnet/minecraft/world/item/Item; COBBLED_DEEPSLATE_STAIRS ll field_28867 + f Lnet/minecraft/world/item/Item; POLISHED_DEEPSLATE_STAIRS lm field_28868 + f Lnet/minecraft/world/item/Item; DEEPSLATE_BRICK_STAIRS ln field_28870 + f Lnet/minecraft/world/item/Item; DEEPSLATE_TILE_STAIRS lo field_28869 + f Lnet/minecraft/world/item/Item; POLISHED_GRANITE_SLAB lp field_8228 + f Lnet/minecraft/world/item/Item; SMOOTH_RED_SANDSTONE_SLAB lq field_8266 + f Lnet/minecraft/world/item/Item; MOSSY_STONE_BRICK_SLAB lr field_8576 + f Lnet/minecraft/world/item/Item; POLISHED_DIORITE_SLAB ls field_8569 + f Lnet/minecraft/world/item/Item; MOSSY_COBBLESTONE_SLAB lt field_8369 + f Lnet/minecraft/world/item/Item; END_STONE_BRICK_SLAB lu field_8282 + f Lnet/minecraft/world/item/Item; SMOOTH_SANDSTONE_SLAB lv field_8872 + f Lnet/minecraft/world/item/Item; SMOOTH_QUARTZ_SLAB lw field_8217 + f Lnet/minecraft/world/item/Item; GRANITE_SLAB lx field_8312 + f Lnet/minecraft/world/item/Item; ANDESITE_SLAB ly field_8742 + f Lnet/minecraft/world/item/Item; RED_NETHER_BRICK_SLAB lz field_8522 + f Lnet/minecraft/world/item/Item; JUNGLE_PRESSURE_PLATE mA field_8047 + f Lnet/minecraft/world/item/Item; ACACIA_PRESSURE_PLATE mB field_8173 + f Lnet/minecraft/world/item/Item; CHERRY_PRESSURE_PLATE mC field_42704 + f Lnet/minecraft/world/item/Item; DARK_OAK_PRESSURE_PLATE mD field_8886 + f Lnet/minecraft/world/item/Item; MANGROVE_PRESSURE_PLATE mE field_37527 + f Lnet/minecraft/world/item/Item; BAMBOO_PRESSURE_PLATE mF field_40221 + f Lnet/minecraft/world/item/Item; CRIMSON_PRESSURE_PLATE mG field_21993 + f Lnet/minecraft/world/item/Item; WARPED_PRESSURE_PLATE mH field_21994 + f Lnet/minecraft/world/item/Item; IRON_DOOR mI field_8594 + f Lnet/minecraft/world/item/Item; OAK_DOOR mJ field_8691 + f Lnet/minecraft/world/item/Item; SPRUCE_DOOR mK field_8165 + f Lnet/minecraft/world/item/Item; BIRCH_DOOR mL field_8438 + f Lnet/minecraft/world/item/Item; TUFF m field_27021 + f Lnet/minecraft/world/item/Item; JUNGLE_DOOR mM field_8199 + f Lnet/minecraft/world/item/Item; ACACIA_DOOR mN field_8758 + f Lnet/minecraft/world/item/Item; CHERRY_DOOR mO field_42705 + f Lnet/minecraft/world/item/Item; DARK_OAK_DOOR mP field_8517 + f Lnet/minecraft/world/item/Item; MANGROVE_DOOR mQ field_37528 + f Lnet/minecraft/world/item/Item; BAMBOO_DOOR mR field_40222 + f Lnet/minecraft/world/item/Item; CRIMSON_DOOR mS field_22010 + f Lnet/minecraft/world/item/Item; WARPED_DOOR mT field_22009 + f Lnet/minecraft/world/item/Item; COPPER_DOOR mU field_46982 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_DOOR mV field_46983 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_DOOR mW field_46984 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_DOOR mX field_46985 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_DOOR mY field_46986 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_DOOR mZ field_46987 + f Lnet/minecraft/world/item/Item; CALIBRATED_SCULK_SENSOR ma field_43194 + f Lnet/minecraft/world/item/Item; TRIPWIRE_HOOK mb field_8366 + f Lnet/minecraft/world/item/Item; TRAPPED_CHEST mc field_8247 + f Lnet/minecraft/world/item/Item; TNT md field_8626 + f Lnet/minecraft/world/item/Item; REDSTONE_LAMP me field_8230 + f Lnet/minecraft/world/item/Item; NOTE_BLOCK mf field_8643 + f Lnet/minecraft/world/item/Item; STONE_BUTTON mg field_8781 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BUTTON mh field_23834 + f Lnet/minecraft/world/item/Item; OAK_BUTTON mi field_8780 + f Lnet/minecraft/world/item/Item; SPRUCE_BUTTON mj field_8048 + f Lnet/minecraft/world/item/Item; BIRCH_BUTTON mk field_8174 + f Lnet/minecraft/world/item/Item; JUNGLE_BUTTON ml field_8887 + f Lnet/minecraft/world/item/Item; ACACIA_BUTTON mm field_8605 + f Lnet/minecraft/world/item/Item; CHERRY_BUTTON mn field_42701 + f Lnet/minecraft/world/item/Item; DARK_OAK_BUTTON mo field_8531 + f Lnet/minecraft/world/item/Item; MANGROVE_BUTTON mp field_37530 + f Lnet/minecraft/world/item/Item; BAMBOO_BUTTON mq field_40223 + f Lnet/minecraft/world/item/Item; CRIMSON_BUTTON mr field_22004 + f Lnet/minecraft/world/item/Item; WARPED_BUTTON ms field_22005 + f Lnet/minecraft/world/item/Item; STONE_PRESSURE_PLATE mt field_8667 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_PRESSURE_PLATE mu field_23835 + f Lnet/minecraft/world/item/Item; LIGHT_WEIGHTED_PRESSURE_PLATE mv field_8721 + f Lnet/minecraft/world/item/Item; HEAVY_WEIGHTED_PRESSURE_PLATE mw field_8592 + f Lnet/minecraft/world/item/Item; OAK_PRESSURE_PLATE mx field_8391 + f Lnet/minecraft/world/item/Item; SPRUCE_PRESSURE_PLATE my field_8707 + f Lnet/minecraft/world/item/Item; BIRCH_PRESSURE_PLATE mz field_8779 + f Lnet/minecraft/world/item/Item; ACACIA_FENCE_GATE nA field_8114 + f Lnet/minecraft/world/item/Item; CHERRY_FENCE_GATE nB field_42703 + f Lnet/minecraft/world/item/Item; DARK_OAK_FENCE_GATE nC field_8293 + f Lnet/minecraft/world/item/Item; MANGROVE_FENCE_GATE nD field_37532 + f Lnet/minecraft/world/item/Item; BAMBOO_FENCE_GATE nE field_40227 + f Lnet/minecraft/world/item/Item; CRIMSON_FENCE_GATE nF field_21997 + f Lnet/minecraft/world/item/Item; WARPED_FENCE_GATE nG field_21998 + f Lnet/minecraft/world/item/Item; POWERED_RAIL nH field_8848 + f Lnet/minecraft/world/item/Item; DETECTOR_RAIL nI field_8211 + f Lnet/minecraft/world/item/Item; RAIL nJ field_8129 + f Lnet/minecraft/world/item/Item; ACTIVATOR_RAIL nK field_8655 + f Lnet/minecraft/world/item/Item; SADDLE nL field_8175 + f Lnet/minecraft/world/item/Item; TUFF_SLAB n field_46989 + f Lnet/minecraft/world/item/Item; MINECART nM field_8045 + f Lnet/minecraft/world/item/Item; CHEST_MINECART nN field_8388 + f Lnet/minecraft/world/item/Item; FURNACE_MINECART nO field_8063 + f Lnet/minecraft/world/item/Item; TNT_MINECART nP field_8069 + f Lnet/minecraft/world/item/Item; HOPPER_MINECART nQ field_8836 + f Lnet/minecraft/world/item/Item; CARROT_ON_A_STICK nR field_8184 + f Lnet/minecraft/world/item/Item; WARPED_FUNGUS_ON_A_STICK nS field_23254 + f Lnet/minecraft/world/item/Item; ELYTRA nT field_8833 + f Lnet/minecraft/world/item/Item; OAK_BOAT nU field_8533 + f Lnet/minecraft/world/item/Item; OAK_CHEST_BOAT nV field_38216 + f Lnet/minecraft/world/item/Item; SPRUCE_BOAT nW field_8486 + f Lnet/minecraft/world/item/Item; SPRUCE_CHEST_BOAT nX field_38217 + f Lnet/minecraft/world/item/Item; BIRCH_BOAT nY field_8442 + f Lnet/minecraft/world/item/Item; BIRCH_CHEST_BOAT nZ field_38218 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_DOOR na field_46988 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_DOOR nb field_46990 + f Lnet/minecraft/world/item/Item; IRON_TRAPDOOR nc field_8241 + f Lnet/minecraft/world/item/Item; OAK_TRAPDOOR nd field_8376 + f Lnet/minecraft/world/item/Item; SPRUCE_TRAPDOOR ne field_8495 + f Lnet/minecraft/world/item/Item; BIRCH_TRAPDOOR nf field_8774 + f Lnet/minecraft/world/item/Item; JUNGLE_TRAPDOOR ng field_8321 + f Lnet/minecraft/world/item/Item; ACACIA_TRAPDOOR nh field_8190 + f Lnet/minecraft/world/item/Item; CHERRY_TRAPDOOR ni field_42702 + f Lnet/minecraft/world/item/Item; DARK_OAK_TRAPDOOR nj field_8844 + f Lnet/minecraft/world/item/Item; MANGROVE_TRAPDOOR nk field_37529 + f Lnet/minecraft/world/item/Item; BAMBOO_TRAPDOOR nl field_40226 + f Lnet/minecraft/world/item/Item; CRIMSON_TRAPDOOR nm field_22002 + f Lnet/minecraft/world/item/Item; WARPED_TRAPDOOR nn field_22003 + f Lnet/minecraft/world/item/Item; COPPER_TRAPDOOR no field_46991 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_TRAPDOOR np field_46992 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_TRAPDOOR nq field_46993 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_TRAPDOOR nr field_46994 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_TRAPDOOR ns field_46995 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_TRAPDOOR nt field_46996 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_TRAPDOOR nu field_46997 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_TRAPDOOR nv field_46998 + f Lnet/minecraft/world/item/Item; OAK_FENCE_GATE nw field_8874 + f Lnet/minecraft/world/item/Item; SPRUCE_FENCE_GATE nx field_8653 + f Lnet/minecraft/world/item/Item; BIRCH_FENCE_GATE ny field_8289 + f Lnet/minecraft/world/item/Item; JUNGLE_FENCE_GATE nz field_8097 + f Lnet/minecraft/world/item/Item; EMERALD oA field_8687 + f Lnet/minecraft/world/item/Item; LAPIS_LAZULI oB field_8759 + f Lnet/minecraft/world/item/Item; QUARTZ oC field_8155 + f Lnet/minecraft/world/item/Item; AMETHYST_SHARD oD field_27063 + f Lnet/minecraft/world/item/Item; RAW_IRON oE field_33400 + f Lnet/minecraft/world/item/Item; IRON_INGOT oF field_8620 + f Lnet/minecraft/world/item/Item; RAW_COPPER oG field_33401 + f Lnet/minecraft/world/item/Item; COPPER_INGOT oH field_27022 + f Lnet/minecraft/world/item/Item; RAW_GOLD oI field_33402 + f Lnet/minecraft/world/item/Item; GOLD_INGOT oJ field_8695 + f Lnet/minecraft/world/item/Item; NETHERITE_INGOT oK field_22020 + f Lnet/minecraft/world/item/Item; NETHERITE_SCRAP oL field_22021 + f Lnet/minecraft/world/item/Item; TUFF_STAIRS o field_46999 + f Lnet/minecraft/world/item/Item; WOODEN_SWORD oM field_8091 + f Lnet/minecraft/world/item/Item; WOODEN_SHOVEL oN field_8876 + f Lnet/minecraft/world/item/Item; WOODEN_PICKAXE oO field_8647 + f Lnet/minecraft/world/item/Item; WOODEN_AXE oP field_8406 + f Lnet/minecraft/world/item/Item; WOODEN_HOE oQ field_8167 + f Lnet/minecraft/world/item/Item; STONE_SWORD oR field_8528 + f Lnet/minecraft/world/item/Item; STONE_SHOVEL oS field_8776 + f Lnet/minecraft/world/item/Item; STONE_PICKAXE oT field_8387 + f Lnet/minecraft/world/item/Item; STONE_AXE oU field_8062 + f Lnet/minecraft/world/item/Item; STONE_HOE oV field_8431 + f Lnet/minecraft/world/item/Item; GOLDEN_SWORD oW field_8845 + f Lnet/minecraft/world/item/Item; GOLDEN_SHOVEL oX field_8322 + f Lnet/minecraft/world/item/Item; GOLDEN_PICKAXE oY field_8335 + f Lnet/minecraft/world/item/Item; GOLDEN_AXE oZ field_8825 + f Lnet/minecraft/world/item/Item; JUNGLE_BOAT oa field_8730 + f Lnet/minecraft/world/item/Item; JUNGLE_CHEST_BOAT ob field_38212 + f Lnet/minecraft/world/item/Item; ACACIA_BOAT oc field_8094 + f Lnet/minecraft/world/item/Item; ACACIA_CHEST_BOAT od field_38213 + f Lnet/minecraft/world/item/Item; CHERRY_BOAT oe field_42706 + f Lnet/minecraft/world/item/Item; CHERRY_CHEST_BOAT of field_42707 + f Lnet/minecraft/world/item/Item; DARK_OAK_BOAT og field_8138 + f Lnet/minecraft/world/item/Item; DARK_OAK_CHEST_BOAT oh field_38214 + f Lnet/minecraft/world/item/Item; MANGROVE_BOAT oi field_37531 + f Lnet/minecraft/world/item/Item; MANGROVE_CHEST_BOAT oj field_38215 + f Lnet/minecraft/world/item/Item; BAMBOO_RAFT ok field_40224 + f Lnet/minecraft/world/item/Item; BAMBOO_CHEST_RAFT ol field_40225 + f Lnet/minecraft/world/item/Item; STRUCTURE_BLOCK om field_8238 + f Lnet/minecraft/world/item/Item; JIGSAW on field_16538 + f Lnet/minecraft/world/item/Item; TURTLE_HELMET oo field_8090 + f Lnet/minecraft/world/item/Item; TURTLE_SCUTE op field_8161 + f Lnet/minecraft/world/item/Item; ARMADILLO_SCUTE oq field_47830 + f Lnet/minecraft/world/item/Item; WOLF_ARMOR or field_47831 + f Lnet/minecraft/world/item/Item; FLINT_AND_STEEL os field_8884 + f Lnet/minecraft/world/item/Item; BOWL ot field_8428 + f Lnet/minecraft/world/item/Item; APPLE ou field_8279 + f Lnet/minecraft/world/item/Item; BOW ov field_8102 + f Lnet/minecraft/world/item/Item; ARROW ow field_8107 + f Lnet/minecraft/world/item/Item; COAL ox field_8713 + f Lnet/minecraft/world/item/Item; CHARCOAL oy field_8665 + f Lnet/minecraft/world/item/Item; DIAMOND oz field_8477 + f Lnet/minecraft/world/item/Item; LEATHER_LEGGINGS pA field_8570 + f Lnet/minecraft/world/item/Item; LEATHER_BOOTS pB field_8370 + f Lnet/minecraft/world/item/Item; CHAINMAIL_HELMET pC field_8283 + f Lnet/minecraft/world/item/Item; CHAINMAIL_CHESTPLATE pD field_8873 + f Lnet/minecraft/world/item/Item; CHAINMAIL_LEGGINGS pE field_8218 + f Lnet/minecraft/world/item/Item; CHAINMAIL_BOOTS pF field_8313 + f Lnet/minecraft/world/item/Item; IRON_HELMET pG field_8743 + f Lnet/minecraft/world/item/Item; IRON_CHESTPLATE pH field_8523 + f Lnet/minecraft/world/item/Item; IRON_LEGGINGS pI field_8396 + f Lnet/minecraft/world/item/Item; IRON_BOOTS pJ field_8660 + f Lnet/minecraft/world/item/Item; DIAMOND_HELMET pK field_8805 + f Lnet/minecraft/world/item/Item; DIAMOND_CHESTPLATE pL field_8058 + f Lnet/minecraft/world/item/Item; TUFF_WALL p field_47000 + f Lnet/minecraft/world/item/Item; DIAMOND_LEGGINGS pM field_8348 + f Lnet/minecraft/world/item/Item; DIAMOND_BOOTS pN field_8285 + f Lnet/minecraft/world/item/Item; GOLDEN_HELMET pO field_8862 + f Lnet/minecraft/world/item/Item; GOLDEN_CHESTPLATE pP field_8678 + f Lnet/minecraft/world/item/Item; GOLDEN_LEGGINGS pQ field_8416 + f Lnet/minecraft/world/item/Item; GOLDEN_BOOTS pR field_8753 + f Lnet/minecraft/world/item/Item; NETHERITE_HELMET pS field_22027 + f Lnet/minecraft/world/item/Item; NETHERITE_CHESTPLATE pT field_22028 + f Lnet/minecraft/world/item/Item; NETHERITE_LEGGINGS pU field_22029 + f Lnet/minecraft/world/item/Item; NETHERITE_BOOTS pV field_22030 + f Lnet/minecraft/world/item/Item; FLINT pW field_8145 + f Lnet/minecraft/world/item/Item; PORKCHOP pX field_8389 + f Lnet/minecraft/world/item/Item; COOKED_PORKCHOP pY field_8261 + f Lnet/minecraft/world/item/Item; PAINTING pZ field_8892 + f Lnet/minecraft/world/item/Item; GOLDEN_HOE pa field_8303 + f Lnet/minecraft/world/item/Item; IRON_SWORD pb field_8371 + f Lnet/minecraft/world/item/Item; IRON_SHOVEL pc field_8699 + f Lnet/minecraft/world/item/Item; IRON_PICKAXE pd field_8403 + f Lnet/minecraft/world/item/Item; IRON_AXE pe field_8475 + f Lnet/minecraft/world/item/Item; IRON_HOE pf field_8609 + f Lnet/minecraft/world/item/Item; DIAMOND_SWORD pg field_8802 + f Lnet/minecraft/world/item/Item; DIAMOND_SHOVEL ph field_8250 + f Lnet/minecraft/world/item/Item; DIAMOND_PICKAXE pi field_8377 + f Lnet/minecraft/world/item/Item; DIAMOND_AXE pj field_8556 + f Lnet/minecraft/world/item/Item; DIAMOND_HOE pk field_8527 + f Lnet/minecraft/world/item/Item; NETHERITE_SWORD pl field_22022 + f Lnet/minecraft/world/item/Item; NETHERITE_SHOVEL pm field_22023 + f Lnet/minecraft/world/item/Item; NETHERITE_PICKAXE pn field_22024 + f Lnet/minecraft/world/item/Item; NETHERITE_AXE po field_22025 + f Lnet/minecraft/world/item/Item; NETHERITE_HOE pp field_22026 + f Lnet/minecraft/world/item/Item; STICK pq field_8600 + f Lnet/minecraft/world/item/Item; MUSHROOM_STEW pr field_8208 + f Lnet/minecraft/world/item/Item; STRING ps field_8276 + f Lnet/minecraft/world/item/Item; FEATHER pt field_8153 + f Lnet/minecraft/world/item/Item; GUNPOWDER pu field_8054 + f Lnet/minecraft/world/item/Item; WHEAT_SEEDS pv field_8317 + f Lnet/minecraft/world/item/Item; WHEAT pw field_8861 + f Lnet/minecraft/world/item/Item; BREAD px field_8229 + f Lnet/minecraft/world/item/Item; LEATHER_HELMET py field_8267 + f Lnet/minecraft/world/item/Item; LEATHER_CHESTPLATE pz field_8577 + f Lnet/minecraft/world/item/Item; LAVA_BUCKET qA field_8187 + f Lnet/minecraft/world/item/Item; POWDER_SNOW_BUCKET qB field_27876 + f Lnet/minecraft/world/item/Item; SNOWBALL qC field_8543 + f Lnet/minecraft/world/item/Item; LEATHER qD field_8745 + f Lnet/minecraft/world/item/Item; MILK_BUCKET qE field_8103 + f Lnet/minecraft/world/item/Item; PUFFERFISH_BUCKET qF field_8108 + f Lnet/minecraft/world/item/Item; SALMON_BUCKET qG field_8714 + f Lnet/minecraft/world/item/Item; COD_BUCKET qH field_8666 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH_BUCKET qI field_8478 + f Lnet/minecraft/world/item/Item; AXOLOTL_BUCKET qJ field_28354 + f Lnet/minecraft/world/item/Item; TADPOLE_BUCKET qK field_37533 + f Lnet/minecraft/world/item/Item; BRICK qL field_8621 + f Lnet/minecraft/world/item/Item; CHISELED_TUFF q field_47001 + f Lnet/minecraft/world/item/Item; CLAY_BALL qM field_8696 + f Lnet/minecraft/world/item/Item; DRIED_KELP_BLOCK qN field_17533 + f Lnet/minecraft/world/item/Item; PAPER qO field_8407 + f Lnet/minecraft/world/item/Item; BOOK qP field_8529 + f Lnet/minecraft/world/item/Item; SLIME_BALL qQ field_8777 + f Lnet/minecraft/world/item/Item; EGG qR field_8803 + f Lnet/minecraft/world/item/Item; COMPASS qS field_8251 + f Lnet/minecraft/world/item/Item; RECOVERY_COMPASS qT field_38747 + f Lnet/minecraft/world/item/Item; BUNDLE qU field_27023 + f Lnet/minecraft/world/item/Item; FISHING_ROD qV field_8378 + f Lnet/minecraft/world/item/Item; CLOCK qW field_8557 + f Lnet/minecraft/world/item/Item; SPYGLASS qX field_27070 + f Lnet/minecraft/world/item/Item; GLOWSTONE_DUST qY field_8601 + f Lnet/minecraft/world/item/Item; COD qZ field_8429 + f Lnet/minecraft/world/item/Item; GOLDEN_APPLE qa field_8463 + f Lnet/minecraft/world/item/Item; ENCHANTED_GOLDEN_APPLE qb field_8367 + f Lnet/minecraft/world/item/Item; OAK_SIGN qc field_8788 + f Lnet/minecraft/world/item/Item; SPRUCE_SIGN qd field_8111 + f Lnet/minecraft/world/item/Item; BIRCH_SIGN qe field_8422 + f Lnet/minecraft/world/item/Item; JUNGLE_SIGN qf field_8867 + f Lnet/minecraft/world/item/Item; ACACIA_SIGN qg field_8203 + f Lnet/minecraft/world/item/Item; CHERRY_SIGN qh field_42709 + f Lnet/minecraft/world/item/Item; DARK_OAK_SIGN qi field_8496 + f Lnet/minecraft/world/item/Item; MANGROVE_SIGN qj field_37534 + f Lnet/minecraft/world/item/Item; BAMBOO_SIGN qk field_40228 + f Lnet/minecraft/world/item/Item; CRIMSON_SIGN ql field_22011 + f Lnet/minecraft/world/item/Item; WARPED_SIGN qm field_22012 + f Lnet/minecraft/world/item/Item; OAK_HANGING_SIGN qn field_40229 + f Lnet/minecraft/world/item/Item; SPRUCE_HANGING_SIGN qo field_40230 + f Lnet/minecraft/world/item/Item; BIRCH_HANGING_SIGN qp field_40231 + f Lnet/minecraft/world/item/Item; JUNGLE_HANGING_SIGN qq field_40232 + f Lnet/minecraft/world/item/Item; ACACIA_HANGING_SIGN qr field_40233 + f Lnet/minecraft/world/item/Item; CHERRY_HANGING_SIGN qs field_42708 + f Lnet/minecraft/world/item/Item; DARK_OAK_HANGING_SIGN qt field_40234 + f Lnet/minecraft/world/item/Item; MANGROVE_HANGING_SIGN qu field_40235 + f Lnet/minecraft/world/item/Item; BAMBOO_HANGING_SIGN qv field_40236 + f Lnet/minecraft/world/item/Item; CRIMSON_HANGING_SIGN qw field_40237 + f Lnet/minecraft/world/item/Item; WARPED_HANGING_SIGN qx field_40238 + f Lnet/minecraft/world/item/Item; BUCKET qy field_8550 + f Lnet/minecraft/world/item/Item; WATER_BUCKET qz field_8705 + f Lnet/minecraft/world/item/Item; SUGAR rA field_8479 + f Lnet/minecraft/world/item/Item; CAKE rB field_17534 + f Lnet/minecraft/world/item/Item; WHITE_BED rC field_8258 + f Lnet/minecraft/world/item/Item; ORANGE_BED rD field_8059 + f Lnet/minecraft/world/item/Item; MAGENTA_BED rE field_8349 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_BED rF field_8286 + f Lnet/minecraft/world/item/Item; YELLOW_BED rG field_8863 + f Lnet/minecraft/world/item/Item; LIME_BED rH field_8679 + f Lnet/minecraft/world/item/Item; PINK_BED rI field_8417 + f Lnet/minecraft/world/item/Item; GRAY_BED rJ field_8754 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_BED rK field_8146 + f Lnet/minecraft/world/item/Item; CYAN_BED rL field_8390 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF r field_47002 + f Lnet/minecraft/world/item/Item; PURPLE_BED rM field_8262 + f Lnet/minecraft/world/item/Item; BLUE_BED rN field_8893 + f Lnet/minecraft/world/item/Item; BROWN_BED rO field_8464 + f Lnet/minecraft/world/item/Item; GREEN_BED rP field_8368 + f Lnet/minecraft/world/item/Item; RED_BED rQ field_8789 + f Lnet/minecraft/world/item/Item; BLACK_BED rR field_8112 + f Lnet/minecraft/world/item/Item; COOKIE rS field_8423 + f Lnet/minecraft/world/item/Item; CRAFTER rT field_46791 + f Lnet/minecraft/world/item/Item; FILLED_MAP rU field_8204 + f Lnet/minecraft/world/item/Item; SHEARS rV field_8868 + f Lnet/minecraft/world/item/Item; MELON_SLICE rW field_8497 + f Lnet/minecraft/world/item/Item; DRIED_KELP rX field_8551 + f Lnet/minecraft/world/item/Item; PUMPKIN_SEEDS rY field_46249 + f Lnet/minecraft/world/item/Item; MELON_SEEDS rZ field_46250 + f Lnet/minecraft/world/item/Item; SALMON ra field_8209 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH rb field_8846 + f Lnet/minecraft/world/item/Item; PUFFERFISH rc field_8323 + f Lnet/minecraft/world/item/Item; COOKED_COD rd field_8373 + f Lnet/minecraft/world/item/Item; COOKED_SALMON re field_8509 + f Lnet/minecraft/world/item/Item; INK_SAC rf field_8794 + f Lnet/minecraft/world/item/Item; GLOW_INK_SAC rg field_28410 + f Lnet/minecraft/world/item/Item; COCOA_BEANS rh field_8116 + f Lnet/minecraft/world/item/Item; WHITE_DYE ri field_8446 + f Lnet/minecraft/world/item/Item; ORANGE_DYE rj field_8492 + f Lnet/minecraft/world/item/Item; MAGENTA_DYE rk field_8669 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_DYE rl field_8273 + f Lnet/minecraft/world/item/Item; YELLOW_DYE rm field_8192 + f Lnet/minecraft/world/item/Item; LIME_DYE rn field_8131 + f Lnet/minecraft/world/item/Item; PINK_DYE ro field_8330 + f Lnet/minecraft/world/item/Item; GRAY_DYE rp field_8298 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_DYE rq field_8851 + f Lnet/minecraft/world/item/Item; CYAN_DYE rr field_8632 + f Lnet/minecraft/world/item/Item; PURPLE_DYE rs field_8296 + f Lnet/minecraft/world/item/Item; BLUE_DYE rt field_8345 + f Lnet/minecraft/world/item/Item; BROWN_DYE ru field_8099 + f Lnet/minecraft/world/item/Item; GREEN_DYE rv field_8408 + f Lnet/minecraft/world/item/Item; RED_DYE rw field_8264 + f Lnet/minecraft/world/item/Item; BLACK_DYE rx field_8226 + f Lnet/minecraft/world/item/Item; BONE_MEAL ry field_8324 + f Lnet/minecraft/world/item/Item; BONE rz field_8606 + f Lnet/minecraft/world/item/Item; BOGGED_SPAWN_EGG sA field_49153 + f Lnet/minecraft/world/item/Item; BREEZE_SPAWN_EGG sB field_47313 + f Lnet/minecraft/world/item/Item; CAT_SPAWN_EGG sC field_16314 + f Lnet/minecraft/world/item/Item; CAMEL_SPAWN_EGG sD field_40239 + f Lnet/minecraft/world/item/Item; CAVE_SPIDER_SPAWN_EGG sE field_8068 + f Lnet/minecraft/world/item/Item; CHICKEN_SPAWN_EGG sF field_8835 + f Lnet/minecraft/world/item/Item; COD_SPAWN_EGG sG field_8661 + f Lnet/minecraft/world/item/Item; COW_SPAWN_EGG sH field_8433 + f Lnet/minecraft/world/item/Item; CREEPER_SPAWN_EGG sI field_8503 + f Lnet/minecraft/world/item/Item; DOLPHIN_SPAWN_EGG sJ field_8751 + f Lnet/minecraft/world/item/Item; DONKEY_SPAWN_EGG sK field_8306 + f Lnet/minecraft/world/item/Item; DROWNED_SPAWN_EGG sL field_8083 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_SLAB s field_47003 + f Lnet/minecraft/world/item/Item; ELDER_GUARDIAN_SPAWN_EGG sM field_8769 + f Lnet/minecraft/world/item/Item; ENDER_DRAGON_SPAWN_EGG sN field_40865 + f Lnet/minecraft/world/item/Item; ENDERMAN_SPAWN_EGG sO field_8374 + f Lnet/minecraft/world/item/Item; ENDERMITE_SPAWN_EGG sP field_8510 + f Lnet/minecraft/world/item/Item; EVOKER_SPAWN_EGG sQ field_8795 + f Lnet/minecraft/world/item/Item; FOX_SPAWN_EGG sR field_18005 + f Lnet/minecraft/world/item/Item; FROG_SPAWN_EGG sS field_37535 + f Lnet/minecraft/world/item/Item; GHAST_SPAWN_EGG sT field_8265 + f Lnet/minecraft/world/item/Item; GLOW_SQUID_SPAWN_EGG sU field_28407 + f Lnet/minecraft/world/item/Item; GOAT_SPAWN_EGG sV field_30905 + f Lnet/minecraft/world/item/Item; GUARDIAN_SPAWN_EGG sW field_8409 + f Lnet/minecraft/world/item/Item; HOGLIN_SPAWN_EGG sX field_22014 + f Lnet/minecraft/world/item/Item; HORSE_SPAWN_EGG sY field_8117 + f Lnet/minecraft/world/item/Item; HUSK_SPAWN_EGG sZ field_8760 + f Lnet/minecraft/world/item/Item; BEEF sa field_8046 + f Lnet/minecraft/world/item/Item; COOKED_BEEF sb field_8176 + f Lnet/minecraft/world/item/Item; CHICKEN sc field_8726 + f Lnet/minecraft/world/item/Item; COOKED_CHICKEN sd field_8544 + f Lnet/minecraft/world/item/Item; ROTTEN_FLESH se field_8511 + f Lnet/minecraft/world/item/Item; ENDER_PEARL sf field_8634 + f Lnet/minecraft/world/item/Item; BLAZE_ROD sg field_8894 + f Lnet/minecraft/world/item/Item; GHAST_TEAR sh field_8070 + f Lnet/minecraft/world/item/Item; GOLD_NUGGET si field_8397 + f Lnet/minecraft/world/item/Item; NETHER_WART sj field_8790 + f Lnet/minecraft/world/item/Item; POTION sk field_8574 + f Lnet/minecraft/world/item/Item; GLASS_BOTTLE sl field_8469 + f Lnet/minecraft/world/item/Item; SPIDER_EYE sm field_8680 + f Lnet/minecraft/world/item/Item; FERMENTED_SPIDER_EYE sn field_8711 + f Lnet/minecraft/world/item/Item; BLAZE_POWDER so field_8183 + f Lnet/minecraft/world/item/Item; MAGMA_CREAM sp field_8135 + f Lnet/minecraft/world/item/Item; BREWING_STAND sq field_8740 + f Lnet/minecraft/world/item/Item; CAULDRON sr field_8638 + f Lnet/minecraft/world/item/Item; ENDER_EYE ss field_8449 + f Lnet/minecraft/world/item/Item; GLISTERING_MELON_SLICE st field_8597 + f Lnet/minecraft/world/item/Item; ARMADILLO_SPAWN_EGG su field_47832 + f Lnet/minecraft/world/item/Item; ALLAY_SPAWN_EGG sv field_38419 + f Lnet/minecraft/world/item/Item; AXOLOTL_SPAWN_EGG sw field_28355 + f Lnet/minecraft/world/item/Item; BAT_SPAWN_EGG sx field_8727 + f Lnet/minecraft/world/item/Item; BEE_SPAWN_EGG sy field_20413 + f Lnet/minecraft/world/item/Item; BLAZE_SPAWN_EGG sz field_8154 + f Lnet/minecraft/world/item/Item; SPIDER_SPAWN_EGG tA field_8185 + f Lnet/minecraft/world/item/Item; SQUID_SPAWN_EGG tB field_8307 + f Lnet/minecraft/world/item/Item; STRAY_SPAWN_EGG tC field_8514 + f Lnet/minecraft/world/item/Item; STRIDER_SPAWN_EGG tD field_23255 + f Lnet/minecraft/world/item/Item; TADPOLE_SPAWN_EGG tE field_37536 + f Lnet/minecraft/world/item/Item; TRADER_LLAMA_SPAWN_EGG tF field_17731 + f Lnet/minecraft/world/item/Item; TROPICAL_FISH_SPAWN_EGG tG field_8612 + f Lnet/minecraft/world/item/Item; TURTLE_SPAWN_EGG tH field_8435 + f Lnet/minecraft/world/item/Item; VEX_SPAWN_EGG tI field_8235 + f Lnet/minecraft/world/item/Item; VILLAGER_SPAWN_EGG tJ field_8086 + f Lnet/minecraft/world/item/Item; VINDICATOR_SPAWN_EGG tK field_8149 + f Lnet/minecraft/world/item/Item; WANDERING_TRADER_SPAWN_EGG tL field_17732 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_STAIRS t field_47004 + f Lnet/minecraft/world/item/Item; WARDEN_SPAWN_EGG tM field_38219 + f Lnet/minecraft/world/item/Item; WITCH_SPAWN_EGG tN field_8254 + f Lnet/minecraft/world/item/Item; WITHER_SPAWN_EGG tO field_40867 + f Lnet/minecraft/world/item/Item; WITHER_SKELETON_SPAWN_EGG tP field_8832 + f Lnet/minecraft/world/item/Item; WOLF_SPAWN_EGG tQ field_8485 + f Lnet/minecraft/world/item/Item; ZOGLIN_SPAWN_EGG tR field_23744 + f Lnet/minecraft/world/item/Item; ZOMBIE_SPAWN_EGG tS field_8441 + f Lnet/minecraft/world/item/Item; ZOMBIE_HORSE_SPAWN_EGG tT field_8728 + f Lnet/minecraft/world/item/Item; ZOMBIE_VILLAGER_SPAWN_EGG tU field_8136 + f Lnet/minecraft/world/item/Item; ZOMBIFIED_PIGLIN_SPAWN_EGG tV field_8093 + f Lnet/minecraft/world/item/Item; EXPERIENCE_BOTTLE tW field_8287 + f Lnet/minecraft/world/item/Item; FIRE_CHARGE tX field_8814 + f Lnet/minecraft/world/item/Item; WIND_CHARGE tY field_49098 + f Lnet/minecraft/world/item/Item; WRITABLE_BOOK tZ field_8674 + f Lnet/minecraft/world/item/Item; IRON_GOLEM_SPAWN_EGG ta field_40864 + f Lnet/minecraft/world/item/Item; LLAMA_SPAWN_EGG tb field_8633 + f Lnet/minecraft/world/item/Item; MAGMA_CUBE_SPAWN_EGG tc field_8852 + f Lnet/minecraft/world/item/Item; MOOSHROOM_SPAWN_EGG td field_8299 + f Lnet/minecraft/world/item/Item; MULE_SPAWN_EGG te field_8331 + f Lnet/minecraft/world/item/Item; OCELOT_SPAWN_EGG tf field_8132 + f Lnet/minecraft/world/item/Item; PANDA_SPAWN_EGG tg field_8193 + f Lnet/minecraft/world/item/Item; PARROT_SPAWN_EGG th field_8274 + f Lnet/minecraft/world/item/Item; PHANTOM_SPAWN_EGG ti field_8670 + f Lnet/minecraft/world/item/Item; PIG_SPAWN_EGG tj field_8493 + f Lnet/minecraft/world/item/Item; PIGLIN_SPAWN_EGG tk field_22401 + f Lnet/minecraft/world/item/Item; PIGLIN_BRUTE_SPAWN_EGG tl field_25777 + f Lnet/minecraft/world/item/Item; PILLAGER_SPAWN_EGG tm field_8325 + f Lnet/minecraft/world/item/Item; POLAR_BEAR_SPAWN_EGG tn field_8346 + f Lnet/minecraft/world/item/Item; PUFFERFISH_SPAWN_EGG to field_8100 + f Lnet/minecraft/world/item/Item; RABBIT_SPAWN_EGG tp field_8227 + f Lnet/minecraft/world/item/Item; RAVAGER_SPAWN_EGG tq field_8297 + f Lnet/minecraft/world/item/Item; SALMON_SPAWN_EGG tr field_8447 + f Lnet/minecraft/world/item/Item; SHEEP_SPAWN_EGG ts field_8607 + f Lnet/minecraft/world/item/Item; SHULKER_SPAWN_EGG tt field_8480 + f Lnet/minecraft/world/item/Item; SILVERFISH_SPAWN_EGG tu field_8564 + f Lnet/minecraft/world/item/Item; SKELETON_SPAWN_EGG tv field_8300 + f Lnet/minecraft/world/item/Item; SKELETON_HORSE_SPAWN_EGG tw field_8232 + f Lnet/minecraft/world/item/Item; SLIME_SPAWN_EGG tx field_8881 + f Lnet/minecraft/world/item/Item; SNIFFER_SPAWN_EGG ty field_42710 + f Lnet/minecraft/world/item/Item; SNOW_GOLEM_SPAWN_EGG tz field_40866 + f Lnet/minecraft/world/item/Item; RABBIT uA field_8504 + f Lnet/minecraft/world/item/Item; COOKED_RABBIT uB field_8752 + f Lnet/minecraft/world/item/Item; RABBIT_STEW uC field_8308 + f Lnet/minecraft/world/item/Item; RABBIT_FOOT uD field_8073 + f Lnet/minecraft/world/item/Item; RABBIT_HIDE uE field_8245 + f Lnet/minecraft/world/item/Item; ARMOR_STAND uF field_8694 + f Lnet/minecraft/world/item/Item; IRON_HORSE_ARMOR uG field_8578 + f Lnet/minecraft/world/item/Item; GOLDEN_HORSE_ARMOR uH field_8560 + f Lnet/minecraft/world/item/Item; DIAMOND_HORSE_ARMOR uI field_8807 + f Lnet/minecraft/world/item/Item; LEATHER_HORSE_ARMOR uJ field_18138 + f Lnet/minecraft/world/item/Item; LEAD uK field_8719 + f Lnet/minecraft/world/item/Item; NAME_TAG uL field_8448 + f Lnet/minecraft/world/item/Item; POLISHED_TUFF_WALL u field_47005 + f Lnet/minecraft/world/item/Item; COMMAND_BLOCK_MINECART uM field_8220 + f Lnet/minecraft/world/item/Item; MUTTON uN field_8748 + f Lnet/minecraft/world/item/Item; COOKED_MUTTON uO field_8347 + f Lnet/minecraft/world/item/Item; WHITE_BANNER uP field_8539 + f Lnet/minecraft/world/item/Item; ORANGE_BANNER uQ field_8824 + f Lnet/minecraft/world/item/Item; MAGENTA_BANNER uR field_8671 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_BANNER uS field_8379 + f Lnet/minecraft/world/item/Item; YELLOW_BANNER uT field_8049 + f Lnet/minecraft/world/item/Item; LIME_BANNER uU field_8778 + f Lnet/minecraft/world/item/Item; PINK_BANNER uV field_8329 + f Lnet/minecraft/world/item/Item; GRAY_BANNER uW field_8617 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_BANNER uX field_8855 + f Lnet/minecraft/world/item/Item; CYAN_BANNER uY field_8629 + f Lnet/minecraft/world/item/Item; PURPLE_BANNER uZ field_8405 + f Lnet/minecraft/world/item/Item; WRITTEN_BOOK ua field_8360 + f Lnet/minecraft/world/item/Item; MACE ub field_49814 + f Lnet/minecraft/world/item/Item; ITEM_FRAME uc field_8143 + f Lnet/minecraft/world/item/Item; GLOW_ITEM_FRAME ud field_28408 + f Lnet/minecraft/world/item/Item; FLOWER_POT ue field_8074 + f Lnet/minecraft/world/item/Item; CARROT uf field_8179 + f Lnet/minecraft/world/item/Item; POTATO ug field_8567 + f Lnet/minecraft/world/item/Item; BAKED_POTATO uh field_8512 + f Lnet/minecraft/world/item/Item; POISONOUS_POTATO ui field_8635 + f Lnet/minecraft/world/item/Item; MAP uj field_8895 + f Lnet/minecraft/world/item/Item; GOLDEN_CARROT uk field_8071 + f Lnet/minecraft/world/item/Item; SKELETON_SKULL ul field_8398 + f Lnet/minecraft/world/item/Item; WITHER_SKELETON_SKULL um field_8791 + f Lnet/minecraft/world/item/Item; PLAYER_HEAD un field_8575 + f Lnet/minecraft/world/item/Item; ZOMBIE_HEAD uo field_8470 + f Lnet/minecraft/world/item/Item; CREEPER_HEAD up field_8681 + f Lnet/minecraft/world/item/Item; DRAGON_HEAD uq field_8712 + f Lnet/minecraft/world/item/Item; PIGLIN_HEAD ur field_41304 + f Lnet/minecraft/world/item/Item; NETHER_STAR us field_8137 + f Lnet/minecraft/world/item/Item; PUMPKIN_PIE ut field_8741 + f Lnet/minecraft/world/item/Item; FIREWORK_ROCKET uu field_8639 + f Lnet/minecraft/world/item/Item; FIREWORK_STAR uv field_8450 + f Lnet/minecraft/world/item/Item; ENCHANTED_BOOK uw field_8598 + f Lnet/minecraft/world/item/Item; NETHER_BRICK ux field_8729 + f Lnet/minecraft/world/item/Item; PRISMARINE_SHARD uy field_8662 + f Lnet/minecraft/world/item/Item; PRISMARINE_CRYSTALS uz field_8434 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_BLOCKS vA field_8425 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CHIRP vB field_8623 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CREATOR vC field_51628 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CREATOR_MUSIC_BOX vD field_51629 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_FAR vE field_8502 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_MALL vF field_8534 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_MELLOHI vG field_8344 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_STAL vH field_8834 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_STRAD vI field_8065 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_WARD vJ field_8355 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_11 vK field_8731 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_WAIT vL field_8806 + f Lnet/minecraft/world/item/Item; TUFF_BRICKS v field_47006 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_OTHERSIDE vM field_35358 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_RELIC vN field_44705 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_5 vO field_38973 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_PIGSTEP vP field_23984 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_PRECIPICE vQ field_51630 + f Lnet/minecraft/world/item/Item; DISC_FRAGMENT_5 vR field_38974 + f Lnet/minecraft/world/item/Item; TRIDENT vS field_8547 + f Lnet/minecraft/world/item/Item; PHANTOM_MEMBRANE vT field_8614 + f Lnet/minecraft/world/item/Item; NAUTILUS_SHELL vU field_8864 + f Lnet/minecraft/world/item/Item; HEART_OF_THE_SEA vV field_8207 + f Lnet/minecraft/world/item/Item; CROSSBOW vW field_8399 + f Lnet/minecraft/world/item/Item; SUSPICIOUS_STEW vX field_8766 + f Lnet/minecraft/world/item/Item; LOOM vY field_8772 + f Lnet/minecraft/world/item/Item; FLOWER_BANNER_PATTERN vZ field_8498 + f Lnet/minecraft/world/item/Item; BLUE_BANNER va field_8128 + f Lnet/minecraft/world/item/Item; BROWN_BANNER vb field_8124 + f Lnet/minecraft/world/item/Item; GREEN_BANNER vc field_8295 + f Lnet/minecraft/world/item/Item; RED_BANNER vd field_8586 + f Lnet/minecraft/world/item/Item; BLACK_BANNER ve field_8572 + f Lnet/minecraft/world/item/Item; END_CRYSTAL vf field_8301 + f Lnet/minecraft/world/item/Item; CHORUS_FRUIT vg field_8233 + f Lnet/minecraft/world/item/Item; POPPED_CHORUS_FRUIT vh field_8882 + f Lnet/minecraft/world/item/Item; TORCHFLOWER_SEEDS vi field_42711 + f Lnet/minecraft/world/item/Item; PITCHER_POD vj field_43195 + f Lnet/minecraft/world/item/Item; BEETROOT vk field_8186 + f Lnet/minecraft/world/item/Item; BEETROOT_SEEDS vl field_8309 + f Lnet/minecraft/world/item/Item; BEETROOT_SOUP vm field_8515 + f Lnet/minecraft/world/item/Item; DRAGON_BREATH vn field_8613 + f Lnet/minecraft/world/item/Item; SPLASH_POTION vo field_8436 + f Lnet/minecraft/world/item/Item; SPECTRAL_ARROW vp field_8236 + f Lnet/minecraft/world/item/Item; TIPPED_ARROW vq field_8087 + f Lnet/minecraft/world/item/Item; LINGERING_POTION vr field_8150 + f Lnet/minecraft/world/item/Item; SHIELD vs field_8255 + f Lnet/minecraft/world/item/Item; TOTEM_OF_UNDYING vt field_8288 + f Lnet/minecraft/world/item/Item; SHULKER_SHELL vu field_8815 + f Lnet/minecraft/world/item/Item; IRON_NUGGET vv field_8675 + f Lnet/minecraft/world/item/Item; KNOWLEDGE_BOOK vw field_8361 + f Lnet/minecraft/world/item/Item; DEBUG_STICK vx field_8688 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_13 vy field_8144 + f Lnet/minecraft/world/item/Item; MUSIC_DISC_CAT vz field_8075 + f Lnet/minecraft/world/item/Item; BEE_NEST wA field_20415 + f Lnet/minecraft/world/item/Item; BEEHIVE wB field_20416 + f Lnet/minecraft/world/item/Item; HONEY_BOTTLE wC field_20417 + f Lnet/minecraft/world/item/Item; HONEYCOMB_BLOCK wD field_21087 + f Lnet/minecraft/world/item/Item; LODESTONE wE field_23256 + f Lnet/minecraft/world/item/Item; CRYING_OBSIDIAN wF field_22421 + f Lnet/minecraft/world/item/Item; BLACKSTONE wG field_23843 + f Lnet/minecraft/world/item/Item; BLACKSTONE_SLAB wH field_23844 + f Lnet/minecraft/world/item/Item; BLACKSTONE_STAIRS wI field_23845 + f Lnet/minecraft/world/item/Item; GILDED_BLACKSTONE wJ field_23847 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE wK field_23848 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_SLAB wL field_23849 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_SLAB w field_47007 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_STAIRS wM field_23832 + f Lnet/minecraft/world/item/Item; CHISELED_POLISHED_BLACKSTONE wN field_23836 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICKS wO field_23837 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_SLAB wP field_23838 + f Lnet/minecraft/world/item/Item; POLISHED_BLACKSTONE_BRICK_STAIRS wQ field_23839 + f Lnet/minecraft/world/item/Item; CRACKED_POLISHED_BLACKSTONE_BRICKS wR field_23841 + f Lnet/minecraft/world/item/Item; RESPAWN_ANCHOR wS field_23141 + f Lnet/minecraft/world/item/Item; CANDLE wT field_27024 + f Lnet/minecraft/world/item/Item; WHITE_CANDLE wU field_27025 + f Lnet/minecraft/world/item/Item; ORANGE_CANDLE wV field_27026 + f Lnet/minecraft/world/item/Item; MAGENTA_CANDLE wW field_27027 + f Lnet/minecraft/world/item/Item; LIGHT_BLUE_CANDLE wX field_27028 + f Lnet/minecraft/world/item/Item; YELLOW_CANDLE wY field_27029 + f Lnet/minecraft/world/item/Item; LIME_CANDLE wZ field_27052 + f Lnet/minecraft/world/item/Item; CREEPER_BANNER_PATTERN wa field_8573 + f Lnet/minecraft/world/item/Item; SKULL_BANNER_PATTERN wb field_8891 + f Lnet/minecraft/world/item/Item; MOJANG_BANNER_PATTERN wc field_8159 + f Lnet/minecraft/world/item/Item; GLOBE_BANNER_PATTERN wd field_18674 + f Lnet/minecraft/world/item/Item; PIGLIN_BANNER_PATTERN we field_23831 + f Lnet/minecraft/world/item/Item; FLOW_BANNER_PATTERN wf field_49815 + f Lnet/minecraft/world/item/Item; GUSTER_BANNER_PATTERN wg field_49816 + f Lnet/minecraft/world/item/Item; GOAT_HORN wh field_39057 + f Lnet/minecraft/world/item/Item; COMPOSTER wi field_17530 + f Lnet/minecraft/world/item/Item; BARREL wj field_16307 + f Lnet/minecraft/world/item/Item; SMOKER wk field_16309 + f Lnet/minecraft/world/item/Item; BLAST_FURNACE wl field_16306 + f Lnet/minecraft/world/item/Item; CARTOGRAPHY_TABLE wm field_16313 + f Lnet/minecraft/world/item/Item; FLETCHING_TABLE wn field_16310 + f Lnet/minecraft/world/item/Item; GRINDSTONE wo field_16311 + f Lnet/minecraft/world/item/Item; SMITHING_TABLE wp field_16308 + f Lnet/minecraft/world/item/Item; STONECUTTER wq field_16305 + f Lnet/minecraft/world/item/Item; BELL wr field_16315 + f Lnet/minecraft/world/item/Item; LANTERN ws field_16539 + f Lnet/minecraft/world/item/Item; SOUL_LANTERN wt field_22016 + f Lnet/minecraft/world/item/Item; SWEET_BERRIES wu field_16998 + f Lnet/minecraft/world/item/Item; GLOW_BERRIES wv field_28659 + f Lnet/minecraft/world/item/Item; CAMPFIRE ww field_17346 + f Lnet/minecraft/world/item/Item; SOUL_CAMPFIRE wx field_23842 + f Lnet/minecraft/world/item/Item; SHROOMLIGHT wy field_22017 + f Lnet/minecraft/world/item/Item; HONEYCOMB wz field_20414 + f Lnet/minecraft/world/item/Item; WARD_ARMOR_TRIM_SMITHING_TEMPLATE xA field_41951 + f Lnet/minecraft/world/item/Item; EYE_ARMOR_TRIM_SMITHING_TEMPLATE xB field_41952 + f Lnet/minecraft/world/item/Item; VEX_ARMOR_TRIM_SMITHING_TEMPLATE xC field_41953 + f Lnet/minecraft/world/item/Item; TIDE_ARMOR_TRIM_SMITHING_TEMPLATE xD field_41954 + f Lnet/minecraft/world/item/Item; SNOUT_ARMOR_TRIM_SMITHING_TEMPLATE xE field_41955 + f Lnet/minecraft/world/item/Item; RIB_ARMOR_TRIM_SMITHING_TEMPLATE xF field_41956 + f Lnet/minecraft/world/item/Item; SPIRE_ARMOR_TRIM_SMITHING_TEMPLATE xG field_41957 + f Lnet/minecraft/world/item/Item; WAYFINDER_ARMOR_TRIM_SMITHING_TEMPLATE xH field_43196 + f Lnet/minecraft/world/item/Item; SHAPER_ARMOR_TRIM_SMITHING_TEMPLATE xI field_43197 + f Lnet/minecraft/world/item/Item; SILENCE_ARMOR_TRIM_SMITHING_TEMPLATE xJ field_43198 + f Lnet/minecraft/world/item/Item; RAISER_ARMOR_TRIM_SMITHING_TEMPLATE xK field_43199 + f Lnet/minecraft/world/item/Item; HOST_ARMOR_TRIM_SMITHING_TEMPLATE xL field_43200 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_STAIRS x field_47008 + f Lnet/minecraft/world/item/Item; FLOW_ARMOR_TRIM_SMITHING_TEMPLATE xM field_49817 + f Lnet/minecraft/world/item/Item; BOLT_ARMOR_TRIM_SMITHING_TEMPLATE xN field_49818 + f Lnet/minecraft/world/item/Item; ANGLER_POTTERY_SHERD xO field_43201 + f Lnet/minecraft/world/item/Item; ARCHER_POTTERY_SHERD xP field_43202 + f Lnet/minecraft/world/item/Item; ARMS_UP_POTTERY_SHERD xQ field_43203 + f Lnet/minecraft/world/item/Item; BLADE_POTTERY_SHERD xR field_43204 + f Lnet/minecraft/world/item/Item; BREWER_POTTERY_SHERD xS field_43205 + f Lnet/minecraft/world/item/Item; BURN_POTTERY_SHERD xT field_43206 + f Lnet/minecraft/world/item/Item; DANGER_POTTERY_SHERD xU field_43207 + f Lnet/minecraft/world/item/Item; EXPLORER_POTTERY_SHERD xV field_43208 + f Lnet/minecraft/world/item/Item; FLOW_POTTERY_SHERD xW field_49819 + f Lnet/minecraft/world/item/Item; FRIEND_POTTERY_SHERD xX field_43209 + f Lnet/minecraft/world/item/Item; GUSTER_POTTERY_SHERD xY field_49820 + f Lnet/minecraft/world/item/Item; HEART_POTTERY_SHERD xZ field_43210 + f Lnet/minecraft/world/item/Item; PINK_CANDLE xa field_27053 + f Lnet/minecraft/world/item/Item; GRAY_CANDLE xb field_27054 + f Lnet/minecraft/world/item/Item; LIGHT_GRAY_CANDLE xc field_27055 + f Lnet/minecraft/world/item/Item; CYAN_CANDLE xd field_27056 + f Lnet/minecraft/world/item/Item; PURPLE_CANDLE xe field_27057 + f Lnet/minecraft/world/item/Item; BLUE_CANDLE xf field_27058 + f Lnet/minecraft/world/item/Item; BROWN_CANDLE xg field_27059 + f Lnet/minecraft/world/item/Item; GREEN_CANDLE xh field_27060 + f Lnet/minecraft/world/item/Item; RED_CANDLE xi field_27061 + f Lnet/minecraft/world/item/Item; BLACK_CANDLE xj field_27062 + f Lnet/minecraft/world/item/Item; SMALL_AMETHYST_BUD xk field_27066 + f Lnet/minecraft/world/item/Item; MEDIUM_AMETHYST_BUD xl field_27067 + f Lnet/minecraft/world/item/Item; LARGE_AMETHYST_BUD xm field_27068 + f Lnet/minecraft/world/item/Item; AMETHYST_CLUSTER xn field_27069 + f Lnet/minecraft/world/item/Item; POINTED_DRIPSTONE xo field_28042 + f Lnet/minecraft/world/item/Item; OCHRE_FROGLIGHT xp field_37539 + f Lnet/minecraft/world/item/Item; VERDANT_FROGLIGHT xq field_37540 + f Lnet/minecraft/world/item/Item; PEARLESCENT_FROGLIGHT xr field_37541 + f Lnet/minecraft/world/item/Item; FROGSPAWN xs field_37542 + f Lnet/minecraft/world/item/Item; ECHO_SHARD xt field_38746 + f Lnet/minecraft/world/item/Item; BRUSH xu field_42716 + f Lnet/minecraft/world/item/Item; NETHERITE_UPGRADE_SMITHING_TEMPLATE xv field_41946 + f Lnet/minecraft/world/item/Item; SENTRY_ARMOR_TRIM_SMITHING_TEMPLATE xw field_41947 + f Lnet/minecraft/world/item/Item; DUNE_ARMOR_TRIM_SMITHING_TEMPLATE xx field_41948 + f Lnet/minecraft/world/item/Item; COAST_ARMOR_TRIM_SMITHING_TEMPLATE xy field_41949 + f Lnet/minecraft/world/item/Item; WILD_ARMOR_TRIM_SMITHING_TEMPLATE xz field_41950 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_BULB yA field_47025 + f Lnet/minecraft/world/item/Item; TRIAL_SPAWNER yB field_47314 + f Lnet/minecraft/world/item/Item; TRIAL_KEY yC field_47315 + f Lnet/minecraft/world/item/Item; OMINOUS_TRIAL_KEY yD field_50139 + f Lnet/minecraft/world/item/Item; VAULT yE field_48847 + f Lnet/minecraft/world/item/Item; OMINOUS_BOTTLE yF field_50140 + f Lnet/minecraft/world/item/Item; BREEZE_ROD yG field_49821 + f Lnet/minecraft/world/item/Item; TUFF_BRICK_WALL y field_47016 + f Lnet/minecraft/world/item/Item; HEARTBREAK_POTTERY_SHERD ya field_43211 + f Lnet/minecraft/world/item/Item; HOWL_POTTERY_SHERD yb field_43212 + f Lnet/minecraft/world/item/Item; MINER_POTTERY_SHERD yc field_43213 + f Lnet/minecraft/world/item/Item; MOURNER_POTTERY_SHERD yd field_43214 + f Lnet/minecraft/world/item/Item; PLENTY_POTTERY_SHERD ye field_43215 + f Lnet/minecraft/world/item/Item; PRIZE_POTTERY_SHERD yf field_43216 + f Lnet/minecraft/world/item/Item; SCRAPE_POTTERY_SHERD yg field_49822 + f Lnet/minecraft/world/item/Item; SHEAF_POTTERY_SHERD yh field_43217 + f Lnet/minecraft/world/item/Item; SHELTER_POTTERY_SHERD yi field_43218 + f Lnet/minecraft/world/item/Item; SKULL_POTTERY_SHERD yj field_43219 + f Lnet/minecraft/world/item/Item; SNORT_POTTERY_SHERD yk field_43220 + f Lnet/minecraft/world/item/Item; COPPER_GRATE yl field_47009 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_GRATE ym field_47010 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_GRATE yn field_47011 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_GRATE yo field_47012 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_GRATE yp field_47013 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_GRATE yq field_47014 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_GRATE yr field_47015 + f Lnet/minecraft/world/item/Item; WAXED_OXIDIZED_COPPER_GRATE ys field_47017 + f Lnet/minecraft/world/item/Item; COPPER_BULB yt field_47018 + f Lnet/minecraft/world/item/Item; EXPOSED_COPPER_BULB yu field_47019 + f Lnet/minecraft/world/item/Item; WEATHERED_COPPER_BULB yv field_47020 + f Lnet/minecraft/world/item/Item; OXIDIZED_COPPER_BULB yw field_47021 + f Lnet/minecraft/world/item/Item; WAXED_COPPER_BULB yx field_47022 + f Lnet/minecraft/world/item/Item; WAXED_EXPOSED_COPPER_BULB yy field_47023 + f Lnet/minecraft/world/item/Item; WAXED_WEATHERED_COPPER_BULB yz field_47024 + f Lnet/minecraft/world/item/Item; CHISELED_TUFF_BRICKS z field_47026 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_51348 + p 0 key + p 1 item + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_7990 + p 0 key + p 1 item + m (Lnet/minecraft/world/item/BlockItem;)Lnet/minecraft/world/item/Item; registerBlock a method_7993 + p 0 item + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58095 a method_58095 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; registerBlock a method_7989 + p 0 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerBlock a method_7992 + p 0 block + p 1 item + m (Lnet/minecraft/world/level/block/Block;Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/item/Item; registerBlock a method_58096 + p 0 block + p 1 propertiesModifier + m (Lnet/minecraft/world/level/block/Block;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/Item; registerBlock a method_35220 + p 0 block + p 1 others + m (Ljava/lang/String;Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/Item; registerItem a method_7991 + p 0 key + p 1 item + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58097 b method_58097 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58098 c method_58098 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58099 d method_58099 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58100 e method_58100 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58101 f method_58101 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58102 g method_58102 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58103 h method_58103 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58104 i method_58104 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58105 j method_58105 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58106 k method_58106 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58107 l method_58107 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58108 m method_58108 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58109 n method_58109 + m (Lnet/minecraft/world/item/Item$Properties;)Lnet/minecraft/world/item/Item$Properties; method_58110 o method_58110 + m ()V + m ()V +c net/minecraft/world/item/JukeboxPlayable cuu net/minecraft/class_9792 + f Lcom/mojang/serialization/Codec; CODEC a field_52025 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_52026 + f Lnet/minecraft/world/item/EitherHolder; song c comp_2833 + f Z showInTooltip d comp_2834 + m ()Lnet/minecraft/world/item/EitherHolder; song a comp_2833 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60746 a method_60746 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/ItemInteractionResult; tryInsertIntoJukebox a method_60747 + p 0 level + p 1 pos + p 2 stack + p 3 player + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)V method_60748 a method_60748 + m (Z)Lnet/minecraft/world/item/JukeboxPlayable; withTooltip a method_60749 + p 1 showInTooltip + m ()Z showInTooltip b comp_2834 + m (Lnet/minecraft/world/item/EitherHolder;Z)V + m ()V +c net/minecraft/world/item/JukeboxSong cuv net/minecraft/class_9793 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_52027 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_52028 + f Lcom/mojang/serialization/Codec; CODEC c field_52029 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_52030 + f Lnet/minecraft/core/Holder; soundEvent e comp_2835 + f Lnet/minecraft/network/chat/Component; description f comp_2836 + f F lengthInSeconds g comp_2837 + f I comparatorOutput h comp_2838 + f I SONG_END_PADDING_TICKS i field_52031 + m ()I lengthInTicks a method_60750 + m (J)Z hasFinished a method_60751 + p 1 ticksSinceSongStarted + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60752 a method_60752 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; fromStack a method_60753 + p 0 registries + p 1 stack + m ()Lnet/minecraft/core/Holder; soundEvent b comp_2835 + m ()Lnet/minecraft/network/chat/Component; description c comp_2836 + m ()F lengthInSeconds d comp_2837 + m ()I comparatorOutput e comp_2838 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;FI)V + m ()V +c net/minecraft/world/item/JukeboxSongPlayer cuw net/minecraft/class_9794 + f I PLAY_EVENT_INTERVAL_TICKS a field_52032 + f J ticksSinceSongStarted b field_52033 + f Lnet/minecraft/core/Holder; song c field_52034 + f Lnet/minecraft/core/BlockPos; blockPos d field_52035 + f Lnet/minecraft/world/item/JukeboxSongPlayer$OnSongChanged; onSongChanged e field_52036 + m ()Z isPlaying a method_60754 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;)V stop a method_60755 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V spawnMusicParticles a method_60756 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/Holder;)V play a method_60757 + p 1 level + p 2 song + m (Lnet/minecraft/core/Holder;J)V setSongWithoutPlaying a method_60758 + p 1 song + p 2 ticksSinceSongStarted + m ()Lnet/minecraft/world/item/JukeboxSong; getSong b method_60759 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;)V tick b method_60760 + p 1 level + p 2 state + m ()J getTicksSinceSongStarted c method_60761 + m ()Z shouldEmitJukeboxPlayingEvent d method_60763 + m (Lnet/minecraft/world/item/JukeboxSongPlayer$OnSongChanged;Lnet/minecraft/core/BlockPos;)V + p 1 onSongChanged + p 2 blockPos +c net/minecraft/world/item/JukeboxSongPlayer$OnSongChanged cuw$a net/minecraft/class_9794$class_9795 +c net/minecraft/world/item/JukeboxSongs cux net/minecraft/class_9796 + f Lnet/minecraft/resources/ResourceKey; THIRTEEN a field_52037 + f Lnet/minecraft/resources/ResourceKey; CAT b field_52038 + f Lnet/minecraft/resources/ResourceKey; BLOCKS c field_52039 + f Lnet/minecraft/resources/ResourceKey; CHIRP d field_52040 + f Lnet/minecraft/resources/ResourceKey; FAR e field_52041 + f Lnet/minecraft/resources/ResourceKey; MALL f field_52042 + f Lnet/minecraft/resources/ResourceKey; MELLOHI g field_52043 + f Lnet/minecraft/resources/ResourceKey; STAL h field_52044 + f Lnet/minecraft/resources/ResourceKey; STRAD i field_52045 + f Lnet/minecraft/resources/ResourceKey; WARD j field_52046 + f Lnet/minecraft/resources/ResourceKey; ELEVEN k field_52047 + f Lnet/minecraft/resources/ResourceKey; WAIT l field_52048 + f Lnet/minecraft/resources/ResourceKey; PIGSTEP m field_52049 + f Lnet/minecraft/resources/ResourceKey; OTHERSIDE n field_52050 + f Lnet/minecraft/resources/ResourceKey; FIVE o field_52051 + f Lnet/minecraft/resources/ResourceKey; RELIC p field_52052 + f Lnet/minecraft/resources/ResourceKey; PRECIPICE q field_52053 + f Lnet/minecraft/resources/ResourceKey; CREATOR r field_52054 + f Lnet/minecraft/resources/ResourceKey; CREATOR_MUSIC_BOX s field_52055 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_60764 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60765 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;II)V register a method_60766 + p 0 context + p 1 key + p 2 soundEvent + p 3 lengthInSeconds + p 4 comparatorOutput + m ()V +c net/minecraft/world/item/KnowledgeBookItem cuy net/minecraft/class_1801 + f Lorg/slf4j/Logger; LOGGER a field_8042 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/LeadItem cuz net/minecraft/class_1804 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Leashable;)Z method_55761 a method_55761 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/InteractionResult; bindPlayerMobs a method_7994 + p 0 player + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Ljava/util/List; leashableInArea a method_61166 + p 0 level + p 1 pos + p 2 predicate + m (Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)Z method_61167 a method_61167 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/LingeringPotionItem cva net/minecraft/class_1803 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MaceItem cvb net/minecraft/class_9362 + f F SMASH_ATTACK_FALL_THRESHOLD a field_49823 + f F SMASH_ATTACK_KNOCKBACK_RADIUS b field_49999 + f I DEFAULT_ATTACK_DAMAGE c field_49824 + f F DEFAULT_ATTACK_SPEED j field_49825 + f F SMASH_ATTACK_HEAVY_THRESHOLD k field_50141 + f F SMASH_ATTACK_KNOCKBACK_POWER l field_50000 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;)V method_58409 a method_58409 + m (Lnet/minecraft/world/entity/LivingEntity;)Z canSmashAttack a method_58659 + p 0 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)Ljava/util/function/Predicate; knockbackPredicate a method_58660 + p 0 player + p 1 entity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/LivingEntity;)Z method_58661 a method_58661 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/Vec3;)D getKnockbackPower a method_58662 + p 0 player + p 1 entity + p 2 entityPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)V knockback a method_58411 + p 0 level + p 1 player + p 2 entity + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes h method_59532 + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58412 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MapItem cvc net/minecraft/class_1806 + f I IMAGE_WIDTH a field_30907 + f I IMAGE_HEIGHT b field_30908 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;)V renderBiomePreviewMap a method_8002 + p 0 serverLevel + p 1 stack + m (Lnet/minecraft/world/level/Level;IIBZZ)Lnet/minecraft/world/item/ItemStack; create a method_8005 + p 0 level + p 1 levelX + p 2 levelZ + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + m (Lnet/minecraft/world/level/Level;IIIZZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapId; createNewSavedData a method_32349 + p 0 level + p 1 x + p 2 z + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + p 6 dimension + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V update a method_7998 + p 1 level + p 2 viewer + p 3 data + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)V lockMap a method_17442 + p 0 level + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getCorrectStateForFluidBlock a method_7995 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/network/chat/Component; getTooltipForId a method_53836 + p 0 mapId + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getSavedData a method_7997 + p 0 mapId + p 1 level + m ([ZII)Z isBiomeWatery a method_38988 + p 0 wateryMap + p 1 xSample + p 2 zSample + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getSavedData b method_8001 + p 0 stack + p 1 level + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;)V scaleMap c method_7996 + p 0 stack + p 1 level + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MapItem$1 cvc$1 net/minecraft/class_1806$1 + f [I $SwitchMap$net$minecraft$world$item$component$MapPostProcessing a field_49271 + m ()V +c net/minecraft/world/item/MilkBucketItem cvd net/minecraft/class_1805 + f I DRINK_DURATION a field_30911 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/MinecartItem cve net/minecraft/class_1808 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_ITEM_BEHAVIOR a field_8896 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type; type b field_8897 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart$Type;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/item/MinecartItem$1 cve$1 net/minecraft/class_1808$1 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; defaultDispenseItemBehavior c field_8898 + m ()V +c net/minecraft/world/item/MobBucketItem cvf net/minecraft/class_1785 + f Lcom/mojang/serialization/MapCodec; VARIANT_FIELD_CODEC a field_49272 + f Lnet/minecraft/world/entity/EntityType; type b field_7991 + f Lnet/minecraft/sounds/SoundEvent; emptySound c field_28356 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V spawn a method_7824 + p 1 serverLevel + p 2 bucketedMobStack + p 3 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/item/Item$Properties;)V + p 1 type + p 2 content + p 3 emptySound + p 4 properties + m ()V +c net/minecraft/world/item/NameTagItem cvg net/minecraft/class_1807 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/OminousBottleItem cvh net/minecraft/class_9462 + f I EFFECT_DURATION a field_50143 + f I MIN_AMPLIFIER b field_50144 + f I MAX_AMPLIFIER c field_50145 + f I DRINK_DURATION j field_50146 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PickaxeItem cvi net/minecraft/class_1810 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PlaceOnWaterBlockItem cvj net/minecraft/class_1841 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/PlayerHeadItem cvk net/minecraft/class_1809 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ResolvableProfile;)V method_57388 a method_57388 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 wallBlock + p 3 properties +c net/minecraft/world/item/PotionItem cvl net/minecraft/class_1812 + f I DRINK_DURATION a field_30917 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;)V method_57389 a method_57389 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ProjectileItem cvm net/minecraft/class_9463 + m (Lnet/minecraft/world/entity/projectile/Projectile;DDDFF)V shoot a method_58654 + p 1 projectile + p 2 x + p 4 y + p 6 z + p 8 velocity + p 9 inaccuracy + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Position;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/entity/projectile/Projectile; asProjectile a method_58648 + p 1 level + p 2 pos + p 3 stack + p 4 direction + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; createDispenseConfig c method_58653 +c net/minecraft/world/item/ProjectileItem$DispenseConfig cvm$a net/minecraft/class_9463$class_9464 + f Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; DEFAULT a field_50147 + f Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction b comp_2544 + f F uncertainty c comp_2545 + f F power d comp_2546 + f Ljava/util/OptionalInt; overrideDispenseEvent e comp_2547 + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; builder a method_58663 + m ()Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction b comp_2544 + m ()F uncertainty c comp_2545 + m ()F power d comp_2546 + m ()Ljava/util/OptionalInt; overrideDispenseEvent e comp_2547 + m (Lnet/minecraft/world/item/ProjectileItem$PositionFunction;FFLjava/util/OptionalInt;)V + m ()V +c net/minecraft/world/item/ProjectileItem$DispenseConfig$Builder cvm$a$a net/minecraft/class_9463$class_9464$class_9465 + f Lnet/minecraft/world/item/ProjectileItem$PositionFunction; positionFunction a field_50148 + f F uncertainty b field_50149 + f F power c field_50150 + f Ljava/util/OptionalInt; overrideDispenseEvent d field_50151 + m ()Lnet/minecraft/world/item/ProjectileItem$DispenseConfig; build a method_58664 + m (F)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; uncertainty a method_58665 + p 1 uncertainty + m (I)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; overrideDispenseEvent a method_58666 + p 1 overrideDispenseEvent + m (Lnet/minecraft/world/item/ProjectileItem$PositionFunction;)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; positionFunction a method_58667 + p 1 positionFunction + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58668 a method_58668 + m (F)Lnet/minecraft/world/item/ProjectileItem$DispenseConfig$Builder; power b method_58669 + p 1 power + m ()V +c net/minecraft/world/item/ProjectileItem$PositionFunction cvm$b net/minecraft/class_9463$class_9466 +c net/minecraft/world/item/ProjectileWeaponItem cvn net/minecraft/class_1811 + f Ljava/util/function/Predicate; ARROW_ONLY c field_18281 + f Ljava/util/function/Predicate; ARROW_OR_FIREWORK j field_18282 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Ljava/util/List;FFZLnet/minecraft/world/entity/LivingEntity;)V shoot a method_57393 + p 1 level + p 2 shooter + p 3 hand + p 4 weapon + p 5 projectileItems + p 6 velocity + p 7 inaccuracy + p 8 isCrit + p 9 target + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/projectile/Projectile;IFFFLnet/minecraft/world/entity/LivingEntity;)V shootProjectile a method_7763 + p 1 shooter + p 2 projectile + p 3 index + p 4 velocity + p 5 inaccuracy + p 6 angle + p 7 target + m (Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Predicate;)Lnet/minecraft/world/item/ItemStack; getHeldProjectile a method_18815 + p 0 shooter + p 1 isAmmo + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/List; draw a method_57390 + p 0 weapon + p 1 ammo + p 2 shooter + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Z)Lnet/minecraft/world/item/ItemStack; useAmmo a method_57391 + p 0 weapon + p 1 ammo + p 2 shooter + p 3 intangable + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/world/entity/projectile/Projectile; createProjectile a method_57344 + p 1 level + p 2 shooter + p 3 weapon + p 4 ammo + p 5 isCrit + m ()Ljava/util/function/Predicate; getAllSupportedProjectiles b method_19268 + c Get the predicate to match ammunition when searching the player's inventory, not their main/offhand + m ()I getDefaultProjectileRange c method_24792 + m ()Ljava/util/function/Predicate; getSupportedHeldProjectiles d method_20310 + m (Lnet/minecraft/world/item/ItemStack;)Z method_18816 i method_18816 + m (Lnet/minecraft/world/item/ItemStack;)I getDurabilityUse j method_57345 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z method_18817 k method_18817 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/item/Rarity cvo net/minecraft/class_1814 + f Lnet/minecraft/world/item/Rarity; COMMON a field_8906 + f Lnet/minecraft/world/item/Rarity; UNCOMMON b field_8907 + f Lnet/minecraft/world/item/Rarity; RARE c field_8903 + f Lnet/minecraft/world/item/Rarity; EPIC d field_8904 + f Lcom/mojang/serialization/Codec; CODEC e field_50001 + f Ljava/util/function/IntFunction; BY_ID f field_50002 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_50003 + f I id h field_50004 + f Ljava/lang/String; name i field_50005 + f Lnet/minecraft/ChatFormatting; color j field_8908 + f [Lnet/minecraft/world/item/Rarity; $VALUES k field_8905 + m ()Lnet/minecraft/ChatFormatting; color a method_58413 + m (Lnet/minecraft/world/item/Rarity;)I method_58414 a method_58414 + m ()[Lnet/minecraft/world/item/Rarity; $values b method_36683 + m (Lnet/minecraft/world/item/Rarity;)I method_58415 b method_58415 + m (Ljava/lang/String;IILjava/lang/String;Lnet/minecraft/ChatFormatting;)V + p 3 id + p 4 name + p 5 color + m ()V +c net/minecraft/world/item/SaddleItem cvp net/minecraft/class_1816 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ScaffoldingBlockItem cvq net/minecraft/class_3734 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 properties +c net/minecraft/world/item/ServerItemCooldowns cvr net/minecraft/class_1817 + f Lnet/minecraft/server/level/ServerPlayer; player a field_8910 + m (Lnet/minecraft/server/level/ServerPlayer;)V + p 1 player +c net/minecraft/world/item/ShearsItem cvs net/minecraft/class_1820 + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties h method_58416 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ShieldItem cvt net/minecraft/class_1819 + f I EFFECTIVE_BLOCK_DELAY a field_30918 + f F MINIMUM_DURABILITY_DAMAGE b field_30919 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/ShovelItem cvu net/minecraft/class_1821 + f Ljava/util/Map; FLATTENABLES a field_8912 + c Map used to lookup shovel right click interactions + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + m ()V +c net/minecraft/world/item/SignApplicator cvv net/minecraft/class_8234 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZLnet/minecraft/world/entity/player/Player;)Z tryApplyToSign a method_49798 + p 1 level + p 2 sign + p 3 isFront + p 4 player + m (Lnet/minecraft/world/level/block/entity/SignText;Lnet/minecraft/world/entity/player/Player;)Z canApplyToSign a method_49801 + p 1 text + p 2 player +c net/minecraft/world/item/SignItem cvw net/minecraft/class_1822 + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V + p 1 properties + p 2 standingBlock + p 3 wallBlock + m (Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V + p 1 properties + p 2 standingBlock + p 3 wallBlock + p 4 attachmentDirection +c net/minecraft/world/item/SmithingTemplateItem cvx net/minecraft/class_8052 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SHOVEL A field_41959 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_PICKAXE B field_41960 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_INGOT C field_41961 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_REDSTONE_DUST D field_41962 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_QUARTZ E field_41963 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_EMERALD F field_41964 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_DIAMOND G field_41965 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LAPIS_LAZULI H field_41966 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_AMETHYST_SHARD I field_42472 + f Lnet/minecraft/network/chat/Component; appliesTo J field_41967 + f Lnet/minecraft/network/chat/Component; ingredients K field_41968 + f Lnet/minecraft/network/chat/Component; upgradeDescription L field_41969 + f Lnet/minecraft/network/chat/Component; baseSlotDescription M field_41970 + f Lnet/minecraft/network/chat/Component; additionsSlotDescription N field_41971 + f Ljava/util/List; baseSlotEmptyIcons O field_41972 + f Ljava/util/List; additionalSlotEmptyIcons P field_41973 + f Lnet/minecraft/ChatFormatting; TITLE_FORMAT a field_41974 + f Lnet/minecraft/ChatFormatting; DESCRIPTION_FORMAT b field_41975 + f Lnet/minecraft/network/chat/Component; INGREDIENTS_TITLE c field_41977 + f Lnet/minecraft/network/chat/Component; APPLIES_TO_TITLE j field_41978 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE k field_41979 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_APPLIES_TO l field_41980 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_INGREDIENTS m field_41981 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_BASE_SLOT_DESCRIPTION n field_41982 + f Lnet/minecraft/network/chat/Component; ARMOR_TRIM_ADDITIONS_SLOT_DESCRIPTION o field_41983 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_APPLIES_TO p field_41984 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_INGREDIENTS q field_41985 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_BASE_SLOT_DESCRIPTION r field_41986 + f Lnet/minecraft/network/chat/Component; NETHERITE_UPGRADE_ADDITIONS_SLOT_DESCRIPTION s field_41987 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_HELMET t field_41988 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_CHESTPLATE u field_41989 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LEGGINGS v field_41990 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_BOOTS w field_41991 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_HOE x field_41992 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_AXE y field_41993 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SWORD z field_41958 + m ()Ljava/util/List; createNetheriteUpgradeMaterialList A method_48417 + m (Lnet/minecraft/resources/ResourceKey;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/SmithingTemplateItem; createArmorTrimTemplate a method_48418 + p 0 key + p 1 requiredFeatures + m (Lnet/minecraft/resources/ResourceLocation;[Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/SmithingTemplateItem; createArmorTrimTemplate a method_48419 + p 0 name + p 1 requiredFeatures + m ()Lnet/minecraft/world/item/SmithingTemplateItem; createNetheriteUpgradeTemplate h method_48420 + m ()Lnet/minecraft/network/chat/Component; getBaseSlotDescription k method_48421 + m ()Lnet/minecraft/network/chat/Component; getAdditionSlotDescription l method_48422 + m ()Ljava/util/List; getBaseSlotEmptyIcons m method_48423 + m ()Ljava/util/List; getAdditionalSlotEmptyIcons n method_48413 + m ()Ljava/util/List; createTrimmableArmorIconList x method_48414 + m ()Ljava/util/List; createTrimmableMaterialIconList y method_48415 + m ()Ljava/util/List; createNetheriteUpgradeIconList z method_48416 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/util/List;[Lnet/minecraft/world/flag/FeatureFlag;)V + p 1 appliesTo + p 2 ingredients + p 3 upgradeDescription + p 4 baseSlotDescription + p 5 additionsSlotDescription + p 6 baseSlotEmptyIcons + p 7 additionalSlotEmptyIcons + p 8 requiredFeatures + m ()V +c net/minecraft/world/item/SnowballItem cvy net/minecraft/class_1823 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SolidBucketItem cvz net/minecraft/class_5634 + f Lnet/minecraft/sounds/SoundEvent; placeSound a field_27877 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/item/Item$Properties;)V + p 1 block + p 2 placeSound + p 3 properties +c net/minecraft/world/item/SpawnEggItem cwa net/minecraft/class_1826 + f Ljava/util/Map; BY_ID a field_8914 + f Lcom/mojang/serialization/MapCodec; ENTITY_TYPE_FIELD_CODEC b field_49273 + f I backgroundColor c field_8916 + f I highlightColor j field_8915 + f Lnet/minecraft/world/entity/EntityType; defaultType k field_8917 + m (I)I getColor a method_8016 + p 1 tintIndex + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/item/SpawnEggItem; byId a method_8019 + p 0 type + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; spawnOffspringFromSpawnEgg a method_24793 + p 1 player + p 2 mob + p 3 entityType + p 4 serverLevel + p 5 pos + p 6 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EntityType;)Z spawnsEntity a method_8018 + p 1 stack + p 2 entityType + m ()Ljava/lang/Iterable; eggs h method_8017 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/EntityType; getType i method_8015 + p 1 stack + m (Lnet/minecraft/world/entity/EntityType;IILnet/minecraft/world/item/Item$Properties;)V + p 1 defaultType + p 2 backgroundColor + p 3 highlightColor + p 4 properties + m ()V +c net/minecraft/world/item/SpectralArrowItem cwb net/minecraft/class_1825 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/SplashPotionItem cwc net/minecraft/class_1828 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SpyglassItem cwd net/minecraft/class_5538 + f I USE_DURATION a field_30921 + f F ZOOM_FOV_MODIFIER b field_30922 + m (Lnet/minecraft/world/entity/LivingEntity;)V stopUsing a method_31582 + p 1 user + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/StandingAndWallBlockItem cwe net/minecraft/class_1827 + f Lnet/minecraft/world/level/block/Block; wallBlock a field_8918 + f Lnet/minecraft/core/Direction; attachmentDirection b field_40240 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z canPlace a method_45431 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/item/Item$Properties;Lnet/minecraft/core/Direction;)V + p 1 block + p 2 wallBlock + p 3 properties + p 4 attachmentDirection +c net/minecraft/world/item/SuspiciousStewItem cwf net/minecraft/class_1830 + f I DEFAULT_DURATION a field_41069 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/SwordItem cwg net/minecraft/class_1829 + m (Lnet/minecraft/world/item/Tier;IF)Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes a method_57394 + p 0 tier + p 1 attackDamage + p 2 attackSpeed + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58417 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 properties +c net/minecraft/world/item/ThrowablePotionItem cwh net/minecraft/class_4537 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/Tier cwi net/minecraft/class_1832 + m ()I getUses a method_8025 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/component/Tool; createToolProperties a method_58418 + p 1 block + m ()F getSpeed b method_8027 + m ()F getAttackDamageBonus c method_8028 + m ()Lnet/minecraft/tags/TagKey; getIncorrectBlocksForDrops d method_58419 + m ()I getEnchantmentValue e method_8026 + m ()Lnet/minecraft/world/item/crafting/Ingredient; getRepairIngredient f method_8023 +c net/minecraft/world/item/TieredItem cwj net/minecraft/class_1831 + f Lnet/minecraft/world/item/Tier; tier a field_8921 + m ()Lnet/minecraft/world/item/Tier; getTier h method_8022 + m (Lnet/minecraft/world/item/Tier;Lnet/minecraft/world/item/Item$Properties;)V + p 1 tier + p 2 properties +c net/minecraft/world/item/Tiers cwk net/minecraft/class_1834 + f Lnet/minecraft/world/item/Tiers; WOOD a field_8922 + f Lnet/minecraft/world/item/Tiers; STONE b field_8927 + f Lnet/minecraft/world/item/Tiers; IRON c field_8923 + f Lnet/minecraft/world/item/Tiers; DIAMOND d field_8930 + f Lnet/minecraft/world/item/Tiers; GOLD e field_8929 + f Lnet/minecraft/world/item/Tiers; NETHERITE f field_22033 + f Lnet/minecraft/tags/TagKey; incorrectBlocksForDrops g field_50006 + f I uses h field_8924 + f F speed i field_8932 + f F damage j field_8931 + f I enchantmentValue k field_8933 + f Ljava/util/function/Supplier; repairIngredient l field_8928 + f [Lnet/minecraft/world/item/Tiers; $VALUES m field_8926 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_24361 g method_24361 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8033 h method_8033 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8032 i method_8032 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8030 j method_8030 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8031 k method_8031 + m ()Lnet/minecraft/world/item/crafting/Ingredient; method_8029 l method_8029 + m ()[Lnet/minecraft/world/item/Tiers; $values m method_36684 + m (Ljava/lang/String;ILnet/minecraft/tags/TagKey;IFFILjava/util/function/Supplier;)V + p 3 incorrectBlockForDrops + p 4 uses + p 5 speed + p 6 damage + p 7 enchantmentValue + p 8 repairIngredient + m ()V +c net/minecraft/world/item/TippedArrowItem cwl net/minecraft/class_1833 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/TooltipFlag cwm net/minecraft/class_1836 + f Lnet/minecraft/world/item/TooltipFlag$Default; NORMAL a field_41070 + f Lnet/minecraft/world/item/TooltipFlag$Default; ADVANCED b field_41071 + m ()Z isAdvanced a method_8035 + m ()Z isCreative b method_47370 + m ()V +c net/minecraft/world/item/TooltipFlag$Default cwm$a net/minecraft/class_1836$class_1837 + f Z advanced c comp_1152 + f Z creative d comp_1153 + m ()Lnet/minecraft/world/item/TooltipFlag$Default; asCreative c method_47371 + m ()Z advanced d comp_1152 + m ()Z creative e comp_1153 + m (ZZ)V +c net/minecraft/world/item/TridentItem cwn net/minecraft/class_1835 + f I THROW_THRESHOLD_TIME a field_30926 + f F BASE_DAMAGE b field_30927 + f F SHOOT_POWER c field_30928 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; createAttributes h method_57395 + m (Lnet/minecraft/world/item/ItemStack;)Z isTooDamagedToUse i method_61168 + p 0 stack + m ()Lnet/minecraft/world/item/component/Tool; createToolProperties k method_58420 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/UseAnim cwo net/minecraft/class_1839 + f Lnet/minecraft/world/item/UseAnim; NONE a field_8952 + f Lnet/minecraft/world/item/UseAnim; EAT b field_8950 + f Lnet/minecraft/world/item/UseAnim; DRINK c field_8946 + f Lnet/minecraft/world/item/UseAnim; BLOCK d field_8949 + f Lnet/minecraft/world/item/UseAnim; BOW e field_8953 + f Lnet/minecraft/world/item/UseAnim; SPEAR f field_8951 + f Lnet/minecraft/world/item/UseAnim; CROSSBOW g field_8947 + f Lnet/minecraft/world/item/UseAnim; SPYGLASS h field_27079 + f Lnet/minecraft/world/item/UseAnim; TOOT_HORN i field_39058 + f Lnet/minecraft/world/item/UseAnim; BRUSH j field_42717 + f [Lnet/minecraft/world/item/UseAnim; $VALUES k field_8948 + m ()[Lnet/minecraft/world/item/UseAnim; $values a method_36686 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/item/WindChargeItem cwp net/minecraft/class_9239 + f I COOLDOWN a field_49099 + m (Lnet/minecraft/core/dispenser/BlockSource;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Position; method_58670 a method_58670 + m (Lnet/minecraft/world/item/Item$Properties;)V +c net/minecraft/world/item/WritableBookItem cwq net/minecraft/class_1840 + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/WrittenBookItem cwr net/minecraft/class_1843 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)Z resolveBookComponents a method_8054 + p 0 bookStack + p 1 resolvingSource + p 2 resolvingPlayer + m (Lnet/minecraft/world/item/Item$Properties;)V + p 1 properties +c net/minecraft/world/item/alchemy/Potion cws net/minecraft/class_1842 + c Defines a type of potion in the game. These are used to associate one or more effects with items such as the bottled potion or the tipped arrows. + f Lcom/mojang/serialization/Codec; CODEC a field_51947 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_51948 + f Ljava/lang/String; name c field_8954 + c The base name for the potion type. + f Ljava/util/List; effects d field_8955 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures e field_50152 + m ()Ljava/util/List; getEffects a method_8049 + c Gets the base effects applied by the potion.\n@return The effects applied by the potion. + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_57396 a method_57396 + m (Ljava/util/Optional;Ljava/lang/String;)Ljava/lang/String; getName a method_8051 + p 0 potion + p 1 descriptionId + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/item/alchemy/Potion; requiredFeatures a method_58671 + p 1 requiredFeatures + m ()Z hasInstantEffects b method_8050 + c Checks if the potion contains any instant effects such as instant health or instant damage.\n@return Whether the potion contained an instant effect. + m ([Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 effects + m (Ljava/lang/String;[Lnet/minecraft/world/effect/MobEffectInstance;)V + p 1 name + p 2 effects + m ()V +c net/minecraft/world/item/alchemy/PotionBrewing cwt net/minecraft/class_1845 + f I BREWING_TIME_SECONDS a field_30942 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; EMPTY b field_51402 + f Ljava/util/List; containers c field_51403 + f Ljava/util/List; potionMixes d field_51404 + f Ljava/util/List; containerMixes e field_51405 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/item/alchemy/PotionBrewing; bootstrap a method_8076 + p 0 enabledFeatures + m (Lnet/minecraft/world/item/ItemStack;)Z isIngredient a method_8077 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasMix a method_8072 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/alchemy/PotionBrewing$Builder;)V addVanillaMixes a method_59699 + p 0 builder + m (Lnet/minecraft/core/Holder;)Z isBrewablePotion a method_20361 + p 1 potion + m (Lnet/minecraft/world/item/ItemStack;)Z isContainerIngredient b method_8079 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasContainerMix b method_8070 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/ItemStack;)Z isPotionIngredient c method_8069 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z hasPotionMix c method_8075 + p 1 reagent + p 2 potionItem + m (Lnet/minecraft/world/item/ItemStack;)Z isContainer d method_59700 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; mix d method_8078 + p 1 potion + p 2 potionItem + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 containers + p 2 potionMixes + p 3 containerMixes + m ()V +c net/minecraft/world/item/alchemy/PotionBrewing$Builder cwt$a net/minecraft/class_1845$class_9665 + c

Interface {@link net.fabricmc.fabric.api.registry.FabricBrewingRecipeRegistryBuilder} injected by mod fabric-content-registries-v0

+ f Ljava/util/List; containers a field_51406 + f Ljava/util/List; potionMixes b field_51407 + f Ljava/util/List; containerMixes c field_51408 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d field_51409 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; build a method_59701 + m (Lnet/minecraft/world/item/Item;)V addContainer a method_59702 + p 1 container + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)V addContainerRecipe a method_59703 + p 1 input + p 2 reagent + p 3 result + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)V addStartMix a method_59704 + p 1 reagent + p 2 result + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)V addMix a method_59705 + p 1 input + p 2 reagent + p 3 result + m (Lnet/minecraft/world/item/Item;)V expectPotion b method_59706 + p 0 item + m (Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 1 enabledFeatures +c net/minecraft/world/item/alchemy/PotionBrewing$Mix cwt$b net/minecraft/class_1845$class_1846 + f Lnet/minecraft/core/Holder; from a comp_2190 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient b comp_2191 + f Lnet/minecraft/core/Holder; to c comp_2192 + m ()Lnet/minecraft/core/Holder; from a comp_2190 + m ()Lnet/minecraft/world/item/crafting/Ingredient; ingredient b comp_2191 + m ()Lnet/minecraft/core/Holder; to c comp_2192 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/core/Holder;)V +c net/minecraft/world/item/alchemy/PotionContents cwu net/minecraft/class_1844 + f Lnet/minecraft/world/item/alchemy/PotionContents; EMPTY a field_49274 + f Lcom/mojang/serialization/Codec; CODEC b field_49275 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49276 + f Ljava/util/Optional; potion d comp_2378 + f Ljava/util/Optional; customColor e comp_2379 + f Ljava/util/List; customEffects f comp_2380 + f Lnet/minecraft/network/chat/Component; NO_EFFECT g field_25817 + f I BASE_POTION_COLOR h field_49277 + f Lcom/mojang/serialization/Codec; FULL_CODEC i field_49749 + m ()Ljava/lang/Iterable; getAllEffects a method_57397 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/world/item/alchemy/PotionContents; withEffectAdded a method_57398 + p 1 effect + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57399 a method_57399 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/ItemStack; createItemStack a method_57400 + p 0 item + p 1 potion + m (Ljava/lang/Iterable;)I getColor a method_8055 + p 0 effects + m (Ljava/lang/Iterable;Ljava/util/function/Consumer;FF)V addPotionTooltip a method_8065 + p 0 effects + p 1 tooltipAdder + p 2 durationFactor + p 3 ticksPerSecond + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;)V method_55762 a method_55762 + m (Ljava/util/function/Consumer;)V forEachEffect a method_57402 + p 1 action + m (Ljava/util/function/Consumer;FF)V addPotionTooltip a method_47372 + p 1 tooltipAdder + p 2 durationFactor + p 3 ticksPerSecond + m (Lnet/minecraft/core/Holder;)Z is a method_57401 + p 1 potion + m ()I getColor b method_8064 + m (Ljava/lang/Iterable;)Ljava/util/OptionalInt; getColorOptional b method_58111 + p 0 effects + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/item/alchemy/PotionContents; withPotion b method_57403 + p 1 potion + m ()Z hasEffects c method_57405 + m (Lnet/minecraft/core/Holder;)I getColor c method_8062 + p 0 potion + m ()Ljava/util/List; customEffects d comp_2380 + m ()Ljava/util/Optional; potion e comp_2378 + m ()Ljava/util/Optional; customColor f comp_2379 + m (Lnet/minecraft/core/Holder;)V + p 1 potion + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/List;)V + m ()V +c net/minecraft/world/item/alchemy/Potions cwv net/minecraft/class_1847 + c Defines all of the potion types registered by Minecraft itself.\n@see net.minecraft.core.Registry#POTION + f Lnet/minecraft/core/Holder; HARMING A field_9004 + f Lnet/minecraft/core/Holder; STRONG_HARMING B field_8973 + f Lnet/minecraft/core/Holder; POISON C field_8982 + f Lnet/minecraft/core/Holder; LONG_POISON D field_9002 + f Lnet/minecraft/core/Holder; STRONG_POISON E field_8972 + f Lnet/minecraft/core/Holder; REGENERATION F field_8986 + f Lnet/minecraft/core/Holder; LONG_REGENERATION G field_9003 + f Lnet/minecraft/core/Holder; STRONG_REGENERATION H field_8992 + f Lnet/minecraft/core/Holder; STRENGTH I field_8978 + f Lnet/minecraft/core/Holder; LONG_STRENGTH J field_8965 + f Lnet/minecraft/core/Holder; STRONG_STRENGTH K field_8993 + f Lnet/minecraft/core/Holder; WEAKNESS L field_8975 + f Lnet/minecraft/core/Holder; LONG_WEAKNESS M field_8970 + f Lnet/minecraft/core/Holder; LUCK N field_8995 + f Lnet/minecraft/core/Holder; SLOW_FALLING O field_8974 + f Lnet/minecraft/core/Holder; LONG_SLOW_FALLING P field_8964 + f Lnet/minecraft/core/Holder; WIND_CHARGED Q field_50153 + f Lnet/minecraft/core/Holder; WEAVING R field_50154 + f Lnet/minecraft/core/Holder; OOZING S field_50155 + f Lnet/minecraft/core/Holder; INFESTED T field_50156 + f Lnet/minecraft/core/Holder; WATER a field_8991 + f Lnet/minecraft/core/Holder; MUNDANE b field_8967 + f Lnet/minecraft/core/Holder; THICK c field_8985 + f Lnet/minecraft/core/Holder; AWKWARD d field_8999 + f Lnet/minecraft/core/Holder; NIGHT_VISION e field_8968 + f Lnet/minecraft/core/Holder; LONG_NIGHT_VISION f field_8981 + f Lnet/minecraft/core/Holder; INVISIBILITY g field_8997 + f Lnet/minecraft/core/Holder; LONG_INVISIBILITY h field_9000 + f Lnet/minecraft/core/Holder; LEAPING i field_8979 + f Lnet/minecraft/core/Holder; LONG_LEAPING j field_8971 + f Lnet/minecraft/core/Holder; STRONG_LEAPING k field_8998 + f Lnet/minecraft/core/Holder; FIRE_RESISTANCE l field_8987 + f Lnet/minecraft/core/Holder; LONG_FIRE_RESISTANCE m field_8969 + f Lnet/minecraft/core/Holder; SWIFTNESS n field_9005 + f Lnet/minecraft/core/Holder; LONG_SWIFTNESS o field_8983 + f Lnet/minecraft/core/Holder; STRONG_SWIFTNESS p field_8966 + f Lnet/minecraft/core/Holder; SLOWNESS q field_8996 + f Lnet/minecraft/core/Holder; LONG_SLOWNESS r field_8989 + f Lnet/minecraft/core/Holder; STRONG_SLOWNESS s field_8976 + f Lnet/minecraft/core/Holder; TURTLE_MASTER t field_8990 + f Lnet/minecraft/core/Holder; LONG_TURTLE_MASTER u field_8988 + f Lnet/minecraft/core/Holder; STRONG_TURTLE_MASTER v field_8977 + f Lnet/minecraft/core/Holder; WATER_BREATHING w field_8994 + f Lnet/minecraft/core/Holder; LONG_WATER_BREATHING x field_9001 + f Lnet/minecraft/core/Holder; HEALING y field_8963 + f Lnet/minecraft/core/Holder; STRONG_HEALING z field_8980 + m (Ljava/lang/String;Lnet/minecraft/world/item/alchemy/Potion;)Lnet/minecraft/core/Holder; register a method_8084 + p 0 name + p 1 potion + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55763 + p 0 registry + m ()V + m ()V +c net/minecraft/world/item/alchemy/package-info cww net/minecraft/class_6080 +c net/minecraft/world/item/armortrim/ArmorTrim cwx net/minecraft/class_8053 + f Lcom/mojang/serialization/Codec; CODEC a field_41994 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49278 + f Lnet/minecraft/network/chat/Component; UPGRADE_TITLE c field_41997 + f Lnet/minecraft/core/Holder; material d field_41998 + f Lnet/minecraft/core/Holder; pattern e field_41999 + f Z showInTooltip f field_49279 + f Ljava/util/function/Function; innerTexture g field_42000 + f Ljava/util/function/Function; outerTexture h field_42001 + m ()Lnet/minecraft/core/Holder; pattern a method_48424 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57406 a method_57406 + m (Lnet/minecraft/world/item/armortrim/ArmorTrim;)Ljava/lang/Boolean; method_57407 a method_57407 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_57408 a method_57408 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; innerTexture a method_48434 + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Z hasPatternAndMaterial a method_48427 + p 1 pattern + p 2 material + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; method_57411 a method_57411 + m (Z)Lnet/minecraft/world/item/armortrim/ArmorTrim; withTooltip a method_58421 + p 1 showInTooltip + m ()Lnet/minecraft/core/Holder; material b method_48431 + m (Lnet/minecraft/world/item/armortrim/ArmorTrim;)Ljava/lang/Boolean; method_57410 b method_57410 + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_57412 b method_57412 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; outerTexture b method_48436 + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Ljava/lang/String; getColorPaletteSuffix b method_48577 + p 0 trimMaterial + p 1 armorMaterial + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Lnet/minecraft/resources/ResourceLocation; method_57413 b method_57413 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;ZLjava/util/function/Function;Ljava/util/function/Function;)V + p 1 material + p 2 pattern + p 3 showInTooltip + p 4 innerTexture + p 5 outerTexture + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Z)V + p 1 material + p 2 pattern + p 3 showInTooltip + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 material + p 2 pattern + m ()V +c net/minecraft/world/item/armortrim/TrimMaterial cwy net/minecraft/class_8054 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42002 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49280 + f Lcom/mojang/serialization/Codec; CODEC c field_42003 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49281 + f Ljava/lang/String; assetName e comp_1208 + f Lnet/minecraft/core/Holder; ingredient f comp_1209 + f F itemModelIndex g comp_1210 + f Ljava/util/Map; overrideArmorMaterials h comp_1237 + f Lnet/minecraft/network/chat/Component; description i comp_1212 + m ()Ljava/lang/String; assetName a comp_1208 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48437 a method_48437 + m (Ljava/lang/String;Lnet/minecraft/world/item/Item;FLnet/minecraft/network/chat/Component;Ljava/util/Map;)Lnet/minecraft/world/item/armortrim/TrimMaterial; create a method_48438 + p 0 assetName + p 1 ingredient + p 2 itemModelIndex + p 3 description + p 4 overrideArmorMaterials + m ()Lnet/minecraft/core/Holder; ingredient b comp_1209 + m ()F itemModelIndex c comp_1210 + m ()Ljava/util/Map; overrideArmorMaterials d comp_1237 + m ()Lnet/minecraft/network/chat/Component; description e comp_1212 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;FLjava/util/Map;Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/world/item/armortrim/TrimMaterials cwz net/minecraft/class_8055 + f Lnet/minecraft/resources/ResourceKey; QUARTZ a field_42004 + f Lnet/minecraft/resources/ResourceKey; IRON b field_42005 + f Lnet/minecraft/resources/ResourceKey; NETHERITE c field_42006 + f Lnet/minecraft/resources/ResourceKey; REDSTONE d field_42007 + f Lnet/minecraft/resources/ResourceKey; COPPER e field_42008 + f Lnet/minecraft/resources/ResourceKey; GOLD f field_42009 + f Lnet/minecraft/resources/ResourceKey; EMERALD g field_42010 + f Lnet/minecraft/resources/ResourceKey; DIAMOND h field_42011 + f Lnet/minecraft/resources/ResourceKey; LAPIS i field_42012 + f Lnet/minecraft/resources/ResourceKey; AMETHYST j field_42013 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder$Reference;)Z method_48439 a method_48439 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; registryKey a method_48441 + p 0 key + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getFromIngredient a method_48440 + p 0 regustries + p 1 ingredient + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48442 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;Lnet/minecraft/network/chat/Style;F)V register a method_48578 + p 0 context + p 1 materialKey + p 2 ingredient + p 3 style + p 4 itemModelIndex + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/Item;Lnet/minecraft/network/chat/Style;FLjava/util/Map;)V register a method_48443 + p 0 context + p 1 materialKey + p 2 ingredient + p 3 style + p 4 itemModelIndex + p 5 overrideArmorMaterials + m ()V + m ()V +c net/minecraft/world/item/armortrim/TrimPattern cxa net/minecraft/class_8056 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42014 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49282 + f Lcom/mojang/serialization/Codec; CODEC c field_42015 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49283 + f Lnet/minecraft/resources/ResourceLocation; assetId e comp_1213 + f Lnet/minecraft/core/Holder; templateItem f comp_1214 + f Lnet/minecraft/network/chat/Component; description g comp_1215 + f Z decal h comp_1905 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_1213 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48445 a method_48445 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/Component; copyWithStyle a method_48446 + p 1 trimMaterial + m ()Lnet/minecraft/core/Holder; templateItem b comp_1214 + m ()Lnet/minecraft/network/chat/Component; description c comp_1215 + m ()Z decal d comp_1905 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/network/chat/Component;Z)V + m ()V +c net/minecraft/world/item/armortrim/TrimPatterns cxb net/minecraft/class_8057 + f Lnet/minecraft/resources/ResourceKey; SENTRY a field_42016 + f Lnet/minecraft/resources/ResourceKey; DUNE b field_42017 + f Lnet/minecraft/resources/ResourceKey; COAST c field_42018 + f Lnet/minecraft/resources/ResourceKey; WILD d field_42019 + f Lnet/minecraft/resources/ResourceKey; WARD e field_42020 + f Lnet/minecraft/resources/ResourceKey; EYE f field_42021 + f Lnet/minecraft/resources/ResourceKey; VEX g field_42022 + f Lnet/minecraft/resources/ResourceKey; TIDE h field_42023 + f Lnet/minecraft/resources/ResourceKey; SNOUT i field_42024 + f Lnet/minecraft/resources/ResourceKey; RIB j field_42025 + f Lnet/minecraft/resources/ResourceKey; SPIRE k field_42026 + f Lnet/minecraft/resources/ResourceKey; WAYFINDER l field_43221 + f Lnet/minecraft/resources/ResourceKey; SHAPER m field_43222 + f Lnet/minecraft/resources/ResourceKey; SILENCE n field_43223 + f Lnet/minecraft/resources/ResourceKey; RAISER o field_43224 + f Lnet/minecraft/resources/ResourceKey; HOST p field_43225 + f Lnet/minecraft/resources/ResourceKey; FLOW q field_49827 + f Lnet/minecraft/resources/ResourceKey; BOLT r field_49828 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder$Reference;)Z method_48447 a method_48447 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; registryKey a method_48449 + p 0 key + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getFromTemplate a method_48448 + p 0 registries + p 1 template + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_48450 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceKey;)V register a method_48451 + p 0 context + p 1 templateItem + p 2 trimPatternKey + m ()V + m ()V +c net/minecraft/world/item/armortrim/package-info cxc net/minecraft/class_8058 +c net/minecraft/world/item/component/BlockItemStateProperties cxd net/minecraft/class_9275 + f Lnet/minecraft/world/item/component/BlockItemStateProperties; EMPTY a field_49284 + f Lcom/mojang/serialization/Codec; CODEC b field_49285 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49286 + f Ljava/util/Map; properties d comp_2381 + f Lnet/minecraft/network/codec/StreamCodec; PROPERTIES_STREAM_CODEC e field_49287 + m ()Z isEmpty a method_57414 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; apply a method_57415 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/BlockState; method_57416 a method_57416 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_57417 + p 0 state + p 1 property + p 2 propertyName + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Comparable; get a method_57418 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/component/BlockItemStateProperties; with a method_57419 + p 1 property + p 2 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Lnet/minecraft/world/item/component/BlockItemStateProperties; with a method_57420 + p 1 property + p 2 value + m ()Ljava/util/Map; properties b comp_2381 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/BookContent cxe net/minecraft/class_9364 + m ()Ljava/util/List; pages a comp_2422 + m (Ljava/util/List;)Ljava/lang/Object; withReplacedPages a method_58186 + p 1 newPages +c net/minecraft/world/item/component/BundleContents cxf net/minecraft/class_9276 + f Lnet/minecraft/world/item/component/BundleContents; EMPTY a field_49289 + f Lcom/mojang/serialization/Codec; CODEC b field_49290 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49291 + f Lorg/apache/commons/lang3/math/Fraction; BUNDLE_IN_BUNDLE_WEIGHT d field_49292 + f I NO_STACK_INDEX e field_49293 + f Ljava/util/List; items f field_49294 + f Lorg/apache/commons/lang3/math/Fraction; weight g field_49295 + m ()Ljava/util/stream/Stream; itemCopyStream a method_59707 + m (I)Lnet/minecraft/world/item/ItemStack; getItemUnsafe a method_57422 + p 1 index + m (Lnet/minecraft/world/item/ItemStack;)Lorg/apache/commons/lang3/math/Fraction; getWeight a method_57423 + p 0 stack + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/List; method_57424 a method_57424 + m (Ljava/util/List;)Lorg/apache/commons/lang3/math/Fraction; computeContentWeight a method_57425 + p 0 content + m ()Ljava/lang/Iterable; items b method_57421 + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/List; method_57427 b method_57427 + m ()Ljava/lang/Iterable; itemsCopy c method_59708 + m ()I size d method_57426 + m ()Lorg/apache/commons/lang3/math/Fraction; weight e method_57428 + m ()Z isEmpty f method_57429 + m (Ljava/util/List;Lorg/apache/commons/lang3/math/Fraction;)V + p 1 items + p 2 weight + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/BundleContents$Mutable cxf$a net/minecraft/class_9276$class_9277 + f Ljava/util/List; items a field_49296 + f Lorg/apache/commons/lang3/math/Fraction; weight b field_49297 + m ()Lnet/minecraft/world/item/component/BundleContents$Mutable; clearItems a method_59709 + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/world/entity/player/Player;)I tryTransfer a method_57431 + p 1 slot + p 2 player + m (Lnet/minecraft/world/item/ItemStack;)I tryInsert a method_57432 + p 1 stack + m ()Lnet/minecraft/world/item/ItemStack; removeOne b method_57430 + m (Lnet/minecraft/world/item/ItemStack;)I findStackIndex b method_57434 + p 1 stack + m ()Lorg/apache/commons/lang3/math/Fraction; weight c method_57433 + m (Lnet/minecraft/world/item/ItemStack;)I getMaxAmountToAdd c method_57436 + p 1 stack + m ()Lnet/minecraft/world/item/component/BundleContents; toImmutable d method_57435 + m (Lnet/minecraft/world/item/component/BundleContents;)V + p 1 contents +c net/minecraft/world/item/component/ChargedProjectiles cxg net/minecraft/class_9278 + f Lnet/minecraft/world/item/component/ChargedProjectiles; EMPTY a field_49298 + f Lcom/mojang/serialization/Codec; CODEC b field_49299 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49300 + f Ljava/util/List; items d field_49301 + m ()Ljava/util/List; getItems a method_57437 + m (Lnet/minecraft/world/item/Item;)Z contains a method_57438 + p 1 item + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/component/ChargedProjectiles; of a method_57439 + p 0 stack + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/List; method_57440 a method_57440 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ChargedProjectiles; of a method_57441 + p 0 stack + m ()Z isEmpty b method_57442 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/List; method_57443 b method_57443 + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/CustomData cxh net/minecraft/class_9279 + f Lnet/minecraft/world/item/component/CustomData; EMPTY a field_49302 + f Lcom/mojang/serialization/Codec; CODEC b field_49303 + f Lcom/mojang/serialization/Codec; CODEC_WITH_ID c field_49304 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49305 + f Lorg/slf4j/Logger; LOGGER e field_51522 + f Lnet/minecraft/nbt/CompoundTag; tag f field_49306 + m ()I size a method_57444 + m (Lnet/minecraft/world/entity/Entity;)V loadInto a method_57445 + p 1 entity + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapDecoder;)Lcom/mojang/serialization/DataResult; read a method_59980 + p 1 ops + p 2 decoder + m (Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapEncoder;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; update a method_57447 + p 1 ops + p 2 encoder + p 3 value + m (Lcom/mojang/serialization/MapDecoder;)Lcom/mojang/serialization/DataResult; read a method_57446 + p 1 decoder + m (Lnet/minecraft/world/item/component/CustomData;)Lnet/minecraft/nbt/CompoundTag; method_57448 a method_57448 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/HolderLookup$Provider;)Z loadInto a method_57449 + p 1 blockEntity + p 2 levelRegistry + m (Ljava/lang/String;)Z contains a method_57450 + p 1 key + m (Ljava/util/function/Consumer;)Lnet/minecraft/world/item/component/CustomData; update a method_57451 + p 1 updater + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Consumer;)V update a method_57452 + p 0 componentType + p 1 stack + p 2 updater + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/nbt/CompoundTag;)V set a method_57453 + p 0 componentType + p 1 stack + p 2 tag + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/function/Predicate; itemMatcher a method_57454 + p 0 componentType + p 1 tag + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/item/ItemStack;)Z method_57455 a method_57455 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/item/component/CustomData; of a method_57456 + p 0 tag + m (Lnet/minecraft/nbt/Tag;)Lnet/minecraft/world/item/component/CustomData; method_57457 a method_57457 + m ()Z isEmpty b method_57458 + m (Lnet/minecraft/world/item/component/CustomData;)Lcom/mojang/serialization/DataResult; method_57459 b method_57459 + m (Lnet/minecraft/nbt/CompoundTag;)Z matchedBy b method_57460 + p 1 tag + m ()Lnet/minecraft/nbt/CompoundTag; copyTag c method_57461 + m (Lnet/minecraft/world/item/component/CustomData;)Ljava/lang/String; method_57462 c method_57462 + m ()Lnet/minecraft/nbt/CompoundTag; getUnsafe d method_57463 + m (Lnet/minecraft/world/item/component/CustomData;)Lnet/minecraft/nbt/CompoundTag; method_57464 d method_57464 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/item/component/CustomModelData cxi net/minecraft/class_9280 + f Lnet/minecraft/world/item/component/CustomModelData; DEFAULT a field_49307 + f Lcom/mojang/serialization/Codec; CODEC b field_49308 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49309 + f I value d comp_2382 + m ()I value a comp_2382 + m (I)V + m ()V +c net/minecraft/world/item/component/DebugStickState cxj net/minecraft/class_9281 + f Lnet/minecraft/world/item/component/DebugStickState; EMPTY a field_49310 + f Lcom/mojang/serialization/Codec; CODEC b field_49311 + f Ljava/util/Map; properties c comp_2383 + m ()Ljava/util/Map; properties a comp_2383 + m (Lnet/minecraft/core/Holder;)Lcom/mojang/serialization/Codec; method_57465 a method_57465 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/item/component/DebugStickState; withProperty a method_57466 + p 1 block + p 2 property + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_57467 a method_57467 + m (Lnet/minecraft/core/Holder;Ljava/lang/String;)Ljava/lang/String; method_57468 b method_57468 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/DyedItemColor cxk net/minecraft/class_9282 + f Lcom/mojang/serialization/Codec; CODEC a field_49312 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49313 + f I LEATHER_COLOR c field_49314 + f I rgb d comp_2384 + f Z showInTooltip e comp_2385 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49750 + m ()I rgb a comp_2384 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57469 a method_57469 + m (Lnet/minecraft/world/item/ItemStack;I)I getOrDefault a method_57470 + p 0 stack + p 1 defaultValue + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;)Lnet/minecraft/world/item/ItemStack; applyDyes a method_57471 + p 0 stack + p 1 dyes + m (Ljava/lang/Integer;)Lnet/minecraft/world/item/component/DyedItemColor; method_58112 a method_58112 + m (Z)Lnet/minecraft/world/item/component/DyedItemColor; withTooltip a method_58422 + p 1 showInTooltip + m ()Z showInTooltip b comp_2385 + m (IZ)V + m ()V +c net/minecraft/world/item/component/FireworkExplosion cxl net/minecraft/class_9283 + f Lnet/minecraft/world/item/component/FireworkExplosion; DEFAULT a field_49315 + f Lcom/mojang/serialization/Codec; COLOR_LIST_CODEC b field_49318 + f Lcom/mojang/serialization/Codec; CODEC c field_49316 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49317 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; shape e comp_2386 + f Lit/unimi/dsi/fastutil/ints/IntList; colors f comp_2387 + f Lit/unimi/dsi/fastutil/ints/IntList; fadeColors g comp_2388 + f Z hasTrail h comp_2389 + f Z hasTwinkle i comp_2390 + f Lnet/minecraft/network/codec/StreamCodec; COLOR_LIST_STREAM_CODEC j field_49319 + f Lnet/minecraft/network/chat/Component; CUSTOM_COLOR_NAME k field_49320 + m ()Lnet/minecraft/world/item/component/FireworkExplosion$Shape; shape a comp_2386 + m (I)Lnet/minecraft/network/chat/Component; getColorName a method_57472 + p 0 id + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57473 a method_57473 + m (Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/world/item/component/FireworkExplosion; withFadeColors a method_57474 + p 1 fadeColors + m (Ljava/util/function/Consumer;)V addShapeNameTooltip a method_57475 + p 1 tooltipAdder + m (Lnet/minecraft/network/chat/MutableComponent;Lit/unimi/dsi/fastutil/ints/IntList;)Lnet/minecraft/network/chat/Component; appendColors a method_57476 + p 0 component + p 1 colors + m ()Lit/unimi/dsi/fastutil/ints/IntList; colors b comp_2387 + m (Ljava/util/function/Consumer;)V addAdditionalTooltip b method_57477 + p 1 tooltipAdder + m ()Lit/unimi/dsi/fastutil/ints/IntList; fadeColors c comp_2388 + m ()Z hasTrail d comp_2389 + m ()Z hasTwinkle e comp_2390 + m (Lnet/minecraft/world/item/component/FireworkExplosion$Shape;Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V + m ()V +c net/minecraft/world/item/component/FireworkExplosion$Shape cxl$a net/minecraft/class_9283$class_1782 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; SMALL_BALL a field_7976 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; LARGE_BALL b field_7977 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; STAR c field_7973 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; CREEPER d field_7974 + f Lnet/minecraft/world/item/component/FireworkExplosion$Shape; BURST e field_7970 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC f field_49321 + f Lcom/mojang/serialization/Codec; CODEC g field_49322 + f Ljava/util/function/IntFunction; BY_ID h field_7975 + f I id i field_7972 + f Ljava/lang/String; name j field_7971 + f [Lnet/minecraft/world/item/component/FireworkExplosion$Shape; $VALUES k field_7978 + m ()Lnet/minecraft/network/chat/MutableComponent; getName a method_7812 + m (I)Lnet/minecraft/world/item/component/FireworkExplosion$Shape; byId a method_7813 + p 0 id + m ()I getId b method_7816 + m ()[Lnet/minecraft/world/item/component/FireworkExplosion$Shape; $values d method_36677 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/item/component/Fireworks cxm net/minecraft/class_9284 + f I MAX_EXPLOSIONS a field_49325 + f Lcom/mojang/serialization/Codec; CODEC b field_49323 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49324 + f I flightDuration d comp_2391 + f Ljava/util/List; explosions e comp_2392 + m ()I flightDuration a comp_2391 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57478 a method_57478 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_57479 a method_57479 + m ()Ljava/util/List; explosions b comp_2392 + m (ILjava/util/List;)V + p 1 flightDuration + p 2 explosions + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers cxn net/minecraft/class_9285 + f Lnet/minecraft/world/item/component/ItemAttributeModifiers; EMPTY a field_49326 + f Lcom/mojang/serialization/Codec; CODEC b field_49327 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49328 + f Ljava/text/DecimalFormat; ATTRIBUTE_MODIFIER_FORMAT d field_49329 + f Ljava/util/List; modifiers e comp_2393 + f Z showInTooltip f comp_2394 + f Lcom/mojang/serialization/Codec; FULL_CODEC g field_49751 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers$Builder; builder a method_57480 + m (DLnet/minecraft/world/entity/EquipmentSlot;)D compute a method_57481 + p 1 baseValue + p 3 equipmentSlot + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEach a method_57482 + p 1 equipmentSlot + p 2 action + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEach a method_60618 + p 1 slotGroup + p 2 action + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57483 a method_57483 + m (Ljava/text/DecimalFormat;)V method_57485 a method_57485 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_58113 a method_58113 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; withModifierAdded a method_57484 + p 1 attribute + p 2 modifier + p 3 slot + m (Z)Lnet/minecraft/world/item/component/ItemAttributeModifiers; withTooltip a method_58423 + p 1 showInTooltip + m ()Ljava/util/List; modifiers b comp_2393 + m ()Z showInTooltip c comp_2394 + m (Ljava/util/List;Z)V + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$1 cxn$1 net/minecraft/class_9285$1 + f [I $SwitchMap$net$minecraft$world$entity$ai$attributes$AttributeModifier$Operation a field_49330 + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$Builder cxn$a net/minecraft/class_9285$class_9286 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_49331 + m ()Lnet/minecraft/world/item/component/ItemAttributeModifiers; build a method_57486 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/component/ItemAttributeModifiers$Builder; add a method_57487 + p 1 attribute + p 2 modifier + p 3 slot + m ()V +c net/minecraft/world/item/component/ItemAttributeModifiers$Entry cxn$b net/minecraft/class_9285$class_9287 + f Lcom/mojang/serialization/Codec; CODEC a field_49332 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49333 + f Lnet/minecraft/core/Holder; attribute c comp_2395 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; modifier d comp_2396 + f Lnet/minecraft/world/entity/EquipmentSlotGroup; slot e comp_2397 + m ()Lnet/minecraft/core/Holder; attribute a comp_2395 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57488 a method_57488 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;)Z matches a method_60767 + p 1 attribute + p 2 id + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; modifier b comp_2396 + m ()Lnet/minecraft/world/entity/EquipmentSlotGroup; slot c comp_2397 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier;Lnet/minecraft/world/entity/EquipmentSlotGroup;)V + m ()V +c net/minecraft/world/item/component/ItemContainerContents cxo net/minecraft/class_9288 + f Lnet/minecraft/world/item/component/ItemContainerContents; EMPTY a field_49334 + f Lcom/mojang/serialization/Codec; CODEC b field_49335 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49336 + f I NO_SLOT d field_51410 + f I MAX_SIZE e field_49337 + f Lnet/minecraft/core/NonNullList; items f field_49338 + f I hashCode g field_51511 + m ()Lnet/minecraft/world/item/ItemStack; copyOne a method_58114 + m (Lnet/minecraft/world/item/ItemStack;)Z method_59710 a method_59710 + m (Lnet/minecraft/world/item/component/ItemContainerContents;)Ljava/util/List; method_57491 a method_57491 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemContainerContents; fromItems a method_57493 + p 0 items + m (Lnet/minecraft/core/NonNullList;)V copyInto a method_57492 + p 1 list + m ()Ljava/util/stream/Stream; stream b method_57489 + m (Lnet/minecraft/world/item/ItemStack;)Z method_59711 b method_59711 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/ItemContainerContents; fromSlots b method_57496 + p 0 slots + m ()Ljava/util/stream/Stream; nonEmptyStream c method_59712 + m (Ljava/util/List;)I findLastNonEmptySlot c method_59713 + p 0 items + m ()Ljava/lang/Iterable; nonEmptyItems d method_59714 + m ()Ljava/lang/Iterable; nonEmptyItemsCopy e method_59715 + m ()Ljava/util/List; asSlots f method_57494 + m (Lnet/minecraft/core/NonNullList;)V + p 1 items + m (I)V + p 1 size + m (Ljava/util/List;)V + p 1 items + m ()V +c net/minecraft/world/item/component/ItemContainerContents$Slot cxo$a net/minecraft/class_9288$class_9289 + f Lcom/mojang/serialization/Codec; CODEC a field_49339 + f I index b comp_2398 + f Lnet/minecraft/world/item/ItemStack; item c comp_2399 + m ()I index a comp_2398 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57498 a method_57498 + m ()Lnet/minecraft/world/item/ItemStack; item b comp_2399 + m (ILnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/world/item/component/ItemLore cxp net/minecraft/class_9290 + f Lnet/minecraft/world/item/component/ItemLore; EMPTY a field_49340 + f I MAX_LINES b field_49343 + f Lcom/mojang/serialization/Codec; CODEC c field_49341 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49342 + f Ljava/util/List; lines e comp_2400 + f Ljava/util/List; styledLines f comp_2401 + f Lnet/minecraft/network/chat/Style; LORE_STYLE g field_49344 + m ()Ljava/util/List; lines a comp_2400 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/item/component/ItemLore; withLineAdded a method_57499 + p 1 lines + m ()Ljava/util/List; styledLines b comp_2401 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_57500 b method_57500 + m (Ljava/util/List;)V + p 1 lines + m (Ljava/util/List;Ljava/util/List;)V + p 1 lines + p 2 styledLines + m ()V +c net/minecraft/world/item/component/LodestoneTracker cxq net/minecraft/class_9291 + f Lcom/mojang/serialization/Codec; CODEC a field_49345 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49346 + f Ljava/util/Optional; target c comp_2402 + f Z tracked d comp_2403 + m ()Ljava/util/Optional; target a comp_2402 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/item/component/LodestoneTracker; tick a method_58115 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57502 a method_57502 + m ()Z tracked b comp_2403 + m (Ljava/util/Optional;Z)V + m ()V +c net/minecraft/world/item/component/MapDecorations cxr net/minecraft/class_9292 + f Lnet/minecraft/world/item/component/MapDecorations; EMPTY a field_49347 + f Lcom/mojang/serialization/Codec; CODEC b field_49348 + f Ljava/util/Map; decorations c comp_2404 + m ()Ljava/util/Map; decorations a comp_2404 + m (Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;)Lnet/minecraft/world/item/component/MapDecorations; withDecoration a method_57503 + p 1 type + p 2 entry + m (Ljava/util/Map;)V + m ()V +c net/minecraft/world/item/component/MapDecorations$Entry cxr$a net/minecraft/class_9292$class_9293 + f Lcom/mojang/serialization/Codec; CODEC a field_49349 + f Lnet/minecraft/core/Holder; type b comp_2405 + f D x c comp_2406 + f D z d comp_2407 + f F rotation e comp_2408 + m ()Lnet/minecraft/core/Holder; type a comp_2405 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57504 a method_57504 + m ()D x b comp_2406 + m ()D z c comp_2407 + m ()F rotation d comp_2408 + m (Lnet/minecraft/core/Holder;DDF)V + m ()V +c net/minecraft/world/item/component/MapItemColor cxs net/minecraft/class_9294 + f Lcom/mojang/serialization/Codec; CODEC a field_49350 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49351 + f Lnet/minecraft/world/item/component/MapItemColor; DEFAULT c field_49352 + f I rgb d comp_2409 + m ()I rgb a comp_2409 + m (I)V + m ()V +c net/minecraft/world/item/component/MapPostProcessing cxt net/minecraft/class_9295 + f Lnet/minecraft/world/item/component/MapPostProcessing; LOCK a field_49353 + f Lnet/minecraft/world/item/component/MapPostProcessing; SCALE b field_49354 + f Ljava/util/function/IntFunction; ID_MAP c field_49355 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49356 + f I id e field_49357 + f [Lnet/minecraft/world/item/component/MapPostProcessing; $VALUES f field_49358 + m ()I id a method_57505 + m ()[Lnet/minecraft/world/item/component/MapPostProcessing; $values b method_57506 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c net/minecraft/world/item/component/ResolvableProfile cxu net/minecraft/class_9296 + f Lcom/mojang/serialization/Codec; CODEC a field_49359 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49360 + f Ljava/util/Optional; name c comp_2410 + f Ljava/util/Optional; id d comp_2411 + f Lcom/mojang/authlib/properties/PropertyMap; properties e comp_2412 + f Lcom/mojang/authlib/GameProfile; gameProfile f comp_2413 + f Lcom/mojang/serialization/Codec; FULL_CODEC g field_49752 + m ()Ljava/util/concurrent/CompletableFuture; resolve a method_57507 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57508 a method_57508 + m (Ljava/lang/String;)Lnet/minecraft/world/item/component/ResolvableProfile; method_58116 a method_58116 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/component/ResolvableProfile; method_57510 a method_57510 + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)Lcom/mojang/authlib/GameProfile; createProfile a method_57509 + p 0 name + p 1 id + p 2 properties + m ()Z isResolved b method_57511 + m (Ljava/util/Optional;)Lnet/minecraft/world/item/component/ResolvableProfile; method_59533 b method_59533 + m ()Ljava/util/Optional; name c comp_2410 + m ()Ljava/util/Optional; id d comp_2411 + m ()Lcom/mojang/authlib/properties/PropertyMap; properties e comp_2412 + m ()Lcom/mojang/authlib/GameProfile; gameProfile f comp_2413 + m ()Lcom/mojang/authlib/GameProfile; method_57512 g method_57512 + m ()Lcom/mojang/authlib/GameProfile; method_59534 h method_59534 + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;)V + p 1 name + p 2 id + p 3 properties + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile + m (Ljava/util/Optional;Ljava/util/Optional;Lcom/mojang/authlib/properties/PropertyMap;Lcom/mojang/authlib/GameProfile;)V + m ()V +c net/minecraft/world/item/component/SeededContainerLoot cxv net/minecraft/class_9297 + f Lcom/mojang/serialization/Codec; CODEC a field_49361 + f Lnet/minecraft/resources/ResourceKey; lootTable b comp_2414 + f J seed c comp_2415 + m ()Lnet/minecraft/resources/ResourceKey; lootTable a comp_2414 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57513 a method_57513 + m ()J seed b comp_2415 + m (Lnet/minecraft/resources/ResourceKey;J)V + m ()V +c net/minecraft/world/item/component/SuspiciousStewEffects cxw net/minecraft/class_9298 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; EMPTY a field_49362 + f Lcom/mojang/serialization/Codec; CODEC b field_49363 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49364 + f Ljava/util/List; effects d comp_2416 + m ()Ljava/util/List; effects a comp_2416 + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects$Entry;)Lnet/minecraft/world/item/component/SuspiciousStewEffects; withEffectAdded a method_57514 + p 1 entry + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/component/SuspiciousStewEffects$Entry cxw$a net/minecraft/class_9298$class_8751 + f Lcom/mojang/serialization/Codec; CODEC a field_45782 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49365 + f Lnet/minecraft/core/Holder; effect c comp_1838 + f I duration d comp_1839 + m ()Lnet/minecraft/world/effect/MobEffectInstance; createEffectInstance a method_53247 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53248 a method_53248 + m ()Lnet/minecraft/core/Holder; effect b comp_1838 + m ()I duration c comp_1839 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/item/component/Tool cxx net/minecraft/class_9424 + f Lcom/mojang/serialization/Codec; CODEC a field_50009 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50010 + f Ljava/util/List; rules c comp_2498 + f F defaultMiningSpeed d comp_2499 + f I damagePerBlock e comp_2500 + m ()Ljava/util/List; rules a comp_2498 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58424 a method_58424 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getMiningSpeed a method_58425 + p 1 state + m ()F defaultMiningSpeed b comp_2499 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCorrectForDrops b method_58426 + p 1 state + m ()I damagePerBlock c comp_2500 + m (Ljava/util/List;FI)V + m ()V +c net/minecraft/world/item/component/Tool$Rule cxx$a net/minecraft/class_9424$class_9425 + f Lcom/mojang/serialization/Codec; CODEC a field_50011 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_50012 + f Lnet/minecraft/core/HolderSet; blocks c comp_2501 + f Ljava/util/Optional; speed d comp_2502 + f Ljava/util/Optional; correctForDrops e comp_2503 + m ()Lnet/minecraft/core/HolderSet; blocks a comp_2501 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/component/Tool$Rule; deniesDrops a method_58427 + p 0 blocks + m (Lnet/minecraft/tags/TagKey;F)Lnet/minecraft/world/item/component/Tool$Rule; minesAndDrops a method_58428 + p 0 blocks + p 1 speed + m (Lnet/minecraft/tags/TagKey;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/item/component/Tool$Rule; forTag a method_58429 + p 0 tag + p 1 speed + p 2 correctForDrops + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58430 a method_58430 + m (Ljava/util/List;F)Lnet/minecraft/world/item/component/Tool$Rule; minesAndDrops a method_58431 + p 0 blocks + p 1 speed + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/item/component/Tool$Rule; forBlocks a method_58432 + p 0 blocks + p 1 speed + p 2 correctForDrops + m ()Ljava/util/Optional; speed b comp_2502 + m (Lnet/minecraft/tags/TagKey;F)Lnet/minecraft/world/item/component/Tool$Rule; overrideSpeed b method_58433 + p 0 blocks + p 1 speed + m (Ljava/util/List;F)Lnet/minecraft/world/item/component/Tool$Rule; overrideSpeed b method_58434 + p 0 blocks + p 1 speed + m ()Ljava/util/Optional; correctForDrops c comp_2503 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/component/TooltipProvider cxy net/minecraft/class_9299 + m (Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/function/Consumer;Lnet/minecraft/world/item/TooltipFlag;)V addToTooltip a method_57409 + p 1 context + p 2 tooltipAdder + p 3 tooltipFlag +c net/minecraft/world/item/component/Unbreakable cxz net/minecraft/class_9300 + f Lcom/mojang/serialization/Codec; CODEC a field_49366 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49367 + f Z showInTooltip c comp_2417 + f Lnet/minecraft/network/chat/Component; TOOLTIP d field_49368 + m ()Z showInTooltip a comp_2417 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57515 a method_57515 + m (Z)Lnet/minecraft/world/item/component/Unbreakable; withTooltip a method_58435 + p 1 showInTooltip + m (Z)V + m ()V +c net/minecraft/world/item/component/WritableBookContent cya net/minecraft/class_9301 + f Lnet/minecraft/world/item/component/WritableBookContent; EMPTY a field_49369 + f I PAGE_EDIT_LENGTH b field_49370 + f I MAX_PAGES c field_51411 + f Lcom/mojang/serialization/Codec; PAGES_CODEC d field_49374 + f Lcom/mojang/serialization/Codec; CODEC e field_49371 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC f field_49372 + f Ljava/util/List; pages g comp_2418 + f Lcom/mojang/serialization/Codec; PAGE_CODEC h field_49373 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57516 a method_57516 + m (Z)Ljava/util/stream/Stream; getPages a method_57517 + p 1 filtered + m (ZLnet/minecraft/server/network/Filterable;)Ljava/lang/String; method_57518 a method_57518 + m (Ljava/util/List;)Lnet/minecraft/world/item/component/WritableBookContent; withReplacedPages b method_58187 + p 1 newPages + m (Ljava/util/List;)V + p 1 pages + m ()V +c net/minecraft/world/item/component/WrittenBookContent cyb net/minecraft/class_9302 + f Lnet/minecraft/world/item/component/WrittenBookContent; EMPTY a field_49829 + f I PAGE_LENGTH b field_49375 + f I TITLE_LENGTH c field_49377 + f I TITLE_MAX_LENGTH d field_49378 + f I MAX_GENERATION e field_49379 + f I MAX_CRAFTABLE_GENERATION f field_49380 + f Lcom/mojang/serialization/Codec; CONTENT_CODEC g field_49383 + f Lcom/mojang/serialization/Codec; PAGES_CODEC h field_49384 + f Lcom/mojang/serialization/Codec; CODEC i field_49381 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC j field_49382 + f Lnet/minecraft/server/network/Filterable; title k comp_2419 + f Ljava/lang/String; author l comp_2420 + f I generation m comp_2421 + f Ljava/util/List; pages n comp_2422 + f Z resolved o comp_2423 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; pagesCodec a method_58436 + p 0 codec + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57520 a method_57520 + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/component/WrittenBookContent; resolve a method_57521 + p 1 source + p 2 player + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/server/network/Filterable;)Ljava/util/Optional; resolvePage a method_57522 + p 0 source + p 1 player + p 2 pages + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;)Ljava/util/Optional; method_57523 a method_57523 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/core/HolderLookup$Provider;)Z isPageTooLarge a method_57524 + p 0 page + p 1 registryAccess + m (Z)Ljava/util/List; getPages a method_57525 + p 1 filtered + m (ZLnet/minecraft/server/network/Filterable;)Lnet/minecraft/network/chat/Component; method_57526 a method_57526 + m ()Lnet/minecraft/world/item/component/WrittenBookContent; tryCraftCopy b method_57519 + m (Lcom/mojang/serialization/Codec;)Lcom/mojang/serialization/Codec; pageCodec b method_58437 + p 0 codec + m (Ljava/util/List;)Lnet/minecraft/world/item/component/WrittenBookContent; withReplacedPages b method_58188 + p 1 newPages + m ()Lnet/minecraft/world/item/component/WrittenBookContent; markResolved c method_57527 + m ()Lnet/minecraft/server/network/Filterable; title d comp_2419 + m ()Ljava/lang/String; author e comp_2420 + m ()I generation f comp_2421 + m ()Z resolved g comp_2423 + m (Lnet/minecraft/server/network/Filterable;Ljava/lang/String;ILjava/util/List;Z)V + p 1 title + p 2 author + p 3 generation + p 4 pages + p 5 resolved + m ()V +c net/minecraft/world/item/component/package-info cyc net/minecraft/class_9303 +c net/minecraft/world/item/context/BlockPlaceContext cyd net/minecraft/class_1750 + f Z replaceClicked a field_7904 + f Lnet/minecraft/core/BlockPos; relativePos b field_7903 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/context/BlockPlaceContext; at a method_16355 + p 0 context + p 1 pos + p 2 direction + m ()Z canPlace b method_7716 + m ()Z replacingClickedOnBlock c method_7717 + m ()Lnet/minecraft/core/Direction; getNearestLookingDirection d method_7715 + m ()Lnet/minecraft/core/Direction; getNearestLookingVerticalDirection e method_32760 + m ()[Lnet/minecraft/core/Direction; getNearestLookingDirections f method_7718 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 player + p 2 hand + p 3 itemStack + p 4 hitResult + m (Lnet/minecraft/world/item/context/UseOnContext;)V + p 1 context + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 level + p 2 player + p 3 hand + p 4 itemStack + p 5 hitResult +c net/minecraft/world/item/context/DirectionalPlaceContext cye net/minecraft/class_2968 + f Lnet/minecraft/core/Direction; direction b field_13362 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)V + p 1 level + p 2 pos + p 3 direction + p 4 itemStack + p 5 face +c net/minecraft/world/item/context/DirectionalPlaceContext$1 cye$1 net/minecraft/class_2968$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_13363 + m ()V +c net/minecraft/world/item/context/UseOnContext cyf net/minecraft/class_1838 + f Lnet/minecraft/world/entity/player/Player; player a field_8942 + f Lnet/minecraft/world/InteractionHand; hand b field_19176 + f Lnet/minecraft/world/phys/BlockHitResult; hitResult c field_17543 + f Lnet/minecraft/world/level/Level; level d field_8945 + f Lnet/minecraft/world/item/ItemStack; itemStack e field_8941 + m ()Lnet/minecraft/core/BlockPos; getClickedPos a method_8037 + m ()Lnet/minecraft/core/Direction; getHorizontalDirection g method_8042 + m ()Z isSecondaryUseActive h method_8046 + m ()F getRotation i method_8044 + m ()Lnet/minecraft/world/phys/BlockHitResult; getHitResult j method_30344 + m ()Lnet/minecraft/core/Direction; getClickedFace k method_8038 + m ()Lnet/minecraft/world/phys/Vec3; getClickLocation l method_17698 + m ()Z isInside m method_17699 + m ()Lnet/minecraft/world/item/ItemStack; getItemInHand n method_8041 + m ()Lnet/minecraft/world/entity/player/Player; getPlayer o method_8036 + m ()Lnet/minecraft/world/InteractionHand; getHand p method_20287 + m ()Lnet/minecraft/world/level/Level; getLevel q method_8045 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 player + p 2 hand + p 3 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V + p 1 level + p 2 player + p 3 hand + p 4 itemStack + p 5 hitResult +c net/minecraft/world/item/context/package-info cyg net/minecraft/class_6081 +c net/minecraft/world/item/crafting/AbstractCookingRecipe cyh net/minecraft/class_1874 + f Lnet/minecraft/world/item/crafting/RecipeType; type a field_17544 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; category b field_40241 + f Ljava/lang/String; group c field_9062 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient d field_9061 + f Lnet/minecraft/world/item/ItemStack; result e field_9059 + f F experience f field_9057 + f I cookingTime g field_9058 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_59981 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_59982 + p 1 input + p 2 registries + m ()F getExperience b method_8171 + c Gets the experience of this recipe + m ()I getCookingTime d method_8167 + c Gets the cook time in ticks + m ()Lnet/minecraft/world/item/crafting/CookingBookCategory; category f method_45438 + m (Lnet/minecraft/world/item/crafting/RecipeType;Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 type + p 2 group + p 3 category + p 4 ingredient + p 5 result + p 6 experience + p 7 cookingTime +c net/minecraft/world/item/crafting/AbstractCookingRecipe$Factory cyh$a net/minecraft/class_1874$class_3958 +c net/minecraft/world/item/crafting/ArmorDyeRecipe cyi net/minecraft/class_1849 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17701 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17700 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/BannerDuplicateRecipe cyj net/minecraft/class_1848 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_17704 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17703 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17702 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/BlastingRecipe cyk net/minecraft/class_3859 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/BookCloningRecipe cyl net/minecraft/class_1850 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_17707 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17706 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17705 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/CampfireCookingRecipe cym net/minecraft/class_3920 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/CookingBookCategory cyn net/minecraft/class_7709 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; FOOD a field_40242 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; BLOCKS b field_40243 + f Lnet/minecraft/world/item/crafting/CookingBookCategory; MISC c field_40244 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC d field_40245 + f Ljava/lang/String; name e field_40246 + f [Lnet/minecraft/world/item/crafting/CookingBookCategory; $VALUES f field_40247 + m ()[Lnet/minecraft/world/item/crafting/CookingBookCategory; $values a method_45439 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/item/crafting/CraftingBookCategory cyo net/minecraft/class_7710 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; BUILDING a field_40248 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; REDSTONE b field_40249 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; EQUIPMENT c field_40250 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; MISC d field_40251 + f Lcom/mojang/serialization/Codec; CODEC e field_40252 + f Ljava/util/function/IntFunction; BY_ID f field_48352 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC g field_48353 + f Ljava/lang/String; name h field_40253 + f I id i field_48354 + f [Lnet/minecraft/world/item/crafting/CraftingBookCategory; $VALUES j field_40254 + m ()I id a method_56101 + m ()[Lnet/minecraft/world/item/crafting/CraftingBookCategory; $values b method_45440 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/item/crafting/CraftingInput cyp net/minecraft/class_9694 + f Lnet/minecraft/world/item/crafting/CraftingInput; EMPTY a field_51631 + f I width b field_51632 + f I height c field_51633 + f Ljava/util/List; items d field_51634 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents e field_51635 + f I ingredientCount f field_51636 + m (II)Lnet/minecraft/world/item/ItemStack; getItem a method_59985 + p 1 row + p 2 column + m (IILjava/util/List;)Lnet/minecraft/world/item/crafting/CraftingInput; of a method_59986 + p 0 width + p 1 height + p 2 items + m (IILjava/util/List;)Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; ofPositioned b method_60505 + p 0 width + p 1 height + p 2 items + m ()Lnet/minecraft/world/entity/player/StackedContents; stackedContents c method_59988 + m ()Ljava/util/List; items d method_59989 + m ()I ingredientCount e method_59990 + m ()I width f method_59991 + m ()I height g method_59992 + m (IILjava/util/List;)V + p 1 width + p 2 height + p 3 item + m ()V +c net/minecraft/world/item/crafting/CraftingInput$Positioned cyp$a net/minecraft/class_9694$class_9765 + f Lnet/minecraft/world/item/crafting/CraftingInput$Positioned; EMPTY a field_51896 + f Lnet/minecraft/world/item/crafting/CraftingInput; input b comp_2795 + f I left c comp_2796 + f I top d comp_2797 + m ()Lnet/minecraft/world/item/crafting/CraftingInput; input a comp_2795 + m ()I left b comp_2796 + m ()I top c comp_2797 + m (Lnet/minecraft/world/item/crafting/CraftingInput;II)V + m ()V +c net/minecraft/world/item/crafting/CraftingRecipe cyq net/minecraft/class_3955 + m ()Lnet/minecraft/world/item/crafting/CraftingBookCategory; category d method_45441 +c net/minecraft/world/item/crafting/CustomRecipe cyr net/minecraft/class_1852 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category a field_40255 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/DecoratedPotRecipe cys net/minecraft/class_8164 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_49186 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_49187 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V +c net/minecraft/world/item/crafting/FireworkRocketRecipe cyt net/minecraft/class_1851 + f Lnet/minecraft/world/item/crafting/Ingredient; PAPER_INGREDIENT a field_9007 + f Lnet/minecraft/world/item/crafting/Ingredient; GUNPOWDER_INGREDIENT b field_9006 + f Lnet/minecraft/world/item/crafting/Ingredient; STAR_INGREDIENT c field_9008 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17709 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17708 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/FireworkStarFadeRecipe cyu net/minecraft/class_1854 + f Lnet/minecraft/world/item/crafting/Ingredient; STAR_INGREDIENT a field_9015 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17711 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17710 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/FireworkStarRecipe cyv net/minecraft/class_1853 + f Lnet/minecraft/world/item/crafting/Ingredient; SHAPE_INGREDIENT a field_9011 + f Lnet/minecraft/world/item/crafting/Ingredient; TRAIL_INGREDIENT b field_9010 + f Lnet/minecraft/world/item/crafting/Ingredient; TWINKLE_INGREDIENT c field_9014 + f Ljava/util/Map; SHAPE_BY_ITEM d field_9013 + f Lnet/minecraft/world/item/crafting/Ingredient; GUNPOWDER_INGREDIENT e field_9012 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17713 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17712 + p 1 input + p 2 registries + m (Ljava/util/HashMap;)V method_8085 a method_8085 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category + m ()V +c net/minecraft/world/item/crafting/Ingredient cyw net/minecraft/class_1856 + c

Interface {@link net.fabricmc.fabric.api.recipe.v1.ingredient.FabricIngredient} injected by mod fabric-recipe-api-v1

+ f Lnet/minecraft/world/item/crafting/Ingredient; EMPTY a field_9017 + f Lnet/minecraft/network/codec/StreamCodec; CONTENTS_STREAM_CODEC b field_48355 + f Lcom/mojang/serialization/Codec; CODEC c field_46095 + f Lcom/mojang/serialization/Codec; CODEC_NONEMPTY d field_46096 + f [Lnet/minecraft/world/item/crafting/Ingredient$Value; values e field_9019 + f [Lnet/minecraft/world/item/ItemStack; itemStacks f field_9018 + f Lit/unimi/dsi/fastutil/ints/IntList; stackingIds g field_9016 + m ()[Lnet/minecraft/world/item/ItemStack; getItems a method_8105 + m (I)[Lnet/minecraft/world/item/ItemStack; method_47373 a method_47373 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8106 + p 0 tag + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/crafting/Ingredient; method_53722 a method_53722 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_8093 + p 1 stack + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Lnet/minecraft/world/item/crafting/Ingredient; method_53721 a method_53721 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Ljava/util/List; method_56102 a method_56102 + m (Ljava/util/List;)Lnet/minecraft/world/item/crafting/Ingredient; method_56103 a method_56103 + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_26964 + p 0 stacks + m (Z)Lcom/mojang/serialization/Codec; codec a method_53725 + p 0 allowEmpty + m (ZLnet/minecraft/world/item/crafting/Ingredient;)Lcom/mojang/serialization/DataResult; method_53723 a method_53723 + m (ZLjava/util/List;)Lcom/mojang/serialization/DataResult; method_53724 a method_53724 + m ([Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8101 + p 0 stacks + m ([Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/item/crafting/Ingredient; of a method_8091 + p 0 items + m ()Lit/unimi/dsi/fastutil/ints/IntList; getStackingIds b method_8100 + m (I)[Lnet/minecraft/world/item/crafting/Ingredient$Value; method_8087 b method_8087 + m (Lnet/minecraft/world/item/ItemStack;)Z method_26965 b method_26965 + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Ljava/util/stream/Stream; method_47374 b method_47374 + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/item/crafting/Ingredient; fromValues b method_8092 + p 0 stream + m ()Z isEmpty c method_8103 + m ()Lnet/minecraft/world/item/crafting/Ingredient; of d method_35226 + m ()Ljava/lang/String; method_53726 e method_53726 + m ()Ljava/lang/String; method_53727 f method_53727 + m (Ljava/util/stream/Stream;)V + p 1 values + m ([Lnet/minecraft/world/item/crafting/Ingredient$Value;)V + p 1 values + m ()V +c net/minecraft/world/item/crafting/Ingredient$ItemValue cyw$a net/minecraft/class_1856$class_1857 + f Lnet/minecraft/world/item/ItemStack; item b comp_1930 + f Lcom/mojang/serialization/Codec; CODEC c field_46097 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53729 a method_53729 + m (Lnet/minecraft/world/item/crafting/Ingredient$ItemValue;)Lnet/minecraft/world/item/ItemStack; method_53728 a method_53728 + m ()Lnet/minecraft/world/item/ItemStack; item b comp_1930 + m (Lnet/minecraft/world/item/ItemStack;)V + p 1 item + m ()V +c net/minecraft/world/item/crafting/Ingredient$TagValue cyw$b net/minecraft/class_1856$class_1858 + f Lnet/minecraft/tags/TagKey; tag b comp_1931 + f Lcom/mojang/serialization/Codec; CODEC c field_46098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53731 a method_53731 + m (Lnet/minecraft/world/item/crafting/Ingredient$TagValue;)Lnet/minecraft/tags/TagKey; method_53730 a method_53730 + m ()Lnet/minecraft/tags/TagKey; tag b comp_1931 + m (Lnet/minecraft/tags/TagKey;)V + p 1 tag + m ()V +c net/minecraft/world/item/crafting/Ingredient$Value cyw$c net/minecraft/class_1856$class_1859 + f Lcom/mojang/serialization/Codec; CODEC a field_46099 + m ()Ljava/util/Collection; getItems a method_8108 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/crafting/Ingredient$Value; method_53735 a method_53735 + m (Lnet/minecraft/world/item/crafting/Ingredient$ItemValue;)Ljava/lang/Record; method_53732 a method_53732 + m (Lnet/minecraft/world/item/crafting/Ingredient$TagValue;)Ljava/lang/Record; method_53733 a method_53733 + m (Lnet/minecraft/world/item/crafting/Ingredient$Value;)Lcom/mojang/datafixers/util/Either; method_53734 a method_53734 + m ()V +c net/minecraft/world/item/crafting/MapCloningRecipe cyx net/minecraft/class_1855 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17715 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17714 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/MapExtendingRecipe cyy net/minecraft/class_1861 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lnet/minecraft/world/item/ItemStack; findFilledMap a method_51165 + p 0 input + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/Recipe cyz net/minecraft/class_1860 + f Lcom/mojang/serialization/Codec; CODEC h field_47319 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_48356 + m ()Lnet/minecraft/core/NonNullList; getIngredients a method_8117 + m (II)Z canCraftInDimensions a method_8113 + c Used to determine if this recipe can fit in a grid of the given width/height + p 1 width + p 2 height + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31583 a method_31583 + m (Lnet/minecraft/world/item/crafting/RecipeInput;)Lnet/minecraft/core/NonNullList; getRemainingItems a method_8111 + p 1 input + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_8115 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_8116 + p 1 input + p 2 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; getResultItem a method_8110 + p 1 registries + m ()Z isSpecial as_ method_8118 + c If true, this recipe does not appear in the recipe book and does not respect recipe unlocking (and the doLimitedCrafting gamerule) + m ()Lnet/minecraft/world/item/crafting/RecipeSerializer; getSerializer at_ method_8119 + m ()Ljava/lang/String; getGroup c method_8112 + c Recipes with equal group are combined into one button in the recipe book + m ()Lnet/minecraft/world/item/crafting/RecipeType; getType e method_17716 + m ()Lnet/minecraft/world/item/ItemStack; getToastSymbol g method_17447 + m ()Z showNotification h method_49188 + m ()Z isIncomplete i method_31584 + m ()V +c net/minecraft/world/item/crafting/RecipeCache cza net/minecraft/class_8884 + f [Lnet/minecraft/world/item/crafting/RecipeCache$Entry; entries a field_46792 + f Ljava/lang/ref/WeakReference; cachedRecipeManager b field_46793 + m (I)V moveEntryToFront a method_54467 + p 1 index + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/item/crafting/RecipeHolder;)V insert a method_54471 + p 1 input + p 2 recipe + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; compute a method_54468 + p 1 input + p 2 level + m (Lnet/minecraft/world/level/Level;)V validateRecipeManager a method_54469 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/CraftingInput;)Ljava/util/Optional; get a method_54470 + p 1 level + p 2 input + m (I)V + p 1 size +c net/minecraft/world/item/crafting/RecipeCache$Entry cza$a net/minecraft/class_8884$class_8885 + f Lnet/minecraft/core/NonNullList; key a comp_2001 + f I width b comp_2816 + f I height c comp_2817 + f Lnet/minecraft/world/item/crafting/RecipeHolder; value d comp_2002 + m ()Lnet/minecraft/core/NonNullList; key a comp_2001 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Z matches a method_54472 + p 1 input + m ()I width b comp_2816 + m ()I height c comp_2817 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; value d comp_2002 + m (Lnet/minecraft/core/NonNullList;IILnet/minecraft/world/item/crafting/RecipeHolder;)V +c net/minecraft/world/item/crafting/RecipeHolder czb net/minecraft/class_8786 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48357 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1932 + f Lnet/minecraft/world/item/crafting/Recipe; value c comp_1933 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1932 + m ()Lnet/minecraft/world/item/crafting/Recipe; value b comp_1933 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/item/crafting/Recipe;)V + m ()V +c net/minecraft/world/item/crafting/RecipeInput czc net/minecraft/class_9695 + m ()I size a method_59983 + m (I)Lnet/minecraft/world/item/ItemStack; getItem a method_59984 + p 1 index + m ()Z isEmpty b method_59987 +c net/minecraft/world/item/crafting/RecipeManager czd net/minecraft/class_1863 + f Lcom/google/gson/Gson; GSON a field_19359 + f Lorg/slf4j/Logger; LOGGER b field_9027 + f Lnet/minecraft/core/HolderLookup$Provider; registries c field_48848 + f Lcom/google/common/collect/Multimap; byType d field_51481 + f Ljava/util/Map; byName e field_36308 + f Z hasErrors f field_9024 + m ()Z hadErrorsLoading a method_35227 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; byKey a method_8130 + p 1 recipeId + m (Lnet/minecraft/resources/ResourceLocation;Lcom/google/gson/JsonObject;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/crafting/RecipeHolder; fromJson a method_17720 + p 0 recipeId + p 1 json + p 2 registries + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_42297 a method_42297 + m (Lnet/minecraft/world/item/crafting/RecipeType;)Ljava/util/List; getAllRecipesFor a method_30027 + p 1 recipeType + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/crafting/RecipeHolder; byKeyTyped a method_59821 + p 1 type + p 2 name + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getRecipeFor a method_8132 + p 1 recipeType + p 2 input + p 3 level + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getRecipeFor a method_42299 + p 1 recipeType + p 2 input + p 3 level + p 4 lastRecipe + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/util/Optional; getRecipeFor a method_59993 + p 1 recipeType + p 2 input + p 3 level + p 4 lastRecipe + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/lang/String; method_17876 a method_17876 + m (Ljava/lang/Iterable;)V replaceRecipes a method_20702 + p 1 recipes + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_20705 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/util/Collection; getOrderedRecipes b method_59822 + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Z method_42301 b method_42301 + m (Lnet/minecraft/world/item/crafting/RecipeType;)Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; createCheck b method_42302 + p 0 recipeType + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/List; getRecipesFor b method_17877 + p 1 recipeType + p 2 input + p 3 level + m (Lnet/minecraft/world/item/crafting/RecipeType;)Ljava/util/Collection; byType c method_17717 + p 1 type + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/NonNullList; getRemainingItemsFor c method_8128 + p 1 recipeType + p 2 input + p 3 lvel + m ()Ljava/util/Collection; getRecipes d method_8126 + m ()Ljava/util/stream/Stream; getRecipeIds e method_8127 + m (Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 registries + m ()V +c net/minecraft/world/item/crafting/RecipeManager$1 czd$1 net/minecraft/class_1863$1 + f Lnet/minecraft/world/item/crafting/RecipeType; val$type a field_38220 + f Lnet/minecraft/resources/ResourceLocation; lastRecipe b field_38221 + m (Lnet/minecraft/world/item/crafting/RecipeType;)V +c net/minecraft/world/item/crafting/RecipeManager$CachedCheck czd$a net/minecraft/class_1863$class_7266 + m (Lnet/minecraft/world/item/crafting/RecipeInput;Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getRecipeFor a method_42303 + p 1 input + p 2 level +c net/minecraft/world/item/crafting/RecipeSerializer cze net/minecraft/class_1865 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHAPED_RECIPE a field_9035 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHAPELESS_RECIPE b field_9031 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; ARMOR_DYE c field_9028 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BOOK_CLONING d field_9029 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; MAP_CLONING e field_9044 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; MAP_EXTENDING f field_9039 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_ROCKET g field_9043 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_STAR h field_9036 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; FIREWORK_STAR_FADE i field_9034 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; TIPPED_ARROW j field_9037 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BANNER_DUPLICATE k field_9038 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHIELD_DECORATION l field_9040 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SHULKER_BOX_COLORING m field_9041 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SUSPICIOUS_STEW n field_9030 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; REPAIR_ITEM o field_19421 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMELTING_RECIPE p field_9042 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; BLASTING_RECIPE q field_17084 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMOKING_RECIPE r field_17085 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; CAMPFIRE_COOKING_RECIPE s field_17347 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; STONECUTTER t field_17640 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMITHING_TRANSFORM u field_42027 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; SMITHING_TRIM v field_42028 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; DECORATED_POT_RECIPE w field_42718 + m ()Lcom/mojang/serialization/MapCodec; codec a method_53736 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;)Lnet/minecraft/world/item/crafting/RecipeSerializer; register a method_17724 + p 0 key + p 1 recipeSerializer + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56104 + m ()V +c net/minecraft/world/item/crafting/RecipeType czf net/minecraft/class_3956 + f Lnet/minecraft/world/item/crafting/RecipeType; CRAFTING a field_17545 + f Lnet/minecraft/world/item/crafting/RecipeType; SMELTING b field_17546 + f Lnet/minecraft/world/item/crafting/RecipeType; BLASTING c field_17547 + f Lnet/minecraft/world/item/crafting/RecipeType; SMOKING d field_17548 + f Lnet/minecraft/world/item/crafting/RecipeType; CAMPFIRE_COOKING e field_17549 + f Lnet/minecraft/world/item/crafting/RecipeType; STONECUTTING f field_17641 + f Lnet/minecraft/world/item/crafting/RecipeType; SMITHING g field_25388 + m (Ljava/lang/String;)Lnet/minecraft/world/item/crafting/RecipeType; register a method_17726 + p 0 identifier + m ()V +c net/minecraft/world/item/crafting/RecipeType$1 czf$1 net/minecraft/class_3956$1 + f Ljava/lang/String; val$name h field_17550 + m (Ljava/lang/String;)V +c net/minecraft/world/item/crafting/RepairItemRecipe czg net/minecraft/class_4317 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canCombine a method_58439 + p 0 stack1 + p 1 stack2 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Lcom/mojang/datafixers/util/Pair; getItemsToCombine a method_58438 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_20808 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_20807 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/core/Holder$Reference;)V method_24364 a method_24364 + m (Lnet/minecraft/core/Holder$Reference;)Z method_59994 a method_59994 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57528 a method_57528 + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/ShapedRecipe czh net/minecraft/class_1869 + f Lnet/minecraft/world/item/crafting/ShapedRecipePattern; pattern a field_47320 + f Lnet/minecraft/world/item/ItemStack; result b field_9053 + f Ljava/lang/String; group c field_9056 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category d field_40256 + f Z showNotification e field_42719 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17728 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17727 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31585 a method_31585 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_31586 b method_31586 + m ()I getWidth j method_8150 + m ()I getHeight k method_8158 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/crafting/ShapedRecipePattern;Lnet/minecraft/world/item/ItemStack;Z)V + p 1 group + p 2 category + p 3 pattern + p 4 result + p 5 showNotification + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/crafting/ShapedRecipePattern;Lnet/minecraft/world/item/ItemStack;)V + p 1 group + p 2 category + p 3 pattern + p 4 result +c net/minecraft/world/item/crafting/ShapedRecipe$Serializer czh$a net/minecraft/class_1869$class_1870 + f Lcom/mojang/serialization/MapCodec; CODEC x field_46102 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC y field_48358 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55071 a method_55071 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Ljava/lang/Boolean; method_55072 a method_55072 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapedRecipe; fromNetwork a method_8163 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/ShapedRecipe;)V toNetwork a method_8165 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/ItemStack; method_55073 b method_55073 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; method_55074 c method_55074 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; method_55075 d method_55075 + m (Lnet/minecraft/world/item/crafting/ShapedRecipe;)Ljava/lang/String; method_55076 e method_55076 + m ()V + m ()V +c net/minecraft/world/item/crafting/ShapedRecipePattern czi net/minecraft/class_8957 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47321 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48359 + f I MAX_SIZE c field_47322 + f I width d field_51637 + f I height e field_51638 + f Lnet/minecraft/core/NonNullList; ingredients f field_51639 + f Ljava/util/Optional; data g field_51640 + f I ingredientCount h field_51641 + f Z symmetrical i field_51642 + m ()I width a method_59995 + m (C)Ljava/lang/String; method_55077 a method_55077 + m (Lnet/minecraft/world/item/crafting/CraftingInput;)Z matches a method_55078 + p 1 input + m (Lnet/minecraft/world/item/crafting/CraftingInput;Z)Z matches a method_55079 + p 1 input + p 2 symmetrical + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Lcom/mojang/serialization/DataResult; unpack a method_55080 + p 0 data + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern;)Lcom/mojang/serialization/DataResult; method_55081 a method_55081 + m (Lit/unimi/dsi/fastutil/chars/CharSet;)Ljava/lang/String; method_55082 a method_55082 + m (Ljava/lang/String;)I firstNonSpace a method_55083 + p 0 row + m (Ljava/util/List;)[Ljava/lang/String; shrink a method_55084 + p 0 pattern + m (Ljava/util/Map;Ljava/util/List;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; of a method_55085 + p 0 key + p 1 pattern + m (Ljava/util/Map;[Ljava/lang/String;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; of a method_55086 + p 0 key + p 1 pattern + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)V toNetwork a method_55087 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/world/item/crafting/Ingredient; method_55088 a method_55088 + m ()I height b method_59996 + m (Ljava/lang/String;)I lastNonSpace b method_55089 + p 0 row + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapedRecipePattern; fromNetwork b method_55090 + p 0 buffer + m ()Lnet/minecraft/core/NonNullList; ingredients c method_59997 + m ()Lcom/mojang/serialization/DataResult; method_55091 d method_55091 + m ()Ljava/lang/String; method_55092 e method_55092 + m (IILnet/minecraft/core/NonNullList;Ljava/util/Optional;)V + p 1 width + p 2 height + p 3 ingredients + p 4 data + m ()V +c net/minecraft/world/item/crafting/ShapedRecipePattern$Data czi$a net/minecraft/class_8957$class_8958 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_47323 + f Ljava/util/Map; key b comp_2085 + f Ljava/util/List; pattern c comp_2086 + f Lcom/mojang/serialization/Codec; PATTERN_CODEC d field_47324 + f Lcom/mojang/serialization/Codec; SYMBOL_CODEC e field_47325 + m ()Ljava/util/Map; key a comp_2085 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55093 a method_55093 + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Ljava/util/List; method_55094 a method_55094 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_55095 a method_55095 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_55096 a method_55096 + m ()Ljava/util/List; pattern b comp_2086 + m (Lnet/minecraft/world/item/crafting/ShapedRecipePattern$Data;)Ljava/util/Map; method_55097 b method_55097 + m (Ljava/lang/String;)Ljava/lang/String; method_55098 b method_55098 + m ()Ljava/lang/String; method_55099 c method_55099 + m ()Ljava/lang/String; method_55100 d method_55100 + m ()Ljava/lang/String; method_55101 e method_55101 + m ()Ljava/lang/String; method_55102 f method_55102 + m ()Ljava/lang/String; method_55103 g method_55103 + m (Ljava/util/Map;Ljava/util/List;)V + m ()V +c net/minecraft/world/item/crafting/ShapelessRecipe czj net/minecraft/class_1867 + f Ljava/lang/String; group a field_9049 + f Lnet/minecraft/world/item/crafting/CraftingBookCategory; category b field_40257 + f Lnet/minecraft/world/item/ItemStack; result c field_9050 + f Lnet/minecraft/core/NonNullList; ingredients d field_9047 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17730 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17729 + p 1 input + p 2 registries + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CraftingBookCategory;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/NonNullList;)V + p 1 group + p 2 category + p 3 result + p 4 ingredients +c net/minecraft/world/item/crafting/ShapelessRecipe$Serializer czj$a net/minecraft/class_1867$class_1868 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48360 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46104 + m (I)[Lnet/minecraft/world/item/crafting/Ingredient; method_53756 a method_53756 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53759 a method_53759 + m (Lnet/minecraft/world/item/crafting/Ingredient;)Z method_53757 a method_53757 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/core/NonNullList; method_53758 a method_53758 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_53760 a method_53760 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/ShapelessRecipe; fromNetwork a method_8141 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/world/item/crafting/Ingredient; method_56105 a method_56105 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/ShapelessRecipe;)V toNetwork a method_8143 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/world/item/ItemStack; method_53762 b method_53762 + m ()Ljava/lang/String; method_53761 c method_53761 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Lnet/minecraft/world/item/crafting/CraftingBookCategory; method_53764 c method_53764 + m ()Ljava/lang/String; method_53763 d method_53763 + m (Lnet/minecraft/world/item/crafting/ShapelessRecipe;)Ljava/lang/String; method_53765 d method_53765 + m ()V + m ()V +c net/minecraft/world/item/crafting/ShieldDecorationRecipe czk net/minecraft/class_1872 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17732 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17731 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/ShulkerBoxColoring czl net/minecraft/class_1871 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17734 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17733 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/SimpleCookingSerializer czm net/minecraft/class_3957 + f Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory; factory x field_17552 + f Lcom/mojang/serialization/MapCodec; codec y field_46105 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec z field_48361 + m (ILnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53766 a method_53766 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/Integer; method_53767 a method_53767 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)Lnet/minecraft/world/item/crafting/AbstractCookingRecipe; create a method_55104 + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/AbstractCookingRecipe; fromNetwork a method_17737 + p 1 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)V toNetwork a method_17735 + p 1 buffer + p 2 recipe + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/Float; method_53768 b method_53768 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/ItemStack; method_53769 c method_53769 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53770 d method_53770 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Lnet/minecraft/world/item/crafting/CookingBookCategory; method_53771 e method_53771 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe;)Ljava/lang/String; method_53772 f method_53772 + m (Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;I)V + p 1 factory + p 2 cookingTime +c net/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer czn net/minecraft/class_1866 + f Lcom/mojang/serialization/MapCodec; codec x field_46106 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec y field_48362 + m (Lnet/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53773 a method_53773 + m (Lnet/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory;)V + p 1 constructor +c net/minecraft/world/item/crafting/SimpleCraftingRecipeSerializer$Factory czn$a net/minecraft/class_1866$class_7711 +c net/minecraft/world/item/crafting/SingleItemRecipe czo net/minecraft/class_3972 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient a field_17642 + f Lnet/minecraft/world/item/ItemStack; result b field_17643 + f Ljava/lang/String; group c field_17645 + f Lnet/minecraft/world/item/crafting/RecipeType; type d field_17646 + f Lnet/minecraft/world/item/crafting/RecipeSerializer; serializer e field_17647 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_59998 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/RecipeType;Lnet/minecraft/world/item/crafting/RecipeSerializer;Ljava/lang/String;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 type + p 2 serializer + p 3 group + p 4 ingredient + p 5 result +c net/minecraft/world/item/crafting/SingleItemRecipe$Factory czo$a net/minecraft/class_3972$class_3974 +c net/minecraft/world/item/crafting/SingleItemRecipe$Serializer czo$b net/minecraft/class_3972$class_3973 + f Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory; factory x field_17648 + f Lcom/mojang/serialization/MapCodec; codec y field_46107 + f Lnet/minecraft/network/codec/StreamCodec; streamCodec z field_48363 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53774 a method_53774 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/ItemStack; method_56106 a method_56106 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_56107 b method_56107 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Ljava/lang/String; method_56108 c method_56108 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/ItemStack; method_53879 d method_53879 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53777 e method_53777 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe;)Ljava/lang/String; method_53778 f method_53778 + m (Lnet/minecraft/world/item/crafting/SingleItemRecipe$Factory;)V + p 1 factory +c net/minecraft/world/item/crafting/SingleRecipeInput czp net/minecraft/class_9696 + f Lnet/minecraft/world/item/ItemStack; item a comp_2676 + m ()Lnet/minecraft/world/item/ItemStack; item c comp_2676 + m (Lnet/minecraft/world/item/ItemStack;)V +c net/minecraft/world/item/crafting/SmeltingRecipe czq net/minecraft/class_3861 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/SmithingRecipe czr net/minecraft/class_8059 + m (Lnet/minecraft/world/item/ItemStack;)Z isTemplateIngredient a method_48453 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isBaseIngredient b method_48454 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;)Z isAdditionIngredient c method_30029 + p 1 stack +c net/minecraft/world/item/crafting/SmithingRecipeInput czs net/minecraft/class_9697 + f Lnet/minecraft/world/item/ItemStack; template a comp_2677 + f Lnet/minecraft/world/item/ItemStack; base b comp_2678 + f Lnet/minecraft/world/item/ItemStack; addition c comp_2679 + m ()Lnet/minecraft/world/item/ItemStack; template c comp_2677 + m ()Lnet/minecraft/world/item/ItemStack; base d comp_2678 + m ()Lnet/minecraft/world/item/ItemStack; addition e comp_2679 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)V +c net/minecraft/world/item/crafting/SmithingTransformRecipe czt net/minecraft/class_8060 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42030 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42031 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42032 + f Lnet/minecraft/world/item/ItemStack; result d field_42033 + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_59999 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_60000 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 template + p 2 base + p 3 addition + p 4 result +c net/minecraft/world/item/crafting/SmithingTransformRecipe$Serializer czt$a net/minecraft/class_8060$class_8061 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48364 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46108 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53780 a method_53780 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/ItemStack; method_53779 a method_53779 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/SmithingTransformRecipe; fromNetwork a method_48456 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)V toNetwork a method_48457 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53781 b method_53781 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53782 c method_53782 + m (Lnet/minecraft/world/item/crafting/SmithingTransformRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53783 d method_53783 + m ()V + m ()V +c net/minecraft/world/item/crafting/SmithingTrimRecipe czu net/minecraft/class_8062 + f Lnet/minecraft/world/item/crafting/Ingredient; template a field_42035 + f Lnet/minecraft/world/item/crafting/Ingredient; base b field_42036 + f Lnet/minecraft/world/item/crafting/Ingredient; addition c field_42037 + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_60001 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/SmithingRecipeInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_60002 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/crafting/Ingredient;)V + p 1 template + p 2 base + p 3 addition +c net/minecraft/world/item/crafting/SmithingTrimRecipe$Serializer czu$a net/minecraft/class_8062$class_8063 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC x field_48365 + f Lcom/mojang/serialization/MapCodec; CODEC y field_46109 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53785 a method_53785 + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53784 a method_53784 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/crafting/SmithingTrimRecipe; fromNetwork a method_48460 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)V toNetwork a method_48461 + p 0 buffer + p 1 recipe + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53786 b method_53786 + m (Lnet/minecraft/world/item/crafting/SmithingTrimRecipe;)Lnet/minecraft/world/item/crafting/Ingredient; method_53787 c method_53787 + m ()V + m ()V +c net/minecraft/world/item/crafting/SmokingRecipe czv net/minecraft/class_3862 + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/CookingBookCategory;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;FI)V + p 1 group + p 2 category + p 3 ingredient + p 4 result + p 5 experience + p 6 cookingTime +c net/minecraft/world/item/crafting/StonecutterRecipe czw net/minecraft/class_3975 + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;)Z matches a method_60003 + p 1 input + p 2 level + m (Ljava/lang/String;Lnet/minecraft/world/item/crafting/Ingredient;Lnet/minecraft/world/item/ItemStack;)V + p 1 group + p 2 ingredient + p 3 result +c net/minecraft/world/item/crafting/SuspiciousStewRecipe czx net/minecraft/class_1873 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17739 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17738 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/TippedArrowRecipe czy net/minecraft/class_1876 + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/world/level/Level;)Z matches a method_17741 + p 1 input + p 2 level + m (Lnet/minecraft/world/item/crafting/CraftingInput;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/item/ItemStack; assemble a method_17740 + p 1 input + p 2 registries + m (Lnet/minecraft/world/item/crafting/CraftingBookCategory;)V + p 1 category +c net/minecraft/world/item/crafting/package-info czz net/minecraft/class_6082 +c net/minecraft/world/item/enchantment/ConditionalEffect daa net/minecraft/class_9698 + f Ljava/lang/Object; effect a comp_2680 + f Ljava/util/Optional; requirements b comp_2681 + m ()Ljava/lang/Object; effect a comp_2680 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; codec a method_60004 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60005 a method_60005 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_60006 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; conditionCodec a method_60007 + p 0 params + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lcom/mojang/serialization/DataResult; method_60008 a method_60008 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lcom/mojang/serialization/DataResult; method_60009 a method_60009 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_60010 a method_60010 + m ()Ljava/util/Optional; requirements b comp_2681 + m (Ljava/lang/String;)Ljava/lang/String; method_60011 b method_60011 + m (Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/world/item/enchantment/EnchantedItemInUse dab net/minecraft/class_9699 + f Lnet/minecraft/world/item/ItemStack; itemStack a comp_2682 + f Lnet/minecraft/world/entity/EquipmentSlot; inSlot b comp_2683 + f Lnet/minecraft/world/entity/LivingEntity; owner c comp_2684 + f Ljava/util/function/Consumer; onBreak d comp_2685 + m ()Lnet/minecraft/world/item/ItemStack; itemStack a comp_2682 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/item/Item;)V method_60012 a method_60012 + m ()Lnet/minecraft/world/entity/EquipmentSlot; inSlot b comp_2683 + m ()Lnet/minecraft/world/entity/LivingEntity; owner c comp_2684 + m ()Ljava/util/function/Consumer; onBreak d comp_2685 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;)V + p 1 itemStack + p 2 inSlot + p 3 owner + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Consumer;)V +c net/minecraft/world/item/enchantment/Enchantment dac net/minecraft/class_1887 + f I MAX_LEVEL a field_51949 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_51643 + f Lcom/mojang/serialization/Codec; CODEC c field_51644 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_51950 + f Lnet/minecraft/network/chat/Component; description e comp_2686 + f Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition f comp_2687 + f Lnet/minecraft/core/HolderSet; exclusiveSet g comp_2688 + f Lnet/minecraft/core/component/DataComponentMap; effects h comp_2689 + m ()Lnet/minecraft/core/HolderSet; getSupportedItems a method_56109 + m (I)Lnet/minecraft/world/item/enchantment/Enchantment$Cost; constantCost a method_58440 + p 0 cost + m (II)Lnet/minecraft/world/item/enchantment/Enchantment$Cost; dynamicCost a method_58441 + p 0 base + p 1 perLevel + m (ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;)V stopLocationBasedEffects a method_60013 + p 1 enchantmentLevel + p 2 item + p 3 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)Z isImmuneToDamage a method_60014 + p 1 level + p 2 enchantmentLevel + p 3 entity + p 4 damageSource + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/level/storage/loot/LootContext; entityContext a method_60015 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 origin + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/storage/loot/LootContext; blockHitContext a method_60768 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 origin + p 4 state + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Z)Lnet/minecraft/world/level/storage/loot/LootContext; locationContext a method_60016 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 enchantmentActive + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/storage/loot/LootContext; itemContext a method_60017 + p 0 level + p 1 enchantmentLevel + p 2 tool + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamageProtection a method_60018 + p 1 level + p 2 enchantmentLevel + p 3 stack + p 4 entity + p 5 damageSource + p 6 damageProtection + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyMobExperience a method_60019 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 mobExperience + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDurabilityChange a method_60020 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 durabilityChange + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;)V tick a method_60021 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60022 a method_60022 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60024 a method_60024 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;)V onHitBlock a method_60023 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 pos + p 6 state + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;)V runLocationChangedEffects a method_60025 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttack a method_8189 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 target + p 5 entity + p 6 damageSource + m (Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyTridentSpinAttackStrength a method_60049 + p 1 random + p 2 enchantmentLevel + p 3 value + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z matchingSlot a method_60026 + p 1 slot + m (Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/EquipmentSlotGroup;)Z method_60027 a method_60027 + m (Lnet/minecraft/world/entity/LivingEntity;)Ljava/util/Map; getSlotItems a method_8185 + c Creates a new map containing all items equipped by an entity in {@linkplain #slots slots that the enchantment cares about}. These items are not tested for having the enchantment. + p 1 entity + c The entity to collect equipment for. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60028 a method_60028 + m (Lnet/minecraft/world/item/ItemStack;)Z isPrimaryItem a method_58444 + p 1 stack + m (Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/LivingEntity;ILnet/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect;)V method_60029 a method_60029 + m (Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; enchantment a method_60030 + p 0 definition + m (Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttack a method_60031 + p 0 effect + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 damageSource + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V applyEffects a method_60032 + p 0 effects + p 1 context + p 2 applier + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/network/chat/Component; getFullname a method_8179 + p 0 enchantment + p 1 level + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)Z areCompatible a method_60033 + p 0 first + p 1 second + m (Lnet/minecraft/core/HolderSet;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;I[Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a method_58442 + p 0 supportedItems + p 1 weight + p 2 maxLevel + p 3 minCost + p 4 maxCost + p 5 anvilCost + p 6 slots + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/HolderSet;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;I[Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a method_58443 + p 0 supportedItems + p 1 primaryItems + p 2 weight + p 3 maxLevel + p 4 minCost + p 5 maxCost + p 6 anvilCost + p 7 slots + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; getEffects a method_60034 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamageFilteredValue a method_60035 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 entity + p 6 damageSource + p 7 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyEntityFilteredValue a method_60036 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 entity + p 6 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyItemFilteredCount a method_60037 + p 1 componentType + p 2 level + p 3 enchantmentLevel + p 4 tool + p 5 value + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyUnfilteredValue a method_60506 + p 1 componentType + p 2 random + p 3 enchantmentLevel + p 4 value + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60038 a method_60038 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60039 a method_60039 + m ()I getWeight b method_58445 + m (I)I getMinCost b method_8182 + c Returns the minimal value of enchantability needed on the enchantment level passed. + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)Lnet/minecraft/world/level/storage/loot/LootContext; damageContext b method_60040 + p 0 level + p 1 enchantmentLevel + p 2 entity + p 3 damageSource + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDamage b method_60041 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 damage + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyTridentReturnToOwnerAcceleration b method_60042 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 tridentReturnToOwnerAcceleration + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyAmmoCount b method_60043 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 ammoCount + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;)V onProjectileSpawned b method_60044 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)V method_60045 b method_60045 + m (Lnet/minecraft/util/RandomSource;ILorg/apache/commons/lang3/mutable/MutableFloat;)V modifyCrossbowChargeTime b method_60058 + p 1 random + p 2 enchantmentLevel + p 3 value + m (Lnet/minecraft/world/item/ItemStack;)Z isSupportedItem b method_60046 + p 1 item + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)V method_60047 b method_60047 + m ()I getAnvilCost c method_58446 + m (I)I getMaxCost c method_20742 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFallBasedDamage c method_60048 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 fallBasedDamage + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFishingTimeReduction c method_60052 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 fishingTimeReduction + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyPiercingCount c method_60050 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 piercingCount + m (Lnet/minecraft/world/item/ItemStack;)Z canEnchant c method_8192 + c Checks if the enchantment can be applied to a given ItemStack. + p 1 stack + c The ItemStack to test. + m ()I getMinLevel d method_8187 + c Gets the minimum level of the enchantment under normal circumstances such as the enchanting table. This limit is not strictly enforced and may be ignored through custom item NBT or other customizations. + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyKnockback d method_60051 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 knockback + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyFishingLuckBonus d method_60055 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 fishingLuckBonus + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyBlockExperience d method_60053 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 blockExperience + m ()I getMaxLevel e method_8183 + c Gets the maximum level of the enchantment under normal circumstances such as the enchanting table. This limit is not strictly enforced and may be ignored through custom item NBT or other customizations. + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyArmorEffectivness e method_60054 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 damageSource + p 6 armorEffectiveness + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyProjectileCount e method_60057 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 projectileCount + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyDurabilityToRepairFromXp e method_60056 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 durabilityToRepairFromXp + m ()Lnet/minecraft/network/chat/Component; description f comp_2686 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V modifyProjectileSpread f method_60059 + p 1 level + p 2 enchantmentLevel + p 3 tool + p 4 entity + p 5 projectileSpread + m ()Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition g comp_2687 + m ()Lnet/minecraft/core/HolderSet; exclusiveSet h comp_2688 + m ()Lnet/minecraft/core/component/DataComponentMap; effects i comp_2689 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/component/DataComponentMap;)V + m ()V +c net/minecraft/world/item/enchantment/Enchantment$1 dac$1 net/minecraft/class_1887$1 + f [I $SwitchMap$net$minecraft$world$item$enchantment$EnchantmentTarget a field_7133 + m ()V +c net/minecraft/world/item/enchantment/Enchantment$Builder dac$a net/minecraft/class_1887$class_9700 + f Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition; definition a field_51645 + f Lnet/minecraft/core/HolderSet; exclusiveSet b field_51646 + f Ljava/util/Map; effectLists c field_51647 + f Lnet/minecraft/core/component/DataComponentMap$Builder; effectMapBuilder d field_51648 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/item/enchantment/Enchantment; build a method_60060 + p 1 location + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; exclusiveWith a method_60061 + p 1 exclusiveSet + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60062 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60063 + p 1 componentType + p 2 enchanted + p 3 affected + p 4 effect + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60064 + p 1 componentType + p 2 enchanted + p 3 affected + p 4 effect + p 5 requirements + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60065 + p 1 componentType + p 2 effect + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60066 + p 1 componentType + p 2 effect + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withEffect a method_60067 + p 1 componentType + p 2 effect + p 3 requirements + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; method_60068 a method_60068 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/util/List; getEffectsList b method_60069 + p 1 componentType + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/item/enchantment/Enchantment$Builder; withSpecialEffect b method_60070 + p 1 component + p 2 value + m (Lnet/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition;)V + p 1 definition +c net/minecraft/world/item/enchantment/Enchantment$Cost dac$b net/minecraft/class_1887$class_9426 + f Lcom/mojang/serialization/Codec; CODEC a field_51649 + f I base b comp_2504 + f I perLevelAboveFirst c comp_2690 + m ()I base a comp_2504 + m (I)I calculate a method_58447 + p 1 level + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60071 a method_60071 + m ()I perLevelAboveFirst b comp_2690 + m (II)V + m ()V +c net/minecraft/world/item/enchantment/Enchantment$EnchantmentDefinition dac$c net/minecraft/class_1887$class_9427 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51650 + f Lnet/minecraft/core/HolderSet; supportedItems b comp_2506 + f Ljava/util/Optional; primaryItems c comp_2507 + f I weight d comp_2508 + f I maxLevel e comp_2509 + f Lnet/minecraft/world/item/enchantment/Enchantment$Cost; minCost f comp_2510 + f Lnet/minecraft/world/item/enchantment/Enchantment$Cost; maxCost g comp_2511 + f I anvilCost h comp_2512 + f Ljava/util/List; slots i comp_2513 + m ()Lnet/minecraft/core/HolderSet; supportedItems a comp_2506 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60072 a method_60072 + m ()Ljava/util/Optional; primaryItems b comp_2507 + m ()I weight c comp_2508 + m ()I maxLevel d comp_2509 + m ()Lnet/minecraft/world/item/enchantment/Enchantment$Cost; minCost e comp_2510 + m ()Lnet/minecraft/world/item/enchantment/Enchantment$Cost; maxCost f comp_2511 + m ()I anvilCost g comp_2512 + m ()Ljava/util/List; slots h comp_2513 + m (Lnet/minecraft/core/HolderSet;Ljava/util/Optional;IILnet/minecraft/world/item/enchantment/Enchantment$Cost;Lnet/minecraft/world/item/enchantment/Enchantment$Cost;ILjava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/EnchantmentEffectComponents dad net/minecraft/class_9701 + f Lnet/minecraft/core/component/DataComponentType; CROSSBOW_CHARGE_TIME A field_51677 + f Lnet/minecraft/core/component/DataComponentType; CROSSBOW_CHARGING_SOUNDS B field_51653 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_SOUND C field_51654 + f Lnet/minecraft/core/component/DataComponentType; PREVENT_EQUIPMENT_DROP D field_51655 + f Lnet/minecraft/core/component/DataComponentType; PREVENT_ARMOR_CHANGE E field_51656 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_SPIN_ATTACK_STRENGTH F field_51651 + f Lcom/mojang/serialization/Codec; COMPONENT_CODEC a field_51657 + f Lcom/mojang/serialization/Codec; CODEC b field_51658 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE_PROTECTION c field_51659 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE_IMMUNITY d field_51660 + f Lnet/minecraft/core/component/DataComponentType; DAMAGE e field_51661 + f Lnet/minecraft/core/component/DataComponentType; SMASH_DAMAGE_PER_FALLEN_BLOCK f field_51662 + f Lnet/minecraft/core/component/DataComponentType; KNOCKBACK g field_51663 + f Lnet/minecraft/core/component/DataComponentType; ARMOR_EFFECTIVENESS h field_51664 + f Lnet/minecraft/core/component/DataComponentType; POST_ATTACK i field_51665 + f Lnet/minecraft/core/component/DataComponentType; HIT_BLOCK j field_51666 + f Lnet/minecraft/core/component/DataComponentType; ITEM_DAMAGE k field_51667 + f Lnet/minecraft/core/component/DataComponentType; ATTRIBUTES l field_51668 + f Lnet/minecraft/core/component/DataComponentType; EQUIPMENT_DROPS m field_51669 + f Lnet/minecraft/core/component/DataComponentType; LOCATION_CHANGED n field_51670 + f Lnet/minecraft/core/component/DataComponentType; TICK o field_51671 + f Lnet/minecraft/core/component/DataComponentType; AMMO_USE p field_51672 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_PIERCING q field_51673 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_SPAWNED r field_51674 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_SPREAD s field_51675 + f Lnet/minecraft/core/component/DataComponentType; PROJECTILE_COUNT t field_51676 + f Lnet/minecraft/core/component/DataComponentType; TRIDENT_RETURN_ACCELERATION u field_51678 + f Lnet/minecraft/core/component/DataComponentType; FISHING_TIME_REDUCTION v field_51679 + f Lnet/minecraft/core/component/DataComponentType; FISHING_LUCK_BONUS w field_51680 + f Lnet/minecraft/core/component/DataComponentType; BLOCK_EXPERIENCE x field_51681 + f Lnet/minecraft/core/component/DataComponentType; MOB_EXPERIENCE y field_51682 + f Lnet/minecraft/core/component/DataComponentType; REPAIR_WITH_XP z field_51652 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60073 A method_60073 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60074 B method_60074 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60075 C method_60075 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60076 D method_60076 + m ()Lcom/mojang/serialization/Codec; method_60077 a method_60077 + m (Ljava/lang/String;Ljava/util/function/UnaryOperator;)Lnet/minecraft/core/component/DataComponentType; register a method_60078 + p 0 name + p 1 operator + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/component/DataComponentType; bootstrap a method_60079 + p 0 registry + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60084 a method_60084 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60080 b method_60080 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60081 c method_60081 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60082 d method_60082 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60083 e method_60083 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60085 f method_60085 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60086 g method_60086 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60087 h method_60087 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60088 i method_60088 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60089 j method_60089 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60090 k method_60090 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60091 l method_60091 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60092 m method_60092 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60093 n method_60093 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60094 o method_60094 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60095 p method_60095 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60096 q method_60096 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60097 r method_60097 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60098 s method_60098 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60099 t method_60099 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60100 u method_60100 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60101 v method_60101 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60102 w method_60102 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60103 x method_60103 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60104 y method_60104 + m (Lnet/minecraft/core/component/DataComponentType$Builder;)Lnet/minecraft/core/component/DataComponentType$Builder; method_60105 z method_60105 + m ()V +c net/minecraft/world/item/enchantment/EnchantmentHelper dae net/minecraft/class_1890 + m (ILnet/minecraft/world/item/ItemStack;Ljava/util/stream/Stream;)Ljava/util/List; getAvailableEnchantmentResults a method_8229 + p 0 level + p 1 stack + p 2 possibleEnchantments + m (ILjava/util/List;Lnet/minecraft/core/Holder;)V method_60106 a method_60106 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V doPostAttackEffects a method_60107 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/item/ItemStack;)V doPostAttackEffectsWithItemSource a method_60619 + p 0 level + p 1 entity + p 2 damageSource + p 3 itemSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60620 a method_60620 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;I)I processMobExperience a method_60109 + p 0 level + p 1 killer + p 2 mob + p 3 experience + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60110 a method_60110 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V runLocationChangedEffects a method_60111 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)Z isImmuneToDamage a method_60112 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;F)F processEquipmentDropChance a method_60113 + p 0 level + p 1 entity + p 2 damageSource + p 3 equipmentDropChance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60114 a method_60114 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60115 a method_60115 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60116 a method_60116 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I processDurabilityChange a method_60117 + p 0 level + p 1 stack + p 2 damage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)I getFishingLuckBonus a method_8223 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;F)F processProjectileSpread a method_60118 + p 0 level + p 1 tool + p 2 entity + p 3 projectileSpread + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;I)I processProjectileCount a method_60119 + p 0 level + p 1 tool + p 2 entity + p 3 projectileCount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyDamage a method_60120 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 damage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60121 a method_60121 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60122 a method_60122 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Consumer;)V onHitBlock a method_60124 + p 0 level + p 1 stack + p 2 owner + p 3 entity + p 4 slot + p 5 pos + p 6 state + p 7 onBreak + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V runLocationChangedEffects a method_60125 + p 0 level + p 1 stack + p 2 entity + p 3 slot + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/projectile/AbstractArrow;Ljava/util/function/Consumer;)V onProjectileSpawned a method_60127 + p 0 level + p 1 firedFromWeapon + p 2 arrow + p 3 onBreak + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)I getPiercingCount a method_60128 + p 0 level + p 1 firedFromWeapon + p 2 pickupItemStack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)I processAmmoUse a method_60129 + p 0 level + p 1 weapon + p 2 ammo + p 3 count + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60163 a method_60163 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Holder;I)V method_60131 a method_60131 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/projectile/AbstractArrow;Lnet/minecraft/core/Holder;I)V method_60132 a method_60132 + m (Lnet/minecraft/util/RandomSource;IILnet/minecraft/world/item/ItemStack;)I getEnchantmentCost a method_8227 + c Returns the enchantability of itemstack, using a separate calculation for each enchantNum (0, 1 or 2), cutting to the max enchantability power of the table, which is locked to a max of 15. + p 0 random + p 1 enchantNum + p 2 power + p 3 stack + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILjava/util/stream/Stream;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_8233 + p 0 random + p 1 stack + p 2 level + p 3 possibleEnchantments + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/RegistryAccess;Ljava/util/Optional;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_60133 + p 0 random + p 1 stack + p 2 level + p 3 registryAccess + p 4 possibleEnchantments + m (Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder;I)V method_60134 a method_60134 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;Lnet/minecraft/core/Holder;I)V method_60621 a method_60621 + m (Lnet/minecraft/world/entity/LivingEntity;)V stopLocationBasedEffects a method_60135 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V runIterationOnEquipment a method_8209 + p 0 entity + p 1 visitor + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60136 a method_60136 + m (Lnet/minecraft/world/entity/LivingEntity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60126 a method_60126 + m (Lnet/minecraft/world/item/ItemStack;)Z canStoreEnchantments a method_57529 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/tags/TagKey;)Z hasTag a method_60138 + p 0 stack + p 1 tag + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V runIterationOnItem a method_60139 + p 0 stack + p 1 slot + p 2 entity + p 3 visitor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;)V forEachModifier a method_60140 + p 0 stack + p 1 slot + p 2 action + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;)V forEachModifier a method_60622 + p 0 stack + p 1 slotGroup + p 2 action + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;)F getTridentSpinAttackStrength a method_60123 + p 0 stack + p 1 entity + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;F)F modifyCrossbowChargingTime a method_60159 + p 0 stack + p 1 entity + p 2 crossbowChargingTime + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;)V stopLocationBasedEffects a method_60141 + p 0 stack + p 1 entity + p 2 slot + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentVisitor;)V runIterationOnItem a method_8220 + p 0 stack + p 1 visitor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments;)V setEnchantments a method_57530 + p 0 stack + p 1 enchantments + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/Consumer;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; updateEnchantments a method_57531 + p 0 stack + p 1 updater + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/util/RandomSource;)V enchantItemFromProvider a method_60137 + p 0 stack + p 1 registries + p 2 key + p 3 difficulty + p 4 random + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Z has a method_60142 + p 0 stack + p 1 componentType + m (Lnet/minecraft/world/item/ItemStack;ZLnet/minecraft/core/Holder;)Z method_60143 a method_60143 + m (Lnet/minecraft/world/item/enchantment/EnchantmentInstance;Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)Z method_60144 a method_60144 + m (Lnet/minecraft/world/item/enchantment/providers/EnchantmentProvider;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_60145 a method_60145 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;)V method_60146 a method_60146 + m (Ljava/util/Collection;Lnet/minecraft/core/Holder;)Z isEnchantmentCompatible a method_8201 + p 0 currentEnchantments + p 1 newEnchantment + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/EnchantmentInstance;)V filterCompatibleEnchantments a method_8231 + p 0 dataList + p 1 data + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_60147 a method_60147 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/EquipmentSlot;Ljava/util/function/BiConsumer;ILnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)V method_60148 a method_60148 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/EquipmentSlotGroup;Ljava/util/function/BiConsumer;ILnet/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect;)V method_60623 a method_60623 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/LivingEntity;)I getEnchantmentLevel a method_8203 + p 0 enchantment + p 1 entity + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/ItemStack;)I getItemEnchantmentLevel a method_8225 + p 0 enchantment + p 1 stack + m (Lnet/minecraft/core/RegistryAccess;)Ljava/util/stream/Stream; method_60149 a method_60149 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/entity/LivingEntity;Ljava/util/function/Predicate;)Ljava/util/Optional; getRandomItemWith a method_8204 + p 0 componentType + p 1 entity + p 2 filter + m (Lnet/minecraft/core/component/DataComponentType;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/core/Holder;I)V method_60150 a method_60150 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60151 a method_60151 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/core/Holder;I)V method_60152 a method_60152 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60624 b method_60624 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;)V tickEffects b method_60154 + p 0 level + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;)F getDamageProtection b method_8219 + p 0 level + p 1 entity + p 2 damageSource + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60155 b method_60155 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60156 b method_60156 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I processBlockExperience b method_60157 + p 0 level + p 1 stack + p 2 experience + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)F getFishingTimeReduction b method_60158 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyFallBasedDamage b method_60160 + p 0 level + p 1 tool + p 2 enity + p 3 damageSource + p 4 fallBasedDamage + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60161 b method_60161 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60162 b method_60162 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60173 b method_60173 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/ItemStack;ILjava/util/stream/Stream;)Ljava/util/List; selectEnchantment b method_8230 + p 0 random + p 1 stack + p 2 level + p 3 possibleEnchantments + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60164 b method_60164 + m (Lnet/minecraft/world/entity/LivingEntity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60130 b method_60130 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; getEnchantmentsForCrafting b method_57532 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Ljava/util/Optional; pickHighestLevel b method_60165 + p 0 stack + p 1 componentType + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect;)V method_60166 b method_60166 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/core/Holder;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;)V method_60167 c method_60167 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;I)I modifyDurabilityToRepairFromXp c method_60168 + p 0 level + p 1 stack + p 2 duabilityToRepairFromXp + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)I getTridentReturnToOwnerAcceleration c method_60169 + p 0 level + p 1 stack + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyArmorEffectiveness c method_60170 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 armorEffectiveness + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60171 c method_60171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60172 c method_60172 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60178 c method_60178 + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnyEnchantments c method_58117 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/datafixers/util/Pair; getHighestLevel c method_60174 + p 0 stack + p 1 componentType + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;F)F modifyKnockback d method_60175 + p 0 level + p 1 tool + p 2 entity + p 3 damageSource + p 4 knockback + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60176 d method_60176 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60177 d method_60177 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60180 d method_60180 + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentType; getComponentType d method_57533 + p 0 stack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60179 e method_60179 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;Lnet/minecraft/core/Holder;I)V method_60181 e method_60181 + m ()V +c net/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor dae$a net/minecraft/class_1890$class_9702 +c net/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentVisitor dae$b net/minecraft/class_1890$class_1891 +c net/minecraft/world/item/enchantment/EnchantmentInstance daf net/minecraft/class_1889 + c Defines an immutable instance of an enchantment and its level. + f Lnet/minecraft/core/Holder; enchantment a field_9093 + c The enchantment being represented. + f I level b field_9094 + c The level of the enchantment. + m (Lnet/minecraft/core/Holder;I)V + p 1 enchantment + p 2 level +c net/minecraft/world/item/enchantment/EnchantmentTarget dag net/minecraft/class_9703 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; ATTACKER a field_51683 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; DAMAGING_ENTITY b field_51684 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; VICTIM c field_51685 + f Lcom/mojang/serialization/Codec; CODEC d field_51686 + f Ljava/lang/String; id e field_51687 + f [Lnet/minecraft/world/item/enchantment/EnchantmentTarget; $VALUES f field_51688 + m ()[Lnet/minecraft/world/item/enchantment/EnchantmentTarget; $values a method_60182 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/item/enchantment/Enchantments dah net/minecraft/class_1893 + f Lnet/minecraft/resources/ResourceKey; FLAME A field_9126 + f Lnet/minecraft/resources/ResourceKey; INFINITY B field_9125 + f Lnet/minecraft/resources/ResourceKey; LUCK_OF_THE_SEA C field_9114 + f Lnet/minecraft/resources/ResourceKey; LURE D field_9100 + f Lnet/minecraft/resources/ResourceKey; LOYALTY E field_9120 + f Lnet/minecraft/resources/ResourceKey; IMPALING F field_9106 + f Lnet/minecraft/resources/ResourceKey; RIPTIDE G field_9104 + f Lnet/minecraft/resources/ResourceKey; CHANNELING H field_9117 + f Lnet/minecraft/resources/ResourceKey; MULTISHOT I field_9108 + f Lnet/minecraft/resources/ResourceKey; QUICK_CHARGE J field_9098 + f Lnet/minecraft/resources/ResourceKey; PIERCING K field_9132 + f Lnet/minecraft/resources/ResourceKey; DENSITY L field_50157 + f Lnet/minecraft/resources/ResourceKey; BREACH M field_50158 + f Lnet/minecraft/resources/ResourceKey; WIND_BURST N field_50159 + f Lnet/minecraft/resources/ResourceKey; MENDING O field_9101 + f Lnet/minecraft/resources/ResourceKey; VANISHING_CURSE P field_9109 + f Lnet/minecraft/resources/ResourceKey; PROTECTION a field_9111 + f Lnet/minecraft/resources/ResourceKey; FIRE_PROTECTION b field_9095 + f Lnet/minecraft/resources/ResourceKey; FEATHER_FALLING c field_9129 + f Lnet/minecraft/resources/ResourceKey; BLAST_PROTECTION d field_9107 + f Lnet/minecraft/resources/ResourceKey; PROJECTILE_PROTECTION e field_9096 + f Lnet/minecraft/resources/ResourceKey; RESPIRATION f field_9127 + f Lnet/minecraft/resources/ResourceKey; AQUA_AFFINITY g field_9105 + f Lnet/minecraft/resources/ResourceKey; THORNS h field_9097 + f Lnet/minecraft/resources/ResourceKey; DEPTH_STRIDER i field_9128 + f Lnet/minecraft/resources/ResourceKey; FROST_WALKER j field_9122 + f Lnet/minecraft/resources/ResourceKey; BINDING_CURSE k field_9113 + f Lnet/minecraft/resources/ResourceKey; SOUL_SPEED l field_23071 + f Lnet/minecraft/resources/ResourceKey; SWIFT_SNEAK m field_38223 + f Lnet/minecraft/resources/ResourceKey; SHARPNESS n field_9118 + f Lnet/minecraft/resources/ResourceKey; SMITE o field_9123 + f Lnet/minecraft/resources/ResourceKey; BANE_OF_ARTHROPODS p field_9112 + f Lnet/minecraft/resources/ResourceKey; KNOCKBACK q field_9121 + f Lnet/minecraft/resources/ResourceKey; FIRE_ASPECT r field_9124 + f Lnet/minecraft/resources/ResourceKey; LOOTING s field_9110 + f Lnet/minecraft/resources/ResourceKey; SWEEPING_EDGE t field_9115 + f Lnet/minecraft/resources/ResourceKey; EFFICIENCY u field_9131 + f Lnet/minecraft/resources/ResourceKey; SILK_TOUCH v field_9099 + f Lnet/minecraft/resources/ResourceKey; UNBREAKING w field_9119 + f Lnet/minecraft/resources/ResourceKey; FORTUNE x field_9130 + f Lnet/minecraft/resources/ResourceKey; POWER y field_9103 + f Lnet/minecraft/resources/ResourceKey; PUNCH z field_9116 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; key a method_60183 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60184 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/enchantment/Enchantment$Builder;)V register a method_8235 + p 0 context + p 1 key + p 2 builder + m ()V + m ()V +c net/minecraft/world/item/enchantment/ItemEnchantments dai net/minecraft/class_9304 + f Lnet/minecraft/world/item/enchantment/ItemEnchantments; EMPTY a field_49385 + f Lcom/mojang/serialization/Codec; CODEC b field_49386 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49387 + f Lcom/mojang/serialization/Codec; LEVEL_CODEC d field_49388 + f Lcom/mojang/serialization/Codec; LEVELS_CODEC e field_49753 + f Lcom/mojang/serialization/Codec; FULL_CODEC f field_49754 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; enchantments g field_49389 + f Z showInTooltip h field_49390 + m ()Ljava/util/Set; keySet a method_57534 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57535 a method_57535 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Ljava/lang/Boolean; method_57537 a method_57537 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)Lnet/minecraft/world/item/enchantment/ItemEnchantments; method_58118 a method_58118 + m (Lnet/minecraft/core/Holder;)I getLevel a method_57536 + p 1 enchantment + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/core/HolderSet; getTagOrEmpty a method_59716 + p 0 registries + p 1 registryKey + p 2 key + m (Z)Lnet/minecraft/world/item/enchantment/ItemEnchantments; withTooltip a method_58449 + p 1 showInTooltip + m ()Ljava/util/Set; entrySet b method_57539 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; method_57540 b method_57540 + m ()I size c method_57541 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Ljava/lang/Boolean; method_57542 c method_57542 + m ()Z isEmpty d method_57543 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; method_57544 d method_57544 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Z)V + p 1 enchantments + p 2 showInTooltip + m ()V +c net/minecraft/world/item/enchantment/ItemEnchantments$Mutable dai$a net/minecraft/class_9304$class_9305 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; enchantments a field_49391 + f Z showInTooltip b field_49392 + m ()Ljava/util/Set; keySet a method_57545 + m (Ljava/util/function/Predicate;)V removeIf a method_57548 + p 1 predicate + m (Lnet/minecraft/core/Holder;)I getLevel a method_57546 + p 1 enchantment + m (Lnet/minecraft/core/Holder;I)V set a method_57547 + p 1 enchantment + p 2 level + m ()Lnet/minecraft/world/item/enchantment/ItemEnchantments; toImmutable b method_57549 + m (Lnet/minecraft/core/Holder;I)V upgrade b method_57550 + p 1 enchantment + p 2 level + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments;)V + p 1 enchantments +c net/minecraft/world/item/enchantment/LevelBasedValue daj net/minecraft/class_9704 + f Lcom/mojang/serialization/Codec; DISPATCH_CODEC a field_51689 + f Lcom/mojang/serialization/Codec; CODEC b field_51690 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60185 + m (F)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Constant; constant a method_60186 + p 0 value + m (FF)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Linear; perLevel a method_60187 + p 0 base + p 1 perLevelAfterFirst + m (I)F calculate a method_60188 + p 1 level + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60189 a method_60189 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_60190 a method_60190 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Constant;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60191 a method_60191 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lcom/mojang/datafixers/util/Either; method_60192 a method_60192 + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Lookup; lookup a method_60987 + p 0 values + p 1 fallback + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60193 + p 0 registry + m (F)Lnet/minecraft/world/item/enchantment/LevelBasedValue$Linear; perLevel b method_60194 + p 0 perLevel + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60195 b method_60195 + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Clamped daj$a net/minecraft/class_9704$class_9705 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51691 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value d comp_2691 + f F min e comp_2692 + f F max f comp_2693 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60196 a method_60196 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Clamped;)Lcom/mojang/serialization/DataResult; method_60197 a method_60197 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2691 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue$Clamped;)Ljava/lang/String; method_60198 b method_60198 + m ()F min c comp_2692 + m ()F max d comp_2693 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;FF)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Constant daj$b net/minecraft/class_9704$class_9706 + f Lcom/mojang/serialization/Codec; CODEC c field_51692 + f Lcom/mojang/serialization/MapCodec; TYPED_CODEC d field_51693 + f F value e comp_2694 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60199 a method_60199 + m ()F value b comp_2694 + m (F)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Fraction daj$c net/minecraft/class_9704$class_9707 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51694 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; numerator d comp_2695 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; denominator e comp_2696 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60200 a method_60200 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; numerator b comp_2695 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; denominator c comp_2696 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$LevelsSquared daj$d net/minecraft/class_9704$class_9708 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51695 + f F added d comp_2697 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60201 a method_60201 + m ()F added b comp_2697 + m (F)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Linear daj$e net/minecraft/class_9704$class_9709 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51696 + f F base d comp_2698 + f F perLevelAboveFirst e comp_2699 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60202 a method_60202 + m ()F base b comp_2698 + m ()F perLevelAboveFirst c comp_2699 + m (FF)V + m ()V +c net/minecraft/world/item/enchantment/LevelBasedValue$Lookup daj$f net/minecraft/class_9704$class_9819 + f Lcom/mojang/serialization/MapCodec; CODEC c field_52226 + f Ljava/util/List; values d comp_2862 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; fallback e comp_2863 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60988 a method_60988 + m ()Ljava/util/List; values b comp_2862 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; fallback c comp_2863 + m (Ljava/util/List;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/TargetedConditionalEffect dak net/minecraft/class_9710 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; enchanted a comp_2700 + f Lnet/minecraft/world/item/enchantment/EnchantmentTarget; affected b comp_2701 + f Ljava/lang/Object; effect c comp_2702 + f Ljava/util/Optional; requirements d comp_2703 + m ()Lnet/minecraft/world/item/enchantment/EnchantmentTarget; enchanted a comp_2700 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; codec a method_60203 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60204 a method_60204 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;)Lcom/mojang/serialization/DataResult; method_60205 a method_60205 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Ljava/util/Optional;)Lnet/minecraft/world/item/enchantment/TargetedConditionalEffect; method_60206 a method_60206 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z matches a method_60207 + p 1 context + m ()Lnet/minecraft/world/item/enchantment/EnchantmentTarget; affected b comp_2701 + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lcom/mojang/serialization/Codec; equipmentDropsCodec b method_60208 + p 0 codec + p 1 params + m (Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60209 b method_60209 + m ()Ljava/lang/Object; effect c comp_2702 + m ()Ljava/util/Optional; requirements d comp_2703 + m ()Ljava/lang/String; method_60210 e method_60210 + m (Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Lnet/minecraft/world/item/enchantment/EnchantmentTarget;Ljava/lang/Object;Ljava/util/Optional;)V +c net/minecraft/world/item/enchantment/effects/AddValue dal net/minecraft/class_9711 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51697 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value c comp_2704 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60212 a method_60212 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2704 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf dam net/minecraft/class_9712 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; codec a method_60214 + p 0 codec + p 1 getter + p 2 factory + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60215 a method_60215 + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$EntityEffects; entityEffects a method_60216 + p 0 effects + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$LocationBasedEffects; locationBasedEffects a method_60217 + p 0 effects + m ([Lnet/minecraft/world/item/enchantment/effects/EnchantmentValueEffect;)Lnet/minecraft/world/item/enchantment/effects/AllOf$ValueEffects; valueEffects a method_60218 + p 0 effects +c net/minecraft/world/item/enchantment/effects/AllOf$EntityEffects dam$a net/minecraft/class_9712$class_9713 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51698 + f Ljava/util/List; effects d comp_2705 + m ()Ljava/util/List; effects b comp_2705 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf$LocationBasedEffects dam$b net/minecraft/class_9712$class_9714 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51699 + f Ljava/util/List; effects b comp_2706 + m ()Ljava/util/List; effects b comp_2706 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/AllOf$ValueEffects dam$c net/minecraft/class_9712$class_9715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51700 + f Ljava/util/List; effects c comp_2707 + m ()Ljava/util/List; effects b comp_2707 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ApplyMobEffect dan net/minecraft/class_9716 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51701 + f Lnet/minecraft/core/HolderSet; toApply d comp_2708 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDuration e comp_2709 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDuration f comp_2710 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minAmplifier g comp_2711 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxAmplifier h comp_2712 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60223 a method_60223 + m ()Lnet/minecraft/core/HolderSet; toApply b comp_2708 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDuration c comp_2709 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDuration d comp_2710 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minAmplifier e comp_2711 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxAmplifier f comp_2712 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageEntity dao net/minecraft/class_9717 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51702 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDamage d comp_2713 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDamage e comp_2714 + f Lnet/minecraft/core/Holder; damageType f comp_2715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60224 a method_60224 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; minDamage b comp_2713 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; maxDamage c comp_2714 + m ()Lnet/minecraft/core/Holder; damageType d comp_2715 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageImmunity dap net/minecraft/class_9718 + f Lnet/minecraft/world/item/enchantment/effects/DamageImmunity; INSTANCE a field_51703 + f Lcom/mojang/serialization/Codec; CODEC b field_51704 + m ()Lnet/minecraft/world/item/enchantment/effects/DamageImmunity; method_60225 a method_60225 + m ()V + m ()V +c net/minecraft/world/item/enchantment/effects/DamageItem daq net/minecraft/class_9719 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51705 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount d comp_2716 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60226 a method_60226 + m (Lnet/minecraft/world/item/enchantment/effects/DamageItem;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60227 a method_60227 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount b comp_2716 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentAttributeEffect dar net/minecraft/class_9720 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51706 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2839 + f Lnet/minecraft/core/Holder; attribute d comp_2718 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount e comp_2719 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation f comp_2720 + m (ILnet/minecraft/util/StringRepresentable;)Lnet/minecraft/world/entity/ai/attributes/AttributeModifier; getModifier a method_60228 + p 1 enchantmentLevel + p 2 slot + m (ILnet/minecraft/world/entity/EquipmentSlot;)Lcom/google/common/collect/HashMultimap; makeAttributeMap a method_60230 + p 1 enchantmentLevel + p 2 slot + m (Lnet/minecraft/util/StringRepresentable;)Lnet/minecraft/resources/ResourceLocation; idForSlot a method_60769 + p 1 slot + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60229 a method_60229 + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2839 + m ()Lnet/minecraft/core/Holder; attribute c comp_2718 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount d comp_2719 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation e comp_2720 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentEntityEffect das net/minecraft/class_9721 + f Lcom/mojang/serialization/Codec; CODEC b field_51707 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V apply a method_60220 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 origin + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60231 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentLocationBasedEffect dat net/minecraft/class_9722 + f Lcom/mojang/serialization/Codec; CODEC c field_51708 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60219 + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Z)V onChangedBlock a method_60221 + p 1 level + p 2 enchantmentLevel + p 3 item + p 4 entity + p 5 pos + p 6 applyTransientEffects + m (Lnet/minecraft/world/item/enchantment/EnchantedItemInUse;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;I)V onDeactivated a method_60222 + p 1 item + p 2 entity + p 3 pos + p 4 enchantmentLevel + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap b method_60232 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/EnchantmentValueEffect dau net/minecraft/class_9723 + f Lcom/mojang/serialization/Codec; CODEC b field_51709 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60211 + m (ILnet/minecraft/util/RandomSource;F)F process a method_60213 + p 1 enchantmentLevel + p 2 random + p 3 value + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60233 + p 0 registry + m ()V +c net/minecraft/world/item/enchantment/effects/ExplodeEffect dav net/minecraft/class_9724 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51710 + f Z attributeToUser d comp_2722 + f Ljava/util/Optional; damageType e comp_2723 + f Ljava/util/Optional; knockbackMultiplier f comp_2724 + f Ljava/util/Optional; immuneBlocks g comp_2725 + f Lnet/minecraft/world/phys/Vec3; offset h comp_2726 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius i comp_2727 + f Z createFire j comp_2728 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; blockInteraction k comp_2729 + f Lnet/minecraft/core/particles/ParticleOptions; smallParticle l comp_2730 + f Lnet/minecraft/core/particles/ParticleOptions; largeParticle m comp_2731 + f Lnet/minecraft/core/Holder; sound n comp_2732 + m (ILnet/minecraft/world/item/enchantment/LevelBasedValue;)Ljava/lang/Float; method_60234 a method_60234 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/damagesource/DamageSource; getDamageSource a method_60235 + p 1 entity + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60236 a method_60236 + m ()Z attributeToUser b comp_2722 + m ()Ljava/util/Optional; damageType c comp_2723 + m ()Ljava/util/Optional; knockbackMultiplier d comp_2724 + m ()Ljava/util/Optional; immuneBlocks e comp_2725 + m ()Lnet/minecraft/world/phys/Vec3; offset f comp_2726 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius g comp_2727 + m ()Z createFire h comp_2728 + m ()Lnet/minecraft/world/level/Level$ExplosionInteraction; blockInteraction i comp_2729 + m ()Lnet/minecraft/core/particles/ParticleOptions; smallParticle j comp_2730 + m ()Lnet/minecraft/core/particles/ParticleOptions; largeParticle k comp_2731 + m ()Lnet/minecraft/core/Holder; sound l comp_2732 + m (ZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/item/enchantment/LevelBasedValue;ZLnet/minecraft/world/level/Level$ExplosionInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/item/enchantment/effects/Ignite daw net/minecraft/class_9725 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51711 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; duration d comp_2733 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60237 a method_60237 + m (Lnet/minecraft/world/item/enchantment/effects/Ignite;)Lnet/minecraft/world/item/enchantment/LevelBasedValue; method_60238 a method_60238 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; duration b comp_2733 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/MultiplyValue dax net/minecraft/class_9726 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51712 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; factor c comp_2734 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60239 a method_60239 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; factor b comp_2734 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/PlaySoundEffect day net/minecraft/class_9727 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51713 + f Lnet/minecraft/core/Holder; soundEvent d comp_2735 + f Lnet/minecraft/util/valueproviders/FloatProvider; volume e comp_2736 + f Lnet/minecraft/util/valueproviders/FloatProvider; pitch f comp_2737 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60240 a method_60240 + m ()Lnet/minecraft/core/Holder; soundEvent b comp_2735 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; volume c comp_2736 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; pitch d comp_2737 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/RemoveBinomial daz net/minecraft/class_9728 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51714 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; chance c comp_2738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60241 a method_60241 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; chance b comp_2738 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ReplaceBlock dba net/minecraft/class_9729 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51715 + f Lnet/minecraft/core/Vec3i; offset d comp_2739 + f Ljava/util/Optional; predicate e comp_2740 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState f comp_2741 + f Ljava/util/Optional; triggerGameEvent g comp_2798 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60507 a method_60507 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Ljava/lang/Boolean; method_60242 a method_60242 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60243 a method_60243 + m ()Lnet/minecraft/core/Vec3i; offset b comp_2739 + m ()Ljava/util/Optional; predicate c comp_2740 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState d comp_2741 + m ()Ljava/util/Optional; triggerGameEvent e comp_2798 + m (Lnet/minecraft/core/Vec3i;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/ReplaceDisk dbb net/minecraft/class_9730 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51716 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius d comp_2742 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; height e comp_2743 + f Lnet/minecraft/core/Vec3i; offset f comp_2744 + f Ljava/util/Optional; predicate g comp_2745 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState h comp_2746 + f Ljava/util/Optional; triggerGameEvent i comp_2799 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60508 a method_60508 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Ljava/lang/Boolean; method_60244 a method_60244 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60245 a method_60245 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; radius b comp_2742 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; height c comp_2743 + m ()Lnet/minecraft/core/Vec3i; offset d comp_2744 + m ()Ljava/util/Optional; predicate e comp_2745 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockState f comp_2746 + m ()Ljava/util/Optional; triggerGameEvent g comp_2799 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Vec3i;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/RunFunction dbc net/minecraft/class_9731 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51717 + f Lnet/minecraft/resources/ResourceLocation; function d comp_2747 + f Lorg/slf4j/Logger; LOGGER e field_51718 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60246 a method_60246 + m ()Lnet/minecraft/resources/ResourceLocation; function b comp_2747 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SetBlockProperties dbd net/minecraft/class_9732 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51719 + f Lnet/minecraft/world/item/component/BlockItemStateProperties; properties d comp_2748 + f Lnet/minecraft/core/Vec3i; offset e comp_2749 + f Ljava/util/Optional; triggerGameEvent f comp_2800 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_60509 a method_60509 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60247 a method_60247 + m ()Lnet/minecraft/world/item/component/BlockItemStateProperties; properties b comp_2748 + m ()Lnet/minecraft/core/Vec3i; offset c comp_2749 + m ()Ljava/util/Optional; triggerGameEvent d comp_2800 + m (Lnet/minecraft/world/item/component/BlockItemStateProperties;)V + p 1 properties + m (Lnet/minecraft/world/item/component/BlockItemStateProperties;Lnet/minecraft/core/Vec3i;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SetValue dbe net/minecraft/class_9733 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51720 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; value c comp_2750 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60248 a method_60248 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; value b comp_2750 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect dbf net/minecraft/class_9734 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51721 + f Lnet/minecraft/core/particles/ParticleOptions; particle d comp_2751 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; horizontalPosition e comp_2752 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; verticalPosition f comp_2753 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; horizontalVelocity g comp_2754 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; verticalVelocity h comp_2755 + f Lnet/minecraft/util/valueproviders/FloatProvider; speed i comp_2756 + m (F)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; offsetFromEntityPosition a method_60249 + p 0 offset + m (Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; fixedVelocity a method_60250 + p 0 velocity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60251 a method_60251 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; inBoundingBox b method_60252 + m (F)Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; movementScaled b method_60253 + p 0 movementScale + m ()Lnet/minecraft/core/particles/ParticleOptions; particle c comp_2751 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; horizontalPosition d comp_2752 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource; verticalPosition e comp_2753 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; horizontalVelocity f comp_2754 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource; verticalVelocity g comp_2755 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; speed h comp_2756 + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource;Lnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource dbf$a net/minecraft/class_9734$class_9735 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51722 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; type b comp_2757 + f F offset c comp_2758 + f F scale d comp_2759 + m ()Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; type a comp_2757 + m (DDFLnet/minecraft/util/RandomSource;)D getCoordinate a method_60254 + p 1 position + p 3 center + p 5 size + p 6 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60255 a method_60255 + m (Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSource;)Lcom/mojang/serialization/DataResult; method_60256 a method_60256 + m ()F offset b comp_2758 + m ()F scale c comp_2759 + m ()Ljava/lang/String; method_60257 d method_60257 + m (Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType;FF)V + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType dbf$b net/minecraft/class_9734$class_9736 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; ENTITY_POSITION a field_51723 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; BOUNDING_BOX b field_51724 + f Lcom/mojang/serialization/Codec; CODEC c field_51725 + f Ljava/lang/String; id d field_51726 + f Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource; source e field_51727 + f [Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; $VALUES f field_51728 + m ()[Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType; $values a method_60258 + m (DDFLnet/minecraft/util/RandomSource;)D getCoordinate a method_60259 + p 1 position + p 3 center + p 5 size + p 6 random + m (DDFLnet/minecraft/util/RandomSource;)D method_60260 b method_60260 + m (DDFLnet/minecraft/util/RandomSource;)D method_60261 c method_60261 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource;)V + p 3 id + p 4 source + m ()V +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$PositionSourceType$CoordinateSource dbf$b$a net/minecraft/class_9734$class_9736$class_9737 +c net/minecraft/world/item/enchantment/effects/SpawnParticlesEffect$VelocitySource dbf$c net/minecraft/class_9734$class_9738 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51729 + f F movementScale b comp_2760 + f Lnet/minecraft/util/valueproviders/FloatProvider; base c comp_2761 + m ()F movementScale a comp_2760 + m (DLnet/minecraft/util/RandomSource;)D getVelocity a method_60262 + p 1 scale + p 3 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60263 a method_60263 + m ()Lnet/minecraft/util/valueproviders/FloatProvider; base b comp_2761 + m (FLnet/minecraft/util/valueproviders/FloatProvider;)V + m ()V +c net/minecraft/world/item/enchantment/effects/SummonEntityEffect dbg net/minecraft/class_9739 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51730 + f Lnet/minecraft/core/HolderSet; entityTypes d comp_2762 + f Z joinTeam e comp_2763 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60264 a method_60264 + m ()Lnet/minecraft/core/HolderSet; entityTypes b comp_2762 + m ()Z joinTeam c comp_2763 + m (Lnet/minecraft/core/HolderSet;Z)V + m ()V +c net/minecraft/world/item/enchantment/effects/package-info dbh net/minecraft/class_9740 +c net/minecraft/world/item/enchantment/package-info dbi net/minecraft/class_6083 +c net/minecraft/world/item/enchantment/providers/EnchantmentProvider dbj net/minecraft/class_9741 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_51731 + m ()Lcom/mojang/serialization/MapCodec; codec a method_60265 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/DifficultyInstance;)V enchant a method_60266 + p 1 stack + p 2 enchantments + p 3 random + p 4 difficulty + m ()V +c net/minecraft/world/item/enchantment/providers/EnchantmentProviderTypes dbk net/minecraft/class_9742 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_60267 + p 0 registry +c net/minecraft/world/item/enchantment/providers/EnchantmentsByCost dbl net/minecraft/class_9743 + f Lcom/mojang/serialization/MapCodec; CODEC b field_51732 + f Lnet/minecraft/core/HolderSet; enchantments c comp_2764 + f Lnet/minecraft/util/valueproviders/IntProvider; cost d comp_2765 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60268 a method_60268 + m ()Lnet/minecraft/core/HolderSet; enchantments b comp_2764 + m ()Lnet/minecraft/util/valueproviders/IntProvider; cost c comp_2765 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/item/enchantment/providers/EnchantmentsByCostWithDifficulty dbm net/minecraft/class_9744 + f I MAX_ALLOWED_VALUE_PART b field_52056 + f Lcom/mojang/serialization/MapCodec; CODEC c field_51733 + f Lnet/minecraft/core/HolderSet; enchantments d comp_2766 + f I minCost e comp_2767 + f I maxCostSpan f comp_2768 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60269 a method_60269 + m ()Lnet/minecraft/core/HolderSet; enchantments b comp_2766 + m ()I minCost c comp_2767 + m ()I maxCostSpan d comp_2768 + m (Lnet/minecraft/core/HolderSet;II)V + m ()V +c net/minecraft/world/item/enchantment/providers/SingleEnchantment dbn net/minecraft/class_9745 + f Lcom/mojang/serialization/MapCodec; CODEC b field_51734 + f Lnet/minecraft/core/Holder; enchantment c comp_2769 + f Lnet/minecraft/util/valueproviders/IntProvider; level d comp_2770 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60270 a method_60270 + m ()Lnet/minecraft/core/Holder; enchantment b comp_2769 + m ()Lnet/minecraft/util/valueproviders/IntProvider; level c comp_2770 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/item/enchantment/providers/TradeRebalanceEnchantmentProviders dbo net/minecraft/class_9746 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_BOOTS_5 A field_51735 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_HELMET_5 B field_51736 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_BOOTS_4 C field_51737 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_LEGGINGS_4 D field_51738 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_CHESTPLATE_4 E field_51739 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_HELMET_4 F field_51740 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_BOOTS_5 G field_51741 + f Lnet/minecraft/resources/ResourceKey; TRADES_SWAMP_ARMORER_HELMET_5 H field_51742 + f Lnet/minecraft/resources/ResourceKey; TRADES_TAIGA_ARMORER_LEGGINGS_5 I field_51743 + f Lnet/minecraft/resources/ResourceKey; TRADES_TAIGA_ARMORER_CHESTPLATE_5 J field_51744 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_BOOTS_4 a field_51745 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_LEGGINGS_4 b field_51746 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_CHESTPLATE_4 c field_51747 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_HELMET_4 d field_51748 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_LEGGINGS_5 e field_51749 + f Lnet/minecraft/resources/ResourceKey; TRADES_DESERT_ARMORER_CHESTPLATE_5 f field_51750 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_BOOTS_4 g field_51751 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_LEGGINGS_4 h field_51752 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_CHESTPLATE_4 i field_51753 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_HELMET_4 j field_51754 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_BOOTS_5 k field_51755 + f Lnet/minecraft/resources/ResourceKey; TRADES_PLAINS_ARMORER_LEGGINGS_5 l field_51756 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_BOOTS_4 m field_51757 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_LEGGINGS_4 n field_51758 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_CHESTPLATE_4 o field_51759 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_HELMET_4 p field_51760 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_CHESTPLATE_5 q field_51761 + f Lnet/minecraft/resources/ResourceKey; TRADES_SAVANNA_ARMORER_HELMET_5 r field_51762 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_BOOTS_4 s field_51763 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_HELMET_4 t field_51764 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_BOOTS_5 u field_51765 + f Lnet/minecraft/resources/ResourceKey; TRADES_SNOW_ARMORER_HELMET_5 v field_51766 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_BOOTS_4 w field_51767 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_LEGGINGS_4 x field_51768 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_CHESTPLATE_4 y field_51769 + f Lnet/minecraft/resources/ResourceKey; TRADES_JUNGLE_ARMORER_HELMET_4 z field_51770 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60271 + p 0 context + m ()V +c net/minecraft/world/item/enchantment/providers/VanillaEnchantmentProviders dbp net/minecraft/class_9747 + f Lnet/minecraft/resources/ResourceKey; MOB_SPAWN_EQUIPMENT a field_51771 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_SPAWN_CROSSBOW b field_51772 + f Lnet/minecraft/resources/ResourceKey; RAID_PILLAGER_POST_WAVE_3 c field_51773 + f Lnet/minecraft/resources/ResourceKey; RAID_PILLAGER_POST_WAVE_5 d field_51774 + f Lnet/minecraft/resources/ResourceKey; RAID_VINDICATOR e field_51775 + f Lnet/minecraft/resources/ResourceKey; RAID_VINDICATOR_POST_WAVE_5 f field_51776 + f Lnet/minecraft/resources/ResourceKey; ENDERMAN_LOOT_DROP g field_51777 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_60272 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_60273 + p 0 context + m ()V +c net/minecraft/world/item/enchantment/providers/package-info dbq net/minecraft/class_9748 +c net/minecraft/world/item/package-info dbr net/minecraft/class_6084 +c net/minecraft/world/item/trading/ItemCost dbs net/minecraft/class_9306 + f Lcom/mojang/serialization/Codec; CODEC a field_49393 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49394 + f Lnet/minecraft/network/codec/StreamCodec; OPTIONAL_STREAM_CODEC c field_49395 + f Lnet/minecraft/core/Holder; item d comp_2424 + f I count e comp_2425 + f Lnet/minecraft/core/component/DataComponentPredicate; components f comp_2426 + f Lnet/minecraft/world/item/ItemStack; itemStack g comp_2427 + m ()Lnet/minecraft/core/Holder; item a comp_2424 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57551 a method_57551 + m (Lnet/minecraft/world/item/ItemStack;)Z test a method_57552 + p 1 stack + m (Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/item/trading/ItemCost; withComponents a method_57554 + p 1 components + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;)Lnet/minecraft/world/item/ItemStack; createStack a method_57553 + p 0 item + p 1 count + p 2 componentPredicate + m ()I count b comp_2425 + m ()Lnet/minecraft/core/component/DataComponentPredicate; components c comp_2426 + m ()Lnet/minecraft/world/item/ItemStack; itemStack d comp_2427 + m (Lnet/minecraft/world/level/ItemLike;)V + p 1 item + m (Lnet/minecraft/world/level/ItemLike;I)V + p 1 item + p 2 count + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;)V + p 1 item + p 2 count + p 3 componentPredicate + m (Lnet/minecraft/core/Holder;ILnet/minecraft/core/component/DataComponentPredicate;Lnet/minecraft/world/item/ItemStack;)V + m ()V +c net/minecraft/world/item/trading/Merchant dbt net/minecraft/class_1915 + m (ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17448 a method_17448 + m (Lnet/minecraft/world/entity/player/Player;)V setTradingPlayer a method_8259 + p 1 tradingPlayer + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/network/chat/Component;I)V openTradingScreen a method_17449 + p 1 player + p 2 displayName + p 3 level + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V notifyTrade a method_8262 + p 1 offer + m (Lnet/minecraft/world/item/trading/MerchantOffers;)V overrideOffers a method_8261 + p 1 offers + m ()Lnet/minecraft/world/entity/player/Player; getTradingPlayer gk method_8257 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; getOffers gm method_8264 + m ()Z showProgressBar gn method_19270 + m ()Lnet/minecraft/sounds/SoundEvent; getNotifyTradeSound go method_18010 + m ()Z isClientSide gs method_38069 + m ()Z canRestock gw method_20708 + m (Lnet/minecraft/world/item/ItemStack;)V notifyTradeUpdated n method_8258 + c Notifies the merchant of a possible merchant recipe being fulfilled or not. Usually, this is just a sound byte being played depending on whether the suggested {@link net.minecraft.world.item.ItemStack} is not empty. + p 1 stack + m ()I getVillagerXp t method_19269 + m (I)V overrideXp t method_19271 + p 1 xp +c net/minecraft/world/item/trading/MerchantOffer dbu net/minecraft/class_1914 + f Lcom/mojang/serialization/Codec; CODEC a field_48849 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48371 + f Lnet/minecraft/world/item/trading/ItemCost; baseCostA c field_9146 + c The first input for this offer. + f Ljava/util/Optional; costB d field_9143 + c The second input for this offer. + f Lnet/minecraft/world/item/ItemStack; result e field_9148 + c The output of this offer. + f I uses f field_9147 + f I maxUses g field_9144 + f Z rewardExp h field_9145 + f I specialPriceDiff i field_18676 + f I demand j field_18677 + f F priceMultiplier k field_18678 + f I xp l field_18679 + m ()Lnet/minecraft/world/item/ItemStack; getBaseCostA a method_8246 + m (I)V addToSpecialPriceDiff a method_8245 + p 1 add + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56705 a method_56705 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z satisfiedBy a method_16952 + p 1 playerOfferA + p 2 playerOfferB + m (Lnet/minecraft/world/item/trading/ItemCost;)I getModifiedCostCount a method_57555 + p 1 itemCost + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56707 a method_56707 + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;)Lnet/minecraft/world/item/trading/MerchantOffer; createFromStream a method_56110 + p 0 buffer + m (Lnet/minecraft/network/RegistryFriendlyByteBuf;Lnet/minecraft/world/item/trading/MerchantOffer;)V writeToStream a method_56111 + p 0 buffer + p 1 offer + m ()Lnet/minecraft/world/item/ItemStack; getCostA b method_19272 + m (I)V setSpecialPriceDiff b method_19273 + p 1 price + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z take b method_16953 + p 1 playerOfferA + p 2 playerOfferB + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Float; method_56708 b method_56708 + m ()Lnet/minecraft/world/item/ItemStack; getCostB c method_8247 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56709 c method_56709 + m ()Lnet/minecraft/world/item/trading/ItemCost; getItemCostA d method_57556 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56710 d method_56710 + m ()Ljava/util/Optional; getItemCostB e method_57557 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Boolean; method_56711 e method_56711 + m ()Lnet/minecraft/world/item/ItemStack; getResult f method_8250 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56712 f method_56712 + m ()V updateDemand g method_19274 + c Calculates the demand with following formula: demand = demand + uses - maxUses - uses + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/lang/Integer; method_56713 g method_56713 + m ()Lnet/minecraft/world/item/ItemStack; assemble h method_18019 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Lnet/minecraft/world/item/ItemStack; method_56714 h method_56714 + m ()I getUses i method_8249 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Ljava/util/Optional; method_56715 i method_56715 + m ()V resetUses j method_19275 + m (Lnet/minecraft/world/item/trading/MerchantOffer;)Lnet/minecraft/world/item/trading/ItemCost; method_56716 j method_56716 + m ()I getMaxUses k method_8248 + m ()V increaseUses l method_8244 + m ()I getDemand m method_21725 + m ()V resetSpecialPriceDiff n method_19276 + m ()I getSpecialPriceDiff o method_19277 + m ()F getPriceMultiplier p method_19278 + m ()I getXp q method_19279 + m ()Z isOutOfStock r method_8255 + m ()V setToOutOfStock s method_8254 + m ()Z needsRestock t method_21834 + m ()Z shouldRewardExp u method_8256 + m ()Lnet/minecraft/world/item/trading/MerchantOffer; copy v method_53881 + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIZIIFI)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 rewardExp + p 7 specialPriceDiff + p 8 demand + p 9 priceMultiplier + p 10 xp + m (Lnet/minecraft/world/item/trading/ItemCost;Lnet/minecraft/world/item/ItemStack;IIF)V + p 1 baseCostA + p 2 result + p 3 maxUses + p 4 xp + p 5 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIF)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 maxUses + p 5 xp + p 6 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIIF)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 xp + p 7 priceMultiplier + m (Lnet/minecraft/world/item/trading/ItemCost;Ljava/util/Optional;Lnet/minecraft/world/item/ItemStack;IIIFI)V + p 1 baseCostA + p 2 costB + p 3 result + p 4 uses + p 5 maxUses + p 6 xp + p 7 priceMultiplier + p 8 demand + m (Lnet/minecraft/world/item/trading/MerchantOffer;)V + p 1 other + m ()V +c net/minecraft/world/item/trading/MerchantOffers dbv net/minecraft/class_1916 + f Lcom/mojang/serialization/Codec; CODEC a field_48850 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48373 + m ()Lnet/minecraft/world/item/trading/MerchantOffers; copy a method_53882 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/trading/MerchantOffer; getRecipeFor a method_8267 + p 1 stackA + p 2 stackB + p 3 index + m ()V + m (I)V + p 1 size + m (Ljava/util/Collection;)V + p 1 offers + m ()V +c net/minecraft/world/item/trading/package-info dbw net/minecraft/class_6085 +c net/minecraft/world/level/BaseCommandBlock dbx net/minecraft/class_1918 + f Ljava/text/SimpleDateFormat; TIME_FORMAT b field_9169 + c The formatting for the timestamp on commands run. + f Lnet/minecraft/network/chat/Component; DEFAULT_NAME c field_21515 + f J lastExecution d field_9167 + f Z updateLastExecution e field_9166 + f I successCount f field_9163 + c The number of successful commands run. (used for redstone output) + f Z trackOutput g field_9164 + f Lnet/minecraft/network/chat/Component; lastOutput h field_9165 + c The previously run command. + f Ljava/lang/String; command i field_9168 + c The command stored in the command block. + f Lnet/minecraft/network/chat/Component; customName j field_9162 + m (I)V setSuccessCount a method_8298 + p 1 successCount + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; usedBy a method_8288 + p 1 player + m (Lnet/minecraft/world/level/Level;)Z performCommand a method_8301 + p 1 level + m (Ljava/lang/String;)V setCommand a method_8286 + c Sets the command. + p 1 command + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_8297 + p 1 tag + p 2 levelRegistry + m (Z)V setTrackOutput a method_8287 + p 1 shouldTrackOutput + m (ZI)V method_8294 a method_8294 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V load b method_8305 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/network/chat/Component;)V setCustomName b method_8290 + p 1 customName + m (Lnet/minecraft/network/chat/Component;)V setLastOutput c method_8291 + p 1 lastOutputMessage + m ()Lnet/minecraft/server/level/ServerLevel; getLevel e method_8293 + m ()V onUpdated f method_8295 + m ()Lnet/minecraft/world/phys/Vec3; getPosition g method_8300 + m ()Ljava/lang/String; method_8302 h method_8302 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack i method_8303 + m ()Z isValid j method_52175 + m ()I getSuccessCount k method_8304 + c Returns the {@code successCount} int. + m ()Lnet/minecraft/network/chat/Component; getLastOutput l method_8292 + c Returns the lastOutput. + m ()Ljava/lang/String; getCommand m method_8289 + c Returns the command of the command block. + m ()Lnet/minecraft/network/chat/Component; getName n method_8299 + m ()Lnet/minecraft/network/chat/Component; getCustomName o method_57558 + m ()Z isTrackOutput p method_8296 + m ()V + m ()V +c net/minecraft/world/level/BaseSpawner dby net/minecraft/class_1917 + f Lorg/slf4j/Logger; LOGGER a field_9156 + f Ljava/lang/String; SPAWN_DATA_TAG b field_40877 + f I EVENT_SPAWN c field_30951 + f I spawnDelay d field_9154 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentials e field_9152 + f Lnet/minecraft/world/level/SpawnData; nextSpawnData f field_9155 + f D spin g field_9161 + f D oSpin h field_9159 + f I minSpawnDelay i field_9151 + f I maxSpawnDelay j field_9150 + f I spawnCount k field_9149 + f Lnet/minecraft/world/entity/Entity; displayEntity l field_9153 + c Cached instance of the entity to render inside the spawner. + f I maxNearbyEntities m field_9160 + f I requiredPlayerRange n field_9158 + f I spawnRange o field_9157 + m ()D getSpin a method_8278 + m (DDDLnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_18085 a method_18085 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V serverTick a method_31588 + p 1 serverLevel + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V setEntityId a method_8274 + p 1 type + p 2 level + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/Level;I)Z onEventTriggered a method_8275 + p 1 level + p 2 id + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/SpawnData; getOrCreateNextSpawnData a method_46404 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V clientTick a method_31589 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V broadcastEvent a method_8273 + p 1 level + p 2 pos + p 3 eventId + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_33356 a method_33356 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/SpawnData;)V setNextSpawnData a method_8277 + p 1 level + p 2 pos + p 3 nextSpawnData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V load a method_8280 + p 1 level + p 2 pos + p 3 tag + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_38081 a method_38081 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_8272 + p 1 tag + m ()D getoSpin b method_8279 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; getOrCreateDisplayEntity b method_8283 + p 1 level + p 2 pos + m (Ljava/lang/String;)V method_38080 b method_38080 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isNearPlayer c method_8284 + p 1 level + p 2 pos + m (Ljava/lang/String;)V method_46405 c method_46405 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V delay d method_8282 + p 1 level + p 2 pos + m ()V + m ()V +c net/minecraft/world/level/BlockAndTintGetter dbz net/minecraft/class_1920 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/BlockPos;)I getBrightness a method_8314 + p 1 lightType + p 2 blockPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I getBlockTint a method_23752 + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/core/Direction;Z)F getShade a method_24852 + p 1 direction + p 2 shade + m (Lnet/minecraft/core/BlockPos;I)I getRawBrightness b method_22335 + p 1 blockPos + p 2 amount + m (Lnet/minecraft/core/BlockPos;)Z canSeeSky h method_8311 + p 1 blockPos + m ()Lnet/minecraft/world/level/lighting/LevelLightEngine; getLightEngine y_ method_22336 +c net/minecraft/world/level/BlockCollisions dca net/minecraft/class_5329 + f Lnet/minecraft/world/phys/AABB; box a field_25169 + f Lnet/minecraft/world/phys/shapes/CollisionContext; context b field_25170 + f Lnet/minecraft/core/Cursor3D; cursor c field_25171 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; pos d field_25172 + f Lnet/minecraft/world/phys/shapes/VoxelShape; entityShape e field_25173 + f Lnet/minecraft/world/level/CollisionGetter; collisionGetter f field_25174 + f Z onlySuffocatingBlocks g field_35590 + f Lnet/minecraft/world/level/BlockGetter; cachedBlockGetter h field_35108 + f J cachedBlockGetterPos i field_35109 + f Ljava/util/function/BiFunction; resultProvider j field_44787 + m (II)Lnet/minecraft/world/level/BlockGetter; getChunk a method_29283 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;ZLjava/util/function/BiFunction;)V + p 1 collisionGetter + p 2 entity + p 3 box + p 4 onlySuffocatingBlocks + p 5 resultProvider +c net/minecraft/world/level/BlockEventData dcb net/minecraft/class_1919 + c @param paramA Different for each blockID + f Lnet/minecraft/core/BlockPos; pos a comp_60 + f Lnet/minecraft/world/level/block/Block; block b comp_61 + f I paramA c comp_62 + c Different for each blockID + f I paramB d comp_63 + m ()Lnet/minecraft/core/BlockPos; pos a comp_60 + m ()Lnet/minecraft/world/level/block/Block; block b comp_61 + m ()I paramA c comp_62 + m ()I paramB d comp_63 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V + p 1 pos + p 2 block + p 3 paramA + p 4 paramB +c net/minecraft/world/level/BlockGetter dcc net/minecraft/class_1922 + c

Interface {@link net.fabricmc.fabric.api.blockview.v2.FabricBlockView} injected by mod fabric-block-view-api-v2

+ m ()I getMaxLightLevel Q method_8315 + m (Lnet/minecraft/world/level/ClipBlockStateContext;)Lnet/minecraft/world/phys/BlockHitResult; isBlockInLine a method_32880 + p 1 context + m (Lnet/minecraft/world/level/ClipBlockStateContext;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; method_32881 a method_32881 + m (Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_17742 + c Checks if there's block between {@code from} and {@code to} of context.\nThis uses the collision shape of provided block. + p 1 context + m (Lnet/minecraft/world/level/ClipContext;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; method_17743 a method_17743 + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; getBlockStates a method_29546 + p 1 area + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/lang/Object;Ljava/util/function/BiFunction;Ljava/util/function/Function;)Ljava/lang/Object; traverseBlocks a method_17744 + p 0 from + p 1 to + p 2 context + p 3 tester + p 4 onFail + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/BlockHitResult; clipWithInteractionOverride a method_17745 + p 1 startVec + p 2 endVec + p 3 pos + p 4 shape + p 5 state + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Ljava/util/function/Supplier;)D getBlockFloorHeight a method_30346 + p 1 shape + p 2 belowShapeSupplier + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Ljava/util/Optional; getBlockEntity a method_35230 + p 1 pos + p 2 blockEntityType + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a_ method_8320 + p 1 pos + m (Lnet/minecraft/world/level/ClipBlockStateContext;)Lnet/minecraft/world/phys/BlockHitResult; method_32882 b method_32882 + m (Lnet/minecraft/world/level/ClipContext;)Lnet/minecraft/world/phys/BlockHitResult; method_17746 b method_17746 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/FluidState; getFluidState b_ method_8316 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity c_ method_8321 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_30348 f method_30348 + m (Lnet/minecraft/core/BlockPos;)I getLightEmission i method_8317 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)D getBlockFloorHeight j method_30347 + p 1 pos +c net/minecraft/world/level/ChunkPos dcd net/minecraft/class_1923 + f J INVALID_CHUNK_POS a field_17348 + c Value representing an absent or invalid chunkpos + f Lnet/minecraft/world/level/ChunkPos; ZERO b field_35107 + f I REGION_SIZE c field_38224 + f I REGION_MAX_INDEX d field_38225 + f I x e field_9181 + f I z f field_9180 + f I SAFETY_MARGIN g field_36299 + f J COORD_BITS h field_30953 + f J COORD_MASK i field_30954 + f I REGION_BITS j field_30955 + f I REGION_MASK k field_30956 + f I HASH_A l field_30957 + f I HASH_C m field_30958 + f I HASH_Z_XOR n field_30959 + m ()J toLong a method_8324 + m (I)I getBlockX a method_33939 + p 1 x + m (II)Lnet/minecraft/world/level/ChunkPos; minFromRegion a method_42305 + p 0 chunkX + p 1 chunkZ + m (III)Lnet/minecraft/core/BlockPos; getBlockAt a method_35231 + p 1 xSection + p 2 y + p 3 zSection + m (J)I getX a method_8325 + p 0 chunkAsLong + m (Lnet/minecraft/world/level/ChunkPos;)I getChessboardDistance a method_24022 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Ljava/util/stream/Stream; rangeClosed a method_19280 + p 0 center + p 1 radius + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; rangeClosed a method_19281 + p 0 start + p 1 end + m (Lnet/minecraft/core/BlockPos;)J asLong a method_37232 + p 0 pos + m ()I getMiddleBlockX b method_33940 + m (I)I getBlockZ b method_33941 + p 1 z + m (II)Lnet/minecraft/world/level/ChunkPos; maxFromRegion b method_42306 + p 0 chunkX + p 1 chunkZ + m (J)I getZ b method_8332 + p 0 chunkAsLong + m (Lnet/minecraft/world/level/ChunkPos;)I distanceSquared b method_52566 + p 1 chunkPos + m ()I getMiddleBlockZ c method_33942 + m (I)Lnet/minecraft/core/BlockPos; getMiddleBlockPosition c method_33943 + p 1 y + m (II)J asLong c method_8331 + c Converts the chunk coordinate pair to a long + p 0 x + p 1 z + m (J)I distanceSquared c method_52567 + p 1 packedPos + m ()I getMinBlockX d method_8326 + c Get the first world X coordinate that belongs to this Chunk + m (II)I hash d method_42307 + p 0 x + p 1 z + m ()I getMinBlockZ e method_8328 + c Get the first world Z coordinate that belongs to this Chunk + m (II)I getChessboardDistance e method_60510 + p 1 x + p 2 z + m ()I getMaxBlockX f method_8327 + c Get the last world X coordinate that belongs to this Chunk + m (II)I distanceSquared f method_52568 + p 1 x + p 2 z + m ()I getMaxBlockZ g method_8329 + c Get the last world Z coordinate that belongs to this Chunk + m ()I getRegionX h method_17885 + c Gets the x-coordinate of the region file containing this chunk. + m ()I getRegionZ i method_17886 + c Gets the z-coordinate of the region file containing this chunk. + m ()I getRegionLocalX j method_17887 + c Gets the x-coordinate of this chunk within the region file that contains it. + m ()I getRegionLocalZ k method_17888 + c Gets the z-coordinate of this chunk within the region file that contains it. + m ()Lnet/minecraft/core/BlockPos; getWorldPosition l method_8323 + m (II)V + p 1 x + p 2 y + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (J)V + p 1 packedPos + m ()V +c net/minecraft/world/level/ChunkPos$1 dcd$1 net/minecraft/class_1923$1 + f Lnet/minecraft/world/level/ChunkPos; val$from a field_18680 + f Lnet/minecraft/world/level/ChunkPos; val$to b field_18681 + f I val$zDiff c field_18682 + f I val$xDiff d field_18683 + f Lnet/minecraft/world/level/ChunkPos; pos e field_18684 + m (JILnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;II)V +c net/minecraft/world/level/ClipBlockStateContext dce net/minecraft/class_5702 + f Lnet/minecraft/world/phys/Vec3; from a field_28102 + f Lnet/minecraft/world/phys/Vec3; to b field_28103 + f Ljava/util/function/Predicate; block c field_28104 + m ()Lnet/minecraft/world/phys/Vec3; getTo a method_32883 + m ()Lnet/minecraft/world/phys/Vec3; getFrom b method_32884 + m ()Ljava/util/function/Predicate; isTargetBlock c method_32885 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;)V + p 1 from + p 2 to + p 3 block +c net/minecraft/world/level/ClipContext dcf net/minecraft/class_3959 + f Lnet/minecraft/world/phys/Vec3; from a field_17553 + f Lnet/minecraft/world/phys/Vec3; to b field_17554 + f Lnet/minecraft/world/level/ClipContext$Block; block c field_17555 + f Lnet/minecraft/world/level/ClipContext$Fluid; fluid d field_17556 + f Lnet/minecraft/world/phys/shapes/CollisionContext; collisionContext e field_17557 + m ()Lnet/minecraft/world/phys/Vec3; getTo a method_17747 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockShape a method_17748 + p 1 blockState + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFluidShape a method_17749 + p 1 state + p 2 level + p 3 pos + m ()Lnet/minecraft/world/phys/Vec3; getFrom b method_17750 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/entity/Entity;)V + p 1 from + p 2 to + p 3 block + p 4 fluid + p 5 entity + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/ClipContext$Block;Lnet/minecraft/world/level/ClipContext$Fluid;Lnet/minecraft/world/phys/shapes/CollisionContext;)V + p 1 from + p 2 to + p 3 block + p 4 fluid + p 5 collisionContext +c net/minecraft/world/level/ClipContext$Block dcf$a net/minecraft/class_3959$class_3960 + f Lnet/minecraft/world/level/ClipContext$Block; COLLIDER a field_17558 + f Lnet/minecraft/world/level/ClipContext$Block; OUTLINE b field_17559 + f Lnet/minecraft/world/level/ClipContext$Block; VISUAL c field_23142 + f Lnet/minecraft/world/level/ClipContext$Block; FALLDAMAGE_RESETTING d field_36337 + f Lnet/minecraft/world/level/ClipContext$ShapeGetter; shapeGetter e field_17560 + f [Lnet/minecraft/world/level/ClipContext$Block; $VALUES f field_17561 + m ()[Lnet/minecraft/world/level/ClipContext$Block; $values a method_36690 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_40007 a method_40007 + m (Ljava/lang/String;ILnet/minecraft/world/level/ClipContext$ShapeGetter;)V + p 3 shapeGetter + m ()V +c net/minecraft/world/level/ClipContext$Fluid dcf$b net/minecraft/class_3959$class_242 + f Lnet/minecraft/world/level/ClipContext$Fluid; NONE a field_1348 + f Lnet/minecraft/world/level/ClipContext$Fluid; SOURCE_ONLY b field_1345 + f Lnet/minecraft/world/level/ClipContext$Fluid; ANY c field_1347 + f Lnet/minecraft/world/level/ClipContext$Fluid; WATER d field_36338 + f Ljava/util/function/Predicate; canPick e field_1346 + f [Lnet/minecraft/world/level/ClipContext$Fluid; $VALUES f field_1349 + m ()[Lnet/minecraft/world/level/ClipContext$Fluid; $values a method_36691 + m (Lnet/minecraft/world/level/material/FluidState;)Z canPick a method_17751 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)Z method_40008 b method_40008 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_1018 c method_1018 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_1017 d method_1017 + m (Ljava/lang/String;ILjava/util/function/Predicate;)V + p 3 canPick + m ()V +c net/minecraft/world/level/ClipContext$ShapeGetter dcf$c net/minecraft/class_3959$class_3961 +c net/minecraft/world/level/CollisionGetter dcg net/minecraft/class_1941 + m ()Lnet/minecraft/world/level/border/WorldBorder; getWorldBorder C_ method_8621 + m (DDDLnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; method_39451 a method_39451 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z noCollision a method_8587 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isUnobstructed a method_8611 + p 1 entity + p 2 shape + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/Vec3;DDD)Ljava/util/Optional; findFreePosition a method_33594 + p 1 entity + p 2 shape + p 3 pos + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Z isUnobstructed a method_8628 + p 1 state + p 2 pos + p 3 context + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/util/stream/Stream; method_39452 a method_39452 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/core/BlockPos; method_51715 a method_51715 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z noBlockCollision b method_52569 + p 1 entity + p 2 boundingBox + m (Lnet/minecraft/world/phys/AABB;)Z noCollision b method_18026 + p 1 collisionBox + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Z method_39453 b method_39453 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_51716 b method_51716 + m (II)Lnet/minecraft/world/level/BlockGetter; getChunkForCollisions c method_22338 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntityCollisions c method_20743 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_51717 c method_51717 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/lang/Iterable; getCollisions d method_8600 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/lang/Iterable; getBlockCollisions e method_20812 + p 1 entity + p 2 collisionBox + m (Lnet/minecraft/world/entity/Entity;)Z isUnobstructed f method_8606 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z collidesWithSuffocatingBlock f method_39454 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;)Z noCollision g method_17892 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/Optional; findSupportingBlock g method_51718 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/shapes/VoxelShape; borderCollision h method_39455 + p 1 entity + p 2 box + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/Iterator; method_39456 i method_39456 +c net/minecraft/world/level/ColorResolver dch net/minecraft/class_6539 +c net/minecraft/world/level/CommonLevelAccessor dci net/minecraft/class_5423 +c net/minecraft/world/level/CustomSpawner dcj net/minecraft/class_5304 + m (Lnet/minecraft/server/level/ServerLevel;ZZ)I tick a method_6445 + p 1 level + p 2 spawnEnemies + p 3 spawnFriendlies +c net/minecraft/world/level/DataPackConfig dck net/minecraft/class_5359 + f Lnet/minecraft/world/level/DataPackConfig; DEFAULT a field_25393 + c This is the default "Vanilla and nothing else" codec. Should have a more distinct name compared to field_234881_b_ + f Lcom/mojang/serialization/Codec; CODEC b field_25394 + f Ljava/util/List; enabled c field_25395 + f Ljava/util/List; disabled d field_25396 + m ()Ljava/util/List; getEnabled a method_29547 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29549 a method_29549 + m (Lnet/minecraft/world/level/DataPackConfig;)Ljava/util/List; method_29548 a method_29548 + m ()Ljava/util/List; getDisabled b method_29550 + m (Lnet/minecraft/world/level/DataPackConfig;)Ljava/util/List; method_29551 b method_29551 + m (Ljava/util/List;Ljava/util/List;)V + p 1 enabled + p 2 disabled + m ()V +c net/minecraft/world/level/EmptyBlockGetter dcl net/minecraft/class_2682 + f Lnet/minecraft/world/level/EmptyBlockGetter; INSTANCE a field_12294 + f [Lnet/minecraft/world/level/EmptyBlockGetter; $VALUES b field_12295 + m ()[Lnet/minecraft/world/level/EmptyBlockGetter; $values a method_36692 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/EntityBasedExplosionDamageCalculator dcm net/minecraft/class_5361 + f Lnet/minecraft/world/entity/Entity; source a field_25399 + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Ljava/lang/Float;)Ljava/lang/Float; method_29552 a method_29552 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 source +c net/minecraft/world/level/EntityGetter dcn net/minecraft/class_1924 + m (DDDD)Z hasNearbyAlivePlayer a method_18458 + p 1 x + p 3 y + p 5 z + p 7 distance + m (DDDDLjava/util/function/Predicate;)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_8604 + p 1 x + p 3 y + p 5 z + p 7 distance + p 9 predicate + m (DDDDZ)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18459 + p 1 x + p 3 y + p 5 z + p 7 distance + p 9 creativePlayers + m (Lnet/minecraft/world/entity/Entity;D)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18460 + p 1 entity + p 2 distance + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_8333 + c Gets all entities within the specified AABB excluding the one passed into it. + p 1 entity + p 2 area + p 3 predicate + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isUnobstructed a method_8611 + p 1 entity + p 2 shape + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31590 a method_31590 + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;DDD)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18461 + p 1 predicate + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18462 + p 1 predicate + p 2 target + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDD)Lnet/minecraft/world/entity/player/Player; getNearestPlayer a method_18463 + p 1 predicate + p 2 target + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getNearbyPlayers a method_18464 + p 1 predicate + p 2 target + p 3 area + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_18023 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + m (Ljava/lang/Class;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDDLnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/entity/LivingEntity; getNearestEntity a method_21726 + p 1 entityClazz + p 2 conditions + p 3 target + p 4 x + p 6 y + p 8 z + p 10 boundingBox + m (Ljava/lang/Class;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getNearbyEntities a method_18466 + p 1 entityClazz + p 2 entityPredicate + p 3 entity + p 4 area + m (Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntitiesOfClass a method_18467 + p 1 entityClass + p 2 area + m (Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntitiesOfClass a method_8390 + p 1 clazz + p 2 area + p 3 filter + m (Ljava/util/List;Lnet/minecraft/world/entity/ai/targeting/TargetingConditions;Lnet/minecraft/world/entity/LivingEntity;DDD)Lnet/minecraft/world/entity/LivingEntity; getNearestEntity a method_18468 + p 1 entities + p 2 predicate + p 3 target + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntities a_ method_8335 + c Will get all entities within the specified AABB excluding the one passed into it. Args: entityToExclude, aabb + p 1 entity + p 2 area + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_31591 b method_31591 + m (Ljava/util/UUID;)Lnet/minecraft/world/entity/player/Player; getPlayerByUUID b method_18470 + p 1 uniqueId + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Ljava/util/List; getEntityCollisions c method_20743 + p 1 entity + p 2 collisionBox + m ()Ljava/util/List; players x method_18456 +c net/minecraft/world/level/Explosion dco net/minecraft/class_1927 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; EXPLOSION_DAMAGE_CALCULATOR a field_25818 + f I MAX_DROPS_PER_COMBINED_STACK b field_30960 + f Z fire c field_9186 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; blockInteraction d field_9184 + f Lnet/minecraft/util/RandomSource; random e field_9191 + f Lnet/minecraft/world/level/Level; level f field_9187 + f D x g field_9195 + f D y h field_9192 + f D z i field_9189 + f Lnet/minecraft/world/entity/Entity; source j field_9185 + f F radius k field_9190 + f Lnet/minecraft/world/damagesource/DamageSource; damageSource l field_9193 + f Lnet/minecraft/world/level/ExplosionDamageCalculator; damageCalculator m field_25400 + f Lnet/minecraft/core/particles/ParticleOptions; smallExplosionParticles n field_47328 + f Lnet/minecraft/core/particles/ParticleOptions; largeExplosionParticles o field_47329 + f Lnet/minecraft/core/Holder; explosionSound p field_47330 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; toBlow q field_9188 + f Ljava/util/Map; hitPlayers r field_9194 + m ()F radius a method_55107 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/ExplosionDamageCalculator; makeDamageCalculator a method_29553 + p 1 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; getDefaultDamageSource a method_55108 + p 0 level + p 1 source + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)F getSeenPercent a method_17752 + p 0 explosionVector + p 1 entity + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V addOrAppendStack a method_24023 + p 0 drops + p 1 stack + p 2 pos + m (Z)V finalizeExplosion a method_8350 + c Does the second part of the explosion (sound, particles, drop spawn) + p 1 spawnParticles + m ()Lnet/minecraft/world/phys/Vec3; center b method_55109 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/LivingEntity; getIndirectSourceEntityInternal b method_55110 + p 0 source + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)V method_24024 b method_24024 + m ()V explode c method_8348 + c Does the first part of the explosion (destroy blocks) + m ()Z interactsWithBlocks d method_46667 + m ()Ljava/util/Map; getHitPlayers e method_8351 + m ()Lnet/minecraft/world/entity/LivingEntity; getIndirectSourceEntity f method_8347 + m ()Lnet/minecraft/world/entity/Entity; getDirectSourceEntity g method_46406 + c Returns either the entity that placed the explosive block, the entity that caused the explosion or null. + m ()V clearToBlow h method_8352 + m ()Ljava/util/List; getToBlow i method_8346 + m ()Lnet/minecraft/world/level/Explosion$BlockInteraction; getBlockInteraction j method_55111 + m ()Lnet/minecraft/core/particles/ParticleOptions; getSmallExplosionParticles k method_55112 + m ()Lnet/minecraft/core/particles/ParticleOptions; getLargeExplosionParticles l method_55113 + m ()Lnet/minecraft/core/Holder; getExplosionSound m method_55114 + m ()Z canTriggerBlocks n method_60274 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFLjava/util/List;Lnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 toBlow + p 11 blockInteraction + p 12 smallExplosionParticles + p 13 largeExplosionParticles + p 14 explosionSound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;Ljava/util/List;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 fire + p 11 blockInteraction + p 12 positions + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;)V + p 1 level + p 2 source + p 3 x + p 5 y + p 7 z + p 9 radius + p 10 fire + p 11 blockInteraction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Explosion$BlockInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 source + p 3 damageSource + p 4 damageCalculator + p 5 x + p 7 y + p 9 z + p 11 radius + p 12 fire + p 13 blockInteraction + p 14 smallExplosionParticles + p 15 largeExplosionParticles + p 16 explosionSound + m ()V +c net/minecraft/world/level/Explosion$BlockInteraction dco$a net/minecraft/class_1927$class_4179 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; KEEP a field_40878 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; DESTROY b field_18687 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; DESTROY_WITH_DECAY c field_40879 + f Lnet/minecraft/world/level/Explosion$BlockInteraction; TRIGGER_BLOCK d field_47331 + f [Lnet/minecraft/world/level/Explosion$BlockInteraction; $VALUES e field_18688 + m ()[Lnet/minecraft/world/level/Explosion$BlockInteraction; $values a method_36693 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/ExplosionDamageCalculator dcp net/minecraft/class_5362 + m (Lnet/minecraft/world/entity/Entity;)F getKnockbackMultiplier a method_57007 + p 1 entity + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;)Z shouldDamageEntity a method_55504 + p 1 explosion + p 2 entity + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)Z shouldBlockExplode a method_29554 + p 1 explosion + p 2 reader + p 3 pos + p 4 state + p 5 power + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Ljava/util/Optional; getBlockExplosionResistance a method_29555 + p 1 explosion + p 2 reader + p 3 pos + p 4 state + p 5 fluid + m (Lnet/minecraft/world/level/Explosion;Lnet/minecraft/world/entity/Entity;)F getEntityDamageAmount b method_55115 + p 1 explosion + p 2 entity + m ()V +c net/minecraft/world/level/FoliageColor dcq net/minecraft/class_1926 + f [I pixels a field_9183 + m ()I getEvergreenColor a method_8342 + m (DD)I get a method_8344 + p 0 temperature + p 2 humidity + m ([I)V init a method_8340 + p 0 foliageBuffer + m ()I getBirchColor b method_8343 + m ()I getDefaultColor c method_8341 + m ()I getMangroveColor d method_43717 + m ()V + m ()V +c net/minecraft/world/level/ForcedChunksSavedData dcr net/minecraft/class_1932 + f Ljava/lang/String; FILE_ID a field_30961 + f Ljava/lang/String; TAG_FORCED b field_30962 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunks c field_9213 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52570 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getChunks b method_8375 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/ForcedChunksSavedData; load b method_32350 + p 0 tag + p 1 registries + m (Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 chunks + m ()V +c net/minecraft/world/level/GameRules dcs net/minecraft/class_1928 + f Lnet/minecraft/world/level/GameRules$Key; RULE_ANNOUNCE_ADVANCEMENTS A field_19409 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DISABLE_RAIDS B field_19422 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOINSOMNIA C field_20637 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_IMMEDIATE_RESPAWN D field_20638 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_NETHER_PORTAL_DEFAULT_DELAY E field_46794 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_NETHER_PORTAL_CREATIVE_DELAY F field_46795 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DROWNING_DAMAGE G field_20634 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FALL_DAMAGE H field_20635 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FIRE_DAMAGE I field_20636 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FREEZE_DAMAGE J field_28044 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_PATROL_SPAWNING K field_21831 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_TRADER_SPAWNING L field_21832 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_WARDEN_SPAWNING M field_38975 + f Lnet/minecraft/world/level/GameRules$Key; RULE_FORGIVE_DEAD_PLAYERS N field_25401 + f Lnet/minecraft/world/level/GameRules$Key; RULE_UNIVERSAL_ANGER O field_25402 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PLAYERS_SLEEPING_PERCENTAGE P field_28357 + f Lnet/minecraft/world/level/GameRules$Key; RULE_BLOCK_EXPLOSION_DROP_DECAY Q field_40880 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MOB_EXPLOSION_DROP_DECAY R field_40881 + f Lnet/minecraft/world/level/GameRules$Key; RULE_TNT_EXPLOSION_DROP_DECAY S field_40882 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SNOW_ACCUMULATION_HEIGHT T field_40883 + f Lnet/minecraft/world/level/GameRules$Key; RULE_WATER_SOURCE_CONVERSION U field_40884 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LAVA_SOURCE_CONVERSION V field_40885 + f Lnet/minecraft/world/level/GameRules$Key; RULE_GLOBAL_SOUND_EVENTS W field_40886 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DO_VINES_SPREAD X field_42474 + f Lnet/minecraft/world/level/GameRules$Key; RULE_ENDER_PEARLS_VANISH_ON_DEATH Y field_46176 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPAWN_CHUNK_RADIUS Z field_48374 + f I DEFAULT_RANDOM_TICK_SPEED a field_30963 + f Lorg/slf4j/Logger; LOGGER aa field_19410 + f Ljava/util/Map; GAME_RULE_TYPES ab field_9197 + f Ljava/util/Map; rules ac field_9196 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOFIRETICK b field_19387 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MOBGRIEFING c field_19388 + f Lnet/minecraft/world/level/GameRules$Key; RULE_KEEPINVENTORY d field_19389 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOMOBSPAWNING e field_19390 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOMOBLOOT f field_19391 + f Lnet/minecraft/world/level/GameRules$Key; RULE_PROJECTILESCANBREAKBLOCKS g field_46796 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOBLOCKDROPS h field_19392 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DOENTITYDROPS i field_19393 + f Lnet/minecraft/world/level/GameRules$Key; RULE_COMMANDBLOCKOUTPUT j field_19394 + f Lnet/minecraft/world/level/GameRules$Key; RULE_NATURAL_REGENERATION k field_19395 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DAYLIGHT l field_19396 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LOGADMINCOMMANDS m field_19397 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SHOWDEATHMESSAGES n field_19398 + f Lnet/minecraft/world/level/GameRules$Key; RULE_RANDOMTICKING o field_19399 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SENDCOMMANDFEEDBACK p field_19400 + f Lnet/minecraft/world/level/GameRules$Key; RULE_REDUCEDDEBUGINFO q field_19401 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPECTATORSGENERATECHUNKS r field_19402 + f Lnet/minecraft/world/level/GameRules$Key; RULE_SPAWN_RADIUS s field_19403 + f Lnet/minecraft/world/level/GameRules$Key; RULE_DISABLE_ELYTRA_MOVEMENT_CHECK t field_19404 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_ENTITY_CRAMMING u field_19405 + f Lnet/minecraft/world/level/GameRules$Key; RULE_WEATHER_CYCLE v field_19406 + f Lnet/minecraft/world/level/GameRules$Key; RULE_LIMITED_CRAFTING w field_19407 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_COMMAND_CHAIN_LENGTH x field_19408 + f Lnet/minecraft/world/level/GameRules$Key; RULE_MAX_COMMAND_FORK_COUNT y field_46658 + f Lnet/minecraft/world/level/GameRules$Key; RULE_COMMAND_MODIFICATION_BLOCK_LIMIT z field_41766 + m ()Lnet/minecraft/nbt/CompoundTag; createTag a method_8358 + c Return the defined game rules as NBT. + m (Lcom/mojang/serialization/DynamicLike;)V loadFromTag a method_8357 + p 1 dynamic + m (Lcom/mojang/serialization/DynamicLike;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)V method_20747 a method_20747 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;)V visitGameRuleTypes a method_20744 + p 0 visitor + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V callVisitorCap a method_20745 + p 0 visitor + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;)Lnet/minecraft/world/level/GameRules$Value; getRule a method_20746 + p 1 key + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;)V assignCap a method_27321 + p 1 key + p 2 rules + p 3 server + m (Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;)V assignFrom a method_27322 + p 1 rules + p 2 server + m (Lnet/minecraft/world/level/GameRules;Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$Key;)V method_27323 a method_27323 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameRules$Category;Lnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$Key; register a method_8359 + p 0 name + p 1 category + p 2 type + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/level/GameRules$Value; method_27324 a method_27324 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_53838 a method_53838 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$IntegerValue;)V method_56113 a method_56113 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Value;)V method_20751 a method_20751 + m ()Lnet/minecraft/world/level/GameRules; copy b method_27325 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V method_20750 b method_20750 + m (Lnet/minecraft/world/level/GameRules$Key;)Z getBoolean b method_8355 + p 1 key + m (Ljava/util/Map$Entry;)Lnet/minecraft/world/level/GameRules$Value; method_20748 b method_20748 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_53839 b method_53839 + m (Lnet/minecraft/world/level/GameRules$Key;)I getInt c method_8356 + p 1 key + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_8361 c method_8361 + m (Lnet/minecraft/world/level/GameRules$Key;)Ljava/lang/String; method_20752 d method_20752 + m (Lcom/mojang/serialization/DynamicLike;)V + p 1 tag + m ()V + m (Ljava/util/Map;)V + p 1 rules + m ()V +c net/minecraft/world/level/GameRules$BooleanValue dcs$a net/minecraft/class_1928$class_4310 + f Z value b field_19411 + m ()Z get a method_20753 + m (Lnet/minecraft/world/level/GameRules$BooleanValue;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27326 + p 1 value + p 2 server + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$BooleanValue;)V method_20754 a method_20754 + m (Z)Lnet/minecraft/world/level/GameRules$Type; create a method_20759 + p 0 defaultValue + m (ZLnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$BooleanValue; method_20756 a method_20756 + m (ZLjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_20760 + p 0 defaultValue + p 1 changeListener + m (ZLnet/minecraft/server/MinecraftServer;)V set a method_20758 + p 1 value + p 2 server + m ()Lnet/minecraft/world/level/GameRules$BooleanValue; getSelf d method_20761 + m ()Lnet/minecraft/world/level/GameRules$BooleanValue; copy e method_27327 + m (Lnet/minecraft/world/level/GameRules$Type;Z)V + p 1 type + p 2 value +c net/minecraft/world/level/GameRules$Category dcs$b net/minecraft/class_1928$class_5198 + f Lnet/minecraft/world/level/GameRules$Category; PLAYER a field_24094 + f Lnet/minecraft/world/level/GameRules$Category; MOBS b field_24095 + f Lnet/minecraft/world/level/GameRules$Category; SPAWNING c field_24096 + f Lnet/minecraft/world/level/GameRules$Category; DROPS d field_24097 + f Lnet/minecraft/world/level/GameRules$Category; UPDATES e field_24098 + f Lnet/minecraft/world/level/GameRules$Category; CHAT f field_24099 + f Lnet/minecraft/world/level/GameRules$Category; MISC g field_24100 + f Ljava/lang/String; descriptionId h field_24101 + f [Lnet/minecraft/world/level/GameRules$Category; $VALUES i field_24102 + m ()Ljava/lang/String; getDescriptionId a method_27328 + m ()[Lnet/minecraft/world/level/GameRules$Category; $values b method_36694 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 descriptionId + m ()V +c net/minecraft/world/level/GameRules$GameRuleTypeVisitor dcs$c net/minecraft/class_1928$class_4311 + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visit a method_20762 + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visitBoolean b method_27329 + p 1 key + p 2 type + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/world/level/GameRules$Type;)V visitInteger c method_27330 + p 1 key + p 2 type +c net/minecraft/world/level/GameRules$IntegerValue dcs$d net/minecraft/class_1928$class_4312 + f I value b field_19412 + m ()I get a method_20763 + m (I)Lnet/minecraft/world/level/GameRules$Type; create a method_20768 + p 0 defaultValue + m (II)Lcom/mojang/brigadier/arguments/ArgumentType; method_56114 a method_56114 + m (IIILjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_56115 + p 0 defaultValue + p 1 min + p 2 max + p 3 changeListener + m (ILnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$IntegerValue; method_56116 a method_56116 + m (ILjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; create a method_20766 + p 0 defaultValue + p 1 changeListener + m (ILnet/minecraft/server/MinecraftServer;)V set a method_35236 + p 1 value + p 2 server + m (Lnet/minecraft/world/level/GameRules$IntegerValue;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27331 + p 1 value + p 2 server + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/GameRules$IntegerValue;)V method_20767 a method_20767 + m (ILnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$IntegerValue; method_20765 b method_20765 + m (Ljava/lang/String;)Z tryDeserialize b method_27332 + p 1 name + m (Ljava/lang/String;)I safeParse c method_20769 + p 0 strValue + m ()Lnet/minecraft/world/level/GameRules$IntegerValue; getSelf d method_20770 + m ()Lnet/minecraft/world/level/GameRules$IntegerValue; copy e method_27333 + m (Lnet/minecraft/world/level/GameRules$Type;I)V + p 1 type + p 2 value +c net/minecraft/world/level/GameRules$Key dcs$e net/minecraft/class_1928$class_4313 + f Ljava/lang/String; id a field_19413 + f Lnet/minecraft/world/level/GameRules$Category; category b field_24103 + m ()Ljava/lang/String; getId a method_20771 + m ()Ljava/lang/String; getDescriptionId b method_27334 + m ()Lnet/minecraft/world/level/GameRules$Category; getCategory c method_27335 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameRules$Category;)V + p 1 id + p 2 category +c net/minecraft/world/level/GameRules$Type dcs$f net/minecraft/class_1928$class_4314 + f Ljava/util/function/Supplier; argument a field_19414 + f Ljava/util/function/Function; constructor b field_19415 + f Ljava/util/function/BiConsumer; callback c field_19416 + f Lnet/minecraft/world/level/GameRules$VisitorCaller; visitorCaller d field_24104 + m ()Lnet/minecraft/world/level/GameRules$Value; createRule a method_20773 + m (Lnet/minecraft/world/level/GameRules$GameRuleTypeVisitor;Lnet/minecraft/world/level/GameRules$Key;)V callVisitor a method_27336 + p 1 visitor + p 2 key + m (Ljava/lang/String;)Lcom/mojang/brigadier/builder/RequiredArgumentBuilder; createArgument a method_20775 + p 1 name + m (Ljava/util/function/Supplier;Ljava/util/function/Function;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/GameRules$VisitorCaller;)V + p 1 argument + p 2 constructor + p 3 callback + p 4 visitorCaller +c net/minecraft/world/level/GameRules$Value dcs$g net/minecraft/class_1928$class_4315 + f Lnet/minecraft/world/level/GameRules$Type; type a field_19417 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)V updateFromArgument a method_20776 + p 1 context + p 2 paramName + m (Lnet/minecraft/world/level/GameRules$Value;Lnet/minecraft/server/MinecraftServer;)V setFrom a method_27337 + p 1 value + p 2 server + m (Ljava/lang/String;)V deserialize a method_20777 + p 1 value + m (Lnet/minecraft/server/MinecraftServer;)V onChanged a method_20778 + p 1 server + m ()Ljava/lang/String; serialize b method_20779 + m (Lcom/mojang/brigadier/context/CommandContext;Ljava/lang/String;)V setFromArgument b method_20780 + p 1 context + p 2 paramName + m ()I getCommandResult c method_20781 + m ()Lnet/minecraft/world/level/GameRules$Value; copy f method_27338 + m ()Lnet/minecraft/world/level/GameRules$Value; getSelf g method_20782 + m (Lnet/minecraft/world/level/GameRules$Type;)V + p 1 type +c net/minecraft/world/level/GameRules$VisitorCaller dcs$h net/minecraft/class_1928$class_5199 +c net/minecraft/world/level/GameType dct net/minecraft/class_1934 + f Lnet/minecraft/world/level/GameType; SURVIVAL a field_9215 + f Lnet/minecraft/world/level/GameType; CREATIVE b field_9220 + f Lnet/minecraft/world/level/GameType; ADVENTURE c field_9216 + f Lnet/minecraft/world/level/GameType; SPECTATOR d field_9219 + f Lnet/minecraft/world/level/GameType; DEFAULT_MODE e field_28045 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC f field_41676 + f Ljava/util/function/IntFunction; BY_ID g field_41677 + f I NOT_SET h field_30964 + f I id i field_9217 + f Ljava/lang/String; name j field_9221 + f Lnet/minecraft/network/chat/Component; shortName k field_28046 + f Lnet/minecraft/network/chat/Component; longName l field_28047 + f [Lnet/minecraft/world/level/GameType; $VALUES m field_9222 + m ()I getId a method_8379 + c Returns the ID of this game type + m (I)Lnet/minecraft/world/level/GameType; byId a method_8384 + c Gets the game type by its ID. Will be survival if none was found. + p 0 id + m (Lnet/minecraft/world/entity/player/Abilities;)V updatePlayerAbilities a method_8382 + c Configures the player abilities based on the game type + p 1 abilities + m (Lnet/minecraft/world/level/GameType;)I getNullableId a method_32761 + p 0 gameType + m (Ljava/lang/String;)Lnet/minecraft/world/level/GameType; byName a method_8385 + c Gets the game type registered with the specified name. If no matches were found, survival will be returned. + p 0 gamemodeName + m (Ljava/lang/String;Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/GameType; byName a method_8378 + p 0 targetName + p 1 fallback + m ()Ljava/lang/String; getName b method_8381 + c Returns the name of this game type + m (I)Lnet/minecraft/world/level/GameType; byNullableId b method_32762 + p 0 id + m ()Lnet/minecraft/network/chat/Component; getLongDisplayName d method_8383 + m ()Lnet/minecraft/network/chat/Component; getShortDisplayName e method_32763 + m ()Z isBlockPlacingRestricted f method_8387 + c Returns {@code true} if this is the ADVENTURE game type + m ()Z isCreative g method_8386 + c Returns {@code true} if this is the CREATIVE game type + m ()Z isSurvival h method_8388 + c Returns {@code true} if this is the SURVIVAL or ADVENTURE game type + m ()[Lnet/minecraft/world/level/GameType; $values i method_36695 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/level/GrassColor dcu net/minecraft/class_1933 + f [I pixels a field_9214 + m ()I getDefaultColor a method_49724 + m (DD)I get a method_8377 + p 0 temperature + p 2 humidity + m ([I)V init a method_8376 + p 0 grassBuffer + m ()V + m ()V +c net/minecraft/world/level/ItemLike dcv net/minecraft/class_1935 + m ()Lnet/minecraft/world/item/Item; asItem r method_8389 +c net/minecraft/world/level/Level dcw net/minecraft/class_1937 + f Lnet/minecraft/world/level/storage/WritableLevelData; levelData A field_9232 + f Z isClientSide B field_9236 + f Lnet/minecraft/core/Holder; dimensionTypeRegistration D field_36402 + f Ljava/util/function/Supplier; profiler E field_16316 + f Lnet/minecraft/world/level/border/WorldBorder; worldBorder F field_9223 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager G field_20639 + f Lnet/minecraft/resources/ResourceKey; dimension H field_25176 + f Lnet/minecraft/core/RegistryAccess; registryAccess I field_42475 + f Lnet/minecraft/world/damagesource/DamageSources; damageSources J field_42476 + f J subTickCount K field_35455 + f Ljava/util/List; pendingBlockEntityTickers a field_27081 + f Z tickingBlockEntities b field_9249 + f Ljava/lang/Thread; thread c field_17086 + f Z isDebug d field_24496 + f I skyDarken e field_9226 + f Lnet/minecraft/util/RandomSource; threadSafeRandom f field_38861 + f Lcom/mojang/serialization/Codec; RESOURCE_KEY_CODEC g field_25178 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD h field_25179 + f Lnet/minecraft/resources/ResourceKey; NETHER i field_25180 + f Lnet/minecraft/resources/ResourceKey; END j field_25181 + f I MAX_LEVEL_SIZE k field_30965 + f I LONG_PARTICLE_CLIP_RANGE l field_30966 + f I SHORT_PARTICLE_CLIP_RANGE m field_30967 + f I MAX_BRIGHTNESS n field_30968 + f I TICKS_PER_DAY o field_30969 + f I MAX_ENTITY_SPAWN_Y p field_30970 + f I MIN_ENTITY_SPAWN_Y q field_30971 + f Ljava/util/List; blockEntityTickers r field_27082 + f Lnet/minecraft/world/level/redstone/NeighborUpdater; neighborUpdater s field_38226 + f I randValue t field_9256 + c Contains the current Linear Congruential Generator seed for block updates. Used with an A value of 3 and a C value of 0x3c6ef35f, producing a highly planar series of values ill-suited for choosing random blocks in a 16x128x16 field. + f I addend u field_9238 + f F oRainLevel v field_9253 + f F rainLevel w field_9235 + f F oThunderLevel x field_9251 + f F thunderLevel y field_9234 + f Lnet/minecraft/util/RandomSource; random z field_9229 + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntities G method_31592 + m ()Ljava/lang/String; gatherChunkSourceStats I method_31419 + c Returns the name of the current chunk provider, by calling chunkprovider.makeString() + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing K method_59547 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard M method_8428 + m ()Z isDay R method_8530 + c Checks whether its daytime by seeing if the light subtracted from the skylight is less than 4. Always returns true on the client because vanilla has no need for it on the client, therefore it is not synced to the client + m ()Z isNight S method_23886 + m ()V tickBlockEntities T method_18471 + m ()V updateSkyBrightness U method_8533 + c Called on the construction of the {@code Level} class to set up the initial skylight values. + m ()Lnet/minecraft/core/BlockPos; getSharedSpawnPos V method_43126 + m ()F getSharedSpawnAngle W method_43127 + m ()V prepareWeather X method_8543 + c Called from World constructor to set rainingStrength and thunderingStrength + m ()V disconnect Y method_8525 + c If on MP, sends a quitting packet. + m ()J getGameTime Z method_8510 + m ()Ljava/lang/String; method_20783 a method_20783 + m (DDDDDDLjava/util/List;)V createFireworks a method_8547 + p 1 x + p 3 y + p 5 z + p 7 xSpeed + p 9 ySpeed + p 11 zSpeed + p 13 explosions + m (DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZ)V playLocalSound a method_8486 + p 1 x + p 3 y + p 5 z + p 7 sound + p 8 category + p 9 volume + p 10 pitch + p 11 distanceDelay + m (F)F getSunAngle a method_8442 + c Return getCelestialAngle()*2*PI + p 1 partialTicks + m (I)Lnet/minecraft/world/entity/Entity; getEntity a method_8469 + c Returns the Entity with the given ID, or null if it doesn't exist in this Level. + p 1 id + m (IIII)Lnet/minecraft/core/BlockPos; getBlockRandomPos a method_8536 + p 1 x + p 2 y + p 3 z + p 4 yMask + m (ILnet/minecraft/core/BlockPos;I)V destroyBlockProgress a method_8517 + p 1 breakerId + p 2 pos + p 3 progress + m (J)Z shouldTickBlocksAt a method_39425 + p 1 chunkPos + m (Lnet/minecraft/world/entity/Entity;B)V broadcastEntityEvent a method_8421 + c Sends a {@link net.minecraft.network.protocol.game.ClientboundEntityEventPacket} to all tracked players of that entity. + p 1 entity + p 2 state + m (Lnet/minecraft/world/entity/Entity;DDDFLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_8437 + p 1 source + p 2 x + p 4 y + p 6 z + p 8 radius + p 9 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_8537 + p 1 source + p 2 x + p 4 y + p 6 z + p 8 radius + p 9 fire + p 10 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playLocalSound a method_55116 + p 1 entity + p 2 sound + p 3 category + p 4 volume + p 5 pitch + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;)V broadcastDamageEvent a method_48760 + p 1 entity + p 2 damageSource + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_55117 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/Explosion; explode a method_8454 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + p 13 smallExplosionParticles + p 14 largeExplosionParticles + p 15 explosionSound + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;DDDFZLnet/minecraft/world/level/Level$ExplosionInteraction;ZLnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/Explosion; explode a method_46668 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 x + p 6 y + p 8 z + p 10 radius + p 11 fire + p 12 explosionInteraction + p 13 spawnParticles + p 14 smallExplosionParticles + p 15 largeExplosionParticles + p 16 explosionSound + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lnet/minecraft/world/level/ExplosionDamageCalculator;Lnet/minecraft/world/phys/Vec3;FZLnet/minecraft/world/level/Level$ExplosionInteraction;)Lnet/minecraft/world/level/Explosion; explode a method_46407 + p 1 source + p 2 damageSource + p 3 damageCalculator + p 4 pos + p 5 radius + p 6 fire + p 7 explosionInteraction + m (Lnet/minecraft/world/entity/Entity;Ljava/util/function/Predicate;Ljava/util/List;Lnet/minecraft/world/entity/Entity;)V method_31593 a method_31593 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_45445 + p 1 entity + p 2 pos + p 3 sound + p 4 category + p 5 volume + p 6 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V playSound a method_54762 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_43128 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_47967 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + p 12 seed + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_60511 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + m (Lnet/minecraft/world/entity/player/Player;DDDLnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_8465 + p 1 player + p 2 x + p 4 y + p 6 z + p 8 sound + p 9 category + p 10 volume + p 11 pitch + p 12 seed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_43129 + p 1 player + p 2 entity + p 3 event + p 4 category + p 5 volume + p 6 pitch + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/sounds/SoundSource;FFJ)V playSeededSound a method_8449 + p 1 player + p 2 entity + p 3 sound + p 4 category + p 5 volume + p 6 pitch + p 7 seed + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;)Z mayInteract a method_8505 + p 1 player + p 2 pos + m (Lnet/minecraft/world/level/GameRules$Key;)Lnet/minecraft/world/level/Explosion$BlockInteraction; getDestroyType a method_46669 + p 1 gameRule + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V setBlockEntity a method_8438 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V addBlockEntityTicker a method_31594 + p 1 ticker + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_41410 + p 1 state + p 2 pos + p 3 block + p 4 fromPos + p 5 isMoving + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;Ljava/util/List;)V getEntities a method_47574 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + p 4 output + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;Ljava/util/List;I)V getEntities a method_47575 + p 1 entityTypeTest + p 2 bounds + p 3 predicate + p 4 output + p 5 maxResults + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; getMapData a method_17891 + p 1 mapId + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V setMapData a method_17890 + p 1 mapId + p 2 mapData + m (Ljava/util/function/Consumer;Lnet/minecraft/world/entity/Entity;)V guardEntityTick a method_18472 + p 1 consumerEntity + p 2 entity + m (Ljava/util/function/Predicate;Ljava/util/List;ILnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_47576 a method_47576 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZ)V playLocalSound a method_45446 + p 1 pos + p 2 sound + p 3 category + p 4 volume + p 5 pitch + p 6 distanceDelay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z loadedAndEntityCanStandOn a method_8515 + p 1 pos + p 2 entity + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;)Z loadedAndEntityCanStandOnFace a method_24368 + p 1 pos + p 2 entity + p 3 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateNeighborsAt a method_8452 + p 1 pos + p 2 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;II)V blockEvent a method_8427 + p 1 pos + p 2 block + p 3 eventID + p 4 eventParam + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V neighborChanged a method_8492 + p 1 pos + p 2 block + p 3 fromPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V updateNeighborsAtExceptFromFacing a method_8508 + p 1 pos + p 2 blockType + p 3 skipSide + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V addDestroyBlockEffect a method_31595 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V onBlockStateChange a method_19282 + p 1 pos + p 2 blockState + p 3 newState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;I)V sendBlockUpdated a method_8413 + c Flags are as in setBlockState + p 1 pos + p 2 oldState + p 3 newState + p 4 flags + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addParticle a method_8466 + p 1 particleData + p 2 forceAlwaysRender + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReportCategory; fillReportDetails a method_8538 + c Adds some basic stats of the world to the given crash report. + p 1 report + m (Lnet/minecraft/network/protocol/Packet;)V sendPacketToServer a method_8522 + p 1 packet + m ()J getDayTime aa method_8532 + m ()Lnet/minecraft/world/level/GameRules; getGameRules ab method_8450 + c Gets the GameRules instance. + m ()Z isThundering ac method_8546 + c Returns {@code true} if the current thunder strength (weighted with the rain strength) is greater than 0.9 + m ()Z isRaining ad method_8419 + c Returns {@code true} if the current rain strength is greater than 0.2 + m ()Lnet/minecraft/core/Holder; dimensionTypeRegistration ae method_40134 + m ()Lnet/minecraft/resources/ResourceKey; dimension af method_27983 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler ag method_16107 + m ()Ljava/util/function/Supplier; getProfilerSupplier ah method_24367 + m ()Z isDebug ai method_27982 + m ()Lnet/minecraft/world/damagesource/DamageSources; damageSources aj method_48963 + m (F)F getThunderLevel b method_8478 + p 1 delta + m (I)Z isOutsideSpawnableHeight b method_25952 + p 0 y + m (ILnet/minecraft/core/BlockPos;I)V globalLevelEvent b method_8474 + p 1 id + p 2 pos + p 3 data + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z setBlockAndUpdate b method_8501 + c Convenience method to update the block on both the client and server + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V setBlocksDirty b method_16109 + p 1 blockPos + p 2 oldState + p 3 newState + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addAlwaysVisibleParticle b method_8494 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addAlwaysVisibleParticle b method_17452 + p 1 particleData + p 2 ignoreRange + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (ZZ)V setSpawnSettings b method_8424 + c First boolean for hostile mobs and second for peaceful mobs + p 1 hostile + p 2 peaceful + m (F)V setThunderLevel c method_8496 + c Sets the strength of the thunder. + p 1 strength + m (I)V setSkyFlashTime c method_8509 + p 1 timeFlash + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateNeighbourForOutputSignal c method_8455 + p 1 pos + p 2 block + m (F)F getRainLevel d method_8430 + c Returns rain strength. + p 1 delta + m (II)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk d method_8497 + p 1 chunkX + p 2 chunkZ + m (F)V setRainLevel e method_8519 + c Sets the strength of the rain. + p 1 strength + m (Lnet/minecraft/core/BlockPos;)Z isInWorldBoundsHorizontal g method_8558 + p 0 pos + m (Lnet/minecraft/world/entity/Entity;)Z shouldTickDeath h method_38989 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)Z isInWorldBounds k method_24794 + c Check if the given BlockPos has valid coordinates + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isInSpawnableBounds l method_25953 + p 0 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkAt m method_8500 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z shouldTickBlocksAt n method_41411 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntity o method_8544 + p 1 pos + m ()Ljava/lang/String; method_8484 p method_8484 + m (Lnet/minecraft/core/BlockPos;)Z isLoaded p method_8477 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V blockEntityChanged q method_8524 + p 1 pos + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager r method_8433 + m (Lnet/minecraft/core/BlockPos;)Z isRainingAt r method_8520 + c Check if precipitation is currently happening at a position + p 1 pos + m ()Lnet/minecraft/world/TickRateManager; tickRateManager s method_54719 + m ()Z noSave t method_8458 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; getFreeMapId v method_17889 + m (Lnet/minecraft/world/level/storage/WritableLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/core/Holder;Ljava/util/function/Supplier;ZZJI)V + p 1 levelData + p 2 dimension + p 3 registryAccess + p 4 dimensionTypeRegistration + p 5 profiler + p 6 isClientSide + p 7 isDebug + p 8 biomeZoomSeed + p 10 maxChainedNeighborUpdates + m ()V +c net/minecraft/world/level/Level$1 dcw$1 net/minecraft/class_1937$1 + f Lnet/minecraft/world/level/dimension/DimensionType; val$dimensionType a field_39310 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/dimension/DimensionType;)V +c net/minecraft/world/level/Level$ExplosionInteraction dcw$a net/minecraft/class_1937$class_7867 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; NONE a field_40888 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; BLOCK b field_40889 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; MOB c field_40890 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; TNT d field_40891 + f Lnet/minecraft/world/level/Level$ExplosionInteraction; TRIGGER e field_51779 + f Lcom/mojang/serialization/Codec; CODEC f field_51780 + f Ljava/lang/String; id g field_51781 + f [Lnet/minecraft/world/level/Level$ExplosionInteraction; $VALUES h field_40892 + m ()[Lnet/minecraft/world/level/Level$ExplosionInteraction; $values a method_46670 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/LevelAccessor dcx net/minecraft/class_1936 + m ()Lnet/minecraft/world/level/storage/LevelData; getLevelData A_ method_8401 + c Returns the world's WorldInfo object + m ()Lnet/minecraft/util/RandomSource; getRandom E_ method_8409 + m ()J nextSubTickCount G_ method_39224 + m ()Lnet/minecraft/world/level/chunk/ChunkSource; getChunkSource N method_8398 + c Gets the world's chunk provider + m ()Lnet/minecraft/world/ticks/LevelTickAccess; getFluidTicks O method_8405 + m ()Lnet/minecraft/world/ticks/LevelTickAccess; getBlockTicks P method_8397 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_55764 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;)V gameEvent a method_43275 + p 1 entity + p 2 gameEvent + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)V gameEvent a method_33596 + p 1 entity + p 2 gameEvent + p 3 pos + m (Lnet/minecraft/world/entity/player/Player;ILnet/minecraft/core/BlockPos;I)V levelEvent a method_8444 + p 1 player + p 2 type + p 3 pos + p 4 data + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V playSound a method_45447 + p 1 player + p 2 pos + p 3 sound + p 4 source + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FF)V playSound a method_8396 + c Plays a sound. On the server, the sound is broadcast to all nearby except the given player. On the client, the sound only plays if the given player is the client player. Thus, this method is intended to be called from code running on both sides. The client plays it locally and the server plays it for everyone else. + p 1 player + p 2 pos + p 3 sound + p 4 source + p 5 volume + p 6 pitch + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;I)V scheduleTick a method_39279 + p 1 pos + p 2 block + p 3 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;ILnet/minecraft/world/ticks/TickPriority;)V scheduleTick a method_39280 + p 1 pos + p 2 block + p 3 delay + p 4 priority + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;I)V scheduleTick a method_39281 + p 1 pos + p 2 fluid + p 3 delay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;ILnet/minecraft/world/ticks/TickPriority;)V scheduleTick a method_39282 + p 1 pos + p 2 fluid + p 3 delay + p 4 priority + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;I)Lnet/minecraft/world/ticks/ScheduledTick; createTick a method_39283 + p 1 pos + p 2 type + p 3 delay + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;ILnet/minecraft/world/ticks/TickPriority;)Lnet/minecraft/world/ticks/ScheduledTick; createTick a method_39284 + p 1 pos + p 2 type + p 3 delay + p 4 priority + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V neighborShapeChanged a method_42308 + p 1 direction + p 2 queried + c The block state of the current block + p 3 pos + c The position of the neighbor block + p 4 offsetPos + c The position of the current block + p 5 flags + p 6 recursionLevel + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_32888 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V gameEvent a method_43276 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addParticle a method_8406 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Lnet/minecraft/world/Difficulty; getDifficulty al method_8407 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V blockUpdated b method_8408 + p 1 pos + p 2 block + m (ILnet/minecraft/core/BlockPos;I)V levelEvent c method_20290 + p 1 type + p 2 pos + p 3 data + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/DifficultyInstance; getCurrentDifficultyAt d_ method_8404 + p 1 pos + m ()Lnet/minecraft/server/MinecraftServer; getServer o method_8503 +c net/minecraft/world/level/LevelHeightAccessor dcy net/minecraft/class_5539 + m ()I getMinBuildHeight I_ method_31607 + m ()I getHeight J_ method_31605 + m ()I getMaxBuildHeight am method_31600 + m ()I getSectionsCount an method_32890 + m ()I getMinSection ao method_32891 + m ()I getMaxSection ap method_31597 + m (I)Z isOutsideBuildHeight d method_31601 + p 1 y + m (I)I getSectionIndex e method_31602 + p 1 y + m (II)Lnet/minecraft/world/level/LevelHeightAccessor; create e method_39034 + p 0 minBuildHeight + p 1 height + m (I)I getSectionIndexFromSectionY f method_31603 + p 1 sectionIndex + m (I)I getSectionYFromSectionIndex g method_31604 + p 1 sectionIndex + m (Lnet/minecraft/core/BlockPos;)Z isOutsideBuildHeight s method_31606 + p 1 pos +c net/minecraft/world/level/LevelHeightAccessor$1 dcy$1 net/minecraft/class_5539$1 + f I val$height a field_35180 + f I val$minBuildHeight b field_35181 + m (II)V +c net/minecraft/world/level/LevelReader dcz net/minecraft/class_4538 + m (Lnet/minecraft/core/BlockPos;)I getMaxLocalRawBrightness A method_22339 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z hasChunkAt B method_22340 + p 1 pos + m ()I getSkyDarken B_ method_8594 + m ()Lnet/minecraft/world/level/dimension/DimensionType; dimensionType D_ method_8597 + m ()Lnet/minecraft/world/level/biome/BiomeManager; getBiomeManager F_ method_22385 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess H_ method_30349 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures J method_45162 + m (II)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_8392 + p 1 chunkX + p 2 chunkZ + m (III)Lnet/minecraft/core/Holder; getUncachedNoiseBiome a method_22387 + p 1 x + p 2 y + p 3 z + m (IIIIII)Z hasChunksAt a method_22341 + p 1 fromX + p 2 fromY + p 3 fromZ + p 4 toX + p 5 toY + p 6 toZ + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_22342 + p 1 chunkX + p 2 chunkZ + p 3 chunkStatus + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_8402 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/core/HolderLookup; holderLookup a method_45448 + p 1 registryKey + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_8624 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getHeightmapPos a method_8598 + p 1 heightmapType + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z hasChunksAt a method_22343 + p 1 from + p 2 to + m (II)Z hasChunk b method_8393 + p 1 chunkX + p 2 chunkZ + m (IIII)Z hasChunksAt b method_33597 + p 1 fromX + p 2 fromZ + p 3 toX + p 4 toZ + m (Lnet/minecraft/world/phys/AABB;)Ljava/util/stream/Stream; getBlockStatesIfLoaded c method_29556 + p 1 aabb + m (Lnet/minecraft/core/BlockPos;I)I getMaxLocalRawBrightness c method_22346 + p 1 pos + p 2 amount + m (Lnet/minecraft/world/phys/AABB;)Z containsAnyLiquid d method_22345 + c Checks if any of the blocks within the aabb are liquids. + p 1 bb + m (II)Z hasChunkAt f method_33598 + p 1 x + p 2 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getBiome t method_23753 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isEmptyBlock u method_22347 + c Checks to see if an air block exists at the provided location. Note that this only checks to see if the blocks material is set to air, meaning it is possible for non-vanilla blocks to still pass this check. + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z canSeeSkyFromBelowWater v method_22348 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)F getPathfindingCostFromLightLevels w method_42309 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)F getLightLevelDependentMagicValue x method_22349 + p 1 pos + m ()Z isClientSide x_ method_8608 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk y method_22350 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isWaterAt z method_22351 + p 1 pos + m ()I getSeaLevel z_ method_8615 +c net/minecraft/world/level/LevelSettings dda net/minecraft/class_1940 + f Ljava/lang/String; levelName a field_24105 + f Lnet/minecraft/world/level/GameType; gameType b field_9257 + f Z hardcore c field_9262 + f Lnet/minecraft/world/Difficulty; difficulty d field_24106 + f Z allowCommands e field_9261 + f Lnet/minecraft/world/level/GameRules; gameRules f field_24107 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration g field_25403 + m ()Ljava/lang/String; levelName a method_27339 + m (Lnet/minecraft/world/Difficulty;)Lnet/minecraft/world/level/LevelSettings; withDifficulty a method_28381 + p 1 difficulty + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/world/level/LevelSettings; parse a method_28383 + p 0 levelData + p 1 dataConfiguration + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/world/level/LevelSettings; withGameType a method_28382 + p 1 gameType + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/world/level/LevelSettings; withDataConfiguration a method_29557 + p 1 dataConfiguration + m (Ljava/lang/Number;)Lnet/minecraft/world/Difficulty; method_28384 a method_28384 + m ()Lnet/minecraft/world/level/GameType; gameType b method_8574 + m ()Z hardcore c method_8583 + m ()Lnet/minecraft/world/Difficulty; difficulty d method_27340 + m ()Z allowCommands e method_8582 + m ()Lnet/minecraft/world/level/GameRules; gameRules f method_27341 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; getDataConfiguration g method_29558 + m ()Lnet/minecraft/world/level/LevelSettings; copy h method_28385 + m (Ljava/lang/String;Lnet/minecraft/world/level/GameType;ZLnet/minecraft/world/Difficulty;ZLnet/minecraft/world/level/GameRules;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 levelName + p 2 gameType + p 3 hardcore + p 4 difficulty + p 5 allowCommands + p 6 gameRules + p 7 dataConfiguration +c net/minecraft/world/level/LevelSimulatedRW ddb net/minecraft/class_3747 +c net/minecraft/world/level/LevelSimulatedReader ddc net/minecraft/class_3746 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getHeightmapPos a method_8598 + p 1 heightmapType + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Ljava/util/Optional; getBlockEntity a method_35230 + p 1 pos + p 2 type + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z isStateAtPosition a method_16358 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z isFluidAtPosition b method_35237 + p 1 pos + p 2 predicate +c net/minecraft/world/level/LevelTimeAccess ddd net/minecraft/class_5424 + m ()J dayTime ak method_30271 + m ()F getMoonBrightness aq method_30272 + m ()I getMoonPhase ar method_30273 + m (F)F getTimeOfDay f method_30274 + p 1 partialTick +c net/minecraft/world/level/LevelWriter dde net/minecraft/class_1945 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z setBlock a method_8652 + c Sets a block state into this world.Flags are as follows:\n1 will cause a block update.\n2 will send the change to clients.\n4 will prevent the block from being re-rendered.\n8 will force any re-renders to run on the main thread instead\n16 will prevent neighbor reactions (e.g. fences connecting, observers pulsing).\n32 will prevent neighbor reactions from spawning drops.\n64 will signify the block is being moved.\nFlags can be OR-ed + p 1 pos + p 2 newState + p 3 flags + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)Z setBlock a method_30092 + p 1 pos + p 2 state + p 3 flags + p 4 recursionLeft + m (Lnet/minecraft/core/BlockPos;Z)Z removeBlock a method_8650 + p 1 pos + p 2 isMoving + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/entity/Entity;)Z destroyBlock a method_8651 + p 1 pos + p 2 dropBlock + p 3 entity + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/entity/Entity;I)Z destroyBlock a method_30093 + p 1 pos + p 2 dropBlock + p 3 entity + p 4 recursionLeft + m (Lnet/minecraft/world/entity/Entity;)Z addFreshEntity b method_8649 + p 1 entity + m (Lnet/minecraft/core/BlockPos;Z)Z destroyBlock b method_22352 + c Sets a block to air, but also plays the sound and particles and can spawn drops + p 1 pos + p 2 dropBlock +c net/minecraft/world/level/LightLayer ddf net/minecraft/class_1944 + f Lnet/minecraft/world/level/LightLayer; SKY a field_9284 + f Lnet/minecraft/world/level/LightLayer; BLOCK b field_9282 + f [Lnet/minecraft/world/level/LightLayer; $VALUES c field_9285 + m ()[Lnet/minecraft/world/level/LightLayer; $values a method_36696 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/LocalMobCapCalculator ddg net/minecraft/class_6540 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; playersNearChunk a field_34455 + f Ljava/util/Map; playerMobCounts b field_34456 + f Lnet/minecraft/server/level/ChunkMap; chunkMap c field_34457 + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/world/level/LocalMobCapCalculator$MobCounts; method_38083 a method_38083 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/ChunkPos;)Z canSpawn a method_38084 + p 1 category + p 2 pos + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/List; getPlayersNear a method_38085 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;J)Ljava/util/List; method_38086 a method_38086 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/entity/MobCategory;)V addMob a method_38087 + p 1 pos + p 2 category + m (Lnet/minecraft/server/level/ChunkMap;)V + p 1 chunkMap +c net/minecraft/world/level/LocalMobCapCalculator$MobCounts ddg$a net/minecraft/class_6540$class_6541 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; counts a field_34458 + m (Lnet/minecraft/world/entity/MobCategory;)V add a method_38088 + p 1 category + m (Lnet/minecraft/world/entity/MobCategory;Ljava/lang/Integer;)Ljava/lang/Integer; method_38089 a method_38089 + m (Lnet/minecraft/world/entity/MobCategory;)Z canSpawn b method_38090 + p 1 category + m ()V +c net/minecraft/world/level/NaturalSpawner ddh net/minecraft/class_1948 + f I SPAWN_DISTANCE_CHUNK a field_30972 + f I SPAWN_DISTANCE_BLOCK b field_30973 + f Lorg/slf4j/Logger; LOGGER c field_9292 + f I MIN_SPAWN_DISTANCE d field_30974 + f I MAGIC_NUMBER e field_24392 + f [Lnet/minecraft/world/entity/MobCategory; SPAWNING_CATEGORIES f field_24393 + m (I)[Lnet/minecraft/world/entity/MobCategory; method_27814 a method_27814 + m (ILjava/lang/Iterable;Lnet/minecraft/world/level/NaturalSpawner$ChunkGetter;Lnet/minecraft/world/level/LocalMobCapCalculator;)Lnet/minecraft/world/level/NaturalSpawner$SpawnState; createState a method_27815 + p 0 spawnableChunkCount + p 1 entities + p 2 chunkGetter + p 3 calculator + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/entity/Mob; getMobForSpawn a method_24931 + p 0 level + p 1 entityType + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Mob;D)Z isValidPositionForMob a method_24932 + p 0 level + p 1 mob + p 2 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;Lnet/minecraft/core/BlockPos$MutableBlockPos;D)Z isValidSpawnPostitionForType a method_24934 + p 0 level + p 1 category + p 2 structureManager + p 3 generator + p 4 data + p 5 pos + p 6 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; getRandomSpawnMobAt a method_8664 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 random + p 5 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;Lnet/minecraft/core/BlockPos;)Z canSpawnMobAt a method_8659 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 data + p 5 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Lnet/minecraft/util/random/WeightedRandomList; mobsAt a method_29950 + p 0 level + p 1 structureManager + p 2 generator + p 3 category + p 4 pos + p 5 biome + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;D)Z isRightDistanceToPlayerAndSpawnPoint a method_24933 + p 0 level + p 1 chunk + p 2 pos + p 3 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/NaturalSpawner$SpawnState;ZZZ)V spawnForChunk a method_27821 + p 0 level + p 1 chunk + p 2 spawnState + p 3 spawnFriendlies + p 4 spawnMonsters + p 5 forcedDespawn + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Z method_35238 a method_35238 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/chunk/ChunkAccess;)V method_35239 a method_35239 + m (Lnet/minecraft/world/entity/MobCategory;)Z method_27816 a method_27816 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/NaturalSpawner$SpawnPredicate;Lnet/minecraft/world/level/NaturalSpawner$AfterSpawnCallback;)V spawnCategoryForPosition a method_24930 + p 0 category + p 1 level + p 2 chunk + p 3 pos + p 4 filter + p 5 callback + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/NaturalSpawner$SpawnPredicate;Lnet/minecraft/world/level/NaturalSpawner$AfterSpawnCallback;)V spawnCategoryForChunk a method_8663 + p 0 category + p 1 level + p 2 chunk + p 3 filter + p 4 callback + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnCategoryForPosition a method_35240 + p 0 category + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/entity/EntityType;)Z isValidEmptySpawnBlock a method_8662 + p 0 block + p 1 pos + p 2 blockState + p 3 fluidState + p 4 entityType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/core/BlockPos; getRandomPosWithin a method_8657 + p 0 level + p 1 chunk + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/entity/EntityType;II)Lnet/minecraft/core/BlockPos; getTopNonCollidingPos a method_8658 + p 0 level + p 1 entityType + p 2 x + p 3 z + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/util/RandomSource;)V spawnMobsForChunkGeneration a method_8661 + p 0 levelAccessor + p 1 biome + p 2 chunkPos + p 3 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/StructureManager;)Z isInNetherFortressBounds a method_38091 + p 0 pos + p 1 level + p 2 category + p 3 structureManager + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/PotentialCalculator;Lnet/minecraft/world/level/LocalMobCapCalculator;Lnet/minecraft/world/entity/MobCategory;Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_27819 a method_27819 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/biome/Biome; getRoughBiome a method_27822 + p 0 pos + p 1 chunk + m ()V + m ()V +c net/minecraft/world/level/NaturalSpawner$AfterSpawnCallback ddh$a net/minecraft/class_1948$class_5259 +c net/minecraft/world/level/NaturalSpawner$ChunkGetter ddh$b net/minecraft/class_1948$class_5260 +c net/minecraft/world/level/NaturalSpawner$SpawnPredicate ddh$c net/minecraft/class_1948$class_5261 +c net/minecraft/world/level/NaturalSpawner$SpawnState ddh$d net/minecraft/class_1948$class_5262 + f I spawnableChunkCount a field_24394 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; mobCategoryCounts b field_24395 + f Lnet/minecraft/world/level/PotentialCalculator; spawnPotential c field_24396 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; unmodifiableMobCategoryCounts d field_24397 + f Lnet/minecraft/world/level/LocalMobCapCalculator; localMobCapCalculator e field_34459 + f Lnet/minecraft/core/BlockPos; lastCheckedPos f field_24398 + f Lnet/minecraft/world/entity/EntityType; lastCheckedType g field_24399 + f D lastCharge h field_24400 + m ()I getSpawnableChunkCount a method_27823 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/ChunkAccess;)Z canSpawn a method_27824 + p 1 entityType + p 2 pos + p 3 chunk + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/world/level/chunk/ChunkAccess;)V afterSpawn a method_27825 + p 1 mob + p 2 chunk + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/ChunkPos;)Z canSpawnForCategory a method_27826 + p 1 category + p 2 pos + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getMobCategoryCounts b method_27830 + m (ILit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;Lnet/minecraft/world/level/PotentialCalculator;Lnet/minecraft/world/level/LocalMobCapCalculator;)V + p 1 spawnableChunkCount + p 2 mobCategoryCounts + p 3 spawnPotential + p 4 localMobCapCalculator +c net/minecraft/world/level/NoiseColumn ddi net/minecraft/class_4966 + f I minY a field_28105 + f [Lnet/minecraft/world/level/block/state/BlockState; column b field_23143 + m (I[Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 minY + p 2 column +c net/minecraft/world/level/PathNavigationRegion ddj net/minecraft/class_1950 + f I centerX a field_9304 + f I centerZ b field_9303 + f [[Lnet/minecraft/world/level/chunk/ChunkAccess; chunks c field_9305 + f Z allEmpty d field_9302 + f Lnet/minecraft/world/level/Level; level e field_9306 + f Ljava/util/function/Supplier; plains f field_36403 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler a method_37233 + m (II)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_22353 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/Level;)Lnet/minecraft/core/Holder; method_40135 a method_40135 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk d method_22354 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 centerPos + p 3 offsetPos +c net/minecraft/world/level/PotentialCalculator ddk net/minecraft/class_5263 + f Ljava/util/List; charges a field_24401 + m (Lnet/minecraft/core/BlockPos;D)V addCharge a method_27831 + p 1 pos + p 2 charge + m (Lnet/minecraft/core/BlockPos;D)D getPotentialEnergyChange b method_27832 + p 1 pos + p 2 charge + m ()V +c net/minecraft/world/level/PotentialCalculator$PointCharge ddk$a net/minecraft/class_5263$class_5264 + f Lnet/minecraft/core/BlockPos; pos a field_24402 + f D charge b field_24403 + m (Lnet/minecraft/core/BlockPos;)D getPotentialChange a method_27833 + p 1 pos + m (Lnet/minecraft/core/BlockPos;D)V + p 1 pos + p 2 charge +c net/minecraft/world/level/ServerLevelAccessor ddl net/minecraft/class_5425 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel E method_8410 + m (Lnet/minecraft/world/entity/Entity;)V addFreshEntityWithPassengers a_ method_30771 + p 1 entity +c net/minecraft/world/level/SignalGetter ddm net/minecraft/class_8235 + f [Lnet/minecraft/core/Direction; DIRECTIONS C field_43226 + m (Lnet/minecraft/core/BlockPos;)Z hasNeighborSignal C method_49803 + c Returns whether the given position receives any redstone signal from neighboring blocks. + p 1 pos + m (Lnet/minecraft/core/BlockPos;)I getBestNeighborSignal D method_49804 + c Returns the highest redstone signal the given position receives from neighboring blocks. + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal a method_49805 + c Returns the direct redstone signal emitted from the given position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)I getControlInputSignal a method_49806 + c Returns the control signal emitted from the given position in the given direction.\nIf {@code diodesOnly} is {@code true}, this method returns the direct signal emitted if\nand only if this position is occupied by a diode (i.e. a repeater or comparator).\nOtherwise, if this position is occupied by a\n{@linkplain net.minecraft.world.level.block.Blocks#REDSTONE_BLOCK redstone block},\nthis method will return the redstone signal emitted by it. If not, this method will\nreturn the direct signal emitted from this position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + p 3 diodesOnly + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z hasSignal b method_49807 + c Returns whether a redstone signal is emitted from the given position in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal c method_49808 + c Returns the redstone signal emitted from the given position in the given direction.\nThis is the highest value between the signal emitted by the block itself, and the direct signal\nreceived from neighboring blocks if the block is a redstone conductor.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given. + p 1 pos + p 2 direction + m (Lnet/minecraft/core/BlockPos;)I getDirectSignalTo e_ method_49809 + c Returns the direct redstone signal the given position receives from neighboring blocks. + p 1 pos + m ()V +c net/minecraft/world/level/SimpleExplosionDamageCalculator ddn net/minecraft/class_9749 + f Z explodesBlocks a field_51782 + f Z damagesEntities b field_51783 + f Ljava/util/Optional; knockbackMultiplier c field_51784 + f Ljava/util/Optional; immuneBlocks d field_51785 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/Float; method_60276 b method_60276 + m (ZZLjava/util/Optional;Ljava/util/Optional;)V + p 1 explodesBlocks + p 2 damagesEntities + p 3 knockbackMultiplier + p 4 immuneBlocks +c net/minecraft/world/level/SpawnData ddo net/minecraft/class_1952 + f Ljava/lang/String; ENTITY_TAG a field_40893 + f Lcom/mojang/serialization/Codec; CODEC b field_34460 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_34461 + f Lnet/minecraft/nbt/CompoundTag; entityToSpawn d comp_64 + f Ljava/util/Optional; customSpawnRules e comp_65 + f Ljava/util/Optional; equipment f comp_2648 + m ()Lnet/minecraft/nbt/CompoundTag; getEntityToSpawn a method_38093 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38095 a method_38095 + m (Lnet/minecraft/world/level/SpawnData;)Ljava/util/Optional; method_58679 a method_58679 + m ()Ljava/util/Optional; getCustomSpawnRules b method_38097 + m (Lnet/minecraft/world/level/SpawnData;)Ljava/util/Optional; method_38094 b method_38094 + m ()Ljava/util/Optional; getEquipment c method_59717 + m (Lnet/minecraft/world/level/SpawnData;)Lnet/minecraft/nbt/CompoundTag; method_38098 c method_38098 + m ()Lnet/minecraft/nbt/CompoundTag; entityToSpawn d comp_64 + m ()Ljava/util/Optional; customSpawnRules e comp_65 + m ()Ljava/util/Optional; equipment f comp_2648 + m ()V + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 entityToSpawn + p 2 customSpawnRules + p 3 equipment + m ()V +c net/minecraft/world/level/SpawnData$CustomSpawnRules ddo$a net/minecraft/class_1952$class_6542 + f Lcom/mojang/serialization/Codec; CODEC a field_34462 + f Lnet/minecraft/util/InclusiveRange; blockLightLimit b comp_66 + f Lnet/minecraft/util/InclusiveRange; skyLightLimit c comp_67 + f Lnet/minecraft/util/InclusiveRange; LIGHT_RANGE d field_34463 + m ()Lnet/minecraft/util/InclusiveRange; blockLightLimit a comp_66 + m (Lnet/minecraft/util/InclusiveRange;)Lcom/mojang/serialization/DataResult; checkLightBoundaries a method_38099 + p 0 lightValues + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38101 a method_38101 + m (Lnet/minecraft/world/level/SpawnData$CustomSpawnRules;)Lnet/minecraft/util/InclusiveRange; method_38100 a method_38100 + m (Ljava/lang/String;)Lcom/mojang/serialization/MapCodec; lightLimit a method_51719 + p 0 fieldName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Z isValidPosition a method_56563 + p 1 pos + p 2 level + m ()Lnet/minecraft/util/InclusiveRange; skyLightLimit b comp_67 + m (Lnet/minecraft/world/level/SpawnData$CustomSpawnRules;)Lnet/minecraft/util/InclusiveRange; method_38102 b method_38102 + m ()Ljava/lang/String; method_49493 c method_49493 + m (Lnet/minecraft/util/InclusiveRange;Lnet/minecraft/util/InclusiveRange;)V + m ()V +c net/minecraft/world/level/Spawner ddp net/minecraft/class_8959 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/network/chat/MutableComponent; method_55119 a method_55119 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/util/RandomSource;)V setEntityId a method_46408 + p 1 entityType + p 2 random + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; getSpawnEntityDisplayName a method_55120 + p 0 stack + p 1 spawnDataKey + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;Ljava/lang/String;)V appendHoverText a method_55121 + p 0 stack + p 1 tooltipLines + p 2 spawnDataKey + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getEntityKey a method_55122 + p 0 tag + p 1 spawnDataKey +c net/minecraft/world/level/StructureManager ddq net/minecraft/class_5138 + f Lnet/minecraft/world/level/LevelAccessor; level a field_24404 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions b field_24497 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheck; structureCheck c field_36216 + m ()Z shouldGenerateStructures a method_27834 + m (Lnet/minecraft/server/level/WorldGenRegion;)Lnet/minecraft/world/level/StructureManager; forWorldGenRegion a method_29951 + p 1 region + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/Holder;)Z method_57559 a method_57559 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStructurePresence a method_39783 + p 1 chunkPos + p 2 structure + p 3 placement + p 4 skipKnownStructures + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/Predicate;)Ljava/util/List; startsForStructure a method_41035 + p 1 chunkPos + p 2 structurePredicate + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/function/Consumer;)V fillStartsForStructure a method_41032 + p 1 structure + p 2 structureRefs + p 3 startConsumer + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V addReference a method_39784 + p 1 structureStart + m (Lnet/minecraft/core/BlockPos;)Z hasAnyStructureAt a method_38852 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_57560 + p 1 pos + p 2 structureTag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureAt a method_28388 + p 1 pos + p 2 structure + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z structureHasPieceAt a method_41033 + p 1 pos + p 2 structureStart + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_41413 + p 1 pos + p 2 predicate + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt a method_41034 + p 1 pos + p 2 structures + m (Lnet/minecraft/core/Registry;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/Structure;)Z method_41414 a method_41414 + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/util/List; startsForStructure a method_38853 + p 1 sectionPos + p 2 structure + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;JLnet/minecraft/world/level/chunk/StructureAccess;)V addReferenceForStructure a method_26973 + p 1 sectionPos + p 2 structure + p 3 reference + p 5 structureAccess + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/chunk/StructureAccess;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStartForStructure a method_26975 + p 1 sectionPos + p 2 structure + p 3 structureAccess + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/world/level/chunk/StructureAccess;)V setStartForStructure a method_26976 + p 1 sectionPos + p 2 structure + p 3 structureStart + p 4 structureAccess + m ()Lnet/minecraft/core/RegistryAccess; registryAccess b method_41036 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Map; getAllStructuresAt b method_41037 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStructureWithPieceAt b method_38854 + p 1 pos + p 2 structure + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/structure/StructureCheck;)V + p 1 level + p 2 worldOptions + p 3 structureCheck +c net/minecraft/world/level/WorldDataConfiguration ddr net/minecraft/class_7712 + f Ljava/lang/String; ENABLED_FEATURES_ID a field_40258 + f Lcom/mojang/serialization/Codec; CODEC b field_40259 + f Lnet/minecraft/world/level/WorldDataConfiguration; DEFAULT c field_40260 + f Lnet/minecraft/world/level/DataPackConfig; dataPacks d comp_1010 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures e comp_1011 + m ()Lnet/minecraft/world/level/DataPackConfig; dataPacks a comp_1010 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45450 a method_45450 + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Lnet/minecraft/world/level/WorldDataConfiguration; expandFeatures a method_45449 + p 1 newFeatures + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures b comp_1011 + m (Lnet/minecraft/world/level/DataPackConfig;Lnet/minecraft/world/flag/FeatureFlagSet;)V + m ()V +c net/minecraft/world/level/WorldGenLevel dds net/minecraft/class_5281 + m ()J getSeed C method_8412 + c Gets the random world seed. + m (Ljava/util/function/Supplier;)V setCurrentlyGenerating a method_36972 + p 1 currentlyGenerating + m (Lnet/minecraft/core/BlockPos;)Z ensureCanWrite f_ method_37368 + p 1 pos +c net/minecraft/world/level/biome/AmbientAdditionsSettings ddt net/minecraft/class_4967 + f Lcom/mojang/serialization/Codec; CODEC a field_24673 + f Lnet/minecraft/core/Holder; soundEvent b field_23144 + f D tickChance c field_23145 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_26098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28391 a method_28391 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Ljava/lang/Double; method_28390 a method_28390 + m ()D getTickChance b method_26099 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Lnet/minecraft/core/Holder; method_28392 b method_28392 + m (Lnet/minecraft/core/Holder;D)V + p 1 soundEvent + p 2 tickChance + m ()V +c net/minecraft/world/level/biome/AmbientMoodSettings ddu net/minecraft/class_4968 + f Lcom/mojang/serialization/Codec; CODEC a field_24674 + f Lnet/minecraft/world/level/biome/AmbientMoodSettings; LEGACY_CAVE_SETTINGS b field_23146 + f Lnet/minecraft/core/Holder; soundEvent c field_23147 + f I tickDelay d field_23148 + f I blockSearchExtent e field_23149 + f D soundPositionOffset f field_23150 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_26100 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28394 a method_28394 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Double; method_28393 a method_28393 + m ()I getTickDelay b method_26101 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Integer; method_28395 b method_28395 + m ()I getBlockSearchExtent c method_26102 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Ljava/lang/Integer; method_28396 c method_28396 + m ()D getSoundPositionOffset d method_26103 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Lnet/minecraft/core/Holder; method_28397 d method_28397 + m (Lnet/minecraft/core/Holder;IID)V + p 1 soundEvent + p 2 tickDelay + p 3 blockSearchExtent + p 4 soundPositionOffset + m ()V +c net/minecraft/world/level/biome/AmbientParticleSettings ddv net/minecraft/class_4761 + f Lcom/mojang/serialization/Codec; CODEC a field_24675 + f Lnet/minecraft/core/particles/ParticleOptions; options b field_24676 + f F probability c field_22035 + m ()Lnet/minecraft/core/particles/ParticleOptions; getOptions a method_24369 + m (Lnet/minecraft/util/RandomSource;)Z canSpawn a method_24370 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28399 a method_28399 + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Ljava/lang/Float; method_28398 a method_28398 + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Lnet/minecraft/core/particles/ParticleOptions; method_28400 b method_28400 + m (Lnet/minecraft/core/particles/ParticleOptions;F)V + p 1 options + p 2 probability + m ()V +c net/minecraft/world/level/biome/Biome ddw net/minecraft/class_1959 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25819 + f Lcom/mojang/serialization/Codec; NETWORK_CODEC b field_26633 + f Lcom/mojang/serialization/Codec; CODEC c field_24677 + f Lcom/mojang/serialization/Codec; LIST_CODEC d field_26750 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; BIOME_INFO_NOISE e field_9324 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; TEMPERATURE_NOISE f field_9335 + f Lnet/minecraft/world/level/levelgen/synth/PerlinSimplexNoise; FROZEN_TEMPERATURE_NOISE g field_26392 + f I TEMPERATURE_CACHE_SIZE h field_30978 + f Lnet/minecraft/world/level/biome/Biome$ClimateSettings; climateSettings i field_26393 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; generationSettings j field_26635 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; mobSettings k field_26395 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects; specialEffects l field_22039 + f Ljava/lang/ThreadLocal; temperatureCache m field_20335 + m ()I getSkyColor a method_8697 + m (DD)I getGrassColor a method_8711 + p 1 posX + p 3 posZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38104 a method_38104 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z shouldFreeze a method_8705 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Z)Z shouldFreeze a method_8685 + p 1 level + p 2 water + p 3 mustBeAtEdge + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/Biome; method_38103 a method_38103 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects; method_30971 a method_30971 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/biome/Biome$Precipitation; getPrecipitationAt a method_48162 + p 1 pos + m ()Lnet/minecraft/world/level/biome/MobSpawnSettings; getMobSettings b method_30966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30776 b method_30776 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z shouldSnow b method_8696 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/Biome$ClimateSettings; method_28409 b method_28409 + m (Lnet/minecraft/core/BlockPos;)Z coldEnoughToSnow b method_33599 + p 1 pos + m ()Z hasPrecipitation c method_48163 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/MobSpawnSettings; method_28417 c method_28417 + m (Lnet/minecraft/core/BlockPos;)Z warmEnoughToRain c method_39927 + p 1 pos + m ()Lnet/minecraft/world/level/biome/BiomeGenerationSettings; getGenerationSettings d method_30970 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_28418 d method_28418 + m (Lnet/minecraft/core/BlockPos;)Z shouldMeltFrozenOceanIcebergSlightly d method_39928 + p 1 pos + m ()I getFogColor e method_24376 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects; method_28421 e method_28421 + m (Lnet/minecraft/core/BlockPos;)F getHeightAdjustedTemperature e method_8707 + p 1 pos + m ()I getFoliageColor f method_8698 + m (Lnet/minecraft/world/level/biome/Biome;)Lnet/minecraft/world/level/biome/Biome$ClimateSettings; method_28423 f method_28423 + m (Lnet/minecraft/core/BlockPos;)F getTemperature f method_21740 + p 1 pos + m ()F getBaseTemperature g method_8712 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects; getSpecialEffects h method_24377 + m ()I getWaterColor i method_8687 + m ()I getWaterFogColor j method_8713 + m ()Ljava/util/Optional; getAmbientParticle k method_24378 + m ()Ljava/util/Optional; getAmbientLoop l method_24935 + m ()Ljava/util/Optional; getAmbientMood m method_24936 + m ()Ljava/util/Optional; getAmbientAdditions n method_24937 + m ()Ljava/util/Optional; getBackgroundMusic o method_27343 + m ()I getGrassColorFromTexture p method_30773 + m ()I getFoliageColorFromTexture q method_30774 + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_21741 r method_21741 + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_21742 s method_21742 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;Lnet/minecraft/world/level/biome/BiomeSpecialEffects;Lnet/minecraft/world/level/biome/BiomeGenerationSettings;Lnet/minecraft/world/level/biome/MobSpawnSettings;)V + p 1 climateSettings + p 2 specialEffects + p 3 generationSettings + p 4 mobSettings + m ()V +c net/minecraft/world/level/biome/Biome$1 ddw$1 net/minecraft/class_1959$1 + f Lnet/minecraft/world/level/biome/Biome; field_20336 a field_20336 + m (Lnet/minecraft/world/level/biome/Biome;IF)V +c net/minecraft/world/level/biome/Biome$BiomeBuilder ddw$a net/minecraft/class_1959$class_1960 + f Z hasPrecipitation a field_41767 + f Ljava/lang/Float; temperature b field_9349 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier c field_26396 + f Ljava/lang/Float; downfall d field_9351 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects; specialEffects e field_22042 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; mobSpawnSettings f field_26636 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; generationSettings g field_26637 + m ()Lnet/minecraft/world/level/biome/Biome; build a method_30972 + m (F)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; temperature a method_8747 + p 1 temperature + m (Lnet/minecraft/world/level/biome/Biome$TemperatureModifier;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; temperatureAdjustment a method_30777 + p 1 temperatureSettings + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; generationSettings a method_30973 + p 1 generationSettings + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; specialEffects a method_24379 + p 1 effects + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; mobSpawnSettings a method_30974 + p 1 mobSpawnSettings + m (Z)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; hasPrecipitation a method_48164 + p 1 hasPercipitation + m (F)Lnet/minecraft/world/level/biome/Biome$BiomeBuilder; downfall b method_8727 + p 1 downfall + m ()V +c net/minecraft/world/level/biome/Biome$ClimateSettings ddw$b net/minecraft/class_1959$class_5482 + f Lcom/mojang/serialization/MapCodec; CODEC a field_26398 + f Z hasPrecipitation b comp_1187 + f F temperature c comp_844 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier d comp_845 + f F downfall e comp_846 + m ()Z hasPrecipitation a comp_1187 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30782 a method_30782 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Float; method_30786 a method_30786 + m ()F temperature b comp_844 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; method_30787 b method_30787 + m ()Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; temperatureModifier c comp_845 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Float; method_30788 c method_30788 + m ()F downfall d comp_846 + m (Lnet/minecraft/world/level/biome/Biome$ClimateSettings;)Ljava/lang/Boolean; method_30789 d method_30789 + m (ZFLnet/minecraft/world/level/biome/Biome$TemperatureModifier;F)V + m ()V +c net/minecraft/world/level/biome/Biome$Precipitation ddw$c net/minecraft/class_1959$class_1963 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; NONE a field_9384 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; RAIN b field_9382 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; SNOW c field_9383 + f Lcom/mojang/serialization/Codec; CODEC d field_46251 + f Ljava/lang/String; name e field_46252 + f [Lnet/minecraft/world/level/biome/Biome$Precipitation; $VALUES f field_9386 + m ()[Lnet/minecraft/world/level/biome/Biome$Precipitation; $values a method_36699 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/Biome$TemperatureModifier ddw$d net/minecraft/class_1959$class_5484 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; NONE a field_26407 + f Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; FROZEN b field_26408 + f Lcom/mojang/serialization/Codec; CODEC c field_26409 + f Ljava/lang/String; name d field_26410 + f [Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; $VALUES e field_26412 + m ()Ljava/lang/String; getName a method_30800 + m (Lnet/minecraft/core/BlockPos;F)F modifyTemperature a method_30798 + p 1 pos + p 2 temperature + m ()[Lnet/minecraft/world/level/biome/Biome$TemperatureModifier; $values b method_36700 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/Biome$TemperatureModifier$1 ddw$d$1 net/minecraft/class_1959$class_5484$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/Biome$TemperatureModifier$2 ddw$d$2 net/minecraft/class_1959$class_5484$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeGenerationSettings ddx net/minecraft/class_5485 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; EMPTY a field_26639 + f Lcom/mojang/serialization/MapCodec; CODEC b field_26413 + f Lorg/slf4j/Logger; LOGGER c field_26638 + f Ljava/util/Map; carvers d field_26415 + f Ljava/util/List; features e field_26416 + f Ljava/util/function/Supplier; flowerFeatures f field_26640 + f Ljava/util/function/Supplier; featureSet g field_34465 + m ()Ljava/util/List; getFlowerFeatures a method_30982 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30802 a method_30802 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Ljava/util/List; method_30809 a method_30809 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Ljava/lang/Iterable; getCarvers a method_30976 + p 1 step + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;)Z method_40138 a method_40138 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Z hasFeature a method_38105 + p 1 feature + m (Ljava/util/List;)Ljava/util/Set; method_40139 a method_40139 + m ()Ljava/util/List; features b method_30983 + m (Lnet/minecraft/world/level/biome/BiomeGenerationSettings;)Ljava/util/Map; method_30808 b method_30808 + m (Ljava/util/List;)Ljava/util/List; method_40140 b method_40140 + m (Ljava/util/Map;Ljava/util/List;)V + p 1 carvers + p 2 features + m ()V +c net/minecraft/world/level/biome/BiomeGenerationSettings$Builder ddx$a net/minecraft/class_5485$class_5495 + f Lnet/minecraft/core/HolderGetter; placedFeatures a field_40894 + f Lnet/minecraft/core/HolderGetter; worldCarvers b field_40895 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; addCarver a method_30991 + p 1 carving + p 2 carver + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$Builder; addFeature a method_30992 + p 1 decoration + p 2 feature + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)V + p 1 placedFeatures + p 2 worldCarvers +c net/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder ddx$b net/minecraft/class_5485$class_7868 + f Ljava/util/Map; carvers a field_40896 + f Ljava/util/List; features b field_40897 + m ()Lnet/minecraft/world/level/biome/BiomeGenerationSettings; build a method_46671 + m (I)V addFeatureStepsUpTo a method_46672 + p 1 step + m (ILnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addFeature a method_46673 + p 1 step + p 2 feature + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Ljava/util/List; method_46674 a method_46674 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addCarver a method_46675 + p 1 carving + p 2 carver + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings$PlainBuilder; addFeature a method_46676 + p 1 decoration + p 2 feature + m (Ljava/util/Map$Entry;)Lnet/minecraft/core/HolderSet; method_46677 a method_46677 + m ()V +c net/minecraft/world/level/biome/BiomeManager ddy net/minecraft/class_4543 + f I CHUNK_CENTER_QUART a field_28106 + f I ZOOM_BITS b field_34466 + f I ZOOM c field_34467 + f I ZOOM_MASK d field_34468 + f Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource; noiseBiomeSource e field_20640 + f J biomeZoomSeed f field_20641 + m (DDD)Lnet/minecraft/core/Holder; getNoiseBiomeAtPosition a method_24938 + p 1 x + p 3 y + p 5 z + m (III)Lnet/minecraft/core/Holder; getNoiseBiomeAtQuart a method_24854 + p 1 x + p 2 y + p 3 z + m (J)J obfuscateSeed a method_27984 + p 0 seed + m (JIIIDDD)D getFiddledDistance a method_38106 + p 0 seed + p 2 x + p 3 y + p 4 z + p 5 xNoise + p 7 yNoise + p 9 zNoise + m (Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource;)Lnet/minecraft/world/level/biome/BiomeManager; withDifferentSource a method_38107 + p 1 newSource + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getBiome a method_22393 + p 1 pos + m (J)D getFiddle b method_38108 + p 0 seed + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Holder; getNoiseBiomeAtPosition b method_27344 + p 1 pos + m (Lnet/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource;J)V + p 1 noiseBiomeSource + p 2 biomeZoomSeed + m ()V +c net/minecraft/world/level/biome/BiomeManager$NoiseBiomeSource ddy$a net/minecraft/class_4543$class_4544 + m (III)Lnet/minecraft/core/Holder; getNoiseBiome getNoiseBiome method_16359 + c Gets the biome at the given quart positions.\nNote that the coordinates passed into this method are 1/4 the scale of block coordinates. + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/biome/BiomeResolver ddz net/minecraft/class_6780 + m (IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; getNoiseBiome getNoiseBiome method_38109 + p 1 x + p 2 y + p 3 z + p 4 sampler +c net/minecraft/world/level/biome/BiomeSource dea net/minecraft/class_1966 + f Lcom/mojang/serialization/Codec; CODEC a field_24713 + f Ljava/util/function/Supplier; possibleBiomes b field_20643 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28442 + m (IIIIILjava/util/function/Predicate;Lnet/minecraft/util/RandomSource;ZLnet/minecraft/world/level/biome/Climate$Sampler;)Lcom/mojang/datafixers/util/Pair; findBiomeHorizontal a method_24385 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 increment + p 6 biomePredicate + p 7 random + p 8 findClosest + p 9 sampler + m (IIIILnet/minecraft/world/level/biome/Climate$Sampler;)Ljava/util/Set; getBiomesWithin a method_8763 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 sampler + m (IIIILjava/util/function/Predicate;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/biome/Climate$Sampler;)Lcom/mojang/datafixers/util/Pair; findBiomeHorizontal a method_8762 + p 1 x + p 2 y + p 3 z + p 4 radius + p 5 biomePredicate + p 6 random + p 7 sampler + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/biome/Climate$Sampler;)V addDebugInfo a method_38114 + p 1 info + p 2 pos + p 3 sampler + m (Lnet/minecraft/core/BlockPos;IIILjava/util/function/Predicate;Lnet/minecraft/world/level/biome/Climate$Sampler;Lnet/minecraft/world/level/LevelReader;)Lcom/mojang/datafixers/util/Pair; findClosestBiome3d a method_42310 + p 1 pos + p 2 radius + p 3 horizontalStep + p 4 verticalStep + p 5 biomePredicate + p 6 sampler + p 7 level + m ()Ljava/util/stream/Stream; collectPossibleBiomes b method_49494 + m ()Ljava/util/Set; possibleBiomes c method_28443 + m ()Ljava/util/Set; method_49495 d method_49495 + m ()V + m ()V +c net/minecraft/world/level/biome/BiomeSources deb net/minecraft/class_7509 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_44207 + p 0 registry + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects dec net/minecraft/class_4763 + f Lcom/mojang/serialization/Codec; CODEC a field_24714 + f I fogColor b field_22067 + f I waterColor c field_22068 + f I waterFogColor d field_22069 + f I skyColor e field_26418 + f Ljava/util/Optional; foliageColorOverride f field_26419 + f Ljava/util/Optional; grassColorOverride g field_26420 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; grassColorModifier h field_26421 + f Ljava/util/Optional; ambientParticleSettings i field_22070 + f Ljava/util/Optional; ambientLoopSoundEvent j field_22491 + f Ljava/util/Optional; ambientMoodSettings k field_22492 + f Ljava/util/Optional; ambientAdditionsSettings l field_22493 + f Ljava/util/Optional; backgroundMusic m field_24113 + m ()I getFogColor a method_24387 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28445 a method_28445 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28444 a method_28444 + m ()I getWaterColor b method_24388 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28446 b method_28446 + m ()I getWaterFogColor c method_24389 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28447 c method_28447 + m ()I getSkyColor d method_30810 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28448 d method_28448 + m ()Ljava/util/Optional; getFoliageColorOverride e method_30811 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_28449 e method_28449 + m ()Ljava/util/Optional; getGrassColorOverride f method_30812 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; method_30813 f method_30813 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; getGrassColorModifier g method_30814 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_30815 g method_30815 + m ()Ljava/util/Optional; getAmbientParticleSettings h method_24390 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/util/Optional; method_30816 h method_30816 + m ()Ljava/util/Optional; getAmbientLoopSoundEvent i method_24939 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_30817 i method_30817 + m ()Ljava/util/Optional; getAmbientMoodSettings j method_24940 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28450 j method_28450 + m ()Ljava/util/Optional; getAmbientAdditionsSettings k method_24941 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28451 k method_28451 + m ()Ljava/util/Optional; getBackgroundMusic l method_27345 + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects;)Ljava/lang/Integer; method_28452 l method_28452 + m (IIIILjava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 fogColor + p 2 waterColor + p 3 waterFogColor + p 4 skyColor + p 5 foliageColorOverride + p 6 grassColorOverride + p 7 grassColorModifier + p 8 ambientParticleSettings + p 9 ambientLoopSoundEvent + p 10 ambientMoodSettings + p 11 ambientAdditionsSettings + p 12 backgroundMusic + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$Builder dec$a net/minecraft/class_4763$class_4764 + f Ljava/util/OptionalInt; fogColor a field_22071 + f Ljava/util/OptionalInt; waterColor b field_22072 + f Ljava/util/OptionalInt; waterFogColor c field_22073 + f Ljava/util/OptionalInt; skyColor d field_26422 + f Ljava/util/Optional; foliageColorOverride e field_26423 + f Ljava/util/Optional; grassColorOverride f field_26424 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; grassColorModifier g field_26425 + f Ljava/util/Optional; ambientParticle h field_22074 + f Ljava/util/Optional; ambientLoopSoundEvent i field_22494 + f Ljava/util/Optional; ambientMoodSettings j field_22495 + f Ljava/util/Optional; ambientAdditionsSettings k field_22496 + f Ljava/util/Optional; backgroundMusic l field_24114 + m ()Lnet/minecraft/world/level/biome/BiomeSpecialEffects; build a method_24391 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; fogColor a method_24392 + p 1 fogColor + m (Lnet/minecraft/sounds/Music;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; backgroundMusic a method_27346 + p 1 backgroundMusic + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientAdditionsSound a method_24944 + p 1 ambientAdditionsSettings + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientMoodSound a method_24943 + p 1 ambientMoodSettings + m (Lnet/minecraft/world/level/biome/AmbientParticleSettings;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientParticle a method_24393 + p 1 ambientParticle + m (Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; grassColorModifier a method_30818 + p 1 grassColorModifier + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; ambientLoopSound a method_24942 + p 1 ambientLoopSoundEvent + m ()Ljava/lang/IllegalStateException; method_30819 b method_30819 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; waterColor b method_24395 + p 1 waterColor + m ()Ljava/lang/IllegalStateException; method_24394 c method_24394 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; waterFogColor c method_24397 + p 1 waterFogColor + m ()Ljava/lang/IllegalStateException; method_24396 d method_24396 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; skyColor d method_30820 + p 1 skyColor + m ()Ljava/lang/IllegalStateException; method_24398 e method_24398 + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; foliageColorOverride e method_30821 + p 1 foliageColorOverride + m (I)Lnet/minecraft/world/level/biome/BiomeSpecialEffects$Builder; grassColorOverride f method_30822 + p 1 grassColorOverride + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier dec$b net/minecraft/class_4763$class_5486 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; NONE a field_26426 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; DARK_FOREST b field_26427 + f Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; SWAMP c field_26428 + f Lcom/mojang/serialization/Codec; CODEC d field_26429 + f Ljava/lang/String; name e field_26430 + f [Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; $VALUES f field_26432 + m ()Ljava/lang/String; getName a method_30826 + m (DDI)I modifyColor a method_30823 + p 1 x + p 3 z + p 5 grassColor + m ()[Lnet/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier; $values b method_36701 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$1 dec$b$1 net/minecraft/class_4763$class_5486$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$2 dec$b$2 net/minecraft/class_4763$class_5486$2 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/BiomeSpecialEffects$GrassColorModifier$3 dec$b$3 net/minecraft/class_4763$class_5486$3 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/biome/Biomes ded net/minecraft/class_1972 + f Lnet/minecraft/resources/ResourceKey; BADLANDS A field_9415 + f Lnet/minecraft/resources/ResourceKey; ERODED_BADLANDS B field_9443 + f Lnet/minecraft/resources/ResourceKey; WOODED_BADLANDS C field_35110 + f Lnet/minecraft/resources/ResourceKey; MEADOW D field_34470 + f Lnet/minecraft/resources/ResourceKey; CHERRY_GROVE E field_42720 + f Lnet/minecraft/resources/ResourceKey; GROVE F field_34471 + f Lnet/minecraft/resources/ResourceKey; SNOWY_SLOPES G field_34472 + f Lnet/minecraft/resources/ResourceKey; FROZEN_PEAKS H field_35115 + f Lnet/minecraft/resources/ResourceKey; JAGGED_PEAKS I field_34474 + f Lnet/minecraft/resources/ResourceKey; STONY_PEAKS J field_34475 + f Lnet/minecraft/resources/ResourceKey; RIVER K field_9438 + f Lnet/minecraft/resources/ResourceKey; FROZEN_RIVER L field_9463 + f Lnet/minecraft/resources/ResourceKey; BEACH M field_9434 + f Lnet/minecraft/resources/ResourceKey; SNOWY_BEACH N field_9478 + f Lnet/minecraft/resources/ResourceKey; STONY_SHORE O field_9419 + f Lnet/minecraft/resources/ResourceKey; WARM_OCEAN P field_9408 + f Lnet/minecraft/resources/ResourceKey; LUKEWARM_OCEAN Q field_9441 + f Lnet/minecraft/resources/ResourceKey; DEEP_LUKEWARM_OCEAN R field_9439 + f Lnet/minecraft/resources/ResourceKey; OCEAN S field_9423 + f Lnet/minecraft/resources/ResourceKey; DEEP_OCEAN T field_9446 + f Lnet/minecraft/resources/ResourceKey; COLD_OCEAN U field_9467 + f Lnet/minecraft/resources/ResourceKey; DEEP_COLD_OCEAN V field_9470 + f Lnet/minecraft/resources/ResourceKey; FROZEN_OCEAN W field_9435 + f Lnet/minecraft/resources/ResourceKey; DEEP_FROZEN_OCEAN X field_9418 + f Lnet/minecraft/resources/ResourceKey; MUSHROOM_FIELDS Y field_9462 + f Lnet/minecraft/resources/ResourceKey; DRIPSTONE_CAVES Z field_28107 + f Lnet/minecraft/resources/ResourceKey; THE_VOID a field_9473 + f Lnet/minecraft/resources/ResourceKey; LUSH_CAVES aa field_29218 + f Lnet/minecraft/resources/ResourceKey; DEEP_DARK ab field_37543 + f Lnet/minecraft/resources/ResourceKey; NETHER_WASTES ac field_9461 + f Lnet/minecraft/resources/ResourceKey; WARPED_FOREST ad field_22075 + f Lnet/minecraft/resources/ResourceKey; CRIMSON_FOREST ae field_22077 + f Lnet/minecraft/resources/ResourceKey; SOUL_SAND_VALLEY af field_22076 + f Lnet/minecraft/resources/ResourceKey; BASALT_DELTAS ag field_23859 + f Lnet/minecraft/resources/ResourceKey; THE_END ah field_9411 + f Lnet/minecraft/resources/ResourceKey; END_HIGHLANDS ai field_9442 + f Lnet/minecraft/resources/ResourceKey; END_MIDLANDS aj field_9447 + f Lnet/minecraft/resources/ResourceKey; SMALL_END_ISLANDS ak field_9457 + f Lnet/minecraft/resources/ResourceKey; END_BARRENS al field_9465 + f Lnet/minecraft/resources/ResourceKey; PLAINS b field_9451 + f Lnet/minecraft/resources/ResourceKey; SUNFLOWER_PLAINS c field_9455 + f Lnet/minecraft/resources/ResourceKey; SNOWY_PLAINS d field_35117 + f Lnet/minecraft/resources/ResourceKey; ICE_SPIKES e field_9453 + f Lnet/minecraft/resources/ResourceKey; DESERT f field_9424 + f Lnet/minecraft/resources/ResourceKey; SWAMP g field_9471 + f Lnet/minecraft/resources/ResourceKey; MANGROVE_SWAMP h field_38748 + f Lnet/minecraft/resources/ResourceKey; FOREST i field_9409 + f Lnet/minecraft/resources/ResourceKey; FLOWER_FOREST j field_9414 + f Lnet/minecraft/resources/ResourceKey; BIRCH_FOREST k field_9412 + f Lnet/minecraft/resources/ResourceKey; DARK_FOREST l field_9475 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_BIRCH_FOREST m field_35112 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_PINE_TAIGA n field_35119 + f Lnet/minecraft/resources/ResourceKey; OLD_GROWTH_SPRUCE_TAIGA o field_35113 + f Lnet/minecraft/resources/ResourceKey; TAIGA p field_9420 + f Lnet/minecraft/resources/ResourceKey; SNOWY_TAIGA q field_9454 + f Lnet/minecraft/resources/ResourceKey; SAVANNA r field_9449 + f Lnet/minecraft/resources/ResourceKey; SAVANNA_PLATEAU s field_9430 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_HILLS t field_35116 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_GRAVELLY_HILLS u field_35111 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_FOREST v field_35120 + f Lnet/minecraft/resources/ResourceKey; WINDSWEPT_SAVANNA w field_35114 + f Lnet/minecraft/resources/ResourceKey; JUNGLE x field_9417 + f Lnet/minecraft/resources/ResourceKey; SPARSE_JUNGLE y field_35118 + f Lnet/minecraft/resources/ResourceKey; BAMBOO_JUNGLE z field_9440 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_8775 + p 0 key + m ()V + m ()V +c net/minecraft/world/level/biome/CheckerboardColumnBiomeSource dee net/minecraft/class_1973 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24715 + f Lnet/minecraft/core/HolderSet; allowedBiomes c field_9481 + f I bitShift d field_9480 + f I size e field_24716 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28454 a method_28454 + m (Lnet/minecraft/world/level/biome/CheckerboardColumnBiomeSource;)Ljava/lang/Integer; method_28453 a method_28453 + m (Lnet/minecraft/world/level/biome/CheckerboardColumnBiomeSource;)Lnet/minecraft/core/HolderSet; method_28455 b method_28455 + m (Lnet/minecraft/core/HolderSet;I)V + p 1 allowedBiomes + p 2 size + m ()V +c net/minecraft/world/level/biome/Climate def net/minecraft/class_6544 + f I PARAMETER_COUNT a field_34476 + f Z DEBUG_SLOW_BIOME_SEARCH b field_34477 + f F QUANTIZATION_FACTOR c field_35359 + m ()Lnet/minecraft/world/level/biome/Climate$Sampler; empty a method_40443 + m (F)J quantizeCoord a method_38665 + p 0 coord + m (FFFFFF)Lnet/minecraft/world/level/biome/Climate$TargetPoint; target a method_38116 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + m (FFFFFFF)Lnet/minecraft/world/level/biome/Climate$ParameterPoint; parameters a method_38117 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + p 6 offset + m (J)F unquantizeCoord a method_38666 + p 0 coord + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;F)Lnet/minecraft/world/level/biome/Climate$ParameterPoint; parameters a method_38118 + p 0 temperature + p 1 humidity + p 2 continentalness + p 3 erosion + p 4 depth + p 5 weirdness + p 6 offset + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/BlockPos; findSpawnPosition a method_39164 + p 0 points + p 1 sampler + m ()V +c net/minecraft/world/level/biome/Climate$DistanceMetric def$a net/minecraft/class_6544$class_6545 +c net/minecraft/world/level/biome/Climate$Parameter def$b net/minecraft/class_6544$class_6546 + f Lcom/mojang/serialization/Codec; CODEC a field_34478 + f J min b comp_103 + f J max c comp_104 + m ()J min a comp_103 + m (F)Lnet/minecraft/world/level/biome/Climate$Parameter; point a method_38120 + p 0 value + m (FF)Lnet/minecraft/world/level/biome/Climate$Parameter; span a method_38121 + p 0 min + p 1 max + m (J)J distance a method_38126 + p 1 pointValue + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)J distance a method_38122 + p 1 parameter + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/world/level/biome/Climate$Parameter; span a method_38123 + p 0 min + p 1 max + m (Ljava/lang/Float;Ljava/lang/Float;)Lcom/mojang/serialization/DataResult; method_38124 a method_38124 + m ()J max b comp_104 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/world/level/biome/Climate$Parameter; span b method_38127 + p 1 param + m (Ljava/lang/Float;Ljava/lang/Float;)Ljava/lang/String; method_49496 b method_49496 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/Float; method_38667 c method_38667 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/Float; method_38668 d method_38668 + m (JJ)V + m ()V +c net/minecraft/world/level/biome/Climate$ParameterList def$c net/minecraft/class_6544$class_6547 + f Ljava/util/List; values a field_34481 + f Lnet/minecraft/world/level/biome/Climate$RTree; index b field_34482 + m ()Ljava/util/List; values a method_38128 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/Codec; codec a method_49497 + p 0 codec + m (Lcom/mojang/serialization/MapCodec;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49498 a method_49498 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValue a method_39529 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Ljava/lang/Object; findValueIndex a method_39528 + p 1 targetPoint + p 2 distanceMetric + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValueBruteForce b method_39530 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Ljava/lang/Object; findValueIndex c method_39527 + p 1 targetPoint + m (Ljava/util/List;)V + p 1 values +c net/minecraft/world/level/biome/Climate$ParameterPoint def$d net/minecraft/class_6544$class_4762 + f Lcom/mojang/serialization/Codec; CODEC a field_24679 + f Lnet/minecraft/world/level/biome/Climate$Parameter; temperature b comp_105 + f Lnet/minecraft/world/level/biome/Climate$Parameter; humidity c comp_106 + f Lnet/minecraft/world/level/biome/Climate$Parameter; continentalness d comp_107 + f Lnet/minecraft/world/level/biome/Climate$Parameter; erosion e comp_108 + f Lnet/minecraft/world/level/biome/Climate$Parameter; depth f comp_109 + f Lnet/minecraft/world/level/biome/Climate$Parameter; weirdness g comp_110 + f J offset h comp_111 + m ()Ljava/util/List; parameterSpace a method_38145 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28425 a method_28425 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Ljava/lang/Long; method_38134 a method_38134 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)J fitness a method_24381 + p 1 point + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; temperature b comp_105 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38136 b method_38136 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; humidity c comp_106 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38138 c method_38138 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; continentalness d comp_107 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38140 d method_38140 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; erosion e comp_108 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_38142 e method_38142 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; depth f comp_109 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_28429 f method_28429 + m ()Lnet/minecraft/world/level/biome/Climate$Parameter; weirdness g comp_110 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;)Lnet/minecraft/world/level/biome/Climate$Parameter; method_28430 g method_28430 + m ()J offset h comp_111 + m (Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;J)V + m ()V +c net/minecraft/world/level/biome/Climate$RTree def$e net/minecraft/class_6544$class_6548 + f I CHILDREN_PER_NODE a field_34486 + f Lnet/minecraft/world/level/biome/Climate$RTree$Node; root b field_34487 + f Ljava/lang/ThreadLocal; lastResult c field_34488 + m (ILnet/minecraft/world/level/biome/Climate$RTree$Node;)J method_38146 a method_38146 + m (ILnet/minecraft/world/level/biome/Climate$RTree$SubTree;)Lnet/minecraft/world/level/biome/Climate$RTree$Node; method_38147 a method_38147 + m (ILjava/util/List;)Lnet/minecraft/world/level/biome/Climate$RTree$Node; build a method_38148 + p 0 paramSpaceSize + p 1 children + m (IZ)Ljava/util/Comparator; comparator a method_38149 + p 0 size + p 1 absolute + m (IZLnet/minecraft/world/level/biome/Climate$RTree$Node;)J method_38150 a method_38150 + m (Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/biome/Climate$RTree$Leaf; method_38152 a method_38152 + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Ljava/lang/Object; search a method_38151 + p 1 targetPoint + p 2 distanceMetric + m (Ljava/util/List;)Lnet/minecraft/world/level/biome/Climate$RTree; create a method_38153 + p 0 nodes + m (Ljava/util/List;IIZ)V sort a method_38154 + p 0 children + p 1 paramSpaceSize + p 2 size + p 3 absolute + m ([Lnet/minecraft/world/level/biome/Climate$Parameter;)J cost a method_38155 + p 0 parameters + m (Ljava/util/List;)Ljava/util/List; bucketize b method_38156 + p 0 nodes + m (Ljava/util/List;)Ljava/util/List; buildParameterSpace c method_38157 + p 0 children + m (Lnet/minecraft/world/level/biome/Climate$RTree$Node;)V + p 1 root +c net/minecraft/world/level/biome/Climate$RTree$Leaf def$e$a net/minecraft/class_6544$class_6548$class_6549 + f Ljava/lang/Object; value b field_34489 + m (Lnet/minecraft/world/level/biome/Climate$ParameterPoint;Ljava/lang/Object;)V + p 1 point + p 2 value +c net/minecraft/world/level/biome/Climate$RTree$Node def$e$b net/minecraft/class_6544$class_6548$class_6550 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; parameterSpace a field_34490 + m ([J)J distance a method_38159 + p 1 values + m ([JLnet/minecraft/world/level/biome/Climate$RTree$Leaf;Lnet/minecraft/world/level/biome/Climate$DistanceMetric;)Lnet/minecraft/world/level/biome/Climate$RTree$Leaf; search a method_38158 + p 1 searchedValues + p 2 leaf + p 3 metric + m (Ljava/util/List;)V + p 1 parameters +c net/minecraft/world/level/biome/Climate$RTree$SubTree def$e$c net/minecraft/class_6544$class_6548$class_6551 + f [Lnet/minecraft/world/level/biome/Climate$RTree$Node; children b field_34491 + m (Ljava/util/List;)V + p 1 parameters + m (Ljava/util/List;Ljava/util/List;)V + p 1 parameters + p 2 children +c net/minecraft/world/level/biome/Climate$Sampler def$f net/minecraft/class_6544$class_6552 + f Lnet/minecraft/world/level/levelgen/DensityFunction; temperature a comp_364 + f Lnet/minecraft/world/level/levelgen/DensityFunction; humidity b comp_365 + f Lnet/minecraft/world/level/levelgen/DensityFunction; continentalness c comp_366 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion d comp_367 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth e comp_368 + f Lnet/minecraft/world/level/levelgen/DensityFunction; weirdness f comp_369 + f Ljava/util/List; spawnTarget g comp_370 + m ()Lnet/minecraft/core/BlockPos; findSpawnPosition a method_39165 + m (III)Lnet/minecraft/world/level/biome/Climate$TargetPoint; sample a method_40444 + p 1 x + p 2 y + p 3 z + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; temperature b comp_364 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; humidity c comp_365 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; continentalness d comp_366 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; erosion e comp_367 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; depth f comp_368 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; weirdness g comp_369 + m ()Ljava/util/List; spawnTarget h comp_370 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Ljava/util/List;)V +c net/minecraft/world/level/biome/Climate$SpawnFinder def$g net/minecraft/class_6544$class_6729 + f Lnet/minecraft/world/level/biome/Climate$SpawnFinder$Result; result a field_35360 + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;FF)V radialSearch a method_39166 + p 1 point + p 2 sampler + p 3 max + p 4 min + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;II)Lnet/minecraft/world/level/biome/Climate$SpawnFinder$Result; getSpawnPositionAndFitness a method_39167 + p 0 points + p 1 sampler + p 2 x + p 3 z + m (Ljava/util/List;Lnet/minecraft/world/level/biome/Climate$Sampler;)V + p 1 points + p 2 sampler +c net/minecraft/world/level/biome/Climate$SpawnFinder$Result def$g$a net/minecraft/class_6544$class_6729$class_6730 + f Lnet/minecraft/core/BlockPos; location a comp_223 + f J fitness b comp_224 + m ()Lnet/minecraft/core/BlockPos; location a comp_223 + m ()J fitness b comp_224 + m (Lnet/minecraft/core/BlockPos;J)V +c net/minecraft/world/level/biome/Climate$TargetPoint def$h net/minecraft/class_6544$class_6553 + f J temperature a comp_112 + f J humidity b comp_113 + f J continentalness c comp_114 + f J erosion d comp_115 + f J depth e comp_116 + f J weirdness f comp_117 + m ()[J toParameterArray a method_38166 + m ()J temperature b comp_112 + m ()J humidity c comp_113 + m ()J continentalness d comp_114 + m ()J erosion e comp_115 + m ()J depth f comp_116 + m ()J weirdness g comp_117 + m (JJJJJJ)V +c net/minecraft/world/level/biome/FeatureSorter deg net/minecraft/class_7510 + m (ILnet/minecraft/world/level/biome/FeatureSorter$1FeatureData;)Z method_44208 a method_44208 + m (Ljava/util/Comparator;Lnet/minecraft/world/level/biome/FeatureSorter$1FeatureData;)Ljava/util/Set; method_44209 a method_44209 + m (Ljava/util/List;Ljava/util/function/Function;Z)Ljava/util/List; buildFeaturesPerStep a method_44210 + p 0 featureSetSources + p 1 toFeatueSetFunction + p 2 notRecursiveFlag + m (Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/lang/Object;)I method_44211 a method_44211 + m ()V +c net/minecraft/world/level/biome/FeatureSorter$1FeatureData deg$a net/minecraft/class_7510$class_6543 + f I featureIndex a comp_234 + f I step b comp_68 + f Lnet/minecraft/world/level/levelgen/placement/PlacedFeature; feature c comp_69 + m ()I featureIndex a comp_234 + m ()I step b comp_68 + m ()Lnet/minecraft/world/level/levelgen/placement/PlacedFeature; feature c comp_69 + m (IILnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V +c net/minecraft/world/level/biome/FeatureSorter$StepFeatureData deg$b net/minecraft/class_7510$class_6827 + f Ljava/util/List; features a comp_303 + f Ljava/util/function/ToIntFunction; indexMapping b comp_304 + m ()Ljava/util/List; features a comp_303 + m ()Ljava/util/function/ToIntFunction; indexMapping b comp_304 + m (Ljava/util/List;)V + p 1 features + m (Ljava/util/List;Ljava/util/function/ToIntFunction;)V +c net/minecraft/world/level/biome/FixedBiomeSource deh net/minecraft/class_1992 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24717 + f Lnet/minecraft/core/Holder; biome c field_9486 + m (Lnet/minecraft/world/level/biome/FixedBiomeSource;)Lnet/minecraft/core/Holder; method_28456 a method_28456 + m (Lnet/minecraft/core/Holder;)V + p 1 biome + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings dei net/minecraft/class_5483 + f Lnet/minecraft/util/random/WeightedRandomList; EMPTY_MOB_LIST a field_30982 + f Lnet/minecraft/world/level/biome/MobSpawnSettings; EMPTY b field_26646 + f Lcom/mojang/serialization/MapCodec; CODEC c field_26403 + f Lorg/slf4j/Logger; LOGGER d field_26645 + f F DEFAULT_CREATURE_SPAWN_PROBABILITY e field_30983 + f F creatureGenerationProbability f field_26404 + f Ljava/util/Map; spawners g field_26405 + f Ljava/util/Map; mobSpawnCosts h field_26406 + m ()F getCreatureProbability a method_31002 + m (Lnet/minecraft/world/entity/EntityType;)Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost; getMobSpawnCost a method_31003 + p 1 entityType + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/util/random/WeightedRandomList; getMobs a method_31004 + p 1 category + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30791 a method_30791 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/util/Map; method_30794 a method_30794 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/util/Map; method_30795 b method_30795 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings;)Ljava/lang/Float; method_30796 c method_30796 + m (FLjava/util/Map;Ljava/util/Map;)V + p 1 creatureGenerationProbability + p 2 spawners + p 3 mobSpawnCosts + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$Builder dei$a net/minecraft/class_5483$class_5496 + f Ljava/util/Map; spawners a field_26647 + f Ljava/util/Map; mobSpawnCosts b field_26648 + f F creatureGenerationProbability c field_26649 + m ()Lnet/minecraft/world/level/biome/MobSpawnSettings; build a method_31007 + m (F)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; creatureGenerationProbability a method_31008 + p 1 probability + m (Lnet/minecraft/world/entity/EntityType;DD)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; addMobCharge a method_31009 + p 1 entityType + p 2 charge + p 4 energyBudget + m (Lnet/minecraft/world/entity/MobCategory;)Ljava/util/List; method_31010 a method_31010 + m (Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lnet/minecraft/world/level/biome/MobSpawnSettings$Builder; addSpawn a method_31011 + p 1 classification + p 2 spawner + m (Ljava/util/Map$Entry;)Lnet/minecraft/util/random/WeightedRandomList; method_31012 a method_31012 + m (Lnet/minecraft/world/entity/MobCategory;)Lnet/minecraft/world/entity/MobCategory; method_31013 b method_31013 + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost dei$b net/minecraft/class_5483$class_5265 + c @param energyBudget Determines the total amount of entities that can spawn in a location based on their current cost (e.g. a cost of 0.1 and a max total of 1 means at most ten entities can spawn in the given location).\n@param charge Determines the cost per entity towards the maximum spawn cap. + f Lcom/mojang/serialization/Codec; CODEC a field_25820 + f D energyBudget b comp_1307 + c Determines the total amount of entities that can spawn in a location based on their current cost (e.g. a cost of 0.1 and a max total of 1 means at most ten entities can spawn in the given location). + f D charge c comp_1308 + c Determines the cost per entity towards the maximum spawn cap. + m ()D energyBudget a comp_1307 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30359 a method_30359 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost;)Ljava/lang/Double; method_31014 a method_31014 + m ()D charge b comp_1308 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$MobSpawnCost;)Ljava/lang/Double; method_31015 b method_31015 + m (DD)V + p 1 energyBudget + p 2 charge + c Determines the cost per entity towards the maximum spawn cap. + p 3 charge + m ()V +c net/minecraft/world/level/biome/MobSpawnSettings$SpawnerData dei$c net/minecraft/class_5483$class_1964 + f Lcom/mojang/serialization/Codec; CODEC a field_24681 + f Lnet/minecraft/world/entity/EntityType; type b field_9389 + f I minCount c field_9388 + f I maxCount d field_9387 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28433 a method_28433 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lcom/mojang/serialization/DataResult; method_49499 a method_49499 + m ()Ljava/lang/String; method_49500 b method_49500 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Ljava/lang/Integer; method_28434 b method_28434 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Ljava/lang/Integer; method_28435 c method_28435 + m (Lnet/minecraft/world/level/biome/MobSpawnSettings$SpawnerData;)Lnet/minecraft/world/entity/EntityType; method_28436 d method_28436 + m (Lnet/minecraft/world/entity/EntityType;III)V + p 1 type + p 2 weight + p 3 minCount + p 4 maxCount + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/util/random/Weight;II)V + p 1 type + p 2 weight + p 3 minCount + p 4 maxCount + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSource dej net/minecraft/class_4766 + f Lcom/mojang/serialization/MapCodec; DIRECT_CODEC b field_24718 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24719 + f Lcom/mojang/serialization/MapCodec; ENTRY_CODEC d field_42984 + f Lcom/mojang/serialization/MapCodec; PRESET_CODEC e field_42985 + f Lcom/mojang/datafixers/util/Either; parameters f field_34498 + m (Lnet/minecraft/resources/ResourceKey;)Z stable a method_38168 + p 1 resourceKey + m (Lnet/minecraft/world/level/biome/Climate$ParameterList;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource; createFromList a method_49501 + p 0 parameters + m (Lnet/minecraft/world/level/biome/Climate$TargetPoint;)Lnet/minecraft/core/Holder; getNoiseBiome a method_38167 + p 1 targetPoint + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource;)Lcom/mojang/datafixers/util/Either; method_49502 a method_49502 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSource; createFromPreset a method_49503 + p 0 parameters + m (Lnet/minecraft/world/level/biome/Climate$ParameterList;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49504 b method_49504 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49505 b method_49505 + m ()Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters d method_49506 + m (Lcom/mojang/datafixers/util/Either;)V + p 1 parameters + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList dek net/minecraft/class_8197 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_42986 + f Lcom/mojang/serialization/Codec; CODEC b field_42987 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; preset c field_42988 + f Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters d field_42989 + m ()Lnet/minecraft/world/level/biome/Climate$ParameterList; parameters a method_49507 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_49508 a method_49508 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49511 a method_49511 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/Climate$ParameterList; method_49509 a method_49509 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49510 a method_49510 + m ()Ljava/util/Map; knownPresets b method_49512 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49513 b method_49513 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;Lnet/minecraft/core/HolderGetter;)V + p 1 preset + p 2 biomes + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset dek$a net/minecraft/class_8197$class_5305 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; NETHER a field_24723 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; OVERWORLD b field_34499 + f Lcom/mojang/serialization/Codec; CODEC c field_42990 + f Lnet/minecraft/resources/ResourceLocation; id d comp_1309 + f Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider; provider e comp_1310 + f Ljava/util/Map; BY_NAME f field_24724 + m ()Ljava/util/stream/Stream; usedBiomes a method_49514 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_49515 a method_49515 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_49516 a method_49516 + m (Lcom/google/common/collect/ImmutableList$Builder;Ljava/util/function/Function;Lcom/mojang/datafixers/util/Pair;)V method_49192 a method_49192 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lcom/mojang/serialization/DataResult; method_49517 a method_49517 + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/biome/Climate$ParameterList; generateOverworldBiomes a method_49193 + p 0 valueGetter + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_1309 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_49518 b method_49518 + m (Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset;)Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset; method_49519 b method_49519 + m ()Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider; provider c comp_1310 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49520 c method_49520 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider;)V + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$1 dek$a$1 net/minecraft/class_8197$class_5305$1 + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$2 dek$a$2 net/minecraft/class_8197$class_5305$2 + m ()V +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterList$Preset$SourceProvider dek$a$a net/minecraft/class_8197$class_5305$class_8165 +c net/minecraft/world/level/biome/MultiNoiseBiomeSourceParameterLists del net/minecraft/class_8198 + f Lnet/minecraft/resources/ResourceKey; NETHER a field_42991 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD b field_42992 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_49521 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_49522 + p 0 context + m ()V + m ()V +c net/minecraft/world/level/biome/OverworldBiomeBuilder dem net/minecraft/class_6554 + f Lnet/minecraft/world/level/biome/Climate$Parameter; midInlandContinentalness A field_34516 + f Lnet/minecraft/world/level/biome/Climate$Parameter; farInlandContinentalness B field_34517 + f [[Lnet/minecraft/resources/ResourceKey; OCEANS C field_34518 + f [[Lnet/minecraft/resources/ResourceKey; MIDDLE_BIOMES D field_34519 + f [[Lnet/minecraft/resources/ResourceKey; MIDDLE_BIOMES_VARIANT E field_34520 + f [[Lnet/minecraft/resources/ResourceKey; PLATEAU_BIOMES F field_34521 + f [[Lnet/minecraft/resources/ResourceKey; PLATEAU_BIOMES_VARIANT G field_34522 + f [[Lnet/minecraft/resources/ResourceKey; SHATTERED_BIOMES H field_36339 + f F HIGH_START a field_35041 + f F PEAK_START b field_34502 + f F NEAR_INLAND_START c field_35042 + f F MID_INLAND_START d field_35043 + f F FAR_INLAND_START e field_35044 + f F EROSION_INDEX_1_START f field_35045 + f F EROSION_INDEX_2_START g field_35046 + f F VALLEY_SIZE h field_34500 + f F LOW_START i field_35047 + f F HIGH_END j field_35048 + f F PEAK_SIZE k field_34501 + f F PEAK_END l field_34503 + f F EROSION_DEEP_DARK_DRYNESS_THRESHOLD m field_39134 + f F DEPTH_DEEP_DARK_DRYNESS_THRESHOLD n field_39135 + f Lnet/minecraft/world/level/biome/Climate$Parameter; FULL_RANGE o field_34504 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; temperatures p field_34505 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; humidities q field_34506 + f [Lnet/minecraft/world/level/biome/Climate$Parameter; erosions r field_34507 + f Lnet/minecraft/world/level/biome/Climate$Parameter; FROZEN_RANGE s field_34508 + f Lnet/minecraft/world/level/biome/Climate$Parameter; UNFROZEN_RANGE t field_34509 + f Lnet/minecraft/world/level/biome/Climate$Parameter; mushroomFieldsContinentalness u field_34510 + f Lnet/minecraft/world/level/biome/Climate$Parameter; deepOceanContinentalness v field_34511 + f Lnet/minecraft/world/level/biome/Climate$Parameter; oceanContinentalness w field_34512 + f Lnet/minecraft/world/level/biome/Climate$Parameter; coastContinentalness x field_34513 + f Lnet/minecraft/world/level/biome/Climate$Parameter; inlandContinentalness y field_34514 + f Lnet/minecraft/world/level/biome/Climate$Parameter; nearInlandContinentalness z field_34515 + m ()Ljava/util/List; spawnTarget a method_39168 + m (D)Ljava/lang/String; getDebugStringForPeaksAndValleys a method_38179 + p 0 peaksAndValleysData + m (D[Lnet/minecraft/world/level/biome/Climate$Parameter;)Ljava/lang/String; getDebugStringForNoiseValue a method_38180 + p 0 depth + p 2 values + m (II)Lnet/minecraft/resources/ResourceKey; pickBeachBiome a method_38181 + p 1 temperature + p 2 humidity + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiome a method_38182 + p 1 temperature + p 2 humidity + p 3 param + m (IILnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; maybePickWindsweptSavannaBiome a method_40009 + p 1 temperature + p 2 humidity + p 3 param + p 4 key + m (ILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickBadlandsBiome a method_38184 + p 1 humidity + p 2 param + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Z isDeepDarkRegion a method_43718 + p 0 erosionFunction + p 1 depthFunction + p 2 functionContext + m (Ljava/util/function/Consumer;)V addBiomes a method_38185 + p 1 key + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addPeaks a method_38186 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addSurfaceBiome a method_38187 + p 1 consumer + p 2 temperature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getTemperatureThresholds b method_40010 + m (D)Ljava/lang/String; getDebugStringForContinentalness b method_38188 + p 1 continentalness + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiomeOrBadlandsIfHot b method_38189 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addDebugBiomes b method_46678 + p 1 key + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addHighSlice b method_38191 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addUndergroundBiome b method_38192 + p 1 consumer + p 2 temperature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getHumidityThresholds c method_40011 + m (D)Ljava/lang/String; getDebugStringForErosion c method_38193 + p 1 erosion + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickMiddleBiomeOrBadlandsIfHotOrSlopeIfCold c method_38194 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addOffCoastBiomes c method_38190 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addMidSlice c method_38196 + p 1 consumer + p 2 param + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;Lnet/minecraft/world/level/biome/Climate$Parameter;FLnet/minecraft/resources/ResourceKey;)V addBottomBiome c method_41419 + p 1 consumer + p 2 temerature + p 3 humidity + p 4 continentalness + p 5 erosion + p 6 depth + p 7 weirdness + p 8 key + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getErosionThresholds d method_40012 + m (D)Ljava/lang/String; getDebugStringForTemperature d method_38197 + p 1 temperature + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickShatteredCoastBiome d method_38198 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addInlandBiomes d method_38195 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addLowSlice d method_38200 + p 1 consumer + p 2 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getContinentalnessThresholds e method_40013 + m (D)Ljava/lang/String; getDebugStringForHumidity e method_38201 + p 1 humidity + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickPlateauBiome e method_38202 + p 1 temperature + p 2 humidity + p 3 param + m (Ljava/util/function/Consumer;)V addUndergroundBiomes e method_38199 + p 1 consume + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/biome/Climate$Parameter;)V addValleys e method_38203 + p 1 consumer + p 2 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getPeaksAndValleysThresholds f method_40014 + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickPeakBiome f method_38204 + p 1 temperature + p 2 humidity + p 3 param + m ()[Lnet/minecraft/world/level/biome/Climate$Parameter; getWeirdnessThresholds g method_40015 + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickSlopeBiome g method_38205 + p 1 temperature + p 2 humidity + p 3 param + m (IILnet/minecraft/world/level/biome/Climate$Parameter;)Lnet/minecraft/resources/ResourceKey; pickShatteredBiome h method_38183 + p 1 temperature + p 2 humidity + p 3 param + m ()V +c net/minecraft/world/level/biome/TheEndBiomeSource den net/minecraft/class_2169 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24730 + f Lnet/minecraft/core/Holder; end c field_26700 + f Lnet/minecraft/core/Holder; highlands d field_26701 + f Lnet/minecraft/core/Holder; midlands e field_26702 + f Lnet/minecraft/core/Holder; islands f field_26703 + f Lnet/minecraft/core/Holder; barrens g field_26704 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46679 a method_46679 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/biome/TheEndBiomeSource; create a method_46680 + p 0 biomeGetter + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 end + p 2 highlands + p 3 midlands + p 4 islands + p 5 barrens + m ()V +c net/minecraft/world/level/biome/package-info deo net/minecraft/class_6086 +c net/minecraft/world/level/block/AbstractBannerBlock dep net/minecraft/class_2185 + f Lnet/minecraft/world/item/DyeColor; color a field_9855 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_9303 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties +c net/minecraft/world/level/block/AbstractCandleBlock deq net/minecraft/class_5540 + f I LIGHT_PER_CANDLE a field_30987 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_27083 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V extinguish a method_31614 + p 0 player + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/util/RandomSource;)V addParticlesAndSound a method_31610 + p 0 level + p 1 offset + p 2 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/phys/Vec3;)V method_31611 a method_31611 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Z)V setLit a method_31612 + p 0 level + p 1 state + p 2 pos + p 3 lit + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;)V method_35244 a method_35244 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/lang/Iterable; getParticleOffsets b method_31613 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLit c method_35245 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBeLit d method_35246 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AbstractCauldronBlock der net/minecraft/class_2275 + f I FLOOR_LEVEL a field_30988 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10746 + f Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; interactions c field_27084 + f I SIDE_THICKNESS d field_30989 + f I LEG_WIDTH e field_30990 + f I LEG_HEIGHT f field_30991 + f I LEG_DEPTH g field_30992 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INSIDE h field_10747 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)V receiveStalactiteDrip a method_32764 + p 1 state + p 2 level + p 3 pos + p 4 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z isEntityInsideContent a method_31616 + p 1 state + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/Fluid;)Z canReceiveStalactiteDrip a method_32765 + p 1 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;)D getContentHeight b method_31615 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFull d method_32766 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap;)V + p 1 properties + p 2 interactions + m ()V +c net/minecraft/world/level/block/AbstractChestBlock des net/minecraft/class_4739 + f Ljava/util/function/Supplier; blockEntityType a field_21796 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult; combine a method_24167 + p 1 state + p 2 level + p 3 pos + p 4 override + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Ljava/util/function/Supplier;)V + p 1 properties + p 2 blockEntityType +c net/minecraft/world/level/block/AbstractFurnaceBlock det net/minecraft/class_2363 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING a field_11104 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11105 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; createFurnaceTicker a method_31617 + p 0 level + p 1 serverType + p 2 clientType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V openContainer a method_17025 + c Called to open this furnace's container.\n\n@see #use + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AbstractSkullBlock deu net/minecraft/class_2190 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED a field_46110 + f Lnet/minecraft/world/level/block/SkullBlock$Type; type b field_9867 + m ()Lnet/minecraft/world/level/block/SkullBlock$Type; getType b method_9327 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/AirBlock dev net/minecraft/class_2189 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46253 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AmethystBlock dew net/minecraft/class_5541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46254 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/AmethystClusterBlock dex net/minecraft/class_5542 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46255 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_27086 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_27087 + f Lnet/minecraft/world/phys/shapes/VoxelShape; northAabb e field_27088 + f Lnet/minecraft/world/phys/shapes/VoxelShape; southAabb f field_27089 + f Lnet/minecraft/world/phys/shapes/VoxelShape; eastAabb g field_27090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; westAabb h field_27091 + f Lnet/minecraft/world/phys/shapes/VoxelShape; upAabb i field_27092 + f Lnet/minecraft/world/phys/shapes/VoxelShape; downAabb j field_27093 + f F height k field_46256 + f F aabbOffset l field_46257 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53970 a method_53970 + m (Lnet/minecraft/world/level/block/AmethystClusterBlock;)Ljava/lang/Float; method_53971 a method_53971 + m (Lnet/minecraft/world/level/block/AmethystClusterBlock;)Ljava/lang/Float; method_53972 b method_53972 + m (FFLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 height + p 2 aabbOffset + p 3 properties + m ()V +c net/minecraft/world/level/block/AmethystClusterBlock$1 dex$1 net/minecraft/class_5542$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_27094 + m ()V +c net/minecraft/world/level/block/AnvilBlock dey net/minecraft/class_2199 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46258 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_9883 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE c field_9882 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_LEG1 d field_9885 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_LEG2 e field_9888 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_TOP f field_9884 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_LEG1 g field_9891 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_LEG2 h field_9889 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_TOP i field_9886 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB j field_9887 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB k field_9892 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE l field_17349 + f F FALL_DAMAGE_PER_DISTANCE m field_30993 + f I FALL_DAMAGE_MAX n field_30994 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17453 a method_17453 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; damage e method_9346 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/AttachedStemBlock dez net/minecraft/class_2195 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46259 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_9873 + f F AABB_OFFSET c field_30995 + f Ljava/util/Map; AABBS d field_9874 + f Lnet/minecraft/resources/ResourceKey; fruit e field_9875 + f Lnet/minecraft/resources/ResourceKey; stem f field_46260 + f Lnet/minecraft/resources/ResourceKey; seed g field_27095 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53973 a method_53973 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53974 a method_53974 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53975 b method_53975 + m (Lnet/minecraft/world/level/block/AttachedStemBlock;)Lnet/minecraft/resources/ResourceKey; method_53976 c method_53976 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 stem + p 2 fruit + p 3 seed + p 4 properties + m ()V +c net/minecraft/world/level/block/AzaleaBlock dfa net/minecraft/class_5800 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_30996 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/BambooSaplingBlock dfb net/minecraft/class_2202 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46262 + f F SAPLING_AABB_OFFSET b field_31005 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SAPLING_SHAPE c field_9897 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V growBamboo a method_9351 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BambooStalkBlock dfc net/minecraft/class_2211 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46263 + f F SMALL_LEAVES_AABB_OFFSET b field_30997 + f F LARGE_LEAVES_AABB_OFFSET c field_30998 + f F COLLISION_AABB_OFFSET d field_30999 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SMALL_SHAPE e field_9912 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LARGE_SHAPE f field_9915 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE g field_9913 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE h field_9914 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; LEAVES i field_9917 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE j field_9916 + f I MAX_HEIGHT k field_31000 + f I STAGE_GROWING l field_31001 + f I STAGE_DONE_GROWING m field_31002 + f I AGE_THIN_BAMBOO n field_31003 + f I AGE_THICK_BAMBOO o field_31004 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeightAboveUpToMax a method_9387 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;I)V growBamboo a method_9385 + p 1 state + p 2 level + p 3 pos + p 4 random + p 5 age + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeightBelowUpToMax b method_9386 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BannerBlock dfd net/minecraft/class_2215 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46264 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_9924 + f Ljava/util/Map; BY_COLOR c field_9925 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_9923 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53977 a method_53977 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; byColor a method_9398 + p 0 color + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/BarrelBlock dfe net/minecraft/class_3708 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46265 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16320 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN c field_18006 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BarrierBlock dff net/minecraft/class_2213 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46266 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_45144 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralFanBlock dfg net/minecraft/class_2221 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46267 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_9932 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralPlantBlock dfh net/minecraft/class_2217 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46268 + f F AABB_OFFSET b field_31006 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_9928 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralPlantTypeBlock dfi net/minecraft/class_2230 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB a field_9939 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_9940 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V tryScheduleDieTick a method_9430 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z scanForWater e method_9431 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseCoralWallFanBlock dfj net/minecraft/class_2222 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46269 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_9933 + f Ljava/util/Map; SHAPES e field_9934 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BaseEntityBlock dfk net/minecraft/class_2237 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; createTickerHelper a method_31618 + p 0 serverType + p 1 clientType + p 2 ticker + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/BaseFireBlock dfl net/minecraft/class_4770 + f F AABB_OFFSET a field_31007 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB b field_22498 + f I SECONDS_ON_FIRE c field_31008 + f F fireDamage d field_22088 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_24416 + p 0 reader + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z inPortalDimension a method_30366 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canBePlacedAt a method_30032 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isPortal b method_30033 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBurn f method_10195 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;F)V + p 1 properties + p 2 fireDamage + m ()V +c net/minecraft/world/level/block/BasePressurePlateBlock dfm net/minecraft/class_2231 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_AABB a field_9942 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_9943 + f Lnet/minecraft/world/phys/AABB; TOUCH_AABB c field_9941 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type d field_42726 + m (Lnet/minecraft/world/entity/Entity;)Z method_52209 a method_52209 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)V checkPressed a method_9433 + p 1 entity + p 2 level + p 3 pos + p 4 state + p 5 currentSignal + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/AABB;Ljava/lang/Class;)I getEntityCount a method_52210 + p 0 level + p 1 box + p 2 entityClass + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours a method_9437 + c Notify block and block below of changes + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;I)Lnet/minecraft/world/level/block/state/BlockState; setSignalForState a method_9432 + c Returns the block state that encodes the given signal. + p 1 state + p 2 signal + m ()I getPressedTime b method_9563 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getSignalStrength b method_9434 + c Calculates what the signal strength of a pressure plate at the given location should be. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)I getSignalForState g method_9435 + c Returns the signal encoded in the given block state. + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/world/level/block/state/properties/BlockSetType;)V + p 1 properties + p 2 type + m ()V +c net/minecraft/world/level/block/BaseRailBlock dfn net/minecraft/class_2241 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLAT_AABB a field_9958 + f Lnet/minecraft/world/phys/shapes/VoxelShape; HALF_BLOCK_AABB b field_9960 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_27096 + f Z isStraight d field_9959 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isRail a method_9479 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; updateDir a method_9475 + p 1 level + p 2 pos + p 3 state + p 4 alwaysPlace + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V updateState a method_9477 + p 1 state + p 2 level + p 3 pos + p 4 neighborBlock + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_24417 + p 1 state + p 2 level + p 3 pos + p 4 movedByPiston + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/properties/RailShape;)Z shouldBeRemoved a method_27935 + p 0 pos + p 1 level + p 2 shape + m ()Z isStraight b method_9478 + m ()Lnet/minecraft/world/level/block/state/properties/Property; getShapeProperty c method_9474 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isRail g method_9476 + p 0 state + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 isStraight + p 2 properties + m ()V +c net/minecraft/world/level/block/BaseRailBlock$1 dfn$1 net/minecraft/class_2241$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_24465 + m ()V +c net/minecraft/world/level/block/BaseTorchBlock dfo net/minecraft/class_8810 + f I AABB_STANDING_OFFSET a field_46270 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_46271 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/BeaconBeamBlock dfp net/minecraft/class_4275 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_10622 +c net/minecraft/world/level/block/BeaconBlock dfq net/minecraft/class_2238 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46272 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BedBlock dfr net/minecraft/class_2244 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46273 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PART b field_9967 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OCCUPIED c field_9968 + f I HEIGHT d field_31009 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE e field_16788 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_NORTH_WEST f field_16782 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_SOUTH_WEST g field_16784 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_NORTH_EAST h field_16786 + f Lnet/minecraft/world/phys/shapes/VoxelShape; LEG_SOUTH_EAST i field_16789 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE j field_16787 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE k field_16785 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE l field_16783 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE m field_16790 + f I LEG_WIDTH n field_31010 + f Lnet/minecraft/world/item/DyeColor; color o field_9966 + m (Lnet/minecraft/world/entity/Entity;)V bounceUp a method_21838 + p 1 entity + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;F)Ljava/util/Optional; findStandUpPosition a method_9484 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 direction + p 4 yRot + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Ljava/util/Optional; findBunkBedStandUpPosition a method_30835 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 stateFacing + p 4 entityFacing + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;[[IZ)Ljava/util/Optional; findStandUpPositionAtOffset a method_30836 + p 0 entityType + p 1 collisionGetter + p 2 pos + p 3 offsets + p 4 simulate + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/player/Player$BedSleepingProblem;)V method_55767 a method_55767 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53978 a method_53978 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction; getBedOrientation a method_18476 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z canSetSpawn a method_27352 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z kickVillagerOutOfBed a method_22357 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/properties/BedPart;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; getNeighbourDirection a method_9488 + c Given a bed part and the direction it's facing, find the direction to move to get the other bed part + p 0 part + p 1 direction + m (Lnet/minecraft/core/Direction;)[[I bedAboveStandUpOffsets a method_30837 + p 0 dir + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[[I bedStandUpOffsets a method_30838 + p 0 firstDir + p 1 secondDir + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_9487 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isBunkBed b method_30839 + p 0 level + p 1 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)[[I bedSurroundStandUpOffsets b method_30840 + p 0 firstDir + p 1 secondDir + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection g method_24163 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; getBlockType h method_24164 + p 0 state + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/BedBlock$1 dfr$1 net/minecraft/class_2244$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_16791 + m ()V +c net/minecraft/world/level/block/BeehiveBlock dfs net/minecraft/class_4481 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46274 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_20419 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HONEY_LEVEL c field_20420 + f I MAX_HONEY_LEVELS d field_31011 + f I SHEARED_HONEYCOMB_COUNT e field_31012 + m (Lnet/minecraft/world/level/Level;DDDDD)V spawnFluidParticle a method_21840 + p 1 particleData + p 2 x1 + p 4 x2 + p 6 z1 + p 8 z2 + p 10 y + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V resetHoneyLevel a method_23754 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)V releaseBeesAndResetHoneyLevel a method_21841 + p 1 level + p 2 state + p 3 pos + p 4 player + p 5 beeReleaseStatus + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropHoneycomb a method_21842 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V trySpawnDripParticles a method_21843 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/VoxelShape;D)V spawnParticle a method_21844 + p 1 level + p 2 pos + p 3 shape + p 4 y + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V angerNearbyBees b method_23893 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z hiveContainsBees c method_23894 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BeetrootBlock dft net/minecraft/class_2242 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46275 + f I MAX_AGE b field_31013 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_9962 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE g field_9961 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BellBlock dfu net/minecraft/class_3709 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_SOUTH F field_17093 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_SHAPE G field_17094 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46276 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16324 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ATTACHMENT c field_16326 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_20648 + f I EVENT_BELL_RING e field_31014 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SOUTH_FLOOR_SHAPE f field_16325 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_WEST_FLOOR_SHAPE g field_16322 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_TOP_SHAPE h field_17087 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_BOTTOM_SHAPE i field_17088 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELL_SHAPE j field_17089 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SOUTH_BETWEEN k field_17090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_WEST_BETWEEN l field_16321 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_WEST m field_17091 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_EAST n field_17092 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TO_NORTH o field_16323 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z attemptToRing a method_17026 + p 1 entity + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/player/Player;Z)Z onHit a method_19285 + p 1 level + p 2 state + p 3 result + p 4 player + p 5 canRingBell + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z attemptToRing a method_33600 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;D)Z isProperHit a method_17028 + c @return true if the bell can be rung from the given side and vertical position. For example, bells attached to their northern neighbor cannot be rung from the south face, since it can't swing north-south. + p 1 pos + p 2 direction + p 3 distanceY + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVoxelShape m method_16116 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection n method_16115 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BellBlock$1 dfu$1 net/minecraft/class_3709$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$BellAttachType a field_16327 + m ()V +c net/minecraft/world/level/block/BigDripleafBlock dfv net/minecraft/class_5801 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46277 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_28660 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TILT c field_28661 + f I NO_TICK d field_31015 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; DELAY_UNTIL_NEXT_TILT_STATE e field_28662 + f I MAX_GEN_HEIGHT f field_31016 + f I STEM_WIDTH g field_31017 + f I ENTITY_DETECTION_MIN_Y h field_31018 + f I LOWEST_LEAF_TOP i field_31019 + f Ljava/util/Map; LEAF_SHAPES j field_28664 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STEM_SLICER k field_31020 + f Ljava/util/Map; STEM_SHAPES l field_28665 + f Ljava/util/Map; shapesCache m field_28666 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playTiltSound a method_33601 + p 0 level + p 1 pos + p 2 sound + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V placeWithRandomHeight a method_33603 + p 0 level + p 1 random + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/core/Direction;)Z place a method_33726 + p 0 level + p 1 pos + p 2 fluidState + p 3 direction + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlaceAt a method_33725 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Tilt;)V setTilt a method_33604 + p 0 state + p 1 level + p 2 pos + p 3 tilt + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/Tilt;Lnet/minecraft/sounds/SoundEvent;)V setTiltAndScheduleTick a method_33605 + p 1 state + p 2 level + p 3 pos + p 4 tilt + p 5 sound + m (Lit/unimi/dsi/fastutil/objects/Object2IntArrayMap;)V method_33609 a method_33609 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z canEntityTilt a method_33606 + p 0 pos + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V resetTilt d method_33610 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_33611 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canReplace n method_33727 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BigDripleafStemBlock dfw net/minecraft/class_5802 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46278 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE b field_28668 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE c field_28669 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE d field_28670 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE e field_28671 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_28667 + f I STEM_WIDTH g field_31021 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/core/Direction;)Z place a method_33728 + p 0 level + p 1 pos + p 2 fluidState + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BigDripleafStemBlock$1 dfw$1 net/minecraft/class_5802$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_28672 + m ()V +c net/minecraft/world/level/block/BlastFurnaceBlock dfx net/minecraft/class_3710 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46279 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/Block dfy net/minecraft/class_2248 + c

Interface {@link net.fabricmc.fabric.api.block.v1.FabricBlock} injected by mod fabric-block-api-v1

+ f I UPDATE_ALL_IMMEDIATE A field_31022 + f F INDESTRUCTIBLE B field_31023 + f F INSTANT C field_31024 + f I UPDATE_LIMIT D field_31025 + f Lnet/minecraft/world/level/block/state/StateDefinition; stateDefinition E field_10647 + f Lorg/slf4j/Logger; LOGGER a field_10638 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36404 + f Lcom/google/common/cache/LoadingCache; SHAPE_FULL_BLOCK_CACHE c field_19312 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlockState d field_10646 + f Ljava/lang/String; descriptionId e field_10642 + f Lnet/minecraft/world/item/Item; item f field_17562 + f I CACHE_SIZE g field_31026 + f Ljava/lang/ThreadLocal; OCCLUSION_CACHE h field_10649 + f Lcom/mojang/serialization/MapCodec; CODEC p field_46280 + f Lnet/minecraft/core/IdMapper; BLOCK_STATE_REGISTRY q field_10651 + f I UPDATE_NEIGHBORS r field_31027 + f I UPDATE_CLIENTS s field_31028 + f I UPDATE_INVISIBLE t field_31029 + f I UPDATE_IMMEDIATE u field_31030 + f I UPDATE_KNOWN_SHAPE v field_31031 + f I UPDATE_SUPPRESS_DROPS w field_31032 + f I UPDATE_MOVE_BY_PISTON x field_31033 + f I UPDATE_NONE y field_31035 + f I UPDATE_ALL z field_31036 + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; box a method_9541 + p 0 x1 + p 2 y1 + p 4 z1 + p 6 x2 + p 8 y2 + p 10 z2 + m (I)Lnet/minecraft/world/level/block/state/BlockState; stateById a method_9531 + p 0 id + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;I)V popExperience a method_9583 + c Spawns the given amount of experience into the Level as experience orb entities. + p 1 level + p 2 pos + p 3 amount + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/valueproviders/IntProvider;)V tryDropExperience a method_41420 + p 1 level + p 2 pos + p 3 heldItem + p 4 amount + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/level/block/Block; byItem a method_9503 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/List;Lnet/minecraft/world/item/TooltipFlag;)V appendHoverText a method_9568 + p 1 stack + p 2 context + p 3 tooltipComponents + p 4 tooltipFlag + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_9605 + p 1 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;)V updateEntityAfterFallOn a method_9502 + c Called when an Entity lands on this Block.\nThis method is responsible for doing any modification on the motion of the entity that should result from the landing. + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/Explosion;)Z dropFromExplosion a method_9533 + c @return whether this block should drop its drops when destroyed by the given explosion + p 1 explosion + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/entity/item/ItemEntity; method_36990 a method_36990 + m (Lnet/minecraft/world/level/Level;DDDLnet/minecraft/world/item/ItemStack;DDD)Lnet/minecraft/world/entity/item/ItemEntity; method_36991 a method_36991 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnDestroyParticles a method_33614 + p 1 level + p 2 player + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/item/ItemStack;)V playerDestroy a method_9556 + c Called after a player has successfully harvested this block. This method will only be called if the player has used the correct tool and drops should be spawned. + p 1 level + p 2 player + p 3 pos + p 4 state + p 5 blockEntity + p 6 tool + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;F)V fallOn a method_9554 + p 1 level + p 2 state + p 3 pos + p 4 entity + p 5 fallDistance + m (Lnet/minecraft/world/level/Level;Ljava/util/function/Supplier;Lnet/minecraft/world/item/ItemStack;)V popResource a method_36993 + p 0 level + p 1 itemEntitySupplier + p 2 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V popResource a method_9577 + c Spawns the given stack into the Level at the given position, respecting the doTileDrops gamerule + p 0 level + p 1 pos + p 2 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;)V wasExploded a method_9586 + c Called when this Block is destroyed by an Explosion + p 1 level + p 2 pos + p 3 explosion + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/Entity;)V stepOn a method_9591 + p 1 level + p 2 pos + p 3 state + p 4 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;)V setPlacedBy a method_9567 + c Called by BlockItem after this block has been placed. + p 1 level + p 2 pos + p 3 state + p 4 placer + p 5 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/state/BlockState; playerWillDestroy a method_9576 + p 1 level + p 2 pos + p 3 state + p 4 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/item/ItemStack;)V popResourceFromFace a method_36992 + p 0 level + p 1 pos + p 2 direction + p 3 stack + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9596 a method_9596 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V destroy a method_9585 + c Called after this block has been removed by a player. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; getCloneItemStack a method_9574 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSupportCenter a method_20044 + c @return whether the given position has a solid center in the given direction + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isPossibleToRespawnInThis a method_9538 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;)Ljava/util/List; getDrops a method_9562 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getDrops a method_9609 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + p 4 entity + p 5 tool + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Z shouldRenderFace a method_9607 + p 0 state + p 1 level + p 2 offset + p 3 face + p 4 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V animateTick a method_9496 + c Called periodically clientside on blocks near the player to show effects (like furnace fire particles). + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/biome/Biome$Precipitation;)V handlePrecipitation a method_9504 + p 1 state + p 2 level + p 3 pos + p 4 precipitation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/item/ItemStack;)V dropResources a method_9511 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + p 4 entity + p 5 tool + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntity;)V dropResources a method_9610 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; pushEntitiesUp a method_9582 + p 0 oldState + p 1 newState + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateOrDestroy a method_30094 + c Replaces oldState with newState, possibly playing effects and creating drops. Flags are as in {@link net.minecraft.world.level.Level#setBlock(net.minecraft.core.BlockPos, net.minecraft.world.level.block.state.BlockState, int)}. + p 0 oldState + p 1 newState + p 2 level + p 3 pos + p 4 flags + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateOrDestroy a method_9611 + p 0 oldState + p 1 newState + p 2 level + p 3 pos + p 4 flags + p 5 recursionLeft + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/BlockState; copyProperty a method_34724 + p 0 sourceState + p 1 targetState + p 2 property + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;)V createBlockStateDefinition a method_9515 + p 1 builder + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isShapeFullBlock a method_9614 + c @return whether the provided {@link net.minecraft.world.phys.shapes.VoxelShape} is a full block (1x1x1) + p 0 shape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z isFaceFull a method_9501 + p 0 shape + p 1 face + m (Ljava/util/function/Function;)Lcom/google/common/collect/ImmutableMap; getShapeForEachState a method_33615 + p 1 shapeGetter + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9544 b method_9544 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateFromNeighbourShapes b method_9510 + c With the provided block state, performs neighbor checks for all neighboring blocks to get an "adjusted" blockstate for placement in the world, if the current state is not valid. + p 0 currentState + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z canSupportRigidBlock c method_16361 + c @return whether the given position has a rigid top face + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_9587 c method_9587 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V dropResources c method_9497 + p 0 state + p 1 level + p 2 pos + m ()F getExplosionResistance e method_9520 + c @return how much this block resists an explosion + m ()Lnet/minecraft/network/chat/MutableComponent; getName f method_9518 + m ()Ljava/lang/String; getDescriptionId g method_9539 + c @return the description ID of this block, for use with language files. + m ()F getFriction h method_9499 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getId i method_9507 + p 0 state + m ()F getSpeedFactor j method_23349 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isExceptionForConnection j method_9581 + p 0 state + m ()F getJumpFactor k method_23350 + m (Lnet/minecraft/world/level/block/state/BlockState;)V registerDefaultState k method_9590 + p 1 state + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getStateDefinition l method_9595 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; withPropertiesOf l method_34725 + p 1 state + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultBlockState o method_9564 + c Gets the default state for this block + m ()Z hasDynamicShape p method_9543 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder s method_40142 + m ()Lit/unimi/dsi/fastutil/objects/Object2ByteLinkedOpenHashMap; method_9508 y method_9508 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/Block$1 dfy$1 net/minecraft/class_2248$1 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/lang/Boolean; load a method_20516 + p 1 shape + m ()V +c net/minecraft/world/level/block/Block$2 dfy$2 net/minecraft/class_2248$2 + m (IF)V +c net/minecraft/world/level/block/Block$BlockStatePairKey dfy$a net/minecraft/class_2248$class_2249 + f Lnet/minecraft/world/level/block/state/BlockState; first a field_10652 + f Lnet/minecraft/world/level/block/state/BlockState; second b field_10654 + f Lnet/minecraft/core/Direction; direction c field_10653 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)V + p 1 first + p 2 second + p 3 direction +c net/minecraft/world/level/block/BlockTypes dfz net/minecraft/class_8811 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46281 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_53979 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/block/Blocks dga net/minecraft/class_2246 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SAPLING A field_10276 + f Lnet/minecraft/world/level/block/Block; ACACIA_SAPLING B field_10385 + f Lnet/minecraft/world/level/block/Block; CHERRY_SAPLING C field_42727 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SAPLING D field_10160 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PROPAGULE E field_37544 + f Lnet/minecraft/world/level/block/Block; BEDROCK F field_9987 + f Lnet/minecraft/world/level/block/Block; WATER G field_10382 + f Lnet/minecraft/world/level/block/Block; LAVA H field_10164 + f Lnet/minecraft/world/level/block/Block; SAND I field_10102 + f Lnet/minecraft/world/level/block/Block; SUSPICIOUS_SAND J field_42728 + f Lnet/minecraft/world/level/block/Block; RED_SAND K field_10534 + f Lnet/minecraft/world/level/block/Block; GRAVEL L field_10255 + f Lnet/minecraft/world/level/block/Block; SUSPICIOUS_GRAVEL M field_43227 + f Lnet/minecraft/world/level/block/Block; GOLD_ORE N field_10571 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_GOLD_ORE O field_29026 + f Lnet/minecraft/world/level/block/Block; IRON_ORE P field_10212 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_IRON_ORE Q field_29027 + f Lnet/minecraft/world/level/block/Block; COAL_ORE R field_10418 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_COAL_ORE S field_29219 + f Lnet/minecraft/world/level/block/Block; NETHER_GOLD_ORE T field_23077 + f Lnet/minecraft/world/level/block/Block; OAK_LOG U field_10431 + f Lnet/minecraft/world/level/block/Block; SPRUCE_LOG V field_10037 + f Lnet/minecraft/world/level/block/Block; BIRCH_LOG W field_10511 + f Lnet/minecraft/world/level/block/Block; JUNGLE_LOG X field_10306 + f Lnet/minecraft/world/level/block/Block; ACACIA_LOG Y field_10533 + f Lnet/minecraft/world/level/block/Block; CHERRY_LOG Z field_42729 + f Lnet/minecraft/world/level/block/Block; STRIPPED_ACACIA_WOOD aA field_10103 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CHERRY_WOOD aB field_42730 + f Lnet/minecraft/world/level/block/Block; STRIPPED_DARK_OAK_WOOD aC field_10374 + f Lnet/minecraft/world/level/block/Block; STRIPPED_MANGROVE_WOOD aD field_37550 + f Lnet/minecraft/world/level/block/Block; OAK_LEAVES aE field_10503 + f Lnet/minecraft/world/level/block/Block; SPRUCE_LEAVES aF field_9988 + f Lnet/minecraft/world/level/block/Block; BIRCH_LEAVES aG field_10539 + f Lnet/minecraft/world/level/block/Block; JUNGLE_LEAVES aH field_10335 + f Lnet/minecraft/world/level/block/Block; ACACIA_LEAVES aI field_10098 + f Lnet/minecraft/world/level/block/Block; CHERRY_LEAVES aJ field_42731 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_LEAVES aK field_10035 + f Lnet/minecraft/world/level/block/Block; MANGROVE_LEAVES aL field_37551 + f Lnet/minecraft/world/level/block/Block; AIR a field_10124 + f Lnet/minecraft/world/level/block/Block; AZALEA_LEAVES aM field_28673 + f Lnet/minecraft/world/level/block/Block; FLOWERING_AZALEA_LEAVES aN field_28674 + f Lnet/minecraft/world/level/block/Block; SPONGE aO field_10258 + f Lnet/minecraft/world/level/block/Block; WET_SPONGE aP field_10562 + f Lnet/minecraft/world/level/block/Block; GLASS aQ field_10033 + f Lnet/minecraft/world/level/block/Block; LAPIS_ORE aR field_10090 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_LAPIS_ORE aS field_29028 + f Lnet/minecraft/world/level/block/Block; LAPIS_BLOCK aT field_10441 + f Lnet/minecraft/world/level/block/Block; DISPENSER aU field_10200 + f Lnet/minecraft/world/level/block/Block; SANDSTONE aV field_9979 + f Lnet/minecraft/world/level/block/Block; CHISELED_SANDSTONE aW field_10292 + f Lnet/minecraft/world/level/block/Block; CUT_SANDSTONE aX field_10361 + f Lnet/minecraft/world/level/block/Block; NOTE_BLOCK aY field_10179 + f Lnet/minecraft/world/level/block/Block; WHITE_BED aZ field_10120 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_LOG aa field_10010 + f Lnet/minecraft/world/level/block/Block; MANGROVE_LOG ab field_37545 + f Lnet/minecraft/world/level/block/Block; MANGROVE_ROOTS ac field_37546 + f Lnet/minecraft/world/level/block/Block; MUDDY_MANGROVE_ROOTS ad field_37547 + f Lnet/minecraft/world/level/block/Block; BAMBOO_BLOCK ae field_41072 + f Lnet/minecraft/world/level/block/Block; STRIPPED_SPRUCE_LOG af field_10436 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BIRCH_LOG ag field_10366 + f Lnet/minecraft/world/level/block/Block; STRIPPED_JUNGLE_LOG ah field_10254 + f Lnet/minecraft/world/level/block/Block; STRIPPED_ACACIA_LOG ai field_10622 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CHERRY_LOG aj field_42732 + f Lnet/minecraft/world/level/block/Block; STRIPPED_DARK_OAK_LOG ak field_10244 + f Lnet/minecraft/world/level/block/Block; STRIPPED_OAK_LOG al field_10519 + f Lnet/minecraft/world/level/block/Block; STRIPPED_MANGROVE_LOG am field_37548 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BAMBOO_BLOCK an field_41073 + f Lnet/minecraft/world/level/block/Block; OAK_WOOD ao field_10126 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WOOD ap field_10155 + f Lnet/minecraft/world/level/block/Block; BIRCH_WOOD aq field_10307 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WOOD ar field_10303 + f Lnet/minecraft/world/level/block/Block; ACACIA_WOOD as field_9999 + f Lnet/minecraft/world/level/block/Block; CHERRY_WOOD at field_42733 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WOOD au field_10178 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WOOD av field_37549 + f Lnet/minecraft/world/level/block/Block; STRIPPED_OAK_WOOD aw field_10250 + f Lnet/minecraft/world/level/block/Block; STRIPPED_SPRUCE_WOOD ax field_10558 + f Lnet/minecraft/world/level/block/Block; STRIPPED_BIRCH_WOOD ay field_10204 + f Lnet/minecraft/world/level/block/Block; STRIPPED_JUNGLE_WOOD az field_10084 + f Lnet/minecraft/world/level/block/Block; WHITE_WOOL bA field_10446 + f Lnet/minecraft/world/level/block/Block; ORANGE_WOOL bB field_10095 + f Lnet/minecraft/world/level/block/Block; MAGENTA_WOOL bC field_10215 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_WOOL bD field_10294 + f Lnet/minecraft/world/level/block/Block; YELLOW_WOOL bE field_10490 + f Lnet/minecraft/world/level/block/Block; LIME_WOOL bF field_10028 + f Lnet/minecraft/world/level/block/Block; PINK_WOOL bG field_10459 + f Lnet/minecraft/world/level/block/Block; GRAY_WOOL bH field_10423 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_WOOL bI field_10222 + f Lnet/minecraft/world/level/block/Block; CYAN_WOOL bJ field_10619 + f Lnet/minecraft/world/level/block/Block; PURPLE_WOOL bK field_10259 + f Lnet/minecraft/world/level/block/Block; BLUE_WOOL bL field_10514 + f Lnet/minecraft/world/level/block/Block; STONE b field_10340 + f Lnet/minecraft/world/level/block/Block; BROWN_WOOL bM field_10113 + f Lnet/minecraft/world/level/block/Block; GREEN_WOOL bN field_10170 + f Lnet/minecraft/world/level/block/Block; RED_WOOL bO field_10314 + f Lnet/minecraft/world/level/block/Block; BLACK_WOOL bP field_10146 + f Lnet/minecraft/world/level/block/Block; MOVING_PISTON bQ field_10008 + f Lnet/minecraft/world/level/block/Block; DANDELION bR field_10182 + f Lnet/minecraft/world/level/block/Block; TORCHFLOWER bS field_42734 + f Lnet/minecraft/world/level/block/Block; POPPY bT field_10449 + f Lnet/minecraft/world/level/block/Block; BLUE_ORCHID bU field_10086 + f Lnet/minecraft/world/level/block/Block; ALLIUM bV field_10226 + f Lnet/minecraft/world/level/block/Block; AZURE_BLUET bW field_10573 + f Lnet/minecraft/world/level/block/Block; RED_TULIP bX field_10270 + f Lnet/minecraft/world/level/block/Block; ORANGE_TULIP bY field_10048 + f Lnet/minecraft/world/level/block/Block; WHITE_TULIP bZ field_10156 + f Lnet/minecraft/world/level/block/Block; ORANGE_BED ba field_10410 + f Lnet/minecraft/world/level/block/Block; MAGENTA_BED bb field_10230 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_BED bc field_10621 + f Lnet/minecraft/world/level/block/Block; YELLOW_BED bd field_10356 + f Lnet/minecraft/world/level/block/Block; LIME_BED be field_10180 + f Lnet/minecraft/world/level/block/Block; PINK_BED bf field_10610 + f Lnet/minecraft/world/level/block/Block; GRAY_BED bg field_10141 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_BED bh field_10326 + f Lnet/minecraft/world/level/block/Block; CYAN_BED bi field_10109 + f Lnet/minecraft/world/level/block/Block; PURPLE_BED bj field_10019 + f Lnet/minecraft/world/level/block/Block; BLUE_BED bk field_10527 + f Lnet/minecraft/world/level/block/Block; BROWN_BED bl field_10288 + f Lnet/minecraft/world/level/block/Block; GREEN_BED bm field_10561 + f Lnet/minecraft/world/level/block/Block; RED_BED bn field_10069 + f Lnet/minecraft/world/level/block/Block; BLACK_BED bo field_10461 + f Lnet/minecraft/world/level/block/Block; POWERED_RAIL bp field_10425 + f Lnet/minecraft/world/level/block/Block; DETECTOR_RAIL bq field_10025 + f Lnet/minecraft/world/level/block/Block; STICKY_PISTON br field_10615 + f Lnet/minecraft/world/level/block/Block; COBWEB bs field_10343 + f Lnet/minecraft/world/level/block/Block; SHORT_GRASS bt field_10479 + f Lnet/minecraft/world/level/block/Block; FERN bu field_10112 + f Lnet/minecraft/world/level/block/Block; DEAD_BUSH bv field_10428 + f Lnet/minecraft/world/level/block/Block; SEAGRASS bw field_10376 + f Lnet/minecraft/world/level/block/Block; TALL_SEAGRASS bx field_10238 + f Lnet/minecraft/world/level/block/Block; PISTON by field_10560 + f Lnet/minecraft/world/level/block/Block; PISTON_HEAD bz field_10379 + f Lnet/minecraft/world/level/block/Block; CRAFTING_TABLE cA field_9980 + f Lnet/minecraft/world/level/block/Block; WHEAT cB field_10293 + f Lnet/minecraft/world/level/block/Block; FARMLAND cC field_10362 + f Lnet/minecraft/world/level/block/Block; FURNACE cD field_10181 + f Lnet/minecraft/world/level/block/Block; OAK_SIGN cE field_10121 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SIGN cF field_10411 + f Lnet/minecraft/world/level/block/Block; BIRCH_SIGN cG field_10231 + f Lnet/minecraft/world/level/block/Block; ACACIA_SIGN cH field_10284 + f Lnet/minecraft/world/level/block/Block; CHERRY_SIGN cI field_42735 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SIGN cJ field_10544 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SIGN cK field_10330 + f Lnet/minecraft/world/level/block/Block; MANGROVE_SIGN cL field_37554 + f Lnet/minecraft/world/level/block/Block; GRANITE c field_10474 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SIGN cM field_40277 + f Lnet/minecraft/world/level/block/Block; OAK_DOOR cN field_10149 + f Lnet/minecraft/world/level/block/Block; LADDER cO field_9983 + f Lnet/minecraft/world/level/block/Block; RAIL cP field_10167 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_STAIRS cQ field_10596 + f Lnet/minecraft/world/level/block/Block; OAK_WALL_SIGN cR field_10187 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WALL_SIGN cS field_10088 + f Lnet/minecraft/world/level/block/Block; BIRCH_WALL_SIGN cT field_10391 + f Lnet/minecraft/world/level/block/Block; ACACIA_WALL_SIGN cU field_10401 + f Lnet/minecraft/world/level/block/Block; CHERRY_WALL_SIGN cV field_42736 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WALL_SIGN cW field_10587 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WALL_SIGN cX field_10265 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WALL_SIGN cY field_37552 + f Lnet/minecraft/world/level/block/Block; BAMBOO_WALL_SIGN cZ field_40261 + f Lnet/minecraft/world/level/block/Block; PINK_TULIP ca field_10315 + f Lnet/minecraft/world/level/block/Block; OXEYE_DAISY cb field_10554 + f Lnet/minecraft/world/level/block/Block; CORNFLOWER cc field_9995 + f Lnet/minecraft/world/level/block/Block; WITHER_ROSE cd field_10606 + f Lnet/minecraft/world/level/block/Block; LILY_OF_THE_VALLEY ce field_10548 + f Lnet/minecraft/world/level/block/Block; BROWN_MUSHROOM cf field_10251 + f Lnet/minecraft/world/level/block/Block; RED_MUSHROOM cg field_10559 + f Lnet/minecraft/world/level/block/Block; GOLD_BLOCK ch field_10205 + f Lnet/minecraft/world/level/block/Block; IRON_BLOCK ci field_10085 + f Lnet/minecraft/world/level/block/Block; BRICKS cj field_10104 + f Lnet/minecraft/world/level/block/Block; TNT ck field_10375 + f Lnet/minecraft/world/level/block/Block; BOOKSHELF cl field_10504 + f Lnet/minecraft/world/level/block/Block; CHISELED_BOOKSHELF cm field_40276 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE cn field_9989 + f Lnet/minecraft/world/level/block/Block; OBSIDIAN co field_10540 + f Lnet/minecraft/world/level/block/Block; TORCH cp field_10336 + f Lnet/minecraft/world/level/block/Block; WALL_TORCH cq field_10099 + f Lnet/minecraft/world/level/block/Block; FIRE cr field_10036 + f Lnet/minecraft/world/level/block/Block; SOUL_FIRE cs field_22089 + f Lnet/minecraft/world/level/block/Block; SPAWNER ct field_10260 + f Lnet/minecraft/world/level/block/Block; OAK_STAIRS cu field_10563 + f Lnet/minecraft/world/level/block/Block; CHEST cv field_10034 + f Lnet/minecraft/world/level/block/Block; REDSTONE_WIRE cw field_10091 + f Lnet/minecraft/world/level/block/Block; DIAMOND_ORE cx field_10442 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_DIAMOND_ORE cy field_29029 + f Lnet/minecraft/world/level/block/Block; DIAMOND_BLOCK cz field_10201 + f Lnet/minecraft/world/level/block/Block; SPRUCE_PRESSURE_PLATE dA field_10332 + f Lnet/minecraft/world/level/block/Block; BIRCH_PRESSURE_PLATE dB field_10592 + f Lnet/minecraft/world/level/block/Block; JUNGLE_PRESSURE_PLATE dC field_10026 + f Lnet/minecraft/world/level/block/Block; ACACIA_PRESSURE_PLATE dD field_10397 + f Lnet/minecraft/world/level/block/Block; CHERRY_PRESSURE_PLATE dE field_42737 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_PRESSURE_PLATE dF field_10470 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PRESSURE_PLATE dG field_37553 + f Lnet/minecraft/world/level/block/Block; BAMBOO_PRESSURE_PLATE dH field_40284 + f Lnet/minecraft/world/level/block/Block; REDSTONE_ORE dI field_10080 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_REDSTONE_ORE dJ field_29030 + f Lnet/minecraft/world/level/block/Block; REDSTONE_TORCH dK field_10523 + f Lnet/minecraft/world/level/block/Block; REDSTONE_WALL_TORCH dL field_10301 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE d field_10289 + f Lnet/minecraft/world/level/block/Block; STONE_BUTTON dM field_10494 + f Lnet/minecraft/world/level/block/Block; SNOW dN field_10477 + f Lnet/minecraft/world/level/block/Block; ICE dO field_10295 + f Lnet/minecraft/world/level/block/Block; SNOW_BLOCK dP field_10491 + f Lnet/minecraft/world/level/block/Block; CACTUS dQ field_10029 + f Lnet/minecraft/world/level/block/Block; CLAY dR field_10460 + f Lnet/minecraft/world/level/block/Block; SUGAR_CANE dS field_10424 + f Lnet/minecraft/world/level/block/Block; JUKEBOX dT field_10223 + f Lnet/minecraft/world/level/block/Block; OAK_FENCE dU field_10620 + f Lnet/minecraft/world/level/block/Block; NETHERRACK dV field_10515 + f Lnet/minecraft/world/level/block/Block; SOUL_SAND dW field_10114 + f Lnet/minecraft/world/level/block/Block; SOUL_SOIL dX field_22090 + f Lnet/minecraft/world/level/block/Block; BASALT dY field_22091 + f Lnet/minecraft/world/level/block/Block; POLISHED_BASALT dZ field_23151 + f Lnet/minecraft/world/level/block/Block; OAK_HANGING_SIGN da field_40262 + f Lnet/minecraft/world/level/block/Block; SPRUCE_HANGING_SIGN db field_40263 + f Lnet/minecraft/world/level/block/Block; BIRCH_HANGING_SIGN dc field_40264 + f Lnet/minecraft/world/level/block/Block; ACACIA_HANGING_SIGN dd field_40265 + f Lnet/minecraft/world/level/block/Block; CHERRY_HANGING_SIGN de field_42738 + f Lnet/minecraft/world/level/block/Block; JUNGLE_HANGING_SIGN df field_40266 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_HANGING_SIGN dg field_40267 + f Lnet/minecraft/world/level/block/Block; CRIMSON_HANGING_SIGN dh field_40268 + f Lnet/minecraft/world/level/block/Block; WARPED_HANGING_SIGN di field_40269 + f Lnet/minecraft/world/level/block/Block; MANGROVE_HANGING_SIGN dj field_40270 + f Lnet/minecraft/world/level/block/Block; BAMBOO_HANGING_SIGN dk field_40271 + f Lnet/minecraft/world/level/block/Block; OAK_WALL_HANGING_SIGN dl field_40272 + f Lnet/minecraft/world/level/block/Block; SPRUCE_WALL_HANGING_SIGN dm field_40273 + f Lnet/minecraft/world/level/block/Block; BIRCH_WALL_HANGING_SIGN dn field_40274 + f Lnet/minecraft/world/level/block/Block; ACACIA_WALL_HANGING_SIGN do field_40275 + f Lnet/minecraft/world/level/block/Block; CHERRY_WALL_HANGING_SIGN dp field_42739 + f Lnet/minecraft/world/level/block/Block; JUNGLE_WALL_HANGING_SIGN dq field_40278 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_WALL_HANGING_SIGN dr field_40279 + f Lnet/minecraft/world/level/block/Block; MANGROVE_WALL_HANGING_SIGN ds field_40280 + f Lnet/minecraft/world/level/block/Block; CRIMSON_WALL_HANGING_SIGN dt field_40281 + f Lnet/minecraft/world/level/block/Block; WARPED_WALL_HANGING_SIGN du field_40282 + f Lnet/minecraft/world/level/block/Block; BAMBOO_WALL_HANGING_SIGN dv field_40283 + f Lnet/minecraft/world/level/block/Block; LEVER dw field_10363 + f Lnet/minecraft/world/level/block/Block; STONE_PRESSURE_PLATE dx field_10158 + f Lnet/minecraft/world/level/block/Block; IRON_DOOR dy field_9973 + f Lnet/minecraft/world/level/block/Block; OAK_PRESSURE_PLATE dz field_10484 + f Lnet/minecraft/world/level/block/Block; BIRCH_TRAPDOOR eA field_10486 + f Lnet/minecraft/world/level/block/Block; JUNGLE_TRAPDOOR eB field_10017 + f Lnet/minecraft/world/level/block/Block; ACACIA_TRAPDOOR eC field_10608 + f Lnet/minecraft/world/level/block/Block; CHERRY_TRAPDOOR eD field_42740 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_TRAPDOOR eE field_10246 + f Lnet/minecraft/world/level/block/Block; MANGROVE_TRAPDOOR eF field_37555 + f Lnet/minecraft/world/level/block/Block; BAMBOO_TRAPDOOR eG field_40285 + f Lnet/minecraft/world/level/block/Block; STONE_BRICKS eH field_10056 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICKS eI field_10065 + f Lnet/minecraft/world/level/block/Block; CRACKED_STONE_BRICKS eJ field_10416 + f Lnet/minecraft/world/level/block/Block; CHISELED_STONE_BRICKS eK field_10552 + f Lnet/minecraft/world/level/block/Block; PACKED_MUD eL field_37556 + f Lnet/minecraft/world/level/block/Block; DIORITE e field_10508 + f Lnet/minecraft/world/level/block/Block; MUD_BRICKS eM field_37557 + f Lnet/minecraft/world/level/block/Block; INFESTED_STONE eN field_10277 + f Lnet/minecraft/world/level/block/Block; INFESTED_COBBLESTONE eO field_10492 + f Lnet/minecraft/world/level/block/Block; INFESTED_STONE_BRICKS eP field_10387 + f Lnet/minecraft/world/level/block/Block; INFESTED_MOSSY_STONE_BRICKS eQ field_10480 + f Lnet/minecraft/world/level/block/Block; INFESTED_CRACKED_STONE_BRICKS eR field_10100 + f Lnet/minecraft/world/level/block/Block; INFESTED_CHISELED_STONE_BRICKS eS field_10176 + f Lnet/minecraft/world/level/block/Block; BROWN_MUSHROOM_BLOCK eT field_10580 + f Lnet/minecraft/world/level/block/Block; RED_MUSHROOM_BLOCK eU field_10240 + f Lnet/minecraft/world/level/block/Block; MUSHROOM_STEM eV field_10556 + f Lnet/minecraft/world/level/block/Block; IRON_BARS eW field_10576 + f Lnet/minecraft/world/level/block/Block; CHAIN eX field_23985 + f Lnet/minecraft/world/level/block/Block; GLASS_PANE eY field_10285 + f Lnet/minecraft/world/level/block/Block; PUMPKIN eZ field_46282 + f Lnet/minecraft/world/level/block/Block; SOUL_TORCH ea field_22092 + f Lnet/minecraft/world/level/block/Block; SOUL_WALL_TORCH eb field_22093 + f Lnet/minecraft/world/level/block/Block; GLOWSTONE ec field_10171 + f Lnet/minecraft/world/level/block/Block; NETHER_PORTAL ed field_10316 + f Lnet/minecraft/world/level/block/Block; CARVED_PUMPKIN ee field_10147 + f Lnet/minecraft/world/level/block/Block; JACK_O_LANTERN ef field_10009 + f Lnet/minecraft/world/level/block/Block; CAKE eg field_10183 + f Lnet/minecraft/world/level/block/Block; REPEATER eh field_10450 + f Lnet/minecraft/world/level/block/Block; WHITE_STAINED_GLASS ei field_10087 + f Lnet/minecraft/world/level/block/Block; ORANGE_STAINED_GLASS ej field_10227 + f Lnet/minecraft/world/level/block/Block; MAGENTA_STAINED_GLASS ek field_10574 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_STAINED_GLASS el field_10271 + f Lnet/minecraft/world/level/block/Block; YELLOW_STAINED_GLASS em field_10049 + f Lnet/minecraft/world/level/block/Block; LIME_STAINED_GLASS en field_10157 + f Lnet/minecraft/world/level/block/Block; PINK_STAINED_GLASS eo field_10317 + f Lnet/minecraft/world/level/block/Block; GRAY_STAINED_GLASS ep field_10555 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_STAINED_GLASS eq field_9996 + f Lnet/minecraft/world/level/block/Block; CYAN_STAINED_GLASS er field_10248 + f Lnet/minecraft/world/level/block/Block; PURPLE_STAINED_GLASS es field_10399 + f Lnet/minecraft/world/level/block/Block; BLUE_STAINED_GLASS et field_10060 + f Lnet/minecraft/world/level/block/Block; BROWN_STAINED_GLASS eu field_10073 + f Lnet/minecraft/world/level/block/Block; GREEN_STAINED_GLASS ev field_10357 + f Lnet/minecraft/world/level/block/Block; RED_STAINED_GLASS ew field_10272 + f Lnet/minecraft/world/level/block/Block; BLACK_STAINED_GLASS ex field_9997 + f Lnet/minecraft/world/level/block/Block; OAK_TRAPDOOR ey field_10137 + f Lnet/minecraft/world/level/block/Block; SPRUCE_TRAPDOOR ez field_10323 + f Lnet/minecraft/world/level/block/Block; DRAGON_EGG fA field_10081 + f Lnet/minecraft/world/level/block/Block; REDSTONE_LAMP fB field_10524 + f Lnet/minecraft/world/level/block/Block; COCOA fC field_10302 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_STAIRS fD field_10142 + f Lnet/minecraft/world/level/block/Block; EMERALD_ORE fE field_10013 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_EMERALD_ORE fF field_29220 + f Lnet/minecraft/world/level/block/Block; ENDER_CHEST fG field_10443 + f Lnet/minecraft/world/level/block/Block; TRIPWIRE_HOOK fH field_10348 + f Lnet/minecraft/world/level/block/Block; TRIPWIRE fI field_10589 + f Lnet/minecraft/world/level/block/Block; EMERALD_BLOCK fJ field_10234 + f Lnet/minecraft/world/level/block/Block; SPRUCE_STAIRS fK field_10569 + f Lnet/minecraft/world/level/block/Block; BIRCH_STAIRS fL field_10408 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE f field_10346 + f Lnet/minecraft/world/level/block/Block; JUNGLE_STAIRS fM field_10122 + f Lnet/minecraft/world/level/block/Block; COMMAND_BLOCK fN field_10525 + f Lnet/minecraft/world/level/block/Block; BEACON fO field_10327 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_WALL fP field_10625 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_WALL fQ field_9990 + f Lnet/minecraft/world/level/block/Block; FLOWER_POT fR field_10495 + f Lnet/minecraft/world/level/block/Block; POTTED_TORCHFLOWER fS field_42741 + f Lnet/minecraft/world/level/block/Block; POTTED_OAK_SAPLING fT field_10468 + f Lnet/minecraft/world/level/block/Block; POTTED_SPRUCE_SAPLING fU field_10192 + f Lnet/minecraft/world/level/block/Block; POTTED_BIRCH_SAPLING fV field_10577 + f Lnet/minecraft/world/level/block/Block; POTTED_JUNGLE_SAPLING fW field_10304 + f Lnet/minecraft/world/level/block/Block; POTTED_ACACIA_SAPLING fX field_10564 + f Lnet/minecraft/world/level/block/Block; POTTED_CHERRY_SAPLING fY field_42742 + f Lnet/minecraft/world/level/block/Block; POTTED_DARK_OAK_SAPLING fZ field_10076 + f Lnet/minecraft/world/level/block/Block; MELON fa field_46283 + f Lnet/minecraft/world/level/block/Block; ATTACHED_PUMPKIN_STEM fb field_46284 + f Lnet/minecraft/world/level/block/Block; ATTACHED_MELON_STEM fc field_46285 + f Lnet/minecraft/world/level/block/Block; PUMPKIN_STEM fd field_46286 + f Lnet/minecraft/world/level/block/Block; MELON_STEM fe field_46287 + f Lnet/minecraft/world/level/block/Block; VINE ff field_10597 + f Lnet/minecraft/world/level/block/Block; GLOW_LICHEN fg field_28411 + f Lnet/minecraft/world/level/block/Block; OAK_FENCE_GATE fh field_10188 + f Lnet/minecraft/world/level/block/Block; BRICK_STAIRS fi field_10089 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_STAIRS fj field_10392 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_STAIRS fk field_37558 + f Lnet/minecraft/world/level/block/Block; MYCELIUM fl field_10402 + f Lnet/minecraft/world/level/block/Block; LILY_PAD fm field_10588 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICKS fn field_10266 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_FENCE fo field_10364 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_STAIRS fp field_10159 + f Lnet/minecraft/world/level/block/Block; NETHER_WART fq field_9974 + f Lnet/minecraft/world/level/block/Block; ENCHANTING_TABLE fr field_10485 + f Lnet/minecraft/world/level/block/Block; BREWING_STAND fs field_10333 + f Lnet/minecraft/world/level/block/Block; CAULDRON ft field_10593 + f Lnet/minecraft/world/level/block/Block; WATER_CAULDRON fu field_27097 + f Lnet/minecraft/world/level/block/Block; LAVA_CAULDRON fv field_27098 + f Lnet/minecraft/world/level/block/Block; POWDER_SNOW_CAULDRON fw field_27878 + f Lnet/minecraft/world/level/block/Block; END_PORTAL fx field_10027 + f Lnet/minecraft/world/level/block/Block; END_PORTAL_FRAME fy field_10398 + f Lnet/minecraft/world/level/block/Block; END_STONE fz field_10471 + f Lnet/minecraft/world/level/block/Block; CHERRY_BUTTON gA field_42743 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_BUTTON gB field_10493 + f Lnet/minecraft/world/level/block/Block; MANGROVE_BUTTON gC field_37559 + f Lnet/minecraft/world/level/block/Block; BAMBOO_BUTTON gD field_40286 + f Lnet/minecraft/world/level/block/Block; SKELETON_SKULL gE field_10481 + f Lnet/minecraft/world/level/block/Block; SKELETON_WALL_SKULL gF field_10388 + f Lnet/minecraft/world/level/block/Block; WITHER_SKELETON_SKULL gG field_10177 + f Lnet/minecraft/world/level/block/Block; WITHER_SKELETON_WALL_SKULL gH field_10101 + f Lnet/minecraft/world/level/block/Block; ZOMBIE_HEAD gI field_10241 + f Lnet/minecraft/world/level/block/Block; ZOMBIE_WALL_HEAD gJ field_10581 + f Lnet/minecraft/world/level/block/Block; PLAYER_HEAD gK field_10432 + f Lnet/minecraft/world/level/block/Block; PLAYER_WALL_HEAD gL field_10208 + f Lnet/minecraft/world/level/block/Block; ANDESITE g field_10115 + f Lnet/minecraft/world/level/block/Block; CREEPER_HEAD gM field_10042 + f Lnet/minecraft/world/level/block/Block; CREEPER_WALL_HEAD gN field_10509 + f Lnet/minecraft/world/level/block/Block; DRAGON_HEAD gO field_10337 + f Lnet/minecraft/world/level/block/Block; DRAGON_WALL_HEAD gP field_10472 + f Lnet/minecraft/world/level/block/Block; PIGLIN_HEAD gQ field_41305 + f Lnet/minecraft/world/level/block/Block; PIGLIN_WALL_HEAD gR field_41306 + f Lnet/minecraft/world/level/block/Block; ANVIL gS field_10535 + f Lnet/minecraft/world/level/block/Block; CHIPPED_ANVIL gT field_10105 + f Lnet/minecraft/world/level/block/Block; DAMAGED_ANVIL gU field_10414 + f Lnet/minecraft/world/level/block/Block; TRAPPED_CHEST gV field_10380 + f Lnet/minecraft/world/level/block/Block; LIGHT_WEIGHTED_PRESSURE_PLATE gW field_10224 + f Lnet/minecraft/world/level/block/Block; HEAVY_WEIGHTED_PRESSURE_PLATE gX field_10582 + f Lnet/minecraft/world/level/block/Block; COMPARATOR gY field_10377 + f Lnet/minecraft/world/level/block/Block; DAYLIGHT_DETECTOR gZ field_10429 + f Lnet/minecraft/world/level/block/Block; POTTED_MANGROVE_PROPAGULE ga field_37560 + f Lnet/minecraft/world/level/block/Block; POTTED_FERN gb field_10128 + f Lnet/minecraft/world/level/block/Block; POTTED_DANDELION gc field_10354 + f Lnet/minecraft/world/level/block/Block; POTTED_POPPY gd field_10151 + f Lnet/minecraft/world/level/block/Block; POTTED_BLUE_ORCHID ge field_9981 + f Lnet/minecraft/world/level/block/Block; POTTED_ALLIUM gf field_10162 + f Lnet/minecraft/world/level/block/Block; POTTED_AZURE_BLUET gg field_10365 + f Lnet/minecraft/world/level/block/Block; POTTED_RED_TULIP gh field_10598 + f Lnet/minecraft/world/level/block/Block; POTTED_ORANGE_TULIP gi field_10249 + f Lnet/minecraft/world/level/block/Block; POTTED_WHITE_TULIP gj field_10400 + f Lnet/minecraft/world/level/block/Block; POTTED_PINK_TULIP gk field_10061 + f Lnet/minecraft/world/level/block/Block; POTTED_OXEYE_DAISY gl field_10074 + f Lnet/minecraft/world/level/block/Block; POTTED_CORNFLOWER gm field_10358 + f Lnet/minecraft/world/level/block/Block; POTTED_LILY_OF_THE_VALLEY gn field_10273 + f Lnet/minecraft/world/level/block/Block; POTTED_WITHER_ROSE go field_9998 + f Lnet/minecraft/world/level/block/Block; POTTED_RED_MUSHROOM gp field_10138 + f Lnet/minecraft/world/level/block/Block; POTTED_BROWN_MUSHROOM gq field_10324 + f Lnet/minecraft/world/level/block/Block; POTTED_DEAD_BUSH gr field_10487 + f Lnet/minecraft/world/level/block/Block; POTTED_CACTUS gs field_10018 + f Lnet/minecraft/world/level/block/Block; CARROTS gt field_10609 + f Lnet/minecraft/world/level/block/Block; POTATOES gu field_10247 + f Lnet/minecraft/world/level/block/Block; OAK_BUTTON gv field_10057 + f Lnet/minecraft/world/level/block/Block; SPRUCE_BUTTON gw field_10066 + f Lnet/minecraft/world/level/block/Block; BIRCH_BUTTON gx field_10417 + f Lnet/minecraft/world/level/block/Block; JUNGLE_BUTTON gy field_10553 + f Lnet/minecraft/world/level/block/Block; ACACIA_BUTTON gz field_10278 + f Lnet/minecraft/world/level/block/Block; ORANGE_STAINED_GLASS_PANE hA field_10496 + f Lnet/minecraft/world/level/block/Block; MAGENTA_STAINED_GLASS_PANE hB field_10469 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_STAINED_GLASS_PANE hC field_10193 + f Lnet/minecraft/world/level/block/Block; YELLOW_STAINED_GLASS_PANE hD field_10578 + f Lnet/minecraft/world/level/block/Block; LIME_STAINED_GLASS_PANE hE field_10305 + f Lnet/minecraft/world/level/block/Block; PINK_STAINED_GLASS_PANE hF field_10565 + f Lnet/minecraft/world/level/block/Block; GRAY_STAINED_GLASS_PANE hG field_10077 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_STAINED_GLASS_PANE hH field_10129 + f Lnet/minecraft/world/level/block/Block; CYAN_STAINED_GLASS_PANE hI field_10355 + f Lnet/minecraft/world/level/block/Block; PURPLE_STAINED_GLASS_PANE hJ field_10152 + f Lnet/minecraft/world/level/block/Block; BLUE_STAINED_GLASS_PANE hK field_9982 + f Lnet/minecraft/world/level/block/Block; BROWN_STAINED_GLASS_PANE hL field_10163 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE h field_10093 + f Lnet/minecraft/world/level/block/Block; GREEN_STAINED_GLASS_PANE hM field_10419 + f Lnet/minecraft/world/level/block/Block; RED_STAINED_GLASS_PANE hN field_10118 + f Lnet/minecraft/world/level/block/Block; BLACK_STAINED_GLASS_PANE hO field_10070 + f Lnet/minecraft/world/level/block/Block; ACACIA_STAIRS hP field_10256 + f Lnet/minecraft/world/level/block/Block; CHERRY_STAIRS hQ field_42744 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_STAIRS hR field_10616 + f Lnet/minecraft/world/level/block/Block; MANGROVE_STAIRS hS field_37561 + f Lnet/minecraft/world/level/block/Block; BAMBOO_STAIRS hT field_40287 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC_STAIRS hU field_40288 + f Lnet/minecraft/world/level/block/Block; SLIME_BLOCK hV field_10030 + f Lnet/minecraft/world/level/block/Block; BARRIER hW field_10499 + f Lnet/minecraft/world/level/block/Block; LIGHT hX field_31037 + f Lnet/minecraft/world/level/block/Block; IRON_TRAPDOOR hY field_10453 + f Lnet/minecraft/world/level/block/Block; PRISMARINE hZ field_10135 + f Lnet/minecraft/world/level/block/Block; REDSTONE_BLOCK ha field_10002 + f Lnet/minecraft/world/level/block/Block; NETHER_QUARTZ_ORE hb field_10213 + f Lnet/minecraft/world/level/block/Block; HOPPER hc field_10312 + f Lnet/minecraft/world/level/block/Block; QUARTZ_BLOCK hd field_10153 + f Lnet/minecraft/world/level/block/Block; CHISELED_QUARTZ_BLOCK he field_10044 + f Lnet/minecraft/world/level/block/Block; QUARTZ_PILLAR hf field_10437 + f Lnet/minecraft/world/level/block/Block; QUARTZ_STAIRS hg field_10451 + f Lnet/minecraft/world/level/block/Block; ACTIVATOR_RAIL hh field_10546 + f Lnet/minecraft/world/level/block/Block; DROPPER hi field_10228 + f Lnet/minecraft/world/level/block/Block; WHITE_TERRACOTTA hj field_10611 + f Lnet/minecraft/world/level/block/Block; ORANGE_TERRACOTTA hk field_10184 + f Lnet/minecraft/world/level/block/Block; MAGENTA_TERRACOTTA hl field_10015 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_TERRACOTTA hm field_10325 + f Lnet/minecraft/world/level/block/Block; YELLOW_TERRACOTTA hn field_10143 + f Lnet/minecraft/world/level/block/Block; LIME_TERRACOTTA ho field_10014 + f Lnet/minecraft/world/level/block/Block; PINK_TERRACOTTA hp field_10444 + f Lnet/minecraft/world/level/block/Block; GRAY_TERRACOTTA hq field_10349 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_TERRACOTTA hr field_10590 + f Lnet/minecraft/world/level/block/Block; CYAN_TERRACOTTA hs field_10235 + f Lnet/minecraft/world/level/block/Block; PURPLE_TERRACOTTA ht field_10570 + f Lnet/minecraft/world/level/block/Block; BLUE_TERRACOTTA hu field_10409 + f Lnet/minecraft/world/level/block/Block; BROWN_TERRACOTTA hv field_10123 + f Lnet/minecraft/world/level/block/Block; GREEN_TERRACOTTA hw field_10526 + f Lnet/minecraft/world/level/block/Block; RED_TERRACOTTA hx field_10328 + f Lnet/minecraft/world/level/block/Block; BLACK_TERRACOTTA hy field_10626 + f Lnet/minecraft/world/level/block/Block; WHITE_STAINED_GLASS_PANE hz field_9991 + f Lnet/minecraft/world/level/block/Block; TERRACOTTA iA field_10415 + f Lnet/minecraft/world/level/block/Block; COAL_BLOCK iB field_10381 + f Lnet/minecraft/world/level/block/Block; PACKED_ICE iC field_10225 + f Lnet/minecraft/world/level/block/Block; SUNFLOWER iD field_10583 + f Lnet/minecraft/world/level/block/Block; LILAC iE field_10378 + f Lnet/minecraft/world/level/block/Block; ROSE_BUSH iF field_10430 + f Lnet/minecraft/world/level/block/Block; PEONY iG field_10003 + f Lnet/minecraft/world/level/block/Block; TALL_GRASS iH field_10214 + f Lnet/minecraft/world/level/block/Block; LARGE_FERN iI field_10313 + f Lnet/minecraft/world/level/block/Block; WHITE_BANNER iJ field_10154 + f Lnet/minecraft/world/level/block/Block; ORANGE_BANNER iK field_10045 + f Lnet/minecraft/world/level/block/Block; MAGENTA_BANNER iL field_10438 + f Lnet/minecraft/world/level/block/Block; GRASS_BLOCK i field_10219 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_BANNER iM field_10452 + f Lnet/minecraft/world/level/block/Block; YELLOW_BANNER iN field_10547 + f Lnet/minecraft/world/level/block/Block; LIME_BANNER iO field_10229 + f Lnet/minecraft/world/level/block/Block; PINK_BANNER iP field_10612 + f Lnet/minecraft/world/level/block/Block; GRAY_BANNER iQ field_10185 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_BANNER iR field_9985 + f Lnet/minecraft/world/level/block/Block; CYAN_BANNER iS field_10165 + f Lnet/minecraft/world/level/block/Block; PURPLE_BANNER iT field_10368 + f Lnet/minecraft/world/level/block/Block; BLUE_BANNER iU field_10281 + f Lnet/minecraft/world/level/block/Block; BROWN_BANNER iV field_10602 + f Lnet/minecraft/world/level/block/Block; GREEN_BANNER iW field_10198 + f Lnet/minecraft/world/level/block/Block; RED_BANNER iX field_10406 + f Lnet/minecraft/world/level/block/Block; BLACK_BANNER iY field_10062 + f Lnet/minecraft/world/level/block/Block; WHITE_WALL_BANNER iZ field_10202 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICKS ia field_10006 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE ib field_10297 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_STAIRS ic field_10350 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICK_STAIRS id field_10190 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE_STAIRS ie field_10130 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_SLAB if field_10389 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_BRICK_SLAB ig field_10236 + f Lnet/minecraft/world/level/block/Block; DARK_PRISMARINE_SLAB ih field_10623 + f Lnet/minecraft/world/level/block/Block; SEA_LANTERN ii field_10174 + f Lnet/minecraft/world/level/block/Block; HAY_BLOCK ij field_10359 + f Lnet/minecraft/world/level/block/Block; WHITE_CARPET ik field_10466 + f Lnet/minecraft/world/level/block/Block; ORANGE_CARPET il field_9977 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CARPET im field_10482 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CARPET in field_10290 + f Lnet/minecraft/world/level/block/Block; YELLOW_CARPET io field_10512 + f Lnet/minecraft/world/level/block/Block; LIME_CARPET ip field_10040 + f Lnet/minecraft/world/level/block/Block; PINK_CARPET iq field_10393 + f Lnet/minecraft/world/level/block/Block; GRAY_CARPET ir field_10591 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CARPET is field_10209 + f Lnet/minecraft/world/level/block/Block; CYAN_CARPET it field_10433 + f Lnet/minecraft/world/level/block/Block; PURPLE_CARPET iu field_10510 + f Lnet/minecraft/world/level/block/Block; BLUE_CARPET iv field_10043 + f Lnet/minecraft/world/level/block/Block; BROWN_CARPET iw field_10473 + f Lnet/minecraft/world/level/block/Block; GREEN_CARPET ix field_10338 + f Lnet/minecraft/world/level/block/Block; RED_CARPET iy field_10536 + f Lnet/minecraft/world/level/block/Block; BLACK_CARPET iz field_10106 + f Lnet/minecraft/world/level/block/Block; MANGROVE_SLAB jA field_37564 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SLAB jB field_40292 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC_SLAB jC field_40293 + f Lnet/minecraft/world/level/block/Block; STONE_SLAB jD field_10454 + f Lnet/minecraft/world/level/block/Block; SMOOTH_STONE_SLAB jE field_10136 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_SLAB jF field_10007 + f Lnet/minecraft/world/level/block/Block; CUT_SANDSTONE_SLAB jG field_18890 + f Lnet/minecraft/world/level/block/Block; PETRIFIED_OAK_SLAB jH field_10298 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE_SLAB jI field_10351 + f Lnet/minecraft/world/level/block/Block; BRICK_SLAB jJ field_10191 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_SLAB jK field_10131 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_SLAB jL field_37562 + f Lnet/minecraft/world/level/block/Block; DIRT j field_10566 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_SLAB jM field_10390 + f Lnet/minecraft/world/level/block/Block; QUARTZ_SLAB jN field_10237 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_SLAB jO field_10624 + f Lnet/minecraft/world/level/block/Block; CUT_RED_SANDSTONE_SLAB jP field_18891 + f Lnet/minecraft/world/level/block/Block; PURPUR_SLAB jQ field_10175 + f Lnet/minecraft/world/level/block/Block; SMOOTH_STONE jR field_10360 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE jS field_10467 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ jT field_9978 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE jU field_10483 + f Lnet/minecraft/world/level/block/Block; SPRUCE_FENCE_GATE jV field_10291 + f Lnet/minecraft/world/level/block/Block; BIRCH_FENCE_GATE jW field_10513 + f Lnet/minecraft/world/level/block/Block; JUNGLE_FENCE_GATE jX field_10041 + f Lnet/minecraft/world/level/block/Block; ACACIA_FENCE_GATE jY field_10457 + f Lnet/minecraft/world/level/block/Block; CHERRY_FENCE_GATE jZ field_42745 + f Lnet/minecraft/world/level/block/Block; ORANGE_WALL_BANNER ja field_10599 + f Lnet/minecraft/world/level/block/Block; MAGENTA_WALL_BANNER jb field_10274 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_WALL_BANNER jc field_10050 + f Lnet/minecraft/world/level/block/Block; YELLOW_WALL_BANNER jd field_10139 + f Lnet/minecraft/world/level/block/Block; LIME_WALL_BANNER je field_10318 + f Lnet/minecraft/world/level/block/Block; PINK_WALL_BANNER jf field_10531 + f Lnet/minecraft/world/level/block/Block; GRAY_WALL_BANNER jg field_10267 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_WALL_BANNER jh field_10604 + f Lnet/minecraft/world/level/block/Block; CYAN_WALL_BANNER ji field_10372 + f Lnet/minecraft/world/level/block/Block; PURPLE_WALL_BANNER jj field_10054 + f Lnet/minecraft/world/level/block/Block; BLUE_WALL_BANNER jk field_10067 + f Lnet/minecraft/world/level/block/Block; BROWN_WALL_BANNER jl field_10370 + f Lnet/minecraft/world/level/block/Block; GREEN_WALL_BANNER jm field_10594 + f Lnet/minecraft/world/level/block/Block; RED_WALL_BANNER jn field_10279 + f Lnet/minecraft/world/level/block/Block; BLACK_WALL_BANNER jo field_10537 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE jp field_10344 + f Lnet/minecraft/world/level/block/Block; CHISELED_RED_SANDSTONE jq field_10117 + f Lnet/minecraft/world/level/block/Block; CUT_RED_SANDSTONE jr field_10518 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_STAIRS js field_10420 + f Lnet/minecraft/world/level/block/Block; OAK_SLAB jt field_10119 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SLAB ju field_10071 + f Lnet/minecraft/world/level/block/Block; BIRCH_SLAB jv field_10257 + f Lnet/minecraft/world/level/block/Block; JUNGLE_SLAB jw field_10617 + f Lnet/minecraft/world/level/block/Block; ACACIA_SLAB jx field_10031 + f Lnet/minecraft/world/level/block/Block; CHERRY_SLAB jy field_42746 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_SLAB jz field_10500 + f Lnet/minecraft/world/level/block/Block; TORCHFLOWER_CROP kA field_42749 + f Lnet/minecraft/world/level/block/Block; PITCHER_CROP kB field_43228 + f Lnet/minecraft/world/level/block/Block; PITCHER_PLANT kC field_43229 + f Lnet/minecraft/world/level/block/Block; BEETROOTS kD field_10341 + f Lnet/minecraft/world/level/block/Block; DIRT_PATH kE field_10194 + f Lnet/minecraft/world/level/block/Block; END_GATEWAY kF field_10613 + f Lnet/minecraft/world/level/block/Block; REPEATING_COMMAND_BLOCK kG field_10263 + f Lnet/minecraft/world/level/block/Block; CHAIN_COMMAND_BLOCK kH field_10395 + f Lnet/minecraft/world/level/block/Block; FROSTED_ICE kI field_10110 + f Lnet/minecraft/world/level/block/Block; MAGMA_BLOCK kJ field_10092 + f Lnet/minecraft/world/level/block/Block; NETHER_WART_BLOCK kK field_10541 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICKS kL field_9986 + f Lnet/minecraft/world/level/block/Block; COARSE_DIRT k field_10253 + f Lnet/minecraft/world/level/block/Block; BONE_BLOCK kM field_10166 + f Lnet/minecraft/world/level/block/Block; STRUCTURE_VOID kN field_10369 + f Lnet/minecraft/world/level/block/Block; OBSERVER kO field_10282 + f Lnet/minecraft/world/level/block/Block; SHULKER_BOX kP field_10603 + f Lnet/minecraft/world/level/block/Block; WHITE_SHULKER_BOX kQ field_10199 + f Lnet/minecraft/world/level/block/Block; ORANGE_SHULKER_BOX kR field_10407 + f Lnet/minecraft/world/level/block/Block; MAGENTA_SHULKER_BOX kS field_10063 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_SHULKER_BOX kT field_10203 + f Lnet/minecraft/world/level/block/Block; YELLOW_SHULKER_BOX kU field_10600 + f Lnet/minecraft/world/level/block/Block; LIME_SHULKER_BOX kV field_10275 + f Lnet/minecraft/world/level/block/Block; PINK_SHULKER_BOX kW field_10051 + f Lnet/minecraft/world/level/block/Block; GRAY_SHULKER_BOX kX field_10140 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_SHULKER_BOX kY field_10320 + f Lnet/minecraft/world/level/block/Block; CYAN_SHULKER_BOX kZ field_10532 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_FENCE_GATE ka field_10196 + f Lnet/minecraft/world/level/block/Block; MANGROVE_FENCE_GATE kb field_37563 + f Lnet/minecraft/world/level/block/Block; BAMBOO_FENCE_GATE kc field_40289 + f Lnet/minecraft/world/level/block/Block; SPRUCE_FENCE kd field_10020 + f Lnet/minecraft/world/level/block/Block; BIRCH_FENCE ke field_10299 + f Lnet/minecraft/world/level/block/Block; JUNGLE_FENCE kf field_10319 + f Lnet/minecraft/world/level/block/Block; ACACIA_FENCE kg field_10144 + f Lnet/minecraft/world/level/block/Block; CHERRY_FENCE kh field_42747 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_FENCE ki field_10132 + f Lnet/minecraft/world/level/block/Block; MANGROVE_FENCE kj field_37565 + f Lnet/minecraft/world/level/block/Block; BAMBOO_FENCE kk field_40290 + f Lnet/minecraft/world/level/block/Block; SPRUCE_DOOR kl field_10521 + f Lnet/minecraft/world/level/block/Block; BIRCH_DOOR km field_10352 + f Lnet/minecraft/world/level/block/Block; JUNGLE_DOOR kn field_10627 + f Lnet/minecraft/world/level/block/Block; ACACIA_DOOR ko field_10232 + f Lnet/minecraft/world/level/block/Block; CHERRY_DOOR kp field_42748 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_DOOR kq field_10403 + f Lnet/minecraft/world/level/block/Block; MANGROVE_DOOR kr field_37566 + f Lnet/minecraft/world/level/block/Block; BAMBOO_DOOR ks field_40291 + f Lnet/minecraft/world/level/block/Block; END_ROD kt field_10455 + f Lnet/minecraft/world/level/block/Block; CHORUS_PLANT ku field_10021 + f Lnet/minecraft/world/level/block/Block; CHORUS_FLOWER kv field_10528 + f Lnet/minecraft/world/level/block/Block; PURPUR_BLOCK kw field_10286 + f Lnet/minecraft/world/level/block/Block; PURPUR_PILLAR kx field_10505 + f Lnet/minecraft/world/level/block/Block; PURPUR_STAIRS ky field_9992 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICKS kz field_10462 + f Lnet/minecraft/world/level/block/Block; YELLOW_CONCRETE lA field_10542 + f Lnet/minecraft/world/level/block/Block; LIME_CONCRETE lB field_10421 + f Lnet/minecraft/world/level/block/Block; PINK_CONCRETE lC field_10434 + f Lnet/minecraft/world/level/block/Block; GRAY_CONCRETE lD field_10038 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CONCRETE lE field_10172 + f Lnet/minecraft/world/level/block/Block; CYAN_CONCRETE lF field_10308 + f Lnet/minecraft/world/level/block/Block; PURPLE_CONCRETE lG field_10206 + f Lnet/minecraft/world/level/block/Block; BLUE_CONCRETE lH field_10011 + f Lnet/minecraft/world/level/block/Block; BROWN_CONCRETE lI field_10439 + f Lnet/minecraft/world/level/block/Block; GREEN_CONCRETE lJ field_10367 + f Lnet/minecraft/world/level/block/Block; RED_CONCRETE lK field_10058 + f Lnet/minecraft/world/level/block/Block; BLACK_CONCRETE lL field_10458 + f Lnet/minecraft/world/level/block/Block; PODZOL l field_10520 + f Lnet/minecraft/world/level/block/Block; WHITE_CONCRETE_POWDER lM field_10197 + f Lnet/minecraft/world/level/block/Block; ORANGE_CONCRETE_POWDER lN field_10022 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CONCRETE_POWDER lO field_10300 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CONCRETE_POWDER lP field_10321 + f Lnet/minecraft/world/level/block/Block; YELLOW_CONCRETE_POWDER lQ field_10145 + f Lnet/minecraft/world/level/block/Block; LIME_CONCRETE_POWDER lR field_10133 + f Lnet/minecraft/world/level/block/Block; PINK_CONCRETE_POWDER lS field_10522 + f Lnet/minecraft/world/level/block/Block; GRAY_CONCRETE_POWDER lT field_10353 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CONCRETE_POWDER lU field_10628 + f Lnet/minecraft/world/level/block/Block; CYAN_CONCRETE_POWDER lV field_10233 + f Lnet/minecraft/world/level/block/Block; PURPLE_CONCRETE_POWDER lW field_10404 + f Lnet/minecraft/world/level/block/Block; BLUE_CONCRETE_POWDER lX field_10456 + f Lnet/minecraft/world/level/block/Block; BROWN_CONCRETE_POWDER lY field_10023 + f Lnet/minecraft/world/level/block/Block; GREEN_CONCRETE_POWDER lZ field_10529 + f Lnet/minecraft/world/level/block/Block; PURPLE_SHULKER_BOX la field_10268 + f Lnet/minecraft/world/level/block/Block; BLUE_SHULKER_BOX lb field_10605 + f Lnet/minecraft/world/level/block/Block; BROWN_SHULKER_BOX lc field_10373 + f Lnet/minecraft/world/level/block/Block; GREEN_SHULKER_BOX ld field_10055 + f Lnet/minecraft/world/level/block/Block; RED_SHULKER_BOX le field_10068 + f Lnet/minecraft/world/level/block/Block; BLACK_SHULKER_BOX lf field_10371 + f Lnet/minecraft/world/level/block/Block; WHITE_GLAZED_TERRACOTTA lg field_10595 + f Lnet/minecraft/world/level/block/Block; ORANGE_GLAZED_TERRACOTTA lh field_10280 + f Lnet/minecraft/world/level/block/Block; MAGENTA_GLAZED_TERRACOTTA li field_10538 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_GLAZED_TERRACOTTA lj field_10345 + f Lnet/minecraft/world/level/block/Block; YELLOW_GLAZED_TERRACOTTA lk field_10096 + f Lnet/minecraft/world/level/block/Block; LIME_GLAZED_TERRACOTTA ll field_10046 + f Lnet/minecraft/world/level/block/Block; PINK_GLAZED_TERRACOTTA lm field_10567 + f Lnet/minecraft/world/level/block/Block; GRAY_GLAZED_TERRACOTTA ln field_10220 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_GLAZED_TERRACOTTA lo field_10052 + f Lnet/minecraft/world/level/block/Block; CYAN_GLAZED_TERRACOTTA lp field_10078 + f Lnet/minecraft/world/level/block/Block; PURPLE_GLAZED_TERRACOTTA lq field_10426 + f Lnet/minecraft/world/level/block/Block; BLUE_GLAZED_TERRACOTTA lr field_10550 + f Lnet/minecraft/world/level/block/Block; BROWN_GLAZED_TERRACOTTA ls field_10004 + f Lnet/minecraft/world/level/block/Block; GREEN_GLAZED_TERRACOTTA lt field_10475 + f Lnet/minecraft/world/level/block/Block; RED_GLAZED_TERRACOTTA lu field_10383 + f Lnet/minecraft/world/level/block/Block; BLACK_GLAZED_TERRACOTTA lv field_10501 + f Lnet/minecraft/world/level/block/Block; WHITE_CONCRETE lw field_10107 + f Lnet/minecraft/world/level/block/Block; ORANGE_CONCRETE lx field_10210 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CONCRETE ly field_10585 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CONCRETE lz field_10242 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL mA field_10169 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_FAN mB field_10448 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_FAN mC field_10097 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_FAN mD field_10047 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_FAN mE field_10568 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_FAN mF field_10221 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_FAN mG field_10053 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_FAN mH field_10079 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_FAN mI field_10427 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_FAN mJ field_10551 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_FAN mK field_10005 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_WALL_FAN mL field_10347 + f Lnet/minecraft/world/level/block/Block; COBBLESTONE m field_10445 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_WALL_FAN mM field_10116 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_WALL_FAN mN field_10094 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_WALL_FAN mO field_10557 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_WALL_FAN mP field_10239 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_WALL_FAN mQ field_10584 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_WALL_FAN mR field_10186 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_WALL_FAN mS field_10447 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_WALL_FAN mT field_10498 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_WALL_FAN mU field_9976 + f Lnet/minecraft/world/level/block/Block; SEA_PICKLE mV field_10476 + f Lnet/minecraft/world/level/block/Block; BLUE_ICE mW field_10384 + f Lnet/minecraft/world/level/block/Block; CONDUIT mX field_10502 + f Lnet/minecraft/world/level/block/Block; BAMBOO_SAPLING mY field_10108 + f Lnet/minecraft/world/level/block/Block; BAMBOO mZ field_10211 + f Lnet/minecraft/world/level/block/Block; RED_CONCRETE_POWDER ma field_10287 + f Lnet/minecraft/world/level/block/Block; BLACK_CONCRETE_POWDER mb field_10506 + f Lnet/minecraft/world/level/block/Block; KELP mc field_9993 + f Lnet/minecraft/world/level/block/Block; KELP_PLANT md field_10463 + f Lnet/minecraft/world/level/block/Block; DRIED_KELP_BLOCK me field_10342 + f Lnet/minecraft/world/level/block/Block; TURTLE_EGG mf field_10195 + f Lnet/minecraft/world/level/block/Block; SNIFFER_EGG mg field_43230 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL_BLOCK mh field_10614 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL_BLOCK mi field_10264 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL_BLOCK mj field_10396 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL_BLOCK mk field_10111 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL_BLOCK ml field_10488 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL_BLOCK mm field_10309 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL_BLOCK mn field_10629 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL_BLOCK mo field_10000 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL_BLOCK mp field_10516 + f Lnet/minecraft/world/level/block/Block; HORN_CORAL_BLOCK mq field_10464 + f Lnet/minecraft/world/level/block/Block; DEAD_TUBE_CORAL mr field_10082 + f Lnet/minecraft/world/level/block/Block; DEAD_BRAIN_CORAL ms field_10572 + f Lnet/minecraft/world/level/block/Block; DEAD_BUBBLE_CORAL mt field_10296 + f Lnet/minecraft/world/level/block/Block; DEAD_FIRE_CORAL mu field_10579 + f Lnet/minecraft/world/level/block/Block; DEAD_HORN_CORAL mv field_10032 + f Lnet/minecraft/world/level/block/Block; TUBE_CORAL mw field_10125 + f Lnet/minecraft/world/level/block/Block; BRAIN_CORAL mx field_10339 + f Lnet/minecraft/world/level/block/Block; BUBBLE_CORAL my field_10134 + f Lnet/minecraft/world/level/block/Block; FIRE_CORAL mz field_10618 + f Lnet/minecraft/world/level/block/Block; GRANITE_SLAB nA field_10189 + f Lnet/minecraft/world/level/block/Block; ANDESITE_SLAB nB field_10016 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_SLAB nC field_10478 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE_SLAB nD field_10322 + f Lnet/minecraft/world/level/block/Block; DIORITE_SLAB nE field_10507 + f Lnet/minecraft/world/level/block/Block; BRICK_WALL nF field_10269 + f Lnet/minecraft/world/level/block/Block; PRISMARINE_WALL nG field_10530 + f Lnet/minecraft/world/level/block/Block; RED_SANDSTONE_WALL nH field_10413 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_WALL nI field_10059 + f Lnet/minecraft/world/level/block/Block; GRANITE_WALL nJ field_10072 + f Lnet/minecraft/world/level/block/Block; STONE_BRICK_WALL nK field_10252 + f Lnet/minecraft/world/level/block/Block; MUD_BRICK_WALL nL field_37567 + f Lnet/minecraft/world/level/block/Block; OAK_PLANKS n field_10161 + f Lnet/minecraft/world/level/block/Block; NETHER_BRICK_WALL nM field_10127 + f Lnet/minecraft/world/level/block/Block; ANDESITE_WALL nN field_10489 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_WALL nO field_10311 + f Lnet/minecraft/world/level/block/Block; SANDSTONE_WALL nP field_10630 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_WALL nQ field_10001 + f Lnet/minecraft/world/level/block/Block; DIORITE_WALL nR field_10517 + f Lnet/minecraft/world/level/block/Block; SCAFFOLDING nS field_16492 + f Lnet/minecraft/world/level/block/Block; LOOM nT field_10083 + f Lnet/minecraft/world/level/block/Block; BARREL nU field_16328 + f Lnet/minecraft/world/level/block/Block; SMOKER nV field_16334 + f Lnet/minecraft/world/level/block/Block; BLAST_FURNACE nW field_16333 + f Lnet/minecraft/world/level/block/Block; CARTOGRAPHY_TABLE nX field_16336 + f Lnet/minecraft/world/level/block/Block; FLETCHING_TABLE nY field_16331 + f Lnet/minecraft/world/level/block/Block; GRINDSTONE nZ field_16337 + f Lnet/minecraft/world/level/block/Block; POTTED_BAMBOO na field_10586 + f Lnet/minecraft/world/level/block/Block; VOID_AIR nb field_10243 + f Lnet/minecraft/world/level/block/Block; CAVE_AIR nc field_10543 + f Lnet/minecraft/world/level/block/Block; BUBBLE_COLUMN nd field_10422 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE_STAIRS ne field_10435 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE_STAIRS nf field_10039 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_STAIRS ng field_10173 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE_STAIRS nh field_10310 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_STAIRS ni field_10207 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_STAIRS nj field_10012 + f Lnet/minecraft/world/level/block/Block; STONE_STAIRS nk field_10440 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE_STAIRS nl field_10549 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ_STAIRS nm field_10245 + f Lnet/minecraft/world/level/block/Block; GRANITE_STAIRS nn field_10607 + f Lnet/minecraft/world/level/block/Block; ANDESITE_STAIRS no field_10386 + f Lnet/minecraft/world/level/block/Block; RED_NETHER_BRICK_STAIRS np field_10497 + f Lnet/minecraft/world/level/block/Block; POLISHED_ANDESITE_STAIRS nq field_9994 + f Lnet/minecraft/world/level/block/Block; DIORITE_STAIRS nr field_10216 + f Lnet/minecraft/world/level/block/Block; POLISHED_GRANITE_SLAB ns field_10329 + f Lnet/minecraft/world/level/block/Block; SMOOTH_RED_SANDSTONE_SLAB nt field_10283 + f Lnet/minecraft/world/level/block/Block; MOSSY_STONE_BRICK_SLAB nu field_10024 + f Lnet/minecraft/world/level/block/Block; POLISHED_DIORITE_SLAB nv field_10412 + f Lnet/minecraft/world/level/block/Block; MOSSY_COBBLESTONE_SLAB nw field_10405 + f Lnet/minecraft/world/level/block/Block; END_STONE_BRICK_SLAB nx field_10064 + f Lnet/minecraft/world/level/block/Block; SMOOTH_SANDSTONE_SLAB ny field_10262 + f Lnet/minecraft/world/level/block/Block; SMOOTH_QUARTZ_SLAB nz field_10601 + f Lnet/minecraft/world/level/block/Block; WEEPING_VINES_PLANT oA field_22124 + f Lnet/minecraft/world/level/block/Block; TWISTING_VINES oB field_23078 + f Lnet/minecraft/world/level/block/Block; TWISTING_VINES_PLANT oC field_23079 + f Lnet/minecraft/world/level/block/Block; CRIMSON_ROOTS oD field_22125 + f Lnet/minecraft/world/level/block/Block; CRIMSON_PLANKS oE field_22126 + f Lnet/minecraft/world/level/block/Block; WARPED_PLANKS oF field_22127 + f Lnet/minecraft/world/level/block/Block; CRIMSON_SLAB oG field_22128 + f Lnet/minecraft/world/level/block/Block; WARPED_SLAB oH field_22129 + f Lnet/minecraft/world/level/block/Block; CRIMSON_PRESSURE_PLATE oI field_22130 + f Lnet/minecraft/world/level/block/Block; WARPED_PRESSURE_PLATE oJ field_22131 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FENCE oK field_22132 + f Lnet/minecraft/world/level/block/Block; WARPED_FENCE oL field_22133 + f Lnet/minecraft/world/level/block/Block; SPRUCE_PLANKS o field_9975 + f Lnet/minecraft/world/level/block/Block; CRIMSON_TRAPDOOR oM field_22094 + f Lnet/minecraft/world/level/block/Block; WARPED_TRAPDOOR oN field_22095 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FENCE_GATE oO field_22096 + f Lnet/minecraft/world/level/block/Block; WARPED_FENCE_GATE oP field_22097 + f Lnet/minecraft/world/level/block/Block; CRIMSON_STAIRS oQ field_22098 + f Lnet/minecraft/world/level/block/Block; WARPED_STAIRS oR field_22099 + f Lnet/minecraft/world/level/block/Block; CRIMSON_BUTTON oS field_22100 + f Lnet/minecraft/world/level/block/Block; WARPED_BUTTON oT field_22101 + f Lnet/minecraft/world/level/block/Block; CRIMSON_DOOR oU field_22102 + f Lnet/minecraft/world/level/block/Block; WARPED_DOOR oV field_22103 + f Lnet/minecraft/world/level/block/Block; CRIMSON_SIGN oW field_22104 + f Lnet/minecraft/world/level/block/Block; WARPED_SIGN oX field_22105 + f Lnet/minecraft/world/level/block/Block; CRIMSON_WALL_SIGN oY field_22106 + f Lnet/minecraft/world/level/block/Block; WARPED_WALL_SIGN oZ field_22107 + f Lnet/minecraft/world/level/block/Block; LECTERN oa field_16330 + f Lnet/minecraft/world/level/block/Block; SMITHING_TABLE ob field_16329 + f Lnet/minecraft/world/level/block/Block; STONECUTTER oc field_16335 + f Lnet/minecraft/world/level/block/Block; BELL od field_16332 + f Lnet/minecraft/world/level/block/Block; LANTERN oe field_16541 + f Lnet/minecraft/world/level/block/Block; SOUL_LANTERN of field_22110 + f Lnet/minecraft/world/level/block/Block; CAMPFIRE og field_17350 + f Lnet/minecraft/world/level/block/Block; SOUL_CAMPFIRE oh field_23860 + f Lnet/minecraft/world/level/block/Block; SWEET_BERRY_BUSH oi field_16999 + f Lnet/minecraft/world/level/block/Block; WARPED_STEM oj field_22111 + f Lnet/minecraft/world/level/block/Block; STRIPPED_WARPED_STEM ok field_22112 + f Lnet/minecraft/world/level/block/Block; WARPED_HYPHAE ol field_22503 + f Lnet/minecraft/world/level/block/Block; STRIPPED_WARPED_HYPHAE om field_22504 + f Lnet/minecraft/world/level/block/Block; WARPED_NYLIUM on field_22113 + f Lnet/minecraft/world/level/block/Block; WARPED_FUNGUS oo field_22114 + f Lnet/minecraft/world/level/block/Block; WARPED_WART_BLOCK op field_22115 + f Lnet/minecraft/world/level/block/Block; WARPED_ROOTS oq field_22116 + f Lnet/minecraft/world/level/block/Block; NETHER_SPROUTS or field_22117 + f Lnet/minecraft/world/level/block/Block; CRIMSON_STEM os field_22118 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CRIMSON_STEM ot field_22119 + f Lnet/minecraft/world/level/block/Block; CRIMSON_HYPHAE ou field_22505 + f Lnet/minecraft/world/level/block/Block; STRIPPED_CRIMSON_HYPHAE ov field_22506 + f Lnet/minecraft/world/level/block/Block; CRIMSON_NYLIUM ow field_22120 + f Lnet/minecraft/world/level/block/Block; CRIMSON_FUNGUS ox field_22121 + f Lnet/minecraft/world/level/block/Block; SHROOMLIGHT oy field_22122 + f Lnet/minecraft/world/level/block/Block; WEEPING_VINES oz field_22123 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_STAIRS pA field_23878 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_WALL pB field_23879 + f Lnet/minecraft/world/level/block/Block; GILDED_BLACKSTONE pC field_23880 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_STAIRS pD field_23861 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_SLAB pE field_23862 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_PRESSURE_PLATE pF field_23863 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BUTTON pG field_23864 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_WALL pH field_23865 + f Lnet/minecraft/world/level/block/Block; CHISELED_NETHER_BRICKS pI field_23866 + f Lnet/minecraft/world/level/block/Block; CRACKED_NETHER_BRICKS pJ field_23867 + f Lnet/minecraft/world/level/block/Block; QUARTZ_BRICKS pK field_23868 + f Lnet/minecraft/world/level/block/Block; CANDLE pL field_27099 + f Lnet/minecraft/world/level/block/Block; BIRCH_PLANKS p field_10148 + f Lnet/minecraft/world/level/block/Block; WHITE_CANDLE pM field_27100 + f Lnet/minecraft/world/level/block/Block; ORANGE_CANDLE pN field_27101 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CANDLE pO field_27102 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CANDLE pP field_27103 + f Lnet/minecraft/world/level/block/Block; YELLOW_CANDLE pQ field_27104 + f Lnet/minecraft/world/level/block/Block; LIME_CANDLE pR field_27105 + f Lnet/minecraft/world/level/block/Block; PINK_CANDLE pS field_27106 + f Lnet/minecraft/world/level/block/Block; GRAY_CANDLE pT field_27107 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CANDLE pU field_27108 + f Lnet/minecraft/world/level/block/Block; CYAN_CANDLE pV field_27109 + f Lnet/minecraft/world/level/block/Block; PURPLE_CANDLE pW field_27110 + f Lnet/minecraft/world/level/block/Block; BLUE_CANDLE pX field_27111 + f Lnet/minecraft/world/level/block/Block; BROWN_CANDLE pY field_27112 + f Lnet/minecraft/world/level/block/Block; GREEN_CANDLE pZ field_27113 + f Lnet/minecraft/world/level/block/Block; STRUCTURE_BLOCK pa field_10465 + f Lnet/minecraft/world/level/block/Block; JIGSAW pb field_16540 + f Lnet/minecraft/world/level/block/Block; COMPOSTER pc field_17563 + f Lnet/minecraft/world/level/block/Block; TARGET pd field_22422 + f Lnet/minecraft/world/level/block/Block; BEE_NEST pe field_20421 + f Lnet/minecraft/world/level/block/Block; BEEHIVE pf field_20422 + f Lnet/minecraft/world/level/block/Block; HONEY_BLOCK pg field_21211 + f Lnet/minecraft/world/level/block/Block; HONEYCOMB_BLOCK ph field_21212 + f Lnet/minecraft/world/level/block/Block; NETHERITE_BLOCK pi field_22108 + f Lnet/minecraft/world/level/block/Block; ANCIENT_DEBRIS pj field_22109 + f Lnet/minecraft/world/level/block/Block; CRYING_OBSIDIAN pk field_22423 + f Lnet/minecraft/world/level/block/Block; RESPAWN_ANCHOR pl field_23152 + f Lnet/minecraft/world/level/block/Block; POTTED_CRIMSON_FUNGUS pm field_22424 + f Lnet/minecraft/world/level/block/Block; POTTED_WARPED_FUNGUS pn field_22425 + f Lnet/minecraft/world/level/block/Block; POTTED_CRIMSON_ROOTS po field_22426 + f Lnet/minecraft/world/level/block/Block; POTTED_WARPED_ROOTS pp field_22427 + f Lnet/minecraft/world/level/block/Block; LODESTONE pq field_23261 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE pr field_23869 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_STAIRS ps field_23870 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_WALL pt field_23871 + f Lnet/minecraft/world/level/block/Block; BLACKSTONE_SLAB pu field_23872 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE pv field_23873 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICKS pw field_23874 + f Lnet/minecraft/world/level/block/Block; CRACKED_POLISHED_BLACKSTONE_BRICKS px field_23875 + f Lnet/minecraft/world/level/block/Block; CHISELED_POLISHED_BLACKSTONE py field_23876 + f Lnet/minecraft/world/level/block/Block; POLISHED_BLACKSTONE_BRICK_SLAB pz field_23877 + f Lnet/minecraft/world/level/block/Block; TUFF_SLAB qA field_47027 + f Lnet/minecraft/world/level/block/Block; TUFF_STAIRS qB field_47028 + f Lnet/minecraft/world/level/block/Block; TUFF_WALL qC field_47029 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF qD field_47030 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_SLAB qE field_47031 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_STAIRS qF field_47032 + f Lnet/minecraft/world/level/block/Block; POLISHED_TUFF_WALL qG field_47033 + f Lnet/minecraft/world/level/block/Block; CHISELED_TUFF qH field_47034 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICKS qI field_47035 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_SLAB qJ field_47036 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_STAIRS qK field_47037 + f Lnet/minecraft/world/level/block/Block; TUFF_BRICK_WALL qL field_47038 + f Lnet/minecraft/world/level/block/Block; JUNGLE_PLANKS q field_10334 + f Lnet/minecraft/world/level/block/Block; CHISELED_TUFF_BRICKS qM field_47039 + f Lnet/minecraft/world/level/block/Block; CALCITE qN field_27114 + f Lnet/minecraft/world/level/block/Block; TINTED_GLASS qO field_27115 + f Lnet/minecraft/world/level/block/Block; POWDER_SNOW qP field_27879 + f Lnet/minecraft/world/level/block/Block; SCULK_SENSOR qQ field_28108 + f Lnet/minecraft/world/level/block/Block; CALIBRATED_SCULK_SENSOR qR field_43231 + f Lnet/minecraft/world/level/block/Block; SCULK qS field_37568 + f Lnet/minecraft/world/level/block/Block; SCULK_VEIN qT field_37569 + f Lnet/minecraft/world/level/block/Block; SCULK_CATALYST qU field_37570 + f Lnet/minecraft/world/level/block/Block; SCULK_SHRIEKER qV field_37571 + f Lnet/minecraft/world/level/block/Block; COPPER_BLOCK qW field_27119 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER qX field_27118 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER qY field_27117 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER qZ field_27116 + f Lnet/minecraft/world/level/block/Block; RED_CANDLE qa field_27140 + f Lnet/minecraft/world/level/block/Block; BLACK_CANDLE qb field_27141 + f Lnet/minecraft/world/level/block/Block; CANDLE_CAKE qc field_27142 + f Lnet/minecraft/world/level/block/Block; WHITE_CANDLE_CAKE qd field_27143 + f Lnet/minecraft/world/level/block/Block; ORANGE_CANDLE_CAKE qe field_27144 + f Lnet/minecraft/world/level/block/Block; MAGENTA_CANDLE_CAKE qf field_27145 + f Lnet/minecraft/world/level/block/Block; LIGHT_BLUE_CANDLE_CAKE qg field_27146 + f Lnet/minecraft/world/level/block/Block; YELLOW_CANDLE_CAKE qh field_27147 + f Lnet/minecraft/world/level/block/Block; LIME_CANDLE_CAKE qi field_27148 + f Lnet/minecraft/world/level/block/Block; PINK_CANDLE_CAKE qj field_27149 + f Lnet/minecraft/world/level/block/Block; GRAY_CANDLE_CAKE qk field_27150 + f Lnet/minecraft/world/level/block/Block; LIGHT_GRAY_CANDLE_CAKE ql field_27151 + f Lnet/minecraft/world/level/block/Block; CYAN_CANDLE_CAKE qm field_27152 + f Lnet/minecraft/world/level/block/Block; PURPLE_CANDLE_CAKE qn field_27153 + f Lnet/minecraft/world/level/block/Block; BLUE_CANDLE_CAKE qo field_27154 + f Lnet/minecraft/world/level/block/Block; BROWN_CANDLE_CAKE qp field_27155 + f Lnet/minecraft/world/level/block/Block; GREEN_CANDLE_CAKE qq field_27156 + f Lnet/minecraft/world/level/block/Block; RED_CANDLE_CAKE qr field_27157 + f Lnet/minecraft/world/level/block/Block; BLACK_CANDLE_CAKE qs field_27158 + f Lnet/minecraft/world/level/block/Block; AMETHYST_BLOCK qt field_27159 + f Lnet/minecraft/world/level/block/Block; BUDDING_AMETHYST qu field_27160 + f Lnet/minecraft/world/level/block/Block; AMETHYST_CLUSTER qv field_27161 + f Lnet/minecraft/world/level/block/Block; LARGE_AMETHYST_BUD qw field_27162 + f Lnet/minecraft/world/level/block/Block; MEDIUM_AMETHYST_BUD qx field_27163 + f Lnet/minecraft/world/level/block/Block; SMALL_AMETHYST_BUD qy field_27164 + f Lnet/minecraft/world/level/block/Block; TUFF qz field_27165 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER rA field_33408 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER rB field_27136 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER rC field_27137 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER rD field_27138 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER_STAIRS rE field_33409 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER_STAIRS rF field_27139 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER_STAIRS rG field_27166 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER_STAIRS rH field_27167 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CUT_COPPER_SLAB rI field_33410 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CUT_COPPER_SLAB rJ field_27168 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CUT_COPPER_SLAB rK field_27169 + f Lnet/minecraft/world/level/block/Block; WAXED_CUT_COPPER_SLAB rL field_27170 + f Lnet/minecraft/world/level/block/Block; ACACIA_PLANKS r field_10218 + f Lnet/minecraft/world/level/block/Block; COPPER_DOOR rM field_47040 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_DOOR rN field_47041 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_DOOR rO field_47042 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_DOOR rP field_47043 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_DOOR rQ field_47044 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_DOOR rR field_47045 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_DOOR rS field_47046 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_DOOR rT field_47047 + f Lnet/minecraft/world/level/block/Block; COPPER_TRAPDOOR rU field_47048 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_TRAPDOOR rV field_47049 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_TRAPDOOR rW field_47050 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_TRAPDOOR rX field_47051 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_TRAPDOOR rY field_47052 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_TRAPDOOR rZ field_47053 + f Lnet/minecraft/world/level/block/Block; COPPER_ORE ra field_27120 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_COPPER_ORE rb field_29221 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER rc field_27121 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER rd field_27122 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER re field_27123 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER rf field_27124 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CHISELED_COPPER rg field_47054 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CHISELED_COPPER rh field_47055 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CHISELED_COPPER ri field_47056 + f Lnet/minecraft/world/level/block/Block; CHISELED_COPPER rj field_47057 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_CHISELED_COPPER rk field_47058 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_CHISELED_COPPER rl field_47059 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_CHISELED_COPPER rm field_47060 + f Lnet/minecraft/world/level/block/Block; WAXED_CHISELED_COPPER rn field_47061 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER_STAIRS ro field_27125 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER_STAIRS rp field_27126 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER_STAIRS rq field_27127 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER_STAIRS rr field_27128 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_CUT_COPPER_SLAB rs field_27129 + f Lnet/minecraft/world/level/block/Block; WEATHERED_CUT_COPPER_SLAB rt field_27130 + f Lnet/minecraft/world/level/block/Block; EXPOSED_CUT_COPPER_SLAB ru field_27131 + f Lnet/minecraft/world/level/block/Block; CUT_COPPER_SLAB rv field_27132 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_BLOCK rw field_27133 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER rx field_27134 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER ry field_27135 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER rz field_33407 + f Lnet/minecraft/world/level/block/Block; MOSS_CARPET sA field_28680 + f Lnet/minecraft/world/level/block/Block; PINK_PETALS sB field_42750 + f Lnet/minecraft/world/level/block/Block; MOSS_BLOCK sC field_28681 + f Lnet/minecraft/world/level/block/Block; BIG_DRIPLEAF sD field_28682 + f Lnet/minecraft/world/level/block/Block; BIG_DRIPLEAF_STEM sE field_28683 + f Lnet/minecraft/world/level/block/Block; SMALL_DRIPLEAF sF field_28684 + f Lnet/minecraft/world/level/block/Block; HANGING_ROOTS sG field_28686 + f Lnet/minecraft/world/level/block/Block; ROOTED_DIRT sH field_28685 + f Lnet/minecraft/world/level/block/Block; MUD sI field_37576 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE sJ field_28888 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE sK field_29031 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_STAIRS sL field_28889 + f Lnet/minecraft/world/level/block/Block; CHERRY_PLANKS s field_42751 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_SLAB sM field_28890 + f Lnet/minecraft/world/level/block/Block; COBBLED_DEEPSLATE_WALL sN field_28891 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE sO field_28892 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_STAIRS sP field_28893 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_SLAB sQ field_28894 + f Lnet/minecraft/world/level/block/Block; POLISHED_DEEPSLATE_WALL sR field_28895 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILES sS field_28896 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_STAIRS sT field_28897 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_SLAB sU field_28898 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_TILE_WALL sV field_28899 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICKS sW field_28900 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_STAIRS sX field_28901 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_SLAB sY field_28902 + f Lnet/minecraft/world/level/block/Block; DEEPSLATE_BRICK_WALL sZ field_28903 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_TRAPDOOR sa field_47062 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_TRAPDOOR sb field_47063 + f Lnet/minecraft/world/level/block/Block; COPPER_GRATE sc field_47064 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_GRATE sd field_47065 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_GRATE se field_47066 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_GRATE sf field_47067 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_GRATE sg field_47068 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_GRATE sh field_47069 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_GRATE si field_47070 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_GRATE sj field_47071 + f Lnet/minecraft/world/level/block/Block; COPPER_BULB sk field_47072 + f Lnet/minecraft/world/level/block/Block; EXPOSED_COPPER_BULB sl field_47073 + f Lnet/minecraft/world/level/block/Block; WEATHERED_COPPER_BULB sm field_47074 + f Lnet/minecraft/world/level/block/Block; OXIDIZED_COPPER_BULB sn field_47075 + f Lnet/minecraft/world/level/block/Block; WAXED_COPPER_BULB so field_47076 + f Lnet/minecraft/world/level/block/Block; WAXED_EXPOSED_COPPER_BULB sp field_47077 + f Lnet/minecraft/world/level/block/Block; WAXED_WEATHERED_COPPER_BULB sq field_47078 + f Lnet/minecraft/world/level/block/Block; WAXED_OXIDIZED_COPPER_BULB sr field_47079 + f Lnet/minecraft/world/level/block/Block; LIGHTNING_ROD ss field_27171 + f Lnet/minecraft/world/level/block/Block; POINTED_DRIPSTONE st field_28048 + f Lnet/minecraft/world/level/block/Block; DRIPSTONE_BLOCK su field_28049 + f Lnet/minecraft/world/level/block/Block; CAVE_VINES sv field_28675 + f Lnet/minecraft/world/level/block/Block; CAVE_VINES_PLANT sw field_28676 + f Lnet/minecraft/world/level/block/Block; SPORE_BLOSSOM sx field_28677 + f Lnet/minecraft/world/level/block/Block; AZALEA sy field_28678 + f Lnet/minecraft/world/level/block/Block; FLOWERING_AZALEA sz field_28679 + f Lnet/minecraft/world/level/block/Block; DARK_OAK_PLANKS t field_10075 + f Lnet/minecraft/world/level/block/Block; CHISELED_DEEPSLATE ta field_28904 + f Lnet/minecraft/world/level/block/Block; CRACKED_DEEPSLATE_BRICKS tb field_29222 + f Lnet/minecraft/world/level/block/Block; CRACKED_DEEPSLATE_TILES tc field_29223 + f Lnet/minecraft/world/level/block/Block; INFESTED_DEEPSLATE td field_29224 + f Lnet/minecraft/world/level/block/Block; SMOOTH_BASALT te field_29032 + f Lnet/minecraft/world/level/block/Block; RAW_IRON_BLOCK tf field_33508 + f Lnet/minecraft/world/level/block/Block; RAW_COPPER_BLOCK tg field_33509 + f Lnet/minecraft/world/level/block/Block; RAW_GOLD_BLOCK th field_33510 + f Lnet/minecraft/world/level/block/Block; POTTED_AZALEA ti field_33918 + f Lnet/minecraft/world/level/block/Block; POTTED_FLOWERING_AZALEA tj field_33919 + f Lnet/minecraft/world/level/block/Block; OCHRE_FROGLIGHT tk field_37572 + f Lnet/minecraft/world/level/block/Block; VERDANT_FROGLIGHT tl field_37573 + f Lnet/minecraft/world/level/block/Block; PEARLESCENT_FROGLIGHT tm field_37574 + f Lnet/minecraft/world/level/block/Block; FROGSPAWN tn field_37575 + f Lnet/minecraft/world/level/block/Block; REINFORCED_DEEPSLATE to field_38420 + f Lnet/minecraft/world/level/block/Block; DECORATED_POT tp field_42752 + f Lnet/minecraft/world/level/block/Block; CRAFTER tq field_46797 + f Lnet/minecraft/world/level/block/Block; TRIAL_SPAWNER tr field_47336 + f Lnet/minecraft/world/level/block/Block; VAULT ts field_48851 + f Lnet/minecraft/world/level/block/Block; HEAVY_CORE tt field_49830 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; NOT_CLOSED_SHULKER tu field_46288 + f Lnet/minecraft/world/level/block/Block; MANGROVE_PLANKS u field_37577 + f Lnet/minecraft/world/level/block/Block; BAMBOO_PLANKS v field_40294 + f Lnet/minecraft/world/level/block/Block; BAMBOO_MOSAIC w field_40295 + f Lnet/minecraft/world/level/block/Block; OAK_SAPLING x field_10394 + f Lnet/minecraft/world/level/block/Block; SPRUCE_SAPLING y field_10217 + f Lnet/minecraft/world/level/block/Block; BIRCH_SAPLING z field_10575 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_31625 A method_31625 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26143 B method_26143 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_33357 C method_33357 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26104 D method_26104 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26145 E method_26145 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26146 F method_26146 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26147 G method_26147 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26148 H method_26148 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26149 I method_26149 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26150 J method_26150 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26151 K method_26151 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26152 L method_26152 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26136 M method_26136 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26105 N method_26105 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26144 O method_26144 + m ()V rebuildCache a method_26979 + m (I)Ljava/util/function/ToIntFunction; litBlockEmission a method_26107 + p 0 lightValue + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_26108 a method_26108 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; register a method_52571 + p 0 resourceKey + p 1 block + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; bed a method_26109 + p 0 color + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26111 a method_26111 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; shulkerBox a method_26110 + p 0 color + p 1 mapColor + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; flowerPot a method_50000 + p 0 potted + m (Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/Block; leaves a method_26106 + p 0 soundType + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_56717 a method_56717 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z always a method_26113 + p 0 state + p 1 blockGetter + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; never a method_26114 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/Block; woodenButton a method_45451 + p 0 type + m (Lnet/minecraft/world/level/material/MapColor;)Ljava/util/function/Function; waterloggedMapColor a method_59823 + p 0 unwaterloggedMapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26116 a method_26116 + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; log a method_26117 + p 0 topMapColor + p 1 sideMapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/Block; log a method_47375 + p 0 topMapColor + p 1 sideMapColor + p 2 soundType + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_47376 a method_47376 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; register a method_9492 + p 0 key + p 1 block + m (Z)Lnet/minecraft/world/level/block/Block; pistonBase a method_26119 + p 0 isSticky + m ()Lnet/minecraft/world/level/block/Block; stoneButton b method_45453 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; stainedGlass b method_26120 + p 0 color + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; legacyStair b method_55133 + p 0 baseBlock + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_55132 b method_55132 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z never b method_26122 + p 0 state + p 1 blockGetter + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; always b method_26123 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; netherStem b method_26115 + p 0 mapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_59824 b method_59824 + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_26118 b method_26118 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24165 c method_24165 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; stair c method_53980 + p 0 baseBlock + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41421 c method_41421 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_32895 c method_32895 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; ocelotOrParrot c method_26126 + p 0 state + p 1 blockGetter + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/Block; candle c method_50001 + p 0 mapColor + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41422 d method_41422 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_39537 d method_39537 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26130 d method_26130 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41423 e method_41423 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26125 e method_26125 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26128 e method_26128 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_41424 f method_41424 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_53981 f method_53981 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26132 f method_26132 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_38230 g method_38230 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36460 h method_36460 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36461 i method_36461 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_32894 j method_32894 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26112 k method_26112 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26121 l method_26121 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26124 m method_26124 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26127 n method_26127 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_24419 o method_24419 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26131 p method_26131 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26129 q method_26129 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26134 r method_26134 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26135 s method_26135 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_36458 t method_36458 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26137 u method_26137 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26138 v method_26138 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26139 w method_26139 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26140 x method_26140 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26141 y method_26141 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26142 z method_26142 + m ()V + m ()V +c net/minecraft/world/level/block/BonemealableBlock dgb net/minecraft/class_2256 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V performBonemeal a method_9652 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isBonemealSuccess a method_9650 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getParticlePos a method_55769 + p 1 pos + m ()Lnet/minecraft/world/level/block/BonemealableBlock$Type; getType au_ method_55770 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBonemealTarget b method_9651 + p 1 level + p 2 pos + p 3 state +c net/minecraft/world/level/block/BonemealableBlock$Type dgb$a net/minecraft/class_2256$class_9077 + f Lnet/minecraft/world/level/block/BonemealableBlock$Type; NEIGHBOR_SPREADER a field_47834 + f Lnet/minecraft/world/level/block/BonemealableBlock$Type; GROWER b field_47835 + f [Lnet/minecraft/world/level/block/BonemealableBlock$Type; $VALUES c field_47836 + m ()[Lnet/minecraft/world/level/block/BonemealableBlock$Type; $values a method_55771 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/BrewingStandBlock dgc net/minecraft/class_2260 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46289 + f [Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE b field_10700 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10701 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BrushableBlock dgd net/minecraft/class_8170 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46290 + f I TICK_DELAY b field_42773 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DUSTED c field_42774 + f Lnet/minecraft/world/level/block/Block; turnsInto d field_43232 + f Lnet/minecraft/sounds/SoundEvent; brushSound e field_43233 + f Lnet/minecraft/sounds/SoundEvent; brushCompletedSound f field_43234 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53982 a method_53982 + m ()Lnet/minecraft/world/level/block/Block; getTurnsInto b method_49810 + m ()Lnet/minecraft/sounds/SoundEvent; getBrushSound c method_49811 + m ()Lnet/minecraft/sounds/SoundEvent; getBrushCompletedSound d method_49812 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 turnsInto + p 2 brushSound + p 3 brushCompletedSound + p 4 properties + m ()V +c net/minecraft/world/level/block/BubbleColumnBlock dge net/minecraft/class_2258 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46291 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DRAG_DOWN b field_10680 + f I CHECK_PERIOD c field_31038 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V updateColumn a method_34267 + p 0 level + p 1 pos + p 2 fluid + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateColumn b method_34268 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canExistIn m method_9658 + p 0 blockState + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getColumnState n method_34269 + p 0 blockState + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BucketPickup dgf net/minecraft/class_2263 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; pickupBlock a method_9700 + p 1 player + p 2 level + p 3 pos + p 4 state + m ()Ljava/util/Optional; getPickupSound aw_ method_32351 +c net/minecraft/world/level/block/BuddingAmethystBlock dgg net/minecraft/class_5543 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46292 + f I GROWTH_CHANCE c field_31039 + f [Lnet/minecraft/core/Direction; DIRECTIONS d field_27172 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canClusterGrowAtState g method_31626 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/BushBlock dgh net/minecraft/class_2261 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z mayPlaceOn b method_9695 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/ButtonBlock dgi net/minecraft/class_2269 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_FLOOR_AABB_Z F field_10730 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_NORTH_AABB G field_10719 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_SOUTH_AABB H field_10724 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_WEST_AABB I field_10732 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_EAST_AABB J field_10718 + f I PRESSED_DEPTH L field_31040 + f I UNPRESSED_DEPTH M field_31041 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type N field_42753 + f I ticksToStayPressed O field_40298 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46293 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_10729 + f I HALF_AABB_HEIGHT c field_31042 + f I HALF_AABB_WIDTH d field_31043 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_AABB_X e field_10721 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_AABB_Z f field_10727 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_AABB_X g field_10723 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_AABB_Z h field_10716 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10728 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_10715 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB k field_10731 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB l field_10720 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_CEILING_AABB_X m field_10717 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_CEILING_AABB_Z n field_10726 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PRESSED_FLOOR_AABB_X o field_10722 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)V playSound a method_9714 + p 1 player + p 2 level + p 3 pos + p 4 hitByArrow + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53983 a method_53983 + m (Lnet/minecraft/world/level/block/ButtonBlock;)Ljava/lang/Integer; method_53984 a method_53984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V press a method_21845 + p 1 state + p 2 level + p 3 pos + p 4 player + m (Z)Lnet/minecraft/sounds/SoundEvent; getSound a method_9712 + p 1 isOn + m (Lnet/minecraft/world/level/block/ButtonBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_53985 b method_53985 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkPressed d method_9715 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours e method_9713 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;ILnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 ticksToStayPressed + p 3 properties + m ()V +c net/minecraft/world/level/block/ButtonBlock$1 dgi$1 net/minecraft/class_2269$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10734 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace b field_10733 + m ()V +c net/minecraft/world/level/block/CactusBlock dgj net/minecraft/class_2266 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46294 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_10709 + f I MAX_AGE c field_31044 + f I AABB_OFFSET d field_31045 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE e field_10711 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OUTLINE_SHAPE f field_10710 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CakeBlock dgk net/minecraft/class_2272 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46295 + f I MAX_BITES b field_31046 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; BITES c field_10739 + f I FULL_CAKE_SIGNAL d field_27173 + f F AABB_OFFSET e field_31047 + f F AABB_SIZE_PER_BITE f field_31048 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_BITE g field_10738 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/InteractionResult; eat a method_9719 + p 0 level + p 1 pos + p 2 state + p 3 player + m (I)I getOutputSignal b method_31627 + p 0 eaten + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CalibratedSculkSensorBlock dgl net/minecraft/class_8236 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46296 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_43235 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity;)V method_49813 a method_49813 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CampfireBlock dgm net/minecraft/class_3922 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46297 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_17351 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT c field_17352 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SIGNAL_FIRE d field_17353 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_17354 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING f field_17564 + f Lnet/minecraft/world/phys/shapes/VoxelShape; VIRTUAL_FENCE_POST g field_21580 + f I SMOKE_DISTANCE h field_31049 + f Z spawnParticles i field_23881 + f I fireDamage j field_25182 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V dowse a method_29288 + p 0 entity + p 1 level + p 2 pos + p 3 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53986 a method_53986 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isSmokeyPos a method_23895 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZZ)V makeParticles a method_17455 + p 0 level + p 1 pos + p 2 isSignalFire + p 3 spawnExtraSmoke + m (Lnet/minecraft/world/level/block/CampfireBlock;)Ljava/lang/Integer; method_53987 a method_53987 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_30034 a method_30034 + m (Lnet/minecraft/world/level/block/CampfireBlock;)Ljava/lang/Boolean; method_53988 b method_53988 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLitCampfire g method_23896 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight h method_30035 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSmokeSource m method_17456 + c @return whether the given block state produces the thicker signal fire smoke when put below a campfire. + p 1 state + m (ZILnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 spawnParticles + p 2 fireDamage + p 3 properties + m ()V +c net/minecraft/world/level/block/CandleBlock dgn net/minecraft/class_5544 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46298 + f I MIN_CANDLES d field_31050 + f I MAX_CANDLES e field_31051 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CANDLES f field_27174 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT g field_27175 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED h field_27176 + f Ljava/util/function/ToIntFunction; LIGHT_EMISSION i field_27177 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; PARTICLE_OFFSETS j field_27178 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_AABB k field_27179 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TWO_AABB l field_27180 + f Lnet/minecraft/world/phys/shapes/VoxelShape; THREE_AABB m field_27181 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FOUR_AABB n field_27182 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_31628 a method_31628 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight g method_31630 + p 0 state + m ()Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; method_31629 m method_31629 + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_31631 m method_31631 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CandleCakeBlock dgo net/minecraft/class_5545 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46299 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT d field_27183 + f F AABB_OFFSET e field_31052 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CAKE_SHAPE f field_27184 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CANDLE_SHAPE g field_27185 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_27186 + f Ljava/util/Map; BY_CANDLE i field_27187 + f Ljava/lang/Iterable; PARTICLE_OFFSETS j field_27188 + f Lnet/minecraft/world/level/block/CandleBlock; candleBlock k field_46300 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53989 a method_53989 + m (Lnet/minecraft/world/level/block/CandleBlock;)Lnet/minecraft/world/level/block/state/BlockState; byCandle a method_31632 + p 0 candle + m (Lnet/minecraft/world/level/block/CandleCakeBlock;)Lnet/minecraft/world/level/block/Block; method_53990 a method_53990 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_31633 a method_31633 + m (Lnet/minecraft/world/phys/BlockHitResult;)Z candleHit a method_31634 + p 0 hit + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canLight g method_31635 + p 0 state + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 candleBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CarpetBlock dgp net/minecraft/class_2577 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46301 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11783 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CarrotBlock dgq net/minecraft/class_2271 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46302 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE b field_10737 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CartographyTableBlock dgr net/minecraft/class_3711 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46303 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17355 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17457 a method_17457 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CarvedPumpkinBlock dgs net/minecraft/class_2276 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46304 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10748 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; snowGolemBase c field_10749 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; snowGolemFull d field_10750 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; ironGolemBase e field_10752 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; ironGolemFull f field_10753 + f Ljava/util/function/Predicate; PUMPKINS_PREDICATE g field_10751 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;)V clearPatternBlocks a method_45454 + p 0 level + p 1 patternMatch + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V spawnGolemInWorld a method_45455 + p 0 level + p 1 patternMatch + p 2 golem + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V trySpawnGolem a method_9731 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSpawnGolem a method_9733 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51167 a method_51167 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateSnowGolemBase b method_9732 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch;)V updatePatternBlocks b method_45456 + p 0 level + p 1 patternMatch + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51168 b method_51168 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateSnowGolemFull m method_9729 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_9728 m method_9728 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateIronGolemBase y method_9727 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateIronGolemFull z method_9730 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CauldronBlock dgt net/minecraft/class_5546 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46305 + f F RAIN_FILL_CHANCE e field_34027 + f F POWDER_SNOW_FILL_CHANCE f field_34028 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/biome/Biome$Precipitation;)Z shouldHandlePrecipitation a method_31636 + p 0 level + p 1 precipitation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CaveVines dgu net/minecraft/class_5803 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE t_ field_28687 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BERRIES u_ field_28688 + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_37361 a method_37361 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/InteractionResult; use a method_33619 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasGlowBerries h_ method_33618 + p 0 state + m (I)Ljava/util/function/ToIntFunction; emission i_ method_37362 + p 0 berries + m ()V +c net/minecraft/world/level/block/CaveVinesBlock dgv net/minecraft/class_5805 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46306 + f F CHANCE_OF_BERRIES_ON_GROWTH g field_31053 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CaveVinesPlantBlock dgw net/minecraft/class_5804 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46307 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CeilingHangingSignBlock dgx net/minecraft/class_7713 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46308 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_40300 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED c field_40301 + f F AABB_OFFSET d field_40302 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_40303 + f Ljava/util/Map; AABBS i field_40304 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/item/ItemStack;)Z shouldTryToChainAnotherHangingSign a method_50002 + p 1 player + p 2 hitResult + p 3 sign + p 4 stack + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53991 a method_53991 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/ChainBlock dgy net/minecraft/class_5172 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46309 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_24411 + f F AABB_MIN c field_31054 + f F AABB_MAX d field_31055 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Y_AXIS_AABB e field_23986 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB f field_26650 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB g field_26651 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ChainBlock$1 dgy$1 net/minecraft/class_5172$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_26652 + m ()V +c net/minecraft/world/level/block/ChangeOverTimeBlock dgz net/minecraft/class_5547 + f I SCAN_DISTANCE y_ field_31056 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_54763 a method_54763 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V changeOverTime a_ method_54764 + p 1 state + p 2 level + p 3 pos + p 4 random + m ()F getChanceModifier ay_ method_33620 + m ()Ljava/lang/Enum; getAge c method_33622 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getNextState c method_54765 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getNext i_ method_31639 + p 1 state +c net/minecraft/world/level/block/CherryLeavesBlock dha net/minecraft/class_8167 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46310 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/ChestBlock dhb net/minecraft/class_2281 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46311 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_10768 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE d field_10770 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_10772 + f I EVENT_SET_OPEN_COUNT f field_31057 + f I AABB_OFFSET g field_31058 + f I AABB_HEIGHT h field_31059 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10767 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_10771 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB k field_10773 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB l field_10769 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB m field_10774 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; CHEST_COMBINER n field_17356 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; MENU_PROVIDER_COMBINER o field_17357 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; candidatePartnerFacing a method_9753 + p 1 context + p 2 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isBlockedChestByBlock a method_9757 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isChestBlockedAt a method_9756 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/ChestBlock;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/Container; getContainer a method_17458 + p 0 chest + p 1 state + p 2 level + p 3 pos + p 4 override + m (Lnet/minecraft/world/level/block/entity/LidBlockEntity;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$Combiner; opennessCombiner a method_24166 + p 0 lid + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)Lnet/minecraft/world/level/block/ChestBlock; method_53992 a method_53992 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isCatSittingOnChest b method_9754 + p 0 level + p 1 pos + m ()Lnet/minecraft/stats/Stat; getOpenChestStat c method_9755 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_24168 c method_24168 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; blockEntityType d method_31641 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; getBlockType g method_24169 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection h method_9758 + c @return the Direction pointing from the given state to its attached double chest + p 0 state + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_53993 m method_53993 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Ljava/util/function/Supplier;)V + p 1 properties + p 2 blockEntityType + m ()V +c net/minecraft/world/level/block/ChestBlock$1 dhb$1 net/minecraft/class_2281$1 + m ()Ljava/util/Optional; acceptNone a method_24170 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptSingle a method_17460 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptDouble a method_17461 + m ()V +c net/minecraft/world/level/block/ChestBlock$2 dhb$2 net/minecraft/class_2281$2 + m ()Ljava/util/Optional; acceptNone a method_24171 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptSingle a method_17462 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Ljava/util/Optional; acceptDouble a method_17463 + m ()V +c net/minecraft/world/level/block/ChestBlock$2$1 dhb$2$1 net/minecraft/class_2281$2$1 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; val$first a field_17358 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; val$second b field_17359 + f Lnet/minecraft/world/Container; val$container c field_17360 + m (Lnet/minecraft/world/level/block/ChestBlock$2;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/Container;)V +c net/minecraft/world/level/block/ChestBlock$3 dhb$3 net/minecraft/class_2281$3 + f Lnet/minecraft/world/level/block/entity/LidBlockEntity; val$entity a field_21782 + m ()Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptNone a method_24172 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptSingle a method_23898 + p 1 single + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)Lit/unimi/dsi/fastutil/floats/Float2FloatFunction; acceptDouble a method_23899 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;F)F method_23900 a method_23900 + m (Lnet/minecraft/world/level/block/entity/LidBlockEntity;)V +c net/minecraft/world/level/block/ChestBlock$4 dhb$4 net/minecraft/class_2281$4 + f [I $SwitchMap$net$minecraft$core$Direction a field_10775 + m ()V +c net/minecraft/world/level/block/ChiseledBookShelfBlock dhc net/minecraft/class_7714 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46312 + f I BOOKS_PER_ROW b field_41307 + f Ljava/util/List; SLOT_OCCUPIED_PROPERTIES c field_41308 + f I MAX_BOOKS_IN_STORAGE d field_41309 + m (F)I getSection a method_47577 + p 0 x + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity;I)V removeBook a method_45457 + p 0 level + p 1 pos + p 2 player + p 3 blockEntity + p 4 slot + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity;Lnet/minecraft/world/item/ItemStack;I)V addBook a method_45458 + p 0 level + p 1 pos + p 2 player + p 3 blockEntity + p 4 bookStack + p 5 slot + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;Lnet/minecraft/world/level/block/state/properties/Property;)V method_47578 a method_47578 + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/OptionalInt; getHitSlot a method_47580 + p 1 hitReselt + p 2 state + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/core/Direction;)Ljava/util/Optional; getRelativeHitCoordinatesForBlockFace a method_47579 + p 0 hitResult + p 1 face + m (Lnet/minecraft/world/phys/Vec2;)Ljava/util/OptionalInt; method_55772 a method_55772 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ChiseledBookShelfBlock$1 dhc$1 net/minecraft/class_7714$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_41310 + m ()V +c net/minecraft/world/level/block/ChorusFlowerBlock dhd net/minecraft/class_2279 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46313 + f I DEAD_AGE b field_31060 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_10762 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BLOCK_SUPPORT_SHAPE d field_45145 + f Lnet/minecraft/world/level/block/Block; plant e field_10763 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53994 a method_53994 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V placeDeadFlower a method_9747 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V placeGrownFlower a method_9745 + p 1 level + p 2 pos + p 3 age + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;I)V generatePlant a method_9744 + p 0 level + p 1 pos + p 2 random + p 3 maxHorizontalDistance + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;II)V growTreeRecursive a method_9748 + p 0 level + p 1 branchPos + p 2 random + p 3 originalBranchPos + p 4 maxHorizontalDistance + p 5 iterations + m (Lnet/minecraft/world/level/block/ChorusFlowerBlock;)Lnet/minecraft/world/level/block/Block; method_53995 a method_53995 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z allNeighborsEmpty b method_9746 + p 0 level + p 1 pos + p 2 excludingSide + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 plant + p 2 properties + m ()V +c net/minecraft/world/level/block/ChorusPlantBlock dhe net/minecraft/class_2283 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46314 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getStateWithConnections a method_9759 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/CocoaBlock dhf net/minecraft/class_2282 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB F field_10780 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46315 + f I MAX_AGE b field_31061 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_10779 + f I AGE_0_WIDTH d field_31062 + f I AGE_0_HEIGHT e field_31063 + f I AGE_0_HALFWIDTH f field_31064 + f I AGE_1_WIDTH g field_31065 + f I AGE_1_HEIGHT h field_31066 + f I AGE_1_HALFWIDTH i field_31067 + f I AGE_2_WIDTH j field_31068 + f I AGE_2_HEIGHT k field_31069 + f I AGE_2_HALFWIDTH l field_31070 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB m field_10778 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB n field_10776 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB o field_10777 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CocoaBlock$1 dhf$1 net/minecraft/class_2282$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10781 + m ()V +c net/minecraft/world/level/block/ColoredFallingBlock dhg net/minecraft/class_8812 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46316 + f Lnet/minecraft/util/ColorRGBA; dustColor b field_46317 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53996 a method_53996 + m (Lnet/minecraft/world/level/block/ColoredFallingBlock;)Lnet/minecraft/util/ColorRGBA; method_53997 a method_53997 + m (Lnet/minecraft/util/ColorRGBA;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 dustColor + p 2 properties + m ()V +c net/minecraft/world/level/block/CommandBlock dhh net/minecraft/class_2288 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46318 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10791 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CONDITIONAL c field_10793 + f Lorg/slf4j/Logger; LOGGER d field_10792 + f Z automatic e field_27192 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53998 a method_53998 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V executeChain a method_9779 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/CommandBlock;)Ljava/lang/Boolean; method_53999 a method_53999 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BaseCommandBlock;Z)V execute a method_9780 + p 1 state + p 2 level + p 3 pos + p 4 logic + p 5 canTrigger + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 automatic + p 2 properties + m ()V +c net/minecraft/world/level/block/ComparatorBlock dhi net/minecraft/class_2286 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46319 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE b field_10789 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/decoration/ItemFrame; getItemFrame a method_9774 + p 1 level + p 2 facing + p 3 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/decoration/ItemFrame;)Z method_9772 a method_9772 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I calculateOutputSignal e method_9773 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V refreshOutputState f method_9775 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ComposterBlock dhj net/minecraft/class_3962 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46320 + f I READY b field_31071 + f I MIN_LEVEL c field_31072 + f I MAX_LEVEL d field_31073 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL e field_17565 + f Lit/unimi/dsi/fastutil/objects/Object2FloatMap; COMPOSTABLES f field_17566 + f I AABB_SIDE_THICKNESS g field_31074 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OUTER_SHAPE h field_17567 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES i field_17568 + m (FLnet/minecraft/world/level/ItemLike;)V add a method_17753 + p 0 chance + p 1 item + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; insertItem a method_26373 + p 0 entity + p 1 state + p 2 level + p 3 stack + p 4 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; extractProduce a method_26374 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; empty a method_17759 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/block/state/BlockState; addItem a method_17756 + p 0 entity + p 1 state + p 2 level + p 3 pos + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V handleFill a method_18027 + p 0 level + p 1 pos + p 2 success + m ([Lnet/minecraft/world/phys/shapes/VoxelShape;)V method_17755 a method_17755 + m ()V bootStrap b method_17758 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ComposterBlock$EmptyContainer dhj$a net/minecraft/class_3962$class_3925 + m ()V +c net/minecraft/world/level/block/ComposterBlock$InputContainer dhj$b net/minecraft/class_3962$class_3963 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_17569 + f Lnet/minecraft/world/level/LevelAccessor; level c field_17570 + f Lnet/minecraft/core/BlockPos; pos d field_17571 + f Z changed e field_17572 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V + p 1 state + p 2 level + p 3 pos +c net/minecraft/world/level/block/ComposterBlock$OutputContainer dhj$c net/minecraft/class_3962$class_3964 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_17573 + f Lnet/minecraft/world/level/LevelAccessor; level c field_17574 + f Lnet/minecraft/core/BlockPos; pos d field_17575 + f Z changed e field_17576 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V + p 1 state + p 2 level + p 3 pos + p 4 stack +c net/minecraft/world/level/block/ConcretePowderBlock dhk net/minecraft/class_2292 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46321 + f Lnet/minecraft/world/level/block/Block; concrete b field_10810 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54000 a method_54000 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z touchesLiquid a method_9798 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldSolidify a method_24279 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/ConcretePowderBlock;)Lnet/minecraft/world/level/block/Block; method_54001 a method_54001 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canSolidify n method_9799 + p 0 state + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 concrete + p 2 properties + m ()V +c net/minecraft/world/level/block/ConduitBlock dhl net/minecraft/class_2289 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46322 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_10794 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10795 + f I SIZE d field_31075 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CopperBulbBlock dhm net/minecraft/class_8922 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47080 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_47081 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT c field_47082 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V checkAndFlip a method_55373 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CoralBlock dhn net/minecraft/class_2298 + f Lcom/mojang/serialization/MapCodec; DEAD_CORAL_FIELD a field_46323 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46324 + f Lnet/minecraft/world/level/block/Block; deadBlock c field_10818 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54002 a method_54002 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z scanForWater a method_9808 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/CoralBlock;)Lnet/minecraft/world/level/block/Block; method_54003 a method_54003 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralFanBlock dho net/minecraft/class_2297 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46325 + f Lnet/minecraft/world/level/block/Block; deadBlock c field_10817 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54004 a method_54004 + m (Lnet/minecraft/world/level/block/CoralFanBlock;)Lnet/minecraft/world/level/block/Block; method_54005 a method_54005 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralPlantBlock dhp net/minecraft/class_2301 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46326 + f F AABB_OFFSET b field_31076 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10834 + f Lnet/minecraft/world/level/block/Block; deadBlock e field_10833 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54006 a method_54006 + m (Lnet/minecraft/world/level/block/CoralPlantBlock;)Lnet/minecraft/world/level/block/Block; method_54007 a method_54007 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CoralWallFanBlock dhq net/minecraft/class_2299 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46327 + f Lnet/minecraft/world/level/block/Block; deadBlock f field_10819 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54008 a method_54008 + m (Lnet/minecraft/world/level/block/CoralWallFanBlock;)Lnet/minecraft/world/level/block/Block; method_54009 a method_54009 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 deadBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/CrafterBlock dhr net/minecraft/class_8886 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46798 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRAFTING b field_46799 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED c field_46800 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION d field_46801 + f I MAX_CRAFTING_TICKS e field_46802 + f I CRAFTING_TICK_DELAY f field_47521 + f Lnet/minecraft/world/item/crafting/RecipeCache; RECIPE_CACHE g field_46803 + f I CRAFTER_ADVANCEMENT_DIAMETER h field_50015 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/crafting/RecipeHolder;)V dispenseItem a method_54476 + p 1 level + p 2 pos + p 3 crafter + p 4 stack + p 5 state + p 6 recipe + m (Lnet/minecraft/world/item/ItemStack;)V method_54474 a method_54474 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/CraftingInput;)Ljava/util/Optional; getPotentialResults a method_54475 + p 0 level + p 1 input + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Z)V setBlockEntityTriggered a method_54477 + p 1 blockEntity + p 2 triggered + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V dispenseFrom a method_54478 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CrafterBlock$1 dhr$1 net/minecraft/class_8886$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_46804 + m ()V +c net/minecraft/world/level/block/CraftingTableBlock dhs net/minecraft/class_2304 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46328 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17362 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17466 a method_17466 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CropBlock dht net/minecraft/class_2302 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE a field_10836 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46329 + f I MAX_AGE e field_31079 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE f field_10835 + m (Lnet/minecraft/world/level/Level;)I getBonemealAgeIncrease a method_9831 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V growCrops a method_9826 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z hasSufficientLight a method_52572 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getGrowthSpeed a method_9830 + p 0 block + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/state/properties/IntegerProperty; getAgeProperty b method_9824 + m (I)Lnet/minecraft/world/level/block/state/BlockState; getStateForAge b method_9828 + p 1 age + m ()I getMaxAge c method_9827 + m ()Lnet/minecraft/world/level/ItemLike; getBaseSeedId d method_9832 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAge g method_9829 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge h method_9825 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/CrossCollisionBlock dhu net/minecraft/class_2310 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH a field_10905 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST b field_10907 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH c field_10904 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST d field_10903 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_10900 + f Ljava/util/Map; PROPERTY_BY_DIRECTION f field_10902 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; collisionShapeByIndex g field_10901 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; shapeByIndex h field_10906 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; stateToIndex i field_19313 + m (FFFFF)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_9984 + p 1 nodeWidth + p 2 extensionWidth + p 3 nodeHeight + p 4 extensionBottom + p 5 extensionHeight + m (Ljava/util/Map$Entry;)Z method_9986 a method_9986 + m (Lnet/minecraft/core/Direction;)I indexFor a method_9985 + p 0 facing + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAABBIndex g method_9987 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_20517 m method_20517 + m (FFFFFLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 nodeWidth + p 2 extensionWidth + p 3 nodeHeight + p 4 extensionHeight + p 5 collisionHeight + p 6 properties + m ()V +c net/minecraft/world/level/block/CrossCollisionBlock$1 dhu$1 net/minecraft/class_2310$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_10909 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_10908 + m ()V +c net/minecraft/world/level/block/CryingObsidianBlock dhv net/minecraft/class_4848 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46330 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DaylightDetectorBlock dhw net/minecraft/class_2309 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46331 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER b field_10897 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; INVERTED c field_10899 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_10898 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/DaylightDetectorBlockEntity;)V tickEntity a method_31642 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateSignalStrength d method_9983 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DeadBushBlock dhx net/minecraft/class_2311 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46332 + f F AABB_OFFSET b field_31080 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10910 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DecoratedPotBlock dhy net/minecraft/class_8168 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46333 + f Lnet/minecraft/resources/ResourceLocation; SHERDS_DYNAMIC_DROP_ID b field_43236 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRACKED c field_43237 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOUNDING_BOX d field_42754 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; HORIZONTAL_FACING e field_42755 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_42756 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity;Ljava/util/function/Consumer;)V method_49815 a method_49815 + m (Ljava/util/List;Ljava/util/Optional;)V method_51510 a method_51510 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DetectorRailBlock dhz net/minecraft/class_2313 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46334 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_10914 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_10913 + f I PRESSED_CHECK_PERIOD g field_31081 + m (Lnet/minecraft/world/entity/Entity;)Z method_31643 a method_31643 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkPressed a method_10002 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/lang/Class;Ljava/util/function/Predicate;)Ljava/util/List; getInteractingMinecartOfType a method_10001 + p 1 level + p 2 pos + p 3 cartType + p 4 filter + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; getSearchBB a method_10004 + p 1 pos + m (Lnet/minecraft/world/entity/Entity;)Z method_31644 b method_31644 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V updatePowerToConnected b method_10003 + p 1 level + p 2 pos + p 3 state + p 4 powered + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DetectorRailBlock$1 dhz$1 net/minecraft/class_2313$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_10917 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_10916 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_10915 + m ()V +c net/minecraft/world/level/block/DiodeBlock dia net/minecraft/class_2312 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_10912 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_10911 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getOutputSignal a method_9993 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldTurnOn a method_9990 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/SignalGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getAlternateSignal a method_10000 + p 1 level + p 2 pos + p 3 state + m ()Z sideInputDiodesOnly b method_49816 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldPrioritize b method_9988 + c Check if this diode should have a higher tick priority than default.\n\n

\nBoth repeaters and comparators use this method to increase their tick priorities\nwhen facing other diodes. This makes certain monostable circuits based on the repeater locking\nmechanic more reliable. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getInputSignal b method_9991 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOn b method_53789 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkTickOnNeighbor c method_9998 + c Check the output signal of this diode and schedule a new block tick if it should change. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isLocked c method_9996 + c Check if neighboring blocks are locking this diode. + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighborsInFront d method_9997 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getDelay g method_9992 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDiode m method_9999 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DirectionalBlock dib net/minecraft/class_2318 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING a field_10927 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DirtPathBlock dic net/minecraft/class_2369 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46335 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11106 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/DispenserBlock did net/minecraft/class_2315 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46336 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10918 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED c field_10920 + f Ljava/util/Map; DISPENSER_REGISTRY d field_10919 + c Registry for all dispense behaviors. + f Lorg/slf4j/Logger; LOGGER e field_46212 + f Lnet/minecraft/core/dispenser/DefaultDispenseItemBehavior; DEFAULT_BEHAVIOR f field_51412 + f I TRIGGER_DURATION g field_31082 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V dispenseFrom a method_10012 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/ItemLike;)V registerProjectileBehavior a method_58681 + p 0 item + m (Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/core/dispenser/DispenseItemBehavior;)V registerBehavior a method_10009 + p 0 item + p 1 behavior + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/dispenser/DispenseItemBehavior; getDispenseMethod a method_10011 + p 1 level + p 2 item + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectOpenHashMap;)V method_10008 a method_10008 + m (Lnet/minecraft/core/dispenser/BlockSource;)Lnet/minecraft/core/Position; getDispensePosition a method_58682 + p 0 blockSource + m (Lnet/minecraft/core/dispenser/BlockSource;DLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/Position; getDispensePosition a method_10010 + p 0 blockSource + p 1 multiplier + p 3 offset + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DoorBlock die net/minecraft/class_2323 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46337 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10938 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN c field_10945 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HINGE d field_10941 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED e field_10940 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF f field_10946 + f F AABB_DOOR_THICKNESS g field_31083 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_10942 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_10939 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_10944 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_10943 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type l field_42757 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Z)V setOpen a method_10033 + p 1 entity + p 2 level + p 3 state + p 4 pos + p 5 open + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V playSound a method_10036 + p 1 source + p 2 level + p 3 pos + p 4 isOpening + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54010 a method_54010 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isWoodenDoor a method_24795 + p 0 level + p 1 pos + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; type b method_51169 + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; getHinge b method_10035 + p 1 context + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isOpen m method_30841 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isWoodenDoor n method_24796 + p 0 state + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/DoorBlock$1 die$1 net/minecraft/class_2323$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_10948 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_10947 + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner dif net/minecraft/class_4732 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/world/level/block/state/properties/DirectionProperty;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Ljava/util/function/BiPredicate;)Lnet/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult; combineWithNeigbour a method_24173 + p 0 blockEntityType + p 1 doubleBlockTypeGetter + p 2 directionGetter + p 3 directionProperty + p 4 state + p 5 level + p 6 pos + p 7 blockedChestTest + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner$BlockType dif$a net/minecraft/class_4732$class_4733 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; SINGLE a field_21783 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; FIRST b field_21784 + f Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; SECOND c field_21785 + f [Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; $VALUES d field_21786 + m ()[Lnet/minecraft/world/level/block/DoubleBlockCombiner$BlockType; $values a method_36705 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/DoubleBlockCombiner$Combiner dif$b net/minecraft/class_4732$class_3923 + m (Ljava/lang/Object;)Ljava/lang/Object; acceptSingle a method_17464 + p 1 single + m (Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; acceptDouble a method_17465 + p 1 first + p 2 second + m ()Ljava/lang/Object; acceptNone b method_24174 +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult dif$c net/minecraft/class_4732$class_4734 +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult$Double dif$c$a net/minecraft/class_4732$class_4734$class_4735 + f Ljava/lang/Object; first a field_21787 + f Ljava/lang/Object; second b field_21788 + m (Ljava/lang/Object;Ljava/lang/Object;)V + p 1 first + p 2 second +c net/minecraft/world/level/block/DoubleBlockCombiner$NeighborCombineResult$Single dif$c$b net/minecraft/class_4732$class_4734$class_4736 + f Ljava/lang/Object; single a field_21789 + m (Ljava/lang/Object;)V + p 1 single +c net/minecraft/world/level/block/DoublePlantBlock dig net/minecraft/class_2320 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46338 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF b field_10929 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)V placeAt a method_10021 + p 0 level + p 1 state + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;)V preventDropFromBottomPart b method_30036 + p 0 level + p 1 pos + p 2 state + p 3 player + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; copyWaterloggedFrom c method_37458 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DragonEggBlock dih net/minecraft/class_2328 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46339 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10950 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V teleport d method_10047 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/DropExperienceBlock dii net/minecraft/class_2431 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46340 + f Lnet/minecraft/util/valueproviders/IntProvider; xpRange b field_27195 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54011 a method_54011 + m (Lnet/minecraft/world/level/block/DropExperienceBlock;)Lnet/minecraft/util/valueproviders/IntProvider; method_54012 a method_54012 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 xpRange + p 2 properties + m ()V +c net/minecraft/world/level/block/DropperBlock dij net/minecraft/class_2325 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46341 + f Lorg/slf4j/Logger; LOGGER f field_46213 + f Lnet/minecraft/core/dispenser/DispenseItemBehavior; DISPENSE_BEHAVIOUR g field_10949 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/EnchantingTableBlock dik net/minecraft/class_2331 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46342 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10951 + f Ljava/util/List; BOOKSHELF_OFFSETS c field_36535 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17467 a method_17467 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isValidBookShelf a method_40445 + p 0 level + p 1 enchantingTablePos + p 2 bookshelfPos + m (Lnet/minecraft/core/BlockPos;)Z method_40446 a method_40446 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndGatewayBlock dil net/minecraft/class_2329 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46343 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; calculateExitMovement a method_60989 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndPortalBlock dim net/minecraft/class_2334 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46344 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_10959 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndPortalFrameBlock din net/minecraft/class_2333 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46345 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_10954 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_EYE c field_10958 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE_SHAPE d field_10956 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EYE_SHAPE e field_10953 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_SHAPE f field_10955 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; portalShape g field_10957 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreatePortalShape b method_10054 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EndRodBlock dio net/minecraft/class_5551 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46346 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/EnderChestBlock dip net/minecraft/class_2336 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46347 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_10966 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_10968 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_10967 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE f field_17363 + m (Lnet/minecraft/world/inventory/PlayerEnderChestContainer;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_55773 a method_55773 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24205 m method_24205 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/EntityBlock diq net/minecraft/class_2343 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/gameevent/GameEventListener; getListener a method_32896 + p 1 level + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; getTicker a method_31645 + p 1 level + p 2 state + p 3 blockEntityType + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/entity/BlockEntity; newBlockEntity a method_10123 + p 1 pos + p 2 state +c net/minecraft/world/level/block/EquipableCarvedPumpkinBlock dir net/minecraft/class_8574 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46348 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FaceAttachedHorizontalDirectionalBlock dis net/minecraft/class_2341 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; FACE K field_11007 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttach b method_20046 + p 0 reader + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection m method_10119 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FaceAttachedHorizontalDirectionalBlock$1 dis$1 net/minecraft/class_2341$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace a field_11008 + m ()V +c net/minecraft/world/level/block/Fallable dit net/minecraft/class_5688 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; getFallDamageSource a method_32898 + p 1 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/item/FallingBlockEntity;)V onBrokenAfterFall a method_10129 + p 1 level + p 2 pos + p 3 fallingBlock + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/item/FallingBlockEntity;)V onLand a method_10127 + p 1 level + p 2 pos + p 3 state + p 4 replaceableState + p 5 fallingBlock +c net/minecraft/world/level/block/FallingBlock diu net/minecraft/class_2346 + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;)V falling a method_10132 + p 1 entity + m ()I getDelayAfterPlace b method_26154 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getDustColor b method_10130 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFree m method_10128 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/FarmBlock div net/minecraft/class_2344 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46349 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; MOISTURE b field_11009 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11010 + f I MAX_MOISTURE d field_31084 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V turnToDirt a method_10125 + p 0 entity + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z shouldMaintainFarmland a method_10124 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isNearWater a method_10126 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FenceBlock diw net/minecraft/class_2354 + f Lcom/mojang/serialization/MapCodec; CODEC i field_46350 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; occlusionByIndex j field_11066 + m (Lnet/minecraft/world/level/block/state/BlockState;ZLnet/minecraft/core/Direction;)Z connectsTo a method_10184 + p 1 state + p 2 isSideSolid + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSameFence m method_26375 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FenceGateBlock dix net/minecraft/class_2349 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_OCCLUSION_SHAPE_LOW F field_11027 + f Lnet/minecraft/world/level/block/state/properties/WoodType; type G field_42758 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46351 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN b field_11026 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11021 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; IN_WALL d field_11024 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SHAPE e field_11022 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SHAPE f field_11017 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SHAPE_LOW g field_11025 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SHAPE_LOW h field_11016 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_COLLISION_SHAPE i field_11028 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_COLLISION_SHAPE j field_11019 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_SUPPORT_SHAPE k field_40744 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_SUPPORT_SHAPE l field_40745 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_OCCLUSION_SHAPE m field_11018 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_OCCLUSION_SHAPE n field_11023 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_OCCLUSION_SHAPE_LOW o field_11020 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54013 a method_54013 + m (Lnet/minecraft/world/level/block/FenceGateBlock;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_54014 a method_54014 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z connectsToDirection a method_16703 + p 0 state + p 1 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isWall m method_10138 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/FenceGateBlock$1 dix$1 net/minecraft/class_2349$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_11029 + m ()V +c net/minecraft/world/level/block/FireBlock diy net/minecraft/class_2358 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB F field_26657 + f Ljava/util/Map; shapesCache G field_26658 + f I IGNITE_INSTANT H field_31085 + f I IGNITE_EASY I field_31086 + f I IGNITE_MEDIUM J field_31087 + f I IGNITE_HARD K field_31088 + f I BURN_INSTANT L field_31089 + f I BURN_EASY M field_31090 + f I BURN_MEDIUM N field_31091 + f I BURN_HARD O field_31092 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; igniteOdds P field_11095 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; burnOdds Q field_11091 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46352 + f I MAX_AGE d field_31093 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE e field_11092 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH f field_11096 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST g field_11094 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH h field_11089 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST i field_11088 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP j field_11093 + f Ljava/util/Map; PROPERTY_BY_DIRECTION k field_11090 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB l field_26653 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB m field_26654 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB n field_26655 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB o field_26656 + m (Lnet/minecraft/util/RandomSource;)I getFireTickDelay a method_26155 + c Gets the delay before this block ticks again (without counting random ticks) + p 0 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z isNearRain a method_10192 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;I)V checkBurnOut a method_10196 + p 1 level + p 2 pos + p 3 chance + p 4 random + p 5 age + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/world/level/block/state/BlockState; getStateWithAge a method_24855 + p 1 level + p 2 pos + p 3 age + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)I getIgniteOdds a method_10194 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;II)V setFlammable a method_10189 + p 1 block + p 2 encouragement + p 3 flammability + m (Ljava/util/Map$Entry;)Z method_10197 a method_10197 + m ()V bootStrap b method_10199 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement b method_10198 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isValidFireLocation d method_10193 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_31016 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getBurnOdds n method_10190 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getIgniteOdds o method_10191 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_31017 p method_31017 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FletchingTableBlock diz net/minecraft/class_3712 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46353 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/FlowerBlock dja net/minecraft/class_2356 + f Lcom/mojang/serialization/MapCodec; EFFECTS_FIELD a field_46354 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46355 + f F AABB_OFFSET c field_31094 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_11085 + f Lnet/minecraft/world/item/component/SuspiciousStewEffects; suspiciousStewEffects e field_45775 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54016 a method_54016 + m (Lnet/minecraft/core/Holder;F)Lnet/minecraft/world/item/component/SuspiciousStewEffects; makeEffectList a method_54015 + p 0 effect + p 1 seconds + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 effect + p 2 seconds + p 3 properties + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 suspiciousStewEffects + p 2 properties + m ()V +c net/minecraft/world/level/block/FlowerPotBlock djb net/minecraft/class_2362 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46356 + f F AABB_SIZE b field_31095 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11102 + f Ljava/util/Map; POTTED_BY_CONTENT d field_11103 + f Lnet/minecraft/world/level/block/Block; potted e field_11101 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54017 a method_54017 + m (Lnet/minecraft/world/level/block/FlowerPotBlock;)Lnet/minecraft/world/level/block/Block; method_54018 a method_54018 + m ()Lnet/minecraft/world/level/block/Block; getPotted b method_16231 + m ()Z isEmpty m method_31646 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 potted + p 2 properties + m ()V +c net/minecraft/world/level/block/FrogspawnBlock djc net/minecraft/class_7113 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46357 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_37578 + f I MIN_TADPOLES_SPAWN c field_37579 + f I MAX_TADPOLES_SPAWN d field_37580 + f I DEFAULT_MIN_HATCH_TICK_DELAY e field_37581 + f I DEFAULT_MAX_HATCH_TICK_DELAY f field_37582 + f I minHatchTickDelay g field_37583 + f I maxHatchTickDelay h field_37584 + m (II)V setHatchDelay a method_41425 + p 0 minHatchDelay + p 1 maxHatchDelay + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V hatchFrogspawn a method_41426 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/util/RandomSource;)I getFrogspawnHatchDelay a method_41429 + p 0 random + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z mayPlaceOn a method_41427 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V destroyBlock a method_41428 + p 1 level + p 2 pos + m ()V setDefaultHatchDelay b method_41431 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V spawnTadpoles b method_41430 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/util/RandomSource;)D getRandomTadpolePositionOffset b method_44015 + p 1 random + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FrostedIceBlock djd net/minecraft/class_2360 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46358 + f I MAX_AGE b field_31096 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11097 + f I NEIGHBORS_TO_AGE f field_31097 + f I NEIGHBORS_TO_MELT g field_31098 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;I)Z fewerNeigboursThan a method_10202 + p 1 level + p 2 pos + p 3 neighborsRequired + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z slightlyMelt e method_10201 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/FungusBlock dje net/minecraft/class_4771 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46359 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_22134 + f D BONEMEAL_SUCCESS_PROBABILITY c field_31099 + f Lnet/minecraft/world/level/block/Block; requiredBlock d field_41074 + f Lnet/minecraft/resources/ResourceKey; feature e field_22135 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)V method_46682 a method_46682 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54019 a method_54019 + m (Lnet/minecraft/world/level/LevelReader;)Ljava/util/Optional; getFeature a method_46683 + p 1 level + m (Lnet/minecraft/world/level/block/FungusBlock;)Lnet/minecraft/world/level/block/Block; method_54020 a method_54020 + m (Lnet/minecraft/world/level/block/FungusBlock;)Lnet/minecraft/resources/ResourceKey; method_54021 b method_54021 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 feature + p 2 requiredBlock + p 3 properties + m ()V +c net/minecraft/world/level/block/FurnaceBlock djf net/minecraft/class_3865 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46360 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GameMasterBlock djg net/minecraft/class_5552 +c net/minecraft/world/level/block/GlazedTerracottaBlock djh net/minecraft/class_2366 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46362 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GlowLichenBlock dji net/minecraft/class_5777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46363 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_28412 + f Lnet/minecraft/world/level/block/MultifaceSpreader; spreader d field_37585 + m (ILnet/minecraft/world/level/block/state/BlockState;)I method_37363 a method_37363 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z method_34727 a method_34727 + m (I)Ljava/util/function/ToIntFunction; emission b method_37364 + p 0 light + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GrassBlock djj net/minecraft/class_2372 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46364 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/GrindstoneBlock djk net/minecraft/class_3713 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_ALL_LEGS F field_16362 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_GRINDSTONE G field_16338 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_POST H field_16352 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_POST I field_16377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_PIVOT J field_16393 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_PIVOT L field_16371 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_LEFT_LEG M field_16340 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_RIGHT_LEG N field_16354 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_ALL_LEGS O field_16369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_SOUTH_GRINDSTONE P field_16399 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_POST Q field_16363 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_POST R field_16347 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_PIVOT S field_16401 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_PIVOT T field_16367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_LEFT_LEG U field_16388 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_RIGHT_LEG V field_16396 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_ALL_LEGS W field_16368 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_NORTH_GRINDSTONE X field_16356 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_POST Y field_16342 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_POST Z field_16358 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_LEG aA field_16395 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_LEG aB field_16360 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_ALL_LEGS aC field_16389 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_GRINDSTONE aD field_16383 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46365 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE aR field_17364 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_PIVOT aa field_16390 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_PIVOT ab field_16382 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_LEFT_LEG ac field_16359 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_RIGHT_LEG ad field_16351 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_ALL_LEGS ae field_16344 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_WEST_GRINDSTONE af field_16376 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_POST ag field_16394 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_POST ah field_16375 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_PIVOT ai field_16345 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_PIVOT aj field_16350 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_LEFT_LEG ak field_16372 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_RIGHT_LEG al field_16381 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_ALL_LEGS am field_16391 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WALL_EAST_GRINDSTONE an field_16370 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_POST ao field_16341 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_POST ap field_16355 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_PIVOT aq field_16384 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_PIVOT ar field_16400 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_LEFT_LEG as field_16364 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_RIGHT_LEG at field_16349 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_ALL_LEGS au field_16397 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_NORTH_SOUTH_GRINDSTONE av field_16361 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_POST aw field_16387 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_POST ax field_16398 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_LEFT_PIVOT ay field_16357 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CEILING_EAST_WEST_RIGHT_PIVOT az field_16353 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_POST b field_16379 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_POST c field_16392 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_PIVOT d field_16366 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_PIVOT e field_16339 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_LEFT_LEG f field_16348 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_RIGHT_LEG g field_16365 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_ALL_LEGS h field_16385 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_NORTH_SOUTH_GRINDSTONE i field_16380 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_POST j field_16373 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_POST k field_16346 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_PIVOT l field_16343 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_PIVOT m field_16374 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_LEFT_LEG n field_16386 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FLOOR_EAST_WEST_RIGHT_LEG o field_16378 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17469 a method_17469 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVoxelShape n method_16119 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/GrindstoneBlock$1 djk$1 net/minecraft/class_3713$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace a field_16402 + m ()V +c net/minecraft/world/level/block/GrowingPlantBlock djl net/minecraft/class_4863 + f Lnet/minecraft/core/Direction; growthDirection a field_22507 + f Z scheduleFluidTicks b field_22508 + f Lnet/minecraft/world/phys/shapes/VoxelShape; shape d field_23080 + m (Lnet/minecraft/world/level/LevelAccessor;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_24948 + p 1 level + m ()Lnet/minecraft/world/level/block/Block; getBodyBlock b method_24946 + m ()Lnet/minecraft/world/level/block/GrowingPlantHeadBlock; getHeadBlock c method_24945 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canAttachTo m method_24947 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;Z)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks +c net/minecraft/world/level/block/GrowingPlantBodyBlock djm net/minecraft/class_4864 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getHeadPos a method_25960 + p 1 level + p 2 pos + p 3 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateHeadAfterConvertedFromBody a method_33624 + p 1 head + p 2 body + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;Z)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks +c net/minecraft/world/level/block/GrowingPlantHeadBlock djn net/minecraft/class_4865 + f D growPerTickProbability c field_22510 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE e field_22509 + f I MAX_AGE f field_31100 + m (Lnet/minecraft/util/RandomSource;)I getBlocksToGrowWhenBonemealed a method_26376 + p 1 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; getGrowIntoState a method_33626 + p 1 state + p 2 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; updateBodyAfterConvertedFromHead a method_33625 + p 1 head + p 2 body + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canGrowInto g method_24949 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getMaxAgeState n method_38232 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge o method_38233 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/shapes/VoxelShape;ZD)V + p 1 properties + p 2 growthDirection + p 3 shape + p 4 scheduleFluidTicks + p 5 growPerTickProbability + m ()V +c net/minecraft/world/level/block/HalfTransparentBlock djo net/minecraft/class_2373 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46366 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HangingRootsBlock djp net/minecraft/class_5806 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_28689 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_33642 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HayBlock djq net/minecraft/class_2380 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46368 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HeavyCoreBlock djr net/minecraft/class_9366 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49831 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_49833 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/HoneyBlock djs net/minecraft/class_4622 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_21213 + f D SLIDE_STARTS_WHEN_VERTICAL_SPEED_IS_AT_LEAST c field_31101 + f D MIN_FALL_SPEED_TO_BE_CONSIDERED_SLIDING e field_31102 + f D THROTTLE_SLIDE_SPEED_TO f field_31103 + f I SLIDE_ADVANCEMENT_CHECK_INTERVAL g field_31104 + m (Lnet/minecraft/world/entity/Entity;)V showSlideParticles a method_24175 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;I)V showParticles a method_23355 + p 0 entity + p 1 particleCount + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)V maybeDoSlideAchievement a method_24176 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)V maybeDoSlideEffects a method_24177 + p 1 level + p 2 entity + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z isSlidingDown a method_23356 + p 1 pos + p 2 entity + m (Lnet/minecraft/world/entity/Entity;)V showJumpParticles b method_24178 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)Z doesEntityDoHoneyBlockSlideEffects c method_24179 + p 0 entity + m (Lnet/minecraft/world/entity/Entity;)V doSlideMovement d method_24180 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HopperBlock djt net/minecraft/class_2377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_INTERACTION_SHAPE F field_11123 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_INTERACTION_SHAPE G field_11128 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_INTERACTION_SHAPE H field_11135 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46370 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11129 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ENABLED c field_11126 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP d field_11131 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FUNNEL e field_11127 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CONVEX_BASE f field_11121 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INSIDE g field_49154 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE h field_11132 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_SHAPE i field_11120 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_SHAPE j field_11134 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_SHAPE k field_11124 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_SHAPE l field_11122 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_SHAPE m field_11130 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_INTERACTION_SHAPE n field_11125 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_INTERACTION_SHAPE o field_11133 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkPoweredState a method_10217 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HopperBlock$1 djt$1 net/minecraft/class_2377$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11136 + m ()V +c net/minecraft/world/level/block/HorizontalDirectionalBlock dju net/minecraft/class_2383 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING aE field_11177 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/HugeMushroomBlock djv net/minecraft/class_2381 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46371 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH b field_11171 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST c field_11172 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH d field_11170 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST e field_11167 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP f field_11166 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN g field_11169 + f Ljava/util/Map; PROPERTY_BY_DIRECTION h field_11168 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/IceBlock djw net/minecraft/class_2386 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46372 + m ()Lnet/minecraft/world/level/block/state/BlockState; meltsInto b method_51170 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V melt d method_10275 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/InfestedBlock djx net/minecraft/class_2384 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46373 + f Lnet/minecraft/world/level/block/Block; hostBlock b field_11178 + f Ljava/util/Map; BLOCK_BY_HOST_BLOCK c field_11179 + f Ljava/util/Map; HOST_TO_INFESTED_STATES d field_33564 + f Ljava/util/Map; INFESTED_TO_HOST_STATES e field_33565 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnInfestation a method_24797 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54022 a method_54022 + m (Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/block/state/BlockState; getNewStateWithProperties a method_36363 + p 0 stateMap + p 1 state + p 2 supplier + m (Ljava/util/function/Supplier;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_36364 a method_36364 + m ()Lnet/minecraft/world/level/block/Block; getHostBlock b method_10271 + m ()Lnet/minecraft/world/level/block/state/BlockState; method_36365 m method_36365 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCompatibleHostBlock m method_10269 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; infestedStateByHost n method_36366 + p 0 host + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; hostStateByInfested o method_10270 + p 1 infested + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_36367 p method_36367 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 hostBlock + p 2 properties + m ()V +c net/minecraft/world/level/block/InfestedRotatedPillarBlock djy net/minecraft/class_6348 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46374 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54023 a method_54023 + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/IronBarsBlock djz net/minecraft/class_2389 + f Lcom/mojang/serialization/MapCodec; CODEC i field_46375 + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Z attachsTo a method_10281 + p 1 state + p 2 solidSide + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/JigsawBlock dka net/minecraft/class_3748 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46376 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION b field_23262 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Z canAttach a method_16546 + p 0 info + p 1 info2 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; method_26377 a method_26377 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getFrontFacing m method_26378 + c This represents the face that the puzzle piece is on. To connect: 2 jigsaws must have their puzzle piece face facing each other. + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getTopFacing n method_26379 + c This represents the face that the line connector is on. To connect, if the OrientationType is ALIGNED, the two lines must be in the same direction. (Their textures will form one straight line) + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/JukeboxBlock dkb net/minecraft/class_2387 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46377 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_RECORD b field_11180 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/KelpBlock dkc net/minecraft/class_2393 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46378 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_11195 + f D GROW_PER_TICK_PROBABILITY h field_31105 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/KelpPlantBlock dkd net/minecraft/class_2391 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46379 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/LadderBlock dke net/minecraft/class_2399 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46380 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11253 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_11257 + f F AABB_OFFSET d field_31106 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB e field_11255 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB f field_11252 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB g field_11254 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB h field_11256 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttachTo a method_10305 + p 1 blockReader + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LadderBlock$1 dke$1 net/minecraft/class_2399$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11258 + m ()V +c net/minecraft/world/level/block/LanternBlock dkf net/minecraft/class_3749 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46381 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING b field_16545 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_26441 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB d field_16546 + f Lnet/minecraft/world/phys/shapes/VoxelShape; HANGING_AABB e field_16544 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/core/Direction; getConnectedDirection m method_16370 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LavaCauldronBlock dkg net/minecraft/class_5553 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46382 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/LayeredCauldronBlock dkh net/minecraft/class_5556 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46383 + f I MIN_FILL_LEVEL e field_31107 + f I MAX_FILL_LEVEL f field_31108 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL g field_27206 + f I BASE_CONTENT_HEIGHT h field_31109 + f D HEIGHT_PER_LEVEL i field_31110 + f Lnet/minecraft/world/level/biome/Biome$Precipitation; precipitationType j field_46384 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54024 a method_54024 + m (Lnet/minecraft/world/level/block/LayeredCauldronBlock;)Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap; method_54025 a method_54025 + m (Lnet/minecraft/world/level/block/LayeredCauldronBlock;)Lnet/minecraft/world/level/biome/Biome$Precipitation; method_54026 b method_54026 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V lowerFillLevel d method_31650 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V handleEntityOnFireInside e method_36994 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/biome/Biome$Precipitation;Lnet/minecraft/core/cauldron/CauldronInteraction$InteractionMap;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 precipitationType + p 2 interactions + p 3 properties + m ()V +c net/minecraft/world/level/block/LeavesBlock dki net/minecraft/class_2397 + f I TICK_DELAY a field_31112 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46385 + f I DECAY_DISTANCE c field_31111 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE d field_11199 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PERSISTENT e field_11200 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_38227 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateDistance a method_10300 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z decaying m method_42311 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/OptionalInt; getOptionalDistanceAt n method_49817 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getDistanceAt o method_10302 + p 0 neighbor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LecternBlock dkj net/minecraft/class_3715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46386 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_16404 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_17365 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOOK d field_17366 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BASE e field_16406 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_POST f field_16405 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_COMMON g field_16403 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_TOP_PLATE h field_17367 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_COLLISION i field_17368 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_WEST j field_17369 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_NORTH k field_17370 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_EAST l field_17371 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_SOUTH m field_17372 + f I PAGE_CHANGE_IMPULSE_TICKS n field_31113 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V resetBookState a method_17473 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 hasBook + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;)Z tryPlaceBook a method_17472 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V openScreen a method_17470 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V signalPageChange a method_17471 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V changePowered a method_17476 + p 0 level + p 1 pos + p 2 state + p 3 powered + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/ItemStack;)V placeBook b method_17475 + p 0 entity + p 1 level + p 2 pos + p 3 state + p 4 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateBelow b method_17474 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V popBook d method_17477 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LecternBlock$1 dkj$1 net/minecraft/class_3715$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15363 + m ()V +c net/minecraft/world/level/block/LevelEvent dkk net/minecraft/class_6088 + f I SOUND_CHORUS_DEATH A field_31122 + f I SOUND_BREWING_STAND_BREW B field_31123 + f I SOUND_END_PORTAL_SPAWN C field_31126 + f I SOUND_PHANTOM_BITE D field_31127 + f I SOUND_ZOMBIE_TO_DROWNED E field_31128 + f I SOUND_HUSK_TO_ZOMBIE F field_31129 + f I SOUND_GRINDSTONE_USED G field_31130 + f I SOUND_PAGE_TURN H field_31131 + f I SOUND_SMITHING_TABLE_USED I field_31132 + f I SOUND_POINTED_DRIPSTONE_LAND J field_31133 + f I SOUND_DRIP_LAVA_INTO_CAULDRON K field_31134 + f I SOUND_DRIP_WATER_INTO_CAULDRON L field_31135 + f I SOUND_SKELETON_TO_STRAY M field_31136 + f I SOUND_CRAFTER_CRAFT N field_46805 + f I SOUND_CRAFTER_FAIL O field_46806 + f I SOUND_WIND_CHARGE_SHOOT P field_51787 + f I COMPOSTER_FILL Q field_31137 + f I LAVA_FIZZ R field_31138 + f I REDSTONE_TORCH_BURNOUT S field_31139 + f I END_PORTAL_FRAME_FILL T field_31141 + f I DRIPSTONE_DRIP U field_31142 + f I PARTICLES_AND_SOUND_PLANT_GROWTH V field_33511 + f I PARTICLES_SHOOT_SMOKE W field_31143 + f I PARTICLES_DESTROY_BLOCK X field_31144 + f I PARTICLES_SPELL_POTION_SPLASH Y field_31145 + f I PARTICLES_EYE_OF_ENDER_DEATH Z field_31146 + f I ANIMATION_SPAWN_COBWEB aA field_50164 + f I PARTICLES_TRIAL_SPAWNER_DETECT_PLAYER_OMINOUS aB field_50165 + f I PARTICLES_TRIAL_SPAWNER_BECOME_OMINOUS aC field_50166 + f I PARTICLES_TRIAL_SPAWNER_SPAWN_ITEM aD field_50167 + f I SOUND_DISPENSER_DISPENSE a field_31140 + f I PARTICLES_MOBBLOCK_SPAWN aa field_31147 + f I PARTICLES_DRAGON_FIREBALL_SPLASH ab field_31149 + f I PARTICLES_INSTANT_POTION_SPLASH ac field_31150 + f I PARTICLES_DRAGON_BLOCK_BREAK ad field_31151 + f I PARTICLES_WATER_EVAPORATING ae field_31152 + f I PARTICLES_SHOOT_WHITE_SMOKE af field_46807 + f I PARTICLES_BEE_GROWTH ag field_47837 + f I PARTICLES_TURTLE_EGG_PLACEMENT ah field_47838 + f I PARTICLES_SMASH_ATTACK ai field_50168 + f I ANIMATION_END_GATEWAY_SPAWN aj field_31153 + f I ANIMATION_DRAGON_SUMMON_ROAR ak field_31154 + f I PARTICLES_ELECTRIC_SPARK al field_31155 + f I PARTICLES_AND_SOUND_WAX_ON am field_31156 + f I PARTICLES_WAX_OFF an field_31157 + f I PARTICLES_SCRAPE ao field_31158 + f I PARTICLES_SCULK_CHARGE ap field_37586 + f I PARTICLES_SCULK_SHRIEK aq field_38228 + f I PARTICLES_AND_SOUND_BRUSH_BLOCK_COMPLETE ar field_42759 + f I PARTICLES_EGG_CRACK as field_43238 + f I PARTICLES_TRIAL_SPAWNER_SPAWN at field_47340 + f I PARTICLES_TRIAL_SPAWNER_SPAWN_MOB_AT au field_47341 + f I PARTICLES_TRIAL_SPAWNER_DETECT_PLAYER av field_47342 + f I ANIMATION_TRIAL_SPAWNER_EJECT_ITEM aw field_47343 + f I ANIMATION_VAULT_ACTIVATE ax field_48852 + f I ANIMATION_VAULT_DEACTIVATE ay field_48853 + f I ANIMATION_VAULT_EJECT_ITEM az field_48854 + f I SOUND_DISPENSER_FAIL b field_31159 + f I SOUND_DISPENSER_PROJECTILE_LAUNCH c field_31160 + f I SOUND_FIREWORK_SHOOT d field_31162 + f I SOUND_EXTINGUISH_FIRE e field_31167 + f I SOUND_PLAY_JUKEBOX_SONG f field_42760 + f I SOUND_STOP_JUKEBOX_SONG g field_42761 + f I SOUND_GHAST_WARNING h field_31173 + f I SOUND_GHAST_FIREBALL i field_31174 + f I SOUND_DRAGON_FIREBALL j field_31175 + f I SOUND_BLAZE_FIREBALL k field_31176 + f I SOUND_ZOMBIE_WOODEN_DOOR l field_31177 + f I SOUND_ZOMBIE_IRON_DOOR m field_31178 + f I SOUND_ZOMBIE_DOOR_CRASH n field_31179 + f I SOUND_WITHER_BLOCK_BREAK o field_31180 + f I SOUND_WITHER_BOSS_SPAWN p field_31181 + f I SOUND_WITHER_BOSS_SHOOT q field_31182 + f I SOUND_BAT_LIFTOFF r field_31183 + f I SOUND_ZOMBIE_INFECTED s field_31114 + f I SOUND_ZOMBIE_CONVERTED t field_31115 + f I SOUND_DRAGON_DEATH u field_31116 + f I SOUND_ANVIL_BROKEN v field_31117 + f I SOUND_ANVIL_USED w field_31118 + f I SOUND_ANVIL_LAND x field_31119 + f I SOUND_PORTAL_TRAVEL y field_31120 + f I SOUND_CHORUS_GROW z field_31121 + m ()V +c net/minecraft/world/level/block/LeverBlock dkl net/minecraft/class_2401 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46387 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_11265 + f I DEPTH c field_31184 + f I WIDTH d field_31185 + f I HEIGHT e field_31186 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB f field_11267 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB g field_11263 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB h field_11260 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB i field_11262 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB_Z j field_11264 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB_X k field_11261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB_Z l field_11268 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB_X m field_11266 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V playSound a method_60283 + p 0 player + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;F)V makeParticle a method_10308 + p 0 state + p 1 level + p 2 pos + p 3 alpha + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V pull b method_21846 + p 1 state + p 2 level + p 3 pos + p 4 player + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours d method_10309 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LeverBlock$1 dkl$1 net/minecraft/class_2401$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11271 + f [I $SwitchMap$net$minecraft$core$Direction b field_11270 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$AttachFace c field_11269 + m ()V +c net/minecraft/world/level/block/LightBlock dkm net/minecraft/class_6089 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46388 + f I MAX_LEVEL b field_33722 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL c field_31187 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_31188 + f Ljava/util/function/ToIntFunction; LIGHT_EMISSION e field_31189 + m (Lnet/minecraft/world/item/ItemStack;I)Lnet/minecraft/world/item/ItemStack; setLightOnStack a method_47377 + p 0 stack + p 1 light + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_35281 m method_35281 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LightningRodBlock dkn net/minecraft/class_5554 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46389 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_29562 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_27193 + f I RANGE e field_31190 + f I ACTIVATION_TICKS k field_31192 + f I SPARK_CYCLE l field_31191 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V onLightningStrike d method_31648 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighbours e method_33627 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/LiquidBlock dko net/minecraft/class_2404 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46390 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL b field_11278 + f Lnet/minecraft/world/level/material/FlowingFluid; fluid c field_11279 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STABLE_SHAPE d field_24412 + f Lcom/google/common/collect/ImmutableList; POSSIBLE_FLOW_DIRECTIONS e field_34006 + f Lcom/mojang/serialization/Codec; FLOWING_FLUID f field_46391 + f Ljava/util/List; stateCache g field_11276 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54027 a method_54027 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z shouldSpreadLiquid a method_10316 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V fizz a method_10318 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/LiquidBlock;)Lnet/minecraft/world/level/material/FlowingFluid; method_54028 a method_54028 + m (Lnet/minecraft/world/level/material/FlowingFluid;)Lnet/minecraft/world/level/material/Fluid; method_54029 a method_54029 + m (Lnet/minecraft/world/level/material/Fluid;)Lcom/mojang/serialization/DataResult; method_54030 a method_54030 + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_54031 b method_54031 + m (Lnet/minecraft/world/level/material/FlowingFluid;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 fluid + p 2 properties + m ()V +c net/minecraft/world/level/block/LiquidBlockContainer dkp net/minecraft/class_2402 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canPlaceLiquid a method_10310 + p 1 player + p 2 level + p 3 pos + p 4 state + p 5 fluid + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Z placeLiquid a method_10311 + p 1 level + p 2 pos + p 3 state + p 4 fluidState +c net/minecraft/world/level/block/LoomBlock dkq net/minecraft/class_2406 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46392 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE b field_17373 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17478 a method_17478 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MagmaBlock dkr net/minecraft/class_2413 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46393 + f I BUBBLE_COLUMN_CHECK_DELAY b field_31193 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MangroveLeavesBlock dks net/minecraft/class_7114 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46394 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/MangrovePropaguleBlock dkt net/minecraft/class_7115 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46395 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_37588 + f I MAX_AGE c field_37589 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING d field_37591 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_PER_AGE j field_37592 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED k field_37590 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54032 a method_54032 + m (Lnet/minecraft/world/level/block/MangrovePropaguleBlock;)Lnet/minecraft/world/level/block/grower/TreeGrower; method_54033 a method_54033 + m (I)Lnet/minecraft/world/level/block/state/BlockState; createNewHangingPropagule b method_43130 + p 0 age + m ()Lnet/minecraft/world/level/block/state/BlockState; createNewHangingPropagule c method_41434 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isHanging m method_41435 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isFullyGrown n method_41436 + p 0 state + m (Lnet/minecraft/world/level/block/grower/TreeGrower;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 treeGrower + p 2 properties + m ()V +c net/minecraft/world/level/block/MangroveRootsBlock dku net/minecraft/class_7116 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46396 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED b field_37593 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/Mirror dkv net/minecraft/class_2415 + f Lnet/minecraft/world/level/block/Mirror; NONE a field_11302 + f Lnet/minecraft/world/level/block/Mirror; LEFT_RIGHT b field_11300 + f Lnet/minecraft/world/level/block/Mirror; FRONT_BACK c field_11301 + f Lcom/mojang/serialization/Codec; CODEC d field_39311 + f Ljava/lang/String; id e field_39312 + f Lnet/minecraft/network/chat/Component; symbol f field_27883 + f Lcom/mojang/math/OctahedralGroup; rotation g field_23263 + f [Lnet/minecraft/world/level/block/Mirror; $VALUES h field_11299 + m ()Lcom/mojang/math/OctahedralGroup; rotation a method_26380 + m (II)I mirror a method_10344 + c Mirrors the given rotation like specified by this mirror. Rotations start at 0 and go up to rotationCount-1. 0 is front, rotationCount/2 is back. + p 1 rotation + p 2 rotationCount + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/Rotation; getRotation a method_10345 + c Determines the rotation that is equivalent to this mirror if the rotating object faces in the given direction + p 1 facing + m ()Lnet/minecraft/network/chat/Component; symbol b method_32354 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; mirror b method_10343 + c Mirror the given facing according to this mirror + p 1 facing + m ()[Lnet/minecraft/world/level/block/Mirror; $values d method_36706 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/OctahedralGroup;)V + p 3 id + p 4 rotation + m ()V +c net/minecraft/world/level/block/MossBlock dkw net/minecraft/class_5807 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46397 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46684 a method_46684 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46685 a method_46685 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MudBlock dkx net/minecraft/class_7117 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46398 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_37594 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/MultifaceBlock dky net/minecraft/class_5778 + f F AABB_OFFSET a field_31194 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_28421 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB c field_28413 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB d field_28414 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB e field_28415 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB f field_28416 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB g field_28417 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_28418 + f Ljava/util/Map; PROPERTY_BY_DIRECTION i field_28419 + f Ljava/util/Map; SHAPE_BY_DIRECTION j field_28420 + f Lcom/google/common/collect/ImmutableMap; shapesCache k field_28422 + f Z canRotate l field_28423 + f Z canMirrorX m field_28424 + f Z canMirrorZ n field_28425 + m (B)Ljava/util/Set; unpack a method_41437 + p 0 packedDirections + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isValidStateForPlacement a method_41438 + p 1 level + p 2 state + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canAttachTo a method_33358 + p 0 level + p 1 direction + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; method_33361 a method_33361 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)Lnet/minecraft/world/level/block/state/BlockState; removeFace a method_33365 + p 0 state + p 1 faceProp + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Function;)Lnet/minecraft/world/level/block/state/BlockState; mapDirections a method_33367 + p 1 state + p 2 directionalFunction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z hasFace a method_33366 + p 0 state + p 1 direction + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Lnet/minecraft/world/level/block/state/BlockState; getDefaultMultifaceState a method_33368 + p 0 stateDefinition + m (Ljava/util/Collection;)B pack a method_41439 + p 0 directions + m (Ljava/util/EnumMap;)V method_33370 a method_33370 + m (Lnet/minecraft/core/Direction;)Z isFaceSupported a method_33369 + p 1 face + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_33372 b method_33372 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; getFaceProperty b method_33374 + p 0 direction + m ()Lnet/minecraft/world/level/block/MultifaceSpreader; getSpreader c method_41432 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement c method_33362 + p 1 currentState + p 2 level + p 3 pos + p 4 lookingDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_33376 c method_33376 + m ()Z isWaterloggable m method_33378 + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Set; availableFaces m method_41440 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnyFace n method_33381 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateMultifaceShape o method_33380 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnyVacantFace p method_33382 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/MultifaceSpreader dkz net/minecraft/class_7118 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; DEFAULT_SPREAD_ORDER a field_37595 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadConfig; config b field_37596 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;Z)Ljava/util/Optional; spreadToFace a method_41441 + p 1 level + p 2 pos + p 3 markForPostprocessing + m (Lnet/minecraft/world/level/LevelAccessor;ZLnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;)Ljava/util/Optional; method_41442 a method_41442 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSpreadInAnyDirection a method_41443 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z method_41444 a method_41444 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPredicate;)Ljava/util/Optional; getSpreadFromFaceTowardDirection a method_41445 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 face + p 6 predicate + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; spreadFromRandomFaceTowardRandomDirection a method_41450 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Direction;)Ljava/util/Optional; method_41451 a method_41451 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Z)Ljava/util/Optional; spreadFromFaceTowardRandomDirection a method_41447 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 random + p 6 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Z)Ljava/util/Optional; spreadFromFaceTowardDirection a method_41446 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 face + p 6 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)J spreadFromFaceTowardAllDirections a method_41448 + p 1 state + p 2 level + p 3 pos + p 4 spreadDirection + p 5 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Ljava/util/Optional; method_41449 a method_41449 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)J spreadAll a method_41452 + p 1 state + p 2 level + p 3 pos + p 4 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/core/Direction;)Ljava/lang/Long; method_41453 a method_41453 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_41454 a method_41454 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Ljava/util/Optional; method_41455 b method_41455 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z method_41456 b method_41456 + m (Lnet/minecraft/world/level/block/MultifaceBlock;)V + p 1 block + m (Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadConfig;)V + p 1 config + m ()V +c net/minecraft/world/level/block/MultifaceSpreader$DefaultSpreaderConfig dkz$a net/minecraft/class_7118$class_7119 + f Lnet/minecraft/world/level/block/MultifaceBlock; block a field_37597 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)Z stateCanBeReplaced a method_41458 + p 1 level + p 2 pos + p 3 spreadPos + p 4 direction + p 5 state + m (Lnet/minecraft/world/level/block/MultifaceBlock;)V + p 1 block +c net/minecraft/world/level/block/MultifaceSpreader$SpreadConfig dkz$b net/minecraft/class_7118$class_7120 + m ()[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; getSpreadTypes a method_41460 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;)Z canSpreadInto a method_41457 + p 1 level + p 2 pos + p 3 spreadPos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Z placeBlock a method_41461 + p 1 level + p 2 pos + p 3 state + p 4 markForPostprocessing + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isOtherBlockValidAsSource a method_41462 + p 1 otherBlock + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; getStateForPlacement a method_41459 + p 1 currentState + p 2 level + p 3 pos + p 4 lookingDirection + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z hasFace a method_41463 + p 1 state + p 2 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z canSpreadFrom b method_41464 + p 1 state + p 2 direction +c net/minecraft/world/level/block/MultifaceSpreader$SpreadPos dkz$c net/minecraft/class_7118$class_7121 + f Lnet/minecraft/core/BlockPos; pos a comp_534 + f Lnet/minecraft/core/Direction; face b comp_535 + m ()Lnet/minecraft/core/BlockPos; pos a comp_534 + m ()Lnet/minecraft/core/Direction; face b comp_535 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadPredicate dkz$d net/minecraft/class_7118$class_7122 +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType dkz$e net/minecraft/class_7118$class_7123 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; SAME_POSITION a field_37598 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; SAME_PLANE b field_37599 + f Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; WRAP_AROUND c field_37600 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; $VALUES d field_37601 + m ()[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; $values a method_41465 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadPos; getSpreadPos a method_41466 + p 1 pos + p 2 face + p 3 spreadDirection + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$1 dkz$e$1 net/minecraft/class_7118$class_7123$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$2 dkz$e$2 net/minecraft/class_7118$class_7123$2 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MultifaceSpreader$SpreadType$3 dkz$e$3 net/minecraft/class_7118$class_7123$3 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/MushroomBlock dla net/minecraft/class_2420 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46399 + f F AABB_OFFSET b field_31195 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11304 + f Lnet/minecraft/resources/ResourceKey; feature d field_27194 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z growMushroom a method_10349 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54034 a method_54034 + m (Lnet/minecraft/world/level/block/MushroomBlock;)Lnet/minecraft/resources/ResourceKey; method_54035 a method_54035 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 feature + p 2 properties + m ()V +c net/minecraft/world/level/block/MyceliumBlock dlb net/minecraft/class_2418 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46400 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/NetherPortalBlock dlc net/minecraft/class_2423 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46401 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS b field_11310 + f I AABB_OFFSET c field_31196 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB d field_11309 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB e field_11308 + f Lorg/slf4j/Logger; LOGGER f field_52060 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Lnet/minecraft/world/level/portal/DimensionTransition; getExitPortal a method_60773 + p 1 level + p 2 entity + p 3 pos + p 4 exitPos + p 5 isNether + p 6 worldBorder + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z method_60990 a method_60990 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;FFLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; createDimensionTransition a method_60774 + p 0 level + p 1 rectangle + p 2 axis + p 3 offset + p 4 entity + p 5 speed + p 6 yRot + p 7 xRot + p 8 postDimensionTransition + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z method_60775 a method_60775 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; getDimensionTransitionFromExit a method_60777 + p 0 entity + p 1 pos + p 2 rectangle + p 3 level + p 4 postDimensionTransition + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V method_60991 a method_60991 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherPortalBlock$1 dlc$1 net/minecraft/class_2423$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11320 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11319 + m ()V +c net/minecraft/world/level/block/NetherSproutsBlock dld net/minecraft/class_4772 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46402 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_22136 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherVines dle net/minecraft/class_4949 + f D GROW_PER_TICK_PROBABILITY a field_31197 + f D BONEMEAL_GROW_PROBABILITY_DECREASE_RATE b field_31198 + m (Lnet/minecraft/util/RandomSource;)I getBlocksToGrowWhenBonemealed a method_26381 + p 0 random + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidGrowthState a method_25961 + p 0 state + m ()V +c net/minecraft/world/level/block/NetherWartBlock dlf net/minecraft/class_2421 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46403 + f I MAX_AGE b field_31199 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11306 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE d field_11305 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NetherrackBlock dlg net/minecraft/class_4773 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46404 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/NoteBlock dlh net/minecraft/class_2428 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46405 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; INSTRUMENT b field_11325 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11326 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; NOTE d field_11324 + f I NOTE_VOLUME e field_41678 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V playNote a method_10367 + p 1 entity + p 2 state + p 3 level + p 4 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/resources/ResourceLocation; getCustomSoundId a method_47886 + p 1 level + p 2 pos + m (I)F getPitchFromNote b method_49818 + p 0 note + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; setInstrument b method_47583 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/NyliumBlock dli net/minecraft/class_4849 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46406 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46686 a method_46686 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V place a method_46687 + p 1 featureRegistry + p 2 featureKey + p 3 level + p 4 chunkGenerator + p 5 random + p 6 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canBeNylium b method_24856 + p 0 state + p 1 reader + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/ObserverBlock dlj net/minecraft/class_2426 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46407 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11322 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighborsInFront a method_10365 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V startSignal a method_10366 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PiglinWallSkullBlock dlk net/minecraft/class_7938 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46408 + f Ljava/util/Map; AABBS e field_41311 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PinkPetalsBlock dll net/minecraft/class_8169 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46409 + f I MIN_FLOWERS b field_42762 + f I MAX_FLOWERS c field_42763 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_42764 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AMOUNT e field_42765 + f Ljava/util/function/BiFunction; SHAPE_BY_PROPERTIES f field_45146 + m (Lnet/minecraft/core/Direction;Ljava/lang/Integer;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_52574 a method_52574 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PipeBlock dlm net/minecraft/class_2429 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_11334 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH b field_11332 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST c field_11335 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH d field_11331 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST e field_11328 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP f field_11327 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN g field_11330 + f Ljava/util/Map; PROPERTY_BY_DIRECTION h field_11329 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; shapeByIndex i field_11333 + m (F)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_10370 + p 1 apothem + m (Ljava/util/EnumMap;)V method_10369 a method_10369 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getAABBIndex m method_10368 + p 1 state + m (FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 apothem + p 2 properties + m ()V +c net/minecraft/world/level/block/PitcherCropBlock dln net/minecraft/class_8237 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46410 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE d field_43239 + f I MAX_AGE e field_43240 + f I DOUBLE_PLANT_AGE_INTERSECTION f field_43241 + f I BONEMEAL_INCREASE g field_43391 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_UPPER_SHAPE h field_43244 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FULL_LOWER_SHAPE i field_43245 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE_BULB j field_43246 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLISION_SHAPE_CROP k field_43247 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; UPPER_SHAPE_BY_AGE l field_44477 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; LOWER_SHAPE_BY_AGE m field_44478 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;I)V grow a method_49819 + p 1 level + p 2 state + p 3 pos + p 4 ageIncrement + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canGrowInto a method_49820 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z canGrow a method_52266 + p 1 reader + p 2 pos + p 3 state + p 4 age + m (I)Z isDouble b method_52575 + p 0 age + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z sufficientLight b method_52267 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/PitcherCropBlock$PosAndState; getLowerHalf d method_52268 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLower m method_51171 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isMaxAge n method_49821 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PitcherCropBlock$PosAndState dln$a net/minecraft/class_8237$class_8587 + f Lnet/minecraft/core/BlockPos; pos a comp_1551 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_1552 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1551 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_1552 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/PlayerHeadBlock dlo net/minecraft/class_2435 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46411 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PlayerWallHeadBlock dlp net/minecraft/class_2433 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46412 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PointedDripstoneBlock dlq net/minecraft/class_5689 + f F STALAGMITE_FALL_DISTANCE_OFFSET F field_31201 + f I STALAGMITE_FALL_DAMAGE_MODIFIER G field_31202 + f F AVERAGE_DAYS_PER_GROWTH H field_33566 + f F GROWTH_PROBABILITY_PER_RANDOM_TICK I field_33567 + f I MAX_GROWTH_LENGTH J field_33568 + f I MAX_STALAGMITE_SEARCH_RANGE_WHEN_GROWING K field_33569 + f F STALACTITE_DRIP_START_PIXEL L field_31203 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_MERGE_SHAPE M field_28053 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_SHAPE_UP N field_28054 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TIP_SHAPE_DOWN O field_28055 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FRUSTUM_SHAPE P field_28058 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MIDDLE_SHAPE Q field_28056 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BASE_SHAPE R field_28057 + f F MAX_HORIZONTAL_OFFSET S field_31204 + f Lnet/minecraft/world/phys/shapes/VoxelShape; REQUIRED_SPACE_TO_DRIP_THROUGH_NON_SOLID_BLOCK T field_36340 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46413 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; TIP_DIRECTION b field_28050 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; THICKNESS c field_28051 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_28052 + f I MAX_SEARCH_LENGTH_WHEN_CHECKING_DRIP_TYPE e field_31205 + f I DELAY_BEFORE_FALLING f field_31207 + f F DRIP_PROBABILITY_PER_ANIMATE_TICK g field_31208 + f F DRIP_PROBABILITY_PER_ANIMATE_TICK_IF_UNDER_LIQUID_SOURCE h field_31209 + f I MAX_SEARCH_LENGTH_BETWEEN_STALACTITE_TIP_AND_CAULDRON i field_31210 + f F WATER_TRANSFER_PROBABILITY_PER_RANDOM_TICK j field_31211 + f F LAVA_TRANSFER_PROBABILITY_PER_RANDOM_TICK k field_31212 + f D MIN_TRIDENT_VELOCITY_TO_BREAK_DRIPSTONE l field_31213 + f F STALACTITE_DAMAGE_PER_FALL_DISTANCE_AND_SIZE m field_31214 + f I STALACTITE_MAX_DAMAGE n field_31215 + f I MAX_STALACTITE_HEIGHT_FOR_DAMAGE_CALCULATION o field_31200 + m (FLnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)Z method_33270 a method_33270 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/Fluid; getCauldronFillFluidType a method_32775 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V grow a method_36369 + p 0 server + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canDripThrough a method_40016 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/material/Fluid; getDripFluid a method_33271 + p 0 level + p 1 fluid + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findStalactiteTipAboveCauldron a method_32767 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V spawnDripParticle a method_32899 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Ljava/util/Optional; findRootBlock a method_32776 + p 0 level + p 1 pos + p 2 state + p 3 maxIterations + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)V method_33277 a method_33277 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)V spawnDripParticle a method_32768 + p 0 level + p 1 pos + p 2 state + p 3 fluid + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/core/BlockPos; findFillableCauldronBelowStalactiteTip a method_32769 + p 0 level + p 1 pos + p 2 fluid + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$AxisDirection;Ljava/util/function/BiPredicate;Ljava/util/function/Predicate;I)Ljava/util/Optional; findBlockVertical a method_33272 + p 0 level + p 1 pos + p 2 axis + p 3 positionalStatePredicate + p 4 statePredicate + p 5 maxIterations + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)V createDripstone a method_36370 + p 0 level + p 1 pos + p 2 direction + p 3 thickness + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; calculateDripstoneThickness a method_32770 + p 0 level + p 1 pos + p 2 dir + p 3 isTipMerge + m (Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)Lnet/minecraft/world/level/material/Fluid; method_43131 a method_43131 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V spawnFallingStalactite a method_32771 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;F)V maybeTransferFluid a method_32772 + p 0 state + p 1 level + p 2 pos + p 3 randChance + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V createMergedTips a method_36376 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findTip a method_32782 + p 0 state + p 1 level + p 2 pos + p 3 maxIterations + p 4 isTipMerge + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z canGrow a method_36371 + p 0 dripstoneState + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isUnmergedTipWithDirection a method_36372 + p 0 state + p 1 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Z isTip a method_32784 + p 0 state + p 1 isTipMerge + m (Lnet/minecraft/world/level/material/Fluid;)Z canFillCauldron a method_33273 + p 0 fluid + m (Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33274 a method_33274 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33275 a method_33275 + m (ZLnet/minecraft/world/level/block/state/BlockState;)Z method_36373 a method_36373 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V growStalagmiteBelow b method_36368 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo; method_33279 b method_33279 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getFluidAboveStalactite b method_33276 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo;)V method_33280 b method_33280 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; calculateTipDirection b method_32777 + p 0 level + p 1 pos + p 2 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Z canTipGrow b method_36374 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isStalactiteStartPos b method_32778 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isPointedDripstoneWithDirection b method_32774 + p 0 state + p 1 dir + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_33278 b method_33278 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40017 c method_40017 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isValidPointedDripstonePlacement c method_32781 + p 0 level + p 1 pos + p 2 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V growStalactiteOrStalagmiteIfPossible c method_36375 + p 0 state + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40018 d method_40018 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canDrip m method_32783 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStalactite n method_32785 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStalagmite o method_35283 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33281 p method_33281 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PointedDripstoneBlock$FluidInfo dlq$a net/minecraft/class_5689$class_7381 + f Lnet/minecraft/core/BlockPos; pos a comp_709 + f Lnet/minecraft/world/level/material/Fluid; fluid b comp_710 + f Lnet/minecraft/world/level/block/state/BlockState; sourceState c comp_711 + m ()Lnet/minecraft/core/BlockPos; pos a comp_709 + m ()Lnet/minecraft/world/level/material/Fluid; fluid b comp_710 + m ()Lnet/minecraft/world/level/block/state/BlockState; sourceState c comp_711 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/Portal dlr net/minecraft/class_9797 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)I getPortalTransitionTime a method_60772 + p 1 level + p 2 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/portal/DimensionTransition; getPortalDestination a method_60770 + p 1 level + p 2 entity + p 3 pos + m ()Lnet/minecraft/world/level/block/Portal$Transition; getLocalTransition b method_60778 +c net/minecraft/world/level/block/Portal$Transition dlr$a net/minecraft/class_9797$class_9798 + f Lnet/minecraft/world/level/block/Portal$Transition; CONFUSION a field_52061 + f Lnet/minecraft/world/level/block/Portal$Transition; NONE b field_52062 + f [Lnet/minecraft/world/level/block/Portal$Transition; $VALUES c field_52063 + m ()[Lnet/minecraft/world/level/block/Portal$Transition; $values a method_60779 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/PotatoBlock dls net/minecraft/class_2439 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46414 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE b field_11357 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PowderSnowBlock dlt net/minecraft/class_5635 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46415 + f F HORIZONTAL_PARTICLE_MOMENTUM_FACTOR b field_31216 + f F IN_BLOCK_HORIZONTAL_SPEED_MULTIPLIER c field_31217 + f F IN_BLOCK_VERTICAL_SPEED_MULTIPLIER d field_31218 + f F NUM_BLOCKS_TO_FALL_INTO_BLOCK e field_31219 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FALLING_COLLISION_SHAPE f field_31220 + f D MINIMUM_FALL_DISTANCE_FOR_SOUND g field_36189 + f D MINIMUM_FALL_DISTANCE_FOR_BIG_SOUND h field_36190 + m (Lnet/minecraft/world/entity/Entity;)Z canEntityWalkOnPowderSnow a method_32355 + p 0 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PoweredBlock dlu net/minecraft/class_2436 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46416 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/PoweredRailBlock dlv net/minecraft/class_2442 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46417 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_11365 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_11364 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZI)Z findPoweredRailSignal a method_10413 + p 1 level + p 2 pos + p 3 state + p 4 searchForward + p 5 recursionCount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZILnet/minecraft/world/level/block/state/properties/RailShape;)Z isSameRailWithPower a method_10414 + p 1 level + p 2 state + p 3 searchForward + p 4 recursionCount + p 5 shape + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/PoweredRailBlock$1 dlv$1 net/minecraft/class_2442$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11368 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11367 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11366 + m ()V +c net/minecraft/world/level/block/PressurePlateBlock dlw net/minecraft/class_2440 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46418 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED f field_11358 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54036 a method_54036 + m (Lnet/minecraft/world/level/block/PressurePlateBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54037 a method_54037 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/PressurePlateBlock$1 dlw$1 net/minecraft/class_2440$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$BlockSetType$PressurePlateSensitivity a field_11360 + m ()V +c net/minecraft/world/level/block/PumpkinBlock dlx net/minecraft/class_2445 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46419 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RailBlock dly net/minecraft/class_2443 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46420 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE e field_11369 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RailBlock$1 dly$1 net/minecraft/class_2443$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11372 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11371 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11370 + m ()V +c net/minecraft/world/level/block/RailState dlz net/minecraft/class_2452 + f Lnet/minecraft/world/level/Level; level a field_11409 + f Lnet/minecraft/core/BlockPos; pos b field_11410 + f Lnet/minecraft/world/level/block/BaseRailBlock; block c field_11411 + f Lnet/minecraft/world/level/block/state/BlockState; state d field_11406 + f Z isStraight e field_11408 + f Ljava/util/List; connections f field_11407 + m ()Ljava/util/List; getConnections a method_10457 + m (Lnet/minecraft/world/level/block/RailState;)Z connectsTo a method_10464 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)V updateConnections a method_10466 + p 1 shape + m (Lnet/minecraft/core/BlockPos;)Z hasRail a method_10456 + p 1 pos + m (ZZLnet/minecraft/world/level/block/state/properties/RailShape;)Lnet/minecraft/world/level/block/RailState; place a method_10459 + p 1 powered + p 2 alwaysPlace + p 3 shape + m ()I countPotentialConnections b method_10460 + m (Lnet/minecraft/world/level/block/RailState;)Z canConnectTo b method_10455 + p 1 state + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/RailState; getRail b method_10458 + p 1 pos + m ()Lnet/minecraft/world/level/block/state/BlockState; getState c method_10462 + m (Lnet/minecraft/world/level/block/RailState;)V connectTo c method_10461 + p 1 state + m (Lnet/minecraft/core/BlockPos;)Z hasConnection c method_10463 + p 1 pos + m ()V removeSoftConnections d method_10467 + m (Lnet/minecraft/core/BlockPos;)Z hasNeighborRail d method_10465 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 pos + p 3 state +c net/minecraft/world/level/block/RailState$1 dlz$1 net/minecraft/class_2452$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RailShape a field_11412 + m ()V +c net/minecraft/world/level/block/RedStoneOreBlock dma net/minecraft/class_2449 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46421 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11392 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V spawnParticles a method_10440 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V interact d method_10441 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedStoneWireBlock dmb net/minecraft/class_2457 + f Ljava/util/Map; SHAPES_CACHE F field_24416 + f [Lnet/minecraft/world/phys/Vec3; COLORS G field_24466 + f F PARTICLE_DENSITY H field_31221 + f Lnet/minecraft/world/level/block/state/BlockState; crossState I field_24733 + f Z shouldSignal J field_11438 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46422 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH b field_11440 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST c field_11436 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH d field_11437 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST e field_11439 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER f field_11432 + f Ljava/util/Map; PROPERTY_BY_DIRECTION g field_11435 + f I H h field_31222 + f I W i field_31223 + f I E j field_31224 + f I N k field_31225 + f I S l field_31226 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_DOT m field_24413 + f Ljava/util/Map; SHAPES_FLOOR n field_24414 + f Ljava/util/Map; SHAPES_UP o field_24415 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getConnectionState a method_27840 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOn a method_27937 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/RedstoneSide; getConnectingSide a method_10477 + p 1 level + p 2 pos + p 3 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/level/block/state/properties/RedstoneSide; getConnectingSide a method_27841 + p 1 level + p 2 pos + p 3 direction + p 4 nonNormalCubeAbove + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;FF)V spawnParticlesAlongLine a method_27936 + p 1 level + p 2 random + p 3 pos + p 4 particleVec + p 5 xDirection + p 6 zDirection + p 7 min + p 8 max + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I calculateTargetStrength a method_27842 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updatePowerStrength a method_10485 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V updatesOnShapeChange a method_28482 + p 1 level + p 2 pos + p 3 oldState + p 4 newState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shouldConnectTo a method_10482 + p 0 state + p 1 direction + m ([Lnet/minecraft/world/phys/Vec3;)V method_31649 a method_31649 + m (I)I getColorForPower b method_10487 + p 0 power + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getMissingConnections b method_27843 + p 1 level + p 2 state + p 3 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkCornerChangeAt b method_10479 + c Calls {@link net.minecraft.world.level.Level#updateNeighborsAt} for all neighboring blocks, but only if the given block is a redstone wire. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V updateNeighborsOfNeighboringWires c method_27844 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z shouldConnectTo m method_10484 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape n method_27845 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isCross o method_27846 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDot p method_28483 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getWireSignal q method_10486 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedStoneWireBlock$1 dmb$1 net/minecraft/class_2457$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$RedstoneSide a field_24467 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11442 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror c field_11441 + m ()V +c net/minecraft/world/level/block/RedstoneLampBlock dmc net/minecraft/class_2453 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46423 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT b field_11413 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedstoneTorchBlock dmd net/minecraft/class_2459 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46424 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT d field_11446 + f I RECENT_TOGGLE_TIMER e field_31227 + f I MAX_RECENT_TOGGLES f field_31228 + f I RESTART_DELAY g field_31229 + f Ljava/util/Map; RECENT_TOGGLES h field_11445 + f I TOGGLE_DELAY i field_31230 + m (Lnet/minecraft/world/level/BlockGetter;)Ljava/util/List; method_20453 a method_20453 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z hasNeighborSignal a method_10488 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Z isToggledTooFrequently a method_10489 + p 0 level + p 1 pos + p 2 logToggle + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RedstoneTorchBlock$Toggle dmd$a net/minecraft/class_2459$class_2460 + f Lnet/minecraft/core/BlockPos; pos a field_11448 + f J when b field_11447 + m (Lnet/minecraft/core/BlockPos;J)V + p 1 pos + p 2 when +c net/minecraft/world/level/block/RedstoneWallTorchBlock dme net/minecraft/class_2458 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46425 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING i field_11443 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT j field_11444 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RenderShape dmf net/minecraft/class_2464 + f Lnet/minecraft/world/level/block/RenderShape; INVISIBLE a field_11455 + f Lnet/minecraft/world/level/block/RenderShape; ENTITYBLOCK_ANIMATED b field_11456 + f Lnet/minecraft/world/level/block/RenderShape; MODEL c field_11458 + f [Lnet/minecraft/world/level/block/RenderShape; $VALUES d field_11457 + m ()[Lnet/minecraft/world/level/block/RenderShape; $values a method_36708 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/RepeaterBlock dmg net/minecraft/class_2462 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46426 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LOCKED b field_11452 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DELAY e field_11451 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RespawnAnchorBlock dmh net/minecraft/class_4969 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46427 + f I MIN_CHARGES b field_31231 + f I MAX_CHARGES c field_31232 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CHARGE d field_23153 + f Lcom/google/common/collect/ImmutableList; RESPAWN_HORIZONTAL_OFFSETS e field_26442 + f Lcom/google/common/collect/ImmutableList; RESPAWN_OFFSETS f field_26443 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V charge a method_26382 + p 0 entity + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; findStandUpPosition a method_26156 + p 0 entityType + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; findStandUpPosition a method_30842 + p 0 entityType + p 1 level + p 2 pos + p 3 simulate + m (Lnet/minecraft/world/item/ItemStack;)Z isRespawnFuel a method_29289 + p 0 stack + m (Lnet/minecraft/world/level/Level;)Z canSetSpawn a method_27353 + p 0 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z method_29559 a method_29559 + m (Lnet/minecraft/world/level/block/state/BlockState;I)I getScaledChargeLevel a method_26157 + p 0 state + p 1 scale + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;)Z isWaterThatWouldFlow a method_29560 + p 0 pos + p 1 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V explode d method_29561 + p 1 state + p 2 level + p 3 pos2 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canBeCharged m method_29290 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RespawnAnchorBlock$1 dmh$1 net/minecraft/class_4969$1 + f Lnet/minecraft/core/BlockPos; val$pos a field_25404 + f Z val$inWater b field_25405 + m (Lnet/minecraft/world/level/block/RespawnAnchorBlock;Lnet/minecraft/core/BlockPos;Z)V +c net/minecraft/world/level/block/RodBlock dmi net/minecraft/class_2337 + f F AABB_MIN f field_31233 + f F AABB_MAX g field_31234 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Y_AXIS_AABB h field_10971 + f Lnet/minecraft/world/phys/shapes/VoxelShape; Z_AXIS_AABB i field_10970 + f Lnet/minecraft/world/phys/shapes/VoxelShape; X_AXIS_AABB j field_10969 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RodBlock$1 dmi$1 net/minecraft/class_2337$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_10972 + m ()V +c net/minecraft/world/level/block/RootedDirtBlock dmj net/minecraft/class_5954 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46428 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/RootsBlock dmk net/minecraft/class_4774 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46429 + f F AABB_OFFSET b field_31235 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_22137 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RotatedPillarBlock dml net/minecraft/class_2465 + f Lcom/mojang/serialization/MapCodec; CODEC h field_46430 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS i field_11459 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotatePillar b method_36377 + p 0 state + p 1 rotation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/RotatedPillarBlock$1 dml$1 net/minecraft/class_2465$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_11461 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_11460 + m ()V +c net/minecraft/world/level/block/Rotation dmm net/minecraft/class_2470 + f Lnet/minecraft/world/level/block/Rotation; NONE a field_11467 + f Lnet/minecraft/world/level/block/Rotation; CLOCKWISE_90 b field_11463 + f Lnet/minecraft/world/level/block/Rotation; CLOCKWISE_180 c field_11464 + f Lnet/minecraft/world/level/block/Rotation; COUNTERCLOCKWISE_90 d field_11465 + f Lcom/mojang/serialization/Codec; CODEC e field_39313 + f Ljava/lang/String; id f field_39314 + f Lcom/mojang/math/OctahedralGroup; rotation g field_23264 + f [Lnet/minecraft/world/level/block/Rotation; $VALUES h field_11466 + m ()Lcom/mojang/math/OctahedralGroup; rotation a method_26383 + m (II)I rotate a method_10502 + p 1 rotation + p 2 positionCount + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/Rotation; getRandom a method_16548 + c Chooses a random rotation. + p 0 random + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/Rotation; getRotated a method_10501 + p 1 rotation + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/Direction; rotate a method_10503 + p 1 facing + m ()[Lnet/minecraft/world/level/block/Rotation; $values b method_36709 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffled b method_16547 + c Get a list of all rotations in random order. + p 0 random + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/math/OctahedralGroup;)V + p 3 id + p 4 rotation + m ()V +c net/minecraft/world/level/block/SaplingBlock dmn net/minecraft/class_2473 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46431 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE f field_11476 + f F AABB_OFFSET g field_31236 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_11478 + f Lnet/minecraft/world/level/block/grower/TreeGrower; treeGrower i field_11477 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)V advanceTree a method_10507 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54038 a method_54038 + m (Lnet/minecraft/world/level/block/SaplingBlock;)Lnet/minecraft/world/level/block/grower/TreeGrower; method_54039 a method_54039 + m (Lnet/minecraft/world/level/block/grower/TreeGrower;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 treeGrower + p 2 properties + m ()V +c net/minecraft/world/level/block/ScaffoldingBlock dmo net/minecraft/class_3736 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46432 + f I STABILITY_MAX_DISTANCE b field_31237 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE c field_16495 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_16496 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BOTTOM e field_16547 + f I TICK_DELAY f field_31238 + f Lnet/minecraft/world/phys/shapes/VoxelShape; STABLE_SHAPE g field_16494 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UNSTABLE_SHAPE h field_16497 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UNSTABLE_SHAPE_BOTTOM i field_17577 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BELOW_BLOCK j field_17578 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getDistance a method_16372 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;I)Z isBottom a method_16373 + p 1 level + p 2 pos + p 3 distance + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkBehaviour dmp net/minecraft/class_7124 + f Lnet/minecraft/world/level/block/SculkBehaviour; DEFAULT v_ field_37602 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V onDischarged a method_41468 + p 1 level + p 2 state + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z depositCharge a method_41470 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;Z)Z attemptSpreadVein a method_41469 + p 1 level + p 2 pos + p 3 state + p 4 directions + p 5 markForPostprocessing + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/SculkSpreader;Z)I attemptUseCharge a method_41471 + p 1 cursor + p 2 level + p 3 pos + p 4 random + p 5 spreader + p 6 shouldConvertBlocks + m ()B getSculkSpreadDelay b method_41467 + m ()Z canChangeBlockStateOnSpread d method_41472 + m (I)I updateDecayDelay j_ method_41473 + p 1 currentDecayDelay + m ()V +c net/minecraft/world/level/block/SculkBehaviour$1 dmp$1 net/minecraft/class_7124$1 + m ()V +c net/minecraft/world/level/block/SculkBlock dmq net/minecraft/class_7125 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46433 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canPlaceGrowth a method_41474 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/level/block/state/BlockState; getRandomGrowthState a method_41475 + p 1 level + p 2 pos + p 3 random + p 4 isWorldGeneration + m (Lnet/minecraft/world/level/block/SculkSpreader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;I)I getDecayPenalty a method_41476 + p 0 spreader + p 1 cursorPos + p 2 rootPos + p 3 charge + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SculkCatalystBlock dmr net/minecraft/class_7126 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46434 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PULSE b field_37604 + f Lnet/minecraft/util/valueproviders/IntProvider; xpRange c field_37605 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SculkSensorBlock dms net/minecraft/class_5703 + f [F RESONANCE_PITCH_BEND a field_43248 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46435 + f I ACTIVE_TICKS d field_31239 + f I COOLDOWN_TICKS e field_44607 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PHASE f field_28111 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER g field_28112 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED h field_28113 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE i field_28114 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;I)V tryResonateVibration a method_49822 + p 0 entity + p 1 level + p 2 pos + p 3 frequency + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V activate a method_32904 + p 1 entity + p 2 level + p 3 pos + p 4 state + p 5 power + p 6 frequency + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V deactivate a method_32903 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity;)V method_32905 a method_32905 + m ([F)V method_49823 a method_49823 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateNeighbours b method_32902 + p 0 level + p 1 pos + p 2 state + m ()I getActiveTicks c method_51166 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; getPhase m method_32908 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canActivate n method_32909 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkShriekerBlock dmt net/minecraft/class_7268 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46436 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHRIEKING b field_38229 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_38230 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CAN_SUMMON d field_38422 + f Lnet/minecraft/world/phys/shapes/VoxelShape; COLLIDER e field_38231 + f D TOP_Y f field_38232 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43134 a method_43134 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43132 a method_43132 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_42317 a method_42317 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V method_43133 b method_43133 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkSpreader dmu net/minecraft/class_7128 + f I MAX_GROWTH_RATE_RADIUS a field_37609 + f I MAX_CHARGE b field_37610 + f F MAX_DECAY_FACTOR c field_37611 + f I SHRIEKER_PLACEMENT_RATE d field_37612 + f I MAX_CURSORS e field_37613 + f Z isWorldGeneration f field_37614 + f Lnet/minecraft/tags/TagKey; replaceableBlocks g field_37615 + f I growthSpawnCost h field_37616 + f I noGrowthRadius i field_37617 + f I chargeDecayRate j field_37618 + f I additionalDecayRate k field_37619 + f Ljava/util/List; cursors l field_37620 + f Lorg/slf4j/Logger; LOGGER m field_37621 + m ()Lnet/minecraft/world/level/block/SculkSpreader; createLevelSpreader a method_41478 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)V updateCursors a method_41479 + p 1 level + p 2 pos + p 3 random + p 4 shouldConvertBlocks + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)V addCursor a method_41480 + p 1 cursor + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;Lnet/minecraft/core/BlockPos;Ljava/lang/Integer;)Ljava/lang/Integer; method_41481 a method_41481 + m (Lnet/minecraft/core/BlockPos;I)V addCursors a method_41482 + p 1 pos + p 2 charge + m (Lnet/minecraft/nbt/CompoundTag;)V load a method_41483 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_41484 a method_41484 + m ()Lnet/minecraft/world/level/block/SculkSpreader; createWorldGenSpreader b method_41485 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/lang/Integer; method_51355 b method_51355 + m (Lnet/minecraft/nbt/CompoundTag;)V save b method_41486 + p 1 tag + m ()Lnet/minecraft/tags/TagKey; replaceableBlocks c method_41487 + m ()I growthSpawnCost d method_41488 + m ()I noGrowthRadius e method_41489 + m ()I chargeDecayRate f method_41490 + m ()I additionalDecayRate g method_41491 + m ()Z isWorldGeneration h method_41492 + m ()Ljava/util/List; getCursors i method_41493 + m ()V clear j method_41494 + m (ZLnet/minecraft/tags/TagKey;IIII)V + p 1 isWorldGeneration + p 2 replaceableBlocks + p 3 growthSpawnCoat + p 4 noGrowthRadius + p 5 chargeDecayRate + p 6 additionalDecayRate + m ()V +c net/minecraft/world/level/block/SculkSpreader$ChargeCursor dmu$a net/minecraft/class_7128$class_7129 + f I MAX_CURSOR_DECAY_DELAY a field_37622 + f Lcom/mojang/serialization/Codec; CODEC b field_37623 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; NON_CORNER_NEIGHBOURS c field_37624 + f Lnet/minecraft/core/BlockPos; pos d field_37625 + f I charge e field_37626 + f I updateDelay f field_37627 + f I decayDelay g field_37628 + f Ljava/util/Set; facings h field_37629 + f Lcom/mojang/serialization/Codec; DIRECTION_SET i field_37630 + m ()Lnet/minecraft/core/BlockPos; getPos a method_41495 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getRandomizedNonCornerNeighbourOffsets a method_41507 + p 0 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41502 a method_41502 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/BlockPos; getValidMovementPos a method_41498 + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/SculkSpreader;Z)V update a method_41499 + p 1 level + p 2 pos + p 3 random + p 4 spreader + p 5 shouldConvertBlocks + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isMovementUnobstructed a method_41496 + p 0 level + p 1 fromPos + p 2 toPos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isUnobstructed a method_41497 + p 0 level + p 1 pos + p 2 direction + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Z)Z shouldUpdate a method_41500 + p 1 level + p 2 pos + p 3 isWorldGeneration + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)V mergeWith a method_41501 + p 1 cursor + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/SculkBehaviour; getBlockBehaviour a method_41503 + p 0 state + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;)V method_41505 a method_41505 + m (Ljava/util/List;)Ljava/util/Set; method_41506 a method_41506 + m (Lnet/minecraft/core/BlockPos;)Z method_41504 a method_41504 + m ()I getCharge b method_41508 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/util/Optional; method_41509 b method_41509 + m ()I getDecayDelay c method_41510 + m (Lnet/minecraft/world/level/block/SculkSpreader$ChargeCursor;)Ljava/lang/Integer; method_41511 c method_41511 + m ()Ljava/util/Set; getFacingData d method_41512 + m (Lnet/minecraft/core/BlockPos;IIILjava/util/Optional;)V + p 1 pos + p 2 charge + p 3 decayDelay + p 4 updateDelay + p 5 facings + m (Lnet/minecraft/core/BlockPos;I)V + p 1 pos + p 2 charge + m ()V +c net/minecraft/world/level/block/SculkVeinBlock dmv net/minecraft/class_7130 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46437 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_37631 + f Lnet/minecraft/world/level/block/MultifaceSpreader; veinSpreader e field_37632 + f Lnet/minecraft/world/level/block/MultifaceSpreader; sameSpaceSpreader f field_37633 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)Z hasSubstrateAccess a method_41513 + p 0 level + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;)Z regrow a method_41514 + p 0 level + p 1 pos + p 2 state + p 3 directions + m (Lnet/minecraft/world/level/block/SculkSpreader;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z attemptPlaceSculk a method_41515 + p 1 spreader + p 2 level + p 3 pos + p 4 random + m ()Lnet/minecraft/world/level/block/MultifaceSpreader; getSameSpaceSpreader m method_41516 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SculkVeinBlock$SculkVeinSpreaderConfig dmv$a net/minecraft/class_7130$class_7131 + f [Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType; spreadTypes b field_37635 + m (Lnet/minecraft/world/level/block/SculkVeinBlock;[Lnet/minecraft/world/level/block/MultifaceSpreader$SpreadType;)V + p 2 spreadTypes +c net/minecraft/world/level/block/SeaPickleBlock dmw net/minecraft/class_2472 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46438 + f I MAX_PICKLES b field_31241 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; PICKLES c field_11472 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED d field_11475 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_AABB e field_11473 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TWO_AABB f field_11470 + f Lnet/minecraft/world/phys/shapes/VoxelShape; THREE_AABB g field_11471 + f Lnet/minecraft/world/phys/shapes/VoxelShape; FOUR_AABB h field_11474 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDead m method_10506 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SeagrassBlock dmx net/minecraft/class_2476 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46439 + f F AABB_OFFSET b field_31242 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11485 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/ShulkerBoxBlock dmy net/minecraft/class_2480 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46440 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; FACING b field_11496 + f Lnet/minecraft/resources/ResourceLocation; CONTENTS c field_11495 + f Lnet/minecraft/network/chat/Component; UNKNOWN_CONTENTS d field_49401 + f F OPEN_AABB_SIZE e field_41075 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_OPEN_AABB f field_41076 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_OPEN_AABB g field_41077 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WES_OPEN_AABB h field_41078 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_OPEN_AABB i field_41079 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_OPEN_AABB j field_41080 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_OPEN_AABB k field_41081 + f Ljava/util/Map; OPEN_SHAPE_BY_DIRECTION l field_41082 + f Lnet/minecraft/world/item/DyeColor; color m field_11494 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54040 a method_54040 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/Block; getBlockByColor a method_10525 + p 0 color + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)V method_38234 a method_38234 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/item/DyeColor; getColorFromBlock a method_10526 + p 0 block + m (Lnet/minecraft/world/level/block/ShulkerBoxBlock;)Ljava/util/Optional; method_54041 a method_54041 + m (Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;Ljava/util/function/Consumer;)V method_10524 a method_10524 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)Z canOpen a method_33383 + p 0 state + p 1 level + p 2 pos + p 3 blockEntity + m (Ljava/util/EnumMap;)V method_47378 a method_47378 + m (Ljava/util/Optional;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)Lnet/minecraft/world/level/block/ShulkerBoxBlock; method_54042 a method_54042 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_10528 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/item/ItemStack; getColoredItemStack b method_10529 + p 0 color + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/world/item/DyeColor; getColorFromItem b method_10527 + p 0 item + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/ShulkerBoxBlock$1 dmy$1 net/minecraft/class_2480$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_11497 + m ()V +c net/minecraft/world/level/block/SignBlock dmz net/minecraft/class_2478 + f Lnet/minecraft/world/level/block/state/properties/WoodType; type a field_21675 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED f field_11491 + f F AABB_OFFSET g field_31243 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE h field_11492 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;)Z otherPlayerIsEditingSign a method_49824 + p 1 player + p 2 signEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)V openTextEdit a method_49825 + p 1 player + p 2 signEntity + p 3 isFrontText + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/properties/WoodType; getWoodType a method_45459 + p 0 block + m (Lnet/minecraft/network/chat/Component;)Z method_51172 a method_51172 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Z)Z hasEditableText b method_51173 + p 1 player + p 2 signEntity + p 3 isFrontText + m ()Lnet/minecraft/world/level/block/state/properties/WoodType; type d method_24025 + m (Lnet/minecraft/world/level/block/state/BlockState;)F getYRotationDegrees g method_49814 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/Vec3; getSignHitboxCenterPosition m method_50003 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/SimpleWaterloggedBlock dna net/minecraft/class_3737 +c net/minecraft/world/level/block/SkullBlock dnb net/minecraft/class_2484 + f I ROTATIONS b field_31245 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46441 + f I MAX d field_31244 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION e field_11505 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_11506 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PIGLIN_SHAPE g field_41312 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54043 a method_54043 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/SkullBlock$Type dnb$a net/minecraft/class_2484$class_2485 + f Ljava/util/Map; TYPES a field_46442 + f Lcom/mojang/serialization/Codec; CODEC b field_46443 + m ()V +c net/minecraft/world/level/block/SkullBlock$Types dnb$b net/minecraft/class_2484$class_2486 + f Lnet/minecraft/world/level/block/SkullBlock$Types; SKELETON c field_11512 + f Lnet/minecraft/world/level/block/SkullBlock$Types; WITHER_SKELETON d field_11513 + f Lnet/minecraft/world/level/block/SkullBlock$Types; PLAYER e field_11510 + f Lnet/minecraft/world/level/block/SkullBlock$Types; ZOMBIE f field_11508 + f Lnet/minecraft/world/level/block/SkullBlock$Types; CREEPER g field_11507 + f Lnet/minecraft/world/level/block/SkullBlock$Types; PIGLIN h field_41313 + f Lnet/minecraft/world/level/block/SkullBlock$Types; DRAGON i field_11511 + f Ljava/lang/String; name j field_46444 + f [Lnet/minecraft/world/level/block/SkullBlock$Types; $VALUES k field_11509 + m ()[Lnet/minecraft/world/level/block/SkullBlock$Types; $values a method_36710 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/SlabBlock dnc net/minecraft/class_2482 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46445 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE b field_11501 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_11502 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB d field_11500 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB e field_11499 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SlabBlock$1 dnc$1 net/minecraft/class_2482$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$SlabType a field_11504 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_11503 + m ()V +c net/minecraft/world/level/block/SlimeBlock dnd net/minecraft/class_2490 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46446 + m (Lnet/minecraft/world/entity/Entity;)V bounceUp a method_21847 + p 1 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SmallDripleafBlock dne net/minecraft/class_5808 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46447 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_29563 + f F AABB_OFFSET e field_31246 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_28690 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED g field_28691 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SmithingTableBlock dnf net/minecraft/class_3717 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46448 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE c field_22511 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_24950 a method_24950 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SmokerBlock dng net/minecraft/class_3716 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46449 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnifferEggBlock dnh net/minecraft/class_8238 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46450 + f I MAX_HATCH_LEVEL b field_43249 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH c field_43250 + f I REGULAR_HATCH_TIME_TICKS d field_43251 + f I BOOSTED_HATCH_TIME_TICKS e field_43252 + f I RANDOM_HATCH_OFFSET_TICKS f field_43253 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_43254 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hatchBoost a method_49826 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)I getHatchLevel m method_49827 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isReadyToHatch n method_49828 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnowLayerBlock dni net/minecraft/class_2488 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46451 + f I MAX_HEIGHT b field_31247 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LAYERS c field_11518 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_LAYER d field_11517 + f I HEIGHT_IMPASSABLE e field_31248 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SnowLayerBlock$1 dni$1 net/minecraft/class_2488$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_11519 + m ()V +c net/minecraft/world/level/block/SnowyDirtBlock dnj net/minecraft/class_2493 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46452 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SNOWY c field_11522 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSnowySetting m method_35291 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SoulFireBlock dnk net/minecraft/class_4775 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46453 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canSurviveOnBlock m method_26158 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SoulSandBlock dnl net/minecraft/class_2492 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46454 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_11521 + f I BUBBLE_COLUMN_CHECK_DELAY c field_31249 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SoundType dnm net/minecraft/class_2498 + f Lnet/minecraft/world/level/block/SoundType; LANTERN A field_17734 + f Lnet/minecraft/world/level/block/SoundType; STEM B field_22152 + f Lnet/minecraft/world/level/block/SoundType; NYLIUM C field_22153 + f Lnet/minecraft/world/level/block/SoundType; FUNGUS D field_22154 + f Lnet/minecraft/world/level/block/SoundType; ROOTS E field_22138 + f Lnet/minecraft/world/level/block/SoundType; SHROOMLIGHT F field_22139 + f Lnet/minecraft/world/level/block/SoundType; WEEPING_VINES G field_22140 + f Lnet/minecraft/world/level/block/SoundType; TWISTING_VINES H field_23082 + f Lnet/minecraft/world/level/block/SoundType; SOUL_SAND I field_22141 + f Lnet/minecraft/world/level/block/SoundType; SOUL_SOIL J field_22142 + f Lnet/minecraft/world/level/block/SoundType; BASALT K field_22143 + f Lnet/minecraft/world/level/block/SoundType; WART_BLOCK L field_22144 + f Lnet/minecraft/world/level/block/SoundType; NETHERRACK M field_22145 + f Lnet/minecraft/world/level/block/SoundType; NETHER_BRICKS N field_22146 + f Lnet/minecraft/world/level/block/SoundType; NETHER_SPROUTS O field_22147 + f Lnet/minecraft/world/level/block/SoundType; NETHER_ORE P field_22148 + f Lnet/minecraft/world/level/block/SoundType; BONE_BLOCK Q field_22149 + f Lnet/minecraft/world/level/block/SoundType; NETHERITE_BLOCK R field_22150 + f Lnet/minecraft/world/level/block/SoundType; ANCIENT_DEBRIS S field_22151 + f Lnet/minecraft/world/level/block/SoundType; LODESTONE T field_23265 + f Lnet/minecraft/world/level/block/SoundType; CHAIN U field_24119 + f Lnet/minecraft/world/level/block/SoundType; NETHER_GOLD_ORE V field_24120 + f Lnet/minecraft/world/level/block/SoundType; GILDED_BLACKSTONE W field_24121 + f Lnet/minecraft/world/level/block/SoundType; CANDLE X field_27196 + f Lnet/minecraft/world/level/block/SoundType; AMETHYST Y field_27197 + f Lnet/minecraft/world/level/block/SoundType; AMETHYST_CLUSTER Z field_27198 + f Lnet/minecraft/world/level/block/SoundType; SCULK aA field_37644 + f Lnet/minecraft/world/level/block/SoundType; SCULK_VEIN aB field_37645 + f Lnet/minecraft/world/level/block/SoundType; SCULK_SHRIEKER aC field_37646 + f Lnet/minecraft/world/level/block/SoundType; GLOW_LICHEN aD field_28427 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE aE field_29033 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE_BRICKS aF field_29034 + f Lnet/minecraft/world/level/block/SoundType; DEEPSLATE_TILES aG field_29035 + f Lnet/minecraft/world/level/block/SoundType; POLISHED_DEEPSLATE aH field_29036 + f Lnet/minecraft/world/level/block/SoundType; FROGLIGHT aI field_37636 + f Lnet/minecraft/world/level/block/SoundType; FROGSPAWN aJ field_37637 + f Lnet/minecraft/world/level/block/SoundType; MANGROVE_ROOTS aK field_37638 + f Lnet/minecraft/world/level/block/SoundType; MUDDY_MANGROVE_ROOTS aL field_37639 + f Lnet/minecraft/world/level/block/SoundType; EMPTY a field_44608 + f Lnet/minecraft/world/level/block/SoundType; MUD aM field_37640 + f Lnet/minecraft/world/level/block/SoundType; MUD_BRICKS aN field_37641 + f Lnet/minecraft/world/level/block/SoundType; PACKED_MUD aO field_37642 + f Lnet/minecraft/world/level/block/SoundType; HANGING_SIGN aP field_40313 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WOOD_HANGING_SIGN aQ field_41083 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_WOOD_HANGING_SIGN aR field_41084 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_WOOD aS field_40314 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WOOD aT field_40315 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_WOOD aU field_42766 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_SAPLING aV field_42767 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_LEAVES aW field_42768 + f Lnet/minecraft/world/level/block/SoundType; CHERRY_WOOD_HANGING_SIGN aX field_42769 + f Lnet/minecraft/world/level/block/SoundType; CHISELED_BOOKSHELF aY field_41085 + f Lnet/minecraft/world/level/block/SoundType; SUSPICIOUS_SAND aZ field_42770 + f Lnet/minecraft/world/level/block/SoundType; SMALL_AMETHYST_BUD aa field_27199 + f Lnet/minecraft/world/level/block/SoundType; MEDIUM_AMETHYST_BUD ab field_27200 + f Lnet/minecraft/world/level/block/SoundType; LARGE_AMETHYST_BUD ac field_27201 + f Lnet/minecraft/world/level/block/SoundType; TUFF ad field_27202 + f Lnet/minecraft/world/level/block/SoundType; TUFF_BRICKS ae field_47083 + f Lnet/minecraft/world/level/block/SoundType; POLISHED_TUFF af field_47084 + f Lnet/minecraft/world/level/block/SoundType; CALCITE ag field_27203 + f Lnet/minecraft/world/level/block/SoundType; DRIPSTONE_BLOCK ah field_28060 + f Lnet/minecraft/world/level/block/SoundType; POINTED_DRIPSTONE ai field_28061 + f Lnet/minecraft/world/level/block/SoundType; COPPER aj field_27204 + f Lnet/minecraft/world/level/block/SoundType; COPPER_BULB ak field_47085 + f Lnet/minecraft/world/level/block/SoundType; COPPER_GRATE al field_47086 + f Lnet/minecraft/world/level/block/SoundType; CAVE_VINES am field_28692 + f Lnet/minecraft/world/level/block/SoundType; SPORE_BLOSSOM an field_28693 + f Lnet/minecraft/world/level/block/SoundType; AZALEA ao field_28694 + f Lnet/minecraft/world/level/block/SoundType; FLOWERING_AZALEA ap field_28695 + f Lnet/minecraft/world/level/block/SoundType; MOSS_CARPET aq field_28696 + f Lnet/minecraft/world/level/block/SoundType; PINK_PETALS ar field_42772 + f Lnet/minecraft/world/level/block/SoundType; MOSS as field_28697 + f Lnet/minecraft/world/level/block/SoundType; BIG_DRIPLEAF at field_28698 + f Lnet/minecraft/world/level/block/SoundType; SMALL_DRIPLEAF au field_28699 + f Lnet/minecraft/world/level/block/SoundType; ROOTED_DIRT av field_28700 + f Lnet/minecraft/world/level/block/SoundType; HANGING_ROOTS aw field_28701 + f Lnet/minecraft/world/level/block/SoundType; AZALEA_LEAVES ax field_28702 + f Lnet/minecraft/world/level/block/SoundType; SCULK_SENSOR ay field_28116 + f Lnet/minecraft/world/level/block/SoundType; SCULK_CATALYST az field_37643 + f Lnet/minecraft/world/level/block/SoundType; WOOD b field_11547 + f Lnet/minecraft/world/level/block/SoundType; SUSPICIOUS_GRAVEL ba field_43255 + f Lnet/minecraft/world/level/block/SoundType; DECORATED_POT bb field_42771 + f Lnet/minecraft/world/level/block/SoundType; DECORATED_POT_CRACKED bc field_43256 + f Lnet/minecraft/world/level/block/SoundType; TRIAL_SPAWNER bd field_47346 + f Lnet/minecraft/world/level/block/SoundType; SPONGE be field_45970 + f Lnet/minecraft/world/level/block/SoundType; WET_SPONGE bf field_45971 + f Lnet/minecraft/world/level/block/SoundType; VAULT bg field_48855 + f Lnet/minecraft/world/level/block/SoundType; HEAVY_CORE bh field_49834 + f Lnet/minecraft/world/level/block/SoundType; COBWEB bi field_50169 + f F volume bj field_11540 + f F pitch bk field_11539 + f Lnet/minecraft/sounds/SoundEvent; breakSound bl field_11546 + f Lnet/minecraft/sounds/SoundEvent; stepSound bm field_11527 + f Lnet/minecraft/sounds/SoundEvent; placeSound bn field_11536 + f Lnet/minecraft/sounds/SoundEvent; hitSound bo field_11530 + f Lnet/minecraft/sounds/SoundEvent; fallSound bp field_11541 + f Lnet/minecraft/world/level/block/SoundType; GRAVEL c field_11529 + f Lnet/minecraft/world/level/block/SoundType; GRASS d field_11535 + f Lnet/minecraft/world/level/block/SoundType; LILY_PAD e field_25183 + f Lnet/minecraft/world/level/block/SoundType; STONE f field_11544 + f Lnet/minecraft/world/level/block/SoundType; METAL g field_11533 + f Lnet/minecraft/world/level/block/SoundType; GLASS h field_11537 + f Lnet/minecraft/world/level/block/SoundType; WOOL i field_11543 + f Lnet/minecraft/world/level/block/SoundType; SAND j field_11526 + f Lnet/minecraft/world/level/block/SoundType; SNOW k field_11548 + f Lnet/minecraft/world/level/block/SoundType; POWDER_SNOW l field_27884 + f Lnet/minecraft/world/level/block/SoundType; LADDER m field_11532 + f Lnet/minecraft/world/level/block/SoundType; ANVIL n field_11531 + f Lnet/minecraft/world/level/block/SoundType; SLIME_BLOCK o field_11545 + f Lnet/minecraft/world/level/block/SoundType; HONEY_BLOCK p field_21214 + f Lnet/minecraft/world/level/block/SoundType; WET_GRASS q field_11534 + f Lnet/minecraft/world/level/block/SoundType; CORAL_BLOCK r field_11528 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO s field_11542 + f Lnet/minecraft/world/level/block/SoundType; BAMBOO_SAPLING t field_11538 + f Lnet/minecraft/world/level/block/SoundType; SCAFFOLDING u field_16498 + f Lnet/minecraft/world/level/block/SoundType; SWEET_BERRY_BUSH v field_17579 + f Lnet/minecraft/world/level/block/SoundType; CROP w field_17580 + f Lnet/minecraft/world/level/block/SoundType; HARD_CROP x field_18852 + f Lnet/minecraft/world/level/block/SoundType; VINE y field_23083 + f Lnet/minecraft/world/level/block/SoundType; NETHER_WART z field_17581 + m ()F getVolume a method_10597 + m ()F getPitch b method_10599 + m ()Lnet/minecraft/sounds/SoundEvent; getBreakSound c method_10595 + m ()Lnet/minecraft/sounds/SoundEvent; getStepSound d method_10594 + m ()Lnet/minecraft/sounds/SoundEvent; getPlaceSound e method_10598 + m ()Lnet/minecraft/sounds/SoundEvent; getHitSound f method_10596 + m ()Lnet/minecraft/sounds/SoundEvent; getFallSound g method_10593 + m (FFLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + p 1 volume + p 2 pitch + p 3 breakSound + p 4 stepSound + p 5 placeSound + p 6 hitSound + p 7 fallSound + m ()V +c net/minecraft/world/level/block/SpawnerBlock dnn net/minecraft/class_2496 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46455 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SpongeBlock dno net/minecraft/class_2502 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46456 + f I MAX_DEPTH b field_31250 + f I MAX_COUNT c field_31251 + f [Lnet/minecraft/core/Direction; ALL_DIRECTIONS d field_43257 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V tryAbsorbWater a method_10620 + p 1 level + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z method_49829 a method_49829 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V method_49830 a method_49830 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z removeWaterBreadthFirstSearch b method_10619 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SporeBlossomBlock dnp net/minecraft/class_5809 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46457 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE b field_28703 + f I ADD_PARTICLE_ATTEMPTS c field_31252 + f I PARTICLE_XZ_RADIUS d field_31253 + f I PARTICLE_Y_MAX e field_31254 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/SpreadingSnowyDirtBlock dnq net/minecraft/class_2500 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canBeGrass b method_10614 + p 0 state + p 1 levelReader + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canPropagate c method_10613 + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties +c net/minecraft/world/level/block/StainedGlassBlock dnr net/minecraft/class_2506 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46458 + f Lnet/minecraft/world/item/DyeColor; color c field_11558 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54044 a method_54044 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 dyeColor + p 2 properties + m ()V +c net/minecraft/world/level/block/StainedGlassPaneBlock dns net/minecraft/class_2504 + f Lcom/mojang/serialization/MapCodec; CODEC j field_46459 + f Lnet/minecraft/world/item/DyeColor; color k field_11554 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54045 a method_54045 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/StairBlock dnt net/minecraft/class_2510 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_SHAPES F field_11566 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_SHAPES G field_11564 + f Lnet/minecraft/world/level/block/state/BlockState; baseState H field_11574 + f [I SHAPE_BY_STATE I field_11570 + f Lnet/minecraft/world/level/block/Block; base J field_11579 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46460 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11571 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF c field_11572 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SHAPE d field_11565 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_11573 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB f field_11562 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB g field_11576 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NNN h field_11561 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NNP i field_11578 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NPN j field_11568 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_NPP k field_11563 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PNN l field_11575 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PNP m field_11569 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PPN n field_11577 + f Lnet/minecraft/world/phys/shapes/VoxelShape; OCTET_PPP o field_11567 + m (ILnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; makeStairShape a method_10671 + c Combines the shapes according to the mode set in the bitfield + p 0 bitfield + p 1 slabShape + p 2 nwCorner + p 3 neCorner + p 4 swCorner + p 5 seCorner + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54046 a method_54046 + m (Lnet/minecraft/world/level/block/StairBlock;)Lnet/minecraft/world/level/block/state/BlockState; method_54047 a method_54047 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_10672 + p 0 slabShape + p 1 nwCorner + p 2 neCorner + p 3 swCorner + p 4 seCorner + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;I)Lnet/minecraft/world/phys/shapes/VoxelShape; method_10674 a method_10674 + m (I)[Lnet/minecraft/world/phys/shapes/VoxelShape; method_10677 b method_10677 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canTakeShape c method_10678 + p 0 state + p 1 level + p 2 pos + p 3 face + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/properties/StairsShape; getStairsShape i method_10675 + c Returns a stair shape property based on the surrounding stairs from the given blockstate and position + p 0 state + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStairs m method_10676 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I getShapeIndex n method_10673 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 baseState + p 2 properties + m ()V +c net/minecraft/world/level/block/StairBlock$1 dnt$1 net/minecraft/class_2510$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StairsShape a field_11581 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11580 + m ()V +c net/minecraft/world/level/block/StandingSignBlock dnu net/minecraft/class_2508 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46461 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION b field_11559 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54048 a method_54048 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/StemBlock dnv net/minecraft/class_2513 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46462 + f I MAX_AGE b field_31255 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_11584 + f F AABB_OFFSET d field_31256 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE e field_11583 + f Lnet/minecraft/resources/ResourceKey; fruit f field_11585 + f Lnet/minecraft/resources/ResourceKey; attachedStem g field_46463 + f Lnet/minecraft/resources/ResourceKey; seed h field_27205 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54049 a method_54049 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54050 a method_54050 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54051 b method_54051 + m (Lnet/minecraft/world/level/block/StemBlock;)Lnet/minecraft/resources/ResourceKey; method_54052 c method_54052 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 fruit + p 2 attachedStem + p 3 seed + p 4 properties + m ()V +c net/minecraft/world/level/block/StonecutterBlock dnw net/minecraft/class_3718 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46464 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_17649 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_16407 + f Lnet/minecraft/network/chat/Component; CONTAINER_TITLE d field_17650 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/inventory/AbstractContainerMenu; method_17896 a method_17896 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/StructureBlock dnx net/minecraft/class_2515 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46465 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE b field_11586 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V trigger a method_10703 + p 1 level + p 2 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/StructureBlock$1 dnx$1 net/minecraft/class_2515$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StructureMode a field_11587 + m ()V +c net/minecraft/world/level/block/StructureVoidBlock dny net/minecraft/class_2518 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46466 + f D SIZE b field_31257 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11589 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SugarCaneBlock dnz net/minecraft/class_2523 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46467 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE b field_11610 + f F AABB_OFFSET c field_31258 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE d field_11611 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/SupportType doa net/minecraft/class_5431 + f Lnet/minecraft/world/level/block/SupportType; FULL a field_25822 + f Lnet/minecraft/world/level/block/SupportType; CENTER b field_25823 + f Lnet/minecraft/world/level/block/SupportType; RIGID c field_25824 + f [Lnet/minecraft/world/level/block/SupportType; $VALUES d field_25825 + m ()[Lnet/minecraft/world/level/block/SupportType; $values a method_36711 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isSupporting a method_30367 + p 1 state + p 2 level + p 3 pos + p 4 face + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/SupportType$1 doa$1 net/minecraft/class_5431$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SupportType$2 doa$2 net/minecraft/class_5431$2 + f I CENTER_SUPPORT_WIDTH d field_25826 + f Lnet/minecraft/world/phys/shapes/VoxelShape; CENTER_SUPPORT_SHAPE e field_25827 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SupportType$3 doa$3 net/minecraft/class_5431$3 + f I RIGID_SUPPORT_WIDTH d field_25828 + f Lnet/minecraft/world/phys/shapes/VoxelShape; RIGID_SUPPORT_SHAPE e field_25829 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/block/SuspiciousEffectHolder dob net/minecraft/class_7917 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/block/SuspiciousEffectHolder; tryGet a method_47380 + p 0 item + m ()Lnet/minecraft/world/item/component/SuspiciousStewEffects; getSuspiciousEffects b method_53233 + m ()Ljava/util/List; getAllEffectHolders c method_47379 +c net/minecraft/world/level/block/SweetBerryBushBlock doc net/minecraft/class_3830 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46468 + f I MAX_AGE b field_31259 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_17000 + f F HURT_SPEED_THRESHOLD d field_31260 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SAPLING_SHAPE e field_17001 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MID_GROWTH_SHAPE f field_17002 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TallFlowerBlock dod net/minecraft/class_2521 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46469 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TallGrassBlock doe net/minecraft/class_2526 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46470 + f F AABB_OFFSET b field_31261 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE c field_11617 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TallSeagrassBlock dof net/minecraft/class_2525 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46471 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF d field_11616 + f F AABB_OFFSET e field_31262 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE f field_11615 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TargetBlock dog net/minecraft/class_4850 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46472 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; OUTPUT_POWER b field_22428 + f I ACTIVATION_TICKS_ARROWS c field_31263 + f I ACTIVATION_TICKS_OTHER d field_31264 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/core/BlockPos;I)V setOutputPower a method_24857 + p 0 level + p 1 state + p 2 power + p 3 pos + p 4 waitTime + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/Entity;)I updateRedstoneOutput a method_24858 + p 0 level + p 1 state + p 2 hit + p 3 projectile + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/phys/Vec3;)I getRedstoneStrength a method_24859 + p 0 hit + p 1 hitLocation + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TintedGlassBlock doh net/minecraft/class_5555 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46473 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TntBlock doi net/minecraft/class_2530 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46474 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UNSTABLE b field_11621 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V explode a method_10738 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)V explode a method_10737 + p 0 level + p 1 pos + p 2 entity + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TorchBlock doj net/minecraft/class_2527 + f Lcom/mojang/serialization/MapCodec; PARTICLE_OPTIONS_FIELD c field_46475 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46476 + f Lnet/minecraft/core/particles/SimpleParticleType; flameParticle e field_22155 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54053 a method_54053 + m (Lnet/minecraft/world/level/block/TorchBlock;)Lnet/minecraft/core/particles/SimpleParticleType; method_54054 a method_54054 + m (Lnet/minecraft/core/particles/ParticleType;)Lcom/mojang/serialization/DataResult; method_54055 a method_54055 + m (Lnet/minecraft/core/particles/SimpleParticleType;)Lnet/minecraft/core/particles/ParticleType; method_54056 a method_54056 + m (Lnet/minecraft/core/particles/ParticleType;)Ljava/lang/String; method_54057 b method_54057 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 flameParticle + p 2 properties + m ()V +c net/minecraft/world/level/block/TorchflowerCropBlock dok net/minecraft/class_8171 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46477 + f I MAX_AGE b field_42775 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE c field_42776 + f F AABB_OFFSET g field_42777 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_BY_AGE h field_42778 + f I BONEMEAL_INCREASE i field_44479 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TransparentBlock dol net/minecraft/class_8923 + f Lcom/mojang/serialization/MapCodec; CODEC b field_47087 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TrapDoorBlock dom net/minecraft/class_2533 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46478 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN b field_11631 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF c field_11625 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED d field_11629 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED e field_11626 + f I AABB_THICKNESS f field_31266 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_OPEN_AABB g field_11627 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_OPEN_AABB h field_11630 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_OPEN_AABB i field_11624 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_OPEN_AABB j field_11633 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BOTTOM_AABB k field_11632 + f Lnet/minecraft/world/phys/shapes/VoxelShape; TOP_AABB l field_11628 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; type m field_42779 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V playSound a method_10740 + p 1 player + p 2 level + p 3 pos + p 4 isOpened + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54058 a method_54058 + m (Lnet/minecraft/world/level/block/TrapDoorBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54059 a method_54059 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V toggle b method_55139 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; getType m method_54766 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/TrapDoorBlock$1 dom$1 net/minecraft/class_2533$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11635 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType b field_11634 + m ()V +c net/minecraft/world/level/block/TrappedChestBlock don net/minecraft/class_2531 + f Lcom/mojang/serialization/MapCodec; CODEC n field_46479 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; method_24181 m method_24181 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TrialSpawnerBlock doo net/minecraft/class_8960 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47348 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STATE b field_47349 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS c field_50170 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;)V method_55140 a method_55140 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;)V method_55141 a method_55141 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TripWireBlock dop net/minecraft/class_2538 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46480 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED b field_11680 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED c field_11683 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DISARMED d field_11679 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH e field_11675 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST f field_11673 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH g field_11678 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST h field_11674 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB i field_11682 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NOT_ATTACHED_AABB j field_11681 + f Ljava/util/Map; PROPERTY_BY_DIRECTION k field_11676 + f I RECHECK_PERIOD l field_31267 + f Lnet/minecraft/world/level/block/Block; hook m field_11677 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54060 a method_54060 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkPressed a method_10780 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateSource a method_10779 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/TripWireBlock;)Lnet/minecraft/world/level/block/Block; method_54061 a method_54061 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shouldConnectTo a method_10778 + p 1 state + p 2 direction + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 hook + p 2 properties + m ()V +c net/minecraft/world/level/block/TripWireBlock$1 dop$1 net/minecraft/class_2538$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11685 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11684 + m ()V +c net/minecraft/world/level/block/TripWireHookBlock doq net/minecraft/class_2537 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46481 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11666 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED c field_11671 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED d field_11669 + f I WIRE_DIST_MIN e field_31268 + f I WIRE_DIST_MAX f field_31269 + f I AABB_OFFSET g field_31270 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB h field_11665 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB i field_11668 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_11670 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_11667 + f I RECHECK_PERIOD l field_31271 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZILnet/minecraft/world/level/block/state/BlockState;)V calculateState a method_10776 + p 0 level + p 1 pos + p 2 hookState + p 3 attaching + p 4 shouldNotifyNeighbours + p 5 searchRange + p 6 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ZZZZ)V emitState a method_10777 + p 0 level + p 1 pos + p 2 attached + p 3 powered + p 4 wasAttached + p 5 wasPowered + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V notifyNeighbors a method_10775 + p 0 block + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TripWireHookBlock$1 doq$1 net/minecraft/class_2537$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_11672 + m ()V +c net/minecraft/world/level/block/TurtleEggBlock dor net/minecraft/class_2542 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46482 + f I MAX_HATCH_LEVEL b field_31272 + f I MIN_EGGS c field_31273 + f I MAX_EGGS d field_31274 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH e field_11711 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; EGGS f field_11710 + f Lnet/minecraft/world/phys/shapes/VoxelShape; ONE_EGG_AABB g field_11712 + f Lnet/minecraft/world/phys/shapes/VoxelShape; MULTIPLE_EGGS_AABB h field_11709 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z onSand a method_10831 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;)Z shouldUpdateHatchLevel a method_10832 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/Entity;)Z canDestroyEgg a method_10835 + p 1 level + p 2 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;I)V destroyEgg a method_10834 + p 1 level + p 2 state + p 3 pos + p 4 entity + p 5 chance + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V decreaseEggs a method_10833 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSand b method_29952 + p 0 reader + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/TwistingVinesBlock dos net/minecraft/class_4777 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46483 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_22172 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/TwistingVinesPlantBlock dot net/minecraft/class_4950 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46484 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_23325 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/VaultBlock dou net/minecraft/class_9197 + f Lcom/mojang/serialization/MapCodec; CODEC a field_48856 + f Lnet/minecraft/world/level/block/state/properties/Property; STATE b field_48857 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING c field_48858 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS d field_50171 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;)V method_56718 a method_56718 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;)V method_56719 a method_56719 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/VineBlock dov net/minecraft/class_2541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46485 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP b field_11703 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH c field_11706 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST d field_11702 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH e field_11699 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST f field_11696 + f Ljava/util/Map; PROPERTY_BY_DIRECTION g field_11697 + f F AABB_OFFSET h field_31275 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB i field_11698 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB j field_11704 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB k field_11705 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB l field_11701 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB m field_11700 + f Ljava/util/Map; shapesCache n field_26659 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z canSpread a method_10824 + p 1 blockReader + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isAcceptableNeighbour a method_10821 + p 0 blockReader + p 1 neighborPos + p 2 attachedFace + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; copyRandomFaces a method_10820 + p 1 sourceState + p 2 spreadState + p 3 random + m (Ljava/util/Map$Entry;)Z method_10826 a method_10826 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; getPropertyForFace a method_10828 + p 0 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSupportAtFace b method_10829 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getUpdatedState i method_10827 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape m method_31018 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasFaces n method_10823 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)I countFaces o method_10822 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasHorizontalConnection p method_10830 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/VineBlock$1 dov$1 net/minecraft/class_2541$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_11708 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_11707 + m ()V +c net/minecraft/world/level/block/WallBannerBlock dow net/minecraft/class_2546 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46486 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11722 + f Ljava/util/Map; SHAPES c field_11723 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54062 a method_54062 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/WallBlock dox net/minecraft/class_2544 + f Lnet/minecraft/world/phys/shapes/VoxelShape; POST_TEST F field_22163 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_TEST G field_22164 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_TEST H field_22165 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_TEST I field_22166 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_TEST J field_22167 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46487 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP b field_11717 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_WALL c field_22156 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_WALL d field_22157 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_WALL e field_22158 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_WALL f field_22159 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED g field_22160 + f Ljava/util/Map; shapeByIndex h field_22161 + f Ljava/util/Map; collisionShapeByIndex i field_22162 + f I WALL_WIDTH j field_31276 + f I WALL_HEIGHT k field_31277 + f I POST_WIDTH l field_31278 + f I POST_COVER_WIDTH m field_31279 + f I WALL_COVER_START n field_31280 + f I WALL_COVER_END o field_31281 + m (FFFFFF)Ljava/util/Map; makeShapes a method_24420 + p 1 width + p 2 depth + p 3 wallPostHeight + p 4 wallMinY + p 5 wallLowHeight + p 6 wallTallHeight + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; topUpdate a method_24421 + p 1 level + p 2 state + p 3 pos + p 4 secondState + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;ZZZZ)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_24422 + p 1 level + p 2 state + p 3 pos + p 4 neighbour + p 5 northConnection + p 6 eastConnection + p 7 southConnection + p 8 westConnection + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/BlockState; sideUpdate a method_24423 + p 1 level + p 2 firstPos + p 3 firstState + p 4 secondPos + p 5 secondState + p 6 dir + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z shouldRaisePost a method_27092 + p 1 state + p 2 neighbour + p 3 shape + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;)Z isConnected a method_24424 + p 0 state + p 1 heightProperty + m (Lnet/minecraft/world/level/block/state/BlockState;ZLnet/minecraft/core/Direction;)Z connectsTo a method_16704 + p 1 state + p 2 sideSolid + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;ZZZZLnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/level/block/state/BlockState; updateSides a method_24425 + p 1 state + p 2 northConnection + p 3 eastConnection + p 4 southConnection + p 5 westConnection + p 6 wallShape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/block/state/properties/WallSide;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; applyWallShape a method_24426 + p 0 baseShape + p 1 height + p 2 lowShape + p 3 tallShape + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z isCovered a method_24427 + p 0 firstShape + p 1 secondShape + m (ZLnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/level/block/state/properties/WallSide; makeWallState a method_24428 + p 1 allowConnection + p 2 shape + p 3 neighbourShape + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WallBlock$1 dox$1 net/minecraft/class_2544$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_22168 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_22169 + m ()V +c net/minecraft/world/level/block/WallHangingSignBlock doy net/minecraft/class_7715 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46488 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_40319 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PLANK_NORTHSOUTH c field_40320 + f Lnet/minecraft/world/phys/shapes/VoxelShape; PLANK_EASTWEST d field_40321 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_NORTHSOUTH e field_40322 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE_EASTWEST i field_40323 + f Ljava/util/Map; AABBS j field_40324 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54063 a method_54063 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canAttachTo a method_45460 + p 1 level + p 2 state + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/item/ItemStack;)Z shouldTryToChainAnotherHangingSign a method_50004 + p 1 state + p 2 player + p 3 hitResult + p 4 sign + p 5 stack + m (Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/level/block/state/BlockState;)Z isHittingEditableSide a method_50005 + p 1 hitResult + p 2 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canPlace b method_45461 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallHangingSignBlock$1 doy$1 net/minecraft/class_7715$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_40325 + m ()V +c net/minecraft/world/level/block/WallSignBlock doz net/minecraft/class_2551 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46489 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_11726 + f F AABB_THICKNESS c field_31282 + f F AABB_BOTTOM d field_31283 + f F AABB_TOP e field_31284 + f Ljava/util/Map; AABBS i field_11727 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54064 a method_54064 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallSkullBlock dpa net/minecraft/class_2549 + f Ljava/util/Map; AABBS b field_11725 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46490 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING d field_11724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54065 a method_54065 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 properties + m ()V +c net/minecraft/world/level/block/WallTorchBlock dpb net/minecraft/class_2555 + f Lcom/mojang/serialization/MapCodec; CODEC f field_46491 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING g field_11731 + f F AABB_OFFSET h field_31285 + f Ljava/util/Map; AABBS i field_11732 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54066 a method_54066 + m (Lnet/minecraft/world/level/block/WallTorchBlock;)Lnet/minecraft/core/particles/SimpleParticleType; method_54067 a method_54067 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z canSurvive b method_56118 + p 0 level + p 1 pos + p 2 facing + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape m method_10841 + p 0 state + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 flameParticle + p 2 properties + m ()V +c net/minecraft/world/level/block/WaterlilyBlock dpc net/minecraft/class_2553 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46492 + f Lnet/minecraft/world/phys/shapes/VoxelShape; AABB b field_11728 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WaterloggedTransparentBlock dpd net/minecraft/class_9009 + f Lcom/mojang/serialization/MapCodec; CODEC a field_47522 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED c field_47523 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeatheringCopper dpe net/minecraft/class_5955 + f Ljava/util/function/Supplier; NEXT_BY_BLOCK w_ field_29564 + f Ljava/util/function/Supplier; PREVIOUS_BY_BLOCK x_ field_29565 + m ()Lcom/google/common/collect/BiMap; method_34739 a method_34739 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getPrevious a method_34732 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34733 a method_34733 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/Block; getFirst b method_34734 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Optional; getPrevious b method_34735 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; method_34736 b method_34736 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Optional; getNext c method_34737 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getFirst c method_34738 + p 0 state + m ()Lcom/google/common/collect/BiMap; method_34740 d method_34740 + m ()V +c net/minecraft/world/level/block/WeatheringCopper$WeatherState dpe$a net/minecraft/class_5955$class_5811 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; UNAFFECTED a field_28704 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; EXPOSED b field_28705 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; WEATHERED c field_28706 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; OXIDIZED d field_28707 + f Lcom/mojang/serialization/Codec; CODEC e field_46493 + f Ljava/lang/String; name f field_46494 + f [Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; $VALUES g field_28708 + m ()[Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; $values a method_36712 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/WeatheringCopperBulbBlock dpf net/minecraft/class_8924 + f Lcom/mojang/serialization/MapCodec; CODEC d field_47088 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState e field_47089 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54767 a method_54767 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54768 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperDoorBlock dpg net/minecraft/class_8925 + f Lcom/mojang/serialization/MapCodec; CODEC l field_47090 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState m field_47091 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54769 a method_54769 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54770 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 weatherState + p 3 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperFullBlock dph net/minecraft/class_5812 + f Lcom/mojang/serialization/MapCodec; CODEC d field_46495 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState e field_28709 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54068 a method_54068 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33632 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperGrateBlock dpi net/minecraft/class_8926 + f Lcom/mojang/serialization/MapCodec; CODEC e field_47092 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState f field_47093 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54771 a method_54771 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_54772 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperSlabBlock dpj net/minecraft/class_5813 + f Lcom/mojang/serialization/MapCodec; CODEC f field_46496 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState g field_28711 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54069 a method_54069 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33633 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperStairBlock dpk net/minecraft/class_5814 + f Lcom/mojang/serialization/MapCodec; CODEC I field_46497 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState J field_28713 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54070 a method_54070 + m (Lnet/minecraft/world/level/block/WeatheringCopperStairBlock;)Lnet/minecraft/world/level/block/state/BlockState; method_54071 a method_54071 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge m method_33634 + m (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 weatherState + p 2 baseState + p 3 properties + m ()V +c net/minecraft/world/level/block/WeatheringCopperTrapDoorBlock dpl net/minecraft/class_8927 + f Lcom/mojang/serialization/MapCodec; CODEC m field_47094 + f Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; weatherState n field_47095 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54773 a method_54773 + m ()Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState; getAge n method_54774 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 type + p 2 weatherState + p 3 properties + m ()V +c net/minecraft/world/level/block/WebBlock dpm net/minecraft/class_2560 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46498 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WeepingVinesBlock dpn net/minecraft/class_4776 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46499 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE g field_22171 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeepingVinesPlantBlock dpo net/minecraft/class_4951 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46500 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPE e field_23326 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WeightedPressurePlateBlock dpp net/minecraft/class_2557 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46501 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER f field_11739 + f I maxWeight g field_11738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54072 a method_54072 + m (Lnet/minecraft/world/level/block/WeightedPressurePlateBlock;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; method_54073 a method_54073 + m (Lnet/minecraft/world/level/block/WeightedPressurePlateBlock;)Ljava/lang/Integer; method_54074 b method_54074 + m (ILnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 maxWeight + p 2 type + p 3 properties + m ()V +c net/minecraft/world/level/block/WetSpongeBlock dpq net/minecraft/class_2565 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46502 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/WitherRoseBlock dpr net/minecraft/class_2563 + f Lcom/mojang/serialization/MapCodec; CODEC e field_46503 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54075 a method_54075 + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 effect + p 2 seconds + p 3 properties + m (Lnet/minecraft/world/item/component/SuspiciousStewEffects;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 suspiciousStewEffects + p 2 properties + m ()V +c net/minecraft/world/level/block/WitherSkullBlock dps net/minecraft/class_2570 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46504 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; witherPatternFull h field_11765 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; witherPatternBase i field_11764 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V checkSpawn a method_56119 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/SkullBlockEntity;)V checkSpawn a method_10898 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51174 a method_51174 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)Z canSpawnMob b method_10899 + p 0 level + p 1 pos + p 2 stack + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_24798 b method_24798 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_51175 c method_51175 + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_24799 d method_24799 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateWitherFull y method_10900 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; getOrCreateWitherBase z method_10897 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WitherWallSkullBlock dpt net/minecraft/class_2567 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46505 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + m ()V +c net/minecraft/world/level/block/WoolCarpetBlock dpu net/minecraft/class_5815 + f Lcom/mojang/serialization/MapCodec; CODEC c field_46506 + f Lnet/minecraft/world/item/DyeColor; color d field_28715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54076 a method_54076 + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_33635 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 color + p 2 properties + m ()V +c net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity dpv net/minecraft/class_2609 + f I SLOT_INPUT b field_31286 + f I SLOT_FUEL c field_31287 + f I SLOT_RESULT d field_31288 + f I DATA_LIT_TIME e field_31289 + f I DATA_LIT_DURATION f field_31290 + f I DATA_COOKING_PROGRESS g field_31291 + f I DATA_COOKING_TOTAL_TIME h field_31292 + f I NUM_DATA_VALUES i field_31293 + f I BURN_TIME_STANDARD j field_31294 + f I BURN_COOL_SPEED k field_31295 + f Lnet/minecraft/core/NonNullList; items l field_11984 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess m field_17374 + f [I SLOTS_FOR_UP q field_11987 + f [I SLOTS_FOR_DOWN r field_11982 + f [I SLOTS_FOR_SIDES s field_11983 + f I litTime t field_11981 + f I litDuration u field_11980 + f I cookingProgress v field_11989 + f I cookingTotalTime w field_11988 + f Ljava/util/Map; fuelCache x field_48375 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; recipesUsed y field_11986 + f Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; quickCheck z field_38234 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Ljava/util/List; getRecipesToAwardAndPopExperience a method_27354 + p 1 level + p 2 popVec + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;IF)V createExperience a method_17760 + p 0 level + p 1 popVec + p 2 recipeIndex + p 3 experience + m (Lnet/minecraft/server/level/ServerPlayer;)V awardUsedRecipesAndPopExperience a method_17763 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)I getTotalCookTime a method_17029 + p 0 level + p 1 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)V serverTick a method_31651 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Ljava/util/List;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lit/unimi/dsi/fastutil/objects/Object2IntMap$Entry;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_17761 a method_17761 + m (Ljava/util/Map;Lnet/minecraft/tags/TagKey;I)V add a method_11194 + p 0 map + p 1 itemTag + p 2 burnTime + m (Ljava/util/Map;Lnet/minecraft/world/level/ItemLike;I)V add a method_11202 + p 0 map + p 1 item + p 2 burnTime + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/core/NonNullList;I)Z canBurn a method_11192 + p 0 registryAccess + p 1 recipe + p 2 inventory + p 3 maxStackSize + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Integer;)V method_24431 a method_24431 + m (Lnet/minecraft/world/item/Item;)Z isNeverAFurnaceFuel b method_26395 + p 0 item + m (Lnet/minecraft/world/item/ItemStack;)I getBurnDuration b method_11200 + p 1 fuel + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Ljava/lang/Integer; method_53790 b method_53790 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/item/crafting/RecipeHolder;Lnet/minecraft/core/NonNullList;I)Z burn b method_11203 + p 0 registryAccess + p 1 recipe + p 2 inventory + p 3 maxStackSize + m (Lnet/minecraft/world/item/ItemStack;)Z isFuel c method_11195 + p 0 stack + m ()V invalidateCache f method_56120 + m ()Ljava/util/Map; getFuel g method_11196 + m ()Z isLit l method_11201 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/crafting/RecipeType;)V + p 1 type + p 2 pos + p 3 blockState + p 4 recipeType + m ()V +c net/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity$1 dpv$1 net/minecraft/class_2609$1 + f Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity; field_17375 a field_17375 + m (Lnet/minecraft/world/level/block/entity/AbstractFurnaceBlockEntity;)V +c net/minecraft/world/level/block/entity/BannerBlockEntity dpw net/minecraft/class_2573 + f I MAX_PATTERNS a field_31296 + f Lorg/slf4j/Logger; LOGGER b field_49402 + f Ljava/lang/String; TAG_PATTERNS c field_31297 + f Lnet/minecraft/network/chat/Component; name d field_11772 + f Lnet/minecraft/world/item/DyeColor; baseColor e field_11774 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; patterns f field_49756 + c A list of all patterns stored on this banner. + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket a method_16886 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/DyeColor;)V fromItem a method_10913 + p 1 stack + p 2 color + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)V method_58121 a method_58121 + m (Ljava/lang/String;)V method_57566 a method_57566 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; getPatterns b method_58122 + m ()Lnet/minecraft/world/item/ItemStack; getItem c method_10907 + m ()Lnet/minecraft/world/item/DyeColor; getBaseColor f method_10908 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/DyeColor;)V + p 1 pos + p 2 blockState + p 3 baseColor + m ()V +c net/minecraft/world/level/block/entity/BannerPattern dpx net/minecraft/class_2582 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_49757 + f Lnet/minecraft/network/codec/StreamCodec; DIRECT_STREAM_CODEC b field_49758 + f Lcom/mojang/serialization/Codec; CODEC c field_49759 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_49760 + f Lnet/minecraft/resources/ResourceLocation; assetId e comp_2456 + f Ljava/lang/String; translationKey f comp_2457 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_2456 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58123 a method_58123 + m ()Ljava/lang/String; translationKey b comp_2457 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers dpy net/minecraft/class_9307 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; EMPTY a field_49404 + f Lcom/mojang/serialization/Codec; CODEC b field_49405 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49406 + f Ljava/util/List; layers d comp_2428 + f Lorg/slf4j/Logger; LOGGER e field_49761 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; removeLast a method_57571 + m ()Ljava/util/List; layers b comp_2428 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers$Builder dpy$a net/minecraft/class_9307$class_3750 + f Lcom/google/common/collect/ImmutableList$Builder; layers a field_16548 + m ()Lnet/minecraft/world/level/block/entity/BannerPatternLayers; build a method_57573 + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Layer;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; add a method_57574 + p 1 layer + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; addAll a method_57575 + p 1 layers + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; add a method_16376 + p 1 pattern + p 2 color + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; addIfRegistered a method_58124 + p 1 patterns + p 2 patternKey + p 3 color + m ()V +c net/minecraft/world/level/block/entity/BannerPatternLayers$Layer dpy$b net/minecraft/class_9307$class_9308 + f Lcom/mojang/serialization/Codec; CODEC a field_49407 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_49408 + f Lnet/minecraft/core/Holder; pattern c comp_2429 + f Lnet/minecraft/world/item/DyeColor; color d comp_2430 + m ()Lnet/minecraft/network/chat/MutableComponent; description a method_58125 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57576 a method_57576 + m ()Lnet/minecraft/core/Holder; pattern b comp_2429 + m ()Lnet/minecraft/world/item/DyeColor; color c comp_2430 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)V + m ()V +c net/minecraft/world/level/block/entity/BannerPatterns dpz net/minecraft/class_7446 + f Lnet/minecraft/resources/ResourceKey; HALF_VERTICAL A field_39136 + f Lnet/minecraft/resources/ResourceKey; HALF_HORIZONTAL B field_39137 + f Lnet/minecraft/resources/ResourceKey; HALF_VERTICAL_MIRROR C field_39138 + f Lnet/minecraft/resources/ResourceKey; HALF_HORIZONTAL_MIRROR D field_39139 + f Lnet/minecraft/resources/ResourceKey; BORDER E field_39140 + f Lnet/minecraft/resources/ResourceKey; CURLY_BORDER F field_39141 + f Lnet/minecraft/resources/ResourceKey; GRADIENT G field_39142 + f Lnet/minecraft/resources/ResourceKey; GRADIENT_UP H field_39143 + f Lnet/minecraft/resources/ResourceKey; BRICKS I field_39144 + f Lnet/minecraft/resources/ResourceKey; GLOBE J field_39145 + f Lnet/minecraft/resources/ResourceKey; CREEPER K field_39146 + f Lnet/minecraft/resources/ResourceKey; SKULL L field_39147 + f Lnet/minecraft/resources/ResourceKey; FLOWER M field_39148 + f Lnet/minecraft/resources/ResourceKey; MOJANG N field_39149 + f Lnet/minecraft/resources/ResourceKey; PIGLIN O field_39150 + f Lnet/minecraft/resources/ResourceKey; FLOW P field_49835 + f Lnet/minecraft/resources/ResourceKey; GUSTER Q field_49836 + f Lnet/minecraft/resources/ResourceKey; BASE a field_39151 + f Lnet/minecraft/resources/ResourceKey; SQUARE_BOTTOM_LEFT b field_39152 + f Lnet/minecraft/resources/ResourceKey; SQUARE_BOTTOM_RIGHT c field_39153 + f Lnet/minecraft/resources/ResourceKey; SQUARE_TOP_LEFT d field_39154 + f Lnet/minecraft/resources/ResourceKey; SQUARE_TOP_RIGHT e field_39155 + f Lnet/minecraft/resources/ResourceKey; STRIPE_BOTTOM f field_39156 + f Lnet/minecraft/resources/ResourceKey; STRIPE_TOP g field_39157 + f Lnet/minecraft/resources/ResourceKey; STRIPE_LEFT h field_39158 + f Lnet/minecraft/resources/ResourceKey; STRIPE_RIGHT i field_39159 + f Lnet/minecraft/resources/ResourceKey; STRIPE_CENTER j field_39160 + f Lnet/minecraft/resources/ResourceKey; STRIPE_MIDDLE k field_39161 + f Lnet/minecraft/resources/ResourceKey; STRIPE_DOWNRIGHT l field_39162 + f Lnet/minecraft/resources/ResourceKey; STRIPE_DOWNLEFT m field_39163 + f Lnet/minecraft/resources/ResourceKey; STRIPE_SMALL n field_39164 + f Lnet/minecraft/resources/ResourceKey; CROSS o field_39165 + f Lnet/minecraft/resources/ResourceKey; STRAIGHT_CROSS p field_39166 + f Lnet/minecraft/resources/ResourceKey; TRIANGLE_BOTTOM q field_39167 + f Lnet/minecraft/resources/ResourceKey; TRIANGLE_TOP r field_39168 + f Lnet/minecraft/resources/ResourceKey; TRIANGLES_BOTTOM s field_39169 + f Lnet/minecraft/resources/ResourceKey; TRIANGLES_TOP t field_39170 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_LEFT u field_39171 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_RIGHT v field_39172 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_LEFT_MIRROR w field_39173 + f Lnet/minecraft/resources/ResourceKey; DIAGONAL_RIGHT_MIRROR x field_39174 + f Lnet/minecraft/resources/ResourceKey; CIRCLE_MIDDLE y field_39175 + f Lnet/minecraft/resources/ResourceKey; RHOMBUS_MIDDLE z field_39176 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_43722 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_43721 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;)V register a method_57577 + p 0 context + p 1 resourceKey + m ()V + m ()V +c net/minecraft/world/level/block/entity/BarrelBlockEntity dqa net/minecraft/class_3719 + f Lnet/minecraft/core/NonNullList; items d field_16410 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter e field_27207 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_17764 + p 1 state + p 2 sound + m (Lnet/minecraft/world/level/block/state/BlockState;Z)V updateBlockState a method_18318 + p 1 state + p 2 open + m ()V recheckOpen l method_20362 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BarrelBlockEntity$1 dqa$1 net/minecraft/class_3719$1 + f Lnet/minecraft/world/level/block/entity/BarrelBlockEntity; field_27208 a field_27208 + m (Lnet/minecraft/world/level/block/entity/BarrelBlockEntity;)V +c net/minecraft/world/level/block/entity/BaseContainerBlockEntity dqb net/minecraft/class_2624 + f Lnet/minecraft/world/LockCode; lockKey d field_12045 + f Lnet/minecraft/network/chat/Component; name e field_17376 + m (ILnet/minecraft/world/entity/player/Inventory;)Lnet/minecraft/world/inventory/AbstractContainerMenu; createMenu a method_5465 + p 1 containerId + p 2 inventory + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/LockCode;Lnet/minecraft/network/chat/Component;)Z canUnlock a method_17487 + p 0 player + p 1 code + p 2 displayName + m (Lnet/minecraft/core/NonNullList;)V setItems a method_11281 + p 1 items + m (Lnet/minecraft/world/entity/player/Player;)Z canOpen d method_17489 + p 1 player + m ()Lnet/minecraft/core/NonNullList; getItems j method_11282 + m ()Lnet/minecraft/network/chat/Component; getDefaultName k method_17823 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState +c net/minecraft/world/level/block/entity/BeaconBlockEntity dqc net/minecraft/class_2580 + f Ljava/util/List; BEACON_EFFECTS a field_11801 + c A list of effects that beacons can apply. + f I DATA_LEVELS b field_31300 + f I DATA_PRIMARY c field_31301 + f I DATA_SECONDARY d field_31302 + f I NUM_DATA_VALUES e field_31303 + f I MAX_LEVELS f field_31304 + f Ljava/util/Set; VALID_EFFECTS g field_11798 + f I BLOCKS_CHECK_PER_TICK h field_31305 + f Lnet/minecraft/network/chat/Component; DEFAULT_NAME i field_40328 + f Ljava/lang/String; TAG_PRIMARY j field_45784 + f Ljava/lang/String; TAG_SECONDARY k field_45785 + f Ljava/util/List; beamSections l field_19177 + c A list of beam segments for this beacon. + f Ljava/util/List; checkingBeamSections m field_19178 + f I levels q field_11803 + c The number of levels of this beacon's pyramid. + f I lastCheckY r field_19179 + f Lnet/minecraft/core/Holder; primaryPower s field_11795 + c The primary effect given by this beacon. + f Lnet/minecraft/core/Holder; secondaryPower t field_11799 + c The secondary effect given by this beacon. + f Lnet/minecraft/network/chat/Component; name u field_11793 + c The custom name for this beacon. + f Lnet/minecraft/world/LockCode; lockKey v field_17377 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess w field_17378 + m (Lnet/minecraft/world/level/Level;III)I updateBase a method_20293 + p 0 level + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V applyEffects a method_10940 + p 0 level + p 1 pos + p 2 beaconLevel + p 3 primaryEffect + p 4 secondaryEffect + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_10938 + p 0 level + p 1 pos + p 2 sound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)V tick a method_16896 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; filterEffect a method_53251 + p 0 effect + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/core/Holder; loadEffect a method_53252 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)V method_55779 a method_55779 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/core/Holder;)V storeEffect a method_53253 + p 0 tag + p 1 key + p 2 effect + m (Lnet/minecraft/network/chat/Component;)V setCustomName a method_10936 + c Sets the custom name for this beacon. + p 1 name + m ()Ljava/util/List; getBeamSections b method_10937 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_38236 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/BeaconBlockEntity$1 dqc$1 net/minecraft/class_2580$1 + f Lnet/minecraft/world/level/block/entity/BeaconBlockEntity; field_17379 a field_17379 + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)V +c net/minecraft/world/level/block/entity/BeaconBlockEntity$BeaconBeamSection dqc$a net/minecraft/class_2580$class_2581 + f I color a field_11805 + c The colors of this section of a beacon beam, in RGB float format. + f I height b field_11804 + m ()V increaseHeight a method_10942 + m ()I getColor b method_10944 + m ()I getHeight c method_10943 + m (I)V + p 1 color +c net/minecraft/world/level/block/entity/BedBlockEntity dqd net/minecraft/class_2587 + f Lnet/minecraft/world/item/DyeColor; color a field_11869 + m (Lnet/minecraft/world/item/DyeColor;)V setColor a method_11019 + p 1 color + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38237 + m ()Lnet/minecraft/world/item/DyeColor; getColor c method_11018 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/DyeColor;)V + p 1 pos + p 2 blockState + p 3 color +c net/minecraft/world/level/block/entity/BeehiveBlockEntity dqe net/minecraft/class_4482 + f I MAX_OCCUPANTS a field_31312 + f I MIN_OCCUPATION_TICKS_NECTARLESS b field_31313 + f Lorg/slf4j/Logger; LOGGER c field_49409 + f Ljava/lang/String; TAG_FLOWER_POS d field_31306 + f Ljava/lang/String; BEES e field_31311 + f Ljava/util/List; IGNORED_BEE_TAGS f field_33570 + f I MIN_TICKS_BEFORE_REENTERING_HIVE g field_31314 + f I MIN_OCCUPATION_TICKS_NECTAR h field_31315 + f Ljava/util/List; stored i field_20423 + f Lnet/minecraft/core/BlockPos; savedFlowerPos j field_20424 + m (Lnet/minecraft/world/entity/Entity;)V addOccupant a method_21848 + p 1 occupant + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)V emptyAllLivingFromHive a method_21850 + p 1 player + p 2 state + p 3 releaseStatus + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;Ljava/util/List;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;Lnet/minecraft/core/BlockPos;)Z releaseOccupant a method_21855 + p 0 level + p 1 pos + p 2 state + p 3 occupant + p 4 storedInHives + p 5 releaseStatus + p 6 storedFlowerPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V serverTick a method_31656 + p 0 level + p 1 pos + p 2 state + p 3 beehive + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/core/BlockPos;)V tickOccupants a method_21858 + p 0 level + p 1 pos + p 2 state + p 3 data + p 4 savedFlowerPos + m (Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;)V storeBee a method_35292 + p 1 occupant + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase;)Z method_40019 a method_40019 + m (Lnet/minecraft/world/level/block/state/BlockState;)I getHoneyLevel a method_23902 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;)Ljava/util/List; releaseAllOccupants a method_21852 + p 1 state + p 2 releaseStatus + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeData;)Z method_21854 a method_21854 + m (Ljava/lang/String;)V method_57578 a method_57578 + m (Ljava/util/List;)V method_57579 a method_57579 + m ()Z isFireNearby b method_23280 + m ()Z isEmpty c method_22400 + m ()Z isFull d method_21856 + m ()I getOccupantCount f method_23903 + m ()Z isSedated j method_23904 + m ()Z hasSavedFlowerPos k method_21857 + m ()Ljava/util/List; getBees l method_57580 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeData dqe$a net/minecraft/class_4482$class_4483 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; occupant a field_49410 + f I ticksInHive b field_20426 + m ()Z tick a method_57581 + m ()Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; toOccupant b method_57582 + m ()Z hasNectar c method_57583 + m (Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant;)V + p 1 occupant +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus dqe$b net/minecraft/class_4482$class_4484 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; HONEY_DELIVERED a field_20428 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; BEE_RELEASED b field_20429 + f Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; EMERGENCY c field_21052 + f [Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; $VALUES d field_20430 + m ()[Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$BeeReleaseStatus; $values a method_36714 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant dqe$c net/minecraft/class_4482$class_9309 + f Lcom/mojang/serialization/Codec; CODEC a field_49411 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_49412 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49413 + f Lnet/minecraft/world/item/component/CustomData; entityData d comp_2431 + f I ticksInHive e comp_2432 + f I minTicksInHive f comp_2433 + m ()Lnet/minecraft/world/item/component/CustomData; entityData a comp_2431 + m (I)Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; create a method_57584 + p 0 ticksInHive + m (ILnet/minecraft/world/entity/animal/Bee;)V setBeeReleaseData a method_57585 + p 0 ticksInHive + p 1 bee + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity$Occupant; of a method_57586 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57587 a method_57587 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/entity/Entity; createEntity a method_57588 + p 1 level + p 2 pos + m ()I ticksInHive b comp_2432 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_57589 b method_57589 + m ()I minTicksInHive c comp_2433 + m (Lnet/minecraft/world/item/component/CustomData;II)V + m ()V +c net/minecraft/world/level/block/entity/BellBlockEntity dqf net/minecraft/class_3721 + f I ticks a field_17095 + c How many ticks the bell has been ringing. + f Z shaking b field_17096 + f Lnet/minecraft/core/Direction; clickDirection c field_17097 + f I DURATION d field_31316 + f I GLOW_DURATION e field_31317 + f I MIN_TICKS_BETWEEN_SEARCHES f field_31318 + f I MAX_RESONATION_TICKS g field_31319 + f I TICKS_BEFORE_RESONATION h field_31320 + f I SEARCH_RADIUS i field_31321 + f I HEAR_BELL_RADIUS j field_31322 + f I HIGHLIGHT_RAIDERS_RADIUS k field_31323 + f J lastRingTimestamp l field_19155 + f Ljava/util/List; nearbyEntities m field_19156 + f Z resonating q field_19157 + f I resonationTicks r field_19158 + c A tick counter before raiders are revealed. At {@link #TICKS_BEFORE_RESONATION} ticks, the resonation sound is played, and at {@link #MAX_RESONATION_TICKS}, nearby raiders are revealed. + m (Lnet/minecraft/world/entity/LivingEntity;)V glow a method_20520 + p 0 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;)V clientTick a method_31657 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;Lnet/minecraft/world/level/block/entity/BellBlockEntity$ResonationEndAction;)V tick a method_31658 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + p 4 resonationEndAction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V makeRaidersGlow a method_20521 + p 0 level + p 1 pos + p 2 raiders + m (Lnet/minecraft/core/BlockPos;ILorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V method_20519 a method_20519 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z isRaiderWithinRange a method_20518 + p 0 pos + p 1 raider + m (Lnet/minecraft/core/BlockPos;Ljava/util/List;)Z areRaidersNearby a method_20523 + p 0 pos + p 1 raiders + m (Lnet/minecraft/core/Direction;)V onHit a method_17031 + p 1 direction + m ()V updateEntities b method_20219 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BellBlockEntity;)V serverTick b method_31659 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V showBellParticles b method_20218 + p 0 level + p 1 pos + p 2 raiders + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_31660 b method_31660 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_20217 c method_20217 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/LivingEntity;)Z method_31661 d method_31661 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BellBlockEntity$ResonationEndAction dqf$a net/minecraft/class_3721$class_5557 +c net/minecraft/world/level/block/entity/BlastFurnaceBlockEntity dqg net/minecraft/class_3720 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/BlockEntity dqh net/minecraft/class_2586 + c

Interface {@link net.fabricmc.fabric.api.blockview.v2.RenderDataBlockEntity} injected by mod fabric-block-view-api-v2

\n

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f Lorg/slf4j/Logger; LOGGER d field_11868 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; type e field_11864 + f Lnet/minecraft/world/level/block/state/BlockState; blockState f field_11866 + f Lnet/minecraft/core/component/DataComponentMap; components g field_50172 + f Lnet/minecraft/world/level/Level; level n field_11863 + f Lnet/minecraft/core/BlockPos; worldPosition o field_11867 + f Z remove p field_11865 + m (Lnet/minecraft/world/item/ItemStack;)V applyComponentsFromItemStack a method_58683 + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/HolderLookup$Provider;)V saveToItem a method_38240 + p 1 stack + p 2 registries + m (Lnet/minecraft/world/level/Level;)V setLevel a method_31662 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setChanged a method_31663 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/entity/BlockEntity$DataComponentInput;)V applyImplicitComponents a method_57568 + p 1 componentInput + m (Lnet/minecraft/world/level/block/state/BlockState;)V validateBlockState a method_61175 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17898 a method_17898 + m (Ljava/lang/String;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/network/chat/Component; parseCustomNameSafe a method_59894 + p 0 customName + p 1 registries + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17899 a method_17899 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/block/entity/BlockEntity; loadStatic a method_11005 + p 0 pos + p 1 state + p 2 tag + p 3 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; getUpdateTag a method_16887 + p 1 registries + m (Lnet/minecraft/core/component/DataComponentMap$Builder;)V collectImplicitComponents a method_57567 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;)V setComponents a method_58684 + p 1 components + m (Lnet/minecraft/core/component/DataComponentMap;Lnet/minecraft/core/component/DataComponentPatch;)V applyComponents a method_58685 + p 1 components + p 2 patch + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_11003 + p 1 reportCategory + m (Lnet/minecraft/nbt/CompoundTag;)V removeComponentsFromTag a method_57569 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/block/entity/BlockEntityType;)V addEntityType a method_38238 + p 0 tag + p 1 entityType + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadAdditional a method_11014 + p 1 tag + p 2 registries + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/block/entity/BlockEntity; method_17897 a method_17897 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_58686 a method_58686 + m ()V setRemoved aA_ method_11012 + c Marks this {@code BlockEntity} as no longer valid (removed from the level). + m ()Lnet/minecraft/core/BlockPos; getBlockPos aD_ method_11016 + m (II)Z triggerEvent a_ method_11004 + p 1 id + p 2 type + m ()Lnet/minecraft/network/protocol/Packet; getUpdatePacket az_ method_38235 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValidBlockState b method_61176 + m (Ljava/lang/String;)V method_58687 b method_58687 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithFullMetadata b method_38242 + p 1 registries + m (Lnet/minecraft/core/component/DataComponentMap;)V method_58688 b method_58688 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/core/BlockPos; getPosFromTag b method_38239 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V saveAdditional b method_11007 + p 1 tag + p 2 registries + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState c method_31664 + p 1 blockState + m (Ljava/lang/String;)V method_58689 c method_58689 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithId c method_38243 + p 1 registries + m (Lnet/minecraft/nbt/CompoundTag;)V saveId c method_38241 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadWithComponents c method_58690 + p 1 tag + p 2 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveWithoutMetadata d method_38244 + p 1 registries + m (Lnet/minecraft/nbt/CompoundTag;)V saveMetadata d method_10999 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadCustomOnly d method_58691 + p 1 tag + p 2 registries + m ()V setChanged e method_5431 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveCustomOnly e method_58692 + p 1 registries + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; saveCustomAndMetadata f method_59535 + p 1 registries + m ()Lnet/minecraft/world/level/Level; getLevel i method_10997 + m ()Ljava/lang/String; getNameForReporting k method_61177 + m ()Z hasLevel m method_11002 + c @return whether this BlockEntity's level has been set + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState n method_11010 + m ()Z isRemoved o method_11015 + m ()V clearRemoved p method_10996 + c Marks this {@code BlockEntity} as valid again (no longer removed from the level). + m ()Z onlyOpCanSetNbt q method_11011 + m ()Lnet/minecraft/world/level/block/entity/BlockEntityType; getType r method_11017 + m ()Lnet/minecraft/core/component/DataComponentMap; collectComponents s method_57590 + m ()Lnet/minecraft/core/component/DataComponentMap; components t method_58693 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m ()V +c net/minecraft/world/level/block/entity/BlockEntity$1 dqh$1 net/minecraft/class_2586$1 + f Ljava/util/Set; val$implicitComponents a field_50173 + f Lnet/minecraft/core/component/DataComponentMap; val$fullView b field_50174 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/util/Set;Lnet/minecraft/core/component/DataComponentMap;)V +c net/minecraft/world/level/block/entity/BlockEntity$ComponentHelper dqh$a net/minecraft/class_2586$class_9472 + f Lcom/mojang/serialization/Codec; COMPONENTS_CODEC a field_50176 + m ()V + m ()V +c net/minecraft/world/level/block/entity/BlockEntity$DataComponentInput dqh$b net/minecraft/class_2586$class_9473 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/Object; get a method_58694 + p 1 component + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Ljava/lang/Object; getOrDefault a method_58695 + p 1 component + p 2 defaultValue +c net/minecraft/world/level/block/entity/BlockEntityTicker dqi net/minecraft/class_5558 +c net/minecraft/world/level/block/entity/BlockEntityType dqj net/minecraft/class_2591 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityType} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/level/block/entity/BlockEntityType; BARREL A field_16411 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SMOKER B field_16414 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BLAST_FURNACE C field_16415 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; LECTERN D field_16412 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BELL E field_16413 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; JIGSAW F field_16549 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CAMPFIRE G field_17380 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BEEHIVE H field_20431 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_SENSOR I field_28117 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CALIBRATED_SCULK_SENSOR J field_43258 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_CATALYST K field_37647 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SCULK_SHRIEKER L field_37648 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CHISELED_BOOKSHELF M field_40329 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BRUSHABLE_BLOCK N field_42780 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DECORATED_POT O field_42781 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CRAFTER P field_46808 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; TRIAL_SPAWNER Q field_47352 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; VAULT R field_48859 + f Lorg/slf4j/Logger; LOGGER S field_11893 + f Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier; factory T field_11892 + f Ljava/util/Set; validBlocks U field_19315 + f Lcom/mojang/datafixers/types/Type; dataType V field_11909 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder W field_45786 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; FURNACE a field_11903 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CHEST b field_11914 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; TRAPPED_CHEST c field_11891 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; ENDER_CHEST d field_11901 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; JUKEBOX e field_11907 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DISPENSER f field_11887 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DROPPER g field_11899 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SIGN h field_11911 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; HANGING_SIGN i field_40330 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; MOB_SPAWNER j field_11889 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; PISTON k field_11897 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BREWING_STAND l field_11894 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; ENCHANTING_TABLE m field_11912 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; END_PORTAL n field_11898 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BEACON o field_11890 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SKULL p field_11913 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; DAYLIGHT_DETECTOR q field_11900 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; HOPPER r field_11888 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; COMPARATOR s field_11908 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BANNER t field_11905 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; STRUCTURE_BLOCK u field_11895 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; END_GATEWAY v field_11906 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; COMMAND_BLOCK w field_11904 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; SHULKER_BOX x field_11896 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; BED y field_11910 + f Lnet/minecraft/world/level/block/entity/BlockEntityType; CONDUIT z field_11902 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder a method_53254 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_24182 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/resources/ResourceLocation; getKey a method_11033 + p 0 blockEntityType + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isValid a method_20526 + p 1 state + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/BlockEntityType$Builder;)Lnet/minecraft/world/level/block/entity/BlockEntityType; register a method_11030 + p 0 key + p 1 builder + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/entity/BlockEntity; create a method_11032 + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;Ljava/util/Set;Lcom/mojang/datafixers/types/Type;)V + p 1 factory + p 2 validBlocks + p 3 dataType + m ()V +c net/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier dqj$a net/minecraft/class_2591$class_5559 +c net/minecraft/world/level/block/entity/BlockEntityType$Builder dqj$b net/minecraft/class_2591$class_2592 + c

Interface {@link net.fabricmc.fabric.api.object.builder.v1.block.entity.FabricBlockEntityType.Builder} injected by mod fabric-object-builder-api-v1

+ f Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier; factory a field_11915 + f Ljava/util/Set; validBlocks b field_19316 + m (Lcom/mojang/datafixers/types/Type;)Lnet/minecraft/world/level/block/entity/BlockEntityType; build a method_11034 + p 1 dataType + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/entity/BlockEntityType$Builder; of a method_20528 + p 0 factory + p 1 validBlocks + m (Lnet/minecraft/world/level/block/entity/BlockEntityType$BlockEntitySupplier;Ljava/util/Set;)V + p 1 factory + p 2 validBlocks +c net/minecraft/world/level/block/entity/BrewingStandBlockEntity dqk net/minecraft/class_2589 + f I FUEL_USES b field_31324 + f I DATA_BREW_TIME c field_31325 + f I DATA_FUEL_USES d field_31326 + f I NUM_DATA_VALUES e field_31327 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess f field_17381 + f I INGREDIENT_SLOT g field_31328 + f I FUEL_SLOT h field_31329 + f [I SLOTS_FOR_UP i field_11886 + f [I SLOTS_FOR_DOWN j field_11879 + f [I SLOTS_FOR_SIDES k field_11880 + f Lnet/minecraft/core/NonNullList; items l field_11882 + c The items currently placed in the slots of the brewing stand. + f I brewTime m field_11878 + f [Z lastPotionCount q field_11883 + f Lnet/minecraft/world/item/Item; ingredient r field_11881 + f I fuel s field_11885 + m (Lnet/minecraft/world/item/alchemy/PotionBrewing;Lnet/minecraft/core/NonNullList;)Z isBrewable a method_11027 + p 0 potionBrewing + p 1 items + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity;)V serverTick a method_31665 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/NonNullList;)V doBrew a method_11029 + p 0 level + p 1 pos + p 2 items + m ()[Z getPotionBits f method_11028 + c @return an array of size 3 where every element represents whether the respective slot is not empty + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/BrewingStandBlockEntity$1 dqk$1 net/minecraft/class_2589$1 + f Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity; field_17382 a field_17382 + m (Lnet/minecraft/world/level/block/entity/BrewingStandBlockEntity;)V +c net/minecraft/world/level/block/entity/BrushableBlockEntity dql net/minecraft/class_8174 + f Lorg/slf4j/Logger; LOGGER a field_42801 + f Ljava/lang/String; LOOT_TABLE_TAG b field_42802 + f Ljava/lang/String; LOOT_TABLE_SEED_TAG c field_42803 + f Ljava/lang/String; HIT_DIRECTION_TAG d field_42804 + f Ljava/lang/String; ITEM_TAG e field_42805 + f I BRUSH_COOLDOWN_TICKS f field_42806 + f I BRUSH_RESET_TICKS g field_42807 + f I REQUIRED_BRUSHES_TO_BREAK h field_42808 + f I brushCount i field_42809 + f J brushCountResetsAtTick j field_42810 + f J coolDownEndsAtTick k field_42811 + f Lnet/minecraft/world/item/ItemStack; item l field_42812 + f Lnet/minecraft/core/Direction; hitDirection m field_42813 + f Lnet/minecraft/resources/ResourceKey; lootTable q field_42814 + f J lootTableSeed r field_42815 + m (JLnet/minecraft/world/entity/player/Player;Lnet/minecraft/core/Direction;)Z brush a method_49215 + p 1 startTick + p 3 player + p 4 hitDirection + m (Lnet/minecraft/resources/ResourceKey;J)V setLootTable a method_49216 + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/entity/player/Player;)V unpackLootTable a method_49217 + p 1 player + m ()V checkReset b method_49219 + m (Lnet/minecraft/world/entity/player/Player;)V brushingCompleted b method_49218 + p 1 player + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_49221 + m (Lnet/minecraft/world/entity/player/Player;)V dropContent c method_49220 + p 1 player + m (Lnet/minecraft/nbt/CompoundTag;)Z tryLoadLootTable c method_49222 + p 1 tag + m ()Lnet/minecraft/core/Direction; getHitDirection d method_49224 + m (Lnet/minecraft/nbt/CompoundTag;)Z trySaveLootTable d method_49223 + p 1 tag + m ()Lnet/minecraft/world/item/ItemStack; getItem f method_49225 + m ()I getCompletionState j method_49226 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity dqm net/minecraft/class_8239 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity$VibrationUser dqm$a net/minecraft/class_8239$class_8240 + f Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity; field_44609 a field_44609 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I getBackSignal a method_49832 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/block/entity/CalibratedSculkSensorBlockEntity;Lnet/minecraft/core/BlockPos;)V + p 2 pos +c net/minecraft/world/level/block/entity/CampfireBlockEntity dqn net/minecraft/class_3924 + f I BURN_COOL_SPEED a field_31330 + f I NUM_SLOTS b field_31331 + f Lnet/minecraft/core/NonNullList; items c field_17383 + f [I cookingProgress d field_17384 + f [I cookingTime e field_17385 + f Lnet/minecraft/world/item/crafting/RecipeManager$CachedCheck; quickCheck f field_38235 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;I)Z placeFood a method_17503 + p 1 entity + p 2 food + p 3 cookTime + m (Lnet/minecraft/world/item/crafting/SingleRecipeInput;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_17504 a method_17504 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V cookTick a method_31666 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/core/NonNullList; getItems b method_17505 + c @return the items currently held in this campfire + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/Optional; getCookableRecipe b method_17502 + p 1 stack + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V cooldownTick b method_31667 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket c method_38245 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;)V particleTick c method_31668 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()V dowse d method_17506 + m ()V markUpdated f method_17510 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ChestBlockEntity dqo net/minecraft/class_2595 + f I EVENT_SET_OPEN_COUNT d field_31332 + f Lnet/minecraft/core/NonNullList; items e field_11927 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter f field_27209 + f Lnet/minecraft/world/level/block/entity/ChestLidController; chestLidController g field_27210 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getOpenCount a method_11048 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V signalOpenCount a method_11049 + p 1 level + p 2 pos + p 3 state + p 4 eventId + p 5 eventParam + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/sounds/SoundEvent;)V playSound a method_11050 + p 0 level + p 1 pos + p 2 state + p 3 sound + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V lidAnimateTick a method_31670 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V swapContents a method_11047 + p 0 chest + p 1 otherChest + m ()V recheckOpen l method_31671 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ChestBlockEntity$1 dqo$1 net/minecraft/class_2595$1 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; field_27211 a field_27211 + m (Lnet/minecraft/world/level/block/entity/ChestBlockEntity;)V +c net/minecraft/world/level/block/entity/ChestLidController dqp net/minecraft/class_5560 + f Z shouldBeOpen a field_27212 + f F openness b field_27213 + f F oOpenness c field_27214 + m ()V tickLid a method_31672 + m (F)F getOpenness a method_31673 + p 1 partialTicks + m (Z)V shouldBeOpen a method_31674 + p 1 shouldBeOpen + m ()V +c net/minecraft/world/level/block/entity/ChiseledBookShelfBlockEntity dqq net/minecraft/class_7716 + f I MAX_BOOKS_IN_STORAGE b field_40331 + f Lorg/slf4j/Logger; LOGGER c field_40898 + f Lnet/minecraft/core/NonNullList; items d field_41314 + f I lastInteractedSlot e field_41601 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;)Z method_51356 a method_51356 + m (I)V updateState c method_47585 + p 1 slot + m ()I count f method_47587 + m ()I getLastInteractedSlot j method_47887 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/CommandBlockEntity dqr net/minecraft/class_2593 + f Z powered a field_11919 + f Z auto b field_11918 + f Z conditionMet c field_11917 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock d field_11920 + m (Z)V setPowered a method_11038 + p 1 powered + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock b method_11040 + m (Z)V setAutomatic b method_11041 + p 1 auto + m ()Z isPowered c method_11043 + m ()Z isAutomatic d method_11042 + m ()V onModeSwitch f method_23359 + m ()Z wasConditionMet j method_11044 + m ()Z markConditionMet k method_11045 + m ()Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; getMode l method_11039 + m ()Z isConditional u method_11046 + m ()V scheduleTick v method_23360 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/CommandBlockEntity$1 dqr$1 net/minecraft/class_2593$1 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity; field_11921 b field_11921 + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V +c net/minecraft/world/level/block/entity/CommandBlockEntity$Mode dqr$a net/minecraft/class_2593$class_2594 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; SEQUENCE a field_11922 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; AUTO b field_11923 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; REDSTONE c field_11924 + f [Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; $VALUES d field_11925 + m ()[Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; $values a method_36715 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/ComparatorBlockEntity dqs net/minecraft/class_2599 + f I output a field_11943 + m (I)V setOutputSignal a method_11070 + p 1 output + m ()I getOutputSignal b method_11071 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/ConduitBlockEntity dqt net/minecraft/class_2597 + f I tickCount a field_11936 + f I BLOCK_REFRESH_RATE b field_31333 + f I EFFECT_DURATION c field_31334 + f F ROTATION_SPEED d field_31335 + f I MIN_ACTIVE_SIZE e field_31336 + f I MIN_KILL_SIZE f field_31337 + f I KILL_RANGE g field_31338 + f [Lnet/minecraft/world/level/block/Block; VALID_BLOCKS h field_11931 + f F activeRotation i field_11932 + f Z isActive j field_11934 + f Z isHunting k field_11933 + f Ljava/util/List; effectBlocks l field_11937 + f Lnet/minecraft/world/entity/LivingEntity; destroyTarget m field_11939 + f Ljava/util/UUID; destroyTargetUUID q field_11935 + f J nextAmbientSoundActivation r field_11938 + m (F)F getActiveRotation a method_11061 + p 1 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;)Z method_11060 a method_11060 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V updateClientTarget a method_11064 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V clientTick a method_31675 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V updateDestroyTarget a method_11068 + p 0 level + p 1 pos + p 2 state + p 3 positions + p 4 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)Z updateShape a method_11069 + p 0 level + p 1 pos + p 2 positions + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/world/entity/Entity;I)V animationTick a method_11063 + p 0 level + p 1 pos + p 2 positions + p 3 entity + p 4 tickCount + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Lnet/minecraft/world/entity/LivingEntity; findDestroyTarget a method_11056 + p 0 level + p 1 pos + p 2 targetId + m (Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;Ljava/util/List;)V updateHunting a method_31676 + p 0 blockEntity + p 1 positions + m (Ljava/util/UUID;Lnet/minecraft/world/entity/LivingEntity;)Z method_11058 a method_11058 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; getDestroyRangeAABB a method_11059 + p 0 pos + m (Z)V setHunting a method_11062 + p 1 isHunting + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38247 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;)V serverTick b method_31677 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V applyEffects b method_11055 + p 0 level + p 1 pos + p 2 positions + m ()Z isActive c method_11065 + m ()Z isHunting d method_11066 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/ContainerOpenersCounter dqu net/minecraft/class_5561 + f I CHECK_TICK_DELAY a field_31339 + f I openCount b field_27215 + f D maxInteractionRange c field_48376 + m ()I getOpenerCount a method_31678 + m (Lnet/minecraft/world/entity/player/Player;)Z isOwnContainer a method_31679 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V incrementOpeners a method_31684 + p 1 player + p 2 level + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Ljava/util/List; getPlayersWithContainerOpen a method_56121 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V onOpen a method_31681 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;II)V openerCountChanged a method_31682 + p 1 level + p 2 pos + p 3 state + p 4 count + p 5 openCount + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V decrementOpeners b method_31685 + p 1 player + p 2 level + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V onClose b method_31683 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V recheckOpeners c method_31686 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V scheduleRecheck d method_31687 + p 0 level + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/CrafterBlockEntity dqv net/minecraft/class_8887 + f I CONTAINER_WIDTH d field_46809 + f I CONTAINER_HEIGHT e field_46810 + f I CONTAINER_SIZE f field_46811 + f I SLOT_DISABLED g field_46812 + f I SLOT_ENABLED h field_46813 + f I DATA_TRIGGERED i field_46814 + f I NUM_DATA j field_46815 + f Lnet/minecraft/world/inventory/ContainerData; containerData k field_46816 + f Lnet/minecraft/core/NonNullList; items q field_46817 + f I craftingTicksRemaining r field_46818 + m (ILnet/minecraft/world/item/ItemStack;I)Z smallerStackExist a method_54479 + p 1 currentSize + p 2 stack + p 3 slot + m (IZ)V setSlotState a method_54480 + p 1 slot + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;)V serverTick a method_54481 + p 0 level + p 1 pos + p 2 state + p 3 crafter + m (Z)V setTriggered a method_54482 + p 1 triggered + m (I)Z isSlotDisabled c method_54483 + p 1 slot + m (Lnet/minecraft/nbt/CompoundTag;)V addDisabledSlots c method_54486 + p 1 tag + m (I)V setCraftingTicksRemaining d method_54484 + p 1 craftingTicksRemaining + m (Lnet/minecraft/nbt/CompoundTag;)V addTriggered d method_54487 + p 1 tag + m (I)Z slotCanBeDisabled e method_54485 + p 1 slot + m ()Z isTriggered l method_54488 + m ()I getRedstoneSignal u method_54489 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state +c net/minecraft/world/level/block/entity/CrafterBlockEntity$1 dqv$1 net/minecraft/class_8887$1 + f [I slotStates a field_46820 + f I triggered b field_46821 + m (Lnet/minecraft/world/level/block/entity/CrafterBlockEntity;)V +c net/minecraft/world/level/block/entity/DaylightDetectorBlockEntity dqw net/minecraft/class_2603 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/DecoratedPotBlockEntity dqx net/minecraft/class_8172 + f Ljava/lang/String; TAG_SHERDS d field_42782 + f Ljava/lang/String; TAG_ITEM e field_46659 + f I EVENT_POT_WOBBLES f field_46660 + f J wobbleStartedAtTick g field_46661 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; lastWobbleStyle h field_46662 + f Lnet/minecraft/resources/ResourceKey; lootTable i field_47156 + f J lootTableSeed j field_47157 + f Lnet/minecraft/world/level/block/entity/PotDecorations; decorations k field_44706 + f Lnet/minecraft/world/item/ItemStack; item l field_46663 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle;)V wobble a method_54301 + p 1 style + m (Lnet/minecraft/world/level/block/entity/PotDecorations;)Lnet/minecraft/world/item/ItemStack; createDecoratedPotItem a method_52577 + p 0 decorations + m (Lnet/minecraft/world/item/ItemStack;)V setFromItem c method_49196 + p 1 item + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket j method_49200 + m ()Lnet/minecraft/core/Direction; getDirection k method_49204 + m ()Lnet/minecraft/world/level/block/entity/PotDecorations; getDecorations l method_51511 + m ()Lnet/minecraft/world/item/ItemStack; getPotAsItem u method_52578 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state +c net/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle dqx$a net/minecraft/class_8172$class_8837 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; POSITIVE a field_46664 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; NEGATIVE b field_46665 + f I duration c field_46666 + f [Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; $VALUES d field_46667 + m ()[Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity$WobbleStyle; $values a method_54302 + m (Ljava/lang/String;II)V + p 3 duration + m ()V +c net/minecraft/world/level/block/entity/DecoratedPotPattern dqy net/minecraft/class_9766 + f Lnet/minecraft/resources/ResourceLocation; assetId a comp_2801 + m ()Lnet/minecraft/resources/ResourceLocation; assetId a comp_2801 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/world/level/block/entity/DecoratedPotPatterns dqz net/minecraft/class_8173 + f Lnet/minecraft/resources/ResourceKey; BLANK a field_51897 + f Lnet/minecraft/resources/ResourceKey; ANGLER b field_43290 + f Lnet/minecraft/resources/ResourceKey; ARCHER c field_42794 + f Lnet/minecraft/resources/ResourceKey; ARMS_UP d field_42796 + f Lnet/minecraft/resources/ResourceKey; BLADE e field_43259 + f Lnet/minecraft/resources/ResourceKey; BREWER f field_43260 + f Lnet/minecraft/resources/ResourceKey; BURN g field_43261 + f Lnet/minecraft/resources/ResourceKey; DANGER h field_43262 + f Lnet/minecraft/resources/ResourceKey; EXPLORER i field_43263 + f Lnet/minecraft/resources/ResourceKey; FLOW j field_49837 + f Lnet/minecraft/resources/ResourceKey; FRIEND k field_43264 + f Lnet/minecraft/resources/ResourceKey; GUSTER l field_49838 + f Lnet/minecraft/resources/ResourceKey; HEART m field_43265 + f Lnet/minecraft/resources/ResourceKey; HEARTBREAK n field_43266 + f Lnet/minecraft/resources/ResourceKey; HOWL o field_43267 + f Lnet/minecraft/resources/ResourceKey; MINER p field_43268 + f Lnet/minecraft/resources/ResourceKey; MOURNER q field_43269 + f Lnet/minecraft/resources/ResourceKey; PLENTY r field_43270 + f Lnet/minecraft/resources/ResourceKey; PRIZE s field_42795 + f Lnet/minecraft/resources/ResourceKey; SCRAPE t field_49839 + f Lnet/minecraft/resources/ResourceKey; SHEAF u field_43271 + f Lnet/minecraft/resources/ResourceKey; SHELTER v field_43272 + f Lnet/minecraft/resources/ResourceKey; SKULL w field_42797 + f Lnet/minecraft/resources/ResourceKey; SNORT x field_43273 + f Ljava/util/Map; ITEM_TO_POT_TEXTURE y field_42798 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/resources/ResourceKey; getPatternFromItem a method_49206 + p 0 item + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; create a method_49208 + p 0 name + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/block/entity/DecoratedPotPattern; bootstrap a method_49207 + p 0 registry + m (Lnet/minecraft/core/Registry;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)Lnet/minecraft/world/level/block/entity/DecoratedPotPattern; register a method_60512 + p 0 registry + p 1 key + p 2 assetId + m ()V + m ()V +c net/minecraft/world/level/block/entity/DispenserBlockEntity dra net/minecraft/class_2601 + f I CONTAINER_SIZE d field_31340 + f Lnet/minecraft/core/NonNullList; items e field_11945 + m (Lnet/minecraft/util/RandomSource;)I getRandomSlot a method_11076 + p 1 random + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; insertItem b method_11075 + p 1 stack + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/DropperBlockEntity drb net/minecraft/class_2608 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/EnchantingTableBlockEntity drc net/minecraft/class_2605 + f I time a field_11961 + f F flip b field_11958 + f F oFlip c field_11960 + f F flipT d field_11969 + f F flipA e field_11967 + f F open f field_11966 + f F oOpen g field_11965 + f F rot h field_11964 + f F oRot i field_11963 + f F tRot j field_11962 + f Lnet/minecraft/util/RandomSource; RANDOM k field_11968 + f Lnet/minecraft/network/chat/Component; name l field_11959 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/EnchantingTableBlockEntity;)V bookAnimationTick a method_31688 + p 0 level + p 1 pos + p 2 state + p 3 enchantingTable + m (Lnet/minecraft/network/chat/Component;)V setCustomName a method_11179 + p 1 customName + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/EnderChestBlockEntity drd net/minecraft/class_2611 + f Lnet/minecraft/world/level/block/entity/ChestLidController; chestLidController a field_27216 + f Lnet/minecraft/world/level/block/entity/ContainerOpenersCounter; openersCounter b field_27217 + m (Lnet/minecraft/world/entity/player/Player;)V startOpen a method_11219 + p 1 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V lidAnimateTick a method_31689 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()V recheckOpen b method_31690 + m (Lnet/minecraft/world/entity/player/Player;)V stopOpen b method_11220 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;)Z stillValid c method_11218 + p 1 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/EnderChestBlockEntity$1 drd$1 net/minecraft/class_2611$1 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; field_27218 a field_27218 + m (Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity;)V +c net/minecraft/world/level/block/entity/FurnaceBlockEntity dre net/minecraft/class_3866 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/HangingSignBlockEntity drf net/minecraft/class_7717 + f I MAX_TEXT_LINE_WIDTH a field_40333 + f I TEXT_LINE_HEIGHT b field_40334 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/Hopper drg net/minecraft/class_2615 + f Lnet/minecraft/world/phys/AABB; SUCK_AABB s_ field_12026 + m ()D getLevelX H method_11266 + c @return the x position for this hopper. + m ()D getLevelY I method_11264 + c @return the x position for this hopper. + m ()D getLevelZ J method_11265 + c @return the x position for this hopper. + m ()Z isGridAligned K method_57081 + m ()Lnet/minecraft/world/phys/AABB; getSuckAabb am_ method_11262 + m ()V +c net/minecraft/world/level/block/entity/HopperBlockEntity drh net/minecraft/class_2614 + f I MOVE_ITEM_SPEED d field_31341 + f I HOPPER_CONTAINER_SIZE e field_31342 + f [[I CACHED_SLOTS f field_49100 + f Lnet/minecraft/core/NonNullList; items g field_12024 + f I cooldownTime h field_12023 + f J tickedGameTime i field_12022 + f Lnet/minecraft/core/Direction; facing j field_49101 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Z canTakeItemFromContainer a method_11252 + p 0 source + p 1 destination + p 2 stack + p 3 slot + p 4 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/item/ItemStack; addItem a method_11260 + c Attempts to place the passed stack in the container, using as many slots as required.\n@return any leftover stack + p 0 source + p 1 destination + p 2 stack + p 3 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/entity/item/ItemEntity;)Z addItem a method_11247 + p 0 container + p 1 item + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Z canPlaceItemInContainer a method_11244 + p 0 container + p 1 stack + p 2 slot + p 3 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/core/Direction;)[I getSlots a method_17767 + p 0 container + p 1 direction + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;)Z canMergeItems a method_11254 + p 0 stack1 + p 1 stack2 + m (Lnet/minecraft/world/level/Level;DDD)Lnet/minecraft/world/Container; getEntityContainer a method_57009 + p 0 level + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;)Z suckInItems a method_11241 + p 0 level + p 1 hopper + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/Container; getSourceContainer a method_11248 + p 0 level + p 1 hopper + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Z method_31691 a method_31691 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/Container; getContainerAt a method_11250 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Z ejectItems a method_11246 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;DDD)Lnet/minecraft/world/Container; getContainerAt a method_11251 + p 0 level + p 1 pos + p 2 state + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)V entityInside a method_11236 + p 0 level + p 1 pos + p 2 state + p 3 entity + p 4 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)V pushItemsTick a method_31692 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;Ljava/util/function/BooleanSupplier;)Z tryMoveItems a method_11243 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + p 4 validator + m (Lnet/minecraft/world/level/block/entity/Hopper;Lnet/minecraft/world/Container;ILnet/minecraft/core/Direction;)Z tryTakeInItemFromSlot a method_11261 + c Pulls from the specified slot in the container and places in any available slot in the hopper.\n@return {@code true} if the entire stack was moved. + p 0 hopper + p 1 container + p 2 slot + p 3 direction + m (Lnet/minecraft/world/level/block/entity/HopperBlockEntity;Lnet/minecraft/world/entity/item/ItemEntity;)Z method_31693 a method_31693 + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/Container;Lnet/minecraft/world/item/ItemStack;ILnet/minecraft/core/Direction;)Lnet/minecraft/world/item/ItemStack; tryMoveInItem b method_11253 + p 0 source + p 1 destination + p 2 stack + p 3 slot + p 4 direction + m (Lnet/minecraft/world/Container;Lnet/minecraft/core/Direction;)Z isFullContainer b method_11258 + c @return {@code false} if the {@code container} has any room to place items in + p 0 container + p 1 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/Hopper;)Ljava/util/List; getItemsAtAndAbove b method_11237 + p 0 level + p 1 hopper + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/HopperBlockEntity;)Lnet/minecraft/world/Container; getAttachedContainer b method_11255 + p 0 level + p 1 pos + p 2 blockEntity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/Container; getBlockContainer b method_57010 + p 0 level + p 1 pos + p 2 state + m (I)[I createFlatSlots c method_57011 + p 0 size + m (I)V setCooldown d method_11238 + p 1 cooldownTime + m ()Z inventoryFull l method_11256 + m ()Z isOnCooldown u method_11239 + m ()Z isOnCustomCooldown v method_11242 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/JigsawBlockEntity dri net/minecraft/class_3751 + f Ljava/lang/String; TARGET a field_31343 + f Ljava/lang/String; POOL b field_31344 + f Ljava/lang/String; JOINT c field_31345 + f Ljava/lang/String; PLACEMENT_PRIORITY d field_47096 + f Ljava/lang/String; SELECTION_PRIORITY e field_47097 + f Ljava/lang/String; NAME f field_31346 + f Ljava/lang/String; FINAL_STATE g field_31347 + f Lnet/minecraft/resources/ResourceLocation; name h field_16550 + f Lnet/minecraft/resources/ResourceLocation; target i field_16552 + f Lnet/minecraft/resources/ResourceKey; pool j field_23327 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint k field_23328 + f Ljava/lang/String; finalState l field_16551 + f I placementPriority m field_47098 + f I selectionPriority q field_47099 + m (I)V setPlacementPriority a method_54775 + p 1 placementPriority + m (Lnet/minecraft/resources/ResourceKey;)V setPool a method_26398 + p 1 pool + m (Lnet/minecraft/resources/ResourceLocation;)V setName a method_16379 + p 1 name + m (Lnet/minecraft/server/level/ServerLevel;IZ)V generate a method_27191 + p 1 level + p 2 maxDepth + p 3 keepJigsaws + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)V setJoint a method_26396 + p 1 joint + m (Ljava/lang/String;)V setFinalState a method_16377 + p 1 finalState + m ()Lnet/minecraft/resources/ResourceLocation; getName b method_16381 + m (I)V setSelectionPriority b method_54776 + p 1 selectionPriority + m (Lnet/minecraft/resources/ResourceLocation;)V setTarget b method_16378 + p 1 target + m ()Lnet/minecraft/resources/ResourceLocation; getTarget c method_26399 + m ()Lnet/minecraft/resources/ResourceKey; getPool d method_16382 + m ()Ljava/lang/String; getFinalState f method_16380 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; getJoint j method_26400 + m ()I getPlacementPriority k method_54777 + m ()I getSelectionPriority l method_54778 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket u method_38248 + m ()Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; method_26397 v method_26397 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/JigsawBlockEntity$JointType dri$a net/minecraft/class_3751$class_4991 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; ROLLABLE a field_23329 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; ALIGNED b field_23330 + f Ljava/lang/String; name c field_23331 + f [Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; $VALUES d field_23332 + m ()Lnet/minecraft/network/chat/Component; getTranslatedName a method_32357 + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_26401 + p 0 name + m (Ljava/lang/String;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)Z method_26402 a method_26402 + m ()[Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; $values b method_36716 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/entity/JukeboxBlockEntity drj net/minecraft/class_2619 + f Ljava/lang/String; SONG_ITEM_TAG_ID b field_52064 + f Ljava/lang/String; TICKS_SINCE_SONG_STARTED_TAG_ID c field_52065 + f Lnet/minecraft/world/item/ItemStack; item d field_46507 + f Lnet/minecraft/world/item/JukeboxSongPlayer; jukeboxSongPlayer e field_52066 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/JukeboxBlockEntity;)V tick a method_44370 + p 0 level + p 1 pos + p 2 state + p 3 jukebox + m (Lnet/minecraft/core/Holder;)V method_60780 a method_60780 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/Holder;)V method_60781 a method_60781 + m (Z)V notifyItemChangedInJukebox a method_60782 + p 1 hasRecord + m (Lnet/minecraft/core/Holder;)V method_60783 b method_60783 + m (Lnet/minecraft/world/item/ItemStack;)V setSongItemWithoutPlaying c method_49210 + p 1 stack + m ()Lnet/minecraft/world/item/JukeboxSongPlayer; getSongPlayer j method_60784 + m ()V onSongChanged k method_60785 + m ()V popOutTheItem l method_49213 + m ()I getComparatorOutput u method_60992 + m ()V tryForcePlaySong w method_60786 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/LecternBlockEntity drk net/minecraft/class_3722 + f I DATA_PAGE a field_31348 + f I NUM_DATA b field_31349 + f I SLOT_BOOK c field_31350 + f I NUM_SLOTS d field_31351 + f Lnet/minecraft/world/Container; bookAccess e field_17386 + f Lnet/minecraft/world/inventory/ContainerData; dataAccess f field_17387 + f Lnet/minecraft/world/item/ItemStack; book g field_17388 + f I page h field_17389 + f I pageCount i field_17390 + m (I)V setPage a method_17511 + p 1 page + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack a method_17512 + c Creates a CommandSourceStack for resolving the contents of a book. If the player is null, a CommandSourceStack with the generic name {@code "Lectern"} is used. + p 1 player + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)V setBook a method_17514 + c Sets the ItemStack in this lectern. Note that this does not update the block state, use {@link net.minecraft.world.level.block.LecternBlock#tryPlaceBook} for that. + p 1 stack + p 2 player + c the player used for resolving the components within the book + m ()Lnet/minecraft/world/item/ItemStack; getBook b method_17520 + m (Lnet/minecraft/world/item/ItemStack;)V setBook b method_17513 + c Sets the ItemStack in this lectern. Note that this does not update the block state, use {@link net.minecraft.world.level.block.LecternBlock#tryPlaceBook} for that. + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; resolveBook b method_17518 + c Resolves the contents of the passed ItemStack, if it is a book + p 1 stack + p 2 player + m ()Z hasBook c method_17522 + c @return whether the ItemStack in this lectern is a book or written book + m (Lnet/minecraft/world/item/ItemStack;)I getPageCount c method_57591 + p 0 stack + m ()I getPage f method_17523 + m ()I getRedstoneSignal j method_17524 + m ()V onBookItemRemove k method_17525 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/LecternBlockEntity$1 drk$1 net/minecraft/class_3722$1 + f Lnet/minecraft/world/level/block/entity/LecternBlockEntity; field_17391 b field_17391 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;)V +c net/minecraft/world/level/block/entity/LecternBlockEntity$2 drk$2 net/minecraft/class_3722$2 + f Lnet/minecraft/world/level/block/entity/LecternBlockEntity; field_17392 a field_17392 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;)V +c net/minecraft/world/level/block/entity/LidBlockEntity drl net/minecraft/class_2618 + m (F)F getOpenNess a method_11274 + p 1 partialTicks +c net/minecraft/world/level/block/entity/PotDecorations drm net/minecraft/class_8526 + f Lnet/minecraft/world/level/block/entity/PotDecorations; EMPTY a field_44707 + f Lcom/mojang/serialization/Codec; CODEC b field_49414 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_49415 + f Ljava/util/Optional; back d comp_1487 + f Ljava/util/Optional; left e comp_1488 + f Ljava/util/Optional; right f comp_1489 + f Ljava/util/Optional; front g comp_1490 + m ()Ljava/util/List; ordered a method_51512 + m (Ljava/util/List;I)Ljava/util/Optional; getItem a method_51514 + p 0 decorations + p 1 index + m (Ljava/util/Optional;)Lnet/minecraft/world/item/Item; method_57592 a method_57592 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_51513 + p 1 tag + m ()Ljava/util/Optional; back b comp_1487 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/entity/PotDecorations; load b method_51516 + p 0 tag + m ()Ljava/util/Optional; left c comp_1488 + m ()Ljava/util/Optional; right d comp_1489 + m ()Ljava/util/Optional; front e comp_1490 + m (Ljava/util/List;)V + p 1 decorations + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;Lnet/minecraft/world/item/Item;)V + p 1 back + p 2 left + p 3 right + p 4 front + m (Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/block/entity/RandomizableContainerBlockEntity drn net/minecraft/class_2621 + f Lnet/minecraft/resources/ResourceKey; lootTable l field_12037 + f J lootTableSeed m field_12036 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState +c net/minecraft/world/level/block/entity/SculkCatalystBlockEntity dro net/minecraft/class_7132 + f Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener; catalystListener a field_44610 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity;)V serverTick a method_41517 + p 0 level + p 1 pos + p 2 state + p 3 sculkCatalyst + m ()Lnet/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener; getListener b method_51357 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SculkCatalystBlockEntity$CatalystListener dro$a net/minecraft/class_7132$class_8510 + f I PULSE_TICKS a field_44611 + f Lnet/minecraft/world/level/block/SculkSpreader; sculkSpreader b field_44612 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_44613 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource d field_44614 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)V method_51359 a method_51359 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)V bloom a method_51360 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;)V tryAwardItSpreadsAdvancement a method_51361 + p 1 level + p 2 entity + m ()Lnet/minecraft/world/level/block/SculkSpreader; getSculkSpreader d method_51362 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/gameevent/PositionSource;)V + p 1 blockState + p 2 positionSource +c net/minecraft/world/level/block/entity/SculkSensorBlockEntity drp net/minecraft/class_5704 + f Lorg/slf4j/Logger; LOGGER b field_38236 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData c field_44615 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; vibrationListener d field_28118 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser e field_43291 + f I lastVibrationFrequency h field_28119 + m (I)V setLastVibrationFrequency a method_44213 + p 1 lastVibrationFrequency + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_42320 a method_42320 + m (Ljava/lang/String;)V method_60993 a method_60993 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42321 a method_42321 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; createVibrationUser b method_49831 + m (Ljava/lang/String;)V method_60994 b method_60994 + m ()I getLastVibrationFrequency d method_32912 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; getListener f method_32911 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SculkSensorBlockEntity$VibrationUser drp$a net/minecraft/class_5704$class_8241 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource a field_44616 + f I LISTENER_RANGE b field_43292 + f Lnet/minecraft/core/BlockPos; blockPos c field_44617 + f Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity; field_44618 d field_44618 + m (Lnet/minecraft/world/level/block/entity/SculkSensorBlockEntity;Lnet/minecraft/core/BlockPos;)V + p 2 pos +c net/minecraft/world/level/block/entity/SculkShriekerBlockEntity drq net/minecraft/class_7133 + f Lorg/slf4j/Logger; LOGGER b field_38237 + f I WARNING_SOUND_RADIUS c field_38750 + f I WARDEN_SPAWN_ATTEMPTS d field_38751 + f I WARDEN_SPAWN_RANGE_XZ e field_38752 + f I WARDEN_SPAWN_RANGE_Y h field_38753 + f I DARKNESS_RADIUS i field_38754 + f I SHRIEKING_TICKS j field_38756 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; SOUND_BY_LEVEL k field_38755 + f I warningLevel l field_38757 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; vibrationUser m field_44619 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; vibrationData q field_44620 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; vibrationListener r field_38239 + m (I)V method_44016 a method_44016 + m (Lnet/minecraft/server/level/ServerLevel;)V tryRespond a method_43147 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;)V tryShriek a method_43141 + p 1 level + p 2 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V shriek a method_44017 + p 1 level + p 2 sourceEntity + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/server/level/ServerPlayer; tryGetPlayer a method_44018 + p 0 entity + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)V method_42322 a method_42322 + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_43146 a method_43146 + m (Ljava/lang/String;)V method_60995 a method_60995 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_42323 a method_42323 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener; getListener b method_42325 + m (Lnet/minecraft/server/level/ServerLevel;)Z canRespond b method_43150 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerPlayer;)Z tryToWarn b method_43142 + p 1 level + p 2 player + m (Lnet/minecraft/world/level/Level;)V playWardenReplySound b method_43151 + p 1 level + m (Ljava/lang/String;)V method_60996 b method_60996 + m (Lnet/minecraft/server/level/ServerLevel;)Z trySummonWarden c method_43148 + p 1 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SculkShriekerBlockEntity$VibrationUser drq$a net/minecraft/class_7133$class_8511 + f Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity; field_44621 a field_44621 + f I LISTENER_RADIUS b field_44622 + f Lnet/minecraft/world/level/gameevent/PositionSource; positionSource c field_44623 + m (Lnet/minecraft/world/level/block/entity/SculkShriekerBlockEntity;)V +c net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity drr net/minecraft/class_2627 + f I COLUMNS d field_31354 + f I ROWS e field_31355 + f I CONTAINER_SIZE f field_31356 + f I EVENT_SET_OPEN_COUNT g field_31357 + f I OPENING_TICK_LENGTH h field_31358 + f F MAX_LID_HEIGHT i field_31359 + f F MAX_LID_ROTATION j field_31360 + f [I SLOTS k field_12059 + f Lnet/minecraft/core/NonNullList; itemStacks q field_12054 + f I openCount r field_12053 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; animationStatus s field_12057 + f F progress t field_12056 + f F progressOld u field_12055 + f Lnet/minecraft/world/item/DyeColor; color v field_12060 + m (F)F getProgress a method_11312 + p 1 partialTicks + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;)V tick a method_31694 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/phys/AABB; getBoundingBox a method_11314 + p 1 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V updateAnimation b method_11318 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V moveCollidedEntities c method_11316 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V doNeighborUpdates d method_20047 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadFromTag e method_11319 + p 1 tag + p 2 levelRegistry + m ()Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; getAnimationStatus l method_11313 + m ()Lnet/minecraft/world/item/DyeColor; getColor u method_11320 + m ()Z isClosed v method_27093 + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 color + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus drr$a net/minecraft/class_2627$class_2628 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; CLOSED a field_12065 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; OPENING b field_12066 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; OPENED c field_12063 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; CLOSING d field_12064 + f [Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; $VALUES e field_12067 + m ()[Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity$AnimationStatus; $values a method_36717 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/SignBlockEntity drs net/minecraft/class_2625 + f Lorg/slf4j/Logger; LOGGER a field_43294 + f I MAX_TEXT_LINE_WIDTH b field_40335 + f I TEXT_LINE_HEIGHT c field_40336 + f Ljava/util/UUID; playerWhoMayEdit d field_12046 + f Lnet/minecraft/world/level/block/entity/SignText; frontText e field_43295 + f Lnet/minecraft/world/level/block/entity/SignText; backText f field_43296 + f Z isWaxed g field_43297 + m (Lnet/minecraft/world/entity/player/Player;)Z isFacingFrontText a method_49834 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack a method_50006 + p 0 player + p 1 level + p 2 pos + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)Z executeClickCommandsIfPresent a method_50007 + p 1 player + p 2 level + p 3 pos + p 4 frontText + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; setMessages a method_49835 + p 1 player + p 2 filteredText + p 3 text + m (Lnet/minecraft/world/entity/player/Player;ZLjava/util/List;)V updateSignText a method_49836 + p 1 player + p 2 isFrontText + p 3 filteredText + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SignBlockEntity;)V tick a method_49837 + p 0 level + p 1 pos + p 2 state + p 3 sign + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lnet/minecraft/world/level/Level;Ljava/util/UUID;)V clearInvalidPlayerWhoMayEdit a method_49838 + p 1 sign + p 2 level + p 3 uuid + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; loadLines a method_50008 + p 1 text + m (Lnet/minecraft/world/level/block/entity/SignText;Z)Z setText a method_49840 + p 1 text + p 2 isFrontText + m (Ljava/util/UUID;)V setAllowedPlayerEditor a method_11306 + p 1 playWhoMayEdit + m (Ljava/util/function/UnaryOperator;Z)Z updateText a method_49841 + p 1 updater + p 2 isFrontText + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49842 a method_49842 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; loadLine a method_50009 + p 1 lineText + m (Z)Lnet/minecraft/world/level/block/entity/SignText; getText a method_49843 + p 1 isFrontText + m (ZLnet/minecraft/world/entity/player/Player;)Z canExecuteClickCommands a method_50010 + p 1 isFrontText + p 2 player + m ()I getTextLineHeight b method_45469 + m (Lnet/minecraft/world/entity/player/Player;Ljava/util/List;Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/level/block/entity/SignText; method_49845 b method_49845 + m (Lnet/minecraft/world/level/block/entity/SignText;)Z setBackText b method_49839 + p 1 text + m (Ljava/util/UUID;)Z playerIsTooFarAwayToEdit b method_49847 + p 1 uuid + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49848 b method_49848 + m (Z)Z setWaxed b method_49849 + p 1 isWaxed + m ()I getMaxTextLineWidth c method_45470 + m (Lnet/minecraft/world/level/block/entity/SignText;)Z setFrontText c method_49846 + p 1 text + m ()Lnet/minecraft/sounds/SoundEvent; getSignInteractionFailedSoundEvent d method_54303 + m (Lnet/minecraft/world/level/block/entity/SignText;)V method_49850 d method_49850 + m (Lnet/minecraft/world/level/block/entity/SignText;)V method_49851 e method_49851 + m ()Lnet/minecraft/world/level/block/entity/SignText; createDefaultSignText f method_49852 + m ()Lnet/minecraft/world/level/block/entity/SignText; getFrontText j method_49853 + m ()Lnet/minecraft/world/level/block/entity/SignText; getBackText k method_49854 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket l method_38249 + m ()Ljava/util/UUID; getPlayerWhoMayEdit u method_11305 + m ()Z isWaxed v method_49855 + m ()V markUpdated w method_34272 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m ()V +c net/minecraft/world/level/block/entity/SignText drt net/minecraft/class_8242 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_43298 + f I LINES b field_43299 + f Lcom/mojang/serialization/Codec; LINES_CODEC c field_43300 + f [Lnet/minecraft/network/chat/Component; messages d field_43301 + f [Lnet/minecraft/network/chat/Component; filteredMessages e field_43302 + f Lnet/minecraft/world/item/DyeColor; color f field_43303 + f Z hasGlowingText g field_43304 + f [Lnet/minecraft/util/FormattedCharSequence; renderMessages h field_43305 + f Z renderMessagedFiltered i field_43306 + m ()Z hasGlowingText a method_49856 + m (ILnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/block/entity/SignText; setMessage a method_49857 + p 1 index + p 2 text + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/block/entity/SignText; setMessage a method_49858 + p 1 index + p 2 text + p 3 filteredText + m (IZ)Lnet/minecraft/network/chat/Component; getMessage a method_49859 + p 1 index + p 2 isFiltered + m (Lnet/minecraft/world/entity/player/Player;)Z hasMessage a method_49861 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49863 a method_49863 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/SignText; setColor a method_49862 + p 1 color + m (Lnet/minecraft/world/level/block/entity/SignText;)Ljava/lang/Boolean; method_49864 a method_49864 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_49865 a method_49865 + m (Lnet/minecraft/network/chat/Component;)Z method_49866 a method_49866 + m (Z)Lnet/minecraft/world/level/block/entity/SignText; setHasGlowingText a method_49867 + p 1 hasGlowingText + m (ZLjava/util/function/Function;)[Lnet/minecraft/util/FormattedCharSequence; getRenderMessages a method_49868 + p 1 renderMessagesFiltered + p 2 formatter + m ([Lnet/minecraft/network/chat/Component;)Ljava/util/List; method_49869 a method_49869 + m ([Lnet/minecraft/network/chat/Component;Ljava/util/Optional;Lnet/minecraft/world/item/DyeColor;Z)Lnet/minecraft/world/level/block/entity/SignText; load a method_49870 + p 0 messages + p 1 filteredMessages + p 2 color + p 3 hasGlowingText + m ()Lnet/minecraft/world/item/DyeColor; getColor b method_49872 + m (Lnet/minecraft/world/entity/player/Player;)Z hasAnyClickCommands b method_49874 + p 1 player + m (Lnet/minecraft/world/level/block/entity/SignText;)Lnet/minecraft/world/item/DyeColor; method_49875 b method_49875 + m (Ljava/util/List;)[Lnet/minecraft/network/chat/Component; method_49876 b method_49876 + m (Z)[Lnet/minecraft/network/chat/Component; getMessages b method_49877 + p 1 isFiltered + m ()[Lnet/minecraft/network/chat/Component; emptyMessages c method_49878 + m (Lnet/minecraft/world/level/block/entity/SignText;)[Lnet/minecraft/network/chat/Component; method_49879 c method_49879 + m ()Ljava/util/Optional; filteredMessages d method_49880 + m ()V + m ([Lnet/minecraft/network/chat/Component;[Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/item/DyeColor;Z)V + p 1 messages + p 2 filteredMessages + p 3 color + p 4 hasGlowingText + m ()V +c net/minecraft/world/level/block/entity/SkullBlockEntity dru net/minecraft/class_2631 + f Ljava/util/concurrent/Executor; CHECKED_MAIN_THREAD_EXECUTOR a field_45147 + f Ljava/lang/String; TAG_PROFILE b field_49762 + f Ljava/lang/String; TAG_NOTE_BLOCK_SOUND c field_41602 + f Ljava/lang/String; TAG_CUSTOM_NAME d field_49763 + f Lorg/slf4j/Logger; LOGGER e field_49764 + f Ljava/util/concurrent/Executor; mainThreadExecutor f field_34029 + f Lcom/google/common/cache/LoadingCache; profileCacheByName g field_51356 + f Lcom/google/common/cache/LoadingCache; profileCacheById h field_51357 + f Lnet/minecraft/world/item/component/ResolvableProfile; owner i field_12087 + f Lnet/minecraft/resources/ResourceLocation; noteBlockSound j field_41603 + f I animationTickCount k field_41315 + f Z isAnimating l field_41316 + f Lnet/minecraft/network/chat/Component; customName m field_49765 + m (F)F getAnimation a method_47588 + p 1 partialTick + m (Lnet/minecraft/server/Services;Ljava/util/concurrent/Executor;)V setup a method_39765 + p 0 services + p 1 mainThreadExecutor + m (Lnet/minecraft/world/item/component/ResolvableProfile;)V setOwner a method_11333 + p 1 owner + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SkullBlockEntity;)V animation a method_47589 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Ljava/lang/Runnable;)V method_52579 a method_52579 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; fetchGameProfile a method_52580 + p 0 profileName + m (Ljava/lang/String;Lnet/minecraft/server/Services;)Ljava/util/concurrent/CompletableFuture; fetchProfileByName a method_59536 + p 0 name + p 1 services + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletionStage; method_59537 a method_59537 + m (Ljava/util/Optional;Ljava/util/Optional;)Ljava/util/Optional; method_59538 a method_59538 + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; fetchGameProfile a method_59539 + p 0 profileUuid + m (Ljava/util/UUID;Lnet/minecraft/server/Services;Ljava/util/function/BooleanSupplier;)Ljava/util/concurrent/CompletableFuture; fetchProfileById a method_59540 + p 0 id + p 1 services + p 2 cacheUninitialized + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/server/Services;Ljava/util/UUID;)Ljava/util/Optional; method_59541 a method_59541 + m ()V clear b method_39766 + m (Lnet/minecraft/world/item/component/ResolvableProfile;)V method_58126 b method_58126 + m (Ljava/lang/String;)V method_58127 b method_58127 + m (Ljava/util/Optional;)Ljava/util/Optional; method_59542 b method_59542 + m ()Lnet/minecraft/world/item/component/ResolvableProfile; getOwnerProfile c method_11334 + m ()Lnet/minecraft/resources/ResourceLocation; getNoteBlockSound d method_47888 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket f method_38250 + m ()V updateOwnerProfile j method_11339 + m ()Z method_54083 k method_54083 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/SkullBlockEntity$1 dru$1 net/minecraft/class_2631$1 + f Lnet/minecraft/server/Services; val$services a field_46509 + m (Ljava/lang/String;)Ljava/util/concurrent/CompletableFuture; load a method_54084 + p 1 username + m (Lnet/minecraft/server/Services;)V +c net/minecraft/world/level/block/entity/SkullBlockEntity$2 dru$2 net/minecraft/class_2631$2 + f Lnet/minecraft/server/Services; val$services a field_51358 + f Ljava/util/function/BooleanSupplier; val$invalidated b field_51359 + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; load a method_59543 + p 1 id + m (Lnet/minecraft/server/Services;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/world/level/block/entity/SmokerBlockEntity drv net/minecraft/class_3723 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SpawnerBlockEntity drw net/minecraft/class_2636 + f Lnet/minecraft/world/level/BaseSpawner; spawner a field_12114 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V clientTick a method_31696 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38251 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V serverTick b method_31697 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/world/level/BaseSpawner; getSpawner c method_11390 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/SpawnerBlockEntity$1 drw$1 net/minecraft/class_2636$1 + m (Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;)V +c net/minecraft/world/level/block/entity/StructureBlockEntity drx net/minecraft/class_2633 + f I MAX_OFFSET_PER_AXIS a field_31364 + f I MAX_SIZE_PER_AXIS b field_31365 + f Ljava/lang/String; AUTHOR_TAG c field_31366 + f I SCAN_CORNER_BLOCKS_RANGE d field_31367 + f Lnet/minecraft/resources/ResourceLocation; structureName e field_12102 + f Ljava/lang/String; author f field_12104 + f Ljava/lang/String; metaData g field_12098 + f Lnet/minecraft/core/BlockPos; structurePos h field_12092 + f Lnet/minecraft/core/Vec3i; structureSize i field_12100 + f Lnet/minecraft/world/level/block/Mirror; mirror j field_12093 + f Lnet/minecraft/world/level/block/Rotation; rotation k field_12105 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; mode l field_12094 + f Z ignoreEntities m field_12099 + f Z powered q field_12097 + f Z showAir r field_12096 + f Z showBoundingBox s field_12095 + f F integrity t field_12101 + f J seed u field_12103 + m ()Z saveStructure A method_11365 + c Saves the template, writing it to disk.\n\n@return true if the template was successfully saved. + m ()V unloadStructure B method_11361 + m ()Z isStructureLoadable C method_11372 + m ()Z isPowered D method_11354 + m ()Z getShowAir E method_11375 + m ()Z getShowBoundingBox F method_11357 + m ()V updateBlockState G method_11348 + m (F)V setIntegrity a method_11370 + p 1 integrity + m (J)V setSeed a method_11382 + p 1 seed + m (Lnet/minecraft/resources/ResourceLocation;)V setStructureName a method_11344 + p 1 structureName + m (Lnet/minecraft/server/level/ServerLevel;)Z placeStructureIfSameSize a method_54874 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;)V placeStructure a method_54875 + p 1 level + p 2 structureTemplate + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V method_54876 a method_54876 + m (Lnet/minecraft/world/entity/LivingEntity;)V createdBy a method_11373 + p 1 author + m (Lnet/minecraft/world/entity/player/Player;)Z usedBy a method_11351 + p 1 player + m (Lnet/minecraft/world/level/block/Mirror;)V setMirror a method_11356 + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)V setRotation a method_11385 + p 1 rotation + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/world/level/block/entity/StructureBlockEntity; method_34273 a method_34273 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z method_34274 a method_34274 + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)V setMode a method_11381 + p 1 mode + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;)V loadStructureInfo a method_54877 + p 1 structureTemplate + m (Ljava/lang/String;)V setStructureName a method_11343 + p 1 structureName + m (Lnet/minecraft/core/BlockPos;)V setStructurePos a method_11378 + p 1 structurePos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z method_34275 a method_34275 + m (Lnet/minecraft/core/BlockPos;Ljava/util/stream/Stream;)Ljava/util/Optional; calculateEnclosingBoundingBox a method_34277 + p 0 pos + p 1 relatedCorners + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; getRelatedCorners a method_34276 + p 1 minPos + p 2 maxPos + m (Lnet/minecraft/core/Vec3i;)V setStructureSize a method_11377 + p 1 structureSize + m (Z)V setIgnoreEntities a method_11352 + p 1 ignoreEntities + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_38252 + m (J)Lnet/minecraft/util/RandomSource; createRandom b method_20048 + p 0 seed + m (Lnet/minecraft/server/level/ServerLevel;)Z loadStructureInfo b method_11376 + p 1 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Z method_34278 b method_34278 + m (Ljava/lang/String;)V setMetaData b method_11363 + p 1 metaData + m (Lnet/minecraft/core/BlockPos;)Z method_34279 b method_34279 + m (Z)Z saveStructure b method_11366 + c Saves the template, either updating the local version or writing it to disk.\n\n@return true if the template was successfully saved. + p 1 writeToDisk + m ()Ljava/lang/String; getStructureName c method_11362 + m (Lnet/minecraft/server/level/ServerLevel;)V placeStructure c method_54878 + p 1 level + m (Z)V setPowered c method_11379 + p 1 powered + m ()Z hasStructureName d method_11384 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getStructureTemplate d method_54879 + p 1 level + m (Z)V setShowAir d method_11347 + p 1 showAir + m (Z)V setShowBoundingBox e method_11360 + p 1 showBoundingBox + m ()Lnet/minecraft/core/BlockPos; getStructurePos f method_11359 + m ()Lnet/minecraft/core/Vec3i; getStructureSize j method_11349 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror k method_11345 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation l method_11353 + m ()Ljava/lang/String; getMetaData u method_11358 + m ()Lnet/minecraft/world/level/block/state/properties/StructureMode; getMode v method_11374 + m ()Z isIgnoreEntities w method_11367 + m ()F getIntegrity x method_11346 + m ()J getSeed y method_11371 + m ()Z detectSize z method_11383 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType drx$a net/minecraft/class_2633$class_2634 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; UPDATE_DATA a field_12108 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; SAVE_AREA b field_12110 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; LOAD_AREA c field_12109 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; SCAN_AREA d field_12106 + f [Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; $VALUES e field_12107 + m ()[Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType; $values a method_36718 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/entity/TheEndGatewayBlockEntity dry net/minecraft/class_2643 + f Lorg/slf4j/Logger; LOGGER a field_12133 + f I SPAWN_TIME b field_31368 + f I COOLDOWN_TIME c field_31369 + f I ATTENTION_INTERVAL d field_31370 + f I EVENT_COOLDOWN e field_31371 + f I GATEWAY_HEIGHT_ABOVE_SURFACE f field_31372 + f J age g field_12131 + f I teleportCooldown h field_12130 + f Lnet/minecraft/core/BlockPos; exitPortal i field_12132 + f Z exactTeleport j field_12129 + m (F)F getSpawnPercent a method_11417 + p 1 partialTicks + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;)Z isChunkEmpty a method_31698 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getPortalPosition a method_60787 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)V spawnGatewayPortal a method_11416 + p 0 level + p 1 pos + p 2 config + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46694 a method_46694 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;IZ)Lnet/minecraft/core/BlockPos; findTallestBlock a method_11410 + p 0 level + p 1 pos + p 2 radius + p 3 allowBedrock + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_11414 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findExitPosition a method_11419 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V beamAnimationTick a method_31700 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/core/BlockPos; findValidSpawnInChunk a method_11413 + p 0 chunk + m (Lnet/minecraft/core/BlockPos;)V method_57012 a method_57012 + m (Lnet/minecraft/core/BlockPos;Z)V setExitPosition a method_11418 + p 1 exitPortal + p 2 exactTeleport + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46695 a method_46695 + m ()Z isSpawning b method_11420 + m (F)F getCooldownPercent b method_11412 + p 1 partialTicks + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; findOrCreateValidTeleportPos b method_31699 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V portalTick b method_31702 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Z isCoolingDown c method_11421 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; findExitPortalXZPosTentative c method_31701 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;)V triggerCooldown c method_11411 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket d method_38253 + m ()I getParticleAmount f method_11415 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m ()V +c net/minecraft/world/level/block/entity/TheEndPortalBlockEntity drz net/minecraft/class_2640 + m (Lnet/minecraft/core/Direction;)Z shouldRenderFace a method_11400 + p 1 face + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 type + p 2 pos + p 3 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState +c net/minecraft/world/level/block/entity/TickingBlockEntity dsa net/minecraft/class_5562 + m ()V tick a method_31703 + m ()Z isRemoved b method_31704 + m ()Lnet/minecraft/core/BlockPos; getPos c method_31705 + m ()Ljava/lang/String; getType d method_31706 +c net/minecraft/world/level/block/entity/TrappedChestBlockEntity dsb net/minecraft/class_2646 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/block/entity/TrialSpawnerBlockEntity dsc net/minecraft/class_8961 + f Lorg/slf4j/Logger; LOGGER a field_47354 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; trialSpawner b field_47355 + m (Lcom/mojang/serialization/DataResult$Error;)V method_55145 a method_55145 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V method_55147 a method_55147 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55148 a method_55148 + m ()Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket; getUpdatePacket b method_55149 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; getTrialSpawner c method_55150 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/package-info dsd net/minecraft/class_6090 +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector dse net/minecraft/class_8962 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; NO_CREATIVE_PLAYERS a field_48860 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; INCLUDING_CREATIVE_PLAYERS b field_48861 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; SHEEP c field_47357 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_56720 a method_56720 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z inLineOfSight a method_58696 + p 0 level + p 1 pos + p 2 targetPos + m (Lnet/minecraft/core/BlockPos;DLnet/minecraft/world/entity/player/Player;)Z method_56721 a method_56721 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/animal/Sheep;)Z method_58697 a method_58697 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z method_58698 a method_58698 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_56722 b method_56722 + m (Lnet/minecraft/core/BlockPos;DLnet/minecraft/world/entity/player/Player;)Z method_56723 b method_56723 + m (ZLnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z method_58699 b method_58699 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;Lnet/minecraft/core/BlockPos;DZ)Ljava/util/List; method_55155 c method_55155 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector dse$a net/minecraft/class_8962$class_9198 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; SELECT_FROM_LEVEL a field_48862 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Ljava/util/function/Predicate;)Ljava/util/List; getEntities a method_56724 + p 1 level + p 2 typeTest + p 3 boundingBox + p 4 predicate + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Predicate;)Ljava/util/List; getPlayers a method_56725 + p 1 level + p 2 predicate + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; onlySelectPlayer a method_56726 + p 0 player + m (Ljava/util/List;)Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; onlySelectPlayers a method_56727 + p 0 players + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector$1 dse$a$1 net/minecraft/class_8962$class_9198$1 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector$2 dse$a$2 net/minecraft/class_8962$class_9198$2 + f Ljava/util/List; val$players b field_48863 + m (Ljava/util/List;)V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner dsf net/minecraft/class_8963 + f Ljava/lang/String; NORMAL_CONFIG_TAG_NAME a field_50177 + f Ljava/lang/String; OMINOUS_CONFIG_TAG_NAME b field_50178 + f I DETECT_PLAYER_SPAWN_BUFFER c field_47358 + f I DEFAULT_TARGET_COOLDOWN_LENGTH d field_50179 + f I DEFAULT_PLAYER_SCAN_RANGE e field_50180 + f I MAX_MOB_TRACKING_DISTANCE f field_47359 + f I MAX_MOB_TRACKING_DISTANCE_SQR g field_47360 + f F SPAWNING_AMBIENT_SOUND_CHANCE h field_47361 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; normalConfig i field_50181 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; ominousConfig j field_50182 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData; data k field_47363 + f I requiredPlayerRange l field_50183 + f I targetCooldownLength m field_50184 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor; stateAccessor n field_47364 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector o field_47365 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector p field_48864 + f Z overridePeacefulAndMobSpawnRule q field_47366 + f Z isOminous r field_50185 + m ()Lcom/mojang/serialization/Codec; codec a method_55156 + m (DDDLnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; method_55157 a method_55157 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V applyOminous a method_58700 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V ejectReward a method_55159 + p 1 level + p 2 pos + p 3 lootTable + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Z shouldMobBeUntracked a method_55160 + p 0 level + p 1 pos + p 2 uuid + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Z)V tickServer a method_55171 + p 1 level + p 2 pos + p 3 isOminous + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55161 a method_55161 + m (Lnet/minecraft/world/level/Level;)Z canSpawnInLevel a method_55162 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)V setState a method_55163 + p 1 level + p 2 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z inLineOfSight a method_55164 + p 0 level + p 1 spawnerPos + p 2 mobPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V addBecomeOminousParticles a method_58701 + p 0 level + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/particles/ParticleOptions;)V addDetectPlayerParticles a method_55167 + p 0 level + p 1 pos + p 2 random + p 3 type + p 4 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/SimpleParticleType;)V addSpawnParticles a method_55166 + p 0 level + p 1 pos + p 2 random + p 3 particleType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V tickClient a method_55165 + p 1 level + p 2 pos + p 3 isOminous + m (Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;)V setPlayerDetector a method_55168 + p 1 playerDetector + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Ljava/lang/Integer;Ljava/lang/Integer;)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner; method_55169 a method_55169 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getConfig b method_55170 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)V removeOminous b method_58702 + p 1 level + p 2 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Ljava/util/UUID;)Z method_55172 b method_55172 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V addEjectItemParticles b method_55173 + p 0 level + p 1 pos + p 2 random + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getNormalConfig c method_58703 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)Ljava/util/Optional; spawnMob c method_55158 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getOminousConfig d method_58704 + m ()Z isOminous e method_58705 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData; getData f method_55174 + m ()I getTargetCooldownLength g method_58706 + m ()I getRequiredPlayerRange h method_58707 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; getState i method_55175 + m ()V markUpdated j method_55176 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; getPlayerDetector k method_55177 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; getEntitySelector l method_56728 + m ()V overridePeacefulAndMobSpawnRule m method_55178 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; getOminousConfigForSerialization n method_58708 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + p 1 stateAccessor + p 2 playerDetector + p 3 entitySelector + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;IILnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + p 1 normalConfig + p 2 ominousConfig + p 3 data + p 4 targetCooldownLength + p 5 requiredPlayerRange + p 6 stateAccessor + p 7 playerDetector + p 8 entitySelector + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle dsf$a net/minecraft/class_8963$class_9474 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; NORMAL a field_50186 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; OMINOUS b field_50187 + f Lnet/minecraft/core/particles/SimpleParticleType; particleType c field_50188 + f [Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; $VALUES d field_50189 + m ()I encode a method_58709 + m (I)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; decode a method_58710 + p 0 id + m ()[Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner$FlameParticle; $values b method_58711 + m (Ljava/lang/String;ILnet/minecraft/core/particles/SimpleParticleType;)V + p 3 particleType + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawner$StateAccessor dsf$b net/minecraft/class_8963$class_8964 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)V setState a method_55146 + p 1 level + p 2 state + m ()Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; getState d method_55151 + m ()V markUpdated f method_55152 +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig dsg net/minecraft/class_8965 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig; DEFAULT a field_47367 + f Lcom/mojang/serialization/Codec; CODEC b field_47368 + f I spawnRange c comp_2103 + f F totalMobs d comp_2104 + f F simultaneousMobs e comp_2105 + f F totalMobsAddedPerPlayer f comp_2106 + f F simultaneousMobsAddedPerPlayer g comp_2107 + f I ticksBetweenSpawn h comp_2108 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentialsDefinition i comp_2110 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; lootTablesToEject j comp_2111 + f Lnet/minecraft/resources/ResourceKey; itemsToDropWhenOminous k comp_2552 + m ()J ticksBetweenItemSpawners a method_58712 + m (I)I calculateTargetTotalMobs a method_55179 + p 1 players + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55180 a method_55180 + m ()I spawnRange b comp_2103 + m (I)I calculateTargetSimultaneousMobs b method_55181 + p 1 players + m ()F totalMobs c comp_2104 + m ()F simultaneousMobs d comp_2105 + m ()F totalMobsAddedPerPlayer e comp_2106 + m ()F simultaneousMobsAddedPerPlayer f comp_2107 + m ()I ticksBetweenSpawn g comp_2108 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; spawnPotentialsDefinition h comp_2110 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; lootTablesToEject i comp_2111 + m ()Lnet/minecraft/resources/ResourceKey; itemsToDropWhenOminous j comp_2552 + m (IFFFFILnet/minecraft/util/random/SimpleWeightedRandomList;Lnet/minecraft/util/random/SimpleWeightedRandomList;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData dsh net/minecraft/class_8966 + f Ljava/lang/String; TAG_SPAWN_DATA a field_47369 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_47370 + f Ljava/util/Set; detectedPlayers c field_47371 + f Ljava/util/Set; currentMobs d field_47372 + f J cooldownEndsAt e field_47373 + f J nextMobSpawnsAt f field_47374 + f I totalMobsSpawned g field_47375 + f Ljava/util/Optional; nextSpawnData h field_47376 + f Ljava/util/Optional; ejectingLootTable i field_47377 + f Lnet/minecraft/world/entity/Entity; displayEntity j field_47379 + f D spin k field_47380 + f D oSpin l field_47381 + f Ljava/lang/String; TAG_NEXT_MOB_SPAWNS_AT m field_47382 + f I DELAY_BETWEEN_PLAYER_SCANS n field_50190 + f I TRIAL_OMEN_PER_BAD_OMEN_LEVEL o field_50191 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; dispensing p field_50192 + m ()V reset a method_55182 + m (Lnet/minecraft/server/level/ServerLevel;)Z isCooldownFinished a method_55183 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;FI)Z isReadyToOpenShutter a method_55184 + p 1 level + p 2 delay + p 3 targetCooldownLength + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)V method_58713 a method_58713 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Pair;)V method_60788 a method_60788 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;I)Z isReadyToSpawnNextMob a method_55185 + p 1 level + p 2 config + p 3 players + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/random/SimpleWeightedRandomList; getDispensingItems a method_58714 + p 1 level + p 2 config + p 3 pos + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)Ljava/util/Optional; findPlayerWithOminousEffect a method_60789 + p 0 level + p 1 players + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;)J lowResolutionPosition a method_58715 + p 0 level + p 1 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V tryDetectPlayers a method_55186 + p 1 level + p 2 pos + p 3 spawner + m (Lnet/minecraft/world/entity/player/Player;)V transformBadOmenIntoTrialOmen a method_58716 + p 0 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_55187 a method_55187 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;)V resetAfterBecomingOminous a method_58717 + p 1 spawner + p 2 level + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;)Z hasMobToSpawn a method_55197 + p 1 trialSpawner + p 2 random + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/entity/EntityType;)V setEntityId a method_55189 + p 1 spawner + p 2 random + p 3 entityType + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)Lnet/minecraft/world/entity/Entity; getOrCreateDisplayEntity a method_55190 + p 1 spawner + p 2 level + p 3 spawnerState + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;I)Z hasFinishedSpawningAllMobs a method_55192 + p 1 config + p 2 players + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; method_55193 a method_55193 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState;)Lnet/minecraft/nbt/CompoundTag; getUpdateTag a method_55194 + p 1 spawnerState + m (Lnet/minecraft/core/BlockPos;)I countAdditionalPlayers a method_55195 + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/SpawnData;)V method_55196 a method_55196 + m ()Z haveAllCurrentMobsDied b method_55200 + m (Lnet/minecraft/server/level/ServerLevel;FI)Z isReadyToEjectItems b method_55198 + p 1 level + p 2 delay + p 3 targetCooldownLength + m (Lnet/minecraft/world/entity/player/Player;)Lcom/mojang/datafixers/util/Pair; method_60790 b method_60790 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/SpawnData; getOrCreateNextSpawnData b method_55188 + p 1 spawner + p 2 random + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; method_55199 b method_55199 + m ()D getSpin c method_55202 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Integer; method_55201 c method_55201 + m ()D getOSpin d method_55204 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Long; method_55203 d method_55203 + m ()Ljava/lang/IllegalStateException; method_55206 e method_55206 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/lang/Long; method_55205 e method_55205 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Set; method_55207 f method_55207 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Set; method_55208 g method_55208 + m ()V + m (Ljava/util/Set;Ljava/util/Set;JJILjava/util/Optional;Ljava/util/Optional;)V + p 1 detectedPlayers + p 2 currentMobs + p 3 cooldownEndsAt + p 5 nextMobSpawnsAt + p 7 totalMobsSpawned + p 8 nextSpawnData + p 9 ejectingLootTable + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState dsi net/minecraft/class_8967 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; INACTIVE a field_47383 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; WAITING_FOR_PLAYERS b field_47384 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; ACTIVE c field_47385 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; WAITING_FOR_REWARD_EJECTION d field_47386 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; EJECTING_REWARD e field_47387 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; COOLDOWN f field_47388 + f F DELAY_BEFORE_EJECT_AFTER_KILLING_LAST_MOB g field_47389 + f I TIME_BETWEEN_EACH_EJECTION h field_47390 + f Ljava/lang/String; name i field_47391 + f I lightLevel j field_47392 + f D spinningMobSpeed k field_47393 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; particleEmission l field_47394 + f Z isCapableOfSpawning m field_47395 + f [Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; $VALUES n field_47396 + m ()I lightLevel a method_55209 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/phys/Vec3;)V method_58718 a method_58718 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Z timeToSpawnItemSpawner a method_58719 + p 1 level + p 2 spawnerData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;)V spawnOminousOminousItemSpawner a method_58720 + p 1 level + p 2 pos + p 3 spawner + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;)Ljava/util/Optional; calculatePositionToSpawnSpawner a method_58721 + p 0 level + p 1 pos + p 2 spawner + p 3 spawnerData + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; calculatePositionAbove a method_58722 + p 0 entity + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V emitParticles a method_55210 + p 1 level + p 2 pos + p 3 isOminous + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)V method_55211 a method_55211 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerConfig;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Ljava/util/UUID;)V method_55212 a method_55212 + m (Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerData;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_55213 a method_55213 + m (Ljava/util/List;Ljava/util/Set;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/core/BlockPos;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/entity/Entity; selectEntityToSpawnItemAbove a method_58725 + p 0 player + p 1 currentMobs + p 2 spawner + p 3 pos + p 4 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; tickAndGetNext a method_55214 + p 1 pos + p 2 spawner + p 3 level + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/entity/Entity;)Z method_58723 a method_58723 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawner;Lnet/minecraft/world/entity/player/Player;)Z method_58724 a method_58724 + m ()D spinningMobSpeed b method_55215 + m ()Z hasSpinningMob d method_55216 + m ()Z isCapableOfSpawning e method_55217 + m ()[Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState; $values f method_55218 + m (Ljava/lang/String;ILjava/lang/String;ILnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission;DZ)V + p 3 name + p 4 lightLevel + p 5 particleEmission + p 6 spinningMobSpeed + p 8 isCapableOfSpawning + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$LightLevel dsi$a net/minecraft/class_8967$class_8968 + f I UNLIT a field_47398 + f I HALF_LIT b field_47399 + f I LIT c field_47400 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission dsi$b net/minecraft/class_8967$class_8969 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; NONE a field_47401 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; SMALL_FLAMES b field_47402 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; FLAMES_AND_SMOKE c field_47403 + f Lnet/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$ParticleEmission; SMOKE_INSIDE_AND_TOP_FACE d field_47404 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55219 a method_55219 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/Level;)V addParticle a method_55220 + p 0 particleType + p 1 pos + p 2 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55221 b method_55221 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55222 c method_55222 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Z)V method_55223 d method_55223 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/TrialSpawnerState$SpinningMob dsi$c net/minecraft/class_8967$class_8970 + f D NONE a field_47405 + f D SLOW b field_47406 + f D FAST c field_47407 + m ()V +c net/minecraft/world/level/block/entity/trialspawner/package-info dsj net/minecraft/class_8971 +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity dsk net/minecraft/class_9199 + f Lorg/slf4j/Logger; LOGGER a field_48865 + f Lnet/minecraft/world/level/block/entity/vault/VaultServerData; serverData b field_48866 + f Lnet/minecraft/world/level/block/entity/vault/VaultSharedData; sharedData c field_48867 + f Lnet/minecraft/world/level/block/entity/vault/VaultClientData; clientData d field_48868 + f Lnet/minecraft/world/level/block/entity/vault/VaultConfig; config e field_48869 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/Tag; encode a method_56729 + p 0 codec + p 1 value + p 2 levelRegistry + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;)V setConfig a method_56730 + p 1 config + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/CompoundTag;)V method_56734 a method_56734 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultServerData; getServerData b method_56731 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_56732 b method_56732 + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;)V method_56733 b method_56733 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultSharedData; getSharedData c method_56735 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultClientData; getClientData d method_56736 + m ()Lnet/minecraft/world/level/block/entity/vault/VaultConfig; getConfig f method_56737 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 state + m ()V +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity$Client dsk$a net/minecraft/class_9199$class_9200 + f I PARTICLE_TICK_RATE a field_48870 + f F IDLE_PARTICLE_CHANCE b field_48871 + f F AMBIENT_SOUND_CHANCE c field_48872 + f I ACTIVATION_PARTICLE_COUNT d field_48873 + f I DEACTIVATION_PARTICLE_COUNT e field_48874 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/player/Player;)V emitConnectionParticlesForPlayer a method_56738 + p 0 level + p 1 pos + p 2 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V playIdleSounds a method_56747 + p 0 level + p 1 pos + p 2 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/particles/ParticleOptions;)V emitIdleParticles a method_56740 + p 0 level + p 1 pos + p 2 sharedData + p 3 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultClientData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V tick a method_56741 + p 0 level + p 1 pos + p 2 state + p 3 clientData + p 4 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V emitConnectionParticlesForNearbyPlayers a method_56748 + p 0 level + p 1 pos + p 2 state + p 3 sharedData + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/particles/ParticleOptions;)V emitActivationParticles a method_56742 + p 0 level + p 1 pos + p 2 state + p 3 sharedData + p 4 particle + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;)V emitDeactivationParticles a method_56739 + p 0 level + p 1 pos + p 2 particle + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Z shouldDisplayActiveEffects a method_56743 + p 0 sharedData + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPosCenterOfCage a method_56744 + p 0 pos + p 1 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/world/entity/player/Player;)Z isWithinConnectionRange a method_56745 + p 0 pos + p 1 sharedData + p 2 player + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/Vec3; keyholePos a method_56746 + p 0 pos + p 1 facing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; randomPosInsideCage b method_56749 + p 0 pos + p 1 random + m ()V +c net/minecraft/world/level/block/entity/vault/VaultBlockEntity$Server dsk$b net/minecraft/class_9199$class_9201 + f I UNLOCKING_DELAY_TICKS a field_48875 + f I DISPLAY_CYCLE_TICK_RATE b field_48876 + f I INSERT_FAIL_SOUND_BUFFER_TICKS c field_48877 + m (JLnet/minecraft/world/level/block/entity/vault/VaultState;)Z shouldCycleDisplayItem a method_56750 + p 0 gameTime + p 2 state + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Ljava/util/List; resolveItemsToEject a method_56751 + p 0 level + p 1 config + p 2 pos + p 3 player + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/core/BlockPos;Lnet/minecraft/sounds/SoundEvent;)V playInsertFailSound a method_56752 + p 0 level + p 1 serverData + p 2 pos + p 3 sound + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/entity/vault/VaultState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/core/BlockPos;)V cycleDisplayItemFromLootTable a method_56753 + p 0 level + p 1 state + p 2 config + p 3 sharedData + p 4 pos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Ljava/util/List;)V unlock a method_56754 + p 0 level + p 1 state + p 2 pos + p 3 config + p 4 serverData + p 5 sharedData + p 6 itemsToEject + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/item/ItemStack; getRandomDisplayItemFromLootTable a method_56755 + p 0 level + p 1 pos + p 2 lootTable + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V tick a method_56756 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 serverData + p 5 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V tryInsertKey a method_56757 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 serverData + p 5 sharedData + p 6 player + p 7 stack + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V setVaultState a method_56758 + p 0 level + p 1 pos + p 2 oldState + p 3 newState + p 4 config + p 5 sharedData + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/item/ItemStack;)Z isValidToInsert a method_56759 + p 0 config + p 1 stack + m (Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultState;)Z canEjectReward a method_56760 + p 0 config + p 1 state + m ()V +c net/minecraft/world/level/block/entity/vault/VaultClientData dsl net/minecraft/class_9202 + f F ROTATION_SPEED a field_48878 + f F currentSpin b field_48879 + f F previousSpin c field_48880 + m ()F currentSpin a method_56761 + m ()F previousSpin b method_56762 + m ()V updateDisplayItemSpin c method_56763 + m ()V +c net/minecraft/world/level/block/entity/vault/VaultConfig dsm net/minecraft/class_9203 + f Ljava/lang/String; TAG_NAME a field_48881 + f Lnet/minecraft/world/level/block/entity/vault/VaultConfig; DEFAULT b field_48882 + f Lcom/mojang/serialization/Codec; CODEC c field_48883 + f Lnet/minecraft/resources/ResourceKey; lootTable d comp_2305 + f D activationRange e comp_2306 + f D deactivationRange f comp_2307 + f Lnet/minecraft/world/item/ItemStack; keyItem g comp_2308 + f Ljava/util/Optional; overrideLootTableToDisplay h comp_2309 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector i comp_2310 + f Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector j comp_2311 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector; playerDetector a comp_2310 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56764 a method_56764 + m ()Lnet/minecraft/resources/ResourceKey; lootTable b comp_2305 + m ()D activationRange c comp_2306 + m ()D deactivationRange d comp_2307 + m ()Lnet/minecraft/world/item/ItemStack; keyItem e comp_2308 + m ()Ljava/util/Optional; overrideLootTableToDisplay f comp_2309 + m ()Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector; entitySelector g comp_2311 + m ()Lcom/mojang/serialization/DataResult; validate h method_56765 + m ()Ljava/lang/String; method_56766 i method_56766 + m ()V + m (Lnet/minecraft/resources/ResourceKey;DDLnet/minecraft/world/item/ItemStack;Ljava/util/Optional;)V + p 1 lootTable + p 2 activationRange + p 4 deactivationRange + p 6 keyItem + p 7 overrideLootTableToDisplay + m (Lnet/minecraft/resources/ResourceKey;DDLnet/minecraft/world/item/ItemStack;Ljava/util/Optional;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector;Lnet/minecraft/world/level/block/entity/trialspawner/PlayerDetector$EntitySelector;)V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultServerData dsn net/minecraft/class_9204 + f Ljava/lang/String; TAG_NAME a field_48884 + f Lcom/mojang/serialization/Codec; CODEC b field_48885 + f Z isDirty c field_48886 + f I MAX_REWARD_PLAYERS d field_48887 + f Ljava/util/Set; rewardedPlayers e field_48888 + f J stateUpdatingResumesAt f field_48889 + f Ljava/util/List; itemsToEject g field_48890 + f J lastInsertFailTimestamp h field_48891 + f I totalEjectionsNeeded i field_48892 + m ()J getLastInsertFailTimestamp a method_56767 + m (J)V setLastInsertFailTimestamp a method_56768 + p 1 lastInsertFailTimestamp + m (Lnet/minecraft/world/entity/player/Player;)Z hasRewardedPlayer a method_56769 + p 1 player + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56770 a method_56770 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)V set a method_56771 + p 1 other + m (Ljava/util/List;)V setItemsToEject a method_56772 + p 1 itemsToEject + m ()Ljava/util/Set; getRewardedPlayers b method_56773 + m (J)V pauseStateUpdatingUntil b method_56774 + p 1 time + m (Lnet/minecraft/world/entity/player/Player;)V addToRewardedPlayers b method_56775 + p 1 player + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/lang/Integer; method_56776 b method_56776 + m ()J stateUpdatingResumesAt c method_56777 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/util/List; method_56778 c method_56778 + m ()Ljava/util/List; getItemsToEject d method_56779 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/lang/Long; method_56780 d method_56780 + m ()V markEjectionFinished e method_56781 + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;)Ljava/util/Set; method_56782 e method_56782 + m ()Lnet/minecraft/world/item/ItemStack; getNextItemToEject f method_56783 + m ()Lnet/minecraft/world/item/ItemStack; popNextItemToEject g method_56784 + m ()F ejectionProgress h method_56785 + m ()V markChanged i method_56786 + m (Ljava/util/Set;JLjava/util/List;I)V + p 1 rewardedPlayers + p 2 stateUpdatingResumesAt + p 4 itemsToEject + p 5 totalEjectionsNeeded + m ()V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultSharedData dso net/minecraft/class_9205 + f Ljava/lang/String; TAG_NAME a field_48893 + f Lcom/mojang/serialization/Codec; CODEC b field_48894 + f Z isDirty c field_48895 + f Lnet/minecraft/world/item/ItemStack; displayItem d field_48896 + f Ljava/util/Set; connectedPlayers e field_48897 + f D connectedParticlesRange f field_48898 + m ()Lnet/minecraft/world/item/ItemStack; getDisplayItem a method_56787 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;D)V updateConnectedPlayersWithinRange a method_56788 + p 1 level + p 2 pos + p 3 serverData + p 4 config + p 5 deactivationRange + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56789 a method_56789 + m (Lnet/minecraft/world/item/ItemStack;)V setDisplayItem a method_56790 + p 1 displayItem + m (Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Ljava/util/UUID;)Z method_56791 a method_56791 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V set a method_56792 + p 1 other + m ()Z hasDisplayItem b method_56793 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Ljava/lang/Double; method_56794 b method_56794 + m ()Z hasConnectedPlayers c method_56795 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Ljava/util/Set; method_56796 c method_56796 + m ()Ljava/util/Set; getConnectedPlayers d method_56797 + m (Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Lnet/minecraft/world/item/ItemStack; method_56798 d method_56798 + m ()D connectedParticlesRange e method_56799 + m ()V markDirty f method_56800 + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/Set;D)V + p 1 displayItem + p 2 connectedPlayers + p 3 connectedParticlesRange + m ()V + m ()V +c net/minecraft/world/level/block/entity/vault/VaultState dsp net/minecraft/class_9206 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; INACTIVE a field_48899 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; ACTIVE b field_48900 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; UNLOCKING c field_48901 + f Lnet/minecraft/world/level/block/entity/vault/VaultState; EJECTING d field_48902 + f I UPDATE_CONNECTED_PLAYERS_TICK_RATE e field_48903 + f I DELAY_BETWEEN_EJECTIONS_TICKS f field_48904 + f I DELAY_AFTER_LAST_EJECTION_TICKS g field_48905 + f I DELAY_BEFORE_FIRST_EJECTION_TICKS h field_48906 + f Ljava/lang/String; stateName i field_48907 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; lightLevel j field_48908 + f [Lnet/minecraft/world/level/block/entity/vault/VaultState; $VALUES k field_48909 + m ()I lightLevel a method_56801 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;F)V ejectResultItem a method_56802 + p 1 level + p 2 pos + p 3 stack + p 4 ejectionProgress + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)Lnet/minecraft/world/level/block/entity/vault/VaultState; tickAndGetNext a method_56803 + p 1 level + p 2 pos + p 3 config + p 4 serverData + p 5 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultServerData;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;D)Lnet/minecraft/world/level/block/entity/vault/VaultState; updateStateForConnectedPlayers a method_56804 + p 0 level + p 1 pos + p 2 config + p 3 severData + p 4 sharedData + p 5 deactivationRange + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;)V onExit a method_56808 + p 1 level + p 2 pos + p 3 config + p 4 sharedData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Z)V onEnter a method_56805 + p 1 level + p 2 pos + p 3 config + p 4 sharedData + p 5 isOminous + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/vault/VaultState;Lnet/minecraft/world/level/block/entity/vault/VaultConfig;Lnet/minecraft/world/level/block/entity/vault/VaultSharedData;Z)V onTransition a method_56806 + p 1 level + p 2 pos + p 3 state + p 4 config + p 5 sharedData + p 6 isOminous + m ()[Lnet/minecraft/world/level/block/entity/vault/VaultState; $values b method_56807 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V + p 3 stateName + p 4 lightLevel + m ()V +c net/minecraft/world/level/block/entity/vault/VaultState$1 dsp$1 net/minecraft/class_9206$1 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$2 dsp$2 net/minecraft/class_9206$2 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$3 dsp$3 net/minecraft/class_9206$3 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$4 dsp$4 net/minecraft/class_9206$4 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel;)V +c net/minecraft/world/level/block/entity/vault/VaultState$LightLevel dsp$a net/minecraft/class_9206$class_9207 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; HALF_LIT a field_48911 + f Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; LIT b field_48912 + f I value c field_48913 + f [Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; $VALUES d field_48914 + m ()[Lnet/minecraft/world/level/block/entity/vault/VaultState$LightLevel; $values a method_56809 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/world/level/block/entity/vault/package-info dsq net/minecraft/class_9208 +c net/minecraft/world/level/block/grower/TreeGrower dsr net/minecraft/class_8813 + f Lcom/mojang/serialization/Codec; CODEC a field_46510 + f Lnet/minecraft/world/level/block/grower/TreeGrower; OAK b field_46511 + f Lnet/minecraft/world/level/block/grower/TreeGrower; SPRUCE c field_46512 + f Lnet/minecraft/world/level/block/grower/TreeGrower; MANGROVE d field_46513 + f Lnet/minecraft/world/level/block/grower/TreeGrower; AZALEA e field_46514 + f Lnet/minecraft/world/level/block/grower/TreeGrower; BIRCH f field_46515 + f Lnet/minecraft/world/level/block/grower/TreeGrower; JUNGLE g field_46516 + f Lnet/minecraft/world/level/block/grower/TreeGrower; ACACIA h field_46517 + f Lnet/minecraft/world/level/block/grower/TreeGrower; CHERRY i field_46518 + f Lnet/minecraft/world/level/block/grower/TreeGrower; DARK_OAK j field_46519 + f Ljava/util/Map; GROWERS k field_46520 + f Ljava/lang/String; name l field_46521 + f F secondaryChance m field_46522 + f Ljava/util/Optional; megaTree n field_46523 + f Ljava/util/Optional; secondaryMegaTree o field_46524 + f Ljava/util/Optional; tree p field_46525 + f Ljava/util/Optional; secondaryTree q field_46526 + f Ljava/util/Optional; flowers r field_46527 + f Ljava/util/Optional; secondaryFlowers s field_46528 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z growTree a method_54085 + p 1 level + p 2 chunkGenerator + p 3 pos + p 4 state + p 5 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceKey; getConfiguredMegaFeature a method_54086 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/resources/ResourceKey; getConfiguredFeature a method_54087 + p 1 random + p 2 flowers + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z hasFlowers a method_54088 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/grower/TreeGrower;)Ljava/lang/String; method_54089 a method_54089 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;II)Z isTwoByTwoSapling a method_54090 + p 0 state + p 1 level + p 2 pos + p 3 xOffset + p 4 yOffset + m (Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 name + p 2 megaTree + p 3 tree + p 4 flowers + m (Ljava/lang/String;FLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 name + p 2 secondaryChance + p 3 megaTree + p 4 secondaryMegaTree + p 5 tree + p 6 secondaryTree + p 7 flowers + p 8 secondaryFlowers + m ()V +c net/minecraft/world/level/block/grower/package-info dss net/minecraft/class_6091 +c net/minecraft/world/level/block/package-info dst net/minecraft/class_6092 +c net/minecraft/world/level/block/piston/MovingPistonBlock dsu net/minecraft/class_2667 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46529 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING b field_12196 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE c field_12197 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity; getBlockEntity a method_11488 + p 1 blockReader + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;ZZ)Lnet/minecraft/world/level/block/entity/BlockEntity; newMovingBlockEntity a method_11489 + p 0 pos + p 1 blockState + p 2 movedState + p 3 direction + p 4 extending + p 5 isSourcePiston + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/piston/PistonBaseBlock dsv net/minecraft/class_2665 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46530 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EXTENDED c field_12191 + f I TRIGGER_EXTEND d field_31373 + f I TRIGGER_CONTRACT e field_31374 + f I TRIGGER_DROP f field_31375 + f F PLATFORM_THICKNESS g field_31376 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB h field_12188 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB i field_12184 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB j field_12186 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB k field_12189 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB l field_12185 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB m field_12190 + f Z isSticky n field_12187 + c Whether this is a sticky piston + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54091 a method_54091 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V checkIfExtend a method_11483 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)Z moveBlocks a method_11481 + p 1 level + p 2 pos + p 3 facing + p 4 extending + m (Lnet/minecraft/world/level/SignalGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z getNeighborSignal a method_11482 + p 1 signalGetter + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/block/piston/PistonBaseBlock;)Ljava/lang/Boolean; method_54092 a method_54092 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;ZLnet/minecraft/core/Direction;)Z isPushable a method_11484 + c Checks if the piston can push the given BlockState. + p 0 state + p 1 level + p 2 pos + p 3 movementDirection + p 4 allowDestroy + p 5 pistonFacing + m (ZLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 isSticky + p 2 properties + m ()V +c net/minecraft/world/level/block/piston/PistonBaseBlock$1 dsv$1 net/minecraft/class_2665$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_12193 + f [I $SwitchMap$net$minecraft$world$level$material$PushReaction b field_12192 + m ()V +c net/minecraft/world/level/block/piston/PistonHeadBlock dsw net/minecraft/class_2671 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_ARM_AABB F field_12226 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_ARM_AABB G field_12221 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_ARM_AABB H field_12229 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_ARM_AABB I field_12218 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_ARM_AABB J field_12223 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_UP_ARM_AABB K field_12231 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_DOWN_ARM_AABB L field_12217 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_SOUTH_ARM_AABB M field_12216 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_NORTH_ARM_AABB N field_12225 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_EAST_ARM_AABB O field_12219 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SHORT_WEST_ARM_AABB P field_12212 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES_SHORT Q field_26660 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; SHAPES_LONG R field_26661 + f Lcom/mojang/serialization/MapCodec; CODEC b field_46531 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TYPE c field_12224 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHORT d field_12227 + f F PLATFORM e field_31377 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EAST_AABB f field_12222 + f Lnet/minecraft/world/phys/shapes/VoxelShape; WEST_AABB g field_12214 + f Lnet/minecraft/world/phys/shapes/VoxelShape; SOUTH_AABB h field_12228 + f Lnet/minecraft/world/phys/shapes/VoxelShape; NORTH_AABB i field_12213 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_AABB j field_12230 + f Lnet/minecraft/world/phys/shapes/VoxelShape; DOWN_AABB k field_12220 + f F AABB_OFFSET l field_31378 + f F EDGE_MIN m field_31379 + f F EDGE_MAX n field_31380 + f Lnet/minecraft/world/phys/shapes/VoxelShape; UP_ARM_AABB o field_12215 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z isFittingBase a method_26980 + p 1 baseState + p 2 extendedState + m (Lnet/minecraft/core/Direction;Z)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateShape a method_11520 + p 0 direction + p 1 shortArm + m (Z)[Lnet/minecraft/world/phys/shapes/VoxelShape; makeShapes a method_31019 + p 0 extended + m (ZLnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_31020 a method_31020 + m (I)[Lnet/minecraft/world/phys/shapes/VoxelShape; method_31021 b method_31021 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/piston/PistonHeadBlock$1 dsw$1 net/minecraft/class_2671$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_12232 + m ()V +c net/minecraft/world/level/block/piston/PistonMath dsx net/minecraft/class_4623 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/Direction;D)Lnet/minecraft/world/phys/AABB; getMovementArea a method_23362 + p 0 bounds + p 1 dir + p 2 delta + m ()V +c net/minecraft/world/level/block/piston/PistonMath$1 dsx$1 net/minecraft/class_4623$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_21215 + m ()V +c net/minecraft/world/level/block/piston/PistonMovingBlockEntity dsy net/minecraft/class_2669 + f D TICK_MOVEMENT a field_31381 + f I TICKS_TO_EXTEND b field_31382 + f D PUSH_OFFSET c field_31383 + f Lnet/minecraft/world/level/block/state/BlockState; movedState d field_12204 + f Lnet/minecraft/core/Direction; direction e field_12201 + f Z extending f field_12203 + c Whether this piston is extending. + f Z isSourcePiston g field_12202 + f Ljava/lang/ThreadLocal; NOCLIP h field_12205 + f F progress i field_12207 + f F progressO j field_12206 + c The extension / retraction progress + f J lastTicked k field_12208 + f I deathTicks l field_26705 + m (F)F getProgress a method_11499 + c @return interpolated progress value (between lastProgress and progress) given the partialTicks + p 1 partialTicks + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape a method_11512 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V moveCollidedEntities a method_11503 + p 0 level + p 1 pos + p 2 partialTick + p 3 piston + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V tick a method_31707 + p 0 level + p 1 pos + p 2 state + p 3 blockEntity + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)Z matchesStickyCritera a method_23671 + p 0 box + p 1 entity + p 2 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z method_23673 a method_23673 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/core/Direction;Lnet/minecraft/world/phys/AABB;)D getMovement a method_11497 + p 0 headShape + p 1 direction + p 2 facing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;D)V fixEntityWithinPistonBase a method_11514 + p 0 pos + p 1 entity + p 2 dir + p 3 progress + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)Lnet/minecraft/world/phys/AABB; moveByPositionAndProgress a method_11500 + p 0 pos + p 1 aabb + p 2 pistonMovingBlockEntity + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/entity/Entity;DLnet/minecraft/core/Direction;)V moveEntityByPiston a method_23672 + p 0 noClipDirection + p 1 entity + p 2 progress + p 4 direction + m ()Z isExtending b method_11501 + c @return whether this piston is extending + m (F)F getXOff b method_11494 + p 1 partialTicks + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;FLnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;)V moveStuckEntities b method_23674 + p 0 level + p 1 pos + p 2 partialTick + p 3 piston + m ()Lnet/minecraft/core/Direction; getDirection c method_11498 + m (F)F getYOff c method_11511 + p 1 partialTicks + m ()Z isSourcePiston d method_11515 + m (F)F getZOff d method_11507 + p 1 partialTicks + m (F)F getExtendedProgress e method_11504 + p 1 progress + m ()Lnet/minecraft/core/Direction; getMovementDirection f method_11506 + m ()Lnet/minecraft/world/level/block/state/BlockState; getMovedState j method_11495 + m ()V finalTick k method_11513 + c Removes the piston's BlockEntity and stops any movement + m ()J getLastTicked l method_11508 + m ()Lnet/minecraft/world/level/block/state/BlockState; getCollisionRelatedBlockState u method_11496 + m ()Z isStickyForEntities v method_23364 + m ()Lnet/minecraft/core/Direction; method_21866 w method_21866 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 pos + p 2 blockState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;ZZ)V + p 1 pos + p 2 blockState + p 3 movedState + p 4 direction + p 5 extending + p 6 isSourcePiston + m ()V +c net/minecraft/world/level/block/piston/PistonMovingBlockEntity$1 dsy$1 net/minecraft/class_2669$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_12210 + f [I $SwitchMap$net$minecraft$core$Direction b field_21467 + m ()V +c net/minecraft/world/level/block/piston/PistonStructureResolver dsz net/minecraft/class_2674 + f I MAX_PUSH_DEPTH a field_31384 + f Lnet/minecraft/world/level/Level; level b field_12249 + f Lnet/minecraft/core/BlockPos; pistonPos c field_12250 + f Z extending d field_12247 + f Lnet/minecraft/core/BlockPos; startPos e field_12244 + f Lnet/minecraft/core/Direction; pushDirection f field_12243 + f Ljava/util/List; toPush g field_12245 + c All block positions to be moved by the piston + f Ljava/util/List; toDestroy h field_12246 + c All blocks to be destroyed by the piston + f Lnet/minecraft/core/Direction; pistonDirection i field_12248 + m ()Z resolve a method_11537 + m (II)V reorderListAtCollision a method_11539 + p 1 offsets + p 2 index + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSticky a method_23367 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z canStickToEachOther a method_23675 + p 0 state1 + p 1 state2 + m (Lnet/minecraft/core/BlockPos;)Z addBranchingBlocks a method_11538 + p 1 fromPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z addBlockLine a method_11540 + p 1 originPos + p 2 direction + m ()Lnet/minecraft/core/Direction; getPushDirection b method_35299 + m ()Ljava/util/List; getToPush c method_11541 + c @return all block positions to be moved by the piston + m ()Ljava/util/List; getToDestroy d method_11536 + c @return all block positions to be destroyed by the piston + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Z)V + p 1 level + p 2 pistonPos + p 3 pistonDirection + p 4 extending +c net/minecraft/world/level/block/piston/package-info dta net/minecraft/class_6093 +c net/minecraft/world/level/block/state/BlockBehaviour dtb net/minecraft/class_4970 + f [Lnet/minecraft/core/Direction; UPDATE_SHAPE_ORDER aF field_23157 + f Z hasCollision aG field_23159 + f F explosionResistance aH field_23160 + f Z isRandomlyTicking aI field_23161 + c Whether this blocks receives random ticks + f Lnet/minecraft/world/level/block/SoundType; soundType aJ field_23162 + f F friction aK field_23163 + c Determines how much velocity is maintained while moving on top of this block + f F speedFactor aL field_23164 + f F jumpFactor aM field_23165 + f Z dynamicShape aN field_23154 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures aO field_40337 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; properties aP field_23155 + f Lnet/minecraft/resources/ResourceKey; drops aQ field_23156 + m ()Lcom/mojang/serialization/MapCodec; codec a method_53969 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/ItemInteractionResult; useItemOn a method_55765 + p 1 stack + p 2 state + p 3 level + p 4 pos + p 5 player + p 6 hand + p 7 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/projectile/Projectile;)V onProjectileHit a method_19286 + p 1 level + p 2 state + p 3 hit + p 4 projectile + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V tick a method_9588 + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Z)V spawnAfterBreak a method_9565 + c Perform side-effects from block dropping, such as creating silverfish + p 1 state + p 2 level + p 3 pos + p 4 stack + p 5 dropExperience + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroyProgress a method_9594 + c Get the hardness of this Block relative to the ability of the given player + p 1 state + p 2 player + p 3 level + p 4 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/context/BlockPlaceContext;)Z canBeReplaced a method_9616 + p 1 state + p 2 useContext + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getInteractionShape a method_9584 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape a method_9530 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal a method_9524 + c Returns the signal this block emits in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given.\n + p 1 state + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getAnalogOutputSignal a method_9572 + c Returns the analog signal this block emits. This is the signal a comparator can read from it.\n + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;II)Z triggerEvent a method_9592 + c Called on server when {@link net.minecraft.world.level.Level#blockEvent} is called. If server returns true, then also called on the client. On the Server, this may perform additional changes to the world, like pistons replacing the block with an extended base. On the client, the update may involve replacing block entities or effects such as sounds or particles + p 1 state + p 2 level + p 3 pos + p 4 id + p 5 param + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V entityInside a method_9548 + p 1 state + p 2 level + p 3 pos + p 4 entity + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useWithoutItem a method_55766 + p 1 state + p 2 level + p 3 pos + p 4 player + p 5 hitResult + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;Ljava/util/function/BiConsumer;)V onExplosionHit a method_55124 + p 1 state + p 2 level + p 3 pos + p 4 explosion + p 5 dropConsumer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_9612 + p 1 state + p 2 level + p 3 pos + p 4 neighborBlock + p 5 neighborPos + p 6 movedByPiston + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onRemove a method_9536 + p 1 state + p 2 level + p 3 pos + p 4 newState + p 5 movedByPiston + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateIndirectNeighbourShapes a method_9517 + c Updates the shapes of indirect neighbors of this block. This method is analogous to\n{@link net.minecraft.world.level.block.state.BlockBehaviour$BlockStateBase#updateNeighbourShapes}\nbut where that method affects the 6 direct neighbors of this block, this method affects\nthe indirect neighbors, if any.\n\n

\nCurrently the only implementation of this method is {@link net.minecraft.world.level.block.RedStoneWireBlock#updateIndirectNeighbourShapes}\nwhere it is used to validate diagonal connections of redstone wire blocks. + p 1 state + p 2 level + p 3 pos + p 4 flags + p 5 recursionLeft + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSurvive a method_9558 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/block/state/BlockState; mirror a method_9569 + c Returns the blockstate with the given mirror of the passed blockstate. If inapplicable, returns the passed blockstate. + p 1 state + p 2 mirror + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotate a method_9598 + c Returns the blockstate with the given rotation from the passed blockstate. If inapplicable, returns the passed blockstate. + p 1 state + p 2 rotation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z skipRendering a method_9522 + p 1 state + p 2 adjacentState + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canBeReplaced a method_22358 + p 1 state + p 2 fluid + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/pathfinder/PathComputationType;)Z isPathfindable a method_9516 + p 1 state + p 2 pathComputationType + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/storage/loot/LootParams$Builder;)Ljava/util/List; getDrops a method_9560 + p 1 state + p 2 params + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)J getSeed a method_9535 + c Return a random long to be passed to {@link net.minecraft.client.resources.model.BakedModel#getQuads}, used for random model rotations + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_9559 + c Update the provided state given the provided neighbor direction and neighbor state, returning a new state.\nFor example, fences make their connections to the passed in state if possible, and wet concrete powder immediately returns its solidified counterpart.\nNote that this method should ideally consider only the specific direction passed in. + p 1 state + p 2 direction + p 3 neighborState + p 4 level + p 5 pos + p 6 neighborPos + m (Ljava/util/function/BiConsumer;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;)V method_55224 a method_55224 + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54093 a method_54093 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/RenderShape; getRenderShape a_ method_9604 + c The type of render function called. MODEL for mixed tesr and static model, MODELBLOCK_ANIMATED for TESR-only, LIQUID for vanilla liquids, INVISIBLE to skip all rendering + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z propagatesSkylightDown a_ method_9579 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V attack a_ method_9606 + p 1 state + p 2 level + p 3 pos + p 4 player + m ()F getMaxHorizontalOffset av_ method_32913 + m ()F getMaxVerticalOffset ax_ method_37247 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_9514 + c Performs a random tick on a block. + p 1 state + p 2 level + p 3 pos + p 4 random + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape b method_9549 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal b method_9603 + c Returns the direct signal this block emits in the given direction.\n\n

\nNOTE: directions in redstone signal related methods are backwards, so this method\nchecks for the signal emitted in the opposite direction of the one given.\n + p 1 state + p 2 level + p 3 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/MenuProvider; getMenuProvider b method_17454 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onPlace b method_9615 + p 1 state + p 2 level + p 3 pos + p 4 oldState + p 5 movedByPiston + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; simpleCodec b method_54094 + p 0 factory + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/FluidState; getFluidState b_ method_9545 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockSupportShape b_ method_25959 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isCollisionShapeFullBlock c method_37403 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVisualShape c method_26159 + p 1 state + p 2 level + p 3 pos + p 4 context + m (Lnet/minecraft/world/level/block/state/BlockState;)Z hasAnalogOutputSignal c_ method_9498 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness d method_9575 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isRandomlyTicking d_ method_9542 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isSignalSource e_ method_9506 + c Returns whether this block is capable of emitting redstone signals.\n + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape f method_9571 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z useShapeForLightOcclusion f_ method_9526 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getLightBlock g method_9505 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/SoundType; getSoundType g_ method_9573 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isOcclusionShapeFullBlock h method_42326 + p 1 state + p 2 level + p 3 pos + m ()Lnet/minecraft/world/level/block/Block; asBlock q method_26160 + m ()Lnet/minecraft/world/item/Item; asItem r method_8389 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; properties t method_54095 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; propertiesCodec u method_54096 + m ()Lnet/minecraft/resources/ResourceKey; getLootTable v method_26162 + m ()Lnet/minecraft/world/level/material/MapColor; defaultMapColor w method_26403 + m ()F defaultDestroyTime x method_36555 + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V + p 1 properties + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$1 dtb$1 net/minecraft/class_4970$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathComputationType a field_10659 + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase dtb$a net/minecraft/class_4970$class_4971 + f Z isRandomlyTicking A field_40340 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase$Cache; cache a field_23166 + f I lightEmission b field_23167 + f Z useShapeForLightOcclusion g field_23168 + f Z isAir h field_23169 + f Z ignitedByLava i field_43392 + f Z liquid j field_44480 + f Z legacySolid k field_44624 + f Lnet/minecraft/world/level/material/PushReaction; pushReaction l field_43393 + f Lnet/minecraft/world/level/material/MapColor; mapColor m field_23171 + f F destroySpeed n field_23172 + f Z requiresCorrectToolForDrops o field_25184 + f Z canOcclude p field_23173 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isRedstoneConductor q field_23174 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isSuffocating r field_23175 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isViewBlocking s field_23176 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; hasPostProcess t field_23177 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; emissiveRendering u field_23178 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction; offsetFunction v field_42817 + f Z spawnTerrainParticles w field_40338 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument x field_44625 + f Z replaceable y field_44626 + f Lnet/minecraft/world/level/material/FluidState; fluidState z field_40339 + m ()Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument A method_51364 + m ()Z calculateSolid D method_51365 + m ()V initCache a method_26200 + m (Lnet/minecraft/resources/ResourceKey;)Z is a method_54097 + p 1 block + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V tick a method_26192 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/ItemStack;Z)V spawnAfterBreak a method_26180 + p 1 level + p 2 pos + p 3 stack + p 4 dropExperience + m (Lnet/minecraft/tags/TagKey;)Z is a method_26164 + p 1 tag + m (Lnet/minecraft/tags/TagKey;Ljava/util/function/Predicate;)Z is a method_27851 + p 1 tag + p 2 predicate + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroyProgress a method_26165 + p 1 player + p 2 level + p 3 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/ItemInteractionResult; useItemOn a method_55780 + p 1 stack + p 2 level + p 3 player + p 4 hand + p 5 hitResult + m (Lnet/minecraft/world/item/context/BlockPlaceContext;)Z canBeReplaced a method_26166 + p 1 useContext + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z propagatesSkylightDown a method_26167 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)Z entityCanStandOn a method_26168 + p 1 level + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/Direction;)Z entityCanStandOnFace a method_26169 + c @return true if the collision box of this state covers the entire upper face of the blockspace + p 1 level + p 2 pos + p 3 entity + p 4 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z isValidSpawn a method_26170 + p 1 level + p 2 pos + p 3 entityType + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape a method_26172 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceOcclusionShape a method_26173 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)Z isFaceSturdy a method_30368 + p 1 level + p 2 pos + p 3 face + p 4 supportType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useWithoutItem a method_55781 + p 1 level + p 2 player + p 3 hitResult + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/entity/BlockEntityType;)Lnet/minecraft/world/level/block/entity/BlockEntityTicker; getTicker a method_31708 + p 1 level + p 2 blockEntityType + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/BlockHitResult;Lnet/minecraft/world/entity/projectile/Projectile;)V onProjectileHit a method_26175 + p 1 level + p 2 state + p 3 hit + p 4 projectile + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getAnalogOutputSignal a method_26176 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;II)Z triggerEvent a method_26177 + p 1 level + p 2 pos + p 3 id + p 4 param + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/Entity;)V entityInside a method_26178 + p 1 level + p 2 pos + p 3 entity + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)V attack a method_26179 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Explosion;Ljava/util/function/BiConsumer;)V onExplosionHit a method_55225 + p 1 level + p 2 pos + p 3 explosion + p 4 dropConsumer + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V handleNeighborChanged a method_26181 + p 1 level + p 2 pos + p 3 block + p 4 fromPos + p 5 isMoving + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onPlace a method_26182 + p 1 level + p 2 pos + p 3 oldState + p 4 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateNeighbourShapes a method_30101 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateNeighbourShapes a method_26183 + p 1 level + p 2 pos + p 3 flags + p 4 recursionLeft + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z canSurvive a method_26184 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;)Z is a method_27852 + p 1 block + m (Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/block/state/BlockState; mirror a method_26185 + c @return the blockstate mirrored in the given way. If inapplicable, returns itself. + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/block/state/BlockState; rotate a method_26186 + c @return the blockstate with the given rotation. If inapplicable, returns itself. + p 1 rotation + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z skipRendering a method_26187 + p 1 state + p 2 face + m (Lnet/minecraft/world/level/material/Fluid;)Z canBeReplaced a method_26188 + p 1 fluid + m (Lnet/minecraft/world/level/pathfinder/PathComputationType;)Z isPathfindable a method_26171 + m (Lnet/minecraft/world/level/storage/loot/LootParams$Builder;)Ljava/util/List; getDrops a method_26189 + p 1 lootParams + m (Lnet/minecraft/core/BlockPos;)J getSeed a method_26190 + p 1 pos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_26191 + p 1 direction + p 2 neighborState + p 3 level + p 4 pos + p 5 neighborPos + m (Lnet/minecraft/core/Holder;)Z is a method_53257 + p 1 block + m (Lnet/minecraft/core/HolderSet;)Z is a method_40143 + p 1 holder + m ()Lnet/minecraft/world/level/block/Block; getBlock b method_26204 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_26199 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getLightBlock b method_26193 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape b method_26194 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getSignal b method_26195 + p 1 level + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/MenuProvider; getMenuProvider b method_26196 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V onRemove b method_26197 + p 1 level + p 2 pos + p 3 newState + p 4 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;I)V updateIndirectNeighbourShapes b method_30102 + p 1 level + p 2 pos + p 3 flags + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;II)V updateIndirectNeighbourShapes b method_26198 + p 1 level + p 2 pos + p 3 flags + p 4 recursionLeft + m ()Lnet/minecraft/core/Holder; getBlockHolder c method_41520 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape c method_26201 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Lnet/minecraft/world/phys/shapes/VoxelShape; getVisualShape c method_26202 + p 1 level + p 2 pos + p 3 context + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDirectSignal c method_26203 + p 1 level + p 2 pos + p 3 direction + m ()Z blocksMotion d method_51366 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/material/MapColor; getMapColor d method_26205 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isFaceSturdy d method_26206 + p 1 level + p 2 pos + p 3 direction + m ()Z isSolid e method_51367 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z emissiveRendering e method_26208 + p 1 level + p 2 pos + m ()Z hasLargeCollisionShape f method_26209 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness f method_26210 + p 1 level + p 2 pos + m ()Z useShapeForLightOcclusion g method_26211 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isRedstoneConductor g method_26212 + p 1 level + p 2 pos + m ()I getLightEmission h method_26213 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getDestroySpeed h method_26214 + p 1 level + p 2 pos + m ()Z isAir i method_26215 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSolidRender i method_26216 + p 1 level + p 2 pos + m ()Z ignitedByLava j method_50011 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape j method_26218 + p 1 level + p 2 pos + m ()Z liquid k method_51176 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape k method_26220 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/block/RenderShape; getRenderShape l method_26217 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getBlockSupportShape l method_26222 + p 1 level + p 2 pos + m ()Z isSignalSource m method_26219 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getInteractionShape m method_26224 + p 1 level + p 2 pos + m ()Z hasAnalogOutputSignal n method_26221 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getOffset n method_26226 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/material/PushReaction; getPistonPushReaction o method_26223 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isSuffocating o method_26228 + p 1 level + p 2 pos + m ()Z canOcclude p method_26225 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isViewBlocking p method_26230 + p 1 level + p 2 pos + m ()Z hasOffsetFunction q method_49228 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasPostProcess q method_26232 + p 1 level + p 2 pos + m ()Z canBeReplaced r method_45474 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z isCollisionShapeFullBlock r method_26234 + p 1 level + p 2 pos + m ()Ljava/util/stream/Stream; getTags s method_40144 + m ()Z hasBlockEntity t method_31709 + m ()Lnet/minecraft/world/level/material/FluidState; getFluidState u method_26227 + m ()Z isRandomlyTicking v method_26229 + m ()Lnet/minecraft/world/level/block/SoundType; getSoundType w method_26231 + m ()Lnet/minecraft/world/level/block/state/BlockState; asState x method_26233 + m ()Z requiresCorrectToolForDrops y method_29291 + m ()Z shouldSpawnTerrainParticles z method_45475 + m (Lnet/minecraft/world/level/block/Block;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec +c net/minecraft/world/level/block/state/BlockBehaviour$BlockStateBase$Cache dtb$a$a net/minecraft/class_4970$class_4971$class_3752 + f Z solidRender a field_16557 + f Lnet/minecraft/world/phys/shapes/VoxelShape; collisionShape b field_19360 + f Z largeCollisionShape c field_17651 + f Z isCollisionShapeFullBlock d field_20337 + f [Lnet/minecraft/core/Direction; DIRECTIONS e field_16559 + f I SUPPORT_TYPE_COUNT f field_25830 + f Z propagatesSkylightDown g field_16556 + f I lightBlock h field_16555 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; occlusionShapes i field_16560 + f [Z faceSturdy j field_19429 + m (Lnet/minecraft/core/Direction$Axis;)Z method_17901 a method_17901 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)Z isFaceSturdy a method_30369 + p 1 direction + p 2 supportType + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/SupportType;)I getFaceSupportIndex b method_30370 + p 0 direction + p 1 supportType + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction dtb$b net/minecraft/class_4970$class_8176 +c net/minecraft/world/level/block/state/BlockBehaviour$OffsetType dtb$c net/minecraft/class_4970$class_2250 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; NONE a field_10656 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; XZ b field_10657 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; XYZ c field_10655 + f [Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; $VALUES d field_10658 + m ()[Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType; $values a method_36719 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$Properties dtb$d net/minecraft/class_4970$class_2251 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isViewBlocking A field_23184 + c If it blocks vision on the client side. + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; hasPostProcess B field_23185 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; emissiveRendering C field_23186 + f Z dynamicShape D field_10670 + f Lnet/minecraft/world/flag/FeatureFlagSet; requiredFeatures E field_40342 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetFunction; offsetFunction F field_42818 + f Lcom/mojang/serialization/Codec; CODEC a field_46532 + f Ljava/util/function/Function; mapColor b field_10662 + f Z hasCollision c field_10664 + f Lnet/minecraft/world/level/block/SoundType; soundType d field_10665 + f Ljava/util/function/ToIntFunction; lightEmission e field_10663 + f F explosionResistance f field_10660 + f F destroyTime g field_10669 + f Z requiresCorrectToolForDrops h field_25185 + f Z isRandomlyTicking i field_10661 + f F friction j field_10667 + f F speedFactor k field_23179 + f F jumpFactor l field_21209 + f Lnet/minecraft/resources/ResourceKey; drops m field_10666 + c Sets loot table information + f Z canOcclude n field_20721 + f Z isAir o field_23180 + f Z ignitedByLava p field_43394 + f Z liquid q field_44481 + f Z forceSolidOff r field_44627 + f Z forceSolidOn s field_44628 + f Lnet/minecraft/world/level/material/PushReaction; pushReaction t field_43395 + f Z spawnTerrainParticles u field_40341 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; instrument v field_44629 + f Z replaceable w field_44630 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate; isValidSpawn x field_23181 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isRedstoneConductor y field_23182 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; isSuffocating z field_23183 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; of a method_9637 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; friction a method_9628 + p 1 friction + m (FF)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; strength a method_9629 + p 1 destroyTime + p 2 explosionResistance + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_51517 + p 1 mapColor + m (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51518 a method_51518 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; dropsLike a method_16228 + p 1 block + m (Lnet/minecraft/world/level/block/SoundType;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; sound a method_9626 + p 1 soundType + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$OffsetType;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; offsetType a method_49229 + p 1 offsetType + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isValidSpawn a method_26235 + p 1 isValidSpawn + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isRedstoneConductor a method_26236 + p 1 isRedstoneConductor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ofFullCopy a method_9630 + p 0 blockBehaviour + m (Lnet/minecraft/world/level/block/state/BlockState;)I method_26237 a method_26237 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_49230 a method_49230 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Z method_26239 a method_26239 + m (Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; instrument a method_51368 + p 1 instrument + m (Lnet/minecraft/world/level/material/MapColor;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_31710 + p 1 mapColor + m (Lnet/minecraft/world/level/material/MapColor;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51519 a method_51519 + m (Lnet/minecraft/world/level/material/PushReaction;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; pushReaction a method_50012 + p 1 pushReaction + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; mapColor a method_51520 + p 1 mapColor + m (Ljava/util/function/ToIntFunction;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; lightLevel a method_9631 + p 1 lightEmission + m ([Lnet/minecraft/world/flag/FeatureFlag;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; requiredFeatures a method_45476 + p 1 requiredFeatures + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noCollission b method_9634 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; speedFactor b method_23351 + p 1 speedFactor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isSuffocating b method_26243 + p 1 isSuffocating + m (Lnet/minecraft/world/level/block/state/BlockBehaviour;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ofLegacyCopy b method_55226 + p 0 blockBehaviour + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/MapColor; method_51521 b method_51521 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; method_49231 b method_49231 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noOcclusion c method_22488 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; jumpFactor c method_23352 + p 1 jumpFactor + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; isViewBlocking c method_26245 + c If it blocks vision on the client side. + p 1 isViewBlocking + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26238 c method_26238 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; instabreak d method_9618 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; strength d method_9632 + p 1 strength + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; hasPostProcess d method_26247 + p 1 hasPostProcess + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26244 d method_26244 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; randomTicks e method_9640 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; destroyTime e method_36557 + p 1 destroyTime + m (Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate;)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; emissiveRendering e method_26249 + p 1 emissiveRendering + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26246 e method_26246 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; dynamicShape f method_9624 + m (F)Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; explosionResistance f method_36558 + p 1 explosionResistance + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_26248 f method_26248 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noLootTable g method_42327 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; ignitedByLava h method_50013 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; liquid i method_51177 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; forceSolidOn j method_51369 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; forceSolidOff k method_51370 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; air l method_26250 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; requiresCorrectToolForDrops m method_29292 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; noTerrainParticles n method_45477 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; replaceable o method_51371 + m ()Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties; method_54098 p method_54098 + m ()V + m ()V +c net/minecraft/world/level/block/state/BlockBehaviour$StateArgumentPredicate dtb$e net/minecraft/class_4970$class_4972 +c net/minecraft/world/level/block/state/BlockBehaviour$StatePredicate dtb$f net/minecraft/class_4970$class_4973 +c net/minecraft/world/level/block/state/BlockState dtc net/minecraft/class_2680 + c

Interface {@link net.fabricmc.fabric.api.block.v1.FabricBlockState} injected by mod fabric-block-api-v1

+ f Lcom/mojang/serialization/Codec; CODEC b field_24734 + m (Lnet/minecraft/world/level/block/Block;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + m ()V +c net/minecraft/world/level/block/state/StateDefinition dtd net/minecraft/class_2689 + f Ljava/util/regex/Pattern; NAME_PATTERN a field_12314 + f Ljava/lang/Object; owner b field_12317 + f Lcom/google/common/collect/ImmutableSortedMap; propertiesByName c field_12316 + f Lcom/google/common/collect/ImmutableList; states d field_12315 + m ()Lcom/google/common/collect/ImmutableList; getPossibleStates a method_11662 + m (Lcom/mojang/serialization/MapCodec;Ljava/util/function/Supplier;Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/Property;)Lcom/mojang/serialization/MapCodec; appendPropertyCodec a method_30040 + p 0 propertyCodec + p 1 holderSupplier + p 2 value + p 3 property + m (Lnet/minecraft/world/level/block/state/StateDefinition$Factory;Ljava/lang/Object;Lcom/mojang/serialization/MapCodec;Ljava/util/Map;Ljava/util/List;Ljava/util/List;)V method_28484 a method_28484 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lcom/mojang/datafixers/util/Pair;)Lnet/minecraft/world/level/block/state/StateHolder; method_30038 a method_30038 + m (Lnet/minecraft/world/level/block/state/properties/Property;Lnet/minecraft/world/level/block/state/StateHolder;)Lcom/mojang/datafixers/util/Pair; method_30037 a method_30037 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/List;)Ljava/util/stream/Stream; method_11666 a method_11666 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/block/state/properties/Property$Value; method_30039 a method_30039 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/Property; getProperty a method_11663 + p 1 propertyName + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/util/List; method_11661 a method_11661 + m (Ljava/util/function/Function;Ljava/lang/Object;)Lnet/minecraft/world/level/block/state/StateHolder; method_28485 a method_28485 + m ()Lnet/minecraft/world/level/block/state/StateHolder; any b method_11664 + m (Ljava/lang/String;)V method_38859 b method_38859 + m ()Ljava/lang/Object; getOwner c method_11660 + m ()Ljava/util/Collection; getProperties d method_11659 + m (Ljava/util/function/Function;Ljava/lang/Object;Lnet/minecraft/world/level/block/state/StateDefinition$Factory;Ljava/util/Map;)V + p 1 stateValueFunction + p 2 owner + p 3 valueFunction + p 4 propertiesByName + m ()V +c net/minecraft/world/level/block/state/StateDefinition$Builder dtd$a net/minecraft/class_2689$class_2690 + f Ljava/lang/Object; owner a field_12318 + f Ljava/util/Map; properties b field_12319 + m (Lnet/minecraft/world/level/block/state/properties/Property;)V validateProperty a method_11669 + p 1 property + m (Ljava/util/function/Function;Lnet/minecraft/world/level/block/state/StateDefinition$Factory;)Lnet/minecraft/world/level/block/state/StateDefinition; create a method_11668 + p 1 stateValueFunction + p 2 stateFunction + m ([Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/StateDefinition$Builder; add a method_11667 + p 1 properties + m (Ljava/lang/Object;)V + p 1 owner +c net/minecraft/world/level/block/state/StateDefinition$Factory dtd$b net/minecraft/class_2689$class_2691 +c net/minecraft/world/level/block/state/StateHolder dte net/minecraft/class_2688 + f Ljava/util/function/Function; PROPERTY_ENTRY_TO_STRING_FUNCTION a field_24737 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap; values b field_24738 + f Ljava/lang/String; NAME_TAG c field_31385 + f Ljava/lang/String; PROPERTIES_TAG d field_31386 + f Ljava/lang/Object; owner e field_24739 + f Lcom/mojang/serialization/MapCodec; propertiesCodec f field_24740 + f Lcom/google/common/collect/Table; neighbours g field_24741 + m ()Ljava/util/Collection; getProperties B method_28501 + c @return an unmodifiable collection of all possible properties. + m ()Ljava/util/Map; getValues C method_11656 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; codec a method_28494 + p 0 propertyMap + p 1 holderFunction + m (Lnet/minecraft/world/level/block/state/StateHolder;)Ljava/lang/Object; method_28492 a method_28492 + m (Lnet/minecraft/world/level/block/state/StateHolder;Ljava/util/Optional;)Lnet/minecraft/world/level/block/state/StateHolder; method_38860 a method_38860 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Object; cycle a method_28493 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/Object; setValue a method_11657 + p 1 property + p 2 value + m (Ljava/util/Collection;Ljava/lang/Object;)Ljava/lang/Object; findNextInCollection a method_28495 + p 0 collection + p 1 value + m (Ljava/util/Map;)V populateNeighbours a method_28496 + p 1 possibleStateMap + m (Ljava/util/function/Function;Ljava/lang/Object;)Lcom/mojang/serialization/MapCodec; method_28497 a method_28497 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Z hasProperty b method_28498 + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/Object; trySetValue b method_47968 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/lang/Comparable; getValue c method_11654 + c @return the value of the given Property for this state + p 1 property + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/util/Map; makeNeighbourValues c method_28499 + p 1 property + p 2 value + m (Lnet/minecraft/world/level/block/state/properties/Property;)Ljava/util/Optional; getOptionalValue d method_28500 + p 1 property + m (Ljava/lang/Object;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec + m ()V +c net/minecraft/world/level/block/state/StateHolder$1 dte$1 net/minecraft/class_2688$1 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getName a method_11575 + p 1 property + p 2 value + m (Ljava/util/Map$Entry;)Ljava/lang/String; apply a method_11576 + p 1 propertyEntry + m ()V +c net/minecraft/world/level/block/state/package-info dtf net/minecraft/class_6094 +c net/minecraft/world/level/block/state/pattern/BlockInWorld dtg net/minecraft/class_2694 + f Lnet/minecraft/world/level/LevelReader; level a field_12330 + f Lnet/minecraft/core/BlockPos; pos b field_12331 + f Z loadChunks c field_12329 + f Lnet/minecraft/world/level/block/state/BlockState; state d field_12326 + f Lnet/minecraft/world/level/block/entity/BlockEntity; entity e field_12327 + f Z cachedEntity f field_12328 + m ()Lnet/minecraft/world/level/block/state/BlockState; getState a method_11681 + c Gets the block state as currently held, or (if it has not gotten it from the level) loads it from the level.\nThis will only look up the state from the world if {@link #loadChunks} is true or the block position is loaded. + m (Ljava/util/function/Predicate;)Ljava/util/function/Predicate; hasState a method_11678 + p 0 state + m (Ljava/util/function/Predicate;Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_11682 a method_11682 + m ()Lnet/minecraft/world/level/block/entity/BlockEntity; getEntity b method_11680 + c Gets the BlockEntity as currently held, or (if it has not gotten it from the level) loads it from the level. + m ()Lnet/minecraft/world/level/LevelReader; getLevel c method_11679 + m ()Lnet/minecraft/core/BlockPos; getPos d method_11683 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Z)V + p 1 level + p 2 pos + p 3 loadChunks +c net/minecraft/world/level/block/state/pattern/BlockPattern dth net/minecraft/class_2700 + f [[[Ljava/util/function/Predicate; pattern a field_12358 + f I depth b field_12357 + f I height c field_12356 + f I width d field_12355 + m ()I getDepth a method_11712 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; find a method_11708 + c Calculates whether the given world position matches the pattern. Warning, fairly heavy function.\n@return a BlockPatternMatch if found, null otherwise. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; matches a method_35300 + p 1 level + p 2 pos + p 3 finger + p 4 thumb + m (Lnet/minecraft/world/level/LevelReader;Z)Lcom/google/common/cache/LoadingCache; createLevelCache a method_11709 + p 0 level + p 1 forceLoad + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;III)Lnet/minecraft/core/BlockPos; translateAndRotate a method_11707 + c Offsets the position of pos in the direction of finger and thumb facing by offset amounts, follows the right-hand rule for cross products (finger, thumb, palm)\n\n@return a new BlockPos offset in the facing directions + p 0 pos + p 1 finger + p 2 thumb + p 3 palmOffset + p 4 thumbOffset + p 5 fingerOffset + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lcom/google/common/cache/LoadingCache;)Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; matches a method_11711 + c Checks that the given pattern & rotation is at the block coordinates. + p 1 pos + p 2 finger + p 3 thumb + p 4 cache + m ()I getHeight b method_11713 + m ()I getWidth c method_11710 + m ()[[[Ljava/util/function/Predicate; getPattern d method_35301 + m ([[[Ljava/util/function/Predicate;)V + p 1 pattern +c net/minecraft/world/level/block/state/pattern/BlockPattern$BlockCacheLoader dth$a net/minecraft/class_2700$class_2701 + f Lnet/minecraft/world/level/LevelReader; level a field_12359 + f Z loadChunks b field_12360 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; load a method_11714 + p 1 pos + m (Lnet/minecraft/world/level/LevelReader;Z)V + p 1 level + p 2 loadChunks +c net/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch dth$b net/minecraft/class_2700$class_2702 + f Lnet/minecraft/core/BlockPos; frontTopLeft a field_12367 + f Lnet/minecraft/core/Direction; forwards b field_12365 + f Lnet/minecraft/core/Direction; up c field_12364 + f Lcom/google/common/cache/LoadingCache; cache d field_12366 + f I width e field_12363 + f I height f field_12362 + f I depth g field_12361 + m ()Lnet/minecraft/core/BlockPos; getFrontTopLeft a method_11715 + m (III)Lnet/minecraft/world/level/block/state/pattern/BlockInWorld; getBlock a method_11717 + p 1 palmOffset + p 2 thumbOffset + p 3 fingerOffset + m ()Lnet/minecraft/core/Direction; getForwards b method_11719 + m ()Lnet/minecraft/core/Direction; getUp c method_11716 + m ()I getWidth d method_35302 + m ()I getHeight e method_35303 + m ()I getDepth f method_35304 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lcom/google/common/cache/LoadingCache;III)V + p 1 frontTopLeft + p 2 forwards + p 3 up + p 4 cache + p 5 width + p 6 height + p 7 depth +c net/minecraft/world/level/block/state/pattern/BlockPatternBuilder dti net/minecraft/class_2697 + f Lcom/google/common/base/Joiner; COMMA_JOINED a field_12340 + f Ljava/util/List; pattern b field_12344 + f Ljava/util/Map; lookup c field_12343 + f I height d field_12342 + f I width e field_12341 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; start a method_11701 + m (CLjava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; where a method_11700 + p 1 symbol + p 2 blockMatcher + m (Lnet/minecraft/world/level/block/state/pattern/BlockInWorld;)Z method_38861 a method_38861 + m ([Ljava/lang/String;)Lnet/minecraft/world/level/block/state/pattern/BlockPatternBuilder; aisle a method_11702 + c Adds a single aisle to this pattern, going in the z axis. (so multiple calls to this will increase the z-size by 1) + p 1 aisle + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern; build b method_11704 + m ()[[[Ljava/util/function/Predicate; createPattern c method_11703 + m ()V ensureAllCharactersMatched d method_11705 + m ()V + m ()V +c net/minecraft/world/level/block/state/pattern/package-info dtj net/minecraft/class_6095 +c net/minecraft/world/level/block/state/predicate/BlockPredicate dtk net/minecraft/class_2717 + f Lnet/minecraft/world/level/block/Block; block a field_12423 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/predicate/BlockPredicate; forBlock a method_11766 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_11765 + p 1 state + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/block/state/predicate/BlockStatePredicate dtl net/minecraft/class_2715 + f Ljava/util/function/Predicate; ANY a field_12419 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition b field_12420 + f Ljava/util/Map; properties c field_12421 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; forBlock a method_11758 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_11760 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;)Z applies a method_11761 + p 1 state + p 2 property + p 3 valuePredicate + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; where a method_11762 + p 1 property + p 2 valuePredicate + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_11759 b method_11759 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V + p 1 definition + m ()V +c net/minecraft/world/level/block/state/predicate/package-info dtm net/minecraft/class_6096 +c net/minecraft/world/level/block/state/properties/AttachFace dtn net/minecraft/class_2738 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; FLOOR a field_12475 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; WALL b field_12471 + f Lnet/minecraft/world/level/block/state/properties/AttachFace; CEILING c field_12473 + f Ljava/lang/String; name d field_12472 + f [Lnet/minecraft/world/level/block/state/properties/AttachFace; $VALUES e field_12474 + m ()[Lnet/minecraft/world/level/block/state/properties/AttachFace; $values a method_36720 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BambooLeaves dto net/minecraft/class_2737 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; NONE a field_12469 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; SMALL b field_12466 + f Lnet/minecraft/world/level/block/state/properties/BambooLeaves; LARGE c field_12468 + f Ljava/lang/String; name d field_12467 + f [Lnet/minecraft/world/level/block/state/properties/BambooLeaves; $VALUES e field_12470 + m ()[Lnet/minecraft/world/level/block/state/properties/BambooLeaves; $values a method_36721 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BedPart dtp net/minecraft/class_2742 + f Lnet/minecraft/world/level/block/state/properties/BedPart; HEAD a field_12560 + f Lnet/minecraft/world/level/block/state/properties/BedPart; FOOT b field_12557 + f Ljava/lang/String; name c field_12559 + f [Lnet/minecraft/world/level/block/state/properties/BedPart; $VALUES d field_12558 + m ()[Lnet/minecraft/world/level/block/state/properties/BedPart; $values a method_36722 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BellAttachType dtq net/minecraft/class_3867 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; FLOOR a field_17098 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; CEILING b field_17099 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; SINGLE_WALL c field_17100 + f Lnet/minecraft/world/level/block/state/properties/BellAttachType; DOUBLE_WALL d field_17101 + f Ljava/lang/String; name e field_17102 + f [Lnet/minecraft/world/level/block/state/properties/BellAttachType; $VALUES f field_17103 + m ()[Lnet/minecraft/world/level/block/state/properties/BellAttachType; $values a method_36723 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/BlockSetType dtr net/minecraft/class_8177 + f Lnet/minecraft/sounds/SoundEvent; trapdoorOpen A comp_1294 + f Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOff B comp_1295 + f Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOn C comp_1296 + f Lnet/minecraft/sounds/SoundEvent; buttonClickOff D comp_1297 + f Lnet/minecraft/sounds/SoundEvent; buttonClickOn E comp_1298 + f Ljava/util/Map; TYPES F field_46533 + f Lcom/mojang/serialization/Codec; CODEC a field_46534 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; IRON b field_42819 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; COPPER c field_47100 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; GOLD d field_42820 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; STONE e field_42821 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; POLISHED_BLACKSTONE f field_42822 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; OAK g field_42823 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; SPRUCE h field_42824 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; BIRCH i field_42825 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; ACACIA j field_42826 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; CHERRY k field_42827 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; JUNGLE l field_42828 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; DARK_OAK m field_42829 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; CRIMSON n field_42830 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; WARPED o field_42831 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; MANGROVE p field_42832 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; BAMBOO q field_42833 + f Ljava/lang/String; name r comp_1289 + f Z canOpenByHand s comp_1471 + f Z canOpenByWindCharge t comp_2112 + f Z canButtonBeActivatedByArrows u comp_1972 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; pressurePlateSensitivity v comp_1973 + f Lnet/minecraft/world/level/block/SoundType; soundType w comp_1290 + f Lnet/minecraft/sounds/SoundEvent; doorClose x comp_1291 + f Lnet/minecraft/sounds/SoundEvent; doorOpen y comp_1292 + f Lnet/minecraft/sounds/SoundEvent; trapdoorClose z comp_1293 + m ()Ljava/util/stream/Stream; values a method_49232 + m (Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; register a method_49233 + p 0 value + m ()Ljava/lang/String; name b comp_1289 + m ()Z canOpenByHand c comp_1471 + m ()Z canOpenByWindCharge d comp_2112 + m ()Z canButtonBeActivatedByArrows e comp_1972 + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; pressurePlateSensitivity f comp_1973 + m ()Lnet/minecraft/world/level/block/SoundType; soundType g comp_1290 + m ()Lnet/minecraft/sounds/SoundEvent; doorClose h comp_1291 + m ()Lnet/minecraft/sounds/SoundEvent; doorOpen i comp_1292 + m ()Lnet/minecraft/sounds/SoundEvent; trapdoorClose j comp_1293 + m ()Lnet/minecraft/sounds/SoundEvent; trapdoorOpen k comp_1294 + m ()Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOff l comp_1295 + m ()Lnet/minecraft/sounds/SoundEvent; pressurePlateClickOn m comp_1296 + m ()Lnet/minecraft/sounds/SoundEvent; buttonClickOff n comp_1297 + m ()Lnet/minecraft/sounds/SoundEvent; buttonClickOn o comp_1298 + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/String;ZZZLnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + m ()V +c net/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity dtr$a net/minecraft/class_8177$class_2441 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; EVERYTHING a field_11361 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; MOBS b field_11362 + f [Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; $VALUES c field_11363 + m ()[Lnet/minecraft/world/level/block/state/properties/BlockSetType$PressurePlateSensitivity; $values a method_36707 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/BlockStateProperties dts net/minecraft/class_2741 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; TRIGGERED A field_12522 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UNSTABLE B field_12539 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WATERLOGGED C field_12508 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BERRIES D field_28716 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BLOOM E field_37651 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHRIEKING F field_37652 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CAN_SUMMON G field_38423 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HORIZONTAL_AXIS H field_12529 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; AXIS I field_12496 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; UP J field_12519 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DOWN K field_12546 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; NORTH L field_12489 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EAST M field_12487 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SOUTH N field_12540 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; WEST O field_12527 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING P field_12525 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; FACING_HOPPER Q field_12545 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; HORIZONTAL_FACING R field_12481 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; FLOWER_AMOUNT S field_42835 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ORIENTATION T field_23333 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; ATTACH_FACE U field_12555 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BELL_ATTACHMENT V field_17104 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_WALL W field_22174 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_WALL X field_22175 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_WALL Y field_22176 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_WALL Z field_22177 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DELAY aA field_12494 + f I MAX_DISTANCE aB field_31402 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DISTANCE aC field_12541 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; EGGS aD field_12509 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; HATCH aE field_12530 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LAYERS aF field_12536 + f I MIN_LEVEL aG field_31387 + f I MIN_LEVEL_CAULDRON aH field_31388 + f I MAX_LEVEL_3 aI field_31389 + f I MAX_LEVEL_8 aJ field_31390 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_CAULDRON aK field_12513 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_COMPOSTER aL field_17586 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ATTACHED a field_12493 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_FLOWING aM field_12490 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL_HONEY aN field_20432 + f I MAX_LEVEL_15 aO field_33723 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL aP field_12538 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; MOISTURE aQ field_12510 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; NOTE aR field_12524 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; PICKLES aS field_12543 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; POWER aT field_12511 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STAGE aU field_12549 + f I STABILITY_MAX_DISTANCE aV field_31391 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; STABILITY_DISTANCE aW field_16503 + f I MIN_RESPAWN_ANCHOR_CHARGES aX field_31392 + f I MAX_RESPAWN_ANCHOR_CHARGES aY field_31393 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; RESPAWN_ANCHOR_CHARGES aZ field_23187 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; EAST_REDSTONE aa field_12523 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NORTH_REDSTONE ab field_12495 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SOUTH_REDSTONE ac field_12551 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; WEST_REDSTONE ad field_12504 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DOUBLE_BLOCK_HALF ae field_12533 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; HALF af field_12518 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; RAIL_SHAPE ag field_12507 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; RAIL_SHAPE_STRAIGHT ah field_12542 + f I MAX_AGE_1 ai field_31395 + f I MAX_AGE_2 aj field_31396 + f I MAX_AGE_3 ak field_31397 + f I MAX_AGE_4 al field_37653 + f I MAX_AGE_5 am field_31398 + f I MAX_AGE_7 an field_31399 + f I MAX_AGE_15 ao field_31400 + f I MAX_AGE_25 ap field_31401 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_1 aq field_12521 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_2 ar field_12556 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_3 as field_12497 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_4 at field_37654 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_5 au field_12482 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_7 av field_12550 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_15 aw field_12498 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; AGE_25 ax field_12517 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; BITES ay field_12505 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; CANDLES az field_27220 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OMINOUS bA field_50193 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; BOTTOM b field_16562 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; ROTATION_16 ba field_12532 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BED_PART bb field_12483 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; CHEST_TYPE bc field_12506 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; MODE_COMPARATOR bd field_12534 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DOOR_HINGE be field_12520 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; NOTEBLOCK_INSTRUMENT bf field_12499 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; PISTON_TYPE bg field_12492 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SLAB_TYPE bh field_12485 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STAIRS_SHAPE bi field_12503 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; STRUCTUREBLOCK_MODE bj field_12547 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; BAMBOO_LEAVES bk field_12516 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TILT bl field_28717 + f Lnet/minecraft/world/level/block/state/properties/DirectionProperty; VERTICAL_DIRECTION bm field_28062 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; DRIPSTONE_THICKNESS bn field_28063 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; SCULK_SENSOR_PHASE bo field_28120 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_0_OCCUPIED bp field_41317 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_1_OCCUPIED bq field_41318 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_2_OCCUPIED br field_41319 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_3_OCCUPIED bs field_41320 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_4_OCCUPIED bt field_41321 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CHISELED_BOOKSHELF_SLOT_5_OCCUPIED bu field_41322 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; DUSTED bv field_42836 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRACKED bw field_43307 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CRAFTING bx field_46822 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; TRIAL_SPAWNER_STATE by field_47408 + f Lnet/minecraft/world/level/block/state/properties/EnumProperty; VAULT_STATE bz field_48915 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; CONDITIONAL c field_12486 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DISARMED d field_12553 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; DRAG e field_12526 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; ENABLED f field_12515 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EXTENDED g field_12552 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; EYE h field_12488 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; FALLING i field_12480 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HANGING j field_16561 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_0 k field_12554 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_1 l field_12500 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOTTLE_2 m field_12531 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_RECORD n field_12544 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; HAS_BOOK o field_17393 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; INVERTED p field_12501 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; IN_WALL q field_12491 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LIT r field_12548 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; LOCKED s field_12502 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OCCUPIED t field_12528 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; OPEN u field_12537 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; PERSISTENT v field_12514 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; POWERED w field_12484 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SHORT x field_12535 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SIGNAL_FIRE y field_17394 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; SNOWY z field_12512 + m (Lnet/minecraft/world/level/block/state/properties/RailShape;)Z method_11813 a method_11813 + m (Lnet/minecraft/core/Direction;)Z method_11814 a method_11814 + m ()V + m ()V +c net/minecraft/world/level/block/state/properties/BooleanProperty dtt net/minecraft/class_2746 + f Lcom/google/common/collect/ImmutableSet; values a field_12575 + m (Ljava/lang/Boolean;)Ljava/lang/String; getName a method_11826 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/BooleanProperty; create a method_11825 + p 0 name + m (Ljava/lang/String;)V + p 1 name +c net/minecraft/world/level/block/state/properties/ChestType dtu net/minecraft/class_2745 + f Lnet/minecraft/world/level/block/state/properties/ChestType; SINGLE a field_12569 + f Lnet/minecraft/world/level/block/state/properties/ChestType; LEFT b field_12574 + f Lnet/minecraft/world/level/block/state/properties/ChestType; RIGHT c field_12571 + f Ljava/lang/String; name d field_12572 + f [Lnet/minecraft/world/level/block/state/properties/ChestType; $VALUES e field_12573 + m ()Lnet/minecraft/world/level/block/state/properties/ChestType; getOpposite a method_11824 + m ()[Lnet/minecraft/world/level/block/state/properties/ChestType; $values b method_36724 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/ComparatorMode dtv net/minecraft/class_2747 + f Lnet/minecraft/world/level/block/state/properties/ComparatorMode; COMPARE a field_12576 + f Lnet/minecraft/world/level/block/state/properties/ComparatorMode; SUBTRACT b field_12578 + f Ljava/lang/String; name c field_12577 + f [Lnet/minecraft/world/level/block/state/properties/ComparatorMode; $VALUES d field_12579 + m ()[Lnet/minecraft/world/level/block/state/properties/ComparatorMode; $values a method_36725 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/DirectionProperty dtw net/minecraft/class_2753 + m (Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_35305 + p 0 name + m (Ljava/lang/String;Ljava/util/Collection;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11843 + c Create a new DirectionProperty for the given direction values + p 0 name + p 1 values + m (Ljava/lang/String;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11844 + c Create a new DirectionProperty with all directions that match the given Predicate + p 0 name + p 1 filter + m (Ljava/lang/String;[Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/block/state/properties/DirectionProperty; create a method_11845 + p 0 name + p 1 values + m (Lnet/minecraft/core/Direction;)Z method_38862 a method_38862 + m (Ljava/lang/String;Ljava/util/Collection;)V + p 1 name + p 2 values +c net/minecraft/world/level/block/state/properties/DoorHingeSide dtx net/minecraft/class_2750 + f Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; LEFT a field_12588 + f Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; RIGHT b field_12586 + f [Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; $VALUES c field_12587 + m ()[Lnet/minecraft/world/level/block/state/properties/DoorHingeSide; $values a method_36726 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/DoubleBlockHalf dty net/minecraft/class_2756 + f Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; UPPER a field_12609 + f Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; LOWER b field_12607 + f Lnet/minecraft/core/Direction; directionToOther c field_47101 + f [Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; $VALUES d field_12608 + m ()Lnet/minecraft/core/Direction; getDirectionToOther a method_54779 + m ()Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; getOtherHalf b method_54780 + m ()[Lnet/minecraft/world/level/block/state/properties/DoubleBlockHalf; $values d method_36727 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;)V + p 3 directionToOther + m ()V +c net/minecraft/world/level/block/state/properties/DripstoneThickness dtz net/minecraft/class_5691 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; TIP_MERGE a field_28064 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; TIP b field_28065 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; FRUSTUM c field_28066 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; MIDDLE d field_28067 + f Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; BASE e field_28068 + f Ljava/lang/String; name f field_28069 + f [Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; $VALUES g field_28070 + m ()[Lnet/minecraft/world/level/block/state/properties/DripstoneThickness; $values a method_36728 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/EnumProperty dua net/minecraft/class_2754 + f Lcom/google/common/collect/ImmutableSet; values a field_12595 + f Ljava/util/Map; names b field_12596 + c Map of names to Enum values + m (Ljava/lang/Enum;)Ljava/lang/String; getName a method_11846 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;Ljava/lang/Class;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11850 + c Create a new EnumProperty with all Enum constants of the given class. + p 0 name + p 1 clazz + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11847 + c Create a new EnumProperty with the specified values + p 0 name + p 1 clazz + p 2 values + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11848 + c Create a new EnumProperty with all Enum constants of the given class that match the given Predicate. + p 0 name + p 1 clazz + p 2 filter + m (Ljava/lang/String;Ljava/lang/Class;[Ljava/lang/Enum;)Lnet/minecraft/world/level/block/state/properties/EnumProperty; create a method_11849 + c Create a new EnumProperty with the specified values + p 0 name + p 1 clazz + p 2 values + m (Ljava/lang/Enum;)Z method_38863 b method_38863 + m (Ljava/lang/String;Ljava/lang/Class;Ljava/util/Collection;)V + p 1 name + p 2 clazz + p 3 values +c net/minecraft/world/level/block/state/properties/Half dub net/minecraft/class_2760 + f Lnet/minecraft/world/level/block/state/properties/Half; TOP a field_12619 + f Lnet/minecraft/world/level/block/state/properties/Half; BOTTOM b field_12617 + f Ljava/lang/String; name c field_12616 + f [Lnet/minecraft/world/level/block/state/properties/Half; $VALUES d field_12618 + m ()[Lnet/minecraft/world/level/block/state/properties/Half; $values a method_36729 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/IntegerProperty duc net/minecraft/class_2758 + f Lcom/google/common/collect/ImmutableSet; values a field_12614 + f I min b field_37655 + f I max c field_37656 + m (Ljava/lang/Integer;)Ljava/lang/String; getName a method_11868 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;II)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; create a method_11867 + p 0 name + p 1 min + p 2 max + m (Ljava/lang/String;II)V + p 1 name + p 2 min + p 3 max +c net/minecraft/world/level/block/state/properties/NoteBlockInstrument dud net/minecraft/class_2766 + f [Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; $VALUES A field_12652 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; HARP a field_12648 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BASEDRUM b field_12653 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; SNARE c field_12643 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; HAT d field_12645 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BASS e field_12651 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; FLUTE f field_12650 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BELL g field_12644 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; GUITAR h field_12654 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CHIME i field_12647 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; XYLOPHONE j field_12655 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; IRON_XYLOPHONE k field_18284 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; COW_BELL l field_18285 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; DIDGERIDOO m field_18286 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BIT n field_18287 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; BANJO o field_18288 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; PLING p field_18289 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; ZOMBIE q field_41324 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; SKELETON r field_41325 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CREEPER s field_41326 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; DRAGON t field_41327 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; WITHER_SKELETON u field_41328 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; PIGLIN v field_41329 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; CUSTOM_HEAD w field_41604 + f Ljava/lang/String; name x field_12646 + f Lnet/minecraft/core/Holder; soundEvent y field_12649 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; type z field_41605 + m ()Lnet/minecraft/core/Holder; getSoundEvent a method_11886 + m ()Z isTunable b method_47889 + m ()Z hasCustomSound d method_47890 + m ()Z worksAboveNoteBlock e method_51372 + m ()[Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument; $values f method_36730 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type;)V + p 3 name + p 4 soundEvent + p 5 type + m ()V +c net/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type dud$a net/minecraft/class_2766$class_7994 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; BASE_BLOCK a field_41606 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; MOB_HEAD b field_41607 + f Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; CUSTOM c field_41608 + f [Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; $VALUES d field_41609 + m ()[Lnet/minecraft/world/level/block/state/properties/NoteBlockInstrument$Type; $values a method_47892 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/block/state/properties/PistonType due net/minecraft/class_2764 + f Lnet/minecraft/world/level/block/state/properties/PistonType; DEFAULT a field_12637 + f Lnet/minecraft/world/level/block/state/properties/PistonType; STICKY b field_12634 + f Ljava/lang/String; name c field_12635 + f [Lnet/minecraft/world/level/block/state/properties/PistonType; $VALUES d field_12636 + m ()[Lnet/minecraft/world/level/block/state/properties/PistonType; $values a method_36731 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/Property duf net/minecraft/class_2769 + f Ljava/lang/Class; clazz a field_24742 + f Ljava/lang/String; name b field_24743 + f Ljava/lang/Integer; hashCode c field_24744 + f Lcom/mojang/serialization/Codec; codec d field_24745 + f Lcom/mojang/serialization/Codec; valueCodec e field_25670 + m ()Ljava/util/Collection; getPossibleValues a method_11898 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/block/state/StateHolder;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; parseValue a method_35307 + p 1 ops + p 2 stateHolder + p 3 unparsedValue + m (Lnet/minecraft/world/level/block/state/StateHolder;)Lnet/minecraft/world/level/block/state/properties/Property$Value; value a method_30041 + p 1 holder + m (Lnet/minecraft/world/level/block/state/StateHolder;Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/StateHolder; method_35306 a method_35306 + m (Ljava/lang/Comparable;)Ljava/lang/String; getName a method_11901 + c @return the name for the given value. + p 1 value + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_28504 a method_28504 + m ()I generateHashCode b method_11799 + m (Ljava/lang/Comparable;)Lnet/minecraft/world/level/block/state/properties/Property$Value; value b method_30042 + p 1 value + m (Ljava/lang/String;)Ljava/util/Optional; getValue b method_11900 + p 1 value + m ()Ljava/util/stream/Stream; getAllValues c method_30043 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_28505 c method_28505 + m ()Lcom/mojang/serialization/Codec; codec d method_35308 + m (Ljava/lang/String;)Ljava/lang/String; method_49524 d method_49524 + m ()Lcom/mojang/serialization/Codec; valueCodec e method_30044 + m ()Ljava/lang/String; getName f method_11899 + m ()Ljava/lang/Class; getValueClass g method_11902 + c @return the class of the values of this property + m (Ljava/lang/String;Ljava/lang/Class;)V + p 1 name + p 2 clazz +c net/minecraft/world/level/block/state/properties/Property$Value duf$a net/minecraft/class_2769$class_4933 + f Lnet/minecraft/world/level/block/state/properties/Property; property a comp_70 + f Ljava/lang/Comparable; value b comp_71 + m ()Lnet/minecraft/world/level/block/state/properties/Property; property a comp_70 + m ()Ljava/lang/Comparable; value b comp_71 + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)V + p 1 property + p 2 value +c net/minecraft/world/level/block/state/properties/RailShape dug net/minecraft/class_2768 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_SOUTH a field_12665 + f Lnet/minecraft/world/level/block/state/properties/RailShape; EAST_WEST b field_12674 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_EAST c field_12667 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_WEST d field_12666 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_NORTH e field_12670 + f Lnet/minecraft/world/level/block/state/properties/RailShape; ASCENDING_SOUTH f field_12668 + f Lnet/minecraft/world/level/block/state/properties/RailShape; SOUTH_EAST g field_12664 + f Lnet/minecraft/world/level/block/state/properties/RailShape; SOUTH_WEST h field_12671 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_WEST i field_12672 + f Lnet/minecraft/world/level/block/state/properties/RailShape; NORTH_EAST j field_12663 + f Ljava/lang/String; name k field_12669 + f [Lnet/minecraft/world/level/block/state/properties/RailShape; $VALUES l field_12673 + m ()Ljava/lang/String; getName a method_35309 + m ()Z isAscending b method_11897 + m ()[Lnet/minecraft/world/level/block/state/properties/RailShape; $values d method_36732 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/RedstoneSide duh net/minecraft/class_2773 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; UP a field_12686 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; SIDE b field_12689 + f Lnet/minecraft/world/level/block/state/properties/RedstoneSide; NONE c field_12687 + f Ljava/lang/String; name d field_12685 + f [Lnet/minecraft/world/level/block/state/properties/RedstoneSide; $VALUES e field_12688 + m ()Z isConnected a method_27855 + m ()[Lnet/minecraft/world/level/block/state/properties/RedstoneSide; $values b method_36733 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/RotationSegment dui net/minecraft/class_7718 + f Lnet/minecraft/util/SegmentedAnglePrecision; SEGMENTED_ANGLE16 a field_41768 + f I MAX_SEGMENT_INDEX b field_40345 + f I NORTH_0 c field_40346 + f I EAST_90 d field_40347 + f I SOUTH_180 e field_40348 + f I WEST_270 f field_40349 + m ()I getMaxSegmentIndex a method_45478 + m (F)I convertToSegment a method_45479 + p 0 angle + m (I)Ljava/util/Optional; convertToDirection a method_45480 + p 0 segment + m (Lnet/minecraft/core/Direction;)I convertToSegment a method_45481 + p 0 direction + m (I)F convertToDegrees b method_45482 + p 0 segment + m ()V + m ()V +c net/minecraft/world/level/block/state/properties/SculkSensorPhase duj net/minecraft/class_5705 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; INACTIVE a field_28121 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; ACTIVE b field_28122 + f Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; COOLDOWN c field_44631 + f Ljava/lang/String; name d field_28124 + f [Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; $VALUES e field_28125 + m ()[Lnet/minecraft/world/level/block/state/properties/SculkSensorPhase; $values a method_36734 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/SlabType duk net/minecraft/class_2771 + f Lnet/minecraft/world/level/block/state/properties/SlabType; TOP a field_12679 + f Lnet/minecraft/world/level/block/state/properties/SlabType; BOTTOM b field_12681 + f Lnet/minecraft/world/level/block/state/properties/SlabType; DOUBLE c field_12682 + f Ljava/lang/String; name d field_12678 + f [Lnet/minecraft/world/level/block/state/properties/SlabType; $VALUES e field_12680 + m ()[Lnet/minecraft/world/level/block/state/properties/SlabType; $values a method_36735 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/StairsShape dul net/minecraft/class_2778 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; STRAIGHT a field_12710 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; INNER_LEFT b field_12712 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; INNER_RIGHT c field_12713 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; OUTER_LEFT d field_12708 + f Lnet/minecraft/world/level/block/state/properties/StairsShape; OUTER_RIGHT e field_12709 + f Ljava/lang/String; name f field_12714 + f [Lnet/minecraft/world/level/block/state/properties/StairsShape; $VALUES g field_12711 + m ()[Lnet/minecraft/world/level/block/state/properties/StairsShape; $values a method_36736 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/StructureMode dum net/minecraft/class_2776 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; SAVE a field_12695 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; LOAD b field_12697 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; CORNER c field_12699 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; DATA d field_12696 + f Ljava/lang/String; name e field_12698 + f Lnet/minecraft/network/chat/Component; displayName f field_26444 + f [Lnet/minecraft/world/level/block/state/properties/StructureMode; $VALUES g field_12700 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_30844 + m ()[Lnet/minecraft/world/level/block/state/properties/StructureMode; $values b method_36737 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/Tilt dun net/minecraft/class_5816 + f Lnet/minecraft/world/level/block/state/properties/Tilt; NONE a field_28718 + f Lnet/minecraft/world/level/block/state/properties/Tilt; UNSTABLE b field_28719 + f Lnet/minecraft/world/level/block/state/properties/Tilt; PARTIAL c field_28720 + f Lnet/minecraft/world/level/block/state/properties/Tilt; FULL d field_28721 + f Ljava/lang/String; name e field_28722 + f Z causesVibration f field_28723 + f [Lnet/minecraft/world/level/block/state/properties/Tilt; $VALUES g field_28724 + m ()Z causesVibration a method_33636 + m ()[Lnet/minecraft/world/level/block/state/properties/Tilt; $values b method_36738 + m (Ljava/lang/String;ILjava/lang/String;Z)V + p 3 name + p 4 causesVibration + m ()V +c net/minecraft/world/level/block/state/properties/WallSide duo net/minecraft/class_4778 + f Lnet/minecraft/world/level/block/state/properties/WallSide; NONE a field_22178 + f Lnet/minecraft/world/level/block/state/properties/WallSide; LOW b field_22179 + f Lnet/minecraft/world/level/block/state/properties/WallSide; TALL c field_22180 + f Ljava/lang/String; name d field_22181 + f [Lnet/minecraft/world/level/block/state/properties/WallSide; $VALUES e field_22182 + m ()[Lnet/minecraft/world/level/block/state/properties/WallSide; $values a method_36739 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/block/state/properties/WoodType dup net/minecraft/class_4719 + f Lcom/mojang/serialization/Codec; CODEC a field_46535 + f Lnet/minecraft/world/level/block/state/properties/WoodType; OAK b field_21676 + f Lnet/minecraft/world/level/block/state/properties/WoodType; SPRUCE c field_21677 + f Lnet/minecraft/world/level/block/state/properties/WoodType; BIRCH d field_21678 + f Lnet/minecraft/world/level/block/state/properties/WoodType; ACACIA e field_21679 + f Lnet/minecraft/world/level/block/state/properties/WoodType; CHERRY f field_42837 + f Lnet/minecraft/world/level/block/state/properties/WoodType; JUNGLE g field_21680 + f Lnet/minecraft/world/level/block/state/properties/WoodType; DARK_OAK h field_21681 + f Lnet/minecraft/world/level/block/state/properties/WoodType; CRIMSON i field_22183 + f Lnet/minecraft/world/level/block/state/properties/WoodType; WARPED j field_22184 + f Lnet/minecraft/world/level/block/state/properties/WoodType; MANGROVE k field_37657 + f Lnet/minecraft/world/level/block/state/properties/WoodType; BAMBOO l field_40350 + f Ljava/lang/String; name m comp_1299 + f Lnet/minecraft/world/level/block/state/properties/BlockSetType; setType n comp_1300 + f Lnet/minecraft/world/level/block/SoundType; soundType o comp_1301 + f Lnet/minecraft/world/level/block/SoundType; hangingSignSoundType p comp_1302 + f Lnet/minecraft/sounds/SoundEvent; fenceGateClose q comp_1303 + f Lnet/minecraft/sounds/SoundEvent; fenceGateOpen r comp_1304 + f Ljava/util/Map; TYPES s field_46536 + m ()Ljava/util/stream/Stream; values a method_24026 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; register a method_24027 + p 0 woodType + m ()Ljava/lang/String; name b comp_1299 + m ()Lnet/minecraft/world/level/block/state/properties/BlockSetType; setType c comp_1300 + m ()Lnet/minecraft/world/level/block/SoundType; soundType d comp_1301 + m ()Lnet/minecraft/world/level/block/SoundType; hangingSignSoundType e comp_1302 + m ()Lnet/minecraft/sounds/SoundEvent; fenceGateClose f comp_1303 + m ()Lnet/minecraft/sounds/SoundEvent; fenceGateOpen g comp_1304 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/BlockSetType;)V + p 1 name + p 2 setType + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/world/level/block/SoundType;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundEvent;)V + m ()V +c net/minecraft/world/level/block/state/properties/package-info duq net/minecraft/class_6097 +c net/minecraft/world/level/border/BorderChangeListener dur net/minecraft/class_2780 + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSizeSet a method_11934 + p 1 border + p 2 size + m (Lnet/minecraft/world/level/border/WorldBorder;DD)V onBorderCenterSet a method_11930 + p 1 border + p 2 x + p 4 z + m (Lnet/minecraft/world/level/border/WorldBorder;DDJ)V onBorderSizeLerping a method_11931 + p 1 border + p 2 oldSize + p 4 newSize + p 6 time + m (Lnet/minecraft/world/level/border/WorldBorder;I)V onBorderSetWarningTime a method_11932 + p 1 border + p 2 warningTime + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSetDamagePerBlock b method_11929 + p 1 border + p 2 damagePerBlock + m (Lnet/minecraft/world/level/border/WorldBorder;I)V onBorderSetWarningBlocks b method_11933 + p 1 border + p 2 warningBlocks + m (Lnet/minecraft/world/level/border/WorldBorder;D)V onBorderSetDamageSafeZOne c method_11935 + p 1 border + p 2 damageSafeZone +c net/minecraft/world/level/border/BorderChangeListener$DelegateBorderChangeListener dur$a net/minecraft/class_2780$class_3976 + f Lnet/minecraft/world/level/border/WorldBorder; worldBorder a field_17652 + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 worldBorder +c net/minecraft/world/level/border/BorderStatus dus net/minecraft/class_2789 + f Lnet/minecraft/world/level/border/BorderStatus; GROWING a field_12754 + f Lnet/minecraft/world/level/border/BorderStatus; SHRINKING b field_12756 + f Lnet/minecraft/world/level/border/BorderStatus; STATIONARY c field_12753 + f I color d field_12755 + f [Lnet/minecraft/world/level/border/BorderStatus; $VALUES e field_12752 + m ()I getColor a method_11999 + c Retrieves the color that the border should be, while in this state. + m ()[Lnet/minecraft/world/level/border/BorderStatus; $values b method_36740 + m (Ljava/lang/String;II)V + p 3 color + m ()V +c net/minecraft/world/level/border/WorldBorder dut net/minecraft/class_2784 + f Ljava/util/List; listeners a field_12730 + f D MAX_SIZE b field_33643 + f D MAX_CENTER_COORDINATE c field_36191 + f Lnet/minecraft/world/level/border/WorldBorder$Settings; DEFAULT_SETTINGS d field_24122 + f D damagePerBlock e field_12733 + f D damageSafeZone f field_12731 + f I warningTime g field_12735 + f I warningBlocks h field_12734 + f D centerX i field_12738 + f D centerZ j field_12737 + f I absoluteMaxSize k field_12732 + f Lnet/minecraft/world/level/border/WorldBorder$BorderExtent; extent l field_12736 + m ()D getCenterX a method_11964 + m (D)V setSize a method_11969 + p 1 size + m (DD)Z isWithinBounds a method_35317 + p 1 x + p 3 z + m (DDD)Z isWithinBounds a method_39458 + p 1 x + p 3 z + p 5 offset + m (DDDD)Z isWithinBounds a method_61114 + p 1 x1 + p 3 z1 + p 5 x2 + p 7 z2 + m (DDJ)V lerpSizeBetween a method_11957 + p 1 oldSize + p 3 newSize + p 5 time + m (I)V setAbsoluteMaxSize a method_11973 + p 1 size + m (Lnet/minecraft/world/entity/Entity;)D getDistanceToBorder a method_11979 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/AABB;)Z isInsideCloseToBorder a method_39459 + p 1 entity + p 2 bounds + m (Lnet/minecraft/world/level/ChunkPos;)Z isWithinBounds a method_11951 + p 1 chunkPos + m (Lnet/minecraft/world/level/border/BorderChangeListener;)V addListener a method_11983 + p 1 listener + m (Lnet/minecraft/world/level/border/WorldBorder$Settings;)V applySettings a method_17905 + p 1 serializer + m (Lnet/minecraft/world/phys/AABB;)Z isWithinBounds a method_11966 + p 1 box + m (Lnet/minecraft/world/phys/Vec3;)Z isWithinBounds a method_61115 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z isWithinBounds a method_11952 + p 1 pos + m ()D getCenterZ b method_11980 + m (D)V setDamageSafeZone b method_11981 + p 1 damageSafeZone + m (DD)D getDistanceToBorder b method_11961 + p 1 x + p 3 z + m (DDD)Lnet/minecraft/core/BlockPos; clampToBounds b method_39538 + p 1 x + p 3 y + p 5 z + m (I)V setWarningTime b method_11975 + p 1 warningTime + m (Lnet/minecraft/world/level/border/BorderChangeListener;)V removeListener b method_35318 + p 1 listener + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/core/BlockPos; clampToBounds b method_61116 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; clampToBounds b method_61117 + p 1 pos + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape c method_17903 + m (D)V setDamagePerBlock c method_11955 + p 1 damagePerBlock + m (DD)V setCenter c method_11978 + p 1 x + p 3 z + m (I)V setWarningBlocks c method_11967 + p 1 warningDistance + m ()Lnet/minecraft/world/level/border/BorderStatus; getStatus d method_11968 + m ()D getMinX e method_11976 + m ()D getMinZ f method_11958 + m ()D getMaxX g method_11963 + m ()D getMaxZ h method_11977 + m ()D getSize i method_11965 + m ()J getLerpRemainingTime j method_11962 + m ()D getLerpTarget k method_11954 + m ()Ljava/util/List; getListeners l method_11970 + m ()I getAbsoluteMaxSize m method_11959 + m ()D getDamageSafeZone n method_11971 + m ()D getDamagePerBlock o method_11953 + m ()D getLerpSpeed p method_11974 + m ()I getWarningTime q method_11956 + m ()I getWarningBlocks r method_11972 + m ()V tick s method_11982 + m ()Lnet/minecraft/world/level/border/WorldBorder$Settings; createSettings t method_27355 + m ()V + m ()V +c net/minecraft/world/level/border/WorldBorder$BorderExtent dut$a net/minecraft/class_2784$class_2785 + m ()D getMinX a method_11994 + m ()D getMaxX b method_11991 + m ()D getMinZ c method_11992 + m ()D getMaxZ d method_11985 + m ()D getSize e method_11984 + m ()D getLerpSpeed f method_11987 + m ()J getLerpRemainingTime g method_11993 + m ()D getLerpTarget h method_11988 + m ()Lnet/minecraft/world/level/border/BorderStatus; getStatus i method_11995 + m ()V onAbsoluteMaxSizeChange j method_11989 + m ()V onCenterChange k method_11990 + m ()Lnet/minecraft/world/level/border/WorldBorder$BorderExtent; update l method_11986 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; getCollisionShape m method_17906 +c net/minecraft/world/level/border/WorldBorder$MovingBorderExtent dut$b net/minecraft/class_2784$class_2786 + f Lnet/minecraft/world/level/border/WorldBorder; field_12743 a field_12743 + f D from b field_12740 + f D to c field_12739 + f J lerpEnd d field_12742 + f J lerpBegin e field_12741 + f D lerpDuration f field_12744 + m (Lnet/minecraft/world/level/border/WorldBorder;DDJ)V + p 2 from + p 4 to + p 6 lerpDuration +c net/minecraft/world/level/border/WorldBorder$Settings dut$c net/minecraft/class_2784$class_5200 + f D centerX a field_24123 + f D centerZ b field_24124 + f D damagePerBlock c field_24125 + f D safeZone d field_24126 + f I warningBlocks e field_24127 + f I warningTime f field_24128 + f D size g field_24129 + f J sizeLerpTime h field_24130 + f D sizeLerpTarget i field_24131 + m ()D getCenterX a method_27356 + m (Lcom/mojang/serialization/DynamicLike;Lnet/minecraft/world/level/border/WorldBorder$Settings;)Lnet/minecraft/world/level/border/WorldBorder$Settings; read a method_27358 + p 0 dynamic + p 1 defaultValue + m (Lnet/minecraft/nbt/CompoundTag;)V write a method_27357 + p 1 nbt + m ()D getCenterZ b method_27359 + m ()D getDamagePerBlock c method_27360 + m ()D getSafeZone d method_27361 + m ()I getWarningBlocks e method_27362 + m ()I getWarningTime f method_27363 + m ()D getSize g method_27364 + m ()J getSizeLerpTime h method_27365 + m ()D getSizeLerpTarget i method_27366 + m (DDDDIIDJD)V + p 1 centerX + p 3 centerZ + p 5 damagePerBlock + p 7 safeZone + p 9 warningBlocks + p 10 warningTime + p 11 size + p 13 sizeLerpTime + p 15 sizeLerpTarget + m (Lnet/minecraft/world/level/border/WorldBorder;)V + p 1 border +c net/minecraft/world/level/border/WorldBorder$StaticBorderExtent dut$d net/minecraft/class_2784$class_2787 + f Lnet/minecraft/world/level/border/WorldBorder; field_12748 a field_12748 + f D size b field_12747 + f D minX c field_12746 + f D minZ d field_12745 + f D maxX e field_12750 + f D maxZ f field_12749 + f Lnet/minecraft/world/phys/shapes/VoxelShape; shape g field_17653 + m ()V updateBox n method_11996 + m (Lnet/minecraft/world/level/border/WorldBorder;D)V + p 2 size +c net/minecraft/world/level/border/package-info duu net/minecraft/class_6098 +c net/minecraft/world/level/chunk/BlockColumn duv net/minecraft/class_6557 + m (I)Lnet/minecraft/world/level/block/state/BlockState; getBlock a method_32892 + p 1 pos + m (ILnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_38092 + p 1 pos + p 2 state +c net/minecraft/world/level/chunk/BulkSectionAccess duw net/minecraft/class_5867 + f Lnet/minecraft/world/level/LevelAccessor; level a field_29037 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; acquiredSections b field_29038 + f Lnet/minecraft/world/level/chunk/LevelChunkSection; lastSection c field_29039 + f J lastSectionKey d field_29040 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/chunk/LevelChunkSection; getSection a method_33944 + p 1 pos + m (Lnet/minecraft/core/BlockPos;IJ)Lnet/minecraft/world/level/chunk/LevelChunkSection; method_33945 a method_33945 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_33946 + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;)V + p 1 level +c net/minecraft/world/level/chunk/CarvingMask dux net/minecraft/class_6643 + f I minY a field_35049 + f Ljava/util/BitSet; mask b field_35050 + f Lnet/minecraft/world/level/chunk/CarvingMask$Mask; additionalMask c field_36217 + m ()[J toArray a method_38864 + m (III)V set a method_38865 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/stream/Stream; stream a method_38866 + p 1 pos + m (Lnet/minecraft/world/level/ChunkPos;I)Lnet/minecraft/core/BlockPos; method_38867 a method_38867 + m (Lnet/minecraft/world/level/chunk/CarvingMask$Mask;)V setAdditionalMask a method_39785 + p 1 additionalMask + m (III)Z get b method_38868 + p 1 x + p 2 y + p 3 z + m (III)I getIndex c method_38869 + p 1 x + p 2 y + p 3 z + m (III)Z method_39786 d method_39786 + m (II)V + p 1 mask + p 2 minY + m ([JI)V + p 1 mask + p 2 minY +c net/minecraft/world/level/chunk/CarvingMask$Mask dux$a net/minecraft/class_6643$class_6828 +c net/minecraft/world/level/chunk/ChunkAccess duy net/minecraft/class_2791 + c

Interface {@link net.fabricmc.fabric.api.attachment.v1.AttachmentTarget} injected by mod fabric-data-attachment-api-v1

+ f I NO_FILLED_SECTION a field_44632 + f [Lit/unimi/dsi/fastutil/shorts/ShortList; postProcessing b field_34536 + f Z unsaved c field_34537 + f Lnet/minecraft/world/level/ChunkPos; chunkPos d field_34538 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk e field_34539 + f Lnet/minecraft/world/level/chunk/UpgradeData; upgradeData f field_34540 + f Lnet/minecraft/world/level/levelgen/blending/BlendingData; blendingData g field_35468 + f Ljava/util/Map; heightmaps h field_34541 + f Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; skyLightSources i field_44708 + f Ljava/util/Map; pendingBlockEntities j field_34542 + f Ljava/util/Map; blockEntities k field_34543 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor l field_34544 + f [Lnet/minecraft/world/level/chunk/LevelChunkSection; sections m field_34545 + f Lorg/slf4j/Logger; LOGGER n field_34548 + f Lit/unimi/dsi/fastutil/longs/LongSet; EMPTY_REFERENCE_SET o field_37052 + f Z isLightCorrect p field_34549 + f J inhabitedTime q field_34550 + f Lnet/minecraft/world/level/biome/BiomeGenerationSettings; carverBiomeSettings r field_39411 + f Ljava/util/Map; structureStarts s field_34552 + f Ljava/util/Map; structuresRefences t field_34553 + m ()V initializeLightSources A method_51522 + m ()I getHighestFilledSectionIndex a method_12040 + m (I)Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; getListenerRegistry a method_32914 + p 1 sectionY + m (II)Z isYSpaceEmpty a method_12228 + p 1 startY + p 2 endY + m (III)Ljava/lang/String; method_38254 a method_38254 + m (J)V incrementInhabitedTime a method_38870 + p 1 amount + m (Lnet/minecraft/world/entity/Entity;)V addEntity a method_12002 + p 1 entity + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/biome/Climate$Sampler;)V fillBiomesFromNoise a method_38257 + p 1 resolver + p 2 sampler + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V setBlockEntity a method_12007 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51523 a method_51523 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap; getOrCreateHeightmapUnprimed a method_12032 + p 1 type + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_12005 + p 1 type + p 2 x + p 3 z + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;[J)V setHeightmap a method_12037 + p 1 type + p 2 data + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V setBlendingData a method_39294 + p 1 blendingData + m (Ljava/util/Map;)V setAllStarts a method_12034 + p 1 structureStarts + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/levelgen/NoiseChunk; getOrCreateNoiseChunk a method_38255 + p 1 noiseChunkCreator + m (Ljava/util/function/Predicate;Ljava/util/function/BiConsumer;)V findBlocks a method_51525 + p 1 predicate + p 2 output + m (Ljava/util/function/Supplier;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; carverBiome a method_44214 + p 1 caverBiomeSettingsSupplier + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_12010 + p 1 pos + p 2 state + p 3 isMoving + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; getBlockEntityNbtForSaving a method_20598 + p 1 pos + p 2 registries + m (Lnet/minecraft/core/Registry;[Lnet/minecraft/world/level/chunk/LevelChunkSection;)V replaceMissingSections a method_38256 + p 0 biomeRegistry + p 1 sections + m (Lnet/minecraft/nbt/CompoundTag;)V setBlockEntityNbt a method_12042 + p 1 tag + m (SI)V addPackedPostProcess a method_12029 + p 1 packedPosition + p 2 index + m (Z)V setUnsaved a method_12008 + p 1 unsaved + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;I)Lit/unimi/dsi/fastutil/shorts/ShortList; getOrCreateOffsetList a method_12026 + p 0 packedPositions + p 1 index + m ()I getHighestSectionPosition b method_12031 + m (I)Lnet/minecraft/world/level/chunk/LevelChunkSection; getSection b method_38259 + p 1 index + m (J)V setInhabitedTime b method_12028 + p 1 inhabitedTime + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Z hasPrimedHeightmap b method_39295 + p 1 type + m (Z)V setLightCorrect b method_12020 + p 1 lightCorrect + m ()Ljava/util/Set; getBlockEntitiesPos c method_12021 + m (I)Z isSectionEmpty c method_60791 + p 1 y + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap; method_38260 c method_38260 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/LongSet; method_38261 c method_38261 + m ()[Lnet/minecraft/world/level/chunk/LevelChunkSection; getSections d method_12006 + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntity d method_12041 + p 1 pos + m ()Ljava/util/Collection; getHeightmaps e method_12011 + m (Lnet/minecraft/core/BlockPos;)V markPosForPostprocessing e method_12039 + p 1 pos + m ()Lnet/minecraft/world/level/ChunkPos; getPos f method_12004 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/nbt/CompoundTag; getBlockEntityNbt f method_12024 + p 1 pos + m ()Ljava/util/Map; getAllStarts g method_12016 + m ()Z isUnsaved i method_12044 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getPersistedStatus j method_12009 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getHighestGeneratedStatus k method_51526 + m ()[Lit/unimi/dsi/fastutil/shorts/ShortList; getPostProcessing n method_12012 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; getBlockTicks o method_12013 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; getFluidTicks p method_12014 + m ()Lnet/minecraft/world/level/chunk/ChunkAccess$TicksToSave; getTicksForSerialization q method_39296 + m ()Lnet/minecraft/world/level/chunk/UpgradeData; getUpgradeData r method_12003 + m ()Z isOldNoiseGeneration s method_39297 + m ()Lnet/minecraft/world/level/levelgen/blending/BlendingData; getBlendingData t method_39299 + m ()J getInhabitedTime u method_12033 + m ()Z isLightCorrect v method_12038 + m ()Z hasAnyStructureReferences w method_38871 + m ()Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; getBelowZeroRetrogen x method_39300 + m ()Z isUpgrading y method_39461 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getHeightAccessorForGeneration z method_39460 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;J[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 levelHeightAccessor + p 4 biomeRegistry + p 5 inhabitedTime + p 7 sections + p 8 blendingData + m ()V +c net/minecraft/world/level/chunk/ChunkAccess$TicksToSave duy$a net/minecraft/class_2791$class_6745 + f Lnet/minecraft/world/ticks/SerializableTickContainer; blocks a comp_239 + f Lnet/minecraft/world/ticks/SerializableTickContainer; fluids b comp_240 + m ()Lnet/minecraft/world/ticks/SerializableTickContainer; blocks a comp_239 + m ()Lnet/minecraft/world/ticks/SerializableTickContainer; fluids b comp_240 + m (Lnet/minecraft/world/ticks/SerializableTickContainer;Lnet/minecraft/world/ticks/SerializableTickContainer;)V +c net/minecraft/world/level/chunk/ChunkGenerator duz net/minecraft/class_2794 + f Lcom/mojang/serialization/Codec; CODEC a field_24746 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b field_12761 + f Ljava/util/function/Supplier; featuresPerStep c field_39412 + f Ljava/util/function/Function; generationSettingsGetter d field_39413 + m ()V validate a method_59825 + m (IILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/NoiseColumn; getBaseColumn a method_26261 + p 1 x + p 2 z + p 3 height + p 4 random + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getBaseHeight a method_16397 + p 1 x + p 2 z + p 3 type + p 4 level + p 5 random + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/BlockPos;IZ)Lcom/mojang/datafixers/util/Pair; findNearestMapStructure a method_12103 + p 1 level + p 2 structure + p 3 pos + p 4 searchRadius + p 5 skipKnownStructures + m (Lnet/minecraft/server/level/WorldGenRegion;)V spawnOriginalMobs a method_12107 + p 1 level + m (Lnet/minecraft/server/level/WorldGenRegion;JLnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)V applyCarvers a method_12108 + p 1 level + p 2 seed + p 4 random + p 5 biomeManager + p 6 structureManager + p 7 chunk + p 8 step + m (Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)V buildSurface a method_12110 + p 1 level + p 2 structureManager + p 3 random + p 4 chunk + m (Lnet/minecraft/world/level/LevelHeightAccessor;)I getSpawnHeight a method_12100 + p 1 level + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)I fetchReferences a method_38264 + p 0 structureManager + p 1 chunk + p 2 sectionPos + p 3 structure + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z tryAddReference a method_41521 + p 0 structureManager + p 1 structureStart + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z method_41040 a method_41040 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/Holder;)V method_41041 a method_41041 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)V createReferences a method_16130 + p 1 level + p 2 structureManager + p 3 chunk + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_38265 a method_38265 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/StructureManager;)V applyBiomeDecoration a method_12102 + p 1 level + p 2 chunk + p 3 structureManager + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Lnet/minecraft/world/level/ChunkPos;)V method_39787 a method_39787 + m (Lnet/minecraft/world/level/biome/BiomeSource;Ljava/util/function/Function;)Ljava/util/List; method_44215 a method_44215 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getWritableArea a method_39462 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38267 a method_38267 + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; createBiomes a method_38275 + p 1 randomState + p 2 blender + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; fillFromNoise a method_12088 + p 1 blender + p 2 randomState + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/lang/Integer; method_38268 a method_38268 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/SectionPos;)Z tryGenerateStructure a method_41044 + p 1 structureSelectionEntry + p 2 structureManager + p 3 registryAccess + p 4 random + p 5 structureTemplateManager + p 6 seed + p 8 chunk + p 9 chunkPos + p 10 sectionPos + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_30149 a method_30149 + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;Lnet/minecraft/core/Registry;)Ljava/lang/String; method_41045 a method_41045 + m (Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)Ljava/util/Set; method_41046 a method_41046 + m (Lit/unimi/dsi/fastutil/ints/IntSet;Lnet/minecraft/world/level/biome/FeatureSorter$StepFeatureData;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)V method_39788 a method_39788 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/core/BlockPos;)V addDebugScreenInfo a method_40450 + p 1 info + p 2 random + p 3 pos + m (Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_41050 a method_41050 + m (Ljava/util/Set;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Lcom/mojang/datafixers/util/Pair; getNearestGeneratedStructure a method_40148 + p 1 structureHoldersSet + p 2 level + p 3 structureManager + p 4 pos + p 5 skipKnownStructures + p 6 placement + m (Ljava/util/Set;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/StructureManager;IIIZJLnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement;)Lcom/mojang/datafixers/util/Pair; getNearestGeneratedStructure a method_40146 + p 0 structureHoldersSet + p 1 level + p 2 structureManager + p 3 x + p 4 y + p 5 z + p 6 skipKnownStructures + p 7 seed + p 9 spreadPlacement + m (Ljava/util/Set;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/StructureManager;ZLnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Lnet/minecraft/world/level/ChunkPos;)Lcom/mojang/datafixers/util/Pair; getStructureGeneratingAt a method_41522 + p 0 structureHoldersSet + p 1 level + p 2 structureManager + p 3 skipKnownStructures + p 4 placement + p 5 chunkPos + m (Ljava/util/function/Function;Lnet/minecraft/core/Holder;)Ljava/util/List; method_44217 a method_44217 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Z method_41047 a method_41047 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; getBiomeGenerationSettings a method_44216 + p 1 biome + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/entity/MobCategory;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/random/WeightedRandomList; getMobsAt a method_12113 + p 1 biome + p 2 structureManager + p 3 category + p 4 pos + m (Lnet/minecraft/core/HolderLookup;Lnet/minecraft/world/level/levelgen/RandomState;J)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createState a method_46696 + p 1 structureSetLookup + p 2 randomState + p 3 seed + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Ljava/lang/String; method_38271 a method_38271 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/lang/String; method_38272 a method_38272 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)V createStructures a method_16129 + p 1 registryAccess + p 2 structureState + p 3 structureManager + p 4 chunk + p 5 structureTemplateManager + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_41052 a method_41052 + m ()Lcom/mojang/serialization/MapCodec; codec b method_28506 + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getFirstFreeHeight b method_20402 + p 1 x + p 2 z + p 3 type + p 4 level + p 5 random + m (Lnet/minecraft/world/level/levelgen/structure/StructureStart;)Ljava/lang/String; method_30148 b method_30148 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_44218 b method_44218 + m ()Ljava/util/Optional; getTypeNameForDataFixer c method_39301 + m (IILnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I getFirstOccupiedHeight c method_18028 + p 1 x + p 2 z + p 3 types + p 4 level + p 5 random + m ()Lnet/minecraft/world/level/biome/BiomeSource; getBiomeSource d method_12098 + m ()I getGenDepth e method_12104 + m ()I getSeaLevel f method_16398 + m ()I getMinY g method_33730 + m (Lnet/minecraft/world/level/biome/BiomeSource;)V + p 1 biomeSource + m (Lnet/minecraft/world/level/biome/BiomeSource;Ljava/util/function/Function;)V + p 1 biomeSource + p 2 generationSettingsGetter + m ()V +c net/minecraft/world/level/chunk/ChunkGeneratorStructureState dva net/minecraft/class_7869 + f Lorg/slf4j/Logger; LOGGER a field_40899 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState b field_40900 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c field_40901 + f J levelSeed d field_40902 + f J concentricRingsSeed e field_40903 + f Ljava/util/Map; placementsForStructure f field_40904 + f Ljava/util/Map; ringPositions g field_40905 + f Z hasGeneratedPositions h field_40906 + f Ljava/util/List; possibleStructureSets i field_40907 + m ()Ljava/util/List; possibleStructureSets a method_46697 + m (IILnet/minecraft/core/HolderSet;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/ChunkPos; method_46698 a method_46698 + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/core/Holder;Ljava/util/List;)Ljava/util/List; method_46701 a method_46701 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder$Reference;)Z method_46699 a method_46699 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)Z method_46700 a method_46700 + m (Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/biome/BiomeSource;Ljava/util/stream/Stream;)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createForFlat a method_46703 + p 0 randomState + p 1 levelSeed + p 3 biomeSource + p 4 structureSets + m (Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/HolderLookup;)Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState; createForNormal a method_46702 + p 0 randomState + p 1 seed + p 3 biomeSource + p 4 structureSetLookup + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Ljava/util/List; method_46704 a method_46704 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry;)Ljava/util/stream/Stream; method_46705 a method_46705 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSet;Lnet/minecraft/world/level/biome/BiomeSource;)Z hasBiomesForStructureSet a method_46706 + p 0 structureSet + p 1 biomeSource + m (Lnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Ljava/util/List; getRingPositionsFor a method_46707 + p 1 placement + m (Ljava/util/Set;Lnet/minecraft/core/Holder;)V method_46711 a method_46711 + m (Lnet/minecraft/core/Holder;)Ljava/util/List; getPlacementsForStructure a method_46708 + p 1 structure + m (Lnet/minecraft/core/Holder;III)Z hasStructureChunkInRange a method_46709 + p 1 structureSet + p 2 x + p 3 z + p 4 range + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement;)Ljava/util/concurrent/CompletableFuture; generateRingPositions a method_46710 + p 1 structureSet + p 2 placement + m ()V ensureStructuresGenerated b method_46712 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c method_46713 + m ()J getLevelSeed d method_46714 + m ()V generatePositions e method_46715 + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeSource;JJLjava/util/List;)V + p 1 randomState + p 2 biomeSource + p 3 levelSeed + p 5 cocentricRingsSeed + p 7 possibleStructureSets + m ()V +c net/minecraft/world/level/chunk/ChunkGenerators dvb net/minecraft/class_7511 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_44219 + p 0 registry + m ()V +c net/minecraft/world/level/chunk/ChunkSource dvc net/minecraft/class_2802 + m (II)Lnet/minecraft/world/level/chunk/LevelChunk; getChunkNow a method_21730 + p 1 chunkX + p 2 chunkZ + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/ChunkAccess; getChunk a method_12121 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (IIZ)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_12126 + p 1 chunkX + p 2 chunkZ + p 3 load + m (Lnet/minecraft/world/level/ChunkPos;Z)V updateChunkForced a method_12124 + p 1 pos + p 2 add + m (Ljava/util/function/BooleanSupplier;Z)V tick a method_12127 + p 1 hasTimeLeft + p 2 tickChunks + m (ZZ)V setSpawnSettings a method_12128 + p 1 hostile + p 2 peaceful + m (II)Z hasChunk b method_12123 + c @return {@code true} if a chunk is loaded at the provided position, without forcing a chunk load. + p 1 chunkX + p 2 chunkZ + m ()Ljava/lang/String; gatherStats e method_12122 + c @return A human-readable string representing data about this chunk source. + m ()I getLoadedChunksCount j method_14151 + m ()Lnet/minecraft/world/level/lighting/LevelLightEngine; getLightEngine p method_12130 + m ()V +c net/minecraft/world/level/chunk/DataLayer dvd net/minecraft/class_2804 + c A representation of a 16x16x16 cube of nibbles (half-bytes). + f I LAYER_COUNT a field_34052 + f I LAYER_SIZE b field_31404 + f I SIZE c field_31403 + f [B data d field_12783 + f I NIBBLE_SIZE e field_31405 + f I defaultValue f field_44635 + m ()[B getData a method_12137 + m (I)V fill a method_51527 + p 1 defaultValue + m (II)V set a method_12142 + p 1 index + p 2 value + m (III)I get a method_12139 + c Note all coordinates must be in the range [0, 16), they are not checked, and will either silently overrun the array or throw an exception.\n@return The value of this data layer at the provided position. + p 1 x + p 2 y + p 3 z + m (IIII)V set a method_12145 + c Sets the value of this data layer at the provided position.\nNote all coordinates must be in the range [0, 16), they are not checked, and will either silently overrun the array or throw an exception. + p 1 x + p 2 y + p 3 z + p 4 value + m ()Lnet/minecraft/world/level/chunk/DataLayer; copy b method_12144 + m (I)Ljava/lang/String; layerToString b method_35320 + p 1 unused + m (III)I getIndex b method_12140 + p 0 x + p 1 y + p 2 z + m ()Z isDefinitelyHomogenous c method_51380 + m (I)Z isDefinitelyFilledWith c method_51379 + p 1 value + m ()Z isEmpty d method_12146 + m (I)I get d method_12141 + p 1 index + m (I)I getNibbleIndex e method_37459 + p 0 index + m (I)I getByteIndex f method_12138 + p 0 index + m (I)B packFilled g method_51381 + p 0 value + m ()V + m (I)V + p 1 size + m ([B)V + p 1 data +c net/minecraft/world/level/chunk/EmptyLevelChunk dve net/minecraft/class_2812 + f Lnet/minecraft/core/Holder; biome n field_36407 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/Holder;)V + p 1 level + p 2 pos + p 3 biome +c net/minecraft/world/level/chunk/GlobalPalette dvf net/minecraft/class_2816 + f Lnet/minecraft/core/IdMap; registry a field_12828 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38286 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m (Lnet/minecraft/core/IdMap;)V + p 1 registry +c net/minecraft/world/level/chunk/HashMapPalette dvg net/minecraft/class_2814 + f Lnet/minecraft/core/IdMap; registry a field_12821 + f Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap; values b field_12824 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_12825 + f I bits d field_12822 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38287 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m ()Ljava/util/List; getEntries d method_38288 + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;)V + p 1 registry + p 2 bits + p 3 resizeHandler + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Lnet/minecraft/util/CrudeIncrementalIntIdentityHashBiMap;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values +c net/minecraft/world/level/chunk/ImposterProtoChunk dvh net/minecraft/class_2821 + c During world generation, adjacent chunks may be fully generated (and thus be level chunks), but are often needed in proto chunk form. This wraps a completely generated chunk as a proto chunk. + f Lnet/minecraft/world/level/chunk/LevelChunk; wrapped n field_12866 + f Z allowWrites o field_34554 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getWrapped C method_12240 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; fixType c method_12239 + p 1 type + m (Lnet/minecraft/world/level/chunk/LevelChunk;Z)V + p 1 wrapped + p 2 allowWrites +c net/minecraft/world/level/chunk/LevelChunk dvi net/minecraft/class_2818 + f Lorg/slf4j/Logger; LOGGER n field_12839 + f Lnet/minecraft/world/level/block/entity/TickingBlockEntity; NULL_TICKER o field_27221 + f Ljava/util/Map; tickersInLevel p field_27222 + f Z loaded q field_12855 + f Lnet/minecraft/world/level/Level; level r field_12858 + f Ljava/util/function/Supplier; fullStatus s field_12856 + f Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor; postLoad t field_12850 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; gameEventListenerRegistrySections u field_28129 + f Lnet/minecraft/world/ticks/LevelChunkTicks; blockTicks v field_35471 + f Lnet/minecraft/world/ticks/LevelChunkTicks; fluidTicks w field_35472 + m ()Z isEmpty C method_12223 + m ()Lnet/minecraft/server/level/FullChunkStatus; getFullStatus D method_12225 + m ()V runPostLoad E method_12206 + m ()Lnet/minecraft/world/level/Level; getLevel F method_12200 + m ()Ljava/util/Map; getBlockEntities G method_12214 + m ()V postProcessGeneration H method_12221 + m ()V clearAllBlockEntities I method_38289 + m ()V registerAllBlockEntitiesAfterLevelLoad J method_31713 + m ()Z isInLevel K method_31715 + m (III)Lnet/minecraft/world/level/material/FluidState; getFluidState a method_12234 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/server/level/ServerLevel;)V registerTickContainerInLevel a method_39305 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;II)Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; method_32917 a method_32917 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/server/level/ServerLevel;)V removeGameEventListener a method_32918 + p 1 blockEntity + p 2 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)Lnet/minecraft/world/level/block/entity/TickingBlockEntity; createTicker a method_31718 + p 1 blockEntity + p 2 ticker + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper;)Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper; method_31719 a method_31719 + m (Lnet/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper;)V method_38290 a method_38290 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/nbt/CompoundTag;)V method_31716 a method_31716 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_12201 + p 1 pos + p 2 creationType + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/block/entity/BlockEntity; promotePendingBlockEntity a method_12204 + p 1 pos + p 2 tag + m (Lnet/minecraft/network/FriendlyByteBuf;)V replaceBiomes a method_49525 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Consumer;)V replaceWithPacketData a method_12224 + p 1 buffer + p 2 tag + p 3 outputTagConsumer + m (III)Ljava/lang/String; method_12202 b method_12202 + m (Lnet/minecraft/server/level/ServerLevel;)V unregisterTickContainerFromLevel b method_39306 + p 1 level + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V addAndRegisterBlockEntity b method_12216 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/server/level/ServerLevel;)V addGameEventListener b method_32919 + p 1 blockEntity + p 2 level + m (Ljava/util/function/Supplier;)V setFullStatus b method_12207 + p 1 fullStatus + m (III)Ljava/lang/String; method_12227 c method_12227 + m (J)V unpackTicks c method_20530 + p 1 pos + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V updateBlockEntityTicker c method_31723 + p 1 blockEntity + m (Z)V setLoaded c method_12226 + p 1 loaded + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)V method_32920 d method_32920 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; createBlockEntity g method_12208 + p 1 pos + m (I)V removeGameEventListenerRegistry h method_51382 + p 1 sectionY + m (Lnet/minecraft/core/BlockPos;)Z isTicking h method_31724 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)V removeBlockEntityTicker k method_31725 + p 1 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;)V + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/LevelChunkTicks;J[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 level + p 2 pos + p 3 data + p 4 blockTicks + p 5 fluidTicks + p 6 inhabitedTime + p 8 sections + p 9 postLoad + p 10 blendingData + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor;)V + p 1 level + p 2 chunk + p 3 postLoad + m ()V +c net/minecraft/world/level/chunk/LevelChunk$1 dvi$1 net/minecraft/class_2818$1 + m ()V +c net/minecraft/world/level/chunk/LevelChunk$BoundTickingBlockEntity dvi$a net/minecraft/class_2818$class_5563 + f Lnet/minecraft/world/level/chunk/LevelChunk; field_27223 a field_27223 + f Lnet/minecraft/world/level/block/entity/BlockEntity; blockEntity b field_27224 + f Lnet/minecraft/world/level/block/entity/BlockEntityTicker; ticker c field_27225 + f Z loggedInvalidBlockState d field_27226 + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntityTicker;)V + p 2 blockEntity + p 3 ticker +c net/minecraft/world/level/chunk/LevelChunk$EntityCreationType dvi$b net/minecraft/class_2818$class_2819 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; IMMEDIATE a field_12860 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; QUEUED b field_12861 + f Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; CHECK c field_12859 + f [Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; $VALUES d field_12862 + m ()[Lnet/minecraft/world/level/chunk/LevelChunk$EntityCreationType; $values a method_36742 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor dvi$c net/minecraft/class_2818$class_6829 +c net/minecraft/world/level/chunk/LevelChunk$RebindableTickingBlockEntityWrapper dvi$d net/minecraft/class_2818$class_5564 + f Lnet/minecraft/world/level/block/entity/TickingBlockEntity; ticker a field_27228 + m (Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V rebind a method_31727 + p 1 ticker + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/block/entity/TickingBlockEntity;)V + p 2 ticker +c net/minecraft/world/level/chunk/LevelChunkSection dvj net/minecraft/class_2826 + f I SECTION_WIDTH a field_31406 + f I SECTION_HEIGHT b field_31407 + f I SECTION_SIZE c field_31408 + f I BIOME_CONTAINER_BITS d field_34555 + f S nonEmptyBlockCount e field_12877 + f S tickingBlockCount f field_12882 + f S tickingFluidCount g field_12881 + f Lnet/minecraft/world/level/chunk/PalettedContainer; states h field_12878 + f Lnet/minecraft/world/level/chunk/PalettedContainerRO; biomes i field_34556 + m ()V acquire a method_16676 + m (III)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_12254 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_16675 + p 1 x + p 2 y + p 3 z + p 4 state + m (IIILnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/world/level/block/state/BlockState; setBlockState a method_12256 + p 1 x + p 2 y + p 3 z + p 4 state + p 5 useLocks + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/biome/Climate$Sampler;III)V fillBiomesFromNoise a method_38291 + p 1 biomeResolver + p 2 climateSampler + p 3 x + p 4 y + p 5 z + m (Ljava/util/function/Predicate;)Z maybeHas a method_19523 + c @return {@code true} if this section has any states matching the given predicate. As the internal representation uses a {@link net.minecraft.world.level.chunk.Palette}, this is more efficient than looping through every position in the section, or indeed the chunk. + p 1 predicate + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12258 + p 1 buffer + m ()V release b method_16677 + m (III)Lnet/minecraft/world/level/material/FluidState; getFluidState b method_12255 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V readBiomes b method_49526 + p 1 buffer + m ()Z hasOnlyAir c method_38292 + c @return {@code true} if this section consists only of air-like blocks. + m (III)Lnet/minecraft/core/Holder; getNoiseBiome c method_38293 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/network/FriendlyByteBuf;)V write c method_12257 + p 1 buffer + m ()Z isRandomlyTicking d method_12262 + m ()Z isRandomlyTickingBlocks e method_12263 + c @return {@code true} if this section has any blocks that require random ticks. + m ()Z isRandomlyTickingFluids f method_12264 + c @return {@code true} if this section has any fluids that require random ticks. + m ()V recalcBlockCounts g method_12253 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; getStates h method_12265 + m ()Lnet/minecraft/world/level/chunk/PalettedContainerRO; getBiomes i method_38294 + m ()I getSerializedSize j method_12260 + m (Lnet/minecraft/world/level/chunk/PalettedContainer;Lnet/minecraft/world/level/chunk/PalettedContainerRO;)V + p 1 states + p 2 biomes + m (Lnet/minecraft/core/Registry;)V + p 1 biomeRegistry +c net/minecraft/world/level/chunk/LevelChunkSection$1BlockCounter dvj$a net/minecraft/class_2826$class_6869 + f I nonEmptyBlockCount a field_36408 + f I tickingBlockCount b field_36409 + f I tickingFluidCount c field_36410 + m (Lnet/minecraft/world/level/block/state/BlockState;I)V accept a method_40155 + m (Lnet/minecraft/world/level/chunk/LevelChunkSection;)V +c net/minecraft/world/level/chunk/LightChunk dvk net/minecraft/class_8527 + m ()Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; getSkyLightSources B method_12018 + m (Ljava/util/function/BiConsumer;)V findBlockLightSources a method_51524 + p 1 output +c net/minecraft/world/level/chunk/LightChunkGetter dvl net/minecraft/class_2823 + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)V onLightUpdate a method_12247 + p 1 layer + p 2 pos + m (II)Lnet/minecraft/world/level/chunk/LightChunk; getChunkForLighting c method_12246 + p 1 chunkX + p 2 chunkZ + m ()Lnet/minecraft/world/level/BlockGetter; getLevel q method_16399 +c net/minecraft/world/level/chunk/LinearPalette dvm net/minecraft/class_2834 + f Lnet/minecraft/core/IdMap; registry a field_12900 + f [Ljava/lang/Object; values b field_12904 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_12905 + f I bits d field_12903 + f I size e field_12901 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38295 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 values + m (Lnet/minecraft/core/IdMap;ILnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 bits + p 3 resizeHandler + p 4 values + m (Lnet/minecraft/core/IdMap;[Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PaletteResize;II)V + p 1 registry + p 2 values + p 3 resizeHandler + p 4 bits + p 5 size +c net/minecraft/world/level/chunk/MissingPaletteEntryException dvn net/minecraft/class_6558 + m (I)V + p 1 index +c net/minecraft/world/level/chunk/Palette dvo net/minecraft/class_2837 + m ()I getSerializedSize a method_12290 + m (I)Ljava/lang/Object; valueFor a method_12288 + p 1 id + m (Ljava/lang/Object;)I idFor a method_12291 + p 1 state + m (Ljava/util/function/Predicate;)Z maybeHas a method_19525 + p 1 filter + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12289 + p 1 buffer + m ()I getSize b method_12197 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_12287 + p 1 buffer + m ()Lnet/minecraft/world/level/chunk/Palette; copy c method_39956 +c net/minecraft/world/level/chunk/Palette$Factory dvo$a net/minecraft/class_2837$class_6559 +c net/minecraft/world/level/chunk/PaletteResize dvp net/minecraft/class_2835 +c net/minecraft/world/level/chunk/PalettedContainer dvq net/minecraft/class_2841 + f I MIN_PALETTE_BITS a field_34557 + f Lnet/minecraft/world/level/chunk/PaletteResize; dummyPaletteResize b field_34558 + f Lnet/minecraft/core/IdMap; registry c field_34559 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Data; data d field_34560 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; strategy e field_34561 + f Lnet/minecraft/util/ThreadingDetector; threadingDetector f field_36300 + m ()V acquire a method_12334 + m (I)Ljava/lang/Object; get a method_12331 + p 1 index + m (IIILjava/lang/Object;)Ljava/lang/Object; getAndSet a method_12328 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)Ljava/lang/Object; getAndSet a method_12336 + p 1 index + p 2 state + m (Lnet/minecraft/util/SimpleBitStorage$InitializationException;)Ljava/lang/String; method_49527 a method_49527 + m (Lcom/mojang/serialization/Codec;Ljava/lang/Object;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38296 a method_38296 + m (Lnet/minecraft/world/level/chunk/HashMapPalette;I)I method_44340 a method_44340 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$CountConsumer;Lit/unimi/dsi/fastutil/ints/Int2IntMap$Entry;)V method_21733 a method_21733 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$Data;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Data; createOrReuseData a method_38297 + p 1 data + p 2 id + m (Lnet/minecraft/world/level/chunk/PalettedContainer;)Lnet/minecraft/world/level/chunk/PalettedContainerRO; method_44341 a method_44341 + m (Lnet/minecraft/world/level/chunk/PalettedContainerRO$Unpacker;Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; method_44342 a method_44342 + m (Lit/unimi/dsi/fastutil/ints/Int2IntOpenHashMap;I)V method_21734 a method_21734 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/chunk/Palette;I)V method_39794 a method_39794 + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; codecRW a method_44343 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PalettedContainerRO$Unpacker;)Lcom/mojang/serialization/Codec; codec a method_38298 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + p 4 unpacker + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/Palette;I)I method_44344 a method_44344 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; unpack a method_44346 + p 0 registry + p 1 strategy + p 2 packedData + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO;)Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData; method_38302 a method_38302 + m (Lnet/minecraft/network/FriendlyByteBuf;)V read a method_12326 + p 1 buffer + m ([ILjava/util/function/IntUnaryOperator;)V swapPalette a method_39894 + p 0 bits + p 1 operator + m ()V release b method_12335 + m (IIILjava/lang/Object;)Ljava/lang/Object; getAndSetUnchecked b method_16678 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)V set b method_12322 + p 1 index + p 2 state + m (Lnet/minecraft/core/IdMap;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Ljava/lang/Object;)Lcom/mojang/serialization/Codec; codecRO b method_44347 + p 0 registry + p 1 codec + p 2 strategy + p 3 value + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData;)Lcom/mojang/serialization/DataResult; method_44348 b method_44348 + m (IIILjava/lang/Object;)V set c method_35321 + p 1 x + p 2 y + p 3 z + p 4 state + m (ILjava/lang/Object;)I method_44349 c method_44349 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; copy d method_39957 + m (ILjava/lang/Object;)I method_12333 d method_12333 + m ()Ljava/lang/String; method_49528 f method_49528 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration;Lnet/minecraft/util/BitStorage;Ljava/util/List;)V + p 1 registry + p 2 strategy + p 3 configuration + p 4 storage + p 5 values + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;Lnet/minecraft/world/level/chunk/PalettedContainer$Data;)V + p 1 registry + p 2 strategy + p 3 data + m (Lnet/minecraft/core/IdMap;Ljava/lang/Object;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;)V + p 1 registry + p 2 palette + p 3 strategy +c net/minecraft/world/level/chunk/PalettedContainer$Configuration dvq$a net/minecraft/class_2841$class_6560 + f Lnet/minecraft/world/level/chunk/Palette$Factory; factory a comp_72 + f I bits b comp_73 + m ()Lnet/minecraft/world/level/chunk/Palette$Factory; factory a comp_72 + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Data; createData a method_38305 + p 1 registry + p 2 paletteResize + p 3 size + m ()I bits b comp_73 + m (Lnet/minecraft/world/level/chunk/Palette$Factory;I)V +c net/minecraft/world/level/chunk/PalettedContainer$CountConsumer dvq$b net/minecraft/class_2841$class_4464 +c net/minecraft/world/level/chunk/PalettedContainer$Data dvq$c net/minecraft/class_2841$class_6561 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; configuration a comp_74 + f Lnet/minecraft/util/BitStorage; storage b comp_118 + f Lnet/minecraft/world/level/chunk/Palette; palette c comp_119 + m ()I getSerializedSize a method_38306 + m (Lnet/minecraft/world/level/chunk/Palette;Lnet/minecraft/util/BitStorage;)V copyFrom a method_38308 + p 1 palette + p 2 bitStorage + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_38309 + p 1 buffer + m ()Lnet/minecraft/world/level/chunk/PalettedContainer$Data; copy b method_44338 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; configuration c comp_74 + m ()Lnet/minecraft/util/BitStorage; storage d comp_118 + m ()Lnet/minecraft/world/level/chunk/Palette; palette e comp_119 + m (Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration;Lnet/minecraft/util/BitStorage;Lnet/minecraft/world/level/chunk/Palette;)V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy dvq$d net/minecraft/class_2841$class_6563 + f Lnet/minecraft/world/level/chunk/Palette$Factory; SINGLE_VALUE_PALETTE_FACTORY a field_34566 + f Lnet/minecraft/world/level/chunk/Palette$Factory; LINEAR_PALETTE_FACTORY b field_34567 + f Lnet/minecraft/world/level/chunk/Palette$Factory; HASHMAP_PALETTE_FACTORY c field_34568 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; SECTION_STATES d field_34569 + f Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy; SECTION_BIOMES e field_34570 + f Lnet/minecraft/world/level/chunk/Palette$Factory; GLOBAL_PALETTE_FACTORY f field_34571 + f I sizeBits g field_34572 + m ()I size a method_38312 + m (III)I getIndex a method_38313 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/IdMap;I)Lnet/minecraft/world/level/chunk/PalettedContainer$Configuration; getConfiguration a method_38314 + p 1 registry + p 2 size + m (Lnet/minecraft/core/IdMap;I)I calculateBitsForSerialization b method_38315 + p 1 registry + p 2 size + m (I)V + p 1 sizeBits + m ()V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy$1 dvq$d$1 net/minecraft/class_2841$class_6563$1 + m (I)V +c net/minecraft/world/level/chunk/PalettedContainer$Strategy$2 dvq$d$2 net/minecraft/class_2841$class_6563$2 + m (I)V +c net/minecraft/world/level/chunk/PalettedContainerRO dvr net/minecraft/class_7522 + m (III)Ljava/lang/Object; get a method_12321 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/PalettedContainer$CountConsumer;)V count a method_21732 + p 1 countConsumer + m (Ljava/util/function/Consumer;)V getAll a method_39793 + p 1 consumer + m (Ljava/util/function/Predicate;)Z maybeHas a method_19526 + p 1 filter + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PalettedContainer$Strategy;)Lnet/minecraft/world/level/chunk/PalettedContainerRO$PackedData; pack a method_44345 + p 1 registry + p 2 strategy + m (Lnet/minecraft/network/FriendlyByteBuf;)V write b method_12325 + p 1 buffer + m ()I getSerializedSize c method_12327 + m ()Lnet/minecraft/world/level/chunk/PalettedContainer; recreate e method_44350 +c net/minecraft/world/level/chunk/PalettedContainerRO$PackedData dvr$a net/minecraft/class_7522$class_6562 + f Ljava/util/List; paletteEntries a comp_75 + f Ljava/util/Optional; storage b comp_76 + m ()Ljava/util/List; paletteEntries a comp_75 + m ()Ljava/util/Optional; storage b comp_76 + m (Ljava/util/List;Ljava/util/Optional;)V +c net/minecraft/world/level/chunk/PalettedContainerRO$Unpacker dvr$b net/minecraft/class_7522$class_7523 +c net/minecraft/world/level/chunk/ProtoChunk dvs net/minecraft/class_2839 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine n field_17105 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status o field_12918 + f Ljava/util/List; entities p field_12929 + f Ljava/util/Map; carvingMasks q field_12926 + f Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; belowZeroRetrogen r field_35473 + f Lnet/minecraft/world/ticks/ProtoChunkTicks; blockTicks s field_35474 + f Lnet/minecraft/world/ticks/ProtoChunkTicks; fluidTicks t field_35475 + m ()Ljava/util/Map; getBlockEntities D method_12309 + m ()Ljava/util/List; getEntities E method_12295 + m ()Ljava/util/Map; getBlockEntityNbts F method_12316 + m ()Lnet/minecraft/world/ticks/LevelChunkTicks; unpackBlockTicks G method_39307 + m ()Lnet/minecraft/world/ticks/LevelChunkTicks; unpackFluidTicks H method_39308 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V setPersistedStatus a method_12308 + p 1 status + m (Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen;)V setBelowZeroRetrogen a method_39309 + p 1 belowZeroRetrogen + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getCarvingMask a method_12025 + p 1 step + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;Lnet/minecraft/world/level/chunk/CarvingMask;)V setCarvingMask a method_12307 + p 1 step + p 2 carvingMask + m (Lnet/minecraft/world/level/lighting/LevelLightEngine;)V setLightEngine a method_17032 + p 1 lightEngine + m (Lnet/minecraft/world/ticks/ProtoChunkTicks;)Lnet/minecraft/world/ticks/LevelChunkTicks; unpackTicks a method_39310 + p 0 ticks + m (SILnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; unpackOffsetCoordinates a method_12314 + p 0 packedPos + p 1 yOffset + p 2 chunkPos + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getOrCreateCarvingMask b method_28510 + p 1 step + m (Lnet/minecraft/nbt/CompoundTag;)V addEntity b method_12302 + p 1 tag + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; method_12297 c method_12297 + m (Lnet/minecraft/core/BlockPos;)S packOffsetCoordinates g method_12300 + p 0 pos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 levelHeightAccessor + p 4 biomeRegistry + p 5 blendingData + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/UpgradeData;[Lnet/minecraft/world/level/chunk/LevelChunkSection;Lnet/minecraft/world/ticks/ProtoChunkTicks;Lnet/minecraft/world/ticks/ProtoChunkTicks;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V + p 1 chunkPos + p 2 upgradeData + p 3 sections + p 4 blockTicks + p 5 liquidTicks + p 6 levelHeightAccessor + p 7 biomeRegistry + p 8 blendingData +c net/minecraft/world/level/chunk/SingleValuePalette dvt net/minecraft/class_6564 + f Lnet/minecraft/core/IdMap; registry a field_34573 + f Ljava/lang/Object; value b field_34574 + f Lnet/minecraft/world/level/chunk/PaletteResize; resizeHandler c field_34575 + m (ILnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)Lnet/minecraft/world/level/chunk/Palette; create a method_38316 + p 0 bits + p 1 registry + p 2 resizeHandler + p 3 value + m (Lnet/minecraft/core/IdMap;Lnet/minecraft/world/level/chunk/PaletteResize;Ljava/util/List;)V + p 1 registry + p 2 resizeHandler + p 3 value +c net/minecraft/world/level/chunk/StructureAccess dvu net/minecraft/class_2810 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; getStartForStructure a method_12181 + p 1 structure + m (Lnet/minecraft/world/level/levelgen/structure/Structure;J)V addReferenceForStructure a method_12182 + p 1 structure + p 2 reference + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V setStartForStructure a method_12184 + p 1 structure + p 2 structureStart + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/LongSet; getReferencesForStructure b method_12180 + p 1 structure + m (Ljava/util/Map;)V setAllReferences b method_12183 + p 1 structureReferencesMap + m ()Ljava/util/Map; getAllReferences h method_12179 +c net/minecraft/world/level/chunk/UpgradeData dvv net/minecraft/class_2843 + f Lnet/minecraft/world/level/chunk/UpgradeData; EMPTY a field_12950 + f Lorg/slf4j/Logger; LOGGER b field_12956 + f Ljava/lang/String; TAG_INDICES c field_31412 + f [Lnet/minecraft/core/Direction8; DIRECTIONS d field_12952 + f Ljava/util/EnumSet; sides e field_12951 + f Ljava/util/List; neighborBlockTicks f field_36538 + f Ljava/util/List; neighborFluidTicks g field_36539 + f [[I index h field_12955 + f Ljava/util/Map; MAP i field_12953 + f Ljava/util/Set; CHUNKY_FIXERS j field_12954 + m ()Z isEmpty a method_12349 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixer;)V method_12353 a method_12353 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/ticks/SavedTick;)V method_40452 a method_40452 + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_40453 a method_40453 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateState a method_12351 + p 0 state + p 1 direction + p 2 level + p 3 pos + p 4 offsetPos + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V upgrade a method_12356 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/core/Direction8;)V upgradeSides a method_12352 + p 0 chunk + p 1 side + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_40454 a method_40454 + m (Ljava/lang/String;)Ljava/util/Optional; method_40455 a method_40455 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Ljava/util/function/Function;Ljava/util/List;)V loadTicks a method_40456 + p 0 tag + p 1 identifier + p 2 valueFunction + p 3 ticks + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/ticks/SavedTick;)V method_40457 a method_40457 + m ()Lnet/minecraft/nbt/CompoundTag; write b method_12350 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/ticks/SavedTick;)V method_40458 b method_40458 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V upgradeInside b method_12348 + p 1 chunk + m (Ljava/lang/String;)Ljava/util/Optional; method_40459 b method_40459 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/ticks/SavedTick;)V method_40460 b method_40460 + m ()Ljava/util/Optional; method_40461 c method_40461 + m ()Ljava/util/Optional; method_40462 d method_40462 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 level + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 tag + p 2 level + m ()V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixer dvv$a net/minecraft/class_2843$class_2844 + m (Lnet/minecraft/world/level/LevelAccessor;)V processChunk a method_12357 + p 1 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; updateShape a method_12358 + p 1 state + p 2 direction + p 3 offsetState + p 4 level + p 5 pos + p 6 offsetPos +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers dvv$b net/minecraft/class_2843$class_2845 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; BLACKLIST a field_12957 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; DEFAULT b field_12962 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; CHEST c field_12960 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; LEAVES d field_12963 + f Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; STEM_BLOCK e field_12958 + f [Lnet/minecraft/core/Direction; DIRECTIONS f field_12959 + f [Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; $VALUES g field_12961 + m ()[Lnet/minecraft/world/level/chunk/UpgradeData$BlockFixers; $values a method_36743 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V + p 3 blocks + m (Ljava/lang/String;IZ[Lnet/minecraft/world/level/block/Block;)V + p 3 chunkyFixer + p 4 blocks + m ()V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$1 dvv$b$1 net/minecraft/class_2843$class_2845$1 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$2 dvv$b$2 net/minecraft/class_2843$class_2845$2 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$3 dvv$b$3 net/minecraft/class_2843$class_2845$3 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$4 dvv$b$4 net/minecraft/class_2843$class_2845$4 + f Ljava/lang/ThreadLocal; queue g field_12964 + m ()Ljava/util/List; method_12359 a method_12359 + m (Ljava/lang/String;IZ[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/UpgradeData$BlockFixers$5 dvv$b$5 net/minecraft/class_2843$class_2845$5 + m (Ljava/lang/String;I[Lnet/minecraft/world/level/block/Block;)V +c net/minecraft/world/level/chunk/package-info dvw net/minecraft/class_6099 +c net/minecraft/world/level/chunk/status/ChunkDependencies dvx net/minecraft/class_9767 + f Lcom/google/common/collect/ImmutableList; dependencyByRadius a field_51898 + f [I radiusByDependency b field_51899 + m ()Lcom/google/common/collect/ImmutableList; asList a method_60513 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStatus; get a method_60514 + p 1 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getRadiusOf a method_60515 + p 1 status + m ()I size b method_60516 + m ()I getRadius c method_60517 + m (Lcom/google/common/collect/ImmutableList;)V + p 1 dependencyByRadius +c net/minecraft/world/level/chunk/status/ChunkPyramid dvy net/minecraft/class_9768 + f Lnet/minecraft/world/level/chunk/status/ChunkPyramid; GENERATION_PYRAMID a field_51900 + f Lnet/minecraft/world/level/chunk/status/ChunkPyramid; LOADING_PYRAMID b field_51901 + f Lcom/google/common/collect/ImmutableList; steps c comp_2802 + m ()Lcom/google/common/collect/ImmutableList; steps a comp_2802 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStep; getStepTo a method_60518 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60519 a method_60519 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60520 b method_60520 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60521 c method_60521 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60522 d method_60522 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60523 e method_60523 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60524 f method_60524 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60525 g method_60525 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60526 h method_60526 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60527 i method_60527 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60528 j method_60528 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60529 k method_60529 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60530 l method_60530 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60531 m method_60531 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60532 n method_60532 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60533 o method_60533 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60534 p method_60534 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60535 q method_60535 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60536 r method_60536 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60537 s method_60537 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60538 t method_60538 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60539 u method_60539 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60540 v method_60540 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60541 w method_60541 + m (Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; method_60542 x method_60542 + m (Lcom/google/common/collect/ImmutableList;)V + m ()V +c net/minecraft/world/level/chunk/status/ChunkPyramid$Builder dvy$a net/minecraft/class_9768$class_9769 + f Ljava/util/List; steps a field_51902 + m ()Lnet/minecraft/world/level/chunk/status/ChunkPyramid; build a method_60543 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/function/UnaryOperator;)Lnet/minecraft/world/level/chunk/status/ChunkPyramid$Builder; step a method_60544 + p 1 status + p 2 task + m ()V +c net/minecraft/world/level/chunk/status/ChunkStatus dvz net/minecraft/class_2806 + f I MAX_STRUCTURE_DISTANCE a field_35470 + f Ljava/util/EnumSet; FINAL_HEIGHTMAPS b field_51903 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; EMPTY c field_12798 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; STRUCTURE_STARTS d field_16423 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; STRUCTURE_REFERENCES e field_16422 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; BIOMES f field_12794 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; NOISE g field_12804 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; SURFACE h field_12796 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; CARVERS i field_12801 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; FEATURES j field_12795 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; INITIALIZE_LIGHT k field_44633 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; LIGHT l field_12805 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; SPAWN m field_12786 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; FULL n field_12803 + f Ljava/util/EnumSet; WORLDGEN_HEIGHTMAPS o field_51904 + f I index p field_16646 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; parent q field_16647 + f Lnet/minecraft/world/level/chunk/status/ChunkType; chunkType r field_12787 + f Ljava/util/EnumSet; heightmapsAfter s field_12793 + m ()Ljava/util/List; getStatusList a method_16558 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isOrAfter a method_12165 + p 1 chunkStatus + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; max a method_60545 + p 0 first + p 1 second + m (Ljava/lang/String;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; byName a method_12168 + p 0 name + m (Ljava/lang/String;Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/EnumSet;Lnet/minecraft/world/level/chunk/status/ChunkType;)Lnet/minecraft/world/level/chunk/status/ChunkStatus; register a method_60546 + p 0 name + p 1 parent + p 2 heightmapsAfter + p 3 chunkType + m ()I getIndex b method_16559 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isAfter b method_60547 + p 1 chunkStatus + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; getParent c method_16560 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isOrBefore c method_60548 + p 1 chunkStatus + m ()Lnet/minecraft/world/level/chunk/status/ChunkType; getChunkType d method_12164 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Z isBefore d method_60549 + p 1 chunkStatus + m ()Ljava/util/EnumSet; heightmapsAfter e method_12160 + m ()Ljava/lang/String; getName f method_60550 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/EnumSet;Lnet/minecraft/world/level/chunk/status/ChunkType;)V + p 1 parent + p 2 heightmapsAfter + p 3 chunkType + m ()V +c net/minecraft/world/level/chunk/status/ChunkStatusTask dwa net/minecraft/class_2807 +c net/minecraft/world/level/chunk/status/ChunkStatusTasks dwb net/minecraft/class_9310 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_60551 a method_60551 + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/List;)V postLoadProtoChunk a method_60552 + p 0 level + p 1 entityTags + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Z isLighted a method_57595 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/server/level/GenerationChunkHolder;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_60553 a method_60553 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/GenerationChunkHolder;Ljava/lang/Runnable;)V method_60554 a method_60554 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; passThrough a method_57596 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_57599 b method_57599 + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateStructureStarts b method_57601 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; loadStructureStarts c method_57600 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateStructureReferences d method_57603 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateBiomes e method_57605 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateNoise f method_57607 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateSurface g method_57608 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateCarvers h method_57609 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateFeatures i method_57610 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; initializeLight j method_57594 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; light k method_60555 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; generateSpawn l method_57613 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/world/level/chunk/status/ChunkStep;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; full m method_60556 + p 0 worldGenContext + p 1 step + p 2 cache + p 3 chunk + m ()V +c net/minecraft/world/level/chunk/status/ChunkStep dwc net/minecraft/class_9770 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a comp_2803 + f Lnet/minecraft/world/level/chunk/status/ChunkDependencies; directDependencies b comp_2804 + f Lnet/minecraft/world/level/chunk/status/ChunkDependencies; accumulatedDependencies c comp_2805 + f I blockStateWriteRadius d comp_2806 + f Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e comp_2807 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a comp_2803 + m (Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_60557 a method_60557 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/util/profiling/jfr/callback/ProfiledDuration;)Lnet/minecraft/world/level/chunk/ChunkAccess; completeChunkGeneration a method_60558 + p 1 chunk + p 2 duration + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getAccumulatedRadiusOf a method_60559 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/WorldGenContext;Lnet/minecraft/util/StaticCache2D;Lnet/minecraft/world/level/chunk/ChunkAccess;)Ljava/util/concurrent/CompletableFuture; apply a method_60560 + p 1 worldGenContext + p 2 cache + p 3 chunk + m ()Lnet/minecraft/world/level/chunk/status/ChunkDependencies; directDependencies b comp_2804 + m ()Lnet/minecraft/world/level/chunk/status/ChunkDependencies; accumulatedDependencies c comp_2805 + m ()I blockStateWriteRadius d comp_2806 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e comp_2807 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkDependencies;Lnet/minecraft/world/level/chunk/status/ChunkDependencies;ILnet/minecraft/world/level/chunk/status/ChunkStatusTask;)V +c net/minecraft/world/level/chunk/status/ChunkStep$Builder dwc$a net/minecraft/class_9770$class_9771 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; status a field_51905 + f Lnet/minecraft/world/level/chunk/status/ChunkStep; parent b field_51906 + f [Lnet/minecraft/world/level/chunk/status/ChunkStatus; directDependenciesByRadius c field_51907 + f I blockStateWriteRadius d field_51908 + f Lnet/minecraft/world/level/chunk/status/ChunkStatusTask; task e field_51909 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStep; build a method_60561 + m (I)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; blockStateWriteRadius a method_60562 + p 1 blockStateWriteRadius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)I getRadiusOfParent a method_60563 + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;I)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; addRequirement a method_60564 + p 1 status + p 2 radius + m (Lnet/minecraft/world/level/chunk/status/ChunkStatusTask;)Lnet/minecraft/world/level/chunk/status/ChunkStep$Builder; setTask a method_60565 + p 1 task + m ()[Lnet/minecraft/world/level/chunk/status/ChunkStatus; buildAccumulatedDependencies b method_60566 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + p 1 status + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Lnet/minecraft/world/level/chunk/status/ChunkStep;)V + p 1 status + p 2 parent +c net/minecraft/world/level/chunk/status/ChunkType dwd net/minecraft/class_2808 + f Lnet/minecraft/world/level/chunk/status/ChunkType; PROTOCHUNK a field_12808 + f Lnet/minecraft/world/level/chunk/status/ChunkType; LEVELCHUNK b field_12807 + f [Lnet/minecraft/world/level/chunk/status/ChunkType; $VALUES c field_12806 + m ()[Lnet/minecraft/world/level/chunk/status/ChunkType; $values a method_36741 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/status/WorldGenContext dwe net/minecraft/class_9312 + f Lnet/minecraft/server/level/ServerLevel; level a comp_2434 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_2435 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureManager c comp_2436 + f Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine d comp_2437 + f Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailBox e comp_2808 + m ()Lnet/minecraft/server/level/ServerLevel; level a comp_2434 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_2435 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureManager c comp_2436 + m ()Lnet/minecraft/server/level/ThreadedLevelLightEngine; lightEngine d comp_2437 + m ()Lnet/minecraft/util/thread/ProcessorHandle; mainThreadMailBox e comp_2808 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/server/level/ThreadedLevelLightEngine;Lnet/minecraft/util/thread/ProcessorHandle;)V +c net/minecraft/world/level/chunk/status/package-info dwf net/minecraft/class_9313 +c net/minecraft/world/level/chunk/storage/ChunkIOErrorReporter dwg net/minecraft/class_9820 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/ReportedException; createMisplacedChunkReport a method_60997 + p 0 pos + p 1 expectedPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)V reportMisplacedChunk a method_60998 + p 1 pos + p 2 expectedPos + p 3 regionStorageInfo + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;)V reportChunkLoadFailure a method_57821 + p 1 throwable + p 2 regionStorageInfo + p 3 chunkPos + m (Ljava/lang/Throwable;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;)V reportChunkSaveFailure b method_57822 + p 1 throwable + p 2 regionStorageInfo + p 3 chunkPos +c net/minecraft/world/level/chunk/storage/ChunkScanAccess dwh net/minecraft/class_6830 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)Ljava/util/concurrent/CompletableFuture; scanChunk a method_39795 + p 1 chunkPos + p 2 visitor +c net/minecraft/world/level/chunk/storage/ChunkSerializer dwi net/minecraft/class_2852 + f Ljava/lang/String; X_POS_TAG a field_37659 + f Ljava/lang/String; Z_POS_TAG b field_37660 + f Ljava/lang/String; HEIGHTMAPS_TAG c field_37661 + f Ljava/lang/String; IS_LIGHT_ON_TAG d field_37662 + f Ljava/lang/String; SECTIONS_TAG e field_37663 + f Ljava/lang/String; BLOCK_LIGHT_TAG f field_37664 + f Ljava/lang/String; SKY_LIGHT_TAG g field_37665 + f Lcom/mojang/serialization/Codec; BLOCK_STATE_CODEC h field_34576 + f Lorg/slf4j/Logger; LOGGER i field_13001 + f Ljava/lang/String; TAG_UPGRADE_DATA j field_31413 + f Ljava/lang/String; BLOCK_TICKS_TAG k field_35476 + f Ljava/lang/String; FLUID_TICKS_TAG l field_35477 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/ai/village/poi/PoiManager;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/ProtoChunk; read a method_12395 + p 0 level + p 1 poiManager + p 2 regionStorageInfo + p 3 pos + p 4 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/nbt/CompoundTag; write a method_12410 + p 0 level + p 1 chunk + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/LevelChunk$PostLoadProcessor; postLoadChunk a method_12386 + p 0 level + p 1 tag + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/chunk/ChunkAccess$TicksToSave;)V saveTicks a method_39311 + p 0 level + p 1 tag + p 2 ticksToSave + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V logErrors a method_39035 + p 0 chunkPos + p 1 chunkSectionY + p 2 errorMessage + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/ResourceLocation;J)Z method_24029 a method_24029 + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_39312 a method_39312 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/world/level/ChunkPos;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/nbt/CompoundTag; packStructureData a method_12385 + p 0 context + p 1 pos + p 2 structureMap + p 3 referenceMap + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;J)Ljava/util/Map; unpackStructureStart a method_12392 + p 0 context + p 1 tag + p 2 seed + m (Lnet/minecraft/world/level/material/Fluid;)Ljava/lang/String; method_39313 a method_39313 + m (Ljava/lang/String;)Ljava/util/Optional; method_39314 a method_39314 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/Codec; makeBiomeCodec a method_39036 + p 0 biomeRegistry + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Map; unpackStructureReferences a method_12387 + p 0 registryAccess + p 1 pos + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/chunk/status/ChunkType; getChunkTypeFromTag a method_12377 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)Lnet/minecraft/nbt/ListTag; getListOfCompoundsOrNull a method_39796 + p 0 tag + p 1 key + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39315 a method_39315 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/level/chunk/LevelChunk;)V method_39797 a method_39797 + m ([Lit/unimi/dsi/fastutil/shorts/ShortList;)Lnet/minecraft/nbt/ListTag; packOffsets a method_12393 + p 0 list + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V method_39037 b method_39037 + m (Ljava/lang/String;)Ljava/util/Optional; method_39316 b method_39316 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_39539 b method_39539 + m (Lnet/minecraft/world/level/ChunkPos;ILjava/lang/String;)V method_39038 c method_39038 + m (Ljava/lang/String;)Ljava/util/Optional; method_39317 c method_39317 + m (Ljava/lang/String;)Ljava/util/Optional; method_39318 d method_39318 + m ()V + m ()V +c net/minecraft/world/level/chunk/storage/ChunkSerializer$ChunkReadException dwi$a net/minecraft/class_2852$class_9314 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/world/level/chunk/storage/ChunkStorage dwj net/minecraft/class_3977 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; worker a field_21494 + f Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; legacyStructureHandler b field_17654 + f I LAST_MONOLYTH_STRUCTURE_DATA_VERSION d field_36219 + f Lcom/mojang/datafixers/DataFixer; fixerUpper e field_17655 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Supplier;)Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; getLegacyStructureHandler a method_43411 + p 1 level + p 2 storage + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/function/Supplier;Lnet/minecraft/nbt/CompoundTag;Ljava/util/Optional;)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag a method_17907 + p 1 levelKey + p 2 storage + p 3 chunkData + p 4 chunkGeneratorKey + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; write a method_17910 + p 1 chunkPos + p 2 data + m (Lnet/minecraft/nbt/CompoundTag;)I getVersion a method_17908 + p 0 chunkData + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;)V method_39798 a method_39798 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceKey;Ljava/util/Optional;)V injectDatafixingContext a method_39799 + p 0 chunkData + p 1 levelKey + p 2 chunkGeneratorKey + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround b method_42328 + p 1 pos + p 2 radius + m (Lnet/minecraft/nbt/CompoundTag;)V removeDatafixingContext b method_60626 + p 0 tag + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; read d method_23696 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)V handleLegacyStructureIndex e method_56564 + p 1 chunkPos + m ()V flushWorker o method_23697 + m ()Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; chunkScanner p method_39800 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo q method_60999 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;Z)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync +c net/minecraft/world/level/chunk/storage/EntityStorage dwk net/minecraft/class_5565 + f Lorg/slf4j/Logger; LOGGER a field_27232 + f Ljava/lang/String; ENTITIES_TAG b field_31414 + f Ljava/lang/String; POSITION_TAG c field_31415 + f Lnet/minecraft/server/level/ServerLevel; level d field_27233 + f Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; simpleRegionStorage e field_48747 + f Lit/unimi/dsi/fastutil/longs/LongSet; emptyChunks f field_27235 + f Lnet/minecraft/util/thread/ProcessorMailbox; entityDeserializerQueue g field_34056 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Object; method_61000 a method_61000 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Optional;)Lnet/minecraft/world/level/entity/ChunkEntities; method_31731 a method_31731 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/ChunkPos;)V reportSaveFailureIfPresent a method_61001 + p 1 future + p 2 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/ChunkPos; readChunkPos a method_31736 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)V writeChunkPos a method_31733 + p 0 tag + p 1 pos + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/entity/Entity;)V method_31734 a method_31734 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/entity/ChunkEntities; emptyChunk b method_31735 + p 0 pos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Object; method_61002 b method_61002 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/world/level/ChunkPos;)V reportLoadFailureIfPresent b method_61003 + p 1 future + p 2 pos + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Lnet/minecraft/server/level/ServerLevel;Ljava/util/concurrent/Executor;)V + p 1 simpleRegionStorage + p 2 level + p 3 executor + m ()V +c net/minecraft/world/level/chunk/storage/IOWorker dwl net/minecraft/class_4698 + f Lorg/slf4j/Logger; LOGGER a field_21495 + f Ljava/util/concurrent/atomic/AtomicBoolean; shutdownRequested b field_21497 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox c field_24468 + f Lnet/minecraft/world/level/chunk/storage/RegionFileStorage; storage d field_21499 + f Ljava/util/Map; pendingWrites e field_21500 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; regionCacheForBlender f field_38240 + f I REGION_CACHE_SIZE g field_38241 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo a method_61004 + m (I)[Ljava/util/concurrent/CompletableFuture; method_23699 a method_23699 + m (II)Ljava/util/concurrent/CompletableFuture; getOrCreateOldDataForRegion a method_42329 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_27938 a method_27938 + m (Lnet/minecraft/util/thread/ProcessorHandle;Ljava/util/function/Supplier;)V method_27939 a method_27939 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; loadAsync a method_31738 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)Z isOldChunkAround a method_42330 + p 1 chunkPos + p 2 radius + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore;)V runStore a method_23701 + p 1 chunkPos + p 2 pendingStore + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; store a method_23703 + p 1 chunkPos + p 2 chunkData + m (Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore;)Ljava/util/concurrent/CompletableFuture; method_23705 a method_23705 + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_37479 a method_37479 + m (Ljava/util/BitSet;Lnet/minecraft/world/level/ChunkPos;)V method_42331 a method_42331 + m (Ljava/util/function/Supplier;)Ljava/util/concurrent/CompletableFuture; submitTask a method_23709 + p 1 task + m (Ljava/util/function/Supplier;Lnet/minecraft/util/thread/ProcessorHandle;)Lnet/minecraft/util/thread/StrictQueue$IntRunnable; method_27941 a method_27941 + m (Lnet/minecraft/nbt/CompoundTag;)Z isOldChunk a method_42332 + p 1 chunkData + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/storage/IOWorker$PendingStore; method_23711 a method_23711 + m (Z)Ljava/util/concurrent/CompletableFuture; synchronize a method_23698 + p 1 flushStorage + m ()V storePendingChunk b method_23719 + m (II)Ljava/util/concurrent/CompletableFuture; createOldDataForRegion b method_42333 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/util/thread/ProcessorHandle;)V method_27942 b method_27942 + m (Lnet/minecraft/world/level/ChunkPos;)Lcom/mojang/datafixers/util/Either; method_27943 b method_27943 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Lcom/mojang/datafixers/util/Either; method_27944 b method_27944 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)Lcom/mojang/datafixers/util/Either; method_39801 b method_39801 + m (Ljava/lang/Void;)Ljava/util/concurrent/CompletionStage; method_27940 b method_27940 + m ()V tellStorePending c method_27945 + m (II)Ljava/util/BitSet; method_42334 c method_42334 + m ()Lcom/mojang/datafixers/util/Either; method_37480 d method_37480 + m ()Lcom/mojang/datafixers/util/Either; method_27946 e method_27946 + m ()Lcom/mojang/datafixers/util/Either; method_27947 f method_27947 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Z)V + p 1 info + p 2 folder + p 3 sync + m ()V +c net/minecraft/world/level/chunk/storage/IOWorker$PendingStore dwl$a net/minecraft/class_4698$class_4699 + f Lnet/minecraft/nbt/CompoundTag; data a field_21503 + f Ljava/util/concurrent/CompletableFuture; result b field_21504 + m ()Lnet/minecraft/nbt/CompoundTag; copyData a method_60627 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 data +c net/minecraft/world/level/chunk/storage/IOWorker$Priority dwl$b net/minecraft/class_4698$class_5276 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; FOREGROUND a field_27237 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; BACKGROUND b field_27238 + f Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; SHUTDOWN c field_27239 + f [Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; $VALUES d field_24471 + m ()[Lnet/minecraft/world/level/chunk/storage/IOWorker$Priority; $values a method_36744 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/chunk/storage/RecreatingChunkStorage dwm net/minecraft/class_9170 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; writeWorker a field_48748 + f Ljava/nio/file/Path; writeFolder b field_48749 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;Z)V + p 1 info + p 2 folder + p 3 writeInfo + p 4 writeFolder + p 5 fixerUpper + p 6 sync +c net/minecraft/world/level/chunk/storage/RecreatingSimpleRegionStorage dwn net/minecraft/class_9171 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; writeWorker a field_48750 + f Ljava/nio/file/Path; writeFolder b field_48751 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V + p 1 info + p 2 folder + p 3 writeInfo + p 4 writeFolder + p 5 fixerUpper + p 6 sync + p 7 dataFixType +c net/minecraft/world/level/chunk/storage/RegionBitmap dwo net/minecraft/class_4485 + c Keeps track of which parts of a region file are used and which parts are free. + f Ljava/util/BitSet; used a field_20433 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; getUsed a method_35322 + m (I)I allocate a method_21867 + c Gets a valid offset inside the region file with enough space to store the given amount of sectors and marks that space as used. + p 1 sectorCount + m (II)V force a method_21868 + c Marks a range of 4 KiB sectors relative to the region file as used. + p 1 sectorOffset + c The first sector in the range. + p 2 sectorCount + c The amount of sectors in the range. + m (II)V free b method_21869 + c Marks a range of 4 KiB sectors relative to the region file as not used. + p 1 sectorOffset + c The first sector in the range. + p 2 sectorCount + c The amount of sectors in the range. + m ()V +c net/minecraft/world/level/chunk/storage/RegionFile dwp net/minecraft/class_2861 + c This class handles a single region (or anvil) file and all files for single chunks at chunk positions for that one region file. + f I SECTOR_INTS a field_31417 + f Lnet/minecraft/world/level/chunk/storage/RegionBitmap; usedSectors b field_20441 + f Lorg/slf4j/Logger; LOGGER c field_20434 + f I SECTOR_BYTES d field_31418 + f I CHUNK_HEADER_SIZE e field_31419 + f I HEADER_OFFSET f field_31420 + f Ljava/nio/ByteBuffer; PADDING_BUFFER g field_20435 + f Ljava/lang/String; EXTERNAL_FILE_EXTENSION h field_31421 + f I EXTERNAL_STREAM_FLAG i field_31422 + f I EXTERNAL_CHUNK_THRESHOLD j field_31423 + f I CHUNK_NOT_PRESENT k field_31424 + f Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info l field_49102 + f Ljava/nio/file/Path; path m field_48752 + f Ljava/nio/channels/FileChannel; file n field_20436 + f Ljava/nio/file/Path; externalFileDir o field_20657 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; version p field_20437 + f Ljava/nio/ByteBuffer; header q field_20438 + f Ljava/nio/IntBuffer; offsets r field_20439 + f Ljava/nio/IntBuffer; timestamps s field_20440 + m ()Ljava/nio/file/Path; getPath a method_56566 + m (B)Z isExternalStreamChunk a method_22407 + p 0 versionByte + m (I)I getNumSectors a method_21871 + c Gets the amount of 4 KiB sectors used to store a chunk. + p 0 packedSectorOffset + m (II)I packSectorOffset a method_21872 + c Packs the offset in 4 KiB sectors from the region file start and the amount of 4 KiB sectors used to store a chunk into one {@code int}. + p 1 sectorOffset + p 2 sectorCount + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/io/DataInputStream; getChunkDataInputStream a method_21873 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;B)Ljava/io/DataInputStream; createExternalChunkInputStream a method_22408 + p 1 chunkPos + p 2 versionByte + m (Lnet/minecraft/world/level/ChunkPos;BLjava/io/InputStream;)Ljava/io/DataInputStream; createChunkInputStream a method_22409 + p 1 chunkPos + p 2 versionByte + p 3 inputStream + m (Lnet/minecraft/world/level/ChunkPos;Ljava/nio/ByteBuffer;)V write a method_21874 + p 1 chunkPos + p 2 chunkData + m (Ljava/nio/ByteBuffer;I)Ljava/io/ByteArrayInputStream; createStream a method_21876 + p 0 sourceBuffer + p 1 length + m (Ljava/nio/file/Path;Ljava/nio/ByteBuffer;)Lnet/minecraft/world/level/chunk/storage/RegionFile$CommitOp; writeToExternalFile a method_22410 + c Writes a chunk to a separate file with only that chunk. This is used for chunks larger than 1 MiB + p 1 externalChunkFile + p 2 chunkData + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_22411 a method_22411 + m ()V flush b method_26981 + m (B)B getExternalChunkVersion b method_22412 + p 0 versionByte + m (I)I getSectorNumber b method_21878 + c Gets the offset in 4 KiB sectors from the start of the region file, where the data for a chunk starts. + p 0 packedSectorOffset + m (Lnet/minecraft/world/level/ChunkPos;)Z doesChunkExist b method_21879 + p 1 chunkPos + m ()I getTimestamp c method_31739 + c Gets a timestamp for the current time to be written to a region file. + m (I)I sizeToSectors c method_21880 + c Gets the amount of sectors required to store chunk data of a certain size in bytes. + p 0 size + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/io/DataOutputStream; getChunkDataOutputStream c method_21881 + c Creates a new {@link java.io.InputStream} for a chunk stored in a separate file. + p 1 chunkPos + m ()Ljava/nio/ByteBuffer; createExternalStub d method_22406 + m (Lnet/minecraft/world/level/ChunkPos;)V clear d method_31740 + p 1 chunkPos + m ()V writeHeader e method_21870 + m (Lnet/minecraft/world/level/ChunkPos;)Z hasChunk e method_12423 + p 1 chunkPos + m ()V padToFullSector f method_21877 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/nio/file/Path; getExternalChunkPath f method_22413 + c Gets the path to store a chunk that can not be stored within the region file because it's larger than 1 MiB. + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)I getOffset g method_12419 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)I getOffsetIndex h method_17909 + c Gets the offset within the region file where the chunk metadata for a chunk can be found. + p 0 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;)V method_22414 i method_22414 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Ljava/nio/file/Path;Z)V + p 1 info + p 2 path + p 3 externalFileDir + p 4 sync + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;Z)V + p 1 info + p 2 path + p 3 externalFileDir + p 4 version + p 5 sync + m ()V +c net/minecraft/world/level/chunk/storage/RegionFile$ChunkBuffer dwp$a net/minecraft/class_2861$class_2862 + f Lnet/minecraft/world/level/chunk/storage/RegionFile; field_13035 a field_13035 + f Lnet/minecraft/world/level/ChunkPos; pos b field_17656 + m (Lnet/minecraft/world/level/chunk/storage/RegionFile;Lnet/minecraft/world/level/ChunkPos;)V + p 2 pos +c net/minecraft/world/level/chunk/storage/RegionFile$CommitOp dwp$b net/minecraft/class_2861$class_4549 +c net/minecraft/world/level/chunk/storage/RegionFileStorage dwq net/minecraft/class_2867 + c Handles reading and writing the {@link net.minecraft.world.level.chunk.storage.RegionFile region files} for a {@link net.minecraft.world.level.Level}. + f Ljava/lang/String; ANVIL_EXTENSION a field_31425 + f I MAX_CACHE_SIZE b field_31426 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; regionCache c field_17657 + f Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info d field_49103 + f Ljava/nio/file/Path; folder e field_18690 + f Z sync f field_23748 + m ()V flush a method_26982 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; read a method_17911 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)V write a method_23726 + p 1 chunkPos + p 2 chunkData + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/StreamTagVisitor;)V scanChunk a method_39802 + p 1 chunkPos + p 2 visitor + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; info b method_61005 + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/chunk/storage/RegionFile; getRegionFile b method_12440 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Z)V + p 1 info + p 2 folder + p 3 sync +c net/minecraft/world/level/chunk/storage/RegionFileVersion dwr net/minecraft/class_4486 + c A decorator for input and output streams used to read and write the chunk data from region files. This exists as there are different ways of compressing the chunk data inside a region file.\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_GZIP\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_DEFLATE\n@see net.minecraft.world.level.chunk.storage.RegionFileVersion#VERSION_NONE + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_GZIP a field_20442 + c Used to store the chunk data in gzip format. Unused in practice. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_DEFLATE b field_20443 + c Used to store the chunk data in zlib format. This is the default. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_NONE c field_20444 + c Used to keep the chunk data uncompressed. Unused in practice. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_LZ4 d field_48753 + c Used to store the chunk data in lz4 format. Used when region-file-compression is set to 1z4 in server.properties. + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; VERSION_CUSTOM e field_48916 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; DEFAULT f field_48754 + f Lorg/slf4j/Logger; LOGGER g field_48755 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; VERSIONS h field_20445 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; VERSIONS_BY_NAME i field_48756 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; selected j field_48757 + f I id k field_20446 + f Ljava/lang/String; optionName l field_48758 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper; inputWrapper m field_20447 + f Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper; outputWrapper n field_20448 + m ()Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; getSelected a method_56567 + m (I)Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; fromId a method_21883 + p 0 id + m (Lnet/minecraft/world/level/chunk/storage/RegionFileVersion;)Lnet/minecraft/world/level/chunk/storage/RegionFileVersion; register a method_21884 + p 0 fileVersion + m (Ljava/io/InputStream;)Ljava/io/InputStream; wrap a method_21885 + p 1 inputStream + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; wrap a method_21886 + p 1 outputStream + m (Ljava/lang/String;)V configure a method_56568 + p 0 optionValue + m ()I getId b method_21882 + m (I)Z isValidVersion b method_21887 + p 0 id + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_56569 b method_56569 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_56570 b method_56570 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_21888 c method_21888 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_21889 c method_21889 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39803 d method_39803 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39804 d method_39804 + m (Ljava/io/InputStream;)Ljava/io/InputStream; method_39805 e method_39805 + m (Ljava/io/OutputStream;)Ljava/io/OutputStream; method_39806 e method_39806 + m (ILjava/lang/String;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper;Lnet/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper;)V + p 1 id + p 2 optionName + p 3 inputWrapper + p 4 outputWrapper + m ()V +c net/minecraft/world/level/chunk/storage/RegionFileVersion$StreamWrapper dwr$a net/minecraft/class_4486$class_4487 +c net/minecraft/world/level/chunk/storage/RegionStorageInfo dws net/minecraft/class_9240 + f Ljava/lang/String; level a comp_2345 + f Lnet/minecraft/resources/ResourceKey; dimension b comp_2346 + f Ljava/lang/String; type c comp_2347 + m ()Ljava/lang/String; level a comp_2345 + m (Ljava/lang/String;)Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; withTypeSuffix a method_57013 + p 1 suffix + m ()Lnet/minecraft/resources/ResourceKey; dimension b comp_2346 + m ()Ljava/lang/String; type c comp_2347 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;Ljava/lang/String;)V +c net/minecraft/world/level/chunk/storage/SectionStorage dwt net/minecraft/class_4180 + f Lorg/slf4j/Logger; LOGGER a field_18691 + f Ljava/lang/String; SECTIONS_TAG b field_31427 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor c field_27240 + f Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage; simpleRegionStorage d field_48759 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; storage e field_18692 + f Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; dirty f field_18693 + f Ljava/util/function/Function; codec g field_24750 + f Ljava/util/function/Function; factory h field_18695 + f Lnet/minecraft/core/RegistryAccess; registryAccess i field_39315 + f Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter; errorReporter j field_52227 + m ()Z hasWork a method_40020 + m (J)V setDirty a method_19288 + p 1 sectionPos + m (JLcom/mojang/serialization/Dynamic;)Ljava/util/Optional; method_28511 a method_28511 + m (JZLjava/lang/Object;)V method_20366 a method_20366 + m (Lcom/mojang/serialization/Dynamic;)I getVersion a method_20369 + p 0 columnData + m (Lnet/minecraft/world/level/ChunkPos;)V flush a method_20436 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;I)J getKey a method_33637 + p 0 chunkPos + p 1 sectionY + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/resources/RegistryOps;Lnet/minecraft/nbt/CompoundTag;)V readColumn a method_20368 + p 1 chunkPos + p 2 ops + p 3 tag + m (Lnet/minecraft/world/level/ChunkPos;Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; writeColumn a method_20367 + p 1 chunkPos + p 2 ops + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_61006 a method_61006 + m (Ljava/util/Map;Lcom/mojang/serialization/DynamicOps;Ljava/lang/String;Ljava/lang/Object;)V method_28512 a method_28512 + m (Ljava/util/function/BooleanSupplier;)V tick a method_19290 + p 1 aheadOfTime + m (J)V onSectionLoad b method_19291 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)V readColumn b method_19289 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/util/Optional; method_43412 b method_43412 + m (J)Ljava/util/Optional; get c method_19293 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; tryRead c method_20621 + p 1 chunkPos + m (J)Ljava/util/Optional; getOrLoad d method_19294 + p 1 sectionKey + m (Lnet/minecraft/world/level/ChunkPos;)V writeColumn d method_20370 + p 1 chunkPos + m (J)Z outsideStoredRange e method_19292 + p 1 sectionKey + m (J)Ljava/lang/Object; getOrCreate f method_19295 + p 1 sectionKey + m (J)V method_28513 g method_28513 + m (J)V method_19296 h method_19296 + m (J)V method_19297 i method_19297 + m (Lnet/minecraft/world/level/chunk/storage/SimpleRegionStorage;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/storage/ChunkIOErrorReporter;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 simpleRegionStorage + p 2 codec + p 3 factory + p 4 registryAccess + p 5 errorReporter + p 6 levelHeightAccessor + m ()V +c net/minecraft/world/level/chunk/storage/SimpleRegionStorage dwu net/minecraft/class_9172 + f Lnet/minecraft/world/level/chunk/storage/IOWorker; worker a field_48760 + f Lcom/mojang/datafixers/DataFixer; fixerUpper b field_48761 + f Lnet/minecraft/util/datafix/DataFixTypes; dataFixType c field_48762 + m ()Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo; storageInfo a method_61007 + m (Lcom/mojang/serialization/Dynamic;I)Lcom/mojang/serialization/Dynamic; upgradeChunkTag a method_56571 + p 1 tag + p 2 version + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; read a method_56572 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/concurrent/CompletableFuture; write a method_56565 + p 1 chunkPos + p 2 data + m (Lnet/minecraft/nbt/CompoundTag;I)Lnet/minecraft/nbt/CompoundTag; upgradeChunkTag a method_56573 + p 1 tag + p 2 version + m (Z)Ljava/util/concurrent/CompletableFuture; synchronize a method_56574 + p 1 flushStorage + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;ZLnet/minecraft/util/datafix/DataFixTypes;)V + p 1 info + p 2 folder + p 3 fixerUpper + p 4 sync + p 5 dataFixType +c net/minecraft/world/level/chunk/storage/package-info dwv net/minecraft/class_6100 +c net/minecraft/world/level/dimension/BuiltinDimensionTypes dww net/minecraft/class_7134 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD a field_37666 + f Lnet/minecraft/resources/ResourceKey; NETHER b field_37667 + f Lnet/minecraft/resources/ResourceKey; END c field_37668 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD_CAVES d field_37669 + f Lnet/minecraft/resources/ResourceLocation; OVERWORLD_EFFECTS e field_37670 + f Lnet/minecraft/resources/ResourceLocation; NETHER_EFFECTS f field_37671 + f Lnet/minecraft/resources/ResourceLocation; END_EFFECTS g field_37672 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41524 + p 0 name + m ()V + m ()V +c net/minecraft/world/level/dimension/DimensionDefaults dwx net/minecraft/class_6101 + f I OVERWORLD_MIN_Y a field_31428 + f I OVERWORLD_LEVEL_HEIGHT b field_31429 + f I OVERWORLD_GENERATION_HEIGHT c field_31430 + f I OVERWORLD_LOGICAL_HEIGHT d field_31431 + f I NETHER_MIN_Y e field_31432 + f I NETHER_LEVEL_HEIGHT f field_31433 + f I NETHER_GENERATION_HEIGHT g field_31434 + f I NETHER_LOGICAL_HEIGHT h field_31435 + f I END_MIN_Y i field_31436 + f I END_LEVEL_HEIGHT j field_31437 + f I END_GENERATION_HEIGHT k field_31438 + f I END_LOGICAL_HEIGHT l field_31439 + m ()V +c net/minecraft/world/level/dimension/DimensionType dwy net/minecraft/class_2874 + f I MOON_PHASES A field_31440 + f I BITS_FOR_Y a field_28133 + f I MIN_HEIGHT b field_33411 + f I Y_SIZE c field_28134 + f I MAX_Y d field_28135 + f I MIN_Y e field_28136 + f I WAY_ABOVE_MAX_Y f field_35478 + f I WAY_BELOW_MIN_Y g field_35479 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC h field_24757 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC i field_51951 + f [F MOON_BRIGHTNESS_PER_PHASE j field_24752 + f Lcom/mojang/serialization/Codec; CODEC k field_24756 + f Ljava/util/OptionalLong; fixedTime l comp_641 + f Z hasSkyLight m comp_642 + f Z hasCeiling n comp_643 + f Z ultraWarm o comp_644 + f Z natural p comp_645 + f D coordinateScale q comp_646 + f Z bedWorks r comp_648 + f Z respawnAnchorWorks s comp_649 + f I minY t comp_651 + f I height u comp_652 + f I logicalHeight v comp_653 + f Lnet/minecraft/tags/TagKey; infiniburn w comp_654 + f Lnet/minecraft/resources/ResourceLocation; effectsLocation x comp_655 + f F ambientLight y comp_656 + f Lnet/minecraft/world/level/dimension/DimensionType$MonsterSettings; monsterSettings z comp_847 + m ()Z hasFixedTime a method_29960 + m (J)F timeOfDay a method_28528 + p 1 dayTime + m (Lnet/minecraft/resources/ResourceKey;Ljava/nio/file/Path;)Ljava/nio/file/Path; getStorageFolder a method_12488 + p 0 dimensionKey + p 1 levelFolder + m (Lcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/DataResult; parseLegacy a method_28521 + p 0 dynamic + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28522 a method_28522 + m (Lnet/minecraft/world/level/dimension/DimensionType;Lnet/minecraft/world/level/dimension/DimensionType;)D getTeleportationScale a method_31109 + p 0 firstType + p 1 secondType + m ()Z piglinSafe b method_44220 + m (J)I moonPhase b method_28531 + p 1 dayTime + m ()Z hasRaids c method_44221 + m ()Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest d method_44222 + m ()I monsterSpawnBlockLightLimit e method_44223 + m ()Ljava/util/OptionalLong; fixedTime f comp_641 + m ()Z hasSkyLight g comp_642 + m ()Z hasCeiling h comp_643 + m ()Z ultraWarm i comp_644 + m ()Z natural j comp_645 + m ()D coordinateScale k comp_646 + m ()Z bedWorks l comp_648 + m ()Z respawnAnchorWorks m comp_649 + m ()I minY n comp_651 + m ()I height o comp_652 + m ()I logicalHeight p comp_653 + m ()Lnet/minecraft/tags/TagKey; infiniburn q comp_654 + m ()Lnet/minecraft/resources/ResourceLocation; effectsLocation r comp_655 + m ()F ambientLight s comp_656 + m ()Lnet/minecraft/world/level/dimension/DimensionType$MonsterSettings; monsterSettings t comp_847 + m (Ljava/util/OptionalLong;ZZZZDZZIIILnet/minecraft/tags/TagKey;Lnet/minecraft/resources/ResourceLocation;FLnet/minecraft/world/level/dimension/DimensionType$MonsterSettings;)V + p 1 fixedTime + p 2 hasSkyLight + p 3 hasCeiling + p 4 ultraWarm + p 5 natural + p 6 coordinateScale + p 8 bedWorks + p 9 respawnAnchorWorks + p 10 minY + p 11 height + p 12 logicalHeight + p 13 infiniburn + p 14 effectsLocation + p 15 ambientLight + p 16 monsterSettings + m ()V +c net/minecraft/world/level/dimension/DimensionType$MonsterSettings dwy$a net/minecraft/class_2874$class_7512 + f Lcom/mojang/serialization/MapCodec; CODEC a field_39414 + f Z piglinSafe b comp_848 + f Z hasRaids c comp_849 + f Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest d comp_850 + f I monsterSpawnBlockLightLimit e comp_851 + m ()Z piglinSafe a comp_848 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_44224 a method_44224 + m ()Z hasRaids b comp_849 + m ()Lnet/minecraft/util/valueproviders/IntProvider; monsterSpawnLightTest c comp_850 + m ()I monsterSpawnBlockLightLimit d comp_851 + m (ZZLnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/dimension/LevelStem dwz net/minecraft/class_5363 + f Lcom/mojang/serialization/Codec; CODEC a field_25411 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD b field_25412 + f Lnet/minecraft/resources/ResourceKey; NETHER c field_25413 + f Lnet/minecraft/resources/ResourceKey; END d field_25414 + f Lnet/minecraft/core/Holder; type e comp_1012 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator f comp_1013 + m ()Lnet/minecraft/core/Holder; type a comp_1012 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_29568 a method_29568 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b comp_1013 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/chunk/ChunkGenerator;)V + p 1 type + p 2 generator + m ()V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation dxa net/minecraft/class_2876 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; START a field_13097 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; PREPARING_TO_SUMMON_PILLARS b field_13095 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; SUMMONING_PILLARS c field_13094 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; SUMMONING_DRAGON d field_13098 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; END e field_13099 + f [Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; $VALUES f field_13096 + m ()[Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; $values a method_36745 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/dimension/end/EndDragonFight;Ljava/util/List;ILnet/minecraft/core/BlockPos;)V tick a method_12507 + p 1 level + p 2 manager + p 3 crystals + p 4 ticks + p 5 pos + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$1 dxa$1 net/minecraft/class_2876$1 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$2 dxa$2 net/minecraft/class_2876$2 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$3 dxa$3 net/minecraft/class_2876$3 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$4 dxa$4 net/minecraft/class_2876$4 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/DragonRespawnAnimation$5 dxa$5 net/minecraft/class_2876$5 + m (Ljava/lang/String;I)V +c net/minecraft/world/level/dimension/end/EndDragonFight dxb net/minecraft/class_2881 + f I respawnTime A field_13118 + f Ljava/util/List; respawnCrystals B field_13109 + f I TIME_BETWEEN_PLAYER_SCANS a field_31445 + f I ARENA_TICKET_LEVEL b field_31441 + f I DRAGON_SPAWN_Y c field_31442 + f Lorg/slf4j/Logger; LOGGER d field_13112 + f I MAX_TICKS_BEFORE_DRAGON_RESPAWN e field_31443 + f I TIME_BETWEEN_CRYSTAL_SCANS f field_31444 + f I ARENA_SIZE_CHUNKS g field_31446 + f I GATEWAY_COUNT h field_31447 + f I GATEWAY_DISTANCE i field_31448 + f Ljava/util/function/Predicate; validPlayer j field_44876 + f Lnet/minecraft/server/level/ServerBossEvent; dragonEvent k field_13119 + f Lnet/minecraft/server/level/ServerLevel; level l field_13108 + f Lnet/minecraft/core/BlockPos; origin m field_44877 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; gateways n field_13121 + f Lnet/minecraft/world/level/block/state/pattern/BlockPattern; exitPortalPattern o field_13110 + f I ticksSinceDragonSeen p field_13107 + f I crystalsAlive q field_13106 + f I ticksSinceCrystalsScanned r field_13105 + f I ticksSinceLastPlayerScan s field_13122 + f Z dragonKilled t field_13115 + f Z previouslyKilled u field_13114 + f Z skipArenaLoadedCheck v field_44878 + f Ljava/util/UUID; dragonUUID w field_13116 + f Z needsStateScanning x field_13111 + f Lnet/minecraft/core/BlockPos; portalLocation y field_13117 + f Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation; respawnStage z field_13120 + m ()V skipArenaLoadedCheck a method_51855 + m (J)Ljava/util/List; method_52229 a method_52229 + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/world/damagesource/DamageSource;)V onCrystalDestroyed a method_12526 + p 1 crystal + p 2 dmgSrc + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V setDragonKilled a method_12528 + p 1 dragon + m (Lnet/minecraft/world/level/dimension/end/DragonRespawnAnimation;)V setRespawnStage a method_12521 + p 1 state + m (Ljava/util/List;)V respawnDragon a method_12529 + p 1 crystals + m (Lnet/minecraft/core/BlockPos;)V spawnNewGateway a method_12516 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_46716 a method_46716 + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46717 a method_46717 + m (Z)V spawnExitPortal a method_12518 + p 1 active + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; saveData b method_12530 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)V updateDragon b method_12532 + p 1 dragon + m ()V tick c method_12538 + m ()V removeAllGateways d method_51856 + m ()I getCrystalsAlive e method_12517 + m ()Z hasPreviouslyKilledDragon f method_12536 + m ()V tryRespawn g method_12522 + m ()V resetSpikeCrystals h method_12524 + m ()Ljava/util/UUID; getDragonUUID i method_52179 + m ()V scanState j method_12515 + m ()V findOrCreateDragon k method_12525 + m ()Z hasActiveExitPortal l method_12514 + m ()Lnet/minecraft/world/level/block/state/pattern/BlockPattern$BlockPatternMatch; findExitPortal m method_12531 + m ()Z isArenaLoaded n method_12533 + m ()V updatePlayers o method_12520 + m ()V updateCrystalCount p method_12535 + m ()V spawnNewGateway q method_12519 + m ()Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; createNewDragon r method_12523 + m (Lnet/minecraft/server/level/ServerLevel;JLnet/minecraft/world/level/dimension/end/EndDragonFight$Data;)V + p 1 level + p 2 seed + p 4 data + m (Lnet/minecraft/server/level/ServerLevel;JLnet/minecraft/world/level/dimension/end/EndDragonFight$Data;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 seed + p 4 data + p 5 origin + m ()V +c net/minecraft/world/level/dimension/end/EndDragonFight$Data dxb$a net/minecraft/class_2881$class_8576 + f Lcom/mojang/serialization/Codec; CODEC a field_44945 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; DEFAULT b field_44946 + f Z needsStateScanning c comp_1540 + f Z dragonKilled d comp_1541 + f Z previouslyKilled e comp_1542 + f Z isRespawning f comp_1543 + f Ljava/util/Optional; dragonUUID g comp_1544 + f Ljava/util/Optional; exitPortalLocation h comp_1545 + f Ljava/util/Optional; gateways i comp_1546 + m ()Z needsStateScanning a comp_1540 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52230 a method_52230 + m ()Z dragonKilled b comp_1541 + m ()Z previouslyKilled c comp_1542 + m ()Z isRespawning d comp_1543 + m ()Ljava/util/Optional; dragonUUID e comp_1544 + m ()Ljava/util/Optional; exitPortalLocation f comp_1545 + m ()Ljava/util/Optional; gateways g comp_1546 + m (ZZZZLjava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/dimension/end/package-info dxc net/minecraft/class_6102 +c net/minecraft/world/level/dimension/package-info dxd net/minecraft/class_6103 +c net/minecraft/world/level/entity/ChunkEntities dxe net/minecraft/class_5566 + f Lnet/minecraft/world/level/ChunkPos; pos a field_27241 + f Ljava/util/List; entities b field_27242 + m ()Lnet/minecraft/world/level/ChunkPos; getPos a method_31741 + m ()Ljava/util/stream/Stream; getEntities b method_31742 + m ()Z isEmpty c method_31743 + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/List;)V + p 1 pos + p 2 entities +c net/minecraft/world/level/entity/ChunkStatusUpdateListener dxf net/minecraft/class_5567 +c net/minecraft/world/level/entity/EntityAccess dxg net/minecraft/class_5568 + m (Lnet/minecraft/world/level/entity/EntityInLevelCallback;)V setLevelCallback a method_31744 + p 1 levelCallback + m ()I getId an method_5628 + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V setRemoved b method_31745 + p 1 removalReason + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox cK method_5829 + m ()Ljava/util/stream/Stream; getSelfAndPassengers cU method_24204 + m ()Ljava/util/stream/Stream; getPassengersAndSelf cV method_31748 + m ()Ljava/util/UUID; getUUID cz method_5667 + m ()Z shouldBeSaved dM method_31746 + m ()Z isAlwaysTicking dN method_31747 + m ()Lnet/minecraft/core/BlockPos; blockPosition do method_24515 +c net/minecraft/world/level/entity/EntityInLevelCallback dxh net/minecraft/class_5569 + f Lnet/minecraft/world/level/entity/EntityInLevelCallback; NULL a field_27243 + m ()V onMove a method_31749 + m (Lnet/minecraft/world/entity/Entity$RemovalReason;)V onRemove a method_31750 + p 1 reason + m ()V +c net/minecraft/world/level/entity/EntityInLevelCallback$1 dxh$1 net/minecraft/class_5569$1 + m ()V +c net/minecraft/world/level/entity/EntityLookup dxi net/minecraft/class_5570 + f Lorg/slf4j/Logger; LOGGER a field_27244 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; byId b field_27245 + f Ljava/util/Map; byUuid c field_27246 + m ()Ljava/lang/Iterable; getAllEntities a method_31751 + m (I)Lnet/minecraft/world/level/entity/EntityAccess; getEntity a method_31752 + p 1 id + m (Lnet/minecraft/world/level/entity/EntityAccess;)V add a method_31753 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities a method_31754 + p 1 test + p 2 consumer + m (Ljava/util/UUID;)Lnet/minecraft/world/level/entity/EntityAccess; getEntity a method_31755 + p 1 uuid + m ()I count b method_31756 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V remove b method_31757 + p 1 entity + m ()V + m ()V +c net/minecraft/world/level/entity/EntityPersistentStorage dxj net/minecraft/class_5571 + m (Lnet/minecraft/world/level/ChunkPos;)Ljava/util/concurrent/CompletableFuture; loadEntities a method_31759 + p 1 pos + m (Lnet/minecraft/world/level/entity/ChunkEntities;)V storeEntities a method_31760 + p 1 entities + m (Z)V flush a method_31758 + p 1 synchronize +c net/minecraft/world/level/entity/EntitySection dxk net/minecraft/class_5572 + f Lorg/slf4j/Logger; LOGGER a field_27247 + f Lnet/minecraft/util/ClassInstanceMultiMap; storage b field_27248 + f Lnet/minecraft/world/level/entity/Visibility; chunkStatus c field_27249 + m ()Z isEmpty a method_31761 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V add a method_31764 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; getEntities a method_31762 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/level/entity/Visibility;)Lnet/minecraft/world/level/entity/Visibility; updateChunkStatus a method_31763 + p 1 chunkStatus + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; getEntities a method_31765 + p 1 bounds + p 2 consumer + m ()Ljava/util/stream/Stream; getEntities b method_31766 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z remove b method_31767 + p 1 entity + m ()Lnet/minecraft/world/level/entity/Visibility; getStatus c method_31768 + m ()I size d method_31769 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/Visibility;)V + p 1 entityClazz + p 2 chunkStatus + m ()V +c net/minecraft/world/level/entity/EntitySectionStorage dxl net/minecraft/class_5573 + f Ljava/lang/Class; entityClass a field_27250 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction; intialSectionVisibility b field_27251 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; sections c field_27252 + f Lit/unimi/dsi/fastutil/longs/LongSortedSet; sectionIds d field_27253 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAllChunksWithExistingSections a method_31770 + m (II)Lit/unimi/dsi/fastutil/longs/LongSortedSet; getChunkSections a method_31771 + p 1 x + p 2 z + m (J)Ljava/util/stream/LongStream; getExistingSectionPositionsInChunk a method_31772 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities a method_31773 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;Lnet/minecraft/world/level/entity/EntitySection;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_31778 a method_31778 + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V forEachAccessibleNonEmptySection a method_31777 + p 1 boundingBox + p 2 consumer + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;Lnet/minecraft/world/level/entity/EntitySection;)Lnet/minecraft/util/AbortableIterationConsumer$Continuation; method_39465 a method_39465 + m (Lit/unimi/dsi/fastutil/longs/LongSet;J)V method_31780 a method_31780 + m ()I count b method_31781 + m (J)Ljava/util/stream/Stream; getExistingSectionsInChunk b method_31782 + p 1 pos + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V getEntities b method_31783 + p 1 bounds + p 2 consumer + m (J)Lnet/minecraft/world/level/entity/EntitySection; getOrCreateSection c method_31784 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/entity/EntitySection; getSection d method_31785 + p 1 sectionPos + m (J)V remove e method_31786 + p 1 sectionId + m (J)J getChunkKeyFromSectionKey f method_31787 + p 0 pos + m (J)Lnet/minecraft/world/level/entity/EntitySection; createSection g method_31788 + p 1 sectionPos + m (Ljava/lang/Class;Lit/unimi/dsi/fastutil/longs/Long2ObjectFunction;)V + p 1 entityClass + p 2 initialSectionVisibility +c net/minecraft/world/level/entity/EntityTickList dxm net/minecraft/class_5574 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; active a field_27254 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; passive b field_27255 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; iterated c field_27256 + m ()V ensureActiveIsNotIterated a method_31789 + m (Lnet/minecraft/world/entity/Entity;)V add a method_31790 + p 1 entity + m (Ljava/util/function/Consumer;)V forEach a method_31791 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)V remove b method_31792 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;)Z contains c method_31793 + p 1 entity + m ()V +c net/minecraft/world/level/entity/EntityTypeTest dxn net/minecraft/class_5575 + m ()Ljava/lang/Class; getBaseClass a method_31794 + m (Ljava/lang/Class;)Lnet/minecraft/world/level/entity/EntityTypeTest; forClass a method_31795 + p 0 clazz + m (Ljava/lang/Object;)Ljava/lang/Object; tryCast a method_31796 + p 1 entity + m (Ljava/lang/Class;)Lnet/minecraft/world/level/entity/EntityTypeTest; forExactClass b method_55374 + p 0 clazz +c net/minecraft/world/level/entity/EntityTypeTest$1 dxn$1 net/minecraft/class_5575$1 + f Ljava/lang/Class; val$cls a field_27257 + m (Ljava/lang/Class;)V +c net/minecraft/world/level/entity/EntityTypeTest$2 dxn$2 net/minecraft/class_5575$2 + f Ljava/lang/Class; val$cls a field_47524 + m (Ljava/lang/Class;)V +c net/minecraft/world/level/entity/LevelCallback dxo net/minecraft/class_5576 + m (Ljava/lang/Object;)V onSectionChange a method_43029 + p 1 entity + m (Ljava/lang/Object;)V onTrackingEnd b method_31797 + p 1 entity + m (Ljava/lang/Object;)V onTrackingStart c method_31798 + p 1 entity + m (Ljava/lang/Object;)V onTickingEnd d method_31799 + p 1 entity + m (Ljava/lang/Object;)V onTickingStart e method_31800 + p 1 entity + m (Ljava/lang/Object;)V onDestroyed f method_31801 + p 1 entity + m (Ljava/lang/Object;)V onCreated g method_31802 + p 1 entity +c net/minecraft/world/level/entity/LevelEntityGetter dxp net/minecraft/class_5577 + m ()Ljava/lang/Iterable; getAll a method_31803 + m (I)Lnet/minecraft/world/level/entity/EntityAccess; get a method_31804 + p 1 id + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/util/AbortableIterationConsumer;)V get a method_31806 + p 1 test + p 2 consumer + m (Lnet/minecraft/world/level/entity/EntityTypeTest;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/util/AbortableIterationConsumer;)V get a method_31805 + p 1 test + p 2 bounds + p 3 consumer + m (Lnet/minecraft/world/phys/AABB;Ljava/util/function/Consumer;)V get a method_31807 + p 1 boundingBox + p 2 consumer + m (Ljava/util/UUID;)Lnet/minecraft/world/level/entity/EntityAccess; get a method_31808 + p 1 uuid +c net/minecraft/world/level/entity/LevelEntityGetterAdapter dxq net/minecraft/class_5578 + f Lnet/minecraft/world/level/entity/EntityLookup; visibleEntities a field_27258 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage b field_27259 + m (Lnet/minecraft/world/level/entity/EntityLookup;Lnet/minecraft/world/level/entity/EntitySectionStorage;)V + p 1 visibleEntities + p 2 sectionStorage +c net/minecraft/world/level/entity/PersistentEntitySectionManager dxr net/minecraft/class_5579 + f Lorg/slf4j/Logger; LOGGER a field_27260 + f Ljava/util/Set; knownUuids b field_27261 + f Lnet/minecraft/world/level/entity/LevelCallback; callbacks c field_27262 + f Lnet/minecraft/world/level/entity/EntityPersistentStorage; permanentStorage d field_27263 + f Lnet/minecraft/world/level/entity/EntityLookup; visibleEntityStorage e field_27264 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage f field_27265 + f Lnet/minecraft/world/level/entity/LevelEntityGetter; entityGetter g field_27266 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkVisibility h field_27267 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkLoadStatuses i field_27268 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunksToUnload j field_27269 + f Ljava/util/Queue; loadingInbox k field_27270 + m ()V tick a method_31809 + m (J)Z areEntitiesLoaded a method_37252 + p 1 chunkPos + m (JLnet/minecraft/world/level/entity/EntitySection;)V removeSectionIfEmpty a method_31811 + p 1 sectionKey + p 3 section + m (JLjava/util/function/Consumer;)Z storeChunkSections a method_31812 + p 1 chunkPosValue + p 3 entityAction + m (Lnet/minecraft/util/CsvOutput;J)V method_31813 a method_31813 + m (Lnet/minecraft/util/CsvOutput;Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus;J)V method_31814 a method_31814 + m (Lnet/minecraft/world/level/ChunkPos;)Z canPositionTick a method_40021 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V updateChunkStatus a method_31815 + p 1 chunkPos + p 2 fullChunkStatus + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/entity/Visibility;)V updateChunkStatus a method_31816 + p 1 pos + p 2 visibility + m (Lnet/minecraft/world/level/ChunkPos;Ljava/lang/Throwable;)Ljava/lang/Void; method_31817 a method_31817 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z addNewEntity a method_31818 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntityAccess;Lnet/minecraft/world/level/entity/Visibility;)Lnet/minecraft/world/level/entity/Visibility; getEffectiveStatus a method_31832 + p 0 entity + p 1 visibility + m (Lnet/minecraft/world/level/entity/EntityAccess;Z)Z addEntity a method_31820 + p 1 entity + p 2 worldGenSpawned + m (Lnet/minecraft/world/level/entity/EntitySection;)Ljava/util/stream/Stream; method_31821 a method_31821 + m (Lnet/minecraft/world/level/entity/Visibility;Lnet/minecraft/world/level/entity/EntitySection;)V method_31825 a method_31825 + m (Ljava/io/Writer;)V dumpSections a method_31826 + p 1 writer + m (Ljava/util/UUID;)Z isLoaded a method_31827 + p 1 uuid + m (Ljava/util/stream/Stream;)V addLegacyChunkEntities a method_31828 + p 1 entities + m (Lnet/minecraft/core/BlockPos;)Z canPositionTick a method_40022 + p 1 pos + m ()V autoSave b method_31829 + m (J)V ensureChunkQueuedForLoad b method_31810 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z addEntityUuid b method_31831 + p 1 entity + m (Ljava/util/stream/Stream;)V addWorldGenChunkEntities b method_31835 + p 1 entities + m ()V saveAll c method_31836 + m (J)V requestChunkLoad c method_31830 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)V startTicking c method_31838 + p 1 entity + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntityGetter d method_31841 + m (J)Z processChunkUnload d method_31837 + p 1 chunkPosValue + m (Lnet/minecraft/world/level/entity/EntityAccess;)V stopTicking d method_31843 + p 1 entity + m ()Ljava/lang/String; gatherStats e method_31845 + m (J)Z method_31842 e method_31842 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V startTracking e method_31847 + p 1 entity + m ()I count f method_54490 + m (J)V method_31846 f method_31846 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V stopTracking f method_31850 + p 1 entity + m ()V processUnloads g method_31851 + m (J)Z method_31849 g method_31849 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V unloadEntity g method_31852 + p 1 entity + m ()V processPendingLoads h method_31853 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31854 h method_31854 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAllChunksToSave i method_31855 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31856 i method_31856 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31857 j method_31857 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31858 k method_31858 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31859 l method_31859 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31860 m method_31860 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31861 n method_31861 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31862 o method_31862 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31863 p method_31863 + m (Lnet/minecraft/world/level/entity/EntityAccess;)V method_31864 q method_31864 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/LevelCallback;Lnet/minecraft/world/level/entity/EntityPersistentStorage;)V + p 1 entityClass + p 2 callbacks + p 3 permanentStorage + m ()V +c net/minecraft/world/level/entity/PersistentEntitySectionManager$Callback dxr$a net/minecraft/class_5579$class_5580 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; field_27271 b field_27271 + f Lnet/minecraft/world/level/entity/EntityAccess; entity c field_27272 + f J currentSectionKey d field_27273 + f Lnet/minecraft/world/level/entity/EntitySection; currentSection e field_27274 + m (Lnet/minecraft/world/level/entity/Visibility;Lnet/minecraft/world/level/entity/Visibility;)V updateStatus a method_31865 + p 1 oldVisibility + p 2 newVisibility + m (Lnet/minecraft/world/level/entity/PersistentEntitySectionManager;Lnet/minecraft/world/level/entity/EntityAccess;JLnet/minecraft/world/level/entity/EntitySection;)V + p 2 entity + p 3 currentSectionKey + p 5 currentSection +c net/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus dxr$b net/minecraft/class_5579$class_5581 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; FRESH a field_27275 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; PENDING b field_27276 + f Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; LOADED c field_27277 + f [Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; $VALUES d field_27278 + m ()[Lnet/minecraft/world/level/entity/PersistentEntitySectionManager$ChunkLoadStatus; $values a method_36746 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/entity/TransientEntitySectionManager dxs net/minecraft/class_5582 + f Lorg/slf4j/Logger; LOGGER a field_27279 + f Lnet/minecraft/world/level/entity/LevelCallback; callbacks b field_27280 + f Lnet/minecraft/world/level/entity/EntityLookup; entityStorage c field_27281 + f Lnet/minecraft/world/level/entity/EntitySectionStorage; sectionStorage d field_27282 + f Lit/unimi/dsi/fastutil/longs/LongSet; tickingChunks e field_27283 + f Lnet/minecraft/world/level/entity/LevelEntityGetter; entityGetter f field_27284 + m ()Lnet/minecraft/world/level/entity/LevelEntityGetter; getEntityGetter a method_31866 + m (J)Lnet/minecraft/world/level/entity/Visibility; method_31867 a method_31867 + m (JLnet/minecraft/world/level/entity/EntitySection;)V removeSectionIfEmpty a method_31868 + p 1 section + p 3 entitySection + m (Lnet/minecraft/world/level/ChunkPos;)V startTicking a method_31869 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityAccess;)V addEntity a method_31870 + p 1 entity + m (Lnet/minecraft/world/level/entity/EntitySection;)V method_31871 a method_31871 + m ()I count b method_31874 + m (Lnet/minecraft/world/level/ChunkPos;)V stopTicking b method_31875 + p 1 pos + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31876 b method_31876 + m (Lnet/minecraft/world/level/entity/EntitySection;)V method_31877 b method_31877 + m ()Ljava/lang/String; gatherStats c method_31879 + m (Lnet/minecraft/world/level/entity/EntityAccess;)Z method_31880 c method_31880 + m (Ljava/lang/Class;Lnet/minecraft/world/level/entity/LevelCallback;)V + p 1 clazz + p 2 callbacks + m ()V +c net/minecraft/world/level/entity/TransientEntitySectionManager$Callback dxs$a net/minecraft/class_5582$class_5583 + f Lnet/minecraft/world/level/entity/TransientEntitySectionManager; field_27285 b field_27285 + f Lnet/minecraft/world/level/entity/EntityAccess; entity c field_27286 + f J currentSectionKey d field_27287 + f Lnet/minecraft/world/level/entity/EntitySection; currentSection e field_27288 + m (Lnet/minecraft/world/level/entity/TransientEntitySectionManager;Lnet/minecraft/world/level/entity/EntityAccess;JLnet/minecraft/world/level/entity/EntitySection;)V + p 2 entity + p 3 section + p 5 currentSection +c net/minecraft/world/level/entity/Visibility dxt net/minecraft/class_5584 + f Lnet/minecraft/world/level/entity/Visibility; HIDDEN a field_27289 + f Lnet/minecraft/world/level/entity/Visibility; TRACKED b field_27290 + f Lnet/minecraft/world/level/entity/Visibility; TICKING c field_27291 + f Z accessible d field_27292 + f Z ticking e field_27293 + f [Lnet/minecraft/world/level/entity/Visibility; $VALUES f field_27294 + m ()Z isTicking a method_31883 + m (Lnet/minecraft/server/level/FullChunkStatus;)Lnet/minecraft/world/level/entity/Visibility; fromFullChunkStatus a method_31884 + p 0 fullChunkStatus + m ()Z isAccessible b method_31885 + m ()[Lnet/minecraft/world/level/entity/Visibility; $values c method_36747 + m (Ljava/lang/String;IZZ)V + p 3 accessible + p 4 ticking + m ()V +c net/minecraft/world/level/entity/package-info dxu net/minecraft/class_6104 +c net/minecraft/world/level/gameevent/BlockPositionSource dxv net/minecraft/class_5707 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28137 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48377 + f Lnet/minecraft/core/BlockPos; pos e field_28138 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32927 a method_32927 + m (Lnet/minecraft/world/level/gameevent/BlockPositionSource;)Lnet/minecraft/core/BlockPos; method_56122 a method_56122 + m (Lnet/minecraft/world/level/gameevent/BlockPositionSource;)Lnet/minecraft/core/BlockPos; method_32928 b method_32928 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m ()V +c net/minecraft/world/level/gameevent/BlockPositionSource$Type dxv$a net/minecraft/class_5707$class_5708 + m ()V +c net/minecraft/world/level/gameevent/DynamicGameEventListener dxw net/minecraft/class_5715 + f Lnet/minecraft/world/level/gameevent/GameEventListener; listener a field_28182 + f Lnet/minecraft/core/SectionPos; lastSection b field_28183 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; getListener a method_43152 + m (Lnet/minecraft/server/level/ServerLevel;)V add a method_42335 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/SectionPos;)V method_42336 a method_42336 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/SectionPos;Ljava/util/function/Consumer;)V ifChunkExists a method_32950 + p 0 level + p 1 sectionPos + p 2 dispatcherConsumer + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32951 a method_32951 + m (Lnet/minecraft/server/level/ServerLevel;)V remove b method_32949 + p 1 level + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32953 b method_32953 + m (Lnet/minecraft/server/level/ServerLevel;)V move c method_32952 + p 1 level + m (Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry;)V method_32954 c method_32954 + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V + p 1 listener +c net/minecraft/world/level/gameevent/EntityPositionSource dxx net/minecraft/class_5709 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28139 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48378 + f Lcom/mojang/datafixers/util/Either; entityOrUuidOrId e field_38424 + f F yOffset f field_38242 + m (Lnet/minecraft/world/entity/Entity;)V method_42673 a method_42673 + m (Lcom/mojang/datafixers/util/Either;)Ljava/lang/Integer; method_42676 a method_42676 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_32932 a method_32932 + m (Lnet/minecraft/world/level/Level;Lcom/mojang/datafixers/util/Either;)Ljava/util/Optional; method_42674 a method_42674 + m (Lnet/minecraft/world/level/Level;Ljava/util/UUID;)Lnet/minecraft/world/entity/Entity; method_42675 a method_42675 + m (Lnet/minecraft/world/level/gameevent/EntityPositionSource;)Ljava/lang/Float; method_56124 a method_56124 + m (Ljava/lang/Integer;)Ljava/util/UUID; method_42677 a method_42677 + m (Ljava/lang/Integer;Ljava/lang/Float;)Lnet/minecraft/world/level/gameevent/EntityPositionSource; method_56125 a method_56125 + m (Ljava/util/UUID;)Ljava/lang/Integer; method_42678 a method_42678 + m (Ljava/util/UUID;Ljava/lang/Float;)Lnet/minecraft/world/level/gameevent/EntityPositionSource; method_42679 a method_42679 + m ()Ljava/util/UUID; getUuid b method_42680 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_42337 b method_42337 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/UUID; method_42682 b method_42682 + m (Lnet/minecraft/world/level/Level;)V resolveEntity b method_42681 + p 1 level + m (Lnet/minecraft/world/level/gameevent/EntityPositionSource;)Ljava/lang/Float; method_42338 b method_42338 + m ()I getId c method_42683 + m (Lnet/minecraft/world/entity/Entity;F)V + p 1 entity + p 2 yOffset + m (Lcom/mojang/datafixers/util/Either;F)V + p 1 entityOrUuidOrId + p 2 yOffset + m ()V +c net/minecraft/world/level/gameevent/EntityPositionSource$Type dxx$a net/minecraft/class_5709$class_5710 + m ()V +c net/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry dxy net/minecraft/class_5711 + f Ljava/util/List; listeners b field_28142 + f Ljava/util/Set; listenersToRemove c field_37673 + f Ljava/util/List; listenersToAdd d field_37674 + f Z processing e field_37675 + f Lnet/minecraft/server/level/ServerLevel; level f field_28143 + f I sectionY g field_44636 + f Lnet/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction; onEmptyAction h field_44637 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEventListener;)Ljava/util/Optional; getPostableListenerPosition a method_32936 + p 0 level + p 1 pos + p 2 listener + m (Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction;)V + p 1 level + p 2 sectionY + p 3 onEmptyAction +c net/minecraft/world/level/gameevent/EuclideanGameEventListenerRegistry$OnEmptyAction dxy$a net/minecraft/class_5711$class_8512 +c net/minecraft/world/level/gameevent/GameEvent dxz net/minecraft/class_5712 + c Describes an in game event or action that can be detected by listeners such as the Sculk Sensor block.\n@param notificationRadius The radius around an event source to broadcast this event. Any listeners within this radius will be notified when the event happens. + f Lnet/minecraft/core/Holder$Reference; HIT_GROUND A field_28159 + c This event is broadcast when an entity falls far enough to take fall damage. + f Lnet/minecraft/core/Holder$Reference; INSTRUMENT_PLAY B field_39415 + f Lnet/minecraft/core/Holder$Reference; ITEM_INTERACT_FINISH C field_28146 + f Lnet/minecraft/core/Holder$Reference; ITEM_INTERACT_START D field_28145 + f Lnet/minecraft/core/Holder$Reference; JUKEBOX_PLAY E field_39485 + f Lnet/minecraft/core/Holder$Reference; JUKEBOX_STOP_PLAY F field_39486 + f Lnet/minecraft/core/Holder$Reference; LIGHTNING_STRIKE G field_28152 + c This event is broadcast when lightning strikes a block. + f Lnet/minecraft/core/Holder$Reference; NOTE_BLOCK_PLAY H field_38425 + f Lnet/minecraft/core/Holder$Reference; PRIME_FUSE I field_28727 + c This event is broadcast when an entity such as a creeper or TNT begins exploding. + f Lnet/minecraft/core/Holder$Reference; PROJECTILE_LAND J field_28162 + c This event is broadcast when a projectile hits something. + f Lnet/minecraft/core/Holder$Reference; PROJECTILE_SHOOT K field_28161 + c This event is broadcast when a projectile is fired. + f Lnet/minecraft/core/Holder$Reference; SCULK_SENSOR_TENDRILS_CLICKING L field_38243 + f Lnet/minecraft/core/Holder$Reference; SHEAR M field_28730 + c This event is broadcast when a shear is used. This includes disarming tripwires, harvesting honeycombs, carving pumpkins, etc. + f Lnet/minecraft/core/Holder$Reference; SHRIEK N field_38244 + f Lnet/minecraft/core/Holder$Reference; SPLASH O field_28160 + c This event is broadcast wen an entity splashes in the water. This includes boats paddling or hitting bubble columns. + f Lnet/minecraft/core/Holder$Reference; STEP P field_28155 + c This event is broadcast when an entity moves on the ground. This includes entities such as minecarts. + f Lnet/minecraft/core/Holder$Reference; SWIM Q field_28156 + c This event is broadcast as an entity swims around in water. + f Lnet/minecraft/core/Holder$Reference; TELEPORT R field_39446 + f Lnet/minecraft/core/Holder$Reference; UNEQUIP S field_45787 + f Lnet/minecraft/core/Holder$Reference; RESONATE_1 T field_43308 + f Lnet/minecraft/core/Holder$Reference; RESONATE_2 U field_43309 + f Lnet/minecraft/core/Holder$Reference; RESONATE_3 V field_43310 + f Lnet/minecraft/core/Holder$Reference; RESONATE_4 W field_43311 + f Lnet/minecraft/core/Holder$Reference; RESONATE_5 X field_43312 + f Lnet/minecraft/core/Holder$Reference; RESONATE_6 Y field_43313 + f Lnet/minecraft/core/Holder$Reference; RESONATE_7 Z field_43314 + f Lnet/minecraft/core/Holder$Reference; BLOCK_ACTIVATE a field_28174 + f Lnet/minecraft/core/Holder$Reference; RESONATE_8 aa field_43315 + f Lnet/minecraft/core/Holder$Reference; RESONATE_9 ab field_43316 + f Lnet/minecraft/core/Holder$Reference; RESONATE_10 ac field_43317 + f Lnet/minecraft/core/Holder$Reference; RESONATE_11 ad field_43318 + f Lnet/minecraft/core/Holder$Reference; RESONATE_12 ae field_43319 + f Lnet/minecraft/core/Holder$Reference; RESONATE_13 af field_43320 + f Lnet/minecraft/core/Holder$Reference; RESONATE_14 ag field_43321 + f Lnet/minecraft/core/Holder$Reference; RESONATE_15 ah field_43322 + f I DEFAULT_NOTIFICATION_RADIUS ai field_31449 + c The default notification radius for events to be broadcasted. @see net.minecraft.world.level.gameevent.GameEvent#register + f Lcom/mojang/serialization/Codec; CODEC aj field_51910 + f I notificationRadius ak comp_2193 + c The radius around an event source to broadcast this event. Any listeners within this radius will be notified when the event happens. + f Lnet/minecraft/core/Holder$Reference; BLOCK_ATTACH b field_28172 + c This event is broadcast when a block is attached to another. For example when the tripwire is attached to a tripwire hook. + f Lnet/minecraft/core/Holder$Reference; BLOCK_CHANGE c field_28733 + c This event is broadcast when a block is changed. For example when a flower is removed from a flower pot. + f Lnet/minecraft/core/Holder$Reference; BLOCK_CLOSE d field_28169 + c This event is broadcast when a block such as a door, trap door, or gate is closed. + f Lnet/minecraft/core/Holder$Reference; BLOCK_DEACTIVATE e field_28175 + f Lnet/minecraft/core/Holder$Reference; BLOCK_DESTROY f field_28165 + c This event is broadcast when a block is destroyed or picked up by an enderman. + f Lnet/minecraft/core/Holder$Reference; BLOCK_DETACH g field_28173 + c This event is broadcast when a block is detached from another block. For example when the tripwire is removed from the hook. + f Lnet/minecraft/core/Holder$Reference; BLOCK_OPEN h field_28168 + c This event is broadcast when a block such as a door, trap door, or gate has been opened. + f Lnet/minecraft/core/Holder$Reference; BLOCK_PLACE i field_28164 + c This event is broadcast when a block is placed in the world. + f Lnet/minecraft/core/Holder$Reference; CONTAINER_CLOSE j field_28177 + c This event is broadcast when a block with a storage inventory such as a chest or barrel is closed. Some entities like a minecart with chest may also cause this event to be broadcast. + f Lnet/minecraft/core/Holder$Reference; CONTAINER_OPEN k field_28176 + c This event is broadcast when a block with a storage inventory such as a chest or barrel is opened. Some entities like a minecart with chest may also cause this event to be broadcast. + f Lnet/minecraft/core/Holder$Reference; DRINK l field_28734 + f Lnet/minecraft/core/Holder$Reference; EAT m field_28735 + c This event is broadcast when an entity consumes food. This includes animals eating grass and other sources of food. + f Lnet/minecraft/core/Holder$Reference; ELYTRA_GLIDE n field_28158 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DAMAGE o field_28736 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DIE p field_37676 + f Lnet/minecraft/core/Holder$Reference; ENTITY_DISMOUNT q field_42479 + f Lnet/minecraft/core/Holder$Reference; ENTITY_INTERACT r field_28725 + f Lnet/minecraft/core/Holder$Reference; ENTITY_MOUNT s field_42480 + f Lnet/minecraft/core/Holder$Reference; ENTITY_PLACE t field_28738 + c This event is broadcast when an entity is artificially placed in the world using an item. For example when a spawn egg is used. + f Lnet/minecraft/core/Holder$Reference; ENTITY_ACTION u field_45148 + f Lnet/minecraft/core/Holder$Reference; EQUIP v field_28739 + c This event is broadcast when an item is equipped to an entity or armor stand. + f Lnet/minecraft/core/Holder$Reference; EXPLODE w field_28178 + c This event is broadcast when an entity such as a creeper, tnt, or a firework explodes. + f Lnet/minecraft/core/Holder$Reference; FLAP x field_28157 + c This event is broadcast when a flying entity such as the ender dragon flaps its wings. + f Lnet/minecraft/core/Holder$Reference; FLUID_PICKUP y field_28167 + c This event is broadcast when a fluid is picked up. This includes using a bucket, harvesting honey, filling a bottle, and removing fluid from a cauldron. + f Lnet/minecraft/core/Holder$Reference; FLUID_PLACE z field_28166 + c This event is broadcast when fluid is placed. This includes adding fluid to a cauldron and placing a bucket of fluid. + m ()I notificationRadius a comp_2193 + m (Ljava/lang/String;)Lnet/minecraft/core/Holder$Reference; register a method_32939 + p 0 name + m (Ljava/lang/String;I)Lnet/minecraft/core/Holder$Reference; register a method_32940 + p 0 name + p 1 notificationRadius + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_55782 + p 0 registry + m (I)V + p 1 notificationRadius + m ()V +c net/minecraft/world/level/gameevent/GameEvent$Context dxz$a net/minecraft/class_5712$class_7397 + f Lnet/minecraft/world/entity/Entity; sourceEntity a comp_713 + f Lnet/minecraft/world/level/block/state/BlockState; affectedState b comp_714 + m ()Lnet/minecraft/world/entity/Entity; sourceEntity a comp_713 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43285 + p 0 sourceEntity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43286 + p 0 sourceEntity + p 1 affectedState + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/gameevent/GameEvent$Context; of a method_43287 + p 0 affectedState + m ()Lnet/minecraft/world/level/block/state/BlockState; affectedState b comp_714 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/gameevent/GameEvent$ListenerInfo dxz$b net/minecraft/class_5712$class_7447 + f Lnet/minecraft/core/Holder; gameEvent a field_39177 + f Lnet/minecraft/world/phys/Vec3; source b field_39178 + f Lnet/minecraft/world/level/gameevent/GameEvent$Context; context c field_39179 + f Lnet/minecraft/world/level/gameevent/GameEventListener; recipient d field_39180 + f D distanceToRecipient e field_39181 + m ()Lnet/minecraft/core/Holder; gameEvent a method_43724 + m (Lnet/minecraft/world/level/gameevent/GameEvent$ListenerInfo;)I compareTo a method_43725 + p 1 other + m ()Lnet/minecraft/world/phys/Vec3; source b method_43726 + m ()Lnet/minecraft/world/level/gameevent/GameEvent$Context; context c method_43727 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; recipient d method_43728 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListener;Lnet/minecraft/world/phys/Vec3;)V + p 1 gameEvent + p 2 source + p 3 context + p 4 recipient + p 5 pos +c net/minecraft/world/level/gameevent/GameEventDispatcher dya net/minecraft/class_7719 + f Lnet/minecraft/server/level/ServerLevel; level a field_40352 + m (Ljava/util/List;)V handleGameEventMessagesInQueue a method_45491 + p 1 listenerInfos + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListener;Lnet/minecraft/world/phys/Vec3;)V method_45492 a method_45492 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)V post a method_45490 + p 1 gameEvent + p 2 pos + p 3 context + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/gameevent/GameEventListener dyb net/minecraft/class_5714 + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getListenerSource a method_32946 + c Gets the position of the listener itself. + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;)Z handleGameEvent a method_32947 + p 1 level + p 2 gameEvent + p 3 context + p 4 pos + m ()I getListenerRadius b method_32948 + c Gets the listening radius of the listener. Events within this radius will notify the listener when broadcasted. + m ()Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; getDeliveryMode c method_45472 +c net/minecraft/world/level/gameevent/GameEventListener$DeliveryMode dyb$a net/minecraft/class_5714$class_7720 + f Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; UNSPECIFIED a field_40353 + f Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; BY_DISTANCE b field_40354 + f [Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; $VALUES c field_40355 + m ()[Lnet/minecraft/world/level/gameevent/GameEventListener$DeliveryMode; $values a method_45493 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/gameevent/GameEventListener$Provider dyb$b net/minecraft/class_5714$class_8513 + m ()Lnet/minecraft/world/level/gameevent/GameEventListener; getListener c method_51358 +c net/minecraft/world/level/gameevent/GameEventListenerRegistry dyc net/minecraft/class_5713 + f Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry; NOOP a field_28181 + m ()Z isEmpty a method_32942 + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V register a method_32944 + p 1 listener + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/level/gameevent/GameEventListenerRegistry$ListenerVisitor;)Z visitInRangeListeners a method_32943 + p 1 gameEvent + p 2 pos + p 3 context + p 4 visitor + m (Lnet/minecraft/world/level/gameevent/GameEventListener;)V unregister b method_32945 + p 1 listener + m ()V +c net/minecraft/world/level/gameevent/GameEventListenerRegistry$1 dyc$1 net/minecraft/class_5713$1 + m ()V +c net/minecraft/world/level/gameevent/GameEventListenerRegistry$ListenerVisitor dyc$a net/minecraft/class_5713$class_7721 +c net/minecraft/world/level/gameevent/PositionSource dyd net/minecraft/class_5716 + f Lcom/mojang/serialization/Codec; CODEC c field_28184 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC d field_48379 + m ()Lnet/minecraft/world/level/gameevent/PositionSourceType; getType a method_32955 + m (Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getPosition a method_32956 + p 1 level + m ()V +c net/minecraft/world/level/gameevent/PositionSourceType dye net/minecraft/class_5717 + f Lnet/minecraft/world/level/gameevent/PositionSourceType; BLOCK a field_28185 + c This PositionSource type represents blocks within the world and a fixed position. + f Lnet/minecraft/world/level/gameevent/PositionSourceType; ENTITY b field_28186 + c This PositionSource type represents an entity within the world. This source type will keep a reference to the entity itself. + m ()Lcom/mojang/serialization/MapCodec; codec a method_32957 + m (Ljava/lang/String;Lnet/minecraft/world/level/gameevent/PositionSourceType;)Lnet/minecraft/world/level/gameevent/PositionSourceType; register a method_32959 + c Registers a new PositionSource type with the game registry.\n@see net.minecraft.core.Registry#POSITION_SOURCE_TYPE\n@return The newly registered source type. + p 0 id + c The Id to register the type to. + p 1 type + c The type to register. + m ()Lnet/minecraft/network/codec/StreamCodec; streamCodec b method_56123 + m ()V +c net/minecraft/world/level/gameevent/package-info dyf net/minecraft/class_6105 +c net/minecraft/world/level/gameevent/vibrations/VibrationInfo dyg net/minecraft/class_7269 + f Lcom/mojang/serialization/Codec; CODEC a field_38245 + f Lnet/minecraft/core/Holder; gameEvent b comp_657 + f F distance c comp_658 + f Lnet/minecraft/world/phys/Vec3; pos d comp_659 + f Ljava/util/UUID; uuid e comp_660 + f Ljava/util/UUID; projectileOwnerUuid f comp_681 + f Lnet/minecraft/world/entity/Entity; entity g comp_661 + m ()Lnet/minecraft/core/Holder; gameEvent a comp_657 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getEntity a method_42348 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Ljava/util/UUID; getProjectileOwner a method_42684 + p 0 entity + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42349 a method_42349 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Ljava/util/Optional; method_42686 a method_42686 + m (Lnet/minecraft/core/Holder;Ljava/lang/Float;Lnet/minecraft/world/phys/Vec3;Ljava/util/Optional;Ljava/util/Optional;)Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; method_42685 a method_42685 + m ()F distance b comp_658 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; getProjectileOwner b method_42687 + p 1 level + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/projectile/Projectile; method_42688 b method_42688 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Ljava/util/Optional; method_42689 b method_42689 + m ()Lnet/minecraft/world/phys/Vec3; pos c comp_659 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_42690 c method_42690 + m (Lnet/minecraft/world/entity/Entity;)Z method_42691 c method_42691 + m ()Ljava/util/UUID; uuid d comp_660 + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_42350 d method_42350 + m ()Ljava/util/UUID; projectileOwnerUuid e comp_681 + m ()Lnet/minecraft/world/entity/Entity; entity f comp_661 + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Ljava/util/UUID;Ljava/util/UUID;)V + p 1 gameEvent + p 2 distance + p 3 pos + p 4 uuid + p 5 projectileOwnerUuid + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/Entity;)V + p 1 gameEvent + p 2 distance + p 3 pos + p 4 entity + m (Lnet/minecraft/core/Holder;FLnet/minecraft/world/phys/Vec3;Ljava/util/UUID;Ljava/util/UUID;Lnet/minecraft/world/entity/Entity;)V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSelector dyh net/minecraft/class_7722 + f Lcom/mojang/serialization/Codec; CODEC a field_40359 + f Ljava/util/Optional; currentVibrationData b field_40360 + m ()V startOver a method_45501 + m (J)Ljava/util/Optional; chosenCandidate a method_45502 + p 1 tick + m (JLnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Lorg/apache/commons/lang3/tuple/Pair; method_45503 a method_45503 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45504 a method_45504 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;J)V addCandidate a method_45505 + p 1 vibrationInfo + p 2 tick + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;)Ljava/lang/Long; method_45506 a method_45506 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;J)Z shouldReplaceVibration b method_45507 + p 1 vibrationInfo + p 2 tick + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;)Ljava/util/Optional; method_45508 b method_45508 + m (Ljava/util/Optional;J)V + p 1 event + p 2 tick + m ()V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem dyi net/minecraft/class_8514 + f Ljava/util/List; RESONANCE_EVENTS f_ field_44638 + f I DEFAULT_VIBRATION_FREQUENCY g_ field_47839 + f Ljava/util/function/ToIntFunction; VIBRATION_FREQUENCY_FOR_EVENT h_ field_44639 + m (Lnet/minecraft/resources/ResourceKey;)I getGameEventFrequency a method_51385 + p 0 eventKey + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_51383 a method_51383 + m (FI)I getRedstoneStrengthForDistance a_ method_51384 + p 0 distance + p 1 maxDistance + m (Lnet/minecraft/core/Holder;)I getGameEventFrequency a_ method_55783 + p 0 gameEvent + m (I)Lnet/minecraft/resources/ResourceKey; getResonanceEventByFrequency b method_51386 + p 0 frequency + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; getVibrationData gm method_51298 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User; getVibrationUser gn method_51299 + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data dyi$a net/minecraft/class_8514$class_8515 + f Lcom/mojang/serialization/Codec; CODEC a field_44640 + f Ljava/lang/String; NBT_TAG_KEY b field_44641 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; currentVibration c field_44642 + f I travelTimeInTicks d field_44643 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector; selectionStrategy e field_44644 + f Z reloadVibrationParticle f field_44645 + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector; getSelectionStrategy a method_51387 + m (I)V setTravelTimeInTicks a method_51388 + p 1 travelTimeInTicks + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51389 a method_51389 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)V setCurrentVibration a method_51390 + p 1 currentVibration + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;)Ljava/util/Optional; method_51391 a method_51391 + m (Ljava/util/Optional;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;Ljava/lang/Integer;)Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data; method_51392 a method_51392 + m (Z)V setReloadVibrationParticle a method_51393 + p 1 reloadVibrationParticle + m ()Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo; getCurrentVibration b method_51394 + m ()I getTravelTimeInTicks c method_51395 + m ()V decrementTravelTime d method_51396 + m ()Z shouldReloadVibrationParticle e method_51397 + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSelector;IZ)V + p 1 currentVibration + p 2 selectionStrategy + p 3 travelTimeInTicks + p 4 reloadVibrationParticle + m ()V + m ()V +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Listener dyi$b net/minecraft/class_8514$class_8516 + f Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem; system a field_44646 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V scheduleVibration a method_51399 + p 1 level + p 2 data + p 3 gameEvent + p 4 context + p 5 pos + p 6 sensorPos + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V method_51398 a method_51398 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z isOccluded a method_51400 + p 0 level + p 1 eventPos + p 2 vibrationUserPos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51401 a method_51401 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)F distanceBetweenInBlocks a method_51402 + p 0 pos1 + p 1 pos2 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;Lnet/minecraft/world/phys/Vec3;)V forceScheduleVibration b method_51403 + p 1 level + p 2 gameEvent + p 3 context + p 4 pos + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem;)V + p 1 system +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$Ticker dyi$c net/minecraft/class_8514$class_8517 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V trySelectAndScheduleVibration a method_51404 + p 0 level + p 1 data + p 2 user + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)Z receiveVibration a method_51405 + p 0 level + p 1 data + p 2 user + p 3 vibrationInfo + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V tick a method_51406 + p 0 level + p 1 data + p 2 user + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)Z areAdjacentChunksTicking a method_51407 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationInfo;)V method_51408 a method_51408 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$Data;Lnet/minecraft/world/level/gameevent/vibrations/VibrationSystem$User;)V tryReloadVibrationParticle b method_51409 + p 0 level + p 1 data + p 2 user +c net/minecraft/world/level/gameevent/vibrations/VibrationSystem$User dyi$d net/minecraft/class_8514$class_5719 + m ()I getListenerRadius a method_49797 + m (F)I calculateTravelTimeInTicks a method_51410 + p 1 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;F)V onReceiveVibration a method_32969 + p 1 level + p 2 pos + p 3 gameEvent + p 4 entity + p 5 playerEntity + p 6 distance + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)Z canReceiveVibration a method_32970 + p 1 level + p 2 pos + p 3 gameEvent + p 4 context + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/gameevent/GameEvent$Context;)Z isValidVibration a method_42324 + p 1 gameEvent + p 2 context + m ()Lnet/minecraft/world/level/gameevent/PositionSource; getPositionSource b method_51300 + m ()Lnet/minecraft/tags/TagKey; getListenableEvents c method_42210 + m ()Z canTriggerAvoidVibration d method_43695 + m ()V onDataChanged e method_42672 + m ()Z requiresAdjacentChunksToBeTicking f method_51363 +c net/minecraft/world/level/gameevent/vibrations/package-info dyj net/minecraft/class_6106 +c net/minecraft/world/level/levelgen/Aquifer dyk net/minecraft/class_6350 + c Aquifers are responsible for non-sea level fluids found in terrain generation, but also managing that different aquifers don't intersect with each other in ways that would create undesirable fluid placement.\nThe aquifer interface itself is a modifier on a per-block basis. It computes a block state to be placed for each position in the world.\n

\nAquifers work by first partitioning a single chunk into a low resolution grid. They then generate, via various noise layers, an {@link NoiseBasedAquifer.AquiferStatus} at each grid point.\nAt each point, the grid cell containing that point is calculated, and then of the eight grid corners, the three closest aquifers are found, by square euclidean distance.\nBorders between aquifers are created by comparing nearby aquifers to see if the given point is near-equidistant from them, indicating a border if so, or fluid/air depending on the aquifer height if not. + m ()Z shouldScheduleFluidUpdate a method_33742 + c Returns {@code true} if there should be a fluid update scheduled - due to a fluid block being placed in a possibly unsteady position - at the last position passed into {@link #computeState}.\nThis must be invoked only after {@link #computeState}, and will be using the same parameters as that method. + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)Lnet/minecraft/world/level/levelgen/Aquifer; createDisabled a method_36381 + c Creates a disabled, or no-op aquifer. This will fill any open areas below sea level with the default fluid. + p 0 defaultFluid + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)Lnet/minecraft/world/level/block/state/BlockState; computeSubstance a method_38317 + p 1 context + p 2 substance + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;IILnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)Lnet/minecraft/world/level/levelgen/Aquifer; create a method_36382 + c Creates a standard noise based aquifer. This aquifer will place liquid (both water and lava), air, and stone as described above. + p 0 chunk + p 1 chunkPos + p 2 noiseRouter + p 3 positionalRandomFactory + p 4 minY + p 5 height + p 6 globalFluidPicker +c net/minecraft/world/level/levelgen/Aquifer$1 dyk$1 net/minecraft/class_6350$1 + f Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; val$fluidRule a field_34577 + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)V +c net/minecraft/world/level/levelgen/Aquifer$FluidPicker dyk$a net/minecraft/class_6350$class_6565 +c net/minecraft/world/level/levelgen/Aquifer$FluidStatus dyk$b net/minecraft/class_6350$class_6351 + f I fluidLevel a field_33576 + c The y height of the aquifer. + f Lnet/minecraft/world/level/block/state/BlockState; fluidType b field_33577 + c The fluid state the aquifer is filled with. + m (I)Lnet/minecraft/world/level/block/state/BlockState; at a method_38318 + p 1 y + m (ILnet/minecraft/world/level/block/state/BlockState;)V + p 1 fluidLevel + p 2 fluidType +c net/minecraft/world/level/levelgen/Aquifer$NoiseBasedAquifer dyk$c net/minecraft/class_6350$class_5832 + f I gridSizeX A field_28825 + f I gridSizeZ B field_28826 + f [[I SURFACE_SAMPLING_OFFSETS_IN_CHUNKS C field_34581 + f I X_RANGE a field_31451 + f I Y_RANGE b field_31452 + f I Z_RANGE c field_31453 + f I X_SEPARATION d field_31454 + f I Y_SEPARATION e field_31455 + f I Z_SEPARATION f field_31456 + f I X_SPACING g field_31457 + f I Y_SPACING h field_31458 + f I Z_SPACING i field_31459 + f I MAX_REASONABLE_DISTANCE_TO_AQUIFER_CENTER j field_36220 + f D FLOWING_UPDATE_SIMULARITY k field_36221 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk l field_34578 + f Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise m field_28813 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise n field_35122 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise o field_35123 + f Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise p field_33575 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; positionalRandomFactory q field_34579 + f [Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; aquiferCache r field_28816 + f [J aquiferLocationCache s field_28817 + f Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; globalFluidPicker t field_34580 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion u field_38246 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth v field_38247 + f Z shouldScheduleFluidUpdate w field_28820 + f I minGridX x field_28822 + f I minGridY y field_28823 + f I minGridZ z field_28824 + m (I)I gridX a method_33734 + p 1 x + m (II)D similarity a method_33736 + c Compares two distances (between aquifers).\n@return {@code 1.0} if the distances are equal, and returns smaller values the more different in absolute value the two distances are. + p 0 firstDistance + p 1 secondDistance + m (III)I getIndex a method_33741 + c @return A cache index based on grid positions. + p 1 gridX + p 2 gridY + p 3 gridZ + m (IIII)I computeRandomizedFluidSurfaceLevel a method_42352 + p 1 x + p 2 y + p 3 z + p 4 maxSurfaceLevel + m (IIILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;I)Lnet/minecraft/world/level/block/state/BlockState; computeFluidType a method_42353 + p 1 x + p 2 y + p 3 z + p 4 fluidStatus + p 5 surfaceLevel + m (IIILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;IZ)I computeSurfaceLevel a method_42354 + p 1 x + p 2 y + p 3 z + p 4 fluidStatus + p 5 maxSurfaceLevel + p 6 fluidPresent + m (J)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; getAquiferStatus a method_33738 + c Calculates the aquifer at a given location. Internally references a cache using the grid positions as an index. If the cache is not populated, computes a new aquifer at that grid location using {@link #computeFluid}. + p 1 packedPos + c The aquifer block position, packed into a {@code long}. + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;Lorg/apache/commons/lang3/mutable/MutableDouble;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;)D calculatePressure a method_33735 + p 1 context + p 2 substance + p 3 firstFluid + p 4 secondFluid + m (I)I gridY b method_33740 + p 1 y + m (III)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; computeFluid b method_40463 + p 1 x + p 2 y + p 3 z + m (I)I gridZ c method_33743 + p 1 z + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;IILnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;)V + p 1 noiseChunk + p 2 chunkPos + p 3 noiseRouter + p 4 positionalRandomFactory + p 5 minY + p 6 height + p 7 globalFluidPicker + m ()V +c net/minecraft/world/level/levelgen/Beardifier dyl net/minecraft/class_5817 + c Modifies terrain noise to be flatter near structures such as villages. + f I BEARD_KERNEL_RADIUS a field_31461 + f I BEARD_KERNEL_SIZE f field_31462 + f [F BEARD_KERNEL g field_28741 + f Lit/unimi/dsi/fastutil/objects/ObjectListIterator; pieceIterator h field_28744 + f Lit/unimi/dsi/fastutil/objects/ObjectListIterator; junctionIterator i field_28745 + m (DDD)D getBuryContribution a method_33832 + p 0 x + p 2 y + p 4 z + m (I)Z isInKernelRange a method_42692 + p 0 value + m (IDI)D computeBeardContribution a method_42693 + p 0 x + p 1 y + p 3 z + m (III)D computeBeardContribution a method_33642 + p 0 x + p 1 y + p 2 z + m (IIII)D getBeardContribution a method_33641 + p 0 x + p 1 y + p 2 z + p 3 height + m (Lnet/minecraft/world/level/ChunkPos;Lit/unimi/dsi/fastutil/objects/ObjectList;IILit/unimi/dsi/fastutil/objects/ObjectList;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_42694 a method_42694 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/levelgen/Beardifier; forStructuresInChunk a method_42695 + p 0 structureManager + p 1 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Z method_42696 a method_42696 + m ([F)V method_33640 a method_33640 + m (Lit/unimi/dsi/fastutil/objects/ObjectListIterator;Lit/unimi/dsi/fastutil/objects/ObjectListIterator;)V + p 1 pieceIterator + p 2 junctionIterator + m ()V +c net/minecraft/world/level/levelgen/Beardifier$1 dyl$1 net/minecraft/class_5817$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$TerrainAdjustment a field_38426 + m ()V +c net/minecraft/world/level/levelgen/Beardifier$Rigid dyl$a net/minecraft/class_5817$class_7301 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; box a comp_682 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdjustment b comp_683 + f I groundLevelDelta c comp_684 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; box a comp_682 + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdjustment b comp_683 + m ()I groundLevelDelta c comp_684 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;I)V +c net/minecraft/world/level/levelgen/BelowZeroRetrogen dym net/minecraft/class_6746 + f Lcom/mojang/serialization/Codec; CODEC a field_35480 + f Lnet/minecraft/world/level/LevelHeightAccessor; UPGRADE_HEIGHT_ACCESSOR b field_35591 + f Ljava/util/BitSet; EMPTY c field_35481 + f Lcom/mojang/serialization/Codec; BITSET_CODEC d field_35482 + f Lcom/mojang/serialization/Codec; NON_EMPTY_CHUNK_STATUS e field_35483 + f Ljava/util/Set; RETAINED_RETROGEN_BIOMES f field_36192 + f Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus g field_35484 + f Ljava/util/BitSet; missingBedrock h field_35485 + m ()Lnet/minecraft/world/level/chunk/status/ChunkStatus; targetStatus a method_39319 + m (II)Z hasBedrockHole a method_39895 + p 1 x + p 2 z + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39321 a method_39321 + m (Lnet/minecraft/world/level/biome/BiomeResolver;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/biome/BiomeResolver; getBiomeResolver a method_39767 + p 0 resolver + p 1 access + m (Lnet/minecraft/world/level/biome/BiomeResolver;Ljava/util/function/Predicate;Lnet/minecraft/world/level/chunk/ChunkAccess;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_39768 a method_39768 + m (Lnet/minecraft/world/level/chunk/ProtoChunk;)V replaceOldBedrock a method_39467 + p 0 chunk + m (Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/core/BlockPos;)V method_39896 a method_39896 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;)Lcom/mojang/serialization/DataResult; method_39322 a method_39322 + m (Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen;)Ljava/util/Optional; method_39323 a method_39323 + m (Ljava/util/BitSet;)Ljava/util/stream/LongStream; method_39324 a method_39324 + m (Ljava/util/stream/LongStream;)Ljava/util/BitSet; method_39325 a method_39325 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/BelowZeroRetrogen; read a method_39326 + p 0 tag + m ()Z hasBedrockHoles b method_39897 + m (Lnet/minecraft/world/level/chunk/ProtoChunk;)V applyBedrockMask b method_39898 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/ProtoChunk;Lnet/minecraft/core/BlockPos;)V method_39471 b method_39471 + m ()Ljava/lang/String; method_49529 c method_49529 + m (Lnet/minecraft/world/level/chunk/status/ChunkStatus;Ljava/util/Optional;)V + p 1 targetStatus + p 2 missingBedrock + m ()V +c net/minecraft/world/level/levelgen/BelowZeroRetrogen$1 dym$1 net/minecraft/class_6746$1 + m ()V +c net/minecraft/world/level/levelgen/BitRandomSource dyn net/minecraft/class_6566 + f F FLOAT_MULTIPLIER b field_34582 + f D DOUBLE_MULTIPLIER c field_34583 + m (I)I next c method_43156 + p 1 size +c net/minecraft/world/level/levelgen/Column dyo net/minecraft/class_5721 + c A representation of an integer valued interval, either bounded or unbounded.\nWhile the class itself does not imply any coordinate in particular, this is practically used to represent a column in the Y direction. + m ()Lnet/minecraft/world/level/levelgen/Column; line a method_32980 + c @return A column of the unbounded interval (-infinity, infinity). + m (I)Lnet/minecraft/world/level/levelgen/Column; below a method_32981 + c @return A column of the unbounded interval (-infinity, ceiling). + p 0 ceiling + m (II)Lnet/minecraft/world/level/levelgen/Column$Range; around a method_35326 + c @return A column of the closed interval [floor, ceiling]. + p 0 floor + p 1 ceiling + m (Lnet/minecraft/world/level/LevelSimulatedReader;ILjava/util/function/Predicate;Ljava/util/function/Predicate;Lnet/minecraft/core/BlockPos$MutableBlockPos;ILnet/minecraft/core/Direction;)Ljava/util/OptionalInt; scanDirection a method_34280 + c Scans for a sequence of states in a given {@code direction}, up to a length of {@code maxDistance} which satisfy {@code columnPredicate}, and ending with a state which satisfies {@code tipPredicate}.\n@return The y position of the tip, if found. + p 0 level + p 1 maxDistance + p 2 columnPredicate + p 3 tipPredicate + p 4 mutablePos + p 5 startY + p 6 direction + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;ILjava/util/function/Predicate;Ljava/util/function/Predicate;)Ljava/util/Optional; scan a method_32982 + c Scans for a column of states satisfying {@code columnPredicate}, up to a length of {@code maxDistance} from the origin, and ending with a state which satisfies {@code tipPredicate}.\n@return A column representing the tips found. The column will be bounded if a tip was reached in the given direction, unbounded otherwise. + p 0 level + p 1 pos + p 2 maxDistance + p 3 columnPredicate + p 4 tipPredicate + m (Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; withFloor a method_32983 + p 1 floor + m (Ljava/util/OptionalInt;Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; create a method_32984 + p 0 floor + p 1 ceiling + m ()Ljava/util/OptionalInt; getCeiling b method_32985 + m (I)Lnet/minecraft/world/level/levelgen/Column; fromHighest b method_35327 + c @return A column of the unbounded interval (-infinity, ceiling]. + p 0 ceiling + m (II)Lnet/minecraft/world/level/levelgen/Column$Range; inside b method_32986 + c @return A column of the open interval (floor, ceiling). + p 0 floor + p 1 ceiling + m (Ljava/util/OptionalInt;)Lnet/minecraft/world/level/levelgen/Column; withCeiling b method_35328 + p 1 ceiling + m ()Ljava/util/OptionalInt; getFloor c method_32987 + m (I)Lnet/minecraft/world/level/levelgen/Column; above c method_32988 + c @return A column of the unbounded interval (floor, infinity). + p 0 floor + m ()Ljava/util/OptionalInt; getHeight d method_33385 + m (I)Lnet/minecraft/world/level/levelgen/Column; fromLowest d method_35329 + c @return A column of the unbounded interval [floor, infinity). + p 0 floor + m ()V +c net/minecraft/world/level/levelgen/Column$Line dyo$a net/minecraft/class_5721$class_5722 + f Lnet/minecraft/world/level/levelgen/Column$Line; INSTANCE a field_28197 + m ()V + m ()V +c net/minecraft/world/level/levelgen/Column$Range dyo$b net/minecraft/class_5721$class_5723 + f I floor a field_28198 + f I ceiling b field_28199 + m ()I ceiling e method_32990 + m ()I floor f method_32991 + m ()I height g method_32992 + m (II)V + p 1 floor + p 2 ceiling +c net/minecraft/world/level/levelgen/Column$Ray dyo$c net/minecraft/class_5721$class_5724 + f I edge a field_28200 + f Z pointingUp b field_28201 + m (IZ)V + p 1 edge + p 2 pointingUp +c net/minecraft/world/level/levelgen/DebugLevelSource dyp net/minecraft/class_2891 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24768 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_13162 + f Lnet/minecraft/world/level/block/state/BlockState; BARRIER e field_13164 + f I HEIGHT f field_31465 + f I BARRIER_HEIGHT g field_31466 + f I BLOCK_MARGIN h field_31467 + f Ljava/util/List; ALL_BLOCKS i field_13163 + c A list of all valid block states. + f I GRID_WIDTH j field_13161 + f I GRID_HEIGHT k field_13160 + m (II)Lnet/minecraft/world/level/block/state/BlockState; getBlockStateFor a method_12578 + p 0 chunkX + p 1 chunkZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40465 a method_40465 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/stream/Stream; method_12579 a method_12579 + m (Lnet/minecraft/core/Holder$Reference;)V + p 1 biome + m ()V +c net/minecraft/world/level/levelgen/Density dyq net/minecraft/class_6567 + f D SURFACE a field_34584 + f D UNRECOVERABLY_DENSE b field_34585 + f D UNRECOVERABLY_THIN c field_34586 + m ()V +c net/minecraft/world/level/levelgen/DensityFunction dyr net/minecraft/class_6910 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_37057 + f Lcom/mojang/serialization/Codec; CODEC c field_37058 + f Lcom/mojang/serialization/Codec; HOLDER_HELPER_CODEC d field_37059 + m ()D minValue a comp_377 + m (DD)Lnet/minecraft/world/level/levelgen/DensityFunction; clamp a method_40468 + p 1 minValue + p 3 maxValue + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)D compute a method_40464 + p 1 context + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunction; mapAll a method_40469 + p 1 visitor + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/core/Holder; method_41061 a method_41061 + m ([DLnet/minecraft/world/level/levelgen/DensityFunction$ContextProvider;)V fillArray a method_40470 + p 1 array + p 2 contextProvider + m ()D maxValue b comp_378 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec c method_41062 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; abs d method_40471 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; square e method_40472 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; cube f method_40473 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; halfNegative g method_40474 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; quarterNegative h method_40475 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; squeeze i method_40476 + m ()V +c net/minecraft/world/level/levelgen/DensityFunction$ContextProvider dyr$a net/minecraft/class_6910$class_6911 + m (I)Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; forIndex a method_40477 + p 1 arrayIndex + m ([DLnet/minecraft/world/level/levelgen/DensityFunction;)V fillAllDirectly a method_40478 + p 1 values + p 2 function +c net/minecraft/world/level/levelgen/DensityFunction$FunctionContext dyr$b net/minecraft/class_6910$class_6912 + m ()I blockX a comp_371 + m ()I blockY b comp_372 + m ()I blockZ c comp_373 + m ()Lnet/minecraft/world/level/levelgen/blending/Blender; getBlender d method_39327 +c net/minecraft/world/level/levelgen/DensityFunction$NoiseHolder dyr$c net/minecraft/class_6910$class_7270 + f Lcom/mojang/serialization/Codec; CODEC a field_38248 + f Lnet/minecraft/core/Holder; noiseData b comp_662 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise c comp_663 + m ()D maxValue a method_42355 + m (DDD)D getValue a method_42356 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; method_42357 a method_42357 + m ()Lnet/minecraft/core/Holder; noiseData b comp_662 + m ()Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise c comp_663 + m (Lnet/minecraft/core/Holder;)V + p 1 noiseData + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/synth/NormalNoise;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunction$SimpleFunction dyr$d net/minecraft/class_6910$class_6913 +c net/minecraft/world/level/levelgen/DensityFunction$SinglePointContext dyr$e net/minecraft/class_6910$class_6914 + f I blockX a comp_371 + f I blockY b comp_372 + f I blockZ c comp_373 + m (III)V +c net/minecraft/world/level/levelgen/DensityFunction$Visitor dyr$f net/minecraft/class_6910$class_6915 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; visitNoise a method_42358 + p 1 noiseHolder +c net/minecraft/world/level/levelgen/DensityFunctions dys net/minecraft/class_6916 + f D MAX_REASONABLE_NOISE_VALUE a field_37060 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC b field_37061 + f Lcom/mojang/serialization/Codec; CODEC c field_37062 + f Lcom/mojang/serialization/Codec; NOISE_VALUE_CODEC d field_37063 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; zero a method_40479 + m (D)Lnet/minecraft/world/level/levelgen/DensityFunction; constant a method_40480 + p 0 value + m (IIDD)Lnet/minecraft/world/level/levelgen/DensityFunction; yClampedGradient a method_40481 + p 0 fromY + p 1 toY + p 2 fromValue + p 4 toValue + m (J)Lnet/minecraft/world/level/levelgen/DensityFunction; endIslands a method_40482 + p 0 seed + m (Lnet/minecraft/util/CubicSpline;)Lnet/minecraft/world/level/levelgen/DensityFunction; spline a method_41528 + p 0 spline + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/DensityFunction; method_41063 a method_41063 + m (Lcom/mojang/serialization/Codec;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; singleArgumentCodec a method_41064 + p 0 codec + p 1 fromFunction + p 2 toFunction + m (Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/util/KeyDispatchDataCodec; makeCodec a method_41065 + p 0 mapCodec + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; interpolated a method_40483 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; mapFromUnitTo a method_40484 + p 0 densityFunction + p 1 fromY + p 3 toY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; rangeChoice a method_40485 + p 0 input + p 1 minInclusive + p 3 maxExclusive + p 5 whenInRange + p 6 whenOutOfRange + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DLnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; lerp a method_42359 + p 0 deltaFunction + p 1 min + p 3 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; add a method_40486 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DLnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftedNoise2d a method_40487 + p 0 shiftX + p 1 shiftZ + p 2 xzScale + p 4 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; lerp a method_40488 + p 0 deltaFunction + p 1 minFunction + p 2 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;)Lnet/minecraft/world/level/levelgen/DensityFunction; map a method_40490 + p 0 input + p 1 type + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper;)Lnet/minecraft/world/level/levelgen/DensityFunction; weirdScaledSampler a method_40491 + p 0 input + p 1 noiseData + p 2 rarityValueMapper + m (Ljava/util/function/BiFunction;Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; doubleFunctionArgumentCodec a method_41068 + p 0 fromFunction + p 1 primary + p 2 secondary + m (Ljava/util/function/Function;Ljava/util/function/Function;)Lnet/minecraft/util/KeyDispatchDataCodec; singleFunctionArgumentCodec a method_41069 + p 0 fromFunction + p 1 toFunction + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/function/BiFunction;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41070 a method_41070 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; noise a method_40493 + p 0 noiseData + m (Lnet/minecraft/core/Holder;D)Lnet/minecraft/world/level/levelgen/DensityFunction; noise a method_40494 + p 0 noiseData + p 1 yScale + m (Lnet/minecraft/core/Holder;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40495 + p 0 noiseData + p 1 fromY + p 3 toY + m (Lnet/minecraft/core/Holder;DDD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40497 + p 0 noiseData + p 1 yScale + p 3 fromY + p 5 toY + m (Lnet/minecraft/core/Holder;DDDD)Lnet/minecraft/world/level/levelgen/DensityFunction; mappedNoise a method_40496 + p 0 noiseData + p 1 xzScale + p 3 yScale + p 5 fromY + p 7 toY + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_41066 + p 0 registry + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Lnet/minecraft/util/KeyDispatchDataCodec;)Lcom/mojang/serialization/MapCodec; register a method_41067 + p 0 registry + p 1 name + p 2 codec + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; blendAlpha b method_40498 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; flatCache b method_40499 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; mul b method_40500 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftA b method_40501 + p 0 noiseData + m (Lnet/minecraft/core/Holder;DD)Lnet/minecraft/world/level/levelgen/DensityFunction; noise b method_40502 + p 0 noiseData + p 1 xzScale + p 3 yScale + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; blendOffset c method_40503 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cache2d c method_40504 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; min c method_40505 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shiftB c method_40506 + p 0 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cacheOnce d method_40507 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; max d method_40508 + p 0 argument1 + p 1 argument2 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/DensityFunction; shift d method_40509 + p 0 noiseData + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; cacheAllInCell e method_40510 + p 0 wrapped + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; blendDensity f method_40512 + p 0 input + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lcom/mojang/datafixers/util/Either; method_41071 g method_41071 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lcom/mojang/serialization/MapCodec; method_42360 h method_42360 + m ()V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Ap2 dys$a net/minecraft/class_6916$class_6917 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; type e comp_374 + f Lnet/minecraft/world/level/levelgen/DensityFunction; argument1 f comp_375 + f Lnet/minecraft/world/level/levelgen/DensityFunction; argument2 g comp_376 + f D minValue h comp_377 + f D maxValue i comp_378 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V +c net/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker dys$b net/minecraft/class_6916$class_7049 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; INSTANCE a field_37076 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; $VALUES f field_37077 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierMarker; $values j method_41077 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker dys$c net/minecraft/class_6916$class_7050 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37078 + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha dys$d net/minecraft/class_6916$class_6919 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; INSTANCE a field_36549 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37079 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; $VALUES f field_36550 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendAlpha; $values j method_40517 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendDensity dys$e net/minecraft/class_6916$class_6920 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input a comp_379 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37080 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$BlendOffset dys$f net/minecraft/class_6916$class_6921 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; INSTANCE a field_36551 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37081 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; $VALUES f field_36552 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$BlendOffset; $values j method_40519 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Clamp dys$g net/minecraft/class_6916$class_6922 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37082 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_380 + f D minValue f comp_377 + f D maxValue g comp_378 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC h field_37083 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41078 a method_41078 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Constant dys$h net/minecraft/class_6916$class_6923 + f D value a comp_381 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37084 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Constant; ZERO f field_36553 + m ()D value j comp_381 + m (D)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$EndIslandDensityFunction dys$i net/minecraft/class_6916$class_6924 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37085 + f F ISLAND_THRESHOLD e field_37677 + f Lnet/minecraft/world/level/levelgen/synth/SimplexNoise; islandNoise f field_36554 + m (Lnet/minecraft/world/level/levelgen/synth/SimplexNoise;II)F getHeightValue a method_41529 + p 0 noise + p 1 x + p 2 z + m (J)V + p 1 seed + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$HolderHolder dys$j net/minecraft/class_6916$class_7051 + f Lnet/minecraft/core/Holder; function a comp_468 + m ()Lnet/minecraft/core/Holder; function j comp_468 + m (Lnet/minecraft/core/Holder;)V +c net/minecraft/world/level/levelgen/DensityFunctions$Mapped dys$k net/minecraft/class_6916$class_6925 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; type a comp_382 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_380 + f D minValue f comp_377 + f D maxValue g comp_378 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;D)D transform a method_40521 + p 0 type + p 1 value + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; create a method_41079 + p 0 type + p 1 input + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; mapAll b method_41080 + p 1 visitor + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; type k comp_382 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;DD)V +c net/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type dys$k$a net/minecraft/class_6916$class_6925$class_6926 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; ABS a field_36555 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; SQUARE b field_36556 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; CUBE c field_36557 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; HALF_NEGATIVE d field_36558 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; QUARTER_NEGATIVE e field_36559 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; SQUEEZE f field_36560 + f Ljava/lang/String; name g field_37086 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec h field_37087 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; $VALUES i field_36561 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped$Type; $values a method_40522 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Mapped; method_41081 a method_41081 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Marker dys$l net/minecraft/class_6916$class_6927 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; type a comp_383 + f Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped e comp_469 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;)V +c net/minecraft/world/level/levelgen/DensityFunctions$Marker$Type dys$l$a net/minecraft/class_6916$class_6927$class_6928 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; Interpolated a field_36562 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; FlatCache b field_36563 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; Cache2D c field_36564 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; CacheOnce d field_36565 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; CacheAllInCell e field_36566 + f Ljava/lang/String; name f field_37088 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec g field_37089 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; $VALUES h field_36567 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; $values a method_40523 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$MarkerOrMarked; method_41082 a method_41082 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$MarkerOrMarked dys$m net/minecraft/class_6916$class_7052 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$Marker$Type; type j comp_383 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped k comp_469 +c net/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd dys$n net/minecraft/class_6916$class_6929 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; specificType e comp_385 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input f comp_380 + f D minValue g comp_377 + f D maxValue h comp_378 + f D argument i comp_386 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; specificType m comp_385 + m ()D argument n comp_386 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;DDD)V +c net/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type dys$n$a net/minecraft/class_6916$class_6929$class_6930 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; MUL a field_36568 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; ADD b field_36569 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; $VALUES c field_36570 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$MulOrAdd$Type; $values a method_40524 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Noise dys$o net/minecraft/class_6916$class_6931 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC a field_37090 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37091 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise f comp_387 + f D xzScale g comp_388 + f D yScale h comp_389 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41083 a method_41083 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise j comp_387 + m ()D xzScale k comp_388 + m ()D yScale l comp_389 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;DD)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$PureTransformer dys$p net/minecraft/class_6916$class_6932 + m (D)D transform a method_40520 + p 1 value + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input aG_ comp_380 +c net/minecraft/world/level/levelgen/DensityFunctions$RangeChoice dys$q net/minecraft/class_6916$class_6933 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC a field_37092 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37093 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input f comp_390 + f D minInclusive g comp_391 + f D maxExclusive h comp_392 + f Lnet/minecraft/world/level/levelgen/DensityFunction; whenInRange i comp_393 + f Lnet/minecraft/world/level/levelgen/DensityFunction; whenOutOfRange j comp_394 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41085 a method_41085 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input j comp_390 + m ()D minInclusive k comp_391 + m ()D maxExclusive l comp_392 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; whenInRange m comp_393 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; whenOutOfRange n comp_394 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Shift dys$r net/minecraft/class_6916$class_6934 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37094 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftA dys$s net/minecraft/class_6916$class_6937 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37095 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftB dys$t net/minecraft/class_6916$class_6938 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise a comp_395 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_37096 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftNoise dys$u net/minecraft/class_6916$class_6939 + m (DDD)D compute a method_40525 + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; offsetNoise j comp_395 +c net/minecraft/world/level/levelgen/DensityFunctions$ShiftedNoise dys$v net/minecraft/class_6916$class_6940 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37097 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftX e comp_396 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftY f comp_397 + f Lnet/minecraft/world/level/levelgen/DensityFunction; shiftZ g comp_398 + f D xzScale h comp_399 + f D yScale i comp_400 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise j comp_664 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC k field_37098 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41090 a method_41090 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftX j comp_396 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftY k comp_397 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; shiftZ l comp_398 + m ()D xzScale m comp_399 + m ()D yScale n comp_400 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise o comp_664 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;DDLnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline dys$w net/minecraft/class_6916$class_7076 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37255 + f Lnet/minecraft/util/CubicSpline; spline e comp_526 + f Lcom/mojang/serialization/Codec; SPLINE_CODEC f field_37678 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC g field_37256 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate; method_41197 a method_41197 + m ()Lnet/minecraft/util/CubicSpline; spline j comp_526 + m (Lnet/minecraft/util/CubicSpline;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate dys$w$a net/minecraft/class_6916$class_7076$class_7135 + f Lcom/mojang/serialization/Codec; CODEC b field_37679 + f Lnet/minecraft/core/Holder; function c comp_536 + m ()Lnet/minecraft/core/Holder; function a comp_536 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Coordinate; mapAll a method_41530 + p 1 visitor + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$Spline$Point;)F apply a method_41531 + p 1 object + m (Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$Spline$Point dys$w$b net/minecraft/class_6916$class_7076$class_7136 + f Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; context a comp_537 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext; context a comp_537 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)V +c net/minecraft/world/level/levelgen/DensityFunctions$TransformerWithContext dys$x net/minecraft/class_6916$class_6943 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)D transform a method_40518 + p 1 context + p 2 value + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; input j comp_379 +c net/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction dys$y net/minecraft/class_6916$class_7055 + f Lorg/slf4j/Logger; LOGGER a field_37110 + m (Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction; create a method_41097 + p 0 type + p 1 argument1 + p 2 argument2 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; type j comp_374 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; argument1 k comp_375 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; argument2 l comp_376 + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type dys$y$a net/minecraft/class_6916$class_7055$class_6918 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; ADD a field_36544 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MUL b field_36545 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MIN c field_36546 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; MAX d field_36547 + f Lnet/minecraft/util/KeyDispatchDataCodec; codec e field_37111 + f Ljava/lang/String; name f field_37112 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; $VALUES g field_36548 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction$Type; $values a method_40516 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunctions$TwoArgumentSimpleFunction; method_41098 a method_41098 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler dys$z net/minecraft/class_6916$class_6944 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37064 + f Lnet/minecraft/world/level/levelgen/DensityFunction; input e comp_379 + f Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise f comp_665 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; rarityValueMapper g comp_408 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC h field_37065 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41072 a method_41072 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder; noise k comp_665 + m ()Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; rarityValueMapper l comp_408 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$NoiseHolder;Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper;)V + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper dys$z$a net/minecraft/class_6916$class_6944$class_7048 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; TYPE1 a field_37066 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; TYPE2 b field_37067 + f Lcom/mojang/serialization/Codec; CODEC c field_37068 + f Ljava/lang/String; name d field_37070 + f Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction; mapper e field_37071 + f D maxRarity f field_37072 + f [Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; $VALUES g field_37073 + m ()[Lnet/minecraft/world/level/levelgen/DensityFunctions$WeirdScaledSampler$RarityValueMapper; $values a method_41074 + m (Ljava/lang/String;ILjava/lang/String;Lit/unimi/dsi/fastutil/doubles/Double2DoubleFunction;D)V + p 3 name + p 4 mapper + p 5 maxRarity + m ()V +c net/minecraft/world/level/levelgen/DensityFunctions$YClampedGradient dys$aa net/minecraft/class_6916$class_6945 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37074 + f I fromY e comp_410 + f I toY f comp_411 + f D fromValue g comp_412 + f D toValue h comp_413 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC i field_37075 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41076 a method_41076 + m ()I fromY j comp_410 + m ()I toY k comp_411 + m ()D fromValue l comp_412 + m ()D toValue m comp_413 + m (IIDD)V + m ()V +c net/minecraft/world/level/levelgen/FlatLevelSource dyt net/minecraft/class_2897 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24769 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings d field_24510 + m (I)[Lnet/minecraft/world/level/block/state/BlockState; method_28001 a method_28001 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40158 a method_40158 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_28002 a method_28002 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder; method_46718 a method_46718 + m (Lnet/minecraft/core/HolderLookup;)Ljava/util/stream/Stream; method_46719 a method_46719 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings h method_28545 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/GenerationStep dyu net/minecraft/class_2893 + c Represents individual steps that the features and carvers chunk status go through, respectively. + m ()V +c net/minecraft/world/level/levelgen/GenerationStep$Carving dyu$a net/minecraft/class_2893$class_2894 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; AIR a field_13169 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; LIQUID b field_13166 + f Lcom/mojang/serialization/Codec; CODEC c field_24770 + f Ljava/lang/String; name d field_13167 + f [Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; $VALUES e field_13170 + m ()Ljava/lang/String; getName a method_12581 + m ()[Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; $values b method_36750 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/GenerationStep$Decoration dyu$b net/minecraft/class_2893$class_2895 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; RAW_GENERATION a field_13174 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; LAKES b field_25186 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; LOCAL_MODIFICATIONS c field_13171 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_STRUCTURES d field_13172 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; SURFACE_STRUCTURES e field_13173 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; STRONGHOLDS f field_25187 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_ORES g field_13176 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; UNDERGROUND_DECORATION h field_13177 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; FLUID_SPRINGS i field_35182 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; VEGETAL_DECORATION j field_13178 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; TOP_LAYER_MODIFICATION k field_13179 + f Lcom/mojang/serialization/Codec; CODEC l field_37680 + f Ljava/lang/String; name m field_37682 + f [Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; $VALUES n field_13181 + m ()Ljava/lang/String; getName a method_41532 + m ()[Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; $values b method_36751 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/GeodeBlockSettings dyv net/minecraft/class_5585 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fillingProvider a field_27295 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; innerLayerProvider b field_27296 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; alternateInnerLayerProvider c field_27297 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; middleLayerProvider d field_27298 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; outerLayerProvider e field_27299 + f Ljava/util/List; innerPlacements f field_27300 + f Lnet/minecraft/tags/TagKey; cannotReplace g field_33769 + f Lnet/minecraft/tags/TagKey; invalidBlocks h field_33931 + f Lcom/mojang/serialization/Codec; CODEC i field_27301 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31887 a method_31887 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/tags/TagKey; method_37255 a method_37255 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/tags/TagKey; method_36995 b method_36995 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Ljava/util/List; method_31886 c method_31886 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31888 d method_31888 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31889 e method_31889 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31890 f method_31890 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31891 g method_31891 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_31892 h method_31892 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/List;Lnet/minecraft/tags/TagKey;Lnet/minecraft/tags/TagKey;)V + p 1 fillingProvider + p 2 innerLayerProvider + p 3 alternateInnerLayerProvider + p 4 middleLayerProvider + p 5 outerLayerProvider + p 6 innerPlacements + p 7 cannotReplace + p 8 invalidBlocks + m ()V +c net/minecraft/world/level/levelgen/GeodeCrackSettings dyw net/minecraft/class_5586 + f Lcom/mojang/serialization/Codec; CODEC a field_27302 + f D generateCrackChance b field_27303 + f D baseCrackSize c field_27304 + f I crackPointOffset d field_27305 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31894 a method_31894 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Integer; method_31893 a method_31893 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Double; method_31895 b method_31895 + m (Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;)Ljava/lang/Double; method_31896 c method_31896 + m (DDI)V + p 1 generateCrackChance + p 3 baseCrackSize + p 5 crackPointOffset + m ()V +c net/minecraft/world/level/levelgen/GeodeLayerSettings dyx net/minecraft/class_5587 + f Lcom/mojang/serialization/Codec; CODEC a field_27306 + f D filling b field_27307 + f D innerLayer c field_27308 + f D middleLayer d field_27309 + f D outerLayer e field_27310 + f Lcom/mojang/serialization/Codec; LAYER_RANGE f field_27311 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_31898 a method_31898 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31897 a method_31897 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31899 b method_31899 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31900 c method_31900 + m (Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;)Ljava/lang/Double; method_31901 d method_31901 + m (DDDD)V + p 1 filling + p 3 innerLayer + p 5 middleLayer + p 7 outerLayer + m ()V +c net/minecraft/world/level/levelgen/Heightmap dyy net/minecraft/class_2902 + f Lorg/slf4j/Logger; LOGGER a field_33770 + f Ljava/util/function/Predicate; NOT_AIR b field_16744 + f Ljava/util/function/Predicate; MATERIAL_MOTION_BLOCKING c field_16745 + f Lnet/minecraft/util/BitStorage; data d field_13192 + f Ljava/util/function/Predicate; isOpaque e field_13193 + f Lnet/minecraft/world/level/chunk/ChunkAccess; chunk f field_13191 + m ()[J getRawData a method_12598 + m (I)I getFirstAvailable a method_12601 + p 1 index + m (II)I getFirstAvailable a method_12603 + p 1 x + p 2 z + m (III)V setHeight a method_12602 + p 1 x + p 2 z + p 3 value + m (IIILnet/minecraft/world/level/block/state/BlockState;)Z update a method_12597 + p 1 x + p 2 y + p 3 z + p 4 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16682 a method_16682 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/Heightmap$Types;[J)V setRawData a method_12600 + p 1 chunk + p 2 type + p 3 data + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/Set;)V primeHeightmaps a method_16684 + p 0 chunk + p 1 types + m (II)I getHighestTaken b method_35334 + p 1 x + p 2 z + m (II)I getIndex c method_12595 + p 0 x + p 1 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 chunk + p 2 type + m ()V +c net/minecraft/world/level/levelgen/Heightmap$Types dyy$a net/minecraft/class_2902$class_2903 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; WORLD_SURFACE_WG a field_13194 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; WORLD_SURFACE b field_13202 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; OCEAN_FLOOR_WG c field_13195 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; OCEAN_FLOOR d field_13200 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; MOTION_BLOCKING e field_13197 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; MOTION_BLOCKING_NO_LEAVES f field_13203 + f Lcom/mojang/serialization/Codec; CODEC g field_24772 + f Ljava/lang/String; serializationKey h field_13204 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; usage i field_13198 + f Ljava/util/function/Predicate; isOpaque j field_16568 + f [Lnet/minecraft/world/level/levelgen/Heightmap$Types; $VALUES k field_13199 + m ()Ljava/lang/String; getSerializationKey a method_12605 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16686 a method_16686 + m ()Z sendToClient b method_16137 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16685 b method_16685 + m ()Z keepAfterWorldgen d method_20454 + m ()Ljava/util/function/Predicate; isOpaque e method_16402 + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Types; $values f method_36752 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/levelgen/Heightmap$Usage;Ljava/util/function/Predicate;)V + p 3 serializationKey + p 4 usage + p 5 isOpaque + m ()V +c net/minecraft/world/level/levelgen/Heightmap$Usage dyy$b net/minecraft/class_2902$class_2904 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; WORLDGEN a field_13207 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; LIVE_WORLD b field_13206 + f Lnet/minecraft/world/level/levelgen/Heightmap$Usage; CLIENT c field_16424 + f [Lnet/minecraft/world/level/levelgen/Heightmap$Usage; $VALUES d field_13208 + m ()[Lnet/minecraft/world/level/levelgen/Heightmap$Usage; $values a method_36753 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/LegacyRandomSource dyz net/minecraft/class_5820 + f I MODULUS_BITS d field_31471 + f J MODULUS_MASK e field_31472 + f J MULTIPLIER f field_31473 + f J INCREMENT g field_31474 + f Ljava/util/concurrent/atomic/AtomicLong; seed h field_28766 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_35124 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/LegacyRandomSource$LegacyPositionalRandomFactory dyz$a net/minecraft/class_5820$class_6671 + f J seed a field_35125 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/MarsagliaPolarGaussian dza net/minecraft/class_6672 + f Lnet/minecraft/util/RandomSource; randomSource a field_35126 + f D nextNextGaussian b field_35127 + f Z haveNextNextGaussian c field_35128 + m ()V reset a method_39541 + m ()D nextGaussian b method_38996 + m (Lnet/minecraft/util/RandomSource;)V + p 1 randomSource +c net/minecraft/world/level/levelgen/NoiseBasedChunkGenerator dzb net/minecraft/class_3754 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24773 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_16648 + f Lnet/minecraft/core/Holder; settings e field_24774 + f Ljava/util/function/Supplier; globalFluidPicker f field_34591 + m (Lnet/minecraft/resources/ResourceKey;)Z stable a method_28548 + p 1 settings + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28550 a method_28550 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; method_38330 a method_38330 + m (Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;IILorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/function/Predicate;)Ljava/util/OptionalInt; iterateNoiseColumn a method_26263 + p 1 level + p 2 random + p 3 x + p 4 z + p 5 column + p 6 stoppingState + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41535 a method_41535 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41536 a method_41536 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;ILnet/minecraft/world/level/levelgen/NoiseSettings;ILnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;I)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38332 a method_38332 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;)Lnet/minecraft/world/level/levelgen/NoiseChunk; createNoiseChunk a method_41537 + p 1 chunk + p 2 structureManager + p 3 blender + p 4 random + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/blending/Blender;)V buildSurface a method_41538 + p 1 chunk + p 2 context + p 3 random + p 4 structureManager + p 5 biomeManager + p 6 biomes + p 7 blender + m (Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;ILnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus;III)Lnet/minecraft/world/level/levelgen/Aquifer$FluidStatus; method_45509 a method_45509 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;)Lnet/minecraft/core/Holder; method_28549 a method_28549 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;IIILnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; debugPreliminarySurfaceLevel a method_38323 + p 1 chunk + p 2 x + p 3 y + p 4 z + p 5 state + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;)Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; createFluidPicker a method_45510 + p 0 settings + m (Lnet/minecraft/world/level/levelgen/RandomState;III)Lnet/minecraft/core/Holder; method_38322 a method_38322 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;II)Lnet/minecraft/world/level/chunk/ChunkAccess; doFill a method_33754 + p 1 blender + p 2 structureManager + p 3 random + p 4 chunk + p 5 minCellY + p 6 cellCountY + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41539 b method_41539 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;)Lnet/minecraft/world/level/biome/BiomeSource; method_28554 b method_28554 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)V doCreateBiomes b method_38327 + p 1 blender + p 2 random + p 3 structureManager + p 4 chunk + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker; method_45511 b method_45511 + m (Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/levelgen/NoiseChunk; method_41540 c method_41540 + m (Lnet/minecraft/world/level/levelgen/blending/Blender;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkAccess;)Lnet/minecraft/world/level/chunk/ChunkAccess; method_38333 c method_38333 + m ()Lnet/minecraft/core/Holder; generatorSettings h method_41541 + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)V + p 1 biomeSource + p 2 settings + m ()V +c net/minecraft/world/level/levelgen/NoiseChunk dzc net/minecraft/class_6568 + f I cellStartBlockX A field_36594 + f I cellStartBlockY B field_36572 + f I cellStartBlockZ C field_36573 + f I inCellX D field_36574 + f I inCellY E field_36575 + f I inCellZ F field_36576 + f J interpolationCounter G field_36577 + f J arrayInterpolationCounter H field_36578 + f I arrayIndex I field_36579 + f Lnet/minecraft/world/level/levelgen/DensityFunction$ContextProvider; sliceFillingContextProvider J field_36580 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings a field_35674 + f I cellCountXZ b field_34599 + f I cellCountY c field_34598 + f I cellNoiseMinY d field_34600 + f I firstCellX e field_34601 + f I firstCellZ f field_34602 + f I firstNoiseX g field_34603 + f I firstNoiseZ h field_34604 + f Ljava/util/List; interpolators i field_34605 + f Ljava/util/List; cellCaches j field_36581 + f Ljava/util/Map; wrapped k field_36582 + f Lit/unimi/dsi/fastutil/longs/Long2IntMap; preliminarySurfaceLevel l field_36273 + f Lnet/minecraft/world/level/levelgen/Aquifer; aquifer m field_34613 + f Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityNoJaggedness n field_36583 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller; blockStateRule o field_36584 + f Lnet/minecraft/world/level/levelgen/blending/Blender; blender p field_35487 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$FlatCache; blendAlpha q field_36585 + f Lnet/minecraft/world/level/levelgen/NoiseChunk$FlatCache; blendOffset r field_36586 + f Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker; beardifier s field_37113 + f J lastBlendingDataPos t field_36587 + f Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; lastBlendingOutput u field_36588 + f I noiseSizeXZ v field_36589 + f I cellWidth w field_36590 + f I cellHeight x field_36591 + f Z interpolating y field_36592 + f Z fillingCell z field_36593 + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38338 a method_38338 + m (ID)V updateForY a method_38337 + p 1 cellEndBlockY + p 2 y + m (II)I preliminarySurfaceLevel a method_39900 + p 1 x + p 2 z + m (IILnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38342 a method_38342 + m (J)I computePreliminarySurfaceLevel a method_39899 + p 1 packedChunkPos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker;Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;Lnet/minecraft/world/level/levelgen/blending/Blender;)Lnet/minecraft/world/level/levelgen/NoiseChunk; forChunk a method_39543 + p 0 chunk + p 1 state + p 2 beardifierOrMarker + p 3 noiseGeneratorSettings + p 4 fluidPicke + p 5 blender + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrap a method_40529 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Lnet/minecraft/world/level/block/state/BlockState; method_40530 a method_40530 + m (Lnet/minecraft/world/level/levelgen/NoiseRouter;Ljava/util/List;)Lnet/minecraft/world/level/biome/Climate$Sampler; cachedClimateSampler a method_40531 + p 1 noiseRouter + p 2 points + m (ZI)V fillSlice a method_40532 + p 1 isSlice0 + p 2 start + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38350 b method_38350 + m (I)V advanceCellX b method_38339 + p 1 increment + m (ID)V updateForX b method_38349 + p 1 cellEndBlockX + p 2 x + m (II)V selectCellYZ b method_38362 + p 1 y + p 2 z + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew b method_40533 + p 1 densityFunction + m (DLnet/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator;)V method_38356 c method_38356 + m (I)Lnet/minecraft/world/level/levelgen/NoiseChunk; forIndex c method_40534 + p 1 arrayIndex + m (ID)V updateForZ c method_38355 + p 1 cellEndBlockZ + p 2 z + m (II)Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; getOrComputeBlendingOutput c method_40535 + p 1 chunkX + p 2 chunkZ + m ()Lnet/minecraft/world/level/block/state/BlockState; getInterpolatedState e method_40536 + m ()V initializeForFirstCellX f method_38336 + m ()V stopInterpolation g method_40537 + m ()V swapSlices h method_38348 + m ()Lnet/minecraft/world/level/levelgen/Aquifer; aquifer i method_38354 + m ()I cellWidth j method_42361 + m ()I cellHeight k method_42362 + m (ILnet/minecraft/world/level/levelgen/RandomState;IILnet/minecraft/world/level/levelgen/NoiseSettings;Lnet/minecraft/world/level/levelgen/DensityFunctions$BeardifierOrMarker;Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/world/level/levelgen/Aquifer$FluidPicker;Lnet/minecraft/world/level/levelgen/blending/Blender;)V + p 1 cellCountXZ + p 2 random + p 3 firstNoiseX + p 4 firstNoiseZ + p 5 noiseSettings + p 6 beardifier + p 7 noiseGeneratorSettings + p 8 fluidPicker + p 9 blendifier +c net/minecraft/world/level/levelgen/NoiseChunk$1 dzc$1 net/minecraft/class_6568$1 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36595 a field_36595 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$2 dzc$2 net/minecraft/class_6568$2 + f [I $SwitchMap$net$minecraft$world$level$levelgen$DensityFunctions$Marker$Type a field_36596 + m ()V +c net/minecraft/world/level/levelgen/NoiseChunk$BlendAlpha dzc$a net/minecraft/class_6568$class_6946 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36597 a field_36597 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$BlendOffset dzc$b net/minecraft/class_6568$class_6947 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36598 a field_36598 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;)V +c net/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller dzc$c net/minecraft/class_6568$class_6569 +c net/minecraft/world/level/levelgen/NoiseChunk$Cache2D dzc$d net/minecraft/class_6568$class_6948 + f Lnet/minecraft/world/level/levelgen/DensityFunction; function a field_36599 + f J lastPos2D e field_36600 + f D lastValue f field_36601 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 1 function +c net/minecraft/world/level/levelgen/NoiseChunk$CacheAllInCell dzc$e net/minecraft/class_6568$class_6949 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36602 a field_36602 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller e field_36603 + f [D values f field_36604 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 noiseFilter +c net/minecraft/world/level/levelgen/NoiseChunk$CacheOnce dzc$f net/minecraft/class_6568$class_6950 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36605 a field_36605 + f Lnet/minecraft/world/level/levelgen/DensityFunction; function e field_36606 + f J lastCounter f field_36607 + f J lastArrayCounter g field_36608 + f D lastValue h field_36609 + f [D lastArray i field_36610 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 function +c net/minecraft/world/level/levelgen/NoiseChunk$FlatCache dzc$g net/minecraft/class_6568$class_6951 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_36611 a field_36611 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller e field_36612 + f [[D values f field_36613 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;Z)V + p 2 noiseFiller + p 3 computeValues +c net/minecraft/world/level/levelgen/NoiseChunk$NoiseChunkDensityFunction dzc$h net/minecraft/class_6568$class_6952 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; wrapped k comp_469 +c net/minecraft/world/level/levelgen/NoiseChunk$NoiseInterpolator dzc$i net/minecraft/class_6568$class_5917 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; field_34622 a field_34622 + f [[D slice0 e field_29227 + f [[D slice1 f field_29228 + f Lnet/minecraft/world/level/levelgen/DensityFunction; noiseFiller g field_34623 + f D noise000 h field_29233 + f D noise001 i field_29234 + f D noise100 j field_29235 + f D noise101 k field_29236 + f D noise010 l field_29237 + f D noise011 m field_29238 + f D noise110 n field_29239 + f D noise111 o field_29240 + f D valueXZ00 p field_29241 + f D valueXZ10 q field_29242 + f D valueXZ01 r field_29243 + f D valueXZ11 s field_29244 + f D valueZ0 t field_29245 + f D valueZ1 u field_29246 + f D value v field_34624 + m (D)V updateForY a method_34287 + p 1 y + m (II)[[D allocateSlice a method_34293 + p 1 cellCountY + p 2 cellCountXZ + m (D)V updateForX b method_34292 + p 1 x + m (II)V selectCellYZ b method_34289 + p 1 y + p 2 z + m (D)V updateForZ c method_38363 + p 1 z + m ()V swapSlices l method_34291 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + p 2 noiseFilter +c net/minecraft/world/level/levelgen/NoiseGeneratorSettings dzd net/minecraft/class_5284 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_24780 + f Lcom/mojang/serialization/Codec; CODEC b field_24781 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD c field_26355 + f Lnet/minecraft/resources/ResourceKey; LARGE_BIOMES d field_35051 + f Lnet/minecraft/resources/ResourceKey; AMPLIFIED e field_26356 + f Lnet/minecraft/resources/ResourceKey; NETHER f field_26357 + f Lnet/minecraft/resources/ResourceKey; END g field_26358 + f Lnet/minecraft/resources/ResourceKey; CAVES h field_26359 + f Lnet/minecraft/resources/ResourceKey; FLOATING_ISLANDS i field_26360 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings j comp_474 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlock k comp_475 + f Lnet/minecraft/world/level/block/state/BlockState; defaultFluid l comp_476 + f Lnet/minecraft/world/level/levelgen/NoiseRouter; noiseRouter m comp_477 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule n comp_478 + f Ljava/util/List; spawnTarget o comp_538 + f I seaLevel p comp_479 + f Z disableMobGeneration q comp_480 + f Z aquifersEnabled r comp_481 + f Z oreVeinsEnabled s comp_482 + f Z useLegacyRandomSource t comp_483 + m ()Z disableMobGeneration a comp_480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28558 a method_28558 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_31111 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;ZZ)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; overworld a method_30643 + p 0 context + p 1 large + p 2 amplified + m ()Z isAquifersEnabled b method_33757 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; end b method_30642 + p 0 context + m ()Z oreVeinsEnabled c comp_482 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; nether c method_30641 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; getRandomSource d method_38999 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; caves d method_39901 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; dummy e method_44323 + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; floatingIslands e method_39902 + p 0 context + m ()Lnet/minecraft/world/level/levelgen/NoiseSettings; noiseSettings f comp_474 + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultBlock g comp_475 + m ()Lnet/minecraft/world/level/block/state/BlockState; defaultFluid h comp_476 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; noiseRouter i comp_477 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule j comp_478 + m ()Ljava/util/List; spawnTarget k comp_538 + m ()I seaLevel l comp_479 + m ()Z aquifersEnabled m comp_481 + m ()Z useLegacyRandomSource n comp_483 + m (Lnet/minecraft/world/level/levelgen/NoiseSettings;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/NoiseRouter;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;Ljava/util/List;IZZZZ)V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouter dze net/minecraft/class_6953 + f Lcom/mojang/serialization/Codec; CODEC a field_37683 + f Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise b comp_414 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise c comp_415 + f Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise d comp_416 + f Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise e comp_417 + f Lnet/minecraft/world/level/levelgen/DensityFunction; temperature f comp_420 + f Lnet/minecraft/world/level/levelgen/DensityFunction; vegetation g comp_539 + f Lnet/minecraft/world/level/levelgen/DensityFunction; continents h comp_484 + f Lnet/minecraft/world/level/levelgen/DensityFunction; erosion i comp_423 + f Lnet/minecraft/world/level/levelgen/DensityFunction; depth j comp_424 + f Lnet/minecraft/world/level/levelgen/DensityFunction; ridges k comp_485 + f Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityWithoutJaggedness l comp_486 + f Lnet/minecraft/world/level/levelgen/DensityFunction; finalDensity m comp_487 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinToggle n comp_428 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinRidged o comp_429 + f Lnet/minecraft/world/level/levelgen/DensityFunction; veinGap p comp_430 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; barrierNoise a comp_414 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41543 a method_41543 + m (Lnet/minecraft/world/level/levelgen/DensityFunction$Visitor;)Lnet/minecraft/world/level/levelgen/NoiseRouter; mapAll a method_41544 + p 1 visitor + m (Ljava/lang/String;Ljava/util/function/Function;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; field a method_41545 + p 0 name + p 1 getter + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelFloodednessNoise b comp_415 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; fluidLevelSpreadNoise c comp_416 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; lavaNoise d comp_417 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; temperature e comp_420 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; vegetation f comp_539 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; continents g comp_484 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; erosion h comp_423 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; depth i comp_424 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; ridges j comp_485 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; initialDensityWithoutJaggedness k comp_486 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; finalDensity l comp_487 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinToggle m comp_428 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinRidged n comp_429 + m ()Lnet/minecraft/world/level/levelgen/DensityFunction; veinGap o comp_430 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouterData dzf net/minecraft/class_6954 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_END A field_38249 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE B field_37127 + f Lnet/minecraft/resources/ResourceKey; OFFSET_LARGE C field_37696 + f Lnet/minecraft/resources/ResourceKey; FACTOR_LARGE D field_37130 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS_LARGE E field_37684 + f Lnet/minecraft/resources/ResourceKey; DEPTH_LARGE F field_37131 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_LARGE G field_37132 + f Lnet/minecraft/resources/ResourceKey; OFFSET_AMPLIFIED H field_37685 + f Lnet/minecraft/resources/ResourceKey; FACTOR_AMPLIFIED I field_37686 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS_AMPLIFIED J field_37687 + f Lnet/minecraft/resources/ResourceKey; DEPTH_AMPLIFIED K field_37688 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_AMPLIFIED L field_37689 + f Lnet/minecraft/resources/ResourceKey; SLOPED_CHEESE_END M field_37133 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS_FUNCTION N field_37134 + f Lnet/minecraft/resources/ResourceKey; ENTRANCES O field_37135 + f Lnet/minecraft/resources/ResourceKey; NOODLE P field_37136 + f Lnet/minecraft/resources/ResourceKey; PILLARS Q field_37114 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_THICKNESS_MODULATOR R field_37115 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D S field_37116 + f F GLOBAL_OFFSET a field_37690 + f I ISLAND_CHUNK_DISTANCE b field_37691 + f J ISLAND_CHUNK_DISTANCE_SQR c field_37692 + f Lnet/minecraft/resources/ResourceKey; CONTINENTS d field_37122 + f Lnet/minecraft/resources/ResourceKey; EROSION e field_37123 + f Lnet/minecraft/resources/ResourceKey; RIDGES f field_37124 + f Lnet/minecraft/resources/ResourceKey; RIDGES_FOLDED g field_37693 + f Lnet/minecraft/resources/ResourceKey; OFFSET h field_37694 + f Lnet/minecraft/resources/ResourceKey; FACTOR i field_37125 + f Lnet/minecraft/resources/ResourceKey; JAGGEDNESS j field_37695 + f Lnet/minecraft/resources/ResourceKey; DEPTH k field_37126 + f Lnet/minecraft/resources/ResourceKey; CONTINENTS_LARGE l field_37128 + f Lnet/minecraft/resources/ResourceKey; EROSION_LARGE m field_37129 + f F ORE_THICKNESS n field_36614 + f D VEININESS_FREQUENCY o field_36615 + f D NOODLE_SPACING_AND_STRAIGHTNESS p field_36616 + f D SURFACE_DENSITY_THRESHOLD q field_36617 + f D CHEESE_NOISE_TARGET r field_38250 + f Lnet/minecraft/world/level/levelgen/DensityFunction; BLENDING_FACTOR s field_36618 + f Lnet/minecraft/world/level/levelgen/DensityFunction; BLENDING_JAGGEDNESS t field_36619 + f Lnet/minecraft/resources/ResourceKey; ZERO u field_37117 + f Lnet/minecraft/resources/ResourceKey; Y v field_37118 + f Lnet/minecraft/resources/ResourceKey; SHIFT_X w field_37119 + f Lnet/minecraft/resources/ResourceKey; SHIFT_Z x field_37120 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_OVERWORLD y field_38251 + f Lnet/minecraft/resources/ResourceKey; BASE_3D_NOISE_NETHER z field_38252 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; none a method_44324 + m (F)F peaksAndValleys a method_41546 + p 0 weirdness + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; peaksAndValleys a method_41547 + p 0 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;II)Lnet/minecraft/world/level/levelgen/DensityFunction; slideEndLike a method_42364 + p 0 densityFunction + p 1 minY + p 2 maxY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;IIIIDIID)Lnet/minecraft/world/level/levelgen/DensityFunction; slide a method_42365 + p 0 input + p 1 minY + p 2 maxY + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; splineWithBlending a method_40541 + p 0 minFunction + p 1 maxFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;III)Lnet/minecraft/world/level/levelgen/DensityFunction; yLimitedInterpolatable a method_40539 + p 0 input + p 1 whenInRange + p 2 minY + p 3 maxY + p 4 whenOutOfRange + m (Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType;)I method_41550 a method_41550 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_41109 + p 0 location + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; end a method_41120 + p 0 densityFunctions + m (Lnet/minecraft/core/HolderGetter;II)Lnet/minecraft/world/level/levelgen/DensityFunction; slideNetherLike a method_42363 + p 0 densityFunctions + p 1 minY + p 2 maxY + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/DensityFunction; getFunction a method_41116 + p 0 densityFunctions + p 1 key + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; nether a method_41118 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; underground a method_41101 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;ZZ)Lnet/minecraft/world/level/levelgen/NoiseRouter; overworld a method_41103 + p 0 densityFunctions + p 1 noiseParameters + p 2 large + p 3 amplified + m (Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/core/Holder; bootstrap a method_41100 + p 0 context + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; registerAndWrap a method_41551 + p 0 context + p 1 key + p 2 value + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Z)V registerTerrainNoises a method_41548 + p 0 context + p 1 densityFunctionGetter + p 2 jaggedNoise + p 3 continentalness + p 4 erosion + p 5 offsetKey + p 6 factorKey + p 7 jaggednessKey + p 8 depthKey + p 9 slopedCheeseKey + p 10 amplified + m (ZLnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; slideOverworld a method_42366 + p 0 amplified + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; postProcess b method_41207 + p 0 densityFunction + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; noiseGradientDensity b method_40540 + p 0 minFunction + p 1 maxFunction + m (Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType;)I method_41553 b method_41553 + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; spaghettiRoughnessFunction b method_41113 + p 0 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; caves b method_41549 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/NoiseRouter; noNewCaves b method_41211 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; slideEnd c method_42367 + p 0 densityFunction + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; pillars c method_41121 + p 0 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/NoiseRouter; floatingIslands c method_41552 + p 0 densityFunction + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; entrances d method_41117 + p 0 densityFunction + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; noodle e method_41119 + p 0 densityFunctions + p 1 noiseParameters + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/DensityFunction; spaghetti2D f method_41122 + p 0 densityFunctions + p 1 noiseParameters + m ()V + m ()V +c net/minecraft/world/level/levelgen/NoiseRouterData$QuantizedSpaghettiRarity dzf$a net/minecraft/class_6954$class_5841 + m (D)D getSphaghettiRarity2D a method_33835 + p 0 value + m (D)D getSpaghettiRarity3D b method_33836 + p 0 value + m ()V +c net/minecraft/world/level/levelgen/NoiseSettings dzg net/minecraft/class_5309 + f Lcom/mojang/serialization/Codec; CODEC a field_24804 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; OVERWORLD_NOISE_SETTINGS b field_38253 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; NETHER_NOISE_SETTINGS c field_37138 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; END_NOISE_SETTINGS d field_37139 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; CAVES_NOISE_SETTINGS e field_37140 + f Lnet/minecraft/world/level/levelgen/NoiseSettings; FLOATING_ISLANDS_NOISE_SETTINGS f field_37141 + f I minY g comp_173 + f I height h comp_174 + f I noiseSizeHorizontal i comp_178 + f I noiseSizeVertical j comp_179 + m ()I getCellHeight a method_39545 + m (IIII)Lnet/minecraft/world/level/levelgen/NoiseSettings; create a method_32994 + p 0 minY + p 1 height + p 2 noiseSizeHorizontal + p 3 noiseSizeVertical + m (Lcom/mojang/serialization/DataResult$Error;)V method_32996 a method_32996 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28582 a method_28582 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)Lnet/minecraft/world/level/levelgen/NoiseSettings; clampToHeightAccessor a method_42368 + p 1 heightAccessor + m (Lnet/minecraft/world/level/levelgen/NoiseSettings;)Lcom/mojang/serialization/DataResult; guardY a method_32995 + p 0 settings + m ()I getCellWidth b method_39546 + m ()I minY c comp_173 + m ()I height d comp_174 + m ()I noiseSizeHorizontal e comp_178 + m ()I noiseSizeVertical f comp_179 + m ()Ljava/lang/String; method_49530 g method_49530 + m ()Ljava/lang/String; method_49531 h method_49531 + m ()Ljava/lang/String; method_49532 i method_49532 + m (IIII)V + m ()V +c net/minecraft/world/level/levelgen/Noises dzh net/minecraft/class_6731 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS_MODULATOR A field_35411 + f Lnet/minecraft/resources/ResourceKey; CAVE_ENTRANCE B field_35412 + f Lnet/minecraft/resources/ResourceKey; CAVE_LAYER C field_35413 + f Lnet/minecraft/resources/ResourceKey; CAVE_CHEESE D field_35414 + f Lnet/minecraft/resources/ResourceKey; ORE_VEININESS E field_35363 + f Lnet/minecraft/resources/ResourceKey; ORE_VEIN_A F field_35364 + f Lnet/minecraft/resources/ResourceKey; ORE_VEIN_B G field_35365 + f Lnet/minecraft/resources/ResourceKey; ORE_GAP H field_35366 + f Lnet/minecraft/resources/ResourceKey; NOODLE I field_35367 + f Lnet/minecraft/resources/ResourceKey; NOODLE_THICKNESS J field_35368 + f Lnet/minecraft/resources/ResourceKey; NOODLE_RIDGE_A K field_35369 + f Lnet/minecraft/resources/ResourceKey; NOODLE_RIDGE_B L field_35370 + f Lnet/minecraft/resources/ResourceKey; JAGGED M field_35371 + f Lnet/minecraft/resources/ResourceKey; SURFACE N field_35373 + f Lnet/minecraft/resources/ResourceKey; SURFACE_SECONDARY O field_35675 + f Lnet/minecraft/resources/ResourceKey; CLAY_BANDS_OFFSET P field_35372 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_PILLAR Q field_35488 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_PILLAR_ROOF R field_35489 + f Lnet/minecraft/resources/ResourceKey; BADLANDS_SURFACE S field_35490 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PILLAR T field_35491 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_PILLAR_ROOF U field_35492 + f Lnet/minecraft/resources/ResourceKey; ICEBERG_SURFACE V field_35493 + f Lnet/minecraft/resources/ResourceKey; SWAMP W field_35376 + f Lnet/minecraft/resources/ResourceKey; CALCITE X field_35377 + f Lnet/minecraft/resources/ResourceKey; GRAVEL Y field_35378 + f Lnet/minecraft/resources/ResourceKey; POWDER_SNOW Z field_35593 + f Lnet/minecraft/resources/ResourceKey; TEMPERATURE a field_35389 + f Lnet/minecraft/resources/ResourceKey; PACKED_ICE aa field_35381 + f Lnet/minecraft/resources/ResourceKey; ICE ab field_35382 + f Lnet/minecraft/resources/ResourceKey; SOUL_SAND_LAYER ac field_35383 + f Lnet/minecraft/resources/ResourceKey; GRAVEL_LAYER ad field_35384 + f Lnet/minecraft/resources/ResourceKey; PATCH ae field_35385 + f Lnet/minecraft/resources/ResourceKey; NETHERRACK af field_35386 + f Lnet/minecraft/resources/ResourceKey; NETHER_WART ag field_35387 + f Lnet/minecraft/resources/ResourceKey; NETHER_STATE_SELECTOR ah field_35388 + f Lnet/minecraft/resources/ResourceKey; VEGETATION b field_35390 + f Lnet/minecraft/resources/ResourceKey; CONTINENTALNESS c field_35391 + f Lnet/minecraft/resources/ResourceKey; EROSION d field_35392 + f Lnet/minecraft/resources/ResourceKey; TEMPERATURE_LARGE e field_35594 + f Lnet/minecraft/resources/ResourceKey; VEGETATION_LARGE f field_35595 + f Lnet/minecraft/resources/ResourceKey; CONTINENTALNESS_LARGE g field_35596 + f Lnet/minecraft/resources/ResourceKey; EROSION_LARGE h field_35597 + f Lnet/minecraft/resources/ResourceKey; RIDGE i field_35393 + f Lnet/minecraft/resources/ResourceKey; SHIFT j field_35394 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_BARRIER k field_35395 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_FLUID_LEVEL_FLOODEDNESS l field_35396 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_LAVA m field_35397 + f Lnet/minecraft/resources/ResourceKey; AQUIFER_FLUID_LEVEL_SPREAD n field_35398 + f Lnet/minecraft/resources/ResourceKey; PILLAR o field_35399 + f Lnet/minecraft/resources/ResourceKey; PILLAR_RARENESS p field_35400 + f Lnet/minecraft/resources/ResourceKey; PILLAR_THICKNESS q field_35401 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D r field_35402 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_ELEVATION s field_35403 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_MODULATOR t field_35404 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_2D_THICKNESS u field_35405 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_1 v field_35406 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_2 w field_35407 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_RARITY x field_35408 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_3D_THICKNESS y field_35409 + f Lnet/minecraft/resources/ResourceKey; SPAGHETTI_ROUGHNESS z field_35410 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_39174 + p 0 key + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; instantiate a method_41127 + p 0 noises + p 1 random + p 2 resourceKey + m ()V + m ()V +c net/minecraft/world/level/levelgen/OreVeinifier dzi net/minecraft/class_6955 + f F VEININESS_THRESHOLD a field_36620 + f I EDGE_ROUNDOFF_BEGIN b field_36621 + f D MAX_EDGE_ROUNDOFF c field_36622 + f F VEIN_SOLIDNESS d field_36623 + f F MIN_RICHNESS e field_36624 + f F MAX_RICHNESS f field_36625 + f F MAX_RICHNESS_THRESHOLD g field_36626 + f F CHANCE_OF_RAW_ORE_BLOCK h field_36627 + f F SKIP_ORE_IF_GAP_NOISE_IS_BELOW i field_36628 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;)Lnet/minecraft/world/level/block/state/BlockState; method_40547 a method_40547 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/DensityFunction;Lnet/minecraft/world/level/levelgen/PositionalRandomFactory;)Lnet/minecraft/world/level/levelgen/NoiseChunk$BlockStateFiller; create a method_40548 + p 0 veinToggle + p 1 veinRidged + p 2 veinGap + p 3 random + m ()V +c net/minecraft/world/level/levelgen/OreVeinifier$VeinType dzi$a net/minecraft/class_6955$class_6354 + f Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; COPPER a field_33603 + f Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; IRON b field_33604 + f I minY c field_33607 + f I maxY d field_33608 + f Lnet/minecraft/world/level/block/state/BlockState; ore e field_33605 + f Lnet/minecraft/world/level/block/state/BlockState; rawOreBlock f field_33668 + f Lnet/minecraft/world/level/block/state/BlockState; filler g field_33606 + f [Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; $VALUES h field_33609 + m ()[Lnet/minecraft/world/level/levelgen/OreVeinifier$VeinType; $values a method_36754 + m (Ljava/lang/String;ILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;II)V + p 3 ore + p 4 rawOreBlock + p 5 filler + p 6 minY + p 7 maxY + m ()V +c net/minecraft/world/level/levelgen/PatrolSpawner dzj net/minecraft/class_3769 + f I nextTick a field_16652 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Z)Z spawnPatrolMember a method_16575 + p 1 level + p 2 pos + p 3 random + p 4 leader + m ()V +c net/minecraft/world/level/levelgen/PhantomSpawner dzk net/minecraft/class_2910 + f I nextTick a field_13244 + m ()V +c net/minecraft/world/level/levelgen/PositionalRandomFactory dzl net/minecraft/class_6574 + m (III)Lnet/minecraft/util/RandomSource; at a method_38418 + p 1 x + p 2 y + p 3 z + m (J)Lnet/minecraft/util/RandomSource; fromSeed a method_60628 + p 1 seed + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/util/RandomSource; fromHashOf a method_39000 + p 1 name + m (Ljava/lang/String;)Lnet/minecraft/util/RandomSource; fromHashOf a method_38995 + p 1 name + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39039 + p 1 builder + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/RandomSource; at a method_38419 + p 1 pos +c net/minecraft/world/level/levelgen/RandomState dzm net/minecraft/class_7138 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; random a field_38254 + f Lnet/minecraft/core/HolderGetter; noises b field_38256 + f Lnet/minecraft/world/level/levelgen/NoiseRouter; router c field_38257 + f Lnet/minecraft/world/level/biome/Climate$Sampler; sampler d field_38258 + f Lnet/minecraft/world/level/levelgen/SurfaceSystem; surfaceSystem e field_38259 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; aquiferRandom f field_38260 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; oreRandom g field_38261 + f Ljava/util/Map; noiseIntances h field_38262 + f Ljava/util/Map; positionalRandoms i field_38263 + m ()Lnet/minecraft/world/level/levelgen/NoiseRouter; router a method_42370 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; getOrCreateNoise a method_41558 + p 1 resourceKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; method_41559 a method_41559 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; getOrCreateRandomFactory a method_41560 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; method_41561 a method_41561 + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/core/HolderGetter;J)Lnet/minecraft/world/level/levelgen/RandomState; create a method_41556 + p 0 settings + p 1 noiseParametersGetter + p 2 levelSeed + m (Lnet/minecraft/core/HolderGetter$Provider;Lnet/minecraft/resources/ResourceKey;J)Lnet/minecraft/world/level/levelgen/RandomState; create a method_41557 + p 0 registries + p 1 settingsKey + p 2 levelSeed + m ()Lnet/minecraft/world/level/biome/Climate$Sampler; sampler b method_42371 + m ()Lnet/minecraft/world/level/levelgen/SurfaceSystem; surfaceSystem c method_42372 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; aquiferRandom d method_42373 + m ()Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; oreRandom e method_42374 + m (Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings;Lnet/minecraft/core/HolderGetter;J)V + p 1 settings + p 2 noiseParametersGetter + p 3 levelSeed +c net/minecraft/world/level/levelgen/RandomState$1 dzm$1 net/minecraft/class_7138$1 + f Ljava/util/Map; wrapped a field_40362 + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew a method_45512 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/RandomState;)V +c net/minecraft/world/level/levelgen/RandomState$1NoiseWiringHelper dzm$a net/minecraft/class_7138$class_7271 + f J val$seed a field_38264 + f Z val$useLegacyInit b field_38265 + f Lnet/minecraft/world/level/levelgen/RandomState; field_38266 c field_38266 + f Ljava/util/Map; wrapped d field_38267 + m (J)Lnet/minecraft/util/RandomSource; newLegacyInstance a method_42375 + p 1 seed + m (Lnet/minecraft/world/level/levelgen/DensityFunction;)Lnet/minecraft/world/level/levelgen/DensityFunction; wrapNew a method_42376 + p 1 densityFunction + m (Lnet/minecraft/world/level/levelgen/RandomState;JZ)V +c net/minecraft/world/level/levelgen/RandomSupport dzn net/minecraft/class_6673 + f J GOLDEN_RATIO_64 a field_35133 + f J SILVER_RATIO_64 b field_35134 + f Lcom/google/common/hash/HashFunction; MD5_128 c field_44918 + f Ljava/util/concurrent/atomic/AtomicLong; SEED_UNIQUIFIER d field_35135 + m ()J generateUniqueSeed a method_39001 + m (J)J mixStafford13 a method_39002 + p 0 seed + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; seedFromHashOf a method_52180 + p 0 string + m (J)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; upgradeSeedTo128bitUnmixed b method_52211 + p 0 seed + m (J)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; upgradeSeedTo128bit c method_39003 + p 0 seed + m (J)J method_39004 d method_39004 + m ()V + m ()V +c net/minecraft/world/level/levelgen/RandomSupport$Seed128bit dzn$a net/minecraft/class_6673$class_6674 + f J seedLo a comp_166 + f J seedHi b comp_167 + m ()Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; mixed a method_52212 + m (JJ)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; xor a method_52181 + p 1 seedLo + p 3 seedHi + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit; xor a method_52182 + p 1 seed + m ()J seedLo b comp_166 + m ()J seedHi c comp_167 + m (JJ)V +c net/minecraft/world/level/levelgen/SingleThreadedRandomSource dzo net/minecraft/class_6575 + f I MODULUS_BITS d field_34689 + f J MODULUS_MASK e field_34690 + f J MULTIPLIER f field_34691 + f J INCREMENT g field_34692 + f J seed h field_34693 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_35136 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/SurfaceRules dzp net/minecraft/class_6686 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ON_FLOOR a field_35222 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; UNDER_FLOOR b field_35223 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; DEEP_UNDER_FLOOR c field_36341 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; VERY_DEEP_UNDER_FLOOR d field_36342 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ON_CEILING e field_35494 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; UNDER_CEILING f field_35224 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; steep a method_39045 + m (II)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; waterBlockCheck a method_39046 + p 0 offset + p 1 surfaceDepthMultiplier + m (IZILnet/minecraft/world/level/levelgen/placement/CaveSurface;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; stoneDepthCheck a method_40023 + p 0 offset + p 1 addSurfaceDepth + p 2 secondaryDepthRange + p 3 surfaceType + m (IZLnet/minecraft/world/level/levelgen/placement/CaveSurface;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; stoneDepthCheck a method_39549 + p 0 offset + p 1 addSurfaceDepth + p 2 surfaceType + m (Lnet/minecraft/resources/ResourceKey;D)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; noiseCondition a method_39052 + p 0 noise + p 1 minThreshold + m (Lnet/minecraft/resources/ResourceKey;DD)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; noiseCondition a method_39053 + p 0 noise + p 1 minThreshold + p 3 maxThreshold + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; state a method_39047 + p 0 resultState + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; not a method_39048 + p 0 target + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; ifTrue a method_39049 + p 0 ifTrue + p 1 thenRun + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; yBlockCheck a method_39051 + p 0 anchor + p 1 surfaceDepthMultiplier + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; verticalGradient a method_39472 + p 0 randomName + p 1 trueAtAndBelow + p 2 falseAtAndAbove + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource; isBiome a method_39054 + p 0 biomes + m (Lnet/minecraft/core/Registry;Ljava/lang/String;Lnet/minecraft/util/KeyDispatchDataCodec;)Lcom/mojang/serialization/MapCodec; register a method_42377 + p 0 registry + p 1 name + p 2 codec + m ([Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; isBiome a method_39055 + p 0 biomes + m ([Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; sequence a method_39050 + p 0 rules + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; hole b method_39056 + m (II)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; waterStartCheck b method_39057 + p 0 offset + p 1 surfaceDepthMultiplier + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; yStartCheck b method_39058 + p 0 anchor + p 1 surfaceDepthMultiplier + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; abovePreliminarySurface c method_39473 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; temperature d method_39059 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; bandlands e method_39060 + m ()V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface dzp$a net/minecraft/class_6686$class_6770 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; INSTANCE a field_35600 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35601 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; $VALUES d field_35602 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39474 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$AbovePreliminarySurface; $values b method_39475 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Bandlands dzp$b net/minecraft/class_6686$class_6687 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; INSTANCE a field_35225 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35226 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; $VALUES d field_35227 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39062 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Bandlands; $values b method_39063 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource dzp$c net/minecraft/class_6686$class_6689 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_35228 + f Ljava/util/List; biomes c field_36414 + f Ljava/util/function/Predicate; biomeNameTest d field_36415 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource;)Ljava/util/List; method_40159 a method_40159 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39065 + p 1 context + m (Ljava/util/List;)V + p 1 biomes + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource$1BiomeCondition dzp$c$a net/minecraft/class_6686$class_6689$class_6690 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35603 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource; field_35230 b field_35230 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$BiomeConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$BlockRuleSource dzp$d net/minecraft/class_6686$class_6691 + f Lnet/minecraft/world/level/block/state/BlockState; resultState a comp_191 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule; rule c comp_192 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC d field_35231 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39068 + p 1 context + m ()Lnet/minecraft/world/level/block/state/BlockState; resultState b comp_191 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule; rule c comp_192 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 resultState + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/SurfaceRules$StateRule;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Condition dzp$e net/minecraft/class_6686$class_6692 + m ()Z test b method_39069 +c net/minecraft/world/level/levelgen/SurfaceRules$ConditionSource dzp$f net/minecraft/class_6686$class_6693 + f Lcom/mojang/serialization/Codec; CODEC b field_35232 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec a method_39064 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)Lcom/mojang/serialization/MapCodec; method_42378 a method_42378 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_39070 + p 0 registry + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$Context dzp$g net/minecraft/class_6686$class_6694 + f Ljava/util/function/Supplier; biome A field_35614 + f I blockY B field_35617 + f I waterHeight C field_35618 + f I stoneDepthBelow D field_35619 + f I stoneDepthAbove E field_35620 + f I HOW_FAR_BELOW_PRELIMINARY_SURFACE_LEVEL_TO_BUILD_SURFACE a field_36274 + f I SURFACE_CELL_BITS b field_36275 + f I SURFACE_CELL_SIZE c field_36276 + f I SURFACE_CELL_MASK d field_36277 + f Lnet/minecraft/world/level/levelgen/SurfaceSystem; system e field_35233 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; temperature f field_35234 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; steep g field_35235 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; hole h field_35236 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; abovePreliminarySurface i field_35604 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState j field_37703 + f Lnet/minecraft/world/level/chunk/ChunkAccess; chunk k field_35605 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk l field_35676 + f Ljava/util/function/Function; biomeGetter m field_35606 + f Lnet/minecraft/world/level/levelgen/WorldGenerationContext; context n field_35241 + f J lastPreliminarySurfaceCellOrigin o field_36278 + f [I preliminarySurfaceCache p field_36279 + f J lastUpdateXZ q field_35608 + f I blockX r field_35609 + f I blockZ s field_35610 + f I surfaceDepth t field_35611 + f J lastSurfaceDepth2Update u field_35677 + f D surfaceSecondary v field_35678 + f J lastMinSurfaceLevelUpdate w field_35679 + f I minSurfaceLevel x field_35616 + f J lastUpdateY y field_35612 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; pos z field_35613 + m ()D getSurfaceSecondary a method_39550 + m (I)I blockCoordToSurfaceCell a method_39903 + p 0 blockCoord + m (II)V updateXZ a method_39072 + p 1 blockX + p 2 blockZ + m (III)Lnet/minecraft/core/Holder; method_39478 a method_39478 + m (IIIIII)V updateY a method_39073 + p 1 stoneDepthAbove + p 2 stoneDepthBelow + p 3 waterHeight + p 4 blockX + p 5 blockY + p 6 blockZ + m ()I getMinSurfaceLevel b method_39551 + m (I)I surfaceCellToBlockCoord b method_39904 + p 0 surfaceCell + m (Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Ljava/util/function/Function;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)V + p 1 system + p 2 randomState + p 3 chunk + p 4 noiseChunk + p 5 biomeGetter + p 7 context +c net/minecraft/world/level/levelgen/SurfaceRules$Context$AbovePreliminarySurfaceCondition dzp$g$a net/minecraft/class_6686$class_6694$class_6771 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; field_35621 a field_35621 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$HoleCondition dzp$g$b net/minecraft/class_6686$class_6694$class_6695 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$SteepMaterialCondition dzp$g$c net/minecraft/class_6686$class_6694$class_6696 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Context$TemperatureHelperCondition dzp$g$d net/minecraft/class_6686$class_6694$class_6772 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Hole dzp$h net/minecraft/class_6686$class_6701 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; INSTANCE a field_35243 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35244 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; $VALUES d field_35245 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39079 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Hole; $values b method_39080 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$LazyCondition dzp$i net/minecraft/class_6686$class_6702 + f J lastUpdate a field_35622 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; context c field_35623 + f Ljava/lang/Boolean; result d field_35246 + m ()Z compute a method_39074 + m ()J getContextLastUpdate c method_39479 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V + p 1 context +c net/minecraft/world/level/levelgen/SurfaceRules$LazyXZCondition dzp$j net/minecraft/class_6686$class_6773 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$LazyYCondition dzp$k net/minecraft/class_6686$class_6774 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource dzp$l net/minecraft/class_6686$class_6703 + f Lnet/minecraft/resources/ResourceKey; noise a comp_201 + f D minThreshold c comp_202 + f D maxThreshold d comp_203 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35248 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39081 a method_39081 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39082 + p 1 context + m ()Lnet/minecraft/resources/ResourceKey; noise b comp_201 + m ()D minThreshold c comp_202 + m ()D maxThreshold d comp_203 + m (Lnet/minecraft/resources/ResourceKey;DD)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource$1NoiseThresholdCondition dzp$l$a net/minecraft/class_6686$class_6703$class_6704 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35624 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; val$noise b field_35249 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource; field_35250 e field_35250 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$NoiseThresholdConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;Lnet/minecraft/world/level/levelgen/synth/NormalNoise;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NotCondition dzp$m net/minecraft/class_6686$class_6706 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; target a comp_206 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; target a comp_206 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition;)V +c net/minecraft/world/level/levelgen/SurfaceRules$NotConditionSource dzp$n net/minecraft/class_6686$class_6707 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; target a comp_207 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35251 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39084 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; target b comp_207 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$RuleSource dzp$o net/minecraft/class_6686$class_6708 + f Lcom/mojang/serialization/Codec; CODEC b field_35252 + m ()Lnet/minecraft/util/KeyDispatchDataCodec; codec a method_39061 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)Lcom/mojang/serialization/MapCodec; method_42379 a method_42379 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_39085 + p 0 registry + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$SequenceRule dzp$p net/minecraft/class_6686$class_6709 + f Ljava/util/List; rules a comp_208 + m ()Ljava/util/List; rules a comp_208 + m (Ljava/util/List;)V +c net/minecraft/world/level/levelgen/SurfaceRules$SequenceRuleSource dzp$q net/minecraft/class_6686$class_6710 + f Ljava/util/List; sequence a comp_209 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35253 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39086 + p 1 context + m ()Ljava/util/List; sequence b comp_209 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StateRule dzp$r net/minecraft/class_6686$class_6711 + f Lnet/minecraft/world/level/block/state/BlockState; state a comp_210 + m ()Lnet/minecraft/world/level/block/state/BlockState; state a comp_210 + m (Lnet/minecraft/world/level/block/state/BlockState;)V +c net/minecraft/world/level/levelgen/SurfaceRules$Steep dzp$s net/minecraft/class_6686$class_6712 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; INSTANCE a field_35254 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35255 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; $VALUES d field_35256 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39087 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Steep; $values b method_39088 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck dzp$t net/minecraft/class_6686$class_6713 + f I offset a comp_276 + f Z addSurfaceDepth c comp_211 + f I secondaryDepthRange d comp_277 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surfaceType e comp_212 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC f field_35257 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39089 a method_39089 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39090 + p 1 context + m ()I offset b comp_276 + m ()Z addSurfaceDepth c comp_211 + m ()I secondaryDepthRange d comp_277 + m ()Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surfaceType e comp_212 + m (IZILnet/minecraft/world/level/levelgen/placement/CaveSurface;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck$1StoneDepthCondition dzp$t$a net/minecraft/class_6686$class_6713$class_6714 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35625 + f Z val$ceiling b field_35258 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck; field_35259 e field_35259 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$StoneDepthCheck;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;Z)V +c net/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule dzp$u net/minecraft/class_6686$class_6715 +c net/minecraft/world/level/levelgen/SurfaceRules$Temperature dzp$v net/minecraft/class_6686$class_6716 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; INSTANCE a field_35260 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC c field_35261 + f [Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; $VALUES d field_35262 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39092 + p 1 context + m ()[Lnet/minecraft/world/level/levelgen/SurfaceRules$Temperature; $values b method_39093 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$TestRule dzp$w net/minecraft/class_6686$class_6717 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; condition a comp_213 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; followup b comp_214 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; condition a comp_213 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; followup b comp_214 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition;Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule;)V +c net/minecraft/world/level/levelgen/SurfaceRules$TestRuleSource dzp$x net/minecraft/class_6686$class_6718 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ifTrue a comp_215 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; thenRun c comp_216 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC d field_35263 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39094 a method_39094 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$SurfaceRule; apply a method_39095 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource; ifTrue b comp_215 + m ()Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; thenRun c comp_216 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$ConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource dzp$y net/minecraft/class_6686$class_6775 + f Lnet/minecraft/resources/ResourceLocation; randomName a comp_263 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; trueAtAndBelow c comp_264 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; falseAtAndAbove d comp_265 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35626 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39480 a method_39480 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39481 + p 1 context + m ()Lnet/minecraft/resources/ResourceLocation; randomName b comp_263 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; trueAtAndBelow c comp_264 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; falseAtAndAbove d comp_265 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource$1VerticalGradientCondition dzp$y$a net/minecraft/class_6686$class_6775$class_6776 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35627 + f I val$trueAtAndBelow b field_35628 + f I val$falseAtAndAbove e field_35629 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; val$randomFactory f field_35630 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$VerticalGradientConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;IILnet/minecraft/world/level/levelgen/PositionalRandomFactory;)V +c net/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource dzp$z net/minecraft/class_6686$class_6720 + f I offset a comp_217 + f I surfaceDepthMultiplier c comp_218 + f Z addStoneDepth d comp_219 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35264 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39096 a method_39096 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39097 + p 1 context + m ()I offset b comp_217 + m ()I surfaceDepthMultiplier c comp_218 + m ()Z addStoneDepth d comp_219 + m (IIZ)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource$1WaterCondition dzp$z$a net/minecraft/class_6686$class_6720$class_6721 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35632 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource; field_35265 b field_35265 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$WaterConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceRules$YConditionSource dzp$aa net/minecraft/class_6686$class_6722 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; anchor a comp_220 + f I surfaceDepthMultiplier c comp_221 + f Z addStoneDepth d comp_222 + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC e field_35266 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39099 a method_39099 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)Lnet/minecraft/world/level/levelgen/SurfaceRules$Condition; apply a method_39100 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; anchor b comp_220 + m ()I surfaceDepthMultiplier c comp_221 + m ()Z addStoneDepth d comp_222 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;IZ)V + m ()V +c net/minecraft/world/level/levelgen/SurfaceRules$YConditionSource$1YCondition dzp$aa$a net/minecraft/class_6686$class_6722$class_6723 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$Context; val$ruleContext a field_35267 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$YConditionSource; field_35268 b field_35268 + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$YConditionSource;Lnet/minecraft/world/level/levelgen/SurfaceRules$Context;)V +c net/minecraft/world/level/levelgen/SurfaceSystem dzq net/minecraft/class_6724 + f Lnet/minecraft/world/level/block/state/BlockState; WHITE_TERRACOTTA a field_35275 + f Lnet/minecraft/world/level/block/state/BlockState; ORANGE_TERRACOTTA b field_35276 + f Lnet/minecraft/world/level/block/state/BlockState; TERRACOTTA c field_35277 + f Lnet/minecraft/world/level/block/state/BlockState; YELLOW_TERRACOTTA d field_35278 + f Lnet/minecraft/world/level/block/state/BlockState; BROWN_TERRACOTTA e field_35279 + f Lnet/minecraft/world/level/block/state/BlockState; RED_TERRACOTTA f field_35280 + f Lnet/minecraft/world/level/block/state/BlockState; LIGHT_GRAY_TERRACOTTA g field_35281 + f Lnet/minecraft/world/level/block/state/BlockState; PACKED_ICE h field_35282 + f Lnet/minecraft/world/level/block/state/BlockState; SNOW_BLOCK i field_35283 + f Lnet/minecraft/world/level/block/state/BlockState; defaultBlock j field_35285 + f I seaLevel k field_35286 + f [Lnet/minecraft/world/level/block/state/BlockState; clayBands l field_35287 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; clayBandsOffsetNoise m field_35288 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsPillarNoise n field_35495 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsPillarRoofNoise o field_35496 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; badlandsSurfaceNoise p field_35497 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergPillarNoise q field_35498 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergPillarRoofNoise r field_35499 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; icebergSurfaceNoise s field_35500 + f Lnet/minecraft/world/level/levelgen/PositionalRandomFactory; noiseRandom t field_35292 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; surfaceNoise u field_35293 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; surfaceSecondaryNoise v field_35680 + m (II)I getSurfaceDepth a method_39552 + p 1 x + p 2 z + m (III)Lnet/minecraft/world/level/block/state/BlockState; getBand a method_39103 + p 1 x + p 2 y + p 3 z + m (ILnet/minecraft/world/level/biome/Biome;Lnet/minecraft/world/level/chunk/BlockColumn;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V frozenOceanExtension a method_39104 + p 1 minSurfaceLevel + p 2 biome + p 3 blockColumn + p 4 topWaterPos + p 5 x + p 6 z + p 7 height + m (Lnet/minecraft/util/RandomSource;)[Lnet/minecraft/world/level/block/state/BlockState; generateBands a method_39108 + p 0 random + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/world/level/block/state/BlockState;)V makeBands a method_39109 + p 0 random + p 1 output + p 2 minSize + p 3 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStone a method_39333 + p 1 state + m (Lnet/minecraft/world/level/chunk/BlockColumn;IIILnet/minecraft/world/level/LevelHeightAccessor;)V erodedBadlandsExtension a method_39102 + p 1 blockColumn + p 2 x + p 3 z + p 4 height + p 5 level + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/biome/BiomeManager;Lnet/minecraft/core/Registry;ZLnet/minecraft/world/level/levelgen/WorldGenerationContext;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V buildSurface a method_39106 + p 1 randomState + p 2 biomeManager + p 3 biomes + p 4 useLegacyRandomSource + p 5 context + p 6 chunk + p 7 noiseChunk + p 8 ruleSource + m (Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; topMaterial a method_39110 + p 1 rule + p 2 context + p 3 biomeGetter + p 4 chunk + p 5 noiseChunk + p 6 pos + p 7 hasFluid + m (II)D getSurfaceSecondary b method_39555 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/world/level/levelgen/PositionalRandomFactory;)V + p 1 randomState + p 2 defaultBlock + p 3 seaLevel + p 4 noiseRandom + m ()V +c net/minecraft/world/level/levelgen/SurfaceSystem$1 dzq$1 net/minecraft/class_6724$1 + f Lnet/minecraft/world/level/chunk/ChunkAccess; val$protoChunk a field_35294 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; val$columnPos b field_35295 + f Lnet/minecraft/world/level/ChunkPos; val$chunkPos c field_35296 + m (Lnet/minecraft/world/level/levelgen/SurfaceSystem;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/ChunkPos;)V +c net/minecraft/world/level/levelgen/ThreadSafeLegacyRandomSource dzr net/minecraft/class_7384 + f I MODULUS_BITS d field_38760 + f J MODULUS_MASK e field_38761 + f J MULTIPLIER f field_38762 + f J INCREMENT g field_38763 + f Ljava/util/concurrent/atomic/AtomicLong; seed h field_38764 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource i field_38765 + m (J)V + p 1 seed +c net/minecraft/world/level/levelgen/VerticalAnchor dzs net/minecraft/class_5843 + c Represents a resolvable height value, or y coordinate, based on the world minimum and maximum height.\nCan take one of the following three forms:\n

    \n
  • An absolute y value ({@link Absolute}).
  • \n
  • A height above the lowest valid y value in the level ({@link AboveBottom}).
  • \n
  • A height below the highest valid y value in the level ({@link BelowTop}).
  • \n
+ f Lcom/mojang/serialization/Codec; CODEC a field_28915 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; BOTTOM b field_28916 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; TOP c field_28917 + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; bottom a method_33840 + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; absolute a method_33841 + p 0 value + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; merge a method_33843 + p 0 anchor + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lcom/mojang/datafixers/util/Either; split a method_33842 + p 0 anchor + m (Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)I resolveY a method_33844 + p 1 context + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; top b method_33845 + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; aboveBottom b method_33846 + p 0 value + m (I)Lnet/minecraft/world/level/levelgen/VerticalAnchor; belowTop c method_33849 + p 0 value + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$AboveBottom dzs$a net/minecraft/class_5843$class_5844 + f Lcom/mojang/serialization/Codec; CODEC d field_28919 + f I offset e comp_507 + m ()I offset c comp_507 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$Absolute dzs$b net/minecraft/class_5843$class_5845 + f Lcom/mojang/serialization/Codec; CODEC d field_28920 + f I y e comp_508 + m ()I y c comp_508 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/VerticalAnchor$BelowTop dzs$c net/minecraft/class_5843$class_5846 + f Lcom/mojang/serialization/Codec; CODEC d field_28921 + f I offset e comp_509 + m ()I offset c comp_509 + m (I)V + m ()V +c net/minecraft/world/level/levelgen/WorldDimensions dzt net/minecraft/class_7723 + f Lcom/mojang/serialization/MapCodec; CODEC a field_40363 + f Ljava/util/Map; dimensions b comp_1014 + f Ljava/util/Set; BUILTIN_ORDER c field_40364 + f I VANILLA_DIMENSION_COUNT d field_40365 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; overworld a method_45513 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; get a method_45514 + p 1 stemKey + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)Lcom/mojang/serialization/Lifecycle; checkStability a method_45515 + p 0 key + p 1 stem + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45516 a method_45516 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableOverworld a method_45517 + p 0 levelStem + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V method_45524 a method_45524 + m (Ljava/util/Map;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Ljava/util/Map; withOverworld a method_45519 + p 0 stemMap + p 1 dimensionType + p 2 chunkGenerator + m (Ljava/util/stream/Stream;)Ljava/util/stream/Stream; keysInOrder a method_45525 + p 0 stemKeys + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; bake a method_45518 + p 1 stemRegistry + m (Lnet/minecraft/core/Registry;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V method_45521 a method_45521 + m (Lnet/minecraft/core/Registry;Ljava/util/Map;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Ljava/util/Map; withOverworld a method_45520 + p 0 dimensionTypeRegistry + p 1 stemMap + p 2 chunkGenerator + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;)Lnet/minecraft/world/level/levelgen/WorldDimensions; replaceOverworldGenerator a method_45522 + p 1 registryAccess + p 2 chunkGenerator + m (Lnet/minecraft/core/WritableRegistry;Lnet/minecraft/world/level/levelgen/WorldDimensions$1Entry;)V method_45523 a method_45523 + m ()Lcom/google/common/collect/ImmutableSet; levels b method_45526 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_45527 b method_45527 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)Z isVanillaLike b method_45528 + p 0 key + p 1 stem + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableNether b method_45529 + p 0 levelStem + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty b method_45530 + p 0 stemRegistry + m ()Z isDebug c method_45531 + m (Lnet/minecraft/resources/ResourceKey;)Z method_45532 c method_45532 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Z isStableEnd c method_45533 + p 0 levelStem + m ()Ljava/util/Map; dimensions d comp_1014 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; method_45534 d method_45534 + m (Ljava/util/Map;)V + p 1 dimensions + m (Lnet/minecraft/core/Registry;)V + p 1 stemRegistry + m ()V +c net/minecraft/world/level/levelgen/WorldDimensions$1Entry dzt$a net/minecraft/class_7723$class_7724 + f Lnet/minecraft/resources/ResourceKey; key a comp_1015 + f Lnet/minecraft/world/level/dimension/LevelStem; value b comp_1016 + m ()Lnet/minecraft/resources/ResourceKey; key a comp_1015 + m ()Lnet/minecraft/world/level/dimension/LevelStem; value b comp_1016 + m ()Lnet/minecraft/core/RegistrationInfo; registrationInfo c method_57014 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V +c net/minecraft/world/level/levelgen/WorldDimensions$Complete dzt$b net/minecraft/class_7723$class_7725 + f Lnet/minecraft/core/Registry; dimensions a comp_1017 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty b comp_1018 + m ()Lcom/mojang/serialization/Lifecycle; lifecycle a method_45536 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; dimensionsRegistryAccess b method_45537 + m ()Lnet/minecraft/core/Registry; dimensions c comp_1017 + m ()Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty d comp_1018 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;)V +c net/minecraft/world/level/levelgen/WorldGenSettings dzu net/minecraft/class_7726 + f Lcom/mojang/serialization/Codec; CODEC a field_40366 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1019 + f Lnet/minecraft/world/level/levelgen/WorldDimensions; dimensions c comp_1020 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options a comp_1019 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lcom/mojang/serialization/DataResult; encode a method_45538 + p 0 ops + p 1 options + p 2 dimensions + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/RegistryAccess;)Lcom/mojang/serialization/DataResult; encode a method_45539 + p 0 ops + p 1 options + p 2 access + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_45540 a method_45540 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; dimensions b comp_1020 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)V + m ()V +c net/minecraft/world/level/levelgen/WorldGenerationContext dzv net/minecraft/class_5868 + f I minY a field_34030 + f I height b field_34031 + m ()I getMinGenY a method_30462 + m ()I getGenDepth b method_30458 + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 generator + p 2 level +c net/minecraft/world/level/levelgen/WorldOptions dzw net/minecraft/class_5285 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24826 + f Lnet/minecraft/world/level/levelgen/WorldOptions; DEMO_OPTIONS b field_40367 + f J seed c field_24526 + f Z generateStructures d field_24527 + f Z generateBonusChest e field_24528 + f Ljava/util/Optional; legacyCustomOptions f field_24532 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; defaultWithRandomSeed a method_45541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28606 a method_28606 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;)Ljava/util/Optional; method_28605 a method_28605 + m (Ljava/lang/String;)Ljava/util/OptionalLong; parseSeed a method_46720 + p 0 seed + m (Ljava/util/OptionalLong;)Lnet/minecraft/world/level/levelgen/WorldOptions; withSeed a method_28024 + p 1 seed + m (Z)Lnet/minecraft/world/level/levelgen/WorldOptions; withBonusChest a method_28036 + p 1 generateBonusChest + m ()J seed b method_28028 + m (Z)Lnet/minecraft/world/level/levelgen/WorldOptions; withStructures b method_45542 + p 1 generateStructures + m ()Z generateStructures c method_28029 + m ()Z generateBonusChest d method_28030 + m ()Z isOldCustomizedWorld e method_28035 + m ()J randomSeed f method_46721 + m (JZZ)V + p 1 seed + p 3 generateStructures + p 4 generateBonusChest + m (JZZLjava/util/Optional;)V + p 1 seed + p 3 generateStructures + p 4 generateBonusChest + p 5 legacyCustomOptions + m ()V +c net/minecraft/world/level/levelgen/WorldgenRandom dzx net/minecraft/class_2919 + f Lnet/minecraft/util/RandomSource; randomSource d field_35141 + f I count e field_28768 + m (IIJJ)Lnet/minecraft/util/RandomSource; seedSlimeChunk a method_12662 + c Creates a new {@code RandomSource}, seeded for determining whether a chunk is a slime chunk or not. + p 0 chunkX + p 1 chunkZ + p 2 levelSeed + p 4 salt + c For vanilla slimes, this is always {@code 987234911L} + m (JII)J setDecorationSeed a method_12661 + c Seeds the current random for chunk decoration, including spawning mobs and for use in feature placement.\nThe coordinates correspond to the minimum block position within a given chunk. + p 1 levelSeed + p 3 minChunkBlockX + p 4 minChunkBlockZ + m (JIII)V setLargeFeatureWithSalt a method_12665 + c Seeds the current random for placing the starts of structure features.\nThe region coordinates are the region which the target chunk lies in. For example, witch hut regions are 32x32 chunks, so all chunks within that region would be seeded identically.\nThe size of the regions themselves are determined by the {@code spacing} of the structure settings. + p 1 levelSeed + p 3 regionX + p 4 regionZ + p 5 salt + c A salt unique to each structure. + m (JII)V setFeatureSeed b method_12664 + c Seeds the current random for placing features.\nEach feature is seeded differently in order to seem more random. However, it does not do a good job of this, and issues can arise from the salt being small with features that have the same decoration step and are close together in the feature lists. + p 1 decorationSeed + c The seed computed by {@link #setDecorationSeed(long, int, int)} + p 3 index + c The cumulative index of the generating feature within the biome's list of features. + p 4 decorationStep + c The ordinal of the {@link net.minecraft.world.level.levelgen.GenerationStep.Decoration} of the generating feature. + m (JII)V setLargeFeatureSeed c method_12663 + c Seeds the current random for placing large features such as caves, strongholds, and mineshafts. + p 1 baseSeed + c This is passed in as the level seed, or in some cases such as carvers, as an offset from the level seed unique to each carver. + p 3 chunkX + p 4 chunkZ + m ()I getCount l method_35335 + m (Lnet/minecraft/util/RandomSource;)V + p 1 randomSource +c net/minecraft/world/level/levelgen/WorldgenRandom$Algorithm dzx$a net/minecraft/class_2919$class_6675 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; LEGACY a field_35142 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; XOROSHIRO b field_35143 + f Ljava/util/function/LongFunction; constructor c field_35144 + f [Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; $VALUES d field_35145 + m ()[Lnet/minecraft/world/level/levelgen/WorldgenRandom$Algorithm; $values a method_39005 + m (J)Lnet/minecraft/util/RandomSource; newInstance a method_39006 + p 1 seed + m (Ljava/lang/String;ILjava/util/function/LongFunction;)V + p 3 constructor + m ()V +c net/minecraft/world/level/levelgen/Xoroshiro128PlusPlus dzy net/minecraft/class_6676 + f Lcom/mojang/serialization/Codec; CODEC a field_44879 + f J seedLo b field_35146 + f J seedHi c field_35147 + m ()J nextLong a method_39007 + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)Ljava/util/stream/LongStream; method_51857 a method_51857 + m (Ljava/util/stream/LongStream;)Lcom/mojang/serialization/DataResult; method_51858 a method_51858 + m ([J)Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; method_51859 a method_51859 + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)V + p 1 seed + m (JJ)V + p 1 seedLo + p 3 seedHi + m ()V +c net/minecraft/world/level/levelgen/XoroshiroRandomSource dzz net/minecraft/class_6677 + f Lcom/mojang/serialization/Codec; CODEC b field_44880 + f F FLOAT_UNIT c field_35148 + f D DOUBLE_UNIT d field_35149 + f Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; randomNumberGenerator e field_35150 + f Lnet/minecraft/world/level/levelgen/MarsagliaPolarGaussian; gaussianSource f field_35151 + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource; method_51860 a method_51860 + m (Lnet/minecraft/world/level/levelgen/XoroshiroRandomSource;)Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus; method_51861 a method_51861 + m (I)J nextBits c method_39008 + p 1 bits + m (J)V + p 1 seed + m (Lnet/minecraft/world/level/levelgen/RandomSupport$Seed128bit;)V + p 1 seed + m (JJ)V + p 1 seedLo + p 3 seedHi + m (Lnet/minecraft/world/level/levelgen/Xoroshiro128PlusPlus;)V + p 1 randomNumberGenerator + m ()V +c net/minecraft/world/level/levelgen/XoroshiroRandomSource$XoroshiroPositionalRandomFactory dzz$a net/minecraft/class_6677$class_6678 + f J seedLo a field_35153 + f J seedHi b field_35154 + m (JJ)V + p 1 seedLo + p 3 seedHi +c net/minecraft/world/level/levelgen/blending/Blender eaa net/minecraft/class_6748 + f Lnet/minecraft/world/level/levelgen/blending/Blender; EMPTY a field_35501 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; SHIFT_NOISE b field_35681 + f I HEIGHT_BLENDING_RANGE_CELLS c field_35502 + f I HEIGHT_BLENDING_RANGE_CHUNKS d field_35503 + f I DENSITY_BLENDING_RANGE_CELLS e field_35504 + f I DENSITY_BLENDING_RANGE_CHUNKS f field_35505 + f D OLD_CHUNK_XZ_RADIUS g field_36224 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; heightAndBiomeBlendingData h field_36343 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; densityBlendingData i field_36344 + m ()Lnet/minecraft/world/level/levelgen/blending/Blender; empty a method_39336 + m (D)D heightToOffset a method_39337 + p 0 height + m (DDDDDD)D distanceToCube a method_39808 + p 0 x1 + p 2 y1 + p 4 z1 + p 6 x2 + p 8 y2 + p 10 z2 + m (DDDDDDD)D method_39807 a method_39807 + m (II)Lnet/minecraft/world/level/levelgen/blending/Blender$BlendingOutput; blendOffsetAndFactor a method_39340 + p 1 x + p 2 z + m (III)Lnet/minecraft/core/Holder; blendBiome a method_39561 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/world/level/levelgen/blending/Blender$CellValueGetter;)D getBlendingDataValue a method_39562 + p 1 x + p 2 y + p 3 z + p 4 getter + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IIID)V method_39339 a method_39339 + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_40026 a method_40026 + m (IIILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_39560 a method_39560 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;IID)V method_39341 a method_39341 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableDouble;Ljava/lang/Long;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_40027 a method_40027 + m (IILorg/apache/commons/lang3/mutable/MutableDouble;Lorg/apache/commons/lang3/mutable/MutableObject;IILnet/minecraft/core/Holder;)V method_40025 a method_40025 + m (Lnet/minecraft/server/level/WorldGenRegion;)Lnet/minecraft/world/level/levelgen/blending/Blender; of a method_39342 + p 0 region + m (Lnet/minecraft/server/level/WorldGenRegion;Lnet/minecraft/world/level/chunk/ChunkAccess;)V generateBorderTicks a method_39772 + p 0 region + p 1 chunk + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ProtoChunk;)V addAroundOldChunksCarvingMaskFilter a method_39809 + p 0 level + p 1 chunk + m (Lnet/minecraft/world/level/biome/BiomeResolver;)Lnet/minecraft/world/level/biome/BiomeResolver; getBiomeResolver a method_39563 + p 1 resolver + m (Lnet/minecraft/world/level/biome/BiomeResolver;IIILnet/minecraft/world/level/biome/Climate$Sampler;)Lnet/minecraft/core/Holder; method_39564 a method_39564 + m (Lnet/minecraft/world/level/chunk/CarvingMask$Mask;Lnet/minecraft/world/level/chunk/CarvingMask;)V method_39810 a method_39810 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;)V generateBorderTick a method_39773 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/DensityFunction$FunctionContext;D)D blendDensity a method_39338 + p 1 context + p 2 density + m (Lnet/minecraft/world/level/levelgen/blending/Blender$CellValueGetter;IIIII)D getBlendingDataValue a method_39565 + p 1 getter + p 2 sectionX + p 3 sectionZ + p 4 x + p 5 y + p 6 z + m (Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter;III)Z method_39811 a method_39811 + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;Ljava/util/Map;)Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter; makeOldChunkDistanceGetter a method_39815 + p 0 blendingData + p 1 surroundingBlendingData + m (Ljava/util/List;DDD)D method_39813 a method_39813 + m (Ljava/util/List;Lnet/minecraft/core/Direction8;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)V method_39814 a method_39814 + m (Lnet/minecraft/core/Direction8;Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Lnet/minecraft/world/level/levelgen/blending/Blender$DistanceGetter; makeOffsetOldChunkDistanceGetter a method_39812 + p 0 direction + p 1 blendingData + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 heightAndBiomeBlendingData + p 2 densityBlendingData + m ()V +c net/minecraft/world/level/levelgen/blending/Blender$1 eaa$1 net/minecraft/class_6748$1 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V +c net/minecraft/world/level/levelgen/blending/Blender$BlendingOutput eaa$a net/minecraft/class_6748$class_6956 + f D alpha a comp_435 + f D blendingOffset b comp_436 + m ()D alpha a comp_435 + m ()D blendingOffset b comp_436 + m (DD)V +c net/minecraft/world/level/levelgen/blending/Blender$CellValueGetter eaa$b net/minecraft/class_6748$class_6781 +c net/minecraft/world/level/levelgen/blending/Blender$DistanceGetter eaa$c net/minecraft/class_6748$class_6831 +c net/minecraft/world/level/levelgen/blending/BlendingData eab net/minecraft/class_6749 + f I CELL_WIDTH a field_36280 + f I CELL_HEIGHT b field_35511 + f I CELL_RATIO c field_36281 + f D NO_VALUE d field_35513 + f Lcom/mojang/serialization/Codec; CODEC e field_35682 + f D BLENDING_DENSITY_FACTOR f field_35514 + f D SOLID_DENSITY g field_37704 + f D AIR_DENSITY h field_37705 + f I CELLS_PER_SECTION_Y i field_35516 + f I QUARTS_PER_SECTION j field_35683 + f I CELL_HORIZONTAL_MAX_INDEX_INSIDE k field_35684 + f I CELL_HORIZONTAL_MAX_INDEX_OUTSIDE l field_35685 + f I CELL_COLUMN_INSIDE_COUNT m field_35686 + f I CELL_COLUMN_OUTSIDE_COUNT n field_35687 + f I CELL_COLUMN_COUNT o field_35518 + f Lnet/minecraft/world/level/LevelHeightAccessor; areaWithOldGeneration p field_35515 + f Ljava/util/List; SURFACE_BLOCKS q field_35519 + f Z hasCalculatedData r field_35690 + f [D heights s field_35692 + f Ljava/util/List; biomes t field_36345 + f [[D densities u field_35693 + f Lcom/mojang/serialization/Codec; DOUBLE_ARRAY_CODEC v field_35695 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getAreaWithOldGeneration a method_41564 + m (D)Z method_39567 a method_39567 + m (I)I getCellYIndex a method_41565 + p 1 y + m (II)I getInsideIndex a method_39578 + p 0 x + p 1 z + m (III)D getHeight a method_39344 + p 1 x + p 2 y + p 3 z + m (IIIILnet/minecraft/world/level/levelgen/blending/BlendingData$DensityConsumer;)V iterateDensities a method_39346 + p 1 x + p 2 z + p 3 minY + p 4 maxY + p 5 consumer + m (IIILnet/minecraft/world/level/levelgen/blending/BlendingData$BiomeConsumer;)V iterateBiomes a method_40028 + p 1 x + p 2 y + p 3 z + p 4 consumer + m (IILnet/minecraft/world/level/levelgen/blending/BlendingData$HeightConsumer;)V iterateHeights a method_39351 + p 1 x + p 2 z + p 3 consumer + m (ILnet/minecraft/world/level/chunk/ChunkAccess;II)V addValuesForColumn a method_39347 + p 1 index + p 2 chunk + p 3 x + p 4 z + m (Lnet/minecraft/server/level/WorldGenRegion;II)Lnet/minecraft/world/level/levelgen/blending/BlendingData; getOrUpdateBlendingData a method_39570 + p 0 region + p 1 chunkX + p 2 chunkZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39571 a method_39571 + m (Lnet/minecraft/world/level/WorldGenLevel;IIZ)Ljava/util/Set; sideByGenerationAge a method_39579 + p 0 level + p 1 chunkX + p 2 chunkZ + p 3 oldNoiseGeneration + m (Lnet/minecraft/world/level/chunk/ChunkAccess;II)I getHeightAtXZ a method_39349 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;III)[D getDensityColumn a method_39354 + p 1 chunk + p 2 x + p 3 z + p 4 height + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/Set;)V calculateData a method_39572 + p 1 chunk + p 2 directions + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;)D read1 a method_39905 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;)Z isGround a method_39350 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Lcom/mojang/serialization/DataResult; validateArraySize a method_39573 + p 0 blendingData + m ([D)V method_39574 a method_39574 + m ([DI)D getDensity a method_39575 + p 1 heights + p 2 y + m ()I cellCountPerColumn b method_39576 + m (I)I getX b method_39343 + p 0 index + m (II)I getOutsideIndex b method_39582 + p 0 x + p 1 z + m (III)D getDensity b method_39345 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;II)Ljava/util/List; getBiomeColumn b method_41566 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;)D read7 b method_39906 + p 0 chunk + p 1 pos + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/util/Optional; method_39580 b method_39580 + m ()I quartCountPerColumn c method_41567 + m (I)I getZ c method_39352 + p 0 index + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/lang/Integer; method_41568 c method_41568 + m ()I getColumnMinY d method_39581 + m (I)I zeroIfNegative d method_39355 + p 0 value + m (Lnet/minecraft/world/level/levelgen/blending/BlendingData;)Ljava/lang/Integer; method_41569 d method_41569 + m ()I getMinY e method_39583 + m ()Ljava/lang/String; method_49533 f method_49533 + m (IILjava/util/Optional;)V + p 1 sectionX + p 2 sectionZ + p 3 heights + m ()V +c net/minecraft/world/level/levelgen/blending/BlendingData$BiomeConsumer eab$a net/minecraft/class_6749$class_6853 +c net/minecraft/world/level/levelgen/blending/BlendingData$DensityConsumer eab$b net/minecraft/class_6749$class_6750 +c net/minecraft/world/level/levelgen/blending/BlendingData$HeightConsumer eab$c net/minecraft/class_6749$class_6751 +c net/minecraft/world/level/levelgen/blending/package-info eac net/minecraft/class_6753 +c net/minecraft/world/level/levelgen/blockpredicates/AllOfPredicate ead net/minecraft/class_6644 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35052 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38874 + p 1 level + p 2 pos + m (Ljava/util/List;)V + p 1 predicates + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/AnyOfPredicate eae net/minecraft/class_6645 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35053 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38875 + m (Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/BlockPredicate eaf net/minecraft/class_6646 + f Lcom/mojang/serialization/Codec; CODEC b field_35054 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ONLY_IN_AIR_PREDICATE c field_35696 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ONLY_IN_AIR_OR_WATER_PREDICATE d field_35697 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; type a method_38873 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesTag a method_39907 + p 0 tag + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; wouldSurvive a method_39009 + p 0 state + p 1 offset + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; not a method_38877 + p 0 predicate + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38878 + p 0 predicate1 + p 1 predicate2 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38880 + p 0 predicates + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; hasSturdyFace a method_39930 + p 0 direction + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceable a method_39010 + p 0 offset + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesTag a method_39908 + p 0 offset + p 1 tag + m (Lnet/minecraft/core/Vec3i;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_38881 + p 0 offset + p 1 blocks + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; hasSturdyFace a method_39909 + p 0 offset + p 1 direction + m (Lnet/minecraft/core/Vec3i;[Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_43288 + p 0 offset + p 1 blocks + m (Lnet/minecraft/core/Vec3i;[Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids a method_43289 + p 0 offset + p 1 fluids + m ([Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks a method_43290 + p 0 blocks + m ([Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allOf a method_38882 + p 0 predicates + m ([Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids a method_43291 + p 0 fluids + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceable b method_38883 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38884 + p 0 predicate1 + p 1 predicate2 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38885 + p 0 predicates + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; solid b method_39584 + p 0 offset + m (Lnet/minecraft/core/Vec3i;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesFluids b method_38886 + p 0 offset + p 1 fluids + m ([Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; anyOf b method_38887 + p 0 predicates + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; solid c method_39585 + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; matchesBlocks c method_39910 + p 0 blocks + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; noFluid c method_45543 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; noFluid d method_45544 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; insideWorld d method_39586 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; alwaysTrue e method_39011 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; unobstructed e method_60284 + p 0 offset + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; unobstructed f method_60285 + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType eag net/minecraft/class_6647 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_BLOCKS a field_35055 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_BLOCK_TAG b field_36282 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; MATCHING_FLUIDS c field_35056 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; HAS_STURDY_FACE d field_36283 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; SOLID e field_35698 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; REPLACEABLE f field_35057 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; WOULD_SURVIVE g field_35155 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; INSIDE_WORLD_BOUNDS h field_35699 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; ANY_OF i field_35058 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; ALL_OF j field_35059 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; NOT k field_35060 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; TRUE l field_35156 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; UNOBSTRUCTED m field_51788 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_38888 a method_38888 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicateType; register a method_38889 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/CombiningPredicate eah net/minecraft/class_6648 + f Ljava/util/List; predicates e field_35061 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/CombiningPredicate;)Ljava/util/List; method_38890 a method_38890 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; codec a method_38891 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38892 a method_38892 + m (Ljava/util/List;)V + p 1 predicates +c net/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate eai net/minecraft/class_6847 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36284 + f Lnet/minecraft/core/Vec3i; offset e field_36285 + f Lnet/minecraft/core/Direction; direction f field_36286 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39912 a method_39912 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39911 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate;)Lnet/minecraft/core/Direction; method_39913 a method_39913 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/HasSturdyFacePredicate;)Lnet/minecraft/core/Vec3i; method_39914 b method_39914 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Direction;)V + p 1 offset + p 2 direction + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/InsideWorldBoundsPredicate eaj net/minecraft/class_6783 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35700 + f Lnet/minecraft/core/Vec3i; offset e field_35701 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39588 a method_39588 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39587 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/InsideWorldBoundsPredicate;)Lnet/minecraft/core/Vec3i; method_39589 a method_39589 + m (Lnet/minecraft/core/Vec3i;)V + p 1 offset + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingBlockTagPredicate eak net/minecraft/class_6848 + f Lnet/minecraft/tags/TagKey; tag a field_36287 + f Lcom/mojang/serialization/MapCodec; CODEC e field_36288 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingBlockTagPredicate;)Lnet/minecraft/tags/TagKey; method_39915 a method_39915 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39916 b method_39916 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/tags/TagKey;)V + p 1 offset + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingBlocksPredicate eal net/minecraft/class_6649 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35062 + f Lnet/minecraft/core/HolderSet; blocks e field_35063 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingBlocksPredicate;)Lnet/minecraft/core/HolderSet; method_38896 a method_38896 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38894 b method_38894 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/HolderSet;)V + p 1 offset + p 2 blocks + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/MatchingFluidsPredicate eam net/minecraft/class_6650 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35065 + f Lnet/minecraft/core/HolderSet; fluids e field_35066 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/MatchingFluidsPredicate;)Lnet/minecraft/core/HolderSet; method_38900 a method_38900 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38898 b method_38898 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/HolderSet;)V + p 1 offset + p 2 fluids + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/NotPredicate ean net/minecraft/class_6651 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35068 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; predicate e field_35069 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38902 a method_38902 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_38901 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/NotPredicate;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_38903 a method_38903 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 predicate + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/ReplaceablePredicate eao net/minecraft/class_6652 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35071 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38905 b method_38905 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/SolidPredicate eap net/minecraft/class_6784 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35702 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39590 b method_39590 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/StateTestingPredicate eaq net/minecraft/class_6679 + f Lnet/minecraft/core/Vec3i; offset f field_35157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; stateTestingCodec a method_39013 + p 0 instance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39012 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z test a method_38893 + p 1 state + m (Lnet/minecraft/world/level/levelgen/blockpredicates/StateTestingPredicate;)Lnet/minecraft/core/Vec3i; method_39014 a method_39014 + m (Lnet/minecraft/core/Vec3i;)V + p 1 offset +c net/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate ear net/minecraft/class_6680 + f Lnet/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate; INSTANCE a field_35158 + f Lcom/mojang/serialization/MapCodec; CODEC e field_35159 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39015 + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/TrueBlockPredicate; method_39016 g method_39016 + m ()V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/UnobstructedPredicate eas net/minecraft/class_9751 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51789 + f Lnet/minecraft/core/Vec3i; offset e comp_2779 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60286 a method_60286 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_60287 + p 1 level + p 2 pos + m ()Lnet/minecraft/core/Vec3i; offset g comp_2779 + m (Lnet/minecraft/core/Vec3i;)V + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate eat net/minecraft/class_6681 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35160 + f Lnet/minecraft/core/Vec3i; offset e field_35161 + f Lnet/minecraft/world/level/block/state/BlockState; state f field_35162 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39018 a method_39018 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z test a method_39017 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate;)Lnet/minecraft/world/level/block/state/BlockState; method_39019 a method_39019 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/WouldSurvivePredicate;)Lnet/minecraft/core/Vec3i; method_39020 b method_39020 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 offset + p 2 state + m ()V +c net/minecraft/world/level/levelgen/blockpredicates/package-info eau net/minecraft/class_6653 +c net/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration eav net/minecraft/class_5869 + f Lcom/mojang/serialization/Codec; CODEC a field_29041 + f Lnet/minecraft/util/valueproviders/FloatProvider; verticalRotation b field_31479 + f Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration; shape c field_31480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35336 a method_35336 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration; method_35337 a method_35337 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35338 b method_35338 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; method_35339 c method_35339 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + p 7 verticalRotation + p 8 shape + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)V + p 1 config + p 2 verticalRotation + p 3 shape + m ()V +c net/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration eav$a net/minecraft/class_5869$class_6107 + f Lcom/mojang/serialization/Codec; CODEC a field_31481 + f Lnet/minecraft/util/valueproviders/FloatProvider; distanceFactor b field_31482 + f Lnet/minecraft/util/valueproviders/FloatProvider; thickness c field_31483 + f I widthSmoothness d field_31484 + f Lnet/minecraft/util/valueproviders/FloatProvider; horizontalRadiusFactor e field_31485 + f F verticalRadiusDefaultFactor f field_31486 + f F verticalRadiusCenterFactor g field_31487 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35340 a method_35340 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Float; method_35341 a method_35341 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Float; method_35342 b method_35342 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35343 c method_35343 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Ljava/lang/Integer; method_35344 d method_35344 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35345 e method_35345 + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration$CanyonShapeConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35346 f method_35346 + m (Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;ILnet/minecraft/util/valueproviders/FloatProvider;FF)V + p 1 distanceFactor + p 2 thickness + p 3 widthSmoothness + p 4 horizontalRadiusFactor + p 5 verticalRadiusDefaultFactor + p 6 verticalRadiusCenterFactor + m ()V +c net/minecraft/world/level/levelgen/carver/CanyonWorldCarver eaw net/minecraft/class_5870 + c A carver responsible for creating ravines, or canyons. + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_33959 + p 1 config + p 2 random + m (Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;DFF)D updateVerticalRadius a method_33960 + p 1 config + p 2 random + p 3 verticalRadius + p 5 branchCount + p 6 currentBranch + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/util/RandomSource;)[F initWidthFactors a method_33966 + c Generates a random array full of width factors which are used to create the uneven walls of a ravine.\n@return An array of length {@code context.getGenDepth()}, populated with values between 1.0 and 2.0 inclusive. + p 1 context + p 2 config + p 3 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;JLnet/minecraft/world/level/levelgen/Aquifer;DDDFFFIIDLnet/minecraft/world/level/chunk/CarvingMask;)V doCarve a method_33961 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 seed + p 7 aquifer + p 8 x + p 10 y + p 12 z + p 14 thickness + p 15 yaw + p 16 pitch + p 17 branchIndex + p 18 branchCount + p 19 horizontalVerticalRatio + p 21 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CanyonCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_33962 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;[FDDDI)Z shouldSkip a method_33964 + p 1 context + p 2 widthFactors + p 3 relativeX + p 5 relativeY + p 7 relativeZ + p 9 y + m ([FLnet/minecraft/world/level/levelgen/carver/CarvingContext;DDDI)Z method_33965 a method_33965 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/carver/CarverConfiguration eax net/minecraft/class_5871 + f Lcom/mojang/serialization/MapCodec; CODEC d field_29054 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; y e field_31488 + f Lnet/minecraft/util/valueproviders/FloatProvider; yScale f field_31489 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; lavaLevel g field_31490 + f Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; debugSettings h field_29053 + f Lnet/minecraft/core/HolderSet; replaceable i field_38864 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33968 a method_33968 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/core/HolderSet; method_43292 a method_43292 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; method_36411 b method_36411 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35348 c method_35348 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35349 d method_35349 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35350 e method_35350 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Ljava/lang/Float; method_35351 f method_35351 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + m ()V +c net/minecraft/world/level/levelgen/carver/CarverDebugSettings eay net/minecraft/class_5872 + f Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; DEFAULT a field_29055 + f Lcom/mojang/serialization/Codec; CODEC b field_29056 + f Z debugMode c field_29057 + f Lnet/minecraft/world/level/block/state/BlockState; airState d field_29058 + f Lnet/minecraft/world/level/block/state/BlockState; waterState e field_33611 + f Lnet/minecraft/world/level/block/state/BlockState; lavaState f field_33612 + f Lnet/minecraft/world/level/block/state/BlockState; barrierState g field_33613 + m ()Z isDebugMode a method_33970 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33971 a method_33971 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_36412 + p 0 airState + p 1 waterState + p 2 lavaState + p 3 barrierState + m (ZLnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_33972 + p 0 debugMode + p 1 airState + m (ZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings; of a method_36413 + p 0 debugMode + p 1 airState + p 2 waterState + p 3 lavaState + p 4 barrierState + m ()Lnet/minecraft/world/level/block/state/BlockState; getAirState b method_33973 + m ()Lnet/minecraft/world/level/block/state/BlockState; getWaterState c method_36414 + m ()Lnet/minecraft/world/level/block/state/BlockState; getLavaState d method_36415 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBarrierState e method_36416 + m (ZLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 debugMode + p 2 airState + p 3 waterState + p 4 lavaState + p 5 barrierState + m ()V +c net/minecraft/world/level/levelgen/carver/CarvingContext eaz net/minecraft/class_5873 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_35299 + f Lnet/minecraft/world/level/levelgen/NoiseChunk; noiseChunk b field_35703 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState c field_37706 + f Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource; surfaceRule d field_37707 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos;Z)Ljava/util/Optional; topMaterial a method_39114 + p 1 biomeMapper + p 2 access + p 3 pos + p 4 hasFluid + m ()Lnet/minecraft/core/RegistryAccess; registryAccess c method_39115 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState d method_41570 + m (Lnet/minecraft/world/level/levelgen/NoiseBasedChunkGenerator;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/NoiseChunk;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/SurfaceRules$RuleSource;)V + p 1 generator + p 2 registryAccess + p 3 level + p 4 noiseChunk + p 5 randomState + p 6 surfaceRule +c net/minecraft/world/level/levelgen/carver/CaveCarverConfiguration eba net/minecraft/class_6108 + f Lcom/mojang/serialization/Codec; CODEC a field_31491 + f Lnet/minecraft/util/valueproviders/FloatProvider; horizontalRadiusMultiplier b field_31492 + f Lnet/minecraft/util/valueproviders/FloatProvider; verticalRadiusMultiplier c field_31493 + f Lnet/minecraft/util/valueproviders/FloatProvider; floorLevel j field_31494 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35352 a method_35352 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35353 a method_35353 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35354 b method_35354 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_35355 c method_35355 + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; method_35356 d method_35356 + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/carver/CarverDebugSettings;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 debugSettings + p 6 replaceable + p 7 horizontalRadiusMultiplier + p 8 verticalRadiusMultiplier + p 9 floorLevel + m (FLnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/core/HolderSet;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 probability + p 2 y + p 3 yScale + p 4 lavaLevel + p 5 replaceable + p 6 horizontalRadiusMultiplier + p 7 verticalRadiusMultiplier + p 8 floorLevel + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 config + p 2 horizontalRadiusMultiplier + p 3 verticalRadiusMultiplier + p 4 floorLevel + m ()V +c net/minecraft/world/level/levelgen/carver/CaveWorldCarver ebb net/minecraft/class_2925 + c A carver which creates Minecraft's most common cave types. + m ()I getCaveBound a method_16577 + m (DDDD)Z shouldSkip a method_33974 + p 0 relative + p 2 relativeY + p 4 relativeZ + p 6 minrelativeY + m (DLnet/minecraft/world/level/levelgen/carver/CarvingContext;DDDI)Z method_33975 a method_33975 + m (Lnet/minecraft/util/RandomSource;)F getThickness a method_16576 + p 1 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;JLnet/minecraft/world/level/levelgen/Aquifer;DDDDDFFFIIDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)V createTunnel a method_12675 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 seed + p 7 aquifer + p 8 x + p 10 y + p 12 z + p 14 horizontalRadiusMultiplier + p 16 verticalRadiusMultiplier + p 18 thickness + p 19 yaw + p 20 pitch + p 21 branchIndex + p 22 branchCount + p 23 horizontalVerticalRatio + p 25 carvingMask + p 26 skipChecker + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_35357 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/Aquifer;DDDFDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)V createRoom a method_12674 + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 aquifer + p 6 x + p 8 y + p 10 z + p 12 radius + p 13 horizontalVerticalRatio + p 15 carvingMask + p 16 skipChecker + m (Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_35358 + p 1 config + p 2 random + m ()D getYScale b method_16578 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver ebc net/minecraft/class_2922 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25832 + f Lcom/mojang/serialization/Codec; CODEC b field_24828 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_26755 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; worldCarver d comp_330 + f Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; config e comp_331 + m ()Lnet/minecraft/world/level/levelgen/carver/WorldCarver; worldCarver a comp_330 + m (Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_12669 + p 1 random + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_12668 + p 1 context + p 2 chunk + p 3 biomeAccessor + p 4 random + p 5 aquifer + p 6 chunkPos + p 7 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver;)Lnet/minecraft/world/level/levelgen/carver/WorldCarver; method_28612 a method_28612 + m ()Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration; config b comp_331 + m (Lnet/minecraft/world/level/levelgen/carver/WorldCarver;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)V + p 1 worldCarver + p 2 config + m ()V +c net/minecraft/world/level/levelgen/carver/NetherWorldCarver ebd net/minecraft/class_2934 + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CaveCarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z carveBlock a method_35359 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/carver/WorldCarver ebe net/minecraft/class_2939 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; CAVE a field_29060 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; NETHER_CAVE b field_13297 + f Lnet/minecraft/world/level/levelgen/carver/WorldCarver; CANYON c field_13295 + f Lnet/minecraft/world/level/block/state/BlockState; AIR d field_13301 + f Lnet/minecraft/world/level/block/state/BlockState; CAVE_AIR e field_13294 + f Lnet/minecraft/world/level/material/FluidState; WATER f field_13305 + f Lnet/minecraft/world/level/material/FluidState; LAVA g field_13296 + f Ljava/util/Set; liquids h field_13298 + f Lcom/mojang/serialization/MapCodec; configuredCodec i field_24831 + m (Lnet/minecraft/world/level/ChunkPos;DDIIF)Z canReach a method_33976 + p 0 chunkPos + p 1 x + p 3 z + p 5 branchIndex + p 6 branchCount + p 7 width + m (Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_39116 a method_39116 + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Lnet/minecraft/world/level/levelgen/carver/ConfiguredWorldCarver; configured a method_28614 + p 1 config + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/util/RandomSource;)Z isStartChunk a method_12705 + p 1 config + p 2 random + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z canReplaceBlock a method_12709 + p 1 config + p 2 state + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/Aquifer;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/CarvingMask;)Z carve a method_12702 + c Carves the given chunk with caves that originate from the given {@code chunkPos}.\nThis method is invoked 289 times in order to generate each chunk (once for every position in an 8 chunk radius, or 17x17 chunk area, centered around the target chunk).\n\n@see net.minecraft.world.level.chunk.ChunkGenerator#applyCarvers + p 1 context + p 2 config + p 3 chunk + c The chunk to be carved + p 4 biomeAccessor + p 5 random + p 6 aquifer + p 7 chunkPos + c The chunk position this carver is being called from + p 8 carvingMask + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;Lorg/apache/commons/lang3/mutable/MutableBoolean;)Z carveBlock a method_16581 + c Carves a single block, replacing it with the appropriate state if possible, and handles replacing exposed dirt with grass. + p 1 context + p 2 config + p 3 chunk + p 4 biomeGetter + p 5 carvingMask + p 6 pos + c The position to carve at. The method does not mutate this position. + p 7 checkPos + c An additional mutable block position object to be used and modified by the method + p 8 aquifer + p 9 reachedSurface + c Set to true if the block carved was the surface, which is checked as being either grass or mycelium + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/chunk/ChunkAccess;Ljava/util/function/Function;Lnet/minecraft/world/level/levelgen/Aquifer;DDDDDLnet/minecraft/world/level/chunk/CarvingMask;Lnet/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker;)Z carveEllipsoid a method_33978 + c Carves blocks in an ellipsoid (more accurately a spheroid), defined by a center (x, y, z) position, with a horizontal and vertical radius (the semi-axes) + p 1 context + p 2 config + p 3 chunk + p 4 biomeAccessor + p 5 aquifer + p 6 x + p 8 y + p 10 z + p 12 horizontalRadius + p 14 verticalRadius + p 16 carvingMask + p 17 skipChecker + c Used to skip certain blocks within the carved region. + m (Lnet/minecraft/world/level/levelgen/carver/CarvingContext;Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/Aquifer;)Lnet/minecraft/world/level/block/state/BlockState; getCarveState a method_36418 + p 1 context + p 2 config + p 3 pos + p 4 aquifer + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/carver/WorldCarver;)Lnet/minecraft/world/level/levelgen/carver/WorldCarver; register a method_12704 + p 0 key + p 1 carver + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;)Z isDebugEnabled b method_33980 + p 0 config + m (Lnet/minecraft/world/level/levelgen/carver/CarverConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getDebugState b method_36417 + p 0 config + p 1 state + m ()Lcom/mojang/serialization/MapCodec; configuredCodec c method_28616 + m ()I getRange d method_12710 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/carver/WorldCarver$CarveSkipChecker ebe$a net/minecraft/class_2939$class_5874 + c Used to define certain positions to skip or ignore when carving. +c net/minecraft/world/level/levelgen/carver/package-info ebf net/minecraft/class_6109 +c net/minecraft/world/level/levelgen/feature/AbstractHugeMushroomFeature ebg net/minecraft/class_4625 + m (IIII)I getTreeRadiusForHeight a method_23372 + p 2 height + p 3 foliageRadius + p 4 y + m (Lnet/minecraft/util/RandomSource;)I getTreeHeight a method_23377 + p 1 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)V makeCap a method_23375 + p 1 level + p 2 random + p 3 pos + p 4 treeHeight + p 5 mutablePos + p 6 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;ILnet/minecraft/core/BlockPos$MutableBlockPos;)V placeTrunk a method_23376 + p 1 level + p 2 random + p 3 pos + p 4 config + p 5 maxHeight + p 6 mutablePos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Z isValidPosition a method_23374 + p 1 level + p 2 pos + p 3 maxHeight + p 4 mutablePos + p 5 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BambooFeature ebh net/minecraft/class_2942 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TRUNK a field_13308 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_FINAL_LARGE b field_13311 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TOP_LARGE c field_13310 + f Lnet/minecraft/world/level/block/state/BlockState; BAMBOO_TOP_SMALL d field_13309 + m (Lcom/mojang/serialization/Codec;)V + m ()V +c net/minecraft/world/level/levelgen/feature/BasaltColumnsFeature ebi net/minecraft/class_5153 + f Lcom/google/common/collect/ImmutableList; CANNOT_PLACE_ON a field_24132 + f I UNCLUSTERED_SIZE ao field_31498 + f I CLUSTERED_REACH b field_31495 + f I CLUSTERED_SIZE c field_31496 + f I UNCLUSTERED_REACH d field_31497 + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPlaceAt a method_30379 + p 0 level + p 1 seaLevel + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos$MutableBlockPos;I)Lnet/minecraft/core/BlockPos; findSurface a method_27094 + p 0 level + p 1 seaLevel + p 2 pos + p 3 distance + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos;)Z isAirOrLavaOcean a method_27095 + p 0 level + p 1 seaLevel + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/BlockPos;II)Z placeColumn a method_27096 + p 1 level + p 2 seaLevel + p 3 pos + p 4 distance + p 5 reach + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Lnet/minecraft/core/BlockPos; findAir a method_27098 + p 0 level + p 1 pos + p 2 distance + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/BasaltPillarFeature ebj net/minecraft/class_4779 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeBaseHangOff a method_24434 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeHangOff b method_24435 + p 1 level + p 2 random + p 3 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlockBlobFeature ebk net/minecraft/class_2950 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/BlockColumnFeature ebl net/minecraft/class_6654 + m ([IIIZ)V truncate a method_38906 + p 0 layerHeights + p 1 totalHeight + p 2 currentHeight + p 3 prioritizeTip + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlockPileFeature ebm net/minecraft/class_3805 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z mayPlaceOn a method_16707 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration;)V tryPlaceBlock a method_16708 + p 1 level + p 2 pos + p 3 random + p 4 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/BlueIceFeature ebn net/minecraft/class_2954 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/BonusChestFeature ebo net/minecraft/class_2953 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ChorusPlantFeature ebp net/minecraft/class_2964 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ConfiguredFeature ebq net/minecraft/class_2975 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25833 + f Lcom/mojang/serialization/Codec; CODEC b field_24833 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_26756 + f Lnet/minecraft/world/level/levelgen/feature/Feature; feature d comp_332 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config e comp_333 + m ()Ljava/util/stream/Stream; getFeatures a method_30648 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_12862 + p 1 reader + p 2 chunkGenerator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;)Lnet/minecraft/world/level/levelgen/feature/Feature; method_28621 a method_28621 + m ()Lnet/minecraft/world/level/levelgen/feature/Feature; feature b comp_332 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config c comp_333 + m (Lnet/minecraft/world/level/levelgen/feature/Feature;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V + p 1 feature + p 2 config + m ()V +c net/minecraft/world/level/levelgen/feature/CoralClawFeature ebr net/minecraft/class_2972 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/CoralFeature ebs net/minecraft/class_2978 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z placeFeature a method_12863 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V method_40029 a method_40029 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;)V method_40030 a method_40030 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z placeCoralBlock b method_12864 + p 1 level + p 2 random + p 3 pos + p 4 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/CoralMushroomFeature ebt net/minecraft/class_2977 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/CoralTreeFeature ebu net/minecraft/class_2979 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/DeltaFeature ebv net/minecraft/class_5154 + f Lcom/google/common/collect/ImmutableList; CANNOT_REPLACE a field_24133 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_23883 + f D RIM_SPAWN_CHANCE c field_31501 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Z isClear a method_27103 + p 0 level + p 1 pos + p 2 config + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/DesertWellFeature ebw net/minecraft/class_3005 + f Lnet/minecraft/world/level/block/state/predicate/BlockStatePredicate; IS_SAND a field_13450 + f Lnet/minecraft/world/level/block/state/BlockState; water ao field_13449 + f Lnet/minecraft/world/level/block/state/BlockState; sand b field_43324 + f Lnet/minecraft/world/level/block/state/BlockState; sandSlab c field_13452 + f Lnet/minecraft/world/level/block/state/BlockState; sandstone d field_13451 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;)V method_49235 a method_49235 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V placeSusSand b method_49883 + p 0 level + p 1 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/DiskFeature ebx net/minecraft/class_3011 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DiskConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/BlockPos$MutableBlockPos;)Z placeColumn a method_43160 + p 1 config + p 2 level + p 3 random + p 4 maxY + p 5 minY + p 6 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/DripstoneClusterFeature eby net/minecraft/class_5725 + m (IIIILnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)D getChanceOfStalagmiteOrStalactite a method_32997 + p 1 xRadius + p 2 zRadius + p 3 x + p 4 z + p 5 config + m (Lnet/minecraft/util/RandomSource;FFFF)F randomBetweenBiased a method_33003 + p 0 random + p 1 min + p 2 max + p 3 mean + p 4 deviation + m (Lnet/minecraft/util/RandomSource;IIFILnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)I getDripstoneHeight a method_33004 + p 1 random + p 2 x + p 3 z + p 4 chance + p 5 height + p 6 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canBeAdjacentToWater a method_32998 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isLava a method_33386 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;IIFDIFLnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)V placeColumn a method_33002 + p 1 level + p 2 random + p 3 pos + p 4 x + p 5 z + p 6 wetness + p 7 chance + p 9 height + p 10 density + p 11 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;)V replaceBlocksWithDripstoneBlocks a method_33001 + p 1 level + p 2 pos + p 3 thickness + p 4 direction + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z canPlacePool b method_33000 + p 1 level + p 2 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/DripstoneUtils ebz net/minecraft/class_5726 + m (DDDD)D getDripstoneHeight a method_33005 + c The formula used to control dripstone columns radius.\n@see This tweet by Henrik. + p 0 radius + p 2 maxRadius + p 4 scale + p 6 minRadius + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)V method_33007 a method_33007 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isEmptyOrWater a method_33006 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;IZ)V growPointedDripstone a method_33010 + p 0 level + p 1 pos + p 2 direction + p 3 height + p 4 mergeTip + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;I)Z isCircleMostlyEmbeddedInStone a method_33009 + p 0 level + p 1 pos + p 2 radius + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDripstoneBaseOrLava a method_33387 + p 0 state + m (Lnet/minecraft/core/Direction;IZLjava/util/function/Consumer;)V buildBaseToTipColumn a method_33012 + p 0 direction + p 1 height + p 2 mergeTip + p 3 blockSetter + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/properties/DripstoneThickness;)Lnet/minecraft/world/level/block/state/BlockState; createPointedDripstone a method_33013 + p 0 direction + p 1 dripstoneThickness + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isEmptyOrWaterOrLava b method_33388 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDripstoneBase b method_33011 + p 0 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z placeDripstoneBlockIfPossible c method_33008 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyOrWater c method_33014 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isNeitherEmptyNorWater d method_40074 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyOrWaterOrLava e method_33389 + p 0 state + m ()V +c net/minecraft/world/level/levelgen/feature/EndGatewayFeature eca net/minecraft/class_3029 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;Lnet/minecraft/core/BlockPos;)V method_18037 a method_18037 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/EndIslandFeature ecb net/minecraft/class_3026 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/EndPlatformFeature ecc net/minecraft/class_9829 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Z)V createEndPlatform a method_61118 + p 0 level + p 1 pos + p 2 dropBlocks + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/EndPodiumFeature ecd net/minecraft/class_3033 + f I PODIUM_RADIUS a field_31503 + f Lnet/minecraft/core/BlockPos; END_PODIUM_LOCATION ao field_13600 + f Z active ap field_13599 + f I PODIUM_PILLAR_HEIGHT b field_31504 + f I RIM_RADIUS c field_31505 + f F CORNER_ROUNDING d field_31506 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; getLocation a method_51862 + p 0 pos + m (Z)V + p 1 active + m ()V +c net/minecraft/world/level/levelgen/feature/Feature ece net/minecraft/class_3031 + f Lnet/minecraft/world/level/levelgen/feature/Feature; MULTIFACE_GROWTH A field_28428 + f Lnet/minecraft/world/level/levelgen/feature/Feature; UNDERWATER_MAGMA B field_28849 + f Lnet/minecraft/world/level/levelgen/feature/Feature; MONSTER_ROOM C field_13579 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLUE_ICE D field_13560 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ICEBERG E field_13544 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FOREST_ROCK F field_13584 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DISK G field_13509 + f Lnet/minecraft/world/level/levelgen/feature/Feature; LAKE H field_13573 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ORE I field_13517 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_PLATFORM J field_52289 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_SPIKE K field_13522 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_ISLAND L field_13574 + f Lnet/minecraft/world/level/levelgen/feature/Feature; END_GATEWAY M field_13564 + f Lnet/minecraft/world/level/levelgen/feature/SeagrassFeature; SEAGRASS N field_13567 + f Lnet/minecraft/world/level/levelgen/feature/Feature; KELP O field_13535 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_TREE P field_13525 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_MUSHROOM Q field_13585 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CORAL_CLAW R field_13546 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SEA_PICKLE S field_13575 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SIMPLE_BLOCK T field_13518 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BAMBOO U field_13540 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_FUNGUS V field_22185 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NETHER_FOREST_VEGETATION W field_22186 + f Lnet/minecraft/world/level/levelgen/feature/Feature; WEEPING_VINES X field_22187 + f Lnet/minecraft/world/level/levelgen/feature/Feature; TWISTING_VINES Y field_23088 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BASALT_COLUMNS Z field_23884 + f Lcom/mojang/serialization/MapCodec; configuredCodec a field_24837 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DELTA_FEATURE aa field_23885 + f Lnet/minecraft/world/level/levelgen/feature/Feature; REPLACE_BLOBS ab field_23886 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FILL_LAYER ac field_19201 + f Lnet/minecraft/world/level/levelgen/feature/BonusChestFeature; BONUS_CHEST ad field_13526 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BASALT_PILLAR ae field_22188 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SCATTERED_ORE af field_29061 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_SELECTOR ag field_13593 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SIMPLE_RANDOM_SELECTOR ah field_13555 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_BOOLEAN_SELECTOR ai field_13550 + f Lnet/minecraft/world/level/levelgen/feature/Feature; GEODE aj field_27312 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DRIPSTONE_CLUSTER ak field_28203 + f Lnet/minecraft/world/level/levelgen/feature/Feature; LARGE_DRIPSTONE al field_28204 + f Lnet/minecraft/world/level/levelgen/feature/Feature; POINTED_DRIPSTONE am field_28205 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SCULK_PATCH an field_37708 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NO_OP e field_21590 + f Lnet/minecraft/world/level/levelgen/feature/Feature; TREE f field_24134 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FLOWER g field_21219 + f Lnet/minecraft/world/level/levelgen/feature/Feature; NO_BONEMEAL_FLOWER h field_26361 + f Lnet/minecraft/world/level/levelgen/feature/Feature; RANDOM_PATCH i field_21220 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLOCK_PILE j field_21221 + f Lnet/minecraft/world/level/levelgen/feature/Feature; SPRING k field_13513 + f Lnet/minecraft/world/level/levelgen/feature/Feature; CHORUS_PLANT l field_13552 + f Lnet/minecraft/world/level/levelgen/feature/Feature; REPLACE_SINGLE_BLOCK m field_33615 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VOID_START_PLATFORM n field_13591 + f Lnet/minecraft/world/level/levelgen/feature/Feature; DESERT_WELL o field_13592 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FOSSIL p field_13516 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_RED_MUSHROOM q field_13571 + f Lnet/minecraft/world/level/levelgen/feature/Feature; HUGE_BROWN_MUSHROOM r field_13531 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ICE_SPIKE s field_13562 + f Lnet/minecraft/world/level/levelgen/feature/Feature; GLOWSTONE_BLOB t field_13568 + f Lnet/minecraft/world/level/levelgen/feature/Feature; FREEZE_TOP_LAYER u field_13539 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VINES v field_13559 + f Lnet/minecraft/world/level/levelgen/feature/Feature; BLOCK_COLUMN w field_35072 + f Lnet/minecraft/world/level/levelgen/feature/Feature; VEGETATION_PATCH x field_29250 + f Lnet/minecraft/world/level/levelgen/feature/Feature; WATERLOGGED_VEGETATION_PATCH y field_29251 + f Lnet/minecraft/world/level/levelgen/feature/Feature; ROOT_SYSTEM z field_29252 + m ()Lcom/mojang/serialization/MapCodec; configuredCodec a method_28627 + m (Lnet/minecraft/tags/TagKey;)Ljava/util/function/Predicate; isReplaceable a method_36999 + p 0 blockTag + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/block/state/BlockState;)Z method_36997 a method_36997 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isGrassOrDirt a method_27368 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelWriter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_13153 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V markAboveForPostProcessing a method_37256 + c If the above two blocks are not air, marks them for post-processing.\nThis is used to prevent floating grass during the generation of features that carve blocks out of the terrain, after other plant-like blocks have generated (such as lake features). + p 1 level + p 2 basePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)V safeSetBlock a method_36998 + p 1 level + p 2 pos + p 3 state + p 4 oldState + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isStone a method_23395 + p 0 state + m (Lnet/minecraft/world/level/levelgen/feature/FeaturePlaceContext;)Z place a method_13151 + c Places the given feature at the given location.\nDuring world generation, features are provided with a 3x3 region of chunks, centered on the chunk being generated, that they can safely generate into. + p 1 context + c A context object with a reference to the level and the position the feature is being placed at + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; method_28629 a method_28629 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_40163 + p 1 config + p 2 level + p 3 chunkGenerator + p 4 random + p 5 origin + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/feature/Feature;)Lnet/minecraft/world/level/levelgen/feature/Feature; register a method_13150 + p 0 key + p 1 value + m (Ljava/util/function/Function;Lnet/minecraft/core/BlockPos;)Z isAdjacentToAir a method_33981 + c @return {@code true} if any of the six adjacent blocks to the block at {@code pos} are air. + p 0 adjacentStateAccessor + c An accessor for the adjacent blocks. Essentially {@code level::getBlockState}. + p 1 pos + m (Ljava/util/function/Function;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;)Z checkNeighbors a method_33982 + c @return {@code true} if any of the six adjacent blocks to the block at {@code pos} return {@code true} to the given filter. + p 0 adjacentStateAccessor + c An accessor for the adjacent blocks. Essentially {@code level::getBlockState}. + p 1 pos + p 2 filter + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isDirt b method_23396 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker ecf net/minecraft/class_6785 + f Lorg/slf4j/Logger; LOGGER a field_35704 + f Lcom/google/common/cache/LoadingCache; data b field_35705 + m ()V clearCounts a method_39597 + m (Lnet/minecraft/server/level/ServerLevel;)V chunkDecorated a method_39598 + p 0 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Ljava/util/Optional;)V featurePlaced a method_39599 + p 0 level + p 1 feature + p 2 topFeature + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData;)V method_39600 a method_39600 + m (Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData;Ljava/lang/Integer;)Ljava/lang/Integer; method_39601 a method_39601 + m (Ljava/lang/String;Ljava/lang/Integer;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData;Ljava/lang/Integer;)V method_39602 a method_39602 + m ()V logCounts b method_39603 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$1 ecf$1 net/minecraft/class_6785$1 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData; load a method_39604 + p 1 level + m ()V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$FeatureData ecf$a net/minecraft/class_6785$class_6786 + f Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; feature a comp_281 + f Ljava/util/Optional; topFeature b comp_282 + m ()Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature; feature a comp_281 + m ()Ljava/util/Optional; topFeature b comp_282 + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Ljava/util/Optional;)V +c net/minecraft/world/level/levelgen/feature/FeatureCountTracker$LevelData ecf$b net/minecraft/class_6785$class_6787 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; featureData a comp_283 + f Lorg/apache/commons/lang3/mutable/MutableInt; chunksWithFeatures b comp_284 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; featureData a comp_283 + m ()Lorg/apache/commons/lang3/mutable/MutableInt; chunksWithFeatures b comp_284 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lorg/apache/commons/lang3/mutable/MutableInt;)V +c net/minecraft/world/level/levelgen/feature/FeaturePlaceContext ecg net/minecraft/class_5821 + f Ljava/util/Optional; topFeature a field_34697 + f Lnet/minecraft/world/level/WorldGenLevel; level b field_28769 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c field_28770 + f Lnet/minecraft/util/RandomSource; random d field_28771 + f Lnet/minecraft/core/BlockPos; origin e field_28772 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f field_28773 + m ()Ljava/util/Optional; topFeature a method_38427 + m ()Lnet/minecraft/world/level/WorldGenLevel; level b method_33652 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c method_33653 + m ()Lnet/minecraft/util/RandomSource; random d method_33654 + m ()Lnet/minecraft/core/BlockPos; origin e method_33655 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f method_33656 + m (Ljava/util/Optional;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;)V + p 1 topFeature + p 2 level + p 3 chunkGenerator + p 4 random + p 5 origin + p 6 config +c net/minecraft/world/level/levelgen/feature/FillLayerFeature ech net/minecraft/class_4278 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/FossilFeature eci net/minecraft/class_3044 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)I countEmptyCorners a method_34295 + p 0 level + p 1 boundingBox + m (Lnet/minecraft/world/level/WorldGenLevel;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/core/BlockPos;)V method_34296 a method_34296 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration ecj net/minecraft/class_5919 + f Lcom/mojang/serialization/Codec; CODEC a field_29253 + f Ljava/util/List; fossilStructures b field_29254 + f Ljava/util/List; overlayStructures c field_29255 + f Lnet/minecraft/core/Holder; fossilProcessors d field_29256 + f Lnet/minecraft/core/Holder; overlayProcessors e field_29257 + f I maxEmptyCornersAllowed f field_29258 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34299 a method_34299 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/lang/Integer; method_34300 a method_34300 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Lnet/minecraft/core/Holder; method_34302 b method_34302 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Lnet/minecraft/core/Holder; method_34304 c method_34304 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/util/List; method_34305 d method_34305 + m (Lnet/minecraft/world/level/levelgen/feature/FossilFeatureConfiguration;)Ljava/util/List; method_34306 e method_34306 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;I)V + p 1 fossilStructures + p 2 overlayStructures + p 3 fossilProcessors + p 4 overlayProcessors + p 5 maxEmptyCornersAllowed + m ()V +c net/minecraft/world/level/levelgen/feature/GeodeFeature eck net/minecraft/class_5588 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_27313 + m (Lcom/mojang/serialization/Codec;)V + m ()V +c net/minecraft/world/level/levelgen/feature/GlowstoneFeature ecl net/minecraft/class_3047 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/HugeBrownMushroomFeature ecm net/minecraft/class_3059 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/HugeFungusConfiguration ecn net/minecraft/class_4780 + f Lcom/mojang/serialization/Codec; CODEC a field_24838 + f Lnet/minecraft/world/level/block/state/BlockState; validBaseState b field_22435 + f Lnet/minecraft/world/level/block/state/BlockState; stemState c field_22191 + f Lnet/minecraft/world/level/block/state/BlockState; hatState d field_22192 + f Lnet/minecraft/world/level/block/state/BlockState; decorState e field_22193 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; replaceableBlocks f field_44709 + f Z planted g field_22194 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28631 a method_28631 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Ljava/lang/Boolean; method_28630 a method_28630 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_51528 b method_51528 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28632 c method_28632 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28633 d method_28633 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28634 e method_28634 + m (Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28635 f method_28635 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Z)V + p 1 validBaseState + p 2 stemState + p 3 hatState + p 4 decorState + p 5 replaceableBlocks + p 6 planted + m ()V +c net/minecraft/world/level/levelgen/feature/HugeFungusFeature eco net/minecraft/class_4781 + f F HUGE_PROBABILITY a field_31507 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos$MutableBlockPos;FFF)V placeHatBlock a method_24439 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 decorationChance + p 6 hatChance + p 7 weepingVineChance + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V placeHatDropBlock a method_24441 + p 1 level + p 2 random + p 3 pos + p 4 state + p 5 weepingVines + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos;IZ)V placeStem a method_24440 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 height + p 6 huge + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Z)Z isReplaceable a method_24866 + p 0 level + p 1 pos + p 2 config + p 3 checkConfig + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;)V tryPlaceWeepingVines a method_24442 + p 0 pos + p 1 level + p 2 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/HugeFungusConfiguration;Lnet/minecraft/core/BlockPos;IZ)V placeHat b method_24443 + p 1 level + p 2 random + p 3 config + p 4 pos + p 5 height + p 6 huge + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/HugeRedMushroomFeature ecp net/minecraft/class_3066 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/IceSpikeFeature ecq net/minecraft/class_3070 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/IcebergFeature ecr net/minecraft/class_3074 + c This feature generates part of the icebergs found in frozen oceans.\nSpecifically, it generates tall, triangular prism icebergs, and "donut" or torus shaped icebergs.\nOther icebergs are generated by the frozen ocean surface builder instead. + m (III)I getEllipseC a method_13416 + p 1 y + p 2 height + p 3 minorAxis + m (IILnet/minecraft/core/BlockPos;IID)D signedDistanceEllipse a method_13424 + c Given an ellipse defined by the equation {@code (x/a)^2 + (y/b)^2 = 1}, where {@code a} and {@code b} are the semi-major and semi-minor axes respectively, this computes the distance between an arbitrary point and the ellipse.\nThe point (x, y) is within the ellipse if the return value is < 0, outside the ellipse if the return value is > 0 and exactly on the edge of the ellipse if the return value is 0. + p 1 x + c The x position of the point to measure the distance to. + p 2 z + c The z position of the point to measure distance to. + p 3 center + c The center point of the ellipse. + p 4 majorRadius + c The semi-major axis ({@code a}) of the ellipse. + p 5 minorRadius + c The semi-minor axis ({@code b}) of the ellipse + p 6 angle + c The rotation angle of the ellipse (the angle from the positive horizontal axis to the ellipse's major axis). + m (IILnet/minecraft/core/BlockPos;ILnet/minecraft/util/RandomSource;)D signedDistanceCircle a method_13421 + p 1 x + p 2 z + p 3 center + p 4 radius + p 5 random + m (IILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;ZDLnet/minecraft/core/BlockPos;II)V carve a method_13415 + p 1 radius + p 2 localY + p 3 pos + p 4 level + p 5 placeWater + p 6 perpendicularAngle + p 8 ellipseOrigin + p 9 majorRadius + p 10 minorRadius + m (Lnet/minecraft/util/RandomSource;III)I heightDependentRadiusRound a method_13419 + p 1 random + p 2 y + p 3 height + p 4 majorAxis + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;IILnet/minecraft/core/BlockPos;ZIDI)V generateCutOut a method_13428 + p 1 random + p 2 level + p 3 majorAxis + p 4 height + p 5 pos + p 6 elliptical + p 7 ellipseRadius + p 8 angle + p 10 minorAxis + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z belowIsAir a method_13414 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;IIIIIIZIDZLnet/minecraft/world/level/block/state/BlockState;)V generateIcebergBlock a method_13426 + p 1 level + p 2 random + p 3 pos + p 4 height + p 5 localX + p 6 localY + p 7 localZ + p 8 radius + p 9 majorRadius + p 10 elliptical + p 11 minorRadius + p 12 angle + p 14 placeSnow + p 15 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V removeFloatingSnowLayer a method_13422 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;IIZI)V smooth a method_13418 + c Smooths out an iceberg by removing blocks which either have air below, or non-iceberg blocks on three or more horizontal sides, with air. + p 1 level + p 2 pos + p 3 majorRadius + p 4 height + p 5 elliptical + p 6 minorRadius + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;IIZZLnet/minecraft/world/level/block/state/BlockState;)V setIcebergBlock a method_13425 + p 1 pos + p 2 level + p 3 random + p 4 heightRemaining + p 5 height + p 6 elliptical + p 7 placeSnow + p 8 state + m (III)I heightDependentRadiusEllipse b method_13417 + c Given a horizontal projection of an iceberg, defines the three-dimensional extrusion by defining a radius at any given y value.\nThe radius curve is a parabolic function, resulting in more rounded iceberg peaks. + p 1 y + c The y value to calculate a radius at. + p 2 height + c The maximum height of the iceberg. + p 3 maxRadius + c The maximum radius of the iceberg, at the horizontal. + m (Lnet/minecraft/util/RandomSource;III)I heightDependentRadiusSteep b method_13427 + c Given a horizontal projection of an iceberg, defines the three-dimensional extrusion by defining a radius at any given y value.\nThe radius curve is a linear function, with a slope that is both dependent on the {@code majorAxis} and randomly varies, which results in steep conical icebergs. + p 1 random + c A random to use to vary the slope of the falloff curve. + p 2 y + c The y value to calculate a radius at. + p 3 height + c The maximum height of the iceberg. + p 4 maxRadius + c The maximum radius radius of the iceberg, at the horizontal. + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isIcebergState c method_13420 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/KelpFeature ecs net/minecraft/class_3081 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/LakeFeature ect net/minecraft/class_3085 + f Lnet/minecraft/world/level/block/state/BlockState; AIR a field_13668 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z canReplaceBlock c method_39605 + p 1 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/LakeFeature$Configuration ect$a net/minecraft/class_3085$class_6788 + f Lcom/mojang/serialization/Codec; CODEC a field_35706 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fluid b comp_285 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; barrier c comp_286 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fluid a comp_285 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39606 a method_39606 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; barrier b comp_286 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature ecu net/minecraft/class_5727 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/Column$Range;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)V placeDebugMarkers a method_35360 + p 1 level + p 2 pos + p 3 range + p 4 windOffsetter + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/util/RandomSource;ILnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;)Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$LargeDripstone; makeDripstone a method_33016 + p 0 root + p 1 pointingUp + p 2 random + p 3 radius + p 4 bluntnessBase + p 5 scaleBase + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$LargeDripstone ecu$a net/minecraft/class_5727$class_5728 + f Lnet/minecraft/core/BlockPos; root a field_28206 + f Z pointingUp b field_28207 + f I radius c field_28208 + f D bluntness d field_28209 + f D scale e field_28210 + m ()I getHeight a method_33017 + m (F)I getHeightAtRadius a method_33018 + p 1 radius + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)V placeBlocks a method_33020 + p 1 level + p 2 random + p 3 windOffsetter + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter;)Z moveBackUntilBaseIsInsideStoneAndShrinkRadiusIfNecessary a method_33019 + p 1 level + p 2 windOffsetter + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Z isSuitableForWind a method_33025 + p 1 config + m ()I getMinY b method_35361 + m ()I getMaxY c method_35362 + m (Lnet/minecraft/core/BlockPos;ZIDD)V + p 1 root + p 2 pointingUp + p 3 radius + p 4 bluntness + p 6 scale +c net/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter ecu$b net/minecraft/class_5727$class_5729 + f I originY a field_28211 + f Lnet/minecraft/world/phys/Vec3; windSpeed b field_28212 + m ()Lnet/minecraft/world/level/levelgen/feature/LargeDripstoneFeature$WindOffsetter; noWind a method_33032 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; offset a method_33031 + p 1 pos + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/util/valueproviders/FloatProvider;)V + p 1 originY + p 2 random + p 3 magnitude + m ()V +c net/minecraft/world/level/levelgen/feature/MonsterRoomFeature ecv net/minecraft/class_3103 + f Lorg/slf4j/Logger; LOGGER a field_13700 + f [Lnet/minecraft/world/entity/EntityType; MOBS b field_13699 + f Lnet/minecraft/world/level/block/state/BlockState; AIR c field_13698 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/entity/EntityType; randomEntityId a method_13547 + p 1 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/MultifaceGrowthFeature ecw net/minecraft/class_5779 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;Lnet/minecraft/util/RandomSource;Ljava/util/List;)Z placeGrowthIfPossible a method_33391 + p 0 level + p 1 pos + p 2 state + p 3 config + p 4 random + p 5 directions + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isAirOrWater c method_33395 + p 0 state + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/NetherForestVegetationFeature ecx net/minecraft/class_4782 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/NoOpFeature ecy net/minecraft/class_4715 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/OreFeature ecz net/minecraft/class_3122 + m (Lnet/minecraft/util/RandomSource;F)Z shouldSkipAirCheck a method_33984 + p 0 random + p 1 chance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;DDDDDDIIIII)Z doPlace a method_13629 + p 1 level + p 2 random + p 3 config + p 4 minX + p 6 maxX + p 8 minZ + p 10 maxZ + p 12 minY + p 14 maxY + p 16 x + p 17 y + p 18 z + p 19 width + p 20 height + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Function;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPlaceOre a method_33983 + p 0 state + p 1 adjacentStateAccessor + p 2 random + p 3 config + p 4 targetState + p 5 mutablePos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/PointedDripstoneFeature eda net/minecraft/class_5730 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)V createPatchOfDripstoneBlocks a method_33034 + p 0 level + p 1 random + p 2 pos + p 3 config + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Ljava/util/Optional; getTipDirection a method_39175 + p 0 level + p 1 pos + p 2 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/RandomBooleanSelectorFeature edb net/minecraft/class_3135 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RandomPatchFeature edc net/minecraft/class_4628 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RandomSelectorFeature edd net/minecraft/class_3150 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/ReplaceBlobsFeature ede net/minecraft/class_5155 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/core/BlockPos; findTarget a method_27107 + p 0 level + p 1 topPos + p 2 block + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/ReplaceBlockFeature edf net/minecraft/class_3152 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/RootSystemFeature edg net/minecraft/class_5921 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/BlockPos;)Z placeDirtAndTree a method_34308 + p 0 level + p 1 chunkGenerator + p 2 config + p 3 random + p 4 mutablePos + p 5 basePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/BlockPos$MutableBlockPos;)V placeRootedDirt a method_34311 + p 0 level + p 1 config + p 2 random + p 3 x + p 4 z + p 5 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)V placeRoots a method_34312 + p 0 level + p 1 config + p 2 random + p 3 basePos + p 4 mutablePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/core/BlockPos;)Z spaceForTree a method_34310 + p 0 level + p 1 config + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;II)Z isAllowedTreeSpace a method_36419 + p 0 state + p 1 y + p 2 allowedVerticalWater + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z method_34307 a method_34307 + m (Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;Lnet/minecraft/util/RandomSource;)V placeDirt a method_39918 + p 0 pos + p 1 maxY + p 2 level + p 3 config + p 4 random + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/ScatteredOreFeature edh net/minecraft/class_5875 + f I MAX_DIST_FROM_ORIGIN a field_31515 + m (Lnet/minecraft/util/RandomSource;I)I getRandomPlacementInOneAxisRelativeToOrigin a method_33986 + p 1 random + p 2 magnitude + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;I)V offsetTargetPos a method_33985 + p 1 mutablePos + p 2 random + p 3 pos + p 4 magnitude + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/SculkPatchFeature edi net/minecraft/class_7140 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canSpreadFrom a method_41571 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_41572 b method_41572 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/SeaPickleFeature edj net/minecraft/class_3160 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SeagrassFeature edk net/minecraft/class_3168 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SimpleBlockFeature edl net/minecraft/class_3173 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SimpleRandomSelectorFeature edm net/minecraft/class_3177 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SnowAndFreezeFeature edn net/minecraft/class_3183 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/SpikeFeature edo net/minecraft/class_3310 + f I NUMBER_OF_SPIKES a field_31516 + f I SPIKE_DISTANCE b field_31517 + f Lcom/google/common/cache/LoadingCache; SPIKE_CACHE c field_14309 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)V placeSpike a method_15888 + c Places the End Spike in the world. Also generates the obsidian tower. + p 1 level + p 2 random + p 3 config + p 4 spike + m (Lnet/minecraft/world/level/WorldGenLevel;)Ljava/util/List; getSpikesForLevel a method_14506 + p 0 level + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike edo$a net/minecraft/class_3310$class_3181 + f Lcom/mojang/serialization/Codec; CODEC a field_24841 + f I centerX b field_13836 + f I centerZ c field_13834 + f I radius d field_13833 + f I height e field_13831 + f Z guarded f field_13832 + f Lnet/minecraft/world/phys/AABB; topBoundingBox g field_13835 + m ()I getCenterX a method_13966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28649 a method_28649 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Boolean; method_28648 a method_28648 + m (Lnet/minecraft/core/BlockPos;)Z isCenterWithinChunk a method_13962 + p 1 pos + m ()I getCenterZ b method_13967 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28650 b method_28650 + m ()I getRadius c method_13963 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28651 c method_28651 + m ()I getHeight d method_13964 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28652 d method_28652 + m ()Z isGuarded e method_13965 + m (Lnet/minecraft/world/level/levelgen/feature/SpikeFeature$EndSpike;)Ljava/lang/Integer; method_28653 e method_28653 + m ()Lnet/minecraft/world/phys/AABB; getTopBoundingBox f method_13968 + m (IIIIZ)V + p 1 centerX + p 2 centerZ + p 3 radius + p 4 height + p 5 guarded + m ()V +c net/minecraft/world/level/levelgen/feature/SpikeFeature$SpikeCacheLoader edo$b net/minecraft/class_3310$class_3311 + m (Ljava/lang/Long;)Ljava/util/List; load a method_14507 + m ()V +c net/minecraft/world/level/levelgen/feature/SpringFeature edp net/minecraft/class_3185 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/TreeFeature edq net/minecraft/class_2944 + f I BLOCK_UPDATE_FLAGS a field_31519 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; updateLeaves a method_23380 + p 0 level + p 1 box + p 2 rootPositions + p 3 trunkPositions + p 4 foliagePositions + m (Lnet/minecraft/world/level/LevelSimulatedReader;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)I getMaxFreeTreeHeight a method_29963 + p 1 level + p 2 trunkHeight + p 3 topPosition + p 4 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Ljava/util/function/BiConsumer;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z doPlace a method_12775 + p 1 level + p 2 random + p 3 pos + p 4 rootBlockSetter + p 5 trunkBlockSetter + p 6 foliageBlockSetter + p 7 config + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/lang/Boolean; method_35363 a method_35363 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;)V method_27372 a method_27372 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator;)V method_23381 a method_23381 + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_49238 a method_49238 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/core/BlockPos; method_43293 a method_43293 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isAirOrLeaves b method_16420 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelWriter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlockKnownShape b method_12774 + p 0 level + p 1 pos + p 2 state + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_43162 b method_43162 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z validTreePos c method_27371 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_51179 c method_51179 + m (Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_35364 c method_35364 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isVine d method_16416 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16417 d method_16417 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_23384 e method_23384 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/TreeFeature$1 edq$1 net/minecraft/class_2944$1 + f Ljava/util/Set; val$foliage a field_42838 + f Lnet/minecraft/world/level/WorldGenLevel; val$level b field_42839 + m (Lnet/minecraft/world/level/levelgen/feature/TreeFeature;Ljava/util/Set;Lnet/minecraft/world/level/WorldGenLevel;)V +c net/minecraft/world/level/levelgen/feature/TwistingVinesFeature edr net/minecraft/class_4953 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V placeWeepingVinesColumn a method_25987 + p 0 level + p 1 random + p 2 pos + p 3 length + p 4 minAge + p 5 maxAge + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z findFirstAirBlockAboveGround a method_27220 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isInvalidPlacementLocation a method_25986 + p 0 level + p 1 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/UnderwaterMagmaFeature eds net/minecraft/class_5834 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;Lnet/minecraft/core/BlockPos;)Z method_33766 a method_33766 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z isWaterOrAir a method_33763 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/util/OptionalInt; getFloorY a method_33765 + p 0 level + p 1 pos + p 2 config + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z isValidPlacement b method_33764 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)I method_33767 c method_33767 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33769 c method_33769 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)Z method_33768 d method_33768 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_33770 d method_33770 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/VegetationPatchFeature edt net/minecraft/class_5922 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;II)Ljava/util/Set; placeGroundPatch a method_34316 + p 1 level + p 2 config + p 3 random + p 4 pos + p 5 state + p 6 xRadius + p 7 zRadius + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeVegetation a method_34315 + p 1 level + p 2 config + p 3 chunkGenerator + p 4 random + p 5 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Ljava/util/function/Predicate;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Z placeGround a method_34317 + p 1 level + p 2 config + p 3 replaceableblocks + p 4 random + p 5 mutablePos + p 6 maxDistance + m (Lnet/minecraft/world/level/levelgen/feature/FeaturePlaceContext;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/util/RandomSource;Ljava/util/Set;II)V distributeVegetation a method_34318 + p 1 context + p 2 level + p 3 config + p 4 random + p 5 possiblePositions + p 6 xRadius + p 7 zRadius + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;Lnet/minecraft/world/level/block/state/BlockState;)Z method_40164 a method_40164 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_34321 c method_34321 + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/VinesFeature edu net/minecraft/class_3219 + m (Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/levelgen/feature/VoidStartPlatformFeature edv net/minecraft/class_3217 + f Lnet/minecraft/core/BlockPos; PLATFORM_OFFSET a field_19241 + f Lnet/minecraft/world/level/ChunkPos; PLATFORM_ORIGIN_CHUNK b field_19242 + f I PLATFORM_RADIUS c field_31520 + f I PLATFORM_RADIUS_CHUNKS d field_31521 + m (IIII)I checkerboardDistance a method_20403 + c Returns the Manhattan distance between the two points. + p 0 firstX + p 1 firstZ + p 2 secondX + p 3 secondZ + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/WaterloggedVegetationPatchFeature edw net/minecraft/class_5923 + m (Lnet/minecraft/world/level/WorldGenLevel;Ljava/util/Set;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z isExposed a method_34323 + p 0 level + p 1 positions + p 2 pos + p 3 mutablePos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;)Z isExposedDirection a method_34322 + p 0 level + p 1 pos + p 2 mutablePos + p 3 direction + m (Lcom/mojang/serialization/Codec;)V + p 1 codec +c net/minecraft/world/level/levelgen/feature/WeepingVinesFeature edx net/minecraft/class_4784 + f [Lnet/minecraft/core/Direction; DIRECTIONS a field_22196 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;III)V placeWeepingVinesColumn a method_24450 + p 0 level + p 1 random + p 2 pos + p 3 height + p 4 minAge + p 5 maxAge + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeRoofNetherWart a method_24451 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V placeRoofWeepingVines b method_24452 + p 1 level + p 2 random + p 3 pos + m (Lcom/mojang/serialization/Codec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/WeightedPlacedFeature edy net/minecraft/class_3226 + f Lcom/mojang/serialization/Codec; CODEC a field_24864 + f Lnet/minecraft/core/Holder; feature b field_14013 + f F chance c field_14011 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28669 a method_28669 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_14271 + p 1 level + p 2 chunkGenerator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Ljava/lang/Float; method_28668 a method_28668 + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Lnet/minecraft/core/Holder; method_28670 b method_28670 + m (Lnet/minecraft/core/Holder;F)V + p 1 feature + p 2 chance + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration edz net/minecraft/class_6655 + f Lcom/mojang/serialization/Codec; CODEC a field_35073 + f Ljava/util/List; layers b comp_143 + f Lnet/minecraft/core/Direction; direction c comp_144 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedPlacement d comp_168 + f Z prioritizeTip e comp_146 + m ()Ljava/util/List; layers a comp_143 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration$Layer; layer a method_38908 + p 0 height + p 1 state + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38909 a method_38909 + m ()Lnet/minecraft/core/Direction; direction b comp_144 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration; simple b method_38910 + p 0 height + p 1 state + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedPlacement c comp_168 + m ()Z prioritizeTip d comp_146 + m (Ljava/util/List;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Z)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockColumnConfiguration$Layer edz$a net/minecraft/class_6655$class_6656 + f Lcom/mojang/serialization/Codec; CODEC a field_35074 + f Lnet/minecraft/util/valueproviders/IntProvider; height b comp_147 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; state c comp_148 + m ()Lnet/minecraft/util/valueproviders/IntProvider; height a comp_147 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38911 a method_38911 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; state b comp_148 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration eea net/minecraft/class_4634 + f Lcom/mojang/serialization/Codec; CODEC a field_24873 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; stateProvider b field_21229 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/BlockPileConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28683 a method_28683 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 stateProvider + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/BlockStateConfiguration eeb net/minecraft/class_2963 + f Lcom/mojang/serialization/Codec; CODEC a field_24874 + f Lnet/minecraft/world/level/block/state/BlockState; state b field_13356 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/BlockStateConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28684 a method_28684 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration eec net/minecraft/class_5156 + f Lcom/mojang/serialization/Codec; CODEC a field_24877 + f Lnet/minecraft/util/valueproviders/IntProvider; reach b field_25841 + f Lnet/minecraft/util/valueproviders/IntProvider; height c field_25842 + m ()Lnet/minecraft/util/valueproviders/IntProvider; reach a method_30391 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30393 a method_30393 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30392 a method_30392 + m ()Lnet/minecraft/util/valueproviders/IntProvider; height b method_30394 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ColumnFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30395 b method_30395 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 reach + p 2 height + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/CountConfiguration eed net/minecraft/class_2984 + f Lcom/mojang/serialization/Codec; CODEC a field_24878 + f Lnet/minecraft/util/valueproviders/IntProvider; count b field_13385 + m ()Lnet/minecraft/util/valueproviders/IntProvider; count a method_30396 + m (I)V + p 1 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration eee net/minecraft/class_5158 + f Lcom/mojang/serialization/Codec; CODEC a field_24881 + f Lnet/minecraft/world/level/block/state/BlockState; contents b field_23895 + f Lnet/minecraft/world/level/block/state/BlockState; rim c field_23896 + f Lnet/minecraft/util/valueproviders/IntProvider; size d field_25843 + f Lnet/minecraft/util/valueproviders/IntProvider; rimSize e field_25844 + m ()Lnet/minecraft/world/level/block/state/BlockState; contents a method_30397 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30399 a method_30399 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30398 a method_30398 + m ()Lnet/minecraft/world/level/block/state/BlockState; rim b method_30400 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30401 b method_30401 + m ()Lnet/minecraft/util/valueproviders/IntProvider; size c method_30402 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28709 c method_28709 + m ()Lnet/minecraft/util/valueproviders/IntProvider; rimSize d method_30403 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DeltaFeatureConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28710 d method_28710 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 contents + p 2 rim + p 3 size + p 4 rimSize + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DiskConfiguration eef net/minecraft/class_6577 + f Lcom/mojang/serialization/Codec; CODEC a field_34698 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; stateProvider b comp_715 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; target c comp_716 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d comp_81 + f I halfHeight e comp_82 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; stateProvider a comp_715 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43294 a method_43294 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; target b comp_716 + m ()Lnet/minecraft/util/valueproviders/IntProvider; radius c comp_81 + m ()I halfHeight d comp_82 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration eeg net/minecraft/class_5731 + f Lcom/mojang/serialization/Codec; CODEC a field_28213 + f I floorToCeilingSearchRange b field_28214 + f Lnet/minecraft/util/valueproviders/IntProvider; height c field_28215 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d field_28216 + f I maxStalagmiteStalactiteHeightDiff e field_28217 + f I heightDeviation f field_28218 + f Lnet/minecraft/util/valueproviders/IntProvider; dripstoneBlockLayerThickness g field_28219 + f Lnet/minecraft/util/valueproviders/FloatProvider; density h field_28220 + f Lnet/minecraft/util/valueproviders/FloatProvider; wetness i field_28221 + f F chanceOfDripstoneColumnAtMaxDistanceFromCenter j field_28224 + f I maxDistanceFromEdgeAffectingChanceOfDripstoneColumn k field_28225 + f I maxDistanceFromCenterAffectingHeightBias l field_28226 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33987 a method_33987 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33988 a method_33988 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33989 b method_33989 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Float; method_33043 c method_33043 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33044 d method_33044 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33045 e method_33045 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33046 f method_33046 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33047 g method_33047 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33048 h method_33048 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33049 i method_33049 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33050 j method_33050 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/DripstoneClusterConfiguration;)Ljava/lang/Integer; method_33051 k method_33051 + m (ILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;IILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;FII)V + p 1 floorToCeilingSearchRange + p 2 height + p 3 radius + p 4 maxStalagmiteStalactiteHeightDiff + p 5 heightDeviation + p 6 dripstoneBlockLayerThickness + p 7 density + p 8 wetness + p 9 chanceOfDripstoneColumnAtMaxDistanceFromCenter + p 10 maxDistanceFromEdgeAffectingChanceOfDripstoneColumn + p 11 maxDistanceFromCenterAffectingHeightBias + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration eeh net/minecraft/class_3018 + f Lcom/mojang/serialization/Codec; CODEC a field_24883 + f Ljava/util/Optional; exit b field_17735 + f Z exact c field_13475 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration; delayedExitSearch a method_18030 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28717 a method_28717 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)Ljava/lang/Boolean; method_28716 a method_28716 + m (Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration; knownExit a method_18034 + p 0 exit + p 1 exact + m ()Ljava/util/Optional; getExit b method_18036 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/EndGatewayConfiguration;)Ljava/util/Optional; method_28718 b method_28718 + m ()Z isExitExact c method_13026 + m (Ljava/util/Optional;Z)V + p 1 exit + p 2 exact + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration eei net/minecraft/class_3037 + f Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; NONE m field_13603 + m ()Ljava/util/stream/Stream; getFeatures e method_30649 + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration eej net/minecraft/class_5589 + f Lcom/mojang/serialization/Codec; CHANCE_RANGE a field_27314 + f Lcom/mojang/serialization/Codec; CODEC b field_27315 + f Lnet/minecraft/world/level/levelgen/GeodeBlockSettings; geodeBlockSettings c field_27316 + f Lnet/minecraft/world/level/levelgen/GeodeLayerSettings; geodeLayerSettings d field_27317 + f Lnet/minecraft/world/level/levelgen/GeodeCrackSettings; geodeCrackSettings e field_27318 + f D usePotentialPlacementsChance f field_27319 + f D useAlternateLayer0Chance g field_27320 + f Z placementsRequireLayer0Alternate h field_27321 + f Lnet/minecraft/util/valueproviders/IntProvider; outerWallDistance i field_33516 + f Lnet/minecraft/util/valueproviders/IntProvider; distributionPoints j field_33517 + f Lnet/minecraft/util/valueproviders/IntProvider; pointOffset k field_33518 + f I minGenOffset l field_27328 + f I maxGenOffset n field_27329 + f D noiseMultiplier o field_27330 + f I invalidBlocksThreshold p field_29062 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36299 a method_36299 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31906 a method_31906 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_36300 b method_36300 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31908 c method_31908 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Integer; method_31909 d method_31909 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36301 e method_36301 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36302 f method_36302 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_36303 g method_36303 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Boolean; method_31913 h method_31913 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_31914 i method_31914 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Ljava/lang/Double; method_31915 j method_31915 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeCrackSettings; method_31916 k method_31916 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeLayerSettings; method_31917 l method_31917 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/GeodeConfiguration;)Lnet/minecraft/world/level/levelgen/GeodeBlockSettings; method_31918 m method_31918 + m (Lnet/minecraft/world/level/levelgen/GeodeBlockSettings;Lnet/minecraft/world/level/levelgen/GeodeLayerSettings;Lnet/minecraft/world/level/levelgen/GeodeCrackSettings;DDZLnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;IIDI)V + p 1 geodeBlockSettings + p 2 geodeLayerSettings + p 3 geodeCrackSettings + p 4 usePotentialPlacementsChance + p 6 useAlternateLayer0Chance + p 8 placementsRequireLayer0Alternate + p 9 outerWallDistance + p 10 distributionPoints + p 11 pointOffset + p 12 minGenOffset + p 13 maxGenOffset + p 14 noiseMultiplier + p 16 invalidBlocksThreshold + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration eek net/minecraft/class_4635 + f Lcom/mojang/serialization/Codec; CODEC a field_24885 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; capProvider b field_21230 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; stemProvider c field_21231 + f I foliageRadius d field_21232 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28721 a method_28721 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Ljava/lang/Integer; method_28720 a method_28720 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28722 b method_28722 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/HugeMushroomFeatureConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28723 c method_28723 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;I)V + p 1 capProvider + p 2 stemProvider + p 3 foliageRadius + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration eel net/minecraft/class_5732 + f Lcom/mojang/serialization/Codec; CODEC a field_28227 + f I floorToCeilingSearchRange b field_28228 + f Lnet/minecraft/util/valueproviders/IntProvider; columnRadius c field_28229 + f Lnet/minecraft/util/valueproviders/FloatProvider; heightScale d field_28230 + f F maxColumnRadiusToCaveHeightRatio e field_28231 + f Lnet/minecraft/util/valueproviders/FloatProvider; stalactiteBluntness f field_28232 + f Lnet/minecraft/util/valueproviders/FloatProvider; stalagmiteBluntness g field_28233 + f Lnet/minecraft/util/valueproviders/FloatProvider; windSpeed h field_28234 + f I minRadiusForWind i field_28235 + f F minBluntnessForWind j field_28236 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33052 a method_33052 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Float; method_33053 a method_33053 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Integer; method_33054 b method_33054 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33055 c method_33055 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33056 d method_33056 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33057 e method_33057 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Float; method_33058 f method_33058 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/FloatProvider; method_33059 g method_33059 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_33060 h method_33060 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LargeDripstoneConfiguration;)Ljava/lang/Integer; method_33061 i method_33061 + m (ILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/FloatProvider;FLnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;Lnet/minecraft/util/valueproviders/FloatProvider;IF)V + p 1 floorToCeilingSearchRange + p 2 columnRadius + p 3 heightScale + p 4 maxColumnRadiusToCaveHeightRatio + p 5 stalactiteBluntness + p 6 stalagmiteBluntness + p 7 windSpeed + p 8 minRadiusForWind + p 9 minBluntnessForWind + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration eem net/minecraft/class_4279 + f Lcom/mojang/serialization/Codec; CODEC a field_24887 + f I height b field_19202 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_19203 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28726 a method_28726 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_28725 a method_28725 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/LayerConfiguration;)Ljava/lang/Integer; method_28727 b method_28727 + m (ILnet/minecraft/world/level/block/state/BlockState;)V + p 1 height + p 2 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration een net/minecraft/class_5780 + f Lcom/mojang/serialization/Codec; CODEC a field_28429 + f Lnet/minecraft/world/level/block/MultifaceBlock; placeBlock b field_37709 + f I searchRange c field_28430 + f Z canPlaceOnFloor d field_28431 + f Z canPlaceOnCeiling e field_28432 + f Z canPlaceOnWall f field_28433 + f F chanceOfSpreading g field_28434 + f Lnet/minecraft/core/HolderSet; canBePlacedOn h field_28435 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; validDirections i field_28436 + m ()Ljava/lang/String; method_49534 a method_49534 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledDirections a method_43295 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Direction;)Ljava/util/List; getShuffledDirectionsExcept a method_43296 + p 1 random + p 2 direction + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33398 a method_33398 + m (Lnet/minecraft/world/level/block/Block;)Lcom/mojang/serialization/DataResult; apply a method_41573 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Lnet/minecraft/core/HolderSet; method_33399 a method_33399 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z method_43297 a method_43297 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Float; method_33400 b method_33400 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33401 c method_33401 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33402 d method_33402 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Boolean; method_33403 e method_33403 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Ljava/lang/Integer; method_33404 f method_33404 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/MultifaceGrowthConfiguration;)Lnet/minecraft/world/level/block/MultifaceBlock; method_41574 g method_41574 + m (Lnet/minecraft/world/level/block/MultifaceBlock;IZZZFLnet/minecraft/core/HolderSet;)V + p 1 placeBlock + p 2 searchRange + p 3 canPlaceOnFloor + p 4 canPlaceOnCeiling + p 5 canPlaceOnWall + p 6 chanceOfSpreading + p 7 canBePlacedOn + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig eeo net/minecraft/class_6789 + f Lcom/mojang/serialization/Codec; CODEC c field_35707 + f I spreadWidth d field_35708 + f I spreadHeight e field_35709 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39607 a method_39607 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Ljava/lang/Integer; method_39608 a method_39608 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Ljava/lang/Integer; method_39609 b method_39609 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/NetherForestVegetationConfig;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_39610 c method_39610 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;II)V + p 1 stateProvider + p 2 spreadWidth + p 3 spreadHeight + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration eep net/minecraft/class_3111 + f Lcom/mojang/serialization/Codec; CODEC a field_24893 + f Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; INSTANCE b field_24894 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/NoneFeatureConfiguration; method_28737 a method_28737 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/OreConfiguration eeq net/minecraft/class_3124 + f Lcom/mojang/serialization/Codec; CODEC a field_24896 + f Ljava/util/List; targetStates b field_29063 + f I size c field_13723 + f F discardChanceOnAirExposure d field_29064 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33992 a method_33992 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/lang/Float; method_33993 a method_33993 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState; target a method_33994 + p 0 target + p 1 state + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/lang/Integer; method_33995 b method_33995 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration;)Ljava/util/List; method_28745 c method_28745 + m (Ljava/util/List;IF)V + p 1 targetStates + p 2 size + p 3 discardChanceOnAirExposure + m (Ljava/util/List;I)V + p 1 targetStates + p 2 size + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;IF)V + p 1 target + p 2 state + p 3 size + p 4 discardChanceOnAirExposure + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;I)V + p 1 target + p 2 state + p 3 size + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState eeq$a net/minecraft/class_3124$class_5876 + f Lcom/mojang/serialization/Codec; CODEC a field_29067 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; target b field_29068 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_29069 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33996 a method_33996 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_33997 a method_33997 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/OreConfiguration$TargetBlockState;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_33998 b method_33998 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 target + p 2 state + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration eer net/minecraft/class_5733 + f Lcom/mojang/serialization/Codec; CODEC a field_28237 + f F chanceOfTallerDripstone b field_28241 + f F chanceOfDirectionalSpread c field_35416 + f F chanceOfSpreadRadius2 d field_35417 + f F chanceOfSpreadRadius3 e field_35418 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33062 a method_33062 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_33063 a method_33063 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39176 b method_39176 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39177 c method_39177 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/PointedDripstoneConfiguration;)Ljava/lang/Float; method_39178 d method_39178 + m (FFFF)V + p 1 chanceOfTallerDripstone + p 2 chanceOfDirectionalSpread + p 3 chanceOfSpreadRadius2 + p 4 chanceOfSpreadRadius3 + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ProbabilityFeatureConfiguration ees net/minecraft/class_3133 + f Lcom/mojang/serialization/Codec; CODEC k field_24899 + f F probability l field_13738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28748 a method_28748 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ProbabilityFeatureConfiguration;)Ljava/lang/Float; method_28747 a method_28747 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration eet net/minecraft/class_3137 + f Lcom/mojang/serialization/Codec; CODEC a field_24900 + f Lnet/minecraft/core/Holder; featureTrue b field_13740 + f Lnet/minecraft/core/Holder; featureFalse c field_13739 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28750 a method_28750 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28749 a method_28749 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomBooleanFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28751 b method_28751 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 featureTrue + p 2 featureFalse + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration eeu net/minecraft/class_3141 + f Lcom/mojang/serialization/Codec; CODEC a field_24901 + f Ljava/util/List; features b field_13744 + f Lnet/minecraft/core/Holder; defaultFeature c field_13745 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28753 a method_28753 + m (Lnet/minecraft/world/level/levelgen/feature/WeightedPlacedFeature;)Ljava/util/stream/Stream; method_30650 a method_30650 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration;)Lnet/minecraft/core/Holder; method_28752 a method_28752 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RandomFeatureConfiguration;)Ljava/util/List; method_28754 b method_28754 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 features + p 2 defaultFeature + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RandomPatchConfiguration eev net/minecraft/class_4638 + f Lcom/mojang/serialization/Codec; CODEC a field_24902 + f I tries b comp_149 + f I xzSpread c comp_150 + f I ySpread d comp_151 + f Lnet/minecraft/core/Holder; feature e comp_155 + m ()I tries a comp_149 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38912 a method_38912 + m ()I xzSpread b comp_150 + m ()I ySpread c comp_151 + m ()Lnet/minecraft/core/Holder; feature d comp_155 + m (IIILnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ReplaceBlockConfiguration eew net/minecraft/class_3154 + f Lcom/mojang/serialization/Codec; CODEC a field_24904 + f Ljava/util/List; targetStates b field_13765 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28771 a method_28771 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceBlockConfiguration;)Ljava/util/List; method_28772 a method_28772 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 targetState + p 2 state + m (Ljava/util/List;)V + p 1 targetStates + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration eex net/minecraft/class_5437 + f Lcom/mojang/serialization/Codec; CODEC a field_25848 + f Lnet/minecraft/world/level/block/state/BlockState; targetState b field_25849 + f Lnet/minecraft/world/level/block/state/BlockState; replaceState c field_25850 + f Lnet/minecraft/util/valueproviders/IntProvider; radius d field_25851 + m ()Lnet/minecraft/util/valueproviders/IntProvider; radius a method_30405 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30406 a method_30406 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_30407 a method_30407 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_30408 b method_30408 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/ReplaceSphereConfiguration;)Lnet/minecraft/world/level/block/state/BlockState; method_30409 c method_30409 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 targetState + p 2 replaceState + p 3 radius + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration eey net/minecraft/class_5926 + f Lcom/mojang/serialization/Codec; CODEC a field_29267 + f Lnet/minecraft/core/Holder; treeFeature b field_29268 + f I requiredVerticalSpaceForTree c field_29269 + f I rootRadius d field_29270 + f Lnet/minecraft/tags/TagKey; rootReplaceable e field_29271 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; rootStateProvider f field_29272 + f I rootPlacementAttempts g field_29273 + f I rootColumnMaxHeight h field_29274 + f I hangingRootRadius i field_29275 + f I hangingRootsVerticalSpan j field_29276 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; hangingRootStateProvider k field_29277 + f I hangingRootPlacementAttempts l field_29278 + f I allowedVerticalWaterForTree n field_33616 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedTreePosition o field_36289 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34332 a method_34332 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39919 a method_39919 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_36421 b method_36421 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34333 c method_34333 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34334 d method_34334 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34335 e method_34335 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34336 f method_34336 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34337 g method_34337 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34338 h method_34338 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34339 i method_34339 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/tags/TagKey; method_34340 j method_34340 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34341 k method_34341 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Ljava/lang/Integer; method_34342 l method_34342 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/RootSystemConfiguration;)Lnet/minecraft/core/Holder; method_34343 m method_34343 + m (Lnet/minecraft/core/Holder;IILnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IIIILnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IILnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 treeFeature + p 2 requiredVerticalSpaceForTree + p 3 rootRadius + p 4 rootReplaceable + p 5 rootStateProvider + p 6 rootPlacementAttempts + p 7 rootColumnMaxHeight + p 8 hangingRootRadius + p 9 hangingRootsVerticalSpawn + p 10 hangingRootStateProvider + p 11 hangingRootPlacementAttempts + p 12 allowedVerticalWaterForTree + p 13 allowedTreePosition + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SculkPatchConfiguration eez net/minecraft/class_7141 + f Lcom/mojang/serialization/Codec; CODEC a field_37710 + f I chargeCount b comp_553 + f I amountPerCharge c comp_554 + f I spreadAttempts d comp_555 + f I growthRounds e comp_556 + f I spreadRounds f comp_557 + f Lnet/minecraft/util/valueproviders/IntProvider; extraRareGrowths g comp_685 + f F catalystChance h comp_558 + m ()I chargeCount a comp_553 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41575 a method_41575 + m ()I amountPerCharge b comp_554 + m ()I spreadAttempts c comp_555 + m ()I growthRounds d comp_556 + m ()I spreadRounds f comp_557 + m ()Lnet/minecraft/util/valueproviders/IntProvider; extraRareGrowths g comp_685 + m ()F catalystChance h comp_558 + m (IIIIILnet/minecraft/util/valueproviders/IntProvider;F)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SimpleBlockConfiguration efa net/minecraft/class_3175 + f Lcom/mojang/serialization/Codec; CODEC a field_24909 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; toPlace b comp_156 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; toPlace a comp_156 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38913 a method_38913 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SimpleBlockConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28787 a method_28787 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 toPlace + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SimpleRandomFeatureConfiguration efb net/minecraft/class_3179 + f Lcom/mojang/serialization/Codec; CODEC a field_24910 + f Lnet/minecraft/core/HolderSet; features b field_13827 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SimpleRandomFeatureConfiguration;)Lnet/minecraft/core/HolderSet; method_28788 a method_28788 + m (Lnet/minecraft/core/Holder;)Ljava/util/stream/Stream; method_30651 a method_30651 + m (Lnet/minecraft/core/HolderSet;)V + p 1 features + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration efc net/minecraft/class_3666 + f Lcom/mojang/serialization/Codec; CODEC a field_24911 + f Z crystalInvulnerable b field_16207 + f Ljava/util/List; spikes c field_16208 + f Lnet/minecraft/core/BlockPos; crystalBeamTarget d field_16206 + m ()Z isCrystalInvulnerable a method_15883 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28790 a method_28790 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/util/Optional; method_28789 a method_28789 + m ()Ljava/util/List; getSpikes b method_15885 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/util/List; method_28791 b method_28791 + m ()Lnet/minecraft/core/BlockPos; getCrystalBeamTarget c method_15884 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpikeConfiguration;)Ljava/lang/Boolean; method_28792 c method_28792 + m (ZLjava/util/List;Lnet/minecraft/core/BlockPos;)V + p 1 crystalInvulnerable + p 2 spikes + p 3 crystalBeamTarget + m (ZLjava/util/List;Ljava/util/Optional;)V + p 1 crystalInvulnerable + p 2 spikes + p 3 crystalBeamTarget + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration efd net/minecraft/class_4642 + f Lcom/mojang/serialization/Codec; CODEC a field_24912 + f Lnet/minecraft/world/level/material/FluidState; state b field_21283 + f Z requiresBlockBelow c field_21284 + f I rockCount d field_21285 + f I holeCount e field_21286 + f Lnet/minecraft/core/HolderSet; validBlocks f field_21287 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28794 a method_28794 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Lnet/minecraft/core/HolderSet; method_28793 a method_28793 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Integer; method_28795 b method_28795 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Integer; method_28796 c method_28796 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Ljava/lang/Boolean; method_28797 d method_28797 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/SpringConfiguration;)Lnet/minecraft/world/level/material/FluidState; method_28798 e method_28798 + m (Lnet/minecraft/world/level/material/FluidState;ZIILnet/minecraft/core/HolderSet;)V + p 1 state + p 2 requiresBlockBelow + p 3 rockCount + p 4 holeCount + p 5 validBlocks + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration efe net/minecraft/class_4643 + f Lcom/mojang/serialization/Codec; CODEC a field_24921 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; trunkProvider b field_21288 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; dirtProvider c field_29279 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; trunkPlacer d field_24136 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; foliageProvider e field_29280 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; foliagePlacer f field_24135 + f Ljava/util/Optional; rootPlacer g field_38767 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; minimumSize h field_24137 + f Ljava/util/List; decorators i field_21290 + f Z ignoreVines j field_24138 + f Z forceDirt k field_29281 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28811 a method_28811 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/lang/Boolean; method_34344 a method_34344 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/lang/Boolean; method_37261 b method_37261 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/List; method_34345 c method_34345 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; method_28814 d method_28814 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28815 e method_28815 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/Optional; method_43164 f method_43164 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; method_28816 g method_28816 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28817 h method_28817 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; method_28818 i method_28818 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28819 j method_28819 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;Ljava/util/List;ZZ)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 rootPlacer + p 6 dirtProvider + p 7 minimumSize + p 8 decorators + p 9 ignoreVines + p 10 forceDirt + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder efe$a net/minecraft/class_4643$class_4644 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; trunkProvider a field_21292 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; foliageProvider b field_29282 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer; trunkPlacer c field_24141 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer; foliagePlacer d field_24140 + f Ljava/util/Optional; rootPlacer e field_38768 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; dirtProvider f field_29283 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize; minimumSize g field_24142 + f Ljava/util/List; decorators h field_21294 + f Z ignoreVines i field_24143 + f Z forceDirt j field_29284 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; ignoreVines a method_27374 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; dirt a method_34346 + p 1 dirtProvider + m (Ljava/util/List;)Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; decorators a method_27376 + p 1 decorators + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration$TreeConfigurationBuilder; forceDirt b method_34347 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration; build c method_23445 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 rootPlacer + p 6 minimumSize + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)V + p 1 trunkProvider + p 2 trunkPlacer + p 3 foliageProvider + p 4 foliagePlacer + p 5 minimumSize +c net/minecraft/world/level/levelgen/feature/configurations/TwistingVinesConfig eff net/minecraft/class_6790 + f Lcom/mojang/serialization/Codec; CODEC a field_35710 + f I spreadWidth b comp_287 + f I spreadHeight c comp_288 + f I maxHeight d comp_289 + m ()I spreadWidth a comp_287 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39611 a method_39611 + m ()I spreadHeight b comp_288 + m ()I maxHeight c comp_289 + m (III)V + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration efg net/minecraft/class_5835 + f Lcom/mojang/serialization/Codec; CODEC a field_28853 + f I floorSearchRange b field_28854 + f I placementRadiusAroundFloor c field_28855 + f F placementProbabilityPerValidPosition d field_28856 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_33771 a method_33771 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Float; method_33772 a method_33772 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Integer; method_33773 b method_33773 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/UnderwaterMagmaConfiguration;)Ljava/lang/Integer; method_33774 c method_33774 + m (IIF)V + p 1 floorSearchRange + p 2 placementRadiusAroundFloor + p 3 placementProbabilityPerValidPosition + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration efh net/minecraft/class_5927 + f Lcom/mojang/serialization/Codec; CODEC a field_29285 + f Lnet/minecraft/tags/TagKey; replaceable b field_29286 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; groundState c field_29287 + f Lnet/minecraft/core/Holder; vegetationFeature d field_29288 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; surface e field_29289 + f Lnet/minecraft/util/valueproviders/IntProvider; depth f field_29290 + f F extraBottomBlockChance g field_29291 + f I verticalRange h field_29292 + f F vegetationChance i field_29293 + f Lnet/minecraft/util/valueproviders/IntProvider; xzRadius j field_29294 + f F extraEdgeColumnChance k field_29295 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34348 a method_34348 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34349 a method_34349 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_34350 b method_34350 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34351 c method_34351 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Integer; method_34352 d method_34352 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Ljava/lang/Float; method_34353 e method_34353 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/util/valueproviders/IntProvider; method_34354 f method_34354 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/world/level/levelgen/placement/CaveSurface; method_34355 g method_34355 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/core/Holder; method_34356 h method_34356 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34357 i method_34357 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/VegetationPatchConfiguration;)Lnet/minecraft/tags/TagKey; method_34358 j method_34358 + m (Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/placement/CaveSurface;Lnet/minecraft/util/valueproviders/IntProvider;FIFLnet/minecraft/util/valueproviders/IntProvider;F)V + p 1 replaceable + p 2 groundState + p 3 vegetationFeature + p 4 surface + p 5 depth + p 6 extraBottomBlockChance + p 7 verticalRange + p 8 vegetationChance + p 9 xzRadius + p 10 extraEdgeColumnChance + m ()V +c net/minecraft/world/level/levelgen/feature/configurations/package-info efi net/minecraft/class_6111 +c net/minecraft/world/level/levelgen/feature/featuresize/FeatureSize efj net/minecraft/class_5201 + f Lcom/mojang/serialization/Codec; CODEC a field_24922 + f I MAX_WIDTH b field_31522 + f Ljava/util/OptionalInt; minClippedHeight c field_24146 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; minClippedHeightCodec a method_28820 + m (II)I getSizeAtHeight a method_27378 + p 1 height + p 2 midpoint + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSize;)Ljava/util/OptionalInt; method_28821 a method_28821 + m (Ljava/util/Optional;)Ljava/util/OptionalInt; method_28822 a method_28822 + m (Ljava/util/OptionalInt;)Ljava/util/Optional; method_28823 a method_28823 + m ()Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; type b method_28824 + m ()Ljava/util/OptionalInt; minClippedHeight c method_27377 + m (Ljava/util/OptionalInt;)V + p 1 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType efk net/minecraft/class_5202 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; TWO_LAYERS_FEATURE_SIZE a field_24147 + f Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; THREE_LAYERS_FEATURE_SIZE b field_24148 + f Lcom/mojang/serialization/MapCodec; codec c field_24923 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28825 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/featuresize/FeatureSizeType; register a method_27382 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize efl net/minecraft/class_5203 + f Lcom/mojang/serialization/MapCodec; CODEC d field_24924 + f I limit e field_24150 + f I upperLimit f field_24151 + f I lowerSize g field_24152 + f I middleSize h field_24153 + f I upperSize i field_24154 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28827 a method_28827 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28826 a method_28826 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28828 b method_28828 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28829 c method_28829 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28830 d method_28830 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/ThreeLayersFeatureSize;)Ljava/lang/Integer; method_28831 e method_28831 + m (IIIIILjava/util/OptionalInt;)V + p 1 limit + p 2 upperLimit + p 3 lowerSize + p 4 middleSize + p 5 upperSize + p 6 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize efm net/minecraft/class_5204 + f Lcom/mojang/serialization/MapCodec; CODEC d field_24925 + f I limit e field_24155 + f I lowerSize f field_24156 + f I upperSize g field_24157 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28833 a method_28833 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28832 a method_28832 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28834 b method_28834 + m (Lnet/minecraft/world/level/levelgen/feature/featuresize/TwoLayersFeatureSize;)Ljava/lang/Integer; method_28835 c method_28835 + m (III)V + p 1 limit + p 2 lowerSize + p 3 upperSize + m (IIILjava/util/OptionalInt;)V + p 1 limit + p 2 lowerSize + p 3 upperSize + p 4 minClippedHeight + m ()V +c net/minecraft/world/level/levelgen/feature/featuresize/package-info efn net/minecraft/class_6112 +c net/minecraft/world/level/levelgen/feature/foliageplacers/AcaciaFoliagePlacer efo net/minecraft/class_4645 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24926 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28836 a method_28836 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/BlobFoliagePlacer efp net/minecraft/class_4646 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24927 + f I height b field_23752 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; blobParts a method_28838 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/BlobFoliagePlacer;)Ljava/lang/Integer; method_28837 a method_28837 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28839 c method_28839 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/BushFoliagePlacer efq net/minecraft/class_5205 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24928 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28840 c method_28840 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer efr net/minecraft/class_8178 + f Lcom/mojang/serialization/MapCodec; CODEC a field_42841 + f Lnet/minecraft/util/valueproviders/IntProvider; height b field_42842 + f F wideBottomLayerHoleChance c field_42843 + f F cornerHoleChance g field_42844 + f F hangingLeavesChance h field_42845 + f F hangingLeavesExtensionChance i field_42846 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49241 a method_49241 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49242 a method_49242 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49243 b method_49243 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49244 c method_49244 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Ljava/lang/Float; method_49245 d method_49245 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/CherryFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49246 e method_49246 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;FFFF)V + p 1 radius + p 2 offset + p 3 height + p 4 wideBottomLayerHoleChance + p 5 cornerHoleChance + p 6 hangingLeavesChance + p 7 hangingLeavesExtensionChance + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/DarkOakFoliagePlacer efs net/minecraft/class_5206 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24929 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28841 a method_28841 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FancyFoliagePlacer eft net/minecraft/class_5207 + f Lcom/mojang/serialization/MapCodec; CODEC c field_24930 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28842 c method_28842 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer efu net/minecraft/class_4647 + f Lcom/mojang/serialization/Codec; CODEC d field_24931 + f Lnet/minecraft/util/valueproviders/IntProvider; radius e field_21296 + f Lnet/minecraft/util/valueproviders/IntProvider; offset f field_23753 + m ()Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; type a method_28843 + m (Lnet/minecraft/util/RandomSource;)I offset a method_27386 + p 1 random + m (Lnet/minecraft/util/RandomSource;I)I foliageRadius a method_23452 + p 1 random + p 2 radius + m (Lnet/minecraft/util/RandomSource;IIIIZ)Z shouldSkipLocation a method_23451 + c Skips certain positions based on the provided shape, such as rounding corners randomly.\nThe coordinates are passed in as absolute value, and should be within [0, {@code range}]. + p 1 random + p 2 localX + p 3 localY + p 4 localZ + p 5 range + p 6 large + m (Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)I foliageHeight a method_26989 + p 1 random + p 2 height + p 3 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;FLnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z tryPlaceExtension a method_49884 + p 0 level + p 1 foliageSetter + p 2 random + p 3 treeConfiguration + p 4 extensionChance + p 5 logPos + p 6 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;ILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;II)V createFoliage a method_27385 + p 1 level + p 2 blockSetter + p 3 random + p 4 config + p 5 maxFreeTreeHeight + p 6 attachment + p 7 foliageHeight + p 8 foliageRadius + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;ILnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment;III)V createFoliage a method_23448 + p 1 level + p 2 blockSetter + p 3 random + p 4 config + p 5 maxFreeTreeHeight + p 6 attachment + p 7 foliageHeight + p 8 foliageRadius + p 9 offset + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;)Z tryPlaceLeaf a method_34359 + p 0 level + p 1 foliageSetter + p 2 random + p 3 treeConfiguration + p 4 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;IIZ)V placeLeavesRow a method_23449 + p 1 level + p 2 foliageSetter + p 3 random + p 4 treeConfiguration + p 5 pos + p 6 range + p 7 localY + p 8 large + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;IIZFF)V placeLeavesRowWithHangingLeavesBelow a method_49247 + p 1 level + p 2 foliageSetter + p 3 random + p 4 treeConfiguration + p 5 pos + p 6 range + p 7 localY + p 8 large + p 9 hangingLeavesChance + p 10 hangingLeavesExtensionChance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30410 a method_30410 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_42380 a method_42380 + m (Lnet/minecraft/util/RandomSource;IIIIZ)Z shouldSkipLocationSigned b method_27387 + p 1 random + p 2 localX + p 3 localY + p 4 localZ + p 5 range + p 6 large + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P2; foliagePlacerParts b method_30411 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30412 b method_30412 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment efu$a net/minecraft/class_4647$class_5208 + f Lnet/minecraft/core/BlockPos; pos a field_24158 + f I radiusOffset b field_24159 + f Z doubleTrunk c field_24160 + m ()Lnet/minecraft/core/BlockPos; pos a method_27388 + m ()I radiusOffset b method_27389 + m ()Z doubleTrunk c method_27390 + m (Lnet/minecraft/core/BlockPos;IZ)V + p 1 pos + p 2 radiusOffset + p 3 doubleTrunk +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageSetter efu$b net/minecraft/class_4647$class_8179 + m (Lnet/minecraft/core/BlockPos;)Z isSet a method_49239 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V set a method_49240 + p 1 pos + p 2 state +c net/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType efv net/minecraft/class_4648 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; BLOB_FOLIAGE_PLACER a field_21299 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; SPRUCE_FOLIAGE_PLACER b field_21300 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; PINE_FOLIAGE_PLACER c field_21301 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; ACACIA_FOLIAGE_PLACER d field_21302 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; BUSH_FOLIAGE_PLACER e field_24161 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; FANCY_FOLIAGE_PLACER f field_24162 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; MEGA_JUNGLE_FOLIAGE_PLACER g field_24163 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; MEGA_PINE_FOLIAGE_PLACER h field_24164 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; DARK_OAK_FOLIAGE_PLACER i field_24165 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; RANDOM_SPREAD_FOLIAGE_PLACER j field_29296 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; CHERRY_FOLIAGE_PLACER k field_42847 + f Lcom/mojang/serialization/MapCodec; codec l field_24932 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28849 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacerType; register a method_28850 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/MegaJungleFoliagePlacer efw net/minecraft/class_5209 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24933 + f I height b field_24166 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28852 a method_28852 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/MegaJungleFoliagePlacer;)Ljava/lang/Integer; method_28851 a method_28851 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/MegaPineFoliagePlacer efx net/minecraft/class_5210 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24934 + f Lnet/minecraft/util/valueproviders/IntProvider; crownHeight b field_24168 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30413 a method_30413 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/MegaPineFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30414 a method_30414 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 crownHeight + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/PineFoliagePlacer efy net/minecraft/class_4649 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24935 + f Lnet/minecraft/util/valueproviders/IntProvider; height b field_23755 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30415 a method_30415 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/PineFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30416 a method_30416 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 height + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer efz net/minecraft/class_5928 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29297 + f Lnet/minecraft/util/valueproviders/IntProvider; foliageHeight b field_29298 + f I leafPlacementAttempts c field_29299 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34360 a method_34360 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer;)Ljava/lang/Integer; method_34361 a method_34361 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/RandomSpreadFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_34362 b method_34362 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;I)V + p 1 radius + p 2 offset + p 3 foliageHeight + p 4 leafPlacementAttempts + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/SpruceFoliagePlacer ega net/minecraft/class_4650 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24936 + f Lnet/minecraft/util/valueproviders/IntProvider; trunkHeight b field_23757 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30417 a method_30417 + m (Lnet/minecraft/world/level/levelgen/feature/foliageplacers/SpruceFoliagePlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_30418 a method_30418 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 radius + p 2 offset + p 3 trunkHeight + m ()V +c net/minecraft/world/level/levelgen/feature/foliageplacers/package-info egb net/minecraft/class_6113 +c net/minecraft/world/level/levelgen/feature/package-info egc net/minecraft/class_6114 +c net/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement egd net/minecraft/class_7398 + f Lcom/mojang/serialization/Codec; CODEC a field_38865 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; aboveRootProvider b comp_717 + f F aboveRootPlacementChance c comp_718 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; aboveRootProvider a comp_717 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43298 a method_43298 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement;)Ljava/lang/Float; method_43299 a method_43299 + m ()F aboveRootPlacementChance b comp_718 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/AboveRootPlacement;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43300 b method_43300 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;F)V + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement ege net/minecraft/class_7399 + f Lcom/mojang/serialization/Codec; CODEC a field_38866 + f Lnet/minecraft/core/HolderSet; canGrowThrough b comp_719 + f Lnet/minecraft/core/HolderSet; muddyRootsIn c comp_720 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; muddyRootsProvider d comp_721 + f I maxRootWidth e comp_722 + f I maxRootLength f comp_723 + f F randomSkewChance g comp_724 + m ()Lnet/minecraft/core/HolderSet; canGrowThrough a comp_719 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43301 a method_43301 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Float; method_43302 a method_43302 + m ()Lnet/minecraft/core/HolderSet; muddyRootsIn b comp_720 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Integer; method_43303 b method_43303 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; muddyRootsProvider c comp_721 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Ljava/lang/Integer; method_43304 c method_43304 + m ()I maxRootWidth d comp_722 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43305 d method_43305 + m ()I maxRootLength e comp_723 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/core/HolderSet; method_43306 e method_43306 + m ()F randomSkewChance f comp_724 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)Lnet/minecraft/core/HolderSet; method_43307 f method_43307 + m (Lnet/minecraft/core/HolderSet;Lnet/minecraft/core/HolderSet;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;IIF)V + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacer egf net/minecraft/class_7386 + f I ROOT_WIDTH_LIMIT a field_38769 + f I ROOT_LENGTH_LIMIT b field_38770 + f Lcom/mojang/serialization/MapCodec; CODEC c field_38771 + f Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement; mangroveRootPlacement h field_38867 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Ljava/util/List;I)Z simulateRoots a method_43166 + p 1 level + p 2 random + p 3 pos + p 4 direction + p 5 trunkOrigin + p 6 roots + p 7 length + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43169 a method_43169 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacer;)Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement; method_43180 a method_43180 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List; potentialRootPositions a method_43171 + p 1 pos + p 2 direction + p 3 random + p 4 trunkOrigin + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43173 b method_43173 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43174 b method_43174 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/feature/rootplacers/MangroveRootPlacement;)V + p 1 trunkOffset + p 2 rootProvider + p 3 aboveRootPlacement + p 4 mangroveRootPlacement + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer egg net/minecraft/class_7387 + f Lcom/mojang/serialization/Codec; CODEC d field_38779 + f Lnet/minecraft/util/valueproviders/IntProvider; trunkOffsetY e field_38868 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; rootProvider f field_38780 + f Ljava/util/Optional; aboveRootPlacement g field_38869 + m ()Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; type a method_43165 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; rootPlacerParts a method_43182 + p 0 instance + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V placeRoot a method_43172 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 treeConfig + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z placeRoots a method_43168 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 trunkOrigin + p 6 treeConfig + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z canPlaceRoot a method_43167 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getPotentiallyWaterloggedState a method_43181 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Ljava/util/Optional; method_43308 a method_43308 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_43184 a method_43184 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/BlockPos; getTrunkOrigin a method_43309 + p 1 pos + p 2 random + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43183 b method_43183 + m (Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43310 c method_43310 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/Optional;)V + p 1 trunkOffset + p 2 rootProvider + p 3 aboveRootPlacement + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType egh net/minecraft/class_7388 + f Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; MANGROVE_ROOT_PLACER a field_38781 + f Lcom/mojang/serialization/MapCodec; codec b field_38782 + m ()Lcom/mojang/serialization/MapCodec; codec a method_43185 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/rootplacers/RootPlacerType; register a method_43186 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/rootplacers/package-info egi net/minecraft/class_7727 +c net/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider egj net/minecraft/class_4651 + f Lcom/mojang/serialization/Codec; CODEC a field_24937 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; type a method_28862 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_23455 + p 1 random + p 2 pos + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider; simple a method_38432 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider; simple a method_38433 + p 0 state + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType egk net/minecraft/class_4652 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; SIMPLE_STATE_PROVIDER a field_21305 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; WEIGHTED_STATE_PROVIDER b field_21306 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; NOISE_THRESHOLD_PROVIDER c field_34932 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; NOISE_PROVIDER d field_34933 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; DUAL_NOISE_PROVIDER e field_34934 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; ROTATED_BLOCK_PROVIDER f field_24938 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; RANDOMIZED_INT_STATE_PROVIDER g field_29300 + f Lcom/mojang/serialization/MapCodec; codec h field_24939 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28863 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProviderType; register a method_23457 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider egl net/minecraft/class_6578 + f Lcom/mojang/serialization/MapCodec; CODEC b field_34702 + f Lnet/minecraft/util/InclusiveRange; variety i field_34703 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; slowNoiseParameters j field_34704 + f F slowScale k field_34705 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; slowNoise l field_34706 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Ljava/lang/Float; method_38434 a method_38434 + m (Lnet/minecraft/core/BlockPos;)D getSlowNoiseValue a method_38435 + p 1 pos + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; method_38436 b method_38436 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38437 c method_38437 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/DualNoiseProvider;)Lnet/minecraft/util/InclusiveRange; method_38438 c method_38438 + m (Lnet/minecraft/util/InclusiveRange;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FJLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FLjava/util/List;)V + p 1 variety + p 2 slowNoiseParameters + p 3 slowScale + p 4 seed + p 6 parameters + p 7 scale + p 8 states + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider egm net/minecraft/class_6579 + f J seed c field_34707 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters d field_34708 + f F scale e field_34709 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise; noise f field_34710 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; noiseCodec a method_38439 + p 0 instance + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Ljava/lang/Float; method_38440 a method_38440 + m (Lnet/minecraft/core/BlockPos;D)D getNoiseValue a method_38441 + p 1 pos + p 2 delta + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; method_38442 b method_38442 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseBasedStateProvider;)Ljava/lang/Long; method_38443 c method_38443 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;F)V + p 1 seed + p 3 parameters + p 4 scale +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseProvider egn net/minecraft/class_6580 + f Lcom/mojang/serialization/MapCodec; CODEC g field_34711 + f Ljava/util/List; states h field_34712 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseProvider;)Ljava/util/List; method_38444 a method_38444 + m (Ljava/util/List;D)Lnet/minecraft/world/level/block/state/BlockState; getRandomState a method_38445 + p 1 possibleStates + p 2 delta + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;D)Lnet/minecraft/world/level/block/state/BlockState; getRandomState a method_38446 + p 1 possibleStates + p 2 pos + p 3 delta + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; noiseProviderCodec b method_38447 + p 0 instance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38448 c method_38448 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FLjava/util/List;)V + p 1 seed + p 3 parameters + p 4 scale + p 5 states + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider ego net/minecraft/class_6581 + f Lcom/mojang/serialization/MapCodec; CODEC b field_34713 + f F threshold g field_34714 + f F highChance h field_34715 + f Lnet/minecraft/world/level/block/state/BlockState; defaultState i field_34716 + f Ljava/util/List; lowStates j field_34717 + f Ljava/util/List; highStates k field_34718 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/util/List; method_38449 a method_38449 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38450 b method_38450 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/util/List; method_38451 b method_38451 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Lnet/minecraft/world/level/block/state/BlockState; method_38452 c method_38452 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/lang/Float; method_38453 d method_38453 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/NoiseThresholdProvider;)Ljava/lang/Float; method_38454 e method_38454 + m (JLnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;FFFLnet/minecraft/world/level/block/state/BlockState;Ljava/util/List;Ljava/util/List;)V + p 1 seed + p 3 parameters + p 4 scale + p 5 threshold + p 6 highChance + p 7 defaultState + p 8 lowStates + p 9 highStates + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider egp net/minecraft/class_5929 + f Lcom/mojang/serialization/MapCodec; CODEC b field_29301 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; source c field_29302 + f Ljava/lang/String; propertyName d field_29303 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; property e field_29304 + f Lnet/minecraft/util/valueproviders/IntProvider; values f field_29305 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34365 a method_34365 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/lang/String;)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; findProperty a method_34363 + p 0 state + p 1 propertyName + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/block/state/properties/IntegerProperty; method_34364 a method_34364 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Lnet/minecraft/util/valueproviders/IntProvider; method_34366 a method_34366 + m (Ljava/lang/String;Lnet/minecraft/world/level/block/state/properties/Property;)Z method_34368 a method_34368 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Z method_34369 b method_34369 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Ljava/lang/String; method_34370 b method_34370 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RandomizedIntStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_34371 c method_34371 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Lnet/minecraft/world/level/block/state/properties/IntegerProperty;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 source + p 2 property + p 3 values + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/lang/String;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 source + p 2 propertyName + p 3 values + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RotatedBlockProvider egq net/minecraft/class_4655 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24944 + f Lnet/minecraft/world/level/block/Block; block c field_21313 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/RotatedBlockProvider;)Lnet/minecraft/world/level/block/Block; method_28866 a method_28866 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider egr net/minecraft/class_7400 + f Lcom/mojang/serialization/Codec; CODEC a field_38870 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fallback b comp_725 + f Ljava/util/List; rules c comp_726 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; fallback a comp_725 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43313 a method_43313 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState a method_43311 + p 1 level + p 2 random + p 3 pos + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; simple a method_43312 + p 0 block + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider; simple a method_43314 + p 0 fallback + m ()Ljava/util/List; rules b comp_726 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/RuleBasedBlockStateProvider$Rule egr$a net/minecraft/class_7400$class_7401 + f Lcom/mojang/serialization/Codec; CODEC a field_38871 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ifTrue b comp_727 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; then c comp_728 + m ()Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; ifTrue a comp_727 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43315 a method_43315 + m ()Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; then b comp_728 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider egs net/minecraft/class_4656 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24945 + f Lnet/minecraft/world/level/block/state/BlockState; state c field_21314 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/SimpleStateProvider;)Lnet/minecraft/world/level/block/state/BlockState; method_28867 a method_28867 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 state + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/WeightedStateProvider egt net/minecraft/class_4657 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24946 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; weightedList c field_21315 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lcom/mojang/serialization/DataResult; create a method_28868 + p 0 weightedList + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/WeightedStateProvider;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_28869 a method_28869 + m ()Ljava/lang/String; method_49535 b method_49535 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 weightedList + m (Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder;)V + p 1 builder + m ()V +c net/minecraft/world/level/levelgen/feature/stateproviders/package-info egu net/minecraft/class_6115 +c net/minecraft/world/level/levelgen/feature/treedecorators/AlterGroundDecorator egv net/minecraft/class_4658 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24957 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; provider b field_21316 + m (ILnet/minecraft/core/BlockPos;)Z method_23460 a method_23460 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AlterGroundDecorator;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_28889 a method_28889 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V placeCircle a method_23462 + p 1 context + p 2 pos + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V placeBlockAt b method_23463 + p 1 context + p 2 pos + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23461 c method_23461 + m (Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;)V + p 1 provider + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator egw net/minecraft/class_7389 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38783 + f F probability b field_38784 + f I exclusionRadiusXZ c field_38785 + f I exclusionRadiusY d field_38786 + f Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; blockProvider e field_38787 + f I requiredEmptyBlocks f field_38788 + f Ljava/util/List; directions g field_38789 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43188 a method_43188 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/util/List; method_43189 a method_43189 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z hasRequiredEmptyBlocks a method_43187 + p 1 context + p 2 pos + p 3 direction + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43190 b method_43190 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Lnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider; method_43191 c method_43191 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43192 d method_43192 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Integer; method_43193 e method_43193 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/AttachedToLeavesDecorator;)Ljava/lang/Float; method_43194 f method_43194 + m (FIILnet/minecraft/world/level/levelgen/feature/stateproviders/BlockStateProvider;ILjava/util/List;)V + p 1 probability + p 2 exclusionRadiusXZ + p 3 exclusionRadiusY + p 4 blockProvider + p 5 requiredEmptyBlocks + p 6 directions + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/BeehiveDecorator egx net/minecraft/class_4659 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24958 + f Lnet/minecraft/core/Direction; WORLDGEN_FACING b field_36346 + f [Lnet/minecraft/core/Direction; SPAWN_DIRECTIONS c field_36347 + f F probability d field_21317 + c Probability to generate a beehive + m (I)[Lnet/minecraft/core/Direction; method_40031 a method_40031 + m (ILnet/minecraft/core/BlockPos;)Z method_23464 a method_23464 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/entity/BeehiveBlockEntity;)V method_35373 a method_35373 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/BeehiveDecorator;)Ljava/lang/Float; method_28890 a method_28890 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)Z method_40032 a method_40032 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; method_40033 a method_40033 + m (Lnet/minecraft/core/Direction;)Z method_40034 a method_40034 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator egy net/minecraft/class_4660 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24959 + f F probability b field_21318 + m (ILnet/minecraft/core/BlockPos;)Z method_23465 a method_23465 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23466 a method_23466 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/CocoaDecorator;)Ljava/lang/Float; method_28891 a method_28891 + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/LeaveVineDecorator egz net/minecraft/class_4661 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24960 + f F probability b field_38790 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23468 a method_23468 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/LeaveVineDecorator;)Ljava/lang/Float; method_43195 a method_43195 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;)V addHangingVine a method_23467 + p 0 pos + p 1 sideProperty + p 2 context + m (F)V + p 1 probability + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator eha net/minecraft/class_4662 + f Lcom/mojang/serialization/Codec; CODEC h field_24962 + m ()Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; type a method_28893 + m (Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;)V place a method_23469 + p 1 context + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context eha$a net/minecraft/class_4662$class_7402 + f Lnet/minecraft/world/level/LevelSimulatedReader; level a field_38872 + f Ljava/util/function/BiConsumer; decorationSetter b field_38873 + f Lnet/minecraft/util/RandomSource; random c field_38874 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; logs d field_38875 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; leaves e field_38876 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; roots f field_38877 + m ()Lnet/minecraft/world/level/LevelSimulatedReader; level a method_43316 + m (Lnet/minecraft/core/BlockPos;)Z isAir a method_43317 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V setBlock a method_43318 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/properties/BooleanProperty;)V placeVine a method_43319 + p 1 pos + p 2 sideProperty + m ()Lnet/minecraft/util/RandomSource; random b method_43320 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; logs c method_43321 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; leaves d method_43322 + m ()Lit/unimi/dsi/fastutil/objects/ObjectArrayList; roots e method_43323 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Ljava/util/Set;Ljava/util/Set;Ljava/util/Set;)V + p 1 level + p 2 decorationSetter + p 3 random + p 4 logs + p 5 leaves + p 6 roots +c net/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType ehb net/minecraft/class_4663 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; TRUNK_VINE a field_21320 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; LEAVE_VINE b field_21321 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; COCOA c field_21322 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; BEEHIVE d field_21323 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; ALTER_GROUND e field_21324 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; ATTACHED_TO_LEAVES f field_38791 + f Lcom/mojang/serialization/MapCodec; codec g field_24963 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28894 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecoratorType; register a method_28895 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator ehc net/minecraft/class_4664 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24964 + f Lnet/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator; INSTANCE b field_24965 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/feature/treedecorators/TreeDecorator$Context;Lnet/minecraft/core/BlockPos;)V method_23474 a method_23474 + m ()Lnet/minecraft/world/level/levelgen/feature/treedecorators/TrunkVineDecorator; method_28896 b method_28896 + m ()V + m ()V +c net/minecraft/world/level/levelgen/feature/treedecorators/package-info ehd net/minecraft/class_6117 +c net/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer ehe net/minecraft/class_5930 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29306 + f I minHeightForLeaves b field_29307 + f Lnet/minecraft/util/valueproviders/IntProvider; bendLength h field_29308 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_34372 a method_34372 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34373 b method_34373 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/BendingTrunkPlacer;)Ljava/lang/Integer; method_34374 b method_34374 + m (IIIILnet/minecraft/util/valueproviders/IntProvider;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 minHeightForLeaves + p 5 bendLength + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer ehf net/minecraft/class_8180 + f Lcom/mojang/serialization/MapCodec; CODEC a field_42848 + f Lcom/mojang/serialization/Codec; BRANCH_START_CODEC b field_42849 + f Lnet/minecraft/util/valueproviders/IntProvider; branchCount h field_42850 + f Lnet/minecraft/util/valueproviders/IntProvider; branchHorizontalLength i field_42851 + f Lnet/minecraft/util/valueproviders/UniformInt; branchStartOffsetFromTop j field_42852 + f Lnet/minecraft/util/valueproviders/UniformInt; secondBranchStartOffsetFromTop k field_42853 + f Lnet/minecraft/util/valueproviders/IntProvider; branchEndOffsetFromTop l field_42854 + m (Lnet/minecraft/util/valueproviders/UniformInt;)Lcom/mojang/serialization/DataResult; method_49248 a method_49248 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/function/Function;Lnet/minecraft/core/Direction;IZLnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment; generateBranch a method_49249 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 pos + p 6 config + p 7 propertySetter + p 8 direction + p 9 secondBranchStartOffsetFromTop + p 10 doubleBranch + p 11 currentPos + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49250 a method_49250 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_49251 a method_49251 + m ()Ljava/lang/String; method_49536 b method_49536 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49252 b method_49252 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/UniformInt; method_49253 b method_49253 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49254 c method_49254 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/CherryTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_49255 d method_49255 + m (IIILnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/UniformInt;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 branchCount + p 5 branchHorizontalLength + p 6 branchStartOffsetFromTop + p 7 branchEndOffsetFromTop + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/DarkOakTrunkPlacer ehg net/minecraft/class_5211 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24966 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28897 b method_28897 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/FancyTrunkPlacer ehh net/minecraft/class_5212 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24967 + f D TRUNK_HEIGHT_SCALE b field_31524 + f D CLUSTER_DENSITY_MAGIC h field_31525 + f D BRANCH_SLOPE i field_31526 + f D BRANCH_LENGTH_MAGIC j field_31527 + m (II)Z trimBranches a method_27391 + p 1 maxHeight + p 2 currentHeight + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V makeBranches a method_27392 + p 1 level + p 2 blockSetter + p 3 random + p 4 maxHeight + p 5 pos + p 6 foliageCoords + p 7 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z makeLimb a method_27393 + p 1 level + p 2 blockSetter + p 3 random + p 4 basePos + p 5 offsetPos + p 6 modifyWorld + p 7 config + m (Lnet/minecraft/core/BlockPos;)I getSteps a method_27394 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/Direction$Axis; getLogAxis a method_27395 + p 1 pos + p 2 otherPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; method_35374 a method_35374 + m (II)F treeShape b method_27396 + p 0 height + p 1 currentY + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28898 b method_28898 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/FancyTrunkPlacer$FoliageCoords ehh$a net/minecraft/class_5212$class_5213 + f Lnet/minecraft/world/level/levelgen/feature/foliageplacers/FoliagePlacer$FoliageAttachment; attachment a field_24169 + f I branchBase b field_24170 + m ()I getBranchBase a method_27397 + m (Lnet/minecraft/core/BlockPos;I)V + p 1 attachmentPos + p 2 branchBase +c net/minecraft/world/level/levelgen/feature/trunkplacers/ForkingTrunkPlacer ehi net/minecraft/class_5139 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24968 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28899 b method_28899 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/GiantTrunkPlacer ehj net/minecraft/class_5214 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24969 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Lnet/minecraft/core/BlockPos;III)V placeLogIfFreeWithOffset a method_27399 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + p 6 offsetPos + p 7 offsetX + p 8 offsetY + p 9 offsetZ + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28900 b method_28900 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/MegaJungleTrunkPlacer ehk net/minecraft/class_5215 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24970 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28901 b method_28901 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/StraightTrunkPlacer ehl net/minecraft/class_5140 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24971 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28902 b method_28902 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer ehm net/minecraft/class_5141 + f I MAX_BASE_HEIGHT a field_31528 + f I MAX_RAND b field_31529 + f Lcom/mojang/serialization/Codec; CODEC c field_24972 + f I MAX_HEIGHT d field_31530 + f I baseHeight e field_23760 + f I heightRandA f field_23761 + f I heightRandB g field_23762 + m ()Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; type a method_28903 + m (Lnet/minecraft/util/RandomSource;)I getTreeHeight a method_26993 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P3; trunkPlacerParts a method_28904 + p 0 instance + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Ljava/util/List; placeTrunk a method_26991 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 pos + p 6 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V placeLogIfFree a method_27401 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)V setDirtAt a method_27400 + p 0 level + p 1 blockSetter + p 2 random + p 3 pos + p 4 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/function/Function;)Z placeLog a method_27402 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + p 6 propertySetter + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z validTreePos a method_43196 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43197 a method_43197 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28905 a method_28905 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;)Z placeLog b method_35375 + p 1 level + p 2 blockSetter + p 3 random + p 4 pos + p 5 config + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isFree b method_43198 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_27405 b method_27405 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28906 b method_28906 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Lnet/minecraft/core/BlockPos;)Z isDirt c method_27403 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacer;)Ljava/lang/Integer; method_28907 c method_28907 + m (III)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType ehn net/minecraft/class_5142 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; STRAIGHT_TRUNK_PLACER a field_23763 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; FORKING_TRUNK_PLACER b field_23764 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; GIANT_TRUNK_PLACER c field_24171 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; MEGA_JUNGLE_TRUNK_PLACER d field_24172 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; DARK_OAK_TRUNK_PLACER e field_24173 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; FANCY_TRUNK_PLACER f field_24174 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; BENDING_TRUNK_PLACER g field_29309 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; UPWARDS_BRANCHING_TRUNK_PLACER h field_38792 + f Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; CHERRY_TRUNK_PLACER i field_42855 + f Lcom/mojang/serialization/MapCodec; codec j field_24973 + m ()Lcom/mojang/serialization/MapCodec; codec a method_28908 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/feature/trunkplacers/TrunkPlacerType; register a method_26995 + p 0 name + p 1 codec + m (Lcom/mojang/serialization/MapCodec;)V + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer eho net/minecraft/class_7390 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38793 + f Lnet/minecraft/util/valueproviders/IntProvider; extraBranchSteps b field_38794 + f F placeBranchPerLogProbability h field_38795 + f Lnet/minecraft/util/valueproviders/IntProvider; extraBranchLength i field_38796 + f Lnet/minecraft/core/HolderSet; canGrowThrough j field_38797 + m (Lnet/minecraft/world/level/LevelSimulatedReader;Ljava/util/function/BiConsumer;Lnet/minecraft/util/RandomSource;ILnet/minecraft/world/level/levelgen/feature/configurations/TreeConfiguration;Ljava/util/List;Lnet/minecraft/core/BlockPos$MutableBlockPos;ILnet/minecraft/core/Direction;II)V placeBranch a method_43199 + p 1 level + p 2 blockSetter + p 3 random + p 4 freeTreeHeight + p 5 treeConfig + p 6 foliageAttachments + p 7 pos + p 8 y + p 9 direction + p 10 extraBranchLength + p 11 extraBranchSteps + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_43200 a method_43200 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/core/HolderSet; method_43201 a method_43201 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_43202 b method_43202 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43203 b method_43203 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Ljava/lang/Float; method_43204 c method_43204 + m (Lnet/minecraft/world/level/levelgen/feature/trunkplacers/UpwardsBranchingTrunkPlacer;)Lnet/minecraft/util/valueproviders/IntProvider; method_43205 d method_43205 + m (IIILnet/minecraft/util/valueproviders/IntProvider;FLnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/core/HolderSet;)V + p 1 baseHeight + p 2 heightRandA + p 3 heightRandB + p 4 extraBranchSteps + p 5 placeBranchPerLogProbability + p 6 extraBranchLength + p 7 canGrowThrough + m ()V +c net/minecraft/world/level/levelgen/feature/trunkplacers/package-info ehp net/minecraft/class_6118 +c net/minecraft/world/level/levelgen/flat/FlatLayerInfo ehq net/minecraft/class_3229 + f Lcom/mojang/serialization/Codec; CODEC a field_24974 + f Lnet/minecraft/world/level/block/Block; block b field_29566 + f I height c field_14028 + m ()I getHeight a method_14289 + c Return the amount of layers for this set of layers. + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28909 a method_28909 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)Lnet/minecraft/world/level/block/Block; method_28910 a method_28910 + m ()Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_14286 + m (ILnet/minecraft/world/level/block/Block;)V + p 1 height + p 2 block + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset ehr net/minecraft/class_7142 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37711 + f Lcom/mojang/serialization/Codec; CODEC b field_37712 + f Lnet/minecraft/core/Holder; displayItem c comp_559 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings d comp_560 + m ()Lnet/minecraft/core/Holder; displayItem a comp_559 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41576 a method_41576 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; method_41577 a method_41577 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings b comp_560 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset;)Lnet/minecraft/core/Holder; method_41578 b method_41578 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPresets ehs net/minecraft/class_7143 + f Lnet/minecraft/resources/ResourceKey; CLASSIC_FLAT a field_37713 + f Lnet/minecraft/resources/ResourceKey; TUNNELERS_DREAM b field_37714 + f Lnet/minecraft/resources/ResourceKey; WATER_WORLD c field_37715 + f Lnet/minecraft/resources/ResourceKey; OVERWORLD d field_37716 + f Lnet/minecraft/resources/ResourceKey; SNOWY_KINGDOM e field_37717 + f Lnet/minecraft/resources/ResourceKey; BOTTOMLESS_PIT f field_37718 + f Lnet/minecraft/resources/ResourceKey; DESERT g field_37719 + f Lnet/minecraft/resources/ResourceKey; REDSTONE_READY h field_37720 + f Lnet/minecraft/resources/ResourceKey; THE_VOID i field_37721 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41580 + p 0 name + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41579 + p 0 context + m ()V + m ()V +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPresets$Bootstrap ehs$a net/minecraft/class_7143$class_7144 + f Lnet/minecraft/data/worldgen/BootstrapContext; context a field_40917 + m ()V run a method_41581 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/resources/ResourceKey;Ljava/util/Set;ZZ[Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)V register a method_41583 + p 1 presetKey + p 2 displayItem + p 3 biomeKey + p 4 structureSetKeys + p 5 setDecoration + p 6 addLakes + p 7 flatLayerInfos + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V + p 1 context +c net/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings eht net/minecraft/class_3232 + f Lcom/mojang/serialization/Codec; CODEC a field_24975 + f Lorg/slf4j/Logger; LOGGER b field_14064 + f Ljava/util/Optional; structureOverrides c field_37145 + f Ljava/util/List; layersInfo d field_14072 + f Lnet/minecraft/core/Holder; biome e field_14081 + f Ljava/util/List; layers f field_14082 + f Z voidGen g field_14077 + f Z decoration h field_24976 + f Z addLakes i field_24977 + f Ljava/util/List; lakes j field_40918 + m ()V setDecoration a method_28911 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28913 a method_28913 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_34741 a method_34741 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lcom/mojang/serialization/DataResult; validateHeight a method_33067 + p 0 flatSettings + m (Ljava/util/List;Ljava/util/Optional;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; withBiomeAndLayers a method_46727 + p 1 layerInfos + p 2 structureSets + p 3 biome + m (Ljava/util/Optional;Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; getBiome a method_46728 + p 0 biome + p 1 defaultBiome + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/biome/BiomeGenerationSettings; adjustGenerationSettings a method_44225 + p 1 biome + m (Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/core/Holder; getDefaultBiome a method_46726 + p 0 biomes + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; getDefault a method_14309 + p 0 biomes + p 1 structureSetGetter + p 2 placedFeatureGetter + m ()V setAddLakes b method_28916 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/util/Optional; method_31182 b method_31182 + m (Lnet/minecraft/core/HolderGetter;)Ljava/util/List; createLakesList b method_46729 + p 0 placedFeatureGetter + m ()Ljava/util/Optional; structureOverrides c method_41139 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/Boolean; method_30046 c method_30046 + m ()Lnet/minecraft/core/Holder; getBiome d method_14326 + c Return the biome used on this preset. + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/Boolean; method_30047 d method_30047 + m ()Ljava/util/List; getLayersInfo e method_14327 + c Return the list of layers on this preset. + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/util/Optional; method_41140 e method_41140 + m ()Ljava/util/List; getLayers f method_14312 + m ()V updateLayers g method_14330 + m ()Ljava/lang/String; method_49537 h method_49537 + m (Ljava/util/Optional;Ljava/util/List;ZZLjava/util/Optional;Lnet/minecraft/core/Holder$Reference;Lnet/minecraft/core/Holder;Lnet/minecraft/core/Holder;)V + p 1 structureOverrides + p 2 layersInfo + p 3 addLakes + p 4 decoration + p 5 biome + p 6 defaultBiome + p 7 lavaUnderground + p 8 lavaSurface + m (Ljava/util/Optional;Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 structureOverrides + p 2 biome + p 3 lakes + m ()V +c net/minecraft/world/level/levelgen/flat/package-info ehu net/minecraft/class_6119 +c net/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight ehv net/minecraft/class_6120 + f Lcom/mojang/serialization/MapCodec; CODEC a field_31531 + f Lorg/slf4j/Logger; LOGGER b field_31532 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_31533 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_31534 + f I inner f field_31535 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35376 a method_35376 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight; of a method_35377 + p 0 minInclusive + p 1 maxInclusive + p 2 inner + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Ljava/lang/Integer; method_35378 a method_35378 + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35379 b method_35379 + m (Lnet/minecraft/world/level/levelgen/heightproviders/BiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35380 c method_35380 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 inner + m ()V +c net/minecraft/world/level/levelgen/heightproviders/ConstantHeight ehw net/minecraft/class_6121 + f Lnet/minecraft/world/level/levelgen/heightproviders/ConstantHeight; ZERO a field_31536 + f Lcom/mojang/serialization/MapCodec; CODEC b field_31537 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; value d field_31538 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/ConstantHeight; of a method_35383 + p 0 value + m ()Lnet/minecraft/world/level/levelgen/VerticalAnchor; getValue b method_35385 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + p 1 value + m ()V +c net/minecraft/world/level/levelgen/heightproviders/HeightProvider ehx net/minecraft/class_6122 + f Lcom/mojang/serialization/Codec; CONSTANT_OR_DISPATCH_CODEC a field_31539 + f Lcom/mojang/serialization/Codec; CODEC c field_31540 + m ()Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; getType a method_35388 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/WorldGenerationContext;)I sample a method_35391 + p 1 random + p 2 context + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35389 a method_35389 + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lcom/mojang/datafixers/util/Either; method_35390 a method_35390 + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_35392 b method_35392 + m ()V + m ()V +c net/minecraft/world/level/levelgen/heightproviders/HeightProviderType ehy net/minecraft/class_6123 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; CONSTANT a field_31541 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; UNIFORM b field_31542 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; BIASED_TO_BOTTOM c field_31543 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; VERY_BIASED_TO_BOTTOM d field_33520 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; TRAPEZOID e field_33521 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; WEIGHTED_LIST f field_35711 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_35393 a method_35393 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProviderType; register a method_35394 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight ehz net/minecraft/class_6342 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33522 + f Lorg/slf4j/Logger; LOGGER b field_33523 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_33524 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_33525 + f I plateau f field_33526 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36306 a method_36306 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight; of a method_36307 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight; of a method_36308 + p 0 minInclusive + p 1 maxInclusive + p 2 plateau + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Ljava/lang/Integer; method_36309 a method_36309 + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36310 b method_36310 + m (Lnet/minecraft/world/level/levelgen/heightproviders/TrapezoidHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36311 c method_36311 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 plateau + m ()V +c net/minecraft/world/level/levelgen/heightproviders/UniformHeight eia net/minecraft/class_6124 + f Lcom/mojang/serialization/MapCodec; CODEC a field_31544 + f Lorg/slf4j/Logger; LOGGER b field_31545 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_31546 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_31547 + f Lit/unimi/dsi/fastutil/longs/LongSet; warnedFor f field_36290 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_35395 a method_35395 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight; of a method_35396 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35397 a method_35397 + m (Lnet/minecraft/world/level/levelgen/heightproviders/UniformHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_35398 b method_35398 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)V + p 1 minInclusive + p 2 maxInclusive + m ()V +c net/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight eib net/minecraft/class_6343 + f Lcom/mojang/serialization/MapCodec; CODEC a field_33527 + f Lorg/slf4j/Logger; LOGGER b field_33528 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; minInclusive d field_33529 + f Lnet/minecraft/world/level/levelgen/VerticalAnchor; maxInclusive e field_33530 + f I inner f field_33531 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_36312 a method_36312 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight; of a method_36313 + p 0 minInclusive + p 1 maxInclusive + p 2 inner + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Ljava/lang/Integer; method_36314 a method_36314 + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36315 b method_36315 + m (Lnet/minecraft/world/level/levelgen/heightproviders/VeryBiasedToBottomHeight;)Lnet/minecraft/world/level/levelgen/VerticalAnchor; method_36316 c method_36316 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;I)V + p 1 minInclusive + p 2 maxInclusive + p 3 inner + m ()V +c net/minecraft/world/level/levelgen/heightproviders/WeightedListHeight eic net/minecraft/class_6791 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35712 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; distribution b field_35713 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39612 a method_39612 + m (Lnet/minecraft/world/level/levelgen/heightproviders/WeightedListHeight;)Lnet/minecraft/util/random/SimpleWeightedRandomList; method_39613 a method_39613 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + p 1 distribution + m ()V +c net/minecraft/world/level/levelgen/heightproviders/package-info eid net/minecraft/class_6125 +c net/minecraft/world/level/levelgen/material/MaterialRuleList eie net/minecraft/class_6582 + f Ljava/util/List; materialRuleList a comp_437 + m ()Ljava/util/List; materialRuleList a comp_437 + m (Ljava/util/List;)V +c net/minecraft/world/level/levelgen/material/WorldGenMaterialRule eif net/minecraft/class_6583 + m (Lnet/minecraft/world/level/levelgen/NoiseChunk;III)Lnet/minecraft/world/level/block/state/BlockState; apply a method_40553 + p 1 chunk + p 2 x + p 3 y + p 4 z +c net/minecraft/world/level/levelgen/material/package-info eig net/minecraft/class_6657 +c net/minecraft/world/level/levelgen/package-info eih net/minecraft/class_6126 +c net/minecraft/world/level/levelgen/placement/BiomeFilter eii net/minecraft/class_6792 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35714 + f Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; INSTANCE c field_35715 + m ()Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; biome a method_39614 + m ()Ljava/lang/IllegalStateException; method_39616 c method_39616 + m ()Lnet/minecraft/world/level/levelgen/placement/BiomeFilter; method_39617 d method_39617 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/BlockPredicateFilter eij net/minecraft/class_6658 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35075 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; predicate c field_35076 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38916 a method_38916 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter; forPredicate a method_39618 + p 0 predicate + m (Lnet/minecraft/world/level/levelgen/placement/BlockPredicateFilter;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_38917 a method_38917 + m (Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;)V + p 1 predicate + m ()V +c net/minecraft/world/level/levelgen/placement/CarvingMaskPlacement eik net/minecraft/class_5851 + f Lcom/mojang/serialization/MapCodec; CODEC a field_28934 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; step c field_28935 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/levelgen/placement/CarvingMaskPlacement; forStep a method_39619 + p 0 step + m (Lnet/minecraft/world/level/levelgen/placement/CarvingMaskPlacement;)Lnet/minecraft/world/level/levelgen/GenerationStep$Carving; method_33862 a method_33862 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)V + p 1 step + m ()V +c net/minecraft/world/level/levelgen/placement/CaveSurface eil net/minecraft/class_5932 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; CEILING a field_29313 + f Lnet/minecraft/world/level/levelgen/placement/CaveSurface; FLOOR b field_29314 + f Lcom/mojang/serialization/Codec; CODEC c field_29315 + f Lnet/minecraft/core/Direction; direction d field_29316 + f I y e field_29317 + f Ljava/lang/String; id f field_29318 + f [Lnet/minecraft/world/level/levelgen/placement/CaveSurface; $VALUES g field_29320 + m ()Lnet/minecraft/core/Direction; getDirection a method_34379 + m ()I getY b method_34380 + m ()[Lnet/minecraft/world/level/levelgen/placement/CaveSurface; $values d method_36759 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;ILjava/lang/String;)V + p 3 direction + p 4 y + p 5 id + m ()V +c net/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement eim net/minecraft/class_5452 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35716 + f Lnet/minecraft/util/valueproviders/IntProvider; count c field_35717 + m (I)Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement; of a method_39620 + p 0 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement; of a method_39621 + p 0 count + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmpty a method_30472 + p 0 state + m (Lnet/minecraft/world/level/levelgen/placement/CountOnEveryLayerPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39622 a method_39622 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;IIII)I findOnGroundYPosition a method_30473 + p 0 context + p 1 x + p 2 y + p 3 z + p 4 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/placement/CountPlacement ein net/minecraft/class_6793 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35718 + f Lnet/minecraft/util/valueproviders/IntProvider; count c field_35719 + m (I)Lnet/minecraft/world/level/levelgen/placement/CountPlacement; of a method_39623 + p 0 count + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/CountPlacement; of a method_39624 + p 0 count + m (Lnet/minecraft/world/level/levelgen/placement/CountPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39625 a method_39625 + m (Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 count + m ()V +c net/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement eio net/minecraft/class_6794 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35720 + f Lnet/minecraft/core/Direction; directionOfSearch c field_35721 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; targetCondition d field_35722 + f Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; allowedSearchCondition e field_35723 + f I maxSteps f field_35724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39626 a method_39626 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Ljava/lang/Integer; method_39627 a method_39627 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement; scanningFor a method_39628 + p 0 directionOfSearch + p 1 targetCondition + p 2 maxSteps + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement; scanningFor a method_39629 + p 0 directionOfSearch + p 1 targetCondition + p 2 allowedSearchCondition + p 3 maxSteps + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39630 b method_39630 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate; method_39631 c method_39631 + m (Lnet/minecraft/world/level/levelgen/placement/EnvironmentScanPlacement;)Lnet/minecraft/core/Direction; method_39632 d method_39632 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;Lnet/minecraft/world/level/levelgen/blockpredicates/BlockPredicate;I)V + p 1 directionOfSearch + p 2 targetCondition + p 3 allowedSearchCondition + p 4 maxSteps + m ()V +c net/minecraft/world/level/levelgen/placement/FixedPlacement eip net/minecraft/class_9830 + f Lcom/mojang/serialization/MapCodec; CODEC a field_52290 + f Ljava/util/List; positions c field_52291 + m (IILnet/minecraft/core/BlockPos;)Z isSameChunk a method_61119 + p 0 x + p 1 z + p 2 pos + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_61120 a method_61120 + m (Lnet/minecraft/world/level/levelgen/placement/FixedPlacement;)Ljava/util/List; method_61121 a method_61121 + m ([Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/placement/FixedPlacement; of a method_61122 + p 0 positions + m (IILnet/minecraft/core/BlockPos;)Z method_61123 b method_61123 + m (Ljava/util/List;)V + p 1 positions + m ()V +c net/minecraft/world/level/levelgen/placement/HeightRangePlacement eiq net/minecraft/class_6795 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35725 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; height c field_35726 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39633 a method_39633 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; uniform a method_39634 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; of a method_39635 + p 0 height + m (Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_39636 a method_39636 + m (Lnet/minecraft/world/level/levelgen/VerticalAnchor;Lnet/minecraft/world/level/levelgen/VerticalAnchor;)Lnet/minecraft/world/level/levelgen/placement/HeightRangePlacement; triangle b method_39637 + p 0 minInclusive + p 1 maxInclusive + m (Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)V + p 1 height + m ()V +c net/minecraft/world/level/levelgen/placement/HeightmapPlacement eir net/minecraft/class_5925 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29265 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap c field_29266 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34330 a method_34330 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lnet/minecraft/world/level/levelgen/placement/HeightmapPlacement; onHeightmap a method_39638 + p 0 heightmap + m (Lnet/minecraft/world/level/levelgen/placement/HeightmapPlacement;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_34331 a method_34331 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 heightmap + m ()V +c net/minecraft/world/level/levelgen/placement/InSquarePlacement eis net/minecraft/class_5450 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35727 + f Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; INSTANCE c field_35728 + m ()Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; spread a method_39639 + m ()Lnet/minecraft/world/level/levelgen/placement/InSquarePlacement; method_39640 c method_39640 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement eit net/minecraft/class_3275 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24987 + f I noiseToCountRatio c field_14208 + f D noiseFactor d field_14206 + f D noiseOffset e field_14205 + m (IDD)Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement; of a method_39641 + p 0 noiseToCountRatio + p 1 noiseFactor + p 3 noiseOffset + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28939 a method_28939 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Double; method_28941 a method_28941 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Double; method_28942 b method_28942 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseBasedCountPlacement;)Ljava/lang/Integer; method_28943 c method_28943 + m (IDD)V + p 1 noiseToCountRatio + p 2 noiseFactor + p 4 noiseOffset + m ()V +c net/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement eiu net/minecraft/class_3003 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24890 + f D noiseLevel c field_13444 + f I belowNoise d field_13446 + f I aboveNoise e field_13445 + m (DII)Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement; of a method_39642 + p 0 noiseLevel + p 2 belowNoise + p 3 aboveNoise + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28733 a method_28733 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Integer; method_28732 a method_28732 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Integer; method_28734 b method_28734 + m (Lnet/minecraft/world/level/levelgen/placement/NoiseThresholdCountPlacement;)Ljava/lang/Double; method_28735 c method_28735 + m (DII)V + p 1 noiseLevel + p 3 belowNoise + p 4 aboveNoise + m ()V +c net/minecraft/world/level/levelgen/placement/PlacedFeature eiv net/minecraft/class_6796 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_35729 + f Lcom/mojang/serialization/Codec; CODEC b field_35730 + f Lcom/mojang/serialization/Codec; LIST_CODEC c field_35731 + f Lcom/mojang/serialization/Codec; LIST_OF_LISTS_CODEC d field_36416 + f Lnet/minecraft/core/Holder; feature e comp_334 + f Ljava/util/List; placement f comp_335 + m ()Ljava/util/stream/Stream; getFeatures a method_39643 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39645 a method_39645 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z place a method_39644 + p 1 level + p 2 generator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/feature/ConfiguredFeature;Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/core/BlockPos;)V method_39646 a method_39646 + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Ljava/util/List; method_39647 a method_39647 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeWithContext a method_39648 + p 1 context + p 2 source + p 3 pos + m (Lnet/minecraft/world/level/levelgen/placement/PlacementModifier;Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; method_39649 a method_39649 + m ()Lnet/minecraft/core/Holder; feature b comp_334 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z placeWithBiomeCheck b method_39650 + p 1 level + p 2 generator + p 3 random + p 4 pos + m (Lnet/minecraft/world/level/levelgen/placement/PlacedFeature;)Lnet/minecraft/core/Holder; method_39651 b method_39651 + m ()Ljava/util/List; placement c comp_335 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementContext eiw net/minecraft/class_5444 + f Lnet/minecraft/world/level/WorldGenLevel; level a field_25857 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; generator b field_35734 + f Ljava/util/Optional; topFeature c field_35735 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/GenerationStep$Carving;)Lnet/minecraft/world/level/chunk/CarvingMask; getCarvingMask a method_30459 + p 1 chunkPos + p 2 step + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)I getHeight a method_30460 + p 1 heightmapType + p 2 x + p 3 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_30461 + p 1 pos + m ()I getMinBuildHeight c method_33868 + m ()Lnet/minecraft/world/level/WorldGenLevel; getLevel d method_34383 + m ()Ljava/util/Optional; topFeature e method_39652 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; generator f method_39653 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/chunk/ChunkGenerator;Ljava/util/Optional;)V + p 1 level + p 2 generator + p 3 topFeature +c net/minecraft/world/level/levelgen/placement/PlacementFilter eix net/minecraft/class_6661 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Z shouldPlace a method_38918 + p 1 context + p 2 random + p 3 pos + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementModifier eiy net/minecraft/class_6797 + f Lcom/mojang/serialization/Codec; CODEC b field_35736 + m (Lnet/minecraft/world/level/levelgen/placement/PlacementContext;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/stream/Stream; getPositions a_ method_14452 + p 1 context + p 2 random + p 3 pos + m ()Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; type b method_39615 + m ()V + m ()V +c net/minecraft/world/level/levelgen/placement/PlacementModifierType eiz net/minecraft/class_6798 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; BLOCK_PREDICATE_FILTER a field_35737 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; RARITY_FILTER b field_35738 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; SURFACE_RELATIVE_THRESHOLD_FILTER c field_35739 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; SURFACE_WATER_DEPTH_FILTER d field_35740 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; BIOME_FILTER e field_35741 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; COUNT f field_35742 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; NOISE_BASED_COUNT g field_35743 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; NOISE_THRESHOLD_COUNT h field_35744 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; COUNT_ON_EVERY_LAYER i field_35745 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; ENVIRONMENT_SCAN j field_35746 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; HEIGHTMAP k field_35747 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; HEIGHT_RANGE l field_35748 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; IN_SQUARE m field_35749 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; RANDOM_OFFSET n field_35750 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; CARVING_MASK_PLACEMENT o field_35751 + f Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; FIXED_PLACEMENT p field_52292 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_39654 a method_39654 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/placement/PlacementModifierType; register a method_39655 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/placement/RandomOffsetPlacement eja net/minecraft/class_6732 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35419 + f Lnet/minecraft/util/valueproviders/IntProvider; xzSpread c field_35420 + f Lnet/minecraft/util/valueproviders/IntProvider; ySpread d field_35421 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; vertical a method_39656 + p 0 ySpread + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; of a method_39657 + p 0 xzSpread + p 1 ySpread + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_39179 a method_39179 + m (Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39180 a method_39180 + m (Lnet/minecraft/util/valueproviders/IntProvider;)Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement; horizontal b method_39658 + p 0 xzSpread + m (Lnet/minecraft/world/level/levelgen/placement/RandomOffsetPlacement;)Lnet/minecraft/util/valueproviders/IntProvider; method_39181 b method_39181 + m (Lnet/minecraft/util/valueproviders/IntProvider;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 xzSpread + p 2 ySpread + m ()V +c net/minecraft/world/level/levelgen/placement/RarityFilter ejb net/minecraft/class_6799 + f Lcom/mojang/serialization/MapCodec; CODEC a field_35752 + f I chance c field_35753 + m (I)Lnet/minecraft/world/level/levelgen/placement/RarityFilter; onAverageOnceEvery a method_39659 + p 0 chance + m (Lnet/minecraft/world/level/levelgen/placement/RarityFilter;)Ljava/lang/Integer; method_39660 a method_39660 + m (I)V + p 1 chance + m ()V +c net/minecraft/world/level/levelgen/placement/RepeatingPlacement ejc net/minecraft/class_5857 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)I count a method_14452 + p 1 random + p 2 pos + m (Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; method_33874 a method_33874 + m ()V +c net/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter ejd net/minecraft/class_6584 + f Lcom/mojang/serialization/MapCodec; CODEC a field_34721 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap c field_34722 + f I minInclusive d field_34723 + f I maxInclusive e field_34724 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_38456 a method_38456 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter; of a method_39661 + p 0 heightmap + p 1 minInclusive + p 2 maxInclusive + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Ljava/lang/Integer; method_38457 a method_38457 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Ljava/lang/Integer; method_38458 b method_38458 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceRelativeThresholdFilter;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_38459 c method_38459 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;II)V + p 1 heightmap + p 2 minInclusive + p 3 maxInclusive + m ()V +c net/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter eje net/minecraft/class_5934 + f Lcom/mojang/serialization/MapCodec; CODEC a field_29323 + f I maxWaterDepth c field_29324 + m (I)Lnet/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter; forMaxDepth a method_39662 + p 0 maxWaterDepth + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_34386 a method_34386 + m (Lnet/minecraft/world/level/levelgen/placement/SurfaceWaterDepthFilter;)Ljava/lang/Integer; method_34387 a method_34387 + m (I)V + p 1 maxWaterDepth + m ()V +c net/minecraft/world/level/levelgen/placement/package-info ejf net/minecraft/class_6128 +c net/minecraft/world/level/levelgen/presets/WorldPreset ejg net/minecraft/class_7145 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37725 + f Lcom/mojang/serialization/Codec; CODEC b field_37726 + f Ljava/util/Map; dimensions c field_37727 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; createWorldDimensions a method_45546 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/resources/ResourceKey;)V method_57015 a method_57015 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41586 a method_41586 + m (Lnet/minecraft/world/level/levelgen/presets/WorldPreset;)Lcom/mojang/serialization/DataResult; requireOverworld a method_44351 + p 0 preset + m ()Ljava/util/Optional; overworld b method_41584 + m (Lnet/minecraft/world/level/levelgen/presets/WorldPreset;)Ljava/util/Map; method_41588 b method_41588 + m ()Lcom/google/common/collect/ImmutableMap; dimensionsInOrder c method_57016 + m ()Ljava/lang/String; method_49538 d method_49538 + m (Ljava/util/Map;)V + p 1 dimensions + m ()V +c net/minecraft/world/level/levelgen/presets/WorldPresets ejh net/minecraft/class_5317 + f Lnet/minecraft/resources/ResourceKey; NORMAL a field_25050 + f Lnet/minecraft/resources/ResourceKey; FLAT b field_25054 + f Lnet/minecraft/resources/ResourceKey; LARGE_BIOMES c field_35756 + f Lnet/minecraft/resources/ResourceKey; AMPLIFIED d field_35757 + f Lnet/minecraft/resources/ResourceKey; SINGLE_BIOME_SURFACE e field_25056 + f Lnet/minecraft/resources/ResourceKey; DEBUG f field_25059 + m (Lnet/minecraft/world/level/dimension/LevelStem;)Ljava/util/Optional; method_45547 a method_45547 + m (Lnet/minecraft/world/level/levelgen/WorldDimensions;)Ljava/util/Optional; fromSettings a method_41594 + p 0 worldDimensions + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41597 + p 0 name + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/levelgen/WorldDimensions; createNormalWorldDimensions a method_41598 + p 0 registry + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V bootstrap a method_41593 + p 0 context + m (Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/world/level/dimension/LevelStem; getNormalOverworld b method_41599 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/levelgen/presets/WorldPresets$Bootstrap ejh$a net/minecraft/class_5317$class_7146 + f Lnet/minecraft/data/worldgen/BootstrapContext; context a field_40919 + f Lnet/minecraft/core/HolderGetter; noiseSettings b field_37732 + f Lnet/minecraft/core/HolderGetter; biomes c field_37730 + f Lnet/minecraft/core/HolderGetter; placedFeatures d field_40920 + f Lnet/minecraft/core/HolderGetter; structureSets e field_37731 + f Lnet/minecraft/core/HolderGetter; multiNoiseBiomeSourceParameterLists f field_42993 + f Lnet/minecraft/core/Holder; overworldDimensionType g field_37734 + f Lnet/minecraft/world/level/dimension/LevelStem; netherStem h field_37737 + f Lnet/minecraft/world/level/dimension/LevelStem; endStem i field_37740 + m ()V bootstrap a method_41600 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/dimension/LevelStem;)V registerCustomOverworldPreset a method_41604 + p 1 dimensionKey + p 2 levelStem + m (Lnet/minecraft/world/level/biome/BiomeSource;)V registerOverworlds a method_49257 + p 1 biomeSource + m (Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/dimension/LevelStem; makeNoiseBasedOverworld a method_41601 + p 1 biomeSource + p 2 settings + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;)Lnet/minecraft/world/level/dimension/LevelStem; makeOverworld a method_41602 + p 1 generator + m (Lnet/minecraft/world/level/dimension/LevelStem;)Lnet/minecraft/world/level/levelgen/presets/WorldPreset; createPresetWithCustomOverworld a method_41603 + p 1 overworldStem + m (Lnet/minecraft/data/worldgen/BootstrapContext;)V + p 1 context +c net/minecraft/world/level/levelgen/presets/package-info eji net/minecraft/class_7728 +c net/minecraft/world/level/levelgen/structure/BoundingBox ejj net/minecraft/class_3341 + c A simple three-dimensional mutable integer bounding box.\nNote that this box is both mutable, and has an implementation of {@code hashCode()} and {@code equals()}.\nThis can be used as {@code HashMap} keys for example, if the user can ensure the instances themselves are not modified. + f Lcom/mojang/serialization/Codec; CODEC a field_29325 + f Lorg/slf4j/Logger; LOGGER b field_31548 + f I minX c field_14380 + f I minY d field_14379 + f I minZ e field_14378 + f I maxX f field_14377 + f I maxY g field_14376 + f I maxZ h field_14381 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; infinite a method_14665 + m (I)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; inflatedBy a method_35410 + c Expands this box by a fixed {@code value} in all directions. + p 1 value + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; move a method_14661 + c Translates this box by the given coordinates, modifying the current box. + p 1 x + p 2 y + p 3 z + m (IIII)Z intersects a method_14669 + c @return {@code true} if this bounding box intersects the horizontal x/z region described by the min and max parameters. + p 1 minX + p 2 minZ + p 3 maxX + p 4 maxZ + m (IIIIIIIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; orientBox a method_14667 + c Create a bounding box with the specified dimensions and rotate it. Used to project a possible new component Bounding Box - to check if it would cut anything already spawned. + p 0 structureMinX + p 1 structureMinY + p 2 structureMinZ + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + p 9 facing + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z intersects a method_14657 + c @return {@code true} if {@code box} intersects this box. + p 1 box + m (Ljava/lang/Iterable;)Ljava/util/Optional; encapsulatingPositions a method_35411 + p 0 positions + m (Ljava/util/function/Consumer;)V forAllCorners a method_34391 + p 1 pos + m (Ljava/util/stream/IntStream;)Lcom/mojang/serialization/DataResult; method_34392 a method_34392 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; encapsulate a method_34389 + c Expands this box to be at least large enough to contain {@code pos}. + p 1 pos + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; move a method_29299 + c Translates this box by the given vector, modifying the current box. + p 1 vector + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; fromCorners a method_34390 + p 0 first + p 1 second + m ([I)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; method_34393 a method_34393 + m ()Ljava/util/stream/Stream; intersectingChunks b method_54883 + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; moved b method_19311 + c @return A new bounding box equal to this box, translated by the given coordinates. + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; encapsulate b method_35412 + c Expands this box to be at least large enough to contain {@code box}. + p 1 box + m (Ljava/lang/Iterable;)Ljava/util/Optional; encapsulatingBoxes b method_35413 + p 0 boxes + m (Lnet/minecraft/core/Vec3i;)Z isInside b method_14662 + c @return {@code true} if the bounding box contains the {@code vector}. + p 1 vector + m ()Lnet/minecraft/core/Vec3i; getLength c method_14659 + c Returns a vector describing the dimensions of this bounding box.\nNote that unlike {@code getXSpan()}, {@code getYSpan()}, and {@code getZSpan()}, the length is interpreted here as the difference in coordinates. So a box over a 1x1x1 area, which still contains a single point, will report length zero. + m (III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; inflatedBy c method_59718 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Ljava/util/stream/IntStream; method_34394 c method_34394 + m ()I getXSpan d method_35414 + c @return The length of this bounding box along the x-axis. + m (III)Z isInside d method_47593 + p 1 x + p 2 y + p 3 z + m ()I getYSpan e method_14660 + c @return The length of this bounding box along the y-axis. + m ()I getZSpan f method_14663 + c @return The length of this bounding box along the z-axis. + m ()Lnet/minecraft/core/BlockPos; getCenter g method_22874 + c @return The center of this bounding box. Note in even-sized dimensions the center position will be offset in the positive direction. + m ()I minX h method_35415 + m ()I minY i method_35416 + m ()I minZ j method_35417 + m ()I maxX k method_35418 + m ()I maxY l method_35419 + m ()I maxZ m method_35420 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (IIIIII)V + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m ()V +c net/minecraft/world/level/levelgen/structure/BoundingBox$1 ejj$1 net/minecraft/class_3341$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14382 + m ()V +c net/minecraft/world/level/levelgen/structure/BuiltinStructureSets ejk net/minecraft/class_7057 + f Lnet/minecraft/resources/ResourceKey; VILLAGES a field_37146 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMIDS b field_37147 + f Lnet/minecraft/resources/ResourceKey; IGLOOS c field_37148 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLES d field_37149 + f Lnet/minecraft/resources/ResourceKey; SWAMP_HUTS e field_37150 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOSTS f field_37151 + f Lnet/minecraft/resources/ResourceKey; OCEAN_MONUMENTS g field_37152 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSIONS h field_37153 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURES i field_37154 + f Lnet/minecraft/resources/ResourceKey; MINESHAFTS j field_37155 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTALS k field_37156 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECKS l field_37157 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUINS m field_37158 + f Lnet/minecraft/resources/ResourceKey; NETHER_COMPLEXES n field_37159 + f Lnet/minecraft/resources/ResourceKey; NETHER_FOSSILS o field_37160 + f Lnet/minecraft/resources/ResourceKey; END_CITIES p field_37161 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITIES q field_38427 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLDS r field_37162 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS s field_43325 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS t field_47410 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_41141 + p 0 name + m ()V +c net/minecraft/world/level/levelgen/structure/BuiltinStructures ejl net/minecraft/class_7058 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_JUNGLE A field_37163 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_SWAMP B field_37164 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_MOUNTAIN C field_37165 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_OCEAN D field_37166 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_NETHER E field_37167 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY F field_38428 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS G field_43326 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS H field_47411 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOST a field_37168 + f Lnet/minecraft/resources/ResourceKey; MINESHAFT b field_37169 + f Lnet/minecraft/resources/ResourceKey; MINESHAFT_MESA c field_37170 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSION d field_37171 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE e field_37172 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID f field_37173 + f Lnet/minecraft/resources/ResourceKey; IGLOO g field_37174 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK h field_37175 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_BEACHED i field_37176 + f Lnet/minecraft/resources/ResourceKey; SWAMP_HUT j field_37177 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD k field_37178 + f Lnet/minecraft/resources/ResourceKey; OCEAN_MONUMENT l field_37179 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_COLD m field_37180 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_WARM n field_37181 + f Lnet/minecraft/resources/ResourceKey; FORTRESS o field_37182 + f Lnet/minecraft/resources/ResourceKey; NETHER_FOSSIL p field_37183 + f Lnet/minecraft/resources/ResourceKey; END_CITY q field_37184 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURE r field_37185 + f Lnet/minecraft/resources/ResourceKey; BASTION_REMNANT s field_37186 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_PLAINS t field_37187 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_DESERT u field_37188 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SAVANNA v field_37189 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SNOWY w field_37190 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TAIGA x field_37191 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_STANDARD y field_37192 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL_DESERT z field_37193 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; createKey a method_41142 + p 0 name + m ()V +c net/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler ejm net/minecraft/class_3360 + f Ljava/util/Map; CURRENT_TO_LEGACY_MAP a field_14435 + f Ljava/util/Map; LEGACY_TO_CURRENT_MAP b field_14436 + f Ljava/util/Set; OLD_STRUCTURE_REGISTRY_KEYS c field_37194 + f Z hasLegacyData d field_14434 + f Ljava/util/Map; dataMap e field_14432 + f Ljava/util/Map; indexMap f field_14433 + f Ljava/util/List; legacyKeys g field_17658 + f Ljava/util/List; currentKeys h field_17659 + m (II)Z isUnhandledStructureStart a method_14737 + p 1 chunkX + p 2 chunkZ + m (IILjava/lang/String;)Z hasLegacyStart a method_14738 + p 1 chunkX + p 2 chunkZ + p 3 key + m (J)V removeIndex a method_14744 + p 1 packedChunkPos + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/DimensionDataStorage;)Lnet/minecraft/world/level/levelgen/structure/LegacyStructureDataHandler; getLegacyStructureHandler a method_14745 + p 0 level + p 1 storage + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V populateCaches a method_14734 + p 1 storage + m (Ljava/lang/String;)Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; method_14736 a method_14736 + m (Ljava/util/HashMap;)V method_14742 a method_14742 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; updateFromLegacy a method_14735 + p 1 tag + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; updateStructureStart a method_14741 + p 1 tag + p 2 chunkPos + m (Ljava/util/HashMap;)V method_14739 b method_14739 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;Ljava/util/List;Ljava/util/List;)V + p 1 storage + p 2 legacyKeys + p 3 currentKeys + m ()V +c net/minecraft/world/level/levelgen/structure/PoolElementStructurePiece ejn net/minecraft/class_3790 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; element a field_16693 + f Lnet/minecraft/core/BlockPos; position b field_16695 + f Lnet/minecraft/world/level/block/Rotation; rotation c field_16694 + f Lorg/slf4j/Logger; LOGGER d field_24991 + f I groundLevelDelta h field_16692 + f Ljava/util/List; junctions i field_16696 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager j field_17660 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings k field_52228 + m (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/nbt/Tag;)V method_16649 a method_16649 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/BlockPos;Z)V place a method_27236 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 pos + p 7 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/structure/pools/JigsawJunction;)V addJunction a method_16647 + p 1 junction + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_35448 a method_35448 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28949 a method_28949 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; getElement b method_16644 + m ()Lnet/minecraft/core/BlockPos; getPosition c method_16648 + m ()I getGroundLevelDelta d method_16646 + m ()Ljava/util/List; getJunctions e method_16645 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V + p 1 structureTemplateManager + p 2 element + p 3 position + p 4 groundLevelDelta + p 5 rotation + p 6 boundingBox + p 7 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;)V + p 1 context + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/PostPlacementProcessor ejo net/minecraft/class_6621 + f Lnet/minecraft/world/level/levelgen/structure/PostPlacementProcessor; NONE a field_34938 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V method_38701 a method_38701 + m ()V +c net/minecraft/world/level/levelgen/structure/ScatteredFeaturePiece ejp net/minecraft/class_3418 + f I width a field_15244 + f I height b field_15243 + f I depth c field_15242 + f I heightPosition d field_15241 + m (Lnet/minecraft/world/level/LevelAccessor;I)Z updateHeightPositionToLowestGroundHeight a method_38462 + p 1 level + p 2 height + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;I)Z updateAverageGroundHeight a method_14839 + p 1 level + p 2 bounds + p 3 height + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;IIIIIILnet/minecraft/core/Direction;)V + p 1 type + p 2 x + p 3 y + p 4 z + p 5 width + p 6 height + p 7 depth + p 8 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/SinglePieceStructure ejq net/minecraft/class_7147 + f Lnet/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor; constructor d field_37741 + f I width e field_37742 + f I depth f field_37743 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41605 a method_41605 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_41606 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor;IILnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 constructor + p 2 width + p 3 depth + p 4 settings +c net/minecraft/world/level/levelgen/structure/SinglePieceStructure$PieceConstructor ejq$a net/minecraft/class_7147$class_7148 +c net/minecraft/world/level/levelgen/structure/Structure ejr net/minecraft/class_3195 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37744 + f Lcom/mojang/serialization/Codec; CODEC b field_37745 + f Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; settings c field_38429 + m ()Lnet/minecraft/core/HolderSet; biomes a method_41607 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/serialization/codecs/RecordCodecBuilder; settingsCodec a method_42697 + p 0 instance + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V afterPlace a method_38694 + p 1 level + p 2 structureManager + p 3 chunkGenerator + p 4 random + p 5 boundingBox + p 6 chunkPos + p 7 pieces + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; adjustBoundingBox a method_41609 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Ljava/util/Optional; findGenerationPoint a method_38676 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;II)I getLowestY a method_41610 + p 0 context + p 1 maxX + p 2 maxZ + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)I getMeanFirstOccupiedHeight a method_59863 + p 0 context + p 1 minX + p 2 maxX + p 3 minZ + p 4 maxZ + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getLowestYIn5by5BoxOffset7Blocks a method_42382 + p 1 context + p 2 rotation + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/Heightmap$Types;Ljava/util/function/Consumer;)Ljava/util/Optional; onTopOfChunkCenter a method_41612 + p 0 context + p 1 heightmapTypes + p 2 generator + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationStub;)Z method_47931 a method_47931 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationStub;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Z isValidBiome a method_41613 + p 0 stub + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; method_42698 a method_42698 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; simpleCodec a method_42699 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42700 a method_42700 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)Lnet/minecraft/world/level/levelgen/structure/StructureStart; generate a method_41614 + p 1 registryAccess + p 2 chunkGenerator + p 3 biomeSource + p 4 randomState + p 5 structureTemplateManager + p 6 seed + p 8 chunkPos + p 9 references + p 10 heightAccessor + p 11 validBiome + m ()Ljava/util/Map; spawnOverrides b method_41615 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)Ljava/util/Optional; findValidGenerationPoint b method_47932 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)I getLowestY b method_42381 + p 0 context + p 1 minX + p 2 minZ + p 3 maxX + p 4 maxZ + m ()Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c method_41616 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;IIII)[I getCornerHeights c method_41611 + p 0 context + p 1 minX + p 2 maxX + p 3 minZ + p 4 maxZ + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation d method_42701 + m ()Lnet/minecraft/world/level/levelgen/structure/StructureType; type e method_41618 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/Structure$GenerationContext ejr$a net/minecraft/class_3195$class_7149 + f Lnet/minecraft/core/RegistryAccess; registryAccess a comp_561 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_562 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c comp_563 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState d comp_564 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e comp_565 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_566 + f J seed g comp_567 + f Lnet/minecraft/world/level/ChunkPos; chunkPos h comp_568 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i comp_569 + f Ljava/util/function/Predicate; validBiome j comp_570 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess a comp_561 + m (JLnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/level/levelgen/WorldgenRandom; makeRandom a method_41619 + p 0 seed + p 2 chunkPos + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_562 + m ()Lnet/minecraft/world/level/biome/BiomeSource; biomeSource c comp_563 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState d comp_564 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e comp_565 + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_566 + m ()J seed g comp_567 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos h comp_568 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i comp_569 + m ()Ljava/util/function/Predicate; validBiome j comp_570 + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)V + p 1 registryAccess + p 2 chunkGenerator + p 3 biomeSource + p 4 randomState + p 5 structureTemplateManager + p 6 seed + p 8 chunkPos + p 9 heightAccessor + p 10 validBiome + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;)V +c net/minecraft/world/level/levelgen/structure/Structure$GenerationStub ejr$b net/minecraft/class_3195$class_7150 + f Lnet/minecraft/core/BlockPos; position a comp_571 + f Lcom/mojang/datafixers/util/Either; generator b comp_572 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; getPiecesBuilder a method_44019 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; method_44020 a method_44020 + m (Ljava/util/function/Consumer;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder; method_44021 a method_44021 + m ()Lnet/minecraft/core/BlockPos; position b comp_571 + m ()Lcom/mojang/datafixers/util/Either; generator c comp_572 + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V + p 1 position + p 2 generator + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/datafixers/util/Either;)V +c net/minecraft/world/level/levelgen/structure/Structure$StructureSettings ejr$c net/minecraft/class_3195$class_7302 + f Lcom/mojang/serialization/MapCodec; CODEC a field_38430 + f Lnet/minecraft/core/HolderSet; biomes b comp_686 + f Ljava/util/Map; spawnOverrides c comp_687 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step d comp_688 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation e comp_689 + f Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; DEFAULT f field_52229 + m ()Lnet/minecraft/core/HolderSet; biomes a comp_686 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42702 a method_42702 + m ()Ljava/util/Map; spawnOverrides b comp_687 + m ()Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c comp_688 + m ()Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaptation d comp_689 + m (Lnet/minecraft/core/HolderSet;)V + p 1 biomes + m (Lnet/minecraft/core/HolderSet;Ljava/util/Map;Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;)V + m ()V +c net/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder ejr$c$a net/minecraft/class_3195$class_7302$class_9821 + f Lnet/minecraft/core/HolderSet; biomes a field_52230 + f Ljava/util/Map; spawnOverrides b field_52231 + f Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration; step c field_52232 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; terrainAdaption d field_52233 + m ()Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings; build a method_61008 + m (Lnet/minecraft/world/level/levelgen/GenerationStep$Decoration;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; generationStep a method_61009 + p 1 generationStep + m (Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; terrainAdapation a method_61010 + p 1 terrainAdaptation + m (Ljava/util/Map;)Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings$Builder; spawnOverrides a method_61011 + p 1 spawnOverrides + m (Lnet/minecraft/core/HolderSet;)V + p 1 biomes +c net/minecraft/world/level/levelgen/structure/StructureCheck ejs net/minecraft/class_6832 + f Lorg/slf4j/Logger; LOGGER a field_36225 + f I NO_STRUCTURE b field_36226 + f Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess; storageAccess c field_36227 + f Lnet/minecraft/core/RegistryAccess; registryAccess d field_36228 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager e field_36230 + f Lnet/minecraft/resources/ResourceKey; dimension f field_36231 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator g field_36232 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState h field_37750 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor i field_36233 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource j field_36234 + f J seed k field_36235 + f Lcom/mojang/datafixers/DataFixer; fixerUpper l field_36236 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; loadedChunks m field_36237 + f Ljava/util/Map; featureChecks n field_36238 + m (JLit/unimi/dsi/fastutil/longs/Long2BooleanMap;)V method_39827 a method_39827 + m (JLit/unimi/dsi/fastutil/objects/Object2IntMap;)V storeFullResults a method_39828 + p 1 chunkPos + p 3 structureChunks + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)V incrementReference a method_39830 + p 1 pos + p 2 structure + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;J)Z method_41143 a method_41143 + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStart a method_39831 + p 1 chunkPos + p 2 structure + p 3 placement + p 4 skipKnownStructures + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;ZJ)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; tryLoadFromStorage a method_39832 + p 1 chunkPos + p 2 structure + p 3 skipKnownStructures + p 4 packedChunkPos + m (Lnet/minecraft/world/level/ChunkPos;Ljava/util/Map;)V onStructureLoad a method_39833 + p 1 chunkPos + p 2 chunkStarts + m (Lnet/minecraft/world/level/levelgen/structure/Structure;)Lit/unimi/dsi/fastutil/longs/Long2BooleanMap; method_39834 a method_39834 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Ljava/lang/Integer;)Ljava/lang/Integer; method_39836 a method_39836 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Ljava/lang/Long;Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; method_39837 a method_39837 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; deduplicateEmptyMap a method_39838 + p 0 map + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/levelgen/structure/StructureStart;)V method_39839 a method_39839 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/level/levelgen/structure/Structure;Z)Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; checkStructureInfo a method_39840 + p 1 structureChunks + p 2 structure + p 3 skipKnownStructures + m (Lnet/minecraft/nbt/CompoundTag;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; loadStructures a method_39842 + p 1 tag + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/structure/Structure;)Z canCreateStructure b method_39829 + p 1 chunkPos + p 2 structure + m (Lnet/minecraft/world/level/chunk/storage/ChunkScanAccess;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/biome/BiomeSource;JLcom/mojang/datafixers/DataFixer;)V + p 1 storageAccess + p 2 registryAccess + p 3 structureTemplateManager + p 4 dimension + p 5 chunkGenerator + p 6 randomState + p 7 heightAccessor + p 8 biomeSource + p 9 seed + p 11 fixerUpper + m ()V +c net/minecraft/world/level/levelgen/structure/StructureCheckResult ejt net/minecraft/class_6833 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; START_PRESENT a field_36239 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; START_NOT_PRESENT b field_36240 + f Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; CHUNK_LOAD_NEEDED c field_36241 + f [Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; $VALUES d field_36242 + m ()[Lnet/minecraft/world/level/levelgen/structure/StructureCheckResult; $values a method_39843 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureFeatureIndexSavedData eju net/minecraft/class_3440 + f Ljava/lang/String; TAG_REMAINING_INDEXES a field_31660 + f Ljava/lang/String; TAG_All_INDEXES b field_31661 + f Lit/unimi/dsi/fastutil/longs/LongSet; all c field_15301 + f Lit/unimi/dsi/fastutil/longs/LongSet; remaining d field_15302 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52601 + m (J)V addIndex a method_14896 + p 1 index + m ()Lit/unimi/dsi/fastutil/longs/LongSet; getAll b method_14898 + m (J)Z hasStartIndex b method_14897 + p 1 index + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/levelgen/structure/StructureFeatureIndexSavedData; load b method_32358 + p 0 tag + p 1 registries + m (J)Z hasUnhandledIndex c method_14894 + p 1 index + m (J)V removeIndex d method_14895 + p 1 index + m (Lit/unimi/dsi/fastutil/longs/LongSet;Lit/unimi/dsi/fastutil/longs/LongSet;)V + p 1 all + p 2 remaining + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece ejv net/minecraft/class_3443 + f Lorg/slf4j/Logger; LOGGER a field_29327 + f Lnet/minecraft/core/Direction; orientation b field_15312 + f Lnet/minecraft/world/level/block/Mirror; mirror c field_15310 + f Lnet/minecraft/world/level/block/Rotation; rotation d field_15313 + f Lnet/minecraft/world/level/block/state/BlockState; CAVE_AIR e field_15314 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox f field_15315 + f I genDepth g field_15316 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; type h field_16712 + f Ljava/util/Set; SHAPE_CHECK_BLOCKS i field_15311 + m ()Lnet/minecraft/world/level/block/Rotation; getRotation a method_16888 + m (I)V setGenDepth a method_41620 + p 1 genDepth + m (II)I getWorldX a method_14928 + p 1 x + p 2 z + m (III)V move a method_14922 + p 1 x + p 2 y + p 3 z + m (IIILnet/minecraft/core/Direction;III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; makeBoundingBox a method_35454 + p 0 x + p 1 y + p 2 z + p 3 direction + p 4 offsetX + p 5 offsetY + p 6 offsetZ + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/core/Direction; getRandomHorizontalDirection a method_35457 + p 0 random + m (Lnet/minecraft/world/level/BlockGetter;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/block/state/BlockState; getBlock a method_14929 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; reorient a method_14916 + p 0 level + p 1 pos + p 2 state + m (Lnet/minecraft/world/level/ChunkPos;I)Z isCloseToChunk a method_16654 + p 1 chunkPos + p 2 distance + m (Lnet/minecraft/world/level/LevelReader;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z canBeReplaced a method_33780 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockState;)Z createChest a method_14921 + p 1 level + p 2 box + p 3 random + p 4 pos + p 5 lootTable + p 6 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/core/BlockPos;)V postProcess a method_14931 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 chunkPos + p 7 pos + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V placeBlock a method_14917 + p 1 level + p 2 blockstate + p 3 x + p 4 y + p 5 z + p 6 boundingbox + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIII)V generateAirBox a method_14942 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V generateBox a method_14940 + c Fill the given area with the selected blocks + p 1 level + p 2 box + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + p 9 boundaryBlockState + p 10 insideBlockState + p 11 existingOnly + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;Z)V generateUpperHalfSphere a method_14919 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 state + p 10 excludeAir + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIIZLnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector;)V generateBox a method_14938 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 alwaysReplace + p 10 random + p 11 blockSelector + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIIIIIILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;ZZ)V generateMaybeBox a method_14933 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x1 + p 6 y1 + p 7 z1 + p 8 x2 + p 9 y2 + p 10 z2 + p 11 edgeState + p 12 state + p 13 requireNonAir + p 14 requireSkylight + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIIILnet/minecraft/world/level/block/state/BlockState;)V maybeGenerateBlock a method_14945 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x + p 6 y + p 7 z + p 8 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/resources/ResourceKey;)Z createChest a method_14915 + p 1 level + p 2 box + p 3 random + p 4 x + p 5 y + p 6 z + p 7 lootTable + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;Lnet/minecraft/resources/ResourceKey;)Z createDispenser a method_14930 + p 1 level + p 2 box + p 3 random + p 4 x + p 5 y + p 6 z + p 7 facing + p 8 lootTable + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Z)V generateBox a method_35455 + p 1 level + p 2 boundingBox + p 3 box + p 4 boundaryBlockState + p 5 insideBlockState + p 6 existingOnly + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;ZLnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector;)V generateBox a method_35456 + p 1 level + p 2 boundingBox + p 3 box + p 4 alwaysReplace + p 5 random + p 6 blockSelector + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isReplaceableByStructures a method_33881 + p 1 state + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;)V addChildren a method_14918 + p 1 piece + p 2 pieces + p 3 random + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/nbt/CompoundTag; createTag a method_14946 + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;)V addAdditionalSaveData a method_14943 + p 1 context + p 2 tag + m (Ljava/lang/String;)Ljava/lang/IllegalArgumentException; method_35459 a method_35459 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; findCollisionPiece a method_38702 + p 0 pieces + p 1 boundingBox + m (Ljava/util/stream/Stream;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; createBoundingBox a method_38703 + p 0 pieces + m (Lnet/minecraft/core/Direction;)V setOrientation a method_14926 + p 1 orientation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_34398 a method_34398 + m ()Ljava/lang/IllegalStateException; method_38704 b method_38704 + m (I)I getWorldY b method_14924 + p 1 y + m (II)I getWorldZ b method_14941 + p 1 x + p 2 z + m (III)Lnet/minecraft/core/BlockPos$MutableBlockPos; getWorldPos b method_33781 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/LevelReader;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isInterior b method_14939 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V fillColumnDown b method_14936 + p 1 level + p 2 state + p 3 x + p 4 y + p 5 z + p 6 box + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox f method_14935 + m ()I getGenDepth g method_14923 + m ()Lnet/minecraft/core/BlockPos; getLocatorPosition h method_35458 + m ()Lnet/minecraft/core/Direction; getOrientation i method_14934 + m ()Lnet/minecraft/world/level/block/Mirror; getMirror j method_35460 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; getType k method_16653 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece$1 ejv$1 net/minecraft/class_3443$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15318 + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePiece$BlockSelector ejv$a net/minecraft/class_3443$class_3444 + f Lnet/minecraft/world/level/block/state/BlockState; next a field_15317 + m ()Lnet/minecraft/world/level/block/state/BlockState; getNext a method_14947 + m (Lnet/minecraft/util/RandomSource;IIIZ)V next a method_14948 + p 1 random + p 2 x + p 3 y + p 4 z + p 5 wall + m ()V +c net/minecraft/world/level/levelgen/structure/StructurePieceAccessor ejw net/minecraft/class_6130 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; findCollisionPiece a method_35461 + p 1 box + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;)V addPiece a method_35462 + p 1 piece +c net/minecraft/world/level/levelgen/structure/StructureSet ejx net/minecraft/class_7059 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_37195 + f Lcom/mojang/serialization/Codec; CODEC b field_37196 + f Ljava/util/List; structures c comp_510 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement; placement d comp_511 + m ()Ljava/util/List; structures a comp_510 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41144 a method_41144 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry; entry a method_41145 + p 0 structure + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry; entry a method_41146 + p 0 structure + p 1 weight + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement; placement b comp_511 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)V + p 1 structure + p 2 placement + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement;)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSet$StructureSelectionEntry ejx$a net/minecraft/class_7059$class_7060 + f Lcom/mojang/serialization/Codec; CODEC a field_37197 + f Lnet/minecraft/core/Holder; structure b comp_512 + f I weight c comp_513 + m ()Lnet/minecraft/core/Holder; structure a comp_512 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41147 a method_41147 + m ()I weight b comp_513 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSpawnOverride ejy net/minecraft/class_7061 + f Lcom/mojang/serialization/Codec; CODEC a field_37198 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; boundingBox b comp_514 + f Lnet/minecraft/util/random/WeightedRandomList; spawns c comp_515 + m ()Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; boundingBox a comp_514 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41149 a method_41149 + m ()Lnet/minecraft/util/random/WeightedRandomList; spawns b comp_515 + m (Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType;Lnet/minecraft/util/random/WeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType ejy$a net/minecraft/class_7061$class_7062 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; PIECE a field_37199 + f Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; STRUCTURE b field_37200 + f Lcom/mojang/serialization/Codec; CODEC c field_37202 + f Ljava/lang/String; id d field_37203 + f [Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; $VALUES e field_37204 + m ()[Lnet/minecraft/world/level/levelgen/structure/StructureSpawnOverride$BoundingBoxType; $values a method_41152 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/StructureStart ejz net/minecraft/class_3449 + f Ljava/lang/String; INVALID_START_ID a field_31662 + f Lnet/minecraft/world/level/levelgen/structure/StructureStart; INVALID_START b field_16713 + f Lorg/slf4j/Logger; LOGGER c field_37751 + f Lnet/minecraft/world/level/levelgen/structure/Structure; structure d field_16714 + f Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; pieceContainer e field_34940 + f Lnet/minecraft/world/level/ChunkPos; chunkPos f field_29070 + f I references g field_15326 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; cachedBoundingBox h field_31663 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_14969 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/ChunkPos;)V placeInChunk a method_14974 + p 1 level + p 2 structureManager + p 3 generator + p 4 random + p 5 box + p 6 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/nbt/CompoundTag; createTag a method_14972 + p 1 context + p 2 chunkPos + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;Lnet/minecraft/nbt/CompoundTag;J)Lnet/minecraft/world/level/levelgen/structure/StructureStart; loadStaticStart a method_41621 + p 0 context + p 1 tag + p 2 seed + m ()Z isValid b method_16657 + m ()Lnet/minecraft/world/level/ChunkPos; getChunkPos c method_34000 + m ()Z canBeReferenced d method_14979 + m ()V addReference e method_14964 + m ()I getReferences f method_23676 + m ()I getMaxReferences g method_14970 + m ()Lnet/minecraft/world/level/levelgen/structure/Structure; getStructure h method_16656 + m ()Ljava/util/List; getPieces i method_14963 + m (Lnet/minecraft/world/level/levelgen/structure/Structure;Lnet/minecraft/world/level/ChunkPos;ILnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)V + p 1 structure + p 2 chunkPos + p 3 references + p 4 pieceContainer + m ()V +c net/minecraft/world/level/levelgen/structure/StructureType eka net/minecraft/class_7151 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; BURIED_TREASURE a field_37752 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; DESERT_PYRAMID b field_37753 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; END_CITY c field_37754 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; FORTRESS d field_37755 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; IGLOO e field_37756 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; JIGSAW f field_37757 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; JUNGLE_TEMPLE g field_37758 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; MINESHAFT h field_37759 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; NETHER_FOSSIL i field_37760 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; OCEAN_MONUMENT j field_37761 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; OCEAN_RUIN k field_37762 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; RUINED_PORTAL l field_37763 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; SHIPWRECK m field_37764 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; STRONGHOLD n field_37765 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; SWAMP_HUT o field_37766 + f Lnet/minecraft/world/level/levelgen/structure/StructureType; WOODLAND_MANSION p field_37767 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_41622 a method_41622 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/StructureType; register a method_41623 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/TemplateStructurePiece ekb net/minecraft/class_3470 + f Ljava/lang/String; templateName a field_31664 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; template b field_15433 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; placeSettings c field_15434 + f Lnet/minecraft/core/BlockPos; templatePosition d field_15432 + f Lorg/slf4j/Logger; LOGGER h field_16586 + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V handleDataMarker a method_15026 + p 1 name + p 2 pos + p 3 level + p 4 random + p 5 box + m ()Lnet/minecraft/resources/ResourceLocation; makeTemplateLocation b method_35470 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; template c method_41624 + m ()Lnet/minecraft/core/BlockPos; templatePosition d method_41625 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; placeSettings e method_41626 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)V + p 1 type + p 2 genDepth + p 3 structureTemplateManager + p 4 location + p 5 templateName + p 6 placeSettings + p 7 templatePosition + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/function/Function;)V + p 1 type + p 2 tag + p 3 structureTemplateManager + p 4 placeSettingsFactory + m ()V +c net/minecraft/world/level/levelgen/structure/TerrainAdjustment ekc net/minecraft/class_5847 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; NONE a field_28922 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BURY b field_28923 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BEARD_THIN c field_38431 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; BEARD_BOX d field_38432 + f Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; ENCAPSULATE e field_51413 + f Lcom/mojang/serialization/Codec; CODEC f field_38433 + f Ljava/lang/String; id g field_38434 + f [Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; $VALUES h field_28925 + m ()[Lnet/minecraft/world/level/levelgen/structure/TerrainAdjustment; $values a method_36756 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/package-info ekd net/minecraft/class_6131 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGenerator eke net/minecraft/class_6622 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGenerator$Context eke$a net/minecraft/class_6622$class_6623 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config a comp_305 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_125 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_126 + f Lnet/minecraft/world/level/ChunkPos; chunkPos d comp_127 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor e comp_129 + f Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_130 + f J seed g comp_131 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config a comp_305 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator b comp_125 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_126 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos d comp_127 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor e comp_129 + m ()Lnet/minecraft/world/level/levelgen/WorldgenRandom; random f comp_130 + m ()J seed g comp_131 + m (Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/WorldgenRandom;J)V +c net/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier ekf net/minecraft/class_6834 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;Lnet/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context;)Z method_39844 a method_39844 + m (Ljava/util/function/Predicate;Ljava/util/Optional;Lnet/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context;)Ljava/util/Optional; method_39845 a method_39845 +c net/minecraft/world/level/levelgen/structure/pieces/PieceGeneratorSupplier$Context ekf$a net/minecraft/class_6834$class_6835 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator a comp_306 + f Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b comp_307 + f Lnet/minecraft/world/level/levelgen/RandomState; randomState c comp_573 + f J seed d comp_308 + f Lnet/minecraft/world/level/ChunkPos; chunkPos e comp_309 + f Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f comp_310 + f Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor g comp_311 + f Ljava/util/function/Predicate; validBiome h comp_312 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager i comp_313 + f Lnet/minecraft/core/RegistryAccess; registryAccess j comp_314 + m ()Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator a comp_306 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Z validBiomeOnTop a method_39848 + p 1 heightmapType + m ()Lnet/minecraft/world/level/biome/BiomeSource; biomeSource b comp_307 + m ()Lnet/minecraft/world/level/levelgen/RandomState; randomState c comp_573 + m ()J seed d comp_308 + m ()Lnet/minecraft/world/level/ChunkPos; chunkPos e comp_309 + m ()Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration; config f comp_310 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; heightAccessor g comp_311 + m ()Ljava/util/function/Predicate; validBiome h comp_312 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager i comp_313 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess j comp_314 + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/biome/BiomeSource;Lnet/minecraft/world/level/levelgen/RandomState;JLnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/feature/configurations/FeatureConfiguration;Lnet/minecraft/world/level/LevelHeightAccessor;Ljava/util/function/Predicate;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/RegistryAccess;)V +c net/minecraft/world/level/levelgen/structure/pieces/PiecesContainer ekg net/minecraft/class_6624 + f Ljava/util/List; pieces a comp_132 + f Lorg/slf4j/Logger; LOGGER b field_34941 + f Lnet/minecraft/resources/ResourceLocation; JIGSAW_RENAME c field_34942 + f Ljava/util/Map; RENAMES d field_34943 + m ()Z isEmpty a method_38708 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/nbt/Tag; save a method_38709 + p 1 context + m (Lnet/minecraft/core/BlockPos;)Z isInsidePiece a method_38710 + p 1 pos + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext;)Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; load a method_38711 + p 0 tag + p 1 context + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; calculateBoundingBox b method_38712 + m ()Ljava/util/List; pieces c comp_132 + m (Ljava/util/List;)V + p 1 pieces + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext ekh net/minecraft/class_6625 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager a comp_133 + f Lnet/minecraft/core/RegistryAccess; registryAccess b comp_134 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_135 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager a comp_133 + m (Lnet/minecraft/server/level/ServerLevel;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceSerializationContext; fromLevel a method_38713 + p 0 level + m ()Lnet/minecraft/core/RegistryAccess; registryAccess b comp_134 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager c comp_135 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType eki net/minecraft/class_3773 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_RIGHT_TURN A field_16958 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_ROOM_CROSSING B field_16941 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STAIRS_DOWN C field_16904 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_START D field_16914 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STRAIGHT E field_16934 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_STRAIGHT_STAIRS_DOWN F field_16949 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; JUNGLE_PYRAMID_PIECE G field_16953 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_RUIN H field_16932 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; IGLOO I field_16909 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; RUINED_PORTAL J field_24010 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; SWAMPLAND_HUT K field_16918 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; DESERT_PYRAMID_PIECE L field_16933 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_BUILDING M field_16922 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_CORE_ROOM N field_16911 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_X_ROOM O field_16963 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_XY_ROOM P field_16927 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_Y_ROOM Q field_16946 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_YZ_ROOM R field_16970 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_DOUBLE_Z_ROOM S field_16925 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_ENTRY_ROOM T field_16905 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_PENTHOUSE U field_16966 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_SIMPLE_ROOM V field_16928 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_SIMPLE_TOP_ROOM W field_16944 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; OCEAN_MONUMENT_WING_ROOM X field_16957 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; END_CITY_PIECE Y field_16936 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; WOODLAND_MANSION_PIECE Z field_16907 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_CORRIDOR a field_16969 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; BURIED_TREASURE_PIECE aa field_16960 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; SHIPWRECK_PIECE ab field_16935 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FOSSIL ac field_22195 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; JIGSAW ad field_25840 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_CROSSING b field_16919 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_ROOM c field_16915 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; MINE_SHAFT_STAIRS d field_16968 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_CROSSING e field_16926 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_END_FILLER f field_16903 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_BRIDGE_STRAIGHT g field_16917 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_CORRIDOR_STAIRS h field_16930 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_CORRIDOR_T_BALCONY i field_16943 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_ENTRANCE j field_16952 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_CROSSING k field_16929 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_LEFT_TURN l field_16962 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR m field_16921 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_SMALL_CORRIDOR_RIGHT_TURN n field_16945 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_CASTLE_STALK_ROOM o field_16961 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_MONSTER_THRONE p field_16931 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_ROOM_CROSSING q field_16908 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_STAIRS_ROOM r field_16967 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; NETHER_FORTRESS_START s field_16924 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_CHEST_CORRIDOR t field_16955 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_FILLER_CORRIDOR u field_16965 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_FIVE_CROSSING v field_16937 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_LEFT_TURN w field_16906 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_LIBRARY x field_16959 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_PORTAL_ROOM y field_16939 + f Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; STRONGHOLD_PRISON_HALL z field_16948 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$ContextlessType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setPieceId a method_16813 + p 0 type + p 1 key + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$StructureTemplateType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setTemplatePieceId a method_38691 + p 0 templateType + p 1 pieceId + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType; setFullContextPieceId a method_38692 + p 0 pieceType + p 1 pieceId + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$ContextlessType eki$a net/minecraft/class_3773$class_6615 +c net/minecraft/world/level/levelgen/structure/pieces/StructurePieceType$StructureTemplateType eki$b net/minecraft/class_3773$class_6616 +c net/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder ekj net/minecraft/class_6626 + f Ljava/util/List; pieces a field_34944 + m ()Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; build a method_38714 + m (I)V offsetPiecesVertically a method_38715 + p 1 offset + m (IILnet/minecraft/util/RandomSource;I)I moveBelowSeaLevel a method_38716 + p 1 seaLevel + p 2 minY + p 3 random + p 4 amount + m (Lnet/minecraft/util/RandomSource;II)V moveInsideHeights a method_38718 + p 1 random + p 2 minY + p 3 maxY + m ()V clear b method_38719 + m ()Z isEmpty c method_38720 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox d method_38721 + m ()V +c net/minecraft/world/level/levelgen/structure/pieces/package-info ekk net/minecraft/class_6627 +c net/minecraft/world/level/levelgen/structure/placement/ConcentricRingsStructurePlacement ekl net/minecraft/class_6871 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36419 + f I distance c field_37768 + f I spread d field_37769 + f I count e field_37770 + f Lnet/minecraft/core/HolderSet; preferredBiomes f field_37771 + m ()I distance a method_41627 + m ()I spread b method_41628 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P9; codec b method_41629 + p 0 instance + m ()I count c method_41630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40167 c method_40167 + m ()Lnet/minecraft/core/HolderSet; preferredBiomes d method_41631 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;IIILnet/minecraft/core/HolderSet;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 6 distance + p 7 spread + p 8 count + p 9 preferredBiomes + m (IIILnet/minecraft/core/HolderSet;)V + p 1 distance + p 2 spread + p 3 count + p 4 preferrredBiomes + m ()V +c net/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement ekm net/minecraft/class_6872 + f Lcom/mojang/serialization/MapCodec; CODEC a field_36420 + f I spacing c field_37772 + f I separation d field_37773 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; spreadType e field_37774 + m ()I spacing a method_41632 + m (JII)Lnet/minecraft/world/level/ChunkPos; getPotentialStructureChunk a method_40169 + p 1 seed + p 3 regionX + p 4 regionZ + m (Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadStructurePlacement;)Lcom/mojang/serialization/DataResult; validate a method_51720 + p 0 placement + m ()I separation b method_41633 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40170 b method_40170 + m ()Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; spreadType c method_41634 + m ()Ljava/lang/String; method_51721 d method_51721 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;IILnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + p 6 spacing + p 7 separation + p 8 spreadType + m (IILnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType;I)V + p 1 spacing + p 2 separation + p 3 spreadType + p 4 salt + m ()V +c net/minecraft/world/level/levelgen/structure/placement/RandomSpreadType ekn net/minecraft/class_6873 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; LINEAR a field_36421 + f Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; TRIANGULAR b field_36422 + f Lcom/mojang/serialization/Codec; CODEC c field_36423 + f Ljava/lang/String; id d field_36425 + f [Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; $VALUES e field_36426 + m ()[Lnet/minecraft/world/level/levelgen/structure/placement/RandomSpreadType; $values a method_40175 + m (Lnet/minecraft/util/RandomSource;I)I evaluate a method_40173 + p 1 random + p 2 bound + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement eko net/minecraft/class_6874 + f I HIGHLY_ARBITRARY_RANDOM_SALT a field_37775 + f Lcom/mojang/serialization/Codec; CODEC b field_36428 + f Lnet/minecraft/core/Vec3i; locateOffset c field_37776 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; frequencyReductionMethod d field_37777 + f F frequency e field_37778 + f I salt f field_37779 + f Ljava/util/Optional; exclusionZone g field_37780 + m (IIJ)Z applyAdditionalChunkRestrictions a method_56575 + p 1 regionX + p 2 regionZ + p 3 levelSeed + m (JIIIF)Z probabilityReducer a method_41635 + p 0 levelSeed + p 2 regionX + p 3 regionZ + p 4 salt + p 5 probability + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P5; placementCodec a method_41637 + p 0 instance + m (Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/core/BlockPos; getLocatePos a method_41636 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isPlacementChunk a method_40168 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyProbabilityReducerWithDouble b method_41638 + p 0 baseSeed + p 2 salt + p 3 chunkX + p 4 chunkZ + p 5 probability + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isStructureChunk b method_41639 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyArbitrarySaltProbabilityReducer c method_41640 + p 0 levelSeed + p 2 salt + p 3 regionX + p 4 regionZ + p 5 probability + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z applyInteractionsWithOtherStructures c method_56576 + p 1 structureState + p 2 x + p 3 z + m (JIIIF)Z legacyPillagerOutpostReducer d method_41641 + p 0 levelSeed + p 2 salt + p 3 regionX + p 4 regionZ + p 5 probability + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; type e method_40166 + m ()Lnet/minecraft/core/Vec3i; locateOffset f method_41642 + m ()Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; frequencyReductionMethod g method_41643 + m ()F frequency h method_41644 + m ()I salt i method_41645 + m ()Ljava/util/Optional; exclusionZone j method_41646 + m (Lnet/minecraft/core/Vec3i;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod;FILjava/util/Optional;)V + p 1 locateOffset + p 2 frequencyReductionMethod + p 3 frequency + p 4 salt + p 5 exclusionZone + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$ExclusionZone eko$a net/minecraft/class_6874$class_7152 + f Lcom/mojang/serialization/Codec; CODEC a field_37781 + f Lnet/minecraft/core/Holder; otherSet b comp_574 + f I chunkCount c comp_575 + m ()Lnet/minecraft/core/Holder; otherSet a comp_574 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41647 a method_41647 + m (Lnet/minecraft/world/level/chunk/ChunkGeneratorStructureState;II)Z isPlacementForbidden a method_41648 + p 1 structureState + p 2 x + p 3 z + m ()I chunkCount b comp_575 + m (Lnet/minecraft/core/Holder;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer eko$b net/minecraft/class_6874$class_7153 +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod eko$c net/minecraft/class_6874$class_7154 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; DEFAULT a field_37782 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_1 b field_37783 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_2 c field_37784 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; LEGACY_TYPE_3 d field_37785 + f Lcom/mojang/serialization/Codec; CODEC e field_37786 + f Ljava/lang/String; name f field_37787 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer; reducer g field_37788 + f [Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; $VALUES h field_37789 + m ()[Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReductionMethod; $values a method_41649 + m (JIIIF)Z shouldGenerate a method_41650 + p 1 levelSeed + p 3 salt + p 4 regionX + p 5 regionZ + p 6 probability + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacement$FrequencyReducer;)V + p 3 name + p 4 reducer + m ()V +c net/minecraft/world/level/levelgen/structure/placement/StructurePlacementType ekp net/minecraft/class_6875 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; RANDOM_SPREAD a field_36429 + f Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; CONCENTRIC_RINGS b field_36430 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_40176 a method_40176 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/placement/StructurePlacementType; register a method_40177 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/placement/package-info ekq net/minecraft/class_6876 +c net/minecraft/world/level/levelgen/structure/pools/DimensionPadding ekr net/minecraft/class_9778 + f Lcom/mojang/serialization/Codec; CODEC a field_51952 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; ZERO b field_51953 + f I bottom c comp_2818 + f I top d comp_2819 + f Lcom/mojang/serialization/Codec; RECORD_CODEC e field_51954 + m ()Z hasEqualTopAndBottom a method_60629 + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; method_60630 a method_60630 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60631 a method_60631 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Lcom/mojang/datafixers/util/Either; method_60632 a method_60632 + m ()I bottom b comp_2818 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Ljava/lang/Integer; method_60633 b method_60633 + m ()I top c comp_2819 + m (Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;)Ljava/lang/Integer; method_60634 c method_60634 + m (I)V + p 1 padding + m (II)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement eks net/minecraft/class_3777 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24947 + f Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; INSTANCE b field_16663 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; method_28870 b method_28870 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement ekt net/minecraft/class_3776 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24948 + f Lnet/minecraft/core/Holder; feature b field_16661 + f Lnet/minecraft/nbt/CompoundTag; defaultJigsawNBT c field_16662 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28871 a method_28871 + m (Lnet/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement;)Lnet/minecraft/core/Holder; method_28872 a method_28872 + m ()Lnet/minecraft/nbt/CompoundTag; fillDefaultJigsawNBT b method_19299 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 feature + p 2 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/JigsawJunction eku net/minecraft/class_3780 + f I sourceX a field_16670 + f I sourceGroundY b field_16669 + f I sourceZ c field_16668 + f I deltaY d field_16667 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; destProjection e field_16671 + m ()I getSourceX a method_16610 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/levelgen/structure/pools/JigsawJunction; deserialize a method_28873 + p 0 dynamic + m (Lcom/mojang/serialization/DynamicOps;)Lcom/mojang/serialization/Dynamic; serialize a method_16612 + p 1 ops + m ()I getSourceGroundY b method_16611 + m ()I getSourceZ c method_16609 + m ()I getDeltaY d method_35367 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; getDestProjection e method_35368 + m (IIIILnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 sourceX + p 2 sourceGroundY + p 3 sourceZ + p 4 deltaY + p 5 destProjection +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement ekv net/minecraft/class_3778 + f Lorg/slf4j/Logger; LOGGER a field_16665 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_45548 a method_45548 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/Holder;Lnet/minecraft/resources/ResourceLocation;ILnet/minecraft/core/BlockPos;Z)Z generateJigsaw a method_43729 + p 0 level + p 1 startPool + p 2 startJigsawName + p 3 maxDepth + p 4 pos + p 5 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/RandomState;IZLnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Ljava/util/List;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V addPieces a method_27230 + p 0 randomState + p 1 maxDepth + p 2 useExpansionHack + p 3 chunkGenerator + p 4 structureTemplateManager + p 5 level + p 6 random + p 7 pools + p 8 startPiece + p 9 pieces + p 10 free + p 11 aliasLookup + p 12 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;IIIILnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;ZLnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_39824 a method_39824 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/Holder;Ljava/util/Optional;ILnet/minecraft/core/BlockPos;ZLjava/util/Optional;ILnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/Optional; addPieces a method_30419 + p 0 context + p 1 startPool + p 2 startJigsawName + p 3 maxDepth + p 4 pos + p 5 useExpansionHack + p 6 projectStartToHeightmap + p 7 maxDistanceFromCenter + p 8 aliasLookup + p 9 dimensionPadding + p 10 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/WorldgenRandom;)Ljava/util/Optional; getRandomNamedJigsaw a method_43566 + p 0 element + p 1 startJigsawName + p 2 pos + p 3 rotation + p 4 structureTemplateManager + p 5 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Ljava/lang/String; method_54496 a method_54496 + m (Lnet/minecraft/core/Holder;)Z method_43730 a method_43730 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_55604 a method_55604 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement$PieceState ekv$a net/minecraft/class_3778$class_4181 + f Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece; piece a comp_2017 + f Lorg/apache/commons/lang3/mutable/MutableObject; free b comp_2018 + f I depth c comp_2019 + m ()Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece; piece a comp_2017 + m ()Lorg/apache/commons/lang3/mutable/MutableObject; free b comp_2018 + m ()I depth c comp_2019 + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Lorg/apache/commons/lang3/mutable/MutableObject;I)V + p 1 piece + p 2 free + p 3 depth +c net/minecraft/world/level/levelgen/structure/pools/JigsawPlacement$Placer ekv$b net/minecraft/class_3778$class_4182 + f Lnet/minecraft/core/Registry; pools a field_25852 + f I maxDepth b field_18700 + f Lnet/minecraft/world/level/chunk/ChunkGenerator; chunkGenerator c field_18702 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager d field_18703 + f Ljava/util/List; pieces e field_18704 + f Lnet/minecraft/util/RandomSource; random f field_18705 + f Lnet/minecraft/util/SequencedPriorityIterator; placing g field_18706 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_46730 a method_46730 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_19305 a method_19305 + m (Lnet/minecraft/world/level/levelgen/structure/PoolElementStructurePiece;Lorg/apache/commons/lang3/mutable/MutableObject;IZLnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V tryPlacingChildren a method_19306 + p 1 piece + p 2 free + p 3 depth + p 4 useExpansionHack + p 5 level + p 6 random + p 7 poolAliasLookup + p 8 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Ljava/lang/String; method_54497 a method_54497 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup;)Lnet/minecraft/resources/ResourceKey; readPoolKey a method_54498 + p 0 blockInfo + p 1 aliasLookup + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_31113 a method_31113 + m (Lnet/minecraft/core/Holder;)Ljava/lang/Integer; method_31114 b method_31114 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/core/Holder; method_31115 c method_31115 + m (Lnet/minecraft/core/Registry;ILnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V + p 1 pools + p 2 maxDepth + p 3 chunkGenerator + p 4 structureTemplateManager + p 5 pieces + p 6 random +c net/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement ekw net/minecraft/class_5188 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24949 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28874 a method_28874 + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/ListPoolElement ekx net/minecraft/class_3782 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24950 + f Ljava/util/List; elements b field_16676 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28875 a method_28875 + m (Lnet/minecraft/world/level/levelgen/structure/pools/ListPoolElement;)Ljava/util/List; method_28876 a method_28876 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Z method_35369 a method_35369 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)V method_16620 a method_16620 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; method_35370 a method_35370 + m ()Ljava/lang/IllegalStateException; method_35371 b method_35371 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V setProjectionOnEachElement b method_19307 + p 1 projection + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 elements + p 2 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/SinglePoolElement eky net/minecraft/class_3781 + f Lcom/mojang/serialization/Codec; TEMPLATE_CODEC a field_24951 + f Lcom/mojang/serialization/MapCodec; CODEC b field_24952 + f Lcom/mojang/datafixers/util/Either; template c field_24015 + f Lnet/minecraft/core/Holder; processors d field_16674 + f Ljava/util/Optional; overrideLiquidSettings e field_52234 + m (Lcom/mojang/datafixers/util/Either;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Lcom/mojang/serialization/DataResult; encodeTemplate a method_28877 + p 0 template + p 1 ops + p 2 values + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28878 a method_28878 + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; getSettings a method_16616 + p 1 rotation + p 2 boundingBox + p 3 liquidSettings + p 4 offset + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Lcom/mojang/datafixers/util/Either; method_28879 a method_28879 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_54781 a method_54781 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getTemplate a method_27233 + p 1 structureTemplateManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)Ljava/util/List; getDataMarkers a method_16614 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + p 4 relativePosition + m (Ljava/util/List;)V sortBySelectionPriority a method_54782 + p 0 structureBlockInfos + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/Integer; method_54783 a method_54783 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; processorsCodec b method_28880 + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Ljava/util/Optional; method_61012 b method_61012 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; overrideLiquidSettingsCodec c method_61013 + m (Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement;)Lnet/minecraft/core/Holder; method_28881 c method_28881 + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; templateCodec d method_28882 + m ()Ljava/lang/String; method_49540 i method_49540 + m (Lcom/mojang/datafixers/util/Either;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/Optional;)V + p 1 template + p 2 processors + p 3 projection + p 4 overrideLiquidSettings + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructurePoolElement ekz net/minecraft/class_3784 + f Lnet/minecraft/core/Holder; EMPTY a field_40924 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; projection b field_16862 + f Lcom/mojang/serialization/Codec; CODEC f field_24953 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; getType a method_16757 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V handleDataMarker a method_16756 + p 1 level + p 2 blockInfo + p 3 pos + p 4 rotation + p 5 random + p 6 box + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; setProjection a method_16622 + p 1 projection + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;Ljava/util/function/Function;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; method_30424 a method_30424 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/StructureManager;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Z)Z place a method_16626 + p 1 structureTemplateManager + p 2 level + p 3 structureManager + p 4 generator + p 5 offset + p 6 pos + p 7 rotation + p 8 box + p 9 random + p 10 liquidSettings + p 11 keepJigsaws + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/Vec3i; getSize a method_16601 + p 1 structureTemplateManager + p 2 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_16628 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledJigsawBlocks a method_16627 + p 1 structureTemplateManager + p 2 pos + p 3 rotation + p 4 random + m (Ljava/lang/String;)Ljava/util/function/Function; legacy a method_30425 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_30428 a method_30428 + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/function/Function; single a method_61014 + p 0 id + p 1 liquidSettings + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_61015 a method_61015 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;)Ljava/util/function/Function; legacy a method_30426 + p 0 id + p 1 processors + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_30427 a method_30427 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Ljava/util/function/Function; single a method_61016 + p 0 id + p 1 processors + p 2 liquidSettings + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/SinglePoolElement; method_61017 a method_61017 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/ListPoolElement; method_30430 a method_30430 + m (Lnet/minecraft/core/Holder;)Ljava/util/function/Function; feature a method_30421 + p 0 feature + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/FeaturePoolElement; method_30422 a method_30422 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/EmptyPoolElement; method_30433 b method_30433 + m (Ljava/lang/String;)Ljava/util/function/Function; single b method_30434 + p 0 id + m (Ljava/lang/String;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement; method_40165 b method_40165 + m (Ljava/lang/String;Lnet/minecraft/core/Holder;)Ljava/util/function/Function; single b method_30435 + p 0 id + p 1 processors + m (Ljava/lang/String;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)Lnet/minecraft/world/level/levelgen/structure/pools/LegacySinglePoolElement; method_30437 b method_30437 + m (Ljava/util/List;)Ljava/util/function/Function; list b method_30429 + p 0 elements + m ()Lcom/mojang/serialization/codecs/RecordCodecBuilder; projectionCodec e method_28883 + m ()Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; getProjection f method_16624 + m ()I getGroundLevelDelta g method_19308 + m ()Ljava/util/function/Function; empty h method_30438 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType ela net/minecraft/class_3816 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; SINGLE a field_16973 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; LIST b field_16974 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; FEATURE c field_16971 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; EMPTY d field_16972 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; LEGACY e field_24016 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28884 a method_28884 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElementType; register a method_28885 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool elb net/minecraft/class_3785 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_25853 + f Lcom/mojang/serialization/Codec; CODEC b field_24954 + f I SIZE_UNSET c field_31523 + f Lorg/apache/commons/lang3/mutable/MutableObject; CODEC_REFERENCE d field_40925 + f Ljava/util/List; rawTemplates e field_16864 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; templates f field_16680 + f Lnet/minecraft/core/Holder; fallback g field_40926 + f I maxSize h field_18707 + m ()Lnet/minecraft/core/Holder; getFallback a method_46736 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement; getRandomTemplate a method_16631 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28886 a method_28886 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)Z method_35372 a method_35372 + m (Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool;)Ljava/util/List; method_28888 a method_28888 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;)I getMaxSize a method_19309 + p 1 structureTemplateManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/pools/StructurePoolElement;)I method_19310 a method_19310 + m ()I size b method_16632 + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; getShuffledTemplates b method_16633 + p 1 random + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 fallback + p 2 rawTemplates + m (Lnet/minecraft/core/Holder;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection;)V + p 1 fallback + p 2 rawTemplateFactories + p 3 projection + m ()V +c net/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection elb$a net/minecraft/class_3785$class_3786 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; TERRAIN_MATCHING a field_16686 + f Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; RIGID b field_16687 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_24956 + f Ljava/lang/String; name d field_16682 + f Lcom/google/common/collect/ImmutableList; processors e field_16685 + f [Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; $VALUES f field_16683 + m ()Ljava/lang/String; getName a method_16635 + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; byName a method_16638 + p 0 name + m ()Lcom/google/common/collect/ImmutableList; getProcessors b method_16636 + m ()[Lnet/minecraft/world/level/levelgen/structure/pools/StructureTemplatePool$Projection; $values d method_36758 + m (Ljava/lang/String;ILjava/lang/String;Lcom/google/common/collect/ImmutableList;)V + p 3 name + p 4 processors + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/Direct elc net/minecraft/class_8888 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46824 + f Lnet/minecraft/resources/ResourceKey; alias c comp_2003 + f Lnet/minecraft/resources/ResourceKey; target d comp_2004 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54501 a method_54501 + m ()Lnet/minecraft/resources/ResourceKey; alias c comp_2003 + m ()Lnet/minecraft/resources/ResourceKey; target d comp_2004 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding eld net/minecraft/class_8889 + f Lcom/mojang/serialization/Codec; CODEC b field_46825 + m ()Ljava/util/stream/Stream; allTargets a method_54499 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Direct; direct a method_54503 + p 0 alias + p 1 target + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Random; random a method_54504 + p 0 alias + p 1 targets + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;)V forEachResolved a method_54500 + p 1 random + p 2 stucturePoolKey + m (Lnet/minecraft/util/random/SimpleWeightedRandomList$Builder;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54505 a method_54505 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/RandomGroup; randomGroup a method_54506 + p 0 groups + m (Ljava/lang/String;Lnet/minecraft/util/random/SimpleWeightedRandomList;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Random; random a method_54507 + p 0 alias + p 1 targets + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/pools/alias/Direct; direct a method_54508 + p 0 alias + p 1 target + m ()Lcom/mojang/serialization/MapCodec; codec b method_54502 + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBindings ele net/minecraft/class_8890 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_55227 a method_55227 + m (Lnet/minecraft/core/Registry;)Lcom/mojang/serialization/MapCodec; bootstrap a method_54509 + p 0 registry + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/Holder;Ljava/lang/String;)V method_55228 a method_55228 + m (Lnet/minecraft/data/worldgen/BootstrapContext;Lnet/minecraft/core/Holder;Ljava/util/List;)V registerTargetsAsPools a method_55229 + p 0 context + p 1 pool + p 2 poolAliasBindings + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup elf net/minecraft/class_8891 + f Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasLookup; EMPTY a field_46826 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_54510 a method_54510 + m (Lnet/minecraft/util/RandomSource;Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding;)V method_54511 a method_54511 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_54512 a method_54512 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; method_54513 b method_54513 + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/Random elg net/minecraft/class_8892 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46827 + f Lnet/minecraft/resources/ResourceKey; alias c comp_2005 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; targets d comp_2006 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54514 a method_54514 + m (Ljava/util/function/BiConsumer;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54515 a method_54515 + m ()Lnet/minecraft/resources/ResourceKey; alias c comp_2005 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; targets d comp_2006 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/RandomGroup elh net/minecraft/class_8893 + f Lcom/mojang/serialization/MapCodec; CODEC a field_46828 + f Lnet/minecraft/util/random/SimpleWeightedRandomList; groups c comp_2007 + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)V method_54516 a method_54516 + m (Lnet/minecraft/util/RandomSource;Ljava/util/function/BiConsumer;Lnet/minecraft/world/level/levelgen/structure/pools/alias/PoolAliasBinding;)V method_54517 a method_54517 + m (Lnet/minecraft/util/random/WeightedEntry$Wrapper;)Ljava/util/stream/Stream; method_54518 a method_54518 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_54519 a method_54519 + m ()Lnet/minecraft/util/random/SimpleWeightedRandomList; groups c comp_2007 + m (Lnet/minecraft/util/random/SimpleWeightedRandomList;)V + m ()V +c net/minecraft/world/level/levelgen/structure/pools/alias/package-info eli net/minecraft/class_8894 +c net/minecraft/world/level/levelgen/structure/pools/package-info elj net/minecraft/class_6116 +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasurePieces elk net/minecraft/class_3789 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasurePieces$BuriedTreasurePiece elk$a net/minecraft/class_3789$class_3339 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isLiquid b method_14655 + p 1 state + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/BuriedTreasureStructure ell net/minecraft/class_2956 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37790 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41652 a method_41652 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38672 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/DesertPyramidPiece elm net/minecraft/class_3346 + f I WIDTH h field_34725 + f I DEPTH i field_34726 + f [Z hasPlacedChest j field_14397 + f Ljava/util/List; potentialSuspiciousSandWorldPositions k field_42856 + f Lnet/minecraft/core/BlockPos; randomCollapsedRoofPos l field_44482 + m (IIIIII)V placeSandBox a method_49263 + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m (Lnet/minecraft/world/level/WorldGenLevel;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V placeCollapsedRoofPiece a method_49260 + p 1 level + p 2 x + p 3 y + p 4 z + p 5 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellar a method_49261 + p 1 level + p 2 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIII)V placeCollapsedRoof a method_49262 + p 1 level + p 2 box + p 3 minX + p 4 y + p 5 minZ + p 6 maxX + p 7 maxZ + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellarStairs a method_49264 + p 1 pos + p 2 level + p 3 box + m ()Ljava/util/List; getPotentialSuspiciousSandWorldPositions b method_49265 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V addCellarRoom b method_49266 + p 1 pos + p 2 level + p 3 box + m ()Lnet/minecraft/core/BlockPos; getRandomCollapsedRoofPos c method_51180 + m (III)V placeSand c method_49259 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/DesertPyramidStructure eln net/minecraft/class_3006 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37791 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V placeSuspiciousSand a method_51181 + p 0 boundingBox + p 1 worldGenLevel + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;)V method_51182 a method_51182 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces elo net/minecraft/class_3342 + f I MAX_GEN_DEPTH a field_31549 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; HOUSE_TOWER_GENERATOR b field_14390 + f Ljava/util/List; TOWER_BRIDGES c field_14385 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; TOWER_GENERATOR d field_14386 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; TOWER_BRIDGE_GENERATOR e field_14387 + f Ljava/util/List; FAT_TOWER_BRIDGES f field_14388 + f Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator; FAT_TOWER_GENERATOR g field_14384 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/world/level/block/Rotation;Z)Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece; addPiece a method_14684 + p 0 structureTemplateManager + p 1 piece + p 2 startPos + p 3 name + p 4 rotation + p 5 overwrite + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator;ILnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/util/RandomSource;)Z recursiveChildren a method_14673 + p 0 structureTemplateManager + p 1 sectionGenerator + p 2 counter + p 3 piece + p 4 startPos + p 5 pieces + p 6 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V startHouseTower a method_14679 + p 0 structureTemplateManager + p 1 startPos + p 2 rotation + p 3 pieces + p 4 random + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;)Lnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece; addHelper a method_14681 + p 0 pieces + p 1 piece + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$1 elo$1 net/minecraft/class_3342$1 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$2 elo$2 net/minecraft/class_3342$2 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$3 elo$3 net/minecraft/class_3342$3 + f Z shipCreated a field_14394 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$4 elo$4 net/minecraft/class_3342$4 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece elo$a net/minecraft/class_3342$class_3343 + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; makeResourceLocation a method_35425 + p 0 name + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35426 a method_35426 + m (ZLnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35427 + p 0 overwrite + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)V + p 1 structureTemplateManager + p 2 name + p 3 startPos + p 4 rotation + p 5 overwrite + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/EndCityPieces$SectionGenerator elo$b net/minecraft/class_3342$class_3344 + m ()V init a method_14688 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;ILnet/minecraft/world/level/levelgen/structure/structures/EndCityPieces$EndCityPiece;Lnet/minecraft/core/BlockPos;Ljava/util/List;Lnet/minecraft/util/RandomSource;)Z generate a method_14687 + p 1 structureTemplateManager + p 2 counter + p 3 piece + p 4 startPos + p 5 pieces + p 6 random +c net/minecraft/world/level/levelgen/structure/structures/EndCityStructure elp net/minecraft/class_3021 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37792 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_39817 + p 1 builder + p 2 startPos + p 3 rotation + p 4 context + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41655 a method_41655 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/IglooPieces elq net/minecraft/class_3351 + f I GENERATION_HEIGHT a field_31550 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_IGLOO b field_14409 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_LADDER c field_14407 + f Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_LABORATORY d field_14410 + f Ljava/util/Map; PIVOTS e field_14408 + f Ljava/util/Map; OFFSETS f field_14406 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;)V addPieces a method_14705 + p 0 structureTemplateManager + p 1 startPos + p 2 rotation + p 3 pieces + p 4 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/IglooPieces$IglooPiece elq$a net/minecraft/class_3351$class_3352 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;I)Lnet/minecraft/core/BlockPos; makePosition a method_35430 + p 0 location + p 1 pos + p 2 down + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35428 + p 0 rotation + p 1 location + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35429 a method_35429 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;I)V + p 1 structureTemplateManager + p 2 location + p 3 startPos + p 4 rotation + p 5 down + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/IglooStructure elr net/minecraft/class_3071 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37793 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41657 a method_41657 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38675 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JigsawStructure els net/minecraft/class_5434 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; DEFAULT_DIMENSION_PADDING d field_51911 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; DEFAULT_LIQUID_SETTINGS e field_52235 + f I MAX_TOTAL_STRUCTURE_RANGE f field_38435 + f I MIN_DEPTH g field_49155 + f I MAX_DEPTH h field_47412 + f Lcom/mojang/serialization/MapCodec; CODEC i field_37794 + f Lnet/minecraft/core/Holder; startPool j field_37795 + f Ljava/util/Optional; startJigsawName k field_39059 + f I maxDepth l field_37796 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; startHeight m field_37797 + f Z useExpansionHack n field_37798 + f Ljava/util/Optional; projectStartToHeightmap o field_37799 + f I maxDistanceFromCenter p field_38268 + f Ljava/util/List; poolAliases q field_46829 + f Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; dimensionPadding r field_51912 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings s field_52236 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lcom/mojang/serialization/DataResult; verifyRange a method_42708 + p 0 structure + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41662 b method_41662 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; method_61018 b method_61018 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding; method_60567 c method_60567 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/List; method_54520 d method_54520 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Integer; method_42704 e method_42704 + m ()Ljava/lang/String; method_49541 f method_49541 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/Optional; method_42705 f method_42705 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Boolean; method_42706 g method_42706 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_42707 h method_42707 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/lang/Integer; method_42709 i method_42709 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Ljava/util/Optional; method_43567 j method_43567 + m (Lnet/minecraft/world/level/levelgen/structure/structures/JigsawStructure;)Lnet/minecraft/core/Holder; method_42710 k method_42710 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;Ljava/util/Optional;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;ZLjava/util/Optional;ILjava/util/List;Lnet/minecraft/world/level/levelgen/structure/pools/DimensionPadding;Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)V + p 1 settings + p 2 startPool + p 3 startJigsawName + p 4 maxDepth + p 5 startHeight + p 6 useExpansionHack + p 7 projectStartToHeightmap + p 8 maxDistanceFromCenter + p 9 poolAliases + p 10 dimensionPadding + p 11 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;ZLnet/minecraft/world/level/levelgen/Heightmap$Types;)V + p 1 settings + p 2 startPool + p 3 maxDepth + p 4 startHeight + p 5 useExpansionHack + p 6 projectStartToHeightmap + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/core/Holder;ILnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;Z)V + p 1 settings + p 2 startPool + p 3 maxDepth + p 4 startHeight + p 5 useExpansionHack + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JigsawStructure$1 els$1 net/minecraft/class_5434$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$TerrainAdjustment a field_38436 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece elt net/minecraft/class_3348 + f I WIDTH h field_34727 + f I DEPTH i field_34728 + f Z placedMainChest j field_14402 + f Z placedHiddenChest k field_14401 + f Z placedTrap1 l field_14400 + f Z placedTrap2 m field_14399 + f Lnet/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece$MossStoneSelector; STONE_SELECTOR n field_14403 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTemplePiece$MossStoneSelector elt$a net/minecraft/class_3348$class_3349 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/JungleTempleStructure elu net/minecraft/class_3076 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37800 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces elv net/minecraft/class_3353 + f I MAGIC_START_Y a field_34729 + f Lorg/slf4j/Logger; LOGGER b field_29326 + f I DEFAULT_SHAFT_WIDTH c field_31551 + f I DEFAULT_SHAFT_HEIGHT d field_31552 + f I DEFAULT_SHAFT_LENGTH e field_31553 + f I MAX_PILLAR_HEIGHT f field_31554 + f I MAX_CHAIN_HEIGHT g field_31555 + f I MAX_DEPTH h field_31556 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece; generateAndAddPiece a method_14711 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;ILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece; createRandomShaftPiece a method_14712 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + p 7 type + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$1 elv$1 net/minecraft/class_3353$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14417 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftCorridor elv$a net/minecraft/class_3353$class_3354 + f Z hasRails b field_14416 + f Z spiderCorridor c field_14415 + f Z hasPlacedSpider d field_14414 + f I numSections h field_14413 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPlaceColumnOnTopOf a method_33777 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos$MutableBlockPos;II)V fillColumnBetween a method_33878 + p 0 level + p 1 state + p 2 pos + p 3 minY + p 4 maxY + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;III)V placeDoubleLowerOrUpperSupport a method_33776 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z hasSturdyNeighbours a method_36422 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + p 6 required + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIILnet/minecraft/util/RandomSource;)V placeSupport a method_14713 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 z + p 6 maxY + p 7 maxX + p 8 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/util/RandomSource;FIII)V maybePlaceCobWeb a method_14715 + p 1 level + p 2 box + p 3 random + p 4 chance + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findCorridorSize a method_14714 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canHangChainBelow b method_33877 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/block/state/BlockState;IIILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V fillPillarDownOrChainUp c method_33879 + p 1 level + p 2 state + p 3 x + p 4 y + p 5 z + p 6 box + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 random + p 3 boundingBox + p 4 orientation + p 5 type +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftCrossing elv$b net/minecraft/class_3353$class_3355 + f Lnet/minecraft/core/Direction; direction b field_14420 + f Z isTwoFloored c field_14419 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)V placeSupportPillar a method_14716 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + p 6 maxY + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findCrossing a method_14717 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 boundingBox + p 3 direction + p 4 type +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftPiece elv$c net/minecraft/class_3353$class_3356 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; type a field_14421 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z isSupportingBox a method_14719 + p 1 level + p 2 box + p 3 xStart + p 4 xEnd + p 5 y + p 6 z + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isInInvalidLocation a method_33999 + p 1 level + p 2 boundingBox + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/block/state/BlockState;III)V setPlanksBlock a method_33880 + p 1 level + p 2 box + p 3 plankState + p 4 x + p 5 y + p 6 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 structurePieceType + p 2 genDepth + p 3 type + p 4 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftRoom elv$d net/minecraft/class_3353$class_3357 + f Ljava/util/List; childEntranceBoxes b field_14422 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_34397 a method_34397 + m (ILnet/minecraft/util/RandomSource;IILnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 random + p 3 x + p 4 z + p 5 type + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftPieces$MineShaftStairs elv$e net/minecraft/class_3353$class_3358 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findStairs a method_14720 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 genDepth + p 2 boundingBox + p 3 orientation + p 4 type + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/MineshaftStructure elw net/minecraft/class_3098 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37801 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; type e field_37802 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)I generatePiecesAndAdjust a method_38678 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure;)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; method_41667 a method_41667 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41669 b method_41669 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type;)V + p 1 settings + p 2 type + m ()V +c net/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type elw$a net/minecraft/class_3098$class_3100 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; NORMAL a field_13692 + f Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; MESA b field_13691 + f Lcom/mojang/serialization/Codec; CODEC c field_24839 + f Ljava/util/function/IntFunction; BY_ID d field_41680 + f Ljava/lang/String; name e field_13689 + f Lnet/minecraft/world/level/block/state/BlockState; woodState f field_28850 + f Lnet/minecraft/world/level/block/state/BlockState; planksState g field_28851 + f Lnet/minecraft/world/level/block/state/BlockState; fenceState h field_28852 + f [Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; $VALUES i field_13688 + m ()Ljava/lang/String; getName a method_13534 + m (I)Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; byId a method_13535 + p 0 id + m ()Lnet/minecraft/world/level/block/state/BlockState; getWoodState b method_33760 + m ()Lnet/minecraft/world/level/block/state/BlockState; getPlanksState d method_33761 + m ()Lnet/minecraft/world/level/block/state/BlockState; getFenceState e method_33762 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/MineshaftStructure$Type; $values f method_36755 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)V + p 3 name + p 4 woodBlock + p 5 planksBlock + p 6 fenceBlock + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces elx net/minecraft/class_3390 + f I MAGIC_START_Y a field_34730 + f I MAX_DEPTH b field_31557 + f I LOWEST_Y_POSITION c field_31558 + f [Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; BRIDGE_PIECE_WEIGHTS d field_14494 + f [Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; CASTLE_PIECE_WEIGHTS e field_14493 + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece; findAndCreateBridgePieceFactory a method_14795 + p 0 weight + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 orientation + p 7 genDepth + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$1 elx$1 net/minecraft/class_3390$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14508 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeCrossing elx$a net/minecraft/class_3390$class_3391 + f I WIDTH a field_31559 + f I HEIGHT b field_31560 + f I DEPTH c field_31561 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeCrossing; createPiece a method_14796 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (IILnet/minecraft/core/Direction;)V + p 1 x + p 2 z + p 3 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeEndFiller elx$b net/minecraft/class_3390$class_3392 + f I WIDTH a field_31562 + f I HEIGHT b field_31563 + f I DEPTH c field_31564 + f I selfSeed d field_14495 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeEndFiller; createPiece a method_14797 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeStraight elx$c net/minecraft/class_3390$class_3393 + f I WIDTH a field_31565 + f I HEIGHT b field_31566 + f I DEPTH c field_31567 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$BridgeStraight; createPiece a method_14798 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorStairsPiece elx$d net/minecraft/class_3390$class_3394 + f I WIDTH a field_31568 + f I HEIGHT b field_31569 + f I DEPTH c field_31570 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorStairsPiece; createPiece a method_14799 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorTBalconyPiece elx$e net/minecraft/class_3390$class_3395 + f I WIDTH a field_31571 + f I HEIGHT b field_31572 + f I DEPTH c field_31573 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleCorridorTBalconyPiece; createPiece a method_14800 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleEntrance elx$f net/minecraft/class_3390$class_3396 + f I WIDTH a field_31574 + f I HEIGHT b field_31575 + f I DEPTH c field_31576 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleEntrance; createPiece a method_14801 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorCrossingPiece elx$g net/minecraft/class_3390$class_3397 + f I WIDTH a field_31577 + f I HEIGHT b field_31578 + f I DEPTH c field_31579 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorCrossingPiece; createPiece a method_14802 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorLeftTurnPiece elx$h net/minecraft/class_3390$class_3398 + f I WIDTH a field_31580 + f I HEIGHT b field_31581 + f I DEPTH c field_31582 + f Z isNeedingChest d field_14496 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorLeftTurnPiece; createPiece a method_14803 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorPiece elx$i net/minecraft/class_3390$class_3399 + f I WIDTH a field_31583 + f I HEIGHT b field_31584 + f I DEPTH c field_31585 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorPiece; createPiece a method_14804 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorRightTurnPiece elx$j net/minecraft/class_3390$class_3400 + f I WIDTH a field_31586 + f I HEIGHT b field_31587 + f I DEPTH c field_31588 + f Z isNeedingChest d field_14497 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleSmallCorridorRightTurnPiece; createPiece a method_14805 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleStalkRoom elx$k net/minecraft/class_3390$class_3401 + f I WIDTH a field_31589 + f I HEIGHT b field_31590 + f I DEPTH c field_31591 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$CastleStalkRoom; createPiece a method_14806 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$MonsterThrone elx$l net/minecraft/class_3390$class_3402 + f I WIDTH a field_31592 + f I HEIGHT b field_31593 + f I DEPTH c field_31594 + f Z hasPlacedSpawner d field_14498 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$MonsterThrone; createPiece a method_14807 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 genDepth + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece elx$m net/minecraft/class_3390$class_3403 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isOkBox a method_14809 + p 0 box + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;IZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateAndAddPiece a method_14813 + p 1 startPiece + p 2 pieces + p 3 random + p 4 x + p 5 y + p 6 z + p 7 orientation + p 8 genDepth + p 9 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildForward a method_14814 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetX + p 5 offsetY + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$NetherBridgePiece; generatePiece a method_14811 + p 1 startPiece + p 2 weights + p 3 pieces + p 4 random + p 5 x + p 6 y + p 7 z + p 8 orientation + p 9 genDepth + m (Ljava/util/List;)I updatePieceWeight a method_14810 + p 1 weights + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildLeft b method_14812 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIZ)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateChildRight c method_14808 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + p 6 castlePiece + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight elx$n net/minecraft/class_3390$class_3404 + f Ljava/lang/Class; pieceClass a field_14501 + f I weight b field_14503 + f I placeCount c field_14502 + f I maxPlaceCount d field_14499 + f Z allowInRow e field_14500 + m ()Z isValid a method_14815 + m (I)Z doPlace a method_14816 + p 1 genDepth + m (Ljava/lang/Class;IIZ)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount + p 4 allowInRow + m (Ljava/lang/Class;II)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$RoomCrossing elx$o net/minecraft/class_3390$class_3405 + f I WIDTH a field_31595 + f I HEIGHT b field_31596 + f I DEPTH c field_31597 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$RoomCrossing; createPiece a method_14817 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StairsRoom elx$p net/minecraft/class_3390$class_3406 + f I WIDTH a field_31598 + f I HEIGHT b field_31599 + f I DEPTH c field_31600 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StairsRoom; createPiece a method_14818 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 genDepth + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$StartPiece elx$q net/minecraft/class_3390$class_3407 + f Lnet/minecraft/world/level/levelgen/structure/structures/NetherFortressPieces$PieceWeight; previousPiece a field_14506 + f Ljava/util/List; availableBridgePieces b field_14507 + f Ljava/util/List; availableCastlePieces c field_14504 + f Ljava/util/List; pendingChildren d field_14505 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFortressStructure ely net/minecraft/class_3108 + f Lnet/minecraft/util/random/WeightedRandomList; FORTRESS_ENEMIES d field_13705 + f Lcom/mojang/serialization/MapCodec; CODEC e field_37803 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41670 a method_41670 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38679 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilPieces elz net/minecraft/class_4787 + f [Lnet/minecraft/resources/ResourceLocation; FOSSILS a field_22197 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V addPieces a method_24453 + p 0 structureManager + p 1 pieces + p 2 random + p 3 pos + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilPieces$NetherFossilPiece elz$a net/minecraft/class_4787$class_4788 + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35431 + p 0 rotation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35432 a method_35432 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V + p 1 structureManager + p 2 location + p 3 pos + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/NetherFossilStructure ema net/minecraft/class_4785 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37804 + f Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; height e field_37805 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/WorldgenRandom;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41672 a method_41672 + m (Lnet/minecraft/world/level/levelgen/structure/structures/NetherFossilStructure;)Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider; method_41673 a method_41673 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41674 b method_41674 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/heightproviders/HeightProvider;)V + p 1 settings + p 2 height + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces emb net/minecraft/class_3366 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$1 emb$1 net/minecraft/class_3366$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_14467 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleXRoom emb$a net/minecraft/class_3366$class_3367 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleXYRoom emb$b net/minecraft/class_3366$class_3368 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleYRoom emb$c net/minecraft/class_3366$class_3369 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleYZRoom emb$d net/minecraft/class_3366$class_3370 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitDoubleZRoom emb$e net/minecraft/class_3366$class_3371 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitSimpleRoom emb$f net/minecraft/class_3366$class_3372 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$FitSimpleTopRoom emb$g net/minecraft/class_3366$class_3373 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$MonumentBuilding emb$h net/minecraft/class_3366$class_3374 + f I WIDTH C field_31602 + f I HEIGHT D field_31603 + f I DEPTH E field_31604 + f I TOP_POSITION F field_31605 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; sourceRoom G field_14464 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; coreRoom H field_14466 + f Ljava/util/List; childPieces I field_14465 + f I BIOME_RANGE_CHECK a field_31606 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateEntranceArchs a method_14763 + p 1 level + p 2 random + p 3 box + m (ZILnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateWing a method_14761 + p 1 wing + p 2 x + p 3 level + p 4 random + p 5 box + m (Lnet/minecraft/util/RandomSource;)Ljava/util/List; generateRoomGraph b method_14760 + p 1 random + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateEntranceWall b method_14762 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateRoofPiece c method_14765 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateLowerWall d method_14764 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateMiddleWall e method_14766 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V generateUpperWall f method_14767 + p 1 level + p 2 random + p 3 box + m (Lnet/minecraft/util/RandomSource;IILnet/minecraft/core/Direction;)V + p 1 random + p 2 x + p 3 z + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$MonumentRoomFitter emb$i net/minecraft/class_3366$class_3375 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)Z fits a method_14769 + p 1 room + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPiece; create a method_14768 + p 1 direction + p 2 room + p 3 random +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentCoreRoom emb$j net/minecraft/class_3366$class_3376 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleXRoom emb$k net/minecraft/class_3366$class_3377 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleXYRoom emb$l net/minecraft/class_3366$class_3378 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleYRoom emb$m net/minecraft/class_3366$class_3379 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleYZRoom emb$n net/minecraft/class_3366$class_3380 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentDoubleZRoom emb$o net/minecraft/class_3366$class_3381 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentEntryRoom emb$p net/minecraft/class_3366$class_3382 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPenthouse emb$q net/minecraft/class_3366$class_3383 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 direction + p 2 box + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentPiece emb$r net/minecraft/class_3366$class_3384 + f I PENTHOUSE_INDEX A field_31618 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; roomDefinition B field_14479 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_GRAY b field_14473 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_LIGHT c field_14476 + f Lnet/minecraft/world/level/block/state/BlockState; BASE_BLACK d field_14474 + f Lnet/minecraft/world/level/block/state/BlockState; DOT_DECO_DATA h field_14470 + f Lnet/minecraft/world/level/block/state/BlockState; LAMP_BLOCK i field_14471 + f Z DO_FILL j field_31607 + f Lnet/minecraft/world/level/block/state/BlockState; FILL_BLOCK k field_14475 + f Ljava/util/Set; FILL_KEEP l field_14472 + f I GRIDROOM_WIDTH m field_31608 + f I GRIDROOM_DEPTH n field_31609 + f I GRIDROOM_HEIGHT o field_31610 + f I GRID_WIDTH p field_31611 + f I GRID_DEPTH q field_31612 + f I GRID_HEIGHT r field_31613 + f I GRID_FLOOR_COUNT s field_31614 + f I GRID_SIZE t field_31615 + f I GRIDROOM_SOURCE_INDEX u field_14469 + f I GRIDROOM_TOP_CONNECT_INDEX v field_14468 + f I GRIDROOM_LEFTWING_CONNECT_INDEX w field_14478 + f I GRIDROOM_RIGHTWING_CONNECT_INDEX x field_14477 + f I LEFTWING_INDEX y field_31616 + f I RIGHTWING_INDEX z field_31617 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;III)V spawnElder a method_14772 + p 1 level + p 2 box + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIIILnet/minecraft/world/level/block/state/BlockState;)V generateBoxOnFillOnly a method_14771 + p 1 level + p 2 box + p 3 minX + p 4 minY + p 5 minZ + p 6 maxX + p 7 maxY + p 8 maxZ + p 9 state + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIZ)V generateDefaultFloor a method_14774 + p 1 level + p 2 box + p 3 x + p 4 z + p 5 hasOpeningDownwards + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIII)Z chunkIntersects a method_14775 + p 1 box + p 2 minX + p 3 minZ + p 4 maxX + p 5 maxZ + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;III)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; makeBoundingBox a method_35445 + p 0 direction + p 1 definition + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;IIIIII)V generateWaterBox b method_14773 + p 1 level + p 2 boundingBox + p 3 x1 + p 4 y1 + p 5 z1 + p 6 x2 + p 7 y2 + p 8 z2 + m (III)I getRoomIndex c method_14770 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/core/Direction;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 orientation + p 3 genDepth + p 4 box + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;III)V + p 1 type + p 2 genDepth + p 3 orientation + p 4 roomDefinition + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentSimpleRoom emb$s net/minecraft/class_3366$class_3385 + f I mainDesign a field_14480 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;Lnet/minecraft/util/RandomSource;)V + p 1 direction + p 2 room + p 3 random + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentSimpleTopRoom emb$t net/minecraft/class_3366$class_3386 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V + p 1 direction + p 2 room + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$OceanMonumentWingRoom emb$u net/minecraft/class_3366$class_3387 + f I mainDesign a field_14481 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;I)V + p 1 direction + p 2 box + p 3 flag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition emb$v net/minecraft/class_3366$class_3388 + f I index a field_14486 + f [Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition; connections b field_14487 + f [Z hasOpening c field_14482 + f Z claimed d field_14485 + f Z isSource e field_14484 + f I scanIndex f field_14483 + m ()V updateOpenings a method_14780 + m (I)Z findSource a method_14783 + p 1 index + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/OceanMonumentPieces$RoomDefinition;)V setConnection a method_14786 + p 1 direction + p 2 connectingRoom + m ()Z isSpecial b method_14785 + m ()I countOpenings c method_14781 + m (I)V + p 1 index +c net/minecraft/world/level/levelgen/structure/structures/OceanMonumentStructure emc net/minecraft/class_3116 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37806 + m (Lnet/minecraft/world/level/ChunkPos;JLnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer;)Lnet/minecraft/world/level/levelgen/structure/pieces/PiecesContainer; regeneratePiecesAfterLoad a method_38680 + p 0 chunkPos + p 1 seed + p 3 piecesContainer + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/levelgen/WorldgenRandom;)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; createTopPiece a method_38681 + p 0 chunkPos + p 1 random + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41675 a method_41675 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38683 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces emd net/minecraft/class_3409 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; WARM_SUSPICIOUS_BLOCK_PROCESSOR a field_43327 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; COLD_SUSPICIOUS_BLOCK_PROCESSOR b field_43328 + f [Lnet/minecraft/resources/ResourceLocation; WARM_RUINS c field_14521 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_BRICK d field_14518 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_CRACKED e field_14519 + f [Lnet/minecraft/resources/ResourceLocation; RUINS_MOSSY f field_14522 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_BRICK g field_14516 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_MOSSY h field_14517 + f [Lnet/minecraft/resources/ResourceLocation; BIG_RUINS_CRACKED i field_14520 + f [Lnet/minecraft/resources/ResourceLocation; BIG_WARM_RUINS j field_14515 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceLocation; getSmallWarmRuin a method_14824 + p 0 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)Ljava/util/List; allPositions a method_14821 + p 0 random + p 1 pos + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; archyRuleProcessor a method_49885 + p 0 block + p 1 suspiciousBlock + p 2 lootTable + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;)V addClusterRuins a method_14825 + p 0 structureTemplateManager + p 1 random + p 2 rotation + p 3 pos + p 4 structure + p 5 structurePieceAccessor + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)V addPieces a method_14827 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 structurePieceAccessor + p 4 random + p 5 structure + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;ZF)V addPiece a method_14822 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 structurePieceAccessor + p 4 random + p 5 structure + p 6 isLarge + p 7 integrity + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/resources/ResourceLocation; getBigWarmRuin b method_14826 + p 0 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$1 emd$1 net/minecraft/class_3409$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$structure$structures$OceanRuinStructure$Type a field_31619 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$OceanRuinPiece emd$a net/minecraft/class_3409$class_3410 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; biomeType h field_14527 + f F integrity i field_14524 + f Z isLarge j field_14525 + m (Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35446 + p 0 rotation + p 1 integrity + p 2 structureType + m (Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35447 a method_35447 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinPieces$OceanRuinPiece; create a method_49886 + p 0 structureTemplateManager + p 1 tag + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)I getHeight a method_14829 + p 1 templatePos + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Z)V + p 1 structureTemplateManager + p 2 location + p 3 pos + p 4 rotation + p 5 integrity + p 6 biomeType + p 7 isLarge + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/block/Rotation;FLnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;Z)V + p 1 structureTemplateManager + p 2 genDepth + p 3 rotation + p 4 integrity + p 5 biomeType + p 6 isLarge +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure eme net/minecraft/class_3411 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37807 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; biomeTemp e field_37808 + f F largeProbability f field_37809 + f F clusterProbability g field_37810 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41677 a method_41677 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38700 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Ljava/lang/Float; method_41678 a method_41678 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41679 b method_41679 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Ljava/lang/Float; method_41680 b method_41680 + m (Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure;)Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; method_41681 c method_41681 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type;FF)V + p 1 settings + p 2 biomeTemp + p 3 largeProbability + p 4 clusterProbability + m ()V +c net/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type eme$a net/minecraft/class_3411$class_3413 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; WARM a field_14532 + f Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; COLD b field_14528 + f Lcom/mojang/serialization/Codec; CODEC c field_24990 + f Ljava/lang/String; name d field_14529 + f [Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; $VALUES e field_14531 + m ()Ljava/lang/String; getName a method_14831 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/OceanRuinStructure$Type; $values b method_36760 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece emf net/minecraft/class_5189 + f Lorg/slf4j/Logger; LOGGER h field_24992 + f F PROBABILITY_OF_GOLD_GONE i field_31620 + f F PROBABILITY_OF_MAGMA_INSTEAD_OF_NETHERRACK j field_31621 + f F PROBABILITY_OF_MAGMA_INSTEAD_OF_LAVA k field_31622 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; verticalPlacement l field_24021 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties; properties m field_24022 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;)V addNetherrackDripColumnsBelowPortal a method_27243 + p 1 random + p 2 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V maybeAddVines a method_27244 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/core/BlockPos;)V method_27250 a method_27250 + m (Lnet/minecraft/world/level/LevelAccessor;IILnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;)I getSurfaceY a method_27237 + p 0 level + p 1 x + p 2 z + p 3 verticalPlacement + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z canBlockBeReplacedByNetherrackOrMagma a method_27238 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/block/Block;FLnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getBlockReplaceRule a method_27239 + p 0 block + p 1 probability + p 2 replaceBlock + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getBlockReplaceRule a method_27240 + p 0 block + p 1 replaceBlock + m (Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35450 + p 0 mirror + p 1 rotation + p 2 verticalPlacement + p 3 pos + p 4 properties + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; getHeightMapType a method_27241 + p 0 verticalPlacement + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule; getLavaProcessorRule a method_27247 + p 0 verticalPlacement + p 1 properties + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35449 + p 0 structureTemplateManager + p 1 tag + p 2 location + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_28950 a method_28950 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;)V spreadNetherrack b method_27245 + p 1 random + p 2 level + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V maybeAddLeavesAbove b method_27246 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35451 b method_35451 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V addNetherrackDripColumn c method_27248 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V placeNetherrackOrMagma d method_27249 + p 1 random + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/BlockPos;)V + p 1 structureTemplateManager + p 2 templatePosition + p 3 verticalPlacement + p 4 properties + p 5 location + p 6 template + p 7 rotation + p 8 mirror + p 9 pivotPos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties emf$a net/minecraft/class_5189$class_5190 + f Lcom/mojang/serialization/Codec; CODEC a field_24993 + f Z cold b field_24023 + f F mossiness c field_24024 + f Z airPocket d field_24025 + f Z overgrown e field_24026 + f Z vines f field_24027 + f Z replaceWithBlackstone g field_24028 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28951 a method_28951 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28952 a method_28952 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28953 b method_28953 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28954 c method_28954 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28955 d method_28955 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Float; method_28956 e method_28956 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;)Ljava/lang/Boolean; method_28957 f method_28957 + m ()V + m (ZFZZZZ)V + p 1 cold + p 2 mossiness + p 3 airPocket + p 4 overgrown + p 5 vines + p 6 replaceWithBlackstone + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement emf$b net/minecraft/class_5189$class_5191 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; ON_LAND_SURFACE a field_24029 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; PARTLY_BURIED b field_24030 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; ON_OCEAN_FLOOR c field_24031 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; IN_MOUNTAIN d field_24032 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; UNDERGROUND e field_24033 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; IN_NETHER f field_24034 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC g field_37811 + f Ljava/lang/String; name h field_24036 + f [Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; $VALUES i field_24037 + m ()Ljava/lang/String; getName a method_27252 + m (Ljava/lang/String;)Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; byName a method_27254 + p 0 name + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; $values b method_36761 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure emg net/minecraft/class_5183 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37812 + f [Ljava/lang/String; STRUCTURE_LOCATION_PORTALS e field_23999 + f [Ljava/lang/String; STRUCTURE_LOCATION_GIANT_PORTALS f field_23998 + f F PROBABILITY_OF_GIANT_PORTAL g field_31512 + f I MIN_Y_INDEX h field_31511 + f Ljava/util/List; setups i field_37813 + m (Lnet/minecraft/util/RandomSource;II)I getRandomWithinInterval a method_27210 + p 0 random + p 1 min + p 2 max + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;ZIILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;)I findSuitableY a method_27211 + p 0 random + p 1 chunkGenerator + p 2 verticalPlacement + p 3 airPocket + p 4 height + p 5 blockCountY + p 6 box + p 7 level + p 8 randomState + m (Lnet/minecraft/world/level/chunk/ChunkGenerator;Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/NoiseColumn; method_27205 a method_27205 + m (Lnet/minecraft/world/level/levelgen/WorldgenRandom;F)Z sample a method_41682 + p 0 random + p 1 threshold + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$Properties;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/RandomState;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41683 a method_41683 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure;)Ljava/util/List; method_41684 a method_41684 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder;)Z isCold a method_27209 + p 0 pos + p 1 biome + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41685 b method_41685 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Ljava/util/List;)V + p 1 settings + p 2 setups + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup;)V + p 1 settings + p 2 setup + m ()V +c net/minecraft/world/level/levelgen/structure/structures/RuinedPortalStructure$Setup emg$a net/minecraft/class_5183$class_7155 + f Lcom/mojang/serialization/Codec; CODEC a field_37814 + f Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; placement b comp_576 + f F airPocketProbability c comp_577 + f F mossiness d comp_578 + f Z overgrown e comp_579 + f Z vines f comp_580 + f Z canBeCold g comp_581 + f Z replaceWithBlackstone h comp_582 + f F weight i comp_583 + m ()Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement; placement a comp_576 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41686 a method_41686 + m ()F airPocketProbability b comp_577 + m ()F mossiness c comp_578 + m ()Z overgrown d comp_579 + m ()Z vines e comp_580 + m ()Z canBeCold f comp_581 + m ()Z replaceWithBlackstone g comp_582 + m ()F weight h comp_583 + m (Lnet/minecraft/world/level/levelgen/structure/structures/RuinedPortalPiece$VerticalPlacement;FFZZZZF)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces emh net/minecraft/class_3415 + f I NUMBER_OF_BLOCKS_ALLOWED_IN_WORLD_GEN_REGION a field_51512 + f Lnet/minecraft/core/BlockPos; PIVOT b field_14536 + f [Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_BEACHED c field_14534 + f [Lnet/minecraft/resources/ResourceLocation; STRUCTURE_LOCATION_OCEAN d field_14535 + f Ljava/util/Map; MARKERS_TO_LOOT e field_34939 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;Z)Lnet/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces$ShipwreckPiece; addRandomPiece a method_59864 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 pieces + p 4 random + p 5 isBeached + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckPieces$ShipwreckPiece emh$a net/minecraft/class_3415$class_3416 + f Z isBeached h field_14538 + m (ILnet/minecraft/util/RandomSource;)I calculateBeachedPosition a method_59865 + p 1 maxHeight + p 2 random + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35452 + p 0 rotation + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35453 a method_35453 + m (I)V adjustPositionHeight c method_59866 + p 1 height + m ()Z isTooBigToFitInWorldGenRegion l method_59867 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Z)V + p 1 structureTemplateManager + p 2 location + p 3 pos + p 4 rotation + p 5 isBeached + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure emi net/minecraft/class_3170 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37815 + f Z isBeached e field_37816 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41687 a method_41687 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38685 + p 1 builder + p 2 context + m (Lnet/minecraft/world/level/levelgen/structure/structures/ShipwreckStructure;)Ljava/lang/Boolean; method_41688 a method_41688 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_41689 b method_41689 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;Z)V + p 1 settings + p 2 isBeached + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces emj net/minecraft/class_3421 + f I MAGIC_START_Y a field_36417 + f I SMALL_DOOR_WIDTH b field_31624 + f I SMALL_DOOR_HEIGHT c field_31625 + f I MAX_DEPTH d field_31626 + f I LOWEST_Y_POSITION e field_31627 + f Z CHECK_AIR f field_31628 + f [Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight; STRONGHOLD_PIECE_WEIGHTS g field_15265 + f Ljava/util/List; currentPieces h field_15267 + f Ljava/lang/Class; imposedPiece i field_15266 + f I totalWeight j field_15264 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$SmoothStoneSelector; SMOOTH_STONE_SELECTOR k field_15263 + m ()V resetPieces a method_14855 + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece; generatePieceFromSmallDoor a method_14851 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m (Ljava/lang/Class;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece; findAndCreatePieceFactory a method_14847 + p 0 pieceClass + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m ()Z updatePieceWeight b method_14852 + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateAndAddPiece b method_14854 + p 0 piece + p 1 pieces + p 2 random + p 3 x + p 4 y + p 5 z + p 6 direction + p 7 genDepth + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$1 emj$1 net/minecraft/class_3421$1 + m (Ljava/lang/Class;II)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$2 emj$2 net/minecraft/class_3421$2 + m (Ljava/lang/Class;II)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$3 emj$3 net/minecraft/class_3421$3 + f [I $SwitchMap$net$minecraft$core$Direction a field_15293 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$ChestCorridor emj$a net/minecraft/class_3421$class_3422 + f I WIDTH a field_31629 + f I HEIGHT b field_31630 + f I DEPTH c field_31631 + f Z hasPlacedChest d field_15268 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$ChestCorridor; createPiece a method_14856 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FillerCorridor emj$b net/minecraft/class_3421$class_3423 + f I steps a field_15269 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; findPieceBox a method_14857 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FiveCrossing emj$c net/minecraft/class_3421$class_3424 + f I WIDTH a field_31632 + f I HEIGHT b field_31633 + f I DEPTH c field_31634 + f Z leftLow d field_15273 + f Z leftHigh i field_15272 + f Z rightLow j field_15271 + f Z rightHigh k field_15270 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$FiveCrossing; createPiece a method_14858 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$LeftTurn emj$d net/minecraft/class_3421$class_3425 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$LeftTurn; createPiece a method_14859 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Library emj$e net/minecraft/class_3421$class_3426 + f I WIDTH a field_31635 + f I HEIGHT b field_31636 + f I TALL_HEIGHT c field_31637 + f I DEPTH d field_31638 + f Z isTall i field_15274 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Library; createPiece a method_14860 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight emj$f net/minecraft/class_3421$class_3427 + f Ljava/lang/Class; pieceClass a field_15276 + f I weight b field_15278 + f I placeCount c field_15277 + f I maxPlaceCount d field_15275 + m ()Z isValid a method_14861 + m (I)Z doPlace a method_14862 + p 1 genDepth + m (Ljava/lang/Class;II)V + p 1 pieceClass + p 2 weight + p 3 maxPlaceCount +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom emj$g net/minecraft/class_3421$class_3428 + f I WIDTH a field_31639 + f I HEIGHT b field_31640 + f I DEPTH c field_31641 + f Z hasPlacedSpawner d field_15279 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom; createPiece a method_14863 + p 0 pieces + p 1 x + p 2 y + p 3 z + p 4 orientation + p 5 genDepth + m (ILnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 box + p 3 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PrisonHall emj$h net/minecraft/class_3421$class_3429 + f I WIDTH a field_31642 + f I HEIGHT b field_31643 + f I DEPTH c field_31644 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PrisonHall; createPiece a method_14864 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RightTurn emj$i net/minecraft/class_3421$class_3430 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RightTurn; createPiece a method_16652 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RoomCrossing emj$j net/minecraft/class_3421$class_3431 + f I WIDTH a field_31645 + f I HEIGHT b field_31646 + f I DEPTH c field_31647 + f I type d field_15280 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$RoomCrossing; createPiece a method_14865 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$SmoothStoneSelector emj$k net/minecraft/class_3421$class_3432 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StairsDown emj$l net/minecraft/class_3421$class_3433 + f I WIDTH a field_31648 + f I HEIGHT b field_31649 + f I DEPTH c field_31650 + f Z isSource d field_15281 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StairsDown; createPiece a method_14866 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;IIILnet/minecraft/core/Direction;)V + p 1 type + p 2 genDepth + p 3 x + p 4 z + p 5 orientation + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece emj$m net/minecraft/class_3421$class_3434 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PieceWeight; previousPiece a field_15284 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$PortalRoom; portalRoomPiece b field_15283 + f Ljava/util/List; pendingChildren c field_15282 + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Straight emj$n net/minecraft/class_3421$class_3435 + f I WIDTH a field_31651 + f I HEIGHT b field_31652 + f I DEPTH c field_31653 + f Z leftChild d field_15286 + f Z rightChild i field_15285 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Straight; createPiece a method_14867 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 direction + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StraightStairsDown emj$o net/minecraft/class_3421$class_3436 + f I WIDTH a field_31654 + f I HEIGHT b field_31655 + f I DEPTH c field_31656 + m (Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;IIILnet/minecraft/core/Direction;I)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StraightStairsDown; createPiece a method_14868 + p 0 pieces + p 1 random + p 2 x + p 3 y + p 4 z + p 5 orientation + p 6 genDepth + m (ILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Direction;)V + p 1 genDepth + p 2 random + p 3 box + p 4 orientation + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece emj$p net/minecraft/class_3421$class_3437 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; entryDoor h field_15287 + m (Lnet/minecraft/world/level/WorldGenLevel;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType;III)V generateSmallDoor a method_14872 + p 1 level + p 2 random + p 3 box + p 4 type + p 5 x + p 6 y + p 7 z + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Z isOkBox a method_14871 + p 0 box + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildForward a method_14874 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; randomSmallDoor b method_14869 + p 1 random + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildLeft b method_14870 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + m (Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StartPiece;Lnet/minecraft/world/level/levelgen/structure/StructurePieceAccessor;Lnet/minecraft/util/RandomSource;II)Lnet/minecraft/world/level/levelgen/structure/StructurePiece; generateSmallDoorChildRight c method_14873 + p 1 startPiece + p 2 pieces + p 3 random + p 4 offsetY + p 5 offsetX + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + p 1 type + p 2 genDepth + p 3 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V + p 1 type + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType emj$p$a net/minecraft/class_3421$class_3437$class_3438 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; OPENING a field_15288 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; WOOD_DOOR b field_15290 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; GRATES c field_15289 + f Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; IRON_DOOR d field_15291 + f [Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; $VALUES e field_15292 + m ()[Lnet/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$StrongholdPiece$SmallDoorType; $values a method_36762 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdPieces$Turn emj$q net/minecraft/class_3421$class_3466 + f I WIDTH a field_31657 + f I HEIGHT b field_31658 + f I DEPTH c field_31659 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;ILnet/minecraft/world/level/levelgen/structure/BoundingBox;)V + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePieceType;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/world/level/levelgen/structure/structures/StrongholdStructure emk net/minecraft/class_3188 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37817 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41690 a method_41690 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_41691 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/SwampHutPiece eml net/minecraft/class_3447 + f Z spawnedWitch h field_15322 + f Z spawnedCat i field_16445 + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V spawnCat a method_16181 + p 1 level + p 2 box + m (Lnet/minecraft/util/RandomSource;II)V + p 1 random + p 2 x + p 3 z + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag +c net/minecraft/world/level/levelgen/structure/structures/SwampHutStructure emm net/minecraft/class_3197 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37818 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41693 a method_41693 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;)V generatePieces a method_38693 + p 0 builder + p 1 context + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces emn net/minecraft/class_3471 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/util/RandomSource;)V generateMansion a method_15029 + p 0 structureTemplateManager + p 1 pos + p 2 rotation + p 3 pieces + p 4 random + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FirstFloorRoomCollection emn$a net/minecraft/class_3471$class_3472 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection emn$b net/minecraft/class_3471$class_3473 + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x1 a method_15037 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Ljava/lang/String; get1x2SideEntrance a method_15033 + p 1 random + p 2 isStairs + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x1Secret b method_15032 + p 1 random + m (Lnet/minecraft/util/RandomSource;Z)Ljava/lang/String; get1x2FrontEntrance b method_15031 + p 1 random + p 2 isStairs + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get1x2Secret c method_15035 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get2x2 d method_15034 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/String; get2x2Secret e method_15036 + p 1 random + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionGrid emn$c net/minecraft/class_3471$class_3474 + f I DEFAULT_SIZE a field_31665 + f I CLEAR b field_31666 + f I CORRIDOR c field_31667 + f I ROOM d field_31668 + f I START_ROOM e field_31669 + f I TEST_ROOM f field_31670 + f I BLOCKED g field_31671 + f I ROOM_1x1 h field_31672 + f I ROOM_1x2 i field_31673 + f I ROOM_2x2 j field_31674 + f I ROOM_ORIGIN_FLAG k field_31675 + f I ROOM_DOOR_FLAG l field_31676 + f I ROOM_STAIRS_FLAG m field_31677 + f I ROOM_CORRIDOR_FLAG n field_31678 + f I ROOM_TYPE_MASK o field_31679 + f I ROOM_ID_MASK p field_31680 + f Lnet/minecraft/util/RandomSource; random q field_15438 + f Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; baseGrid r field_15440 + f Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; thirdFloorGrid s field_15439 + f [Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid; floorRooms t field_15443 + f I entranceX u field_15442 + f I entranceY v field_15441 + m ()V setupThirdFloor a method_15048 + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)Z cleanEdges a method_15046 + p 1 grid + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;II)Z isHouse a method_15047 + p 0 layout + p 1 x + p 2 y + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IIII)Z isRoomId a method_15039 + p 1 layout + p 2 x + p 3 y + p 4 floor + p 5 roomId + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IILnet/minecraft/core/Direction;I)V recursiveCorridor a method_15045 + p 1 layout + p 2 x + p 3 y + p 4 direction + p 5 length + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)V identifyRooms a method_15042 + p 1 grid + p 2 floorRooms + m (Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;IIII)Lnet/minecraft/core/Direction; get1x2RoomDirection b method_15040 + p 1 layout + p 2 x + p 3 y + p 4 floor + p 5 roomId + m (Lnet/minecraft/util/RandomSource;)V + p 1 random +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionPiecePlacer emn$d net/minecraft/class_3471$class_3475 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager a field_15444 + f Lnet/minecraft/util/RandomSource; random b field_15447 + f I startX c field_15446 + f I startY d field_15445 + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V entrance a method_15054 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/core/Direction;IIII)V traverseOuterWalls a method_15051 + p 1 pieces + p 2 data + p 3 layout + p 4 direction + p 5 startX + p 6 startY + p 7 entranceX + p 8 entranceY + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom2x2Secret a method_15053 + p 1 pieces + p 2 pos + p 3 rotation + p 4 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid;)V createRoof a method_15055 + p 1 pieces + p 2 pos + p 3 rotation + p 4 layout + p 5 nextFloorLayout + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom1x1 a method_15057 + p 1 pieces + p 2 pos + p 3 rotation + p 4 direction + p 5 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;)V addRoom2x2 a method_15056 + p 1 pieces + p 2 pos + p 3 rotation + p 4 frontDirection + p 5 sideDirection + p 6 floorRooms + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$FloorRoomCollection;Z)V addRoom1x2 a method_15059 + p 1 pieces + p 2 pos + p 3 rotation + p 4 frontDirection + p 5 sideDirection + p 6 floorRooms + p 7 isStairs + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$MansionGrid;)V createMansion a method_15050 + p 1 pos + p 2 rotation + p 3 pieces + p 4 grid + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseWallPiece b method_15052 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseTurn c method_15058 + p 1 pieces + p 2 data + m (Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData;)V traverseInnerTurn d method_15060 + p 1 pieces + p 2 data + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/util/RandomSource;)V + p 1 structureTemplateManager + p 2 random +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$PlacementData emn$e net/minecraft/class_3471$class_3476 + f Lnet/minecraft/world/level/block/Rotation; rotation a field_15450 + f Lnet/minecraft/core/BlockPos; position b field_15449 + f Ljava/lang/String; wallType c field_15448 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SecondFloorRoomCollection emn$f net/minecraft/class_3471$class_3477 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$SimpleGrid emn$g net/minecraft/class_3471$class_3478 + f [[I grid a field_15451 + f I width b field_15454 + f I height c field_15453 + f I valueIfOutside d field_15452 + m (II)I get a method_15066 + p 1 x + p 2 y + m (III)V set a method_15065 + p 1 x + p 2 y + p 3 value + m (IIII)V setif a method_15061 + p 1 x + p 2 y + p 3 oldValue + p 4 newValue + m (IIIII)V set a method_15062 + p 1 minX + p 2 minY + p 3 maxX + p 4 maxY + p 5 value + m (III)Z edgesTo b method_15067 + p 1 x + p 2 y + p 3 expectedValue + m (III)V + p 1 width + p 2 height + p 3 valueIfOutside +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$ThirdFloorRoomCollection emn$h net/minecraft/class_3471$class_3479 + m ()V +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionPieces$WoodlandMansionPiece emn$i net/minecraft/class_3471$class_3480 + m (Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; makeSettings a method_35473 + p 0 mirror + p 1 rotation + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; makeLocation a method_35474 + p 0 name + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; method_35475 a method_35475 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V + p 1 structureTemplateManager + p 2 templateName + p 3 templatePosition + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Ljava/lang/String;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;)V + p 1 structureTemplateManager + p 2 templateName + p 3 templatePosition + p 4 rotation + p 5 mirror + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager;Lnet/minecraft/nbt/CompoundTag;)V + p 1 structureTemplateManager + p 2 tag +c net/minecraft/world/level/levelgen/structure/structures/WoodlandMansionStructure emo net/minecraft/class_3223 + f Lcom/mojang/serialization/MapCodec; CODEC d field_37819 + m (Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;)V method_41695 a method_41695 + m (Lnet/minecraft/world/level/levelgen/structure/pieces/StructurePiecesBuilder;Lnet/minecraft/world/level/levelgen/structure/Structure$GenerationContext;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;)V generatePieces a method_41696 + p 1 builder + p 2 context + p 3 pos + p 4 rotation + m (Lnet/minecraft/world/level/levelgen/structure/Structure$StructureSettings;)V + p 1 settings + m ()V +c net/minecraft/world/level/levelgen/structure/structures/package-info emp net/minecraft/class_7156 +c net/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest emq net/minecraft/class_3818 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24994 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest; INSTANCE b field_16868 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/AlwaysTrueTest; method_28959 b method_28959 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest emr net/minecraft/class_4992 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24995 + f F minChance b field_23334 + f F maxChance d field_23335 + f I minDist e field_23336 + f I maxDist f field_23337 + f Lnet/minecraft/core/Direction$Axis; axis g field_23338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28960 a method_28960 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Lnet/minecraft/core/Direction$Axis; method_28961 a method_28961 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Integer; method_28962 b method_28962 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Integer; method_28963 c method_28963 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Float; method_28964 d method_28964 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/AxisAlignedLinearPosTest;)Ljava/lang/Float; method_28965 e method_28965 + m (FFIILnet/minecraft/core/Direction$Axis;)V + p 1 minChance + p 2 maxChance + p 3 minDist + p 4 maxDist + p 5 axis + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor ems net/minecraft/class_5192 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24996 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor; INSTANCE b field_24040 + f Ljava/util/Map; replacements c field_24041 + m (Ljava/util/HashMap;)V method_27255 a method_27255 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlackstoneReplaceProcessor; method_28966 b method_28966 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockAgeProcessor emt net/minecraft/class_5193 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24997 + f F PROBABILITY_OF_REPLACING_FULL_BLOCK b field_31681 + f F PROBABILITY_OF_REPLACING_STAIRS c field_31682 + f F PROBABILITY_OF_REPLACING_OBSIDIAN d field_31683 + f [Lnet/minecraft/world/level/block/state/BlockState; NON_MOSSY_REPLACEMENTS e field_27338 + f F mossiness f field_24042 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceFullStoneBlock a method_27256 + p 1 random + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/block/state/BlockState; getRandomFacingStairs a method_27257 + p 0 random + p 1 stairsBlock + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceStairs a method_27258 + p 1 random + p 2 state + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getRandomBlock a method_27259 + p 0 random + p 1 states + m (Lnet/minecraft/util/RandomSource;[Lnet/minecraft/world/level/block/state/BlockState;[Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/block/state/BlockState; getRandomBlock a method_27260 + p 1 random + p 2 normalStates + p 3 mossyStates + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockAgeProcessor;)Ljava/lang/Float; method_28967 a method_28967 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceSlab b method_27261 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceWall c method_27262 + p 1 random + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/block/state/BlockState; maybeReplaceObsidian d method_27263 + p 1 random + m (F)V + p 1 mossiness + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor emu net/minecraft/class_3793 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24998 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; STRUCTURE_BLOCK b field_16718 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; AIR c field_16719 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor; STRUCTURE_AND_AIR d field_16721 + f Lcom/google/common/collect/ImmutableList; toIgnore e field_16720 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockIgnoreProcessor;)Ljava/util/List; method_28968 a method_28968 + m (Ljava/util/List;)V + p 1 ignoredBlocks + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockMatchTest emv net/minecraft/class_3819 + f Lcom/mojang/serialization/MapCodec; CODEC a field_24999 + f Lnet/minecraft/world/level/block/Block; block b field_16869 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockMatchTest;)Lnet/minecraft/world/level/block/Block; method_28969 a method_28969 + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor emw net/minecraft/class_3488 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25000 + f Ljava/util/Optional; rottableBlocks b field_38437 + f F integrity c field_15523 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42711 a method_42711 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor;)Ljava/lang/Float; method_42712 a method_42712 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockRotProcessor;)Ljava/util/Optional; method_42713 b method_42713 + m (Lnet/minecraft/core/HolderSet;F)V + p 1 rottableBlocks + p 2 integrity + m (F)V + p 1 integrity + m (Ljava/util/Optional;F)V + p 1 rottableBlocks + p 2 integrity + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/BlockStateMatchTest emx net/minecraft/class_3820 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25001 + f Lnet/minecraft/world/level/block/state/BlockState; blockState b field_16870 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/BlockStateMatchTest;)Lnet/minecraft/world/level/block/state/BlockState; method_28971 a method_28971 + m (Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 blockState + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor emy net/minecraft/class_8243 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43329 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; delegate b field_43330 + f Lnet/minecraft/util/valueproviders/IntProvider; limit c field_43331 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49888 a method_49888 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor;)Lnet/minecraft/util/valueproviders/IntProvider; method_49889 a method_49889 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/CappedProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor; method_49890 b method_49890 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;Lnet/minecraft/util/valueproviders/IntProvider;)V + p 1 delegate + p 2 limit + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor emz net/minecraft/class_3795 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25002 + f Lnet/minecraft/world/level/levelgen/Heightmap$Types; heightmap b field_16723 + f I offset c field_16725 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28972 a method_28972 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor;)Ljava/lang/Integer; method_28973 a method_28973 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/GravityProcessor;)Lnet/minecraft/world/level/levelgen/Heightmap$Types; method_28974 b method_28974 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;I)V + p 1 heightmap + p 2 offset + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor ena net/minecraft/class_3794 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25003 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor; INSTANCE b field_16871 + f Lorg/slf4j/Logger; LOGGER c field_43332 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/JigsawReplacementProcessor; method_28975 b method_28975 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor enb net/minecraft/class_5399 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25618 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor; INSTANCE b field_25619 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/LavaSubmergedBlockProcessor; method_29966 b method_29966 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest enc net/minecraft/class_4993 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25004 + f F minChance b field_23339 + f F maxChance d field_23340 + f I minDist e field_23341 + f I maxDist f field_23342 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28976 a method_28976 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Integer; method_28977 a method_28977 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Integer; method_28978 b method_28978 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Float; method_28979 c method_28979 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LinearPosTest;)Ljava/lang/Float; method_28980 d method_28980 + m (FFII)V + p 1 minChance + p 2 maxChance + p 3 minDist + p 4 maxDist + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings end net/minecraft/class_9822 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; IGNORE_WATERLOGGING a field_52237 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; APPLY_WATERLOGGING b field_52238 + f Lcom/mojang/serialization/Codec; CODEC c field_52239 + f Ljava/lang/String; name d field_52240 + f [Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; $VALUES e field_52241 + m ()[Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; $values a method_61019 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor ene net/minecraft/class_3822 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25005 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor; INSTANCE b field_16876 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/NopProcessor; method_28981 b method_28981 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest enf net/minecraft/class_4994 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25006 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest; INSTANCE b field_23343 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosAlwaysTrueTest; method_28982 b method_28982 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest eng net/minecraft/class_4995 + f Lcom/mojang/serialization/Codec; CODEC c field_25007 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; getType a method_26404 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z test a method_26406 + p 1 localPos + p 2 relativePos + p 3 structurePos + p 4 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType enh net/minecraft/class_4996 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; ALWAYS_TRUE_TEST a field_23344 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; LINEAR_POS_TEST b field_23345 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; AXIS_ALIGNED_LINEAR_POS_TEST c field_23346 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28983 a method_28983 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTestType; register a method_26409 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule eni net/minecraft/class_3821 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough; DEFAULT_BLOCK_ENTITY_MODIFIER a field_43333 + f Lcom/mojang/serialization/Codec; CODEC b field_25008 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; inputPredicate c field_16872 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; locPredicate d field_16873 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest; posPredicate e field_23347 + f Lnet/minecraft/world/level/block/state/BlockState; outputState f field_16874 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier; blockEntityModifier g field_43334 + m ()Lnet/minecraft/world/level/block/state/BlockState; getOutputState a method_16763 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; getOutputTag a method_16760 + p 1 random + p 2 tag + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28984 a method_28984 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)Z test a method_16762 + p 1 inputState + c The incoming state from the structure. + p 2 existingState + c The current state in the world. + p 3 localPos + c The local position of the target state, relative to the structure origin. + p 4 relativePos + c The actual position of the target state. {@code existingState} is the current in world state at this position. + p 5 structurePos + c The origin position of the structure. + p 6 random + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier; method_28985 a method_28985 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/block/state/BlockState; method_28986 b method_28986 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest; method_28987 c method_28987 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_28988 d method_28988 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProcessorRule;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest; method_28989 e method_28989 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 inputPredicate + p 2 locPredicate + p 3 outputState + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest;Lnet/minecraft/world/level/block/state/BlockState;)V + p 1 inputPredicate + p 2 locPredicate + p 3 posPredicate + p 4 outputState + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTest;Lnet/minecraft/world/level/levelgen/structure/templatesystem/PosRuleTest;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier;)V + p 1 inputPredicate + p 2 locPredicate + p 3 posPredicate + p 4 outputState + p 5 blockEntityModifier + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/ProtectedBlockProcessor enj net/minecraft/class_6378 + f Lnet/minecraft/tags/TagKey; cannotReplace a field_33771 + f Lcom/mojang/serialization/MapCodec; CODEC b field_33772 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/ProtectedBlockProcessor;)Lnet/minecraft/tags/TagKey; method_37002 a method_37002 + m (Lnet/minecraft/tags/TagKey;)V + p 1 cannotReplace + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest enk net/minecraft/class_3824 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25009 + f Lnet/minecraft/world/level/block/Block; block b field_16880 + f F probability d field_16879 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28990 a method_28990 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest;)Ljava/lang/Float; method_28991 a method_28991 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockMatchTest;)Lnet/minecraft/world/level/block/Block; method_28992 b method_28992 + m (Lnet/minecraft/world/level/block/Block;F)V + p 1 block + p 2 probability + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest enl net/minecraft/class_3823 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25010 + f Lnet/minecraft/world/level/block/state/BlockState; blockState b field_16878 + f F probability d field_16877 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_28993 a method_28993 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest;)Ljava/lang/Float; method_28994 a method_28994 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RandomBlockStateMatchTest;)Lnet/minecraft/world/level/block/state/BlockState; method_28995 b method_28995 + m (Lnet/minecraft/world/level/block/state/BlockState;F)V + p 1 blockState + p 2 probability + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleProcessor enm net/minecraft/class_3826 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25011 + f Lcom/google/common/collect/ImmutableList; rules b field_16881 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleProcessor;)Ljava/util/List; method_28996 a method_28996 + m (Ljava/util/List;)V + p 1 rules + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleTest enn net/minecraft/class_3825 + c Represents a (possibly randomly influenced) predicate of a given block state to be replaced during world generation. + f Lcom/mojang/serialization/Codec; CODEC c field_25012 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; getType a method_16766 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/util/RandomSource;)Z test a method_16768 + p 1 state + p 2 random + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType eno net/minecraft/class_3827 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; ALWAYS_TRUE_TEST a field_16982 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; BLOCK_TEST b field_16981 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; BLOCKSTATE_TEST c field_16985 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; TAG_TEST d field_16983 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; RANDOM_BLOCK_TEST e field_16980 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; RANDOM_BLOCKSTATE_TEST f field_16984 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28997 a method_28997 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/RuleTestType; register a method_16821 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings enp net/minecraft/class_3492 + f Lnet/minecraft/world/level/block/Mirror; mirror a field_15564 + f Lnet/minecraft/world/level/block/Rotation; rotation b field_15569 + f Lnet/minecraft/core/BlockPos; rotationPivot c field_15566 + f Z ignoreEntities d field_15571 + f Lnet/minecraft/world/level/levelgen/structure/BoundingBox; boundingBox e field_15565 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings; liquidSettings f field_52242 + f Lnet/minecraft/util/RandomSource; random g field_15570 + f I palette h field_15575 + f Ljava/util/List; processors i field_16446 + f Z knownShape j field_16587 + f Z finalizeEntities k field_24043 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; copy a method_15128 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRandom a method_15112 + p 1 random + m (Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setMirror a method_15125 + p 1 mirror + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRotation a method_15123 + p 1 rotation + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setBoundingBox a method_15126 + p 1 boundingBox + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/LiquidSettings;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setLiquidSettings a method_61020 + p 1 liquidSettings + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; addProcessor a method_16184 + p 1 processor + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$Palette; getRandomPalette a method_15121 + p 1 palettes + p 2 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setRotationPivot a method_15119 + p 1 rotationPivot + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setIgnoreEntities a method_15133 + p 1 ignoreEntities + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; clearProcessors b method_16183 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; popProcessor b method_16664 + p 1 processor + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/util/RandomSource; getRandom b method_15115 + p 1 seedPos + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setKnownShape b method_15131 + p 1 knownShape + m ()Lnet/minecraft/world/level/block/Mirror; getMirror c method_15114 + m (Z)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings; setFinalizeEntities c method_27264 + p 1 finalizeEntities + m ()Lnet/minecraft/world/level/block/Rotation; getRotation d method_15113 + m ()Lnet/minecraft/core/BlockPos; getRotationPivot e method_15134 + m ()Z isIgnoreEntities f method_15135 + m ()Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox g method_15124 + m ()Z getKnownShape h method_16444 + m ()Ljava/util/List; getProcessors i method_16182 + m ()Z shouldApplyWaterlogging j method_61021 + m ()Z shouldFinalizeEntities k method_27265 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessor enq net/minecraft/class_3491 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; getType a method_16772 + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo; processBlock a method_15110 + p 1 level + p 2 offset + p 3 pos + p 4 blockInfo + p 5 relativeBlockInfo + p 6 settings + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;)Ljava/util/List; finalizeProcessing a method_49887 + p 1 serverLevel + p 2 offset + p 3 pos + p 4 originalBlockInfos + p 5 processedBlockInfos + p 6 settings + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorList enr net/minecraft/class_5497 + f Ljava/util/List; list a field_26662 + m ()Ljava/util/List; list a method_31027 + m (Ljava/util/List;)V + p 1 list +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType ens net/minecraft/class_3828 + f Lcom/mojang/serialization/Codec; SINGLE_CODEC a field_25013 + f Lcom/mojang/serialization/Codec; LIST_OBJECT_CODEC b field_26663 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC c field_25876 + f Lcom/mojang/serialization/Codec; LIST_CODEC d field_25877 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_IGNORE e field_16986 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_ROT f field_16988 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; GRAVITY g field_16989 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; JIGSAW_REPLACEMENT h field_16991 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; RULE i field_16990 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; NOP j field_16987 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLOCK_AGE k field_24044 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; BLACKSTONE_REPLACE l field_24045 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; LAVA_SUBMERGED_BLOCK m field_25620 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; PROTECTED_BLOCKS n field_33773 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; CAPPED o field_43335 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_28998 a method_28998 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureProcessorType; register a method_16822 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate ent net/minecraft/class_3499 + f Ljava/lang/String; PALETTE_TAG a field_31687 + f Ljava/lang/String; PALETTE_LIST_TAG b field_31688 + f Ljava/lang/String; ENTITIES_TAG c field_31689 + f Ljava/lang/String; BLOCKS_TAG d field_31690 + f Ljava/lang/String; BLOCK_TAG_POS e field_31691 + f Ljava/lang/String; BLOCK_TAG_STATE f field_31692 + f Ljava/lang/String; BLOCK_TAG_NBT g field_31693 + f Ljava/lang/String; ENTITY_TAG_POS h field_31694 + f Ljava/lang/String; ENTITY_TAG_BLOCKPOS i field_31695 + f Ljava/lang/String; ENTITY_TAG_NBT j field_31696 + f Ljava/lang/String; SIZE_TAG k field_31697 + f Ljava/util/List; palettes l field_15586 + f Ljava/util/List; entityInfoList m field_15589 + f Lnet/minecraft/core/Vec3i; size n field_15587 + f Ljava/lang/String; author o field_15588 + m ()Lnet/minecraft/core/Vec3i; getSize a method_15160 + m (Lnet/minecraft/world/entity/Entity;)Z method_15163 a method_15163 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)V fillEntityList a method_15164 + p 1 level + p 2 startPos + p 3 endPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;ZLnet/minecraft/world/level/block/Block;)V fillFromWorld a method_15174 + p 1 level + p 2 pos + p 3 size + p 4 withEntities + p 5 toIgnore + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;III)V updateShapeAtEdge a method_20532 + p 0 level + p 1 flags + p 2 shape + p 3 x + p 4 y + p 5 z + m (Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/BlockPos;)V updateShapeAtEdge a method_58190 + p 0 level + p 1 flags + p 2 shape + p 3 pos + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Z)V placeEntities a method_15179 + p 1 serverLevel + p 2 pos + p 3 mirror + p 4 rotation + p 5 offset + p 6 boundingBox + p 7 withEntities + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/util/RandomSource;I)Z placeInWorld a method_15172 + p 1 serverLevel + p 2 offset + p 3 pos + p 4 settings + p 5 random + p 6 flags + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Ljava/util/List;)Ljava/util/List; processBlockInfos a method_16446 + p 0 serverLevel + p 1 offset + p 2 pos + p 3 settings + p 4 blockInfos + m (Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/nbt/CompoundTag;)Ljava/util/Optional; createEntityIgnoreException a method_17916 + p 0 level + p 1 tag + m (Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/Vec3i; getSize a method_15166 + p 1 rotation + m (Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/phys/Vec3;ZLnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/world/entity/Entity;)V method_17917 a method_17917 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateRelativePosition a method_15171 + p 0 decorator + p 1 pos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateConnectedPosition a method_15180 + p 1 decorator + p 2 start + p 3 settings + p 4 end + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_28053 a method_28053 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;Ljava/util/List;Ljava/util/List;Ljava/util/List;)V addToLists a method_28054 + p 0 blockInfo + p 1 normalBlocks + p 2 blocksWithNbt + p 3 blocksWithSpecialShape + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; transform a method_15176 + p 0 target + p 1 mirror + p 2 rotation + p 3 centerOffset + m (Ljava/lang/String;)V setAuthor a method_15161 + p 1 author + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)Ljava/util/List; buildInfoList a method_28055 + p 0 normalBlocks + p 1 blocksWithNbt + p 2 blocksWithSpecialShape + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;IIILnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/LevelAccessor;ILnet/minecraft/core/Direction;III)V method_15173 a method_15173 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;)Lnet/minecraft/core/BlockPos; getZeroPositionWithTransform a method_15167 + p 1 targetPos + p 2 mirror + p 3 rotation + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;II)Lnet/minecraft/core/BlockPos; getZeroPositionWithTransform a method_15162 + p 0 pos + p 1 mirror + p 2 rotation + p 3 sizeX + p 4 sizeZ + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; transform a method_15168 + p 0 targetPos + p 1 mirror + p 2 rotation + p 3 offset + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_27267 + p 1 startPos + p 2 rotation + p 3 pivotPos + p 4 mirror + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Rotation;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Mirror;Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox a method_34400 + p 0 startPos + p 1 rotation + p 2 pivotPos + p 3 mirror + p 4 size + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/world/level/block/Block;)Ljava/util/List; filterBlocks a method_16445 + p 1 pos + p 2 settings + p 3 block + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/world/level/block/Block;Z)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; filterBlocks a method_15165 + p 1 pos + p 2 settings + p 3 block + p 4 relativePosition + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/CompoundTag;)V load a method_15183 + p 1 blockGetter + p 2 tag + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/nbt/ListTag;)V loadPalette a method_15177 + p 1 blockGetter + p 2 paletteTag + p 3 blocksTag + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; save a method_15175 + p 1 tag + m ([D)Lnet/minecraft/nbt/ListTag; newDoubleList a method_15184 + p 1 values + m ([I)Lnet/minecraft/nbt/ListTag; newIntegerList a method_15169 + p 1 values + m ()Ljava/lang/String; getAuthor b method_15181 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/levelgen/structure/BoundingBox; getBoundingBox b method_16187 + p 1 settings + p 2 startPos + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_28056 b method_28056 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)I method_16185 c method_16185 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$1 ent$1 net/minecraft/class_3499$1 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_15594 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror b field_15593 + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$Palette ent$a net/minecraft/class_3499$class_5162 + f Ljava/util/List; blocks a field_23913 + f Ljava/util/Map; cache b field_23914 + m ()Ljava/util/List; blocks a method_27125 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; blocks a method_27126 + p 1 block + m (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo;)Z method_27127 a method_27127 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/List; method_27128 b method_27128 + m (Ljava/util/List;)V + p 1 blocks +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$SimplePalette ent$b net/minecraft/class_3499$class_3500 + f Lnet/minecraft/world/level/block/state/BlockState; DEFAULT_BLOCK_STATE a field_15590 + f Lnet/minecraft/core/IdMapper; ids b field_15591 + f I lastId c field_15592 + m (I)Lnet/minecraft/world/level/block/state/BlockState; stateFor a method_15185 + p 1 id + m (Lnet/minecraft/world/level/block/state/BlockState;)I idFor a method_15187 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;I)V addMapping a method_15186 + p 1 state + p 2 id + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureBlockInfo ent$c net/minecraft/class_3499$class_3501 + f Lnet/minecraft/core/BlockPos; pos a comp_1341 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_1342 + f Lnet/minecraft/nbt/CompoundTag; nbt c comp_1343 + m ()Lnet/minecraft/core/BlockPos; pos a comp_1341 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_1342 + m ()Lnet/minecraft/nbt/CompoundTag; nbt c comp_1343 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 state + p 3 nbt +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate$StructureEntityInfo ent$d net/minecraft/class_3499$class_3502 + f Lnet/minecraft/world/phys/Vec3; pos a field_15599 + f Lnet/minecraft/core/BlockPos; blockPos b field_15600 + f Lnet/minecraft/nbt/CompoundTag; nbt c field_15598 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V + p 1 pos + p 2 blockPos + p 3 nbt +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager enu net/minecraft/class_3485 + f Ljava/lang/String; STRUCTURE_RESOURCE_DIRECTORY_NAME a field_31684 + f Lorg/slf4j/Logger; LOGGER b field_15514 + f Ljava/lang/String; STRUCTURE_GENERATED_DIRECTORY_NAME c field_52243 + f Ljava/lang/String; STRUCTURE_FILE_EXTENSION d field_31685 + f Ljava/lang/String; STRUCTURE_TEXT_FILE_EXTENSION e field_31686 + f Ljava/util/Map; structureRepository f field_15513 + f Lcom/mojang/datafixers/DataFixer; fixerUpper g field_15515 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager h field_25189 + f Ljava/nio/file/Path; generatedDir i field_15512 + f Ljava/util/List; sources j field_39417 + f Lnet/minecraft/core/HolderGetter; blockLookup k field_40369 + f Lnet/minecraft/resources/FileToIdConverter; RESOURCE_LISTER l field_52244 + m ()Ljava/util/stream/Stream; listTemplates a method_44226 + m (ILjava/lang/String;)Ljava/lang/String; method_44227 a method_44227 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; getOrCreate a method_15091 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Ljava/nio/file/Path; createAndValidatePathToGeneratedStructure a method_15085 + p 1 location + p 2 extension + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Throwable;)V method_44229 a method_44229 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)Ljava/util/Optional; loadFromSnbt a method_44230 + p 1 id + p 2 path + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V onResourceManagerReload a method_29300 + p 1 resourceManager + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$InputStreamOpener;Ljava/util/function/Consumer;)Ljava/util/Optional; load a method_44231 + p 1 inputStream + p 2 onError + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$Source;)Ljava/util/stream/Stream; method_44232 a method_44232 + m (Ljava/io/InputStream;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; readStructure a method_15090 + p 1 stream + m (Ljava/lang/String;Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Z method_44233 a method_44233 + m (Ljava/nio/file/Path;)Z method_44242 a method_44242 + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Consumer;)V listFolderContents a method_44236 + p 1 folder + p 2 namespace + p 3 extension + p 4 output + m (Ljava/nio/file/Path;Ljava/lang/Throwable;)V method_44237 a method_44237 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Ljava/lang/String; relativize a method_44238 + p 1 root + p 2 path + m (Ljava/util/function/Consumer;Ljava/lang/String;Ljava/util/function/Function;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_61022 a method_61022 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate; readStructure a method_21891 + p 1 nbt + m ()Ljava/util/stream/Stream; listResources b method_44239 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; get b method_15094 + p 1 id + m (Ljava/nio/file/Path;)Ljava/io/InputStream; method_44244 b method_44244 + m ()Ljava/util/stream/Stream; listTestStructures c method_44241 + m (Lnet/minecraft/resources/ResourceLocation;)Z save c method_15093 + p 1 id + m ()Ljava/util/stream/Stream; listGenerated d method_44243 + m (Lnet/minecraft/resources/ResourceLocation;)V remove d method_15087 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; tryLoad e method_44245 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromResource f method_15088 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromTestStructures g method_44246 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; loadFromGenerated h method_15092 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/io/InputStream; method_44249 i method_44249 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/HolderGetter;)V + p 1 resourceManager + p 2 levelStorageAccess + p 3 fixerUpper + p 4 blockLookup + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$InputStreamOpener enu$a net/minecraft/class_3485$class_7513 +c net/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager$Source enu$b net/minecraft/class_3485$class_7514 + f Ljava/util/function/Function; loader a comp_852 + f Ljava/util/function/Supplier; lister b comp_853 + m ()Ljava/util/function/Function; loader a comp_852 + m ()Ljava/util/function/Supplier; lister b comp_853 + m (Ljava/util/function/Function;Ljava/util/function/Supplier;)V +c net/minecraft/world/level/levelgen/structure/templatesystem/TagMatchTest env net/minecraft/class_3798 + f Lcom/mojang/serialization/MapCodec; CODEC a field_25014 + f Lnet/minecraft/tags/TagKey; tag b field_16747 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/TagMatchTest;)Lnet/minecraft/tags/TagKey; method_28999 a method_28999 + m (Lnet/minecraft/tags/TagKey;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/package-info enw net/minecraft/class_6133 +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendLoot enx net/minecraft/class_8244 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43336 + f Lorg/slf4j/Logger; LOGGER b field_43337 + f Lnet/minecraft/resources/ResourceKey; lootTable d field_43338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49893 a method_49893 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendLoot;)Lnet/minecraft/resources/ResourceKey; method_49894 a method_49894 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_49895 a method_49895 + m (Lnet/minecraft/resources/ResourceKey;)V + p 1 lootTable + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendStatic eny net/minecraft/class_8245 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43339 + f Lnet/minecraft/nbt/CompoundTag; tag b field_43340 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_49896 a method_49896 + m (Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/AppendStatic;)Lnet/minecraft/nbt/CompoundTag; method_49897 a method_49897 + m (Lnet/minecraft/nbt/CompoundTag;)V + p 1 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Clear enz net/minecraft/class_8246 + f Lcom/mojang/serialization/MapCodec; CODEC a field_43341 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Clear; INSTANCE b field_43342 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough eoa net/minecraft/class_8247 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/Passthrough; INSTANCE a field_43343 + f Lcom/mojang/serialization/MapCodec; CODEC b field_43344 + m ()V + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifier eob net/minecraft/class_8248 + f Lcom/mojang/serialization/Codec; CODEC c field_43345 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; getType a method_49891 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; apply a method_49892 + p 1 random + p 2 tag + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType eoc net/minecraft/class_8249 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; CLEAR a field_43346 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; PASSTHROUGH b field_43347 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; APPEND_STATIC c field_43348 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; APPEND_LOOT d field_43349 + m (Lcom/mojang/serialization/MapCodec;)Lcom/mojang/serialization/MapCodec; method_49898 a method_49898 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/RuleBlockEntityModifierType; register a method_49899 + p 0 name + p 1 codec + m ()V +c net/minecraft/world/level/levelgen/structure/templatesystem/rule/blockentity/package-info eod net/minecraft/class_8250 +c net/minecraft/world/level/levelgen/synth/BlendedNoise eoe net/minecraft/class_5822 + c This class wraps three individual perlin noise octaves samplers.\nIt computes the octaves of the main noise, and then uses that as a linear interpolation value between the minimum and maximum limit noises. + f Lnet/minecraft/util/KeyDispatchDataCodec; CODEC a field_37206 + f Lcom/mojang/serialization/Codec; SCALE_RANGE e field_38269 + f Lcom/mojang/serialization/MapCodec; DATA_CODEC f field_38270 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; minLimitNoise g field_28774 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; maxLimitNoise h field_28775 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; mainNoise i field_28776 + f D xzMultiplier j field_38271 + f D yMultiplier k field_38272 + f D xzFactor l field_38273 + f D yFactor m field_38274 + f D smearScaleMultiplier n field_38275 + f D maxValue o field_36630 + f D xzScale p field_34752 + f D yScale q field_34753 + m (DDDDD)Lnet/minecraft/world/level/levelgen/synth/BlendedNoise; createUnseeded a method_42384 + p 0 xzScale + p 2 yScale + p 4 xzFactor + p 6 yFactor + p 8 smearScaleMultiplier + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/levelgen/synth/BlendedNoise; withNewRandom a method_42386 + p 1 random + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_42385 a method_42385 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42387 a method_42387 + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39117 + p 1 builder + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42388 b method_42388 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42389 c method_42389 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42390 d method_42390 + m (Lnet/minecraft/world/level/levelgen/synth/BlendedNoise;)Ljava/lang/Double; method_42391 e method_42391 + m (Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;Lnet/minecraft/world/level/levelgen/synth/PerlinNoise;DDDDD)V + p 1 minLimitNoise + p 2 maxLimitNoise + p 3 mainNoise + p 4 xzScale + p 6 yScale + p 8 xzFactor + p 10 yFactor + p 12 smearScaleMultiplier + m (Lnet/minecraft/util/RandomSource;DDDDD)V + p 1 random + p 2 xzScale + p 4 yScale + p 6 xzFactor + p 8 yFactor + p 10 smearScaleMultiplier + m ()V +c net/minecraft/world/level/levelgen/synth/ImprovedNoise eof net/minecraft/class_3756 + c Generates a single octave of Perlin noise. + f D xo a field_16591 + f D yo b field_16589 + f D zo c field_16588 + f F SHIFT_UP_EPSILON d field_31701 + f [B p e field_16590 + c A permutation array used in noise calculation.\nThis is populated with the values [0, 256) and shuffled per instance of {@code ImprovedNoise}.\n\n@see #p(int) + m (DDD)D noise a method_33658 + p 1 x + p 3 y + p 5 z + m (DDDDD)D noise a method_16447 + p 1 x + p 3 y + p 5 z + p 7 yScale + p 9 yMax + m (DDD[D)D noiseWithDerivative a method_35477 + p 1 x + p 3 y + p 5 z + p 7 values + m (I)I p a method_16449 + p 1 index + m (IDDD)D gradDot a method_16448 + p 0 gradIndex + p 1 xFactor + p 3 yFactor + p 5 zFactor + m (IIIDDDD)D sampleAndLerp a method_16450 + p 1 gridX + p 2 gridY + p 3 gridZ + p 4 deltaX + p 6 weirdDeltaY + p 8 deltaZ + p 10 deltaY + m (IIIDDD[D)D sampleWithDerivative a method_35478 + p 1 gridX + p 2 gridY + p 3 gridZ + p 4 deltaX + p 6 deltaY + p 8 deltaZ + p 10 noiseValues + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39118 + p 1 builder + m (Lnet/minecraft/util/RandomSource;)V + p 1 random +c net/minecraft/world/level/levelgen/synth/NoiseUtils eog net/minecraft/class_5836 + m (DD)D biasTowardsExtreme a method_35479 + c Takes an input value and biases it using a sine function towards two larger magnitude values. + p 0 value + c A value in the range [-1, 1] + p 2 bias + c The effect of the bias. At {@code 0.0}, there will be no bias. Mojang only uses {@code 1.0} here. + m (Ljava/lang/StringBuilder;DDD[B)V parityNoiseOctaveConfigString a method_39119 + p 0 builder + p 1 xo + p 3 yo + p 5 zo + p 7 p + m (Ljava/lang/StringBuilder;DDD[I)V parityNoiseOctaveConfigString a method_39120 + p 0 builder + p 1 xo + p 3 yo + p 5 zo + p 7 p + m ()V +c net/minecraft/world/level/levelgen/synth/NormalNoise eoh net/minecraft/class_5216 + c This samples the sum of two individual samplers of perlin noise octaves.\nThe input coordinates are scaled by {@link #INPUT_FACTOR}, and the result is scaled by {@link #valueFactor}. + f D INPUT_FACTOR a field_31702 + f D TARGET_DEVIATION b field_31703 + f D valueFactor c field_24175 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; first d field_24176 + f Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; second e field_24177 + f D maxValue f field_36631 + f Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters g field_37207 + m ()D maxValue a method_40554 + m (DDD)D getValue a method_27406 + p 1 x + p 3 y + p 5 z + m (I)D expectedDeviation a method_27407 + p 0 octaves + m (Lnet/minecraft/util/RandomSource;I[D)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; create a method_31927 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; createLegacyNetherBiome a method_39186 + p 0 random + p 1 parameters + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39124 + p 1 builder + m ()Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters; parameters b method_38475 + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;)Lnet/minecraft/world/level/levelgen/synth/NormalNoise; create b method_38476 + p 0 random + p 1 parameters + m (Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters;Z)V + p 1 random + p 2 parameters + p 3 useLegacyNetherBiome +c net/minecraft/world/level/levelgen/synth/NormalNoise$NoiseParameters eoh$a net/minecraft/class_5216$class_5487 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC a field_35424 + f Lcom/mojang/serialization/Codec; CODEC b field_26438 + f I firstOctave c comp_516 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes d comp_517 + m ()I firstOctave a comp_516 + m (DLit/unimi/dsi/fastutil/doubles/DoubleArrayList;)V method_41153 a method_41153 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_30833 a method_30833 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes b comp_517 + m (ILjava/util/List;)V + p 1 firstOctave + p 2 amplitudes + m (ID[D)V + p 1 firstOctave + p 2 amplitude + p 4 otherAmplitudes + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;)V + m ()V +c net/minecraft/world/level/levelgen/synth/PerlinNoise eoi net/minecraft/class_3537 + c This class generates multiple octaves of perlin noise. Each individual octave is an instance of {@link net.minecraft.world.level.levelgen.synth.ImprovedNoise}.\nMojang uses the term 'Perlin' to describe octaves or fBm (Fractal Brownian Motion) noise. + f I ROUND_OFF a field_31704 + f [Lnet/minecraft/world/level/levelgen/synth/ImprovedNoise; noiseLevels b field_15744 + f I firstOctave c field_34758 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes d field_26445 + f D lowestFreqValueFactor e field_20659 + f D lowestFreqInputFactor f field_20660 + f D maxValue g field_36632 + m ()D maxValue a method_40555 + m (D)D maxBrokenValue a method_40556 + p 1 yMultiplier + m (DDD)D getValue a method_15416 + p 1 x + p 3 y + p 5 z + m (DDDDDZ)D getValue a method_16453 + p 1 x + p 3 y + p 5 z + p 7 yScale + p 9 yMax + p 11 useFixedY + m (I)Lnet/minecraft/world/level/levelgen/synth/ImprovedNoise; getOctaveNoise a method_16668 + c @return A single octave of Perlin noise. + p 1 octave + m (Lnet/minecraft/util/RandomSource;)V skipOctave a method_34401 + p 0 random + m (Lnet/minecraft/util/RandomSource;ID[D)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create a method_35480 + p 0 random + p 1 firstOctave + p 2 firstAmplitude + p 4 amplitudes + m (Lnet/minecraft/util/RandomSource;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; createLegacyForLegacyNetherBiome a method_39126 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create a method_39127 + p 0 random + p 1 octaves + m (Lnet/minecraft/util/RandomSource;Ljava/util/stream/IntStream;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; createLegacyForBlendedNoise a method_39187 + p 0 random + p 1 octaves + m (Lit/unimi/dsi/fastutil/ints/IntSortedSet;)Lcom/mojang/datafixers/util/Pair; makeAmplitudes a method_30848 + p 0 octaves + m (Ljava/lang/Double;)Ljava/lang/String; method_39129 a method_39129 + m (Ljava/lang/StringBuilder;)V parityConfigString a method_39130 + p 1 builder + m ()I firstOctave b method_38477 + m (D)D wrap b method_16452 + p 0 value + m (Lnet/minecraft/util/RandomSource;ILit/unimi/dsi/fastutil/doubles/DoubleList;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create b method_30847 + p 0 random + p 1 firstOctave + p 2 amplitudes + m (Lnet/minecraft/util/RandomSource;Ljava/util/stream/IntStream;)Lnet/minecraft/world/level/levelgen/synth/PerlinNoise; create b method_39128 + p 0 random + p 1 octaves + m (Ljava/lang/Double;)Z method_39131 b method_39131 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; amplitudes c method_38478 + m (D)D edgeValue c method_40557 + p 1 multiplier + m (Lnet/minecraft/util/RandomSource;Lcom/mojang/datafixers/util/Pair;Z)V + p 1 random + p 2 octavesAndAmplitudes + p 3 useNewFactory +c net/minecraft/world/level/levelgen/synth/PerlinSimplexNoise eoj net/minecraft/class_3543 + c This class generates multiple octaves of simplex noise. Each individual octave is an instance of {@link net.minecraft.world.level.levelgen.synth.SimplexNoise}.\nMojang uses the term 'Perlin' to describe octaves or fBm (Fractal Brownian Motion) noise and this class does not actually generate Perlin noise. + f [Lnet/minecraft/world/level/levelgen/synth/SimplexNoise; noiseLevels a field_15770 + f D highestFreqValueFactor b field_20661 + f D highestFreqInputFactor c field_20662 + m (DDZ)D getValue a method_16451 + p 1 x + p 3 y + p 5 useNoiseOffsets + m (Lnet/minecraft/util/RandomSource;Ljava/util/List;)V + p 1 random + p 2 octaves + m (Lnet/minecraft/util/RandomSource;Lit/unimi/dsi/fastutil/ints/IntSortedSet;)V + p 1 random + p 2 octaves +c net/minecraft/world/level/levelgen/synth/SimplexNoise eok net/minecraft/class_3541 + c A generator for a single octave of Simplex noise. + f [[I GRADIENT a field_15766 + f D xo b field_15763 + f D yo c field_15762 + f D zo d field_15761 + f D SQRT_3 e field_15764 + f D F2 f field_15768 + f D G2 g field_15767 + f [I p h field_15765 + c A permutation array used in noise generation.\nThis is populated with the values [0, 256) and shuffled. Despite the array declared as 512 length, only the first 256 values are used.\n\n@see #p(int) + m (DD)D getValue a method_15433 + p 1 x + p 3 y + m (DDD)D getValue a method_22416 + p 1 x + p 3 y + p 5 z + m (I)I p a method_16456 + p 1 index + m (IDDDD)D getCornerNoise3D a method_16455 + p 1 gradientIndex + p 2 x + p 4 y + p 6 z + p 8 offset + m ([IDDD)D dot a method_15431 + c @return The dot product of the provided three-dimensional gradient vector and the vector (x, y, z) + p 0 gradient + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/util/RandomSource;)V + p 1 random + m ()V +c net/minecraft/world/level/levelgen/synth/package-info eol net/minecraft/class_6135 +c net/minecraft/world/level/lighting/BlockLightEngine eom net/minecraft/class_3552 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos g field_16511 + m (JLnet/minecraft/world/level/block/state/BlockState;)I getEmission a method_15474 + p 1 packedPos + p 3 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_51532 a method_51532 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/BlockLightSectionStorage;)V + p 1 chunkSource + p 2 storage +c net/minecraft/world/level/lighting/BlockLightSectionStorage eon net/minecraft/class_3547 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource +c net/minecraft/world/level/lighting/BlockLightSectionStorage$BlockDataLayerStorageMap eon$a net/minecraft/class_3547$class_3548 + m ()Lnet/minecraft/world/level/lighting/BlockLightSectionStorage$BlockDataLayerStorageMap; copy a method_15443 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V +c net/minecraft/world/level/lighting/ChunkSkyLightSources eoo net/minecraft/class_8528 + f I NEGATIVE_INFINITY a field_44710 + f I SIZE b field_44711 + f I minY c field_44712 + f Lnet/minecraft/util/BitStorage; heightmap d field_44713 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos1 e field_44714 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos2 f field_44715 + m ()I getHighestLowestSourceY a method_51533 + m (I)V fill a method_51534 + p 1 value + m (II)I getLowestSourceY a method_51535 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/BlockGetter;III)Z update a method_51536 + p 1 level + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/BlockGetter;IILnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z updateEdge a method_51537 + p 1 level + p 2 index + p 3 minY + p 4 pos1 + p 5 state1 + p 6 pos2 + p 7 state2 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)I findLowestSourceBelow a method_51538 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isEdgeOccluded a method_51539 + p 0 level + p 1 pos1 + p 2 state1 + p 3 pos2 + p 4 state2 + m (Lnet/minecraft/world/level/chunk/ChunkAccess;)V fillFrom a method_51540 + p 1 chunk + m (Lnet/minecraft/world/level/chunk/ChunkAccess;III)I findLowestSourceY a method_51541 + p 1 chunk + p 2 sectionIndex + p 3 x + p 4 z + m (I)I get b method_51542 + p 1 index + m (II)V set b method_51543 + p 1 index + p 2 value + m (I)I extendSourcesBelowWorld c method_51544 + p 1 y + m (II)I index c method_51545 + p 0 x + p 1 z + m (Lnet/minecraft/world/level/LevelHeightAccessor;)V + p 1 level +c net/minecraft/world/level/lighting/DataLayerStorageMap eop net/minecraft/class_3556 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; map a field_15791 + f I CACHE_SIZE b field_31705 + f [J lastSectionKeys c field_15789 + f [Lnet/minecraft/world/level/chunk/DataLayer; lastSections d field_15790 + f Z cacheEnabled e field_16447 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; copyDataLayer a method_15502 + p 1 index + m (JLnet/minecraft/world/level/chunk/DataLayer;)V setLayer a method_15499 + p 1 sectionPos + p 3 array + m ()Lnet/minecraft/world/level/lighting/DataLayerStorageMap; copy b method_15504 + m (J)Z hasLayer b method_15503 + p 1 sectionPos + m ()V clearCache c method_15505 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getLayer c method_15501 + p 1 sectionPos + m ()V disableCache d method_16188 + m (J)Lnet/minecraft/world/level/chunk/DataLayer; removeLayer d method_15500 + p 1 sectionPos + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;)V + p 1 map +c net/minecraft/world/level/lighting/DynamicGraphMinFixedPoint eoq net/minecraft/class_3554 + f I NO_COMPUTED_LEVEL a field_31706 + f Lnet/minecraft/world/level/lighting/LeveledPriorityQueue; priorityQueue b field_43396 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; computedLevels c field_15784 + f Z hasWork d field_15782 + f J SOURCE e field_43397 + f I levelCount f field_15783 + m (II)I calculatePriority a method_50014 + p 1 oldLevel + p 2 newLevel + m (J)Z isSource a method_15494 + p 1 pos + m (JI)V setLevel a method_15485 + p 1 chunkPos + p 3 level + m (JIZ)V checkNeighborsAfterUpdate a method_15487 + p 1 pos + p 3 level + p 4 isDecreasing + m (JJI)I getComputedLevel a method_15486 + c Computes level propagated from neighbors of specified position with given existing level, excluding the given source position. + p 1 pos + p 3 excludedSourcePos + p 5 level + m (JJIIIZ)V checkEdge a method_15482 + p 1 fromPos + p 3 toPos + p 5 newLevel + p 6 previousLevel + p 7 propagationLevel + p 8 isDecreasing + m (JJIZ)V checkEdge a method_15478 + p 1 fromPos + p 3 toPos + p 5 newLevel + p 6 isDecreasing + m (Ljava/util/function/LongPredicate;)V removeIf a method_24206 + p 1 predicate + m (Ljava/util/function/LongPredicate;Lit/unimi/dsi/fastutil/longs/LongList;J)V method_24207 a method_24207 + m ()Z hasWork b method_15489 + m (I)I runUpdates b method_15492 + p 1 toUpdateCount + m (JJI)I computeLevelFromNeighbor b method_15488 + c Returns level propagated from start position with specified level to the neighboring end position. + p 1 startPos + p 3 endPos + p 5 startLevel + m (JJIZ)V checkNeighbor b method_15484 + p 1 fromPos + p 3 toPos + p 5 sourceLevel + p 6 isDecreasing + m ()I getQueueSize c method_24208 + m (J)I getLevel c method_15480 + p 1 chunkPos + m (J)V removeFromQueue e method_15483 + p 1 position + m (J)V checkNode f method_15491 + p 1 levelPos + m (III)V + p 1 firstQueuedLevel + p 2 width + p 3 height +c net/minecraft/world/level/lighting/DynamicGraphMinFixedPoint$1 eoq$1 net/minecraft/class_3554$1 + f I val$minMapSize a field_43398 + f Lnet/minecraft/world/level/lighting/DynamicGraphMinFixedPoint; field_16727 b field_16727 + m (Lnet/minecraft/world/level/lighting/DynamicGraphMinFixedPoint;IFI)V +c net/minecraft/world/level/lighting/LayerLightEventListener eor net/minecraft/class_3562 + m (Lnet/minecraft/core/SectionPos;)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerData a method_15544 + p 1 sectionPos + m (Lnet/minecraft/core/BlockPos;)I getLightValue b method_15543 + p 1 levelPos +c net/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener eor$a net/minecraft/class_3562$class_3563 + f Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; INSTANCE a field_15812 + f [Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; $VALUES b field_15811 + m ()[Lnet/minecraft/world/level/lighting/LayerLightEventListener$DummyLightLayerEventListener; $values c method_36763 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/lighting/LayerLightSectionStorage eos net/minecraft/class_3560 + f Lnet/minecraft/world/level/chunk/LightChunkGetter; chunkSource a field_15803 + f Lit/unimi/dsi/fastutil/longs/Long2ByteMap; sectionStates b field_44716 + f Lnet/minecraft/world/level/lighting/DataLayerStorageMap; visibleSectionData c field_15806 + f Lnet/minecraft/world/level/lighting/DataLayerStorageMap; updatingSectionData d field_15796 + f Lit/unimi/dsi/fastutil/longs/LongSet; changedSections e field_15802 + f Lit/unimi/dsi/fastutil/longs/LongSet; sectionsAffectedByLightUpdates f field_16448 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; queuedSections g field_15807 + f Z hasInconsistencies h field_44717 + f Lnet/minecraft/world/level/LightLayer; layer i field_15805 + f Lit/unimi/dsi/fastutil/longs/LongSet; columnsWithSources j field_44718 + f Lit/unimi/dsi/fastutil/longs/LongSet; columnsToRetainQueuedDataFor k field_19342 + c Section column positions (section positions with Y=0) that need to be kept even if some of their sections could otherwise be removed. + f Lit/unimi/dsi/fastutil/longs/LongSet; toRemove l field_15798 + c Set of section positions that can be removed, because their light won't affect any blocks. + m ()Z hasInconsistencies a method_15528 + m (J)I getLightValue a method_15538 + p 1 levelPos + m (JB)V putSectionState a method_51546 + p 1 sectionPos + p 3 sectionState + m (JI)V setStoredLevel a method_15525 + p 1 levelPos + p 3 lightLevel + m (JLnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15532 + p 1 sectionPos + p 3 data + m (JZ)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayer a method_15522 + p 1 sectionPos + p 3 cached + m (Lnet/minecraft/world/level/lighting/DataLayerStorageMap;J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayer a method_15533 + p 1 map + p 2 sectionPos + m (Lnet/minecraft/world/level/lighting/LightEngine;)V markNewInconsistencies a method_15527 + p 1 lightEngine + m ()V swapSectionMap b method_15530 + m (J)Z storingLightForSection b method_15524 + p 1 sectionPos + m (JZ)V setLightEnabled b method_15535 + p 1 sectionPos + p 3 lightEnabled + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerToWrite c method_51547 + p 1 sectionPos + m (JZ)V retainData c method_20600 + p 1 sectionColumnPos + p 3 retain + m (J)Lnet/minecraft/world/level/chunk/DataLayer; getDataLayerData d method_20533 + p 1 sectionPos + m (JZ)V updateSectionStatus d method_15526 + p 1 sectionPos + p 3 isEmpty + m (J)I getStoredLevel e method_15537 + p 1 levelPos + m (J)V markSectionAndNeighborsAsAffected f method_51415 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/chunk/DataLayer; createDataLayer g method_15529 + p 1 sectionPos + m (J)V onNodeAdded h method_15523 + p 1 sectionPos + m (J)V onNodeRemoved i method_15534 + p 1 sectionPos + m (J)Z lightOnInSection j method_51548 + p 1 sectionPos + m (J)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType k method_51549 + p 1 sectionPos + m (J)V initializeSection l method_51550 + p 1 sectionPos + m (J)V removeSection m method_51551 + p 1 sectionPos + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/DataLayerStorageMap;)V + p 1 layer + p 2 chunkSource + p 3 updatingSectionData +c net/minecraft/world/level/lighting/LayerLightSectionStorage$SectionState eos$a net/minecraft/class_3560$class_8529 + f B EMPTY a field_44719 + f I MIN_NEIGHBORS b field_44720 + f I MAX_NEIGHBORS c field_44721 + f B HAS_DATA_BIT d field_44722 + f B NEIGHBOR_COUNT_BITS e field_44723 + m (B)Z hasData a method_51552 + p 0 sectionState + m (BI)B neighborCount a method_51553 + p 0 sectionState + p 1 neighborCount + m (BZ)B hasData a method_51554 + p 0 sectionState + p 1 hasData + m (B)I neighborCount b method_51555 + p 0 sectionState + m (B)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; type c method_51556 + p 0 sectionState + m ()V +c net/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType eos$b net/minecraft/class_3560$class_8530 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; EMPTY a field_44724 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; LIGHT_ONLY b field_44725 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; LIGHT_AND_DATA c field_44726 + f Ljava/lang/String; display d field_44727 + f [Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; $VALUES e field_44728 + m ()Ljava/lang/String; display a method_51557 + m ()[Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; $values b method_51558 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 display + m ()V +c net/minecraft/world/level/lighting/LevelLightEngine eot net/minecraft/class_3568 + f Lnet/minecraft/world/level/lighting/LightEngine; blockEngine a field_15814 + f I LIGHT_SECTION_PADDING b field_31714 + f Lnet/minecraft/world/level/LevelHeightAccessor; levelHeightAccessor c field_27339 + f Lnet/minecraft/world/level/lighting/LightEngine; skyEngine d field_15813 + m (Lnet/minecraft/world/level/LightLayer;)Lnet/minecraft/world/level/lighting/LayerLightEventListener; getLayerListener a method_15562 + p 1 type + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)Ljava/lang/String; getDebugData a method_22876 + p 1 lightLayer + p 2 sectionPos + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;Lnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15558 + p 1 lightLayer + p 2 sectionPos + p 3 dataLayer + m (Lnet/minecraft/core/BlockPos;I)I getRawBrightness a method_22363 + p 1 blockPos + p 2 amount + m (Lnet/minecraft/core/SectionPos;)Z lightOnInSection a method_51559 + p 1 sectionPos + m (Lnet/minecraft/world/level/ChunkPos;Z)V retainData b method_20601 + p 1 pos + p 2 retain + m (Lnet/minecraft/world/level/LightLayer;Lnet/minecraft/core/SectionPos;)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType b method_51560 + p 1 lightLayer + p 2 sectionPos + m ()I getLightSectionCount c method_31928 + m ()I getMinLightSection d method_31929 + m ()I getMaxLightSection e method_31930 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;ZZ)V + p 1 lightChunkGetter + p 2 blockLight + p 3 skyLight +c net/minecraft/world/level/lighting/LeveledPriorityQueue eou net/minecraft/class_8257 + f I levelCount a field_43399 + f [Lit/unimi/dsi/fastutil/longs/LongLinkedOpenHashSet; queues b field_43400 + f I firstQueuedLevel c field_43401 + m ()J removeFirstLong a method_50019 + m (I)V checkFirstQueuedLevel a method_50020 + p 1 endLevelIndex + m (JI)V enqueue a method_50021 + p 1 value + p 3 levelIndex + m (JII)V dequeue a method_50022 + p 1 value + p 3 levelIndex + p 4 endIndex + m ()Z isEmpty b method_50023 + m (II)V + p 1 levelCount + p 2 expectedSize +c net/minecraft/world/level/lighting/LeveledPriorityQueue$1 eou$1 net/minecraft/class_8257$1 + f I val$minSize a field_43402 + f Lnet/minecraft/world/level/lighting/LeveledPriorityQueue; field_43403 b field_43403 + m (Lnet/minecraft/world/level/lighting/LeveledPriorityQueue;IFI)V +c net/minecraft/world/level/lighting/LightEngine eov net/minecraft/class_3558 + f I MAX_LEVEL a field_44729 + f I MIN_OPACITY b field_44730 + f J PULL_LIGHT_IN_ENTRY c field_44731 + f [Lnet/minecraft/core/Direction; PROPAGATION_DIRECTIONS d field_16513 + f Lnet/minecraft/world/level/chunk/LightChunkGetter; chunkSource e field_15795 + f Lnet/minecraft/world/level/lighting/LayerLightSectionStorage; storage f field_15793 + f I MIN_QUEUE_SIZE g field_44732 + f Lit/unimi/dsi/fastutil/longs/LongOpenHashSet; blockNodesToCheck h field_44733 + f Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue; decreaseQueue i field_44734 + f Lit/unimi/dsi/fastutil/longs/LongArrayFIFOQueue; increaseQueue j field_44735 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos k field_19284 + f I CACHE_SIZE l field_31709 + f [J lastChunkPos m field_17397 + f [Lnet/minecraft/world/level/chunk/LightChunk; lastChunk n field_17398 + m (II)Lnet/minecraft/world/level/chunk/LightChunk; getChunk a method_17529 + p 1 x + p 2 z + m (J)V checkNode a method_51529 + p 1 packedPos + m (JJ)V propagateDecrease a method_51530 + p 1 packedPos + p 3 lightLevel + m (JJI)V propagateIncrease a method_51531 + p 1 packedPos + p 3 queueEntry + p 5 lightLevel + m (JLnet/minecraft/world/level/block/state/BlockState;JLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z shapeOccludes a method_50016 + p 1 packedPos1 + p 3 state1 + p 4 packedPos2 + p 6 state2 + p 7 direction + m (JLnet/minecraft/world/level/chunk/DataLayer;)V queueSectionData a method_15515 + p 1 sectionPos + p 3 data + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)I getLightBlockInto a method_20049 + p 0 level + p 1 state1 + p 2 pos1 + p 3 state2 + p 4 pos2 + p 5 direction + p 6 defaultReturnValue + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z hasDifferentLightProperties a method_51561 + p 0 level + p 1 pos + p 2 state1 + p 3 state2 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape a method_51562 + p 0 level + p 1 pos + p 2 state + p 3 direction + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmptyShape a method_51563 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;JLnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getOcclusionShape a method_20710 + p 1 state + p 2 pos + p 4 direction + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)I getOpacity a method_50017 + p 1 state + p 2 pos + m (J)Ljava/lang/String; getDebugData b method_22875 + p 1 sectionPos + m (JJ)V enqueueDecrease b method_51565 + p 1 packedPos1 + p 3 packedPos2 + m (Lnet/minecraft/world/level/ChunkPos;Z)V retainData b method_20599 + p 1 chunkPos + p 2 retainData + m ()V clearChunkCache c method_17530 + m (J)Lnet/minecraft/world/level/lighting/LayerLightSectionStorage$SectionType; getDebugSectionType c method_51568 + p 1 sectionPos + m (JJ)V enqueueIncrease c method_51566 + p 1 packedPos1 + p 3 packedPos2 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getState c method_50018 + p 1 pos + m ()I propagateIncreases d method_51567 + m ()I propagateDecreases e method_51570 + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/LayerLightSectionStorage;)V + p 1 chunkSource + p 2 storage + m ()V +c net/minecraft/world/level/lighting/LightEngine$QueueEntry eov$a net/minecraft/class_3558$class_8531 + f I FROM_LEVEL_BITS a field_44737 + f I DIRECTION_BITS b field_44738 + f J LEVEL_MASK c field_44739 + f J DIRECTIONS_MASK d field_44740 + f J FLAG_FROM_EMPTY_SHAPE e field_44741 + f J FLAG_INCREASE_FROM_EMISSION f field_44742 + m (I)J decreaseAllDirections a method_51571 + p 0 level + m (ILnet/minecraft/core/Direction;)J decreaseSkipOneDirection a method_51572 + p 0 level + p 1 direction + m (IZ)J increaseLightFromEmission a method_51573 + p 0 level + p 1 fromEmptyShape + m (IZLnet/minecraft/core/Direction;)J increaseSkipOneDirection a method_51574 + p 0 level + p 1 fromEmptyShape + p 2 direction + m (J)I getFromLevel a method_51575 + p 0 entry + m (JI)J withLevel a method_51576 + p 0 entry + p 2 level + m (JLnet/minecraft/core/Direction;)Z shouldPropagateInDirection a method_51577 + p 0 entry + p 2 direction + m (ZZZZZ)J increaseSkySourceInDirections a method_51578 + p 0 down + p 1 north + p 2 south + p 3 west + p 4 east + m (IZLnet/minecraft/core/Direction;)J increaseOnlyOneDirection b method_51579 + p 0 level + p 1 fromEmptyShape + p 2 direction + m (J)Z isFromEmptyShape b method_51580 + p 0 entry + m (JLnet/minecraft/core/Direction;)J withDirection b method_51581 + p 0 entry + p 2 direction + m (J)Z isIncreaseFromEmission c method_51582 + p 0 entry + m (JLnet/minecraft/core/Direction;)J withoutDirection c method_51583 + p 0 entry + p 2 direction + m ()V +c net/minecraft/world/level/lighting/LightEventListener eow net/minecraft/class_3565 + m ()Z hasLightWork K_ method_15518 + m ()I runLightUpdates a method_15516 + m (Lnet/minecraft/world/level/ChunkPos;Z)V setLightEnabled a method_15512 + p 1 chunkPos + p 2 lightEnabled + m (Lnet/minecraft/core/BlockPos;)V checkBlock a method_15513 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Z)V updateSectionStatus a method_15552 + p 1 pos + p 2 isQueueEmpty + m (Lnet/minecraft/core/SectionPos;Z)V updateSectionStatus a method_15551 + p 1 pos + p 2 isQueueEmpty + m (Lnet/minecraft/world/level/ChunkPos;)V propagateLightSources b method_51471 + p 1 chunkPos +c net/minecraft/world/level/lighting/SkyLightEngine eox net/minecraft/class_3572 + f J REMOVE_TOP_SKY_SOURCE_ENTRY g field_44743 + f J REMOVE_SKY_SOURCE_ENTRY h field_44744 + f J ADD_SKY_SOURCE_ENTRY i field_44745 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos j field_44746 + f Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; emptyChunkSources k field_44747 + m (I)Z isSourceLevel a method_51584 + p 0 level + m (III)I getLowestSourceY a method_51585 + p 1 x + p 2 z + p 3 defaultReturnValue + m (IIII)V removeSourcesBelow a method_51586 + p 1 x + p 2 z + p 3 minY + p 4 bottomSectionY + m (JLnet/minecraft/core/Direction;IZI)V propagateFromEmptySections a method_51587 + p 1 packedPos + p 3 direction + p 4 level + p 5 shouldIncrease + p 6 emptySections + m (Lnet/minecraft/core/Direction;II)Z crossedSectionEdge a method_51588 + p 0 direction + p 1 x + p 2 z + m (II)Lnet/minecraft/world/level/lighting/ChunkSkyLightSources; getChunkSources b method_51589 + p 1 chunkX + p 2 chunkZ + m (III)V updateSourcesInColumn b method_51590 + p 1 x + p 2 z + p 3 lowestY + m (IIII)V addSourcesAbove b method_51591 + p 1 x + p 2 z + p 3 maxY + p 4 bottomSectionY + m (J)I countEmptySectionsBelowIfAtBorder d method_51592 + p 1 packedPos + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;Lnet/minecraft/world/level/lighting/SkyLightSectionStorage;)V + p 1 chunkSource + p 2 sectionStorage + m ()V +c net/minecraft/world/level/lighting/SkyLightEngine$1 eox$1 net/minecraft/class_3572$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_15809 + m ()V +c net/minecraft/world/level/lighting/SkyLightSectionStorage eoy net/minecraft/class_3569 + m (I)Z hasLightDataAtOrBelow a method_15567 + p 1 y + m (Lnet/minecraft/world/level/chunk/DataLayer;)Lnet/minecraft/world/level/chunk/DataLayer; repeatFirstLayer a method_37460 + p 0 dataLayer + m ()I getBottomSectionY c method_51593 + m (JZ)I getLightValue e method_31931 + p 1 packedPos + p 3 updateAll + m (J)Z isAboveData l method_15568 + p 1 sectionPos + m (J)I getTopSectionY m method_51594 + p 1 sectionPos + m (Lnet/minecraft/world/level/chunk/LightChunkGetter;)V + p 1 chunkSource +c net/minecraft/world/level/lighting/SkyLightSectionStorage$SkyDataLayerStorageMap eoy$a net/minecraft/class_3569$class_3570 + f I currentLowestY b field_15822 + f Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap; topSections c field_15821 + m ()Lnet/minecraft/world/level/lighting/SkyLightSectionStorage$SkyDataLayerStorageMap; copy a method_15572 + m (Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap;Lit/unimi/dsi/fastutil/longs/Long2IntOpenHashMap;I)V + p 1 map + p 2 topSections + p 3 currentLowestY +c net/minecraft/world/level/lighting/SpatialLongSet eoz net/minecraft/class_6136 + f Lnet/minecraft/world/level/lighting/SpatialLongSet$InternalMap; map a field_31715 + m (IF)V + p 1 expectedSize + p 2 loadFactor +c net/minecraft/world/level/lighting/SpatialLongSet$InternalMap eoz$a net/minecraft/class_6136$class_6137 + f I X_BITS a field_31716 + f I Z_BITS b field_31717 + f I Y_BITS c field_31718 + f I Y_OFFSET d field_31719 + f I Z_OFFSET e field_31720 + f I X_OFFSET g field_31721 + f J OUTER_MASK h field_31722 + f I lastPos i field_31723 + f J lastOuterKey j field_31724 + f I minSize k field_31725 + m ()J removeFirstBit a method_35481 + m (IJ)Z replaceBit a method_35482 + p 1 index + p 2 value + m (J)J getOuterKey a method_35483 + p 0 value + m (JI)J getFullKey a method_35484 + p 0 value + p 2 trailingZeros + m (IJ)Z removeFromEntry b method_35485 + p 1 index + p 2 value + m (J)I getInnerKey b method_35486 + p 0 value + m (J)Z addBit c method_35487 + p 1 value + m (J)Z removeBit d method_35488 + p 1 value + m (J)Z removeFromNullEntry e method_35489 + p 1 value + m (IF)V + p 1 minSize + p 2 loadFactor + m ()V +c net/minecraft/world/level/lighting/package-info epa net/minecraft/class_6138 +c net/minecraft/world/level/material/EmptyFluid epb net/minecraft/class_3576 + m ()V +c net/minecraft/world/level/material/FlowingFluid epc net/minecraft/class_3609 + f Lnet/minecraft/world/level/block/state/properties/BooleanProperty; FALLING a field_15902 + f Lnet/minecraft/world/level/block/state/properties/IntegerProperty; LEVEL b field_15900 + f I CACHE_SIZE e field_31726 + f Ljava/lang/ThreadLocal; OCCLUSION_CACHE f field_15901 + f Ljava/util/Map; shapes g field_17587 + m (IZ)Lnet/minecraft/world/level/material/FluidState; getFlowing a method_15728 + p 1 level + p 2 falling + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isWaterHole a method_15736 + p 1 level + p 2 fluid + p 3 pos + p 4 state + p 5 spreadPos + p 6 spreadState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)Z canPassThrough a method_15746 + p 1 level + p 2 fluid + p 3 pos + p 4 state + p 5 direction + p 6 spreadPos + p 7 spreadState + p 8 fluidState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/Fluid;)Z canHoldFluid a method_15754 + p 1 level + p 2 pos + p 3 state + p 4 fluid + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/Fluid;)Z canSpreadTo a method_15738 + p 1 level + p 2 fromPos + p 3 fromBlockState + p 4 direction + p 5 toPos + p 6 toBlockState + p 7 toFluidState + p 8 fluid + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z isSolidFace a method_15749 + p 1 level + p 2 neighborPos + p 3 side + m (Lnet/minecraft/world/level/Level;)Z canConvertToSource a method_15737 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/material/FluidState; getNewLiquid a method_15727 + p 1 level + p 2 pos + p 3 blockState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)V spread a method_15725 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/block/state/BlockState;)V spreadToSides a method_15744 + p 1 level + p 2 pos + p 3 fluidState + p 4 blockState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)I getSpreadDelay a method_15753 + p 1 level + p 2 pos + p 3 currentState + p 4 newState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;S)Z method_15731 a method_15731 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;S)Lcom/mojang/datafixers/util/Pair; method_15734 a method_15734 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V beforeDestroyingBlock a method_15730 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/material/FluidState;)V spreadTo a method_15745 + p 1 level + p 2 pos + p 3 blockState + p 4 direction + p 5 fluidState + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)I sourceNeighborCount a method_15740 + c Returns the number of immediately adjacent source blocks of the same fluid that lie on the horizontal plane. + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;ILnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lit/unimi/dsi/fastutil/shorts/Short2ObjectMap;Lit/unimi/dsi/fastutil/shorts/Short2BooleanMap;)I getSlopeDistance a method_15742 + p 1 level + p 2 spreadPos + p 3 distance + p 4 direction + p 5 currentSpreadState + p 6 sourcePos + p 7 stateCache + p 8 waterHoleCache + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;S)Lcom/mojang/datafixers/util/Pair; method_15755 a method_15755 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/world/level/block/state/BlockState;S)Z method_15743 a method_15743 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)S getCacheKey a method_15747 + p 0 sourcePos + p 1 spreadPos + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z canPassThroughWall a method_15732 + p 1 direction + p 2 level + p 3 pos + p 4 state + p 5 spreadPos + p 6 spreadState + m (Z)Lnet/minecraft/world/level/material/FluidState; getSource a method_15729 + p 1 falling + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/phys/shapes/VoxelShape; method_17773 b method_17773 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Ljava/util/Map; getSpread b method_15726 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/LevelReader;)I getSlopeFindDistance b method_15733 + p 1 level + m (Lnet/minecraft/world/level/LevelReader;)I getDropOff c method_15739 + p 1 level + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z hasSameAbove c method_17774 + p 0 fluidState + p 1 level + p 2 pos + m ()Lnet/minecraft/world/level/material/Fluid; getFlowing d method_15750 + m ()Lnet/minecraft/world/level/material/Fluid; getSource e method_15751 + m (Lnet/minecraft/world/level/material/FluidState;)I getLegacyLevel e method_15741 + p 0 state + m (Lnet/minecraft/world/level/material/FluidState;)Z affectsFlow g method_15748 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)Z isSourceBlockOfThisType h method_15752 + p 1 state + m ()Lit/unimi/dsi/fastutil/objects/Object2ByteLinkedOpenHashMap; method_15735 l method_15735 + m ()V + m ()V +c net/minecraft/world/level/material/FlowingFluid$1 epc$1 net/minecraft/class_3609$1 + m (I)V +c net/minecraft/world/level/material/Fluid epd net/minecraft/class_3611 + f Lnet/minecraft/world/level/material/FluidState; defaultFluidState a field_15903 + f Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder b field_36431 + f Lnet/minecraft/core/IdMapper; FLUID_STATE_REGISTRY c field_15904 + f Lnet/minecraft/world/level/block/state/StateDefinition; stateDefinition d field_15905 + m ()Lnet/minecraft/world/item/Item; getBucket a method_15774 + m (Lnet/minecraft/tags/TagKey;)Z is a method_15791 + p 1 tag + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/phys/Vec3; getFlow a method_15782 + p 1 blockReader + p 2 pos + p 3 fluidState + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/util/RandomSource;)V animateTick a method_15776 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/LevelReader;)I getTickDelay a method_15789 + p 1 level + m (Lnet/minecraft/world/level/block/state/StateDefinition$Builder;)V createFluidStateDefinition a method_15775 + p 1 builder + m (Lnet/minecraft/world/level/material/Fluid;)Z isSame a method_15780 + p 1 fluid + m (Lnet/minecraft/world/level/material/FluidState;)F getOwnHeight a method_20784 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getHeight a method_15788 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/Direction;)Z canBeReplacedWith a method_15777 + p 1 state + p 2 level + p 3 pos + p 4 fluid + p 5 direction + m ()Z isEmpty b method_15794 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;)V tick b method_15778 + p 1 level + p 2 pos + p 3 state + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/util/RandomSource;)V randomTick b method_15792 + p 1 level + p 2 pos + p 3 state + p 4 random + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/world/level/block/state/BlockState; createLegacyBlock b method_15790 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape b method_17775 + p 1 state + p 2 level + p 3 pos + m ()F getExplosionResistance c method_15784 + m (Lnet/minecraft/world/level/material/FluidState;)Z isSource c method_15793 + p 1 state + m (Lnet/minecraft/world/level/material/FluidState;)I getAmount d method_15779 + p 1 state + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getStateDefinition f method_15783 + m (Lnet/minecraft/world/level/material/FluidState;)V registerDefaultState f method_15781 + p 1 state + m ()Lnet/minecraft/world/level/material/FluidState; defaultFluidState g method_15785 + m ()Lnet/minecraft/core/particles/ParticleOptions; getDripParticle h method_15787 + m ()Z isRandomlyTicking i method_15795 + m ()Ljava/util/Optional; getPickupSound j method_32359 + m ()Lnet/minecraft/core/Holder$Reference; builtInRegistryHolder k method_40178 + m ()V + m ()V +c net/minecraft/world/level/material/FluidState epe net/minecraft/class_3610 + f Lcom/mojang/serialization/Codec; CODEC a field_25018 + f I AMOUNT_MAX b field_31727 + f I AMOUNT_FULL g field_31728 + m ()Lnet/minecraft/world/level/material/Fluid; getType a method_15772 + m (Lnet/minecraft/tags/TagKey;)Z is a method_15767 + p 1 tag + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)F getHeight a method_15763 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/Direction;)Z canBeReplacedWith a method_15764 + p 1 level + p 2 pos + p 3 fluid + p 4 direction + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)V tick a method_15770 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V animateTick a method_15768 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/material/Fluid;)Z isSourceOfType a method_33659 + p 1 fluid + m (Lnet/minecraft/core/HolderSet;)Z is a method_40179 + p 1 fluids + m ()Z isSource b method_15771 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z shouldRenderBackwardUpFace b method_15756 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;)V randomTick b method_15757 + p 1 level + p 2 pos + p 3 random + m (Lnet/minecraft/world/level/material/Fluid;)Z is b method_39360 + p 1 fluid + m ()Z isEmpty c method_15769 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3; getFlow c method_15758 + p 1 level + p 2 pos + m ()F getOwnHeight d method_20785 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/shapes/VoxelShape; getShape d method_17776 + p 1 level + p 2 pos + m ()I getAmount e method_15761 + m ()Z isRandomlyTicking f method_15773 + m ()Lnet/minecraft/world/level/block/state/BlockState; createLegacyBlock g method_15759 + m ()Lnet/minecraft/core/particles/ParticleOptions; getDripParticle h method_15766 + m ()F getExplosionResistance i method_15760 + m ()Lnet/minecraft/core/Holder; holder j method_40180 + m ()Ljava/util/stream/Stream; getTags k method_40181 + m (Lnet/minecraft/world/level/material/Fluid;Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;Lcom/mojang/serialization/MapCodec;)V + p 1 owner + p 2 values + p 3 propertiesCodec + m ()V +c net/minecraft/world/level/material/Fluids epf net/minecraft/class_3612 + f Lnet/minecraft/world/level/material/Fluid; EMPTY a field_15906 + f Lnet/minecraft/world/level/material/FlowingFluid; FLOWING_WATER b field_15909 + f Lnet/minecraft/world/level/material/FlowingFluid; WATER c field_15910 + f Lnet/minecraft/world/level/material/FlowingFluid; FLOWING_LAVA d field_15907 + f Lnet/minecraft/world/level/material/FlowingFluid; LAVA e field_15908 + m (Ljava/lang/String;Lnet/minecraft/world/level/material/Fluid;)Lnet/minecraft/world/level/material/Fluid; register a method_15796 + p 0 key + p 1 fluid + m ()V + m ()V +c net/minecraft/world/level/material/FogType epg net/minecraft/class_5636 + f Lnet/minecraft/world/level/material/FogType; LAVA a field_27885 + f Lnet/minecraft/world/level/material/FogType; WATER b field_27886 + f Lnet/minecraft/world/level/material/FogType; POWDER_SNOW c field_27887 + f Lnet/minecraft/world/level/material/FogType; NONE d field_27888 + f [Lnet/minecraft/world/level/material/FogType; $VALUES e field_27889 + m ()[Lnet/minecraft/world/level/material/FogType; $values a method_36764 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/material/LavaFluid eph net/minecraft/class_3616 + f F MIN_LEVEL_CUTOFF e field_31729 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)V fizz a method_15818 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z hasFlammableNeighbours a method_15819 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z isFlammable b method_15817 + p 1 level + p 2 pos + m ()V +c net/minecraft/world/level/material/LavaFluid$Flowing eph$a net/minecraft/class_3616$class_3617 + m ()V +c net/minecraft/world/level/material/LavaFluid$Source eph$b net/minecraft/class_3616$class_3618 + m ()V +c net/minecraft/world/level/material/MapColor epi net/minecraft/class_3620 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BROWN A field_15977 + f Lnet/minecraft/world/level/material/MapColor; COLOR_GREEN B field_15995 + f Lnet/minecraft/world/level/material/MapColor; COLOR_RED C field_16020 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BLACK D field_16009 + f Lnet/minecraft/world/level/material/MapColor; GOLD E field_15994 + f Lnet/minecraft/world/level/material/MapColor; DIAMOND F field_15983 + f Lnet/minecraft/world/level/material/MapColor; LAPIS G field_15980 + f Lnet/minecraft/world/level/material/MapColor; EMERALD H field_16001 + f Lnet/minecraft/world/level/material/MapColor; PODZOL I field_16017 + f Lnet/minecraft/world/level/material/MapColor; NETHER J field_16012 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_WHITE K field_16003 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_ORANGE L field_15981 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_MAGENTA M field_15985 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_BLUE N field_15991 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_YELLOW O field_16013 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_GREEN P field_16018 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_PINK Q field_15989 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_GRAY R field_16027 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_LIGHT_GRAY S field_15988 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_CYAN T field_15990 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_PURPLE U field_16029 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BLUE V field_16015 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BROWN W field_15992 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_GREEN X field_16028 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_RED Y field_15982 + f Lnet/minecraft/world/level/material/MapColor; TERRACOTTA_BLACK Z field_16007 + f Lnet/minecraft/world/level/material/MapColor; NONE a field_16008 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_NYLIUM aa field_25702 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_STEM ab field_25703 + f Lnet/minecraft/world/level/material/MapColor; CRIMSON_HYPHAE ac field_25704 + f Lnet/minecraft/world/level/material/MapColor; WARPED_NYLIUM ad field_25705 + f Lnet/minecraft/world/level/material/MapColor; WARPED_STEM ae field_25706 + f Lnet/minecraft/world/level/material/MapColor; WARPED_HYPHAE af field_25707 + f Lnet/minecraft/world/level/material/MapColor; WARPED_WART_BLOCK ag field_25708 + f Lnet/minecraft/world/level/material/MapColor; DEEPSLATE ah field_33532 + f Lnet/minecraft/world/level/material/MapColor; RAW_IRON ai field_33533 + f Lnet/minecraft/world/level/material/MapColor; GLOW_LICHEN aj field_33617 + f I col ak field_16011 + f I id al field_16021 + f [Lnet/minecraft/world/level/material/MapColor; MATERIAL_COLORS am field_16006 + f Lnet/minecraft/world/level/material/MapColor; GRASS b field_15999 + f Lnet/minecraft/world/level/material/MapColor; SAND c field_15986 + f Lnet/minecraft/world/level/material/MapColor; WOOL d field_15979 + f Lnet/minecraft/world/level/material/MapColor; FIRE e field_16002 + f Lnet/minecraft/world/level/material/MapColor; ICE f field_16016 + f Lnet/minecraft/world/level/material/MapColor; METAL g field_16005 + f Lnet/minecraft/world/level/material/MapColor; PLANT h field_16004 + f Lnet/minecraft/world/level/material/MapColor; SNOW i field_16022 + f Lnet/minecraft/world/level/material/MapColor; CLAY j field_15976 + f Lnet/minecraft/world/level/material/MapColor; DIRT k field_16000 + f Lnet/minecraft/world/level/material/MapColor; STONE l field_16023 + f Lnet/minecraft/world/level/material/MapColor; WATER m field_16019 + f Lnet/minecraft/world/level/material/MapColor; WOOD n field_15996 + f Lnet/minecraft/world/level/material/MapColor; QUARTZ o field_16025 + f Lnet/minecraft/world/level/material/MapColor; COLOR_ORANGE p field_15987 + f Lnet/minecraft/world/level/material/MapColor; COLOR_MAGENTA q field_15998 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_BLUE r field_16024 + f Lnet/minecraft/world/level/material/MapColor; COLOR_YELLOW s field_16010 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_GREEN t field_15997 + f Lnet/minecraft/world/level/material/MapColor; COLOR_PINK u field_16030 + f Lnet/minecraft/world/level/material/MapColor; COLOR_GRAY v field_15978 + f Lnet/minecraft/world/level/material/MapColor; COLOR_LIGHT_GRAY w field_15993 + f Lnet/minecraft/world/level/material/MapColor; COLOR_CYAN x field_16026 + f Lnet/minecraft/world/level/material/MapColor; COLOR_PURPLE y field_16014 + f Lnet/minecraft/world/level/material/MapColor; COLOR_BLUE z field_15984 + m (I)Lnet/minecraft/world/level/material/MapColor; byId a method_38479 + p 0 id + m (Lnet/minecraft/world/level/material/MapColor$Brightness;)I calculateRGBColor a method_15820 + p 1 brightness + m (I)I getColorFromPackedId b method_38480 + p 0 packedId + m (Lnet/minecraft/world/level/material/MapColor$Brightness;)B getPackedId b method_38481 + p 1 brightness + m (I)Lnet/minecraft/world/level/material/MapColor; byIdUnsafe c method_38482 + p 0 id + m (II)V + p 1 id + p 2 col + m ()V +c net/minecraft/world/level/material/MapColor$Brightness epi$a net/minecraft/class_3620$class_6594 + f Lnet/minecraft/world/level/material/MapColor$Brightness; LOW a field_34759 + f Lnet/minecraft/world/level/material/MapColor$Brightness; NORMAL b field_34760 + f Lnet/minecraft/world/level/material/MapColor$Brightness; HIGH c field_34761 + f Lnet/minecraft/world/level/material/MapColor$Brightness; LOWEST d field_34762 + f I id e field_34763 + f I modifier f field_34764 + f [Lnet/minecraft/world/level/material/MapColor$Brightness; VALUES g field_34765 + f [Lnet/minecraft/world/level/material/MapColor$Brightness; $VALUES h field_34766 + m ()[Lnet/minecraft/world/level/material/MapColor$Brightness; $values a method_38483 + m (I)Lnet/minecraft/world/level/material/MapColor$Brightness; byId a method_38484 + p 0 id + m (I)Lnet/minecraft/world/level/material/MapColor$Brightness; byIdUnsafe b method_38485 + p 0 id + m (Ljava/lang/String;III)V + p 3 id + p 4 modifier + m ()V +c net/minecraft/world/level/material/PushReaction epj net/minecraft/class_3619 + f Lnet/minecraft/world/level/material/PushReaction; NORMAL a field_15974 + f Lnet/minecraft/world/level/material/PushReaction; DESTROY b field_15971 + f Lnet/minecraft/world/level/material/PushReaction; BLOCK c field_15972 + f Lnet/minecraft/world/level/material/PushReaction; IGNORE d field_15975 + f Lnet/minecraft/world/level/material/PushReaction; PUSH_ONLY e field_15970 + f [Lnet/minecraft/world/level/material/PushReaction; $VALUES f field_15973 + m ()[Lnet/minecraft/world/level/material/PushReaction; $values a method_36765 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/material/WaterFluid epk net/minecraft/class_3621 + m ()V +c net/minecraft/world/level/material/WaterFluid$Flowing epk$a net/minecraft/class_3621$class_3622 + m ()V +c net/minecraft/world/level/material/WaterFluid$Source epk$b net/minecraft/class_3621$class_3623 + m ()V +c net/minecraft/world/level/material/package-info epl net/minecraft/class_6139 +c net/minecraft/world/level/package-info epm net/minecraft/class_6145 +c net/minecraft/world/level/pathfinder/AmphibiousNodeEvaluator epn net/minecraft/class_15 + f Z prefersShallowSwimming l field_28358 + f F oldWalkableCost m field_65 + f F oldWaterBorderCost n field_64 + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isVerticalNeighborValid b method_43413 + p 1 neighbor + p 2 node + m (Z)V + p 1 prefersShallowSwimming +c net/minecraft/world/level/pathfinder/BinaryHeap epo net/minecraft/class_5 + f [Lnet/minecraft/world/level/pathfinder/Node; heap a field_1 + f I size b field_2 + m ()V clear a method_5 + c Clears the path + m (I)V upHeap a method_4 + c Sorts a point to the left + p 1 index + m (Lnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Node; insert a method_2 + c Adds a point to the path + p 1 point + m (Lnet/minecraft/world/level/pathfinder/Node;F)V changeCost a method_3 + c Changes the provided point's total cost if costIn is smaller + p 1 point + p 2 cost + m ()Lnet/minecraft/world/level/pathfinder/Node; peek b method_35490 + m (I)V downHeap b method_7 + c Sorts a point to the right + p 1 index + m (Lnet/minecraft/world/level/pathfinder/Node;)V remove b method_35491 + p 1 node + m ()Lnet/minecraft/world/level/pathfinder/Node; pop c method_6 + c Returns and removes the first point in the path + m ()I size d method_35492 + m ()Z isEmpty e method_8 + c Returns {@code true} if this path contains no points + m ()[Lnet/minecraft/world/level/pathfinder/Node; getHeap f method_35493 + m ()V +c net/minecraft/world/level/pathfinder/FlyNodeEvaluator epp net/minecraft/class_6 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypeByPosCache l field_27341 + f F SMALL_MOB_SIZE m field_49843 + f F SMALL_MOB_INFLATED_START_NODE_BOUNDING_BOX n field_41681 + f I MAX_START_NODE_CANDIDATES o field_41682 + m (III)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_47933 + p 1 x + p 2 y + p 3 z + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_9 a method_9 + m (Lnet/minecraft/world/entity/Mob;)Ljava/lang/Iterable; iteratePathfindingStartNodeCandidatePositions a method_47934 + p 1 mob + m (Lnet/minecraft/world/level/pathfinder/Node;)Z hasMalus b method_22877 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isOpen c method_22878 + p 1 node + m ()V +c net/minecraft/world/level/pathfinder/Node epq net/minecraft/class_9 + f I x a field_40 + f I y b field_39 + f I z c field_38 + f I heapIdx d field_37 + c The index in the PathHeap. -1 if not assigned. + f F g e field_36 + c The total cost of all path points up to this one. Corresponds to the A* g-score. + f F h f field_34 + c The estimated cost from this path point to the target. Corresponds to the A* h-score. + f F f g field_47 + c The total cost of the path containing this path point. Used as sort criteria in PathHeap. Corresponds to the A* f-score. + f Lnet/minecraft/world/level/pathfinder/Node; cameFrom h field_35 + f Z closed i field_42 + f F walkedDistance j field_46 + f F costMalus k field_43 + c The additional cost of the path point. If negative, the path point will be sorted out by NodeProcessors. + f Lnet/minecraft/world/level/pathfinder/PathType; type l field_41 + f I hash m field_44 + m ()Lnet/minecraft/core/BlockPos; asBlockPos a method_22879 + m (III)Lnet/minecraft/world/level/pathfinder/Node; cloneAndMove a method_26 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceTo a method_31 + c Returns the linear distance to another path point + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceTo a method_35494 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)V writeToStream a method_35495 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Node;)V readContents a method_47935 + p 0 buffer + p 1 node + m ()Lnet/minecraft/world/phys/Vec3; asVec3 b method_35496 + m (III)I createHash b method_30 + p 0 x + p 1 y + p 2 z + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceToXZ b method_44022 + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceToSqr b method_35497 + p 1 pos + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Node; createFromStream b method_28 + p 0 buffer + m ()Z inOpenSet c method_27 + c Returns {@code true} if this point has already been assigned to a path + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceToSqr c method_32 + c Returns the squared distance to another path point + p 1 point + m (Lnet/minecraft/core/BlockPos;)F distanceManhattan c method_21654 + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)F distanceManhattan d method_21653 + p 1 point + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/pathfinder/NodeEvaluator epr net/minecraft/class_8 + f Lnet/minecraft/world/level/pathfinder/PathfindingContext; currentContext a field_49416 + f Lnet/minecraft/world/entity/Mob; mob b field_33 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; nodes c field_32 + f I entityWidth d field_31 + f I entityHeight e field_30 + f I entityDepth f field_28 + f Z canPassDoors g field_29 + f Z canOpenDoors h field_27 + f Z canFloat i field_25 + f Z canWalkOverFences j field_40927 + m ()Lnet/minecraft/world/level/pathfinder/Node; getStart a method_21 + m (DDD)Lnet/minecraft/world/level/pathfinder/Target; getTarget a method_16 + p 1 x + p 3 y + p 5 z + m (IIII)Lnet/minecraft/world/level/pathfinder/Node; method_18482 a method_18482 + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathType a method_57615 + p 1 mob + p 2 pos + m (Lnet/minecraft/world/level/PathNavigationRegion;Lnet/minecraft/world/entity/Mob;)V prepare a method_12 + p 1 level + p 2 mob + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isBurningBlock a method_57082 + p 0 state + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;III)Lnet/minecraft/world/level/pathfinder/PathType; getPathType a method_17 + p 1 context + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;IIILnet/minecraft/world/entity/Mob;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeOfMob a method_25 + p 1 context + p 2 x + p 3 y + p 4 z + p 5 mob + m (Z)V setCanPassDoors a method_15 + p 1 canEnterDoors + m ([Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)I getNeighbors a method_18 + p 1 outputArray + p 2 node + m ()V done b method_19 + c This method is called when all nodes have been processed and PathEntity is created. + m (DDD)Lnet/minecraft/world/level/pathfinder/Target; getTargetNodeAt b method_57083 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Node; getNode b method_27137 + p 1 pos + m (Z)V setCanOpenDoors b method_20 + p 1 canOpenDoors + m (III)Lnet/minecraft/world/level/pathfinder/Node; getNode c method_13 + c Returns a mapped point or creates and adds one + p 1 x + p 2 y + p 3 z + m (Z)V setCanFloat c method_14 + p 1 canFloat + m ()Z canPassDoors d method_23 + m (Z)V setCanWalkOverFences d method_46737 + p 1 canWalkOverFences + m ()Z canOpenDoors e method_24 + m ()Z canFloat f method_22 + m ()Z canWalkOverFences g method_46738 + m ()V +c net/minecraft/world/level/pathfinder/Path eps net/minecraft/class_11 + f Ljava/util/List; nodes a field_52 + f Lnet/minecraft/world/level/pathfinder/Path$DebugData; debugData b field_45155 + f I nextNodeIndex c field_54 + f Lnet/minecraft/core/BlockPos; target d field_20301 + f F distToTarget e field_20302 + f Z reached f field_20303 + m ()V advance a method_44 + c Directs this path to the next point in its array + m (I)Lnet/minecraft/world/level/pathfinder/Node; getNode a method_40 + c Returns the {@link net.minecraft.world.level.pathfinder.Node} located at the specified index, usually the current one. + p 1 index + m (ILnet/minecraft/world/level/pathfinder/Node;)V replaceNode a method_33 + p 1 index + p 2 point + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; getNextEntityPos a method_49 + c @return the current {@code PathEntity} target node as a {@code Vec3D} + p 1 entity + m (Lnet/minecraft/world/entity/Entity;I)Lnet/minecraft/world/phys/Vec3; getEntityPosAtNode a method_47 + c Gets the vector of the {@link net.minecraft.world.level.pathfinder.Node} associated with the given index. + p 1 entity + p 2 index + m (Lnet/minecraft/world/level/pathfinder/Path;)Z sameAs a method_41 + c Returns {@code true} if the EntityPath are the same. Non instance related equals. + p 1 pathentity + m (Lnet/minecraft/network/FriendlyByteBuf;)V writeToStream a method_35498 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Node;)V method_35499 a method_35499 + m (Lnet/minecraft/network/FriendlyByteBuf;[Lnet/minecraft/world/level/pathfinder/Node;)V writeNodeArray a method_52602 + p 0 buffer + p 1 nodeArray + m ([Lnet/minecraft/world/level/pathfinder/Node;[Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)V setDebug a method_35500 + p 1 openSet + p 2 closedSet + p 3 targetNodes + m ()Z notStarted b method_30849 + m (I)V truncateNodes b method_36 + p 1 length + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Path; createFromStream b method_34 + p 0 buf + m ()Z isDone c method_46 + c Returns {@code true} if this path has reached the end + m (I)V setNextNodeIndex c method_42 + p 1 currentPathIndex + m (Lnet/minecraft/network/FriendlyByteBuf;)[Lnet/minecraft/world/level/pathfinder/Node; readNodeArray c method_52603 + p 0 buffer + m ()Lnet/minecraft/world/level/pathfinder/Node; getEndNode d method_45 + c Returns the last {@link net.minecraft.world.level.pathfinder.Node} of the Array. + m (I)Lnet/minecraft/core/BlockPos; getNodePos d method_31031 + p 1 index + m ()I getNodeCount e method_38 + m ()I getNextNodeIndex f method_39 + m ()Lnet/minecraft/core/BlockPos; getNextNodePos g method_31032 + m ()Lnet/minecraft/world/level/pathfinder/Node; getNextNode h method_29301 + m ()Lnet/minecraft/world/level/pathfinder/Node; getPreviousNode i method_30850 + m ()Z canReach j method_21655 + m ()Lnet/minecraft/world/level/pathfinder/Path$DebugData; debugData k method_52604 + m ()Lnet/minecraft/core/BlockPos; getTarget l method_48 + m ()F getDistToTarget m method_21656 + m ()Lnet/minecraft/world/level/pathfinder/Path; copy n method_52605 + m (Ljava/util/List;Lnet/minecraft/core/BlockPos;Z)V + p 1 nodes + p 2 target + p 3 reached +c net/minecraft/world/level/pathfinder/Path$DebugData eps$a net/minecraft/class_11$class_8644 + f [Lnet/minecraft/world/level/pathfinder/Node; openSet a comp_1587 + f [Lnet/minecraft/world/level/pathfinder/Node; closedSet b comp_1588 + f Ljava/util/Set; targetNodes c comp_1589 + m ()[Lnet/minecraft/world/level/pathfinder/Node; openSet a comp_1587 + m (Lnet/minecraft/network/FriendlyByteBuf;)V write a method_52606 + p 1 buffer + m (Lnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/world/level/pathfinder/Target;)V method_52607 a method_52607 + m ()[Lnet/minecraft/world/level/pathfinder/Node; closedSet b comp_1588 + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Path$DebugData; read b method_52608 + p 0 buffer + m ()Ljava/util/Set; targetNodes c comp_1589 + m ([Lnet/minecraft/world/level/pathfinder/Node;[Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)V +c net/minecraft/world/level/pathfinder/PathComputationType ept net/minecraft/class_10 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; LAND a field_50 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; WATER b field_48 + f Lnet/minecraft/world/level/pathfinder/PathComputationType; AIR c field_51 + f [Lnet/minecraft/world/level/pathfinder/PathComputationType; $VALUES d field_49 + m ()[Lnet/minecraft/world/level/pathfinder/PathComputationType; $values a method_36789 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/pathfinder/PathFinder epu net/minecraft/class_13 + f F FUDGING a field_31807 + f [Lnet/minecraft/world/level/pathfinder/Node; neighbors b field_60 + f I maxVisitedNodes c field_18708 + f Lnet/minecraft/world/level/pathfinder/NodeEvaluator; nodeEvaluator d field_61 + f Z DEBUG e field_31808 + f Lnet/minecraft/world/level/pathfinder/BinaryHeap; openSet f field_62 + m (I)[Lnet/minecraft/world/level/pathfinder/Node; method_52609 a method_52609 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Map;FIF)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_54 + p 1 profiler + p 2 node + p 3 targetPos + p 4 maxRange + p 5 accuracy + p 6 searchDepthMultiplier + m (Lnet/minecraft/world/level/PathNavigationRegion;Lnet/minecraft/world/entity/Mob;Ljava/util/Set;FIF)Lnet/minecraft/world/level/pathfinder/Path; findPath a method_52 + c Finds a path to one of the specified positions and post-processes it or returns null if no path could be found within given accuracy + p 1 region + p 2 mob + p 3 targetPositions + p 4 maxRange + p 5 accuracy + p 6 searchDepthMultiplier + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)F distance a method_44000 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/pathfinder/Node;Ljava/util/Set;)F getBestH a method_21658 + p 1 node + p 2 targets + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/core/BlockPos;Z)Lnet/minecraft/world/level/pathfinder/Path; reconstructPath a method_55 + c Converts a recursive path point structure into a path + p 1 point + p 2 targetPos + p 3 reachesTarget + m (Ljava/util/Map;Lnet/minecraft/world/level/pathfinder/Target;)Lnet/minecraft/world/level/pathfinder/Path; method_21660 a method_21660 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Target; method_21659 a method_21659 + m (Ljava/util/Map;Lnet/minecraft/world/level/pathfinder/Target;)Lnet/minecraft/world/level/pathfinder/Path; method_21661 b method_21661 + m (Lnet/minecraft/world/level/pathfinder/NodeEvaluator;I)V + p 1 nodeEvaluator + p 2 maxVisitedNodes +c net/minecraft/world/level/pathfinder/PathType epv net/minecraft/class_7 + f F malus A field_13 + f [Lnet/minecraft/world/level/pathfinder/PathType; $VALUES B field_24 + f Lnet/minecraft/world/level/pathfinder/PathType; BLOCKED a field_22 + f Lnet/minecraft/world/level/pathfinder/PathType; OPEN b field_7 + f Lnet/minecraft/world/level/pathfinder/PathType; WALKABLE c field_12 + f Lnet/minecraft/world/level/pathfinder/PathType; WALKABLE_DOOR d field_26446 + f Lnet/minecraft/world/level/pathfinder/PathType; TRAPDOOR e field_19 + f Lnet/minecraft/world/level/pathfinder/PathType; POWDER_SNOW f field_33534 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_POWDER_SNOW g field_36432 + f Lnet/minecraft/world/level/pathfinder/PathType; FENCE h field_10 + f Lnet/minecraft/world/level/pathfinder/PathType; LAVA i field_14 + f Lnet/minecraft/world/level/pathfinder/PathType; WATER j field_18 + f Lnet/minecraft/world/level/pathfinder/PathType; WATER_BORDER k field_4 + f Lnet/minecraft/world/level/pathfinder/PathType; RAIL l field_21 + f Lnet/minecraft/world/level/pathfinder/PathType; UNPASSABLE_RAIL m field_25418 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_FIRE n field_9 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_FIRE o field_3 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_OTHER p field_5 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_OTHER q field_17 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_OPEN r field_15 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_WOOD_CLOSED s field_23 + f Lnet/minecraft/world/level/pathfinder/PathType; DOOR_IRON_CLOSED t field_8 + f Lnet/minecraft/world/level/pathfinder/PathType; BREACH u field_16 + f Lnet/minecraft/world/level/pathfinder/PathType; LEAVES v field_6 + f Lnet/minecraft/world/level/pathfinder/PathType; STICKY_HONEY w field_21326 + f Lnet/minecraft/world/level/pathfinder/PathType; COCOA x field_21516 + f Lnet/minecraft/world/level/pathfinder/PathType; DAMAGE_CAUTIOUS y field_43351 + f Lnet/minecraft/world/level/pathfinder/PathType; DANGER_TRAPDOOR z field_47413 + m ()F getMalus a method_11 + m ()[Lnet/minecraft/world/level/pathfinder/PathType; $values b method_36788 + m (Ljava/lang/String;IF)V + p 3 malus + m ()V +c net/minecraft/world/level/pathfinder/PathTypeCache epw net/minecraft/class_9315 + f I SIZE a field_49417 + f I MASK b field_49418 + f [J positions c field_49419 + f [Lnet/minecraft/world/level/pathfinder/PathType; pathTypes d field_49420 + m (IJ)Lnet/minecraft/world/level/pathfinder/PathType; get a method_57616 + p 1 index + p 2 pos + m (J)I index a method_57617 + p 0 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getOrCompute a method_57618 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;IJ)Lnet/minecraft/world/level/pathfinder/PathType; compute a method_57619 + p 1 level + p 2 pos + p 3 index + p 4 packedPos + m (Lnet/minecraft/core/BlockPos;)V invalidate a method_57620 + p 1 pos + m ()V +c net/minecraft/world/level/pathfinder/PathfindingContext epx net/minecraft/class_9316 + f Lnet/minecraft/world/level/CollisionGetter; level a field_49421 + f Lnet/minecraft/world/level/pathfinder/PathTypeCache; cache b field_49422 + f Lnet/minecraft/core/BlockPos; mobPosition c field_49423 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; mutablePos d field_49424 + m ()Lnet/minecraft/world/level/CollisionGetter; level a method_57621 + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeFromState a method_57622 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState a method_57623 + p 1 pos + m ()Lnet/minecraft/core/BlockPos; mobPosition b method_57624 + m (Lnet/minecraft/world/level/CollisionGetter;Lnet/minecraft/world/entity/Mob;)V + p 1 level + p 2 mob +c net/minecraft/world/level/pathfinder/SwimNodeEvaluator epy net/minecraft/class_12 + f Z allowBreaching k field_58 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypesByPosCache l field_34767 + m (III)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_47936 + p 1 x + p 2 y + p 3 z + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_38486 a method_38486 + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isNodeValid a method_38487 + p 1 node + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getCachedBlockType b method_38489 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/level/pathfinder/Node;)Z hasMalus b method_57084 + p 0 node + m (Z)V + p 1 allowBreaching +c net/minecraft/world/level/pathfinder/Target epz net/minecraft/class_4459 + f F bestHeuristic m field_20304 + f Lnet/minecraft/world/level/pathfinder/Node; bestNode n field_20305 + c The nearest path point of the path that is constructed + f Z reached o field_20306 + m (FLnet/minecraft/world/level/pathfinder/Node;)V updateBest a method_21662 + p 1 heuristic + p 2 node + m (Lnet/minecraft/network/FriendlyByteBuf;)Lnet/minecraft/world/level/pathfinder/Target; createFromStream c method_21663 + p 0 buffer + m ()Lnet/minecraft/world/level/pathfinder/Node; getBestNode d method_21664 + c Gets the nearest path point of the path that is constructed + m ()V setReached e method_21665 + m ()Z isReached f method_35501 + m (Lnet/minecraft/world/level/pathfinder/Node;)V + p 1 node + m (III)V + p 1 x + p 2 y + p 3 z +c net/minecraft/world/level/pathfinder/WalkNodeEvaluator eqa net/minecraft/class_14 + f D SPACE_BETWEEN_WALL_POSTS k field_31809 + f D DEFAULT_MOB_JUMP_HEIGHT l field_40928 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; pathTypesByPosCacheByMob m field_49156 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; collisionCache n field_25191 + f [Lnet/minecraft/world/level/pathfinder/Node; reusableNeighbors o field_49157 + m (III)Lnet/minecraft/world/level/pathfinder/Node; getBlockedNode a method_43570 + p 1 x + p 2 y + p 3 z + m (IIIIDLnet/minecraft/core/Direction;Lnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/Node; findAcceptedNode a method_62 + p 1 x + p 2 y + p 3 z + p 4 verticalDeltaLimit + p 5 nodeFloorLevel + p 7 direction + p 8 pathType + m (IIIIDLnet/minecraft/core/Direction;Lnet/minecraft/world/level/pathfinder/PathType;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/pathfinder/Node; tryJumpOn a method_57085 + p 1 x + p 2 y + p 3 z + p 4 verticalDeltaLimit + p 5 nodeFloorLevel + p 7 direction + p 8 pathType + p 9 pos + m (IIIJ)Lnet/minecraft/world/level/pathfinder/PathType; method_57086 a method_57086 + m (IIILnet/minecraft/world/level/pathfinder/Node;)Lnet/minecraft/world/level/pathfinder/Node; tryFindFirstNonWaterBelow a method_57087 + p 1 x + p 2 y + p 3 z + p 4 node + m (IIILnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/Node; getClosedNode a method_57088 + p 1 x + p 2 y + p 3 z + p 4 pathType + m (IIILnet/minecraft/world/level/pathfinder/PathType;F)Lnet/minecraft/world/level/pathfinder/Node; getNodeAndUpdateCostToMax a method_43569 + p 1 x + p 2 y + p 3 z + p 4 pathType + p 5 malus + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)D getFloorLevel a method_60 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)Z isDiagonalValid a method_57089 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isNeighborValid a method_20536 + p 1 neighbor + p 2 node + m (Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;Lnet/minecraft/world/level/pathfinder/Node;)Z isDiagonalValid a method_29579 + p 1 root + p 2 xNode + p 3 zNode + m (Lnet/minecraft/world/level/pathfinder/PathType;)Z doesBlockHavePartialCollision a method_43414 + p 0 pathType + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;IIILnet/minecraft/world/level/pathfinder/PathType;)Lnet/minecraft/world/level/pathfinder/PathType; checkNeighbourBlocks a method_59 + p 0 context + p 1 x + p 2 y + p 3 z + p 4 pathType + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;Lnet/minecraft/core/BlockPos$MutableBlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeStatic a method_23476 + p 0 context + p 1 pos + m (Lnet/minecraft/world/phys/AABB;)Z hasCollisions a method_29304 + p 1 boundingBox + m (Lnet/minecraft/world/phys/AABB;Ljava/lang/Object;)Z method_29305 a method_29305 + m (Lnet/minecraft/core/BlockPos;)Z canStartAt a method_47893 + p 1 pos + m (III)Lnet/minecraft/world/level/pathfinder/PathType; getCachedPathType b method_31932 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/entity/Mob;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeStatic b method_57625 + p 0 mob + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/PathType; getPathTypeFromState b method_58 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/pathfinder/Node;)Z canReachWithoutCollision b method_29578 + p 1 node + m (Lnet/minecraft/world/level/pathfinder/PathfindingContext;III)Ljava/util/Set; getPathTypeWithinMobBB b method_57090 + p 1 context + p 2 x + p 3 y + p 4 z + m ()Z isAmphibious c method_37004 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/pathfinder/Node; getStartNode c method_43415 + p 1 pos + m (III)Lnet/minecraft/world/level/pathfinder/Node; tryFindFirstGroundNodeBelow d method_57091 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/BlockPos;)D getFloorLevel d method_37003 + p 1 pos + m ()D getMobJumpHeight h method_46739 + m ()V +c net/minecraft/world/level/pathfinder/WalkNodeEvaluator$1 eqa$1 net/minecraft/class_14$1 + f [I $SwitchMap$net$minecraft$world$level$pathfinder$PathType a field_47414 + m ()V +c net/minecraft/world/level/pathfinder/package-info eqb net/minecraft/class_6146 +c net/minecraft/world/level/portal/DimensionTransition eqc net/minecraft/class_5454 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; DO_NOTHING a field_52245 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; PLAY_PORTAL_SOUND b field_52246 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; PLACE_PORTAL_TICKET c field_52247 + f Lnet/minecraft/server/level/ServerLevel; newLevel d comp_2820 + f Lnet/minecraft/world/phys/Vec3; pos e comp_2821 + f Lnet/minecraft/world/phys/Vec3; speed f comp_2822 + f F yRot g comp_2823 + f F xRot h comp_2824 + f Z missingRespawnBlock i comp_2825 + f Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; postDimensionTransition j comp_2864 + m ()Lnet/minecraft/server/level/ServerLevel; newLevel a comp_2820 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; findAdjustedSharedSpawnPos a method_61023 + p 0 newLevel + p 1 entity + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)Lnet/minecraft/world/level/portal/DimensionTransition; missingRespawnBlock a method_60635 + p 0 level + p 1 entity + p 2 postDimensionTransition + m (Lnet/minecraft/world/entity/Entity;)V playPortalSound a method_61024 + p 0 entity + m ()Lnet/minecraft/world/phys/Vec3; pos b comp_2821 + m (Lnet/minecraft/world/entity/Entity;)V placePortalTicket b method_61025 + p 0 entity + m ()Lnet/minecraft/world/phys/Vec3; speed c comp_2822 + m (Lnet/minecraft/world/entity/Entity;)V method_61026 c method_61026 + m ()F yRot d comp_2823 + m ()F xRot e comp_2824 + m ()Z missingRespawnBlock f comp_2825 + m ()Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition; postDimensionTransition g comp_2864 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FFLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + p 1 newLevel + p 2 pos + p 3 speed + p 4 yRot + p 5 xRot + p 6 postDimensionTransition + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + p 1 newLevel + p 2 entity + p 3 postDimensionTransition + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;FFZLnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;)V + m ()V +c net/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition eqc$a net/minecraft/class_5454$class_9823 + m (Lnet/minecraft/world/level/portal/DimensionTransition$PostDimensionTransition;Lnet/minecraft/world/entity/Entity;)V method_61027 a method_61027 +c net/minecraft/world/level/portal/PortalForcer eqd net/minecraft/class_1946 + f I TICKET_RADIUS a field_31810 + f I NETHER_PORTAL_RADIUS b field_52248 + f I OVERWORLD_PORTAL_RADIUS c field_52249 + f I FRAME_HEIGHT d field_31813 + f I FRAME_WIDTH e field_31814 + f I FRAME_BOX f field_31815 + f I FRAME_HEIGHT_START g field_31816 + f I FRAME_HEIGHT_END h field_31817 + f I FRAME_WIDTH_START i field_31818 + f I FRAME_WIDTH_END j field_31819 + f I FRAME_BOX_START k field_31820 + f I FRAME_BOX_END l field_31821 + f I NOTHING_FOUND m field_31822 + f Lnet/minecraft/server/level/ServerLevel; level n field_9286 + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)Z canPortalReplaceBlock a method_45550 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Z method_61028 a method_61028 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/core/Direction;I)Z canHostFrame a method_30481 + p 1 originalPos + p 2 offsetPos + p 3 direction + p 4 offsetScale + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)D method_61029 a method_61029 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; createPortal a method_30482 + p 1 pos + p 2 axis + m (Lnet/minecraft/core/BlockPos;ZLnet/minecraft/world/level/border/WorldBorder;)Ljava/util/Optional; findClosestPortalPosition a method_30483 + p 1 exitPos + p 2 isNether + p 3 worldBorder + m (Lnet/minecraft/core/Holder;)Z method_22389 a method_22389 + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/portal/PortalShape eqe net/minecraft/class_2424 + f I MAX_WIDTH a field_31823 + f I MAX_HEIGHT b field_31824 + f I MIN_WIDTH c field_31825 + f I MIN_HEIGHT d field_31826 + f Lnet/minecraft/world/level/block/state/BlockBehaviour$StatePredicate; FRAME e field_25883 + f F SAFE_TRAVEL_MAX_ENTITY_XY f field_41086 + f D SAFE_TRAVEL_MAX_VERTICAL_DELTA g field_41087 + f Lnet/minecraft/world/level/LevelAccessor; level h field_11318 + f Lnet/minecraft/core/Direction$Axis; axis i field_11317 + f Lnet/minecraft/core/Direction; rightDir j field_11314 + f I numPortalBlocks k field_11313 + f Lnet/minecraft/core/BlockPos; bottomLeft l field_11316 + f I height m field_11312 + f I width n field_11311 + m ()Z isValid a method_10360 + m (DLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; method_47381 a method_47381 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Ljava/util/function/Predicate;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; findPortalShape a method_30486 + p 0 level + p 1 bottomLeft + p 2 predicate + p 3 axis + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)Ljava/util/Optional; findEmptyPortalShape a method_30485 + p 0 level + p 1 bottomLeft + p 2 axis + m (Lnet/minecraft/world/level/block/state/BlockState;)Z isEmpty a method_10359 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Z method_30487 a method_30487 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V method_30488 a method_30488 + m (Lnet/minecraft/world/level/portal/PortalShape;)Z method_30489 a method_30489 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/EntityDimensions;)Lnet/minecraft/world/phys/Vec3; findCollisionFreePosition a method_47382 + p 0 pos + p 1 level + p 2 entity + p 3 dimensions + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;)I getDistanceUntilTop a method_30490 + p 1 pos + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;I)Z hasTopFrame a method_30491 + p 1 pos + p 2 distanceToTop + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/core/BlockPos; calculateBottomLeft a method_30492 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)I getDistanceUntilEdgeAboveFrame a method_30493 + p 1 pos + p 2 direction + m (Lnet/minecraft/BlockUtil$FoundRectangle;Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/entity/EntityDimensions;)Lnet/minecraft/world/phys/Vec3; getRelativePosition a method_30494 + p 0 foundRectangle + p 1 axis + p 2 pos + p 3 entityDimensions + m ()V createPortalBlocks b method_10363 + m ()Z isComplete c method_10362 + m ()I calculateWidth d method_30495 + m ()I calculateHeight e method_30496 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction$Axis;)V + p 1 level + p 2 bottomLeft + p 3 axis + m ()V +c net/minecraft/world/level/portal/package-info eqf net/minecraft/class_6147 +c net/minecraft/world/level/redstone/CollectingNeighborUpdater eqg net/minecraft/class_7159 + f Lorg/slf4j/Logger; LOGGER b field_37829 + f Lnet/minecraft/world/level/Level; level c field_37830 + f I maxChainedNeighborUpdates d field_38276 + f Ljava/util/ArrayDeque; stack e field_37831 + f Ljava/util/List; addedThisLayer f field_37832 + f I count g field_37833 + m ()V runUpdates a method_41702 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/redstone/CollectingNeighborUpdater$NeighborUpdates;)V addAndRun a method_41706 + p 1 pos + p 2 updates + m (Lnet/minecraft/world/level/Level;I)V + p 1 level + p 2 maxChainedNeighborUpdates + m ()V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$FullNeighborUpdate eqg$a net/minecraft/class_7159$class_7160 + f Lnet/minecraft/world/level/block/state/BlockState; state a comp_584 + f Lnet/minecraft/core/BlockPos; pos b comp_585 + f Lnet/minecraft/world/level/block/Block; block c comp_586 + f Lnet/minecraft/core/BlockPos; neighborPos d comp_587 + f Z movedByPiston e comp_588 + m ()Lnet/minecraft/world/level/block/state/BlockState; state a comp_584 + m ()Lnet/minecraft/core/BlockPos; pos b comp_585 + m ()Lnet/minecraft/world/level/block/Block; block c comp_586 + m ()Lnet/minecraft/core/BlockPos; neighborPos d comp_587 + m ()Z movedByPiston e comp_588 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$MultiNeighborUpdate eqg$b net/minecraft/class_7159$class_7161 + f Lnet/minecraft/core/BlockPos; sourcePos a field_37834 + f Lnet/minecraft/world/level/block/Block; sourceBlock b field_37835 + f Lnet/minecraft/core/Direction; skipDirection c field_37836 + f I idx d field_37837 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V + p 1 sourcePos + p 2 sourceBlock + p 3 skipDirection +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$NeighborUpdates eqg$c net/minecraft/class_7159$class_7162 + m (Lnet/minecraft/world/level/Level;)Z runNext a method_41707 + p 1 level +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$ShapeUpdate eqg$d net/minecraft/class_7159$class_7272 + f Lnet/minecraft/core/Direction; direction a comp_666 + f Lnet/minecraft/world/level/block/state/BlockState; state b comp_667 + f Lnet/minecraft/core/BlockPos; pos c comp_668 + f Lnet/minecraft/core/BlockPos; neighborPos d comp_669 + f I updateFlags e comp_670 + f I updateLimit f comp_1344 + m ()Lnet/minecraft/core/Direction; direction a comp_666 + m ()Lnet/minecraft/world/level/block/state/BlockState; state b comp_667 + m ()Lnet/minecraft/core/BlockPos; pos c comp_668 + m ()Lnet/minecraft/core/BlockPos; neighborPos d comp_669 + m ()I updateFlags e comp_670 + m ()I updateLimit f comp_1344 + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V +c net/minecraft/world/level/redstone/CollectingNeighborUpdater$SimpleNeighborUpdate eqg$e net/minecraft/class_7159$class_7163 + f Lnet/minecraft/core/BlockPos; pos a comp_589 + f Lnet/minecraft/world/level/block/Block; block b comp_590 + f Lnet/minecraft/core/BlockPos; neighborPos c comp_591 + m ()Lnet/minecraft/core/BlockPos; pos a comp_589 + m ()Lnet/minecraft/world/level/block/Block; block b comp_590 + m ()Lnet/minecraft/core/BlockPos; neighborPos c comp_591 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V +c net/minecraft/world/level/redstone/InstantNeighborUpdater eqh net/minecraft/class_7164 + f Lnet/minecraft/world/level/Level; level b field_37838 + m (Lnet/minecraft/world/level/Level;)V + p 1 level +c net/minecraft/world/level/redstone/NeighborUpdater eqi net/minecraft/class_7165 + f [Lnet/minecraft/core/Direction; UPDATE_ORDER a field_37839 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V executeUpdate a method_41708 + p 0 level + p 1 state + p 2 pos + p 3 neighborBlock + p 4 neighborPos + p 5 movedByPiston + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V executeShapeUpdate a method_42393 + p 0 level + p 1 direction + p 2 state + p 3 pos + p 4 neighborPos + p 5 flags + p 6 recursionLevel + m (Lnet/minecraft/world/level/block/Block;)Ljava/lang/String; method_41709 a method_41709 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;Z)V neighborChanged a method_41703 + p 1 state + p 2 pos + p 3 neighborBlock + p 4 neighborPos + p 5 movedByPiston + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos;)V neighborChanged a method_41704 + p 1 pos + p 2 neighborBlock + p 3 neighborPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/Direction;)V updateNeighborsAtExceptFromFacing a method_41705 + p 1 pos + p 2 block + p 3 facing + m (Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;II)V shapeUpdate a method_42392 + p 1 direction + p 2 state + p 3 pos + p 4 neighborPos + p 5 flags + p 6 recursionLevel + m ()V +c net/minecraft/world/level/redstone/Redstone eqj net/minecraft/class_6148 + f I SIGNAL_MIN a field_31827 + f I SIGNAL_MAX b field_31828 + f I SIGNAL_NONE c field_31829 + m ()V +c net/minecraft/world/level/redstone/package-info eqk net/minecraft/class_6149 +c net/minecraft/world/level/saveddata/SavedData eql net/minecraft/class_18 + f Lorg/slf4j/Logger; LOGGER a field_17661 + f Z dirty b field_72 + m (Ljava/io/File;Lnet/minecraft/core/HolderLookup$Provider;)V save a method_17919 + p 1 file + p 2 registries + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; save a method_75 + p 1 tag + p 2 registries + m (Z)V setDirty a method_78 + c Sets the dirty state of this {@code SavedData}, whether it needs saving to disk. + p 1 dirty + m ()V setDirty c method_80 + c Marks this {@code SavedData} dirty, to be saved to disk when the level next saves. + m ()Z isDirty d method_79 + c Whether this {@code SavedData} needs saving to disk. + m ()V + m ()V +c net/minecraft/world/level/saveddata/SavedData$Factory eql$a net/minecraft/class_18$class_8645 + f Ljava/util/function/Supplier; constructor a comp_1590 + f Ljava/util/function/BiFunction; deserializer b comp_1591 + f Lnet/minecraft/util/datafix/DataFixTypes; type c comp_1592 + m ()Ljava/util/function/Supplier; constructor a comp_1590 + m ()Ljava/util/function/BiFunction; deserializer b comp_1591 + m ()Lnet/minecraft/util/datafix/DataFixTypes; type c comp_1592 + m (Ljava/util/function/Supplier;Ljava/util/function/BiFunction;Lnet/minecraft/util/datafix/DataFixTypes;)V +c net/minecraft/world/level/saveddata/maps/MapBanner eqm net/minecraft/class_17 + f Lcom/mojang/serialization/Codec; CODEC a field_48918 + f Lcom/mojang/serialization/Codec; LIST_CODEC b field_48919 + f Lnet/minecraft/core/BlockPos; pos c comp_2312 + f Lnet/minecraft/world/item/DyeColor; color d comp_2313 + f Ljava/util/Optional; name e comp_2314 + m ()Lnet/minecraft/core/Holder; getDecoration a method_72 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_56812 a method_56812 + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/saveddata/maps/MapBanner; fromWorld a method_73 + p 0 level + p 1 pos + m ()Ljava/lang/String; getId b method_71 + m ()Lnet/minecraft/core/BlockPos; pos c comp_2312 + m ()Lnet/minecraft/world/item/DyeColor; color d comp_2313 + m ()Ljava/util/Optional; name e comp_2314 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/item/DyeColor;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapBanner$1 eqm$1 net/minecraft/class_17$1 + f [I $SwitchMap$net$minecraft$world$item$DyeColor a field_70 + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecoration eqn net/minecraft/class_20 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48920 + f Lnet/minecraft/core/Holder; type b comp_1842 + f B x c comp_1843 + f B y d comp_1844 + f B rot e comp_1845 + f Ljava/util/Optional; name f comp_1846 + m ()Lnet/minecraft/resources/ResourceLocation; getSpriteLocation a method_58451 + m ()Z renderOnFrame b method_94 + m ()Lnet/minecraft/core/Holder; type c comp_1842 + m ()B x d comp_1843 + m ()B y e comp_1844 + m ()B rot f comp_1845 + m ()Ljava/util/Optional; name g comp_1846 + m (Lnet/minecraft/core/Holder;BBBLjava/util/Optional;)V + p 1 type + p 2 x + p 3 y + p 4 rot + p 5 name + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecorationType eqo net/minecraft/class_9428 + f I NO_MAP_COLOR a field_50016 + f Lcom/mojang/serialization/Codec; CODEC b field_50017 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC c field_50018 + f Lnet/minecraft/resources/ResourceLocation; assetId d comp_2514 + f Z showOnItemFrame e comp_2515 + f I mapColor f comp_2516 + f Z explorationMapElement g comp_2517 + f Z trackCount h comp_2518 + m ()Z hasMapColor a method_58452 + m ()Lnet/minecraft/resources/ResourceLocation; assetId b comp_2514 + m ()Z showOnItemFrame c comp_2515 + m ()I mapColor d comp_2516 + m ()Z explorationMapElement e comp_2517 + m ()Z trackCount f comp_2518 + m (Lnet/minecraft/resources/ResourceLocation;ZIZZ)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapDecorationTypes eqp net/minecraft/class_21 + f Lnet/minecraft/core/Holder; RED_X A field_110 + f Lnet/minecraft/core/Holder; DESERT_VILLAGE B field_46177 + f Lnet/minecraft/core/Holder; PLAINS_VILLAGE C field_46178 + f Lnet/minecraft/core/Holder; SAVANNA_VILLAGE D field_46179 + f Lnet/minecraft/core/Holder; SNOWY_VILLAGE E field_46180 + f Lnet/minecraft/core/Holder; TAIGA_VILLAGE F field_46181 + f Lnet/minecraft/core/Holder; JUNGLE_TEMPLE G field_46182 + f Lnet/minecraft/core/Holder; SWAMP_HUT H field_46183 + f Lnet/minecraft/core/Holder; TRIAL_CHAMBERS I field_50019 + f I COPPER_COLOR J field_50020 + f Lnet/minecraft/core/Holder; PLAYER a field_91 + f Lnet/minecraft/core/Holder; FRAME b field_95 + f Lnet/minecraft/core/Holder; RED_MARKER c field_89 + f Lnet/minecraft/core/Holder; BLUE_MARKER d field_83 + f Lnet/minecraft/core/Holder; TARGET_X e field_84 + f Lnet/minecraft/core/Holder; TARGET_POINT f field_85 + f Lnet/minecraft/core/Holder; PLAYER_OFF_MAP g field_86 + f Lnet/minecraft/core/Holder; PLAYER_OFF_LIMITS h field_87 + f Lnet/minecraft/core/Holder; WOODLAND_MANSION i field_88 + f Lnet/minecraft/core/Holder; OCEAN_MONUMENT j field_98 + f Lnet/minecraft/core/Holder; WHITE_BANNER k field_96 + f Lnet/minecraft/core/Holder; ORANGE_BANNER l field_92 + f Lnet/minecraft/core/Holder; MAGENTA_BANNER m field_97 + f Lnet/minecraft/core/Holder; LIGHT_BLUE_BANNER n field_90 + f Lnet/minecraft/core/Holder; YELLOW_BANNER o field_93 + f Lnet/minecraft/core/Holder; LIME_BANNER p field_94 + f Lnet/minecraft/core/Holder; PINK_BANNER q field_100 + f Lnet/minecraft/core/Holder; GRAY_BANNER r field_101 + f Lnet/minecraft/core/Holder; LIGHT_GRAY_BANNER s field_107 + f Lnet/minecraft/core/Holder; CYAN_BANNER t field_108 + f Lnet/minecraft/core/Holder; PURPLE_BANNER u field_104 + f Lnet/minecraft/core/Holder; BLUE_BANNER v field_105 + f Lnet/minecraft/core/Holder; BROWN_BANNER w field_106 + f Lnet/minecraft/core/Holder; GREEN_BANNER x field_102 + f Lnet/minecraft/core/Holder; RED_BANNER y field_99 + f Lnet/minecraft/core/Holder; BLACK_BANNER z field_103 + m (Ljava/lang/String;Ljava/lang/String;ZIZZ)Lnet/minecraft/core/Holder; register a method_58453 + p 0 name + p 1 assetId + p 2 showOnItemFrame + p 3 mapColor + p 4 explorationMapElement + p 5 trackCount + m (Ljava/lang/String;Ljava/lang/String;ZZ)Lnet/minecraft/core/Holder; register a method_58454 + p 0 name + p 1 assetId + p 2 showOnItemFrame + p 3 trackCount + m (Lnet/minecraft/core/Registry;)Lnet/minecraft/core/Holder; bootstrap a method_58455 + p 0 registry + m ()V + m ()V +c net/minecraft/world/level/saveddata/maps/MapFrame eqq net/minecraft/class_19 + f Lnet/minecraft/core/BlockPos; pos a field_75 + f I rotation b field_74 + f I entityId c field_73 + m ()Lnet/minecraft/nbt/CompoundTag; save a method_84 + m (Lnet/minecraft/core/BlockPos;)Ljava/lang/String; frameId a method_81 + p 0 pos + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/saveddata/maps/MapFrame; load a method_87 + p 0 compoundTag + m ()Lnet/minecraft/core/BlockPos; getPos b method_86 + m ()I getRotation c method_83 + m ()I getEntityId d method_85 + m ()Ljava/lang/String; getId e method_82 + m (Lnet/minecraft/core/BlockPos;II)V + p 1 pos + p 2 rotation + p 3 entityId +c net/minecraft/world/level/saveddata/maps/MapId eqr net/minecraft/class_9209 + f Lcom/mojang/serialization/Codec; CODEC a field_49425 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC b field_48924 + f I id c comp_2315 + m ()Ljava/lang/String; key a method_56814 + m ()I id b comp_2315 + m (I)V + m ()V +c net/minecraft/world/level/saveddata/maps/MapIndex eqs net/minecraft/class_3978 + f Ljava/lang/String; FILE_NAME a field_31830 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; usedAuxIds b field_17662 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52610 + m ()Lnet/minecraft/world/level/saveddata/maps/MapId; getFreeAuxValueForMap b method_17920 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/saveddata/maps/MapIndex; load b method_32360 + p 0 tag + p 1 registries + m ()V +c net/minecraft/world/level/saveddata/maps/MapItemSavedData eqt net/minecraft/class_22 + f I MAX_SCALE a field_31831 + f I TRACKED_DECORATION_LIMIT b field_33991 + f I centerX c field_116 + f I centerZ d field_115 + f Lnet/minecraft/resources/ResourceKey; dimension e field_118 + f B scale f field_119 + f [B colors g field_122 + f Z locked h field_17403 + f Lorg/slf4j/Logger; LOGGER i field_25019 + f I MAP_SIZE j field_31832 + f I HALF_MAP_SIZE k field_31833 + f Ljava/lang/String; FRAME_PREFIX l field_52316 + f Z trackingPosition m field_114 + f Z unlimitedTracking n field_113 + f Ljava/util/List; carriedBy o field_112 + f Ljava/util/Map; carriedByPlayers p field_120 + f Ljava/util/Map; bannerMarkers q field_123 + f Ljava/util/Map; decorations r field_117 + f Ljava/util/Map; frameMarkers s field_121 + f I trackedDecorationCount t field_33992 + m ()Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory a method_52611 + m (BZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; createForClient a method_32362 + p 0 scale + p 1 locked + p 2 dimension + m (DDBZZLnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; createFresh a method_32363 + p 0 x + p 2 z + p 4 scale + p 5 trackingPosition + p 6 unlimitedTracking + p 7 dimension + m (I)Z isTrackedCountOverLimit a method_37343 + p 1 trackedCount + m (II)V setColorsDirty a method_103 + p 1 x + p 2 z + m (IIB)Z updateColor a method_32365 + p 1 x + p 2 z + p 3 color + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$HoldingPlayer; getHoldingPlayer a method_101 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;)V tickCarriedBy a method_102 + c Adds the player passed to the list of visible players and checks to see which players are visible + p 1 player + p 2 mapStack + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;)V method_57626 a method_57626 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/function/Predicate; mapMatcher a method_55784 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/item/ItemStack;)Z method_55785 a method_55785 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/BlockPos;Ljava/lang/String;Lnet/minecraft/core/Holder;)V addTargetDecoration a method_110 + p 0 stack + p 1 pos + p 2 type + p 3 mapDecorationType + m (Lnet/minecraft/world/level/BlockGetter;II)V checkBanners a method_109 + p 1 reader + p 2 x + p 3 z + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z toggleBanner a method_108 + p 1 accessor + p 2 pos + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/network/protocol/Packet; getUpdatePacket a method_100 + p 1 mapId + p 2 player + m (Ljava/lang/String;)V removeDecoration a method_32368 + p 1 identifier + m (Ljava/lang/String;Lnet/minecraft/world/item/component/MapDecorations$Entry;Lnet/minecraft/world/item/component/MapDecorations;)Lnet/minecraft/world/item/component/MapDecorations; method_57627 a method_57627 + m (Ljava/util/List;)V addClientSideDecorations a method_32369 + p 1 decorations + m (Lnet/minecraft/core/BlockPos;I)V removedFromFrame a method_104 + p 1 pos + p 2 entityId + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/LevelAccessor;Ljava/lang/String;DDDLnet/minecraft/network/chat/Component;)V addDecoration a method_107 + p 1 decorationType + p 2 level + p 3 id + p 4 x + p 6 z + p 8 yRot + p 10 displayName + m (Lnet/minecraft/nbt/CompoundTag;)Ljava/lang/IllegalArgumentException; method_29009 a method_29009 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29008 a method_29008 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; locked b method_32361 + m (I)Ljava/lang/String; getFrameKey b method_61169 + p 0 entityId + m (IIB)V setColor b method_32370 + p 1 x + p 2 z + p 3 color + m (Ljava/lang/String;)V method_56815 b method_56815 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; load b method_32371 + p 0 tag + p 1 levelRegistry + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; scaled e method_32364 + m ()Ljava/util/Collection; getBanners f method_35503 + m ()Z isExplorationMap g method_32372 + m ()Ljava/lang/Iterable; getDecorations h method_32373 + m ()V setDecorationsDirty i method_32374 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; method_52612 j method_52612 + m (IIBZZZLnet/minecraft/resources/ResourceKey;)V + p 1 x + p 2 z + p 3 scale + p 4 trackingPosition + p 5 unlimitedTracking + p 6 locked + p 7 dimension + m ()V +c net/minecraft/world/level/saveddata/maps/MapItemSavedData$HoldingPlayer eqt$a net/minecraft/class_22$class_23 + f Lnet/minecraft/world/entity/player/Player; player a field_125 + f I step b field_131 + f Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; field_132 c field_132 + f Z dirtyData d field_130 + f I minDirtyX e field_129 + c The lowest dirty x value + f I minDirtyY f field_128 + c The lowest dirty z value + f I maxDirtyX g field_127 + c The highest dirty x value + f I maxDirtyY h field_126 + c The highest dirty z value + f Z dirtyDecorations i field_27891 + f I tick j field_124 + m ()Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch; createPatch a method_32375 + m (II)V markColorsDirty a method_111 + p 1 x + p 2 z + m (Lnet/minecraft/world/level/saveddata/maps/MapId;)Lnet/minecraft/network/protocol/Packet; nextUpdatePacket a method_112 + p 1 mapId + m ()V markDecorationsDirty b method_32379 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Lnet/minecraft/world/entity/player/Player;)V + p 2 player +c net/minecraft/world/level/saveddata/maps/MapItemSavedData$MapPatch eqt$b net/minecraft/class_22$class_5637 + f Lnet/minecraft/network/codec/StreamCodec; STREAM_CODEC a field_48925 + f I startX b comp_2316 + f I startY c comp_2317 + f I width d comp_2318 + f I height e comp_2319 + f [B mapColors f comp_2320 + m ()I startX a comp_2316 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V applyToMap a method_32380 + p 1 savedData + m (Lio/netty/buffer/ByteBuf;)Ljava/util/Optional; read a method_56816 + p 0 buffer + m (Lio/netty/buffer/ByteBuf;Ljava/util/Optional;)V write a method_56817 + p 0 buffer + p 1 mapPatch + m ()I startY b comp_2317 + m ()I width c comp_2318 + m ()I height d comp_2319 + m ()[B mapColors e comp_2320 + m (IIII[B)V + p 1 startX + p 2 startY + p 3 width + p 4 height + p 5 mapColors + m ()V +c net/minecraft/world/level/saveddata/maps/package-info equ net/minecraft/class_6150 +c net/minecraft/world/level/saveddata/package-info eqv net/minecraft/class_6151 +c net/minecraft/world/level/storage/CommandStorage eqw net/minecraft/class_4565 + f Ljava/lang/String; ID_PREFIX a field_31834 + f Ljava/util/Map; namespaces b field_20747 + f Lnet/minecraft/world/level/storage/DimensionDataStorage; storage c field_20748 + m ()Ljava/util/stream/Stream; keys a method_22542 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/nbt/CompoundTag; get a method_22546 + p 1 id + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/nbt/CompoundTag;)V set a method_22547 + p 1 id + p 2 nbt + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/CommandStorage$Container; newStorage a method_22544 + p 1 namespace + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/storage/CommandStorage$Container; method_52613 a method_52613 + m (Ljava/util/Map$Entry;)Ljava/util/stream/Stream; method_22545 a method_22545 + m (Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData$Factory; factory b method_52614 + p 1 namespace + m (Ljava/lang/String;)Ljava/lang/String; createId c method_22543 + p 0 namespace + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/CommandStorage$Container; method_52615 d method_52615 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V + p 1 storage +c net/minecraft/world/level/storage/CommandStorage$Container eqw$a net/minecraft/class_4565$class_4566 + f Ljava/lang/String; TAG_CONTENTS a field_31835 + f Ljava/util/Map; storage b field_20749 + m (Ljava/lang/String;)Lnet/minecraft/nbt/CompoundTag; get a method_22550 + p 1 id + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; method_22551 a method_22551 + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V put a method_22552 + p 1 id + p 2 nbt + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/storage/CommandStorage$Container; load a method_32383 + p 1 compoundTag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_22553 a method_22553 + m (Ljava/lang/String;)Ljava/util/stream/Stream; getKeys b method_22554 + p 1 namespace + m ()V +c net/minecraft/world/level/storage/DataVersion eqx net/minecraft/class_6595 + f Ljava/lang/String; MAIN_SERIES a field_34768 + f I version b field_34769 + f Ljava/lang/String; series c field_34770 + m ()Z isSideSeries a method_38490 + m (Lnet/minecraft/world/level/storage/DataVersion;)Z isCompatible a method_38493 + p 1 dataVersion + m ()Ljava/lang/String; getSeries b method_38492 + m ()I getVersion c method_38494 + m (I)V + p 1 version + m (ILjava/lang/String;)V + p 1 version + p 2 series + m ()V +c net/minecraft/world/level/storage/DerivedLevelData eqy net/minecraft/class_27 + f Lnet/minecraft/world/level/storage/WorldData; worldData a field_24179 + f Lnet/minecraft/world/level/storage/ServerLevelData; wrapped b field_139 + m (Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/world/level/storage/ServerLevelData;)V + p 1 worldData + p 2 wrapped +c net/minecraft/world/level/storage/DimensionDataStorage eqz net/minecraft/class_26 + f Lorg/slf4j/Logger; LOGGER a field_136 + f Ljava/util/Map; cache b field_134 + f Lcom/mojang/datafixers/DataFixer; fixerUpper c field_17663 + f Lnet/minecraft/core/HolderLookup$Provider; registries d field_48926 + f Ljava/io/File; dataFolder e field_17664 + m ()V save a method_125 + m (Lnet/minecraft/world/level/saveddata/SavedData$Factory;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; computeIfAbsent a method_17924 + p 1 factory + p 2 name + m (Ljava/io/PushbackInputStream;)Z isGzip a method_17921 + p 1 inputStream + m (Ljava/lang/String;)Ljava/io/File; getDataFile a method_17922 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/util/datafix/DataFixTypes;I)Lnet/minecraft/nbt/CompoundTag; readTagFromDisk a method_17923 + p 1 filename + p 2 dataFixType + p 3 version + m (Ljava/lang/String;Lnet/minecraft/world/level/saveddata/SavedData;)V set a method_123 + p 1 name + p 2 savedData + m (Ljava/util/function/BiFunction;Lnet/minecraft/util/datafix/DataFixTypes;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; readSavedData a method_120 + p 1 reader + p 2 dataFixType + p 3 filename + m (Lnet/minecraft/world/level/saveddata/SavedData$Factory;Ljava/lang/String;)Lnet/minecraft/world/level/saveddata/SavedData; get b method_20786 + p 1 factory + p 2 name + m (Ljava/lang/String;Lnet/minecraft/world/level/saveddata/SavedData;)V method_32384 b method_32384 + m (Ljava/io/File;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/core/HolderLookup$Provider;)V + p 1 dataFolder + p 2 fixerUpper + p 3 registries + m ()V +c net/minecraft/world/level/storage/FileNameDateFormatter era net/minecraft/class_9078 + m ()Ljava/time/format/DateTimeFormatter; create a method_55786 + m ()V +c net/minecraft/world/level/storage/LevelData erb net/minecraft/class_5217 + m ()Lnet/minecraft/core/BlockPos; getSpawnPos a method_56126 + m (Lnet/minecraft/world/level/LevelHeightAccessor;)Ljava/lang/String; method_27411 a method_27411 + m (Lnet/minecraft/CrashReportCategory;Lnet/minecraft/world/level/LevelHeightAccessor;)V fillCrashReportCategory a method_151 + p 1 crashReportCategory + p 2 level + m ()F getSpawnAngle b method_30656 + m (Z)V setRaining b method_157 + c Sets whether it is raining or not. + p 1 raining + m ()J getGameTime c method_188 + m ()J getDayTime d method_217 + c Get current world time + m ()Ljava/lang/String; method_27410 e method_27410 + m ()Z isThundering g method_203 + c Returns {@code true} if it is thundering, {@code false} otherwise. + m ()Z isRaining i method_156 + c Returns {@code true} if it is raining, {@code false} otherwise. + m ()Z isHardcore l method_152 + c Returns {@code true} if hardcore mode is enabled, otherwise {@code false}. + m ()Lnet/minecraft/world/level/GameRules; getGameRules o method_146 + c Gets the GameRules class Instance. + m ()Lnet/minecraft/world/Difficulty; getDifficulty q method_207 + m ()Z isDifficultyLocked r method_197 +c net/minecraft/world/level/storage/LevelDataAndDimensions erc net/minecraft/class_8895 + f Lnet/minecraft/world/level/storage/WorldData; worldData a comp_2008 + f Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; dimensions b comp_2009 + m ()Lnet/minecraft/world/level/storage/WorldData; worldData a comp_2008 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete; dimensions b comp_2009 + m (Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete;)V +c net/minecraft/world/level/storage/LevelResource erd net/minecraft/class_5218 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_ADVANCEMENTS_DIR a field_24180 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_STATS_DIR b field_24181 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_DATA_DIR c field_24182 + f Lnet/minecraft/world/level/storage/LevelResource; PLAYER_OLD_DATA_DIR d field_24183 + f Lnet/minecraft/world/level/storage/LevelResource; LEVEL_DATA_FILE e field_24184 + f Lnet/minecraft/world/level/storage/LevelResource; OLD_LEVEL_DATA_FILE f field_38978 + f Lnet/minecraft/world/level/storage/LevelResource; ICON_FILE g field_38979 + f Lnet/minecraft/world/level/storage/LevelResource; LOCK_FILE h field_38980 + f Lnet/minecraft/world/level/storage/LevelResource; GENERATED_DIR i field_24185 + f Lnet/minecraft/world/level/storage/LevelResource; DATAPACK_DIR j field_24186 + f Lnet/minecraft/world/level/storage/LevelResource; MAP_RESOURCE_FILE k field_24187 + f Lnet/minecraft/world/level/storage/LevelResource; ROOT l field_24188 + f Ljava/lang/String; id m field_24189 + m ()Ljava/lang/String; getId a method_27423 + m (Ljava/lang/String;)V + p 1 id + m ()V +c net/minecraft/world/level/storage/LevelStorageException ere net/minecraft/class_33 + f Lnet/minecraft/network/chat/Component; messageComponent a field_38981 + m ()Lnet/minecraft/network/chat/Component; getMessageComponent a method_43416 + m (Lnet/minecraft/network/chat/Component;)V + p 1 messageComponent +c net/minecraft/world/level/storage/LevelStorageSource erf net/minecraft/class_32 + f Ljava/lang/String; ALLOWED_SYMLINKS_CONFIG_NAME a field_44950 + f Lorg/slf4j/Logger; LOGGER b field_17665 + f Ljava/time/format/DateTimeFormatter; FORMATTER c field_200 + f Ljava/lang/String; TAG_DATA d field_36348 + f Ljava/nio/file/PathMatcher; NO_SYMLINKS_ALLOWED e field_44951 + f I UNCOMPRESSED_NBT_QUOTA f field_46830 + f I DISK_SPACE_WARNING_THRESHOLD g field_49426 + f Ljava/nio/file/Path; baseDir h field_17666 + f Ljava/nio/file/Path; backupDir i field_17667 + f Lcom/mojang/datafixers/DataFixer; fixerUpper j field_17668 + f Lnet/minecraft/world/level/validation/DirectoryValidator; worldDirValidator k field_44952 + m ()Ljava/lang/String; getName a method_35504 + m (Lnet/minecraft/resources/ResourceLocation;)V method_45551 a method_45551 + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59826 a method_59826 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/WorldDataConfiguration; readDataConfig a method_29580 + p 0 dynamic + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/packs/repository/PackRepository;Z)Lnet/minecraft/server/WorldLoader$PackConfig; getPackConfig a method_54522 + p 0 dynamic + p 1 packRepository + p 2 safeMode + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/WorldDataConfiguration;Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;)Lnet/minecraft/world/level/storage/LevelDataAndDimensions; getLevelDataAndDimensions a method_54523 + p 0 dynamic + p 1 dataConfiguration + p 2 levelStemRegistry + p 3 registry + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;Z)Lnet/minecraft/world/level/storage/LevelSummary; makeLevelSummary a method_54524 + p 1 dynamic + p 2 levelDirectory + p 3 locked + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelCandidates;)Ljava/util/concurrent/CompletableFuture; loadLevelSummaries a method_43417 + p 1 candidates + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)J getFileModificationTime a method_54526 + p 0 levelDirectory + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;Z)Lnet/minecraft/world/level/storage/LevelSummary; readLevelSummary a method_54527 + p 1 levelDirectory + p 2 locked + m (Ljava/lang/String;)Z isNewLevelIdAcceptable a method_240 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/world/level/validation/DirectoryValidator; parseValidator a method_52235 + p 0 validator + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)Lcom/mojang/serialization/Dynamic; readLevelDataTagFixed a method_54528 + p 0 levelPath + p 1 dataFixer + m (Ljava/util/List;)Ljava/util/List; method_43495 a method_43495 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource$LevelCandidates; findLevelCandidates b method_235 + m (Lcom/mojang/datafixers/DataFixer;ILcom/mojang/serialization/Dynamic;)Lcom/mojang/serialization/Dynamic; method_59827 b method_59827 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/flag/FeatureFlagSet; parseFeatureFlagsFromSummary b method_45552 + p 0 dataDynamic + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)Lnet/minecraft/world/level/storage/LevelSummary; method_43418 b method_43418 + m (Ljava/lang/String;)Z levelExists b method_230 + c Return whether the given world can be loaded. + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/world/level/storage/LevelStorageSource; createDefault b method_26999 + p 0 savesDir + m ()Ljava/nio/file/Path; getBaseDir c method_19636 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_45553 c method_45553 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory;)Z method_43419 c method_43419 + m (Ljava/lang/String;)Ljava/nio/file/Path; getLevelPath c method_52238 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/CompoundTag; readLevelDataTagRaw c method_54529 + p 0 levelPath + m ()Ljava/nio/file/Path; getBackupPath d method_236 + c Gets the folder where backups are stored + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; validateAndCreateAccess d method_52236 + p 1 saveName + m (Ljava/nio/file/Path;)Ljava/time/Instant; getFileModificationTime d method_54530 + p 0 dataFilePath + m ()Lnet/minecraft/world/level/validation/DirectoryValidator; getWorldDirValidator e method_52237 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; createAccess e method_27002 + p 1 saveName + m (Ljava/nio/file/Path;)Lnet/minecraft/nbt/Tag; readLightweightData e method_40035 + p 0 file + m ()I getStorageVersion f method_17931 + m (Ljava/nio/file/Path;)Z method_43420 f method_43420 + m (Ljava/nio/file/Path;)Z method_52616 g method_52616 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;Lcom/mojang/datafixers/DataFixer;)V + p 1 baseDir + p 2 backupDir + p 3 worldDirValidator + p 4 fixerUpper + m ()V +c net/minecraft/world/level/storage/LevelStorageSource$LevelCandidates erf$a net/minecraft/class_32$class_7410 + f Ljava/util/List; levels a comp_731 + m ()Z isEmpty a method_43421 + m ()Ljava/util/List; levels b comp_731 + m (Ljava/util/List;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelDirectory erf$b net/minecraft/class_32$class_7411 + f Ljava/nio/file/Path; path a comp_732 + m ()Ljava/lang/String; directoryName a method_43422 + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; resourcePath a method_43423 + p 1 resource + m (Ljava/time/LocalDateTime;)Ljava/nio/file/Path; corruptedDataFile a method_43424 + p 1 dateTime + m ()Ljava/nio/file/Path; dataFile b method_43425 + m (Ljava/time/LocalDateTime;)Ljava/nio/file/Path; rawDataFile b method_54531 + p 1 dateTime + m ()Ljava/nio/file/Path; oldDataFile c method_43426 + m ()Ljava/nio/file/Path; iconFile d method_43427 + m ()Ljava/nio/file/Path; lockFile e method_43428 + m ()Ljava/nio/file/Path; path f comp_732 + m (Ljava/nio/file/Path;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess erf$c net/minecraft/class_32$class_5143 + f Lnet/minecraft/world/level/storage/LevelStorageSource; field_23766 a field_23766 + f Lnet/minecraft/util/DirectoryLock; lock b field_23767 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; levelDirectory c field_23768 + f Ljava/lang/String; levelId d field_23769 + f Ljava/util/Map; resources e field_24190 + m ()J estimateDiskSpace a method_57628 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/nio/file/Path; getDimensionPath a method_27424 + p 1 dimensionPath + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/storage/LevelSummary; getSummary a method_29584 + p 1 dynamic + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; getLevelPath a method_27010 + p 1 folderName + m (Ljava/lang/String;)V renameLevel a method_27008 + p 1 saveName + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_54534 a method_54534 + m (Ljava/util/function/Consumer;)V modifyLevelDataWithoutDatafix a method_54537 + p 1 modifier + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V saveDataTag a method_27425 + p 1 registries + p 2 serverConfiguration + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/level/storage/WorldData;Lnet/minecraft/nbt/CompoundTag;)V saveDataTag a method_27426 + p 1 registries + p 2 serverConfiguration + p 3 hostPlayerNBT + m (Lnet/minecraft/nbt/CompoundTag;)V saveLevelData a method_54538 + p 1 tag + m (Z)Ljava/time/Instant; getFileModificationTime a method_54539 + p 1 useFallback + m ()Z checkForLowDiskSpace b method_57629 + m (Ljava/lang/String;)V renameAndDropPlayer b method_54540 + p 1 saveName + m (Ljava/lang/String;Lnet/minecraft/nbt/CompoundTag;)V method_54541 b method_54541 + m (Z)Lcom/mojang/serialization/Dynamic; getDataTag b method_27013 + p 1 useFallback + m ()V safeClose c method_54532 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource; parent d method_52617 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource$LevelDirectory; getLevelDirectory e method_54543 + m ()Ljava/lang/String; getLevelId f method_27005 + m ()Lnet/minecraft/world/level/storage/PlayerDataStorage; createPlayerStorage g method_27427 + m ()Lcom/mojang/serialization/Dynamic; getDataTag h method_54545 + m ()Lcom/mojang/serialization/Dynamic; getDataTagFallback i method_54546 + m ()Ljava/util/Optional; getIconFile j method_27014 + m ()V deleteLevel k method_27015 + m ()J makeWorldBackup l method_27016 + m ()Z hasWorldData m method_54547 + m ()Z restoreLevelDataFromOld n method_54548 + m ()V checkLock o method_27017 + m (Lnet/minecraft/world/level/storage/LevelStorageSource;Ljava/lang/String;Ljava/nio/file/Path;)V + p 2 levelId + p 3 levelDir +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$1 erf$c$1 net/minecraft/class_32$class_5143$1 + f Ljava/nio/file/Path; val$lockPath a field_23770 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; field_23771 b field_23771 + m (Ljava/nio/file/Path;Ljava/io/IOException;)Ljava/nio/file/FileVisitResult; postVisitDirectory a method_27018 + p 1 dir + p 2 exception + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_27019 + p 1 file + p 2 attrs + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;)V +c net/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess$2 erf$c$2 net/minecraft/class_32$class_5143$2 + f Ljava/nio/file/Path; val$rootPath a field_204 + f Ljava/util/zip/ZipOutputStream; val$stream b field_201 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; field_203 c field_203 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile a method_246 + p 1 file + p 2 attrs + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/nio/file/Path;Ljava/util/zip/ZipOutputStream;)V +c net/minecraft/world/level/storage/LevelSummary erg net/minecraft/class_34 + f Lnet/minecraft/network/chat/Component; PLAY_WORLD a field_46832 + f Lnet/minecraft/world/level/LevelSettings; settings b field_25022 + f Lnet/minecraft/world/level/storage/LevelVersion; levelVersion c field_25023 + f Ljava/lang/String; levelId d field_205 + f Z requiresManualConversion e field_209 + f Z locked f field_23772 + f Z experimental g field_40371 + f Ljava/nio/file/Path; icon h field_23773 + f Lnet/minecraft/network/chat/Component; info i field_24191 + m ()Ljava/lang/String; getLevelId a method_248 + c Returns the file name. + m (Lnet/minecraft/world/level/storage/LevelSummary;)I compareTo a method_251 + p 1 other + m ()Ljava/lang/String; getLevelName b method_252 + c Return the display name of the save. + m ()Ljava/nio/file/Path; getIcon c method_27020 + m ()Z requiresManualConversion d method_255 + m ()Z isExperimental e method_45554 + m ()J getLastPlayed f method_249 + m ()Lnet/minecraft/world/level/LevelSettings; getSettings g method_35505 + m ()Lnet/minecraft/world/level/GameType; getGameMode h method_247 + c Gets the EnumGameType. + m ()Z isHardcore i method_257 + m ()Z hasCommands j method_259 + m ()Lnet/minecraft/network/chat/MutableComponent; getWorldVersionName k method_258 + m ()Lnet/minecraft/world/level/storage/LevelVersion; levelVersion l method_29586 + m ()Z shouldBackup m method_54549 + m ()Z isDowngrade n method_54550 + m ()Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; backupStatus o method_33405 + m ()Z isLocked p method_27021 + m ()Z isDisabled q method_33784 + m ()Z isCompatible r method_38496 + m ()Lnet/minecraft/network/chat/Component; getInfo s method_27429 + m ()Lnet/minecraft/network/chat/Component; primaryActionMessage t method_54551 + m ()Z primaryActionActive u method_54552 + m ()Z canUpload v method_56127 + m ()Z canEdit w method_54553 + m ()Z canRecreate x method_54554 + m ()Z canDelete y method_54555 + m ()Lnet/minecraft/network/chat/Component; createInfo z method_27430 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/storage/LevelVersion;Ljava/lang/String;ZZZLjava/nio/file/Path;)V + p 1 settings + p 2 levelVersion + p 3 levelId + p 4 requiresManualConversion + p 5 locked + p 6 experimental + p 7 icon + m ()V +c net/minecraft/world/level/storage/LevelSummary$BackupStatus erg$a net/minecraft/class_34$class_5781 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; NONE a field_28437 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; DOWNGRADE b field_28438 + f Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; UPGRADE_TO_SNAPSHOT c field_28439 + f Z shouldBackup d field_28440 + f Z severe e field_28441 + f Ljava/lang/String; translationKey f field_28442 + f [Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; $VALUES g field_28443 + m ()Z shouldBackup a method_33406 + m ()Z isSevere b method_33407 + m ()Ljava/lang/String; getTranslationKey c method_33408 + m ()[Lnet/minecraft/world/level/storage/LevelSummary$BackupStatus; $values d method_36792 + m (Ljava/lang/String;IZZLjava/lang/String;)V + p 3 shouldBackup + p 4 severe + p 5 translationKey + m ()V +c net/minecraft/world/level/storage/LevelSummary$CorruptedLevelSummary erg$b net/minecraft/class_34$class_8896 + f Lnet/minecraft/network/chat/Component; INFO b field_46833 + f Lnet/minecraft/network/chat/Component; RECOVER c field_46834 + f J lastPlayed d field_46835 + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_54556 a method_54556 + m (Ljava/lang/String;Ljava/nio/file/Path;J)V + p 1 levelId + p 2 icon + p 3 lastPlayed + m ()V +c net/minecraft/world/level/storage/LevelSummary$SymlinkLevelSummary erg$c net/minecraft/class_34$class_8578 + f Lnet/minecraft/network/chat/Component; MORE_INFO_BUTTON b field_46836 + f Lnet/minecraft/network/chat/Component; INFO c field_46837 + m (Ljava/lang/String;Ljava/nio/file/Path;)V + p 1 levelId + p 2 icon + m ()V +c net/minecraft/world/level/storage/LevelVersion erh net/minecraft/class_5315 + f I levelDataVersion a field_25024 + f J lastPlayed b field_25025 + f Ljava/lang/String; minecraftVersionName c field_25026 + f Lnet/minecraft/world/level/storage/DataVersion; minecraftVersion d field_25027 + f Z snapshot e field_25028 + m ()I levelDataVersion a method_29022 + m (Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/level/storage/LevelVersion; parse a method_29023 + p 0 nbt + m ()J lastPlayed b method_29024 + m ()Ljava/lang/String; minecraftVersionName c method_29025 + m ()Lnet/minecraft/world/level/storage/DataVersion; minecraftVersion d method_29026 + m ()Z snapshot e method_29027 + m (IJLjava/lang/String;ILjava/lang/String;Z)V + p 1 levelDataVersion + p 2 lastPlayed + p 4 minecraftVersionName + p 5 minecraftVersion + p 6 series + p 7 snapshot +c net/minecraft/world/level/storage/PlayerDataStorage eri net/minecraft/class_29 + f Lcom/mojang/datafixers/DataFixer; fixerUpper a field_148 + f Lorg/slf4j/Logger; LOGGER b field_149 + f Ljava/io/File; playerDir c field_144 + f Ljava/time/format/DateTimeFormatter; FORMATTER d field_47840 + m (Lnet/minecraft/world/entity/player/Player;)V save a method_262 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;)V backup a method_55787 + p 1 player + p 2 suffix + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; method_55788 a method_55788 + m (Lnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; load b method_55789 + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Ljava/lang/String;)Ljava/util/Optional; load b method_261 + p 1 player + p 2 suffix + m (Lnet/minecraft/world/entity/player/Player;)Ljava/util/Optional; method_55790 c method_55790 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;)V + p 1 levelStorageAccess + p 2 fixerUpper + m ()V +c net/minecraft/world/level/storage/PrimaryLevelData erj net/minecraft/class_31 + f I wanderingTraderSpawnDelay A field_17736 + f I wanderingTraderSpawnChance B field_17737 + f Ljava/util/UUID; wanderingTraderId C field_17738 + f Ljava/util/Set; knownServerBrands D field_21837 + f Z wasModded E field_21838 + f Ljava/util/Set; removedFeatureFlags F field_43352 + f Lnet/minecraft/world/level/timers/TimerQueue; scheduledEvents G field_191 + f Ljava/lang/String; LEVEL_NAME a field_46838 + f Ljava/lang/String; PLAYER b field_36349 + f Ljava/lang/String; WORLD_GEN_SETTINGS c field_31843 + f Lorg/slf4j/Logger; LOGGER f field_25029 + f Lnet/minecraft/world/level/LevelSettings; settings g field_25030 + f Lnet/minecraft/world/level/levelgen/WorldOptions; worldOptions h field_25425 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; specialWorldProperty i field_40372 + f Lcom/mojang/serialization/Lifecycle; worldGenSettingsLifecycle j field_25426 + f Lnet/minecraft/core/BlockPos; spawnPos k field_48380 + f F spawnAngle l field_26367 + f J gameTime m field_189 + f J dayTime n field_198 + f Lnet/minecraft/nbt/CompoundTag; loadedPlayerTag o field_170 + f I version p field_158 + f I clearWeatherTime q field_176 + f Z raining r field_190 + f I rainTime s field_192 + f Z thundering t field_168 + f I thunderTime u field_173 + f Z initialized v field_185 + f Z difficultyLocked w field_157 + f Lnet/minecraft/world/level/border/WorldBorder$Settings; worldBorder x field_24193 + f Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; endDragonFightData y field_25031 + f Lnet/minecraft/nbt/CompoundTag; customBossEvents z field_156 + m (Lcom/mojang/serialization/DataResult$Error;)V method_45557 a method_45557 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_29032 a method_29032 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lnet/minecraft/world/level/levelgen/WorldOptions;Lcom/mojang/serialization/Lifecycle;)Lnet/minecraft/world/level/storage/PrimaryLevelData; parse a method_29029 + p 0 tag + p 1 levelSettings + p 2 specialWorldProperty + p 3 worldOptions + p 4 worldGenSettingsLifecycle + m (Ljava/util/Set;)Lnet/minecraft/nbt/ListTag; stringCollectionToTag a method_49902 + p 0 stringCollection + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/CompoundTag;)V setTagData a method_158 + p 1 registry + p 2 nbt + p 3 playerNBT + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_45558 a method_45558 + m (Lcom/mojang/serialization/Dynamic;)Ljava/util/stream/Stream; method_49901 b method_49901 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_29030 b method_29030 + m (Lnet/minecraft/nbt/CompoundTag;ZLnet/minecraft/core/BlockPos;FJJIIIZIZZZLnet/minecraft/world/level/border/WorldBorder$Settings;IILjava/util/UUID;Ljava/util/Set;Ljava/util/Set;Lnet/minecraft/world/level/timers/TimerQueue;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lcom/mojang/serialization/Lifecycle;)V + p 1 loadedPlayerTag + p 2 wasModded + p 3 spawnPos + p 4 spawnAngle + p 5 gameTime + p 7 dayTime + p 9 version + p 10 clearWeatherTime + p 11 rainTime + p 12 raining + p 13 thunderTime + p 14 thundering + p 15 initialized + p 16 difficultyLocked + p 17 worldBorder + p 18 wanderingTraderSpawnDelay + p 19 wanderingTraderSpawnChance + p 20 wanderingTraderId + p 21 knownServerBrands + p 22 removedFeatureFlags + p 23 scheduledEvents + p 24 customBossEvents + p 25 endDragonFightData + p 26 settings + p 27 worldOptions + p 28 specialWorldProperty + p 29 worldGenSettingsLifecycle + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lcom/mojang/serialization/Lifecycle;)V + p 1 settings + p 2 worldOptions + p 3 specialWorldProperty + p 4 worldGenSettingsLifecycle + m ()V +c net/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty erj$a net/minecraft/class_31$class_7729 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; NONE a field_40373 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; FLAT b field_40374 + f Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; DEBUG c field_40375 + f [Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; $VALUES d field_40376 + m ()[Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty; $values a method_45559 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/level/storage/ServerLevelData erk net/minecraft/class_5268 + m (I)V setClearWeatherTime a method_167 + p 1 time + m (J)V setGameTime a method_29034 + p 1 time + m (Lnet/minecraft/world/level/GameType;)V setGameType a method_193 + p 1 type + m (Lnet/minecraft/world/level/border/WorldBorder$Settings;)V setWorldBorder a method_27415 + p 1 serializer + m (Ljava/util/UUID;)V setWanderingTraderId a method_18040 + p 1 id + m (Z)V setThundering a method_147 + c Sets whether it is thundering or not. + p 1 thundering + m (I)V setThunderTime b method_173 + c Defines the number of ticks until next thunderbolt. + p 1 time + m (J)V setDayTime b method_29035 + c Set current world time + p 1 time + m (I)V setRainTime c method_164 + c Sets the number of ticks until rain. + p 1 time + m (Z)V setInitialized c method_223 + c Sets the initialization status of the World. + p 1 initialized + m (I)V setWanderingTraderSpawnDelay d method_18041 + p 1 delay + m ()Ljava/lang/String; getLevelName e method_150 + c Get current world name + m (I)V setWanderingTraderSpawnChance e method_18042 + p 1 chance + m ()I getClearWeatherTime f method_155 + m ()I getThunderTime h method_145 + c Returns the number of ticks until next thunderbolt. + m ()I getRainTime j method_190 + c Return the number of ticks until rain. + m ()Lnet/minecraft/world/level/GameType; getGameType k method_210 + c Gets the GameType. + m ()Z isAllowCommands m method_194 + m ()Z isInitialized n method_222 + c Returns {@code true} if the World is initialized. + m ()Lnet/minecraft/world/level/border/WorldBorder$Settings; getWorldBorder p method_27422 + m ()Lnet/minecraft/world/level/timers/TimerQueue; getScheduledEvents s method_143 + m ()I getWanderingTraderSpawnDelay t method_18038 + m ()I getWanderingTraderSpawnChance u method_18039 + m ()Ljava/util/UUID; getWanderingTraderId v method_35506 + m ()Ljava/lang/String; method_27856 w method_27856 + m ()Ljava/lang/String; method_27858 x method_27858 +c net/minecraft/world/level/storage/WorldData erl net/minecraft/class_5219 + f I ANVIL_VERSION_ID d field_31844 + f I MCREGION_VERSION_ID e field_31845 + m ()Z isDebugWorld A method_45556 + m ()Lcom/mojang/serialization/Lifecycle; worldGenSettingsLifecycle B method_29588 + m ()Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data; endDragonFightData C method_29036 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; getDataConfiguration D method_29589 + m ()Lnet/minecraft/nbt/CompoundTag; getCustomBossEvents E method_228 + m ()Z wasModded F method_27431 + m ()Ljava/util/Set; getKnownServerBrands G method_27432 + m ()Ljava/util/Set; getRemovedFeatureFlags H method_49900 + m ()Lnet/minecraft/world/level/storage/ServerLevelData; overworldData I method_27859 + m ()Lnet/minecraft/world/level/LevelSettings; getLevelSettings J method_27433 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures K method_45560 + m ()Ljava/lang/String; method_27436 a method_27436 + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_208 + p 1 difficulty + m (Lnet/minecraft/world/level/GameType;)V setGameType a method_193 + p 1 type + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V setDataConfiguration a method_29590 + p 1 dataConfiguration + m (Lnet/minecraft/world/level/dimension/end/EndDragonFight$Data;)V setEndDragonFightData a method_29037 + p 1 endDragonFightData + m (Ljava/lang/String;Z)V setModdedInfo a method_24285 + p 1 name + p 2 isModded + m (Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; createTag a method_163 + p 1 registries + p 2 hostPlayerNBT + m (Lnet/minecraft/CrashReportCategory;)V fillCrashReportCategory a method_151 + p 1 category + m (Lnet/minecraft/nbt/CompoundTag;)V setCustomBossEvents a method_221 + p 1 nbt + m ()Ljava/lang/String; method_27438 b method_27438 + m ()Ljava/lang/String; method_49903 c method_49903 + m ()Ljava/lang/String; method_27439 d method_27439 + m (Z)V setDifficultyLocked d method_186 + p 1 locked + m ()Ljava/lang/String; getLevelName e method_150 + c Get current world name + m (I)Ljava/lang/String; getStorageVersionName f method_27440 + p 1 storageVersionId + m ()Lnet/minecraft/world/level/GameType; getGameType k method_210 + c Gets the GameType. + m ()Z isHardcore l method_152 + c Returns {@code true} if hardcore mode is enabled, otherwise {@code false}. + m ()Z isAllowCommands m method_194 + m ()Lnet/minecraft/world/level/GameRules; getGameRules o method_146 + c Gets the GameRules class Instance. + m ()Lnet/minecraft/world/Difficulty; getDifficulty q method_207 + m ()Z isDifficultyLocked r method_197 + m ()Lnet/minecraft/nbt/CompoundTag; getLoadedPlayerTag w method_226 + m ()I getVersion x method_168 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; worldGenOptions y method_28057 + m ()Z isFlatWorld z method_45555 +c net/minecraft/world/level/storage/WritableLevelData erm net/minecraft/class_5269 + m (Lnet/minecraft/core/BlockPos;F)V setSpawn a method_187 + p 1 spawnPoint + p 2 spawnAngle +c net/minecraft/world/level/storage/loot/BuiltInLootTables ern net/minecraft/class_39 + c Stores IDs for built in loot tables, i.e. loot tables which are not based directly on a block or entity ID. + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE A field_803 + f Lnet/minecraft/resources/ResourceKey; JUNGLE_TEMPLE_DISPENSER B field_751 + f Lnet/minecraft/resources/ResourceKey; IGLOO_CHEST C field_662 + f Lnet/minecraft/resources/ResourceKey; WOODLAND_MANSION D field_484 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_RUIN_SMALL E field_397 + f Lnet/minecraft/resources/ResourceKey; UNDERWATER_RUIN_BIG F field_300 + f Lnet/minecraft/resources/ResourceKey; BURIED_TREASURE G field_251 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_MAP H field_841 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_SUPPLY I field_880 + f Lnet/minecraft/resources/ResourceKey; SHIPWRECK_TREASURE J field_665 + f Lnet/minecraft/resources/ResourceKey; PILLAGER_OUTPOST K field_16593 + f Lnet/minecraft/resources/ResourceKey; BASTION_TREASURE L field_24046 + f Lnet/minecraft/resources/ResourceKey; BASTION_OTHER M field_24047 + f Lnet/minecraft/resources/ResourceKey; BASTION_BRIDGE N field_24048 + f Lnet/minecraft/resources/ResourceKey; BASTION_HOGLIN_STABLE O field_24049 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY P field_38438 + f Lnet/minecraft/resources/ResourceKey; ANCIENT_CITY_ICE_BOX Q field_38439 + f Lnet/minecraft/resources/ResourceKey; RUINED_PORTAL R field_24050 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD S field_47415 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_COMMON T field_49844 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_RARE U field_49845 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_UNIQUE V field_49846 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS W field_50194 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_COMMON X field_50195 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_RARE Y field_50196 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_REWARD_OMINOUS_UNIQUE Z field_50197 + f Lnet/minecraft/resources/ResourceKey; SHEEP_RED aA field_716 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BLACK aB field_778 + f Lnet/minecraft/resources/ResourceKey; FISHING aC field_353 + f Lnet/minecraft/resources/ResourceKey; FISHING_JUNK aD field_266 + f Lnet/minecraft/resources/ResourceKey; FISHING_TREASURE aE field_854 + f Lnet/minecraft/resources/ResourceKey; FISHING_FISH aF field_795 + f Lnet/minecraft/resources/ResourceKey; CAT_MORNING_GIFT aG field_16216 + f Lnet/minecraft/resources/ResourceKey; ARMORER_GIFT aH field_19062 + f Lnet/minecraft/resources/ResourceKey; BUTCHER_GIFT aI field_19063 + f Lnet/minecraft/resources/ResourceKey; CARTOGRAPHER_GIFT aJ field_19064 + f Lnet/minecraft/resources/ResourceKey; CLERIC_GIFT aK field_19065 + f Lnet/minecraft/resources/ResourceKey; FARMER_GIFT aL field_19066 + f Lnet/minecraft/resources/ResourceKey; EMPTY a field_844 + f Lnet/minecraft/resources/ResourceKey; FISHERMAN_GIFT aM field_19067 + f Lnet/minecraft/resources/ResourceKey; FLETCHER_GIFT aN field_19068 + f Lnet/minecraft/resources/ResourceKey; LEATHERWORKER_GIFT aO field_19069 + f Lnet/minecraft/resources/ResourceKey; LIBRARIAN_GIFT aP field_19070 + f Lnet/minecraft/resources/ResourceKey; MASON_GIFT aQ field_19071 + f Lnet/minecraft/resources/ResourceKey; SHEPHERD_GIFT aR field_19072 + f Lnet/minecraft/resources/ResourceKey; TOOLSMITH_GIFT aS field_19073 + f Lnet/minecraft/resources/ResourceKey; WEAPONSMITH_GIFT aT field_19074 + f Lnet/minecraft/resources/ResourceKey; SNIFFER_DIGGING aU field_44748 + f Lnet/minecraft/resources/ResourceKey; PANDA_SNEEZE aV field_49158 + f Lnet/minecraft/resources/ResourceKey; PIGLIN_BARTERING aW field_22402 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_CHAMBER_KEY aX field_47423 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_CHAMBER_CONSUMABLES aY field_47424 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_OMINOUS_TRIAL_CHAMBER_KEY aZ field_50198 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_SUPPLY aa field_47416 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR ab field_47417 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_INTERSECTION ac field_47418 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_INTERSECTION_BARREL ad field_47419 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_ENTRANCE ae field_47420 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR_DISPENSER af field_47421 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CHAMBER_DISPENSER ag field_47422 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_WATER_DISPENSER ah field_47425 + f Lnet/minecraft/resources/ResourceKey; TRIAL_CHAMBERS_CORRIDOR_POT ai field_47426 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER aj field_50201 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER_RANGED ak field_51414 + f Lnet/minecraft/resources/ResourceKey; EQUIPMENT_TRIAL_CHAMBER_MELEE al field_51415 + f Lnet/minecraft/resources/ResourceKey; SHEEP_WHITE am field_869 + f Lnet/minecraft/resources/ResourceKey; SHEEP_ORANGE an field_814 + f Lnet/minecraft/resources/ResourceKey; SHEEP_MAGENTA ao field_224 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIGHT_BLUE ap field_461 + f Lnet/minecraft/resources/ResourceKey; SHEEP_YELLOW aq field_385 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIME ar field_702 + f Lnet/minecraft/resources/ResourceKey; SHEEP_PINK as field_629 + f Lnet/minecraft/resources/ResourceKey; SHEEP_GRAY at field_878 + f Lnet/minecraft/resources/ResourceKey; SHEEP_LIGHT_GRAY au field_806 + f Lnet/minecraft/resources/ResourceKey; SHEEP_CYAN av field_365 + f Lnet/minecraft/resources/ResourceKey; SHEEP_PURPLE aw field_285 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BLUE ax field_394 + f Lnet/minecraft/resources/ResourceKey; SHEEP_BROWN ay field_489 + f Lnet/minecraft/resources/ResourceKey; SHEEP_GREEN az field_607 + f Lnet/minecraft/resources/ResourceKey; SPAWN_BONUS_CHEST b field_850 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_OMINOUS_TRIAL_CHAMBER_CONSUMABLES ba field_50199 + f Lnet/minecraft/resources/ResourceKey; SPAWNER_TRIAL_ITEMS_TO_DROP_WHEN_OMINOUS bb field_50200 + f Lnet/minecraft/resources/ResourceKey; BOGGED_SHEAR bc field_49427 + f Lnet/minecraft/resources/ResourceKey; DESERT_WELL_ARCHAEOLOGY bd field_43353 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID_ARCHAEOLOGY be field_43354 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ARCHAEOLOGY_COMMON bf field_44648 + f Lnet/minecraft/resources/ResourceKey; TRAIL_RUINS_ARCHAEOLOGY_RARE bg field_44649 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_WARM_ARCHAEOLOGY bh field_43356 + f Lnet/minecraft/resources/ResourceKey; OCEAN_RUIN_COLD_ARCHAEOLOGY bi field_43357 + f Ljava/util/Set; LOCATIONS bj field_667 + f Ljava/util/Set; IMMUTABLE_LOCATIONS bk field_600 + f Lnet/minecraft/resources/ResourceKey; END_CITY_TREASURE c field_274 + f Lnet/minecraft/resources/ResourceKey; SIMPLE_DUNGEON d field_356 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_WEAPONSMITH e field_434 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TOOLSMITH f field_17107 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_ARMORER g field_17009 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_CARTOGRAPHER h field_16751 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_MASON i field_17010 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SHEPHERD j field_17011 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_BUTCHER k field_17012 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_FLETCHER l field_17108 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_FISHER m field_18007 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TANNERY n field_16750 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TEMPLE o field_17109 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_DESERT_HOUSE p field_16752 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_PLAINS_HOUSE q field_16748 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_TAIGA_HOUSE r field_16749 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SNOWY_HOUSE s field_16754 + f Lnet/minecraft/resources/ResourceKey; VILLAGE_SAVANNA_HOUSE t field_16753 + f Lnet/minecraft/resources/ResourceKey; ABANDONED_MINESHAFT u field_472 + f Lnet/minecraft/resources/ResourceKey; NETHER_BRIDGE v field_615 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_LIBRARY w field_683 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_CROSSING x field_800 + f Lnet/minecraft/resources/ResourceKey; STRONGHOLD_CORRIDOR y field_842 + f Lnet/minecraft/resources/ResourceKey; DESERT_PYRAMID z field_885 + m ()Ljava/util/Set; all a method_270 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/resources/ResourceKey; register a method_271 + p 0 name + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceKey; register a method_269 + p 0 name + m ()V + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulator ero net/minecraft/class_9666 + m ()Lnet/minecraft/core/component/DataComponentType; type a method_59719 + m (Lnet/minecraft/world/item/ItemStack;Ljava/lang/Object;Ljava/util/stream/Stream;)V setContents a method_59720 + p 1 stack + p 2 contents + p 3 items + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/function/UnaryOperator;)V modifyItems a method_59721 + p 1 stack + p 2 modifier + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/stream/Stream;)V setContents a method_59722 + p 1 stack + p 2 items + m (Ljava/lang/Object;)Ljava/util/stream/Stream; getContents a method_59723 + p 1 contents + m (Ljava/lang/Object;Ljava/util/stream/Stream;)Ljava/lang/Object; setContents a method_59724 + p 1 contents + p 2 items + m (Ljava/util/function/UnaryOperator;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_59725 a method_59725 + m ()Ljava/lang/Object; empty b method_59726 +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators erp net/minecraft/class_9667 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; CONTAINER a field_51416 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; BUNDLE_CONTENTS b field_51417 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; CHARGED_PROJECTILES c field_51418 + f Ljava/util/Map; ALL_MANIPULATORS d field_51419 + f Lcom/mojang/serialization/Codec; CODEC e field_51420 + m ()Ljava/lang/String; method_59727 a method_59727 + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_59728 a method_59728 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_59729 a method_59729 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$1 erp$1 net/minecraft/class_9667$1 + m (Lnet/minecraft/world/item/component/ItemContainerContents;)Ljava/util/stream/Stream; getContents a method_59730 + m (Lnet/minecraft/world/item/component/ItemContainerContents;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/ItemContainerContents; setContents a method_59731 + m ()Lnet/minecraft/world/item/component/ItemContainerContents; empty c method_59732 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$2 erp$2 net/minecraft/class_9667$2 + m (Lnet/minecraft/world/item/component/BundleContents;)Ljava/util/stream/Stream; getContents a method_59733 + m (Lnet/minecraft/world/item/component/BundleContents;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/BundleContents; setContents a method_59734 + m ()Lnet/minecraft/world/item/component/BundleContents; empty c method_59735 + m ()V +c net/minecraft/world/level/storage/loot/ContainerComponentManipulators$3 erp$3 net/minecraft/class_9667$3 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;)Ljava/util/stream/Stream; getContents a method_59736 + m (Lnet/minecraft/world/item/component/ChargedProjectiles;Ljava/util/stream/Stream;)Lnet/minecraft/world/item/component/ChargedProjectiles; setContents a method_59737 + m ()Lnet/minecraft/world/item/component/ChargedProjectiles; empty c method_59738 + m ()V +c net/minecraft/world/level/storage/loot/IntRange erq net/minecraft/class_42 + c A possibly unbounded range of integers based on {@link LootContext}. Minimum and maximum are given in the form of {@link NumberProvider}s.\nMinimum and maximum are both optional. If given, they are both inclusive. + f Lcom/mojang/serialization/Codec; CODEC a field_45790 + f Lcom/mojang/serialization/Codec; RECORD_CODEC b field_45791 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min c field_921 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max d field_920 + f Lnet/minecraft/world/level/storage/loot/IntRange$IntLimiter; limiter e field_27897 + f Lnet/minecraft/world/level/storage/loot/IntRange$IntChecker; predicate f field_27898 + m ()Ljava/util/Set; getReferencedContextParams a method_32386 + c The LootContextParams required for this IntRange. + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; exact a method_32387 + c Create an IntRange that contains only exactly the given value. + p 0 exactValue + m (II)Lnet/minecraft/world/level/storage/loot/IntRange; range a method_282 + c Create an IntRange that ranges from {@code min} to {@code max}, both inclusive. + p 0 min + p 1 max + m (Lcom/mojang/datafixers/util/Either;)Lnet/minecraft/world/level/storage/loot/IntRange; method_53260 a method_53260 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53261 a method_53261 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lcom/mojang/datafixers/util/Either; method_53262 a method_53262 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)I clamp a method_32389 + c Clamp the given value so that it falls within this IntRange. + p 1 lootContext + p 2 value + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32390 a method_32390 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32391 a method_32391 + m ()Ljava/util/OptionalInt; unpackExact b method_53263 + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; lowerBound b method_280 + c Create an IntRange with the given minimum (inclusive) and no upper bound. + p 0 min + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/Optional; method_53264 b method_53264 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)Z test b method_32393 + c Check whether the given value falls within this IntRange. + p 1 lootContext + p 2 value + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32394 b method_32394 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32395 b method_32395 + m (I)Lnet/minecraft/world/level/storage/loot/IntRange; upperBound c method_277 + c Create an IntRange with the given maximum (inclusive) and no lower bound. + p 0 max + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/Optional; method_53265 c method_53265 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32396 c method_32396 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)Z method_32397 c method_32397 + m (Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_279 d method_279 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/LootContext;I)I method_32398 d method_32398 + m (Ljava/util/Optional;Ljava/util/Optional;)V + p 1 min + p 2 max + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 min + p 2 max + m ()V +c net/minecraft/world/level/storage/loot/IntRange$IntChecker erq$a net/minecraft/class_42$class_5638 +c net/minecraft/world/level/storage/loot/IntRange$IntLimiter erq$b net/minecraft/class_42$class_5639 +c net/minecraft/world/level/storage/loot/LootContext err net/minecraft/class_47 + c LootContext stores various context information for loot generation.\nThis includes the Level as well as any known {@link LootContextParam}s. + f Lnet/minecraft/world/level/storage/loot/LootParams; params a field_44881 + f Lnet/minecraft/util/RandomSource; random b field_923 + f Lnet/minecraft/core/HolderGetter$Provider; lootDataResolver c field_44490 + f Ljava/util/Set; visitedElements d field_927 + m ()Lnet/minecraft/core/HolderGetter$Provider; getResolver a method_51183 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V addDynamicDrops a method_297 + c Add the dynamic drops for the given dynamic drops name to the given consumer.\nIf no dynamic drops provider for the given name has been registered to this LootContext, nothing is generated.\n\n@see DynamicDrops + p 1 name + p 2 consumer + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)Z hasVisitedElement a method_51184 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51185 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51186 + p 0 modifier + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z hasParam a method_300 + c Check whether the given parameter is present in this context. + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry; createVisitedEntry a method_51187 + p 0 predicate + m ()Lnet/minecraft/util/RandomSource; getRandom b method_294 + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)Z pushVisitedElement b method_298 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParam b method_35508 + c Get the value of the given parameter.\n\n@throws NoSuchElementException if the parameter is not present in this context + p 1 param + m ()F getLuck c method_302 + c The luck value for this loot context. This is usually just the player's {@linkplain Attributes#LUCK luck value}, however it may be modified depending on the context of the looting.\nWhen fishing for example it is increased based on the Luck of the Sea enchantment. + m (Lnet/minecraft/world/level/storage/loot/LootContext$VisitedEntry;)V popVisitedElement c method_295 + p 1 element + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParamOrNull c method_296 + c Get the value of the given parameter if it is present in this context, null otherwise. + p 1 parameter + m ()Lnet/minecraft/server/level/ServerLevel; getLevel d method_299 + m (Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 params + p 2 random + p 3 lootDataResolver +c net/minecraft/world/level/storage/loot/LootContext$Builder err$a net/minecraft/class_47$class_48 + f Lnet/minecraft/world/level/storage/loot/LootParams; params a field_44882 + f Lnet/minecraft/util/RandomSource; random b field_934 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_313 + m (J)Lnet/minecraft/world/level/storage/loot/LootContext$Builder; withOptionalRandomSeed a method_304 + p 1 seed + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/level/storage/loot/LootContext$Builder; withOptionalRandomSource a method_60568 + p 1 random + m (Ljava/util/Optional;)Lnet/minecraft/world/level/storage/loot/LootContext; create a method_309 + p 1 sequence + m (Ljava/util/Optional;Lnet/minecraft/server/level/ServerLevel;)Ljava/util/Optional; method_53266 a method_53266 + m (Lnet/minecraft/world/level/storage/loot/LootParams;)V + p 1 params +c net/minecraft/world/level/storage/loot/LootContext$EntityTarget err$b net/minecraft/class_47$class_50 + c Represents a type of entity that can be looked up in a {@link LootContext} using a {@link LootContextParam}. + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; THIS a field_935 + c Looks up {@link LootContextParams#THIS_ENTITY}. + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; ATTACKER b field_936 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; DIRECT_ATTACKER c field_939 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; ATTACKING_PLAYER d field_937 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC e field_45792 + f Ljava/lang/String; name f field_941 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; param g field_938 + f [Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; $VALUES h field_940 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; getParam a method_315 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; getByName a method_314 + p 0 name + m ()[Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; $values b method_36793 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)V + p 3 name + p 4 param + m ()V +c net/minecraft/world/level/storage/loot/LootContext$VisitedEntry err$c net/minecraft/class_47$class_8487 + f Lnet/minecraft/world/level/storage/loot/LootDataType; type a comp_1472 + f Ljava/lang/Object; value b comp_1473 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType; type a comp_1472 + m ()Ljava/lang/Object; value b comp_1473 + m (Lnet/minecraft/world/level/storage/loot/LootDataType;Ljava/lang/Object;)V +c net/minecraft/world/level/storage/loot/LootContextUser ers net/minecraft/class_46 + c An object that will use some parameters from a LootContext. Used for validation purposes to validate that the correct parameters are present. + m ()Ljava/util/Set; getReferencedContextParams a method_293 + c Get the parameters used by this object. + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_292 + c Validate that this object is used correctly according to the given ValidationContext. + p 1 context +c net/minecraft/world/level/storage/loot/LootDataType ert net/minecraft/class_8490 + f Lnet/minecraft/world/level/storage/loot/LootDataType; PREDICATE a field_44496 + f Lnet/minecraft/world/level/storage/loot/LootDataType; MODIFIER b field_44497 + f Lnet/minecraft/world/level/storage/loot/LootDataType; TABLE c field_44498 + f Lnet/minecraft/resources/ResourceKey; registryKey d comp_2519 + f Lcom/mojang/serialization/Codec; codec e comp_2520 + f Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; validator f comp_2522 + f Lorg/slf4j/Logger; LOGGER g field_44499 + m ()Ljava/util/stream/Stream; values a method_51215 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DataResult$Error;)V method_53267 a method_53267 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/DynamicOps;Ljava/lang/Object;)Ljava/util/Optional; deserialize a method_51204 + p 1 resourceLocation + p 2 ops + p 3 value + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V method_51207 a method_51207 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/storage/loot/LootTable;)V method_51208 a method_51208 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Ljava/lang/Object;)V runValidation a method_51209 + p 1 context + p 2 key + p 3 value + m ()Lnet/minecraft/resources/ResourceKey; registryKey b comp_2519 + m ()Lcom/mojang/serialization/Codec; codec c comp_2520 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; validator d comp_2522 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; createSimpleValidator e method_51216 + m ()Lnet/minecraft/world/level/storage/loot/LootDataType$Validator; createLootTableValidator f method_51217 + m (Lnet/minecraft/resources/ResourceKey;Lcom/mojang/serialization/Codec;Lnet/minecraft/world/level/storage/loot/LootDataType$Validator;)V + m ()V +c net/minecraft/world/level/storage/loot/LootDataType$Validator ert$a net/minecraft/class_8490$class_8491 +c net/minecraft/world/level/storage/loot/LootParams eru net/minecraft/class_8567 + f Lnet/minecraft/server/level/ServerLevel; level a field_44883 + f Ljava/util/Map; params b field_44884 + f Ljava/util/Map; dynamicDrops c field_44885 + f F luck d field_44886 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_51863 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/function/Consumer;)V addDynamicDrops a method_51864 + p 1 location + p 2 consumer + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z hasParam a method_51865 + p 1 param + m ()F getLuck b method_51866 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParameter b method_51867 + p 1 param + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getOptionalParameter c method_51868 + p 1 param + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParamOrNull d method_51869 + p 1 param + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/Map;Ljava/util/Map;F)V + p 1 level + p 2 params + p 3 dynamicDrops + p 4 luck +c net/minecraft/world/level/storage/loot/LootParams$Builder eru$a net/minecraft/class_8567$class_8568 + f Lnet/minecraft/server/level/ServerLevel; level a field_44887 + f Ljava/util/Map; params b field_44888 + f Ljava/util/Map; dynamicDrops c field_44889 + f F luck d field_44890 + m ()Lnet/minecraft/server/level/ServerLevel; getLevel a method_51870 + m (F)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withLuck a method_51871 + p 1 luck + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/storage/loot/LootParams$DynamicDrop;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withDynamicDrop a method_51872 + p 1 name + p 2 dynamicDrop + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getParameter a method_51873 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withParameter a method_51874 + p 1 parameter + p 2 value + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/LootParams; create a method_51875 + p 1 params + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/Object; getOptionalParameter b method_51876 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/LootParams$Builder; withOptionalParameter b method_51877 + p 1 parameter + p 2 value + m (Lnet/minecraft/server/level/ServerLevel;)V + p 1 level +c net/minecraft/world/level/storage/loot/LootParams$DynamicDrop eru$b net/minecraft/class_8567$class_49 +c net/minecraft/world/level/storage/loot/LootPool erv net/minecraft/class_55 + f Lcom/mojang/serialization/Codec; CODEC a field_45795 + f Ljava/util/List; entries b field_953 + f Ljava/util/List; conditions c field_954 + f Ljava/util/function/Predicate; compositeCondition d field_955 + f Ljava/util/List; functions e field_956 + f Ljava/util/function/BiFunction; compositeFunction f field_952 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; rolls g field_957 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; bonusRolls h field_958 + m ()Lnet/minecraft/world/level/storage/loot/LootPool$Builder; lootPool a method_347 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53268 a method_53268 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/List;Lorg/apache/commons/lang3/mutable/MutableInt;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry;)V method_342 a method_342 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53269 a method_53269 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_349 + c Validate this LootPool according to the given context. + p 1 context + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V addRandomItems a method_341 + c Generate the random items from this LootPool to the given {@code stackConsumer}.\nThis first checks this pool's conditions, generating nothing if they do not match.\nThen the random items are generated based on the {@link LootPoolEntry LootPoolEntries} in this pool according to the rolls and bonusRolls, applying any loot functions. + p 1 stackConsumer + p 2 lootContext + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53270 b method_53270 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V addRandomItem b method_345 + p 1 stackConsumer + p 2 context + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53271 c method_53271 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53272 d method_53272 + m (Lnet/minecraft/world/level/storage/loot/LootPool;)Ljava/util/List; method_53273 e method_53273 + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 entries + p 2 conditions + p 3 functions + p 4 rolls + p 5 bonusRolls + m ()V +c net/minecraft/world/level/storage/loot/LootPool$Builder erv$a net/minecraft/class_55$class_56 + c

Interface {@link net.fabricmc.fabric.api.loot.v3.FabricLootPoolBuilder} injected by mod fabric-loot-api-v3

+ f Lcom/google/common/collect/ImmutableList$Builder; entries a field_960 + f Lcom/google/common/collect/ImmutableList$Builder; conditions b field_963 + f Lcom/google/common/collect/ImmutableList$Builder; functions c field_961 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; rolls d field_959 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; bonusRolls e field_962 + m ()Lnet/minecraft/world/level/storage/loot/LootPool$Builder; unwrap a method_354 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; add a method_351 + p 1 entriesBuilder + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; apply a method_353 + p 1 functionBuilder + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; when a method_356 + p 1 conditionBuilder + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; setRolls a method_352 + p 1 rolls + m ()Lnet/minecraft/world/level/storage/loot/LootPool; build b method_355 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/LootPool$Builder; setBonusRolls b method_35509 + p 1 bonusRolls + m ()V +c net/minecraft/world/level/storage/loot/LootTable erw net/minecraft/class_52 + f Lnet/minecraft/world/level/storage/loot/LootTable; EMPTY a field_948 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; DEFAULT_PARAM_SET b field_947 + f J RANDOMIZE_SEED c field_49428 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC d field_50021 + f Lcom/mojang/serialization/Codec; CODEC e field_45796 + f Lorg/slf4j/Logger; LOGGER f field_946 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet g field_942 + f Ljava/util/Optional; randomSequence h field_44892 + f Ljava/util/List; pools i field_943 + f Ljava/util/List; functions j field_944 + f Ljava/util/function/BiFunction; compositeFunction k field_945 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; getParamSet a method_322 + c Get the parameter set for this LootTable. + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;)Ljava/util/function/Consumer; createStackSplitter a method_332 + p 0 level + p 1 output + m (Lnet/minecraft/server/level/ServerLevel;Ljava/util/function/Consumer;Lnet/minecraft/world/item/ItemStack;)V method_331 a method_331 + m (Lnet/minecraft/world/Container;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getAvailableSlots a method_321 + p 1 inventory + p 2 random + m (Lnet/minecraft/world/Container;Lnet/minecraft/world/level/storage/loot/LootParams;J)V fill a method_329 + p 1 container + p 2 params + p 3 seed + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53274 a method_53274 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_319 + c Generate random items to a List. + p 1 context + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V getRandomItemsRaw a method_328 + c Generate items to the given Consumer, ignoring maximum stack size. + p 1 context + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_51878 + p 1 params + m (Lnet/minecraft/world/level/storage/loot/LootParams;J)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_51879 + p 1 params + p 2 seed + m (Lnet/minecraft/world/level/storage/loot/LootParams;JLjava/util/function/Consumer;)V getRandomItems a method_51880 + p 1 params + p 2 seed + p 4 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;Lnet/minecraft/util/RandomSource;)Lit/unimi/dsi/fastutil/objects/ObjectArrayList; getRandomItems a method_60569 + p 1 params + p 2 random + m (Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/function/Consumer;)V getRandomItemsRaw a method_51881 + p 1 params + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/List; method_53275 a method_53275 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_330 + c Validate this LootTable using the given ValidationContext. + p 1 validator + m (Lit/unimi/dsi/fastutil/objects/ObjectArrayList;ILnet/minecraft/util/RandomSource;)V shuffleAndSplitItems a method_333 + c Shuffles items by changing their order and splitting stacks + p 1 stacks + p 2 emptySlotsCount + p 3 random + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; lootTable b method_324 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V getRandomItems b method_320 + c Generate random items to the given Consumer, ensuring they do not exceed their maximum stack size. + p 1 contextData + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootParams;Ljava/util/function/Consumer;)V getRandomItems b method_51882 + p 1 params + p 2 output + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/List; method_53276 b method_53276 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Ljava/util/Optional; method_53277 c method_53277 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; method_53278 d method_53278 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/util/Optional;Ljava/util/List;Ljava/util/List;)V + p 1 paramSet + p 2 randomSequence + p 3 pools + p 4 functions + m ()V +c net/minecraft/world/level/storage/loot/LootTable$Builder erw$a net/minecraft/class_52$class_53 + c

Interface {@link net.fabricmc.fabric.api.loot.v3.FabricLootTableBuilder} injected by mod fabric-loot-api-v3

+ f Lcom/google/common/collect/ImmutableList$Builder; pools a field_949 + f Lcom/google/common/collect/ImmutableList$Builder; functions b field_951 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; paramSet c field_950 + f Ljava/util/Optional; randomSequence d field_44893 + m ()Lnet/minecraft/world/level/storage/loot/LootTable$Builder; unwrap a method_337 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; setRandomSequence a method_51883 + p 1 randomSequence + m (Lnet/minecraft/world/level/storage/loot/LootPool$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; withPool a method_336 + p 1 lootPool + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; apply a method_335 + p 1 functionBuilder + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; setParamSet a method_334 + p 1 parameterSet + m ()Lnet/minecraft/world/level/storage/loot/LootTable; build b method_338 + m ()V +c net/minecraft/world/level/storage/loot/ValidationContext erx net/minecraft/class_58 + c Context for validating loot tables. Loot tables are validated recursively by checking that all functions, conditions, etc. (implementing {@link LootContextUser}) are valid according to their LootTable's {@link LootContextParamSet}. + f Lnet/minecraft/util/ProblemReporter; reporter a field_47427 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; params b field_20756 + f Ljava/util/Optional; resolver c field_44504 + f Ljava/util/Set; visitedElements d field_44505 + m ()Lnet/minecraft/core/HolderGetter$Provider; resolver a method_51220 + m (Lnet/minecraft/resources/ResourceKey;)Z hasVisitedElement a method_51218 + p 1 key + m (Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_22567 + c Validate the given LootContextUser. + p 1 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)Lnet/minecraft/world/level/storage/loot/ValidationContext; setParams a method_22568 + c Create a new ValidationContext with the given LootContextParamSet. + p 1 params + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/ValidationContext; forChild a method_364 + c Create a new ValidationContext with {@code childName} being added to the context. + p 1 childName + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/ValidationContext; enterElement a method_51219 + p 1 name + p 2 key + m ()Z allowsReferences b method_61030 + m (Ljava/lang/String;)V reportProblem b method_360 + c Report a problem to this ValidationContext. + p 1 problem + m ()Lnet/minecraft/util/ProblemReporter; reporter c method_60288 + m ()Ljava/lang/UnsupportedOperationException; method_61031 d method_61031 + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Lnet/minecraft/core/HolderGetter$Provider;)V + p 1 reporter + p 2 params + p 3 resolver + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;)V + p 1 reporter + p 2 params + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet;Ljava/util/Optional;Ljava/util/Set;)V + p 1 reporter + p 2 params + p 3 resolver + p 4 visitedElements +c net/minecraft/world/level/storage/loot/entries/AlternativesEntry ery net/minecraft/class_65 + c A composite loot pool entry container that expands all its children in order until one of them succeeds.\nThis container succeeds if one of its children succeeds. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45797 + m (I)[Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; method_43733 a method_43733 + m (Ljava/util/Collection;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; alternatives a method_43734 + p 0 childrenSources + p 1 toChildrenFunction + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_387 a method_387 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; alternatives a method_386 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder ery$a net/minecraft/class_65$class_66 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_979 + m ()Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; getThis a method_388 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/ComposableEntryContainer erz net/minecraft/class_64 + c Base interface for loot pool entry containers.\nA loot pool entry container holds one or more loot pools and will expand into those.\nAdditionally, the container can either succeed or fail, based on its conditions. + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; ALWAYS_FALSE b field_16883 + c A container which always fails. + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; ALWAYS_TRUE c field_16884 + c A container that always succeeds. + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16776 a method_16776 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16777 a method_16777 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; and and method_16778 + p 1 entry + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16775 b method_16775 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_16779 b method_16779 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; or or method_385 + p 1 entry + m ()V +c net/minecraft/world/level/storage/loot/entries/CompositeEntryBase esa net/minecraft/class_69 + c Base class for loot pool entry containers that delegate to one or more children.\nThe actual functionality is provided by composing the children into one composed container (see {@link #compose}). + f Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; composedChildren a field_983 + f Ljava/util/List; children d field_982 + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor;)Lcom/mojang/serialization/MapCodec; createCodec a method_53279 + p 0 factory + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53280 a method_53280 + m (Lnet/minecraft/world/level/storage/loot/entries/CompositeEntryBase;)Ljava/util/List; method_53281 a method_53281 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer; compose a method_394 + p 1 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions +c net/minecraft/world/level/storage/loot/entries/CompositeEntryBase$CompositeEntryConstructor esa$a net/minecraft/class_69$class_70 +c net/minecraft/world/level/storage/loot/entries/DynamicLoot esb net/minecraft/class_67 + c A loot pool entry container that will generate the dynamic drops with a given name.\n\n@see LootContext.DynamicDrops + f Lcom/mojang/serialization/MapCodec; CODEC a field_45798 + f Lnet/minecraft/resources/ResourceLocation; name j field_980 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; dynamicEntry a method_390 + p 0 dynamicDropsName + m (Lnet/minecraft/resources/ResourceLocation;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_391 a method_391 + m (Lnet/minecraft/world/level/storage/loot/entries/DynamicLoot;)Lnet/minecraft/resources/ResourceLocation; method_53282 a method_53282 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53283 c method_53283 + m (Lnet/minecraft/resources/ResourceLocation;IILjava/util/List;Ljava/util/List;)V + p 1 name + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/EmptyLootItem esc net/minecraft/class_73 + c A loot pool entry that does not generate any items. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45799 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; emptyItem b method_401 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53284 c method_53284 + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 2 quality + p 3 conditions + p 4 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/EntryGroup esd net/minecraft/class_93 + c A composite loot pool entry container that expands all its children in order.\nThis container always succeeds. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45800 + m (Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/entries/ComposableEntryContainer;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_29315 a method_29315 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_452 a method_452 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; list a method_35511 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/EntryGroup$Builder esd$a net/minecraft/class_93$class_6152 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_31846 + m ()Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; getThis a method_35512 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/LootItem ese net/minecraft/class_77 + c A loot pool entry that always generates a given item. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45801 + f Lnet/minecraft/core/Holder; item j field_987 + m (Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; lootTableItem a method_411 + p 0 item + m (Lnet/minecraft/world/level/ItemLike;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_409 a method_409 + m (Lnet/minecraft/world/level/storage/loot/entries/LootItem;)Lnet/minecraft/core/Holder; method_53285 a method_53285 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53286 c method_53286 + m (Lnet/minecraft/core/Holder;IILjava/util/List;Ljava/util/List;)V + p 1 item + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntries esf net/minecraft/class_75 + c Registration for {@link LootPoolEntryType}. + f Lcom/mojang/serialization/Codec; CODEC a field_45802 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; EMPTY b field_25206 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; ITEM c field_25207 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; LOOT_TABLE d field_25208 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; DYNAMIC e field_25209 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; TAG f field_25210 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; ALTERNATIVES g field_25211 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; SEQUENCE h field_25212 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; GROUP i field_25213 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; register a method_29317 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntry esg net/minecraft/class_82 + c A loot pool entry generates zero or more stacks of items based on the LootContext.\nEach loot pool entry has a weight that determines how likely it is to be generated within a given loot pool. + m (F)I getWeight a method_427 + c Gets the effective weight based on the loot entry's weight and quality multiplied by looter's luck. + p 1 luck + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V createItemStack a method_426 + c Generate the loot stacks of this entry.\nContrary to the method name this method does not always generate one stack, it can also generate zero or multiple stacks. + p 1 stackConsumer + p 2 lootContext +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer esh net/minecraft/class_79 + c Base class for loot pool entry containers. This class just stores a list of conditions that are checked before the entry generates loot. + f Ljava/util/function/Predicate; compositeCondition a field_989 + f Ljava/util/List; conditions e field_988 + c Conditions for the loot entry to be applied. + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryType; getType a method_29318 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; commonFields a method_53287 + p 0 instance + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z canRun a method_414 + p 1 lootContext + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V validate a method_415 + p 1 validationContext + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer;)Ljava/util/List; method_53288 a method_53288 + m (Ljava/util/List;)V + p 1 conditions +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder esh$a net/minecraft/class_79$class_80 + f Lcom/google/common/collect/ImmutableList$Builder; conditions a field_990 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/AlternativesEntry$Builder; otherwise a method_417 + p 1 childBuilder + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; when a method_421 + p 1 conditionBuilder + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; getThis aH_ method_418 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer; build b method_419 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/EntryGroup$Builder; append b method_35513 + p 1 childBuilder + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; then c method_35514 + p 1 childBuilder + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder; unwrap e method_416 + m ()Ljava/util/List; getConditions f method_420 + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolEntryType esi net/minecraft/class_5338 + c The SerializerType for {@link LootPoolEntryContainer}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1847 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1847 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer esj net/minecraft/class_85 + c A LootPoolEntryContainer that expands into a single LootPoolEntry. + f Ljava/util/function/BiFunction; compositeFunction a field_997 + f I DEFAULT_WEIGHT d field_31847 + f I DEFAULT_QUALITY f field_31848 + f I weight g field_995 + c The weight of the entry. + f I quality h field_994 + c The quality of the entry. + f Ljava/util/List; functions i field_996 + c Functions that are ran on the entry. + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry; entry j field_998 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; simpleBuilder a method_434 + p 0 entryBuilder + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/util/List; method_53289 a method_53289 + m (Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)V createItemStack a method_433 + c Generate the loot stacks of this entry.\nContrary to the method name this method does not always generate one stack, it can also generate zero or multiple stacks. + p 1 stackConsumer + p 2 lootContext + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P4; singletonFields b method_53290 + p 0 instance + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/lang/Integer; method_53291 b method_53291 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)Ljava/lang/Integer; method_53292 c method_53292 + m (IILjava/util/List;Ljava/util/List;)V + p 1 weight + p 2 quality + p 3 conditions + p 4 functions +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$1 esj$1 net/minecraft/class_85$1 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; field_1002 a field_1002 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder esj$a net/minecraft/class_85$class_86 + f I weight a field_1001 + f I quality b field_1000 + f Lcom/google/common/collect/ImmutableList$Builder; functions c field_999 + m ()Ljava/util/List; getFunctions a method_439 + m (I)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; setWeight a method_437 + p 1 weight + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; apply a method_438 + p 1 functionBuilder + m (I)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; setQuality b method_436 + p 1 quality + m ()V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$DummyBuilder esj$b net/minecraft/class_85$class_87 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor; constructor c field_1003 + m ()Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$DummyBuilder; getThis g method_440 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor;)V + p 1 constructor +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryBase esj$c net/minecraft/class_85$class_88 + f Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; field_1004 b field_1004 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer;)V +c net/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$EntryConstructor esj$d net/minecraft/class_85$class_89 +c net/minecraft/world/level/storage/loot/entries/NestedLootTable esk net/minecraft/class_83 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45803 + f Lcom/mojang/datafixers/util/Either; contents j field_49429 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; lootTableReference a method_428 + p 0 lootTable + m (Lnet/minecraft/resources/ResourceKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_430 a method_430 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/LootTable; method_57630 a method_57630 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; inlineLootTable a method_57631 + p 0 lootTable + m (Lnet/minecraft/world/level/storage/loot/LootTable;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_57632 a method_57632 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;)V method_51223 a method_51223 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder$Reference;)V method_57633 a method_57633 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootTable;)V method_51222 a method_51222 + m (Lnet/minecraft/world/level/storage/loot/entries/NestedLootTable;)Lcom/mojang/datafixers/util/Either; method_53293 a method_53293 + m (Lnet/minecraft/world/level/storage/loot/LootTable;)Lnet/minecraft/world/level/storage/loot/LootTable; method_57634 b method_57634 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/resources/ResourceKey;)V method_57635 b method_57635 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53294 c method_53294 + m (Lcom/mojang/datafixers/util/Either;IILjava/util/List;Ljava/util/List;)V + p 1 contents + p 2 weight + p 3 quality + p 4 conditions + p 5 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/SequentialEntry esl net/minecraft/class_72 + c A composite loot pool entry container that expands all its children in order until one of them fails.\nThis container succeeds if all children succeed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45804 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z method_400 a method_400 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; sequential a method_35515 + p 0 children + m (Ljava/util/List;Ljava/util/List;)V + p 1 children + p 2 conditions + m ()V +c net/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder esl$a net/minecraft/class_72$class_6153 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_31849 + m ()Lnet/minecraft/world/level/storage/loot/entries/SequentialEntry$Builder; getThis a method_35516 + m ([Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)V + p 1 children +c net/minecraft/world/level/storage/loot/entries/TagEntry esm net/minecraft/class_91 + c A loot pool entry container that generates based on an item tag.\nIf {@code expand} is set to true, it will expand into separate LootPoolEntries for every item in the tag, otherwise it will simply generate all items in the tag. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45805 + f Lnet/minecraft/tags/TagKey; tag j field_1005 + f Z expand k field_1006 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; tagContents a method_35517 + p 0 tag + m (Lnet/minecraft/tags/TagKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_444 a method_444 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)Z expandTag a method_447 + p 1 context + p 2 generatorConsumer + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;)Ljava/lang/Boolean; method_53295 a method_53295 + m (Ljava/util/function/Consumer;Lnet/minecraft/core/Holder;)V method_449 a method_449 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer$Builder; expandTag b method_445 + p 0 tag + m (Lnet/minecraft/tags/TagKey;IILjava/util/List;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/entries/LootPoolSingletonContainer; method_35518 b method_35518 + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;)Lnet/minecraft/tags/TagKey; method_53296 b method_53296 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53297 c method_53297 + m (Lnet/minecraft/tags/TagKey;ZIILjava/util/List;Ljava/util/List;)V + p 1 tag + p 2 expand + p 3 weight + p 4 quality + p 5 conditions + p 6 functions + m ()V +c net/minecraft/world/level/storage/loot/entries/TagEntry$1 esm$1 net/minecraft/class_91$1 + f Lnet/minecraft/core/Holder; val$item a field_1007 + m (Lnet/minecraft/world/level/storage/loot/entries/TagEntry;Lnet/minecraft/core/Holder;)V +c net/minecraft/world/level/storage/loot/entries/package-info esn net/minecraft/class_6154 +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount eso net/minecraft/class_94 + c LootItemFunction that modifies the stack's count based on an enchantment level on the {@linkplain LootContextParams#TOOL tool} using various formulas. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45806 + f Ljava/util/Map; FORMULAS b field_1010 + f Lcom/mojang/serialization/Codec; FORMULA_TYPE_CODEC c field_45807 + f Lcom/mojang/serialization/MapCodec; FORMULA_CODEC d field_45808 + f Lnet/minecraft/core/Holder; enchantment e field_1011 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula; formula f field_1009 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53298 a method_53298 + m (Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount;)Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula; method_53299 a method_53299 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addOreBonusCount a method_455 + p 0 enchantment + m (Lnet/minecraft/core/Holder;FI)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addBonusBinomialDistributionCount a method_463 + p 0 enchantment + p 1 probability + p 2 extraRounds + m (Lnet/minecraft/core/Holder;I)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addUniformBonusCount a method_461 + p 0 enchantment + p 1 bonusMultiplier + m (Lnet/minecraft/core/Holder;IFLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_459 a method_459 + m (Lnet/minecraft/core/Holder;ILjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_462 a method_462 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_457 a method_457 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_53300 b method_53300 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53301 b method_53301 + m (Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount;)Lnet/minecraft/core/Holder; method_53302 b method_53302 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; addUniformBonusCount b method_456 + p 0 enchantment + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_453 b method_453 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula;)V + p 1 predicates + p 2 enchantment + p 3 formula + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$BinomialWithBonusCount eso$a net/minecraft/class_94$class_95 + c Applies a bonus based on a binomial distribution with {@code n = enchantmentLevel + extraRounds} and {@code p = probability}. + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE a field_1013 + f I extraRounds b comp_1848 + f F probability c comp_1849 + f Lcom/mojang/serialization/Codec; CODEC d field_45811 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53307 a method_53307 + m ()I extraRounds b comp_1848 + m ()F probability c comp_1849 + m (IF)V + p 1 extraRounds + p 2 probability + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$Formula eso$b net/minecraft/class_94$class_96 + m ()Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; getType a method_466 + m (Lnet/minecraft/util/RandomSource;II)I calculateNewCount a method_467 + p 1 random + p 2 originalCount + p 3 enchantmentLevel +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType eso$c net/minecraft/class_94$class_8752 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1850 + f Lcom/mojang/serialization/Codec; codec b comp_1851 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1850 + m ()Lcom/mojang/serialization/Codec; codec b comp_1851 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/serialization/Codec;)V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$OreDrops eso$d net/minecraft/class_94$class_98 + c Applies a bonus count with a special formula used for fortune ore drops. + f Lcom/mojang/serialization/Codec; CODEC a field_45812 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE b field_1015 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyBonusCount$UniformBonusCount eso$e net/minecraft/class_94$class_100 + c Adds a bonus count based on the enchantment level scaled by a constant multiplier. + f Lcom/mojang/serialization/Codec; CODEC a field_45813 + f Lnet/minecraft/world/level/storage/loot/functions/ApplyBonusCount$FormulaType; TYPE b field_45814 + f I bonusMultiplier c comp_1852 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53308 a method_53308 + m ()I bonusMultiplier b comp_1852 + m (I)V + p 1 bonusMultiplier + m ()V +c net/minecraft/world/level/storage/loot/functions/ApplyExplosionDecay esp net/minecraft/class_104 + c LootItemFunction that reduces a stack's count based on the {@linkplain LootContextParams#EXPLOSION_RADIUS explosion radius}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45815 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53309 b method_53309 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; explosionDecay c method_478 + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyBlockState esq net/minecraft/class_4488 + c LootItemFunction that copies a set of block state properties to the {@code "BlockStateTag"} NBT tag of the ItemStack.\nThis tag is checked when the block is placed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45816 + f Lnet/minecraft/core/Holder; block b field_20449 + f Ljava/util/Set; properties c field_20450 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; copyState a method_21892 + p 0 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/item/component/BlockItemStateProperties;)Lnet/minecraft/world/item/component/BlockItemStateProperties; method_57636 a method_57636 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState;)Ljava/util/List; method_53310 a method_53310 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53311 b method_53311 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState;)Lnet/minecraft/core/Holder; method_53312 b method_53312 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Ljava/util/Set;)V + p 1 conditions + p 2 block + p 3 properties + m (Ljava/util/List;Lnet/minecraft/core/Holder;Ljava/util/List;)V + p 1 conditions + p 2 block + p 3 properties + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder esq$a net/minecraft/class_4488$class_4489 + f Lnet/minecraft/core/Holder; block a field_20451 + f Lcom/google/common/collect/ImmutableSet$Builder; properties b field_20452 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; getThis a method_21897 + m (Lnet/minecraft/world/level/block/state/properties/Property;)Lnet/minecraft/world/level/storage/loot/functions/CopyBlockState$Builder; copy a method_21898 + p 1 property + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction esr net/minecraft/class_9317 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49430 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; source b field_49431 + f Ljava/util/Optional; include c field_50202 + f Ljava/util/Optional; exclude d field_50203 + f Ljava/util/function/Predicate; bakedPredicate e field_50204 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; copyComponents a method_57637 + p 0 source + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Ljava/util/Optional; method_58726 a method_58726 + m (Ljava/util/List;Ljava/util/List;)V method_58727 a method_58727 + m (Ljava/util/List;Lnet/minecraft/core/component/DataComponentType;)Z method_58728 a method_58728 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57639 b method_57639 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Ljava/util/Optional; method_57638 b method_57638 + m (Ljava/util/List;Ljava/util/List;)V method_58729 b method_58729 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; method_57640 c method_57640 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 source + p 3 include + p 4 exclude + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder esr$a net/minecraft/class_9317$class_9318 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; source a field_49434 + f Ljava/util/Optional; include b field_50205 + f Ljava/util/Optional; exclude c field_50206 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; getThis a method_57641 + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; include a method_58730 + p 1 include + m (Lnet/minecraft/core/component/DataComponentType;)Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Builder; exclude b method_58731 + p 1 exclude + m (Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source;)V + p 1 source +c net/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source esr$b net/minecraft/class_9317$class_9319 + f Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; BLOCK_ENTITY a field_49436 + f Lcom/mojang/serialization/Codec; CODEC b field_49437 + f Ljava/lang/String; name c field_49438 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; $VALUES d field_49439 + m ()Ljava/util/Set; getReferencedContextParams a method_57643 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/core/component/DataComponentMap; get a method_57644 + p 1 context + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyComponentsFunction$Source; $values b method_57645 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction ess net/minecraft/class_3837 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45819 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; source b field_17013 + f Ljava/util/List; operations c field_17014 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copyData a method_35519 + p 0 target + m (Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction;)Ljava/util/List; method_53315 a method_53315 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copyData a method_16848 + p 0 source + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$CopyOperation;)V method_16846 a method_16846 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/nbt/Tag; method_57646 a method_57646 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53316 b method_53316 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction;)Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; method_53317 b method_53317 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;Ljava/util/List;)V + p 1 conditions + p 2 source + p 3 operations + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder ess$a net/minecraft/class_3837$class_3838 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; source a field_17017 + f Ljava/util/List; ops b field_17018 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; getThis a method_16855 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copy a method_16856 + p 1 sourceKey + p 2 destinationKey + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy;)Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$Builder; copy a method_16857 + p 1 sourceKey + p 2 destinationKey + p 3 mergeStrategy + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)V + p 1 source +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$CopyOperation ess$b net/minecraft/class_3837$class_3839 + f Lcom/mojang/serialization/Codec; CODEC a field_45820 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; sourcePath b comp_1853 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; targetPath c comp_1854 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; op d comp_1855 + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; sourcePath a comp_1853 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53318 a method_53318 + m (Ljava/util/function/Supplier;Lnet/minecraft/nbt/Tag;)V apply a method_16860 + p 1 sourceTag + p 2 tag + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; targetPath b comp_1854 + m ()Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; op c comp_1855 + m (Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy ess$c net/minecraft/class_3837$class_3841 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; REPLACE a field_17032 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; APPEND b field_17033 + f Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; MERGE c field_17034 + f Lcom/mojang/serialization/Codec; CODEC d field_45821 + f Ljava/lang/String; name e field_17035 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; $VALUES f field_17036 + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy; $values a method_36795 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;Ljava/util/List;)V merge a method_16864 + p 1 tag + p 2 path + p 3 currentData + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$1 ess$c$1 net/minecraft/class_3837$class_3841$1 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$2 ess$c$2 net/minecraft/class_3837$class_3841$2 + m (Ljava/util/List;Lnet/minecraft/nbt/Tag;)V method_16867 a method_16867 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)V method_16866 a method_16866 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyCustomDataFunction$MergeStrategy$3 ess$c$3 net/minecraft/class_3837$class_3841$3 + m (Ljava/util/List;Lnet/minecraft/nbt/Tag;)V method_16869 a method_16869 + m (Lnet/minecraft/nbt/Tag;Lnet/minecraft/nbt/Tag;)V method_16868 a method_16868 + m (Ljava/lang/String;ILjava/lang/String;)V +c net/minecraft/world/level/storage/loot/functions/CopyNameFunction est net/minecraft/class_101 + c LootItemFunction that sets the stack's name by copying it from somewhere else, such as the killing player. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45817 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; source b field_1018 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; copyName a method_473 + p 0 source + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_474 a method_474 + m (Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction;)Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; method_53313 a method_53313 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53314 b method_53314 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource;)V + p 1 conditions + p 2 source + m ()V +c net/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource est$a net/minecraft/class_101$class_102 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; THIS a field_1022 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; ATTACKING_ENTITY b field_51790 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; LAST_DAMAGE_PLAYER c field_51791 + f Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; BLOCK_ENTITY d field_1023 + f Lcom/mojang/serialization/Codec; CODEC e field_45818 + f Ljava/lang/String; name f field_1025 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; param g field_1024 + f [Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; $VALUES h field_1021 + m ()[Lnet/minecraft/world/level/storage/loot/functions/CopyNameFunction$NameSource; $values a method_36794 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)V + p 3 name + p 4 param + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction esu net/minecraft/class_109 + c LootItemFunction that applies a random enchantment to the stack. If an empty list is given, chooses from all enchantments. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45823 + f Lorg/slf4j/Logger; LOGGER b field_1031 + f Ljava/util/Optional; options c field_51792 + f Z onlyCompatible d field_51793 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/item/ItemStack; enchantItem a method_26266 + p 0 stack + p 1 enchantment + p 2 random + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/stream/Stream; method_60289 a method_60289 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction;)Ljava/lang/Boolean; method_60290 a method_60290 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; randomApplicableEnchantment a method_489 + p 0 registries + m (ZLnet/minecraft/world/item/ItemStack;Lnet/minecraft/core/Holder;)Z method_60291 a method_60291 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60292 b method_60292 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction;)Ljava/util/Optional; method_53324 b method_53324 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; randomEnchantment c method_35520 + m (Ljava/util/List;Ljava/util/Optional;Z)V + p 1 conditons + p 2 options + p 3 onlyCompatible + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder esu$a net/minecraft/class_109$class_4954 + f Ljava/util/Optional; options a field_51794 + f Z onlyCompatible b field_51795 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; getThis a method_25991 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; withEnchantment a method_25992 + p 1 enchantment + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; withOneOf a method_60293 + p 1 enchantments + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantRandomlyFunction$Builder; allowingIncompatibleEnchantments e method_60294 + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction esv net/minecraft/class_106 + c Applies a random enchantment to the stack.\n\n@see EnchantmentHelper#enchantItem + f Lcom/mojang/serialization/MapCodec; CODEC a field_45825 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; levels b field_1026 + f Ljava/util/Optional; options c field_51796 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction;)Ljava/util/Optional; method_53329 a method_53329 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; enchantWithLevels a method_481 + p 0 registries + p 1 levels + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53330 b method_53330 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53331 b method_53331 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/Optional;)V + p 1 condtions + p 2 levels + p 3 options + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder esv$a net/minecraft/class_106$class_107 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; levels a field_1028 + f Ljava/util/Optional; options b field_51797 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; getThis a method_483 + m (Lnet/minecraft/core/HolderSet;)Lnet/minecraft/world/level/storage/loot/functions/EnchantWithLevelsFunction$Builder; fromOptions a method_60295 + p 1 options + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 levels +c net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction esw net/minecraft/class_125 + f I NO_LIMIT a field_31854 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45833 + f Lnet/minecraft/core/Holder; enchantment c field_51798 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; value d field_1082 + f I limit e field_1083 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Ljava/lang/Integer; method_53348 a method_53348 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; lootingMultiplier a method_547 + p 0 registries + p 1 count + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53349 b method_53349 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53350 b method_53350 + m ()Z hasLimit c method_549 + m (Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction;)Lnet/minecraft/core/Holder; method_60296 c method_60296 + m (Ljava/util/List;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;I)V + p 1 conditions + p 2 enchantment + p 3 value + p 4 limit + m ()V +c net/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder esw$a net/minecraft/class_125$class_126 + f Lnet/minecraft/core/Holder; enchantment a field_51799 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; count b field_1084 + f I limit c field_1085 + m ()Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; getThis a method_552 + m (I)Lnet/minecraft/world/level/storage/loot/functions/EnchantedCountIncreaseFunction$Builder; setLimit a method_551 + p 1 limit + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 enchantment + p 2 count +c net/minecraft/world/level/storage/loot/functions/ExplorationMapFunction esx net/minecraft/class_111 + c Convert any empty maps into explorer maps that lead to a structure that is nearest to the current {@linkplain LootContextParams.ORIGIN}, if present. + f Lnet/minecraft/tags/TagKey; DEFAULT_DESTINATION a field_25032 + f Lnet/minecraft/core/Holder; DEFAULT_DECORATION b field_1034 + f B DEFAULT_ZOOM c field_31851 + f I DEFAULT_SEARCH_RADIUS d field_31852 + f Z DEFAULT_SKIP_EXISTING e field_31853 + f Lcom/mojang/serialization/MapCodec; CODEC f field_45826 + f Lnet/minecraft/tags/TagKey; destination h field_1035 + f Lnet/minecraft/core/Holder; mapDecoration i field_1036 + f B zoom j field_1037 + f I searchRadius k field_1032 + f Z skipKnownStructures l field_1033 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Boolean; method_53332 a method_53332 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53333 b method_53333 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Integer; method_53334 b method_53334 + m ()Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; makeExplorationMap c method_492 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Ljava/lang/Byte; method_53335 c method_53335 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Lnet/minecraft/core/Holder; method_53336 d method_53336 + m (Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction;)Lnet/minecraft/tags/TagKey; method_53337 e method_53337 + m (Ljava/util/List;Lnet/minecraft/tags/TagKey;Lnet/minecraft/core/Holder;BIZ)V + p 1 conditons + p 2 destination + p 3 mapDecoration + p 4 zoom + p 5 searchRadius + p 6 skipKnownStructures + m ()V +c net/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder esx$a net/minecraft/class_111$class_112 + f Lnet/minecraft/tags/TagKey; destination a field_1039 + f Lnet/minecraft/core/Holder; mapDecoration b field_1042 + f B zoom c field_1043 + f I searchRadius d field_1040 + f Z skipKnownStructures e field_1041 + m ()Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; getThis a method_501 + m (B)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setZoom a method_500 + p 1 zoom + m (I)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setSearchRadius a method_35521 + p 1 searchRadius + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setDestination a method_502 + p 1 destination + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setMapDecoration a method_499 + p 1 mapDecoration + m (Z)Lnet/minecraft/world/level/storage/loot/functions/ExplorationMapFunction$Builder; setSkipKnownStructures a method_503 + p 1 skipKnownStructures + m ()V +c net/minecraft/world/level/storage/loot/functions/FillPlayerHead esy net/minecraft/class_3668 + c LootItemFunction that applies the {@code "SkullOwner"} NBT tag to any player heads based on the given {@link LootContext.EntityTarget}.\nIf the given target does not resolve to a player, nothing happens. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45827 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget b field_16227 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; fillPlayerHead a method_35522 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35523 a method_35523 + m (Lnet/minecraft/world/level/storage/loot/functions/FillPlayerHead;)Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; method_53338 a method_53338 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53339 b method_53339 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 conditions + p 2 entityTarget + m ()V +c net/minecraft/world/level/storage/loot/functions/FilteredFunction esz net/minecraft/class_9668 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51421 + f Lnet/minecraft/advancements/critereon/ItemPredicate; filter b field_51422 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; modifier c field_51423 + m (Lnet/minecraft/world/level/storage/loot/functions/FilteredFunction;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_59739 a method_59739 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59740 b method_59740 + m (Lnet/minecraft/world/level/storage/loot/functions/FilteredFunction;)Lnet/minecraft/advancements/critereon/ItemPredicate; method_59741 b method_59741 + m (Ljava/util/List;Lnet/minecraft/advancements/critereon/ItemPredicate;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V + p 1 conditions + p 2 filter + p 3 modifier + m ()V +c net/minecraft/world/level/storage/loot/functions/FunctionReference eta net/minecraft/class_8492 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45828 + f Lorg/slf4j/Logger; LOGGER b field_44506 + f Lnet/minecraft/resources/ResourceKey; name c field_44507 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; functionReference a method_51224 + p 0 key + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_51225 a method_51225 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_51226 a method_51226 + m (Lnet/minecraft/world/level/storage/loot/functions/FunctionReference;)Lnet/minecraft/resources/ResourceKey; method_53340 a method_53340 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53341 b method_53341 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V method_51227 b method_51227 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V + p 1 conditions + p 2 name + m ()V +c net/minecraft/world/level/storage/loot/functions/FunctionUserBuilder etb net/minecraft/class_116 + c Base interface for builders that accept loot functions.\n\n@see LootItemFunction + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply a method_43739 + p 1 builderSources + p 2 toBuilderFunction + m ([Ljava/lang/Object;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply a method_43740 + p 1 builderSources + p 2 toBuilderFunction + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder;)Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; apply b method_511 + p 1 functionBuilder + m ()Lnet/minecraft/world/level/storage/loot/functions/FunctionUserBuilder; unwrap c method_43732 +c net/minecraft/world/level/storage/loot/functions/LimitCount etc net/minecraft/class_114 + c A LootItemFunction that limits the stack's count to fall within a given {@link IntRange}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45829 + f Lnet/minecraft/world/level/storage/loot/IntRange; limiter b field_1044 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; limitCount a method_506 + p 0 countLimit + m (Lnet/minecraft/world/level/storage/loot/IntRange;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_508 a method_508 + m (Lnet/minecraft/world/level/storage/loot/functions/LimitCount;)Lnet/minecraft/world/level/storage/loot/IntRange; method_53342 a method_53342 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53343 b method_53343 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 conditions + p 2 limiter + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation etd net/minecraft/class_9368 + f Lcom/mojang/serialization/MapCodec; UNLIMITED_CODEC a field_51424 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; mode a method_58191 + m (I)Lcom/mojang/serialization/MapCodec; codec a method_58456 + p 0 maxSize + m (II)Ljava/lang/String; method_58457 a method_58457 + m (ILnet/minecraft/world/level/storage/loot/functions/ListOperation;)Lcom/mojang/serialization/DataResult; method_58458 a method_58458 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type;)Lcom/mojang/serialization/MapCodec; method_58459 a method_58459 + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; apply a method_59742 + p 1 currentValue + p 2 operand + m (Ljava/util/List;Ljava/util/List;I)Ljava/util/List; apply a method_58192 + p 1 currentValue + p 2 operand + p 3 maxSize + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Append etd$a net/minecraft/class_9368$class_9369 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Append; INSTANCE b field_49847 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC c field_49848 + f Lorg/slf4j/Logger; LOGGER d field_49849 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Append; method_58193 b method_58193 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Insert etd$b net/minecraft/class_9368$class_9370 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_49850 + f I offset c comp_2463 + f Lorg/slf4j/Logger; LOGGER d field_49851 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58194 a method_58194 + m ()I offset b comp_2463 + m (I)V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll etd$c net/minecraft/class_9368$class_9371 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll; INSTANCE b field_49852 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC c field_49853 + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceAll; method_58195 b method_58195 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$ReplaceSection etd$d net/minecraft/class_9368$class_9372 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_49854 + f I offset c comp_2464 + f Ljava/util/Optional; size d comp_2465 + f Lorg/slf4j/Logger; LOGGER e field_49855 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58196 a method_58196 + m ()I offset b comp_2464 + m ()Ljava/util/Optional; size c comp_2465 + m (I)V + p 1 offset + m (ILjava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone etd$e net/minecraft/class_9368$class_9677 + f Ljava/util/List; value a comp_2651 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; operation b comp_2652 + m ()Ljava/util/List; value a comp_2651 + m (Lcom/mojang/serialization/Codec;I)Lcom/mojang/serialization/Codec; codec a method_59828 + p 0 elementCodec + p 1 maxSize + m (Lcom/mojang/serialization/Codec;ILcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59829 a method_59829 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_59830 a method_59830 + m (Ljava/util/List;)Ljava/util/List; apply a method_59831 + p 1 list + m ()Lnet/minecraft/world/level/storage/loot/functions/ListOperation; operation b comp_2652 + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Ljava/util/List; method_59832 b method_59832 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V +c net/minecraft/world/level/storage/loot/functions/ListOperation$Type etd$f net/minecraft/class_9368$class_9373 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; REPLACE_ALL a field_49856 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; REPLACE_SECTION b field_49857 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; INSERT c field_49858 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; APPEND d field_49859 + f Lcom/mojang/serialization/Codec; CODEC e field_49860 + f Ljava/lang/String; id f field_49862 + f Lcom/mojang/serialization/MapCodec; mapCodec g field_49863 + f [Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; $VALUES h field_49864 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_58197 + m ()[Lnet/minecraft/world/level/storage/loot/functions/ListOperation$Type; $values b method_58199 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 id + p 4 mapCodec + m ()V +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction ete net/minecraft/class_120 + c A LootItemFunction that only modifies the stacks if a list of {@linkplain LootItemCondition predicates} passes. + f Ljava/util/function/Predicate; compositePredicates a field_1048 + f Ljava/util/List; predicates g field_1047 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/Products$P1; commonFields a method_53344 + p 0 instance + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; run a method_522 + c Called to perform the actual action of this function, after conditions have been checked. + p 1 stack + p 2 context + m (Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction;)Ljava/util/List; method_53345 a method_53345 + m (Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; simpleBuilder a method_520 + p 0 constructor + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; apply b method_521 + p 1 stack + p 2 context + m (Ljava/util/List;)V + p 1 predicates +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder ete$a net/minecraft/class_120$class_121 + f Lcom/google/common/collect/ImmutableList$Builder; conditions a field_1049 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; when a method_524 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; getThis c method_523 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; unwrap f method_525 + m ()Ljava/util/List; getConditions g method_526 + m ()V +c net/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$DummyBuilder ete$b net/minecraft/class_120$class_122 + f Ljava/util/function/Function; constructor a field_1050 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$DummyBuilder; getThis a method_527 + m (Ljava/util/function/Function;)V + p 1 constructor +c net/minecraft/world/level/storage/loot/functions/LootItemFunction etf net/minecraft/class_117 + c A LootItemFunction modifies an ItemStack based on the current LootContext.\n\n@see LootItemFunctions + m (Ljava/util/function/BiFunction;Ljava/util/function/Consumer;Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/function/Consumer; decorate a method_513 + c Create a decorated Consumer. The resulting consumer will first apply {@code stackModification} to all stacks before passing them on to {@code originalConsumer}. + p 0 stackModification + p 1 originalConsumer + p 2 lootContext + m (Ljava/util/function/Consumer;Ljava/util/function/BiFunction;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)V method_514 a method_514 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; getType b method_29321 +c net/minecraft/world/level/storage/loot/functions/LootItemFunction$Builder etf$a net/minecraft/class_117$class_118 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; build b method_515 +c net/minecraft/world/level/storage/loot/functions/LootItemFunctionType etg net/minecraft/class_5339 + c The SerializerType for {@link LootItemFunction}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1858 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1858 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/functions/LootItemFunctions eth net/minecraft/class_131 + c Registry for {@link LootItemFunction} + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_LORE A field_25231 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FILL_PLAYER_HEAD B field_25232 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_CUSTOM_DATA C field_49443 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_STATE D field_25234 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_BANNER_PATTERN E field_27342 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_POTION F field_35079 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_INSTRUMENT G field_39060 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; REFERENCE H field_44508 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SEQUENCE I field_45830 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_COMPONENTS J field_49440 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_FIREWORKS K field_49865 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_FIREWORK_EXPLOSION L field_49866 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_BOOK_COVER M field_49867 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_WRITTEN_BOOK_PAGES N field_49868 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_WRITABLE_BOOK_PAGES O field_49869 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; TOGGLE_TOOLTIPS P field_50022 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_OMINOUS_BOTTLE_AMPLIFIER Q field_50207 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CUSTOM_MODEL_DATA R field_51425 + f Ljava/util/function/BiFunction; IDENTITY a field_1102 + f Lcom/mojang/serialization/Codec; TYPED_CODEC b field_45831 + f Lcom/mojang/serialization/Codec; ROOT_CODEC c field_50023 + f Lcom/mojang/serialization/Codec; CODEC d field_45832 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_COUNT e field_25214 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ITEM f field_51426 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANT_WITH_LEVELS g field_25215 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANT_RANDOMLY h field_25216 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ENCHANTMENTS i field_27906 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CUSTOM_DATA j field_49441 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_COMPONENTS k field_49442 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FURNACE_SMELT l field_25218 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; ENCHANTED_COUNT_INCREASE m field_51800 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_DAMAGE n field_25220 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_ATTRIBUTES o field_25221 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_NAME p field_25222 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; EXPLORATION_MAP q field_25223 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_STEW_EFFECT r field_25224 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; COPY_NAME s field_25225 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_CONTENTS t field_25226 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; MODIFY_CONTENTS u field_51427 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; FILTERED v field_51428 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; LIMIT_COUNT w field_25227 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; APPLY_BONUS x field_25228 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; SET_LOOT_TABLE y field_25229 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; EXPLOSION_DECAY z field_25230 + m ()Lcom/mojang/serialization/Codec; method_53346 a method_53346 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_592 a method_592 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunctionType; register a method_29323 + p 0 name + p 1 codec + m (Ljava/util/List;)Ljava/util/function/BiFunction; compose a method_594 + p 0 functions + m (Ljava/util/List;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_53347 a method_53347 + m (Ljava/util/function/BiFunction;Ljava/util/function/BiFunction;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; method_591 a method_591 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/functions/ModifyContainerContents eti net/minecraft/class_9669 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51429 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51430 + f Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; modifier c field_51431 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/item/ItemStack; method_59743 a method_59743 + m (Lnet/minecraft/world/level/storage/loot/functions/ModifyContainerContents;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_59744 a method_59744 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59745 b method_59745 + m (Lnet/minecraft/world/level/storage/loot/functions/ModifyContainerContents;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_59746 b method_59746 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V + p 1 conditions + p 2 components + p 3 modifier + m ()V +c net/minecraft/world/level/storage/loot/functions/SequenceFunction etj net/minecraft/class_5641 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45834 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45835 + f Ljava/util/List; functions c field_27904 + f Ljava/util/function/BiFunction; compositeFunction d field_27905 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53351 a method_53351 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/item/ItemStack; apply a method_32405 + p 1 stack + p 2 context + m (Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction;)Ljava/util/List; method_53352 a method_53352 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction; of a method_53353 + p 0 functions + m (Lnet/minecraft/world/level/storage/loot/functions/SequenceFunction;)Ljava/util/List; method_53354 b method_53354 + m (Ljava/util/List;)V + p 1 functions + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction etk net/minecraft/class_137 + c LootItemFunction that adds a list of attribute modifiers to the stacks. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45836 + f Ljava/util/List; modifiers b field_1105 + f Z replace c field_51360 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder; modifier a method_35524 + p 0 id + p 1 attribute + p 2 operation + p 3 amount + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; method_57647 a method_57647 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/component/ItemAttributeModifiers;)Lnet/minecraft/world/item/component/ItemAttributeModifiers; updateModifiers a method_59544 + p 1 context + p 2 modifiers + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier;)Ljava/util/stream/Stream; method_32406 a method_32406 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction;)Ljava/lang/Boolean; method_59545 a method_59545 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53356 b method_53356 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction;)Ljava/util/List; method_53355 b method_53355 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; setAttributes c method_35525 + m (Ljava/util/List;Ljava/util/List;Z)V + p 1 conditions + p 2 modifiers + p 3 replace + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder etk$a net/minecraft/class_137$class_6155 + f Z replace a field_51361 + f Ljava/util/List; modifiers b field_31855 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; getThis a method_35526 + m (Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Builder; withModifier a method_35527 + p 1 modifierBuilder + m (Z)V + p 1 replace + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier etk$b net/minecraft/class_137$class_138 + f Lcom/mojang/serialization/Codec; CODEC a field_45837 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1864 + f Lnet/minecraft/core/Holder; attribute c comp_1860 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation d comp_1861 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount e comp_1862 + f Ljava/util/List; slots f comp_1863 + f Lcom/mojang/serialization/Codec; SLOTS_CODEC g field_45838 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1864 + m (Lcom/mojang/datafixers/util/Either;)Ljava/util/List; method_53357 a method_53357 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53358 a method_53358 + m (Ljava/util/List;)Lcom/mojang/datafixers/util/Either; method_53359 a method_53359 + m ()Lnet/minecraft/core/Holder; attribute b comp_1860 + m ()Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c comp_1861 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount d comp_1862 + m ()Ljava/util/List; slots e comp_1863 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder etk$c net/minecraft/class_137$class_6156 + f Lnet/minecraft/resources/ResourceLocation; id a field_31860 + f Lnet/minecraft/core/Holder; attribute b field_31857 + f Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation; operation c field_31858 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amount d field_31859 + f Ljava/util/Set; slots e field_31861 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$Modifier; build a method_35528 + m (Lnet/minecraft/world/entity/EquipmentSlotGroup;)Lnet/minecraft/world/level/storage/loot/functions/SetAttributesFunction$ModifierBuilder; forSlot a method_35529 + p 1 slot + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 id + p 2 attribute + p 3 operation + p 4 amount +c net/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction etl net/minecraft/class_5592 + c LootItemFunction that sets the banner patterns for a banner item. Optionally appends to any existing patterns. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45839 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; patterns b field_27343 + f Z append c field_27344 + m (Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_57648 a method_57648 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction;)Ljava/lang/Boolean; method_53360 a method_53360 + m (Z)Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; setBannerPattern a method_35531 + p 0 append + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53361 b method_53361 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction;)Lnet/minecraft/world/level/block/entity/BannerPatternLayers; method_53362 b method_53362 + m (Ljava/util/List;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Z)V + p 1 conditions + p 2 patterns + p 3 append + m ()V +c net/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder etl$a net/minecraft/class_5592$class_6157 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers$Builder; patterns a field_31862 + f Z append b field_31863 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; getThis a method_35532 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/storage/loot/functions/SetBannerPatternFunction$Builder; addPattern a method_35533 + p 1 pattern + p 2 color + m (Z)V + p 1 append +c net/minecraft/world/level/storage/loot/functions/SetBookCoverFunction etm net/minecraft/class_9374 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49870 + f Ljava/util/Optional; author b field_49871 + f Ljava/util/Optional; title c field_49872 + f Ljava/util/Optional; generation d field_49873 + m (Lnet/minecraft/world/item/component/WrittenBookContent;)Lnet/minecraft/world/item/component/WrittenBookContent; apply a method_58200 + p 1 writtenBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58201 a method_58201 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58202 b method_58202 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58203 b method_58203 + m (Lnet/minecraft/world/level/storage/loot/functions/SetBookCoverFunction;)Ljava/util/Optional; method_58204 c method_58204 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditons + p 2 title + p 3 author + p 4 generation + m ()V +c net/minecraft/world/level/storage/loot/functions/SetComponentsFunction etn net/minecraft/class_9320 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49444 + f Lnet/minecraft/core/component/DataComponentPatch; components b field_49445 + m (Lnet/minecraft/world/level/storage/loot/functions/SetComponentsFunction;)Lnet/minecraft/core/component/DataComponentPatch; method_57649 a method_57649 + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setComponent a method_57650 + p 0 component + p 1 value + m (Lnet/minecraft/core/component/DataComponentType;Ljava/lang/Object;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_57651 a method_57651 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57652 b method_57652 + m (Ljava/util/List;Lnet/minecraft/core/component/DataComponentPatch;)V + p 1 condition + p 2 components + m ()V +c net/minecraft/world/level/storage/loot/functions/SetContainerContents eto net/minecraft/class_134 + c LootItemFunction that sets the contents of a container such as a chest by setting the {@code BlocKEntityTag} of the stacks.\nThe contents are based on a list of loot pools. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45841 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51432 + f Ljava/util/List; entries c field_1103 + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; setContents a method_601 + p 0 component + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/stream/Stream$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntry;)V method_600 a method_600 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/stream/Stream$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer;)V method_599 a method_599 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents;)Ljava/util/List; method_53363 a method_53363 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53364 b method_53364 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents;)Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; method_53365 b method_53365 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;Ljava/util/List;)V + p 1 conditions + p 2 component + p 3 entries + m ()V +c net/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder eto$a net/minecraft/class_134$class_135 + f Lcom/google/common/collect/ImmutableList$Builder; entries a field_1104 + f Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator; component b field_51433 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; getThis a method_603 + m (Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/functions/SetContainerContents$Builder; withEntry a method_602 + p 1 lootEntryBuilder + m (Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;)V + p 1 component +c net/minecraft/world/level/storage/loot/functions/SetContainerLootTable etp net/minecraft/class_144 + c LootItemFunction that sets the LootTable and optionally the loot table seed on the stack's {@code BlockEntityTag}. The effect of this is that containers such as chests will receive the given LootTable when placed. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45842 + f Lnet/minecraft/resources/ResourceKey; name b field_1116 + f J seed c field_1117 + f Lnet/minecraft/core/Holder; type d field_34773 + m (Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35536 a method_35536 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/entity/BlockEntityType;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35537 a method_35537 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; withLootTable a method_35534 + p 0 type + p 1 toolTable + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/resources/ResourceKey;J)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; withLootTable a method_35535 + p 0 type + p 1 lootTable + p 2 seed + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Lnet/minecraft/core/Holder; method_53366 a method_53366 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53367 b method_53367 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Ljava/lang/Long; method_53368 b method_53368 + m (Lnet/minecraft/world/level/storage/loot/functions/SetContainerLootTable;)Lnet/minecraft/resources/ResourceKey; method_53369 c method_53369 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceKey;JLnet/minecraft/core/Holder;)V + p 1 conditions + p 2 name + p 3 seed + p 5 type + m ()V +c net/minecraft/world/level/storage/loot/functions/SetCustomDataFunction etq net/minecraft/class_159 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45849 + f Lnet/minecraft/nbt/CompoundTag; tag b field_1138 + m (Lnet/minecraft/world/level/storage/loot/functions/SetCustomDataFunction;)Lnet/minecraft/nbt/CompoundTag; method_53391 a method_53391 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCustomData a method_57654 + p 0 tag + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_675 a method_675 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53392 b method_53392 + m (Lnet/minecraft/nbt/CompoundTag;)V method_57655 b method_57655 + m (Ljava/util/List;Lnet/minecraft/nbt/CompoundTag;)V + p 1 conditions + p 2 tag + m ()V +c net/minecraft/world/level/storage/loot/functions/SetCustomModelDataFunction etr net/minecraft/class_9670 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51434 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; valueProvider b field_51435 + m (Lnet/minecraft/world/level/storage/loot/functions/SetCustomModelDataFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_59747 a method_59747 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59748 b method_59748 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 conditions + p 2 valueProvider + m ()V +c net/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction ets net/minecraft/class_5642 + c LootItemFunction that sets a stack's enchantments. If {@code add} is set, will add to any already existing enchantment levels instead of replacing them (ignored for enchanted books). + f Lcom/mojang/serialization/MapCodec; CODEC a field_45843 + f Ljava/util/Map; enchantments b field_27907 + f Z add c field_27908 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V method_60297 a method_60297 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;)V method_57657 a method_57657 + m (Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction;)Ljava/lang/Boolean; method_53370 a method_53370 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Ljava/util/stream/Stream; method_32409 a method_32409 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53371 b method_53371 + m (Lnet/minecraft/world/item/enchantment/ItemEnchantments$Mutable;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V method_57656 b method_57656 + m (Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction;)Ljava/util/Map; method_53372 b method_53372 + m (Ljava/util/List;Ljava/util/Map;Z)V + p 1 conditions + p 2 enchantments + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder ets$a net/minecraft/class_5642$class_6158 + f Lcom/google/common/collect/ImmutableMap$Builder; enchantments a field_31864 + f Z add b field_31865 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder; getThis a method_35538 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetEnchantmentsFunction$Builder; withEnchantment a method_35539 + p 1 enchantment + p 2 level + m ()V + m (Z)V + p 1 add +c net/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction ett net/minecraft/class_9375 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49874 + f Lnet/minecraft/world/item/component/FireworkExplosion; DEFAULT_VALUE b field_49875 + f Ljava/util/Optional; shape c field_49876 + f Ljava/util/Optional; colors d field_49877 + f Ljava/util/Optional; fadeColors e field_49878 + f Ljava/util/Optional; trail f field_49879 + f Ljava/util/Optional; twinkle h field_49880 + m (Lnet/minecraft/world/item/component/FireworkExplosion;)Lnet/minecraft/world/item/component/FireworkExplosion; apply a method_58205 + p 1 fireworkExplosion + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58206 a method_58206 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58207 b method_58207 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58208 b method_58208 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58209 c method_58209 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58210 d method_58210 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworkExplosionFunction;)Ljava/util/Optional; method_58211 e method_58211 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 shape + p 3 colors + p 4 fadeColors + p 5 trail + p 6 twinkle + m ()V +c net/minecraft/world/level/storage/loot/functions/SetFireworksFunction etu net/minecraft/class_9376 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49881 + f Lnet/minecraft/world/item/component/Fireworks; DEFAULT_VALUE b field_49882 + f Ljava/util/Optional; explosions c field_49883 + f Ljava/util/Optional; flightDuration d field_49885 + m (Lnet/minecraft/world/item/component/Fireworks;)Lnet/minecraft/world/item/component/Fireworks; apply a method_58212 + p 1 fireworks + m (Lnet/minecraft/world/item/component/Fireworks;Lnet/minecraft/world/level/storage/loot/functions/ListOperation$StandAlone;)Ljava/util/List; method_59833 a method_59833 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworksFunction;)Ljava/util/Optional; method_58215 a method_58215 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58214 b method_58214 + m (Lnet/minecraft/world/level/storage/loot/functions/SetFireworksFunction;)Ljava/util/Optional; method_58216 b method_58216 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)V + p 1 conditions + p 2 explosions + p 3 flightDuration + m ()V +c net/minecraft/world/level/storage/loot/functions/SetInstrumentFunction etv net/minecraft/class_7431 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45844 + f Lnet/minecraft/tags/TagKey; options b field_39184 + m (Lnet/minecraft/tags/TagKey;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setInstrumentOptions a method_43571 + p 0 instrumentOptions + m (Lnet/minecraft/tags/TagKey;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_43743 a method_43743 + m (Lnet/minecraft/world/level/storage/loot/functions/SetInstrumentFunction;)Lnet/minecraft/tags/TagKey; method_53373 a method_53373 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53374 b method_53374 + m (Ljava/util/List;Lnet/minecraft/tags/TagKey;)V + p 1 conditions + p 2 options + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemCountFunction etw net/minecraft/class_141 + c LootItemFunction that sets the stack's count based on a {@link NumberProvider}, optionally adding to any existing count. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45845 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; value b field_1114 + f Z add c field_27909 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemCountFunction;)Ljava/lang/Boolean; method_53375 a method_53375 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCount a method_621 + p 0 countValue + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_620 a method_620 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setCount a method_35540 + p 0 countValue + p 1 add + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;ZLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35541 a method_35541 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53376 b method_53376 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemCountFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53377 b method_53377 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)V + p 1 conditions + p 2 value + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemDamageFunction etx net/minecraft/class_149 + c LootItemFunction that sets the stack's damage based on a {@link NumberProvider}, optionally adding to any existing damage. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45846 + f Lorg/slf4j/Logger; LOGGER b field_1121 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; damage c field_1120 + f Z add d field_27910 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemDamageFunction;)Ljava/lang/Boolean; method_53378 a method_53378 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setDamage a method_633 + p 0 damageValue + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_634 a method_634 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setDamage a method_35542 + p 0 damageValue + p 1 add + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;ZLjava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35543 a method_35543 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53379 b method_53379 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemDamageFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_53380 b method_53380 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Z)V + p 1 conditions + p 2 damage + p 3 add + m ()V +c net/minecraft/world/level/storage/loot/functions/SetItemFunction ety net/minecraft/class_9671 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51436 + f Lnet/minecraft/core/Holder; item b field_51437 + m (Lnet/minecraft/world/level/storage/loot/functions/SetItemFunction;)Lnet/minecraft/core/Holder; method_59749 a method_59749 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_59750 b method_59750 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 conditions + p 2 item + m ()V +c net/minecraft/world/level/storage/loot/functions/SetLoreFunction etz net/minecraft/class_3671 + c LootItemFunction that sets a stack's lore tag, optionally replacing any previously present lore.\nThe Components for the lore tag are optionally resolved relative to a given {@link LootContext.EntityTarget} for entity-sensitive component data such as scoreboard scores. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45847 + f Ljava/util/List; lore b field_16231 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; mode c field_50024 + f Ljava/util/Optional; resolutionContext d field_16233 + m (Lnet/minecraft/world/item/component/ItemLore;Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/List; updateLore a method_57658 + p 1 itemLore + p 2 context + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/Set; method_53381 a method_53381 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/item/component/ItemLore;)Lnet/minecraft/world/item/component/ItemLore; method_57659 a method_57659 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Ljava/util/Optional; method_53382 a method_53382 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53383 b method_53383 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_53385 b method_53385 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setLore c method_35544 + m (Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction;)Ljava/util/List; method_53384 c method_53384 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;Ljava/util/Optional;)V + p 1 conditions + p 2 lore + p 3 mode + p 4 resolutionContext + m ()V +c net/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder etz$a net/minecraft/class_3671$class_6159 + f Ljava/util/Optional; resolutionContext a field_31867 + f Lcom/google/common/collect/ImmutableList$Builder; lore b field_31868 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; mode c field_50025 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; getThis a method_35545 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setResolutionContext a method_35546 + p 1 resolutionContext + m (Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; setMode a method_58460 + p 1 mode + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/world/level/storage/loot/functions/SetLoreFunction$Builder; addLine a method_35547 + p 1 line + m ()V +c net/minecraft/world/level/storage/loot/functions/SetNameFunction eua net/minecraft/class_3670 + c LootItemFunction that sets a stack's name.\nThe Component for the name is optionally resolved relative to a given {@link LootContext.EntityTarget} for entity-sensitive component data such as scoreboard scores. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45848 + f Lorg/slf4j/Logger; LOGGER b field_16230 + f Ljava/util/Optional; name c field_16228 + f Ljava/util/Optional; resolutionContext d field_16229 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; target e field_50208 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/network/chat/Component;)V method_53386 a method_53386 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/Set; method_53387 a method_53387 + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Ljava/util/function/UnaryOperator; createResolver a method_16190 + c Create a UnaryOperator that resolves Components based on the given LootContext and EntityTarget.\nThis will replace for example score components. + p 0 lootContext + p 1 resolutionContext + m (Lnet/minecraft/commands/CommandSourceStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_16189 a method_16189 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; method_58733 a method_58733 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; method_16191 a method_16191 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35551 a method_35551 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setName a method_35549 + p 0 name + p 1 target + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setName a method_35550 + p 0 name + p 1 target + p 2 resolutionContext + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_35552 a method_35552 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53389 b method_53389 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Ljava/util/Optional; method_53388 b method_53388 + m (Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction;)Ljava/util/Optional; method_53390 c method_53390 + m (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target;)V + p 1 conditions + p 2 name + p 3 resolutionContext + p 4 target + m ()V +c net/minecraft/world/level/storage/loot/functions/SetNameFunction$Target eua$a net/minecraft/class_3670$class_9475 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; CUSTOM_NAME a field_50210 + f Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; ITEM_NAME b field_50211 + f Lcom/mojang/serialization/Codec; CODEC c field_50212 + f Ljava/lang/String; name d field_50213 + f [Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; $VALUES e field_50214 + m ()Lnet/minecraft/core/component/DataComponentType; component a method_58734 + m ()[Lnet/minecraft/world/level/storage/loot/functions/SetNameFunction$Target; $values b method_58735 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/world/level/storage/loot/functions/SetOminousBottleAmplifierFunction eub net/minecraft/class_9476 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50215 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amplifierGenerator b field_50216 + m (Lnet/minecraft/world/level/storage/loot/functions/SetOminousBottleAmplifierFunction;)Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; method_58736 a method_58736 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setAmplifier a method_58737 + p 0 amplifier + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_58738 a method_58738 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58739 b method_58739 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; amplifier c method_58740 + m (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 conditions + p 2 amplifierGenerator + m ()V +c net/minecraft/world/level/storage/loot/functions/SetPotionFunction euc net/minecraft/class_6662 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45850 + f Lnet/minecraft/core/Holder; potion b field_35080 + m (Lnet/minecraft/world/level/storage/loot/functions/SetPotionFunction;)Lnet/minecraft/core/Holder; method_53393 a method_53393 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; setPotion a method_38927 + p 0 potion + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction; method_38928 a method_38928 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53394 b method_53394 + m (Ljava/util/List;Lnet/minecraft/core/Holder;)V + p 1 conditions + p 2 potion + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction eud net/minecraft/class_152 + c LootItemFunction that adds an effect to any suspicious stew items. A random effect is chosen from the given map every time. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45851 + f Lcom/mojang/serialization/Codec; EFFECTS_LIST b field_45852 + f Ljava/util/List; effects c field_45853 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry;)Ljava/util/stream/Stream; method_32421 a method_32421 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction;)Ljava/util/List; method_53395 a method_53395 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_53396 a method_53396 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53397 b method_53397 + m (Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry;)Ljava/lang/String; method_53398 b method_53398 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; stewEffect c method_637 + m (Ljava/util/List;Ljava/util/List;)V + p 1 conditions + p 2 effects + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder eud$a net/minecraft/class_152$class_153 + f Lcom/google/common/collect/ImmutableList$Builder; effects a field_1123 + m ()Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; getThis a method_639 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$Builder; withEffect a method_640 + p 1 effect + p 2 amplifier + m ()V +c net/minecraft/world/level/storage/loot/functions/SetStewEffectFunction$EffectEntry eud$b net/minecraft/class_152$class_8754 + f Lcom/mojang/serialization/Codec; CODEC a field_45854 + f Lnet/minecraft/core/Holder; effect b comp_1865 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; duration c comp_1866 + m ()Lnet/minecraft/core/Holder; effect a comp_1865 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53399 a method_53399 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; duration b comp_1866 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + m ()V +c net/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction eue net/minecraft/class_9377 + f Lcom/mojang/serialization/MapCodec; CODEC a field_49886 + f Ljava/util/List; pages b field_49887 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; pageOperation c field_49888 + m (Lnet/minecraft/world/item/component/WritableBookContent;)Lnet/minecraft/world/item/component/WritableBookContent; apply a method_58217 + p 1 writableBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_58218 a method_58218 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58219 b method_58219 + m (Lnet/minecraft/world/level/storage/loot/functions/SetWritableBookPagesFunction;)Ljava/util/List; method_58220 b method_58220 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V + p 1 conditions + p 2 pages + p 3 pageOperation + m ()V +c net/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction euf net/minecraft/class_9378 + f Lcom/mojang/serialization/Codec; PAGE_CODEC a field_50026 + f Lcom/mojang/serialization/MapCodec; CODEC b field_49889 + f Ljava/util/List; pages c field_49890 + f Lnet/minecraft/world/level/storage/loot/functions/ListOperation; pageOperation d field_49891 + m (Lnet/minecraft/world/item/component/WrittenBookContent;)Lnet/minecraft/world/item/component/WrittenBookContent; apply a method_58221 + p 1 writtenBookContent + m (Lnet/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction;)Lnet/minecraft/world/level/storage/loot/functions/ListOperation; method_58222 a method_58222 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/serialization/DataResult; method_58461 a method_58461 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; method_58462 a method_58462 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58223 b method_58223 + m (Lnet/minecraft/world/level/storage/loot/functions/SetWrittenBookPagesFunction;)Ljava/util/List; method_58224 b method_58224 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V + p 1 conditions + p 2 pages + p 3 pageOperation + m ()V +c net/minecraft/world/level/storage/loot/functions/SmeltItemFunction eug net/minecraft/class_165 + c LootItemFunction that tries to smelt any items using {@link RecipeType.SMELTING}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45855 + f Lorg/slf4j/Logger; LOGGER b field_1159 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53400 b method_53400 + m ()Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; smelted c method_724 + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips euh net/minecraft/class_9429 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50027 + f Ljava/util/Map; TOGGLES b field_50028 + f Lcom/mojang/serialization/Codec; TOGGLE_CODEC c field_50029 + f Ljava/util/Map; values d field_50030 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle;Ljava/lang/Boolean;)V method_58463 a method_58463 + m (Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle;)Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle; method_58464 a method_58464 + m (Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips;)Ljava/util/Map; method_58465 a method_58465 + m (Lnet/minecraft/core/component/DataComponentType;)Lcom/mojang/serialization/DataResult; method_58466 a method_58466 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58467 b method_58467 + m (Lnet/minecraft/core/component/DataComponentType;)Ljava/lang/String; method_58468 b method_58468 + m (Ljava/util/List;Ljava/util/Map;)V + p 1 conditions + p 2 values + m ()V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips$ComponentToggle euh$a net/minecraft/class_9429$class_9430 + f Lnet/minecraft/core/component/DataComponentType; type a comp_2523 + f Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither; setter b comp_2524 + m ()Lnet/minecraft/core/component/DataComponentType; type a comp_2523 + m (Lnet/minecraft/world/item/ItemStack;Z)V applyIfPresent a method_58469 + p 1 stack + p 2 showTooltip + m ()Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither; setter b comp_2524 + m (Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither;)V +c net/minecraft/world/level/storage/loot/functions/ToggleTooltips$TooltipWither euh$b net/minecraft/class_9429$class_9431 +c net/minecraft/world/level/storage/loot/functions/package-info eui net/minecraft/class_6160 +c net/minecraft/world/level/storage/loot/package-info euj net/minecraft/class_6161 +c net/minecraft/world/level/storage/loot/parameters/LootContextParam euk net/minecraft/class_169 + c A parameter of a {@link LootContext}.\n\n@see LootContextParams + f Lnet/minecraft/resources/ResourceLocation; name a field_1162 + m ()Lnet/minecraft/resources/ResourceLocation; getName a method_746 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 name +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSet eul net/minecraft/class_176 + c A LootContextParamSet defines a set of required and optional {@link LootContextParam}s.\nThis is used to validate that conditions, functions and other {@link LootContextUser}s only use those parameters that are present for the given loot table.\n\n@see LootContextParamSets\n@see ValidationContext + f Ljava/util/Set; required a field_1216 + f Ljava/util/Set; all b field_1215 + m ()Ljava/util/Set; getRequired a method_778 + c Gets only the required parameters + m (Lnet/minecraft/util/ProblemReporter;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_776 + p 1 problemReporter + p 2 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/world/level/storage/loot/LootContextUser;)V validateUser a method_60298 + c Validate that all parameters referenced by the given LootContextUser are present in this set. + p 1 validationContext + p 2 lootContextUser + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Z isAllowed a method_35553 + c Whether the given parameter is allowed in this set. + p 1 param + m ()Ljava/util/Set; getAllowed b method_777 + c Gets the required and optional parameters + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Ljava/lang/String; method_779 b method_779 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; builder c method_35554 + m (Ljava/util/Set;Ljava/util/Set;)V + p 1 required + p 2 optional +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder eul$a net/minecraft/class_176$class_177 + f Ljava/util/Set; required a field_1218 + f Ljava/util/Set; optional b field_1217 + m ()Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; build a method_782 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; required a method_781 + p 1 parameter + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder; optional b method_780 + p 1 parameter + m ()V +c net/minecraft/world/level/storage/loot/parameters/LootContextParamSets eum net/minecraft/class_173 + c Registry for {@link LootContextParamSet}s. + f Lcom/mojang/serialization/Codec; CODEC a field_45856 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; EMPTY b field_1175 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; CHEST c field_1179 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; COMMAND d field_20761 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; SELECTOR e field_20762 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; FISHING f field_1176 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENTITY g field_1173 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; EQUIPMENT h field_50217 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ARCHAEOLOGY i field_42858 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; GIFT j field_16235 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; PIGLIN_BARTER k field_22403 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; VAULT l field_48928 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_REWARD m field_1174 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_ENTITY n field_24423 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ADVANCEMENT_LOCATION o field_44788 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; BLOCK_USE p field_48381 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ALL_PARAMS q field_1177 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; BLOCK r field_1172 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; SHEARING s field_49446 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_DAMAGE t field_51801 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_ITEM u field_51802 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_LOCATION v field_51803 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; ENCHANTED_ENTITY w field_51804 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; HIT_BLOCK x field_52067 + f Lcom/google/common/collect/BiMap; REGISTRY y field_1178 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53401 a method_53401 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60792 a method_60792 + m (Ljava/lang/String;Ljava/util/function/Consumer;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet; register a method_759 + p 0 registryName + p 1 builderConsumer + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_53402 b method_53402 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60299 b method_60299 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_53403 c method_53403 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60300 c method_60300 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60301 d method_60301 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_60302 e method_60302 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_57660 f method_57660 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_760 g method_760 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_763 h method_763 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_56128 i method_56128 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_51722 j method_51722 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_27863 k method_27863 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_756 l method_756 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_56818 m method_56818 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_24800 n method_24800 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_49269 o method_49269 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_49270 p method_49270 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_58741 q method_58741 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_758 r method_758 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_764 s method_764 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_22577 t method_22577 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_22578 u method_22578 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_15970 v method_15970 + m (Lnet/minecraft/world/level/storage/loot/parameters/LootContextParamSet$Builder;)V method_755 w method_755 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/parameters/LootContextParams eun net/minecraft/class_181 + c Holds all known LootContextParams. + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; THIS_ENTITY a field_1226 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; LAST_DAMAGE_PLAYER b field_1233 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; DAMAGE_SOURCE c field_1231 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ATTACKING_ENTITY d field_1230 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; DIRECT_ATTACKING_ENTITY e field_1227 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ORIGIN f field_24424 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; BLOCK_STATE g field_1224 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; BLOCK_ENTITY h field_1228 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; TOOL i field_1229 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; EXPLOSION_RADIUS j field_1225 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ENCHANTMENT_LEVEL k field_51805 + f Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; ENCHANTMENT_ACTIVE l field_51806 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/parameters/LootContextParam; create a method_798 + p 0 id + m ()V + m ()V +c net/minecraft/world/level/storage/loot/parameters/package-info euo net/minecraft/class_6162 +c net/minecraft/world/level/storage/loot/predicates/AllOfCondition eup net/minecraft/class_8548 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45857 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45858 + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition; allOf a method_53404 + p 0 conditions + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder; allOf a method_51723 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/predicates/AllOfCondition$Builder eup$a net/minecraft/class_8548$class_8549 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V +c net/minecraft/world/level/storage/loot/predicates/AnyOfCondition euq net/minecraft/class_8551 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45859 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; anyOf a method_51727 + p 0 conditions + m (Ljava/util/List;)V + p 1 conditions + m ()V +c net/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder euq$a net/minecraft/class_8551$class_8552 + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V +c net/minecraft/world/level/storage/loot/predicates/BonusLevelTableCondition eur net/minecraft/class_182 + c A LootItemCondition that provides a random chance based on the level of a certain enchantment on the {@linkplain LootContextParams#TOOL tool}.\nThe chances are given as an array of float values that represent the given chance (0..1) for the enchantment level corresponding to the index.\n{@code [0.2, 0.3, 0.6]} would provide a 20% chance for not enchanted, 30% chance for enchanted at level 1 and 60% chance for enchanted at level 2 or above. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45860 + f Lnet/minecraft/core/Holder; enchantment b comp_1867 + f Ljava/util/List; values c comp_1868 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53405 a method_53405 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_799 + p 1 context + m (Lnet/minecraft/core/Holder;Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_801 a method_801 + m (Lnet/minecraft/core/Holder;[F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; bonusLevelFlatChance a method_800 + p 0 enchantment + p 1 values + m ()Lnet/minecraft/core/Holder; enchantment c comp_1867 + m ()Ljava/util/List; values d comp_1868 + m (Lnet/minecraft/core/Holder;Ljava/util/List;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition eus net/minecraft/class_186 + f Ljava/util/function/Predicate; composedPredicate a field_1247 + f Ljava/util/List; terms c field_1246 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_825 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition;)Ljava/util/List; method_53406 a method_53406 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/MapCodec; createCodec a method_53407 + p 0 factory + m (Ljava/util/function/Function;Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53408 a method_53408 + m (Lnet/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition;)Ljava/util/List; method_53409 b method_53409 + m (Ljava/util/function/Function;)Lcom/mojang/serialization/Codec; createInlineCodec b method_53410 + p 0 factory + m (Ljava/util/List;Ljava/util/function/Predicate;)V + p 1 terms + p 2 composedPredicate +c net/minecraft/world/level/storage/loot/predicates/CompositeLootItemCondition$Builder eus$a net/minecraft/class_186$class_187 + f Lcom/google/common/collect/ImmutableList$Builder; terms a field_1248 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V addTerm a method_51730 + p 1 condition + m (Ljava/util/List;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; create a method_51724 + p 1 conditions + m ([Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)V + p 1 conditions +c net/minecraft/world/level/storage/loot/predicates/ConditionReference eut net/minecraft/class_4568 + c A LootItemCondition that refers to another LootItemCondition by its ID. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45861 + f Lnet/minecraft/resources/ResourceKey; name b comp_1869 + f Lorg/slf4j/Logger; LOGGER c field_20763 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; conditionReference a method_35555 + p 0 name + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53411 a method_53411 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_22579 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;Lnet/minecraft/core/Holder$Reference;)V method_51230 a method_51230 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_35556 b method_35556 + m (Lnet/minecraft/world/level/storage/loot/ValidationContext;)V method_51231 b method_51231 + m ()Lnet/minecraft/resources/ResourceKey; name c comp_1869 + m (Lnet/minecraft/resources/ResourceKey;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder euu net/minecraft/class_192 + c Base interface for builders that can accept loot conditions.\n\n@see LootItemCondition + m (Ljava/lang/Iterable;Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; when a_ method_43744 + p 1 builderSources + p 2 toBuilderFunction + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; when b method_840 + p 1 conditionBuilder + m ()Lnet/minecraft/world/level/storage/loot/predicates/ConditionUserBuilder; unwrap d method_512 +c net/minecraft/world/level/storage/loot/predicates/DamageSourceCondition euv net/minecraft/class_190 + c A LootItemCondition which checks {@link LootContextParams#ORIGIN} and {@link LootContextParams#DAMAGE_SOURCE} against a {@link DamageSourcePredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45862 + f Ljava/util/Optional; predicate b comp_1870 + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasDamageSource a method_837 + p 0 builder + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53412 a method_53412 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_834 + p 1 context + m (Lnet/minecraft/advancements/critereon/DamageSourcePredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_836 b method_836 + m ()Ljava/util/Optional; predicate c comp_1870 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/EnchantmentActiveCheck euw net/minecraft/class_9752 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51807 + f Z active b comp_2780 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60303 a method_60303 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_60304 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; enchantmentActiveCheck c method_60305 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; enchantmentInactiveCheck d method_60306 + m ()Z active e comp_2780 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60307 f method_60307 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60308 g method_60308 + m (Z)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition eux net/minecraft/class_199 + c A LootItemCondition that checks if an Entity selected by a {@link LootContext.EntityTarget} has a given set of scores.\nIf one of the given objectives does not exist or the entity does not have a score for that objective, the condition fails. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45863 + f Ljava/util/Map; scores b comp_1871 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget c comp_1872 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53413 a method_53413 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Ljava/util/stream/Stream; method_32422 a method_32422 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder; hasScores a method_35557 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_864 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/LootContext;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/IntRange;)Z hasScore a method_865 + p 1 lootContext + p 2 targetEntity + p 3 scoreboard + p 4 objectiveName + p 5 scoreRange + m ()Ljava/util/Map; scores c comp_1871 + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget d comp_1872 + m (Ljava/util/Map;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 scores + p 2 entityTarget + m ()V +c net/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder eux$a net/minecraft/class_199$class_6163 + f Lcom/google/common/collect/ImmutableMap$Builder; scores a field_31869 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget b field_31870 + m (Ljava/lang/String;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/EntityHasScoreCondition$Builder; withScore a method_35558 + c Add a check that the score for the given {@code objectiveName} is within {@code scoreRange}. + p 1 objectiveName + p 2 scoreRange + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 entityTarget +c net/minecraft/world/level/storage/loot/predicates/ExplosionCondition euy net/minecraft/class_201 + c A LootItemCondition that checks whether an item should survive from an explosion or not.\nThis condition checks the {@linkplain LootContextParams#EXPLOSION_RADIUS explosion radius loot parameter}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45864 + f Lnet/minecraft/world/level/storage/loot/predicates/ExplosionCondition; INSTANCE b field_1280 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_869 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; survivesExplosion c method_871 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_872 d method_872 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/InvertedLootItemCondition euz net/minecraft/class_207 + c A LootItemCondition that inverts the output of another one. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45865 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; term b comp_1873 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53414 a method_53414 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_888 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/InvertedLootItemCondition;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_887 a method_887 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; invert a method_889 + p 0 toInvert + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; term c comp_1873 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition;)V + p 1 term + m ()V +c net/minecraft/world/level/storage/loot/predicates/LocationCheck eva net/minecraft/class_205 + c LootItemCondition that checks the {@link LootContextParams.ORIGIN} position against a {@link LocationPredicate} after applying an offset to the origin position. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45866 + f Ljava/util/Optional; predicate b comp_1874 + f Lnet/minecraft/core/BlockPos; offset c comp_1875 + f Lcom/mojang/serialization/MapCodec; OFFSET_CODEC g field_45867 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53415 a method_53415 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; checkLocation a method_884 + p 0 locationPredicateBuilder + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; checkLocation a method_30151 + p 0 locationPredicateBuilder + p 1 offset + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_881 + p 1 context + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53416 b method_53416 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_882 b method_882 + m (Lnet/minecraft/advancements/critereon/LocationPredicate$Builder;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_30152 b method_30152 + m ()Ljava/util/Optional; predicate c comp_1874 + m ()Lnet/minecraft/core/BlockPos; offset d comp_1875 + m (Ljava/util/Optional;Lnet/minecraft/core/BlockPos;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition evb net/minecraft/class_212 + c A LootItemCondition that checks whether the {@linkplain LootContextParams#BLOCK_STATE block state} matches a given Block and {@link StatePropertiesPredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45868 + f Lnet/minecraft/core/Holder; block b comp_1876 + f Ljava/util/Optional; properties c comp_1877 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53417 a method_53417 + m (Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder; hasBlockStateProperties a method_900 + p 0 block + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_899 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;)Lcom/mojang/serialization/DataResult; validate a method_53418 + p 0 condition + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Lnet/minecraft/advancements/critereon/StatePropertiesPredicate;)Ljava/util/Optional; method_53419 a method_53419 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_53420 a method_53420 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition;Ljava/lang/String;)Ljava/lang/String; method_53421 b method_53421 + m ()Lnet/minecraft/core/Holder; block c comp_1876 + m ()Ljava/util/Optional; properties d comp_1877 + m (Lnet/minecraft/core/Holder;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder evb$a net/minecraft/class_212$class_213 + f Lnet/minecraft/core/Holder; block a field_1290 + f Ljava/util/Optional; properties b field_1291 + m (Lnet/minecraft/advancements/critereon/StatePropertiesPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemBlockStatePropertyCondition$Builder; setProperties a method_22584 + p 1 statePredicateBuilder + m (Lnet/minecraft/world/level/block/Block;)V + p 1 block +c net/minecraft/world/level/storage/loot/predicates/LootItemCondition evc net/minecraft/class_5341 + c A condition based on {@link LootContext}.\n\n@see {@link LootItemConditions}\n@see {@link PredicateManager} + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_51808 + f Lcom/mojang/serialization/Codec; DIRECT_CODEC e field_51809 + f Lcom/mojang/serialization/Codec; CODEC f field_51810 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; getType b method_29325 + m ()Lcom/mojang/serialization/Codec; method_60309 c method_60309 + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder evc$a net/minecraft/class_5341$class_210 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; invert invert method_16780 + m (Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/AnyOfCondition$Builder; or or method_893 + p 1 condition +c net/minecraft/world/level/storage/loot/predicates/LootItemConditionType evd net/minecraft/class_5342 + c The SerializerType for {@link LootItemCondition}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1878 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1878 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/predicates/LootItemConditions eve net/minecraft/class_217 + c Registry for {@link LootItemConditionType}.\n\n@see LootItemCondition + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; INVERTED a field_25235 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ANY_OF b field_44789 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ALL_OF c field_44790 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; RANDOM_CHANCE d field_25237 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; RANDOM_CHANCE_WITH_ENCHANTED_BONUS e field_51811 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENTITY_PROPERTIES f field_25239 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; KILLED_BY_PLAYER g field_25240 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENTITY_SCORES h field_25241 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; BLOCK_STATE_PROPERTY i field_25242 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; MATCH_TOOL j field_25243 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; TABLE_BONUS k field_25244 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; SURVIVES_EXPLOSION l field_25245 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; DAMAGE_SOURCE_PROPERTIES m field_25246 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; LOCATION_CHECK n field_25247 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; WEATHER_CHECK o field_25248 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; REFERENCE p field_25249 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; TIME_CHECK q field_25250 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; VALUE_CHECK r field_27911 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; ENCHANTMENT_ACTIVE_CHECK s field_51812 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemConditionType; register a method_29327 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemEntityPropertyCondition evf net/minecraft/class_215 + c A LootItemCondition that checks a given {@link EntityPredicate} against a given {@link LootContext.EntityTarget}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45871 + f Ljava/util/Optional; predicate b comp_1879 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget c comp_1880 + m (Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_916 a method_916 + m (Lnet/minecraft/advancements/critereon/EntityPredicate;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_27864 a method_27864 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53423 a method_53423 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; entityPresent a method_15972 + p 0 target + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/advancements/critereon/EntityPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasProperties a method_917 + p 0 target + p 1 predicateBuilder + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Lnet/minecraft/advancements/critereon/EntityPredicate;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasProperties a method_27865 + p 0 target + p 1 entityPredicate + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_914 + p 1 context + m ()Ljava/util/Optional; predicate c comp_1879 + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; entityTarget d comp_1880 + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemKilledByPlayerCondition evg net/minecraft/class_221 + c A LootItemCondition that matches if the last damage to an entity was done by a player.\n\n@see LootContextParams#LAST_DAMAGE_PLAYER + f Lcom/mojang/serialization/MapCodec; CODEC a field_45872 + f Lnet/minecraft/world/level/storage/loot/predicates/LootItemKilledByPlayerCondition; INSTANCE b field_1297 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_938 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; killedByPlayer c method_939 + m ()Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_940 d method_940 + m ()V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemRandomChanceCondition evh net/minecraft/class_219 + c A LootItemCondition that succeeds with a given probability. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45873 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; chance b comp_2781 + m (F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChance a method_932 + p 0 chance + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53424 a method_53424 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_934 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChance a method_60310 + p 0 chance + m (F)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_933 b method_933 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_60311 b method_60311 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; chance c comp_2781 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/LootItemRandomChanceWithEnchantedBonusCondition evi net/minecraft/class_225 + f Lcom/mojang/serialization/MapCodec; CODEC a field_45874 + f F unenchantedChance b comp_2865 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; enchantedChance c comp_2866 + f Lnet/minecraft/core/Holder; enchantment g comp_2783 + m (FFLnet/minecraft/core/HolderLookup$RegistryLookup;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_952 a method_952 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53425 a method_53425 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_950 + p 1 context + m (Lnet/minecraft/core/HolderLookup$Provider;FF)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; randomChanceAndLootingBoost a method_953 + p 0 registries + p 1 base + p 2 perLevelAfterFirst + m ()F unenchantedChance c comp_2865 + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; enchantedChance d comp_2866 + m ()Lnet/minecraft/core/Holder; enchantment e comp_2783 + m (FLnet/minecraft/world/item/enchantment/LevelBasedValue;Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/MatchTool evj net/minecraft/class_223 + c A LootItemCondition that checks the {@linkplain LootContextParams#TOOL tool} against an {@link ItemPredicate}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45875 + f Ljava/util/Optional; predicate b comp_1884 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53426 a method_53426 + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; toolMatches a method_945 + p 0 toolPredicateBuilder + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_946 + p 1 context + m (Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_944 b method_944 + m ()Ljava/util/Optional; predicate c comp_1884 + m (Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/TimeCheck evk net/minecraft/class_4571 + c A LootItemCondition that checks the {@linkplain ServerLevel#getDayTime day time} against an {@link IntRange} after applying an optional modulo division. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45876 + f Ljava/util/Optional; period b comp_1885 + f Lnet/minecraft/world/level/storage/loot/IntRange; value c comp_1886 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53427 a method_53427 + m (Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder; time a method_35559 + p 0 timeRange + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_22587 + p 1 context + m ()Ljava/util/Optional; period c comp_1885 + m ()Lnet/minecraft/world/level/storage/loot/IntRange; value d comp_1886 + m (Ljava/util/Optional;Lnet/minecraft/world/level/storage/loot/IntRange;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder evk$a net/minecraft/class_4571$class_6164 + f Ljava/util/Optional; period a field_31871 + f Lnet/minecraft/world/level/storage/loot/IntRange; value b field_31872 + m ()Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck; build a method_35561 + m (J)Lnet/minecraft/world/level/storage/loot/predicates/TimeCheck$Builder; setPeriod a method_35560 + p 1 period + m (Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 timeRange +c net/minecraft/world/level/storage/loot/predicates/ValueCheckCondition evl net/minecraft/class_5644 + c LootItemCondition that checks if a number provided by a {@link NumberProvider} is within an {@link IntRange}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45877 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; provider b comp_1887 + f Lnet/minecraft/world/level/storage/loot/IntRange; range c comp_1888 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53428 a method_53428 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_32423 + p 1 context + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder; hasValue a method_35562 + p 0 provider + p 1 range + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition; method_35563 b method_35563 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; provider c comp_1887 + m ()Lnet/minecraft/world/level/storage/loot/IntRange; range d comp_1888 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/IntRange;)V + p 1 provider + p 2 range + m ()V +c net/minecraft/world/level/storage/loot/predicates/WeatherCheck evm net/minecraft/class_227 + c A LootItemCondition that checks whether it currently raining or thundering.\nBoth checks are optional. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45878 + f Ljava/util/Optional; isRaining b comp_1889 + f Ljava/util/Optional; isThundering c comp_1890 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53429 a method_53429 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Z test a method_957 + p 1 context + m ()Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; weather c method_35564 + m ()Ljava/util/Optional; isRaining d comp_1889 + m ()Ljava/util/Optional; isThundering e comp_1890 + m (Ljava/util/Optional;Ljava/util/Optional;)V + m ()V +c net/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder evm$a net/minecraft/class_227$class_6165 + f Ljava/util/Optional; isRaining a field_31873 + f Ljava/util/Optional; isThundering b field_31874 + m ()Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck; build a method_35566 + m (Z)Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; setRaining a method_35565 + p 1 isRaining + m (Z)Lnet/minecraft/world/level/storage/loot/predicates/WeatherCheck$Builder; setThundering b method_35567 + p 1 isThundering + m ()V +c net/minecraft/world/level/storage/loot/predicates/package-info evn net/minecraft/class_6166 +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider evo net/minecraft/class_5646 + c A NbtProvider that provides either the {@linkplain LootContextParams#BLOCK_ENTITY block entity}'s NBT data or an entity's NBT data based on an {@link LootContext.EntityTarget}. + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider; BLOCK_ENTITY a field_27914 + f Lcom/mojang/serialization/MapCodec; CODEC b field_45879 + f Lcom/mojang/serialization/Codec; INLINE_CODEC c field_45880 + f Ljava/lang/String; BLOCK_ENTITY_ID d field_31875 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; BLOCK_ENTITY_PROVIDER e field_27915 + f Lcom/mojang/serialization/Codec; GETTER_CODEC f field_45881 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; getter g field_27916 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53430 a method_53430 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider; forContextEntity a method_35568 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53431 a method_53431 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53432 a method_53432 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; forEntity b method_32430 + p 0 entityTarget + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider;)Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter; method_53433 b method_53433 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter;)V + p 1 getter + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$1 evo$1 net/minecraft/class_5646$1 + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$2 evo$2 net/minecraft/class_5646$2 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; val$target a field_27917 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V +c net/minecraft/world/level/storage/loot/providers/nbt/ContextNbtProvider$Getter evo$a net/minecraft/class_5646$class_5648 + m ()Ljava/lang/String; getId a method_32434 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/nbt/Tag; get a method_32435 + p 1 lootContext + m ()Ljava/util/Set; getReferencedContextParams b method_32436 +c net/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType evp net/minecraft/class_5650 + c The SerializerType for {@link NbtProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1891 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1891 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/nbt/NbtProvider evq net/minecraft/class_5651 + c A provider for NBT data based on a LootContext.\n\n@see NbtProviders + m ()Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; getType a method_32439 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/nbt/Tag; get a method_32440 + p 1 lootContext + m ()Ljava/util/Set; getReferencedContextParams b method_32441 +c net/minecraft/world/level/storage/loot/providers/nbt/NbtProviders evr net/minecraft/class_5652 + c Registry for {@link NbtProvider} + f Lcom/mojang/serialization/Codec; CODEC a field_45882 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; STORAGE b field_27918 + f Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; CONTEXT c field_27919 + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_45883 + m ()Lcom/mojang/serialization/Codec; method_53434 a method_53434 + m (Lnet/minecraft/world/level/storage/loot/providers/nbt/NbtProvider;)Lcom/mojang/datafixers/util/Either; method_53436 a method_53436 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/nbt/LootNbtProviderType; register a method_32443 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/StorageNbtProvider evs net/minecraft/class_5653 + c An NbtProvider that provides NBT data from a named {@link CommandStorage}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45884 + f Lnet/minecraft/resources/ResourceLocation; id b comp_1892 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53437 a method_53437 + m ()Lnet/minecraft/resources/ResourceLocation; id c comp_1892 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 id + m ()V +c net/minecraft/world/level/storage/loot/providers/nbt/package-info evt net/minecraft/class_6167 +c net/minecraft/world/level/storage/loot/providers/number/BinomialDistributionGenerator evu net/minecraft/class_40 + c A number provider which generates a random number based on a binomial distribution. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45885 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; n b comp_1893 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; p c comp_1894 + m (IF)Lnet/minecraft/world/level/storage/loot/providers/number/BinomialDistributionGenerator; binomial a method_273 + p 0 n + p 1 p + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53438 a method_53438 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; n c comp_1893 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; p d comp_1894 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 n + p 2 p + m ()V +c net/minecraft/world/level/storage/loot/providers/number/ConstantValue evv net/minecraft/class_44 + c A {@link NumberProvider} that provides a constant value. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45886 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45887 + f F value c comp_1895 + m (F)Lnet/minecraft/world/level/storage/loot/providers/number/ConstantValue; exactly a method_32448 + p 0 value + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53439 a method_53439 + m ()F value c comp_1895 + m (F)V + p 1 value + m ()V +c net/minecraft/world/level/storage/loot/providers/number/EnchantmentLevelProvider evw net/minecraft/class_9753 + f Lcom/mojang/serialization/MapCodec; CODEC a field_51813 + f Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount b comp_2784 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_60312 a method_60312 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)Lnet/minecraft/world/level/storage/loot/providers/number/EnchantmentLevelProvider; forEnchantmentLevel a method_60313 + p 0 amount + m ()Lnet/minecraft/world/item/enchantment/LevelBasedValue; amount c comp_2784 + m (Lnet/minecraft/world/item/enchantment/LevelBasedValue;)V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType evx net/minecraft/class_5657 + c The SerializerType for {@link NumberProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1896 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1896 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/number/NumberProvider evy net/minecraft/class_5658 + c Provides a float or int based on a {@link LootContext}. + m (Lnet/minecraft/world/level/storage/loot/LootContext;)I getInt a method_366 + p 1 lootContext + m ()Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; getType b method_365 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)F getFloat b method_32454 + p 1 lootContext +c net/minecraft/world/level/storage/loot/providers/number/NumberProviders evz net/minecraft/class_5659 + c Registration for {@link LootNumberProviderType}.\n\n@see LootNumberProviderType\n@see NumberProvider + f Lcom/mojang/serialization/Codec; CODEC a field_45888 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; CONSTANT b field_27921 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; UNIFORM c field_27922 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; BINOMIAL d field_27923 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; SCORE e field_27924 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; STORAGE f field_50032 + f Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; ENCHANTMENT_LEVEL g field_51814 + f Lcom/mojang/serialization/Codec; TYPED_CODEC h field_45889 + m ()Lcom/mojang/serialization/Codec; method_53440 a method_53440 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)Lcom/mojang/datafixers/util/Either; method_53442 a method_53442 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/number/LootNumberProviderType; register a method_32456 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/ScoreboardValue ewa net/minecraft/class_5660 + c Provides a number by reading the score of a scoreboard member whose name is provided by a {@link ScoreboardNameProvider}.\nAdditionally a scale can be provided, which will be multiplied with the score. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45890 + f Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; target b comp_1897 + f Ljava/lang/String; score c comp_1898 + f F scale d comp_1899 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53443 a method_53443 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/number/ScoreboardValue; fromScoreboard a method_35569 + p 0 entityTarget + p 1 score + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;Ljava/lang/String;F)Lnet/minecraft/world/level/storage/loot/providers/number/ScoreboardValue; fromScoreboard a method_35570 + p 0 entityTarget + p 1 score + p 2 scale + m ()Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; target c comp_1897 + m ()Ljava/lang/String; score d comp_1898 + m ()F scale e comp_1899 + m (Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider;Ljava/lang/String;F)V + p 1 target + p 2 score + p 3 scale + m ()V +c net/minecraft/world/level/storage/loot/providers/number/StorageValue ewb net/minecraft/class_9432 + f Lcom/mojang/serialization/MapCodec; CODEC a field_50033 + f Lnet/minecraft/resources/ResourceLocation; storage b comp_2525 + f Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; path c comp_2526 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_58470 a method_58470 + m ()Lnet/minecraft/resources/ResourceLocation; storage c comp_2525 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Ljava/util/Optional; getNumericTag c method_58471 + p 1 context + m ()Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath; path d comp_2526 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/commands/arguments/NbtPathArgument$NbtPath;)V + m ()V +c net/minecraft/world/level/storage/loot/providers/number/UniformGenerator ewc net/minecraft/class_5662 + c Generates a random number which is uniformly distributed between a minimum and a maximum.\nMinimum and maximum are themselves NumberProviders. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45891 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min b comp_1900 + f Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max c comp_1901 + m (FF)Lnet/minecraft/world/level/storage/loot/providers/number/UniformGenerator; between a method_32462 + p 0 min + p 1 max + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53444 a method_53444 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; min c comp_1900 + m ()Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider; max d comp_1901 + m (Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V + p 1 min + p 2 max + m ()V +c net/minecraft/world/level/storage/loot/providers/number/package-info ewd net/minecraft/class_6168 +c net/minecraft/world/level/storage/loot/providers/score/ContextScoreboardNameProvider ewe net/minecraft/class_5664 + c A {@link ScoreboardNameProvider} that provides the scoreboard name for an entity selected by a {@link LootContext.EntityTarget}. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45892 + f Lcom/mojang/serialization/Codec; INLINE_CODEC b field_45893 + f Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; target c comp_1902 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53445 a method_53445 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; forTarget a method_35571 + p 0 target + m ()Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget; target c comp_1902 + m (Lnet/minecraft/world/level/storage/loot/LootContext$EntityTarget;)V + p 1 target + m ()V +c net/minecraft/world/level/storage/loot/providers/score/FixedScoreboardNameProvider ewf net/minecraft/class_5667 + c A {@link ScoreboardNameProvider} that always provides a fixed name. + f Lcom/mojang/serialization/MapCodec; CODEC a field_45894 + f Ljava/lang/String; name b comp_1903 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_53446 a method_53446 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider; forName a method_35572 + p 0 name + m ()Ljava/lang/String; name c comp_1903 + m (Ljava/lang/String;)V + p 1 name + m ()V +c net/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType ewg net/minecraft/class_5669 + c The SerializerType for {@link ScoreboardNameProvider}. + f Lcom/mojang/serialization/MapCodec; codec a comp_1904 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1904 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider ewh net/minecraft/class_5670 + c Provides a scoreboard name based on a {@link LootContext}. + m ()Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; getType a method_32475 + m (Lnet/minecraft/world/level/storage/loot/LootContext;)Lnet/minecraft/world/scores/ScoreHolder; getScoreHolder a method_55379 + p 1 context + m ()Ljava/util/Set; getReferencedContextParams b method_32477 +c net/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProviders ewi net/minecraft/class_5671 + c Registration for {@link ScoreboardNameProvider}. + f Lcom/mojang/serialization/Codec; CODEC a field_45895 + f Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; FIXED b field_27932 + f Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; CONTEXT c field_27933 + f Lcom/mojang/serialization/Codec; TYPED_CODEC d field_45896 + m ()Lcom/mojang/serialization/Codec; method_53447 a method_53447 + m (Lnet/minecraft/world/level/storage/loot/providers/score/ScoreboardNameProvider;)Lcom/mojang/datafixers/util/Either; method_53449 a method_53449 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/world/level/storage/loot/providers/score/LootScoreProviderType; register a method_32479 + p 0 name + p 1 codec + m ()V + m ()V +c net/minecraft/world/level/storage/loot/providers/score/package-info ewj net/minecraft/class_6169 +c net/minecraft/world/level/storage/package-info ewk net/minecraft/class_6170 +c net/minecraft/world/level/timers/FunctionCallback ewl net/minecraft/class_231 + f Lnet/minecraft/resources/ResourceLocation; functionId a field_1304 + m (Lnet/minecraft/server/ServerFunctionManager;Lnet/minecraft/commands/functions/CommandFunction;)V method_17938 a method_17938 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle a method_967 + p 1 obj + p 2 manager + p 3 gameTime + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 functionId +c net/minecraft/world/level/timers/FunctionCallback$Serializer ewl$a net/minecraft/class_231$class_232 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/FunctionCallback; deserialize a method_969 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/FunctionCallback;)V serialize a method_968 + m ()V +c net/minecraft/world/level/timers/FunctionTagCallback ewm net/minecraft/class_229 + f Lnet/minecraft/resources/ResourceLocation; tagId a field_1303 + m (Lnet/minecraft/server/MinecraftServer;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle a method_962 + p 1 obj + p 2 manager + p 3 gameTime + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 tagId +c net/minecraft/world/level/timers/FunctionTagCallback$Serializer ewm$a net/minecraft/class_229$class_230 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/FunctionTagCallback; deserialize a method_965 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/FunctionTagCallback;)V serialize a method_964 + m ()V +c net/minecraft/world/level/timers/TimerCallback ewn net/minecraft/class_234 + m (Ljava/lang/Object;Lnet/minecraft/world/level/timers/TimerQueue;J)V handle handle method_974 + p 1 obj + p 2 manager + p 3 gameTime +c net/minecraft/world/level/timers/TimerCallback$Serializer ewn$a net/minecraft/class_234$class_235 + f Lnet/minecraft/resources/ResourceLocation; id a field_1309 + f Ljava/lang/Class; cls b field_1310 + m ()Lnet/minecraft/resources/ResourceLocation; getId a method_977 + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/world/level/timers/TimerCallback;)V serialize a method_975 + p 1 tag + p 2 callback + m ()Ljava/lang/Class; getCls b method_978 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/TimerCallback; deserialize b method_976 + p 1 tag + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Class;)V + p 1 id + p 2 cls +c net/minecraft/world/level/timers/TimerCallbacks ewo net/minecraft/class_233 + f Lnet/minecraft/world/level/timers/TimerCallbacks; SERVER_CALLBACKS a field_1306 + f Lorg/slf4j/Logger; LOGGER b field_1308 + f Ljava/util/Map; idToSerializer c field_1307 + f Ljava/util/Map; classToSerializer d field_1305 + m (Lnet/minecraft/world/level/timers/TimerCallback$Serializer;)Lnet/minecraft/world/level/timers/TimerCallbacks; register a method_971 + p 1 serializer + m (Lnet/minecraft/world/level/timers/TimerCallback;)Lnet/minecraft/nbt/CompoundTag; serialize a method_973 + p 1 callback + m (Ljava/lang/Class;)Lnet/minecraft/world/level/timers/TimerCallback$Serializer; getSerializer a method_970 + p 1 clazz + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/world/level/timers/TimerCallback; deserialize a method_972 + p 1 tag + m ()V + m ()V +c net/minecraft/world/level/timers/TimerQueue ewp net/minecraft/class_236 + f Lorg/slf4j/Logger; LOGGER a field_1315 + f Ljava/lang/String; CALLBACK_DATA_TAG b field_31876 + f Ljava/lang/String; TIMER_NAME_TAG c field_31877 + f Ljava/lang/String; TIMER_TRIGGER_TIME_TAG d field_31878 + f Lnet/minecraft/world/level/timers/TimerCallbacks; callbacksRegistry e field_1314 + f Ljava/util/Queue; queue f field_1313 + f Lcom/google/common/primitives/UnsignedLong; sequentialId g field_1311 + f Lcom/google/common/collect/Table; events h field_1312 + m ()Ljava/util/Set; getEventsIds a method_22592 + m (Lcom/mojang/serialization/Dynamic;)V method_29040 a method_29040 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)Lnet/minecraft/nbt/CompoundTag; storeEvent a method_980 + p 1 event + m (Ljava/lang/Object;J)V tick a method_988 + p 1 obj + p 2 gameTime + m (Ljava/lang/String;)I remove a method_22593 + p 1 eventId + m (Ljava/lang/String;JLnet/minecraft/world/level/timers/TimerCallback;)V schedule a method_985 + p 1 id + p 2 triggerTime + p 4 callback + m (Lnet/minecraft/nbt/CompoundTag;)V loadEvent a method_986 + p 1 tag + m ()Lnet/minecraft/nbt/ListTag; store b method_982 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)Lcom/google/common/primitives/UnsignedLong; method_21904 b method_21904 + m ()Ljava/util/Comparator; createComparator c method_987 + m (Lnet/minecraft/world/level/timers/TimerQueue$Event;)J method_21905 c method_21905 + m (Lnet/minecraft/world/level/timers/TimerCallbacks;Ljava/util/stream/Stream;)V + p 1 callbacksRegistry + p 2 scheduledEventsDynamic + m (Lnet/minecraft/world/level/timers/TimerCallbacks;)V + p 1 callbacksRegistry + m ()V +c net/minecraft/world/level/timers/TimerQueue$Event ewp$a net/minecraft/class_236$class_237 + f J triggerTime a field_1318 + f Lcom/google/common/primitives/UnsignedLong; sequentialId b field_1319 + f Ljava/lang/String; id c field_1317 + f Lnet/minecraft/world/level/timers/TimerCallback; callback d field_1316 + m (JLcom/google/common/primitives/UnsignedLong;Ljava/lang/String;Lnet/minecraft/world/level/timers/TimerCallback;)V + p 1 triggerTime + p 3 sequentialId + p 4 id + p 5 callback +c net/minecraft/world/level/timers/package-info ewq net/minecraft/class_6171 +c net/minecraft/world/level/validation/ContentValidationException ewr net/minecraft/class_8579 + f Ljava/nio/file/Path; directory a field_44953 + f Ljava/util/List; entries b field_44954 + m (Lnet/minecraft/world/level/validation/ForbiddenSymlinkInfo;)Ljava/lang/String; method_52240 a method_52240 + m (Ljava/nio/file/Path;Ljava/util/List;)Ljava/lang/String; getMessage a method_52241 + p 0 directory + p 1 entries + m (Ljava/nio/file/Path;Ljava/util/List;)V + p 1 directory + p 2 entries +c net/minecraft/world/level/validation/DirectoryValidator ews net/minecraft/class_8580 + f Ljava/nio/file/PathMatcher; symlinkTargetAllowList a field_44955 + m (Ljava/nio/file/Path;)Ljava/util/List; validateSymlink a method_52618 + p 1 directory + m (Ljava/nio/file/Path;Ljava/util/List;)V validateSymlink a method_52242 + p 1 directory + p 2 entries + m (Ljava/nio/file/Path;Z)Ljava/util/List; validateDirectory a method_52243 + p 1 directory + p 2 validateSymlinks + m (Ljava/nio/file/Path;Ljava/util/List;)V validateKnownDirectory b method_52619 + p 1 directory + p 2 forbiddenSymlinkInfos + m (Ljava/nio/file/PathMatcher;)V + p 1 symlinkTargetAllowList +c net/minecraft/world/level/validation/DirectoryValidator$1 ews$1 net/minecraft/class_8580$1 + f Ljava/util/List; val$issues a field_44956 + f Lnet/minecraft/world/level/validation/DirectoryValidator; field_44957 b field_44957 + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; preVisitDirectory a method_52244 + p 1 dir + p 2 attributes + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)Ljava/nio/file/FileVisitResult; visitFile b method_52245 + p 1 file + p 2 attributes + m (Ljava/nio/file/Path;Ljava/nio/file/attribute/BasicFileAttributes;)V validateSymlink c method_52246 + p 1 path + p 2 attributes + m (Lnet/minecraft/world/level/validation/DirectoryValidator;Ljava/util/List;)V +c net/minecraft/world/level/validation/ForbiddenSymlinkInfo ewt net/minecraft/class_8581 + f Ljava/nio/file/Path; link a comp_1547 + f Ljava/nio/file/Path; target b comp_1548 + m ()Ljava/nio/file/Path; link a comp_1547 + m ()Ljava/nio/file/Path; target b comp_1548 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V +c net/minecraft/world/level/validation/PathAllowList ewu net/minecraft/class_8582 + f Lorg/slf4j/Logger; LOGGER a field_44958 + f Ljava/lang/String; COMMENT_PREFIX b field_44959 + f Ljava/util/List; entries c field_44960 + f Ljava/util/Map; compiledPaths d field_44961 + m (Ljava/io/BufferedReader;)Lnet/minecraft/world/level/validation/PathAllowList; readPlain a method_52247 + p 0 reader + m (Ljava/lang/String;)Ljava/util/stream/Stream; method_52248 a method_52248 + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; getForFileSystem a method_52249 + p 1 fileSystem + m (Ljava/nio/file/FileSystem;Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry;)Ljava/nio/file/PathMatcher; method_52250 a method_52250 + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52251 a method_52251 + m (Ljava/nio/file/Path;)Z method_52252 a method_52252 + m (Ljava/util/List;Ljava/nio/file/Path;)Z method_52253 a method_52253 + m (Ljava/nio/file/Path;)Z method_52254 b method_52254 + m (Ljava/util/List;)V + p 1 entries + m ()V +c net/minecraft/world/level/validation/PathAllowList$ConfigEntry ewu$a net/minecraft/class_8582$class_8583 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; type a comp_1549 + f Ljava/lang/String; pattern b comp_1550 + m ()Lnet/minecraft/world/level/validation/PathAllowList$EntryType; type a comp_1549 + m (Ljava/lang/String;)Ljava/util/Optional; parse a method_52255 + p 0 string + m (Ljava/nio/file/FileSystem;)Ljava/nio/file/PathMatcher; compile a method_52256 + p 1 fileSystem + m ()Ljava/lang/String; pattern b comp_1550 + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; glob b method_52257 + p 0 glob + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; regex c method_52258 + p 0 regex + m (Ljava/lang/String;)Lnet/minecraft/world/level/validation/PathAllowList$ConfigEntry; prefix d method_52259 + p 0 prefix + m (Lnet/minecraft/world/level/validation/PathAllowList$EntryType;Ljava/lang/String;)V +c net/minecraft/world/level/validation/PathAllowList$EntryType ewu$b net/minecraft/class_8582$class_8584 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; FILESYSTEM a field_44962 + f Lnet/minecraft/world/level/validation/PathAllowList$EntryType; PREFIX b field_44963 + m (Ljava/lang/String;Ljava/nio/file/Path;)Z method_52260 a method_52260 + m (Ljava/nio/file/FileSystem;Ljava/lang/String;)Ljava/nio/file/PathMatcher; method_52261 a method_52261 + m ()V +c net/minecraft/world/level/validation/package-info ewv net/minecraft/class_8585 +c net/minecraft/world/package-info eww net/minecraft/class_6172 +c net/minecraft/world/phys/AABB ewx net/minecraft/class_238 + f D minX a field_1323 + f D minY b field_1322 + f D minZ c field_1321 + f D maxX d field_1320 + f D maxY e field_1325 + f D maxZ f field_1324 + f D EPSILON g field_31879 + m ()D getSize a method_995 + c Returns the average length of the edges of the bounding box. + m (D)Lnet/minecraft/world/phys/AABB; setMinX a method_35574 + p 1 minX + m (DDD)Lnet/minecraft/world/phys/AABB; contract a method_1002 + c Creates a new {@link AxisAlignedBB} that has been contracted by the given amount, with positive changes decreasing max values and negative changes increasing min values.\n
\nIf the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see last sample).\n\n

Samples:

\n\n\n\n\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 4, 4, 4).contract(2, 2, 2)
box[0.0, 0.0, 0.0 -> 2.0, 2.0, 2.0]
new AxisAlignedBB(0, 0, 0, 4, 4, 4).contract(-2, -2, -2)
box[2.0, 2.0, 2.0 -> 4.0, 4.0, 4.0]
new AxisAlignedBB(5, 5, 5, 7, 7, 7).contract(0, 1, -1)
box[5.0, 5.0, 6.0 -> 7.0, 6.0, 7.0]
new AxisAlignedBB(-2, -2, -2, 2, 2, 2).contract(4, -4, 0)
box[-8.0, 2.0, -2.0 -> -2.0, 8.0, 2.0]
\n\n

See Also:

\n
    \n
  • {@link #expand(double, double, double)} - like this, except for expanding.
  • \n
  • {@link #grow(double, double, double)} and {@link #grow(double)} - expands in all directions.
  • \n
  • {@link #shrink(double)} - contracts in all directions (like {@link #grow(double)})
  • \n
\n\n@return A new modified bounding box. + p 1 x + p 3 y + p 5 z + m (DDDDDD)Z intersects a method_1003 + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)Lnet/minecraft/world/phys/AABB; of a method_19316 + p 0 mutableBox + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; intersect a method_999 + p 1 other + m (Lnet/minecraft/world/phys/AABB;Lnet/minecraft/world/phys/Vec3;[DLnet/minecraft/core/Direction;DDD)Lnet/minecraft/core/Direction; getDirection a method_1007 + p 0 aabb + p 1 start + p 2 minDistance + p 3 facing + p 4 deltaX + p 6 deltaY + p 8 deltaZ + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; unitCubeFromLowerCorner a method_29968 + p 0 vector + m (Lnet/minecraft/world/phys/Vec3;DDD)Lnet/minecraft/world/phys/AABB; ofSize a method_30048 + p 0 center + p 1 xSize + p 3 ySize + p 5 zSize + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z intersects a method_993 + p 1 min + p 2 max + m (Ljava/lang/Iterable;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_1010 + p 0 boxes + p 1 start + p 2 end + p 3 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; move a method_996 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/AABB; encapsulatingFullBlocks a method_54784 + p 0 startPos + p 1 endPos + m (Lnet/minecraft/core/Direction$Axis;)D min a method_1001 + p 1 axis + m (Lorg/joml/Vector3f;)Lnet/minecraft/world/phys/AABB; move a method_60314 + p 1 vec + m ([DLnet/minecraft/core/Direction;DDDDDDDDLnet/minecraft/core/Direction;DDD)Lnet/minecraft/core/Direction; clipPoint a method_998 + p 0 minDistance + p 1 prevDirection + p 2 distanceSide + p 4 distanceOtherA + p 6 distanceOtherB + p 8 minSide + p 10 minOtherA + p 12 maxOtherA + p 14 minOtherB + p 16 maxOtherB + p 18 hitSide + p 19 startSide + p 21 startOtherA + p 23 startOtherB + m ()D getXsize b method_17939 + m (D)Lnet/minecraft/world/phys/AABB; setMinY b method_35575 + p 1 minY + m (DDD)Lnet/minecraft/world/phys/AABB; expandTowards b method_1012 + c Creates a new {@link AxisAlignedBB} that has been expanded by the given amount, with positive changes increasing max values and negative changes decreasing min values.\n\n

Samples:

\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 1, 1, 1).expand(2, 2, 2)
box[0, 0, 0 -> 3, 3, 3]
\n
new AxisAlignedBB(0, 0, 0, 1, 1, 1).expand(-2, -2, -2)
box[-2, -2, -2 -> 1, 1, 1]
\n
new AxisAlignedBB(5, 5, 5, 7, 7, 7).expand(0, 1, -1)
box[5, 5, 4, 7, 8, 7]
\n
\n\n

See Also:

\n
    \n
  • {@link #contract(double, double, double)} - like this, except for shrinking.
  • \n
  • {@link #grow(double, double, double)} and {@link #grow(double)} - expands in all directions.
  • \n
  • {@link #shrink(double)} - contracts in all directions (like {@link #grow(double)})
  • \n
\n\n@return A modified bounding box that will always be equal or greater in volume to this bounding box. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/AABB; minmax b method_991 + p 1 other + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; expandTowards b method_18804 + p 1 vector + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; clip b method_992 + p 1 from + p 2 to + m (Lnet/minecraft/core/Direction$Axis;)D max b method_990 + p 1 axis + m ()D getYsize c method_17940 + m (D)Lnet/minecraft/world/phys/AABB; setMinZ c method_35576 + p 1 minZ + m (DDD)Lnet/minecraft/world/phys/AABB; inflate c method_1009 + c Creates a new {@link AxisAlignedBB} that has been contracted by the given amount in both directions. Negative values will shrink the AABB instead of expanding it.\n
\nSide lengths will be increased by 2 times the value of the parameters, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see last ample).\n\n

Samples:

\n\n\n\n\n\n\n
InputResult
new AxisAlignedBB(0, 0, 0, 1, 1, 1).grow(2, 2, 2)
box[-2.0, -2.0, -2.0 -> 3.0, 3.0, 3.0]
new AxisAlignedBB(0, 0, 0, 6, 6, 6).grow(-2, -2, -2)
box[2.0, 2.0, 2.0 -> 4.0, 4.0, 4.0]
new AxisAlignedBB(5, 5, 5, 7, 7, 7).grow(0, 1, -1)
box[5.0, 4.0, 6.0 -> 7.0, 8.0, 6.0]
new AxisAlignedBB(1, 1, 1, 3, 3, 3).grow(-4, -2, -3)
box[-1.0, 1.0, 0.0 -> 5.0, 3.0, 4.0]
\n\n

See Also:

\n
    \n
  • {@link #expand(double, double, double)} - expands in only one direction.
  • \n
  • {@link #contract(double, double, double)} - contracts in only one direction.
  • \n{@link #grow(double)} - version of this that expands in all directions from one parameter.\n
  • {@link #shrink(double)} - contracts in all directions
  • \n
\n\n@return A modified bounding box. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/AABB;)Z intersects c method_994 + c Checks if the bounding box intersects with another. + p 1 other + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/AABB; move c method_997 + p 1 vec + m ()D getZsize d method_17941 + m (D)Lnet/minecraft/world/phys/AABB; setMaxX d method_35577 + p 1 maxX + m (DDD)Lnet/minecraft/world/phys/AABB; move d method_989 + c Offsets the current bounding box by the specified amount. + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)Z contains d method_1006 + c Returns if the supplied Vec3D is completely inside the bounding box + p 1 vec + m ()Z hasNaN e method_1013 + m (D)Lnet/minecraft/world/phys/AABB; setMaxY e method_35578 + p 1 maxY + m (DDD)Z contains e method_1008 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr e method_49271 + p 1 vec + m ()Lnet/minecraft/world/phys/Vec3; getCenter f method_1005 + m (D)Lnet/minecraft/world/phys/AABB; setMaxZ f method_35579 + p 1 maxZ + m (DDD)Lnet/minecraft/world/phys/AABB; deflate f method_35580 + p 1 x + p 3 y + p 5 z + m ()Lnet/minecraft/world/phys/Vec3; getBottomCenter g method_61124 + m (D)Lnet/minecraft/world/phys/AABB; inflate g method_1014 + c Creates a new {@link AxisAlignedBB} that is expanded by the given value in all directions. Equivalent to {@link #grow(double, double, double)} with the given value for all 3 params. Negative values will shrink the AABB.\n
\nSide lengths will be increased by 2 times the value of the parameter, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see samples on {@link #grow(double, double, double)}).\n\n@return A modified AABB. + p 1 value + m ()Lnet/minecraft/world/phys/Vec3; getMinPosition h method_61125 + m (D)Lnet/minecraft/world/phys/AABB; deflate h method_1011 + c Creates a new {@link AxisAlignedBB} that is expanded by the given value in all directions. Equivalent to {@link #grow(double)} with value set to the negative of the value provided here. Passing a negative value to this method values will grow the AABB.\n
\nSide lengths will be decreased by 2 times the value of the parameter, since both min and max are changed.\n
\nIf contracting and the amount to contract by is larger than the length of a side, then the side will wrap (still creating a valid AABB - see samples on {@link #grow(double, double, double)}).\n\n@return A modified AABB. + p 1 value + m ()Lnet/minecraft/world/phys/Vec3; getMaxPosition i method_61126 + m (DDDDDD)V + p 1 x1 + p 3 y1 + p 5 z1 + p 7 x2 + p 9 y2 + p 11 z2 + m (Lnet/minecraft/core/BlockPos;)V + p 1 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + p 1 start + p 2 end +c net/minecraft/world/phys/BlockHitResult ewy net/minecraft/class_3965 + f Lnet/minecraft/core/Direction; direction b field_17588 + f Lnet/minecraft/core/BlockPos; blockPos c field_17589 + f Z miss d field_17590 + f Z inside e field_17591 + m ()Lnet/minecraft/core/BlockPos; getBlockPos a method_17777 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; miss a method_17778 + c Creates a new BlockRayTraceResult marked as a miss. + p 0 location + p 1 direction + p 2 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; withPosition a method_29328 + p 1 pos + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/BlockHitResult; withDirection a method_17779 + c Creates a new BlockRayTraceResult, with the clicked face replaced with the given one + p 1 newFace + m ()Lnet/minecraft/core/Direction; getDirection b method_17780 + c Gets the face of the block that was clicked + m ()Z isInside d method_17781 + c @return {@code true} if the player's head is inside a block (used by scaffolding) + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Z)V + p 1 location + p 2 direction + p 3 blockPos + p 4 inside + m (ZLnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/Direction;Lnet/minecraft/core/BlockPos;Z)V + p 1 miss + p 2 location + p 3 direction + p 4 blockPos + p 5 inside +c net/minecraft/world/phys/EntityHitResult ewz net/minecraft/class_3966 + f Lnet/minecraft/world/entity/Entity; entity b field_17592 + m ()Lnet/minecraft/world/entity/Entity; getEntity a method_17782 + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 entity + p 2 location +c net/minecraft/world/phys/HitResult exa net/minecraft/class_239 + f Lnet/minecraft/world/phys/Vec3; location a field_1329 + m (Lnet/minecraft/world/entity/Entity;)D distanceTo a method_24801 + p 1 entity + m ()Lnet/minecraft/world/phys/HitResult$Type; getType c method_17783 + m ()Lnet/minecraft/world/phys/Vec3; getLocation e method_17784 + c Returns the hit position of the raycast, in absolute world coordinates + m (Lnet/minecraft/world/phys/Vec3;)V + p 1 location +c net/minecraft/world/phys/HitResult$Type exa$a net/minecraft/class_239$class_240 + f Lnet/minecraft/world/phys/HitResult$Type; MISS a field_1333 + f Lnet/minecraft/world/phys/HitResult$Type; BLOCK b field_1332 + f Lnet/minecraft/world/phys/HitResult$Type; ENTITY c field_1331 + f [Lnet/minecraft/world/phys/HitResult$Type; $VALUES d field_1334 + m ()[Lnet/minecraft/world/phys/HitResult$Type; $values a method_36796 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/world/phys/Vec2 exb net/minecraft/class_241 + f Lnet/minecraft/world/phys/Vec2; ZERO a field_1340 + f Lnet/minecraft/world/phys/Vec2; ONE b field_1335 + f Lnet/minecraft/world/phys/Vec2; UNIT_X c field_1341 + f Lnet/minecraft/world/phys/Vec2; NEG_UNIT_X d field_1338 + f Lnet/minecraft/world/phys/Vec2; UNIT_Y e field_1336 + f Lnet/minecraft/world/phys/Vec2; NEG_UNIT_Y f field_1344 + f Lnet/minecraft/world/phys/Vec2; MAX g field_1337 + f Lnet/minecraft/world/phys/Vec2; MIN h field_1339 + f F x i field_1343 + f F y j field_1342 + m ()Lnet/minecraft/world/phys/Vec2; normalized a method_35581 + m (F)Lnet/minecraft/world/phys/Vec2; scale a method_35582 + p 1 factor + m (Lnet/minecraft/world/phys/Vec2;)F dot a method_35583 + p 1 other + m ()F length b method_35584 + m (F)Lnet/minecraft/world/phys/Vec2; add b method_35585 + p 1 value + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/world/phys/Vec2; add b method_35586 + p 1 other + m ()F lengthSquared c method_35587 + m (Lnet/minecraft/world/phys/Vec2;)Z equals c method_1016 + p 1 other + m ()Lnet/minecraft/world/phys/Vec2; negated d method_35588 + m (Lnet/minecraft/world/phys/Vec2;)F distanceToSqr d method_35589 + p 1 other + m (FF)V + p 1 x + p 2 y + m ()V +c net/minecraft/world/phys/Vec3 exc net/minecraft/class_243 + f Lcom/mojang/serialization/Codec; CODEC a field_38277 + f Lnet/minecraft/world/phys/Vec3; ZERO b field_1353 + f D x c field_1352 + f D y d field_1351 + f D z e field_1350 + m (D)Lnet/minecraft/world/phys/Vec3; scale a method_1021 + p 1 factor + m (DDD)Lnet/minecraft/world/phys/Vec3; subtract a method_1023 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; xRot a method_1037 + p 1 pitch + m (FF)Lnet/minecraft/world/phys/Vec3; directionFromRotation a method_1030 + c Returns a {@link net.minecraft.world.phys.Vec3} from the given pitch and yaw degrees. + p 0 pitch + p 1 yaw + m (I)Lnet/minecraft/world/phys/Vec3; fromRGB24 a method_24457 + p 0 packed + m (Lnet/minecraft/util/RandomSource;F)Lnet/minecraft/world/phys/Vec3; offsetRandom a method_49272 + p 1 random + p 2 factor + m (Lnet/minecraft/world/phys/Vec2;)Lnet/minecraft/world/phys/Vec3; directionFromRotation a method_1034 + c Returns a {@link net.minecraft.world.phys.Vec3} from the given pitch and yaw degrees as {@link net.minecraft.world.phys.Vec2}. + p 0 vec + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; vectorTo a method_1035 + c Returns a new vector with the result of the specified vector minus this. + p 1 vec + m (Lnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/Vec3; lerp a method_35590 + c Lerps between this vector and the given vector.\n@see net.minecraft.util.Mth#lerp(double, double, double) + p 1 to + p 2 delta + m (Lnet/minecraft/world/phys/Vec3;DD)Z closerThan a method_55230 + p 1 pos + p 2 horizontalDistance + p 4 verticalDistance + m (Ljava/util/EnumSet;)Lnet/minecraft/world/phys/Vec3; align a method_1032 + p 1 axes + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_42394 a method_42394 + m (Lnet/minecraft/core/Direction$Axis;)D get a method_18043 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;D)Lnet/minecraft/world/phys/Vec3; with a method_38499 + p 1 axis + p 2 length + m (Lnet/minecraft/core/Direction;D)Lnet/minecraft/world/phys/Vec3; relative a method_43206 + p 1 direction + p 2 length + m (Lnet/minecraft/core/Position;D)Z closerThan a method_24802 + c Checks if a position is within a certain distance of the coordinates. + p 1 pos + p 2 distance + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atLowerCornerOf a method_24954 + c Copies the coordinates of an int vector exactly. + p 0 toCopy + m (Lnet/minecraft/core/Vec3i;D)Lnet/minecraft/world/phys/Vec3; upFromBottomCenterOf a method_26410 + c Copies the coordinates of an int vector and centers them horizontally and applies a vertical offset. + p 0 toCopy + p 1 verticalOffset + m (Lnet/minecraft/core/Vec3i;DDD)Lnet/minecraft/world/phys/Vec3; atLowerCornerWithOffset a method_49273 + p 0 toCopy + p 1 offsetX + p 3 offsetY + p 5 offsetZ + m (DDD)Lnet/minecraft/world/phys/Vec3; add b method_1031 + c Adds the specified x,y,z vector components to this vector and returns the resulting vector. Does not change this vector. + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; yRot b method_1024 + p 1 yaw + m (Lnet/minecraft/world/phys/Vec3;)D dot b method_1026 + p 1 vec + m (Ljava/util/List;)Lnet/minecraft/world/phys/Vec3; method_42395 b method_42395 + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atCenterOf b method_24953 + c Copies the coordinates of an Int vector and centers them. + p 0 toCopy + m (DDD)D distanceToSqr c method_1028 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/world/phys/Vec3; zRot c method_31033 + p 1 roll + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; cross c method_1036 + c Returns a new vector with the result of this vector x the specified vector. + p 1 vec + m (Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3; atBottomCenterOf c method_24955 + c Copies the coordinates of an int vector and centers them horizontally (x and z) + p 0 toCopy + m ()Lnet/minecraft/world/phys/Vec3; normalize d method_1029 + c Normalizes the vector to a length of 1 (except if it is the zero vector) + m (DDD)Lnet/minecraft/world/phys/Vec3; multiply d method_18805 + p 1 factorX + p 3 factorY + p 5 factorZ + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; subtract d method_1020 + p 1 vec + m ()Lnet/minecraft/world/phys/Vec3; reverse e method_22882 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; add e method_1019 + p 1 vec + m ()D length f method_1033 + c Returns the length of the vector. + m (Lnet/minecraft/world/phys/Vec3;)D distanceTo f method_1022 + c Euclidean distance between this and the specified vector, returned as double. + p 1 vec + m ()D lengthSqr g method_1027 + m (Lnet/minecraft/world/phys/Vec3;)D distanceToSqr g method_1025 + c The square of the Euclidean distance between this and the specified vector. + p 1 vec + m ()D horizontalDistance h method_37267 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3; multiply h method_18806 + p 1 vec + m ()D horizontalDistanceSqr i method_37268 + m (Lnet/minecraft/world/phys/Vec3;)Ljava/util/List; method_42396 i method_42396 + m ()Lorg/joml/Vector3f; toVector3f j method_46409 + m (DDD)V + p 1 x + p 3 y + p 5 z + m (Lorg/joml/Vector3f;)V + p 1 vector + m ()V +c net/minecraft/world/phys/package-info exd net/minecraft/class_6173 +c net/minecraft/world/phys/shapes/ArrayVoxelShape exe net/minecraft/class_245 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; xs b field_1361 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; ys c field_1362 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; zs d field_1363 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;[D[D[D)V + p 1 shape + p 2 xs + p 3 ys + p 4 zs + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 shape + p 2 xs + p 3 ys + p 4 zs +c net/minecraft/world/phys/shapes/ArrayVoxelShape$1 exe$1 net/minecraft/class_245$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_1364 + m ()V +c net/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape exf net/minecraft/class_244 + f Ljava/util/BitSet; storage d field_1359 + f I xMin e field_1358 + f I yMin f field_1357 + f I zMin g field_1356 + f I xMax h field_1355 + f I yMax i field_1354 + f I zMax j field_1360 + m (III)I getIndex a method_1039 + p 1 x + p 2 y + p 3 z + m (IIII)Z isZStripFull a method_1059 + p 1 zMin + p 2 zMax + p 3 x + p 4 y + m (IIIII)Z isXZRectangleFull a method_31938 + p 1 xMin + p 2 xMax + p 3 zMin + p 4 zMax + p 5 y + m (IIIIIIIII)Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape; withFilledBounds a method_31939 + p 0 x + p 1 y + p 2 z + p 3 xMin + p 4 yMin + p 5 zMin + p 6 xMax + p 7 yMax + p 8 zMax + m (IIIZ)V fillUpdateBounds a method_31940 + p 1 x + p 2 y + p 3 z + p 4 update + m (Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;II[I[ZIII)Z method_1038 a method_1038 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllBoxes a method_31941 + p 0 shape + p 1 consumer + p 2 combine + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape; join a method_1040 + p 0 mainShape + p 1 secondaryShape + p 2 mergerX + p 3 mergerY + p 4 mergerZ + p 5 operator + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;I[I[ZIII)Z method_1042 a method_1042 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/BitSetDiscreteVoxelShape;[IIII)Z method_1041 a method_1041 + m (IIII)V clearZStrip b method_31942 + p 1 zMin + p 2 zMax + p 3 x + p 4 y + m (III)Z isInterior d method_58225 + p 1 x + p 2 y + p 3 z + m (III)V + p 1 xSize + p 2 ySize + p 3 zSize + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/BooleanOp exg net/minecraft/class_247 + f Lnet/minecraft/world/phys/shapes/BooleanOp; FALSE a field_16897 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_OR b field_16885 + f Lnet/minecraft/world/phys/shapes/BooleanOp; ONLY_SECOND c field_16893 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_FIRST d field_16894 + f Lnet/minecraft/world/phys/shapes/BooleanOp; ONLY_FIRST e field_16886 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_SECOND f field_16898 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_SAME g field_16892 + f Lnet/minecraft/world/phys/shapes/BooleanOp; NOT_AND h field_16888 + f Lnet/minecraft/world/phys/shapes/BooleanOp; AND i field_16896 + f Lnet/minecraft/world/phys/shapes/BooleanOp; SAME j field_16890 + f Lnet/minecraft/world/phys/shapes/BooleanOp; SECOND k field_16887 + f Lnet/minecraft/world/phys/shapes/BooleanOp; CAUSES l field_16889 + f Lnet/minecraft/world/phys/shapes/BooleanOp; FIRST m field_16891 + f Lnet/minecraft/world/phys/shapes/BooleanOp; CAUSED_BY n field_16899 + f Lnet/minecraft/world/phys/shapes/BooleanOp; OR o field_1366 + f Lnet/minecraft/world/phys/shapes/BooleanOp; TRUE p field_16895 + m (ZZ)Z method_16795 a method_16795 + m (ZZ)Z method_16785 b method_16785 + m (ZZ)Z method_16794 c method_16794 + m (ZZ)Z method_16790 d method_16790 + m (ZZ)Z method_16781 e method_16781 + m (ZZ)Z method_16796 f method_16796 + m (ZZ)Z method_16788 g method_16788 + m (ZZ)Z method_16782 h method_16782 + m (ZZ)Z method_16792 i method_16792 + m (ZZ)Z method_16786 j method_16786 + m (ZZ)Z method_16793 k method_16793 + m (ZZ)Z method_16783 l method_16783 + m (ZZ)Z method_16787 m method_16787 + m (ZZ)Z method_16791 n method_16791 + m (ZZ)Z method_16784 o method_16784 + m (ZZ)Z method_16789 p method_16789 + m ()V +c net/minecraft/world/phys/shapes/CollisionContext exh net/minecraft/class_3726 + m ()Lnet/minecraft/world/phys/shapes/CollisionContext; empty a method_16194 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/shapes/CollisionContext; of a method_16195 + p 0 entity + m (Lnet/minecraft/world/item/Item;)Z isHoldingItem a method_17785 + p 1 item + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)Z canStandOnFluid a method_27866 + p 1 fluid1 + p 2 fluid2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/BlockPos;Z)Z isAbove a method_16192 + p 1 shape + p 2 pos + p 3 canAscend + m ()Z isDescending b method_16193 +c net/minecraft/world/phys/shapes/CubePointRange exi net/minecraft/class_246 + f I parts a field_1365 + m (I)V + p 1 parts +c net/minecraft/world/phys/shapes/CubeVoxelShape exj net/minecraft/class_249 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/DiscreteCubeMerger exk net/minecraft/class_248 + f Lnet/minecraft/world/phys/shapes/CubePointRange; result a field_1367 + f I firstDiv b field_1370 + f I secondDiv c field_1368 + m (II)V + p 1 aa + p 2 bb +c net/minecraft/world/phys/shapes/DiscreteVoxelShape exl net/minecraft/class_251 + f I xSize a field_1374 + f I ySize b field_1373 + f I zSize c field_1372 + f [Lnet/minecraft/core/Direction$Axis; AXIS_VALUES d field_1375 + m ()Z isEmpty a method_1056 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer;)V forAllFaces a method_1046 + p 1 faceConsumer + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer;Lnet/minecraft/core/AxisCycle;)V forAllAxisFaces a method_1061 + p 1 faceConsumer + p 2 axisRotation + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Lnet/minecraft/core/AxisCycle;Z)V forAllAxisEdges a method_1052 + p 1 lineConsumer + p 2 axis + p 3 combine + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllEdges a method_1064 + p 1 consumer + p 2 combine + m (Lnet/minecraft/core/AxisCycle;III)Z isFullWide a method_1062 + p 1 axis + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;)I firstFull a method_1055 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;II)I firstFull a method_35592 + p 1 axis + p 2 y + p 3 z + m ()I getXSize b method_1050 + m (III)Z isFull b method_1063 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer;Z)V forAllBoxes b method_1053 + p 1 consumer + p 2 combine + m (Lnet/minecraft/core/AxisCycle;III)Z isFull b method_1057 + p 1 rotation + p 2 x + p 3 y + p 4 z + m (Lnet/minecraft/core/Direction$Axis;)I lastFull b method_1045 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;II)I lastFull b method_1058 + c Gives the index of the last filled part in the column. + p 1 axis + p 2 y + p 3 z + m ()I getYSize c method_1047 + m (III)V fill c method_1049 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/core/Direction$Axis;)I getSize c method_1051 + p 1 axis + m ()I getZSize d method_1048 + m (III)Z isFullWide e method_1044 + p 1 x + p 2 y + p 3 z + m (III)V + p 1 xSize + p 2 ySize + p 3 zSize + m ()V +c net/minecraft/world/phys/shapes/DiscreteVoxelShape$IntFaceConsumer exl$a net/minecraft/class_251$class_252 +c net/minecraft/world/phys/shapes/DiscreteVoxelShape$IntLineConsumer exl$b net/minecraft/class_251$class_253 +c net/minecraft/world/phys/shapes/EntityCollisionContext exm net/minecraft/class_3727 + f Lnet/minecraft/world/phys/shapes/CollisionContext; EMPTY a field_17593 + f Z descending b field_16451 + f D entityBottom c field_16450 + f Lnet/minecraft/world/item/ItemStack; heldItem d field_17594 + f Ljava/util/function/Predicate; canStandOnFluid e field_24425 + f Lnet/minecraft/world/entity/Entity; entity f field_27935 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_27867 a method_27867 + m (Lnet/minecraft/world/level/material/FluidState;)Z method_27868 b method_27868 + m ()Lnet/minecraft/world/entity/Entity; getEntity c method_32480 + m (ZDLnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)V + p 1 descending + p 2 entityBottom + p 4 heldItem + p 5 canStandOnFluid + p 6 entity + m (Lnet/minecraft/world/entity/Entity;)V + p 1 entity + m ()V +c net/minecraft/world/phys/shapes/EntityCollisionContext$1 exm$1 net/minecraft/class_3727$1 + m (ZDLnet/minecraft/world/item/ItemStack;Ljava/util/function/Predicate;Lnet/minecraft/world/entity/Entity;)V +c net/minecraft/world/phys/shapes/IdenticalMerger exn net/minecraft/class_250 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; coords a field_1371 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;)V + p 1 coords +c net/minecraft/world/phys/shapes/IndexMerger exo net/minecraft/class_255 + m ()Lit/unimi/dsi/fastutil/doubles/DoubleList; getList a method_1066 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;)Z forMergedIndexes a method_1065 + p 1 consumer +c net/minecraft/world/phys/shapes/IndexMerger$IndexConsumer exo$a net/minecraft/class_255$class_256 +c net/minecraft/world/phys/shapes/IndirectMerger exp net/minecraft/class_254 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; EMPTY a field_27346 + f [D result b field_1377 + f [I firstIndices c field_1376 + f [I secondIndices d field_1378 + f I resultLength e field_27347 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)V + p 1 lower + p 2 upper + p 3 excludeUpper + p 4 excludeLower + m ()V +c net/minecraft/world/phys/shapes/NonOverlappingMerger exq net/minecraft/class_257 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; lower a field_1381 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; upper b field_1379 + f Z swap c field_1380 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;III)Z method_1068 a method_1068 + m (Lnet/minecraft/world/phys/shapes/IndexMerger$IndexConsumer;)Z forNonSwappedIndexes b method_1067 + p 1 consumer + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Z)V + p 1 lower + p 2 upper + p 3 swap +c net/minecraft/world/phys/shapes/OffsetDoubleList exr net/minecraft/class_261 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; delegate a field_1387 + f D offset b field_1386 + m (Lit/unimi/dsi/fastutil/doubles/DoubleList;D)V + p 1 delegate + p 2 offset +c net/minecraft/world/phys/shapes/Shapes exs net/minecraft/class_259 + f D EPSILON a field_31880 + f D BIG_EPSILON b field_31881 + f Lnet/minecraft/world/phys/shapes/VoxelShape; INFINITY c field_17669 + f Lnet/minecraft/world/phys/shapes/VoxelShape; BLOCK d field_1385 + f Lnet/minecraft/world/phys/shapes/VoxelShape; EMPTY e field_1384 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; empty a method_1073 + m (DD)I findBits a method_1086 + p 0 minBits + p 2 maxBits + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; box a method_1081 + p 0 minX + p 2 minY + p 4 minZ + p 6 maxX + p 8 maxY + p 10 maxZ + m (II)J lcm a method_1079 + p 0 aa + p 1 bb + m (ILit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;ZZ)Lnet/minecraft/world/phys/shapes/IndexMerger; createIndexMerger a method_1069 + p 0 size + p 1 list1 + p 2 list2 + p 3 excludeUpper + p 4 excludeLower + m (Lnet/minecraft/world/phys/AABB;)Lnet/minecraft/world/phys/shapes/VoxelShape; create a method_1078 + p 0 aabb + m (Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIIII)Z method_1070 a method_1070 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;ILnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIII)Z method_1076 a method_1076 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/BooleanOp;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;III)Z method_1075 a method_1075 + m (Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/IndexMerger;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Z joinIsNotEmpty a method_1071 + p 0 mergerX + p 1 mergerY + p 2 mergerZ + p 3 primaryShape + p 4 secondaryShape + p 5 resultOperator + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; or a method_1084 + p 0 shape1 + p 1 shape2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/VoxelShape; join a method_1072 + p 0 shape1 + p 1 shape2 + p 2 function + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z blockOccudes a method_1083 + p 0 shape + p 1 adjacentShape + p 2 side + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceShape a method_16344 + p 0 voxelShape + p 1 direction + m (Lnet/minecraft/world/phys/shapes/VoxelShape;[Lnet/minecraft/world/phys/shapes/VoxelShape;)Lnet/minecraft/world/phys/shapes/VoxelShape; or a method_17786 + p 0 shape1 + p 1 others + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/AABB;Ljava/lang/Iterable;D)D collide a method_1085 + p 0 movementAxis + p 1 collisionBox + p 2 possibleHits + p 3 desiredOffset + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; block b method_1077 + m (DDDDDD)Lnet/minecraft/world/phys/shapes/VoxelShape; create b method_31943 + p 0 minX + p 2 minY + p 4 minZ + p 6 maxX + p 8 maxY + p 10 maxZ + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;)Z faceShapeOccludes b method_20713 + p 0 voxelShape1 + p 1 voxelShape2 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Lnet/minecraft/world/phys/shapes/VoxelShape; joinUnoptimized b method_1082 + p 0 shape1 + p 1 shape2 + p 2 function + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction;)Z mergedFaceOccludes b method_1080 + p 0 shape + p 1 adjacentShape + p 2 side + m ()Lnet/minecraft/world/phys/shapes/CubeVoxelShape; method_1087 c method_1087 + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/world/phys/shapes/BooleanOp;)Z joinIsNotEmpty c method_1074 + p 0 shape1 + p 1 shape2 + p 2 resultOperator + m ()V + m ()V +c net/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer exs$a net/minecraft/class_259$class_260 +c net/minecraft/world/phys/shapes/SliceShape ext net/minecraft/class_263 + f Lnet/minecraft/world/phys/shapes/VoxelShape; delegate b field_1397 + f Lnet/minecraft/core/Direction$Axis; axis c field_1396 + f Lit/unimi/dsi/fastutil/doubles/DoubleList; SLICE_COORDS d field_1395 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/Direction$Axis;I)Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; makeSlice a method_1088 + p 0 shape + p 1 axis + p 2 index + m (Lnet/minecraft/world/phys/shapes/VoxelShape;Lnet/minecraft/core/Direction$Axis;I)V + p 1 delegate + p 2 axis + p 3 index + m ()V +c net/minecraft/world/phys/shapes/SubShape exu net/minecraft/class_262 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; parent d field_1393 + f I startX e field_1392 + f I startY f field_1391 + f I startZ g field_1390 + f I endX h field_1389 + f I endY i field_1388 + f I endZ j field_1394 + m (Lnet/minecraft/core/Direction$Axis;I)I clampToShape a method_31944 + p 1 axis + p 2 value + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;IIIIII)V + p 1 parent + p 2 startX + p 3 startY + p 4 startZ + p 5 endX + p 6 endY + p 7 endZ +c net/minecraft/world/phys/shapes/VoxelShape exv net/minecraft/class_265 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; shape a field_1401 + f [Lnet/minecraft/world/phys/shapes/VoxelShape; faces b field_19318 + m ()Lnet/minecraft/world/phys/AABB; bounds a method_1107 + m (DDD)Lnet/minecraft/world/phys/shapes/VoxelShape; move a method_1096 + p 1 xOffset + p 3 yOffset + p 5 zOffset + m (DLnet/minecraft/core/Direction$Axis;I)Z method_1101 a method_1101 + m (Lnet/minecraft/world/phys/Vec3;)Ljava/util/Optional; closestPointTo a method_33661 + p 1 point + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult; clip a method_1092 + p 1 startVec + p 2 endVec + p 3 pos + m (Lnet/minecraft/world/phys/Vec3;[Lnet/minecraft/world/phys/Vec3;DDDDDD)V method_33662 a method_33662 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;)V forAllEdges a method_1104 + p 1 action + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;IIIIII)V method_1106 a method_1106 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;Lit/unimi/dsi/fastutil/doubles/DoubleList;IIIIII)V method_1112 a method_1112 + m (Lnet/minecraft/core/AxisCycle;Lnet/minecraft/world/phys/AABB;D)D collideX a method_1103 + p 1 movementAxis + p 2 collisionBox + p 3 desiredOffset + m (Ljava/util/List;DDDDDD)V method_1111 a method_1111 + m (Lnet/minecraft/core/Direction$Axis;)Lit/unimi/dsi/fastutil/doubles/DoubleList; getCoords a method_1109 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;D)I findIndex a method_1100 + p 1 axis + p 2 position + m (Lnet/minecraft/core/Direction$Axis;DD)D min a method_35593 + p 1 axis + p 2 primaryPosition + p 4 secondaryPosition + m (Lnet/minecraft/core/Direction$Axis;I)D get a method_1099 + p 1 axis + p 2 index + m (Lnet/minecraft/core/Direction$Axis;Lnet/minecraft/world/phys/AABB;D)D collide a method_1108 + p 1 movementAxis + p 2 collisionBox + p 3 desiredOffset + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; getFaceShape a method_20538 + c Projects this shape onto the given side. For each box in the shape, if it does not touch the given side, it is eliminated. Otherwise, the box is extended in the given axis to cover the entire range [0, 1]. + p 1 side + m ([Lnet/minecraft/world/phys/shapes/VoxelShape;DDDDDD)V method_1094 a method_1094 + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; singleEncompassing b method_52620 + m (Lnet/minecraft/world/phys/shapes/Shapes$DoubleLineConsumer;)V forAllBoxes b method_1089 + p 1 action + m (Lnet/minecraft/core/Direction$Axis;)D min b method_1091 + p 1 axis + m (Lnet/minecraft/core/Direction$Axis;DD)D max b method_1102 + p 1 axis + p 2 primaryPosition + p 4 secondaryPosition + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/world/phys/shapes/VoxelShape; calculateFace b method_1098 + p 1 side + m ()Z isEmpty c method_1110 + m (Lnet/minecraft/core/Direction$Axis;)D max c method_1105 + p 1 axis + m ()Lnet/minecraft/world/phys/shapes/VoxelShape; optimize d method_1097 + m ()Ljava/util/List; toAabbs e method_1090 + m (Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;)V + p 1 shape +c net/minecraft/world/phys/shapes/package-info exw net/minecraft/class_6174 +c net/minecraft/world/scores/DisplaySlot exx net/minecraft/class_8646 + f Lnet/minecraft/world/scores/DisplaySlot; LIST a field_45156 + f Lnet/minecraft/world/scores/DisplaySlot; SIDEBAR b field_45157 + f Lnet/minecraft/world/scores/DisplaySlot; BELOW_NAME c field_45158 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_BLACK d field_45159 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_BLUE e field_45160 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_GREEN f field_45161 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_AQUA g field_45162 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_RED h field_45163 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_PURPLE i field_45164 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GOLD j field_45165 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GRAY k field_45166 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_DARK_GRAY l field_45167 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_BLUE m field_45168 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_GREEN n field_45169 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_AQUA o field_45170 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_RED p field_45171 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_LIGHT_PURPLE q field_45172 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_YELLOW r field_45173 + f Lnet/minecraft/world/scores/DisplaySlot; TEAM_WHITE s field_45174 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC t field_45175 + f Ljava/util/function/IntFunction; BY_ID u field_45176 + f I id v field_45177 + f Ljava/lang/String; name w field_45178 + f [Lnet/minecraft/world/scores/DisplaySlot; $VALUES x field_45179 + m ()I id a method_52621 + m (Lnet/minecraft/ChatFormatting;)Lnet/minecraft/world/scores/DisplaySlot; teamColorToSlot a method_52622 + p 0 formatting + m ()[Lnet/minecraft/world/scores/DisplaySlot; $values b method_52623 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/world/scores/DisplaySlot$1 exx$1 net/minecraft/class_8646$1 + f [I $SwitchMap$net$minecraft$ChatFormatting a field_45180 + m ()V +c net/minecraft/world/scores/Objective exy net/minecraft/class_266 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard a field_1404 + f Ljava/lang/String; name b field_1405 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; criteria c field_1406 + f Lnet/minecraft/network/chat/Component; displayName d field_1402 + f Lnet/minecraft/network/chat/Component; formattedDisplayName e field_24194 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType f field_1403 + f Z displayAutoUpdate g field_47527 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat h field_47528 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard a method_1117 + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)V setRenderType a method_1115 + p 1 renderType + m (Lnet/minecraft/network/chat/Component;)V setDisplayName a method_1121 + p 1 displayName + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_1119 a method_1119 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOrDefault a method_55380 + p 1 defaultValue + m (Z)V setDisplayAutoUpdate a method_55381 + p 1 displayAutoUpdate + m ()Ljava/lang/String; getName b method_1113 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V setNumberFormat b method_55382 + p 1 numberFormat + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; getCriteria c method_1116 + m ()Lnet/minecraft/network/chat/Component; getDisplayName d method_1114 + m ()Z displayAutoUpdate e method_55383 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat f method_55384 + m ()Lnet/minecraft/network/chat/Component; getFormattedDisplayName g method_1120 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getRenderType h method_1118 + m ()Lnet/minecraft/network/chat/Component; createFormattedDisplayName i method_27441 + m (Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;ZLnet/minecraft/network/chat/numbers/NumberFormat;)V + p 1 scoreboard + p 2 name + p 3 criteria + p 4 displayName + p 5 renderType + p 6 displayAutoUpdate + p 7 numberFormat +c net/minecraft/world/scores/PlayerScoreEntry exz net/minecraft/class_9011 + f Ljava/lang/String; owner a comp_2127 + f I value b comp_2128 + f Lnet/minecraft/network/chat/Component; display c comp_2129 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOverride d comp_2130 + m ()Z isHidden a method_55385 + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; formatValue a method_55386 + p 1 format + m ()Lnet/minecraft/network/chat/Component; ownerName b method_55387 + m ()Ljava/lang/String; owner c comp_2127 + m ()I value d comp_2128 + m ()Lnet/minecraft/network/chat/Component; display e comp_2129 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormatOverride f comp_2130 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/numbers/NumberFormat;)V +c net/minecraft/world/scores/PlayerScores eya net/minecraft/class_9012 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectOpenHashMap; scores a field_47529 + m ()Z hasScores a method_55388 + m (Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/Score; get a method_55389 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V setScore a method_55390 + p 1 objective + p 2 score + m (Lnet/minecraft/world/scores/Objective;Ljava/util/function/Consumer;)Lnet/minecraft/world/scores/Score; getOrCreate a method_55391 + p 1 objective + p 2 creator + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V method_55392 a method_55392 + m (Ljava/util/function/Consumer;Ljava/lang/Object;)Lnet/minecraft/world/scores/Score; method_55393 a method_55393 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; listScores b method_55394 + m (Lnet/minecraft/world/scores/Objective;)Z remove b method_55395 + p 1 objective + m ()Ljava/util/Map; listRawScores c method_55396 + m ()V +c net/minecraft/world/scores/PlayerTeam eyb net/minecraft/class_268 + f I BIT_FRIENDLY_FIRE a field_31884 + f I BIT_SEE_INVISIBLES b field_31885 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard c field_1420 + f Ljava/lang/String; name d field_1421 + f Ljava/util/Set; players e field_1415 + f Lnet/minecraft/network/chat/Component; displayName f field_1414 + f Lnet/minecraft/network/chat/Component; playerPrefix g field_1418 + f Lnet/minecraft/network/chat/Component; playerSuffix h field_1419 + f Z allowFriendlyFire i field_1417 + f Z seeFriendlyInvisibles j field_1416 + f Lnet/minecraft/world/scores/Team$Visibility; nameTagVisibility k field_1423 + f Lnet/minecraft/world/scores/Team$Visibility; deathMessageVisibility l field_1422 + f Lnet/minecraft/ChatFormatting; color m field_1424 + f Lnet/minecraft/world/scores/Team$CollisionRule; collisionRule n field_1425 + f Lnet/minecraft/network/chat/Style; displayNameStyle o field_24195 + m ()Lnet/minecraft/world/scores/Scoreboard; getScoreboard a method_35594 + m (I)V unpackOptions a method_1146 + c Sets friendly fire and invisibles flags based off of the given bitmask. + p 1 flags + m (Lnet/minecraft/world/scores/Team$CollisionRule;)V setCollisionRule a method_1145 + c Sets the rule to be used for handling collisions with members of this team. + p 1 rule + m (Lnet/minecraft/world/scores/Team$Visibility;)V setNameTagVisibility a method_1149 + c Sets the visibility flags for player name tags. + p 1 visibility + m (Lnet/minecraft/world/scores/Team;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; formatNameForTeam a method_1142 + p 0 playerTeam + p 1 playerName + m (Lnet/minecraft/ChatFormatting;)V setColor a method_1141 + c Sets the color for this team. The team color is used mainly for team kill objectives and team-specific setDisplay usage. It does _not_ affect all situations (for instance, the prefix is used for the glowing effect). + p 1 color + m (Lnet/minecraft/network/chat/Component;)V setDisplayName a method_1137 + c Sets the display name for this team. + p 1 name + m (Z)V setAllowFriendlyFire a method_1135 + c Sets whether friendly fire (PVP between members of the team) is allowed. + p 1 friendlyFire + m (Lnet/minecraft/world/scores/Team$Visibility;)V setDeathMessageVisibility b method_1133 + c Sets the visibility flags for player death messages. + p 1 visibility + m (Lnet/minecraft/network/chat/Component;)V setPlayerPrefix b method_1138 + p 1 playerPrefix + m (Z)V setSeeFriendlyInvisibles b method_1143 + c Sets whether members of this team can see other members that are invisible. + p 1 friendlyInvisibles + m ()Lnet/minecraft/network/chat/Component; getDisplayName c method_1140 + c Gets the display name for this team. + m (Lnet/minecraft/network/chat/Component;)V setPlayerSuffix c method_1139 + p 1 playerSuffix + m ()Lnet/minecraft/network/chat/MutableComponent; getFormattedDisplayName d method_1148 + m ()Lnet/minecraft/network/chat/Component; getPlayerPrefix e method_1144 + m ()Lnet/minecraft/network/chat/Component; getPlayerSuffix f method_1136 + m ()I packOptions m method_1147 + c Gets a bitmask containing the friendly fire and invisibles flags. + m (Lnet/minecraft/world/scores/Scoreboard;Ljava/lang/String;)V + p 1 scoreboard + p 2 name +c net/minecraft/world/scores/ReadOnlyScoreInfo eyc net/minecraft/class_9013 + m ()I value a method_55397 + m (Lnet/minecraft/world/scores/ReadOnlyScoreInfo;Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; safeFormatValue a method_55398 + p 0 scoreInfo + p 1 format + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/network/chat/MutableComponent; formatValue a method_55399 + p 1 format + m ()Z isLocked b method_1131 + m ()Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat c method_55400 +c net/minecraft/world/scores/Score eyd net/minecraft/class_267 + f Ljava/lang/String; TAG_SCORE a field_47530 + f Ljava/lang/String; TAG_LOCKED b field_47531 + f Ljava/lang/String; TAG_DISPLAY c field_47532 + f Ljava/lang/String; TAG_FORMAT d field_47533 + f I value e field_47534 + f Z locked f field_1411 + f Lnet/minecraft/network/chat/Component; display g field_47535 + f Lnet/minecraft/network/chat/numbers/NumberFormat; numberFormat h field_47536 + m (I)V value a method_55401 + p 1 value + m (Lnet/minecraft/world/scores/Score;Lnet/minecraft/network/chat/numbers/NumberFormat;)V method_55402 a method_55402 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/CompoundTag; write a method_55408 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/Score; read a method_55403 + p 0 tag + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55404 a method_55404 + m (Lnet/minecraft/network/chat/Component;)V display a method_55405 + p 1 display + m (Z)V setLocked a method_1125 + p 1 locked + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V numberFormat b method_55406 + p 1 numberFormat + m ()Lnet/minecraft/network/chat/Component; display d method_55407 + m ()V +c net/minecraft/world/scores/ScoreAccess eye net/minecraft/class_9014 + m ()I get a method_55409 + m (I)V set a method_55410 + p 1 value + m (Lnet/minecraft/network/chat/Component;)V display a method_55411 + p 1 value + m (Lnet/minecraft/network/chat/numbers/NumberFormat;)V numberFormatOverride a method_55412 + p 1 format + m ()I increment b method_55413 + m (I)I add b method_55414 + p 1 increment + m ()V reset c method_55415 + m ()Z locked d method_55416 + m ()V unlock e method_55417 + m ()V lock f method_55418 + m ()Lnet/minecraft/network/chat/Component; display g method_55419 +c net/minecraft/world/scores/ScoreHolder eyf net/minecraft/class_9015 + f Ljava/lang/String; WILDCARD_NAME a_ field_47537 + f Lnet/minecraft/world/scores/ScoreHolder; WILDCARD cC field_47538 + m ()Lnet/minecraft/network/chat/Component; getDisplayName S_ method_5476 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/world/scores/ScoreHolder; fromGameProfile a method_55420 + p 0 gameProfile + m (Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_55421 a method_55421 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/ScoreHolder; forNameOnly c method_55422 + p 0 name + m ()Ljava/lang/String; getScoreboardName cB method_5820 + m ()Lnet/minecraft/network/chat/Component; getFeedbackDisplayName gY method_55423 + m ()V +c net/minecraft/world/scores/ScoreHolder$1 eyf$1 net/minecraft/class_9015$1 + m ()V +c net/minecraft/world/scores/ScoreHolder$2 eyf$2 net/minecraft/class_9015$2 + f Ljava/lang/String; val$name b field_47539 + f Lnet/minecraft/network/chat/Component; val$feedbackName c field_47540 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/world/scores/ScoreHolder$3 eyf$3 net/minecraft/class_9015$3 + f Ljava/lang/String; val$name b field_47541 + m (Ljava/lang/String;)V +c net/minecraft/world/scores/Scoreboard eyg net/minecraft/class_269 + f Ljava/lang/String; HIDDEN_SCORE_PREFIX a field_47542 + f Lorg/slf4j/Logger; LOGGER b field_36309 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; objectivesByName c field_1428 + f Lit/unimi/dsi/fastutil/objects/Reference2ObjectMap; objectivesByCriteria d field_1429 + f Ljava/util/Map; playerScores e field_1431 + f Ljava/util/Map; displayObjectives f field_1432 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; teamsByName g field_1426 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; teamsByPlayer h field_1427 + m (Lnet/minecraft/world/entity/Entity;)V entityRemoved a method_1150 + p 1 entity + m (Lnet/minecraft/world/scores/DisplaySlot;)Lnet/minecraft/world/scores/Objective; getDisplayObjective a method_1189 + p 1 slot + m (Lnet/minecraft/world/scores/DisplaySlot;Lnet/minecraft/world/scores/Objective;)V setDisplayObjective a method_1158 + p 1 slot + p 2 objective + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveAdded a method_1185 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/scores/PlayerScores;)V method_55424 a method_55424 + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamAdded a method_1160 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)V onPlayerRemoved a method_1152 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V onScoreLockChanged a method_55337 + p 1 scoreHolder + p 2 objective + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V onScoreChanged a method_1176 + p 1 scoreHolder + p 2 objective + p 3 score + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;Z)Lnet/minecraft/world/scores/ScoreAccess; getOrCreatePlayerScore a method_55425 + p 1 scoreHolder + p 2 objective + p 3 readOnly + m (Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/world/scores/ScoreHolder;Ljava/util/function/Consumer;)V forAllObjectives a method_1162 + p 1 criteria + p 2 scoreHolder + p 3 action + m (Ljava/lang/Object;)Ljava/util/List; method_1179 a method_1179 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Objective; getObjective a method_1170 + c Returns a ScoreObjective for the objective name + p 1 name + m (Ljava/lang/String;Lnet/minecraft/world/scores/PlayerTeam;)Z addPlayerToTeam a method_1172 + p 1 playerName + p 2 team + m (Ljava/lang/String;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria;Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;ZLnet/minecraft/network/chat/numbers/NumberFormat;)Lnet/minecraft/world/scores/Objective; addObjective a method_1168 + p 1 name + p 2 criteria + p 3 displayName + p 4 renderType + p 5 displayAutoUpdate + p 6 numberFormat + m (Ljava/util/function/Consumer;Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V method_1182 a method_1182 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; savePlayerScores a method_1169 + p 1 levelRegistry + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/lang/String;Lnet/minecraft/nbt/ListTag;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/Score;)V method_55426 a method_55426 + m (Lnet/minecraft/core/HolderLookup$Provider;Lnet/minecraft/nbt/ListTag;Ljava/lang/String;Lnet/minecraft/world/scores/PlayerScores;)V method_55428 a method_55428 + m (Lorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/scores/Score;)V method_55427 a method_55427 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadPlayerScores a method_1188 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveChanged b method_1175 + p 1 objective + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamChanged b method_1154 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)V resetAllPlayerScores b method_55429 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V onPlayerScoreRemoved b method_1190 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getPlayerTeam b method_1153 + c Retrieve the ScorePlayerTeam instance identified by the passed team name + p 1 teamName + m (Ljava/lang/String;Lnet/minecraft/world/scores/PlayerTeam;)V removePlayerFromTeam b method_1157 + c Removes the given username from the given ScorePlayerTeam. If the player is not on the team then an IllegalStateException is thrown. + p 1 username + p 2 playerTeam + m ()Ljava/util/Collection; getObjectives c method_1151 + m (Lnet/minecraft/world/scores/Objective;)V onObjectiveRemoved c method_1173 + p 1 objective + m (Lnet/minecraft/world/scores/PlayerTeam;)V onTeamRemoved c method_1193 + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;)Lit/unimi/dsi/fastutil/objects/Object2IntMap; listPlayerScores c method_1166 + p 1 scoreHolder + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ScoreAccess; getOrCreatePlayerScore c method_1180 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; addPlayerTeam c method_1171 + p 1 name + m ()Ljava/util/Collection; getObjectiveNames d method_1163 + m (Lnet/minecraft/world/scores/PlayerTeam;)V removePlayerTeam d method_1191 + c Removes the team from the scoreboard, updates all player memberships and broadcasts the deletion to all players + p 1 playerTeam + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)Lnet/minecraft/world/scores/ReadOnlyScoreInfo; getPlayerScoreInfo d method_55430 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Z removePlayerFromTeam d method_1195 + p 1 playerName + m ()Ljava/util/Collection; getTrackedPlayers e method_1178 + m (Lnet/minecraft/world/scores/ScoreHolder;Lnet/minecraft/world/scores/Objective;)V resetSinglePlayerScore e method_1155 + p 1 scoreHolder + p 2 objective + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerTeam; getPlayersTeam e method_1164 + c Gets the ScorePlayerTeam object for the given username. + p 1 username + m ()Ljava/util/Collection; getTeamNames f method_1196 + c Retrieve all registered ScorePlayerTeam names + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerScores; getOrCreatePlayerInfo f method_55431 + p 1 username + m ()Ljava/util/Collection; getPlayerTeams g method_1159 + c Retrieve all registered ScorePlayerTeam instances + m (Ljava/lang/String;)Lnet/minecraft/world/scores/PlayerScores; method_55432 g method_55432 + m (Lnet/minecraft/world/scores/Objective;)Ljava/util/Collection; listPlayerScores i method_1184 + p 1 objective + m (Lnet/minecraft/world/scores/Objective;)V removeObjective j method_1194 + p 1 objective + m ()V + m ()V +c net/minecraft/world/scores/Scoreboard$1 eyg$1 net/minecraft/class_269$1 + f Lnet/minecraft/world/scores/Score; val$score a field_47543 + f Z val$canModify b field_47544 + f Lorg/apache/commons/lang3/mutable/MutableBoolean; val$requiresSync c field_47545 + f Lnet/minecraft/world/scores/Objective; val$objective d field_47546 + f Lnet/minecraft/world/scores/ScoreHolder; val$scoreHolder e field_47547 + f Lnet/minecraft/world/scores/Scoreboard; field_47548 f field_47548 + m (Z)V setLocked a method_55433 + p 1 locked + m ()V sendScoreToPlayers h method_55434 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Score;ZLorg/apache/commons/lang3/mutable/MutableBoolean;Lnet/minecraft/world/scores/Objective;Lnet/minecraft/world/scores/ScoreHolder;)V +c net/minecraft/world/scores/ScoreboardSaveData eyh net/minecraft/class_273 + f Ljava/lang/String; FILE_ID a field_31893 + f Lorg/slf4j/Logger; LOGGER b field_45181 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard c field_27936 + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/nbt/ListTag;)V loadTeamPlayers a method_1215 + p 1 playerTeam + p 2 tagList + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; method_17947 a method_17947 + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; saveTeams a method_1217 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;)V loadDisplaySlots a method_1221 + p 1 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/nbt/Tag;)V method_55435 a method_55435 + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadTeams a method_1219 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/nbt/ListTag; saveObjectives b method_1216 + p 1 levelRegistry + m (Lnet/minecraft/nbt/CompoundTag;)V saveDisplaySlots b method_1222 + p 1 compound + m (Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/core/HolderLookup$Provider;)Lnet/minecraft/world/scores/ScoreboardSaveData; load b method_32481 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/nbt/ListTag;Lnet/minecraft/core/HolderLookup$Provider;)V loadObjectives b method_1220 + p 1 tag + p 2 levelRegistry + m (Lnet/minecraft/world/scores/Scoreboard;)V + p 1 scoreboard + m ()V +c net/minecraft/world/scores/Team eyi net/minecraft/class_270 + m (Lnet/minecraft/world/scores/Team;)Z isAlliedTo a method_1206 + c Same as == + p 1 other + m ()Ljava/lang/String; getName b method_1197 + c Retrieve the name by which this team is registered in the scoreboard + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; getFormattedName d method_1198 + p 1 formattedName + m ()Ljava/util/Collection; getPlayers g method_1204 + c Gets a collection of all members of this team. + m ()Z isAllowFriendlyFire h method_1205 + c Checks whether friendly fire (PVP between members of the team) is allowed. + m ()Z canSeeFriendlyInvisibles i method_1199 + c Checks whether members of this team can see other members that are invisible. + m ()Lnet/minecraft/world/scores/Team$Visibility; getNameTagVisibility j method_1201 + c Gets the visibility flags for player name tags. + m ()Lnet/minecraft/world/scores/Team$Visibility; getDeathMessageVisibility k method_1200 + c Gets the visibility flags for player death messages. + m ()Lnet/minecraft/world/scores/Team$CollisionRule; getCollisionRule l method_1203 + c Gets the rule to be used for handling collisions with members of this team. + m ()Lnet/minecraft/ChatFormatting; getColor n method_1202 + c Gets the color for this team. The team color is used mainly for team kill objectives and team-specific setDisplay usage. It does _not_ affect all situations (for instance, the prefix is used for the glowing effect). + m ()V +c net/minecraft/world/scores/Team$CollisionRule eyi$a net/minecraft/class_270$class_271 + f Lnet/minecraft/world/scores/Team$CollisionRule; ALWAYS a field_1437 + f Lnet/minecraft/world/scores/Team$CollisionRule; NEVER b field_1435 + f Lnet/minecraft/world/scores/Team$CollisionRule; PUSH_OTHER_TEAMS c field_1434 + f Lnet/minecraft/world/scores/Team$CollisionRule; PUSH_OWN_TEAM d field_1440 + f Ljava/lang/String; name e field_1436 + f I id f field_1433 + f Ljava/util/Map; BY_NAME g field_1438 + f [Lnet/minecraft/world/scores/Team$CollisionRule; $VALUES h field_1439 + m ()Lnet/minecraft/network/chat/Component; getDisplayName a method_1209 + m (Lnet/minecraft/world/scores/Team$CollisionRule;)Lnet/minecraft/world/scores/Team$CollisionRule; method_1208 a method_1208 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Team$CollisionRule; byName a method_1210 + p 0 name + m ()[Lnet/minecraft/world/scores/Team$CollisionRule; $values b method_36797 + m (Lnet/minecraft/world/scores/Team$CollisionRule;)Ljava/lang/String; method_1207 b method_1207 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/scores/Team$Visibility eyi$b net/minecraft/class_270$class_272 + f Lnet/minecraft/world/scores/Team$Visibility; ALWAYS a field_1442 + f Lnet/minecraft/world/scores/Team$Visibility; NEVER b field_1443 + f Lnet/minecraft/world/scores/Team$Visibility; HIDE_FOR_OTHER_TEAMS c field_1444 + f Lnet/minecraft/world/scores/Team$Visibility; HIDE_FOR_OWN_TEAM d field_1446 + f Ljava/lang/String; name e field_1445 + f I id f field_1441 + f Ljava/util/Map; BY_NAME g field_1447 + f [Lnet/minecraft/world/scores/Team$Visibility; $VALUES h field_1448 + m ()[Ljava/lang/String; getAllNames a method_35595 + m (Lnet/minecraft/world/scores/Team$Visibility;)Lnet/minecraft/world/scores/Team$Visibility; method_1211 a method_1211 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/Team$Visibility; byName a method_1213 + p 0 name + m ()Lnet/minecraft/network/chat/Component; getDisplayName b method_1214 + m (Lnet/minecraft/world/scores/Team$Visibility;)Ljava/lang/String; method_1212 b method_1212 + m ()[Lnet/minecraft/world/scores/Team$Visibility; $values c method_36798 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 name + p 4 id + m ()V +c net/minecraft/world/scores/criteria/ObjectiveCriteria eyj net/minecraft/class_274 + f Ljava/util/Map; CUSTOM_CRITERIA a field_33939 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; DUMMY b field_1468 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; TRIGGER c field_1462 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; DEATH_COUNT d field_1456 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILL_COUNT_PLAYERS e field_1463 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILL_COUNT_ALL f field_1457 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; HEALTH g field_1453 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; FOOD h field_1464 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; AIR i field_1459 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; ARMOR j field_1452 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; EXPERIENCE k field_1460 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; LEVEL l field_1465 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; TEAM_KILL m field_1466 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; KILLED_BY_TEAM n field_1458 + f Ljava/util/Map; CRITERIA_CACHE o field_1455 + f Ljava/lang/String; name p field_1454 + f Z readOnly q field_1461 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; renderType r field_1467 + m (Lnet/minecraft/stats/StatType;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; getStat a method_1223 + p 0 statType + p 1 resourceLocation + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_1224 + p 0 name + m (Ljava/lang/String;ILnet/minecraft/stats/StatType;)Ljava/util/Optional; method_17948 a method_17948 + m (Ljava/lang/String;ZLnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; registerCustom a method_37269 + p 0 name + p 1 readOnly + p 2 renderType + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria; registerCustom b method_37270 + p 0 name + m ()Ljava/util/Set; getCustomCriteriaNames c method_37271 + m ()Ljava/lang/String; getName d method_1225 + m ()Z isReadOnly e method_1226 + m ()Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; getDefaultRenderType f method_1227 + m (Ljava/lang/String;)V + p 1 name + m (Ljava/lang/String;ZLnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType;)V + p 1 name + p 2 readOnly + p 3 renderType + m ()V +c net/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType eyj$a net/minecraft/class_274$class_275 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; INTEGER a field_1472 + f Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; HEARTS b field_1471 + f Lnet/minecraft/util/StringRepresentable$EnumCodec; CODEC c field_41683 + f Ljava/lang/String; id d field_1469 + f [Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; $VALUES e field_1473 + m ()Ljava/lang/String; getId a method_1228 + m (Ljava/lang/String;)Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; byId a method_1229 + p 0 renderType + m ()[Lnet/minecraft/world/scores/criteria/ObjectiveCriteria$RenderType; $values b method_36799 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/world/scores/criteria/package-info eyk net/minecraft/class_6175 +c net/minecraft/world/scores/package-info eyl net/minecraft/class_6176 +c net/minecraft/world/ticks/BlackholeTickAccess eym net/minecraft/class_6754 + f Lnet/minecraft/world/ticks/TickContainerAccess; CONTAINER_BLACKHOLE a field_35525 + f Lnet/minecraft/world/ticks/LevelTickAccess; LEVEL_BLACKHOLE b field_35526 + m ()Lnet/minecraft/world/ticks/TickContainerAccess; emptyContainer a method_39361 + m ()Lnet/minecraft/world/ticks/LevelTickAccess; emptyLevelList b method_39362 + m ()V + m ()V +c net/minecraft/world/ticks/BlackholeTickAccess$1 eym$1 net/minecraft/class_6754$1 + m ()V +c net/minecraft/world/ticks/BlackholeTickAccess$2 eym$2 net/minecraft/class_6754$2 + m ()V +c net/minecraft/world/ticks/ContainerSingleItem eyn net/minecraft/class_8181 + m (Lnet/minecraft/world/item/ItemStack;)V setTheItem b method_54077 + p 1 item + m (I)Lnet/minecraft/world/item/ItemStack; splitTheItem c method_54078 + p 1 amount + m ()Lnet/minecraft/world/item/ItemStack; getTheItem f method_54079 + m ()Lnet/minecraft/world/item/ItemStack; removeTheItem h method_54099 +c net/minecraft/world/ticks/ContainerSingleItem$BlockContainerSingleItem eyn$a net/minecraft/class_8181$class_9210 + m ()Lnet/minecraft/world/level/block/entity/BlockEntity; getContainerBlockEntity v method_54080 +c net/minecraft/world/ticks/LevelChunkTicks eyo net/minecraft/class_6755 + f Ljava/util/Queue; tickQueue a field_35527 + f Ljava/util/List; pendingTicks b field_35528 + f Ljava/util/Set; ticksPerPosition c field_35529 + f Ljava/util/function/BiConsumer; onTickAdded d field_35530 + m (J)V unpack a method_39364 + p 1 gameTime + m (JLjava/util/function/Function;)Lnet/minecraft/nbt/ListTag; save a method_39365 + p 1 gameTime + p 3 idGetter + m (Ljava/util/function/BiConsumer;)V setOnTickAdded a method_39366 + p 1 onTickAdded + m (Ljava/util/function/Predicate;)V removeIf a method_39367 + p 1 predicate + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/ticks/LevelChunkTicks; load a method_39368 + p 0 tag + p 1 isParser + p 2 pos + m ()Lnet/minecraft/world/ticks/ScheduledTick; peek b method_39369 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V scheduleUnchecked b method_39370 + p 1 tick + m ()Lnet/minecraft/world/ticks/ScheduledTick; poll c method_39371 + m ()Ljava/util/stream/Stream; getAll d method_39372 + m ()V + m (Ljava/util/List;)V + p 1 pendingTicks +c net/minecraft/world/ticks/LevelTickAccess eyp net/minecraft/class_6756 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;)Z willTickThisTick b method_8677 + p 1 pos + p 2 type +c net/minecraft/world/ticks/LevelTicks eyq net/minecraft/class_6757 + f Ljava/util/Comparator; CONTAINER_DRAIN_ORDER a field_35531 + f Ljava/util/function/LongPredicate; tickCheck b field_35532 + f Ljava/util/function/Supplier; profiler c field_35533 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; allContainers d field_35534 + f Lit/unimi/dsi/fastutil/longs/Long2LongMap; nextTickForContainer e field_35535 + f Ljava/util/Queue; containersToTick f field_35536 + f Ljava/util/Queue; toRunThisTick g field_35537 + f Ljava/util/List; alreadyRunThisTick h field_35538 + f Ljava/util/Set; toRunThisTickSet i field_35539 + f Ljava/util/function/BiConsumer; chunkScheduleUpdater j field_35540 + m (I)Z canScheduleMoreTicks a method_39373 + p 1 maxAllowedTicks + m (J)V sortContainersToTick a method_39374 + p 1 gameTime + m (JI)V drainContainers a method_39375 + p 1 gameTime + p 3 maxAllowedTicks + m (JILnet/minecraft/util/profiling/ProfilerFiller;)V collectTicks a method_39376 + p 1 gameTime + p 3 maxAllowedTicks + p 4 profiler + m (JILjava/util/function/BiConsumer;)V tick a method_39377 + p 1 gameTime + p 3 maxAllowedTicks + p 4 ticker + m (Lnet/minecraft/world/level/ChunkPos;)V removeContainer a method_39378 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/ticks/LevelChunkTicks;)V addContainer a method_39379 + p 1 chunkPos + p 2 chunkTicks + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;)V clearArea a method_39380 + p 1 area + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/LevelTicks$PosAndContainerConsumer;)V forContainersInArea a method_39381 + p 1 area + p 2 action + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/ScheduledTick;)Z method_48166 a method_48166 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Vec3i;)V copyArea a method_39383 + p 1 area + p 2 offset + m (Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/LevelChunkTicks;)I method_39384 a method_39384 + m (Lnet/minecraft/world/ticks/LevelChunkTicks;Lnet/minecraft/world/ticks/ScheduledTick;)V method_39385 a method_39385 + m (Lnet/minecraft/world/ticks/LevelTicks;Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/core/Vec3i;)V copyAreaFrom a method_48167 + p 1 levelTicks + p 2 area + p 3 offset + m (Lit/unimi/dsi/fastutil/longs/Long2LongOpenHashMap;)V method_39387 a method_39387 + m (Ljava/util/Queue;Lnet/minecraft/world/ticks/LevelChunkTicks;JI)V drainFromCurrentContainer a method_39389 + p 1 containersToTick + p 2 levelChunkTicks + p 3 gameTime + p 5 maxAllowedTicks + m (Ljava/util/function/BiConsumer;)V runCollectedTicks a method_39390 + p 1 ticker + m (Ljava/util/function/Predicate;JLnet/minecraft/world/ticks/LevelChunkTicks;)V method_39391 a method_39391 + m (Ljava/util/function/Predicate;Ljava/util/List;JLnet/minecraft/world/ticks/LevelChunkTicks;)V method_48169 a method_48169 + m (Lnet/minecraft/core/Vec3i;JJLnet/minecraft/world/ticks/ScheduledTick;)V method_48168 a method_48168 + m ()V rescheduleLeftoverContainers b method_39392 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Lnet/minecraft/world/ticks/ScheduledTick;)Z method_39382 b method_39382 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V updateContainerScheduling b method_39393 + p 1 tick + m ()V cleanupAfterTick c method_39394 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V scheduleForThisTick c method_39395 + p 1 tick + m ()V calculateTickSetIfNeeded d method_39396 + m (Ljava/util/function/LongPredicate;Ljava/util/function/Supplier;)V + p 1 tickCheck + p 2 profiler + m ()V +c net/minecraft/world/ticks/LevelTicks$PosAndContainerConsumer eyq$a net/minecraft/class_6757$class_6758 +c net/minecraft/world/ticks/ProtoChunkTicks eyr net/minecraft/class_4296 + f Ljava/util/List; ticks a field_19275 + f Ljava/util/Set; ticksPerPosition b field_35541 + m (Lnet/minecraft/world/ticks/SavedTick;)V schedule a method_39397 + p 1 tick + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;)Lnet/minecraft/world/ticks/ProtoChunkTicks; load a method_39398 + p 0 tag + p 1 idParser + p 2 chunkPos + m ()Ljava/util/List; scheduledTicks b method_39399 + m ()V +c net/minecraft/world/ticks/SavedTick eys net/minecraft/class_6759 + f Lit/unimi/dsi/fastutil/Hash$Strategy; UNIQUE_TICK_HASH a field_35542 + f Ljava/lang/Object; type b comp_248 + f Lnet/minecraft/core/BlockPos; pos c comp_249 + f I delay d comp_250 + f Lnet/minecraft/world/ticks/TickPriority; priority e comp_251 + f Ljava/lang/String; TAG_ID f field_35543 + f Ljava/lang/String; TAG_X g field_35544 + f Ljava/lang/String; TAG_Y h field_35545 + f Ljava/lang/String; TAG_Z i field_35546 + f Ljava/lang/String; TAG_DELAY j field_35547 + f Ljava/lang/String; TAG_PRIORITY k field_35548 + m ()Ljava/lang/Object; type a comp_248 + m (JJ)Lnet/minecraft/world/ticks/ScheduledTick; unpack a method_39400 + p 1 gameTime + p 3 subTickOrder + m (JLjava/util/function/Consumer;Lnet/minecraft/world/ticks/SavedTick;)V method_39405 a method_39405 + m (Lnet/minecraft/world/ticks/ScheduledTick;Ljava/util/function/Function;J)Lnet/minecraft/nbt/CompoundTag; saveTick a method_39401 + p 0 tick + p 1 idGetter + p 2 gameTime + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/SavedTick; probe a method_39402 + p 0 type + p 1 pos + m (Ljava/lang/String;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/ticks/TickPriority;)Lnet/minecraft/nbt/CompoundTag; saveTick a method_39403 + p 0 id + p 1 pos + p 2 delay + p 3 priority + m (Ljava/util/function/Function;)Lnet/minecraft/nbt/CompoundTag; save a method_39404 + p 1 idGetter + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/Object;)Lnet/minecraft/world/ticks/SavedTick; method_40558 a method_40558 + m (Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Function;)Ljava/util/Optional; loadTick a method_40559 + p 0 tag + p 1 idParser + m (Lnet/minecraft/nbt/ListTag;Ljava/util/function/Function;Lnet/minecraft/world/level/ChunkPos;Ljava/util/function/Consumer;)V loadTickList a method_39406 + p 0 tag + p 1 idParser + p 2 chunkPos + p 3 output + m ()Lnet/minecraft/core/BlockPos; pos b comp_249 + m ()I delay c comp_250 + m ()Lnet/minecraft/world/ticks/TickPriority; priority d comp_251 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;ILnet/minecraft/world/ticks/TickPriority;)V + m ()V +c net/minecraft/world/ticks/SavedTick$1 eys$1 net/minecraft/class_6759$1 + m (Lnet/minecraft/world/ticks/SavedTick;)I hashCode a method_39407 + p 1 savedTick + m (Lnet/minecraft/world/ticks/SavedTick;Lnet/minecraft/world/ticks/SavedTick;)Z equals a method_39408 + p 1 first + p 2 second + m ()V +c net/minecraft/world/ticks/ScheduledTick eyt net/minecraft/class_6760 + f Ljava/util/Comparator; DRAIN_ORDER a field_35549 + f Ljava/util/Comparator; INTRA_TICK_DRAIN_ORDER b field_35550 + f Lit/unimi/dsi/fastutil/Hash$Strategy; UNIQUE_TICK_HASH c field_35551 + f Ljava/lang/Object; type d comp_252 + f Lnet/minecraft/core/BlockPos; pos e comp_253 + f J triggerTick f comp_254 + f Lnet/minecraft/world/ticks/TickPriority; priority g comp_255 + f J subTickOrder h comp_256 + m ()Ljava/lang/Object; type a comp_252 + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)I method_39409 a method_39409 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/ticks/ScheduledTick; probe a method_39410 + p 0 type + p 1 pos + m ()Lnet/minecraft/core/BlockPos; pos b comp_253 + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)I method_39412 b method_39412 + m ()J triggerTick c comp_254 + m ()Lnet/minecraft/world/ticks/TickPriority; priority d comp_255 + m ()J subTickOrder e comp_256 + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;JJ)V + p 1 type + p 2 pos + p 3 triggerTick + p 5 subTickOrder + m (Ljava/lang/Object;Lnet/minecraft/core/BlockPos;JLnet/minecraft/world/ticks/TickPriority;J)V + p 1 type + p 2 pos + p 3 triggerTick + p 5 priority + p 6 subTickOrder + m ()V +c net/minecraft/world/ticks/ScheduledTick$1 eyt$1 net/minecraft/class_6760$1 + m (Lnet/minecraft/world/ticks/ScheduledTick;)I hashCode a method_39413 + p 1 scheduledTick + m (Lnet/minecraft/world/ticks/ScheduledTick;Lnet/minecraft/world/ticks/ScheduledTick;)Z equals a method_39414 + p 1 first + p 2 second + m ()V +c net/minecraft/world/ticks/SerializableTickContainer eyu net/minecraft/class_6761 + m (JLjava/util/function/Function;)Lnet/minecraft/nbt/Tag; save b method_20463 + p 1 gameTime + p 3 idGetter +c net/minecraft/world/ticks/TickAccess eyv net/minecraft/class_6762 + m ()I count a method_20825 + m (Lnet/minecraft/world/ticks/ScheduledTick;)V schedule a method_39363 + p 1 tick + m (Lnet/minecraft/core/BlockPos;Ljava/lang/Object;)Z hasScheduledTick a method_8674 + p 1 pos + p 2 type +c net/minecraft/world/ticks/TickContainerAccess eyw net/minecraft/class_6763 +c net/minecraft/world/ticks/TickPriority eyx net/minecraft/class_1953 + f Lnet/minecraft/world/ticks/TickPriority; EXTREMELY_HIGH a field_9315 + f Lnet/minecraft/world/ticks/TickPriority; VERY_HIGH b field_9313 + f Lnet/minecraft/world/ticks/TickPriority; HIGH c field_9310 + f Lnet/minecraft/world/ticks/TickPriority; NORMAL d field_9314 + f Lnet/minecraft/world/ticks/TickPriority; LOW e field_9316 + f Lnet/minecraft/world/ticks/TickPriority; VERY_LOW f field_9309 + f Lnet/minecraft/world/ticks/TickPriority; EXTREMELY_LOW g field_9311 + f I value h field_9308 + f [Lnet/minecraft/world/ticks/TickPriority; $VALUES i field_9312 + m ()I getValue a method_8681 + m (I)Lnet/minecraft/world/ticks/TickPriority; byValue a method_8680 + p 0 priority + m ()[Lnet/minecraft/world/ticks/TickPriority; $values b method_36697 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/world/ticks/WorldGenTickAccess eyy net/minecraft/class_3235 + f Ljava/util/function/Function; containerGetter a field_35552 + m (Ljava/util/function/Function;)V + p 1 containerGetter +c net/minecraft/world/ticks/package-info eyz net/minecraft/class_6764 +c com/mojang/blaze3d/Blaze3D eza net/minecraft/class_3673 + m ()V youJustLostTheGame a method_15973 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;F)V process a method_35596 + p 0 pipeline + p 1 unknown + m ()D getTime b method_15974 + m (Lcom/mojang/blaze3d/pipeline/RenderPipeline;F)V render b method_35597 + p 0 pipeline + p 1 unknown + m ()V +c com/mojang/blaze3d/DontObfuscate ezb net/minecraft/class_6177 +c com/mojang/blaze3d/FieldsAreNonnullByDefault ezc net/minecraft/class_6178 +c com/mojang/blaze3d/MethodsReturnNonnullByDefault ezd net/minecraft/class_6179 +c com/mojang/blaze3d/audio/Channel eze net/minecraft/class_4224 + c Represents an OpenAL audio channel. + f I BUFFER_DURATION_SECONDS a field_31894 + f Lorg/slf4j/Logger; LOGGER b field_18892 + f I QUEUED_BUFFER_COUNT c field_31895 + f I source d field_18893 + f Ljava/util/concurrent/atomic/AtomicBoolean; initialized e field_18894 + f I streamingBufferSize f field_18895 + f Lnet/minecraft/client/sounds/AudioStream; stream g field_18896 + m ()Lcom/mojang/blaze3d/audio/Channel; create a method_19638 + c Creates a new OpenAL audio channel.\n{@return a new OpenAL audio channel or {@code null} if its creation failed} + m (F)V setPitch a method_19639 + c Sets the pitch of the audio channel. + p 1 pitch + c the pitch of the audio channel + m (I)V pumpBuffers a method_19640 + c Reads and queues audio buffers from the stream. + p 1 readCount + c the number of buffers to read and queue + m (Lnet/minecraft/world/phys/Vec3;)V setSelfPosition a method_19641 + c Sets the position of the audio channel. + p 1 source + c the position of the audio channel + m (Lcom/mojang/blaze3d/audio/SoundBuffer;)V attachStaticBuffer a method_19642 + c Attaches a static buffer to the audio channel. + p 1 buffer + c the buffer to attach + m (Lnet/minecraft/client/sounds/AudioStream;)V attachBufferStream a method_19643 + c Attaches a buffer stream to the audio channel. + p 1 stream + c the stream to attach + m (Ljavax/sound/sampled/AudioFormat;I)I calculateBufferSize a method_19644 + c Calculates the buffer size for an audio stream.\n@return the buffer size + p 0 format + c the audio format of the stream + p 1 sampleAmount + c the number of samples to buffer + m (Z)V setLooping a method_19645 + c Sets whether the audio channel should loop. + p 1 looping + c {@code true} if the audio channel should loop, {@code false} otherwise + m ()V destroy b method_19646 + c Stops the audio channel and releases resources. + m (F)V setVolume b method_19647 + c Sets the volume of the audio channel. + p 1 volume + c the volume of the audio channel + m (I)V method_19648 b method_19648 + m (Z)V setRelative b method_19649 + c Sets whether the audio channel should be relative to the listener's position. + p 1 relative + c {@code true} if the audio channel should be relative, {@code false} otherwise + m ()V play c method_19650 + c Starts playing the audio channel. + m (F)V linearAttenuation c method_19651 + c Sets linear attenuation for the audio channel. + p 1 linearAttenuation + c the linear attenuation of the audio channel + m (I)V method_19652 c method_19652 + m ()V pause d method_19653 + c Pauses the audio channel. + m ()V unpause e method_19654 + c Resumes playing the audio channel if it was paused. + m ()V stop f method_19655 + c Stops playing the audio channel. + m ()Z playing g method_35598 + c {@return {@code true} if the audio channel is currently playing, {@code false} otherwise} + m ()Z stopped h method_19656 + c {@return {@code true} if the audio channel is stopped, {@code false} otherwise} + m ()V disableAttenuation i method_19657 + c Disables attenuation for the audio channel. + m ()V updateStream j method_19658 + c Updates the audio stream by removing processed buffers and queuing new ones. + m ()I getState k method_19659 + c {@return the state of the audio channel} + m ()I removeProcessedBuffers l method_19660 + c Removes processed audio buffers from the audio channel.\n@return the number of processed buffers removed + m (I)V + p 1 source + m ()V +c com/mojang/blaze3d/audio/Library ezf net/minecraft/class_4225 + f Lorg/slf4j/Logger; LOGGER a field_18897 + f I NO_DEVICE b field_34945 + f I DEFAULT_CHANNEL_COUNT c field_31897 + f J currentDevice d field_18898 + f J context e field_18899 + f Z supportsDisconnections f field_34946 + f Ljava/lang/String; defaultDeviceName g field_34947 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; EMPTY h field_19183 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; staticChannels i field_19184 + f Lcom/mojang/blaze3d/audio/Library$ChannelPool; streamingChannels j field_19185 + f Lcom/mojang/blaze3d/audio/Listener; listener k field_18902 + m ()Ljava/lang/String; getDefaultDeviceName a method_38500 + c {@return the name of the currently selected audio device, or {@code Unknown} if it cannot be determined} + m (Lcom/mojang/blaze3d/audio/Channel;)V releaseChannel a method_19662 + c Releases a channel.\n@return whether the channel was successfully released + p 1 channel + c The channel to release. + m (Lcom/mojang/blaze3d/audio/Library$Pool;)Lcom/mojang/blaze3d/audio/Channel; acquireChannel a method_19663 + c Acquires a sound channel based on the given mode. + p 1 pool + m (Ljava/lang/String;)J openDeviceOrFallback a method_38501 + c Opens the specified audio device, or the default device if the specifier is null.\n@return The handle of the opened device.\n@throws IllegalStateException if the device cannot be opened. + p 0 deviceSpecifier + c The name of the audio device to open, or null to open the default device. + m (Ljava/lang/String;Z)V init a method_19661 + c Initializes the OpenAL device and context.\n@throws IllegalStateException if an error occurs during initialization. + p 1 deviceSpecifier + c A string specifying the name of the audio device to use, or null to use the default device. + p 2 enableHrtf + c Whether to enable HRTF (head-related transfer function) for spatial audio. + m (Z)V setHrtf a method_41711 + c Sets the HRTF (head-related transfer function) for spatial audio, if it is supported by the current device. + p 1 enableHrtf + c Whether to enable HRTF. + m ()Ljava/lang/String; getCurrentDeviceName b method_38722 + c {@return the name of the default audio device, or {@code null} if it cannot be determined} + m (Ljava/lang/String;)Ljava/util/OptionalLong; tryOpenDevice b method_20050 + c Attempts to open the specified audio device.\n@return an {@linkplain OptionalLong} containing the handle of the opened device if successful, or empty if the device could not be opened + p 0 deviceSpecifier + c A string specifying the name of the audio device to open, or null to use the default device. + m ()Z hasDefaultDeviceChanged c method_38723 + c Checks if the default audio device has changed since the last time this method was called.\n

\nIf the default device has changed, updates the stored default device name accordingly.\n@return {@code true} if the default device has changed since the last time this method was called, {@code false} otherwise + m ()V cleanup d method_19664 + c Cleans up all resources used by the library. + m ()Lcom/mojang/blaze3d/audio/Listener; getListener e method_19665 + m ()Ljava/lang/String; getDebugString f method_20296 + m ()Ljava/util/List; getAvailableSoundDevices g method_38502 + c {@return A list of strings representing the names of available sound devices, or an empty list if no devices are available.} + m ()Z isCurrentDeviceDisconnected h method_38724 + m ()I getChannelCount i method_20297 + c {@return the number of channels available for audio playback} + m ()V + m ()V +c com/mojang/blaze3d/audio/Library$1 ezf$1 net/minecraft/class_4225$1 + m ()V +c com/mojang/blaze3d/audio/Library$ChannelPool ezf$a net/minecraft/class_4225$class_4276 + m ()Lcom/mojang/blaze3d/audio/Channel; acquire a method_19666 + m (Lcom/mojang/blaze3d/audio/Channel;)Z release a method_19667 + p 1 channel + m ()V cleanup b method_19668 + m ()I getMaxCount c method_20298 + m ()I getUsedCount d method_20299 +c com/mojang/blaze3d/audio/Library$CountingChannelPool ezf$b net/minecraft/class_4225$class_4226 + f I limit a field_18903 + f Ljava/util/Set; activeChannels b field_18904 + m (I)V + p 1 limit +c com/mojang/blaze3d/audio/Library$Pool ezf$c net/minecraft/class_4225$class_4105 + f Lcom/mojang/blaze3d/audio/Library$Pool; STATIC a field_18352 + f Lcom/mojang/blaze3d/audio/Library$Pool; STREAMING b field_18353 + f [Lcom/mojang/blaze3d/audio/Library$Pool; $VALUES c field_18354 + m ()[Lcom/mojang/blaze3d/audio/Library$Pool; $values a method_36800 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/audio/Listener ezg net/minecraft/class_4227 + c The Listener class represents the listener in a 3D audio environment.\n\nThe listener's position and orientation determine how sounds are perceived by the listener. + f F gain a field_18906 + f Lcom/mojang/blaze3d/audio/ListenerTransform; transform b field_47670 + m ()F getGain a method_19669 + c {@return the current gain value of the listener} + m (F)V setGain a method_19670 + c Sets the listener's gain. + p 1 gain + c The gain to set for the listener. + m (Lcom/mojang/blaze3d/audio/ListenerTransform;)V setTransform a method_55584 + p 1 transform + m ()V reset b method_19673 + c Resets the listener's position and orientation to default values. + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getTransform c method_55585 + m ()V +c com/mojang/blaze3d/audio/ListenerTransform ezh net/minecraft/class_9054 + f Lcom/mojang/blaze3d/audio/ListenerTransform; INITIAL a field_47671 + f Lnet/minecraft/world/phys/Vec3; position b comp_2165 + f Lnet/minecraft/world/phys/Vec3; forward c comp_2166 + f Lnet/minecraft/world/phys/Vec3; up d comp_2167 + m ()Lnet/minecraft/world/phys/Vec3; right a method_55586 + m ()Lnet/minecraft/world/phys/Vec3; position b comp_2165 + m ()Lnet/minecraft/world/phys/Vec3; forward c comp_2166 + m ()Lnet/minecraft/world/phys/Vec3; up d comp_2167 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + m ()V +c com/mojang/blaze3d/audio/OpenAlUtil ezi net/minecraft/class_4230 + c The OpenALUtil class provides utility functions for working with OpenAL audio. + f Lorg/slf4j/Logger; LOGGER a field_18915 + m (I)Ljava/lang/String; alErrorToString a method_19683 + c Converts an OpenAL error code to a human-readable error message.\n@return A String representing the error message for the given error code. + p 0 errorCode + c The OpenAL error code to convert + m (JLjava/lang/String;)Z checkALCError a method_20051 + c Checks for an ALC error and logs an error message if one is found.\n@return true if an ALC error was found, false otherwise. + p 0 deviceHandle + c The handle of the device to check for errors on + p 2 operationState + c A String describing the operation being performed when the error occurred + m (Ljava/lang/String;)Z checkALError a method_19684 + c Checks for an OpenAL error and logs an error message if one is found.\n@return true if an OpenAL error was found, false otherwise. + p 0 operationState + c A String describing the operation being performed when the error occurred + m (Ljavax/sound/sampled/AudioFormat;)I audioFormatToOpenAl a method_19685 + c Converts an AudioFormat object to the corresponding OpenAL audio format code.\n@return An integer representing the corresponding OpenAL audio format code.\n@throws IllegalArgumentException if the given AudioFormat is not a supported format. + p 0 format + c The AudioFormat object to convert + m (I)Ljava/lang/String; alcErrorToString b method_20052 + c Converts an ALC error code to a human-readable error message.\n@return A String representing the error message for the given error code. + p 0 errorCode + c The ALC error code to convert + m ()V + m ()V +c com/mojang/blaze3d/audio/SoundBuffer ezj net/minecraft/class_4231 + c The SoundBuffer class represents an audio buffer containing audio data in a particular format.\n\nThe audio data can be used to create an OpenAL buffer, which can be played in a 3D audio environment. + f Ljava/nio/ByteBuffer; data a field_18916 + f Ljavax/sound/sampled/AudioFormat; format b field_18917 + f Z hasAlBuffer c field_18918 + f I alBuffer d field_18919 + m ()Ljava/util/OptionalInt; getAlBuffer a method_19686 + c Returns an OptionalInt containing the OpenAL buffer handle for this SoundBuffer.\nIf the buffer has not been created yet, creates the buffer and returns the handle.\nIf the buffer cannot be created, returns an empty OptionalInt.\n@return An OptionalInt containing the OpenAL buffer handle, or an empty OptionalInt if the buffer cannot be created. + m ()V discardAlBuffer b method_19687 + c Deletes the OpenAL buffer associated with this SoundBuffer, if it exists. + m ()Ljava/util/OptionalInt; releaseAlBuffer c method_19688 + c Releases the OpenAL buffer associated with this SoundBuffer and returns it as an OptionalInt.\nIf no buffer has been created yet, returns an empty OptionalInt.\n@return an {@linkplain OptionalInt} containing the OpenAL buffer handle, or an empty one, if the buffer has not been created + m (Ljava/nio/ByteBuffer;Ljavax/sound/sampled/AudioFormat;)V + p 1 data + p 2 format +c com/mojang/blaze3d/audio/package-info ezk net/minecraft/class_6180 +c com/mojang/blaze3d/font/GlyphInfo ezl net/minecraft/class_379 + m ()F getBoldOffset a method_16799 + m (Z)F getAdvance a method_16798 + p 1 bold + m ()F getShadowOffset b method_16800 +c com/mojang/blaze3d/font/GlyphInfo$SpaceGlyphInfo ezl$a net/minecraft/class_379$class_7167 +c com/mojang/blaze3d/font/GlyphProvider ezm net/minecraft/class_390 + f F BASELINE a field_48382 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; getSupportedGlyphs a method_27442 + m (I)Lcom/mojang/blaze3d/font/GlyphInfo; getGlyph a method_2040 + p 1 character +c com/mojang/blaze3d/font/GlyphProvider$Conditional ezm$a net/minecraft/class_390$class_9241 + f Lcom/mojang/blaze3d/font/GlyphProvider; provider a comp_2348 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2349 + m ()Lcom/mojang/blaze3d/font/GlyphProvider; provider a comp_2348 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2349 + m (Lcom/mojang/blaze3d/font/GlyphProvider;Lnet/minecraft/client/gui/font/FontOption$Filter;)V +c com/mojang/blaze3d/font/SheetGlyphInfo ezn net/minecraft/class_383 + m ()I getPixelWidth a method_2031 + m (II)V upload a method_2030 + p 1 xOffset + p 2 yOffset + m ()I getPixelHeight b method_2032 + m ()Z isColored c method_2033 + m ()F getOversample d method_2035 + m ()F getLeft e method_2034 + m ()F getRight f method_2027 + m ()F getTop g method_2028 + m ()F getBottom h method_2029 + m ()F getBearingLeft i method_56129 + m ()F getBearingTop j method_56130 +c com/mojang/blaze3d/font/SpaceProvider ezo net/minecraft/class_7166 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; glyphs b field_37842 + m (Ljava/lang/Float;)F method_41714 a method_41714 + m (Ljava/lang/Integer;Ljava/lang/Float;)V method_41716 a method_41716 + m (Ljava/util/Map;)V + p 1 glyphs +c com/mojang/blaze3d/font/SpaceProvider$Definition ezo$a net/minecraft/class_7166$class_8554 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44791 + f Ljava/util/Map; advances c comp_1517 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; method_51732 a method_51732 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51733 a method_51733 + m ()Ljava/util/Map; advances c comp_1517 + m (Ljava/util/Map;)V + m ()V +c com/mojang/blaze3d/font/TrueTypeGlyphProvider ezp net/minecraft/class_395 + f Ljava/nio/ByteBuffer; fontMemory b field_21839 + f Lorg/lwjgl/util/freetype/FT_Face; face c field_48383 + f F oversample d field_2321 + f Lit/unimi/dsi/fastutil/ints/IntSet; skip e field_2319 + m (F)F method_42397 a method_42397 + m ()Lorg/lwjgl/util/freetype/FT_Face; validateFontOpen b method_51884 + m (Ljava/nio/ByteBuffer;Lorg/lwjgl/util/freetype/FT_Face;FFFFLjava/lang/String;)V + p 1 fontMemory + p 2 face + p 3 size + p 4 oversample + p 5 shiftX + p 6 shiftY + p 7 skip +c com/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph ezp$a net/minecraft/class_395$class_397 + f Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider; field_2336 a field_2336 + f I width b field_2338 + f I height c field_2337 + f F bearingX d field_2334 + f F bearingY e field_2333 + f F advance f field_2332 + f I index g field_2335 + m (Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider;FFIIFI)V + p 2 bearingX + p 3 bearingY + p 4 width + p 5 height + p 6 advance + p 7 index +c com/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph$1 ezp$a$1 net/minecraft/class_395$class_397$1 + f Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph; field_37843 a field_37843 + m (Lcom/mojang/blaze3d/font/TrueTypeGlyphProvider$Glyph;)V +c com/mojang/blaze3d/font/package-info ezq net/minecraft/class_6181 +c com/mojang/blaze3d/package-info ezr net/minecraft/class_6182 +c com/mojang/blaze3d/pipeline/MainTarget ezs net/minecraft/class_6364 + f I DEFAULT_WIDTH a field_33724 + f I DEFAULT_HEIGHT b field_33725 + f Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension; DEFAULT_DIMENSIONS l field_33726 + m (Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension;)Z allocateColorAttachment a method_36801 + p 1 dimension + m (II)V createFrameBuffer b method_36802 + p 1 width + p 2 height + m (Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension;)Z allocateDepthAttachment b method_36803 + p 1 dimension + m (II)Lcom/mojang/blaze3d/pipeline/MainTarget$Dimension; allocateAttachments c method_36804 + p 1 width + p 2 height + m (II)V + p 1 width + p 2 height + m ()V +c com/mojang/blaze3d/pipeline/MainTarget$AttachmentState ezs$a net/minecraft/class_6364$class_6365 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; NONE a field_33727 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; COLOR b field_33728 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; DEPTH c field_33729 + f Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; COLOR_DEPTH d field_33730 + f [Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; VALUES e field_33731 + f [Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; $VALUES f field_33732 + m ()[Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; $values a method_36806 + m (Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState;)Lcom/mojang/blaze3d/pipeline/MainTarget$AttachmentState; with a method_36807 + p 1 otherState + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/pipeline/MainTarget$Dimension ezs$b net/minecraft/class_6364$class_6366 + f I width a field_33733 + f I height b field_33734 + m (II)Ljava/util/List; listWithFallback a method_36808 + p 0 width + p 1 height + m (II)V + p 1 width + p 2 height +c com/mojang/blaze3d/pipeline/RenderCall ezt net/minecraft/class_4573 +c com/mojang/blaze3d/pipeline/RenderPipeline ezu net/minecraft/class_4491 + f Ljava/util/List; renderCalls a field_20453 + f Z isRecording b field_31899 + f I recordingBuffer c field_20454 + f Z isProcessing d field_31900 + f I processedBuffer e field_20455 + f I renderingBuffer f field_20456 + m ()Z canBeginRecording a method_35599 + m (Lcom/mojang/blaze3d/pipeline/RenderCall;)V recordRenderCall a method_35600 + p 1 renderCall + m ()Z beginRecording b method_35601 + m ()V endRecording c method_35602 + m ()Z canBeginProcessing d method_35603 + m ()Z beginProcessing e method_35604 + m ()V processRecordedQueue f method_35605 + m ()V endProcessing g method_35606 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; startRendering h method_35607 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; getRecordingQueue i method_35608 + m ()Ljava/util/concurrent/ConcurrentLinkedQueue; getProcessedQueue j method_35609 + m ()V +c com/mojang/blaze3d/pipeline/RenderTarget ezv net/minecraft/class_276 + f I RED_CHANNEL a field_31901 + f I GREEN_CHANNEL b field_31902 + f I width c field_1482 + f I height d field_1481 + f I viewWidth e field_1480 + f I viewHeight f field_1477 + f Z useDepth g field_1478 + f I frameBufferId h field_1476 + f I colorTextureId i field_1475 + f I depthBufferId j field_1474 + f I filterMode k field_1483 + f I BLUE_CHANNEL l field_31903 + f I ALPHA_CHANNEL m field_31904 + f [F clearChannels n field_1479 + m ()V destroyBuffers a method_1238 + m (FFFF)V setClearColor a method_1236 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (I)V setFilterMode a method_58226 + p 1 filterMode + m (II)V blitToScreen a method_1237 + p 1 width + p 2 height + m (IIZ)V resize a method_1234 + p 1 width + p 2 height + p 3 clearError + m (IZ)V setFilterMode a method_1232 + p 1 filterMode + p 2 force + m (Lcom/mojang/blaze3d/pipeline/RenderTarget;)V copyDepthFrom a method_29329 + p 1 otherTarget + m (Z)V bindWrite a method_1235 + p 1 setViewport + m ()V checkStatus b method_1239 + m (IIZ)V createBuffers b method_1231 + p 1 width + p 2 height + p 3 clearError + m (Z)V clear b method_1230 + p 1 clearError + m ()V bindRead c method_35610 + m (IIZ)V blitToScreen c method_22594 + p 1 width + p 2 height + p 3 disableBlend + m (Z)V _bindWrite c method_22595 + p 1 setViewport + m ()V unbindRead d method_1242 + m (IIZ)V _resize d method_22596 + p 1 width + p 2 height + p 3 clearError + m (Z)V method_22597 d method_22597 + m ()V unbindWrite e method_1240 + m (IIZ)V _blitToScreen e method_1233 + p 1 width + p 2 height + p 3 disableBlend + m ()I getColorTextureId f method_30277 + m (IIZ)V method_22600 f method_22600 + m ()I getDepthTextureId g method_30278 + m ()V method_22598 h method_22598 + m ()[F method_36809 i method_36809 + m (Z)V + p 1 useDepth +c com/mojang/blaze3d/pipeline/TextureTarget ezw net/minecraft/class_6367 + m (IIZZ)V + p 1 width + p 2 height + p 3 useDepth + p 4 clearError +c com/mojang/blaze3d/pipeline/package-info ezx net/minecraft/class_6183 +c com/mojang/blaze3d/platform/ClipboardManager ezy net/minecraft/class_3674 + f I FORMAT_UNAVAILABLE a field_31905 + f Ljava/nio/ByteBuffer; clipboardScratchBuffer b field_16236 + m (JLjava/lang/String;)V setClipboard a method_15979 + p 1 window + p 3 clipboardContent + m (JLjava/nio/ByteBuffer;[B)V pushClipboard a method_15978 + p 0 window + p 2 buffer + p 3 clipboardContent + m (JLorg/lwjgl/glfw/GLFWErrorCallbackI;)Ljava/lang/String; getClipboard a method_15977 + p 1 window + p 3 errorCallback + m ()V +c com/mojang/blaze3d/platform/DebugMemoryUntracker ezz net/minecraft/class_301 + f Ljava/lang/invoke/MethodHandle; UNTRACK a field_1643 + m ()Ljava/lang/invoke/MethodHandle; method_1408 a method_1408 + m (J)V untrack a method_1407 + p 0 memAddr + m (Lorg/lwjgl/system/Pointer;)V untrack a method_1406 + p 0 pointer + m ()V + m ()V +c com/mojang/blaze3d/platform/DisplayData faa net/minecraft/class_543 + f I width a field_3285 + f I height b field_3284 + f Ljava/util/OptionalInt; fullscreenWidth c field_3282 + f Ljava/util/OptionalInt; fullscreenHeight d field_3286 + f Z isFullscreen e field_3283 + m (IILjava/util/OptionalInt;Ljava/util/OptionalInt;Z)V + p 1 width + p 2 height + p 3 fullscreenWidth + p 4 fullscreenHeight + p 5 isFullscreen +c com/mojang/blaze3d/platform/GlDebug fab net/minecraft/class_1008 + f Lorg/slf4j/Logger; LOGGER a field_4921 + f I CIRCULAR_LOG_SIZE b field_33669 + f Ljava/util/Queue; MESSAGE_BUFFER c field_33670 + f Lcom/mojang/blaze3d/platform/GlDebug$LogEntry; lastEntry d field_33671 + f Ljava/util/List; DEBUG_LEVELS e field_4915 + f Ljava/util/List; DEBUG_LEVELS_ARB f field_4919 + f Z debugEnabled g field_33672 + m ()Ljava/util/List; getLastOpenGlDebugMessages a method_36478 + m (I)Ljava/lang/String; sourceToString a method_4222 + p 0 source + m (IIIIIJJ)V printDebugLog a method_4224 + p 0 source + c The GLenum source represented as an ordinal integer. + p 1 type + c The GLenum type represented as an ordinal integer. + p 2 id + c The unbounded integer id of the message callback. + p 3 severity + c The GLenum severity represented as an ordinal integer. + p 4 messageLength + c The {@link org.lwjgl.opengl.GLDebugMessageCallback} length argument. + p 5 message + c The {@link org.lwjgl.opengl.GLDebugMessageCallback} message argument + p 7 userParam + c A user supplied pointer that will be passed on each invocation of callback. + m (IZ)V enableDebugCallback a method_4227 + p 0 debugVerbosity + p 1 synchronous + m ()Z isDebugEnabled b method_36479 + m (I)Ljava/lang/String; typeToString b method_4228 + p 0 type + m (I)Ljava/lang/String; severityToString c method_4226 + p 0 severity + m (I)Ljava/lang/String; printUnknownToken d method_4225 + p 0 token + m ()V + m ()V +c com/mojang/blaze3d/platform/GlDebug$LogEntry fab$a net/minecraft/class_1008$class_6359 + f I id a field_33673 + f I source b field_33674 + f I type c field_33675 + f I severity d field_33676 + f Ljava/lang/String; message e field_33677 + f I count f field_33678 + m (IIIILjava/lang/String;)Z isSame a method_36480 + p 1 source + p 2 type + p 3 id + p 4 severity + p 5 message + m (IIIILjava/lang/String;)V + p 1 source + p 2 type + p 3 id + p 4 severity + p 5 message +c com/mojang/blaze3d/platform/GlUtil fac net/minecraft/class_4494 + m ()Ljava/lang/String; getVendor a method_22088 + m (I)Ljava/nio/ByteBuffer; allocateMemory a method_35611 + p 0 size + m (Ljava/nio/Buffer;)V freeMemory a method_35613 + p 0 buffer + m ()Ljava/lang/String; getCpuInfo b method_22089 + m ()Ljava/lang/String; getRenderer c method_22090 + m ()Ljava/lang/String; getOpenGLVersion d method_22091 + m ()V +c com/mojang/blaze3d/platform/IconSet fad net/minecraft/class_8518 + f Lcom/mojang/blaze3d/platform/IconSet; RELEASE a field_44650 + f Lcom/mojang/blaze3d/platform/IconSet; SNAPSHOT b field_44651 + f [Ljava/lang/String; path c field_44652 + f [Lcom/mojang/blaze3d/platform/IconSet; $VALUES d field_44653 + m ()[Lcom/mojang/blaze3d/platform/IconSet; $values a method_51417 + m (Lnet/minecraft/server/packs/PackResources;)Ljava/util/List; getStandardIcons a method_51418 + p 1 resources + m (Lnet/minecraft/server/packs/PackResources;Ljava/lang/String;)Lnet/minecraft/server/packs/resources/IoSupplier; getFile a method_51419 + p 1 resources + p 2 filename + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/resources/IoSupplier; getMacIcon b method_51420 + p 1 resources + m (Ljava/lang/String;I[Ljava/lang/String;)V + p 3 path + m ()V +c com/mojang/blaze3d/platform/InputConstants fae net/minecraft/class_3675 + f I KEY_Q A field_31906 + f I KEY_R B field_31907 + f I KEY_S C field_31908 + f I KEY_T D field_31909 + f I KEY_U E field_31910 + f I KEY_V F field_31911 + f I KEY_W G field_31912 + f I KEY_X H field_31913 + f I KEY_Y I field_31914 + f I KEY_Z J field_31915 + f I KEY_F1 K field_31916 + f I KEY_F2 L field_31917 + f I KEY_F3 M field_31918 + f I KEY_F4 N field_31919 + f I KEY_F5 O field_31920 + f I KEY_F6 P field_31921 + f I KEY_F7 Q field_31922 + f I KEY_F8 R field_31923 + f I KEY_F9 S field_31924 + f I KEY_F10 T field_31925 + f I KEY_F11 U field_31926 + f I KEY_F12 V field_31927 + f I KEY_F13 W field_31928 + f I KEY_F14 X field_31929 + f I KEY_F15 Y field_31930 + f I KEY_F16 Z field_31931 + f I KEY_UP aA field_31932 + f I KEY_ADD aB field_31933 + f I KEY_APOSTROPHE aC field_31934 + f I KEY_BACKSLASH aD field_31935 + f I KEY_COMMA aE field_31936 + f I KEY_EQUALS aF field_31937 + f I KEY_GRAVE aG field_31938 + f I KEY_LBRACKET aH field_31939 + f I KEY_0 a field_31940 + f I KEY_MINUS aI field_31941 + f I KEY_MULTIPLY aJ field_31942 + f I KEY_PERIOD aK field_31943 + f I KEY_RBRACKET aL field_31944 + f I KEY_SEMICOLON aM field_31945 + f I KEY_SLASH aN field_31946 + f I KEY_SPACE aO field_31947 + f I KEY_TAB aP field_31948 + f I KEY_LALT aQ field_31949 + f I KEY_LCONTROL aR field_31950 + f I KEY_LSHIFT aS field_31951 + f I KEY_LWIN aT field_31952 + f I KEY_RALT aU field_31953 + f I KEY_RCONTROL aV field_31954 + f I KEY_RSHIFT aW field_31955 + f I KEY_RWIN aX field_31956 + f I KEY_RETURN aY field_31957 + f I KEY_ESCAPE aZ field_31958 + f I KEY_F17 aa field_31959 + f I KEY_F18 ab field_31960 + f I KEY_F19 ac field_31961 + f I KEY_F20 ad field_31962 + f I KEY_F21 ae field_31963 + f I KEY_F22 af field_31964 + f I KEY_F23 ag field_31965 + f I KEY_F24 ah field_31966 + f I KEY_F25 ai field_31967 + f I KEY_NUMLOCK aj field_31968 + f I KEY_NUMPAD0 ak field_31969 + f I KEY_NUMPAD1 al field_31970 + f I KEY_NUMPAD2 am field_31971 + f I KEY_NUMPAD3 an field_31972 + f I KEY_NUMPAD4 ao field_31973 + f I KEY_NUMPAD5 ap field_31974 + f I KEY_NUMPAD6 aq field_31975 + f I KEY_NUMPAD7 ar field_31976 + f I KEY_NUMPAD8 as field_31977 + f I KEY_NUMPAD9 at field_31978 + f I KEY_NUMPADCOMMA au field_31979 + f I KEY_NUMPADENTER av field_31980 + f I KEY_NUMPADEQUALS aw field_31981 + f I KEY_DOWN ax field_31982 + f I KEY_LEFT ay field_31983 + f I KEY_RIGHT az field_31984 + f I KEY_1 b field_31985 + f I KEY_BACKSPACE ba field_31986 + f I KEY_DELETE bb field_31987 + f I KEY_END bc field_31988 + f I KEY_HOME bd field_31989 + f I KEY_INSERT be field_31990 + f I KEY_PAGEDOWN bf field_31991 + f I KEY_PAGEUP bg field_31992 + f I KEY_CAPSLOCK bh field_31993 + f I KEY_PAUSE bi field_31994 + f I KEY_SCROLLLOCK bj field_31995 + f I KEY_PRINTSCREEN bk field_31996 + f I PRESS bl field_31997 + f I RELEASE bm field_31998 + f I REPEAT bn field_31999 + f I MOUSE_BUTTON_LEFT bo field_32000 + f I MOUSE_BUTTON_MIDDLE bp field_32001 + f I MOUSE_BUTTON_RIGHT bq field_32002 + f I MOD_CONTROL br field_32003 + f I CURSOR bs field_32004 + f I CURSOR_DISABLED bt field_32005 + f I CURSOR_NORMAL bu field_32006 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; UNKNOWN bv field_16237 + f Ljava/lang/invoke/MethodHandle; GLFW_RAW_MOUSE_MOTION_SUPPORTED bw field_20333 + f I GLFW_RAW_MOUSE_MOTION bx field_20334 + f I KEY_2 c field_32007 + f I KEY_3 d field_32008 + f I KEY_4 e field_32009 + f I KEY_5 f field_32010 + f I KEY_6 g field_32011 + f I KEY_7 h field_32012 + f I KEY_8 i field_32013 + f I KEY_9 j field_32014 + f I KEY_A k field_32015 + f I KEY_B l field_32016 + f I KEY_C m field_32017 + f I KEY_D n field_32018 + f I KEY_E o field_32019 + f I KEY_F p field_32020 + f I KEY_G q field_32021 + f I KEY_H r field_32022 + f I KEY_I s field_32023 + f I KEY_J t field_32024 + f I KEY_K u field_32025 + f I KEY_L v field_32026 + f I KEY_M w field_32027 + f I KEY_N x field_32028 + f I KEY_O y field_32029 + f I KEY_P z field_32030 + m ()Z isRawMouseInputSupported a method_21735 + m (II)Lcom/mojang/blaze3d/platform/InputConstants$Key; getKey a method_15985 + p 0 keyCode + p 1 scanCode + m (JI)Z isKeyDown a method_15987 + p 0 window + p 2 key + m (JIDD)V grabOrReleaseMouse a method_15984 + p 0 window + p 2 cursorValue + p 3 xPos + p 5 yPos + m (JLorg/lwjgl/glfw/GLFWCursorPosCallbackI;Lorg/lwjgl/glfw/GLFWMouseButtonCallbackI;Lorg/lwjgl/glfw/GLFWScrollCallbackI;Lorg/lwjgl/glfw/GLFWDropCallbackI;)V setupMouseCallbacks a method_15983 + p 0 window + p 2 cursorPositionCallback + p 3 mouseButtonCallback + p 4 scrollCallback + p 5 dragAndDropCallback + m (JLorg/lwjgl/glfw/GLFWKeyCallbackI;Lorg/lwjgl/glfw/GLFWCharModsCallbackI;)V setupKeyboardCallbacks a method_15986 + p 0 window + p 2 keyCallback + p 3 charModifierCallback + m (JZ)V updateRawMouseInput a method_21736 + p 0 window + p 2 enableRawMouseMotion + m (Ljava/lang/String;)Lcom/mojang/blaze3d/platform/InputConstants$Key; getKey a method_15981 + p 0 name + m ()V + m ()V +c com/mojang/blaze3d/platform/InputConstants$Key fae$a net/minecraft/class_3675$class_306 + f Ljava/lang/String; name a field_1663 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; type b field_1666 + f I value c field_1665 + f Lnet/minecraft/util/LazyLoadedValue; displayName d field_24196 + f Ljava/util/Map; NAME_MAP e field_1664 + m ()Lcom/mojang/blaze3d/platform/InputConstants$Type; getType a method_1442 + m (Lcom/mojang/blaze3d/platform/InputConstants$Type;ILjava/lang/String;)Lnet/minecraft/network/chat/Component; method_27444 a method_27444 + m ()I getValue b method_1444 + m ()Ljava/lang/String; getName c method_1441 + m ()Lnet/minecraft/network/chat/Component; getDisplayName d method_27445 + m ()Ljava/util/OptionalInt; getNumericKeyValue e method_30103 + m (Ljava/lang/String;Lcom/mojang/blaze3d/platform/InputConstants$Type;I)V + p 1 name + p 2 type + p 3 value + m ()V +c com/mojang/blaze3d/platform/InputConstants$Type fae$b net/minecraft/class_3675$class_307 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; KEYSYM a field_1668 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; SCANCODE b field_1671 + f Lcom/mojang/blaze3d/platform/InputConstants$Type; MOUSE c field_1672 + f Ljava/lang/String; KEY_KEYBOARD_UNKNOWN d field_44919 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; map e field_1674 + f Ljava/lang/String; defaultPrefix f field_1673 + f Ljava/util/function/BiFunction; displayTextSupplier g field_24197 + f [Lcom/mojang/blaze3d/platform/InputConstants$Type; $VALUES h field_1670 + m ()[Lcom/mojang/blaze3d/platform/InputConstants$Type; $values a method_36810 + m (I)Lcom/mojang/blaze3d/platform/InputConstants$Key; getOrCreate a method_1447 + p 1 keyCode + m (Lcom/mojang/blaze3d/platform/InputConstants$Type;Ljava/lang/String;I)V addKey a method_1446 + p 0 type + p 1 name + p 2 keyCode + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27447 a method_27447 + m (I)Lcom/mojang/blaze3d/platform/InputConstants$Key; method_27448 b method_27448 + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27449 b method_27449 + m (Ljava/lang/Integer;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27450 c method_27450 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BiFunction;)V + p 3 defaultPrefix + p 4 displayTextSupplier + m ()V +c com/mojang/blaze3d/platform/Lighting faf net/minecraft/class_308 + f Lorg/joml/Vector3f; DIFFUSE_LIGHT_0 a field_24426 + f Lorg/joml/Vector3f; DIFFUSE_LIGHT_1 b field_24427 + f Lorg/joml/Vector3f; NETHER_DIFFUSE_LIGHT_0 c field_24428 + f Lorg/joml/Vector3f; NETHER_DIFFUSE_LIGHT_1 d field_24429 + f Lorg/joml/Vector3f; INVENTORY_DIFFUSE_LIGHT_0 e field_29567 + f Lorg/joml/Vector3f; INVENTORY_DIFFUSE_LIGHT_1 f field_29568 + m ()V setupNetherLevel a method_1452 + m (Lorg/joml/Quaternionf;)V setupForEntityInInventory a method_56819 + p 0 quaternion + m ()V setupLevel b method_27869 + m ()V setupForFlatItems c method_24210 + m ()V setupFor3DItems d method_24211 + m ()V setupForEntityInInventory e method_34742 + m ()V + m ()V +c com/mojang/blaze3d/platform/MacosUtil fag net/minecraft/class_6417 + f I NS_RESIZABLE_WINDOW_MASK a field_46537 + f I NS_FULL_SCREEN_WINDOW_MASK b field_34053 + m (J)V exitNativeFullscreen a method_37461 + p 0 windowId + m (Lnet/minecraft/server/packs/resources/IoSupplier;)V loadIcon a method_41718 + p 0 iconStreamSupplier + m (Lca/weblite/objc/NSObject;)Z isInNativeFullscreen a method_37462 + p 0 nsWindow + m (J)V clearResizableBit b method_54101 + p 0 windowId + m (Lca/weblite/objc/NSObject;)J getStyleMask b method_54102 + p 0 nsWindow + m (J)Ljava/util/Optional; getNsWindow c method_37463 + p 0 windowId + m (Lca/weblite/objc/NSObject;)V toggleNativeFullscreen c method_37464 + p 0 nsWindow + m (Lca/weblite/objc/NSObject;)V method_54103 d method_54103 + m ()V +c com/mojang/blaze3d/platform/Monitor fah net/minecraft/class_313 + f J monitor a field_1800 + f Ljava/util/List; videoModes b field_1797 + f Lcom/mojang/blaze3d/platform/VideoMode; currentMode c field_1802 + f I x d field_1799 + f I y e field_1798 + m ()V refreshVideoModes a method_1615 + m (I)Lcom/mojang/blaze3d/platform/VideoMode; getMode a method_1620 + p 1 index + m (Lcom/mojang/blaze3d/platform/VideoMode;)I getVideoModeIndex a method_1619 + p 1 videoMode + m (Ljava/util/Optional;)Lcom/mojang/blaze3d/platform/VideoMode; getPreferredVidMode a method_1614 + p 1 videoMode + m ()Lcom/mojang/blaze3d/platform/VideoMode; getCurrentMode b method_1617 + m ()I getX c method_1616 + m ()I getY d method_1618 + m ()I getModeCount e method_1621 + m ()J getMonitor f method_1622 + m (J)V + p 1 monitor +c com/mojang/blaze3d/platform/MonitorCreator fai net/minecraft/class_3676 +c com/mojang/blaze3d/platform/NativeImage faj net/minecraft/class_1011 + f Lorg/slf4j/Logger; LOGGER a field_21684 + f Ljava/util/Set; OPEN_OPTIONS b field_4992 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; format c field_4986 + f I width d field_4991 + f I height e field_4989 + f Z useStbFree f field_4990 + f J pixels g field_4988 + f J size h field_4987 + m ()I getWidth a method_4307 + m (F)V downloadDepthBuffer a method_35620 + p 1 unused + m (II)I getPixelRGBA a method_4315 + p 1 x + p 2 y + m (IIB)V setPixelLuminance a method_35621 + p 1 x + p 2 y + p 3 luminance + m (III)V setPixelRGBA a method_4305 + p 1 x + p 2 y + p 3 abgrColor + m (IIIII)V fillRect a method_4326 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 value + m (IIIIIIIZZ)V upload a method_4312 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 mipmap + p 9 autoClose + m (IIIIIIIZZZZ)V upload a method_22619 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 blur + p 9 clamp + p 10 mipmap + p 11 autoClose + m (IIIIIIZZ)V copyRect a method_4304 + p 1 xFrom + p 2 yFrom + p 3 xToDelta + p 4 yToDelta + p 5 width + p 6 height + p 7 mirrorX + p 8 mirrorY + m (IIIILcom/mojang/blaze3d/platform/NativeImage;)V resizeSubRectTo a method_4300 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 image + m (IIIZ)V upload a method_4301 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 mipmap + m (IZ)V downloadTexture a method_4327 + p 1 level + p 2 opaque + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4310 + p 0 format + p 1 textureStream + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4303 + p 0 format + p 1 textureData + m (Lcom/mojang/blaze3d/platform/NativeImage;)V copyFrom a method_4317 + p 1 other + m (Lcom/mojang/blaze3d/platform/NativeImage;IIIIIIZZ)V copyRect a method_47594 + p 1 source + p 2 xFrom + p 3 yFrom + p 4 xTo + p 5 yTo + p 6 width + p 7 height + p 8 mirrorX + p 9 mirrorY + m (Ljava/io/File;)V writeToFile a method_4325 + p 1 file + m (Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4309 + p 0 textureStream + m (Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/platform/NativeImage; read a method_4324 + p 0 textureData + m (Ljava/nio/channels/WritableByteChannel;)Z writeToChannel a method_24032 + p 1 channel + m (Ljava/nio/file/Path;)V writeToFile a method_4314 + p 1 path + m (Ljava/util/function/IntUnaryOperator;)Lcom/mojang/blaze3d/platform/NativeImage; mappedCopy a method_48462 + p 1 function + m (Lorg/lwjgl/util/freetype/FT_Face;I)Z copyFromFont a method_4316 + p 1 face + p 2 index + m (ZZ)V setFilter a method_4308 + p 0 linear + p 1 mipmap + m ([B)Lcom/mojang/blaze3d/platform/NativeImage; read a method_49277 + p 0 bytes + m ()I getHeight b method_4323 + m (II)B getRedOrLuminance b method_35623 + p 1 x + p 2 y + m (III)V blendPixel b method_35624 + p 1 x + p 2 y + p 3 abgrColor + m (IIIIIIIZZZZ)V _upload b method_4321 + p 1 level + p 2 xOffset + p 3 yOffset + p 4 unpackSkipPixels + p 5 unpackSkipRows + p 6 width + p 7 height + p 8 blur + p 9 clamp + p 10 mipmap + p 11 autoClose + m (Ljava/util/function/IntUnaryOperator;)V applyToAllPixels b method_51596 + p 1 function + m ()Lcom/mojang/blaze3d/platform/NativeImage$Format; format c method_4318 + m (II)B getGreenOrLuminance c method_35625 + p 1 x + p 2 y + m (IIIIIIIZZZZ)V method_22620 c method_22620 + m ()[I getPixelsRGBA d method_48463 + m (II)B getBlueOrLuminance d method_35626 + p 1 x + p 2 y + m ()[I makePixelArray e method_4322 + m (II)B getLuminanceOrAlpha e method_4311 + p 1 x + p 2 y + m ()V drawPixels f method_35627 + m (II)Z isOutsideBounds f method_36559 + p 1 x + p 2 y + m ()[B asByteArray g method_24036 + m ()V flipY h method_4319 + m ()V untrack i method_4302 + m ()V checkAllocated j method_4320 + m (IIZ)V + p 1 width + p 2 height + p 3 useCalloc + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;IIZ)V + p 1 format + p 2 width + p 3 height + p 4 useCalloc + m (Lcom/mojang/blaze3d/platform/NativeImage$Format;IIZJ)V + p 1 format + p 2 width + p 3 height + p 4 useStbFree + p 5 pixels + m ()V +c com/mojang/blaze3d/platform/NativeImage$Format faj$a net/minecraft/class_1011$class_1012 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; RGBA a field_4997 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; RGB b field_5001 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; LUMINANCE_ALPHA c field_5002 + f Lcom/mojang/blaze3d/platform/NativeImage$Format; LUMINANCE d field_4998 + f I components e field_4994 + f I glFormat f field_4993 + f Z hasRed g field_5005 + f Z hasGreen h field_5004 + f Z hasBlue i field_5003 + f Z hasLuminance j field_5000 + f Z hasAlpha k field_4999 + f I redOffset l field_5010 + f I greenOffset m field_5009 + f I blueOffset n field_5008 + f I luminanceOffset o field_5007 + f I alphaOffset p field_5006 + f Z supportedByStb q field_4996 + f [Lcom/mojang/blaze3d/platform/NativeImage$Format; $VALUES r field_4995 + m ()I components a method_4335 + m (I)Lcom/mojang/blaze3d/platform/NativeImage$Format; getStbFormat a method_4336 + p 0 channels + m ()V setPackPixelStoreState b method_4339 + m ()V setUnpackPixelStoreState c method_4340 + m ()I glFormat d method_4333 + m ()Z hasRed e method_35628 + m ()Z hasGreen f method_35629 + m ()Z hasBlue g method_35630 + m ()Z hasLuminance h method_35631 + m ()Z hasAlpha i method_4329 + m ()I redOffset j method_35632 + m ()I greenOffset k method_35633 + m ()I blueOffset l method_35634 + m ()I luminanceOffset m method_35635 + m ()I alphaOffset n method_4332 + m ()Z hasLuminanceOrRed o method_35636 + m ()Z hasLuminanceOrGreen p method_35637 + m ()Z hasLuminanceOrBlue q method_35638 + m ()Z hasLuminanceOrAlpha r method_4337 + m ()I luminanceOrRedOffset s method_35639 + m ()I luminanceOrGreenOffset t method_35640 + m ()I luminanceOrBlueOffset u method_35641 + m ()I luminanceOrAlphaOffset v method_4330 + m ()Z supportedByStb w method_4338 + m ()[Lcom/mojang/blaze3d/platform/NativeImage$Format; $values x method_36811 + m (Ljava/lang/String;IIIZZZZZIIIIIZ)V + p 3 components + p 4 glFormat + p 5 hasRed + p 6 hasGreen + p 7 hasBlue + p 8 hasLuminance + p 9 hasAlpha + p 10 redOffset + p 11 greenOffset + p 12 blueOffset + p 13 luminanceOffset + p 14 alphaOffset + p 15 supportedByStb + m ()V +c com/mojang/blaze3d/platform/NativeImage$InternalGlFormat faj$b net/minecraft/class_1011$class_1013 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RGBA a field_5012 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RGB b field_5011 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RG c field_33618 + f Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; RED d field_33619 + f I glFormat e field_5015 + f [Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; $VALUES f field_5014 + m ()I glFormat a method_4341 + m ()[Lcom/mojang/blaze3d/platform/NativeImage$InternalGlFormat; $values b method_36812 + m (Ljava/lang/String;II)V + p 3 glFormat + m ()V +c com/mojang/blaze3d/platform/NativeImage$WriteCallback faj$c net/minecraft/class_1011$class_1014 + f Ljava/nio/channels/WritableByteChannel; output a field_5018 + f Ljava/io/IOException; exception b field_5019 + m ()V throwIfException a method_4342 + m (Ljava/nio/channels/WritableByteChannel;)V + p 1 output +c com/mojang/blaze3d/platform/ScreenManager fak net/minecraft/class_323 + f Lorg/slf4j/Logger; LOGGER a field_37266 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; monitors b field_1993 + f Lcom/mojang/blaze3d/platform/MonitorCreator; monitorCreator c field_1991 + m ()V shutdown a method_15992 + m (III)I clamp a method_15991 + p 0 value + p 1 min + p 2 max + m (J)Lcom/mojang/blaze3d/platform/Monitor; getMonitor a method_1680 + p 1 monitorID + m (JI)V onMonitorChange a method_1683 + p 1 monitorID + p 3 opCode + m (Lcom/mojang/blaze3d/platform/Window;)Lcom/mojang/blaze3d/platform/Monitor; findBestMonitor a method_1681 + p 1 window + m (Lcom/mojang/blaze3d/platform/MonitorCreator;)V + p 1 monitorCreator + m ()V +c com/mojang/blaze3d/platform/VideoMode fal net/minecraft/class_319 + f I width a field_1980 + f I height b field_1979 + f I redBits c field_1978 + f I greenBits d field_1977 + f I blueBits e field_1976 + f I refreshRate f field_1975 + f Ljava/util/regex/Pattern; PATTERN g field_1981 + m ()I getWidth a method_1668 + m (Ljava/lang/String;)Ljava/util/Optional; read a method_1665 + p 0 videoMode + m ()I getHeight b method_1669 + m ()I getRedBits c method_1666 + m ()I getGreenBits d method_1667 + m ()I getBlueBits e method_1672 + m ()I getRefreshRate f method_1671 + m ()Ljava/lang/String; write g method_1670 + m (IIIIII)V + p 1 width + p 2 height + p 3 redBits + p 4 greenBits + p 5 blueBits + p 6 refreshRate + m (Lorg/lwjgl/glfw/GLFWVidMode$Buffer;)V + p 1 bufferVideoMode + m (Lorg/lwjgl/glfw/GLFWVidMode;)V + p 1 glfwVideoMode + m ()V +c com/mojang/blaze3d/platform/Window fam net/minecraft/class_1041 + f Z vsync A field_16517 + f I BASE_WIDTH a field_52250 + f I BASE_HEIGHT b field_52251 + f Lorg/slf4j/Logger; LOGGER c field_5178 + f Lorg/lwjgl/glfw/GLFWErrorCallback; defaultErrorCallback d field_5190 + f Lcom/mojang/blaze3d/platform/WindowEventHandler; eventHandler e field_5176 + f Lcom/mojang/blaze3d/platform/ScreenManager; screenManager f field_5195 + f J window g field_5187 + f I windowedX h field_5175 + f I windowedY i field_5185 + f I windowedWidth j field_5174 + f I windowedHeight k field_5184 + f Ljava/util/Optional; preferredFullscreenVideoMode l field_5193 + f Z fullscreen m field_5191 + f Z actuallyFullscreen n field_5177 + f I x o field_5183 + f I y p field_5198 + f I width q field_5182 + f I height r field_5197 + f I framebufferWidth s field_5181 + f I framebufferHeight t field_5196 + f I guiScaledWidth u field_5180 + f I guiScaledHeight v field_5194 + f D guiScale w field_5179 + f Ljava/lang/String; errorSection x field_5192 + f Z dirty y field_5186 + f I framerateLimit z field_16238 + m ()Ljava/lang/String; getPlatform a method_60793 + m (D)V setGuiScale a method_15997 + p 1 scaleFactor + m (I)V setFramerateLimit a method_15999 + p 1 limit + m (II)V setWindowed a method_36813 + p 1 windowedWidth + p 2 windowedHeight + m (IJ)V defaultErrorCallback a method_4482 + p 1 error + p 2 description + m (IZ)I calculateScale a method_4476 + p 1 guiScale + p 2 forceUnicode + m (JII)V onMove a method_4478 + p 1 window + p 3 x + p 4 y + m (JZ)V onFocus a method_4494 + p 1 window + p 3 hasFocus + m (Lnet/minecraft/server/packs/PackResources;Lcom/mojang/blaze3d/platform/IconSet;)V setIcon a method_4491 + p 1 packResources + p 2 iconSet + m (Ljava/lang/String;)V setErrorSection a method_4474 + p 1 errorSection + m (Ljava/util/Optional;)V setPreferredFullscreenVideoMode a method_4505 + p 1 preferredFullscreenVideoMode + m (Ljava/util/function/BiConsumer;)V checkGlfwError a method_4492 + p 0 errorConsumer + m (Z)V updateVsync a method_4497 + p 1 vsync + m ()I getRefreshRate b method_22092 + m (I)V setWidth b method_35642 + p 1 framebufferWidth + m (IJ)V bootCrash b method_4501 + p 0 error + p 1 description + m (JII)V onFramebufferResize b method_4504 + p 1 window + p 3 framebufferWidth + p 4 framebufferHeight + m (JZ)V onEnter b method_30132 + p 1 window + p 3 cursorEntered + c {@code true} if the cursor entered the window, {@code false} if the cursor left + m (Ljava/lang/String;)V setTitle b method_24286 + p 1 title + m (Z)V updateRawMouseInput b method_21668 + p 1 enableRawMouseMotion + m ()Z shouldClose c method_22093 + m (I)V setHeight c method_35643 + p 1 framebufferHeight + m (JII)V onResize c method_4488 + p 1 window + p 3 width + p 4 height + m (Z)V updateFullscreen c method_4485 + p 1 vsyncEnabled + m ()V setDefaultErrorCallback d method_4513 + m ()I getFramerateLimit e method_16000 + m ()V updateDisplay f method_15998 + m ()Ljava/util/Optional; getPreferredFullscreenVideoMode g method_4511 + m ()V changeFullscreenVideoMode h method_4475 + m ()V toggleFullScreen i method_4500 + m ()J getWindow j method_4490 + c Gets a pointer to the native window object that is passed to GLFW. + m ()Z isFullscreen k method_4498 + m ()I getWidth l method_4489 + m ()I getHeight m method_4506 + m ()I getScreenWidth n method_4480 + m ()I getScreenHeight o method_4507 + m ()I getGuiScaledWidth p method_4486 + m ()I getGuiScaledHeight q method_4502 + m ()I getX r method_4499 + m ()I getY s method_4477 + m ()D getGuiScale t method_4495 + m ()Lcom/mojang/blaze3d/platform/Monitor; findBestMonitor u method_20831 + m ()V setBootErrorCallback v method_4481 + m ()V refreshFramebufferSize w method_4483 + m ()V setMode x method_4479 + m (Lcom/mojang/blaze3d/platform/WindowEventHandler;Lcom/mojang/blaze3d/platform/ScreenManager;Lcom/mojang/blaze3d/platform/DisplayData;Ljava/lang/String;Ljava/lang/String;)V + p 1 eventHandler + p 2 screenManager + p 3 displayData + p 4 preferredFullscreenVideoMode + p 5 title + m ()V +c com/mojang/blaze3d/platform/Window$WindowInitFailed fam$a net/minecraft/class_1041$class_4716 + m (Ljava/lang/String;)V +c com/mojang/blaze3d/platform/WindowEventHandler fan net/minecraft/class_3678 + m ()V resizeDisplay a method_15993 + m (Z)V setWindowActive a method_15995 + p 1 windowActive + m ()V cursorEntered b method_30133 +c com/mojang/blaze3d/platform/package-info fao net/minecraft/class_6185 +c com/mojang/blaze3d/preprocessor/GlslPreprocessor fap net/minecraft/class_5913 + f Ljava/lang/String; C_COMMENT a field_32036 + f Ljava/lang/String; LINE_COMMENT b field_33620 + f Ljava/util/regex/Pattern; REGEX_MOJ_IMPORT c field_29200 + f Ljava/util/regex/Pattern; REGEX_VERSION d field_29201 + f Ljava/util/regex/Pattern; REGEX_ENDS_WITH_WHITESPACE e field_33621 + m (Ljava/lang/String;)Ljava/util/List; process a method_34229 + p 1 shaderData + m (Ljava/lang/String;I)Ljava/lang/String; setVersion a method_34230 + p 1 versionData + p 2 glslVersion + m (Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor$Context;)Ljava/lang/String; processVersions a method_34231 + p 1 versionData + p 2 context + m (Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor$Context;Ljava/lang/String;)Ljava/util/List; processImports a method_34232 + p 1 shaderData + p 2 context + p 3 includeDirectory + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Z isDirectiveEnabled a method_36423 + p 0 shaderData + p 1 matcher + m (Ljava/lang/String;Ljava/util/regex/Matcher;I)Z isDirectiveDisabled a method_36424 + p 0 shaderData + p 1 matcher + p 2 offset + m (ZLjava/lang/String;)Ljava/lang/String; applyImport a method_34233 + p 1 useFullPath + p 2 directory + m ()V + m ()V +c com/mojang/blaze3d/preprocessor/GlslPreprocessor$Context fap$a net/minecraft/class_5913$class_5914 + f I glslVersion a field_29202 + f I sourceId b field_29203 + m ()V +c com/mojang/blaze3d/preprocessor/package-info faq net/minecraft/class_6186 +c com/mojang/blaze3d/shaders/AbstractUniform far net/minecraft/class_278 + m (F)V set a method_1251 + p 1 x + m (FF)V set a method_1255 + p 1 x + p 2 y + m (FFF)V set a method_1249 + p 1 x + p 2 y + p 3 z + m (FFFF)V set a method_1254 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFFFF)V setMat2x3 a method_35644 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m10 + p 5 m11 + p 6 m12 + m (FFFFFFFF)V setMat2x4 a method_35645 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + m (FFFFFFFFF)V setMat3x3 a method_35646 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m10 + p 5 m11 + p 6 m12 + p 7 m20 + p 8 m21 + p 9 m22 + m (FFFFFFFFFFFF)V setMat3x4 a method_35647 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + m (FFFFFFFFFFFFFFFF)V setMat4x4 a method_35648 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + p 13 m30 + p 14 m31 + p 15 m32 + p 16 m33 + m (I)V set a method_35649 + p 1 x + m (II)V set a method_35650 + p 1 x + p 2 y + m (III)V set a method_35651 + p 1 x + p 2 y + p 3 z + m (IIII)V setSafe a method_1248 + p 1 x + p 2 y + p 3 z + p 4 w + m (Lorg/joml/Matrix3f;)V set a method_39978 + p 1 matrix + m (Lorg/joml/Matrix4f;)V set a method_1250 + p 1 matrix + m (Lorg/joml/Vector3f;)V set a method_34413 + p 1 vector + m (Lorg/joml/Vector4f;)V set a method_35652 + p 1 vector + m ([F)V set a method_1253 + p 1 valueArray + m (FFFF)V setSafe b method_1252 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFFFF)V setMat3x2 b method_35653 + p 1 m00 + p 2 m01 + p 3 m10 + p 4 m11 + p 5 m20 + p 6 m21 + m (FFFFFFFF)V setMat4x2 b method_35654 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + m (FFFFFFFFFFFF)V setMat4x3 b method_35655 + p 1 m00 + p 2 m01 + p 3 m02 + p 4 m03 + p 5 m10 + p 6 m11 + p 7 m12 + p 8 m13 + p 9 m20 + p 10 m21 + p 11 m22 + p 12 m23 + m (IIII)V set b method_35656 + p 1 x + p 2 y + p 3 z + p 4 w + m (FFFF)V setMat2x2 c method_35657 + p 1 m00 + p 2 m01 + p 3 m10 + p 4 m11 + m ()V +c com/mojang/blaze3d/shaders/BlendMode fas net/minecraft/class_277 + f Lcom/mojang/blaze3d/shaders/BlendMode; lastApplied a field_1484 + f I srcColorFactor b field_1491 + f I srcAlphaFactor c field_1490 + f I dstColorFactor d field_1489 + f I dstAlphaFactor e field_1488 + f I blendFunc f field_1486 + f Z separateBlend g field_1487 + f Z opaque h field_1485 + m ()V apply a method_1244 + m (Ljava/lang/String;)I stringToBlendFunc a method_1247 + c Converts a blend function name to an id, returning add (32774) if not recognized. + p 0 funcName + m ()Z isOpaque b method_1245 + m (Ljava/lang/String;)I stringToBlendFactor b method_1243 + p 0 factorName + m (ZZIIIII)V + p 1 separateBlend + p 2 opaque + p 3 srcColorFactor + p 4 dstColorFactor + p 5 srcAlphaFactor + p 6 dstAlphaFactor + p 7 blendFunc + m ()V + m (III)V + p 1 srcFactor + p 2 dstFactor + p 3 blendFunc + m (IIIII)V + p 1 srcColorFactor + p 2 dstColorFactor + p 3 srcAlphaFactor + p 4 dstAlphaFactor + p 5 blendFunc +c com/mojang/blaze3d/shaders/Effect fat net/minecraft/class_5936 +c com/mojang/blaze3d/shaders/EffectProgram fau net/minecraft/class_5937 + f Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor; PREPROCESSOR a field_29329 + f I references b field_29330 + m (Lcom/mojang/blaze3d/shaders/Effect;)V attachToEffect a method_34414 + p 1 effect + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/EffectProgram; compileShader a method_34415 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + m (Lcom/mojang/blaze3d/shaders/Program$Type;ILjava/lang/String;)V + p 1 type + p 2 id + p 3 name + m ()V +c com/mojang/blaze3d/shaders/EffectProgram$1 fau$1 net/minecraft/class_5937$1 + m ()V +c com/mojang/blaze3d/shaders/FogShape fav net/minecraft/class_6854 + f Lcom/mojang/blaze3d/shaders/FogShape; SPHERE a field_36350 + f Lcom/mojang/blaze3d/shaders/FogShape; CYLINDER b field_36351 + f I index c field_36352 + f [Lcom/mojang/blaze3d/shaders/FogShape; $VALUES d field_36353 + m ()I getIndex a method_40036 + m ()[Lcom/mojang/blaze3d/shaders/FogShape; $values b method_40037 + m (Ljava/lang/String;II)V + p 3 index + m ()V +c com/mojang/blaze3d/shaders/Program faw net/minecraft/class_281 + f I MAX_LOG_LENGTH a field_32037 + f Lcom/mojang/blaze3d/shaders/Program$Type; type b field_1524 + f Ljava/lang/String; name c field_1525 + f I id d field_1523 + m ()V close a method_1282 + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor;)Lcom/mojang/blaze3d/shaders/Program; compileShader a method_1283 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + p 4 preprocessor + m (Lcom/mojang/blaze3d/shaders/Shader;)V attachToShader a method_1281 + p 1 shader + m ()Ljava/lang/String; getName b method_1280 + m (Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;Ljava/io/InputStream;Ljava/lang/String;Lcom/mojang/blaze3d/preprocessor/GlslPreprocessor;)I compileShaderInternal b method_34416 + p 0 type + p 1 name + p 2 shaderData + p 3 sourceName + p 4 preprocessor + m ()I getId c method_34417 + m (Lcom/mojang/blaze3d/shaders/Program$Type;ILjava/lang/String;)V + p 1 type + p 2 id + p 3 name +c com/mojang/blaze3d/shaders/Program$Type faw$a net/minecraft/class_281$class_282 + f Lcom/mojang/blaze3d/shaders/Program$Type; VERTEX a field_1530 + f Lcom/mojang/blaze3d/shaders/Program$Type; FRAGMENT b field_1531 + f Ljava/lang/String; name c field_1526 + f Ljava/lang/String; extension d field_1528 + f I glType e field_1529 + f Ljava/util/Map; programs f field_1527 + f [Lcom/mojang/blaze3d/shaders/Program$Type; $VALUES g field_1532 + m ()Ljava/lang/String; getName a method_1286 + m ()Ljava/lang/String; getExtension b method_1284 + m ()Ljava/util/Map; getPrograms c method_1289 + m ()I getGlType d method_1287 + m ()[Lcom/mojang/blaze3d/shaders/Program$Type; $values e method_36815 + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;I)V + p 3 name + p 4 extension + p 5 glType + m ()V +c com/mojang/blaze3d/shaders/ProgramManager fax net/minecraft/class_285 + f Lorg/slf4j/Logger; LOGGER a field_1551 + m ()I createProgram a method_1306 + m (I)V glUseProgram a method_22094 + p 0 program + m (Lcom/mojang/blaze3d/shaders/Shader;)V releaseProgram a method_1304 + p 0 shader + m (Lcom/mojang/blaze3d/shaders/Shader;)V linkShader b method_1307 + p 0 shader + m ()V + m ()V +c com/mojang/blaze3d/shaders/Shader fay net/minecraft/class_3679 + m ()I getId a method_1270 + m ()V markDirty b method_1279 + m ()Lcom/mojang/blaze3d/shaders/Program; getVertexProgram c method_1274 + m ()Lcom/mojang/blaze3d/shaders/Program; getFragmentProgram d method_1278 + m ()V attachToProgram e method_34418 +c com/mojang/blaze3d/shaders/Uniform faz net/minecraft/class_284 + f I UT_INT1 a field_32038 + f I UT_INT2 b field_32039 + f I UT_INT3 c field_32040 + f I UT_INT4 d field_32041 + f I UT_FLOAT1 e field_32042 + f I UT_FLOAT2 f field_32043 + f I UT_FLOAT3 g field_32044 + f I UT_FLOAT4 h field_32045 + f I UT_MAT2 i field_32046 + f I UT_MAT3 j field_32047 + f I UT_MAT4 k field_32048 + f Lorg/slf4j/Logger; LOGGER l field_1548 + f Z TRANSPOSE_MATRICIES m field_32049 + f I location n field_1545 + f I count o field_1544 + f I type p field_1543 + f Ljava/nio/IntBuffer; intValues q field_1547 + f Ljava/nio/FloatBuffer; floatValues r field_1549 + f Ljava/lang/String; name s field_1546 + f Z dirty t field_1542 + f Lcom/mojang/blaze3d/shaders/Shader; parent u field_1541 + m ()Ljava/lang/String; getName a method_1298 + m (IF)V set a method_35659 + p 1 index + p 2 value + m (IILjava/lang/CharSequence;)V glBindAttribLocation a method_34419 + p 0 program + p 1 index + p 2 name + m (ILjava/lang/CharSequence;)I glGetUniformLocation a method_22096 + p 0 program + p 1 name + m (Ljava/lang/String;)I getTypeFromString a method_1299 + p 0 typeName + m ()V upload b method_1300 + m (I)V setLocation b method_1297 + p 1 location + m (II)V uploadInteger b method_22095 + p 0 location + p 1 value + m (ILjava/lang/CharSequence;)I glGetAttribLocation b method_22097 + p 0 program + p 1 name + m ()I getLocation c method_35660 + m ()I getCount d method_35661 + m ()I getType e method_35662 + m ()Ljava/nio/IntBuffer; getIntBuffer f method_35663 + m ()Ljava/nio/FloatBuffer; getFloatBuffer g method_35664 + m ()V markDirty h method_1302 + m ()V uploadAsInteger i method_1303 + m ()V uploadAsFloat j method_1301 + m ()V uploadAsMatrix k method_1296 + m (Ljava/lang/String;IILcom/mojang/blaze3d/shaders/Shader;)V + p 1 name + p 2 type + p 3 count + p 4 parent + m ()V +c com/mojang/blaze3d/shaders/package-info fba net/minecraft/class_6187 +c com/mojang/blaze3d/systems/TimerQuery fbb net/minecraft/class_7168 + f I nextQueryName a field_37844 + m ()Ljava/util/Optional; getInstance a method_41719 + m ()V beginProfile b method_41720 + m ()Lcom/mojang/blaze3d/systems/TimerQuery$FrameProfile; endProfile c method_41721 + m ()V +c com/mojang/blaze3d/systems/TimerQuery$FrameProfile fbb$a net/minecraft/class_7168$class_7169 + f J NO_RESULT a field_37845 + f J CANCELLED_RESULT b field_37846 + f I queryName c field_37847 + f J result d field_37848 + m ()V cancel a method_41722 + m ()Z isDone b method_41723 + m ()J get c method_41724 + m (I)V + p 1 queryName +c com/mojang/blaze3d/systems/TimerQuery$TimerQueryLazyLoader fbb$b net/minecraft/class_7168$class_7170 + f Ljava/util/Optional; INSTANCE a field_37849 + m ()Lcom/mojang/blaze3d/systems/TimerQuery; instantiate a method_41725 + m ()V + m ()V +c com/mojang/blaze3d/systems/package-info fbc net/minecraft/class_6188 +c com/mojang/blaze3d/vertex/BufferBuilder fbd net/minecraft/class_287 + f J NOT_BUILDING a field_52068 + f J UNKNOWN_ELEMENT b field_52069 + f Z IS_LITTLE_ENDIAN c field_52070 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer d field_52071 + f J vertexPointer e field_52072 + f I vertices f field_1554 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format g field_1565 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode h field_52073 + f Z fastFormat i field_21594 + f Z fullFormat j field_21595 + f I vertexSize k field_52074 + f I initialElementsToFill l field_52075 + f [I offsetsByElement m field_52076 + f I elementsToFill n field_52077 + f Z building o field_1556 + m ()Lcom/mojang/blaze3d/vertex/MeshData; build a method_60794 + m (F)B normalIntValue a method_60795 + p 0 value + m (JI)V putRgba a method_60797 + p 0 pointer + p 2 color + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)J beginElement a method_60798 + p 1 element + m (SSLcom/mojang/blaze3d/vertex/VertexFormatElement;)Lcom/mojang/blaze3d/vertex/VertexConsumer; uvShort a method_60799 + p 1 u + p 2 v + p 3 element + m ()Lcom/mojang/blaze3d/vertex/MeshData; buildOrThrow b method_60800 + m (JI)V putPackedUv b method_60801 + p 0 pointer + p 2 packedUv + m ()V ensureBuilding c method_60802 + m ()Lcom/mojang/blaze3d/vertex/MeshData; storeMesh d method_60804 + m ()J beginVertex e method_60805 + m ()V endLastVertex f method_60806 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat;)V + p 1 buffer + p 2 mode + p 3 format + m ()V +c com/mojang/blaze3d/vertex/BufferUploader fbe net/minecraft/class_286 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; lastImmediateBuffer a field_38982 + m ()V reset a method_34420 + m (Lcom/mojang/blaze3d/vertex/MeshData;)V drawWithShader a method_43433 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;)V bindImmediateBuffer a method_43434 + p 0 buffer + m (Lcom/mojang/blaze3d/vertex/VertexFormat;)Lcom/mojang/blaze3d/vertex/VertexBuffer; bindImmediateBuffer a method_43435 + p 0 format + m ()V invalidate b method_43436 + m (Lcom/mojang/blaze3d/vertex/MeshData;)V draw b method_43437 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)V _drawWithShader c method_43438 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)Lcom/mojang/blaze3d/vertex/VertexBuffer; upload d method_43439 + p 0 meshData + m (Lcom/mojang/blaze3d/vertex/MeshData;)V method_43440 e method_43440 + m ()V +c com/mojang/blaze3d/vertex/ByteBufferBuilder fbf net/minecraft/class_9799 + f Lorg/slf4j/Logger; LOGGER a field_52078 + f Lorg/lwjgl/system/MemoryUtil$MemoryAllocator; ALLOCATOR b field_52079 + f I MAX_GROWTH_SIZE c field_52080 + f I BUFFER_FREED_GENERATION d field_52081 + f J pointer e field_52082 + f I capacity f field_52083 + f I writeOffset g field_52084 + f I nextResultOffset h field_52085 + f I resultCount i field_52086 + f I generation j field_52087 + m ()Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; build a method_60807 + m (I)J reserve a method_60808 + p 1 bytes + m ()V clear b method_60809 + m (I)V ensureCapacity b method_60810 + p 1 size + m ()V discard c method_60811 + m (I)V resize c method_60812 + p 1 newSize + m ()V freeResult d method_60813 + m (I)Z isValid d method_60814 + p 1 generation + m ()V discardResults e method_60815 + m ()V checkOpen f method_60816 + m (I)V + p 1 capacity + m ()V +c com/mojang/blaze3d/vertex/ByteBufferBuilder$Result fbf$a net/minecraft/class_9799$class_9800 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; field_52088 a field_52088 + f I offset b field_52089 + f I capacity c field_52090 + f I generation d field_52091 + f Z closed e field_52092 + m ()Ljava/nio/ByteBuffer; byteBuffer a method_60817 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;III)V + p 2 offset + p 3 capacity + p 4 generation +c com/mojang/blaze3d/vertex/DefaultVertexFormat fbg net/minecraft/class_290 + f Lcom/mojang/blaze3d/vertex/VertexFormat; BLIT_SCREEN a field_29336 + f Lcom/mojang/blaze3d/vertex/VertexFormat; BLOCK b field_1590 + f Lcom/mojang/blaze3d/vertex/VertexFormat; NEW_ENTITY c field_1580 + f Lcom/mojang/blaze3d/vertex/VertexFormat; PARTICLE d field_1584 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION e field_1592 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR f field_1576 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_NORMAL g field_29337 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_LIGHTMAP h field_21468 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX i field_1585 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_COLOR j field_1575 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_COLOR_TEX_LIGHTMAP k field_20888 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_LIGHTMAP_COLOR l field_1586 + f Lcom/mojang/blaze3d/vertex/VertexFormat; POSITION_TEX_COLOR_NORMAL m field_1577 + m ()V + m ()V +c com/mojang/blaze3d/vertex/MeshData fbh net/minecraft/class_9801 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; vertexBuffer a field_52093 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; indexBuffer b field_52094 + f Lcom/mojang/blaze3d/vertex/MeshData$DrawState; drawState c field_52095 + m ()Ljava/nio/ByteBuffer; vertexBuffer a method_60818 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexSorting;)Lcom/mojang/blaze3d/vertex/MeshData$SortState; sortQuads a method_60819 + p 1 bufferBuilder + p 2 sorting + m (Ljava/nio/ByteBuffer;ILcom/mojang/blaze3d/vertex/VertexFormat;)[Lorg/joml/Vector3f; unpackQuadCentroids a method_60820 + p 0 byteBuffer + p 1 vertexCount + p 2 format + m ()Ljava/nio/ByteBuffer; indexBuffer b method_60821 + m ()Lcom/mojang/blaze3d/vertex/MeshData$DrawState; drawState c method_60822 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;Lcom/mojang/blaze3d/vertex/MeshData$DrawState;)V + p 1 vertexBuffer + p 2 drawState +c com/mojang/blaze3d/vertex/MeshData$1 fbh$1 net/minecraft/class_9801$1 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$IndexType a field_27353 + m ()V +c com/mojang/blaze3d/vertex/MeshData$DrawState fbh$a net/minecraft/class_9801$class_4574 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format a comp_749 + f I vertexCount b comp_750 + f I indexCount c comp_751 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode d comp_752 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType e comp_753 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; format a comp_749 + m ()I vertexCount b comp_750 + m ()I indexCount c comp_751 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode d comp_752 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType e comp_753 + m (Lcom/mojang/blaze3d/vertex/VertexFormat;IILcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)V +c com/mojang/blaze3d/vertex/MeshData$SortState fbh$b net/minecraft/class_9801$class_9802 + f [Lorg/joml/Vector3f; centroids a comp_2840 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType b comp_2841 + m ()[Lorg/joml/Vector3f; centroids a comp_2840 + m (JLcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)Lit/unimi/dsi/fastutil/ints/IntConsumer; indexWriter a method_60823 + p 1 index + p 3 type + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Lcom/mojang/blaze3d/vertex/VertexSorting;)Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result; buildSortedIndexBuffer a method_60824 + p 1 bufferBuilder + p 2 sorting + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60825 a method_60825 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType b comp_2841 + m (Lorg/apache/commons/lang3/mutable/MutableLong;I)V method_60826 b method_60826 + m ([Lorg/joml/Vector3f;Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType;)V +c com/mojang/blaze3d/vertex/PoseStack fbi net/minecraft/class_4587 + f Ljava/util/Deque; poseStack a field_20898 + m ()V pushPose a method_22903 + m (DDD)V translate a method_22904 + p 1 x + p 3 y + p 5 z + m (FFF)V translate a method_46416 + p 1 x + p 2 y + p 3 z + m (Ljava/util/ArrayDeque;)V method_22908 a method_22908 + m (Lorg/joml/Matrix4f;)V mulPose a method_34425 + p 1 pose + m (Lorg/joml/Quaternionf;)V mulPose a method_22907 + p 1 quaternion + m (Lorg/joml/Quaternionf;FFF)V rotateAround a method_49278 + p 1 quaternion + p 2 x + p 3 y + p 4 z + m ()V popPose b method_22909 + m (FFF)V scale b method_22905 + p 1 x + p 2 y + p 3 z + m ()Lcom/mojang/blaze3d/vertex/PoseStack$Pose; last c method_23760 + m ()Z clear d method_22911 + m ()V setIdentity e method_34426 + m ()V +c com/mojang/blaze3d/vertex/PoseStack$Pose fbi$a net/minecraft/class_4587$class_4665 + f Lorg/joml/Matrix4f; pose a field_21327 + f Lorg/joml/Matrix3f; normal b field_21328 + f Z trustedNormals c field_48930 + m ()Lorg/joml/Matrix4f; pose a method_23761 + m (FFFLorg/joml/Vector3f;)Lorg/joml/Vector3f; transformNormal a method_56820 + p 1 x + p 2 y + p 3 z + p 4 destination + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; transformNormal a method_56821 + p 1 vector + p 2 destination + m ()Lorg/joml/Matrix3f; normal b method_23762 + m ()Lcom/mojang/blaze3d/vertex/PoseStack$Pose; copy c method_56822 + m ()V computeNormalMatrix d method_56823 + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix3f;)V + p 1 pose + p 2 normal + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;)V + p 1 pose +c com/mojang/blaze3d/vertex/SheetedDecalTextureGenerator fbj net/minecraft/class_4583 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a field_20866 + f Lorg/joml/Matrix4f; cameraInversePose b field_21053 + f Lorg/joml/Matrix3f; normalInversePose c field_21054 + f F textureScale d field_41091 + f Lorg/joml/Vector3f; worldPos e field_52096 + f Lorg/joml/Vector3f; normal f field_52097 + f F x g field_20870 + f F y h field_20871 + f F z i field_20872 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;F)V + p 1 delegate + p 2 pose + p 3 textureScale +c com/mojang/blaze3d/vertex/Tesselator fbk net/minecraft/class_289 + f I MAX_BYTES a field_46841 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer b field_52098 + f Lcom/mojang/blaze3d/vertex/Tesselator; instance c field_1573 + m ()V init a method_54560 + m (Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lcom/mojang/blaze3d/vertex/VertexFormat;)Lcom/mojang/blaze3d/vertex/BufferBuilder; begin a method_60827 + p 1 mode + p 2 format + m ()Lcom/mojang/blaze3d/vertex/Tesselator; getInstance b method_1348 + m ()V clear c method_60828 + m (I)V + p 1 capacity + m ()V +c com/mojang/blaze3d/vertex/VertexBuffer fbl net/minecraft/class_291 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; usage a field_44792 + f I vertexBufferId b field_1594 + f I indexBufferId c field_27366 + f I arrayObjectId d field_29338 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format e field_29339 + f Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer; sequentialIndices f field_38983 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; indexType g field_27367 + f I indexCount h field_1593 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode i field_27368 + m ()V bind a method_1353 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;)V uploadIndexBuffer a method_60829 + p 1 result + m (Lcom/mojang/blaze3d/vertex/MeshData$DrawState;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/vertex/VertexFormat; uploadVertexBuffer a method_43442 + p 1 drawState + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/MeshData;)V upload a method_1352 + p 1 meshData + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V drawWithShader a method_34427 + p 1 modelViewMatrix + p 2 projectionMatrix + p 3 shader + m ()V unbind b method_1354 + m (Lcom/mojang/blaze3d/vertex/MeshData$DrawState;Ljava/nio/ByteBuffer;)Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer; uploadIndexBuffer b method_43443 + p 1 drawState + p 2 buffer + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V _drawWithShader b method_34431 + p 1 modelViewMatrix + p 2 projectionMatrix + p 3 shader + m ()V draw c method_35665 + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lnet/minecraft/client/renderer/ShaderInstance;)V method_34433 c method_34433 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; getFormat d method_34435 + m ()Z isInvalid e method_43444 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; getIndexType f method_43445 + m (Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage;)V + p 1 usage +c com/mojang/blaze3d/vertex/VertexBuffer$Usage fbl$a net/minecraft/class_291$class_8555 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; STATIC a field_44793 + f Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; DYNAMIC b field_44794 + f I id c field_44795 + f [Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; $VALUES d field_44796 + m ()[Lcom/mojang/blaze3d/vertex/VertexBuffer$Usage; $values a method_51735 + m (Ljava/lang/String;II)V + p 3 id + m ()V +c com/mojang/blaze3d/vertex/VertexConsumer fbm net/minecraft/class_4588 + m (FF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv a method_22913 + p 1 u + p 2 v + m (FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_22912 + p 1 x + p 2 y + p 3 z + m (FFFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_22915 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (FFFIFFIIFFF)V addVertex a method_23919 + p 1 x + p 2 y + p 3 z + p 4 color + p 5 u + p 6 v + p 7 packedOverlay + p 8 packedLight + p 9 normalX + p 10 normalY + p 11 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_39415 + p 1 color + m (II)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv1 a method_60796 + p 1 u + p 2 v + m (IIII)Lcom/mojang/blaze3d/vertex/VertexConsumer; setColor a method_1336 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_56824 + p 1 pose + p 2 x + p 3 y + p 4 z + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;FFFFII)V putBulkData a method_22919 + p 1 pose + p 2 quad + p 3 red + p 4 green + p 5 blue + p 6 alpha + p 7 packedLight + p 8 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;[FFFFF[IIZ)V putBulkData a method_22920 + p 1 pose + p 2 quad + p 3 brightness + p 4 red + p 5 green + p 6 blue + p 7 alpha + p 8 lightmap + p 9 packedOverlay + p 10 readAlpha + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_61032 + p 1 pose + p 2 pos + m (Lorg/joml/Matrix4f;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_22918 + p 1 pose + p 2 x + p 3 y + p 4 z + m (Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexConsumer; addVertex a method_60830 + p 1 pos + m (FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setNormal b method_22914 + p 1 normalX + p 2 normalY + p 3 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setOverlay b method_22922 + p 1 packedOverlay + m (II)Lcom/mojang/blaze3d/vertex/VertexConsumer; setUv2 b method_22921 + p 1 u + p 2 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFF)Lcom/mojang/blaze3d/vertex/VertexConsumer; setNormal b method_60831 + p 1 pose + p 2 normalX + p 3 normalY + p 4 normalZ + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setLight c method_60803 + p 1 packedLight + m (I)Lcom/mojang/blaze3d/vertex/VertexConsumer; setWhiteAlpha d method_60832 + p 1 alpha +c com/mojang/blaze3d/vertex/VertexFormat fbn net/minecraft/class_293 + f I UNKNOWN_ELEMENT a field_52099 + f Ljava/util/List; elements b field_1602 + f Ljava/util/List; names c field_52100 + f I vertexSize d field_1600 + f I elementsMask e field_52101 + f [I offsetsByElement f field_52102 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; immediateDrawVertexBuffer g field_38984 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; builder a method_60833 + m (II)I method_60834 a method_60834 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)I getOffset a method_60835 + p 1 element + m ()I getVertexSize b method_1362 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Z contains b method_60836 + p 1 element + m ()Ljava/util/List; getElements c method_1357 + m (Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Ljava/lang/String; getElementName c method_60837 + p 1 element + m ()Ljava/util/List; getElementAttributeNames d method_34445 + m ()[I getOffsetsByElement e method_60838 + m ()I getElementsMask f method_60839 + m ()V setupBufferState g method_22649 + m ()V clearBufferState h method_22651 + m ()Lcom/mojang/blaze3d/vertex/VertexBuffer; getImmediateDrawVertexBuffer i method_43446 + m ()V _setupBufferState j method_34449 + m ()V _clearBufferState k method_34450 + m (Ljava/util/List;Ljava/util/List;Lit/unimi/dsi/fastutil/ints/IntList;I)V + p 1 elements + p 2 names + p 3 offsets + p 4 vertexSize +c com/mojang/blaze3d/vertex/VertexFormat$Builder fbn$a net/minecraft/class_293$class_9803 + f Lcom/google/common/collect/ImmutableMap$Builder; elements a field_52103 + f Lit/unimi/dsi/fastutil/ints/IntList; offsets b field_52104 + f I offset c field_52105 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; build a method_60840 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; padding a method_60841 + p 1 padding + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormatElement;)Lcom/mojang/blaze3d/vertex/VertexFormat$Builder; add a method_60842 + p 1 name + p 2 element + m ()V +c com/mojang/blaze3d/vertex/VertexFormat$IndexType fbn$b net/minecraft/class_293$class_5595 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; SHORT a field_27372 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; INT b field_27373 + f I asGLType c field_27374 + f I bytes d field_27375 + f [Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; $VALUES e field_27376 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; $values a method_36816 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; least a method_31972 + p 0 indexCount + m (Ljava/lang/String;III)V + p 3 asGLType + p 4 bytes + m ()V +c com/mojang/blaze3d/vertex/VertexFormat$Mode fbn$c net/minecraft/class_293$class_5596 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; LINES a field_27377 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; LINE_STRIP b field_27378 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; DEBUG_LINES c field_29344 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; DEBUG_LINE_STRIP d field_29345 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLES e field_27379 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLE_STRIP f field_27380 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; TRIANGLE_FAN g field_27381 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; QUADS h field_27382 + f I asGLMode i field_27383 + f I primitiveLength j field_27384 + f I primitiveStride k field_27385 + f Z connectedPrimitives l field_38878 + f [Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; $VALUES m field_27386 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; $values a method_36817 + m (I)I indexCount a method_31973 + p 1 vertices + m (Ljava/lang/String;IIIIZ)V + p 3 asGLMode + p 4 primitiveLength + p 5 primitiveStride + p 6 connectedPrimitives + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement fbo net/minecraft/class_296 + f I MAX_COUNT a field_52106 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; POSITION b field_52107 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; COLOR c field_52108 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV0 d field_52109 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV e field_52110 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV1 f field_52111 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; UV2 g field_52112 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement; NORMAL h field_52113 + f I id i comp_2842 + f I index j comp_2843 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; type k comp_2844 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; usage l comp_2845 + f I count m comp_2846 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement; BY_ID n field_52114 + f Ljava/util/List; ELEMENTS o field_52115 + m ()I mask a method_60843 + m (I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; byId a method_60844 + p 0 id + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)Lcom/mojang/blaze3d/vertex/VertexFormatElement; register a method_60845 + p 0 id + p 1 index + p 2 type + p 3 usage + p 4 count + m (IJI)V setupBufferState a method_22652 + p 1 stateIndex + p 2 offset + p 4 stride + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;)Z supportsUsage a method_1383 + p 1 index + p 2 usage + m (ILcom/mojang/blaze3d/vertex/VertexFormatElement;)Z method_60846 a method_60846 + m ()I byteSize b method_60847 + m (I)Ljava/util/stream/Stream; elementsFromMask b method_60848 + p 0 mask + m ()I id c comp_2842 + m ()I index d comp_2843 + m ()Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; type e comp_2844 + m ()Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; usage f comp_2845 + m ()I count g comp_2846 + m (IILcom/mojang/blaze3d/vertex/VertexFormatElement$Type;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage;I)V + p 1 id + p 2 index + p 3 type + p 4 usage + p 5 count + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Type fbo$a net/minecraft/class_296$class_297 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; FLOAT a field_1623 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; UBYTE b field_1624 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; BYTE c field_1621 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; USHORT d field_1622 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; SHORT e field_1625 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; UINT f field_1619 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; INT g field_1617 + f I size h field_1618 + f Ljava/lang/String; name i field_1626 + f I glType j field_1627 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; $VALUES k field_1620 + m ()I size a method_1391 + m ()I glType b method_1390 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormatElement$Type; $values c method_36818 + m (Ljava/lang/String;IILjava/lang/String;I)V + p 3 size + p 4 name + p 5 glType + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Usage fbo$b net/minecraft/class_296$class_298 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; POSITION a field_1633 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; NORMAL b field_1635 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; COLOR c field_1632 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; UV d field_1636 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; GENERIC e field_20782 + f Ljava/lang/String; name f field_1630 + f Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState; setupState g field_20783 + f [Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; $VALUES h field_1631 + m ()[Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage; $values a method_36819 + m (IIIJI)V method_60849 a method_60849 + m (IIIJI)V method_22662 b method_22662 + m (IIIJI)V method_60850 c method_60850 + m (IIIJI)V method_60851 d method_60851 + m (IIIJI)V method_22667 e method_22667 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState;)V + p 3 name + p 4 setupState + m ()V +c com/mojang/blaze3d/vertex/VertexFormatElement$Usage$SetupState fbo$b$a net/minecraft/class_296$class_298$class_4575 +c com/mojang/blaze3d/vertex/VertexMultiConsumer fbp net/minecraft/class_4720 + m ()Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35668 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35669 + p 0 consumer + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_24037 + p 0 first + p 1 second + m ([Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; create a method_35670 + p 0 delegates + m ()V +c com/mojang/blaze3d/vertex/VertexMultiConsumer$Double fbp$a net/minecraft/class_4720$class_4589 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; first a field_21685 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; second b field_21686 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V + p 1 first + p 2 second +c com/mojang/blaze3d/vertex/VertexMultiConsumer$Multiple fbp$b net/minecraft/class_4720$class_6189 + f [Lcom/mojang/blaze3d/vertex/VertexConsumer; delegates a comp_2847 + m ()[Lcom/mojang/blaze3d/vertex/VertexConsumer; delegates a comp_2847 + m (FFFIFFIIFFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60852 a method_60852 + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60853 a method_60853 + m (FFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60854 a method_60854 + m (IIIILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60855 a method_60855 + m (IILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60856 a method_60856 + m (Ljava/util/function/Consumer;)V forEach a method_35677 + p 1 action + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60857 b method_60857 + m (IILcom/mojang/blaze3d/vertex/VertexConsumer;)V method_60858 b method_60858 + m ([Lcom/mojang/blaze3d/vertex/VertexConsumer;)V + p 1 delegates +c com/mojang/blaze3d/vertex/VertexSorting fbq net/minecraft/class_8251 + f Lcom/mojang/blaze3d/vertex/VertexSorting; DISTANCE_TO_ORIGIN a field_43360 + f Lcom/mojang/blaze3d/vertex/VertexSorting; ORTHOGRAPHIC_Z b field_43361 + m (FFF)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49906 + p 0 x + p 1 y + p 2 z + m (Lcom/mojang/blaze3d/vertex/VertexSorting$DistanceFunction;)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49907 + p 0 distanceFunction + m (Lcom/mojang/blaze3d/vertex/VertexSorting$DistanceFunction;[Lorg/joml/Vector3f;)[I method_49908 a method_49908 + m (Lorg/joml/Vector3f;)Lcom/mojang/blaze3d/vertex/VertexSorting; byDistance a method_49909 + p 0 vector + m ([FII)I method_49910 a method_49910 + m (Lorg/joml/Vector3f;)F method_49911 b method_49911 + m ()V +c com/mojang/blaze3d/vertex/VertexSorting$DistanceFunction fbq$a net/minecraft/class_8251$class_8252 +c com/mojang/blaze3d/vertex/package-info fbr net/minecraft/class_6190 +c com/mojang/realmsclient/RealmsAvailability fbs net/minecraft/class_8647 + f Lorg/slf4j/Logger; LOGGER a field_45182 + f Ljava/util/concurrent/CompletableFuture; future b field_45183 + m ()Ljava/util/concurrent/CompletableFuture; get a method_52624 + m (Ljava/util/concurrent/CompletableFuture;)Z shouldRefresh a method_52625 + p 0 future + m ()Ljava/util/concurrent/CompletableFuture; check b method_52626 + m ()Lcom/mojang/realmsclient/RealmsAvailability$Result; method_52627 c method_52627 + m ()V + m ()V +c com/mojang/realmsclient/RealmsAvailability$Result fbs$a net/minecraft/class_8647$class_8648 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; type a comp_1593 + f Lcom/mojang/realmsclient/exception/RealmsServiceException; exception b comp_1594 + m ()Lcom/mojang/realmsclient/RealmsAvailability$Type; type a comp_1593 + m (Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/screens/Screen; createErrorScreen a method_52628 + p 1 lastScreen + m ()Lcom/mojang/realmsclient/exception/RealmsServiceException; exception b comp_1594 + m (Lcom/mojang/realmsclient/RealmsAvailability$Type;)V + p 1 type + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V + p 1 exception + m (Lcom/mojang/realmsclient/RealmsAvailability$Type;Lcom/mojang/realmsclient/exception/RealmsServiceException;)V +c com/mojang/realmsclient/RealmsAvailability$Type fbs$b net/minecraft/class_8647$class_8649 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; SUCCESS a field_45185 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; INCOMPATIBLE_CLIENT b field_45186 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; NEEDS_PARENTAL_CONSENT c field_45187 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; AUTHENTICATION_ERROR d field_45188 + f Lcom/mojang/realmsclient/RealmsAvailability$Type; UNEXPECTED_ERROR e field_45189 + f [Lcom/mojang/realmsclient/RealmsAvailability$Type; $VALUES f field_45190 + m ()[Lcom/mojang/realmsclient/RealmsAvailability$Type; $values a method_52629 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/RealmsMainScreen fbt net/minecraft/class_4325 + f Lnet/minecraft/resources/ResourceLocation; EXPIRES_SOON_SPRITE B field_45218 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SPRITE C field_45219 + f Lnet/minecraft/resources/ResourceLocation; CLOSED_SPRITE D field_45191 + f Lnet/minecraft/resources/ResourceLocation; INVITE_SPRITE E field_45192 + f Lnet/minecraft/resources/ResourceLocation; NEWS_SPRITE F field_45193 + f Lorg/slf4j/Logger; LOGGER G field_19475 + f Lnet/minecraft/resources/ResourceLocation; LOGO_LOCATION H field_45194 + f Lnet/minecraft/resources/ResourceLocation; NO_REALMS_LOCATION I field_45195 + f Lnet/minecraft/network/chat/Component; TITLE J field_45196 + f Lnet/minecraft/network/chat/Component; LOADING_TEXT K field_45197 + f Lnet/minecraft/network/chat/Component; SERVER_UNITIALIZED_TEXT L field_26450 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_EXPIRED_TEXT M field_26451 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_RENEW_TEXT N field_26452 + f Lnet/minecraft/network/chat/Component; TRIAL_EXPIRED_TEXT O field_26453 + f Lnet/minecraft/network/chat/Component; PLAY_TEXT P field_42859 + f Lnet/minecraft/network/chat/Component; LEAVE_SERVER_TEXT Q field_42860 + f Lnet/minecraft/network/chat/Component; CONFIGURE_SERVER_TEXT R field_42861 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRED_TOOLTIP S field_26457 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRES_SOON_TOOLTIP T field_26458 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRES_IN_DAY_TOOLTIP U field_26459 + f Lnet/minecraft/network/chat/Component; SERVER_OPEN_TOOLTIP V field_26460 + f Lnet/minecraft/network/chat/Component; SERVER_CLOSED_TOOLTIP W field_26461 + f Lnet/minecraft/network/chat/Component; UNITIALIZED_WORLD_NARRATION X field_33776 + f Lnet/minecraft/network/chat/Component; NO_REALMS_TEXT Y field_45198 + f Lnet/minecraft/network/chat/Component; NO_PENDING_INVITES Z field_45199 + f Lnet/minecraft/client/gui/components/Button; playButton aA field_45215 + f Lnet/minecraft/client/gui/components/Button; backButton aB field_19486 + f Lnet/minecraft/client/gui/components/Button; renewButton aC field_19487 + f Lnet/minecraft/client/gui/components/Button; configureButton aD field_19488 + f Lnet/minecraft/client/gui/components/Button; leaveButton aE field_19489 + f Lcom/mojang/realmsclient/RealmsMainScreen$RealmSelectionList; realmSelectionList aF field_19483 + f Lcom/mojang/realmsclient/gui/RealmsServerList; serverList aG field_39681 + f Ljava/util/List; availableSnapshotServers aH field_46669 + f Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; onlinePlayersPerRealm aI field_52116 + f Z trialsAvailable aJ field_19500 + f Ljava/lang/String; newsLink aK field_45203 + f J lastClickTime aL field_37267 + f Lnet/minecraft/resources/ResourceLocation; INFO_SPRITE a field_45201 + f Ljava/util/List; notifications aM field_42997 + f Lnet/minecraft/client/gui/components/Button; addRealmButton aN field_45204 + f Lcom/mojang/realmsclient/RealmsMainScreen$NotificationButton; pendingInvitesButton aO field_45205 + f Lcom/mojang/realmsclient/RealmsMainScreen$NotificationButton; newsButton aP field_45206 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; activeLayoutState aQ field_45207 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout aR field_45208 + f Lnet/minecraft/network/chat/Component; PENDING_INVITES aa field_45200 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_POPUP_TITLE ab field_51815 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_RELEASE_TYPE_POPUP_MESSAGE ac field_51816 + f I BUTTON_WIDTH ad field_42862 + f I BUTTON_COLUMNS ae field_45209 + f I BUTTON_SPACING af field_45210 + f I CONTENT_WIDTH ag field_45211 + f I LOGO_WIDTH ah field_44509 + f I LOGO_HEIGHT ai field_44510 + f I LOGO_TEXTURE_WIDTH aj field_44511 + f I LOGO_TEXTURE_HEIGHT ak field_44512 + f I LOGO_PADDING al field_44513 + f I HEADER_HEIGHT am field_44514 + f I FOOTER_PADDING an field_45212 + f I NEW_REALM_SPRITE_WIDTH ao field_46670 + f I NEW_REALM_SPRITE_HEIGHT ap field_46671 + f I ENTRY_WIDTH aq field_46215 + f I ITEM_HEIGHT ar field_46216 + f Z SNAPSHOT as field_46672 + f Z snapshotToggle at field_46673 + f Ljava/util/concurrent/CompletableFuture; availability au field_45213 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; dataSubscription av field_45214 + f Ljava/util/Set; handledSeenNotifications aw field_42996 + f Z regionsPinged ax field_19464 + f Lcom/google/common/util/concurrent/RateLimiter; inviteNarrationLimiter ay field_19477 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen az field_19482 + f Lnet/minecraft/resources/ResourceLocation; NEW_REALM_SPRITE b field_45216 + f Lnet/minecraft/resources/ResourceLocation; EXPIRED_SPRITE c field_45217 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54342 A method_54342 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54318 B method_54318 + m ()V updateLayout C method_54320 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54319 C method_54319 + m ()Lnet/minecraft/client/gui/layouts/Layout; createHeader D method_52630 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54321 D method_54321 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; createNoRealmsContent E method_52631 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_60859 E method_60859 + m ()V updateButtonStates F method_52632 + m ()V debugRefreshDataFetchers G method_54324 + m ()V refreshListAndLayout J method_49550 + m ()V pingRegions K method_20922 + m ()Ljava/util/List; getOwnedNonExpiredRealmIds L method_20924 + m ()Lcom/mojang/realmsclient/dto/RealmsServer; getSelectedServer M method_38503 + m ()V openTrialAvailablePopup N method_53791 + m ()V method_22098 O method_22098 + m (Lcom/mojang/realmsclient/RealmsAvailability$Result;)V method_52634 a method_52634 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)V updateLayout a method_52635 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen$RealmsCall;Lnet/minecraft/client/Minecraft;)Ljava/lang/Object; method_49552 a method_49552 + m (Lcom/mojang/realmsclient/RealmsMainScreen$RealmsCall;Ljava/util/function/Consumer;)V callRealmsClient a method_49553 + p 0 call + p 1 onFinish + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36825 a method_36825 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52636 a method_52636 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;)Z addListEntriesForNotification a method_49551 + p 1 notification + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldPlayButtonBeActive a method_20874 + p 1 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_38504 a method_38504 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V play a method_20853 + p 0 realmsServer + p 1 lastScreen + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V confirmToPlay a method_54326 + p 0 realmsServer + p 1 lastScreen + p 2 title + p 3 message + p 4 confirmButton + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;Z)V play a method_54327 + p 0 realmsServer + p 1 lastScreen + p 2 allowSnapshots + m (Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists;)V method_60860 a method_60860 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData;)V method_44615 a method_44615 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; initDataFetcher a method_44611 + p 1 dataFetcher + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/dto/RealmsNews;)V method_44612 a method_44612 + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;I)V renderEnvironment a method_52637 + p 1 guiGraphics + p 2 text + p 3 color + m (Lnet/minecraft/client/gui/components/Button;)V method_52638 a method_52638 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_54328 a method_54328 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54329 a method_54329 + m (Ljava/lang/Boolean;)V method_52639 a method_52639 + m (Ljava/lang/Integer;)V method_44614 a method_44614 + m (Ljava/lang/String;I)Lnet/minecraft/network/chat/Component; getVersionComponent a method_54561 + p 0 version + p 1 color + m (Ljava/lang/String;Z)Lnet/minecraft/network/chat/Component; getVersionComponent a method_54562 + p 0 version + p 1 compatible + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_49554 a method_49554 + m (Ljava/util/Collection;)V markNotificationsAsSeen a method_54104 + p 1 notifications + m (Ljava/util/List;Lcom/mojang/realmsclient/client/RealmsClient;)Ljava/lang/Object; method_54105 a method_54105 + m (Ljava/util/List;Ljava/lang/Object;)V method_54106 a method_54106 + m (Ljava/util/UUID;)V dismissNotification a method_49557 + p 1 uuid + m (Ljava/util/UUID;Lcom/mojang/realmsclient/client/RealmsClient;)Ljava/lang/Object; method_49558 a method_49558 + m (Ljava/util/UUID;Lcom/mojang/realmsclient/dto/RealmsNotification;)Z method_49559 a method_49559 + m (Ljava/util/UUID;Ljava/lang/Object;)V method_49560 a method_49560 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button;)V method_52640 a method_52640 + m ()Z isSnapshot b method_54330 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; createLayout b method_52641 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36826 b method_36826 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52642 b method_52642 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldRenewButtonBeActive b method_20884 + p 1 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V upgradeRealmAndPlay b method_60861 + p 0 server + p 1 lastScreen + m (Lnet/minecraft/client/gui/components/Button;)V method_52643 b method_52643 + m (Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState;)Lnet/minecraft/client/gui/layouts/Layout; createFooter c method_52644 + p 1 layoutState + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_36827 c method_36827 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldConfigureButtonBeActive c method_49285 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52645 c method_52645 + m (Ljava/util/List;)V method_49561 c method_49561 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_55791 d method_55791 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z shouldLeaveButtonBeActive d method_49288 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52646 d method_52646 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_20885 e method_20885 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V onRenew e method_20928 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52647 e method_52647 + m ()V refreshPendingInvites f method_53792 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36828 f method_36828 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V configureClicked f method_20903 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52648 f method_52648 + m ()V refreshServerList g method_53793 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36829 g method_36829 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V leaveClicked g method_20906 + p 1 realmsServer + m (Lnet/minecraft/client/gui/components/Button;)V method_52649 g method_52649 + m ()V resetScreen h method_38505 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36830 h method_36830 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V leaveServer h method_24991 + p 1 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24992 i method_24992 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z isSelfOwnedServer i method_20909 + p 0 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_53884 j method_53884 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Z isSelfOwnedNonExpiredServer j method_25001 + p 1 server + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24996 k method_24996 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24998 l method_24998 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_24994 m method_24994 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_44254 n method_44254 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_49562 o method_49562 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_36832 p method_36832 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54332 q method_54332 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54333 r method_54333 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54334 s method_54334 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/Minecraft; method_54563 t method_54563 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_55792 u method_55792 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54337 v method_54337 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54338 w method_54338 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54339 x method_54339 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54340 y method_54340 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)Lnet/minecraft/client/gui/Font; method_54341 z method_54341 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c com/mojang/realmsclient/RealmsMainScreen$1 fbt$1 net/minecraft/class_4325$1 + f Lcom/mojang/realmsclient/dto/RealmsServer; val$server a field_34774 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19509 b field_19509 + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V method_25020 a method_25020 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsServer;)V +c com/mojang/realmsclient/RealmsMainScreen$2 fbt$2 net/minecraft/class_4325$2 + f [I $SwitchMap$com$mojang$realmsclient$client$RealmsClient$Environment a field_45221 + f [I $SwitchMap$com$mojang$realmsclient$dto$RealmsServer$Compatibility b field_46674 + m ()V +c com/mojang/realmsclient/RealmsMainScreen$AvailableSnapshotEntry fbt$a net/minecraft/class_4325$class_8840 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_46675 a field_46675 + f Lnet/minecraft/network/chat/Component; START_SNAPSHOT_REALM f field_46676 + f I TEXT_PADDING g field_46677 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip h field_46678 + f Lcom/mojang/realmsclient/dto/RealmsServer; parent i field_46679 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_54343 a method_54343 + m ()V addSnapshotRealm c method_54344 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 parent + m ()V +c com/mojang/realmsclient/RealmsMainScreen$ButtonEntry fbt$b net/minecraft/class_4325$class_8200 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_42998 a field_42998 + f Lnet/minecraft/client/gui/components/Button; button f field_42999 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/client/gui/components/Button;)V + p 2 button +c com/mojang/realmsclient/RealmsMainScreen$CrossButton fbt$c net/minecraft/class_4325$class_8201 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES b field_45222 + m (Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 onPress + p 2 message + m ()V +c com/mojang/realmsclient/RealmsMainScreen$EmptyEntry fbt$d net/minecraft/class_4325$class_8802 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$Entry fbt$e net/minecraft/class_4325$class_4866 + f I STATUS_LIGHT_HEIGHT a field_46681 + f I STATUS_LIGHT_WIDTH b field_46680 + f I PADDING_X c field_52117 + f I PADDING_Y d field_52118 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_22567 e field_22567 + m (I)I firstLineY a method_54345 + p 1 top + m (IILnet/minecraft/network/chat/Component;)I versionTextX a method_54346 + p 1 left + p 2 width + p 3 versionComponent + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Lnet/minecraft/network/chat/Component; method_54348 a method_54348 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderStatusLights a method_54350 + p 1 realmsServer + p 2 guiGraphics + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIIILnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V drawRealmStatus a method_54351 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 spriteLocation + p 7 tooltipSupplier + m (Lnet/minecraft/client/gui/GuiGraphics;IILcom/mojang/realmsclient/dto/RealmsServer;)V renderThirdLine a method_54565 + p 1 guiGraphics + p 2 top + p 3 left + p 4 server + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;IIII)V renderClampedString a method_54352 + p 1 guiGraphics + p 2 text + p 3 minX + p 4 y + p 5 maxX + p 6 color + m ()I lineHeight b method_54353 + m (I)I textX b method_54354 + p 1 left + m ()Lnet/minecraft/network/chat/Component; method_54355 c method_54355 + m (I)I secondLineY c method_54356 + p 1 firstLineY + m ()Lnet/minecraft/network/chat/Component; method_54358 d method_54358 + m (I)I thirdLineY d method_54357 + p 1 firstLineY + m ()Lnet/minecraft/network/chat/Component; method_54359 e method_54359 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$LayoutState fbt$f net/minecraft/class_4325$class_8650 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; LOADING a field_45223 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; NO_REALMS b field_45224 + f Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; LIST c field_45225 + f [Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; $VALUES d field_45226 + m ()[Lcom/mojang/realmsclient/RealmsMainScreen$LayoutState; $values a method_52650 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/RealmsMainScreen$NotificationButton fbt$g net/minecraft/class_4325$class_8651 + f [Lnet/minecraft/resources/ResourceLocation; NOTIFICATION_ICONS d field_45227 + f I UNKNOWN_COUNT u field_45228 + f I SIZE v field_45229 + f I SPRITE_SIZE w field_45230 + f I notificationCount x field_45231 + m ()I notificationCount a method_53794 + m (I)V setNotificationCount a method_52651 + p 1 notificationCount + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawNotificationCounter a method_52652 + p 1 guiGraphics + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 sprite + p 3 onPress + m ()V +c com/mojang/realmsclient/RealmsMainScreen$NotificationMessageEntry fbt$h net/minecraft/class_4325$class_8202 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_43001 a field_43001 + f I SIDE_MARGINS f field_43002 + f I OUTLINE_COLOR g field_43004 + f Lnet/minecraft/network/chat/Component; text h field_43005 + f I frameItemHeight i field_46218 + f Ljava/util/List; children j field_43006 + f Lcom/mojang/realmsclient/RealmsMainScreen$CrossButton; dismissButton k field_43007 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget l field_43008 + f Lnet/minecraft/client/gui/layouts/GridLayout; gridLayout m field_43009 + f Lnet/minecraft/client/gui/layouts/FrameLayout; textFrame n field_43010 + f I lastEntryWidth o field_43011 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lnet/minecraft/client/gui/components/Button;)V method_49566 a method_49566 + m (Lnet/minecraft/client/gui/GuiGraphics;IIFLnet/minecraft/client/gui/components/AbstractWidget;)V method_49565 a method_49565 + m (I)V updateEntryWidth e method_49564 + p 1 entryWidth + m (I)V refreshLayout f method_49567 + p 1 width + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lnet/minecraft/network/chat/Component;ILcom/mojang/realmsclient/dto/RealmsNotification;)V + p 2 text + p 3 frameItemHeight + p 4 notification +c com/mojang/realmsclient/RealmsMainScreen$ParentEntry fbt$i net/minecraft/class_4325$class_8841 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_46683 a field_46683 + f Lcom/mojang/realmsclient/dto/RealmsServer; server f field_46684 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip g field_46685 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 server +c com/mojang/realmsclient/RealmsMainScreen$RealmSelectionList fbt$j net/minecraft/class_4325$class_4329 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19517 a field_19517 + m (Lcom/mojang/realmsclient/RealmsMainScreen$Entry;)V setSelected a method_25024 + m (Lcom/mojang/realmsclient/RealmsMainScreen;)V +c com/mojang/realmsclient/RealmsMainScreen$RealmsCall fbt$k net/minecraft/class_4325$class_8203 +c com/mojang/realmsclient/RealmsMainScreen$ServerEntry fbt$l net/minecraft/class_4325$class_4330 + f Lcom/mojang/realmsclient/RealmsMainScreen; field_19519 a field_19519 + f Lnet/minecraft/network/chat/Component; ONLINE_PLAYERS_TOOLTIP_HEADER f field_52119 + f I PLAYERS_ONLINE_SPRITE_SIZE g field_52120 + f I SKIN_HEAD_LARGE_WIDTH h field_32054 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData i field_19518 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip j field_46686 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderSecondLine a method_54566 + p 1 guiGraphics + p 2 top + p 3 left + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderFirstLine a method_54567 + p 1 guiGraphics + p 2 top + p 3 left + p 4 width + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)Z renderOnlinePlayers a method_60862 + p 1 guiGraphics + p 2 top + p 3 left + p 4 width + p 5 height + p 6 mouseX + p 7 mouseY + m ()Lcom/mojang/realmsclient/dto/RealmsServer; getServer c method_38506 + m ()V playRealm d method_52653 + m ()V createUnitializedRealm e method_52654 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 2 serverData + m ()V +c com/mojang/realmsclient/Unit fbu net/minecraft/class_4428 + f Lcom/mojang/realmsclient/Unit; B a field_20200 + f Lcom/mojang/realmsclient/Unit; KB b field_20201 + f Lcom/mojang/realmsclient/Unit; MB c field_20202 + f Lcom/mojang/realmsclient/Unit; GB d field_20203 + f I BASE_UNIT e field_32055 + f [Lcom/mojang/realmsclient/Unit; $VALUES f field_20204 + m ()[Lcom/mojang/realmsclient/Unit; $values a method_36844 + m (J)Lcom/mojang/realmsclient/Unit; getLargest a method_25027 + p 0 bytes + m (JLcom/mojang/realmsclient/Unit;)D convertTo a method_25028 + p 0 bytes + p 2 unit + m (J)Ljava/lang/String; humanReadable b method_25029 + p 0 bytes + m (JLcom/mojang/realmsclient/Unit;)Ljava/lang/String; humanReadable b method_25030 + p 0 bytes + p 2 unit + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/client/FileDownload fbv net/minecraft/class_4333 + f Lorg/slf4j/Logger; LOGGER a field_19522 + f Z cancelled b field_19523 + f Z finished c field_19524 + f Z error d field_19525 + f Z extracting e field_19526 + f Ljava/io/File; tempFile f field_20490 + f Ljava/io/File; resourcePackPath g field_19528 + f Lorg/apache/http/client/methods/HttpGet; request h field_20491 + f Ljava/lang/Thread; currentThread i field_19530 + f Lorg/apache/http/client/config/RequestConfig; requestConfig j field_19531 + f [Ljava/lang/String; INVALID_FILE_NAMES k field_19532 + m ()V cancel a method_20948 + m (Lcom/mojang/realmsclient/dto/WorldDownload;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Ljava/lang/String;Lnet/minecraft/world/level/storage/LevelStorageSource;)V method_22099 a method_22099 + m (Lcom/mojang/realmsclient/dto/WorldDownload;Ljava/lang/String;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Lnet/minecraft/world/level/storage/LevelStorageSource;)V download a method_22100 + p 1 download + p 2 worldName + p 3 status + p 4 source + m (Ljava/lang/String;)J contentLength a method_20955 + p 1 uri + m (Ljava/lang/String;Ljava/io/File;Lnet/minecraft/world/level/storage/LevelStorageSource;)V untarGzipArchive a method_20956 + p 1 worldName + p 2 tempFile + p 3 levelStorageSource + m ()Z isFinished b method_20957 + m (Ljava/lang/String;)Ljava/lang/String; findAvailableFolderName b method_20960 + c Modifies a folder name to make sure it is valid to store on disk.\n@return the modified folder name + p 0 folderName + c The folder name to modify + m ()Z isError c method_20961 + m ()Z isExtracting d method_20964 + m ()V + m ()V +c com/mojang/realmsclient/client/FileDownload$DownloadCountingOutputStream fbv$a net/minecraft/class_4333$class_4334 + f Ljava/awt/event/ActionListener; listener a field_19539 + m (Ljava/awt/event/ActionListener;)V setListener a method_20969 + p 1 listener + m (Ljava/io/OutputStream;)V + p 1 out +c com/mojang/realmsclient/client/FileDownload$ProgressListener fbv$b net/minecraft/class_4333$class_4335 + f Lcom/mojang/realmsclient/client/FileDownload; field_19540 a field_19540 + f Ljava/lang/String; worldName b field_19541 + f Ljava/io/File; tempFile c field_19542 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelStorageSource d field_19543 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus e field_19544 + m (Lcom/mojang/realmsclient/client/FileDownload;Ljava/lang/String;Ljava/io/File;Lnet/minecraft/world/level/storage/LevelStorageSource;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;)V + p 2 worldName + p 3 tempFile + p 4 levelStorageSource + p 5 downloadStatus +c com/mojang/realmsclient/client/FileDownload$ResourcePackProgressListener fbv$c net/minecraft/class_4333$class_4336 + f Lcom/mojang/realmsclient/client/FileDownload; field_19546 a field_19546 + f Ljava/io/File; tempFile b field_19547 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus c field_19548 + f Lcom/mojang/realmsclient/dto/WorldDownload; worldDownload d field_19549 + m (Lcom/mojang/realmsclient/client/FileDownload;Ljava/io/File;Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus;Lcom/mojang/realmsclient/dto/WorldDownload;)V + p 2 tempFile + p 3 downloadStatus + p 4 worldDownload +c com/mojang/realmsclient/client/FileUpload fbw net/minecraft/class_4337 + f Lorg/slf4j/Logger; LOGGER a field_19550 + f I MAX_RETRIES b field_32056 + f Ljava/lang/String; UPLOAD_PATH c field_32057 + f Ljava/io/File; file d field_19551 + f J realmId e field_19552 + f I slotId f field_19553 + f Lcom/mojang/realmsclient/dto/UploadInfo; uploadInfo g field_19554 + f Ljava/lang/String; sessionId h field_19555 + f Ljava/lang/String; username i field_19556 + f Ljava/lang/String; clientVersion j field_19557 + f Ljava/lang/String; worldVersion k field_49104 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus l field_19558 + f Ljava/util/concurrent/atomic/AtomicBoolean; cancelled m field_19559 + f Ljava/util/concurrent/CompletableFuture; uploadTask n field_19560 + f Lorg/apache/http/client/config/RequestConfig; requestConfig o field_19561 + m ()V cancel a method_20970 + m (I)Lcom/mojang/realmsclient/gui/screens/UploadResult; requestUpload a method_20971 + p 1 retries + c The number of times this upload has already been attempted + m (JI)Z shouldRetry a method_20972 + p 1 retryDelaySeconds + p 3 retries + m (Ljava/util/function/Consumer;)V upload a method_20973 + p 1 resultConsumer + m (Lorg/apache/http/HttpResponse;)J getRetryDelaySeconds a method_20974 + p 1 httpResponse + m (Lorg/apache/http/HttpResponse;Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder;)V handleResponse a method_20975 + p 1 response + p 2 uploadResult + m (Lorg/apache/http/client/methods/HttpPost;)V setupRequest a method_20976 + p 1 post + m (Lorg/apache/http/client/methods/HttpPost;Lorg/apache/http/impl/client/CloseableHttpClient;)V cleanup a method_20977 + p 1 post + p 2 httpClient + m ()Z isFinished b method_20978 + m (JI)Lcom/mojang/realmsclient/gui/screens/UploadResult; retryUploadAfter b method_20979 + p 1 seconds + p 3 retries + m ()Lcom/mojang/realmsclient/gui/screens/UploadResult; method_20980 c method_20980 + m (Ljava/io/File;JILcom/mojang/realmsclient/dto/UploadInfo;Lnet/minecraft/client/User;Ljava/lang/String;Ljava/lang/String;Lcom/mojang/realmsclient/client/UploadStatus;)V + p 1 file + p 2 realmId + p 4 slotId + p 5 uploadInfo + p 6 user + p 7 clientVersiob + p 8 worldVersion + p 9 uploadStatus + m ()V +c com/mojang/realmsclient/client/FileUpload$CustomInputStreamEntity fbw$a net/minecraft/class_4337$class_4338 + f J length a field_19562 + f Ljava/io/InputStream; content b field_19563 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus c field_19564 + m (Ljava/io/InputStream;JLcom/mojang/realmsclient/client/UploadStatus;)V + p 1 content + p 2 length + p 4 uploadStatus +c com/mojang/realmsclient/client/Ping fbx net/minecraft/class_4339 + m ()Ljava/util/List; pingAllRegions a method_20981 + m (Ljava/lang/String;)I ping a method_20982 + p 0 hostname + m ([Lcom/mojang/realmsclient/client/Ping$Region;)Ljava/util/List; ping a method_20984 + p 0 regions + m ()J now b method_20985 + m ()V +c com/mojang/realmsclient/client/Ping$Region fbx$a net/minecraft/class_4339$class_4340 + f Lcom/mojang/realmsclient/client/Ping$Region; US_EAST_1 a field_19565 + f Lcom/mojang/realmsclient/client/Ping$Region; US_WEST_2 b field_19566 + f Lcom/mojang/realmsclient/client/Ping$Region; US_WEST_1 c field_19567 + f Lcom/mojang/realmsclient/client/Ping$Region; EU_WEST_1 d field_19568 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_SOUTHEAST_1 e field_19569 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_SOUTHEAST_2 f field_19570 + f Lcom/mojang/realmsclient/client/Ping$Region; AP_NORTHEAST_1 g field_19571 + f Lcom/mojang/realmsclient/client/Ping$Region; SA_EAST_1 h field_19572 + f Ljava/lang/String; name i field_19573 + f Ljava/lang/String; endpoint j field_19574 + f [Lcom/mojang/realmsclient/client/Ping$Region; $VALUES k field_19575 + m ()[Lcom/mojang/realmsclient/client/Ping$Region; $values a method_36845 + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 name + p 4 endpoint + m ()V +c com/mojang/realmsclient/client/RealmsClient fby net/minecraft/class_4341 + f Ljava/lang/String; PATH_WORLD_GET A field_32093 + f Ljava/lang/String; PATH_WORLD_INVITES B field_32094 + f Ljava/lang/String; PATH_WORLD_UNINVITE C field_32095 + f Ljava/lang/String; PATH_PENDING_INVITES_COUNT D field_32058 + f Ljava/lang/String; PATH_PENDING_INVITES E field_32059 + f Ljava/lang/String; PATH_ACCEPT_INVITE F field_32060 + f Ljava/lang/String; PATH_REJECT_INVITE G field_32061 + f Ljava/lang/String; PATH_UNINVITE_MYSELF H field_32062 + f Ljava/lang/String; PATH_WORLD_UPDATE I field_32063 + f Ljava/lang/String; PATH_SLOT J field_32064 + f Ljava/lang/String; PATH_WORLD_OPEN K field_32065 + f Ljava/lang/String; PATH_WORLD_CLOSE L field_32066 + f Ljava/lang/String; PATH_WORLD_RESET M field_32067 + f Ljava/lang/String; PATH_DELETE_WORLD N field_32068 + f Ljava/lang/String; PATH_WORLD_BACKUPS O field_32069 + f Ljava/lang/String; PATH_WORLD_DOWNLOAD P field_32070 + f Ljava/lang/String; PATH_WORLD_UPLOAD Q field_32071 + f Ljava/lang/String; PATH_CLIENT_COMPATIBLE R field_32072 + f Ljava/lang/String; PATH_TOS_AGREED S field_32073 + f Ljava/lang/String; PATH_NEWS T field_32074 + f Ljava/lang/String; PATH_MARK_NOTIFICATIONS_SEEN U field_43012 + f Ljava/lang/String; PATH_DISMISS_NOTIFICATIONS V field_43013 + f Lcom/mojang/realmsclient/dto/GuardedSerializer; GSON W field_22568 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; ENVIRONMENT a field_45232 + f Lorg/slf4j/Logger; LOGGER b field_19578 + f Ljava/lang/String; sessionId c field_19579 + f Ljava/lang/String; username d field_19580 + f Lnet/minecraft/client/Minecraft; minecraft e field_26901 + f Ljava/lang/String; WORLDS_RESOURCE_PATH f field_32076 + f Ljava/lang/String; INVITES_RESOURCE_PATH g field_32077 + f Ljava/lang/String; MCO_RESOURCE_PATH h field_32078 + f Ljava/lang/String; SUBSCRIPTION_RESOURCE i field_32079 + f Ljava/lang/String; ACTIVITIES_RESOURCE j field_32080 + f Ljava/lang/String; OPS_RESOURCE k field_32081 + f Ljava/lang/String; REGIONS_RESOURCE l field_32082 + f Ljava/lang/String; TRIALS_RESOURCE m field_32083 + f Ljava/lang/String; NOTIFICATIONS_RESOURCE n field_43014 + f Ljava/lang/String; PATH_LIST_ALL_REALMS o field_46687 + f Ljava/lang/String; PATH_CREATE_SNAPSHOT_REALM p field_46688 + f Ljava/lang/String; PATH_SNAPSHOT_ELIGIBLE_REALMS q field_46689 + f Ljava/lang/String; PATH_INITIALIZE r field_32084 + f Ljava/lang/String; PATH_GET_ACTIVTIES s field_32085 + f Ljava/lang/String; PATH_GET_LIVESTATS t field_32086 + f Ljava/lang/String; PATH_GET_SUBSCRIPTION u field_32087 + f Ljava/lang/String; PATH_OP v field_32088 + f Ljava/lang/String; PATH_PUT_INTO_MINIGAMES_MODE w field_32089 + f Ljava/lang/String; PATH_AVAILABLE x field_32090 + f Ljava/lang/String; PATH_TEMPLATES y field_32091 + f Ljava/lang/String; PATH_WORLD_JOIN z field_32092 + m ()Lcom/mojang/realmsclient/client/RealmsClient; create a method_44616 + m (IILcom/mojang/realmsclient/dto/RealmsServer$WorldType;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; fetchWorldTemplates a method_20990 + p 1 page + p 2 pageSize + p 3 worldType + m (J)Lcom/mojang/realmsclient/dto/RealmsServer; getOwnRealm a method_20991 + p 1 id + m (JI)Z switchSlot a method_20992 + p 1 worldId + p 3 slotId + m (JILcom/mojang/realmsclient/dto/RealmsWorldOptions;)V updateSlot a method_20993 + p 1 worldId + p 3 slotId + p 4 worldOptions + m (JLcom/mojang/realmsclient/util/WorldGenerationInfo;)Ljava/lang/Boolean; resetWorldWithSeed a method_20995 + p 1 worldId + p 3 generationInfo + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; invite a method_21004 + p 1 worldId + p 3 playerName + m (JLjava/lang/String;Ljava/lang/String;)V initializeRealm a method_20996 + p 1 worldId + p 3 name + p 4 description + m (JLjava/util/UUID;)V uninvite a method_20994 + p 1 worldId + p 3 playerUuid + m (Lcom/mojang/realmsclient/client/Request;)Ljava/lang/String; execute a method_20998 + p 1 request + m (Lcom/mojang/realmsclient/dto/PendingInvite;)Z isBlocked a method_31381 + p 1 pendingInvite + m (Lcom/mojang/realmsclient/dto/PingResult;)V sendPingResults a method_20997 + p 1 pingResult + m (Lnet/minecraft/client/Minecraft;)Lcom/mojang/realmsclient/client/RealmsClient; create a method_20989 + p 0 minecraft + m (Ljava/lang/Long;)Lcom/mojang/realmsclient/dto/RealmsServer; createSnapshotRealm a method_54360 + p 1 parentId + m (Ljava/lang/String;)V acceptInvitation a method_20999 + p 1 inviteId + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; url a method_21007 + p 1 path + p 2 query + m (Ljava/util/List;)V notificationsSeen a method_49569 + p 1 uuidList + m ()Lcom/mojang/realmsclient/dto/RealmsServerList; listRealms b method_21015 + m (J)Lcom/mojang/realmsclient/dto/ServerActivityList; getActivity b method_35684 + p 1 worldId + m (JI)Lcom/mojang/realmsclient/dto/WorldDownload; requestDownloadInfo b method_21003 + p 1 worldId + p 3 slotId + m (JLjava/lang/String;)V restoreWorld b method_21010 + p 1 worldId + p 3 backupId + m (JLjava/lang/String;Ljava/lang/String;)V update b method_21005 + p 1 worldId + p 3 name + p 4 description + m (JLjava/util/UUID;)Lcom/mojang/realmsclient/dto/Ops; op b method_21017 + p 1 worldId + p 3 profileUuid + m (Ljava/lang/String;)V rejectInvitation b method_21006 + p 1 inviteId + m (Ljava/util/List;)V notificationsDismiss b method_49570 + p 1 uuidList + m ()Ljava/util/List; listSnapshotEligibleRealms c method_54361 + m (J)Lcom/mojang/realmsclient/dto/RealmsServerAddress; join c method_21009 + p 1 serverId + m (JLjava/lang/String;)Ljava/lang/Boolean; putIntoMinigameMode c method_21014 + p 1 worldId + p 3 minigameId + m (JLjava/util/UUID;)Lcom/mojang/realmsclient/dto/Ops; deop c method_21020 + p 1 worldId + p 3 profileUuid + m (Ljava/lang/String;)Ljava/lang/String; url c method_21011 + p 1 path + m (Ljava/util/List;)Lcom/google/gson/JsonArray; uuidListToJsonArray c method_49571 + p 0 uuidList + m ()Ljava/util/List; getNotifications d method_49572 + m (J)V uninviteMyselfFrom d method_21013 + p 1 worldId + m (JLjava/lang/String;)Ljava/lang/Boolean; resetWorldWithTemplate d method_21023 + p 1 worldId + p 3 worldTemplateId + m ()Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; getLiveStats e method_21018 + m (J)Lcom/mojang/realmsclient/dto/BackupList; backupsFor e method_21016 + p 1 worldId + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/UploadInfo; requestUploadInfo e method_21026 + p 1 worldId + p 3 token + m ()Z hasParentalConsent f method_52655 + m (J)Ljava/lang/Boolean; open f method_21019 + p 1 worldId + m ()Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; clientCompatible g method_21027 + m (J)Ljava/lang/Boolean; close g method_21022 + p 1 worldId + m ()I pendingInvitesCount h method_21029 + m (J)Lcom/mojang/realmsclient/dto/Subscription; subscriptionFor h method_21025 + p 1 worldId + m ()Lcom/mojang/realmsclient/dto/PendingInvitesList; pendingInvites i method_21030 + m (J)V deleteRealm i method_21028 + p 1 worldId + m ()V agreeToTos j method_21031 + m ()Lcom/mojang/realmsclient/dto/RealmsNews; getNews k method_21032 + m ()Ljava/lang/Boolean; trialAvailable l method_21033 + m ()Ljava/util/Optional; method_52656 m method_52656 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/Minecraft;)V + p 1 sessionId + p 2 username + p 3 minecraft + m ()V +c com/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse fby$a net/minecraft/class_4341$class_4342 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; COMPATIBLE a field_19582 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; OUTDATED b field_19583 + f Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; OTHER c field_19584 + f [Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; $VALUES d field_19585 + m ()[Lcom/mojang/realmsclient/client/RealmsClient$CompatibleVersionResponse; $values a method_36846 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/client/RealmsClient$Environment fby$b net/minecraft/class_4341$class_4343 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; PRODUCTION a field_19586 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; STAGE b field_19587 + f Lcom/mojang/realmsclient/client/RealmsClient$Environment; LOCAL c field_19588 + f Ljava/lang/String; baseUrl d field_19589 + f Ljava/lang/String; protocol e field_19590 + f [Lcom/mojang/realmsclient/client/RealmsClient$Environment; $VALUES f field_19591 + m ()[Lcom/mojang/realmsclient/client/RealmsClient$Environment; $values a method_36847 + m (Ljava/lang/String;)Ljava/util/Optional; byName a method_52215 + p 0 name + m (Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V + p 3 baseUrl + p 4 protocol + m ()V +c com/mojang/realmsclient/client/RealmsClientConfig fbz net/minecraft/class_4344 + f Ljava/net/Proxy; proxy a field_19592 + m ()Ljava/net/Proxy; getProxy a method_21034 + m (Ljava/net/Proxy;)V setProxy a method_21035 + p 0 proxy + m ()V +c com/mojang/realmsclient/client/RealmsError fca net/minecraft/class_4345 + f Lnet/minecraft/network/chat/Component; NO_MESSAGE a field_45233 + f Lorg/slf4j/Logger; LOGGER b field_19593 + m ()I errorCode a method_21037 + m (ILjava/lang/String;)Lcom/mojang/realmsclient/client/RealmsError; parse a method_30162 + p 0 httpCode + p 1 payload + m ()Lnet/minecraft/network/chat/Component; errorMessage b method_52657 + m ()Ljava/lang/String; logMessage c method_21036 + m ()V +c com/mojang/realmsclient/client/RealmsError$AuthenticationError fca$a net/minecraft/class_4345$class_8652 + f I ERROR_CODE c field_45234 + f Ljava/lang/String; message d comp_1595 + m ()Ljava/lang/String; message d comp_1595 + m (Ljava/lang/String;)V +c com/mojang/realmsclient/client/RealmsError$CustomError fca$b net/minecraft/class_4345$class_8653 + f Lcom/mojang/realmsclient/client/RealmsError$CustomError; SERVICE_BUSY c field_45235 + f Lnet/minecraft/network/chat/Component; RETRY_MESSAGE d field_45236 + f I httpCode e comp_1596 + f Lnet/minecraft/network/chat/Component; payload f comp_1597 + m (I)Lcom/mojang/realmsclient/client/RealmsError$CustomError; retry a method_52658 + p 0 httpCode + m (Lcom/mojang/realmsclient/exception/RealmsHttpException;)Lcom/mojang/realmsclient/client/RealmsError$CustomError; connectivityError a method_52659 + p 0 payload + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/RealmsError$CustomError; unknownCompatibilityResponse a method_52660 + p 0 payload + m (I)Lcom/mojang/realmsclient/client/RealmsError$CustomError; noPayload b method_52661 + p 0 httpCode + m ()I httpCode d comp_1596 + m ()Lnet/minecraft/network/chat/Component; payload e comp_1597 + m (ILnet/minecraft/network/chat/Component;)V + m ()V +c com/mojang/realmsclient/client/RealmsError$ErrorWithJsonPayload fca$c net/minecraft/class_4345$class_8654 + f I httpCode c comp_1598 + f I code d comp_1599 + f Ljava/lang/String; reason e comp_1600 + f Ljava/lang/String; message f comp_1601 + m ()I httpCode d comp_1598 + m ()I code e comp_1599 + m ()Ljava/lang/String; reason f comp_1600 + m ()Ljava/lang/String; message g comp_1601 + m (IILjava/lang/String;Ljava/lang/String;)V +c com/mojang/realmsclient/client/RealmsError$ErrorWithRawPayload fca$d net/minecraft/class_4345$class_8655 + f I httpCode c comp_1602 + f Ljava/lang/String; payload d comp_1603 + m ()I httpCode d comp_1602 + m ()Ljava/lang/String; payload e comp_1603 + m (ILjava/lang/String;)V +c com/mojang/realmsclient/client/Request fcb net/minecraft/class_4346 + f Ljava/net/HttpURLConnection; connection a field_19596 + f Ljava/lang/String; url b field_19597 + f Z connected c field_19598 + f I DEFAULT_READ_TIMEOUT d field_32096 + f I DEFAULT_CONNECT_TIMEOUT e field_32097 + f Ljava/lang/String; IS_SNAPSHOT_KEY f field_46690 + f Ljava/lang/String; COOKIE_KEY g field_46691 + m ()I getRetryAfterHeader a method_21038 + m (Ljava/io/InputStream;)Ljava/lang/String; read a method_21039 + p 1 in + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; get a method_21040 + p 0 url + m (Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; get a method_21041 + p 0 url + p 1 connectTimeout + p 2 readTimeout + m (Ljava/lang/String;Ljava/lang/String;)V cookie a method_21042 + p 1 key + p 2 value + m (Ljava/lang/String;Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; post a method_21043 + p 0 url + p 1 content + p 2 connectTimeout + p 3 readTimeout + m (Ljava/net/HttpURLConnection;)I getRetryAfterHeader a method_21044 + p 0 connection + m (Ljava/net/HttpURLConnection;Ljava/lang/String;)Ljava/lang/String; getHeader a method_21045 + p 0 connection + p 1 name + m (Ljava/net/HttpURLConnection;Ljava/lang/String;Ljava/lang/String;)V cookie a method_21046 + p 0 connection + p 1 key + p 2 value + m (Z)V addSnapshotHeader a method_54362 + p 1 isSnapshot + m ()I responseCode b method_21047 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; delete b method_21048 + p 0 url + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; post b method_21049 + p 0 url + p 1 content + m (Ljava/lang/String;Ljava/lang/String;II)Lcom/mojang/realmsclient/client/Request; put b method_21050 + p 0 url + p 1 content + p 2 connectTimeout + p 3 readTimeout + m ()Ljava/lang/String; text c method_21051 + m (Ljava/lang/String;)Ljava/lang/String; getHeader c method_21052 + p 1 name + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/client/Request; put c method_21053 + p 0 url + p 1 content + m ()Lcom/mojang/realmsclient/client/Request; connect d method_21054 + m ()Lcom/mojang/realmsclient/client/Request; doConnect e method_21055 + m ()V dispose f method_21056 + m (Ljava/lang/String;II)V + p 1 url + p 2 connectTimeout + p 3 readTimeout +c com/mojang/realmsclient/client/Request$Delete fcb$a net/minecraft/class_4346$class_4347 + m ()Lcom/mojang/realmsclient/client/Request$Delete; doConnect f method_21057 + m (Ljava/lang/String;II)V +c com/mojang/realmsclient/client/Request$Get fcb$b net/minecraft/class_4346$class_4348 + m ()Lcom/mojang/realmsclient/client/Request$Get; doConnect f method_21058 + m (Ljava/lang/String;II)V +c com/mojang/realmsclient/client/Request$Post fcb$c net/minecraft/class_4346$class_4349 + f Ljava/lang/String; content c field_19599 + m ()Lcom/mojang/realmsclient/client/Request$Post; doConnect f method_21059 + m (Ljava/lang/String;Ljava/lang/String;II)V + p 1 url + p 2 content + p 3 connectTimeout + p 4 readTimeout +c com/mojang/realmsclient/client/Request$Put fcb$d net/minecraft/class_4346$class_4350 + f Ljava/lang/String; content c field_19600 + m ()Lcom/mojang/realmsclient/client/Request$Put; doConnect f method_21060 + m (Ljava/lang/String;Ljava/lang/String;II)V + p 1 url + p 2 content + p 3 connectTimeout + p 4 readTimeout +c com/mojang/realmsclient/client/UploadStatus fcc net/minecraft/class_4351 + f J bytesWritten a field_19601 + f J totalBytes b field_19602 + m ()V +c com/mojang/realmsclient/client/package-info fcd net/minecraft/class_6191 +c com/mojang/realmsclient/dto/Backup fce net/minecraft/class_4867 + f Ljava/lang/String; backupId a field_22569 + f Ljava/util/Date; lastModifiedDate b field_22570 + f J size c field_22571 + f Ljava/util/Map; metadata d field_22572 + f Ljava/util/Map; changeList e field_22573 + f Lorg/slf4j/Logger; LOGGER f field_22574 + f Z uploadedVersion g field_22575 + m ()Z isUploadedVersion a method_25032 + m (Lcom/google/gson/JsonElement;)Lcom/mojang/realmsclient/dto/Backup; parse a method_25033 + p 0 json + m (Z)V setUploadedVersion a method_25035 + p 1 uploadedVersion + m ()V + m ()V +c com/mojang/realmsclient/dto/BackupList fcf net/minecraft/class_4868 + f Ljava/util/List; backups a field_22576 + f Lorg/slf4j/Logger; LOGGER b field_22577 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/BackupList; parse a method_25036 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/GuardedSerializer fcg net/minecraft/class_4869 + f Lcom/google/gson/Gson; gson a field_22578 + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; toJson a method_49573 + p 1 json + m (Lcom/mojang/realmsclient/dto/ReflectionBasedSerialization;)Ljava/lang/String; toJson a method_25037 + p 1 reflectionBasedSerialization + m (Ljava/lang/String;Ljava/lang/Class;)Lcom/mojang/realmsclient/dto/ReflectionBasedSerialization; fromJson a method_25038 + p 1 json + p 2 classOfT + m ()V +c com/mojang/realmsclient/dto/Ops fch net/minecraft/class_4870 + f Ljava/util/Set; ops a field_22579 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Ops; parse a method_25039 + p 0 json + m ()V +c com/mojang/realmsclient/dto/PendingInvite fci net/minecraft/class_4871 + f Ljava/lang/String; invitationId a field_22580 + f Ljava/lang/String; realmName b field_22581 + f Ljava/lang/String; realmOwnerName c field_22582 + f Ljava/util/UUID; realmOwnerUuid d field_22583 + f Ljava/util/Date; date e field_22584 + f Lorg/slf4j/Logger; LOGGER f field_22585 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/PendingInvite; parse a method_25040 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/PendingInvitesList fcj net/minecraft/class_4872 + f Ljava/util/List; pendingInvites a field_22586 + f Lorg/slf4j/Logger; LOGGER b field_22587 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/PendingInvitesList; parse a method_25041 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/PingResult fck net/minecraft/class_4873 + f Ljava/util/List; pingResults a field_22588 + f Ljava/util/List; realmIds b field_22589 + m ()V +c com/mojang/realmsclient/dto/PlayerInfo fcl net/minecraft/class_4874 + f Ljava/lang/String; name a field_22590 + f Ljava/util/UUID; uuid b field_22591 + f Z operator c field_22592 + f Z accepted d field_22593 + f Z online e field_22594 + m ()Ljava/lang/String; getName a method_25042 + m (Ljava/lang/String;)V setName a method_25043 + p 1 name + m (Ljava/util/UUID;)V setUuid a method_25046 + p 1 uuid + m (Z)V setOperator a method_25044 + p 1 operator + m ()Ljava/util/UUID; getUuid b method_25045 + m (Z)V setAccepted b method_25047 + p 1 accepted + m ()Z isOperator c method_25048 + m (Z)V setOnline c method_25049 + p 1 online + m ()Z getAccepted d method_25050 + m ()Z getOnline e method_25051 + m ()V +c com/mojang/realmsclient/dto/RealmsDescriptionDto fcm net/minecraft/class_4875 + f Ljava/lang/String; name a field_22595 + f Ljava/lang/String; description b field_22596 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 name + p 2 description +c com/mojang/realmsclient/dto/RealmsNews fcn net/minecraft/class_4876 + f Ljava/lang/String; newsLink a field_22597 + f Lorg/slf4j/Logger; LOGGER b field_22598 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsNews; parse a method_25052 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsNotification fco net/minecraft/class_8204 + f Lorg/slf4j/Logger; LOGGER a field_43015 + f Ljava/lang/String; NOTIFICATION_UUID b field_43016 + f Ljava/lang/String; DISMISSABLE c field_43017 + f Ljava/lang/String; SEEN d field_43018 + f Ljava/lang/String; TYPE e field_43019 + f Ljava/lang/String; VISIT_URL f field_43020 + f Ljava/lang/String; INFO_POPUP g field_46538 + f Lnet/minecraft/network/chat/Component; BUTTON_TEXT_FALLBACK h field_46539 + f Ljava/util/UUID; uuid i field_43021 + f Z dismissable j field_43022 + f Z seen k field_43023 + f Ljava/lang/String; type l field_43024 + m ()Z seen a method_49574 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification; parse a method_49575 + p 0 json + m (Ljava/lang/String;)Ljava/util/List; parseList a method_49576 + p 0 json + m ()Z dismissable b method_49577 + m ()Ljava/util/UUID; uuid c method_49578 + m (Ljava/util/UUID;ZZLjava/lang/String;)V + p 1 uuid + p 2 dismissable + p 3 seen + p 4 type + m ()V +c com/mojang/realmsclient/dto/RealmsNotification$InfoPopup fco$a net/minecraft/class_8204$class_8814 + f Ljava/lang/String; TITLE a field_46540 + f Ljava/lang/String; MESSAGE b field_46541 + f Ljava/lang/String; IMAGE c field_46542 + f Ljava/lang/String; URL_BUTTON d field_46543 + f Lcom/mojang/realmsclient/dto/RealmsText; title e field_46544 + f Lcom/mojang/realmsclient/dto/RealmsText; message f field_46545 + f Lnet/minecraft/resources/ResourceLocation; image g field_46546 + f Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton; urlButton h field_46547 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$InfoPopup; parse a method_54107 + p 0 notification + p 1 json + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/components/PopupScreen;Z)V method_54108 a method_54108 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; buildScreen a method_54109 + p 1 backgroundScreen + p 2 uuidOutput + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54110 a method_54110 + m (Ljava/util/function/Consumer;)V method_54111 a method_54111 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_54112 a method_54112 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/mojang/realmsclient/dto/RealmsText;Lcom/mojang/realmsclient/dto/RealmsText;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton;)V + p 1 notification + p 2 title + p 3 message + p 4 image + p 5 urlButton +c com/mojang/realmsclient/dto/RealmsNotification$UrlButton fco$b net/minecraft/class_8204$class_8815 + f Ljava/lang/String; url a comp_1974 + f Lcom/mojang/realmsclient/dto/RealmsText; urlText b comp_1975 + f Ljava/lang/String; URL c field_46548 + f Ljava/lang/String; URL_TEXT d field_46549 + m ()Ljava/lang/String; url a comp_1974 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$UrlButton; parse a method_54113 + p 0 json + m ()Lcom/mojang/realmsclient/dto/RealmsText; urlText b comp_1975 + m (Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsText;)V +c com/mojang/realmsclient/dto/RealmsNotification$VisitUrl fco$c net/minecraft/class_8204$class_8205 + f Ljava/lang/String; URL a field_43025 + f Ljava/lang/String; BUTTON_TEXT b field_43026 + f Ljava/lang/String; MESSAGE c field_43027 + f Ljava/lang/String; url d field_43028 + f Lcom/mojang/realmsclient/dto/RealmsText; buttonText e field_43029 + f Lcom/mojang/realmsclient/dto/RealmsText; message f field_43030 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsNotification$VisitUrl; parse a method_49579 + p 0 notification + p 1 json + m (Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/Button; buildOpenLinkButton a method_49580 + p 1 lastScreen + m ()Lnet/minecraft/network/chat/Component; getMessage d method_49581 + m (Lcom/mojang/realmsclient/dto/RealmsNotification;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsText;Lcom/mojang/realmsclient/dto/RealmsText;)V + p 1 notification + p 2 url + p 3 buttonText + p 4 message +c com/mojang/realmsclient/dto/RealmsServer fcp net/minecraft/class_4877 + f J id a field_22599 + f Ljava/lang/String; remoteSubscriptionId b field_22600 + f Ljava/lang/String; name c field_22601 + f Ljava/lang/String; motd d field_22602 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; state e field_22603 + f Ljava/lang/String; owner f field_22604 + f Ljava/util/UUID; ownerUUID g field_22605 + f Ljava/util/List; players h field_22606 + f Ljava/util/Map; slots i field_22607 + f Z expired j field_22608 + f Z expiredTrial k field_22609 + f I daysLeft l field_22610 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType m field_22611 + f I activeSlot n field_22612 + f Ljava/lang/String; minigameName o field_22613 + f I minigameId p field_22614 + f Ljava/lang/String; minigameImage q field_22615 + f J parentRealmId r field_46692 + f Ljava/lang/String; parentWorldName s field_46693 + f Ljava/lang/String; activeVersion t field_46694 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility u field_46695 + f Lorg/slf4j/Logger; LOGGER v field_22617 + f I NO_VALUE w field_46696 + m ()Ljava/lang/String; getDescription a method_25053 + m (I)Ljava/lang/String; getWorldName a method_25054 + p 1 slot + m (Lcom/google/gson/JsonArray;)Ljava/util/List; parseInvited a method_25055 + p 0 jsonArray + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsServer; parse a method_25056 + p 0 json + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Lcom/mojang/realmsclient/dto/PlayerInfo;)I method_25057 a method_25057 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V sortInvited a method_25058 + p 0 realmsServer + m (Ljava/lang/String;)V setName a method_25060 + p 1 name + m (Ljava/util/Map;)Ljava/util/Map; cloneSlots a method_25061 + p 1 slots + m ()Ljava/lang/String; getName b method_25062 + m (Lcom/google/gson/JsonArray;)Ljava/util/Map; parseSlots b method_25063 + p 0 jsonArray + m (Ljava/lang/String;)V setDescription b method_25064 + p 1 motd + m ()Ljava/lang/String; getMinigameName c method_25065 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; parse c method_25066 + p 0 json + m ()Z isCompatible d method_54363 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; getCompatibility d method_54366 + p 0 id + m ()Z needsUpgrade e method_54364 + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; toServerData e method_31403 + p 1 ip + m ()Z needsDowngrade f method_54365 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$State; getState f method_25068 + p 0 name + m ()Lcom/mojang/realmsclient/dto/RealmsServer; clone g method_25067 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; getWorldType g method_25070 + p 0 name + m ()Z isSnapshotRealm h method_54367 + m ()Z isMinigameActive i method_60315 + m ()Ljava/util/Map; createEmptySlots j method_25069 + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$Compatibility fcp$a net/minecraft/class_4877$class_8842 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; UNVERIFIABLE a field_46697 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; INCOMPATIBLE b field_46698 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; RELEASE_TYPE_INCOMPATIBLE c field_51817 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; NEEDS_DOWNGRADE d field_46699 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; NEEDS_UPGRADE e field_46700 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; COMPATIBLE f field_46701 + f [Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; $VALUES g field_46702 + m ()Z isCompatible a method_54568 + m ()Z needsUpgrade b method_54569 + m ()Z needsDowngrade c method_54570 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; $values d method_54368 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$McoServerComparator fcp$b net/minecraft/class_4877$class_4319 + f Ljava/lang/String; refOwner a field_19432 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/dto/RealmsServer;)I compare a method_20830 + p 1 first + p 2 second + m (Ljava/lang/String;)V + p 1 refOwner +c com/mojang/realmsclient/dto/RealmsServer$State fcp$c net/minecraft/class_4877$class_4320 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; CLOSED a field_19433 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; OPEN b field_19434 + f Lcom/mojang/realmsclient/dto/RealmsServer$State; UNINITIALIZED c field_19435 + f [Lcom/mojang/realmsclient/dto/RealmsServer$State; $VALUES d field_19436 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$State; $values a method_36848 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServer$WorldType fcp$d net/minecraft/class_4877$class_4321 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; NORMAL a field_19437 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; MINIGAME b field_19438 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; ADVENTUREMAP c field_19439 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; EXPERIENCE d field_19440 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; INSPIRATION e field_19441 + f [Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; $VALUES f field_19442 + m ()[Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; $values a method_36849 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/RealmsServerAddress fcq net/minecraft/class_4878 + f Ljava/lang/String; address a field_22618 + f Ljava/lang/String; resourcePackUrl b field_22619 + f Ljava/lang/String; resourcePackHash c field_22620 + f Lorg/slf4j/Logger; LOGGER d field_22621 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerAddress; parse a method_25071 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServerList fcr net/minecraft/class_4879 + f Ljava/util/List; servers a field_22622 + f Lorg/slf4j/Logger; LOGGER b field_22623 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerList; parse a method_25072 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsServerPlayerLists fcs net/minecraft/class_4881 + f Ljava/util/Map; servers a field_52121 + f Lorg/slf4j/Logger; LOGGER b field_22628 + m (J)Ljava/util/List; getProfileResultsFor a method_60863 + p 1 index + m (Lcom/google/gson/JsonArray;)Ljava/util/List; parsePlayers a method_25073 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServerPlayerLists; parse a method_25074 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/RealmsText fct net/minecraft/class_8206 + f Ljava/lang/String; TRANSLATION_KEY a field_43031 + f Ljava/lang/String; ARGS b field_43032 + f Ljava/lang/String; translationKey c field_43033 + f [Ljava/lang/String; args d field_43034 + m ()Lnet/minecraft/network/chat/Component; createComponent a method_54114 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsText; parse a method_49582 + p 0 json + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; createComponent a method_49583 + p 1 defaultValue + m (Ljava/lang/String;[Ljava/lang/String;)V + p 1 translationKey + p 2 args +c com/mojang/realmsclient/dto/RealmsWorldOptions fcu net/minecraft/class_4883 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; DEFAULT_COMPATIBILITY A field_46842 + f J DEFAULT_TEMPLATE_ID B field_32110 + f Ljava/lang/String; DEFAULT_TEMPLATE_IMAGE C field_22646 + f Z pvp a field_22632 + f Z spawnAnimals b field_22633 + f Z spawnMonsters c field_22634 + f Z spawnNPCs d field_22635 + f I spawnProtection e field_22636 + f Z commandBlocks f field_22637 + f Z forceGameMode g field_22638 + f I difficulty h field_22639 + f I gameMode i field_22640 + f Ljava/lang/String; version j field_46843 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility k field_46844 + f J templateId l field_22642 + f Ljava/lang/String; templateImage m field_22643 + f Z empty n field_22645 + f Ljava/lang/String; slotName o field_22641 + f Z DEFAULT_FORCE_GAME_MODE p field_32100 + f Z DEFAULT_PVP q field_32101 + f Z DEFAULT_SPAWN_ANIMALS r field_32102 + f Z DEFAULT_SPAWN_MONSTERS s field_32103 + f Z DEFAULT_SPAWN_NPCS t field_32104 + f I DEFAULT_SPAWN_PROTECTION u field_32105 + f Z DEFAULT_COMMAND_BLOCKS v field_32106 + f I DEFAULT_DIFFICULTY w field_32107 + f I DEFAULT_GAME_MODE x field_32108 + f Ljava/lang/String; DEFAULT_SLOT_NAME y field_32109 + f Ljava/lang/String; DEFAULT_VERSION z field_46845 + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; createDefaults a method_25076 + m (I)Ljava/lang/String; getSlotName a method_25077 + p 1 slotIndex + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/RealmsWorldOptions; parse a method_25078 + p 0 json + m (Z)V setEmpty a method_25079 + p 1 empty + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; createEmptyDefaults b method_25080 + m (I)Ljava/lang/String; getDefaultSlotName b method_25081 + p 1 slotIndex + m ()Ljava/lang/String; toJson c method_25082 + m ()Lcom/mojang/realmsclient/dto/RealmsWorldOptions; clone d method_25083 + m (ZZZZIZIIZLjava/lang/String;Ljava/lang/String;Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility;)V + p 1 pvp + p 2 spawnAnimals + p 3 spawnMonsters + p 4 spawnNPCs + p 5 spawnProtection + p 6 commandBlocks + p 7 difficulty + p 8 gameMode + p 9 forceGameMode + p 10 slotName + p 11 version + p 12 compatibility + m ()V +c com/mojang/realmsclient/dto/RealmsWorldResetDto fcv net/minecraft/class_4884 + f Ljava/lang/String; seed a field_22647 + f J worldTemplateId b field_22648 + f I levelType c field_22649 + f Z generateStructures d field_22650 + f Ljava/util/Set; experiments e field_46703 + m (Ljava/lang/String;JIZLjava/util/Set;)V + p 1 seed + p 2 worldTemplateId + p 4 levelType + p 5 generateStructures + p 6 experiments +c com/mojang/realmsclient/dto/ReflectionBasedSerialization fcw net/minecraft/class_4885 +c com/mojang/realmsclient/dto/RegionPingResult fcx net/minecraft/class_4886 + f Ljava/lang/String; regionName a field_22651 + f I ping b field_22652 + m ()I ping a method_25084 + m (Ljava/lang/String;I)V + p 1 regionName + p 2 ping +c com/mojang/realmsclient/dto/ServerActivity fcy net/minecraft/class_6192 + f Ljava/lang/String; profileUuid a field_32111 + f J joinTime b field_32112 + f J leaveTime c field_32113 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/ServerActivity; parse a method_35686 + p 0 json + m ()V +c com/mojang/realmsclient/dto/ServerActivityList fcz net/minecraft/class_6193 + f J periodInMillis a field_32114 + f Ljava/util/List; serverActivities b field_32115 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/ServerActivityList; parse a method_35687 + p 0 json + m ()V +c com/mojang/realmsclient/dto/Subscription fda net/minecraft/class_4887 + f J startDate a field_22653 + f I daysLeft b field_22654 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; type c field_22655 + f Lorg/slf4j/Logger; LOGGER d field_22656 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Subscription; parse a method_25085 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; typeFrom b method_25086 + p 0 name + m ()V + m ()V +c com/mojang/realmsclient/dto/Subscription$SubscriptionType fda$a net/minecraft/class_4887$class_4322 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; NORMAL a field_19443 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; RECURRING b field_19444 + f [Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; $VALUES c field_19445 + m ()[Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; $values a method_36850 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/UploadInfo fdb net/minecraft/class_4888 + f Lorg/slf4j/Logger; LOGGER a field_22657 + f Ljava/lang/String; DEFAULT_SCHEMA b field_32116 + f I DEFAULT_PORT c field_32117 + f Ljava/util/regex/Pattern; URI_SCHEMA_PATTERN d field_26467 + f Z worldClosed e field_22658 + f Ljava/lang/String; token f field_22659 + f Ljava/net/URI; uploadEndpoint g field_22660 + m ()Ljava/lang/String; getToken a method_25087 + m (II)I selectPortOrDefault a method_30861 + p 0 port + p 1 defaultPort + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/UploadInfo; parse a method_25088 + p 0 json + m (Ljava/lang/String;I)Ljava/net/URI; assembleUri a method_30862 + p 0 uri + p 1 port + m (Ljava/lang/String;Ljava/util/regex/Matcher;)Ljava/lang/String; ensureEndpointSchema a method_30863 + p 0 uri + p 1 matcher + m ()Ljava/net/URI; getUploadEndpoint b method_25089 + m (Ljava/lang/String;)Ljava/lang/String; createRequest b method_30864 + p 0 token + m ()Z isWorldClosed c method_25091 + m (ZLjava/lang/String;Ljava/net/URI;)V + p 1 worldClosed + p 2 token + p 3 uploadEndpoint + m ()V +c com/mojang/realmsclient/dto/ValueObject fdc net/minecraft/class_4352 + m (Ljava/lang/reflect/Field;)Ljava/lang/String; getName a method_25093 + p 0 field + m (Ljava/lang/reflect/Field;)Z isStatic b method_25094 + p 0 field + m ()V +c com/mojang/realmsclient/dto/WorldDownload fdd net/minecraft/class_4889 + f Ljava/lang/String; downloadLink a field_22662 + f Ljava/lang/String; resourcePackUrl b field_22663 + f Ljava/lang/String; resourcePackHash c field_22664 + f Lorg/slf4j/Logger; LOGGER d field_22665 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/WorldDownload; parse a method_25095 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/WorldTemplate fde net/minecraft/class_4890 + f Ljava/lang/String; id a field_22666 + f Ljava/lang/String; name b field_22667 + f Ljava/lang/String; version c field_22668 + f Ljava/lang/String; author d field_22669 + f Ljava/lang/String; link e field_22670 + f Ljava/lang/String; image f field_22671 + f Ljava/lang/String; trailer g field_22672 + f Ljava/lang/String; recommendedPlayers h field_22673 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; type i field_22674 + f Lorg/slf4j/Logger; LOGGER j field_22675 + m (Lcom/google/gson/JsonObject;)Lcom/mojang/realmsclient/dto/WorldTemplate; parse a method_25096 + p 0 json + m ()V + m ()V +c com/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType fde$a net/minecraft/class_4890$class_4323 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; WORLD_TEMPLATE a field_19447 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; MINIGAME b field_19448 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; ADVENTUREMAP c field_19449 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; EXPERIENCE d field_19450 + f Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; INSPIRATION e field_19451 + f [Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; $VALUES f field_19452 + m ()[Lcom/mojang/realmsclient/dto/WorldTemplate$WorldTemplateType; $values a method_36851 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/dto/WorldTemplatePaginatedList fdf net/minecraft/class_4891 + f Ljava/util/List; templates a field_22676 + f I page b field_22677 + f I size c field_22678 + f I total d field_22679 + f Lorg/slf4j/Logger; LOGGER e field_22680 + m ()Z isLastPage a method_35688 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; parse a method_25097 + p 0 json + m ()V + m (I)V + p 1 size + m ()V +c com/mojang/realmsclient/dto/package-info fdg net/minecraft/class_6194 +c com/mojang/realmsclient/exception/RealmsDefaultUncaughtExceptionHandler fdh net/minecraft/class_4353 + f Lorg/slf4j/Logger; logger a field_19603 + m (Lorg/slf4j/Logger;)V + p 1 logger +c com/mojang/realmsclient/exception/RealmsHttpException fdi net/minecraft/class_4354 + m (Ljava/lang/String;Ljava/lang/Exception;)V + p 1 message + p 2 cause +c com/mojang/realmsclient/exception/RealmsServiceException fdj net/minecraft/class_4355 + f Lcom/mojang/realmsclient/client/RealmsError; realmsError a field_36320 + m (Lcom/mojang/realmsclient/client/RealmsError;)V + p 1 realmsError +c com/mojang/realmsclient/exception/RetryCallException fdk net/minecraft/class_4356 + f I DEFAULT_DELAY b field_32118 + f I delaySeconds c field_19608 + m (II)V + p 1 retryAfter + p 2 httpResultCode +c com/mojang/realmsclient/exception/package-info fdl net/minecraft/class_6195 +c com/mojang/realmsclient/gui/RealmsDataFetcher fdm net/minecraft/class_7578 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; dataFetcher a field_39682 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; notificationsTask b field_43035 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; serverListUpdateTask c field_39683 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; pendingInvitesTask d field_39685 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; trialAvailabilityTask e field_39686 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; newsTask f field_39687 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; onlinePlayersTask g field_52122 + f Lcom/mojang/realmsclient/gui/RealmsNewsManager; newsManager h field_39688 + f Ljava/util/List; tasks i field_46704 + m ()Ljava/util/List; getTasks a method_54369 + m (Lcom/mojang/realmsclient/client/RealmsClient;)Lcom/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData; method_44617 a method_44617 + m (Lcom/mojang/realmsclient/client/RealmsClient;)V + p 1 realmsClient +c com/mojang/realmsclient/gui/RealmsDataFetcher$ServerListData fdm$a net/minecraft/class_7578$class_8843 + f Ljava/util/List; serverList a comp_1989 + f Ljava/util/List; availableSnapshotServers b comp_1990 + m ()Ljava/util/List; serverList a comp_1989 + m ()Ljava/util/List; availableSnapshotServers b comp_1990 + m (Ljava/util/List;Ljava/util/List;)V +c com/mojang/realmsclient/gui/RealmsNewsManager fdn net/minecraft/class_7579 + f Lcom/mojang/realmsclient/util/RealmsPersistence; newsLocalStorage a field_39689 + f Z hasUnreadNews b field_39690 + f Ljava/lang/String; newsLink c field_39691 + m ()Z hasUnreadNews a method_44618 + m (Lcom/mojang/realmsclient/dto/RealmsNews;)V updateUnreadNews a method_44619 + p 1 realmsNews + m ()Ljava/lang/String; newsLink b method_44620 + m (Lcom/mojang/realmsclient/dto/RealmsNews;)Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; updateNewsStorage b method_44621 + p 1 realmsNews + m (Lcom/mojang/realmsclient/util/RealmsPersistence;)V + p 1 newsLocalStorage +c com/mojang/realmsclient/gui/RealmsServerList fdo net/minecraft/class_7580 + f Lnet/minecraft/client/Minecraft; minecraft a field_39692 + f Ljava/util/Set; removedServers b field_39693 + f Ljava/util/List; servers c field_39694 + m ()Z isEmpty a method_52664 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V removeItem a method_44622 + p 1 server + m (Ljava/util/List;)V updateServersList a method_44623 + p 1 servers + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c com/mojang/realmsclient/gui/RealmsWorldSlotButton fdp net/minecraft/class_4367 + f I slotIndex A field_19675 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State; state B field_19677 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_LOCATION a field_22682 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_1 b field_22683 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_2 c field_22684 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_WORLD_SLOT_3 d field_22685 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE u field_22681 + f Lnet/minecraft/resources/ResourceLocation; CHECKMARK_SPRITE v field_39067 + f Lnet/minecraft/network/chat/Component; SLOT_ACTIVE_TOOLTIP w field_26468 + f Lnet/minecraft/network/chat/Component; SWITCH_TO_MINIGAME_SLOT_TOOLTIP x field_26469 + f Lnet/minecraft/network/chat/Component; SWITCH_TO_WORLD_SLOT_TOOLTIP y field_26470 + f Lnet/minecraft/network/chat/Component; MINIGAME z field_44894 + m ()Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State; getState a method_25099 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V setServerData a method_54571 + p 1 serverData + m (Lcom/mojang/realmsclient/dto/RealmsServer;ZZ)Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; getAction a method_27455 + p 0 realmsServer + p 1 isCurrentlyActiveSlot + p 2 minigame + m (Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$State;Ljava/lang/String;)V setTooltipAndNarration a method_54572 + p 1 state + p 2 minigameName + m (IIIIILnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 slotIndex + p 6 onPress + m ()V +c com/mojang/realmsclient/gui/RealmsWorldSlotButton$Action fdp$a net/minecraft/class_4367$class_4368 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; NOTHING a field_19678 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; SWITCH_SLOT b field_19679 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; JOIN c field_19680 + f [Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; $VALUES d field_19681 + m ()[Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; $values a method_36853 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/realmsclient/gui/RealmsWorldSlotButton$State fdp$b net/minecraft/class_4367$class_4370 + f Z empty a field_19686 + f Z minigame b field_19687 + f Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton$Action; action c field_19688 + f Z isCurrentlyActiveSlot d field_19682 + f Ljava/lang/String; slotName e field_19683 + f Ljava/lang/String; slotVersion f field_46848 + f Lcom/mojang/realmsclient/dto/RealmsServer$Compatibility; compatibility g field_46849 + f J imageId h field_19684 + f Ljava/lang/String; image i field_19685 + m (Lcom/mojang/realmsclient/dto/RealmsServer;I)V + p 1 server + p 2 slot +c com/mojang/realmsclient/gui/RowButton fdq net/minecraft/class_4371 + f I width a field_19690 + f I height b field_19691 + f I xOffset c field_19692 + f I yOffset d field_19693 + m ()I getRight a method_21109 + m (I)V onClick a method_21110 + p 1 index + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawForRowAt a method_21111 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V draw a method_21112 + p 1 guiGraphics + p 2 x + p 3 y + p 4 showTooltip + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/util/List;Lnet/minecraft/realms/RealmsObjectSelectionList;IIII)V drawButtonsInRow a method_21113 + p 0 guiGraphics + p 1 buttons + p 2 pendingInvitations + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lnet/minecraft/realms/RealmsObjectSelectionList;Lnet/minecraft/client/gui/components/ObjectSelectionList$Entry;Ljava/util/List;IDD)V rowButtonMouseClicked a method_21114 + p 0 list + p 1 entry + p 2 buttons + p 3 button + p 4 mouseX + p 6 mouseY + m ()I getBottom b method_21115 + m (IIII)V + p 1 width + p 2 height + p 3 xOffset + p 4 yOffset +c com/mojang/realmsclient/gui/package-info fdr net/minecraft/class_6196 +c com/mojang/realmsclient/gui/screens/AddRealmPopupScreen fds net/minecraft/class_8656 + f Lnet/minecraft/resources/ResourceLocation; TRIAL_AVAILABLE_SPRITE B field_45276 + f Lnet/minecraft/client/gui/components/WidgetSprites; CROSS_BUTTON_SPRITES C field_45277 + f I BG_TEXTURE_WIDTH D field_45255 + f I BG_TEXTURE_HEIGHT E field_45256 + f I BG_BORDER_SIZE F field_45257 + f I IMAGE_WIDTH G field_45258 + f I IMAGE_HEIGHT H field_45259 + f I BUTTON_SPACING I field_45260 + f I PADDING J field_45261 + f I WIDTH K field_45262 + f I HEIGHT L field_45263 + f I TEXT_WIDTH M field_45264 + f I BUTTON_WIDTH N field_45265 + f I CAROUSEL_SWITCH_INTERVAL O field_45266 + f Ljava/util/List; carouselImages P field_45267 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen Q field_45268 + f Z trialAvailable R field_45269 + f Lnet/minecraft/client/gui/components/Button; createTrialButton S field_45270 + f I carouselIndex T field_45271 + f I carouselTick U field_45272 + f Lnet/minecraft/network/chat/Component; POPUP_TEXT a field_45273 + f Lnet/minecraft/network/chat/Component; CLOSE_TEXT b field_45274 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE c field_45275 + m ()I left C method_52680 + m ()I top D method_52681 + m ()I right E method_52682 + m ()I bottom F method_52683 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_52684 a method_52684 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V updateCarouselImages a method_52685 + p 0 resourceManager + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/Button;)V renderDiamond a method_52686 + p 0 guiGraphics + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V method_52687 a method_52687 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_52688 b method_52688 + m (Lnet/minecraft/client/gui/screens/Screen;Z)V + p 1 backgroundScreen + p 2 trialAvailable + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen fdt net/minecraft/class_4379 + f Lcom/mojang/realmsclient/dto/Backup; backup B field_19736 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_45973 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoList; backupInfoList D field_19738 + f Lnet/minecraft/network/chat/Component; TITLE a field_45972 + f Lnet/minecraft/network/chat/Component; UNKNOWN b field_27937 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen c field_19734 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;)Lnet/minecraft/client/gui/Font; method_29335 a method_29335 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53513 a method_53513 + m (Lnet/minecraft/client/gui/components/Button;)V method_25105 a method_25105 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; gameDifficultyMetadata a method_21140 + p 1 value + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; checkForSpecificMetadata a method_21141 + p 1 key + p 2 value + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;)Lnet/minecraft/client/gui/Font; method_51885 b method_51885 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; gameModeMetadata b method_21143 + p 1 value + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/Backup;)V + p 1 lastScreen + p 2 backup + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoList fdt$a net/minecraft/class_4379$class_4380 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen; field_19740 a field_19740 + m (Ljava/lang/String;Ljava/lang/String;)V method_29336 a method_29336 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c com/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen$BackupInfoListEntry fdt$b net/minecraft/class_4379$class_5344 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen; field_25257 a field_25257 + f Lnet/minecraft/network/chat/Component; TEMPLATE_NAME b field_44895 + f Lnet/minecraft/network/chat/Component; GAME_DIFFICULTY c field_44896 + f Lnet/minecraft/network/chat/Component; NAME d field_44897 + f Lnet/minecraft/network/chat/Component; GAME_SERVER_VERSION e field_44898 + f Lnet/minecraft/network/chat/Component; UPLOADED f field_44899 + f Lnet/minecraft/network/chat/Component; ENABLED_PACK g field_44900 + f Lnet/minecraft/network/chat/Component; DESCRIPTION h field_44901 + f Lnet/minecraft/network/chat/Component; GAME_MODE i field_44902 + f Lnet/minecraft/network/chat/Component; SEED j field_44903 + f Lnet/minecraft/network/chat/Component; WORLD_TYPE k field_44904 + f Lnet/minecraft/network/chat/Component; UNDEFINED l field_44905 + f Ljava/lang/String; key m field_25258 + f Ljava/lang/String; value n field_25259 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; translateKey a method_51886 + p 1 key + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupInfoScreen;Ljava/lang/String;Ljava/lang/String;)V + p 2 key + p 3 value + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen fdu net/minecraft/class_4381 + f Lnet/minecraft/network/chat/Component; HAS_CHANGES_TOOLTIP B field_26472 + f Lnet/minecraft/network/chat/Component; NO_BACKUPS_LABEL C field_26474 + f Lnet/minecraft/network/chat/Component; DOWNLOAD_LATEST D field_51818 + f Ljava/lang/String; UPLOADED_KEY E field_32119 + f I PADDING F field_49447 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen G field_19743 + f Ljava/util/List; backups H field_19744 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen$BackupObjectSelectionList; backupList I field_49448 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout J field_49449 + f I slotId K field_19748 + f Lnet/minecraft/client/gui/components/Button; downloadButton L field_19749 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData M field_19753 + f Z noBackups N field_19752 + f Lorg/slf4j/Logger; LOGGER a field_19741 + f Lnet/minecraft/network/chat/Component; TITLE b field_26473 + f Lnet/minecraft/network/chat/Component; RESTORE_TOOLTIP c field_26471 + m ()V fetchRealmsBackups C method_57661 + m ()V downloadClicked D method_21166 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_25108 a method_25108 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_25109 a method_25109 + m (Lnet/minecraft/client/gui/components/Button;)V method_25110 a method_25110 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25111 a method_25111 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_25115 b method_25115 + m (Lnet/minecraft/client/gui/components/Button;)V method_25113 b method_25113 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_25116 c method_25116 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_51237 d method_51237 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57662 e method_57662 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57663 f method_57663 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/gui/Font; method_57664 g method_57664 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_57665 h method_57665 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)Lnet/minecraft/client/Minecraft; method_57666 i method_57666 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;I)V + p 1 lastScreen + p 2 serverData + p 3 slotId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$1 fdu$1 net/minecraft/class_4381$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19755 a field_19755 + m (Ljava/util/List;)V method_21171 a method_21171 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$BackupObjectSelectionList fdu$a net/minecraft/class_4381$class_4382 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19760 a field_19760 + f I ITEM_HEIGHT m field_49450 + m (Lcom/mojang/realmsclient/dto/Backup;)V addEntry a method_21173 + p 1 backup + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsBackupScreen$Entry fdu$b net/minecraft/class_4381$class_4383 + f Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen; field_19762 a field_19762 + f I Y_PADDING b field_44525 + f Lcom/mojang/realmsclient/dto/Backup; backup c field_19761 + f Lnet/minecraft/client/gui/components/Button; restoreButton d field_49452 + f Lnet/minecraft/client/gui/components/Button; changesButton e field_49451 + f Ljava/util/List; children f field_44527 + m (Lcom/mojang/realmsclient/dto/Backup;)V populateChangeList a method_51239 + p 1 backup + m (Lnet/minecraft/client/gui/components/Button;)V method_57668 a method_57668 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_57673 a method_57673 + m (Ljava/lang/String;)V addToChangeList a method_51241 + p 1 change + m (Ljava/util/Date;)Ljava/lang/String; getMediumDatePresentation a method_21176 + p 1 date + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57669 a method_57669 + m (Lnet/minecraft/client/gui/components/Button;)V method_57670 b method_57670 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57671 b method_57671 + m ()Ljava/lang/String; getShortBackupDate c method_57672 + m ()V restoreClicked d method_57674 + m (Lcom/mojang/realmsclient/gui/screens/RealmsBackupScreen;Lcom/mojang/realmsclient/dto/Backup;)V + p 2 backup +c com/mojang/realmsclient/gui/screens/RealmsBrokenWorldScreen fdv net/minecraft/class_4384 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_19764 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData C field_20492 + f J serverId D field_19767 + f [Lnet/minecraft/network/chat/Component; message E field_19769 + f I leftX F field_19770 + f Ljava/util/List; slotsThatHasBeenDownloaded G field_19778 + f I animTick H field_19779 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE a field_45239 + f Lorg/slf4j/Logger; LOGGER b field_19763 + f I DEFAULT_BUTTON_WIDTH c field_32120 + m ()V addButtons C method_21178 + m ()Z isMinigame D method_21196 + m ()V method_25127 E method_25127 + m ()V method_37404 F method_37404 + m ()V method_25129 G method_25129 + m (I)I getFramePositionX a method_21179 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_25124 a method_25124 + m (ILnet/minecraft/client/gui/components/PopupScreen;)V method_25125 a method_25125 + m (IZ)V method_25121 a method_25121 + m (J)V fetchServerData a method_21181 + p 1 serverId + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_25128 a method_25128 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIZLjava/lang/String;IJLjava/lang/String;Z)V drawSlotFrame a method_21180 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 isActiveNonMinigame + p 7 text + p 8 slotIndex + p 9 templateId + p 11 templateImage + p 12 hasTemplateImage + m (Lnet/minecraft/client/gui/components/Button;)V method_25122 a method_25122 + m ()V doSwitchOrReset b method_25123 + m (I)V downloadWorld b method_21187 + p 1 slotIndex + m (ILnet/minecraft/client/gui/components/Button;)V method_25120 b method_25120 + m (J)V method_22101 b method_22101 + m (Lnet/minecraft/client/gui/screens/Screen;JZ)V + p 1 lastScreen + p 2 serverId + p 4 isMinigame + m ()V +c com/mojang/realmsclient/gui/screens/RealmsClientOutdatedScreen fdw net/minecraft/class_4387 + f Lnet/minecraft/network/chat/Component; OUTDATED_STABLE_VERSION B field_49456 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen C field_19787 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49453 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_TITLE a field_26477 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_CLIENT_VERSION b field_49454 + f Lnet/minecraft/network/chat/Component; UNSUPPORTED_SNAPSHOT_VERSION c field_49455 + m ()Lnet/minecraft/network/chat/Component; getErrorMessage C method_57675 + m (Lcom/mojang/realmsclient/gui/screens/RealmsClientOutdatedScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57676 a method_57676 + m (Lnet/minecraft/client/gui/components/Button;)V method_57677 a method_57677 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen fdx net/minecraft/class_4388 + f Lnet/minecraft/resources/ResourceLocation; CLOSED_SPRITE B field_45241 + f Lorg/slf4j/Logger; LOGGER C field_19790 + f Lnet/minecraft/network/chat/Component; WORLD_LIST_TITLE D field_26479 + f Lnet/minecraft/network/chat/Component; TITLE E field_26480 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRED_TOOLTIP F field_26482 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRING_SOON_TOOLTIP G field_26483 + f Lnet/minecraft/network/chat/Component; SERVER_EXPIRING_IN_DAY_TOOLTIP H field_26484 + f Lnet/minecraft/network/chat/Component; SERVER_OPEN_TOOLTIP I field_26485 + f Lnet/minecraft/network/chat/Component; SERVER_CLOSED_TOOLTIP J field_26486 + f I DEFAULT_BUTTON_WIDTH K field_32121 + f I DEFAULT_BUTTON_OFFSET L field_32122 + f Lnet/minecraft/network/chat/Component; toolTip M field_19791 + f Lcom/mojang/realmsclient/RealmsMainScreen; lastScreen N field_19792 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData O field_20493 + f J serverId P field_19794 + f I leftX Q field_19795 + f I rightX R field_19796 + f Lnet/minecraft/client/gui/components/Button; playersButton S field_19799 + f Lnet/minecraft/client/gui/components/Button; settingsButton T field_19800 + f Lnet/minecraft/client/gui/components/Button; subscriptionButton U field_19801 + f Lnet/minecraft/client/gui/components/Button; optionsButton V field_19802 + f Lnet/minecraft/client/gui/components/Button; backupButton W field_19803 + f Lnet/minecraft/client/gui/components/Button; resetWorldButton X field_19804 + f Lnet/minecraft/client/gui/components/Button; switchMinigameButton Y field_19805 + f Z stateChanged Z field_19806 + f Lnet/minecraft/resources/ResourceLocation; EXPIRED_SPRITE a field_22690 + f Ljava/util/List; slotButtonList aa field_33777 + f Lnet/minecraft/resources/ResourceLocation; EXPIRES_SOON_SPRITE b field_22691 + f Lnet/minecraft/resources/ResourceLocation; OPEN_SPRITE c field_45240 + m ()V disableButtons C method_21234 + m ()V switchToMinigame D method_21236 + m ()Z isMinigame E method_21238 + m ()V hideRegularButtons F method_21240 + m ()V hideMinigameButtons G method_21242 + m ()Lnet/minecraft/network/chat/Component; method_53456 J method_53456 + m ()Lnet/minecraft/network/chat/Component; method_53457 K method_53457 + m ()Lnet/minecraft/network/chat/Component; method_53458 L method_53458 + m ()Lnet/minecraft/network/chat/Component; method_53459 M method_53459 + m ()V method_25149 N method_25149 + m ()V method_25150 O method_25150 + m ()V method_37406 P method_37406 + m ()V method_25151 Q method_25151 + m ()V method_25133 R method_25133 + m ()V method_25134 S method_25134 + m (I)Lcom/mojang/realmsclient/gui/RealmsWorldSlotButton; addSlotButton a method_21199 + p 1 index + m (II)I centerButton a method_21200 + p 1 row + p 2 column + m (ILcom/mojang/realmsclient/dto/RealmsServer;)V switchToFullSlot a method_21203 + p 1 slot + p 2 server + m (ILcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_25136 a method_25136 + m (ILnet/minecraft/client/gui/components/Button;)V method_25135 a method_25135 + m (J)V fetchServerData a method_21204 + p 1 serverId + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V joinRealm a method_21206 + p 1 server + m (Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/client/gui/components/PopupScreen;)V method_25139 a method_25139 + m (Lcom/mojang/realmsclient/dto/RealmsWorldOptions;)V saveSlotSettings a method_21208 + p 1 worldOptions + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V templateSelectionCallback a method_32484 + p 1 worldTemplate + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V method_25137 a method_25137 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIILnet/minecraft/resources/ResourceLocation;Ljava/util/function/Supplier;)V drawRealmStatus a method_53460 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 sprite + p 7 tooltipSupplier + m (Lnet/minecraft/client/gui/components/Button;)V hide a method_25138 + p 1 button + m (Ljava/lang/String;Ljava/lang/String;)V saveSettings a method_21215 + p 1 key + p 2 value + m ()V closeTheWorld b method_21217 + m (I)I leftButton b method_21220 + p 1 index + m (ILcom/mojang/realmsclient/dto/RealmsServer;)V switchToEmptySlot b method_21222 + p 1 slot + p 2 server + m (J)V method_22103 b method_22103 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_37407 b method_37407 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawServerStatus b method_21201 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/components/Button;)V show b method_21226 + p 1 button + m (Z)V openTheWorld b method_21218 + p 1 join + m (Lnet/minecraft/client/gui/components/Button;)V method_25140 c method_25140 + m (Lnet/minecraft/client/gui/components/Button;)V method_25141 d method_25141 + m (Lnet/minecraft/client/gui/components/Button;)V method_25142 e method_25142 + m ()V stateChanged f method_21198 + m (Lnet/minecraft/client/gui/components/Button;)V method_25144 f method_25144 + m ()Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; getNewScreen g method_21219 + m (Lnet/minecraft/client/gui/components/Button;)V method_25145 g method_25145 + m (I)I frame h method_21228 + p 1 index + m (Lnet/minecraft/client/gui/components/Button;)V method_25146 h method_25146 + m (Lnet/minecraft/client/gui/components/Button;)V method_25147 i method_25147 + m (Lnet/minecraft/client/gui/components/Button;)V method_25148 j method_25148 + m (Lcom/mojang/realmsclient/RealmsMainScreen;J)V + p 1 lastScreen + p 2 serverId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen$1 fdx$1 net/minecraft/class_4388$1 + f [I $SwitchMap$com$mojang$realmsclient$gui$RealmsWorldSlotButton$Action a field_19812 + m ()V +c com/mojang/realmsclient/gui/screens/RealmsConfirmScreen fdy net/minecraft/class_4389 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback a field_22692 + f Lnet/minecraft/network/chat/Component; title1 b field_19821 + f Lnet/minecraft/network/chat/Component; title2 c field_19825 + m (Lnet/minecraft/client/gui/components/Button;)V method_25152 a method_25152 + m (Lnet/minecraft/client/gui/components/Button;)V method_25153 b method_25153 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title1 + p 3 title2 +c com/mojang/realmsclient/gui/screens/RealmsCreateRealmScreen fdz net/minecraft/class_4390 + f I BUTTON_SPACING B field_45243 + f I CONTENT_WIDTH C field_45244 + f Lcom/mojang/realmsclient/RealmsMainScreen; lastScreen D field_19830 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout E field_45242 + f Lnet/minecraft/client/gui/components/EditBox; nameBox F field_19831 + f Lnet/minecraft/client/gui/components/EditBox; descriptionBox G field_19832 + f Ljava/lang/Runnable; createWorldRunnable H field_46705 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_TEXT a field_46706 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26487 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_LABEL c field_26488 + m ()V method_25156 C method_25156 + m ()V method_25157 D method_25157 + m (J)V createSnapshotWorld a method_54370 + p 1 parentId + m (JLcom/mojang/realmsclient/util/WorldGenerationInfo;)V method_54371 a method_54371 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V createWorld a method_21245 + p 1 realmsServer + m (Lcom/mojang/realmsclient/gui/screens/RealmsCreateRealmScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52665 a method_52665 + m (Lnet/minecraft/client/gui/components/Button;)V method_52666 a method_52666 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_52667 a method_52667 + m (J)V method_54372 b method_54372 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54373 b method_54373 + m (Lnet/minecraft/client/gui/components/Button;)V method_54374 b method_54374 + m (Lcom/mojang/realmsclient/RealmsMainScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 realmsServer + m (Lcom/mojang/realmsclient/RealmsMainScreen;J)V + p 1 lastScreen + p 2 parentId + m ()V +c com/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen fea net/minecraft/class_4392 + f I BAR_TOP B field_41769 + f I BAR_BOTTOM C field_41770 + f I BAR_BORDER D field_41771 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen E field_19845 + f Lcom/mojang/realmsclient/dto/WorldDownload; worldDownload F field_19846 + f Lnet/minecraft/network/chat/Component; downloadTitle G field_19847 + f Lcom/google/common/util/concurrent/RateLimiter; narrationRateLimiter H field_19848 + f Lnet/minecraft/client/gui/components/Button; cancelButton I field_22694 + f Ljava/lang/String; worldName J field_19850 + f Lcom/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus; downloadStatus K field_19851 + f Lnet/minecraft/network/chat/Component; errorMessage L field_20494 + f Lnet/minecraft/network/chat/Component; status M field_19853 + f Ljava/lang/String; progress N field_19854 + f Z cancelled O field_19855 + f Z showDots P field_19856 + f Z finished Q field_19857 + f Z extracting R field_19858 + f Ljava/lang/Long; previousWrittenBytes S field_19859 + f Ljava/lang/Long; previousTimeSnapshot T field_19860 + f J bytesPersSecond U field_19861 + f I animTick V field_19862 + f [Ljava/lang/String; DOTS W field_19863 + f I dotIndex X field_19864 + f Z checked Y field_19867 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback Z field_22693 + f Lorg/slf4j/Logger; LOGGER a field_19844 + f Ljava/util/concurrent/locks/ReentrantLock; DOWNLOAD_LOCK b field_19868 + f I BAR_WIDTH c field_41772 + m ()V checkDownloadSize C method_21265 + m ()Lnet/minecraft/network/chat/Component; createProgressNarrationMessage D method_37012 + m ()V downloadSave E method_21278 + m ()V downloadCancelled F method_21279 + m ()V method_22104 G method_22104 + m (Lnet/minecraft/client/gui/GuiGraphics;J)V drawDownloadSpeed0 a method_21266 + p 1 guiGraphics + p 2 bytesPerSecond + m (Lnet/minecraft/client/gui/components/Button;)V method_25158 a method_25158 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25159 a method_25159 + m (Ljava/lang/String;)J getContentLength a method_21259 + p 1 uri + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawDots c method_21272 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawProgressBar d method_21274 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawDownloadSpeed e method_21276 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/WorldDownload;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 lastScreen + p 2 worldDownload + p 3 worldName + p 4 callback + m ()V +c com/mojang/realmsclient/gui/screens/RealmsDownloadLatestWorldScreen$DownloadStatus fea$a net/minecraft/class_4392$class_4393 + f J bytesWritten a field_19871 + f J totalBytes b field_19872 + m ()V +c com/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen feb net/minecraft/class_4394 + f Lnet/minecraft/client/gui/screens/Screen; nextScreen a field_22695 + f Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; lines b field_36321 + f Lnet/minecraft/client/gui/components/MultiLineLabel; line2Split c field_36322 + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_39981 + p 0 exception + m (Lnet/minecraft/client/gui/components/Button;)V method_25160 a method_25160 + m (Lnet/minecraft/network/chat/Component;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_21282 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lcom/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage; errorMessage a method_21283 + p 0 title + p 1 message + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 serviceException + p 2 nextScreen + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 message + p 2 nextScreen + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 title + p 2 line2 + p 3 message +c com/mojang/realmsclient/gui/screens/RealmsGenericErrorScreen$ErrorMessage feb$a net/minecraft/class_4394$class_8570 + f Lnet/minecraft/network/chat/Component; title a comp_1533 + f Lnet/minecraft/network/chat/Component; detail b comp_1534 + m ()Lnet/minecraft/network/chat/Component; title a comp_1533 + m ()Lnet/minecraft/network/chat/Component; detail b comp_1534 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V +c com/mojang/realmsclient/gui/screens/RealmsInviteScreen fec net/minecraft/class_4395 + f Lnet/minecraft/network/chat/Component; INVITING_PLAYER_TEXT B field_44943 + f Lnet/minecraft/network/chat/Component; NO_SUCH_PLAYER_ERROR_TEXT C field_26490 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49457 + f Lnet/minecraft/client/gui/components/EditBox; profileName E field_22696 + f Lnet/minecraft/client/gui/components/Button; inviteButton F field_49458 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData G field_19880 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureScreen H field_19881 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen I field_19882 + f Lnet/minecraft/network/chat/Component; message J field_19887 + f Lorg/slf4j/Logger; LOGGER a field_19878 + f Lnet/minecraft/network/chat/Component; TITLE b field_49459 + f Lnet/minecraft/network/chat/Component; NAME_LABEL c field_26489 + m ()V onInvite C method_21284 + m (JLjava/lang/String;)Lcom/mojang/realmsclient/dto/RealmsServer; method_52216 a method_52216 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_52217 a method_52217 + m (Lcom/mojang/realmsclient/gui/screens/RealmsInviteScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57678 a method_57678 + m (Lnet/minecraft/client/gui/components/Button;)V method_57679 a method_57679 + m (Lnet/minecraft/network/chat/Component;)V showMessage a method_21286 + p 1 message + m (Lnet/minecraft/client/gui/components/Button;)V method_25162 b method_25162 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 configureScreen + p 2 lastScreen + p 3 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen fed net/minecraft/class_4398 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_19912 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46111 + f Lnet/minecraft/network/chat/Component; title D field_19914 + f Lnet/minecraft/client/gui/components/LoadingDotsWidget; loadingDotsWidget E field_46112 + f Lorg/slf4j/Logger; LOGGER a field_19909 + f Lnet/minecraft/realms/RepeatedNarrator; REPEATED_NARRATOR b field_33779 + f Ljava/util/List; queuedTasks c field_46707 + m (Lcom/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53795 a method_53795 + m (Lnet/minecraft/client/gui/components/Button;)V method_25168 a method_25168 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_53796 a method_53796 + m (Lnet/minecraft/network/chat/Component;)V setTitle a method_53797 + p 1 title + m ([Lcom/mojang/realmsclient/util/task/LongRunningTask;)V method_54375 a method_54375 + m ()V cancel f method_53798 + m (Lnet/minecraft/client/gui/screens/Screen;[Lcom/mojang/realmsclient/util/task/LongRunningTask;)V + p 1 lastScreen + p 2 queuedTasks + m ()V +c com/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTickTaskScreen fee net/minecraft/class_8789 + f Lcom/mojang/realmsclient/util/task/LongRunningTask; task a field_46113 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/util/task/LongRunningTask;)V + p 1 lastScreen + p 2 task +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen fef net/minecraft/class_4399 + f Lnet/minecraft/resources/ResourceLocation; TRIAL_AVAILABLE_SPRITE B field_45248 + f Ljava/util/concurrent/CompletableFuture; validClient C field_19927 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; realmsDataSubscription D field_39695 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; currentConfiguration E field_43037 + f I numberOfPendingInvites F field_19924 + f Z trialAvailable G field_19926 + f Z hasUnreadNews H field_19928 + f Z hasUnseenNotifications I field_43038 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; showAll J field_43039 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; onlyNotifications K field_43040 + f Lnet/minecraft/resources/ResourceLocation; UNSEEN_NOTIFICATION_SPRITE a field_45245 + f Lnet/minecraft/resources/ResourceLocation; NEWS_SPRITE b field_45246 + f Lnet/minecraft/resources/ResourceLocation; INVITE_SPRITE c field_45247 + m ()Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration; getConfiguration C method_49584 + m ()Z getRealmsNotificationsEnabled D method_25169 + m ()Z inTitleScreen E method_25170 + m (Lcom/mojang/realmsclient/RealmsAvailability$Result;)Ljava/lang/Boolean; method_52670 a method_52670 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/dto/RealmsNews;)V method_49585 a method_49585 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription;)V addNewsAndInvitesSubscriptions a method_49586 + p 1 dataFetcher + p 2 subscription + m (Ljava/lang/Boolean;)V method_49587 a method_49587 + m (Ljava/lang/Integer;)V method_49588 a method_49588 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription;)V addNotificationsSubscriptions b method_49590 + p 1 dataFetcher + p 2 subscription + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawIcons c method_21295 + p 1 guiGraphics + m (Ljava/util/List;)V method_49591 c method_49591 + m ()V + m ()V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$1 fef$1 net/minecraft/class_4399$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; field_43042 a field_43042 + m (Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$2 fef$2 net/minecraft/class_4399$2 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; field_43041 a field_43041 + m (Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsNotificationsScreen$DataFetcherConfiguration fef$a net/minecraft/class_4399$class_8207 + m ()Z showOldNotifications a method_49592 + m (Lcom/mojang/realmsclient/gui/RealmsDataFetcher;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; initDataFetcher a method_49593 + p 1 dataFetcher +c com/mojang/realmsclient/gui/screens/RealmsParentalConsentScreen feg net/minecraft/class_4400 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen B field_46852 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget C field_46853 + f Lnet/minecraft/network/chat/Component; MESSAGE a field_26491 + f I SPACING b field_46850 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout c field_46851 + m (Lcom/mojang/realmsclient/gui/screens/RealmsParentalConsentScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54573 a method_54573 + m (Lnet/minecraft/client/gui/components/Button;)V method_54574 a method_54574 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 nextScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen feh net/minecraft/class_4401 + f Lnet/minecraft/resources/ResourceLocation; REJECT_SPRITE B field_22703 + f Lorg/slf4j/Logger; LOGGER C field_19935 + f Lnet/minecraft/network/chat/Component; NO_PENDING_INVITES_TEXT D field_26493 + f Lnet/minecraft/network/chat/Component; ACCEPT_INVITE E field_26494 + f Lnet/minecraft/network/chat/Component; REJECT_INVITE F field_26495 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen G field_19936 + f Ljava/util/concurrent/CompletableFuture; pendingInvites H field_45249 + f Lnet/minecraft/network/chat/Component; toolTip I field_19937 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$PendingInvitationSelectionList; pendingInvitationSelectionList J field_19939 + f I selectedInvite K field_19941 + f Lnet/minecraft/client/gui/components/Button; acceptButton L field_19942 + f Lnet/minecraft/client/gui/components/Button; rejectButton M field_19943 + f Lnet/minecraft/resources/ResourceLocation; ACCEPT_HIGHLIGHTED_SPRITE a field_45250 + f Lnet/minecraft/resources/ResourceLocation; ACCEPT_SPRITE b field_22702 + f Lnet/minecraft/resources/ResourceLocation; REJECT_HIGHLIGHTED_SPRITE c field_45251 + m ()V updateButtonStates C method_21307 + m ()Ljava/util/List; method_52671 D method_52671 + m (I)Z shouldAcceptAndRejectButtonBeVisible a method_21314 + p 1 selectedInvite + m (IZ)V handleInvitation a method_52672 + p 1 index + p 2 shouldAccept + m (IZLjava/lang/Boolean;)V method_52673 a method_52673 + m (Lcom/mojang/realmsclient/dto/PendingInvite;)Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; method_52674 a method_52674 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52675 a method_52675 + m (Lnet/minecraft/client/gui/components/Button;)V method_25175 a method_25175 + m (ZLjava/lang/String;)Ljava/lang/Boolean; method_52676 a method_52676 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52677 b method_52677 + m (Lnet/minecraft/client/gui/components/Button;)V method_25177 b method_25177 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)Lnet/minecraft/client/gui/Font; method_52678 c method_52678 + m (Lnet/minecraft/client/gui/components/Button;)V method_25179 c method_25179 + m (Ljava/util/List;)V method_52679 c method_52679 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 lastScreen + p 2 title + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry feh$a net/minecraft/class_4401$class_4403 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen; field_19954 a field_19954 + f I TEXT_LEFT b field_32123 + f Lcom/mojang/realmsclient/dto/PendingInvite; pendingInvite c field_19953 + f Ljava/util/List; rowButtons d field_19955 + m (Lnet/minecraft/client/gui/GuiGraphics;Lcom/mojang/realmsclient/dto/PendingInvite;IIII)V renderPendingInvitationItem a method_21324 + p 1 guiGraphics + p 2 pendingInvite + p 3 x + p 4 y + p 5 mouseX + p 6 mouseY + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;Lcom/mojang/realmsclient/dto/PendingInvite;)V + p 2 pendingInvite +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry$AcceptRowButton feh$a$a net/minecraft/class_4401$class_4403$class_4404 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; field_19956 e field_19956 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry$RejectRowButton feh$a$b net/minecraft/class_4401$class_4403$class_4405 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry; field_19957 e field_19957 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V +c com/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$PendingInvitationSelectionList feh$b net/minecraft/class_4401$class_4402 + f Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen; field_19952 a field_19952 + m (I)V removeAtIndex a method_21321 + p 1 index + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen$Entry;)V setSelected a method_25188 + p 1 selected + m (I)V selectInviteListItem c method_21322 + p 1 index + m (Lcom/mojang/realmsclient/gui/screens/RealmsPendingInvitesScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen fei net/minecraft/class_4406 + f I PADDING B field_49462 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_49463 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen D field_19960 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData E field_19961 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen$InvitedObjectSelectionList; invitedList F field_49460 + f Z stateChanged G field_19971 + f Lorg/slf4j/Logger; LOGGER a field_19958 + f Lnet/minecraft/network/chat/Component; TITLE b field_49461 + f Lnet/minecraft/network/chat/Component; QUESTION_TITLE c field_44908 + m ()V repopulateInvitedList C method_58475 + m ()V backButtonClicked D method_21333 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57680 a method_57680 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57681 a method_57681 + m (Lnet/minecraft/client/gui/components/Button;)V method_57682 a method_57682 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57683 b method_57683 + m (Lnet/minecraft/client/gui/components/Button;)V method_25197 b method_25197 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_31124 c method_31124 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57684 d method_57684 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57685 e method_57685 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57686 f method_57686 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/Minecraft; method_57687 g method_57687 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57688 h method_57688 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/gui/Font; method_57689 i method_57689 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)Lnet/minecraft/client/Minecraft; method_57690 j method_57690 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen$Entry fei$a net/minecraft/class_4406$class_4408 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen; field_19980 a field_19980 + f Lnet/minecraft/network/chat/Component; NORMAL_USER_TEXT b field_49464 + f Lnet/minecraft/network/chat/Component; OP_TEXT c field_49465 + f Lnet/minecraft/network/chat/Component; REMOVE_TEXT d field_49466 + f Lnet/minecraft/resources/ResourceLocation; MAKE_OP_SPRITE e field_49467 + f Lnet/minecraft/resources/ResourceLocation; REMOVE_OP_SPRITE f field_49468 + f Lnet/minecraft/resources/ResourceLocation; REMOVE_PLAYER_SPRITE g field_49469 + f I ICON_WIDTH h field_49470 + f I ICON_HEIGHT i field_49471 + f Lcom/mojang/realmsclient/dto/PlayerInfo; playerInfo j field_19979 + f Lnet/minecraft/client/gui/components/Button; removeButton k field_44536 + f Lnet/minecraft/client/gui/components/Button; makeOpButton l field_44537 + f Lnet/minecraft/client/gui/components/Button; removeOpButton m field_44538 + m (I)V op a method_57691 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51246 a method_51246 + m (Lcom/mojang/realmsclient/dto/Ops;)V updateOps a method_57692 + p 1 ops + m (Lcom/mojang/realmsclient/dto/PlayerInfo;IZ)V method_57693 a method_57693 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57694 a method_57694 + m (I)V deop b method_57695 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51248 b method_51248 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57696 b method_57696 + m ()V updateOpButtons c method_57697 + m (I)V uninvite c method_57698 + p 1 index + m (ILnet/minecraft/client/gui/components/Button;)V method_51249 c method_51249 + m (Lcom/mojang/realmsclient/dto/PlayerInfo;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_57699 c method_57699 + m ()Lnet/minecraft/client/gui/components/Button; activeOpButton d method_57700 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;Lcom/mojang/realmsclient/dto/PlayerInfo;)V + p 2 playerInfo + m ()V +c com/mojang/realmsclient/gui/screens/RealmsPlayerScreen$InvitedObjectSelectionList fei$b net/minecraft/class_4406$class_4407 + f Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen; field_19978 a field_19978 + f I ITEM_HEIGHT m field_49472 + m (Lcom/mojang/realmsclient/gui/screens/RealmsPlayerScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsPopups fej net/minecraft/class_9754 + f I COLOR_INFO a field_51819 + f Lnet/minecraft/network/chat/Component; INFO b field_51820 + f Lnet/minecraft/network/chat/Component; WARNING c field_51821 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; infoPopupScreen a method_60316 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; warningPopupScreen b method_60317 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen; warningAcknowledgePopupScreen c method_60318 + p 0 backgroundScreen + p 1 message + p 2 onContinue + m ()V + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetNormalWorldScreen fek net/minecraft/class_4409 + f I CONTENT_WIDTH B field_45279 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_45280 + f Ljava/util/function/Consumer; callback D field_27938 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit E field_19984 + f Lcom/mojang/realmsclient/util/LevelType; levelType F field_27939 + f Z generateStructures G field_27940 + f Ljava/util/Set; experiments H field_46708 + f Lnet/minecraft/network/chat/Component; buttonTitle I field_24206 + f Lnet/minecraft/network/chat/Component; TITLE a field_46114 + f Lnet/minecraft/network/chat/Component; SEED_LABEL b field_26506 + f I BUTTON_SPACING c field_45278 + m ()Lcom/mojang/realmsclient/util/WorldGenerationInfo; createWorldGenerationInfo C method_52693 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_54376 a method_54376 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/client/gui/components/Button;)V method_54377 a method_54377 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetNormalWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52694 a method_52694 + m (Lnet/minecraft/client/gui/components/Button;)V method_32485 a method_32485 + m (Lnet/minecraft/client/gui/components/CycleButton;Lcom/mojang/realmsclient/util/LevelType;)V method_32486 a method_32486 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32487 a method_32487 + m (Lnet/minecraft/client/gui/layouts/LinearLayout;)V createExperimentsButton a method_54378 + p 1 layout + m (Lnet/minecraft/client/gui/components/Button;)V method_25202 b method_25202 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 buttonTitle + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen fel net/minecraft/class_4410 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_TITLE B field_46127 + f Lnet/minecraft/network/chat/Component; CREATE_REALM_SUBTITLE C field_46115 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_TITLE D field_46116 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_SUBTITLE E field_46117 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_TITLE F field_46118 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_SUBTITLE G field_46119 + f Lnet/minecraft/network/chat/Component; RESET_WORLD_RESET_TASK_TITLE H field_46120 + f Lnet/minecraft/network/chat/Component; WORLD_TEMPLATES_TITLE I field_46121 + f Lnet/minecraft/network/chat/Component; ADVENTURES_TITLE J field_46122 + f Lnet/minecraft/network/chat/Component; EXPERIENCES_TITLE K field_46123 + f Lnet/minecraft/network/chat/Component; INSPIRATION_TITLE L field_46124 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen M field_20000 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData N field_20001 + f Lnet/minecraft/network/chat/Component; subtitle O field_20006 + f I subtitleColor P field_20008 + f Lnet/minecraft/network/chat/Component; resetTaskTitle Q field_20501 + f Lnet/minecraft/resources/ResourceLocation; UPLOAD_LOCATION R field_22714 + f Lnet/minecraft/resources/ResourceLocation; ADVENTURE_MAP_LOCATION S field_22715 + f Lnet/minecraft/resources/ResourceLocation; SURVIVAL_SPAWN_LOCATION T field_22716 + f Lnet/minecraft/resources/ResourceLocation; NEW_WORLD_LOCATION U field_22708 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_LOCATION V field_22709 + f Lnet/minecraft/resources/ResourceLocation; INSPIRATION_LOCATION W field_22710 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; templates X field_20495 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; adventuremaps Y field_20496 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; experiences Z field_20497 + f Lnet/minecraft/network/chat/Component; CREATE_WORLD_RESET_TASK_TITLE a field_46125 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; inspirations aa field_20498 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask ab field_46709 + f Ljava/lang/Runnable; resetWorldRunnable ac field_22711 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout ad field_46126 + f I slot b field_19998 + f Lorg/slf4j/Logger; LOGGER c field_19999 + m ()V method_54379 C method_54379 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V templateSelectionCallback a method_32488 + p 1 template + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)Lnet/minecraft/client/Minecraft; method_25205 a method_25205 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53799 a method_53799 + m (Lcom/mojang/realmsclient/util/WorldGenerationInfo;)V generationSelectionCallback a method_32489 + p 1 generationInfo + m (Lcom/mojang/realmsclient/util/task/LongRunningTask;)V runResetTasks a method_54380 + p 1 task + m (Lnet/minecraft/client/gui/components/Button;)V method_53800 a method_53800 + m (Lnet/minecraft/client/gui/screens/Screen;ILcom/mojang/realmsclient/dto/RealmsServer;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forEmptySlot a method_53801 + p 0 lastScreen + p 1 slot + p 2 serverData + p 3 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/util/task/RealmCreationTask;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forNewRealm a method_53802 + p 0 lastScreen + p 1 serverData + p 2 realmCreationTask + p 3 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Ljava/lang/Runnable;)Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; forResetSlot a method_53805 + p 0 lastScreen + p 1 serverData + p 2 resetWorldRunnable + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)Lnet/minecraft/client/gui/Font; method_53803 b method_53803 + m (Lnet/minecraft/client/gui/components/Button;)V method_53804 b method_53804 + m (Lnet/minecraft/client/gui/components/Button;)V method_53806 c method_53806 + m (Lnet/minecraft/client/gui/components/Button;)V method_53807 d method_53807 + m (Lnet/minecraft/client/gui/components/Button;)V method_25211 e method_25211 + m (Lnet/minecraft/client/gui/components/Button;)V method_25212 f method_25212 + m (Lnet/minecraft/client/gui/components/Button;)V method_25213 g method_25213 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 lastScreen + p 2 serverData + p 3 slot + p 4 title + p 5 subtitle + p 6 subtitleColor + p 7 resetTaskTitle + p 8 resetWorldRunnable + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;Lcom/mojang/realmsclient/util/task/RealmCreationTask;Ljava/lang/Runnable;)V + p 1 lastScreen + p 2 serverData + p 3 slot + p 4 title + p 5 subtitle + p 6 subtitleColor + p 7 resetTaskTitle + p 8 realmCreationTask + p 9 resetWorldRunnable + m ()V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen$1 fel$1 net/minecraft/class_4410$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; field_20021 a field_20021 + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V method_21392 a method_21392 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsResetWorldScreen$FrameButton fel$a net/minecraft/class_4410$class_4411 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; field_20031 a field_20031 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE b field_48384 + f I FRAME_SIZE c field_48385 + f I FRAME_WIDTH d field_48386 + f I IMAGE_SIZE u field_46130 + f Lnet/minecraft/resources/ResourceLocation; image v field_20032 + m (Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 2 font + p 3 message + p 4 image + p 5 onPress + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen fem net/minecraft/class_4416 + f Lnet/minecraft/network/chat/Component; WORLD_TEXT B field_20058 + f Lnet/minecraft/network/chat/Component; HARDCORE_TEXT C field_26507 + f Lnet/minecraft/network/chat/Component; COMMANDS_TEXT D field_26508 + f Ljava/text/DateFormat; DATE_FORMAT E field_20054 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask F field_48387 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; lastScreen G field_20050 + f J realmId H field_20051 + f I slotId I field_20052 + f Lnet/minecraft/client/gui/components/Button; uploadButton J field_20053 + f Ljava/util/List; levelList K field_20055 + f I selectedWorld L field_20056 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$WorldSelectionList; worldSelectionList M field_20057 + f Lnet/minecraft/network/chat/Component; TITLE a field_46131 + f Lorg/slf4j/Logger; LOGGER b field_20049 + f Lnet/minecraft/network/chat/Component; UNABLE_TO_LOAD_WORLD c field_44909 + m ()V loadLevelList C method_21396 + m ()V upload D method_21401 + m (I)I method_25218 a method_25218 + m (Lnet/minecraft/world/level/storage/LevelSummary;)Lnet/minecraft/network/chat/Component; gameModeName a method_21400 + p 0 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_30871 a method_30871 + m (Lnet/minecraft/client/gui/components/Button;)V method_38508 a method_38508 + m (I)I method_55436 b method_55436 + m (Lnet/minecraft/world/level/storage/LevelSummary;)Ljava/lang/String; formatLastPlayed b method_21404 + p 0 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_30872 b method_30872 + m (Lnet/minecraft/client/gui/components/Button;)V method_25221 b method_25221 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)Lnet/minecraft/client/gui/Font; method_25226 c method_25226 + m (Lcom/mojang/realmsclient/util/task/RealmCreationTask;JILcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;)V + p 1 realmCreationTask + p 2 realmId + p 4 slotId + p 5 lastScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$Entry fem$a net/minecraft/class_4416$class_4417 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen; field_20067 a field_20067 + f Lnet/minecraft/world/level/storage/LevelSummary; levelSummary b field_22718 + f Ljava/lang/String; name c field_26509 + f Lnet/minecraft/network/chat/Component; id d field_26510 + f Lnet/minecraft/network/chat/Component; info e field_26511 + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderItem a method_21411 + p 1 guiGraphics + p 2 index + p 3 x + p 4 y + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 2 levelSummary +c com/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$WorldSelectionList fem$b net/minecraft/class_4416$class_4418 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen; field_20068 a field_20068 + m (Lnet/minecraft/world/level/storage/LevelSummary;)V addEntry a method_21412 + p 1 levelSummary + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen$Entry;)V setSelected a method_25227 + p 1 selected + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectFileToUploadScreen;)V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen fen net/minecraft/class_4419 + f Lnet/minecraft/network/chat/Component; TRAILER_BUTTON_NAME B field_45978 + f Lnet/minecraft/network/chat/Component; PUBLISHER_BUTTON_NAME C field_45979 + f I BUTTON_WIDTH D field_45974 + f I BUTTON_SPACING E field_45975 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout F field_45976 + f Ljava/util/function/Consumer; callback G field_27941 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$WorldTemplateList; worldTemplateList H field_20071 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType I field_20079 + f Lnet/minecraft/client/gui/components/Button; selectButton J field_20074 + f Lnet/minecraft/client/gui/components/Button; trailerButton K field_20075 + f Lnet/minecraft/client/gui/components/Button; publisherButton L field_20076 + f Lcom/mojang/realmsclient/dto/WorldTemplate; selectedTemplate M field_20072 + f Ljava/lang/String; currentLink N field_20078 + f [Lnet/minecraft/network/chat/Component; warning O field_20081 + f Ljava/util/List; noTemplatesMessage P field_20085 + f Lorg/slf4j/Logger; LOGGER a field_20069 + f Lnet/minecraft/resources/ResourceLocation; SLOT_FRAME_SPRITE b field_22721 + f Lnet/minecraft/network/chat/Component; SELECT_BUTTON_NAME c field_45977 + m ()V updateButtonStates C method_21425 + m ()V selectTemplate D method_21440 + m ()V onTrailer E method_21442 + m ()V onPublish F method_21444 + m ()I getHeaderHeight G method_53514 + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V fetchTemplatesAsync a method_21415 + p 1 output + m (Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;Lcom/mojang/realmsclient/client/RealmsClient;)Lcom/mojang/datafixers/util/Either; fetchTemplates a method_21416 + p 1 templates + p 2 realmsClient + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/Minecraft; method_25229 a method_25229 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53515 a method_53515 + m (Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)I method_25230 a method_25230 + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/util/List;)V renderMultilineMessage a method_21414 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lines + m (Lnet/minecraft/client/gui/components/Button;)V method_25231 a method_25231 + m ([Lnet/minecraft/network/chat/Component;)V setWarning a method_21429 + p 1 warning + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_53516 b method_53516 + m (Lnet/minecraft/client/gui/components/Button;)V method_25233 b method_25233 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25238 c method_25238 + m (Lnet/minecraft/client/gui/components/Button;)V method_25234 c method_25234 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25239 d method_25239 + m (Lnet/minecraft/client/gui/components/Button;)V method_25236 d method_25236 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25240 e method_25240 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25241 f method_25241 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25242 g method_25242 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)Lnet/minecraft/client/gui/Font; method_25243 h method_25243 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;)V + p 1 title + p 2 callback + p 3 worldType + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V + p 1 title + p 2 callback + p 3 worldType + p 4 worldTemplatePaginatedList + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$1 fen$1 net/minecraft/class_4419$1 + f Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; val$startPage a field_20091 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20092 b field_20092 + m (Lcom/mojang/datafixers/util/Either;)Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList; method_21445 a method_21445 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Ljava/lang/String;Lcom/mojang/realmsclient/dto/WorldTemplatePaginatedList;)V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry fen$a net/minecraft/class_4419$class_4421 + f Lcom/mojang/realmsclient/dto/WorldTemplate; template a field_20094 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20095 b field_20095 + f Lnet/minecraft/client/gui/components/WidgetSprites; WEBSITE_LINK_SPRITES c field_45980 + f Lnet/minecraft/client/gui/components/WidgetSprites; TRAILER_LINK_SPRITES d field_45981 + f Lnet/minecraft/network/chat/Component; PUBLISHER_LINK_TOOLTIP e field_45982 + f Lnet/minecraft/network/chat/Component; TRAILER_LINK_TOOLTIP f field_45983 + f J lastClickTime g field_45984 + f Lnet/minecraft/client/gui/components/ImageButton; websiteButton h field_45985 + f Lnet/minecraft/client/gui/components/ImageButton; trailerButton i field_45986 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Lcom/mojang/realmsclient/dto/WorldTemplate;)V + p 2 template + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$WorldTemplateList fen$b net/minecraft/class_4419$class_4420 + f Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen; field_20093 a field_20093 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;)V addEntry a method_21448 + p 1 template + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry;)V setSelected a method_25249 + p 1 selected + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen$Entry;)Lcom/mojang/realmsclient/dto/WorldTemplate; method_25250 b method_25250 + m ()Z isEmpty c method_21446 + m ()Ljava/util/List; getTemplates d method_21450 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;)V + p 1 parent + m (Lcom/mojang/realmsclient/gui/screens/RealmsSelectWorldTemplateScreen;Ljava/lang/Iterable;)V + p 1 parent + p 2 templates +c com/mojang/realmsclient/gui/screens/RealmsSettingsScreen feo net/minecraft/class_4422 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureWorldScreen B field_20096 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData C field_20097 + f Lnet/minecraft/client/gui/components/EditBox; descEdit D field_20100 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit E field_20101 + f I COMPONENT_WIDTH a field_32124 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26514 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_LABEL c field_26515 + m (Lnet/minecraft/client/gui/components/Button;)V method_54575 a method_54575 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_54576 a method_54576 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_25254 a method_25254 + m (Lnet/minecraft/client/gui/components/Button;)V method_25253 b method_25253 + m (Lnet/minecraft/client/gui/components/Button;)V method_25251 c method_25251 + m ()V save g method_21454 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 configureWorldScreen + p 2 serverData + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen fep net/minecraft/class_4423 + f I DEFAULT_DIFFICULTY B field_32125 + f I DEFAULT_GAME_MODE C field_32126 + f Lnet/minecraft/network/chat/Component; NAME_LABEL D field_26516 + f Lnet/minecraft/network/chat/Component; SPAWN_PROTECTION_TEXT E field_27942 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit F field_20113 + f I column1X G field_20114 + f I columnWidth H field_20116 + f Lcom/mojang/realmsclient/dto/RealmsWorldOptions; options I field_20117 + f Lcom/mojang/realmsclient/dto/RealmsServer$WorldType; worldType J field_20118 + f Lnet/minecraft/world/Difficulty; difficulty K field_27943 + f Lnet/minecraft/world/level/GameType; gameMode L field_20121 + f Ljava/lang/String; defaultSlotName M field_39187 + f Ljava/lang/String; worldName N field_39188 + f Z pvp O field_20122 + f Z spawnNPCs P field_20123 + f Z spawnAnimals Q field_20124 + f Z spawnMonsters R field_20125 + f I spawnProtection S field_20120 + f Z commandBlocks T field_20127 + f Z forceGameMode U field_20128 + f Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen$SettingsSlider; spawnProtectionButton V field_20133 + f Ljava/util/List; DIFFICULTIES a field_22723 + f Ljava/util/List; GAME_MODES b field_22724 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; parentScreen c field_20109 + m ()V saveSettings C method_21486 + m (Lnet/minecraft/client/gui/components/Button;)V method_25255 a method_25255 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/GameType;)V method_32496 a method_32496 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_32495 a method_32495 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32497 a method_32497 + m (Ljava/lang/Boolean;)V method_32502 a method_32502 + m (Ljava/lang/String;)V setWorldName a method_43757 + p 1 name + m (Ljava/util/List;II)Ljava/lang/Object; findByIndex a method_32498 + p 0 list + p 1 index + p 2 fallback + m (Ljava/util/List;Ljava/lang/Object;I)I findIndex a method_32499 + p 0 list + p 1 object + p 2 fallback + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/PopupScreen;)V method_43755 a method_43755 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_43754 a method_43754 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/CycleButton$OnValueChange; confirmDangerousOption a method_43756 + p 1 question + p 2 onPress + m (Lnet/minecraft/client/gui/components/Button;)V method_25256 b method_25256 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32500 b method_32500 + m (Ljava/lang/Boolean;)V method_32503 b method_32503 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32505 c method_32505 + m (Ljava/lang/Boolean;)V method_32504 c method_32504 + m (Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;Lcom/mojang/realmsclient/dto/RealmsWorldOptions;Lcom/mojang/realmsclient/dto/RealmsServer$WorldType;I)V + p 1 parent + p 2 options + p 3 worldType + p 4 activeSlot + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen$SettingsSlider fep$a net/minecraft/class_4423$class_4424 + f Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen; field_20145 a field_20145 + f D minValue d field_22725 + f D maxValue e field_22726 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSlotOptionsScreen;IIIIFF)V + p 2 x + p 3 y + p 4 width + p 5 value + p 6 minValue + p 7 maxValue +c com/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen feq net/minecraft/class_4425 + f Lnet/minecraft/network/chat/Component; TIME_LEFT_LABEL B field_20155 + f Lnet/minecraft/network/chat/Component; DAYS_LEFT_LABEL C field_20156 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_EXPIRED_TEXT D field_26517 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_LESS_THAN_A_DAY_TEXT E field_26518 + f Lnet/minecraft/network/chat/Component; UNKNOWN F field_34033 + f Lnet/minecraft/network/chat/Component; RECURRING_INFO G field_43152 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen H field_20147 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData I field_20148 + f Lnet/minecraft/client/gui/screens/Screen; mainScreen J field_20149 + f Lnet/minecraft/network/chat/Component; daysLeft K field_20157 + f Lnet/minecraft/network/chat/Component; startDate L field_20158 + f Lcom/mojang/realmsclient/dto/Subscription$SubscriptionType; type M field_20159 + f Lorg/slf4j/Logger; LOGGER a field_20146 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_TITLE b field_20153 + f Lnet/minecraft/network/chat/Component; SUBSCRIPTION_START_LABEL c field_20154 + m ()V deleteRealm C method_25271 + m (I)Lnet/minecraft/network/chat/Component; daysLeftPresentation a method_21499 + p 1 daysLeft + m (J)V getSubscription a method_21500 + p 1 serverId + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;)Lnet/minecraft/client/Minecraft; method_25267 a method_25267 + m (Lnet/minecraft/client/gui/components/Button;)V method_25268 a method_25268 + m (Lnet/minecraft/client/gui/components/PopupScreen;)V method_60319 a method_60319 + m (J)Lnet/minecraft/network/chat/Component; localPresentation b method_21502 + p 0 time + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;)Lnet/minecraft/client/Minecraft; method_25272 b method_25272 + m (Lnet/minecraft/client/gui/components/Button;)V method_25266 b method_25266 + m (Lnet/minecraft/client/gui/components/Button;)V method_25270 c method_25270 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + p 2 serverData + p 3 mainScreen + m ()V +c com/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen$1 feq$1 net/minecraft/class_4425$1 + f Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen; field_20164 a field_20164 + m ()V method_25273 a method_25273 + m (Lcom/mojang/realmsclient/gui/screens/RealmsSubscriptionInfoScreen;Ljava/lang/String;)V +c com/mojang/realmsclient/gui/screens/RealmsTermsScreen fer net/minecraft/class_4426 + f Lnet/minecraft/network/chat/Component; TERMS_LINK_TEXT B field_26525 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen C field_22727 + f Lcom/mojang/realmsclient/dto/RealmsServer; realmsServer D field_20168 + c The screen to display when OK is clicked on the disconnect screen.\n\nSeems to be either null (integrated server) or an instance of either {@link MultiplayerScreen} (when connecting to a server) or {@link com.mojang.realmsclient.gui.screens.RealmsTermsScreen} (when connecting to MCO server) + f Z onLink E field_20170 + f Lorg/slf4j/Logger; LOGGER a field_20165 + f Lnet/minecraft/network/chat/Component; TITLE b field_26523 + f Lnet/minecraft/network/chat/Component; TERMS_STATIC_TEXT c field_26524 + m ()V agreedToTos C method_21505 + m (Lnet/minecraft/client/gui/components/Button;)V method_25274 a method_25274 + m (Lnet/minecraft/client/gui/components/Button;)V method_25275 b method_25275 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 realmsServer + m ()V +c com/mojang/realmsclient/gui/screens/RealmsUploadScreen fes net/minecraft/class_4427 + f I BAR_TOP B field_41773 + f I BAR_BOTTOM C field_41774 + f I BAR_BORDER D field_41775 + f [Ljava/lang/String; DOTS E field_20191 + f Lnet/minecraft/network/chat/Component; VERIFYING_TEXT F field_26526 + f Lcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen; lastScreen G field_20175 + f Lnet/minecraft/world/level/storage/LevelSummary; selectedLevel H field_20176 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; realmCreationTask I field_48388 + f J realmId J field_20177 + f I slotId K field_20178 + f Lcom/mojang/realmsclient/client/UploadStatus; uploadStatus L field_20179 + f Lcom/google/common/util/concurrent/RateLimiter; narrationRateLimiter M field_20180 + f [Lnet/minecraft/network/chat/Component; errorMessage N field_20503 + f Lnet/minecraft/network/chat/Component; status O field_20182 + f Ljava/lang/String; progress P field_20183 + f Z cancelled Q field_20184 + f Z uploadFinished R field_20185 + f Z showDots S field_20186 + f Z uploadStarted T field_20187 + f Lnet/minecraft/client/gui/components/Button; backButton U field_20188 + f Lnet/minecraft/client/gui/components/Button; cancelButton V field_20189 + f I tickCount W field_20190 + f Ljava/lang/Long; previousWrittenBytes X field_20193 + f Ljava/lang/Long; previousTimeSnapshot Y field_20194 + f J bytesPersSecond Z field_20195 + f Lorg/slf4j/Logger; LOGGER a field_20174 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout aa field_48389 + f Ljava/util/concurrent/locks/ReentrantLock; UPLOAD_LOCK b field_20196 + f I BAR_WIDTH c field_41776 + m ()V onBack C method_21525 + m ()V onCancel D method_21528 + m ()Lnet/minecraft/network/chat/Component; createProgressNarrationMessage E method_37014 + m ()V upload F method_21536 + m ()V uploadCancelled G method_21538 + m ()V method_22106 J method_22106 + m ()V method_25278 K method_25278 + m ()V method_56132 L method_56132 + m (Lcom/mojang/realmsclient/gui/screens/RealmsUploadScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_56133 a method_56133 + m (Lcom/mojang/realmsclient/gui/screens/UploadResult;)V method_22105 a method_22105 + m (Lnet/minecraft/client/gui/GuiGraphics;J)V drawUploadSpeed0 a method_21526 + p 1 guiGraphics + p 2 bytesPerSecond + m (Lnet/minecraft/client/gui/components/Button;)V method_25276 a method_25276 + m (Ljava/io/File;)Z verify a method_21515 + p 1 file + m (Lorg/apache/commons/compress/archivers/tar/TarArchiveOutputStream;Ljava/lang/String;Ljava/lang/String;Z)V addFileToTarGz a method_21516 + p 1 tarArchiveOutputStream + p 2 pathname + p 3 name + p 4 rootDirectory + m ([Lnet/minecraft/network/chat/Component;)V setErrorMessage a method_27460 + p 1 errorMessage + m (Lnet/minecraft/client/gui/components/Button;)V method_25277 b method_25277 + m (Ljava/io/File;)Ljava/io/File; tarGzipArchive b method_21524 + p 1 file + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawProgressBar c method_21532 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawUploadSpeed d method_21534 + p 1 guiGraphics + m (Lcom/mojang/realmsclient/util/task/RealmCreationTask;JILcom/mojang/realmsclient/gui/screens/RealmsResetWorldScreen;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 1 realmCreationTask + p 2 realmId + p 4 slotId + p 5 lastScreen + p 6 selectedLevel + m ()V +c com/mojang/realmsclient/gui/screens/UploadResult fet net/minecraft/class_4429 + f I statusCode a field_20205 + f Ljava/lang/String; errorMessage b field_20206 + m (ILjava/lang/String;)V + p 1 statusCode + p 2 errorMessage +c com/mojang/realmsclient/gui/screens/UploadResult$Builder fet$a net/minecraft/class_4429$class_4430 + f I statusCode a field_20207 + f Ljava/lang/String; errorMessage b field_20208 + m ()Lcom/mojang/realmsclient/gui/screens/UploadResult; build a method_21541 + m (I)Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder; withStatusCode a method_21542 + p 1 statusCode + m (Ljava/lang/String;)Lcom/mojang/realmsclient/gui/screens/UploadResult$Builder; withErrorMessage a method_21543 + p 1 errorMessage + m ()V +c com/mojang/realmsclient/gui/screens/package-info feu net/minecraft/class_6197 +c com/mojang/realmsclient/gui/task/DataFetcher fev net/minecraft/class_7581 + f Lorg/slf4j/Logger; LOGGER a field_39696 + f Ljava/util/concurrent/Executor; executor b field_39697 + f Ljava/util/concurrent/TimeUnit; resolution c field_39698 + f Lnet/minecraft/util/TimeSource; timeSource d field_39699 + m ()Lcom/mojang/realmsclient/gui/task/DataFetcher$Subscription; createSubscription a method_44628 + m (Ljava/lang/String;Ljava/util/concurrent/Callable;Ljava/time/Duration;Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy;)Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; createTask a method_44629 + p 1 id + p 2 updater + p 3 period + p 4 repeatStrategy + m (Ljava/util/concurrent/Executor;Ljava/util/concurrent/TimeUnit;Lnet/minecraft/util/TimeSource;)V + p 1 executor + p 2 resolution + p 3 timeSource + m ()V +c com/mojang/realmsclient/gui/task/DataFetcher$ComputationResult fev$a net/minecraft/class_7581$class_7582 + f Lcom/mojang/datafixers/util/Either; value a comp_888 + f J time b comp_889 + m ()Lcom/mojang/datafixers/util/Either; value a comp_888 + m ()J time b comp_889 + m (Lcom/mojang/datafixers/util/Either;J)V +c com/mojang/realmsclient/gui/task/DataFetcher$SubscribedTask fev$b net/minecraft/class_7581$class_7583 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$Task; task a field_39701 + f Ljava/util/function/Consumer; output b field_39702 + f J lastCheckTime c field_39703 + m ()V runCallbackIfNeeded a method_44630 + m (J)V update a method_44631 + p 1 time + m ()V runCallback b method_44632 + m ()V reset c method_44633 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;Lcom/mojang/realmsclient/gui/task/DataFetcher$Task;Ljava/util/function/Consumer;)V + p 2 task + p 3 output +c com/mojang/realmsclient/gui/task/DataFetcher$Subscription fev$c net/minecraft/class_7581$class_7584 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; field_39704 a field_39704 + f Ljava/util/List; subscriptions b field_39705 + m ()V forceUpdate a method_44634 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher$Task;Ljava/util/function/Consumer;)V subscribe a method_44635 + p 1 task + p 2 output + m ()V tick b method_44636 + m ()V reset c method_44637 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;)V +c com/mojang/realmsclient/gui/task/DataFetcher$SuccessfulComputationResult fev$d net/minecraft/class_7581$class_7585 + f Ljava/lang/Object; value a comp_890 + f J time b comp_891 + m ()Ljava/lang/Object; value a comp_890 + m ()J time b comp_891 + m (Ljava/lang/Object;J)V +c com/mojang/realmsclient/gui/task/DataFetcher$Task fev$e net/minecraft/class_7581$class_7586 + f Lcom/mojang/realmsclient/gui/task/DataFetcher; field_39706 a field_39706 + f Ljava/lang/String; id b field_39707 + f Ljava/util/concurrent/Callable; updater c field_39708 + f J period d field_39709 + f Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; repeatStrategy e field_39710 + f Ljava/util/concurrent/CompletableFuture; pendingTask f field_39711 + f Lcom/mojang/realmsclient/gui/task/DataFetcher$SuccessfulComputationResult; lastResult g field_39712 + f J nextUpdate h field_39713 + m ()V reset a method_44638 + m (J)V updateIfNeeded a method_44639 + p 1 time + m (JLjava/lang/Exception;)V method_44640 a method_44640 + m (JLjava/lang/Object;)V method_44641 a method_44641 + m ()Lcom/mojang/realmsclient/gui/task/DataFetcher$ComputationResult; method_44642 b method_44642 + m (Lcom/mojang/realmsclient/gui/task/DataFetcher;Ljava/lang/String;Ljava/util/concurrent/Callable;JLcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy;)V + p 2 id + p 3 updater + p 4 period + p 6 repeatStrategy +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy few net/minecraft/class_7587 + f Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; CONSTANT a field_39714 + m ()J delayCyclesAfterSuccess a method_44643 + m (I)Lcom/mojang/realmsclient/gui/task/RepeatedDelayStrategy; exponentialBackoff a method_44644 + p 0 maxFailureDelay + m ()J delayCyclesAfterFailure b method_44645 + m ()V +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy$1 few$1 net/minecraft/class_7587$1 + m ()V +c com/mojang/realmsclient/gui/task/RepeatedDelayStrategy$2 few$2 net/minecraft/class_7587$2 + f I val$maxBackoff b field_39715 + f Lorg/slf4j/Logger; LOGGER c field_39716 + f I failureCount d field_39717 + m (I)V + m ()V +c com/mojang/realmsclient/gui/task/package-info fex net/minecraft/class_6198 +c com/mojang/realmsclient/package-info fey net/minecraft/class_6199 +c com/mojang/realmsclient/util/JsonUtils fez net/minecraft/class_4431 + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/lang/String; getRequiredString a method_49594 + p 0 key + p 1 json + m (Ljava/lang/String;Lcom/google/gson/JsonObject;I)I getIntOr a method_21545 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;J)J getLongOr a method_21546 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getRequiredStringOr a method_54577 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/UUID;)Ljava/util/UUID; getUuidOr a method_49595 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; getRequired a method_49596 + p 0 key + p 1 json + p 2 output + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Z)Z getBooleanOr a method_21548 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;)Ljava/util/Date; getDateOr b method_21544 + p 0 key + p 1 json + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/lang/String;)Ljava/lang/String; getStringOr b method_21547 + p 0 key + p 1 json + p 2 defaultValue + m (Ljava/lang/String;Lcom/google/gson/JsonObject;Ljava/util/function/Function;)Ljava/lang/Object; getOptional b method_54115 + p 0 key + p 1 json + p 2 output + m ()V +c com/mojang/realmsclient/util/LevelType ffa net/minecraft/class_5672 + f Lcom/mojang/realmsclient/util/LevelType; DEFAULT a field_27944 + f Lcom/mojang/realmsclient/util/LevelType; FLAT b field_27945 + f Lcom/mojang/realmsclient/util/LevelType; LARGE_BIOMES c field_27946 + f Lcom/mojang/realmsclient/util/LevelType; AMPLIFIED d field_27947 + f I index e field_27948 + f Lnet/minecraft/network/chat/Component; name f field_27949 + f [Lcom/mojang/realmsclient/util/LevelType; $VALUES g field_27950 + m ()Lnet/minecraft/network/chat/Component; getName a method_32506 + m ()I getDtoIndex b method_32507 + m ()[Lcom/mojang/realmsclient/util/LevelType; $values c method_36856 + m (Ljava/lang/String;IILnet/minecraft/resources/ResourceKey;)V + p 3 index + p 4 presetKey + m ()V +c com/mojang/realmsclient/util/RealmsPersistence ffb net/minecraft/class_4432 + f Ljava/lang/String; FILE_NAME a field_32128 + f Lcom/mojang/realmsclient/dto/GuardedSerializer; GSON b field_22729 + f Lorg/slf4j/Logger; LOGGER c field_39744 + m ()Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; read a method_33423 + m (Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData;)V save a method_33424 + p 1 persistenceData + m ()Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData; readFile b method_21549 + m (Lcom/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData;)V writeFile b method_21550 + p 0 persistenceData + m ()Ljava/nio/file/Path; getPathToData c method_25279 + m ()V + m ()V +c com/mojang/realmsclient/util/RealmsPersistence$RealmsPersistenceData ffb$a net/minecraft/class_4432$class_4433 + f Ljava/lang/String; newsLink a field_20209 + f Z hasUnreadNews b field_20210 + m ()V +c com/mojang/realmsclient/util/RealmsTextureManager ffc net/minecraft/class_4446 + f Ljava/util/Map; TEXTURES a field_20253 + f Lorg/slf4j/Logger; LOGGER b field_20256 + f Lnet/minecraft/resources/ResourceLocation; TEMPLATE_ICON_LOCATION c field_22730 + m (Ljava/lang/String;)Lcom/mojang/blaze3d/platform/NativeImage; loadImage a method_48970 + p 0 base64Image + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; worldTemplate a method_48971 + p 0 key + p 1 image + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getTexture b method_21564 + p 0 key + p 1 image + m ()V + m ()V +c com/mojang/realmsclient/util/RealmsTextureManager$RealmsTexture ffc$a net/minecraft/class_4446$class_4447 + f Ljava/lang/String; image a comp_1254 + f Lnet/minecraft/resources/ResourceLocation; textureId b comp_1255 + m ()Ljava/lang/String; image a comp_1254 + m ()Lnet/minecraft/resources/ResourceLocation; textureId b comp_1255 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V +c com/mojang/realmsclient/util/RealmsUtil ffd net/minecraft/class_4448 + f Lnet/minecraft/network/chat/Component; RIGHT_NOW a field_44910 + f I MINUTES b field_32129 + f I HOURS c field_32130 + f I DAYS d field_32131 + m (J)Lnet/minecraft/network/chat/Component; convertToAgePresentation a method_21567 + p 0 millis + m (Lnet/minecraft/client/gui/GuiGraphics;IIILjava/util/UUID;)V renderPlayerFace a method_48972 + p 0 guiGraphics + p 1 x + p 2 y + p 3 size + p 4 playerUuid + m (Ljava/util/Date;)Lnet/minecraft/network/chat/Component; convertToAgePresentationFromInstant a method_25282 + p 0 date + m ()V + m ()V +c com/mojang/realmsclient/util/TextRenderingUtils ffe net/minecraft/class_4450 + m (Ljava/lang/String;)Ljava/util/List; lineBreak a method_21575 + p 0 text + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; split a method_21576 + p 0 toSplit + p 1 delimiter + m (Ljava/lang/String;Ljava/util/List;)Ljava/util/List; decompose a method_21577 + p 0 text + p 1 segments + m (Ljava/lang/String;[Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)Ljava/util/List; decompose a method_21578 + p 0 text + p 1 segments + m (Ljava/util/List;Ljava/util/List;)Ljava/util/List; insertLinks a method_21579 + p 0 lines + p 1 segments + m ()V +c com/mojang/realmsclient/util/TextRenderingUtils$Line ffe$a net/minecraft/class_4450$class_4451 + f Ljava/util/List; segments a field_20266 + m ([Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment;)V + p 1 segments + m (Ljava/util/List;)V + p 1 segments +c com/mojang/realmsclient/util/TextRenderingUtils$LineSegment ffe$b net/minecraft/class_4450$class_4452 + f Ljava/lang/String; fullText a field_20267 + f Ljava/lang/String; linkTitle b field_20268 + f Ljava/lang/String; linkUrl c field_20269 + m ()Ljava/lang/String; renderedText a method_21580 + m (Ljava/lang/String;)Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment; text a method_21581 + p 0 fullText + m (Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/realmsclient/util/TextRenderingUtils$LineSegment; link a method_21582 + p 0 linkTitle + p 1 linkUrl + m ()Z isLink b method_21583 + m ()Ljava/lang/String; getLinkUrl c method_21584 + m (Ljava/lang/String;)V + p 1 fullText + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V + p 1 fullText + p 2 linkTitle + p 3 linkUrl +c com/mojang/realmsclient/util/UploadTokenCache fff net/minecraft/class_4453 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; TOKEN_CACHE a field_20270 + m (J)Ljava/lang/String; get a method_21585 + p 0 worldId + m (JLjava/lang/String;)V put a method_21586 + p 0 worldId + p 2 token + m (J)V invalidate b method_21587 + p 0 worldId + m ()V + m ()V +c com/mojang/realmsclient/util/WorldGenerationInfo ffg net/minecraft/class_4413 + f Ljava/lang/String; seed a comp_1976 + f Lcom/mojang/realmsclient/util/LevelType; levelType b comp_1977 + f Z generateStructures c comp_1978 + f Ljava/util/Set; experiments d comp_1991 + m ()Ljava/lang/String; seed a comp_1976 + m ()Lcom/mojang/realmsclient/util/LevelType; levelType b comp_1977 + m ()Z generateStructures c comp_1978 + m ()Ljava/util/Set; experiments d comp_1991 + m (Ljava/lang/String;Lcom/mojang/realmsclient/util/LevelType;ZLjava/util/Set;)V +c com/mojang/realmsclient/util/package-info ffh net/minecraft/class_6200 +c com/mojang/realmsclient/util/task/CloseServerTask ffi net/minecraft/class_4435 + f Lorg/slf4j/Logger; LOGGER b field_36354 + f Lnet/minecraft/network/chat/Component; TITLE c field_46132 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData d field_20212 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; configureScreen e field_20213 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 serverData + p 2 configureScreen + m ()V +c com/mojang/realmsclient/util/task/ConnectTask ffj net/minecraft/class_4438 + f Lnet/minecraft/network/chat/Component; TITLE b field_46133 + f Lnet/minecraft/realms/RealmsConnect; realmsConnect c field_20222 + f Lcom/mojang/realmsclient/dto/RealmsServer; server d field_26922 + f Lcom/mojang/realmsclient/dto/RealmsServerAddress; address e field_20223 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;Lcom/mojang/realmsclient/dto/RealmsServerAddress;)V + p 1 onlineScreen + p 2 server + p 3 address + m ()V +c com/mojang/realmsclient/util/task/CreateSnapshotRealmTask ffk net/minecraft/class_8844 + f Lorg/slf4j/Logger; LOGGER b field_46710 + f Lnet/minecraft/network/chat/Component; TITLE c field_46711 + f J parentId d field_46712 + f Lcom/mojang/realmsclient/util/WorldGenerationInfo; generationInfo e field_46713 + f Ljava/lang/String; name f field_46714 + f Ljava/lang/String; description g field_46715 + f Lcom/mojang/realmsclient/RealmsMainScreen; realmsMainScreen h field_46716 + f Lcom/mojang/realmsclient/util/task/RealmCreationTask; creationTask i field_46717 + f Lcom/mojang/realmsclient/util/task/ResettingGeneratedWorldTask; generateWorldTask j field_46718 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54381 a method_54381 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V method_54382 b method_54382 + m (Lcom/mojang/realmsclient/RealmsMainScreen;JLcom/mojang/realmsclient/util/WorldGenerationInfo;Ljava/lang/String;Ljava/lang/String;)V + p 1 realmsMainScreen + p 2 parentId + p 4 generationInfo + p 5 name + p 6 description + m ()V +c com/mojang/realmsclient/util/task/DownloadTask ffl net/minecraft/class_4436 + f Lorg/slf4j/Logger; LOGGER b field_36355 + f Lnet/minecraft/network/chat/Component; TITLE c field_46134 + f J realmId d field_20214 + f I slot e field_20215 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen f field_20216 + f Ljava/lang/String; downloadName g field_20217 + m (Z)V method_25283 a method_25283 + m (JILjava/lang/String;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 worldId + p 3 slot + p 4 downloadName + p 5 lastScreen + m ()V +c com/mojang/realmsclient/util/task/GetServerDetailsTask ffm net/minecraft/class_4439 + f Lnet/minecraft/network/chat/Component; APPLYING_PACK_TEXT b field_47580 + f Lorg/slf4j/Logger; LOGGER c field_36356 + f Lnet/minecraft/network/chat/Component; TITLE d field_46135 + f Lcom/mojang/realmsclient/dto/RealmsServer; server e field_20224 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen f field_20225 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Ljava/util/UUID; generatePackId a method_55605 + p 0 realmsServer + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;)Lcom/mojang/realmsclient/gui/screens/RealmsLongRunningMcoTaskScreen; connectScreen a method_32511 + p 1 serverAddress + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/lang/Throwable;)Ljava/lang/Void; method_25286 a method_25286 + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; scheduleResourcePackDownload a method_32515 + p 1 serverAddress + p 2 id + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/PopupScreen; resourcePackDownloadConfirmationScreen a method_32512 + p 1 serverAddress + p 2 packId + p 3 connectScreen + m (Lcom/mojang/realmsclient/dto/RealmsServerAddress;Ljava/util/UUID;Ljava/util/function/Function;Lnet/minecraft/client/gui/components/PopupScreen;)V method_32513 a method_32513 + m (Ljava/util/function/Function;Lcom/mojang/realmsclient/dto/RealmsServerAddress;)V method_32514 a method_32514 + m ()Lcom/mojang/realmsclient/dto/RealmsServerAddress; fetchServerAddress f method_32516 + m (Lnet/minecraft/client/gui/screens/Screen;Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 lastScreen + p 2 server + m ()V +c com/mojang/realmsclient/util/task/LongRunningTask ffn net/minecraft/class_4358 + f I NUMBER_OF_RETRIES a field_32132 + f Lorg/slf4j/Logger; LOGGER b field_22731 + f Z aborted c field_46136 + m ()Lnet/minecraft/network/chat/Component; getTitle a method_53808 + m (J)V pause a method_25287 + p 0 seconds + m (Lcom/mojang/realmsclient/exception/RealmsServiceException;)V error a method_53809 + p 1 exception + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;)V method_25288 a method_25288 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)V method_53810 a method_53810 + m (Lnet/minecraft/client/gui/screens/Screen;)V setScreen a method_25289 + p 0 screen + m (Ljava/lang/Exception;)V error a method_53811 + p 1 exception + m (Lnet/minecraft/network/chat/Component;)V error a method_21067 + p 1 message + m ()V abortTask b method_21071 + m ()V tick c method_21068 + m ()Z aborted d method_21065 + m ()V init e method_21070 + m ()V + m ()V +c com/mojang/realmsclient/util/task/OpenServerTask ffo net/minecraft/class_4437 + f Lorg/slf4j/Logger; LOGGER b field_36357 + f Lnet/minecraft/network/chat/Component; TITLE c field_46137 + f Lcom/mojang/realmsclient/dto/RealmsServer; serverData d field_20218 + f Lnet/minecraft/client/gui/screens/Screen; returnScreen e field_20219 + f Z join f field_20220 + f Lnet/minecraft/client/Minecraft; minecraft g field_34016 + m ()V method_37409 f method_37409 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/gui/screens/Screen;ZLnet/minecraft/client/Minecraft;)V + p 1 serverData + p 2 returnScreen + p 3 join + p 4 minecraft + m ()V +c com/mojang/realmsclient/util/task/RealmCreationTask ffp net/minecraft/class_4445 + f Lorg/slf4j/Logger; LOGGER b field_36362 + f Lnet/minecraft/network/chat/Component; TITLE c field_46141 + f Ljava/lang/String; name d field_20249 + f Ljava/lang/String; motd e field_20250 + f J realmId f field_20251 + m (JLjava/lang/String;Ljava/lang/String;)V + p 1 realmId + p 3 name + p 4 motd + m ()V +c com/mojang/realmsclient/util/task/ResettingGeneratedWorldTask ffq net/minecraft/class_5673 + f Lcom/mojang/realmsclient/util/WorldGenerationInfo; generationInfo b field_27951 + m (Lcom/mojang/realmsclient/util/WorldGenerationInfo;JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 generationInfo + p 2 serverId + p 4 title + p 5 callback +c com/mojang/realmsclient/util/task/ResettingTemplateWorldTask ffr net/minecraft/class_5674 + f Lcom/mojang/realmsclient/dto/WorldTemplate; template b field_27952 + m (Lcom/mojang/realmsclient/dto/WorldTemplate;JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 template + p 2 serverId + p 4 title + p 5 callback +c com/mojang/realmsclient/util/task/ResettingWorldTask ffs net/minecraft/class_4440 + f Lorg/slf4j/Logger; LOGGER b field_36358 + f J serverId c field_20232 + f Lnet/minecraft/network/chat/Component; title d field_20235 + f Ljava/lang/Runnable; callback e field_22732 + m (Lcom/mojang/realmsclient/client/RealmsClient;J)V sendResetRequest a method_32517 + p 1 client + p 2 serverId + m (JLnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)V + p 1 serverId + p 3 title + p 4 callback + m ()V +c com/mojang/realmsclient/util/task/RestoreTask fft net/minecraft/class_4441 + f Lorg/slf4j/Logger; LOGGER b field_36359 + f Lnet/minecraft/network/chat/Component; TITLE c field_46138 + f Lcom/mojang/realmsclient/dto/Backup; backup d field_20236 + f J realmId e field_20237 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen f field_20238 + m (Lcom/mojang/realmsclient/dto/Backup;JLcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 backup + p 2 worldId + p 4 lastScreen + m ()V +c com/mojang/realmsclient/util/task/SwitchMinigameTask ffu net/minecraft/class_4442 + f Lorg/slf4j/Logger; LOGGER b field_36360 + f Lnet/minecraft/network/chat/Component; TITLE c field_46139 + f J realmId d field_20239 + f Lcom/mojang/realmsclient/dto/WorldTemplate; worldTemplate e field_20240 + f Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen; lastScreen f field_20241 + m (JLcom/mojang/realmsclient/dto/WorldTemplate;Lcom/mojang/realmsclient/gui/screens/RealmsConfigureWorldScreen;)V + p 1 worldId + p 3 worldTemplate + p 4 lastScreen + m ()V +c com/mojang/realmsclient/util/task/SwitchSlotTask ffv net/minecraft/class_4443 + f Lorg/slf4j/Logger; LOGGER b field_36361 + f Lnet/minecraft/network/chat/Component; TITLE c field_46140 + f J realmId d field_20242 + f I slot e field_20243 + f Ljava/lang/Runnable; callback f field_22733 + m (JILjava/lang/Runnable;)V + p 1 worldId + p 3 slot + p 4 callback + m ()V +c com/mojang/realmsclient/util/task/package-info ffw net/minecraft/class_6201 +c net/minecraft/client/AttackIndicatorStatus ffx net/minecraft/class_4061 + f Lnet/minecraft/client/AttackIndicatorStatus; OFF a field_18151 + f Lnet/minecraft/client/AttackIndicatorStatus; CROSSHAIR b field_18152 + f Lnet/minecraft/client/AttackIndicatorStatus; HOTBAR c field_18153 + f Ljava/util/function/IntFunction; BY_ID d field_18154 + f I id e field_18155 + f Ljava/lang/String; key f field_18156 + f [Lnet/minecraft/client/AttackIndicatorStatus; $VALUES g field_18157 + m (I)Lnet/minecraft/client/AttackIndicatorStatus; byId a method_18488 + p 0 id + m ()[Lnet/minecraft/client/AttackIndicatorStatus; $values c method_36858 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/Camera ffy net/minecraft/class_4184 + f F FOG_DISTANCE_SCALE a field_32133 + f F DEFAULT_CAMERA_DISTANCE b field_47841 + f Lorg/joml/Vector3f; FORWARDS c field_52123 + f Lorg/joml/Vector3f; UP d field_52124 + f Lorg/joml/Vector3f; LEFT e field_52125 + f Z initialized f field_18709 + f Lnet/minecraft/world/level/BlockGetter; level g field_18710 + f Lnet/minecraft/world/entity/Entity; entity h field_18711 + f Lnet/minecraft/world/phys/Vec3; position i field_18712 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; blockPosition j field_18713 + f Lorg/joml/Vector3f; forwards k field_18714 + f Lorg/joml/Vector3f; up l field_18715 + f Lorg/joml/Vector3f; left m field_18716 + f F xRot n field_18717 + f F yRot o field_18718 + f Lorg/joml/Quaternionf; rotation p field_21518 + f Z detached q field_18719 + f F eyeHeight r field_18721 + f F eyeHeightOld s field_18722 + f F partialTickTime t field_47549 + m ()V tick a method_19317 + m (DDD)V setPosition a method_19327 + c Sets the position and blockpos of the active render + p 1 x + p 3 y + p 5 z + m (F)F getMaxZoom a method_19318 + p 1 maxZoom + m (FF)V setRotation a method_19325 + p 1 yRot + p 2 xRot + m (FFF)V move a method_19324 + p 1 zoom + p 2 dy + p 3 dx + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/world/entity/Entity;ZZF)V setup a method_19321 + p 1 level + p 2 entity + p 3 detached + p 4 thirdPersonReverse + p 5 partialTick + m (Lnet/minecraft/world/phys/Vec3;)V setPosition a method_19322 + p 1 pos + m ()Lnet/minecraft/world/phys/Vec3; getPosition b method_19326 + m ()Lnet/minecraft/core/BlockPos; getBlockPosition c method_19328 + m ()F getXRot d method_19329 + m ()F getYRot e method_19330 + m ()Lorg/joml/Quaternionf; rotation f method_23767 + m ()Lnet/minecraft/world/entity/Entity; getEntity g method_19331 + m ()Z isInitialized h method_19332 + m ()Z isDetached i method_19333 + m ()Lnet/minecraft/client/Camera$NearPlane; getNearPlane j method_36425 + m ()Lnet/minecraft/world/level/material/FogType; getFluidInCamera k method_19334 + m ()Lorg/joml/Vector3f; getLookVector l method_19335 + m ()Lorg/joml/Vector3f; getUpVector m method_19336 + m ()Lorg/joml/Vector3f; getLeftVector n method_35689 + m ()V reset o method_19337 + m ()F getPartialTickTime p method_55437 + m ()V + m ()V +c net/minecraft/client/Camera$NearPlane ffy$a net/minecraft/class_4184$class_6355 + f Lnet/minecraft/world/phys/Vec3; forward a field_33622 + f Lnet/minecraft/world/phys/Vec3; left b field_33623 + f Lnet/minecraft/world/phys/Vec3; up c field_33624 + m ()Lnet/minecraft/world/phys/Vec3; getTopLeft a method_36426 + m (FF)Lnet/minecraft/world/phys/Vec3; getPointOnPlane a method_36427 + p 1 leftScale + p 2 upScale + m ()Lnet/minecraft/world/phys/Vec3; getTopRight b method_36429 + m ()Lnet/minecraft/world/phys/Vec3; getBottomLeft c method_36430 + m ()Lnet/minecraft/world/phys/Vec3; getBottomRight d method_36431 + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)V + p 1 forward + p 2 left + p 3 up +c net/minecraft/client/CameraType ffz net/minecraft/class_5498 + f Lnet/minecraft/client/CameraType; FIRST_PERSON a field_26664 + f Lnet/minecraft/client/CameraType; THIRD_PERSON_BACK b field_26665 + f Lnet/minecraft/client/CameraType; THIRD_PERSON_FRONT c field_26666 + f [Lnet/minecraft/client/CameraType; VALUES d field_26667 + f Z firstPerson e field_26668 + f Z mirrored f field_26669 + f [Lnet/minecraft/client/CameraType; $VALUES g field_26670 + m ()Z isFirstPerson a method_31034 + m ()Z isMirrored b method_31035 + m ()Lnet/minecraft/client/CameraType; cycle c method_31036 + m ()[Lnet/minecraft/client/CameraType; $values d method_36859 + m (Ljava/lang/String;IZZ)V + p 3 firstPerson + p 4 mirrored + m ()V +c net/minecraft/client/ClientRecipeBook fga net/minecraft/class_299 + f Lorg/slf4j/Logger; LOGGER c field_25622 + f Ljava/util/Map; collectionsByTab d field_1638 + f Ljava/util/List; allCollections e field_25778 + m (Lnet/minecraft/world/item/crafting/Recipe;)Ljava/lang/Object; method_29969 a method_29969 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; getCollection a method_1396 + p 1 categories + m (Ljava/lang/Iterable;)Ljava/util/Map; categorizeAndGroupRecipes a method_30283 + p 0 recipes + m (Ljava/lang/Iterable;Lnet/minecraft/core/RegistryAccess;)V setupCollections a method_1401 + p 1 recipes + p 2 registryAccess + m (Ljava/util/Map;Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/stream/Stream; method_30280 a method_30280 + m (Ljava/util/Map;Lnet/minecraft/client/RecipeBookCategories;Ljava/util/List;)V method_30281 a method_30281 + m (Ljava/util/Map;Lnet/minecraft/core/RegistryAccess;Lcom/google/common/collect/ImmutableList$Builder;Lnet/minecraft/client/RecipeBookCategories;Ljava/util/List;)V method_30279 a method_30279 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; method_48464 a method_48464 + m ()Ljava/util/List; getCollections b method_1393 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; method_30282 b method_30282 + m (Lnet/minecraft/client/RecipeBookCategories;)Ljava/util/List; method_30284 c method_30284 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/client/RecipeBookCategories; getCategory g method_1400 + p 0 recipe + m ()V + m ()V +c net/minecraft/client/ClientRecipeBook$1 fga$1 net/minecraft/class_299$1 + f [I $SwitchMap$net$minecraft$world$item$crafting$CraftingBookCategory a field_40377 + f [I $SwitchMap$net$minecraft$world$item$crafting$CookingBookCategory b field_40378 + m ()V +c net/minecraft/client/CloudStatus fgb net/minecraft/class_4063 + f Lnet/minecraft/client/CloudStatus; OFF a field_18162 + f Lnet/minecraft/client/CloudStatus; FAST b field_18163 + f Lnet/minecraft/client/CloudStatus; FANCY c field_18164 + f Lcom/mojang/serialization/Codec; CODEC d field_45285 + f I id e field_38440 + f Ljava/lang/String; legacyName f field_45286 + f Ljava/lang/String; key g field_18167 + f [Lnet/minecraft/client/CloudStatus; $VALUES h field_18168 + m ()[Lnet/minecraft/client/CloudStatus; $values e method_36860 + m (Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;)V + p 3 id + p 4 legacyName + p 5 key + m ()V +c net/minecraft/client/CommandHistory fgc net/minecraft/class_8657 + f Lorg/slf4j/Logger; LOGGER a field_45287 + f I MAX_PERSISTED_COMMAND_HISTORY b field_45288 + f Ljava/lang/String; PERSISTED_COMMANDS_FILE_NAME c field_45289 + f Ljava/nio/file/Path; commandsPath d field_45290 + f Lnet/minecraft/util/ArrayListDeque; lastCommands e field_45291 + m ()Ljava/util/Collection; history a method_52696 + m (Ljava/lang/String;)V addCommand a method_52697 + p 1 command + m ()V save b method_52698 + m (Ljava/nio/file/Path;)V + p 1 path + m ()V +c net/minecraft/client/ComponentCollector fgd net/minecraft/class_5222 + f Ljava/util/List; parts a field_25260 + m ()Lnet/minecraft/network/chat/FormattedText; getResult a method_27461 + m (Lnet/minecraft/network/chat/FormattedText;)V append a method_27462 + p 1 part + m ()Lnet/minecraft/network/chat/FormattedText; getResultOrEmpty b method_27463 + m ()V reset c method_35690 + m ()V +c net/minecraft/client/DebugQueryHandler fge net/minecraft/class_300 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_1640 + f I transactionId b field_1641 + f Ljava/util/function/Consumer; callback c field_1642 + m (ILjava/util/function/Consumer;)V queryEntityTag a method_1405 + p 1 entId + p 2 tag + m (ILnet/minecraft/nbt/CompoundTag;)Z handleResponse a method_1404 + p 1 transactionId + p 2 tag + m (Ljava/util/function/Consumer;)I startTransaction a method_1402 + p 1 callback + m (Lnet/minecraft/core/BlockPos;Ljava/util/function/Consumer;)V queryBlockEntityTag a method_1403 + p 1 pos + p 2 tag + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;)V + p 1 connection +c net/minecraft/client/DeltaTracker fgf net/minecraft/class_9779 + f Lnet/minecraft/client/DeltaTracker; ZERO a field_51955 + f Lnet/minecraft/client/DeltaTracker; ONE b field_51956 + m ()F getGameTimeDeltaTicks a method_60636 + m (Z)F getGameTimeDeltaPartialTick a method_60637 + p 1 runsNormally + m ()F getRealtimeDeltaTicks b method_60638 + m ()V +c net/minecraft/client/DeltaTracker$DefaultValue fgf$a net/minecraft/class_9779$class_9780 + f F value c field_51957 + m (F)V + p 1 value +c net/minecraft/client/DeltaTracker$Timer fgf$b net/minecraft/class_9779$class_9781 + f F deltaTicks c field_51958 + f F deltaTickResidual d field_51959 + f F realtimeDeltaTicks e field_51960 + f F pausedDeltaTickResidual f field_51961 + f J lastMs g field_51962 + f J lastUiMs h field_51963 + f F msPerTick i field_51964 + f Lit/unimi/dsi/fastutil/floats/FloatUnaryOperator; targetMsptProvider j field_51965 + f Z paused k field_51966 + f Z frozen l field_51967 + m (J)I advanceGameTime a method_60639 + p 1 time + m (JZ)I advanceTime a method_60640 + p 1 time + p 3 advanceGameTime + m (J)V advanceRealTime b method_60641 + p 1 time + m (Z)V updatePauseState b method_60642 + p 1 paused + m ()V pause c method_60643 + m (Z)V updateFrozenState c method_60644 + p 1 frozen + m ()V unPause d method_60645 + m (FJLit/unimi/dsi/fastutil/floats/FloatUnaryOperator;)V + p 1 ticksPerSecond + p 2 time + p 4 targetMsptProvider +c net/minecraft/client/GameNarrator fgg net/minecraft/class_333 + f Lnet/minecraft/network/chat/Component; NO_TITLE a field_18967 + f Lorg/slf4j/Logger; LOGGER b field_18210 + f Lnet/minecraft/client/Minecraft; minecraft c field_39755 + f Lcom/mojang/text2speech/Narrator; narrator d field_2055 + m ()Z isActive a method_1791 + m (Lnet/minecraft/client/NarratorStatus;)V updateNarratorStatus a method_1792 + p 1 status + m (Ljava/lang/String;)V sayNow a method_19788 + p 1 message + m (Lnet/minecraft/network/chat/Component;)V sayChat a method_44708 + p 1 message + m (Z)V checkStatus a method_52183 + p 1 narratorEnabled + m ()V clear b method_1793 + m (Ljava/lang/String;)V logNarratedMessage b method_37016 + p 1 message + m (Lnet/minecraft/network/chat/Component;)V say b method_47976 + p 1 message + m ()V destroy c method_20371 + m (Lnet/minecraft/network/chat/Component;)V sayNow c method_37015 + p 1 message + m ()Lnet/minecraft/client/NarratorStatus; getStatus d method_20602 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/GameNarrator$NarratorInitException fgg$a net/minecraft/class_333$class_8571 + m (Ljava/lang/String;)V +c net/minecraft/client/GraphicsStatus fgh net/minecraft/class_5365 + f Lnet/minecraft/client/GraphicsStatus; FAST a field_25427 + f Lnet/minecraft/client/GraphicsStatus; FANCY b field_25428 + f Lnet/minecraft/client/GraphicsStatus; FABULOUS c field_25429 + f Ljava/util/function/IntFunction; BY_ID d field_25430 + f I id e field_25431 + f Ljava/lang/String; key f field_25432 + f [Lnet/minecraft/client/GraphicsStatus; $VALUES g field_25433 + m (I)Lnet/minecraft/client/GraphicsStatus; byId a method_29592 + p 0 id + m ()[Lnet/minecraft/client/GraphicsStatus; $values c method_36861 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/GuiMessage fgi net/minecraft/class_303 + f I addedTime a comp_892 + f Lnet/minecraft/network/chat/Component; content b comp_893 + f Lnet/minecraft/network/chat/MessageSignature; signature c comp_915 + f Lnet/minecraft/client/GuiMessageTag; tag d comp_894 + m ()Lnet/minecraft/client/GuiMessageTag$Icon; icon a method_58742 + m ()I addedTime b comp_892 + m ()Lnet/minecraft/network/chat/Component; content c comp_893 + m ()Lnet/minecraft/network/chat/MessageSignature; signature d comp_915 + m ()Lnet/minecraft/client/GuiMessageTag; tag e comp_894 + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/GuiMessageTag;)V +c net/minecraft/client/GuiMessage$Line fgi$a net/minecraft/class_303$class_7590 + f I addedTime a comp_895 + f Lnet/minecraft/util/FormattedCharSequence; content b comp_896 + f Lnet/minecraft/client/GuiMessageTag; tag c comp_897 + f Z endOfEntry d comp_898 + m ()I addedTime a comp_895 + m ()Lnet/minecraft/util/FormattedCharSequence; content b comp_896 + m ()Lnet/minecraft/client/GuiMessageTag; tag c comp_897 + m ()Z endOfEntry d comp_898 + m (ILnet/minecraft/util/FormattedCharSequence;Lnet/minecraft/client/GuiMessageTag;Z)V +c net/minecraft/client/GuiMessageTag fgj net/minecraft/class_7591 + f I indicatorColor a comp_899 + f Lnet/minecraft/client/GuiMessageTag$Icon; icon b comp_900 + f Lnet/minecraft/network/chat/Component; text c comp_901 + f Ljava/lang/String; logTag d comp_902 + f Lnet/minecraft/network/chat/Component; SYSTEM_TEXT e field_40379 + f Lnet/minecraft/network/chat/Component; SYSTEM_TEXT_SINGLE_PLAYER f field_41092 + f Lnet/minecraft/network/chat/Component; CHAT_NOT_SECURE_TEXT g field_39756 + f Lnet/minecraft/network/chat/Component; CHAT_MODIFIED_TEXT h field_39757 + f Lnet/minecraft/network/chat/Component; CHAT_ERROR_TEXT i field_45897 + f I CHAT_NOT_SECURE_INDICATOR_COLOR j field_39758 + f I CHAT_MODIFIED_INDICATOR_COLOR k field_39759 + f Lnet/minecraft/client/GuiMessageTag; SYSTEM l field_39789 + f Lnet/minecraft/client/GuiMessageTag; SYSTEM_SINGLE_PLAYER m field_41093 + f Lnet/minecraft/client/GuiMessageTag; CHAT_NOT_SECURE n field_39760 + f Lnet/minecraft/client/GuiMessageTag; CHAT_ERROR o field_45898 + m ()Lnet/minecraft/client/GuiMessageTag; system a method_44751 + m (Ljava/lang/String;)Lnet/minecraft/client/GuiMessageTag; chatModified a method_44710 + p 0 originalText + m ()Lnet/minecraft/client/GuiMessageTag; systemSinglePlayer b method_47391 + m ()Lnet/minecraft/client/GuiMessageTag; chatNotSecure c method_44709 + m ()Lnet/minecraft/client/GuiMessageTag; chatError d method_53461 + m ()I indicatorColor e comp_899 + m ()Lnet/minecraft/client/GuiMessageTag$Icon; icon f comp_900 + m ()Lnet/minecraft/network/chat/Component; text g comp_901 + m ()Ljava/lang/String; logTag h comp_902 + m (ILnet/minecraft/client/GuiMessageTag$Icon;Lnet/minecraft/network/chat/Component;Ljava/lang/String;)V + m ()V +c net/minecraft/client/GuiMessageTag$Icon fgj$a net/minecraft/class_7591$class_7592 + f Lnet/minecraft/client/GuiMessageTag$Icon; CHAT_MODIFIED a field_39763 + f Lnet/minecraft/resources/ResourceLocation; sprite b field_45292 + f I width c field_39766 + f I height d field_39767 + f [Lnet/minecraft/client/GuiMessageTag$Icon; $VALUES e field_39768 + m ()[Lnet/minecraft/client/GuiMessageTag$Icon; $values a method_44711 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V draw a method_44712 + p 1 guiGraphics + p 2 x + p 3 y + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;II)V + p 3 sprite + p 4 width + p 5 height + m ()V +c net/minecraft/client/HotbarManager fgk net/minecraft/class_302 + f I NUM_HOTBAR_GROUPS a field_32135 + f Lorg/slf4j/Logger; LOGGER b field_1647 + f Ljava/nio/file/Path; optionsFile c field_1646 + f Lcom/mojang/datafixers/DataFixer; fixerUpper d field_1648 + f [Lnet/minecraft/client/player/inventory/Hotbar; hotbars e field_1644 + f Z loaded f field_1645 + m ()V save a method_1409 + m (I)Lnet/minecraft/client/player/inventory/Hotbar; get a method_1410 + p 1 index + m (Ljava/lang/String;)V method_56825 a method_56825 + m ()V load b method_1411 + m (Ljava/nio/file/Path;Lcom/mojang/datafixers/DataFixer;)V + p 1 gameDirectory + p 2 fixerUpper + m ()V +c net/minecraft/client/InputType fgl net/minecraft/class_8015 + f Lnet/minecraft/client/InputType; NONE a field_41777 + f Lnet/minecraft/client/InputType; MOUSE b field_41778 + f Lnet/minecraft/client/InputType; KEYBOARD_ARROW c field_43097 + f Lnet/minecraft/client/InputType; KEYBOARD_TAB d field_41780 + f [Lnet/minecraft/client/InputType; $VALUES e field_41781 + m ()Z isMouse a method_48182 + m ()Z isKeyboard b method_48183 + m ()[Lnet/minecraft/client/InputType; $values c method_48184 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/KeyMapping fgm net/minecraft/class_304 + f Ljava/lang/String; CATEGORY_MOVEMENT a field_32136 + f Ljava/lang/String; CATEGORY_MISC b field_32137 + f Ljava/lang/String; CATEGORY_MULTIPLAYER c field_32138 + f Ljava/lang/String; CATEGORY_GAMEPLAY d field_32139 + f Ljava/lang/String; CATEGORY_INVENTORY e field_32140 + f Ljava/lang/String; CATEGORY_INTERFACE f field_32141 + f Ljava/lang/String; CATEGORY_CREATIVE g field_32142 + f Ljava/util/Map; ALL h field_1657 + f Ljava/util/Map; MAP i field_1658 + f Ljava/util/Set; CATEGORIES j field_1652 + f Ljava/util/Map; CATEGORY_SORT_ORDER k field_1656 + f Ljava/lang/String; name l field_1660 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; defaultKey m field_1654 + f Ljava/lang/String; category n field_1659 + f Lcom/mojang/blaze3d/platform/InputConstants$Key; key o field_1655 + f Z isDown p field_1653 + f I clickCount q field_1661 + m ()V setAll a method_1424 + c Completely recalculates whether any keybinds are held, from scratch. + m (I)Z matchesMouse a method_1433 + c Returns {@code true} if the {@code KeyMapping} is set to a mouse key and the key matches. + p 1 key + m (II)Z matches a method_1417 + p 1 keysym + p 2 scancode + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;)V click a method_1420 + p 0 key + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;Z)V set a method_1416 + p 0 key + p 1 held + m (Lnet/minecraft/client/KeyMapping;)I compareTo a method_1430 + m (Ljava/lang/String;)Ljava/util/function/Supplier; createNameSupplier a method_1419 + c Returns a supplier which gets a keybind's current binding (eg, key.forward returns W by default), or the keybind's name if no such keybind exists (eg, key.invalid returns key.invalid) + p 0 key + m (Ljava/util/HashMap;)V method_1418 a method_1418 + m (Z)V setDown a method_23481 + p 1 value + m ()V releaseAll b method_1437 + m (Lcom/mojang/blaze3d/platform/InputConstants$Key;)V setKey b method_1422 + c Binds a new KeyCode to this + p 1 key + m (Lnet/minecraft/client/KeyMapping;)Z same b method_1435 + c Returns {@code true} if the supplied {@code KeyMapping} conflicts with this + p 1 binding + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_27465 b method_27465 + m ()V resetToggleKeys c method_52231 + m ()V resetMapping d method_1426 + m ()Z isDown e method_1434 + c Returns {@code true} if the key is pressed (used for continuous querying). Should be used in tickers. + m ()Ljava/lang/String; getCategory f method_1423 + m ()Z consumeClick g method_1436 + c Returns {@code true} on the initial key press. For continuous querying use {@link isKeyDown()}. Should be used in key events. + m ()Ljava/lang/String; getName h method_1431 + m ()Lcom/mojang/blaze3d/platform/InputConstants$Key; getDefaultKey i method_1429 + m ()Z isUnbound j method_1415 + m ()Lnet/minecraft/network/chat/Component; getTranslatedKeyMessage k method_16007 + m ()Z isDefault l method_1427 + c Returns {@code true} if the {@code KeyMapping} is using the default key and key modifier + m ()Ljava/lang/String; saveString m method_1428 + m ()V release n method_1425 + m (Ljava/lang/String;ILjava/lang/String;)V + p 1 name + p 2 keyCode + p 3 category + m (Ljava/lang/String;Lcom/mojang/blaze3d/platform/InputConstants$Type;ILjava/lang/String;)V + p 1 name + p 2 type + p 3 keyCode + p 4 category + m ()V +c net/minecraft/client/KeyboardHandler fgn net/minecraft/class_309 + f I DEBUG_CRASH_TIME a field_32143 + f Lnet/minecraft/client/Minecraft; minecraft b field_1678 + f Lcom/mojang/blaze3d/platform/ClipboardManager; clipboardManager c field_16241 + f J debugCrashKeyTime d field_1682 + f J debugCrashKeyReportedTime e field_1681 + f J debugCrashKeyReportedCount f field_1680 + f Z handledDebugKey g field_1679 + m ()Ljava/lang/String; getClipboard a method_1460 + m (I)Z handleChunkDebugKeys a method_35696 + p 1 keyCode + m (IJ)V method_1461 a method_1461 + m (ILnet/minecraft/client/gui/screens/Screen;[ZIII)V method_1454 a method_1454 + m (J)V setup a method_1472 + p 1 window + m (JII)V charTyped a method_1457 + p 1 windowPointer + p 3 codePoint + p 4 modifiers + m (JIIII)V keyPress a method_1466 + p 1 windowPointer + p 3 key + p 4 scanCode + p 5 action + p 6 modifiers + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/nbt/CompoundTag;)V method_1471 a method_1471 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/nbt/CompoundTag;)V copyCreateEntityCommand a method_1469 + p 1 entityId + p 2 pos + p 3 compound + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V copyCreateBlockCommand a method_1475 + p 1 state + p 2 pos + p 3 compound + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;CI)V method_1473 a method_1473 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;II)V method_1458 a method_1458 + m (Ljava/lang/String;)V setClipboard a method_1455 + p 1 string + m (Ljava/lang/String;[Ljava/lang/Object;)V debugFeedbackTranslated a method_1459 + p 1 message + p 2 args + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_49711 a method_49711 + m (Lnet/minecraft/ChatFormatting;Lnet/minecraft/network/chat/Component;)V debugComponent a method_37273 + p 1 formatting + p 2 message + m (Lnet/minecraft/network/chat/Component;)V debugFeedbackComponent a method_37272 + p 1 message + m (ZZ)V copyRecreateCommand a method_1465 + p 1 privileged + p 2 askServer + m ()V tick b method_1474 + m (I)Z handleDebugKeys b method_1468 + p 1 key + m (JII)V method_22675 b method_22675 + m (JIIII)V method_22676 b method_22676 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/nbt/CompoundTag;)V method_1467 b method_1467 + m (Ljava/lang/String;[Ljava/lang/Object;)V debugWarningTranslated b method_1456 + p 1 message + p 2 args + m (Lnet/minecraft/network/chat/Component;)V method_1463 b method_1463 + m (JII)V method_22677 c method_22677 + m (JIIII)V method_22678 c method_22678 + m (Ljava/lang/String;[Ljava/lang/Object;)V debugFeedback c method_35697 + p 1 message + p 2 args + m (Lnet/minecraft/network/chat/Component;)V method_1464 c method_1464 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/KeyboardHandler$1 fgn$1 net/minecraft/class_309$1 + f [I $SwitchMap$net$minecraft$world$phys$HitResult$Type a field_1685 + m ()V +c net/minecraft/client/Minecraft fgo net/minecraft/class_310 + f Z wireframe A field_32144 + f Z sectionPath B field_20907 + f Z sectionVisibility C field_20908 + f Z smartCull D field_1730 + f Lnet/minecraft/client/Minecraft; instance E field_1700 + f Lorg/slf4j/Logger; LOGGER F field_1762 + f I MAX_TICKS_PER_UPDATE G field_32145 + f Lnet/minecraft/resources/ResourceLocation; REGIONAL_COMPLIANCIES H field_36433 + f Ljava/util/concurrent/CompletableFuture; RESOURCE_RELOAD_INITIAL_TASK I field_18009 + f Lnet/minecraft/network/chat/Component; SOCIAL_INTERACTIONS_NOT_AVAILABLE J field_26841 + f J canary K field_46550 + f Ljava/nio/file/Path; resourcePackDirectory L field_1757 + f Ljava/util/concurrent/CompletableFuture; profileFuture M field_45899 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager N field_1764 + f Lcom/mojang/datafixers/DataFixer; fixerUpper O field_1768 + f Lnet/minecraft/client/renderer/VirtualScreen; virtualScreen P field_1686 + f Lcom/mojang/blaze3d/platform/Window; window Q field_1704 + f Lnet/minecraft/client/DeltaTracker$Timer; timer R field_1728 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers S field_20909 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher T field_1731 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer U field_1742 + f Lnet/minecraft/client/User; user V field_1726 + f Ljava/util/concurrent/atomic/AtomicReference; progressListener W field_17405 + f Lnet/minecraft/client/HotbarManager; hotbarManager X field_1732 + f Lnet/minecraft/client/InputType; lastInputType Y field_41782 + f Ljava/lang/String; launchedVersion Z field_1711 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer aA field_1756 + c The BlockRenderDispatcher instance that will be used based off gamesettings + f Lnet/minecraft/client/resources/PaintingTextureManager; paintingTextures aB field_18008 + f Lnet/minecraft/client/resources/MobEffectTextureManager; mobEffectTextures aC field_18173 + f Lnet/minecraft/client/resources/MapDecorationTextureManager; mapDecorationTextures aD field_50035 + f Lnet/minecraft/client/gui/GuiSpriteManager; guiSprites aE field_45293 + f Lnet/minecraft/client/gui/components/toasts/ToastComponent; toast aF field_1702 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial aG field_1758 + f Lnet/minecraft/client/gui/screens/social/PlayerSocialManager; playerSocialManager aH field_26842 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModels aI field_27387 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher aJ field_27388 + f Lnet/minecraft/client/telemetry/ClientTelemetryManager; telemetryManager aK field_41331 + f Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; profileKeyPairManager aL field_39068 + f Lcom/mojang/realmsclient/gui/RealmsDataFetcher; realmsDataFetcher aM field_39718 + f Lnet/minecraft/client/quickplay/QuickPlayLog; quickPlayLog aN field_44539 + f Lnet/minecraft/client/server/IntegratedServer; singleplayerServer aO field_1766 + f Lnet/minecraft/network/Connection; pendingConnection aP field_1746 + f Z isLocalServer aQ field_1759 + f I rightClickDelay aR field_1752 + f Z pause aS field_1734 + f J lastNanoTime aT field_1750 + c Time in nanoseconds of when the class is loaded + f J lastTime aU field_1712 + f I frames aV field_1735 + f Lnet/minecraft/client/gui/screens/Overlay; overlay aW field_18175 + f Z clientLevelTeardownInProgress aX field_46551 + f Ljava/lang/Thread; gameThread aY field_1696 + f Z ON_OSX a field_1703 + f Z running aZ field_1698 + f Ljava/lang/String; versionType aa field_1720 + f Ljava/net/Proxy; proxy ab field_1739 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelSource ac field_1748 + f Z demo ad field_1721 + f Z allowsMultiplayer ae field_25033 + f Z allowsChat af field_25034 + f Lnet/minecraft/server/packs/resources/ReloadableResourceManager; resourceManager ag field_1745 + f Lnet/minecraft/server/packs/VanillaPackResources; vanillaPackResources ah field_40380 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; downloadedPackSource ai field_40381 + f Lnet/minecraft/server/packs/repository/PackRepository; resourcePackRepository aj field_1715 + f Lnet/minecraft/client/resources/language/LanguageManager; languageManager ak field_1717 + f Lnet/minecraft/client/color/block/BlockColors; blockColors al field_1751 + f Lnet/minecraft/client/color/item/ItemColors; itemColors am field_1760 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; mainRenderTarget an field_1689 + f Lnet/minecraft/client/sounds/SoundManager; soundManager ao field_1727 + f Lnet/minecraft/client/sounds/MusicManager; musicManager ap field_1714 + f Lnet/minecraft/client/gui/font/FontManager; fontManager aq field_1708 + f Lnet/minecraft/client/resources/SplashManager; splashManager ar field_17763 + f Lnet/minecraft/client/renderer/GpuWarnlistManager; gpuWarnlistManager as field_25671 + f Lnet/minecraft/client/PeriodicNotificationManager; regionalCompliancies at field_36434 + f Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService; authenticationService au field_39420 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; minecraftSessionService av field_1723 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService aw field_26902 + f Ljava/util/concurrent/CompletableFuture; userPropertiesFuture ax field_47680 + f Lnet/minecraft/client/resources/SkinManager; skinManager ay field_1707 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager az field_1763 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_FONT b field_1740 + f Ljava/util/function/Supplier; delayedCrash ba field_1747 + f I fps bb field_1738 + f J frameTimeNs bc field_41332 + f Z windowActive bd field_1695 + f Ljava/util/Queue; progressTasks be field_17404 + f Ljava/util/concurrent/CompletableFuture; pendingReload bf field_18174 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; socialInteractionsToast bg field_26843 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler bh field_16240 + f I fpsPieRenderTicks bi field_22224 + f Lnet/minecraft/util/profiling/ContinuousProfiler; fpsPieProfiler bj field_22225 + f Lnet/minecraft/util/profiling/ProfileResults; fpsPieResults bk field_22226 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; metricsRecorder bl field_29569 + f Lnet/minecraft/client/ResourceLoadStateTracker; reloadStateTracker bm field_33697 + f J savedCpuDuration bn field_37855 + f D gpuUtilization bo field_37856 + f Lcom/mojang/blaze3d/systems/TimerQuery$FrameProfile; currentFrameProfile bp field_37857 + f Lnet/minecraft/client/GameNarrator; narrator bq field_39769 + f Lnet/minecraft/client/multiplayer/chat/ChatListener; chatListener br field_39770 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext bs field_39492 + f Lnet/minecraft/client/CommandHistory; commandHistory bt field_45294 + f Lnet/minecraft/world/level/validation/DirectoryValidator; directoryValidator bu field_45295 + f Z gameLoadFinished bv field_45900 + f J clientStartTimeMs bw field_46552 + f J clientTickCount bx field_46553 + f Ljava/lang/String; debugPath by field_1701 + f Lnet/minecraft/resources/ResourceLocation; UNIFORM_FONT c field_24211 + f Lnet/minecraft/resources/ResourceLocation; ALT_FONT d field_1749 + f Ljava/lang/String; UPDATE_DRIVERS_ADVICE e field_33735 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer f field_1769 + f Lnet/minecraft/client/particle/ParticleEngine; particleEngine g field_1713 + f Lnet/minecraft/client/gui/Font; font h field_1772 + f Lnet/minecraft/client/gui/Font; fontFilterFishy i field_39924 + f Lnet/minecraft/client/renderer/GameRenderer; gameRenderer j field_1773 + f Lnet/minecraft/client/renderer/debug/DebugRenderer; debugRenderer k field_1709 + f Lnet/minecraft/client/gui/Gui; gui l field_1705 + f Lnet/minecraft/client/Options; options m field_1690 + f Lnet/minecraft/client/MouseHandler; mouseHandler n field_1729 + f Lnet/minecraft/client/KeyboardHandler; keyboardHandler o field_1774 + f Ljava/io/File; gameDirectory p field_1697 + f Lnet/minecraft/client/multiplayer/MultiPlayerGameMode; gameMode q field_1761 + f Lnet/minecraft/client/multiplayer/ClientLevel; level r field_1687 + f Lnet/minecraft/client/player/LocalPlayer; player s field_1724 + f Lnet/minecraft/world/entity/Entity; cameraEntity t field_1719 + f Lnet/minecraft/world/entity/Entity; crosshairPickEntity u field_1692 + f Lnet/minecraft/world/phys/HitResult; hitResult v field_1765 + f I missTime w field_1771 + f Z noRender x field_1743 + f Lnet/minecraft/client/gui/screens/Screen; screen y field_1755 + f Ljava/lang/String; fpsString z field_1770 + m ()Z telemetryOptInExtra C method_47602 + m ()Z extraTelemetryAvailable D method_47595 + m ()Z allowsTelemetry E method_47596 + m ()Z allowsMultiplayer F method_29043 + m ()Z allowsRealms G method_35706 + m ()Lcom/mojang/authlib/minecraft/BanDetails; multiplayerBan H method_44647 + m ()Z isNameBanned I method_53518 + m ()Lnet/minecraft/client/Minecraft$ChatStatus; getChatStatus J method_33884 + m ()Z isDemo K method_1530 + c Gets whether this is a demo or not. + m ()Lnet/minecraft/client/multiplayer/ClientPacketListener; getConnection L method_1562 + m ()Z renderNames M method_1498 + m ()Z useFancyGraphics N method_1517 + m ()Z useShaderTransparency O method_29611 + m ()Z useAmbientOcclusion P method_1588 + c Returns if ambient occlusion is enabled + m ()Lnet/minecraft/client/Minecraft; getInstance Q method_1551 + c Return the singleton Minecraft instance for the game + m ()Ljava/util/concurrent/CompletableFuture; delayTextureReload R method_1513 + m ()Lnet/minecraft/client/multiplayer/ServerData; getCurrentServer S method_1558 + m ()Z isLocalServer T method_1542 + m ()Z hasSingleplayerServer U method_1496 + c Returns {@code true} if there is only one player playing, and the current server is the integrated one. + m ()Lnet/minecraft/client/server/IntegratedServer; getSingleplayerServer V method_1576 + c Returns the currently running integrated server + m ()Z isSingleplayer W method_47392 + m ()Lnet/minecraft/client/User; getUser X method_1548 + m ()Lcom/mojang/authlib/GameProfile; getGameProfile Y method_53462 + m ()Ljava/net/Proxy; getProxy Z method_1487 + m (D)Ljava/lang/String; formatSeconds a method_54116 + p 0 seconds + m (F)F getTickTargetMillis a method_54785 + p 1 defaultValue + m (I)V debugFpsMeterKeyPress a method_1524 + c Update debugProfilerName in response to number keys in debug screen + p 1 keyCount + m (IJ)V onFullscreenError a method_1506 + p 1 error + p 2 description + m (Lnet/minecraft/SystemReport;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/resources/language/LanguageManager;Ljava/lang/String;Lnet/minecraft/client/Options;)Lnet/minecraft/SystemReport; fillSystemReport a method_37274 + p 0 report + p 1 minecraft + p 2 languageManager + p 3 launchVersion + p 4 options + m (Lnet/minecraft/SystemReport;Ljava/util/List;)Ljava/nio/file/Path; archiveProfilingReport a method_37275 + p 1 report + p 2 paths + m (Lnet/minecraft/SystemReport;Ljava/util/function/Consumer;Ljava/util/List;)V method_37276 a method_37276 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/Function; getTextureAtlas a method_1549 + p 1 location + m (Lnet/minecraft/server/WorldStem;)Ljava/lang/String; method_41732 a method_41732 + m (Lnet/minecraft/util/profiling/ProfileResults;)V method_37277 a method_37277 + m (Lnet/minecraft/world/entity/Entity;)V setCameraEntity a method_1504 + p 1 viewingEntity + m (Lcom/mojang/authlib/GameProfile;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53519 a method_53519 + m (Lcom/mojang/authlib/minecraft/BanDetails;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53520 a method_53520 + m (Lcom/mojang/authlib/yggdrasil/YggdrasilAuthenticationService;Lnet/minecraft/client/main/GameConfig;)Lcom/mojang/authlib/minecraft/UserApiService; createUserApiService a method_31382 + p 1 authenticationService + p 2 gameConfig + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/core/RegistryAccess;)V addCustomNbtData a method_1499 + p 1 stack + p 2 blockEntity + p 3 registryAccess + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/Services;Ljava/lang/Thread;)Lnet/minecraft/client/server/IntegratedServer; method_29603 a method_29603 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Z)V doWorldLoad a method_29610 + p 1 levelStorage + p 2 packRepository + p 3 worldStem + p 4 newWorld + m (Lcom/mojang/blaze3d/systems/TimerQuery;)V method_41731 a method_41731 + m (Lnet/minecraft/client/InputType;)V setLastInputType a method_48185 + p 1 lastInputType + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V onResourceLoadFinished a method_53465 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/lang/Throwable;)V method_53521 a method_53521 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/util/Optional;)V method_53522 a method_53522 + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_37279 a method_37279 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/resources/language/LanguageManager;Ljava/lang/String;Lnet/minecraft/client/Options;Lnet/minecraft/CrashReport;)V fillReport a method_22681 + p 0 minecraft + p 1 languageManager + p 2 launchVersion + p 3 options + p 4 report + m (Lnet/minecraft/client/Minecraft;Ljava/io/File;Lnet/minecraft/CrashReport;)V crash a method_1565 + p 0 minecraft + p 1 gameDirectory + p 2 crashReport + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/util/profiling/ProfileResults;)V renderFpsMeter a method_1492 + p 1 guiGraphics + p 2 profileResults + m (Lnet/minecraft/client/gui/screens/Overlay;)V setOverlay a method_18502 + p 1 loadingGui + m (Lnet/minecraft/client/gui/screens/Screen;)V setScreen a method_1507 + p 1 guiScreen + m (Lnet/minecraft/client/gui/screens/Screen;Z)V disconnect a method_18096 + p 1 nextScreen + p 2 keepResourcePacks + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V updateLevelInEngines a method_18097 + p 1 level + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V setLevel a method_1481 + p 1 level + p 2 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;)V updateReportEnvironment a method_44376 + p 1 reportEnvironment + m (Lnet/minecraft/client/resources/language/ClientLanguage;)V method_60320 a method_60320 + m (Lnet/minecraft/client/resources/language/LanguageManager;)Ljava/lang/String; method_37280 a method_37280 + m (Ljava/io/File;II)Lnet/minecraft/network/chat/Component; grabPanoramixScreenshot a method_35698 + p 1 gameDirectory + p 2 width + p 3 height + m (Ljava/io/File;IIII)Lnet/minecraft/network/chat/Component; grabHugeScreenshot a method_35699 + p 1 gameDirectory + p 2 columnWidth + p 3 rowHeight + p 4 width + p 5 height + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_35700 a method_35700 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; method_53523 a method_53523 + m (Ljava/lang/Runnable;Z)V method_53524 a method_53524 + m (Ljava/lang/String;)V openChatScreen a method_29041 + p 1 defaultText + m (Ljava/lang/Throwable;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V rollbackResourcePacks a method_24226 + p 1 throwable + p 2 gameLoadCookie + m (Ljava/lang/Throwable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V clearResourcePacksOnError a method_31186 + p 1 throwable + p 2 errorMessage + p 3 gameLoadCookie + m (Ljava/nio/file/Path;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_37281 a method_37281 + m (Ljava/util/List;)V addInitialScreens a method_53525 + p 1 output + m (Ljava/util/UUID;)Z isBlocked a method_29042 + p 1 playerUUID + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_18507 a method_18507 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_29339 a method_29339 + m (Ljava/util/function/Consumer;)Z debugClientMetricsStart a method_34745 + p 1 logger + m (Ljava/util/function/Consumer;DI)V method_37282 a method_37282 + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_34746 a method_34746 + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37283 a method_37283 + m (Ljava/util/function/Consumer;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;)V method_37284 a method_37284 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_37285 a method_37285 + m (Lnet/minecraft/CrashReport;)V delayCrash a method_1494 + p 1 report + m (Lnet/minecraft/CrashReportCategory;)V fillUptime a method_54117 + p 1 category + m (Lnet/minecraft/network/chat/Component;)V addResourcePackLoadFailToast a method_49292 + p 1 message + m (ZLnet/minecraft/util/profiling/SingleTickProfiler;)Lnet/minecraft/util/profiling/ProfilerFiller; constructProfiler a method_24458 + p 1 renderFpsPie + p 2 singleTickProfiler + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;)Ljava/util/concurrent/CompletableFuture; reloadResourcePacks a method_36561 + p 1 error + p 2 gameLoadCookie + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/lang/Throwable;)V method_49293 a method_49293 + m (ZLnet/minecraft/client/Minecraft$GameLoadCookie;Ljava/util/concurrent/CompletableFuture;Ljava/util/Optional;)V method_24228 a method_24228 + m ()Z isWindowActive aA method_1569 + m ()Lnet/minecraft/client/HotbarManager; getHotbarManager aB method_1571 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager aC method_1554 + m ()Lnet/minecraft/client/resources/PaintingTextureManager; getPaintingTextures aD method_18321 + c Gets the sprite uploader used for paintings. + m ()Lnet/minecraft/client/resources/MobEffectTextureManager; getMobEffectTextures aE method_18505 + c Gets the sprite uploader used for potions. + m ()Lnet/minecraft/client/resources/MapDecorationTextureManager; getMapDecorationTextures aF method_58476 + m ()Lnet/minecraft/client/gui/GuiSpriteManager; getGuiSprites aG method_52699 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler aH method_16011 + m ()Lnet/minecraft/server/level/progress/StoringChunkProgressListener; getProgressListener aI method_35703 + m ()Lnet/minecraft/client/resources/SplashManager; getSplashManager aJ method_18095 + m ()Lnet/minecraft/client/gui/screens/Overlay; getOverlay aK method_18506 + m ()Lnet/minecraft/client/gui/screens/social/PlayerSocialManager; getPlayerSocialManager aL method_31320 + m ()Lcom/mojang/blaze3d/platform/Window; getWindow aM method_22683 + m ()Lnet/minecraft/client/gui/components/DebugScreenOverlay; getDebugOverlay aN method_53526 + m ()Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers aO method_22940 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getEntityModels aP method_31974 + m ()Z isTextFilteringEnabled aQ method_33883 + m ()V prepareForMultiplayer aR method_38932 + m ()Lnet/minecraft/util/SignatureValidator; getProfileKeySignatureValidator aS method_44256 + m ()Z canValidateProfileKeys aT method_55606 + m ()Lnet/minecraft/client/InputType; getLastInputType aU method_48186 + m ()Lnet/minecraft/client/GameNarrator; getNarrator aV method_44713 + m ()Lnet/minecraft/client/multiplayer/chat/ChatListener; getChatListener aW method_44714 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; getReportingContext aX method_44377 + m ()Lcom/mojang/realmsclient/gui/RealmsDataFetcher; realmsDataFetcher aY method_44646 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog; quickPlayLog aZ method_51253 + m ()Lnet/minecraft/client/renderer/texture/TextureManager; getTextureManager aa method_1531 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager ab method_1478 + m ()Lnet/minecraft/server/packs/repository/PackRepository; getResourcePackRepository ac method_1520 + m ()Lnet/minecraft/server/packs/VanillaPackResources; getVanillaPackResources ad method_45573 + m ()Lnet/minecraft/client/resources/server/DownloadedPackSource; getDownloadedPackSource ae method_1516 + m ()Ljava/nio/file/Path; getResourcePackDirectory af method_1479 + m ()Lnet/minecraft/client/resources/language/LanguageManager; getLanguageManager ag method_1526 + m ()Z isPaused ah method_1493 + m ()Lnet/minecraft/client/renderer/GpuWarnlistManager; getGpuWarnlistManager ai method_30049 + m ()Lnet/minecraft/client/sounds/SoundManager; getSoundManager aj method_1483 + m ()Lnet/minecraft/sounds/Music; getSituationalMusic ak method_1544 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getMinecraftSessionService al method_1495 + m ()Lnet/minecraft/client/resources/SkinManager; getSkinManager am method_1582 + m ()Lnet/minecraft/world/entity/Entity; getCameraEntity an method_1560 + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderer ao method_1541 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderDispatcher ap method_1561 + m ()Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; getBlockEntityRenderDispatcher aq method_31975 + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer ar method_1480 + m ()Lcom/mojang/datafixers/DataFixer; getFixerUpper as method_1543 + m ()Lnet/minecraft/client/DeltaTracker; getTimer at method_60646 + m ()Lnet/minecraft/client/color/block/BlockColors; getBlockColors au method_1505 + m ()Z showOnlyReducedInfo av method_1555 + c Whether to use reduced debug info + m ()Lnet/minecraft/client/gui/components/toasts/ToastComponent; getToasts aw method_1566 + m ()Lnet/minecraft/client/tutorial/Tutorial; getTutorial ax method_1577 + m (I)V updateMaxMipLevel b method_24041 + p 1 mipMapLevel + m (Lnet/minecraft/world/entity/Entity;)Z shouldEntityAppearGlowing b method_27022 + p 1 entity + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V onGameLoadFinished b method_51736 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_53905 b method_53905 + m (Lnet/minecraft/client/gui/screens/Screen;)V disconnect b method_56134 + p 1 nextScreen + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_35704 b method_35704 + m (Ljava/lang/Object;)Z countryEqualsISO3 b method_40189 + p 0 country + m (Ljava/lang/String;)Ljava/lang/String; method_37292 b method_37292 + m (Ljava/util/UUID;)Z isLocalPlayer b method_52701 + p 1 uuid + m (Ljava/util/concurrent/CompletableFuture;)V method_18508 b method_18508 + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_37290 b method_37290 + m (Ljava/util/function/Consumer;Ljava/nio/file/Path;)V method_37291 b method_37291 + m (Lnet/minecraft/CrashReport;)V delayCrashRaw b method_43587 + p 1 report + m (Lnet/minecraft/network/chat/Component;)V method_35701 b method_35701 + m (Z)V pauseGame b method_20539 + c Displays the ingame menu + p 1 pauseOnly + m (ZLnet/minecraft/util/profiling/SingleTickProfiler;)V finishProfilers b method_24460 + p 1 renderFpsPie + p 2 profiler + m ()Ljava/lang/String; method_54118 bD method_54118 + m ()Ljava/lang/String; method_54119 bE method_54119 + m ()Ljava/lang/String; method_54120 bF method_54120 + m ()Ljava/lang/String; method_54121 bG method_54121 + m ()Z method_59834 bH method_59834 + m ()Z method_1491 bI method_1491 + m ()V method_1572 bJ method_1572 + m ()Lcom/mojang/authlib/minecraft/UserApiService$UserProperties; method_55608 bK method_55608 + m ()Lcom/mojang/authlib/yggdrasil/ProfileResult; method_53464 bL method_53464 + m ()I method_16010 bM method_16010 + m ()Lnet/minecraft/client/CommandHistory; commandHistory ba method_52700 + m ()Lnet/minecraft/world/level/validation/DirectoryValidator; directoryValidator bb method_52702 + m ()Ljava/lang/String; getLauncherBrand bc method_54578 + m ()Ljava/lang/String; createTitle bd method_24287 + m ()V abortResourcePackRecovery be method_49294 + m ()V handleDelayedCrash bf method_54579 + m ()V selfTest bg method_17044 + m ()I getFramerateLimit bh method_16009 + m ()V emergencySave bi method_1519 + c Attempts to free as much memory as possible, including leaving the world and running the garbage collector. + m ()V debugClientMetricsStop bj method_37286 + m ()V debugClientMetricsCancel bk method_41733 + m ()Z startAttack bl method_1536 + m ()V startUseItem bm method_1583 + c Called when user clicked he's mouse right button (place) + m ()Z isLevelRunningNormally bn method_60647 + m ()Z isMultiplayerServer bo method_31321 + m ()V handleKeybinds bp method_1508 + m ()Lcom/mojang/authlib/minecraft/UserApiService$UserProperties; userProperties bq method_55607 + m ()V pickBlock br method_1511 + c Called when user clicked he's mouse middle button (pick block) + m ()Ljava/lang/String; method_60864 bs method_60864 + m ()Ljava/lang/String; method_37288 bt method_37288 + m ()Ljava/lang/String; method_37287 bu method_37287 + m ()Ljava/lang/String; method_37289 bv method_37289 + m ()Z isGameLoadFinished c method_53466 + m (I)Lnet/minecraft/server/level/progress/ChunkProgressListener; method_17533 c method_17533 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)Ljava/lang/Runnable; buildInitialScreens c method_53527 + p 1 gameLoadCookie + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_37278 c method_37278 + m (Lnet/minecraft/client/gui/screens/Screen;)V clearClientLevel c method_52703 + p 1 nextScreen + m (Lnet/minecraft/CrashReport;)V emergencySaveAndCrash c method_54580 + p 1 crashReport + m (Lnet/minecraft/network/chat/Component;)V method_1510 c method_1510 + m (Z)V runTick c method_1523 + p 1 renderLevel + m ()V updateTitle d method_24288 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_53528 d method_53528 + m (Lnet/minecraft/client/gui/screens/Screen;)V forceSetScreen d method_29970 + p 1 screen + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; fillReport d method_1587 + c Adds core server Info (GL version, Texture pack, isModded, type), and the worldInfo to the crash report. + p 1 theCrash + m (Lnet/minecraft/network/chat/Component;)V method_24229 d method_24229 + m (Z)V continueAttack d method_1590 + p 1 leftClick + m ()Lnet/minecraft/util/ModCheck; checkModStatus e method_24289 + m (Lnet/minecraft/client/Minecraft$GameLoadCookie;)V method_29338 e method_29338 + m (Lnet/minecraft/client/gui/screens/Screen;)V updateScreenAndTick e method_18098 + p 1 screen + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; method_43588 e method_43588 + m (Z)V method_44352 e method_44352 + m ()V run f method_1514 + m (Lnet/minecraft/client/gui/screens/Screen;)V method_53529 f method_53529 + m (Lnet/minecraft/CrashReport;)Lnet/minecraft/CrashReport; method_43589 f method_43589 + m ()V updateFontOptions g method_57017 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getMainRenderTarget h method_1522 + m ()Ljava/lang/String; getLaunchedVersion i method_1515 + c Gets the version that Minecraft was launched under (the name of a version JSON). Specified via the --version flag. + m ()Ljava/lang/String; getVersionType j method_1547 + c Gets the type of version that Minecraft was launched under (as specified in the version JSON). Specified via the --versionType flag. + m ()Z isEnforceUnicode k method_1573 + m ()Ljava/util/concurrent/CompletableFuture; reloadResourcePacks l method_1521 + m ()Lnet/minecraft/world/level/storage/LevelStorageSource; getLevelSource m method_1586 + c Returns the save loader that is currently being used + m ()V destroy n method_1490 + c Shuts down the minecraft applet by stopping the resource downloads, and clearing up GL stuff. Called when the application (or web page) is exited. + m ()I getFps o method_47599 + m ()J getFrameTimeNs p method_47600 + m ()V stop q method_1592 + c Called when the window is closing. Sets 'running' to false which allows the game loop to exit cleanly. + m ()Z isRunning r method_22108 + m ()Lnet/minecraft/client/sounds/MusicManager; getMusicManager s method_1538 + c Return the musicTicker's instance + m ()V tick t method_1574 + c Runs the current tick. + m ()Lnet/minecraft/client/telemetry/ClientTelemetryManager; getTelemetryManager u method_47601 + m ()D getGpuUtilization v method_41734 + m ()Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; getProfileKeyPairManager w method_43590 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldOpenFlows; createWorldOpenFlows x method_41735 + m ()V disconnect y method_18099 + m ()V clearDownloadedResourcePacks z method_55505 + m (Lnet/minecraft/client/main/GameConfig;)V + p 1 gameConfig + m ()V +c net/minecraft/client/Minecraft$1 fgo$1 net/minecraft/class_310$1 + f [I $SwitchMap$net$minecraft$world$phys$HitResult$Type a field_1778 + m ()V +c net/minecraft/client/Minecraft$ChatStatus fgo$a net/minecraft/class_310$class_5859 + f Lnet/minecraft/client/Minecraft$ChatStatus; ENABLED a field_28940 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_OPTIONS b field_28941 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_LAUNCHER c field_28942 + f Lnet/minecraft/client/Minecraft$ChatStatus; DISABLED_BY_PROFILE d field_28943 + f Lnet/minecraft/network/chat/Component; INFO_DISABLED_BY_PROFILE e field_39456 + f Lnet/minecraft/network/chat/Component; message f field_28944 + f [Lnet/minecraft/client/Minecraft$ChatStatus; $VALUES g field_28945 + m ()Lnet/minecraft/network/chat/Component; getMessage a method_33885 + m (Z)Z isChatAllowed a method_33886 + p 1 isLocalServer + m ()[Lnet/minecraft/client/Minecraft$ChatStatus; $values b method_36862 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V + p 3 message + m ()V +c net/minecraft/client/Minecraft$ChatStatus$1 fgo$a$1 net/minecraft/class_310$class_5859$1 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$2 fgo$a$2 net/minecraft/class_310$class_5859$2 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$3 fgo$a$3 net/minecraft/class_310$class_5859$3 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$ChatStatus$4 fgo$a$4 net/minecraft/class_310$class_5859$4 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/Minecraft$GameLoadCookie fgo$b net/minecraft/class_310$class_8764 + f Lcom/mojang/realmsclient/client/RealmsClient; realmsClient a comp_1906 + f Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlayData b comp_1907 + m ()Lcom/mojang/realmsclient/client/RealmsClient; realmsClient a comp_1906 + m ()Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlayData b comp_1907 + m (Lcom/mojang/realmsclient/client/RealmsClient;Lnet/minecraft/client/main/GameConfig$QuickPlayData;)V +c net/minecraft/client/MouseHandler fgp net/minecraft/class_312 + f Lorg/slf4j/Logger; LOGGER a field_52126 + f Lnet/minecraft/client/Minecraft; minecraft b field_1779 + f Z isLeftPressed c field_1791 + f Z isMiddlePressed d field_1790 + f Z isRightPressed e field_1788 + f D xpos f field_1795 + f D ypos g field_1794 + f I fakeRightMouse h field_1781 + f I activeButton i field_1780 + f Z ignoreFirstMove j field_1784 + f I clickDepth k field_1796 + f D mousePressedTime l field_1792 + f Lnet/minecraft/util/SmoothDouble; smoothTurnX m field_1793 + f Lnet/minecraft/util/SmoothDouble; smoothTurnY n field_1782 + f D accumulatedDX o field_1789 + f D accumulatedDY p field_1787 + f D accumulatedScrollX q field_45296 + f D accumulatedScrollY r field_45297 + f D lastHandleMovementTime s field_47842 + f Z mouseGrabbed t field_1783 + m ()V handleAccumulatedMovement a method_55793 + m (D)V turnPlayer a method_1606 + p 1 movementTime + m (J)V setup a method_1607 + p 1 windowPointer + m (JDD)V onScroll a method_1598 + c Will be called when a scrolling device is used, such as a mouse wheel or scrolling area of a touchpad.\n\n@see GLFWScrollCallbackI + p 1 windowPointer + p 3 xOffset + p 5 yOffset + m (JIII)V onPress a method_1601 + c Will be called when a mouse button is pressed or released.\n\n@see GLFWMouseButtonCallbackI + p 1 windowPointer + p 3 button + p 4 action + p 5 modifiers + m (JIJ)V method_29615 a method_29615 + m (JLjava/util/List;I)V onDrop a method_29616 + p 1 windowPointer + p 3 files + p 4 failedFiles + m (Lnet/minecraft/client/gui/screens/Screen;DD)V method_55794 a method_55794 + m (Lnet/minecraft/client/gui/screens/Screen;DDDD)V method_55795 a method_55795 + m ([ZLnet/minecraft/client/gui/screens/Screen;DDI)V method_1605 a method_1605 + m ()Z isLeftPressed b method_1608 + m (JDD)V onMove b method_1600 + c Will be called when the cursor is moved.\n\n

The callback function receives the cursor position, measured in screen coordinates but relative to the top-left corner of the window client area. On platforms that provide it, the full sub-pixel cursor position is passed on.

\n\n@see GLFWCursorPosCallbackI + p 1 windowPointer + p 3 xpos + p 5 ypos + m (JIII)V method_22684 b method_22684 + m (JLjava/util/List;I)V method_29617 b method_29617 + m ([ZLnet/minecraft/client/gui/screens/Screen;DDI)V method_1611 b method_1611 + m ()Z isMiddlePressed c method_35707 + m (JDD)V method_22685 c method_22685 + m (JIII)V method_22686 c method_22686 + m ()Z isRightPressed d method_1609 + m (JDD)V method_22687 d method_22687 + m ()D xpos e method_1603 + m (JDD)V method_22688 e method_22688 + m ()D ypos f method_1604 + m (JDD)V method_22689 f method_22689 + m ()V setIgnoreFirstMove g method_1599 + m ()Z isMouseGrabbed h method_1613 + c Returns {@code true} if the mouse is grabbed. + m ()V grabMouse i method_1612 + c Will set the focus to ingame if the Minecraft window is the active with focus. Also clears any GUI screen currently displayed + m ()V releaseMouse j method_1610 + c Resets the player keystate, disables the ingame focus, and ungrabs the mouse cursor. + m ()V cursorEntered k method_30134 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/NarratorStatus fgq net/minecraft/class_4065 + f Lnet/minecraft/client/NarratorStatus; OFF a field_18176 + f Lnet/minecraft/client/NarratorStatus; ALL b field_18177 + f Lnet/minecraft/client/NarratorStatus; CHAT c field_18178 + f Lnet/minecraft/client/NarratorStatus; SYSTEM d field_18179 + f Ljava/util/function/IntFunction; BY_ID e field_18180 + f I id f field_18181 + f Lnet/minecraft/network/chat/Component; name g field_24212 + f [Lnet/minecraft/client/NarratorStatus; $VALUES h field_18183 + m ()I getId a method_18509 + m (I)Lnet/minecraft/client/NarratorStatus; byId a method_18510 + p 0 id + m ()Lnet/minecraft/network/chat/Component; getName b method_18511 + m ()Z shouldNarrateChat c method_44715 + m ()Z shouldNarrateSystem d method_44716 + m ()[Lnet/minecraft/client/NarratorStatus; $values e method_36864 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 name + m ()V +c net/minecraft/client/OptionInstance fgr net/minecraft/class_7172 + f Lnet/minecraft/client/OptionInstance$Enum; BOOLEAN_VALUES a field_38278 + f Lnet/minecraft/client/OptionInstance$CaptionBasedToString; BOOLEAN_TO_STRING b field_41333 + f Lorg/slf4j/Logger; LOGGER c field_37862 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltip d field_37863 + f Ljava/util/function/Function; toString e field_37864 + f Lnet/minecraft/client/OptionInstance$ValueSet; values f field_37865 + f Lcom/mojang/serialization/Codec; codec g field_38279 + f Ljava/lang/Object; initialValue h field_37866 + f Ljava/util/function/Consumer; onValueUpdate i field_37867 + f Lnet/minecraft/network/chat/Component; caption j field_38280 + f Ljava/lang/Object; value k field_37868 + m ()Lnet/minecraft/client/OptionInstance$TooltipSupplier; noTooltip a method_42399 + m (Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; method_42715 a method_42715 + m (Lnet/minecraft/client/Options;)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_57701 + p 1 options + m (Lnet/minecraft/client/Options;III)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_18520 + p 1 options + p 2 x + p 3 y + p 4 width + m (Lnet/minecraft/client/Options;IIILjava/util/function/Consumer;)Lnet/minecraft/client/gui/components/AbstractWidget; createButton a method_47603 + p 1 options + p 2 x + p 3 y + p 4 width + p 5 onValueChanged + m (Ljava/lang/Boolean;)V method_41752 a method_41752 + m (Ljava/lang/Object;)V set a method_41748 + p 1 value + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_47604 + p 0 caption + p 1 tooltip + p 2 valueStringifier + p 3 initialValue + p 4 onValueUpdate + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Z)Lnet/minecraft/client/OptionInstance; createBoolean a method_41749 + p 0 caption + p 1 tooltip + p 2 initialValue + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_41750 + p 0 caption + p 1 tooltip + p 2 initialValue + p 3 onValueUpdate + m (Ljava/lang/String;Z)Lnet/minecraft/client/OptionInstance; createBoolean a method_42402 + p 0 key + p 1 initialValue + m (Ljava/lang/String;ZLjava/util/function/Consumer;)Lnet/minecraft/client/OptionInstance; createBoolean a method_41751 + p 0 key + p 1 initialValue + p 2 onValueUpdate + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/OptionInstance$TooltipSupplier; cachedConstantTooltip a method_42717 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/util/OptionEnum;)Lnet/minecraft/network/chat/Component; method_42718 a method_42718 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_47605 a method_47605 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_47393 a method_47393 + m ()Lnet/minecraft/client/OptionInstance$CaptionBasedToString; forOptionEnum b method_42720 + m (Ljava/lang/Boolean;)V method_42405 b method_42405 + m (Ljava/lang/Object;)Ljava/lang/Object; method_42403 b method_42403 + m ()Ljava/lang/Object; get c method_41753 + m (Ljava/lang/Object;)V method_47606 c method_47606 + m ()Lcom/mojang/serialization/Codec; codec d method_42404 + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_47394 d method_47394 + m ()Lnet/minecraft/client/OptionInstance$ValueSet; values e method_41754 + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Lnet/minecraft/client/OptionInstance$ValueSet;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 1 caption + p 2 tooltip + p 3 valueStringifier + p 4 values + p 5 initialValue + p 6 onValueUpdate + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/OptionInstance$CaptionBasedToString;Lnet/minecraft/client/OptionInstance$ValueSet;Lcom/mojang/serialization/Codec;Ljava/lang/Object;Ljava/util/function/Consumer;)V + p 1 caption + p 2 tooltip + p 3 valueStringifier + p 4 values + p 5 codec + p 6 initialValue + p 7 onValueUpdate + m ()V +c net/minecraft/client/OptionInstance$AltEnum fgr$a net/minecraft/class_7172$class_7273 + f Ljava/util/List; values a comp_671 + f Ljava/util/List; altValues b comp_672 + f Ljava/util/function/BooleanSupplier; altCondition c comp_673 + f Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter; valueSetter d comp_674 + f Lcom/mojang/serialization/Codec; codec e comp_675 + m ()Ljava/util/List; values b comp_671 + m ()Ljava/util/List; altValues c comp_672 + m ()Ljava/util/function/BooleanSupplier; altCondition d comp_673 + m (Ljava/util/List;Ljava/util/List;Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$CaptionBasedToString fgr$b net/minecraft/class_7172$class_7303 +c net/minecraft/client/OptionInstance$ClampingLazyMaxIntRange fgr$c net/minecraft/class_7172$class_7304 + f I minInclusive a comp_593 + f Ljava/util/function/IntSupplier; maxSupplier b comp_690 + f I encodableMaxInclusive c comp_1316 + m (Ljava/lang/Integer;)Ljava/util/Optional; validateValue a method_42408 + p 1 value + m (Ljava/lang/Integer;I)Ljava/lang/String; method_49597 a method_49597 + m (Ljava/lang/Integer;)Lcom/mojang/serialization/DataResult; method_42409 c method_42409 + m ()Ljava/util/function/IntSupplier; maxSupplier g comp_690 + m ()I encodableMaxInclusive h comp_1316 + m (ILjava/util/function/IntSupplier;I)V +c net/minecraft/client/OptionInstance$CycleableValueSet fgr$d net/minecraft/class_7172$class_7305 + m ()Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; valueListSupplier a method_42721 + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;IIILnet/minecraft/client/Options;Ljava/util/function/Consumer;Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; method_42723 a method_42723 + m (Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/Options;Ljava/util/function/Consumer;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Object;)V method_42724 a method_42724 + m ()Lnet/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter; valueSetter e comp_674 +c net/minecraft/client/OptionInstance$CycleableValueSet$ValueSetter fgr$d$a net/minecraft/class_7172$class_7305$class_7274 +c net/minecraft/client/OptionInstance$Enum fgr$e net/minecraft/class_7172$class_7173 + f Ljava/util/List; values a comp_592 + f Lcom/mojang/serialization/Codec; codec b comp_675 + m ()Ljava/util/List; values b comp_592 + m (Ljava/util/List;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$IntRange fgr$f net/minecraft/class_7172$class_7174 + f I minInclusive a comp_593 + f I maxInclusive b comp_594 + f Z applyValueImmediately c comp_2661 + m (Ljava/lang/Integer;)Ljava/util/Optional; validateValue a method_41761 + p 1 value + m (II)V + p 1 minInclusive + p 2 maxInclusive + m (IIZ)V +c net/minecraft/client/OptionInstance$IntRangeBase fgr$g net/minecraft/class_7172$class_7275 + m (D)Ljava/lang/Integer; fromSliderValue a method_42412 + p 1 value + m (Ljava/util/function/IntFunction;Ljava/util/function/ToIntFunction;)Lnet/minecraft/client/OptionInstance$SliderableValueSet; xmap a method_42414 + p 1 to + p 2 from + m ()I maxInclusive b comp_594 + m (Ljava/lang/Integer;)D toSliderValue b method_42415 + p 1 value + m ()I minInclusive d comp_593 +c net/minecraft/client/OptionInstance$IntRangeBase$1 fgr$g$1 net/minecraft/class_7172$class_7275$1 + f Ljava/util/function/ToIntFunction; val$from a field_37869 + f Ljava/util/function/IntFunction; val$to b field_37870 + f Lnet/minecraft/client/OptionInstance$IntRangeBase; field_37871 c field_37871 + m (Lnet/minecraft/client/OptionInstance$IntRangeBase;Ljava/util/function/ToIntFunction;Ljava/util/function/IntFunction;)V +c net/minecraft/client/OptionInstance$LazyEnum fgr$h net/minecraft/class_7172$class_7276 + f Ljava/util/function/Supplier; values a comp_676 + f Ljava/util/function/Function; validateValue b comp_677 + f Lcom/mojang/serialization/Codec; codec c comp_675 + m ()Ljava/util/function/Supplier; values b comp_676 + m ()Ljava/util/function/Function; validateValue c comp_677 + m (Ljava/util/function/Supplier;Ljava/util/function/Function;Lcom/mojang/serialization/Codec;)V +c net/minecraft/client/OptionInstance$OptionInstanceSliderButton fgr$i net/minecraft/class_7172$class_7175 + f Lnet/minecraft/client/OptionInstance; instance d field_37872 + f Lnet/minecraft/client/OptionInstance$SliderableValueSet; values e field_37873 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier f field_37874 + f Ljava/util/function/Consumer; onValueChanged m field_41334 + f Ljava/lang/Long; delayedApplyAt n field_51513 + f Z applyValueImmediately o field_51514 + m ()V applyUnsavedValue c method_59868 + m (Lnet/minecraft/client/Options;IIIILnet/minecraft/client/OptionInstance;Lnet/minecraft/client/OptionInstance$SliderableValueSet;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Ljava/util/function/Consumer;Z)V + p 1 options + p 2 x + p 3 y + p 4 width + p 5 height + p 6 instance + p 7 values + p 8 tooltipSupplier + p 9 onValueChanged + p 10 applyValueImmediately +c net/minecraft/client/OptionInstance$SliderableOrCyclableValueSet fgr$j net/minecraft/class_7172$class_7306 + m ()Z createCycleButton c method_42722 +c net/minecraft/client/OptionInstance$SliderableValueSet fgr$k net/minecraft/class_7172$class_7176 + m (Lnet/minecraft/client/Options;IIILnet/minecraft/client/OptionInstance$TooltipSupplier;Ljava/util/function/Consumer;Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; method_42725 a method_42725 + m ()Z applyValueImmediately aR_ comp_2661 + m (D)Ljava/lang/Object; fromSliderValue b method_41763 + p 1 value + m (Ljava/lang/Object;)D toSliderValue b method_41765 + p 1 value +c net/minecraft/client/OptionInstance$TooltipSupplier fgr$l net/minecraft/class_7172$class_7277 +c net/minecraft/client/OptionInstance$UnitDouble fgr$m net/minecraft/class_7172$class_7177 + f Lnet/minecraft/client/OptionInstance$UnitDouble; INSTANCE a field_37875 + f [Lnet/minecraft/client/OptionInstance$UnitDouble; $VALUES b field_37876 + m (D)Ljava/lang/Double; fromSliderValue a method_41768 + p 1 value + m (Ljava/lang/Boolean;)Ljava/lang/Double; method_42419 a method_42419 + m (Ljava/lang/Double;)Ljava/util/Optional; validateValue a method_41770 + p 1 value + m (Ljava/util/function/DoubleFunction;Ljava/util/function/ToDoubleFunction;)Lnet/minecraft/client/OptionInstance$SliderableValueSet; xmap a method_42420 + p 1 encoder + p 2 decoder + m ()[Lnet/minecraft/client/OptionInstance$UnitDouble; $values b method_41767 + m (Ljava/lang/Double;)D toSliderValue b method_41771 + p 1 value + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/OptionInstance$UnitDouble$1 fgr$m$1 net/minecraft/class_7172$class_7177$1 + f Ljava/util/function/ToDoubleFunction; val$from a field_38283 + f Ljava/util/function/DoubleFunction; val$to b field_38284 + f Lnet/minecraft/client/OptionInstance$UnitDouble; field_38285 c field_38285 + m (Lnet/minecraft/client/OptionInstance$UnitDouble;Ljava/util/function/ToDoubleFunction;Ljava/util/function/DoubleFunction;)V +c net/minecraft/client/OptionInstance$ValueSet fgr$n net/minecraft/class_7172$class_7178 + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;Lnet/minecraft/client/Options;IIILjava/util/function/Consumer;)Ljava/util/function/Function; createButton a method_41756 + p 1 tooltipSupplier + p 2 options + p 3 x + p 4 y + p 5 width + p 6 onValueChanged + m (Ljava/lang/Object;)Ljava/util/Optional; validateValue a method_41758 + p 1 value + m ()Lcom/mojang/serialization/Codec; codec f comp_675 +c net/minecraft/client/Options fgs net/minecraft/class_315 + f Lnet/minecraft/client/KeyMapping; keyJump A field_1903 + f Lnet/minecraft/client/KeyMapping; keyShift B field_1832 + f Lnet/minecraft/client/KeyMapping; keySprint C field_1867 + f Lnet/minecraft/client/KeyMapping; keyInventory D field_1822 + f Lnet/minecraft/client/KeyMapping; keySwapOffhand E field_1831 + f Lnet/minecraft/client/KeyMapping; keyDrop F field_1869 + f Lnet/minecraft/client/KeyMapping; keyUse G field_1904 + f Lnet/minecraft/client/KeyMapping; keyAttack H field_1886 + f Lnet/minecraft/client/KeyMapping; keyPickItem I field_1871 + f Lnet/minecraft/client/KeyMapping; keyChat J field_1890 + f Lnet/minecraft/client/KeyMapping; keyPlayerList K field_1907 + f Lnet/minecraft/client/KeyMapping; keyCommand L field_1845 + f Lnet/minecraft/client/KeyMapping; keySocialInteractions M field_26845 + f Lnet/minecraft/client/KeyMapping; keyScreenshot N field_1835 + f Lnet/minecraft/client/KeyMapping; keyTogglePerspective O field_1824 + f Lnet/minecraft/client/KeyMapping; keySmoothCamera P field_1816 + f Lnet/minecraft/client/KeyMapping; keyFullscreen Q field_1836 + f Lnet/minecraft/client/KeyMapping; keySpectatorOutlines R field_1906 + f Lnet/minecraft/client/KeyMapping; keyAdvancements S field_1844 + f [Lnet/minecraft/client/KeyMapping; keyHotbarSlots T field_1852 + f Lnet/minecraft/client/KeyMapping; keySaveHotbarActivator U field_1879 + f Lnet/minecraft/client/KeyMapping; keyLoadHotbarActivator V field_1874 + f [Lnet/minecraft/client/KeyMapping; keyMappings W field_1839 + f Lnet/minecraft/client/Minecraft; minecraft X field_1863 + f Z hideGui Y field_1842 + f Ljava/lang/String; lastMpIp Z field_1864 + f Lnet/minecraft/client/OptionInstance; ambientOcclusion aA field_1841 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_NONE aB field_37880 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_PLAYER_AFFECTED aC field_37881 + f Lnet/minecraft/network/chat/Component; PRIORITIZE_CHUNK_TOOLTIP_NEARBY aD field_37882 + f Lnet/minecraft/client/OptionInstance; prioritizeChunkUpdates aE field_34787 + f Lnet/minecraft/client/OptionInstance; chatVisibility aF field_1877 + f Lnet/minecraft/client/OptionInstance; chatOpacity aG field_1820 + f Lnet/minecraft/client/OptionInstance; chatLineSpacing aH field_23932 + f I RENDER_DISTANCE_TINY a field_32149 + f Lnet/minecraft/network/chat/Component; MENU_BACKGROUND_BLURRINESS_TOOLTIP aI field_49474 + f I BLURRINESS_DEFAULT_VALUE aJ field_49475 + f Lnet/minecraft/client/OptionInstance; menuBackgroundBlurriness aK field_49476 + f Lnet/minecraft/client/OptionInstance; textBackgroundOpacity aL field_18726 + f Lnet/minecraft/client/OptionInstance; panoramaSpeed aM field_40382 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_CONTRAST_MODE aN field_43043 + f Lnet/minecraft/client/OptionInstance; highContrast aO field_43044 + f Lnet/minecraft/client/OptionInstance; narratorHotkey aP field_45987 + f Ljava/util/Set; modelParts aQ field_1892 + f Lnet/minecraft/client/OptionInstance; mainHand aR field_1829 + f Lnet/minecraft/client/OptionInstance; chatScale aS field_1908 + f Lnet/minecraft/client/OptionInstance; chatWidth aT field_1915 + f Lnet/minecraft/client/OptionInstance; chatHeightUnfocused aU field_1825 + f Lnet/minecraft/client/OptionInstance; chatHeightFocused aV field_1838 + f Lnet/minecraft/client/OptionInstance; chatDelay aW field_23933 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_NOTIFICATION_DISPLAY_TIME aX field_41783 + f Lnet/minecraft/client/OptionInstance; notificationDisplayTime aY field_41784 + f Lnet/minecraft/client/OptionInstance; mipmapLevels aZ field_1856 + f Z smoothCamera aa field_1914 + f I AUTO_GUI_SCALE ab field_43405 + f Ljava/lang/String; languageCode ac field_1883 + f Z onboardAccessibility ad field_41785 + f Z syncWrites ae field_25623 + f Lorg/slf4j/Logger; LOGGER af field_1834 + f Lcom/google/gson/Gson; GSON ag field_1823 + f Lcom/google/gson/reflect/TypeToken; LIST_OF_STRINGS_TYPE ah field_1859 + f Lcom/google/common/base/Splitter; OPTION_SPLITTER ai field_1853 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DARK_MOJANG_BACKGROUND aj field_37878 + f Lnet/minecraft/client/OptionInstance; darkMojangStudiosBackground ak field_32156 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_HIDE_LIGHTNING_FLASHES al field_37879 + f Lnet/minecraft/client/OptionInstance; hideLightningFlash am field_34786 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_HIDE_SPLASH_TEXTS an field_46854 + f Lnet/minecraft/client/OptionInstance; hideSplashTexts ao field_46855 + f Lnet/minecraft/client/OptionInstance; sensitivity ap field_1843 + f Lnet/minecraft/client/OptionInstance; renderDistance aq field_1870 + f Lnet/minecraft/client/OptionInstance; simulationDistance ar field_34959 + f I serverRenderDistance as field_34784 + f Lnet/minecraft/client/OptionInstance; entityDistanceScaling at field_24214 + f Lnet/minecraft/client/OptionInstance; framerateLimit au field_1909 + f Lnet/minecraft/client/OptionInstance; cloudStatus av field_1814 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FAST aw field_38289 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FABULOUS ax field_38286 + f Lnet/minecraft/network/chat/Component; GRAPHICS_TOOLTIP_FANCY ay field_38287 + f Lnet/minecraft/client/OptionInstance; graphicsMode az field_25444 + f Lnet/minecraft/client/OptionInstance; backgroundForChatOnly bA field_18725 + f Lnet/minecraft/client/OptionInstance; touchscreen bB field_1854 + f Lnet/minecraft/client/OptionInstance; fullscreen bC field_1857 + f Lnet/minecraft/client/OptionInstance; bobView bD field_1891 + f Lnet/minecraft/network/chat/Component; MOVEMENT_TOGGLE bE field_38297 + f Lnet/minecraft/network/chat/Component; MOVEMENT_HOLD bF field_38298 + f Lnet/minecraft/client/OptionInstance; toggleCrouch bG field_21332 + f Lnet/minecraft/client/OptionInstance; toggleSprint bH field_21333 + f I RENDER_DISTANCE_SHORT b field_32150 + f Lnet/minecraft/network/chat/Component; CHAT_TOOLTIP_HIDE_MATCHED_NAMES bI field_38299 + f Lnet/minecraft/client/OptionInstance; hideMatchedNames bJ field_26926 + f Lnet/minecraft/client/OptionInstance; showAutosaveIndicator bK field_35426 + f Lnet/minecraft/network/chat/Component; CHAT_TOOLTIP_ONLY_SHOW_SECURE bL field_39320 + f Lnet/minecraft/client/OptionInstance; onlyShowSecureChat bM field_39321 + f Ljava/io/File; optionsFile bN field_1897 + f Lnet/minecraft/client/CameraType; cameraType bO field_26677 + f Lnet/minecraft/client/OptionInstance; fov bP field_1826 + f Lnet/minecraft/network/chat/Component; TELEMETRY_TOOLTIP bQ field_41335 + f Lnet/minecraft/client/OptionInstance; telemetryOptInExtra bR field_41336 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_SCREEN_EFFECT bS field_38290 + f Lnet/minecraft/client/OptionInstance; screenEffectScale bT field_26675 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_FOV_EFFECT bU field_38291 + f Lnet/minecraft/client/OptionInstance; fovEffectScale bV field_26676 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DARKNESS_EFFECT bW field_38292 + f Lnet/minecraft/client/OptionInstance; darknessEffectScale bX field_38293 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_GLINT_SPEED bY field_42112 + f Lnet/minecraft/client/OptionInstance; glintSpeed bZ field_42113 + f Lnet/minecraft/client/OptionInstance; attackIndicator ba field_1895 + f Lnet/minecraft/client/OptionInstance; biomeBlendRadius bb field_1878 + f Lnet/minecraft/client/OptionInstance; mouseWheelSensitivity bc field_1889 + f Lnet/minecraft/client/OptionInstance; rawMouseInput bd field_20308 + f Lnet/minecraft/client/OptionInstance; autoJump be field_1848 + f Lnet/minecraft/client/OptionInstance; operatorItemsTab bf field_41094 + f Lnet/minecraft/client/OptionInstance; autoSuggestions bg field_1873 + f Lnet/minecraft/client/OptionInstance; chatColors bh field_1900 + f Lnet/minecraft/client/OptionInstance; chatLinks bi field_1911 + f Lnet/minecraft/client/OptionInstance; chatLinksPrompt bj field_1817 + f Lnet/minecraft/client/OptionInstance; enableVsync bk field_1884 + f Lnet/minecraft/client/OptionInstance; entityShadows bl field_1888 + f Lnet/minecraft/client/OptionInstance; forceUnicodeFont bm field_1819 + f Lnet/minecraft/client/OptionInstance; japaneseGlyphVariants bn field_49105 + f Lnet/minecraft/client/OptionInstance; invertYMouse bo field_1865 + f Lnet/minecraft/client/OptionInstance; discreteMouseScroll bp field_19244 + f Lnet/minecraft/network/chat/Component; REALMS_NOTIFICATIONS_TOOLTIP bq field_52127 + f Lnet/minecraft/client/OptionInstance; realmsNotifications br field_1830 + f Lnet/minecraft/network/chat/Component; ALLOW_SERVER_LISTING_TOOLTIP bs field_38294 + f Lnet/minecraft/client/OptionInstance; allowServerListing bt field_35637 + f Lnet/minecraft/client/OptionInstance; reducedDebugInfo bu field_1910 + f Ljava/util/Map; soundSourceVolumes bv field_1916 + f Lnet/minecraft/client/OptionInstance; showSubtitles bw field_1818 + f Lnet/minecraft/network/chat/Component; DIRECTIONAL_AUDIO_TOOLTIP_ON bx field_38295 + f Lnet/minecraft/network/chat/Component; DIRECTIONAL_AUDIO_TOOLTIP_OFF by field_38296 + f Lnet/minecraft/client/OptionInstance; directionalAudio bz field_37877 + f I RENDER_DISTANCE_NORMAL c field_32152 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_GLINT_STRENGTH ca field_42114 + f Lnet/minecraft/client/OptionInstance; glintStrength cb field_42115 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY_TOOLTIP_DAMAGE_TILT_STRENGTH cc field_42481 + f Lnet/minecraft/client/OptionInstance; damageTiltStrength cd field_42482 + f Lnet/minecraft/client/OptionInstance; gamma ce field_1840 + f I MAX_GUI_SCALE_INCLUSIVE cf field_43110 + f Lnet/minecraft/client/OptionInstance; guiScale cg field_1868 + f Lnet/minecraft/client/OptionInstance; particles ch field_1882 + f Lnet/minecraft/client/OptionInstance; narrator ci field_1896 + f Lnet/minecraft/client/OptionInstance; soundDevice cj field_34783 + f I RENDER_DISTANCE_FAR d field_32153 + f I RENDER_DISTANCE_REALLY_FAR e field_32154 + f I RENDER_DISTANCE_EXTREME f field_32155 + f Ljava/lang/String; DEFAULT_SOUND_DEVICE g field_34785 + f I UNLIMITED_FRAMERATE_CUTOFF h field_38300 + f Ljava/util/List; resourcePacks i field_1887 + f Ljava/util/List; incompatibleResourcePacks j field_1846 + f Ljava/lang/String; fullscreenVideoModeString k field_1828 + f Z hideServerAddress l field_1815 + f Z advancedItemTooltips m field_1827 + f Z pauseOnLostFocus n field_1837 + f I overrideWidth o field_1872 + f I overrideHeight p field_1885 + f Z useNativeTransport q field_1876 + f Lnet/minecraft/client/tutorial/TutorialSteps; tutorialStep r field_1875 + f Z joinedFirstServer s field_26844 + f Z hideBundleTutorial t field_28777 + f I glDebugVerbosity u field_1901 + f Z skipMultiplayerWarning v field_21840 + f Lnet/minecraft/client/KeyMapping; keyUp w field_1894 + f Lnet/minecraft/client/KeyMapping; keyLeft x field_1913 + f Lnet/minecraft/client/KeyMapping; keyDown y field_1881 + f Lnet/minecraft/client/KeyMapping; keyRight z field_1849 + m ()Lnet/minecraft/client/OptionInstance; chatDelay A method_42561 + m ()Lnet/minecraft/client/OptionInstance; notificationDisplayTime B method_48191 + m ()Lnet/minecraft/client/OptionInstance; mipmapLevels C method_42563 + m ()Lnet/minecraft/client/OptionInstance; attackIndicator D method_42565 + m ()Lnet/minecraft/client/OptionInstance; biomeBlendRadius E method_41805 + m ()Lnet/minecraft/client/OptionInstance; mouseWheelSensitivity F method_41806 + m ()Lnet/minecraft/client/OptionInstance; rawMouseInput G method_41807 + m ()Lnet/minecraft/client/OptionInstance; autoJump H method_42423 + m ()Lnet/minecraft/client/OptionInstance; operatorItemsTab I method_47395 + m ()Lnet/minecraft/client/OptionInstance; autoSuggestions J method_42425 + m ()Lnet/minecraft/client/OptionInstance; chatColors K method_42427 + m ()Lnet/minecraft/client/OptionInstance; chatLinks L method_42429 + m ()Lnet/minecraft/client/OptionInstance; chatLinksPrompt M method_42431 + m ()Lnet/minecraft/client/OptionInstance; enableVsync N method_42433 + m ()Lnet/minecraft/client/OptionInstance; entityShadows O method_42435 + m ()Lnet/minecraft/client/OptionInstance; forceUnicodeFont P method_42437 + m ()Lnet/minecraft/client/OptionInstance; japaneseGlyphVariants Q method_57018 + m ()Lnet/minecraft/client/OptionInstance; invertYMouse R method_42438 + m ()Lnet/minecraft/client/OptionInstance; discreteMouseScroll S method_42439 + m ()Lnet/minecraft/client/OptionInstance; realmsNotifications T method_42440 + m ()Lnet/minecraft/client/OptionInstance; allowServerListing U method_42441 + m ()Lnet/minecraft/client/OptionInstance; reducedDebugInfo V method_42442 + m ()Lnet/minecraft/client/OptionInstance; showSubtitles W method_42443 + m ()Lnet/minecraft/client/OptionInstance; directionalAudio X method_42444 + m ()Lnet/minecraft/client/OptionInstance; backgroundForChatOnly Y method_42445 + m ()Lnet/minecraft/client/OptionInstance; touchscreen Z method_42446 + m ()Lnet/minecraft/client/OptionInstance; darkMojangStudiosBackground a method_41772 + m (D)I unlogMouse a method_41773 + p 0 input + m (F)F getBackgroundOpacity a method_19343 + p 1 opacity + m (I)I getBackgroundColor a method_19344 + p 1 chatColor + m (Lnet/minecraft/server/packs/repository/PackRepository;)V updateResourcePacks a method_49598 + p 1 packRepository + m (Lnet/minecraft/sounds/SoundSource;)F getSoundSourceVolume a method_1630 + p 1 category + m (Lnet/minecraft/sounds/SoundSource;Ljava/lang/Double;)V method_45575 a method_45575 + m (Lnet/minecraft/world/entity/HumanoidArm;)V method_42455 a method_42455 + m (Lnet/minecraft/world/entity/player/ChatVisiblity;)V method_42456 a method_42456 + m (Lnet/minecraft/world/entity/player/PlayerModelPart;)Z isModelPartEnabled a method_32594 + p 1 playerModelPart + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Z)V toggleModelPart a method_1631 + p 1 playerModelPart + p 2 enable + m (Lcom/mojang/datafixers/util/Pair;)Ljava/lang/String; method_37293 a method_37293 + m (Lnet/minecraft/client/AttackIndicatorStatus;)V method_42458 a method_42458 + m (Lnet/minecraft/client/CameraType;)V setCameraType a method_31043 + p 1 pointOfView + m (Lnet/minecraft/client/CloudStatus;)V method_42459 a method_42459 + m (Lnet/minecraft/client/GraphicsStatus;)V method_42460 a method_42460 + m (Lnet/minecraft/client/KeyMapping;Lcom/mojang/blaze3d/platform/InputConstants$Key;)V setKey a method_1641 + p 1 keyBinding + p 2 input + m (Lnet/minecraft/client/NarratorStatus;)V method_42463 a method_42463 + m (Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/GraphicsStatus;)V method_42464 a method_42464 + m (Lnet/minecraft/client/Options$FieldAccess;)V processOptions a method_33666 + p 1 accessor + m (Lnet/minecraft/client/Options$OptionAccess;)V processDumpedOptions a method_57019 + p 1 optionAccess + m (Lnet/minecraft/client/ParticleStatus;)V method_42465 a method_42465 + m (Lnet/minecraft/client/PrioritizeChunkUpdates;)V method_41776 a method_41776 + m (Ljava/lang/Boolean;)V method_47607 a method_47607 + m (Ljava/lang/Double;)V method_42467 a method_42467 + m (Ljava/lang/Integer;)V method_42468 a method_42468 + m (Ljava/lang/String;)Z isTrue a method_32595 + p 0 value + m (Ljava/lang/String;Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; createSoundSliderOptionInstance a method_45576 + p 1 text + p 2 soundSource + m (Ljava/util/EnumMap;)V method_45577 a method_45577 + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/nbt/CompoundTag; dataFix a method_1626 + p 1 nbt + m (Lnet/minecraft/nbt/CompoundTag;Ljava/lang/String;)V method_24230 a method_24230 + m (Lnet/minecraft/network/chat/Component;D)Lnet/minecraft/network/chat/Component; percentValueLabel a method_41781 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; genericValueLabel a method_41782 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/GraphicsStatus;)Lnet/minecraft/network/chat/Component; method_42497 a method_42497 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/NarratorStatus;)Lnet/minecraft/network/chat/Component; method_42489 a method_42489 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_47608 a method_47608 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42492 a method_42492 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42493 a method_42493 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/String;)Lnet/minecraft/network/chat/Component; method_42523 a method_42523 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; genericValueLabel a method_41783 + p 0 text + p 1 value + m ()Z useNativeTransport aA method_1639 + c Returns {@code true} if the client connect to a server using the native transport system. + m ()Lnet/minecraft/client/CameraType; getCameraType aB method_31044 + m ()Ljava/io/File; getFile aC method_37294 + m ()Ljava/lang/String; dumpOptionsForReport aD method_37295 + m ()I getEffectiveRenderDistance aE method_38521 + m ()V updateFontOptions aF method_57020 + m ()Z japaneseGlyphVariantsDefault aG method_57021 + m ()Ljava/util/List; method_42478 aH method_42478 + m ()I method_42479 aI method_42479 + m ()Z method_42480 aJ method_42480 + m ()Lnet/minecraft/client/OptionInstance; fullscreen aa method_42447 + m ()Lnet/minecraft/client/OptionInstance; bobView ab method_42448 + m ()Lnet/minecraft/client/OptionInstance; toggleCrouch ac method_42449 + m ()Lnet/minecraft/client/OptionInstance; toggleSprint ad method_42450 + m ()Lnet/minecraft/client/OptionInstance; hideMatchedNames ae method_42451 + m ()Lnet/minecraft/client/OptionInstance; showAutosaveIndicator af method_42452 + m ()Lnet/minecraft/client/OptionInstance; onlyShowSecureChat ag method_44026 + m ()Lnet/minecraft/client/OptionInstance; fov ah method_41808 + m ()Lnet/minecraft/client/OptionInstance; telemetryOptInExtra ai method_47609 + m ()Lnet/minecraft/client/OptionInstance; screenEffectScale aj method_42453 + m ()Lnet/minecraft/client/OptionInstance; fovEffectScale ak method_42454 + m ()Lnet/minecraft/client/OptionInstance; darknessEffectScale al method_42472 + m ()Lnet/minecraft/client/OptionInstance; glintSpeed am method_48580 + m ()Lnet/minecraft/client/OptionInstance; glintStrength an method_48581 + m ()Lnet/minecraft/client/OptionInstance; damageTiltStrength ao method_48974 + m ()Lnet/minecraft/client/OptionInstance; gamma ap method_42473 + m ()Lnet/minecraft/client/OptionInstance; guiScale aq method_42474 + m ()Lnet/minecraft/client/OptionInstance; particles ar method_42475 + m ()Lnet/minecraft/client/OptionInstance; narrator as method_42476 + m ()Lnet/minecraft/client/OptionInstance; soundDevice at method_42477 + m ()V onboardingAccessibilityFinished au method_61127 + m ()V load av method_1636 + c Loads the options from the options file. It appears that this has replaced the previous 'loadOptions' + m ()V save aw method_1640 + c Saves the options to the options file. + m ()Lnet/minecraft/server/level/ClientInformation; buildPlayerInformation ax method_53842 + m ()V broadcastOptions ay method_1643 + c Send a client info packet with settings information to the server + m ()Lnet/minecraft/client/CloudStatus; getCloudsType az method_1632 + m ()Lnet/minecraft/client/OptionInstance; hideLightningFlash b method_41784 + m (F)I getBackgroundColor b method_19345 + p 1 opacity + m (I)V setServerRenderDistance b method_38520 + p 1 serverRenderDistance + m (Lnet/minecraft/server/packs/repository/PackRepository;)V loadSelectedResourcePacks b method_1627 + p 1 resourcePackList + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; getSoundSourceOptionInstance b method_45578 + p 1 soundSource + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Z)V setModelPart b method_1635 + p 1 modelPart + p 2 enable + m (Lnet/minecraft/client/GraphicsStatus;)Z method_42486 b method_42486 + m (Lnet/minecraft/client/PrioritizeChunkUpdates;)Lnet/minecraft/client/gui/components/Tooltip; method_47396 b method_47396 + m (Ljava/lang/Boolean;)V method_42466 b method_42466 + m (Ljava/lang/Double;)V method_48975 b method_48975 + m (Ljava/lang/Integer;)V method_42502 b method_42502 + m (Ljava/lang/String;)Z isFalse b method_32596 + p 0 value + m (Lnet/minecraft/network/chat/Component;D)Lnet/minecraft/network/chat/Component; percentValueOrOffLabel b method_59835 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; genericValueOrOffLabel b method_60648 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42491 b method_42491 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41788 b method_41788 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42508 b method_42508 + m ()Lnet/minecraft/client/OptionInstance; hideSplashTexts c method_54581 + m (I)D logMouse c method_41793 + p 0 input + m (Lnet/minecraft/client/GraphicsStatus;)Lnet/minecraft/client/gui/components/Tooltip; method_47397 c method_47397 + m (Ljava/lang/Boolean;)V method_42520 c method_42520 + m (Ljava/lang/Double;)V method_48582 c method_48582 + m (Ljava/lang/Integer;)V method_42515 c method_42515 + m (Ljava/lang/String;)Ljava/util/List; readListOfStrings c method_33671 + p 0 json + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/network/chat/Component; pixelValueLabel c method_41791 + p 0 text + p 1 value + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42506 c method_42506 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_48189 c method_48189 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42522 c method_42522 + m ()Lnet/minecraft/client/OptionInstance; sensitivity d method_42495 + m (I)Ljava/lang/Double; method_48187 d method_48187 + m (Ljava/lang/Boolean;)V method_42513 d method_42513 + m (Ljava/lang/Double;)V method_42501 d method_42501 + m (Ljava/lang/Integer;)V method_41779 d method_41779 + m (Ljava/lang/String;)V method_42509 d method_42509 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_42525 d method_42525 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42548 d method_42548 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_41789 d method_41789 + m ()Lnet/minecraft/client/OptionInstance; renderDistance e method_42503 + m (I)Ljava/lang/Double; method_42504 e method_42504 + m (Ljava/lang/Boolean;)V method_42500 e method_42500 + m (Ljava/lang/Double;)V method_42514 e method_42514 + m (Ljava/lang/Integer;)Ljava/lang/Double; method_42532 e method_42532 + m (Ljava/lang/String;)Ljava/util/Optional; method_42516 e method_42516 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41799 e method_41799 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_41800 e method_41800 + m ()Lnet/minecraft/client/OptionInstance; simulationDistance f method_42510 + m (I)Ljava/lang/Integer; method_42511 f method_42511 + m (Ljava/lang/Boolean;)V method_42530 f method_42530 + m (Ljava/lang/Double;)V method_42526 f method_42526 + m (Ljava/lang/Integer;)V method_41797 f method_41797 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_41804 f method_41804 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42545 f method_42545 + m ()Lnet/minecraft/client/OptionInstance; entityDistanceScaling g method_42517 + m (I)Ljava/lang/Double; method_42518 g method_42518 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_47398 g method_47398 + m (Ljava/lang/Double;)Ljava/lang/Integer; method_42536 g method_42536 + m (Ljava/lang/Integer;)V method_42541 g method_42541 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42560 g method_42560 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_42559 g method_42559 + m ()Lnet/minecraft/client/OptionInstance; framerateLimit h method_42524 + m (Ljava/lang/Boolean;)V method_42535 h method_42535 + m (Ljava/lang/Double;)V method_41778 h method_41778 + m (Ljava/lang/Integer;)V method_57704 h method_57704 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42564 h method_42564 + m ()Lnet/minecraft/client/OptionInstance; cloudStatus i method_42528 + m (Ljava/lang/Boolean;)V method_57022 i method_57022 + m (Ljava/lang/Double;)V method_48188 i method_48188 + m (Ljava/lang/Integer;)V method_42555 i method_42555 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42432 i method_42432 + m ()Lnet/minecraft/client/OptionInstance; graphicsMode j method_42534 + m (Ljava/lang/Boolean;)V method_42537 j method_42537 + m (Ljava/lang/Double;)I method_48190 j method_48190 + m (Ljava/lang/Integer;)I method_42557 j method_42557 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Double;)Lnet/minecraft/network/chat/Component; method_42436 j method_42436 + m ()Lnet/minecraft/client/OptionInstance; ambientOcclusion k method_41792 + m (Ljava/lang/Boolean;)V method_42538 k method_42538 + m (Ljava/lang/Double;)V method_42540 k method_42540 + m ()Lnet/minecraft/client/OptionInstance; prioritizeChunkUpdates l method_41798 + m (Ljava/lang/Boolean;)V method_41777 l method_41777 + m (Ljava/lang/Double;)I method_42544 l method_42544 + m ()Lnet/minecraft/client/OptionInstance; chatVisibility m method_42539 + m (Ljava/lang/Boolean;)V method_49599 m method_49599 + m (Ljava/lang/Double;)V method_41796 m method_41796 + m ()Lnet/minecraft/client/OptionInstance; chatOpacity n method_42542 + m (Ljava/lang/Boolean;)V method_47999 n method_47999 + m (Ljava/lang/Double;)V method_41802 n method_41802 + m ()Lnet/minecraft/client/OptionInstance; chatLineSpacing o method_42546 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/CloudStatus; method_52704 o method_52704 + m (Ljava/lang/Double;)V method_42558 o method_42558 + m ()Lnet/minecraft/client/OptionInstance; menuBackgroundBlurriness p method_57702 + m (Ljava/lang/Double;)V method_42562 p method_42562 + m ()I getMenuBackgroundBlurriness q method_57703 + m (Ljava/lang/Double;)V method_45580 q method_45580 + m ()Lnet/minecraft/client/OptionInstance; textBackgroundOpacity r method_42550 + m (Ljava/lang/Double;)V method_42566 r method_42566 + m ()Lnet/minecraft/client/OptionInstance; panoramaSpeed s method_45581 + m (Ljava/lang/Double;)V method_42568 s method_42568 + m ()Lnet/minecraft/client/OptionInstance; highContrast t method_49600 + m (Ljava/lang/Double;)V method_42424 t method_42424 + m ()Lnet/minecraft/client/OptionInstance; narratorHotkey u method_53530 + m (Ljava/lang/Double;)V method_42428 u method_42428 + m ()Lnet/minecraft/client/OptionInstance; mainHand v method_42552 + m (Ljava/lang/Double;)I method_42430 v method_42430 + m ()Lnet/minecraft/client/OptionInstance; chatScale w method_42554 + m (Ljava/lang/Double;)V method_42434 w method_42434 + m ()Lnet/minecraft/client/OptionInstance; chatWidth x method_42556 + m ()Lnet/minecraft/client/OptionInstance; chatHeightUnfocused y method_41801 + m ()Lnet/minecraft/client/OptionInstance; chatHeightFocused z method_41803 + m (Lnet/minecraft/client/Minecraft;Ljava/io/File;)V + p 1 minecraft + p 2 gameDirectory + m ()V +c net/minecraft/client/Options$1 fgs$1 net/minecraft/class_315$1 + m ()V +c net/minecraft/client/Options$2 fgs$2 net/minecraft/class_315$2 + f Lnet/minecraft/nbt/CompoundTag; val$options a field_28778 + m (Ljava/lang/String;)Ljava/lang/String; getValueOrNull a method_33676 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance;Lcom/mojang/serialization/DataResult$Error;)V method_42571 a method_42571 + m (Lnet/minecraft/client/Options;Lnet/minecraft/nbt/CompoundTag;)V +c net/minecraft/client/Options$3 fgs$3 net/minecraft/class_315$3 + f Ljava/io/PrintWriter; val$writer a field_28780 + m (Lnet/minecraft/client/OptionInstance;Lcom/mojang/serialization/DataResult$Error;)V method_42572 a method_42572 + m (Ljava/lang/String;)V writePrefix a method_33677 + p 1 prefix + m (Ljava/lang/String;Ljava/io/PrintWriter;Lcom/google/gson/JsonElement;)V method_42573 a method_42573 + m (Lnet/minecraft/client/Options;Ljava/io/PrintWriter;)V +c net/minecraft/client/Options$4 fgs$4 net/minecraft/class_315$4 + f Ljava/util/List; val$optionsForReport a field_49106 + m (Lnet/minecraft/client/Options;Ljava/util/List;)V +c net/minecraft/client/Options$5 fgs$5 net/minecraft/class_315$5 + f [I $SwitchMap$net$minecraft$client$PrioritizeChunkUpdates a field_37883 + f [I $SwitchMap$net$minecraft$client$GraphicsStatus b field_38301 + m ()V +c net/minecraft/client/Options$FieldAccess fgs$a net/minecraft/class_315$class_5823 + m (Ljava/lang/String;F)F process a method_33679 + p 1 name + p 2 value + m (Ljava/lang/String;I)I process a method_33680 + p 1 name + p 2 value + m (Ljava/lang/String;Ljava/lang/Object;Ljava/util/function/Function;Ljava/util/function/Function;)Ljava/lang/Object; process a method_33681 + p 1 name + p 2 value + p 3 stringValuefier + p 4 valueStringifier + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; process a method_33683 + p 1 name + p 2 value + m (Ljava/lang/String;Z)Z process a method_33684 + p 1 name + p 2 value +c net/minecraft/client/Options$OptionAccess fgs$b net/minecraft/class_315$class_9242 + m (Ljava/lang/String;Lnet/minecraft/client/OptionInstance;)V process a method_42570 + p 1 name + p 2 value +c net/minecraft/client/ParticleStatus fgt net/minecraft/class_4066 + f Lnet/minecraft/client/ParticleStatus; ALL a field_18197 + f Lnet/minecraft/client/ParticleStatus; DECREASED b field_18198 + f Lnet/minecraft/client/ParticleStatus; MINIMAL c field_18199 + f Ljava/util/function/IntFunction; BY_ID d field_18200 + f I id e field_18201 + f Ljava/lang/String; key f field_18202 + f [Lnet/minecraft/client/ParticleStatus; $VALUES g field_18203 + m (I)Lnet/minecraft/client/ParticleStatus; byId a method_18608 + p 0 id + m ()[Lnet/minecraft/client/ParticleStatus; $values c method_36865 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/PeriodicNotificationManager fgu net/minecraft/class_6877 + f Lcom/mojang/serialization/Codec; CODEC a field_36435 + f Lorg/slf4j/Logger; LOGGER b field_36436 + f Lnet/minecraft/resources/ResourceLocation; notifications c field_36437 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction; selector d field_36438 + f Ljava/util/Timer; timer e field_36439 + f Lnet/minecraft/client/PeriodicNotificationManager$NotificationTask; notificationTask f field_36440 + m ()V stopTimer a method_40190 + m (JLnet/minecraft/client/PeriodicNotificationManager$Notification;)J method_40191 a method_40191 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/Map; prepare a method_40192 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_40193 a method_40193 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;)J method_40194 a method_40194 + m (Ljava/util/List;)J calculateInitialDelay a method_40195 + p 1 notifications + m (Ljava/util/List;J)J calculateOptimalPeriod a method_40196 + p 1 notifications + p 2 delay + m (Ljava/util/Map$Entry;)Z method_40197 a method_40197 + m (Ljava/util/Map;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_40198 + p 1 object + p 2 resourceManager + p 3 profiler + m ()Ljava/lang/IllegalStateException; method_40199 b method_40199 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;)Z method_40200 b method_40200 + m (Lnet/minecraft/resources/ResourceLocation;Lit/unimi/dsi/fastutil/objects/Object2BooleanFunction;)V + p 1 notifications + p 2 selector + m ()V +c net/minecraft/client/PeriodicNotificationManager$Notification fgu$a net/minecraft/class_6877$class_6878 + f J delay a comp_345 + f J period b comp_346 + f Ljava/lang/String; title c comp_347 + f Ljava/lang/String; message d comp_348 + m ()J delay a comp_345 + m ()J period b comp_346 + m ()Ljava/lang/String; title c comp_347 + m ()Ljava/lang/String; message d comp_348 + m (JJLjava/lang/String;Ljava/lang/String;)V + p 1 delay + p 3 period + p 5 title + p 6 message +c net/minecraft/client/PeriodicNotificationManager$NotificationTask fgu$b net/minecraft/class_6877$class_6879 + f Lnet/minecraft/client/Minecraft; minecraft a field_36441 + f Ljava/util/List; notifications b field_36442 + f J period c field_36443 + f Ljava/util/concurrent/atomic/AtomicLong; elapsed d field_36444 + m (Lnet/minecraft/client/PeriodicNotificationManager$Notification;J)V method_40201 a method_40201 + m (Ljava/util/List;J)Lnet/minecraft/client/PeriodicNotificationManager$NotificationTask; reset a method_40202 + p 1 notifications + p 2 period + m (Ljava/util/List;JJ)V + p 1 notifications + p 2 elapsed + p 4 period +c net/minecraft/client/PrioritizeChunkUpdates fgv net/minecraft/class_6597 + f Lnet/minecraft/client/PrioritizeChunkUpdates; NONE a field_34788 + f Lnet/minecraft/client/PrioritizeChunkUpdates; PLAYER_AFFECTED b field_34789 + f Lnet/minecraft/client/PrioritizeChunkUpdates; NEARBY c field_34790 + f Ljava/util/function/IntFunction; BY_ID d field_34791 + f I id e field_34792 + f Ljava/lang/String; key f field_34793 + f [Lnet/minecraft/client/PrioritizeChunkUpdates; $VALUES g field_34794 + m (I)Lnet/minecraft/client/PrioritizeChunkUpdates; byId a method_38523 + p 0 id + m ()[Lnet/minecraft/client/PrioritizeChunkUpdates; $values c method_38526 + m (Ljava/lang/String;IILjava/lang/String;)V + p 3 id + p 4 key + m ()V +c net/minecraft/client/RecipeBookCategories fgw net/minecraft/class_314 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_SEARCH a field_1809 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_BUILDING_BLOCKS b field_1806 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_REDSTONE c field_1803 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_EQUIPMENT d field_1813 + f Lnet/minecraft/client/RecipeBookCategories; CRAFTING_MISC e field_1810 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_SEARCH f field_1804 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_FOOD g field_1808 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_BLOCKS h field_1811 + f Lnet/minecraft/client/RecipeBookCategories; FURNACE_MISC i field_1812 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_SEARCH j field_17110 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_BLOCKS k field_17111 + f Lnet/minecraft/client/RecipeBookCategories; BLAST_FURNACE_MISC l field_17112 + f Lnet/minecraft/client/RecipeBookCategories; SMOKER_SEARCH m field_17113 + f Lnet/minecraft/client/RecipeBookCategories; SMOKER_FOOD n field_17114 + f Lnet/minecraft/client/RecipeBookCategories; STONECUTTER o field_17764 + f Lnet/minecraft/client/RecipeBookCategories; SMITHING p field_25624 + f Lnet/minecraft/client/RecipeBookCategories; CAMPFIRE q field_17765 + f Lnet/minecraft/client/RecipeBookCategories; UNKNOWN r field_25625 + f Ljava/util/List; SMOKER_CATEGORIES s field_25779 + f Ljava/util/List; BLAST_FURNACE_CATEGORIES t field_25780 + f Ljava/util/List; FURNACE_CATEGORIES u field_25781 + f Ljava/util/List; CRAFTING_CATEGORIES v field_25782 + f Ljava/util/Map; AGGREGATE_CATEGORIES w field_25783 + f Ljava/util/List; itemIcons x field_1807 + f [Lnet/minecraft/client/RecipeBookCategories; $VALUES y field_1805 + m ()Ljava/util/List; getIconItems a method_1623 + m (Lnet/minecraft/world/inventory/RecipeBookType;)Ljava/util/List; getCategories a method_30285 + p 0 recipeBookType + m ()[Lnet/minecraft/client/RecipeBookCategories; $values b method_36866 + m (Ljava/lang/String;I[Lnet/minecraft/world/item/ItemStack;)V + p 3 itemIcons + m ()V +c net/minecraft/client/RecipeBookCategories$1 fgw$1 net/minecraft/class_314$1 + f [I $SwitchMap$net$minecraft$world$inventory$RecipeBookType a field_25784 + m ()V +c net/minecraft/client/ResourceLoadStateTracker fgx net/minecraft/class_6360 + f Lorg/slf4j/Logger; LOGGER a field_33698 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadState; reloadState b field_33699 + f I reloadCount c field_33700 + m ()V finishReload a method_36562 + m (Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason;Ljava/util/List;)V startReload a method_36563 + p 1 reloadReason + p 2 packs + m (Ljava/lang/Throwable;)V startRecovery a method_36564 + p 1 error + m (Lnet/minecraft/CrashReport;)V fillCrashReport a method_36565 + p 1 report + m ()V + m ()V +c net/minecraft/client/ResourceLoadStateTracker$RecoveryInfo fgx$a net/minecraft/class_6360$class_6361 + f Ljava/lang/Throwable; error a field_33701 + m ()Ljava/lang/String; method_36566 a method_36566 + m (Lnet/minecraft/CrashReportCategory;)V fillCrashInfo a method_36567 + p 1 crash + m (Ljava/lang/Throwable;)V + p 1 error +c net/minecraft/client/ResourceLoadStateTracker$ReloadReason fgx$b net/minecraft/class_6360$class_6362 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; INITIAL a field_33702 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; MANUAL b field_33703 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; UNKNOWN c field_33704 + f Ljava/lang/String; name d field_33705 + f [Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; $VALUES e field_33706 + m ()[Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; $values a method_36867 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/ResourceLoadStateTracker$ReloadState fgx$c net/minecraft/class_6360$class_6363 + f Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason; reloadReason a field_33707 + f Ljava/util/List; packs b field_33708 + f Lnet/minecraft/client/ResourceLoadStateTracker$RecoveryInfo; recoveryReloadInfo c field_33709 + f Z finished d field_33710 + m ()Ljava/lang/String; method_36569 a method_36569 + m (Lnet/minecraft/CrashReportCategory;)V fillCrashInfo a method_36573 + p 1 crash + m (Lnet/minecraft/client/ResourceLoadStateTracker$ReloadReason;Ljava/util/List;)V + p 1 reloadReason + p 2 packs +c net/minecraft/client/Screenshot fgy net/minecraft/class_318 + f Ljava/lang/String; SCREENSHOT_DIR a field_41337 + f Lorg/slf4j/Logger; LOGGER b field_1974 + f I rowHeight c field_32157 + f Ljava/io/DataOutputStream; outputStream d field_32158 + f [B bytes e field_32159 + f I width f field_32160 + f I height g field_32161 + f Ljava/io/File; file h field_32162 + m ()V saveRow a method_35710 + m (Lcom/mojang/blaze3d/pipeline/RenderTarget;)Lcom/mojang/blaze3d/platform/NativeImage; takeScreenshot a method_1663 + p 0 framebuffer + m (Lcom/mojang/blaze3d/platform/NativeImage;Ljava/io/File;Ljava/util/function/Consumer;)V method_1661 a method_1661 + m (Ljava/io/File;)Ljava/io/File; getFile a method_1660 + c Creates a unique PNG file in the given directory named by a timestamp. Handles cases where the timestamp alone is not enough to create a uniquely named file, though it still might suffer from an unlikely race condition where the filename was unique when this method was called, but another process or thread created a file at the same path immediately after this method returned. + p 0 gameDirectory + m (Ljava/io/File;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V grab a method_1659 + c Saves a screenshot in the game directory with a time-stamped filename. + p 0 gameDirectory + p 1 buffer + p 2 messageConsumer + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V grab a method_22690 + c Saves a screenshot in the game directory with the given file name (or null to generate a time-stamped name). + p 0 gameDirectory + p 1 screenshotName + p 2 buffer + p 3 messageConsumer + m (Ljava/io/File;Lnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/Style; method_1664 a method_1664 + m (Ljava/nio/ByteBuffer;IIII)V addRegion a method_35711 + p 1 buffer + p 2 width + p 3 height + p 4 rowWidth + p 5 rowHeight + m ()Ljava/io/File; close b method_35712 + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V _grab b method_1662 + p 0 gameDirectory + p 1 screenshotName + p 2 buffer + p 3 messageConsumer + m (Ljava/io/File;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Ljava/util/function/Consumer;)V method_22691 c method_22691 + m (Ljava/io/File;III)V + p 1 gameDirectory + p 2 width + p 3 height + p 4 rowHeight + m ()V +c net/minecraft/client/StringSplitter fgz net/minecraft/class_5225 + f Lnet/minecraft/client/StringSplitter$WidthProvider; widthProvider a field_24216 + m (Lnet/minecraft/util/FormattedCharSequence;)F stringWidth a method_30875 + p 1 content + m (Lnet/minecraft/util/FormattedCharSequence;I)Lnet/minecraft/network/chat/Style; componentStyleAtWidth a method_30876 + p 1 content + p 2 maxWidth + m (Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;Lorg/apache/commons/lang3/mutable/MutableObject;ILnet/minecraft/network/chat/Style;I)Z method_30877 a method_30877 + m (Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27480 a method_27480 + m (Ljava/lang/String;)F stringWidth a method_27482 + p 1 content + m (Ljava/lang/String;IIZ)I getWordPosition a method_27483 + p 0 content + p 1 skipCount + p 2 cursorPoint + p 3 includeWhitespace + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I plainIndexAtWidth a method_27484 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;ZLnet/minecraft/client/StringSplitter$LinePosConsumer;)V splitLines a method_27485 + p 1 content + p 2 maxWidth + p 3 style + p 4 withNewLines + p 5 linePos + m (Ljava/util/List;Ljava/lang/String;Lnet/minecraft/network/chat/Style;II)V method_27486 a method_27486 + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_30878 a method_30878 + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_35713 a method_35713 + m (Ljava/util/List;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27487 a method_27487 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILorg/apache/commons/lang3/mutable/MutableInt;ILnet/minecraft/network/chat/Style;I)Z method_27493 a method_27493 + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_30879 a method_30879 + m (Lnet/minecraft/network/chat/FormattedText;)F stringWidth a method_27488 + p 1 content + m (Lnet/minecraft/network/chat/FormattedText;I)Lnet/minecraft/network/chat/Style; componentStyleAtWidth a method_27489 + p 1 content + p 2 maxWidth + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; headByWidth a method_27490 + p 1 content + p 2 maxWidth + p 3 style + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;Ljava/util/function/BiConsumer;)V splitLines a method_29971 + p 1 content + p 2 maxWidth + p 3 style + p 4 splitifier + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;Lnet/minecraft/network/chat/FormattedText;)Ljava/util/List; splitLines a method_35714 + p 1 content + p 2 maxWidth + p 3 style + p 4 prefix + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; plainHeadByWidth b method_27494 + p 1 content + p 2 maxWidth + p 3 style + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_27492 b method_27492 + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/network/chat/Style;)Ljava/util/List; splitLines b method_27495 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; plainTailByWidth c method_27497 + p 1 content + p 2 maxWidth + p 3 style + m (Lorg/apache/commons/lang3/mutable/MutableFloat;ILnet/minecraft/network/chat/Style;I)Z method_27496 c method_27496 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I formattedIndexByWidth d method_35715 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/lang/String; formattedHeadByWidth e method_35716 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)I findLineBreak f method_35717 + p 1 content + p 2 maxWidth + p 3 style + m (Ljava/lang/String;ILnet/minecraft/network/chat/Style;)Ljava/util/List; splitLines g method_27498 + p 1 content + p 2 maxWidth + p 3 style + m (Lnet/minecraft/client/StringSplitter$WidthProvider;)V + p 1 widthProvider +c net/minecraft/client/StringSplitter$1 fgz$1 net/minecraft/class_5225$1 + f Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink; val$output a field_24217 + f Lnet/minecraft/client/ComponentCollector; collector b field_24219 + m (Lnet/minecraft/client/StringSplitter;Lnet/minecraft/client/StringSplitter$WidthLimitedCharSink;)V +c net/minecraft/client/StringSplitter$FlatComponents fgz$a net/minecraft/class_5225$class_5226 + f Ljava/util/List; parts a field_24220 + f Ljava/lang/String; flatParts b field_24221 + m ()Lnet/minecraft/network/chat/FormattedText; getRemainder a method_27499 + m (I)C charAt a method_27500 + p 1 codePoint + m (IILnet/minecraft/network/chat/Style;)Lnet/minecraft/network/chat/FormattedText; splitAt a method_27501 + p 1 begin + p 2 end + p 3 style + m (Lnet/minecraft/client/StringSplitter$LineComponent;)Ljava/lang/String; method_27504 a method_27504 + m (Ljava/util/List;)V + p 1 parts +c net/minecraft/client/StringSplitter$LineBreakFinder fgz$b net/minecraft/class_5225$class_5227 + f Lnet/minecraft/client/StringSplitter; field_24222 a field_24222 + f F maxWidth b field_24223 + f I lineBreak c field_24224 + f Lnet/minecraft/network/chat/Style; lineBreakStyle d field_24225 + f Z hadNonZeroWidthChar e field_24226 + f F width f field_24227 + f I lastSpace g field_24228 + f Lnet/minecraft/network/chat/Style; lastSpaceStyle h field_24229 + f I nextChar i field_24230 + f I offset j field_24231 + m ()I getSplitPosition a method_27505 + m (I)V addToOffset a method_27506 + p 1 offset + m (ILnet/minecraft/network/chat/Style;)Z finishIteration a method_27507 + p 1 lineBreak + p 2 lineBreakStyle + m ()Lnet/minecraft/network/chat/Style; getSplitStyle b method_27508 + m ()Z lineBreakFound c method_27509 + m (Lnet/minecraft/client/StringSplitter;F)V + p 2 maxWidth +c net/minecraft/client/StringSplitter$LineComponent fgz$c net/minecraft/class_5225$class_5345 + f Ljava/lang/String; contents c field_25261 + f Lnet/minecraft/network/chat/Style; style d field_25262 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Style;)V + p 1 contents + p 2 style +c net/minecraft/client/StringSplitter$LinePosConsumer fgz$d net/minecraft/class_5225$class_5229 +c net/minecraft/client/StringSplitter$WidthLimitedCharSink fgz$e net/minecraft/class_5225$class_5230 + f Lnet/minecraft/client/StringSplitter; field_24234 a field_24234 + f F maxWidth b field_24235 + f I position c field_24236 + m ()I getPosition a method_27513 + m ()V resetPosition b method_27514 + m (Lnet/minecraft/client/StringSplitter;F)V + p 2 maxWidth +c net/minecraft/client/StringSplitter$WidthProvider fgz$f net/minecraft/class_5225$class_5231 +c net/minecraft/client/ToggleKeyMapping fha net/minecraft/class_4666 + f Ljava/util/function/BooleanSupplier; needsToggle h field_21334 + m ()V reset n method_52232 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/BooleanSupplier;)V + p 1 name + p 2 keyCode + p 3 category + p 4 needsToggle +c net/minecraft/client/User fhb net/minecraft/class_320 + f Ljava/lang/String; name a field_1982 + f Ljava/util/UUID; uuid b field_1985 + f Ljava/lang/String; accessToken c field_1983 + f Ljava/util/Optional; xuid d field_34960 + f Ljava/util/Optional; clientId e field_34961 + f Lnet/minecraft/client/User$Type; type f field_1984 + m ()Ljava/lang/String; getSessionId a method_1675 + m ()Ljava/util/UUID; getProfileId b method_44717 + m ()Ljava/lang/String; getName c method_1676 + m ()Ljava/lang/String; getAccessToken d method_1674 + m ()Ljava/util/Optional; getClientId e method_38740 + m ()Ljava/util/Optional; getXuid f method_38741 + m ()Lnet/minecraft/client/User$Type; getType g method_35718 + m (Ljava/lang/String;Ljava/util/UUID;Ljava/lang/String;Ljava/util/Optional;Ljava/util/Optional;Lnet/minecraft/client/User$Type;)V + p 1 name + p 2 uuid + p 3 accessToken + p 4 xuid + p 5 clientId + p 6 type +c net/minecraft/client/User$Type fhb$a net/minecraft/class_320$class_321 + f Lnet/minecraft/client/User$Type; LEGACY a field_1990 + f Lnet/minecraft/client/User$Type; MOJANG b field_1988 + f Lnet/minecraft/client/User$Type; MSA c field_34962 + f Ljava/util/Map; BY_NAME d field_1989 + f Ljava/lang/String; name e field_1986 + f [Lnet/minecraft/client/User$Type; $VALUES f field_1987 + m ()Ljava/lang/String; getName a method_38742 + m (Lnet/minecraft/client/User$Type;)Ljava/lang/String; method_1678 a method_1678 + m (Ljava/lang/String;)Lnet/minecraft/client/User$Type; byName a method_1679 + p 0 typeName + m ()[Lnet/minecraft/client/User$Type; $values b method_36868 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/animation/AnimationChannel fhc net/minecraft/class_7179 + f Lnet/minecraft/client/animation/AnimationChannel$Target; target a comp_595 + f [Lnet/minecraft/client/animation/Keyframe; keyframes b comp_596 + m ()Lnet/minecraft/client/animation/AnimationChannel$Target; target a comp_595 + m ()[Lnet/minecraft/client/animation/Keyframe; keyframes b comp_596 + m (Lnet/minecraft/client/animation/AnimationChannel$Target;[Lnet/minecraft/client/animation/Keyframe;)V +c net/minecraft/client/animation/AnimationChannel$Interpolation fhc$a net/minecraft/class_7179$class_7180 +c net/minecraft/client/animation/AnimationChannel$Interpolations fhc$b net/minecraft/class_7179$class_7181 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; LINEAR a field_37884 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; CATMULLROM b field_37885 + m (Lorg/joml/Vector3f;F[Lnet/minecraft/client/animation/Keyframe;IIF)Lorg/joml/Vector3f; method_41815 a method_41815 + m (Lorg/joml/Vector3f;F[Lnet/minecraft/client/animation/Keyframe;IIF)Lorg/joml/Vector3f; method_41816 b method_41816 + m ()V + m ()V +c net/minecraft/client/animation/AnimationChannel$Target fhc$c net/minecraft/class_7179$class_7182 +c net/minecraft/client/animation/AnimationChannel$Targets fhc$d net/minecraft/class_7179$class_7183 + f Lnet/minecraft/client/animation/AnimationChannel$Target; POSITION a field_37886 + f Lnet/minecraft/client/animation/AnimationChannel$Target; ROTATION b field_37887 + f Lnet/minecraft/client/animation/AnimationChannel$Target; SCALE c field_37888 + m ()V + m ()V +c net/minecraft/client/animation/AnimationDefinition fhd net/minecraft/class_7184 + f F lengthInSeconds a comp_597 + f Z looping b comp_598 + f Ljava/util/Map; boneAnimations c comp_599 + m ()F lengthInSeconds a comp_597 + m ()Z looping b comp_598 + m ()Ljava/util/Map; boneAnimations c comp_599 + m (FZLjava/util/Map;)V +c net/minecraft/client/animation/AnimationDefinition$Builder fhd$a net/minecraft/class_7184$class_7185 + f F length a field_37889 + f Ljava/util/Map; animationByBone b field_37890 + f Z looping c field_37891 + m ()Lnet/minecraft/client/animation/AnimationDefinition$Builder; looping a method_41817 + m (F)Lnet/minecraft/client/animation/AnimationDefinition$Builder; withLength a method_41818 + p 0 lengthInSeconds + m (Ljava/lang/String;)Ljava/util/List; method_41819 a method_41819 + m (Ljava/lang/String;Lnet/minecraft/client/animation/AnimationChannel;)Lnet/minecraft/client/animation/AnimationDefinition$Builder; addAnimation a method_41820 + p 1 bone + p 2 animationChannel + m ()Lnet/minecraft/client/animation/AnimationDefinition; build b method_41821 + m (F)V + p 1 lengthInSeconds +c net/minecraft/client/animation/Keyframe fhe net/minecraft/class_7186 + f F timestamp a comp_600 + f Lorg/joml/Vector3f; target b comp_601 + f Lnet/minecraft/client/animation/AnimationChannel$Interpolation; interpolation c comp_602 + m ()F timestamp a comp_600 + m ()Lorg/joml/Vector3f; target b comp_601 + m ()Lnet/minecraft/client/animation/AnimationChannel$Interpolation; interpolation c comp_602 + m (FLorg/joml/Vector3f;Lnet/minecraft/client/animation/AnimationChannel$Interpolation;)V +c net/minecraft/client/animation/KeyframeAnimations fhf net/minecraft/class_7187 + m (DDD)Lorg/joml/Vector3f; scaleVec a method_41822 + p 0 xScale + p 2 yScale + p 4 zScale + m (FFF)Lorg/joml/Vector3f; posVec a method_41823 + p 0 x + p 1 y + p 2 z + m (FLorg/joml/Vector3f;FLnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/animation/AnimationChannel;)V method_41824 a method_41824 + m (F[Lnet/minecraft/client/animation/Keyframe;I)Z method_41825 a method_41825 + m (Lnet/minecraft/client/animation/AnimationDefinition;J)F getElapsedSeconds a method_41826 + p 0 animationDefinition + p 1 accumulatedTime + m (Lnet/minecraft/client/model/HierarchicalModel;Lnet/minecraft/client/animation/AnimationDefinition;JFLorg/joml/Vector3f;)V animate a method_41827 + p 0 model + p 1 animationDefinition + p 2 accumulatedTime + p 4 scale + p 5 animationVecCache + m (Ljava/util/List;FLorg/joml/Vector3f;FLnet/minecraft/client/model/geom/ModelPart;)V method_41828 a method_41828 + m (FFF)Lorg/joml/Vector3f; degreeVec b method_41829 + p 0 xDegrees + p 1 yDegrees + p 2 zDegrees + m ()V +c net/minecraft/client/animation/definitions/ArmadilloAnimation fhg net/minecraft/class_9079 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_ROLL_UP a field_49108 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_WALK b field_47844 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_PEEK c field_49109 + f Lnet/minecraft/client/animation/AnimationDefinition; ARMADILLO_ROLL_OUT d field_49110 + m ()V + m ()V +c net/minecraft/client/animation/definitions/BatAnimation fhh net/minecraft/class_8928 + f Lnet/minecraft/client/animation/AnimationDefinition; BAT_RESTING a field_47103 + f Lnet/minecraft/client/animation/AnimationDefinition; BAT_FLYING b field_47104 + m ()V + m ()V +c net/minecraft/client/animation/definitions/BreezeAnimation fhi net/minecraft/class_8972 + f Lnet/minecraft/client/animation/AnimationDefinition; SHOOT a field_47428 + f Lnet/minecraft/client/animation/AnimationDefinition; JUMP b field_47429 + f Lnet/minecraft/client/animation/AnimationDefinition; SLIDE c field_47430 + f Lnet/minecraft/client/animation/AnimationDefinition; SLIDE_BACK d field_47846 + m ()V + m ()V +c net/minecraft/client/animation/definitions/CamelAnimation fhj net/minecraft/class_7730 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_WALK a field_40384 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_SIT b field_40385 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_SIT_POSE c field_40749 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_STANDUP d field_40386 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_DASH e field_40387 + f Lnet/minecraft/client/animation/AnimationDefinition; CAMEL_IDLE f field_40388 + m ()V + m ()V +c net/minecraft/client/animation/definitions/FrogAnimation fhk net/minecraft/class_7188 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_CROAK a field_37892 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_WALK b field_37893 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_JUMP c field_37894 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_TONGUE d field_37895 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_SWIM e field_37896 + f Lnet/minecraft/client/animation/AnimationDefinition; FROG_IDLE_WATER f field_37897 + m ()V + m ()V +c net/minecraft/client/animation/definitions/SnifferAnimation fhl net/minecraft/class_8182 + f Lnet/minecraft/client/animation/AnimationDefinition; BABY_TRANSFORM a field_43406 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_SNIFFSNIFF b field_42866 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_LONGSNIFF c field_42867 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_WALK d field_42868 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_SNIFF_SEARCH e field_42869 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_DIG f field_42870 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_STAND_UP g field_42871 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_BABY_FALL h field_42872 + f Lnet/minecraft/client/animation/AnimationDefinition; SNIFFER_HAPPY i field_42873 + m ()V + m ()V +c net/minecraft/client/animation/definitions/WardenAnimation fhm net/minecraft/class_7278 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_EMERGE a field_38302 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_DIG b field_38303 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_ROAR c field_38304 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_SNIFF d field_38305 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_ATTACK e field_38306 + f Lnet/minecraft/client/animation/AnimationDefinition; WARDEN_SONIC_BOOM f field_38879 + m ()V + m ()V +c net/minecraft/client/animation/definitions/package-info fhn net/minecraft/class_7189 +c net/minecraft/client/animation/package-info fho net/minecraft/class_7190 +c net/minecraft/client/color/block/BlockColor fhp net/minecraft/class_322 +c net/minecraft/client/color/block/BlockColors fhq net/minecraft/class_324 + f I DEFAULT a field_32163 + f Lnet/minecraft/core/IdMapper; blockColors b field_1995 + f Ljava/util/Map; coloringStates c field_20271 + m ()Lnet/minecraft/client/color/block/BlockColors; createDefault a method_1689 + m (Lnet/minecraft/world/level/block/Block;)Ljava/util/Set; getColoringProperties a method_21592 + p 1 block + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I getColor a method_1697 + p 1 state + p 2 level + p 3 pos + p 4 tintIndex + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;)I getColor a method_1691 + p 1 state + p 2 level + p 3 pos + m (Lnet/minecraft/world/level/block/state/properties/Property;[Lnet/minecraft/world/level/block/Block;)V addColoringState a method_21593 + p 1 property + p 2 blocks + m (Lnet/minecraft/client/color/block/BlockColor;[Lnet/minecraft/world/level/block/Block;)V register a method_1690 + p 1 blockColor + p 2 blocks + m (Ljava/util/Set;[Lnet/minecraft/world/level/block/Block;)V addColoringStates a method_21594 + p 1 properties + p 2 blocks + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1684 b method_1684 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1696 c method_1696 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1698 d method_1698 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1685 e method_1685 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1688 f method_1688 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1694 g method_1694 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1692 h method_1692 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1687 i method_1687 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1695 j method_1695 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_49295 k method_49295 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1693 l method_1693 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;I)I method_1686 m method_1686 + m ()V +c net/minecraft/client/color/block/BlockTintCache fhr net/minecraft/class_4700 + f I MAX_CACHE_ENTRIES a field_32164 + f Ljava/lang/ThreadLocal; latestChunkOnThread b field_21519 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; cache c field_21520 + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; lock d field_21521 + f Ljava/util/function/ToIntFunction; source e field_34795 + m ()V invalidateAll a method_23768 + m (II)V invalidateForChunk a method_23769 + p 1 chunkX + p 2 chunkZ + m (Lnet/minecraft/core/BlockPos;)I getColor a method_23770 + p 1 pos + m (II)Lnet/minecraft/client/color/block/BlockTintCache$CacheData; findOrCreateChunkCache b method_23772 + p 1 chunkX + p 2 chunkZ + m (Ljava/util/function/ToIntFunction;)V + p 1 source +c net/minecraft/client/color/block/BlockTintCache$CacheData fhr$a net/minecraft/class_4700$class_6598 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectArrayMap; cache a field_34796 + f Ljava/util/concurrent/locks/ReentrantReadWriteLock; lock b field_34797 + f I BLOCKS_PER_LAYER c field_34798 + f Z invalidated d field_41610 + m ()Z isInvalidated a method_47894 + m (I)[I getLayer a method_38528 + p 1 height + m ()V invalidate b method_47895 + m (I)[I method_38529 b method_38529 + m ()[I allocateLayer c method_38527 + m ()V + m ()V +c net/minecraft/client/color/block/BlockTintCache$LatestCacheInfo fhr$b net/minecraft/class_4700$class_4701 + f I x a field_21522 + f I z b field_21523 + f Lnet/minecraft/client/color/block/BlockTintCache$CacheData; cache c field_21524 + m ()V +c net/minecraft/client/color/block/package-info fhs net/minecraft/class_6202 +c net/minecraft/client/color/item/ItemColor fht net/minecraft/class_326 +c net/minecraft/client/color/item/ItemColors fhu net/minecraft/class_325 + f I DEFAULT a field_32165 + f Lnet/minecraft/core/IdMapper; itemColors b field_1996 + m (Lnet/minecraft/world/item/ItemStack;I)I getColor a method_1704 + p 1 stack + p 2 tintIndex + m (Lnet/minecraft/world/item/SpawnEggItem;Lnet/minecraft/world/item/ItemStack;I)I method_1699 a method_1699 + m (Lnet/minecraft/client/color/block/BlockColors;)Lnet/minecraft/client/color/item/ItemColors; createDefault a method_1706 + p 0 colors + m (Lnet/minecraft/client/color/block/BlockColors;Lnet/minecraft/world/item/ItemStack;I)I method_1702 a method_1702 + m (Lnet/minecraft/client/color/item/ItemColor;[Lnet/minecraft/world/level/ItemLike;)V register a method_1708 + p 1 itemColor + p 2 items + m (Lnet/minecraft/world/item/ItemStack;I)I method_57705 b method_57705 + m (Lnet/minecraft/world/item/ItemStack;I)I method_43767 c method_43767 + m (Lnet/minecraft/world/item/ItemStack;I)I method_57706 d method_57706 + m (Lnet/minecraft/world/item/ItemStack;I)I method_57707 e method_57707 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1701 f method_1701 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1705 g method_1705 + m (Lnet/minecraft/world/item/ItemStack;I)I method_1707 h method_1707 + m ()V +c net/minecraft/client/color/item/package-info fhv net/minecraft/class_6203 +c net/minecraft/client/gui/ComponentPath fhw net/minecraft/class_8016 + c Represents a path of components in a user interface hierarchy.\n

\nIt provides methods to create and manipulate component paths. + m ()Lnet/minecraft/client/gui/components/events/GuiEventListener; component a comp_1188 + c {@return the {@code GuiEventListener} component associated with this component path} + m (Lnet/minecraft/client/gui/components/events/ContainerEventHandler;Lnet/minecraft/client/gui/ComponentPath;)Lnet/minecraft/client/gui/ComponentPath; path a method_48192 + c Creates a component path with the specified {@code ContainerEventHandler} component and an optional child path.\n

\n@return a new component path, or {@code null} if the child path is null + p 0 component + c the component associated with the path + p 1 childPath + c the child path associated with the component + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/ComponentPath; leaf a method_48193 + c Creates a leaf component path with the specified {@code GuiEventListener} component.\n

\n@return a new leaf component path. + p 0 component + c the component associated with the leaf path + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;[Lnet/minecraft/client/gui/components/events/ContainerEventHandler;)Lnet/minecraft/client/gui/ComponentPath; path a method_48194 + c Creates a new {@code ComponentPath} leaf node with the specified {@code GuiEventListener} component and an array of {@code ContainerEventHandler} ancestors.\n

\n@return a new component path + p 0 leafComponent + c the new 'Leaf' component associated with the path + p 1 ancestorComponents + c the array of ancestor components associated with the path, ordered in reverse ascending order towards root. + m (Z)V applyFocus a method_48195 + c Applies focus to or removes focus from the component associated with this component path. + p 1 focused + c {@code true} to apply focus, {@code false} to remove focus. +c net/minecraft/client/gui/ComponentPath$Leaf fhw$a net/minecraft/class_8016$class_8017 + c The {@code Leaf} class represents a leaf component path in the hierarchy. + f Lnet/minecraft/client/gui/components/events/GuiEventListener; component a comp_1188 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V +c net/minecraft/client/gui/ComponentPath$Path fhw$b net/minecraft/class_8016$class_8018 + c The {@code Path} class represents a non-leaf component path in the hierarchy. + f Lnet/minecraft/client/gui/components/events/ContainerEventHandler; component a comp_1189 + f Lnet/minecraft/client/gui/ComponentPath; childPath b comp_1190 + m ()Lnet/minecraft/client/gui/components/events/ContainerEventHandler; component b comp_1189 + c {@return the {@code GuiEventListener} component associated with this component path} + m ()Lnet/minecraft/client/gui/ComponentPath; childPath c comp_1190 + c {@return the child path associated with this path} + m (Lnet/minecraft/client/gui/components/events/ContainerEventHandler;Lnet/minecraft/client/gui/ComponentPath;)V + p 1 component + p 2 childPath +c net/minecraft/client/gui/Font fhx net/minecraft/class_327 + f I ALPHA_CUTOFF a field_35427 + f I lineHeight b field_2000 + f Lnet/minecraft/util/RandomSource; random c field_2001 + f F EFFECT_DEPTH d field_32166 + f Lorg/joml/Vector3f; SHADOW_OFFSET e field_24237 + f Ljava/util/function/Function; fonts f field_1997 + f Z filterFishyGlyphs g field_39925 + f Lnet/minecraft/client/StringSplitter; splitter h field_24238 + m ()Z isBidirectional a method_1726 + c Get bidiFlag that controls if the Unicode Bidirectional Algorithm should be run before rendering any string + m (I)I adjustColor a method_27515 + p 0 color + m (ILnet/minecraft/network/chat/Style;)F method_27516 a method_27516 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSet a method_27526 + p 1 fontLocation + m (Lnet/minecraft/util/FormattedCharSequence;)I width a method_30880 + p 1 text + m (Lnet/minecraft/util/FormattedCharSequence;FFIILorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;I)V drawInBatch8xOutline a method_37296 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 backgroundColor + p 6 matrix + p 7 bufferSource + p 8 packedLightCoords + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_22942 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/client/gui/Font$StringRenderOutput;[FIFIIILnet/minecraft/network/chat/Style;I)Z method_37297 a method_37297 + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph;ZZFFFLorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFI)V renderChar a method_1710 + p 1 glyph + p 2 bold + p 3 italic + p 4 boldOffset + p 5 x + p 6 y + p 7 matrix + p 8 buffer + p 9 red + p 10 green + p 11 blue + p 12 alpha + p 13 packedLight + m (Ljava/lang/String;)Ljava/lang/String; bidirectionalShaping a method_1721 + c Apply Unicode Bidirectional Algorithm to string and return a new possibly reordered string for visual rendering. + p 1 text + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_27521 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;IIZ)I drawInBatch a method_27522 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + p 11 bidirectional + m (Ljava/lang/String;I)Ljava/lang/String; plainSubstrByWidth a method_27523 + p 1 text + p 2 maxWidth + m (Ljava/lang/String;IZ)Ljava/lang/String; plainSubstrByWidth a method_27524 + p 1 text + p 2 maxWidth + p 3 tail + m (Lnet/minecraft/network/chat/Component;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInBatch a method_30882 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/network/chat/FormattedText;)I width a method_27525 + p 1 text + m (Lnet/minecraft/network/chat/FormattedText;I)Lnet/minecraft/network/chat/FormattedText; substrByWidth a method_1714 + p 1 text + p 2 maxWidth + m ()Lnet/minecraft/client/StringSplitter; getSplitter b method_27527 + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)I drawInternal b method_1723 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;)I width b method_1727 + c Returns the width of this string. Equivalent of FontMetrics.stringWidth(String s). + p 1 text + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)F renderText b method_1724 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Ljava/lang/String;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;IIZ)I drawInternal b method_27529 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + p 11 bidirectional + m (Ljava/lang/String;I)I wordWrapHeight b method_1713 + c Returns the height (in pixels) of the given string if it is wordwrapped to the given max width. + p 1 text + p 2 maxWidth + m (Lnet/minecraft/network/chat/FormattedText;I)I wordWrapHeight b method_44378 + p 1 text + p 2 maxWidth + m (Lnet/minecraft/util/FormattedCharSequence;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/gui/Font$DisplayMode;II)F renderText c method_27530 + p 1 text + p 2 x + p 3 y + p 4 color + p 5 dropShadow + p 6 matrix + p 7 buffer + p 8 displayMode + p 9 backgroundColor + p 10 packedLightCoords + m (Lnet/minecraft/network/chat/FormattedText;I)Ljava/util/List; split c method_1728 + p 1 text + p 2 maxWidth + m (Ljava/util/function/Function;Z)V + p 1 fonts + p 2 filterFishyGlyphs + m ()V +c net/minecraft/client/gui/Font$DisplayMode fhx$a net/minecraft/class_327$class_6415 + f Lnet/minecraft/client/gui/Font$DisplayMode; NORMAL a field_33993 + f Lnet/minecraft/client/gui/Font$DisplayMode; SEE_THROUGH b field_33994 + f Lnet/minecraft/client/gui/Font$DisplayMode; POLYGON_OFFSET c field_33995 + f [Lnet/minecraft/client/gui/Font$DisplayMode; $VALUES d field_33996 + m ()[Lnet/minecraft/client/gui/Font$DisplayMode; $values a method_37344 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/Font$StringRenderOutput fhx$b net/minecraft/class_327$class_5232 + f Lnet/minecraft/client/renderer/MultiBufferSource; bufferSource a field_24239 + f Lnet/minecraft/client/gui/Font; field_24240 b field_24240 + f Z dropShadow c field_24241 + f F dimFactor d field_24242 + f F r e field_24243 + f F g f field_24244 + f F b g field_24245 + f F a h field_24246 + f Lorg/joml/Matrix4f; pose i field_24247 + f Lnet/minecraft/client/gui/Font$DisplayMode; mode j field_33997 + f I packedLightCoords k field_24249 + f F x l field_24250 + f F y m field_24251 + f Ljava/util/List; effects n field_24252 + m (IF)F finish a method_27531 + p 1 backgroundColor + p 2 x + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph$Effect;)V addEffect a method_27532 + p 1 effect + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/renderer/MultiBufferSource;FFIZLorg/joml/Matrix4f;Lnet/minecraft/client/gui/Font$DisplayMode;I)V + p 2 bufferSource + p 3 x + p 4 y + p 5 color + p 6 dropShadow + p 7 pose + p 8 mode + p 9 packedLightCoords +c net/minecraft/client/gui/Gui fhy net/minecraft/class_329 + f Lnet/minecraft/resources/ResourceLocation; FOOD_FULL_SPRITE A field_45298 + f Lnet/minecraft/resources/ResourceLocation; AIR_SPRITE B field_45299 + f Lnet/minecraft/resources/ResourceLocation; AIR_BURSTING_SPRITE C field_45300 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_CONTAINER_SPRITE D field_45301 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_FULL_SPRITE E field_45302 + f Lnet/minecraft/resources/ResourceLocation; HEART_VEHICLE_HALF_SPRITE F field_45303 + f Lnet/minecraft/resources/ResourceLocation; VIGNETTE_LOCATION G field_2020 + f Lnet/minecraft/resources/ResourceLocation; PUMPKIN_BLUR_LOCATION H field_2019 + f Lnet/minecraft/resources/ResourceLocation; SPYGLASS_SCOPE_LOCATION I field_27389 + f Lnet/minecraft/resources/ResourceLocation; POWDER_SNOW_OUTLINE_LOCATION J field_27960 + f Ljava/util/Comparator; SCORE_DISPLAY_ORDER K field_47550 + f Lnet/minecraft/network/chat/Component; DEMO_EXPIRED_TEXT L field_26527 + f Lnet/minecraft/network/chat/Component; SAVING_TEXT M field_35430 + f F MIN_CROSSHAIR_ATTACK_SPEED N field_32168 + f I NUM_HEARTS_PER_ROW O field_32169 + f I LINE_HEIGHT P field_32170 + f Ljava/lang/String; SPACER Q field_32171 + f F PORTAL_OVERLAY_ALPHA_MIN R field_32172 + f I HEART_SIZE S field_33942 + f I HEART_SEPARATION T field_33943 + f F AUTOSAVE_FADE_SPEED_FACTOR U field_35431 + f Lnet/minecraft/util/RandomSource; random V field_2034 + f Lnet/minecraft/client/Minecraft; minecraft W field_2035 + f Lnet/minecraft/client/gui/components/ChatComponent; chat X field_2021 + f I tickCount Y field_2042 + f Lnet/minecraft/network/chat/Component; overlayMessageString Z field_2018 + f F vignetteBrightness a field_2013 + f I overlayMessageTime aa field_2041 + f Z animateOverlayMessageColor ab field_2038 + f Z chatDisabledByPlayerShown ac field_39458 + f I toolHighlightTimer ad field_2040 + f Lnet/minecraft/world/item/ItemStack; lastToolHighlight ae field_2031 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay; debugOverlay af field_2026 + f Lnet/minecraft/client/gui/components/SubtitleOverlay; subtitleOverlay ag field_2027 + f Lnet/minecraft/client/gui/components/spectator/SpectatorGui; spectatorGui ah field_2025 + c The spectator GUI for this in-game GUI instance + f Lnet/minecraft/client/gui/components/PlayerTabOverlay; tabList ai field_2015 + f Lnet/minecraft/client/gui/components/BossHealthOverlay; bossOverlay aj field_2030 + f I titleTime ak field_2023 + c A timer for the current title and subtitle displayed + f Lnet/minecraft/network/chat/Component; title al field_2016 + c The current title displayed + f Lnet/minecraft/network/chat/Component; subtitle am field_2039 + c The current sub-title displayed + f I titleFadeInTime an field_2037 + c The time that the title take to fade in + f I titleStayTime ao field_2017 + c The time that the title is display + f I titleFadeOutTime ap field_2036 + c The time that the title take to fade out + f I lastHealth aq field_2014 + f I displayHealth ar field_2033 + f J lastHealthTime as field_2012 + c The last recorded system time + f J healthBlinkTime at field_2032 + c Used with updateCounter to make the heart bar flash + f F autosaveIndicatorValue au field_35428 + f F lastAutosaveIndicatorValue av field_35429 + f Lnet/minecraft/client/gui/LayeredDraw; layers aw field_47847 + f F scopeScale ax field_27959 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_SPRITE b field_45304 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_FULL_SPRITE c field_45305 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_BACKGROUND_SPRITE d field_45306 + f Lnet/minecraft/resources/ResourceLocation; CROSSHAIR_ATTACK_INDICATOR_PROGRESS_SPRITE e field_45307 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_AMBIENT_SPRITE f field_45308 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_SPRITE g field_45309 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SPRITE h field_45310 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SELECTION_SPRITE i field_45311 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_OFFHAND_LEFT_SPRITE j field_45312 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_OFFHAND_RIGHT_SPRITE k field_45313 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_ATTACK_INDICATOR_BACKGROUND_SPRITE l field_45314 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_ATTACK_INDICATOR_PROGRESS_SPRITE m field_45315 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_BACKGROUND_SPRITE n field_45316 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_COOLDOWN_SPRITE o field_45317 + f Lnet/minecraft/resources/ResourceLocation; JUMP_BAR_PROGRESS_SPRITE p field_45318 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_BACKGROUND_SPRITE q field_45319 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_PROGRESS_SPRITE r field_45320 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_EMPTY_SPRITE s field_45321 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_HALF_SPRITE t field_45322 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_FULL_SPRITE u field_45323 + f Lnet/minecraft/resources/ResourceLocation; FOOD_EMPTY_HUNGER_SPRITE v field_45324 + f Lnet/minecraft/resources/ResourceLocation; FOOD_HALF_HUNGER_SPRITE w field_45325 + f Lnet/minecraft/resources/ResourceLocation; FOOD_FULL_HUNGER_SPRITE x field_45326 + f Lnet/minecraft/resources/ResourceLocation; FOOD_EMPTY_SPRITE y field_45327 + f Lnet/minecraft/resources/ResourceLocation; FOOD_HALF_SPRITE z field_45328 + m ()V resetTitleTimes a method_1742 + c Set the different times for the titles to their default values + m (I)I getVisibleVehicleHeartRows a method_1733 + c Retrieves the number of rows of visible hearts needed to represent the given mount health.\n

\n@return the number of rows of visible hearts needed to represent the mount health. + p 1 vehicleHealth + c the health of the mount entity. + m (III)V setTimes a method_34001 + c Sets the fade-in, stay, and fade-out times for the title display. + p 1 titleFadeInTime + c the fade-in time for the title message in ticks. + p 2 titleStayTime + c the stay time for the title message in ticks. + p 3 titleFadeOutTime + c the fade-out time for the title message in ticks. + m (Lnet/minecraft/world/entity/Entity;)V updateVignetteBrightness a method_1731 + c Updates the brightness of the vignette effect based on the brightness of the given entity's position. + p 1 entity + c the entity used to determine the brightness. + m (Lnet/minecraft/world/entity/LivingEntity;)I getVehicleMaxHearts a method_1744 + c Retrieves the maximum number of hearts representing the vehicle's health for the given mount entity.\n

\n@return the maximum number of hearts representing the vehicle's health, or 0 if the mount entity is null or does not show vehicle health. + p 1 vehicle + c the living entity representing the vehicle. + m (Lnet/minecraft/world/entity/PlayerRideableJumping;Lnet/minecraft/client/gui/GuiGraphics;I)V renderJumpMeter a method_1752 + c Renders the jump meter for a rideable entity on the screen using the provided rideable object, GuiGraphics object, and x-coordinate. + p 1 rideable + c the PlayerRideableJumping object representing the rideable entity. + p 2 guiGraphics + c the GuiGraphics object used for rendering. + p 3 x + c the x-coordinate for rendering the jump meter. + m (Lnet/minecraft/world/phys/HitResult;)Z canRenderCrosshairForSpectator a method_17534 + c Checks if the crosshair can be rendered for a spectator based on the provided {@link HitResult}.\n

\n@return {@code true} if the crosshair can be rendered for a spectator, {@code false} otherwise. + p 1 rayTrace + c the result of a ray trace operation. + m (Lnet/minecraft/world/scores/PlayerScoreEntry;)Z method_1751 a method_1751 + m (Lnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/network/chat/numbers/NumberFormat;Lnet/minecraft/world/scores/PlayerScoreEntry;)Lnet/minecraft/client/gui/Gui$1DisplayEntry; method_55439 a method_55439 + m (Lnet/minecraft/client/Minecraft;)Z method_55796 a method_55796 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSelectedItemName a method_1749 + c Renders the name of the selected item on the screen using the provided GuiGraphics object. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderSpyglassOverlay a method_32598 + c Renders the overlay for the spyglass effect. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 scopeScale + c the scale factor for the spyglass scope. + m (Lnet/minecraft/client/gui/GuiGraphics;FIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V method_18620 a method_18620 + m (Lnet/minecraft/client/gui/GuiGraphics;I)V renderExperienceBar a method_1754 + c Renders the experience bar on the screen using the provided GuiGraphics object and x-coordinate. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 x + c the x-coordinate for rendering the experience bar. + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/DeltaTracker;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;I)V renderSlot a method_1762 + p 1 guiGraphics + p 2 x + p 3 y + p 4 deltaTracker + p 5 player + p 6 stack + p 7 seed + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;F)V renderTextureOverlay a method_31977 + c Renders a texture overlay on the screen with the specified shader location and alpha value. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 shaderLocation + c the location of the shader texture. + p 3 alpha + c the alpha value to apply to the overlay. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/Entity;)V renderVignette a method_1735 + c Renders the vignette effect on the screen based on the distance to the world border and the entity's position. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 entity + c the entity used to determine the distance to the world border. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;II)V renderFood a method_58477 + p 1 guiGraphics + p 2 player + p 3 y + p 4 x + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;IIII)V renderArmor a method_58478 + p 0 guiGraphics + p 1 player + p 2 y + p 3 heartRows + p 4 height + p 5 x + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/entity/player/Player;IIIIFIIIZ)V renderHearts a method_37298 + c Renders the player's hearts, including health, absorption, and highlight hearts, on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 player + c the player entity. + p 3 x + c the x-coordinate of the hearts' position. + p 4 y + c the y-coordinate of the hearts' position. + p 5 height + c the height of each heart. + p 6 offsetHeartIndex + c the index of the offset heart. + p 7 maxHealth + c the maximum health of the player. + p 8 currentHealth + c the current health of the player. + p 9 displayHealth + c the displayed health of the player. + p 10 absorptionAmount + c the absorption amount of the player. + p 11 renderHighlight + c determines whether to render the highlight hearts. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/scores/Objective;)V displayScoreboardSidebar a method_1757 + c Displays the scoreboard sidebar on the screen using the provided GuiGraphics object and objective. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 objective + c the objective representing the scoreboard sidebar. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V render a method_1753 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Gui$HeartType;IIZZZ)V renderHeart a method_37299 + p 1 guiGraphics + p 2 heartType + p 3 x + p 4 y + p 5 hardcore + p 6 halfHeart + p 7 blinking + m (Lnet/minecraft/network/chat/Component;)V setNowPlaying a method_1732 + c Sets the currently playing record display name and updates the overlay message. + p 1 displayName + c the display name of the currently playing record. + m (Lnet/minecraft/network/chat/Component;Z)V setOverlayMessage a method_1758 + c Sets the overlay message to be displayed on the screen. + p 1 component + c the {@link Component} representing the overlay message. + p 2 animateColor + c a boolean indicating whether to animate the color of the overlay message. + m (Z)V tick a method_39191 + c Advances the tick for the autosave indicator and optionally ticks the object if not paused. + p 1 pause + m ([Lnet/minecraft/client/gui/Gui$1DisplayEntry;Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/network/chat/Component;I)V method_55440 a method_55440 + m ()Z isShowingChatDisabledByPlayer b method_44353 + c {@return {@code true} if the chat disabled message is being shown, {@code false} otherwise} + m (I)[Lnet/minecraft/client/gui/Gui$1DisplayEntry; method_55441 b method_55441 + m (Lnet/minecraft/client/Minecraft;)Z method_55797 b method_55797 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderPlayerHealth b method_1760 + c Renders the player's health, armor, food, and air bars on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderPortalOverlay b method_1746 + c Renders the portal overlay effect on the screen with the specified alpha value. + p 1 guiGraphics + c the graphics object used for rendering. + p 2 alpha + c the alpha value of the overlay. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderSavingIndicator b method_39192 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/network/chat/Component;)V setSubtitle b method_34002 + c Sets the subtitle to be displayed in the title screen. + p 1 subtitle + c the subtitle {@link Component} to be displayed. + m (Z)V setChatDisabledByPlayerShown b method_44354 + c {@return {@code true} if the chat is disabled, {@code false} if chat is enabled} + p 1 chatDisabledByPlayerShown + m ()V clear c method_34003 + c Clears the title and subtitle, resetting the title display time. + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderVehicleHealth c method_1741 + c Renders the health of the player's vehicle on the screen. + p 1 guiGraphics + c the graphics object used for rendering. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderCameraOverlays c method_55798 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/network/chat/Component;)V setTitle c method_34004 + c Sets the title to be displayed in the title screen. + p 1 title + c the title {@link Component} to be displayed. + m ()Lnet/minecraft/client/gui/components/ChatComponent; getChat d method_1743 + c {@return a pointer to the persistent Chat GUI, containing all previous chat messages and such} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderSleepOverlay d method_55799 + p 1 guiGraphics + p 2 deltaTracker + m ()I getGuiTicks e method_1738 + c {@return the number of GUI ticks elapsed} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderOverlayMessage e method_55800 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/Font; getFont f method_1756 + c {@return the {@link Font} used for rendering text in the GUI} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderTitle f method_55801 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/spectator/SpectatorGui; getSpectatorGui g method_1739 + c {@return the {@link SpectatorGui} instance} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderChat g method_55802 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/PlayerTabOverlay; getTabList h method_1750 + c {@return the {@link PlayerTabOverlay} overlay} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderScoreboardSidebar h method_55803 + p 1 guiGraphics + p 2 deltaTracker + m ()V onDisconnected i method_1747 + c Called when the player is disconnected from the server.\nResets various UI elements and clears messages. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderTabList i method_55804 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/BossHealthOverlay; getBossOverlay j method_1740 + c {@return the {@link BossHealthOverlay} instance associated with the client} + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderCrosshair j method_1736 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/client/gui/components/DebugScreenOverlay; getDebugOverlay k method_53531 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderEffects k method_1765 + p 1 guiGraphics + p 2 deltaTracker + m ()V clearCache l method_1745 + c Clears the chunk cache in the debug screen. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderHotbarAndDecorations l method_55805 + p 1 guiGraphics + p 2 deltaTracker + m ()Z isExperienceBarVisible m method_56135 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderItemHotbar m method_1759 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/world/entity/player/Player; getCameraPlayer n method_1737 + c Retrieves the player entity that the camera is currently focused on.\n

\n@return the player entity that the camera is focused on, or null if the camera is not focused on a player. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderExperienceLevel n method_56136 + p 1 guiGraphics + p 2 deltaTracker + m ()Lnet/minecraft/world/entity/LivingEntity; getPlayerVehicleWithHealth o method_1734 + c Retrieves the living entity representing the player's vehicle with health, if any.\n

\n@return the living entity representing the player's vehicle with health, or null if the player is not in a vehicle or the vehicle does not have health. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderDemoOverlay o method_1766 + p 1 guiGraphics + p 2 deltaTracker + m ()V tick p method_1748 + c Advances the tick for various elements and updates their state. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55806 p method_55806 + m ()V tickAutosaveIndicator q method_39193 + c Updates the autosave indicator state. + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55807 q method_55807 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55808 r method_55808 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/Gui$1DisplayEntry fhy$a net/minecraft/class_329$class_9016 + f Lnet/minecraft/network/chat/Component; name a comp_2131 + f Lnet/minecraft/network/chat/Component; score b comp_2132 + f I scoreWidth c comp_2133 + m ()Lnet/minecraft/network/chat/Component; name a comp_2131 + m ()Lnet/minecraft/network/chat/Component; score b comp_2132 + m ()I scoreWidth c comp_2133 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;I)V +c net/minecraft/client/gui/Gui$HeartType fhy$b net/minecraft/class_329$class_6411 + f Lnet/minecraft/client/gui/Gui$HeartType; CONTAINER a field_33944 + f Lnet/minecraft/client/gui/Gui$HeartType; NORMAL b field_33945 + f Lnet/minecraft/client/gui/Gui$HeartType; POISIONED c field_33946 + f Lnet/minecraft/client/gui/Gui$HeartType; WITHERED d field_33947 + f Lnet/minecraft/client/gui/Gui$HeartType; ABSORBING e field_33948 + f Lnet/minecraft/client/gui/Gui$HeartType; FROZEN f field_33949 + f Lnet/minecraft/resources/ResourceLocation; full g field_45329 + f Lnet/minecraft/resources/ResourceLocation; fullBlinking h field_45330 + f Lnet/minecraft/resources/ResourceLocation; half i field_45331 + f Lnet/minecraft/resources/ResourceLocation; halfBlinking j field_45332 + f Lnet/minecraft/resources/ResourceLocation; hardcoreFull k field_45333 + f Lnet/minecraft/resources/ResourceLocation; hardcoreFullBlinking l field_45334 + f Lnet/minecraft/resources/ResourceLocation; hardcoreHalf m field_45335 + f Lnet/minecraft/resources/ResourceLocation; hardcoreHalfBlinking n field_45336 + f [Lnet/minecraft/client/gui/Gui$HeartType; $VALUES o field_33952 + m ()[Lnet/minecraft/client/gui/Gui$HeartType; $values a method_37300 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/client/gui/Gui$HeartType; forPlayer a method_37301 + c Returns the {@link HeartType} based on the player's status effects.\n

\n@return the {@link HeartType} based on the player's status effects. + p 0 player + c the player for which to determine the HeartType. + m (ZZZ)Lnet/minecraft/resources/ResourceLocation; getSprite a method_52705 + p 1 hardcore + p 2 halfHeart + p 3 blinking + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 3 full + p 4 fullBlinking + p 5 half + p 6 halfBlinking + p 7 hardcoreFull + p 8 hardcoreBlinking + p 9 hardcoreHalf + p 10 hardcoreHalfBlinking + m ()V +c net/minecraft/client/gui/GuiGraphics fhz net/minecraft/class_332 + f F MAX_GUI_Z a field_44931 + f F MIN_GUI_Z b field_44932 + f I EXTRA_SPACE_AFTER_FIRST_TOOLTIP_LINE c field_44655 + f Lnet/minecraft/client/Minecraft; minecraft d field_44656 + f Lcom/mojang/blaze3d/vertex/PoseStack; pose e field_44657 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource f field_44658 + f Lnet/minecraft/client/gui/GuiGraphics$ScissorStack; scissorStack g field_44659 + f Lnet/minecraft/client/gui/GuiSpriteManager; sprites h field_45337 + f Z managed i field_44797 + m ()I guiWidth a method_51421 + c {@return returns the width of the GUI screen in pixels} + m (FFFF)V setColor a method_51422 + c Sets the current rendering color. + p 1 red + c the red component of the color. + p 2 green + c the green component of the color. + p 3 blue + c the blue component of the color. + p 4 alpha + c the alpha component of the color. + m (II)Z containsPointInScissor a method_58135 + p 1 x + p 2 y + m (IIII)V hLine a method_25292 + c Draws a horizontal line from minX to maxX at the specified y-coordinate with the given color. + p 1 minX + c the x-coordinate of the start point. + p 2 maxX + c the x-coordinate of the end point. + p 3 y + c the y-coordinate of the line. + p 4 color + c the color of the line. + m (IIIII)V fill a method_25294 + c Fills a rectangle with the specified color using the given coordinates as the boundaries. + p 1 minX + c the minimum x-coordinate of the rectangle. + p 2 minY + c the minimum y-coordinate of the rectangle. + p 3 maxX + c the maximum x-coordinate of the rectangle. + p 4 maxY + c the maximum y-coordinate of the rectangle. + p 5 color + c the color to fill the rectangle with. + m (IIIIII)V fill a method_51737 + c Fills a rectangle with the specified color and z-level using the given coordinates as the boundaries. + p 1 minX + c the minimum x-coordinate of the rectangle. + p 2 minY + c the minimum y-coordinate of the rectangle. + p 3 maxX + c the maximum x-coordinate of the rectangle. + p 4 maxY + c the maximum y-coordinate of the rectangle. + p 5 z + c the z-level of the rectangle. + p 6 color + c the color to fill the rectangle with. + m (IIIIIII)V fillGradient a method_33284 + c Fills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given coordinates as the boundaries. + p 1 x1 + c the x-coordinate of the first corner of the rectangle. + p 2 y1 + c the y-coordinate of the first corner of the rectangle. + p 3 x2 + c the x-coordinate of the second corner of the rectangle. + p 4 y2 + c the y-coordinate of the second corner of the rectangle. + p 5 z + c the z-level of the rectangle. + p 6 colorFrom + c the starting color of the gradient. + p 7 colorTo + c the ending color of the gradient. + m (IIIIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V blit a method_25298 + c Blits a portion of the specified texture atlas sprite onto the screen at the given coordinates. + p 1 x + c the x-coordinate of the blit position. + p 2 y + c the y-coordinate of the blit position. + p 3 blitOffset + c the z-level offset for rendering order. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 sprite + c the texture atlas sprite to blit. + m (IIIIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;FFFF)V blit a method_48465 + c Blits a portion of the specified texture atlas sprite onto the screen at the given coordinates with a color tint. + p 1 x + c the x-coordinate of the blit position. + p 2 y + c the y-coordinate of the blit position. + p 3 blitOffset + c the z-level offset for rendering order. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 sprite + c the texture atlas sprite to blit. + p 7 red + c the red component of the color tint. + p 8 green + c the green component of the color tint. + p 9 blue + c the blue component of the color tint. + p 10 alpha + c the alpha component of the color tint. + m (Lnet/minecraft/resources/ResourceLocation;IIFFIIII)V blit a method_25290 + c Blits a portion of the texture specified by the atlas location onto the screen at the given position and dimensions with texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the top-left corner of the blit position. + p 3 y + c the y-coordinate of the top-left corner of the blit position. + p 4 uOffset + c the horizontal texture coordinate offset. + p 5 vOffset + c the vertical texture coordinate offset. + p 6 width + c the width of the blitted portion. + p 7 height + c the height of the blitted portion. + p 8 textureWidth + c the width of the texture. + p 9 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIFFIIII)V blit a method_25291 + c Blits a portion of the texture specified by the atlas location onto the screen at the given coordinates with a blit offset and texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the blit position. + p 3 y + c the y-coordinate of the blit position. + p 4 blitOffset + c the z-level offset for rendering order. + p 5 uOffset + c the horizontal texture coordinate offset. + p 6 vOffset + c the vertical texture coordinate offset. + p 7 uWidth + c the width of the blitted portion in texture coordinates. + p 8 vHeight + c the height of the blitted portion in texture coordinates. + p 9 textureWidth + c the width of the texture. + p 10 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIII)V blitSprite a method_52706 + p 1 sprite + p 2 x + p 3 y + p 4 width + p 5 height + m (Lnet/minecraft/resources/ResourceLocation;IIIIFFIIII)V blit a method_25293 + c Blits a portion of the texture specified by the atlas location onto the screen at the given position and dimensions with texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the top-left corner of the blit position. + p 3 y + c the y-coordinate of the top-left corner of the blit position. + p 4 width + c the width of the blitted portion. + p 5 height + c the height of the blitted portion. + p 6 uOffset + c the horizontal texture coordinate offset. + p 7 vOffset + c the vertical texture coordinate offset. + p 8 uWidth + c the width of the blitted portion in texture coordinates. + p 9 vHeight + c the height of the blitted portion in texture coordinates. + p 10 textureWidth + c the width of the texture. + p 11 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIII)V blitSprite a method_52707 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + m (Lnet/minecraft/resources/ResourceLocation;IIIIIFFFF)V innerBlit a method_25295 + c Performs the inner blit operation for rendering a texture with the specified coordinates and texture coordinates without color tinting. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 minU + c the minimum horizontal texture coordinate. + p 8 maxU + c the maximum horizontal texture coordinate. + p 9 minV + c the minimum vertical texture coordinate. + p 10 maxV + c the maximum vertical texture coordinate. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIFFFFFFFF)V innerBlit a method_48466 + c Performs the inner blit operation for rendering a texture with the specified coordinates, texture coordinates, and color tint. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 minU + c the minimum horizontal texture coordinate. + p 8 maxU + c the maximum horizontal texture coordinate. + p 9 minV + c the minimum vertical texture coordinate. + p 10 maxV + c the maximum vertical texture coordinate. + p 11 red + c the red component of the color tint. + p 12 green + c the green component of the color tint. + p 13 blue + c the blue component of the color tint. + p 14 alpha + c the alpha component of the color tint. + m (Lnet/minecraft/resources/ResourceLocation;IIIIII)V blit a method_25302 + c Blits a portion of the texture specified by the atlas location onto the screen at the given coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x + c the x-coordinate of the blit position. + p 3 y + c the y-coordinate of the blit position. + p 4 uOffset + c the horizontal texture coordinate offset. + p 5 vOffset + c the vertical texture coordinate offset. + p 6 uWidth + c the width of the blitted portion in texture coordinates. + p 7 vHeight + c the height of the blitted portion in texture coordinates. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIIFFII)V blit a method_25297 + c Performs the inner blit operation for rendering a texture with the specified coordinates and texture coordinates. + p 1 atlasLocation + c the location of the texture atlas. + p 2 x1 + c the x-coordinate of the first corner of the blit position. + p 3 x2 + c the x-coordinate of the second corner of the blit position. + p 4 y1 + c the y-coordinate of the first corner of the blit position. + p 5 y2 + c the y-coordinate of the second corner of the blit position. + p 6 blitOffset + c the z-level offset for rendering order. + p 7 uWidth + c the width of the blitted portion in texture coordinates. + p 8 vHeight + c the height of the blitted portion in texture coordinates. + p 9 uOffset + c the horizontal texture coordinate offset. + p 10 vOffset + c the vertical texture coordinate offset. + p 11 textureWidth + c the width of the texture. + p 12 textureHeight + c the height of the texture. + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIII)V blitSprite a method_52708 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 uWidth + p 9 vHeight + m (Lnet/minecraft/resources/ResourceLocation;IIIIIIIII)V blitSprite a method_52709 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 blitOffset + p 9 uWidth + p 10 vHeight + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51423 + c Renders an item stack for a living entity at the specified coordinates with a random seed. + p 1 entity + c the living entity. + p 2 stack + c the item stack to render. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + p 5 seed + c the random seed. + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51424 + c Renders an item stack for a living entity in a specific level at the specified coordinates with a random seed. + p 1 entity + c the living entity. Can be null. + p 2 level + c the level in which the rendering occurs. Can be null. + p 3 stack + c the item stack to render. + p 4 x + c the x-coordinate of the rendering position. + p 5 y + c the y-coordinate of the rendering position. + p 6 seed + c the random seed. + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/item/ItemStack;IIII)V renderItem a method_51425 + c Renders an item stack for a living entity in a specific level at the specified coordinates with a random seed and a custom GUI offset. + p 1 entity + c the living entity. Can be null. + p 2 level + c the level in which the rendering occurs. Can be null. + p 3 stack + c the item stack to render. + p 4 x + c the x-coordinate of the rendering position. + p 5 y + c the y-coordinate of the rendering position. + p 6 seed + c the random seed. + p 7 guiOffset + c the GUI offset value. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_57708 a method_57708 + m (Lnet/minecraft/world/item/ItemStack;II)V renderItem a method_51427 + c Renders an item stack at the specified coordinates. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/world/item/ItemStack;III)V renderItem a method_51428 + c Renders an item stack at the specified coordinates with a random seed. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + p 4 seed + c the random seed. + m (Lnet/minecraft/world/item/ItemStack;IIII)V renderItem a method_51429 + c Renders an item stack at the specified coordinates with a random seed and a custom value. + p 1 stack + c the item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + p 4 seed + c the random seed. + p 5 guiOffset + c the GUI offset. + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIIIII)V fillGradient a method_27533 + c The core `fillGradient` method.\n

\nFills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given render type and coordinates as the boundaries. + p 1 consumer + c the {@linkplain VertexConsumer} object for drawing the vertices on screen. + p 2 x1 + c the x-coordinate of the first corner of the rectangle. + p 3 y1 + c the y-coordinate of the first corner of the rectangle. + p 4 x2 + c the x-coordinate of the second corner of the rectangle. + p 5 y2 + c the y-coordinate of the second corner of the rectangle. + p 6 z + c the z-level of the rectangle. + p 7 colorFrom + c the starting color of the gradient. + p 8 colorTo + c the ending color of the gradient. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;III)V drawCenteredString a method_35719 + c Draws a centered string at the specified coordinates using the given font, formatted character sequence, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;IIIZ)I drawString a method_51430 + c Draws a formatted character sequence at the specified coordinates using the given font, text, color, and drop shadow. Returns the width of the drawn string.\n

\n@return returns the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V renderItemDecorations a method_51431 + c Renders additional decorations for an item stack at the specified coordinates. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to decorate. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;IILjava/lang/String;)V renderItemDecorations a method_51432 + c Renders additional decorations for an item stack at the specified coordinates with optional custom text. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to decorate. + p 3 x + c the x-coordinate of the rendering position. + p 4 y + c the y-coordinate of the rendering position. + p 5 text + c the custom text to display. Can be null. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;III)V drawCenteredString a method_25300 + c Draws a centered string at the specified coordinates using the given font, text, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;IIIZ)I drawString a method_51433 + c Draws a string at the specified coordinates using the given font, text, color, and drop shadow. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;II)V renderComponentTooltip a method_51434 + c Renders a tooltip with multiple lines of component-based text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as components. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;IILnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;)V renderTooltipInternal a method_51435 + c Renders an internal tooltip with customizable tooltip components at the specified mouse coordinates using a tooltip positioner. + p 1 font + c the font used for rendering text. + p 2 components + c the tooltip components to render. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + p 5 tooltipPositioner + c the positioner to determine the tooltip's position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;II)V renderTooltip a method_51436 + c Renders a tooltip with multiple lines of formatted text using a custom tooltip positioner at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as formatted character sequences. + p 3 tooltipPositioner + c the positioner to determine the tooltip's position. + p 4 mouseX + c the x-coordinate of the mouse position. + p 5 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;Ljava/util/Optional;II)V renderTooltip a method_51437 + c Renders a tooltip with customizable components at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip. + p 3 visualTooltipComponent + c the visual tooltip component. Can be empty. + p 4 mouseX + c the x-coordinate of the mouse position. + p 5 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;II)V renderTooltip a method_51438 + c Renders a tooltip with a single line of text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 text + c the text to display in the tooltip. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;III)V drawCenteredString a method_27534 + c Draws a centered string at the specified coordinates using the given font, text component, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the center of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIII)I drawStringWithBackdrop a method_60649 + p 1 font + p 2 text + p 3 x + p 4 y + p 5 xOffset + p 6 color + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIZ)I drawString a method_51439 + c Draws a component's visual order text at the specified coordinates using the given font, text component, color, and drop shadow.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + p 6 dropShadow + c whether to apply a drop shadow to the string. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/FormattedText;IIII)V drawWordWrap a method_51440 + c Draws a formatted text with word wrapping at the specified coordinates using the given font, text, line width, and color. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted text to draw. + p 3 x + c the x-coordinate of the starting position. + p 4 y + c the y-coordinate of the starting position. + p 5 lineWidth + c the maximum width of each line before wrapping. + p 6 color + c the color of the text. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Style;II)V renderComponentHoverEffect a method_51441 + c Renders a hover effect for a text component at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 style + c the style of the text component. Can be null. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V applyScissor a method_49698 + c Applies scissoring based on the provided screen rectangle. + p 1 rectangle + c the screen rectangle to apply scissoring with. Can be null to disable scissoring. + m (Lnet/minecraft/client/renderer/RenderType;IIII)V hLine a method_51738 + c Draws a horizontal line from minX to maxX at the specified y-coordinate with the given color using the specified render type. + p 1 renderType + c the render type to use. + p 2 minX + c the x-coordinate of the start point. + p 3 maxX + c the x-coordinate of the end point. + p 4 y + c the y-coordinate of the line. + p 5 color + c the color of the line. + m (Lnet/minecraft/client/renderer/RenderType;IIIII)V fill a method_51739 + c Fills a rectangle with the specified color using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 minX + c the minimum x-coordinate of the rectangle. + p 3 minY + c the minimum y-coordinate of the rectangle. + p 4 maxX + c the maximum x-coordinate of the rectangle. + p 5 maxY + c the maximum y-coordinate of the rectangle. + p 6 color + c the color to fill the rectangle with. + m (Lnet/minecraft/client/renderer/RenderType;IIIIII)V fill a method_48196 + c Fills a rectangle with the specified color and z-level using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 minX + c the minimum x-coordinate of the rectangle. + p 3 minY + c the minimum y-coordinate of the rectangle. + p 4 maxX + c the maximum x-coordinate of the rectangle. + p 5 maxY + c the maximum y-coordinate of the rectangle. + p 6 z + c the z-level of the rectangle. + p 7 color + c the color to fill the rectangle with. + m (Lnet/minecraft/client/renderer/RenderType;IIIIIII)V fillGradient a method_51740 + c Fills a rectangle with a gradient color from colorFrom to colorTo at the specified z-level using the given render type and coordinates as the boundaries. + p 1 renderType + c the render type to use. + p 2 x1 + c the x-coordinate of the first corner of the rectangle. + p 3 y1 + c the y-coordinate of the first corner of the rectangle. + p 4 x2 + c the x-coordinate of the second corner of the rectangle. + p 5 y2 + c the y-coordinate of the second corner of the rectangle. + p 6 colorFrom + c the starting color of the gradient. + p 7 colorTo + c the ending color of the gradient. + p 8 z + c the z-level of the rectangle. + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIII)V blitSprite a method_52710 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIIIIIII)V blitSprite a method_52711 + p 1 sprite + p 2 textureWidth + p 3 textureHeight + p 4 uPosition + p 5 vPosition + p 6 x + p 7 y + p 8 blitOffset + p 9 uWidth + p 10 vHeight + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;IIIIIIIIIII)V blitTiledSprite a method_52712 + p 1 sprite + p 2 x + p 3 y + p 4 blitOffset + p 5 width + p 6 height + p 7 uPosition + p 8 vPosition + p 9 spriteWidth + p 10 spriteHeight + p 11 nineSliceWidth + p 12 nineSliceHeight + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;IIIII)V blitNineSlicedSprite a method_52713 + p 1 sprite + p 2 nineSlice + p 3 x + p 4 y + p 5 blitOffset + p 6 width + p 7 height + m (Ljava/lang/Runnable;)V drawManaged a method_51741 + c Executes a runnable while managing the render state. The render state is flushed before and after executing the runnable. + p 1 runnable + c the runnable to execute. + m (Ljava/util/List;Lnet/minecraft/world/inventory/tooltip/TooltipComponent;)V method_51442 a method_51442 + m ()I guiHeight b method_51443 + c {@return returns the height of the GUI screen in pixels} + m (IIII)V vLine b method_25301 + c Draws a vertical line from minY to maxY at the specified x-coordinate with the given color. + p 1 x + c the x-coordinate of the line. + p 2 minY + c the y-coordinate of the start point. + p 3 maxY + c the y-coordinate of the end point. + p 4 color + c the color of the line. + m (IIIII)V renderOutline b method_49601 + c Renders an outline rectangle on the screen with the specified color. + p 1 x + c the x-coordinate of the top-left corner of the rectangle. + p 2 y + c the y-coordinate of the top-left corner of the rectangle. + p 3 width + c the width of the blitted portion. + p 4 height + c the height of the rectangle. + p 5 color + c the color of the outline. + m (IIIIII)V fillGradient b method_25296 + c Fills a rectangle with a gradient color from colorFrom to colorTo using the given coordinates as the boundaries. + p 1 x1 + c the x-coordinate of the first corner of the rectangle. + p 2 y1 + c the y-coordinate of the first corner of the rectangle. + p 3 x2 + c the x-coordinate of the second corner of the rectangle. + p 4 y2 + c the y-coordinate of the second corner of the rectangle. + p 5 colorFrom + c the starting color of the gradient. + p 6 colorTo + c the ending color of the gradient. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_51449 b method_51449 + m (Lnet/minecraft/world/item/ItemStack;II)V renderFakeItem b method_51445 + c Renders a fake item stack at the specified coordinates. + p 1 stack + c the fake item stack to render. + p 2 x + c the x-coordinate of the rendering position. + p 3 y + c the y-coordinate of the rendering position. + m (Lnet/minecraft/world/item/ItemStack;III)V renderFakeItem b method_55231 + p 1 stack + p 2 x + p 3 y + p 4 seed + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/FormattedCharSequence;III)I drawString b method_35720 + c Draws a formatted character sequence at the specified coordinates using the given font, text, and color. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the formatted character sequence to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/world/item/ItemStack;II)V renderTooltip b method_51446 + c Renders a tooltip for an item stack at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 stack + c the item stack to display the tooltip for. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Ljava/lang/String;III)I drawString b method_25303 + c Draws a string at the specified coordinates using the given font, text, and color. Returns the width of the drawn string.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/gui/Font;Ljava/util/List;II)V renderTooltip b method_51447 + c Renders a tooltip with multiple lines of formatted text at the specified mouse coordinates. + p 1 font + c the font used for rendering text. + p 2 tooltipLines + c the lines of the tooltip as formatted character sequences. + p 3 mouseX + c the x-coordinate of the mouse position. + p 4 mouseY + c the y-coordinate of the mouse position. + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;III)I drawString b method_27535 + c Draws a component's visual order text at the specified coordinates using the given font, text component, and color.\n

\n@return the width of the drawn string. + p 1 font + c the font to use for rendering. + p 2 text + c the text component to draw. + p 3 x + c the x-coordinate of the string. + p 4 y + c the y-coordinate of the string. + p 5 color + c the color of the string. + m (Lnet/minecraft/client/renderer/RenderType;IIII)V vLine b method_51742 + c Draws a vertical line from minY to maxY at the specified x-coordinate with the given color using the specified render type. + p 1 renderType + c the render type to use. + p 2 x + c the x-coordinate of the line. + p 3 minY + c the y-coordinate of the start point. + p 4 maxY + c the y-coordinate of the end point. + p 5 color + c the color of the line. + m (Lnet/minecraft/client/renderer/RenderType;IIIII)V fillRenderType b method_57709 + p 1 renderType + p 2 x1 + p 3 y1 + p 4 x2 + p 5 y2 + p 6 z + m ()Lcom/mojang/blaze3d/vertex/PoseStack; pose c method_51448 + c {@return returns the PoseStack used for transformations and rendering.} + m (IIII)V enableScissor c method_44379 + c Enables scissoring with the specified screen coordinates. + p 1 minX + c the minimum x-coordinate of the scissor region. + p 2 minY + c the minimum y-coordinate of the scissor region. + p 3 maxX + c the maximum x-coordinate of the scissor region. + p 4 maxY + c the maximum y-coordinate of the scissor region. + m (Lnet/minecraft/world/item/ItemStack;)Ljava/lang/String; method_51451 c method_51451 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource d method_51450 + c {@return returns the buffer source for rendering.} + m (IIII)V method_51743 d method_51743 + m ()V flush e method_51452 + c Flushes the render state, ending the current batch and enabling depth testing. + m ()V disableScissor f method_44380 + c Disables scissoring. + m ()V flushIfUnmanaged g method_51744 + c Flushes the render state if it is not managed.\n@deprecated This method is deprecated. + m ()V flushIfManaged h method_51887 + c Flushes the render state if it is managed.\n@deprecated This method is deprecated. + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 minecraft + p 2 pose + p 3 bufferSource + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 minecraft + p 2 bufferSource +c net/minecraft/client/gui/GuiGraphics$ScissorStack fhz$a net/minecraft/class_332$class_8214 + c A utility class for managing a stack of screen rectangles for scissoring. + f Ljava/util/Deque; stack a field_43099 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; pop a method_49699 + c Pops the top screen rectangle from the scissor stack.\n

\n@return The new top screen rectangle after the pop operation, or null if the stack is empty.\n@throws IllegalStateException if the stack is empty. + m (II)Z containsPoint a method_58136 + p 1 x + p 2 y + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; push a method_49700 + c Pushes a screen rectangle onto the scissor stack.\n

\n@return The resulting intersection of the pushed rectangle with the previous top rectangle on the stack, or the pushed rectangle if the stack is empty. + p 1 scissor + c the screen rectangle to push. + m ()V +c net/minecraft/client/gui/GuiSpriteManager fia net/minecraft/class_8658 + f Ljava/util/Set; METADATA_SECTIONS a field_45338 + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; getSpriteScaling a method_52714 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/metadata/gui/GuiMetadataSection; getMetadata b method_52715 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/gui/LayeredDraw fib net/minecraft/class_9080 + f F Z_SEPARATION a field_47848 + f Ljava/util/List; layers b field_47849 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V render a method_55809 + p 1 guiGraphics + p 2 deltaTracker + m (Lnet/minecraft/client/gui/LayeredDraw$Layer;)Lnet/minecraft/client/gui/LayeredDraw; add a method_55810 + p 1 layer + m (Lnet/minecraft/client/gui/LayeredDraw;Ljava/util/function/BooleanSupplier;)Lnet/minecraft/client/gui/LayeredDraw; add a method_55811 + p 1 layeredDraw + p 2 renderInner + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/gui/LayeredDraw;Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V method_55812 a method_55812 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/DeltaTracker;)V renderInner b method_55813 + p 1 guiGraphics + p 2 deltaTracker + m ()V +c net/minecraft/client/gui/LayeredDraw$Layer fib$a net/minecraft/class_9080$class_9081 +c net/minecraft/client/gui/MapRenderer fic net/minecraft/class_330 + f I WIDTH a field_32173 + f I HEIGHT b field_32174 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager c field_2043 + f Lnet/minecraft/client/resources/MapDecorationTextureManager; decorationTextures d field_50036 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; maps e field_2045 + m ()V resetData a method_1771 + c Clears the currently loaded maps and removes their corresponding textures + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V update a method_1769 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;Ljava/lang/Integer;Lnet/minecraft/client/gui/MapRenderer$MapInstance;)Lnet/minecraft/client/gui/MapRenderer$MapInstance; method_32600 a method_32600 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;ZI)V render a method_1773 + p 1 poseStack + p 2 buffer + p 3 mapId + p 4 mapData + p 5 active + p 6 packedLight + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)Lnet/minecraft/client/gui/MapRenderer$MapInstance; getOrCreateMapInstance b method_32601 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/resources/MapDecorationTextureManager;)V + p 1 textureManager + p 2 decorationTextures +c net/minecraft/client/gui/MapRenderer$MapInstance fic$a net/minecraft/class_330$class_331 + f Lnet/minecraft/client/gui/MapRenderer; field_2047 a field_2047 + f Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData; data b field_2046 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture c field_2048 + f Lnet/minecraft/client/renderer/RenderType; renderType d field_21689 + f Z requiresUpload e field_34044 + m ()V forceUpload a method_37450 + m (Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V replaceMapData a method_37451 + p 1 data + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ZI)V draw a method_1777 + p 1 poseStack + p 2 bufferSource + p 3 active + p 4 packedLight + m ()V updateTexture b method_1776 + c Updates a map texture. + m (Lnet/minecraft/client/gui/MapRenderer;ILnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V + p 2 id + p 3 data +c net/minecraft/client/gui/components/AbstractButton fid net/minecraft/class_4264 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES a field_45339 + f I TEXT_MARGIN e field_43050 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderString a method_48589 + p 1 guiGraphics + p 2 font + p 3 color + m ()V onPress b method_25306 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + m ()V +c net/minecraft/client/gui/components/AbstractContainerWidget fie net/minecraft/class_9017 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_47551 + f Z isDragging b field_47552 + m (IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/components/AbstractOptionSliderButton fif net/minecraft/class_4892 + f Lnet/minecraft/client/Options; options a field_22738 + m (Lnet/minecraft/client/Options;IIIID)V + p 1 options + p 2 x + p 3 y + p 4 width + p 5 height + p 6 value +c net/minecraft/client/gui/components/AbstractScrollWidget fig net/minecraft/class_7528 + f Lnet/minecraft/client/gui/components/WidgetSprites; BACKGROUND_SPRITES a field_45905 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE b field_45906 + f I INNER_PADDING c field_39496 + f I SCROLL_BAR_WIDTH d field_45907 + f D scrollAmount e field_39497 + f Z scrolling f field_39498 + m ()I innerPadding a method_44381 + m (D)V setScrollAmount a method_44382 + p 1 scrollAmount + m (II)Z withinContentAreaTopBottom a method_44383 + p 1 top + p 2 bottom + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderDecorations a method_44384 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderBorder a method_52233 + p 1 guiGraphics + p 2 x + p 3 y + p 4 width + p 5 height + m ()I totalInnerPadding b method_44385 + m (DD)Z withinContentAreaPoint b method_44388 + p 1 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderBackground b method_44386 + p 1 guiGraphics + m ()D scrollAmount c method_44387 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderScrollBar c method_44396 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderContents c method_44389 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m ()I getMaxScrollAmount d method_44390 + m ()Z scrollbarVisible e method_44392 + m ()I scrollbarWidth f method_53532 + m ()I getInnerHeight h method_44391 + m ()D scrollRate i method_44393 + m ()I getScrollBarHeight j method_44394 + m ()I getContentHeight k method_44395 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList fih net/minecraft/class_350 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE a field_45908 + f I SCROLLBAR_WIDTH b field_45909 + f Lnet/minecraft/client/Minecraft; minecraft c field_22740 + f I itemHeight d field_22741 + f Z centerListVertically e field_22744 + f I headerHeight f field_22748 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_BACKGROUND_SPRITE m field_49477 + f Lnet/minecraft/resources/ResourceLocation; MENU_LIST_BACKGROUND n field_49478 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_MENU_LIST_BACKGROUND o field_49892 + f Ljava/util/List; children p field_22739 + f D scrollAmount q field_22749 + f Z renderHeader r field_22747 + f Z scrolling s field_22750 + f Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; selected u field_22751 + f Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; hovered v field_33780 + m ()I getRealRowLeft J method_57710 + m ()I getRealRowRight K method_57711 + m ()I getMaxPosition a method_25317 + m (D)V setClampedScrollAmount a method_60321 + p 1 scroll + m (I)V scroll a method_25309 + p 1 scroll + m (II)Z clickedHeader a method_25310 + p 1 x + p 2 y + m (ILnet/minecraft/client/gui/layouts/HeaderAndFooterLayout;)V updateSize a method_57712 + p 1 width + p 2 layout + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderListSeparators a method_57713 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderHeader a method_25312 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIFIIIII)V renderItem a method_44397 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + p 5 index + p 6 left + p 7 top + p 8 width + p 9 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderSelection a method_44398 + p 1 guiGraphics + p 2 top + p 3 width + p 4 height + p 5 outerColor + p 6 innerColor + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V setSelected a method_25313 + p 1 selected + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V narrateListElementPosition a method_37017 + p 1 narrationElementOutput + p 2 entry + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48197 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Ljava/util/function/Predicate;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48198 + p 1 direction + p 2 predicate + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Ljava/util/function/Predicate;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; nextEntry a method_48199 + p 1 direction + p 2 predicate + p 3 selected + m (Ljava/util/Collection;)V replaceEntries a method_25314 + p 1 entries + m (ZI)V setRenderHeader a method_25315 + p 1 renderHeader + p 2 headerHeight + m ()I getRowWidth b method_25322 + m (D)V setScrollAmount b method_25307 + p 1 scroll + m (DD)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getEntryAtPosition b method_25308 + p 1 mouseX + p 3 mouseY + m (III)V updateSizeAndPosition b method_57714 + p 1 width + p 2 height + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderListBackground b method_57715 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderDecorations b method_25320 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)I addEntry b method_25321 + p 1 entry + m ()I getListOutlinePadding c method_57716 + m (DDI)V updateScrollingState c method_25318 + p 1 mouseX + p 3 mouseY + p 5 button + m (Lnet/minecraft/client/gui/GuiGraphics;)V enableScissor c method_49603 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderListItems c method_25311 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V addEntryToTop c method_44399 + p 1 entry + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getEntry d method_25326 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z removeEntryFromTop d method_44650 + p 1 entry + m (I)Z isSelectedItem e method_25332 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V centerScrollOn e method_25324 + p 1 entry + m (I)Z isValidMouseClick f method_53812 + p 1 button + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V ensureVisible f method_25328 + p 1 entry + m (I)I getRowTop g method_25337 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z removeEntry g method_25330 + p 1 entry + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getSelected h method_25334 + m (I)I getRowBottom h method_25319 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V bindEntryToSelf h method_29621 + p 1 entry + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getFirstElement i method_48200 + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; remove i method_25338 + p 1 index + m (Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Z method_48201 i method_48201 + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getFocused j method_25336 + c Gets the focused GUI element. + m ()V clearEntries k method_25339 + m ()I getItemCount l method_25340 + m ()Z scrollbarVisible m method_57717 + m ()D getScrollAmount n method_25341 + m ()V clampScrollAmount o method_60322 + m ()I getMaxScroll p method_25331 + m ()I getScrollbarPosition q method_25329 + m ()I getDefaultScrollbarPosition r method_57718 + m ()I getRowLeft s method_25342 + m ()I getRowRight t method_31383 + m ()Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; getHovered v method_37019 + m (Lnet/minecraft/client/Minecraft;IIII)V + p 1 minecraft + p 2 width + p 3 height + p 4 y + p 5 itemHeight + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$1 fih$1 net/minecraft/class_350$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection a field_41786 + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$Entry fih$a net/minecraft/class_350$class_351 + f Lnet/minecraft/client/gui/components/AbstractSelectionList; list a field_22752 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIIIZF)V render a method_25343 + p 1 guiGraphics + p 2 index + p 3 top + p 4 left + p 5 width + p 6 height + p 7 mouseX + p 8 mouseY + p 9 hovering + p 10 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIIIZF)V renderBack b method_49568 + p 1 guiGraphics + p 2 index + p 3 top + p 4 left + p 5 width + p 6 height + p 7 mouseX + p 8 mouseY + p 9 isMouseOver + p 10 partialTick + m ()V +c net/minecraft/client/gui/components/AbstractSelectionList$TrackedList fih$b net/minecraft/class_350$class_352 + f Lnet/minecraft/client/gui/components/AbstractSelectionList; field_2145 a field_2145 + f Ljava/util/List; delegate b field_2146 + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; get a method_1912 + p 1 index + m (ILnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; set a method_1909 + p 1 index + p 2 entry + m (I)Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry; remove b method_1911 + p 1 index + m (ILnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V add b method_1910 + p 1 index + p 2 entry + m (Lnet/minecraft/client/gui/components/AbstractSelectionList;)V +c net/minecraft/client/gui/components/AbstractSliderButton fii net/minecraft/class_357 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_SPRITE a field_45340 + f I TEXT_MARGIN b field_43054 + f D value c field_22753 + f Lnet/minecraft/resources/ResourceLocation; HIGHLIGHTED_SPRITE d field_45341 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_HANDLE_SPRITE e field_45342 + f Lnet/minecraft/resources/ResourceLocation; SLIDER_HANDLE_HIGHLIGHTED_SPRITE f field_45343 + f I HANDLE_WIDTH m field_41790 + f I HANDLE_HALF_WIDTH n field_41789 + f Z canChangeValue o field_41796 + m ()V applyValue a method_25344 + m (D)V setValueFromMouse a method_25345 + p 1 mouseX + m ()V updateMessage b method_25346 + m (D)V setValue b method_25347 + p 1 value + m ()Lnet/minecraft/resources/ResourceLocation; getSprite c method_52716 + m ()Lnet/minecraft/resources/ResourceLocation; getHandleSprite e method_52717 + m (IIIILnet/minecraft/network/chat/Component;D)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 value + m ()V +c net/minecraft/client/gui/components/AbstractStringWidget fij net/minecraft/class_8130 + f Lnet/minecraft/client/gui/Font; font a field_42483 + f I color b field_42484 + m ()Lnet/minecraft/client/gui/Font; getFont a method_48977 + m (I)Lnet/minecraft/client/gui/components/AbstractStringWidget; setColor a method_48978 + p 1 color + m ()I getColor b method_48979 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/AbstractWidget fik net/minecraft/class_339 + f D PERIOD_PER_SCROLLED_PIXEL a field_43055 + f D MIN_SCROLL_PERIOD b field_43056 + f I x c field_22760 + f I y d field_22761 + f Lnet/minecraft/network/chat/Component; message e field_22754 + f I tabOrderGroup f field_42116 + f I width g field_22758 + f I height h field_22759 + f Z isHovered i field_22762 + f Z active j field_22763 + f Z visible k field_22764 + f F alpha l field_22765 + f Z focused m field_22756 + f Lnet/minecraft/client/gui/components/WidgetTooltipHolder; tooltip n field_41095 + m ()Z isHovered A method_49606 + m ()Z isHoveredOrFocused B method_25367 + m ()I getRight F method_55442 + m ()I getBottom G method_55443 + m (DD)V onClick a method_25348 + p 1 mouseX + p 3 mouseY + m (F)V setAlpha a method_25350 + p 1 alpha + m (IIII)V setRectangle a method_55444 + p 1 width + p 2 height + p 3 x + p 4 y + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;II)V renderScrollingString a method_49604 + p 1 guiGraphics + p 2 font + p 3 width + p 4 color + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIII)V renderScrollingString a method_52718 + p 0 guiGraphics + p 1 font + p 2 text + p 3 minX + p 4 minY + p 5 maxX + p 6 maxY + p 7 color + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIIII)V renderScrollingString a method_49605 + p 0 guiGraphics + p 1 font + p 2 text + p 3 centerX + p 4 minX + p 5 minY + p 6 maxX + p 7 maxY + p 8 color + m (Lnet/minecraft/client/gui/components/Tooltip;)V setTooltip a method_47400 + p 1 tooltip + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateWidgetNarration a method_47399 + p 1 narrationElementOutput + m (Lnet/minecraft/client/sounds/SoundManager;)V playDownSound a method_25354 + p 1 handler + m (Ljava/time/Duration;)V setTooltipDelay a method_47402 + p 1 tooltipDelay + m ()Lnet/minecraft/network/chat/MutableComponent; createNarrationMessage aQ_ method_25360 + m (DD)V onRelease a_ method_25357 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/MutableComponent; wrapDefaultNarrationMessage a_ method_32602 + p 0 message + m (DDDD)V onDrag b method_25349 + p 1 mouseX + p 3 mouseY + p 5 dragX + p 7 dragY + m (II)V setSize b method_55445 + p 1 width + p 2 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderWidget b method_48579 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/network/chat/Component;)V setMessage b method_25355 + p 1 message + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V defaultButtonNarrationText c method_37021 + p 1 narrationElementOutput + m (DD)Z clicked d method_25361 + p 1 mouseX + p 3 mouseY + m (I)Z isValidClickButton j method_25351 + p 1 button + m (I)V setWidth k method_25358 + p 1 width + m (I)V setHeight l method_53533 + p 1 height + m (I)V setTabOrderGroup o method_48591 + p 1 tabOrderGroup + m ()Lnet/minecraft/client/gui/components/Tooltip; getTooltip x method_51254 + m ()Lnet/minecraft/network/chat/Component; getMessage z method_25369 + m (IIIILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message +c net/minecraft/client/gui/components/BossHealthOverlay fil net/minecraft/class_337 + f I BAR_WIDTH a field_32177 + f I BAR_HEIGHT b field_32178 + f [Lnet/minecraft/resources/ResourceLocation; BAR_BACKGROUND_SPRITES c field_45344 + f [Lnet/minecraft/resources/ResourceLocation; BAR_PROGRESS_SPRITES d field_45345 + f [Lnet/minecraft/resources/ResourceLocation; OVERLAY_BACKGROUND_SPRITES e field_45346 + f [Lnet/minecraft/resources/ResourceLocation; OVERLAY_PROGRESS_SPRITES f field_45347 + f Lnet/minecraft/client/Minecraft; minecraft g field_2058 + f Ljava/util/Map; events h field_2060 + m ()V reset a method_1801 + m (Lnet/minecraft/network/protocol/game/ClientboundBossEventPacket;)V update a method_1795 + p 1 packet + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1796 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/BossEvent;)V drawBar a method_1799 + p 1 guiGraphics + p 2 x + p 3 y + p 4 bossEvent + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/BossEvent;I[Lnet/minecraft/resources/ResourceLocation;[Lnet/minecraft/resources/ResourceLocation;)V drawBar a method_41830 + p 1 guiGraphics + p 2 x + p 3 y + p 4 bossEvent + p 5 progress + p 6 barProgressSprites + p 7 overlayProgressSprites + m ()Z shouldPlayMusic b method_1798 + m ()Z shouldDarkenScreen c method_1797 + m ()Z shouldCreateWorldFog d method_1800 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/BossHealthOverlay$1 fil$1 net/minecraft/class_337$1 + f Lnet/minecraft/client/gui/components/BossHealthOverlay; field_29071 a field_29071 + m (Lnet/minecraft/client/gui/components/BossHealthOverlay;)V +c net/minecraft/client/gui/components/Button fim net/minecraft/class_4185 + f I SMALL_WIDTH f field_39499 + f I DEFAULT_WIDTH m field_39500 + f I BIG_WIDTH n field_49479 + f I DEFAULT_HEIGHT o field_39501 + f I DEFAULT_SPACING p field_46856 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; DEFAULT_NARRATION q field_40754 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress r field_22767 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; createNarration s field_40755 + m ()Lnet/minecraft/network/chat/MutableComponent; method_46428 a method_46428 + m (Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46429 a method_46429 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)Lnet/minecraft/client/gui/components/Button$Builder; builder a method_46430 + p 0 message + p 1 onPress + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 onPress + p 7 createNarration + m ()V +c net/minecraft/client/gui/components/Button$Builder fim$a net/minecraft/class_4185$class_7840 + f Lnet/minecraft/network/chat/Component; message a field_40756 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress b field_40757 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip c field_41099 + f I x d field_40759 + f I y e field_40760 + f I width f field_40761 + f I height g field_40762 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; createNarration h field_40763 + m ()Lnet/minecraft/client/gui/components/Button; build a method_46431 + m (I)Lnet/minecraft/client/gui/components/Button$Builder; width a method_46432 + p 1 width + m (II)Lnet/minecraft/client/gui/components/Button$Builder; pos a method_46433 + p 1 x + p 2 y + m (IIII)Lnet/minecraft/client/gui/components/Button$Builder; bounds a method_46434 + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/components/Button$CreateNarration;)Lnet/minecraft/client/gui/components/Button$Builder; createNarration a method_46435 + p 1 createNarration + m (Lnet/minecraft/client/gui/components/Tooltip;)Lnet/minecraft/client/gui/components/Button$Builder; tooltip a method_46436 + p 1 tooltip + m (II)Lnet/minecraft/client/gui/components/Button$Builder; size b method_46437 + p 1 width + p 2 height + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 onPress +c net/minecraft/client/gui/components/Button$CreateNarration fim$b net/minecraft/class_4185$class_7841 +c net/minecraft/client/gui/components/Button$OnPress fim$c net/minecraft/class_4185$class_4241 +c net/minecraft/client/gui/components/ChatComponent fin net/minecraft/class_338 + f Lorg/slf4j/Logger; LOGGER a field_2065 + f I MAX_CHAT_HISTORY b field_32180 + f I MESSAGE_NOT_FOUND c field_39771 + f I MESSAGE_INDENT d field_39772 + f I MESSAGE_TAG_MARGIN_LEFT e field_39773 + f I BOTTOM_MARGIN f field_40389 + f I TIME_BEFORE_MESSAGE_DELETION g field_40390 + f Lnet/minecraft/network/chat/Component; DELETED_CHAT_MESSAGE h field_40391 + f Lnet/minecraft/client/Minecraft; minecraft i field_2062 + f Lnet/minecraft/util/ArrayListDeque; recentChat j field_2063 + c A list of messages previously sent through the chat GUI + f Ljava/util/List; allMessages k field_2061 + c Chat lines to be displayed in the chat box + f Ljava/util/List; trimmedMessages l field_2064 + c List of the ChatLines currently drawn + f I chatScrollbarPos m field_2066 + f Z newMessageSinceScroll n field_2067 + f Ljava/util/List; messageDeletionQueue o field_40392 + m ()V tick a method_45584 + m (D)I getWidth a method_1806 + p 0 width + m (DD)Z handleChatQueueClicked a method_27146 + p 1 mouseX + p 3 mouseY + m (DLnet/minecraft/client/GuiMessage$Line;Lnet/minecraft/client/GuiMessageTag;)Z hasSelectedMessageTag a method_44718 + p 1 x + p 3 line + p 4 tag + m (I)V scrollChat a method_1802 + p 1 posInc + m (ILnet/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion;)Z method_45585 a method_45585 + m (Lnet/minecraft/client/GuiMessage$Line;)I getTagIconLeft a method_44720 + p 1 line + m (Lnet/minecraft/client/GuiMessage;)V logChatMessage a method_45027 + p 1 message + m (Lnet/minecraft/client/gui/GuiGraphics;IIIZ)V render a method_1805 + p 1 guiGraphics + p 2 tickCount + p 3 mouseX + p 4 mouseY + p 5 focused + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/GuiMessageTag$Icon;)V drawTagIcon a method_44719 + p 1 guiGraphics + p 2 left + p 3 bottom + p 4 tagIcon + m (Lnet/minecraft/client/gui/components/ChatComponent$State;)V restoreState a method_58743 + p 1 state + m (Ljava/lang/String;)V addRecentChat a method_1803 + c Adds this string to the list of sent messages, for recall using the up/down arrow keys + p 1 message + m (Lnet/minecraft/network/chat/Component;)V addMessage a method_1812 + p 1 chatComponent + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/GuiMessageTag;)V addMessage a method_44811 + p 1 chatComponent + p 2 headerSignature + p 3 tag + m (Lnet/minecraft/network/chat/MessageSignature;)V deleteMessage a method_44812 + p 1 messageSignature + m (Z)V clearMessages a method_1808 + c Clears the chat. + p 1 clearSentMsgHistory + c Whether to clear the user's sent message history + m ()V rescaleChat b method_1817 + m (D)I getHeight b method_1818 + p 0 height + m (DD)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt b method_1816 + p 1 mouseX + p 3 mouseY + m (I)D getTimeFactor b method_19348 + p 0 counter + m (Lnet/minecraft/client/GuiMessage;)V addMessageToDisplayQueue b method_1815 + p 1 message + m (Lnet/minecraft/network/chat/MessageSignature;)Lnet/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion; deleteMessageOrDelay b method_45587 + p 1 messageSignature + m ()Lnet/minecraft/util/ArrayListDeque; getRecentChat c method_1809 + m (D)D screenToChatX c method_44722 + p 1 x + m (DD)Lnet/minecraft/client/GuiMessageTag; getMessageTagAt c method_44723 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/GuiMessage;)V addMessageToQueue c method_58744 + p 1 message + m ()V resetChatScroll d method_1820 + c Resets the chat scroll (executed when the GUI is closed, among others) + m (D)D screenToChatY d method_44724 + p 1 y + m (DD)I getMessageEndIndexAt d method_45588 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/GuiMessage;)Lnet/minecraft/client/GuiMessage; createDeletedMarker d method_45586 + p 1 message + m ()Z isChatFocused e method_1819 + c Returns {@code true} if the chat GUI is open + m (DD)I getMessageLineIndexAt e method_44725 + p 1 mouseX + p 3 mouseY + m ()I getWidth f method_1811 + m ()I getHeight g method_1810 + m ()D getScale h method_1814 + m ()D defaultUnfocusedPct i method_41831 + m ()I getLinesPerPage j method_1813 + m ()Lnet/minecraft/client/gui/components/ChatComponent$State; storeState k method_58745 + m ()Z isChatHidden l method_23677 + m ()V processMessageDeletionQueue m method_45589 + m ()V refreshTrimmedMessages n method_44813 + m ()I getLineHeight o method_44752 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/ChatComponent$DelayedMessageDeletion fin$a net/minecraft/class_338$class_7731 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1021 + f I deletableAfter b comp_1022 + m ()Lnet/minecraft/network/chat/MessageSignature; signature a comp_1021 + m ()I deletableAfter b comp_1022 + m (Lnet/minecraft/network/chat/MessageSignature;I)V +c net/minecraft/client/gui/components/ChatComponent$State fin$b net/minecraft/class_338$class_9477 + f Ljava/util/List; messages a field_50218 + f Ljava/util/List; history b field_50219 + f Ljava/util/List; delayedMessageDeletions c field_50220 + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 messages + p 2 history + p 3 delayedMessageDeletions +c net/minecraft/client/gui/components/Checkbox fio net/minecraft/class_4286 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SELECTED_HIGHLIGHTED_SPRITE a field_45348 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SELECTED_SPRITE b field_45349 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_HIGHLIGHTED_SPRITE c field_45350 + f Lnet/minecraft/resources/ResourceLocation; CHECKBOX_SPRITE d field_45351 + f I TEXT_COLOR f field_32181 + f I SPACING m field_47105 + f I BOX_PADDING n field_47106 + f Z selected o field_19230 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; onValueChange p field_47107 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; textWidget q field_52293 + m ()Z selected a method_20372 + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)I getAdjustedWidth a method_61128 + p 1 maxWidth + p 2 message + p 3 font + m (Lnet/minecraft/client/gui/Font;)I getBoxSize a method_54786 + p 0 font + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)Lnet/minecraft/client/gui/components/Checkbox$Builder; builder a method_54787 + p 0 message + p 1 font + m (Lnet/minecraft/client/gui/Font;)I getAdjustedHeight b method_61129 + p 1 font + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)I getDefaultWidth b method_61130 + p 0 message + p 1 font + m (IIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;ZLnet/minecraft/client/gui/components/Checkbox$OnValueChange;)V + p 1 x + p 2 y + p 3 maxWidth + p 4 message + p 5 font + p 6 selected + p 7 onValueChange + m ()V +c net/minecraft/client/gui/components/Checkbox$Builder fio$a net/minecraft/class_4286$class_8929 + f Lnet/minecraft/network/chat/Component; message a field_47108 + f Lnet/minecraft/client/gui/Font; font b field_47109 + f I maxWidth c field_52294 + f I x d field_47110 + f I y e field_47111 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; onValueChange f field_47112 + f Z selected g field_47113 + f Lnet/minecraft/client/OptionInstance; option h field_47114 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip i field_47115 + m ()Lnet/minecraft/client/gui/components/Checkbox; build a method_54788 + m (I)Lnet/minecraft/client/gui/components/Checkbox$Builder; maxWidth a method_61131 + p 1 maxWidth + m (II)Lnet/minecraft/client/gui/components/Checkbox$Builder; pos a method_54789 + p 1 x + p 2 y + m (Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/Checkbox$Builder; selected a method_54790 + p 1 option + m (Lnet/minecraft/client/gui/components/Checkbox$OnValueChange;)Lnet/minecraft/client/gui/components/Checkbox$Builder; onValueChange a method_54791 + p 1 onValueChange + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_54792 a method_54792 + m (Lnet/minecraft/client/gui/components/Tooltip;)Lnet/minecraft/client/gui/components/Checkbox$Builder; tooltip a method_54793 + p 1 tooltip + m (Z)Lnet/minecraft/client/gui/components/Checkbox$Builder; selected a method_54794 + p 1 selected + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font +c net/minecraft/client/gui/components/Checkbox$OnValueChange fio$b net/minecraft/class_4286$class_8930 + f Lnet/minecraft/client/gui/components/Checkbox$OnValueChange; NOP a field_47116 + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_54795 a method_54795 + m ()V +c net/minecraft/client/gui/components/CommandSuggestions fip net/minecraft/class_4717 + f Ljava/util/regex/Pattern; WHITESPACE_PATTERN a field_21596 + f Lnet/minecraft/network/chat/Style; UNPARSED_STYLE b field_25885 + f Lnet/minecraft/network/chat/Style; LITERAL_STYLE c field_25886 + f Ljava/util/List; ARGUMENT_STYLES d field_25887 + f Lnet/minecraft/client/Minecraft; minecraft e field_21597 + f Lnet/minecraft/client/gui/screens/Screen; screen f field_21598 + f Lnet/minecraft/client/gui/components/EditBox; input g field_21599 + f Lnet/minecraft/client/gui/Font; font h field_21600 + f Z commandsOnly i field_21601 + f Z onlyShowIfCursorPastError j field_21602 + f I lineStartOffset k field_21603 + f I suggestionLineLimit l field_21604 + f Z anchorToBottom m field_21605 + f I fillColor n field_21606 + f Ljava/util/List; commandUsage o field_21607 + f I commandUsagePosition p field_21608 + f I commandUsageWidth q field_21609 + f Lcom/mojang/brigadier/ParseResults; currentParse r field_21610 + f Ljava/util/concurrent/CompletableFuture; pendingSuggestions s field_21611 + f Lnet/minecraft/client/gui/components/CommandSuggestions$SuggestionsList; suggestions t field_21612 + f Z allowSuggestions u field_21613 + f Z keepSuggestions v field_21614 + f Z allowHiding w field_46191 + m ()Z isVisible a method_53867 + m (D)Z mouseScrolled a method_23921 + p 1 delta + m (DDI)Z mouseClicked a method_23922 + p 1 mouseX + p 3 mouseY + p 5 mouseButton + m (III)Z keyPressed a method_23924 + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lcom/mojang/brigadier/ParseResults;Ljava/lang/String;I)Lnet/minecraft/util/FormattedCharSequence; formatText a method_23925 + p 0 provider + p 1 command + p 2 maxLength + m (Lcom/mojang/brigadier/exceptions/CommandSyntaxException;)Lnet/minecraft/util/FormattedCharSequence; getExceptionMessage a method_30505 + p 0 exception + m (Lcom/mojang/brigadier/suggestion/Suggestions;)Ljava/util/List; sortSuggestions a method_30104 + p 1 suggestions + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderUsage a method_44932 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_23923 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Ljava/lang/String;)I getLastWordIndex a method_23930 + p 0 text + m (Ljava/lang/String;I)Lnet/minecraft/util/FormattedCharSequence; formatChat a method_23931 + p 1 command + p 2 maxLength + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; calculateSuggestionSuffix a method_23936 + p 0 inputText + p 1 suggestionText + m (Lnet/minecraft/ChatFormatting;)Z fillNodeUsage a method_23929 + p 1 chatFormatting + m (Z)V setAllowSuggestions a method_23933 + p 1 autoSuggest + m ()Lnet/minecraft/network/chat/Component; getUsageNarration b method_53868 + m (Lnet/minecraft/client/gui/GuiGraphics;II)Z renderSuggestions b method_44933 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Z)V setAllowHiding b method_53869 + p 1 allowHiding + m ()V hide c method_44931 + m (Z)V showSuggestions c method_23920 + p 1 narrateFirstSuggestion + m ()V updateCommandInfo d method_23934 + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage e method_23958 + m ()V updateUsageInfo f method_23937 + m ()V method_23939 g method_23939 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/components/EditBox;Lnet/minecraft/client/gui/Font;ZZIIZI)V + p 1 minecraft + p 2 screen + p 3 input + p 4 font + p 5 commandsOnly + p 6 onlyShowIfCursorPastError + p 7 lineStartOffset + p 8 suggestionLineLimit + p 9 anchorToBottom + p 10 fillColor + m ()V +c net/minecraft/client/gui/components/CommandSuggestions$SuggestionsList fip$a net/minecraft/class_4717$class_464 + f Lnet/minecraft/client/gui/components/CommandSuggestions; field_21615 a field_21615 + f Lnet/minecraft/client/renderer/Rect2i; rect b field_2771 + f Ljava/lang/String; originalContents c field_2768 + f Ljava/util/List; suggestionList d field_25709 + f I offset e field_2769 + f I current f field_2766 + f Lnet/minecraft/world/phys/Vec2; lastMouse g field_2767 + f Z tabCycles h field_2765 + f I lastNarratedEntry i field_21630 + m ()V useSuggestion a method_2375 + m (D)Z mouseScrolled a method_2370 + p 1 delta + m (I)V cycle a method_2371 + p 1 change + m (III)Z mouseClicked a method_2372 + p 1 mouseX + p 2 mouseY + p 3 mouseButton + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_2373 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage b method_23960 + m (I)V select b method_2374 + p 1 index + m (III)Z keyPressed b method_2377 + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/CommandSuggestions;IIILjava/util/List;Z)V + p 2 xPos + p 3 yPos + p 4 width + p 5 suggestionList + p 6 narrateFirstSuggestion +c net/minecraft/client/gui/components/CommonButtons fiq net/minecraft/class_8082 + m (ILnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton; language a method_48592 + p 0 width + p 1 onPress + p 2 iconOnly + m (ILnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton; accessibility b method_48594 + p 0 width + p 1 onPress + p 2 iconOnly + m ()V +c net/minecraft/client/gui/components/ComponentRenderUtils fir net/minecraft/class_341 + f Lnet/minecraft/util/FormattedCharSequence; INDENT a field_25263 + m (Lnet/minecraft/client/ComponentCollector;Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_27536 a method_27536 + m (Ljava/lang/String;)Ljava/lang/String; stripColor a method_1849 + p 0 text + m (Ljava/util/List;Lnet/minecraft/network/chat/FormattedText;Ljava/lang/Boolean;)V method_30886 a method_30886 + m (Lnet/minecraft/network/chat/FormattedText;ILnet/minecraft/client/gui/Font;)Ljava/util/List; wrapComponents a method_1850 + p 0 component + p 1 maxWidth + p 2 font + m ()V + m ()V +c net/minecraft/client/gui/components/ContainerObjectSelectionList fis net/minecraft/class_4265 + m (Lnet/minecraft/client/gui/components/ContainerObjectSelectionList$Entry;)Z method_48207 a method_48207 + m (Lnet/minecraft/client/Minecraft;IIII)V + p 1 minecraft + p 2 width + p 3 height + p 4 y + p 5 itemHeight +c net/minecraft/client/gui/components/ContainerObjectSelectionList$1 fis$1 net/minecraft/class_4265$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection a field_41804 + m ()V +c net/minecraft/client/gui/components/ContainerObjectSelectionList$Entry fis$a net/minecraft/class_4265$class_4266 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_19077 + f Lnet/minecraft/client/gui/narration/NarratableEntry; lastNarratable b field_33782 + f Z dragging c field_19078 + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration a method_37024 + p 1 narrationElementOutput + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;I)Lnet/minecraft/client/gui/ComponentPath; focusPathAtIndex a method_48208 + p 1 event + p 2 index + m ()Ljava/util/List; narratables b method_37025 + m ()V +c net/minecraft/client/gui/components/CycleButton fit net/minecraft/class_5676 + f Ljava/util/function/BooleanSupplier; DEFAULT_ALT_LIST_SELECTOR a field_27961 + f Ljava/util/List; BOOLEAN_OPTIONS b field_27962 + f Lnet/minecraft/network/chat/Component; name c field_27963 + f I index d field_27964 + f Ljava/lang/Object; value f field_27965 + f Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; values m field_27966 + f Ljava/util/function/Function; valueStringifier n field_27967 + f Ljava/util/function/Function; narrationProvider o field_27968 + f Lnet/minecraft/client/gui/components/CycleButton$OnValueChange; onValueChange p field_27969 + f Z displayOnlyValue q field_27971 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier r field_27970 + m ()Ljava/lang/Object; getValue a method_32603 + m (I)V cycleValue a method_32612 + p 1 delta + m (Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_32604 a method_32604 + m (Ljava/lang/Object;)V setValue a method_32605 + p 1 value + m (Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/CycleButton$Builder; builder a method_32606 + p 0 valueStringifier + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/CycleButton$Builder; booleanBuilder a method_32607 + p 0 componentOn + p 1 componentOff + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Boolean;)Lnet/minecraft/network/chat/Component; method_32608 a method_32608 + m (I)Ljava/lang/Object; getCycledValue b method_37027 + p 1 delta + m (Ljava/lang/Object;)V updateValue b method_32609 + p 1 value + m (Z)Lnet/minecraft/client/gui/components/CycleButton$Builder; onOffBuilder b method_32613 + p 0 initialValue + m ()Lnet/minecraft/network/chat/MutableComponent; createDefaultNarrationMessage c method_32611 + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/Component; createLabelForValue c method_37026 + p 1 value + m (Ljava/lang/Object;)Lnet/minecraft/network/chat/MutableComponent; createFullName d method_32610 + p 1 value + m ()Lnet/minecraft/client/gui/components/CycleButton$Builder; onOffBuilder e method_32614 + m ()V updateTooltip f method_47403 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;ILjava/lang/Object;Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier;Ljava/util/function/Function;Ljava/util/function/Function;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;Lnet/minecraft/client/OptionInstance$TooltipSupplier;Z)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 name + p 7 index + p 8 value + p 9 values + p 10 valueStringifier + p 11 narrationProvider + p 12 onValueChange + p 13 tooltipSupplier + p 14 displayOnlyValue + m ()V +c net/minecraft/client/gui/components/CycleButton$Builder fit$a net/minecraft/class_5676$class_5677 + f I initialIndex a field_27972 + f Ljava/lang/Object; initialValue b field_27973 + f Ljava/util/function/Function; valueStringifier c field_27974 + f Lnet/minecraft/client/OptionInstance$TooltipSupplier; tooltipSupplier d field_27975 + f Ljava/util/function/Function; narrationProvider e field_27976 + f Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; values f field_27977 + f Z displayOnlyValue g field_27978 + m ()Lnet/minecraft/client/gui/components/CycleButton$Builder; displayOnlyValue a method_32616 + m (IIIILnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/CycleButton; create a method_35723 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 name + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;)Lnet/minecraft/client/gui/components/CycleButton; create a method_32617 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 name + p 6 onValueChange + m (Lnet/minecraft/client/OptionInstance$TooltipSupplier;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withTooltip a method_32618 + p 1 tooltipSupplier + m (Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_42729 + p 1 values + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Object;)V method_35724 a method_35724 + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withInitialValue a method_32619 + p 1 initialValue + m (Ljava/util/Collection;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32620 + p 1 values + m (Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32621 + p 1 defaultList + p 2 selectedList + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32622 + p 1 altListSelector + p 2 defaultList + p 3 selectedList + m (Ljava/util/function/Function;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withCustomNarration a method_32623 + p 1 narrationProvider + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/CycleButton$OnValueChange;)Lnet/minecraft/client/gui/components/CycleButton; create a method_57720 + p 1 message + p 2 onValueChange + m ([Ljava/lang/Object;)Lnet/minecraft/client/gui/components/CycleButton$Builder; withValues a method_32624 + p 1 values + m (Ljava/lang/Object;)Lnet/minecraft/client/gui/components/Tooltip; method_32625 b method_32625 + m (Ljava/util/function/Function;)V + p 1 valueStringifier +c net/minecraft/client/gui/components/CycleButton$OnValueChange fit$b net/minecraft/class_5676$class_5678 +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier fit$c net/minecraft/class_5676$class_5680 + m ()Ljava/util/List; getSelectedList a method_32626 + m (Ljava/util/Collection;)Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; create a method_32627 + p 0 values + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; create a method_32628 + p 0 altListSelector + p 1 defaultList + p 2 selectedList + m ()Ljava/util/List; getDefaultList b method_32629 +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier$1 fit$c$1 net/minecraft/class_5676$class_5680$1 + f Ljava/util/List; val$copy a field_27979 + m (Ljava/util/List;)V +c net/minecraft/client/gui/components/CycleButton$ValueListSupplier$2 fit$c$2 net/minecraft/class_5676$class_5680$2 + f Ljava/util/function/BooleanSupplier; val$altSelector a field_27980 + f Ljava/util/List; val$altCopy b field_27981 + f Ljava/util/List; val$defaultCopy c field_27982 + m (Ljava/util/function/BooleanSupplier;Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/gui/components/DebugScreenOverlay fiu net/minecraft/class_340 + f I COLOR_GREY a field_32187 + f I MARGIN_RIGHT b field_32188 + f I MARGIN_LEFT c field_32189 + f I MARGIN_TOP d field_32190 + f Ljava/util/Map; HEIGHTMAP_NAMES e field_19274 + f Lnet/minecraft/client/Minecraft; minecraft f field_2079 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay$AllocationRateCalculator; allocationRateCalculator g field_38985 + f Lnet/minecraft/client/gui/Font; font h field_2081 + f Lnet/minecraft/world/phys/HitResult; block i field_2082 + f Lnet/minecraft/world/phys/HitResult; liquid j field_2083 + f Lnet/minecraft/world/level/ChunkPos; lastPos k field_2085 + f Lnet/minecraft/world/level/chunk/LevelChunk; clientChunk l field_2084 + f Ljava/util/concurrent/CompletableFuture; serverChunk m field_2080 + f Z renderDebug n field_45988 + f Z renderProfilerChart o field_45989 + f Z renderFpsCharts p field_45990 + f Z renderNetworkCharts q field_45991 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; frameTimeLogger r field_45992 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; tickTimeLogger s field_45993 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; pingLogger t field_45994 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; bandwidthLogger u field_45995 + f Ljava/util/Map; remoteSupportingLoggers v field_48931 + f Lnet/minecraft/client/gui/components/debugchart/FpsDebugChart; fpsChart w field_45910 + f Lnet/minecraft/client/gui/components/debugchart/TpsDebugChart; tpsChart x field_45913 + f Lnet/minecraft/client/gui/components/debugchart/PingDebugChart; pingChart y field_45911 + f Lnet/minecraft/client/gui/components/debugchart/BandwidthDebugChart; bandwidthChart z field_45912 + m ()V clearChunkCache a method_1842 + m (J)V logFrameDuration a method_53534 + p 1 frameDuration + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_40206 a method_40206 + m (Lnet/minecraft/server/level/ChunkResult;)Lnet/minecraft/world/level/chunk/LevelChunk; method_20541 a method_20541 + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40203 a method_40203 + m (Lnet/minecraft/world/level/biome/Biome;)Ljava/lang/String; method_40204 a method_40204 + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/Float; method_54796 a method_54796 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1846 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/util/List;Z)V renderLines a method_51745 + p 1 guiGraphics + p 2 lines + p 3 leftSide + m (Lnet/minecraft/client/server/IntegratedServer;)Ljava/util/Optional; method_1841 a method_1841 + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/world/entity/MobCategory;)Ljava/lang/String; method_27870 a method_27870 + m (Ljava/util/EnumMap;)V method_20455 a method_20455 + m (Ljava/util/Map$Entry;)Ljava/lang/String; getPropertyValueString a method_1845 + p 1 entry + m (Lnet/minecraft/core/Holder;)Ljava/lang/String; printBiome a method_40205 + p 0 biomeHolder + m ([JLnet/minecraft/util/debugchart/RemoteDebugSampleType;)V logRemoteSample a method_56828 + p 1 sample + p 2 sampleType + m ()Ljava/util/List; getGameInformation b method_1835 + m (J)J bytesToMegabytes b method_1838 + p 0 bytes + m (Lnet/minecraft/tags/TagKey;)Ljava/lang/String; method_40207 b method_40207 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawGameInformation b method_1847 + p 1 guiGraphics + m ()Ljava/util/List; getSystemInformation c method_1839 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSystemInformation c method_1848 + p 1 guiGraphics + m ()Z showDebugScreen d method_53536 + m (Lnet/minecraft/client/gui/GuiGraphics;)V method_51746 d method_51746 + m ()Z showProfilerChart e method_53537 + m ()Z showNetworkCharts f method_53538 + m ()Z showFpsCharts g method_56829 + m ()V toggleOverlay h method_53539 + m ()V toggleNetworkCharts i method_53540 + m ()V toggleFpsCharts j method_53541 + m ()V toggleProfilerChart k method_53542 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getTickTimeLogger l method_56577 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getPingLogger m method_53543 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getBandwidthLogger n method_53544 + m ()V reset o method_53545 + m ()Lnet/minecraft/server/level/ServerLevel; getServerLevel p method_20603 + m ()Ljava/lang/String; getServerChunkStats q method_27871 + m ()Lnet/minecraft/world/level/Level; getLevel r method_1840 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getServerChunk s method_1834 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; getClientChunk t method_1836 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/DebugScreenOverlay$1 fiu$1 net/minecraft/class_340$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_2086 + m ()V +c net/minecraft/client/gui/components/DebugScreenOverlay$AllocationRateCalculator fiu$a net/minecraft/class_340$class_7412 + f I UPDATE_INTERVAL_MS a field_38986 + f Ljava/util/List; GC_MBEANS b field_38987 + f J lastTime c field_38988 + f J lastHeapUsage d field_38989 + f J lastGcCounts e field_38990 + f J lastRate f field_38991 + m ()J gcCounts a method_43447 + m (J)J bytesAllocatedPerSecond a method_43448 + p 1 heapUsage + m ()V + m ()V +c net/minecraft/client/gui/components/EditBox fiv net/minecraft/class_342 + f Ljava/lang/String; suggestion A field_2106 + f Ljava/util/function/Consumer; responder B field_2088 + f Ljava/util/function/Predicate; filter C field_2104 + c Called to check if the text is valid + f Ljava/util/function/BiFunction; formatter D field_2099 + f Lnet/minecraft/network/chat/Component; hint E field_41100 + f J focusedTime F field_45352 + f I BACKWARDS a field_32194 + f I FORWARDS b field_32195 + f I DEFAULT_TEXT_COLOR c field_32196 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES d field_45914 + f I CURSOR_INSERT_WIDTH e field_32197 + f I CURSOR_INSERT_COLOR f field_32198 + f Ljava/lang/String; CURSOR_APPEND_CHARACTER m field_32199 + f I CURSOR_BLINK_INTERVAL_MS n field_45354 + f Lnet/minecraft/client/gui/Font; font o field_2105 + f Ljava/lang/String; value p field_2092 + c Has the current text being edited on the textbox. + f I maxLength q field_2108 + f Z bordered r field_2095 + f Z canLoseFocus s field_2096 + c if true the textbox can lose focus by clicking elsewhere on the screen + f Z isEditable u field_2094 + c If this value is true along with isFocused, keyTyped will process the keys. + f I displayPos v field_2103 + c The current character index that should be used as start of the rendered text. + f I cursorPos w field_2102 + f I highlightPos x field_2101 + c other selection position, maybe the same as the cursor + f I textColor y field_2100 + f I textColorUneditable z field_2098 + m ()Ljava/lang/String; getValue a method_1882 + c Returns the contents of the textbox + m (I)V deleteWords a method_1877 + c Deletes the given number of words from the current cursor's position, unless there is currently a selection, in which case the selection is deleted instead. + p 1 num + m (II)I getWordPosition a method_1869 + c Gets the starting index of the word at a distance of the specified number of words away from the given position. + p 1 numWords + p 2 pos + m (IIZ)I getWordPosition a method_1864 + c Like getNthWordFromPos (which wraps this), but adds option for skipping consecutive spaces + p 1 numWords + p 2 pos + p 3 skipConsecutiveSpaces + m (IZ)V moveCursor a method_1855 + p 1 delta + p 2 select + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderHighlight a method_1886 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Ljava/lang/String;)V setValue a method_1852 + c Sets the text of the textbox, and moves the cursor to the end. + p 1 text + m (Ljava/lang/String;Ljava/lang/Integer;)Lnet/minecraft/util/FormattedCharSequence; method_1873 a method_1873 + m (Ljava/util/function/BiFunction;)V setFormatter a method_1854 + p 1 textFormatter + m (Ljava/util/function/Predicate;)V setFilter a method_1890 + p 1 validator + m ()Ljava/lang/String; getHighlighted b method_1866 + c Returns the text between the cursor and selectionEnd. + m (I)V deleteChars b method_1878 + c Deletes the given number of characters from the current cursor's position, unless there is currently a selection, in which case the selection is deleted instead. + p 1 num + m (IZ)V moveCursorTo b method_1883 + p 1 delta + p 2 select + m (Ljava/lang/String;)V insertText b method_1867 + c Adds the given text after the cursor, or replaces the currently selected text if there is a selection. + p 1 textToWrite + m (Ljava/util/function/Consumer;)V setResponder b method_1863 + p 1 responder + m (Z)V moveCursorToStart b method_1870 + p 1 select + m ()Z canConsumeInput c method_20315 + m (I)V deleteCharsToPos c method_55506 + p 1 num + m (Ljava/lang/String;)V setSuggestion c method_1887 + p 1 suggestion + m (Lnet/minecraft/network/chat/Component;)V setHint c method_47404 + p 1 hint + m (Z)V moveCursorToEnd c method_1872 + p 1 select + m (I)I getWordPosition d method_1853 + c Gets the starting index of the word at the specified number of words away from the cursor position. + p 1 numWords + m (Ljava/lang/String;)V onValueChange d method_1874 + p 1 newText + m (Z)V setBordered d method_1858 + c Sets whether the background and outline of this text box should be drawn. + p 1 enableBackgroundDrawing + m ()I getCursorPosition e method_1881 + c Returns the current position of the cursor. + m (I)V setCursorPosition e method_1875 + p 1 pos + m (Z)V setEditable e method_1888 + c Sets whether this text box is enabled. Disabled text boxes cannot be typed in. + p 1 enabled + m ()Z isBordered f method_1851 + c Gets whether the background and outline of this text box should be drawn (true if so). + m (I)V setMaxLength f method_1880 + c Sets the maximum length for the text in this text box. If the current text is longer than this length, the current text will be trimmed. + p 1 length + m (Z)V setCanLoseFocus f method_1856 + c Sets whether this text box loses focus when something other than it is clicked. + p 1 canLoseFocus + m (I)V setTextColor g method_1868 + c Sets the color to use when drawing this text box's text. A different color is used if this text box is disabled. + p 1 color + m (Z)V setVisible g method_1862 + c Sets whether this textbox is visible. + p 1 isVisible + m ()I getInnerWidth h method_1859 + c Returns the width of the textbox depending on if background drawing is enabled. + m (I)V setTextColorUneditable h method_1860 + c Sets the color to use for text in this text box when this text box is disabled. + p 1 color + m ()Z isVisible i method_1885 + c Returns {@code true} if this textbox is visible. + m (I)V setHighlightPos i method_1884 + c Sets the position of the selection anchor (the selection anchor and the cursor position mark the edges of the selection). If the anchor is set beyond the bounds of the current text, it will be put back inside. + p 1 position + m ()I getMaxLength j method_1861 + c Returns the maximum number of character that can be contained in this textbox. + m ()Z isEditable k method_20316 + m (I)I getScreenX p method_1889 + p 1 charNum + m (I)V deleteText q method_16873 + p 1 count + m (I)I getCursorPos r method_27537 + p 1 delta + m (I)V scrollTo s method_52719 + p 1 position + m (Lnet/minecraft/client/gui/Font;IILnet/minecraft/network/chat/Component;)V + p 1 font + p 2 width + p 3 height + p 4 message + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 message + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/client/gui/components/EditBox;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 editBox + p 7 message + m ()V +c net/minecraft/client/gui/components/FittingMultiLineTextWidget fiw net/minecraft/class_8577 + f Lnet/minecraft/client/gui/Font; font a field_44947 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; multilineWidget b field_44948 + m (I)Lnet/minecraft/client/gui/components/FittingMultiLineTextWidget; setColor a method_52234 + p 1 color + m ()Z showingScrollBar j method_53546 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/FocusableTextWidget fix net/minecraft/class_8019 + f I DEFAULT_PADDING a field_41802 + f Z alwaysShowBorder b field_45355 + f I padding c field_49480 + m (I)V containWithin b method_57721 + p 1 width + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 maxWidth + p 2 message + p 3 font + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;I)V + p 1 maxWidth + p 2 message + p 3 font + p 4 padding + m (ILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;ZI)V + p 1 maxWidth + p 2 message + p 3 font + p 4 alwaysShowBorder + p 5 padding +c net/minecraft/client/gui/components/ImageButton fiy net/minecraft/class_344 + f Lnet/minecraft/client/gui/components/WidgetSprites; sprites a field_45356 + m (IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprites + p 6 onPress + m (IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprites + p 6 onPress + p 7 message + m (IILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V + p 1 width + p 2 height + p 3 sprites + p 4 onPress + p 5 message +c net/minecraft/client/gui/components/ImageWidget fiz net/minecraft/class_8208 + m (IILnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/components/ImageWidget; sprite a method_52720 + p 0 width + p 1 height + p 2 sprite + m (IILnet/minecraft/resources/ResourceLocation;II)Lnet/minecraft/client/gui/components/ImageWidget; texture a method_52721 + p 0 width + p 1 height + p 2 texture + p 3 textureWidth + p 4 textureHeight + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/components/ImageWidget$Sprite fiz$a net/minecraft/class_8208$class_8659 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45357 + m (IIIILnet/minecraft/resources/ResourceLocation;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 sprite +c net/minecraft/client/gui/components/ImageWidget$Texture fiz$b net/minecraft/class_8208$class_8660 + f Lnet/minecraft/resources/ResourceLocation; texture a field_45358 + f I textureWidth b field_45359 + f I textureHeight c field_45360 + m (IIIILnet/minecraft/resources/ResourceLocation;II)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 texture + p 6 textureWidth + p 7 textureHeight +c net/minecraft/client/gui/components/LerpingBossEvent fja net/minecraft/class_345 + f F targetPercent h field_2129 + f J setTime i field_2128 + f J LERP_MILLISECONDS j field_32204 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/BossEvent$BossBarColor;Lnet/minecraft/world/BossEvent$BossBarOverlay;ZZZ)V + p 1 id + p 2 name + p 3 progress + p 4 color + p 5 overlay + p 6 darkenScreen + p 7 bossMusic + p 8 worldFog +c net/minecraft/client/gui/components/LoadingDotsWidget fjb net/minecraft/class_8661 + f Lnet/minecraft/client/gui/Font; font a field_45361 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 message +c net/minecraft/client/gui/components/LockIconButton fjc net/minecraft/class_347 + f Z locked a field_2131 + m ()Z isLocked a method_1896 + m (Z)V setLocked b method_1895 + p 1 locked + m (IILnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 x + p 2 y + p 3 onPress +c net/minecraft/client/gui/components/LockIconButton$Icon fjc$a net/minecraft/class_347$class_348 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED a field_2137 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED_HOVER b field_2138 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; LOCKED_DISABLED c field_2139 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED d field_2132 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED_HOVER e field_2133 + f Lnet/minecraft/client/gui/components/LockIconButton$Icon; UNLOCKED_DISABLED f field_2140 + f Lnet/minecraft/resources/ResourceLocation; sprite g field_45362 + f [Lnet/minecraft/client/gui/components/LockIconButton$Icon; $VALUES h field_2136 + m ()[Lnet/minecraft/client/gui/components/LockIconButton$Icon; $values a method_36870 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;)V + p 3 sprite + m ()V +c net/minecraft/client/gui/components/LogoRenderer fjd net/minecraft/class_8020 + f Lnet/minecraft/resources/ResourceLocation; MINECRAFT_LOGO a field_41805 + f Lnet/minecraft/resources/ResourceLocation; EASTER_EGG_LOGO b field_44540 + f Lnet/minecraft/resources/ResourceLocation; MINECRAFT_EDITION c field_41806 + f I LOGO_WIDTH d field_41807 + f I LOGO_HEIGHT e field_41808 + f I DEFAULT_HEIGHT_OFFSET f field_41809 + f I LOGO_TEXTURE_WIDTH g field_44541 + f I LOGO_TEXTURE_HEIGHT h field_44542 + f I EDITION_WIDTH i field_44543 + f I EDITION_HEIGHT j field_44544 + f I EDITION_TEXTURE_WIDTH k field_44545 + f I EDITION_TEXTURE_HEIGHT l field_44546 + f I EDITION_LOGO_OVERLAP m field_44547 + f Z showEasterEgg n field_41810 + f Z keepLogoThroughFade o field_41811 + m (Lnet/minecraft/client/gui/GuiGraphics;IF)V renderLogo a method_48209 + p 1 guiGraphics + p 2 screenWidth + p 3 transparency + m (Lnet/minecraft/client/gui/GuiGraphics;IFI)V renderLogo a method_48210 + p 1 guiGraphics + p 2 screenWidth + p 3 transparency + p 4 height + m (Z)V + p 1 keepLogoThroughFade + m ()V +c net/minecraft/client/gui/components/MultiLineEditBox fje net/minecraft/class_7529 + f I CURSOR_INSERT_WIDTH a field_39502 + f I CURSOR_INSERT_COLOR b field_39503 + f Ljava/lang/String; CURSOR_APPEND_CHARACTER c field_39504 + f I TEXT_COLOR d field_39505 + f I PLACEHOLDER_TEXT_COLOR e field_39506 + f I CURSOR_BLINK_INTERVAL_MS f field_45363 + f Lnet/minecraft/client/gui/Font; font m field_39507 + f Lnet/minecraft/network/chat/Component; placeholder n field_39508 + f Lnet/minecraft/client/gui/components/MultilineTextField; textField o field_39509 + f J focusedTime p field_45364 + m (I)V setCharacterLimit a method_44402 + p 1 characterLimit + m (Ljava/lang/String;)V setValue a method_44400 + p 1 fullText + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderHighlight b method_44403 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Ljava/util/function/Consumer;)V setValueListener b method_44401 + p 1 valueListener + m (DD)V seekCursorScreen e method_44404 + p 1 mouseX + p 3 mouseY + m ()Ljava/lang/String; getValue j method_44405 + m ()V scrollToCursor k method_44407 + m ()D getDisplayableLineCount l method_44408 + m (Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 font + p 2 x + p 3 y + p 4 width + p 5 height + p 6 placeholder + p 7 message +c net/minecraft/client/gui/components/MultiLineLabel fjf net/minecraft/class_5489 + f Lnet/minecraft/client/gui/components/MultiLineLabel; EMPTY a field_26528 + m ()I getLineCount a method_30887 + m (Lnet/minecraft/client/gui/Font;II[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_61132 + p 0 font + p 1 maxWidth + p 2 maxRows + p 3 components + m (Lnet/minecraft/client/gui/Font;I[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_61133 + p 0 font + p 1 maxWidth + p 2 components + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_30890 + p 0 font + p 1 component + p 2 maxWidth + m (Lnet/minecraft/client/gui/Font;[Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; create a method_30892 + p 0 font + p 1 components + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderCentered a method_30888 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderCentered a method_30889 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m ()I getWidth b method_44048 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderLeftAligned b method_30893 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)I renderLeftAlignedNoShadow c method_30896 + p 1 guiGraphics + p 2 x + p 3 y + p 4 lineHeight + p 5 color + m ()V +c net/minecraft/client/gui/components/MultiLineLabel$1 fjf$1 net/minecraft/class_5489$1 + m ()V +c net/minecraft/client/gui/components/MultiLineLabel$2 fjf$2 net/minecraft/class_5489$2 + f Lnet/minecraft/client/gui/Font; val$font b field_26529 + f [Lnet/minecraft/network/chat/Component; val$messages c field_52295 + f I val$maxWidth d field_52296 + f I val$maxLines e field_52297 + f Ljava/util/List; cachedTextAndWidth f field_52298 + f Lnet/minecraft/locale/Language; splitWithLanguage g field_52299 + m ()Ljava/util/List; getSplitMessage c method_61134 + m (Lnet/minecraft/client/gui/Font;[Lnet/minecraft/network/chat/Component;II)V +c net/minecraft/client/gui/components/MultiLineLabel$TextAndWidth fjf$a net/minecraft/class_5489$class_5490 + f Lnet/minecraft/util/FormattedCharSequence; text a comp_2877 + f I width b comp_2878 + m ()Lnet/minecraft/util/FormattedCharSequence; text a comp_2877 + m ()I width b comp_2878 + m (Lnet/minecraft/util/FormattedCharSequence;I)V +c net/minecraft/client/gui/components/MultiLineTextWidget fjg net/minecraft/class_7940 + f Ljava/util/OptionalInt; maxWidth a field_42486 + f Ljava/util/OptionalInt; maxRows b field_42487 + f Lnet/minecraft/util/SingleKeyCache; cache c field_42488 + f Z centered d field_41343 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/components/MultiLineTextWidget$CacheKey;)Lnet/minecraft/client/gui/components/MultiLineLabel; method_48980 a method_48980 + m (Z)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setCentered b method_48981 + p 1 centered + m ()Lnet/minecraft/client/gui/components/MultiLineTextWidget$CacheKey; getFreshCacheKey c method_48982 + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setColor c method_48983 + p 1 color + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setMaxWidth d method_48984 + p 1 maxWidth + m (I)Lnet/minecraft/client/gui/components/MultiLineTextWidget; setMaxRows e method_48985 + p 1 maxRows + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font + m (IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 message + p 4 font +c net/minecraft/client/gui/components/MultiLineTextWidget$CacheKey fjg$a net/minecraft/class_7940$class_8131 + f Lnet/minecraft/network/chat/Component; message a comp_1256 + f I maxWidth b comp_1257 + f Ljava/util/OptionalInt; maxRows c comp_1258 + m ()Lnet/minecraft/network/chat/Component; message a comp_1256 + m ()I maxWidth b comp_1257 + m ()Ljava/util/OptionalInt; maxRows c comp_1258 + m (Lnet/minecraft/network/chat/Component;ILjava/util/OptionalInt;)V +c net/minecraft/client/gui/components/MultilineTextField fjh net/minecraft/class_7530 + f I NO_CHARACTER_LIMIT a field_39511 + f I LINE_SEEK_PIXEL_BIAS b field_39512 + f Lnet/minecraft/client/gui/Font; font c field_39513 + f Ljava/util/List; displayLines d field_39514 + f Ljava/lang/String; value e field_39515 + f I cursor f field_39516 + f I selectCursor g field_39517 + f Z selecting h field_39518 + f I characterLimit i field_39519 + f I width j field_39520 + f Ljava/util/function/Consumer; valueListener k field_39521 + f Ljava/lang/Runnable; cursorListener l field_39522 + m ()I characterLimit a method_44409 + m (DD)V seekCursorToPoint a method_44410 + p 1 x + p 3 y + m (I)V setCharacterLimit a method_44411 + p 1 characterLimit + m (Lnet/minecraft/client/gui/components/Whence;I)V seekCursor a method_44412 + p 1 whence + p 2 position + m (Ljava/lang/Runnable;)V setCursorListener a method_44413 + p 1 cursorListener + m (Ljava/lang/String;)V setValue a method_44414 + p 1 fullText + m (Ljava/util/function/Consumer;)V setValueListener a method_44415 + p 1 valueListener + m (Lnet/minecraft/network/chat/Style;II)V method_44416 a method_44416 + m (Z)V setSelecting a method_44417 + p 1 selecting + m ()Z hasCharacterLimit b method_44418 + m (I)V deleteText b method_44419 + p 1 length + m (Ljava/lang/String;)V insertText b method_44420 + p 1 text + m ()Ljava/lang/String; value c method_44421 + m (I)Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getLineView c method_44422 + p 1 lineNumber + m (Ljava/lang/String;)Ljava/lang/String; truncateFullText c method_44423 + p 1 fullText + m ()I cursor d method_44424 + m (I)V seekCursorLine d method_44425 + p 1 offset + m (Ljava/lang/String;)Ljava/lang/String; truncateInsertionText d method_44426 + p 1 text + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getSelected e method_44427 + m (I)Z keyPressed e method_44428 + p 1 keyCode + m (Ljava/lang/String;)V method_44429 e method_44429 + m ()I getLineCount f method_44430 + m (I)Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getCursorLineView f method_44431 + p 1 offset + m ()I getLineAtCursor g method_44432 + m (I)I getWordEndPosition g method_44433 + p 1 cursor + m ()Ljava/lang/Iterable; iterateLines h method_44434 + m ()Z hasSelection i method_44435 + m ()Ljava/lang/String; getSelectedText j method_44436 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getPreviousWord k method_44437 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getNextWord l method_44438 + m ()Lnet/minecraft/client/gui/components/MultilineTextField$StringView; getCursorLineView m method_44439 + m ()V onValueChange n method_44440 + m ()V reflowDisplayLines o method_44441 + m ()V method_44442 p method_44442 + m (Lnet/minecraft/client/gui/Font;I)V + p 1 font + p 2 width +c net/minecraft/client/gui/components/MultilineTextField$1 fjh$1 net/minecraft/class_7530$1 + f [I $SwitchMap$net$minecraft$client$gui$components$Whence a field_39523 + m ()V +c net/minecraft/client/gui/components/MultilineTextField$StringView fjh$a net/minecraft/class_7530$class_7531 + f I beginIndex a comp_862 + f I endIndex b comp_863 + f Lnet/minecraft/client/gui/components/MultilineTextField$StringView; EMPTY c field_39524 + m ()I beginIndex a comp_862 + m ()I endIndex b comp_863 + m (II)V + m ()V +c net/minecraft/client/gui/components/ObjectSelectionList fji net/minecraft/class_4280 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION a field_33783 + m (Lnet/minecraft/client/Minecraft;IIII)V + m ()V +c net/minecraft/client/gui/components/ObjectSelectionList$Entry fji$a net/minecraft/class_4280$class_4281 + m ()Lnet/minecraft/network/chat/Component; getNarration a method_37006 + m ()V +c net/minecraft/client/gui/components/OptionsList fjj net/minecraft/class_353 + f I BIG_BUTTON_WIDTH a field_49481 + f I DEFAULT_ITEM_HEIGHT m field_49482 + f Lnet/minecraft/client/gui/screens/options/OptionsSubScreen; screen n field_49483 + m (Lnet/minecraft/client/OptionInstance;)V addBig a method_20406 + p 1 option + m (Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/components/AbstractWidget;)V addSmall a method_20407 + p 1 leftOption + p 2 rightOption + m (Ljava/util/List;)V addSmall a method_58227 + p 1 options + m ([Lnet/minecraft/client/OptionInstance;)V addSmall a method_20408 + p 1 options + m (Lnet/minecraft/client/OptionInstance;)Lnet/minecraft/client/gui/components/AbstractWidget; findOption b method_31046 + p 1 option + m ()V applyUnsavedChanges c method_59869 + m (DD)Ljava/util/Optional; getMouseOver e method_29624 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/Minecraft;ILnet/minecraft/client/gui/screens/options/OptionsSubScreen;)V + p 1 minecraft + p 2 width + p 3 screen +c net/minecraft/client/gui/components/OptionsList$Entry fjj$a net/minecraft/class_353$class_354 + f Ljava/util/List; children a field_18214 + f Lnet/minecraft/client/gui/screens/Screen; screen b field_49485 + f I X_OFFSET c field_49484 + m (Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/components/AbstractWidget;Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/OptionsList$Entry; small a method_20410 + p 0 leftOption + p 1 rightOption + p 2 screen + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/Screen;)Lnet/minecraft/client/gui/components/OptionsList$Entry; big a method_20409 + p 0 options + p 1 screen + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 children + p 2 screen +c net/minecraft/client/gui/components/OptionsList$OptionEntry fjj$b net/minecraft/class_353$class_9379 + f Ljava/util/Map; options a field_49893 + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)Lnet/minecraft/client/gui/components/OptionsList$OptionEntry; small a method_58228 + p 0 options + p 1 leftOption + p 2 rightOption + p 3 screen + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/OptionInstance;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)Lnet/minecraft/client/gui/components/OptionsList$OptionEntry; big a method_58229 + p 0 options + p 1 option + p 2 screen + m (Ljava/util/Map;Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;)V + p 1 options + p 2 screen +c net/minecraft/client/gui/components/PlainTextButton fjk net/minecraft/class_7077 + f Lnet/minecraft/client/gui/Font; font a field_37257 + f Lnet/minecraft/network/chat/Component; message b field_37258 + f Lnet/minecraft/network/chat/Component; underlinedMessage c field_37259 + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 onPress + p 7 font +c net/minecraft/client/gui/components/PlayerFaceRenderer fjl net/minecraft/class_7532 + f I SKIN_HEAD_U a field_39525 + f I SKIN_HEAD_V b field_39526 + f I SKIN_HEAD_WIDTH c field_39527 + f I SKIN_HEAD_HEIGHT d field_39528 + f I SKIN_HAT_U e field_39529 + f I SKIN_HAT_V f field_39530 + f I SKIN_HAT_WIDTH g field_39531 + f I SKIN_HAT_HEIGHT h field_39532 + f I SKIN_TEX_WIDTH i field_39533 + f I SKIN_TEX_HEIGHT j field_39534 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;III)V draw a method_44443 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIIZ)V drawHat a method_44444 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + p 5 upsideDown + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIIZZ)V draw a method_44445 + p 0 guiGraphics + p 1 atlasLocation + p 2 x + p 3 y + p 4 size + p 5 drawHat + p 6 upsideDown + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/resources/PlayerSkin;III)V draw a method_52722 + p 0 guiGraphics + p 1 skin + p 2 x + p 3 y + p 4 size + m ()V +c net/minecraft/client/gui/components/PlayerSkinWidget fjm net/minecraft/class_8765 + f F MODEL_OFFSET a field_45996 + f F MODEL_HEIGHT b field_45997 + f F Z_OFFSET c field_45998 + f F ROTATION_SENSITIVITY d field_45999 + f F DEFAULT_ROTATION_X e field_46000 + f F DEFAULT_ROTATION_Y f field_46001 + f F ROTATION_X_LIMIT m field_46002 + f Lnet/minecraft/client/gui/components/PlayerSkinWidget$Model; model n field_46003 + f Ljava/util/function/Supplier; skin o field_46004 + f F rotationX p field_46005 + f F rotationY q field_46006 + m (IILnet/minecraft/client/model/geom/EntityModelSet;Ljava/util/function/Supplier;)V + p 1 width + p 2 height + p 3 model + p 4 skin +c net/minecraft/client/gui/components/PlayerSkinWidget$Model fjm$a net/minecraft/class_8765$class_8766 + f Lnet/minecraft/client/model/PlayerModel; wideModel a comp_1908 + f Lnet/minecraft/client/model/PlayerModel; slimModel b comp_1909 + m ()Lnet/minecraft/client/model/PlayerModel; wideModel a comp_1908 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/resources/PlayerSkin;)V render a method_53547 + p 1 guiGraphics + p 2 skin + m (Lnet/minecraft/client/model/geom/EntityModelSet;)Lnet/minecraft/client/gui/components/PlayerSkinWidget$Model; bake a method_53548 + p 0 model + m ()Lnet/minecraft/client/model/PlayerModel; slimModel b comp_1909 + m (Lnet/minecraft/client/model/PlayerModel;Lnet/minecraft/client/model/PlayerModel;)V +c net/minecraft/client/gui/components/PlayerTabOverlay fjn net/minecraft/class_355 + f I MAX_ROWS_PER_COL a field_32205 + f Lnet/minecraft/resources/ResourceLocation; PING_UNKNOWN_SPRITE b field_45365 + f Lnet/minecraft/resources/ResourceLocation; PING_1_SPRITE c field_45366 + f Lnet/minecraft/resources/ResourceLocation; PING_2_SPRITE d field_45367 + f Lnet/minecraft/resources/ResourceLocation; PING_3_SPRITE e field_45368 + f Lnet/minecraft/resources/ResourceLocation; PING_4_SPRITE f field_45369 + f Lnet/minecraft/resources/ResourceLocation; PING_5_SPRITE g field_45370 + f Lnet/minecraft/resources/ResourceLocation; HEART_CONTAINER_BLINKING_SPRITE h field_45371 + f Lnet/minecraft/resources/ResourceLocation; HEART_CONTAINER_SPRITE i field_45372 + f Lnet/minecraft/resources/ResourceLocation; HEART_FULL_BLINKING_SPRITE j field_45373 + f Lnet/minecraft/resources/ResourceLocation; HEART_HALF_BLINKING_SPRITE k field_45374 + f Lnet/minecraft/resources/ResourceLocation; HEART_ABSORBING_FULL_BLINKING_SPRITE l field_45375 + f Lnet/minecraft/resources/ResourceLocation; HEART_FULL_SPRITE m field_45376 + f Lnet/minecraft/resources/ResourceLocation; HEART_ABSORBING_HALF_BLINKING_SPRITE n field_45377 + f Lnet/minecraft/resources/ResourceLocation; HEART_HALF_SPRITE o field_45378 + f Ljava/util/Comparator; PLAYER_COMPARATOR p field_2156 + f Lnet/minecraft/client/Minecraft; minecraft q field_2155 + f Lnet/minecraft/client/gui/Gui; gui r field_2157 + f Lnet/minecraft/network/chat/Component; footer s field_2154 + f Lnet/minecraft/network/chat/Component; header t field_2153 + f Z visible u field_2158 + c Weither or not the playerlist is currently being rendered + f Ljava/util/Map; healthStates v field_40393 + m ()V reset a method_1920 + m (IIILjava/util/UUID;Lnet/minecraft/client/gui/GuiGraphics;I)V renderTablistHearts a method_45590 + p 1 y + p 2 minX + p 3 maxX + p 4 playerUuid + p 5 guiGraphics + p 6 health + m (ILjava/util/UUID;)Lnet/minecraft/client/gui/components/PlayerTabOverlay$HealthState; method_45591 a method_45591 + m (Lnet/minecraft/world/scores/Objective;ILnet/minecraft/client/gui/components/PlayerTabOverlay$ScoreDisplayEntry;IILjava/util/UUID;Lnet/minecraft/client/gui/GuiGraphics;)V renderTablistScore a method_1922 + p 1 objective + p 2 y + p 3 displayEntry + p 4 minX + p 5 maxX + p 6 playerUuid + p 7 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIILnet/minecraft/client/multiplayer/PlayerInfo;)V renderPingIcon a method_1923 + p 1 guiGraphics + p 2 width + p 3 x + p 4 y + p 5 playerInfo + m (Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/world/scores/Scoreboard;Lnet/minecraft/world/scores/Objective;)V render a method_1919 + p 1 guiGraphics + p 2 width + p 3 scoreboard + p 4 objective + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Lnet/minecraft/network/chat/Component; getNameForDisplay a method_1918 + p 1 playerInfo + m (Lnet/minecraft/client/multiplayer/PlayerInfo;Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/Component; decorateName a method_27538 + p 1 playerInfo + p 2 name + m (Ljava/util/Set;Ljava/util/UUID;)Z method_45593 a method_45593 + m (Lnet/minecraft/network/chat/Component;)V setFooter a method_1924 + p 1 footer + m (Z)V setVisible a method_1921 + c Called by GuiIngame to update the information stored in the playerlist, does not actually render the list, however. + p 1 visible + m ()Ljava/util/List; getPlayerInfos b method_48213 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/util/UUID; method_45594 b method_45594 + m (Lnet/minecraft/network/chat/Component;)V setHeader b method_1925 + p 1 header + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/lang/String; method_46511 c method_46511 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/lang/String; method_45595 d method_45595 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)I method_45592 e method_45592 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/Gui;)V + p 1 minecraft + p 2 gui + m ()V +c net/minecraft/client/gui/components/PlayerTabOverlay$HealthState fjn$a net/minecraft/class_355$class_7732 + f J DISPLAY_UPDATE_DELAY a field_40394 + f J DECREASE_BLINK_DURATION b field_40395 + f J INCREASE_BLINK_DURATION c field_40396 + f I lastValue d field_40397 + f I displayedValue e field_40398 + f J lastUpdateTick f field_40399 + f J blinkUntilTick g field_40400 + m ()I displayedValue a method_45596 + m (IJ)V update a method_45597 + p 1 value + p 2 guiTicks + m (J)Z isBlinking a method_45598 + p 1 guiTicks + m (I)V + p 1 displayedValue +c net/minecraft/client/gui/components/PlayerTabOverlay$ScoreDisplayEntry fjn$b net/minecraft/class_355$class_9018 + f Lnet/minecraft/network/chat/Component; name a comp_2134 + f I score b comp_2135 + f Lnet/minecraft/network/chat/Component; formattedScore c comp_2136 + f I scoreWidth d comp_2137 + m ()Lnet/minecraft/network/chat/Component; name a comp_2134 + m ()I score b comp_2135 + m ()Lnet/minecraft/network/chat/Component; formattedScore c comp_2136 + m ()I scoreWidth d comp_2137 + m (Lnet/minecraft/network/chat/Component;ILnet/minecraft/network/chat/Component;I)V +c net/minecraft/client/gui/components/PopupScreen fjo net/minecraft/class_8816 + f Ljava/lang/Runnable; onClose A field_46565 + f I contentWidth B field_46566 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46567 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_46554 + f I SPACING b field_46555 + f I BG_BORDER_WITH_SPACING c field_46556 + f I BUTTON_SPACING r field_46557 + f I IMAGE_SIZE_X s field_46558 + f I IMAGE_SIZE_Y u field_46559 + f I POPUP_DEFAULT_WIDTH v field_46560 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen w field_46561 + f Lnet/minecraft/resources/ResourceLocation; image x field_46562 + f Lnet/minecraft/network/chat/Component; message y field_46563 + f Ljava/util/List; buttons z field_46564 + m (Lnet/minecraft/client/gui/components/PopupScreen$ButtonOption;Lnet/minecraft/client/gui/components/Button;)V method_54122 a method_54122 + m (Lnet/minecraft/client/gui/components/PopupScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54123 a method_54123 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; buildButtonRow m method_54124 + m (Lnet/minecraft/client/gui/screens/Screen;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/Runnable;)V + p 1 backgroundScreen + p 2 width + p 3 image + p 4 title + p 5 message + p 6 buttons + p 7 onClose + m ()V +c net/minecraft/client/gui/components/PopupScreen$Builder fjo$a net/minecraft/class_8816$class_8817 + f Lnet/minecraft/client/gui/screens/Screen; backgroundScreen a field_46568 + f Lnet/minecraft/network/chat/Component; title b field_46569 + f Lnet/minecraft/network/chat/Component; message c field_46570 + f I width d field_46571 + f Lnet/minecraft/resources/ResourceLocation; image e field_46572 + f Ljava/util/List; buttons f field_46573 + f Ljava/lang/Runnable; onClose g field_46574 + m ()Lnet/minecraft/client/gui/components/PopupScreen; build a method_54125 + m (I)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setWidth a method_54126 + p 1 width + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setImage a method_54127 + p 1 image + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; onClose a method_54128 + p 1 onClose + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; setMessage a method_54129 + p 1 message + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/components/PopupScreen$Builder; addButton a method_54130 + p 1 message + p 2 action + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 backgroundScreen + p 2 title +c net/minecraft/client/gui/components/PopupScreen$ButtonOption fjo$b net/minecraft/class_8816$class_8818 + f Lnet/minecraft/network/chat/Component; message a comp_1979 + f Ljava/util/function/Consumer; action b comp_1980 + m ()Lnet/minecraft/network/chat/Component; message a comp_1979 + m ()Ljava/util/function/Consumer; action b comp_1980 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)V +c net/minecraft/client/gui/components/Renderable fjp net/minecraft/class_4068 + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V render a method_25394 + c Renders the graphical user interface (GUI) element. + p 1 guiGraphics + c the GuiGraphics object used for rendering. + p 2 mouseX + c the x-coordinate of the mouse cursor. + p 3 mouseY + c the y-coordinate of the mouse cursor. + p 4 partialTick + c the partial tick time. +c net/minecraft/client/gui/components/SplashRenderer fjq net/minecraft/class_8519 + f Lnet/minecraft/client/gui/components/SplashRenderer; CHRISTMAS a field_44661 + f Lnet/minecraft/client/gui/components/SplashRenderer; NEW_YEAR b field_44662 + f Lnet/minecraft/client/gui/components/SplashRenderer; HALLOWEEN c field_44663 + f I WIDTH_OFFSET d field_44664 + f I HEIGH_OFFSET e field_44665 + f Ljava/lang/String; splash f field_44666 + m (Lnet/minecraft/client/gui/GuiGraphics;ILnet/minecraft/client/gui/Font;I)V render a method_51453 + p 1 guiGraphics + p 2 screenWidth + p 3 font + p 4 color + m (Ljava/lang/String;)V + p 1 splash + m ()V +c net/minecraft/client/gui/components/SpriteIconButton fjr net/minecraft/class_8662 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45379 + f I spriteWidth b field_45380 + f I spriteHeight c field_45381 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Z)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; builder a method_52723 + p 0 message + p 1 onPress + p 2 iconOnly + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V + p 1 width + p 2 height + p 3 message + p 4 spriteWidth + p 5 spriteHeight + p 6 sprite + p 7 onPress + p 8 createNarration +c net/minecraft/client/gui/components/SpriteIconButton$Builder fjr$a net/minecraft/class_8662$class_8663 + f Lnet/minecraft/client/gui/components/Button$CreateNarration; narration a field_49486 + f Lnet/minecraft/network/chat/Component; message b field_45382 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress c field_45383 + f Z iconOnly d field_45384 + f I width e field_45385 + f I height f field_45386 + f Lnet/minecraft/resources/ResourceLocation; sprite g field_45387 + f I spriteWidth h field_45388 + f I spriteHeight i field_45389 + m ()Lnet/minecraft/client/gui/components/SpriteIconButton; build a method_52724 + m (I)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; width a method_52725 + p 1 width + m (II)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; size a method_52726 + p 1 width + p 2 height + m (Lnet/minecraft/resources/ResourceLocation;II)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; sprite a method_52727 + p 1 sprite + p 2 spriteWidth + p 3 spriteHeight + m (Lnet/minecraft/client/gui/components/Button$CreateNarration;)Lnet/minecraft/client/gui/components/SpriteIconButton$Builder; narration a method_57722 + p 1 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;Z)V + p 1 message + p 2 onPress + p 3 iconOnly +c net/minecraft/client/gui/components/SpriteIconButton$CenteredIcon fjr$b net/minecraft/class_8662$class_8664 + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V +c net/minecraft/client/gui/components/SpriteIconButton$TextAndIcon fjr$c net/minecraft/class_8662$class_8665 + m (IILnet/minecraft/network/chat/Component;IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/client/gui/components/Button$CreateNarration;)V +c net/minecraft/client/gui/components/StateSwitchingButton fjs net/minecraft/class_361 + f Lnet/minecraft/client/gui/components/WidgetSprites; sprites a field_45390 + f Z isStateTriggered b field_2194 + m ()Z isStateTriggered a method_1965 + m (Lnet/minecraft/client/gui/components/WidgetSprites;)V initTextureValues a method_1962 + p 1 sprites + m (Z)V setStateTriggered b method_1964 + p 1 triggered + m (IIIIZ)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 initialState +c net/minecraft/client/gui/components/StringWidget fjt net/minecraft/class_7842 + f F alignX a field_42121 + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/util/FormattedCharSequence; clipText a method_52728 + p 1 message + p 2 width + m (F)Lnet/minecraft/client/gui/components/StringWidget; horizontalAlignment b method_48598 + p 1 horizontalAlignment + m (I)Lnet/minecraft/client/gui/components/StringWidget; setColor b method_46438 + p 1 color + m ()Lnet/minecraft/client/gui/components/StringWidget; alignLeft c method_48596 + m ()Lnet/minecraft/client/gui/components/StringWidget; alignCenter e method_48597 + m ()Lnet/minecraft/client/gui/components/StringWidget; alignRight f method_48599 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 message + p 2 font + m (IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 width + p 2 height + p 3 message + p 4 font + m (IIIILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 message + p 6 font +c net/minecraft/client/gui/components/SubtitleOverlay fju net/minecraft/class_359 + f J DISPLAY_TIME a field_32214 + f Lnet/minecraft/client/Minecraft; minecraft b field_2182 + f Ljava/util/List; subtitles c field_2183 + f Z isListening d field_2184 + f Ljava/util/List; audibleSubtitles e field_47672 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1957 + p 1 guiGraphics + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt fju$a net/minecraft/class_359$class_9772 + f Lnet/minecraft/world/phys/Vec3; location a comp_2809 + f J time b comp_2810 + m ()Lnet/minecraft/world/phys/Vec3; location a comp_2809 + m ()J time b comp_2810 + m (Lnet/minecraft/world/phys/Vec3;J)V +c net/minecraft/client/gui/components/SubtitleOverlay$Subtitle fju$b net/minecraft/class_359$class_360 + f Lnet/minecraft/network/chat/Component; text a field_2188 + f F range b field_47673 + f Ljava/util/List; playedAt c field_51913 + m ()Lnet/minecraft/network/chat/Component; getText a method_1960 + m (D)V purgeOldInstances a method_60570 + p 1 displayTime + m (JDLnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)Z method_60571 a method_60571 + m (Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt; getClosest a method_60572 + p 1 location + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)Z method_60573 a method_60573 + m ()Z isStillActive b method_60574 + m (Lnet/minecraft/world/phys/Vec3;)V refresh b method_1958 + p 1 location + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/gui/components/SubtitleOverlay$SoundPlayedAt;)D method_60575 b method_60575 + m (Lnet/minecraft/world/phys/Vec3;)Z isAudibleFrom c method_55589 + p 1 location + m (Lnet/minecraft/network/chat/Component;FLnet/minecraft/world/phys/Vec3;)V + p 1 text + p 2 range + p 3 location +c net/minecraft/client/gui/components/TabButton fjv net/minecraft/class_8209 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES a field_45391 + f I SELECTED_OFFSET b field_43063 + f I TEXT_MARGIN c field_43064 + f I UNDERLINE_HEIGHT d field_43065 + f I UNDERLINE_MARGIN_X e field_43066 + f I UNDERLINE_MARGIN_BOTTOM f field_43067 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager m field_43068 + f Lnet/minecraft/client/gui/components/tabs/Tab; tab n field_43069 + m ()Lnet/minecraft/client/gui/components/tabs/Tab; tab a method_49609 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderMenuBackground a method_58230 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderString a method_49608 + p 1 guiGraphics + p 2 font + p 3 color + m ()Z isSelected b method_49611 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;I)V renderFocusUnderline b method_49610 + p 1 guiGraphics + p 2 font + p 3 color + m (Lnet/minecraft/client/gui/components/tabs/TabManager;Lnet/minecraft/client/gui/components/tabs/Tab;II)V + p 1 tabManager + p 2 tab + p 3 width + p 4 height + m ()V +c net/minecraft/client/gui/components/TabOrderedElement fjw net/minecraft/class_8083 + m ()I getTabOrderGroup I method_48590 + c Returns the tab order group of the GUI component.\nTab order group determines the order in which the components are traversed when using keyboard navigation.\n

\n@return The tab order group of the GUI component. +c net/minecraft/client/gui/components/Tooltip fjx net/minecraft/class_7919 + f I MAX_WIDTH a field_41101 + f Lnet/minecraft/network/chat/Component; message b field_41102 + f Ljava/util/List; cachedTooltip c field_41103 + f Lnet/minecraft/locale/Language; splitWithLanguage d field_51822 + f Lnet/minecraft/network/chat/Component; narration e field_41104 + m (Lnet/minecraft/client/Minecraft;)Ljava/util/List; toCharSequence a method_47405 + p 1 minecraft + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Ljava/util/List; splitTooltip a method_47406 + p 0 minecraft + p 1 message + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/Tooltip; create a method_47407 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/Tooltip; create a method_47408 + p 0 message + p 1 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 message + p 2 narration +c net/minecraft/client/gui/components/Whence fjy net/minecraft/class_7533 + f Lnet/minecraft/client/gui/components/Whence; ABSOLUTE a field_39535 + f Lnet/minecraft/client/gui/components/Whence; RELATIVE b field_39536 + f Lnet/minecraft/client/gui/components/Whence; END c field_39537 + f [Lnet/minecraft/client/gui/components/Whence; $VALUES d field_39538 + m ()[Lnet/minecraft/client/gui/components/Whence; $values a method_44446 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/components/WidgetSprites fjz net/minecraft/class_8666 + f Lnet/minecraft/resources/ResourceLocation; enabled a comp_1604 + f Lnet/minecraft/resources/ResourceLocation; disabled b comp_1605 + f Lnet/minecraft/resources/ResourceLocation; enabledFocused c comp_1606 + f Lnet/minecraft/resources/ResourceLocation; disabledFocused d comp_1607 + m ()Lnet/minecraft/resources/ResourceLocation; enabled a comp_1604 + m (ZZ)Lnet/minecraft/resources/ResourceLocation; get a method_52729 + p 1 enabled + p 2 focused + m ()Lnet/minecraft/resources/ResourceLocation; disabled b comp_1605 + m ()Lnet/minecraft/resources/ResourceLocation; enabledFocused c comp_1606 + m ()Lnet/minecraft/resources/ResourceLocation; disabledFocused d comp_1607 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 enabled + p 2 disabled + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 enabled + p 2 disabled + p 3 enabledFocused + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/components/WidgetTooltipHolder fka net/minecraft/class_9110 + f Lnet/minecraft/client/gui/components/Tooltip; tooltip a field_48390 + f Ljava/time/Duration; delay b field_48391 + f J displayStartTime c field_48392 + f Z wasDisplayed d field_48393 + m ()Lnet/minecraft/client/gui/components/Tooltip; get a method_56137 + m (Lnet/minecraft/client/gui/components/Tooltip;)V set a method_56138 + p 1 tooltip + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration a method_56139 + p 1 output + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;ZZ)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; createTooltipPositioner a method_56140 + p 1 screenRectangle + p 2 hovering + p 3 focused + m (Ljava/time/Duration;)V setDelay a method_56141 + p 1 delay + m (ZZLnet/minecraft/client/gui/navigation/ScreenRectangle;)V refreshTooltipForNextRenderPass a method_56142 + p 1 hovering + p 2 focused + p 3 screenRectangle + m ()V +c net/minecraft/client/gui/components/debugchart/AbstractDebugChart fkb net/minecraft/class_8755 + f I COLOR_GREY a field_45915 + f I CHART_HEIGHT b field_45916 + f I LINE_WIDTH c field_45917 + f Lnet/minecraft/client/gui/Font; font d field_45918 + f Lnet/minecraft/util/debugchart/SampleStorage; sampleStorage e field_45919 + m (D)Ljava/lang/String; toDisplayString a method_53468 + p 1 value + m (DDIDIDI)I getSampleColor a method_53469 + p 1 value + p 3 minPosition + p 5 minColor + p 6 midPosition + p 8 midColor + p 9 maxPosition + p 11 guiGraphics + m (I)I getWidth a method_53470 + p 1 maxWidth + m (J)I getSampleColor a method_53471 + p 1 value + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawChart a method_53472 + p 1 guiGraphics + p 2 x + p 3 width + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawDimensions a method_56578 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;Ljava/lang/String;II)V drawStringWithShade a method_53474 + p 1 guiGraphics + p 2 text + p 3 x + p 4 y + m (D)I getSampleHeight b method_53475 + p 1 value + m (I)J getValueForAggregation b method_56579 + p 1 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawMainDimension b method_56580 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V drawAdditionalDimensions c method_56581 + p 1 guiGraphics + p 2 height + p 3 x + p 4 index + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderAdditionalLinesAndLabels d method_53473 + p 1 guiGraphics + p 2 x + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/BandwidthDebugChart fkc net/minecraft/class_8756 + f I MIN_COLOR f field_45920 + f I MID_COLOR g field_45921 + f I MAX_COLOR h field_45922 + f I KILOBYTE i field_45923 + f I MEGABYTE j field_45924 + f I CHART_TOP_VALUE k field_45925 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawLabeledLineAtValue a method_53476 + p 1 guiGraphics + p 2 x + p 3 width + p 4 y + p 5 value + m (Lnet/minecraft/client/gui/GuiGraphics;IIILjava/lang/String;)V drawLineWithLabel a method_53477 + p 1 guiGraphics + p 2 x + p 3 width + p 4 y + p 5 text + m (D)Ljava/lang/String; toDisplayStringInternal c method_53478 + p 0 value + m (D)I getSampleHeightInternal d method_53479 + p 0 value + m (D)D toBytesPerSecond e method_53480 + p 0 bytesPerTick + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/FpsDebugChart fkd net/minecraft/class_8757 + f I RED f field_45926 + f I YELLOW g field_45927 + f I GREEN h field_45928 + f I CHART_TOP_FPS i field_45929 + f D CHART_TOP_VALUE j field_45930 + m (D)D toMilliseconds c method_53481 + p 0 value + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V + p 1 font + p 2 sampleStorage +c net/minecraft/client/gui/components/debugchart/PingDebugChart fke net/minecraft/class_8758 + f I RED f field_45931 + f I YELLOW g field_45932 + f I GREEN h field_45933 + f I CHART_TOP_VALUE i field_45934 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;)V +c net/minecraft/client/gui/components/debugchart/TpsDebugChart fkf net/minecraft/class_8759 + f I RED f field_45935 + f I YELLOW g field_45936 + f I GREEN h field_45937 + f I TICK_METHOD_COLOR i field_48763 + f I TASK_COLOR j field_48764 + f I OTHER_COLOR k field_48765 + f Ljava/util/function/Supplier; msptSupplier l field_47117 + m (D)D toMilliseconds c method_53482 + p 0 value + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/util/debugchart/SampleStorage;Ljava/util/function/Supplier;)V + p 1 font + p 2 sampleStorage + p 3 msptSupplier +c net/minecraft/client/gui/components/events/AbstractContainerEventHandler fkg net/minecraft/class_362 + f Lnet/minecraft/client/gui/components/events/GuiEventListener; focused a field_22780 + f Z isDragging b field_22781 + m ()V +c net/minecraft/client/gui/components/events/ContainerEventHandler fkh net/minecraft/class_4069 + m (DDDDLnet/minecraft/client/gui/components/events/GuiEventListener;)Z method_20082 a method_20082 + m (DDILnet/minecraft/client/gui/components/events/GuiEventListener;)Z method_20083 a method_20083 + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V setFocused a method_25395 + c Sets the focus state of the GUI element. + p 1 focused + c the focused GUI element. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation;)Lnet/minecraft/client/gui/ComponentPath; handleArrowNavigation a method_48214 + c Handles arrow-based navigation events.\n

\n@return The next focus path for arrow navigation, or {@code null} if no suitable path is found. + p 1 arrowNavigation + c The arrow navigation event. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation;)Lnet/minecraft/client/gui/ComponentPath; handleTabNavigation a method_48215 + c Handles tab-based navigation events.\n

\n@return The next focus path for tab navigation, or {@code null} if no suitable path is found. + p 1 tabNavigation + c The tab navigation event. + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;)Ljava/lang/Integer; method_48216 a method_48216 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPathInDirection a method_48217 + c Calculates the next focus path in a specific direction.\n

\n@return The next focus path in the specified direction, or {@code null} if no suitable path is found. + p 1 rectangle + c The screen rectangle. + p 2 direction + c The direction of navigation. + p 3 listener + c The currently focused GUI event listener. + p 4 event + c The focus navigation event. + m ()Ljava/util/List; children aK_ method_25396 + c {@return a List containing all GUI element children of this GUI element} + m ()Z isDragging aM_ method_25397 + c {@return {@code true} if the GUI element is dragging, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/components/events/GuiEventListener; getFocused aN_ method_25399 + c Gets the focused GUI element. + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)I method_48609 b method_48609 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;)Ljava/lang/Integer; method_48219 b method_48219 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenDirection;Lnet/minecraft/client/gui/components/events/GuiEventListener;Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPathVaguelyInDirection b method_48220 + c Calculates the next focus path in a vague direction.\n

\n@return The next focus path in the vague direction, or {@code null} if no suitable path is found. + p 1 rectangle + c The screen rectangle. + p 2 direction + c The direction of navigation. + p 3 listener + c The currently focused GUI event listener. + p 4 event + c The focus navigation event. + m (DD)Ljava/util/Optional; getChildAt b_ method_19355 + c Returns the first event listener that intersects with the mouse coordinates. + p 1 mouseX + p 3 mouseY + m (Z)V setDragging b_ method_25398 + c Sets if the GUI element is dragging or not. + p 1 isDragging + c the dragging state of the GUI element. +c net/minecraft/client/gui/components/events/GuiEventListener fki net/minecraft/class_364 + c Represents a listener for GUI events.\n

\nIt extends the {@code TabOrderedElement} interface, providing tab order functionality for GUI components. + f J DOUBLE_CLICK_THRESHOLD_MS t field_37268 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; getRectangle H method_48202 + c {@return the {@link ScreenRectangle} occupied by the GUI element} + m (CI)Z charTyped a method_25400 + c Called when a character is typed within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 codePoint + c the code point of the typed character. + p 2 modifiers + c the keyboard modifiers. + m (DDDD)Z mouseScrolled a method_25401 + p 1 mouseX + p 3 mouseY + p 5 scrollX + p 7 scrollY + m (DDI)Z mouseClicked a method_25402 + c Called when a mouse button is clicked within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that was clicked. + m (DDIDD)Z mouseDragged a method_25403 + c Called when the mouse is dragged within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that is being dragged. + p 6 dragX + c the X distance of the drag. + p 8 dragY + c the Y distance of the drag. + m (III)Z keyPressed a method_25404 + c Called when a keyboard key is pressed within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 keyCode + c the key code of the pressed key. + p 2 scanCode + c the scan code of the pressed key. + p 3 modifiers + c the keyboard modifiers. + m (Lnet/minecraft/client/gui/navigation/FocusNavigationEvent;)Lnet/minecraft/client/gui/ComponentPath; nextFocusPath a method_48205 + c Retrieves the next focus path based on the given focus navigation event.\n

\n@return the next focus path as a ComponentPath, or {@code null} if there is no next focus path. + p 1 event + c the focus navigation event. + m (Z)V setFocused a method_25365 + c Sets the focus state of the GUI element. + p 1 focused + c {@code true} to apply focus, {@code false} to remove focus + m ()Z isFocused aO_ method_25370 + c {@return {@code true} if the GUI element is focused, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/ComponentPath; getCurrentFocusPath aP_ method_48218 + c {@return the current focus path as a ComponentPath, or {@code null} if there is no current focus path.} + m (DDI)Z mouseReleased b method_25406 + c Called when a mouse button is released within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + p 5 button + c the button that was released. + m (DD)Z isMouseOver c method_25405 + c Checks if the given mouse coordinates are over the GUI element.\n

\n@return {@code true} if the mouse is over the GUI element, {@code false} otherwise. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. + m (III)Z keyReleased c method_16803 + c Called when a keyboard key is released within the GUI element.\n

\n@return {@code true} if the event is consumed, {@code false} otherwise. + p 1 keyCode + c the key code of the released key. + p 2 scanCode + c the scan code of the released key. + p 3 modifiers + c the keyboard modifiers. + m (DD)V mouseMoved f method_16014 + c Called when the mouse is moved within the GUI element. + p 1 mouseX + c the X coordinate of the mouse. + p 3 mouseY + c the Y coordinate of the mouse. +c net/minecraft/client/gui/components/events/package-info fkj net/minecraft/class_6205 +c net/minecraft/client/gui/components/package-info fkk net/minecraft/class_6206 +c net/minecraft/client/gui/components/spectator/SpectatorGui fkl net/minecraft/class_365 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SPRITE a field_45392 + f Lnet/minecraft/resources/ResourceLocation; HOTBAR_SELECTION_SPRITE b field_45393 + f J FADE_OUT_DELAY c field_32215 + f J FADE_OUT_TIME d field_32216 + f Lnet/minecraft/client/Minecraft; minecraft e field_2201 + f J lastSelectionTime f field_2198 + f Lnet/minecraft/client/gui/spectator/SpectatorMenu; menu g field_2200 + m ()Z isMenuActive a method_1980 + m (I)V onHotbarSelected a method_1977 + p 1 slot + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderHotbar a method_1978 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;FIILnet/minecraft/client/gui/spectator/categories/SpectatorPage;)V renderPage a method_1975 + p 1 guiGraphics + p 2 alpha + p 3 x + p 4 y + p 5 spectatorPage + m (Lnet/minecraft/client/gui/GuiGraphics;IIFFLnet/minecraft/client/gui/spectator/SpectatorMenuItem;)V renderSlot a method_1982 + p 1 guiGraphics + p 2 slot + p 3 x + p 4 y + p 5 alpha + p 6 spectatorMenuItem + m ()V onMouseMiddleClick b method_1983 + m (I)V onMouseScrolled b method_1976 + p 1 amount + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderTooltip b method_1979 + p 1 guiGraphics + m ()F getHotbarAlpha c method_1981 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/components/spectator/package-info fkm net/minecraft/class_6207 +c net/minecraft/client/gui/components/tabs/GridLayoutTab fkn net/minecraft/class_8086 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout a field_42139 + f Lnet/minecraft/network/chat/Component; title b field_42140 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title +c net/minecraft/client/gui/components/tabs/Tab fko net/minecraft/class_8087 + m ()Lnet/minecraft/network/chat/Component; getTabTitle a method_48610 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V doLayout a method_48611 + p 1 rectangle + m (Ljava/util/function/Consumer;)V visitChildren a method_48612 + p 1 consumer +c net/minecraft/client/gui/components/tabs/TabManager fkp net/minecraft/class_8088 + f Ljava/util/function/Consumer; addWidget a field_42141 + f Ljava/util/function/Consumer; removeWidget b field_42142 + f Lnet/minecraft/client/gui/components/tabs/Tab; currentTab c field_42143 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; tabArea d field_42144 + m ()Lnet/minecraft/client/gui/components/tabs/Tab; getCurrentTab a method_48614 + m (Lnet/minecraft/client/gui/components/tabs/Tab;Z)V setCurrentTab a method_48615 + p 1 tab + p 2 playClickSound + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V setTabArea a method_48616 + p 1 tabArea + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V + p 1 addWidget + p 2 removeWidget +c net/minecraft/client/gui/components/tabs/TabNavigationBar fkq net/minecraft/class_8089 + f I NO_TAB a field_42489 + f I MAX_WIDTH b field_43076 + f I HEIGHT c field_43077 + f I MARGIN d field_43078 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION e field_43079 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout f field_43080 + f I width g field_42145 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager h field_42146 + f Lcom/google/common/collect/ImmutableList; tabs i field_42147 + f Lcom/google/common/collect/ImmutableList; tabButtons j field_42148 + m (I)V setWidth a method_48618 + p 1 width + m (IZ)V selectTab a method_48987 + c Selects the tab at the specified index. + p 1 index + c the index of the tab to select. + p 2 playClickSound + c whether to play a click sound when selecting the tab. + m (Lnet/minecraft/client/gui/components/tabs/TabManager;I)Lnet/minecraft/client/gui/components/tabs/TabNavigationBar$Builder; builder a method_48623 + p 0 tabManager + p 1 width + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/TabButton;)V narrateListElementPosition a method_49612 + c Narrates the position of a list element (tab button). + p 1 narrationElementOutput + c the narration output to update. + p 2 tabButton + c the tab button whose position is being narrated. + m ()V arrangeElements b method_49613 + c Arranges the elements within the tabbed layout. + m (I)Z keyPressed b method_48988 + c Handles key pressed events.\n

\n@return {@code true} if the key press was handled, {@code false} otherwise. + p 1 keycode + c the keycode of the pressed key. + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;Lnet/minecraft/client/gui/components/TabButton;)V method_49614 b method_49614 + m ()I currentTabIndex c method_48989 + c Returns the index of the current tab.\n

\n@return the index of the current tab, or -1 if no current tab is set. + m (I)I getNextTabIndex c method_48990 + c Returns the index of the next tab based on the given key code.\n

\n@return the index of the next tab, or -1 if no valid tab index is found. + p 1 keycode + c the keycode of the pressed key. + m ()Lnet/minecraft/client/gui/components/TabButton; currentTabButton d method_49615 + c Returns the current tab button.\n

\n@return the current tab button, or null if no current tab is set. + m ()Ljava/util/Optional; method_49616 h method_49616 + m (ILnet/minecraft/client/gui/components/tabs/TabManager;Ljava/lang/Iterable;)V + p 1 width + p 2 tabManager + p 3 tabs + m ()V +c net/minecraft/client/gui/components/tabs/TabNavigationBar$Builder fkq$a net/minecraft/class_8089$class_8090 + c Builder class for creating a TabNavigationBar instance. + f I width a field_42151 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager b field_42152 + f Ljava/util/List; tabs c field_42153 + m ()Lnet/minecraft/client/gui/components/tabs/TabNavigationBar; build a method_48627 + c Builds and returns a new TabNavigationBar instance.\n

\n@return a new TabNavigationBar instance. + m ([Lnet/minecraft/client/gui/components/tabs/Tab;)Lnet/minecraft/client/gui/components/tabs/TabNavigationBar$Builder; addTabs a method_48631 + c Adds multiple tabs to the TabNavigationBar.\n

\n@return the {@link Builder} instance. + p 1 tabs + c the tabs to add. + m (Lnet/minecraft/client/gui/components/tabs/TabManager;I)V + p 1 tabManager + p 2 width +c net/minecraft/client/gui/components/tabs/package-info fkr net/minecraft/class_8091 +c net/minecraft/client/gui/components/toasts/AdvancementToast fks net/minecraft/class_367 + f I DISPLAY_TIME a field_41812 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE d field_45394 + f Lnet/minecraft/advancements/AdvancementHolder; advancement e field_2205 + f Z playedSound f field_2206 + m (Lnet/minecraft/advancements/AdvancementHolder;)V + p 1 advancement + m ()V +c net/minecraft/client/gui/components/toasts/RecipeToast fkt net/minecraft/class_366 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45395 + f J DISPLAY_TIME d field_32217 + f Lnet/minecraft/network/chat/Component; TITLE_TEXT e field_26533 + f Lnet/minecraft/network/chat/Component; DESCRIPTION_TEXT f field_26534 + f Ljava/util/List; recipes g field_2202 + f J lastChanged h field_2204 + f Z changed i field_2203 + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V addItem a method_1984 + p 1 recipe + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/world/item/crafting/RecipeHolder;)V addOrUpdate a method_1985 + p 0 toastComponent + p 1 recipe + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V + p 1 recipe + m ()V +c net/minecraft/client/gui/components/toasts/SystemToast fku net/minecraft/class_370 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45396 + f I MAX_LINE_SIZE d field_32219 + f I LINE_SPACING e field_39926 + f I MARGIN f field_39927 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; id g field_2213 + f Lnet/minecraft/network/chat/Component; title h field_2215 + f Ljava/util/List; messageLines i field_25037 + f J lastChanged j field_2216 + f Z changed k field_2214 + f I width l field_25038 + f Z forceHide m field_47582 + m (Lnet/minecraft/client/Minecraft;)V onLowDiskSpace a method_57723 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;I)V onFileDropFailure a method_60865 + p 0 minecraft + p 1 failedFileCount + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/ChunkPos;)V onChunkLoadFailure a method_57724 + p 0 minecraft + p 1 chunkPos + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/toasts/SystemToast; multiline a method_29047 + p 0 minecraft + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onWorldAccessFailure a method_27023 + p 0 minecraft + p 1 message + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderBackgroundRow a method_29046 + p 1 guiGraphics + p 2 width + p 3 vOffset + p 4 y + p 5 height + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;)V forceHide a method_55507 + p 0 toastComponent + p 1 id + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V add a method_27024 + p 0 toastComponent + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/network/chat/Component;)Lcom/google/common/collect/ImmutableList; nullToEmpty a method_29626 + p 0 message + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V reset a method_1991 + p 1 title + p 2 message + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/ChunkPos;)V onChunkSaveFailure b method_57725 + p 0 minecraft + p 1 chunkPos + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onWorldDeleteFailure b method_27025 + p 0 minecraft + p 1 message + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V addOrUpdate b method_1990 + p 0 toastComponent + p 1 id + p 2 title + p 3 message + m ()V forceHide c method_55508 + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V onPackCopyFailure c method_29627 + p 0 minecraft + p 1 message + m ()Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; getToken d method_1989 + m (Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 id + p 2 title + p 3 message + m (Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId;Lnet/minecraft/network/chat/Component;Ljava/util/List;I)V + p 1 id + p 2 title + p 3 messageLines + p 4 width + m ()V +c net/minecraft/client/gui/components/toasts/SystemToast$SystemToastId fku$a net/minecraft/class_370$class_9037 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; NARRATOR_TOGGLE a field_47583 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; WORLD_BACKUP b field_47584 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PACK_LOAD_FAILURE c field_47585 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; WORLD_ACCESS_FAILURE d field_47586 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PACK_COPY_FAILURE e field_47587 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; FILE_DROP_FAILURE f field_52128 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; PERIODIC_NOTIFICATION g field_47588 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; LOW_DISK_SPACE h field_49487 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; CHUNK_LOAD_FAILURE i field_49488 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; CHUNK_SAVE_FAILURE j field_49489 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; UNSECURE_SERVER_WARNING k field_47589 + f J displayTime l field_47590 + m (J)V + p 1 displayTime + m ()V + m ()V +c net/minecraft/client/gui/components/toasts/Toast fkv net/minecraft/class_368 + f Ljava/lang/Object; NO_TOKEN b field_2208 + f I SLOT_HEIGHT c field_39928 + m ()I width a method_29049 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/toasts/ToastComponent;J)Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; render a method_1986 + p 1 guiGraphics + p 2 toastComponent + p 3 timeSinceLastVisible + m ()I height b method_29050 + m ()Ljava/lang/Object; getToken e method_1987 + m ()I slotCount f method_45072 + m ()V +c net/minecraft/client/gui/components/toasts/Toast$Visibility fkv$a net/minecraft/class_368$class_369 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; SHOW a field_2210 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; HIDE b field_2209 + f Lnet/minecraft/sounds/SoundEvent; soundEvent c field_2211 + f [Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; $VALUES d field_2212 + m ()[Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; $values a method_36872 + m (Lnet/minecraft/client/sounds/SoundManager;)V playSound a method_1988 + p 1 handler + m (Ljava/lang/String;ILnet/minecraft/sounds/SoundEvent;)V + p 3 soundEvent + m ()V +c net/minecraft/client/gui/components/toasts/ToastComponent fkw net/minecraft/class_374 + f I SLOT_COUNT a field_39929 + f I NO_SPACE b field_39930 + f Lnet/minecraft/client/Minecraft; minecraft c field_2238 + f Ljava/util/List; visible d field_2239 + f Ljava/util/BitSet; occupiedSlots e field_39931 + f Ljava/util/Deque; queued f field_2240 + m ()V clear a method_2000 + m (I)I findFreeIndex a method_45073 + p 1 slotCount + m (ILnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/components/toasts/ToastComponent$ToastInstance;)Z method_45074 a method_45074 + m (Lnet/minecraft/client/gui/GuiGraphics;)V render a method_1996 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/components/toasts/Toast;)V addToast a method_1999 + p 1 toast + m (Ljava/lang/Class;Ljava/lang/Object;)Lnet/minecraft/client/gui/components/toasts/Toast; getToast a method_1997 + p 1 toastClass + p 2 token + m ()Lnet/minecraft/client/Minecraft; getMinecraft b method_1995 + m (Lnet/minecraft/client/gui/components/toasts/Toast;)Z method_45075 b method_45075 + m ()D getNotificationDisplayTimeMultiplier c method_48221 + m ()I freeSlots d method_45076 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/components/toasts/ToastComponent$ToastInstance fkw$a net/minecraft/class_374$class_375 + f Lnet/minecraft/client/gui/components/toasts/ToastComponent; field_2245 a field_2245 + f J ANIMATION_TIME b field_32221 + f Lnet/minecraft/client/gui/components/toasts/Toast; toast c field_2241 + f I index d field_39932 + f I slotCount e field_39933 + f J animationTime f field_2243 + f J visibleTime g field_2242 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; visibility h field_2244 + m ()Lnet/minecraft/client/gui/components/toasts/Toast; getToast a method_2001 + m (ILnet/minecraft/client/gui/GuiGraphics;)Z render a method_2002 + p 1 screenWidth + p 2 guiGraphics + m (J)F getVisibility a method_2003 + p 1 time + m (Lnet/minecraft/client/gui/components/toasts/ToastComponent;Lnet/minecraft/client/gui/components/toasts/Toast;II)V + p 2 toast + p 3 index + p 4 slotCount +c net/minecraft/client/gui/components/toasts/TutorialToast fkx net/minecraft/class_372 + f I PROGRESS_BAR_WIDTH a field_32222 + f I PROGRESS_BAR_HEIGHT d field_32223 + f I PROGRESS_BAR_X e field_32224 + f I PROGRESS_BAR_Y f field_32225 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE g field_45397 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; icon h field_2225 + f Lnet/minecraft/network/chat/Component; title i field_2224 + f Lnet/minecraft/network/chat/Component; message j field_2226 + f Lnet/minecraft/client/gui/components/toasts/Toast$Visibility; visibility k field_2227 + f J lastProgressTime l field_2223 + f F lastProgress m field_2229 + f F progress n field_2228 + f Z progressable o field_2222 + m (F)V updateProgress a method_1992 + p 1 progress + m ()V hide c method_1993 + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 icon + p 2 title + p 3 message + p 4 progressable + m ()V +c net/minecraft/client/gui/components/toasts/TutorialToast$Icons fkx$a net/minecraft/class_372$class_373 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; MOVEMENT_KEYS a field_2230 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; MOUSE b field_2237 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; TREE c field_2235 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; RECIPE_BOOK d field_2233 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; WOODEN_PLANKS e field_2236 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; SOCIAL_INTERACTIONS f field_26848 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; RIGHT_CLICK g field_28782 + f Lnet/minecraft/resources/ResourceLocation; sprite h field_45398 + f [Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; $VALUES i field_2234 + m ()[Lnet/minecraft/client/gui/components/toasts/TutorialToast$Icons; $values a method_36873 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V render a method_1994 + p 1 guiGraphics + p 2 x + p 3 y + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;)V + p 3 sprite + m ()V +c net/minecraft/client/gui/components/toasts/package-info fky net/minecraft/class_6208 +c net/minecraft/client/gui/font/AllMissingGlyphProvider fkz net/minecraft/class_376 + m ()V +c net/minecraft/client/gui/font/CodepointMap fla net/minecraft/class_8532 + f I BLOCK_BITS a field_44749 + f I BLOCK_SIZE b field_44750 + f I IN_BLOCK_MASK c field_44751 + f I MAX_BLOCK d field_44752 + f I BLOCK_COUNT e field_44753 + f [Ljava/lang/Object; empty f field_44754 + f [[Ljava/lang/Object; blockMap g field_44755 + f Ljava/util/function/IntFunction; blockConstructor h field_44756 + m ()V clear a method_51597 + m (I)Ljava/lang/Object; get a method_51598 + p 1 index + m (ILjava/lang/Object;)Ljava/lang/Object; put a method_51599 + p 1 index + p 2 value + m (ILjava/util/function/IntFunction;)Ljava/lang/Object; computeIfAbsent a method_51600 + p 1 index + p 2 valueIfAbsentGetter + m (Lnet/minecraft/client/gui/font/CodepointMap$Output;)V forEach a method_51601 + p 1 output + m (Lit/unimi/dsi/fastutil/ints/IntOpenHashSet;ILjava/lang/Object;)V method_51602 a method_51602 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; keySet b method_51603 + m (I)Ljava/lang/Object; remove b method_51604 + m (Ljava/util/function/IntFunction;Ljava/util/function/IntFunction;)V + p 1 blockConstructor + p 2 blockMapConstructor +c net/minecraft/client/gui/font/CodepointMap$Output fla$a net/minecraft/class_8532$class_8533 +c net/minecraft/client/gui/font/FontManager flb net/minecraft/class_378 + f Lnet/minecraft/resources/ResourceLocation; MISSING_FONT a field_24254 + f Lorg/slf4j/Logger; LOGGER b field_2261 + f Ljava/lang/String; FONTS_PATH c field_32226 + f Lnet/minecraft/resources/FileToIdConverter; FONT_DEFINITIONS d field_40409 + f Lcom/google/gson/Gson; GSON e field_44757 + f Lnet/minecraft/client/gui/font/FontSet; missingFontSet f field_24255 + f Ljava/util/List; providersToClose g field_44758 + f Ljava/util/Map; fontSets h field_2259 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager i field_2260 + f Lnet/minecraft/client/gui/font/FontSet; lastFontSetCache j field_49111 + m ()Lnet/minecraft/client/gui/Font; createFont a method_27539 + m (I)[Ljava/util/concurrent/CompletableFuture; method_51605 a method_51605 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSetRaw a method_57023 + p 1 fontSet + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; prepare a method_51608 + p 1 resourceManager + p 2 executor + m (Lnet/minecraft/util/DependencySorter;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;)V method_51609 a method_51609 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/gui/font/FontManager$Preparation;)V method_51610 a method_51610 + m (Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletableFuture; method_51611 a method_51611 + m (Lnet/minecraft/client/Options;)V updateOptions a method_57024 + p 1 options + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;)V method_51612 a method_51612 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; safeLoad a method_51613 + p 1 builderId + p 2 loader + p 3 resourceManager + p 4 executor + m (Lnet/minecraft/client/gui/font/FontManager$Preparation;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_51614 + p 1 preperation + p 2 profiler + m (Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference;)V method_51615 a method_51615 + m (Lnet/minecraft/client/gui/font/FontSet;)V method_27540 a method_27540 + m (Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/gui/font/FontManager$BuilderId;)Ljava/util/Optional; method_51616 a method_51616 + m (Ljava/util/List;)Ljava/util/Map; resolveProviders a method_51617 + p 1 unresolvedBuilderBundles + m (Ljava/util/List;I)V method_51618 a method_51618 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; loadResourceStack a method_51619 + p 0 resources + p 1 fontId + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)V finalizeProviderLoading a method_51620 + p 1 providers + p 2 fallbackProvider + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51621 a method_51621 + m (Ljava/util/List;Ljava/util/Map;Ljava/lang/Void;)Lnet/minecraft/client/gui/font/FontManager$Preparation; method_51622 a method_51622 + m (Ljava/util/Map$Entry;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle; method_51623 a method_51623 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle;)V method_51624 a method_51624 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51625 a method_51625 + m (Ljava/util/Set;Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V method_51607 a method_51607 + m (Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_51626 a method_51626 + m ()Lnet/minecraft/client/gui/Font; createFontFilterFishy b method_45078 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/FontSet; getFontSetCached b method_57025 + p 1 fontSet + m (Lnet/minecraft/client/Options;)Ljava/util/Set; getFontOptions b method_57026 + p 0 options + m (Ljava/util/List;Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)V method_51627 b method_51627 + m ()Lcom/mojang/blaze3d/font/GlyphProvider$Conditional; createFallbackProvider d method_57027 + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/gui/font/FontManager$BuilderId flb$a net/minecraft/class_378$class_8534 + f Lnet/minecraft/resources/ResourceLocation; fontId a comp_1491 + f Ljava/lang/String; pack b comp_1492 + f I index c comp_1493 + m ()Lnet/minecraft/resources/ResourceLocation; fontId a comp_1491 + m ()Ljava/lang/String; pack b comp_1492 + m ()I index c comp_1493 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;I)V +c net/minecraft/client/gui/font/FontManager$BuilderResult flb$b net/minecraft/class_378$class_8535 + f Lnet/minecraft/client/gui/font/FontManager$BuilderId; id a comp_1494 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2350 + f Lcom/mojang/datafixers/util/Either; result c comp_1495 + m ()Lnet/minecraft/client/gui/font/FontManager$BuilderId; id a comp_1494 + m (Lcom/mojang/blaze3d/font/GlyphProvider$Conditional;)Lcom/mojang/blaze3d/font/GlyphProvider$Conditional; mergeFilters a method_57028 + p 1 conditional + m (Lcom/mojang/blaze3d/font/GlyphProvider;)Ljava/util/List; method_57029 a method_57029 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/Optional; method_51628 a method_51628 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve a method_51629 + p 1 providerResolver + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/Optional; method_51630 a method_51630 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2350 + m ()Lcom/mojang/datafixers/util/Either; result c comp_1495 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lcom/mojang/datafixers/util/Either;)V +c net/minecraft/client/gui/font/FontManager$FontDefinitionFile flb$c net/minecraft/class_378$class_8556 + f Lcom/mojang/serialization/Codec; CODEC a field_44798 + f Ljava/util/List; providers b comp_1518 + m ()Ljava/util/List; providers a comp_1518 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51747 a method_51747 + m (Ljava/util/List;)V + m ()V +c net/minecraft/client/gui/font/FontManager$Preparation flb$d net/minecraft/class_378$class_8536 + f Ljava/util/Map; fontSets a comp_2351 + f Ljava/util/List; allProviders b comp_1497 + m ()Ljava/util/Map; fontSets a comp_2351 + m ()Ljava/util/List; allProviders b comp_1497 + m (Ljava/util/Map;Ljava/util/List;)V +c net/minecraft/client/gui/font/FontManager$UnresolvedBuilderBundle flb$e net/minecraft/class_378$class_8537 + f Lnet/minecraft/resources/ResourceLocation; fontId a comp_1498 + f Ljava/util/List; builders b comp_1499 + f Ljava/util/Set; dependencies c comp_1500 + m ()Lnet/minecraft/resources/ResourceLocation; fontId a comp_1498 + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference;)V add a method_51631 + p 1 builderId + p 2 filter + p 3 glyphProvider + m (Lnet/minecraft/client/gui/font/FontManager$BuilderId;Lnet/minecraft/client/gui/font/FontOption$Filter;Ljava/util/concurrent/CompletableFuture;)V add a method_51632 + p 1 builderId + p 2 filter + p 3 glyphProvider + m (Lnet/minecraft/client/gui/font/FontManager$BuilderResult;)Ljava/util/stream/Stream; method_51633 a method_51633 + m (Ljava/util/function/Function;)Ljava/util/Optional; resolve a method_51634 + p 1 providerResolver + m ()Ljava/util/List; builders b comp_1499 + m ()Ljava/util/Set; dependencies c comp_1500 + m ()Ljava/util/stream/Stream; listBuilders d method_51635 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 fontId + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Set;)V +c net/minecraft/client/gui/font/FontOption flc net/minecraft/class_9243 + f Lnet/minecraft/client/gui/font/FontOption; UNIFORM a field_49112 + f Lnet/minecraft/client/gui/font/FontOption; JAPANESE_VARIANTS b field_49113 + f Lcom/mojang/serialization/Codec; CODEC c field_49114 + f Ljava/lang/String; name d field_49115 + f [Lnet/minecraft/client/gui/font/FontOption; $VALUES e field_49116 + m ()[Lnet/minecraft/client/gui/font/FontOption; $values a method_57030 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/gui/font/FontOption$Filter flc$a net/minecraft/class_9243$class_9244 + f Lcom/mojang/serialization/Codec; CODEC a field_49117 + f Lnet/minecraft/client/gui/font/FontOption$Filter; ALWAYS_PASS b field_49118 + f Ljava/util/Map; values c field_49119 + m (Lnet/minecraft/client/gui/font/FontOption$Filter;)Lnet/minecraft/client/gui/font/FontOption$Filter; merge a method_57031 + p 1 filter + m (Ljava/util/Set;)Z apply a method_57032 + p 1 options + m (Lnet/minecraft/client/gui/font/FontOption$Filter;)Ljava/util/Map; method_57033 b method_57033 + m (Ljava/util/Map;)V + p 1 values + m ()V +c net/minecraft/client/gui/font/FontSet fld net/minecraft/class_377 + f Lnet/minecraft/util/RandomSource; RANDOM a field_2252 + f F LARGE_FORWARD_ADVANCE b field_39934 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager c field_2248 + f Lnet/minecraft/resources/ResourceLocation; name d field_2246 + f Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; missingGlyph e field_2256 + f Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; whiteGlyph f field_20910 + f Ljava/util/List; allProviders g field_49120 + f Ljava/util/List; activeProviders h field_49121 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs i field_2253 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphInfos j field_2257 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; glyphsByWidth k field_2249 + f Ljava/util/List; textures l field_2254 + m ()Lnet/minecraft/resources/ResourceLocation; name a method_57034 + m (I)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; getGlyph a method_2014 + p 1 character + m (IZ)Lcom/mojang/blaze3d/font/GlyphInfo; getGlyphInfo a method_2011 + p 1 character + p 2 filterFishyGlyphs + m (Lcom/mojang/blaze3d/font/GlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; getRandomGlyph a method_2013 + p 1 glyph + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; stitch a method_2012 + p 1 glyphInfo + m (Ljava/util/List;Ljava/util/Set;)V reload a method_2004 + p 1 allProviders + p 2 options + m (Ljava/util/List;Ljava/util/Set;I)V method_57035 a method_57035 + m (Ljava/util/Set;)V reload a method_57036 + p 1 options + m ()Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; whiteGlyph b method_22943 + m (I)Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; computeGlyphInfo b method_40038 + p 1 character + m (Lcom/mojang/blaze3d/font/GlyphInfo;)Z hasFishyAdvance b method_45079 + p 0 glyph + m (Ljava/util/List;Ljava/util/Set;)Ljava/util/List; selectProviders b method_57037 + p 1 providers + p 2 options + m ()V resetTextures c method_57038 + m (I)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; computeBakedGlyph c method_41832 + p 1 character + m ()V closeTextures d method_2010 + m (I)Lit/unimi/dsi/fastutil/ints/IntList; method_57039 d method_57039 + m (I)[[Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; method_51636 e method_51636 + m (I)[Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; method_51637 f method_51637 + m (I)[[Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; method_51638 g method_51638 + m (I)[Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; method_51639 h method_51639 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 name + m ()V +c net/minecraft/client/gui/font/FontSet$GlyphInfoFilter fld$a net/minecraft/class_377$class_7647 + f Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfo a comp_979 + f Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfoNotFishy b comp_980 + f Lnet/minecraft/client/gui/font/FontSet$GlyphInfoFilter; MISSING c field_39935 + m ()Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfo a comp_979 + m (Z)Lcom/mojang/blaze3d/font/GlyphInfo; select a method_45080 + p 1 filterFishyGlyphs + m ()Lcom/mojang/blaze3d/font/GlyphInfo; glyphInfoNotFishy b comp_980 + m (Lcom/mojang/blaze3d/font/GlyphInfo;Lcom/mojang/blaze3d/font/GlyphInfo;)V + m ()V +c net/minecraft/client/gui/font/FontTexture fle net/minecraft/class_380 + f I SIZE e field_32227 + f Lnet/minecraft/client/gui/font/GlyphRenderTypes; renderTypes f field_44759 + f Z colored g field_2263 + f Lnet/minecraft/client/gui/font/FontTexture$Node; root h field_2264 + m (I)I method_51640 a method_51640 + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/glyphs/BakedGlyph; add a method_2022 + p 1 glyphInfo + m (Lnet/minecraft/client/gui/font/GlyphRenderTypes;Z)V + p 1 renderTypes + p 2 colored +c net/minecraft/client/gui/font/FontTexture$Node fle$a net/minecraft/class_380$class_381 + f I x a field_2269 + f I y b field_2268 + f I width c field_2267 + f I height d field_2266 + f Lnet/minecraft/client/gui/font/FontTexture$Node; left e field_2270 + f Lnet/minecraft/client/gui/font/FontTexture$Node; right f field_2271 + f Z occupied g field_2265 + m (Lcom/mojang/blaze3d/font/SheetGlyphInfo;)Lnet/minecraft/client/gui/font/FontTexture$Node; insert a method_2024 + p 1 glyphInfo + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/font/GlyphRenderTypes flf net/minecraft/class_8538 + f Lnet/minecraft/client/renderer/RenderType; normal a comp_1501 + f Lnet/minecraft/client/renderer/RenderType; seeThrough b comp_1502 + f Lnet/minecraft/client/renderer/RenderType; polygonOffset c comp_1503 + m ()Lnet/minecraft/client/renderer/RenderType; normal a comp_1501 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/GlyphRenderTypes; createForIntensityTexture a method_51641 + p 0 id + m (Lnet/minecraft/client/gui/Font$DisplayMode;)Lnet/minecraft/client/renderer/RenderType; select a method_51642 + p 1 displayMode + m ()Lnet/minecraft/client/renderer/RenderType; seeThrough b comp_1502 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/gui/font/GlyphRenderTypes; createForColorTexture b method_51643 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; polygonOffset c comp_1503 + m (Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/RenderType;)V +c net/minecraft/client/gui/font/GlyphRenderTypes$1 flf$1 net/minecraft/class_8538$1 + f [I $SwitchMap$net$minecraft$client$gui$Font$DisplayMode a field_34000 + m ()V +c net/minecraft/client/gui/font/TextFieldHelper flg net/minecraft/class_3728 + f Ljava/util/function/Supplier; getMessageFn a field_24257 + f Ljava/util/function/Consumer; setMessageFn b field_24258 + f Ljava/util/function/Supplier; getClipboardFn c field_16456 + f Ljava/util/function/Consumer; setClipboardFn d field_16458 + f Ljava/util/function/Predicate; stringValidator e field_24259 + f I cursorPos f field_16453 + f I selectionPos g field_16452 + m ()V cut a method_27547 + m (C)Z charTyped a method_16199 + p 1 character + m (I)Z keyPressed a method_16202 + p 1 key + m (II)V setSelectionRange a method_27548 + p 1 selectionStart + p 2 selectionEnd + m (ILnet/minecraft/client/gui/font/TextFieldHelper$CursorStep;)V removeFromCursor a method_42574 + p 1 direction + p 2 step + m (IZ)V moveByChars a method_27549 + p 1 direction + p 2 keepSelection + m (IZLnet/minecraft/client/gui/font/TextFieldHelper$CursorStep;)V moveBy a method_42575 + p 1 direction + p 2 keepSelection + p 3 cursorStep + m (Lnet/minecraft/client/Minecraft;)Ljava/util/function/Supplier; createClipboardGetter a method_27550 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V setClipboardContents a method_27551 + p 0 minecraft + p 1 text + m (Ljava/lang/String;)V insertText a method_16197 + p 1 text + m (Ljava/lang/String;Ljava/lang/String;)V insertText a method_27552 + p 1 text + p 2 clipboardText + m (Z)V setCursorToStart a method_27553 + p 1 keepSelection + m ()V paste b method_27554 + m (I)V moveByChars b method_35727 + p 1 direction + m (IZ)V moveByWords b method_27555 + p 1 direction + p 2 keepSelection + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; getClipboardContents b method_27556 + p 0 minecraft + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V method_27557 b method_27557 + m (Ljava/lang/String;)Ljava/lang/String; getSelected b method_16200 + p 1 text + m (Z)V setCursorToEnd b method_27558 + p 1 keepSelection + m ()V copy c method_27559 + m (I)V moveByWords c method_35728 + p 1 direction + m (IZ)V setCursorPos c method_27560 + p 1 textIndex + p 2 keepSelection + m (Lnet/minecraft/client/Minecraft;)Ljava/util/function/Consumer; createClipboardSetter c method_27561 + p 0 minecraft + m (Ljava/lang/String;)Ljava/lang/String; deleteSelection c method_16198 + p 1 text + m (Z)V resetSelectionIfNeeded c method_27562 + p 1 keepSelection + m ()V selectAll d method_27563 + m (I)V removeWordsFromCursor d method_42576 + p 1 direction + m (Lnet/minecraft/client/Minecraft;)Ljava/lang/String; method_27565 d method_27565 + m ()V setCursorToStart e method_35729 + m (I)V removeCharsFromCursor e method_27564 + p 1 direction + m ()V setCursorToEnd f method_16204 + m (I)V setCursorPos f method_35730 + p 1 textIndex + m ()I getCursorPos g method_16201 + m (I)V setSelectionPos g method_35731 + p 1 textIndex + m ()I getSelectionPos h method_16203 + m (I)I clampToMsgLength h method_27567 + p 1 textIndex + m ()Z isSelecting i method_27568 + m (Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Supplier;Ljava/util/function/Consumer;Ljava/util/function/Predicate;)V + p 1 getMessage + p 2 setMessage + p 3 getClipboard + p 4 setClipboard + p 5 stringValidator +c net/minecraft/client/gui/font/TextFieldHelper$CursorStep flg$a net/minecraft/class_3728$class_7279 + f Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; CHARACTER a field_38308 + f Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; WORD b field_38309 + f [Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; $VALUES c field_38310 + m ()[Lnet/minecraft/client/gui/font/TextFieldHelper$CursorStep; $values a method_42577 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/font/glyphs/BakedGlyph flh net/minecraft/class_382 + f Lnet/minecraft/client/gui/font/GlyphRenderTypes; renderTypes a field_44760 + f F u0 b field_2276 + f F u1 c field_2275 + f F v0 d field_2274 + f F v1 e field_2273 + f F left f field_2272 + f F right g field_2280 + f F up h field_2279 + f F down i field_2278 + m (Lnet/minecraft/client/gui/Font$DisplayMode;)Lnet/minecraft/client/renderer/RenderType; renderType a method_24045 + p 1 displayMode + m (Lnet/minecraft/client/gui/font/glyphs/BakedGlyph$Effect;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;I)V renderEffect a method_22944 + p 1 effect + p 2 matrix + p 3 buffer + p 4 packedLight + m (ZFFLorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFI)V render a method_2025 + p 1 italic + p 2 x + p 3 y + p 4 matrix + p 5 buffer + p 6 red + p 7 green + p 8 blue + p 9 alpha + p 10 packedLight + m (Lnet/minecraft/client/gui/font/GlyphRenderTypes;FFFFFFFF)V + p 1 renderTypes + p 2 u0 + p 3 u1 + p 4 v0 + p 5 v1 + p 6 left + p 7 right + p 8 up + p 9 down +c net/minecraft/client/gui/font/glyphs/BakedGlyph$Effect flh$a net/minecraft/class_382$class_328 + f F x0 a field_2008 + f F y0 b field_2007 + f F x1 c field_2006 + f F y1 d field_2005 + f F depth e field_20911 + f F r f field_2004 + f F g g field_2003 + f F b h field_2010 + f F a i field_2009 + m (FFFFFFFFF)V + p 1 x0 + p 2 y0 + p 3 x1 + p 4 y1 + p 5 depth + p 6 r + p 7 g + p 8 b + p 9 a +c net/minecraft/client/gui/font/glyphs/EmptyGlyph fli net/minecraft/class_384 + f Lnet/minecraft/client/gui/font/glyphs/EmptyGlyph; INSTANCE a field_38311 + m ()V + m ()V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs flj net/minecraft/class_7191 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; WHITE a field_37898 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; MISSING b field_37899 + f Lcom/mojang/blaze3d/platform/NativeImage; image c field_37900 + f [Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; $VALUES d field_37901 + m (II)I method_41833 a method_41833 + m (IILnet/minecraft/client/gui/font/glyphs/SpecialGlyphs$PixelProvider;)Lcom/mojang/blaze3d/platform/NativeImage; generate a method_41834 + p 0 width + p 1 height + p 2 pixelProvider + m (II)I method_41835 b method_41835 + m ()Lcom/mojang/blaze3d/platform/NativeImage; method_41836 c method_41836 + m ()Lcom/mojang/blaze3d/platform/NativeImage; method_41837 d method_41837 + m ()[Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; $values e method_41838 + m (Ljava/lang/String;ILjava/util/function/Supplier;)V + p 3 image + m ()V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs$1 flj$1 net/minecraft/class_7191$1 + f Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs; field_37902 a field_37902 + m (Lnet/minecraft/client/gui/font/glyphs/SpecialGlyphs;)V +c net/minecraft/client/gui/font/glyphs/SpecialGlyphs$PixelProvider flj$a net/minecraft/class_7191$class_7192 +c net/minecraft/client/gui/font/glyphs/package-info flk net/minecraft/class_6209 +c net/minecraft/client/gui/font/package-info fll net/minecraft/class_6210 +c net/minecraft/client/gui/font/providers/BitmapProvider flm net/minecraft/class_386 + f Lorg/slf4j/Logger; LOGGER b field_2286 + f Lcom/mojang/blaze3d/platform/NativeImage; image c field_2285 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs d field_2284 + m (Lcom/mojang/blaze3d/platform/NativeImage;Lnet/minecraft/client/gui/font/CodepointMap;)V + p 1 image + p 2 glyphs + m ()V +c net/minecraft/client/gui/font/providers/BitmapProvider$Definition flm$a net/minecraft/class_386$class_387 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44799 + f Lnet/minecraft/resources/ResourceLocation; file c comp_1519 + f I height d comp_1520 + f I ascent e comp_1521 + f [[I codepointGrid f comp_1522 + f Lcom/mojang/serialization/Codec; CODEPOINT_GRID_CODEC g field_44800 + m (I)[[Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; method_51644 a method_51644 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_2039 + p 1 resoureManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51748 a method_51748 + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)I getActualGlyphWidth a method_2038 + p 1 image + p 2 width + p 3 height + p 4 x + p 5 y + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Definition;)Lcom/mojang/serialization/DataResult; validate a method_51749 + p 0 definition + m (Ljava/util/List;)[[I method_51750 a method_51750 + m ([II)Ljava/lang/String; method_51751 a method_51751 + m ([[I)Lcom/mojang/serialization/DataResult; validateDimensions a method_51752 + p 0 dimensions + m (I)[Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; method_51645 b method_51645 + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Definition;)Ljava/lang/String; method_51753 b method_51753 + m ([[I)Ljava/util/List; method_51754 b method_51754 + m ()Lnet/minecraft/resources/ResourceLocation; file c comp_1519 + m ()I height d comp_1520 + m ()I ascent e comp_1521 + m ()[[I codepointGrid f comp_1522 + m ()Ljava/lang/String; method_51755 g method_51755 + m ()Ljava/lang/String; method_51756 h method_51756 + m (Lnet/minecraft/resources/ResourceLocation;II[[I)V + m ()V +c net/minecraft/client/gui/font/providers/BitmapProvider$Glyph flm$b net/minecraft/class_386$class_388 + f F scale a comp_603 + f Lcom/mojang/blaze3d/platform/NativeImage; image b comp_604 + f I offsetX c comp_605 + f I offsetY d comp_606 + f I width e comp_607 + f I height f comp_608 + f I advance g comp_609 + f I ascent h comp_610 + m ()F scale c comp_603 + m ()Lcom/mojang/blaze3d/platform/NativeImage; image d comp_604 + m ()I offsetX e comp_605 + m ()I offsetY f comp_606 + m ()I width g comp_607 + m ()I height h comp_608 + m ()I advance i comp_609 + m ()I ascent j comp_610 + m (FLcom/mojang/blaze3d/platform/NativeImage;IIIIII)V + p 1 scale + p 2 image + p 3 offsetX + p 4 offsetY + p 5 width + p 6 height + p 7 advance + p 8 ascent +c net/minecraft/client/gui/font/providers/BitmapProvider$Glyph$1 flm$b$1 net/minecraft/class_386$class_388$1 + f Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph; field_37903 a field_37903 + m (Lnet/minecraft/client/gui/font/providers/BitmapProvider$Glyph;)V +c net/minecraft/client/gui/font/providers/FreeTypeUtil fln net/minecraft/class_9111 + f Ljava/lang/Object; LIBRARY_LOCK a field_51483 + f Lorg/slf4j/Logger; LOGGER b field_51484 + f J library c field_48394 + m ()J getLibrary a method_56143 + m (I)Ljava/lang/String; describeError a method_56144 + p 0 errorId + m (ILjava/lang/String;)V assertError a method_59837 + p 0 errorId + p 1 action + m (Lorg/lwjgl/util/freetype/FT_Vector;)F x a method_56146 + p 0 vector + m (Lorg/lwjgl/util/freetype/FT_Vector;FF)Lorg/lwjgl/util/freetype/FT_Vector; setVector a method_56147 + p 0 vector + p 1 x + p 2 y + m ()V destroy b method_56148 + m (ILjava/lang/String;)Z checkError b method_56145 + p 0 errorId + p 1 action + m ()V + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition flo net/minecraft/class_389 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC b field_44801 + m ()Lnet/minecraft/client/gui/font/providers/GlyphProviderType; type a method_51731 + m ()Lcom/mojang/datafixers/util/Either; unpack b method_51734 + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Conditional flo$a net/minecraft/class_389$class_9245 + f Lcom/mojang/serialization/Codec; CODEC a field_49122 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition; definition b comp_2352 + f Lnet/minecraft/client/gui/font/FontOption$Filter; filter c comp_2353 + m ()Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition; definition a comp_2352 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_57040 a method_57040 + m ()Lnet/minecraft/client/gui/font/FontOption$Filter; filter b comp_2353 + m (Lnet/minecraft/client/gui/font/providers/GlyphProviderDefinition;Lnet/minecraft/client/gui/font/FontOption$Filter;)V + m ()V +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Loader flo$b net/minecraft/class_389$class_8539 +c net/minecraft/client/gui/font/providers/GlyphProviderDefinition$Reference flo$c net/minecraft/class_389$class_8540 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1504 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1504 + m (Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/font/providers/GlyphProviderType flp net/minecraft/class_394 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; BITMAP a field_2312 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; TTF b field_2317 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; SPACE c field_37904 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; UNIHEX d field_2313 + f Lnet/minecraft/client/gui/font/providers/GlyphProviderType; REFERENCE e field_44761 + f Lcom/mojang/serialization/Codec; CODEC f field_44802 + f Ljava/lang/String; name g field_2314 + f Lcom/mojang/serialization/MapCodec; codec h field_44803 + f [Lnet/minecraft/client/gui/font/providers/GlyphProviderType; $VALUES i field_2316 + m ()Lcom/mojang/serialization/MapCodec; mapCodec a method_51758 + m ()[Lnet/minecraft/client/gui/font/providers/GlyphProviderType; $values b method_36876 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 name + p 4 codec + m ()V +c net/minecraft/client/gui/font/providers/ProviderReferenceDefinition flq net/minecraft/class_8541 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44762 + f Lnet/minecraft/resources/ResourceLocation; id c comp_1523 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51647 a method_51647 + m ()Lnet/minecraft/resources/ResourceLocation; id c comp_1523 + m (Lnet/minecraft/resources/ResourceLocation;)V + m ()V +c net/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition flr net/minecraft/class_8557 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44804 + f Lnet/minecraft/resources/ResourceLocation; location c comp_1524 + f F size d comp_1525 + f F oversample e comp_1526 + f Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; shift f comp_1527 + f Ljava/lang/String; skip g comp_1528 + f Lcom/mojang/serialization/Codec; SKIP_LIST_CODEC h field_44805 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_51759 + p 1 resourceManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51761 a method_51761 + m (Ljava/util/List;)Ljava/lang/String; method_52730 a method_52730 + m ()Lnet/minecraft/resources/ResourceLocation; location c comp_1524 + m ()F size d comp_1525 + m ()F oversample e comp_1526 + m ()Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; shift f comp_1527 + m ()Ljava/lang/String; skip g comp_1528 + m (Lnet/minecraft/resources/ResourceLocation;FFLnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift;Ljava/lang/String;)V + m ()V +c net/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift flr$a net/minecraft/class_8557$class_8558 + f Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; NONE a field_44806 + f Lcom/mojang/serialization/Codec; CODEC b field_44807 + f F x c comp_1529 + f F y d comp_1530 + m ()F x a comp_1529 + m (Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift;)Ljava/util/List; method_51764 a method_51764 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_51765 a method_51765 + m ()F y b comp_1530 + m (Ljava/util/List;)Lnet/minecraft/client/gui/font/providers/TrueTypeGlyphProviderDefinition$Shift; method_51766 b method_51766 + m (FF)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider fls net/minecraft/class_391 + f Lorg/slf4j/Logger; LOGGER b field_2303 + f I GLYPH_HEIGHT c field_44764 + f I DIGITS_PER_BYTE d field_44765 + f I DIGITS_FOR_WIDTH_8 e field_44766 + f I DIGITS_FOR_WIDTH_16 f field_44767 + f I DIGITS_FOR_WIDTH_24 g field_44768 + f I DIGITS_FOR_WIDTH_32 h field_44769 + f Lnet/minecraft/client/gui/font/CodepointMap; glyphs i field_44770 + m (IB)I decodeHex a method_51651 + p 0 lineNumber + p 1 data + m (ILit/unimi/dsi/fastutil/bytes/ByteList;I)I decodeHex a method_51652 + p 0 lineNumber + p 1 byteList + p 2 index + m (Ljava/io/InputStream;Lnet/minecraft/client/gui/font/providers/UnihexProvider$ReaderOutput;)V readFromStream a method_51653 + p 0 stream + p 1 output + m (Ljava/io/InputStream;Lit/unimi/dsi/fastutil/bytes/ByteList;I)Z copyUntil a method_51654 + p 0 stream + p 1 byteList + p 2 value + m (Ljava/nio/IntBuffer;III)V unpackBitsToBytes a method_51655 + p 0 buffer + p 1 lineData + p 2 left + p 3 right + m (Ljava/nio/IntBuffer;Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;II)V unpackBitsToBytes a method_51656 + p 0 buffer + p 1 lineData + p 2 left + p 3 right + m (Lnet/minecraft/client/gui/font/CodepointMap;)V + p 1 glyph + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$ByteContents fls$a net/minecraft/class_391$class_7736 + f [B contents a comp_1505 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read a method_51669 + p 0 index + p 1 byteList + m ()[B contents b comp_1505 + m ([B)V +c net/minecraft/client/gui/font/providers/UnihexProvider$Definition fls$b net/minecraft/class_391$class_392 + f Lcom/mojang/serialization/MapCodec; CODEC a field_44771 + f Lnet/minecraft/resources/ResourceLocation; hexFile c field_2304 + f Ljava/util/List; sizeOverrides d field_44772 + m (I)[[Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; method_51657 a method_51657 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lcom/mojang/blaze3d/font/GlyphProvider; load a method_51658 + p 1 resourceManager + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51659 a method_51659 + m (Lnet/minecraft/client/gui/font/CodepointMap;ILnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;)V method_51660 a method_51660 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Definition;)Ljava/util/List; method_51661 a method_51661 + m (Ljava/io/InputStream;)Lnet/minecraft/client/gui/font/providers/UnihexProvider; loadData a method_51662 + p 1 inputStream + m (I)[Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; method_51664 b method_51664 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Definition;)Lnet/minecraft/resources/ResourceLocation; method_51665 b method_51665 + m (I)[[Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; method_51666 c method_51666 + m (I)[Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; method_51667 d method_51667 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 hexFile + p 2 sizeOverrides + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$Dimensions fls$c net/minecraft/class_391$class_8542 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_44773 + f Lcom/mojang/serialization/Codec; CODEC b field_44774 + f I left c comp_1506 + f I right d comp_1507 + m ()I pack a method_51670 + m (I)I left a method_51671 + p 0 packedDimensions + m (II)I pack a method_51672 + p 0 left + p 1 right + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51673 a method_51673 + m ()I left b comp_1506 + m (I)I right b method_51674 + p 0 packedDimensions + m ()I right c comp_1507 + m (II)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$Glyph fls$d net/minecraft/class_391$class_393 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; contents a comp_1508 + f I left b comp_1509 + f I right c comp_1510 + m ()I width c method_51675 + m ()Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; contents d comp_1508 + m ()I left e comp_1509 + m ()I right f comp_1510 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData;II)V +c net/minecraft/client/gui/font/providers/UnihexProvider$Glyph$1 fls$d$1 net/minecraft/class_391$class_393$1 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph; field_37906 a field_37906 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$Glyph;)V +c net/minecraft/client/gui/font/providers/UnihexProvider$IntContents fls$e net/minecraft/class_391$class_8543 + f [I contents a comp_1511 + f I bitWidth b comp_1512 + f I SIZE_24 c field_44775 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read32 a method_51676 + p 0 index + p 1 byteList + m ()[I contents b comp_1511 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read24 b method_51677 + p 0 index + p 1 byteList + m ([II)V +c net/minecraft/client/gui/font/providers/UnihexProvider$LineData fls$f net/minecraft/class_391$class_8544 + m ()I bitWidth a comp_1512 + m (I)I line a method_51668 + p 1 index + m ()I mask c method_51678 + m ()I calculateWidth d method_51679 +c net/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange fls$g net/minecraft/class_391$class_8545 + f Lcom/mojang/serialization/Codec; CODEC a field_44776 + f I from b comp_1513 + f I to c comp_1514 + f Lnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions; dimensions d comp_1515 + f Lcom/mojang/serialization/Codec; RAW_CODEC e field_44777 + m ()I from a comp_1513 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51680 a method_51680 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange;)Lcom/mojang/serialization/DataResult; method_51681 a method_51681 + m ()I to b comp_1514 + m (Lnet/minecraft/client/gui/font/providers/UnihexProvider$OverrideRange;)Ljava/lang/String; method_51682 b method_51682 + m ()Lnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions; dimensions c comp_1515 + m (IILnet/minecraft/client/gui/font/providers/UnihexProvider$Dimensions;)V + m ()V +c net/minecraft/client/gui/font/providers/UnihexProvider$ReaderOutput fls$h net/minecraft/class_391$class_8546 +c net/minecraft/client/gui/font/providers/UnihexProvider$ShortContents fls$i net/minecraft/class_391$class_8547 + f [S contents a comp_1516 + m (ILit/unimi/dsi/fastutil/bytes/ByteList;)Lnet/minecraft/client/gui/font/providers/UnihexProvider$LineData; read a method_51683 + p 0 index + p 1 byteList + m ()[S contents b comp_1516 + m ([S)V +c net/minecraft/client/gui/font/providers/package-info flt net/minecraft/class_6211 +c net/minecraft/client/gui/layouts/AbstractLayout flu net/minecraft/class_7838 + f I width a field_41813 + f I height b field_41814 + f I x c field_41815 + f I y d field_41816 + m (ILnet/minecraft/client/gui/layouts/LayoutElement;)V method_48223 a method_48223 + m (ILnet/minecraft/client/gui/layouts/LayoutElement;)V method_48226 b method_48226 + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/AbstractLayout$AbstractChildWrapper flu$a net/minecraft/class_7838$class_7839 + f Lnet/minecraft/client/gui/layouts/LayoutElement; child a field_40752 + f Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; layoutSettings b field_40753 + m ()I getHeight a method_46422 + m (II)V setX a method_46423 + p 1 x + p 2 width + m ()I getWidth b method_46424 + m (II)V setY b method_46425 + p 1 y + p 2 height + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V + p 1 child + p 2 layoutSettings +c net/minecraft/client/gui/layouts/CommonLayouts flv net/minecraft/class_8767 + f I LABEL_SPACING a field_46007 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/layouts/Layout; labeledElement a method_53549 + p 0 font + p 1 element + p 2 label + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/network/chat/Component;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/Layout; labeledElement a method_53550 + p 0 font + p 1 element + p 2 label + p 3 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_53551 a method_53551 + m ()V +c net/minecraft/client/gui/layouts/EqualSpacingLayout flw net/minecraft/class_7849 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; orientation c field_40784 + f Ljava/util/List; children d field_40785 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSettings e field_40787 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46495 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46496 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52731 + p 1 child + p 2 layoutSettingsCreator + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)V method_48230 a method_48230 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newChildLayoutSettings b method_46499 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSetting c method_46500 + m (IILnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation;)V + p 1 width + p 2 height + p 3 orientation + m (IIIILnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 orientation +c net/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer flw$a net/minecraft/class_7849$class_7850 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V +c net/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation flw$b net/minecraft/class_7849$class_7851 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; HORIZONTAL a field_40789 + f Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; VERTICAL b field_40790 + f [Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; $VALUES c field_40791 + m ()[Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$Orientation; $values a method_46501 + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)I getPrimaryLength a method_46504 + p 1 container + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;I)V setPrimaryPosition a method_46505 + p 1 container + p 2 position + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;II)V setSecondaryPosition a method_46506 + p 1 container + p 2 position + p 3 length + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getPrimaryLength a method_46502 + p 1 element + m (Lnet/minecraft/client/gui/layouts/EqualSpacingLayout$ChildContainer;)I getSecondaryLength b method_46508 + p 1 container + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getSecondaryLength b method_46507 + p 1 element + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getPrimaryPosition c method_46509 + p 1 element + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)I getSecondaryPosition d method_46510 + p 1 element + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/layouts/FrameLayout flx net/minecraft/class_7843 + f Ljava/util/List; children c field_40766 + f I minWidth d field_40768 + f I minHeight e field_40769 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSettings f field_40770 + m (I)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinHeight a method_46447 + p 1 minHeight + m (II)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinDimensions a method_46446 + p 1 minWidth + p 2 minHeight + m (IIILjava/util/function/Consumer;F)V alignInDimension a method_46440 + p 0 position + p 1 rectangleLength + p 2 childLength + p 3 setter + p 4 delta + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46441 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIII)V centerInRectangle a method_46442 + p 0 child + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIIFF)V alignInRectangle a method_46443 + p 0 child + p 1 x + p 2 y + p 3 width + p 4 height + p 5 deltaX + p 6 deltaY + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46444 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V centerInRectangle a method_48634 + p 0 child + p 1 rectangle + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/navigation/ScreenRectangle;FF)V alignInRectangle a method_49617 + p 0 child + p 1 rectangle + p 2 deltaX + p 3 deltaY + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52732 + p 1 child + p 2 layoutSettingsFactory + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/FrameLayout$ChildContainer;)V method_48228 a method_48228 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newChildLayoutSettings b method_46448 + m (I)Lnet/minecraft/client/gui/layouts/FrameLayout; setMinWidth b method_46449 + p 1 minWidth + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultChildLayoutSetting c method_46450 + m ()V + m (II)V + p 1 width + p 2 height + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/FrameLayout$ChildContainer flx$a net/minecraft/class_7843$class_7844 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)V +c net/minecraft/client/gui/layouts/GridLayout fly net/minecraft/class_7845 + f Ljava/util/List; children c field_40771 + f Ljava/util/List; cellInhabitants d field_40772 + f Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSettings e field_40773 + f I rowSpacing f field_42154 + f I columnSpacing g field_42155 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; columnSpacing a method_48635 + p 1 columnSpacing + m (Lnet/minecraft/client/gui/layouts/LayoutElement;II)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46452 + p 1 child + p 2 row + p 3 column + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIII)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46453 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46454 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILjava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52733 + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettingsFactory + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_46455 + p 1 child + p 2 row + p 3 column + p 4 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IILjava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52734 + p 1 child + p 2 row + p 3 column + p 4 layoutSettingsFactory + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_46457 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; rowSpacing b method_48636 + p 1 rowSpacing + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_46458 + m (I)Lnet/minecraft/client/gui/layouts/GridLayout; spacing c method_48637 + p 1 spacing + m (I)Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper; createRowHelper d method_47610 + p 1 columns + m ()V + m (II)V + p 1 x + p 2 y +c net/minecraft/client/gui/layouts/GridLayout$CellInhabitant fly$a net/minecraft/class_7845$class_7846 + f I row c field_40774 + f I column d field_40775 + f I occupiedRows e field_40776 + f I occupiedColumns f field_40777 + m ()I getLastOccupiedRow c method_46459 + m ()I getLastOccupiedColumn d method_46460 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;IIIILnet/minecraft/client/gui/layouts/LayoutSettings;)V + p 1 child + p 2 row + p 3 column + p 4 occupiedRows + p 5 occupiedColumns + p 6 layoutSettings +c net/minecraft/client/gui/layouts/GridLayout$RowHelper fly$b net/minecraft/class_7845$class_7939 + f Lnet/minecraft/client/gui/layouts/GridLayout; field_41338 a field_41338 + f I columns b field_41339 + f I index c field_41340 + m ()Lnet/minecraft/client/gui/layouts/GridLayout; getGrid a method_48638 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47612 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;I)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47613 + p 1 child + p 2 occupiedColumns + m (Lnet/minecraft/client/gui/layouts/LayoutElement;ILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47614 + p 1 child + p 2 occupiedColumns + p 3 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_47615 + p 1 child + p 2 layoutSettings + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_47611 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_47616 + m (Lnet/minecraft/client/gui/layouts/GridLayout;I)V + p 2 columns +c net/minecraft/client/gui/layouts/HeaderAndFooterLayout flz net/minecraft/class_8132 + f I DEFAULT_HEADER_AND_FOOTER_HEIGHT a field_42490 + f I CONTENT_MARGIN_TOP b field_43136 + f Lnet/minecraft/client/gui/layouts/FrameLayout; headerFrame c field_42491 + f Lnet/minecraft/client/gui/layouts/FrameLayout; footerFrame d field_42492 + f Lnet/minecraft/client/gui/layouts/FrameLayout; contentsFrame e field_42493 + f Lnet/minecraft/client/gui/screens/Screen; screen f field_42494 + f I headerHeight g field_42495 + f I footerHeight h field_42496 + m (I)V setFooterHeight a method_48991 + p 1 footerHeight + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToHeader a method_48992 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToHeader a method_48993 + p 1 child + p 2 layoutSettingsFactory + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/Font;)V addTitleHeader a method_57726 + p 1 message + p 2 font + m ()I getFooterHeight b method_48994 + m (I)V setHeaderHeight b method_48995 + p 1 headerHeight + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToFooter b method_48996 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToFooter b method_48997 + p 1 child + p 2 layoutSettingsFactory + m ()I getHeaderHeight c method_48998 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToContents c method_48999 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addToContents c method_49000 + p 1 child + p 2 layoutSettingFactory + m ()I getContentHeight d method_57727 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 screen + m (Lnet/minecraft/client/gui/screens/Screen;I)V + p 1 screen + p 2 height + m (Lnet/minecraft/client/gui/screens/Screen;II)V + p 1 screen + p 2 headerHeight + p 3 footerHeight +c net/minecraft/client/gui/layouts/Layout fma net/minecraft/class_8133 + m ()V arrangeElements a method_48222 + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_49004 a method_49004 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_49005 a method_49005 + m (Ljava/util/function/Consumer;)V visitChildren b method_48227 + p 1 visitor +c net/minecraft/client/gui/layouts/LayoutElement fmb net/minecraft/class_8021 + m ()I getX D method_46426 + m ()I getY E method_46427 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; getRectangle H method_48202 + m (Ljava/util/function/Consumer;)V visitWidgets a method_48206 + p 1 consumer + m (II)V setPosition c method_48229 + p 1 x + p 2 y + m (I)V setX m method_46421 + p 1 x + m (I)V setY n method_46419 + p 1 y + m ()I getHeight w method_25364 + m ()I getWidth y method_25368 +c net/minecraft/client/gui/layouts/LayoutSettings fmc net/minecraft/class_7847 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyLeft a method_46461 + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontally a method_46462 + p 1 xAlignment + m (FF)Lnet/minecraft/client/gui/layouts/LayoutSettings; align a method_46463 + p 1 xAlignment + p 2 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46464 + p 1 padding + m (II)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46465 + p 1 horizontalPadding + p 2 verticalPadding + m (IIII)Lnet/minecraft/client/gui/layouts/LayoutSettings; padding a method_46466 + p 1 paddingLeft + p 2 paddingTop + p 3 paddingRight + p 4 paddingBottom + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyCenter b method_46467 + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVertically b method_46468 + p 1 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingLeft b method_46469 + p 1 paddingLeft + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignHorizontallyRight c method_46470 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingTop c method_46471 + p 1 paddingTop + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyTop d method_46472 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingRight d method_46473 + p 1 paddingRight + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyMiddle e method_46474 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingBottom e method_46475 + p 1 paddingBottom + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; alignVerticallyBottom f method_46476 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingHorizontal f method_46477 + p 1 horizontalPadding + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; copy g method_46478 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings; paddingVertical g method_46479 + p 1 verticalPadding + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; getExposed h method_46480 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaults i method_46481 +c net/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl fmc$a net/minecraft/class_7847$class_7848 + f I paddingLeft a field_40778 + f I paddingTop b field_40779 + f I paddingRight c field_40780 + f I paddingBottom d field_40781 + f F xAlignment e field_40782 + f F yAlignment f field_40783 + m (FF)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; align b method_46482 + p 1 xAlignment + p 2 yAlignment + m (II)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding b method_46483 + p 1 horizontalPadding + p 2 verticalPadding + m (IIII)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding b method_46484 + p 1 paddingLeft + p 2 paddingTop + p 3 paddingRight + p 4 paddingBottom + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; alignHorizontally c method_46485 + p 1 xAlignment + m (F)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; alignVertically d method_46486 + p 1 yAlignment + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; padding h method_46487 + p 1 padding + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingLeft i method_46488 + p 1 paddingLeft + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; copy j method_46489 + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingTop j method_46490 + p 1 paddingTop + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingRight k method_46491 + p 1 paddingRight + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingBottom l method_46492 + p 1 paddingBottom + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingHorizontal m method_46493 + p 1 horizontalPadding + m (I)Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl; paddingVertical n method_46494 + p 1 verticalPadding + m ()V + m (Lnet/minecraft/client/gui/layouts/LayoutSettings$LayoutSettingsImpl;)V + p 1 other +c net/minecraft/client/gui/layouts/LinearLayout fmd net/minecraft/class_8667 + f Lnet/minecraft/client/gui/layouts/GridLayout; wrapped a field_45400 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; orientation b field_45401 + f I nextChildIndex c field_45402 + m (I)Lnet/minecraft/client/gui/layouts/LinearLayout; spacing a method_52735 + p 1 spacing + m (Lnet/minecraft/client/gui/layouts/LayoutElement;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52736 + p 1 child + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Lnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52737 + p 1 child + p 2 layoutSettings + m (Lnet/minecraft/client/gui/layouts/LayoutElement;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52738 + p 1 child + p 2 layoutSettingsFactory + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; newCellSettings b method_52739 + m ()Lnet/minecraft/client/gui/layouts/LayoutSettings; defaultCellSetting c method_52740 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; vertical d method_52741 + m ()Lnet/minecraft/client/gui/layouts/LinearLayout; horizontal e method_52742 + m (Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation;)V + p 1 orientation + m (IILnet/minecraft/client/gui/layouts/LinearLayout$Orientation;)V + p 1 width + p 2 height + p 3 orientation +c net/minecraft/client/gui/layouts/LinearLayout$Orientation fmd$a net/minecraft/class_8667$class_8668 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; HORIZONTAL a field_45403 + f Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; VERTICAL b field_45404 + f [Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; $VALUES c field_45405 + m ()[Lnet/minecraft/client/gui/layouts/LinearLayout$Orientation; $values a method_52743 + m (Lnet/minecraft/client/gui/layouts/GridLayout;I)V setSpacing a method_52744 + p 1 layout + p 2 spacing + m (Lnet/minecraft/client/gui/layouts/GridLayout;Lnet/minecraft/client/gui/layouts/LayoutElement;ILnet/minecraft/client/gui/layouts/LayoutSettings;)Lnet/minecraft/client/gui/layouts/LayoutElement; addChild a method_52745 + p 1 layout + p 2 element + p 3 index + p 4 layoutSettings + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/layouts/SpacerElement fme net/minecraft/class_7852 + f I x a field_41818 + f I y b field_41819 + f I width c field_41820 + f I height d field_41821 + m (I)Lnet/minecraft/client/gui/layouts/SpacerElement; width a method_46512 + p 0 width + m (I)Lnet/minecraft/client/gui/layouts/SpacerElement; height b method_46513 + p 0 height + m (II)V + p 1 width + p 2 height + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height +c net/minecraft/client/gui/layouts/package-info fmf net/minecraft/class_8022 +c net/minecraft/client/gui/narration/NarratableEntry fmg net/minecraft/class_6379 + c An interface for GUI elements that can provide narration information. + m ()Z isActive C method_37303 + c {@return {@code true} if the element is active, {@code false} otherwise} + m ()Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; narrationPriority u method_37018 + c {@return the narration priority} +c net/minecraft/client/gui/narration/NarratableEntry$NarrationPriority fmg$a net/minecraft/class_6379$class_6380 + c The narration priority levels. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; NONE a field_33784 + c No narration priority. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; HOVERED b field_33785 + c Narration priority when the element is being hovered. + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; FOCUSED c field_33786 + c Narration priority when the element is focused. + f [Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; $VALUES d field_33787 + m ()Z isTerminal a method_37028 + c Checks if the narration priority is terminal, indicating that no further narration will occur after this.\n

\n@return {@code true} if the narration priority is terminal, {@code false} otherwise. + m ()[Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; $values b method_37029 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/narration/NarratedElementType fmh net/minecraft/class_6381 + f Lnet/minecraft/client/gui/narration/NarratedElementType; TITLE a field_33788 + f Lnet/minecraft/client/gui/narration/NarratedElementType; POSITION b field_33789 + f Lnet/minecraft/client/gui/narration/NarratedElementType; HINT c field_33790 + f Lnet/minecraft/client/gui/narration/NarratedElementType; USAGE d field_33791 + f [Lnet/minecraft/client/gui/narration/NarratedElementType; $VALUES e field_33792 + m ()[Lnet/minecraft/client/gui/narration/NarratedElementType; $values a method_37030 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/narration/NarrationElementOutput fmi net/minecraft/class_6382 + m ()Lnet/minecraft/client/gui/narration/NarrationElementOutput; nest a method_37031 + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Lnet/minecraft/client/gui/narration/NarrationThunk;)V add a method_37032 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Ljava/lang/String;)V add a method_37033 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;Lnet/minecraft/network/chat/Component;)V add a method_37034 + p 1 type + p 2 contents + m (Lnet/minecraft/client/gui/narration/NarratedElementType;[Lnet/minecraft/network/chat/Component;)V add a method_37035 + p 1 type + p 2 contents +c net/minecraft/client/gui/narration/NarrationSupplier fmj net/minecraft/class_6383 + c An interface for providing narration information. + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarration b method_37020 + c Updates the narration output with the current narration information. + p 1 narrationElementOutput + c the output to update with narration information. +c net/minecraft/client/gui/narration/NarrationThunk fmk net/minecraft/class_6384 + f Lnet/minecraft/client/gui/narration/NarrationThunk; EMPTY a field_33793 + f Ljava/lang/Object; contents b field_33794 + f Ljava/util/function/BiConsumer; converter c field_33795 + m (Ljava/lang/String;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37036 + p 0 text + m (Ljava/util/List;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37037 + p 0 components + m (Ljava/util/List;Ljava/util/function/Consumer;Ljava/util/List;)V method_37038 a method_37038 + m (Ljava/util/function/Consumer;)V getText a method_37039 + p 1 consumer + m (Ljava/util/function/Consumer;Lnet/minecraft/util/Unit;)V method_37040 a method_37040 + m (Ljava/util/function/Consumer;Lnet/minecraft/network/chat/Component;)V method_37041 a method_37041 + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/narration/NarrationThunk; from a method_37042 + p 0 component + m (Ljava/lang/Object;Ljava/util/function/BiConsumer;)V + p 1 contents + p 2 converter + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector fml net/minecraft/class_6385 + f I generation a field_33796 + f Ljava/util/Map; entries b field_33797 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Ljava/lang/Integer; method_37043 a method_37043 + m (Ljava/util/function/Consumer;)V update a method_37044 + p 1 updater + m (Z)Ljava/lang/String; collectNarrationText a method_37045 + p 1 collectAll + m (ZLjava/util/function/Consumer;Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry;)V method_37046 a method_37046 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Lnet/minecraft/client/gui/narration/NarratedElementType; method_37047 b method_37047 + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$1 fml$1 net/minecraft/class_6385$1 + f Ljava/lang/StringBuilder; val$result a field_33798 + f Z firstEntry b field_33800 + m (Ljava/lang/String;)V accept a method_37048 + p 1 str + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector;Ljava/lang/StringBuilder;)V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey fml$a net/minecraft/class_6385$class_6386 + f Lnet/minecraft/client/gui/narration/NarratedElementType; type a field_33801 + f I depth b field_33802 + m (Lnet/minecraft/client/gui/narration/NarratedElementType;I)V + p 1 type + p 2 depth +c net/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry fml$b net/minecraft/class_6385$class_6387 + f Lnet/minecraft/client/gui/narration/NarrationThunk; contents a field_33803 + f I generation b field_33804 + f Z alreadyNarrated c field_33805 + m (ILnet/minecraft/client/gui/narration/NarrationThunk;)Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry; update a method_37049 + p 1 generation + p 2 contents + m ()V +c net/minecraft/client/gui/narration/ScreenNarrationCollector$Output fml$c net/minecraft/class_6385$class_6388 + f Lnet/minecraft/client/gui/narration/ScreenNarrationCollector; field_33806 a field_33806 + f I depth b field_33807 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$EntryKey;)Lnet/minecraft/client/gui/narration/ScreenNarrationCollector$NarrationEntry; method_37050 a method_37050 + m (Lnet/minecraft/client/gui/narration/ScreenNarrationCollector;I)V + p 2 depth +c net/minecraft/client/gui/narration/package-info fmm net/minecraft/class_6389 +c net/minecraft/client/gui/navigation/CommonInputs fmn net/minecraft/class_8494 + m (I)Z selected a method_51255 + p 0 key + m ()V +c net/minecraft/client/gui/navigation/FocusNavigationEvent fmo net/minecraft/class_8023 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getVerticalDirectionForInitialFocus a method_48231 +c net/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation fmo$a net/minecraft/class_8023$class_8024 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; direction a comp_1191 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; direction b comp_1191 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)V +c net/minecraft/client/gui/navigation/FocusNavigationEvent$InitialFocus fmo$b net/minecraft/class_8023$class_8025 + m ()V +c net/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation fmo$c net/minecraft/class_8023$class_8026 + f Z forward a comp_1192 + m ()Z forward b comp_1192 + m (Z)V +c net/minecraft/client/gui/navigation/ScreenAxis fmp net/minecraft/class_8027 + f Lnet/minecraft/client/gui/navigation/ScreenAxis; HORIZONTAL a field_41822 + f Lnet/minecraft/client/gui/navigation/ScreenAxis; VERTICAL b field_41823 + f [Lnet/minecraft/client/gui/navigation/ScreenAxis; $VALUES c field_41824 + m ()Lnet/minecraft/client/gui/navigation/ScreenAxis; orthogonal a method_48232 + m (Z)Lnet/minecraft/client/gui/navigation/ScreenDirection; getDirection a method_48233 + p 1 isPositive + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getPositive b method_48234 + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getNegative c method_48235 + m ()[Lnet/minecraft/client/gui/navigation/ScreenAxis; $values d method_48236 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/navigation/ScreenDirection fmq net/minecraft/class_8028 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; UP a field_41826 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; DOWN b field_41827 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; LEFT c field_41828 + f Lnet/minecraft/client/gui/navigation/ScreenDirection; RIGHT d field_41829 + f Lit/unimi/dsi/fastutil/ints/IntComparator; coordinateValueComparator e field_41830 + f [Lnet/minecraft/client/gui/navigation/ScreenDirection; $VALUES f field_41831 + m ()Lnet/minecraft/client/gui/navigation/ScreenAxis; getAxis a method_48237 + m (II)Z isAfter a method_48238 + p 1 first + p 2 second + m ()Lnet/minecraft/client/gui/navigation/ScreenDirection; getOpposite b method_48239 + m (II)Z isBefore b method_48240 + p 1 first + p 2 second + m ()Z isPositive c method_48241 + m (II)I method_48242 c method_48242 + m ()Lit/unimi/dsi/fastutil/ints/IntComparator; coordinateValueComparator d method_48243 + m ()[Lnet/minecraft/client/gui/navigation/ScreenDirection; $values e method_48244 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/navigation/ScreenPosition fmr net/minecraft/class_8029 + f I x a comp_1193 + f I y b comp_1194 + m ()I x a comp_1193 + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getCoordinate a method_48245 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;II)Lnet/minecraft/client/gui/navigation/ScreenPosition; of a method_48246 + p 0 axis + p 1 primaryPosition + p 2 secondaryPosition + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenPosition; step a method_48247 + p 1 direction + m ()I y b comp_1194 + m (II)V +c net/minecraft/client/gui/navigation/ScreenPosition$1 fmr$1 net/minecraft/class_8029$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenAxis a field_41833 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenDirection b field_41834 + m ()V +c net/minecraft/client/gui/navigation/ScreenRectangle fms net/minecraft/class_8030 + f Lnet/minecraft/client/gui/navigation/ScreenPosition; position a comp_1195 + f I width b comp_1196 + f I height c comp_1197 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; EMPTY d field_41835 + m ()Lnet/minecraft/client/gui/navigation/ScreenRectangle; empty a method_48248 + m (II)Z containsPoint a method_58137 + p 1 x + p 2 y + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getLength a method_48249 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;IIII)Lnet/minecraft/client/gui/navigation/ScreenRectangle; of a method_48250 + p 0 axis + p 1 primaryPosition + p 2 secondaryPosition + p 3 primaryLength + p 4 secondaryLength + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; step a method_48251 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Z overlaps a method_48252 + p 1 rectangle + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;Lnet/minecraft/client/gui/navigation/ScreenAxis;)Z overlapsInAxis a method_48253 + p 1 rectangle + p 2 axis + m ()I top b method_49618 + m (Lnet/minecraft/client/gui/navigation/ScreenAxis;)I getCenterInAxis b method_48254 + p 1 axis + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)I getBoundInDirection b method_48255 + p 1 direction + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; intersection b method_49701 + p 1 rectangle + m ()I bottom c method_49619 + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/ScreenRectangle; getBorder c method_48256 + p 1 direction + m ()I left d method_49620 + m ()I right e method_49621 + m ()Lnet/minecraft/client/gui/navigation/ScreenPosition; position f comp_1195 + m ()I width g comp_1196 + m ()I height h comp_1197 + m (IIII)V + p 1 x + p 2 y + p 3 width + p 4 height + m (Lnet/minecraft/client/gui/navigation/ScreenPosition;II)V + m ()V +c net/minecraft/client/gui/navigation/ScreenRectangle$1 fms$1 net/minecraft/class_8030$1 + f [I $SwitchMap$net$minecraft$client$gui$navigation$ScreenAxis a field_41836 + m ()V +c net/minecraft/client/gui/navigation/package-info fmt net/minecraft/class_8031 +c net/minecraft/client/gui/package-info fmu net/minecraft/class_6212 +c net/minecraft/client/gui/screens/AccessibilityOnboardingScreen fmv net/minecraft/class_8032 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout A field_49491 + f Lnet/minecraft/network/chat/Component; TITLE a field_49490 + f Lnet/minecraft/network/chat/Component; ONBOARDING_NARRATOR_MESSAGE b field_41837 + f I PADDING c field_41838 + f I TITLE_PADDING r field_41839 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer s field_41841 + f Lnet/minecraft/client/Options; options u field_41842 + f Z narratorAvailable v field_42038 + f Z hasNarrated w field_41843 + f F timer x field_41844 + f Ljava/lang/Runnable; onClose y field_46008 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; textWidget z field_41845 + m ()V handleInitialNarrationDelay C method_48260 + m (Lnet/minecraft/client/gui/components/Button;)V method_48639 a method_48639 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52746 a method_52746 + m (Lnet/minecraft/client/gui/screens/Screen;)V closeAndSetScreen a method_49296 + p 1 screen + m (ZLjava/lang/Runnable;)V close a method_53552 + p 1 markAsFinished + p 2 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_49297 b method_49297 + m (Lnet/minecraft/client/gui/screens/Screen;)V method_53553 b method_53553 + m (Lnet/minecraft/client/gui/components/Button;)V method_49298 c method_49298 + m ()I initTitleYPos m method_48259 + m (Lnet/minecraft/client/Options;Ljava/lang/Runnable;)V + p 1 options + p 2 onClose + m ()V +c net/minecraft/client/gui/screens/AlertScreen fmw net/minecraft/class_403 + f I LABEL_Y a field_39539 + f Lnet/minecraft/network/chat/Component; messageText b field_2346 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message c field_2348 + f Ljava/lang/Runnable; callback r field_2345 + f Lnet/minecraft/network/chat/Component; okButton s field_2349 + f Z shouldCloseOnEsc u field_39540 + m (Lnet/minecraft/client/gui/components/Button;)V method_19790 a method_19790 + m (Ljava/lang/Runnable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 text + m (Ljava/lang/Runnable;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 messageText + p 4 okButton + p 5 shouldCloseOnEsc +c net/minecraft/client/gui/screens/BackupConfirmScreen fmx net/minecraft/class_405 + f Lnet/minecraft/client/gui/screens/BackupConfirmScreen$Listener; onProceed a field_46857 + f I id b field_32236 + f Ljava/lang/Runnable; onCancel c field_46858 + f Lnet/minecraft/network/chat/Component; description r field_2364 + f Z promptForCacheErase s field_19232 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message u field_2365 + f Lnet/minecraft/client/gui/components/Checkbox; eraseCache v field_19234 + m (Lnet/minecraft/client/gui/components/Button;)V method_19791 a method_19791 + m (Lnet/minecraft/client/gui/components/Button;)V method_19792 b method_19792 + m (Lnet/minecraft/client/gui/components/Button;)V method_19793 c method_19793 + m (Ljava/lang/Runnable;Lnet/minecraft/client/gui/screens/BackupConfirmScreen$Listener;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Z)V + p 1 onCancel + p 2 onProceed + p 3 title + p 4 description + p 5 promptForCacheErase +c net/minecraft/client/gui/screens/BackupConfirmScreen$Listener fmx$a net/minecraft/class_405$class_406 +c net/minecraft/client/gui/screens/BanNoticeScreens fmy net/minecraft/class_7588 + f Lnet/minecraft/network/chat/Component; NAME_BAN_TITLE a field_46009 + f Lnet/minecraft/network/chat/Component; TEMPORARY_BAN_TITLE b field_39720 + f Lnet/minecraft/network/chat/Component; PERMANENT_BAN_TITLE c field_39721 + f Lnet/minecraft/network/chat/Component; SKIN_BAN_TITLE d field_46010 + f Lnet/minecraft/network/chat/Component; SKIN_BAN_DESCRIPTION e field_46011 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBannedTitle a method_44651 + p 0 banDetails + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; create a method_44652 + p 0 callback + p 1 banDetails + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; createSkinBan a method_53554 + p 0 callback + m (Ljava/lang/String;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/ConfirmLinkScreen; createNameBan a method_53556 + p 0 username + p 1 callback + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53555 a method_53555 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBannedScreenText b method_44653 + p 0 banDetails + m (Ljava/net/URI;Ljava/lang/Runnable;Z)V method_53557 b method_53557 + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanReasonText c method_44654 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanStatusText d method_44655 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Lnet/minecraft/network/chat/Component; getBanDurationText e method_44656 + p 0 banDetails + m (Lcom/mojang/authlib/minecraft/BanDetails;)Z isTemporaryBan f method_44657 + p 0 banDetails + m ()V + m ()V +c net/minecraft/client/gui/screens/ChatScreen fmz net/minecraft/class_408 + f D MOUSE_SCROLL_SPEED a field_32237 + f Lnet/minecraft/client/gui/components/EditBox; input b field_2382 + c Chat entry field + f Lnet/minecraft/network/chat/Component; USAGE_TEXT c field_33953 + f I TOOLTIP_MAX_WIDTH r field_39774 + f Ljava/lang/String; historyBuffer s field_2389 + f I historyPos u field_2387 + c keeps position of which chat message you will select when you press up, (does not increase for duplicated messages sent immediately after each other) + f Ljava/lang/String; initial v field_18973 + c is the text that appears when you press the chat key and the input box appears pre-filled + f Lnet/minecraft/client/gui/components/CommandSuggestions; commandSuggestions w field_21616 + m (I)V moveInHistory a method_2114 + c Input is relative and is applied directly to the sentHistoryCursor so -1 is the previous message, 1 is the next message from the current cursor position. + p 1 msgPos + m (Ljava/lang/String;)Ljava/lang/String; normalizeChatMessage a method_44054 + p 1 message + m (DD)Lnet/minecraft/network/chat/Style; getComponentStyleAt b method_44052 + p 1 mouseX + p 3 mouseY + m (Ljava/lang/String;)V onEdited b method_23945 + p 1 value + m (Ljava/lang/String;Z)V handleChatInput b method_44056 + p 1 message + p 2 addToRecentChat + m (Ljava/lang/String;)V setChatLine c method_2108 + p 1 chatLine + m (Ljava/lang/String;)V + p 1 initial + m ()V +c net/minecraft/client/gui/screens/ChatScreen$1 fmz$1 net/minecraft/class_408$1 + f Lnet/minecraft/client/gui/screens/ChatScreen; field_21631 d field_21631 + m (Lnet/minecraft/client/gui/screens/ChatScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/ConfirmLinkScreen fna net/minecraft/class_407 + f Lnet/minecraft/network/chat/Component; COPY_BUTTON_TEXT r field_2373 + f Lnet/minecraft/network/chat/Component; WARNING_TEXT s field_2372 + f Ljava/lang/String; url u field_2371 + f Z showWarning v field_2370 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;)V confirmLinkNow a method_49623 + p 0 lastScreen + p 1 url + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;Z)V confirmLinkNow a method_60866 + p 0 lastScreen + p 1 url + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;ZLnet/minecraft/client/gui/components/Button;)V method_49624 a method_49624 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;)V confirmLinkNow a method_61033 + p 0 lastScreen + p 1 uri + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;Z)V confirmLinkNow a method_61034 + p 0 lastScreen + p 1 uri + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;ZLnet/minecraft/client/gui/components/Button;)V method_61035 a method_61035 + m (Ljava/lang/String;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Z)V method_49622 a method_49622 + m (Ljava/net/URI;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Z)V method_61036 a method_61036 + m (ZLjava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; confirmMessage a method_44658 + p 0 trusted + p 1 extraInfo + m (Lnet/minecraft/client/gui/components/Button;)V method_19795 b method_19795 + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_49625 + p 0 lastScreen + p 1 url + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/String;Z)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_60867 + p 0 lastScreen + p 1 url + p 2 trusted + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_61037 + p 0 lastScreen + p 1 uri + m (Lnet/minecraft/client/gui/screens/Screen;Ljava/net/URI;Z)Lnet/minecraft/client/gui/components/Button$OnPress; confirmLink b method_61038 + p 0 lastScreen + p 1 uri + p 2 trusted + m (Lnet/minecraft/client/gui/components/Button;)V method_19796 c method_19796 + m (Z)Lnet/minecraft/network/chat/MutableComponent; confirmMessage c method_44659 + p 0 trusted + m (Lnet/minecraft/client/gui/components/Button;)V method_19797 d method_19797 + m ()V copyToClipboard l method_2100 + c Copies the link to the system clipboard. + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Ljava/lang/String;Z)V + p 1 callback + p 2 url + p 3 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Z)V + p 1 callback + p 2 title + p 3 url + p 4 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Z)V + p 1 callback + p 2 title + p 3 uri + p 4 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 message + p 4 uri + p 5 noButton + p 6 trusted + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/String;Lnet/minecraft/network/chat/Component;Z)V + p 1 callback + p 2 title + p 3 message + p 4 url + p 5 noButton + p 6 trusted + m ()V +c net/minecraft/client/gui/screens/ConfirmScreen fnb net/minecraft/class_410 + f Lnet/minecraft/network/chat/Component; yesButton a field_2402 + c The text shown for the first button in GuiYesNo + f Lnet/minecraft/network/chat/Component; noButton b field_2399 + c The text shown for the second button in GuiYesNo + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback c field_2403 + f I MARGIN r field_39722 + f Lnet/minecraft/network/chat/Component; message s field_2401 + f Lnet/minecraft/client/gui/components/MultiLineLabel; multilineMessage u field_2404 + f I delayTicker v field_2400 + f Ljava/util/List; exitButtons w field_33808 + m ()I messageTop C method_44661 + m ()I messageHeight D method_44662 + m (I)V addButtons a method_37051 + p 1 y + m (Lnet/minecraft/client/gui/components/Button;)V addExitButton a method_37052 + p 1 exitButton + m (I)V setDelay b method_2125 + c Sets the number of ticks to wait before enabling the buttons. + p 1 ticksUntilEnable + m (Lnet/minecraft/client/gui/components/Button;)V method_37053 b method_37053 + m (Lnet/minecraft/client/gui/components/Button;)V method_37054 c method_37054 + m ()I titleTop m method_44660 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 message + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 callback + p 2 title + p 3 message + p 4 yesButton + p 5 noButton +c net/minecraft/client/gui/screens/ConnectScreen fnc net/minecraft/class_412 + f Lnet/minecraft/network/chat/Component; connectFailedTitle A field_44548 + f Lnet/minecraft/network/chat/Component; ABORT_CONNECTION a field_44970 + f Lnet/minecraft/network/chat/Component; UNKNOWN_HOST_MESSAGE b field_33736 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID c field_2408 + f Lorg/slf4j/Logger; LOGGER r field_2410 + f J NARRATION_DELAY_MS s field_32238 + f Lnet/minecraft/network/Connection; connection u field_2411 + f Lio/netty/channel/ChannelFuture; channelFuture v field_44971 + f Z aborted w field_2409 + f Lnet/minecraft/client/gui/screens/Screen; parent x field_2412 + f Lnet/minecraft/network/chat/Component; status y field_2413 + f J lastNarration z field_19097 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/multiplayer/TransferState;)V connect a method_2130 + p 1 minecraft + p 2 serverAddress + p 3 serverData + p 4 transferState + m (Lnet/minecraft/client/gui/components/Button;)V method_19800 a method_19800 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;ZLnet/minecraft/client/multiplayer/TransferState;)V startConnecting a method_36877 + p 0 parent + p 1 minecraft + p 2 serverAddress + p 3 serverData + p 4 isQuickPlay + p 5 transferState + m (Lnet/minecraft/network/chat/Component;)V updateStatus a method_2131 + p 1 status + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 connectFailedTitle + m ()V +c net/minecraft/client/gui/screens/ConnectScreen$1 fnc$1 net/minecraft/class_412$1 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$hostAndPort a field_33737 + f Lnet/minecraft/client/Minecraft; val$minecraft b field_33738 + f Lnet/minecraft/client/multiplayer/ServerData; val$server c field_40415 + f Lnet/minecraft/client/multiplayer/TransferState; val$transferState d field_48396 + f Lnet/minecraft/client/gui/screens/ConnectScreen; field_2416 e field_2416 + m (Lnet/minecraft/client/Minecraft;)V method_36878 a method_36878 + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V method_36879 a method_36879 + m (Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; convertPackStatus a method_55509 + p 0 packStatus + m (Lnet/minecraft/client/gui/screens/ConnectScreen;Ljava/lang/String;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/multiplayer/TransferState;)V +c net/minecraft/client/gui/screens/ConnectScreen$2 fnc$2 net/minecraft/class_412$2 + f [I $SwitchMap$net$minecraft$client$multiplayer$ServerData$ServerPackStatus a field_47591 + m ()V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen fnd net/minecraft/class_415 + f Lnet/minecraft/network/chat/Component; BIOME_SELECT_INFO a field_26535 + f I SPACING b field_49494 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49495 + f Lnet/minecraft/client/gui/screens/Screen; parent r field_24562 + f Ljava/util/function/Consumer; applySettings s field_24563 + f Lnet/minecraft/core/Registry; biomes u field_25888 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList; list v field_2441 + f Lnet/minecraft/core/Holder; biome w field_25040 + f Lnet/minecraft/client/gui/components/Button; doneButton x field_2438 + m ()Ljava/util/Optional; method_41840 C method_41840 + m (Lnet/minecraft/client/gui/components/Button;)V method_19801 a method_19801 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)Z method_29051 a method_29051 + m (Lnet/minecraft/client/gui/components/Button;)V method_28059 b method_28059 + m ()V updateButtonValidity m method_2151 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/function/Consumer;)V + p 1 parent + p 2 context + p 3 applySettings + m ()V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList fnd$a net/minecraft/class_415$class_4190 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen; field_18736 a field_18736 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)V setSelected a method_20089 + p 1 entry + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_40075 a method_40075 + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry; method_28060 a method_28060 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry;)Ljava/lang/String; method_40076 b method_40076 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen;)V +c net/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList$Entry fnd$a$a net/minecraft/class_415$class_4190$class_4191 + f Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList; field_18737 a field_18737 + f Lnet/minecraft/core/Holder$Reference; biome b field_24564 + f Lnet/minecraft/network/chat/Component; name c field_26536 + m (Lnet/minecraft/client/gui/screens/CreateBuffetWorldScreen$BiomeList;Lnet/minecraft/core/Holder$Reference;)V + p 2 biome +c net/minecraft/client/gui/screens/CreateFlatWorldScreen fne net/minecraft/class_413 + f Lnet/minecraft/network/chat/Component; columnHeight A field_2425 + c The text used to identify the height of a layer + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList; list B field_2424 + f Lnet/minecraft/client/gui/components/Button; deleteLayerButton C field_2421 + c The remove layer button + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; parent a field_2422 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE b field_45406 + f I SLOT_BG_SIZE c field_32240 + f I SLOT_STAT_HEIGHT r field_32241 + f I SLOT_BG_X s field_32242 + f I SLOT_BG_Y u field_32243 + f I SLOT_FG_X v field_32244 + f I SLOT_FG_Y w field_32245 + f Ljava/util/function/Consumer; applySettings x field_24565 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; generator y field_2419 + f Lnet/minecraft/network/chat/Component; columnType z field_2418 + c The text used to identify the material for a layer + m ()Z hasValidSelection C method_2147 + c Returns whether there is a valid layer selection + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V setConfig a method_29054 + p 1 generator + m (Lnet/minecraft/client/gui/components/Button;)V method_19804 a method_19804 + m (Lnet/minecraft/client/gui/components/Button;)V method_19805 b method_19805 + m (Lnet/minecraft/client/gui/components/Button;)V method_19806 c method_19806 + m (Lnet/minecraft/client/gui/components/Button;)V method_20093 d method_20093 + m ()Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings l method_29055 + m ()V updateButtonValidity m method_2145 + c Would update whether the edit and remove buttons are enabled, but is currently disabled and always disables the buttons (which are invisible anyway). + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Ljava/util/function/Consumer;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V + p 1 parent + p 2 applySettings + p 3 generator + m ()V +c net/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList fne$a net/minecraft/class_413$class_4192 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen; field_18738 a field_18738 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList$Entry;)V setSelected a method_20094 + p 1 entry + m ()V resetRows c method_19372 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen;)V +c net/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList$Entry fne$a$a net/minecraft/class_413$class_4192$class_4193 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList; field_18739 a field_18739 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/item/ItemStack; getDisplayItem a method_37055 + p 1 state + m (Lnet/minecraft/client/gui/GuiGraphics;II)V blitSlotBg a method_19373 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/ItemStack;)V blitSlot a method_19375 + p 1 guiGraphics + p 2 x + p 3 y + p 4 stack + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen$DetailsList;)V +c net/minecraft/client/gui/screens/CreditsAndAttributionScreen fnf net/minecraft/class_8219 + f I BUTTON_SPACING a field_43137 + f I BUTTON_WIDTH b field_43138 + f Lnet/minecraft/network/chat/Component; TITLE c field_43139 + f Lnet/minecraft/network/chat/Component; CREDITS_BUTTON r field_43140 + f Lnet/minecraft/network/chat/Component; ATTRIBUTION_BUTTON s field_43141 + f Lnet/minecraft/network/chat/Component; LICENSES_BUTTON u field_43142 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_43143 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout w field_43144 + m ()V method_49736 C method_49736 + m (Lnet/minecraft/client/gui/components/Button;)V method_49737 a method_49737 + m (Lnet/minecraft/client/gui/components/Button;)V method_49738 b method_49738 + m ()V openCreditsScreen m method_49739 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/DatapackLoadFailureScreen fng net/minecraft/class_5346 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message a field_25265 + f Ljava/lang/Runnable; cancelCallback b field_46859 + f Ljava/lang/Runnable; safeModeCallback c field_46860 + m (Lnet/minecraft/client/gui/components/Button;)V method_29345 a method_29345 + m (Lnet/minecraft/client/gui/components/Button;)V method_29346 b method_29346 + m (Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 cancelCallback + p 2 safeModeCallback +c net/minecraft/client/gui/screens/DeathScreen fnh net/minecraft/class_418 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE a field_45407 + f I delayTicker b field_2451 + c The integer value containing the number of ticks that have passed since the player's death + f Lnet/minecraft/network/chat/Component; causeOfDeath c field_2450 + f Z hardcore r field_18974 + f Lnet/minecraft/network/chat/Component; deathScore s field_26537 + f Ljava/util/List; exitButtons u field_33809 + f Lnet/minecraft/client/gui/components/Button; exitToTitleButton v field_41684 + m ()V exitToTitleScreen C method_22364 + m (I)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt a method_2164 + p 1 x + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderDeathBackground a method_59546 + p 0 guiGraphics + p 1 width + p 2 height + m (Lnet/minecraft/client/gui/components/Button;)V method_47938 a method_47938 + m (Lnet/minecraft/client/gui/components/Button;)V method_19809 b method_19809 + m (Z)V setButtonsActive c method_49299 + p 1 active + m (Z)V method_47939 f method_47939 + m ()V handleExitToTitleScreen m method_47940 + m (Lnet/minecraft/network/chat/Component;Z)V + p 1 causeOfDeath + p 2 hardcore + m ()V +c net/minecraft/client/gui/screens/DeathScreen$TitleConfirmScreen fnh$a net/minecraft/class_418$class_8183 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/DemoIntroScreen fni net/minecraft/class_417 + f Lnet/minecraft/resources/ResourceLocation; DEMO_BACKGROUND_LOCATION a field_2447 + f Lnet/minecraft/client/gui/components/MultiLineLabel; movementMessage b field_26538 + f Lnet/minecraft/client/gui/components/MultiLineLabel; durationMessage c field_26539 + m (Lnet/minecraft/client/gui/components/Button;)V method_19810 a method_19810 + m (Lnet/minecraft/client/gui/components/Button;)V method_19811 b method_19811 + m ()V + m ()V +c net/minecraft/client/gui/screens/DirectJoinServerScreen fnj net/minecraft/class_420 + f Lnet/minecraft/network/chat/Component; ENTER_IP_LABEL a field_26540 + f Lnet/minecraft/client/gui/components/Button; selectButton b field_2462 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_2460 + f Lnet/minecraft/client/gui/components/EditBox; ipEdit r field_2463 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback s field_19235 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen u field_21790 + m ()V updateSelectButtonStatus C method_2169 + m (Lnet/minecraft/client/gui/components/Button;)V method_19812 a method_19812 + m (Ljava/lang/String;)V method_19376 a method_19376 + m (Lnet/minecraft/client/gui/components/Button;)V method_19813 b method_19813 + m ()V onSelect m method_2167 + m (Lnet/minecraft/client/gui/screens/Screen;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/client/multiplayer/ServerData;)V + p 1 lastScreen + p 2 callback + p 3 serverData + m ()V +c net/minecraft/client/gui/screens/DisconnectedScreen fnk net/minecraft/class_419 + f Lnet/minecraft/network/chat/Component; TO_SERVER_LIST a field_44549 + f Lnet/minecraft/network/chat/Component; TO_TITLE b field_44550 + f Lnet/minecraft/network/chat/Component; REPORT_TO_SERVER_TITLE c field_52129 + f Lnet/minecraft/network/chat/Component; OPEN_REPORT_DIR_TITLE r field_52130 + f Lnet/minecraft/client/gui/screens/Screen; parent s field_2456 + f Lnet/minecraft/network/DisconnectionDetails; details u field_52131 + f Lnet/minecraft/network/chat/Component; buttonText v field_44551 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout w field_44552 + m (Lnet/minecraft/client/gui/components/Button;)V method_51256 a method_51256 + m (Ljava/net/URI;)V method_60868 a method_60868 + m (Ljava/nio/file/Path;)V method_60870 a method_60870 + m (Ljava/nio/file/Path;Lnet/minecraft/client/gui/components/Button;)V method_60869 a method_60869 + m (Lnet/minecraft/client/gui/components/Button;)V method_19814 b method_19814 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason + p 4 buttonText + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/DisconnectionDetails;)V + p 1 parent + p 2 title + p 3 details + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/DisconnectionDetails;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 details + p 4 buttonText + m ()V +c net/minecraft/client/gui/screens/EditServerScreen fnl net/minecraft/class_422 + f Lnet/minecraft/network/chat/Component; NAME_LABEL a field_26541 + f Lnet/minecraft/network/chat/Component; IP_LABEL b field_26542 + f Lnet/minecraft/client/gui/components/Button; addButton c field_2472 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback r field_19236 + f Lnet/minecraft/client/multiplayer/ServerData; serverData s field_2469 + f Lnet/minecraft/client/gui/components/EditBox; ipEdit u field_2474 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit v field_2471 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen w field_21791 + m ()V updateAddButtonStatus C method_36223 + m (Lnet/minecraft/client/gui/components/Button;)V method_36218 a method_36218 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)V method_36219 a method_36219 + m (Ljava/lang/String;)V method_36221 a method_36221 + m (Lnet/minecraft/client/gui/components/Button;)V method_36220 b method_36220 + m (Ljava/lang/String;)V method_36222 b method_36222 + m ()V onAdd m method_2172 + m (Lnet/minecraft/client/gui/screens/Screen;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/client/multiplayer/ServerData;)V + p 1 lastScreen + p 2 callback + p 3 serverData + m ()V +c net/minecraft/client/gui/screens/ErrorScreen fnm net/minecraft/class_421 + f Lnet/minecraft/network/chat/Component; message a field_2467 + m (Lnet/minecraft/client/gui/components/Button;)V method_19818 a method_19818 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 message +c net/minecraft/client/gui/screens/FaviconTexture fnn net/minecraft/class_8573 + f Lnet/minecraft/resources/ResourceLocation; MISSING_LOCATION a field_44933 + f I WIDTH b field_44934 + f I HEIGHT c field_44935 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager d field_44936 + f Lnet/minecraft/resources/ResourceLocation; textureLocation e field_44937 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture f field_44938 + f Z closed g field_44939 + m ()V clear a method_52198 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V upload a method_52199 + p 1 image + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/lang/String;)Lnet/minecraft/client/gui/screens/FaviconTexture; forWorld a method_52200 + p 0 textureManager + p 1 worldName + m ()Lnet/minecraft/resources/ResourceLocation; textureLocation b method_52201 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/lang/String;)Lnet/minecraft/client/gui/screens/FaviconTexture; forServer b method_52202 + p 0 textureManager + p 1 worldName + m ()V checkOpen c method_52203 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 textureLocation + m ()V +c net/minecraft/client/gui/screens/GenericMessageScreen fno net/minecraft/class_424 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; textWidget a field_49496 + m (Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/GenericWaitingScreen fnp net/minecraft/class_7534 + f I TITLE_Y a field_39541 + f I MESSAGE_Y b field_39542 + f I MESSAGE_MAX_WIDTH c field_39543 + f Lnet/minecraft/network/chat/Component; messageText r field_39745 + f Lnet/minecraft/network/chat/Component; buttonLabel s field_39544 + f Ljava/lang/Runnable; buttonCallback u field_39545 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message v field_39546 + f Lnet/minecraft/client/gui/components/Button; button w field_39547 + f I disableButtonTicks x field_39746 + m (Lnet/minecraft/client/gui/components/Button;)V method_44689 a method_44689 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/GenericWaitingScreen; createWaiting a method_44690 + p 0 title + p 1 buttonLabel + p 2 buttonCallback + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/GenericWaitingScreen; createCompleted a method_44691 + p 0 title + p 1 messageText + p 2 buttonLabel + p 3 buttonCallback + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/lang/Runnable;I)V + p 1 title + p 2 messageText + p 3 buttonLabel + p 4 buttonCallback + p 5 disableButtonTicks +c net/minecraft/client/gui/screens/InBedChatScreen fnq net/minecraft/class_423 + f Lnet/minecraft/client/gui/components/Button; leaveBedButton c field_41710 + m ()V sendWakeUp C method_2180 + m (Lnet/minecraft/client/gui/components/Button;)V method_19819 a method_19819 + m ()V onPlayerWokeUp m method_38530 + m ()V +c net/minecraft/client/gui/screens/LevelLoadingScreen fnr net/minecraft/class_3928 + f J NARRATION_DELAY_MS a field_32246 + f Lnet/minecraft/server/level/progress/StoringChunkProgressListener; progressListener b field_17406 + f J lastNarration c field_19101 + f Z done r field_33810 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; COLORS s field_17407 + m (ILnet/minecraft/client/gui/GuiGraphics;IIIIILnet/minecraft/server/level/progress/StoringChunkProgressListener;III)V method_51767 a method_51767 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/server/level/progress/StoringChunkProgressListener;IIII)V renderChunks a method_17538 + p 0 guiGraphics + p 1 progressListener + p 2 x + p 3 y + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_17537 a method_17537 + m ()Lnet/minecraft/network/chat/Component; getFormattedProgress m method_37057 + m (Lnet/minecraft/server/level/progress/StoringChunkProgressListener;)V + p 1 progressListener + m ()V +c net/minecraft/client/gui/screens/LoadingDotsText fns net/minecraft/class_7413 + f [Ljava/lang/String; FRAMES a field_38992 + f J INTERVAL_MS b field_38993 + m (J)Ljava/lang/String; get a method_43449 + p 0 millis + m ()V + m ()V +c net/minecraft/client/gui/screens/LoadingOverlay fnt net/minecraft/class_425 + f J FADE_OUT_TIME a field_32247 + f J FADE_IN_TIME b field_32248 + f Lnet/minecraft/resources/ResourceLocation; MOJANG_STUDIOS_LOGO_LOCATION c field_2483 + f I LOGO_BACKGROUND_COLOR d field_32249 + f I LOGO_BACKGROUND_COLOR_DARK e field_32250 + f Ljava/util/function/IntSupplier; BRAND_BACKGROUND f field_25041 + f I LOGO_SCALE g field_32251 + f F LOGO_QUARTER_FLOAT h field_32252 + f I LOGO_QUARTER i field_32253 + f I LOGO_HALF j field_32254 + f F LOGO_OVERLAP k field_32255 + f F SMOOTHING l field_32256 + f Lnet/minecraft/client/Minecraft; minecraft m field_18217 + f Lnet/minecraft/server/packs/resources/ReloadInstance; reload n field_17767 + f Ljava/util/function/Consumer; onFinish o field_18218 + f Z fadeIn p field_18219 + f F currentProgress q field_17770 + f J fadeOutStart r field_17771 + f J fadeInStart s field_18220 + m (II)I replaceAlpha a method_35732 + p 0 color + p 1 alpha + m (Lnet/minecraft/client/Minecraft;)V registerTextures a method_18819 + p 0 minecraft + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIF)V drawProgressBar a method_18103 + p 1 guiGraphics + p 2 minX + p 3 minY + p 4 maxX + p 5 maxY + p 6 partialTick + m ()I method_35733 b method_35733 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/server/packs/resources/ReloadInstance;Ljava/util/function/Consumer;Z)V + p 1 minecraft + p 2 reload + p 3 onFinish + p 4 fadeIn + m ()V +c net/minecraft/client/gui/screens/LoadingOverlay$LogoTexture fnt$a net/minecraft/class_425$class_4070 + m ()V +c net/minecraft/client/gui/screens/MenuScreens fnu net/minecraft/class_3929 + f Lorg/slf4j/Logger; LOGGER a field_17408 + f Ljava/util/Map; SCREENS b field_17409 + m ()Z selfTest a method_17539 + m (Lnet/minecraft/world/inventory/MenuType;)Lnet/minecraft/client/gui/screens/MenuScreens$ScreenConstructor; getConstructor a method_17540 + p 0 type + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/Minecraft;ILnet/minecraft/network/chat/Component;)V create a method_17541 + p 0 type + p 1 mc + p 2 windowId + p 3 title + m (Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/gui/screens/MenuScreens$ScreenConstructor;)V register a method_17542 + p 0 type + p 1 factory + m ()V + m ()V +c net/minecraft/client/gui/screens/MenuScreens$ScreenConstructor fnu$a net/minecraft/class_3929$class_3930 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/world/inventory/MenuType;Lnet/minecraft/client/Minecraft;I)V fromPacket a method_17543 + p 1 title + p 2 type + p 3 mc + p 4 windowId +c net/minecraft/client/gui/screens/NoticeWithLinkScreen fnv net/minecraft/class_8669 + f Lnet/minecraft/network/chat/Component; SYMLINK_WORLD_TITLE a field_45408 + f Lnet/minecraft/network/chat/Component; SYMLINK_WORLD_MESSAGE_TEXT b field_45409 + f Lnet/minecraft/network/chat/Component; SYMLINK_PACK_TITLE c field_45410 + f Lnet/minecraft/network/chat/Component; SYMLINK_PACK_MESSAGE_TEXT r field_45411 + f Lnet/minecraft/network/chat/Component; message s field_45412 + f Ljava/net/URI; uri u field_45413 + f Ljava/lang/Runnable; onClose v field_46861 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout w field_45415 + m (Lnet/minecraft/client/gui/components/Button;)V method_52747 a method_52747 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; createWorldSymlinkWarningScreen a method_52748 + p 0 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_52749 b method_52749 + m (Ljava/lang/Runnable;)Lnet/minecraft/client/gui/screens/Screen; createPackSymlinkWarningScreen b method_52750 + p 0 onClose + m (Lnet/minecraft/client/gui/components/Button;)V method_52751 c method_52751 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Ljava/net/URI;Ljava/lang/Runnable;)V + p 1 title + p 2 message + p 3 uri + p 4 onClose + m ()V +c net/minecraft/client/gui/screens/OutOfMemoryScreen fnw net/minecraft/class_428 + f Lnet/minecraft/network/chat/Component; TITLE a field_49504 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_49505 + f I MESSAGE_WIDTH c field_49506 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout r field_49507 + m (Lnet/minecraft/client/gui/components/Button;)V method_19834 a method_19834 + m (Lnet/minecraft/client/gui/components/Button;)V method_19835 b method_19835 + m ()V + m ()V +c net/minecraft/client/gui/screens/Overlay fnx net/minecraft/class_4071 + m ()Z isPauseScreen a method_18640 + m ()V +c net/minecraft/client/gui/screens/PauseScreen fny net/minecraft/class_433 + f Lnet/minecraft/network/chat/Component; FEEDBACK_SUBSCREEN A field_52133 + f Lnet/minecraft/network/chat/Component; SERVER_LINKS B field_52132 + f Lnet/minecraft/network/chat/Component; OPTIONS C field_41626 + f Lnet/minecraft/network/chat/Component; SHARE_TO_LAN D field_41627 + f Lnet/minecraft/network/chat/Component; PLAYER_REPORTING E field_41628 + f Lnet/minecraft/network/chat/Component; RETURN_TO_MENU F field_41611 + f Lnet/minecraft/network/chat/Component; SAVING_LEVEL G field_41613 + f Lnet/minecraft/network/chat/Component; GAME H field_41614 + f Lnet/minecraft/network/chat/Component; PAUSED I field_41615 + f Z showPauseMenu J field_19319 + f Lnet/minecraft/client/gui/components/Button; disconnectButton K field_40792 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE a field_45416 + f I COLUMNS b field_41616 + f I MENU_PADDING_TOP c field_41617 + f I BUTTON_PADDING r field_41618 + f I BUTTON_WIDTH_FULL s field_41619 + f I BUTTON_WIDTH_HALF u field_41620 + f Lnet/minecraft/network/chat/Component; RETURN_TO_GAME v field_41621 + f Lnet/minecraft/network/chat/Component; ADVANCEMENTS w field_41622 + f Lnet/minecraft/network/chat/Component; STATS x field_41623 + f Lnet/minecraft/network/chat/Component; SEND_FEEDBACK y field_41624 + f Lnet/minecraft/network/chat/Component; REPORT_BUGS z field_41625 + m ()V createPauseMenu C method_20543 + m ()V onDisconnect D method_47632 + m ()Lnet/minecraft/client/gui/screens/Screen; method_57733 E method_57733 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47902 F method_47902 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47903 G method_47903 + m ()Lnet/minecraft/client/gui/screens/Screen; method_60871 J method_60871 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47904 K method_47904 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47896 L method_47896 + m (Lnet/minecraft/server/ServerLinks;)Lnet/minecraft/client/gui/screens/Screen; method_60872 a method_60872 + m (Lnet/minecraft/client/gui/components/Button;)V method_19836 a method_19836 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper;)V addFeedbackButtons a method_60873 + p 0 lastScreen + p 1 rowHelper + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Ljava/net/URI;)Lnet/minecraft/client/gui/components/Button; openLinkButton a method_47899 + p 0 lastScreen + p 1 buttonText + p 2 uri + m (Ljava/util/function/Supplier;Lnet/minecraft/client/gui/components/Button;)V method_47898 a method_47898 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/client/gui/components/Button; openScreenButton a method_47900 + p 1 message + p 2 screenSupplier + m (Lnet/minecraft/client/gui/components/Button;)V method_19845 b method_19845 + m ()Z showsPauseMenu m method_53558 + m (Z)V + p 1 showPauseMenu + m ()V +c net/minecraft/client/gui/screens/PauseScreen$FeedbackSubScreen fny$a net/minecraft/class_433$class_9804 + f Lnet/minecraft/client/gui/screens/Screen; parent a field_52134 + f Lnet/minecraft/network/chat/Component; TITLE b field_52135 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_52136 + m (Lnet/minecraft/client/gui/components/Button;)V method_60874 a method_60874 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 parent + m ()V +c net/minecraft/client/gui/screens/PresetFlatWorldScreen fnz net/minecraft/class_430 + f Lnet/minecraft/network/chat/Component; shareText A field_2520 + f Lnet/minecraft/network/chat/Component; listText B field_2524 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList; list C field_2521 + f Lnet/minecraft/client/gui/components/Button; selectButton D field_2525 + f Lnet/minecraft/client/gui/components/EditBox; export E field_2523 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; settings F field_25044 + f Lnet/minecraft/network/chat/Component; UNKNOWN_PRESET a field_37908 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE b field_45417 + f Lorg/slf4j/Logger; LOGGER c field_25043 + f I SLOT_BG_SIZE r field_32264 + f I SLOT_STAT_HEIGHT s field_32265 + f I SLOT_BG_X u field_32266 + f I SLOT_BG_Y v field_32267 + f I SLOT_FG_X w field_32268 + f I SLOT_FG_Y x field_32269 + f Lnet/minecraft/resources/ResourceKey; DEFAULT_BIOME y field_27985 + f Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen; parent z field_2519 + c The parent GUI + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceKey; method_29061 a method_29061 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Ljava/lang/String; save a method_29062 + p 0 levelGeneratorSettings + m (Lnet/minecraft/client/gui/components/Button;)V method_19846 a method_19846 + m (Ljava/lang/String;Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/core/Holder$Reference; method_46741 a method_46741 + m (Lnet/minecraft/core/HolderGetter;Ljava/lang/String;)Ljava/util/List; getLayersInfoFromString a method_29058 + p 0 blockGetter + p 1 layerInfo + m (Lnet/minecraft/core/HolderGetter;Ljava/lang/String;I)Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo; getLayerInfoFromString a method_29059 + p 0 blockGetter + p 1 layerInfo + p 2 currentHeight + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/client/gui/components/Button;)V method_19847 a method_19847 + m (Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Lnet/minecraft/core/HolderGetter;Ljava/lang/String;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings; fromString a method_29060 + p 0 blockGetter + p 1 biomeGetter + p 2 structureSetGetter + p 3 placedFeatureGetter + p 4 settings + p 5 layerGenerationSettings + m (Z)V updateButtonValidity c method_20102 + p 1 valid + m ()Ljava/lang/IllegalStateException; method_40208 m method_40208 + m (Lnet/minecraft/client/gui/screens/CreateFlatWorldScreen;)V + p 1 parent + m ()V +c net/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList fnz$a net/minecraft/class_430$class_4196 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen; field_18747 a field_18747 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/lang/String; method_47409 a method_47409 + m (Lnet/minecraft/world/flag/FeatureFlagSet;Lnet/minecraft/world/level/block/Block;)Z method_47410 a method_47410 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLayerInfo;)Lnet/minecraft/world/level/block/Block; method_47411 a method_47411 + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList$Entry;)V setSelected a method_20103 + p 1 entry + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/world/flag/FeatureFlagSet;)V + p 2 registryAccess + p 3 flags +c net/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList$Entry fnz$a$a net/minecraft/class_430$class_4196$class_432 + f Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList; field_2532 a field_2532 + f Lnet/minecraft/resources/ResourceLocation; STATS_ICON_LOCATION b field_44668 + f Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorPreset; preset c field_33812 + f Lnet/minecraft/network/chat/Component; name d field_37909 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_41842 a method_41842 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V blitSlotBg a method_2198 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/Item;)V blitSlot a method_2200 + p 1 guiGraphics + p 2 x + p 3 y + p 4 item + m ()V select b method_19389 + m (Lnet/minecraft/client/gui/screens/PresetFlatWorldScreen$PresetsList;Lnet/minecraft/core/Holder;)V + p 2 presetHolder + m ()V +c net/minecraft/client/gui/screens/ProgressScreen foa net/minecraft/class_435 + f Lnet/minecraft/network/chat/Component; header a field_2541 + f Lnet/minecraft/network/chat/Component; stage b field_2544 + f I progress c field_2542 + f Z stop r field_2543 + f Z clearScreenAfterStop s field_33625 + m (Z)V + p 1 clearScreenAfterStop +c net/minecraft/client/gui/screens/ReceivingLevelScreen fob net/minecraft/class_434 + f Lnet/minecraft/network/chat/Component; DOWNLOADING_TERRAIN_TEXT a field_26544 + f J CHUNK_LOADING_START_WAIT_LIMIT_MS b field_36365 + f J createdAt c field_36368 + f Ljava/util/function/BooleanSupplier; levelReceived r field_46575 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; reason s field_51485 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; cachedNetherPortalSprite u field_51486 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getNetherPortalSprite m method_59838 + m (Ljava/util/function/BooleanSupplier;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V + p 1 levelReceived + p 2 reason + m ()V +c net/minecraft/client/gui/screens/ReceivingLevelScreen$Reason fob$a net/minecraft/class_434$class_9678 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; NETHER_PORTAL a field_51487 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; END_PORTAL b field_51488 + f Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; OTHER c field_51489 + f [Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; $VALUES d field_51490 + m ()[Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; $values a method_59839 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/screens/RecoverWorldDataScreen foc net/minecraft/class_8897 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback A field_46873 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout B field_46874 + f Lnet/minecraft/network/chat/Component; message C field_46875 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; messageWidget D field_46876 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; issuesWidget E field_46877 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; storageAccess F field_46878 + f Lorg/slf4j/Logger; LOGGER a field_46862 + f I SCREEN_SIDE_MARGIN b field_46863 + f Lnet/minecraft/network/chat/Component; TITLE c field_46864 + f Lnet/minecraft/network/chat/Component; BUGTRACKER_BUTTON r field_46865 + f Lnet/minecraft/network/chat/Component; RESTORE_BUTTON s field_46866 + f Lnet/minecraft/network/chat/Component; NO_FALLBACK_TOOLTIP u field_46867 + f Lnet/minecraft/network/chat/Component; DONE_TITLE v field_46868 + f Lnet/minecraft/network/chat/Component; DONE_SUCCESS w field_46869 + f Lnet/minecraft/network/chat/Component; DONE_FAILED x field_46870 + f Lnet/minecraft/network/chat/Component; NO_ISSUES y field_46871 + f Lnet/minecraft/network/chat/Component; MISSING_FILE z field_46872 + m ()V method_54582 C method_54582 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)Ljava/lang/Exception; collectIssue a method_54583 + p 1 level + p 2 useFallback + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;ZLjava/lang/Exception;)Lnet/minecraft/network/chat/Component; buildInfo a method_54584 + p 1 level + p 2 useFallback + p 3 exception + m (Lnet/minecraft/client/Minecraft;)V attemptRestore a method_54585 + p 1 minecraft + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/Button;)V method_54586 a method_54586 + m (Lnet/minecraft/client/gui/components/Button;)V method_54587 a method_54587 + m ()V method_54588 m method_54588 + m (Lnet/minecraft/client/Minecraft;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)V + p 1 minecraft + p 2 callback + p 3 storageAccess + m ()V +c net/minecraft/client/gui/screens/Screen fod net/minecraft/class_437 + f J NARRATE_DELAY_KEYBOARD_ACTION A field_33821 + f Lnet/minecraft/client/gui/narration/ScreenNarrationCollector; narrationState B field_33822 + f J narrationSuppressTime C field_33823 + f J nextNarrationTime D field_33824 + f Lnet/minecraft/client/gui/narration/NarratableEntry; lastNarratable E field_33813 + f Lnet/minecraft/client/gui/screens/Screen$DeferredTooltipRendering; deferredTooltipRendering F field_41685 + f Lorg/slf4j/Logger; LOGGER a field_22782 + f Lnet/minecraft/network/chat/Component; USAGE_NARRATION b field_33814 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_MENU_BACKGROUND c field_49894 + f Lnet/minecraft/client/renderer/CubeMap; CUBE_MAP d field_49508 + f Lnet/minecraft/client/renderer/PanoramaRenderer; PANORAMA e field_49509 + f Lnet/minecraft/resources/ResourceLocation; MENU_BACKGROUND f field_49511 + f Lnet/minecraft/resources/ResourceLocation; HEADER_SEPARATOR g field_49895 + f Lnet/minecraft/resources/ResourceLocation; FOOTER_SEPARATOR h field_49896 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_HEADER_SEPARATOR i field_49897 + f Lnet/minecraft/resources/ResourceLocation; INWORLD_FOOTER_SEPARATOR j field_49898 + f Lnet/minecraft/network/chat/Component; title k field_22785 + f Lnet/minecraft/client/Minecraft; minecraft l field_22787 + f I width m field_22789 + f I height n field_22790 + f Lnet/minecraft/client/gui/Font; font o field_22793 + f Lnet/minecraft/client/gui/components/CycleButton; narratorButton p field_52252 + f Ljava/util/concurrent/Executor; screenExecutor q field_44944 + f Ljava/util/List; children r field_22786 + f Ljava/util/List; narratables s field_33815 + f Z initialized u field_42156 + f Ljava/util/List; renderables v field_33816 + f J NARRATE_SUPPRESS_AFTER_INIT_TIME w field_33817 + f J NARRATE_DELAY_NARRATOR_ENABLED x field_33818 + f J NARRATE_DELAY_MOUSE_MOVE y field_33819 + f J NARRATE_DELAY_MOUSE_ACTION z field_33820 + m ()V clearTooltipForNextRenderPass A method_59840 + m ()Lnet/minecraft/sounds/Music; getBackgroundMusic B method_50024 + m ()Z shouldRunNarration C method_37073 + m (F)V renderBlurredBackground a method_57734 + p 1 partialTick + m (J)V suppressNarration a method_37058 + p 1 time + m (JZ)V scheduleNarration a method_37059 + p 1 delay + p 3 stopSuppression + m (Lnet/minecraft/client/Minecraft;II)V resize a method_25410 + p 1 minecraft + p 2 width + p 3 height + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getTooltipFromItem a method_25408 + p 0 minecraft + p 1 item + m (Lnet/minecraft/client/gui/ComponentPath;)V changeFocus a method_48263 + p 1 path + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderMenuBackground a method_57735 + p 1 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderPanorama a method_57728 + p 1 guiGraphics + p 2 partialTick + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderMenuBackground a method_57736 + p 1 guiGraphics + p 2 x + p 3 y + p 4 width + p 5 height + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/resources/ResourceLocation;IIFFII)V renderMenuBackgroundTexture a method_57737 + p 0 guiGraphics + p 1 texture + p 2 x + p 3 y + p 4 uOffset + p 5 vOffset + p 6 width + p 7 height + m (Lnet/minecraft/client/gui/components/Renderable;)Lnet/minecraft/client/gui/components/Renderable; addRenderableOnly a method_37060 + p 1 renderable + m (Lnet/minecraft/client/gui/components/Tooltip;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;Z)V setTooltipForNextRenderPass a method_47412 + p 1 tooltip + p 2 positioner + p 3 override + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarrationState a method_37062 + p 1 output + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$ArrowNavigation; createArrowEvent a method_48264 + p 1 direction + m (Ljava/lang/Runnable;)V method_52221 a method_52221 + m (Ljava/lang/Runnable;Ljava/lang/String;Ljava/lang/String;)V wrapScreenError a method_25412 + p 0 action + p 1 errorDesc + p 2 screenName + m (Ljava/lang/String;)Ljava/lang/String; method_25413 a method_25413 + m (Ljava/lang/String;CI)Z isValidCharacterForName a method_25414 + p 1 text + p 2 charTyped + p 3 cursorPos + m (Ljava/net/URI;Z)V method_61039 a method_61039 + m (Ljava/util/List;)V onFilesDrop a method_29638 + p 1 packs + m (Ljava/util/List;Lnet/minecraft/client/gui/narration/NarratableEntry;)Lnet/minecraft/client/gui/screens/Screen$NarratableSearchResult; findNarratableWidget a method_37061 + p 0 entries + p 1 target + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;Z)V setTooltipForNextRenderPass a method_47942 + p 1 tooltip + p 2 positioner + p 3 override + m (Lnet/minecraft/network/chat/Style;)Z handleComponentClicked a method_25430 + p 1 style + m ()V setInitialFocus aI_ method_56131 + m ()Z shouldCloseOnEsc aJ_ method_25422 + m ()V added aL_ method_49589 + m ()Z shouldNarrateNavigation aS_ method_48262 + m ()V init aT_ method_25426 + m (Ljava/lang/String;Z)V insertText a_ method_25415 + p 1 text + p 2 overwrite + m (Lnet/minecraft/client/Minecraft;II)V init b method_25423 + p 1 minecraft + p 2 width + p 3 height + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderTransparentBackground b method_52752 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderBackground b method_25420 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V setInitialFocus b method_48265 + p 1 listener + m (Lnet/minecraft/client/gui/narration/NarrationElementOutput;)V updateNarratedWidget b method_37056 + p 1 narrationElementOutput + m (Ljava/lang/Runnable;)V method_52222 b method_52222 + m (Ljava/util/List;)V setTooltipForNextRenderPass b method_47414 + p 1 tooltip + m ()V repositionElements c method_48640 + m (I)Z isCut c method_25436 + p 0 keyCode + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderWithTooltip c method_47413 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener; addRenderableWidget c method_37063 + p 1 widget + m (Z)V runNarration c method_37065 + p 1 onlyNarrateNew + m ()V onClose d method_25419 + m (I)Z isPaste d method_25437 + p 0 keyCode + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)Lnet/minecraft/client/gui/components/events/GuiEventListener; addWidget d method_25429 + p 1 listener + m (Lnet/minecraft/network/chat/Component;)V setTooltipForNextRenderPass d method_47415 + p 1 tooltip + m (Z)V triggerImmediateNarration d method_37064 + p 1 onlyNarrateNew + m ()V tick e method_25393 + m (I)Z isCopy e method_25438 + p 0 keyCode + m (Lnet/minecraft/client/gui/components/events/GuiEventListener;)V removeWidget e method_37066 + p 1 listener + m (Z)V updateNarratorStatus e method_61040 + p 1 narratorEnabled + m (I)Z isSelectAll f method_25439 + p 0 keyCode + m ()Lnet/minecraft/network/chat/Component; getNarrationMessage i method_25435 + m ()V removed j method_25432 + m ()Z isPauseScreen k method_25421 + m ()Lnet/minecraft/client/gui/navigation/FocusNavigationEvent$TabNavigation; createTabEvent m method_48266 + m ()Lnet/minecraft/network/chat/Component; getTitle n method_25440 + m ()V clearFocus o method_48267 + m ()V clearWidgets p method_37067 + m ()V rebuildWidgets q method_41843 + m ()Z hasControlDown r method_25441 + m ()Z hasShiftDown s method_25442 + m ()Z hasAltDown t method_25443 + m ()V afterMouseMove u method_37068 + m ()V afterMouseAction v method_37069 + m ()V afterKeyboardAction x method_37070 + m ()V handleDelayedNarration y method_37071 + m ()Lnet/minecraft/network/chat/Component; getUsageNarration z method_53870 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title + m ()V +c net/minecraft/client/gui/screens/Screen$DeferredTooltipRendering fod$a net/minecraft/class_437$class_7998 + f Ljava/util/List; tooltip a comp_1183 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; positioner b comp_1184 + m ()Ljava/util/List; tooltip a comp_1183 + m ()Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; positioner b comp_1184 + m (Ljava/util/List;Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner;)V +c net/minecraft/client/gui/screens/Screen$NarratableSearchResult fod$b net/minecraft/class_437$class_6390 + f Lnet/minecraft/client/gui/narration/NarratableEntry; entry a field_33825 + f I index b field_33826 + f Lnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority; priority c field_33827 + m (Lnet/minecraft/client/gui/narration/NarratableEntry;ILnet/minecraft/client/gui/narration/NarratableEntry$NarrationPriority;)V + p 1 entry + p 2 index + p 3 priority +c net/minecraft/client/gui/screens/ShareToLanScreen foe net/minecraft/class_436 + f Z commands A field_2546 + f I port B field_41110 + f Lnet/minecraft/client/gui/components/EditBox; portEdit C field_41111 + f I PORT_LOWER_BOUND a field_41629 + f I PORT_HIGHER_BOUND b field_41630 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS_LABEL c field_25889 + f Lnet/minecraft/network/chat/Component; GAME_MODE_LABEL r field_25890 + f Lnet/minecraft/network/chat/Component; INFO_TEXT s field_26545 + f Lnet/minecraft/network/chat/Component; PORT_INFO_TEXT u field_41108 + f Lnet/minecraft/network/chat/Component; PORT_UNAVAILABLE v field_41106 + f Lnet/minecraft/network/chat/Component; INVALID_PORT w field_41109 + f I INVALID_PORT_COLOR x field_41107 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen y field_2548 + f Lnet/minecraft/world/level/GameType; gameMode z field_2545 + m (Lnet/minecraft/client/gui/components/Button;)V method_19850 a method_19850 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_47416 a method_47416 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/GameType;)V method_32638 a method_32638 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32639 a method_32639 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/client/gui/components/Button;)V method_19851 a method_19851 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; tryParsePort a method_47417 + p 1 port + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/TitleScreen fof net/minecraft/class_442 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer A field_41847 + f Lorg/slf4j/Logger; LOGGER a field_23775 + f Lnet/minecraft/network/chat/Component; TITLE b field_47850 + f Lnet/minecraft/network/chat/Component; COPYRIGHT_TEXT c field_32271 + f Ljava/lang/String; DEMO_LEVEL_ID r field_32272 + f F FADE_IN_TIME s field_49900 + f Lnet/minecraft/client/gui/components/SplashRenderer; splash u field_2586 + f Lnet/minecraft/client/gui/components/Button; resetDemoButton v field_2590 + f Lcom/mojang/realmsclient/gui/screens/RealmsNotificationsScreen; realmsNotificationsScreen w field_2592 + c A screen generated by realms for notifications drawn in addition to the main menu (buttons and such from both are drawn at the same time). May be null. + f F panoramaFade x field_49514 + f Z fading y field_18222 + f J fadeInStart z field_17772 + m ()Lnet/minecraft/network/chat/Component; getMultiplayerDisabledReason C method_44692 + m ()Z checkDemoWorldPresence D method_31129 + m ()V method_54589 E method_54589 + m ()Lnet/minecraft/client/gui/components/LogoRenderer; method_48268 F method_48268 + m (II)V createNormalMenuOptions a method_2249 + c Adds Singleplayer and Multiplayer buttons on Main Menu for players who have bought the game. + p 1 y + p 2 rowHeight + m (Lnet/minecraft/client/gui/components/Button;)V method_19857 a method_19857 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preloadResources a method_18105 + p 0 texMngr + p 1 backgroundExecutor + m (ZLnet/minecraft/client/gui/components/Button;)V method_19858 a method_19858 + m (F)V fadeWidgets b method_59752 + p 1 alpha + m (II)V createDemoMenuOptions b method_2251 + c Adds Demo buttons on Main Menu for players who are playing Demo. + p 1 y + p 2 rowHeight + m (Lnet/minecraft/client/gui/components/Button;)V method_55814 b method_55814 + m (Lnet/minecraft/client/gui/components/Button;)V method_19860 c method_19860 + m (Z)V confirmDemo c method_20375 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19861 d method_19861 + m (Lnet/minecraft/client/gui/components/Button;)V method_41198 e method_41198 + m (Lnet/minecraft/client/gui/components/Button;)V method_20109 f method_20109 + m (Lnet/minecraft/client/gui/components/Button;)V method_19862 g method_19862 + m (Lnet/minecraft/client/gui/components/Button;)V method_19863 h method_19863 + m (Lnet/minecraft/client/gui/components/Button;)V method_19864 i method_19864 + m ()Z realmsNotificationsEnabled m method_2253 + c Is there currently a realms notification screen, and are realms notifications enabled? + m ()V + m (Z)V + p 1 fading + m (ZLnet/minecraft/client/gui/components/LogoRenderer;)V + p 1 fading + p 2 logoRenderer + m ()V +c net/minecraft/client/gui/screens/WinScreen fog net/minecraft/class_445 + f Ljava/lang/Runnable; onFinished A field_2630 + f F scroll B field_2628 + f Ljava/util/List; lines C field_2634 + f Lit/unimi/dsi/fastutil/ints/IntSet; centeredLines D field_24261 + f I totalScrollLength E field_2629 + f Z speedupActive F field_34010 + f Lit/unimi/dsi/fastutil/ints/IntSet; speedupModifiers G field_34011 + f F scrollSpeed H field_2635 + f F unmodifiedScrollSpeed I field_33954 + f I direction J field_44778 + f Lnet/minecraft/client/gui/components/LogoRenderer; logoRenderer K field_41848 + f Lorg/slf4j/Logger; LOGGER a field_2632 + f Lnet/minecraft/resources/ResourceLocation; VIGNETTE_LOCATION b field_2633 + f Lnet/minecraft/network/chat/Component; SECTION_HEADING c field_33955 + f Ljava/lang/String; NAME_PREFIX r field_32273 + f Ljava/lang/String; OBFUSCATE_TOKEN s field_24260 + f F SPEEDUP_FACTOR u field_33957 + f F SPEEDUP_FACTOR_FAST v field_34012 + f Lnet/minecraft/resources/ResourceLocation; END_POEM_LOCATION w field_52137 + f Lnet/minecraft/resources/ResourceLocation; CREDITS_LOCATION x field_52138 + f Lnet/minecraft/resources/ResourceLocation; POSTCREDITS_LOCATION y field_52139 + f Z poem z field_2627 + m ()V respawn C method_2257 + m ()V addEmptyLine D method_37306 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/gui/screens/WinScreen$CreditsReader;)V wrapCreditsIO a method_39775 + p 1 location + p 2 reader + m (Ljava/io/Reader;)V addPoemFile a method_39774 + p 1 reader + m (Ljava/lang/String;)V addPoemLines a method_37305 + p 1 text + m (Lnet/minecraft/network/chat/Component;Z)V addCreditsLine a method_37304 + p 1 creditsLine + p 2 centered + m (Ljava/io/Reader;)V addCreditsFile b method_39776 + p 1 reader + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderVignette c method_57738 + p 1 guiGraphics + m ()F calculateScrollSpeed m method_37369 + m (ZLjava/lang/Runnable;)V + p 1 poem + p 2 onFinished + m ()V +c net/minecraft/client/gui/screens/WinScreen$CreditsReader fog$a net/minecraft/class_445$class_6824 +c net/minecraft/client/gui/screens/achievement/StatsScreen foh net/minecraft/class_447 + f I LIST_WIDTH A field_49520 + f I PADDING B field_49521 + f I FOOTER_HEIGHT C field_49522 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout D field_49523 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList; statsList E field_2644 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; itemStatsList F field_2642 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList; mobsStatsList G field_2646 + f Lnet/minecraft/stats/StatsCounter; stats H field_2647 + f Lnet/minecraft/client/gui/components/ObjectSelectionList; activeList I field_2643 + f Z isLoading J field_2645 + c When true, the game will be paused when the gui is shown + f Lnet/minecraft/client/gui/screens/Screen; lastScreen a field_2648 + f Lnet/minecraft/network/chat/Component; TITLE b field_49516 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE c field_45418 + f Lnet/minecraft/resources/ResourceLocation; HEADER_SPRITE r field_45419 + f Lnet/minecraft/resources/ResourceLocation; SORT_UP_SPRITE s field_45420 + f Lnet/minecraft/resources/ResourceLocation; SORT_DOWN_SPRITE u field_45421 + f Lnet/minecraft/network/chat/Component; PENDING_TEXT v field_26546 + f Lnet/minecraft/network/chat/Component; NO_VALUE_DISPLAY w field_46185 + f Lnet/minecraft/network/chat/Component; GENERAL_BUTTON x field_49517 + f Lnet/minecraft/network/chat/Component; ITEMS_BUTTON y field_49518 + f Lnet/minecraft/network/chat/Component; MOBS_BUTTON z field_49519 + m ()V initButtons C method_2267 + m ()V onStatsUpdated D method_2300 + m (Lnet/minecraft/stats/Stat;)Ljava/lang/String; getTranslationKey a method_27027 + p 0 stat + m (Lnet/minecraft/client/gui/components/Button;)V method_19869 a method_19869 + m (Lnet/minecraft/client/gui/components/ObjectSelectionList;)V setActiveList a method_19390 + p 1 activeList + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36880 a method_36880 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57739 a method_57739 + m (Lnet/minecraft/client/gui/components/Button;)V method_19866 b method_19866 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36881 b method_36881 + m (Lnet/minecraft/client/gui/components/Button;)V method_19867 c method_19867 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19391 c method_19391 + m (Lnet/minecraft/client/gui/components/Button;)V method_19868 d method_19868 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_36882 d method_36882 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19392 e method_19392 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19393 f method_19393 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19396 g method_19396 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19398 h method_19398 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19400 i method_19400 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19401 j method_19401 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19394 k method_19394 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19395 l method_19395 + m ()V initLists m method_2270 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_19402 m method_19402 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_57740 n method_57740 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_57741 o method_57741 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;)Lnet/minecraft/client/gui/Font; method_58231 p method_58231 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/stats/StatsCounter;)V + p 1 lastScreen + p 2 stats + m ()V +c net/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList foh$a net/minecraft/class_447$class_4198 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18750 a field_18750 + m (Lnet/minecraft/stats/Stat;)Ljava/lang/String; method_27028 a method_27028 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList$Entry foh$a$a net/minecraft/class_447$class_4198$class_4197 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList; field_18748 a field_18748 + f Lnet/minecraft/stats/Stat; stat b field_18749 + f Lnet/minecraft/network/chat/Component; statDisplay c field_26547 + m ()Ljava/lang/String; getValueText b method_37074 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$GeneralStatisticsList;Lnet/minecraft/stats/Stat;)V + p 2 stat +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList foh$b net/minecraft/class_447$class_4200 + f Ljava/util/List; blockColumns a field_18754 + f Ljava/util/List; itemColumns m field_18755 + f Ljava/util/Comparator; itemStatSorter n field_18758 + f Lnet/minecraft/stats/StatType; sortColumn o field_18759 + f I headerPressed p field_18756 + f I sortOrder q field_18760 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18752 r field_18752 + f I SLOT_BG_SIZE s field_49524 + f I SLOT_STAT_HEIGHT u field_49525 + f I SLOT_BG_Y v field_49526 + f I SORT_NONE w field_49527 + f I SORT_DOWN x field_49528 + f I SORT_UP y field_49529 + f [Lnet/minecraft/resources/ResourceLocation; iconSprites z field_45422 + m (I)I getColumnX a method_57742 + p 1 index + m (Lnet/minecraft/stats/StatType;)V sortByColumn a method_19408 + p 1 statType + m (I)Lnet/minecraft/stats/StatType; getColumn b method_19410 + p 1 index + m (Lnet/minecraft/stats/StatType;)I getColumnIndex b method_19409 + p 1 statType + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow foh$b$a net/minecraft/class_447$class_4200$class_4199 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; field_18751 a field_18751 + f Lnet/minecraft/world/item/Item; item b field_33830 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/stats/Stat;IIZ)V renderStat a method_19405 + p 1 guiGraphics + p 2 stat + p 3 x + p 4 y + p 5 evenRow + m ()Lnet/minecraft/world/item/Item; getItem b method_37307 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList;Lnet/minecraft/world/item/Item;)V + p 2 item +c net/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRowComparator foh$b$b net/minecraft/class_447$class_4200$class_450 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList; field_2662 a field_2662 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow;Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList$ItemRow;)I compare a method_2297 + p 1 row1 + p 2 row2 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$ItemStatisticsList;)V +c net/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList foh$c net/minecraft/class_447$class_4202 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen; field_18763 a field_18763 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList$MobRow foh$c$a net/minecraft/class_447$class_4202$class_4201 + f Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList; field_18761 a field_18761 + f Lnet/minecraft/network/chat/Component; mobName b field_26548 + f Lnet/minecraft/network/chat/Component; kills c field_26549 + f Lnet/minecraft/network/chat/Component; killedBy d field_26551 + f Z hasKills e field_26550 + f Z wasKilledBy f field_26552 + m (Lnet/minecraft/client/gui/screens/achievement/StatsScreen$MobsStatisticsList;Lnet/minecraft/world/entity/EntityType;)V + p 2 entityType +c net/minecraft/client/gui/screens/achievement/package-info foi net/minecraft/class_6213 +c net/minecraft/client/gui/screens/advancements/AdvancementTab foj net/minecraft/class_454 + f Lnet/minecraft/client/Minecraft; minecraft a field_2680 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen; screen b field_2687 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; type c field_2684 + f I index d field_2681 + f Lnet/minecraft/advancements/AdvancementNode; rootNode e field_46142 + f Lnet/minecraft/advancements/DisplayInfo; display f field_2695 + f Lnet/minecraft/world/item/ItemStack; icon g field_2697 + f Lnet/minecraft/network/chat/Component; title h field_2686 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; root i field_2696 + f Ljava/util/Map; widgets j field_2685 + f D scrollX k field_2690 + f D scrollY l field_2689 + f I minX m field_2694 + f I minY n field_2693 + f I maxX o field_2692 + f I maxY p field_2691 + f F fade q field_2688 + f Z centered r field_2683 + m ()Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; getType a method_35734 + m (DD)V scroll a method_2313 + p 1 dragX + p 3 dragY + m (IIDD)Z isMouseOver a method_2316 + p 1 offsetX + p 2 offsetY + p 3 mouseX + p 5 mouseY + m (Lnet/minecraft/advancements/AdvancementHolder;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getWidget a method_2308 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)V addAdvancement a method_2318 + p 1 node + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;ILnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; create a method_2317 + p 0 minecraft + p 1 screen + p 2 index + p 3 rootNode + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawIcon a method_2315 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V drawTooltips a method_2314 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 width + p 5 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V drawTab a method_2311 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 isSelected + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget;Lnet/minecraft/advancements/AdvancementHolder;)V addWidget a method_2319 + p 1 widget + p 2 advancement + m ()I getIndex b method_35735 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawContents b method_2310 + p 1 guiGraphics + p 2 x + p 3 y + m ()Lnet/minecraft/advancements/AdvancementNode; getRootNode c method_53813 + m ()Lnet/minecraft/network/chat/Component; getTitle d method_2309 + m ()Lnet/minecraft/advancements/DisplayInfo; getDisplay e method_35736 + m ()Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen; getScreen f method_2312 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType;ILnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/DisplayInfo;)V + p 1 minecraft + p 2 screen + p 3 type + p 4 index + p 5 rootNode + p 6 display +c net/minecraft/client/gui/screens/advancements/AdvancementTabType fok net/minecraft/class_453 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; ABOVE a field_2678 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; BELOW b field_2673 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; LEFT c field_2675 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; RIGHT d field_2677 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites; selectedSprites e field_45423 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites; unselectedSprites f field_45424 + f I width g field_2671 + f I height h field_2670 + f I max i field_2669 + f [Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; $VALUES j field_2676 + m ()I getMax a method_2304 + m (I)I getX a method_2302 + p 1 index + m (IIIDD)Z isMouseOver a method_2303 + p 1 offsetX + p 2 offsetY + p 3 index + p 4 mouseX + p 6 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIILnet/minecraft/world/item/ItemStack;)V drawIcon a method_2306 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 index + p 5 stack + m (Lnet/minecraft/client/gui/GuiGraphics;IIZI)V draw a method_2301 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + p 4 isSelected + p 5 index + m ()[Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType; $values b method_36883 + m (I)I getY b method_2305 + p 1 index + m (Ljava/lang/String;ILnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites;Lnet/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites;III)V + p 3 selectedSprites + p 4 unselectedSprites + p 5 width + p 6 height + p 7 max + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementTabType$Sprites fok$a net/minecraft/class_453$class_8670 + f Lnet/minecraft/resources/ResourceLocation; first a comp_1608 + f Lnet/minecraft/resources/ResourceLocation; middle b comp_1609 + f Lnet/minecraft/resources/ResourceLocation; last c comp_1610 + m ()Lnet/minecraft/resources/ResourceLocation; first a comp_1608 + m ()Lnet/minecraft/resources/ResourceLocation; middle b comp_1609 + m ()Lnet/minecraft/resources/ResourceLocation; last c comp_1610 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/gui/screens/advancements/AdvancementWidget fol net/minecraft/class_456 + f Lnet/minecraft/resources/ResourceLocation; TITLE_BOX_SPRITE a field_45425 + f I HEIGHT b field_32286 + f I BOX_X c field_32287 + f I BOX_WIDTH d field_32288 + f I FRAME_WIDTH e field_32289 + f I ICON_X f field_32290 + f I ICON_Y g field_32291 + f I ICON_WIDTH h field_32292 + f I TITLE_PADDING_LEFT i field_32293 + f I TITLE_PADDING_RIGHT j field_32294 + f I TITLE_X k field_32295 + f I TITLE_Y l field_32296 + f I TITLE_MAX_WIDTH m field_32297 + f [I TEST_SPLIT_OFFSETS n field_24262 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; tab o field_2703 + f Lnet/minecraft/advancements/AdvancementNode; advancementNode p field_46143 + f Lnet/minecraft/advancements/DisplayInfo; display q field_2712 + f Lnet/minecraft/util/FormattedCharSequence; title r field_2713 + f I width s field_2715 + f Ljava/util/List; description t field_2705 + f Lnet/minecraft/client/Minecraft; minecraft u field_2704 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; parent v field_2706 + f Ljava/util/List; children w field_2707 + f Lnet/minecraft/advancements/AdvancementProgress; progress x field_2714 + f I x y field_2711 + f I y z field_2710 + m ()I getWidth a method_35737 + m (IIII)Z isMouseOver a method_2329 + p 1 x + p 2 y + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getFirstVisibleParent a method_2328 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementProgress;)V setProgress a method_2333 + p 1 progress + m (Lnet/minecraft/client/StringSplitter;Ljava/util/List;)F getMaxWidth a method_27572 + p 0 manager + p 1 text + m (Lnet/minecraft/client/gui/GuiGraphics;II)V draw a method_2325 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIFII)V drawHover a method_2331 + p 1 guiGraphics + p 2 x + p 3 y + p 4 fade + p 5 width + p 6 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIZ)V drawConnectivity a method_2323 + p 1 guiGraphics + p 2 x + p 3 y + p 4 dropShadow + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget;)V addChild a method_2322 + p 1 advancementWidget + m (Lnet/minecraft/network/chat/Component;I)Ljava/util/List; findOptimalLines a method_2330 + p 1 component + p 2 maxWidth + m ()V attachToParent b method_2332 + m ()I getY c method_2326 + m ()I getX d method_2327 + m ()I getMaxProgressWidth e method_61041 + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementTab;Lnet/minecraft/client/Minecraft;Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/DisplayInfo;)V + p 1 tab + p 2 minecraft + p 3 advancementNode + p 4 display + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementWidgetType fom net/minecraft/class_455 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; OBTAINED a field_2701 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; UNOBTAINED b field_2699 + f Lnet/minecraft/resources/ResourceLocation; boxSprite c field_45426 + f Lnet/minecraft/resources/ResourceLocation; taskFrameSprite d field_45427 + f Lnet/minecraft/resources/ResourceLocation; challengeFrameSprite e field_45428 + f Lnet/minecraft/resources/ResourceLocation; goalFrameSprite f field_45429 + f [Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; $VALUES g field_2698 + m ()Lnet/minecraft/resources/ResourceLocation; boxSprite a method_52753 + m (Lnet/minecraft/advancements/AdvancementType;)Lnet/minecraft/resources/ResourceLocation; frameSprite a method_52754 + p 1 type + m ()[Lnet/minecraft/client/gui/screens/advancements/AdvancementWidgetType; $values b method_36884 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 3 boxSprite + p 4 taskFrameSprite + p 5 challengeFrameSprite + p 6 goalFrameSprite + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementWidgetType$1 fom$1 net/minecraft/class_455$1 + f [I $SwitchMap$net$minecraft$advancements$AdvancementType a field_45430 + m ()V +c net/minecraft/client/gui/screens/advancements/AdvancementsScreen fon net/minecraft/class_457 + f I WINDOW_TITLE_X A field_32308 + f I WINDOW_TITLE_Y B field_32309 + f D SCROLL_SPEED C field_45431 + f Lnet/minecraft/network/chat/Component; VERY_SAD_LABEL D field_26553 + f Lnet/minecraft/network/chat/Component; NO_ADVANCEMENTS_LABEL E field_26554 + f Lnet/minecraft/network/chat/Component; TITLE F field_26555 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout G field_49530 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen H field_49531 + f Lnet/minecraft/client/multiplayer/ClientAdvancements; advancements I field_2721 + f Ljava/util/Map; tabs J field_2719 + f Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; selectedTab K field_2720 + f Z isScrolling L field_2718 + f I WINDOW_WIDTH a field_32298 + f I WINDOW_HEIGHT b field_32299 + f I WINDOW_INSIDE_WIDTH c field_32300 + f I WINDOW_INSIDE_HEIGHT r field_32301 + f I BACKGROUND_TILE_WIDTH s field_32302 + f I BACKGROUND_TILE_HEIGHT u field_32303 + f I BACKGROUND_TILE_COUNT_X v field_32304 + f I BACKGROUND_TILE_COUNT_Y w field_32305 + f Lnet/minecraft/resources/ResourceLocation; WINDOW_LOCATION x field_2717 + f I WINDOW_INSIDE_X y field_32306 + f I WINDOW_INSIDE_Y z field_32307 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderWindow a method_2334 + p 1 guiGraphics + p 2 offsetX + p 3 offsetY + m (Lnet/minecraft/client/gui/components/Button;)V method_57743 a method_57743 + m (Lnet/minecraft/client/gui/screens/advancements/AdvancementsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57744 a method_57744 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderInside b method_2337 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderTooltips c method_2338 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 offsetX + p 5 offsetY + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementWidget; getAdvancementWidget e method_2335 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;)Lnet/minecraft/client/gui/screens/advancements/AdvancementTab; getTab f method_2336 + p 1 advancement + m (Lnet/minecraft/client/multiplayer/ClientAdvancements;)V + p 1 advancements + m (Lnet/minecraft/client/multiplayer/ClientAdvancements;Lnet/minecraft/client/gui/screens/Screen;)V + p 1 advancements + p 2 lastScreen + m ()V +c net/minecraft/client/gui/screens/advancements/package-info foo net/minecraft/class_6214 +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen fop net/minecraft/class_5289 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; previousHovered A field_24568 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; currentlyHovered B field_24569 + f I firstMouseX C field_24570 + f I firstMouseY D field_24571 + f Z setFirstMousePos E field_24572 + f Ljava/util/List; slots F field_24573 + f Lnet/minecraft/resources/ResourceLocation; SLOT_SPRITE a field_45432 + f Lnet/minecraft/resources/ResourceLocation; SELECTION_SPRITE b field_45433 + f Lnet/minecraft/resources/ResourceLocation; GAMEMODE_SWITCHER_LOCATION c field_24566 + f I SPRITE_SHEET_WIDTH r field_32310 + f I SPRITE_SHEET_HEIGHT s field_32311 + f I SLOT_AREA u field_32312 + f I SLOT_PADDING v field_32313 + f I SLOT_AREA_PADDED w field_32314 + f I HELP_TIPS_OFFSET_Y x field_32315 + f I ALL_SLOTS_WIDTH y field_24567 + f Lnet/minecraft/network/chat/Component; SELECT_KEY z field_25454 + m ()V switchToHoveredGameMode C method_28068 + m ()Z checkToClose D method_28069 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon;)V switchToHoveredGameMode a method_28064 + p 0 minecraft + p 1 gameModeIcon + m ()Lnet/minecraft/world/level/GameType; getDefaultSelected m method_30106 + m ()V + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$1 fop$1 net/minecraft/class_5289$1 + f [I $SwitchMap$net$minecraft$world$level$GameType a field_24575 + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon fop$a net/minecraft/class_5289$class_5290 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; CREATIVE a field_24576 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; SURVIVAL b field_24577 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; ADVENTURE c field_24578 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; SPECTATOR d field_24579 + f [Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; VALUES e field_24580 + f I ICON_TOP_LEFT f field_32316 + f Lnet/minecraft/network/chat/Component; name g field_24581 + f Ljava/lang/String; command h field_24582 + f Lnet/minecraft/world/item/ItemStack; renderStack i field_24583 + f I ICON_AREA j field_32317 + f [Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; $VALUES k field_24584 + m ()Lnet/minecraft/network/chat/Component; getName a method_28070 + m (Lnet/minecraft/world/level/GameType;)Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; getFromGameType a method_28076 + p 0 gameType + m (Lnet/minecraft/client/gui/GuiGraphics;II)V drawIcon a method_28074 + p 1 guiGraphics + p 2 x + p 3 y + m ()Ljava/lang/String; getCommand b method_28075 + m ()Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; getNext c method_28078 + m ()[Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; $values d method_36886 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Ljava/lang/String;Lnet/minecraft/world/item/ItemStack;)V + p 3 name + p 4 command + p 5 renderStack + m ()V +c net/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeSlot fop$b net/minecraft/class_5289$class_5291 + f Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon; icon a field_24586 + f Z isSelected b field_24587 + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSlot a method_28080 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V drawSelection b method_28082 + p 1 guiGraphics + m (Z)V setSelected b method_28083 + p 1 isSelected + m (Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen;Lnet/minecraft/client/gui/screens/debug/GameModeSwitcherScreen$GameModeIcon;II)V + p 2 icon + p 3 x + p 4 y +c net/minecraft/client/gui/screens/debug/package-info foq net/minecraft/class_6391 +c net/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen fos net/minecraft/class_463 + f Lnet/minecraft/client/gui/components/EditBox; commandEdit a field_2751 + f Lnet/minecraft/client/gui/components/EditBox; previousEdit b field_2755 + f Lnet/minecraft/client/gui/components/Button; doneButton c field_2762 + f Lnet/minecraft/client/gui/components/Button; cancelButton r field_2753 + f Lnet/minecraft/client/gui/components/CycleButton; outputButton s field_2760 + f Lnet/minecraft/network/chat/Component; SET_COMMAND_LABEL u field_26556 + f Lnet/minecraft/network/chat/Component; COMMAND_LABEL v field_26557 + f Lnet/minecraft/network/chat/Component; PREVIOUS_OUTPUT_LABEL w field_26558 + f Lnet/minecraft/client/gui/components/CommandSuggestions; commandSuggestions x field_21617 + m ()I getPreviousY C method_2364 + m ()V onDone D method_2359 + m (Lnet/minecraft/world/level/BaseCommandBlock;)V populateAndSendPacket a method_2352 + p 1 commandBlock + m (Lnet/minecraft/client/gui/components/Button;)V method_19875 a method_19875 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32641 a method_32641 + m (Ljava/lang/String;)V onEdited a method_2360 + p 1 command + m (Lnet/minecraft/client/gui/components/Button;)V method_19876 b method_19876 + m (Z)V updatePreviousOutput c method_32642 + p 1 trackOutput + m ()Lnet/minecraft/world/level/BaseCommandBlock; getCommandBlock m method_2351 + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen$1 fos$1 net/minecraft/class_463$1 + f Lnet/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen; field_21632 d field_21632 + m (Lnet/minecraft/client/gui/screens/inventory/AbstractCommandBlockEditScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/inventory/AbstractContainerScreen fot net/minecraft/class_465 + f I leftPos A field_2776 + c Starting X position for the Gui. Inconsistent use for Gui backgrounds. + f I topPos B field_2800 + c Starting Y position for the Gui. Inconsistent use for Gui backgrounds. + f Ljava/util/Set; quickCraftSlots C field_2793 + f Z isQuickCrafting D field_2794 + f F SNAPBACK_SPEED E field_32318 + f I QUICKDROP_DELAY F field_32319 + f I HOVER_ITEM_BLIT_OFFSET G field_32321 + f Lnet/minecraft/world/inventory/Slot; clickedSlot H field_2777 + c Used when touchscreen is enabled + f Lnet/minecraft/world/inventory/Slot; snapbackEnd I field_2802 + f Lnet/minecraft/world/inventory/Slot; quickdropSlot J field_2780 + f Lnet/minecraft/world/inventory/Slot; lastClickSlot K field_2799 + f Z isSplittingStack L field_2789 + c Used when touchscreen is enabled. + f Lnet/minecraft/world/item/ItemStack; draggingItem M field_2782 + c Used when touchscreen is enabled + f I snapbackStartX N field_2784 + f I snapbackStartY O field_2796 + f J snapbackTime P field_2795 + f Lnet/minecraft/world/item/ItemStack; snapbackItem Q field_2785 + c Used when touchscreen is enabled + f J quickdropTime R field_2781 + f I quickCraftingType S field_2790 + f I quickCraftingButton T field_2778 + f Z skipNextRelease U field_2798 + f I quickCraftingRemainder V field_2803 + f J lastClickTime W field_2788 + f I lastClickButton X field_2786 + f Z doubleclick Y field_2783 + f Lnet/minecraft/world/item/ItemStack; lastQuickMoved Z field_2791 + f Lnet/minecraft/resources/ResourceLocation; INVENTORY_LOCATION a field_2801 + c The location of the inventory background texture + f I SLOT_ITEM_BLIT_OFFSET b field_32322 + f I imageWidth c field_2792 + c The X size of the inventory window in pixels. + f I imageHeight r field_2779 + c The Y size of the inventory window in pixels. + f I titleLabelX s field_25267 + f I titleLabelY u field_25268 + f I inventoryLabelX v field_25269 + f I inventoryLabelY w field_25270 + f Lnet/minecraft/world/inventory/AbstractContainerMenu; menu x field_2797 + c A list of the players inventory slots + f Lnet/minecraft/network/chat/Component; playerInventoryTitle y field_29347 + f Lnet/minecraft/world/inventory/Slot; hoveredSlot z field_2787 + c Holds the slot currently hovered + m ()V containerTick C method_37432 + m ()V recalculateQuickCraftRemaining G method_2379 + m (DDIII)Z hasClickedOutside a method_2381 + p 1 mouseX + p 3 mouseY + p 5 guiLeft + p 6 guiTop + p 7 mouseButton + m (I)V checkHotbarMouseClicked a method_30107 + p 1 keyCode + m (II)Z checkHotbarKeyPressed a method_2384 + p 1 keyCode + p 2 scanCode + m (IIIIDD)Z isHovering a method_2378 + p 1 x + p 2 y + p 3 width + p 4 height + p 5 mouseX + p 7 mouseY + m (IIZ)V handleSlotStateChanged a method_54590 + p 1 slotId + p 2 containerId + p 3 newState + m (Lnet/minecraft/world/inventory/Slot;DD)Z isHovering a method_2387 + p 1 slot + p 2 mouseX + p 4 mouseY + m (Lnet/minecraft/world/inventory/Slot;IILnet/minecraft/world/inventory/ClickType;)V slotClicked a method_2383 + c Called when the mouse is clicked over a slot or outside the gui. + p 1 slot + p 2 slotId + p 3 mouseButton + p 4 type + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/List; getTooltipFromContainerItem a method_51454 + p 1 stack + m (Lnet/minecraft/client/gui/GuiGraphics;FII)V renderBg a method_2389 + p 1 guiGraphics + p 2 partialTick + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderTooltip a method_2380 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderSlotHighlight a method_33285 + p 0 guiGraphics + p 1 x + p 2 y + p 3 blitOffset + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/inventory/Slot;)V renderSlot a method_2385 + p 1 guiGraphics + p 2 slot + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/ItemStack;IILjava/lang/String;)V renderFloatingItem a method_2382 + p 1 guiGraphics + p 2 stack + p 3 x + p 4 y + p 5 text + m (DD)Lnet/minecraft/world/inventory/Slot; findSlot b method_2386 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderLabels b method_2388 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m ()V clearDraggingState m method_44339 + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/AbstractFurnaceScreen fou net/minecraft/class_489 + f Lnet/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent; recipeBookComponent E field_2924 + f Z widthTooNarrow F field_2925 + f Lnet/minecraft/resources/ResourceLocation; texture G field_18975 + f Lnet/minecraft/resources/ResourceLocation; litProgressSprite H field_45434 + f Lnet/minecraft/resources/ResourceLocation; burnProgressSprite I field_45435 + m (Lnet/minecraft/client/gui/components/Button;)V method_19877 a method_19877 + m (Lnet/minecraft/world/inventory/AbstractFurnaceMenu;Lnet/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 menu + p 2 recipeBookComponent + p 3 playerInventory + p 4 title + p 5 texture + p 6 listProgressSprite + p 7 burnProgressSprite +c net/minecraft/client/gui/screens/inventory/AbstractSignEditScreen fov net/minecraft/class_7743 + f Lnet/minecraft/world/level/block/state/properties/WoodType; woodType a field_40426 + f Lnet/minecraft/world/level/block/entity/SignBlockEntity; sign b field_40424 + c Reference to the sign object. + f Lnet/minecraft/world/level/block/entity/SignText; text c field_43362 + f [Ljava/lang/String; messages r field_40425 + f Z isFrontText s field_43363 + f I frame u field_40427 + c Counts the number of screen updates. + f I line v field_40428 + c The index of the line that is being edited. + f Lnet/minecraft/client/gui/font/TextFieldHelper; signField w field_40429 + m ()Z isValid C method_49912 + m ()V onDone D method_45662 + m ()Ljava/lang/String; method_45663 E method_45663 + m (I)[Ljava/lang/String; method_45652 a method_45652 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/block/state/BlockState;)V renderSignBackground a method_45656 + p 1 guiGraphics + p 2 state + m (Lnet/minecraft/client/gui/components/Button;)V method_45657 a method_45657 + m (Ljava/lang/String;)V setMessage a method_49913 + p 1 message + m (ZI)Lnet/minecraft/network/chat/Component; method_49914 a method_49914 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/block/state/BlockState;)V offsetSign b method_45654 + p 1 guiGraphics + p 2 state + m (Ljava/lang/String;)Z method_45658 b method_45658 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSign c method_45659 + p 1 guiGraphics + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderSignText d method_45655 + p 1 guiGraphics + m ()Lorg/joml/Vector3f; getSignTextScale m method_45661 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + p 1 sign + p 2 isFrontText + p 3 isFiltered + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZLnet/minecraft/network/chat/Component;)V + p 1 sign + p 2 isFrontText + p 3 isFiltered + p 4 title +c net/minecraft/client/gui/screens/inventory/AnvilScreen fow net/minecraft/class_471 + f Lnet/minecraft/resources/ResourceLocation; TEXT_FIELD_SPRITE E field_45436 + f Lnet/minecraft/resources/ResourceLocation; TEXT_FIELD_DISABLED_SPRITE F field_45437 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE G field_45438 + f Lnet/minecraft/resources/ResourceLocation; ANVIL_LOCATION H field_2819 + f Lnet/minecraft/network/chat/Component; TOO_EXPENSIVE_TEXT I field_26559 + f Lnet/minecraft/client/gui/components/EditBox; name J field_2821 + f Lnet/minecraft/world/entity/player/Player; player K field_29348 + m (Ljava/lang/String;)V onNameChanged a method_2403 + p 1 name + m (Lnet/minecraft/world/inventory/AnvilMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BeaconScreen fox net/minecraft/class_466 + f Lnet/minecraft/resources/ResourceLocation; BEACON_LOCATION E field_2808 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_DISABLED_SPRITE F field_45443 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_SELECTED_SPRITE G field_45444 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_HIGHLIGHTED_SPRITE H field_45439 + f Lnet/minecraft/resources/ResourceLocation; BUTTON_SPRITE I field_45440 + f Lnet/minecraft/resources/ResourceLocation; CONFIRM_SPRITE J field_45441 + f Lnet/minecraft/resources/ResourceLocation; CANCEL_SPRITE K field_45442 + f Lnet/minecraft/network/chat/Component; PRIMARY_EFFECT_LABEL L field_26560 + f Lnet/minecraft/network/chat/Component; SECONDARY_EFFECT_LABEL M field_26561 + f Ljava/util/List; beaconButtons N field_33832 + f Lnet/minecraft/core/Holder; primary O field_17412 + f Lnet/minecraft/core/Holder; secondary P field_17413 + m ()V updateButtons E method_37078 + m (ILnet/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconButton;)V method_37075 a method_37075 + m (Lnet/minecraft/client/gui/components/AbstractWidget;)V addBeaconButton a method_37076 + p 1 beaconButton + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_47418 a method_47418 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_2394 b method_2394 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;)Lnet/minecraft/client/Minecraft; method_2393 c method_2393 + m (Lnet/minecraft/world/inventory/BeaconMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BeaconScreen$1 fox$1 net/minecraft/class_466$1 + f Lnet/minecraft/world/inventory/BeaconMenu; val$menu a field_17414 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_17415 b field_17415 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;Lnet/minecraft/world/inventory/BeaconMenu;)V +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconButton fox$a net/minecraft/class_466$class_6392 + m (I)V updateStatus a method_37080 + p 1 beaconTier +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconCancelButton fox$b net/minecraft/class_466$class_467 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2809 a field_2809 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;II)V + p 2 x + p 3 y +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconConfirmButton fox$c net/minecraft/class_466$class_468 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2810 a field_2810 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;II)V + p 2 x + p 3 y +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconPowerButton fox$d net/minecraft/class_466$class_469 + f I tier a field_33833 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_2811 b field_2811 + f Z isPrimary c field_17416 + f Lnet/minecraft/core/Holder; effect d field_2813 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite f field_18223 + m (Lnet/minecraft/core/Holder;)V setEffect a method_37081 + p 1 effect + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/network/chat/MutableComponent; createEffectDescription b method_37082 + p 1 effect + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;IILnet/minecraft/core/Holder;ZI)V + p 2 x + p 3 y + p 4 effect + p 5 isPrimary + p 6 tier +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconScreenButton fox$e net/minecraft/class_466$class_470 + f Z selected a field_2815 + m ()Z isSelected a method_2402 + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderIcon a method_18641 + p 1 guiGraphics + m (Z)V setSelected b method_2401 + p 1 selected + m (II)V + p 1 x + p 2 y + m (IILnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 message +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconSpriteScreenButton fox$f net/minecraft/class_466$class_4072 + f Lnet/minecraft/resources/ResourceLocation; sprite a field_45445 + m (IILnet/minecraft/resources/ResourceLocation;Lnet/minecraft/network/chat/Component;)V + p 1 x + p 2 y + p 3 sprite + p 4 message +c net/minecraft/client/gui/screens/inventory/BeaconScreen$BeaconUpgradePowerButton fox$g net/minecraft/class_466$class_6393 + f Lnet/minecraft/client/gui/screens/inventory/BeaconScreen; field_33835 c field_33835 + m (Lnet/minecraft/client/gui/screens/inventory/BeaconScreen;IILnet/minecraft/core/Holder;)V + p 2 x + p 3 y + p 4 effect +c net/minecraft/client/gui/screens/inventory/BlastFurnaceScreen foy net/minecraft/class_3871 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45446 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45447 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17115 + m (Lnet/minecraft/world/inventory/BlastFurnaceMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen foz net/minecraft/class_473 + f Z isSigning A field_2828 + c Determines if the signing screen is open + f I frameTick B field_2844 + c Update ticks since the gui was opened + f I currentPage C field_2840 + f Ljava/util/List; pages D field_17116 + f Ljava/lang/String; title E field_2847 + f Lnet/minecraft/client/gui/font/TextFieldHelper; pageEdit F field_24269 + f Lnet/minecraft/client/gui/font/TextFieldHelper; titleEdit G field_24270 + f J lastClickTime H field_2830 + c In milliseconds + f I lastIndex I field_2827 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; forwardButton J field_2843 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; backButton K field_2839 + f Lnet/minecraft/client/gui/components/Button; doneButton L field_2848 + f Lnet/minecraft/client/gui/components/Button; signButton M field_2831 + f Lnet/minecraft/client/gui/components/Button; finalizeButton N field_2841 + f Lnet/minecraft/client/gui/components/Button; cancelButton O field_2849 + f Lnet/minecraft/world/InteractionHand; hand P field_2832 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; displayCache Q field_24268 + f Lnet/minecraft/network/chat/Component; pageMsg R field_25891 + f Lnet/minecraft/network/chat/Component; ownerText S field_25892 + f I TEXT_WIDTH a field_32323 + f I TEXT_HEIGHT b field_32324 + f I IMAGE_WIDTH c field_32326 + f I IMAGE_HEIGHT r field_32327 + f Lnet/minecraft/network/chat/Component; EDIT_TITLE_LABEL s field_25893 + f Lnet/minecraft/network/chat/Component; FINALIZE_WARNING_LABEL u field_25894 + f Lnet/minecraft/util/FormattedCharSequence; BLACK_CURSOR v field_25895 + f Lnet/minecraft/util/FormattedCharSequence; GRAY_CURSOR w field_25896 + f Lnet/minecraft/world/entity/player/Player; owner x field_2826 + f Lnet/minecraft/world/item/ItemStack; book y field_2835 + f Z isModified z field_2837 + c Whether the book's title or contents has been modified since being opened + m ()I getNumPages C method_17046 + c Returns the number of pages in the book + m ()V pageBack D method_2437 + c Displays the previous page + m ()V pageForward E method_2444 + c Displays the next page (creating it if necessary) + m ()V updateButtonVisibility F method_2413 + c Sets visibility for book buttons + m ()V eraseEmptyTrailingPages G method_17047 + m ()V updateLocalCopy J method_37433 + m ()V appendPageToBook K method_2436 + c Adds a new page to the book (capped at 100 pages) + m ()V keyUp L method_27597 + m ()V keyDown M method_27598 + m ()V keyHome N method_2421 + m ()V keyEnd O method_2414 + m ()Ljava/lang/String; getCurrentPageText P method_2427 + c Returns the contents of the current page as a string (or an empty string if the currPage isn't a valid page index) + m ()Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; getDisplayCache Q method_27576 + m ()V clearDisplayCache R method_27577 + m ()V clearDisplayCacheAfterPageChange S method_27872 + m ()Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; rebuildDisplayCache T method_27578 + m ()Ljava/lang/String; method_27579 U method_27579 + m (I)V changeLine a method_27580 + p 1 yChange + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Z)V renderCursor a method_27581 + p 1 guiGraphics + p 2 cursorPos + p 3 isEndOfText + m (Lnet/minecraft/client/gui/GuiGraphics;[Lnet/minecraft/client/renderer/Rect2i;)V renderHighlight a method_27588 + p 1 guiGraphics + p 2 highlightAreas + m (Lnet/minecraft/client/gui/components/Button;)V method_19878 a method_19878 + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; convertScreenToLocal a method_27582 + p 1 screenPos + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/renderer/Rect2i; createSelection a method_27583 + p 1 corner1 + p 2 corner2 + m (Ljava/lang/String;)V setClipboard a method_27584 + p 1 clipboardValue + m (Ljava/lang/String;Lnet/minecraft/client/StringSplitter;IIII)Lnet/minecraft/client/renderer/Rect2i; createPartialLineSelection a method_27585 + p 1 input + p 2 splitter + p 3 startPos + p 4 endPos + p 5 y + p 6 lineStart + m (Lorg/apache/commons/lang3/mutable/MutableInt;Ljava/lang/String;Lorg/apache/commons/lang3/mutable/MutableBoolean;Lit/unimi/dsi/fastutil/ints/IntList;Ljava/util/List;Lnet/minecraft/network/chat/Style;II)V method_27586 a method_27586 + m ([II)I findLineFromPos a method_27591 + p 0 lineStarts + p 1 find + m (I)V selectWord b method_27589 + p 1 index + m (III)Z bookKeyPressed b method_27592 + c Handles keypresses, clipboard functions, and page turning + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/Button;)V method_19879 b method_19879 + m (Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; convertLocalToScreen b method_27590 + p 1 localScreenPos + m (Ljava/lang/String;)V setCurrentPageText b method_2439 + p 1 text + m (Lnet/minecraft/client/gui/components/Button;)V method_19880 c method_19880 + m (Ljava/lang/String;)Z method_27593 c method_27593 + m (Z)V saveChanges c method_2407 + p 1 publish + m (III)Z titleKeyPressed d method_2446 + c Handles special keys pressed while editing the book's title + p 1 keyCode + p 2 scanCode + p 3 modifiers + m (Lnet/minecraft/client/gui/components/Button;)V method_19881 d method_19881 + m (Ljava/lang/String;)V method_27594 d method_27594 + m (Lnet/minecraft/client/gui/components/Button;)V method_19882 e method_19882 + m (Ljava/lang/String;)Z method_27596 e method_27596 + m (Lnet/minecraft/client/gui/components/Button;)V method_19883 f method_19883 + m ()Ljava/lang/String; getClipboard m method_27595 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;)V + p 1 owner + p 2 book + p 3 hand + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache foz$a net/minecraft/class_473$class_5233 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$DisplayCache; EMPTY a field_24271 + f Ljava/lang/String; fullText b field_24272 + f Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i; cursor c field_24273 + f Z cursorAtEnd d field_24274 + f [I lineStarts e field_24275 + f [Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo; lines f field_24276 + f [Lnet/minecraft/client/renderer/Rect2i; selection g field_24277 + m (I)I findLineStart a method_27600 + p 1 line + m (II)I changeLine a method_27601 + p 1 xChange + p 2 yChange + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;)I getIndexAtPosition a method_27602 + p 1 font + p 2 cursorPosition + m (I)I findLineEnd b method_27604 + p 1 line + m (Ljava/lang/String;Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i;Z[I[Lnet/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo;[Lnet/minecraft/client/renderer/Rect2i;)V + p 1 fullText + p 2 cursor + p 3 cursorAtEnd + p 4 lineStarts + p 5 lines + p 6 selection + m ()V +c net/minecraft/client/gui/screens/inventory/BookEditScreen$LineInfo foz$b net/minecraft/class_473$class_475 + f Lnet/minecraft/network/chat/Style; style a field_24278 + f Ljava/lang/String; contents b field_24279 + f Lnet/minecraft/network/chat/Component; asComponent c field_24280 + f I x d field_2854 + f I y e field_2853 + m (Lnet/minecraft/network/chat/Style;Ljava/lang/String;II)V + p 1 style + p 2 contents + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/BookEditScreen$Pos2i foz$c net/minecraft/class_473$class_5234 + f I x a field_24281 + f I y b field_24282 + m (II)V + p 1 x + p 2 y +c net/minecraft/client/gui/screens/inventory/BookViewScreen fpa net/minecraft/class_3872 + f Ljava/util/List; cachedPageComponents A field_17120 + c Holds a copy of the page text, split into page width lines + f I cachedPage B field_17121 + f Lnet/minecraft/network/chat/Component; pageMsg C field_25897 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; forwardButton D field_17122 + f Lnet/minecraft/client/gui/screens/inventory/PageButton; backButton E field_17123 + f Z playTurnSound F field_18976 + c Determines if a sound is played when the page is turned + f I PAGE_INDICATOR_TEXT_Y_OFFSET a field_32328 + f I PAGE_TEXT_X_OFFSET b field_32329 + f I PAGE_TEXT_Y_OFFSET c field_32330 + f Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; EMPTY_ACCESS r field_17417 + f Lnet/minecraft/resources/ResourceLocation; BOOK_LOCATION s field_17117 + f I TEXT_WIDTH u field_32331 + f I TEXT_HEIGHT v field_32332 + f I IMAGE_WIDTH w field_32333 + f I IMAGE_HEIGHT x field_32334 + f Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; bookAccess y field_17418 + f I currentPage z field_17119 + m ()V createPageControlButtons C method_17558 + m ()I getNumPages D method_17055 + m ()V pageBack E method_17057 + c Moves the display back one page + m ()V pageForward F method_17058 + c Moves the display forward one page + m ()V closeScreen G method_34494 + m ()V updateButtonVisibility J method_17059 + m (I)Z setPage a method_17556 + c Moves the book to the specified page and returns true if it exists, {@code false} otherwise. + p 1 pageNum + m (Lnet/minecraft/client/gui/components/Button;)V method_19884 a method_19884 + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;)V setBookAccess a method_17554 + p 1 bookAccess + m (DD)Lnet/minecraft/network/chat/Style; getClickedComponentStyleAt b method_17048 + p 1 mouseX + p 3 mouseY + m (I)Z forcePage b method_17789 + c I'm not sure why this exists. The function it calls is public and does all the work. + p 1 pageNum + m (Lnet/minecraft/client/gui/components/Button;)V method_19885 b method_19885 + m (Lnet/minecraft/client/gui/components/Button;)V method_19886 c method_19886 + m ()V createMenuControls m method_17557 + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;)V + p 1 bookAccess + m ()V + m (Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess;Z)V + p 1 bookAccess + p 2 playTurnSound + m ()V +c net/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess fpa$a net/minecraft/class_3872$class_3931 + f Ljava/util/List; pages a comp_2438 + m ()I getPageCount a method_17560 + c Returns the size of the book + m (I)Lnet/minecraft/network/chat/FormattedText; getPage a method_17563 + p 1 page + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/gui/screens/inventory/BookViewScreen$BookAccess; fromItem a method_17562 + p 0 stack + m ()Ljava/util/List; pages b comp_2438 + m (Ljava/util/List;)V +c net/minecraft/client/gui/screens/inventory/BrewingStandScreen fpb net/minecraft/class_472 + f Lnet/minecraft/resources/ResourceLocation; FUEL_LENGTH_SPRITE E field_45448 + f Lnet/minecraft/resources/ResourceLocation; BREW_PROGRESS_SPRITE F field_45449 + f Lnet/minecraft/resources/ResourceLocation; BUBBLES_SPRITE G field_45450 + f Lnet/minecraft/resources/ResourceLocation; BREWING_STAND_LOCATION H field_2823 + f [I BUBBLELENGTHS I field_2824 + m (Lnet/minecraft/world/inventory/BrewingStandMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CartographyTableScreen fpc net/minecraft/class_3934 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45453 + f Lnet/minecraft/resources/ResourceLocation; SCALED_MAP_SPRITE F field_45454 + f Lnet/minecraft/resources/ResourceLocation; DUPLICATED_MAP_SPRITE G field_45455 + f Lnet/minecraft/resources/ResourceLocation; MAP_SPRITE H field_45451 + f Lnet/minecraft/resources/ResourceLocation; LOCKED_SPRITE I field_45452 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION J field_17421 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;IIF)V renderMap a method_17566 + p 1 guiGraphics + p 2 mapId + p 3 mapData + p 4 x + p 5 y + p 6 scale + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;ZZZZ)V renderResultingMap a method_17567 + p 1 guiGraphics + p 2 mapId + p 3 mapData + p 4 hasMap + p 5 hasPaper + p 6 hasGlassPane + p 7 isMaxSize + m (Lnet/minecraft/world/inventory/CartographyTableMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CommandBlockEditScreen fpd net/minecraft/class_477 + f Z autoexec A field_2867 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity; autoCommandBlock u field_2865 + f Lnet/minecraft/client/gui/components/CycleButton; modeButton v field_2869 + f Lnet/minecraft/client/gui/components/CycleButton; conditionalButton w field_2871 + f Lnet/minecraft/client/gui/components/CycleButton; autoexecButton x field_2866 + f Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode; mode y field_2870 + f Z conditional z field_2868 + m ()V updateGui E method_2457 + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;)Lnet/minecraft/network/chat/Component; method_32643 a method_32643 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/entity/CommandBlockEntity$Mode;)V method_32644 a method_32644 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32645 a method_32645 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32646 b method_32646 + m (Z)V enableControls f method_32647 + p 1 active + m (Lnet/minecraft/world/level/block/entity/CommandBlockEntity;)V + p 1 autoCommandBlock +c net/minecraft/client/gui/screens/inventory/CommandBlockEditScreen$1 fpd$1 net/minecraft/class_477$1 + f [I $SwitchMap$net$minecraft$world$level$block$entity$CommandBlockEntity$Mode a field_2875 + m ()V +c net/minecraft/client/gui/screens/inventory/ContainerScreen fpe net/minecraft/class_476 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_BACKGROUND E field_2861 + c The ResourceLocation containing the chest GUI texture. + f I containerRows F field_2864 + c Window height is calculated with these values" the more rows, the higher + m (Lnet/minecraft/world/inventory/ChestMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CrafterScreen fpf net/minecraft/class_8898 + f Lnet/minecraft/resources/ResourceLocation; DISABLED_SLOT_LOCATION_SPRITE E field_46882 + f Lnet/minecraft/resources/ResourceLocation; POWERED_REDSTONE_LOCATION_SPRITE F field_46883 + f Lnet/minecraft/resources/ResourceLocation; UNPOWERED_REDSTONE_LOCATION_SPRITE G field_46884 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_LOCATION H field_46879 + f Lnet/minecraft/network/chat/Component; DISABLED_SLOT_TOOLTIP I field_46880 + f Lnet/minecraft/world/entity/player/Player; player J field_46881 + m (I)V enableSlot a method_54797 + p 1 slot + m (IZ)V updateSlotState a method_54798 + p 1 slot + p 2 state + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/inventory/CrafterSlot;)V renderDisabledSlot a method_54591 + p 1 guiGraphics + p 2 slot + m (I)V disableSlot b method_54799 + p 1 slot + m (Lnet/minecraft/client/gui/GuiGraphics;)V renderRedstone c method_54592 + p 1 guiGraphics + m (Lnet/minecraft/world/inventory/CrafterMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CrafterScreen$1 fpf$1 net/minecraft/class_8898$1 + f [I $SwitchMap$net$minecraft$world$inventory$ClickType a field_47118 + m ()V +c net/minecraft/client/gui/screens/inventory/CraftingScreen fpg net/minecraft/class_479 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_TABLE_LOCATION E field_2878 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; recipeBookComponent F field_2880 + f Z widthTooNarrow G field_2877 + m (Lnet/minecraft/client/gui/components/Button;)V method_19890 a method_19890 + m (Lnet/minecraft/world/inventory/CraftingMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/CreativeInventoryListener fph net/minecraft/class_478 + f Lnet/minecraft/client/Minecraft; minecraft a field_2876 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen fpi net/minecraft/class_481 + c

Interface {@link net.fabricmc.fabric.api.client.itemgroup.v1.FabricCreativeInventoryScreen} injected by mod fabric-item-group-api-v1

+ f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE E field_45459 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE F field_45460 + f [Lnet/minecraft/resources/ResourceLocation; UNSELECTED_TOP_TABS G field_45461 + f [Lnet/minecraft/resources/ResourceLocation; SELECTED_TOP_TABS H field_45456 + f [Lnet/minecraft/resources/ResourceLocation; UNSELECTED_BOTTOM_TABS I field_45457 + f [Lnet/minecraft/resources/ResourceLocation; SELECTED_BOTTOM_TABS J field_45458 + f I NUM_ROWS K field_32337 + f I NUM_COLS L field_32338 + f I TAB_WIDTH M field_32339 + f I TAB_HEIGHT N field_32340 + f I SCROLLER_WIDTH O field_32341 + f I SCROLLER_HEIGHT P field_32342 + f Lnet/minecraft/world/SimpleContainer; CONTAINER Q field_2895 + f Lnet/minecraft/network/chat/Component; TRASH_SLOT_TOOLTIP R field_26563 + f I TEXT_COLOR S field_32343 + f Lnet/minecraft/world/item/CreativeModeTab; selectedTab T field_2896 + c Currently selected creative inventory tab index. + f F scrollOffs U field_2890 + c Amount scrolled in Creative mode inventory (0 = top, 1 = bottom) + f Z scrolling V field_2892 + c True if the scrollbar is being dragged + f Lnet/minecraft/client/gui/components/EditBox; searchBox W field_2894 + f Ljava/util/List; originalSlots X field_2886 + f Lnet/minecraft/world/inventory/Slot; destroyItemSlot Y field_2889 + f Lnet/minecraft/client/gui/screens/inventory/CreativeInventoryListener; listener Z field_2891 + f Z ignoreTextInput aa field_2888 + f Z hasClickedOutside ab field_2887 + f Ljava/util/Set; visibleTags ac field_16201 + f Z displayOperatorCreativeTab ad field_41112 + m ()Z isInventoryOpen E method_47424 + m ()V refreshSearchResults F method_2464 + m ()Z canScroll J method_2465 + c Returns (if you are not on the inventoryTab) and (the flag isn't set) and (you have more than 1 page of items). + m (Lnet/minecraft/world/entity/player/Player;)Z hasPermissions a method_47419 + p 1 player + m (Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)V tryRefreshInvalidatedTabs a method_47420 + p 1 enabledFeatures + p 2 hasPermissions + p 3 provider + m (Lnet/minecraft/world/inventory/Slot;)Z isCreativeSlot a method_2470 + p 1 slot + m (Lnet/minecraft/world/item/CreativeModeTab;)V selectTab a method_2466 + c Sets the current creative tab, restructuring the GUI as needed. + p 1 tab + m (Lnet/minecraft/world/item/CreativeModeTab;DD)Z checkTabClicked a method_2463 + p 1 creativeModeTab + p 2 relativeMouseX + p 4 relativeMouseY + m (Lnet/minecraft/world/item/ItemStack;Ljava/util/List;Lnet/minecraft/tags/TagKey;)V method_51455 a method_51455 + m (Lnet/minecraft/client/Minecraft;IZZ)V handleHotbarLoadOrSave a method_2462 + p 0 client + p 1 index + p 2 load + p 3 save + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/CreativeModeTab;)V renderTabButton a method_2468 + p 1 guiGraphics + p 2 creativeModeTab + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/CreativeModeTab;II)Z checkTabHovering a method_2471 + p 1 guiGraphics + p 2 creativeModeTab + p 3 mouseX + p 4 mouseY + m (Lnet/minecraft/client/multiplayer/SessionSearchTrees;Lnet/minecraft/world/flag/FeatureFlagSet;ZLnet/minecraft/core/HolderLookup$Provider;)Z tryRebuildTabContents a method_60324 + p 1 searchTrees + p 2 enabledFeatures + p 3 hasPermissions + p 4 registries + m (Ljava/lang/String;)V updateVisibleTags a method_15871 + p 1 search + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Z method_15875 a method_15875 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Z method_15874 a method_15874 + m (Ljava/util/Collection;)V refreshCurrentTabContents a method_47421 + p 1 items + m (Ljava/util/function/Predicate;Lnet/minecraft/tags/TagKey;)Z method_15873 a method_15873 + m (DD)Z insideScrollbar b method_2467 + p 1 mouseX + p 3 mouseY + m (Lnet/minecraft/world/item/CreativeModeTab;)I getTabX b method_47422 + p 1 tab + m (Lnet/minecraft/world/item/CreativeModeTab;)I getTabY c method_47423 + p 1 tab + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/flag/FeatureFlagSet;Z)V + p 1 player + p 2 enabledFeatures + p 3 displayOperatorCreativeTab + m ()V +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$CustomCreativeSlot fpi$a net/minecraft/class_481$class_482 + m (Lnet/minecraft/world/Container;III)V + p 1 container + p 2 slot + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$ItemPickerMenu fpi$b net/minecraft/class_481$class_483 + f Lnet/minecraft/core/NonNullList; items k field_2897 + c The list of items in this container. + f Lnet/minecraft/world/inventory/AbstractContainerMenu; inventoryMenu l field_29349 + m (F)I getRowIndexForScroll a method_47425 + p 1 scrollOffs + m (FD)F subtractInputFromScroll a method_47426 + p 1 scrollOffs + p 2 input + m (F)V scrollTo b method_2473 + c Updates the gui slot's ItemStacks based on scroll position. + p 1 pos + m (I)F getScrollForRowIndex e method_47427 + p 1 rowIndex + m ()I calculateRowCount l method_47428 + m ()Z canScroll m method_2474 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player +c net/minecraft/client/gui/screens/inventory/CreativeModeInventoryScreen$SlotWrapper fpi$c net/minecraft/class_481$class_484 + f Lnet/minecraft/world/inventory/Slot; target a field_2898 + m (Lnet/minecraft/world/inventory/Slot;III)V + p 1 slot + p 2 index + p 3 x + p 4 y +c net/minecraft/client/gui/screens/inventory/CyclingSlotBackground fpj net/minecraft/class_8064 + f I ICON_CHANGE_TICK_RATE a field_42039 + f I ICON_SIZE b field_42040 + f I ICON_TRANSITION_TICK_DURATION c field_42041 + f I slotIndex d field_42042 + f Ljava/util/List; icons e field_42043 + f I tick f field_42044 + f I iconIndex g field_42045 + m (F)F getIconTransitionTransparency a method_48468 + p 1 partialTick + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/client/gui/GuiGraphics;FII)V render a method_48469 + p 1 containerMenu + p 2 guiGraphics + p 3 partialTick + p 4 x + p 5 y + m (Lnet/minecraft/world/inventory/Slot;Lnet/minecraft/resources/ResourceLocation;FLnet/minecraft/client/gui/GuiGraphics;II)V renderIcon a method_48470 + p 1 slot + p 2 icon + p 3 alpha + p 4 guiGraphics + p 5 x + p 6 y + m (Ljava/util/List;)V tick a method_48471 + p 1 icons + m (I)V + p 1 slotIndex +c net/minecraft/client/gui/screens/inventory/DispenserScreen fpk net/minecraft/class_480 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_LOCATION E field_2885 + m (Lnet/minecraft/world/inventory/DispenserMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/EffectRenderingInventoryScreen fpl net/minecraft/class_485 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_LARGE_SPRITE E field_45462 + f Lnet/minecraft/resources/ResourceLocation; EFFECT_BACKGROUND_SMALL_SPRITE F field_45463 + m ()Z canSeeEffects G method_38934 + m (Lnet/minecraft/world/effect/MobEffectInstance;)Lnet/minecraft/network/chat/Component; getEffectName a method_38933 + p 1 effect + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;)V renderLabels a method_18644 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;Z)V renderBackgrounds a method_18642 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + p 5 isSmall + m (Lnet/minecraft/client/gui/GuiGraphics;IILjava/lang/Iterable;Z)V renderIcons b method_18643 + p 1 guiGraphics + p 2 renderX + p 3 yOffset + p 4 effects + p 5 isSmall + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderEffects c method_2477 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/EnchantmentNames fpm net/minecraft/class_487 + f Lnet/minecraft/resources/ResourceLocation; ALT_FONT a field_24283 + f Lnet/minecraft/network/chat/Style; ROOT_STYLE b field_24284 + f Lnet/minecraft/client/gui/screens/inventory/EnchantmentNames; INSTANCE c field_2917 + f Lnet/minecraft/util/RandomSource; random d field_2918 + f [Ljava/lang/String; words e field_2916 + m ()Lnet/minecraft/client/gui/screens/inventory/EnchantmentNames; getInstance a method_2481 + m (J)V initSeed a method_2480 + c Resets the underlying random number generator using a given seed. + p 1 seed + m (Lnet/minecraft/client/gui/Font;I)Lnet/minecraft/network/chat/FormattedText; getRandomName a method_2479 + p 1 fontRenderer + p 2 maxWidth + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/EnchantmentScreen fpn net/minecraft/class_486 + f I time E field_2915 + f F flip F field_2912 + f F oFlip G field_2914 + f F flipT H field_2909 + f F flipA I field_2906 + f F open J field_2905 + f F oOpen K field_2904 + f [Lnet/minecraft/resources/ResourceLocation; ENABLED_LEVEL_SPRITES L field_45464 + f [Lnet/minecraft/resources/ResourceLocation; DISABLED_LEVEL_SPRITES M field_45465 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_DISABLED_SPRITE N field_45466 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_HIGHLIGHTED_SPRITE O field_45467 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTMENT_SLOT_SPRITE P field_45468 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTING_TABLE_LOCATION Q field_2910 + c The ResourceLocation containing the Enchantment GUI texture location + f Lnet/minecraft/resources/ResourceLocation; ENCHANTING_BOOK_LOCATION R field_2901 + c The ResourceLocation containing the texture for the Book rendered above the enchantment table + f Lnet/minecraft/util/RandomSource; random S field_2911 + c A Random instance for use with the enchantment gui + f Lnet/minecraft/client/model/BookModel; bookModel T field_2908 + f Lnet/minecraft/world/item/ItemStack; last U field_2913 + m ()V tickBook E method_2478 + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderBook d method_52223 + p 1 guiGraphics + p 2 x + p 3 y + p 4 partialTick + m (Lnet/minecraft/world/inventory/EnchantmentMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/FurnaceScreen fpo net/minecraft/class_3873 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45469 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45470 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17127 + m (Lnet/minecraft/world/inventory/FurnaceMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/GrindstoneScreen fpp net/minecraft/class_3802 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45471 + f Lnet/minecraft/resources/ResourceLocation; GRINDSTONE_LOCATION F field_16769 + m (Lnet/minecraft/world/inventory/GrindstoneMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/HangingSignEditScreen fpq net/minecraft/class_7744 + f F MAGIC_BACKGROUND_SCALE b field_40431 + f Lorg/joml/Vector3f; TEXT_SCALE c field_40432 + f I TEXTURE_WIDTH r field_40433 + f I TEXTURE_HEIGHT s field_40434 + f Lnet/minecraft/resources/ResourceLocation; texture u field_40435 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + m ()V +c net/minecraft/client/gui/screens/inventory/HopperScreen fpr net/minecraft/class_488 + f Lnet/minecraft/resources/ResourceLocation; HOPPER_LOCATION E field_2919 + c The ResourceLocation containing the gui texture for the hopper + m (Lnet/minecraft/world/inventory/HopperMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/HorseInventoryScreen fps net/minecraft/class_491 + f Lnet/minecraft/resources/ResourceLocation; CHEST_SLOTS_SPRITE E field_45473 + f Lnet/minecraft/resources/ResourceLocation; SADDLE_SLOT_SPRITE F field_45474 + f Lnet/minecraft/resources/ResourceLocation; LLAMA_ARMOR_SLOT_SPRITE G field_45475 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_SLOT_SPRITE H field_45472 + f Lnet/minecraft/resources/ResourceLocation; HORSE_INVENTORY_LOCATION I field_2937 + f Lnet/minecraft/world/entity/animal/horse/AbstractHorse; horse J field_2941 + c The EntityHorse whose inventory is currently being accessed. + f I inventoryColumns K field_52253 + f F xMouse L field_2939 + c The mouse x-position recorded during the last rendered frame. + f F yMouse M field_2938 + c The mouse y-position recorded during the last rendered frame. + m (Lnet/minecraft/world/inventory/HorseInventoryMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/world/entity/animal/horse/AbstractHorse;I)V + p 1 menu + p 2 inventory + p 3 horse + p 4 inventoryColumns + m ()V +c net/minecraft/client/gui/screens/inventory/InventoryScreen fpt net/minecraft/class_490 + f F xMouse E field_2935 + c The old x position of the mouse pointer + f F yMouse F field_2934 + c The old y position of the mouse pointer + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; recipeBookComponent G field_2929 + f Z widthTooNarrow H field_2931 + f Z buttonClicked I field_2930 + m (Lnet/minecraft/client/gui/GuiGraphics;FFFLorg/joml/Vector3f;Lorg/joml/Quaternionf;Lorg/joml/Quaternionf;Lnet/minecraft/world/entity/LivingEntity;)V renderEntityInInventory a method_48472 + p 0 guiGraphics + p 1 x + p 2 y + p 3 scale + p 4 translate + p 5 pose + p 6 cameraOrientation + p 7 entity + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIFFFLnet/minecraft/world/entity/LivingEntity;)V renderEntityInInventoryFollowsMouse a method_2486 + p 0 guiGraphics + p 1 x1 + p 2 y1 + p 3 x2 + p 4 y2 + p 5 scale + p 6 yOffset + p 7 mouseX + p 8 mouseY + p 9 entity + m (Lnet/minecraft/client/gui/components/Button;)V method_19891 a method_19891 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/client/gui/GuiGraphics;)V method_29977 a method_29977 + m (Lnet/minecraft/world/entity/player/Player;)V + p 1 player +c net/minecraft/client/gui/screens/inventory/ItemCombinerScreen fpu net/minecraft/class_4894 + f Lnet/minecraft/resources/ResourceLocation; menuResource E field_22794 + m ()V subInit E method_25445 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderErrorIcon c method_48467 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIF)V renderFg d method_25444 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 partialTick + m (Lnet/minecraft/world/inventory/ItemCombinerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;Lnet/minecraft/resources/ResourceLocation;)V + p 1 menu + p 2 playerInventory + p 3 title + p 4 menuResource +c net/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen fpv net/minecraft/class_3742 + f Lnet/minecraft/client/gui/components/EditBox; targetEdit A field_23349 + f Lnet/minecraft/client/gui/components/EditBox; poolEdit B field_23350 + f Lnet/minecraft/client/gui/components/EditBox; finalStateEdit C field_16519 + f Lnet/minecraft/client/gui/components/EditBox; selectionPriorityEdit D field_47123 + f Lnet/minecraft/client/gui/components/EditBox; placementPriorityEdit E field_47124 + f I levels F field_24052 + f Z keepJigsaws G field_25271 + f Lnet/minecraft/client/gui/components/CycleButton; jointButton H field_23351 + f Lnet/minecraft/client/gui/components/Button; doneButton I field_19103 + f Lnet/minecraft/client/gui/components/Button; generateButton J field_33958 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType; joint K field_23352 + f Lnet/minecraft/network/chat/Component; JOINT_LABEL a field_26564 + f Lnet/minecraft/network/chat/Component; POOL_LABEL b field_26565 + f Lnet/minecraft/network/chat/Component; NAME_LABEL c field_26566 + f Lnet/minecraft/network/chat/Component; TARGET_LABEL r field_26567 + f Lnet/minecraft/network/chat/Component; FINAL_STATE_LABEL s field_26568 + f Lnet/minecraft/network/chat/Component; PLACEMENT_PRIORITY_LABEL u field_47119 + f Lnet/minecraft/network/chat/Component; PLACEMENT_PRIORITY_TOOLTIP v field_47120 + f Lnet/minecraft/network/chat/Component; SELECTION_PRIORITY_LABEL w field_47121 + f Lnet/minecraft/network/chat/Component; SELECTION_PRIORITY_TOOLTIP x field_47122 + f Lnet/minecraft/world/level/block/entity/JigsawBlockEntity; jigsawEntity y field_16522 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit z field_23348 + m ()V onCancel C method_16349 + m ()V sendToServer D method_16348 + m ()V sendGenerate E method_27272 + m ()V updateValidity F method_20118 + m (Lnet/minecraft/client/gui/components/Button;)V method_19892 a method_19892 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/entity/JigsawBlockEntity$JointType;)V method_32648 a method_32648 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32649 a method_32649 + m (Ljava/lang/String;)Z isValidResourceLocation a method_61042 + p 0 location + m (Lnet/minecraft/client/gui/components/Button;)V method_19893 b method_19893 + m (Ljava/lang/String;)I parseAsInt b method_54800 + p 1 string + m (Lnet/minecraft/client/gui/components/Button;)V method_27271 c method_27271 + m (Ljava/lang/String;)V method_26412 c method_26412 + m (Ljava/lang/String;)V method_20119 d method_20119 + m (Ljava/lang/String;)V method_20120 e method_20120 + m ()V onDone m method_16346 + m (Lnet/minecraft/world/level/block/entity/JigsawBlockEntity;)V + p 1 jigsawEntity + m ()V +c net/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen$1 fpv$1 net/minecraft/class_3742$1 + f Lnet/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen; field_24053 a field_24053 + m (Lnet/minecraft/client/gui/screens/inventory/JigsawBlockEditScreen;IIIILnet/minecraft/network/chat/Component;D)V +c net/minecraft/client/gui/screens/inventory/LecternScreen fpw net/minecraft/class_3935 + f Lnet/minecraft/world/inventory/LecternMenu; menu y field_17422 + f Lnet/minecraft/world/inventory/ContainerListener; listener z field_17423 + m ()Lnet/minecraft/world/inventory/LecternMenu; getMenu J method_17573 + m ()V bookChanged K method_17574 + m ()V pageChanged L method_17575 + m (Lnet/minecraft/client/gui/components/Button;)V method_19894 a method_19894 + m (Lnet/minecraft/client/gui/components/Button;)V method_19895 b method_19895 + m (I)V sendButtonClick g method_17572 + p 1 pageData + m (Lnet/minecraft/world/inventory/LecternMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title +c net/minecraft/client/gui/screens/inventory/LecternScreen$1 fpw$1 net/minecraft/class_3935$1 + f Lnet/minecraft/client/gui/screens/inventory/LecternScreen; field_17424 a field_17424 + m (Lnet/minecraft/client/gui/screens/inventory/LecternScreen;)V +c net/minecraft/client/gui/screens/inventory/LoomScreen fpx net/minecraft/class_494 + f Lnet/minecraft/resources/ResourceLocation; BANNER_SLOT_SPRITE E field_45481 + f Lnet/minecraft/resources/ResourceLocation; DYE_SLOT_SPRITE F field_45482 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SLOT_SPRITE G field_45483 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE H field_45476 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE I field_45477 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SELECTED_SPRITE J field_45478 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_HIGHLIGHTED_SPRITE K field_45479 + f Lnet/minecraft/resources/ResourceLocation; PATTERN_SPRITE L field_45480 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE M field_46186 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION N field_2966 + f I PATTERN_COLUMNS O field_32346 + f I PATTERN_ROWS P field_32347 + f I SCROLLER_WIDTH Q field_32348 + f I SCROLLER_HEIGHT R field_32349 + f I PATTERN_IMAGE_SIZE S field_32350 + f I SCROLLER_FULL_HEIGHT T field_32351 + f I PATTERNS_X U field_32352 + f I PATTERNS_Y V field_32353 + f Lnet/minecraft/client/model/geom/ModelPart; flag W field_21694 + f Lnet/minecraft/world/level/block/entity/BannerPatternLayers; resultBannerPatterns X field_21841 + f Lnet/minecraft/world/item/ItemStack; bannerStack Y field_2955 + f Lnet/minecraft/world/item/ItemStack; dyeStack Z field_2954 + f Lnet/minecraft/world/item/ItemStack; patternStack aa field_2967 + f Z displayPatterns ab field_2965 + f Z hasMaxPatterns ac field_2961 + f F scrollOffs ad field_2968 + f Z scrolling ae field_2958 + f I startRow af field_39190 + m ()I totalRowCount E method_43774 + m ()V containerChanged F method_17576 + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/core/Holder;II)V renderPattern a method_22692 + p 1 guiGraphics + p 2 patern + p 3 x + p 4 y + m (Lnet/minecraft/world/inventory/LoomMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/MenuAccess fpy net/minecraft/class_3936 + m ()Lnet/minecraft/world/inventory/AbstractContainerMenu; getMenu D method_17577 +c net/minecraft/client/gui/screens/inventory/MerchantScreen fpz net/minecraft/class_492 + f Lnet/minecraft/resources/ResourceLocation; OUT_OF_STOCK_SPRITE E field_45490 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_BACKGROUND_SPRITE F field_45491 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_CURRENT_SPRITE G field_45492 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_BAR_RESULT_SPRITE H field_45484 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE I field_45485 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE J field_45486 + f Lnet/minecraft/resources/ResourceLocation; TRADE_ARROW_OUT_OF_STOCK_SPRITE K field_45487 + f Lnet/minecraft/resources/ResourceLocation; TRADE_ARROW_SPRITE L field_45488 + f Lnet/minecraft/resources/ResourceLocation; DISCOUNT_STRIKETHRUOGH_SPRITE M field_45489 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_LOCATION N field_2950 + c The GUI texture for the villager merchant GUI. + f I TEXTURE_WIDTH O field_32354 + f I TEXTURE_HEIGHT P field_32355 + f I MERCHANT_MENU_PART_X Q field_32356 + f I PROGRESS_BAR_X R field_32357 + f I PROGRESS_BAR_Y S field_32358 + f I SELL_ITEM_1_X T field_32359 + f I SELL_ITEM_2_X U field_32360 + f I BUY_ITEM_X V field_32361 + f I LABEL_Y W field_32362 + f I NUMBER_OF_OFFER_BUTTONS X field_32363 + f I TRADE_BUTTON_X Y field_32364 + f I TRADE_BUTTON_HEIGHT Z field_32365 + f I TRADE_BUTTON_WIDTH aa field_32366 + f I SCROLLER_HEIGHT ab field_32367 + f I SCROLLER_WIDTH ac field_32368 + f I SCROLL_BAR_HEIGHT ad field_32369 + f I SCROLL_BAR_TOP_POS_Y ae field_32370 + f I SCROLL_BAR_START_X af field_32371 + f Lnet/minecraft/network/chat/Component; TRADES_LABEL ag field_26569 + f Lnet/minecraft/network/chat/Component; DEPRECATED_TOOLTIP ah field_26571 + f I shopItem ai field_19161 + c The integer value corresponding to the currently selected merchant recipe. + f [Lnet/minecraft/client/gui/screens/inventory/MerchantScreen$TradeOfferButton; tradeOfferButtons aj field_19162 + f I scrollOff ak field_19163 + f Z isDragging al field_19164 + m ()V postButtonClick E method_2496 + m (I)Z canScroll a method_20220 + p 1 numOffers + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/trading/MerchantOffer;)V renderProgressBar a method_19413 + p 1 guiGraphics + p 2 posX + p 3 posY + p 4 merchantOffer + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/world/item/trading/MerchantOffers;)V renderScroller a method_20221 + p 1 guiGraphics + p 2 posX + p 3 posY + p 4 merchantOffers + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;II)V renderAndDecorateCostA a method_20222 + p 1 guiGraphics + p 2 realCost + p 3 baseCost + p 4 x + p 5 y + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/world/item/trading/MerchantOffer;II)V renderButtonArrows a method_20223 + p 1 guiGraphics + p 2 merchantOffers + p 3 posX + p 4 posY + m (Lnet/minecraft/client/gui/components/Button;)V method_19896 a method_19896 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20227 a method_20227 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20225 b method_20225 + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;)Lnet/minecraft/client/gui/Font; method_20226 c method_20226 + m (Lnet/minecraft/world/inventory/MerchantMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/MerchantScreen$TradeOfferButton fpz$a net/minecraft/class_492$class_493 + f I index a field_19165 + f Lnet/minecraft/client/gui/screens/inventory/MerchantScreen; field_19166 b field_19166 + m ()I getIndex a method_20228 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderToolTip a method_25352 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/client/gui/screens/inventory/MerchantScreen;IIILnet/minecraft/client/gui/components/Button$OnPress;)V + p 2 x + p 3 y + p 4 index + p 5 onPress +c net/minecraft/client/gui/screens/inventory/MinecartCommandBlockEditScreen fqa net/minecraft/class_496 + f Lnet/minecraft/world/level/BaseCommandBlock; commandBlock u field_2976 + m (Lnet/minecraft/world/level/BaseCommandBlock;)V + p 1 commandBlock +c net/minecraft/client/gui/screens/inventory/PageButton fqb net/minecraft/class_474 + f Lnet/minecraft/resources/ResourceLocation; PAGE_FORWARD_HIGHLIGHTED_SPRITE a field_45493 + f Lnet/minecraft/resources/ResourceLocation; PAGE_FORWARD_SPRITE b field_45494 + f Lnet/minecraft/resources/ResourceLocation; PAGE_BACKWARD_HIGHLIGHTED_SPRITE c field_45495 + f Lnet/minecraft/resources/ResourceLocation; PAGE_BACKWARD_SPRITE d field_45496 + f Z isForward u field_2851 + f Z playTurnSound v field_18977 + m (IIZLnet/minecraft/client/gui/components/Button$OnPress;Z)V + p 1 x + p 2 y + p 3 isForward + p 4 onPress + p 5 playTurnSound + m ()V +c net/minecraft/client/gui/screens/inventory/ShulkerBoxScreen fqc net/minecraft/class_495 + f Lnet/minecraft/resources/ResourceLocation; CONTAINER_TEXTURE E field_2973 + m (Lnet/minecraft/world/inventory/ShulkerBoxMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/SignEditScreen fqd net/minecraft/class_498 + f F MAGIC_SCALE_NUMBER b field_40436 + f F MAGIC_TEXT_SCALE c field_40437 + f Lorg/joml/Vector3f; TEXT_SCALE r field_40438 + f Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; signModel s field_21525 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;ZZ)V + m ()V +c net/minecraft/client/gui/screens/inventory/SmithingScreen fqe net/minecraft/class_4895 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE E field_45498 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SMITHING_TEMPLATE_ARMOR_TRIM F field_42052 + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SLOT_SMITHING_TEMPLATE_NETHERITE_UPGRADE G field_42053 + f Lnet/minecraft/network/chat/Component; MISSING_TEMPLATE_TOOLTIP H field_42054 + f Lnet/minecraft/network/chat/Component; ERROR_TOOLTIP I field_42055 + f Ljava/util/List; EMPTY_SLOT_SMITHING_TEMPLATES J field_42056 + f I TITLE_LABEL_X K field_42057 + f I TITLE_LABEL_Y L field_42058 + f I ERROR_ICON_WIDTH M field_42059 + f I ERROR_ICON_HEIGHT N field_42060 + f I ERROR_ICON_X O field_42061 + f I ERROR_ICON_Y P field_42062 + f I TOOLTIP_WIDTH Q field_42063 + f I ARMOR_STAND_Y_ROT R field_42068 + f I ARMOR_STAND_X_ROT S field_42047 + f Lorg/joml/Vector3f; ARMOR_STAND_TRANSLATION T field_45497 + f Lorg/joml/Quaternionf; ARMOR_STAND_ANGLE U field_42048 + f I ARMOR_STAND_SCALE V field_42049 + f I ARMOR_STAND_OFFSET_Y W field_42050 + f I ARMOR_STAND_OFFSET_X X field_42051 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; templateIcon Y field_42064 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; baseIcon Z field_42065 + f Lnet/minecraft/client/gui/screens/inventory/CyclingSlotBackground; additionalIcon aa field_42066 + f Lnet/minecraft/world/entity/decoration/ArmorStand; armorStandPreview ab field_42067 + m ()Ljava/util/Optional; getTemplateItem F method_48473 + m ()Z hasRecipeError G method_48474 + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/network/chat/Component;)V method_48475 a method_48475 + m (Lnet/minecraft/world/item/ItemStack;)V updateArmorStandPreview b method_48641 + p 1 stack + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderOnboardingTooltips d method_48476 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + m (Lnet/minecraft/world/inventory/SmithingMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/SmokerScreen fqf net/minecraft/class_3874 + f Lnet/minecraft/resources/ResourceLocation; LIT_PROGRESS_SPRITE F field_45499 + f Lnet/minecraft/resources/ResourceLocation; BURN_PROGRESS_SPRITE G field_45500 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE H field_17128 + m (Lnet/minecraft/world/inventory/SmokerMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/StonecutterScreen fqg net/minecraft/class_3979 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_SPRITE E field_45503 + f Lnet/minecraft/resources/ResourceLocation; SCROLLER_DISABLED_SPRITE F field_45504 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_SELECTED_SPRITE G field_45505 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_HIGHLIGHTED_SPRITE H field_45501 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_SPRITE I field_45502 + f Lnet/minecraft/resources/ResourceLocation; BG_LOCATION J field_17673 + f I SCROLLER_WIDTH K field_32372 + f I SCROLLER_HEIGHT L field_32373 + f I RECIPES_COLUMNS M field_32374 + f I RECIPES_ROWS N field_32375 + f I RECIPES_IMAGE_SIZE_WIDTH O field_32376 + f I RECIPES_IMAGE_SIZE_HEIGHT P field_32377 + f I SCROLLER_FULL_HEIGHT Q field_32378 + f I RECIPES_X R field_32379 + f I RECIPES_Y S field_32380 + f F scrollOffs T field_17674 + f Z scrolling U field_17670 + c Is {@code true} if the player clicked on the scroll wheel in the GUI. + f I startIndex V field_17671 + c The index of the first recipe to display.\nThe number of recipes displayed at any time is 12 (4 recipes per row, and 3 rows). If the player scrolled down one row, this value would be 4 (representing the index of the first slot on the second row). + f Z displayRecipes W field_17672 + m ()I getOffscreenRows E method_17953 + m ()Z isScrollBarActive F method_17954 + m ()V containerChanged G method_17955 + c Called every time this screen's container is changed (is marked as dirty). + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderButtons a method_17952 + p 1 guiGraphics + p 2 mouseX + p 3 mouseY + p 4 x + p 5 y + p 6 lastVisibleElementIndex + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderRecipes b method_17951 + p 1 guiGraphics + p 2 x + p 3 y + p 4 startIndex + m (Lnet/minecraft/world/inventory/StonecutterMenu;Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/network/chat/Component;)V + p 1 menu + p 2 playerInventory + p 3 title + m ()V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen fqh net/minecraft/class_497 + f Lnet/minecraft/world/level/block/entity/StructureBlockEntity; structure A field_2980 + f Lnet/minecraft/world/level/block/Mirror; initialMirror B field_2996 + f Lnet/minecraft/world/level/block/Rotation; initialRotation C field_3003 + f Lnet/minecraft/world/level/block/state/properties/StructureMode; initialMode D field_3004 + f Z initialEntityIgnoring E field_2985 + f Z initialShowAir F field_2997 + f Z initialShowBoundingBox G field_2983 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit H field_3005 + f Lnet/minecraft/client/gui/components/EditBox; posXEdit I field_2982 + f Lnet/minecraft/client/gui/components/EditBox; posYEdit J field_2999 + f Lnet/minecraft/client/gui/components/EditBox; posZEdit K field_3010 + f Lnet/minecraft/client/gui/components/EditBox; sizeXEdit L field_2988 + f Lnet/minecraft/client/gui/components/EditBox; sizeYEdit M field_2998 + f Lnet/minecraft/client/gui/components/EditBox; sizeZEdit N field_2978 + f Lnet/minecraft/client/gui/components/EditBox; integrityEdit O field_3000 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit P field_2992 + f Lnet/minecraft/client/gui/components/EditBox; dataEdit Q field_2986 + f Lnet/minecraft/client/gui/components/Button; saveButton R field_2987 + f Lnet/minecraft/client/gui/components/Button; loadButton S field_3006 + f Lnet/minecraft/client/gui/components/Button; rot0Button T field_2995 + f Lnet/minecraft/client/gui/components/Button; rot90Button U field_2981 + f Lnet/minecraft/client/gui/components/Button; rot180Button V field_3007 + f Lnet/minecraft/client/gui/components/Button; rot270Button W field_2993 + f Lnet/minecraft/client/gui/components/Button; detectButton X field_3009 + f Lnet/minecraft/client/gui/components/CycleButton; includeEntitiesButton Y field_2990 + f Lnet/minecraft/client/gui/components/CycleButton; mirrorButton Z field_2979 + f Lnet/minecraft/network/chat/Component; NAME_LABEL a field_26572 + f Lnet/minecraft/client/gui/components/CycleButton; toggleAirButton aa field_3008 + f Lnet/minecraft/client/gui/components/CycleButton; toggleBoundingBox ab field_3001 + f Ljava/text/DecimalFormat; decimalFormat ac field_2991 + f Lnet/minecraft/network/chat/Component; POSITION_LABEL b field_26573 + f Lnet/minecraft/network/chat/Component; SIZE_LABEL c field_26574 + f Lnet/minecraft/network/chat/Component; INTEGRITY_LABEL r field_26575 + f Lnet/minecraft/network/chat/Component; CUSTOM_DATA_LABEL s field_26576 + f Lnet/minecraft/network/chat/Component; INCLUDE_ENTITIES_LABEL u field_26577 + f Lnet/minecraft/network/chat/Component; DETECT_SIZE_LABEL v field_26578 + f Lnet/minecraft/network/chat/Component; SHOW_AIR_LABEL w field_26579 + f Lnet/minecraft/network/chat/Component; SHOW_BOUNDING_BOX_LABEL x field_26580 + f Lcom/google/common/collect/ImmutableList; ALL_MODES y field_27993 + f Lcom/google/common/collect/ImmutableList; DEFAULT_MODES z field_27994 + m ()V onCancel C method_2514 + m ()V updateDirectionButtons D method_2510 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity$UpdateType;)Z sendToServer a method_2516 + p 1 updateType + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)V updateMode a method_32650 + p 1 structureMode + m (Lnet/minecraft/client/gui/components/Button;)V method_19898 a method_19898 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/Mirror;)V method_32651 a method_32651 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/level/block/state/properties/StructureMode;)V method_32652 a method_32652 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32653 a method_32653 + m (Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen;Ljava/lang/String;CI)Z method_16017 a method_16017 + m (Ljava/lang/String;)J parseSeed a method_2504 + p 1 seed + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Lnet/minecraft/network/chat/Component; method_32654 b method_32654 + m (Lnet/minecraft/client/gui/components/Button;)V method_19899 b method_19899 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32655 b method_32655 + m (Ljava/lang/String;)F parseIntegrity b method_2500 + p 1 integrity + m (Lnet/minecraft/world/level/block/state/properties/StructureMode;)Z method_32656 c method_32656 + m (Lnet/minecraft/client/gui/components/Button;)V method_19900 c method_19900 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32657 c method_32657 + m (Ljava/lang/String;)I parseCoordinate c method_2517 + p 1 coordinate + m (Lnet/minecraft/client/gui/components/Button;)V method_19901 d method_19901 + m (Lnet/minecraft/client/gui/components/Button;)V method_19906 e method_19906 + m (Lnet/minecraft/client/gui/components/Button;)V method_19908 f method_19908 + m (Lnet/minecraft/client/gui/components/Button;)V method_19909 g method_19909 + m (Lnet/minecraft/client/gui/components/Button;)V method_19910 h method_19910 + m (Lnet/minecraft/client/gui/components/Button;)V method_19911 i method_19911 + m ()V onDone m method_2515 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)V + p 1 structure + m ()V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen$1 fqh$1 net/minecraft/class_497$1 + f Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen; field_3023 d field_3023 + m (Lnet/minecraft/client/gui/screens/inventory/StructureBlockEditScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/inventory/StructureBlockEditScreen$2 fqh$2 net/minecraft/class_497$2 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation a field_3025 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$StructureMode b field_3024 + m ()V +c net/minecraft/client/gui/screens/inventory/package-info fqi net/minecraft/class_6217 +c net/minecraft/client/gui/screens/inventory/tooltip/BelowOrAboveWidgetTooltipPositioner fqj net/minecraft/class_7999 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; screenRectangle a field_46722 + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V + p 1 screenRectangle +c net/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip fqk net/minecraft/class_9805 + f I SKIN_SIZE a field_52140 + f I PADDING b field_52141 + f Ljava/util/List; activePlayers c field_52142 + m (Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip$ActivePlayersTooltip;)V + p 1 tooltip +c net/minecraft/client/gui/screens/inventory/tooltip/ClientActivePlayersTooltip$ActivePlayersTooltip fqk$a net/minecraft/class_9805$class_9806 + f Ljava/util/List; profiles a comp_2848 + m ()Ljava/util/List; profiles a comp_2848 + m (Ljava/util/List;)V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip fql net/minecraft/class_5682 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE a field_45506 + f I MARGIN_Y b field_32381 + f I BORDER_WIDTH c field_32382 + f I SLOT_SIZE_X d field_32384 + f I SLOT_SIZE_Y e field_32385 + f Lnet/minecraft/world/item/component/BundleContents; contents f field_49537 + m (IIIZLnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;)V renderSlot a method_33287 + p 1 x + p 2 y + p 3 itemIndex + p 4 isBundleFull + p 5 guiGraphics + p 6 font + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture;)V blit a method_33288 + p 1 guiGraphics + p 2 x + p 3 y + p 4 texture + m ()I backgroundWidth b method_52755 + m ()I backgroundHeight c method_52756 + m ()I gridSizeX d method_33289 + m ()I gridSizeY e method_33290 + m (Lnet/minecraft/world/item/component/BundleContents;)V + p 1 contents + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture fql$a net/minecraft/class_5682$class_5771 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; BLOCKED_SLOT a field_28362 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; SLOT b field_28361 + f Lnet/minecraft/resources/ResourceLocation; sprite c field_45507 + f I w d field_28370 + f I h e field_28371 + f [Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; $VALUES f field_28372 + m ()[Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientBundleTooltip$Texture; $values a method_36887 + m (Ljava/lang/String;ILnet/minecraft/resources/ResourceLocation;II)V + p 3 sprite + p 4 w + p 5 h + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTextTooltip fqm net/minecraft/class_5683 + f Lnet/minecraft/util/FormattedCharSequence; text a field_27997 + m (Lnet/minecraft/util/FormattedCharSequence;)V + p 1 text +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent fqn net/minecraft/class_5684 + m ()I getHeight a method_32661 + m (Lnet/minecraft/util/FormattedCharSequence;)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent; create a method_32662 + p 0 text + m (Lnet/minecraft/world/inventory/tooltip/TooltipComponent;)Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipComponent; create a method_32663 + p 0 visualTooltipComponent + m (Lnet/minecraft/client/gui/Font;)I getWidth a method_32664 + p 1 font + m (Lnet/minecraft/client/gui/Font;IILnet/minecraft/client/gui/GuiGraphics;)V renderImage a method_32666 + p 1 font + p 2 x + p 3 y + p 4 guiGraphics + m (Lnet/minecraft/client/gui/Font;IILorg/joml/Matrix4f;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V renderText a method_32665 + p 1 font + p 2 mouseX + p 3 mouseY + p 4 matrix + p 5 bufferSource +c net/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner fqo net/minecraft/class_8000 + m (IIIIII)Lorg/joml/Vector2ic; positionTooltip a method_47944 + p 1 screenWidth + p 2 screenHeight + p 3 mouseX + p 4 mouseY + p 5 tooltipWidth + p 6 tooltipHeight +c net/minecraft/client/gui/screens/inventory/tooltip/DefaultTooltipPositioner fqp net/minecraft/class_8001 + f Lnet/minecraft/client/gui/screens/inventory/tooltip/ClientTooltipPositioner; INSTANCE a field_41687 + m (IILorg/joml/Vector2i;II)V positionTooltip a method_47945 + p 1 screenWidth + p 2 screenHeight + p 3 tooltipPos + p 4 tooltipWidth + p 5 tooltipHeight + m ()V + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/MenuTooltipPositioner fqq net/minecraft/class_8092 + f I MAX_OVERLAP_WITH_WIDGET a field_42157 + f I MAX_DISTANCE_TO_WIDGET b field_42158 + f I MARGIN c field_42159 + f I MOUSE_OFFSET_X d field_42160 + f Lnet/minecraft/client/gui/navigation/ScreenRectangle; screenRectangle e field_46723 + m (III)I getOffset a method_48642 + p 0 mouseY + p 1 widgetY + p 2 widgetHeight + m (Lnet/minecraft/client/gui/navigation/ScreenRectangle;)V + p 1 screenRectangle +c net/minecraft/client/gui/screens/inventory/tooltip/TooltipRenderUtil fqr net/minecraft/class_8002 + f I MOUSE_OFFSET a field_41688 + f I PADDING_LEFT b field_41689 + f I PADDING_RIGHT c field_41690 + f I PADDING_TOP d field_41691 + f I PADDING_BOTTOM e field_41692 + f I PADDING f field_41693 + f I BACKGROUND_COLOR g field_41694 + f I BORDER_COLOR_TOP h field_41695 + f I BORDER_COLOR_BOTTOM i field_41696 + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderTooltipBackground a method_47946 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)V renderVerticalLineGradient a method_47947 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 topColor + p 6 bottomColor + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIIII)V renderFrameGradient a method_47948 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + p 6 topColor + p 7 bottomColor + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderVerticalLine b method_47949 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIII)V renderRectangle b method_47950 + p 0 guiGraphics + p 1 x + p 2 y + p 3 width + p 4 height + p 5 z + p 6 color + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderHorizontalLine c method_47951 + p 0 guiGraphics + p 1 x + p 2 y + p 3 length + p 4 z + p 5 color + m ()V +c net/minecraft/client/gui/screens/inventory/tooltip/package-info fqs net/minecraft/class_6664 +c net/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen fqt net/minecraft/class_500 + f Lnet/minecraft/client/gui/components/Button; deleteButton A field_3047 + f Lnet/minecraft/client/multiplayer/ServerData; editingServer B field_3051 + f Lnet/minecraft/client/server/LanServerDetection$LanServerList; lanServerList C field_3046 + f Lnet/minecraft/client/server/LanServerDetection$LanServerDetector; lanServerDetector D field_3045 + f Z initedOnce E field_3048 + f I BUTTON_ROW_WIDTH a field_41849 + f I TOP_ROW_BUTTON_WIDTH b field_41850 + f I LOWER_ROW_BUTTON_WIDTH c field_41851 + f I FOOTER_HEIGHT r field_41852 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList; serverSelectionList s field_3043 + f Lorg/slf4j/Logger; LOGGER u field_3044 + f Lnet/minecraft/client/multiplayer/ServerStatusPinger; pinger v field_3037 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen w field_3049 + f Lnet/minecraft/client/multiplayer/ServerList; servers x field_3040 + f Lnet/minecraft/client/gui/components/Button; editButton y field_3041 + f Lnet/minecraft/client/gui/components/Button; selectButton z field_3050 + m ()V onSelectedChange C method_20121 + m ()Lnet/minecraft/client/multiplayer/ServerStatusPinger; getPinger D method_2538 + m ()Lnet/minecraft/client/multiplayer/ServerList; getServers E method_2529 + m ()V refreshServerList F method_2534 + m (Lnet/minecraft/client/gui/components/Button;)V method_19912 a method_19912 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry;)V setSelected a method_2531 + p 1 selected + m (Lnet/minecraft/client/multiplayer/ServerData;)V join a method_2548 + p 1 server + m (Lnet/minecraft/client/gui/components/Button;)V method_19913 b method_19913 + m (Lnet/minecraft/client/gui/components/Button;)V method_19914 c method_19914 + m (Z)V deleteCallback c method_20377 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19915 d method_19915 + m (Lnet/minecraft/client/gui/components/Button;)V method_19916 e method_19916 + m (Lnet/minecraft/client/gui/components/Button;)V method_19917 f method_19917 + m (Z)V editServerCallback f method_20378 + p 1 confirmed + m (Lnet/minecraft/client/gui/components/Button;)V method_19918 g method_19918 + m (Z)V addServerCallback g method_20379 + p 1 confirmed + m (Z)V directJoinCallback h method_20380 + p 1 confirmed + m ()V joinSelectedServer m method_2536 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/multiplayer/SafetyScreen fqu net/minecraft/class_4749 + f Lnet/minecraft/network/chat/Component; TITLE b field_21843 + f Lnet/minecraft/network/chat/Component; CONTENT c field_21844 + f Lnet/minecraft/network/chat/Component; CHECK r field_21845 + f Lnet/minecraft/network/chat/Component; NARRATION s field_21846 + f Lnet/minecraft/client/gui/screens/Screen; previous u field_39354 + m (Lnet/minecraft/client/gui/components/Button;)V method_57751 a method_57751 + m (Lnet/minecraft/client/gui/components/Button;)V method_57752 b method_57752 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 previous + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen fqv net/minecraft/class_9807 + f I LINK_BUTTON_WIDTH a field_52143 + f I DEFAULT_ITEM_HEIGHT b field_52144 + f Lnet/minecraft/network/chat/Component; TITLE c field_52145 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen r field_52146 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkList; list s field_52147 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout u field_52148 + f Lnet/minecraft/server/ServerLinks; links v field_52149 + m (Lnet/minecraft/client/gui/components/Button;)V method_60875 a method_60875 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60876 a method_60876 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/ServerLinks;)V + p 1 lastScreen + p 2 links + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkList fqv$a net/minecraft/class_9807$class_9808 + m (ILnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkListEntry;)V method_60877 a method_60877 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;Lnet/minecraft/server/ServerLinks$Entry;)V method_60878 a method_60878 + m (Lnet/minecraft/client/Minecraft;ILnet/minecraft/client/gui/screens/multiplayer/ServerLinksScreen;)V + p 1 minecraft + p 2 width + p 3 parent +c net/minecraft/client/gui/screens/multiplayer/ServerLinksScreen$LinkListEntry fqv$b net/minecraft/class_9807$class_9809 + f Lnet/minecraft/client/gui/components/AbstractWidget; button a field_52150 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/ServerLinks$Entry;)V + p 1 screen + p 2 entry +c net/minecraft/client/gui/screens/multiplayer/ServerReconfigScreen fqw net/minecraft/class_8671 + f I DISCONNECT_TIME a field_45508 + f Lnet/minecraft/network/Connection; connection b field_45509 + f Lnet/minecraft/client/gui/components/Button; disconnectButton c field_45510 + f I delayTicker r field_45511 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout s field_45512 + m (Lnet/minecraft/client/gui/components/Button;)V method_52757 a method_52757 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerReconfigScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_52758 a method_52758 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/Connection;)V + p 1 title + p 2 connection +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList fqx net/minecraft/class_4267 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_HIGHLIGHTED_SPRITE A field_45530 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_SPRITE B field_45513 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_HIGHLIGHTED_SPRITE C field_45514 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_SPRITE D field_45515 + f Lorg/slf4j/Logger; LOGGER E field_19104 + f Ljava/util/concurrent/ThreadPoolExecutor; THREAD_POOL F field_19105 + f Lnet/minecraft/network/chat/Component; SCANNING_LABEL G field_26581 + f Lnet/minecraft/network/chat/Component; CANT_RESOLVE_TEXT H field_26582 + f Lnet/minecraft/network/chat/Component; CANT_CONNECT_TEXT I field_26583 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_STATUS J field_41853 + f Lnet/minecraft/network/chat/Component; NO_CONNECTION_STATUS K field_41854 + f Lnet/minecraft/network/chat/Component; PINGING_STATUS L field_41855 + f Lnet/minecraft/network/chat/Component; ONLINE_STATUS M field_41856 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen N field_19108 + f Ljava/util/List; onlineServers O field_19109 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry; lanHeader P field_19110 + f Ljava/util/List; networkServers Q field_19111 + f Lnet/minecraft/resources/ResourceLocation; INCOMPATIBLE_SPRITE a field_45516 + f Lnet/minecraft/resources/ResourceLocation; UNREACHABLE_SPRITE m field_45517 + f Lnet/minecraft/resources/ResourceLocation; PING_1_SPRITE n field_45518 + f Lnet/minecraft/resources/ResourceLocation; PING_2_SPRITE o field_45519 + f Lnet/minecraft/resources/ResourceLocation; PING_3_SPRITE p field_45520 + f Lnet/minecraft/resources/ResourceLocation; PING_4_SPRITE q field_45521 + f Lnet/minecraft/resources/ResourceLocation; PING_5_SPRITE r field_45522 + f Lnet/minecraft/resources/ResourceLocation; PINGING_1_SPRITE s field_45523 + f Lnet/minecraft/resources/ResourceLocation; PINGING_2_SPRITE u field_45524 + f Lnet/minecraft/resources/ResourceLocation; PINGING_3_SPRITE v field_45525 + f Lnet/minecraft/resources/ResourceLocation; PINGING_4_SPRITE w field_45526 + f Lnet/minecraft/resources/ResourceLocation; PINGING_5_SPRITE x field_45527 + f Lnet/minecraft/resources/ResourceLocation; JOIN_HIGHLIGHTED_SPRITE y field_45528 + f Lnet/minecraft/resources/ResourceLocation; JOIN_SPRITE z field_45529 + m ()V refreshEntries J method_20131 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry;)V setSelected a method_20122 + p 1 entry + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;I)I method_20124 a method_20124 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_22109 a method_22109 + m (Lnet/minecraft/client/multiplayer/ServerList;)V updateOnlineServers a method_20125 + p 1 servers + m (Ljava/util/List;)V updateNetworkServers a method_20126 + p 1 lanServers + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_36888 b method_36888 + m ()V removed c method_52204 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/components/AbstractSelectionList$Entry;)V method_36889 c method_36889 + m (Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/Minecraft;IIII)V + p 1 screen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$1 fqx$1 net/minecraft/class_4267$1 + f [I $SwitchMap$net$minecraft$client$multiplayer$ServerData$State a field_47851 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$Entry fqx$a net/minecraft/class_4267$class_504 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$LANHeader fqx$b net/minecraft/class_4267$class_4268 + f Lnet/minecraft/client/Minecraft; minecraft a field_19112 + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$NetworkServerEntry fqx$c net/minecraft/class_4267$class_4269 + f Lnet/minecraft/client/Minecraft; minecraft a field_19113 + f Lnet/minecraft/client/server/LanServer; serverData b field_19114 + f I ICON_WIDTH c field_32386 + f Lnet/minecraft/network/chat/Component; LAN_SERVER_HEADER d field_26588 + f Lnet/minecraft/network/chat/Component; HIDDEN_ADDRESS_TEXT e field_26589 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen f field_19115 + f J lastClickTime g field_19116 + m ()Lnet/minecraft/client/server/LanServer; getServerData b method_20132 + m ()Lnet/minecraft/network/chat/Component; getServerNarration c method_48273 + m (Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/server/LanServer;)V + p 1 screen + p 2 serverData + m ()V +c net/minecraft/client/gui/screens/multiplayer/ServerSelectionList$OnlineServerEntry fqx$d net/minecraft/class_4267$class_4270 + f Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList; field_19117 a field_19117 + f I ICON_WIDTH b field_32387 + f I ICON_HEIGHT c field_32388 + f I SPACING d field_47852 + f I STATUS_ICON_WIDTH e field_47853 + f I STATUS_ICON_HEIGHT f field_47854 + f Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen; screen g field_19118 + f Lnet/minecraft/client/Minecraft; minecraft h field_19119 + f Lnet/minecraft/client/multiplayer/ServerData; serverData i field_19120 + f Lnet/minecraft/client/gui/screens/FaviconTexture; icon j field_19123 + f [B lastIconBytes k field_42874 + f J lastClickTime l field_19124 + f Ljava/util/List; onlinePlayersTooltip m field_47855 + f Lnet/minecraft/resources/ResourceLocation; statusIcon n field_47856 + f Lnet/minecraft/network/chat/Component; statusIconTooltip o field_47857 + m (II)V swap a method_22110 + p 1 pos1 + p 2 pos2 + m (Lnet/minecraft/client/gui/GuiGraphics;IILnet/minecraft/resources/ResourceLocation;)V drawIcon a method_20134 + p 1 guiGraphics + p 2 x + p 3 y + p 4 icon + m ([B)Z uploadServerIcon a method_49300 + p 1 iconBytes + m ()V updateServerList b method_29978 + m ()Lnet/minecraft/client/multiplayer/ServerData; getServerData c method_20133 + m ()V refreshStatus d method_55815 + m ()Z canJoin e method_20136 + m ()V method_20138 f method_20138 + m ()V method_55816 h method_55816 + m ()V method_29980 i method_29980 + m (Lnet/minecraft/client/gui/screens/multiplayer/ServerSelectionList;Lnet/minecraft/client/gui/screens/multiplayer/JoinMultiplayerScreen;Lnet/minecraft/client/multiplayer/ServerData;)V + p 2 screen + p 3 serverData +c net/minecraft/client/gui/screens/multiplayer/WarningScreen fqy net/minecraft/class_7065 + f Lnet/minecraft/client/gui/components/Checkbox; stopShowing a field_37217 + f I MESSAGE_PADDING b field_49538 + f Lnet/minecraft/network/chat/Component; message c field_37222 + f Lnet/minecraft/network/chat/Component; check r field_37220 + f Lnet/minecraft/network/chat/Component; narration s field_37221 + f Lnet/minecraft/client/gui/components/FocusableTextWidget; messageWidget u field_49539 + f Lnet/minecraft/client/gui/layouts/FrameLayout; layout v field_49540 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_57753 a method_57753 + m (Lnet/minecraft/client/gui/screens/multiplayer/WarningScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57754 a method_57754 + m ()Lnet/minecraft/client/gui/layouts/Layout; addFooterButtons m method_57750 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 content + p 3 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 title + p 2 content + p 3 check + p 4 narration +c net/minecraft/client/gui/screens/multiplayer/package-info fqz net/minecraft/class_6218 +c net/minecraft/client/gui/screens/options/AccessibilityOptionsScreen fra net/minecraft/class_4189 + f Lnet/minecraft/network/chat/Component; TITLE a field_49492 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41839 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_31384 a method_31384 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/ChatOptionsScreen frb net/minecraft/class_404 + f Lnet/minecraft/network/chat/Component; TITLE a field_49493 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_60327 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/FontOptionsScreen frc net/minecraft/class_9246 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_57041 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options +c net/minecraft/client/gui/screens/options/LanguageSelectScreen frd net/minecraft/class_426 + f Lnet/minecraft/network/chat/Component; WARNING_LABEL a field_26543 + f I FOOTER_HEIGHT u field_49497 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList; languageSelectionList v field_2486 + f Lnet/minecraft/client/resources/language/LanguageManager; languageManager w field_2488 + m ()V onDone F method_52184 + m (Lnet/minecraft/client/gui/components/Button;)V method_57729 a method_57729 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;)Lnet/minecraft/client/gui/Font; method_60328 a method_60328 + m (Lnet/minecraft/client/gui/components/Button;)V method_57730 b method_57730 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;)Lnet/minecraft/client/gui/Font; method_61043 b method_61043 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;Lnet/minecraft/client/resources/language/LanguageManager;)V + p 1 lastScreen + p 2 options + p 3 languageManager + m ()V +c net/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList frd$a net/minecraft/class_426$class_4195 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen; field_18744 a field_18744 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList;)I method_20101 a method_20101 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/resources/language/LanguageInfo;)V method_48261 a method_48261 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList$Entry frd$a$a net/minecraft/class_426$class_4195$class_4194 + f Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList; field_19100 a field_19100 + f Ljava/lang/String; code b field_41846 + f Lnet/minecraft/network/chat/Component; language c field_18743 + f J lastClickTime d field_44921 + m ()V select b method_19381 + m (Lnet/minecraft/client/gui/screens/options/LanguageSelectScreen$LanguageSelectionList;Ljava/lang/String;Lnet/minecraft/client/resources/language/LanguageInfo;)V + p 2 code + p 3 languageInfo +c net/minecraft/client/gui/screens/options/MouseSettingsScreen fre net/minecraft/class_4288 + f Lnet/minecraft/network/chat/Component; TITLE a field_49498 + m (I)[Lnet/minecraft/client/OptionInstance; method_60330 a method_60330 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41841 + p 0 options + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OnlineOptionsScreen frf net/minecraft/class_6777 + f Lnet/minecraft/network/chat/Component; TITLE a field_49500 + f Lnet/minecraft/client/OptionInstance; difficultyDisplay u field_41344 + m (Lnet/minecraft/world/Difficulty;Lnet/minecraft/network/chat/Component;Lcom/mojang/datafixers/util/Unit;)Lnet/minecraft/network/chat/Component; method_60331 a method_60331 + m (Lcom/mojang/datafixers/util/Unit;)V method_60332 a method_60332 + m (Lnet/minecraft/client/Options;Lnet/minecraft/client/Minecraft;)[Lnet/minecraft/client/OptionInstance; options a method_60333 + p 1 options + p 2 minecraft + m (Lnet/minecraft/client/multiplayer/ClientLevel;)Lnet/minecraft/client/OptionInstance; method_60334 a method_60334 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OptionsScreen frg net/minecraft/class_429 + f Lnet/minecraft/network/chat/Component; CREDITS_AND_ATTRIBUTION A field_43145 + f I COLUMNS B field_41354 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout C field_49502 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen D field_2501 + f Lnet/minecraft/client/Options; options E field_2502 + f Lnet/minecraft/client/gui/components/CycleButton; difficultyButton F field_2500 + f Lnet/minecraft/client/gui/components/LockIconButton; lockButton G field_2503 + f Lnet/minecraft/network/chat/Component; TITLE a field_49501 + f Lnet/minecraft/network/chat/Component; SKIN_CUSTOMIZATION b field_41345 + f Lnet/minecraft/network/chat/Component; SOUNDS c field_41346 + f Lnet/minecraft/network/chat/Component; VIDEO r field_41347 + f Lnet/minecraft/network/chat/Component; CONTROLS s field_41348 + f Lnet/minecraft/network/chat/Component; LANGUAGE u field_41349 + f Lnet/minecraft/network/chat/Component; CHAT v field_41350 + f Lnet/minecraft/network/chat/Component; RESOURCEPACK w field_41351 + f Lnet/minecraft/network/chat/Component; ACCESSIBILITY x field_41352 + f Lnet/minecraft/network/chat/Component; TELEMETRY y field_41353 + f Lnet/minecraft/client/gui/components/Tooltip; TELEMETRY_DISABLED_TOOLTIP z field_50221 + m ()Lnet/minecraft/client/gui/screens/Screen; method_49740 C method_49740 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47629 D method_47629 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47630 E method_47630 + m ()Lnet/minecraft/client/gui/screens/Screen; method_47631 F method_47631 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19825 G method_19825 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19826 J method_19826 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19827 K method_19827 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19828 L method_19828 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19829 M method_19829 + m ()Lnet/minecraft/client/gui/screens/Screen; method_19830 N method_19830 + m (IILjava/lang/String;Lnet/minecraft/client/Minecraft;)Lnet/minecraft/client/gui/components/CycleButton; createDifficultyButton a method_39486 + p 0 x + p 1 y + p 2 name + p 3 minecraft + m (Lnet/minecraft/server/packs/repository/PackRepository;)V applyPacks a method_49626 + p 1 packRepository + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_39487 a method_39487 + m (Lnet/minecraft/client/gui/components/Button;)V method_47623 a method_47623 + m (Lnet/minecraft/client/gui/screens/options/OptionsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60335 a method_60335 + m (Ljava/util/function/Supplier;Lnet/minecraft/client/gui/components/Button;)V method_47624 a method_47624 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/client/gui/components/Button; openScreenButton a method_47625 + p 1 name + p 2 screenSupplier + m (Lnet/minecraft/client/gui/components/Button;)V method_47626 b method_47626 + m (Lnet/minecraft/client/gui/components/Button;)V method_47627 c method_47627 + m (Z)V lockCallback c method_20374 + p 1 confirmed + m ()Lnet/minecraft/client/gui/layouts/LayoutElement; createOnlineButton m method_47628 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/OptionsSubScreen frh net/minecraft/class_4667 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen b field_21335 + f Lnet/minecraft/client/Options; options c field_21336 + f Lnet/minecraft/client/gui/components/OptionsList; list r field_51824 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout s field_49503 + m ()V addFooter C method_31387 + m ()V addContents D method_60329 + m ()V addTitle E method_57732 + m (Lnet/minecraft/client/gui/components/Button;)V method_57731 a method_57731 + m (Lnet/minecraft/client/gui/screens/options/OptionsSubScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_60336 a method_60336 + m ()V addOptions m method_60325 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;Lnet/minecraft/network/chat/Component;)V + p 1 lastScreen + p 2 options + p 3 title +c net/minecraft/client/gui/screens/options/SkinCustomizationScreen fri net/minecraft/class_440 + f Lnet/minecraft/network/chat/Component; TITLE a field_49512 + m (Lnet/minecraft/world/entity/player/PlayerModelPart;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_60337 a method_60337 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/SoundOptionsScreen frj net/minecraft/class_443 + f Lnet/minecraft/network/chat/Component; TITLE a field_49513 + m ()[Lnet/minecraft/client/OptionInstance; getAllSoundOptionsExceptMaster F method_45631 + m (I)[Lnet/minecraft/client/OptionInstance; method_45627 a method_45627 + m (Lnet/minecraft/sounds/SoundSource;)Lnet/minecraft/client/OptionInstance; method_45628 a method_45628 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; buttonOptions a method_45629 + p 0 options + m (Lnet/minecraft/sounds/SoundSource;)Z method_45630 b method_45630 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/UnsupportedGraphicsWarningScreen frk net/minecraft/class_5405 + f I BUTTON_PADDING a field_32260 + f I BUTTON_MARGIN b field_32261 + f I BUTTON_HEIGHT c field_32262 + f Lnet/minecraft/network/chat/Component; narrationMessage r field_33811 + f Ljava/util/List; message s field_25675 + f Lcom/google/common/collect/ImmutableList; buttonOptions u field_25676 + f Lnet/minecraft/client/gui/components/MultiLineLabel; messageLines v field_25677 + f I contentTop w field_25678 + f I buttonWidth x field_25679 + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Lcom/google/common/collect/ImmutableList;)V + p 1 title + p 2 message + p 3 buttonOptions +c net/minecraft/client/gui/screens/options/UnsupportedGraphicsWarningScreen$ButtonOption frk$a net/minecraft/class_5405$class_5406 + f Lnet/minecraft/network/chat/Component; message a field_25680 + f Lnet/minecraft/client/gui/components/Button$OnPress; onPress b field_25681 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/Button$OnPress;)V + p 1 message + p 2 onPress +c net/minecraft/client/gui/screens/options/VideoSettingsScreen frl net/minecraft/class_446 + f I oldMipmaps A field_19186 + f Lnet/minecraft/network/chat/Component; TITLE a field_49515 + f Lnet/minecraft/network/chat/Component; FABULOUS u field_25682 + f Lnet/minecraft/network/chat/Component; WARNING_MESSAGE v field_25683 + f Lnet/minecraft/network/chat/Component; WARNING_TITLE w field_25684 + f Lnet/minecraft/network/chat/Component; BUTTON_ACCEPT x field_25685 + f Lnet/minecraft/network/chat/Component; BUTTON_CANCEL y field_25686 + f Lnet/minecraft/client/renderer/GpuWarnlistManager; gpuWarnlistManager z field_25688 + m (Lcom/mojang/blaze3d/platform/Monitor;Lcom/mojang/blaze3d/platform/Window;Ljava/lang/Integer;)V method_60338 a method_60338 + m (Lcom/mojang/blaze3d/platform/Monitor;Lnet/minecraft/network/chat/Component;Ljava/lang/Integer;)Lnet/minecraft/network/chat/Component; method_60339 a method_60339 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_41846 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_30052 a method_30052 + m (Lnet/minecraft/client/gui/components/Button;)V method_30053 b method_30053 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 minecraft + p 3 options + m ()V +c net/minecraft/client/gui/screens/options/controls/ControlsScreen frm net/minecraft/class_458 + f Lnet/minecraft/network/chat/Component; TITLE a field_49532 + m (Lnet/minecraft/client/Options;)[Lnet/minecraft/client/OptionInstance; options a method_58232 + p 0 options + m (Lnet/minecraft/client/gui/components/Button;)V method_60340 a method_60340 + m (Lnet/minecraft/client/gui/components/Button;)V method_60341 b method_60341 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList frn net/minecraft/class_459 + f I ITEM_HEIGHT a field_49533 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsScreen; keyBindsScreen m field_2735 + f I maxNameWidth n field_2733 + m ()V refreshEntries J method_49007 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_36885 a method_36885 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20110 b method_20110 + m ()V resetMappingAndUpdateButtons c method_49006 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)I method_57745 c method_57745 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20112 d method_20112 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)I method_57746 e method_57746 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20115 f method_20115 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20116 g method_20116 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_20114 h method_20114 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;)Lnet/minecraft/client/Minecraft; method_57747 i method_57747 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsScreen;Lnet/minecraft/client/Minecraft;)V + p 1 keyBindsScreen + p 2 minecraft +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry frn$a net/minecraft/class_459$class_460 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; field_2738 a field_2738 + f Lnet/minecraft/network/chat/Component; name b field_2736 + f I width c field_2737 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;Lnet/minecraft/network/chat/Component;)V + p 2 name +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry$1 frn$a$1 net/minecraft/class_459$class_460$1 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry; field_33831 a field_33831 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList$CategoryEntry;)V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$Entry frn$b net/minecraft/class_459$class_461 + m ()V refreshEntry c method_48269 + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsList$KeyEntry frn$c net/minecraft/class_459$class_462 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; field_2742 a field_2742 + f Lnet/minecraft/network/chat/Component; RESET_BUTTON_TITLE b field_49534 + f I PADDING c field_49535 + f Lnet/minecraft/client/KeyMapping; key d field_2740 + f Lnet/minecraft/network/chat/Component; name e field_2741 + f Lnet/minecraft/client/gui/components/Button; changeButton f field_2739 + f Lnet/minecraft/client/gui/components/Button; resetButton g field_2743 + f Z hasCollision h field_42497 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/client/gui/components/Button;)V method_19870 a method_19870 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46514 a method_46514 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/Supplier;)Lnet/minecraft/network/chat/MutableComponent; method_46515 a method_46515 + m (Lnet/minecraft/client/KeyMapping;Lnet/minecraft/client/gui/components/Button;)V method_19871 b method_19871 + m (Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList;Lnet/minecraft/client/KeyMapping;Lnet/minecraft/network/chat/Component;)V + p 2 key + p 3 name + m ()V +c net/minecraft/client/gui/screens/options/controls/KeyBindsScreen fro net/minecraft/class_6599 + f Lnet/minecraft/client/KeyMapping; selectedKey a field_34799 + f J lastKeySelection u field_34800 + f Lnet/minecraft/network/chat/Component; TITLE v field_49536 + f Lnet/minecraft/client/gui/screens/options/controls/KeyBindsList; keyBindsList w field_34801 + f Lnet/minecraft/client/gui/components/Button; resetButton x field_34802 + m (Lnet/minecraft/client/gui/components/Button;)V method_57748 a method_57748 + m (Lnet/minecraft/client/gui/components/Button;)V method_60342 b method_60342 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/options/controls/package-info frp net/minecraft/class_9755 +c net/minecraft/client/gui/screens/options/package-info frq net/minecraft/class_9756 +c net/minecraft/client/gui/screens/package-info frr net/minecraft/class_6219 +c net/minecraft/client/gui/screens/packs/PackSelectionModel frs net/minecraft/class_5369 + f Lnet/minecraft/server/packs/repository/PackRepository; repository a field_25626 + f Ljava/util/List; selected b field_25455 + f Ljava/util/List; unselected c field_25456 + f Ljava/util/function/Function; iconGetter d field_25785 + f Ljava/lang/Runnable; onListChanged e field_25458 + f Ljava/util/function/Consumer; output f field_25459 + m ()Ljava/util/stream/Stream; getUnselected a method_29639 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; method_29640 a method_29640 + m ()Ljava/util/stream/Stream; getSelected b method_29643 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; method_29644 b method_29644 + m ()V commit c method_29642 + m ()V findNewPacks d method_29981 + m ()V updateRepoSelectedList e method_49627 + m (Ljava/lang/Runnable;Ljava/util/function/Function;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;)V + p 1 onListChanged + p 2 iconGetter + p 3 repository + p 4 output +c net/minecraft/client/gui/screens/packs/PackSelectionModel$Entry frs$a net/minecraft/class_5369$class_5371 + m ()Lnet/minecraft/resources/ResourceLocation; getIconTexture a method_30286 + m ()Lnet/minecraft/server/packs/repository/PackCompatibility; getCompatibility b method_29648 + m ()Ljava/lang/String; getId c method_48276 + m ()Lnet/minecraft/network/chat/Component; getTitle d method_29650 + m ()Lnet/minecraft/network/chat/Component; getDescription e method_29651 + m ()Lnet/minecraft/server/packs/repository/PackSource; getPackSource f method_29652 + m ()Lnet/minecraft/network/chat/Component; getExtendedDescription g method_29653 + m ()Z isFixedPosition h method_29654 + m ()Z isRequired i method_29655 + m ()V select j method_29656 + m ()V unselect k method_29657 + m ()V moveUp l method_29658 + m ()V moveDown m method_29659 + m ()Z isSelected n method_29660 + m ()Z canSelect o method_29661 + m ()Z canUnselect p method_29662 + m ()Z canMoveUp q method_29663 + m ()Z canMoveDown r method_29664 +c net/minecraft/client/gui/screens/packs/PackSelectionModel$EntryBase frs$b net/minecraft/class_5369$class_5372 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25460 a field_25460 + f Lnet/minecraft/server/packs/repository/Pack; pack b field_25461 + m (I)V move a method_29665 + p 1 offset + m ()Ljava/util/List; getSelfList s method_29666 + m ()Ljava/util/List; getOtherList t method_29667 + m ()V toggleSelection u method_29668 + m ()V updateHighContrastOptionInstance v method_49628 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V + p 2 pack +c net/minecraft/client/gui/screens/packs/PackSelectionModel$SelectedPackEntry frs$c net/minecraft/class_5369$class_5373 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25462 b field_25462 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V +c net/minecraft/client/gui/screens/packs/PackSelectionModel$UnselectedPackEntry frs$d net/minecraft/class_5369$class_5374 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; field_25463 b field_25463 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionModel;Lnet/minecraft/server/packs/repository/Pack;)V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen frt net/minecraft/class_5375 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher; watcher A field_25787 + f J ticksToReload B field_25788 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; availablePackList C field_25472 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; selectedPackList D field_25473 + f Ljava/nio/file/Path; packDir E field_25474 + f Lnet/minecraft/client/gui/components/Button; doneButton F field_25475 + f Ljava/util/Map; packIcons G field_25789 + f Lorg/slf4j/Logger; LOGGER a field_25464 + f Lnet/minecraft/network/chat/Component; AVAILABLE_TITLE b field_49541 + f Lnet/minecraft/network/chat/Component; SELECTED_TITLE c field_49542 + f Lnet/minecraft/network/chat/Component; OPEN_PACK_FOLDER_TITLE r field_49543 + f I LIST_WIDTH s field_32395 + f Lnet/minecraft/network/chat/Component; DRAG_AND_DROP u field_25465 + f Lnet/minecraft/network/chat/Component; DIRECTORY_BUTTON_TOOLTIP v field_25466 + f I RELOAD_COOLDOWN w field_32396 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_ICON x field_25786 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout y field_49544 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel; model z field_25468 + m ()V closeWatcher C method_30291 + m ()V populateLists D method_29678 + m ()V reload E method_29680 + m ()V method_54593 F method_54593 + m ()V method_54594 G method_54594 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/resources/ResourceLocation; getPackIcon a method_30287 + p 1 pack + m (Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; method_30288 a method_30288 + m (Lnet/minecraft/client/Minecraft;Ljava/util/List;Ljava/nio/file/Path;)V copyPacks a method_29669 + p 0 minecraft + p 1 packs + p 2 outDir + m (Lnet/minecraft/client/gui/components/Button;)V method_29982 a method_29982 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57755 a method_57755 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;)V updateFocus a method_48277 + p 1 selection + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Ljava/lang/String;Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry;)V method_29672 a method_29672 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Ljava/util/stream/Stream;)V updateList a method_29673 + p 1 selection + p 2 models + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/resources/ResourceLocation; loadPackIcon a method_30289 + p 1 textureManager + p 2 pack + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29674 a method_29674 + m (Ljava/nio/file/Path;Lorg/apache/commons/lang3/mutable/MutableBoolean;Ljava/nio/file/Path;)V method_29675 a method_29675 + m (Ljava/util/Collection;)Ljava/util/stream/Stream; extractPackNames a method_52760 + p 0 paths + m (Ljava/util/List;Z)V method_29676 a method_29676 + m (Lnet/minecraft/client/gui/components/Button;)V method_29670 b method_29670 + m ()V clearSelected m method_48278 + m (Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;Ljava/nio/file/Path;Lnet/minecraft/network/chat/Component;)V + p 1 repository + p 2 output + p 3 packDir + p 4 title + m ()V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen$1 frt$1 net/minecraft/class_5375$1 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; createZipPack a method_52761 + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; createDirectoryPack b method_52762 + m (Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;Lnet/minecraft/world/level/validation/DirectoryValidator;)V +c net/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher frt$a net/minecraft/class_5375$class_5426 + f Ljava/nio/file/WatchService; watcher a field_25790 + f Ljava/nio/file/Path; packPath b field_25791 + m ()Z pollForChanges a method_30292 + m (Ljava/nio/file/Path;)Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen$Watcher; create a method_30293 + p 0 packPath + m (Ljava/nio/file/Path;)V watchDir b method_30294 + p 1 path + m (Ljava/nio/file/Path;)V + p 1 packPath +c net/minecraft/client/gui/screens/packs/TransferableSelectionList fru net/minecraft/class_521 + f Lnet/minecraft/resources/ResourceLocation; SELECT_HIGHLIGHTED_SPRITE a field_45532 + f Lnet/minecraft/resources/ResourceLocation; SELECT_SPRITE m field_45533 + f Lnet/minecraft/resources/ResourceLocation; UNSELECT_HIGHLIGHTED_SPRITE n field_45534 + f Lnet/minecraft/resources/ResourceLocation; UNSELECT_SPRITE o field_45535 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_HIGHLIGHTED_SPRITE p field_45536 + f Lnet/minecraft/resources/ResourceLocation; MOVE_UP_SPRITE q field_45537 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_HIGHLIGHTED_SPRITE r field_45538 + f Lnet/minecraft/resources/ResourceLocation; MOVE_DOWN_SPRITE s field_45539 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_TITLE u field_19126 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_CONFIRM_TITLE v field_19127 + f Lnet/minecraft/network/chat/Component; title w field_18978 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen; screen x field_41715 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;)Z method_58491 a method_58491 + m (Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;I)I method_20140 a method_20140 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/packs/PackSelectionScreen;IILnet/minecraft/network/chat/Component;)V + p 1 minecraft + p 2 screen + p 3 width + p 4 height + p 5 title + m ()V +c net/minecraft/client/gui/screens/packs/TransferableSelectionList$PackEntry fru$a net/minecraft/class_521$class_4271 + f Lnet/minecraft/client/Minecraft; minecraft a field_19128 + f I MAX_DESCRIPTION_WIDTH_PIXELS b field_32403 + f I MAX_NAME_WIDTH_PIXELS c field_32404 + f Ljava/lang/String; TOO_LONG_NAME_SUFFIX d field_32405 + f Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList; parent e field_19130 + f Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry; pack f field_19129 + f Lnet/minecraft/util/FormattedCharSequence; nameDisplayCache g field_26590 + f Lnet/minecraft/client/gui/components/MultiLineLabel; descriptionDisplayCache h field_26591 + f Lnet/minecraft/util/FormattedCharSequence; incompatibleNameDisplayCache i field_26784 + f Lnet/minecraft/client/gui/components/MultiLineLabel; incompatibleDescriptionDisplayCache j field_26785 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/util/FormattedCharSequence; cacheName a method_31229 + p 0 minecraft + p 1 name + m ()Ljava/lang/String; getPackId b method_48279 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/components/MultiLineLabel; cacheDescription b method_31230 + p 0 minecraft + p 1 text + m (Z)V method_48477 b method_48477 + m ()V keyboardSelection c method_48280 + m ()Z showHoverOverlay d method_20152 + m ()V keyboardMoveUp e method_48281 + m ()V keyboardMoveDown f method_48282 + m ()Z handlePackSelection h method_48478 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/packs/TransferableSelectionList;Lnet/minecraft/client/gui/screens/packs/PackSelectionModel$Entry;)V + p 1 minecraft + p 2 parent + p 3 pack +c net/minecraft/client/gui/screens/packs/package-info frv net/minecraft/class_6220 +c net/minecraft/client/gui/screens/recipebook/AbstractFurnaceRecipeBookComponent frw net/minecraft/class_517 + f Lnet/minecraft/client/gui/components/WidgetSprites; FILTER_SPRITES i field_45540 + f Lnet/minecraft/world/item/crafting/Ingredient; fuels j field_3149 + m (Lnet/minecraft/world/item/Item;)Z method_49301 a method_49301 + m ()Ljava/util/Set; getFuelItems b method_17065 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/BlastingRecipeBookComponent frx net/minecraft/class_3875 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26592 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/GhostRecipe fry net/minecraft/class_505 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipe a field_3079 + f Ljava/util/List; ingredients b field_3081 + f F time c field_3080 + m ()V clear a method_2571 + m (I)Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe$GhostIngredient; get a method_2570 + p 1 index + m (Lnet/minecraft/world/item/crafting/Ingredient;II)V addIngredient a method_2569 + p 1 ingredient + p 2 x + p 3 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V setRecipe a method_2565 + p 1 recipe + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/Minecraft;IIZF)V render a method_2567 + p 1 guiGraphics + p 2 minecraft + p 3 leftPos + p 4 topPos + p 5 offset + p 6 partialTick + m ()I size b method_2572 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe c method_2566 + m ()V +c net/minecraft/client/gui/screens/recipebook/GhostRecipe$GhostIngredient fry$a net/minecraft/class_505$class_506 + f Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe; field_3085 a field_3085 + f Lnet/minecraft/world/item/crafting/Ingredient; ingredient b field_3082 + f I x c field_3084 + f I y d field_3083 + m ()I getX a method_2574 + m ()I getY b method_2575 + m ()Lnet/minecraft/world/item/ItemStack; getItem c method_2573 + m (Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe;Lnet/minecraft/world/item/crafting/Ingredient;II)V + p 2 ingredient + p 3 x + p 4 y +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent frz net/minecraft/class_508 + f I BUTTON_SIZE a field_42162 + f Lnet/minecraft/resources/ResourceLocation; OVERLAY_RECIPE_SPRITE b field_45541 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_HIGHLIGHTED_SPRITE c field_45542 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_SPRITE d field_45543 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_HIGHLIGHTED_SPRITE e field_45544 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_SPRITE f field_45545 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_DISABLED_HIGHLIGHTED_SPRITE g field_45546 + f Lnet/minecraft/resources/ResourceLocation; FURNACE_OVERLAY_DISABLED_SPRITE h field_45547 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_DISABLED_HIGHLIGHTED_SPRITE i field_45548 + f Lnet/minecraft/resources/ResourceLocation; CRAFTING_OVERLAY_DISABLED_SPRITE j field_45549 + f I MAX_ROW k field_32406 + f I MAX_ROW_LARGE l field_32407 + f F ITEM_RENDER_SCALE m field_33739 + f Ljava/util/List; recipeButtons n field_3106 + f Z isVisible o field_3107 + f I x p field_3105 + f I y q field_3103 + f Lnet/minecraft/client/Minecraft; minecraft r field_3108 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; collection s field_3111 + f Lnet/minecraft/world/item/crafting/RecipeHolder; lastRecipeClicked u field_3104 + f F time v field_3110 + f Z isFurnaceMenu w field_3112 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getRecipeCollection a method_2614 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;IIIIF)V init a method_2617 + p 1 minecraft + p 2 collection + p 3 x + p 4 y + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getLastRecipeClicked b method_2615 + m (Z)V setVisible b method_2613 + p 1 isVisible + m ()Z isVisible c method_2616 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton frz$a net/minecraft/class_508$class_509 + f Ljava/util/List; ingredientPos a field_3116 + f Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent; field_3113 b field_3113 + f Lnet/minecraft/world/item/crafting/RecipeHolder; recipe c field_3114 + f Z isCraftable d field_3115 + m (Lnet/minecraft/world/item/crafting/Ingredient;IIII)V addItemToSlot a method_60343 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V calculateIngredientsPositions a method_2619 + p 1 recipe + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent;IILnet/minecraft/world/item/crafting/RecipeHolder;Z)V + p 2 x + p 3 y + p 4 recipe + p 5 isCraftable +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton$Pos frz$a$a net/minecraft/class_508$class_509$class_510 + f [Lnet/minecraft/world/item/ItemStack; ingredients a field_3120 + f I x b field_3119 + f I y c field_3118 + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlayRecipeButton;II[Lnet/minecraft/world/item/ItemStack;)V + p 2 x + p 3 y + p 4 ingredients +c net/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent$OverlaySmeltingRecipeButton frz$b net/minecraft/class_508$class_511 + m (Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent;IILnet/minecraft/world/item/crafting/RecipeHolder;Z)V +c net/minecraft/client/gui/screens/recipebook/RecipeBookComponent fsa net/minecraft/class_507 + f Z visible A field_33679 + f Z widthTooNarrow B field_34001 + f Lnet/minecraft/client/gui/components/WidgetSprites; RECIPE_BUTTON_SPRITES a field_45550 + f Lnet/minecraft/resources/ResourceLocation; RECIPE_BOOK_LOCATION b field_3097 + f I IMAGE_WIDTH c field_32408 + f I IMAGE_HEIGHT d field_32409 + f Lnet/minecraft/client/gui/screens/recipebook/GhostRecipe; ghostRecipe e field_3092 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; filterButton f field_3088 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu g field_3095 + f Lnet/minecraft/client/Minecraft; minecraft h field_3091 + f Lnet/minecraft/client/gui/components/WidgetSprites; FILTER_BUTTON_SPRITES i field_45551 + f Lnet/minecraft/network/chat/Component; SEARCH_HINT j field_25711 + f I OFFSET_X_POSITION k field_32410 + f Lnet/minecraft/network/chat/Component; ONLY_CRAFTABLES_TOOLTIP l field_26593 + f Lnet/minecraft/network/chat/Component; ALL_RECIPES_TOOLTIP m field_26594 + f I xOffset n field_3102 + f I width o field_3101 + f I height p field_3100 + f Ljava/util/List; tabButtons q field_3094 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookTabButton; selectedTab r field_3098 + f Lnet/minecraft/client/gui/components/EditBox; searchBox s field_3089 + f Ljava/lang/String; lastSearch u field_3099 + f Lnet/minecraft/client/ClientRecipeBook; book v field_3096 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeBookPage; recipeBookPage w field_3086 + f Lnet/minecraft/world/entity/player/StackedContents; stackedContents x field_3090 + f I timesInventoryChanged y field_3093 + f Z ignoreTextInput z field_3087 + m ()V initFilterButtonTextures a method_2585 + m (DDIIIII)Z hasClickedOutside a method_2598 + p 1 mouseX + p 3 mouseY + p 5 x + p 6 y + p 7 width + p 8 height + m (II)I updateScreenPosition a method_2595 + p 1 width + p 2 imageWidth + m (IILnet/minecraft/client/Minecraft;ZLnet/minecraft/world/inventory/RecipeBookMenu;)V init a method_2597 + p 1 width + p 2 height + p 3 minecraft + p 4 widthTooNarrow + p 5 menu + m (Lnet/minecraft/world/inventory/Slot;)V slotClicked a method_2600 + p 1 slot + m (Lnet/minecraft/world/item/crafting/Ingredient;IIII)V addItemToSlot a method_60344 + p 1 item + p 2 slot + p 3 maxAmount + p 4 x + p 5 y + m (Lnet/minecraft/world/item/crafting/RecipeHolder;Ljava/util/List;)V setupGhostRecipe a method_2596 + p 1 recipe + p 2 slots + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderTooltip a method_2601 + p 1 guiGraphics + p 2 renderX + p 3 renderY + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/GuiGraphics;IIZF)V renderGhostRecipe a method_2581 + p 1 guiGraphics + p 2 leftPos + p 3 topPos + p 5 partialTick + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeBookTabButton;)Z method_2582 a method_2582 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2584 a method_2584 + m (Lit/unimi/dsi/fastutil/objects/ObjectSet;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_53871 a method_53871 + m (Ljava/lang/String;)V pirateSpeechForThePeople a method_2576 + c Check if we should activate the pirate speak easter egg. + p 1 text + m (Ljava/util/List;Lnet/minecraft/client/gui/components/AbstractWidget;)V method_37308 a method_37308 + m ()V updateFilterButtonTooltip b method_47429 + m (Lnet/minecraft/client/gui/GuiGraphics;IIII)V renderGhostRecipeTooltip b method_2602 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2583 b method_2583 + m (Z)V setVisible b method_2593 + p 1 visible + m ()Lnet/minecraft/network/chat/Component; getRecipeFilterName c method_17064 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Z method_2580 c method_2580 + m (Z)V updateCollections c method_2603 + p 1 resetPageNumber + m ()V initVisuals d method_2579 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)V method_2577 d method_2577 + m ()V toggleVisibility e method_2591 + m ()Z isVisible f method_2605 + m ()V tick h method_2590 + m ()V recipesUpdated i method_2592 + m ()V sendUpdateSettings j method_2588 + m ()Z isVisibleAccordingToBookData k method_36485 + m ()V updateTabs l method_2606 + m ()V updateStackedContents m method_2587 + m ()Z toggleFiltering n method_2589 + m ()V checkSearchStringUpdate o method_2586 + m ()Z isOffsetNextToMainGUI p method_2604 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeBookPage fsb net/minecraft/class_513 + f I ITEMS_PER_PAGE a field_32411 + f Lnet/minecraft/client/gui/components/WidgetSprites; PAGE_FORWARD_SPRITES b field_45552 + f Lnet/minecraft/client/gui/components/WidgetSprites; PAGE_BACKWARD_SPRITES c field_45553 + f Ljava/util/List; buttons d field_3131 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeButton; hoveredButton e field_3129 + f Lnet/minecraft/client/gui/screens/recipebook/OverlayRecipeComponent; overlay f field_3132 + f Lnet/minecraft/client/Minecraft; minecraft g field_3126 + f Ljava/util/List; showListeners h field_3134 + f Ljava/util/List; recipeCollections i field_3127 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; forwardButton j field_3128 + f Lnet/minecraft/client/gui/components/StateSwitchingButton; backButton k field_3130 + f I totalPages l field_3124 + f I currentPage m field_3135 + f Lnet/minecraft/stats/RecipeBook; recipeBook n field_3136 + f Lnet/minecraft/world/item/crafting/RecipeHolder; lastClickedRecipe o field_3125 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; lastClickedRecipeCollection p field_3133 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getLastClickedRecipe a method_2631 + m (DDIIIII)Z mouseClicked a method_2632 + p 1 mouseX + p 3 mouseY + p 5 button + m (Lnet/minecraft/client/Minecraft;II)V init a method_2636 + p 1 minecraft + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderTooltip a method_2628 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/GuiGraphics;IIIIF)V render a method_2634 + p 1 guiGraphics + p 2 x + p 3 y + p 4 mouseX + p 5 mouseY + p 6 partialTick + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent;)V addListener a method_2630 + p 1 listener + m (Ljava/util/List;)V recipesShown a method_2629 + p 1 recipes + m (Ljava/util/List;Z)V updateCollections a method_2627 + p 1 recipeCollections + p 2 resetPageNumber + m (Ljava/util/function/Consumer;)V listButtons a method_37083 + p 1 consumer + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getLastClickedRecipeCollection b method_2635 + m ()V setInvisible c method_2638 + m ()Lnet/minecraft/client/Minecraft; getMinecraft d method_2637 + m ()Lnet/minecraft/stats/RecipeBook; getRecipeBook e method_2633 + m ()V updateButtonsForPage f method_2625 + m ()V updateArrowButtons g method_2626 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeBookTabButton fsc net/minecraft/class_512 + f Lnet/minecraft/client/gui/components/WidgetSprites; SPRITES c field_45554 + f Lnet/minecraft/client/RecipeBookCategories; category d field_3123 + f F ANIMATION_TIME e field_32412 + f F animationTime f field_3122 + m (Lnet/minecraft/client/ClientRecipeBook;)Z updateVisibility a method_2624 + p 1 recipeBook + m (Lnet/minecraft/client/Minecraft;)V startAnimation a method_2622 + p 1 minecraft + m (Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V renderIcon a method_2621 + p 1 guiGraphics + p 2 itemRenderer + m ()Lnet/minecraft/client/RecipeBookCategories; getCategory b method_2623 + m (Lnet/minecraft/client/RecipeBookCategories;)V + p 1 category + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeButton fsd net/minecraft/class_514 + f I TICKS_TO_SWAP a field_32413 + f Lnet/minecraft/resources/ResourceLocation; SLOT_MANY_CRAFTABLE_SPRITE b field_45555 + f Lnet/minecraft/resources/ResourceLocation; SLOT_CRAFTABLE_SPRITE c field_45556 + f Lnet/minecraft/resources/ResourceLocation; SLOT_MANY_UNCRAFTABLE_SPRITE d field_45557 + f Lnet/minecraft/resources/ResourceLocation; SLOT_UNCRAFTABLE_SPRITE e field_45558 + f F ANIMATION_TIME f field_32414 + f I BACKGROUND_SIZE m field_32415 + f Lnet/minecraft/network/chat/Component; MORE_RECIPES_TOOLTIP n field_26595 + f Lnet/minecraft/world/inventory/RecipeBookMenu; menu o field_3137 + f Lnet/minecraft/stats/RecipeBook; book p field_3138 + f Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; collection q field_3142 + f F time r field_3140 + f F animationTime s field_3139 + f I currentIndex u field_3141 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection; getCollection a method_2645 + m (Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;Lnet/minecraft/client/gui/screens/recipebook/RecipeBookPage;)V init a method_2640 + p 1 collection + p 2 recipeBookPage + m ()Z isOnlyOption b method_2642 + m ()Lnet/minecraft/world/item/crafting/RecipeHolder; getRecipe c method_2643 + m ()Ljava/util/List; getTooltipText e method_2644 + m ()Ljava/util/List; getOrderedRecipes f method_2639 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/RecipeCollection fse net/minecraft/class_516 + f Lnet/minecraft/core/RegistryAccess; registryAccess a field_42069 + f Ljava/util/List; recipes b field_3144 + f Z singleResultItem c field_3148 + f Ljava/util/Set; craftable d field_3146 + f Ljava/util/Set; fitsDimensions e field_3145 + f Ljava/util/Set; known f field_3147 + m ()Lnet/minecraft/core/RegistryAccess; registryAccess a method_48479 + m (Lnet/minecraft/stats/RecipeBook;)V updateKnownRecipes a method_2647 + p 1 book + m (Lnet/minecraft/world/entity/player/StackedContents;IILnet/minecraft/stats/RecipeBook;)V canCraft a method_2649 + p 1 handler + p 2 width + p 3 height + p 4 book + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)Z isCraftable a method_2653 + p 1 recipe + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)Z allRecipesHaveSameResult a method_30295 + p 0 registryAccess + p 1 recipes + m (Z)Ljava/util/List; getRecipes a method_2651 + p 1 onlyCraftable + m ()Z hasKnownRecipes b method_2652 + c Checks if recipebook is not empty + m (Z)Ljava/util/List; getDisplayRecipes b method_2648 + p 1 craftable + c If true, this method will only return craftable recipes. If false, this method will only return uncraftable recipes. + m ()Z hasCraftable c method_2655 + m ()Z hasFitting d method_2657 + m ()Ljava/util/List; getRecipes e method_2650 + m ()Z hasSingleResultItem f method_2656 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/List;)V + p 1 registryAccess + p 2 recipes +c net/minecraft/client/gui/screens/recipebook/RecipeShownListener fsf net/minecraft/class_515 + m (Ljava/util/List;)V recipesShown a method_2646 + p 1 recipes +c net/minecraft/client/gui/screens/recipebook/RecipeUpdateListener fsg net/minecraft/class_518 + m ()V recipesUpdated E method_16891 + m ()Lnet/minecraft/client/gui/screens/recipebook/RecipeBookComponent; getRecipeBookComponent F method_2659 +c net/minecraft/client/gui/screens/recipebook/SmeltingRecipeBookComponent fsh net/minecraft/class_3876 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26596 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/SmokingRecipeBookComponent fsi net/minecraft/class_3877 + f Lnet/minecraft/network/chat/Component; FILTER_NAME i field_26597 + m ()V + m ()V +c net/minecraft/client/gui/screens/recipebook/package-info fsj net/minecraft/class_6221 +c net/minecraft/client/gui/screens/reporting/AbstractReportScreen fsk net/minecraft/class_8768 + f Lnet/minecraft/client/multiplayer/chat/report/Report$Builder; reportBuilder A field_46021 + f Lnet/minecraft/client/gui/components/Button; sendButton B field_52300 + f Lnet/minecraft/network/chat/Component; REPORT_SENT_MESSAGE C field_46022 + f Lnet/minecraft/network/chat/Component; REPORT_SENDING_TITLE D field_46023 + f Lnet/minecraft/network/chat/Component; REPORT_SENT_TITLE E field_46024 + f Lnet/minecraft/network/chat/Component; REPORT_ERROR_TITLE F field_46025 + f Lnet/minecraft/network/chat/Component; REPORT_SEND_GENERIC_ERROR G field_46026 + f Lnet/minecraft/network/chat/Component; DESCRIBE_PLACEHOLDER H field_46027 + f Lnet/minecraft/network/chat/Component; MORE_COMMENTS_NARRATION I field_46028 + f Lnet/minecraft/network/chat/Component; ATTESTATION_CHECKBOX J field_52301 + f Lorg/slf4j/Logger; LOGGER K field_46029 + f Lnet/minecraft/client/gui/components/Checkbox; attestation L field_52302 + f Lnet/minecraft/network/chat/Component; SEND_REPORT a field_46012 + f Lnet/minecraft/network/chat/Component; OBSERVED_WHAT_LABEL b field_46013 + f Lnet/minecraft/network/chat/Component; SELECT_REASON c field_46014 + f Lnet/minecraft/network/chat/Component; MORE_COMMENTS_LABEL r field_46015 + f I BUTTON_WIDTH s field_52303 + f I MARGIN u field_46016 + f I SCREEN_WIDTH v field_46017 + f I SPACING w field_46018 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen x field_46019 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext y field_46020 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout z field_52304 + m ()V addContent C method_61135 + m ()V createFooter D method_61136 + m ()V onReportChanged E method_53586 + m ()V sendReport F method_53571 + m ()V onReportSendSuccess G method_53559 + m ()V saveDraft J method_53560 + m ()V clearDraft K method_53561 + m ()V method_53562 L method_53562 + m ()V method_53563 M method_53563 + m (IILjava/util/function/Consumer;)Lnet/minecraft/client/gui/components/MultiLineEditBox; createCommentBox a method_53564 + p 1 width + p 2 height + p 3 valueListener + m (Lnet/minecraft/client/gui/components/Button;)V method_61137 a method_61137 + m (Lnet/minecraft/client/gui/components/Checkbox;Z)V method_61138 a method_61138 + m (Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_61139 a method_61139 + m (Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason;)V method_53565 a method_53565 + m (Lnet/minecraft/client/multiplayer/chat/report/Report$Result;)V method_53566 a method_53566 + m (Ljava/lang/Object;Ljava/lang/Throwable;)Ljava/lang/Object; method_53567 a method_53567 + m (Ljava/lang/Throwable;)V onReportSendError a method_53568 + p 1 throwable + m (Ljava/util/concurrent/CompletableFuture;)V method_53569 a method_53569 + m (Lnet/minecraft/network/chat/Component;)V displayReportSendError a method_53570 + p 1 error + m (Lnet/minecraft/client/gui/components/Button;)V method_61140 b method_61140 + m ()V createHeader m method_61141 + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/Report$Builder;)V + p 1 title + p 2 lastScreen + p 3 reportingContext + p 4 reportBuilder + m ()V +c net/minecraft/client/gui/screens/reporting/AbstractReportScreen$DiscardReportWarningScreen fsk$a net/minecraft/class_8768$class_7539 + f Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen; field_39578 b field_39578 + f Lnet/minecraft/network/chat/Component; TITLE c field_39723 + f Lnet/minecraft/network/chat/Component; MESSAGE r field_39724 + f Lnet/minecraft/network/chat/Component; RETURN s field_39725 + f Lnet/minecraft/network/chat/Component; DRAFT u field_40794 + f Lnet/minecraft/network/chat/Component; DISCARD v field_39726 + m (Lnet/minecraft/client/gui/components/Button;)V method_57756 a method_57756 + m (Lnet/minecraft/client/gui/components/Button;)V method_57757 b method_57757 + m (Lnet/minecraft/client/gui/components/Button;)V method_57758 c method_57758 + m (Lnet/minecraft/client/gui/screens/reporting/AbstractReportScreen;)V + m ()V +c net/minecraft/client/gui/screens/reporting/ChatReportScreen fsl net/minecraft/class_7538 + f Lnet/minecraft/network/chat/Component; TITLE C field_46031 + f Lnet/minecraft/network/chat/Component; SELECT_CHAT_MESSAGE D field_39574 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox E field_46033 + f Lnet/minecraft/client/gui/components/Button; selectMessagesButton F field_46034 + f Lnet/minecraft/client/gui/components/Button; selectReasonButton G field_46035 + m (Lnet/minecraft/client/gui/components/Button;)V method_61142 a method_61142 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61143 a method_61143 + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;)V method_61144 a method_61144 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V method_61145 a method_61145 + m (Ljava/lang/String;)V method_61146 a method_61146 + m (Lnet/minecraft/client/gui/components/Button;)V method_61147 b method_61147 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportId + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport;)V + p 1 lastScreen + p 2 reportContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller fsm net/minecraft/class_7541 + f Lnet/minecraft/client/multiplayer/chat/ChatLog; log a field_39581 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder; contextBuilder b field_40439 + f Ljava/util/function/Predicate; canReport c field_39582 + f Lnet/minecraft/network/chat/SignedMessageLink; previousLink d field_40795 + f I eventId e field_40440 + f I missedCount f field_40441 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastMessage g field_40442 + m (ILnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output;)V fillNextPage a method_44486 + p 1 maxVisibleEntries + p 2 output + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output;Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)Z acceptMessage a method_45664 + p 1 output + p 2 player + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/function/Predicate;)V + p 1 reportingContext + p 2 canReport +c net/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller$Output fsm$a net/minecraft/class_7541$class_7542 + m (ILnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)V acceptMessage a method_44490 + p 1 chatId + p 2 playerMessage + m (Lnet/minecraft/network/chat/Component;)V acceptDivider a method_44492 + p 1 text +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen fsn net/minecraft/class_7543 + f Lnet/minecraft/resources/ResourceLocation; CHECKMARK_SPRITE a field_45559 + f Lnet/minecraft/network/chat/Component; TITLE b field_39727 + f Lnet/minecraft/network/chat/Component; CONTEXT_INFO c field_39728 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen r field_39584 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; reportingContext s field_39585 + f Lnet/minecraft/client/gui/components/Button; confirmSelectedButton u field_39586 + f Lnet/minecraft/client/gui/components/MultiLineLabel; contextInfoLabel v field_39729 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; chatSelectionList w field_39587 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder; report x field_39588 + f Ljava/util/function/Consumer; onSelected y field_39589 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionLogFiller; chatLogFiller z field_39590 + m ()V onReachedScrollTop C method_44507 + m ()V updateConfirmSelectedButton D method_44509 + m (Lnet/minecraft/client/gui/components/Button;)V method_44493 a method_44493 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44494 a method_44494 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage;)Z canReport a method_44495 + p 1 message + m (Lnet/minecraft/client/gui/components/Button;)V method_44496 b method_44496 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44497 b method_44497 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44499 c method_44499 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44500 d method_44500 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44501 e method_44501 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44502 f method_44502 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44726 g method_44726 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44664 h method_44664 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44506 i method_44506 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44508 j method_44508 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44505 k method_44505 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44727 l method_44727 + m ()V extendLog m method_44504 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44728 m method_44728 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder;Ljava/util/function/Consumer;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + p 4 onSelected + m ()V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList fsn$a net/minecraft/class_7543$class_7544 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen; field_39592 a field_39592 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading; previousHeading m field_39593 + m ()I getFooterTop J method_44665 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)V setSelected a method_48283 + p 1 selected + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)Lnet/minecraft/client/Minecraft; method_44510 a method_44510 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;Z)V updateHeading a method_44511 + p 1 loggedPlayerChatMessage + p 2 canReport + m (Lnet/minecraft/client/gui/navigation/ScreenDirection;)Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; nextEntry b method_48284 + p 1 direction + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)Z shouldHighlightEntry b method_44693 + p 1 entry + m ()I getMaxVisibleEntries c method_44513 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen;Lnet/minecraft/client/Minecraft;I)V + p 2 minecraft + p 3 height +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$DividerEntry fsn$a$a net/minecraft/class_7543$class_7544$class_7545 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39594 a field_39594 + f I COLOR b field_39595 + f Lnet/minecraft/network/chat/Component; text c field_39596 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;Lnet/minecraft/network/chat/Component;)V + p 2 text +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry fsn$a$b net/minecraft/class_7543$class_7544$class_7546 + m ()Z isSelected b method_44514 + m ()Z canSelect c method_44515 + m ()Z canReport d method_44694 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading fsn$a$c net/minecraft/class_7543$class_7544$class_7547 + f Ljava/util/UUID; sender a comp_866 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; entry b comp_867 + m ()Ljava/util/UUID; sender a comp_866 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Heading;)Z canCombine a method_44516 + p 1 other + m ()Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry; entry b comp_867 + m (Ljava/util/UUID;Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$Entry;)V +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$MessageEntry fsn$a$d net/minecraft/class_7543$class_7544$class_7548 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39598 a field_39598 + f I CHECKMARK_WIDTH b field_39751 + f I CHECKMARK_HEIGHT c field_39752 + f I INDENT_AMOUNT d field_39599 + f I TAG_MARGIN_LEFT e field_39775 + f I chatId f field_39600 + f Lnet/minecraft/network/chat/FormattedText; text g field_39601 + f Lnet/minecraft/network/chat/Component; narration h field_39602 + f Ljava/util/List; hoverText i field_39603 + f Lnet/minecraft/client/GuiMessageTag$Icon; tagIcon j field_39776 + f Ljava/util/List; tagHoverText k field_39777 + f Z canReport l field_39604 + f Z playerMessage m field_39605 + m (Lnet/minecraft/client/gui/GuiGraphics;III)V renderSelectedCheckmark a method_44695 + p 1 guiGraphics + p 2 top + p 3 left + p 4 height + m (Lnet/minecraft/client/gui/GuiGraphics;IIIII)V renderTag a method_44729 + p 1 guiGraphics + p 2 x + p 3 y + p 4 height + p 5 mouseX + p 6 mouseY + m ()I getMaximumTextWidth e method_44666 + m ()I getTextIndent f method_44667 + m ()Z toggleReport h method_44517 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;ILnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/GuiMessageTag;ZZ)V + p 2 chatId + p 3 text + p 4 narration + p 5 tagIcon + p 6 canReport + p 7 playerMessage +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$MessageHeadingEntry fsn$a$e net/minecraft/class_7543$class_7544$class_7549 + f Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList; field_39606 a field_39606 + f I FACE_SIZE b field_39607 + f I PADDING c field_49545 + f Lnet/minecraft/network/chat/Component; heading d field_39608 + f Ljava/util/function/Supplier; skin e field_39609 + f Z canReport f field_39610 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/Component;Z)V + p 2 profile + p 3 heading + p 4 canReport +c net/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList$PaddingEntry fsn$a$f net/minecraft/class_7543$class_7544$class_7550 + m (Lnet/minecraft/client/gui/screens/reporting/ChatSelectionScreen$ChatSelectionList;)V +c net/minecraft/client/gui/screens/reporting/NameReportScreen fso net/minecraft/class_8769 + f Lnet/minecraft/network/chat/Component; TITLE C field_46037 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox D field_46039 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61148 a method_61148 + m (Ljava/lang/String;)V method_61149 a method_61149 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61150 b method_61150 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/NameReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;Ljava/lang/String;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportedProfileId + p 4 reportedName + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/NameReport;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/ReportPlayerScreen fsp net/minecraft/class_8770 + f Lnet/minecraft/network/chat/Component; TITLE a field_46041 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_46042 + f Lnet/minecraft/network/chat/Component; REPORT_CHAT c field_46043 + f Lnet/minecraft/network/chat/Component; REPORT_SKIN r field_46044 + f Lnet/minecraft/network/chat/Component; REPORT_NAME s field_46045 + f I SPACING u field_46046 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_46047 + f Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; context w field_46048 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; player x field_46049 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout y field_46050 + m (Lnet/minecraft/client/gui/components/Button;)V method_53581 a method_53581 + m (Lnet/minecraft/client/gui/screens/reporting/ReportPlayerScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_53582 a method_53582 + m (Lnet/minecraft/client/gui/components/Button;)V method_53583 b method_53583 + m (Lnet/minecraft/client/gui/components/Button;)V method_53584 c method_53584 + m (Lnet/minecraft/client/gui/components/Button;)V method_53585 d method_53585 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/gui/screens/social/PlayerEntry;)V + p 1 lastScreen + p 2 context + p 3 player + m ()V +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen fsq net/minecraft/class_7551 + f Lnet/minecraft/network/chat/Component; REASON_TITLE a field_39612 + f Lnet/minecraft/network/chat/Component; REASON_DESCRIPTION b field_39613 + f Lnet/minecraft/network/chat/Component; READ_INFO_LABEL c field_39754 + f I DESCRIPTION_BOX_WIDTH r field_49546 + f I DESCRIPTION_BOX_HEIGHT s field_49547 + f I PADDING u field_39735 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen v field_39615 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList; reasonSelectionList w field_39616 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; currentlySelectedReason x field_39778 + f Ljava/util/function/Consumer; onSelectedReason y field_39618 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout z field_49548 + m ()I descriptionRight C method_57759 + m ()I descriptionTop D method_44668 + m ()I descriptionBottom E method_44669 + m ()I descriptionWidth F method_57760 + m ()I descriptionHeight G method_57761 + m ()I listHeight J method_57762 + m (Lnet/minecraft/client/gui/components/Button;)V method_44520 a method_44520 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44521 a method_44521 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57763 a method_57763 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;)Lnet/minecraft/client/gui/Font; method_44671 b method_44671 + m ()I descriptionLeft m method_57764 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportReason;Ljava/util/function/Consumer;)V + p 1 lastScreen + p 2 currentlySelectedReason + p 3 onSelectedReason + m ()V +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList fsq$a net/minecraft/class_7551$class_7552 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen; field_39619 a field_39619 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry;)V setSelected a method_44730 + p 1 selected + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry; findEntry a method_44522 + p 1 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry;)Z method_44523 a method_44523 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen;Lnet/minecraft/client/Minecraft;)V + p 2 minecraft +c net/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList$Entry fsq$a$a net/minecraft/class_7551$class_7552$class_7553 + f Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList; field_39620 a field_39620 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason b field_39621 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportReason; getReason b method_44524 + m (Lnet/minecraft/client/gui/screens/reporting/ReportReasonSelectionScreen$ReasonSelectionList;Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V + p 2 reason +c net/minecraft/client/gui/screens/reporting/SkinReportScreen fsr net/minecraft/class_8771 + f I SKIN_WIDTH C field_46052 + f I FORM_WIDTH D field_46053 + f Lnet/minecraft/network/chat/Component; TITLE E field_46054 + f Lnet/minecraft/client/gui/components/MultiLineEditBox; commentBox F field_46056 + f Lnet/minecraft/client/gui/components/Button; selectReasonButton G field_46058 + m (Lnet/minecraft/client/gui/components/Button;)V method_61151 a method_61151 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_61152 a method_61152 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V method_61153 a method_61153 + m (Ljava/lang/String;)V method_61154 a method_61154 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/SkinReport$Builder;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportBuilder + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 1 lastScreen + p 2 reportingContext + p 3 reportId + p 4 skinGetter + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/multiplayer/chat/report/SkinReport;)V + p 1 lastScreen + p 2 reportingContext + p 3 report + m ()V +c net/minecraft/client/gui/screens/reporting/package-info fss net/minecraft/class_7554 +c net/minecraft/client/gui/screens/social/PlayerEntry fst net/minecraft/class_5519 + f Lnet/minecraft/network/chat/Component; BLOCKED A field_26906 + f Lnet/minecraft/network/chat/Component; OFFLINE B field_26907 + f Lnet/minecraft/network/chat/Component; HIDDEN_OFFLINE C field_26908 + f Lnet/minecraft/network/chat/Component; BLOCKED_OFFLINE D field_26909 + f Lnet/minecraft/network/chat/Component; REPORT_DISABLED_TOOLTIP E field_39736 + f Lnet/minecraft/network/chat/Component; HIDE_TEXT_TOOLTIP F field_33837 + f Lnet/minecraft/network/chat/Component; SHOW_TEXT_TOOLTIP G field_33838 + f Lnet/minecraft/network/chat/Component; REPORT_PLAYER_TOOLTIP H field_39623 + f I SKIN_SIZE I field_32420 + f I PADDING J field_32421 + f I CHAT_TOGGLE_ICON_SIZE K field_32422 + f I SKIN_SHADE a field_26850 + f I BG_FILL b field_26851 + f I BG_FILL_REMOVED c field_26852 + f I PLAYERNAME_COLOR d field_26853 + f I PLAYER_STATUS_COLOR e field_26903 + f Lnet/minecraft/resources/ResourceLocation; DRAFT_REPORT_SPRITE f field_45560 + f Ljava/time/Duration; TOOLTIP_DELAY g field_32418 + f Lnet/minecraft/client/gui/components/WidgetSprites; REPORT_BUTTON_SPRITES h field_45561 + f Lnet/minecraft/client/gui/components/WidgetSprites; MUTE_BUTTON_SPRITES i field_45562 + f Lnet/minecraft/client/gui/components/WidgetSprites; UNMUTE_BUTTON_SPRITES j field_45563 + f Lnet/minecraft/client/Minecraft; minecraft k field_26854 + f Ljava/util/List; children l field_26855 + f Ljava/util/UUID; id m field_26856 + f Ljava/lang/String; playerName n field_26857 + f Ljava/util/function/Supplier; skinGetter o field_26904 + f Z isRemoved p field_26859 + f Z hasRecentMessages q field_39790 + f Z reportingEnabled r field_39791 + f Z hasDraftReport s field_40796 + f Z chatReportable u field_39937 + f Lnet/minecraft/client/gui/components/Button; hideButton v field_26860 + f Lnet/minecraft/client/gui/components/Button; showButton w field_26861 + f Lnet/minecraft/client/gui/components/Button; reportButton x field_39622 + f F tooltipHoverTime y field_26864 + f Lnet/minecraft/network/chat/Component; HIDDEN z field_26905 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)V method_47633 a method_47633 + m (Lnet/minecraft/client/gui/screens/social/PlayerSocialManager;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/client/gui/components/Button;)V method_31326 a method_31326 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/components/Button;)V method_44525 a method_44525 + m (Lnet/minecraft/network/chat/MutableComponent;)Lnet/minecraft/network/chat/MutableComponent; getEntryNarationMessage a method_31389 + p 1 component + m (ZLnet/minecraft/network/chat/Component;)V onHiddenOrShown a method_31329 + p 1 visible + p 2 message + m (Lnet/minecraft/client/gui/screens/social/PlayerSocialManager;Ljava/util/UUID;Ljava/lang/String;Lnet/minecraft/client/gui/components/Button;)V method_31332 b method_31332 + m ()Ljava/lang/String; getPlayerName c method_31330 + m (Z)V setRemoved c method_31335 + p 1 isRemoved + m ()Ljava/util/UUID; getPlayerId d method_31334 + m (Z)V setHasRecentMessages d method_44753 + p 1 hasRecentMessages + m (Z)V updateHideAndShowButton e method_47905 + p 1 visible + m ()Ljava/util/function/Supplier; getSkinGetter h method_53594 + m ()Z isRemoved i method_44754 + m ()Z hasRecentMessages j method_44756 + m ()Z isChatReportable k method_53595 + m ()Lnet/minecraft/client/gui/components/Tooltip; createReportButtonTooltip l method_47634 + m ()Lnet/minecraft/network/chat/Component; getStatusComponent m method_31390 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Ljava/util/UUID;Ljava/lang/String;Ljava/util/function/Supplier;Z)V + p 1 minecraft + p 2 socialInteractionsScreen + p 3 id + p 4 playerName + p 5 skinGetter + p 6 playerReportable + m ()V +c net/minecraft/client/gui/screens/social/PlayerEntry$1 fst$1 net/minecraft/class_5519$1 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_41113 b field_41113 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerEntry$2 fst$2 net/minecraft/class_5519$2 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_26911 b field_26911 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerEntry$3 fst$3 net/minecraft/class_5519$3 + f Lnet/minecraft/client/gui/screens/social/PlayerEntry; field_41114 b field_41114 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;IIIILnet/minecraft/client/gui/components/WidgetSprites;Lnet/minecraft/client/gui/components/Button$OnPress;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/PlayerSocialManager fsu net/minecraft/class_5520 + f Lnet/minecraft/client/Minecraft; minecraft a field_26865 + f Ljava/util/Set; hiddenPlayers b field_26866 + f Lcom/mojang/authlib/minecraft/UserApiService; service c field_26912 + f Ljava/util/Map; discoveredNamesToUUID d field_26927 + f Z onlineMode e field_35081 + f Ljava/util/concurrent/CompletableFuture; pendingBlockListRefresh f field_35082 + m ()V startOnlineMode a method_38935 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)V addPlayer a method_31337 + p 1 playerInfo + m (Ljava/lang/String;)Ljava/util/UUID; getDiscoveredUUID a method_31407 + p 1 uuid + m (Ljava/util/UUID;)V hidePlayer a method_31338 + p 1 id + m ()V stopOnlineMode b method_38936 + m (Ljava/util/UUID;)V showPlayer b method_31339 + p 1 id + m ()Ljava/util/Set; getHiddenPlayers c method_31336 + m (Ljava/util/UUID;)Z shouldHideMessageFrom c method_31391 + p 1 id + m (Ljava/util/UUID;)Z isHidden d method_31340 + p 1 id + m (Ljava/util/UUID;)Z isBlocked e method_31392 + p 1 id + m (Ljava/util/UUID;)V removePlayer f method_31341 + p 1 id + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/authlib/minecraft/UserApiService;)V + p 1 minecraft + p 2 service +c net/minecraft/client/gui/screens/social/SocialInteractionsPlayerList fsv net/minecraft/class_5521 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen; socialInteractionsScreen a field_26867 + f Ljava/util/List; players m field_26869 + f Ljava/lang/String; filter n field_26870 + m ()V sortPlayerEntries J method_44762 + m ()V updateFilteredPlayers K method_31349 + m (Lcom/mojang/authlib/GameProfile;Ljava/util/UUID;)Lnet/minecraft/client/gui/screens/social/PlayerEntry; method_44758 a method_44758 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Z method_31342 a method_31342 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page;)V addPlayer a method_31345 + p 1 playerInfo + p 2 page + m (Lnet/minecraft/client/multiplayer/chat/ChatLog;)Ljava/util/Collection; collectProfilesFromChatLog a method_45665 + p 0 chatLog + m (Ljava/lang/String;)V setFilter a method_31346 + p 1 filter + m (Ljava/util/Collection;D)V updateFiltersAndScroll a method_44698 + p 1 players + p 2 scrollAmount + m (Ljava/util/Collection;DZ)V updatePlayerList a method_31393 + p 1 ids + p 2 scrollAmount + p 4 addChatLogPlayers + m (Ljava/util/Collection;Ljava/util/Map;)V addOnlinePlayers a method_44699 + p 1 ids + p 2 playerMap + m (Ljava/util/Map;Z)V updatePlayersFromChatLog a method_44759 + p 1 playerMap + p 2 addPlayers + m (Ljava/util/UUID;)V removePlayer a method_31347 + p 1 id + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Ljava/lang/Integer; method_44760 b method_44760 + m ()Z isEmpty c method_31348 + m (Lnet/minecraft/client/gui/screens/social/PlayerEntry;)Ljava/lang/Integer; method_44761 c method_44761 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/Minecraft;IIII)V + p 1 socialInteractionsScreen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen fsw net/minecraft/class_5522 + f Lnet/minecraft/network/chat/Component; SEARCH_HINT A field_26880 + f Lnet/minecraft/network/chat/Component; EMPTY_SEARCH B field_26917 + f Lnet/minecraft/network/chat/Component; EMPTY_HIDDEN C field_26881 + f Lnet/minecraft/network/chat/Component; EMPTY_BLOCKED D field_26918 + f Lnet/minecraft/network/chat/Component; BLOCKING_HINT E field_26919 + f I BG_BORDER_SIZE F field_32424 + f I BG_WIDTH G field_32426 + f I SEARCH_HEIGHT H field_32427 + f I MARGIN_Y I field_32428 + f I IMAGE_WIDTH J field_32429 + f I BUTTON_HEIGHT K field_32430 + f I ITEM_HEIGHT L field_32431 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout M field_49549 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen N field_49550 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsPlayerList; socialInteractionsPlayerList O field_26882 + f Lnet/minecraft/client/gui/components/EditBox; searchBox P field_26883 + f Ljava/lang/String; lastSearch Q field_26884 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; page R field_26885 + f Lnet/minecraft/client/gui/components/Button; allButton S field_26886 + f Lnet/minecraft/client/gui/components/Button; hiddenButton T field_26887 + f Lnet/minecraft/client/gui/components/Button; blockedButton U field_26913 + f Lnet/minecraft/client/gui/components/Button; blockingHintButton V field_26914 + f Lnet/minecraft/network/chat/Component; serverLabel W field_26888 + f I playerCount X field_26871 + f I SEARCH_START a field_32433 + f I LIST_START b field_32432 + f Lnet/minecraft/network/chat/Component; TITLE c field_49551 + f Lnet/minecraft/resources/ResourceLocation; BACKGROUND_SPRITE r field_45564 + f Lnet/minecraft/resources/ResourceLocation; SEARCH_SPRITE s field_45565 + f Lnet/minecraft/network/chat/Component; TAB_ALL u field_26876 + f Lnet/minecraft/network/chat/Component; TAB_HIDDEN v field_26877 + f Lnet/minecraft/network/chat/Component; TAB_BLOCKED w field_26915 + f Lnet/minecraft/network/chat/Component; TAB_ALL_SELECTED x field_26878 + f Lnet/minecraft/network/chat/Component; TAB_HIDDEN_SELECTED y field_26879 + f Lnet/minecraft/network/chat/Component; TAB_BLOCKED_SELECTED z field_26916 + m ()I listEnd C method_31361 + m ()I marginX D method_31362 + m (Lnet/minecraft/client/Minecraft;)V updateServerLabel a method_31350 + p 1 minecraft + m (Lnet/minecraft/client/gui/components/Button;)V method_57765 a method_57765 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page;)V showPage a method_31352 + p 1 page + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57766 a method_57766 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)V onAddPlayer a method_31353 + p 1 playerInfo + m (Ljava/lang/String;)V checkSearchStringUpdate a method_31357 + p 1 newText + m (Ljava/util/UUID;)V onRemovePlayer a method_31355 + p 1 id + m (Lnet/minecraft/client/gui/components/Button;)V method_31396 b method_31396 + m (Lnet/minecraft/client/gui/components/Button;)V method_31351 c method_31351 + m (Lnet/minecraft/client/gui/components/Button;)V method_31356 d method_31356 + m ()I windowHeight m method_31359 + m ()V + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen$1 fsw$1 net/minecraft/class_5522$1 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen; field_26920 d field_26920 + m (Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen;Lnet/minecraft/client/gui/Font;IIIILnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page fsw$a net/minecraft/class_5522$class_5523 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; ALL a field_26890 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; HIDDEN b field_26891 + f Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; BLOCKED c field_26921 + f [Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; $VALUES d field_26892 + m ()[Lnet/minecraft/client/gui/screens/social/SocialInteractionsScreen$Page; $values a method_36890 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/gui/screens/social/package-info fsx net/minecraft/class_6222 +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget fsy net/minecraft/class_7941 + f I HEADER_HORIZONTAL_PADDING a field_41355 + f Ljava/lang/String; TELEMETRY_REQUIRED_TRANSLATION_KEY b field_41356 + f Ljava/lang/String; TELEMETRY_OPTIONAL_TRANSLATION_KEY c field_41357 + f Ljava/lang/String; TELEMETRY_OPTIONAL_DISABLED_TRANSLATION_KEY d field_47125 + f Lnet/minecraft/network/chat/Component; PROPERTY_TITLE e field_41358 + f Lnet/minecraft/client/gui/Font; font f field_41359 + f Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; content m field_41360 + f Ljava/util/function/DoubleConsumer; onScrolledListener n field_41361 + m (Lnet/minecraft/client/gui/GuiGraphics;IIFLnet/minecraft/client/gui/components/AbstractWidget;)V method_48285 a method_48285 + m (Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder;Lnet/minecraft/client/telemetry/TelemetryEventType;Z)V addEventType a method_47635 + p 1 contentBuilder + p 2 eventType + p 3 disabled + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder;Z)V addEventTypeProperties a method_47636 + p 1 eventType + p 2 contentBuilder + p 3 disabled + m (Ljava/util/function/DoubleConsumer;)V setOnScrolledListener a method_47637 + p 1 onScrolledListener + m (Lnet/minecraft/network/chat/Component;Z)Lnet/minecraft/network/chat/Component; grayOutIfDisabled a method_54801 + p 1 component + p 2 disabled + m (Z)V onOptInChanged b method_47638 + p 1 optIn + m (Z)Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; buildContent c method_47639 + p 1 optIn + m ()V updateLayout j method_57767 + m ()I containerWidth k method_47640 + m (IIIILnet/minecraft/client/gui/Font;)V + p 1 x + p 2 y + p 3 width + p 4 height + p 5 font + m ()V +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content fsy$a net/minecraft/class_7941$class_7942 + f Lnet/minecraft/client/gui/layouts/Layout; container a comp_1160 + f Lnet/minecraft/network/chat/Component; narration b comp_1161 + m ()Lnet/minecraft/client/gui/layouts/Layout; container a comp_1160 + m ()Lnet/minecraft/network/chat/Component; narration b comp_1161 + m (Lnet/minecraft/client/gui/layouts/Layout;Lnet/minecraft/network/chat/Component;)V +c net/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$ContentBuilder fsy$b net/minecraft/class_7941$class_7943 + f I width a field_41362 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout b field_45566 + f Lnet/minecraft/network/chat/MutableComponent; narration c field_41366 + m ()Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget$Content; build a method_47641 + m (I)V addSpacer a method_47642 + p 1 height + m (ILnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52763 a method_52763 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V addLine a method_47643 + p 1 font + p 2 message + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;I)V addLine a method_47644 + p 1 font + p 2 message + p 3 padding + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52764 a method_52764 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;)V addHeader b method_47645 + p 1 font + p 2 message + m (I)V + p 1 width +c net/minecraft/client/gui/screens/telemetry/TelemetryInfoScreen fsz net/minecraft/class_7944 + f Lnet/minecraft/client/gui/screens/telemetry/TelemetryEventWidget; telemetryEventWidget A field_41375 + f Lnet/minecraft/client/gui/components/MultiLineTextWidget; description B field_49554 + f D savedScroll C field_41376 + f Lnet/minecraft/network/chat/Component; TITLE a field_41369 + f Lnet/minecraft/network/chat/Component; DESCRIPTION b field_41370 + f Lnet/minecraft/network/chat/Component; BUTTON_PRIVACY_STATEMENT c field_45567 + f Lnet/minecraft/network/chat/Component; BUTTON_GIVE_FEEDBACK r field_41371 + f Lnet/minecraft/network/chat/Component; BUTTON_VIEW_DATA s field_41372 + f Lnet/minecraft/network/chat/Component; CHECKBOX_OPT_IN u field_47126 + f I SPACING v field_41367 + f Z EXTRA_TELEMETRY_AVAILABLE w field_49552 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen x field_41373 + f Lnet/minecraft/client/Options; options y field_41374 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout z field_49553 + m (D)V method_47646 a method_47646 + m (Lnet/minecraft/client/gui/components/AbstractWidget;Z)V onOptInChanged a method_54803 + p 1 widget + p 2 optedIn + m (Lnet/minecraft/client/gui/components/Button;)V openPrivacyStatementLink a method_52765 + p 1 button + m (Lnet/minecraft/client/gui/screens/telemetry/TelemetryInfoScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48286 a method_48286 + m (Lnet/minecraft/client/gui/components/Button;)V openFeedbackLink b method_47650 + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V openDataFolder c method_47651 + p 1 button + m (Lnet/minecraft/client/gui/components/Button;)V method_57768 d method_57768 + m ()Lnet/minecraft/client/gui/components/AbstractWidget; createTelemetryCheckbox m method_54802 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/Options;)V + p 1 lastScreen + p 2 options + m ()V +c net/minecraft/client/gui/screens/telemetry/package-info fta net/minecraft/class_7945 +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen ftb net/minecraft/class_7745 + f Lnet/minecraft/network/chat/Component; TITLE a field_40443 + f Lnet/minecraft/network/chat/Component; MESSAGE b field_40444 + f Lnet/minecraft/network/chat/Component; DETAILS_BUTTON c field_40445 + f I COLUMN_SPACING r field_42498 + f I DETAILS_BUTTON_WIDTH s field_42499 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback u field_40447 + f Ljava/util/Collection; enabledPacks v field_40448 + f Lnet/minecraft/client/gui/layouts/GridLayout; layout w field_42500 + m (Lnet/minecraft/client/gui/components/Button;)V method_45666 a method_45666 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_49008 a method_49008 + m (Lnet/minecraft/client/gui/components/Button;)V method_45668 b method_45668 + m (Lnet/minecraft/client/gui/components/Button;)V method_45667 c method_45667 + m (Ljava/util/Collection;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 enabledPacks + p 2 callback + m ()V +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen ftb$a net/minecraft/class_7745$class_7746 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen; field_40450 a field_40450 + f Lnet/minecraft/network/chat/Component; TITLE b field_49555 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49556 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackList; list r field_50222 + m (Lnet/minecraft/client/gui/components/Button;)V method_45671 a method_45671 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/gui/Font; method_45672 a method_45672 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_57769 a method_57769 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/Minecraft; method_45673 b method_45673 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;)Lnet/minecraft/client/gui/Font; method_45674 c method_45674 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackList ftb$a$a net/minecraft/class_7745$class_7746$class_7747 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/client/Minecraft;Ljava/util/Collection;)V + p 2 minecraft + p 3 enabledPacks +c net/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen$PackListEntry ftb$a$b net/minecraft/class_7745$class_7746$class_7748 + f Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen; field_40453 a field_40453 + f Lnet/minecraft/network/chat/Component; packId b field_40454 + f Lnet/minecraft/network/chat/Component; message c field_40455 + f Lnet/minecraft/client/gui/components/MultiLineLabel; splitMessage d field_40456 + m (Lnet/minecraft/client/gui/screens/worldselection/ConfirmExperimentalFeaturesScreen$DetailsScreen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/components/MultiLineLabel;)V + p 2 packId + p 3 message + p 4 splitMessage +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen ftc net/minecraft/class_525 + f I VERTICAL_BUTTON_SPACING A field_42171 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout B field_49557 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState; uiState C field_42172 + f Lnet/minecraft/client/gui/components/tabs/TabManager; tabManager D field_42173 + f Z recreated E field_42502 + f Lnet/minecraft/world/level/validation/DirectoryValidator; packValidator F field_45568 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen G field_3187 + f Ljava/nio/file/Path; tempDataPackDir H field_25477 + f Lnet/minecraft/server/packs/repository/PackRepository; tempDataPackRepository I field_25792 + f Lnet/minecraft/client/gui/components/tabs/TabNavigationBar; tabNavigationBar J field_42164 + f Lnet/minecraft/resources/ResourceLocation; TAB_HEADER_BACKGROUND a field_49902 + f I GROUP_BOTTOM b field_42165 + f I TAB_COLUMN_WIDTH c field_42166 + f Lorg/slf4j/Logger; LOGGER r field_25480 + f Ljava/lang/String; TEMP_WORLD_PREFIX s field_32434 + f Lnet/minecraft/network/chat/Component; GAME_MODEL_LABEL u field_25898 + f Lnet/minecraft/network/chat/Component; NAME_LABEL v field_26600 + f Lnet/minecraft/network/chat/Component; EXPERIMENTS_LABEL w field_42501 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS_INFO x field_42169 + f Lnet/minecraft/network/chat/Component; PREPARING_WORLD_DATA y field_37911 + f I HORIZONTAL_BUTTON_SPACING z field_42170 + m ()V popScreen C method_30297 + m ()V onCreate D method_2736 + m ()Ljava/nio/file/Path; getTempDataPackDir E method_29693 + m ()V removeTempDataPackDir F method_29695 + m ()Ljava/util/Optional; createNewWorldDirectory G method_41848 + m (Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45678 a method_45678 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_49009 a method_49009 + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;)Lnet/minecraft/server/WorldLoader$InitConfig; createDefaultLoadConfig a method_41849 + p 0 packRepository + p 1 initialDataConfig + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;Ljava/util/function/Consumer;)V applyNewPackConfig a method_45679 + p 1 packRepository + p 2 worldDataConfiguration + p 3 consumer + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;Ljava/util/function/Consumer;Z)V method_48643 a method_48643 + m (Lnet/minecraft/server/packs/repository/PackRepository;ZLjava/util/function/Consumer;)V tryApplyNewDataPacks a method_29682 + p 1 packRepository + p 2 shouldConfirm + p 3 consumer + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_45681 a method_45681 + m (Lcom/mojang/serialization/DynamicOps;Lcom/google/gson/JsonElement;)Lcom/mojang/serialization/DataResult; method_45682 a method_45682 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V openExperimentsScreen a method_49010 + p 1 worldDataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldDimensions$Complete;Lnet/minecraft/core/LayeredRegistryAccess;Lcom/mojang/serialization/Lifecycle;)V method_45683 a method_45683 + m (Lnet/minecraft/world/level/storage/PrimaryLevelData$SpecialWorldProperty;Lnet/minecraft/core/LayeredRegistryAccess;Lcom/mojang/serialization/Lifecycle;)V createNewWorld a method_41847 + p 1 specialWorldProperty + p 3 worldGenSettingsLifecycle + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;)V openFresh a method_31130 + p 0 minecraft + p 1 lastScreen + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/nio/file/Path;)Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; createFromExisting a method_40212 + p 0 minecraft + p 1 lastScreen + p 2 levelSettings + p 3 settings + p 4 tempDataPackDir + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/chat/Component;)V queueLoadScreen a method_41852 + p 0 minecraft + p 1 title + m (Lnet/minecraft/client/gui/components/AbstractWidget;)V method_48644 a method_48644 + m (Lnet/minecraft/client/gui/components/Button;)V method_19921 a method_19921 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48646 a method_48646 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48649 a method_48649 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_59841 a method_59841 + m (Ljava/lang/String;)Ljava/lang/IllegalStateException; method_58746 a method_58746 + m (Ljava/nio/file/Path;)Z method_41853 a method_41853 + m (Ljava/nio/file/Path;Lnet/minecraft/client/Minecraft;)Ljava/nio/file/Path; createTempDataPackDirFromExistingWorld a method_29685 + p 0 datapackDir + p 1 minecraft + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)Z method_29686 a method_29686 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;Ljava/nio/file/Path;)V copyBetweenDirs a method_29687 + p 0 fromDir + p 1 toDir + p 2 filePath + m (Ljava/util/List;Ljava/lang/String;)Z method_29983 a method_29983 + m (Ljava/util/function/Consumer;Ljava/lang/Void;Ljava/lang/Throwable;)Ljava/lang/Object; method_49629 a method_49629 + m (Ljava/util/function/Consumer;Z)V method_48654 a method_48654 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_29688 a method_29688 + m (Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45686 b method_45686 + m (Lnet/minecraft/server/packs/repository/PackRepository;)V method_49011 b method_49011 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; method_41851 b method_41851 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)V openDataPackSelectionScreen b method_29694 + p 1 worldDataConfiguration + m (Lnet/minecraft/client/gui/components/Button;)V method_19922 b method_19922 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48647 b method_48647 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48650 b method_48650 + m (Ljava/nio/file/Path;)V method_29689 b method_29689 + m (Ljava/nio/file/Path;Ljava/nio/file/Path;)V method_41855 b method_41855 + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Lcom/mojang/datafixers/util/Pair; getDataPackSelectionSettings c method_30296 + p 1 worldDataConfiguration + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48651 c method_48651 + m (Z)Lnet/minecraft/world/level/LevelSettings; createLevelSettings c method_40213 + p 1 debug + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/gui/Font; method_48652 d method_48652 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48653 e method_48653 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48655 f method_48655 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)Lnet/minecraft/client/Minecraft; method_48656 g method_48656 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState; getUiState m method_48657 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;Ljava/util/OptionalLong;)V + p 1 minecraft + p 2 lastScreen + p 3 settings + p 4 preset + p 5 seed + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$DataPackReloadCookie ftc$a net/minecraft/class_525$class_7749 + f Lnet/minecraft/world/level/levelgen/WorldGenSettings; worldGenSettings a comp_1025 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_1026 + m ()Lnet/minecraft/world/level/levelgen/WorldGenSettings; worldGenSettings a comp_1025 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration b comp_1026 + m (Lnet/minecraft/world/level/levelgen/WorldGenSettings;Lnet/minecraft/world/level/WorldDataConfiguration;)V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$GameTab ftc$b net/minecraft/class_525$class_8093 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42174 b field_42174 + f Lnet/minecraft/network/chat/Component; TITLE c field_42175 + f Lnet/minecraft/network/chat/Component; ALLOW_COMMANDS d field_42176 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit e field_42177 + m (Lnet/minecraft/client/gui/components/Button;)V method_49012 a method_49012 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/world/Difficulty;)V method_48658 a method_48658 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)V method_48659 a method_48659 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48660 a method_48660 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_48661 a method_48661 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)Lnet/minecraft/network/chat/Component; method_48662 a method_48662 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_49702 a method_49702 + m (Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_48663 a method_48663 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48664 b method_48664 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48665 c method_48665 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$MoreTab ftc$c net/minecraft/class_525$class_8094 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42178 b field_42178 + f Lnet/minecraft/network/chat/Component; TITLE c field_42179 + f Lnet/minecraft/network/chat/Component; GAME_RULES_LABEL d field_42180 + f Lnet/minecraft/network/chat/Component; DATA_PACKS_LABEL e field_42181 + m (Lnet/minecraft/client/gui/components/Button;)V method_49013 a method_49013 + m (Ljava/util/Optional;)V method_48667 a method_48667 + m ()V openGameRulesScreen b method_48669 + m (Lnet/minecraft/client/gui/components/Button;)V method_49014 b method_49014 + m (Lnet/minecraft/client/gui/components/Button;)V method_48668 c method_48668 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab ftc$d net/minecraft/class_525$class_8095 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42182 b field_42182 + f Lnet/minecraft/network/chat/Component; TITLE c field_42183 + f Lnet/minecraft/network/chat/Component; AMPLIFIED_HELP_TEXT d field_42184 + f Lnet/minecraft/network/chat/Component; GENERATE_STRUCTURES e field_42185 + f Lnet/minecraft/network/chat/Component; GENERATE_STRUCTURES_INFO f field_42186 + f Lnet/minecraft/network/chat/Component; BONUS_CHEST g field_42187 + f Lnet/minecraft/network/chat/Component; SEED_LABEL h field_42188 + f Lnet/minecraft/network/chat/Component; SEED_EMPTY_HINT i field_42189 + f I WORLD_TAB_WIDTH j field_42190 + f Lnet/minecraft/client/gui/components/EditBox; seedEdit k field_42191 + f Lnet/minecraft/client/gui/components/Button; customizeTypeButton l field_42192 + m (Lnet/minecraft/client/gui/components/Button;)V method_48670 a method_48670 + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; createTypeButtonNarration a method_48671 + p 0 button + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry;)V method_48672 a method_48672 + m (Lnet/minecraft/client/gui/components/CycleButton;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48673 a method_48673 + m (Lnet/minecraft/client/gui/layouts/GridLayout$RowHelper;Lnet/minecraft/client/gui/layouts/LayoutElement;)V method_48674 a method_48674 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48675 a method_48675 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState;)V method_48676 a method_48676 + m (Ljava/lang/String;)V method_48677 a method_48677 + m ()V openPresetEditor b method_48678 + m ()Lnet/minecraft/client/gui/components/CycleButton$ValueListSupplier; createWorldTypeValueSupplier c method_48679 + m ()Z method_48680 d method_48680 + m ()Z method_48681 e method_48681 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab$1 ftc$d$1 net/minecraft/class_525$class_8095$1 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen; field_42193 d field_42193 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab;Lnet/minecraft/client/gui/Font;IILnet/minecraft/network/chat/Component;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;)V +c net/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab$2 ftc$d$2 net/minecraft/class_525$class_8095$2 + f Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab; field_42195 a field_42195 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen$WorldTab;)V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen ftd net/minecraft/class_5235 + f Lnet/minecraft/network/chat/Component; TITLE a field_49558 + f I SPACING b field_49559 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout c field_49560 + f Ljava/util/function/Consumer; exitCallback r field_24293 + f Ljava/util/Set; invalidEntries s field_24295 + f Lnet/minecraft/world/level/GameRules; gameRules u field_24298 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList; ruleList v field_49903 + f Lnet/minecraft/client/gui/components/Button; doneButton w field_24296 + m (Lnet/minecraft/client/gui/components/Button;)V method_57770 a method_57770 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry;)V markInvalid a method_27620 + p 1 ruleEntry + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27621 a method_27621 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_48682 a method_48682 + m (Lnet/minecraft/client/gui/components/Button;)V method_27619 b method_27619 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry;)V clearInvalid b method_27626 + p 1 ruleEntry + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29984 b method_29984 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27629 c method_27629 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29985 d method_29985 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_29986 e method_29986 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/Minecraft; method_27627 f method_27627 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;)Lnet/minecraft/client/gui/Font; method_57771 g method_57771 + m ()V updateDoneButton m method_27632 + m (Lnet/minecraft/world/level/GameRules;Ljava/util/function/Consumer;)V + p 1 gameRules + p 2 exitCallback + m ()V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$BooleanRuleEntry ftd$a net/minecraft/class_5235$class_5236 + f Lnet/minecraft/client/gui/components/CycleButton; checkbox c field_24300 + m (Lnet/minecraft/world/level/GameRules$BooleanValue;Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_32674 a method_32674 + m (Ljava/lang/String;Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_32675 a method_32675 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$BooleanValue;)V + p 2 label + p 3 tooltip + p 5 value +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry ftd$b net/minecraft/class_5235$class_5237 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24305 a field_24305 + f Lnet/minecraft/network/chat/Component; label b field_24306 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;)V + p 2 label +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry$1 ftd$b$1 net/minecraft/class_5235$class_5237$1 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry; field_33845 a field_33845 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$CategoryRuleEntry;)V +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$EntryFactory ftd$c net/minecraft/class_5235$class_5238 +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$GameRuleEntry ftd$d net/minecraft/class_5235$class_5400 + f Ljava/util/List; children a field_25630 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_25631 b field_25631 + f Ljava/util/List; label c field_25629 + m (Lnet/minecraft/client/gui/GuiGraphics;II)V renderLabel a method_29989 + p 1 guiGraphics + p 2 x + p 3 y + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Ljava/util/List;Lnet/minecraft/network/chat/Component;)V + p 2 tooltip + p 3 label +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$IntegerRuleEntry ftd$e net/minecraft/class_5235$class_5239 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24307 c field_24307 + f Lnet/minecraft/client/gui/components/EditBox; input d field_24309 + m (Lnet/minecraft/world/level/GameRules$IntegerValue;Ljava/lang/String;)V method_27635 a method_27635 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$IntegerValue;)V + p 2 label + p 3 tooltip + p 5 value +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry ftd$f net/minecraft/class_5235$class_5240 + f Ljava/util/List; tooltip a field_24311 + m (Ljava/util/List;)V + p 1 tooltip +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList ftd$g net/minecraft/class_5235$class_5241 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24313 a field_24313 + f I ITEM_HEIGHT m field_49561 + m (Ljava/util/Map$Entry;)V method_27637 a method_27637 + m (Ljava/util/Map$Entry;)V method_27638 b method_27638 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/world/level/GameRules;)V + p 2 gameRules +c net/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList$1 ftd$g$1 net/minecraft/class_5235$class_5241$1 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen; field_24314 a field_24314 + f Lnet/minecraft/world/level/GameRules; val$gameRules b field_24315 + f Ljava/util/Map; val$entries c field_24316 + f Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList; field_24317 d field_24317 + m (Lnet/minecraft/world/level/GameRules$Category;)Ljava/util/Map; method_27639 a method_27639 + m (Lnet/minecraft/world/level/GameRules$Key;Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$EntryFactory;)V addEntry a method_27640 + p 1 key + p 2 factory + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$BooleanValue;)Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry; method_27641 a method_27641 + m (Lnet/minecraft/network/chat/Component;Ljava/util/List;Ljava/lang/String;Lnet/minecraft/world/level/GameRules$IntegerValue;)Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleEntry; method_27642 a method_27642 + m (Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen$RuleList;Lnet/minecraft/client/gui/screens/worldselection/EditGameRulesScreen;Lnet/minecraft/world/level/GameRules;Ljava/util/Map;)V +c net/minecraft/client/gui/screens/worldselection/EditWorldScreen fte net/minecraft/class_524 + f I VERTICAL_SPACING A field_46894 + f I HALF_WIDTH B field_46895 + f Lnet/minecraft/client/gui/layouts/LinearLayout; layout C field_46896 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback D field_3169 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; levelAccess E field_23777 + f Lnet/minecraft/client/gui/components/EditBox; nameEdit F field_48397 + f Lorg/slf4j/Logger; LOGGER a field_23776 + f Lnet/minecraft/network/chat/Component; NAME_LABEL b field_26603 + f Lnet/minecraft/network/chat/Component; RESET_ICON_BUTTON c field_46885 + f Lnet/minecraft/network/chat/Component; FOLDER_BUTTON r field_46886 + f Lnet/minecraft/network/chat/Component; BACKUP_BUTTON s field_46887 + f Lnet/minecraft/network/chat/Component; BACKUP_FOLDER_BUTTON u field_46888 + f Lnet/minecraft/network/chat/Component; OPTIMIZE_BUTTON v field_46889 + f Lnet/minecraft/network/chat/Component; OPTIMIZE_TITLE w field_46890 + f Lnet/minecraft/network/chat/Component; OPTIMIIZE_DESCRIPTION x field_46891 + f Lnet/minecraft/network/chat/Component; SAVE_BUTTON y field_46892 + f I DEFAULT_WIDTH z field_46893 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Z makeBackupAndShowToast a method_2701 + p 0 levelAccess + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/Minecraft;ZZ)V method_54595 a method_54595 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54596 a method_54596 + m (Lnet/minecraft/client/Minecraft;)V method_54597 a method_54597 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54598 a method_54598 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)Lnet/minecraft/client/gui/screens/worldselection/EditWorldScreen; create a method_54599 + p 0 minecraft + p 1 levelAccess + p 2 callback + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/components/Button;)V method_54600 a method_54600 + m (Lnet/minecraft/client/gui/components/Button;)V method_54601 a method_54601 + m (Lnet/minecraft/client/gui/components/Button;Ljava/lang/String;)V method_54602 a method_54602 + m (Lnet/minecraft/client/gui/screens/worldselection/EditWorldScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_54604 a method_54604 + m (Ljava/lang/String;)V onRename a method_2691 + p 1 saveName + m (Ljava/nio/file/Path;)Z method_54605 a method_54605 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54606 b method_54606 + m (Lnet/minecraft/client/gui/components/Button;)V method_54603 b method_54603 + m (Ljava/nio/file/Path;)V method_54607 b method_54607 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/client/gui/components/Button;)V method_54608 c method_54608 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/String;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;)V + p 1 minecraft + p 2 levelAccess + p 3 levelName + p 4 callback + m ()V +c net/minecraft/client/gui/screens/worldselection/ExperimentsScreen ftf net/minecraft/class_8134 + f Lnet/minecraft/network/chat/Component; TITLE a field_49562 + f Lnet/minecraft/network/chat/Component; INFO b field_50043 + f I MAIN_CONTENT_WIDTH c field_42503 + f Lnet/minecraft/client/gui/layouts/HeaderAndFooterLayout; layout r field_42504 + f Lnet/minecraft/client/gui/screens/Screen; parent s field_42505 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository u field_42506 + f Ljava/util/function/Consumer; output v field_42507 + f Lit/unimi/dsi/fastutil/objects/Object2BooleanMap; packs w field_42508 + m (Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; getHumanReadableTitle a method_49016 + p 0 pack + m (Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49017 a method_49017 + m (Lnet/minecraft/client/gui/components/Button;)V method_49018 a method_49018 + m (Lnet/minecraft/client/gui/layouts/LayoutSettings;)V method_52767 a method_52767 + m (Lnet/minecraft/client/gui/screens/worldselection/ExperimentsScreen;Lnet/minecraft/client/gui/components/events/GuiEventListener;)V method_49019 a method_49019 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49020 a method_49020 + m (Ljava/util/List;Ljava/util/List;Lnet/minecraft/server/packs/repository/Pack;Ljava/lang/Boolean;)V method_49021 a method_49021 + m (Lnet/minecraft/server/packs/repository/Pack;)Z method_49022 b method_49022 + m (Lnet/minecraft/client/gui/components/Button;)V method_49023 b method_49023 + m ()V onDone m method_49024 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/function/Consumer;)V + p 1 parent + p 2 packRepository + p 3 output + m ()V +c net/minecraft/client/gui/screens/worldselection/OptimizeWorldScreen ftg net/minecraft/class_527 + f Lorg/slf4j/Logger; LOGGER a field_25482 + f Ljava/util/function/ToIntFunction; DIMENSION_COLORS b field_3232 + f Lit/unimi/dsi/fastutil/booleans/BooleanConsumer; callback c field_3233 + f Lnet/minecraft/util/worldupdate/WorldUpgrader; upgrader r field_3234 + m (Lnet/minecraft/client/Minecraft;Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)Lnet/minecraft/client/gui/screens/worldselection/OptimizeWorldScreen; create a method_27031 + p 0 minecraft + p 1 callback + p 2 dataFixer + p 3 levelStorage + p 4 eraseCache + m (Lnet/minecraft/client/gui/components/Button;)V method_19938 a method_19938 + m (Lit/unimi/dsi/fastutil/objects/Reference2IntOpenHashMap;)V method_2747 a method_2747 + m (Lit/unimi/dsi/fastutil/booleans/BooleanConsumer;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/LevelSettings;ZLnet/minecraft/core/RegistryAccess;)V + p 1 callback + p 2 dataFixer + p 3 levelStorage + p 4 levelSettings + p 5 eraseCache + p 6 registryAccess + m ()V +c net/minecraft/client/gui/screens/worldselection/PresetEditor fth net/minecraft/class_5293 + f Ljava/util/Map; EDITORS a field_37912 + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater; flatWorldConfigurator a method_41856 + p 0 settings + m (Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_41857 a method_41857 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/world/level/levelgen/flat/FlatLevelGeneratorSettings;)V method_41858 a method_41858 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/Screen; method_41859 a method_41859 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/core/Holder;)V method_41860 a method_41860 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater; fixedBiomeConfigurator a method_41861 + p 0 biome + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_41862 a method_41862 + m (Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)Lnet/minecraft/client/gui/screens/Screen; method_41863 b method_41863 + m ()V +c net/minecraft/client/gui/screens/worldselection/SelectWorldScreen fti net/minecraft/class_526 + f Lnet/minecraft/world/level/levelgen/WorldOptions; TEST_OPTIONS a field_40457 + f Lnet/minecraft/client/gui/screens/Screen; lastScreen b field_3221 + f Lnet/minecraft/client/gui/components/EditBox; searchBox c field_3220 + f Lorg/slf4j/Logger; LOGGER r field_28783 + f Lnet/minecraft/client/gui/components/Button; deleteButton s field_3219 + f Lnet/minecraft/client/gui/components/Button; selectButton u field_3224 + f Lnet/minecraft/client/gui/components/Button; renameButton v field_3215 + f Lnet/minecraft/client/gui/components/Button; copyButton w field_3216 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList; list x field_3218 + m (Lnet/minecraft/world/level/storage/LevelSummary;)V updateButtonStatus a method_19940 + p 1 levelSummary + m (Lnet/minecraft/client/gui/components/Button;)V method_35739 a method_35739 + m (Ljava/lang/String;)V method_2744 a method_2744 + m (Lnet/minecraft/client/gui/components/Button;)V method_19939 b method_19939 + m (Lnet/minecraft/client/gui/components/Button;)V method_19941 c method_19941 + m (Lnet/minecraft/client/gui/components/Button;)V method_19942 d method_19942 + m (Lnet/minecraft/client/gui/components/Button;)V method_19943 e method_19943 + m (Lnet/minecraft/client/gui/components/Button;)V method_19944 f method_19944 + m (Lnet/minecraft/client/gui/components/Button;)V method_19945 g method_19945 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 lastScreen + m ()V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid ftj net/minecraft/class_8096 + f I DEFAULT_SWITCH_BUTTON_WIDTH a field_42196 + f Ljava/util/List; switches b field_42197 + m ()V refreshStates a method_48683 + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; builder a method_48684 + p 0 width + m (Ljava/util/List;)V + p 1 switches +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder ftj$a net/minecraft/class_8096$class_8097 + f I width a field_42198 + f Ljava/util/List; switchBuilders b field_42199 + f I paddingLeft c field_42200 + f I rowSpacing d field_42509 + f I rowCount e field_42510 + f Ljava/util/Optional; infoUnderneath f field_42511 + m ()V increaseRow a method_49025 + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withPaddingLeft a method_48685 + p 1 paddingLeft + m (IZ)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withInfoUnderneath a method_49026 + p 1 maxInfoRows + p 2 alwaysMaxHeight + m (Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid; build a method_48686 + p 1 consumer + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; addSwitch a method_48687 + p 1 label + p 2 stateSupplier + p 3 onClicked + m (I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder; withRowSpacing b method_49027 + p 1 rowSpacing + m (I)V + p 1 width +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$InfoUnderneathSettings ftj$b net/minecraft/class_8096$class_8135 + f I maxInfoRows a comp_1259 + f Z alwaysMaxHeight b comp_1260 + m ()I maxInfoRows a comp_1259 + m ()Z alwaysMaxHeight b comp_1260 + m (IZ)V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$LabeledSwitch ftj$c net/minecraft/class_8096$class_8098 + f Lnet/minecraft/client/gui/components/CycleButton; button a comp_1261 + f Ljava/util/function/BooleanSupplier; stateSupplier b comp_1262 + f Ljava/util/function/BooleanSupplier; isActiveCondition c comp_1263 + m ()V refreshState a method_48688 + m ()Lnet/minecraft/client/gui/components/CycleButton; button b comp_1261 + m ()Ljava/util/function/BooleanSupplier; stateSupplier c comp_1262 + m ()Ljava/util/function/BooleanSupplier; isActiveCondition d comp_1263 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/util/function/BooleanSupplier;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder ftj$d net/minecraft/class_8096$class_8099 + f Lnet/minecraft/network/chat/Component; label a field_42204 + f Ljava/util/function/BooleanSupplier; stateSupplier b field_42205 + f Ljava/util/function/Consumer; onClicked c field_42206 + f Lnet/minecraft/network/chat/Component; info d field_42207 + f Ljava/util/function/BooleanSupplier; isActiveCondition e field_42208 + f I buttonWidth f field_42209 + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_49028 a method_49028 + m (Lnet/minecraft/client/gui/components/CycleButton;Ljava/lang/Boolean;)V method_48690 a method_48690 + m (Lnet/minecraft/client/gui/components/Tooltip;Ljava/lang/Boolean;)Lnet/minecraft/client/gui/components/Tooltip; method_49029 a method_49029 + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/client/gui/layouts/GridLayout;I)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$LabeledSwitch; build a method_48691 + p 1 builder + p 2 gridLayout + p 3 column + m (Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$Builder;Lnet/minecraft/client/gui/layouts/GridLayout;ILnet/minecraft/client/gui/screens/worldselection/SwitchGrid$InfoUnderneathSettings;)V method_49030 a method_49030 + m (Ljava/util/function/BooleanSupplier;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; withIsActiveCondition a method_48693 + p 1 isActiveCondition + m (Lnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/screens/worldselection/SwitchGrid$SwitchBuilder; withInfo a method_48694 + p 1 info + m (Lnet/minecraft/client/gui/components/CycleButton;)Lnet/minecraft/network/chat/MutableComponent; method_49031 b method_49031 + m (Lnet/minecraft/network/chat/Component;Ljava/util/function/BooleanSupplier;Ljava/util/function/Consumer;I)V + p 1 label + p 2 stateSupplier + p 3 onClicked + p 4 buttonWidth +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext ftk net/minecraft/class_7193 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options a comp_616 + f Lnet/minecraft/core/Registry; datapackDimensions b comp_1027 + f Lnet/minecraft/world/level/levelgen/WorldDimensions; selectedDimensions c comp_1028 + f Lnet/minecraft/core/LayeredRegistryAccess; worldgenRegistries d comp_1029 + f Lnet/minecraft/server/ReloadableServerResources; dataPackResources e comp_619 + f Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration f comp_1030 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; worldgenLoadContext a method_45689 + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withSettings a method_41864 + p 1 options + p 2 selectedDimensions + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withDimensions a method_41866 + p 1 dimensionsUpdater + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$OptionsModifier;)Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; withOptions a method_45690 + p 1 optionsModifier + m ()V validate b method_60345 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options c comp_616 + m ()Lnet/minecraft/core/Registry; datapackDimensions d comp_1027 + m ()Lnet/minecraft/world/level/levelgen/WorldDimensions; selectedDimensions e comp_1028 + m ()Lnet/minecraft/core/LayeredRegistryAccess; worldgenRegistries f comp_1029 + m ()Lnet/minecraft/server/ReloadableServerResources; dataPackResources g comp_619 + m ()Lnet/minecraft/world/level/WorldDataConfiguration; dataConfiguration h comp_1030 + m (Lnet/minecraft/world/level/levelgen/WorldGenSettings;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 worldGenSettings + p 2 worldGenRegistries + p 3 dataPackResources + p 4 dataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/world/level/levelgen/WorldDimensions;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V + p 1 options + p 2 selectedDimensions + p 3 worldGenRegistries + p 4 dataPackResources + p 5 dataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/Registry;Lnet/minecraft/world/level/levelgen/WorldDimensions;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/world/level/WorldDataConfiguration;)V +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater ftk$a net/minecraft/class_7193$class_7195 +c net/minecraft/client/gui/screens/worldselection/WorldCreationContext$OptionsModifier ftk$b net/minecraft/class_7193$class_7194 +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState ftl net/minecraft/class_8100 + f Lnet/minecraft/network/chat/Component; DEFAULT_WORLD_NAME a field_43104 + f Ljava/util/List; listeners b field_42210 + f Ljava/lang/String; name c field_42211 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; gameMode d field_42213 + f Lnet/minecraft/world/Difficulty; difficulty e field_42214 + f Ljava/lang/Boolean; allowCommands f field_42215 + f Ljava/lang/String; seed g field_42216 + f Z generateStructures h field_42217 + f Z bonusChest i field_42218 + f Ljava/nio/file/Path; savesFolder j field_43105 + f Ljava/lang/String; targetFolder k field_43106 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; settings l field_42219 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry; worldType m field_42220 + f Ljava/util/List; normalPresetList n field_42221 + f Ljava/util/List; altPresetList o field_42222 + f Lnet/minecraft/world/level/GameRules; gameRules p field_42223 + m ()V onChanged a method_48695 + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_48696 + p 1 difficulty + m (Lnet/minecraft/world/level/GameRules;)V setGameRules a method_48697 + p 1 gameRules + m (Lnet/minecraft/world/level/WorldDataConfiguration;)Z tryUpdateDataConfiguration a method_48698 + p 1 worldDataConfiguration + m (Lnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48699 a method_48699 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext$DimensionsUpdater;)V updateDimensions a method_48700 + p 1 dimensionsUpdater + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;)V setSettings a method_48701 + p 1 settings + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Lnet/minecraft/resources/ResourceKey;)Ljava/util/Optional; method_48702 a method_48702 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;)Ljava/util/Optional; findPreset a method_48703 + p 0 context + p 1 preset + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode;)V setGameMode a method_48704 + p 1 gameMode + m (Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry;)V setWorldType a method_48705 + p 1 worldType + m (Ljava/lang/String;)V setName a method_48710 + p 1 name + m (Ljava/util/List;)Z method_48711 a method_48711 + m (Ljava/util/function/Consumer;)V addListener a method_48712 + p 1 listener + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/level/levelgen/WorldDimensions;)Lnet/minecraft/world/level/levelgen/WorldDimensions; method_48706 a method_48706 + m (Lnet/minecraft/core/HolderSet$Named;)Ljava/util/List; method_48707 a method_48707 + m (Lnet/minecraft/core/Registry;)Ljava/util/List; method_48708 a method_48708 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/tags/TagKey;)Ljava/util/Optional; getNonEmptyList a method_48709 + p 0 registry + p 1 key + m (Z)V setAllowCommands a method_48713 + p 1 allowCommands + m (ZLnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48714 a method_48714 + m ()Ljava/lang/String; getName b method_48715 + m (Ljava/lang/String;)V setSeed b method_48716 + p 1 seed + m (Z)V setGenerateStructures b method_48717 + p 1 generateStructures + m (ZLnet/minecraft/world/level/levelgen/WorldOptions;)Lnet/minecraft/world/level/levelgen/WorldOptions; method_48718 b method_48718 + m ()Ljava/lang/String; getTargetFolder c method_49703 + m (Ljava/lang/String;)Ljava/lang/String; findResultFolder c method_49704 + p 1 name + m (Z)V setBonusChest c method_48720 + p 1 bonusChest + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; getGameMode d method_48721 + m ()Lnet/minecraft/world/Difficulty; getDifficulty e method_48722 + m ()Z isHardcore f method_48723 + m ()Z isAllowCommands g method_48724 + m ()Ljava/lang/String; getSeed h method_48725 + m ()Z isGenerateStructures i method_48726 + m ()Z isBonusChest j method_48727 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext; getSettings k method_48728 + m ()Z isDebug l method_48729 + m ()Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry; getWorldType m method_48730 + m ()Lnet/minecraft/client/gui/screens/worldselection/PresetEditor; getPresetEditor n method_48731 + m ()Ljava/util/List; getNormalPresetList o method_48732 + m ()Ljava/util/List; getAltPresetList p method_48733 + m ()Lnet/minecraft/world/level/GameRules; getGameRules q method_48734 + m ()V updatePresetLists r method_48735 + m (Ljava/nio/file/Path;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/util/Optional;Ljava/util/OptionalLong;)V + p 1 savesFolder + p 2 settings + p 3 preset + p 4 seed + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode ftl$a net/minecraft/class_8100$class_4539 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; SURVIVAL a field_20624 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; HARDCORE b field_20625 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; CREATIVE c field_20626 + f Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; DEBUG d field_20627 + f Lnet/minecraft/world/level/GameType; gameType e field_20629 + f Lnet/minecraft/network/chat/Component; displayName f field_42224 + f Lnet/minecraft/network/chat/Component; info g field_42225 + f [Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; $VALUES h field_20630 + m ()Lnet/minecraft/network/chat/Component; getInfo a method_48736 + m ()[Lnet/minecraft/client/gui/screens/worldselection/WorldCreationUiState$SelectedGameMode; $values b method_36891 + m (Ljava/lang/String;ILjava/lang/String;Lnet/minecraft/world/level/GameType;)V + p 3 id + p 4 gameType + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldCreationUiState$WorldTypeEntry ftl$b net/minecraft/class_8100$class_8101 + f Lnet/minecraft/core/Holder; preset a comp_1238 + f Lnet/minecraft/network/chat/Component; CUSTOM_WORLD_DESCRIPTION b field_42226 + m ()Lnet/minecraft/network/chat/Component; describePreset a method_48737 + m (Lnet/minecraft/resources/ResourceKey;)Z method_48738 a method_48738 + m ()Z isAmplified b method_48739 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/network/chat/Component; method_48740 b method_48740 + m ()Lnet/minecraft/core/Holder; preset c comp_1238 + m (Lnet/minecraft/core/Holder;)V + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldOpenFlows ftm net/minecraft/class_7196 + f Lorg/slf4j/Logger; LOGGER a field_37913 + f Ljava/util/UUID; WORLD_PACK_ID b field_47592 + f Lnet/minecraft/client/Minecraft; minecraft c field_37914 + f Lnet/minecraft/world/level/storage/LevelStorageSource; levelSource d field_37915 + m ()Ljava/util/concurrent/CompletableFuture; promptBundledPackLoadFailure a method_43324 + m (Lnet/minecraft/server/WorldLoader$PackConfig;Lnet/minecraft/server/WorldLoader$WorldDataSupplier;Lnet/minecraft/server/WorldLoader$ResultFactory;)Ljava/lang/Object; loadWorldDataBlocking a method_45694 + p 1 packConfig + p 2 worldDataSupplier + p 3 resultFactory + m (Lnet/minecraft/server/WorldStem;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57772 a method_57772 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/client/gui/screens/worldselection/WorldOpenFlows$1Data;)Lcom/mojang/datafixers/util/Pair; method_45695 a method_45695 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_54609 a method_54609 + m (Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/server/packs/repository/PackRepository;)Lnet/minecraft/server/WorldStem; loadWorldStem a method_54610 + p 1 dynamic + p 2 safeMode + p 3 packRepository + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Lcom/mojang/datafixers/util/Pair; recreateWorldData a method_45696 + p 1 levelStorage + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/ReloadableServerResources;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/WorldData;)V createLevelFromExistingSettings a method_41889 + p 1 levelStorage + p 2 resources + p 3 registries + p 4 worldData + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;)V openWorldDoLoad a method_57773 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/client/resources/server/DownloadedPackSource;Ljava/lang/Runnable;Z)V method_57774 a method_57774 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldCheckWorldStemCompatibility a method_57775 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldCheckDiskSpace a method_57776 + p 1 levelStorage + p 2 worldStem + p 3 packSource + p 4 packRepository + p 5 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;Ljava/lang/Boolean;)V method_57777 a method_57777 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;)V method_57778 a method_57778 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;ZZ)V method_57779 a method_57779 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/serialization/Dynamic;ZLjava/lang/Runnable;)V openWorldLoadLevelStem a method_57780 + p 1 levelStorage + p 2 levelData + p 3 safeMode + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/world/level/storage/LevelSummary;Lcom/mojang/serialization/Dynamic;Ljava/lang/Runnable;)V openWorldCheckVersionCompatibility a method_57781 + p 1 levelStorage + p 2 levelSummary + p 3 levelData + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V openWorldLoadLevelData a method_57782 + p 1 levelStorage + p 2 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;Z)V method_57783 a method_57783 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;ZZ)V method_54617 a method_54617 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;ZLjava/lang/Runnable;Ljava/lang/Runnable;)V askForBackup a method_41898 + p 1 levelStorage + p 2 customized + p 3 loadLevel + p 4 onCancel + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Lcom/mojang/serialization/Lifecycle;Ljava/lang/Runnable;Z)V confirmWorldCreation a method_41892 + p 0 minecraft + p 1 screen + p 2 lifecycle + p 3 loadWorld + p 4 skipWarnings + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;)Ljava/util/concurrent/CompletableFuture; loadBundledResourcePack a method_55510 + p 1 packSource + p 2 level + m (Ljava/lang/Runnable;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/worldselection/CreateWorldScreen;Z)V method_41893 a method_41893 + m (Ljava/lang/String;)Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; createWorldAccess a method_41901 + p 1 levelName + m (Ljava/lang/String;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Ljava/util/function/Function;Lnet/minecraft/client/gui/screens/Screen;)V createFreshLevel a method_41895 + p 1 levelName + p 2 levelSettings + p 3 worldOptions + p 4 dimensionGetter + p 5 lastScreen + m (Ljava/lang/String;Ljava/lang/Runnable;)V openWorld a method_57784 + p 1 worldName + p 2 onFail + m (Ljava/lang/Throwable;)Ljava/lang/Void; method_57785 a method_57785 + m (Ljava/lang/Void;)Ljava/lang/Boolean; method_57786 a method_57786 + m (Ljava/util/function/Function;Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_45698 a method_45698 + m ()V method_54621 b method_54621 + m (Lcom/mojang/serialization/Dynamic;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_54622 b method_54622 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V openWorldLoadBundledResourcePack b method_57787 + p 1 levelStorage + p 2 worldStem + p 3 packRepository + p 4 onFail + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57788 b method_57788 + m (Ljava/lang/Throwable;)Ljava/util/concurrent/CompletionStage; method_57789 b method_57789 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/packs/repository/PackRepository;Ljava/lang/Runnable;)V method_57790 c method_57790 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Ljava/lang/Runnable;)V method_57791 c method_57791 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource;)V + p 1 minecraft + p 2 levelSource + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldOpenFlows$1Data ftm$a net/minecraft/class_7196$class_7750 + f Lnet/minecraft/world/level/LevelSettings; levelSettings a comp_1031 + f Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1032 + f Lnet/minecraft/core/Registry; existingDimensions c comp_1033 + m ()Lnet/minecraft/world/level/LevelSettings; levelSettings a comp_1031 + m ()Lnet/minecraft/world/level/levelgen/WorldOptions; options b comp_1032 + m ()Lnet/minecraft/core/Registry; existingDimensions c comp_1033 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/world/level/levelgen/WorldOptions;Lnet/minecraft/core/Registry;)V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList ftn net/minecraft/class_528 + f Lnet/minecraft/network/chat/Component; WORLD_LOCKED_TOOLTIP A field_26610 + f Lnet/minecraft/network/chat/Component; WORLD_REQUIRES_CONVERSION B field_34803 + f Lnet/minecraft/network/chat/Component; INCOMPATIBLE_VERSION_TOOLTIP C field_46897 + f Lnet/minecraft/network/chat/Component; WORLD_EXPERIMENTAL D field_45569 + f Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; screen E field_3237 + f Ljava/util/concurrent/CompletableFuture; pendingLevels F field_39739 + f Ljava/util/List; currentlyDisplayedLevels G field_39740 + f Ljava/lang/String; filter H field_39738 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList$LoadingHeader; loadingHeader I field_38994 + f Ljava/time/format/DateTimeFormatter; DATE_FORMAT a field_19132 + f Lnet/minecraft/resources/ResourceLocation; ERROR_HIGHLIGHTED_SPRITE m field_45570 + f Lnet/minecraft/resources/ResourceLocation; ERROR_SPRITE n field_45571 + f Lnet/minecraft/resources/ResourceLocation; MARKED_JOIN_HIGHLIGHTED_SPRITE o field_45572 + f Lnet/minecraft/resources/ResourceLocation; MARKED_JOIN_SPRITE p field_45573 + f Lnet/minecraft/resources/ResourceLocation; WARNING_HIGHLIGHTED_SPRITE q field_45574 + f Lnet/minecraft/resources/ResourceLocation; WARNING_SPRITE r field_45575 + f Lnet/minecraft/resources/ResourceLocation; JOIN_HIGHLIGHTED_SPRITE s field_45576 + f Lnet/minecraft/resources/ResourceLocation; JOIN_SPRITE u field_45577 + f Lorg/slf4j/Logger; LOGGER v field_3238 + f Lnet/minecraft/network/chat/Component; FROM_NEWER_TOOLTIP_1 w field_26606 + f Lnet/minecraft/network/chat/Component; FROM_NEWER_TOOLTIP_2 x field_26607 + f Lnet/minecraft/network/chat/Component; SNAPSHOT_TOOLTIP_1 y field_26608 + f Lnet/minecraft/network/chat/Component; SNAPSHOT_TOOLTIP_2 z field_26609 + m ()Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; getScreen J method_2752 + m ()Ljava/util/List; pollLevelsIgnoreErrors K method_44679 + m ()V reloadWorldList L method_44680 + m ()Ljava/util/concurrent/CompletableFuture; loadLevels M method_43462 + m ()V fillLoadingLevels N method_43463 + m ()V notifyListUpdated O method_43464 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList$Entry;)V setSelected a method_20157 + p 1 selected + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;)Lnet/minecraft/client/Minecraft; method_43452 a method_43452 + m (Ljava/lang/String;)V updateFilter a method_44677 + p 1 filter + m (Ljava/lang/String;Lnet/minecraft/world/level/storage/LevelSummary;)Z filterAccepts a method_43453 + p 1 filter + p 2 level + m (Ljava/lang/String;Ljava/util/List;)V fillLevels a method_43454 + p 1 filter + p 2 levels + m (Ljava/lang/Throwable;)Ljava/util/List; method_43455 a method_43455 + m (Ljava/util/List;)V handleNewLevels a method_44678 + p 1 levels + m ()Ljava/util/Optional; getSelectedOpt c method_20159 + m (Lnet/minecraft/network/chat/Component;)V handleLevelLoadFailure c method_43460 + p 1 exceptionMessage + m (Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen;Lnet/minecraft/client/Minecraft;IIIILjava/lang/String;Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;)V + p 1 screen + p 2 minecraft + p 3 width + p 4 height + p 5 y + p 6 itemHeight + p 7 filter + p 8 worlds + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$Entry ftn$a net/minecraft/class_528$class_7414 + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$LoadingHeader ftn$b net/minecraft/class_528$class_7415 + f Lnet/minecraft/network/chat/Component; LOADING_LABEL a field_38997 + f Lnet/minecraft/client/Minecraft; minecraft b field_38998 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/gui/screens/worldselection/WorldSelectionList$WorldListEntry ftn$c net/minecraft/class_528$class_4272 + f Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList; field_19135 a field_19135 + f I ICON_WIDTH b field_32435 + f I ICON_HEIGHT c field_32436 + f Lnet/minecraft/client/Minecraft; minecraft d field_19136 + f Lnet/minecraft/client/gui/screens/worldselection/SelectWorldScreen; screen e field_19137 + f Lnet/minecraft/world/level/storage/LevelSummary; summary f field_19138 + f Lnet/minecraft/client/gui/screens/FaviconTexture; icon g field_19141 + f Ljava/nio/file/Path; iconFile h field_19140 + f J lastClickTime i field_19142 + m (Lnet/minecraft/world/level/LevelSettings;Lnet/minecraft/client/gui/screens/worldselection/WorldCreationContext;Ljava/nio/file/Path;Z)V method_20165 a method_20165 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Z)V method_54628 a method_54628 + m ()Z canJoin b method_54629 + m (Z)V method_20170 b method_20170 + m ()V joinWorld c method_20164 + m ()V deleteWorld d method_20169 + m ()V doDeleteWorld e method_33685 + m ()V editWorld f method_20171 + m ()V recreateWorld h method_20173 + m ()Ljava/lang/String; getLevelName i method_35740 + m ()V validateIconFile j method_52265 + m ()V queueLoadScreen k method_29990 + m ()V loadIcon l method_52205 + m ()V method_20176 m method_20176 + m ()V method_54630 n method_54630 + m ()V method_54631 o method_54631 + m ()V method_54632 p method_54632 + m ()V method_20179 q method_20179 + m (Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;Lnet/minecraft/client/gui/screens/worldselection/WorldSelectionList;Lnet/minecraft/world/level/storage/LevelSummary;)V + p 2 worldSelectionList + p 3 summary +c net/minecraft/client/gui/screens/worldselection/package-info fto net/minecraft/class_6223 +c net/minecraft/client/gui/spectator/PlayerMenuItem ftp net/minecraft/class_530 + f Lcom/mojang/authlib/GameProfile; profile a field_3253 + f Ljava/util/function/Supplier; skin b field_45578 + f Lnet/minecraft/network/chat/Component; name c field_26611 + m (Lcom/mojang/authlib/GameProfile;)V + p 1 profile +c net/minecraft/client/gui/spectator/RootSpectatorMenuCategory ftq net/minecraft/class_534 + f Lnet/minecraft/network/chat/Component; PROMPT_TEXT a field_26612 + f Ljava/util/List; items b field_3266 + m ()V + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu ftr net/minecraft/class_531 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; EMPTY_SLOT a field_3260 + f Lnet/minecraft/resources/ResourceLocation; CLOSE_SPRITE b field_45579 + f Lnet/minecraft/resources/ResourceLocation; SCROLL_LEFT_SPRITE c field_45580 + f Lnet/minecraft/resources/ResourceLocation; SCROLL_RIGHT_SPRITE d field_45581 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; CLOSE_ITEM e field_3261 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_LEFT f field_3262 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_RIGHT_ENABLED g field_3256 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; SCROLL_RIGHT_DISABLED h field_3259 + f I MAX_PER_PAGE i field_32443 + f Lnet/minecraft/network/chat/Component; CLOSE_MENU_TEXT j field_26613 + f Lnet/minecraft/network/chat/Component; PREVIOUS_PAGE_TEXT k field_26614 + f Lnet/minecraft/network/chat/Component; NEXT_PAGE_TEXT l field_26615 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuListener; listener m field_3255 + f Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory; category n field_3258 + f I selectedSlot o field_3254 + f I page p field_3263 + m ()Ljava/util/List; getItems a method_2770 + m (I)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getItem a method_2777 + p 1 index + m (Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory;)V selectCategory a method_2778 + p 1 category + m ()Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getSelectedItem b method_2774 + m (I)V selectSlot b method_2771 + p 1 slot + m ()Lnet/minecraft/client/gui/spectator/SpectatorMenuCategory; getSelectedCategory c method_2776 + m ()V exit d method_2779 + m ()I getSelectedSlot e method_2773 + m ()Lnet/minecraft/client/gui/spectator/categories/SpectatorPage; getCurrentPage f method_2772 + m (Lnet/minecraft/client/gui/spectator/SpectatorMenuListener;)V + p 1 listener + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$1 ftr$1 net/minecraft/class_531$1 + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$CloseSpectatorItem ftr$a net/minecraft/class_531$class_532 + m ()V +c net/minecraft/client/gui/spectator/SpectatorMenu$ScrollMenuItem ftr$b net/minecraft/class_531$class_533 + f I direction a field_3264 + f Z enabled b field_3265 + m (IZ)V + p 1 direction + p 2 enabled +c net/minecraft/client/gui/spectator/SpectatorMenuCategory fts net/minecraft/class_535 + m ()Ljava/util/List; getItems a method_2780 + m ()Lnet/minecraft/network/chat/Component; getPrompt b method_2781 +c net/minecraft/client/gui/spectator/SpectatorMenuItem ftt net/minecraft/class_537 + m (Lnet/minecraft/client/gui/GuiGraphics;FI)V renderIcon a method_2784 + p 1 guiGraphics + p 2 shadeColor + p 3 alpha + m (Lnet/minecraft/client/gui/spectator/SpectatorMenu;)V selectItem a method_2783 + p 1 menu + m ()Lnet/minecraft/network/chat/Component; getName aU_ method_16892 + m ()Z isEnabled aV_ method_16893 +c net/minecraft/client/gui/spectator/SpectatorMenuListener ftu net/minecraft/class_536 + m (Lnet/minecraft/client/gui/spectator/SpectatorMenu;)V onSpectatorMenuClosed a method_2782 + p 1 menu +c net/minecraft/client/gui/spectator/categories/SpectatorPage ftv net/minecraft/class_539 + f I NO_SELECTION a field_32444 + f Ljava/util/List; items b field_3271 + f I selection c field_3269 + m ()I getSelectedSlot a method_2787 + m (I)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; getItem a method_2786 + p 1 index + m (Ljava/util/List;I)V + p 1 items + p 2 selection +c net/minecraft/client/gui/spectator/categories/TeleportToPlayerMenuCategory ftw net/minecraft/class_538 + f Lnet/minecraft/resources/ResourceLocation; TELEPORT_TO_PLAYER_SPRITE a field_45582 + f Ljava/util/Comparator; PROFILE_ORDER b field_3267 + f Lnet/minecraft/network/chat/Component; TELEPORT_TEXT c field_26616 + f Lnet/minecraft/network/chat/Component; TELEPORT_PROMPT d field_26617 + f Ljava/util/List; items e field_3268 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Lnet/minecraft/client/gui/spectator/SpectatorMenuItem; method_46520 a method_46520 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Z method_46521 b method_46521 + m (Lnet/minecraft/client/multiplayer/PlayerInfo;)Ljava/util/UUID; method_2785 c method_2785 + m ()V + m (Ljava/util/Collection;)V + p 1 players + m ()V +c net/minecraft/client/gui/spectator/categories/TeleportToTeamMenuCategory ftx net/minecraft/class_540 + f Lnet/minecraft/resources/ResourceLocation; TELEPORT_TO_TEAM_SPRITE a field_45583 + f Lnet/minecraft/network/chat/Component; TELEPORT_TEXT b field_26618 + f Lnet/minecraft/network/chat/Component; TELEPORT_PROMPT c field_26619 + f Ljava/util/List; items d field_3272 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/PlayerTeam;)Ljava/util/stream/Stream; method_47431 a method_47431 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/Scoreboard;)Ljava/util/List; createTeamEntries a method_47432 + p 0 minecraft + p 1 scoreboard + m ()V + m ()V +c net/minecraft/client/gui/spectator/categories/TeleportToTeamMenuCategory$TeamSelectionItem ftx$a net/minecraft/class_540$class_541 + f Lnet/minecraft/world/scores/PlayerTeam; team a field_3275 + f Ljava/util/function/Supplier; iconSkin b field_41115 + f Ljava/util/List; players c field_3274 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/scores/PlayerTeam;)Ljava/util/Optional; create a method_47433 + p 0 minecraft + p 1 team + m (Lnet/minecraft/world/scores/PlayerTeam;Ljava/util/List;Ljava/util/function/Supplier;)V + p 1 team + p 2 players + p 3 iconSkin +c net/minecraft/client/gui/spectator/categories/package-info fty net/minecraft/class_6224 +c net/minecraft/client/gui/spectator/package-info ftz net/minecraft/class_6225 +c net/minecraft/client/main/GameConfig fua net/minecraft/class_542 + f Lnet/minecraft/client/main/GameConfig$UserData; user a field_3278 + f Lcom/mojang/blaze3d/platform/DisplayData; display b field_3279 + f Lnet/minecraft/client/main/GameConfig$FolderData; location c field_3277 + f Lnet/minecraft/client/main/GameConfig$GameData; game d field_3280 + f Lnet/minecraft/client/main/GameConfig$QuickPlayData; quickPlay e field_44553 + m (Lnet/minecraft/client/main/GameConfig$UserData;Lcom/mojang/blaze3d/platform/DisplayData;Lnet/minecraft/client/main/GameConfig$FolderData;Lnet/minecraft/client/main/GameConfig$GameData;Lnet/minecraft/client/main/GameConfig$QuickPlayData;)V + p 1 user + p 2 display + p 3 location + p 4 game + p 5 quickPlay +c net/minecraft/client/main/GameConfig$FolderData fua$a net/minecraft/class_542$class_544 + f Ljava/io/File; gameDirectory a field_3287 + f Ljava/io/File; resourcePackDirectory b field_3290 + f Ljava/io/File; assetDirectory c field_3289 + f Ljava/lang/String; assetIndex d field_3288 + m ()Ljava/nio/file/Path; getExternalAssetSource a method_45701 + m (Ljava/io/File;Ljava/io/File;Ljava/io/File;Ljava/lang/String;)V + p 1 gameDirectory + p 2 resourcePackDirectory + p 3 assetDirectory + p 4 assetIndex +c net/minecraft/client/main/GameConfig$GameData fua$b net/minecraft/class_542$class_545 + f Z demo a field_3292 + f Ljava/lang/String; launchVersion b field_3293 + f Ljava/lang/String; versionType c field_3291 + f Z disableMultiplayer d field_25061 + f Z disableChat e field_25062 + m (ZLjava/lang/String;Ljava/lang/String;ZZ)V + p 1 demo + p 2 launchVersion + p 3 versionType + p 4 disableMultiplayer + p 5 disableChat +c net/minecraft/client/main/GameConfig$QuickPlayData fua$c net/minecraft/class_542$class_8495 + f Ljava/lang/String; path a comp_1476 + f Ljava/lang/String; singleplayer b comp_1477 + f Ljava/lang/String; multiplayer c comp_1478 + f Ljava/lang/String; realms d comp_1479 + m ()Z isEnabled a method_51257 + m ()Ljava/lang/String; path b comp_1476 + m ()Ljava/lang/String; singleplayer c comp_1477 + m ()Ljava/lang/String; multiplayer d comp_1478 + m ()Ljava/lang/String; realms e comp_1479 + m (Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/client/main/GameConfig$UserData fua$d net/minecraft/class_542$class_547 + f Lnet/minecraft/client/User; user a field_3299 + f Lcom/mojang/authlib/properties/PropertyMap; userProperties b field_3298 + f Lcom/mojang/authlib/properties/PropertyMap; profileProperties c field_3297 + f Ljava/net/Proxy; proxy d field_3296 + m (Lnet/minecraft/client/User;Lcom/mojang/authlib/properties/PropertyMap;Lcom/mojang/authlib/properties/PropertyMap;Ljava/net/Proxy;)V + p 1 user + p 2 userProperties + p 3 profileProperties + p 4 proxy +c net/minecraft/client/main/SilentInitException fub net/minecraft/class_4718 + m (Ljava/lang/String;)V + p 1 message + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/client/main/package-info fuc net/minecraft/class_6226 +c net/minecraft/client/model/AbstractZombieModel fud net/minecraft/class_3968 + m (Lnet/minecraft/world/entity/monster/Monster;)Z isAggressive a method_17790 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Monster;FFFFF)V setupAnim a method_17791 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AgeableHierarchicalModel fue net/minecraft/class_8184 + f F youngScaleFactor a field_42875 + f F bodyYOffset b field_42876 + m (FF)V + p 1 youngScaleFactor + p 2 bodyYOffset + m (FFLjava/util/function/Function;)V + p 1 youngScaleFactor + p 2 bodyYOffset + p 3 renderType +c net/minecraft/client/model/AgeableListModel fuf net/minecraft/class_4592 + f Z scaleHead a field_20915 + f F babyYHeadOffset b field_20916 + f F babyZHeadOffset f field_20917 + f F babyHeadScale g field_20918 + f F babyBodyScale h field_20919 + f F bodyYOffset i field_20920 + m ()Ljava/lang/Iterable; headParts a method_22946 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22947 a method_22947 + m ()Ljava/lang/Iterable; bodyParts b method_22948 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22949 b method_22949 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22950 c method_22950 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22951 d method_22951 + m (ZFF)V + p 1 scaleHead + p 2 babyYHeadOffset + p 3 babyZHeadOffset + m (ZFFFFF)V + p 1 scaleHead + p 2 babyYHeadOffset + p 3 babyZHeadOffset + p 4 babyHeadScale + p 5 babyBodyScale + p 6 bodyYOffset + m (Ljava/util/function/Function;ZFFFFF)V + p 1 renderType + p 2 scaleHead + p 3 babyYHeadOffset + p 4 babyZHeadOffset + p 5 babyHeadScale + p 6 babyBodyScale + p 7 bodyYOffset + m ()V +c net/minecraft/client/model/AllayModel fug net/minecraft/class_7308 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_38442 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_39459 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_38443 + f Lnet/minecraft/client/model/geom/ModelPart; right_arm g field_38444 + f Lnet/minecraft/client/model/geom/ModelPart; left_arm h field_38445 + f Lnet/minecraft/client/model/geom/ModelPart; right_wing i field_38446 + f Lnet/minecraft/client/model/geom/ModelPart; left_wing j field_38447 + f F FLYING_ANIMATION_X_ROT k field_38999 + f F MAX_HAND_HOLDING_ITEM_X_ROT_RAD l field_39000 + f F MIN_HAND_HOLDING_ITEM_X_ROT_RAD m field_39001 + m (Lnet/minecraft/world/entity/animal/allay/Allay;FFFFF)V setupAnim a method_42732 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_42733 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AnimationUtils fuh net/minecraft/class_4896 + m (Lnet/minecraft/client/model/geom/ModelPart;FF)V bobModelPart a method_29350 + p 0 modelPart + p 1 ageInTicks + p 2 multiplier + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;F)V bobArms a method_32789 + p 0 rightArm + p 1 leftArm + p 2 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/world/entity/LivingEntity;Z)V animateCrossbowCharge a method_25446 + p 0 rightArm + p 1 leftArm + p 2 livingEntity + p 3 rightHanded + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/world/entity/Mob;FF)V swingWeaponDown a method_29351 + p 0 rightArm + p 1 leftArm + p 2 mob + p 3 attackTime + p 4 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Z)V animateCrossbowHold a method_25447 + p 0 rightArm + p 1 leftArm + p 2 head + p 3 rightHanded + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;ZFF)V animateZombieArms a method_29352 + p 0 leftArm + p 1 rightArm + p 2 isAggressive + p 3 attackTime + p 4 ageInTicks + m ()V +c net/minecraft/client/model/ArmadilloModel fui net/minecraft/class_9082 + f F BABY_Y_OFFSET a field_47858 + f F MAX_DOWN_HEAD_ROTATION_EXTENT b field_47860 + f F MAX_UP_HEAD_ROTATION_EXTENT f field_47861 + f F MAX_WALK_ANIMATION_SPEED g field_47862 + f F WALK_ANIMATION_SCALE_FACTOR h field_47863 + f Ljava/lang/String; HEAD_CUBE i field_47864 + f Ljava/lang/String; RIGHT_EAR_CUBE j field_47865 + f Ljava/lang/String; LEFT_EAR_CUBE k field_47866 + f Lnet/minecraft/client/model/geom/ModelPart; root l field_47867 + f Lnet/minecraft/client/model/geom/ModelPart; body m field_47868 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg n field_47869 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg o field_47870 + f Lnet/minecraft/client/model/geom/ModelPart; cube p field_47871 + f Lnet/minecraft/client/model/geom/ModelPart; head q field_47872 + f Lnet/minecraft/client/model/geom/ModelPart; tail r field_47873 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;FFFFF)V setupAnim a method_55817 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_55818 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ArmedModel fuj net/minecraft/class_3881 + m (Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;)V translateToHand a method_2803 + p 1 side + p 2 poseStack +c net/minecraft/client/model/ArmorStandArmorModel fuk net/minecraft/class_548 + m (Lnet/minecraft/world/entity/decoration/ArmorStand;FFFFF)V setupAnim a method_17066 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32686 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ArmorStandModel ful net/minecraft/class_551 + f Lnet/minecraft/client/model/geom/ModelPart; shoulderStick A field_3313 + f Lnet/minecraft/client/model/geom/ModelPart; basePlate B field_3312 + f Ljava/lang/String; RIGHT_BODY_STICK a field_32445 + f Ljava/lang/String; LEFT_BODY_STICK b field_32446 + f Ljava/lang/String; SHOULDER_STICK w field_32447 + f Ljava/lang/String; BASE_PLATE x field_32448 + f Lnet/minecraft/client/model/geom/ModelPart; rightBodyStick y field_27391 + f Lnet/minecraft/client/model/geom/ModelPart; leftBodyStick z field_27392 + m (Lnet/minecraft/world/entity/decoration/ArmorStand;FFF)V prepareMobModel a method_24223 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31979 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/AxolotlModel fum net/minecraft/class_5772 + f F SWIMMING_LEG_XROT a field_32449 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_28373 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg f field_28374 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg g field_28375 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg h field_28376 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg i field_28377 + f Lnet/minecraft/client/model/geom/ModelPart; body j field_28378 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_28379 + f Lnet/minecraft/client/model/geom/ModelPart; topGills l field_28380 + f Lnet/minecraft/client/model/geom/ModelPart; leftGills m field_28381 + f Lnet/minecraft/client/model/geom/ModelPart; rightGills n field_28382 + m (F)V setupWaterHoveringAnimation a method_33297 + p 1 ageInTicks + m (FF)F lerpTo a method_37091 + p 1 start + p 2 end + m (FFF)F lerpTo a method_37092 + p 1 delta + p 2 start + p 3 end + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)V saveAnimationValues a method_37093 + p 1 axolotl + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;FF)V setupInitialAnimationValues a method_33292 + p 1 axolotl + p 2 netHeadYaw + p 3 headPitch + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;FFFFF)V setupAnim a method_33293 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)Lorg/joml/Vector3f; getRotationVector a method_37094 + p 1 part + m (Lnet/minecraft/client/model/geom/ModelPart;FFF)V lerpPart a method_37095 + p 1 part + p 2 xDelta + p 3 yDelta + p 4 zDelta + m (Lnet/minecraft/client/model/geom/ModelPart;Lorg/joml/Vector3f;)V setRotationFromVector a method_37096 + p 1 part + p 2 rotation + m (F)V setupPlayDeadAnimation b method_33298 + p 1 netHeadYaw + m (FF)V setupLayStillOnGroundAnimation b method_33291 + p 1 ageInTicks + p 2 netHeadYaw + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_33296 + m (FF)V setupGroundCrawlingAnimation c method_33294 + p 1 ageInTicks + p 2 netHeadYaw + m ()V applyMirrorLegRotations d method_33299 + m (FF)V setupSwimmingAnimation d method_33295 + p 1 ageInTicks + p 2 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BatModel fun net/minecraft/class_553 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27393 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3321 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3323 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing g field_3322 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_3320 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip i field_3319 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip j field_3324 + f Lnet/minecraft/client/model/geom/ModelPart; feet k field_47127 + m (F)V applyHeadRotation a method_54805 + p 1 headRotation + m (Lnet/minecraft/world/entity/ambient/Bat;FFFFF)V setupAnim a method_17069 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31980 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BeeModel fuo net/minecraft/class_4495 + f F BEE_Y_BASE a field_32450 + f Ljava/lang/String; BONE b field_32451 + f Ljava/lang/String; STINGER f field_32452 + f Ljava/lang/String; LEFT_ANTENNA g field_32453 + f Ljava/lang/String; RIGHT_ANTENNA h field_32454 + f Ljava/lang/String; FRONT_LEGS i field_32455 + f Ljava/lang/String; MIDDLE_LEGS j field_32456 + f Ljava/lang/String; BACK_LEGS k field_32457 + f Lnet/minecraft/client/model/geom/ModelPart; bone l field_20504 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing m field_20506 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing n field_20507 + f Lnet/minecraft/client/model/geom/ModelPart; frontLeg o field_20508 + f Lnet/minecraft/client/model/geom/ModelPart; midLeg p field_20509 + f Lnet/minecraft/client/model/geom/ModelPart; backLeg q field_20510 + f Lnet/minecraft/client/model/geom/ModelPart; stinger r field_20511 + f Lnet/minecraft/client/model/geom/ModelPart; leftAntenna s field_20512 + f Lnet/minecraft/client/model/geom/ModelPart; rightAntenna t field_20513 + f F rollAmount u field_20514 + m (Lnet/minecraft/world/entity/animal/Bee;FFF)V prepareMobModel a method_22111 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Bee;FFFFF)V setupAnim a method_22112 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31981 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BlazeModel fup net/minecraft/class_555 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27394 + f [Lnet/minecraft/client/model/geom/ModelPart; upperBodyParts b field_3328 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_27395 + m (I)Ljava/lang/String; getPartName a method_31983 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_31984 a method_31984 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31982 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BoatModel fuq net/minecraft/class_554 + f Ljava/lang/String; LEFT_PADDLE a field_32458 + f Ljava/lang/String; RIGHT_PADDLE b field_32459 + f Ljava/lang/String; WATER_PATCH f field_32460 + f Ljava/lang/String; BOTTOM g field_32461 + f Ljava/lang/String; BACK h field_32462 + f Ljava/lang/String; FRONT i field_32463 + f Ljava/lang/String; RIGHT j field_32464 + f Ljava/lang/String; LEFT k field_32465 + f Lnet/minecraft/client/model/geom/ModelPart; leftPaddle l field_27396 + f Lnet/minecraft/client/model/geom/ModelPart; rightPaddle m field_27397 + f Lnet/minecraft/client/model/geom/ModelPart; waterPatch n field_3326 + f Lcom/google/common/collect/ImmutableList; parts o field_20922 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel a method_31985 + m (Lnet/minecraft/world/entity/vehicle/Boat;FFFFF)V setupAnim a method_22952 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/vehicle/Boat;ILnet/minecraft/client/model/geom/ModelPart;F)V animatePaddle a method_2797 + p 0 boat + p 1 side + p 2 paddle + p 3 limbSwing + m (Lnet/minecraft/client/model/geom/ModelPart;)Lcom/google/common/collect/ImmutableList$Builder; createPartsBuilder a method_45702 + p 1 root + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createChildren a method_45703 + p 0 root + m ()Lcom/google/common/collect/ImmutableList; parts b method_22953 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BoggedModel fur net/minecraft/class_9321 + f Lnet/minecraft/client/model/geom/ModelPart; mushrooms a field_49563 + m (Lnet/minecraft/world/entity/monster/Bogged;FFF)V prepareMobModel a method_57792 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_57793 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/BookModel fus net/minecraft/class_557 + f Ljava/lang/String; LEFT_PAGES a field_32466 + f Ljava/lang/String; RIGHT_PAGES b field_32467 + f Ljava/lang/String; FLIP_PAGE_1 c field_32468 + f Ljava/lang/String; FLIP_PAGE_2 d field_32469 + f Lnet/minecraft/client/model/geom/ModelPart; root e field_27398 + f Lnet/minecraft/client/model/geom/ModelPart; leftLid f field_3336 + f Lnet/minecraft/client/model/geom/ModelPart; rightLid g field_3338 + f Lnet/minecraft/client/model/geom/ModelPart; leftPages h field_3337 + f Lnet/minecraft/client/model/geom/ModelPart; rightPages i field_3335 + f Lnet/minecraft/client/model/geom/ModelPart; flipPage1 j field_3334 + f Lnet/minecraft/client/model/geom/ModelPart; flipPage2 k field_3339 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31986 + m (FFFF)V setupAnim a method_17073 + p 1 time + p 2 rightPageFlipAmount + p 3 leftPageFlipAmount + p 4 bookOpenAmount + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V render b method_24184 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/BreezeModel fut net/minecraft/class_8973 + f F WIND_TOP_SPEED a field_47431 + f F WIND_MIDDLE_SPEED b field_47432 + f F WIND_BOTTOM_SPEED f field_47433 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_47434 + f Lnet/minecraft/client/model/geom/ModelPart; head h field_47435 + f Lnet/minecraft/client/model/geom/ModelPart; eyes i field_47874 + f Lnet/minecraft/client/model/geom/ModelPart; wind j field_47875 + f Lnet/minecraft/client/model/geom/ModelPart; windTop k field_47437 + f Lnet/minecraft/client/model/geom/ModelPart; windMid l field_47438 + f Lnet/minecraft/client/model/geom/ModelPart; windBottom m field_47439 + f Lnet/minecraft/client/model/geom/ModelPart; rods n field_47440 + m (II)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_55233 + p 0 width + p 1 height + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;FFFFF)V setupAnim a method_55232 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/ModelPart; head b method_55819 + m ()Lnet/minecraft/client/model/geom/ModelPart; eyes c method_55820 + m ()Lnet/minecraft/client/model/geom/ModelPart; rods d method_55821 + m ()Lnet/minecraft/client/model/geom/ModelPart; wind e method_55822 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CamelModel fuu net/minecraft/class_7751 + f F MAX_WALK_ANIMATION_SPEED a field_40459 + f F WALK_ANIMATION_SCALE_FACTOR b field_42227 + f F BABY_SCALE f field_43083 + f F BABY_Y_OFFSET g field_43084 + f Ljava/lang/String; SADDLE h field_40460 + f Ljava/lang/String; BRIDLE i field_40461 + f Ljava/lang/String; REINS j field_40462 + f Lnet/minecraft/client/model/geom/ModelPart; root k field_40463 + f Lnet/minecraft/client/model/geom/ModelPart; head l field_40464 + f [Lnet/minecraft/client/model/geom/ModelPart; saddleParts m field_40465 + f [Lnet/minecraft/client/model/geom/ModelPart; ridingParts n field_40466 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)V toggleInvisibleParts a method_45704 + p 1 entity + m (Lnet/minecraft/world/entity/animal/camel/Camel;FFF)V applyHeadRotation a method_45705 + p 1 entity + p 2 netHeadYaw + p 3 headPitch + p 4 ageInTicks + m (Lnet/minecraft/world/entity/animal/camel/Camel;FFFFF)V setupAnim a method_45706 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_45707 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CatModel fuv net/minecraft/class_3680 + f F lieDownAmount q field_16245 + f F lieDownAmountTail r field_16244 + f F relaxStateOneAmount s field_16243 + m (Lnet/minecraft/world/entity/animal/Cat;FFF)V prepareMobModel a method_17074 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Cat;FFFFF)V setupAnim a method_17075 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ChestBoatModel fuw net/minecraft/class_7752 + f Ljava/lang/String; CHEST_BOTTOM a field_40467 + f Ljava/lang/String; CHEST_LID b field_40468 + f Ljava/lang/String; CHEST_LOCK f field_40469 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel e method_45708 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/ChestRaftModel fux net/minecraft/class_7753 + f Ljava/lang/String; CHEST_BOTTOM a field_40470 + f Ljava/lang/String; CHEST_LID b field_40471 + f Ljava/lang/String; CHEST_LOCK f field_40472 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel a method_45709 + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/ChestedHorseModel fuy net/minecraft/class_559 + f Lnet/minecraft/client/model/geom/ModelPart; leftChest g field_27399 + f Lnet/minecraft/client/model/geom/ModelPart; rightChest h field_27400 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;FFFFF)V setupAnim a method_17076 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31987 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ChickenModel fuz net/minecraft/class_558 + f Ljava/lang/String; RED_THING a field_32471 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3344 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3346 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg g field_27401 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg h field_27402 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing i field_27403 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing j field_27404 + f Lnet/minecraft/client/model/geom/ModelPart; beak k field_3340 + f Lnet/minecraft/client/model/geom/ModelPart; redThing l field_3342 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31988 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CodModel fva net/minecraft/class_561 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27405 + f Lnet/minecraft/client/model/geom/ModelPart; tailFin b field_3350 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31989 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ColorableAgeableListModel fvb net/minecraft/class_4593 + f I color a field_52151 + m (I)V setColor a method_22955 + p 1 color + m ()V +c net/minecraft/client/model/ColorableHierarchicalModel fvc net/minecraft/class_4594 + f I color a field_52152 + m (I)V setColor a method_22956 + p 1 color + m ()V +c net/minecraft/client/model/CowModel fvd net/minecraft/class_560 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31990 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead d method_2800 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/CreeperModel fve net/minecraft/class_562 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27406 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3360 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27407 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27408 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27409 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27410 + f I Y_OFFSET j field_32472 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31991 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/DolphinModel fvf net/minecraft/class_889 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27411 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_4658 + f Lnet/minecraft/client/model/geom/ModelPart; tail f field_4657 + f Lnet/minecraft/client/model/geom/ModelPart; tailFin g field_4655 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31992 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/DrownedModel fvg net/minecraft/class_564 + m (Lnet/minecraft/world/entity/monster/Zombie;FFF)V prepareMobModel a method_17077 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Zombie;FFFFF)V setupAnim a method_17134 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_31993 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ElytraModel fvh net/minecraft/class_563 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing a field_27412 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing b field_3365 + m (Lnet/minecraft/world/entity/LivingEntity;FFFFF)V setupAnim a method_17079 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer c method_31994 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/EndermanModel fvi net/minecraft/class_566 + f Z carrying a field_3371 + f Z creepy b field_3370 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31995 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/EndermiteModel fvj net/minecraft/class_565 + f I BODY_COUNT a field_32473 + f [[I BODY_SIZES b field_3366 + f [[I BODY_TEXS f field_3369 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_27413 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyParts h field_3368 + m (I)Ljava/lang/String; createSegmentName a method_31997 + p 0 index + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31996 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/EntityModel fvk net/minecraft/class_583 + f F attackTime c field_3447 + f Z riding d field_3449 + f Z young e field_3448 + m (Lnet/minecraft/world/entity/Entity;FFF)V prepareMobModel a method_2816 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/Entity;FFFFF)V setupAnim a method_2819 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/EntityModel;)V copyPropertiesTo a method_17081 + p 1 otherModel + m ()V + m (Ljava/util/function/Function;)V + p 1 renderType +c net/minecraft/client/model/EvokerFangsModel fvl net/minecraft/class_568 + f Ljava/lang/String; BASE a field_32474 + f Ljava/lang/String; UPPER_JAW b field_32475 + f Ljava/lang/String; LOWER_JAW f field_32476 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_27414 + f Lnet/minecraft/client/model/geom/ModelPart; base h field_3374 + f Lnet/minecraft/client/model/geom/ModelPart; upperJaw i field_3376 + f Lnet/minecraft/client/model/geom/ModelPart; lowerJaw j field_3375 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_31998 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/FoxModel fvm net/minecraft/class_4041 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_18015 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_18019 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27415 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27416 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27417 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27418 + f Lnet/minecraft/client/model/geom/ModelPart; tail j field_18024 + f I LEG_SIZE k field_32477 + f F HEAD_HEIGHT l field_32478 + f F LEG_POS m field_32479 + f F legMotionPos n field_18025 + m (Lnet/minecraft/world/entity/animal/Fox;FFF)V prepareMobModel a method_18330 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Fox;FFFFF)V setupAnim a method_18332 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_31999 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/FrogModel fvn net/minecraft/class_7198 + f F MAX_WALK_ANIMATION_SPEED a field_39193 + f F MAX_SWIM_ANIMATION_SPEED b field_42228 + f F WALK_ANIMATION_SCALE_FACTOR f field_42229 + f Lnet/minecraft/client/model/geom/ModelPart; root g field_37919 + f Lnet/minecraft/client/model/geom/ModelPart; body h field_37920 + f Lnet/minecraft/client/model/geom/ModelPart; head i field_37921 + f Lnet/minecraft/client/model/geom/ModelPart; eyes j field_37922 + f Lnet/minecraft/client/model/geom/ModelPart; tongue k field_37923 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm l field_37924 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm m field_37925 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg n field_37926 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg o field_37927 + f Lnet/minecraft/client/model/geom/ModelPart; croakingBody p field_38448 + m (Lnet/minecraft/world/entity/animal/frog/Frog;FFFFF)V setupAnim a method_41907 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_41905 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GhastModel fvo net/minecraft/class_567 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27419 + f [Lnet/minecraft/client/model/geom/ModelPart; tentacles b field_3372 + m (I)Ljava/lang/String; createTentacleName a method_32001 + p 0 index + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32000 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GiantZombieModel fvp net/minecraft/class_3969 + m (Lnet/minecraft/world/entity/monster/Giant;)Z isAggressive a method_17792 + p 1 entity + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GoatModel fvq net/minecraft/class_6227 + m (Lnet/minecraft/world/entity/animal/goat/Goat;FFFFF)V setupAnim a method_35741 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_35742 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/GuardianModel fvr net/minecraft/class_570 + f [F SPIKE_X_ROT a field_17131 + f [F SPIKE_Y_ROT b field_17132 + f [F SPIKE_Z_ROT f field_17133 + f [F SPIKE_X g field_17134 + f [F SPIKE_Y h field_17135 + f [F SPIKE_Z i field_17136 + f Ljava/lang/String; EYE j field_32480 + f Ljava/lang/String; TAIL_0 k field_32481 + f Ljava/lang/String; TAIL_1 l field_32482 + f Ljava/lang/String; TAIL_2 m field_32483 + f Lnet/minecraft/client/model/geom/ModelPart; root n field_27420 + f Lnet/minecraft/client/model/geom/ModelPart; head o field_3379 + f Lnet/minecraft/client/model/geom/ModelPart; eye p field_3381 + f [Lnet/minecraft/client/model/geom/ModelPart; spikeParts q field_3380 + f [Lnet/minecraft/client/model/geom/ModelPart; tailParts r field_3378 + m (FF)V setupSpikes a method_24185 + p 1 ageInTicks + m (I)Ljava/lang/String; createSpikeName a method_32003 + p 0 index + m (IFF)F getSpikeOffset a method_32004 + p 0 index + p 1 ageInTicks + m (Lnet/minecraft/world/entity/monster/Guardian;FFFFF)V setupAnim a method_17083 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32002 + m (IFF)F getSpikeX b method_32005 + p 0 index + p 1 ageInTicks + m (IFF)F getSpikeY c method_32006 + p 0 index + p 1 ageInTicks + m (IFF)F getSpikeZ d method_32007 + p 0 index + p 1 ageInTicks + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/HeadedModel fvs net/minecraft/class_3882 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead d method_2838 +c net/minecraft/client/model/HierarchicalModel fvt net/minecraft/class_5597 + f Lorg/joml/Vector3f; ANIMATION_VECTOR_CACHE a field_39195 + m ()Lnet/minecraft/client/model/geom/ModelPart; root a method_32008 + m (Lnet/minecraft/world/entity/AnimationState;Lnet/minecraft/client/animation/AnimationDefinition;F)V animate a method_43781 + p 1 animationState + p 2 animationDefinition + p 3 ageInTicks + m (Lnet/minecraft/world/entity/AnimationState;Lnet/minecraft/client/animation/AnimationDefinition;FF)V animate a method_43782 + p 1 animationState + p 2 animationDefinition + p 3 ageInTicks + p 4 speed + m (Lnet/minecraft/client/animation/AnimationDefinition;)V applyStatic a method_52185 + p 1 animationDefinition + m (Lnet/minecraft/client/animation/AnimationDefinition;FFFF)V animateWalk a method_48741 + p 1 animationDefinition + p 2 limbSwing + p 3 limbSwingAmount + p 4 maxAnimationSpeed + p 5 animationScaleFactor + m (Lnet/minecraft/client/animation/AnimationDefinition;Lnet/minecraft/world/entity/AnimationState;)V method_43783 a method_43783 + m (Ljava/lang/String;)Ljava/util/Optional; getAnyDescendantWithName a method_41909 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/geom/ModelPart; method_41910 a method_41910 + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)Z method_41911 b method_41911 + m ()V + m (Ljava/util/function/Function;)V + p 1 renderType + m ()V +c net/minecraft/client/model/HoglinModel fvu net/minecraft/class_4791 + f F DEFAULT_HEAD_X_ROT a field_32484 + f F ATTACK_HEAD_X_ROT_END b field_32485 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_22227 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar g field_22228 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar h field_22229 + f Lnet/minecraft/client/model/geom/ModelPart; body i field_22230 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg j field_27421 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg k field_27422 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg l field_27423 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg m field_27424 + f Lnet/minecraft/client/model/geom/ModelPart; mane n field_25484 + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_24461 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32009 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HorseModel fvv net/minecraft/class_549 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg A field_27428 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindBabyLeg B field_27429 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindBabyLeg C field_27430 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontBabyLeg D field_27431 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontBabyLeg E field_27432 + f Lnet/minecraft/client/model/geom/ModelPart; tail F field_3300 + f [Lnet/minecraft/client/model/geom/ModelPart; saddleParts G field_3304 + f [Lnet/minecraft/client/model/geom/ModelPart; ridingParts H field_3301 + f Ljava/lang/String; HEAD_PARTS a field_32486 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_3305 + f Lnet/minecraft/client/model/geom/ModelPart; headParts f field_3307 + f F DEG_125 g field_32487 + f F DEG_60 h field_32488 + f F DEG_45 i field_32489 + f F DEG_30 j field_32490 + f F DEG_15 k field_32491 + f Ljava/lang/String; LEFT_HIND_BABY_LEG l field_32492 + f Ljava/lang/String; RIGHT_HIND_BABY_LEG m field_32493 + f Ljava/lang/String; LEFT_FRONT_BABY_LEG n field_32494 + f Ljava/lang/String; RIGHT_FRONT_BABY_LEG o field_32495 + f Ljava/lang/String; SADDLE p field_32496 + f Ljava/lang/String; LEFT_SADDLE_MOUTH q field_32497 + f Ljava/lang/String; LEFT_SADDLE_LINE r field_32498 + f Ljava/lang/String; RIGHT_SADDLE_MOUTH s field_32499 + f Ljava/lang/String; RIGHT_SADDLE_LINE t field_32500 + f Ljava/lang/String; HEAD_SADDLE u field_32501 + f Ljava/lang/String; MOUTH_SADDLE_WRAP w field_32502 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg x field_27425 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg y field_27426 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg z field_27427 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;FFF)V prepareMobModel a method_17084 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;FFFFF)V setupAnim a method_17085 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32010 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HumanoidArmorModel fvw net/minecraft/class_8136 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyLayer a method_49032 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/HumanoidModel fvx net/minecraft/class_572 + f F HORIZONTAL_SHIELD_MOVEMENT_LIMIT A field_46724 + f F DUCK_WALK_ROTATION a field_42512 + f F SPYGLASS_ARM_ROT_Y b field_32503 + f F OVERLAY_SCALE f field_32505 + f F HAT_OVERLAY_SCALE g field_32506 + f F LEGGINGS_OVERLAY_SCALE h field_42513 + f F TOOT_HORN_XROT_BASE i field_39069 + f F TOOT_HORN_YROT_BASE j field_39070 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_3398 + f Lnet/minecraft/client/model/geom/ModelPart; hat l field_3394 + c The Biped's Headwear. Used for the outer layer of player skins. + f Lnet/minecraft/client/model/geom/ModelPart; body m field_3391 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm n field_3401 + c The Biped's Right Arm + f Lnet/minecraft/client/model/geom/ModelPart; leftArm o field_27433 + c The Biped's Left Arm + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg p field_3392 + c The Biped's Right Leg + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg q field_3397 + c The Biped's Left Leg + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; leftArmPose r field_3399 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; rightArmPose s field_3395 + f Z crouching t field_3400 + f F swimAmount u field_3396 + f F SPYGLASS_ARM_ROT_X w field_32504 + f F SPYGLASS_ARM_CROUCH_ROT_X x field_32507 + f F HIGHEST_SHIELD_BLOCKING_ANGLE y field_46576 + f F LOWEST_SHIELD_BLOCKING_ANGLE z field_46577 + m (F)F quadraticArmUpdate a method_2807 + p 1 limbSwing + m (FFF)F rotlerpRad a method_2804 + p 1 angle + p 2 maxAngle + p 3 mul + m (Lnet/minecraft/world/entity/HumanoidArm;)Lnet/minecraft/client/model/geom/ModelPart; getArm a method_2808 + p 1 side + m (Lnet/minecraft/world/entity/LivingEntity;)V poseRightArm a method_30154 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)V setupAttackAnimation a method_29353 + p 1 livingEntity + p 2 ageInTicks + m (Lnet/minecraft/world/entity/LivingEntity;FFF)V prepareMobModel a method_17086 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FFFFF)V setupAnim a method_17087 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/HumanoidModel;)V copyPropertiesTo a method_2818 + p 1 model + m (Lnet/minecraft/client/model/geom/ModelPart;Z)V poseBlockingArm a method_54131 + p 1 arm + p 2 isRightArm + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;F)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32011 + p 0 cubeDeformation + p 1 yOffset + m (Lnet/minecraft/world/entity/LivingEntity;)V poseLeftArm b method_30155 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;)Lnet/minecraft/world/entity/HumanoidArm; getAttackArm c method_2806 + p 1 entity + m (Z)V setAllVisible c_ method_2805 + p 1 visible + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m (Lnet/minecraft/client/model/geom/ModelPart;Ljava/util/function/Function;)V + p 1 root + p 2 renderType +c net/minecraft/client/model/HumanoidModel$ArmPose fvx$a net/minecraft/class_572$class_573 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; EMPTY a field_3409 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; ITEM b field_3410 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BLOCK c field_3406 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BOW_AND_ARROW d field_3403 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; THROW_SPEAR e field_3407 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; CROSSBOW_CHARGE f field_3405 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; CROSSBOW_HOLD g field_3408 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; SPYGLASS h field_27434 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; TOOT_HORN i field_39071 + f Lnet/minecraft/client/model/HumanoidModel$ArmPose; BRUSH j field_42877 + f Z twoHanded k field_25722 + f [Lnet/minecraft/client/model/HumanoidModel$ArmPose; $VALUES l field_3404 + m ()Z isTwoHanded a method_30156 + m ()[Lnet/minecraft/client/model/HumanoidModel$ArmPose; $values b method_36892 + m (Ljava/lang/String;IZ)V + p 3 twoHanded + m ()V +c net/minecraft/client/model/IllagerModel fvy net/minecraft/class_575 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27435 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3422 + f Lnet/minecraft/client/model/geom/ModelPart; hat f field_3419 + f Lnet/minecraft/client/model/geom/ModelPart; arms g field_3423 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg h field_3420 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg i field_3418 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm j field_3426 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm k field_3417 + m (Lnet/minecraft/world/entity/HumanoidArm;)Lnet/minecraft/client/model/geom/ModelPart; getArm a method_2813 + p 1 arm + m (Lnet/minecraft/world/entity/monster/AbstractIllager;FFFFF)V setupAnim a method_17094 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32012 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHat c method_2812 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/IronGolemModel fvz net/minecraft/class_574 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27436 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3415 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm f field_27437 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm g field_27438 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg h field_27439 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg i field_27440 + m (Lnet/minecraft/world/entity/animal/IronGolem;FFF)V prepareMobModel a method_17095 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/IronGolem;FFFFF)V setupAnim a method_17097 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32013 + m ()Lnet/minecraft/client/model/geom/ModelPart; getFlowerHoldingArm c method_2809 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LavaSlimeModel fwa net/minecraft/class_576 + f I SEGMENT_COUNT a field_32508 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27441 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyCubes f field_3427 + m (I)Ljava/lang/String; getSegmentName a method_32015 + p 0 index + m (Lnet/minecraft/world/entity/monster/Slime;FFF)V prepareMobModel a method_17098 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Slime;FFFFF)V setupAnim a method_22958 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32016 a method_32016 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32014 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LeashKnotModel fwb net/minecraft/class_579 + f Ljava/lang/String; KNOT a field_32509 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27442 + f Lnet/minecraft/client/model/geom/ModelPart; knot f field_3431 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32017 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ListModel fwc net/minecraft/class_4595 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22961 a method_22961 + m ()Ljava/lang/Iterable; parts d method_22960 + m ()V + m (Ljava/util/function/Function;)V +c net/minecraft/client/model/LlamaModel fwd net/minecraft/class_578 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_27443 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_27444 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27445 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27446 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27447 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27448 + f Lnet/minecraft/client/model/geom/ModelPart; rightChest j field_27449 + f Lnet/minecraft/client/model/geom/ModelPart; leftChest k field_27450 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;FFFFF)V setupAnim a method_22962 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22963 a method_22963 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32018 + p 0 cubeDeformation + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22964 b method_22964 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/LlamaSpitModel fwe net/minecraft/class_581 + f Ljava/lang/String; MAIN a field_32510 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27451 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32019 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/MinecartModel fwf net/minecraft/class_580 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27452 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32020 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/Model fwg net/minecraft/class_3879 + f Ljava/util/function/Function; renderType v field_21343 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; renderType a method_23500 + p 1 location + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderToBuffer a method_60879 + p 1 poseStack + p 2 vertexConsumer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V renderToBuffer a method_2828 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Ljava/util/function/Function;)V + p 1 renderType +c net/minecraft/client/model/ModelUtils fwh net/minecraft/class_4496 + m (FFF)F rotlerpRad a method_22114 + p 0 min + p 1 max + p 2 delta + m ()V +c net/minecraft/client/model/OcelotModel fwi net/minecraft/class_582 + f F BODY_WALK_Z A field_32512 + f F TAIL_1_WALK_Y B field_32513 + f F TAIL_1_WALK_Z C field_32514 + f F TAIL_2_WALK_Y D field_32515 + f F TAIL_2_WALK_Z E field_32516 + f F FRONT_LEG_Z F field_32517 + f Ljava/lang/String; TAIL_1 G field_32518 + f Ljava/lang/String; TAIL_2 H field_32519 + f I SITTING_STATE a field_32520 + f F BACK_LEG_Y b field_32521 + f F BACK_LEG_Z f field_32522 + f F FRONT_LEG_Y g field_32523 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg h field_27454 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg i field_27455 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_27456 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg k field_27457 + f Lnet/minecraft/client/model/geom/ModelPart; tail1 l field_3436 + f Lnet/minecraft/client/model/geom/ModelPart; tail2 m field_3442 + f Lnet/minecraft/client/model/geom/ModelPart; head n field_3435 + f Lnet/minecraft/client/model/geom/ModelPart; body o field_3437 + f I state p field_3434 + f I CROUCH_STATE q field_32524 + f I WALK_STATE r field_32525 + f I SPRINT_STATE s field_32526 + f F XO t field_32527 + f F YO u field_32528 + f F ZO w field_32529 + f F HEAD_WALK_Y x field_32530 + f F HEAD_WALK_Z y field_32531 + f F BODY_WALK_Y z field_32532 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32021 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PandaModel fwj net/minecraft/class_586 + f F sitAmount j field_3470 + f F lieOnBackAmount k field_3469 + f F rollAmount l field_3468 + m (Lnet/minecraft/world/entity/animal/Panda;FFF)V prepareMobModel a method_17102 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Panda;FFFFF)V setupAnim a method_17103 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32022 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ParrotModel fwk net/minecraft/class_584 + f Ljava/lang/String; FEATHER a field_32533 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27458 + f Lnet/minecraft/client/model/geom/ModelPart; body f field_3458 + f Lnet/minecraft/client/model/geom/ModelPart; tail g field_3460 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_27459 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing i field_27460 + f Lnet/minecraft/client/model/geom/ModelPart; head j field_3452 + f Lnet/minecraft/client/model/geom/ModelPart; feather k field_3456 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg l field_27461 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg m field_27462 + m (Lnet/minecraft/world/entity/animal/Parrot;)Lnet/minecraft/client/model/ParrotModel$State; getState a method_17107 + p 0 parrot + m (Lnet/minecraft/world/entity/animal/Parrot;FFF)V prepareMobModel a method_17108 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Parrot;FFFFF)V setupAnim a method_17112 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFFFFI)V renderOnShoulder a method_17106 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 limbSwing + p 6 limbSwingAmount + p 7 netHeadYaw + p 8 headPitch + p 9 tickCount + m (Lnet/minecraft/client/model/ParrotModel$State;)V prepare a method_17110 + p 1 state + m (Lnet/minecraft/client/model/ParrotModel$State;IFFFFF)V setupAnim a method_17111 + p 1 state + p 2 tickCount + p 3 limbSwing + p 4 limbSwingAmount + p 5 ageInTicks + p 6 netHeadYaw + p 7 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32023 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ParrotModel$State fwk$a net/minecraft/class_584$class_585 + f Lnet/minecraft/client/model/ParrotModel$State; FLYING a field_3462 + f Lnet/minecraft/client/model/ParrotModel$State; STANDING b field_3465 + f Lnet/minecraft/client/model/ParrotModel$State; SITTING c field_3466 + f Lnet/minecraft/client/model/ParrotModel$State; PARTY d field_3463 + f Lnet/minecraft/client/model/ParrotModel$State; ON_SHOULDER e field_3464 + f [Lnet/minecraft/client/model/ParrotModel$State; $VALUES f field_3467 + m ()[Lnet/minecraft/client/model/ParrotModel$State; $values a method_36893 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/model/PhantomModel fwl net/minecraft/class_588 + f Ljava/lang/String; TAIL_BASE a field_32534 + f Ljava/lang/String; TAIL_TIP b field_32535 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_27463 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingBase g field_3477 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip h field_3476 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingBase i field_3474 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip j field_3472 + f Lnet/minecraft/client/model/geom/ModelPart; tailBase k field_3471 + f Lnet/minecraft/client/model/geom/ModelPart; tailTip l field_3473 + m (Lnet/minecraft/world/entity/monster/Phantom;FFFFF)V setupAnim a method_33686 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32024 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PigModel fwm net/minecraft/class_587 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32025 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PiglinHeadModel fwn net/minecraft/class_7946 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_41379 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar b field_41380 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar c field_41381 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createHeadModel a method_47655 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PiglinModel fwo net/minecraft/class_4840 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar A field_27465 + f Lnet/minecraft/client/model/geom/PartPose; bodyDefault B field_25634 + f Lnet/minecraft/client/model/geom/PartPose; headDefault C field_25635 + f Lnet/minecraft/client/model/geom/PartPose; leftArmDefault D field_25632 + f Lnet/minecraft/client/model/geom/PartPose; rightArmDefault E field_25633 + f Lnet/minecraft/client/model/geom/ModelPart; rightEar a field_27464 + m (Lnet/minecraft/world/entity/Mob;)V holdWeaponHigh a method_29354 + p 1 mob + m (Lnet/minecraft/world/entity/Mob;F)V setupAttackAnimation a method_29355 + p 1 livingEntity + p 2 ageInTicks + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_24803 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32026 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;Lnet/minecraft/client/model/geom/builders/MeshDefinition;)V addHead a method_47656 + p 0 cubeDeformation + p 1 mesh + m (Lnet/minecraft/client/model/geom/ModelPart;)V +c net/minecraft/client/model/PlayerModel fwp net/minecraft/class_591 + f Ljava/lang/String; CLOAK A field_32539 + f Ljava/lang/String; LEFT_SLEEVE B field_32540 + f Ljava/lang/String; RIGHT_SLEEVE C field_32541 + f Ljava/lang/String; LEFT_PANTS D field_32536 + f Ljava/lang/String; RIGHT_PANTS E field_32537 + f Ljava/util/List; parts F field_27466 + f Lnet/minecraft/client/model/geom/ModelPart; cloak G field_3485 + f Lnet/minecraft/client/model/geom/ModelPart; ear H field_3481 + f Z slim I field_3480 + f Ljava/lang/String; EAR a field_32538 + f Lnet/minecraft/client/model/geom/ModelPart; leftSleeve b field_3484 + f Lnet/minecraft/client/model/geom/ModelPart; rightSleeve w field_3486 + f Lnet/minecraft/client/model/geom/ModelPart; leftPants x field_3482 + f Lnet/minecraft/client/model/geom/ModelPart; rightPants y field_3479 + f Lnet/minecraft/client/model/geom/ModelPart; jacket z field_3483 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/model/geom/ModelPart; getRandomModelPart a method_22697 + p 1 random + m (Lnet/minecraft/client/model/geom/ModelPart;)Z method_32027 a method_32027 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;Z)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMesh a method_32028 + p 0 cubeDeformation + p 1 slim + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderEars b method_2824 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V renderCloak c method_2823 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lnet/minecraft/client/model/geom/ModelPart;Z)V + p 1 root + p 2 slim +c net/minecraft/client/model/PolarBearModel fwq net/minecraft/class_590 + m (Lnet/minecraft/world/entity/animal/PolarBear;FFFFF)V setupAnim a method_17114 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32029 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishBigModel fwr net/minecraft/class_592 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27467 + f Lnet/minecraft/client/model/geom/ModelPart; leftBlueFin b field_27468 + f Lnet/minecraft/client/model/geom/ModelPart; rightBlueFin f field_27469 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32030 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishMidModel fws net/minecraft/class_595 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27470 + f Lnet/minecraft/client/model/geom/ModelPart; leftBlueFin b field_27471 + f Lnet/minecraft/client/model/geom/ModelPart; rightBlueFin f field_27472 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32031 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/PufferfishSmallModel fwt net/minecraft/class_594 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27473 + f Lnet/minecraft/client/model/geom/ModelPart; leftFin b field_27474 + f Lnet/minecraft/client/model/geom/ModelPart; rightFin f field_27475 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32032 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/QuadrupedModel fwu net/minecraft/class_597 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3535 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_3538 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg f field_27476 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg g field_27477 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg h field_27478 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg i field_27479 + m (ILnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyMesh a method_32033 + p 0 yOffset + p 1 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;ZFFFFI)V + p 1 root + p 2 scaleHead + p 3 babyYHeadOffset + p 4 babyZHeadOffset + p 5 babyHeadScale + p 6 babyBodyScale + p 7 bodyYOffset +c net/minecraft/client/model/RabbitModel fwv net/minecraft/class_596 + f F REAR_JUMP_ANGLE a field_32542 + f F FRONT_JUMP_ANGLE b field_32543 + f Ljava/lang/String; LEFT_HAUNCH f field_32544 + f Ljava/lang/String; RIGHT_HAUNCH g field_32545 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearFoot h field_27480 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearFoot i field_27481 + f Lnet/minecraft/client/model/geom/ModelPart; leftHaunch j field_27482 + f Lnet/minecraft/client/model/geom/ModelPart; rightHaunch k field_27483 + f Lnet/minecraft/client/model/geom/ModelPart; body l field_3528 + c The Rabbit's Body + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg m field_27484 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg n field_27485 + f Lnet/minecraft/client/model/geom/ModelPart; head o field_27486 + c The Rabbit's Head + f Lnet/minecraft/client/model/geom/ModelPart; rightEar p field_27487 + f Lnet/minecraft/client/model/geom/ModelPart; leftEar q field_27488 + f Lnet/minecraft/client/model/geom/ModelPart; tail r field_3524 + c The Rabbit's Tail + f Lnet/minecraft/client/model/geom/ModelPart; nose s field_3530 + c The Rabbit's Nose + f F jumpRotation t field_3531 + f F NEW_SCALE u field_32546 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32034 + m (Lnet/minecraft/world/entity/animal/Rabbit;FFF)V prepareMobModel a method_17115 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Rabbit;FFFFF)V setupAnim a method_17117 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22966 a method_22966 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22967 b method_22967 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIILnet/minecraft/client/model/geom/ModelPart;)V method_22968 c method_22968 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/RaftModel fww net/minecraft/class_7754 + f Ljava/lang/String; LEFT_PADDLE a field_40473 + f Ljava/lang/String; RIGHT_PADDLE b field_40474 + f Ljava/lang/String; BOTTOM f field_40475 + f Lnet/minecraft/client/model/geom/ModelPart; leftPaddle g field_40476 + f Lnet/minecraft/client/model/geom/ModelPart; rightPaddle h field_40477 + f Lcom/google/common/collect/ImmutableList; parts i field_40478 + m (Lnet/minecraft/world/entity/vehicle/Boat;FFFFF)V setupAnim a method_45711 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/vehicle/Boat;ILnet/minecraft/client/model/geom/ModelPart;F)V animatePaddle a method_45712 + p 0 boat + p 1 side + p 2 paddle + p 3 limbSwing + m (Lnet/minecraft/client/model/geom/ModelPart;)Lcom/google/common/collect/ImmutableList$Builder; createPartsBuilder a method_45710 + p 1 root + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createChildren a method_45713 + p 0 root + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyModel b method_45714 + m ()Lcom/google/common/collect/ImmutableList; parts c method_45715 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/RavagerModel fwx net/minecraft/class_571 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27489 + f Lnet/minecraft/client/model/geom/ModelPart; head b field_3386 + f Lnet/minecraft/client/model/geom/ModelPart; mouth f field_3388 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg g field_27490 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg h field_27491 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg i field_27492 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_27493 + f Lnet/minecraft/client/model/geom/ModelPart; neck k field_3384 + m (Lnet/minecraft/world/entity/monster/Ravager;FFF)V prepareMobModel a method_17089 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Ravager;FFFFF)V setupAnim a method_17091 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32035 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SalmonModel fwy net/minecraft/class_599 + f Ljava/lang/String; BODY_FRONT a field_32547 + f Ljava/lang/String; BODY_BACK b field_32548 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_27494 + f Lnet/minecraft/client/model/geom/ModelPart; bodyBack g field_3548 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32036 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SheepFurModel fwz net/minecraft/class_598 + f F headXRot j field_3541 + m (Lnet/minecraft/world/entity/animal/Sheep;FFF)V prepareMobModel a method_17118 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Sheep;FFFFF)V setupAnim a method_17119 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createFurLayer c method_32037 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SheepModel fxa net/minecraft/class_601 + f F headXRot j field_3552 + m (Lnet/minecraft/world/entity/animal/Sheep;FFF)V prepareMobModel a method_17120 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Sheep;FFFFF)V setupAnim a method_17121 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32038 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShieldModel fxb net/minecraft/class_600 + f Ljava/lang/String; PLATE a field_32549 + f Ljava/lang/String; HANDLE b field_32550 + f I SHIELD_WIDTH c field_32551 + f I SHIELD_HEIGHT d field_32552 + f Lnet/minecraft/client/model/geom/ModelPart; root e field_27495 + f Lnet/minecraft/client/model/geom/ModelPart; plate f field_3550 + f Lnet/minecraft/client/model/geom/ModelPart; handle g field_3551 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32039 + m ()Lnet/minecraft/client/model/geom/ModelPart; plate b method_23774 + m ()Lnet/minecraft/client/model/geom/ModelPart; handle c method_23775 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShulkerBulletModel fxc net/minecraft/class_603 + f Ljava/lang/String; MAIN a field_32553 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27496 + f Lnet/minecraft/client/model/geom/ModelPart; main f field_3556 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32040 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ShulkerModel fxd net/minecraft/class_602 + f Ljava/lang/String; LID a field_32554 + f Ljava/lang/String; BASE b field_32555 + f Lnet/minecraft/client/model/geom/ModelPart; base f field_3553 + f Lnet/minecraft/client/model/geom/ModelPart; lid g field_3555 + f Lnet/minecraft/client/model/geom/ModelPart; head h field_3554 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32041 + m (Lnet/minecraft/world/entity/monster/Shulker;FFFFF)V setupAnim a method_17122 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/ModelPart; getLid b method_2829 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead c method_2830 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SilverfishModel fxe net/minecraft/class_604 + f I BODY_COUNT a field_32556 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27497 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyParts f field_3560 + f [Lnet/minecraft/client/model/geom/ModelPart; bodyLayers g field_3557 + f [[I BODY_SIZES h field_3558 + f [[I BODY_TEXS i field_3559 + m (I)Ljava/lang/String; getLayerName a method_32043 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32044 a method_32044 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32042 + m (I)Ljava/lang/String; getSegmentName b method_32045 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32046 b method_32046 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/SkeletonModel fxf net/minecraft/class_606 + m (Lnet/minecraft/world/entity/Mob;FFF)V prepareMobModel a method_19689 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/Mob;FFFFF)V setupAnim a method_19690 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/PartDefinition;)V createDefaultSkeletonMesh a method_57794 + p 0 partDefinition + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer e method_32047 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SkullModel fxg net/minecraft/class_607 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3564 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27498 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createHeadModel a method_32048 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHumanoidHeadLayer b method_32049 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createMobHeadLayer c method_32050 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SkullModelBase fxh net/minecraft/class_5598 + m (FFF)V setupAnim a method_2821 + p 1 mouthAnimation + p 2 yRot + p 3 xRot + m ()V +c net/minecraft/client/model/SlimeModel fxi net/minecraft/class_609 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27499 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createOuterBodyLayer b method_32051 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createInnerBodyLayer c method_32052 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SnifferModel fxj net/minecraft/class_8185 + f F WALK_ANIMATION_SPEED_MAX a field_43364 + f F WALK_ANIMATION_SCALE_FACTOR b field_43407 + f Lnet/minecraft/client/model/geom/ModelPart; root f field_42881 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_43085 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;FFFFF)V setupAnim a method_49302 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_49303 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SnowGolemModel fxk net/minecraft/class_608 + f Ljava/lang/String; UPPER_BODY a field_32557 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27500 + f Lnet/minecraft/client/model/geom/ModelPart; upperBody f field_27501 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_3568 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm h field_27502 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm i field_27503 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32053 + m ()Lnet/minecraft/client/model/geom/ModelPart; getHead c method_2834 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SpiderModel fxl net/minecraft/class_611 + f Ljava/lang/String; BODY_0 a field_32558 + f Ljava/lang/String; BODY_1 b field_32559 + f Ljava/lang/String; RIGHT_MIDDLE_FRONT_LEG f field_32560 + f Ljava/lang/String; LEFT_MIDDLE_FRONT_LEG g field_32561 + f Ljava/lang/String; RIGHT_MIDDLE_HIND_LEG h field_32562 + f Ljava/lang/String; LEFT_MIDDLE_HIND_LEG i field_32563 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27504 + f Lnet/minecraft/client/model/geom/ModelPart; head k field_3583 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg l field_27505 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg m field_27506 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleHindLeg n field_27507 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleHindLeg o field_27508 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleFrontLeg p field_27509 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleFrontLeg q field_27510 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg r field_27511 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg s field_27512 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSpiderBodyLayer b method_32054 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/SquidModel fxm net/minecraft/class_610 + f [Lnet/minecraft/client/model/geom/ModelPart; tentacles a field_3574 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27513 + m (I)Ljava/lang/String; createTentacleName a method_32056 + p 0 index + m (Lnet/minecraft/client/model/geom/ModelPart;I)Lnet/minecraft/client/model/geom/ModelPart; method_32057 a method_32057 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32055 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/StriderModel fxn net/minecraft/class_4997 + f Ljava/lang/String; RIGHT_BOTTOM_BRISTLE a field_32564 + f Ljava/lang/String; RIGHT_MIDDLE_BRISTLE b field_32565 + f Ljava/lang/String; RIGHT_TOP_BRISTLE f field_32566 + f Ljava/lang/String; LEFT_TOP_BRISTLE g field_32567 + f Ljava/lang/String; LEFT_MIDDLE_BRISTLE h field_32568 + f Ljava/lang/String; LEFT_BOTTOM_BRISTLE i field_32569 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27514 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg k field_23353 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg l field_23354 + f Lnet/minecraft/client/model/geom/ModelPart; body m field_23355 + f Lnet/minecraft/client/model/geom/ModelPart; rightBottomBristle n field_27515 + f Lnet/minecraft/client/model/geom/ModelPart; rightMiddleBristle o field_27516 + f Lnet/minecraft/client/model/geom/ModelPart; rightTopBristle p field_27517 + f Lnet/minecraft/client/model/geom/ModelPart; leftTopBristle q field_27518 + f Lnet/minecraft/client/model/geom/ModelPart; leftMiddleBristle r field_27519 + f Lnet/minecraft/client/model/geom/ModelPart; leftBottomBristle s field_27520 + m (Lnet/minecraft/world/entity/monster/Strider;FFFFF)V setupAnim a method_26414 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32058 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TadpoleModel fxo net/minecraft/class_7201 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_37933 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_37934 + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;FFFFF)V setupAnim a method_41916 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_41917 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TridentModel fxp net/minecraft/class_613 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_3592 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27521 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32059 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root + m ()V +c net/minecraft/client/model/TropicalFishModelA fxq net/minecraft/class_612 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27522 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_27523 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32060 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TropicalFishModelB fxr net/minecraft/class_615 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27524 + f Lnet/minecraft/client/model/geom/ModelPart; tail b field_3599 + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32061 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/TurtleModel fxs net/minecraft/class_614 + f Ljava/lang/String; EGG_BELLY j field_32570 + f Lnet/minecraft/client/model/geom/ModelPart; eggBelly k field_3594 + m (Lnet/minecraft/world/entity/animal/Turtle;FFFFF)V setupAnim a method_17125 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32062 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/VexModel fxt net/minecraft/class_617 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_41116 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_41117 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm f field_41118 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm g field_41119 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing h field_3602 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing i field_3601 + f Lnet/minecraft/client/model/geom/ModelPart; head j field_41711 + m (Lnet/minecraft/world/entity/monster/Vex;FFFFF)V setupAnim a method_17127 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;F)V setArmsCharging a method_48293 + p 1 rightHandItem + p 2 leftHandItem + m (Lcom/mojang/blaze3d/vertex/PoseStack;Z)V offsetStackPosition a method_47977 + p 1 poseStack + p 2 rightSide + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32063 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/VillagerHeadModel fxu net/minecraft/class_3884 + m (Z)V hatVisible a method_17150 + p 1 visible +c net/minecraft/client/model/VillagerModel fxv net/minecraft/class_620 + f Lnet/minecraft/client/model/geom/ModelPart; nose a field_27525 + f Lnet/minecraft/client/model/geom/ModelPart; root b field_27526 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_27527 + f Lnet/minecraft/client/model/geom/ModelPart; hat g field_27528 + f Lnet/minecraft/client/model/geom/ModelPart; hatRim h field_27529 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg i field_27530 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg j field_27531 + m ()Lnet/minecraft/client/model/geom/builders/MeshDefinition; createBodyModel b method_32064 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WardenModel fxw net/minecraft/class_7280 + f Lnet/minecraft/client/model/geom/ModelPart; bone a field_38315 + f Lnet/minecraft/client/model/geom/ModelPart; body b field_38316 + f Lnet/minecraft/client/model/geom/ModelPart; head f field_38317 + f Lnet/minecraft/client/model/geom/ModelPart; rightTendril g field_38318 + f Lnet/minecraft/client/model/geom/ModelPart; leftTendril h field_38319 + f Lnet/minecraft/client/model/geom/ModelPart; leftLeg i field_38320 + f Lnet/minecraft/client/model/geom/ModelPart; leftArm j field_38321 + f Lnet/minecraft/client/model/geom/ModelPart; leftRibcage k field_38449 + f Lnet/minecraft/client/model/geom/ModelPart; rightArm l field_38322 + f Lnet/minecraft/client/model/geom/ModelPart; rightLeg m field_38323 + f Lnet/minecraft/client/model/geom/ModelPart; rightRibcage n field_38450 + f F DEFAULT_ARM_X_Y o field_38324 + f F DEFAULT_ARM_Z p field_38325 + f Lnet/minecraft/client/model/geom/ModelPart; root q field_38327 + f Ljava/util/List; tendrilsLayerModelParts r field_38451 + f Ljava/util/List; heartLayerModelParts s field_38452 + f Ljava/util/List; bioluminescentLayerModelParts t field_38453 + f Ljava/util/List; pulsatingSpotsLayerModelParts u field_38454 + m (F)V animateIdlePose a method_42734 + p 1 ageInTicks + m (FF)V animateHeadLookTarget a method_42735 + p 1 yaw + p 2 pitch + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)V animateTendrils a method_42736 + p 1 entity + p 2 ageInTicks + p 3 partialTick + m (Lnet/minecraft/world/entity/monster/warden/Warden;FFFFF)V setupAnim a method_42580 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_42578 + m (FF)V animateWalk b method_42737 + p 1 limbSwing + p 2 limbSwingAmount + m ()Ljava/util/List; getTendrilsLayerModelParts c method_42738 + m ()Ljava/util/List; getHeartLayerModelParts d method_42739 + m ()Ljava/util/List; getBioluminescentLayerModelParts e method_42740 + m ()Ljava/util/List; getPulsatingSpotsLayerModelParts f method_42741 + m ()V resetArmPoses g method_42742 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WaterPatchModel fxx net/minecraft/class_7755 + m ()Lnet/minecraft/client/model/geom/ModelPart; waterPatch c method_22954 +c net/minecraft/client/model/WindChargeModel fxy net/minecraft/class_8974 + f I ROTATION_SPEED a field_48704 + f Lnet/minecraft/client/model/geom/ModelPart; bone b field_47441 + f Lnet/minecraft/client/model/geom/ModelPart; windCharge f field_48705 + f Lnet/minecraft/client/model/geom/ModelPart; wind g field_48706 + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;FFFFF)V setupAnim a method_55239 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_55240 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WitchModel fxz net/minecraft/class_622 + f Z holdingItem b field_3614 + m (Z)V setHoldingItem b method_2840 + p 1 holdingItem + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32065 + m ()Lnet/minecraft/client/model/geom/ModelPart; getNose e method_2839 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WitherBossModel fya net/minecraft/class_621 + f Ljava/lang/String; RIBCAGE a field_32571 + f Ljava/lang/String; CENTER_HEAD b field_32572 + f Ljava/lang/String; RIGHT_HEAD f field_32573 + f Ljava/lang/String; LEFT_HEAD g field_32574 + f F RIBCAGE_X_ROT_OFFSET h field_32575 + f F TAIL_X_ROT_OFFSET i field_32576 + f Lnet/minecraft/client/model/geom/ModelPart; root j field_27532 + f Lnet/minecraft/client/model/geom/ModelPart; centerHead k field_27533 + f Lnet/minecraft/client/model/geom/ModelPart; rightHead l field_27534 + f Lnet/minecraft/client/model/geom/ModelPart; leftHead m field_27535 + f Lnet/minecraft/client/model/geom/ModelPart; ribcage n field_27536 + f Lnet/minecraft/client/model/geom/ModelPart; tail o field_27537 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;FFF)V prepareMobModel a method_17128 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;FFFFF)V setupAnim a method_17130 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lnet/minecraft/client/model/geom/ModelPart;I)V setupHeadRotation a method_32066 + p 0 wither + p 1 part + p 2 head + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32067 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/WolfModel fyb net/minecraft/class_624 + f Ljava/lang/String; REAL_HEAD a field_32577 + f Ljava/lang/String; UPPER_BODY b field_32578 + f Ljava/lang/String; REAL_TAIL f field_32579 + f Lnet/minecraft/client/model/geom/ModelPart; head g field_3621 + f Lnet/minecraft/client/model/geom/ModelPart; realHead h field_20788 + c Added as a result/workaround for the loss of renderWithRotation + f Lnet/minecraft/client/model/geom/ModelPart; body i field_3623 + f Lnet/minecraft/client/model/geom/ModelPart; rightHindLeg j field_27538 + f Lnet/minecraft/client/model/geom/ModelPart; leftHindLeg k field_27539 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg l field_27540 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg m field_27541 + f Lnet/minecraft/client/model/geom/ModelPart; tail n field_3617 + f Lnet/minecraft/client/model/geom/ModelPart; realTail o field_20789 + c Added as a result/workaround for the loss of renderWithRotation + f Lnet/minecraft/client/model/geom/ModelPart; upperBody p field_3619 + f I LEG_SIZE q field_32580 + m (Lnet/minecraft/world/entity/animal/Wolf;FFF)V prepareMobModel a method_17131 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/animal/Wolf;FFFFF)V setupAnim a method_17133 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/MeshDefinition; createMeshDefinition a method_32068 + p 0 cubeDeformation + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ZombieModel fyc net/minecraft/class_623 + m (Lnet/minecraft/world/entity/monster/Zombie;)Z isAggressive a method_17793 + p 1 entity + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/ZombieVillagerModel fyd net/minecraft/class_619 + f Lnet/minecraft/client/model/geom/ModelPart; hatRim a field_17144 + m (Lnet/minecraft/world/entity/monster/Zombie;FFFFF)V setupAnim a method_17135 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/LayerDefinition; createArmorLayer a method_32069 + p 0 cubeDeformation + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer c method_32070 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/dragon/DragonHeadModel fye net/minecraft/class_626 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3638 + f Lnet/minecraft/client/model/geom/ModelPart; jaw b field_3639 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHeadLayer a method_32071 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/model/dragon/package-info fyf net/minecraft/class_6228 +c net/minecraft/client/model/geom/EntityModelSet fyg net/minecraft/class_5599 + f Ljava/util/Map; roots a field_27542 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32072 + p 1 modelLayerLocation + m ()V +c net/minecraft/client/model/geom/LayerDefinitions fyh net/minecraft/class_5600 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; FISH_PATTERN_DEFORMATION a field_27543 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; OUTER_ARMOR_DEFORMATION b field_27544 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; INNER_ARMOR_DEFORMATION c field_27545 + m ()Ljava/util/Map; createRoots a method_32073 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/model/geom/builders/LayerDefinition;Lnet/minecraft/world/level/block/state/properties/WoodType;)V method_45716 a method_45716 + m (Lcom/google/common/collect/ImmutableMap;Lnet/minecraft/client/model/geom/ModelLayerLocation;)Z method_32075 a method_32075 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/model/geom/builders/LayerDefinition;Lnet/minecraft/world/level/block/state/properties/WoodType;)V method_32074 b method_32074 + m ()V + m ()V +c net/minecraft/client/model/geom/ModelLayerLocation fyi net/minecraft/class_5601 + f Lnet/minecraft/resources/ResourceLocation; model a field_27546 + f Ljava/lang/String; layer b field_27547 + m ()Lnet/minecraft/resources/ResourceLocation; getModel a method_35743 + m ()Ljava/lang/String; getLayer b method_35744 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 model + p 2 layer +c net/minecraft/client/model/geom/ModelLayers fyj net/minecraft/class_5602 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHICKEN A field_27691 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COD B field_27692 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COMMAND_BLOCK_MINECART C field_27693 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_CAGE D field_27694 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_EYE E field_27695 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_SHELL F field_27696 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CONDUIT_WIND G field_27697 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; COW H field_27698 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER I field_27699 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER_ARMOR J field_27700 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CREEPER_HEAD K field_27548 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DECORATED_POT_BASE L field_42882 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DECORATED_POT_SIDES M field_42883 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOLPHIN N field_27549 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DONKEY O field_27550 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOUBLE_CHEST_LEFT P field_27551 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DOUBLE_CHEST_RIGHT Q field_27552 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DRAGON_SKULL R field_27553 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED S field_27554 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_INNER_ARMOR T field_27555 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_OUTER_ARMOR U field_27556 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; DROWNED_OUTER_LAYER V field_27557 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ELDER_GUARDIAN W field_27558 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ELYTRA X field_27559 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDERMAN Y field_27560 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDERMITE Z field_27561 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA_SPIT aA field_27612 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MAGMA_CUBE aB field_27613 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MINECART aC field_27614 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MOOSHROOM aD field_27615 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; MULE aE field_27616 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; OCELOT aF field_27617 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PANDA aG field_27618 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PARROT aH field_27619 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PHANTOM aI field_27620 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIG aJ field_27621 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN aK field_27622 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE aL field_27623 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ALLAY a field_38455 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE_INNER_ARMOR aM field_27624 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_BRUTE_OUTER_ARMOR aN field_27625 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_HEAD aO field_41382 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_INNER_ARMOR aP field_27626 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIGLIN_OUTER_ARMOR aQ field_27574 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PIG_SADDLE aR field_27575 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PILLAGER aS field_27576 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER aT field_27577 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_HEAD aU field_27578 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_INNER_ARMOR aV field_27579 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_OUTER_ARMOR aW field_27580 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM aX field_27581 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM_INNER_ARMOR aY field_27582 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SLIM_OUTER_ARMOR aZ field_27583 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ENDER_DRAGON aa field_27562 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; END_CRYSTAL ab field_27563 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; EVOKER ac field_27564 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; EVOKER_FANGS ad field_27565 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FOX ae field_27566 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FROG af field_37935 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; FURNACE_MINECART ag field_27567 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GHAST ah field_27568 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT ai field_27569 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT_INNER_ARMOR aj field_27570 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GIANT_OUTER_ARMOR ak field_27571 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GLOW_SQUID al field_28456 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GOAT am field_32581 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; GUARDIAN an field_27572 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HOGLIN ao field_27573 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HOPPER_MINECART ap field_27601 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HORSE aq field_27602 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HORSE_ARMOR ar field_27603 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK as field_27604 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK_INNER_ARMOR at field_27605 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; HUSK_OUTER_ARMOR au field_27606 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ILLUSIONER av field_27607 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; IRON_GOLEM aw field_27608 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LEASH_KNOT ax field_27609 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA ay field_27610 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; LLAMA_DECOR az field_27611 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY bA field_27660 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_INNER_ARMOR bB field_27661 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_OUTER_ARMOR bC field_27662 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRAY_OUTER_LAYER bD field_27663 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRIDER bE field_27664 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; STRIDER_SADDLE bF field_27665 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TADPOLE bG field_37936 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TNT_MINECART bH field_27666 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TRADER_LLAMA bI field_27667 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TRIDENT bJ field_27668 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_LARGE bK field_27669 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_LARGE_PATTERN bL field_27670 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMADILLO b field_47876 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_SMALL bM field_27671 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TROPICAL_FISH_SMALL_PATTERN bN field_27672 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; TURTLE bO field_27673 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VEX bP field_27674 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VILLAGER bQ field_27675 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; VINDICATOR bR field_27676 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WARDEN bS field_38328 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WANDERING_TRADER bT field_27627 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WIND_CHARGE bU field_47442 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITCH bV field_27628 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER bW field_27629 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_ARMOR bX field_27630 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON bY field_27631 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_INNER_ARMOR bZ field_27632 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PLAYER_SPIN_ATTACK ba field_27584 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; POLAR_BEAR bb field_27585 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_BIG bc field_27587 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_MEDIUM bd field_27588 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; PUFFERFISH_SMALL be field_27589 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; RABBIT bf field_27590 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; RAVAGER bg field_27591 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SALMON bh field_27592 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHEEP bi field_27593 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHEEP_FUR bj field_27594 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHIELD bk field_27595 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHULKER bl field_27596 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SHULKER_BULLET bm field_27597 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SILVERFISH bn field_27598 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON bo field_27599 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_HORSE bp field_27600 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_INNER_ARMOR bq field_27651 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_OUTER_ARMOR br field_27652 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SKELETON_SKULL bs field_27653 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SLIME bt field_27654 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SLIME_OUTER bu field_27655 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SNIFFER bv field_42884 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SNOW_GOLEM bw field_27656 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SPAWNER_MINECART bx field_27657 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SPIDER by field_27658 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; SQUID bz field_27659 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND c field_27586 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_OUTER_ARMOR ca field_27633 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKELETON_SKULL cb field_27634 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WITHER_SKULL cc field_27635 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WOLF cd field_27636 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; WOLF_ARMOR ce field_47877 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOGLIN cf field_27637 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE cg field_27638 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_HEAD ch field_27640 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_HORSE ci field_27641 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_INNER_ARMOR cj field_27642 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_OUTER_ARMOR ck field_27643 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER cl field_27644 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER_INNER_ARMOR cm field_27645 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIE_VILLAGER_OUTER_ARMOR cn field_27646 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN co field_27647 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN_INNER_ARMOR cp field_27648 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ZOMBIFIED_PIGLIN_OUTER_ARMOR cq field_27649 + f Ljava/lang/String; DEFAULT_LAYER cr field_32582 + f Ljava/util/Set; ALL_MODELS cs field_27650 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND_INNER_ARMOR d field_27639 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; ARMOR_STAND_OUTER_ARMOR e field_27677 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; AXOLOTL f field_28383 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BANNER g field_27678 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BAT h field_27679 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BED_FOOT i field_27680 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BED_HEAD j field_27681 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BEE k field_27682 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BELL l field_27683 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BLAZE m field_27684 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED n field_49159 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_INNER_ARMOR o field_49160 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_OUTER_ARMOR p field_49161 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOGGED_OUTER_LAYER q field_49162 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BOOK r field_27685 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BREEZE s field_47443 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; BREEZE_WIND t field_52153 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAT u field_27686 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAT_COLLAR v field_27687 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAMEL w field_40479 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CAVE_SPIDER x field_27688 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHEST y field_27689 + f Lnet/minecraft/client/model/geom/ModelLayerLocation; CHEST_MINECART z field_27690 + m ()Ljava/util/stream/Stream; getKnownLocations a method_32076 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createRaftModelName a method_45717 + p 0 type + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createSignModelName a method_32078 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; register a method_32079 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; register a method_32080 + p 0 path + p 1 model + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createChestRaftModelName b method_45718 + p 0 type + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createHangingSignModelName b method_45719 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; registerInnerArmor b method_32081 + p 0 path + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createLocation b method_32082 + p 0 path + p 1 model + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createBoatModelName c method_32077 + p 0 type + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelLayerLocation; registerOuterArmor c method_32083 + p 0 path + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/client/model/geom/ModelLayerLocation; createChestBoatModelName d method_42582 + p 0 type + m ()V + m ()V +c net/minecraft/client/model/geom/ModelPart fyk net/minecraft/class_630 + f F DEFAULT_SCALE a field_37937 + f F x b field_3657 + f F y c field_3656 + f F z d field_3655 + f F xRot e field_3654 + f F yRot f field_3675 + f F zRot g field_3674 + f F xScale h field_37938 + f F yScale i field_37939 + f F zScale j field_37940 + f Z visible k field_3665 + f Z skipDraw l field_38456 + f Ljava/util/List; cubes m field_3663 + f Ljava/util/Map; children n field_3661 + f Lnet/minecraft/client/model/geom/PartPose; initialPose o field_37941 + m ()Lnet/minecraft/client/model/geom/PartPose; storePose a method_32084 + m (FFF)V setPos a method_2851 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/model/geom/ModelPart$Cube; getRandomCube a method_22700 + p 1 random + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V compile a method_22702 + p 1 pose + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V translateAndRotate a method_22703 + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;II)V render a method_22698 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V render a method_22699 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;)V visit a method_35745 + p 1 poseStack + p 2 visitor + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;Ljava/lang/String;)V visit a method_35746 + p 1 poseStack + p 2 visitor + p 3 path + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/model/geom/ModelPart$Visitor;Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/model/geom/ModelPart;)V method_35747 a method_35747 + m (Lnet/minecraft/client/model/geom/ModelPart;)V copyFrom a method_17138 + p 1 modelPart + m (Lnet/minecraft/client/model/geom/PartPose;)V setInitialPose a method_41918 + p 1 initialPose + m (Ljava/lang/String;)Z hasChild a method_41919 + p 1 name + m (Lorg/joml/Vector3f;)V offsetPos a method_41920 + p 1 offset + m ()Lnet/minecraft/client/model/geom/PartPose; getInitialPose b method_41921 + m (FFF)V setRotation b method_33425 + p 1 xRot + p 2 yRot + p 3 zRot + m (Lnet/minecraft/client/model/geom/PartPose;)V loadPose b method_32085 + p 1 partPose + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/ModelPart; getChild b method_32086 + p 1 name + m (Lorg/joml/Vector3f;)V offsetRotation b method_41922 + p 1 offset + m ()V resetPose c method_41923 + m (Lorg/joml/Vector3f;)V offsetScale c method_41924 + p 1 offset + m ()Z isEmpty d method_32087 + m ()Ljava/util/stream/Stream; getAllParts e method_32088 + m (Ljava/util/List;Ljava/util/Map;)V + p 1 cubes + p 2 children +c net/minecraft/client/model/geom/ModelPart$Cube fyk$a net/minecraft/class_630$class_628 + f F minX a field_3645 + f F minY b field_3644 + f F minZ c field_3643 + f F maxX d field_3648 + f F maxY e field_3647 + f F maxZ f field_3646 + f [Lnet/minecraft/client/model/geom/ModelPart$Polygon; polygons g field_3649 + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;III)V compile a method_32089 + p 1 pose + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 color + m (IIFFFFFFFFFZFFLjava/util/Set;)V + p 1 texCoordU + p 2 texCoordV + p 3 originX + p 4 originY + p 5 originZ + p 6 dimensionX + p 7 dimensionY + p 8 dimensionZ + p 9 gtowX + p 10 growY + p 11 growZ + p 12 mirror + p 13 texScaleU + p 14 texScaleV + p 15 visibleFaces +c net/minecraft/client/model/geom/ModelPart$Polygon fyk$b net/minecraft/class_630$class_593 + f [Lnet/minecraft/client/model/geom/ModelPart$Vertex; vertices a field_3502 + f Lorg/joml/Vector3f; normal b field_21618 + m ([Lnet/minecraft/client/model/geom/ModelPart$Vertex;FFFFFFZLnet/minecraft/core/Direction;)V + p 1 vertices + p 2 u1 + p 3 v1 + p 4 u2 + p 5 v2 + p 6 textureWidth + p 7 textureHeight + p 8 mirror + p 9 direction +c net/minecraft/client/model/geom/ModelPart$Vertex fyk$c net/minecraft/class_630$class_618 + f Lorg/joml/Vector3f; pos a field_3605 + f F u b field_3604 + f F v c field_3603 + m (FF)Lnet/minecraft/client/model/geom/ModelPart$Vertex; remap a method_2837 + p 1 u + p 2 v + m (FFFFF)V + p 1 x + p 2 y + p 3 z + p 4 u + p 5 v + m (Lorg/joml/Vector3f;FF)V + p 1 pos + p 2 u + p 3 v +c net/minecraft/client/model/geom/ModelPart$Visitor fyk$d net/minecraft/class_630$class_6229 + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Ljava/lang/String;ILnet/minecraft/client/model/geom/ModelPart$Cube;)V visit visit method_35748 + p 1 pose + p 2 path + p 3 index + p 4 cube +c net/minecraft/client/model/geom/PartNames fyl net/minecraft/class_6230 + f Ljava/lang/String; RIGHT_HIND_FOOT A field_32638 + f Ljava/lang/String; LEFT_FRONT_FOOT B field_32639 + f Ljava/lang/String; RIGHT_FRONT_FOOT C field_32583 + f Ljava/lang/String; FEET D field_47128 + f Ljava/lang/String; LEFT_HIND_LEG_TIP E field_32584 + f Ljava/lang/String; RIGHT_HIND_LEG_TIP F field_32585 + f Ljava/lang/String; LEFT_FRONT_LEG_TIP G field_32586 + f Ljava/lang/String; RIGHT_FRONT_LEG_TIP H field_32587 + f Ljava/lang/String; LEFT_LID I field_32588 + f Ljava/lang/String; RIGHT_LID J field_32589 + f Ljava/lang/String; LEFT_CHEST K field_32590 + f Ljava/lang/String; RIGHT_CHEST L field_32591 + f Ljava/lang/String; LEFT_HORN M field_32592 + f Ljava/lang/String; RIGHT_HORN N field_32593 + f Ljava/lang/String; LEFT_EYE O field_32594 + f Ljava/lang/String; RIGHT_EYE P field_32595 + f Ljava/lang/String; JAW Q field_32596 + f Ljava/lang/String; NOSE R field_32597 + f Ljava/lang/String; ARMS S field_32598 + f Ljava/lang/String; TAIL T field_32599 + f Ljava/lang/String; CUBE U field_32600 + f Ljava/lang/String; BEAK V field_32601 + f Ljava/lang/String; BACK_FIN W field_32602 + f Ljava/lang/String; MANE X field_32603 + f Ljava/lang/String; NECK Y field_32604 + f Ljava/lang/String; MOUTH Z field_32605 + f Ljava/lang/String; MUSHROOMS aA field_49564 + f Ljava/lang/String; BONE aB field_38331 + f Ljava/lang/String; LEFT_FIN a field_32609 + f Ljava/lang/String; HEAD aa field_32606 + f Ljava/lang/String; HAT ab field_32607 + f Ljava/lang/String; BODY ac field_32608 + f Ljava/lang/String; HAT_RIM ad field_32610 + f Ljava/lang/String; JACKET ae field_32611 + f Ljava/lang/String; TOP_GILLS af field_32612 + f Ljava/lang/String; LEFT_GILLS ag field_32613 + f Ljava/lang/String; RIGHT_GILLS ah field_32614 + f Ljava/lang/String; ROOT ai field_37942 + f Ljava/lang/String; CROAKING_BODY aj field_37943 + f Ljava/lang/String; TONGUE ak field_37944 + f Ljava/lang/String; TONGUE_R1 al field_37945 + f Ljava/lang/String; LEFT_HAND am field_37946 + f Ljava/lang/String; RIGHT_HAND an field_37947 + f Ljava/lang/String; LEFT_FOOT ao field_37948 + f Ljava/lang/String; RIGHT_FOOT ap field_37949 + f Ljava/lang/String; EYES aq field_37950 + f Ljava/lang/String; RIGHT_TENDRIL ar field_38329 + f Ljava/lang/String; LEFT_TENDRIL as field_38330 + f Ljava/lang/String; RIGHT_RIBCAGE at field_38457 + f Ljava/lang/String; LEFT_RIBCAGE au field_38458 + f Ljava/lang/String; WIND_BODY av field_47446 + f Ljava/lang/String; WIND_TOP aw field_47447 + f Ljava/lang/String; WIND_MID ax field_47448 + f Ljava/lang/String; WIND_BOTTOM ay field_47449 + f Ljava/lang/String; RODS az field_47450 + f Ljava/lang/String; RIGHT_FIN b field_32615 + f Ljava/lang/String; TOP_FIN c field_32616 + f Ljava/lang/String; BOTTOM_FIN d field_32617 + f Ljava/lang/String; TAIL_FIN e field_32618 + f Ljava/lang/String; LEFT_BLUE_FIN f field_32619 + f Ljava/lang/String; RIGHT_BLUE_FIN g field_32620 + f Ljava/lang/String; LEFT_ARM h field_32621 + f Ljava/lang/String; RIGHT_ARM i field_32622 + f Ljava/lang/String; LEFT_WING j field_32623 + f Ljava/lang/String; RIGHT_WING k field_32624 + f Ljava/lang/String; LEFT_WING_BASE l field_32625 + f Ljava/lang/String; RIGHT_WING_BASE m field_32626 + f Ljava/lang/String; LEFT_WING_TIP n field_32627 + f Ljava/lang/String; RIGHT_WING_TIP o field_32628 + f Ljava/lang/String; LEFT_EAR p field_32629 + f Ljava/lang/String; RIGHT_EAR q field_32630 + f Ljava/lang/String; LEFT_LEG r field_32631 + f Ljava/lang/String; RIGHT_LEG s field_32632 + f Ljava/lang/String; LEFT_HIND_LEG t field_32633 + f Ljava/lang/String; RIGHT_HIND_LEG u field_32634 + f Ljava/lang/String; LEFT_MID_LEG v field_42885 + f Ljava/lang/String; RIGHT_MID_LEG w field_42886 + f Ljava/lang/String; LEFT_FRONT_LEG x field_32635 + f Ljava/lang/String; RIGHT_FRONT_LEG y field_32636 + f Ljava/lang/String; LEFT_HIND_FOOT z field_32637 + m ()V +c net/minecraft/client/model/geom/PartPose fym net/minecraft/class_5603 + f Lnet/minecraft/client/model/geom/PartPose; ZERO a field_27701 + f F x b field_27702 + f F y c field_27703 + f F z d field_27704 + f F xRot e field_27705 + f F yRot f field_27706 + f F zRot g field_27707 + m (FFF)Lnet/minecraft/client/model/geom/PartPose; offset a method_32090 + p 0 x + p 1 y + p 2 z + m (FFFFFF)Lnet/minecraft/client/model/geom/PartPose; offsetAndRotation a method_32091 + p 0 x + p 1 y + p 2 z + p 3 xRot + p 4 yRot + p 5 zRot + m (FFF)Lnet/minecraft/client/model/geom/PartPose; rotation b method_32092 + p 0 xRot + p 1 yRot + p 2 zRot + m (FFFFFF)V + p 1 x + p 2 y + p 3 z + p 4 xRot + p 5 yRot + p 6 zRot + m ()V +c net/minecraft/client/model/geom/builders/CubeDefinition fyn net/minecraft/class_5604 + f Ljava/lang/String; comment a field_27708 + f Lorg/joml/Vector3f; origin b field_27709 + f Lorg/joml/Vector3f; dimensions c field_27710 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; grow d field_27711 + f Z mirror e field_27712 + f Lnet/minecraft/client/model/geom/builders/UVPair; texCoord f field_27713 + f Lnet/minecraft/client/model/geom/builders/UVPair; texScale g field_27714 + f Ljava/util/Set; visibleFaces h field_42887 + m (II)Lnet/minecraft/client/model/geom/ModelPart$Cube; bake a method_32093 + p 1 texWidth + p 2 texHeight + m (Ljava/lang/String;FFFFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;ZFFLjava/util/Set;)V + p 1 comment + p 2 texCoordU + p 3 texCoordV + p 4 originX + p 5 originY + p 6 originZ + p 7 dimensionX + p 8 dimensionY + p 9 dimensionZ + p 10 grow + p 11 mirror + p 12 texScaleU + p 13 texScaleV + p 14 visibleFaces +c net/minecraft/client/model/geom/builders/CubeDeformation fyo net/minecraft/class_5605 + f Lnet/minecraft/client/model/geom/builders/CubeDeformation; NONE a field_27715 + f F growX b field_27716 + f F growY c field_27717 + f F growZ d field_27718 + m (F)Lnet/minecraft/client/model/geom/builders/CubeDeformation; extend a method_32094 + p 1 grow + m (FFF)Lnet/minecraft/client/model/geom/builders/CubeDeformation; extend a method_32095 + p 1 growX + p 2 growY + p 3 growZ + m (FFF)V + p 1 growX + p 2 growY + p 3 growZ + m (F)V + p 1 grow + m ()V +c net/minecraft/client/model/geom/builders/CubeListBuilder fyp net/minecraft/class_5606 + f Ljava/util/Set; ALL_VISIBLE a field_42888 + f Ljava/util/List; cubes b field_27719 + f I xTexOffs c field_27720 + f I yTexOffs d field_27721 + f Z mirror e field_27722 + m ()Lnet/minecraft/client/model/geom/builders/CubeListBuilder; mirror a method_32096 + m (FFFFFF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32097 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + m (FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32098 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 cubeDeformation + m (FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;FF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32099 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 cubeDeformation + p 8 texScaleU + p 9 texScaleV + m (FFFFFFLjava/util/Set;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_49304 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 visibleFaces + m (FFFFFFZ)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32100 + p 1 originX + p 2 originY + p 3 originZ + p 4 dimensionX + p 5 dimensionY + p 6 dimensionZ + p 7 mirror + m (II)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; texOffs a method_32101 + p 1 xTexOffs + p 2 yTexOffs + m (Ljava/lang/String;FFFFFF)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32102 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + m (Ljava/lang/String;FFFFFFLnet/minecraft/client/model/geom/builders/CubeDeformation;)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32103 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 cubeDeformation + m (Ljava/lang/String;FFFIIIII)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32104 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 xTexOffs + p 9 yTexOffs + m (Ljava/lang/String;FFFIIILnet/minecraft/client/model/geom/builders/CubeDeformation;II)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; addBox a method_32105 + p 1 comment + p 2 originX + p 3 originY + p 4 originZ + p 5 dimensionX + p 6 dimensionY + p 7 dimensionZ + p 8 cubeDeformation + p 9 xTexOffs + p 10 yTexOffs + m (Z)Lnet/minecraft/client/model/geom/builders/CubeListBuilder; mirror a method_32106 + p 1 mirror + m ()Ljava/util/List; getCubes b method_32107 + m ()Lnet/minecraft/client/model/geom/builders/CubeListBuilder; create c method_32108 + m ()V + m ()V +c net/minecraft/client/model/geom/builders/LayerDefinition fyq net/minecraft/class_5607 + f Lnet/minecraft/client/model/geom/builders/MeshDefinition; mesh a field_27723 + f Lnet/minecraft/client/model/geom/builders/MaterialDefinition; material b field_27724 + m ()Lnet/minecraft/client/model/geom/ModelPart; bakeRoot a method_32109 + m (Lnet/minecraft/client/model/geom/builders/MeshDefinition;II)Lnet/minecraft/client/model/geom/builders/LayerDefinition; create a method_32110 + p 0 mesh + p 1 texWidth + p 2 texHeight + m (Lnet/minecraft/client/model/geom/builders/MeshDefinition;Lnet/minecraft/client/model/geom/builders/MaterialDefinition;)V + p 1 mesh + p 2 material +c net/minecraft/client/model/geom/builders/MaterialDefinition fyr net/minecraft/class_5608 + f I xTexSize a field_27725 + f I yTexSize b field_27726 + m (II)V + p 1 xTexSize + p 2 yTexSize +c net/minecraft/client/model/geom/builders/MeshDefinition fys net/minecraft/class_5609 + f Lnet/minecraft/client/model/geom/builders/PartDefinition; root a field_27727 + m ()Lnet/minecraft/client/model/geom/builders/PartDefinition; getRoot a method_32111 + m ()V +c net/minecraft/client/model/geom/builders/PartDefinition fyt net/minecraft/class_5610 + f Ljava/util/List; cubes a field_27728 + f Lnet/minecraft/client/model/geom/PartPose; partPose b field_27729 + f Ljava/util/Map; children c field_27730 + m (II)Lnet/minecraft/client/model/geom/ModelPart; bake a method_32112 + p 1 texWidth + p 2 texHeight + m (IILnet/minecraft/client/model/geom/builders/CubeDefinition;)Lnet/minecraft/client/model/geom/ModelPart$Cube; method_32113 a method_32113 + m (IILjava/util/Map$Entry;)Lnet/minecraft/client/model/geom/ModelPart; method_32114 a method_32114 + m (Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/geom/ModelPart; method_32115 a method_32115 + m (Ljava/lang/String;)Lnet/minecraft/client/model/geom/builders/PartDefinition; getChild a method_32116 + p 1 name + m (Ljava/lang/String;Lnet/minecraft/client/model/geom/builders/CubeListBuilder;Lnet/minecraft/client/model/geom/PartPose;)Lnet/minecraft/client/model/geom/builders/PartDefinition; addOrReplaceChild a method_32117 + p 1 name + p 2 cubes + p 3 partPose + m (Ljava/util/List;Lnet/minecraft/client/model/geom/PartPose;)V + p 1 cubes + p 2 partPose +c net/minecraft/client/model/geom/builders/UVPair fyu net/minecraft/class_5611 + f F u a field_27731 + f F v b field_27732 + m ()F u a method_32118 + m ()F v b method_32119 + m (FF)V + p 1 u + p 2 v +c net/minecraft/client/model/geom/builders/package-info fyv net/minecraft/class_6231 +c net/minecraft/client/model/geom/package-info fyw net/minecraft/class_6232 +c net/minecraft/client/model/package-info fyx net/minecraft/class_6233 +c net/minecraft/client/multiplayer/AccountProfileKeyPairManager fyy net/minecraft/class_7434 + f Lorg/slf4j/Logger; LOGGER b field_39074 + f Ljava/time/Duration; MINIMUM_PROFILE_KEY_REFRESH_INTERVAL c field_40797 + f Ljava/nio/file/Path; PROFILE_KEY_PAIR_DIR d field_39075 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService e field_39958 + f Ljava/nio/file/Path; profileKeyPairPath f field_39076 + f Ljava/util/concurrent/CompletableFuture; keyPair g field_39959 + f Ljava/time/Instant; nextProfileKeyRefreshTime h field_40798 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V writeProfileKeyPair a method_43600 + p 1 profileKeyPair + m (Lcom/google/gson/JsonElement;)V method_43601 a method_43601 + m (Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/world/entity/player/ProfileKeyPair; fetchProfileKeyPair a method_43605 + p 1 userApiService + m (Lcom/mojang/authlib/yggdrasil/response/KeyPairResponse;)Lnet/minecraft/world/entity/player/ProfilePublicKey$Data; parsePublicKey a method_44076 + p 0 keyPairResponse + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletableFuture; readOrFetchProfileKeyPair a method_43602 + p 1 pair + m (Ljava/util/Optional;)Ljava/util/Optional; method_44291 b method_44291 + m ()Ljava/util/Optional; readProfileKeyPair c method_43606 + m (Lcom/mojang/authlib/minecraft/UserApiService;Ljava/util/UUID;Ljava/nio/file/Path;)V + p 1 userApiService + p 2 uuid + p 3 gameDirectory + m ()V +c net/minecraft/client/multiplayer/ChunkBatchSizeCalculator fyz net/minecraft/class_8760 + f I MAX_OLD_SAMPLES_WEIGHT a field_45939 + f I CLAMP_COEFFICIENT b field_45940 + f D aggregatedNanosPerChunk c field_45941 + f I oldSamplesWeight d field_45942 + f J chunkBatchStartTime e field_45943 + m ()V onBatchStart a method_53483 + m (I)V onBatchFinished a method_53484 + p 1 batchSize + m ()F getDesiredChunksPerTick b method_53485 + m ()V +c net/minecraft/client/multiplayer/ClientAdvancements fza net/minecraft/class_632 + f Lorg/slf4j/Logger; LOGGER a field_3686 + f Lnet/minecraft/client/Minecraft; minecraft b field_3684 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager c field_44808 + f Lnet/minecraft/advancements/AdvancementTree; tree d field_46144 + f Ljava/util/Map; progress e field_3681 + f Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener; listener f field_3682 + f Lnet/minecraft/advancements/AdvancementHolder; selectedTab g field_3685 + m ()Lnet/minecraft/advancements/AdvancementTree; getTree a method_53814 + m (Lnet/minecraft/network/protocol/game/ClientboundUpdateAdvancementsPacket;)V update a method_2861 + p 1 packet + m (Lnet/minecraft/advancements/AdvancementHolder;Z)V setSelectedTab a method_2864 + p 1 advancement + p 2 tellServer + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/advancements/AdvancementHolder; get a method_53815 + p 1 id + m (Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener;)V setListener a method_2862 + p 1 listener + m (Lnet/minecraft/client/multiplayer/ClientAdvancements$Listener;Lnet/minecraft/advancements/AdvancementHolder;Lnet/minecraft/advancements/AdvancementProgress;)V method_53816 a method_53816 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager;)V + p 1 minecraft + p 2 telemetryManager + m ()V +c net/minecraft/client/multiplayer/ClientAdvancements$Listener fza$a net/minecraft/class_632$class_633 + m (Lnet/minecraft/advancements/AdvancementHolder;)V onSelectedTabChanged a method_2866 + p 1 advancement + m (Lnet/minecraft/advancements/AdvancementNode;Lnet/minecraft/advancements/AdvancementProgress;)V onUpdateAdvancementProgress a method_2865 + p 1 advancement + p 2 advancementProgress +c net/minecraft/client/multiplayer/ClientChunkCache fzb net/minecraft/class_631 + f Lorg/slf4j/Logger; LOGGER a field_3679 + f Lnet/minecraft/world/level/chunk/LevelChunk; emptyChunk b field_3676 + f Lnet/minecraft/world/level/lighting/LevelLightEngine; lightEngine c field_3677 + f Lnet/minecraft/client/multiplayer/ClientChunkCache$Storage; storage d field_16246 + f Lnet/minecraft/client/multiplayer/ClientLevel; level e field_16525 + m (I)V updateViewRadius a method_20180 + p 1 viewDistance + m (IILnet/minecraft/network/FriendlyByteBuf;)V replaceBiomes a method_49630 + p 1 x + p 2 z + p 3 buffer + m (IILnet/minecraft/network/FriendlyByteBuf;Lnet/minecraft/nbt/CompoundTag;Ljava/util/function/Consumer;)Lnet/minecraft/world/level/chunk/LevelChunk; replaceWithPacketData a method_16020 + p 1 x + p 2 z + p 3 buffer + p 4 tag + p 5 consumer + m (Lnet/minecraft/world/level/ChunkPos;)V drop a method_2859 + p 1 chunkPos + m (Lnet/minecraft/world/level/chunk/LevelChunk;II)Z isValidChunk a method_20181 + p 0 chunk + p 1 x + p 2 z + m (I)I calculateStorageRange b method_20230 + p 0 viewDistance + m (IILnet/minecraft/world/level/chunk/status/ChunkStatus;Z)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk b method_2857 + p 1 x + p 2 z + p 3 chunkStatus + p 4 requireChunk + m (II)V updateViewCenter d method_20317 + p 1 x + p 2 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;I)V + p 1 level + p 2 viewDistance + m ()V +c net/minecraft/client/multiplayer/ClientChunkCache$Storage fzb$a net/minecraft/class_631$class_3681 + f Lnet/minecraft/client/multiplayer/ClientChunkCache; field_16254 a field_16254 + f Ljava/util/concurrent/atomic/AtomicReferenceArray; chunks b field_16251 + f I chunkRadius c field_16253 + f I viewRange d field_16252 + f I viewCenterX e field_19204 + f I viewCenterZ f field_19205 + f I chunkCount g field_19143 + m (I)Lnet/minecraft/world/level/chunk/LevelChunk; getChunk a method_16033 + p 1 chunkIndex + m (II)I getIndex a method_16027 + p 1 x + p 2 z + m (ILnet/minecraft/world/level/chunk/LevelChunk;)V replace a method_16031 + p 1 chunkIndex + p 2 chunk + m (ILnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/world/level/chunk/LevelChunk;)Lnet/minecraft/world/level/chunk/LevelChunk; replace a method_20183 + p 1 chunkIndex + p 2 chunk + p 3 replaceWith + m (Ljava/lang/String;)V dumpChunks a method_35751 + p 1 filePath + m (II)Z inRange b method_16034 + p 1 x + p 2 z + m (Lnet/minecraft/client/multiplayer/ClientChunkCache;I)V + p 2 chunkRadius +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl fzc net/minecraft/class_8673 + f Lnet/minecraft/client/Minecraft; minecraft a field_45588 + f Lnet/minecraft/network/Connection; connection b field_45589 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_45590 + f Ljava/lang/String; serverBrand d field_45591 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager e field_45592 + f Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen f field_45593 + f Z isTransferring g field_51516 + f Z strictErrorHandling h field_51520 + f Ljava/util/Map; serverCookies i field_48399 + f Ljava/util/Map; customReportDetails j field_52154 + f Lnet/minecraft/server/ServerLinks; serverLinks k field_52155 + f Lnet/minecraft/network/chat/Component; GENERIC_DISCONNECT_MESSAGE l field_45594 + f Lorg/slf4j/Logger; LOGGER m field_45944 + f Ljava/util/List; deferredPackets n field_45595 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleCustomPayload a method_11152 + p 1 payload + m (Lnet/minecraft/server/ServerLinks$Entry;)Ljava/util/List; method_60880 a method_60880 + m (Ljava/lang/String;)Ljava/net/URL; parseResourcePackUrl a method_52773 + p 0 url + m (Ljava/util/UUID;)V method_55511 a method_55511 + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/client/gui/screens/Screen; addOrUpdatePackPrompt a method_55609 + p 1 id + p 2 url + p 3 hash + p 4 required + p 5 prompt + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/network/chat/Component; preparePackPrompt a method_52778 + p 0 line1 + p 1 line2 + m (Lnet/minecraft/network/protocol/Packet;Ljava/lang/Throwable;)Ljava/util/Optional; storeDisconnectionReport a method_60882 + p 1 packet + p 2 error + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/BooleanSupplier;Ljava/time/Duration;)V sendWhen a method_52779 + p 1 packet + p 2 sendCondition + p 3 expirationTime + m (Lnet/minecraft/network/DisconnectionDetails;)Lnet/minecraft/client/gui/screens/Screen; createDisconnectScreen b method_52786 + p 1 details + m (Lnet/minecraft/network/protocol/Packet;)V send b method_52787 + p 1 packet + m ()V sendDeferredPackets e method_52789 + m ()Ljava/lang/String; serverBrand f method_52790 + m ()Lnet/minecraft/client/gui/screens/Screen; method_52788 g method_52788 + m ()Ljava/lang/String; method_55610 h method_55610 + m ()Ljava/lang/String; method_55611 i method_55611 + m ()V method_55513 j method_55513 + m ()Z method_52792 k method_52792 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$DeferredPacket fzc$a net/minecraft/class_8673$class_8137 + f Lnet/minecraft/network/protocol/Packet; packet a comp_1264 + f Ljava/util/function/BooleanSupplier; sendCondition b comp_1265 + f J expirationTime c comp_1266 + m ()Lnet/minecraft/network/protocol/Packet; packet a comp_1264 + m ()Ljava/util/function/BooleanSupplier; sendCondition b comp_1265 + m ()J expirationTime c comp_1266 + m (Lnet/minecraft/network/protocol/Packet;Ljava/util/function/BooleanSupplier;J)V +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen fzc$b net/minecraft/class_8673$class_9058 + f Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl; field_47681 r field_47681 + f Ljava/util/List; requests s field_47682 + f Lnet/minecraft/client/gui/screens/Screen; parentScreen u field_47683 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;ZLjava/util/List;Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl;Z)V method_55612 a method_55612 + m (Lnet/minecraft/client/Minecraft;Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen; update a method_55613 + p 1 minecraft + p 2 id + p 3 url + p 4 hash + p 5 required + p 6 prompt + m (Lnet/minecraft/client/multiplayer/ClientCommonPacketListenerImpl;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Ljava/util/List;ZLnet/minecraft/network/chat/Component;)V + p 2 minecraft + p 3 parentScreen + p 4 requests + p 5 required + p 6 prompt +c net/minecraft/client/multiplayer/ClientCommonPacketListenerImpl$PackConfirmScreen$PendingRequest fzc$b$a net/minecraft/class_8673$class_9058$class_9059 + f Ljava/util/UUID; id a comp_2172 + f Ljava/net/URL; url b comp_2173 + f Ljava/lang/String; hash c comp_2174 + m ()Ljava/util/UUID; id a comp_2172 + m ()Ljava/net/URL; url b comp_2173 + m ()Ljava/lang/String; hash c comp_2174 + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V +c net/minecraft/client/multiplayer/ClientConfigurationPacketListenerImpl fzd net/minecraft/class_8674 + f Lnet/minecraft/client/gui/components/ChatComponent$State; chatState l field_50223 + f Lorg/slf4j/Logger; LOGGER m field_45596 + f Lcom/mojang/authlib/GameProfile; localGameProfile n field_45597 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures o field_45599 + f Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries p field_45598 + f Lnet/minecraft/client/multiplayer/RegistryDataCollector; registryDataCollector q field_48766 + f Lnet/minecraft/client/multiplayer/KnownPacksManager; knownPacks r field_49123 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)Lnet/minecraft/core/RegistryAccess$Frozen; method_57043 a method_57043 + m (Ljava/util/function/Function;)Ljava/lang/Object; runWithResources a method_57044 + p 1 resources + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleUnknownCustomPayload b method_52797 + p 1 payload + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl fze net/minecraft/class_635 + f Lorg/slf4j/Logger; LOGGER a field_3710 + f Lnet/minecraft/client/Minecraft; minecraft b field_3708 + f Lnet/minecraft/client/multiplayer/ServerData; serverData c field_40481 + f Lnet/minecraft/client/gui/screens/Screen; parent d field_3706 + f Ljava/util/function/Consumer; updateStatus e field_3711 + f Lnet/minecraft/network/Connection; connection f field_3707 + f Z newWorld g field_41383 + f Ljava/time/Duration; worldLoadDuration h field_41384 + f Ljava/lang/String; minigameName i field_44809 + f Ljava/util/Map; cookies j field_48400 + f Z wasTransferredTo k field_48401 + f Ljava/util/concurrent/atomic/AtomicReference; state l field_46192 + m (Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V setEncryption a method_56151 + p 1 keyPacket + p 2 decryptingCypher + p 3 encryptingCypher + m (Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;)V switchState a method_53872 + p 1 state + m (Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State;)Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; method_53873 a method_53873 + m (Ljava/lang/String;)V setMinigameName a method_51768 + p 1 minigameName + m (Ljava/lang/String;Lnet/minecraft/network/protocol/login/ServerboundKeyPacket;Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_2894 a method_2894 + m (Ljavax/crypto/Cipher;Ljavax/crypto/Cipher;)V method_56152 a method_56152 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; authenticateServer b method_2892 + p 1 serverHash + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getMinecraftSessionService d method_2891 + m ()Ljava/lang/String; method_55614 e method_55614 + m ()Ljava/lang/String; method_55615 f method_55615 + m (Lnet/minecraft/network/Connection;Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/gui/screens/Screen;ZLjava/time/Duration;Ljava/util/function/Consumer;Lnet/minecraft/client/multiplayer/TransferState;)V + p 1 connection + p 2 minecraft + p 3 serverData + p 4 parent + p 5 newWorld + p 6 worldLoadDuration + p 7 updateStatus + p 8 cookies + m ()V +c net/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State fze$a net/minecraft/class_635$class_8798 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; CONNECTING a field_46193 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; AUTHORIZING b field_46194 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; ENCRYPTING c field_46195 + f Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; JOINING d field_46196 + f Lnet/minecraft/network/chat/Component; message e field_46197 + f Ljava/util/Set; fromStates f field_46198 + f [Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; $VALUES g field_46199 + m ()[Lnet/minecraft/client/multiplayer/ClientHandshakePacketListenerImpl$State; $values a method_53874 + m (Ljava/lang/String;ILnet/minecraft/network/chat/Component;Ljava/util/Set;)V + p 3 message + p 4 fromStates + m ()V +c net/minecraft/client/multiplayer/ClientLevel fzf net/minecraft/class_638 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection D field_3727 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer E field_17780 + f Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; clientLevelData F field_24430 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects; effects G field_24606 + f Lnet/minecraft/world/TickRateManager; tickRateManager H field_47129 + f Lnet/minecraft/client/Minecraft; minecraft I field_3729 + f Ljava/util/List; players J field_18226 + f Ljava/util/Map; mapData K field_17675 + f J CLOUD_COLOR L field_32640 + f I skyFlashTime M field_21526 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; tintCaches N field_21527 + f Lnet/minecraft/client/multiplayer/ClientChunkCache; chunkSource O field_24605 + f Ljava/util/Deque; lightUpdateQueue P field_34804 + f I serverSimulationDistance Q field_35163 + f Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; blockStatePredictionHandler R field_37951 + f Ljava/util/Set; MARKER_PARTICLE_ITEMS S field_35432 + f Lorg/slf4j/Logger; LOGGER a field_37952 + f D FLUID_PARTICLE_SPAWN_OFFSET b field_32641 + f I NORMAL_LIGHT_UPDATES_PER_FRAME c field_34805 + f I LIGHT_UPDATE_QUEUE_SIZE_THRESHOLD d field_34806 + f Lnet/minecraft/world/level/entity/EntityTickList; tickingEntities e field_27733 + f Lnet/minecraft/world/level/entity/TransientEntitySectionManager; entityStorage f field_27734 + m ()Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; getBlockStatePredictionHandler a method_41925 + m (DDDDDLnet/minecraft/core/particles/ParticleOptions;)V spawnFluidParticle a method_2932 + p 1 xStart + p 3 xEnd + p 5 zStart + p 7 zEnd + p 9 y + p 11 particleData + m (DDDLnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFZJ)V playSound a method_43207 + p 1 x + p 3 y + p 5 z + p 7 soundEvent + p 8 source + p 9 volume + p 10 pitch + p 11 distanceDelay + p 12 seed + m (IIIILnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/core/BlockPos$MutableBlockPos;)V doAnimateTick a method_2943 + p 1 posX + p 2 posY + p 3 posZ + p 4 range + p 5 random + p 6 block + p 7 blockPos + m (ILnet/minecraft/world/entity/Entity$RemovalReason;)V removeEntity a method_2945 + p 1 entityId + p 2 reason + m (Lnet/minecraft/world/entity/Entity;)V tickNonPassenger a method_18646 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V tickPassenger a method_18647 + p 1 mount + p 2 rider + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_23782 + p 1 chunkPos + m (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/ColorResolver;Lnet/minecraft/client/color/block/BlockTintCache;)V method_32121 a method_32121 + m (Lnet/minecraft/world/level/ColorResolver;Lnet/minecraft/client/color/block/BlockTintCache;)V method_23779 a method_23779 + m (Lnet/minecraft/world/level/biome/BiomeManager;III)Lnet/minecraft/world/phys/Vec3; method_32689 a method_32689 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V unload a method_18110 + p 1 chunk + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; getSkyColor a method_23777 + p 1 pos + p 2 partialTick + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap;)V method_23778 a method_23778 + m (Ljava/lang/Runnable;)V queueLightUpdate a method_38536 + p 1 task + m (Ljava/util/Map;)V addMapData a method_35753 + p 1 map + m (Ljava/util/function/BooleanSupplier;)V tick a method_8441 + c Runs a single tick for the world + p 1 hasTimeLeft + m (Lnet/minecraft/core/BlockPos$MutableBlockPos;Lnet/minecraft/world/level/biome/AmbientParticleSettings;)V method_24462 a method_24462 + m (Lnet/minecraft/core/BlockPos;)I method_38535 a method_38535 + m (Lnet/minecraft/core/BlockPos;F)V setDefaultSpawnPos a method_27873 + p 1 spawnPos + p 2 spawnAngle + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V syncBlockState a method_41926 + p 1 pos + p 2 state + p 3 playerPos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/particles/ParticleOptions;Z)V trySpawnDripParticles a method_2938 + p 1 blockPos + p 2 blockState + p 3 particleData + p 4 shapeDownSolid + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/world/phys/shapes/VoxelShape;D)V spawnParticle a method_2948 + p 1 pos + p 2 particleData + p 3 voxelShape + p 4 y + m ()V pollLightUpdates b method_38534 + m (I)V handleBlockChangedAck b method_41927 + p 1 sequence + m (III)V animateTick b method_2941 + p 1 posX + p 2 posY + p 3 posZ + m (J)V setGameTime b method_29089 + p 1 time + m (Lnet/minecraft/world/level/saveddata/maps/MapId;Lnet/minecraft/world/level/saveddata/maps/MapItemSavedData;)V overrideMapData b method_47437 + p 1 mapId + p 2 mapData + m (Lnet/minecraft/core/BlockPos;)I method_38537 b method_38537 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I calculateBlockTint b method_23780 + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)V setServerVerifiedBlockState b method_41928 + p 1 pos + p 2 state + p 3 flags + m ()Z isLightUpdateQueueEmpty c method_38743 + m (III)V setSectionDirtyWithNeighbors c method_18113 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (J)V setDayTime c method_8435 + c Sets the world time. + p 1 time + m (Lnet/minecraft/world/entity/Entity;)V addEntity c method_53875 + p 1 entity + m (Lnet/minecraft/core/BlockPos;)I method_38538 c method_38538 + m ()Lnet/minecraft/client/renderer/DimensionSpecialEffects; effects d method_28103 + m (Lnet/minecraft/world/entity/Entity;)Ljava/lang/String; method_18649 d method_18649 + m ()Ljava/lang/Iterable; entitiesForRendering e method_18112 + m (Lnet/minecraft/world/entity/Entity;)V method_32124 e method_32124 + m ()V tickEntities f method_18116 + m ()V clearTintCaches g method_23784 + m (F)F getSkyDarken g method_23783 + p 1 partialTick + m ()I getEntityCount h method_18120 + m (F)Lnet/minecraft/world/phys/Vec3; getCloudColor h method_23785 + p 1 partialTick + m (I)V setServerSimulationDistance h method_39023 + p 1 serverSimulationDistance + m ()Lnet/minecraft/client/multiplayer/ClientChunkCache; getChunkSource i method_2935 + c Gets the world's chunk provider + m (F)F getStarBrightness i method_23787 + p 1 partialTick + m ()I getSkyFlashTime j method_23789 + m ()Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; getLevelData k method_28104 + c Returns the world's WorldInfo object + m ()Ljava/util/Map; getAllMapData l method_35754 + m ()I getServerSimulationDistance m method_39024 + m ()V tickTime n method_29090 + m ()Lnet/minecraft/world/level/block/Block; getMarkerParticleTarget p method_35752 + m ()Ljava/lang/String; method_54633 q method_54633 + m ()Ljava/lang/String; method_2933 u method_2933 + m ()Ljava/lang/String; method_2946 w method_2946 + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/core/Holder;IILjava/util/function/Supplier;Lnet/minecraft/client/renderer/LevelRenderer;ZJ)V + p 1 connection + p 2 clientLevelData + p 3 dimension + p 4 dimensionType + p 5 viewDistance + p 6 serverSimulationDistance + p 7 profiler + p 8 levelRenderer + p 9 isDebug + p 10 biomeZoomSeed + m ()V +c net/minecraft/client/multiplayer/ClientLevel$1 fzf$1 net/minecraft/class_638$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_22436 + m ()V +c net/minecraft/client/multiplayer/ClientLevel$ClientLevelData fzf$a net/minecraft/class_638$class_5271 + f Z hardcore a field_24433 + f Lnet/minecraft/world/level/GameRules; gameRules b field_24434 + f Z isFlat c field_24607 + f Lnet/minecraft/core/BlockPos; spawnPos d field_48402 + f F spawnAngle e field_26372 + f J gameTime f field_24438 + f J dayTime g field_24439 + f Z raining h field_24440 + f Lnet/minecraft/world/Difficulty; difficulty i field_24441 + f Z difficultyLocked j field_24442 + m (J)V setGameTime a method_177 + p 1 gameTime + m (Lnet/minecraft/world/Difficulty;)V setDifficulty a method_27875 + p 1 difficulty + m (Lnet/minecraft/world/level/LevelHeightAccessor;)D getHorizonHeight a method_28105 + p 1 level + m (Z)V setDifficultyLocked a method_27876 + p 1 difficultyLocked + m (J)V setDayTime b method_165 + p 1 dayTime + m ()F getClearColorScale e method_28106 + m (Lnet/minecraft/world/Difficulty;ZZ)V + p 1 difficulty + p 2 hardcore + p 3 isFlat +c net/minecraft/client/multiplayer/ClientLevel$EntityCallbacks fzf$b net/minecraft/class_638$class_5612 + f Lnet/minecraft/client/multiplayer/ClientLevel; field_27735 a field_27735 + m (Lnet/minecraft/world/entity/Entity;)V onCreated a method_32125 + m (Lnet/minecraft/world/entity/Entity;)V onDestroyed b method_32126 + m (Lnet/minecraft/world/entity/Entity;)V onTickingStart c method_32127 + m (Lnet/minecraft/world/entity/Entity;)V onTickingEnd d method_32128 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingStart e method_32129 + m (Lnet/minecraft/world/entity/Entity;)V onTrackingEnd f method_32130 + m (Lnet/minecraft/world/entity/Entity;)V onSectionChange g method_43208 + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V +c net/minecraft/client/multiplayer/ClientPacketListener fzg net/minecraft/class_634 + f I serverChunkRadius A field_19144 + f I serverSimulationDistance B field_35164 + f Lnet/minecraft/util/RandomSource; random C field_3687 + c Just an ordinary random number generator, used to randomize audio pitch of item/orb pickup and randomize both particlespawn offset and velocity + f Lcom/mojang/brigadier/CommandDispatcher; commands D field_3696 + f Lnet/minecraft/world/item/crafting/RecipeManager; recipeManager E field_3688 + f Ljava/util/UUID; id F field_16771 + f Ljava/util/Set; levels G field_25273 + f Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess H field_25063 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures I field_45600 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing J field_51439 + f Lnet/minecraft/network/chat/LocalChatSession; chatSession K field_40799 + f Lnet/minecraft/network/chat/SignedMessageChain$Encoder; signedMessageEncoder L field_39808 + f Lnet/minecraft/network/chat/LastSeenMessagesTracker; lastSeenMessages M field_39858 + f Lnet/minecraft/network/chat/MessageSignatureCache; messageSignatureCache N field_40483 + f Lnet/minecraft/client/multiplayer/ChunkBatchSizeCalculator; chunkBatchSizeCalculator O field_45945 + f Lnet/minecraft/client/multiplayer/PingDebugMonitor; pingDebugMonitor P field_45946 + f Lnet/minecraft/client/multiplayer/DebugSampleSubscriber; debugSampleSubscriber Q field_48933 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager; levelLoadStatusManager R field_46578 + f Z serverEnforcesSecureChat S field_48403 + f Z seenInsecureChatWarning T field_45947 + f Z closed U field_46187 + f Lnet/minecraft/world/scores/Scoreboard; scoreboard V field_47878 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees; searchTrees W field_51825 + f Lorg/slf4j/Logger; LOGGER l field_3695 + f Lnet/minecraft/network/chat/Component; UNSECURE_SERVER_TOAST_TITLE m field_39916 + f Lnet/minecraft/network/chat/Component; UNSERURE_SERVER_TOAST n field_39917 + f Lnet/minecraft/network/chat/Component; INVALID_PACKET o field_40485 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_FAILED_ERROR p field_40486 + f Lnet/minecraft/network/chat/Component; RECONFIGURE_SCREEN_MESSAGE q field_45603 + f I PENDING_OFFSET_THRESHOLD r field_40487 + f Lcom/mojang/authlib/GameProfile; localGameProfile s field_3697 + f Lnet/minecraft/client/multiplayer/ClientLevel; level t field_3699 + c Reference to the current ClientWorld instance, which many handler methods operate on + f Lnet/minecraft/client/multiplayer/ClientLevel$ClientLevelData; levelData u field_24321 + f Ljava/util/Map; playerInfoMap v field_3693 + c A mapping from player names to their respective GuiPlayerInfo (specifies the clients response time to the server) + f Ljava/util/Set; listedPlayers w field_40489 + f Lnet/minecraft/client/multiplayer/ClientAdvancements; advancements x field_3700 + f Lnet/minecraft/client/multiplayer/ClientSuggestionProvider; suggestionsProvider y field_3691 + f Lnet/minecraft/client/DebugQueryHandler; debugQueryHandler z field_3692 + m ()V updateSearchTrees A method_60346 + m ()Lnet/minecraft/client/multiplayer/SessionSearchTrees; searchTrees B method_60347 + m ()Lnet/minecraft/server/ServerLinks; serverLinks C method_60885 + m ()Z enforcesSecureChat D method_46529 + m ()V sendChatAcknowledgement E method_45737 + m ()V method_34018 F method_34018 + m (I)V method_37472 a method_37472 + m (IILnet/minecraft/network/protocol/game/ClientboundLevelChunkPacketData;)V updateLevelChunk a method_38539 + p 1 x + p 2 z + p 3 data + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V applyLightData a method_38543 + p 1 x + p 2 z + p 3 data + m (IILnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/world/level/LightLayer;Ljava/util/BitSet;Ljava/util/BitSet;Ljava/util/Iterator;)V readSectionList a method_2870 + p 1 x + p 2 z + p 3 lightEngine + p 4 lightLayer + p 5 skyYMask + p 6 emptySkyYMask + p 7 skyUpdates + m (Lnet/minecraft/network/protocol/game/ClientboundBlockEntityDataPacket;Lnet/minecraft/world/level/block/entity/BlockEntity;)V method_38542 a method_38542 + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Action;Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;Lnet/minecraft/client/multiplayer/PlayerInfo;)V applyPlayerInfoUpdate a method_45726 + p 1 action + p 2 entry + p 3 playerInfo + m (Lnet/minecraft/network/protocol/game/ClientboundPlayerInfoUpdatePacket$Entry;Lnet/minecraft/client/multiplayer/PlayerInfo;)V initializeChatSession a method_45727 + p 1 entry + p 2 playerInfo + m (Lnet/minecraft/world/entity/Entity;)V postAddEntitySoundInstance a method_43209 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/datafixers/util/Pair;)V method_34008 a method_34008 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/item/ItemStack; findTotem a method_19691 + p 0 player + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V setKeyPair a method_47657 + p 1 keyPair + m (Lnet/minecraft/world/flag/FeatureFlagSet;)Z isFeatureEnabled a method_45720 + p 1 enabledFeatures + m (Lnet/minecraft/world/inventory/AbstractContainerMenu;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_34009 a method_34009 + m (Lnet/minecraft/world/level/ChunkPos;)V method_51685 a method_51685 + m (Lnet/minecraft/world/level/chunk/LevelChunk;II)V enableChunkLight a method_38541 + p 1 chunk + p 2 x + p 3 z + m (Lnet/minecraft/world/scores/PlayerTeam;Lnet/minecraft/network/protocol/game/ClientboundSetPlayerTeamPacket$Parameters;)V method_34010 a method_34010 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/world/item/crafting/RecipeHolder;)V method_34011 a method_34011 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)V method_34012 a method_34012 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason;)V startWaitingForNewLevel a method_54133 + p 1 player + p 2 level + p 3 reason + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_2874 + c Gets the client's description information about another player on the server. + p 1 name + m (Ljava/time/Instant;JLnet/minecraft/network/chat/LastSeenMessagesTracker$Update;Ljava/lang/String;)Lnet/minecraft/network/chat/MessageSignature; method_45722 a method_45722 + m (Ljava/util/Optional;)V method_46525 a method_46525 + m (Ljava/util/UUID;)Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_2871 + p 1 uniqueId + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V method_34007 a method_34007 + m (Lnet/minecraft/network/chat/PlayerChatMessage;Z)V markMessageAsProcessed a method_44940 + p 1 chatMessage + p 2 acknowledged + m (ZLnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/client/gui/screens/ReceivingLevelScreen$Reason; determineLevelLoadingReason a method_59842 + p 1 dying + p 2 spawnDimension + p 3 currentDimension + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V method_38545 b method_38545 + m (Lnet/minecraft/network/protocol/common/custom/CustomPacketPayload;)V handleUnknownCustomPayload b method_52801 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundAddEntityPacket;)Lnet/minecraft/world/entity/Entity; createEntityFromPacket b method_53876 + p 1 packet + m (Lnet/minecraft/network/protocol/game/ClientboundForgetLevelChunkPacket;)V queueLightRemoval b method_51684 + p 1 packet + m (Ljava/lang/String;)V sendChat b method_45729 + p 1 message + m (Ljava/util/Optional;)V method_46528 b method_46528 + m (IILnet/minecraft/network/protocol/game/ClientboundLightUpdatePacketData;)V method_51769 c method_51769 + m (Ljava/lang/String;)V sendCommand c method_45730 + p 1 command + m (Ljava/lang/String;)Z sendUnsignedCommand d method_45731 + p 1 command + m (Ljava/lang/String;)Lcom/mojang/brigadier/ParseResults; parseCommand e method_45733 + p 1 command + m ()Lnet/minecraft/client/multiplayer/ClientSuggestionProvider; getSuggestionsProvider g method_2875 + m ()V close h method_47658 + m ()V clearLevel i method_54134 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager j method_2877 + m ()Lnet/minecraft/network/Connection; getConnection k method_48296 + c Returns this the NetworkManager instance registered with this NetworkHandlerPlayClient + m ()Ljava/util/Collection; getListedOnlinePlayers l method_45732 + m ()Ljava/util/Collection; getOnlinePlayers m method_2880 + m ()Ljava/util/Collection; getOnlinePlayerIds n method_31363 + m ()Lcom/mojang/authlib/GameProfile; getLocalGameProfile o method_2879 + m ()Lnet/minecraft/client/multiplayer/ClientAdvancements; getAdvancements p method_2869 + m ()Lcom/mojang/brigadier/CommandDispatcher; getCommands q method_2886 + m ()Lnet/minecraft/client/multiplayer/ClientLevel; getLevel r method_2890 + m ()Lnet/minecraft/client/DebugQueryHandler; getDebugQueryHandler s method_2876 + m ()Ljava/util/UUID; getId t method_16690 + m ()Ljava/util/Set; levels u method_29356 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess v method_29091 + m ()Lnet/minecraft/client/multiplayer/ServerData; getServerData w method_45734 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures x method_45735 + m ()Lnet/minecraft/world/scores/Scoreboard; scoreboard y method_55823 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing z method_59754 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/CommonListenerCookie;)V + p 1 minecraft + p 2 connection + p 3 commonListenerCookie + m ()V +c net/minecraft/client/multiplayer/ClientPacketListener$1 fzg$1 net/minecraft/class_634$1 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundRecipePacket$State a field_3705 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundPlayerInfoUpdatePacket$Action b field_3702 + m ()V +c net/minecraft/client/multiplayer/ClientRegistryLayer fzh net/minecraft/class_7756 + f Lnet/minecraft/client/multiplayer/ClientRegistryLayer; STATIC a field_40490 + f Lnet/minecraft/client/multiplayer/ClientRegistryLayer; REMOTE b field_40491 + f Ljava/util/List; VALUES c field_40492 + f Lnet/minecraft/core/RegistryAccess$Frozen; STATIC_ACCESS d field_40493 + f [Lnet/minecraft/client/multiplayer/ClientRegistryLayer; $VALUES e field_40494 + m ()Lnet/minecraft/core/LayeredRegistryAccess; createRegistryAccess a method_45738 + m ()[Lnet/minecraft/client/multiplayer/ClientRegistryLayer; $values b method_45739 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ClientSuggestionProvider fzi net/minecraft/class_637 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_3722 + f Lnet/minecraft/client/Minecraft; minecraft b field_3725 + f I pendingSuggestionsId c field_3724 + f Ljava/util/concurrent/CompletableFuture; pendingSuggestionsFuture d field_3723 + f Ljava/util/Set; customCompletionSuggestions e field_39794 + m (D)Ljava/lang/String; prettyPrint a method_2929 + p 0 doubleValue + m (I)Ljava/lang/String; prettyPrint a method_2930 + p 0 intValue + m (ILcom/mojang/brigadier/suggestion/Suggestions;)V completeCustomSuggestions a method_2931 + p 1 transaction + p 2 result + m (Lnet/minecraft/network/protocol/game/ClientboundCustomChatCompletionsPacket$Action;Ljava/util/List;)V modifyCustomCompletions a method_44764 + p 1 action + p 2 entries + m (Lnet/minecraft/commands/SharedSuggestionProvider$ElementSuggestionType;Lcom/mojang/brigadier/suggestion/SuggestionsBuilder;Lnet/minecraft/core/Registry;)Ljava/util/concurrent/CompletableFuture; method_41232 a method_41232 + m (Lcom/mojang/brigadier/context/CommandContext;)Ljava/util/concurrent/CompletableFuture; method_41233 b method_41233 + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/Minecraft;)V + p 1 connection + p 2 minecraft +c net/minecraft/client/multiplayer/ClientSuggestionProvider$1 fzi$1 net/minecraft/class_637$1 + f [I $SwitchMap$net$minecraft$network$protocol$game$ClientboundCustomChatCompletionsPacket$Action a field_39795 + m ()V +c net/minecraft/client/multiplayer/CommonListenerCookie fzj net/minecraft/class_8675 + f Lcom/mojang/authlib/GameProfile; localGameProfile a comp_1611 + f Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager b comp_1612 + f Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries c comp_1613 + f Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d comp_1614 + f Ljava/lang/String; serverBrand e comp_1615 + f Lnet/minecraft/client/multiplayer/ServerData; serverData f comp_1616 + f Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen g comp_1617 + f Ljava/util/Map; serverCookies h comp_2205 + f Lnet/minecraft/client/gui/components/ChatComponent$State; chatState i comp_2553 + f Z strictErrorHandling j comp_2663 + f Ljava/util/Map; customReportDetails k comp_2849 + f Lnet/minecraft/server/ServerLinks; serverLinks l comp_2850 + m ()Lcom/mojang/authlib/GameProfile; localGameProfile a comp_1611 + m ()Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; telemetryManager b comp_1612 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; receivedRegistries c comp_1613 + m ()Lnet/minecraft/world/flag/FeatureFlagSet; enabledFeatures d comp_1614 + m ()Ljava/lang/String; serverBrand e comp_1615 + m ()Lnet/minecraft/client/multiplayer/ServerData; serverData f comp_1616 + m ()Lnet/minecraft/client/gui/screens/Screen; postDisconnectScreen g comp_1617 + m ()Ljava/util/Map; serverCookies h comp_2205 + m ()Lnet/minecraft/client/gui/components/ChatComponent$State; chatState i comp_2553 + m ()Z strictErrorHandling j comp_2663 + m ()Ljava/util/Map; customReportDetails k comp_2849 + m ()Lnet/minecraft/server/ServerLinks; serverLinks l comp_2850 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/flag/FeatureFlagSet;Ljava/lang/String;Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/client/gui/screens/Screen;Ljava/util/Map;Lnet/minecraft/client/gui/components/ChatComponent$State;ZLjava/util/Map;Lnet/minecraft/server/ServerLinks;)V +c net/minecraft/client/multiplayer/DebugSampleSubscriber fzk net/minecraft/class_9211 + f I REQUEST_INTERVAL_MS a field_48934 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection b field_48935 + f Lnet/minecraft/client/gui/components/DebugScreenOverlay; debugScreenOverlay c field_48936 + f Ljava/util/EnumMap; lastRequested d field_48937 + m ()V tick a method_56830 + m (Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V sendSubscriptionRequestIfNeeded a method_56831 + p 1 sampleType + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/client/gui/components/DebugScreenOverlay;)V + p 1 connection + p 2 debugScreenOverlay +c net/minecraft/client/multiplayer/KnownPacksManager fzl net/minecraft/class_9247 + f Lnet/minecraft/server/packs/repository/PackRepository; repository a field_49124 + f Ljava/util/Map; knownPackToId b field_49125 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; createResourceManager a method_57046 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/repository/KnownPack;)V method_57047 a method_57047 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/server/packs/repository/Pack;)V method_57048 a method_57048 + m (Ljava/util/List;)Ljava/util/List; trySelectingPacks a method_57049 + p 1 packs + m ()V +c net/minecraft/client/multiplayer/LegacyServerPinger fzm net/minecraft/class_8676 + f Lcom/google/common/base/Splitter; SPLITTER a field_45604 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; address b field_45605 + f Lnet/minecraft/client/multiplayer/LegacyServerPinger$Output; output c field_45606 + m (Lio/netty/channel/ChannelHandlerContext;Lio/netty/buffer/ByteBuf;)V channelRead0 a method_3005 + p 1 context + p 2 buffer + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/LegacyServerPinger$Output;)V + p 1 address + p 2 output + m ()V +c net/minecraft/client/multiplayer/LegacyServerPinger$Output fzm$a net/minecraft/class_8676$class_8677 +c net/minecraft/client/multiplayer/LevelLoadStatusManager fzn net/minecraft/class_8819 + f Lnet/minecraft/client/player/LocalPlayer; player a field_46579 + f Lnet/minecraft/client/multiplayer/ClientLevel; level b field_46580 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer c field_46581 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; status d field_46582 + m ()V tick a method_54135 + m ()Z levelReady b method_54136 + m ()V loadingPacketsReceived c method_54137 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/LevelRenderer;)V + p 1 player + p 2 level + p 3 levelRenderer +c net/minecraft/client/multiplayer/LevelLoadStatusManager$Status fzn$a net/minecraft/class_8819$class_8820 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; WAITING_FOR_SERVER a field_46584 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; WAITING_FOR_PLAYER_CHUNK b field_46585 + f Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; LEVEL_READY c field_46586 + f [Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; $VALUES d field_46587 + m ()[Lnet/minecraft/client/multiplayer/LevelLoadStatusManager$Status; $values a method_54138 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/MultiPlayerGameMode fzo net/minecraft/class_636 + f Lorg/slf4j/Logger; LOGGER a field_20316 + f Lnet/minecraft/client/Minecraft; minecraft b field_3712 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection c field_3720 + f Lnet/minecraft/core/BlockPos; destroyBlockPos d field_3714 + f Lnet/minecraft/world/item/ItemStack; destroyingItem e field_3718 + f F destroyProgress f field_3715 + f F destroyTicks g field_3713 + f I destroyDelay h field_3716 + f Z isDestroying i field_3717 + f Lnet/minecraft/world/level/GameType; localPlayerMode j field_3719 + f Lnet/minecraft/world/level/GameType; previousLocalPlayerMode k field_24608 + f I carriedIndex l field_3721 + m ()Z canHurtPlayer a method_2908 + m (I)V handlePickItem a method_2916 + p 1 index + m (II)V handleInventoryButtonClick a method_2900 + c GuiEnchantment uses this during multiplayer to tell PlayerControllerMP to send a packet indicating the enchantment action the player has taken. + p 1 containerId + p 2 buttonId + m (IIILnet/minecraft/world/inventory/ClickType;Lnet/minecraft/world/entity/player/Player;)V handleInventoryMouseClick a method_2906 + p 1 containerId + p 2 slotId + p 3 mouseButton + p 4 clickType + p 5 player + m (IIZ)V handleSlotStateChanged a method_54634 + p 1 slotId + p 2 containerId + p 3 newState + m (ILnet/minecraft/world/item/crafting/RecipeHolder;Z)V handlePlaceRecipe a method_2912 + p 1 containerId + p 2 recipe + p 3 shiftDown + m (Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/entity/player/Player;Lorg/apache/commons/lang3/mutable/MutableObject;I)Lnet/minecraft/network/protocol/Packet; method_41929 a method_41929 + m (Lnet/minecraft/world/entity/player/Player;)V adjustPlayer a method_2903 + c Sets player capabilities depending on current gametype. + p 1 player + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; useItem a method_2919 + p 1 player + p 2 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;)V attack a method_2918 + c Attacks an entity + p 1 player + p 2 targetEntity + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interact a method_2905 + c Handles right-clicking an entity, sends a packet to the server. + p 1 player + p 2 target + p 3 hand + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/EntityHitResult;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/world/InteractionResult; interactAt a method_2917 + c Handles right-clicking an entity from the entities side, sends a packet to the server. + p 1 player + p 2 target + p 3 ray + p 4 hand + m (Lnet/minecraft/world/item/ItemStack;)V handleCreativeModeItemDrop a method_2915 + c Sends a Packet107 to the server to drop the item on the ground + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;I)V handleCreativeModeItemAdd a method_2909 + c Used in PlayerControllerMP to update the server with an ItemStack in a slot. + p 1 stack + p 2 slotId + m (Lnet/minecraft/world/level/GameType;)V setLocalMode a method_2907 + c Sets the game type for the player. + p 1 type + m (Lnet/minecraft/world/level/GameType;Lnet/minecraft/world/level/GameType;)V setLocalMode a method_32790 + p 1 localPlayerMode + p 2 previousLocalPlayerMode + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41930 a method_41930 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;)Lnet/minecraft/client/player/LocalPlayer; createPlayer a method_29357 + p 1 level + p 2 statsManager + p 3 recipes + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;ZZ)Lnet/minecraft/client/player/LocalPlayer; createPlayer a method_2901 + p 1 level + p 2 statsManager + p 3 recipes + p 4 wasShiftKeyDown + p 5 wasSprinting + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/multiplayer/prediction/PredictiveAction;)V startPrediction a method_41931 + p 1 level + p 2 action + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; useItemOn a method_2896 + p 1 player + p 2 hand + p 3 result + m (Lnet/minecraft/core/BlockPos;)Z destroyBlock a method_2899 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z startDestroyBlock a method_2910 + c Called when the player is hitting a block with an item. + p 1 loc + p 2 face + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41932 a method_41932 + m (Lorg/apache/commons/lang3/mutable/MutableObject;Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;I)Lnet/minecraft/network/protocol/Packet; method_41933 a method_41933 + m ()V stopDestroyBlock b method_2925 + c Resets current block damage + m (Lnet/minecraft/world/entity/player/Player;)V releaseUsingItem b method_2897 + p 1 player + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/phys/BlockHitResult;)Lnet/minecraft/world/InteractionResult; performUseItemOn b method_41934 + p 1 player + p 2 hand + p 3 result + m (Lnet/minecraft/core/BlockPos;)Z sameDestroyTarget b method_2922 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)Z continueDestroyBlock b method_2902 + p 1 posBlock + p 2 directionFacing + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41935 b method_41935 + m ()V tick c method_2927 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;I)Lnet/minecraft/network/protocol/Packet; method_41936 c method_41936 + m ()Z hasExperience d method_2913 + m ()Z hasMissTime e method_2924 + c Checks if the player is not creative, used for checking if it should break a block instantly + m ()Z hasInfiniteItems f method_2914 + c Returns {@code true} if player is in creative mode. + m ()Z isServerControlledInventory g method_2895 + c Checks if the player is riding a horse, used to choose the GUI to open + m ()Z isAlwaysFlying h method_2928 + m ()Lnet/minecraft/world/level/GameType; getPreviousPlayerMode i method_28107 + m ()Lnet/minecraft/world/level/GameType; getPlayerMode j method_2920 + m ()Z isDestroying k method_2923 + c Return isHittingBlock + m ()I getDestroyStage l method_51888 + m ()V ensureHasSentCarriedItem m method_2911 + c Syncs the current player item with the server + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ClientPacketListener;)V + p 1 minecraft + p 2 connection + m ()V +c net/minecraft/client/multiplayer/PingDebugMonitor fzp net/minecraft/class_8761 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection a field_45948 + f Lnet/minecraft/util/debugchart/LocalSampleLogger; delayTimer b field_45949 + m ()V tick a method_53486 + m (Lnet/minecraft/network/protocol/ping/ClientboundPongResponsePacket;)V onPongReceived a method_53487 + p 1 packet + m (Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/util/debugchart/LocalSampleLogger;)V + p 1 connection + p 2 delayTimer +c net/minecraft/client/multiplayer/PlayerInfo fzq net/minecraft/class_640 + f Lcom/mojang/authlib/GameProfile; profile a field_3741 + c The GameProfile for the player represented by this NetworkPlayerInfo instance + f Ljava/util/function/Supplier; skinLookup b field_45607 + f Lnet/minecraft/world/level/GameType; gameMode c field_3744 + f I latency d field_3739 + f Lnet/minecraft/network/chat/Component; tabListDisplayName e field_3743 + c When this is non-null, it is displayed instead of the player's real name + f Lnet/minecraft/network/chat/RemoteChatSession; chatSession f field_40495 + f Lnet/minecraft/network/chat/SignedMessageValidator; messageValidator g field_39809 + m ()Lcom/mojang/authlib/GameProfile; getProfile a method_2966 + c Returns the GameProfile for the player represented by this NetworkPlayerInfo instance + m (I)V setLatency a method_2970 + p 1 latency + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; createSkinLookup a method_52803 + p 0 profile + m (Lnet/minecraft/world/level/GameType;)V setGameMode a method_2963 + p 1 gameMode + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin;Z)Lnet/minecraft/client/resources/PlayerSkin; method_52806 a method_52806 + m (Ljava/util/function/Supplier;)Lnet/minecraft/client/resources/PlayerSkin; method_52807 a method_52807 + m (Lnet/minecraft/network/chat/Component;)V setTabListDisplayName a method_2962 + p 1 displayName + m (Lnet/minecraft/network/chat/RemoteChatSession;)V setChatSession a method_45740 + p 1 chatSession + m (Z)V clearChatSession a method_46530 + p 1 enforcesSecureChat + m ()Lnet/minecraft/network/chat/RemoteChatSession; getChatSession b method_45741 + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; method_52808 b method_52808 + m (Z)Lnet/minecraft/network/chat/SignedMessageValidator; fallbackMessageValidator b method_46531 + p 0 enforeSecureChat + m ()Lnet/minecraft/network/chat/SignedMessageValidator; getMessageValidator c method_44817 + m ()Z hasVerifiableChat d method_45742 + m ()Lnet/minecraft/world/level/GameType; getGameMode e method_2958 + m ()I getLatency f method_2959 + m ()Lnet/minecraft/client/resources/PlayerSkin; getSkin g method_52810 + m ()Lnet/minecraft/world/scores/PlayerTeam; getTeam h method_2955 + m ()Lnet/minecraft/network/chat/Component; getTabListDisplayName i method_2971 + m (Lcom/mojang/authlib/GameProfile;Z)V + p 1 profile + p 2 enforeSecureChat +c net/minecraft/client/multiplayer/ProfileKeyPairManager fzr net/minecraft/class_7853 + f Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; EMPTY_KEY_MANAGER a field_40800 + m ()Ljava/util/concurrent/CompletableFuture; prepareKeyPair a method_46522 + m (Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/client/User;Ljava/nio/file/Path;)Lnet/minecraft/client/multiplayer/ProfileKeyPairManager; create a method_46532 + p 0 userApiService + p 1 user + p 2 gameDirectory + m ()Z shouldRefreshKeyPair b method_46523 + m ()V +c net/minecraft/client/multiplayer/ProfileKeyPairManager$1 fzr$1 net/minecraft/class_7853$1 + m ()V +c net/minecraft/client/multiplayer/RegistryDataCollector fzs net/minecraft/class_9173 + f Lnet/minecraft/client/multiplayer/RegistryDataCollector$ContentsCollector; contentsCollector a field_48767 + f Lnet/minecraft/client/multiplayer/TagCollector; tagCollector b field_48768 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V appendContents a method_56583 + p 1 registryKey + p 2 registryEntries + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;Z)Lnet/minecraft/core/RegistryAccess$Frozen; collectGameRegistries a method_56585 + p 1 resourceProvider + p 2 registryAccess + p 3 isMemoryConnection + m (Ljava/util/Map;)V appendTags a method_56586 + p 1 tags + m ()V +c net/minecraft/client/multiplayer/RegistryDataCollector$ContentsCollector fzs$a net/minecraft/class_9173$class_9174 + f Ljava/util/Map; elements a field_48769 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/List; method_56587 a method_56587 + m (Lnet/minecraft/resources/ResourceKey;Ljava/util/List;)V append a method_56588 + p 1 registryKey + p 2 entries + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lnet/minecraft/core/RegistryAccess;)Lnet/minecraft/core/RegistryAccess; loadRegistries a method_56589 + p 1 resourceProvider + p 2 registryAccess + m ()V +c net/minecraft/client/multiplayer/ServerData fzt net/minecraft/class_642 + f Ljava/lang/String; name a field_3752 + f Ljava/lang/String; ip b field_3761 + f Lnet/minecraft/network/chat/Component; status c field_3753 + f Lnet/minecraft/network/chat/Component; motd d field_3757 + f Lnet/minecraft/network/protocol/status/ServerStatus$Players; players e field_41861 + f J ping f field_3758 + f I protocol g field_3756 + f Lnet/minecraft/network/chat/Component; version h field_3760 + f Ljava/util/List; playerList i field_3762 + f Lorg/slf4j/Logger; LOGGER j field_42889 + f I MAX_ICON_SIZE k field_46206 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; packStatus l field_3755 + f [B iconBytes m field_42890 + f Lnet/minecraft/client/multiplayer/ServerData$Type; type n field_45608 + f Lnet/minecraft/client/multiplayer/ServerData$State; state o field_47879 + m ()Lnet/minecraft/nbt/CompoundTag; write a method_2992 + c Returns an NBTTagCompound with the server's name, IP and maybe acceptTextures. + m (Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus;)V setResourcePackStatus a method_2995 + p 1 packStatus + m (Lnet/minecraft/client/multiplayer/ServerData$State;)V setState a method_55824 + p 1 state + m (Lnet/minecraft/client/multiplayer/ServerData;)V copyNameIconFrom a method_44292 + p 1 other + m (Lnet/minecraft/nbt/CompoundTag;)Lnet/minecraft/client/multiplayer/ServerData; read a method_2993 + c Takes an NBTTagCompound with 'name' and 'ip' keys, returns a ServerData instance. + p 0 nbtCompound + m ([B)V setIconBytes a method_49305 + p 1 iconBytes + m ()Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; getResourcePackStatus b method_2990 + m (Lnet/minecraft/client/multiplayer/ServerData;)V copyFrom b method_2996 + p 1 serverData + m ([B)[B validateIcon b method_53885 + p 0 icon + m ()[B getIconBytes c method_49306 + m ()Z isLan d method_2994 + c Returns {@code true} if the server is a LAN server. + m ()Z isRealm e method_52811 + m ()Lnet/minecraft/client/multiplayer/ServerData$Type; type f method_55616 + m ()Lnet/minecraft/client/multiplayer/ServerData$State; state g method_55825 + m (Ljava/lang/String;Ljava/lang/String;Lnet/minecraft/client/multiplayer/ServerData$Type;)V + p 1 name + p 2 ip + p 3 type + m ()V +c net/minecraft/client/multiplayer/ServerData$ServerPackStatus fzt$a net/minecraft/class_642$class_643 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; ENABLED a field_3768 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; DISABLED b field_3764 + f Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; PROMPT c field_3767 + f Lnet/minecraft/network/chat/Component; name d field_3765 + f [Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; $VALUES e field_3766 + m ()Lnet/minecraft/network/chat/Component; getName a method_2997 + m ()[Lnet/minecraft/client/multiplayer/ServerData$ServerPackStatus; $values b method_36896 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/ServerData$State fzt$b net/minecraft/class_642$class_9083 + f Lnet/minecraft/client/multiplayer/ServerData$State; INITIAL a field_47880 + f Lnet/minecraft/client/multiplayer/ServerData$State; PINGING b field_47881 + f Lnet/minecraft/client/multiplayer/ServerData$State; UNREACHABLE c field_47882 + f Lnet/minecraft/client/multiplayer/ServerData$State; INCOMPATIBLE d field_47883 + f Lnet/minecraft/client/multiplayer/ServerData$State; SUCCESSFUL e field_47884 + f [Lnet/minecraft/client/multiplayer/ServerData$State; $VALUES f field_47885 + m ()[Lnet/minecraft/client/multiplayer/ServerData$State; $values a method_55826 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ServerData$Type fzt$c net/minecraft/class_642$class_8678 + f Lnet/minecraft/client/multiplayer/ServerData$Type; LAN a field_45609 + f Lnet/minecraft/client/multiplayer/ServerData$Type; REALM b field_45610 + f Lnet/minecraft/client/multiplayer/ServerData$Type; OTHER c field_45611 + f [Lnet/minecraft/client/multiplayer/ServerData$Type; $VALUES d field_45612 + m ()[Lnet/minecraft/client/multiplayer/ServerData$Type; $values a method_52812 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/multiplayer/ServerList fzu net/minecraft/class_641 + f Lorg/slf4j/Logger; LOGGER a field_3751 + f Lnet/minecraft/util/thread/ProcessorMailbox; IO_MAILBOX b field_39360 + f I MAX_HIDDEN_SERVERS c field_39437 + f Lnet/minecraft/client/Minecraft; minecraft d field_3750 + f Ljava/util/List; serverList e field_3749 + f Ljava/util/List; hiddenServerList f field_39438 + m ()V load a method_2981 + c Loads a list of servers from servers.dat, by running ServerData.getServerDataFromNBTCompound on each NBT compound found in the "servers" tag list. + m (I)Lnet/minecraft/client/multiplayer/ServerData; get a method_2982 + c Gets the ServerData instance stored for the given index in the list. + p 1 index + m (II)V swap a method_2985 + c Takes two list indexes, and swaps their order around. + p 1 pos1 + p 2 pos2 + m (ILnet/minecraft/client/multiplayer/ServerData;)V replace a method_2980 + p 1 index + p 2 server + m (Lnet/minecraft/client/multiplayer/ServerData;)V remove a method_2983 + p 1 serverData + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/util/List;)Z set a method_44294 + p 0 server + p 1 serverList + m (Lnet/minecraft/client/multiplayer/ServerData;Z)V add a method_2988 + p 1 server + p 2 hidden + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; get a method_44295 + p 1 ip + m ()V save b method_2987 + c Runs getNBTCompound on each ServerData instance, puts everything into a "servers" NBT list and writes it to servers.dat. + m (Lnet/minecraft/client/multiplayer/ServerData;)V saveSingleServer b method_2986 + p 0 server + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/ServerData; unhide b method_44296 + p 1 ip + m ()I size c method_2984 + c Counts the number of ServerData instances in the list. + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_44090 c method_44090 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/multiplayer/ServerStatusPinger fzv net/minecraft/class_644 + f Lorg/slf4j/Logger; LOGGER a field_3771 + f Lnet/minecraft/network/chat/Component; CANT_CONNECT_MESSAGE b field_33740 + f Ljava/util/List; connections c field_3769 + c A list of NetworkManagers that have pending pings + m ()V tick a method_3000 + m (II)Lnet/minecraft/network/chat/Component; formatPlayerCount a method_27647 + p 0 players + p 1 capacity + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Ljava/lang/Runnable;)V pingServer a method_3003 + p 1 serverData + p 2 serverListUpdater + p 3 stateUpdater + m (Ljava/net/InetSocketAddress;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;)V pingLegacyServer a method_3001 + p 1 resolvedServerAddress + p 2 serverAddress + p 3 serverData + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/client/multiplayer/ServerData;)V onPingFailed a method_36897 + p 1 reason + p 2 serverData + m ()V removeAll b method_3004 + m ()V + m ()V +c net/minecraft/client/multiplayer/ServerStatusPinger$1 fzv$1 net/minecraft/class_644$1 + f Lnet/minecraft/network/Connection; val$connection a field_3774 + f Lnet/minecraft/client/multiplayer/ServerData; val$data b field_3776 + f Ljava/lang/Runnable; val$onPersistentDataChange c field_25636 + f Ljava/lang/Runnable; val$onPongResponse d field_47886 + f Ljava/net/InetSocketAddress; val$address e field_33741 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$rawAddress f field_45613 + f Lnet/minecraft/client/multiplayer/ServerStatusPinger; field_3777 g field_3777 + f Z success h field_3775 + f Z receivedPing i field_3773 + f J pingStart j field_3772 + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_49307 a method_49307 + m (Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/network/protocol/status/ServerStatus$Players;)V method_49308 a method_49308 + m (Lnet/minecraft/client/multiplayer/ServerData;Lnet/minecraft/network/protocol/status/ServerStatus$Version;)V method_49309 a method_49309 + m (Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Lnet/minecraft/network/protocol/status/ServerStatus$Favicon;)V method_49310 a method_49310 + m (Lnet/minecraft/client/multiplayer/ServerData;)V method_49311 b method_49311 + m (Lnet/minecraft/client/multiplayer/ServerStatusPinger;Lnet/minecraft/network/Connection;Lnet/minecraft/client/multiplayer/ServerData;Ljava/lang/Runnable;Ljava/lang/Runnable;Ljava/net/InetSocketAddress;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)V +c net/minecraft/client/multiplayer/ServerStatusPinger$2 fzv$2 net/minecraft/class_644$2 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; val$rawAddress a field_3778 + f Lnet/minecraft/client/multiplayer/ServerData; val$data b field_3779 + m (Lnet/minecraft/client/multiplayer/ServerData;ILjava/lang/String;Ljava/lang/String;II)V method_52813 a method_52813 + m (Lnet/minecraft/client/multiplayer/ServerStatusPinger;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;Lnet/minecraft/client/multiplayer/ServerData;)V +c net/minecraft/client/multiplayer/SessionSearchTrees fzw net/minecraft/class_1124 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; RECIPE_COLLECTIONS a field_46200 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; CREATIVE_NAMES b field_5495 + f Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key; CREATIVE_TAGS c field_5494 + f Ljava/util/concurrent/CompletableFuture; creativeByNameSearch d field_51826 + f Ljava/util/concurrent/CompletableFuture; creativeByTagSearch e field_51827 + f Ljava/util/concurrent/CompletableFuture; recipeSearch f field_51828 + f Ljava/util/Map; reloaders g field_51829 + m ()V rebuildAfterLanguageChange a method_60348 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60349 a method_60349 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60350 a method_60350 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60351 a method_60351 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/core/RegistryAccess$Frozen;)V updateRecipes a method_60352 + p 1 recipeBook + p 2 registries + m (Lnet/minecraft/client/multiplayer/SessionSearchTrees$Key;Ljava/lang/Runnable;)V register a method_60353 + p 1 key + p 2 reloader + m (Ljava/lang/String;)Z method_60354 a method_60354 + m (Ljava/util/List;)V updateCreativeTags a method_60355 + p 1 items + m (Ljava/util/stream/Stream;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;)Ljava/util/stream/Stream; getTooltipLines a method_60356 + p 0 items + p 1 context + p 2 tooltipFlag + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)V updateCreativeTooltips a method_60357 + p 1 registries + p 2 items + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/resources/ResourceLocation; method_60358 a method_60358 + m (Lnet/minecraft/core/Registry;Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Ljava/util/stream/Stream; method_60359 a method_60359 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/client/gui/screens/recipebook/RecipeCollection;)Ljava/util/stream/Stream; method_60360 a method_60360 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/core/Registry;Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60361 a method_60361 + m (Lnet/minecraft/core/RegistryAccess$Frozen;Lnet/minecraft/world/item/crafting/RecipeHolder;)Lnet/minecraft/world/item/ItemStack; method_60362 a method_60362 + m (Lnet/minecraft/network/chat/Component;)Ljava/lang/String; method_60363 a method_60363 + m ()Lnet/minecraft/client/searchtree/SearchTree; recipes b method_60364 + m (Lnet/minecraft/world/item/Item$TooltipContext;Lnet/minecraft/world/item/TooltipFlag;Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60365 b method_60365 + m (Lnet/minecraft/world/item/ItemStack;)Ljava/util/stream/Stream; method_60366 b method_60366 + m (Lnet/minecraft/client/ClientRecipeBook;Lnet/minecraft/core/RegistryAccess$Frozen;)V method_60367 b method_60367 + m (Ljava/util/List;)V method_60368 b method_60368 + m (Lnet/minecraft/core/HolderLookup$Provider;Ljava/util/List;)V method_60369 b method_60369 + m ()Lnet/minecraft/client/searchtree/SearchTree; creativeTagSearch c method_60370 + m (Ljava/util/List;)Lnet/minecraft/client/searchtree/SearchTree; method_60371 c method_60371 + m ()Lnet/minecraft/client/searchtree/SearchTree; creativeNameSearch d method_60372 + m ()V + m ()V +c net/minecraft/client/multiplayer/SessionSearchTrees$Key fzw$a net/minecraft/class_1124$class_1125 + m ()V +c net/minecraft/client/multiplayer/TagCollector fzx net/minecraft/class_9175 + f Ljava/util/Map; tags a field_48770 + m ()V refreshBuiltInTagDependentData a method_57054 + m (Lnet/minecraft/resources/ResourceKey;)Z method_57051 a method_57051 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V append a method_56590 + p 1 registryKey + p 2 networkPayload + m (Ljava/util/function/Predicate;Lnet/minecraft/core/RegistryAccess;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/tags/TagNetworkSerialization$NetworkPayload;)V method_56592 a method_56592 + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)V method_57052 a method_57052 + m (Lnet/minecraft/core/RegistryAccess;Ljava/util/function/Predicate;)V applyTags a method_56591 + p 1 registryAccess + p 2 filter + m (Lnet/minecraft/core/RegistryAccess;Z)V updateTags a method_57053 + p 1 registryAccess + p 2 isMemoryConnection + m (Lnet/minecraft/core/RegistryAccess$RegistryEntry;)Z method_57055 b method_57055 + m ()V +c net/minecraft/client/multiplayer/TransferState fzy net/minecraft/class_9112 + f Ljava/util/Map; cookies a comp_2206 + m ()Ljava/util/Map; cookies a comp_2206 + m (Ljava/util/Map;)V +c net/minecraft/client/multiplayer/chat/ChatListener fzz net/minecraft/class_7594 + f Lnet/minecraft/network/chat/Component; CHAT_VALIDATION_ERROR a field_45950 + f Lnet/minecraft/client/Minecraft; minecraft b field_39779 + f Ljava/util/Deque; delayedMessageQueue c field_39796 + f J messageDelay d field_39797 + f J previousMessageTime e field_39798 + m ()V tick a method_44765 + m (D)V setMessageDelay a method_44766 + p 1 delaySeconds + m (Ljava/util/UUID;)Z isSenderLocalPlayer a method_44738 + p 1 sender + m (Ljava/util/UUID;Lnet/minecraft/network/chat/ChatType$Bound;)V handleChatMessageError a method_53488 + p 1 sender + p 2 boundChatType + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/Component;)V narrateChatMessage a method_44772 + p 1 boundChatType + p 2 message + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Z method_45745 a method_45745 + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z showMessageToPlayer a method_44943 + p 1 boundChatType + p 2 chatMessage + p 3 decoratedServerContent + p 4 gameProfile + p 5 onlyShowSecureChat + p 6 timestamp + m (Lnet/minecraft/network/chat/Component;)Ljava/util/UUID; guessChatUUID a method_44734 + p 1 message + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)V logSystemMessage a method_44735 + p 1 message + p 2 timestamp + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;)V handleDisguisedChatMessage a method_45746 + p 1 message + p 2 boundChatType + m (Lnet/minecraft/network/chat/Component;Z)V handleSystemMessage a method_44736 + p 1 message + p 2 isOverlay + m (Lnet/minecraft/network/chat/MessageSignature;)Z removeFromDelayedMessageQueue a method_44819 + p 1 signature + m (Lnet/minecraft/network/chat/MessageSignature;Lnet/minecraft/client/multiplayer/chat/ChatListener$Message;)Z method_45747 a method_45747 + m (Lnet/minecraft/network/chat/MessageSignature;Ljava/util/function/BooleanSupplier;)V handleMessage a method_44818 + p 1 signature + p 2 handler + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/ChatType$Bound;)V handlePlayerChatMessage a method_45748 + p 1 chatMessage + p 2 gameProfile + p 3 boundChatType + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/ChatType$Bound;Lcom/mojang/authlib/GameProfile;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)V logPlayerMessage a method_44737 + p 1 message + p 2 boundChatType + p 3 gameProfile + p 4 trustLevel + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; evaluateTrustLevel a method_44732 + p 1 chatMessage + p 2 decoratedServerContent + p 3 timestamp + m ()V acceptNextDelayedMessage b method_44769 + m (Ljava/util/UUID;Lnet/minecraft/network/chat/ChatType$Bound;)Z method_53489 b method_53489 + m (Lnet/minecraft/network/chat/ChatType$Bound;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Lcom/mojang/authlib/GameProfile;ZLjava/time/Instant;)Z method_45749 b method_45749 + m ()J queueSize c method_44944 + m ()V clearQueue d method_44945 + m ()Z willDelayMessages e method_44775 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/multiplayer/chat/ChatListener$Message fzz$a net/minecraft/class_7594$class_7627 + f Lnet/minecraft/network/chat/MessageSignature; signature a comp_1034 + f Ljava/util/function/BooleanSupplier; handler b comp_1035 + m ()Z accept a method_45750 + m ()Lnet/minecraft/network/chat/MessageSignature; signature b comp_1034 + m ()Ljava/util/function/BooleanSupplier; handler c comp_1035 + m (Lnet/minecraft/network/chat/MessageSignature;Ljava/util/function/BooleanSupplier;)V +c net/minecraft/client/multiplayer/chat/ChatLog gaa net/minecraft/class_7555 + f [Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; buffer a field_40496 + f I nextId b field_40497 + m ()I start a method_45751 + m (I)Lcom/mojang/serialization/Codec; codec a method_46533 + p 0 size + m (II)[Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; method_46534 a method_46534 + m (ILjava/util/List;)Lcom/mojang/serialization/DataResult; method_46535 a method_46535 + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent;)V push a method_44535 + p 1 event + m ()I end b method_45752 + m (I)Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent; lookup b method_44532 + p 1 id + m (II)Ljava/lang/String; method_49632 b method_49632 + m ()Ljava/util/List; loggedChatEvents c method_46536 + m (I)I index c method_45753 + p 1 index + m ()I size d method_46537 + m (I)V + p 1 size + m (ILjava/util/List;)V + p 1 size + p 2 events +c net/minecraft/client/multiplayer/chat/ChatTrustLevel gab net/minecraft/class_7595 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; SECURE a field_39780 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; MODIFIED b field_39781 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; NOT_SECURE c field_39782 + f Lcom/mojang/serialization/Codec; CODEC d field_40801 + f Ljava/lang/String; serializedName e field_40802 + f [Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; $VALUES f field_39784 + m ()Z isNotSecure a method_44740 + m (Lnet/minecraft/network/chat/Component;)Z containsModifiedStyle a method_45754 + p 0 chatMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Lnet/minecraft/client/GuiMessageTag; createTag a method_44741 + p 1 chatMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;)Z isModified a method_45755 + p 0 chatMessage + p 1 decoratedServerContent + m (Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; evaluate a method_44742 + p 0 chatMessage + p 1 decoratedServerContent + p 2 timestamp + m (Lnet/minecraft/network/chat/Style;)Z isModifiedStyle a method_45756 + p 0 style + m (Lnet/minecraft/network/chat/Style;Ljava/lang/String;)Ljava/util/Optional; method_45757 a method_45757 + m ()[Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; $values b method_44743 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 serializedName + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatEvent gac net/minecraft/class_7629 + f Lcom/mojang/serialization/Codec; CODEC a field_40803 + m ()Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; type a method_46538 + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatEvent$Type gac$a net/minecraft/class_7629$class_7854 + f Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; PLAYER a field_40804 + f Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; SYSTEM b field_40805 + f Ljava/lang/String; serializedName c field_40806 + f Ljava/util/function/Supplier; codec d field_40807 + f [Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; $VALUES e field_40808 + m ()Lcom/mojang/serialization/MapCodec; codec a method_46539 + m ()Lcom/mojang/serialization/MapCodec; method_46540 b method_46540 + m ()Lcom/mojang/serialization/MapCodec; method_46541 d method_46541 + m ()[Lnet/minecraft/client/multiplayer/chat/LoggedChatEvent$Type; $values e method_46542 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Supplier;)V + p 3 serializedName + p 4 codec + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatMessage gad net/minecraft/class_7557 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player; player a method_44552 + p 0 profile + p 1 message + p 2 trustLevel + m (Ljava/util/UUID;)Z canReport a method_44553 + p 1 uuid + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$System; system a method_44554 + p 0 message + p 1 timestamp + m ()Lnet/minecraft/network/chat/Component; toContentComponent b method_44551 + m ()Lnet/minecraft/network/chat/Component; toNarrationComponent c method_44555 +c net/minecraft/client/multiplayer/chat/LoggedChatMessage$Player gad$a net/minecraft/class_7557$class_7558 + f Lcom/mojang/serialization/MapCodec; CODEC b field_40809 + f Lcom/mojang/authlib/GameProfile; profile c comp_868 + f Lnet/minecraft/network/chat/PlayerChatMessage; message d comp_870 + f Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; trustLevel e comp_905 + f Ljava/time/format/DateTimeFormatter; TIME_FORMATTER f field_39637 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46543 a method_46543 + m ()Lnet/minecraft/network/chat/Component; toHeadingComponent d method_44556 + m ()Ljava/util/UUID; profileId e method_44557 + m ()Lcom/mojang/authlib/GameProfile; profile f comp_868 + m ()Lnet/minecraft/network/chat/PlayerChatMessage; message g comp_870 + m ()Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel; trustLevel h comp_905 + m ()Lnet/minecraft/network/chat/Component; getTimeComponent i method_44558 + m (Lcom/mojang/authlib/GameProfile;Lnet/minecraft/network/chat/PlayerChatMessage;Lnet/minecraft/client/multiplayer/chat/ChatTrustLevel;)V + m ()V +c net/minecraft/client/multiplayer/chat/LoggedChatMessage$System gad$b net/minecraft/class_7557$class_7559 + f Lcom/mojang/serialization/MapCodec; CODEC b field_40810 + f Lnet/minecraft/network/chat/Component; message c comp_871 + f Ljava/time/Instant; timeStamp d comp_872 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_46544 a method_46544 + m ()Lnet/minecraft/network/chat/Component; message d comp_871 + m ()Ljava/time/Instant; timeStamp e comp_872 + m (Lnet/minecraft/network/chat/Component;Ljava/time/Instant;)V + m ()V +c net/minecraft/client/multiplayer/chat/package-info gae net/minecraft/class_7562 +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender gaf net/minecraft/class_7563 + m ()Z isEnabled a method_44561 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; create a method_44562 + p 0 environment + p 1 userApiService + m (Ljava/util/UUID;Lnet/minecraft/client/multiplayer/chat/report/ReportType;Lcom/mojang/authlib/minecraft/report/AbuseReport;)Ljava/util/concurrent/CompletableFuture; send a method_44563 + p 1 id + p 2 reportType + p 3 report + m ()Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; reportLimits b method_44564 +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$1 gaf$1 net/minecraft/class_7563$1 + f [I $SwitchMap$com$mojang$authlib$exceptions$MinecraftClientException$ErrorType a field_39641 + m ()V +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$SendException gaf$a net/minecraft/class_7563$class_7564 + m (Lnet/minecraft/network/chat/Component;Ljava/lang/Throwable;)V +c net/minecraft/client/multiplayer/chat/report/AbuseReportSender$Services gaf$b net/minecraft/class_7563$class_7565 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment a comp_875 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService b comp_876 + f Lnet/minecraft/network/chat/Component; SERVICE_UNAVAILABLE_TEXT c field_39642 + f Lnet/minecraft/network/chat/Component; HTTP_ERROR_TEXT d field_39643 + f Lnet/minecraft/network/chat/Component; JSON_ERROR_TEXT e field_39644 + m (Lcom/mojang/authlib/exceptions/MinecraftClientException;)Lnet/minecraft/network/chat/Component; getErrorDescription a method_44565 + p 1 exception + m (Lcom/mojang/authlib/exceptions/MinecraftClientHttpException;)Lnet/minecraft/network/chat/Component; getHttpErrorDescription a method_44566 + p 1 httpException + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/report/AbuseReport;Lnet/minecraft/client/multiplayer/chat/report/ReportType;)Lcom/mojang/datafixers/util/Unit; method_44567 a method_44567 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment c comp_875 + m ()Lcom/mojang/authlib/minecraft/UserApiService; userApiService d comp_876 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)V + m ()V +c net/minecraft/client/multiplayer/chat/report/BanReason gag net/minecraft/class_8186 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; GENERIC_VIOLATION a field_42891 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; FALSE_REPORTING b field_42892 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HATE_SPEECH c field_42893 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HATE_TERRORISM_NOTORIOUS_FIGURE d field_42894 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; HARASSMENT_OR_BULLYING e field_42895 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; DEFAMATION_IMPERSONATION_FALSE_INFORMATION f field_42896 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; DRUGS g field_42897 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; FRAUD h field_42898 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; SPAM_OR_ADVERTISING i field_42899 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; NUDITY_OR_PORNOGRAPHY j field_42900 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; SEXUALLY_INAPPROPRIATE k field_42901 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; EXTREME_VIOLENCE_OR_GORE l field_42902 + f Lnet/minecraft/client/multiplayer/chat/report/BanReason; IMMINENT_HARM_TO_PERSON_OR_PROPERTY m field_42903 + f Lnet/minecraft/network/chat/Component; title n field_42904 + f [Lnet/minecraft/client/multiplayer/chat/report/BanReason; $VALUES o field_42905 + m ()Lnet/minecraft/network/chat/Component; title a method_49312 + m (I)Lnet/minecraft/client/multiplayer/chat/report/BanReason; byId a method_49313 + p 0 id + m ()[Lnet/minecraft/client/multiplayer/chat/report/BanReason; $values b method_49314 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ChatReport gah net/minecraft/class_7566 + f Lit/unimi/dsi/fastutil/ints/IntSet; reportedMessages g field_46059 + m ()Lnet/minecraft/client/multiplayer/chat/report/ChatReport; copy a method_44585 + m (ILcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V toggleReported a method_44569 + p 1 id + p 2 limits + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId +c net/minecraft/client/multiplayer/chat/report/ChatReport$Builder gah$a net/minecraft/class_7566$class_8772 + m ()Lit/unimi/dsi/fastutil/ints/IntSet; reportedMessages a method_53597 + m (I)V toggleReported a method_53598 + p 1 id + m (Lnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;Z)Lcom/mojang/authlib/minecraft/report/ReportChatMessage; buildReportedChatMessage a method_53599 + p 1 chatMessage + p 2 messageReported + m (Ljava/util/List;ILnet/minecraft/client/multiplayer/chat/LoggedChatMessage$Player;)V method_53601 a method_53601 + m (I)Z isReported b method_53603 + p 1 id + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lcom/mojang/authlib/minecraft/report/ReportEvidence; buildEvidence b method_53604 + p 1 reportingContext + m ()Lnet/minecraft/client/multiplayer/chat/report/ChatReport$Builder; copy d method_53606 + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedProfileId + p 2 limits +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder gai net/minecraft/class_7757 + f I leadingCount a field_40498 + f Ljava/util/List; activeCollectors b field_40499 + m ()Z isActive a method_45758 + m (Lnet/minecraft/client/multiplayer/chat/ChatLog;Lit/unimi/dsi/fastutil/ints/IntCollection;Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Handler;)V collectAllContext a method_45759 + p 1 chatLog + p 2 reportedMessages + p 3 handler + m (Lnet/minecraft/network/chat/PlayerChatMessage;)V trackContext a method_45760 + p 1 lastChainMessage + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z acceptContext b method_45761 + p 1 lastChainMessage + m (I)V + p 1 leadingCount +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Collector gai$a net/minecraft/class_7757$class_7758 + f Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder; field_40500 a field_40500 + f Ljava/util/Set; lastSeenSignatures b field_40501 + f Lnet/minecraft/network/chat/PlayerChatMessage; lastChainMessage c field_40502 + f Z collectingChain d field_40503 + f I count e field_40504 + m ()Z isComplete a method_45762 + m (Lnet/minecraft/network/chat/PlayerChatMessage;)Z accept a method_45763 + p 1 message + m (Lnet/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder;Lnet/minecraft/network/chat/PlayerChatMessage;)V + p 2 lastChainMessage +c net/minecraft/client/multiplayer/chat/report/ChatReportContextBuilder$Handler gai$b net/minecraft/class_7757$class_7632 +c net/minecraft/client/multiplayer/chat/report/NameReport gaj net/minecraft/class_8773 + f Ljava/lang/String; reportedName g field_46060 + m ()Ljava/lang/String; getReportedName a method_53607 + m ()Lnet/minecraft/client/multiplayer/chat/report/NameReport; copy c method_53608 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/lang/String;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId + p 4 reportedName +c net/minecraft/client/multiplayer/chat/report/NameReport$Builder gaj$a net/minecraft/class_8773$class_8774 + m (Lnet/minecraft/client/multiplayer/chat/report/NameReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Ljava/lang/String;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedProfileId + p 2 reportedName + p 3 limits +c net/minecraft/client/multiplayer/chat/report/Report gak net/minecraft/class_7855 + f Ljava/util/UUID; reportId a field_40813 + f Ljava/time/Instant; createdAt b field_40814 + f Ljava/util/UUID; reportedProfileId c field_40815 + f Ljava/lang/String; comments d field_40817 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason e field_40818 + f Z attested f field_52305 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lnet/minecraft/client/gui/screens/Screen; createScreen a method_53596 + p 1 lastScreen + p 2 reportingContext + m (Ljava/util/UUID;)Z isReportedPlayer a method_46549 + p 1 playerId + m ()Lnet/minecraft/client/multiplayer/chat/report/Report; copy b method_46547 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;)V + p 1 reportId + p 2 createdAt + p 3 reportedProfileId +c net/minecraft/client/multiplayer/chat/report/Report$Builder gak$a net/minecraft/class_7855$class_8775 + f Lnet/minecraft/client/multiplayer/chat/report/Report; report a field_46061 + f Lcom/mojang/authlib/minecraft/report/AbuseReportLimits; limits b field_46062 + m (Lnet/minecraft/client/multiplayer/chat/report/ReportReason;)V setReason a method_53609 + p 1 reason + m (Lnet/minecraft/client/multiplayer/chat/report/ReportingContext;)Lcom/mojang/datafixers/util/Either; build a method_53600 + p 1 reportingContext + m (Ljava/lang/String;)V setComments a method_53610 + p 1 comments + m (Z)V setAttested a method_61155 + p 1 attested + m ()Z hasContent b method_53602 + m ()Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; checkBuildable c method_53605 + m ()Lnet/minecraft/client/multiplayer/chat/report/Report; report e method_53611 + m ()Ljava/util/UUID; reportedProfileId f method_53612 + m ()Ljava/lang/String; comments g method_53613 + m ()Z attested h method_61156 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportReason; reason i method_53614 + m (Lnet/minecraft/client/multiplayer/chat/report/Report;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits +c net/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason gak$b net/minecraft/class_7855$class_7567 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NO_REASON a field_39655 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NO_REPORTED_MESSAGES b field_39656 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; TOO_MANY_MESSAGES c field_39657 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; COMMENT_TOO_LONG d field_39658 + f Lnet/minecraft/client/multiplayer/chat/report/Report$CannotBuildReason; NOT_ATTESTED e field_52306 + f Lnet/minecraft/network/chat/Component; message f comp_877 + m ()Lnet/minecraft/client/gui/components/Tooltip; tooltip a method_53615 + m ()Lnet/minecraft/network/chat/Component; message b comp_877 + m (Lnet/minecraft/network/chat/Component;)V + m ()V +c net/minecraft/client/multiplayer/chat/report/Report$Result gak$c net/minecraft/class_7855$class_7568 + f Ljava/util/UUID; id a comp_878 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; reportType b comp_1910 + f Lcom/mojang/authlib/minecraft/report/AbuseReport; report c comp_879 + m ()Ljava/util/UUID; id a comp_878 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportType; reportType b comp_1910 + m ()Lcom/mojang/authlib/minecraft/report/AbuseReport; report c comp_879 + m (Ljava/util/UUID;Lnet/minecraft/client/multiplayer/chat/report/ReportType;Lcom/mojang/authlib/minecraft/report/AbuseReport;)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment gal net/minecraft/class_7569 + f Ljava/lang/String; clientVersion a comp_880 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server; server b comp_881 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; local a method_44586 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; realm a method_44587 + p 0 realmsServer + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; create a method_44588 + p 0 server + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; thirdParty a method_44589 + p 0 ip + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ClientInfo; clientInfo b method_44590 + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$ThirdPartyServerInfo; thirdPartyServerInfo c method_44591 + m ()Lcom/mojang/authlib/yggdrasil/request/AbuseReportRequest$RealmInfo; realmInfo d method_44592 + m ()Ljava/lang/String; clientVersion e comp_880 + m ()Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server; server f comp_881 + m ()Ljava/lang/String; getClientVersion g method_44593 + m (Ljava/lang/String;Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server;)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server gal$a net/minecraft/class_7569$class_7570 +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server$Realm gal$a$a net/minecraft/class_7569$class_7570$class_7571 + f J realmId a comp_882 + f I slotId b comp_883 + m ()J realmId a comp_882 + m ()I slotId b comp_883 + m (Lcom/mojang/realmsclient/dto/RealmsServer;)V + p 1 realmsServer + m (JI)V +c net/minecraft/client/multiplayer/chat/report/ReportEnvironment$Server$ThirdParty gal$a$b net/minecraft/class_7569$class_7570$class_7572 + f Ljava/lang/String; ip a comp_884 + m ()Ljava/lang/String; ip a comp_884 + m (Ljava/lang/String;)V +c net/minecraft/client/multiplayer/chat/report/ReportReason gam net/minecraft/class_7573 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; GENERIC a field_46063 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; HATE_SPEECH b field_39659 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; HARASSMENT_OR_BULLYING c field_39664 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; SELF_HARM_OR_SUICIDE d field_39667 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; IMMINENT_HARM e field_39662 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; DEFAMATION_IMPERSONATION_FALSE_INFORMATION f field_39666 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; ALCOHOL_TOBACCO_DRUGS g field_39670 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; CHILD_SEXUAL_EXPLOITATION_OR_ABUSE h field_39661 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; TERRORISM_OR_VIOLENT_EXTREMISM i field_39660 + f Lnet/minecraft/client/multiplayer/chat/report/ReportReason; NON_CONSENSUAL_INTIMATE_IMAGERY j field_39663 + f Ljava/lang/String; backendName k field_39671 + f Lnet/minecraft/network/chat/Component; title l field_39672 + f Lnet/minecraft/network/chat/Component; description m field_39673 + f [Lnet/minecraft/client/multiplayer/chat/report/ReportReason; $VALUES n field_39674 + m ()Ljava/lang/String; backendName a method_44594 + m ()Lnet/minecraft/network/chat/Component; title b method_44595 + m ()Lnet/minecraft/network/chat/Component; description c method_44596 + m ()[Lnet/minecraft/client/multiplayer/chat/report/ReportReason; $values d method_44597 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ReportType gan net/minecraft/class_8776 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; CHAT a field_46064 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; SKIN b field_46065 + f Lnet/minecraft/client/multiplayer/chat/report/ReportType; USERNAME c field_46066 + f Ljava/lang/String; backendName d field_46067 + f [Lnet/minecraft/client/multiplayer/chat/report/ReportType; $VALUES e field_46068 + m ()Ljava/lang/String; backendName a method_53616 + m ()[Lnet/minecraft/client/multiplayer/chat/report/ReportType; $values b method_53617 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/multiplayer/chat/report/ReportingContext gao net/minecraft/class_7574 + f I LOG_CAPACITY a field_39675 + f Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; sender b field_40819 + f Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment; environment c field_40820 + f Lnet/minecraft/client/multiplayer/chat/ChatLog; chatLog d field_40821 + f Lnet/minecraft/client/multiplayer/chat/report/Report; draftReport e field_40822 + m ()Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender; sender a method_46550 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/Runnable;Z)V draftReportHandled a method_46552 + p 1 minecraft + p 2 screen + p 3 quitter + p 4 quitToTitle + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/chat/report/Report;Lnet/minecraft/client/gui/screens/Screen;Ljava/lang/Runnable;Z)V method_46551 a method_46551 + m (Lnet/minecraft/client/multiplayer/chat/report/Report;)V setReportDraft a method_46553 + p 1 draftReport + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;)Z matches a method_44598 + p 1 environment + m (Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lcom/mojang/authlib/minecraft/UserApiService;)Lnet/minecraft/client/multiplayer/chat/report/ReportingContext; create a method_44599 + p 0 environment + p 1 userApiService + m (Ljava/util/UUID;)Z hasDraftReportFor a method_46554 + p 1 uuid + m ()Lnet/minecraft/client/multiplayer/chat/ChatLog; chatLog b method_46555 + m ()Z hasDraftReport c method_46556 + m (Lnet/minecraft/client/multiplayer/chat/report/AbuseReportSender;Lnet/minecraft/client/multiplayer/chat/report/ReportEnvironment;Lnet/minecraft/client/multiplayer/chat/ChatLog;)V + p 1 sender + p 2 enviroment + p 3 chatLog +c net/minecraft/client/multiplayer/chat/report/SkinReport gap net/minecraft/class_8777 + f Ljava/util/function/Supplier; skinGetter g field_46069 + m ()Ljava/util/function/Supplier; getSkinGetter a method_53618 + m ()Lnet/minecraft/client/multiplayer/chat/report/SkinReport; copy c method_53619 + m (Ljava/util/UUID;Ljava/time/Instant;Ljava/util/UUID;Ljava/util/function/Supplier;)V + p 1 reportId + p 2 created + p 3 reportedProfileId + p 4 skinGetter +c net/minecraft/client/multiplayer/chat/report/SkinReport$Builder gap$a net/minecraft/class_8777$class_8778 + m (Lnet/minecraft/client/multiplayer/chat/report/SkinReport;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 report + p 2 limits + m (Ljava/util/UUID;Ljava/util/function/Supplier;Lcom/mojang/authlib/minecraft/report/AbuseReportLimits;)V + p 1 reportedPlayerId + p 2 skinGetter + p 3 limits +c net/minecraft/client/multiplayer/chat/report/package-info gaq net/minecraft/class_7575 +c net/minecraft/client/multiplayer/package-info gar net/minecraft/class_6235 +c net/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler gas net/minecraft/class_7202 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectOpenHashMap; serverVerifiedStates a field_37953 + f I currentSequenceNr b field_37954 + f Z isPredicting c field_37955 + m ()Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler; startPredicting a method_41937 + m (ILnet/minecraft/client/multiplayer/ClientLevel;)V endPredictionsUpTo a method_41938 + p 1 sequence + p 2 level + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/player/LocalPlayer;Ljava/lang/Long;Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState;)Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState; method_41939 a method_41939 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z updateKnownServerState a method_41940 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/player/LocalPlayer;)V retainKnownServerState a method_41941 + p 1 pos + p 2 state + p 3 player + m ()I currentSequence b method_41942 + m ()Z isPredicting c method_41943 + m ()V +c net/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState gas$a net/minecraft/class_7202$class_7203 + f Lnet/minecraft/world/phys/Vec3; playerPos a field_37956 + f I sequence b field_37957 + f Lnet/minecraft/world/level/block/state/BlockState; blockState c field_37958 + m (I)Lnet/minecraft/client/multiplayer/prediction/BlockStatePredictionHandler$ServerVerifiedState; setSequence a method_41944 + p 1 sequence + m (Lnet/minecraft/world/level/block/state/BlockState;)V setBlockState a method_41945 + p 1 blockState + m (ILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/phys/Vec3;)V + p 1 sequence + p 2 blockState + p 3 playerPos +c net/minecraft/client/multiplayer/prediction/PredictiveAction gat net/minecraft/class_7204 +c net/minecraft/client/multiplayer/prediction/package-info gau net/minecraft/class_7205 +c net/minecraft/client/multiplayer/resolver/AddressCheck gav net/minecraft/class_6394 + m ()Lnet/minecraft/client/multiplayer/resolver/AddressCheck; createFromService a method_37097 + m (Lnet/minecraft/client/multiplayer/resolver/ResolvedServerAddress;)Z isAllowed a method_37098 + p 1 resolvedServerAddress + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Z isAllowed a method_37099 + p 1 serverAddress +c net/minecraft/client/multiplayer/resolver/AddressCheck$1 gav$1 net/minecraft/class_6394$1 + f Lcom/google/common/collect/ImmutableList; val$blockLists a field_33846 + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37100 a method_37100 + m (Ljava/lang/String;Ljava/util/function/Predicate;)Z method_37101 a method_37101 + m (Lcom/google/common/collect/ImmutableList;)V +c net/minecraft/client/multiplayer/resolver/ResolvedServerAddress gaw net/minecraft/class_6368 + m ()Ljava/lang/String; getHostName a method_36898 + m (Ljava/net/InetSocketAddress;)Lnet/minecraft/client/multiplayer/resolver/ResolvedServerAddress; from a method_36899 + p 0 inetSocketAddress + m ()Ljava/lang/String; getHostIp b method_36900 + m ()I getPort c method_36901 + m ()Ljava/net/InetSocketAddress; asInetSocketAddress d method_36902 +c net/minecraft/client/multiplayer/resolver/ResolvedServerAddress$1 gaw$1 net/minecraft/class_6368$1 + f Ljava/net/InetSocketAddress; val$address a field_33742 + m (Ljava/net/InetSocketAddress;)V +c net/minecraft/client/multiplayer/resolver/ServerAddress gax net/minecraft/class_639 + f Lorg/slf4j/Logger; LOGGER a field_33416 + f Lcom/google/common/net/HostAndPort; hostAndPort b field_33417 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddress; INVALID c field_33418 + m ()Ljava/lang/String; getHost a method_2952 + m (Ljava/lang/String;)Lnet/minecraft/client/multiplayer/resolver/ServerAddress; parseString a method_2950 + p 0 ip + m ()I getPort b method_2954 + m (Ljava/lang/String;)Z isValidAddress b method_36224 + p 0 hostAndPort + m (Ljava/lang/String;)I parsePort c method_2951 + p 0 port + m (Ljava/lang/String;I)V + p 1 host + p 2 port + m (Lcom/google/common/net/HostAndPort;)V + p 1 hostAndPort + m ()V +c net/minecraft/client/multiplayer/resolver/ServerAddressResolver gay net/minecraft/class_6369 + f Lorg/slf4j/Logger; LOGGER a field_33743 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver; SYSTEM b field_33744 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36903 a method_36903 + m ()V +c net/minecraft/client/multiplayer/resolver/ServerNameResolver gaz net/minecraft/class_6370 + f Lnet/minecraft/client/multiplayer/resolver/ServerNameResolver; DEFAULT a field_33745 + f Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver; resolver b field_33746 + f Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; redirectHandler c field_33747 + f Lnet/minecraft/client/multiplayer/resolver/AddressCheck; addressCheck d field_33847 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; resolveAddress a method_36907 + p 1 serverAddress + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddressResolver;Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler;Lnet/minecraft/client/multiplayer/resolver/AddressCheck;)V + p 1 resolver + p 2 redirectHandler + p 3 addressCheck + m ()V +c net/minecraft/client/multiplayer/resolver/ServerRedirectHandler gba net/minecraft/class_6371 + f Lorg/slf4j/Logger; LOGGER a field_33749 + f Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; EMPTY b field_33750 + m (Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36910 a method_36910 + m (Ljavax/naming/directory/DirContext;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)Ljava/util/Optional; method_36911 a method_36911 + m ()Lnet/minecraft/client/multiplayer/resolver/ServerRedirectHandler; createDnsSrvRedirectHandler createDnsSrvRedirectHandler method_36909 + m ()V +c net/minecraft/client/multiplayer/resolver/package-info gbb net/minecraft/class_6372 +c net/minecraft/client/package-info gbc net/minecraft/class_6236 +c net/minecraft/client/particle/AshParticle gbd net/minecraft/class_4792 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/AshParticle$Provider gbd$a net/minecraft/class_4792$class_4793 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_22235 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24463 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/AttackSweepParticle gbe net/minecraft/class_645 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17781 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/AttackSweepParticle$Provider gbe$a net/minecraft/class_645$class_646 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17782 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3006 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BaseAshSmokeParticle gbf net/minecraft/class_4794 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_22237 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDFFFDDDFLnet/minecraft/client/particle/SpriteSet;FIFZ)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSeedMultiplier + p 9 ySpeedMultiplier + p 10 zSpeedMultiplier + p 11 xSpeed + p 13 ySpeed + p 15 zSpeed + p 17 quadSizeMultiplier + p 18 sprites + p 19 rColMultiplier + p 20 lifetime + p 21 gravity + p 22 hasPhysics +c net/minecraft/client/particle/BlockMarker gbg net/minecraft/class_6734 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 state +c net/minecraft/client/particle/BlockMarker$Provider gbg$a net/minecraft/class_6734$class_6735 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_39196 + m ()V +c net/minecraft/client/particle/BreakingItemParticle gbh net/minecraft/class_647 + f F uo a field_17783 + f F vo b field_17784 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 stack + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/item/ItemStack;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 stack +c net/minecraft/client/particle/BreakingItemParticle$CobwebProvider gbh$a net/minecraft/class_647$class_9478 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58747 + m ()V +c net/minecraft/client/particle/BreakingItemParticle$Provider gbh$b net/minecraft/class_647$class_648 + m (Lnet/minecraft/core/particles/ItemParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3007 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BreakingItemParticle$SlimeProvider gbh$c net/minecraft/class_647$class_649 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3008 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BreakingItemParticle$SnowballProvider gbh$d net/minecraft/class_647$class_650 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3009 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/BubbleColumnUpParticle gbi net/minecraft/class_653 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/BubbleColumnUpParticle$Provider gbi$a net/minecraft/class_653$class_654 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17786 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3011 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BubbleParticle gbj net/minecraft/class_655 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/BubbleParticle$Provider gbj$a net/minecraft/class_655$class_656 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17785 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3012 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/BubblePopParticle gbk net/minecraft/class_661 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17787 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/BubblePopParticle$Provider gbk$a net/minecraft/class_661$class_662 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17788 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3016 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CampfireSmokeParticle gbl net/minecraft/class_3937 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDZ)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 signal +c net/minecraft/client/particle/CampfireSmokeParticle$CosyProvider gbl$a net/minecraft/class_3937$class_3938 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_18290 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_17579 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CampfireSmokeParticle$SignalProvider gbl$b net/minecraft/class_3937$class_3995 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17789 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18820 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CherryParticle gbm net/minecraft/class_8253 + f I CURVE_ENDPOINT_TIME F field_43366 + f F FALL_ACC G field_43367 + f F WIND_BIG H field_43368 + f F rotSpeed I field_43369 + f F particleRandom J field_43370 + f F spinAcceleration K field_43371 + f F ACCELERATION_SCALE a field_43372 + f I INITIAL_LIFETIME b field_43373 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 spriteSet +c net/minecraft/client/particle/CritParticle gbn net/minecraft/class_657 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/CritParticle$DamageIndicatorProvider gbn$a net/minecraft/class_657$class_658 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17790 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3013 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CritParticle$MagicProvider gbn$b net/minecraft/class_657$class_659 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17791 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3014 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/CritParticle$Provider gbn$c net/minecraft/class_657$class_3939 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_18291 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_17580 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DragonBreathParticle gbo net/minecraft/class_666 + f F COLOR_MIN_RED F field_32648 + f F COLOR_MIN_GREEN G field_32649 + f F COLOR_MIN_BLUE H field_32650 + f F COLOR_MAX_RED I field_32651 + f F COLOR_MAX_GREEN J field_32652 + f F COLOR_MAX_BLUE K field_32653 + f Z hasHitGround L field_3792 + f Lnet/minecraft/client/particle/SpriteSet; sprites M field_17793 + f I COLOR_MIN a field_32654 + f I COLOR_MAX b field_32655 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/DragonBreathParticle$Provider gbo$a net/minecraft/class_666$class_667 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17794 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3019 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DripParticle gbp net/minecraft/class_663 + f Z isGlowing a field_22437 + f Lnet/minecraft/world/level/material/Fluid; type b field_3789 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createWaterHangParticle a method_49316 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createWaterFallParticle b method_49317 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaHangParticle c method_49318 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaFallParticle d method_49319 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createLavaLandParticle e method_49320 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyHangParticle f method_49324 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Lnet/minecraft/world/level/material/Fluid; getType g method_32791 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyFallParticle g method_49325 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V preMoveUpdate h method_18821 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createHoneyLandParticle h method_49326 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V postMoveUpdate i method_18822 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneWaterHangParticle i method_49327 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneWaterFallParticle j method_49328 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneLavaHangParticle k method_49329 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createDripstoneLavaFallParticle l method_49330 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createNectarFallParticle m method_49331 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createSporeBlossomFallParticle n method_49332 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearHangParticle o method_49333 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearFallParticle p method_49334 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TextureSheetParticle; createObsidianTearLandParticle q method_49335 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type +c net/minecraft/client/particle/DripParticle$CoolingDripHangParticle gbp$a net/minecraft/class_663$class_4082 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DripParticle$DripHangParticle gbp$b net/minecraft/class_663$class_4084 + f Lnet/minecraft/core/particles/ParticleOptions; fallingParticle b field_18293 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 fallingParticle +c net/minecraft/client/particle/DripParticle$DripLandParticle gbp$c net/minecraft/class_663$class_4085 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V +c net/minecraft/client/particle/DripParticle$DripstoneFallAndLandParticle gbp$d net/minecraft/class_663$class_5692 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DripParticle$FallAndLandParticle gbp$e net/minecraft/class_663$class_4083 + f Lnet/minecraft/core/particles/ParticleOptions; landParticle b field_18292 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 landParticle +c net/minecraft/client/particle/DripParticle$FallingParticle gbp$f net/minecraft/class_663$class_4497 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;I)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 type + p 9 lifetime +c net/minecraft/client/particle/DripParticle$HoneyFallAndLandParticle gbp$g net/minecraft/class_663$class_4498 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/particles/ParticleOptions;)V +c net/minecraft/client/particle/DustColorTransitionParticle gbq net/minecraft/class_5734 + f Lorg/joml/Vector3f; fromColor a field_28244 + f Lorg/joml/Vector3f; toColor b field_28245 + m (Lorg/joml/Vector3f;F)Lorg/joml/Vector3f; randomizeColor a method_33073 + p 1 vector + p 2 multiplier + m (F)V lerpColors f method_33074 + p 1 partialTick + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/DustColorTransitionOptions;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustColorTransitionParticle$Provider gbq$a net/minecraft/class_5734$class_5735 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28246 + m (Lnet/minecraft/core/particles/DustColorTransitionOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33075 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DustParticle gbr net/minecraft/class_671 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/DustParticleOptions;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustParticle$Provider gbr$a net/minecraft/class_671$class_672 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17802 + m (Lnet/minecraft/core/particles/DustParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3022 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/DustParticleBase gbs net/minecraft/class_5736 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28247 + m (FF)F randomizeColor a method_33076 + p 1 coordMultiplier + p 2 multiplier + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/core/particles/ScalableParticleOptionsBase;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 options + p 15 sprites +c net/minecraft/client/particle/DustPlumeParticle gbt net/minecraft/class_8845 + f I COLOR_RGB24 a field_46725 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/DustPlumeParticle$Provider gbt$a net/minecraft/class_8845$class_8846 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_46726 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_54387 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/EndRodParticle gbu net/minecraft/class_675 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/EndRodParticle$Provider gbu$a net/minecraft/class_675$class_676 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17805 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3024 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/ExplodeParticle gbv net/minecraft/class_673 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17806 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/ExplodeParticle$Provider gbv$a net/minecraft/class_673$class_674 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17807 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3023 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FallingDustParticle gbw net/minecraft/class_682 + f F rotSpeed a field_3809 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_17808 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDFFFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 9 ySpeed + p 10 zSpeed + p 11 sprites +c net/minecraft/client/particle/FallingDustParticle$Provider gbw$a net/minecraft/class_682$class_683 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17809 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3033 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles gbx net/minecraft/class_677 + m ()V +c net/minecraft/client/particle/FireworkParticles$1 gbx$1 net/minecraft/class_677$1 + f [I $SwitchMap$net$minecraft$world$item$component$FireworkExplosion$Shape a field_3797 + m ()V +c net/minecraft/client/particle/FireworkParticles$FlashProvider gbx$a net/minecraft/class_677$class_3997 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17810 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18121 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles$OverlayParticle gbx$b net/minecraft/class_677$class_678 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/FireworkParticles$SparkParticle gbx$c net/minecraft/class_677$class_680 + f Z twinkle F field_3803 + f Lnet/minecraft/client/particle/ParticleEngine; engine G field_3798 + f F fadeR H field_3801 + f F fadeG I field_3800 + f F fadeB J field_3799 + f Z hasFade K field_3802 + f Z trail b field_3804 + m (Z)V setTrail a method_3027 + p 1 trail + m (Z)V setTwinkle b method_3026 + p 1 twinkle + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/ParticleEngine;Lnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 engine + p 15 sprites +c net/minecraft/client/particle/FireworkParticles$SparkProvider gbx$d net/minecraft/class_677$class_679 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17811 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3025 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FireworkParticles$Starter gbx$e net/minecraft/class_677$class_681 + f I life D field_3808 + f Lnet/minecraft/client/particle/ParticleEngine; engine E field_3805 + f Ljava/util/List; explosions F field_3806 + f Z twinkleDelay G field_3807 + f [[D CREEPER_PARTICLE_COORDS a field_49565 + f [[D STAR_PARTICLE_COORDS b field_49566 + m (DDDDDDLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticle a method_3030 + p 1 x + p 3 y + p 5 z + p 7 xSpeed + p 9 ySpeed + p 11 zSpeed + p 13 colors + p 14 fadeColors + p 15 trail + p 16 twinkle + m (DILit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticleBall a method_3031 + p 1 speed + p 3 radius + p 4 colors + p 5 fadeColors + p 6 trail + p 7 twinkle + m (D[[DLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZZ)V createParticleShape a method_3028 + p 1 speed + p 3 coords + p 4 colors + p 5 fadeColors + p 6 trail + p 7 twinkle + p 8 isCreeper + m (Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V createParticleBurst a method_3032 + p 1 colors + p 2 fadeColors + p 3 trail + p 4 twinkle + m ()Z isFarAwayFromCamera c method_3029 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/ParticleEngine;Ljava/util/List;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xd + p 10 yd + p 12 zd + p 14 engine + p 15 explosions + m ()V +c net/minecraft/client/particle/FlameParticle gby net/minecraft/class_687 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/FlameParticle$Provider gby$a net/minecraft/class_687$class_688 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17812 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3036 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FlameParticle$SmallFlameProvider gby$b net/minecraft/class_687$class_5613 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_27736 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_32131 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/FlyStraightTowardsParticle gbz net/minecraft/class_9479 + f D zStart F field_50224 + f I startColor G field_50225 + f I endColor H field_50226 + f D xStart a field_50227 + f D yStart b field_50228 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDII)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 startColor + p 15 endColor +c net/minecraft/client/particle/FlyStraightTowardsParticle$OminousSpawnProvider gbz$a net/minecraft/class_9479$class_9480 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_50229 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58748 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle gca net/minecraft/class_668 + f D zStart F field_3793 + f Z isGlowing G field_48938 + f Lnet/minecraft/client/particle/Particle$LifetimeAlpha; lifetimeAlpha H field_48939 + f D xStart a field_3795 + f D yStart b field_3794 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDZLnet/minecraft/client/particle/Particle$LifetimeAlpha;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 isGlowing + p 15 lifetimeAlpha +c net/minecraft/client/particle/FlyTowardsPositionParticle$EnchantProvider gca$a net/minecraft/class_668$class_670 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17803 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3021 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle$NautilusProvider gca$b net/minecraft/class_668$class_669 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17804 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3020 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/FlyTowardsPositionParticle$VaultConnectionProvider gca$c net/minecraft/class_668$class_9212 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_48940 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_56832 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/GlowParticle gcb net/minecraft/class_5786 + f Lnet/minecraft/util/RandomSource; RANDOM a field_28457 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_28458 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites + m ()V +c net/minecraft/client/particle/GlowParticle$ElectricSparkProvider gcb$a net/minecraft/class_5786$class_5956 + f D SPEED_FACTOR a field_29570 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29571 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34748 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$GlowSquidProvider gcb$b net/minecraft/class_5786$class_5957 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_29572 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34749 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$ScrapeProvider gcb$c net/minecraft/class_5786$class_5958 + f D SPEED_FACTOR a field_29573 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29574 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34750 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$WaxOffProvider gcb$d net/minecraft/class_5786$class_5959 + f D SPEED_FACTOR a field_29575 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29576 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34751 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GlowParticle$WaxOnProvider gcb$e net/minecraft/class_5786$class_5960 + f D SPEED_FACTOR a field_29577 + f Lnet/minecraft/client/particle/SpriteSet; sprite b field_29578 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34752 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustParticle gcc net/minecraft/class_8977 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47454 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 sprites +c net/minecraft/client/particle/GustParticle$Provider gcc$a net/minecraft/class_8977$class_8978 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47455 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55243 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustParticle$SmallProvider gcc$b net/minecraft/class_8977$class_9481 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_50230 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58749 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/GustSeedParticle gcd net/minecraft/class_8979 + f D scale a field_49126 + f I tickDelayInBetween b field_49127 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDII)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 scale + p 10 lifetime + p 11 tickDelayInBetween +c net/minecraft/client/particle/GustSeedParticle$Provider gcd$a net/minecraft/class_8979$class_8980 + f D scale a field_49128 + f I lifetime b field_49129 + f I tickDelayInBetween c field_49130 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55244 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (DII)V + p 1 scale + p 3 lifetime + p 4 tickDelayInBetween +c net/minecraft/client/particle/HeartParticle gce net/minecraft/class_684 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/HeartParticle$AngryVillagerProvider gce$a net/minecraft/class_684$class_685 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17813 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3034 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HeartParticle$Provider gce$b net/minecraft/class_684$class_686 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17814 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3035 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HugeExplosionParticle gcf net/minecraft/class_691 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17815 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/HugeExplosionParticle$Provider gcf$a net/minecraft/class_691$class_692 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17816 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3038 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/HugeExplosionSeedParticle gcg net/minecraft/class_689 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/HugeExplosionSeedParticle$Provider gcg$a net/minecraft/class_689$class_690 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3037 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/ItemPickupParticle gch net/minecraft/class_693 + f Lnet/minecraft/world/entity/Entity; itemEntity D field_3823 + f Lnet/minecraft/world/entity/Entity; target E field_3821 + f I life F field_3826 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher G field_3824 + f D targetX H field_47684 + f D targetY I field_47685 + f D targetZ J field_47686 + f D targetXOld K field_47687 + f D targetYOld L field_47688 + f D targetZOld M field_47689 + f I LIFE_TIME a field_32656 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers b field_20944 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getSafeCopy a method_29358 + p 1 entity + m ()V updatePosition c method_55617 + m ()V saveOldPosition d method_55618 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)V + p 1 entityRenderDispatcher + p 2 buffers + p 3 level + p 4 itemEntity + p 5 target + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V + p 1 entityRenderDispatcher + p 2 buffers + p 3 level + p 4 itemEntity + p 5 target + p 6 speedVector +c net/minecraft/client/particle/LargeSmokeParticle gci net/minecraft/class_696 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/LargeSmokeParticle$Provider gci$a net/minecraft/class_696$class_697 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17817 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3040 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/LavaParticle gcj net/minecraft/class_694 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/LavaParticle$Provider gcj$a net/minecraft/class_694$class_695 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17818 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3039 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/MobAppearanceParticle gck net/minecraft/class_700 + f Lnet/minecraft/client/model/Model; model a field_21793 + f Lnet/minecraft/client/renderer/RenderType; renderType b field_21792 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/MobAppearanceParticle$Provider gck$a net/minecraft/class_700$class_701 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3042 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/NoRenderParticle gcl net/minecraft/class_3998 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/NoteParticle gcm net/minecraft/class_698 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 color +c net/minecraft/client/particle/NoteParticle$Provider gcm$a net/minecraft/class_698$class_699 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17819 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3041 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/Particle gcn net/minecraft/class_703 + f F oRoll A field_3857 + f F friction B field_28786 + f Z speedUpWhenYMotionIsBlocked C field_28787 + f Lnet/minecraft/world/phys/AABB; bb D field_3872 + f Z stoppedByCollision E field_21507 + f Lnet/minecraft/world/phys/AABB; INITIAL_AABB a field_3860 + f D MAXIMUM_COLLISION_VELOCITY_SQUARED b field_36193 + f Lnet/minecraft/client/multiplayer/ClientLevel; level c field_3851 + f D xo d field_3858 + f D yo e field_3838 + f D zo f field_3856 + f D x g field_3874 + f D y h field_3854 + f D z i field_3871 + f D xd j field_3852 + f D yd k field_3869 + f D zd l field_3850 + f Z onGround m field_3845 + f Z hasPhysics n field_3862 + f Z removed o field_3843 + f F bbWidth p field_3849 + f F bbHeight q field_3867 + f Lnet/minecraft/util/RandomSource; random r field_3840 + f I age s field_3866 + f I lifetime t field_3847 + f F gravity u field_3844 + f F rCol v field_3861 + f F gCol w field_3842 + f F bCol x field_3859 + f F alpha y field_3841 + f F roll z field_3839 + m ()V tick a method_3070 + m (DDD)V move a method_3069 + p 1 x + p 3 y + p 5 z + m (F)I getLightColor a method_3068 + p 1 partialTick + m (FFF)V setColor a method_3084 + p 1 particleRed + p 2 particleGreen + p 3 particleBlue + m (I)V setLifetime a method_3077 + p 1 particleLifeTime + m (Lnet/minecraft/world/phys/AABB;)V setBoundingBox a method_3067 + p 1 bb + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/Camera;F)V render a method_3074 + p 1 buffer + p 2 camera + p 3 partialTicks + m ()Lnet/minecraft/client/particle/ParticleRenderType; getRenderType b method_18122 + m (DDD)V setParticleSpeed b method_34753 + p 1 xd + p 3 yd + p 5 zd + m (FF)V setSize b method_3080 + p 1 width + p 2 height + m (DDD)V setPos c method_3063 + p 1 x + p 3 y + p 5 z + m (F)Lnet/minecraft/client/particle/Particle; setPower c method_3075 + p 1 multiplier + m (F)Lnet/minecraft/client/particle/Particle; scale d method_3087 + p 1 scale + m (F)V setAlpha e method_3083 + c Sets the particle alpha (float) + p 1 alpha + m ()I getLifetime j method_3082 + m ()V remove k method_3085 + c Called to indicate that this particle effect has expired and should be discontinued. + m ()V setLocationFromBoundingbox l method_3072 + m ()Z isAlive m method_3086 + c Returns {@code true} if this effect has not yet expired. "I feel happy! I feel happy!" + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox n method_3064 + m ()Ljava/util/Optional; getParticleGroup o method_34019 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()V +c net/minecraft/client/particle/Particle$LifetimeAlpha gcn$a net/minecraft/class_703$class_9213 + f Lnet/minecraft/client/particle/Particle$LifetimeAlpha; ALWAYS_OPAQUE a field_48941 + f F startAlpha b comp_2321 + f F endAlpha c comp_2322 + f F startAtNormalizedAge d comp_2323 + f F endAtNormalizedAge e comp_2324 + m ()Z isOpaque a method_56833 + m (IIF)F currentAlphaForAge a method_56834 + p 1 age + p 2 lifetime + p 3 partialTick + m ()F startAlpha b comp_2321 + m ()F endAlpha c comp_2322 + m ()F startAtNormalizedAge d comp_2323 + m ()F endAtNormalizedAge e comp_2324 + m (FFFF)V + m ()V +c net/minecraft/client/particle/ParticleDescription gco net/minecraft/class_4089 + f Ljava/util/List; textures a field_18299 + m ()Ljava/util/List; getTextures a method_18826 + m (Lcom/google/gson/JsonElement;)Ljava/lang/String; method_18827 a method_18827 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/particle/ParticleDescription; fromJson a method_18828 + p 0 json + m (Ljava/util/List;)V + p 1 textures +c net/minecraft/client/particle/ParticleEngine gcp net/minecraft/class_702 + f Lnet/minecraft/client/multiplayer/ClientLevel; level a field_3834 + f Lorg/slf4j/Logger; LOGGER b field_40505 + f Lnet/minecraft/resources/FileToIdConverter; PARTICLE_LISTER c field_40506 + f Lnet/minecraft/resources/ResourceLocation; PARTICLES_ATLAS_INFO d field_41385 + f I MAX_PARTICLES_PER_LAYER e field_32657 + f Ljava/util/List; RENDER_ORDER f field_17820 + f Ljava/util/Map; particles g field_3830 + f Ljava/util/Queue; trackingEmitters h field_3837 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager i field_3831 + f Lnet/minecraft/util/RandomSource; random j field_3832 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; providers k field_3835 + f Ljava/util/Queue; particlesToAdd l field_3836 + f Ljava/util/Map; spriteSets m field_18300 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; textureAtlas n field_18301 + f Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap; trackedParticleCounts o field_29072 + m ()V close a method_18829 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/Optional; loadParticleDescription a method_18836 + p 1 registryName + p 2 resource + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45771 a method_45771 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)V method_45766 a method_45766 + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;)V createTrackingEmitter a method_3061 + p 1 entity + p 2 particleData + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;I)V createTrackingEmitter a method_3051 + p 1 entity + p 2 data + p 3 lifetime + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_3045 + p 1 level + m (Lnet/minecraft/client/particle/Particle;)V add a method_3058 + p 1 effect + m (Lnet/minecraft/client/particle/ParticleProvider$Sprite;Lnet/minecraft/client/particle/SpriteSet;)Lnet/minecraft/client/particle/ParticleProvider; method_49336 a method_49336 + m (Lnet/minecraft/client/particle/ParticleProvider$Sprite;Lnet/minecraft/client/particle/SpriteSet;Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; method_49337 a method_49337 + m (Lnet/minecraft/client/particle/ParticleRenderType;)Ljava/util/Queue; method_18125 a method_18125 + m (Lnet/minecraft/client/particle/ParticleRenderType;Ljava/util/Queue;)V method_18126 a method_18126 + m (Lnet/minecraft/client/particle/SpriteSet;)Lnet/minecraft/client/particle/ParticleProvider; method_49915 a method_49915 + m (Lnet/minecraft/client/particle/SpriteSet;Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; method_49916 a method_49916 + m (Lnet/minecraft/client/renderer/LightTexture;Lnet/minecraft/client/Camera;F)V render a method_3049 + p 1 lightTexture + p 2 camera + p 3 partialTick + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;Ljava/util/Set;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/particle/ParticleEngine$1ParticleDefinition;)V method_45767 a method_45767 + m (Ljava/util/Collection;)V tickParticleList a method_3048 + p 1 particles + m (Ljava/util/List;Ljava/util/concurrent/Executor;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_45768 a method_45768 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45772 a method_45772 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V destroy a method_3046 + p 1 pos + p 2 state + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;DDDDDD)V method_34020 a method_34020 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;)V crack a method_3054 + c Adds block hit particles for the specified block + p 1 pos + p 2 side + m (Lnet/minecraft/core/particles/ParticleGroup;)Z hasSpaceInParticleLimit a method_34021 + p 1 group + m (Lnet/minecraft/core/particles/ParticleGroup;I)V updateCount a method_34022 + p 1 group + p 2 count + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3056 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleEngine$SpriteParticleRegistration;)V register a method_18834 + p 1 particleType + p 2 particleMetaFactory + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider$Sprite;)V register a method_49338 + p 1 particleType + p 2 sprite + m (Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider;)V register a method_3043 + p 1 particleType + p 2 particleFactory + m ()V tick b method_3057 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Lnet/minecraft/client/particle/ParticleEngine$1ParticleDefinition; method_45770 b method_45770 + m (Lnet/minecraft/client/particle/Particle;)V tickParticle b method_3059 + p 1 particle + m (Lnet/minecraft/core/particles/ParticleGroup;)V method_34023 b method_34023 + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)Lnet/minecraft/client/particle/Particle; makeParticle b method_3055 + p 1 particleData + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m ()Ljava/lang/String; countParticles d method_3052 + m ()V registerProviders e method_3062 + m ()V clearParticles f method_48015 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 level + p 2 textureManager + m ()V +c net/minecraft/client/particle/ParticleEngine$1ParticleDefinition gcp$a net/minecraft/class_702$class_7759 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1036 + f Ljava/util/Optional; sprites b comp_1037 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1036 + m ()Ljava/util/Optional; sprites b comp_1037 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V +c net/minecraft/client/particle/ParticleEngine$MutableSpriteSet gcp$b net/minecraft/class_702$class_4090 + f Ljava/util/List; sprites a field_18303 + m (Ljava/util/List;)V rebind a method_18838 + p 1 sprites + m ()V +c net/minecraft/client/particle/ParticleEngine$SpriteParticleRegistration gcp$c net/minecraft/class_702$class_4091 +c net/minecraft/client/particle/ParticleProvider gcq net/minecraft/class_707 + m (Lnet/minecraft/core/particles/ParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle createParticle method_3090 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed +c net/minecraft/client/particle/ParticleProvider$Sprite gcq$a net/minecraft/class_707$class_8187 +c net/minecraft/client/particle/ParticleRenderType gcr net/minecraft/class_3999 + f Lnet/minecraft/client/particle/ParticleRenderType; TERRAIN_SHEET a field_17827 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_OPAQUE b field_17828 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_TRANSLUCENT c field_17829 + f Lnet/minecraft/client/particle/ParticleRenderType; PARTICLE_SHEET_LIT d field_17830 + f Lnet/minecraft/client/particle/ParticleRenderType; CUSTOM e field_17831 + f Lnet/minecraft/client/particle/ParticleRenderType; NO_RENDER f field_17832 + m (Lcom/mojang/blaze3d/vertex/Tesselator;Lnet/minecraft/client/renderer/texture/TextureManager;)Lcom/mojang/blaze3d/vertex/BufferBuilder; begin a method_18130 + p 1 tesselator + p 2 textureManager + m ()V +c net/minecraft/client/particle/ParticleRenderType$1 gcr$1 net/minecraft/class_3999$1 + m ()V +c net/minecraft/client/particle/ParticleRenderType$2 gcr$2 net/minecraft/class_3999$2 + m ()V +c net/minecraft/client/particle/ParticleRenderType$3 gcr$3 net/minecraft/class_3999$3 + m ()V +c net/minecraft/client/particle/ParticleRenderType$4 gcr$4 net/minecraft/class_3999$4 + m ()V +c net/minecraft/client/particle/ParticleRenderType$5 gcr$5 net/minecraft/class_3999$5 + m ()V +c net/minecraft/client/particle/ParticleRenderType$6 gcr$6 net/minecraft/class_3999$6 + m ()V +c net/minecraft/client/particle/PlayerCloudParticle gcs net/minecraft/class_704 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17862 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/PlayerCloudParticle$Provider gcs$a net/minecraft/class_704$class_705 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17863 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3088 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/PlayerCloudParticle$SneezeProvider gcs$b net/minecraft/class_704$class_706 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17864 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3089 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/PortalParticle gct net/minecraft/class_709 + f D zStart F field_3884 + f D xStart a field_3886 + f D yStart b field_3885 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/PortalParticle$Provider gct$a net/minecraft/class_709$class_710 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17865 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3094 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/ReversePortalParticle gcu net/minecraft/class_4974 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/ReversePortalParticle$ReversePortalProvider gcu$a net/minecraft/class_4974$class_4975 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_23188 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_26268 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/RisingParticle gcv net/minecraft/class_4955 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V +c net/minecraft/client/particle/SculkChargeParticle gcw net/minecraft/class_7206 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_37959 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprite +c net/minecraft/client/particle/SculkChargeParticle$Provider gcw$a net/minecraft/class_7206$class_7207 + f Lnet/minecraft/client/particle/SpriteSet; sprite a comp_620 + m ()Lnet/minecraft/client/particle/SpriteSet; sprite a comp_620 + m (Lnet/minecraft/core/particles/SculkChargeParticleOptions;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41946 + m (Lnet/minecraft/client/particle/SpriteSet;)V +c net/minecraft/client/particle/SculkChargePopParticle gcx net/minecraft/class_7208 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_37960 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprite +c net/minecraft/client/particle/SculkChargePopParticle$Provider gcx$a net/minecraft/class_7208$class_7209 + f Lnet/minecraft/client/particle/SpriteSet; sprite a comp_621 + m ()Lnet/minecraft/client/particle/SpriteSet; sprite a comp_621 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41947 + m (Lnet/minecraft/client/particle/SpriteSet;)V +c net/minecraft/client/particle/ShriekParticle gcy net/minecraft/class_7281 + f F MAGICAL_X_ROT a field_38332 + f I delay b field_38333 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDI)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 delay +c net/minecraft/client/particle/ShriekParticle$Provider gcy$a net/minecraft/class_7281$class_7282 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_38336 + m (Lnet/minecraft/core/particles/ShriekParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_42587 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SimpleAnimatedParticle gcz net/minecraft/class_708 + f F fadeG F field_3877 + f F fadeB G field_3876 + f Z hasFade H field_3880 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17866 + f F fadeR b field_3878 + m (I)V setColor b method_3093 + p 1 color + m (I)V setFadeColor c method_3092 + c Sets a color for the particle to drift toward (20% closer each tick, never actually getting very close) + p 1 rgb + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/client/particle/SpriteSet;F)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 sprites + p 9 gravity +c net/minecraft/client/particle/SingleQuadParticle gda net/minecraft/class_3940 + f F quadSize D field_17867 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/Camera;Lorg/joml/Quaternionf;F)V renderRotatedQuad a method_60373 + p 1 buffer + p 2 camera + p 3 quaternion + p 4 partialTicks + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Quaternionf;FFFF)V renderRotatedQuad a method_60374 + p 1 buffer + p 2 quaternion + p 3 x + p 4 y + p 5 z + p 6 partialTicks + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Quaternionf;FFFFFFFFI)V renderVertex a method_60375 + p 1 buffer + p 2 quaternion + p 3 x + p 4 y + p 5 z + p 6 xOffset + p 7 yOffset + p 8 quadSize + p 9 u + p 10 v + p 11 packedLight + m (F)F getQuadSize b method_18132 + p 1 scaleFactor + m ()F getU0 c method_18133 + m ()F getU1 d method_18134 + m ()F getV0 e method_18135 + m ()F getV1 f method_18136 + m ()Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; getFacingCameraMode p method_55245 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/SingleQuadParticle$FacingCameraMode gda$a net/minecraft/class_3940$class_8981 + f Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; LOOKAT_XYZ a field_47457 + f Lnet/minecraft/client/particle/SingleQuadParticle$FacingCameraMode; LOOKAT_Y b field_47458 + m (Lorg/joml/Quaternionf;Lnet/minecraft/client/Camera;F)V method_55246 a method_55246 + m (Lorg/joml/Quaternionf;Lnet/minecraft/client/Camera;F)V method_55247 b method_55247 + m ()V +c net/minecraft/client/particle/SmokeParticle gdb net/minecraft/class_717 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/SmokeParticle$Provider gdb$a net/minecraft/class_717$class_718 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17869 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3101 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SnowflakeParticle gdc net/minecraft/class_5685 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28003 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SnowflakeParticle$Provider gdc$a net/minecraft/class_5685$class_5686 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28004 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_32690 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SonicBoomParticle gdd net/minecraft/class_7452 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 quadSizeMultiplier + p 10 sprites +c net/minecraft/client/particle/SonicBoomParticle$Provider gdd$a net/minecraft/class_7452$class_7453 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_39196 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_43785 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SoulParticle gde net/minecraft/class_4956 + f Z isGlowing a field_37961 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_23091 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SoulParticle$EmissiveProvider gde$a net/minecraft/class_4956$class_7210 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_37962 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_41948 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SoulParticle$Provider gde$b net/minecraft/class_4956$class_4957 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_23092 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_25994 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle gdf net/minecraft/class_711 + f F originalAlpha F field_51440 + f Lnet/minecraft/util/RandomSource; RANDOM a field_3888 + f Lnet/minecraft/client/particle/SpriteSet; sprites b field_17870 + m ()Z isCloseToScopingPlayer g method_37102 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites + m ()V +c net/minecraft/client/particle/SpellParticle$InstantProvider gdf$a net/minecraft/class_711$class_713 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17872 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3097 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle$MobEffectProvider gdf$b net/minecraft/class_711$class_714 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17873 + m (Lnet/minecraft/core/particles/ColorParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3098 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SpellParticle$Provider gdf$c net/minecraft/class_711$class_715 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17874 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3099 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpellParticle$WitchProvider gdf$d net/minecraft/class_711$class_716 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17875 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3100 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpitParticle gdg net/minecraft/class_721 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/SpitParticle$Provider gdg$a net/minecraft/class_721$class_722 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17876 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3103 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SplashParticle gdh net/minecraft/class_719 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V +c net/minecraft/client/particle/SplashParticle$Provider gdh$a net/minecraft/class_719$class_720 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17877 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3102 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SpriteSet gdi net/minecraft/class_4002 + m (II)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18138 + p 1 age + p 2 lifetime + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18139 + p 1 random +c net/minecraft/client/particle/SquidInkParticle gdj net/minecraft/class_725 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDILnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 packedColor + p 15 sprites +c net/minecraft/client/particle/SquidInkParticle$GlowInkProvider gdj$a net/minecraft/class_725$class_5788 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_28460 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33427 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SquidInkParticle$Provider gdj$b net/minecraft/class_725$class_726 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17878 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3105 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle gdk net/minecraft/class_723 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDD)V + p 1 level + p 2 sprites + p 3 x + p 5 y + p 7 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDDDDD)V + p 1 level + p 2 sprites + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed +c net/minecraft/client/particle/SuspendedParticle$CrimsonSporeProvider gdk$a net/minecraft/class_723$class_4795 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22238 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24464 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider gdk$b net/minecraft/class_723$class_5877 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_29073 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_34024 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider$1 gdk$b$1 net/minecraft/class_723$class_5877$1 + m (Lnet/minecraft/client/particle/SuspendedParticle$SporeBlossomAirProvider;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDDDDD)V +c net/minecraft/client/particle/SuspendedParticle$UnderwaterProvider gdk$c net/minecraft/class_723$class_4796 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22239 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24465 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedParticle$WarpedSporeProvider gdk$d net/minecraft/class_723$class_4797 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_22240 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_24466 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle gdl net/minecraft/class_729 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/SuspendedTownParticle$ComposterFillProvider gdl$a net/minecraft/class_729$class_3991 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17880 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_18044 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$DolphinSpeedProvider gdl$b net/minecraft/class_729$class_730 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17881 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3110 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$EggCrackProvider gdl$c net/minecraft/class_729$class_8254 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_43374 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_49917 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprite +c net/minecraft/client/particle/SuspendedTownParticle$HappyVillagerProvider gdl$d net/minecraft/class_729$class_731 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17882 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3111 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/SuspendedTownParticle$Provider gdl$e net/minecraft/class_729$class_732 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17883 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3112 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/TerrainParticle gdm net/minecraft/class_727 + f F vo F field_17885 + f Lnet/minecraft/core/BlockPos; pos a field_3891 + f F uo b field_17884 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/TerrainParticle; createTerrainParticle a method_58750 + p 0 type + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/level/block/state/BlockState;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 state + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 state + p 15 pos +c net/minecraft/client/particle/TerrainParticle$DustPillarProvider gdm$a net/minecraft/class_727$class_9482 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_58751 + m ()V +c net/minecraft/client/particle/TerrainParticle$Provider gdm$b net/minecraft/class_727$class_728 + m (Lnet/minecraft/core/particles/BlockParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3109 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m ()V +c net/minecraft/client/particle/TextureSheetParticle gdn net/minecraft/class_4003 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite E field_17886 + m (Lnet/minecraft/client/particle/SpriteSet;)V pickSprite a method_18140 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V setSprite a method_18141 + p 1 sprite + m (Lnet/minecraft/client/particle/SpriteSet;)V setSpriteFromAge b method_18142 + p 1 sprite + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed +c net/minecraft/client/particle/TotemParticle gdo net/minecraft/class_734 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/TotemParticle$Provider gdo$a net/minecraft/class_734$class_735 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17887 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3113 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/TrackingEmitter gdp net/minecraft/class_733 + f I lifeTime D field_3895 + f Lnet/minecraft/core/particles/ParticleOptions; particleType E field_3893 + f Lnet/minecraft/world/entity/Entity; entity a field_3894 + f I life b field_3896 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;)V + p 1 level + p 2 entity + p 3 particleType + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;I)V + p 1 level + p 2 entity + p 3 particleType + p 4 lifetime + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/particles/ParticleOptions;ILnet/minecraft/world/phys/Vec3;)V + p 1 level + p 2 entity + p 3 particleType + p 4 lifetime + p 5 speedVector +c net/minecraft/client/particle/TrialSpawnerDetectionParticle gdq net/minecraft/class_8982 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47459 + f I BASE_LIFETIME b field_47460 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sizeMultiplier + p 15 sprites +c net/minecraft/client/particle/TrialSpawnerDetectionParticle$Provider gdq$a net/minecraft/class_8982$class_8983 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_47461 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_55248 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/VibrationSignalParticle gdr net/minecraft/class_5737 + f F rotO F field_28248 + f F pitch G field_40507 + f F pitchO H field_40508 + f Lnet/minecraft/world/level/gameevent/PositionSource; target a field_28249 + f F rot b field_28250 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 target + p 9 lifetime +c net/minecraft/client/particle/VibrationSignalParticle$Provider gdr$a net/minecraft/class_5737$class_5738 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_28251 + m (Lnet/minecraft/core/particles/VibrationParticleOption;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_33080 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WakeParticle gds net/minecraft/class_738 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17888 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 sprites +c net/minecraft/client/particle/WakeParticle$Provider gds$a net/minecraft/class_738$class_739 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_17889 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3115 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WaterCurrentDownParticle gdt net/minecraft/class_736 + f F angle a field_3897 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/WaterCurrentDownParticle$Provider gdt$a net/minecraft/class_736$class_737 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17890 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3114 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WaterDropParticle gdu net/minecraft/class_740 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V + p 1 level + p 2 x + p 4 y + p 6 z +c net/minecraft/client/particle/WaterDropParticle$Provider gdu$a net/minecraft/class_740$class_741 + f Lnet/minecraft/client/particle/SpriteSet; sprite a field_17891 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_3116 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WhiteAshParticle gdv net/minecraft/class_5165 + f I COLOR_RGB24 a field_32658 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/WhiteAshParticle$Provider gdv$a net/minecraft/class_5165$class_5166 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_23936 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_27150 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/WhiteSmokeParticle gdw net/minecraft/class_8899 + f I COLOR_RGB24 a field_46898 + m (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDFLnet/minecraft/client/particle/SpriteSet;)V + p 1 level + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + p 14 quadSizeMultiplier + p 15 sprites +c net/minecraft/client/particle/WhiteSmokeParticle$Provider gdw$a net/minecraft/class_8899$class_8900 + f Lnet/minecraft/client/particle/SpriteSet; sprites a field_46899 + m (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)Lnet/minecraft/client/particle/Particle; createParticle a method_54635 + p 1 type + p 2 level + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/client/particle/SpriteSet;)V + p 1 sprites +c net/minecraft/client/particle/package-info gdx net/minecraft/class_6240 +c net/minecraft/client/player/AbstractClientPlayer gdy net/minecraft/class_742 + f Lnet/minecraft/world/phys/Vec3; deltaMovementOnPreviousTick b field_42906 + f F elytraRotX c field_3900 + f F elytraRotY d field_3899 + f F elytraRotZ e field_3898 + f Lnet/minecraft/client/multiplayer/ClientLevel; clientLevel f field_17892 + f Lnet/minecraft/client/multiplayer/PlayerInfo; playerInfo g field_3901 + m (F)Lnet/minecraft/world/phys/Vec3; getDeltaMovementLerped G method_49339 + p 1 patialTick + m ()Lnet/minecraft/client/multiplayer/PlayerInfo; getPlayerInfo a method_3123 + m ()Lnet/minecraft/client/resources/PlayerSkin; getSkin b method_52814 + m ()F getFieldOfViewModifier c method_3118 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lcom/mojang/authlib/GameProfile;)V + p 1 clientLevel + p 2 gameProfile +c net/minecraft/client/player/Input gdz net/minecraft/class_744 + f F leftImpulse a field_3907 + f F forwardImpulse b field_3905 + f Z up c field_3910 + f Z down d field_3909 + f Z left e field_3908 + f Z right f field_3906 + f Z jumping g field_3904 + f Z shiftKeyDown h field_3903 + m ()Lnet/minecraft/world/phys/Vec2; getMoveVector a method_3128 + m (ZF)V tick a method_3129 + p 1 isSneaking + p 2 sneakingSpeedMultiplier + m ()Z hasForwardImpulse b method_20622 + m ()V +c net/minecraft/client/player/KeyboardInput gea net/minecraft/class_743 + f Lnet/minecraft/client/Options; options i field_3902 + m (ZZ)F calculateImpulse a method_40218 + p 0 input + p 1 otherInput + m (Lnet/minecraft/client/Options;)V + p 1 options +c net/minecraft/client/player/LocalPlayer geb net/minecraft/class_746 + f Lnet/minecraft/client/Minecraft; minecraft cA field_3937 + f I sprintTriggerTime cB field_3935 + f F yBob cD field_3932 + f F xBob cE field_3916 + f F yBobO cF field_3931 + f F xBobO cG field_3914 + f F spinningEffectIntensity cH field_44911 + f F oSpinningEffectIntensity cI field_44912 + f I POSITION_REMINDER_INTERVAL cJ field_32671 + f I WATER_VISION_MAX_TIME cK field_32672 + f I WATER_VISION_QUICK_TIME cL field_32673 + f F WATER_VISION_QUICK_PERCENT cM field_32674 + f D SUFFOCATING_COLLISION_CHECK_SCALE cN field_32675 + f D MINOR_COLLISION_ANGLE_THRESHOLD_RADIAN cO field_36194 + f Lnet/minecraft/stats/StatsCounter; stats cP field_3928 + f Lnet/minecraft/client/ClientRecipeBook; recipeBook cQ field_3930 + f Ljava/util/List; ambientSoundHandlers cR field_3933 + f I permissionLevel cS field_3912 + f D xLast cT field_3926 + c The last X position which was transmitted to the server, used to determine when the X position changes and needs to be re-transmitted + f D yLast1 cU field_3940 + c The last Y position which was transmitted to the server, used to determine when the Y position changes and needs to be re-transmitted + f D zLast cV field_3924 + c The last Z position which was transmitted to the server, used to determine when the Z position changes and needs to be re-transmitted + f F yRotLast cW field_3941 + c The last yaw value which was transmitted to the server, used to determine when the yaw changes and needs to be re-transmitted + f F xRotLast cX field_3925 + c The last pitch value which was transmitted to the server, used to determine when the pitch changes and needs to be re-transmitted + f Z lastOnGround cY field_3920 + f Z crouching cZ field_23093 + f Lnet/minecraft/client/player/Input; input cz field_3913 + f Z wasShiftKeyDown da field_3936 + f Z wasSprinting db field_3919 + c the last sprinting state sent to the server + f I positionReminder dc field_3923 + c Reset to 0 every time position is sent to the server, used to send periodic updates every 20 ticks even when the player is not moving. + f Z flashOnSetHealth dd field_3918 + f I jumpRidingTicks de field_3938 + f F jumpRidingScale df field_3922 + f Z startedUsingItem dg field_3915 + f Lnet/minecraft/world/InteractionHand; usingItemHand dh field_3945 + f Z handsBusy di field_3942 + f Z autoJumpEnabled dj field_3927 + f I autoJumpTime dk field_3934 + f Z wasFallFlying dl field_3939 + f I waterVisionTime dm field_3917 + f Z showDeathScreen dn field_20663 + f Z doLimitedCrafting do field_46188 + f Lorg/slf4j/Logger; LOGGER g field_39078 + f Lnet/minecraft/client/multiplayer/ClientPacketListener; connection h field_3944 + m ()Lnet/minecraft/world/level/block/Portal$Transition; getActivePortalLocalTransition A method_60886 + m ()Z isHandsBusy B method_3144 + m ()Z isAutoJumpEnabled C method_3149 + m ()F getWaterVision D method_3140 + m ()V sendPosition E method_3136 + c Called every tick when the player is on foot. Performs all the things that normally happen during movement. + m ()V sendIsSprintingIfNeeded F method_46742 + m ()Z canAutoJump H method_22119 + m (F)V hurtTo H method_3138 + c Updates health locally. + p 1 health + m ()Z isMoving I method_22120 + m ()Z canStartSprinting J method_48300 + m ()Z hasEnoughImpulseToStartSprinting L method_20623 + m ()Z hasEnoughFoodToStartSprinting N method_46743 + m (FII)V setExperienceValues a method_3145 + c Sets the current XP, total XP, and level number. + p 1 currentXP + p 2 maxXP + p 3 level + m (I)V setPermissionLevel a method_3147 + p 1 permissionLevel + m (Lnet/minecraft/world/item/crafting/RecipeHolder;)V removeRecipeHighlight a method_3141 + p 1 recipe + m (Lnet/minecraft/world/level/GameType;)V onGameModeChanged a method_51889 + p 1 gameMode + m (Lnet/minecraft/world/phys/shapes/VoxelShape;)Ljava/util/stream/Stream; method_3139 a method_3139 + m (Z)Z drop a method_7290 + p 1 fullStack + m (Z)V setShowDeathScreen b method_22420 + p 1 show + m (DD)V moveTowardsClosestSpace c method_30673 + p 1 x + p 3 z + m (Lnet/minecraft/core/BlockPos;)Z suffocatesAt c method_30674 + p 1 pos + m ()F getCurrentMood d method_26269 + m (Lnet/minecraft/world/entity/Entity;)Z vehicleCanSprint d method_48301 + p 1 vehicle + m ()V clientSideCloseContainer e method_3137 + m (FF)V updateAutoJump g method_3148 + p 1 movementX + p 2 movementZ + m ()V sendRidingJump h method_3133 + m ()V sendOpenInventory i method_3132 + m ()Lnet/minecraft/stats/StatsCounter; getStats j method_3143 + m ()Lnet/minecraft/client/ClientRecipeBook; getRecipeBook m method_3130 + m ()Z shouldShowDeathScreen o method_22419 + m ()Z getDoLimitedCrafting p method_53847 + m ()Lnet/minecraft/world/entity/PlayerRideableJumping; jumpableVehicle q method_45773 + m ()F getJumpRidingScale v method_3151 + m ()Z isMovingSlowly w method_20303 + m ()Z isControlledCamera x method_3134 + m (Z)V setDoLimitedCrafting x method_53848 + p 1 doLimitedCrafting + m ()V resetPos y method_33689 + m (Z)V handleConfusionTransitionEffect y method_60887 + p 1 useConfusion + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/multiplayer/ClientPacketListener;Lnet/minecraft/stats/StatsCounter;Lnet/minecraft/client/ClientRecipeBook;ZZ)V + p 1 minecraft + p 2 clientLevel + p 3 connection + p 4 stats + p 5 recipeBook + p 6 wasShiftKeyDown + p 7 wasSprinting + m ()V +c net/minecraft/client/player/RemotePlayer gec net/minecraft/class_745 + f Lnet/minecraft/world/phys/Vec3; lerpDeltaMovement g field_42907 + f I lerpDeltaMovementSteps h field_42908 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lcom/mojang/authlib/GameProfile;)V + p 1 clientLevel + p 2 gameProfile +c net/minecraft/client/player/inventory/Hotbar ged net/minecraft/class_748 + f Lcom/mojang/serialization/Codec; CODEC a field_48942 + f Lorg/slf4j/Logger; LOGGER b field_48943 + f I SIZE c field_48944 + f Lcom/mojang/serialization/DynamicOps; DEFAULT_OPS d field_48945 + f Lcom/mojang/serialization/Dynamic; EMPTY_STACK e field_48946 + f Ljava/util/List; items f field_48947 + m ()Z isEmpty a method_56835 + m (Lnet/minecraft/world/entity/player/Inventory;Lnet/minecraft/core/RegistryAccess;)V storeFrom a method_56836 + p 1 inventory + p 2 registryAccess + m (Lcom/mojang/serialization/Dynamic;)Z isEmpty a method_56837 + p 0 dynamic + m (Lnet/minecraft/client/player/inventory/Hotbar;)Ljava/util/List; method_56838 a method_56838 + m (Ljava/lang/String;)V method_56841 a method_56841 + m (Ljava/util/List;)Lcom/mojang/serialization/DataResult; method_56842 a method_56842 + m (Lnet/minecraft/core/HolderLookup$Provider;)Ljava/util/List; load a method_56839 + p 1 registries + m (Lnet/minecraft/core/HolderLookup$Provider;Lcom/mojang/serialization/Dynamic;)Lnet/minecraft/world/item/ItemStack; method_56840 a method_56840 + m (Lnet/minecraft/nbt/Tag;)Lcom/mojang/serialization/Dynamic; method_56843 a method_56843 + m (Ljava/lang/String;)V method_56844 b method_56844 + m (Ljava/util/List;)V + p 1 items + m ()V + m ()V +c net/minecraft/client/player/inventory/package-info gee net/minecraft/class_6241 +c net/minecraft/client/player/package-info gef net/minecraft/class_6242 +c net/minecraft/client/profiling/ClientMetricsSamplersProvider geg net/minecraft/class_6412 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer a field_33959 + f Ljava/util/Set; samplers b field_33960 + f Lnet/minecraft/util/profiling/metrics/profiling/ProfilerSamplerAdapter; samplerFactory c field_33961 + m ()V registerStaticSamplers a method_37309 + m (Ljava/util/function/LongSupplier;Lnet/minecraft/client/renderer/LevelRenderer;)V + p 1 timeSource + p 2 levelRenderer +c net/minecraft/client/profiling/package-info geh net/minecraft/class_6244 +c net/minecraft/client/quickplay/QuickPlay gei net/minecraft/class_8496 + f Lnet/minecraft/network/chat/Component; ERROR_TITLE a field_44554 + f Lnet/minecraft/network/chat/Component; INVALID_IDENTIFIER b field_44555 + f Lnet/minecraft/network/chat/Component; REALM_CONNECT c field_44556 + f Lnet/minecraft/network/chat/Component; REALM_PERMISSION d field_44557 + f Lnet/minecraft/network/chat/Component; TO_TITLE e field_44558 + f Lnet/minecraft/network/chat/Component; TO_WORLD_LIST f field_44559 + f Lnet/minecraft/network/chat/Component; TO_REALMS_LIST g field_44560 + m (JLcom/mojang/realmsclient/dto/RealmsServer;)Z method_51258 a method_51258 + m (Lnet/minecraft/client/Minecraft;)V method_54636 a method_54636 + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/realmsclient/client/RealmsClient;Ljava/lang/String;)V joinRealmsWorld a method_51259 + p 0 minecraft + p 1 realmsClient + p 2 serverId + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/main/GameConfig$QuickPlayData;Lcom/mojang/realmsclient/client/RealmsClient;)V connect a method_51260 + p 0 minecraft + p 1 quickPlayData + p 2 realmsClient + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V joinSingleplayerWorld a method_51261 + p 0 minecraft + p 1 levelName + m (Lnet/minecraft/client/Minecraft;Ljava/lang/String;)V joinMultiplayerWorld b method_51263 + p 0 minecraft + p 1 ip + m ()V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog gej net/minecraft/class_8497 + f Lnet/minecraft/client/quickplay/QuickPlayLog; INACTIVE a field_44561 + f Lorg/slf4j/Logger; LOGGER b field_44562 + f Lcom/google/gson/Gson; GSON c field_44563 + f Ljava/nio/file/Path; path d field_44564 + f Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; worldData e field_44565 + m (Lcom/google/gson/JsonElement;)V method_51264 a method_51264 + m (Lnet/minecraft/client/Minecraft;)V log a method_51265 + p 1 minecraft + m (Lnet/minecraft/client/quickplay/QuickPlayLog$Type;Ljava/lang/String;Ljava/lang/String;)V setWorldData a method_51266 + p 1 type + p 2 id + p 3 name + m (Ljava/lang/String;)Lnet/minecraft/client/quickplay/QuickPlayLog; of a method_51267 + p 0 path + m (Lnet/minecraft/client/Minecraft;)V method_51268 b method_51268 + m (Ljava/lang/String;)V + p 1 path + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$1 gej$1 net/minecraft/class_8497$1 + m (Ljava/lang/String;)V +c net/minecraft/client/quickplay/QuickPlayLog$QuickPlayEntry gej$a net/minecraft/class_8497$class_8498 + f Lcom/mojang/serialization/Codec; CODEC a field_44566 + f Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; quickPlayWorld b comp_1480 + f Ljava/time/Instant; lastPlayedTime c comp_1481 + f Lnet/minecraft/world/level/GameType; gamemode d comp_1482 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld; quickPlayWorld a comp_1480 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51269 a method_51269 + m ()Ljava/time/Instant; lastPlayedTime b comp_1481 + m ()Lnet/minecraft/world/level/GameType; gamemode c comp_1482 + m (Lnet/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld;Ljava/time/Instant;Lnet/minecraft/world/level/GameType;)V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$QuickPlayWorld gej$b net/minecraft/class_8497$class_8499 + f Lcom/mojang/serialization/MapCodec; MAP_CODEC a field_44567 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; type b comp_1483 + f Ljava/lang/String; id c comp_1484 + f Ljava/lang/String; name d comp_1485 + m ()Lnet/minecraft/client/quickplay/QuickPlayLog$Type; type a comp_1483 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_51270 a method_51270 + m ()Ljava/lang/String; id b comp_1484 + m ()Ljava/lang/String; name c comp_1485 + m (Lnet/minecraft/client/quickplay/QuickPlayLog$Type;Ljava/lang/String;Ljava/lang/String;)V + m ()V +c net/minecraft/client/quickplay/QuickPlayLog$Type gej$c net/minecraft/class_8497$class_8500 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; SINGLEPLAYER a field_44568 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; MULTIPLAYER b field_44569 + f Lnet/minecraft/client/quickplay/QuickPlayLog$Type; REALMS c field_44570 + f Lcom/mojang/serialization/Codec; CODEC d field_44571 + f Ljava/lang/String; name e field_44572 + f [Lnet/minecraft/client/quickplay/QuickPlayLog$Type; $VALUES f field_44573 + m ()[Lnet/minecraft/client/quickplay/QuickPlayLog$Type; $values a method_51271 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/quickplay/package-info gek net/minecraft/class_8501 +c net/minecraft/client/renderer/BiomeColors gel net/minecraft/class_1163 + f Lnet/minecraft/world/level/ColorResolver; GRASS_COLOR_RESOLVER a field_5665 + f Lnet/minecraft/world/level/ColorResolver; FOLIAGE_COLOR_RESOLVER b field_5664 + f Lnet/minecraft/world/level/ColorResolver; WATER_COLOR_RESOLVER c field_5666 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageGrassColor a method_4962 + p 0 level + p 1 blockPos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/ColorResolver;)I getAverageColor a method_4965 + p 0 level + p 1 blockPos + p 2 colorResolver + m (Lnet/minecraft/world/level/biome/Biome;DD)I method_23790 a method_23790 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageFoliageColor b method_4966 + p 0 level + p 1 blockPos + m (Lnet/minecraft/world/level/biome/Biome;DD)I method_23791 b method_23791 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getAverageWaterColor c method_4961 + p 0 level + p 1 blockPos + m ()V + m ()V +c net/minecraft/client/renderer/BlockEntityWithoutLevelRenderer gem net/minecraft/class_756 + f [Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; SHULKER_BOXES a field_3981 + f Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; DEFAULT_SHULKER_BOX b field_3984 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; chest c field_3976 + f Lnet/minecraft/world/level/block/entity/ChestBlockEntity; trappedChest d field_3978 + f Lnet/minecraft/world/level/block/entity/EnderChestBlockEntity; enderChest e field_3977 + f Lnet/minecraft/world/level/block/entity/BannerBlockEntity; banner f field_3983 + f Lnet/minecraft/world/level/block/entity/BedBlockEntity; bed g field_3982 + f Lnet/minecraft/world/level/block/entity/ConduitBlockEntity; conduit h field_3979 + f Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity; decoratedPot i field_42909 + f Lnet/minecraft/client/model/ShieldModel; shieldModel j field_3980 + f Lnet/minecraft/client/model/TridentModel; tridentModel k field_3985 + f Ljava/util/Map; skullModels l field_27737 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher m field_27738 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModelSet n field_27739 + m (I)[Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; method_3165 a method_3165 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity; method_32132 a method_32132 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V renderByItem a method_3166 + p 1 stack + p 2 displayContext + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/component/ResolvableProfile;)V method_57795 a method_57795 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 blockEntityRenderDispatcher + p 2 entityModelSet + m ()V +c net/minecraft/client/renderer/CubeMap gen net/minecraft/class_751 + f I SIDES a field_32680 + f [Lnet/minecraft/resources/ResourceLocation; images b field_3952 + m (Lnet/minecraft/client/Minecraft;FFF)V render a method_3156 + p 1 mc + p 2 pitch + p 3 yaw + p 4 alpha + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preload a method_18143 + p 1 texMngr + p 2 backgroundExecutor + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 baseImageLocation +c net/minecraft/client/renderer/DimensionSpecialEffects geo net/minecraft/class_5294 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; EFFECTS a field_24609 + f [F sunriseCol b field_24610 + f F cloudLevel c field_24611 + f Z hasGround d field_24612 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; skyType e field_25637 + f Z forceBrightLightmap f field_24613 + f Z constantAmbientLight g field_25638 + m ()F getCloudHeight a method_28108 + m (FF)[F getSunriseColor a method_28109 + p 1 timeOfDay + p 2 partialTicks + m (II)Z isFoggyAt a method_28110 + p 1 x + p 2 y + m (Lnet/minecraft/world/level/dimension/DimensionType;)Lnet/minecraft/client/renderer/DimensionSpecialEffects; forType a method_28111 + p 0 dimensionType + m (Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3; getBrightnessDependentFogColor a method_28112 + p 1 fogColor + p 2 brightness + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap;)V method_29092 a method_29092 + m ()Z hasGround b method_28113 + m ()Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; skyType c method_29992 + m ()Z forceBrightLightmap d method_28114 + m ()Z constantAmbientLight e method_29993 + m (FZLnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType;ZZ)V + p 1 cloudLevel + p 2 hasGround + p 3 skyType + p 4 forceBrightLightmap + p 5 constantAmbientLight + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$EndEffects geo$a net/minecraft/class_5294$class_5295 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$NetherEffects geo$b net/minecraft/class_5294$class_5296 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$OverworldEffects geo$c net/minecraft/class_5294$class_5297 + f I CLOUD_LEVEL a field_32681 + m ()V +c net/minecraft/client/renderer/DimensionSpecialEffects$SkyType geo$d net/minecraft/class_5294$class_5401 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; NONE a field_25639 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; NORMAL b field_25640 + f Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; END c field_25641 + f [Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; $VALUES d field_25642 + m ()[Lnet/minecraft/client/renderer/DimensionSpecialEffects$SkyType; $values a method_36912 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/EffectInstance gep net/minecraft/class_280 + f Ljava/lang/String; EFFECT_SHADER_PATH a field_32682 + f Lorg/slf4j/Logger; LOGGER b field_1514 + f Lcom/mojang/blaze3d/shaders/AbstractUniform; DUMMY_UNIFORM c field_1520 + f Z ALWAYS_REAPPLY d field_32683 + f Lnet/minecraft/client/renderer/EffectInstance; lastAppliedEffect e field_1512 + f I lastProgramId f field_1505 + f Ljava/util/Map; samplerMap g field_1516 + f Ljava/util/List; samplerNames h field_1503 + f Ljava/util/List; samplerLocations i field_1506 + f Ljava/util/List; uniforms j field_1515 + f Ljava/util/List; uniformLocations k field_1507 + f Ljava/util/Map; uniformMap l field_1510 + f I programId m field_1521 + f Ljava/lang/String; name n field_1509 + f Z dirty o field_1511 + f Lcom/mojang/blaze3d/shaders/BlendMode; blend p field_1517 + f Ljava/util/List; attributes q field_1518 + f Ljava/util/List; attributeNames r field_1504 + f Lcom/mojang/blaze3d/shaders/EffectProgram; vertexProgram s field_1508 + f Lcom/mojang/blaze3d/shaders/EffectProgram; fragmentProgram t field_1519 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/EffectProgram; getOrCreate a method_16036 + p 0 resourceProvider + p 1 type + p 2 name + m (Lcom/google/gson/JsonElement;)V parseSamplerNode a method_1276 + p 1 json + m (Lcom/google/gson/JsonObject;)Lcom/mojang/blaze3d/shaders/BlendMode; parseBlendNode a method_16035 + p 0 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Uniform; getUniform a method_1271 + p 1 name + m (Ljava/lang/String;Ljava/util/function/IntSupplier;)V setSampler a method_1269 + p 1 name + p 2 textureId + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_1272 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/AbstractUniform; safeGetUniform b method_1275 + p 1 name + m ()V clear f method_1273 + m ()V apply g method_1277 + m ()Ljava/lang/String; getName h method_35763 + m ()V updateLocations i method_1268 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;)V + p 1 resourceProvider + p 2 name + m ()V +c net/minecraft/client/renderer/FaceInfo geq net/minecraft/class_753 + f Lnet/minecraft/client/renderer/FaceInfo; DOWN a field_3965 + f Lnet/minecraft/client/renderer/FaceInfo; UP b field_3960 + f Lnet/minecraft/client/renderer/FaceInfo; NORTH c field_3962 + f Lnet/minecraft/client/renderer/FaceInfo; SOUTH d field_3963 + f Lnet/minecraft/client/renderer/FaceInfo; WEST e field_3966 + f Lnet/minecraft/client/renderer/FaceInfo; EAST f field_3961 + f [Lnet/minecraft/client/renderer/FaceInfo; BY_FACING g field_3958 + f [Lnet/minecraft/client/renderer/FaceInfo$VertexInfo; infos h field_3959 + f [Lnet/minecraft/client/renderer/FaceInfo; $VALUES i field_3964 + m ()[Lnet/minecraft/client/renderer/FaceInfo; $values a method_36913 + m (I)Lnet/minecraft/client/renderer/FaceInfo$VertexInfo; getVertexInfo a method_3162 + p 1 index + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/FaceInfo; fromFacing a method_3163 + p 0 facing + m ([Lnet/minecraft/client/renderer/FaceInfo;)V method_3161 a method_3161 + m (Ljava/lang/String;I[Lnet/minecraft/client/renderer/FaceInfo$VertexInfo;)V + p 3 infos + m ()V +c net/minecraft/client/renderer/FaceInfo$Constants geq$a net/minecraft/class_753$class_754 + f I MAX_Z a field_3972 + f I MAX_Y b field_3971 + f I MAX_X c field_3970 + f I MIN_Z d field_3969 + f I MIN_Y e field_3968 + f I MIN_X f field_3967 + m ()V + m ()V +c net/minecraft/client/renderer/FaceInfo$VertexInfo geq$b net/minecraft/class_753$class_755 + f I xFace a field_3975 + f I yFace b field_3974 + f I zFace c field_3973 + m (III)V + p 1 xFace + p 2 yFace + p 3 zFace +c net/minecraft/client/renderer/FogRenderer ger net/minecraft/class_758 + f F BIOME_FOG_TRANSITION_TIME a field_32684 + f I WATER_FOG_DISTANCE b field_32685 + f Ljava/util/List; MOB_EFFECT_FOG c field_38338 + f F fogRed d field_4034 + f F fogGreen e field_4033 + f F fogBlue f field_4032 + f I targetBiomeFog g field_4031 + f I previousBiomeFog h field_4041 + f J biomeChangedTime i field_4042 + m ()V setupNoFog a method_23792 + m (Lnet/minecraft/world/entity/Entity;F)Lnet/minecraft/client/renderer/FogRenderer$MobEffectFogFunction; getPriorityFogFunction a method_42588 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FLnet/minecraft/client/renderer/FogRenderer$MobEffectFogFunction;)Z method_42589 a method_42589 + m (Lnet/minecraft/client/Camera;FLnet/minecraft/client/multiplayer/ClientLevel;IF)V setupColor a method_3210 + p 0 activeRenderInfo + p 1 partialTicks + p 2 level + p 3 renderDistanceChunks + p 4 bossColorModifier + m (Lnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/FogRenderer$FogMode;FZF)V setupFog a method_3211 + p 0 camera + p 1 fogMode + p 2 farPlaneDistance + p 3 shouldCreateFog + p 4 partialTick + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/level/biome/BiomeManager;FIII)Lnet/minecraft/world/phys/Vec3; method_24873 a method_24873 + m ()V levelFogColor b method_3212 + m ()V + m ()V +c net/minecraft/client/renderer/FogRenderer$BlindnessFogFunction ger$a net/minecraft/class_758$class_7283 + m ()V +c net/minecraft/client/renderer/FogRenderer$DarknessFogFunction ger$b net/minecraft/class_758$class_7284 + m ()V +c net/minecraft/client/renderer/FogRenderer$FogData ger$c net/minecraft/class_758$class_7285 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; mode a field_38339 + f F start b field_38340 + f F end c field_38341 + f Lcom/mojang/blaze3d/shaders/FogShape; shape d field_38342 + m (Lnet/minecraft/client/renderer/FogRenderer$FogMode;)V + p 1 mode +c net/minecraft/client/renderer/FogRenderer$FogMode ger$d net/minecraft/class_758$class_4596 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; FOG_SKY a field_20945 + f Lnet/minecraft/client/renderer/FogRenderer$FogMode; FOG_TERRAIN b field_20946 + f [Lnet/minecraft/client/renderer/FogRenderer$FogMode; $VALUES c field_20947 + m ()[Lnet/minecraft/client/renderer/FogRenderer$FogMode; $values a method_36914 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/FogRenderer$MobEffectFogFunction ger$e net/minecraft/class_758$class_7286 + m ()Lnet/minecraft/core/Holder; getMobEffect a method_42590 + m (Lnet/minecraft/world/entity/LivingEntity;F)Z isEnabled a method_42593 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;FF)F getModifiedVoidDarkness a method_42592 + p 1 entity + p 2 effectInstance + p 4 partialTick + m (Lnet/minecraft/client/renderer/FogRenderer$FogData;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/effect/MobEffectInstance;FF)V setupFog a method_42591 + p 1 fogData + p 2 entity + p 3 effectInstance + p 4 farPlaneDistance +c net/minecraft/client/renderer/GameRenderer ges net/minecraft/class_757 + f Lnet/minecraft/client/renderer/LightTexture; lightTexture A field_4028 + f Lnet/minecraft/client/renderer/texture/OverlayTexture; overlayTexture B field_20949 + f Z panoramicMode C field_4001 + f F zoom D field_4005 + f F zoomX E field_3988 + f F zoomY F field_4004 + f Lnet/minecraft/world/item/ItemStack; itemActivationItem G field_4006 + f I itemActivationTicks H field_4007 + f F itemActivationOffX I field_4029 + f F itemActivationOffY J field_4003 + f Lnet/minecraft/client/renderer/PostChain; postEffect K field_4024 + f Lnet/minecraft/client/renderer/PostChain; blurEffect L field_49567 + f Z effectActive M field_4013 + f Lnet/minecraft/client/Camera; mainCamera N field_18765 + f Ljava/util/Map; shaders O field_29350 + f Lnet/minecraft/client/renderer/ShaderInstance; positionShader P field_29351 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorShader Q field_29352 + f Lnet/minecraft/client/renderer/ShaderInstance; positionTexShader R field_29354 + f Lnet/minecraft/client/renderer/ShaderInstance; positionTexColorShader S field_29355 + f Lnet/minecraft/client/renderer/ShaderInstance; particleShader T field_29358 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorLightmapShader U field_29359 + f Lnet/minecraft/client/renderer/ShaderInstance; positionColorTexLightmapShader V field_29360 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeSolidShader W field_29363 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCutoutMippedShader X field_29364 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCutoutShader Y field_29365 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTranslucentShader Z field_29366 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintDirectShader aA field_29402 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityGlintShader aB field_29367 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityGlintDirectShader aC field_29368 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextShader aD field_29369 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextBackgroundShader aE field_42515 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextIntensityShader aF field_33626 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextSeeThroughShader aG field_29370 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextBackgroundSeeThroughShader aH field_42516 + f I MAX_BLUR_RADIUS a field_49904 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTextIntensitySeeThroughShader aI field_33627 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLightningShader aJ field_29371 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTripwireShader aK field_29372 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEndPortalShader aL field_29373 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEndGatewayShader aM field_29374 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCloudsShader aN field_48948 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLinesShader aO field_29375 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeCrumblingShader aP field_29376 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiShader aQ field_44810 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiOverlayShader aR field_44811 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiTextHighlightShader aS field_44812 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGuiGhostRecipeOverlayShader aT field_44813 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeTranslucentMovingBlockShader aa field_29377 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorCutoutNoCullShader ab field_29379 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntitySolidShader ac field_29380 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutShader ad field_29381 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutNoCullShader ae field_29382 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityCutoutNoCullZOffsetShader af field_29383 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeItemEntityTranslucentCullShader ag field_29384 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentCullShader ah field_29385 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentShader ai field_29386 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityTranslucentEmissiveShader aj field_38343 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntitySmoothCutoutShader ak field_29387 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeBeaconBeamShader al field_29388 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityDecalShader am field_29389 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityNoOutlineShader an field_29390 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityShadowShader ao field_29391 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEntityAlphaShader ap field_29392 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEyesShader aq field_29393 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeEnergySwirlShader ar field_29394 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeBreezeWindShader as field_47462 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeLeashShader at field_29395 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeWaterMaskShader au field_29396 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeOutlineShader av field_29397 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorGlintShader aw field_29398 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeArmorEntityGlintShader ax field_29399 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintTranslucentShader ay field_29400 + f Lnet/minecraft/client/renderer/ShaderInstance; rendertypeGlintShader az field_29401 + f F PROJECTION_Z_NEAR b field_32686 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer c field_4012 + f I ITEM_ACTIVATION_ANIMATION_LENGTH d field_32687 + f Lnet/minecraft/client/renderer/ShaderInstance; blitShader e field_29403 + f Lnet/minecraft/resources/ResourceLocation; NAUSEA_LOCATION f field_26730 + f Lnet/minecraft/resources/ResourceLocation; BLUR_LOCATION g field_49568 + f Lorg/slf4j/Logger; LOGGER h field_3993 + f Z DEPTH_BUFFER_DEBUG i field_32688 + f F GUI_Z_NEAR j field_44940 + f Lnet/minecraft/client/Minecraft; minecraft k field_4015 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager l field_4018 + f Lnet/minecraft/util/RandomSource; random m field_3994 + f F renderDistance n field_4025 + f Lnet/minecraft/client/gui/MapRenderer; mapRenderer o field_4026 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers p field_20948 + f I confusionAnimationTick q field_47130 + f F fov r field_4019 + f F oldFov s field_3999 + f F darkenWorldAmount t field_4002 + f F darkenWorldAmountO u field_3997 + f Z renderHand v field_3992 + f Z renderBlockOutline w field_4009 + f J lastScreenshotAttempt x field_4017 + f Z hasWorldScreenshot y field_34055 + f J lastActiveTime z field_3998 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorCutoutNoCullShader A method_34501 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36536 A method_36536 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntitySolidShader B method_34502 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36537 B method_36537 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutShader C method_34503 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36538 C method_36538 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutNoCullShader D method_34504 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36539 D method_36539 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityCutoutNoCullZOffsetShader E method_34505 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36540 E method_36540 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeItemEntityTranslucentCullShader F method_34506 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36541 F method_36541 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentCullShader G method_34507 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36486 G method_36486 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentShader H method_34508 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36487 H method_36487 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityTranslucentEmissiveShader I method_42595 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_42594 I method_42594 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntitySmoothCutoutShader J method_34509 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36488 J method_36488 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeBeaconBeamShader K method_34510 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36489 K method_36489 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityDecalShader L method_34511 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_54637 L method_54637 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityNoOutlineShader M method_34512 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36492 M method_36492 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityShadowShader N method_34513 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36493 N method_36493 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityAlphaShader O method_34514 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36494 O method_36494 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEyesShader P method_34515 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36495 P method_36495 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEnergySwirlShader Q method_34516 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36496 Q method_36496 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeBreezeWindShader R method_55249 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36497 R method_36497 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLeashShader S method_34517 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36498 S method_36498 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeWaterMaskShader T method_34518 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36499 T method_36499 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeOutlineShader U method_34519 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_56845 U method_56845 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorGlintShader V method_34520 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36504 V method_36504 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeArmorEntityGlintShader W method_34523 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36505 W method_36505 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintTranslucentShader X method_34524 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36506 X method_36506 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintShader Y method_34525 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36507 Y method_36507 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGlintDirectShader Z method_34526 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36508 Z method_36508 + m ()Z isPanoramicMode a method_35765 + m (D)Lorg/joml/Matrix4f; getProjectionMatrix a method_22973 + p 1 fov + m (F)V processBlurEffect a method_57796 + p 1 partialTick + m (FFF)V renderZoomed a method_35766 + p 1 zoom + p 2 zoomX + p 3 zoomY + m (II)V resize a method_3169 + p 1 width + p 2 height + m (Lnet/minecraft/resources/ResourceLocation;)V loadEffect a method_3168 + p 1 resourceLocation + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V preloadUiShader a method_34521 + p 1 resourceProvider + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;)Lnet/minecraft/client/renderer/ShaderInstance; preloadShader a method_34522 + p 1 resourceProvider + p 2 name + p 3 format + m (Lnet/minecraft/world/entity/Entity;)V checkEntityPostEffect a method_3167 + c What shader to use when spectating this entity + p 1 entity + m (Lnet/minecraft/world/entity/Entity;DDF)Lnet/minecraft/world/phys/HitResult; pick a method_56153 + p 1 entity + p 2 blockInteractionRange + p 4 entityInteractionRange + p 6 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;F)F getNightVisionScale a method_3174 + p 0 livingEntity + p 1 nanoTime + m (Lcom/mojang/datafixers/util/Pair;)V method_36512 a method_36512 + m (Lnet/minecraft/world/item/ItemStack;)V displayItemActivation a method_3189 + p 1 stack + m (Lnet/minecraft/world/phys/HitResult;Lnet/minecraft/world/phys/Vec3;D)Lnet/minecraft/world/phys/HitResult; filterHitResult a method_56154 + p 0 hitResult + p 1 pos + p 2 blockInteractionRange + m (Lcom/mojang/blaze3d/platform/NativeImage;Ljava/nio/file/Path;)V method_3181 a method_3181 + m (Lcom/mojang/blaze3d/vertex/PoseStack;F)V bobHurt a method_3198 + p 1 poseStack + p 2 partialTicks + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/gui/GuiGraphics;)V method_60888 a method_60888 + m (Lnet/minecraft/client/Camera;FLorg/joml/Matrix4f;)V renderItemInHand a method_3172 + p 1 camera + p 2 partialTick + p 3 projectionMatrix + m (Lnet/minecraft/client/Camera;FZ)D getFov a method_3196 + p 1 activeRenderInfo + p 2 partialTicks + p 3 useFOVSetting + m (Lnet/minecraft/client/DeltaTracker;)V renderLevel a method_3188 + p 1 deltaTracker + m (Lnet/minecraft/client/DeltaTracker;Z)V render a method_3192 + p 1 deltaTracker + p 2 renderLevel + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderItemActivationAnimation a method_3171 + p 1 guiGraphics + p 2 partialTick + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_55250 a method_55250 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/ShaderInstance; getShader a method_35767 + p 1 name + m (Ljava/nio/file/Path;)V takeAutoScreenshot a method_3176 + p 1 path + m (Lorg/joml/Matrix4f;)V resetProjectionMatrix a method_22709 + p 1 matrix + m (Z)V setRenderHand a method_35768 + p 1 renderHand + m ()Ljava/lang/String; method_18655 aA method_18655 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityGlintShader aa method_34527 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36509 aa method_36509 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEntityGlintDirectShader ab method_34528 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36510 ab method_36510 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextShader ac method_34529 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36511 ac method_36511 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextBackgroundShader ad method_49037 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextIntensityShader ae method_36432 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextSeeThroughShader af method_34530 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextBackgroundSeeThroughShader ag method_49038 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTextIntensitySeeThroughShader ah method_36433 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLightningShader ai method_34531 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTripwireShader aj method_34532 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEndPortalShader ak method_34533 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeEndGatewayShader al method_34534 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCloudsShader am method_56846 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeLinesShader an method_34535 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCrumblingShader ao method_34536 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiShader ap method_51771 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiOverlayShader aq method_51772 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiTextHighlightShader ar method_51773 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeGuiGhostRecipeOverlayShader as method_51774 + m ()V shutdownShaders at method_34537 + m ()V tickFov au method_3199 + c Update FOV modifier hand + m ()V tryTakeScreenshotIfNeeded av method_37473 + m ()Z shouldRenderBlockOutline aw method_3202 + m ()Ljava/lang/String; method_37103 ax method_37103 + m ()Ljava/lang/String; method_3173 ay method_3173 + m ()Ljava/lang/String; method_3205 az method_3205 + m ()V shutdownEffect b method_3207 + m (F)V pick b method_3190 + c Gets the block or object that is being moused over. + p 1 partialTicks + m (II)Ljava/lang/String; method_3191 b method_3191 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V loadBlurEffect b method_57797 + p 1 resourceProvider + m (Lnet/minecraft/world/entity/Entity;)Z method_18144 b method_18144 + m (Lcom/mojang/datafixers/util/Pair;)V method_36516 b method_36516 + m (Lcom/mojang/blaze3d/vertex/PoseStack;F)V bobView b method_3186 + p 1 poseStack + p 2 partialTicks + m (Lnet/minecraft/client/gui/GuiGraphics;F)V renderConfusionOverlay b method_31136 + p 1 guiGraphics + p 2 scalar + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51770 b method_51770 + m (Ljava/nio/file/Path;)V method_37474 b method_37474 + m (Z)V setRenderBlockOutline b method_35769 + p 1 renderBlockOutline + m ()V togglePostEffect c method_3184 + m (F)F getDarkenWorldAmount c method_3195 + p 1 partialTicks + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V reloadShaders c method_34538 + p 1 resourceProvider + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51775 c method_51775 + m (Z)V setPanoramicMode c method_35770 + p 1 panoramicMode + m ()Lnet/minecraft/server/packs/resources/PreparableReloadListener; createReloadListener d method_45774 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51776 d method_51776 + m ()V tick e method_3182 + c Updates the entity renderer + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_51777 e method_51777 + m ()Lnet/minecraft/client/renderer/PostChain; currentEffect f method_3183 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36513 f method_36513 + m ()F getDepthFar g method_32796 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36517 g method_36517 + m ()V resetData h method_3203 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36502 h method_36502 + m ()Lnet/minecraft/client/gui/MapRenderer; getMapRenderer i method_3194 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36518 i method_36518 + m ()Lnet/minecraft/client/Minecraft; getMinecraft j method_35772 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36519 j method_36519 + m ()F getRenderDistance k method_3193 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36520 k method_36520 + m ()Lnet/minecraft/client/Camera; getMainCamera l method_19418 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36521 l method_36521 + m ()Lnet/minecraft/client/renderer/LightTexture; lightTexture m method_22974 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36522 m method_36522 + m ()Lnet/minecraft/client/renderer/texture/OverlayTexture; overlayTexture n method_22975 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_49039 n method_49039 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionShader o method_34539 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36523 o method_36523 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorShader p method_34540 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36524 p method_36524 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionTexShader q method_34542 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_49040 q method_49040 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionTexColorShader r method_34543 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36525 r method_36525 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getParticleShader s method_34546 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36526 s method_36526 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorLightmapShader t method_34547 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36527 t method_36527 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getPositionColorTexLightmapShader u method_34548 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36529 u method_36529 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeSolidShader v method_34495 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36530 v method_36530 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCutoutMippedShader w method_34496 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36531 w method_36531 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeCutoutShader x method_34497 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36533 x method_36533 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTranslucentShader y method_34498 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36534 y method_36534 + m ()Lnet/minecraft/client/renderer/ShaderInstance; getRendertypeTranslucentMovingBlockShader z method_34499 + m (Lnet/minecraft/client/renderer/ShaderInstance;)V method_36535 z method_36535 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/ItemInHandRenderer;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/RenderBuffers;)V + p 1 minecraft + p 2 itemInHandRenderer + p 3 resourceManager + p 4 renderBuffers + m ()V +c net/minecraft/client/renderer/GameRenderer$1 ges$1 net/minecraft/class_757$1 + f Lnet/minecraft/client/renderer/GameRenderer; field_40509 a field_40509 + m (Lnet/minecraft/resources/ResourceLocation;)Z method_45775 a method_45775 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/renderer/GameRenderer$ResourceCache; prepare a method_45776 + m (Lnet/minecraft/client/renderer/GameRenderer$ResourceCache;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_45777 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_45778 a method_45778 + m ([B)Ljava/io/InputStream; method_45779 a method_45779 + m (Lnet/minecraft/client/renderer/GameRenderer;)V +c net/minecraft/client/renderer/GameRenderer$ResourceCache ges$a net/minecraft/class_757$class_7760 + f Lnet/minecraft/server/packs/resources/ResourceProvider; original a comp_1038 + f Ljava/util/Map; cache c comp_1039 + m ()Lnet/minecraft/server/packs/resources/ResourceProvider; original a comp_1038 + m ()Ljava/util/Map; cache b comp_1039 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/util/Map;)V +c net/minecraft/client/renderer/GpuWarnlistManager get net/minecraft/class_5407 + f Lorg/slf4j/Logger; LOGGER a field_25716 + f Lnet/minecraft/resources/ResourceLocation; GPU_WARNLIST_LOCATION b field_25689 + f Lcom/google/common/collect/ImmutableMap; warnings c field_25690 + f Z showWarning d field_25717 + f Z warningDismissed e field_25718 + f Z skipFabulous f field_25719 + m ()Z hasWarnings a method_30055 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/renderer/GpuWarnlistManager$Preparations; prepare a method_30056 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Lcom/google/gson/JsonArray;Ljava/util/List;)V compilePatterns a method_30057 + p 0 jsonArray + p 1 patterns + m (Lnet/minecraft/client/renderer/GpuWarnlistManager$Preparations;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_30058 + p 1 object + p 2 resourceManager + p 3 profiler + m (Ljava/lang/StringBuilder;Ljava/lang/String;Ljava/lang/String;)V method_30919 a method_30919 + m (Ljava/util/List;Lcom/google/gson/JsonElement;)V method_30059 a method_30059 + m ()Z willShowWarning b method_30137 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lcom/google/gson/JsonObject; parseJson c method_30061 + p 0 resourceManager + p 1 profilerFiller + m ()V showWarning d method_30138 + m ()V dismissWarning e method_30139 + m ()V dismissWarningAndSkipFabulous f method_30140 + m ()Z isShowingWarning g method_30141 + m ()Z isSkippingFabulous h method_30142 + m ()V resetWarnings i method_30143 + m ()Ljava/lang/String; getRendererWarnings j method_30060 + m ()Ljava/lang/String; getVersionWarnings k method_30062 + m ()Ljava/lang/String; getVendorWarnings l method_30063 + m ()Ljava/lang/String; getAllWarnings m method_30920 + m ()V + m ()V +c net/minecraft/client/renderer/GpuWarnlistManager$Preparations get$a net/minecraft/class_5407$class_5408 + f Ljava/util/List; rendererPatterns a field_25691 + f Ljava/util/List; versionPatterns b field_25692 + f Ljava/util/List; vendorPatterns c field_25693 + m ()Lcom/google/common/collect/ImmutableMap; apply a method_30064 + m (Ljava/util/List;Ljava/lang/String;)Ljava/lang/String; matchAny a method_30066 + p 0 patterns + p 1 string + m (Ljava/util/List;Ljava/util/List;Ljava/util/List;)V + p 1 rendererPatterns + p 2 versionPatterns + p 3 vendorPatterns +c net/minecraft/client/renderer/ItemBlockRenderTypes geu net/minecraft/class_4696 + f Ljava/util/Map; TYPE_BY_BLOCK a field_21469 + f Ljava/util/Map; TYPE_BY_FLUID b field_21471 + f Z renderCutout c field_21472 + m (Lnet/minecraft/world/item/ItemStack;Z)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_23678 + p 0 stack + p 1 cull + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/RenderType; getChunkRenderType a method_23679 + p 0 state + m (Lnet/minecraft/world/level/block/state/BlockState;Z)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_23683 + p 0 state + p 1 cull + m (Lnet/minecraft/world/level/material/FluidState;)Lnet/minecraft/client/renderer/RenderType; getRenderLayer a method_23680 + p 0 fluidState + m (Ljava/util/HashMap;)V method_23681 a method_23681 + m (Z)V setFancy a method_23682 + p 0 fancy + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/RenderType; getMovingBlockRenderType b method_29359 + p 0 state + m (Ljava/util/HashMap;)V method_23685 b method_23685 + m ()V + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer gev net/minecraft/class_759 + f F ARM_SWING_Z_ROT_AMOUNT A field_32689 + f F ARM_HEIGHT_SCALE B field_32690 + f F ARM_POS_SCALE C field_32691 + f F ARM_POS_X D field_32692 + f F ARM_POS_Y E field_32693 + f F ARM_POS_Z F field_32694 + f F ARM_PRESWING_ROT_Y G field_32695 + f F ARM_PREROTATION_X_OFFSET H field_32696 + f F ARM_PREROTATION_Y_OFFSET I field_32697 + f F ARM_PREROTATION_Z_OFFSET J field_32698 + f F ARM_POSTROTATION_X_OFFSET K field_32699 + f I ARM_ROT_X L field_32700 + f I ARM_ROT_Y M field_32701 + f I ARM_ROT_Z N field_32702 + f F MAP_SWING_X_POS_SCALE O field_32703 + f F MAP_SWING_Z_POS_SCALE P field_32704 + f F MAP_HANDS_POS_X Q field_32705 + f F MAP_HANDS_POS_Y R field_32706 + f F MAP_HANDS_POS_Z S field_32707 + f F MAP_HANDS_HEIGHT_SCALE T field_32708 + f F MAP_HANDS_TILT_SCALE U field_32709 + f F MAP_PLAYER_PITCH_SCALE V field_32710 + f F MAP_HANDS_Z_ROT_AMOUNT W field_32711 + f F MAPHAND_X_ROT_AMOUNT X field_32712 + f F MAPHAND_Y_ROT_AMOUNT Y field_32713 + f F MAPHAND_Z_ROT_AMOUNT Z field_32714 + f F oOffHandHeight aA field_4051 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher aB field_4046 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer aC field_4044 + f Lnet/minecraft/client/renderer/RenderType; MAP_BACKGROUND a field_21807 + f F MAP_HAND_X_POS aa field_32715 + f F MAP_HAND_Y_POS ab field_32716 + f F MAP_HAND_Z_POS ac field_32717 + f F MAP_SWING_X_ROT_AMOUNT ad field_32718 + f F MAP_PRE_ROT_SCALE ae field_32719 + f F MAP_GLOBAL_X_POS af field_32720 + f F MAP_GLOBAL_Y_POS ag field_32721 + f F MAP_GLOBAL_Z_POS ah field_32722 + f F MAP_FINAL_SCALE ai field_32723 + f I MAP_BORDER aj field_32724 + f I MAP_HEIGHT ak field_32725 + f I MAP_WIDTH al field_32726 + f F BOW_CHARGE_X_POS_SCALE am field_32727 + f F BOW_CHARGE_Y_POS_SCALE an field_32728 + f F BOW_CHARGE_Z_POS_SCALE ao field_32729 + f F BOW_CHARGE_SHAKE_X_SCALE ap field_32730 + f F BOW_CHARGE_SHAKE_Y_SCALE aq field_32731 + f F BOW_CHARGE_SHAKE_Z_SCALE ar field_32732 + f F BOW_CHARGE_Z_SCALE as field_32733 + f F BOW_MIN_SHAKE_CHARGE at field_32734 + f Lnet/minecraft/client/Minecraft; minecraft au field_4050 + f Lnet/minecraft/world/item/ItemStack; mainHandItem av field_4047 + f Lnet/minecraft/world/item/ItemStack; offHandItem aw field_4048 + f F mainHandHeight ax field_4043 + f F oMainHandHeight ay field_4053 + f F offHandHeight az field_4052 + f Lnet/minecraft/client/renderer/RenderType; MAP_BACKGROUND_CHECKERBOARD b field_21808 + f F ITEM_SWING_X_POS_SCALE c field_32735 + f F ITEM_SWING_Y_POS_SCALE d field_32736 + f F ITEM_SWING_Z_POS_SCALE e field_32737 + f F ITEM_HEIGHT_SCALE f field_32738 + f F ITEM_POS_X g field_32739 + f F ITEM_POS_Y h field_32740 + f F ITEM_POS_Z i field_32741 + f F ITEM_PRESWING_ROT_Y j field_32742 + f F ITEM_SWING_X_ROT_AMOUNT k field_32743 + f F ITEM_SWING_Y_ROT_AMOUNT l field_32744 + f F ITEM_SWING_Z_ROT_AMOUNT m field_32745 + f F EAT_JIGGLE_X_ROT_AMOUNT n field_32746 + f F EAT_JIGGLE_Y_ROT_AMOUNT o field_32747 + f F EAT_JIGGLE_Z_ROT_AMOUNT p field_32748 + f F EAT_JIGGLE_X_POS_SCALE q field_32749 + f F EAT_JIGGLE_Y_POS_SCALE r field_32750 + f F EAT_JIGGLE_Z_POS_SCALE s field_32751 + f D EAT_JIGGLE_EXPONENT t field_32752 + f F EAT_EXTRA_JIGGLE_CUTOFF u field_32753 + f F EAT_EXTRA_JIGGLE_SCALE v field_32754 + f F ARM_SWING_X_POS_SCALE w field_32755 + f F ARM_SWING_Y_POS_SCALE x field_32756 + f F ARM_SWING_Z_POS_SCALE y field_32757 + f F ARM_SWING_Y_ROT_AMOUNT z field_32758 + m ()V tick a method_3220 + m (F)F calculateMapTilt a method_3227 + c Return the angle to render the Map + p 1 pitch + m (FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;Lnet/minecraft/client/player/LocalPlayer;I)V renderHandsWithItems a method_22976 + p 1 partialTicks + p 2 poseStack + p 3 buffer + p 4 playerEntity + p 5 combinedLight + m (Lnet/minecraft/world/InteractionHand;)V itemUsed a method_3215 + p 1 hand + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderItem a method_3233 + p 1 entity + p 2 itemStack + p 3 displayContext + p 4 leftHand + p 5 poseStack + p 6 buffer + p 7 seed + m (Lnet/minecraft/world/item/ItemStack;)Z isChargedCrossbow a method_33302 + p 0 stack + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/entity/HumanoidArm;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;)V applyEatTransform a method_3218 + p 1 poseStack + p 2 partialTick + p 3 arm + p 4 stack + p 5 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/entity/HumanoidArm;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/player/Player;F)V applyBrushTransform a method_49340 + p 1 poseStack + p 2 partialTick + p 3 arm + p 4 stack + p 5 player + p 6 equippedProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/HumanoidArm;F)V applyItemArmAttackTransform a method_3217 + p 1 poseStack + p 2 hand + p 3 swingProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFFF)V renderTwoHandedMap a method_3231 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 pitch + p 5 equippedProgress + p 6 swingProgress + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFFLnet/minecraft/world/entity/HumanoidArm;)V renderPlayerArm a method_3219 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 equippedProgress + p 5 swingProgress + p 6 side + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IFLnet/minecraft/world/entity/HumanoidArm;FLnet/minecraft/world/item/ItemStack;)V renderOneHandedMap a method_3222 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 equippedProgress + p 5 hand + p 6 swingProgress + p 7 stack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/HumanoidArm;)V renderMapHand a method_3216 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 side + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;)V renderMap a method_3223 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 stack + m (Lnet/minecraft/client/player/AbstractClientPlayer;FFLnet/minecraft/world/InteractionHand;FLnet/minecraft/world/item/ItemStack;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithItem a method_3228 + p 1 player + p 2 partialTicks + p 3 pitch + p 4 hand + p 5 swingProgress + p 6 stack + p 7 equippedProgress + p 8 poseStack + p 9 buffer + p 10 combinedLight + m (Lnet/minecraft/client/player/LocalPlayer;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; evaluateWhichHandsToRender a method_33303 + p 0 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/HumanoidArm;F)V applyItemArmTransform b method_3224 + p 1 poseStack + p 2 hand + p 3 equippedProg + m (Lnet/minecraft/client/player/LocalPlayer;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; selectionUsingItemWhileHoldingBowLike b method_33304 + p 0 player + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V + p 1 minecraft + p 2 entityRenderDispatcher + p 3 itemRenderer + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer$1 gev$1 net/minecraft/class_759$1 + f [I $SwitchMap$net$minecraft$world$item$UseAnim a field_4054 + m ()V +c net/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection gev$a net/minecraft/class_759$class_5773 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_BOTH_HANDS a field_28384 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_MAIN_HAND_ONLY b field_28385 + f Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; RENDER_OFF_HAND_ONLY c field_28386 + f Z renderMainHand d field_28387 + f Z renderOffHand e field_28388 + f [Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; $VALUES f field_28389 + m ()[Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; $values a method_36915 + m (Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/client/renderer/ItemInHandRenderer$HandRenderSelection; onlyForHand a method_33305 + p 0 hand + m (Ljava/lang/String;IZZ)V + p 3 renderMainHand + p 4 renderOffHand + m ()V +c net/minecraft/client/renderer/ItemModelShaper gew net/minecraft/class_763 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; shapes a field_4129 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; shapesCache b field_4130 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager c field_4128 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager a method_3303 + m (Lnet/minecraft/world/item/Item;)Lnet/minecraft/client/resources/model/BakedModel; getItemModel a method_3304 + p 1 item + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/client/resources/model/ModelResourceLocation;)V register a method_3309 + p 1 item + p 2 modelLocation + m (Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/resources/model/BakedModel; getItemModel a method_3308 + p 1 stack + m ()V rebuildCache b method_3310 + m (Lnet/minecraft/world/item/Item;)I getIndex b method_3306 + p 0 item + m (Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 modelManager +c net/minecraft/client/renderer/LevelRenderer gex net/minecraft/class_761 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; skyBuffer A field_4087 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; darkBuffer B field_4102 + f Z generateClouds C field_4107 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; cloudBuffer D field_4094 + f Lnet/minecraft/client/renderer/RunningTrimmedMean; frameTimes E field_21799 + f I ticks F field_4073 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; destroyingBlocks G field_4058 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; destructionProgress H field_20950 + f Ljava/util/Map; playingJukeboxSongs I field_4119 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; entityTarget J field_4101 + f Lnet/minecraft/client/renderer/PostChain; entityEffect K field_4059 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; translucentTarget L field_25274 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; itemEntityTarget M field_25275 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; particlesTarget N field_25276 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; weatherTarget O field_25277 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; cloudsTarget P field_25278 + f Lnet/minecraft/client/renderer/PostChain; transparencyChain Q field_25279 + f I lastCameraSectionX R field_4084 + f I lastCameraSectionY S field_4105 + f I lastCameraSectionZ T field_4121 + f D prevCamX U field_4069 + f D prevCamY V field_4081 + f D prevCamZ W field_4096 + f D prevCamRotX X field_4115 + f D prevCamRotY Y field_4064 + f I prevCloudX Z field_4082 + f I SECTION_SIZE a field_32759 + f I prevCloudY aa field_4097 + f I prevCloudZ ab field_4116 + f Lnet/minecraft/world/phys/Vec3; prevCloudColor ac field_4072 + f Lnet/minecraft/client/CloudStatus; prevCloudsType ad field_4080 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; sectionRenderDispatcher ae field_45614 + f I lastViewDistance af field_4062 + f I renderedEntities ag field_4089 + f I culledEntities ah field_4110 + f Lnet/minecraft/client/renderer/culling/Frustum; cullingFrustum ai field_27740 + f Z captureFrustum aj field_4090 + f Lnet/minecraft/client/renderer/culling/Frustum; capturedFrustum ak field_4056 + f [Lorg/joml/Vector4f; frustumPoints al field_4065 + f Lorg/joml/Vector3d; frustumPos am field_4091 + f D xTransparentOld an field_4083 + f D yTransparentOld ao field_4103 + f D zTransparentOld ap field_4118 + f I rainSoundTime aq field_20793 + f [F rainSizeX ar field_20794 + f [F rainSizeZ as field_20795 + f I HALF_SECTION_SIZE b field_34812 + f Lnet/minecraft/resources/ResourceLocation; CLOUDS_LOCATION c field_4108 + f [Lnet/minecraft/core/Direction; DIRECTIONS d field_4095 + f Lorg/slf4j/Logger; LOGGER e field_4060 + f F SKY_DISC_RADIUS f field_32762 + f I MIN_FOG_DISTANCE g field_32763 + f I RAIN_RADIUS h field_32764 + f I RAIN_DIAMETER i field_32765 + f I TRANSPARENT_SORT_COUNT j field_32766 + f Lnet/minecraft/resources/ResourceLocation; MOON_LOCATION k field_4098 + f Lnet/minecraft/resources/ResourceLocation; SUN_LOCATION l field_4111 + f Lnet/minecraft/resources/ResourceLocation; END_SKY_LOCATION m field_4061 + f Lnet/minecraft/resources/ResourceLocation; FORCEFIELD_LOCATION n field_4071 + f Lnet/minecraft/resources/ResourceLocation; RAIN_LOCATION o field_20797 + f Lnet/minecraft/resources/ResourceLocation; SNOW_LOCATION p field_20798 + f Lnet/minecraft/client/Minecraft; minecraft q field_4088 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher r field_4109 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher s field_27741 + f Lnet/minecraft/client/renderer/RenderBuffers; renderBuffers t field_20951 + f Lnet/minecraft/client/multiplayer/ClientLevel; level u field_4085 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph; sectionOcclusionGraph v field_45615 + f Lit/unimi/dsi/fastutil/objects/ObjectArrayList; visibleSections w field_45616 + f Ljava/util/Set; globalBlockEntities x field_4055 + c Global block entities; these are always rendered, even if off-screen.\nAny block entity is added to this if {@link net.minecraft.client.renderer.blockentity.BlockEntityRenderer#shouldRenderOffScreen(net.minecraft.world.level.block.entity.BlockEntity)} returns {@code true}. + f Lnet/minecraft/client/renderer/ViewArea; viewArea y field_4112 + f Lcom/mojang/blaze3d/vertex/VertexBuffer; starBuffer z field_4113 + m ()V createDarkSky A method_3265 + m ()V createLightSky B method_3277 + m ()V createStars C method_3293 + m ()V initOutline a method_3296 + m (DDD)Ljava/lang/String; method_3264 a method_3264 + m (F)Lnet/minecraft/world/phys/Vec3; mixColor a method_51778 + p 0 hue + m (FFFF)Lnet/minecraft/world/phys/Vec3; shiftHue a method_51779 + p 0 red + p 1 green + p 2 blue + p 3 hue + m (II)V resize a method_3242 + p 1 width + p 2 height + m (III)V setSectionDirtyWithNeighbors a method_18145 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (IIIIII)V setBlocksDirty a method_18146 + c Re-renders all blocks in the specified range. + p 1 minX + p 2 minY + p 3 minZ + p 4 maxX + p 5 maxY + p 6 maxZ + m (IIIZ)V setSectionDirty a method_3295 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + p 4 reRenderOnMainThread + m (ILnet/minecraft/core/BlockPos;I)V globalLevelEvent a method_8564 + c Handles a global level event. This includes playing sounds that should be heard by any player, regardless of position and dimension, such as the Wither spawning. + p 1 type + c the type of level event to handle. This method only handles {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_WITHER_BOSS_SPAWN the wither boss spawn sound}, {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_DRAGON_DEATH the dragon's death sound}, and {@linkplain net.minecraft.world.level.block.LevelEvent#SOUND_END_PORTAL_SPAWN the end portal spawn sound}. + p 2 pos + p 3 data + m (ILnet/minecraft/core/BlockPos;Lnet/minecraft/util/RandomSource;Lnet/minecraft/core/particles/SimpleParticleType;)V shootParticles a method_54638 + p 1 direction + p 2 pos + p 3 random + p 4 particleType + m (J)Ljava/util/SortedSet; method_22988 a method_22988 + m (Lnet/minecraft/server/level/BlockDestructionProgress;)V removeProgress a method_22987 + p 1 progress + m (Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/network/chat/MutableComponent; method_41949 a method_41949 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/world/phys/Vec3; method_41950 a method_41950 + m (Lnet/minecraft/world/entity/Entity;DDDFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderEntity a method_22977 + p 1 entity + p 2 camX + p 4 camY + p 6 camZ + p 8 partialTick + p 9 poseStack + p 10 bufferSource + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;)I getLightColor a method_23793 + p 0 level + p 1 state + p 2 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_23794 + p 0 level + p 1 pos + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;I)V blockChanged a method_8570 + p 1 level + p 2 pos + p 3 oldState + p 4 newState + p 5 flags + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_52815 + p 1 chunkPos + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Z)V notifyNearbyEntities a method_3247 + c Notifies living entities in a 3 block range of the specified {@code pos} that a record is or isn't playing nearby, dependent on the specified {@code playing} parameter.\nThis is used to make parrots start or stop partying. + p 1 level + p 2 pos + p 3 playing + m (Lnet/minecraft/world/phys/Vec3;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V prepareCullFrustum a method_32133 + p 1 cameraPosition + p 2 frustumMatrix + p 3 projectionMatrix + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V checkPoseStack a method_22979 + c Asserts that the specified {@code poseStack} is {@linkplain com.mojang.blaze3d.vertex.PoseStack#clear() clear}.\n@throws java.lang.IllegalStateException if the specified {@code poseStack} is not clear + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V renderLineBox a method_22980 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFFFFF)V renderLineBox a method_22981 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + p 18 red2 + p 19 green2 + p 20 blue2 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFFF)V addChainedFilledBoxVertices a method_49041 + p 0 poseStack + p 1 consumer + p 2 minX + p 3 minY + p 4 minZ + p 5 maxX + p 6 maxY + p 7 maxZ + p 8 red + p 9 green + p 10 blue + p 11 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V renderHitOutline a method_22712 + p 1 poseStack + p 2 consumer + p 3 entity + p 4 camX + p 6 camY + p 8 camZ + p 10 pos + p 11 state + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/AABB;FFFF)V renderLineBox a method_22982 + p 0 poseStack + p 1 buffer + p 2 box + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/shapes/VoxelShape;DDDFFFF)V renderShape a method_3291 + p 0 poseStack + p 1 consumer + p 2 shape + p 3 x + p 5 y + p 7 z + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/shapes/VoxelShape;DDDFFFFZ)V renderVoxelShape a method_22983 + p 0 poseStack + p 1 consumer + p 2 shape + p 3 x + p 5 y + p 7 z + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;FFFFFFFFFF)V renderFace a method_61044 + p 0 poseStack + p 1 buffer + p 2 face + p 3 x1 + p 4 y1 + p 5 z1 + p 6 x2 + p 7 y2 + p 8 z2 + p 9 red + p 10 green + p 11 blue + p 12 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/Camera;)V renderDebug a method_22989 + p 1 poseStack + p 2 buffer + p 3 camera + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FDDD)V renderClouds a method_3259 + p 1 poseStack + p 2 frustumMatrix + p 3 projectionMatrix + p 4 partialTick + p 5 camX + p 7 camY + p 9 camZ + m (Lcom/mojang/blaze3d/vertex/Tesselator;)Lcom/mojang/blaze3d/vertex/MeshData; drawStars a method_3255 + p 1 tesselator + m (Lcom/mojang/blaze3d/vertex/Tesselator;DDDLnet/minecraft/world/phys/Vec3;)Lcom/mojang/blaze3d/vertex/MeshData; buildClouds a method_3239 + p 1 tesselator + p 2 x + p 4 y + p 6 z + p 8 cloudColor + m (Lcom/mojang/blaze3d/vertex/Tesselator;F)Lcom/mojang/blaze3d/vertex/MeshData; buildSkyDisc a method_34550 + p 0 tesselator + p 1 y + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V renderLineBox a method_35773 + p 0 consumer + p 1 minX + p 3 minY + p 5 minZ + p 7 maxX + p 9 maxY + p 11 maxZ + p 13 red + p 14 green + p 15 blue + p 16 alpha + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;DDDFFFFDDDDDD)V method_3278 a method_3278 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;I)V addFrustumVertex a method_22984 + p 1 consumer + p 2 matrix + p 3 vertexIndex + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;IIIIIII)V addFrustumQuad a method_22985 + p 1 consumer + p 2 matrix + p 3 index1 + p 4 index2 + p 5 index3 + p 6 index4 + p 7 red + p 8 green + p 9 blue + m (Lnet/minecraft/client/Camera;)V tickRain a method_22713 + p 1 camera + m (Lnet/minecraft/client/Camera;FZF)V method_37365 a method_37365 + m (Lnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/culling/Frustum;ZZ)V setupRender a method_3273 + p 1 camera + p 2 frustum + p 3 hasCapturedFrustum + p 4 isSpectator + m (Lnet/minecraft/client/DeltaTracker;ZLnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/GameRenderer;Lnet/minecraft/client/renderer/LightTexture;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V renderLevel a method_22710 + p 1 deltaTracker + p 2 renderBlockOutline + p 3 camera + p 4 gameRenderer + p 5 lightTexture + p 6 frustumMatrix + p 7 projectionMatrix + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_3244 + p 1 level + c the level to set, or {@code null} to clear + m (Lnet/minecraft/client/renderer/LightTexture;FDDD)V renderSnowAndRain a method_22714 + p 1 lightTexture + p 2 partialTick + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexConsumer; method_22986 a method_22986 + m (Lnet/minecraft/client/renderer/RenderType;)Ljava/lang/String; method_3248 a method_3248 + m (Lnet/minecraft/client/renderer/RenderType;DDDLorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V renderSectionLayer a method_3251 + p 1 renderType + p 2 x + p 4 y + p 6 z + p 8 frustrumMatrix + p 9 projectionMatrix + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V addRecentlyCompiledSection a method_38550 + p 1 renderSection + m (Lnet/minecraft/client/renderer/culling/Frustum;)Lnet/minecraft/client/renderer/culling/Frustum; offsetFrustum a method_52816 + p 0 frustum + m (Ljava/util/Collection;Ljava/util/Collection;)V updateGlobalBlockEntities a method_3245 + p 1 blockEntitiesToRemove + p 2 blockEntitiesToAdd + m (Lnet/minecraft/core/BlockPos;)V stopJukeboxSongAndNotifyNearby a method_60889 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)V setBlockDirty a method_21596 + p 1 pos + p 2 oldState + p 3 newState + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Holder$Reference;)V method_60890 a method_60890 + m (Lnet/minecraft/core/BlockPos;Z)V setBlockDirty a method_16037 + p 1 pos + p 2 reRenderOnMainThread + m (Lnet/minecraft/core/Holder;Lnet/minecraft/core/BlockPos;)V playJukeboxSong a method_60891 + p 1 song + p 2 pos + m (Lnet/minecraft/core/particles/ParticleOptions;)Ljava/lang/String; method_56847 a method_56847 + m (Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V addParticle a method_3276 + p 1 options + p 2 x + p 4 y + p 6 z + p 8 xSpeed + p 10 ySpeed + p 12 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)V addParticle a method_8568 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZZDDDDDD)V addParticle a method_8563 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, attempts to spawn the particle at a decreased level + p 4 x + p 6 y + p 8 z + p 10 xSpeed + p 12 ySpeed + p 14 zSpeed + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;DDDLnet/minecraft/client/renderer/culling/Frustum;)V captureFrustum a method_3275 + p 1 viewMatrix + p 2 projectionMatrix + p 3 camX + p 5 camY + p 7 camZ + p 9 capturedFrustrum + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;FLnet/minecraft/client/Camera;ZLjava/lang/Runnable;)V renderSky a method_3257 + p 1 frustumMatrix + p 2 projectionMatrix + p 3 partialTick + p 4 camera + p 5 isFoggy + p 6 skyFogSetup + m (Z)Lnet/minecraft/client/ParticleStatus; calculateParticleLevel a method_3268 + c Calculates the level of particles to use based on the {@linkplain net.minecraft.client.Options#particles particles option} and the specified {@code decreased} parameter. This leads to randomly generating more or less particles than the set option. + p 1 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, has a 1 in 10 chance to return a decreased level and a further 1 in 3 chance to minimise it + m ()V doEntityOutline b method_3254 + m (III)V setSectionDirty b method_8571 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + m (ILnet/minecraft/core/BlockPos;I)V levelEvent b method_8567 + p 1 type + p 2 pos + p 3 data + m (Lcom/mojang/blaze3d/vertex/PoseStack;)V renderEndSky b method_3250 + p 1 poseStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDDDDFFFF)V addChainedFilledBoxVertices b method_3258 + p 0 poseStack + p 1 consumer + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lnet/minecraft/client/Camera;)Z doesMobEffectBlockSky b method_43788 + p 1 camera + m (Lnet/minecraft/client/renderer/culling/Frustum;)V applyFrustum b method_38551 + p 1 frustum + m (Lnet/minecraft/core/BlockPos;)Z isSectionCompiled b method_40050 + p 1 pos + m (Lnet/minecraft/core/particles/ParticleOptions;ZDDDDDD)Lnet/minecraft/client/particle/Particle; addParticleInternal b method_3282 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 x + p 5 y + p 7 z + p 9 xSpeed + p 11 ySpeed + p 13 zSpeed + m (Lnet/minecraft/core/particles/ParticleOptions;ZZDDDDDD)Lnet/minecraft/client/particle/Particle; addParticleInternal b method_3288 + p 1 options + p 2 force + c if {@code true}, the particle will be created regardless of its distance from the camera and the {@linkplain #calculateParticleLevel(boolean) calculated particle level} + p 3 decreased + c if {@code true}, and the {@linkplain net.minecraft.client.Options#particles particles option} is set to minimal, attempts to spawn the particle at a decreased level + p 4 x + p 6 y + p 8 z + p 10 xSpeed + p 12 ySpeed + p 14 zSpeed + m (ILnet/minecraft/core/BlockPos;I)V destroyBlockProgress c method_8569 + p 1 breakerId + p 2 pos + p 3 progress + m (Lnet/minecraft/client/Camera;)V compileSections c method_3269 + p 1 camera + m (Lnet/minecraft/core/BlockPos;)V stopJukeboxSong c method_60892 + p 1 pos + m ()Z shouldShowEntityOutlines d method_3270 + m (Lnet/minecraft/client/Camera;)V renderWorldBorder d method_3243 + p 1 camera + m ()V graphicsChanged e method_35774 + m ()V allChanged f method_3279 + c Loads all renderers and sets up the basic options usage. + m ()Ljava/lang/String; getSectionStatistics g method_3289 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; getSectionRenderDispatcher h method_34810 + m ()D getTotalSections i method_34811 + m ()D getLastViewDistance j method_34812 + m ()I countRenderedSections k method_3246 + m ()Ljava/lang/String; getEntityStatistics l method_3272 + c @return entity rendering statistics to display on the {@linkplain net.minecraft.client.gui.components.DebugScreenOverlay debug overlay} + m ()V captureFrustum m method_35775 + m ()V killFrustum n method_35776 + m ()V tick o method_3252 + m ()V clear p method_3267 + m ()Z hasRenderedAllSections q method_3281 + m ()V needsUpdate r method_3292 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; entityTarget s method_22990 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getTranslucentTarget t method_29360 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getItemEntityTarget u method_29361 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getParticlesTarget v method_29362 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getWeatherTarget w method_29363 + m ()Lcom/mojang/blaze3d/pipeline/RenderTarget; getCloudsTarget x method_29364 + m ()V initTransparency y method_29365 + m ()V deinitTransparency z method_29701 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/renderer/RenderBuffers;)V + p 1 minecraft + p 2 entityRenderDispatcher + p 3 blockEntityRenderDispatcher + p 4 renderBuffers + m ()V +c net/minecraft/client/renderer/LevelRenderer$1 gex$1 net/minecraft/class_761$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_52254 + m ()V +c net/minecraft/client/renderer/LevelRenderer$TransparencyShaderException gex$a net/minecraft/class_761$class_5347 + m (Ljava/lang/String;Ljava/lang/Throwable;)V + p 1 message + p 2 cause +c net/minecraft/client/renderer/LightTexture gey net/minecraft/class_765 + f I FULL_BRIGHT a field_32767 + f I FULL_SKY b field_32768 + f I FULL_BLOCK c field_32769 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; lightTexture d field_4138 + f Lcom/mojang/blaze3d/platform/NativeImage; lightPixels e field_4133 + f Lnet/minecraft/resources/ResourceLocation; lightTextureLocation f field_4136 + f Z updateLightTexture g field_4135 + f F blockLightRedFlicker h field_21528 + f Lnet/minecraft/client/renderer/GameRenderer; renderer i field_4134 + f Lnet/minecraft/client/Minecraft; minecraft j field_4137 + m ()V tick a method_3314 + m (F)V updateLightTexture a method_3313 + p 1 partialTicks + m (I)I block a method_24186 + p 0 packedLight + m (II)I pack a method_23687 + p 0 blockLight + p 1 skyLight + m (Lnet/minecraft/world/entity/LivingEntity;FF)F calculateDarknessScale a method_42596 + p 1 entity + p 2 gamma + p 3 partialTick + m (Lnet/minecraft/world/level/dimension/DimensionType;I)F getBrightness a method_23284 + p 0 dimensionType + p 1 lightLevel + m (Lorg/joml/Vector3f;)V clampColor a method_46557 + p 0 color + m ()V turnOffLightLayer b method_3315 + m (F)F getDarknessGamma b method_42597 + p 1 partialTick + m (I)I sky b method_24187 + p 0 packedLight + m ()V turnOnLightLayer c method_3316 + m (F)F notGamma c method_23795 + p 1 value + m (Lnet/minecraft/client/renderer/GameRenderer;Lnet/minecraft/client/Minecraft;)V + p 1 renderer + p 2 minecraft +c net/minecraft/client/renderer/MultiBufferSource gez net/minecraft/class_4597 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;)Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; immediate a method_22991 + p 0 sharedBuffer + m (Ljava/util/SequencedMap;Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;)Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; immediateWithBuffers a method_22992 + p 0 fixedBuffers + p 1 sharedBuffer +c net/minecraft/client/renderer/MultiBufferSource$BufferSource gez$a net/minecraft/class_4597$class_4598 + f Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; sharedBuffer a field_52156 + f Ljava/util/SequencedMap; fixedBuffers b field_20953 + f Ljava/util/Map; startedBuilders c field_52157 + f Lnet/minecraft/client/renderer/RenderType; lastSharedType d field_52158 + m ()V endLastBatch a method_37104 + m (Lnet/minecraft/client/renderer/RenderType;)V endBatch a method_22994 + p 1 renderType + m (Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/BufferBuilder;)V endBatch a method_60893 + p 1 renderType + p 2 builder + m ()V endBatch b method_22993 + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder;Ljava/util/SequencedMap;)V + p 1 sharedBuffer + p 2 fixedBuffers +c net/minecraft/client/renderer/OutlineBufferSource gfa net/minecraft/class_4618 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource a field_21058 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; outlineBufferSource b field_21059 + f I teamR c field_21060 + f I teamG d field_21061 + f I teamB e field_21062 + f I teamA f field_21063 + m ()V endOutlineBatch a method_23285 + m (IIII)V setColor a method_23286 + p 1 red + p 2 green + p 3 blue + p 4 alpha + m (Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;)V + p 1 bufferSource +c net/minecraft/client/renderer/OutlineBufferSource$EntityOutlineGenerator gfa$a net/minecraft/class_4618$class_4586 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a comp_2851 + f I color b comp_2852 + m ()Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a comp_2851 + m ()I color b comp_2852 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;IIII)V + p 1 delegate + p 2 defaultR + p 3 defaultG + p 4 defaultB + p 5 defaultA + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;I)V +c net/minecraft/client/renderer/PanoramaRenderer gfb net/minecraft/class_766 + f Lnet/minecraft/resources/ResourceLocation; PANORAMA_OVERLAY a field_49905 + f Lnet/minecraft/client/Minecraft; minecraft b field_4139 + f Lnet/minecraft/client/renderer/CubeMap; cubeMap c field_4141 + f F spin d field_40510 + f F bob e field_40511 + m (FF)F wrap a method_45780 + p 0 value + p 1 max + m (Lnet/minecraft/client/gui/GuiGraphics;IIFF)V render a method_3317 + p 1 guiGraphics + p 2 width + p 3 height + p 4 fade + p 5 partialTick + m (Lnet/minecraft/client/renderer/CubeMap;)V + p 1 cubeMap + m ()V +c net/minecraft/client/renderer/PostChain gfc net/minecraft/class_279 + f Ljava/lang/String; MAIN_RENDER_TARGET a field_32770 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; screenTarget b field_1499 + f Lnet/minecraft/server/packs/resources/ResourceProvider; resourceProvider c field_49569 + f Ljava/lang/String; name d field_1494 + f Ljava/util/List; passes e field_1497 + f Ljava/util/Map; customRenderTargets f field_1495 + f Ljava/util/List; fullSizedTargets g field_1496 + f Lorg/joml/Matrix4f; shaderOrthoMatrix h field_1498 + f I screenWidth i field_1493 + f I screenHeight j field_1492 + f F time k field_1501 + f F lastStamp l field_1500 + m ()Ljava/lang/String; getName a method_1260 + m (F)V process a method_1258 + p 1 partialTicks + m (I)V setFilterMode a method_58233 + p 1 filterMode + m (II)V resize a method_1259 + p 1 width + p 2 height + m (Lcom/google/gson/JsonElement;)V parseTargetNode a method_1265 + p 1 json + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;)V load a method_1256 + p 1 textureManager + p 2 resourceLocation + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lcom/google/gson/JsonElement;)V parsePassNode a method_1257 + p 1 textureManager + p 2 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderTarget; getTempTarget a method_1264 + p 1 attributeName + m (Ljava/lang/String;F)V setUniform a method_57799 + p 1 name + p 2 backgroundBlurriness + m (Ljava/lang/String;II)V addTempTarget a method_1261 + p 1 name + p 2 width + p 3 height + m (Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lcom/mojang/blaze3d/pipeline/RenderTarget;Z)Lnet/minecraft/client/renderer/PostPass; addPass a method_1262 + p 1 name + p 2 inTarget + p 3 outTarget + p 4 useLinearFilter + m ()V updateOrthoMatrix b method_1267 + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_1263 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/pipeline/RenderTarget; getRenderTarget b method_1266 + p 1 target + m (Ljava/lang/String;)Lnet/minecraft/server/ChainedJsonException; method_43210 c method_43210 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 resourceProvider + p 3 screenTarget + p 4 resourceLocation +c net/minecraft/client/renderer/PostPass gfd net/minecraft/class_283 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; inTarget a field_1536 + f Lcom/mojang/blaze3d/pipeline/RenderTarget; outTarget b field_1538 + f Lnet/minecraft/client/renderer/EffectInstance; effect c field_1540 + f Ljava/util/List; auxAssets d field_1534 + f Ljava/util/List; auxNames e field_1539 + f Ljava/util/List; auxWidths f field_1533 + f Ljava/util/List; auxHeights g field_1537 + f Lorg/joml/Matrix4f; shaderOrthoMatrix h field_1535 + f I filterMode i field_49906 + m ()Ljava/lang/String; getName a method_35777 + m (F)V process a method_1293 + p 1 partialTicks + m (Ljava/lang/String;Ljava/util/function/IntSupplier;II)V addAuxAsset a method_1292 + p 1 auxName + p 2 auxFramebuffer + p 3 width + p 4 height + m (Lorg/joml/Matrix4f;)V setOrthoMatrix a method_1291 + p 1 shaderOrthoMatrix + m ()Lnet/minecraft/client/renderer/EffectInstance; getEffect b method_1295 + m ()I getFilterMode c method_58234 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/pipeline/RenderTarget;Lcom/mojang/blaze3d/pipeline/RenderTarget;Z)V + p 1 resourceProvider + p 2 name + p 3 inTarget + p 4 outTarget + p 5 useLinearFilter +c net/minecraft/client/renderer/Rect2i gfe net/minecraft/class_768 + f I xPos a field_4145 + f I yPos b field_4144 + f I width c field_4143 + f I height d field_4142 + m ()I getX a method_3321 + m (I)V setX a method_35778 + p 1 xPos + m (II)V setPosition a method_35779 + p 1 xPos + p 2 yPos + m (Lnet/minecraft/client/renderer/Rect2i;)Lnet/minecraft/client/renderer/Rect2i; intersect a method_35780 + p 1 other + m ()I getY b method_3322 + m (I)V setY b method_35781 + p 1 yPos + m (II)Z contains b method_3318 + p 1 x + p 2 y + m ()I getWidth c method_3319 + m (I)V setWidth c method_35782 + p 1 width + m ()I getHeight d method_3320 + m (I)V setHeight d method_35783 + p 1 height + m (IIII)V + p 1 xPos + p 2 yPos + p 3 width + p 4 height +c net/minecraft/client/renderer/RenderBuffers gff net/minecraft/class_4599 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBufferPack a field_20956 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPool; sectionBufferPool b field_46900 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource c field_46901 + f Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; crumblingBufferSource d field_20959 + f Lnet/minecraft/client/renderer/OutlineBufferSource; outlineBufferSource e field_20961 + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBufferPack a method_22997 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;)V method_54639 a method_54639 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/client/renderer/RenderType;)V put a method_23798 + p 0 mapBuilders + p 1 renderType + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPool; sectionBufferPool b method_54640 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectLinkedOpenHashMap;Lnet/minecraft/client/renderer/RenderType;)V method_54641 b method_54641 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; bufferSource c method_23000 + m ()Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource; crumblingBufferSource d method_23001 + m ()Lnet/minecraft/client/renderer/OutlineBufferSource; outlineBufferSource e method_23003 + m (I)V + p 1 bufferCount +c net/minecraft/client/renderer/RenderStateShard gfg net/minecraft/class_4668 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_SHADER A field_29407 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_EMISSIVE_SHADER B field_38344 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SMOOTH_CUTOUT_SHADER C field_29408 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_BEACON_BEAM_SHADER D field_29409 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_DECAL_SHADER E field_29410 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_NO_OUTLINE_SHADER F field_29411 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SHADOW_SHADER G field_29412 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_ALPHA_SHADER H field_29413 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_EYES_SHADER I field_29414 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENERGY_SWIRL_SHADER J field_29415 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LEASH_SHADER K field_29416 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_WATER_MASK_SHADER L field_29417 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_OUTLINE_SHADER M field_29418 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ARMOR_ENTITY_GLINT_SHADER N field_29420 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GLINT_TRANSLUCENT_SHADER O field_29421 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GLINT_SHADER P field_29422 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_GLINT_SHADER Q field_29424 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_GLINT_DIRECT_SHADER R field_29425 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CRUMBLING_SHADER S field_29426 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_SHADER T field_29427 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_BACKGROUND_SHADER U field_42517 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_INTENSITY_SHADER V field_33628 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_SEE_THROUGH_SHADER W field_29428 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_BACKGROUND_SEE_THROUGH_SHADER X field_42518 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TEXT_INTENSITY_SEE_THROUGH_SHADER Y field_33629 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LIGHTNING_SHADER Z field_29429 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; COLOR_DEPTH_WRITE aA field_21349 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; COLOR_WRITE aB field_21350 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; DEPTH_WRITE aC field_21351 + f D MAX_ENCHANTMENT_GLINT_SPEED_MILLIS a field_42230 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; NO_LAYERING aD field_21352 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; POLYGON_OFFSET_LAYERING aE field_21353 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; VIEW_OFFSET_Z_LAYERING aF field_22241 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; MAIN_TARGET aG field_21358 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; OUTLINE_TARGET aH field_21359 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; TRANSLUCENT_TARGET aI field_25280 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; PARTICLES_TARGET aJ field_25281 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; WEATHER_TARGET aK field_25282 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; CLOUDS_TARGET aL field_25283 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; ITEM_ENTITY_TARGET aM field_25643 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; DEFAULT_LINE aN field_21360 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; NO_COLOR_LOGIC aO field_44815 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; OR_REVERSE_COLOR_LOGIC aP field_44816 + f F VIEW_SCALE_Z_EPSILON aQ field_32771 + f Ljava/lang/Runnable; setupState aR field_21361 + f Ljava/lang/Runnable; clearState aS field_21362 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRIPWIRE_SHADER aa field_29430 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_END_PORTAL_SHADER ab field_29431 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_END_GATEWAY_SHADER ac field_29432 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CLOUDS_SHADER ad field_48949 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_LINES_SHADER ae field_29433 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_SHADER af field_44817 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_OVERLAY_SHADER ag field_44818 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_TEXT_HIGHLIGHT_SHADER ah field_44819 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_GUI_GHOST_RECIPE_OVERLAY_SHADER ai field_44820 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_BREEZE_WIND_SHADER aj field_47463 + f Lnet/minecraft/client/renderer/RenderStateShard$TextureStateShard; BLOCK_SHEET_MIPPED ak field_21376 + f Lnet/minecraft/client/renderer/RenderStateShard$TextureStateShard; BLOCK_SHEET al field_21377 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; NO_TEXTURE am field_21378 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; DEFAULT_TEXTURING an field_21379 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; GLINT_TEXTURING ao field_21381 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; ENTITY_GLINT_TEXTURING ap field_21382 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; LIGHTMAP aq field_21383 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; NO_LIGHTMAP ar field_21384 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; OVERLAY as field_21385 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; NO_OVERLAY at field_21386 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; CULL au field_21344 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; NO_CULL av field_21345 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; NO_DEPTH_TEST aw field_21346 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; EQUAL_DEPTH_TEST ax field_21347 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; LEQUAL_DEPTH_TEST ay field_21348 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; GREATER_DEPTH_TEST az field_44814 + f Ljava/lang/String; name b field_21363 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; NO_TRANSPARENCY c field_21364 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; ADDITIVE_TRANSPARENCY d field_21366 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; LIGHTNING_TRANSPARENCY e field_21367 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; GLINT_TRANSPARENCY f field_21368 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; CRUMBLING_TRANSPARENCY g field_21369 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; TRANSLUCENT_TRANSPARENCY h field_21370 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; NO_SHADER i field_29434 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_LIGHTMAP_SHADER j field_29437 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_SHADER k field_29438 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_TEX_SHADER l field_29440 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_TEX_LIGHTMAP_SHADER m field_29441 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; POSITION_COLOR_SHADER n field_29442 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_SOLID_SHADER o field_29443 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CUTOUT_MIPPED_SHADER p field_29444 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_CUTOUT_SHADER q field_29445 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRANSLUCENT_SHADER r field_29446 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_TRANSLUCENT_MOVING_BLOCK_SHADER s field_29447 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ARMOR_CUTOUT_NO_CULL_SHADER t field_29449 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_SOLID_SHADER u field_29450 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_SHADER v field_29451 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_NO_CULL_SHADER w field_29452 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_CUTOUT_NO_CULL_Z_OFFSET_SHADER x field_29404 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ITEM_ENTITY_TRANSLUCENT_CULL_SHADER y field_29405 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; RENDERTYPE_ENTITY_TRANSLUCENT_CULL_SHADER z field_29406 + m ()V method_23537 A method_23537 + m ()V method_23538 B method_23538 + m ()V method_23539 C method_23539 + m ()V method_23540 D method_23540 + m ()V method_23541 E method_23541 + m ()V method_23542 F method_23542 + m ()V method_23502 G method_23502 + m ()V method_29368 H method_29368 + m ()V method_23504 I method_23504 + m ()V method_23505 J method_23505 + m ()V method_29994 K method_29994 + m ()V method_30675 L method_30675 + m ()V method_29995 M method_29995 + m ()V method_29370 N method_29370 + m ()V method_23510 O method_23510 + m ()V method_23511 P method_23511 + m ()V method_23514 Q method_23514 + m ()V method_23515 R method_23515 + m ()V setupRenderState a method_23516 + m (F)V setupGlintTexturing a method_23517 + p 0 scale + m ()V clearRenderState b method_23518 + m ()V method_51780 c method_51780 + m ()V method_51781 d method_51781 + m ()V method_51782 e method_51782 + m ()V method_51783 f method_51783 + m ()V method_29376 g method_29376 + m ()V method_29377 h method_29377 + m ()V method_29378 i method_29378 + m ()V method_23519 j method_23519 + m ()V method_23520 k method_23520 + m ()V method_34552 l method_34552 + m ()V method_23522 m method_23522 + m ()V method_34553 n method_34553 + m ()V method_34554 o method_34554 + m ()V method_34555 p method_34555 + m ()V method_23524 q method_23524 + m ()V method_34556 r method_34556 + m ()V method_23801 s method_23801 + m ()V method_24467 t method_24467 + m ()V method_23531 u method_23531 + m ()V method_23532 v method_23532 + m ()V method_23533 w method_23533 + m ()V method_23534 x method_23534 + m ()V method_23535 y method_23535 + m ()V method_23536 z method_23536 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 name + p 2 setupState + p 3 clearState + m ()V +c net/minecraft/client/renderer/RenderStateShard$BooleanStateShard gfg$a net/minecraft/class_4668$class_4670 + f Z enabled aQ field_21390 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;Z)V + p 1 name + p 2 setupState + p 3 clearState + p 4 enabled +c net/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard gfg$b net/minecraft/class_4668$class_8559 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$CullStateShard gfg$c net/minecraft/class_4668$class_4671 + m (Z)V method_23545 a method_23545 + m (Z)V method_23546 b method_23546 + m (Z)V + p 1 useCull +c net/minecraft/client/renderer/RenderStateShard$DepthTestStateShard gfg$d net/minecraft/class_4668$class_4672 + f Ljava/lang/String; functionName aQ field_22242 + m (I)V method_23547 a method_23547 + m (I)V method_23548 b method_23548 + m (Ljava/lang/String;I)V + p 1 functionName + p 2 depthFunc +c net/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard gfg$e net/minecraft/class_4668$class_5939 + m ()Ljava/util/Optional; cutoutTexture c method_23564 + m ()V method_34557 d method_34557 + m ()V method_34558 e method_34558 + m (Ljava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 setupState + p 2 clearState + m ()V +c net/minecraft/client/renderer/RenderStateShard$LayeringStateShard gfg$f net/minecraft/class_4668$class_4675 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$LightmapStateShard gfg$g net/minecraft/class_4668$class_4676 + m (Z)V method_23551 a method_23551 + m (Z)V method_23552 b method_23552 + m (Z)V + p 1 useLightmap +c net/minecraft/client/renderer/RenderStateShard$LineStateShard gfg$h net/minecraft/class_4668$class_4677 + f Ljava/util/OptionalDouble; width aQ field_21392 + m (Ljava/util/OptionalDouble;)V method_23553 a method_23553 + m (Ljava/util/OptionalDouble;)V method_23554 b method_23554 + m (Ljava/util/OptionalDouble;)V + p 1 width +c net/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard gfg$i net/minecraft/class_4668$class_5940 + f Ljava/util/Optional; cutoutTexture aQ field_29453 + m (Lcom/google/common/collect/ImmutableList;)V method_34559 a method_34559 + m ()Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder; builder d method_34560 + m ()V method_34561 e method_34561 + m (Lcom/google/common/collect/ImmutableList;)V + p 1 textures +c net/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder gfg$i$a net/minecraft/class_4668$class_5940$class_5941 + f Lcom/google/common/collect/ImmutableList$Builder; builder a field_29454 + m ()Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard; build a method_34562 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)Lnet/minecraft/client/renderer/RenderStateShard$MultiTextureStateShard$Builder; add a method_34563 + p 1 texture + p 2 blur + p 3 mipmap + m ()V +c net/minecraft/client/renderer/RenderStateShard$OffsetTexturingStateShard gfg$j net/minecraft/class_4668$class_4682 + m (FF)V method_23561 a method_23561 + m ()V method_23562 c method_23562 + m (FF)V + p 1 u + p 2 v +c net/minecraft/client/renderer/RenderStateShard$OutputStateShard gfg$k net/minecraft/class_4668$class_4678 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$OverlayStateShard gfg$l net/minecraft/class_4668$class_4679 + m (Z)V method_23555 a method_23555 + m (Z)V method_23556 b method_23556 + m (Z)V + p 1 useOverlay +c net/minecraft/client/renderer/RenderStateShard$ShaderStateShard gfg$m net/minecraft/class_4668$class_5942 + f Ljava/util/Optional; shader aQ field_29455 + m (Ljava/util/function/Supplier;)V method_34564 a method_34564 + m ()V method_34565 c method_34565 + m ()V method_34566 d method_34566 + m ()Lnet/minecraft/client/renderer/ShaderInstance; method_34567 e method_34567 + m ()V method_34568 f method_34568 + m (Ljava/util/function/Supplier;)V + p 1 shader + m ()V +c net/minecraft/client/renderer/RenderStateShard$TextureStateShard gfg$n net/minecraft/class_4668$class_4683 + f Ljava/util/Optional; texture aQ field_21397 + f Z blur aR field_21398 + f Z mipmap aS field_21399 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V method_23563 a method_23563 + m ()V method_23567 d method_23567 + m (Lnet/minecraft/resources/ResourceLocation;ZZ)V + p 1 texture + p 2 blur + p 3 mipmap +c net/minecraft/client/renderer/RenderStateShard$TexturingStateShard gfg$o net/minecraft/class_4668$class_4684 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$TransparencyStateShard gfg$p net/minecraft/class_4668$class_4685 + m (Ljava/lang/String;Ljava/lang/Runnable;Ljava/lang/Runnable;)V +c net/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard gfg$q net/minecraft/class_4668$class_4686 + f Z writeColor aQ field_21400 + f Z writeDepth aR field_21401 + m (ZZ)V method_23568 a method_23568 + m (ZZ)V method_23569 b method_23569 + m (ZZ)V + p 1 writeColor + p 2 writeDepth +c net/minecraft/client/renderer/RenderType gfh net/minecraft/class_1921 + f I BIG_BUFFER_SIZE aQ field_32772 + f I SMALL_BUFFER_SIZE aR field_32774 + f I TRANSIENT_BUFFER_SIZE aS field_32775 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; LINES aT field_21695 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; LINE_STRIP aU field_29456 + f I MEGABYTE aV field_32777 + f Lnet/minecraft/client/renderer/RenderType; SOLID aW field_9178 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT_MIPPED aX field_9175 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT aY field_9174 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT aZ field_9179 + f Lnet/minecraft/client/renderer/RenderType; TEXT_BACKGROUND bA field_42519 + f Ljava/util/function/Function; TEXT_INTENSITY bB field_33630 + f Ljava/util/function/Function; TEXT_POLYGON_OFFSET bC field_34002 + f Ljava/util/function/Function; TEXT_INTENSITY_POLYGON_OFFSET bD field_34003 + f Ljava/util/function/Function; TEXT_SEE_THROUGH bE field_29639 + f Lnet/minecraft/client/renderer/RenderType; TEXT_BACKGROUND_SEE_THROUGH bF field_42520 + f Ljava/util/function/Function; TEXT_INTENSITY_SEE_THROUGH bG field_33631 + f Lnet/minecraft/client/renderer/RenderType; LIGHTNING bH field_20970 + f Lnet/minecraft/client/renderer/RenderType; DRAGON_RAYS bI field_52255 + f Lnet/minecraft/client/renderer/RenderType; DRAGON_RAYS_DEPTH bJ field_52307 + f Lnet/minecraft/client/renderer/RenderType; TRIPWIRE bK field_25644 + f Lnet/minecraft/client/renderer/RenderType; END_PORTAL bL field_29457 + f Lnet/minecraft/client/renderer/RenderType; END_GATEWAY bM field_29458 + f Lnet/minecraft/client/renderer/RenderType; CLOUDS bN field_48950 + f Lnet/minecraft/client/renderer/RenderType; CLOUDS_DEPTH_ONLY bO field_48951 + f Ljava/util/function/Function; DEBUG_LINE_STRIP bP field_42521 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_FILLED_BOX bQ field_42522 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_QUADS bR field_42523 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_STRUCTURE_QUADS bS field_52256 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; DEBUG_SECTION_QUADS bT field_44673 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI bU field_44821 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_OVERLAY bV field_44822 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_TEXT_HIGHLIGHT bW field_44823 + f Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; GUI_GHOST_RECIPE_OVERLAY bX field_44824 + f Lcom/google/common/collect/ImmutableList; CHUNK_BUFFER_LAYERS bY field_39002 + f Lcom/mojang/blaze3d/vertex/VertexFormat; format bZ field_20972 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_MOVING_BLOCK ba field_25285 + f Ljava/util/function/Function; ARMOR_CUTOUT_NO_CULL bb field_29622 + f Ljava/util/function/Function; ENTITY_SOLID bc field_29623 + f Ljava/util/function/Function; ENTITY_CUTOUT bd field_29624 + f Ljava/util/function/BiFunction; ENTITY_CUTOUT_NO_CULL be field_29625 + f Ljava/util/function/BiFunction; ENTITY_CUTOUT_NO_CULL_Z_OFFSET bf field_29626 + f Ljava/util/function/Function; ITEM_ENTITY_TRANSLUCENT_CULL bg field_29627 + f Ljava/util/function/Function; ENTITY_TRANSLUCENT_CULL bh field_29628 + f Ljava/util/function/BiFunction; ENTITY_TRANSLUCENT bi field_29629 + f Ljava/util/function/BiFunction; ENTITY_TRANSLUCENT_EMISSIVE bj field_38345 + f Ljava/util/function/Function; ENTITY_SMOOTH_CUTOUT bk field_29630 + f Ljava/util/function/BiFunction; BEACON_BEAM bl field_29631 + f Ljava/util/function/Function; ENTITY_DECAL bm field_29632 + f Ljava/util/function/Function; ENTITY_NO_OUTLINE bn field_29633 + f Ljava/util/function/Function; ENTITY_SHADOW bo field_29634 + f Ljava/util/function/Function; DRAGON_EXPLOSION_ALPHA bp field_29635 + f Ljava/util/function/BiFunction; EYES bq field_29636 + f Lnet/minecraft/client/renderer/RenderType; LEASH br field_20964 + f Lnet/minecraft/client/renderer/RenderType; WATER_MASK bs field_20965 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_ENTITY_GLINT bt field_24473 + f Lnet/minecraft/client/renderer/RenderType; GLINT_TRANSLUCENT bu field_26373 + f Lnet/minecraft/client/renderer/RenderType; GLINT bv field_20967 + f Lnet/minecraft/client/renderer/RenderType; ENTITY_GLINT bw field_20968 + f Lnet/minecraft/client/renderer/RenderType; ENTITY_GLINT_DIRECT bx field_25488 + f Ljava/util/function/Function; CRUMBLING by field_29637 + f Ljava/util/function/Function; TEXT bz field_29638 + f Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode ca field_20973 + f I bufferSize cb field_20806 + f Z affectsCrumbling cc field_20975 + f Z sortOnUpload cd field_21402 + m ()Lnet/minecraft/client/renderer/RenderType; debugFilledBox A method_49047 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_37348 A method_37348 + m ()Lnet/minecraft/client/renderer/RenderType; debugQuads B method_49042 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_36436 B method_36436 + m ()Lnet/minecraft/client/renderer/RenderType; debugStructureQuads C method_61045 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_36437 C method_36437 + m ()Lnet/minecraft/client/renderer/RenderType; debugSectionQuads D method_51456 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34833 D method_34833 + m ()Lnet/minecraft/client/renderer/RenderType; gui E method_51784 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34834 E method_34834 + m ()Lnet/minecraft/client/renderer/RenderType; guiOverlay F method_51785 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34835 F method_34835 + m ()Lnet/minecraft/client/renderer/RenderType; guiTextHighlight G method_51786 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34837 G method_34837 + m ()Lnet/minecraft/client/renderer/RenderType; guiGhostRecipeOverlay H method_51787 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34838 H method_34838 + m ()Ljava/util/List; chunkBufferLayers I method_22720 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34839 I method_34839 + m ()I bufferSize J method_22722 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34840 J method_34840 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; format K method_23031 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34822 K method_34822 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$Mode; mode L method_23033 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34823 L method_34823 + m ()Ljava/util/Optional; outline M method_23289 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34824 M method_34824 + m ()Z isOutline N method_24295 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34825 N method_34825 + m ()Z affectsCrumbling O method_23037 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34826 O method_34826 + m ()Z canConsolidateConsecutiveGeometry P method_43332 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34827 P method_34827 + m ()Z sortOnUpload Q method_60894 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; translucentMovingBlockState R method_29381 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; tripwireState S method_29996 + m (D)Lnet/minecraft/client/renderer/RenderType; debugLineStrip a method_49043 + p 0 width + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; armorCutoutNoCull a method_25448 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;FF)Lnet/minecraft/client/renderer/RenderType; breezeWind a method_55251 + p 0 location + p 1 u + p 2 v + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;)Lnet/minecraft/client/renderer/RenderType; method_34836 a method_34836 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34829 a method_34829 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCull a method_24293 + p 0 location + p 1 outline + m (Lcom/mojang/blaze3d/vertex/MeshData;)V draw a method_60895 + p 1 meshData + m (Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState; translucentState a method_34569 + p 0 state + m (Ljava/lang/Double;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; method_49044 a method_49044 + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; createArmorCutoutNoCull a method_53490 + p 0 name + p 1 id + p 2 equalDepthTest + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;ILnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; create a method_24048 + p 0 name + p 1 format + p 2 mode + p 3 bufferSize + p 4 state + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; create a method_24049 + p 0 name + p 1 format + p 2 mode + p 3 bufferSize + p 4 affectsCrumbling + p 5 sortOnUpload + p 6 state + m (Z)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; createClouds a method_56848 + p 0 color + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; createArmorDecalCutoutNoCull b method_53491 + p 0 id + m (Lnet/minecraft/resources/ResourceLocation;FF)Lnet/minecraft/client/renderer/RenderType; energySwirl b method_23018 + p 0 location + p 1 u + p 2 v + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_42598 b method_42598 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCullZOffset b method_28115 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; solid c method_23577 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entitySolid c method_23572 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34830 c method_34830 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityTranslucent c method_24294 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; cutoutMipped d method_23579 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutout d method_23576 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34831 d method_34831 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; entityTranslucentEmissive d method_42599 + p 0 location + p 1 outline + m ()Lnet/minecraft/client/renderer/RenderType; cutout e method_23581 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCull e method_23578 + p 0 location + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/Boolean;)Lnet/minecraft/client/renderer/RenderType; method_34832 e method_34832 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/renderer/RenderType; beaconBeam e method_23592 + p 0 location + p 1 colorFlag + m ()Lnet/minecraft/client/renderer/RenderType; translucent f method_23583 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityCutoutNoCullZOffset f method_28116 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; translucentMovingBlock g method_29380 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; itemEntityTranslucentCull g method_29379 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; leash h method_23587 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucentCull h method_23689 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; waterMask i method_23589 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucent i method_23580 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; armorEntityGlint j method_27949 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityTranslucentEmissive j method_42600 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; glintTranslucent k method_30676 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entitySmoothCutout k method_23584 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; glint l method_23590 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityDecal l method_23586 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; entityGlint m method_23591 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityNoOutline m method_23588 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; entityGlintDirect n method_29707 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; entityShadow n method_24469 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; textBackground o method_49045 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; dragonExplosionAlpha o method_23573 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; textBackgroundSeeThrough p method_49046 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; eyes p method_23026 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; lightning q method_23593 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; breezeEyes q method_55252 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; dragonRays r method_61046 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; outline r method_23287 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; dragonRaysDepth s method_61157 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; crumbling s method_23570 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; tripwire t method_29997 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; text t method_23028 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; endPortal u method_23574 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensity u method_36434 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; endGateway v method_34571 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textPolygonOffset v method_37345 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; clouds w method_56849 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensityPolygonOffset w method_37346 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; cloudsDepthOnly x method_56850 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textSeeThrough x method_23030 + p 0 location + m ()Lnet/minecraft/client/renderer/RenderType; lines y method_23594 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; textIntensitySeeThrough y method_36435 + p 0 id + m ()Lnet/minecraft/client/renderer/RenderType; lineStrip z method_34572 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_37347 z method_37347 + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLjava/lang/Runnable;Ljava/lang/Runnable;)V + p 1 name + p 2 format + p 3 mode + p 4 bufferSize + p 5 affectsCrumbling + p 6 sortOnUpload + p 7 setupState + p 8 clearState + m ()V +c net/minecraft/client/renderer/RenderType$CompositeRenderType gfh$a net/minecraft/class_1921$class_4687 + f Ljava/util/function/BiFunction; OUTLINE aV field_29640 + f Lnet/minecraft/client/renderer/RenderType$CompositeState; state aW field_21403 + f Ljava/util/Optional; outline aX field_21697 + f Z isOutline aY field_21851 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState; state R method_35784 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;)Lnet/minecraft/client/renderer/RenderType; method_34844 a method_34844 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;)V method_34842 a method_34842 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/RenderType; method_34843 a method_34843 + m (Lnet/minecraft/client/renderer/RenderType$CompositeState;)V method_23595 b method_23595 + m (Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)V + p 1 name + p 2 format + p 3 mode + p 4 bufferSize + p 5 affectsCrumbling + p 6 sortOnUpload + p 7 state + m ()V +c net/minecraft/client/renderer/RenderType$CompositeState gfh$b net/minecraft/class_1921$class_4688 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; textureState a field_21406 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; shaderState b field_29461 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; transparencyState c field_21407 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; depthTestState d field_21411 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; cullState e field_21412 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; lightmapState f field_21413 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; overlayState g field_21414 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; layeringState h field_21416 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; outputState i field_21417 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; texturingState j field_21418 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; writeMaskState k field_21419 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; lineState l field_21420 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; colorLogicState m field_44825 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; outlineProperty n field_21852 + f Lcom/google/common/collect/ImmutableList; states o field_21422 + m ()Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; builder a method_23598 + m (Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard;Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard;Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard;Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard;Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard;Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard;Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard;Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard;Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard;Lnet/minecraft/client/renderer/RenderType$OutlineProperty;)V + p 1 textureState + p 2 shaderState + p 3 transparencyState + p 4 depthState + p 5 cullState + p 6 lightmapState + p 7 overlayState + p 8 layeringState + p 9 outputState + p 10 texturingState + p 11 writeMaskState + p 12 lineState + p 13 colorLogicState + p 14 outlineProperty +c net/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder gfh$b$a net/minecraft/class_1921$class_4688$class_4689 + f Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard; textureState a field_29462 + f Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard; shaderState b field_29463 + f Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard; transparencyState c field_21424 + f Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard; depthTestState d field_21428 + f Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard; cullState e field_21429 + f Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard; lightmapState f field_21430 + f Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard; overlayState g field_21431 + f Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard; layeringState h field_21433 + f Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard; outputState i field_21434 + f Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard; texturingState j field_21435 + f Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard; writeMaskState k field_21436 + f Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard; lineState l field_21437 + f Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard; colorLogicState m field_44826 + m (Lnet/minecraft/client/renderer/RenderStateShard$ColorLogicStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setColorLogicState a method_51788 + p 1 colorLogicState + m (Lnet/minecraft/client/renderer/RenderStateShard$CullStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setCullState a method_23603 + p 1 cullState + m (Lnet/minecraft/client/renderer/RenderStateShard$DepthTestStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setDepthTestState a method_23604 + p 1 depthTestState + m (Lnet/minecraft/client/renderer/RenderStateShard$EmptyTextureStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTextureState a method_34577 + p 1 textureState + m (Lnet/minecraft/client/renderer/RenderStateShard$LayeringStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLayeringState a method_23607 + p 1 layerState + m (Lnet/minecraft/client/renderer/RenderStateShard$LightmapStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLightmapState a method_23608 + p 1 lightmapState + m (Lnet/minecraft/client/renderer/RenderStateShard$LineStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setLineState a method_23609 + p 1 lineState + m (Lnet/minecraft/client/renderer/RenderStateShard$OutputStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setOutputState a method_23610 + p 1 outputState + m (Lnet/minecraft/client/renderer/RenderStateShard$OverlayStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setOverlayState a method_23611 + p 1 overlayState + m (Lnet/minecraft/client/renderer/RenderStateShard$ShaderStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setShaderState a method_34578 + p 1 shaderState + m (Lnet/minecraft/client/renderer/RenderStateShard$TexturingStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTexturingState a method_23614 + p 1 texturingState + m (Lnet/minecraft/client/renderer/RenderStateShard$TransparencyStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setTransparencyState a method_23615 + p 1 transparencyState + m (Lnet/minecraft/client/renderer/RenderStateShard$WriteMaskStateShard;)Lnet/minecraft/client/renderer/RenderType$CompositeState$CompositeStateBuilder; setWriteMaskState a method_23616 + p 1 writeMaskState + m (Lnet/minecraft/client/renderer/RenderType$OutlineProperty;)Lnet/minecraft/client/renderer/RenderType$CompositeState; createCompositeState a method_24297 + p 1 outlineState + m (Z)Lnet/minecraft/client/renderer/RenderType$CompositeState; createCompositeState a method_23617 + p 1 outline + m ()V +c net/minecraft/client/renderer/RenderType$OutlineProperty gfh$c net/minecraft/class_1921$class_4750 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; NONE a field_21853 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; IS_OUTLINE b field_21854 + f Lnet/minecraft/client/renderer/RenderType$OutlineProperty; AFFECTS_OUTLINE c field_21855 + f Ljava/lang/String; name d field_22243 + f [Lnet/minecraft/client/renderer/RenderType$OutlineProperty; $VALUES e field_21856 + m ()[Lnet/minecraft/client/renderer/RenderType$OutlineProperty; $values a method_36916 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/renderer/RunningTrimmedMean gfi net/minecraft/class_4740 + f [J values a field_21800 + f I count b field_21801 + f I cursor c field_21802 + m (J)J registerValueAndGetMean a method_24214 + p 1 value + m (I)V + p 1 size +c net/minecraft/client/renderer/ScreenEffectRenderer gfj net/minecraft/class_4603 + f Lnet/minecraft/resources/ResourceLocation; UNDERWATER_LOCATION a field_20986 + m (Lnet/minecraft/world/entity/player/Player;)Lnet/minecraft/world/level/block/state/BlockState; getViewBlockingState a method_24225 + p 0 player + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderScreenEffect a method_23067 + p 0 minecraft + p 1 poseStack + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderTex a method_23068 + p 0 texture + p 1 poseStack + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderWater b method_23069 + p 0 minecraft + p 1 poseStack + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderFire c method_23070 + p 0 minecraft + p 1 poseStack + m ()V + m ()V +c net/minecraft/client/renderer/SectionBufferBuilderPack gfk net/minecraft/class_750 + f I TOTAL_BUFFERS_SIZE a field_46902 + f Ljava/util/List; RENDER_TYPES b field_52159 + f Ljava/util/Map; buffers c field_3951 + m ()V clearAll a method_22705 + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/ByteBufferBuilder; buffer a method_3154 + p 1 renderType + m (Lit/unimi/dsi/fastutil/objects/Reference2ObjectArrayMap;)V method_60896 a method_60896 + m ()V discardAll b method_23501 + m ()V + m ()V +c net/minecraft/client/renderer/SectionBufferBuilderPool gfl net/minecraft/class_8901 + f Lorg/slf4j/Logger; LOGGER a field_46904 + f Ljava/util/Queue; freeBuffers b field_46905 + f I freeBufferCount c field_46906 + m ()Lnet/minecraft/client/renderer/SectionBufferBuilderPack; acquire a method_54642 + m (I)Lnet/minecraft/client/renderer/SectionBufferBuilderPool; allocate a method_54643 + p 0 bufferCount + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)V release a method_54644 + p 1 buffer + m ()Z isEmpty b method_54645 + m ()I getFreeBufferCount c method_54646 + m (Ljava/util/List;)V + p 1 freeBuffers + m ()V +c net/minecraft/client/renderer/SectionOcclusionGraph gfm net/minecraft/class_8679 + f Lorg/slf4j/Logger; LOGGER a field_45617 + f [Lnet/minecraft/core/Direction; DIRECTIONS b field_45618 + f I MINIMUM_ADVANCED_CULLING_DISTANCE c field_45619 + f D CEILED_SECTION_DIAGONAL d field_45620 + f Z needsFullUpdate e field_45621 + f Ljava/util/concurrent/Future; fullUpdateTask f field_45622 + f Lnet/minecraft/client/renderer/ViewArea; viewArea g field_45623 + f Ljava/util/concurrent/atomic/AtomicReference; currentGraph h field_45624 + f Ljava/util/concurrent/atomic/AtomicReference; nextGraphEvents i field_45625 + f Ljava/util/concurrent/atomic/AtomicBoolean; needsFrustumUpdate j field_45626 + m ()V invalidate a method_52817 + m (J)Ljava/util/List; method_52818 a method_52818 + m (Lnet/minecraft/world/level/ChunkPos;)V onChunkLoaded a method_52819 + p 1 chunkPos + m (Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/Vec3;Z)V method_52820 a method_52820 + m (Lnet/minecraft/client/Camera;Ljava/util/Queue;)V initializeQueueForFullUpdate a method_52821 + p 1 camera + p 2 nodeQueue + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents;Lnet/minecraft/world/level/ChunkPos;)V addNeighbors a method_52822 + p 1 graphEvents + p 2 chunkPos + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphState;)V queueSectionsWithNewNeighbors a method_52823 + p 1 graphState + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphState;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)V method_52824 a method_52824 + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage;Lnet/minecraft/world/phys/Vec3;Ljava/util/Queue;ZLjava/util/function/Consumer;)V runUpdates a method_52825 + p 1 graphStorage + p 2 cameraPosition + p 3 nodeQueue + p 4 smartCull + p 5 sections + m (Lnet/minecraft/client/renderer/ViewArea;)V waitAndReset a method_52826 + p 1 viewArea + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V onSectionCompiled a method_52827 + p 1 section + m (Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;)V addSectionsInFrustum a method_52828 + p 1 frustum + p 2 sections + m (Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V method_52829 a method_52829 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)D method_52830 a method_52830 + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; getRelativeFrom a method_52831 + p 1 pos + p 2 section + p 3 direction + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;)Z isInViewDistance a method_52832 + p 1 pos + p 2 origin + m (ZLnet/minecraft/client/Camera;Lnet/minecraft/world/phys/Vec3;)V scheduleFullUpdate a method_52833 + p 1 smartCull + p 2 camera + p 3 cameraPosition + m (ZLnet/minecraft/client/Camera;Lnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;)V update a method_52834 + p 1 smartCull + p 2 camera + p 3 frustum + p 4 sections + m (ZLnet/minecraft/client/renderer/culling/Frustum;Ljava/util/List;Lnet/minecraft/world/phys/Vec3;)V runPartialUpdate a method_52835 + p 1 smartCull + p 2 frustum + p 3 sections + p 4 cameraPosition + m ()Z consumeFrustumUpdate b method_52836 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; getNode b method_52837 + p 1 section + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)V method_52838 c method_52838 + m ()V + m ()V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents gfm$a net/minecraft/class_8679$class_8680 + f Lit/unimi/dsi/fastutil/longs/LongSet; chunksWhichReceivedNeighbors a comp_1618 + f Ljava/util/concurrent/BlockingQueue; sectionsToPropagateFrom b comp_1619 + m ()Lit/unimi/dsi/fastutil/longs/LongSet; chunksWhichReceivedNeighbors a comp_1618 + m ()Ljava/util/concurrent/BlockingQueue; sectionsToPropagateFrom b comp_1619 + m ()V + m (Lit/unimi/dsi/fastutil/longs/LongSet;Ljava/util/concurrent/BlockingQueue;)V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphState gfm$b net/minecraft/class_8679$class_8681 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage; storage a comp_1620 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents; events b comp_1621 + m ()Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage; storage a comp_1620 + m ()Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents; events b comp_1621 + m (I)V + p 1 size + m (Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage;Lnet/minecraft/client/renderer/SectionOcclusionGraph$GraphEvents;)V +c net/minecraft/client/renderer/SectionOcclusionGraph$GraphStorage gfm$c net/minecraft/class_8679$class_6600 + f Lnet/minecraft/client/renderer/SectionOcclusionGraph$SectionToNodeMap; sectionToNodeMap a field_45627 + f Ljava/util/LinkedHashSet; renderSections b field_34819 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunksWaitingForNeighbors c field_45628 + m (I)V + p 1 size +c net/minecraft/client/renderer/SectionOcclusionGraph$Node gfm$d net/minecraft/class_8679$class_762 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; section a field_4124 + f I step b field_4122 + f B sourceDirections c field_4125 + f B directions d field_4126 + m ()Z hasSourceDirections a method_34813 + m (BLnet/minecraft/core/Direction;)V setDirections a method_3299 + p 1 currentValue + p 2 direction + m (I)Z hasSourceDirection a method_34814 + p 1 direction + m (Lnet/minecraft/core/Direction;)Z hasDirection a method_3298 + p 1 direction + m (Lnet/minecraft/core/Direction;)V addSourceDirection b method_34816 + p 1 sourceDirection + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/core/Direction;I)V + p 1 section + p 2 sourceDirection + p 3 step +c net/minecraft/client/renderer/SectionOcclusionGraph$SectionToNodeMap gfm$e net/minecraft/class_8679$class_5972 + f [Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; nodes a field_29620 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;)Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node; get a method_34820 + p 1 section + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/client/renderer/SectionOcclusionGraph$Node;)V put a method_34821 + p 1 section + p 2 node + m (I)V + p 1 size +c net/minecraft/client/renderer/ShaderInstance gfn net/minecraft/class_5944 + f Ljava/util/List; uniforms A field_29490 + f Ljava/util/List; uniformLocations B field_29491 + f Ljava/util/Map; uniformMap C field_29492 + f I programId D field_29493 + f Ljava/lang/String; name E field_29494 + f Z dirty F field_29495 + f Lcom/mojang/blaze3d/shaders/Program; vertexProgram G field_29467 + f Lcom/mojang/blaze3d/shaders/Program; fragmentProgram H field_29468 + f Lcom/mojang/blaze3d/vertex/VertexFormat; vertexFormat I field_29469 + f Ljava/lang/String; SHADER_PATH a field_32778 + f Lcom/mojang/blaze3d/shaders/Uniform; MODEL_VIEW_MATRIX b field_29470 + f Lcom/mojang/blaze3d/shaders/Uniform; PROJECTION_MATRIX c field_29471 + f Lcom/mojang/blaze3d/shaders/Uniform; TEXTURE_MATRIX d field_29472 + f Lcom/mojang/blaze3d/shaders/Uniform; SCREEN_SIZE e field_29473 + f Lcom/mojang/blaze3d/shaders/Uniform; COLOR_MODULATOR f field_29474 + f Lcom/mojang/blaze3d/shaders/Uniform; LIGHT0_DIRECTION g field_29475 + f Lcom/mojang/blaze3d/shaders/Uniform; LIGHT1_DIRECTION h field_29476 + f Lcom/mojang/blaze3d/shaders/Uniform; GLINT_ALPHA i field_42231 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_START j field_29477 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_END k field_29478 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_COLOR l field_29479 + f Lcom/mojang/blaze3d/shaders/Uniform; FOG_SHAPE m field_36373 + f Lcom/mojang/blaze3d/shaders/Uniform; LINE_WIDTH n field_29480 + f Lcom/mojang/blaze3d/shaders/Uniform; GAME_TIME o field_29481 + f Lcom/mojang/blaze3d/shaders/Uniform; CHUNK_OFFSET p field_29482 + f Ljava/lang/String; SHADER_CORE_PATH q field_40512 + f Ljava/lang/String; SHADER_INCLUDE_PATH r field_32779 + f Lorg/slf4j/Logger; LOGGER s field_29483 + f Lcom/mojang/blaze3d/shaders/AbstractUniform; DUMMY_UNIFORM t field_29484 + f Z ALWAYS_REAPPLY u field_32780 + f Lnet/minecraft/client/renderer/ShaderInstance; lastAppliedShader v field_29485 + f I lastProgramId w field_29486 + f Ljava/util/Map; samplerMap x field_29487 + f Ljava/util/List; samplerNames y field_29488 + f Ljava/util/List; samplerLocations z field_29489 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Lcom/mojang/blaze3d/shaders/Program$Type;Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Program; getOrCreate a method_34579 + p 0 resourceProvider + p 1 programType + p 2 name + m (Lcom/google/gson/JsonElement;)V parseSamplerNode a method_34580 + p 1 json + m (Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/platform/Window;)V setDefaultUniforms a method_60897 + p 1 mode + p 2 projectionMatrix + p 3 frustrumMatrix + p 4 window + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/Uniform; getUniform a method_34582 + p 1 name + m (Ljava/lang/String;Ljava/lang/Object;)V setSampler a method_34583 + p 1 name + p 2 textureId + m (Lcom/google/gson/JsonElement;)V parseUniformNode b method_34584 + p 1 json + m (Ljava/lang/String;)Lcom/mojang/blaze3d/shaders/AbstractUniform; safeGetUniform b method_35785 + p 1 name + m ()V clear f method_34585 + m ()V apply g method_34586 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat; getVertexFormat h method_35786 + m ()Ljava/lang/String; getName i method_35787 + m ()V updateLocations j method_34588 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;)V + p 1 resourceProvider + p 2 name + p 3 vertexFormat + m ()V +c net/minecraft/client/renderer/ShaderInstance$1 gfn$1 net/minecraft/class_5944$1 + f Ljava/lang/String; val$relativePath a field_29496 + f Lnet/minecraft/server/packs/resources/ResourceProvider; val$resourceProvider b field_29497 + f Ljava/util/Set; importedPaths c field_29498 + m (Ljava/lang/String;Lnet/minecraft/server/packs/resources/ResourceProvider;)V +c net/minecraft/client/renderer/Sheets gfo net/minecraft/class_4722 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION_RIGHT A field_21722 + f Lnet/minecraft/client/resources/model/Material; ENDER_CHEST_LOCATION B field_21723 + f Lnet/minecraft/client/renderer/RenderType; SHULKER_BOX_SHEET_TYPE C field_21724 + f Lnet/minecraft/client/renderer/RenderType; BED_SHEET_TYPE D field_21725 + f Lnet/minecraft/client/renderer/RenderType; BANNER_SHEET_TYPE E field_21726 + f Lnet/minecraft/client/renderer/RenderType; SHIELD_SHEET_TYPE F field_21727 + f Lnet/minecraft/client/renderer/RenderType; SIGN_SHEET_TYPE G field_21728 + f Lnet/minecraft/client/renderer/RenderType; CHEST_SHEET_TYPE H field_21729 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_TRIMS_SHEET_TYPE I field_42070 + f Lnet/minecraft/client/renderer/RenderType; ARMOR_TRIMS_DECAL_SHEET_TYPE J field_46070 + f Lnet/minecraft/client/renderer/RenderType; SOLID_BLOCK_SHEET K field_21700 + f Lnet/minecraft/client/renderer/RenderType; CUTOUT_BLOCK_SHEET L field_21701 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_ITEM_CULL_BLOCK_SHEET M field_25286 + f Lnet/minecraft/client/renderer/RenderType; TRANSLUCENT_CULL_BLOCK_SHEET N field_21703 + f Ljava/util/Map; BANNER_MATERIALS O field_28252 + f Ljava/util/Map; SHIELD_MATERIALS P field_28253 + f Lnet/minecraft/resources/ResourceLocation; SHULKER_SHEET a field_21704 + f Lnet/minecraft/resources/ResourceLocation; BED_SHEET b field_21705 + f Lnet/minecraft/resources/ResourceLocation; BANNER_SHEET c field_21706 + f Lnet/minecraft/resources/ResourceLocation; SHIELD_SHEET d field_21707 + f Lnet/minecraft/resources/ResourceLocation; SIGN_SHEET e field_21708 + f Lnet/minecraft/resources/ResourceLocation; CHEST_SHEET f field_21709 + f Lnet/minecraft/resources/ResourceLocation; ARMOR_TRIMS_SHEET g field_42071 + f Lnet/minecraft/resources/ResourceLocation; DECORATED_POT_SHEET h field_42910 + f Lnet/minecraft/client/resources/model/Material; DEFAULT_SHULKER_TEXTURE_LOCATION i field_21710 + f Ljava/util/List; SHULKER_TEXTURE_LOCATION j field_21711 + f Ljava/util/Map; SIGN_MATERIALS k field_21712 + f Ljava/util/Map; HANGING_SIGN_MATERIALS l field_40515 + f Lnet/minecraft/client/resources/model/Material; BANNER_BASE m field_49769 + f Lnet/minecraft/client/resources/model/Material; SHIELD_BASE n field_49770 + f Ljava/util/Map; DECORATED_POT_MATERIALS o field_42911 + f Lnet/minecraft/client/resources/model/Material; DECORATED_POT_BASE p field_51914 + f Lnet/minecraft/client/resources/model/Material; DECORATED_POT_SIDE q field_51915 + f [Lnet/minecraft/client/resources/model/Material; BED_TEXTURES r field_21713 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION s field_21714 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION_LEFT t field_21715 + f Lnet/minecraft/client/resources/model/Material; CHEST_TRAP_LOCATION_RIGHT u field_21716 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION v field_21717 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION_LEFT w field_21718 + f Lnet/minecraft/client/resources/model/Material; CHEST_XMAS_LOCATION_RIGHT x field_21719 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION y field_21720 + f Lnet/minecraft/client/resources/model/Material; CHEST_LOCATION_LEFT z field_21721 + m ()Lnet/minecraft/client/renderer/RenderType; bannerSheet a method_24059 + m (I)[Lnet/minecraft/client/resources/model/Material; method_24060 a method_24060 + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/client/resources/model/Material; getDecoratedPotMaterial a method_49341 + p 0 key + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; createDecoratedPotMaterial a method_49342 + p 0 assetId + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/client/resources/model/Material; method_24061 a method_24061 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/state/properties/ChestType;Z)Lnet/minecraft/client/resources/model/Material; chooseMaterial a method_24062 + p 0 blockEntity + p 1 chestType + p 2 holiday + m (Lnet/minecraft/world/level/block/state/properties/ChestType;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/resources/model/Material; chooseMaterial a method_24063 + p 0 chestType + p 1 doubleMaterial + p 2 leftMaterial + p 3 rightMaterial + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getSignMaterial a method_33082 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; chestMaterial a method_24065 + p 0 chestName + m (Lnet/minecraft/core/Holder$Reference;)Lnet/minecraft/client/resources/model/Material; method_60576 a method_60576 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/resources/model/Material; getBannerMaterial a method_33081 + p 0 pattern + m (Z)Lnet/minecraft/client/renderer/RenderType; armorTrimsSheet a method_48480 + p 0 decal + m ()Lnet/minecraft/client/renderer/RenderType; shieldSheet b method_24067 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; method_58138 b method_58138 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getHangingSignMaterial b method_45781 + p 0 woodType + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; method_24068 b method_24068 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/resources/model/Material; getShieldMaterial b method_33083 + p 0 pattern + m ()Lnet/minecraft/client/renderer/RenderType; bedSheet c method_24069 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/Material; method_58139 c method_58139 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; createSignMaterial c method_24064 + p 0 woodType + m ()Lnet/minecraft/client/renderer/RenderType; shulkerBoxSheet d method_24070 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; createHangingSignMaterial d method_45782 + p 0 woodType + m ()Lnet/minecraft/client/renderer/RenderType; signSheet e method_24071 + m ()Lnet/minecraft/client/renderer/RenderType; hangingSignSheet f method_45783 + m ()Lnet/minecraft/client/renderer/RenderType; chestSheet g method_24072 + m ()Lnet/minecraft/client/renderer/RenderType; solidBlockSheet h method_24073 + m ()Lnet/minecraft/client/renderer/RenderType; cutoutBlockSheet i method_24074 + m ()Lnet/minecraft/client/renderer/RenderType; translucentItemSheet j method_29382 + m ()Lnet/minecraft/client/renderer/RenderType; translucentCullBlockSheet k method_24076 + m ()V + m ()V +c net/minecraft/client/renderer/Sheets$1 gfo$1 net/minecraft/class_4722$1 + f [I $SwitchMap$net$minecraft$world$level$block$state$properties$ChestType a field_21482 + m ()V +c net/minecraft/client/renderer/SpriteCoordinateExpander gfp net/minecraft/class_4723 + f Lcom/mojang/blaze3d/vertex/VertexConsumer; delegate a field_21730 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite b field_21731 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V + p 1 delegate + p 2 sprite +c net/minecraft/client/renderer/ViewArea gfq net/minecraft/class_769 + f Lnet/minecraft/client/renderer/LevelRenderer; levelRenderer a field_4146 + f Lnet/minecraft/world/level/Level; level b field_4151 + f I sectionGridSizeY c field_4149 + f I sectionGridSizeX d field_4148 + f I sectionGridSizeZ e field_4147 + f [Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; sections f field_4150 + f I viewDistance g field_45629 + m ()V releaseAllBuffers a method_3327 + m (DD)V repositionCamera a method_3330 + p 1 viewEntityX + p 3 viewEntityZ + m (I)V setViewDistance a method_3325 + p 1 renderDistanceChunks + m (III)I getSectionIndex a method_3326 + p 1 x + p 2 y + p 3 z + m (IIIZ)V setDirty a method_16040 + p 1 sectionX + p 2 sectionY + p 3 sectionZ + p 4 reRenderOnMainThread + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;)V createSections a method_3324 + p 1 sectionRenderDispatcher + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; getRenderSectionAt a method_3323 + p 1 pos + m ()I getViewDistance b method_52839 + m ()Lnet/minecraft/world/level/LevelHeightAccessor; getLevelHeightAccessor c method_52840 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;Lnet/minecraft/world/level/Level;ILnet/minecraft/client/renderer/LevelRenderer;)V + p 1 sectionRenderDispatcher + p 2 level + p 3 viewDistance + p 4 levelRenderer +c net/minecraft/client/renderer/VirtualScreen gfr net/minecraft/class_3682 + f Lnet/minecraft/client/Minecraft; minecraft a field_16256 + f Lcom/mojang/blaze3d/platform/ScreenManager; screenManager b field_16255 + m (Lcom/mojang/blaze3d/platform/DisplayData;Ljava/lang/String;Ljava/lang/String;)Lcom/mojang/blaze3d/platform/Window; newWindow a method_16038 + p 1 screenSize + p 2 videoModeName + p 3 title + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/block/BlockModelShaper gfs net/minecraft/class_773 + f Ljava/util/Map; modelByStateCache a field_4162 + f Lnet/minecraft/client/resources/model/ModelManager; modelManager b field_4163 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager a method_3333 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/ModelResourceLocation; stateToModelLocation a method_3336 + p 0 location + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getParticleIcon a method_3339 + p 1 state + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/Comparable;)Ljava/lang/String; getValue a method_3334 + p 0 property + p 1 value + m (Ljava/util/Map;)V replaceCache a method_45784 + p 1 modelByStateCache + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/BakedModel; getBlockModel b method_3335 + p 1 state + m (Ljava/util/Map;)Ljava/lang/String; statePropertiesToString b method_3338 + p 0 propertyValues + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/ModelResourceLocation; stateToModelLocation c method_3340 + p 0 state + m (Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 modelManager +c net/minecraft/client/renderer/block/BlockRenderDispatcher gft net/minecraft/class_776 + f Lnet/minecraft/client/renderer/block/BlockModelShaper; blockModelShaper a field_4168 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer; modelRenderer b field_4170 + f Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer; blockEntityRenderer c field_27742 + f Lnet/minecraft/client/renderer/block/LiquidBlockRenderer; liquidBlockRenderer d field_4167 + f Lnet/minecraft/util/RandomSource; random e field_4169 + f Lnet/minecraft/client/color/block/BlockColors; blockColors f field_20987 + m ()Lnet/minecraft/client/renderer/block/BlockModelShaper; getBlockModelShaper a method_3351 + m (Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/client/resources/model/BakedModel; getBlockModel a method_3349 + p 1 state + m (Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V renderSingleBlock a method_3353 + p 1 state + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 packedOverlay + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderBreakingTexture a method_23071 + p 1 state + p 2 pos + p 3 level + p 4 poseStack + p 5 consumer + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;)V renderBatched a method_3355 + p 1 state + p 2 pos + p 3 level + p 4 poseStack + p 5 consumer + p 6 checkSides + p 7 random + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/BlockAndTintGetter;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)V renderLiquid a method_3352 + p 1 pos + p 2 level + p 3 consumer + p 4 blockState + p 5 fluidState + m ()Lnet/minecraft/client/renderer/block/ModelBlockRenderer; getModelRenderer b method_3350 + m (Lnet/minecraft/client/renderer/block/BlockModelShaper;Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer;Lnet/minecraft/client/color/block/BlockColors;)V + p 1 blockModelShaper + p 2 blockEntityRenderer + p 3 blockColors +c net/minecraft/client/renderer/block/BlockRenderDispatcher$1 gft$1 net/minecraft/class_776$1 + f [I $SwitchMap$net$minecraft$world$level$block$RenderShape a field_4172 + m ()V +c net/minecraft/client/renderer/block/LiquidBlockRenderer gfu net/minecraft/class_775 + f F MAX_FLUID_HEIGHT a field_32781 + f [Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; lavaIcons b field_4165 + f [Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; waterIcons c field_4166 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; waterOverlay d field_4164 + m ()V setupSprites a method_3345 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;FFFLnet/minecraft/core/BlockPos;)F calculateAverageHeight a method_40077 + p 1 level + p 2 fluid + p 3 currentHeight + p 4 height1 + p 5 height2 + p 6 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;)F getHeight a method_40078 + p 1 level + p 2 fluid + p 3 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/material/Fluid;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)F getHeight a method_40079 + p 1 level + p 2 fluid + p 3 pos + p 4 blockState + p 5 fluidState + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_3343 + p 1 level + p 2 pos + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/world/level/material/FluidState;)Z shouldRenderFace a method_29708 + p 0 level + p 1 pos + p 2 fluidState + p 3 blockState + p 4 side + p 5 neighborFluid + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/material/FluidState;)V tesselate a method_3347 + p 1 level + p 2 pos + p 3 buffer + p 4 blockState + p 5 fluidState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;)Z isFaceOccludedBySelf a method_29709 + p 0 level + p 1 pos + p 2 state + p 3 face + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;FLnet/minecraft/world/level/block/state/BlockState;)Z isFaceOccludedByNeighbor a method_3344 + p 0 level + p 1 pos + p 2 side + p 3 height + p 4 blockState + m (Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/Direction;FLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)Z isFaceOccludedByState a method_29710 + p 0 level + p 1 face + p 2 height + p 3 pos + p 4 state + m (Lnet/minecraft/world/level/material/FluidState;Lnet/minecraft/world/level/material/FluidState;)Z isNeighborSameFluid a method_3348 + p 0 firstState + p 1 secondState + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFI)V vertex a method_23072 + p 1 buffer + p 2 x + p 3 y + p 4 z + p 5 red + p 6 green + p 7 blue + p 8 u + p 9 v + p 10 packedLight + m ([FF)V addWeightedHeight a method_40080 + p 1 output + p 2 height + m ()V +c net/minecraft/client/renderer/block/LiquidBlockRenderer$1 gfu$1 net/minecraft/class_775$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_36387 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer gfv net/minecraft/class_778 + f I FACE_CUBIC a field_32782 + f I FACE_PARTIAL b field_32783 + f [Lnet/minecraft/core/Direction; DIRECTIONS c field_27743 + f Lnet/minecraft/client/color/block/BlockColors; blockColors d field_4178 + f I CACHE_SIZE e field_32784 + f Ljava/lang/ThreadLocal; CACHE f field_4179 + m ()V enableCaching a method_20544 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;IIZLcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;Ljava/util/BitSet;)V renderModelFaceFlat a method_3370 + p 1 level + p 2 state + p 3 pos + p 4 packedLight + p 5 packedOverlay + p 6 repackLight + c {@code true} if packed light should be re-calculated + p 7 poseStack + p 8 consumer + p 9 quads + p 10 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;[FLjava/util/BitSet;Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace;I)V renderModelFaceAO a method_3363 + p 1 level + p 2 state + p 3 pos + p 4 poseStack + p 5 consumer + p 6 quads + p 7 shape + c the array, of length 12, to store the shape bounds in + p 8 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + p 9 aoFace + p 10 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lnet/minecraft/client/renderer/block/model/BakedQuad;FFFFIIIII)V putQuadData a method_23073 + p 1 level + p 2 state + p 3 pos + p 4 consumer + p 5 pose + p 6 quad + p 7 brightness0 + p 8 brightness1 + p 9 brightness2 + p 10 brightness3 + p 11 lightmap0 + p 12 lightmap1 + p 13 lightmap2 + p 14 lightmap3 + p 15 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;[ILnet/minecraft/core/Direction;[FLjava/util/BitSet;)V calculateShape a method_3364 + c Calculates the shape and corresponding flags for the specified {@code direction} and {@code vertices}, storing the resulting shape in the specified {@code shape} array and the shape flags in {@code shapeFlags}. + p 1 level + p 2 state + p 3 pos + p 4 vertices + p 5 direction + p 6 shape + c the array, of length 12, to store the shape bounds in, or {@code null} to only calculate shape flags + p 7 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateBlock a method_3374 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFLjava/util/List;II)V renderQuadList a method_3365 + p 0 pose + p 1 consumer + p 2 red + p 3 green + p 4 blue + p 5 quads + p 6 packedLight + p 7 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/resources/model/BakedModel;FFFII)V renderModel a method_3367 + p 1 pose + p 2 consumer + p 3 state + p 4 model + p 5 red + p 6 green + p 7 blue + p 8 packedLight + p 9 packedOverlay + m ()V clearCache b method_20545 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateWithAO b method_3361 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;ZLnet/minecraft/util/RandomSource;JI)V tesselateWithoutAO c method_3373 + p 1 level + p 2 model + p 3 state + p 4 pos + p 5 poseStack + p 6 consumer + p 7 checkSides + c if {@code true}, only renders each side if {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} returns {@code true} + p 8 random + p 9 seed + p 11 packedOverlay + m (Lnet/minecraft/client/color/block/BlockColors;)V + p 1 blockColors + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$1 gfv$1 net/minecraft/class_778$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4197 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo gfv$a net/minecraft/class_778$class_779 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; DOWN a field_4181 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; UP b field_4182 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; NORTH c field_4183 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; SOUTH d field_4184 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; WEST e field_4187 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; EAST f field_4186 + f [Lnet/minecraft/core/Direction; corners g field_4191 + f Z doNonCubicWeight h field_4189 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert0Weights i field_4192 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert1Weights j field_4185 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert2Weights k field_4180 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; vert3Weights l field_4188 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; BY_FACING m field_4190 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; $VALUES n field_4193 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; $values a method_36917 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo; fromFacing a method_3378 + p 0 facing + m ([Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AdjacencyInfo;)V method_3383 a method_3383 + m (Ljava/lang/String;I[Lnet/minecraft/core/Direction;FZ[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo;)V + p 3 corners + p 4 shadeBrightness + c the shade brightness for this direction + p 5 doNonCubicWeight + p 6 vert0Weights + p 7 vert1Weights + p 8 vert2Weights + p 9 vert3Weights + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace gfv$b net/minecraft/class_778$class_780 + f [F brightness a field_4196 + f [I lightmap b field_4194 + m (IIII)I blend a method_3386 + c @return the ambient occlusion light color + p 1 lightColor0 + p 2 lightColor1 + p 3 lightColor2 + p 4 lightColor3 + m (IIIIFFFF)I blend a method_3389 + p 1 brightness0 + p 2 brightness1 + p 3 brightness2 + p 4 brightness3 + p 5 weight0 + p 6 weight1 + p 7 weight2 + p 8 weight3 + m (Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Direction;[FLjava/util/BitSet;Z)V calculate a method_3388 + p 1 level + p 2 state + p 3 pos + p 4 direction + p 5 shape + c the array, of length 12, containing the shape bounds + p 6 shapeFlags + c the bit set to store the shape flags in. The first bit will be {@code true} if the face should be offset, and the second if the face is less than a block in width and height. + p 7 shade + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap gfv$c net/minecraft/class_778$class_781 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; DOWN a field_4199 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; UP b field_4200 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; NORTH c field_4204 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; SOUTH d field_4205 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; WEST e field_4206 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; EAST f field_4207 + f I vert0 g field_4203 + f I vert1 h field_4201 + f I vert2 i field_4198 + f I vert3 j field_4209 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; BY_FACING k field_4202 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; $VALUES l field_4208 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; $values a method_36918 + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap; fromFacing a method_3394 + p 0 facing + m ([Lnet/minecraft/client/renderer/block/ModelBlockRenderer$AmbientVertexRemap;)V method_3390 a method_3390 + m (Ljava/lang/String;IIIII)V + p 3 vert0 + p 4 vert1 + p 5 vert2 + p 6 vert3 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache gfv$d net/minecraft/class_778$class_4303 + f Z enabled a field_19320 + f Lit/unimi/dsi/fastutil/longs/Long2IntLinkedOpenHashMap; colorCache b field_19321 + f Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; brightnessCache c field_19322 + m ()V enable a method_20548 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I getLightColor a method_20549 + p 1 state + p 2 level + p 3 pos + m ()V disable b method_20550 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)F getShadeBrightness b method_20551 + p 1 state + p 2 level + p 3 pos + m ()Lit/unimi/dsi/fastutil/longs/Long2FloatLinkedOpenHashMap; method_20552 c method_20552 + m ()Lit/unimi/dsi/fastutil/longs/Long2IntLinkedOpenHashMap; method_20553 d method_20553 + m ()V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache$1 gfv$d$1 net/minecraft/class_778$class_4303$1 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache; field_19323 a field_19323 + m (Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache;IF)V +c net/minecraft/client/renderer/block/ModelBlockRenderer$Cache$2 gfv$d$2 net/minecraft/class_778$class_4303$2 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache; field_19324 a field_19324 + m (Lnet/minecraft/client/renderer/block/ModelBlockRenderer$Cache;IF)V +c net/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo gfv$e net/minecraft/class_778$class_782 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; DOWN a field_4210 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; UP b field_4212 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; NORTH c field_4211 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; SOUTH d field_4213 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; WEST e field_4215 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; EAST f field_4219 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_DOWN g field_4220 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_UP h field_4217 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_NORTH i field_4218 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_SOUTH j field_4221 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_WEST k field_4216 + f Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; FLIP_EAST l field_4214 + f I shape m field_4222 + f [Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; $VALUES n field_4223 + m ()[Lnet/minecraft/client/renderer/block/ModelBlockRenderer$SizeInfo; $values a method_36919 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;Z)V + p 3 direction + p 4 flip + m ()V +c net/minecraft/client/renderer/block/model/BakedQuad gfw net/minecraft/class_777 + f [I vertices a field_4175 + c Joined 4 vertex records, each stores packed data according to the VertexFormat of the quad. Vanilla minecraft uses DefaultVertexFormats.BLOCK, Forge uses (usually) ITEM, use BakedQuad.getFormat() to get the correct format. + f I tintIndex b field_4174 + f Lnet/minecraft/core/Direction; direction c field_4173 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite d field_4176 + f Z shade e field_22441 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_35788 + m ()[I getVertices b method_3357 + m ()Z isTinted c method_3360 + m ()I getTintIndex d method_3359 + m ()Lnet/minecraft/core/Direction; getDirection e method_3358 + m ()Z isShade f method_24874 + m ([IILnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Z)V + p 1 vertices + p 2 tintIndex + p 3 direction + p 4 sprite + p 5 shade +c net/minecraft/client/renderer/block/model/BlockElement gfx net/minecraft/class_785 + f Lorg/joml/Vector3f; from a field_4228 + f Lorg/joml/Vector3f; to b field_4231 + f Ljava/util/Map; faces c field_4230 + f Lnet/minecraft/client/renderer/block/model/BlockElementRotation; rotation d field_4232 + f Z shade e field_4229 + f Z DEFAULT_RESCALE f field_32785 + f F MIN_EXTENT g field_32786 + f F MAX_EXTENT h field_32787 + m ()V fillUvs a method_3402 + m (Lnet/minecraft/core/Direction;)[F uvsByFace a method_3401 + p 1 face + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)V + p 1 from + p 2 to + p 3 faces + p 4 rotation + p 5 shade +c net/minecraft/client/renderer/block/model/BlockElement$1 gfx$1 net/minecraft/class_785$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4233 + m ()V +c net/minecraft/client/renderer/block/model/BlockElement$Deserializer gfx$a net/minecraft/class_785$class_786 + f Z DEFAULT_SHADE a field_32788 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; getFaces a method_3412 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockElement; deserialize a method_3406 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/BlockElementRotation; getRotation a method_3410 + p 1 json + m (Lcom/google/gson/JsonObject;Ljava/lang/String;)Lorg/joml/Vector3f; getVector3f a method_3409 + p 1 json + p 2 memberName + m (Ljava/lang/String;)Lnet/minecraft/core/Direction; getFacing a method_3408 + p 1 name + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; filterNullFromFaces b method_3404 + p 1 context + p 2 json + m (Lcom/google/gson/JsonObject;)F getAngle b method_3403 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/core/Direction$Axis; getAxis c method_3411 + p 1 json + m (Lcom/google/gson/JsonObject;)Lorg/joml/Vector3f; getTo d method_3405 + p 1 json + m (Lcom/google/gson/JsonObject;)Lorg/joml/Vector3f; getFrom e method_3407 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockElementFace gfy net/minecraft/class_783 + f I NO_TINT a field_32789 + f Lnet/minecraft/core/Direction; cullForDirection b comp_2867 + f I tintIndex c comp_2868 + f Ljava/lang/String; texture d comp_2869 + f Lnet/minecraft/client/renderer/block/model/BlockFaceUV; uv e comp_2870 + m ()Lnet/minecraft/core/Direction; cullForDirection a comp_2867 + m ()I tintIndex b comp_2868 + m ()Ljava/lang/String; texture c comp_2869 + m ()Lnet/minecraft/client/renderer/block/model/BlockFaceUV; uv d comp_2870 + m (Lnet/minecraft/core/Direction;ILjava/lang/String;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;)V + p 1 cullForDirection + p 2 tintIndex + p 3 texture + p 4 uv +c net/minecraft/client/renderer/block/model/BlockElementFace$Deserializer gfy$a net/minecraft/class_783$class_784 + f I DEFAULT_TINT_INDEX a field_32790 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockElementFace; deserialize a method_3397 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)I getTintIndex a method_3400 + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; getTexture b method_3399 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/core/Direction; getCullFacing c method_3398 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockElementRotation gfz net/minecraft/class_789 + f Lorg/joml/Vector3f; origin a comp_1118 + f Lnet/minecraft/core/Direction$Axis; axis b comp_1119 + f F angle c comp_1120 + f Z rescale d comp_1121 + m ()Lorg/joml/Vector3f; origin a comp_1118 + m ()Lnet/minecraft/core/Direction$Axis; axis b comp_1119 + m ()F angle c comp_1120 + m ()Z rescale d comp_1121 + m (Lorg/joml/Vector3f;Lnet/minecraft/core/Direction$Axis;FZ)V +c net/minecraft/client/renderer/block/model/BlockFaceUV gga net/minecraft/class_787 + f [F uvs a field_4235 + f I rotation b field_4234 + m (I)F getU a method_3415 + p 1 index + m ([F)V setMissingUv a method_3417 + p 1 uvs + m (I)F getV b method_3416 + p 1 index + m (I)I getReverseIndex c method_3414 + p 1 index + m (I)I getShiftedIndex d method_3413 + p 1 index + m ([FI)V + p 1 uvs + p 2 rotation +c net/minecraft/client/renderer/block/model/BlockFaceUV$Deserializer gga$a net/minecraft/class_787$class_788 + f I DEFAULT_ROTATION a field_32791 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockFaceUV; deserialize a method_3418 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)I getRotation a method_3420 + p 1 json + m (Lcom/google/gson/JsonObject;)[F getUVs b method_3419 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModel ggb net/minecraft/class_793 + f Lcom/google/gson/Gson; GSON a field_4254 + f Ljava/lang/String; PARTICLE_TEXTURE_REFERENCE b field_32792 + f Ljava/lang/String; name c field_4252 + f Ljava/util/Map; textureMap d field_4251 + f Lnet/minecraft/client/renderer/block/model/BlockModel; parent e field_4253 + f Lnet/minecraft/resources/ResourceLocation; parentLocation f field_4247 + f Lorg/slf4j/Logger; LOGGER g field_4248 + f Lnet/minecraft/client/renderer/block/model/FaceBakery; FACE_BAKERY h field_4249 + f C REFERENCE_CHAR i field_32793 + f Z DEFAULT_AMBIENT_OCCLUSION j field_42912 + f Ljava/util/List; elements k field_4245 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; guiLight l field_21857 + f Ljava/lang/Boolean; hasAmbientOcclusion m field_4244 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms n field_4250 + f Ljava/util/List; overrides o field_4255 + m ()Ljava/util/List; getElements a method_3433 + m (Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3438 + p 1 displayContext + m (Lnet/minecraft/client/renderer/block/model/BlockElement;Lnet/minecraft/client/renderer/block/model/BlockElementFace;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/renderer/block/model/BakedQuad; bakeFace a method_3447 + p 0 element + p 1 face + p 2 sprite + p 3 facing + p 4 state + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;)Lnet/minecraft/client/renderer/block/model/ItemOverrides; getItemOverrides a method_3440 + p 1 baker + p 2 model + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Ljava/util/function/Function;Lnet/minecraft/client/resources/model/ModelState;Z)Lnet/minecraft/client/resources/model/BakedModel; bake a method_3446 + p 1 baker + p 2 model + p 3 spriteGetter + p 4 state + p 5 guiLight3d + m (Ljava/io/Reader;)Lnet/minecraft/client/renderer/block/model/BlockModel; fromStream a method_3437 + p 0 reader + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/BlockModel; fromString a method_3430 + p 0 jsonString + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/ItemOverride;)V method_45786 a method_45786 + m ()Z hasAmbientOcclusion b method_3444 + m (Ljava/lang/String;)Z hasTexture b method_3432 + p 1 textureName + m ()Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; getGuiLight c method_24298 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/model/Material; getMaterial c method_24077 + p 1 name + m ()Z isResolved d method_35789 + m (Ljava/lang/String;)Lcom/mojang/datafixers/util/Either; findTextureEntry d method_3442 + p 1 name + m ()Ljava/util/List; getOverrides e method_3434 + m (Ljava/lang/String;)Z isTextureReference e method_3439 + p 0 str + m ()Lnet/minecraft/client/renderer/block/model/BlockModel; getRootModel g method_3431 + m ()Lnet/minecraft/client/renderer/block/model/ItemTransforms; getTransforms h method_3443 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;Ljava/util/Map;Ljava/lang/Boolean;Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight;Lnet/minecraft/client/renderer/block/model/ItemTransforms;Ljava/util/List;)V + p 1 parentLocation + p 2 elements + p 3 textureMap + p 4 hasAmbientOcclusion + p 5 guiLight + p 6 transforms + p 7 overrides + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$Deserializer ggb$a net/minecraft/class_793$class_795 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)Lcom/mojang/datafixers/util/Either; parseTextureLocationOrReference a method_24079 + p 0 location + p 1 name + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/List; getOverrides a method_3452 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockModel; deserialize a method_3451 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Ljava/lang/Boolean; getAmbientOcclusion a method_3453 + p 1 json + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/List; getElements b method_3449 + p 1 context + p 2 json + m (Lcom/google/gson/JsonObject;)Ljava/util/Map; getTextureMap b method_3448 + p 1 json + m (Lcom/google/gson/JsonObject;)Ljava/lang/String; getParentName c method_3450 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$GuiLight ggb$b net/minecraft/class_793$class_4751 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; FRONT a field_21858 + f Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; SIDE b field_21859 + f Ljava/lang/String; name c field_21860 + f [Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; $VALUES d field_21861 + m ()Z lightLikeBlock a method_24299 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; getByName a method_24300 + p 0 name + m ()[Lnet/minecraft/client/renderer/block/model/BlockModel$GuiLight; $values b method_36920 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/renderer/block/model/BlockModel$LoopException ggb$c net/minecraft/class_793$class_6246 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/client/renderer/block/model/BlockModelDefinition ggc net/minecraft/class_790 + f Ljava/util/Map; variants a field_4241 + f Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; multiPart b field_4240 + m ()Ljava/util/Map; getVariants a method_3423 + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; fromJsonElement a method_45787 + p 0 context + p 1 json + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;Ljava/io/Reader;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; fromStream a method_3424 + p 0 context + p 1 reader + m (Ljava/lang/String;)Z hasVariant a method_35790 + p 1 key + m ()Ljava/util/Set; getMultiVariants b method_35791 + m (Ljava/lang/String;)Lnet/minecraft/client/renderer/block/model/MultiVariant; getVariant b method_35792 + p 1 key + m ()Z isMultiPart c method_3422 + m ()Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; getMultiPart d method_3421 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;)V + p 1 variants + p 2 multiPart + m (Ljava/util/List;)V + p 1 modelDefinitions +c net/minecraft/client/renderer/block/model/BlockModelDefinition$Context ggc$a net/minecraft/class_790$class_791 + f Lcom/google/gson/Gson; gson a field_4243 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition b field_4242 + m ()Lnet/minecraft/world/level/block/state/StateDefinition; getDefinition a method_3425 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)V setDefinition a method_3426 + p 1 stateContainer + m ()V +c net/minecraft/client/renderer/block/model/BlockModelDefinition$Deserializer ggc$b net/minecraft/class_790$class_792 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Ljava/util/Map; getVariants a method_3429 + p 1 context + p 2 json + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; deserialize a method_3428 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; getMultiPart b method_3427 + p 1 context + p 2 json + m ()V +c net/minecraft/client/renderer/block/model/BlockModelDefinition$MissingVariantException ggc$c net/minecraft/class_790$class_6247 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; field_32795 a field_32795 + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;)V +c net/minecraft/client/renderer/block/model/FaceBakery ggd net/minecraft/class_796 + f I VERTEX_INT_SIZE a field_32796 + f I VERTEX_COUNT b field_32797 + f I UV_INDEX c field_32798 + f F RESCALE_22_5 d field_4260 + f F RESCALE_45 e field_4259 + f I COLOR_INDEX f field_32799 + m (Lnet/minecraft/client/renderer/block/model/BlockFaceUV;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;[FLcom/mojang/math/Transformation;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)[I makeVertices a method_3458 + p 1 uvs + p 2 sprite + p 3 orientation + p 4 posDiv16 + p 5 rotation + p 6 partRotation + p 7 shade + m (Lnet/minecraft/client/renderer/block/model/BlockFaceUV;Lnet/minecraft/core/Direction;Lcom/mojang/math/Transformation;)Lnet/minecraft/client/renderer/block/model/BlockFaceUV; recomputeUVs a method_3454 + p 0 uv + p 1 facing + p 2 rotation + m (Lorg/joml/Vector3f;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;)V applyElementRotation a method_3463 + p 1 vec + p 2 partRotation + m (Lorg/joml/Vector3f;Lcom/mojang/math/Transformation;)V applyModelRotation a method_3455 + p 1 pos + p 2 transform + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;)[F setupShape a method_3459 + p 1 min + p 2 max + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lnet/minecraft/client/renderer/block/model/BlockElementFace;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/ModelState;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)Lnet/minecraft/client/renderer/block/model/BakedQuad; bakeQuad a method_3468 + p 1 posFrom + p 2 posTo + p 3 face + p 4 sprite + p 5 facing + p 6 transform + p 7 rotation + p 8 shade + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lorg/joml/Matrix4f;Lorg/joml/Vector3f;)V rotateVertexBy a method_3464 + p 1 pos + p 2 origin + p 3 transform + p 4 scale + m ([I)Lnet/minecraft/core/Direction; calculateFacing a method_3467 + p 0 faceData + m ([IILnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;[FLnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lcom/mojang/math/Transformation;Lnet/minecraft/client/renderer/block/model/BlockElementRotation;Z)V bakeVertex a method_3461 + p 1 vertexData + p 2 vertexIndex + p 3 facing + p 4 blockFaceUV + p 5 posDiv16 + p 6 sprite + p 7 rotation + p 8 partRotation + p 9 shade + m ([IILorg/joml/Vector3f;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/block/model/BlockFaceUV;)V fillVertex a method_3460 + p 1 vertexData + p 2 vertexIndex + p 3 vector + p 4 sprite + p 5 blockFaceUV + m ([ILnet/minecraft/core/Direction;)V recalculateWinding a method_3462 + p 1 vertices + p 2 direction + m ()V + m ()V +c net/minecraft/client/renderer/block/model/FaceBakery$1 ggd$1 net/minecraft/class_796$1 + f [I $SwitchMap$net$minecraft$core$Direction$Axis a field_4265 + m ()V +c net/minecraft/client/renderer/block/model/ItemModelGenerator gge net/minecraft/class_801 + f Ljava/util/List; LAYERS a field_4270 + f F MIN_Z b field_32806 + f F MAX_Z c field_32807 + m (IILnet/minecraft/client/renderer/texture/SpriteContents;Ljava/util/List;I)V method_33428 a method_33428 + m (ILjava/lang/String;Lnet/minecraft/client/renderer/texture/SpriteContents;)Ljava/util/List; processFrames a method_3480 + p 1 tintIndex + p 2 texture + p 3 sprite + m (Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;Ljava/util/List;Lnet/minecraft/client/renderer/texture/SpriteContents;IIIIIZ)V checkTransition a method_3476 + p 1 spanFacing + p 2 listSpans + p 3 contents + p 4 frameIndex + p 5 pixelX + p 6 pixelY + p 7 spriteWidth + p 8 spriteHeight + p 9 transparent + m (Lnet/minecraft/client/renderer/texture/SpriteContents;)Ljava/util/List; getSpans a method_3478 + p 1 sprite + m (Lnet/minecraft/client/renderer/texture/SpriteContents;IIIII)Z isTransparent a method_3477 + p 1 sprite + p 2 frameIndex + p 3 pixelX + p 4 pixelY + p 5 spriteWidth + p 6 spriteHeight + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Ljava/lang/String;I)Ljava/util/List; createSideElements a method_3481 + p 1 sprite + p 2 texture + p 3 tintIndex + m (Ljava/util/List;Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;II)V createOrExpandSpan a method_3482 + p 1 listSpans + p 2 spanFacing + p 3 pixelX + p 4 pixelY + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/BlockModel;)Lnet/minecraft/client/renderer/block/model/BlockModel; generateBlockModel a method_3479 + p 1 spriteGetter + p 2 model + m ()V + m ()V +c net/minecraft/client/renderer/block/model/ItemModelGenerator$Span gge$a net/minecraft/class_801$class_802 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; facing a field_4271 + f I min b field_4274 + f I max c field_4273 + f I anchor d field_4272 + m ()Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; getFacing a method_3484 + m (I)V expand a method_3483 + p 1 pos + m ()I getMin b method_3487 + m ()I getMax c method_3485 + m ()I getAnchor d method_3486 + m (Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing;II)V + p 1 facing + p 2 minMax + p 3 anchor +c net/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing gge$b net/minecraft/class_801$class_803 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; UP a field_4281 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; DOWN b field_4277 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; LEFT c field_4278 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; RIGHT d field_4283 + f Lnet/minecraft/core/Direction; direction e field_4276 + f I xOffset f field_4280 + f I yOffset g field_4279 + f [Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; $VALUES h field_4282 + m ()Lnet/minecraft/core/Direction; getDirection a method_3488 + c Gets the direction of the block's facing. + m ()I getXOffset b method_3490 + m ()I getYOffset c method_3489 + m ()Z isHorizontal d method_3491 + m ()[Lnet/minecraft/client/renderer/block/model/ItemModelGenerator$SpanFacing; $values e method_36921 + m (Ljava/lang/String;ILnet/minecraft/core/Direction;II)V + p 3 direction + p 4 xOffset + p 5 yOffset + m ()V +c net/minecraft/client/renderer/block/model/ItemOverride ggf net/minecraft/class_799 + f Lnet/minecraft/resources/ResourceLocation; model a field_4268 + f Ljava/util/List; predicates b field_4269 + m ()Lnet/minecraft/resources/ResourceLocation; getModel a method_3472 + c @return the location of the target model + m ()Ljava/util/stream/Stream; getPredicates b method_33690 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;)V + p 1 model + p 2 predicates +c net/minecraft/client/renderer/block/model/ItemOverride$Deserializer ggf$a net/minecraft/class_799$class_800 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemOverride; deserialize a method_3475 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Ljava/util/List; getPredicates a method_3474 + p 1 json + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/renderer/block/model/ItemOverride$Predicate; method_33691 a method_33691 + m ()V +c net/minecraft/client/renderer/block/model/ItemOverride$Predicate ggf$b net/minecraft/class_799$class_5826 + f Lnet/minecraft/resources/ResourceLocation; property a field_28790 + f F value b field_28791 + m ()Lnet/minecraft/resources/ResourceLocation; getProperty a method_33692 + m ()F getValue b method_33693 + m (Lnet/minecraft/resources/ResourceLocation;F)V + p 1 property + p 2 value +c net/minecraft/client/renderer/block/model/ItemOverrides ggg net/minecraft/class_806 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; EMPTY a field_4292 + f F NO_OVERRIDE b field_42072 + f [Lnet/minecraft/client/renderer/block/model/ItemOverrides$BakedOverride; overrides c field_28792 + f [Lnet/minecraft/resources/ResourceLocation; properties d field_28793 + m (I)[Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; method_33694 a method_33694 + m (Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)Lnet/minecraft/client/resources/model/BakedModel; resolve a method_3495 + p 1 model + p 2 stack + p 3 level + p 4 entity + p 5 seed + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Lnet/minecraft/client/renderer/block/model/ItemOverride;)Lnet/minecraft/client/resources/model/BakedModel; bakeModel a method_33695 + p 1 baker + p 2 model + p 3 override + m (Lit/unimi/dsi/fastutil/objects/Object2IntMap;Lnet/minecraft/client/renderer/block/model/ItemOverride$Predicate;)Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; method_33696 a method_33696 + m (I)[Lnet/minecraft/resources/ResourceLocation; method_33697 b method_33697 + m ()V + m (Lnet/minecraft/client/resources/model/ModelBaker;Lnet/minecraft/client/renderer/block/model/BlockModel;Ljava/util/List;)V + p 1 baker + p 2 model + p 3 overrides + m ()V +c net/minecraft/client/renderer/block/model/ItemOverrides$BakedOverride ggg$a net/minecraft/class_806$class_5827 + f [Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher; matchers a field_28794 + f Lnet/minecraft/client/resources/model/BakedModel; model b field_28795 + m ([F)Z test a method_33700 + p 1 properties + m ([Lnet/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher;Lnet/minecraft/client/resources/model/BakedModel;)V + p 1 matchers + p 2 model +c net/minecraft/client/renderer/block/model/ItemOverrides$PropertyMatcher ggg$b net/minecraft/class_806$class_5828 + f I index a field_28796 + f F value b field_28797 + m (IF)V + p 1 index + p 2 value +c net/minecraft/client/renderer/block/model/ItemTransform ggh net/minecraft/class_804 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; NO_TRANSFORM a field_4284 + f Lorg/joml/Vector3f; rotation b field_4287 + f Lorg/joml/Vector3f; translation c field_4286 + f Lorg/joml/Vector3f; scale d field_4285 + m (ZLcom/mojang/blaze3d/vertex/PoseStack;)V apply a method_23075 + p 1 leftHand + p 2 poseStack + m (Lorg/joml/Vector3f;Lorg/joml/Vector3f;Lorg/joml/Vector3f;)V + p 1 rotation + p 2 translation + p 3 scale + m ()V +c net/minecraft/client/renderer/block/model/ItemTransform$Deserializer ggh$a net/minecraft/class_804$class_805 + f F MAX_TRANSLATION a field_32808 + f F MAX_SCALE b field_32809 + f Lorg/joml/Vector3f; DEFAULT_ROTATION c field_4288 + f Lorg/joml/Vector3f; DEFAULT_TRANSLATION d field_4290 + f Lorg/joml/Vector3f; DEFAULT_SCALE e field_4289 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; deserialize a method_3494 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;Ljava/lang/String;Lorg/joml/Vector3f;)Lorg/joml/Vector3f; getVector3f a method_3493 + p 1 json + p 2 key + p 3 fallback + m ()V + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms ggi net/minecraft/class_809 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; NO_TRANSFORMS a field_4301 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; thirdPersonLeftHand b field_4305 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; thirdPersonRightHand c field_4307 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; firstPersonLeftHand d field_4302 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; firstPersonRightHand e field_4304 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; head f field_4311 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; gui g field_4300 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; ground h field_4303 + f Lnet/minecraft/client/renderer/block/model/ItemTransform; fixed i field_4306 + m (Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3503 + p 1 displayContext + m (Lnet/minecraft/world/item/ItemDisplayContext;)Z hasTransform b method_3501 + p 1 displayContext + m ()V + m (Lnet/minecraft/client/renderer/block/model/ItemTransforms;)V + p 1 transforms + m (Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;Lnet/minecraft/client/renderer/block/model/ItemTransform;)V + p 1 thirdPersonLeftHand + p 2 thirdPersonRightHand + p 3 firstPersonLeftHand + p 4 firstPersonRightHand + p 5 head + p 6 gui + p 7 ground + p 8 fixed + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms$1 ggi$1 net/minecraft/class_809$1 + f [I $SwitchMap$net$minecraft$world$item$ItemDisplayContext a field_4313 + m ()V +c net/minecraft/client/renderer/block/model/ItemTransforms$Deserializer ggi$a net/minecraft/class_809$class_810 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonObject;Lnet/minecraft/world/item/ItemDisplayContext;)Lnet/minecraft/client/renderer/block/model/ItemTransform; getTransform a method_3504 + p 1 deserializationContext + p 2 json + p 3 displayContext + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/ItemTransforms; deserialize a method_3505 + p 1 json + p 2 type + p 3 context + m ()V +c net/minecraft/client/renderer/block/model/MultiVariant ggj net/minecraft/class_807 + f Ljava/util/List; variants a field_4294 + m ()Ljava/util/List; getVariants a method_3497 + m (Ljava/util/function/Function;Lnet/minecraft/resources/ResourceLocation;)V method_45788 a method_45788 + m (Ljava/util/List;)V + p 1 variants +c net/minecraft/client/renderer/block/model/MultiVariant$Deserializer ggj$a net/minecraft/class_807$class_808 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/MultiVariant; deserialize a method_3499 + p 1 json + p 2 type + p 3 context + m ()V +c net/minecraft/client/renderer/block/model/Variant ggk net/minecraft/class_813 + f Lnet/minecraft/resources/ResourceLocation; modelLocation a field_4326 + f Lcom/mojang/math/Transformation; rotation b field_4328 + f Z uvLock c field_4327 + f I weight d field_4325 + m ()Lnet/minecraft/resources/ResourceLocation; getModelLocation a method_3510 + m ()I getWeight d method_3511 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/math/Transformation;ZI)V + p 1 modelLocation + p 2 rotation + p 3 uvLock + p 4 weight +c net/minecraft/client/renderer/block/model/Variant$Deserializer ggk$a net/minecraft/class_813$class_814 + f Z DEFAULT_UVLOCK a field_32810 + f I DEFAULT_WEIGHT b field_32811 + f I DEFAULT_X_ROTATION c field_32812 + f I DEFAULT_Y_ROTATION d field_32813 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/Variant; deserialize a method_3513 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/model/BlockModelRotation; getBlockRotation a method_3515 + p 1 json + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/resources/ResourceLocation; getModel b method_3514 + p 1 json + m (Lcom/google/gson/JsonObject;)I getWeight c method_3517 + p 1 json + m (Lcom/google/gson/JsonObject;)Z getUvLock d method_3516 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/multipart/AndCondition ggl net/minecraft/class_812 + f Ljava/lang/String; TOKEN a field_32814 + f Ljava/lang/Iterable; conditions d field_4324 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3507 a method_3507 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/client/renderer/block/model/multipart/Condition;)Ljava/util/function/Predicate; method_3508 a method_3508 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3506 a method_3506 + m (Ljava/lang/Iterable;)V + p 1 conditions +c net/minecraft/client/renderer/block/model/multipart/Condition ggm net/minecraft/class_815 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; TRUE b field_16900 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; FALSE c field_16901 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16811 a method_16811 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; method_16810 a method_16810 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_16809 b method_16809 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; method_16808 b method_16808 + m ()V +c net/minecraft/client/renderer/block/model/multipart/KeyValueCondition ggn net/minecraft/class_818 + f Lcom/google/common/base/Splitter; PIPE_SPLITTER a field_4334 + f Ljava/lang/String; key d field_4333 + f Ljava/lang/String; value e field_4332 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3527 a method_3527 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/util/function/Predicate; getBlockStatePredicate a method_3525 + p 1 definition + p 2 property + p 3 value + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/util/Optional;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3528 a method_3528 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3524 a method_3524 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/util/function/Predicate; method_3526 b method_3526 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 key + p 2 value + m ()V +c net/minecraft/client/renderer/block/model/multipart/MultiPart ggo net/minecraft/class_816 + f Lnet/minecraft/world/level/block/state/StateDefinition; definition a field_4329 + f Ljava/util/List; selectors b field_4330 + m ()Ljava/util/List; getSelectors a method_3519 + m (Lnet/minecraft/client/renderer/block/model/multipart/Selector;)Ljava/util/stream/Stream; method_3518 a method_3518 + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/block/model/multipart/Selector;)V method_45789 a method_45789 + m ()Ljava/util/Set; getMultiVariants b method_3520 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/util/List;)V + p 1 definition + p 2 selectors +c net/minecraft/client/renderer/block/model/multipart/MultiPart$Deserializer ggo$a net/minecraft/class_816$class_817 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context; context a field_4331 + m (Lcom/google/gson/JsonDeserializationContext;Lcom/google/gson/JsonArray;)Ljava/util/List; getSelectors a method_3522 + p 1 jsonContext + p 2 elements + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/multipart/MultiPart; deserialize a method_3523 + p 1 json + p 2 type + p 3 jsonContext + m (Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;)V + p 1 context +c net/minecraft/client/renderer/block/model/multipart/OrCondition ggp net/minecraft/class_821 + f Ljava/lang/String; TOKEN a field_32815 + f Ljava/lang/Iterable; conditions d field_4337 + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/function/Predicate;)Z method_3539 a method_3539 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/client/renderer/block/model/multipart/Condition;)Ljava/util/function/Predicate; method_3540 a method_3540 + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)Z method_3538 a method_3538 + m (Ljava/lang/Iterable;)V + p 1 conditions +c net/minecraft/client/renderer/block/model/multipart/Selector ggq net/minecraft/class_819 + f Lnet/minecraft/client/renderer/block/model/multipart/Condition; condition a field_4335 + f Lnet/minecraft/client/renderer/block/model/MultiVariant; variant b field_4336 + m ()Lnet/minecraft/client/renderer/block/model/MultiVariant; getVariant a method_3529 + m (Lnet/minecraft/world/level/block/state/StateDefinition;)Ljava/util/function/Predicate; getPredicate a method_3530 + p 1 definition + m (Lnet/minecraft/client/renderer/block/model/multipart/Condition;Lnet/minecraft/client/renderer/block/model/MultiVariant;)V + p 1 condition + p 2 variant +c net/minecraft/client/renderer/block/model/multipart/Selector$Deserializer ggq$a net/minecraft/class_819$class_820 + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; method_3537 a method_3537 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/renderer/block/model/multipart/Selector; deserialize a method_3535 + p 1 json + p 2 type + p 3 context + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getCondition a method_3536 + p 0 json + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getKeyValueCondition a method_3533 + p 0 entry + m (Lcom/google/gson/JsonElement;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; method_3534 b method_3534 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/renderer/block/model/multipart/Condition; getSelector b method_3531 + p 1 json + m ()V +c net/minecraft/client/renderer/block/model/multipart/package-info ggr net/minecraft/class_6248 +c net/minecraft/client/renderer/block/model/package-info ggs net/minecraft/class_6249 +c net/minecraft/client/renderer/block/package-info ggt net/minecraft/class_6250 +c net/minecraft/client/renderer/blockentity/BannerRenderer ggu net/minecraft/class_823 + f Ljava/lang/String; FLAG a field_32816 + f I BANNER_WIDTH b field_32817 + f I BANNER_HEIGHT c field_32818 + f I MAX_PATTERNS d field_32819 + f Ljava/lang/String; POLE e field_32820 + f Ljava/lang/String; BAR f field_32821 + f Lnet/minecraft/client/model/geom/ModelPart; flag g field_20810 + f Lnet/minecraft/client/model/geom/ModelPart; pole h field_20811 + f Lnet/minecraft/client/model/geom/ModelPart; bar i field_20812 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32135 + m (Lnet/minecraft/world/level/block/entity/BannerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3546 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;Lnet/minecraft/world/item/DyeColor;)V renderPatternLayer a method_58140 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 material + p 6 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;ZLnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;)V renderPatterns a method_29999 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 flagMaterial + p 6 banner + c if {@code true}, uses banner material; otherwise if {@code false} uses shield material + p 7 baseColor + p 8 patterns + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/resources/model/Material;ZLnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/entity/BannerPatternLayers;Z)V renderPatterns a method_23802 + p 0 poseStack + p 1 buffer + p 2 packedLight + p 3 packedOverlay + p 4 flagPart + p 5 flagMaterial + p 6 banner + c if {@code true}, uses banner material; otherwise if {@code false} uses shield material + p 7 baseColor + p 8 patterns + p 9 glint + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BeaconRenderer ggv net/minecraft/class_822 + f Lnet/minecraft/resources/ResourceLocation; BEAM_LOCATION a field_4338 + f I MAX_RENDER_Y b field_32822 + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;)Z shouldRenderOffScreen a method_3542 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3541 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BeaconBlockEntity;Lnet/minecraft/world/phys/Vec3;)Z shouldRender a method_33891 + p 1 blockEntity + p 2 cameraPos + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFFFF)V addVertex a method_23076 + p 0 pose + p 1 consumer + p 2 color + p 3 y + p 4 x + p 5 z + p 6 u + p 7 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFFFFFFF)V renderQuad a method_22740 + p 0 pose + p 1 consumer + p 2 color + p 3 minY + p 4 maxY + p 5 minX + p 6 minZ + p 7 maxX + p 8 maxZ + p 9 minU + p 10 maxU + p 11 minV + p 12 maxV + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFFFFFFFFFFF)V renderPart a method_22741 + p 0 poseStack + p 1 consumer + p 2 color + p 3 minY + p 4 maxY + p 5 x1 + p 6 z1 + p 7 x2 + p 8 z2 + p 9 x3 + p 10 z3 + p 11 x4 + p 12 z4 + p 13 minU + p 14 maxU + p 15 minV + p 16 maxV + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;FJIII)V renderBeaconBeam a method_3543 + p 0 poseStack + p 1 bufferSource + p 2 partialTick + p 3 gameTime + p 5 yOffset + p 6 height + p 7 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/resources/ResourceLocation;FFJIIIFF)V renderBeaconBeam a method_3545 + p 0 poseStack + p 1 bufferSource + p 2 beamLocation + p 3 partialTick + p 4 textureScale + p 5 gameTime + p 7 yOffset + p 8 height + p 9 color + p 10 beamRadius + p 11 glowRadius + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/BedRenderer ggw net/minecraft/class_825 + f Lnet/minecraft/client/model/geom/ModelPart; headRoot a field_27744 + f Lnet/minecraft/client/model/geom/ModelPart; footRoot b field_27745 + m (Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Z method_24188 a method_24188 + m (Lnet/minecraft/world/level/block/entity/BedBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3557 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/Material;IIZ)V renderPiece a method_3558 + p 1 poseStack + p 2 bufferSource + p 3 modelPart + p 4 direction + p 5 material + p 6 packedLight + p 7 packedOverlay + p 8 foot + c {@code true} if piece to render is the foot of the bed, {@code false} otherwise or if being rendered by a {@link net.minecraft.client.renderer.BlockEntityWithoutLevelRenderer} + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHeadLayer b method_32136 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createFootLayer c method_32137 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BellRenderer ggx net/minecraft/class_3880 + f Lnet/minecraft/client/resources/model/Material; BELL_RESOURCE_LOCATION a field_17145 + f Ljava/lang/String; BELL_BODY b field_32823 + f Lnet/minecraft/client/model/geom/ModelPart; bellBody c field_20816 + m (Lnet/minecraft/world/level/block/entity/BellBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17139 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer b method_32138 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher ggy net/minecraft/class_824 + f Lnet/minecraft/world/level/Level; level a field_4348 + f Lnet/minecraft/client/Camera; camera b field_4344 + f Lnet/minecraft/world/phys/HitResult; cameraHitResult c field_4350 + f Ljava/util/Map; renderers d field_4345 + f Lnet/minecraft/client/gui/Font; font e field_4342 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModelSet f field_27746 + f Ljava/util/function/Supplier; blockRenderDispatcher g field_27747 + f Ljava/util/function/Supplier; itemRenderer h field_38880 + f Ljava/util/function/Supplier; entityRenderer i field_38881 + m (Lnet/minecraft/world/level/Level;)V setLevel a method_3551 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/HitResult;)V prepare a method_3549 + p 1 level + p 2 camera + p 3 cameraHitResult + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer; getRenderer a method_3550 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V render a method_3555 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)Z renderItem a method_23077 + c @return {@code true} if no renderer was found; otherwise {@code false} if render completed + p 1 blockEntity + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Ljava/lang/Runnable;)V tryRender a method_3554 + p 0 blockEntity + p 1 renderer + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V setupAndRender a method_23079 + p 0 renderer + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V method_23080 a method_23080 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderer;Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V method_23081 b method_23081 + m (Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/model/geom/EntityModelSet;Ljava/util/function/Supplier;Ljava/util/function/Supplier;Ljava/util/function/Supplier;)V + p 1 font + p 2 entityModelSet + p 3 blockRenderDispatcher + p 4 itemRenderer + p 5 entityRenderer +c net/minecraft/client/renderer/blockentity/BlockEntityRenderer ggz net/minecraft/class_827 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Z shouldRenderOffScreen a method_3563 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/BlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3569 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/phys/Vec3;)Z shouldRender a method_33892 + p 1 blockEntity + p 2 cameraPos + m ()I getViewDistance aW_ method_33893 +c net/minecraft/client/renderer/blockentity/BlockEntityRendererProvider gha net/minecraft/class_5614 +c net/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context gha$a net/minecraft/class_5614$class_5615 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderDispatcher a field_27748 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher b field_27749 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer c field_38882 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer d field_38883 + f Lnet/minecraft/client/model/geom/EntityModelSet; modelSet e field_27750 + f Lnet/minecraft/client/gui/Font; font f field_27751 + m ()Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; getBlockEntityRenderDispatcher a method_32139 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32140 + p 1 layerLocation + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderDispatcher b method_32141 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderer c method_43334 + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer d method_43335 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getModelSet e method_32142 + m ()Lnet/minecraft/client/gui/Font; getFont f method_32143 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/gui/Font;)V + p 1 blockEntityRenderDispatcher + p 2 blockRenderDispatcher + p 3 itemRenderer + p 4 entityRenderer + p 5 modelSet + p 6 font +c net/minecraft/client/renderer/blockentity/BlockEntityRenderers ghb net/minecraft/class_5616 + f Ljava/util/Map; PROVIDERS a field_27752 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider;)V method_32145 a method_32145 + m (Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider;)V register a method_32144 + p 0 type + p 1 renderProvider + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)Ljava/util/Map; createEntityRenderers a method_32146 + p 0 context + m ()V + m ()V +c net/minecraft/client/renderer/blockentity/BrightnessCombiner ghc net/minecraft/class_4737 + m ()Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptNone a method_24189 + m (I)I method_24190 a method_24190 + m (Lnet/minecraft/world/level/block/entity/BlockEntity;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptSingle a method_24191 + p 1 single + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntity;)Lit/unimi/dsi/fastutil/ints/Int2IntFunction; acceptDouble a method_24192 + p 1 first + p 2 second + m (Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/world/level/block/entity/BlockEntity;I)I method_24193 a method_24193 + m (I)I method_24194 b method_24194 + m ()V +c net/minecraft/client/renderer/blockentity/BrushableBlockRenderer ghd net/minecraft/class_8189 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_42928 + m (Lnet/minecraft/world/level/block/entity/BrushableBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_49348 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/core/Direction;I)[F translations a method_49349 + p 1 direction + p 2 dustedLevel + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/BrushableBlockRenderer$1 ghd$1 net/minecraft/class_8189$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_42929 + m ()V +c net/minecraft/client/renderer/blockentity/CampfireRenderer ghe net/minecraft/class_3941 + f F SIZE a field_32824 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_38884 + m (Lnet/minecraft/world/level/block/entity/CampfireBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17581 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ChestRenderer ghf net/minecraft/class_826 + f Ljava/lang/String; BOTTOM a field_32825 + f Ljava/lang/String; LID b field_32826 + f Ljava/lang/String; LOCK c field_32827 + f Lnet/minecraft/client/model/geom/ModelPart; lid d field_20817 + f Lnet/minecraft/client/model/geom/ModelPart; bottom e field_20818 + f Lnet/minecraft/client/model/geom/ModelPart; lock f field_20819 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftLid g field_20820 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftBottom h field_20821 + f Lnet/minecraft/client/model/geom/ModelPart; doubleLeftLock i field_20822 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightLid j field_21479 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightBottom k field_21480 + f Lnet/minecraft/client/model/geom/ModelPart; doubleRightLock l field_21481 + f Z xmasTextures m field_4365 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;FII)V render a method_22749 + p 1 poseStack + p 2 consumer + p 3 lidPart + p 4 lockPart + p 5 bottomPart + p 6 lidAngle + p 7 packedLight + p 8 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSingleBodyLayer b method_32147 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createDoubleBodyRightLayer c method_32148 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createDoubleBodyLeftLayer d method_32149 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ConduitRenderer ghg net/minecraft/class_829 + f Lnet/minecraft/client/resources/model/Material; SHELL_TEXTURE a field_4377 + f Lnet/minecraft/client/resources/model/Material; ACTIVE_SHELL_TEXTURE b field_4378 + f Lnet/minecraft/client/resources/model/Material; WIND_TEXTURE c field_4373 + f Lnet/minecraft/client/resources/model/Material; VERTICAL_WIND_TEXTURE d field_4371 + f Lnet/minecraft/client/resources/model/Material; OPEN_EYE_TEXTURE e field_4379 + f Lnet/minecraft/client/resources/model/Material; CLOSED_EYE_TEXTURE f field_4380 + f Lnet/minecraft/client/model/geom/ModelPart; eye g field_20823 + f Lnet/minecraft/client/model/geom/ModelPart; wind h field_20824 + f Lnet/minecraft/client/model/geom/ModelPart; shell i field_20825 + f Lnet/minecraft/client/model/geom/ModelPart; cage j field_20826 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; renderer k field_27753 + m (Lnet/minecraft/world/level/block/entity/ConduitBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_22750 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createEyeLayer b method_32150 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createWindLayer c method_32151 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createShellLayer d method_32152 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createCageLayer e method_32153 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/DecoratedPotRenderer ghh net/minecraft/class_8188 + f Ljava/lang/String; NECK a field_42913 + f Ljava/lang/String; FRONT b field_42914 + f Ljava/lang/String; BACK c field_42915 + f Ljava/lang/String; LEFT d field_42916 + f Ljava/lang/String; RIGHT e field_42917 + f Ljava/lang/String; TOP f field_42918 + f Ljava/lang/String; BOTTOM g field_42919 + f Lnet/minecraft/client/model/geom/ModelPart; neck h field_42920 + f Lnet/minecraft/client/model/geom/ModelPart; frontSide i field_42921 + f Lnet/minecraft/client/model/geom/ModelPart; backSide j field_42922 + f Lnet/minecraft/client/model/geom/ModelPart; leftSide k field_42923 + f Lnet/minecraft/client/model/geom/ModelPart; rightSide l field_42924 + f Lnet/minecraft/client/model/geom/ModelPart; top m field_42925 + f Lnet/minecraft/client/model/geom/ModelPart; bottom n field_42926 + f F WOBBLE_AMPLITUDE o field_46728 + m (Lnet/minecraft/world/level/block/entity/DecoratedPotBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_49344 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/model/geom/ModelPart;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/resources/model/Material;)V renderSide a method_49345 + p 1 modelPart + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 packedOverlay + p 6 material + m (Ljava/util/Optional;)Lnet/minecraft/client/resources/model/Material; getSideMaterial a method_49343 + p 0 item + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBaseLayer b method_49346 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSidesLayer c method_49347 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/EnchantTableRenderer ghi net/minecraft/class_828 + f Lnet/minecraft/client/resources/model/Material; BOOK_LOCATION a field_4369 + c The texture for the book above the enchantment table. + f Lnet/minecraft/client/model/BookModel; bookModel b field_4370 + m (Lnet/minecraft/world/level/block/entity/EnchantingTableBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3571 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/HangingSignRenderer ghj net/minecraft/class_7761 + f Ljava/lang/String; PLANK a field_40522 + f Ljava/lang/String; V_CHAINS b field_40523 + f Ljava/lang/String; NORMAL_CHAINS c field_40516 + f Ljava/lang/String; CHAIN_L_1 d field_40517 + f Ljava/lang/String; CHAIN_L_2 e field_40518 + f Ljava/lang/String; CHAIN_R_1 f field_40519 + f Ljava/lang/String; CHAIN_R_2 g field_40520 + f Ljava/lang/String; BOARD h field_40521 + f F MODEL_RENDER_SCALE i field_44574 + f F TEXT_RENDER_SCALE j field_44575 + f Lnet/minecraft/world/phys/Vec3; TEXT_OFFSET k field_44576 + f Ljava/util/Map; hangingSignModels l field_40524 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/HangingSignRenderer$HangingSignModel; method_45794 a method_45794 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_45796 b method_45796 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createHangingSignLayer e method_45795 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/HangingSignRenderer$HangingSignModel ghj$a net/minecraft/class_7761$class_7762 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_40525 + f Lnet/minecraft/client/model/geom/ModelPart; plank b field_40526 + f Lnet/minecraft/client/model/geom/ModelPart; vChains c field_40527 + f Lnet/minecraft/client/model/geom/ModelPart; normalChains d field_40528 + m (Lnet/minecraft/world/level/block/state/BlockState;)V evaluateVisibleParts a method_45797 + p 1 state + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/blockentity/LecternRenderer ghk net/minecraft/class_3942 + f Lnet/minecraft/client/model/BookModel; bookModel a field_17428 + m (Lnet/minecraft/world/level/block/entity/LecternBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_17582 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/PistonHeadRenderer ghl net/minecraft/class_835 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_4389 + m (Lnet/minecraft/world/level/block/piston/PistonMovingBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3576 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;ZI)V renderBlock a method_3575 + p 1 pos + p 2 state + p 3 poseStack + p 4 bufferSource + p 5 level + p 6 extended + c if {@code true}, checks all sides before rendering via {@link net.minecraft.world.level.block.Block#shouldRenderFace(net.minecraft.world.level.block.state.BlockState, net.minecraft.world.level.BlockGetter, net.minecraft.core.BlockPos, net.minecraft.core.Direction, net.minecraft.core.BlockPos)} + p 7 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/ShulkerBoxRenderer ghm net/minecraft/class_834 + f Lnet/minecraft/client/model/ShulkerModel; model a field_4387 + m (Lnet/minecraft/world/level/block/entity/ShulkerBoxBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3574 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/SignRenderer ghn net/minecraft/class_837 + f Ljava/lang/String; STICK a field_32830 + f I BLACK_TEXT_OUTLINE_COLOR b field_33962 + f I OUTLINE_RENDER_DISTANCE c field_33963 + f F RENDER_SCALE d field_44577 + f Lnet/minecraft/world/phys/Vec3; TEXT_OFFSET e field_44578 + f Ljava/util/Map; signModels f field_27754 + f Lnet/minecraft/client/gui/Font; font g field_27755 + m (ILnet/minecraft/network/chat/Component;)Lnet/minecraft/util/FormattedCharSequence; method_45799 a method_45799 + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_23083 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/SignBlockEntity;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/SignBlock;Lnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/client/model/Model;)V renderSignWithText a method_49920 + p 1 signEntity + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 packedOverlay + p 6 state + p 7 signBlock + p 8 woodType + p 9 model + m (Lnet/minecraft/world/level/block/entity/SignText;)I getDarkColor a method_37311 + p 0 signText + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/resources/model/Material; getSignMaterial a method_45792 + p 1 woodType + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLnet/minecraft/world/level/block/state/BlockState;)V translateSign a method_49918 + p 1 poseStack + p 2 yRot + p 3 state + m (Lcom/mojang/blaze3d/vertex/PoseStack;IILnet/minecraft/client/model/Model;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderSignModel a method_45793 + p 1 poseStack + p 2 packedLight + p 3 packedOverlay + p 4 model + p 5 vertexConsumer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/world/level/block/state/properties/WoodType;Lnet/minecraft/client/model/Model;)V renderSign a method_45800 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 woodType + p 6 model + m (Lcom/mojang/blaze3d/vertex/PoseStack;ZLnet/minecraft/world/phys/Vec3;)V translateSignText a method_49919 + p 1 poseStack + p 2 isFrontText + p 3 offset + m (Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; createSignModel a method_32157 + p 0 entityModelSet + p 1 woodType + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/client/renderer/blockentity/SignRenderer$SignModel; method_32158 a method_32158 + m (Lnet/minecraft/core/BlockPos;I)Z isOutlineVisible a method_37312 + p 0 pos + p 1 textColor + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/entity/SignText;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IIIZ)V renderSignText a method_45798 + p 1 pos + p 2 text + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 lineHeight + p 7 maxWidth + p 8 isFrontText + m ()F getSignModelRenderScale b method_51272 + m (Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; method_32156 b method_32156 + m ()F getSignTextRenderScale c method_51273 + m ()Lnet/minecraft/world/phys/Vec3; getTextOffset d method_45790 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSignLayer f method_32154 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/SignRenderer$SignModel ghn$a net/minecraft/class_837$class_4702 + f Lnet/minecraft/client/model/geom/ModelPart; root a field_27756 + f Lnet/minecraft/client/model/geom/ModelPart; stick b field_21531 + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/blockentity/SkullBlockRenderer gho net/minecraft/class_836 + f Ljava/util/Map; modelByType a field_4391 + f Ljava/util/Map; SKIN_BY_TYPE b field_4390 + m (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/item/component/ResolvableProfile;)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_3578 + p 0 type + p 1 profile + m (Lnet/minecraft/world/level/block/entity/SkullBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3577 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/model/geom/EntityModelSet;)Ljava/util/Map; createSkullRenderers a method_32160 + p 0 entityModelSet + m (Ljava/util/HashMap;)V method_3580 a method_3580 + m (Lnet/minecraft/core/Direction;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/SkullModelBase;Lnet/minecraft/client/renderer/RenderType;)V renderSkull a method_32161 + p 0 direction + p 1 yRot + p 2 mouthAnimation + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 model + p 7 renderType + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/SpawnerRenderer ghp net/minecraft/class_839 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer a field_38885 + m (FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;DD)V renderEntityInSpawner a method_55253 + p 0 partialTick + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 entity + p 5 entityRenderer + p 6 oSpin + p 8 spin + m (Lnet/minecraft/world/level/block/entity/SpawnerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3589 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/StructureBlockRenderer ghq net/minecraft/class_838 + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;)Z shouldRenderOffScreen a method_3588 + p 1 blockEntity + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3587 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderStructureVoids a method_61047 + p 1 blockEntity + p 2 buffer + p 3 poseStack + m (Lnet/minecraft/world/level/block/entity/StructureBlockEntity;Lnet/minecraft/client/renderer/MultiBufferSource;Lcom/mojang/blaze3d/vertex/PoseStack;)V renderInvisibleBlocks a method_3585 + p 1 blockEntity + p 2 bufferSource + p 3 poseStack + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;III)V method_61048 a method_61048 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/StructureBlockRenderer$1 ghq$1 net/minecraft/class_838$1 + f [I $SwitchMap$net$minecraft$world$level$block$Mirror a field_4402 + f [I $SwitchMap$net$minecraft$world$level$block$Rotation b field_4401 + m ()V +c net/minecraft/client/renderer/blockentity/TheEndGatewayRenderer ghr net/minecraft/class_841 + f Lnet/minecraft/resources/ResourceLocation; BEAM_LOCATION c field_4409 + m (Lnet/minecraft/world/level/block/entity/TheEndGatewayBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_22751 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/blockentity/TheEndPortalRenderer ghs net/minecraft/class_840 + f Lnet/minecraft/resources/ResourceLocation; END_SKY_LOCATION a field_4406 + f Lnet/minecraft/resources/ResourceLocation; END_PORTAL_LOCATION b field_4407 + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_3591 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderCube a method_23084 + p 1 blockEntity + p 2 pose + p 3 consumer + m (Lnet/minecraft/world/level/block/entity/TheEndPortalBlockEntity;Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFFFFLnet/minecraft/core/Direction;)V renderFace a method_23085 + p 1 blockEntity + p 2 pose + p 3 consumer + p 4 x0 + p 5 x1 + p 6 y0 + p 7 y1 + p 8 z0 + p 9 z1 + p 10 z2 + p 11 z3 + p 12 direction + m ()F getOffsetUp b method_3594 + m ()F getOffsetDown c method_35793 + m ()Lnet/minecraft/client/renderer/RenderType; renderType d method_34589 + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/blockentity/TrialSpawnerRenderer ght net/minecraft/class_8984 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderer a field_47464 + m (Lnet/minecraft/world/level/block/entity/TrialSpawnerBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_55254 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/VaultRenderer ghu net/minecraft/class_9214 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_48952 + f Lnet/minecraft/util/RandomSource; random b field_48953 + m (FLnet/minecraft/world/level/Level;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/renderer/entity/ItemRenderer;FFLnet/minecraft/util/RandomSource;)V renderItemInside a method_56851 + p 0 partialTick + p 1 level + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 item + p 6 itemRenderer + p 7 previousSpin + p 8 currentSpin + p 9 random + m (Lnet/minecraft/world/level/block/entity/vault/VaultBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V render a method_56852 + p 1 blockEntity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 packedOverlay + m (Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/blockentity/package-info ghv net/minecraft/class_6252 +c net/minecraft/client/renderer/chunk/RenderChunk ghw net/minecraft/class_6849 + f Ljava/util/Map; blockEntities a field_36310 + f Ljava/util/List; sections b field_36311 + f Z debug c field_36312 + f Lnet/minecraft/world/level/chunk/LevelChunk; wrapped d field_36313 + m (III)Ljava/lang/String; method_39961 a method_39961 + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity; getBlockEntity a method_39962 + p 1 pos + m (Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState; getBlockState b method_39963 + p 1 pos + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 wrapped +c net/minecraft/client/renderer/chunk/RenderChunkRegion ghx net/minecraft/class_853 + f I RADIUS a field_52160 + f I SIZE b field_52161 + f [Lnet/minecraft/client/renderer/chunk/RenderChunk; chunks c field_4483 + f Lnet/minecraft/world/level/Level; level d field_4490 + f I minChunkX e field_52162 + f I minChunkZ f field_52163 + m (II)Lnet/minecraft/client/renderer/chunk/RenderChunk; getChunk a method_60898 + p 1 x + p 2 z + m (IIII)I index a method_60899 + p 0 minX + p 1 minZ + p 2 x + p 3 z + m (Lnet/minecraft/world/level/Level;II[Lnet/minecraft/client/renderer/chunk/RenderChunk;)V + p 1 level + p 2 minChunkX + p 3 minChunkZ + p 4 chunks +c net/minecraft/client/renderer/chunk/RenderRegionCache ghy net/minecraft/class_6850 + f Lit/unimi/dsi/fastutil/longs/Long2ObjectMap; chunkInfoCache a field_36314 + m (Lnet/minecraft/world/level/Level;II)Lnet/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo; getChunkInfo a method_60900 + p 1 level + p 2 x + p 3 z + m (Lnet/minecraft/world/level/Level;J)Lnet/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo; method_60901 a method_60901 + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/core/SectionPos;)Lnet/minecraft/client/renderer/chunk/RenderChunkRegion; createRegion a method_39969 + p 1 level + p 2 sectionPos + m ()V +c net/minecraft/client/renderer/chunk/RenderRegionCache$ChunkInfo ghy$a net/minecraft/class_6850$class_6851 + f Lnet/minecraft/world/level/chunk/LevelChunk; chunk a field_36315 + f Lnet/minecraft/client/renderer/chunk/RenderChunk; renderChunk b field_36316 + m ()Lnet/minecraft/world/level/chunk/LevelChunk; chunk a method_39971 + m ()Lnet/minecraft/client/renderer/chunk/RenderChunk; renderChunk b method_39972 + m (Lnet/minecraft/world/level/chunk/LevelChunk;)V + p 1 chunk +c net/minecraft/client/renderer/chunk/SectionCompiler ghz net/minecraft/class_9810 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_52164 + f Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher; blockEntityRenderer b field_52165 + m (Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results;Lnet/minecraft/world/level/block/entity/BlockEntity;)V handleBlockEntity a method_60902 + p 1 results + p 2 blockEntity + m (Ljava/util/Map;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/BufferBuilder; getOrBeginLayer a method_60903 + p 1 bufferLayers + p 2 sectionBufferBuilderPack + p 3 renderType + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/chunk/RenderChunkRegion;Lcom/mojang/blaze3d/vertex/VertexSorting;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results; compile a method_60904 + p 1 sectionPos + p 2 region + p 3 vertexSorting + p 4 sectionBufferBuilderPack + m (Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;)V + p 1 blockRenderer + p 2 blockEntityRenderer +c net/minecraft/client/renderer/chunk/SectionCompiler$Results ghz$a net/minecraft/class_9810$class_9811 + f Ljava/util/List; globalBlockEntities a field_52166 + f Ljava/util/List; blockEntities b field_52167 + f Ljava/util/Map; renderedLayers c field_52168 + f Lnet/minecraft/client/renderer/chunk/VisibilitySet; visibilitySet d field_52169 + f Lcom/mojang/blaze3d/vertex/MeshData$SortState; transparencyState e field_52170 + m ()V release a method_60905 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher gia net/minecraft/class_846 + f I MAX_HIGH_PRIORITY_QUOTA a field_35300 + f Ljava/util/concurrent/PriorityBlockingQueue; toBatchHighPriority b field_35301 + f Ljava/util/Queue; toBatchLowPriority c field_35302 + f I highPriorityQuota d field_35303 + f Ljava/util/Queue; toUpload e field_4443 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPack; fixedBuffers f field_20828 + f Lnet/minecraft/client/renderer/SectionBufferBuilderPool; bufferPool g field_46907 + f I toBatchCount h field_20992 + f Z closed i field_46908 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox j field_20829 + f Ljava/util/concurrent/Executor; executor k field_20830 + f Lnet/minecraft/client/multiplayer/ClientLevel; level l field_20831 + f Lnet/minecraft/client/renderer/LevelRenderer; renderer m field_20832 + f Lnet/minecraft/world/phys/Vec3; camera n field_18766 + f Lnet/minecraft/client/renderer/chunk/SectionCompiler; sectionCompiler o field_52171 + m ()Ljava/lang/String; getStats a method_3622 + m (Lnet/minecraft/world/phys/Vec3;)V setCamera a method_19419 + p 1 camera + m (Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;Lcom/mojang/blaze3d/vertex/VertexBuffer;)Ljava/util/concurrent/CompletableFuture; uploadSectionIndexBuffer a method_60906 + p 1 result + p 2 vertexBuffer + m (Lcom/mojang/blaze3d/vertex/MeshData;Lcom/mojang/blaze3d/vertex/VertexBuffer;)Ljava/util/concurrent/CompletableFuture; uploadSectionLayer a method_3635 + p 1 meshData + p 2 vertexBuffer + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;Lcom/mojang/blaze3d/vertex/ByteBufferBuilder$Result;)V method_60907 a method_60907 + m (Lcom/mojang/blaze3d/vertex/VertexBuffer;Lcom/mojang/blaze3d/vertex/MeshData;)V method_43610 a method_43610 + m (Lnet/minecraft/client/multiplayer/ClientLevel;)V setLevel a method_22752 + p 1 level + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Ljava/lang/Throwable;)V method_22755 a method_22755 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)V schedule a method_22756 + p 1 task + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Ljava/util/concurrent/CompletableFuture; method_22757 a method_22757 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V rebuildSectionSync a method_3627 + p 1 section + p 2 regionCache + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)V method_23618 a method_23618 + m (Ljava/util/concurrent/CompletableFuture;)Ljava/util/concurrent/CompletionStage; method_38555 a method_38555 + m ()I getToBatchCount b method_34845 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)V method_23086 b method_23086 + m ()I getToUpload c method_34846 + m ()I getFreeBufferCount d method_34847 + m ()Lnet/minecraft/world/phys/Vec3; getCameraPosition e method_19420 + m ()V uploadAllPendingUploads f method_22761 + m ()V blockUntilClear g method_3632 + m ()Z isQueueEmpty h method_3630 + m ()V dispose i method_3619 + m ()V runTask j method_22763 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask; pollTask k method_39132 + m ()V clearBatchQueue l method_3633 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/renderer/LevelRenderer;Ljava/util/concurrent/Executor;Lnet/minecraft/client/renderer/RenderBuffers;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;)V + p 1 level + p 2 renderer + p 3 executor + p 4 buffers + p 5 blockRenderer + p 6 blockEntityRenderer +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection gia$a net/minecraft/class_846$class_849 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; UNCOMPILED a field_4451 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; EMPTY b field_52172 + f Ljava/util/Set; hasBlocks c field_4450 + f Ljava/util/List; renderableBlockEntities d field_4456 + f Lnet/minecraft/client/renderer/chunk/VisibilitySet; visibilitySet e field_4455 + f Lcom/mojang/blaze3d/vertex/MeshData$SortState; transparencyState f field_4453 + m ()Z hasNoRenderableLayers a method_3645 + m (Lnet/minecraft/client/renderer/RenderType;)Z isEmpty a method_3641 + p 1 renderType + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z facesCanSeeEachother a method_3650 + p 1 face1 + p 2 face2 + m ()Ljava/util/List; getRenderableBlockEntities b method_3642 + m ()V + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection$1 gia$a$1 net/minecraft/class_846$class_849$1 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection$2 gia$a$2 net/minecraft/class_846$class_849$2 + m ()V +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection gia$b net/minecraft/class_846$class_851 + f I SIZE a field_32832 + f I index b field_29641 + f Ljava/util/concurrent/atomic/AtomicReference; compiled c field_4459 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher; field_20833 d field_20833 + f Ljava/util/concurrent/atomic/AtomicInteger; initialCompilationCancelCount e field_36374 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$RebuildTask; lastRebuildTask f field_20834 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$ResortTransparencyTask; lastResortTransparencyTask g field_4461 + f Ljava/util/Set; globalBlockEntities h field_4457 + f Ljava/util/Map; buffers i field_4462 + f Lnet/minecraft/world/phys/AABB; bb j field_4458 + f Z dirty k field_4464 + f Lnet/minecraft/core/BlockPos$MutableBlockPos; origin l field_4467 + f [Lnet/minecraft/core/BlockPos$MutableBlockPos; relativeOrigins m field_4472 + f Z playerChanged n field_4463 + m ()Z hasAllNeighbors a method_3673 + m (III)V setOrigin a method_3653 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexBuffer; getBuffer a method_3656 + p 1 renderType + m (Lnet/minecraft/client/renderer/RenderType;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;)Z resortTransparency a method_22773 + p 1 renderType + p 2 sectionRenderDispatcher + m (Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask; createCompileTask a method_3674 + p 1 regionCache + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V setCompiled a method_60908 + p 1 compiled + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V rebuildSectionAsync a method_22777 + p 1 sectionRenderDispatcher + p 2 regionCache + m (Ljava/util/Collection;)V updateGlobalBlockEntities a method_22778 + p 1 blockEntities + m (Lnet/minecraft/core/BlockPos;)Z doesChunkExistAt a method_3651 + p 1 pos + m (Lnet/minecraft/core/Direction;)Lnet/minecraft/core/BlockPos; getRelativeOrigin a method_3676 + p 1 direction + m (Z)V setDirty a method_3654 + p 1 playerChanged + m ([Lnet/minecraft/core/BlockPos$MutableBlockPos;)V method_3660 a method_3660 + m ()Lnet/minecraft/world/phys/AABB; getBoundingBox b method_40051 + m (III)Z isAxisAlignedWith b method_52841 + p 1 x + p 2 y + p 3 z + m (Lnet/minecraft/client/renderer/RenderType;)Lcom/mojang/blaze3d/vertex/VertexBuffer; method_22779 b method_22779 + m (Lnet/minecraft/client/renderer/chunk/RenderRegionCache;)V compileSync b method_22781 + p 1 regionCache + m ()D getDistToPlayerSqr c method_3668 + m (Lnet/minecraft/client/renderer/RenderType;)Lnet/minecraft/client/renderer/RenderType; method_22780 c method_22780 + m ()Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; getCompiled d method_3677 + m ()V releaseBuffers e method_3659 + m ()Lnet/minecraft/core/BlockPos; getOrigin f method_3670 + m ()V setNotDirty g method_3662 + m ()Z isDirty h method_3672 + m ()Z isDirtyFromPlayer i method_3661 + m ()Z cancelTasks j method_3663 + m ()V reset k method_3675 + m ()Lcom/mojang/blaze3d/vertex/VertexSorting; createVertexSorting l method_60909 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher;IIII)V + p 2 index + p 3 originX + p 4 originY + p 5 originZ +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask gia$b$a net/minecraft/class_846$class_851$class_4577 + f D distAtCreation a field_20835 + f Ljava/util/concurrent/atomic/AtomicBoolean; isCancelled b field_20836 + f Z isHighPriority c field_35304 + m ()V cancel a method_22782 + m (Lnet/minecraft/client/renderer/SectionBufferBuilderPack;)Ljava/util/concurrent/CompletableFuture; doTask a method_22783 + p 1 sectionBufferBuilderPack + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$CompileTask;)I compareTo a method_22784 + p 1 other + m ()Ljava/lang/String; name b method_38556 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DZ)V + p 1 renderSection + p 2 distAtCreation + p 4 isHighPriority +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$RebuildTask gia$b$b net/minecraft/class_846$class_851$class_4578 + f Lnet/minecraft/client/renderer/chunk/RenderChunkRegion; region d field_20838 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; field_20839 e field_20839 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;Ljava/util/List;Ljava/lang/Throwable;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_23619 a method_23619 + m (Ljava/util/List;Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/MeshData;)V method_22788 a method_22788 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DLnet/minecraft/client/renderer/chunk/RenderChunkRegion;Z)V + p 2 distAtCreation + p 4 region + p 5 isHighPriority +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection$ResortTransparencyTask gia$b$c net/minecraft/class_846$class_851$class_4579 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection; field_20840 d field_20840 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection; compiledSection e field_20841 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult;Ljava/lang/Throwable;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_22789 a method_22789 + m (Ljava/lang/Void;)Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; method_22790 a method_22790 + m (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection;DLnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V + p 2 distAtCreation + p 4 compiledSection +c net/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult gia$c net/minecraft/class_846$class_4690 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; SUCCESSFUL a field_21438 + f Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; CANCELLED b field_21439 + f [Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; $VALUES c field_21440 + m ()[Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$SectionTaskResult; $values a method_36923 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/renderer/chunk/VisGraph gib net/minecraft/class_852 + f I SIZE_IN_BITS a field_32833 + f I LEN b field_32834 + f I MASK c field_32835 + f I SIZE d field_32836 + f I X_SHIFT e field_32837 + f I Z_SHIFT f field_32838 + f I Y_SHIFT g field_32839 + f I DX h field_4477 + f I DZ i field_4476 + f I DY j field_4475 + f I INVALID_INDEX k field_32840 + f [Lnet/minecraft/core/Direction; DIRECTIONS l field_4479 + f Ljava/util/BitSet; bitSet m field_4478 + f [I INDEX_OF_EDGES n field_4474 + f I empty o field_4473 + m ()Lnet/minecraft/client/renderer/chunk/VisibilitySet; resolve a method_3679 + m (I)Ljava/util/Set; floodFill a method_3687 + p 1 index + m (III)I getIndex a method_3681 + p 0 x + p 1 y + p 2 z + m (ILjava/util/Set;)V addEdges a method_3684 + p 1 index + p 2 faces + m (ILnet/minecraft/core/Direction;)I getNeighborIndexAtFace a method_3685 + p 1 index + p 2 face + m (Lnet/minecraft/core/BlockPos;)V setOpaque a method_3682 + p 1 pos + m ([I)V method_3680 a method_3680 + m (Lnet/minecraft/core/BlockPos;)I getIndex b method_3683 + p 0 pos + m ()V + m ()V +c net/minecraft/client/renderer/chunk/VisGraph$1 gib$1 net/minecraft/class_852$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_4480 + m ()V +c net/minecraft/client/renderer/chunk/VisibilitySet gic net/minecraft/class_854 + f I FACINGS a field_4491 + f Ljava/util/BitSet; data b field_4492 + m (Ljava/util/Set;)V add a method_3693 + p 1 faces + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;)Z visibilityBetween a method_3695 + p 1 face + p 2 otherFace + m (Lnet/minecraft/core/Direction;Lnet/minecraft/core/Direction;Z)V set a method_3692 + p 1 face + p 2 otherFace + p 3 visible + m (Z)V setAll a method_3694 + p 1 visible + m ()V + m ()V +c net/minecraft/client/renderer/chunk/package-info gid net/minecraft/class_6253 +c net/minecraft/client/renderer/culling/Frustum gie net/minecraft/class_4604 + f I OFFSET_STEP a field_34820 + f Lorg/joml/FrustumIntersection; intersection b field_40823 + f Lorg/joml/Matrix4f; matrix c field_40824 + f Lorg/joml/Vector4f; viewVector d field_34821 + f D camX e field_20995 + f D camY f field_20996 + f D camZ g field_20997 + m (DDD)V prepare a method_23088 + p 1 camX + p 3 camY + p 5 camZ + m (DDDDDD)Z cubeInFrustum a method_23089 + p 1 minX + p 3 minY + p 5 minZ + p 7 maxX + p 9 maxY + p 11 maxZ + m (I)Lnet/minecraft/client/renderer/culling/Frustum; offsetToFullyIncludeCameraCube a method_38557 + p 1 offset + m (Lnet/minecraft/world/phys/AABB;)Z isVisible a method_23093 + p 1 aabb + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V calculateFrustum a method_23092 + p 1 frustum + p 2 projection + m (Lorg/joml/Matrix4f;Lorg/joml/Matrix4f;)V + p 1 frustum + p 2 projection + m (Lnet/minecraft/client/renderer/culling/Frustum;)V + p 1 other +c net/minecraft/client/renderer/culling/package-info gif net/minecraft/class_6254 +c net/minecraft/client/renderer/debug/BeeDebugRenderer gig net/minecraft/class_4703 + f Lnet/minecraft/client/Minecraft; minecraft A field_21532 + f Ljava/util/Map; hives B field_21533 + f Ljava/util/Map; beeInfosPerEntity C field_21534 + f Ljava/util/UUID; lastLookedAtUuid D field_21535 + f Z SHOW_GOAL_FOR_ALL_BEES a field_32841 + f Z SHOW_NAME_FOR_ALL_BEES b field_32842 + f Z SHOW_HIVE_FOR_ALL_BEES c field_32843 + f Z SHOW_FLOWER_POS_FOR_ALL_BEES d field_32844 + f Z SHOW_TRAVEL_TICKS_FOR_ALL_BEES e field_32845 + f Z SHOW_PATH_FOR_ALL_BEES f field_32846 + f Z SHOW_GOAL_FOR_SELECTED_BEE g field_32847 + f Z SHOW_NAME_FOR_SELECTED_BEE h field_32848 + f Z SHOW_HIVE_FOR_SELECTED_BEE i field_32849 + f Z SHOW_FLOWER_POS_FOR_SELECTED_BEE j field_32850 + f Z SHOW_TRAVEL_TICKS_FOR_SELECTED_BEE k field_32851 + f Z SHOW_PATH_FOR_SELECTED_BEE l field_32852 + f Z SHOW_HIVE_MEMBERS m field_32853 + f Z SHOW_BLACKLISTS n field_32854 + f I MAX_RENDER_DIST_FOR_HIVE_OVERLAY o field_32855 + f I MAX_RENDER_DIST_FOR_BEE_OVERLAY p field_32856 + f I MAX_TARGETING_DIST q field_32857 + f I HIVE_TIMEOUT r field_32858 + f F TEXT_SCALE s field_32859 + f I WHITE t field_32860 + f I YELLOW u field_32861 + f I ORANGE v field_32862 + f I GREEN w field_32863 + f I GRAY x field_32864 + f I PINK y field_32865 + f I RED z field_32866 + m (I)V removeBeeInfo a method_35794 + p 1 id + m (ILnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z method_35795 a method_35795 + m (JLjava/util/Map$Entry;)Z method_23803 a method_23803 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V addOrUpdateBeeInfo a method_23805 + p 1 beeInfo + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;Lnet/minecraft/core/BlockPos;)Ljava/lang/String; getPosDescription a method_23806 + p 1 beeInfo + p 2 pos + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;)Ljava/util/Set; getHiveMemberNames a method_35796 + p 1 hiveInfo + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;J)V addOrUpdateHiveInfo a method_23807 + p 1 hiveInfo + p 2 lastSeen + m (Lnet/minecraft/world/entity/Entity;)V method_23804 a method_23804 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V doRender a method_23823 + p 1 poseStack + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V renderPath a method_23820 + p 1 poseStack + p 2 buffer + p 3 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;Ljava/util/Collection;)V renderHiveInfo a method_23821 + p 1 poseStack + p 2 buffer + p 3 hiveInfo + p 4 beeUuids + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;II)V renderTextOverHive a method_23815 + p 0 poseStack + p 1 buffer + p 2 text + p 3 hiveInfo + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;II)V renderTextOverPos a method_23816 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightHive a method_23808 + p 0 poseStack + p 1 buffer + p 2 hivePos + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V renderGhostHive a method_23813 + p 1 poseStack + p 2 buffer + p 3 hivePos + p 4 ghostHives + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/Set;)V method_23817 a method_23817 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/Position;ILjava/lang/String;IF)V renderTextOverMob a method_23814 + p 0 poseStack + p 1 buffer + p 2 pos + p 3 layer + p 4 text + p 5 color + p 6 scale + m (Ljava/util/Collection;)Ljava/lang/String; getBeeUuidsAsString a method_23825 + p 0 beeUuids + m (Ljava/util/Map$Entry;)Z method_23953 a method_23953 + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_23818 a method_23818 + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;Lnet/minecraft/core/BlockPos;)V method_24083 a method_24083 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getHiveMembers a method_23822 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z method_23810 a method_23810 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V method_23812 a method_23812 + m (Lnet/minecraft/core/BlockPos;Ljava/util/Map;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BeeDebugRenderer$HiveDebugInfo;)V method_23811 a method_23811 + m ()V clearRemovedBees b method_23952 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z isBeeSelected b method_23827 + p 1 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderFlowerInfos b method_23826 + p 1 poseStack + p 2 buffer + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V renderBeeInfo b method_23824 + p 1 poseStack + p 2 buffer + p 3 beeInfo + m (Ljava/util/Map;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_24082 b method_24082 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/List; method_30109 b method_30109 + m ()V clearRemovedHives c method_23819 + m (Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)Z isPlayerCloseEnoughToMob c method_23829 + p 1 beeInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BeeDebugPayload$BeeInfo;)V method_23831 c method_23831 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Set; method_30110 c method_30110 + m ()Ljava/util/Map; createHiveBlacklistMap d method_24084 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Set; method_30111 d method_30111 + m ()Lnet/minecraft/client/Camera; getCamera e method_23828 + m ()Ljava/util/Map; getGhostHives f method_23830 + m ()V updateLastLookedAtUuid g method_23832 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/BeeDebugRenderer$HiveDebugInfo gig$a net/minecraft/class_4703$class_8682 + f Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; info a comp_1622 + f J lastSeen b comp_1623 + m ()Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo; info a comp_1622 + m ()J lastSeen b comp_1623 + m (Lnet/minecraft/network/protocol/common/custom/HiveDebugPayload$HiveInfo;J)V +c net/minecraft/client/renderer/debug/BrainDebugRenderer gih net/minecraft/class_4207 + f F TEXT_SCALE A field_32897 + f I WHITE B field_32898 + f I YELLOW C field_32867 + f I CYAN D field_32868 + f I GREEN E field_32869 + f I GRAY F field_32870 + f I PINK G field_32871 + f I RED H field_32872 + f I ORANGE I field_32873 + f Lnet/minecraft/client/Minecraft; minecraft J field_18786 + f Ljava/util/Map; pois K field_18787 + f Ljava/util/Map; brainDumpsPerEntity L field_18921 + f Ljava/util/UUID; lastLookedAtUuid M field_18922 + f Lorg/slf4j/Logger; LOGGER a field_18920 + f Z SHOW_NAME_FOR_ALL b field_32874 + f Z SHOW_PROFESSION_FOR_ALL c field_32875 + f Z SHOW_BEHAVIORS_FOR_ALL d field_32876 + f Z SHOW_ACTIVITIES_FOR_ALL e field_32877 + f Z SHOW_INVENTORY_FOR_ALL f field_32878 + f Z SHOW_GOSSIPS_FOR_ALL g field_32879 + f Z SHOW_PATH_FOR_ALL h field_32880 + f Z SHOW_HEALTH_FOR_ALL i field_32881 + f Z SHOW_WANTS_GOLEM_FOR_ALL j field_32882 + f Z SHOW_ANGER_LEVEL_FOR_ALL k field_38346 + f Z SHOW_NAME_FOR_SELECTED l field_32883 + f Z SHOW_PROFESSION_FOR_SELECTED m field_32884 + f Z SHOW_BEHAVIORS_FOR_SELECTED n field_32885 + f Z SHOW_ACTIVITIES_FOR_SELECTED o field_32886 + f Z SHOW_MEMORIES_FOR_SELECTED p field_32887 + f Z SHOW_INVENTORY_FOR_SELECTED q field_32888 + f Z SHOW_GOSSIPS_FOR_SELECTED r field_32889 + f Z SHOW_PATH_FOR_SELECTED s field_32890 + f Z SHOW_HEALTH_FOR_SELECTED t field_32891 + f Z SHOW_WANTS_GOLEM_FOR_SELECTED u field_32892 + f Z SHOW_ANGER_LEVEL_FOR_SELECTED v field_38347 + f Z SHOW_POI_INFO w field_32893 + f I MAX_RENDER_DIST_FOR_BRAIN_INFO x field_32894 + f I MAX_RENDER_DIST_FOR_POI_INFO y field_32895 + f I MAX_TARGETING_DIST z field_32896 + m (I)V removeBrainDump a method_35797 + p 1 id + m (ILnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_35798 a method_35798 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V addOrUpdateBrainDump a method_19432 + p 1 brainDump + m (Lnet/minecraft/world/entity/Entity;)V method_23126 a method_23126 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)V method_23148 a method_23148 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;DDD)V renderPath a method_23136 + p 1 poseStack + p 2 buffer + p 3 brainDump + p 4 x + p 6 y + p 8 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V renderPoiInfo a method_23137 + p 1 poseStack + p 2 buffer + p 3 poiInfo + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;II)V renderTextOverPoi a method_23133 + p 0 poseStack + p 1 buffer + p 2 text + p 3 poiInfo + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;II)V renderTextOverPos a method_23134 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 layer + p 5 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightPoi a method_23138 + p 0 poseStack + p 1 buffer + p 2 pos + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V renderGhostPoi a method_23131 + p 1 poseStack + p 2 buffer + p 3 pos + p 4 poiName + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/Position;ILjava/lang/String;IF)V renderTextOverMob a method_23132 + p 0 poseStack + p 1 buffer + p 2 pos + p 3 layer + p 4 text + p 5 color + p 6 scale + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V addPoi a method_19701 + p 1 poiInfo + m (Ljava/util/Map$Entry;)Z method_24804 a method_24804 + m (Lnet/minecraft/core/BlockPos;)V removePoi a method_19434 + p 1 pos + m (Lnet/minecraft/core/BlockPos;I)V setFreeTicketCount a method_19702 + p 1 pos + p 2 freeTicketCount + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_29384 a method_29384 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)V method_23128 a method_23128 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Ljava/util/List;)V method_23129 a method_23129 + m ()V clearRemovedEntities b method_24805 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z isMobSelected b method_23145 + p 1 brainDump + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V doRender b method_23135 + p 1 poseStack + p 2 buffer + p 3 x + p 5 y + p 7 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;DDD)V renderBrainInfo b method_23140 + p 1 poseStack + p 2 buffer + p 3 brainDump + p 4 x + p 6 y + p 8 z + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)Ljava/util/Set; getTicketHolderNames b method_23141 + p 1 poiInfo + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getTicketHolders b method_23142 + p 1 pos + m (Lnet/minecraft/core/BlockPos;Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z method_23127 b method_23127 + m ()Ljava/util/Map; getGhostPois c method_23144 + m (Lnet/minecraft/network/protocol/common/custom/BrainDebugPayload$BrainDump;)Z isPlayerCloseEnoughToMob c method_23147 + p 1 brainDump + m (Lnet/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo;)Ljava/util/Set; getPotentialTicketHolderNames c method_29385 + p 1 poiInfo + m (Lnet/minecraft/core/BlockPos;)Ljava/util/Collection; getPotentialTicketHolders c method_29386 + p 1 pos + m ()V updateLastLookedAtUuid d method_23146 + m (Lnet/minecraft/core/BlockPos;)Ljava/util/List; method_30112 d method_30112 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/BrainDebugRenderer$PoiInfo gih$a net/minecraft/class_4207$class_4233 + f Lnet/minecraft/core/BlockPos; pos a field_18931 + f Ljava/lang/String; type b field_18932 + f I freeTicketCount c field_18933 + m (Lnet/minecraft/core/BlockPos;Ljava/lang/String;I)V + p 1 pos + p 2 type + p 3 freeTicketCount +c net/minecraft/client/renderer/debug/BreezeDebugRenderer gii net/minecraft/class_8985 + f I JUMP_TARGET_LINE_COLOR a field_47465 + f I TARGET_LINE_COLOR b field_47466 + f I INNER_CIRCLE_COLOR c field_47467 + f I MIDDLE_CIRCLE_COLOR d field_47468 + f I OUTER_CIRCLE_COLOR e field_47469 + f I CIRCLE_VERTICES f field_47470 + f F SEGMENT_SIZE_RADIANS g field_47471 + f Lnet/minecraft/client/Minecraft; minecraft h field_47472 + f Ljava/util/Map; perEntity i field_47473 + m ()V clear a method_55255 + m (ILorg/joml/Matrix4f;DDDLcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/Vec3;FI)V drawCircleVertex a method_55256 + p 0 index + p 1 pose + p 2 xOffset + p 4 yOffset + p 6 zOffset + p 8 consumer + p 9 circleCenter + p 10 radius + p 11 color + m (Lnet/minecraft/network/protocol/common/custom/BreezeDebugPayload$BreezeInfo;)V add a method_55266 + p 1 breeze + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/phys/Vec3; method_55257 a method_55257 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Z method_55258 a method_55258 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V render a method_55259 + p 1 poseStack + p 2 buffer + p 3 xOffset + p 5 yOffset + p 7 zOffset + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/world/phys/Vec3;)V method_55260 a method_55260 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;Lnet/minecraft/core/BlockPos;)V method_55261 a method_55261 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;I)V drawLine a method_55262 + p 0 poseStack + p 1 buffer + p 2 xOffset + p 4 yOffset + p 6 zOffset + p 8 fromPos + p 9 toPos + p 10 color + m (Lnet/minecraft/client/player/LocalPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/monster/breeze/Breeze;)V method_55263 a method_55263 + m (Lnet/minecraft/client/player/LocalPlayer;Ljava/lang/Integer;)Lnet/minecraft/world/entity/Entity; method_55264 a method_55264 + m (Lorg/joml/Matrix4f;DDDLcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/phys/Vec3;FI)V drawCircle a method_55265 + p 0 pose + p 1 xOffset + p 3 yOffset + p 5 zOffset + p 7 consumer + p 8 pos + p 9 radius + p 10 color + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/ChunkBorderRenderer gij net/minecraft/class_862 + f Lnet/minecraft/client/Minecraft; minecraft a field_4516 + f I CELL_BORDER b field_35557 + f I YELLOW c field_35558 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft + m ()V +c net/minecraft/client/renderer/debug/ChunkDebugRenderer gik net/minecraft/class_860 + f Lnet/minecraft/client/Minecraft; minecraft a field_4509 + f D lastUpdateTime b field_4510 + f I radius c field_4511 + f Lnet/minecraft/client/renderer/debug/ChunkDebugRenderer$ChunkData; data d field_20998 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/ChunkDebugRenderer$ChunkData gik$a net/minecraft/class_860$class_4605 + f Ljava/util/Map; clientData a field_21000 + f Ljava/util/concurrent/CompletableFuture; serverData b field_21001 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/resources/ResourceKey;II)Ljava/util/Map; method_23096 a method_23096 + m (Lnet/minecraft/client/renderer/debug/ChunkDebugRenderer;Lnet/minecraft/client/server/IntegratedServer;DD)V + p 2 integratedServer + p 3 x + p 5 z +c net/minecraft/client/renderer/debug/CollisionBoxRenderer gil net/minecraft/class_865 + f Lnet/minecraft/client/Minecraft; minecraft a field_4540 + f D lastUpdateTime b field_4541 + f Ljava/util/List; shapes c field_4542 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/DebugRenderer gim net/minecraft/class_863 + f Lnet/minecraft/client/renderer/debug/PathfindingRenderer; pathfindingRenderer a field_4523 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; waterDebugRenderer b field_4528 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; chunkBorderRenderer c field_4532 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; heightMapRenderer d field_4538 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; collisionBoxRenderer e field_4534 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; supportBlockRenderer f field_44827 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; neighborsUpdateRenderer g field_4535 + f Lnet/minecraft/client/renderer/debug/StructureRenderer; structureRenderer h field_4539 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; lightDebugRenderer i field_4536 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; worldGenAttemptRenderer j field_4537 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; solidFaceRenderer k field_4517 + f Lnet/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer; chunkRenderer l field_4533 + f Lnet/minecraft/client/renderer/debug/BrainDebugRenderer; brainDebugRenderer m field_18777 + f Lnet/minecraft/client/renderer/debug/VillageSectionsDebugRenderer; villageSectionsDebugRenderer n field_22408 + f Lnet/minecraft/client/renderer/debug/BeeDebugRenderer; beeDebugRenderer o field_21547 + f Lnet/minecraft/client/renderer/debug/RaidDebugRenderer; raidDebugRenderer p field_19325 + f Lnet/minecraft/client/renderer/debug/GoalSelectorDebugRenderer; goalSelectorRenderer q field_18778 + f Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer; gameTestDebugRenderer r field_20519 + f Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer; gameEventListenerRenderer s field_28254 + f Lnet/minecraft/client/renderer/debug/LightSectionDebugRenderer; skyLightSectionDebugRenderer t field_44674 + f Lnet/minecraft/client/renderer/debug/BreezeDebugRenderer; breezeDebugRenderer u field_47474 + f Z renderChunkborder v field_4531 + m ()V clear a method_20413 + m (Lnet/minecraft/world/entity/Entity;)Z method_23100 a method_23100 + m (Lnet/minecraft/world/entity/Entity;I)Ljava/util/Optional; getTargetedEntity a method_23101 + p 0 entity + p 1 distance + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;DDD)V render a method_23099 + p 1 poseStack + p 2 bufferSource + p 3 camX + p 5 camY + p 7 camZ + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDDDDFFFF)V renderFilledBox a method_23098 + p 0 poseStack + p 1 bufferSource + p 2 minX + p 4 minY + p 6 minZ + p 8 maxX + p 10 maxY + p 12 maxZ + p 14 red + p 15 green + p 16 blue + p 17 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/AABB;FFFF)V renderFilledBox a method_23102 + p 0 poseStack + p 1 bufferSource + p 2 boundingBox + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDI)V renderFloatingText a method_23105 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDIF)V renderFloatingText a method_23106 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + p 10 scale + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;DDDIFZFZ)V renderFloatingText a method_23107 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 5 y + p 7 z + p 9 color + p 10 scale + p 13 transparent + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;IIII)V renderFloatingText a method_23108 + p 0 poseStack + p 1 bufferSource + p 2 text + p 3 x + p 4 y + p 5 z + p 6 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;FFFF)V renderFilledUnitCube a method_54808 + p 0 poseStack + p 1 bufferSource + p 2 pos + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;FFFFF)V renderFilledBox a method_23103 + p 0 poseStack + p 1 bufferSource + p 2 pos + p 3 scale + p 4 red + p 5 green + p 6 blue + p 7 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;FFFF)V renderFilledBox a method_23104 + p 0 poseStack + p 1 bufferSource + p 2 startPos + p 3 endPos + p 4 red + p 5 green + p 6 blue + p 7 alpha + m ()Z switchRenderChunkborder b method_3713 + c Toggles the {@link #renderChunkborder} value, effectively toggling the {@link #chunkBorderRenderer} on or off.\n\n@return the new, inverted value + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/DebugRenderer$SimpleDebugRenderer gim$a net/minecraft/class_863$class_864 + m ()V clear a method_20414 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDD)V render a method_23109 + p 1 poseStack + p 2 bufferSource + p 3 camX + p 5 camY + p 7 camZ +c net/minecraft/client/renderer/debug/GameEventListenerRenderer gin net/minecraft/class_5739 + f Lnet/minecraft/client/Minecraft; minecraft a field_28255 + f I LISTENER_RENDER_DIST b field_32899 + f F BOX_HEIGHT c field_32900 + f Ljava/util/List; trackedGameEvents d field_28256 + f Ljava/util/List; trackedListeners e field_28257 + m (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V trackGameEvent a method_33087 + p 1 gameEvent + p 2 position + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener;)Z method_33086 a method_33086 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V trackListener a method_33088 + p 1 listenerSource + p 2 listenerRange + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLnet/minecraft/world/phys/Vec3;)V method_33090 a method_33090 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/AABB;FFFF)V renderFilledBox a method_33089 + p 0 poseStack + p 1 buffer + p 2 boundingBox + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/phys/Vec3;)V method_33092 a method_33092 + m (Lnet/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLnet/minecraft/world/phys/Vec3;)V method_33091 a method_33091 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedGameEvent gin$a net/minecraft/class_5739$class_5740 + f J timeStamp a comp_678 + f Lnet/minecraft/resources/ResourceKey; gameEvent b comp_679 + f Lnet/minecraft/world/phys/Vec3; position c comp_680 + m ()Z isExpired a method_33093 + m ()J timeStamp b comp_678 + m ()Lnet/minecraft/resources/ResourceKey; gameEvent c comp_679 + m ()Lnet/minecraft/world/phys/Vec3; position d comp_680 + m (JLnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/phys/Vec3;)V +c net/minecraft/client/renderer/debug/GameEventListenerRenderer$TrackedListener gin$b net/minecraft/class_5739$class_5741 + f Lnet/minecraft/world/level/gameevent/PositionSource; listenerSource a field_28261 + f I listenerRange b field_28262 + m (Lnet/minecraft/world/level/Level;)Ljava/util/Optional; getPosition a method_33094 + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/Vec3;)Z isExpired a method_33095 + p 1 level + p 2 pos + m (Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;)Z method_42601 a method_42601 + m (Lnet/minecraft/world/level/gameevent/PositionSource;I)V + p 1 listenerSource + p 2 listenerRange +c net/minecraft/client/renderer/debug/GameTestDebugRenderer gio net/minecraft/class_4503 + f F PADDING a field_32901 + f Ljava/util/Map; markers b field_20520 + m (JLjava/util/Map$Entry;)Z method_23110 a method_23110 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker;)V renderMarker a method_23111 + p 1 poseStack + p 2 buffer + p 3 pos + p 4 marker + m (Lnet/minecraft/core/BlockPos;ILjava/lang/String;I)V addMarker a method_22123 + p 1 pos + p 2 color + p 3 text + p 4 removeAfter + c how long after the current time to remove this marker, in milliseconds + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;Lnet/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker;)V method_49048 b method_49048 + m ()V +c net/minecraft/client/renderer/debug/GameTestDebugRenderer$Marker gio$a net/minecraft/class_4503$class_4504 + f I color a field_20521 + f Ljava/lang/String; text b field_20522 + f J removeAtTime c field_20523 + m ()F getR a method_23112 + m ()F getG b method_23113 + m ()F getB c method_23114 + m ()F getA d method_23115 + m (ILjava/lang/String;J)V + p 1 color + p 2 text + p 3 removeAtTime +c net/minecraft/client/renderer/debug/GoalSelectorDebugRenderer gip net/minecraft/class_4205 + f I MAX_RENDER_DIST a field_32902 + f Lnet/minecraft/client/Minecraft; minecraft b field_18780 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; goalSelectors c field_18781 + m (I)V removeGoalSelector a method_35799 + p 1 mobId + m (ILnet/minecraft/core/BlockPos;Ljava/util/List;)V addGoalSelector a method_19430 + p 1 mobId + p 2 entityPos + p 3 goals + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/GoalSelectorDebugRenderer$EntityGoalInfo gip$a net/minecraft/class_4205$class_8683 + f Lnet/minecraft/core/BlockPos; entityPos a comp_1624 + f Ljava/util/List; goals b comp_1625 + m ()Lnet/minecraft/core/BlockPos; entityPos a comp_1624 + m ()Ljava/util/List; goals b comp_1625 + m (Lnet/minecraft/core/BlockPos;Ljava/util/List;)V +c net/minecraft/client/renderer/debug/HeightMapRenderer giq net/minecraft/class_867 + f Lnet/minecraft/client/Minecraft; minecraft a field_4613 + f I CHUNK_DIST b field_32903 + f F BOX_HEIGHT c field_32904 + m (Lnet/minecraft/world/level/levelgen/Heightmap$Types;)Lorg/joml/Vector3f; getColor a method_27037 + p 1 types + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/HeightMapRenderer$1 giq$1 net/minecraft/class_867$1 + f [I $SwitchMap$net$minecraft$world$level$levelgen$Heightmap$Types a field_23778 + m ()V +c net/minecraft/client/renderer/debug/LightDebugRenderer gir net/minecraft/class_866 + f Lnet/minecraft/client/Minecraft; minecraft a field_4612 + f I MAX_RENDER_DIST b field_32905 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/LightSectionDebugRenderer gis net/minecraft/class_8520 + f Ljava/time/Duration; REFRESH_INTERVAL a field_44675 + f I RADIUS b field_44676 + f Lorg/joml/Vector4f; LIGHT_AND_BLOCKS_COLOR c field_44677 + f Lorg/joml/Vector4f; LIGHT_ONLY_COLOR d field_44678 + f Lnet/minecraft/client/Minecraft; minecraft e field_44679 + f Lnet/minecraft/world/level/LightLayer; lightLayer f field_44680 + f Ljava/time/Instant; lastUpdateTime g field_44681 + f Lnet/minecraft/client/renderer/debug/LightSectionDebugRenderer$SectionData; data h field_44682 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/SectionPos;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLorg/joml/Vector4f;)V renderFaces a method_51457 + p 0 poseStack + p 1 shape + p 2 pos + p 3 buffer + p 4 camX + p 6 camY + p 8 camZ + p 10 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape;Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLorg/joml/Vector4f;)V renderEdges a method_51458 + p 0 poseStack + p 1 shape + p 2 pos + p 3 bufferSource + p 4 camX + p 6 camY + p 8 camZ + p 10 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDIIIIIILorg/joml/Vector4f;)V renderEdge a method_51459 + p 0 poseStack + p 1 buffer + p 2 camX + p 4 camY + p 6 camZ + p 8 x1 + p 9 y1 + p 10 z1 + p 11 x2 + p 12 y2 + p 13 z2 + p 14 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/core/Direction;DDDIIILorg/joml/Vector4f;)V renderFace a method_51460 + p 0 poseStack + p 1 buffer + p 2 face + p 3 camX + p 5 camY + p 7 camZ + p 9 blockX + p 10 blockY + p 11 blockZ + p 12 color + m (Lnet/minecraft/core/SectionPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;DDDLorg/joml/Vector4f;Lnet/minecraft/core/Direction;III)V method_51461 a method_51461 + m (Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/MultiBufferSource;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLorg/joml/Vector4f;IIIIII)V method_51462 a method_51462 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/LightLayer;)V + p 1 minecraft + p 2 lightLayer + m ()V +c net/minecraft/client/renderer/debug/LightSectionDebugRenderer$SectionData gis$a net/minecraft/class_8520$class_8521 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; lightAndBlocksShape a field_44684 + f Lnet/minecraft/world/phys/shapes/DiscreteVoxelShape; lightShape b field_44685 + f Lnet/minecraft/core/SectionPos; minPos c field_44686 + m (Lnet/minecraft/world/level/lighting/LevelLightEngine;Lnet/minecraft/core/SectionPos;ILnet/minecraft/world/level/LightLayer;)V + p 1 levelLightEngine + p 2 pos + p 3 radius + p 4 lightLayer +c net/minecraft/client/renderer/debug/NeighborsUpdateRenderer git net/minecraft/class_869 + f Lnet/minecraft/client/Minecraft; minecraft a field_4622 + f Ljava/util/Map; lastUpdate b field_4623 + m (JLnet/minecraft/core/BlockPos;)V addUpdate a method_3870 + p 1 gameTime + p 3 pos + m (Ljava/lang/Long;)Ljava/util/Map; method_30113 a method_30113 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/PathfindingRenderer giu net/minecraft/class_868 + f Ljava/util/Map; pathMap a field_4616 + f Ljava/util/Map; pathMaxDist b field_4617 + f Ljava/util/Map; creationMap c field_4615 + f J TIMEOUT d field_32906 + f F MAX_RENDER_DIST e field_32907 + f Z SHOW_OPEN_CLOSED f field_32908 + f Z SHOW_OPEN_CLOSED_COST_MALUS g field_32909 + f Z SHOW_OPEN_CLOSED_NODE_TYPE_WITH_TEXT h field_32910 + f Z SHOW_OPEN_CLOSED_NODE_TYPE_WITH_BOX i field_32911 + f Z SHOW_GROUND_LABELS j field_32912 + f F TEXT_SCALE k field_32913 + m (ILnet/minecraft/world/level/pathfinder/Path;F)V addPath a method_3869 + p 1 entityId + p 2 path + p 3 maxDistanceToWaypoint + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/pathfinder/Path;DDD)V renderPathLine a method_23117 + p 0 poseStack + p 1 consumer + p 2 path + p 3 x + p 5 y + p 7 z + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/pathfinder/Path;FZZDDD)V renderPath a method_23118 + p 0 poseStack + p 1 buffer + p 2 path + p 6 x + p 8 y + p 10 z + m (Lnet/minecraft/core/BlockPos;DDD)F distanceToCamera a method_23119 + p 0 pos + p 1 x + p 3 y + p 5 z + m ()V +c net/minecraft/client/renderer/debug/RaidDebugRenderer giv net/minecraft/class_4304 + f I MAX_RENDER_DIST a field_32914 + f F TEXT_SCALE b field_32915 + f Lnet/minecraft/client/Minecraft; minecraft c field_19326 + f Ljava/util/Collection; raidCenters d field_19327 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/lang/String;Lnet/minecraft/core/BlockPos;I)V renderTextOverBlock a method_23123 + p 0 poseStack + p 1 buffer + p 2 text + p 3 pos + p 4 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/BlockPos;)V highlightRaidCenter a method_23122 + p 0 poseStack + p 1 buffer + p 2 pos + m (Ljava/util/Collection;)V setRaidCenters a method_20561 + p 1 raidCenters + m ()Lnet/minecraft/client/Camera; getCamera b method_23125 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/SolidFaceRenderer giw net/minecraft/class_871 + f Lnet/minecraft/client/Minecraft; minecraft a field_4628 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/StructureRenderer gix net/minecraft/class_870 + f Lnet/minecraft/client/Minecraft; minecraft a field_4624 + f Ljava/util/Map; postMainBoxes b field_4626 + f Ljava/util/Map; postPieces c field_4627 + f I MAX_RENDER_DIST d field_32916 + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Map; method_52842 a method_52842 + m (Lnet/minecraft/world/level/levelgen/structure/BoundingBox;Ljava/util/List;Lnet/minecraft/resources/ResourceKey;)V addBoundingBox a method_3871 + p 1 boundingBox + p 2 pieces + p 3 dimension + m (Lnet/minecraft/resources/ResourceKey;)Ljava/util/Map; method_52843 b method_52843 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/SupportBlockRenderer giy net/minecraft/class_8560 + f Lnet/minecraft/client/Minecraft; minecraft a field_44828 + f D lastUpdateTime b field_44829 + f Ljava/util/List; surroundEntities c field_44830 + m (Lnet/minecraft/world/entity/Entity;)D getBias a method_51789 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;DDDLnet/minecraft/world/entity/Entity;Ljava/util/function/DoubleSupplier;FFF)V drawHighlights a method_51790 + p 1 poseStack + p 2 buffer + p 3 camX + p 5 camY + p 7 camZ + p 9 entity + p 10 biasGetter + p 11 red + p 12 green + p 13 blue + m (Ljava/util/function/DoubleSupplier;Lnet/minecraft/world/entity/Entity;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLnet/minecraft/client/renderer/MultiBufferSource;FFFLnet/minecraft/core/BlockPos;)V method_51792 a method_51792 + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;DDDLnet/minecraft/client/renderer/MultiBufferSource;DFFF)V highlightPosition a method_51791 + p 1 pos + p 2 poseStack + p 3 camX + p 5 camY + p 7 camZ + p 9 buffer + p 10 bias + p 12 red + p 13 green + p 14 blue + m ()D method_51793 b method_51793 + m (Lnet/minecraft/world/entity/Entity;)D method_51794 b method_51794 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/VillageSectionsDebugRenderer giz net/minecraft/class_4841 + f I MAX_RENDER_DIST_FOR_VILLAGE_SECTIONS a field_32917 + f Ljava/util/Set; villageSections b field_22409 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/SectionPos;)V highlightVillageSection a method_24810 + p 0 poseStack + p 1 buffer + p 2 pos + m (Lnet/minecraft/core/BlockPos;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/core/SectionPos;)V method_49049 a method_49049 + m (Lnet/minecraft/core/SectionPos;)V setVillageSection a method_24808 + p 1 pos + m (Lnet/minecraft/core/SectionPos;)V setNotVillageSection b method_24809 + p 1 pos + m ()V +c net/minecraft/client/renderer/debug/WaterDebugRenderer gja net/minecraft/class_872 + f Lnet/minecraft/client/Minecraft; minecraft a field_4629 + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/renderer/debug/WorldGenAttemptRenderer gjb net/minecraft/class_873 + f Ljava/util/List; toRender a field_4640 + f Ljava/util/List; scales b field_4635 + f Ljava/util/List; alphas c field_4637 + f Ljava/util/List; reds d field_4639 + f Ljava/util/List; greens e field_4636 + f Ljava/util/List; blues f field_4638 + m (Lnet/minecraft/core/BlockPos;FFFFF)V addPos a method_3872 + p 1 pos + p 2 scale + p 3 red + p 4 green + p 5 blue + p 6 alpha + m ()V +c net/minecraft/client/renderer/debug/package-info gjc net/minecraft/class_6255 +c net/minecraft/client/renderer/entity/AbstractHorseRenderer gjd net/minecraft/class_875 + f F scale a field_4641 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3874 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HorseModel;F)V + p 1 context + p 2 model + p 3 scale +c net/minecraft/client/renderer/entity/AbstractZombieRenderer gje net/minecraft/class_968 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_LOCATION a field_4819 + m (Lnet/minecraft/world/entity/monster/Zombie;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4163 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Zombie;)Z isShaking b method_25449 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/ZombieModel;Lnet/minecraft/client/model/ZombieModel;Lnet/minecraft/client/model/ZombieModel;)V + p 1 context + p 2 model + p 3 innerModel + p 4 outerModel + m ()V +c net/minecraft/client/renderer/entity/AllayRenderer gjf net/minecraft/class_7310 + f Lnet/minecraft/resources/ResourceLocation; ALLAY_TEXTURE a field_38461 + m (Lnet/minecraft/world/entity/animal/allay/Allay;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42744 + m (Lnet/minecraft/world/entity/animal/allay/Allay;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_42745 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArmadilloRenderer gjg net/minecraft/class_9084 + f Lnet/minecraft/resources/ResourceLocation; ARMADILLO_LOCATION a field_47887 + m (Lnet/minecraft/world/entity/animal/armadillo/Armadillo;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55827 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArmorStandRenderer gjh net/minecraft/class_877 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_SKIN_LOCATION a field_4642 + c A constant instance of the armor stand texture, wrapped inside a ResourceLocation wrapper. + m (Lnet/minecraft/world/entity/decoration/ArmorStand;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3880 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/ArmorStand;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3877 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/decoration/ArmorStand;ZZZ)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_24301 + p 1 livingEntity + p 2 bodyVisible + p 3 translucent + p 4 glowing + m (Lnet/minecraft/world/entity/decoration/ArmorStand;)Z shouldShowName b method_3878 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ArrowRenderer gji net/minecraft/class_876 + m (Lnet/minecraft/world/entity/projectile/AbstractArrow;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3875 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIIFFIIII)V vertex a method_23153 + p 1 pose + p 2 consumer + p 3 x + p 4 y + p 5 z + p 6 u + p 7 v + p 8 normalX + p 9 normalY + p 10 normalZ + p 11 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/AxolotlRenderer gjj net/minecraft/class_5774 + f Ljava/util/Map; TEXTURE_BY_TYPE a field_28390 + m (Lnet/minecraft/world/entity/animal/axolotl/Axolotl;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_33306 + m (Ljava/util/HashMap;)V method_33307 a method_33307 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BatRenderer gjk net/minecraft/class_879 + f Lnet/minecraft/resources/ResourceLocation; BAT_LOCATION a field_4645 + m (Lnet/minecraft/world/entity/ambient/Bat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3883 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BeeRenderer gjl net/minecraft/class_4505 + f Lnet/minecraft/resources/ResourceLocation; ANGRY_BEE_TEXTURE a field_20524 + f Lnet/minecraft/resources/ResourceLocation; ANGRY_NECTAR_BEE_TEXTURE i field_20525 + f Lnet/minecraft/resources/ResourceLocation; BEE_TEXTURE j field_20526 + f Lnet/minecraft/resources/ResourceLocation; NECTAR_BEE_TEXTURE k field_20527 + m (Lnet/minecraft/world/entity/animal/Bee;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_22129 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BlazeRenderer gjm net/minecraft/class_878 + f Lnet/minecraft/resources/ResourceLocation; BLAZE_LOCATION a field_4644 + m (Lnet/minecraft/world/entity/monster/Blaze;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3881 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Blaze;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24085 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BoatRenderer gjn net/minecraft/class_881 + f Ljava/util/Map; boatResources a field_27758 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lnet/minecraft/world/entity/vehicle/Boat$Type; method_32162 a method_32162 + m (Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42602 + p 0 type + p 1 chestBoat + m (Lnet/minecraft/world/entity/vehicle/Boat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3891 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/Boat;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3888 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/vehicle/Boat$Type;Z)Lnet/minecraft/client/model/ListModel; createBoatModel a method_42603 + p 1 context + p 2 type + p 3 chestBoat + m (ZLnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/vehicle/Boat$Type;)Lcom/mojang/datafixers/util/Pair; method_32163 a method_32163 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Z)V + p 1 context + p 2 chestBoat +c net/minecraft/client/renderer/entity/BoggedRenderer gjo net/minecraft/class_9255 + f Lnet/minecraft/resources/ResourceLocation; BOGGED_SKELETON_LOCATION a field_49163 + f Lnet/minecraft/resources/ResourceLocation; BOGGED_OUTER_LAYER_LOCATION i field_49164 + m (Lnet/minecraft/world/entity/monster/Bogged;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57803 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/BreezeRenderer gjp net/minecraft/class_8986 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_47475 + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55267 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/breeze/Breeze;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_55829 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/model/BreezeModel;[Lnet/minecraft/client/model/geom/ModelPart;)Lnet/minecraft/client/model/BreezeModel; enable a method_55830 + p 0 model + p 1 parts + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CamelRenderer gjq net/minecraft/class_7763 + f Lnet/minecraft/resources/ResourceLocation; CAMEL_LOCATION a field_40529 + m (Lnet/minecraft/world/entity/animal/camel/Camel;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_45801 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layerLocation + m ()V +c net/minecraft/client/renderer/entity/CatRenderer gjr net/minecraft/class_929 + m (Lnet/minecraft/world/entity/animal/Cat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4078 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Cat;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4079 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/animal/Cat;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_16045 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/CaveSpiderRenderer gjs net/minecraft/class_880 + f Lnet/minecraft/resources/ResourceLocation; CAVE_SPIDER_LOCATION a field_4646 + f F SCALE i field_32918 + m (Lnet/minecraft/world/entity/monster/CaveSpider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3885 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/CaveSpider;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3886 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ChestedHorseRenderer gjt net/minecraft/class_883 + f Ljava/util/Map; MAP a field_4650 + m (Lnet/minecraft/world/entity/animal/horse/AbstractChestedHorse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3894 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FLnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 scale + p 3 layer + m ()V +c net/minecraft/client/renderer/entity/ChickenRenderer gju net/minecraft/class_882 + f Lnet/minecraft/resources/ResourceLocation; CHICKEN_LOCATION a field_4649 + m (Lnet/minecraft/world/entity/animal/Chicken;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3892 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Chicken;F)F getBob a method_3893 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CodRenderer gjv net/minecraft/class_885 + f Lnet/minecraft/resources/ResourceLocation; COD_LOCATION a field_4652 + m (Lnet/minecraft/world/entity/animal/Cod;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3897 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Cod;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3896 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CowRenderer gjw net/minecraft/class_884 + f Lnet/minecraft/resources/ResourceLocation; COW_LOCATION a field_4651 + m (Lnet/minecraft/world/entity/animal/Cow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3895 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/CreeperRenderer gjx net/minecraft/class_887 + f Lnet/minecraft/resources/ResourceLocation; CREEPER_LOCATION a field_4653 + m (Lnet/minecraft/world/entity/monster/Creeper;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3899 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Creeper;F)F getWhiteOverlayProgress a method_23154 + p 1 livingEntity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/Creeper;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3900 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/DisplayRenderer gjy net/minecraft/class_8138 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher a field_42525 + m (Lnet/minecraft/world/entity/Display$RenderState;Lnet/minecraft/world/entity/Display;FLorg/joml/Quaternionf;)Lorg/joml/Quaternionf; calculateOrientation a method_49053 + p 1 renderState + p 2 entity + p 3 partialTick + p 4 quaternion + m (Lnet/minecraft/world/entity/Display;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_49050 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Display;F)F entityYRot a method_52844 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/world/entity/Display;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_49051 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/Display;Ljava/lang/Object;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49052 + p 1 textDisplay + p 2 renderState + p 3 poseStack + p 4 buffer + p 5 lightmapUV + p 6 partialTick + m (Lnet/minecraft/client/Camera;)F cameraYrot a method_52845 + p 0 camera + m (Lnet/minecraft/world/entity/Display;)Ljava/lang/Object; getSubState b method_49921 + p 1 textDisplay + m (Lnet/minecraft/world/entity/Display;F)F entityXRot b method_52846 + p 0 entity + p 1 partialTick + m (Lnet/minecraft/client/Camera;)F cameraXRot b method_52847 + p 0 camera + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/DisplayRenderer$1 gjy$1 net/minecraft/class_8138$1 + f [I $SwitchMap$net$minecraft$world$entity$Display$BillboardConstraints a field_42526 + f [I $SwitchMap$net$minecraft$world$entity$Display$TextDisplay$Align b field_42527 + m ()V +c net/minecraft/client/renderer/entity/DisplayRenderer$BlockDisplayRenderer gjy$a net/minecraft/class_8138$class_8139 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_42528 + m (Lnet/minecraft/world/entity/Display$BlockDisplay;)Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState; getSubState a method_49922 + m (Lnet/minecraft/world/entity/Display$BlockDisplay;Lnet/minecraft/world/entity/Display$BlockDisplay$BlockRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49054 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/DisplayRenderer$ItemDisplayRenderer gjy$b net/minecraft/class_8138$class_8140 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_42529 + m (Lnet/minecraft/world/entity/Display$ItemDisplay;)Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState; getSubState a method_49923 + m (Lnet/minecraft/world/entity/Display$ItemDisplay;Lnet/minecraft/world/entity/Display$ItemDisplay$ItemRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49055 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/DisplayRenderer$TextDisplayRenderer gjy$c net/minecraft/class_8138$class_8141 + f Lnet/minecraft/client/gui/Font; font a field_42531 + m (Lnet/minecraft/world/entity/Display$TextDisplay;)Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState; getSubState a method_49924 + p 1 textDisplay + m (Lnet/minecraft/world/entity/Display$TextDisplay;Lnet/minecraft/world/entity/Display$TextDisplay$TextRenderState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderInner a method_49056 + p 1 textDisplay + p 2 renderState + p 3 poseStack + p 4 buffer + p 5 lightmapUV + p 6 partialTick + m (Lnet/minecraft/network/chat/Component;I)Lnet/minecraft/world/entity/Display$TextDisplay$CachedInfo; splitLines a method_49057 + p 1 text + p 2 maxWidth + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/DolphinRenderer gjz net/minecraft/class_888 + f Lnet/minecraft/resources/ResourceLocation; DOLPHIN_LOCATION a field_4654 + m (Lnet/minecraft/world/entity/animal/Dolphin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3903 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/DragonFireballRenderer gka net/minecraft/class_891 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4661 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21735 + m (Lnet/minecraft/world/entity/projectile/DragonFireball;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3905 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/DragonFireball;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3906 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/DragonFireball;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24086 + p 1 entity + p 2 pos + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;IFIII)V vertex a method_23837 + p 0 consumer + p 1 pose + p 2 packedLight + p 3 x + p 4 y + p 5 u + p 6 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/DrownedRenderer gkb net/minecraft/class_890 + f Lnet/minecraft/resources/ResourceLocation; DROWNED_LOCATION a field_4659 + m (Lnet/minecraft/world/entity/monster/Drowned;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4164 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ElderGuardianRenderer gkc net/minecraft/class_893 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_ELDER_LOCATION a field_4665 + m (Lnet/minecraft/world/entity/monster/Guardian;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3910 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EndCrystalRenderer gkd net/minecraft/class_892 + f Lnet/minecraft/resources/ResourceLocation; END_CRYSTAL_LOCATION a field_4663 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21736 + f F SIN_45 h field_21002 + f Ljava/lang/String; GLASS i field_32919 + f Ljava/lang/String; BASE j field_32920 + f Lnet/minecraft/client/model/geom/ModelPart; cube k field_21003 + f Lnet/minecraft/client/model/geom/ModelPart; glass l field_21004 + f Lnet/minecraft/client/model/geom/ModelPart; base m field_21005 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32164 + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3909 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;F)F getY a method_23155 + p 0 endCrystal + p 1 partialTick + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3908 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/boss/enderdragon/EndCrystal;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3907 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EnderDragonRenderer gke net/minecraft/class_895 + f Lnet/minecraft/resources/ResourceLocation; CRYSTAL_BEAM_LOCATION a field_4668 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_EXPLODING_LOCATION g field_4669 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_LOCATION h field_4670 + f Lnet/minecraft/resources/ResourceLocation; DRAGON_EYES_LOCATION i field_21006 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE j field_21737 + f Lnet/minecraft/client/renderer/RenderType; DECAL k field_21738 + f Lnet/minecraft/client/renderer/RenderType; EYES l field_21739 + f Lnet/minecraft/client/renderer/RenderType; BEAM m field_21740 + f F HALF_SQRT_3 n field_21007 + f Lnet/minecraft/client/renderer/entity/EnderDragonRenderer$DragonModel; model o field_21008 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createBodyLayer a method_32165 + m (FFFFILcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderCrystalBeams a method_3917 + p 0 x + p 1 y + p 2 z + p 3 partialTick + p 4 tickCount + p 5 poseStack + p 6 bufferSource + p 7 packedLight + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3914 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3918 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;FLcom/mojang/blaze3d/vertex/VertexConsumer;)V renderRays a method_61158 + p 0 poseStack + p 1 dragonDeathCompletion + p 2 buffer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EnderDragonRenderer$DragonModel gke$a net/minecraft/class_895$class_625 + f Lnet/minecraft/client/model/geom/ModelPart; head a field_3630 + f Lnet/minecraft/client/model/geom/ModelPart; neck b field_3637 + f Lnet/minecraft/client/model/geom/ModelPart; jaw f field_3631 + f Lnet/minecraft/client/model/geom/ModelPart; body g field_3627 + f Lnet/minecraft/client/model/geom/ModelPart; leftWing h field_3629 + f Lnet/minecraft/client/model/geom/ModelPart; leftWingTip i field_21548 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLeg j field_21549 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontLegTip k field_21550 + f Lnet/minecraft/client/model/geom/ModelPart; leftFrontFoot l field_21551 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearLeg m field_21552 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearLegTip n field_21553 + f Lnet/minecraft/client/model/geom/ModelPart; leftRearFoot o field_21554 + f Lnet/minecraft/client/model/geom/ModelPart; rightWing p field_21555 + f Lnet/minecraft/client/model/geom/ModelPart; rightWingTip q field_3635 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLeg r field_3632 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontLegTip s field_3634 + f Lnet/minecraft/client/model/geom/ModelPart; rightFrontFoot t field_3625 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearLeg u field_3633 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearLegTip w field_3626 + f Lnet/minecraft/client/model/geom/ModelPart; rightRearFoot x field_3628 + f Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon; entity y field_21441 + f F a z field_21442 + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFF)V prepareMobModel a method_23620 + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 partialTick + m (Lnet/minecraft/world/entity/boss/enderdragon/EnderDragon;FFFFF)V setupAnim a method_23621 + c Sets this entity's model rotation angles + p 1 entity + p 2 limbSwing + p 3 limbSwingAmount + p 4 ageInTicks + p 5 netHeadYaw + p 6 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;IIFLnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;I)V renderSide a method_23838 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 packedOverlay + p 5 rotation + p 6 wing + p 7 frontLeg + p 8 frontLegTip + p 9 frontFoot + p 10 rearLeg + p 11 rearLegTip + p 12 rearFoot + p 13 alpha + m (Lnet/minecraft/client/model/geom/ModelPart;)V + p 1 root +c net/minecraft/client/renderer/entity/EndermanRenderer gkf net/minecraft/class_894 + f Lnet/minecraft/resources/ResourceLocation; ENDERMAN_LOCATION a field_4666 + f Lnet/minecraft/util/RandomSource; random i field_4667 + m (Lnet/minecraft/world/entity/monster/EnderMan;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3912 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/EnderMan;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23160 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/EnderMan;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3911 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EndermiteRenderer gkg net/minecraft/class_896 + f Lnet/minecraft/resources/ResourceLocation; ENDERMITE_LOCATION a field_4671 + m (Lnet/minecraft/world/entity/monster/Endermite;)F getFlipDegrees a method_3919 + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/Endermite;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_3920 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EntityRenderDispatcher gkh net/minecraft/class_898 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager a field_4685 + f Lnet/minecraft/client/Camera; camera b field_4686 + f Lnet/minecraft/world/entity/Entity; crosshairPickEntity c field_4678 + f Lnet/minecraft/client/Options; options d field_4692 + f Lnet/minecraft/client/renderer/RenderType; SHADOW_RENDER_TYPE e field_21009 + f F MAX_SHADOW_RADIUS f field_43377 + f F SHADOW_POWER_FALLOFF_Y g field_43378 + f Ljava/util/Map; renderers h field_4696 + f Ljava/util/Map; playerRenderers i field_4687 + c lists the various player skin types with their associated Renderer class instances. + f Lnet/minecraft/world/level/Level; level j field_4684 + f Lorg/joml/Quaternionf; cameraOrientation k field_21794 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer l field_27759 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher m field_38886 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer n field_38887 + f Lnet/minecraft/client/gui/Font; font o field_4689 + f Lnet/minecraft/client/model/geom/EntityModelSet; entityModels p field_27760 + f Z shouldRenderShadow q field_4681 + f Z renderHitBoxes r field_4680 + m ()Z shouldRenderHitBoxes a method_3958 + m (DDD)D distanceToSqr a method_3959 + p 1 x + p 3 y + p 5 z + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/client/renderer/entity/EntityRenderer; getRenderer a method_3953 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;DDDFFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3954 + p 1 entity + p 2 x + p 4 y + p 6 z + p 8 rotationYaw + p 9 partialTicks + p 10 poseStack + p 11 buffer + p 12 packedLight + m (Lnet/minecraft/world/entity/Entity;F)I getPackedLightCoords a method_23839 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3950 + p 1 entity + p 2 frustum + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/level/Level;)V setLevel a method_3944 + c World sets this RenderManager's worldObj to the world provided + p 1 level + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/client/Camera;Lnet/minecraft/world/entity/Entity;)V prepare a method_3941 + p 1 level + p 2 activeRenderInfo + p 3 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFF)V fireVertex a method_23161 + p 0 matrixEntry + p 1 buffer + p 2 x + p 3 y + p 4 z + p 5 texU + p 6 texV + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;IFFFFF)V shadowVertex a method_23162 + p 0 pose + p 1 consumer + p 2 color + p 3 offsetX + p 4 offsetY + p 5 offsetZ + p 6 u + p 7 v + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/level/chunk/ChunkAccess;Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;DDDFF)V renderBlockShadow a method_23163 + p 0 pose + p 1 vertexConsumer + p 2 chunk + p 3 level + p 4 pos + p 5 x + p 7 y + p 9 z + p 11 size + p 12 weight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/MultiBufferSource;)V renderServerSideHitbox a method_61170 + p 0 poseStack + p 1 entity + p 2 bufferSource + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;FFFF)V renderHitbox a method_3956 + p 0 poseStack + p 1 buffer + p 2 entity + p 3 red + p 4 green + p 5 blue + p 6 alpha + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Vector3f;Lnet/minecraft/world/phys/Vec3;I)V renderVector a method_61171 + p 0 poseStack + p 1 buffer + p 2 startPos + p 3 vector + p 4 color + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;FFLnet/minecraft/world/level/LevelReader;F)V renderShadow a method_23166 + p 0 poseStack + p 1 buffer + p 2 entity + p 3 weight + p 4 partialTicks + p 5 level + p 6 size + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;Lorg/joml/Quaternionf;)V renderFlame a method_23165 + p 1 poseStack + p 2 buffer + p 3 entity + p 4 quaternion + m (Lorg/joml/Quaternionf;)V overrideCameraOrientation a method_24196 + p 1 cameraOrientation + m (Z)V setRenderShadow a method_3948 + p 1 renderShadow + m ()Lorg/joml/Quaternionf; cameraOrientation b method_24197 + m (Lnet/minecraft/world/entity/Entity;)D distanceToSqr b method_23168 + p 1 entity + m (Z)V setRenderHitBoxes b method_3955 + p 1 debugBoundingBox + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/entity/Entity; getServerSideEntity c method_61172 + p 0 entity + m ()Lnet/minecraft/client/renderer/ItemInHandRenderer; getItemInHandRenderer d method_43336 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/gui/Font;Lnet/minecraft/client/Options;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 minecraft + p 2 textureManager + p 3 itemRenderer + p 4 blockRenderDispatcher + p 5 font + p 6 options + p 7 entityModels + m ()V +c net/minecraft/client/renderer/entity/EntityRenderer gki net/minecraft/class_897 + f Lnet/minecraft/client/gui/Font; font a field_27761 + f F NAMETAG_SCALE b field_32921 + f I LEASH_RENDER_STEPS c field_52257 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher d field_4676 + f F shadowRadius e field_4673 + f F shadowStrength f field_4672 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3931 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23169 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3936 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 bufferSource + p 6 packedLight + m (Lnet/minecraft/world/entity/Entity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/Entity;)V renderLeash a method_61049 + p 1 entity + p 2 partialTick + p 3 poseStack + p 4 bufferSource + p 5 leashHolder + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3933 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24087 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_3926 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lorg/joml/Matrix4f;FFFIIIIFFFFIZ)V addVertexPair a method_61050 + p 0 buffer + p 1 pose + p 2 startX + p 3 startY + p 4 startZ + p 5 entityBlockLight + p 6 holderBlockLight + p 7 entitySkyLight + p 8 holderSkyLight + p 9 yOffset + p 10 dy + p 11 dx + p 12 dz + p 13 index + p 14 reverse + m ()Lnet/minecraft/client/gui/Font; getFont b method_3932 + c Returns the font renderer from the set render manager + m (Lnet/minecraft/world/entity/Entity;)Z shouldShowName b method_3921 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;F)I getPackedLightCoords b method_24088 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)I getSkyLightLevel b method_27950 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;)F getShadowRadius c method_55831 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/EntityRendererProvider gkj net/minecraft/class_5617 +c net/minecraft/client/renderer/entity/EntityRendererProvider$Context gkj$a net/minecraft/class_5617$class_5618 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; entityRenderDispatcher a field_27762 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_27763 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderDispatcher c field_38888 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer d field_38889 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager e field_27764 + f Lnet/minecraft/client/model/geom/EntityModelSet; modelSet f field_27765 + f Lnet/minecraft/client/gui/Font; font g field_27766 + m ()Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; getEntityRenderDispatcher a method_32166 + m (Lnet/minecraft/client/model/geom/ModelLayerLocation;)Lnet/minecraft/client/model/geom/ModelPart; bakeLayer a method_32167 + p 1 layer + m ()Lnet/minecraft/client/renderer/entity/ItemRenderer; getItemRenderer b method_32168 + m ()Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; getBlockRenderDispatcher c method_43337 + m ()Lnet/minecraft/client/renderer/ItemInHandRenderer; getItemInHandRenderer d method_43338 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager e method_32169 + m ()Lnet/minecraft/client/model/geom/EntityModelSet; getModelSet f method_32170 + m ()Lnet/minecraft/client/resources/model/ModelManager; getModelManager g method_48481 + m ()Lnet/minecraft/client/gui/Font; getFont h method_32171 + m (Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/ItemInHandRenderer;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/gui/Font;)V + p 1 entityRenderDispatcher + p 2 itemRenderer + p 3 blockRenderDispatcher + p 4 itemInHandRenderer + p 5 resourceManager + p 6 modelSet + p 7 font +c net/minecraft/client/renderer/entity/EntityRenderers gkk net/minecraft/class_5619 + f Lorg/slf4j/Logger; LOGGER a field_27767 + f Ljava/util/Map; PROVIDERS b field_27768 + f Ljava/util/Map; PLAYER_PROVIDERS c field_27769 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32197 A method_32197 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32198 B method_32198 + m ()Z validateRegistrations a method_32172 + m (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V register a method_32173 + p 0 entityType + p 1 provider + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V method_32174 a method_32174 + m (Lcom/google/common/collect/ImmutableMap$Builder;Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/resources/PlayerSkin$Model;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V method_32175 a method_32175 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Ljava/util/Map; createEntityRenderers a method_32176 + p 0 context + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Ljava/util/Map; createPlayerRenderers b method_32177 + p 0 context + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32178 c method_32178 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32179 d method_32179 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32180 e method_32180 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_33429 f method_33429 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32181 g method_32181 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32182 h method_32182 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32183 i method_32183 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32184 j method_32184 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32185 k method_32185 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32186 l method_32186 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32187 m method_32187 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32188 n method_32188 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32189 o method_32189 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_33430 p method_33430 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32190 q method_32190 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32191 r method_32191 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32192 s method_32192 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32193 t method_32193 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32194 u method_32194 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32195 v method_32195 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_32196 w method_32196 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_42604 x method_42604 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_45802 y method_45802 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)Lnet/minecraft/client/renderer/entity/EntityRenderer; method_42605 z method_42605 + m ()V + m ()V +c net/minecraft/client/renderer/entity/EvokerFangsRenderer gkl net/minecraft/class_900 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4699 + f Lnet/minecraft/client/model/EvokerFangsModel; model g field_4700 + m (Lnet/minecraft/world/entity/projectile/EvokerFangs;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3963 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/EvokerFangs;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3962 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/EvokerRenderer gkm net/minecraft/class_899 + f Lnet/minecraft/resources/ResourceLocation; EVOKER_ILLAGER a field_4697 + m (Lnet/minecraft/world/entity/monster/SpellcasterIllager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3961 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/EvokerRenderer$1 gkm$1 net/minecraft/class_899$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/SpellcasterIllager;FFFFFF)V render a method_23170 + m (Lnet/minecraft/client/renderer/entity/EvokerRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/ExperienceOrbRenderer gkn net/minecraft/class_902 + f Lnet/minecraft/resources/ResourceLocation; EXPERIENCE_ORB_LOCATION a field_4701 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21741 + m (Lnet/minecraft/world/entity/ExperienceOrb;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3967 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/ExperienceOrb;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3966 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/ExperienceOrb;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24089 + p 1 entity + p 2 pos + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFIIIFFI)V vertex a method_23171 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 red + p 5 green + p 6 blue + p 7 u + p 8 v + p 9 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/FallingBlockRenderer gko net/minecraft/class_901 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; dispatcher a field_38890 + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3964 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/FallingBlockEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3965 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/FireworkEntityRenderer gkp net/minecraft/class_903 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer a field_4703 + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3969 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/FireworkRocketEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3968 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/FishingHookRenderer gkq net/minecraft/class_906 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4707 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21742 + f D VIEW_BOBBING_SCALE h field_33632 + m (FFFLcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FF)V stringVertex a method_23172 + p 0 x + p 1 y + p 2 z + p 3 consumer + p 4 pose + p 5 stringFraction + p 6 nextStringFraction + m (II)F fraction a method_23954 + p 0 numerator + p 1 denominator + m (Lnet/minecraft/world/entity/player/Player;FF)Lnet/minecraft/world/phys/Vec3; getPlayerHandPos a method_59755 + p 1 player + p 3 partialTick + m (Lnet/minecraft/world/entity/projectile/FishingHook;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3975 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/FishingHook;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3974 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;IFIII)V vertex a method_23840 + p 0 consumer + p 1 pose + p 2 packedLight + p 3 x + p 4 y + p 5 u + p 6 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/FoxRenderer gkr net/minecraft/class_4042 + f Lnet/minecraft/resources/ResourceLocation; RED_FOX_TEXTURE a field_18026 + f Lnet/minecraft/resources/ResourceLocation; RED_FOX_SLEEP_TEXTURE i field_18027 + f Lnet/minecraft/resources/ResourceLocation; SNOW_FOX_TEXTURE j field_18028 + f Lnet/minecraft/resources/ResourceLocation; SNOW_FOX_SLEEP_TEXTURE k field_18029 + m (Lnet/minecraft/world/entity/animal/Fox;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_18333 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Fox;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_18334 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/FrogRenderer gks net/minecraft/class_7213 + m (Lnet/minecraft/world/entity/animal/frog/Frog;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_41964 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/GhastRenderer gkt net/minecraft/class_905 + f Lnet/minecraft/resources/ResourceLocation; GHAST_LOCATION a field_4705 + f Lnet/minecraft/resources/ResourceLocation; GHAST_SHOOTING_LOCATION i field_4706 + m (Lnet/minecraft/world/entity/monster/Ghast;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3972 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Ghast;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3973 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/GiantMobRenderer gku net/minecraft/class_908 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_LOCATION a field_4710 + f F scale i field_4711 + m (Lnet/minecraft/world/entity/monster/Giant;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3981 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Giant;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3980 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;F)V + p 1 context + p 2 scale + m ()V +c net/minecraft/client/renderer/entity/GlowSquidRenderer gkv net/minecraft/class_5789 + f Lnet/minecraft/resources/ResourceLocation; GLOW_SQUID_LOCATION a field_28461 + m (Lnet/minecraft/world/entity/GlowSquid;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_33431 + m (Lnet/minecraft/world/entity/GlowSquid;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_33432 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/SquidModel;)V + m ()V +c net/minecraft/client/renderer/entity/GoatRenderer gkw net/minecraft/class_6256 + f Lnet/minecraft/resources/ResourceLocation; GOAT_LOCATION a field_32923 + m (Lnet/minecraft/world/entity/animal/goat/Goat;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_35800 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/GuardianRenderer gkx net/minecraft/class_907 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_LOCATION a field_4708 + f Lnet/minecraft/resources/ResourceLocation; GUARDIAN_BEAM_LOCATION i field_4709 + f Lnet/minecraft/client/renderer/RenderType; BEAM_RENDER_TYPE j field_21743 + m (Lnet/minecraft/world/entity/LivingEntity;DF)Lnet/minecraft/world/phys/Vec3; getPosition a method_3979 + p 1 livingEntity + p 2 yOffset + p 4 partialTick + m (Lnet/minecraft/world/entity/monster/Guardian;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3976 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Guardian;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3977 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Guardian;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_3978 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FFFIIIFF)V vertex a method_23173 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 z + p 5 red + p 6 green + p 7 blue + p 8 u + p 9 v + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FLnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 shadowRadius + p 3 layer + m ()V +c net/minecraft/client/renderer/entity/HoglinRenderer gky net/minecraft/class_4798 + f Lnet/minecraft/resources/ResourceLocation; HOGLIN_LOCATION a field_22244 + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_24472 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/hoglin/Hoglin;)Z isShaking b method_27038 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/HorseRenderer gkz net/minecraft/class_910 + f Ljava/util/Map; LOCATION_BY_VARIANT a field_4714 + m (Lnet/minecraft/world/entity/animal/horse/Horse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3983 + c Returns the location of an entity's texture. + p 1 entity + m (Ljava/util/EnumMap;)V method_27151 a method_27151 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/HumanoidMobRenderer gla net/minecraft/class_909 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HumanoidModel;F)V + p 1 context + p 2 model + p 3 shadowRadius + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/HumanoidModel;FFFF)V + p 1 context + p 2 model + p 3 shadowRadius + p 4 scaleX + p 5 scaleY + p 6 scaleZ +c net/minecraft/client/renderer/entity/HuskRenderer glb net/minecraft/class_912 + f Lnet/minecraft/resources/ResourceLocation; HUSK_LOCATION a field_4716 + m (Lnet/minecraft/world/entity/monster/Zombie;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_3985 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/IllagerRenderer glc net/minecraft/class_3729 + m (Lnet/minecraft/world/entity/monster/AbstractIllager;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_16460 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/IllagerModel;F)V + p 1 context + p 2 model + p 3 shadowRadius +c net/minecraft/client/renderer/entity/IllusionerRenderer gld net/minecraft/class_914 + f Lnet/minecraft/resources/ResourceLocation; ILLUSIONER a field_4718 + m (Lnet/minecraft/world/entity/monster/Illusioner;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3990 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Illusioner;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3991 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Illusioner;)Z isBodyVisible b method_3988 + p 1 livingEntity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/IllusionerRenderer$1 gld$1 net/minecraft/class_914$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Illusioner;FFFFFF)V render a method_17149 + m (Lnet/minecraft/client/renderer/entity/IllusionerRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/IronGolemRenderer gle net/minecraft/class_913 + f Lnet/minecraft/resources/ResourceLocation; GOLEM_LOCATION a field_4717 + m (Lnet/minecraft/world/entity/animal/IronGolem;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3987 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/IronGolem;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_3986 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ItemEntityRenderer glf net/minecraft/class_916 + f F ITEM_BUNDLE_OFFSET_SCALE a field_32924 + f F FLAT_ITEM_BUNDLE_OFFSET_X g field_32929 + f F FLAT_ITEM_BUNDLE_OFFSET_Y h field_32930 + f F FLAT_ITEM_BUNDLE_OFFSET_Z i field_32931 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer j field_4726 + f Lnet/minecraft/util/RandomSource; random k field_4725 + m (I)I getRenderedAmount a method_56855 + p 0 count + m (Lnet/minecraft/world/entity/item/ItemEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3999 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/ItemEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3996 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/item/ItemStack;)I getSeedForItemStack a method_56856 + p 0 stack + m (Lnet/minecraft/client/renderer/entity/ItemRenderer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/util/RandomSource;Lnet/minecraft/world/level/Level;)V renderMultipleFromCount a method_56857 + p 0 itemRenderer + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 item + p 5 random + p 6 level + m (Lnet/minecraft/client/renderer/entity/ItemRenderer;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/resources/model/BakedModel;ZLnet/minecraft/util/RandomSource;)V renderMultipleFromCount a method_56858 + p 0 itemRenderer + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 item + p 5 model + p 6 isGui3d + p 7 random + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/ItemFrameRenderer glg net/minecraft/class_915 + f I GLOW_FRAME_BRIGHTNESS a field_32932 + f I BRIGHT_MAP_LIGHT_ADJUSTMENT g field_32933 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; FRAME_LOCATION h field_4721 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; MAP_FRAME_LOCATION i field_4723 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; GLOW_FRAME_LOCATION j field_28462 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; GLOW_MAP_FRAME_LOCATION k field_28463 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer l field_4720 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer m field_38891 + m (Lnet/minecraft/world/entity/decoration/ItemFrame;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3993 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/ItemFrame;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23174 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/decoration/ItemFrame;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_3994 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/decoration/ItemFrame;II)I getLightVal a method_33433 + p 1 itemFrame + p 2 glowLightVal + p 3 regularLightVal + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/client/resources/model/ModelResourceLocation; getFrameModelResourceLoc a method_33434 + p 1 entity + p 2 item + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_33435 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/decoration/ItemFrame;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_23175 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lnet/minecraft/world/entity/decoration/ItemFrame;)Z shouldShowName b method_23176 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/ItemRenderer glh net/minecraft/class_918 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTED_GLINT_ENTITY a field_43086 + f Lnet/minecraft/resources/ResourceLocation; ENCHANTED_GLINT_ITEM b field_43087 + f I GUI_SLOT_CENTER_X c field_32937 + f I GUI_SLOT_CENTER_Y d field_32938 + f I ITEM_COUNT_BLIT_OFFSET e field_32934 + f F COMPASS_FOIL_UI_SCALE f field_32935 + f F COMPASS_FOIL_FIRST_PERSON_SCALE g field_32936 + f F COMPASS_FOIL_TEXTURE_SCALE h field_41120 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; TRIDENT_IN_HAND_MODEL i field_40530 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; SPYGLASS_IN_HAND_MODEL j field_40531 + f Ljava/util/Set; IGNORED k field_4728 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; TRIDENT_MODEL l field_40532 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; SPYGLASS_MODEL m field_40533 + f Lnet/minecraft/client/Minecraft; minecraft n field_42073 + f Lnet/minecraft/client/renderer/ItemModelShaper; itemModelShaper o field_4732 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager p field_4729 + f Lnet/minecraft/client/color/item/ItemColors; itemColors q field_4733 + f Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer; blockEntityRenderer r field_27770 + m ()Lnet/minecraft/client/renderer/ItemModelShaper; getItemModelShaper a method_4012 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;III)V renderStatic a method_23177 + p 1 entity + p 2 itemStack + p 3 diplayContext + p 4 leftHand + p 5 poseStack + p 6 bufferSource + p 7 level + p 8 combinedLight + p 9 combinedOverlay + p 10 seed + m (Lnet/minecraft/world/item/ItemStack;)Z hasAnimatedTexture a method_51795 + p 0 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;IILcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/level/Level;I)V renderStatic a method_23178 + p 1 stack + p 2 displayContext + p 3 combinedLight + p 4 combinedOverlay + p 5 poseStack + p 6 bufferSource + p 7 level + p 8 seed + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;ZLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IILnet/minecraft/client/resources/model/BakedModel;)V render a method_23179 + p 1 itemStack + p 2 displayContext + p 3 leftHand + p 4 poseStack + p 5 bufferSource + p 6 combinedLight + p 7 combinedOverlay + p 8 model + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/LivingEntity;I)Lnet/minecraft/client/resources/model/BakedModel; getModel a method_4019 + p 1 stack + p 2 level + p 3 entity + p 4 seed + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;Lnet/minecraft/world/item/ItemStack;II)V renderQuadList a method_23180 + p 1 poseStack + p 2 buffer + p 3 quads + p 4 itemStack + p 5 combinedLight + p 6 combinedOverlay + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;)Lcom/mojang/blaze3d/vertex/VertexConsumer; getCompassFoilBuffer a method_30114 + p 0 bufferSource + p 1 renderType + p 2 pose + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;Z)Lcom/mojang/blaze3d/vertex/VertexConsumer; getArmorFoilBuffer a method_27952 + p 0 bufferSource + p 1 renderType + p 2 hasFoil + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;ZZ)Lcom/mojang/blaze3d/vertex/VertexConsumer; getFoilBuffer a method_23181 + p 0 bufferSource + p 1 renderType + p 2 isItem + p 3 glint + m (Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/item/ItemStack;IILcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V renderModelLists a method_23182 + p 1 model + p 2 stack + p 3 combinedLight + p 4 combinedOverlay + p 5 poseStack + p 6 buffer + m (Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/client/renderer/RenderType;ZZ)Lcom/mojang/blaze3d/vertex/VertexConsumer; getFoilBufferDirect b method_29711 + p 0 bufferSource + p 1 renderType + p 2 noEntity + p 3 withGlint + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/resources/model/ModelManager;Lnet/minecraft/client/color/item/ItemColors;Lnet/minecraft/client/renderer/BlockEntityWithoutLevelRenderer;)V + p 1 minecraft + p 2 textureManager + p 3 modelManager + p 4 itemColors + p 5 blockEntityRenderer + m ()V +c net/minecraft/client/renderer/entity/LeashKnotRenderer gli net/minecraft/class_920 + f Lnet/minecraft/resources/ResourceLocation; KNOT_LOCATION a field_4734 + f Lnet/minecraft/client/model/LeashKnotModel; model g field_4735 + m (Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4036 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/LeashFenceKnotEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4035 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/LightningBoltRenderer glj net/minecraft/class_919 + m (Lnet/minecraft/world/entity/LightningBolt;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4033 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/LightningBolt;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4034 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lorg/joml/Matrix4f;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFIFFFFFFFZZZZ)V quad a method_23183 + p 0 matrix + p 1 consumer + p 2 x1 + p 3 z1 + p 4 index + p 5 x2 + p 6 z2 + p 7 red + p 8 green + p 9 blue + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/LivingEntityRenderer glk net/minecraft/class_922 + f Lorg/slf4j/Logger; LOGGER a field_21011 + f Lnet/minecraft/client/model/EntityModel; model g field_4737 + f Ljava/util/List; layers h field_4738 + f F EYE_BED_OFFSET i field_32939 + m (Lnet/minecraft/world/entity/LivingEntity;)Z isShaking a method_25450 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getBob a method_4045 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTick + m (Lnet/minecraft/world/entity/LivingEntity;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4054 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4042 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/LivingEntity;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4058 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/LivingEntity;ZZZ)Lnet/minecraft/client/renderer/RenderType; getRenderType a method_24302 + p 1 livingEntity + p 2 bodyVisible + p 3 translucent + p 4 glowing + m (Lnet/minecraft/client/renderer/entity/layers/RenderLayer;)Z addLayer a method_4046 + p 1 layer + m (Lnet/minecraft/core/Direction;)F sleepDirectionToRotation a method_18656 + p 0 facing + m (Lnet/minecraft/world/entity/LivingEntity;)Z shouldShowName b method_4055 + p 1 entity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getWhiteOverlayProgress b method_23185 + p 1 livingEntity + p 2 partialTicks + m (Lnet/minecraft/world/entity/LivingEntity;)F getFlipDegrees c method_4039 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)I getOverlayCoords c method_23622 + p 0 livingEntity + p 1 u + m (Lnet/minecraft/world/entity/LivingEntity;)Z isBodyVisible d method_4056 + p 1 livingEntity + m (Lnet/minecraft/world/entity/LivingEntity;F)F getAttackAnim d method_4044 + c Returns where in the swing animation the living entity is (from 0 to 1). Args : entity, partialTickTime + p 1 livingBase + p 2 partialTickTime + m (Lnet/minecraft/world/entity/LivingEntity;)Z isEntityUpsideDown e method_38563 + p 0 entity + m (Lnet/minecraft/world/entity/LivingEntity;)F getShadowRadius f method_55832 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/EntityModel;F)V + p 1 context + p 2 model + p 3 shadowRadius + m ()V +c net/minecraft/client/renderer/entity/LivingEntityRenderer$1 glk$1 net/minecraft/class_922$1 + f [I $SwitchMap$net$minecraft$core$Direction a field_18227 + f [I $SwitchMap$net$minecraft$world$scores$Team$Visibility b field_4743 + m ()V +c net/minecraft/client/renderer/entity/LlamaRenderer gll net/minecraft/class_921 + f Lnet/minecraft/resources/ResourceLocation; CREAMY a field_41631 + f Lnet/minecraft/resources/ResourceLocation; WHITE i field_41632 + f Lnet/minecraft/resources/ResourceLocation; BROWN j field_41633 + f Lnet/minecraft/resources/ResourceLocation; GRAY k field_41634 + m (Lnet/minecraft/world/entity/animal/horse/Llama;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4037 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/LlamaRenderer$1 gll$1 net/minecraft/class_921$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$horse$Llama$Variant a field_41635 + m ()V +c net/minecraft/client/renderer/entity/LlamaSpitRenderer glm net/minecraft/class_923 + f Lnet/minecraft/resources/ResourceLocation; LLAMA_SPIT_LOCATION a field_4745 + f Lnet/minecraft/client/model/LlamaSpitModel; model g field_4744 + m (Lnet/minecraft/world/entity/projectile/LlamaSpit;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4062 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/LlamaSpit;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4061 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/MagmaCubeRenderer gln net/minecraft/class_917 + f Lnet/minecraft/resources/ResourceLocation; MAGMACUBE_LOCATION a field_4727 + m (Lnet/minecraft/world/entity/monster/MagmaCube;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4001 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/MagmaCube;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_48302 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/MagmaCube;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4000 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/MagmaCube;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24090 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/MinecartRenderer glo net/minecraft/class_925 + f Lnet/minecraft/client/model/EntityModel; model a field_4747 + f Lnet/minecraft/resources/ResourceLocation; MINECART_LOCATION g field_4746 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer h field_38892 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4065 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4063 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;FLnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderMinecartContents a method_4064 + p 1 entity + p 2 partialTicks + p 3 state + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/MobRenderer glp net/minecraft/class_927 + m (Lnet/minecraft/world/entity/Mob;)Z shouldShowName a method_4071 + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)F getShadowRadius b method_55833 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/EntityModel;F)V + p 1 context + p 2 model + p 3 shadowRadius +c net/minecraft/client/renderer/entity/MushroomCowRenderer glq net/minecraft/class_926 + f Ljava/util/Map; TEXTURES a field_4748 + m (Lnet/minecraft/world/entity/animal/MushroomCow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4066 + c Returns the location of an entity's texture. + p 1 entity + m (Ljava/util/HashMap;)V method_18657 a method_18657 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/NoopRenderer glr net/minecraft/class_6344 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/OcelotRenderer gls net/minecraft/class_3683 + f Lnet/minecraft/resources/ResourceLocation; CAT_OCELOT_LOCATION a field_16259 + m (Lnet/minecraft/world/entity/animal/Ocelot;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_16046 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/OminousItemSpawnerRenderer glt net/minecraft/class_9483 + f F ROTATION_SPEED a field_50231 + f I TICKS_SCALING g field_50232 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer h field_50233 + m (Lnet/minecraft/world/entity/OminousItemSpawner;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_58752 + m (Lnet/minecraft/world/entity/OminousItemSpawner;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_58753 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/PaintingRenderer glu net/minecraft/class_928 + m (Lnet/minecraft/world/entity/decoration/Painting;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4077 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/decoration/Painting;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4075 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack$Pose;Lcom/mojang/blaze3d/vertex/VertexConsumer;FFFFFIIII)V vertex a method_23188 + p 1 pose + p 2 consumer + p 3 x + p 4 y + p 5 u + p 6 v + p 7 z + p 8 normalX + p 9 normalY + p 10 normalZ + p 11 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/decoration/Painting;IILnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V renderPainting a method_4074 + p 1 poseStack + p 2 consumer + p 3 painting + p 4 width + p 5 height + p 6 paintingSprite + p 7 backSprite + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/PandaRenderer glv net/minecraft/class_931 + f Ljava/util/Map; TEXTURES a field_17595 + m (FFIFF)F getAngle a method_4086 + p 1 currentAngle + p 2 nextAngle + p 3 nextRollCounter + p 4 partialTick + p 5 rollEndCount + m (Lnet/minecraft/world/entity/animal/Panda;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4083 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Panda;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4085 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Ljava/util/EnumMap;)V method_17796 a method_17796 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ParrotRenderer glw net/minecraft/class_930 + f Lnet/minecraft/resources/ResourceLocation; RED_BLUE a field_41636 + f Lnet/minecraft/resources/ResourceLocation; BLUE i field_41637 + f Lnet/minecraft/resources/ResourceLocation; GREEN j field_41638 + f Lnet/minecraft/resources/ResourceLocation; YELLOW_BLUE k field_41639 + f Lnet/minecraft/resources/ResourceLocation; GREY l field_41640 + m (Lnet/minecraft/world/entity/animal/Parrot$Variant;)Lnet/minecraft/resources/ResourceLocation; getVariantTexture a method_47906 + p 0 variant + m (Lnet/minecraft/world/entity/animal/Parrot;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4080 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Parrot;F)F getBob a method_4081 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ParrotRenderer$1 glw$1 net/minecraft/class_930$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$Parrot$Variant a field_41641 + m ()V +c net/minecraft/client/renderer/entity/PhantomRenderer glx net/minecraft/class_933 + f Lnet/minecraft/resources/ResourceLocation; PHANTOM_LOCATION a field_4756 + m (Lnet/minecraft/world/entity/monster/Phantom;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4090 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Phantom;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4088 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/Phantom;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4089 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PigRenderer gly net/minecraft/class_932 + f Lnet/minecraft/resources/ResourceLocation; PIG_LOCATION a field_4755 + m (Lnet/minecraft/world/entity/animal/Pig;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4087 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PiglinRenderer glz net/minecraft/class_4842 + f Ljava/util/Map; TEXTURES a field_25793 + f F PIGLIN_CUSTOM_HEAD_SCALE i field_32942 + m (Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/model/geom/ModelLayerLocation;Z)Lnet/minecraft/client/model/PiglinModel; createModel a method_24875 + p 0 modelSet + p 1 layer + p 2 noRightEar + m (Lnet/minecraft/world/entity/Mob;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation c method_3982 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/Mob;)Z isShaking d method_25451 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Z)V + p 1 context + p 2 layer + p 5 noRightEar + m ()V +c net/minecraft/client/renderer/entity/PillagerRenderer gma net/minecraft/class_934 + f Lnet/minecraft/resources/ResourceLocation; PILLAGER a field_4757 + m (Lnet/minecraft/world/entity/monster/Pillager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4092 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PolarBearRenderer gmb net/minecraft/class_937 + f Lnet/minecraft/resources/ResourceLocation; BEAR_LOCATION a field_4766 + m (Lnet/minecraft/world/entity/animal/PolarBear;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4097 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/PolarBear;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4099 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/PufferfishRenderer gmc net/minecraft/class_936 + f Lnet/minecraft/resources/ResourceLocation; PUFFER_LOCATION a field_4762 + f I puffStateO i field_4765 + f Lnet/minecraft/client/model/EntityModel; small j field_4761 + f Lnet/minecraft/client/model/EntityModel; mid k field_4764 + f Lnet/minecraft/client/model/EntityModel; big l field_4763 + m (Lnet/minecraft/world/entity/animal/Pufferfish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4096 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Pufferfish;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4094 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/animal/Pufferfish;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4095 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RabbitRenderer gmd net/minecraft/class_939 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_BROWN_LOCATION a field_4770 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_WHITE_LOCATION i field_4773 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_BLACK_LOCATION j field_4775 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_GOLD_LOCATION k field_4768 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_SALT_LOCATION l field_4774 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_WHITE_SPLOTCHED_LOCATION m field_4772 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_TOAST_LOCATION n field_4771 + f Lnet/minecraft/resources/ResourceLocation; RABBIT_EVIL_LOCATION o field_4769 + m (Lnet/minecraft/world/entity/animal/Rabbit;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4102 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RabbitRenderer$1 gmd$1 net/minecraft/class_939$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$Rabbit$Variant a field_41642 + m ()V +c net/minecraft/client/renderer/entity/RavagerRenderer gme net/minecraft/class_911 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4715 + m (Lnet/minecraft/world/entity/monster/Ravager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3984 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/RenderLayerParent gmf net/minecraft/class_3883 + m ()Lnet/minecraft/client/model/EntityModel; getModel a method_4038 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_3931 + c Returns the location of an entity's texture. + p 1 entity +c net/minecraft/client/renderer/entity/SalmonRenderer gmg net/minecraft/class_938 + f Lnet/minecraft/resources/ResourceLocation; SALMON_LOCATION a field_4767 + m (Lnet/minecraft/world/entity/animal/Salmon;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4101 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Salmon;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4100 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SheepRenderer gmh net/minecraft/class_941 + f Lnet/minecraft/resources/ResourceLocation; SHEEP_LOCATION a field_4778 + m (Lnet/minecraft/world/entity/animal/Sheep;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4106 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ShulkerBulletRenderer gmi net/minecraft/class_940 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4776 + f Lnet/minecraft/client/renderer/RenderType; RENDER_TYPE g field_21744 + f Lnet/minecraft/client/model/ShulkerBulletModel; model h field_4777 + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4105 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4103 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/ShulkerBullet;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24091 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/ShulkerRenderer gmj net/minecraft/class_943 + f Lnet/minecraft/resources/ResourceLocation; DEFAULT_TEXTURE_LOCATION a field_4781 + f [Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION i field_4780 + m (I)[Lnet/minecraft/resources/ResourceLocation; method_22791 a method_22791 + m (Lnet/minecraft/world/entity/monster/Shulker;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4111 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Shulker;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23189 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/world/entity/monster/Shulker;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4114 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/client/renderer/culling/Frustum;DDD)Z shouldRender a method_4112 + p 1 livingEntity + p 2 camera + p 3 camX + p 5 camY + p 7 camZ + m (Lnet/minecraft/world/entity/monster/Shulker;Lnet/minecraft/client/renderer/culling/Frustum;Lnet/minecraft/world/phys/Vec3;)Z method_33436 a method_33436 + m (Lnet/minecraft/world/item/DyeColor;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_37105 + p 0 color + m (Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/resources/ResourceLocation; method_22792 a method_22792 + m (Ljava/lang/String;)Ljava/lang/String; method_60910 a method_60910 + m (Ljava/lang/String;)Ljava/lang/String; method_60911 b method_60911 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SilverfishRenderer gmk net/minecraft/class_942 + f Lnet/minecraft/resources/ResourceLocation; SILVERFISH_LOCATION a field_4779 + m (Lnet/minecraft/world/entity/monster/Silverfish;)F getFlipDegrees a method_4107 + p 1 livingEntity + m (Lnet/minecraft/world/entity/monster/Silverfish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_4108 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SkeletonRenderer gml net/minecraft/class_946 + f Lnet/minecraft/resources/ResourceLocation; SKELETON_LOCATION a field_4785 + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4119 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/AbstractSkeleton;)Z isShaking b method_35801 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 skeletonLayer + p 3 innerModelLayer + p 4 outerModelLayer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/SkeletonModel;)V + p 1 context + p 2 skeletonLayer + p 3 innerModelLayer + p 4 model + m ()V +c net/minecraft/client/renderer/entity/SlimeRenderer gmm net/minecraft/class_945 + f Lnet/minecraft/resources/ResourceLocation; SLIME_LOCATION a field_4784 + m (Lnet/minecraft/world/entity/monster/Slime;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4116 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Slime;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4117 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Slime;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4118 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SnifferRenderer gmn net/minecraft/class_8190 + f Lnet/minecraft/resources/ResourceLocation; SNIFFER_LOCATION a field_42930 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_49350 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SnowGolemRenderer gmo net/minecraft/class_948 + f Lnet/minecraft/resources/ResourceLocation; SNOW_GOLEM_LOCATION a field_4788 + m (Lnet/minecraft/world/entity/animal/SnowGolem;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4122 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/SpectralArrowRenderer gmp net/minecraft/class_947 + f Lnet/minecraft/resources/ResourceLocation; SPECTRAL_ARROW_LOCATION a field_4787 + m (Lnet/minecraft/world/entity/projectile/SpectralArrow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4120 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/SpiderRenderer gmq net/minecraft/class_949 + f Lnet/minecraft/resources/ResourceLocation; SPIDER_LOCATION a field_4789 + m (Lnet/minecraft/world/entity/monster/Spider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4123 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Spider;)F getFlipDegrees b method_4124 + p 1 livingEntity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/SquidRenderer gmr net/minecraft/class_951 + f Lnet/minecraft/resources/ResourceLocation; SQUID_LOCATION a field_4791 + m (Lnet/minecraft/world/entity/animal/Squid;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4127 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Squid;F)F getBob a method_4125 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/world/entity/animal/Squid;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4126 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/SquidModel;)V + p 1 context + p 2 model + m ()V +c net/minecraft/client/renderer/entity/StrayRenderer gms net/minecraft/class_950 + f Lnet/minecraft/resources/ResourceLocation; STRAY_SKELETON_LOCATION a field_4790 + f Lnet/minecraft/resources/ResourceLocation; STRAY_CLOTHES_LOCATION i field_49165 + m (Lnet/minecraft/world/entity/monster/Stray;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57817 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/StriderRenderer gmt net/minecraft/class_4999 + f Lnet/minecraft/resources/ResourceLocation; STRIDER_LOCATION a field_23372 + f Lnet/minecraft/resources/ResourceLocation; COLD_LOCATION i field_23937 + f F SHADOW_RADIUS j field_47888 + m (Lnet/minecraft/world/entity/monster/Strider;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_26421 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Strider;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_56155 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/monster/Strider;)F getShadowRadius b method_55834 + p 1 entity + m (Lnet/minecraft/world/entity/monster/Strider;)Z isShaking c method_26423 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/TadpoleRenderer gmu net/minecraft/class_7214 + f Lnet/minecraft/resources/ResourceLocation; TADPOLE_TEXTURE a field_37969 + m (Lnet/minecraft/world/entity/animal/frog/Tadpole;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_41966 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ThrownItemRenderer gmv net/minecraft/class_953 + f F MIN_CAMERA_DISTANCE_SQUARED a field_32943 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer g field_4792 + f F scale h field_17147 + f Z fullBright i field_21745 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;FZ)V + p 1 context + p 2 scale + p 3 fullBright + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/ThrownTridentRenderer gmw net/minecraft/class_955 + f Lnet/minecraft/resources/ResourceLocation; TRIDENT_LOCATION a field_4796 + f Lnet/minecraft/client/model/TridentModel; model g field_4797 + m (Lnet/minecraft/world/entity/projectile/ThrownTrident;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4134 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/ThrownTrident;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4133 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/TippableArrowRenderer gmx net/minecraft/class_954 + f Lnet/minecraft/resources/ResourceLocation; NORMAL_ARROW_LOCATION a field_4795 + f Lnet/minecraft/resources/ResourceLocation; TIPPED_ARROW_LOCATION g field_4794 + m (Lnet/minecraft/world/entity/projectile/Arrow;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4130 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/TntMinecartRenderer gmy net/minecraft/class_957 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer g field_38893 + m (Lnet/minecraft/world/entity/vehicle/MinecartTNT;FLnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderMinecartContents a method_4137 + p 1 entity + p 2 partialTicks + p 3 state + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/world/level/block/state/BlockState;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IZ)V renderWhiteSolidBlock a method_23190 + p 0 blockRenderDispatcher + p 1 state + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 whiteOverlay + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/TntRenderer gmz net/minecraft/class_956 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38894 + m (Lnet/minecraft/world/entity/item/PrimedTnt;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4136 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/item/PrimedTnt;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4135 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context +c net/minecraft/client/renderer/entity/TropicalFishRenderer gna net/minecraft/class_959 + f Lnet/minecraft/client/model/ColorableHierarchicalModel; modelA a field_4800 + c Breaking recompile intentionally since modelA/B incorrectly mapped. + f Lnet/minecraft/client/model/ColorableHierarchicalModel; modelB i field_4799 + c Breaking recompile intentionally since modelA/B incorrectly mapped. + f Lnet/minecraft/resources/ResourceLocation; MODEL_A_TEXTURE j field_41643 + f Lnet/minecraft/resources/ResourceLocation; MODEL_B_TEXTURE k field_41644 + m (Lnet/minecraft/world/entity/animal/TropicalFish;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4141 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/TropicalFish;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4140 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/animal/TropicalFish;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4142 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/TropicalFishRenderer$1 gna$1 net/minecraft/class_959$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Base a field_41645 + m ()V +c net/minecraft/client/renderer/entity/TurtleRenderer gnb net/minecraft/class_958 + f Lnet/minecraft/resources/ResourceLocation; TURTLE_LOCATION a field_4798 + m (Lnet/minecraft/world/entity/animal/Turtle;)F getShadowRadius a method_55835 + p 1 entity + m (Lnet/minecraft/world/entity/animal/Turtle;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation b method_4139 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/UndeadHorseRenderer gnc net/minecraft/class_961 + f Ljava/util/Map; MAP a field_4803 + m (Lnet/minecraft/world/entity/animal/horse/AbstractHorse;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4145 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 layer + m ()V +c net/minecraft/client/renderer/entity/VexRenderer gnd net/minecraft/class_960 + f Lnet/minecraft/resources/ResourceLocation; VEX_LOCATION a field_4801 + f Lnet/minecraft/resources/ResourceLocation; VEX_CHARGING_LOCATION i field_4802 + m (Lnet/minecraft/world/entity/monster/Vex;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4144 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Vex;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24092 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VillagerRenderer gne net/minecraft/class_963 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_BASE_SKIN a field_4807 + m (Lnet/minecraft/world/entity/npc/Villager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4151 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/npc/Villager;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4149 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/npc/Villager;)F getShadowRadius b method_55836 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VindicatorRenderer gnf net/minecraft/class_962 + f Lnet/minecraft/resources/ResourceLocation; VINDICATOR a field_4804 + m (Lnet/minecraft/world/entity/monster/Vindicator;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4147 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/VindicatorRenderer$1 gnf$1 net/minecraft/class_962$1 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Vindicator;FFFFFF)V render a method_17156 + m (Lnet/minecraft/client/renderer/entity/VindicatorRenderer;Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V +c net/minecraft/client/renderer/entity/WanderingTraderRenderer gng net/minecraft/class_3992 + f Lnet/minecraft/resources/ResourceLocation; VILLAGER_BASE_SKIN a field_17739 + m (Lnet/minecraft/world/entity/npc/WanderingTrader;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_18045 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/npc/WanderingTrader;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_18046 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WardenRenderer gnh net/minecraft/class_7287 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_38349 + f Lnet/minecraft/resources/ResourceLocation; BIOLUMINESCENT_LAYER_TEXTURE i field_38350 + f Lnet/minecraft/resources/ResourceLocation; HEART_TEXTURE j field_38352 + f Lnet/minecraft/resources/ResourceLocation; PULSATING_SPOTS_TEXTURE_1 k field_38353 + f Lnet/minecraft/resources/ResourceLocation; PULSATING_SPOTS_TEXTURE_2 l field_38354 + m (Lnet/minecraft/world/entity/monster/warden/Warden;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_42606 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42607 a method_42607 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42609 b method_42609 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42610 c method_42610 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42611 d method_42611 + m (Lnet/minecraft/world/entity/monster/warden/Warden;FF)F method_42612 e method_42612 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WindChargeRenderer gni net/minecraft/class_8987 + f F MIN_CAMERA_DISTANCE_SQUARED a field_52258 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION g field_47477 + f Lnet/minecraft/client/model/WindChargeModel; model h field_47478 + m (F)F xOffset a method_55268 + p 1 tickCount + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_55269 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/windcharge/AbstractWindCharge;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_55270 + p 1 entity + p 2 entityYaw + p 3 partialTick + p 4 poseStack + p 5 bufferSource + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/WitchRenderer gnj net/minecraft/class_965 + f Lnet/minecraft/resources/ResourceLocation; WITCH_LOCATION a field_4814 + m (Lnet/minecraft/world/entity/monster/Witch;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4154 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/Witch;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4155 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/monster/Witch;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4157 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherBossRenderer gnk net/minecraft/class_964 + f Lnet/minecraft/resources/ResourceLocation; WITHER_INVULNERABLE_LOCATION a field_4812 + f Lnet/minecraft/resources/ResourceLocation; WITHER_LOCATION i field_4813 + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4153 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4152 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/world/entity/boss/wither/WitherBoss;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24093 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherSkeletonRenderer gnl net/minecraft/class_967 + f Lnet/minecraft/resources/ResourceLocation; WITHER_SKELETON_LOCATION a field_4818 + m (Lnet/minecraft/world/entity/monster/WitherSkeleton;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_57818 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/WitherSkeleton;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4161 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/WitherSkullRenderer gnm net/minecraft/class_966 + f Lnet/minecraft/resources/ResourceLocation; WITHER_INVULNERABLE_LOCATION a field_4817 + f Lnet/minecraft/resources/ResourceLocation; WITHER_LOCATION g field_4815 + f Lnet/minecraft/client/model/SkullModel; model h field_4816 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createSkullLayer a method_32199 + m (Lnet/minecraft/world/entity/projectile/WitherSkull;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4160 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/projectile/WitherSkull;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4159 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/world/entity/projectile/WitherSkull;Lnet/minecraft/core/BlockPos;)I getBlockLightLevel a method_24094 + p 1 entity + p 2 pos + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + p 1 context + m ()V +c net/minecraft/client/renderer/entity/WolfRenderer gnn net/minecraft/class_969 + m (Lnet/minecraft/world/entity/animal/Wolf;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4165 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/animal/Wolf;F)F getBob a method_4167 + c Defines what float the third param in setRotationAngles of ModelBase is + p 1 livingBase + p 2 partialTicks + m (Lnet/minecraft/world/entity/animal/Wolf;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4166 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V +c net/minecraft/client/renderer/entity/ZoglinRenderer gno net/minecraft/class_5144 + f Lnet/minecraft/resources/ResourceLocation; ZOGLIN_LOCATION a field_23779 + m (Lnet/minecraft/world/entity/monster/Zoglin;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_27039 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/ZombieRenderer gnp net/minecraft/class_3886 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/client/model/geom/ModelLayerLocation;)V + p 1 context + p 2 zombieLayer + p 3 innerArmor + p 4 outerArmor +c net/minecraft/client/renderer/entity/ZombieVillagerRenderer gnq net/minecraft/class_971 + f Lnet/minecraft/resources/ResourceLocation; ZOMBIE_VILLAGER_LOCATION a field_4835 + m (Lnet/minecraft/world/entity/monster/ZombieVillager;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4175 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/world/entity/monster/ZombieVillager;)Z isShaking b method_25452 + p 1 entity + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;)V + m ()V +c net/minecraft/client/renderer/entity/layers/ArrowLayer gnr net/minecraft/class_973 + f Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher; dispatcher a field_17153 + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 context + p 2 renderer +c net/minecraft/client/renderer/entity/layers/BeeStingerLayer gns net/minecraft/class_4506 + f Lnet/minecraft/resources/ResourceLocation; BEE_STINGER_LOCATION a field_20529 + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;Lcom/mojang/blaze3d/vertex/PoseStack$Pose;FIFFI)V vertex a method_23295 + p 0 consumer + p 1 pose + p 2 x + p 3 y + p 4 u + p 5 v + p 6 packedLight + m (Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/BreezeEyesLayer gnt net/minecraft/class_8988 + f Lnet/minecraft/client/renderer/RenderType; BREEZE_EYES a field_47889 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/breeze/Breeze;FFFFFF)V render a method_55272 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/BreezeWindLayer gnu net/minecraft/class_8989 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_47484 + f Lnet/minecraft/client/model/BreezeModel; model b field_47485 + m (F)F xOffset a method_55273 + p 1 tickCount + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/breeze/Breeze;FFFFFF)V render a method_55275 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 context + p 2 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/CapeLayer gnv net/minecraft/class_972 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;FFFFFF)V render a method_4177 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/CarriedBlockLayer gnw net/minecraft/class_975 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38895 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/EnderMan;FFFFFF)V render a method_4179 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/CatCollarLayer gnx net/minecraft/class_3684 + f Lnet/minecraft/resources/ResourceLocation; CAT_COLLAR_LOCATION a field_16260 + f Lnet/minecraft/client/model/CatModel; catModel b field_16261 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Cat;FFFFFF)V render a method_16047 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/CreeperPowerLayer gny net/minecraft/class_974 + f Lnet/minecraft/resources/ResourceLocation; POWER_LOCATION a field_4842 + f Lnet/minecraft/client/model/CreeperModel; model b field_4844 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/CrossedArmsItemLayer gnz net/minecraft/class_4004 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38896 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_4208 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/CustomHeadLayer goa net/minecraft/class_976 + f F scaleX a field_24474 + f F scaleY b field_24475 + f F scaleZ c field_24476 + f Ljava/util/Map; skullModels d field_27771 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer e field_38897 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17159 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Z)V translateToHead a method_32798 + p 0 poseStack + p 1 isVillager + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 modelSet + p 3 itemInHandRenderer + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;FFFLnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 modelSet + p 3 scaleX + p 4 scaleY + p 5 scaleZ + p 6 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/Deadmau5EarsLayer gob net/minecraft/class_978 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;FFFFFF)V render a method_4181 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/DolphinCarryingItemLayer goc net/minecraft/class_977 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38898 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Dolphin;FFFFFF)V render a method_17160 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/DrownedOuterLayer god net/minecraft/class_980 + f Lnet/minecraft/resources/ResourceLocation; DROWNED_OUTER_LAYER_LOCATION a field_4854 + f Lnet/minecraft/client/model/DrownedModel; model b field_4855 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Drowned;FFFFFF)V render a method_4182 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/ElytraLayer goe net/minecraft/class_979 + f Lnet/minecraft/resources/ResourceLocation; WINGS_LOCATION a field_4850 + f Lnet/minecraft/client/model/ElytraModel; elytraModel b field_4852 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17161 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/EnderEyesLayer gof net/minecraft/class_985 + f Lnet/minecraft/client/renderer/RenderType; ENDERMAN_EYES a field_4876 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/EnergySwirlLayer gog net/minecraft/class_4607 + m ()Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_23201 + m (F)F xOffset a method_23202 + p 1 tickCount + m ()Lnet/minecraft/client/model/EntityModel; model b method_23203 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/EyesLayer goh net/minecraft/class_4606 + m ()Lnet/minecraft/client/renderer/RenderType; renderType a method_23193 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/FoxHeldItemLayer goi net/minecraft/class_4043 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38899 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Fox;FFFFFF)V render a method_18335 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/HorseArmorLayer goj net/minecraft/class_4073 + f Lnet/minecraft/client/model/HorseModel; model a field_18228 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Horse;FFFFFF)V render a method_18658 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/HorseMarkingLayer gok net/minecraft/class_5167 + f Ljava/util/Map; LOCATION_BY_MARKINGS a field_23938 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Horse;FFFFFF)V render a method_27152 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Ljava/util/EnumMap;)V method_27153 a method_27153 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/HumanoidArmorLayer gol net/minecraft/class_970 + f Ljava/util/Map; ARMOR_LOCATION_CACHE a field_4829 + f Lnet/minecraft/client/model/HumanoidModel; innerModel b field_4830 + f Lnet/minecraft/client/model/HumanoidModel; outerModel c field_4831 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; armorTrimAtlas d field_42074 + m (Lnet/minecraft/world/entity/EquipmentSlot;)Lnet/minecraft/client/model/HumanoidModel; getArmorModel a method_4172 + p 1 slot + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17157 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/HumanoidModel;)V renderGlint a method_52224 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 model + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/model/HumanoidModel;ILnet/minecraft/resources/ResourceLocation;)V renderModel a method_23192 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 model + p 5 dyeColor + p 6 textureLocation + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/entity/EquipmentSlot;ILnet/minecraft/client/model/HumanoidModel;)V renderArmorPiece a method_4169 + p 1 poseStack + p 2 bufferSource + p 3 livingEntity + p 4 slot + p 5 packedLight + p 6 model + m (Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/world/entity/EquipmentSlot;)V setPartVisibility a method_4170 + p 1 model + p 2 slot + m (Lnet/minecraft/core/Holder;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/armortrim/ArmorTrim;Lnet/minecraft/client/model/HumanoidModel;Z)V renderTrim a method_48482 + p 1 armorMaterial + p 2 poseStack + p 3 bufferSource + p 4 packedLight + p 5 trim + p 6 model + p 7 innerTexture + m (Lnet/minecraft/world/entity/EquipmentSlot;)Z usesInnerModel b method_4173 + p 1 slot + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/client/model/HumanoidModel;Lnet/minecraft/client/resources/model/ModelManager;)V + p 1 renderer + p 2 innerModel + p 3 outerModel + p 4 modelManager + m ()V +c net/minecraft/client/renderer/entity/layers/HumanoidArmorLayer$1 gol$1 net/minecraft/class_970$1 + f [I $SwitchMap$net$minecraft$world$entity$EquipmentSlot a field_4878 + m ()V +c net/minecraft/client/renderer/entity/layers/IronGolemCrackinessLayer gom net/minecraft/class_4691 + f Ljava/util/Map; resourceLocations a field_21443 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/IronGolem;FFFFFF)V render a method_23623 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/IronGolemFlowerLayer gon net/minecraft/class_986 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38900 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/IronGolem;FFFFFF)V render a method_4188 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/ItemInHandLayer goo net/minecraft/class_989 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38901 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemDisplayContext;Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithItem a method_4192 + p 1 livingEntity + p 2 itemStack + p 3 displayContext + p 4 arm + p 5 poseStack + p 6 buffer + p 7 packedLight + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17162 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/LlamaDecorLayer gop net/minecraft/class_988 + f [Lnet/minecraft/resources/ResourceLocation; TEXTURE_LOCATION a field_4880 + f Lnet/minecraft/resources/ResourceLocation; TRADER_LLAMA b field_17740 + f Lnet/minecraft/client/model/LlamaModel; model c field_4881 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/horse/Llama;FFFFFF)V render a method_4191 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/MushroomCowMushroomLayer goq net/minecraft/class_991 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38902 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/MushroomCow;FFFFFF)V render a method_4195 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IZLnet/minecraft/world/level/block/state/BlockState;ILnet/minecraft/client/resources/model/BakedModel;)V renderMushroomBlock a method_37314 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 outlineOnly + p 5 state + p 6 packedOverlay + p 7 model + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;)V + p 1 renderer + p 2 blockRenderer +c net/minecraft/client/renderer/entity/layers/PandaHoldsItemLayer gor net/minecraft/class_990 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38903 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Panda;FFFFFF)V render a method_4194 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/ParrotOnShoulderLayer gos net/minecraft/class_983 + f Lnet/minecraft/client/model/ParrotModel; model a field_17154 + m (Lnet/minecraft/world/entity/EntityType;)Z method_17957 a method_17957 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/player/Player;FFFFFF)V render a method_4185 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/player/Player;FFFFZ)V render a method_4186 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 netHeadYaw + p 8 headPitch + p 9 leftShoulder + m (Lcom/mojang/blaze3d/vertex/PoseStack;ZLnet/minecraft/world/entity/player/Player;Lnet/minecraft/nbt/CompoundTag;Lnet/minecraft/client/renderer/MultiBufferSource;IFFFFLnet/minecraft/world/entity/EntityType;)V method_17958 a method_17958 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/PhantomEyesLayer got net/minecraft/class_993 + f Lnet/minecraft/client/renderer/RenderType; PHANTOM_EYES a field_4890 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/PlayerItemInHandLayer gou net/minecraft/class_5697 + f Lnet/minecraft/client/renderer/ItemInHandRenderer; itemInHandRenderer a field_38904 + f F X_ROT_MIN b field_32944 + f F X_ROT_MAX c field_32945 + m (Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/HumanoidArm;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V renderArmWithSpyglass a method_32799 + p 1 entity + p 2 stack + p 3 arm + p 4 poseStack + p 5 buffer + p 6 combinedLight + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/RenderLayer gov net/minecraft/class_3887 + f Lnet/minecraft/client/renderer/entity/RenderLayerParent; renderer a field_17155 + m (Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_23194 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;FFFFFF)V render a method_4199 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;I)V renderColoredCutoutModel a method_23199 + p 0 model + p 1 textureLocation + p 2 poseStack + p 3 buffer + p 4 packedLight + p 5 entity + p 6 color + m (Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFFI)V coloredCutoutModelCopyLayerRender a method_23196 + p 0 modelParent + p 1 model + p 2 textureLocation + p 3 poseStack + p 4 buffer + p 5 packedLight + p 6 entity + p 7 limbSwing + p 8 limbSwingAmount + p 9 ageInTicks + p 10 netHeadYaw + p 11 headPitch + p 12 partialTick + p 13 color + m ()Lnet/minecraft/client/model/EntityModel; getParentModel c method_17165 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/SaddleLayer gow net/minecraft/class_992 + f Lnet/minecraft/resources/ResourceLocation; textureLocation a field_4888 + f Lnet/minecraft/client/model/EntityModel; model b field_4887 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/EntityModel;Lnet/minecraft/resources/ResourceLocation;)V + p 1 renderer + p 2 model + p 3 textureLocation +c net/minecraft/client/renderer/entity/layers/SheepFurLayer gox net/minecraft/class_994 + f Lnet/minecraft/resources/ResourceLocation; SHEEP_FUR_LOCATION a field_4892 + f Lnet/minecraft/client/model/SheepFurModel; model b field_4891 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Sheep;FFFFFF)V render a method_4198 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/ShulkerHeadLayer goy net/minecraft/class_944 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/Shulker;FFFFFF)V render a method_4115 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/SkeletonClothingLayer goz net/minecraft/class_1002 + f Lnet/minecraft/client/model/SkeletonModel; layerModel a field_4908 + f Lnet/minecraft/resources/ResourceLocation; clothesLocation b field_49166 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Mob;FFFFFF)V render a method_23204 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;Lnet/minecraft/client/model/geom/ModelLayerLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 renderer + p 2 models + p 3 modelLayerLocation + p 4 clothesLocation +c net/minecraft/client/renderer/entity/layers/SlimeOuterLayer gpa net/minecraft/class_997 + f Lnet/minecraft/client/model/EntityModel; model a field_4895 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_23200 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet +c net/minecraft/client/renderer/entity/layers/SnowGolemHeadLayer gpb net/minecraft/class_996 + f Lnet/minecraft/client/renderer/block/BlockRenderDispatcher; blockRenderer a field_38905 + f Lnet/minecraft/client/renderer/entity/ItemRenderer; itemRenderer b field_38906 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/SnowGolem;FFFFFF)V render a method_4201 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/block/BlockRenderDispatcher;Lnet/minecraft/client/renderer/entity/ItemRenderer;)V + p 1 renderer + p 2 blockRenderer + p 3 itemRenderer +c net/minecraft/client/renderer/entity/layers/SpiderEyesLayer gpc net/minecraft/class_1000 + f Lnet/minecraft/client/renderer/RenderType; SPIDER_EYES a field_4902 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + m ()V +c net/minecraft/client/renderer/entity/layers/SpinAttackEffectLayer gpd net/minecraft/class_998 + f Lnet/minecraft/resources/ResourceLocation; TEXTURE a field_4898 + f Ljava/lang/String; BOX b field_32946 + f Lnet/minecraft/client/model/geom/ModelPart; box c field_21012 + m ()Lnet/minecraft/client/model/geom/builders/LayerDefinition; createLayer a method_32200 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_4203 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/StuckInBodyLayer gpe net/minecraft/class_4507 + m (Lnet/minecraft/world/entity/LivingEntity;)I numStuck a method_22134 + p 1 entity + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/Entity;FFFF)V renderStuckItem a method_22130 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 entity + p 5 x + p 6 y + p 7 z + p 8 partialTick + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_22132 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/LivingEntityRenderer;)V + p 1 renderer +c net/minecraft/client/renderer/entity/layers/TropicalFishPatternLayer gpf net/minecraft/class_1001 + f Lnet/minecraft/resources/ResourceLocation; KOB_TEXTURE a field_41646 + f Lnet/minecraft/resources/ResourceLocation; SUNSTREAK_TEXTURE b field_41647 + f Lnet/minecraft/resources/ResourceLocation; SNOOPER_TEXTURE c field_41648 + f Lnet/minecraft/resources/ResourceLocation; DASHER_TEXTURE d field_41649 + f Lnet/minecraft/resources/ResourceLocation; BRINELY_TEXTURE e field_41650 + f Lnet/minecraft/resources/ResourceLocation; SPOTTY_TEXTURE f field_41651 + f Lnet/minecraft/resources/ResourceLocation; FLOPPER_TEXTURE g field_41652 + f Lnet/minecraft/resources/ResourceLocation; STRIPEY_TEXTURE h field_41653 + f Lnet/minecraft/resources/ResourceLocation; GLITTER_TEXTURE i field_41654 + f Lnet/minecraft/resources/ResourceLocation; BLOCKFISH_TEXTURE j field_41655 + f Lnet/minecraft/resources/ResourceLocation; BETTY_TEXTURE k field_41656 + f Lnet/minecraft/resources/ResourceLocation; CLAYFISH_TEXTURE l field_41657 + f Lnet/minecraft/client/model/TropicalFishModelA; modelA m field_17157 + f Lnet/minecraft/client/model/TropicalFishModelB; modelB n field_4903 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/TropicalFish;FFFFFF)V render a method_4205 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/TropicalFishPatternLayer$1 gpf$1 net/minecraft/class_1001$1 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Base a field_41658 + f [I $SwitchMap$net$minecraft$world$entity$animal$TropicalFish$Pattern b field_41659 + m ()V +c net/minecraft/client/renderer/entity/layers/VillagerProfessionLayer gpg net/minecraft/class_3885 + f Lit/unimi/dsi/fastutil/ints/Int2ObjectMap; LEVEL_LOCATIONS a field_17148 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; typeHatCache b field_17149 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectMap; professionHatCache c field_17150 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager d field_17151 + f Ljava/lang/String; path e field_17152 + m (Lnet/minecraft/server/packs/resources/Resource;)Ljava/util/Optional; method_43211 a method_43211 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/LivingEntity;FFFFFF)V render a method_17151 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lit/unimi/dsi/fastutil/ints/Int2ObjectOpenHashMap;)V method_17152 a method_17152 + m (Lit/unimi/dsi/fastutil/objects/Object2ObjectMap;Ljava/lang/String;Lnet/minecraft/core/DefaultedRegistry;Ljava/lang/Object;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getHatData a method_17153 + p 1 cache + p 2 folder + p 3 villagerTypeRegistry + p 4 key + m (Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; getResourceLocation a method_17155 + p 1 folder + p 2 location + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; method_45803 a method_45803 + m (Ljava/lang/String;Lnet/minecraft/core/DefaultedRegistry;Ljava/lang/Object;Ljava/lang/Object;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; method_17154 a method_17154 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;)V + p 1 renderer + p 2 resourceManager + p 3 path + m ()V +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer gph net/minecraft/class_7288 + f Lnet/minecraft/resources/ResourceLocation; texture a field_38355 + f Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction; alphaFunction b field_38356 + f Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector; drawSelector c field_38464 + m ()V onlyDrawSelectedParts a method_42746 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/monster/warden/Warden;FFFFFF)V render a method_42613 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42747 a method_42747 + m ()V resetDrawForAllParts b method_42748 + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42749 b method_42749 + m (Lnet/minecraft/client/model/geom/ModelPart;)V method_42750 c method_42750 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction;Lnet/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector;)V + p 1 renderer + p 2 texture + p 3 alphaFunction + p 4 drawSelector +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$AlphaFunction gph$a net/minecraft/class_7288$class_7289 +c net/minecraft/client/renderer/entity/layers/WardenEmissiveLayer$DrawSelector gph$b net/minecraft/class_7288$class_7311 +c net/minecraft/client/renderer/entity/layers/WitchItemLayer gpi net/minecraft/class_1005 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/renderer/ItemInHandRenderer;)V + p 1 renderer + p 2 itemInHandRenderer +c net/minecraft/client/renderer/entity/layers/WitherArmorLayer gpj net/minecraft/class_1004 + f Lnet/minecraft/resources/ResourceLocation; WITHER_ARMOR_LOCATION a field_4910 + f Lnet/minecraft/client/model/WitherBossModel; model b field_4909 + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 modelSet + m ()V +c net/minecraft/client/renderer/entity/layers/WolfArmorLayer gpk net/minecraft/class_9085 + f Lnet/minecraft/client/model/WolfModel; model a field_47890 + f Ljava/util/Map; ARMOR_CRACK_LOCATIONS b field_49582 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Wolf;FFFFFF)V render a method_55837 + p 1 poseStack + p 2 bufferSource + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTick + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;)V maybeRenderCracks a method_57819 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 armorStack + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/AnimalArmorItem;)V maybeRenderColoredLayer a method_57820 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 armorStack + p 5 armorItem + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;Lnet/minecraft/client/model/geom/EntityModelSet;)V + p 1 renderer + p 2 models + m ()V +c net/minecraft/client/renderer/entity/layers/WolfCollarLayer gpl net/minecraft/class_1006 + f Lnet/minecraft/resources/ResourceLocation; WOLF_COLLAR_LOCATION a field_4913 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/world/entity/animal/Wolf;FFFFFF)V render a method_4209 + p 1 poseStack + p 2 buffer + p 3 packedLight + p 4 livingEntity + p 5 limbSwing + p 6 limbSwingAmount + p 7 partialTicks + p 8 ageInTicks + p 9 netHeadYaw + p 10 headPitch + m (Lnet/minecraft/client/renderer/entity/RenderLayerParent;)V + p 1 renderer + m ()V +c net/minecraft/client/renderer/entity/layers/package-info gpm net/minecraft/class_6257 +c net/minecraft/client/renderer/entity/package-info gpn net/minecraft/class_6258 +c net/minecraft/client/renderer/entity/player/PlayerRenderer gpo net/minecraft/class_1007 + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;)V renderRightHand a method_4220 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/client/model/geom/ModelPart;Lnet/minecraft/client/model/geom/ModelPart;)V renderHand a method_23205 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + p 5 rendererArm + p 6 rendererArmwear + m (Lnet/minecraft/client/player/AbstractClientPlayer;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_4216 + c Returns the location of an entity's texture. + p 1 entity + m (Lnet/minecraft/client/player/AbstractClientPlayer;F)Lnet/minecraft/world/phys/Vec3; getRenderOffset a method_23206 + p 1 entity + p 2 partialTicks + m (Lnet/minecraft/client/player/AbstractClientPlayer;FFLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;I)V render a method_4215 + p 1 entity + p 2 entityYaw + p 3 partialTicks + p 4 poseStack + p 5 buffer + p 6 packedLight + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/world/InteractionHand;)Lnet/minecraft/client/model/HumanoidModel$ArmPose; getArmPose a method_4210 + p 0 player + p 1 hand + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;F)V scale a method_4217 + p 1 livingEntity + p 2 poseStack + p 3 partialTickTime + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lcom/mojang/blaze3d/vertex/PoseStack;FFFF)V setupRotations a method_4212 + p 1 entity + p 2 poseStack + p 3 bob + p 4 yBodyRot + p 5 partialTick + p 6 scale + m (Lnet/minecraft/client/player/AbstractClientPlayer;Lnet/minecraft/network/chat/Component;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;IF)V renderNameTag a method_4213 + p 1 entity + p 2 displayName + p 3 poseStack + p 4 bufferSource + p 5 packedLight + p 6 partialTick + m (Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;ILnet/minecraft/client/player/AbstractClientPlayer;)V renderLeftHand b method_4221 + p 1 poseStack + p 2 buffer + p 3 combinedLight + p 4 player + m (Lnet/minecraft/client/player/AbstractClientPlayer;)V setModelProperties b method_4218 + p 1 clientPlayer + m (Lnet/minecraft/client/renderer/entity/EntityRendererProvider$Context;Z)V + p 1 context + p 2 useSlimModel +c net/minecraft/client/renderer/entity/player/package-info gpp net/minecraft/class_6259 +c net/minecraft/client/renderer/item/ClampedItemPropertyFunction gpq net/minecraft/class_6395 +c net/minecraft/client/renderer/item/CompassItemPropertyFunction gpr net/minecraft/class_7391 + f I DEFAULT_ROTATION a field_38798 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget; compassTarget b field_38799 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble; wobble c field_24449 + f Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble; wobbleRandom d field_24450 + m (I)I hash a method_32800 + p 1 value + m (IJ)F getRandomlySpinningRotation a method_43212 + p 1 seed + p 2 ticks + m (Lnet/minecraft/world/entity/Entity;)D getWrappedVisualRotationY a method_43213 + p 1 entity + m (Lnet/minecraft/world/entity/Entity;JLnet/minecraft/core/BlockPos;)F getRotationTowardsCompassTarget a method_43214 + p 1 entity + p 2 ticks + p 4 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/client/multiplayer/ClientLevel;)Lnet/minecraft/client/multiplayer/ClientLevel; tryFetchLevelIfMissing a method_43215 + p 1 entity + p 2 level + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/BlockPos;)D getAngleFromEntityToPos a method_43216 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/entity/Entity;Lnet/minecraft/core/GlobalPos;)Z isValidCompassTargetPos a method_43217 + p 1 entity + p 2 pos + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;ILnet/minecraft/world/entity/Entity;)F getCompassRotation a method_43218 + p 1 stack + p 2 level + p 3 seed + p 4 entity + m (Lnet/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget;)V + p 1 compassTarget +c net/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassTarget gpr$a net/minecraft/class_7391$class_7392 +c net/minecraft/client/renderer/item/CompassItemPropertyFunction$CompassWobble gpr$b net/minecraft/class_7391$class_5171 + f D rotation a field_23980 + f D deltaRotation b field_23981 + f J lastUpdateTick c field_23982 + m (J)Z shouldUpdate a method_27316 + p 1 ticks + m (JD)V update a method_27190 + p 1 ticks + p 3 rotation + m ()V +c net/minecraft/client/renderer/item/ItemProperties gps net/minecraft/class_5272 + f Ljava/util/Map; GENERIC_PROPERTIES a field_24443 + f Lnet/minecraft/resources/ResourceLocation; DAMAGED b field_24444 + f Lnet/minecraft/resources/ResourceLocation; DAMAGE c field_24445 + f Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; PROPERTY_DAMAGED d field_24446 + f Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; PROPERTY_DAMAGE e field_24447 + f Ljava/util/Map; PROPERTIES f field_24448 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction;)Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction; registerGeneric a method_27881 + p 0 name + p 1 property + m (Lnet/minecraft/world/item/Item;)Ljava/util/Map; method_27877 a method_27877 + m (Lnet/minecraft/world/item/Item;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/item/ClampedItemPropertyFunction;)V register a method_27879 + p 0 item + p 1 name + p 2 property + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/item/ItemPropertyFunction; getProperty a method_27878 + p 0 stack + p 1 location + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_43611 a method_43611 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/core/GlobalPos; method_43219 a method_43219 + m (Lnet/minecraft/client/renderer/item/ItemPropertyFunction;)V registerCustomModelData a method_37106 + p 0 property + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_35803 b method_35803 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/core/GlobalPos; method_43220 b method_43220 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27880 c method_27880 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27882 d method_27882 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27883 e method_27883 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27884 f method_27884 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27885 g method_27885 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27886 h method_27886 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27887 i method_27887 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27888 j method_27888 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_32202 k method_32202 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27889 l method_27889 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_49351 m method_49351 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27890 n method_27890 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27891 o method_27891 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_48484 p method_48484 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27892 q method_27892 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27893 r method_27893 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27894 s method_27894 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/entity/LivingEntity;I)F method_27895 t method_27895 + m ()V + m ()V +c net/minecraft/client/renderer/item/ItemProperties$1 gps$1 net/minecraft/class_5272$1 + f D rotation a field_7911 + f D rota b field_7910 + f J lastUpdateTick c field_7913 + m (Lnet/minecraft/world/level/Level;D)D wobble a method_7736 + p 1 level + p 2 rotation + m ()V +c net/minecraft/client/renderer/item/ItemPropertyFunction gpt net/minecraft/class_1800 +c net/minecraft/client/renderer/item/package-info gpu net/minecraft/class_6260 +c net/minecraft/client/renderer/package-info gpv net/minecraft/class_6261 +c net/minecraft/client/renderer/texture/AbstractTexture gpw net/minecraft/class_1044 + f I NOT_ASSIGNED a field_32948 + f I id b field_5204 + f Z blur c field_5205 + f Z mipmap d field_5203 + m ()I getId a method_4624 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V load a method_4625 + p 1 resourceManager + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)V reset a method_18169 + p 1 textureManager + p 2 resourceManager + p 3 path + p 4 executor + m (ZZ)V setFilter a method_4527 + p 1 blur + p 2 mipmap + c {@code true} if a mipmap is being used (mip level is greater than 0) + m ()V releaseId b method_4528 + m ()V bind c method_23207 + m ()V method_23208 d method_23208 + m ()V method_22604 e method_22604 + m ()V +c net/minecraft/client/renderer/texture/Dumpable gpx net/minecraft/class_8215 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/nio/file/Path;)V dumpContents a method_49712 + p 1 resourceLocation + p 2 path +c net/minecraft/client/renderer/texture/DynamicTexture gpy net/minecraft/class_1043 + f Lorg/slf4j/Logger; LOGGER e field_25794 + f Lcom/mojang/blaze3d/platform/NativeImage; pixels f field_5200 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V setPixels a method_4526 + p 1 pixels + m ()V upload d method_4524 + m ()Lcom/mojang/blaze3d/platform/NativeImage; getPixels e method_4525 + m ()V method_22793 f method_22793 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V + p 1 pixels + m (IIZ)V + p 1 width + p 2 height + p 3 useCalloc + m ()V +c net/minecraft/client/renderer/texture/HttpTexture gpz net/minecraft/class_1046 + f Lorg/slf4j/Logger; LOGGER f field_5212 + f I SKIN_WIDTH g field_34017 + f I SKIN_HEIGHT h field_34018 + f I LEGACY_SKIN_HEIGHT i field_34019 + f Ljava/io/File; file j field_5210 + f Ljava/lang/String; urlString k field_5214 + f Z processLegacySkin l field_20842 + f Ljava/lang/Runnable; onDownloaded m field_20843 + f Ljava/util/concurrent/CompletableFuture; future n field_20844 + f Z uploaded o field_5215 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V loadCallback a method_4534 + p 1 image + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)V doNotchTransparencyHack a method_22794 + p 0 image + p 1 x + p 2 y + p 3 width + p 4 height + m (Ljava/io/InputStream;)Lcom/mojang/blaze3d/platform/NativeImage; load a method_22795 + p 1 stream + m (Lcom/mojang/blaze3d/platform/NativeImage;)V upload b method_4531 + p 1 image + m (Lcom/mojang/blaze3d/platform/NativeImage;IIII)V setNoAlpha b method_22796 + p 0 image + p 1 x + p 2 y + p 3 width + p 4 height + m (Ljava/io/InputStream;)V method_22797 b method_22797 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V method_22799 c method_22799 + m (Lcom/mojang/blaze3d/platform/NativeImage;)Lcom/mojang/blaze3d/platform/NativeImage; processLegacySkin c method_22798 + p 1 image + m ()V method_22801 d method_22801 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V method_22800 d method_22800 + m (Lcom/mojang/blaze3d/platform/NativeImage;)V method_22802 e method_22802 + m (Ljava/io/File;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;ZLjava/lang/Runnable;)V + p 1 file + p 2 urlString + p 3 location + p 4 processLegacySkin + p 5 onDownloaded + m ()V +c net/minecraft/client/renderer/texture/MipmapGenerator gqa net/minecraft/class_4725 + f I ALPHA_CUTOUT_CUTOFF a field_32949 + f [F POW22 b field_21747 + m (I)F getPow22 a method_24099 + p 0 value + m (IIIII)I gammaBlend a method_24100 + p 0 col0 + p 1 col1 + p 2 col2 + p 3 col3 + p 4 bitOffset + m (IIIIZ)I alphaBlend a method_24101 + p 0 col0 + p 1 col1 + p 2 col2 + p 3 col3 + p 4 transparent + m (Lcom/mojang/blaze3d/platform/NativeImage;)Z hasTransparentPixel a method_45804 + p 0 image + m ([F)V method_24103 a method_24103 + m ([Lcom/mojang/blaze3d/platform/NativeImage;I)[Lcom/mojang/blaze3d/platform/NativeImage; generateMipLevels a method_24102 + p 0 images + p 1 mipLevel + m ()V + m ()V +c net/minecraft/client/renderer/texture/MissingTextureAtlasSprite gqb net/minecraft/class_1047 + f I MISSING_IMAGE_WIDTH a field_32950 + f I MISSING_IMAGE_HEIGHT b field_32951 + f Ljava/lang/String; MISSING_TEXTURE_NAME c field_32952 + f Lnet/minecraft/resources/ResourceLocation; MISSING_TEXTURE_LOCATION d field_5219 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; SPRITE_METADATA e field_45630 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; missingTexture f field_5220 + m ()Lnet/minecraft/client/renderer/texture/SpriteContents; create a method_45805 + m (II)Lcom/mojang/blaze3d/platform/NativeImage; generateMissingImage a method_45806 + p 0 width + p 1 height + m ()Lnet/minecraft/resources/ResourceLocation; getLocation b method_4539 + m ()Lnet/minecraft/client/renderer/texture/DynamicTexture; getTexture c method_4540 + m ()V + m ()V +c net/minecraft/client/renderer/texture/OverlayTexture gqc net/minecraft/class_4608 + f I NO_WHITE_U a field_32953 + f I RED_OVERLAY_V b field_32954 + f I WHITE_OVERLAY_V c field_32955 + f I NO_OVERLAY d field_21444 + f I SIZE e field_32956 + f Lnet/minecraft/client/renderer/texture/DynamicTexture; texture f field_21013 + m ()V setupOverlayColor a method_23209 + m (F)I u a method_23210 + p 0 u + m (FZ)I pack a method_23624 + p 0 u + p 1 hurt + m (II)I pack a method_23625 + p 0 u + p 1 v + m (Z)I v a method_23212 + p 0 hurt + m ()V teardownOverlayColor b method_23213 + m ()V + m ()V +c net/minecraft/client/renderer/texture/PreloadedTexture gqd net/minecraft/class_4005 + f Ljava/util/concurrent/CompletableFuture; future f field_17894 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; method_18151 a method_18151 + m (Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage;)Ljava/lang/Void; method_18149 a method_18149 + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V method_18150 a method_18150 + m (Ljava/lang/Runnable;)V method_22807 a method_22807 + m (Ljava/util/concurrent/Executor;)Ljava/util/concurrent/Executor; executor a method_22808 + p 0 executor + m (Ljava/util/concurrent/Executor;Ljava/lang/Runnable;)V method_22809 a method_22809 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; method_18152 c method_18152 + m ()Ljava/util/concurrent/CompletableFuture; getFuture d method_18148 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)V + p 1 resourceManager + p 2 location + p 3 backgroundExecutor +c net/minecraft/client/renderer/texture/SimpleTexture gqe net/minecraft/class_1049 + f Lnet/minecraft/resources/ResourceLocation; location e field_5224 + f Lorg/slf4j/Logger; LOGGER f field_5225 + m (Lcom/mojang/blaze3d/platform/NativeImage;ZZ)V doLoad a method_22810 + p 1 image + p 2 blur + p 3 clamp + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; getTextureImage b method_18153 + p 1 resourceManager + m (Lcom/mojang/blaze3d/platform/NativeImage;ZZ)V method_22811 b method_22811 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 location + m ()V +c net/minecraft/client/renderer/texture/SimpleTexture$TextureImage gqe$a net/minecraft/class_1049$class_4006 + f Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; metadata a field_17895 + f Lcom/mojang/blaze3d/platform/NativeImage; image b field_17896 + f Ljava/io/IOException; exception c field_17897 + m ()Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; getTextureMetadata a method_18155 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/SimpleTexture$TextureImage; load a method_18156 + p 0 resourceManager + p 1 location + m ()Lcom/mojang/blaze3d/platform/NativeImage; getImage b method_18157 + m ()V throwIfError c method_18158 + m (Ljava/io/IOException;)V + p 1 exception + m (Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection;Lcom/mojang/blaze3d/platform/NativeImage;)V + p 1 metadata + p 2 image +c net/minecraft/client/renderer/texture/SpriteContents gqf net/minecraft/class_7764 + f Lorg/slf4j/Logger; LOGGER a field_40535 + f Lnet/minecraft/resources/ResourceLocation; name b field_40536 + f I width c field_40537 + f I height d field_40538 + f Lcom/mojang/blaze3d/platform/NativeImage; originalImage e field_40539 + f [Lcom/mojang/blaze3d/platform/NativeImage; byMipLevel f field_40540 + f Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; animatedTexture g field_40541 + f Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata h field_45631 + m (I)V increaseMipLevel a method_45808 + p 1 mipLevel + m (II)V uploadFirstFrame a method_45809 + p 1 x + p 2 y + m (III)Z isTransparent a method_45810 + p 1 frame + p 2 x + p 3 y + m (IIII[Lcom/mojang/blaze3d/platform/NativeImage;)V upload a method_45811 + p 1 x + p 2 y + p 3 frameX + p 4 frameY + p 5 atlasData + m (Lnet/minecraft/client/resources/metadata/animation/FrameSize;IILnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection;)Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; createAnimatedTexture a method_45812 + p 1 frameSize + p 2 width + p 3 height + p 4 metadata + m (Lit/unimi/dsi/fastutil/ints/IntSet;I)Z method_45813 a method_45813 + m (Ljava/util/List;II)V method_45814 a method_45814 + m ()Ljava/util/stream/IntStream; getUniqueFrames d method_45817 + m ()Lnet/minecraft/client/renderer/texture/SpriteTicker; createTicker e method_45818 + m ()Lnet/minecraft/server/packs/resources/ResourceMetadata; metadata f method_52848 + m ()I getFrameCount g method_45819 + m ()Ljava/lang/String; method_45820 h method_45820 + m ()Ljava/lang/String; method_45821 i method_45821 + m ()Ljava/lang/String; method_45822 j method_45822 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/metadata/animation/FrameSize;Lcom/mojang/blaze3d/platform/NativeImage;Lnet/minecraft/server/packs/resources/ResourceMetadata;)V + p 1 name + p 2 frameSize + p 3 originalImage + p 4 metadata + m ()V +c net/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture gqf$a net/minecraft/class_7764$class_5790 + f Lnet/minecraft/client/renderer/texture/SpriteContents; field_28469 a field_28469 + f Ljava/util/List; frames b field_28472 + f I frameRowSize c field_28473 + f Z interpolateFrames d field_40542 + m ()Lnet/minecraft/client/renderer/texture/SpriteTicker; createTicker a method_45823 + m (I)I getFrameX a method_33446 + p 1 frameIndex + m (II)V uploadFirstFrame a method_33445 + p 1 x + p 2 y + m (III)V uploadFrame a method_33455 + p 1 x + p 2 y + p 3 frameIndex + m (Lnet/minecraft/client/renderer/texture/SpriteContents$FrameInfo;)I method_33449 a method_33449 + m ()Ljava/util/stream/IntStream; getUniqueFrames b method_33450 + m (I)I getFrameY b method_33451 + p 1 frameIndex + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Ljava/util/List;IZ)V + p 2 frames + p 3 frameRowSize + p 4 interpolateFrames +c net/minecraft/client/renderer/texture/SpriteContents$FrameInfo gqf$b net/minecraft/class_7764$class_5791 + f I index a field_28475 + f I time b field_28476 + m (II)V + p 1 index + p 2 time +c net/minecraft/client/renderer/texture/SpriteContents$InterpolationData gqf$c net/minecraft/class_7764$class_4728 + f Lnet/minecraft/client/renderer/texture/SpriteContents; field_21757 a field_21757 + f [Lcom/mojang/blaze3d/platform/NativeImage; activeFrame b field_21758 + m (DII)I mix a method_24129 + p 1 delta + p 3 color1 + p 4 color2 + m (IILnet/minecraft/client/renderer/texture/SpriteContents$Ticker;)V uploadInterpolatedFrame a method_24128 + p 1 x + p 2 y + p 3 ticker + m (Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture;IIII)I getPixel a method_24130 + p 1 animatedTexture + p 2 frameIndex + p 3 mipLevel + p 4 x + p 5 y + m (Lnet/minecraft/client/renderer/texture/SpriteContents;)V +c net/minecraft/client/renderer/texture/SpriteContents$Ticker gqf$d net/minecraft/class_7764$class_7765 + f I frame a field_40544 + f I subFrame b field_40545 + f Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture; animationInfo c field_40546 + f Lnet/minecraft/client/renderer/texture/SpriteContents$InterpolationData; interpolationData d field_40547 + m (II)V method_45825 b method_45825 + m (Lnet/minecraft/client/renderer/texture/SpriteContents;Lnet/minecraft/client/renderer/texture/SpriteContents$AnimatedTexture;Lnet/minecraft/client/renderer/texture/SpriteContents$InterpolationData;)V + p 2 animationInfo + p 3 interpolationData +c net/minecraft/client/renderer/texture/SpriteLoader gqg net/minecraft/class_7766 + f Ljava/util/Set; DEFAULT_METADATA_SECTIONS a field_45632 + f Lorg/slf4j/Logger; LOGGER b field_40548 + f Lnet/minecraft/resources/ResourceLocation; location c field_40549 + f I maxSupportedTextureSize d field_40550 + f I minWidth e field_43111 + f I minHeight f field_43112 + m (ILnet/minecraft/client/renderer/texture/TextureAtlasSprite;)V method_45826 a method_45826 + m (ILjava/util/concurrent/Executor;Ljava/util/List;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; method_47659 a method_47659 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/List; method_47660 a method_47660 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;ILjava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadAndStitch a method_52849 + p 1 resouceManager + p 2 location + p 3 mipLevel + p 4 executor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;ILjava/util/concurrent/Executor;Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; loadAndStitch a method_47661 + p 1 resourceManager + p 2 location + p 3 mipLevel + p 4 executor + p 5 sectionSerializers + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)Ljava/lang/String; method_45835 a method_45835 + m (Lnet/minecraft/client/renderer/texture/Stitcher;II)Ljava/util/Map; getStitchedSprites a method_45836 + p 1 stitcher + p 2 x + p 3 y + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;)Lnet/minecraft/client/renderer/texture/SpriteLoader; create a method_45837 + p 0 atlas + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/List;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; runSpriteSuppliers a method_47664 + p 0 spriteResourceLoader + p 1 factories + p 2 executor + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Ljava/util/List;)Ljava/util/concurrent/CompletionStage; method_47665 a method_47665 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;Ljava/util/concurrent/Executor;Ljava/util/function/Function;)Ljava/util/concurrent/CompletableFuture; method_47666 a method_47666 + m (Ljava/util/List;)Ljava/util/List; method_47662 a method_47662 + m (Ljava/util/List;ILjava/util/concurrent/Executor;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; stitch a method_47663 + p 1 contents + p 2 mipLevel + p 3 executor + m (Ljava/util/Map;I)V method_45840 a method_45840 + m (Ljava/util/Map;IILnet/minecraft/client/renderer/texture/SpriteContents;II)V method_45841 a method_45841 + m (Ljava/util/function/Function;Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52850 a method_52850 + m (Lnet/minecraft/resources/ResourceLocation;III)V + p 1 location + p 2 maxSupportedTextureSize + p 3 minWidth + p 4 minHeight + m ()V +c net/minecraft/client/renderer/texture/SpriteLoader$Preparations gqg$a net/minecraft/class_7766$class_7767 + f I width a comp_1040 + f I height b comp_1041 + f I mipLevel c comp_1042 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing d comp_1043 + f Ljava/util/Map; regions e comp_1044 + f Ljava/util/concurrent/CompletableFuture; readyForUpload f comp_1045 + m ()Ljava/util/concurrent/CompletableFuture; waitForUpload a method_45845 + m (Ljava/lang/Void;)Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; method_45846 a method_45846 + m ()I width b comp_1040 + m ()I height c comp_1041 + m ()I mipLevel d comp_1042 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing e comp_1043 + m ()Ljava/util/Map; regions f comp_1044 + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload g comp_1045 + m (IIILnet/minecraft/client/renderer/texture/TextureAtlasSprite;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/renderer/texture/SpriteTicker gqh net/minecraft/class_7768 + m (II)V tickAndUpload a method_45824 + p 1 x + p 2 y +c net/minecraft/client/renderer/texture/Stitcher gqi net/minecraft/class_1055 + f Ljava/util/Comparator; HOLDER_COMPARATOR a field_18030 + f I mipLevel b field_5243 + f Ljava/util/List; texturesToBeStitched c field_5237 + f Ljava/util/List; storage d field_5239 + f I storageX e field_5242 + f I storageY f field_5241 + f I maxWidth g field_5240 + f I maxHeight h field_5238 + m ()I getWidth a method_4554 + m (II)I smallestFittingMinTexel a method_4551 + p 0 dimension + p 1 mipLevel + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;)V registerSprite a method_4553 + p 1 stitcherEntry + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z addToStorage a method_4550 + c Attempts to find space for specified {@code holder}.\n\n@return {@code true} if there was space; {@code false} otherwise + p 1 holder + m (Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader;)V gatherSprites a method_4549 + p 1 loader + m ()I getHeight b method_4555 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z expand b method_4552 + c Attempts to expand stitched texture in order to make space for specified {@code holder}.\n\n@return {@code true} if there was enough space to expand the texture; {@code false} otherwise + p 1 holder + m ()V stitch c method_4557 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Lnet/minecraft/client/renderer/texture/Stitcher$Entry; method_21686 c method_21686 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Lnet/minecraft/resources/ResourceLocation; method_18337 d method_18337 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Ljava/lang/Integer; method_18338 e method_18338 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Ljava/lang/Integer; method_18339 f method_18339 + m (III)V + p 1 maxWidth + p 2 maxHeight + p 3 mipLevel + m ()V +c net/minecraft/client/renderer/texture/Stitcher$Entry gqi$a net/minecraft/class_1055$class_7769 + m ()I width a method_45807 + m ()I height b method_45815 + m ()Lnet/minecraft/resources/ResourceLocation; name c method_45816 +c net/minecraft/client/renderer/texture/Stitcher$Holder gqi$b net/minecraft/class_1055$class_1056 + f Lnet/minecraft/client/renderer/texture/Stitcher$Entry; entry a comp_1046 + f I width b comp_1047 + f I height c comp_1048 + m ()Lnet/minecraft/client/renderer/texture/Stitcher$Entry; entry a comp_1046 + m ()I width b comp_1047 + m ()I height c comp_1048 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;I)V + p 1 entry + p 2 mipLevel + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;II)V +c net/minecraft/client/renderer/texture/Stitcher$Region gqi$c net/minecraft/class_1055$class_1057 + f I originX a field_5253 + f I originY b field_5252 + f I width c field_5251 + f I height d field_5250 + f Ljava/util/List; subSlots e field_5255 + f Lnet/minecraft/client/renderer/texture/Stitcher$Holder; holder f field_5254 + m ()I getX a method_4569 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Holder;)Z add a method_4566 + p 1 holder + m (Lnet/minecraft/client/renderer/texture/Stitcher$SpriteLoader;)V walk a method_4568 + p 1 spriteLoader + m ()I getY b method_4567 + m (IIII)V + p 1 originX + p 2 originY + p 3 width + p 4 height +c net/minecraft/client/renderer/texture/Stitcher$SpriteLoader gqi$d net/minecraft/class_1055$class_4726 +c net/minecraft/client/renderer/texture/StitcherException gqj net/minecraft/class_1054 + f Ljava/util/Collection; allSprites a field_20311 + m ()Ljava/util/Collection; getAllSprites a method_21687 + m (Lnet/minecraft/client/renderer/texture/Stitcher$Entry;Ljava/util/Collection;)V + p 1 entry + p 2 allSprites +c net/minecraft/client/renderer/texture/TextureAtlas gqk net/minecraft/class_1059 + f Lnet/minecraft/resources/ResourceLocation; LOCATION_BLOCKS e field_5275 + f Lnet/minecraft/resources/ResourceLocation; LOCATION_PARTICLES f field_17898 + f Lorg/slf4j/Logger; LOGGER g field_5278 + f Ljava/util/List; sprites h field_5277 + f Ljava/util/List; animatedTextures i field_5276 + f Ljava/util/Map; texturesByName j field_5280 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missingSprite k field_46207 + f Lnet/minecraft/resources/ResourceLocation; location l field_21749 + f I maxSupportedTextureSize m field_17899 + f I width n field_43113 + f I height o field_43114 + f I mipLevel p field_43115 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_4608 + p 1 name + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V upload a method_45848 + p 1 preparations + m (Ljava/nio/file/Path;Ljava/lang/String;Ljava/util/Map;)V dumpSpriteNames a method_45849 + p 0 outputDir + p 1 outputFilename + p 2 sprites + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V updateFilter b method_24198 + p 1 preparations + m ()V cycleAnimationFrames d method_4612 + m ()V clearTextureData f method_4601 + m ()Lnet/minecraft/resources/ResourceLocation; location g method_24106 + m ()I maxSupportedTextureSize h method_45850 + m ()I getWidth i method_49713 + m ()I getHeight j method_49714 + m (Lnet/minecraft/resources/ResourceLocation;)V + p 1 location + m ()V +c net/minecraft/client/renderer/texture/TextureAtlasSprite gql net/minecraft/class_1058 + f Lnet/minecraft/resources/ResourceLocation; atlasLocation a field_40552 + f Lnet/minecraft/client/renderer/texture/SpriteContents; contents b field_40553 + f I x c field_5258 + f I y d field_5256 + f F u0 e field_5270 + f F u1 f field_5269 + f F v0 g field_5268 + f F v1 h field_5267 + m ()I getX a method_35806 + m (F)F getU a method_4580 + p 1 u + m (Lcom/mojang/blaze3d/vertex/VertexConsumer;)Lcom/mojang/blaze3d/vertex/VertexConsumer; wrap a method_24108 + p 1 consumer + m ()I getY b method_35807 + m (F)F getUOffset b method_35804 + p 1 offset + m ()F getU0 c method_4594 + c @return the minimum U coordinate to use when rendering this sprite + m (F)F getV c method_4570 + p 1 v + m ()F getU1 d method_4577 + c @return the maximum U coordinate to use when rendering this sprite + m (F)F getVOffset d method_35805 + p 1 offset + m ()Lnet/minecraft/client/renderer/texture/SpriteContents; contents e method_45851 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite$Ticker; createTicker f method_33437 + m ()F getV0 g method_4593 + c @return the minimum V coordinate to use when rendering this sprite + m ()F getV1 h method_4575 + c @return the maximum V coordinate to use when rendering this sprite + m ()Lnet/minecraft/resources/ResourceLocation; atlasLocation i method_45852 + m ()V uploadFirstFrame j method_4584 + m ()F uvShrinkRatio k method_23842 + m ()F atlasSize l method_23841 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/SpriteContents;IIII)V + p 1 atlasLocation + p 2 contents + p 3 originX + p 4 originY + p 5 x + p 6 y +c net/minecraft/client/renderer/texture/TextureAtlasSprite$1 gql$1 net/minecraft/class_1058$1 + f Lnet/minecraft/client/renderer/texture/SpriteTicker; val$ticker a field_40554 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; field_40555 b field_40555 + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/texture/SpriteTicker;)V +c net/minecraft/client/renderer/texture/TextureAtlasSprite$Ticker gql$a net/minecraft/class_1058$class_7770 + m ()V tickAndUpload a method_45853 +c net/minecraft/client/renderer/texture/TextureManager gqm net/minecraft/class_1060 + f Lnet/minecraft/resources/ResourceLocation; INTENTIONAL_MISSING_TEXTURE a field_5285 + f Lorg/slf4j/Logger; LOGGER b field_5288 + f Ljava/util/Map; byPath c field_5286 + f Ljava/util/Set; tickableTextures d field_5284 + f Ljava/util/Map; prefixRegister e field_5283 + f Lnet/minecraft/server/packs/resources/ResourceManager; resourceManager f field_5287 + m (Lnet/minecraft/resources/ResourceLocation;)V bindForSetup a method_22813 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V register a method_4616 + p 1 path + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/PreloadedTexture;)V method_18166 a method_18166 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; preload a method_18168 + p 1 path + p 2 backgroundExecutor + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)V method_18167 a method_18167 + m (Lnet/minecraft/client/renderer/texture/AbstractTexture;)Ljava/lang/String; method_4621 a method_4621 + m (Ljava/lang/Runnable;)V execute a method_22812 + p 0 runnable + m (Ljava/lang/String;Lnet/minecraft/client/renderer/texture/DynamicTexture;)Lnet/minecraft/resources/ResourceLocation; register a method_4617 + p 1 name + p 2 texture + m (Ljava/nio/file/Path;)V dumpAllSheets a method_49715 + p 1 path + m (Ljava/nio/file/Path;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V method_49716 a method_49716 + m (Ljava/util/concurrent/CompletableFuture;)V method_45854 a method_45854 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/AbstractTexture; getTexture b method_4619 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)Lnet/minecraft/client/renderer/texture/AbstractTexture; getTexture b method_34590 + p 1 path + p 2 defaultTexture + m (Ljava/lang/Runnable;)V method_22814 b method_22814 + m (Ljava/nio/file/Path;)V _dumpAllSheets b method_49717 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;)V release c method_4615 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)V safeClose c method_30299 + p 1 path + p 2 texture + m (Ljava/lang/Runnable;)V method_22815 c method_22815 + m (Ljava/nio/file/Path;)V method_49718 c method_49718 + m (Lnet/minecraft/resources/ResourceLocation;)V _bind d method_4618 + p 1 path + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/AbstractTexture;)Lnet/minecraft/client/renderer/texture/AbstractTexture; loadTexture d method_24303 + p 1 path + p 2 texture + m (Lnet/minecraft/resources/ResourceLocation;)V method_22816 e method_22816 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V + p 1 resourceManager + m ()V +c net/minecraft/client/renderer/texture/Tickable gqn net/minecraft/class_1061 + m ()V tick e method_4622 +c net/minecraft/client/renderer/texture/atlas/SpriteResourceLoader gqo net/minecraft/class_8684 + f Lorg/slf4j/Logger; LOGGER a field_45633 + m (Ljava/util/Collection;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52851 a method_52851 + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSource gqp net/minecraft/class_7948 + f Lnet/minecraft/resources/FileToIdConverter; TEXTURE_ID_CONVERTER a field_42075 + m ()Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; type a method_47672 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;)V run a method_47673 + p 1 resourceManager + p 2 output + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSource$Output gqp$a net/minecraft/class_7948$class_7949 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V add a method_47674 + p 1 location + p 2 resource + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_47675 a method_47675 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$SpriteSupplier;)V add a method_47670 + p 1 location + p 2 sprite + m (Ljava/util/function/Predicate;)V removeAll a method_47671 + p 1 predicate +c net/minecraft/client/renderer/texture/atlas/SpriteSource$SpriteSupplier gqp$b net/minecraft/class_7948$class_7950 + m ()V discard a method_47676 +c net/minecraft/client/renderer/texture/atlas/SpriteSourceList gqq net/minecraft/class_7947 + f Lorg/slf4j/Logger; LOGGER a field_41386 + f Lnet/minecraft/resources/FileToIdConverter; ATLAS_INFO_CONVERTER b field_41387 + f Ljava/util/List; sources c field_41388 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/List; list a method_47667 + p 1 resourceManager + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceList; load a method_47668 + p 0 resourceManager + p 1 sprite + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource;)V method_47669 a method_47669 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; method_52852 a method_52852 + m (Ljava/util/List;)V + p 1 sources + m ()V +c net/minecraft/client/renderer/texture/atlas/SpriteSourceList$1 gqq$1 net/minecraft/class_7947$1 + f Ljava/util/Map; val$sprites a field_41389 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceList;Ljava/util/Map;)V +c net/minecraft/client/renderer/texture/atlas/SpriteSourceType gqr net/minecraft/class_7951 + f Lcom/mojang/serialization/MapCodec; codec a comp_1162 + m ()Lcom/mojang/serialization/MapCodec; codec a comp_1162 + m (Lcom/mojang/serialization/MapCodec;)V +c net/minecraft/client/renderer/texture/atlas/SpriteSources gqs net/minecraft/class_7952 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; SINGLE_FILE a field_41391 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; DIRECTORY b field_41392 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; FILTER c field_41393 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; UNSTITCHER d field_41394 + f Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; PALETTED_PERMUTATIONS e field_42076 + f Lcom/mojang/serialization/Codec; TYPE_CODEC f field_41395 + f Lcom/mojang/serialization/Codec; CODEC g field_41396 + f Lcom/mojang/serialization/Codec; FILE_CODEC h field_41397 + f Lcom/google/common/collect/BiMap; TYPES i field_41398 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49634 a method_49634 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType;)Lcom/mojang/serialization/DataResult; method_47679 a method_47679 + m (Ljava/lang/String;Lcom/mojang/serialization/MapCodec;)Lnet/minecraft/client/renderer/texture/atlas/SpriteSourceType; register a method_47680 + p 0 name + p 1 codec + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/serialization/DataResult; method_47677 b method_47677 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/lang/String; method_49635 c method_49635 + m ()V + m ()V +c net/minecraft/client/renderer/texture/atlas/package-info gqt net/minecraft/class_7953 +c net/minecraft/client/renderer/texture/atlas/sources/DirectoryLister gqu net/minecraft/class_7954 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41399 + f Ljava/lang/String; sourcePath c field_41400 + f Ljava/lang/String; idPrefix d field_41401 + m (Lnet/minecraft/resources/FileToIdConverter;Lnet/minecraft/client/renderer/texture/atlas/SpriteSource$Output;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;)V method_47683 a method_47683 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47684 a method_47684 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/DirectoryLister;)Ljava/lang/String; method_47685 a method_47685 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/DirectoryLister;)Ljava/lang/String; method_47686 b method_47686 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 sourcePath + p 2 idPrefix + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage gqv net/minecraft/class_7958 + f Lnet/minecraft/resources/ResourceLocation; id a field_41416 + f Lnet/minecraft/server/packs/resources/Resource; resource b field_41417 + f Ljava/util/concurrent/atomic/AtomicReference; image c field_41418 + f Ljava/util/concurrent/atomic/AtomicInteger; referenceCount d field_41419 + m ()Lcom/mojang/blaze3d/platform/NativeImage; get a method_47697 + m ()V release b method_47698 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/Resource;I)V + p 1 id + p 2 resource + p 3 referenceCount +c net/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations gqw net/minecraft/class_8066 + f Lcom/mojang/serialization/MapCodec; CODEC b field_42077 + f Lorg/slf4j/Logger; LOGGER c field_42078 + f Ljava/util/List; textures d field_42079 + f Ljava/util/Map; permutations e field_42080 + f Lnet/minecraft/resources/ResourceLocation; paletteKey f field_42081 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)[I method_48485 a method_48485 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)[I loadPaletteEntryFromImage a method_48486 + p 0 resourceMananger + p 1 palette + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48487 a method_48487 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Ljava/util/Map; method_48488 a method_48488 + m (Lit/unimi/dsi/fastutil/ints/Int2IntMap;I)I method_48489 a method_48489 + m (Ljava/util/Map;Ljava/util/function/Supplier;Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;)V method_48490 a method_48490 + m (Ljava/util/function/Supplier;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)Ljava/util/function/IntUnaryOperator; method_48491 a method_48491 + m ([I[I)Ljava/util/function/IntUnaryOperator; createPaletteMapping a method_48492 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Lnet/minecraft/resources/ResourceLocation; method_48493 b method_48493 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations;)Ljava/util/List; method_48494 c method_48494 + m (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)V + p 1 textures + p 2 paletteKey + p 3 permutations + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/PalettedPermutations$PalettedSpriteSupplier gqw$a net/minecraft/class_8066$class_8067 + f Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; baseImage a comp_1216 + f Ljava/util/function/Supplier; palette b comp_1217 + f Lnet/minecraft/resources/ResourceLocation; permutationLocation c comp_1218 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; apply a method_52853 + m ()Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; baseImage b comp_1216 + m ()Ljava/util/function/Supplier; palette c comp_1217 + m ()Lnet/minecraft/resources/ResourceLocation; permutationLocation d comp_1218 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Ljava/util/function/Supplier;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/renderer/texture/atlas/sources/SingleFile gqx net/minecraft/class_7955 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41402 + f Lorg/slf4j/Logger; LOGGER c field_41403 + f Lnet/minecraft/resources/ResourceLocation; resourceId d field_41405 + f Ljava/util/Optional; spriteId e field_41406 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47687 a method_47687 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SingleFile;)Ljava/util/Optional; method_47688 a method_47688 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SingleFile;)Lnet/minecraft/resources/ResourceLocation; method_47689 b method_47689 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/Optional;)V + p 1 resourceId + p 2 spriteId + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/SourceFilter gqy net/minecraft/class_7956 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41407 + f Lnet/minecraft/util/ResourceLocationPattern; filter c field_41408 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47690 a method_47690 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/SourceFilter;)Lnet/minecraft/util/ResourceLocationPattern; method_47691 a method_47691 + m (Lnet/minecraft/util/ResourceLocationPattern;)V + p 1 filter + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher gqz net/minecraft/class_7957 + f Lcom/mojang/serialization/MapCodec; CODEC b field_41409 + f Lorg/slf4j/Logger; LOGGER c field_41410 + f Lnet/minecraft/resources/ResourceLocation; resource d field_41412 + f Ljava/util/List; regions e field_41413 + f D xDivisor f field_41414 + f D yDivisor g field_41415 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47692 a method_47692 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/lang/Double; method_47693 a method_47693 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/lang/Double; method_47694 b method_47694 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Ljava/util/List; method_47695 c method_47695 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher;)Lnet/minecraft/resources/ResourceLocation; method_47696 d method_47696 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/util/List;DD)V + p 1 resource + p 2 regions + p 3 xDivisor + p 5 yDivisor + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region gqz$a net/minecraft/class_7957$class_7959 + f Lcom/mojang/serialization/Codec; CODEC a field_41420 + f Lnet/minecraft/resources/ResourceLocation; sprite b comp_1163 + f D x c comp_1164 + f D y d comp_1165 + f D width e comp_1166 + f D height f comp_1167 + m ()Lnet/minecraft/resources/ResourceLocation; sprite a comp_1163 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_47699 a method_47699 + m ()D x b comp_1164 + m ()D y c comp_1165 + m ()D width d comp_1166 + m ()D height e comp_1167 + m (Lnet/minecraft/resources/ResourceLocation;DDDD)V + m ()V +c net/minecraft/client/renderer/texture/atlas/sources/Unstitcher$RegionInstance gqz$b net/minecraft/class_7957$class_7960 + f Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage; image a field_41421 + f Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region; region b field_41422 + f D xDivisor c field_41423 + f D yDivisor d field_41424 + m (Lnet/minecraft/client/renderer/texture/atlas/SpriteResourceLoader;)Lnet/minecraft/client/renderer/texture/SpriteContents; apply a method_47700 + m (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region;DD)V + p 1 image + p 2 region + p 3 xDivisor + p 5 yDivisor +c net/minecraft/client/renderer/texture/atlas/sources/package-info gra net/minecraft/class_7961 +c net/minecraft/client/renderer/texture/package-info grb net/minecraft/class_6262 +c net/minecraft/client/resources/ClientPackSource grc net/minecraft/class_1065 + f Ljava/lang/String; HIGH_CONTRAST_PACK c field_43088 + f Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection; VERSION_METADATA_SECTION d field_40556 + f Lnet/minecraft/server/packs/BuiltInMetadata; BUILT_IN_METADATA e field_40557 + f Ljava/util/Map; SPECIAL_PACK_NAMES f field_40559 + f Lnet/minecraft/server/packs/PackLocationInfo; VANILLA_PACK_INFO g field_49131 + f Lnet/minecraft/server/packs/PackSelectionConfig; VANILLA_SELECTION_CONFIG h field_49132 + f Lnet/minecraft/server/packs/PackSelectionConfig; BUILT_IN_SELECTION_CONFIG i field_49133 + f Lnet/minecraft/resources/ResourceLocation; PACKS_DIR j field_40560 + f Ljava/nio/file/Path; externalAssetDir k field_40561 + m (Ljava/lang/String;Lnet/minecraft/network/chat/Component;)Lnet/minecraft/server/packs/PackLocationInfo; createBuiltInPackLocation a method_57056 + p 0 id + p 1 title + m (Ljava/nio/file/Path;)Ljava/nio/file/Path; findExplodedAssetPacks a method_45856 + p 1 assetIndex + m (Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResources; createVanillaPackSource b method_45857 + p 0 assetIndex + m (Ljava/nio/file/Path;Lnet/minecraft/world/level/validation/DirectoryValidator;)V + p 1 assetIndex + p 2 validator + m ()V +c net/minecraft/client/resources/DefaultPlayerSkin grd net/minecraft/class_1068 + f [Lnet/minecraft/client/resources/PlayerSkin; DEFAULT_SKINS a field_41121 + m ()Lnet/minecraft/resources/ResourceLocation; getDefaultTexture a method_4649 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/client/resources/PlayerSkin; get a method_52854 + p 0 profile + m (Ljava/lang/String;Lnet/minecraft/client/resources/PlayerSkin$Model;)Lnet/minecraft/client/resources/PlayerSkin; create a method_52855 + p 0 path + p 1 skinModel + m (Ljava/util/UUID;)Lnet/minecraft/client/resources/PlayerSkin; get a method_4648 + p 0 uuid + m ()V + m ()V +c net/minecraft/client/resources/FoliageColorReloadListener gre net/minecraft/class_1070 + f Lnet/minecraft/resources/ResourceLocation; LOCATION a field_5303 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)[I prepare a method_18660 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ([ILnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18659 + p 1 object + p 2 resourceManager + p 3 profiler + m ()V + m ()V +c net/minecraft/client/resources/GrassColorReloadListener grf net/minecraft/class_1069 + f Lnet/minecraft/resources/ResourceLocation; LOCATION a field_5302 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)[I prepare a method_18662 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m ([ILnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18661 + p 1 object + p 2 resourceManager + p 3 profiler + m ()V + m ()V +c net/minecraft/client/resources/IndexedAssetSource grg net/minecraft/class_1064 + f Lcom/google/common/base/Splitter; PATH_SPLITTER a field_40563 + f Lorg/slf4j/Logger; LOGGER b field_5290 + m (Ljava/nio/file/Path;Ljava/lang/String;)Ljava/nio/file/Path; createIndexFs a method_45858 + p 0 assetDirectory + p 1 assetIndex + m ()V + m ()V +c net/minecraft/client/resources/LegacyStuffWrapper grh net/minecraft/class_3685 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/resources/ResourceLocation;)[I getPixels a method_16049 + p 0 manager + p 1 location + m ()V +c net/minecraft/client/resources/MapDecorationTextureManager gri net/minecraft/class_9443 + m (Lnet/minecraft/world/level/saveddata/maps/MapDecoration;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_58516 + p 1 mapDecoration + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager +c net/minecraft/client/resources/MobEffectTextureManager grj net/minecraft/class_4074 + m (Lnet/minecraft/core/Holder;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18663 + p 1 effect + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager +c net/minecraft/client/resources/PaintingTextureManager grk net/minecraft/class_4044 + f Lnet/minecraft/resources/ResourceLocation; BACK_SPRITE_LOCATION a field_18032 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getBackSprite a method_18342 + m (Lnet/minecraft/world/entity/decoration/PaintingVariant;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; get a method_18345 + p 1 paintingVariant + m (Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 textureManager + m ()V +c net/minecraft/client/resources/PlayerSkin grl net/minecraft/class_8685 + f Lnet/minecraft/resources/ResourceLocation; texture a comp_1626 + f Ljava/lang/String; textureUrl b comp_1911 + f Lnet/minecraft/resources/ResourceLocation; capeTexture c comp_1627 + f Lnet/minecraft/resources/ResourceLocation; elytraTexture d comp_1628 + f Lnet/minecraft/client/resources/PlayerSkin$Model; model e comp_1629 + f Z secure f comp_1630 + m ()Lnet/minecraft/resources/ResourceLocation; texture a comp_1626 + m ()Ljava/lang/String; textureUrl b comp_1911 + m ()Lnet/minecraft/resources/ResourceLocation; capeTexture c comp_1627 + m ()Lnet/minecraft/resources/ResourceLocation; elytraTexture d comp_1628 + m ()Lnet/minecraft/client/resources/PlayerSkin$Model; model e comp_1629 + m ()Z secure f comp_1630 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/PlayerSkin$Model;Z)V +c net/minecraft/client/resources/PlayerSkin$Model grl$a net/minecraft/class_8685$class_7920 + f Lnet/minecraft/client/resources/PlayerSkin$Model; SLIM a field_41122 + f Lnet/minecraft/client/resources/PlayerSkin$Model; WIDE b field_41123 + f Ljava/lang/String; id c field_41124 + f [Lnet/minecraft/client/resources/PlayerSkin$Model; $VALUES d field_41125 + m ()Ljava/lang/String; id a method_52856 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/PlayerSkin$Model; byName a method_52857 + p 0 name + m ()[Lnet/minecraft/client/resources/PlayerSkin$Model; $values b method_47439 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 id + m ()V +c net/minecraft/client/resources/SkinManager grm net/minecraft/class_1071 + f Lorg/slf4j/Logger; LOGGER a field_46909 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; sessionService b field_46910 + f Lcom/google/common/cache/LoadingCache; skinCache c field_45634 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; skinTextures d field_45635 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; capeTextures e field_45636 + f Lnet/minecraft/client/resources/SkinManager$TextureCache; elytraTextures f field_45637 + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/function/Supplier; lookupInsecure a method_52858 + p 1 profile + m (Ljava/util/UUID;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletableFuture; registerTextures a method_52859 + p 1 uuid + p 2 textures + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin;)Lnet/minecraft/client/resources/PlayerSkin; method_52860 a method_52860 + m (Ljava/util/concurrent/CompletableFuture;Ljava/lang/String;Ljava/util/concurrent/CompletableFuture;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/client/resources/PlayerSkin$Model;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;Ljava/lang/Void;)Lnet/minecraft/client/resources/PlayerSkin; method_52861 a method_52861 + m (Lcom/mojang/authlib/GameProfile;)Lnet/minecraft/client/resources/PlayerSkin; getInsecureSkin b method_52862 + p 1 profile + m (Lcom/mojang/authlib/GameProfile;)Ljava/util/concurrent/CompletableFuture; getOrLoad c method_52863 + p 1 profile + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/nio/file/Path;Lcom/mojang/authlib/minecraft/MinecraftSessionService;Ljava/util/concurrent/Executor;)V + p 1 textureManager + p 2 root + p 3 sessionService + p 4 executor + m ()V +c net/minecraft/client/resources/SkinManager$1 grm$1 net/minecraft/class_1071$1 + f Lcom/mojang/authlib/minecraft/MinecraftSessionService; val$sessionService a field_25795 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor b field_45638 + f Lnet/minecraft/client/resources/SkinManager; field_25796 c field_25796 + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;)Ljava/util/concurrent/CompletableFuture; load a method_52868 + p 1 cacheKey + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;Lcom/mojang/authlib/minecraft/MinecraftProfileTextures;)Ljava/util/concurrent/CompletionStage; method_52866 a method_52866 + m (Lnet/minecraft/client/resources/SkinManager$CacheKey;Lcom/mojang/authlib/minecraft/MinecraftSessionService;)Lcom/mojang/authlib/minecraft/MinecraftProfileTextures; method_54647 a method_54647 + m (Lnet/minecraft/client/resources/SkinManager;Lcom/mojang/authlib/minecraft/MinecraftSessionService;Ljava/util/concurrent/Executor;)V +c net/minecraft/client/resources/SkinManager$2 grm$2 net/minecraft/class_1071$2 + f [I $SwitchMap$com$mojang$authlib$minecraft$MinecraftProfileTexture$Type a field_39908 + m ()V +c net/minecraft/client/resources/SkinManager$CacheKey grm$a net/minecraft/class_1071$class_8686 + f Ljava/util/UUID; profileId a comp_2010 + f Lcom/mojang/authlib/properties/Property; packedTextures b comp_2011 + m ()Ljava/util/UUID; profileId a comp_2010 + m ()Lcom/mojang/authlib/properties/Property; packedTextures b comp_2011 + m (Ljava/util/UUID;Lcom/mojang/authlib/properties/Property;)V +c net/minecraft/client/resources/SkinManager$TextureCache grm$b net/minecraft/class_1071$class_8687 + f Lnet/minecraft/client/renderer/texture/TextureManager; textureManager a field_45639 + f Ljava/nio/file/Path; root b field_45640 + f Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type; type c field_45641 + f Ljava/util/Map; textures d field_45642 + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; getOrLoad a method_52870 + p 1 texture + m (Ljava/lang/String;)Lnet/minecraft/resources/ResourceLocation; getTextureLocation a method_52871 + p 1 name + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/resources/ResourceLocation;)V method_52872 a method_52872 + m (Lcom/mojang/authlib/minecraft/MinecraftProfileTexture;)Ljava/util/concurrent/CompletableFuture; registerTexture b method_52873 + p 1 texture + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/nio/file/Path;Lcom/mojang/authlib/minecraft/MinecraftProfileTexture$Type;)V + p 1 textureManager + p 2 root + p 3 type +c net/minecraft/client/resources/SplashManager grn net/minecraft/class_4008 + f Lnet/minecraft/resources/ResourceLocation; SPLASHES_LOCATION a field_17904 + f Lnet/minecraft/util/RandomSource; RANDOM b field_17905 + f Ljava/util/List; splashes c field_17906 + f Lnet/minecraft/client/User; user d field_18934 + m ()Lnet/minecraft/client/gui/components/SplashRenderer; getSplash a method_18174 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Ljava/util/List; prepare a method_18176 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + p 2 profiler + m (Ljava/lang/String;)Z method_18664 a method_18664 + m (Ljava/util/List;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18175 + p 1 object + p 2 resourceManager + p 3 profiler + m (Lnet/minecraft/client/User;)V + p 1 user + m ()V +c net/minecraft/client/resources/TextureAtlasHolder gro net/minecraft/class_4075 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; textureAtlas a field_18230 + f Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b field_41425 + f Ljava/util/Set; metadataSections c field_45644 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_18667 + c Gets a sprite associated with the passed resource location. + p 1 location + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V method_45860 a method_45860 + m (Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18666 + p 1 preparations + p 2 profiler + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 textureManager + p 2 textureAtlasLocation + p 3 atlasInfoLocation + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Set;)V + p 1 textureManager + p 2 textureAtlasLocation + p 3 atlasInfoLocation + p 4 metadataSections +c net/minecraft/client/resources/language/ClientLanguage grp net/minecraft/class_1078 + f Lorg/slf4j/Logger; LOGGER b field_5332 + f Ljava/util/Map; storage c field_5330 + f Z defaultRightToLeft d field_25289 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/List;Z)Lnet/minecraft/client/resources/language/ClientLanguage; loadFrom a method_4675 + p 0 resourceManager + p 1 filenames + p 2 defaultRightToLeft + m (Ljava/lang/String;Ljava/util/List;Ljava/util/Map;)V appendFrom a method_4676 + p 0 languageName + p 1 resources + p 2 destinationMap + m (Ljava/util/Map;Z)V + p 1 storage + p 2 defaultRightToLeft + m ()V +c net/minecraft/client/resources/language/FormattedBidiReorder grq net/minecraft/class_5491 + m (Ljava/lang/String;)Ljava/lang/String; shape a method_30921 + p 0 text + m (Lnet/minecraft/network/chat/FormattedText;Z)Lnet/minecraft/util/FormattedCharSequence; reorder a method_30922 + p 0 text + p 1 defaultRightToLeft + m ()V +c net/minecraft/client/resources/language/I18n grr net/minecraft/class_1074 + f Lnet/minecraft/locale/Language; language a field_25290 + m (Ljava/lang/String;)Z exists a method_4663 + p 0 key + m (Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String; get a method_4662 + c Translates the given string and then formats it. Equivalent to {@code String.format(translate(key), parameters)}. + p 0 translateKey + p 1 parameters + m (Lnet/minecraft/locale/Language;)V setLanguage a method_29391 + p 0 language + m ()V + m ()V +c net/minecraft/client/resources/language/LanguageInfo grs net/minecraft/class_1077 + f Lcom/mojang/serialization/Codec; CODEC a field_41862 + f Ljava/lang/String; region b comp_1198 + f Ljava/lang/String; name c comp_1199 + f Z bidirectional d comp_1200 + m ()Lnet/minecraft/network/chat/Component; toComponent a method_48303 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_48304 a method_48304 + m ()Ljava/lang/String; region b comp_1198 + m ()Ljava/lang/String; name c comp_1199 + m ()Z bidirectional d comp_1200 + m (Ljava/lang/String;Ljava/lang/String;Z)V + m ()V +c net/minecraft/client/resources/language/LanguageManager grt net/minecraft/class_1076 + f Lorg/slf4j/Logger; LOGGER a field_5325 + f Lnet/minecraft/client/resources/language/LanguageInfo; DEFAULT_LANGUAGE b field_25291 + f Ljava/util/Map; languages c field_5324 + f Ljava/lang/String; currentCode d field_5323 + f Ljava/util/function/Consumer; reloadCallback e field_51830 + m ()Ljava/lang/String; getSelected a method_4669 + m (Ljava/lang/String;)V setSelected a method_4667 + p 1 selected + m (Ljava/util/Map;Lnet/minecraft/server/packs/PackResources;)V method_29392 a method_29392 + m (Ljava/util/stream/Stream;)Ljava/util/Map; extractLanguages a method_29393 + p 0 packResources + m ()Ljava/util/SortedMap; getLanguages b method_4665 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/language/LanguageInfo; getLanguage b method_4668 + p 1 code + m (Ljava/lang/String;Ljava/util/function/Consumer;)V + p 1 currentCode + p 2 reloadFallback + m ()V +c net/minecraft/client/resources/language/package-info gru net/minecraft/class_6263 +c net/minecraft/client/resources/metadata/animation/AnimationFrame grv net/minecraft/class_1080 + f I UNKNOWN_FRAME_TIME a field_32973 + f I index b field_5341 + f I time c field_5340 + m ()I getIndex a method_4690 + m (I)I getTime a method_4691 + p 1 defaultValue + m (I)V + p 1 index + m (II)V + p 1 index + p 2 time +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection grw net/minecraft/class_1079 + f Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSectionSerializer; SERIALIZER a field_5337 + f Ljava/lang/String; SECTION_NAME b field_32974 + f I DEFAULT_FRAME_TIME c field_32975 + f I UNKNOWN_SIZE d field_32976 + f Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection; EMPTY e field_21768 + f Ljava/util/List; frames f field_5339 + f I frameWidth g field_5338 + f I frameHeight h field_5336 + f I defaultFrameTime i field_5334 + f Z interpolatedFrames j field_5335 + m ()I getDefaultFrameTime a method_4684 + m (II)Lnet/minecraft/client/resources/metadata/animation/FrameSize; calculateFrameSize a method_24143 + p 1 width + p 2 height + m (Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection$FrameOutput;)V forEachFrame a method_33460 + p 1 output + m ()Z isInterpolatedFrames b method_4685 + m (Ljava/util/List;IIIZ)V + p 1 frames + p 2 frameWidth + p 3 frameHeight + p 4 defaultFrameTime + p 5 interpolatedFrames + m ()V +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection$1 grw$1 net/minecraft/class_1079$1 + m (Ljava/util/List;IIIZ)V +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSection$FrameOutput grw$a net/minecraft/class_1079$class_5792 +c net/minecraft/client/resources/metadata/animation/AnimationMetadataSectionSerializer grx net/minecraft/class_1081 + m (ILcom/google/gson/JsonElement;)Lnet/minecraft/client/resources/metadata/animation/AnimationFrame; getFrame a method_4693 + p 1 frame + p 2 element + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/animation/AnimationMetadataSection; fromJson b method_4692 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/animation/FrameSize gry net/minecraft/class_7771 + f I width a comp_1049 + f I height b comp_1050 + m ()I width a comp_1049 + m ()I height b comp_1050 + m (II)V +c net/minecraft/client/resources/metadata/animation/VillagerMetaDataSection grz net/minecraft/class_3888 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetadataSectionSerializer; SERIALIZER a field_17158 + f Ljava/lang/String; SECTION_NAME b field_32977 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; hat c field_17159 + m ()Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getHat a method_17167 + m (Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat;)V + p 1 hat + m ()V +c net/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat grz$a net/minecraft/class_3888$class_3889 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; NONE a field_17160 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; PARTIAL b field_17161 + f Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; FULL c field_17162 + f Ljava/util/Map; BY_NAME d field_17163 + f Ljava/lang/String; name e field_17164 + f [Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; $VALUES f field_17165 + m ()Ljava/lang/String; getName a method_17168 + m (Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; method_17169 a method_17169 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; getByName a method_17170 + p 0 name + m ()[Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection$Hat; $values b method_36924 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/resources/metadata/animation/VillagerMetadataSectionSerializer gsa net/minecraft/class_3890 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/animation/VillagerMetaDataSection; fromJson b method_17171 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/animation/package-info gsb net/minecraft/class_6264 +c net/minecraft/client/resources/metadata/gui/GuiMetadataSection gsc net/minecraft/class_8689 + f Lnet/minecraft/client/resources/metadata/gui/GuiMetadataSection; DEFAULT a field_45645 + f Lcom/mojang/serialization/Codec; CODEC b field_45646 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE c field_45647 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; scaling d comp_1636 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; scaling a comp_1636 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52875 a method_52875 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling;)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling gsd net/minecraft/class_8690 + f Lcom/mojang/serialization/Codec; CODEC a field_45648 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling; DEFAULT b field_45649 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; type a method_52876 + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice gsd$a net/minecraft/class_8690$class_8691 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45650 + f I width d comp_1637 + f I height e comp_1638 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; border f comp_1639 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52877 a method_52877 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Ljava/lang/String; method_53492 a method_53492 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Lcom/mojang/serialization/DataResult; validate a method_53493 + p 0 nineSlice + m ()I width b comp_1637 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice;)Ljava/lang/String; method_53494 b method_53494 + m ()I height c comp_1638 + m ()Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; border d comp_1639 + m (IILnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border gsd$a$a net/minecraft/class_8690$class_8691$class_8692 + f I left a comp_1640 + f I top b comp_1641 + f I right c comp_1642 + f I bottom d comp_1643 + f Lcom/mojang/serialization/Codec; VALUE_CODEC e field_45651 + f Lcom/mojang/serialization/Codec; RECORD_CODEC f field_45652 + f Lcom/mojang/serialization/Codec; CODEC g field_45653 + m ()I left a comp_1640 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52879 a method_52879 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)Lcom/mojang/datafixers/util/Either; method_52880 a method_52880 + m (Ljava/lang/Integer;)Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border; method_52881 a method_52881 + m ()I top b comp_1641 + m (Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$NineSlice$Border;)Lcom/mojang/serialization/DataResult; method_52882 b method_52882 + m ()I right c comp_1642 + m ()I bottom d comp_1643 + m ()Ljava/util/OptionalInt; unpackValue e method_52883 + m ()Ljava/lang/String; method_52884 f method_52884 + m (IIII)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Stretch gsd$b net/minecraft/class_8690$class_8693 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45654 + m ()V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Tile gsd$c net/minecraft/class_8690$class_8694 + f Lcom/mojang/serialization/MapCodec; CODEC c field_45655 + f I width d comp_1644 + f I height e comp_1645 + m (Lcom/mojang/serialization/codecs/RecordCodecBuilder$Instance;)Lcom/mojang/datafixers/kinds/App; method_52885 a method_52885 + m ()I width b comp_1644 + m ()I height c comp_1645 + m (II)V + m ()V +c net/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type gsd$d net/minecraft/class_8690$class_8695 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; STRETCH a field_45656 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; TILE b field_45657 + f Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; NINE_SLICE c field_45658 + f Lcom/mojang/serialization/Codec; CODEC d field_45659 + f Ljava/lang/String; key e field_45660 + f Lcom/mojang/serialization/MapCodec; codec f field_45661 + f [Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; $VALUES g field_45662 + m ()Lcom/mojang/serialization/MapCodec; codec a method_52886 + m ()[Lnet/minecraft/client/resources/metadata/gui/GuiSpriteScaling$Type; $values b method_52887 + m (Ljava/lang/String;ILjava/lang/String;Lcom/mojang/serialization/MapCodec;)V + p 3 key + p 4 codec + m ()V +c net/minecraft/client/resources/metadata/gui/package-info gse net/minecraft/class_8696 +c net/minecraft/client/resources/metadata/language/LanguageMetadataSection gsf net/minecraft/class_1082 + f Lcom/mojang/serialization/Codec; LANGUAGE_CODE_CODEC a field_41863 + f Lcom/mojang/serialization/Codec; CODEC b field_41864 + f Lnet/minecraft/server/packs/metadata/MetadataSectionType; TYPE c field_41865 + f Ljava/util/Map; languages d comp_1201 + m ()Ljava/util/Map; languages a comp_1201 + m (Ljava/util/Map;)V + m ()V +c net/minecraft/client/resources/metadata/language/package-info gsg net/minecraft/class_6265 +c net/minecraft/client/resources/metadata/package-info gsh net/minecraft/class_6266 +c net/minecraft/client/resources/metadata/texture/TextureMetadataSection gsi net/minecraft/class_1084 + f Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSectionSerializer; SERIALIZER a field_5344 + f Z DEFAULT_BLUR b field_32980 + f Z DEFAULT_CLAMP c field_32981 + f Z blur d field_5346 + f Z clamp e field_5345 + m ()Z isBlur a method_4696 + m ()Z isClamp b method_4697 + m (ZZ)V + p 1 blur + p 2 clamp + m ()V +c net/minecraft/client/resources/metadata/texture/TextureMetadataSectionSerializer gsj net/minecraft/class_1085 + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/metadata/texture/TextureMetadataSection; fromJson b method_4698 + p 1 json + m ()V +c net/minecraft/client/resources/metadata/texture/package-info gsk net/minecraft/class_6267 +c net/minecraft/client/resources/model/AtlasSet gsl net/minecraft/class_4724 + f Ljava/util/Map; atlases a field_21746 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlas; getAtlas a method_24098 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;ILjava/util/concurrent/Executor;)Ljava/util/Map; scheduleLoad a method_45862 + p 1 resourceManager + p 2 mipLevel + p 3 executor + m (Lnet/minecraft/server/packs/resources/ResourceManager;ILjava/util/concurrent/Executor;Ljava/util/Map$Entry;)Ljava/util/concurrent/CompletableFuture; method_45863 a method_45863 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Ljava/util/Map$Entry;)Lnet/minecraft/client/resources/model/AtlasSet$AtlasEntry; method_45864 a method_45864 + m (Lnet/minecraft/client/resources/model/AtlasSet$AtlasEntry;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)Lnet/minecraft/client/resources/model/AtlasSet$StitchResult; method_45867 a method_45867 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/texture/TextureManager;)V + p 1 atlasMap + p 2 textureManager +c net/minecraft/client/resources/model/AtlasSet$AtlasEntry gsl$a net/minecraft/class_4724$class_7772 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a comp_1051 + f Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b comp_1168 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a comp_1051 + m ()Lnet/minecraft/resources/ResourceLocation; atlasInfoLocation b comp_1168 + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;Lnet/minecraft/resources/ResourceLocation;)V +c net/minecraft/client/resources/model/AtlasSet$StitchResult gsl$b net/minecraft/class_4724$class_7774 + f Lnet/minecraft/client/renderer/texture/TextureAtlas; atlas a field_40564 + f Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations; preparations b field_40565 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; missing a method_45868 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getSprite a method_45869 + p 1 location + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload b method_45870 + m ()V upload c method_45871 + m (Lnet/minecraft/client/renderer/texture/TextureAtlas;Lnet/minecraft/client/renderer/texture/SpriteLoader$Preparations;)V + p 1 atlas + p 2 preperations +c net/minecraft/client/resources/model/BakedModel gsm net/minecraft/class_1087 + c

Interface {@link net.fabricmc.fabric.api.renderer.v1.model.FabricBakedModel} injected by mod fabric-renderer-api-v1

+ m ()Z useAmbientOcclusion a method_4708 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;)Ljava/util/List; getQuads a method_4707 + p 1 state + p 2 direction + p 3 random + m ()Z isGui3d b method_4712 + m ()Z usesBlockLight c method_24304 + m ()Z isCustomRenderer d method_4713 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; getParticleIcon e method_4711 + m ()Lnet/minecraft/client/renderer/block/model/ItemTransforms; getTransforms f method_4709 + m ()Lnet/minecraft/client/renderer/block/model/ItemOverrides; getOverrides g method_4710 +c net/minecraft/client/resources/model/BlockModelRotation gsn net/minecraft/class_1086 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y0 a field_5350 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y90 b field_5366 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y180 c field_5355 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X0_Y270 d field_5347 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y0 e field_5351 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y90 f field_5360 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y180 g field_5367 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X90_Y270 h field_5354 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y0 i field_5358 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y90 j field_5348 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y180 k field_5356 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X180_Y270 l field_5359 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y0 m field_5353 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y90 n field_5349 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y180 o field_5361 + f Lnet/minecraft/client/resources/model/BlockModelRotation; X270_Y270 p field_5352 + f I DEGREES q field_32982 + f Ljava/util/Map; BY_INDEX r field_5357 + f Lcom/mojang/math/Transformation; transformation s field_23373 + f Lcom/mojang/math/OctahedralGroup; actualRotation t field_23374 + f I index u field_5364 + f [Lnet/minecraft/client/resources/model/BlockModelRotation; $VALUES v field_5365 + m ()Lcom/mojang/math/OctahedralGroup; actualRotation a method_35808 + m (II)Lnet/minecraft/client/resources/model/BlockModelRotation; by a method_4699 + p 0 x + p 1 y + m (Lnet/minecraft/client/resources/model/BlockModelRotation;)Lnet/minecraft/client/resources/model/BlockModelRotation; method_4700 a method_4700 + m (II)I getIndex b method_4703 + p 0 x + p 1 y + m (Lnet/minecraft/client/resources/model/BlockModelRotation;)Ljava/lang/Integer; method_4701 b method_4701 + m ()[Lnet/minecraft/client/resources/model/BlockModelRotation; $values d method_36925 + m (Ljava/lang/String;III)V + p 3 x + p 4 y + m ()V +c net/minecraft/client/resources/model/BlockStateModelLoader gso net/minecraft/class_9824 + f I SINGLETON_MODEL_GROUP a field_52259 + f Lnet/minecraft/resources/FileToIdConverter; BLOCKSTATE_LISTER b field_52260 + f Lorg/slf4j/Logger; LOGGER c field_52261 + f I INVISIBLE_MODEL_GROUP d field_52262 + f Lcom/google/common/base/Splitter; COMMA_SPLITTER e field_52263 + f Lcom/google/common/base/Splitter; EQUAL_SPLITTER f field_52264 + f Lnet/minecraft/world/level/block/state/StateDefinition; ITEM_FRAME_FAKE_DEFINITION g field_52265 + f Ljava/util/Map; STATIC_DEFINITIONS h field_52266 + f Ljava/util/Map; blockStateResources i field_52267 + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler j field_52268 + f Lnet/minecraft/client/color/block/BlockColors; blockColors k field_52269 + f Ljava/util/function/BiConsumer; discoveredModelOutput l field_52270 + f I nextModelGroup m field_52271 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups n field_52272 + f Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel; missingModel o field_52273 + f Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context; context p field_52274 + m ()V loadAllBlockStates a method_61051 + m (ILnet/minecraft/world/level/block/state/BlockState;)V method_61052 a method_61052 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/StateDefinition;)V loadBlockStateDefinitions a method_61053 + p 1 blockStateId + p 2 stateDefenition + m (Lnet/minecraft/world/level/block/Block;Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;)Z method_61054 a method_61054 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/MultiVariant;Ljava/util/List;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61055 a method_61055 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/List;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61056 a method_61056 + m (Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/lang/String;)Ljava/util/function/Predicate; predicate a method_61057 + p 0 stateDefentition + p 1 properties + m (Lnet/minecraft/world/level/block/state/properties/Property;Ljava/lang/String;)Ljava/lang/Comparable; getValueHelper a method_61058 + p 0 property + p 1 propertyName + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel;Ljava/util/Map$Entry;)Z method_61059 a method_61059 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;)Ljava/util/Set; method_61060 a method_61060 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;Ljava/util/Set;)V method_61061 a method_61061 + m (Lit/unimi/dsi/fastutil/objects/Object2IntOpenHashMap;)V method_61062 a method_61062 + m (Ljava/lang/Iterable;)V registerModelGroup a method_61063 + p 1 models + m (Ljava/util/List;Lnet/minecraft/world/level/block/state/StateDefinition;Ljava/util/Map;Ljava/util/List;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/model/BlockStateModelLoader$LoadedJson;Ljava/lang/String;Lnet/minecraft/client/renderer/block/model/MultiVariant;)V method_61064 a method_61064 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)V method_61065 a method_61065 + m (Ljava/util/Map;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/world/level/block/state/BlockState;)V method_61066 a method_61066 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/MultiVariant;Ljava/util/List;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition;Lnet/minecraft/world/level/block/state/BlockState;)V method_61067 a method_61067 + m (Ljava/util/Map;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/List;Lnet/minecraft/world/level/block/state/BlockState;)V method_61068 a method_61068 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getModelGroups b method_61069 + m (Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; method_61070 b method_61070 + m (Ljava/util/Map;Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/resources/model/UnbakedModel;Lnet/minecraft/client/color/block/BlockColors;Ljava/util/function/BiConsumer;)V + p 1 blockStateResources + p 2 profiler + p 3 missingModel + p 4 blockColors + p 5 discoveredModelOutput + m ()V +c net/minecraft/client/resources/model/BlockStateModelLoader$BlockStateDefinitionException gso$a net/minecraft/class_9824$class_1089 + m (Ljava/lang/String;)V + p 1 message +c net/minecraft/client/resources/model/BlockStateModelLoader$LoadedJson gso$b net/minecraft/class_9824$class_7777 + f Ljava/lang/String; source a comp_1056 + f Lcom/google/gson/JsonElement; data b comp_1057 + m ()Ljava/lang/String; source a comp_1056 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/renderer/block/model/BlockModelDefinition$Context;)Lnet/minecraft/client/renderer/block/model/BlockModelDefinition; parse a method_61071 + p 1 blockStateId + p 2 context + m ()Lcom/google/gson/JsonElement; data b comp_1057 + m (Ljava/lang/String;Lcom/google/gson/JsonElement;)V +c net/minecraft/client/resources/model/BlockStateModelLoader$LoadedModel gso$c net/minecraft/class_9824$class_9825 + f Lnet/minecraft/client/resources/model/UnbakedModel; model a comp_2871 + f Ljava/util/function/Supplier; key b comp_2872 + m ()Lnet/minecraft/client/resources/model/UnbakedModel; model a comp_2871 + m ()Ljava/util/function/Supplier; key b comp_2872 + m (Lnet/minecraft/client/resources/model/UnbakedModel;Ljava/util/function/Supplier;)V +c net/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey gso$d net/minecraft/class_9824$class_4455 + f Ljava/util/List; models a comp_2873 + f Ljava/util/List; coloringValues b comp_2874 + m ()Ljava/util/List; models a comp_2873 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/MultiPart;Ljava/util/Collection;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; create a method_21607 + p 0 state + p 1 model + p 2 properties + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/resources/model/UnbakedModel;Ljava/util/Collection;)Lnet/minecraft/client/resources/model/BlockStateModelLoader$ModelGroupKey; create a method_21608 + p 0 state + p 1 model + p 2 properties + m (Lnet/minecraft/world/level/block/state/BlockState;Ljava/util/Collection;)Ljava/util/List; getColoringValues a method_21609 + p 0 state + p 1 properties + m (Lnet/minecraft/world/level/block/state/StateDefinition;Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/client/renderer/block/model/multipart/Selector;)Z method_21610 a method_21610 + m ()Ljava/util/List; coloringValues b comp_2874 + m (Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/resources/model/BuiltInModel gsp net/minecraft/class_1090 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; itemTransforms a field_5404 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides b field_5405 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleTexture c field_16594 + f Z usesBlockLight d field_21862 + m (Lnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Z)V + p 1 itemTransforms + p 2 overrides + p 3 particleTexture + p 4 usesBlockLight +c net/minecraft/client/resources/model/Material gsq net/minecraft/class_4730 + f Ljava/util/Comparator; COMPARATOR a field_40566 + f Lnet/minecraft/resources/ResourceLocation; atlasLocation b field_21769 + f Lnet/minecraft/resources/ResourceLocation; texture c field_21770 + f Lnet/minecraft/client/renderer/RenderType; renderType d field_21771 + m ()Lnet/minecraft/resources/ResourceLocation; atlasLocation a method_24144 + m (Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/util/function/Function;)Lcom/mojang/blaze3d/vertex/VertexConsumer; buffer a method_24145 + p 1 buffer + p 2 renderTypeGetter + m (Lnet/minecraft/client/renderer/MultiBufferSource;Ljava/util/function/Function;Z)Lcom/mojang/blaze3d/vertex/VertexConsumer; buffer a method_30001 + p 1 buffer + p 2 renderTypeGetter + p 3 withGlint + m (Ljava/util/function/Function;)Lnet/minecraft/client/renderer/RenderType; renderType a method_24146 + p 1 renderTypeGetter + m ()Lnet/minecraft/resources/ResourceLocation; texture b method_24147 + m ()Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; sprite c method_24148 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/resources/ResourceLocation;)V + p 1 atlasLocation + p 2 texture + m ()V +c net/minecraft/client/resources/model/ModelBaker gsr net/minecraft/class_7775 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/UnbakedModel; getModel a method_45872 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bake a method_45873 + p 1 location + p 2 transform +c net/minecraft/client/resources/model/ModelBakery gss net/minecraft/class_1088 + f Ljava/util/Set; loadingStack A field_5390 + f Ljava/util/Map; unbakedCache B field_5376 + f Ljava/util/Map; bakedCache C field_5398 + f Ljava/util/Map; topLevelModels D field_5394 + f Ljava/util/Map; bakedTopLevelModels E field_5387 + f Lnet/minecraft/client/resources/model/UnbakedModel; missingModel F field_52275 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups G field_20274 + f Lnet/minecraft/client/resources/model/Material; FIRE_0 a field_5397 + f Lnet/minecraft/client/resources/model/Material; FIRE_1 b field_5370 + f Lnet/minecraft/client/resources/model/Material; LAVA_FLOW c field_5381 + f Lnet/minecraft/client/resources/model/Material; WATER_FLOW d field_5391 + f Lnet/minecraft/client/resources/model/Material; WATER_OVERLAY e field_5388 + f Lnet/minecraft/client/resources/model/Material; BANNER_BASE f field_20847 + f Lnet/minecraft/client/resources/model/Material; SHIELD_BASE g field_21557 + f Lnet/minecraft/client/resources/model/Material; NO_PATTERN_SHIELD h field_21558 + f I DESTROY_STAGE_COUNT i field_32983 + f Ljava/util/List; DESTROY_STAGES j field_20848 + f Ljava/util/List; BREAKING_LOCATIONS k field_21020 + f Ljava/util/List; DESTROY_TYPES l field_21772 + f Lnet/minecraft/resources/ResourceLocation; MISSING_MODEL_LOCATION m field_5374 + f Lnet/minecraft/client/resources/model/ModelResourceLocation; MISSING_MODEL_VARIANT n field_52276 + f Lnet/minecraft/resources/FileToIdConverter; MODEL_LISTER o field_40570 + f Ljava/lang/String; MISSING_MODEL_MESH p field_5371 + f Lnet/minecraft/client/renderer/block/model/BlockModel; GENERATION_MARKER q field_5400 + f Lnet/minecraft/client/renderer/block/model/BlockModel; BLOCK_ENTITY_MARKER r field_5389 + f Lorg/slf4j/Logger; LOGGER s field_5380 + f Ljava/lang/String; BUILTIN_SLASH t field_32986 + f Ljava/lang/String; BUILTIN_SLASH_GENERATED u field_32987 + f Ljava/lang/String; BUILTIN_BLOCK_ENTITY v field_32988 + f Ljava/lang/String; MISSING_MODEL_NAME w field_32989 + f Ljava/util/Map; BUILTIN_MODELS x field_5396 + f Lnet/minecraft/client/renderer/block/model/ItemModelGenerator; ITEM_MODEL_GENERATOR y field_5384 + f Ljava/util/Map; modelResources z field_40567 + m ()Ljava/util/Map; getBakedTopLevelModels a method_4734 + m (I)Lnet/minecraft/resources/ResourceLocation; method_22820 a method_22820 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/UnbakedModel; getModel a method_4726 + p 1 modelLocation + m (Lnet/minecraft/client/renderer/block/model/BlockModel;)V method_4721 a method_4721 + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;)V bakeModels a method_45876 + p 1 textureGetter + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V method_61072 a method_61072 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;)V loadSpecialItemModelAndDependencies a method_61073 + p 1 modelLocation + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V registerModelAndLoadDependencies a method_61074 + p 1 modelLocation + p 2 model + m (Lnet/minecraft/client/resources/model/UnbakedModel;)V method_45875 a method_45875 + m (Ljava/lang/String;)Ljava/lang/String; method_60912 a method_60912 + m ()Lit/unimi/dsi/fastutil/objects/Object2IntMap; getModelGroups b method_21605 + m (Lnet/minecraft/resources/ResourceLocation;)V loadItemModelAndDependencies b method_61075 + p 1 modelLocation + m (Lnet/minecraft/client/renderer/block/model/BlockModel;)V method_4719 b method_4719 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/UnbakedModel;)V registerModel b method_61076 + p 1 modelLocation + p 2 model + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/block/model/BlockModel; loadBlockModel c method_4718 + p 1 location + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/resources/ResourceLocation; method_23216 d method_23216 + m (Lnet/minecraft/client/color/block/BlockColors;Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/Map;)V + p 1 blockColors + p 2 profilerFiller + p 3 modelResources + p 4 blockStateResources + m ()V +c net/minecraft/client/resources/model/ModelBakery$BakedCacheKey gss$a net/minecraft/class_1088$class_7776 + f Lnet/minecraft/resources/ResourceLocation; id a comp_1053 + f Lcom/mojang/math/Transformation; transformation b comp_1054 + f Z isUvLocked c comp_1055 + m ()Lnet/minecraft/resources/ResourceLocation; id a comp_1053 + m ()Lcom/mojang/math/Transformation; transformation b comp_1054 + m ()Z isUvLocked c comp_1055 + m (Lnet/minecraft/resources/ResourceLocation;Lcom/mojang/math/Transformation;Z)V +c net/minecraft/client/resources/model/ModelBakery$ModelBakerImpl gss$b net/minecraft/class_1088$class_7778 + f Lnet/minecraft/client/resources/model/ModelBakery; field_40571 a field_40571 + f Ljava/util/function/Function; modelTextureGetter b field_40572 + m (Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; method_45878 a method_45878 + m (Lnet/minecraft/client/resources/model/UnbakedModel;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bakeUncached a method_61077 + p 1 model + p 2 state + m (Lnet/minecraft/client/resources/model/ModelBakery;Lnet/minecraft/client/resources/model/ModelBakery$TextureGetter;Lnet/minecraft/client/resources/model/ModelResourceLocation;)V + p 2 textureGetter + p 3 modelLocation +c net/minecraft/client/resources/model/ModelBakery$TextureGetter gss$c net/minecraft/class_1088$class_9826 +c net/minecraft/client/resources/model/ModelManager gst net/minecraft/class_1092 + c

Interface {@link net.fabricmc.fabric.api.client.model.loading.v1.FabricBakedModelManager} injected by mod fabric-model-loading-api-v1

+ f Lorg/slf4j/Logger; LOGGER a field_40573 + f Ljava/util/Map; VANILLA_ATLASES b field_40574 + f Ljava/util/Map; bakedRegistry c field_5408 + f Lnet/minecraft/client/resources/model/AtlasSet; atlases d field_21775 + f Lnet/minecraft/client/renderer/block/BlockModelShaper; blockModelShaper e field_5410 + f Lnet/minecraft/client/color/block/BlockColors; blockColors f field_20277 + f I maxMipmapLevels g field_21777 + f Lnet/minecraft/client/resources/model/BakedModel; missingModel h field_5407 + f Lit/unimi/dsi/fastutil/objects/Object2IntMap; modelGroups i field_20278 + m ()Lnet/minecraft/client/resources/model/BakedModel; getMissingModel a method_4744 + m (I)V updateMaxMipLevel a method_24152 + p 1 level + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/renderer/texture/TextureAtlas; getAtlas a method_24153 + p 1 location + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45880 a method_45880 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadBlockModels a method_45881 + p 0 resourceManager + p 1 executor + m (Lnet/minecraft/util/profiling/ProfilerFiller;Lnet/minecraft/client/resources/model/ModelManager$ReloadState;)V method_45882 a method_45882 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Lnet/minecraft/client/resources/model/ModelBakery;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; loadModels a method_45883 + p 1 profilerFiller + p 2 atlasPreparations + p 3 modelBakery + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/Map;)Lnet/minecraft/client/resources/model/ModelBakery; method_45884 a method_45884 + m (Lnet/minecraft/util/profiling/ProfilerFiller;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;Ljava/lang/Void;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; method_45885 a method_45885 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockState;)Z requiresRender a method_21611 + p 1 oldState + p 2 newState + m (Lnet/minecraft/client/resources/model/Material;)Ljava/lang/String; method_45886 a method_45886 + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;)Ljava/util/concurrent/CompletionStage; method_45887 a method_45887 + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18179 + p 1 reloadState + p 2 profiler + m (Lnet/minecraft/client/resources/model/ModelManager$ReloadState;Ljava/lang/Void;)Lnet/minecraft/client/resources/model/ModelManager$ReloadState; method_45888 a method_45888 + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;)Lnet/minecraft/client/resources/model/BakedModel; getModel a method_4742 + p 1 modelLocation + m (Lnet/minecraft/client/resources/model/ModelResourceLocation;Ljava/util/Collection;)V method_45879 a method_45879 + m (Ljava/util/List;)Ljava/util/Map; method_45889 a method_45889 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_45890 a method_45890 + m (Ljava/util/Map;Lcom/google/common/collect/Multimap;Lnet/minecraft/client/resources/model/ModelResourceLocation;Lnet/minecraft/client/resources/model/Material;)Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; method_45891 a method_45891 + m (Ljava/util/Map;Lnet/minecraft/client/resources/model/BakedModel;Ljava/util/Map;Lnet/minecraft/world/level/block/state/BlockState;)V method_45892 a method_45892 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45893 a method_45893 + m ()Lnet/minecraft/client/renderer/block/BlockModelShaper; getBlockModelShaper b method_4743 + m (I)[Ljava/util/concurrent/CompletableFuture; method_45894 b method_45894 + m (Lnet/minecraft/server/packs/resources/ResourceManager;)Ljava/util/Map; method_45895 b method_45895 + m (Lnet/minecraft/server/packs/resources/ResourceManager;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; loadBlockStates b method_45896 + p 0 resourceManager + p 1 executor + m (Ljava/util/List;)Ljava/util/Map; method_45897 b method_45897 + m (Ljava/util/Map$Entry;)Lcom/mojang/datafixers/util/Pair; method_45898 b method_45898 + m (Ljava/util/concurrent/Executor;Ljava/util/Map;)Ljava/util/concurrent/CompletionStage; method_45899 b method_45899 + m (I)[Ljava/util/concurrent/CompletableFuture; method_45900 c method_45900 + m (Ljava/util/Map$Entry;)Lnet/minecraft/client/resources/model/AtlasSet$StitchResult; method_45902 c method_45902 + m (Lnet/minecraft/client/renderer/texture/TextureManager;Lnet/minecraft/client/color/block/BlockColors;I)V + p 1 textureManager + p 2 blockColors + p 3 maxMipmapLevels + m ()V +c net/minecraft/client/resources/model/ModelManager$ReloadState gst$a net/minecraft/class_1092$class_7779 + f Lnet/minecraft/client/resources/model/ModelBakery; modelBakery a comp_1058 + f Lnet/minecraft/client/resources/model/BakedModel; missingModel b comp_1059 + f Ljava/util/Map; modelCache c comp_1060 + f Ljava/util/Map; atlasPreparations d comp_1061 + f Ljava/util/concurrent/CompletableFuture; readyForUpload e comp_1062 + m ()Lnet/minecraft/client/resources/model/ModelBakery; modelBakery a comp_1058 + m ()Lnet/minecraft/client/resources/model/BakedModel; missingModel b comp_1059 + m ()Ljava/util/Map; modelCache c comp_1060 + m ()Ljava/util/Map; atlasPreparations d comp_1061 + m ()Ljava/util/concurrent/CompletableFuture; readyForUpload e comp_1062 + m (Lnet/minecraft/client/resources/model/ModelBakery;Lnet/minecraft/client/resources/model/BakedModel;Ljava/util/Map;Ljava/util/Map;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/resources/model/ModelResourceLocation gsu net/minecraft/class_1091 + f Ljava/lang/String; INVENTORY_VARIANT a field_52277 + f Lnet/minecraft/resources/ResourceLocation; id b comp_2875 + f Ljava/lang/String; variant c comp_2876 + m ()Ljava/lang/String; getVariant a method_4740 + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/resources/model/ModelResourceLocation; inventory a method_61078 + p 0 id + m (Ljava/lang/String;)Ljava/lang/String; lowercaseVariant a method_45911 + p 0 variant + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/resources/model/ModelResourceLocation; vanilla a method_45910 + p 0 path + p 1 variant + m ()Lnet/minecraft/resources/ResourceLocation; id b comp_2875 + m ()Ljava/lang/String; variant c comp_2876 + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 id + p 2 variant +c net/minecraft/client/resources/model/ModelState gsv net/minecraft/class_3665 + m ()Lcom/mojang/math/Transformation; getRotation b method_3509 + m ()Z isUvLocked c method_3512 +c net/minecraft/client/resources/model/MultiPartBakedModel gsw net/minecraft/class_1095 + f Z hasAmbientOcclusion a field_5430 + f Z isGui3d b field_5429 + f Z usesBlockLight c field_21863 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon d field_5425 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms e field_5426 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides f field_5428 + f Ljava/util/List; selectors g field_5427 + f Ljava/util/Map; selectorCache h field_5431 + m (Ljava/util/List;)V + p 1 selectors +c net/minecraft/client/resources/model/MultiPartBakedModel$Builder gsw$a net/minecraft/class_1095$class_1096 + f Ljava/util/List; selectors a field_5432 + m ()Lnet/minecraft/client/resources/model/BakedModel; build a method_4750 + m (Ljava/util/function/Predicate;Lnet/minecraft/client/resources/model/BakedModel;)V add a method_4749 + p 1 predicate + p 2 model + m ()V +c net/minecraft/client/resources/model/SimpleBakedModel gsx net/minecraft/class_1093 + f Ljava/util/List; unculledFaces a field_5411 + f Ljava/util/Map; culledFaces b field_5414 + f Z hasAmbientOcclusion c field_5415 + f Z isGui3d d field_5413 + f Z usesBlockLight e field_21864 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon f field_5416 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms g field_5417 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides h field_5412 + m (Ljava/util/List;Ljava/util/Map;ZZZLnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V + p 1 unculledFaces + p 2 culledFaces + p 3 hasAmbientOcclusion + p 4 usesBlockLight + p 5 isGui3d + p 6 particleIcon + p 7 transforms + p 8 overrides +c net/minecraft/client/resources/model/SimpleBakedModel$Builder gsx$a net/minecraft/class_1093$class_1094 + f Ljava/util/List; unculledFaces a field_5419 + f Ljava/util/Map; culledFaces b field_5422 + f Lnet/minecraft/client/renderer/block/model/ItemOverrides; overrides c field_5423 + f Z hasAmbientOcclusion d field_5421 + f Lnet/minecraft/client/renderer/texture/TextureAtlasSprite; particleIcon e field_5424 + f Z usesBlockLight f field_5420 + f Z isGui3d g field_21865 + f Lnet/minecraft/client/renderer/block/model/ItemTransforms; transforms h field_5418 + m ()Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; item a method_35809 + m (Lnet/minecraft/client/renderer/block/model/BakedQuad;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; addUnculledFace a method_4748 + p 1 quad + m (Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; particle a method_4747 + p 1 particleIcon + m (Lnet/minecraft/core/Direction;Lnet/minecraft/client/renderer/block/model/BakedQuad;)Lnet/minecraft/client/resources/model/SimpleBakedModel$Builder; addCulledFace a method_4745 + p 1 facing + p 2 quad + m ()Lnet/minecraft/client/resources/model/BakedModel; build b method_4746 + m (Lnet/minecraft/client/renderer/block/model/BlockModel;Lnet/minecraft/client/renderer/block/model/ItemOverrides;Z)V + p 1 blockModel + p 2 overrides + p 3 isGui3d + m (ZZZLnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V + p 1 hasAmbientOcclusion + p 2 usesBlockLight + p 3 isGui3d + p 4 transforms + p 5 overrides +c net/minecraft/client/resources/model/UnbakedModel gsy net/minecraft/class_1100 + m (Lnet/minecraft/client/resources/model/ModelBaker;Ljava/util/function/Function;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/resources/model/BakedModel; bake a method_4753 + p 1 baker + p 2 spriteGetter + p 3 state + m (Ljava/util/function/Function;)V resolveParents a method_45785 + p 1 resolver + m ()Ljava/util/Collection; getDependencies f method_4755 +c net/minecraft/client/resources/model/WeightedBakedModel gsz net/minecraft/class_1097 + f I totalWeight a field_5433 + f Ljava/util/List; list b field_5434 + f Lnet/minecraft/client/resources/model/BakedModel; wrapped c field_5435 + m (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/Direction;Lnet/minecraft/util/RandomSource;Lnet/minecraft/util/random/WeightedEntry$Wrapper;)Ljava/util/List; method_33461 a method_33461 + m (Ljava/util/List;)V + p 1 list +c net/minecraft/client/resources/model/WeightedBakedModel$Builder gsz$a net/minecraft/class_1097$class_1098 + f Ljava/util/List; list a field_5436 + m ()Lnet/minecraft/client/resources/model/BakedModel; build a method_4751 + m (Lnet/minecraft/client/resources/model/BakedModel;I)Lnet/minecraft/client/resources/model/WeightedBakedModel$Builder; add a method_4752 + p 1 model + p 2 weight + m ()V +c net/minecraft/client/resources/model/package-info gta net/minecraft/class_6268 +c net/minecraft/client/resources/package-info gtb net/minecraft/class_6269 +c net/minecraft/client/resources/server/DownloadedPackSource gtc net/minecraft/class_1066 + f Lnet/minecraft/network/chat/Component; SERVER_NAME a field_40562 + f Ljava/util/regex/Pattern; SHA1 b field_5296 + f Lorg/slf4j/Logger; LOGGER c field_5298 + f Lnet/minecraft/server/packs/repository/RepositorySource; EMPTY_SOURCE d field_47593 + f Lnet/minecraft/server/packs/PackSelectionConfig; DOWNLOADED_PACK_SELECTION e field_49134 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; LOG_ONLY_FEEDBACK f field_47594 + f Lnet/minecraft/client/Minecraft; minecraft g field_47595 + f Lnet/minecraft/server/packs/repository/RepositorySource; packSource h field_47596 + f Lnet/minecraft/client/resources/server/PackReloadConfig$Callbacks; pendingReload i field_47597 + f Lnet/minecraft/client/resources/server/ServerPackManager; manager j field_47598 + f Lnet/minecraft/server/packs/DownloadQueue; downloadQueue k field_47599 + f Lnet/minecraft/server/packs/repository/PackSource; packType l field_47600 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; packFeedback m field_47601 + f I packIdSerialNumber n field_47690 + m ()Lnet/minecraft/server/packs/repository/RepositorySource; createRepositorySource a method_55514 + m (I)Lnet/minecraft/util/HttpUtil$DownloadProgressListener; createDownloadNotifier a method_55515 + p 1 packCount + m (Lnet/minecraft/server/packs/DownloadQueue;Ljava/util/concurrent/Executor;Lnet/minecraft/client/User;Ljava/net/Proxy;)Lnet/minecraft/client/resources/server/PackDownloader; createDownloader a method_55516 + p 1 downloadQueue + p 2 executor + p 3 user + p 4 proxy + m (Lnet/minecraft/client/resources/server/PackReloadConfig$Callbacks;)V startReload a method_55517 + p 1 callbacks + m (Ljava/lang/String;)Lcom/google/common/hash/HashCode; tryParseSha1Hash a method_55518 + p 0 hash + m (Ljava/util/List;)Ljava/util/List; loadRequestedPacks a method_55519 + p 1 packs + m (Ljava/util/UUID;)V popPack a method_55520 + p 1 uuid + m (Ljava/util/UUID;Ljava/net/URL;Ljava/lang/String;)V pushPack a method_55523 + p 1 uuid + p 2 url + p 3 hash + m (Ljava/util/UUID;Ljava/nio/file/Path;)V pushLocalPack a method_55524 + p 1 uuid + p 2 path + m (Ljava/util/concurrent/Executor;)Ljava/lang/Runnable; createUpdateScheduler a method_55525 + p 1 executor + m (Ljava/util/function/Consumer;)V method_55526 a method_55526 + m (Lnet/minecraft/network/Connection;)Lnet/minecraft/client/resources/server/PackLoadFeedback; createPackResponseSender a method_55527 + p 0 connection + m (Lnet/minecraft/network/Connection;Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus;)V configureForServerControl a method_55528 + p 1 connection + p 2 packPromptStatus + m ()V onRecovery b method_55530 + m (Ljava/util/List;)Lnet/minecraft/server/packs/repository/RepositorySource; configureSource b method_55531 + p 0 packs + m (Ljava/util/UUID;)Ljava/util/concurrent/CompletableFuture; waitForPackFeedback b method_55532 + p 1 uuid + m (Ljava/util/function/Consumer;)V method_55534 b method_55534 + m ()V onRecoveryFailure c method_55535 + m ()V onReloadSuccess d method_55536 + m ()V popAll e method_55537 + m ()V configureForLocalWorld f method_55538 + m ()V allowServerPacks g method_55539 + m ()V rejectServerPacks h method_55540 + m ()V cleanupAfterDisconnect i method_55541 + m ()Lnet/minecraft/client/resources/server/PackReloadConfig; createReloadConfig j method_55542 + m (Lnet/minecraft/client/Minecraft;Ljava/nio/file/Path;Lnet/minecraft/client/main/GameConfig$UserData;)V + p 1 minecraft + p 2 directory + p 3 userData + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$1 gtc$1 net/minecraft/class_1066$1 + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$2 gtc$2 net/minecraft/class_1066$2 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47691 a field_47691 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;)V +c net/minecraft/client/resources/server/DownloadedPackSource$3 gtc$3 net/minecraft/class_1066$3 + f I val$totalCount a field_47602 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47603 b field_47603 + f Lnet/minecraft/client/gui/components/toasts/SystemToast$SystemToastId; toastId c field_47604 + f Lnet/minecraft/network/chat/Component; title d field_47605 + f Lnet/minecraft/network/chat/Component; message e field_47606 + f I count f field_47607 + f I failCount g field_47692 + f Ljava/util/OptionalLong; totalBytes h field_47608 + m ()V updateToast b method_55544 + m (J)V updateProgress b method_55543 + p 1 progress + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;I)V +c net/minecraft/client/resources/server/DownloadedPackSource$4 gtc$4 net/minecraft/class_1066$4 + f Lnet/minecraft/client/User; val$user a field_47609 + f Lnet/minecraft/server/packs/DownloadQueue; val$downloadQueue b field_47610 + f Ljava/net/Proxy; val$proxy c field_47611 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor d field_47612 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47613 e field_47613 + f I MAX_PACK_SIZE_BYTES f field_47614 + f Lcom/google/common/hash/HashFunction; CACHE_HASHING_FUNCTION g field_47615 + m ()Ljava/util/Map; createDownloadHeaders a method_55545 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/client/User;Lnet/minecraft/server/packs/DownloadQueue;Ljava/net/Proxy;Ljava/util/concurrent/Executor;)V + m ()V +c net/minecraft/client/resources/server/DownloadedPackSource$5 gtc$5 net/minecraft/class_1066$5 + f Ljava/util/concurrent/Executor; val$mainThreadExecutor a field_47616 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47617 b field_47617 + f Z scheduledInMainExecutor c field_47618 + f Z hasUpdates d field_47619 + m ()V runAllUpdates a method_55547 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Ljava/util/concurrent/Executor;)V +c net/minecraft/client/resources/server/DownloadedPackSource$6 gtc$6 net/minecraft/class_1066$6 + f Lnet/minecraft/network/Connection; val$connection a field_47693 + m (Lnet/minecraft/network/Connection;)V +c net/minecraft/client/resources/server/DownloadedPackSource$7 gtc$7 net/minecraft/class_1066$7 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; val$original a field_47694 + f Ljava/util/UUID; val$packId b field_47695 + f Ljava/util/concurrent/CompletableFuture; val$result c field_47696 + f Lnet/minecraft/client/resources/server/DownloadedPackSource; field_47697 d field_47697 + m (Lnet/minecraft/client/resources/server/DownloadedPackSource;Lnet/minecraft/client/resources/server/PackLoadFeedback;Ljava/util/UUID;Ljava/util/concurrent/CompletableFuture;)V +c net/minecraft/client/resources/server/DownloadedPackSource$8 gtc$8 net/minecraft/class_1066$8 + f [I $SwitchMap$net$minecraft$client$resources$server$PackLoadFeedback$Update a field_47698 + f [I $SwitchMap$net$minecraft$client$resources$server$PackLoadFeedback$FinalResult b field_47621 + f [I $SwitchMap$net$minecraft$client$resources$server$ServerPackManager$PackPromptStatus c field_47620 + m ()V +c net/minecraft/client/resources/server/PackDownloader gtd net/minecraft/class_9038 + m (Ljava/util/Map;Ljava/util/function/Consumer;)V download a method_55546 + p 1 packs + p 2 resultConsumer +c net/minecraft/client/resources/server/PackLoadFeedback gte net/minecraft/class_9039 + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult;)V reportFinalResult a method_55619 + p 1 id + p 2 result + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/PackLoadFeedback$Update;)V reportUpdate a method_55620 + p 1 id + p 2 update +c net/minecraft/client/resources/server/PackLoadFeedback$FinalResult gte$a net/minecraft/class_9039$class_9040 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DECLINED a field_47623 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; APPLIED b field_47624 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DISCARDED c field_47625 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; DOWNLOAD_FAILED d field_47626 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; ACTIVATION_FAILED e field_47627 + f [Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; $VALUES f field_47628 + m ()[Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; $values a method_55548 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/PackLoadFeedback$Update gte$b net/minecraft/class_9039$class_9060 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; ACCEPTED a field_47699 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; DOWNLOADED b field_47700 + f [Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; $VALUES c field_47701 + m ()[Lnet/minecraft/client/resources/server/PackLoadFeedback$Update; $values a method_55621 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/PackReloadConfig gtf net/minecraft/class_9041 +c net/minecraft/client/resources/server/PackReloadConfig$Callbacks gtf$a net/minecraft/class_9041$class_9042 + m ()V onSuccess a method_55549 + m (Z)V onFailure a method_55550 + p 1 recoveryFailure + m ()Ljava/util/List; packsToLoad b method_55551 +c net/minecraft/client/resources/server/PackReloadConfig$IdAndPath gtf$b net/minecraft/class_9041$class_9043 + f Ljava/util/UUID; id a comp_2154 + f Ljava/nio/file/Path; path b comp_2155 + m ()Ljava/util/UUID; id a comp_2154 + m ()Ljava/nio/file/Path; path b comp_2155 + m (Ljava/util/UUID;Ljava/nio/file/Path;)V +c net/minecraft/client/resources/server/ServerPackManager gtg net/minecraft/class_9044 + f Lnet/minecraft/client/resources/server/PackDownloader; downloader a field_47629 + f Lnet/minecraft/client/resources/server/PackLoadFeedback; packLoadFeedback b field_47630 + f Lnet/minecraft/client/resources/server/PackReloadConfig; reloadConfig c field_47631 + f Ljava/lang/Runnable; updateRequest d field_47632 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; packPromptStatus e field_47633 + f Ljava/util/List; packs f field_47634 + m ()V popAll a method_55552 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)V acceptPack a method_55553 + p 1 packData + m (Ljava/util/Collection;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;)V onDownload a method_55554 + p 1 packs + p 2 batchResult + m (Ljava/util/List;Lnet/minecraft/server/packs/DownloadQueue$BatchResult;)V method_55555 a method_55555 + m (Ljava/util/UUID;)V popPack a method_55556 + p 1 id + m (Ljava/util/UUID;Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)V pushNewPack a method_55557 + p 1 id + p 2 packData + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V pushPack a method_55558 + p 1 id + p 2 url + p 3 hash + m (Ljava/util/UUID;Ljava/nio/file/Path;)V pushLocalPack a method_55559 + p 1 id + p 2 path + m ()V allowServerPacks b method_55560 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)Z method_55561 b method_55561 + m (Ljava/util/UUID;)V markExistingPacksAsRemoved b method_55562 + p 1 id + m ()V rejectServerPacks c method_55563 + m (Ljava/util/UUID;)Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData; findPackInfo c method_55564 + p 1 id + m ()V resetPromptStatus d method_55565 + m ()V tick e method_55566 + m ()V registerForUpdate f method_55567 + m ()V cleanupRemovedPacks g method_55568 + m ()Z updateDownloads h method_55569 + m ()V triggerReloadIfNeeded i method_55570 + m (Lnet/minecraft/client/resources/server/PackDownloader;Lnet/minecraft/client/resources/server/PackLoadFeedback;Lnet/minecraft/client/resources/server/PackReloadConfig;Ljava/lang/Runnable;Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus;)V + p 1 downloader + p 2 packLoadFeedback + p 3 reloadConfig + p 4 updateRequest + p 5 packPromptStatus +c net/minecraft/client/resources/server/ServerPackManager$1 gtg$1 net/minecraft/class_9044$1 + f Ljava/util/List; val$packsToLoad a field_47635 + f Ljava/util/List; val$packsToUnload b field_47636 + f Lnet/minecraft/client/resources/server/ServerPackManager; field_47637 c field_47637 + m (Lnet/minecraft/client/resources/server/ServerPackManager$ServerPackData;)Lnet/minecraft/client/resources/server/PackReloadConfig$IdAndPath; method_55571 a method_55571 + m (Lnet/minecraft/client/resources/server/ServerPackManager;Ljava/util/List;Ljava/util/List;)V +c net/minecraft/client/resources/server/ServerPackManager$ActivationStatus gtg$a net/minecraft/class_9044$class_9045 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; INACTIVE a field_47639 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; PENDING b field_47640 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; ACTIVE c field_47641 + f [Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; $VALUES d field_47642 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; $values a method_55572 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus gtg$b net/minecraft/class_9044$class_9046 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; REQUESTED a field_47643 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; PENDING b field_47644 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; DONE c field_47645 + f [Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; $VALUES d field_47646 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; $values a method_55573 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$PackPromptStatus gtg$c net/minecraft/class_9044$class_9047 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; PENDING a field_47647 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; ALLOWED b field_47648 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; DECLINED c field_47649 + f [Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; $VALUES d field_47650 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$PackPromptStatus; $values a method_55574 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/server/ServerPackManager$RemovalReason gtg$d net/minecraft/class_9044$class_9048 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DOWNLOAD_FAILED a field_47651 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; ACTIVATION_FAILED b field_47652 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DECLINED c field_47653 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; DISCARDED d field_47654 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; SERVER_REMOVED e field_47655 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; SERVER_REPLACED f field_47656 + f Lnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult; serverResponse g field_47657 + f [Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; $VALUES h field_47658 + m ()[Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; $values a method_55575 + m (Ljava/lang/String;ILnet/minecraft/client/resources/server/PackLoadFeedback$FinalResult;)V + p 3 serverResponse + m ()V +c net/minecraft/client/resources/server/ServerPackManager$ServerPackData gtg$e net/minecraft/class_9044$class_9049 + f Ljava/util/UUID; id a field_47659 + f Ljava/net/URL; url b field_47660 + f Lcom/google/common/hash/HashCode; hash c field_47661 + f Ljava/nio/file/Path; path d field_47662 + f Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason; removalReason e field_47663 + f Lnet/minecraft/client/resources/server/ServerPackManager$PackDownloadStatus; downloadStatus f field_47664 + f Lnet/minecraft/client/resources/server/ServerPackManager$ActivationStatus; activationStatus g field_47665 + f Z promptAccepted h field_47666 + m ()Z isRemoved a method_55576 + m (Lnet/minecraft/client/resources/server/ServerPackManager$RemovalReason;)V setRemovalReasonIfNotSet a method_55577 + p 1 removalReason + m (Ljava/util/UUID;Ljava/net/URL;Lcom/google/common/hash/HashCode;)V + p 1 id + p 2 url + p 3 hash +c net/minecraft/client/resources/server/package-info gth net/minecraft/class_9050 +c net/minecraft/client/resources/sounds/AbstractSoundInstance gti net/minecraft/class_1102 + f Lnet/minecraft/client/resources/sounds/Sound; sound a field_5444 + f Lnet/minecraft/sounds/SoundSource; source b field_5447 + f Lnet/minecraft/resources/ResourceLocation; location c field_5448 + f F volume d field_5442 + f F pitch e field_5441 + f D x f field_5439 + f D y g field_5450 + f D z h field_5449 + f Z looping i field_5446 + f I delay j field_5451 + c The number of ticks between repeating the sound + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; attenuation k field_5440 + f Z relative l field_18936 + f Lnet/minecraft/util/RandomSource; random m field_38800 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V + p 1 soundEvent + p 2 source + p 3 random + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V + p 1 location + p 2 source + p 3 random +c net/minecraft/client/resources/sounds/AbstractTickableSoundInstance gtj net/minecraft/class_1101 + f Z stopped n field_5438 + m ()V stop n method_24876 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;Lnet/minecraft/util/RandomSource;)V +c net/minecraft/client/resources/sounds/AmbientSoundHandler gtk net/minecraft/class_1104 + m ()V tick a method_4756 +c net/minecraft/client/resources/sounds/BeeAggressiveSoundInstance gtl net/minecraft/class_4508 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 bee +c net/minecraft/client/resources/sounds/BeeFlyingSoundInstance gtm net/minecraft/class_4509 + m (Lnet/minecraft/world/entity/animal/Bee;)V + p 1 bee +c net/minecraft/client/resources/sounds/BeeSoundInstance gtn net/minecraft/class_4510 + f Lnet/minecraft/world/entity/animal/Bee; bee n field_20530 + f F VOLUME_MIN o field_32991 + f F VOLUME_MAX p field_32992 + f F PITCH_MIN q field_32993 + f Z hasSwitched r field_20531 + m ()Lnet/minecraft/client/resources/sounds/AbstractTickableSoundInstance; getAlternativeSoundInstance o method_22135 + m ()Z shouldSwitchSounds p method_22136 + m ()F getMinPitch u method_22137 + m ()F getMaxPitch v method_22138 + m (Lnet/minecraft/world/entity/animal/Bee;Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;)V + p 1 bee + p 2 soundEvent + p 3 source +c net/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler gto net/minecraft/class_4897 + f I LOOP_SOUND_CROSS_FADE_TIME a field_32994 + f F SKY_MOOD_RECOVERY_RATE b field_32995 + f Lnet/minecraft/client/player/LocalPlayer; player c field_22796 + f Lnet/minecraft/client/sounds/SoundManager; soundManager d field_22797 + f Lnet/minecraft/world/level/biome/BiomeManager; biomeManager e field_22798 + f Lnet/minecraft/util/RandomSource; random f field_22799 + f Lit/unimi/dsi/fastutil/objects/Object2ObjectArrayMap; loopSounds g field_22800 + f Ljava/util/Optional; moodSettings h field_22801 + f Ljava/util/Optional; additionsSettings i field_22802 + f F moodiness j field_23189 + f Lnet/minecraft/world/level/biome/Biome; previousBiome k field_22804 + m (Lnet/minecraft/world/level/biome/AmbientAdditionsSettings;)V method_26270 a method_26270 + m (Lnet/minecraft/world/level/biome/AmbientMoodSettings;)V method_26271 a method_26271 + m (Lnet/minecraft/world/level/biome/Biome;Lnet/minecraft/core/Holder;)V method_25460 a method_25460 + m (Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/biome/Biome;Lnet/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance;)Lnet/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance; method_25459 a method_25459 + m ()F getMoodiness b method_26272 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/sounds/SoundManager;Lnet/minecraft/world/level/biome/BiomeManager;)V + p 1 player + p 2 soundManager + p 3 biomeManager +c net/minecraft/client/resources/sounds/BiomeAmbientSoundsHandler$LoopSoundInstance gto$a net/minecraft/class_4897$class_4898 + f I fadeDirection n field_22805 + f I fade o field_22806 + m ()V fadeOut o method_25464 + m ()V fadeIn p method_25465 + m (Lnet/minecraft/sounds/SoundEvent;)V + p 1 soundEvent +c net/minecraft/client/resources/sounds/BubbleColumnAmbientSoundHandler gtp net/minecraft/class_4277 + f Lnet/minecraft/client/player/LocalPlayer; player a field_19192 + f Z wasInBubbleColumn b field_19193 + f Z firstTick c field_19194 + m (Lnet/minecraft/world/level/block/state/BlockState;)Z method_29714 a method_29714 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/ElytraOnPlayerSoundInstance gtq net/minecraft/class_1103 + f I DELAY n field_32996 + f Lnet/minecraft/client/player/LocalPlayer; player o field_5452 + f I time p field_5453 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/EntityBoundSoundInstance gtr net/minecraft/class_1106 + f Lnet/minecraft/world/entity/Entity; entity n field_5455 + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/world/entity/Entity;J)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 entity + p 6 seed +c net/minecraft/client/resources/sounds/GuardianAttackSoundInstance gts net/minecraft/class_1105 + f F VOLUME_MIN n field_32997 + f F VOLUME_SCALE o field_32998 + f F PITCH_MIN p field_32999 + f F PITCH_SCALE q field_33000 + f Lnet/minecraft/world/entity/monster/Guardian; guardian r field_5454 + m (Lnet/minecraft/world/entity/monster/Guardian;)V + p 1 guardian +c net/minecraft/client/resources/sounds/MinecartSoundInstance gtt net/minecraft/class_1108 + f F VOLUME_MIN n field_33001 + f F VOLUME_MAX o field_33002 + f F PITCH_MIN p field_33003 + f F PITCH_MAX q field_33004 + f F PITCH_DELTA r field_33005 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart; minecart s field_5458 + f F pitch t field_5459 + m (Lnet/minecraft/world/entity/vehicle/AbstractMinecart;)V + p 1 minecart +c net/minecraft/client/resources/sounds/RidingMinecartSoundInstance gtu net/minecraft/class_1107 + f F VOLUME_MIN n field_33006 + f F VOLUME_MAX o field_33007 + f Lnet/minecraft/world/entity/player/Player; player p field_5457 + f Lnet/minecraft/world/entity/vehicle/AbstractMinecart; minecart q field_5456 + f Z underwaterSound r field_27773 + m (Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/entity/vehicle/AbstractMinecart;Z)V + p 1 player + p 2 minecart + p 3 underwaterSound +c net/minecraft/client/resources/sounds/SimpleSoundInstance gtv net/minecraft/class_1109 + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forMusic a method_4759 + p 0 sound + m (Lnet/minecraft/sounds/SoundEvent;F)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_4758 + p 0 sound + p 1 pitch + m (Lnet/minecraft/sounds/SoundEvent;FF)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_4757 + p 0 sound + p 1 pitch + p 2 volume + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/util/RandomSource;DDD)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forAmbientMood a method_25467 + p 0 soundEvent + p 1 random + p 2 x + p 4 y + p 6 z + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forJukeboxSong a method_4760 + p 0 sound + p 1 pos + m (Lnet/minecraft/core/Holder;F)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forUI a method_47978 + p 0 soundHolder + p 1 pitch + m (Lnet/minecraft/sounds/SoundEvent;)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forAmbientAddition b method_25466 + p 0 sound + m (Lnet/minecraft/sounds/SoundEvent;FF)Lnet/minecraft/client/resources/sounds/SimpleSoundInstance; forLocalAmbience b method_24877 + p 0 sound + p 1 volume + p 2 pitch + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;Lnet/minecraft/core/BlockPos;)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 entity + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;DDD)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 x + p 8 y + p 10 z + m (Lnet/minecraft/sounds/SoundEvent;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;ZILnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;DDD)V + p 1 soundEvent + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 looping + p 7 delay + p 8 attenuation + p 9 x + p 11 y + p 13 z + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;FFLnet/minecraft/util/RandomSource;ZILnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;DDDZ)V + p 1 location + p 2 source + p 3 volume + p 4 pitch + p 5 random + p 6 looping + p 7 delay + p 8 attenuation + p 9 x + p 11 y + p 13 z + p 15 relative +c net/minecraft/client/resources/sounds/SnifferSoundInstance gtw net/minecraft/class_8191 + f F VOLUME n field_42931 + f F PITCH o field_42932 + f Lnet/minecraft/world/entity/animal/sniffer/Sniffer; sniffer p field_42933 + m (Lnet/minecraft/world/entity/animal/sniffer/Sniffer;)V + p 1 sniffer +c net/minecraft/client/resources/sounds/Sound gtx net/minecraft/class_1111 + f Lnet/minecraft/resources/FileToIdConverter; SOUND_LISTER a field_40575 + f Lnet/minecraft/resources/ResourceLocation; location b field_5469 + f Lnet/minecraft/util/valueproviders/SampledFloat; volume c field_5466 + f Lnet/minecraft/util/valueproviders/SampledFloat; pitch d field_5464 + f I weight e field_5468 + f Lnet/minecraft/client/resources/sounds/Sound$Type; type f field_5470 + f Z stream g field_5467 + f Z preload h field_5465 + f I attenuationDistance i field_5463 + m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_4767 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4765 + c Retrieves the sound associated with the element.\nThe sound is obtained using the provided random source.\n

\n@return The sound associated with the element + p 1 randomSource + c the random source used for sound selection + m ()Lnet/minecraft/resources/ResourceLocation; getPath b method_4766 + m ()Lnet/minecraft/util/valueproviders/SampledFloat; getVolume c method_4771 + m ()Lnet/minecraft/util/valueproviders/SampledFloat; getPitch d method_4772 + m ()Lnet/minecraft/client/resources/sounds/Sound$Type; getType f method_4768 + m ()Z shouldStream g method_4769 + m ()Z shouldPreload h method_4764 + m ()I getAttenuationDistance i method_4770 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/util/valueproviders/SampledFloat;Lnet/minecraft/util/valueproviders/SampledFloat;ILnet/minecraft/client/resources/sounds/Sound$Type;ZZI)V + p 1 location + p 2 volume + p 3 pitch + p 4 weight + p 5 type + p 6 stream + p 7 preload + p 8 attenuationDistance + m ()V +c net/minecraft/client/resources/sounds/Sound$Type gtx$a net/minecraft/class_1111$class_1112 + f Lnet/minecraft/client/resources/sounds/Sound$Type; FILE a field_5474 + f Lnet/minecraft/client/resources/sounds/Sound$Type; SOUND_EVENT b field_5473 + f Ljava/lang/String; name c field_5472 + f [Lnet/minecraft/client/resources/sounds/Sound$Type; $VALUES d field_5471 + m ()[Lnet/minecraft/client/resources/sounds/Sound$Type; $values a method_36926 + m (Ljava/lang/String;)Lnet/minecraft/client/resources/sounds/Sound$Type; getByName a method_4773 + p 0 name + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 name + m ()V +c net/minecraft/client/resources/sounds/SoundEventRegistration gty net/minecraft/class_1110 + f Ljava/util/List; sounds a field_5460 + f Z replace b field_5462 + c if true it will override all the sounds from the resourcepacks loaded before + f Ljava/lang/String; subtitle c field_5461 + m ()Ljava/util/List; getSounds a method_4761 + m ()Z isReplace b method_4763 + m ()Ljava/lang/String; getSubtitle c method_4762 + m (Ljava/util/List;ZLjava/lang/String;)V + p 1 sounds + p 2 replace + p 3 subtitle +c net/minecraft/client/resources/sounds/SoundEventRegistrationSerializer gtz net/minecraft/class_1115 + f Lnet/minecraft/util/valueproviders/FloatProvider; DEFAULT_FLOAT a field_38801 + m (Lcom/google/gson/JsonElement;Ljava/lang/reflect/Type;Lcom/google/gson/JsonDeserializationContext;)Lnet/minecraft/client/resources/sounds/SoundEventRegistration; deserialize a method_4791 + m (Lcom/google/gson/JsonObject;)Ljava/util/List; getSounds a method_4792 + p 1 object + m (Lcom/google/gson/JsonObject;Lnet/minecraft/client/resources/sounds/Sound$Type;)Lnet/minecraft/client/resources/sounds/Sound$Type; getType a method_4789 + p 1 object + p 2 defaultValue + m (Lcom/google/gson/JsonObject;)Lnet/minecraft/client/resources/sounds/Sound; getSound b method_4790 + p 1 object + m ()V + m ()V +c net/minecraft/client/resources/sounds/SoundInstance gua net/minecraft/class_1113 + c

Interface {@link net.fabricmc.fabric.api.client.sound.v1.FabricSoundInstance} injected by mod fabric-sound-api-v1

+ m ()Lnet/minecraft/resources/ResourceLocation; getLocation a method_4775 + m (Lnet/minecraft/client/sounds/SoundManager;)Lnet/minecraft/client/sounds/WeighedSoundEvents; resolve a method_4783 + p 1 manager + m ()Lnet/minecraft/client/resources/sounds/Sound; getSound b method_4776 + m ()Lnet/minecraft/sounds/SoundSource; getSource c method_4774 + m ()Z isLooping d method_4786 + m ()I getDelay e method_4780 + m ()F getVolume f method_4781 + m ()F getPitch g method_4782 + m ()D getX h method_4784 + m ()D getY i method_4779 + m ()D getZ j method_4778 + m ()Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; getAttenuation k method_4777 + m ()Z isRelative l method_4787 + c True if the sound is not tied to a particular position in world (e.g. BGM) + m ()Z canStartSilent r method_4785 + m ()Z canPlaySound s method_26273 + m ()Lnet/minecraft/util/RandomSource; createUnseededRandom t method_43221 +c net/minecraft/client/resources/sounds/SoundInstance$Attenuation gua$a net/minecraft/class_1113$class_1114 + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; NONE a field_5478 + f Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; LINEAR b field_5476 + f [Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; $VALUES c field_5477 + m ()[Lnet/minecraft/client/resources/sounds/SoundInstance$Attenuation; $values a method_36927 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/resources/sounds/TickableSoundInstance gub net/minecraft/class_1117 + m ()Z isStopped m method_4793 + m ()V tick q method_16896 +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundHandler guc net/minecraft/class_1116 + f F CHANCE_PER_TICK a field_33008 + f F RARE_CHANCE_PER_TICK b field_33009 + f F ULTRA_RARE_CHANCE_PER_TICK c field_33010 + f I MINIMUM_TICK_DELAY d field_33011 + f Lnet/minecraft/client/player/LocalPlayer; player e field_5481 + f Lnet/minecraft/client/sounds/SoundManager; soundManager f field_5479 + f I tickDelay g field_5480 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/client/sounds/SoundManager;)V + p 1 player + p 2 soundManager +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances gud net/minecraft/class_1118 + m ()V +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances$SubSound gud$a net/minecraft/class_1118$class_1119 + f Lnet/minecraft/client/player/LocalPlayer; player n field_5482 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/sounds/SoundEvent;)V + p 1 player + p 2 soundEvent +c net/minecraft/client/resources/sounds/UnderwaterAmbientSoundInstances$UnderwaterAmbientSoundInstance gud$b net/minecraft/class_1118$class_1120 + f I FADE_DURATION n field_33012 + f Lnet/minecraft/client/player/LocalPlayer; player o field_5483 + f I fade p field_5484 + m (Lnet/minecraft/client/player/LocalPlayer;)V + p 1 player +c net/minecraft/client/resources/sounds/package-info gue net/minecraft/class_6270 +c net/minecraft/client/searchtree/FullTextSearchTree guf net/minecraft/class_1126 + f Lnet/minecraft/client/searchtree/SearchTree; plainTextSearchTree c field_39198 + m (Ljava/util/function/Function;Ljava/util/function/Function;Ljava/util/List;)V + p 1 filter + p 2 idGetter + p 3 contents +c net/minecraft/client/searchtree/IdSearchTree gug net/minecraft/class_1121 + f Ljava/util/Comparator; additionOrder a field_39199 + f Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; resourceLocationSearchTree b field_39200 + m (Ljava/lang/String;)Ljava/util/List; searchPlainText a method_43791 + p 1 query + m (Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; searchResourceLocation a method_43792 + p 1 namespace + p 2 path + m (Ljava/util/function/Function;Ljava/util/List;)V + p 1 idGetter + p 2 contents +c net/minecraft/client/searchtree/IntersectionIterator guh net/minecraft/class_1122 + f Lcom/google/common/collect/PeekingIterator; firstIterator a field_5490 + f Lcom/google/common/collect/PeekingIterator; secondIterator b field_5491 + f Ljava/util/Comparator; comparator c field_5492 + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 1 firstIterator + p 2 secondIterator + p 3 comparator +c net/minecraft/client/searchtree/MergingUniqueIterator gui net/minecraft/class_1127 + f Lcom/google/common/collect/PeekingIterator; firstIterator a field_5499 + f Lcom/google/common/collect/PeekingIterator; secondIterator b field_5500 + f Ljava/util/Comparator; comparator c field_5501 + m (Ljava/util/Iterator;Ljava/util/Iterator;Ljava/util/Comparator;)V + p 1 firstIterator + p 2 secondIterator + p 3 comparator +c net/minecraft/client/searchtree/ResourceLocationSearchTree guj net/minecraft/class_7455 + m ()Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; empty a method_43799 + m (Lnet/minecraft/client/searchtree/SuffixArray;Ljava/lang/Object;Lnet/minecraft/client/searchtree/SuffixArray;Lnet/minecraft/resources/ResourceLocation;)V method_43800 a method_43800 + m (Ljava/lang/String;)Ljava/util/List; searchNamespace a method_43801 + p 1 query + m (Ljava/util/List;Ljava/util/function/Function;)Lnet/minecraft/client/searchtree/ResourceLocationSearchTree; create a method_43802 + p 0 contents + p 1 idGetter + m (Ljava/lang/String;)Ljava/util/List; searchPath b method_43803 + p 1 query +c net/minecraft/client/searchtree/ResourceLocationSearchTree$1 guj$1 net/minecraft/class_7455$1 + m ()V +c net/minecraft/client/searchtree/ResourceLocationSearchTree$2 guj$2 net/minecraft/class_7455$2 + f Lnet/minecraft/client/searchtree/SuffixArray; val$namespaceTree a field_39201 + f Lnet/minecraft/client/searchtree/SuffixArray; val$pathTree b field_39202 + m (Lnet/minecraft/client/searchtree/SuffixArray;Lnet/minecraft/client/searchtree/SuffixArray;)V +c net/minecraft/client/searchtree/SearchTree guk net/minecraft/class_1129 + m (Lnet/minecraft/client/searchtree/SuffixArray;Ljava/lang/Object;Ljava/lang/String;)V method_60376 a method_60376 + m (Ljava/lang/String;)Ljava/util/List; method_60377 a method_60377 + m (Ljava/lang/String;)Ljava/util/List; search search method_4810 + c Searches this search tree for the given text.\n

\nIf the query does not contain a {@code :}, then only {@link #byName} is searched. If it does contain a colon, both {@link #byName} and {@link #byId} are searched and the results are merged using a {@link MergingIterator}.\n@return A list of all matching items in this search tree. + p 1 query +c net/minecraft/client/searchtree/SuffixArray gul net/minecraft/class_1128 + f Ljava/util/List; list a field_5503 + f Z DEBUG_COMPARISONS b field_5508 + f Z DEBUG_ARRAY c field_5507 + f Lorg/slf4j/Logger; LOGGER d field_5510 + f I END_OF_TEXT_MARKER e field_33013 + f I END_OF_DATA f field_33014 + f Lit/unimi/dsi/fastutil/ints/IntList; chars g field_5505 + f Lit/unimi/dsi/fastutil/ints/IntList; wordStarts h field_5509 + f Lit/unimi/dsi/fastutil/ints/IntList; suffixToT i field_5504 + f Lit/unimi/dsi/fastutil/ints/IntList; offsets j field_5506 + f I maxStringLength k field_5502 + m ()V generate a method_4807 + m (I)Ljava/lang/String; getString a method_4808 + m (Ljava/lang/Object;Ljava/lang/String;)V add a method_4806 + p 1 object + p 2 contents + m (Ljava/lang/String;)Ljava/util/List; search a method_4804 + p 1 query + m (Ljava/lang/String;I)I compare a method_4805 + m ([I[III)I method_38937 a method_38937 + m ([I[I[III)V method_4803 a method_4803 + m ()V print b method_4809 + c Prints the entire array to the logger, on debug level + m ()V + m ()V +c net/minecraft/client/searchtree/package-info gum net/minecraft/class_6272 +c net/minecraft/client/server/IntegratedPlayerList gun net/minecraft/class_1130 + f Lnet/minecraft/nbt/CompoundTag; playerData h field_5514 + m ()Lnet/minecraft/client/server/IntegratedServer; getServer b method_4811 + m (Lnet/minecraft/client/server/IntegratedServer;Lnet/minecraft/core/LayeredRegistryAccess;Lnet/minecraft/world/level/storage/PlayerDataStorage;)V + p 1 server + p 2 registries + p 3 playerIo +c net/minecraft/client/server/IntegratedServer guo net/minecraft/class_1132 + f Lorg/slf4j/Logger; LOGGER k field_5520 + f I MIN_SIM_DISTANCE l field_34964 + f Lnet/minecraft/client/Minecraft; minecraft m field_5518 + f Z paused n field_5524 + f I publishedPort o field_5522 + f Lnet/minecraft/world/level/GameType; publishedGameType p field_28075 + f Lnet/minecraft/client/server/LanServerPinger; lanPinger q field_5519 + f Ljava/util/UUID; uuid r field_5521 + f I previousSimulationDistance s field_34965 + m ()Lnet/minecraft/util/debugchart/LocalSampleLogger; getTickTimeLogger a method_56881 + m (Lnet/minecraft/world/entity/player/ProfileKeyPair;)V method_48006 a method_48006 + m (Lnet/minecraft/world/level/ChunkPos;)V method_61079 a method_61079 + m (Ljava/util/Optional;)V method_48007 a method_48007 + m (Ljava/util/UUID;)V setUUID a method_4817 + p 1 uuid + m ()V tickPaused b method_36439 + m (Lnet/minecraft/world/level/ChunkPos;)V method_61080 b method_61080 + m ()V warnOnLowDiskSpace c method_57823 + m ()V method_61081 d method_61081 + m ()V method_4816 h method_4816 + m ()Ljava/lang/String; method_4815 s method_4815 + m (Ljava/lang/Thread;Lnet/minecraft/client/Minecraft;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 minecraft + p 3 storageSource + p 4 packRepository + p 5 worldStem + p 6 services + p 7 progressListenerFactory + m ()V +c net/minecraft/client/server/LanServer gup net/minecraft/class_1131 + f Ljava/lang/String; motd a field_5515 + f Ljava/lang/String; address b field_5517 + f J pingTime c field_5516 + m ()Ljava/lang/String; getMotd a method_4813 + m ()Ljava/lang/String; getAddress b method_4812 + m ()V updatePingTime c method_4814 + c Updates the time this LanServer was last seen. + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 motd + p 2 address +c net/minecraft/client/server/LanServerDetection guq net/minecraft/class_1134 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID a field_5531 + f Lorg/slf4j/Logger; LOGGER b field_5532 + m ()V + m ()V +c net/minecraft/client/server/LanServerDetection$LanServerDetector guq$a net/minecraft/class_1134$class_1135 + f Lnet/minecraft/client/server/LanServerDetection$LanServerList; serverList a field_5533 + f Ljava/net/InetAddress; pingGroup b field_5534 + f Ljava/net/MulticastSocket; socket c field_5535 + m (Lnet/minecraft/client/server/LanServerDetection$LanServerList;)V + p 1 serverList +c net/minecraft/client/server/LanServerDetection$LanServerList guq$b net/minecraft/class_1134$class_1136 + f Ljava/util/List; servers a field_5536 + f Z isDirty b field_5537 + m ()Ljava/util/List; takeDirtyServers a method_45912 + m (Ljava/lang/String;Ljava/net/InetAddress;)V addServer a method_4824 + p 1 pingResponse + p 2 ipAddress + m ()V +c net/minecraft/client/server/LanServerPinger gur net/minecraft/class_1133 + f Ljava/lang/String; MULTICAST_GROUP a field_33016 + f I PING_PORT b field_33017 + f Ljava/util/concurrent/atomic/AtomicInteger; UNIQUE_THREAD_ID c field_5525 + f Lorg/slf4j/Logger; LOGGER d field_5529 + f J PING_INTERVAL e field_33018 + f Ljava/lang/String; motd f field_5526 + f Ljava/net/DatagramSocket; socket g field_5528 + f Z isRunning h field_5527 + f Ljava/lang/String; serverAddress i field_5530 + m (Ljava/lang/String;)Ljava/lang/String; parseMotd a method_4819 + p 0 pingResponse + m (Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; createPingString a method_4818 + p 0 motdMessage + p 1 adMessage + m (Ljava/lang/String;)Ljava/lang/String; parseAddress b method_4820 + p 0 pingResponse + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 motd + p 2 serverAddress + m ()V +c net/minecraft/client/server/package-info gus net/minecraft/class_6273 +c net/minecraft/client/sounds/AudioStream gut net/minecraft/class_4234 + m ()Ljavax/sound/sampled/AudioFormat; getFormat a method_19719 + c {@return the {@linkplain AudioFormat} of the stream} + m (I)Ljava/nio/ByteBuffer; read a method_19720 + c Reads audio data from the stream and returns a byte buffer containing at most the specified number of bytes.\nThe method reads audio frames from the stream and adds them to the output buffer until the buffer contains at least the specified number of bytes or the end fo the stream is reached.\n@return a byte buffer containing at most the specified number of bytes to read\n@throws IOException if an I/O error occurs while reading the audio data + p 1 size + c the maximum number of bytes to read +c net/minecraft/client/sounds/ChannelAccess guu net/minecraft/class_4235 + c The ChannelAccess class provides access to channels for playing audio data using a given library and executor. + f Ljava/util/Set; channels a field_18937 + f Lcom/mojang/blaze3d/audio/Library; library b field_18938 + f Ljava/util/concurrent/Executor; executor c field_18939 + m ()V scheduleTick a method_19722 + m (Lcom/mojang/blaze3d/audio/Library$Pool;)Ljava/util/concurrent/CompletableFuture; createHandle a method_19723 + c Creates a new channel handle for the specified system mode and returns a CompletableFuture that completes with the handle when it is created.\n

\n@return a CompletableFuture that completes with the channel handle when it is created, or null if it cannot be created + p 1 systemMode + c systemMode the system mode to create the channel handle for + m (Lcom/mojang/blaze3d/audio/Library$Pool;Ljava/util/concurrent/CompletableFuture;)V method_19724 a method_19724 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)Lcom/mojang/blaze3d/audio/Channel; method_19725 a method_19725 + m (Ljava/util/function/Consumer;)V executeOnChannels a method_19727 + p 1 sourceStreamConsumer + c the consumer to execute on the stream of channels + m ()V clear b method_19728 + m (Ljava/util/function/Consumer;)V method_19730 b method_19730 + m ()V method_19731 c method_19731 + m (Lcom/mojang/blaze3d/audio/Library;Ljava/util/concurrent/Executor;)V + p 1 library + p 2 executor +c net/minecraft/client/sounds/ChannelAccess$ChannelHandle guu$a net/minecraft/class_4235$class_4236 + c Represents a handle to a channel. + f Lnet/minecraft/client/sounds/ChannelAccess; field_18940 a field_18940 + f Lcom/mojang/blaze3d/audio/Channel; channel b field_18941 + f Z stopped c field_18942 + m ()Z isStopped a method_19732 + c {@return {@code true} if the channel has been stopped, {@code false} otherwise} + m (Ljava/util/function/Consumer;)V execute a method_19735 + p 1 soundConsumer + m ()V release b method_19736 + m (Ljava/util/function/Consumer;)V method_19737 b method_19737 + m (Lnet/minecraft/client/sounds/ChannelAccess;Lcom/mojang/blaze3d/audio/Channel;)V + p 2 channel +c net/minecraft/client/sounds/ChunkedSampleByteBuf guv net/minecraft/class_4229 + f Ljava/util/List; buffers a field_18911 + f I bufferSize b field_18912 + f I byteCount c field_18913 + f Ljava/nio/ByteBuffer; currentBuffer d field_18914 + m ()Ljava/nio/ByteBuffer; get a method_19679 + m ()I size b method_59756 + m (I)V + p 1 bufferSize +c net/minecraft/client/sounds/FiniteAudioStream guw net/minecraft/class_9672 + m ()Ljava/nio/ByteBuffer; readAll b method_59757 +c net/minecraft/client/sounds/FloatSampleSource gux net/minecraft/class_9673 + f I EXPECTED_MAX_FRAME_SIZE a field_51441 + m (Lit/unimi/dsi/fastutil/floats/FloatConsumer;)Z readChunk a method_59758 + p 1 output +c net/minecraft/client/sounds/JOrbisAudioStream guy net/minecraft/class_4228 + f I BUFSIZE b field_51442 + f I PAGEOUT_RECAPTURE c field_51443 + f I PAGEOUT_NEED_MORE_DATA d field_51444 + f I PAGEOUT_OK e field_51445 + f I PACKETOUT_ERROR f field_51446 + f I PACKETOUT_NEED_MORE_DATA g field_51447 + f I PACKETOUT_OK h field_51448 + f Lcom/jcraft/jogg/SyncState; syncState i field_51449 + f Lcom/jcraft/jogg/Page; page j field_51450 + f Lcom/jcraft/jogg/StreamState; streamState k field_51451 + f Lcom/jcraft/jogg/Packet; packet l field_51452 + f Lcom/jcraft/jorbis/Info; info m field_51453 + f Lcom/jcraft/jorbis/DspState; dspState n field_51454 + f Lcom/jcraft/jorbis/Block; block o field_51455 + f Ljavax/sound/sampled/AudioFormat; audioFormat p field_18908 + f Ljava/io/InputStream; input q field_18909 + f J samplesWritten r field_51456 + f J totalSamplesInStream s field_51457 + m (Lcom/jcraft/jogg/Page;)Lcom/jcraft/jogg/Packet; readIdentificationPacket a method_59759 + p 1 page + m ([FIJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyMono a method_59760 + p 0 source + p 1 startIndex + p 2 samplesToWrite + p 4 output + m ([FI[FIJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyStereo a method_59761 + p 0 leftSource + p 1 leftStartIndex + p 2 rightSource + p 3 rightStartIndex + p 4 samplesToWrite + p 6 output + m ([[FI[IJLit/unimi/dsi/fastutil/floats/FloatConsumer;)V copyAnyChannels a method_59762 + p 0 source + p 1 channels + p 2 startIndexes + p 3 samplesToWrite + p 5 output + m (I)Z isError b method_59763 + p 0 value + m ()Z readToBuffer c method_59764 + m (I)J getSamplesToWrite c method_59765 + p 1 samples + m ()Lcom/jcraft/jogg/Page; readPage d method_59766 + m ()Lcom/jcraft/jogg/Packet; readPacket e method_59767 + m (Ljava/io/InputStream;)V + p 1 input +c net/minecraft/client/sounds/LoopingAudioStream guz net/minecraft/class_4856 + c The LoopingAudioStream class provides an AudioStream that loops indefinitely over the provided InputStream. + f Lnet/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider; provider a field_22443 + f Lnet/minecraft/client/sounds/AudioStream; stream b field_22444 + f Ljava/io/BufferedInputStream; bufferedInputStream c field_22445 + m (Lnet/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider;Ljava/io/InputStream;)V + p 1 provider + p 2 inputStream +c net/minecraft/client/sounds/LoopingAudioStream$AudioStreamProvider guz$a net/minecraft/class_4856$class_4857 + c A functional interface for providing an {@linkplain AudioStream} from an {@linkplain InputStream}. +c net/minecraft/client/sounds/LoopingAudioStream$NoCloseBuffer guz$b net/minecraft/class_4856$class_4858 + c A {@linkplain FilterInputStream} that does not close the underlying {@linkplain InputStream}. + m (Ljava/io/InputStream;)V + p 1 inputStream +c net/minecraft/client/sounds/MusicManager gva net/minecraft/class_1142 + c The MusicManager class manages the playing of music in Minecraft. + f I STARTING_DELAY a field_33019 + c The delay before starting to play the next song. + f Lnet/minecraft/util/RandomSource; random b field_5571 + f Lnet/minecraft/client/Minecraft; minecraft c field_5575 + f Lnet/minecraft/client/resources/sounds/SoundInstance; currentMusic d field_5574 + f I nextSongDelay e field_5572 + c The delay until the next song starts. + m ()V tick a method_18669 + c Called every tick to manage the playing of music. + m (Lnet/minecraft/sounds/Music;)V startPlaying a method_4858 + c Starts playing the specified {@linkplain Music} selector. + p 1 selector + c the {@linkplain Music} selector to play + m ()V stopPlaying b method_4859 + c Stops playing the current {@linkplain Music} selector. + m (Lnet/minecraft/sounds/Music;)V stopPlaying b method_50025 + c Stops playing the specified {@linkplain Music} selector. + p 1 music + c the {@linkplain Music} selector to stop playing + m (Lnet/minecraft/sounds/Music;)Z isPlayingMusic c method_4860 + c {@return {@code true} if the {@linkplain Music} selector is currently playing, {@code false} otherwise} + p 1 selector + c the {@linkplain Music} selector to check for + m (Lnet/minecraft/client/Minecraft;)V + p 1 minecraft +c net/minecraft/client/sounds/SoundBufferLibrary gvb net/minecraft/class_4237 + c The {@linkplain SoundBufferLibrary} class provides a cache containing instances of {@linkplain SoundBuffer} and {@linkplain AudioStream} for use in Minecraft sound handling. + f Lnet/minecraft/server/packs/resources/ResourceProvider; resourceManager a field_18943 + c The {@linkplain ResourceProvider} used for loading sound resources. + f Ljava/util/Map; cache b field_18944 + m ()V clear a method_19738 + c Clears the cache of all {@linkplain SoundBuffer} instances. + m (I)[Ljava/util/concurrent/CompletableFuture; method_19739 a method_19739 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/concurrent/CompletableFuture; getCompleteBuffer a method_19743 + c {@return Returns a {@linkplain CompletableFuture} containing the complete {@linkplain SoundBuffer}. The {@linkplain SoundBuffer} is loaded asynchronously and cached.} + p 1 soundID + c the {@linkplain ResourceLocation} of the sound + m (Lnet/minecraft/resources/ResourceLocation;Z)Ljava/util/concurrent/CompletableFuture; getStream a method_19744 + c {@return Returns a {@linkplain CompletableFuture} containing the {@linkplain AudioStream}. The {@linkplain AudioStream} is loaded asynchronously.} + p 1 resourceLocation + c the {@linkplain ResourceLocation} of the sound + p 2 isWrapper + c whether the {@linkplain AudioStream} should be a {@linkplain LoopingAudioStream} + m (Lnet/minecraft/client/resources/sounds/Sound;)Ljava/util/concurrent/CompletableFuture; method_19740 a method_19740 + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; preload a method_19741 + c Preloads the {@linkplain SoundBuffer} objects for the specified collection of sounds.\n

\n@return a {@linkplain CompletableFuture} representing the completion of the preload operation + p 1 sounds + c the collection of sounds to preload + m (Ljava/util/concurrent/CompletableFuture;)V method_19742 a method_19742 + m (Lnet/minecraft/resources/ResourceLocation;)Ljava/util/concurrent/CompletableFuture; method_19746 b method_19746 + m (Lnet/minecraft/resources/ResourceLocation;Z)Lnet/minecraft/client/sounds/AudioStream; method_19745 b method_19745 + m (Lnet/minecraft/resources/ResourceLocation;)Lcom/mojang/blaze3d/audio/SoundBuffer; method_19747 c method_19747 + m (Lnet/minecraft/server/packs/resources/ResourceProvider;)V + p 1 resourceManager +c net/minecraft/client/sounds/SoundEngine gvc net/minecraft/class_1140 + c The {@code SoundEngine} class handles the management and playback of sounds in the game. + f Ljava/util/Map; queuedSounds A field_5566 + c Contains sounds to play in n ticks. Type: HashMap + f Ljava/util/Map; soundDeleteTime B field_18952 + c The future time in which to stop this sound. Type: HashMap + f Ljava/util/List; listeners C field_5558 + f Ljava/util/List; queuedTickableSounds D field_20532 + f Ljava/util/List; preloadQueue E field_5551 + f Ljava/lang/String; MISSING_SOUND a field_33020 + f Ljava/lang/String; OPEN_AL_SOFT_PREFIX b field_34827 + f I OPEN_AL_SOFT_PREFIX_LENGTH c field_34828 + f Lorg/slf4j/Marker; MARKER d field_5553 + c The marker used for logging + f Lorg/slf4j/Logger; LOGGER e field_5559 + f F PITCH_MIN f field_33021 + f F PITCH_MAX g field_33022 + f F VOLUME_MIN h field_33023 + f F VOLUME_MAX i field_33024 + f I MIN_SOURCE_LIFETIME j field_33025 + f Ljava/util/Set; ONLY_WARN_ONCE k field_5561 + c A set of resource locations for which a missing sound warning has been issued + f J DEFAULT_DEVICE_CHECK_INTERVAL_MS l field_34966 + c The default interval in milliseconds for checking the audio device state + f Lnet/minecraft/client/sounds/SoundManager; soundManager m field_5552 + c A reference to the sound handler. + f Lnet/minecraft/client/Options; options n field_5555 + c Reference to the GameSettings object. + f Z loaded o field_5563 + c Set to true when the SoundManager has been initialised. + f Lcom/mojang/blaze3d/audio/Library; library p field_18945 + f Lcom/mojang/blaze3d/audio/Listener; listener q field_18946 + c The listener object responsible for managing the sound listener position and orientation + f Lnet/minecraft/client/sounds/SoundBufferLibrary; soundBuffers r field_18947 + f Lnet/minecraft/client/sounds/SoundEngineExecutor; executor s field_18948 + f Lnet/minecraft/client/sounds/ChannelAccess; channelAccess t field_18949 + f I tickCount u field_5550 + c A counter for how long the sound manager has been running + f J lastDeviceCheckTime v field_34967 + f Ljava/util/concurrent/atomic/AtomicReference; devicePoolState w field_35083 + c The current state of the audio device check + f Ljava/util/Map; instanceToChannel x field_18950 + f Lcom/google/common/collect/Multimap; instanceBySource y field_18951 + f Ljava/util/List; tickingSounds z field_5557 + c A subset of playingSounds, this contains only {@linkplain TickableSoundInstance} + m ()V reload a method_4837 + c Reloads the sound engine.\n

\nThis method clears the warning set, checks for missing sound events, destroys the current sound system, and reloads the library. + m (FFLnet/minecraft/world/phys/Vec3;Lcom/mojang/blaze3d/audio/Channel;)V method_19748 a method_19748 + m (FFLnet/minecraft/client/resources/sounds/SoundInstance$Attenuation;FZZLnet/minecraft/world/phys/Vec3;ZLcom/mojang/blaze3d/audio/Channel;)V method_19749 a method_19749 + m (FLnet/minecraft/sounds/SoundSource;)F calculateVolume a method_43222 + c Calculates the volume of the sound being played.\n

\nClamps the sound between 0.0f and 1.0f. + p 1 volumeMultiplier + p 2 source + m (FLcom/mojang/blaze3d/audio/Channel;)V method_19750 a method_19750 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V stop a method_4838 + p 1 soundName + p 2 category + m (Lnet/minecraft/sounds/SoundSource;)F getVolume a method_4850 + c {@return the volume value pinned between 0.0f and 1.0f for a given {@linkplain SoundSource} category} + p 1 category + m (Lnet/minecraft/sounds/SoundSource;F)V updateCategoryVolume a method_4844 + c Updates the volume for a specific sound category.\n

\nIf the sound engine has not been loaded, the method returns without performing any action.\n

\nIf the category is the "MASTER" category, the overall listener gain (volume) is set to the specified value.\n

\nFor other categories, the volume is updated for each sound instance associated with the category.\n

\nIf the calculated volume for an instance is less than or equal to 0.0, the instance is stopped.\nOtherwise, the volume of the instance is set to the calculated value. + p 1 category + p 2 volume + m (Lcom/mojang/blaze3d/audio/ListenerTransform;)V method_19751 a method_19751 + m (Lcom/mojang/blaze3d/audio/SoundBuffer;Lcom/mojang/blaze3d/audio/Channel;)V method_19752 a method_19752 + m (Lnet/minecraft/client/Camera;)V updateSource a method_4840 + p 1 renderInfo + m (Lnet/minecraft/client/resources/sounds/Sound;)V requestPreload a method_4851 + c Requests a specific {@linkplain Sound} instance to be preloaded. + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V stop a method_19753 + c Stops the provided {@linkplain SoundInstace} from continuing to play. + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;I)V playDelayed a method_4852 + c Adds a sound to play in n ticks + p 1 sound + p 2 delay + m (Lnet/minecraft/client/resources/sounds/SoundInstance;Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)V method_19754 a method_19754 + m (Lnet/minecraft/client/resources/sounds/TickableSoundInstance;)V queueTickingSound a method_22139 + c Queues a new {@linkplain TickingCodeInstance} + p 1 tickableSound + c the {@linkplain TickableSoundInstance} to queue + m (Lnet/minecraft/client/sounds/AudioStream;Lcom/mojang/blaze3d/audio/Channel;)V method_19755 a method_19755 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;)V method_19756 a method_19756 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;Lcom/mojang/blaze3d/audio/SoundBuffer;)V method_19757 a method_19757 + m (Lnet/minecraft/client/sounds/ChannelAccess$ChannelHandle;Lnet/minecraft/client/sounds/AudioStream;)V method_19758 a method_19758 + m (Lnet/minecraft/client/sounds/SoundEventListener;)V addEventListener a method_4855 + p 1 listener + m (Ljava/lang/String;)V method_38938 a method_38938 + m (Ljava/util/stream/Stream;)V method_19759 a method_19759 + m (Z)V tick a method_20185 + c Ticks all active instances of {@code TickableSoundInstance} + p 1 isGamePaused + m ()V destroy b method_4856 + c Cleans up the Sound System + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z isActive b method_4835 + c {@return {@code true} if the {@linkplain SoundInstance} is active, {@code false} otherwise} + p 1 sound + c the SoundInstance to check + m (Lnet/minecraft/client/sounds/SoundEventListener;)V removeEventListener b method_4847 + p 1 listener + m (Ljava/util/stream/Stream;)V method_19760 b method_19760 + m ()V emergencyShutdown c method_54648 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V play c method_4854 + c Plays a given sound instance.\n

\nIf the sound engine is not loaded or the sound instance cannot be played, the method returns early.\n

\nThe method fulfills the following parts:\n

    \n
  • Performs a series of checks to determine if it can play a sound
  • \n
  • Handles the playing of instances of {@code SoundInstance}
  • \n
  • Logs potential errors that may have occured
  • \n
  • Handles mapping instances of {@code SoundInstance} to specific audio channels
  • \n
  • Handles deletion times for active instances of {@code SoundInstance}
  • \n
  • Calculates and handles various sound properties such as volume, pitch, attenuation, looping, position and relative,
  • \n
\n

\n@implNote This method assumes proper synchronization or that thread confinement mechanisms are in place. + p 1 sound + c the sound instance to be played. + m ()V stopAll d method_4843 + c Stops all currently playing sounds + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z requiresManualLooping d method_24878 + c {@return Returns {@code true} if the SoundInstance requires manual looping, {@code false} otherwise + p 0 sound + c the SoundInstance to check + m ()V pause e method_19761 + c Pauses all currently playing sounds + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z shouldLoopManually e method_24879 + c @return Returns {@code true} if the SoundInstance should loop manually, {@code false} otherwise + p 0 sound + c The SoundInstance to check + m ()V resume f method_19762 + c Resumes playing all currently playing sounds (after pauseAllSounds) + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z shouldLoopAutomatically f method_24880 + c @return Returns {@code true} if the SoundInstance should loop automatically, {@code false} otherwise + p 0 sound + c The SoundInstance to check + m ()Ljava/lang/String; getDebugString g method_20304 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)F calculatePitch g method_4849 + c Calculates the pitch of the sound being played.\n

\nClamps the sound between 0.5f and 2.0f. + p 1 sound + c the {@linkplain SoundInstance} being played + m ()Ljava/util/List; getAvailableSoundDevices h method_38564 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)F calculateVolume h method_4853 + c Calculates the volume for the sound being played.\n

\nDelegates to {@code #calculateVolume(float, SoundSource)} + p 1 sound + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getListenerTransform i method_55592 + m ()V loadLibrary j method_4846 + c Loads the sound library if it has not been loaded already.\nIf loading is successful, the library is initialized, and the sound engine is started, otherwise, an error message is logged, and sounds and music are turned off. + m ()Z shouldChangeDevice k method_38744 + c The audio device change is checked by this method.\n

\nIf the current audio device is disconnected, an informational message is logged, and this method returns {@code true} to indicate a change is needed.\n

\nOtherwise, the elapsed time since the last device check is examined.\nIf the elapsed time is greater than or equal to 1000 milliseconds, the device check is performed.\n

\nDuring the device check, the current device state is compared with the preferred sound device specified in the options.\n

    \n
  • If the preferred sound device is an empty string and the system default audio device has changed, an informational message is logged, and the device pool state is set to indicate a change has been detected.
  • \n
  • If the preferred sound device is not an empty string, it is checked whether the current device name is different from the preferred device name and if the preferred device is available in the list of available sound devices.
  • \n
  • If both conditions are true, an informational message is logged, and the device pool state is set to indicate a change has been detected.
  • \n
\n

\nFinally, the device pool state is set to indicate that the device check is complete.\n

\n@return {@code true} if a change in the audio device is needed, {@code false} otherwise. + m ()V tickNonPaused l method_4857 + c Executes a single tick for non-paused sounds.\n

\nThe following steps are taken as part of this method:\n

    \n
  • Increment the tick count.
  • \n
  • Clears the queued tickable sounds list.
  • \n
  • Updates and handles tickable sounds currently playing.
  • \n
  • Updates volume, pitch, and position for each tickable sound.
  • \n
  • Removes stopped or expired tickable sounds from the instance-to-channel mapping.
  • \n
  • Removes stopped tickable sounds from the ticking sounds list.
  • \n
  • Handles queued sounds that are ready to be played.
  • \n
\n

\nNote: This method assumes that it is being called within a tick loop.\n@implNote This method assumes proper synchronization or thread confinement mechanisms are in place. + m (Lnet/minecraft/client/sounds/SoundManager;Lnet/minecraft/client/Options;Lnet/minecraft/server/packs/resources/ResourceProvider;)V + p 1 soundManager + p 2 options + p 3 resourceManager + m ()V +c net/minecraft/client/sounds/SoundEngine$DeviceCheckState gvc$a net/minecraft/class_1140$class_6665 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; ONGOING a field_35084 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; CHANGE_DETECTED b field_35085 + f Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; NO_CHANGE c field_35086 + f [Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; $VALUES d field_35087 + m ()[Lnet/minecraft/client/sounds/SoundEngine$DeviceCheckState; $values a method_38939 + m (Ljava/lang/String;I)V + m ()V +c net/minecraft/client/sounds/SoundEngineExecutor gvd net/minecraft/class_4238 + c The SoundEngineExecutor class is responsible for executing sound-related tasks in a separate thread.\n

\nIt extends the BlockableEventLoop class, providing an event loop for managing and executing tasks. + f Ljava/lang/Thread; thread a field_18953 + f Z shutdown b field_18954 + m ()V flush a method_19763 + c Flushes the SoundEngineExecutor by interrupting the thread, joining the thread, dropping all pending tasks, and recreating the thread.\nIt sets the shutdown state to false to allow new tasks to be scheduled. + m ()Ljava/lang/Thread; createThread b method_19764 + c Creates and starts a new thread for executing sound-related tasks.\n

\n@return The created thread + m ()V run c method_19765 + c The main run loop of the SoundEngineExecutor.\nIt continuously blocks until the shutdown state is true. + m ()Z method_19766 d method_19766 + m ()V +c net/minecraft/client/sounds/SoundEventListener gve net/minecraft/class_1145 + c The SoundEventListener interface defines a listener for sound events.\nClasses implementing this interface can be registered as listeners to receive notifications when a sound is played. + m (Lnet/minecraft/client/resources/sounds/SoundInstance;Lnet/minecraft/client/sounds/WeighedSoundEvents;F)V onPlaySound a method_4884 + p 1 sound + p 2 accessor + p 3 range +c net/minecraft/client/sounds/SoundManager gvf net/minecraft/class_1144 + c The SoundManager class is responsible for managing sound events and playing sounds.\nIt handles sound event registrations, caching of sound resources, and sound playback. + f Lnet/minecraft/resources/ResourceLocation; EMPTY_SOUND_LOCATION a field_52173 + f Lnet/minecraft/client/resources/sounds/Sound; EMPTY_SOUND b field_5592 + f Lnet/minecraft/resources/ResourceLocation; INTENTIONALLY_EMPTY_SOUND_LOCATION c field_42934 + f Lnet/minecraft/client/sounds/WeighedSoundEvents; INTENTIONALLY_EMPTY_SOUND_EVENT d field_42935 + f Lnet/minecraft/client/resources/sounds/Sound; INTENTIONALLY_EMPTY_SOUND e field_42936 + f Lorg/slf4j/Logger; LOGGER f field_5593 + f Ljava/lang/String; SOUNDS_PATH g field_33026 + f Lcom/google/gson/Gson; GSON h field_5594 + f Lcom/google/gson/reflect/TypeToken; SOUND_EVENT_REGISTRATION_TYPE i field_5591 + f Ljava/util/Map; registry j field_5588 + f Lnet/minecraft/client/sounds/SoundEngine; soundEngine k field_5590 + f Ljava/util/Map; soundCache l field_40576 + m ()Ljava/util/List; getAvailableSoundDevices a method_38565 + c Retrieves a list of available sound devices. + m (Lnet/minecraft/resources/ResourceLocation;)Lnet/minecraft/client/sounds/WeighedSoundEvents; getSoundEvent a method_4869 + c {@return The sound event associated with the specific {@linkplain ResourceLocation}, or {@code null} if not found} + p 1 location + c The location of the sound event + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/sounds/SoundSource;)V stop a method_4875 + c Stops all sounds associated with the specified ID and category. + p 1 id + c The ID of the sounds to stop, or null to stop all sounds + p 2 category + c The category of the sounds to stop, or null to stop sounds from all categories + m (Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)Lnet/minecraft/client/sounds/SoundManager$Preparations; prepare a method_18180 + c Performs any reloading that can be done off-thread, such as file IO + p 1 resourceManager + c The resource manager in-charge of loading sound files + p 2 profiler + c The sound profiler + m (Lnet/minecraft/sounds/SoundSource;F)V updateSourceVolume a method_4865 + c Updates the volume of the specified sound source category. + p 1 category + c The sound source category + p 2 volume + c The new volume + m (Lnet/minecraft/client/Camera;)V updateSource a method_4876 + c Updates the sound source position based on the active render info. + p 1 activeRenderInfo + c The active render info + m (Lnet/minecraft/client/resources/sounds/Sound;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/server/packs/resources/ResourceProvider;)Z validateSoundResource a method_4868 + c Validates a sound resource\n

\n@return {@code true} if the sound resource is valid, {@code false} otherwise + p 0 sound + c The sound to validate + p 1 location + c The location of the sound event + p 2 resourceProvider + c The resource provider + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V play a method_4873 + c Play a sound + p 1 sound + m (Lnet/minecraft/client/resources/sounds/SoundInstance;I)V playDelayed a method_4872 + c Plays a sound with a delay in ticks. + p 1 sound + c The sound instance to play + p 2 delay + c The delay in ticks before playing the sound + m (Lnet/minecraft/client/resources/sounds/TickableSoundInstance;)V queueTickingSound a method_22140 + c Queues a ticking sound to be played. + p 1 tickableSound + c The ticking sound instance + m (Lnet/minecraft/client/sounds/SoundEventListener;)V addListener a method_4878 + p 1 listener + m (Lnet/minecraft/client/sounds/SoundManager$Preparations;Lnet/minecraft/server/packs/resources/ResourceManager;Lnet/minecraft/util/profiling/ProfilerFiller;)V apply a method_18182 + c Applies the prepared sound event registrations and caches to the sound manager. + p 1 object + c The prepared sound event registrations and caches + p 2 resourceManager + c The resource manager + p 3 profiler + c The profiler + m (Z)V tick a method_18670 + c Updates the sound manager's tick state. + p 1 isGamePaused + c {@code true} if the game is paused, {@code false} otherwise + m ()Lcom/mojang/blaze3d/audio/ListenerTransform; getListenerTransform b method_55593 + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)V stop b method_4870 + p 1 sound + m (Lnet/minecraft/client/sounds/SoundEventListener;)V removeListener b method_4866 + p 1 listener + m (Lnet/minecraft/client/resources/sounds/SoundInstance;)Z isActive c method_4877 + c Checks if the specified sound is active (playing or scheduled to be played).\n@return {@code true} if the sound is active, {@code false} otherwise + p 1 sound + c The sound instance to check + m ()Ljava/util/Collection; getAvailableSounds d method_4864 + c {@return The collection of available sound event locations} + m ()V pause e method_4879 + m ()V stop f method_4881 + m ()V destroy g method_4882 + m ()V emergencyShutdown h method_54649 + m ()V resume i method_4880 + m ()Ljava/lang/String; getDebugString j method_20305 + m ()V reload k method_38566 + m (Lnet/minecraft/client/Options;)V + p 1 options + m ()V +c net/minecraft/client/sounds/SoundManager$1 gvf$1 net/minecraft/class_1144$1 + m ()V +c net/minecraft/client/sounds/SoundManager$2 gvf$2 net/minecraft/class_1144$2 + f [I $SwitchMap$net$minecraft$client$resources$sounds$Sound$Type a field_5598 + m ()V +c net/minecraft/client/sounds/SoundManager$Preparations gvf$a net/minecraft/class_1144$class_4009 + c The Preparations class represents the prepared sound event registrations and caches for applying to the sound manager. + f Ljava/util/Map; registry a field_17908 + f Ljava/util/Map; soundCache b field_40577 + m (Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/sounds/SoundEventRegistration;)V handleRegistration a method_18187 + p 1 location + p 2 registration + m (Lnet/minecraft/server/packs/resources/ResourceManager;)V listResources a method_45913 + p 1 resourceManager + m (Ljava/util/Map;Ljava/util/Map;Lnet/minecraft/client/sounds/SoundEngine;)V apply a method_18186 + c Applies the prepared sound event registrations and caches to the sound manager. + p 1 soundRegistry + c The sound registry to apply to + p 2 cache + c The sound cache to apply to + p 3 soundEngine + c The sound engine to apply to + m ()V +c net/minecraft/client/sounds/SoundManager$Preparations$1 gvf$a$1 net/minecraft/class_1144$class_4009$1 + f Lnet/minecraft/resources/ResourceLocation; val$soundLocation a field_5596 + f Lnet/minecraft/client/resources/sounds/Sound; val$sound b field_5595 + f Lnet/minecraft/client/sounds/SoundManager$Preparations; field_5597 c field_5597 + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4883 + m (Lnet/minecraft/client/sounds/SoundManager$Preparations;Lnet/minecraft/resources/ResourceLocation;Lnet/minecraft/client/resources/sounds/Sound;)V +c net/minecraft/client/sounds/WeighedSoundEvents gvg net/minecraft/class_1146 + c The WeighedSoundEvents class represents a collection of weighted sound events.\nIt implements the Weighted interface to provide weighted selection of sounds. + f Ljava/util/List; list a field_5600 + f Lnet/minecraft/network/chat/Component; subtitle b field_5599 + m ()Lnet/minecraft/network/chat/Component; getSubtitle a method_4886 + c {@return The subtitle component, or {@code null} if no subtitle is provided} + m (Lnet/minecraft/util/RandomSource;)Lnet/minecraft/client/resources/sounds/Sound; getSound a method_4887 + c Retrieves a randomly selected sound from the sound events based on their weights.\nThe selection is performed using the provided random source.\n

\n@return A randomly selected sound from the sound events\nThe random source used for sound selection + p 1 randomSource + c the random source used for sound selection + m (Lnet/minecraft/client/sounds/Weighted;)V addSound a method_4885 + c Adds a sound event to the collection. + p 1 accessor + c The weighted accessor for the sound event to be added + m (Lnet/minecraft/resources/ResourceLocation;Ljava/lang/String;)V + p 1 location + c The resource location of the sound events + p 2 subtitleKey + c The key for the subtitle translation component, or null if no subtitle is provided +c net/minecraft/client/sounds/Weighted gvh net/minecraft/class_1148 + c The Weighted interface represents an element with a weight in a weighted collection.\nIt is used to provide weighted selection and retrieval of elements.\n\n@param The type of the element + m (Lnet/minecraft/client/sounds/SoundEngine;)V preloadIfRequired a method_18188 + c Preloads the sound if required by the sound engine.\nThis method is called to preload the sound associated with the element into the sound engine, ensuring it is ready for playback. + p 1 engine + c the sound engine used for sound preloading + m (Lnet/minecraft/util/RandomSource;)Ljava/lang/Object; getSound b method_4893 + c Retrieves the sound associated with the element.\nThe sound is obtained using the provided random source.\n

\n@return The sound associated with the element + p 1 randomSource + c the random source used for sound selection + m ()I getWeight e method_4894 + c {@return The weight of the element} +c net/minecraft/client/sounds/package-info gvi net/minecraft/class_6274 +c net/minecraft/client/telemetry/ClientTelemetryManager gvj net/minecraft/class_6628 + f Ljava/util/concurrent/atomic/AtomicInteger; THREAD_COUNT a field_34948 + f Ljava/util/concurrent/Executor; EXECUTOR b field_34949 + f Lnet/minecraft/client/Minecraft; minecraft c field_47702 + f Lcom/mojang/authlib/minecraft/UserApiService; userApiService d field_41426 + f Lnet/minecraft/client/telemetry/TelemetryPropertyMap; deviceSessionProperties e field_41427 + f Ljava/nio/file/Path; logDirectory f field_41428 + f Ljava/util/concurrent/CompletableFuture; logManager g field_41429 + f Ljava/util/function/Supplier; outsideSessionSender h field_44831 + m ()Lnet/minecraft/client/telemetry/TelemetryEventSender; getOutsideSessionSender a method_51796 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;Lcom/mojang/authlib/minecraft/TelemetrySession;Ljava/util/Optional;)V method_47702 a method_47702 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/String;)V method_47703 a method_47703 + m (Ljava/lang/Runnable;)Ljava/lang/Thread; method_38731 a method_38731 + m (Ljava/util/Optional;)V method_47704 a method_47704 + m (Ljava/util/concurrent/CompletableFuture;Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47705 a method_47705 + m (ZLjava/time/Duration;Ljava/lang/String;)Lnet/minecraft/client/telemetry/WorldSessionTelemetryManager; createWorldSessionManager a method_47706 + p 1 newWorld + p 2 worldLoadDuration + p 3 minigameName + m ()Ljava/nio/file/Path; getLogDirectory b method_47701 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/String;)V method_47708 b method_47708 + m (Ljava/util/Optional;)Ljava/util/concurrent/CompletionStage; method_47709 b method_47709 + m ()Lnet/minecraft/client/telemetry/TelemetryEventSender; createEventSender c method_47707 + m ()Ljava/util/concurrent/CompletableFuture; method_47710 d method_47710 + m (Lnet/minecraft/client/Minecraft;Lcom/mojang/authlib/minecraft/UserApiService;Lnet/minecraft/client/User;)V + p 1 minecraft + p 2 userApiService + p 3 user + m ()V +c net/minecraft/client/telemetry/TelemetryEventInstance gvk net/minecraft/class_7962 + f Lcom/mojang/serialization/Codec; CODEC a field_41430 + f Lnet/minecraft/client/telemetry/TelemetryEventType; type b comp_1169 + f Lnet/minecraft/client/telemetry/TelemetryPropertyMap; properties c comp_1170 + m ()Lnet/minecraft/client/telemetry/TelemetryEventType; type a comp_1169 + m (Lcom/mojang/authlib/minecraft/TelemetrySession;)Lcom/mojang/authlib/minecraft/TelemetryEvent; export a method_47711 + p 1 session + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/telemetry/TelemetryProperty;)V method_47712 a method_47712 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap; properties b comp_1170 + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)V + m ()V +c net/minecraft/client/telemetry/TelemetryEventLog gvl net/minecraft/class_7963 + f Lorg/slf4j/Logger; LOGGER a field_41431 + f Lnet/minecraft/util/eventlog/JsonEventLog; log b field_41432 + f Lnet/minecraft/util/thread/ProcessorMailbox; mailbox c field_41433 + m ()Lnet/minecraft/client/telemetry/TelemetryEventLogger; logger a method_47713 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;)V method_47714 a method_47714 + m ()V method_47715 b method_47715 + m (Lnet/minecraft/client/telemetry/TelemetryEventInstance;)V method_47716 b method_47716 + m (Ljava/nio/channels/FileChannel;Ljava/util/concurrent/Executor;)V + p 1 channel + p 2 dispatcher + m ()V +c net/minecraft/client/telemetry/TelemetryEventLogger gvm net/minecraft/class_7964 +c net/minecraft/client/telemetry/TelemetryEventSender gvn net/minecraft/class_7965 + f Lnet/minecraft/client/telemetry/TelemetryEventSender; DISABLED a field_41434 + m (Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47717 a method_47717 + m (Ljava/util/function/Consumer;Lnet/minecraft/client/telemetry/TelemetryEventType;Ljava/util/function/Consumer;)V method_47718 a method_47718 + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47719 a method_47719 + m ()V +c net/minecraft/client/telemetry/TelemetryEventType gvo net/minecraft/class_7966 + f Lcom/mojang/serialization/Codec; CODEC a field_41435 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_LOADED b field_41436 + f Lnet/minecraft/client/telemetry/TelemetryEventType; PERFORMANCE_METRICS c field_41437 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_LOAD_TIMES d field_41438 + f Lnet/minecraft/client/telemetry/TelemetryEventType; WORLD_UNLOADED e field_41439 + f Lnet/minecraft/client/telemetry/TelemetryEventType; ADVANCEMENT_MADE f field_44832 + f Lnet/minecraft/client/telemetry/TelemetryEventType; GAME_LOAD_TIMES g field_44833 + f Ljava/util/Map; REGISTRY h field_41440 + f Ljava/util/List; GLOBAL_PROPERTIES i field_41441 + f Ljava/util/List; WORLD_SESSION_PROPERTIES j field_41442 + f Ljava/lang/String; id k field_41443 + f Ljava/lang/String; exportKey l field_41444 + f Ljava/util/List; properties m field_41445 + f Z isOptIn n field_41446 + f Lcom/mojang/serialization/MapCodec; codec o field_41447 + m ()Ljava/lang/String; id a method_47720 + m (Lcom/mojang/authlib/minecraft/TelemetrySession;Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lcom/mojang/authlib/minecraft/TelemetryEvent; export a method_47721 + p 1 session + p 2 propertyMap + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Z contains a method_47722 + p 1 property + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lnet/minecraft/client/telemetry/TelemetryEventInstance; method_47723 a method_47723 + m (Ljava/lang/String;)Lnet/minecraft/network/chat/MutableComponent; makeTranslation a method_47724 + p 1 key + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; builder a method_47725 + p 0 id + p 1 exportKey + m ()Ljava/util/List; properties b method_47726 + m (Ljava/lang/String;)Lcom/mojang/serialization/DataResult; method_47727 b method_47727 + m ()Lcom/mojang/serialization/MapCodec; codec c method_47728 + m (Ljava/lang/String;)Ljava/lang/String; method_49636 c method_49636 + m ()Z isOptIn d method_47729 + m ()Lnet/minecraft/network/chat/MutableComponent; title e method_47730 + m ()Lnet/minecraft/network/chat/MutableComponent; description f method_47731 + m ()Ljava/util/List; values g method_47732 + m (Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Z)V + p 1 id + p 2 exportKey + p 3 properties + p 4 isOptIn + m ()V +c net/minecraft/client/telemetry/TelemetryEventType$Builder gvo$a net/minecraft/class_7966$class_7967 + f Ljava/lang/String; id a field_41448 + f Ljava/lang/String; exportKey b field_41449 + f Ljava/util/List; properties c field_41450 + f Z isOptIn d field_41451 + m ()Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; optIn a method_47733 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; define a method_47734 + p 1 property + m (Ljava/util/List;)Lnet/minecraft/client/telemetry/TelemetryEventType$Builder; defineAll a method_47735 + p 1 properties + m ()Lnet/minecraft/client/telemetry/TelemetryEventType; register b method_47736 + m (Ljava/lang/String;Ljava/lang/String;)V + p 1 id + p 2 exportKey +c net/minecraft/client/telemetry/TelemetryLogManager gvp net/minecraft/class_7968 + f Lorg/slf4j/Logger; LOGGER a field_41452 + f Ljava/lang/String; RAW_EXTENSION b field_41453 + f I EXPIRY_DAYS c field_41454 + f Lnet/minecraft/util/eventlog/EventLogDirectory; directory d field_41455 + f Ljava/util/concurrent/CompletableFuture; sessionLog e field_41456 + m ()Ljava/util/concurrent/CompletableFuture; openLogger a method_47737 + m (Ljava/nio/file/Path;)Ljava/util/concurrent/CompletableFuture; open a method_47738 + p 0 path + m (Ljava/util/Optional;)V method_47739 a method_47739 + m ()Ljava/util/Optional; method_47740 b method_47740 + m (Ljava/nio/file/Path;)Ljava/util/Optional; method_47741 b method_47741 + m (Ljava/util/Optional;)Ljava/util/Optional; method_47742 b method_47742 + m (Lnet/minecraft/util/eventlog/EventLogDirectory;)V + p 1 directory + m ()V +c net/minecraft/client/telemetry/TelemetryProperty gvq net/minecraft/class_7969 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_PRE_WINDOW_MS A field_44834 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_BOOTSTRAP_MS B field_44835 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_LOADING_OVERLAY_MS C field_44836 + f Lnet/minecraft/client/telemetry/TelemetryProperty; ADVANCEMENT_ID D field_44837 + f Lnet/minecraft/client/telemetry/TelemetryProperty; ADVANCEMENT_GAME_TIME E field_44838 + f Ljava/lang/String; id F comp_1171 + f Ljava/lang/String; exportKey G comp_1172 + f Lcom/mojang/serialization/Codec; codec H comp_1173 + f Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter; exporter I comp_1174 + f Ljava/time/format/DateTimeFormatter; TIMESTAMP_FORMATTER J field_41457 + f Lnet/minecraft/client/telemetry/TelemetryProperty; USER_ID a field_41458 + f Lnet/minecraft/client/telemetry/TelemetryProperty; CLIENT_ID b field_41459 + f Lnet/minecraft/client/telemetry/TelemetryProperty; MINECRAFT_SESSION_ID c field_41460 + f Lnet/minecraft/client/telemetry/TelemetryProperty; GAME_VERSION d field_41461 + f Lnet/minecraft/client/telemetry/TelemetryProperty; OPERATING_SYSTEM e field_41462 + f Lnet/minecraft/client/telemetry/TelemetryProperty; PLATFORM f field_41463 + f Lnet/minecraft/client/telemetry/TelemetryProperty; CLIENT_MODDED g field_41464 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LAUNCHER_NAME h field_44839 + f Lnet/minecraft/client/telemetry/TelemetryProperty; WORLD_SESSION_ID i field_41465 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SERVER_MODDED j field_41466 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SERVER_TYPE k field_41467 + f Lnet/minecraft/client/telemetry/TelemetryProperty; OPT_IN l field_41468 + f Lnet/minecraft/client/telemetry/TelemetryProperty; EVENT_TIMESTAMP_UTC m field_41469 + f Lnet/minecraft/client/telemetry/TelemetryProperty; GAME_MODE n field_41470 + f Lnet/minecraft/client/telemetry/TelemetryProperty; REALMS_MAP_CONTENT o field_44840 + f Lnet/minecraft/client/telemetry/TelemetryProperty; SECONDS_SINCE_LOAD p field_41471 + f Lnet/minecraft/client/telemetry/TelemetryProperty; TICKS_SINCE_LOAD q field_41472 + f Lnet/minecraft/client/telemetry/TelemetryProperty; FRAME_RATE_SAMPLES r field_41473 + f Lnet/minecraft/client/telemetry/TelemetryProperty; RENDER_TIME_SAMPLES s field_41474 + f Lnet/minecraft/client/telemetry/TelemetryProperty; USED_MEMORY_SAMPLES t field_41475 + f Lnet/minecraft/client/telemetry/TelemetryProperty; NUMBER_OF_SAMPLES u field_41476 + f Lnet/minecraft/client/telemetry/TelemetryProperty; RENDER_DISTANCE v field_41477 + f Lnet/minecraft/client/telemetry/TelemetryProperty; DEDICATED_MEMORY_KB w field_41478 + f Lnet/minecraft/client/telemetry/TelemetryProperty; WORLD_LOAD_TIME_MS x field_41479 + f Lnet/minecraft/client/telemetry/TelemetryProperty; NEW_WORLD y field_41480 + f Lnet/minecraft/client/telemetry/TelemetryProperty; LOAD_TIME_TOTAL_TIME_MS z field_44841 + m ()Lnet/minecraft/network/chat/MutableComponent; title a method_47743 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode;)V method_47744 a method_47744 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType;)V method_47745 a method_47745 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement;)V method_51797 a method_51797 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Lit/unimi/dsi/fastutil/longs/LongList;)V method_47746 a method_47746 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/time/Instant;)V method_47747 a method_47747 + m (Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;Ljava/lang/String;Ljava/util/UUID;)V method_47748 a method_47748 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/authlib/minecraft/TelemetryPropertyContainer;)V export a method_47749 + p 1 propertyMap + p 2 container + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; bool a method_47750 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter;)Lnet/minecraft/client/telemetry/TelemetryProperty; create a method_47751 + p 0 id + p 1 exportKey + p 2 codec + p 3 exporter + m ()Ljava/lang/String; id b comp_1171 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; string b method_47752 + p 0 id + p 1 exportKey + m ()Ljava/lang/String; exportKey c comp_1172 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; integer c method_47753 + p 0 id + p 1 exportKey + m ()Lcom/mojang/serialization/Codec; codec d comp_1173 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; makeLong d method_51798 + p 0 id + p 1 exportKey + m ()Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter; exporter e comp_1174 + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; uuid e method_47754 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; gameLoadMeasurement f method_51799 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;)Lnet/minecraft/client/telemetry/TelemetryProperty; longSamples g method_47755 + p 0 id + p 1 exportKey + m (Ljava/lang/String;Ljava/lang/String;Lcom/mojang/serialization/Codec;Lnet/minecraft/client/telemetry/TelemetryProperty$Exporter;)V + m ()V +c net/minecraft/client/telemetry/TelemetryProperty$Exporter gvq$a net/minecraft/class_7969$class_7970 +c net/minecraft/client/telemetry/TelemetryProperty$GameMode gvq$b net/minecraft/class_7969$class_7971 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; SURVIVAL a field_41481 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; CREATIVE b field_41482 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; ADVENTURE c field_41483 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; SPECTATOR d field_41484 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; HARDCORE e field_41485 + f Lcom/mojang/serialization/Codec; CODEC f field_41486 + f Ljava/lang/String; key g field_41487 + f I id h field_41488 + f [Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; $VALUES i field_41489 + m ()I id a method_47756 + m ()[Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; $values b method_47757 + m (Ljava/lang/String;ILjava/lang/String;I)V + p 3 key + p 4 id + m ()V +c net/minecraft/client/telemetry/TelemetryProperty$ServerType gvq$c net/minecraft/class_7969$class_7972 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; REALM a field_41490 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; LOCAL b field_41491 + f Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; OTHER c field_41492 + f Lcom/mojang/serialization/Codec; CODEC d field_41493 + f Ljava/lang/String; key e field_41494 + f [Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; $VALUES f field_41495 + m ()[Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; $values a method_47758 + m (Ljava/lang/String;ILjava/lang/String;)V + p 3 key + m ()V +c net/minecraft/client/telemetry/TelemetryPropertyMap gvr net/minecraft/class_7973 + f Ljava/util/Map; entries a field_41496 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; builder a method_47759 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Ljava/lang/Object; get a method_47760 + p 1 key + m (Ljava/util/List;)Lcom/mojang/serialization/MapCodec; createCodec a method_47761 + p 0 properties + m ()Ljava/util/Set; propertySet b method_47762 + m (Ljava/util/Map;)V + p 1 entries +c net/minecraft/client/telemetry/TelemetryPropertyMap$1 gvr$1 net/minecraft/class_7973$1 + f Ljava/util/List; val$properties a field_41497 + m (Lcom/mojang/serialization/DataResult;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/MapLike;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/mojang/serialization/DataResult; decodeProperty a method_47763 + p 1 result + p 2 ops + p 3 value + p 4 property + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; method_47764 a method_47764 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/serialization/DynamicOps;Lcom/mojang/serialization/RecordBuilder;)Lcom/mojang/serialization/RecordBuilder; encode a method_47765 + p 1 map + p 2 ops + p 3 builder + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;Lcom/mojang/serialization/RecordBuilder;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/mojang/serialization/RecordBuilder; encodeProperty a method_47766 + p 1 map + p 2 builder + p 3 key + m (Ljava/util/List;)V +c net/minecraft/client/telemetry/TelemetryPropertyMap$Builder gvr$a net/minecraft/class_7973$class_7974 + f Ljava/util/Map; entries a field_41498 + m ()Lnet/minecraft/client/telemetry/TelemetryPropertyMap; build a method_47767 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; put a method_47768 + p 1 key + p 2 value + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; putAll a method_47769 + p 1 propertyMap + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/lang/Object;)Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder; putIfNotNull b method_51800 + p 1 key + p 2 value + m ()V +c net/minecraft/client/telemetry/WorldSessionTelemetryManager gvs net/minecraft/class_7975 + f Ljava/util/UUID; worldSessionId a field_41499 + f Lnet/minecraft/client/telemetry/TelemetryEventSender; eventSender b field_41500 + f Lnet/minecraft/client/telemetry/events/WorldLoadEvent; worldLoadEvent c field_41501 + f Lnet/minecraft/client/telemetry/events/WorldUnloadEvent; worldUnloadEvent d field_41502 + f Lnet/minecraft/client/telemetry/events/PerformanceMetricsEvent; performanceMetricsEvent e field_41503 + f Lnet/minecraft/client/telemetry/events/WorldLoadTimesEvent; worldLoadTimesEvent f field_41504 + m ()V tick a method_47770 + m (J)V setTime a method_47771 + p 1 time + m (Lnet/minecraft/resources/ResourceLocation;JLnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_51801 a method_51801 + m (Lnet/minecraft/world/level/GameType;Z)V onPlayerInfoReceived a method_47772 + p 1 gameType + p 2 isHardcore + m (Lnet/minecraft/world/level/Level;Lnet/minecraft/advancements/AdvancementHolder;)V onAdvancementDone a method_51802 + p 1 level + p 2 advancement + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47773 a method_47773 + m (Ljava/lang/String;)V onServerBrandReceived a method_47774 + p 1 serverBrand + m ()V worldSessionStart b method_47775 + m ()V onDisconnect c method_47776 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;ZLjava/time/Duration;Ljava/lang/String;)V + p 1 sender + p 2 newWorld + p 3 worldLoadDuration + p 4 minigameName +c net/minecraft/client/telemetry/events/AggregatedTelemetryEvent gvt net/minecraft/class_7976 + f I SAMPLE_INTERVAL_MS a field_41505 + f I SAMPLES_PER_EVENT b field_41506 + f I sampleCount c field_41507 + f Z ticking d field_41508 + f Ljava/time/Instant; lastSampleTime e field_41509 + m ()V start a method_47777 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V tick a method_47778 + p 1 sender + m ()Z shouldTakeSample b method_47779 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V sendEvent b method_47784 + p 1 sender + m ()Z shouldSentEvent c method_47780 + m ()V stop d method_47781 + m ()I getSampleCount e method_47782 + m ()V takeSample f method_47783 + m ()V +c net/minecraft/client/telemetry/events/GameLoadTimesEvent gvu net/minecraft/class_8561 + f Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent; INSTANCE a field_44842 + f Lorg/slf4j/Logger; LOGGER b field_44843 + f Lcom/google/common/base/Ticker; timeSource c field_44844 + f Ljava/util/Map; measurements d field_44845 + f Ljava/util/OptionalLong; bootstrapTime e field_44846 + m (J)V setBootstrapTime a method_51803 + p 1 bootstrapTime + m (Lcom/google/common/base/Stopwatch;Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/google/common/base/Stopwatch; method_51804 a method_51804 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_51805 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)V beginStep a method_51806 + p 1 measurement + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Lcom/google/common/base/Stopwatch;)V beginStep a method_51807 + p 1 measurement + p 2 stopwatch + m (Lnet/minecraft/client/telemetry/TelemetryProperty;Ljava/util/function/Function;)V beginStep a method_51808 + p 1 measurement + p 2 stopwatchGetter + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_51809 a method_51809 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;J)V method_51810 a method_51810 + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;Lnet/minecraft/client/telemetry/TelemetryProperty;Lcom/google/common/base/Stopwatch;)V method_51811 a method_51811 + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)V endStep b method_51812 + p 1 measurement + m (Lnet/minecraft/client/telemetry/TelemetryProperty;)Lcom/google/common/base/Stopwatch; method_51813 c method_51813 + m (Lcom/google/common/base/Ticker;)V + p 1 timeSource + m ()V +c net/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement gvu$a net/minecraft/class_8561$class_8562 + f Lcom/mojang/serialization/Codec; CODEC a field_44847 + f I millis b comp_1531 + m ()I millis a comp_1531 + m (Lnet/minecraft/client/telemetry/events/GameLoadTimesEvent$Measurement;)Ljava/lang/Integer; method_51814 a method_51814 + m (I)V + m ()V +c net/minecraft/client/telemetry/events/PerformanceMetricsEvent gvv net/minecraft/class_7977 + f J DEDICATED_MEMORY_KB a field_41510 + f Lit/unimi/dsi/fastutil/longs/LongList; fpsSamples b field_41511 + f Lit/unimi/dsi/fastutil/longs/LongList; frameTimeSamples c field_41512 + f Lit/unimi/dsi/fastutil/longs/LongList; usedMemorySamples d field_41513 + m (J)J toKilobytes a method_47785 + p 0 bytes + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47979 a method_47979 + m ()V resetValues g method_47788 + m ()V takeUsedMemorySample h method_47789 + m ()V + m ()V +c net/minecraft/client/telemetry/events/WorldLoadEvent gvw net/minecraft/class_7979 + f Z eventSent a field_41516 + f Lnet/minecraft/client/telemetry/TelemetryProperty$GameMode; gameMode b field_41517 + f Ljava/lang/String; serverBrand c field_41518 + f Ljava/lang/String; minigameName d field_44848 + m ()Lnet/minecraft/client/telemetry/TelemetryProperty$ServerType; getServerType a method_47794 + m (Lnet/minecraft/world/level/GameType;Z)V setGameMode a method_47791 + p 1 gameMode + p 2 isHardcore + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)Z send a method_47980 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V addProperties a method_47792 + p 1 builder + m (Ljava/lang/String;)V setServerBrand a method_47793 + p 1 serverBrand + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47795 b method_47795 + m (Ljava/lang/String;)V + p 1 minigameName +c net/minecraft/client/telemetry/events/WorldLoadEvent$1 gvw$1 net/minecraft/class_7979$1 + f [I $SwitchMap$net$minecraft$world$level$GameType a field_34955 + m ()V +c net/minecraft/client/telemetry/events/WorldLoadTimesEvent gvx net/minecraft/class_7981 + f Z newWorld a field_41519 + f Ljava/time/Duration; worldLoadDuration b field_41520 + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_47981 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47796 a method_47796 + m (ZLjava/time/Duration;)V + p 1 newWorld + p 2 wordLoadDuration +c net/minecraft/client/telemetry/events/WorldUnloadEvent gvy net/minecraft/class_7982 + f I NOT_TRACKING_TIME a field_41712 + f Ljava/util/Optional; worldLoadedTime b field_41521 + f J totalTicks c field_41522 + f J lastGameTime d field_41523 + m ()V onPlayerInfoReceived a method_47982 + m (J)V setTime a method_47798 + p 1 time + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;)V send a method_47786 + p 1 sender + m (Lnet/minecraft/client/telemetry/TelemetryEventSender;Ljava/time/Instant;)V method_47799 a method_47799 + m (Ljava/time/Instant;)I getTimeInSecondsSinceLoad a method_47800 + p 1 wordLoadedTime + m (Ljava/time/Instant;Lnet/minecraft/client/telemetry/TelemetryPropertyMap$Builder;)V method_47801 a method_47801 + m ()V +c net/minecraft/client/telemetry/events/package-info gvz net/minecraft/class_7983 +c net/minecraft/client/telemetry/package-info gwa net/minecraft/class_7984 +c net/minecraft/client/tutorial/BundleTutorial gwb net/minecraft/class_5829 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial a field_28798 + f Lnet/minecraft/client/Options; options b field_28799 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast c field_28800 + m ()V showToast a method_33701 + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V onInventoryAction a method_33702 + p 1 carriedStack + p 2 slottedStack + p 3 action + m ()V clearToast b method_33703 + m (Lnet/minecraft/client/tutorial/Tutorial;Lnet/minecraft/client/Options;)V + p 1 tutorial + p 2 options +c net/minecraft/client/tutorial/CompletedTutorialStepInstance gwc net/minecraft/class_1150 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial +c net/minecraft/client/tutorial/CraftPlanksTutorialStep gwd net/minecraft/class_1149 + f I HINT_DELAY a field_33027 + f Lnet/minecraft/network/chat/Component; CRAFT_TITLE b field_5611 + f Lnet/minecraft/network/chat/Component; CRAFT_DESCRIPTION c field_5612 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5608 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5610 + f I timeWaiting f field_5609 + m (Lnet/minecraft/client/player/LocalPlayer;Lnet/minecraft/tags/TagKey;)Z hasCraftedPlanksPreviously a method_4895 + p 0 player + p 1 items + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/FindTreeTutorialStepInstance gwe net/minecraft/class_1152 + f I HINT_DELAY a field_33028 + f Lnet/minecraft/network/chat/Component; TITLE b field_5631 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5628 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5630 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5633 + f I timeWaiting f field_5629 + m (Lnet/minecraft/client/player/LocalPlayer;)Z hasPunchedTreesPreviously a method_4896 + p 0 player + m (Lnet/minecraft/world/item/ItemStack;)Z method_43340 b method_43340 + m (Lnet/minecraft/client/player/LocalPlayer;)Z hasCollectedTreeItems b method_43341 + p 0 player + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/MovementTutorialStepInstance gwf net/minecraft/class_1151 + f I MINIMUM_TIME_MOVED a field_33029 + f I MINIMUM_TIME_LOOKED b field_33030 + f I MOVE_HINT_DELAY c field_33031 + f I LOOK_HINT_DELAY d field_33032 + f I INCOMPLETE e field_33033 + f Lnet/minecraft/network/chat/Component; MOVE_TITLE f field_5624 + f Lnet/minecraft/network/chat/Component; MOVE_DESCRIPTION g field_5617 + f Lnet/minecraft/network/chat/Component; LOOK_TITLE h field_5621 + f Lnet/minecraft/network/chat/Component; LOOK_DESCRIPTION i field_5614 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial j field_5618 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; moveToast k field_5622 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; lookToast l field_5623 + f I timeWaiting m field_5616 + f I timeMoved n field_5615 + f I timeLooked o field_5627 + f Z moved p field_5620 + f Z turned q field_5619 + f I moveCompleted r field_5626 + f I lookCompleted s field_5625 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/OpenInventoryTutorialStep gwg net/minecraft/class_1154 + f I HINT_DELAY a field_33034 + f Lnet/minecraft/network/chat/Component; TITLE b field_5643 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5644 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5640 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5642 + f I timeWaiting f field_5641 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/PunchTreeTutorialStepInstance gwh net/minecraft/class_1153 + f I HINT_DELAY a field_33035 + f Lnet/minecraft/network/chat/Component; TITLE b field_5638 + f Lnet/minecraft/network/chat/Component; DESCRIPTION c field_5639 + f Lnet/minecraft/client/tutorial/Tutorial; tutorial d field_5634 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast e field_5637 + f I timeWaiting f field_5636 + f I resetCount g field_5635 + m (Lnet/minecraft/client/tutorial/Tutorial;)V + p 1 tutorial + m ()V +c net/minecraft/client/tutorial/Tutorial gwi net/minecraft/class_1156 + f Lnet/minecraft/client/Minecraft; minecraft a field_5645 + f Lnet/minecraft/client/tutorial/TutorialStepInstance; instance b field_5646 + f Ljava/util/List; timedToasts c field_26893 + f Lnet/minecraft/client/tutorial/BundleTutorial; bundleTutorial d field_28801 + m ()V onOpenInventory a method_4912 + c Called when the player opens his inventory + m (DD)V onMouse a method_4908 + p 1 velocityX + p 3 velocityY + m (Lnet/minecraft/world/item/ItemStack;)V onGetItem a method_4906 + c Called when the player pick up an ItemStack + p 1 stack + m (Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/inventory/ClickAction;)V onInventoryAction a method_33704 + p 1 carriedStack + p 2 slottedStack + p 3 action + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;)V removeTimedToast a method_31364 + p 1 toast + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;I)V addTimedToast a method_31365 + p 1 toast + p 2 durationTicks + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;Lnet/minecraft/client/tutorial/Tutorial$TimedToast;)Z method_31366 a method_31366 + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/phys/HitResult;)V onLookAt a method_4911 + p 1 level + p 2 result + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)V onDestroyBlock a method_4907 + p 1 level + p 2 pos + p 3 state + p 4 diggingStage + m (Lnet/minecraft/client/player/Input;)V onInput a method_4909 + p 1 input + m (Lnet/minecraft/client/tutorial/TutorialSteps;)V setStep a method_4910 + c Sets a new step to the tutorial + p 1 step + m (Ljava/lang/String;)Lnet/minecraft/network/chat/Component; key a method_4913 + p 0 keybind + m ()V stop b method_4915 + m ()V start c method_4916 + c Reloads the tutorial step from the game settings + m ()V tick d method_4917 + m ()Lnet/minecraft/client/Minecraft; getMinecraft e method_4914 + m ()Z isSurvival f method_4905 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/client/Options;)V + p 1 minecraft + p 2 options +c net/minecraft/client/tutorial/Tutorial$TimedToast gwi$a net/minecraft/class_1156$class_5524 + f Lnet/minecraft/client/gui/components/toasts/TutorialToast; toast a field_26894 + f I durationTicks b field_26895 + f I progress c field_26896 + m ()Z updateProgress a method_31368 + m (Lnet/minecraft/client/gui/components/toasts/TutorialToast;I)V + p 1 toast + p 2 durationTicks +c net/minecraft/client/tutorial/TutorialStepInstance gwj net/minecraft/class_1155 + m ()V tick a method_4899 + m (DD)V onMouse a method_4901 + p 1 velocityX + p 3 velocityY + m (Lnet/minecraft/world/item/ItemStack;)V onGetItem a method_4897 + c Called when the player pick up an ItemStack + p 1 stack + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/world/phys/HitResult;)V onLookAt a method_4898 + c Handles blocks and entities hovering + p 1 level + p 2 result + m (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;F)V onDestroyBlock a method_4900 + c Called when a player hits block to destroy it. + p 1 level + p 2 pos + p 3 state + p 4 diggingStage + m (Lnet/minecraft/client/player/Input;)V onInput a method_4903 + c Handles the player movement + p 1 input + m ()V clear b method_4902 + m ()V onOpenInventory c method_4904 + c Called when the player opens his inventory +c net/minecraft/client/tutorial/TutorialSteps gwk net/minecraft/class_1157 + f Lnet/minecraft/client/tutorial/TutorialSteps; MOVEMENT a field_5650 + f Lnet/minecraft/client/tutorial/TutorialSteps; FIND_TREE b field_5648 + f Lnet/minecraft/client/tutorial/TutorialSteps; PUNCH_TREE c field_5649 + f Lnet/minecraft/client/tutorial/TutorialSteps; OPEN_INVENTORY d field_5652 + f Lnet/minecraft/client/tutorial/TutorialSteps; CRAFT_PLANKS e field_5655 + f Lnet/minecraft/client/tutorial/TutorialSteps; NONE f field_5653 + f Ljava/lang/String; name g field_5651 + f Ljava/util/function/Function; constructor h field_5647 + f [Lnet/minecraft/client/tutorial/TutorialSteps; $VALUES i field_5654 + m ()Ljava/lang/String; getName a method_4920 + m (Lnet/minecraft/client/tutorial/Tutorial;)Lnet/minecraft/client/tutorial/TutorialStepInstance; create a method_4918 + p 1 tutorial + m (Ljava/lang/String;)Lnet/minecraft/client/tutorial/TutorialSteps; getByName a method_4919 + p 0 name + m ()[Lnet/minecraft/client/tutorial/TutorialSteps; $values b method_36929 + m (Ljava/lang/String;ILjava/lang/String;Ljava/util/function/Function;)V + p 3 name + p 4 constructor + m ()V +c net/minecraft/client/tutorial/package-info gwl net/minecraft/class_6275 +c net/minecraft/realms/DisconnectedRealmsScreen gwm net/minecraft/class_4899 + f I textHeight B field_22811 + f Lnet/minecraft/network/chat/Component; reason a field_22808 + f Lnet/minecraft/client/gui/components/MultiLineLabel; message b field_22809 + f Lnet/minecraft/client/gui/screens/Screen; parent c field_22810 + m (Lnet/minecraft/client/gui/components/Button;)V method_25468 a method_25468 + m (Lnet/minecraft/client/gui/screens/Screen;Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/Component;)V + p 1 parent + p 2 title + p 3 reason +c net/minecraft/realms/RealmsConnect gwn net/minecraft/class_4902 + f Lorg/slf4j/Logger; LOGGER a field_22814 + f Lnet/minecraft/client/gui/screens/Screen; onlineScreen b field_22815 + f Z aborted c field_22816 + f Lnet/minecraft/network/Connection; connection d field_22817 + m ()V abort a method_25477 + m (Lcom/mojang/realmsclient/dto/RealmsServer;Lnet/minecraft/client/multiplayer/resolver/ServerAddress;)V connect a method_25480 + p 1 server + p 2 address + m ()V tick b method_25481 + m (Lnet/minecraft/client/gui/screens/Screen;)V + p 1 onlineScreen + m ()V +c net/minecraft/realms/RealmsConnect$1 gwn$1 net/minecraft/class_4902$1 + f Ljava/lang/String; val$hostname a field_11112 + f I val$port b field_11114 + f Lnet/minecraft/client/Minecraft; val$minecraft c field_22818 + f Lcom/mojang/realmsclient/dto/RealmsServer; val$server d field_26928 + f Lnet/minecraft/realms/RealmsConnect; field_11113 e field_11113 + m (Lnet/minecraft/client/Minecraft;Lnet/minecraft/realms/DisconnectedRealmsScreen;)V method_25486 a method_25486 + m (Lnet/minecraft/network/chat/Component;)V method_10210 a method_10210 + m (Lnet/minecraft/realms/RealmsConnect;Ljava/lang/String;Ljava/lang/String;ILnet/minecraft/client/Minecraft;Lcom/mojang/realmsclient/dto/RealmsServer;)V +c net/minecraft/realms/RealmsLabel gwo net/minecraft/class_4903 + f Lnet/minecraft/network/chat/Component; text a field_22819 + f I x b field_22820 + f I y c field_22821 + f I color d field_22822 + m ()Lnet/minecraft/network/chat/Component; getText a method_25487 + m (Lnet/minecraft/network/chat/Component;III)V + p 1 text + p 2 x + p 3 y + p 4 color +c net/minecraft/realms/RealmsObjectSelectionList gwp net/minecraft/class_4904 + m ()V clear J method_25493 + m (Lnet/minecraft/client/gui/components/ObjectSelectionList$Entry;)I addEntry a method_25491 + p 1 entry + m (I)V selectItem b method_25489 + p 1 index + m (I)V setSelectedItem p method_25492 + p 1 index + m (IIII)V + p 1 width + p 2 height + p 3 y + p 4 itemHeight +c net/minecraft/realms/RealmsScreen gwq net/minecraft/class_4905 + f I SKIN_FACE_SIZE A field_39676 + f Ljava/util/List; labels a field_33848 + f I TITLE_HEIGHT r field_33055 + f I EXPIRATION_NOTIFICATION_DAYS s field_33057 + f J SIZE_LIMIT u field_33058 + f I COLOR_DARK_GRAY v field_33061 + f I COLOR_MEDIUM_GRAY w field_33062 + f I COLOR_GREEN x field_33063 + f I COLOR_LINK y field_33040 + f I COLOR_LINK_HOVER z field_33041 + m (Lnet/minecraft/realms/RealmsLabel;)Lnet/minecraft/realms/RealmsLabel; addLabel a method_37107 + p 1 label + m (I)I row g method_25494 + p 0 position + m ()Lnet/minecraft/network/chat/Component; createLabelNarration m method_25495 + m (Lnet/minecraft/network/chat/Component;)V + p 1 title +c net/minecraft/realms/RepeatedNarrator gwr net/minecraft/class_4907 + f F permitsPerSecond a field_22825 + f Ljava/util/concurrent/atomic/AtomicReference; params b field_22826 + m (Lnet/minecraft/client/GameNarrator;Lnet/minecraft/network/chat/Component;)V narrate a method_25499 + p 1 narrator + p 2 narration + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/realms/RepeatedNarrator$Params;)Lnet/minecraft/realms/RepeatedNarrator$Params; method_25500 a method_25500 + m (Ljava/time/Duration;)V + p 1 duration +c net/minecraft/realms/RepeatedNarrator$Params gwr$a net/minecraft/class_4907$class_4908 + f Lnet/minecraft/network/chat/Component; narration a field_22827 + f Lcom/google/common/util/concurrent/RateLimiter; rateLimiter b field_22828 + m (Lnet/minecraft/network/chat/Component;Lcom/google/common/util/concurrent/RateLimiter;)V + p 1 narration + p 2 rateLimiter +c net/minecraft/realms/package-info gws net/minecraft/class_6276 +c net/minecraft/data/Main net/minecraft/data/Main net/minecraft/data/Main + m (Ljava/lang/String;)Ljava/nio/file/Path; method_4967 a method_4967 + m (Ljava/nio/file/Path;Ljava/util/Collection;ZZZZZLnet/minecraft/WorldVersion;Z)Lnet/minecraft/data/DataGenerator; createStandardGenerator a method_4968 + p 0 outputFolder + p 1 inputFolders + p 2 client + p 3 server + p 4 dev + p 5 reports + p 6 validate + p 7 version + p 8 alwaysGenerate + m (Ljava/util/Collection;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/structures/NbtToSnbt; method_46595 a method_46595 + m (Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/data/tags/TagsProvider;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/tags/VanillaItemTagsProvider; method_46599 a method_46599 + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;)Lnet/minecraft/data/DataProvider$Factory; bindRegistries a method_46839 + p 0 tagProviderFactory + p 1 lookupProvider + m (Ljava/util/function/BiFunction;Ljava/util/concurrent/CompletableFuture;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/DataProvider; method_46840 a method_46840 + m (Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/metadata/PackMetadataGenerator; method_52888 a method_52888 + m (Ljava/util/Collection;Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/structures/SnbtToNbt; method_46598 b method_46598 + m (Lnet/minecraft/data/PackOutput;)Lnet/minecraft/data/metadata/PackMetadataGenerator; method_46597 b method_46597 + m ()V +c net/minecraft/server/Main net/minecraft/server/Main net/minecraft/server/Main + f Lorg/slf4j/Logger; LOGGER a field_24625 + m ()Z method_28126 a method_28126 + m (Lnet/minecraft/server/WorldLoader$InitConfig;Lcom/mojang/serialization/Dynamic;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Ljoptsimple/OptionSpec;Ljava/util/concurrent/Executor;)Ljava/util/concurrent/CompletableFuture; method_43612 a method_43612 + m (Lnet/minecraft/server/dedicated/DedicatedServerProperties;Lcom/mojang/serialization/Dynamic;ZLnet/minecraft/server/packs/repository/PackRepository;)Lnet/minecraft/server/WorldLoader$InitConfig; loadOrCreateConfig a method_46219 + p 0 dedicatedServerProperties + p 1 dynamic + p 2 safeMode + p 3 packRepository + m (Lcom/mojang/serialization/Dynamic;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Ljoptsimple/OptionSpec;Lnet/minecraft/server/WorldLoader$DataLoadContext;)Lnet/minecraft/server/WorldLoader$DataLoadOutput; method_43613 a method_43613 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Lnet/minecraft/server/dedicated/DedicatedServerSettings;Lnet/minecraft/server/Services;Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljoptsimple/OptionSpec;Ljava/lang/Thread;)Lnet/minecraft/server/dedicated/DedicatedServer; method_29734 a method_29734 + m (Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lcom/mojang/datafixers/DataFixer;ZLjava/util/function/BooleanSupplier;Lnet/minecraft/core/RegistryAccess;Z)V forceUpgrade a method_29173 + p 0 levelStorage + p 1 dataFixer + p 2 eraseCache + p 3 shouldContinue + p 4 registryAccess + p 5 recreateRegionFiles + m (Ljava/nio/file/Path;)V writePidFile a method_49066 + p 0 path + m ()V + m ()V +c net/minecraft/server/Main$1 net/minecraft/server/Main$1 net/minecraft/server/Main$1 + f Lnet/minecraft/server/dedicated/DedicatedServer; val$dedicatedServer a field_4611 + m (Ljava/lang/String;Lnet/minecraft/server/dedicated/DedicatedServer;)V +c net/minecraft/client/main/Main net/minecraft/client/main/Main net/minecraft/client/main/Main + m (Ljava/lang/Integer;)Ljava/util/OptionalInt; ofNullable a method_21612 + p 0 value + m (Ljava/lang/String;)Ljava/lang/String; unescapeJavaArgument a method_53858 + p 0 arg + m (Ljoptsimple/OptionSet;Ljoptsimple/OptionSpec;)Ljava/lang/Object; parseArgument a method_11428 + c Gets the value of a specified command-line parameter from an OptionSet. If it doesn't exist, it returns the default value for the parameter. + p 0 set + p 1 option + m (Ljava/lang/String;)Ljava/util/Optional; emptyStringToEmptyOptional b method_38752 + p 0 input + m (Ljava/lang/String;)Z stringHasValue c method_11429 + c Returns {@code true} if the given string is neither null nor empty. + p 0 str + m ()V + m ()V +c net/minecraft/client/main/Main$1 net/minecraft/client/main/Main$1 net/minecraft/client/main/Main$1 + f Ljava/lang/String; val$proxyUser a field_12139 + f Ljava/lang/String; val$proxyPass b field_12140 + m (Ljava/lang/String;Ljava/lang/String;)V +c net/minecraft/server/MinecraftServer net/minecraft/server/MinecraftServer net/minecraft/server/MinecraftServer + f Lnet/minecraft/util/profiling/ProfilerFiller; profiler A field_16258 + f Ljava/util/function/Consumer; onMetricsRecordingStopped B field_33975 + f Ljava/util/function/Consumer; onMetricsRecordingFinished C field_33976 + f Z willStartRecordingMetrics D field_33977 + f Lnet/minecraft/server/MinecraftServer$TimeProfiler; debugCommandProfiler E field_33978 + f Z debugCommandProfilerDelayStart F field_33979 + f Lnet/minecraft/server/network/ServerConnectionListener; connection G field_4563 + f Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory; progressListenerFactory H field_17439 + f Lnet/minecraft/network/protocol/status/ServerStatus; status I field_4593 + f Lnet/minecraft/network/protocol/status/ServerStatus$Favicon; statusIcon J field_42958 + f Lnet/minecraft/util/RandomSource; random K field_4602 + f Lcom/mojang/datafixers/DataFixer; fixerUpper L field_4587 + f Ljava/lang/String; localIp M field_4585 + f I port N field_4555 + f Lnet/minecraft/core/LayeredRegistryAccess; registries O field_25132 + f Ljava/util/Map; levels P field_4589 + f Lnet/minecraft/server/players/PlayerList; playerList Q field_4550 + f Z running R field_4544 + f Z stopped S field_4561 + f I tickCount T field_4572 + f I ticksUntilAutosave U field_47135 + f Z onlineMode V field_4543 + f Z preventProxyConnections W field_4560 + f Z pvp X field_4604 + f Z allowFlight Y field_4554 + f Ljava/lang/String; motd Z field_4564 + f Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; structureTemplateManager aA field_24370 + f Lnet/minecraft/server/ServerTickRateManager; tickRateManager aB field_47142 + f Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing aC field_51466 + f Z isSaving aD field_35437 + f Ljava/util/concurrent/atomic/AtomicReference; fatalException aE field_51917 + f I playerIdleTimeout aa field_4596 + f [J tickTimesNanos ab field_47136 + f J aggregatedTickTimesNanos ac field_47137 + f Ljava/security/KeyPair; keyPair ad field_4552 + f Lcom/mojang/authlib/GameProfile; singleplayerProfile ae field_39214 + f Z isDemo af field_4549 + f Z isReady ag field_4547 + f J lastOverloadWarningNanos ah field_47138 + f J lastServerStatus ai field_4551 + f Ljava/lang/Thread; serverThread aj field_16257 + f J lastTickNanos ak field_48773 + f J taskExecutionStartNanos al field_48774 + f J idleTimeNanos am field_48775 + f J nextTickTimeNanos an field_47139 + f J delayedTasksMaxNextTickTimeNanos ao field_47140 + f Z mayHaveDelayedTasks ap field_19249 + f Lnet/minecraft/server/packs/repository/PackRepository; packRepository aq field_4595 + f Lnet/minecraft/server/ServerScoreboard; scoreboard ar field_4558 + f Lnet/minecraft/world/level/storage/CommandStorage; commandStorage as field_20850 + f Lnet/minecraft/server/bossevents/CustomBossEvents; customBossEvents at field_4548 + f Lnet/minecraft/server/ServerFunctionManager; functionManager au field_4591 + f Z enforceWhitelist av field_4570 + f F smoothedTickTimeMillis aw field_47141 + f Ljava/util/concurrent/Executor; executor ax field_17200 + f Ljava/lang/String; serverId ay field_17601 + f Lnet/minecraft/server/MinecraftServer$ReloadableResources; resources az field_25318 + f Ljava/lang/String; VANILLA_BRAND b field_34982 + f I ABSOLUTE_MAX_WORLD_SIZE c field_33211 + f Lnet/minecraft/world/level/LevelSettings; DEMO_SETTINGS d field_17704 + f Lcom/mojang/authlib/GameProfile; ANONYMOUS_PLAYER_PROFILE e field_35641 + f Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess; storageSource f field_23784 + f Lnet/minecraft/world/level/storage/PlayerDataStorage; playerDataStorage g field_24371 + f Ljava/net/Proxy; proxy h field_4599 + f Lnet/minecraft/server/Services; services i field_39440 + f Lnet/minecraft/world/level/storage/WorldData; worldData j field_24372 + f Lorg/slf4j/Logger; LOGGER k field_4546 + f F AVERAGE_TICK_TIME_SMOOTHING l field_33212 + f I TICK_STATS_SPAN m field_33213 + f J OVERLOADED_THRESHOLD_NANOS n field_47143 + f I OVERLOADED_TICKS_THRESHOLD o field_47144 + f J OVERLOADED_WARNING_INTERVAL_NANOS p field_47145 + f I OVERLOADED_TICKS_WARNING_INTERVAL q field_47146 + f J STATUS_EXPIRE_TIME_NANOS r field_47147 + f J PREPARE_LEVELS_DEFAULT_DELAY_NANOS s field_47148 + f I MAX_STATUS_PLAYER_SAMPLE t field_33218 + f I SPAWN_POSITION_SEARCH_RADIUS u field_48466 + f I AUTOSAVE_INTERVAL v field_33220 + f I MIMINUM_AUTOSAVE_TICKS w field_47149 + f I MAX_TICK_LATENCY x field_33221 + f Ljava/util/List; tickables y field_4568 + f Lnet/minecraft/util/profiling/metrics/profiling/MetricsRecorder; metricsRecorder z field_22250 + m ()Ljava/util/Optional; getWorldScreenshotFile C method_3725 + m ()Ljava/nio/file/Path; getServerDirectory D method_3831 + m ()Z isPaused E method_54809 + m ()V onTickRateChanged F method_54831 + m ()V forceTimeSynchronization G method_49749 + m ()Z isShutdown H method_16043 + m ()Lnet/minecraft/server/level/ServerLevel; overworld I method_30002 + m ()Ljava/util/Set; levelKeys J method_29435 + m ()Ljava/lang/Iterable; getAllLevels K method_3738 + m ()[Ljava/lang/String; getPlayerNames O method_3858 + c Returns an array of the usernames of all the connected players. + m ()Lnet/minecraft/util/ModCheck; getModdedStatus P method_24307 + m ()Ljava/security/KeyPair; getKeyPair Q method_3716 + c Gets KeyPair instanced in MinecraftServer. + m ()I getPort R method_3756 + c Gets serverPort. + m ()Lcom/mojang/authlib/GameProfile; getSingleplayerProfile S method_43824 + m ()Z isSingleplayer T method_3724 + m ()V initializeKeyPair U method_31400 + m ()Z isSpawningMonsters V method_3783 + m ()Z isDemo W method_3799 + c Gets whether this is a demo or not. + m ()Ljava/util/Optional; getServerResourcePack X method_43659 + m ()Z isResourcePackRequired Y method_32303 + m ()Z usesAuthentication Z method_3828 + m (I)V setPort a method_3779 + p 1 port + m (J)V logTickMethodTime a method_56602 + p 1 startTime + m (Lnet/minecraft/SystemReport;)Lnet/minecraft/SystemReport; fillServerSystemReport a method_3859 + p 1 report + m (Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/server/level/ServerLevel; getLevel a method_3847 + c Gets the worldServer by the given dimension. + p 1 dimension + m (Lnet/minecraft/server/TickTask;)Z shouldRun a method_19464 + p 1 runnable + m (Lnet/minecraft/server/level/ServerLevel;)I getSpawnRadius a method_3829 + p 1 level + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/server/level/ServerChunkCache;Lnet/minecraft/world/level/storage/ServerLevelData;Lnet/minecraft/core/Holder$Reference;)V method_46841 a method_46841 + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/storage/ServerLevelData;ZZ)V setInitialSpawn a method_27901 + p 0 level + p 1 levelData + p 2 generateBonusChest + p 3 debug + m (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/player/Player;)Z isUnderSpawnProtection a method_3785 + p 1 level + p 2 pos + p 3 player + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/network/TextFilter; createTextFilterForPlayer a method_31371 + p 1 player + m (Lnet/minecraft/server/level/ServerPlayer;Lnet/minecraft/util/debugchart/RemoteDebugSampleType;)V subscribeToDebugSample a method_56625 + p 1 player + p 2 sampleType + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;)V createLevels a method_3786 + p 1 listener + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/flag/FeatureFlagSet;)V enableForcedFeaturePacks a method_59847 + p 0 packRepository + p 1 enabledFeatures + m (Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/world/level/WorldDataConfiguration;ZZ)Lnet/minecraft/world/level/WorldDataConfiguration; configurePackRepository a method_29736 + p 0 packRepository + p 1 initialDataConfig + p 2 initMode + p 3 safeMode + m (Lnet/minecraft/server/packs/repository/PackRepository;Ljava/util/Collection;Lnet/minecraft/world/flag/FeatureFlagSet;Z)Lnet/minecraft/world/level/WorldDataConfiguration; configureRepositoryWithSelection a method_59848 + p 0 packRepository + p 1 selectedPacks + p 2 enabledFeatures + p 3 safeMode + m (Lnet/minecraft/server/packs/repository/PackRepository;Z)Lnet/minecraft/world/level/DataPackConfig; getSelectedPacks a method_29735 + p 0 packRepository + p 1 safeMode + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;)Lnet/minecraft/server/MinecraftServer$ReloadableResources; method_40374 a method_40374 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;Ljava/lang/Throwable;)V method_40375 a method_40375 + m (Lnet/minecraft/server/players/PlayerList;)V setPlayerList a method_3846 + p 1 list + m (Lnet/minecraft/util/NativeModuleLister$NativeModuleInfo;)Ljava/lang/String; method_38580 a method_38580 + m (Lnet/minecraft/util/profiling/ProfileResults;)V method_37318 a method_37318 + m (Lnet/minecraft/world/Difficulty;Z)V setDifficulty a method_3776 + p 1 difficulty + p 2 forced + m (Lcom/google/common/collect/ImmutableList;)Ljava/util/concurrent/CompletionStage; method_29437 a method_29437 + m (Lcom/mojang/authlib/GameProfile;)Z isSingleplayerOwner a method_19466 + p 1 profile + m (Lnet/minecraft/world/level/GameType;)V setDefaultGameType a method_3838 + c Sets the game type for all worlds. + p 1 gameMode + m (Lnet/minecraft/world/level/GameType;ZI)Z publishServer a method_3763 + p 1 gameMode + p 2 commands + p 3 port + m (Lnet/minecraft/world/level/Level;)Z isLevelEnabled a method_60671 + p 1 level + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)Ljava/lang/String; method_61087 a method_61087 + m (Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;Lnet/minecraft/CrashReport;Lnet/minecraft/world/level/ChunkPos;)V method_61088 a method_61088 + m (Lnet/minecraft/world/level/storage/DimensionDataStorage;)V readScoreboard a method_17976 + p 1 dataStorage + m (Lnet/minecraft/world/level/storage/LevelResource;)Ljava/nio/file/Path; getWorldPath a method_27050 + p 1 levelResource + m (Lnet/minecraft/world/level/storage/WorldData;)V setupDebugLevel a method_17977 + p 1 worldData + m (Lnet/minecraft/commands/CommandSourceStack;)V kickUnlistedPlayers a method_3728 + p 1 commandSource + m (Ljava/lang/Runnable;)Lnet/minecraft/server/TickTask; wrapRunnable a method_16209 + p 1 runnable + m (Ljava/lang/RuntimeException;)V setFatalException a method_60582 + p 0 fatalException + m (Ljava/lang/Thread;Ljava/lang/Throwable;)V method_3854 a method_3854 + m (Ljava/lang/Throwable;)Lnet/minecraft/CrashReport; constructOrExtractCrashReport a method_40376 + p 0 cause + m (Ljava/nio/file/Path;)V dumpServerProperties a method_37113 + p 1 path + m (Ljava/util/Collection;)Ljava/util/concurrent/CompletableFuture; reloadResources a method_29439 + c Replaces currently selected list of datapacks, reloads them, and sends new data to players. + p 1 selectedIds + m (Ljava/util/Collection;Ljava/lang/String;)Z method_29738 a method_29738 + m (Ljava/util/Collection;Lnet/minecraft/server/MinecraftServer$ReloadableResources;)V method_29440 a method_29440 + m (Ljava/util/concurrent/atomic/AtomicReference;)V method_29739 a method_29739 + m (Ljava/util/function/BooleanSupplier;)V tickServer a method_3748 + c Main function called by run() every loop. + p 1 hasTimeLeft + m (Ljava/util/function/Consumer;Lnet/minecraft/util/profiling/ProfileResults;)V method_37319 a method_37319 + m (Ljava/util/function/Consumer;Ljava/util/function/Consumer;)V startRecordingMetrics a method_37320 + p 1 output + p 2 onMetricsRecordingFinished + m (Ljava/util/function/Function;)Lnet/minecraft/server/MinecraftServer; spin a method_29740 + p 0 threadFunction + m (Lnet/minecraft/core/Registry;)Ljava/util/Optional; method_46842 a method_46842 + m (Lnet/minecraft/CrashReport;)V onServerCrash a method_3744 + c Called on exit from the main run() loop. + p 1 report + m (Lnet/minecraft/CrashReport;Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/world/level/chunk/storage/RegionStorageInfo;)V storeChunkIoError a method_61089 + p 1 crashReport + p 2 chunkPos + p 3 regionStorageInfo + m (Lnet/minecraft/network/chat/Component;Lnet/minecraft/network/chat/ChatType$Bound;Ljava/lang/String;)V logChatMessage a method_43614 + p 1 content + p 2 boundChatType + p 3 header + m (Z)V halt a method_3747 + c Sets the serverRunning variable to false, in order to get the server to shut down. + p 1 waitForServer + m (ZZZ)Z saveAllChunks a method_3723 + p 1 suppressLog + p 2 flush + p 3 forced + m ()I getCompressionThreshold aA method_3773 + c The compression threshold. If the packet is larger than the specified amount of bytes, it will be compressed + m ()Z enforceSecureProfile aB method_43500 + m ()J getNextTickTime aC method_3826 + m ()Lcom/mojang/datafixers/DataFixer; getFixerUpper aD method_3855 + m ()Lnet/minecraft/server/ServerAdvancementManager; getAdvancements aE method_3851 + m ()Lnet/minecraft/server/ServerFunctionManager; getFunctions aF method_3740 + m ()Lnet/minecraft/server/packs/repository/PackRepository; getPackRepository aG method_3836 + m ()Lnet/minecraft/commands/Commands; getCommands aH method_3734 + m ()Lnet/minecraft/commands/CommandSourceStack; createCommandSourceStack aI method_3739 + m ()Lnet/minecraft/world/item/crafting/RecipeManager; getRecipeManager aJ method_3772 + m ()Lnet/minecraft/server/ServerScoreboard; getScoreboard aK method_3845 + m ()Lnet/minecraft/world/level/storage/CommandStorage; getCommandStorage aL method_22827 + m ()Lnet/minecraft/world/level/GameRules; getGameRules aM method_3767 + m ()Lnet/minecraft/server/bossevents/CustomBossEvents; getCustomBossEvents aN method_3837 + m ()Z isEnforceWhitelist aO method_3729 + m ()F getCurrentSmoothedTickTime aP method_54832 + m ()Lnet/minecraft/server/ServerTickRateManager; tickRateManager aQ method_54833 + m ()J getAverageTickTimeNanos aR method_54834 + m ()[J getTickTimesNanos aS method_54835 + m ()Lnet/minecraft/util/profiling/ProfilerFiller; getProfiler aT method_16044 + m ()V endMetricsRecordingTick aU method_24490 + m ()Z isRecordingMetrics aV method_37321 + m ()V stopRecordingMetrics aW method_37322 + m ()V finishRecordingMetrics aX method_37323 + m ()V cancelRecordingMetrics aY method_42062 + m ()Z forceSynchronousWrites aZ method_27051 + m (Ljava/lang/String;)V setLocalIp a_ method_3842 + p 1 localIp + m ()Z getPreventProxyConnections aa method_3775 + m ()Z isSpawningAnimals ab method_3796 + m ()Z areNpcsEnabled ac method_3736 + m ()Z isPvpAllowed ad method_3852 + m ()Z isFlightAllowed ae method_3718 + m ()Z isStopped ag method_3750 + m ()Lnet/minecraft/server/players/PlayerList; getPlayerList ah method_3760 + m ()Lnet/minecraft/server/network/ServerConnectionListener; getConnection ai method_3787 + m ()Z isReady aj method_3820 + m ()Z hasGui ak method_3727 + m ()I getTickCount al method_3780 + m ()I getSpawnProtectionRadius am method_3841 + c Return the spawn protection area's size. + m ()Z repliesToStatus an method_27902 + m ()Z hidesOnlinePlayers ao method_39424 + m ()Ljava/net/Proxy; getProxy ap method_36113 + m ()I getPlayerIdleTimeout aq method_3862 + m ()Lcom/mojang/authlib/minecraft/MinecraftSessionService; getSessionService ar method_3844 + m ()Lnet/minecraft/util/SignatureValidator; getProfileKeySignatureValidator as method_44301 + m ()Lcom/mojang/authlib/GameProfileRepository; getProfileRepository at method_3719 + m ()Lnet/minecraft/server/players/GameProfileCache; getProfileCache au method_3793 + m ()Lnet/minecraft/network/protocol/status/ServerStatus; getStatus av method_3765 + m ()V invalidateStatus aw method_3856 + m ()I getAbsoluteMaxWorldSize ax method_3749 + m (I)I getScaledTrackingDistance b method_27903 + p 1 trackingDistance + m (Lnet/minecraft/SystemReport;)Lnet/minecraft/SystemReport; fillSystemReport b method_37324 + p 1 systemReport + m (Lnet/minecraft/server/TickTask;)V doRunTask b method_24306 + p 1 task + m (Lnet/minecraft/server/level/ServerLevel;)V synchronizeTime b method_49750 + p 1 level + m (Lnet/minecraft/server/level/ServerPlayer;)Lnet/minecraft/server/level/ServerPlayerGameMode; createGameModeForPlayer b method_32816 + p 1 player + m (Lnet/minecraft/server/level/progress/ChunkProgressListener;)V prepareLevels b method_3774 + c Loads the spawn chunks and any forced chunks + p 1 listener + m (Lcom/mojang/authlib/GameProfile;)V setSingleplayerProfile b method_43825 + p 1 singleplayerProfile + m (Ljava/lang/Runnable;)V addTickable b method_3742 + p 1 tickable + m (Ljava/lang/String;)V setId b method_17819 + p 1 serverId + m (Ljava/nio/file/Path;)V saveDebugReport b method_21613 + p 1 path + m (Ljava/util/Collection;)Lcom/google/common/collect/ImmutableList; method_29442 b method_29442 + m (Z)V setDifficultyLocked b method_19467 + p 1 locked + m (ZZZ)Z saveEverything b method_39218 + p 1 suppressLog + p 2 flush + p 3 forced + m ()Ljava/util/Optional; loadStatusIcon bD method_49384 + m ()I computeNextAutosaveInterval bE method_54837 + m ()Lnet/minecraft/network/protocol/status/ServerStatus; buildServerStatus bF method_49385 + m ()Lnet/minecraft/network/protocol/status/ServerStatus$Players; buildPlayerStatus bG method_49386 + m ()V updateMobSpawningFlags bH method_27729 + m ()V startMetricsRecordingTick bI method_24487 + m ()Ljava/lang/String; method_37325 bJ method_37325 + m ()Ljava/lang/String; method_57961 bK method_57961 + m ()Ljava/lang/String; method_41237 bL method_41237 + m ()Ljava/lang/String; method_46222 bM method_46222 + m ()Ljava/lang/String; method_59849 bN method_59849 + m ()Ljava/lang/String; method_46223 bO method_46223 + m ()Ljava/lang/String; method_37327 bP method_37327 + m ()Ljava/lang/String; method_39965 bQ method_39965 + m ()Ljava/util/Optional; method_49383 bR method_49383 + m ()Z method_5387 bS method_5387 + m ()Z method_54836 bT method_54836 + m ()Z method_40055 bU method_40055 + m ()Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplateManager; getStructureManager ba method_27727 + m ()Lnet/minecraft/world/level/storage/WorldData; getWorldData bb method_27728 + m ()Lnet/minecraft/core/RegistryAccess$Frozen; registryAccess bc method_30611 + m ()Lnet/minecraft/core/LayeredRegistryAccess; registries bd method_46221 + m ()Lnet/minecraft/server/ReloadableServerRegistries$Holder; reloadableRegistries be method_58576 + m ()Lnet/minecraft/world/level/GameType; getForcedGameType bf method_3761 + m ()Lnet/minecraft/server/packs/resources/ResourceManager; getResourceManager bg method_34864 + m ()Z isCurrentlySaving bh method_39219 + m ()Z isTimeProfilerRunning bi method_24488 + m ()V startTimeProfiler bj method_3832 + m ()Lnet/minecraft/util/profiling/ProfileResults; stopTimeProfiler bk method_24489 + m ()I getMaxChainedNeighborUpdates bl method_41239 + m ()Lnet/minecraft/network/chat/ChatDecorator; getChatDecorator bm method_43929 + m ()Z logIPs bn method_52344 + m ()Z acceptsTransfers bo method_56040 + m ()Lnet/minecraft/world/item/alchemy/PotionBrewing; potionBrewing bp method_59777 + m ()Lnet/minecraft/server/ServerLinks; serverLinks bq method_60672 + m ()V logFullTickTime br method_56603 + m ()V startMeasuringTaskExecutionTime bs method_56604 + m ()V finishMeasuringTaskExecutionTime bt method_56605 + m ()Z haveTime bu method_3866 + m ()Z pollTaskInternal bv method_20415 + m (I)V setPlayerIdleTimeout c method_3803 + p 1 idleTimeout + m (Lnet/minecraft/server/level/ServerLevel;)Ljava/lang/String; method_3733 c method_3733 + m (Lnet/minecraft/server/level/ServerPlayer;)V sendDifficultyUpdate c method_19465 + p 1 player + m (Lcom/mojang/authlib/GameProfile;)I getProfilePermissions c method_3835 + p 1 profile + m (Ljava/lang/String;)Ljava/nio/file/Path; getFile c method_3758 + p 1 path + m (Ljava/nio/file/Path;)V dumpMiscStats c method_21692 + p 1 path + m (Ljava/util/function/BooleanSupplier;)V tickChildren c method_3813 + p 1 hasTimeLeft + m (Z)V setDemo c method_3730 + c Sets whether this is a demo or not. + p 1 demo + m (Lnet/minecraft/server/level/ServerLevel;)Z method_40056 d method_40056 + m (Lnet/minecraft/server/level/ServerPlayer;)V method_53501 d method_53501 + m (Ljava/lang/String;)V setMotd d method_3834 + p 1 motd + m (Ljava/nio/file/Path;)V dumpGameRules d method_21615 + p 1 path + m (Ljava/util/function/BooleanSupplier;)Z method_60583 d method_60583 + m (Z)V setUsesAuthentication d method_3864 + p 1 online + m ()Z initServer e method_3823 + c Initialises the server and starts it. + m (Ljava/nio/file/Path;)V dumpClasspath e method_21616 + p 1 path + m (Z)V setPreventProxyConnections e method_3764 + p 1 preventProxyConnections + m ()Lnet/minecraft/util/debugchart/SampleLogger; getTickTimeLogger f method_56593 + m (Ljava/nio/file/Path;)V dumpThreads f method_21713 + p 1 path + m (Z)V setPvpAllowed f method_3815 + p 1 allowPvp + m ()Z isTickTimeLoggingEnabled g method_56626 + m (Ljava/nio/file/Path;)V dumpNativeModules g method_38584 + p 1 path + m (Z)V setFlightAllowed g method_3745 + p 1 allow + m (Ljava/nio/file/Path;)V method_37370 h method_37370 + m (Z)V setEnforceWhitelist h method_3731 + p 1 whitelistEnabled + m ()V onServerExit i method_3821 + c Directly calls System.exit(0), instantly killing the program. + m (Ljava/nio/file/Path;)V method_37328 i method_37328 + m ()Z isHardcore j method_3754 + c Defaults to false. + m (Ljava/nio/file/Path;)Ljava/util/Optional; method_49387 j method_49387 + m ()I getOperatorUserPermissionLevel k method_3798 + m (Ljava/nio/file/Path;)Z method_49388 k method_49388 + m ()I getFunctionCompilationLevel l method_21714 + m (Ljava/nio/file/Path;)Z method_49389 l method_49389 + m ()Z shouldRconBroadcast m method_3732 + m (Ljava/nio/file/Path;)V method_37329 m method_37329 + m ()Z isDedicatedServer n method_3816 + m ()I getRateLimitPacketsPerSecond o method_30612 + m ()Z isEpollEnabled p method_3759 + c Get if native transport should be used. Native transport means linux server performance improvements and optimized packet sending/receiving on linux + m ()Z isCommandBlockEnabled q method_3812 + c Return whether command blocks are enabled. + m ()Z isPublished r method_3860 + c Returns {@code true} if this integrated server is open to LAN + m ()V forceDifficulty t method_27731 + m ()V loadLevel t_ method_3735 + m ()Lnet/minecraft/world/level/GameType; getDefaultGameType u_ method_3790 + m ()V stopServer v method_3782 + c Saves all necessary data as preparation for stopping the server. + m ()V waitUntilNextTick v_ method_16208 + c Runs all pending tasks and waits for more tasks until serverTime is reached. + m ()Ljava/lang/String; getLocalIp w method_3819 + c "getHostname" is already taken, but both return the hostname. + m ()Z isRunning x method_3806 + m ()V runServer y method_29741 + m ()Z throwIfFatalException z method_60584 + m (Ljava/lang/Thread;Lnet/minecraft/world/level/storage/LevelStorageSource$LevelStorageAccess;Lnet/minecraft/server/packs/repository/PackRepository;Lnet/minecraft/server/WorldStem;Ljava/net/Proxy;Lcom/mojang/datafixers/DataFixer;Lnet/minecraft/server/Services;Lnet/minecraft/server/level/progress/ChunkProgressListenerFactory;)V + p 1 serverThread + p 2 storageSource + p 3 packRepository + p 4 worldStem + p 5 proxy + p 6 fixerUpper + p 7 services + p 8 progressListenerFactory + m ()V +c net/minecraft/server/MinecraftServer$1 net/minecraft/server/MinecraftServer$1 net/minecraft/server/MinecraftServer$1 + f Ljava/util/List; val$entries a field_34851 + f Lnet/minecraft/world/level/GameRules; val$gameRules b field_34852 + m (Lnet/minecraft/server/MinecraftServer;Ljava/util/List;Lnet/minecraft/world/level/GameRules;)V +c net/minecraft/server/MinecraftServer$ReloadableResources net/minecraft/server/MinecraftServer$a net/minecraft/server/MinecraftServer$class_6897 + f Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_352 + f Lnet/minecraft/server/ReloadableServerResources; managers b comp_353 + m ()Lnet/minecraft/server/packs/resources/CloseableResourceManager; resourceManager a comp_352 + m ()Lnet/minecraft/server/ReloadableServerResources; managers b comp_353 + m (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;)V +c net/minecraft/server/MinecraftServer$ServerResourcePackInfo net/minecraft/server/MinecraftServer$b net/minecraft/server/MinecraftServer$class_7460 + f Ljava/util/UUID; id a comp_2156 + f Ljava/lang/String; url b comp_784 + f Ljava/lang/String; hash c comp_785 + f Z isRequired d comp_786 + f Lnet/minecraft/network/chat/Component; prompt e comp_787 + m ()Ljava/util/UUID; id a comp_2156 + m ()Ljava/lang/String; url b comp_784 + m ()Ljava/lang/String; hash c comp_785 + m ()Z isRequired d comp_786 + m ()Lnet/minecraft/network/chat/Component; prompt e comp_787 + m (Ljava/util/UUID;Ljava/lang/String;Ljava/lang/String;ZLnet/minecraft/network/chat/Component;)V +c net/minecraft/server/MinecraftServer$TimeProfiler net/minecraft/server/MinecraftServer$c net/minecraft/server/MinecraftServer$class_6414 + f J startNanos a field_33980 + f I startTick b field_33981 + m (JI)Lnet/minecraft/util/profiling/ProfileResults; stop a method_37330 + p 1 endTimeNano + p 3 endTimeTicks + m (JI)V + p 1 startNanos + p 3 startTick +c net/minecraft/server/MinecraftServer$TimeProfiler$1 net/minecraft/server/MinecraftServer$c$1 net/minecraft/server/MinecraftServer$class_6414$1 + f J val$stopNanos a field_39215 + f I val$stopTick b field_39216 + f Lnet/minecraft/server/MinecraftServer$TimeProfiler; field_39217 c field_39217 + m (Lnet/minecraft/server/MinecraftServer$TimeProfiler;JI)V +c com/mojang/blaze3d/systems/RenderSystem$1 com/mojang/blaze3d/systems/RenderSystem$1 com/mojang/blaze3d/systems/RenderSystem$1 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$Mode a field_38976 + f [I $SwitchMap$com$mojang$blaze3d$vertex$VertexFormat$IndexType b field_27331 + m ()V +c com/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer com/mojang/blaze3d/systems/RenderSystem$a com/mojang/blaze3d/systems/RenderSystem$class_5590 + f I vertexStride a field_27332 + f I indexStride b field_27333 + f Lcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator; generator c field_27334 + f I name d field_27335 + f Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; type e field_27336 + f I indexCount f field_27337 + m ()Lcom/mojang/blaze3d/vertex/VertexFormat$IndexType; type a method_31924 + m (I)Z hasStorage a method_43409 + p 1 index + m (Ljava/nio/ByteBuffer;)Lit/unimi/dsi/fastutil/ints/IntConsumer; intConsumer a method_31922 + p 1 buffer + m (Ljava/nio/ByteBuffer;I)V method_31923 a method_31923 + m (I)V bind b method_43410 + p 1 index + m (I)V ensureStorage c method_31920 + p 1 neededIndexCount + m (IILcom/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator;)V + p 1 vertexStride + p 2 indexStride + p 3 generator +c com/mojang/blaze3d/systems/RenderSystem$AutoStorageIndexBuffer$IndexGenerator com/mojang/blaze3d/systems/RenderSystem$a$a com/mojang/blaze3d/systems/RenderSystem$class_5590$class_5591 +c net/minecraft/client/ClientBrandRetriever net/minecraft/client/ClientBrandRetriever net/minecraft/client/ClientBrandRetriever + f Ljava/lang/String; VANILLA_NAME a field_33204 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$BlendState com/mojang/blaze3d/platform/GlStateManager$a com/mojang/blaze3d/platform/GlStateManager$class_1017 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_5045 + f I srcRgb b field_5049 + f I dstRgb c field_5048 + f I srcAlpha d field_5047 + f I dstAlpha e field_5046 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$BooleanState com/mojang/blaze3d/platform/GlStateManager$b com/mojang/blaze3d/platform/GlStateManager$class_1018 + f I state a field_5050 + f Z enabled b field_5051 + m ()V disable a method_4469 + m (Z)V setEnabled a method_4470 + p 1 enabled + m ()V enable b method_4471 + m (I)V + p 1 state +c com/mojang/blaze3d/platform/GlStateManager$ColorLogicState com/mojang/blaze3d/platform/GlStateManager$c com/mojang/blaze3d/platform/GlStateManager$class_1021 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; enable a field_5058 + f I op b field_5059 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$ColorMask com/mojang/blaze3d/platform/GlStateManager$d com/mojang/blaze3d/platform/GlStateManager$class_1022 + f Z red a field_5063 + f Z green b field_5062 + f Z blue c field_5061 + f Z alpha d field_5060 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$CullState com/mojang/blaze3d/platform/GlStateManager$e com/mojang/blaze3d/platform/GlStateManager$class_1025 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; enable a field_5072 + f I mode b field_5073 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$DepthState com/mojang/blaze3d/platform/GlStateManager$f com/mojang/blaze3d/platform/GlStateManager$class_1026 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_5074 + f Z mask b field_5076 + f I func c field_5075 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$LogicOp com/mojang/blaze3d/platform/GlStateManager$g com/mojang/blaze3d/platform/GlStateManager$class_1030 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND a field_5120 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND_INVERTED b field_5112 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; AND_REVERSE c field_5117 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; CLEAR d field_5103 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; COPY e field_5118 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; COPY_INVERTED f field_5113 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; EQUIV g field_5119 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; INVERT h field_5109 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NAND i field_5114 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NOOP j field_5115 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; NOR k field_5104 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR l field_5105 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR_INVERTED m field_5116 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; OR_REVERSE n field_5110 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; SET o field_5107 + f Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; XOR p field_5111 + f I value q field_5108 + f [Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; $VALUES r field_5106 + m ()[Lcom/mojang/blaze3d/platform/GlStateManager$LogicOp; $values a method_36748 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c com/mojang/blaze3d/platform/GlStateManager$PolygonOffsetState com/mojang/blaze3d/platform/GlStateManager$h com/mojang/blaze3d/platform/GlStateManager$class_1031 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; fill a field_5123 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; line b field_5121 + f F factor c field_5124 + f F units d field_5122 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$ScissorState com/mojang/blaze3d/platform/GlStateManager$i com/mojang/blaze3d/platform/GlStateManager$class_5518 + f Lcom/mojang/blaze3d/platform/GlStateManager$BooleanState; mode a field_26840 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$StencilFunc com/mojang/blaze3d/platform/GlStateManager$j com/mojang/blaze3d/platform/GlStateManager$class_1034 + f I func a field_5148 + f I ref b field_16203 + f I mask c field_5147 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$StencilState com/mojang/blaze3d/platform/GlStateManager$k com/mojang/blaze3d/platform/GlStateManager$class_1035 + f Lcom/mojang/blaze3d/platform/GlStateManager$StencilFunc; func a field_5149 + f I mask b field_5153 + f I fail c field_5152 + f I zfail d field_5151 + f I zpass e field_5150 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$TextureState com/mojang/blaze3d/platform/GlStateManager$l com/mojang/blaze3d/platform/GlStateManager$class_1039 + f I binding a field_5167 + m ()V +c com/mojang/blaze3d/platform/GlStateManager$Viewport com/mojang/blaze3d/platform/GlStateManager$m com/mojang/blaze3d/platform/GlStateManager$class_1040 + f Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; INSTANCE a field_5169 + f I x b field_5172 + f I y c field_5171 + f I width d field_5170 + f I height e field_5168 + f [Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; $VALUES f field_5173 + m ()I x a method_35330 + m ()I y b method_35331 + m ()I width c method_35332 + m ()I height d method_35333 + m ()[Lcom/mojang/blaze3d/platform/GlStateManager$Viewport; $values e method_36749 + m (Ljava/lang/String;I)V + m ()V +c com/mojang/blaze3d/platform/GlStateManager$DestFactor com/mojang/blaze3d/platform/GlStateManager$DestFactor com/mojang/blaze3d/platform/GlStateManager$class_4534 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c com/mojang/blaze3d/platform/GlStateManager$SourceFactor com/mojang/blaze3d/platform/GlStateManager$SourceFactor com/mojang/blaze3d/platform/GlStateManager$class_4535 + m (Ljava/lang/String;II)V + p 3 value + m ()V +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$Fields net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$a net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6778 + f Ljava/lang/String; REMOTE_ADDRESS a field_35642 + f Ljava/lang/String; SENT_BYTES b field_35643 + f Ljava/lang/String; RECEIVED_BYTES c field_35644 + f Ljava/lang/String; SENT_PACKETS d field_35645 + f Ljava/lang/String; RECEIVED_PACKETS e field_35646 + m ()V +c net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$SumAggregation net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$b net/minecraft/util/profiling/jfr/event/NetworkSummaryEvent$class_6779 + f Ljava/util/concurrent/atomic/AtomicLong; sentBytes a field_35647 + f Ljava/util/concurrent/atomic/AtomicInteger; sentPackets b field_35648 + f Ljava/util/concurrent/atomic/AtomicLong; receivedBytes c field_35649 + f Ljava/util/concurrent/atomic/AtomicInteger; receivedPackets d field_35650 + f Lnet/minecraft/util/profiling/jfr/event/NetworkSummaryEvent; event e field_35651 + m ()V commitEvent a method_39494 + m (I)V trackSentPacket a method_39495 + p 1 delta + m (I)V trackReceivedPacket b method_39496 + p 1 delta + m (Ljava/lang/String;)V + p 1 remoteAddress +c net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$Fields net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$a net/minecraft/util/profiling/jfr/event/ServerTickTimeEvent$class_6601 + f Ljava/lang/String; AVERAGE_TICK_DURATION a field_34854 + m ()V +c net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$Fields net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$a net/minecraft/util/profiling/jfr/event/ChunkGenerationEvent$class_6602 + f Ljava/lang/String; WORLD_POS_X a field_34855 + f Ljava/lang/String; WORLD_POS_Z b field_34856 + f Ljava/lang/String; CHUNK_POS_X c field_34857 + f Ljava/lang/String; CHUNK_POS_Z d field_34858 + f Ljava/lang/String; STATUS e field_34859 + f Ljava/lang/String; LEVEL f field_34861 + m ()V diff --git a/fabric/build.gradle b/fabric/build.gradle new file mode 100644 index 0000000..6a0d026 --- /dev/null +++ b/fabric/build.gradle @@ -0,0 +1,72 @@ +plugins { + id 'me.modmuss50.mod-publish-plugin' + id 'net.fabricmc.fabric-loom-remap' + id 'multiloader-loader' +} + +dependencies { + minecraft "com.mojang:minecraft:${minecraft_version}" + mappings loom.layered { + officialMojangMappings() + parchment("org.parchmentmc.data:parchment-${parchment_minecraft}:${parchment_version}@zip") + } + + modImplementation "net.fabricmc:fabric-loader:${fabric_loader_version}" + modImplementation fabricApi.module("fabric-command-api-v2", project.fabric_version) + modImplementation fabricApi.module("fabric-lifecycle-events-v1", project.fabric_version) + modImplementation fabricApi.module("fabric-resource-loader-v0", project.fabric_version) + modImplementation fabricApi.module("fabric-convention-tags-v2", project.fabric_version) + + include(implementation("org.apache.maven:maven-artifact:3.8.5")) + + include(modApi("dev.ryanhcode.sable-companion:sable-companion-fabric-$minecraft_version:$sable_companion_version")) + + modCompileOnly "maven.modrinth:sodium:$rootProject.sodium_version" + modCompileOnly "maven.modrinth:distanthorizons:$rootProject.distant_horizons_version" + modCompileOnly "maven.modrinth:sodium-extras:fabric-${minecraft_version}-$sodiumextras_version" + modLocalRuntime "maven.modrinth:sodium:$rootProject.sodium_version" + modLocalRuntime "maven.modrinth:distanthorizons:$rootProject.distant_horizons_version" + modLocalRuntime "maven.modrinth:sodium-extras:fabric-${minecraft_version}-$sodiumextras_version" + + include(modApi("foundry.veil:veil-fabric-${project.minecraft_version}:${project.veil_version}")) + modCompileOnly("foundry.imguimc:imguimc-fabric-${project.minecraft_version}:${project.imguimc_version}") + + include(modApi("fuzs.forgeconfigapiport:forgeconfigapiport-fabric:${forgeconfigapiport_version}")) //source: https://github.com/Fuzss/forgeconfigapiport-fabric +} + +loom { + def aw = project(":common").file("src/main/resources/${mod_id}.accesswidener") + if (aw.exists()) { + accessWidenerPath.set(aw) + } + runs { + def client = client { + client() + setConfigName("Fabric Client") + ideConfigGenerated(true) + runDir("runs/client") + } + def server = server { + server() + setConfigName("Fabric Server") + ideConfigGenerated(true) + runDir("runs/server") + } + + clientMixinExport { + inherit(client) + setConfigName(configName + " | Mixin Export") + vmArg("-Dmixin.debug.export=true") + } + serverMixinExport { + inherit(server) + setConfigName(configName + " | Mixin Export") + vmArg("-Dmixin.debug.export=true") + } + } +} + +repositories { + mavenLocal() + maven { url = "https://maven.quiltmc.org/repository/release" } +} diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/Sable.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/Sable.class new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/Sable.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClient.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClient.class new file mode 100644 index 0000000..c666468 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClient.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class new file mode 100644 index 0000000..89b8a65 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class new file mode 100644 index 0000000..c0e73eb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class new file mode 100644 index 0000000..1026631 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class new file mode 100644 index 0000000..aae566b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class new file mode 100644 index 0000000..c9ed17b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class new file mode 100644 index 0000000..af4022d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class new file mode 100644 index 0000000..733d33c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class new file mode 100644 index 0000000..610565f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class new file mode 100644 index 0000000..3464c21 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class new file mode 100644 index 0000000..39e9670 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class new file mode 100644 index 0000000..525fb26 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class new file mode 100644 index 0000000..5d66be0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class new file mode 100644 index 0000000..434344e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class new file mode 100644 index 0000000..1fc791c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class new file mode 100644 index 0000000..0c9d71d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class new file mode 100644 index 0000000..079f351 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class new file mode 100644 index 0000000..e6138d2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class new file mode 100644 index 0000000..10d2d8c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class new file mode 100644 index 0000000..51c0bfd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class new file mode 100644 index 0000000..08fd351 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class new file mode 100644 index 0000000..423b5c0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class new file mode 100644 index 0000000..8a0954a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class new file mode 100644 index 0000000..8771605 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class new file mode 100644 index 0000000..fd0a104 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class new file mode 100644 index 0000000..bce5725 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class new file mode 100644 index 0000000..2183483 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class new file mode 100644 index 0000000..2aec611 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class new file mode 100644 index 0000000..74ad06a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class new file mode 100644 index 0000000..42b9c14 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class new file mode 100644 index 0000000..5d54876 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class new file mode 100644 index 0000000..f305911 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class new file mode 100644 index 0000000..809312a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class new file mode 100644 index 0000000..198224c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class new file mode 100644 index 0000000..190dff9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class new file mode 100644 index 0000000..fbcbb69 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class new file mode 100644 index 0000000..58bb168 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class new file mode 100644 index 0000000..3b19972 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class new file mode 100644 index 0000000..4d52ba9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class new file mode 100644 index 0000000..5455a00 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class new file mode 100644 index 0000000..23e9c30 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.class new file mode 100644 index 0000000..602920c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/SableFabric.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/SableFabric.class new file mode 100644 index 0000000..c74cd9a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/SableFabric.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient$1.class new file mode 100644 index 0000000..14828ce Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient.class new file mode 100644 index 0000000..4de8256 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/client/SableFabricClient.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.class new file mode 100644 index 0000000..4b67806 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.class new file mode 100644 index 0000000..19d6290 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.class new file mode 100644 index 0000000..d0311f2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.class new file mode 100644 index 0000000..3e8389f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.class new file mode 100644 index 0000000..7a11f81 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.class new file mode 100644 index 0000000..a792a69 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.class new file mode 100644 index 0000000..128c930 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.class new file mode 100644 index 0000000..afc3c68 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.class new file mode 100644 index 0000000..73a84dd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class new file mode 100644 index 0000000..0b4da1d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.class new file mode 100644 index 0000000..a4e8479 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.class new file mode 100644 index 0000000..40f6084 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.class new file mode 100644 index 0000000..370e965 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.class new file mode 100644 index 0000000..131c9a8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.class new file mode 100644 index 0000000..a2048a8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.class new file mode 100644 index 0000000..8544d48 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.class new file mode 100644 index 0000000..29d44d0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.class new file mode 100644 index 0000000..961f604 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.class new file mode 100644 index 0000000..163a904 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.class new file mode 100644 index 0000000..a082711 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.class new file mode 100644 index 0000000..564da75 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class new file mode 100644 index 0000000..5eede4b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class new file mode 100644 index 0000000..c258c3d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class new file mode 100644 index 0000000..67dcfac Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class new file mode 100644 index 0000000..823d3b3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class new file mode 100644 index 0000000..7ef868b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class new file mode 100644 index 0000000..8ced17b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class new file mode 100644 index 0000000..61138b0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class new file mode 100644 index 0000000..16c06b8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class new file mode 100644 index 0000000..051093c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class new file mode 100644 index 0000000..20de185 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class new file mode 100644 index 0000000..e191a06 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class new file mode 100644 index 0000000..6e3eb14 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class new file mode 100644 index 0000000..d4c7c8c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class new file mode 100644 index 0000000..305bf51 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class new file mode 100644 index 0000000..cd7230f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class new file mode 100644 index 0000000..74363a0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class new file mode 100644 index 0000000..7d775de Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class new file mode 100644 index 0000000..8e21133 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class new file mode 100644 index 0000000..17ecb7f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class new file mode 100644 index 0000000..431bab0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class new file mode 100644 index 0000000..f7a69e9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class new file mode 100644 index 0000000..68138eb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class new file mode 100644 index 0000000..766c813 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class new file mode 100644 index 0000000..abdac57 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class new file mode 100644 index 0000000..539603e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..628beff Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class new file mode 100644 index 0000000..6d632ab Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..c2813a6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class new file mode 100644 index 0000000..a36e468 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class new file mode 100644 index 0000000..312294b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class new file mode 100644 index 0000000..cbacd2c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class new file mode 100644 index 0000000..909752d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class new file mode 100644 index 0000000..c471d1d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class new file mode 100644 index 0000000..a6c95c5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class new file mode 100644 index 0000000..b32c2f4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class new file mode 100644 index 0000000..8772a57 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class new file mode 100644 index 0000000..7d6062c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class new file mode 100644 index 0000000..cebd1f9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class new file mode 100644 index 0000000..0d85b7b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class new file mode 100644 index 0000000..78518da Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class new file mode 100644 index 0000000..535056a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class new file mode 100644 index 0000000..55d95e2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class new file mode 100644 index 0000000..3b188b7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class new file mode 100644 index 0000000..84c41b1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class new file mode 100644 index 0000000..688d3c1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class new file mode 100644 index 0000000..81657ad Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class new file mode 100644 index 0000000..f4af1c5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class new file mode 100644 index 0000000..a09ae3e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class new file mode 100644 index 0000000..cc00b9e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class new file mode 100644 index 0000000..509cbaa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class new file mode 100644 index 0000000..33c3a8b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class new file mode 100644 index 0000000..bf9116a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class new file mode 100644 index 0000000..95c9d01 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class new file mode 100644 index 0000000..32d4f9a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class new file mode 100644 index 0000000..88c2183 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..20c380a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..066f4d5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class new file mode 100644 index 0000000..262c341 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class new file mode 100644 index 0000000..e8c3768 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class new file mode 100644 index 0000000..51bae22 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class new file mode 100644 index 0000000..6034a80 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class new file mode 100644 index 0000000..e2ae5a9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class new file mode 100644 index 0000000..920550e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class new file mode 100644 index 0000000..394c68d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class new file mode 100644 index 0000000..fe54551 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class new file mode 100644 index 0000000..37db6d2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class new file mode 100644 index 0000000..d06fd51 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class new file mode 100644 index 0000000..a24bb03 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class new file mode 100644 index 0000000..83ef171 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class new file mode 100644 index 0000000..408d1e8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class new file mode 100644 index 0000000..76cd830 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class new file mode 100644 index 0000000..6b05ccd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class new file mode 100644 index 0000000..92ca85e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class new file mode 100644 index 0000000..1331e88 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class new file mode 100644 index 0000000..4cac8e2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class new file mode 100644 index 0000000..090e843 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class new file mode 100644 index 0000000..54676b9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class new file mode 100644 index 0000000..c8fff11 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class new file mode 100644 index 0000000..2b7041e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class new file mode 100644 index 0000000..9085f85 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class new file mode 100644 index 0000000..d1bd1cc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class new file mode 100644 index 0000000..6e19d5f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class new file mode 100644 index 0000000..ba06ff1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class new file mode 100644 index 0000000..de6dba5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class new file mode 100644 index 0000000..5ac31ca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class new file mode 100644 index 0000000..afc93f1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class new file mode 100644 index 0000000..ce58101 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class new file mode 100644 index 0000000..405e874 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class new file mode 100644 index 0000000..02318c4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class new file mode 100644 index 0000000..66c5ebe Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class new file mode 100644 index 0000000..5e5d783 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class new file mode 100644 index 0000000..11f86ca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class new file mode 100644 index 0000000..2b12481 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class new file mode 100644 index 0000000..2c3f203 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class new file mode 100644 index 0000000..9bfd627 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class new file mode 100644 index 0000000..5fd8f9e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class new file mode 100644 index 0000000..87393f4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class new file mode 100644 index 0000000..11cde9a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class new file mode 100644 index 0000000..eff0ad6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class new file mode 100644 index 0000000..75e676c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class new file mode 100644 index 0000000..b65537b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class new file mode 100644 index 0000000..74d0967 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class new file mode 100644 index 0000000..459d881 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class new file mode 100644 index 0000000..14015f7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class new file mode 100644 index 0000000..520b615 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class new file mode 100644 index 0000000..a874594 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class new file mode 100644 index 0000000..14e54bd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class new file mode 100644 index 0000000..0edffaf Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class new file mode 100644 index 0000000..a554055 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class new file mode 100644 index 0000000..9bd51e3 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class new file mode 100644 index 0000000..5cab9e8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class new file mode 100644 index 0000000..31a08cd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class new file mode 100644 index 0000000..e3fd49f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class new file mode 100644 index 0000000..400ca4f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class new file mode 100644 index 0000000..5fc6f2e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class new file mode 100644 index 0000000..85c89f5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class new file mode 100644 index 0000000..fb8a141 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class new file mode 100644 index 0000000..2a00017 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class new file mode 100644 index 0000000..5cfd483 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class new file mode 100644 index 0000000..ec87fd9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class new file mode 100644 index 0000000..bb940e6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class new file mode 100644 index 0000000..1b09755 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class new file mode 100644 index 0000000..868fab1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class new file mode 100644 index 0000000..733e8f9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class new file mode 100644 index 0000000..47b40e1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class new file mode 100644 index 0000000..d973816 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class new file mode 100644 index 0000000..d834279 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class new file mode 100644 index 0000000..1ceff3c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class new file mode 100644 index 0000000..7ca0481 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class new file mode 100644 index 0000000..1bce084 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class new file mode 100644 index 0000000..5ddaa5a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class new file mode 100644 index 0000000..0eb24df Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class new file mode 100644 index 0000000..43f455b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class new file mode 100644 index 0000000..10a4b5f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class new file mode 100644 index 0000000..304a6d0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class new file mode 100644 index 0000000..3c4388d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class new file mode 100644 index 0000000..7a61ffc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class new file mode 100644 index 0000000..1ef4e64 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class new file mode 100644 index 0000000..67de96e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class new file mode 100644 index 0000000..fd7340d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class new file mode 100644 index 0000000..bd39b56 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class new file mode 100644 index 0000000..bd5c0b9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class new file mode 100644 index 0000000..632880e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class new file mode 100644 index 0000000..d9f493d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class new file mode 100644 index 0000000..cfed937 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class new file mode 100644 index 0000000..25fe482 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class new file mode 100644 index 0000000..a69da22 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class new file mode 100644 index 0000000..63104bb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class new file mode 100644 index 0000000..2e29cfa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class new file mode 100644 index 0000000..103f9c0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class new file mode 100644 index 0000000..6504207 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class new file mode 100644 index 0000000..bf9dde7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class new file mode 100644 index 0000000..f58a67e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class new file mode 100644 index 0000000..0ffdef2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class new file mode 100644 index 0000000..74d1e11 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class new file mode 100644 index 0000000..a86d790 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class new file mode 100644 index 0000000..fbdaafe Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class new file mode 100644 index 0000000..2a0dfa7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class new file mode 100644 index 0000000..44816f6 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class new file mode 100644 index 0000000..6da544f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class new file mode 100644 index 0000000..210fbc8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class new file mode 100644 index 0000000..9c5f1d2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class new file mode 100644 index 0000000..475d584 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class new file mode 100644 index 0000000..ae5fb75 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class new file mode 100644 index 0000000..e39006f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class new file mode 100644 index 0000000..6b03900 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class new file mode 100644 index 0000000..392731b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class new file mode 100644 index 0000000..8a68f11 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class new file mode 100644 index 0000000..4595c49 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class new file mode 100644 index 0000000..cd7f3a8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class new file mode 100644 index 0000000..9843ce5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class new file mode 100644 index 0000000..51d80a0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class new file mode 100644 index 0000000..e667cca Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class new file mode 100644 index 0000000..3c8a374 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class new file mode 100644 index 0000000..74cbc4c Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class new file mode 100644 index 0000000..360b03f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class new file mode 100644 index 0000000..753f554 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class new file mode 100644 index 0000000..67629db Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class new file mode 100644 index 0000000..de6168d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class new file mode 100644 index 0000000..73989be Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class new file mode 100644 index 0000000..971aa0e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class new file mode 100644 index 0000000..eb827a9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class new file mode 100644 index 0000000..1e6cd2f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class new file mode 100644 index 0000000..14a3c70 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class new file mode 100644 index 0000000..b62bea4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class new file mode 100644 index 0000000..71ed48b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class new file mode 100644 index 0000000..4bf05c8 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class new file mode 100644 index 0000000..345b09d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class new file mode 100644 index 0000000..d23c1f2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class new file mode 100644 index 0000000..08861aa Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class new file mode 100644 index 0000000..de79875 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class new file mode 100644 index 0000000..5e23b7d Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class new file mode 100644 index 0000000..7514c92 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class new file mode 100644 index 0000000..535c57f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class new file mode 100644 index 0000000..cd62410 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class new file mode 100644 index 0000000..5a8a580 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class new file mode 100644 index 0000000..267decd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class new file mode 100644 index 0000000..c2abb1b Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class new file mode 100644 index 0000000..5903e99 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class new file mode 100644 index 0000000..539578a Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class new file mode 100644 index 0000000..8f7f30e Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class new file mode 100644 index 0000000..22a8134 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class new file mode 100644 index 0000000..fad2235 Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class differ diff --git a/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class new file mode 100644 index 0000000..337387f Binary files /dev/null and b/fabric/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class differ diff --git a/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-dev.jar b/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-dev.jar new file mode 100644 index 0000000..d65c8eb Binary files /dev/null and b/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-dev.jar differ diff --git a/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-sources.jar b/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-sources.jar new file mode 100644 index 0000000..6e0b104 Binary files /dev/null and b/fabric/build/devlibs/sable-fabric-1.21.1-1.2.2-sources.jar differ diff --git a/fabric/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h b/fabric/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h new file mode 100644 index 0000000..76465da --- /dev/null +++ b/fabric/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/fabric/build/libs/sable-fabric-1.21.1-1.2.2-sources.jar b/fabric/build/libs/sable-fabric-1.21.1-1.2.2-sources.jar new file mode 100644 index 0000000..1ac89de Binary files /dev/null and b/fabric/build/libs/sable-fabric-1.21.1-1.2.2-sources.jar differ diff --git a/fabric/build/libs/sable-fabric-1.21.1-1.2.2.jar b/fabric/build/libs/sable-fabric-1.21.1-1.2.2.jar new file mode 100644 index 0000000..1b9be8b Binary files /dev/null and b/fabric/build/libs/sable-fabric-1.21.1-1.2.2.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0-sources.jar new file mode 100644 index 0000000..490c639 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0.jar b/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0.jar new file mode 100644 index 0000000..dc86ba9 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.dev.ryanhcode.sable-companion-sable-companion-fabric-1.21.1-7bb92b76-1.6.0.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0-sources.jar new file mode 100644 index 0000000..4bdf12a Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0.jar b/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0.jar new file mode 100644 index 0000000..e2e7380 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.foundry.imguimc-imguimc-fabric-1.21.1-7bb92b76-1.1.0.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0-sources.jar new file mode 100644 index 0000000..a0ca7d0 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0.jar b/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0.jar new file mode 100644 index 0000000..7bc55ca Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.foundry.veil-veil-fabric-1.21.1-7bb92b76-4.0.0.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3-sources.jar new file mode 100644 index 0000000..b8b4ca5 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3.jar b/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3.jar new file mode 100644 index 0000000..f26a44d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.fuzs.forgeconfigapiport-forgeconfigapiport-fabric-7bb92b76-21.1.3.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-distanthorizons-7bb92b76-2.2.1-a-1.21.1.jar b/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-distanthorizons-7bb92b76-2.2.1-a-1.21.1.jar new file mode 100644 index 0000000..5be0ec3 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-distanthorizons-7bb92b76-2.2.1-a-1.21.1.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-sodium-extras-7bb92b76-fabric-1.21.1-1.0.8.jar b/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-sodium-extras-7bb92b76-fabric-1.21.1-1.0.8.jar new file mode 100644 index 0000000..f66629d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.maven.modrinth-sodium-extras-7bb92b76-fabric-1.21.1-1.0.8.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1-sources.jar new file mode 100644 index 0000000..661bab8 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1.jar new file mode 100644 index 0000000..e948b1f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-7bb92b76-0.102.0+1.21.1.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19-sources.jar new file mode 100644 index 0000000..5bf9ed2 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19.jar new file mode 100644 index 0000000..9571bcf Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c19.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a-sources.jar new file mode 100644 index 0000000..b82fe3b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a.jar new file mode 100644 index 0000000..550558b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-base-7bb92b76-0.4.42+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a-sources.jar new file mode 100644 index 0000000..2fced1f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a.jar new file mode 100644 index 0000000..b13000b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-api-lookup-api-v1-7bb92b76-1.6.68+b55973446a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a-sources.jar new file mode 100644 index 0000000..e1af26b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a.jar new file mode 100644 index 0000000..8c6e143 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-biome-api-v1-7bb92b76-13.0.29+5bd9f1bc6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a-sources.jar new file mode 100644 index 0000000..e113b15 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a.jar new file mode 100644 index 0000000..a7850af Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-api-v1-7bb92b76-1.0.22+0af3f5a76a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a-sources.jar new file mode 100644 index 0000000..7dd8286 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a.jar new file mode 100644 index 0000000..d02ad09 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-block-view-api-v2-7bb92b76-1.0.10+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a-sources.jar new file mode 100644 index 0000000..b148898 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a.jar new file mode 100644 index 0000000..3780f15 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-blockrenderlayer-v1-7bb92b76-1.1.52+0af3f5a76a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a-sources.jar new file mode 100644 index 0000000..e88ed42 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a.jar new file mode 100644 index 0000000..cd43e49 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-client-tags-api-v1-7bb92b76-1.1.15+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a-sources.jar new file mode 100644 index 0000000..dd7d164 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a.jar new file mode 100644 index 0000000..2403a6f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v1-7bb92b76-1.2.49+f71b366f6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919-sources.jar new file mode 100644 index 0000000..e72b493 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919.jar new file mode 100644 index 0000000..8b94eda Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd919.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a-sources.jar new file mode 100644 index 0000000..53e1200 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a.jar new file mode 100644 index 0000000..7a16f9b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-command-api-v2-7bb92b76-2.2.28+6ced4dd96a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a-sources.jar new file mode 100644 index 0000000..4ea0f1e Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a.jar new file mode 100644 index 0000000..7fce1cf Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-commands-v0-7bb92b76-0.2.66+df3654b36a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a-sources.jar new file mode 100644 index 0000000..22122d7 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a.jar new file mode 100644 index 0000000..f2b9d8a Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-content-registries-v0-7bb92b76-8.0.16+b55973446a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a-sources.jar new file mode 100644 index 0000000..5ed6c75 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a.jar new file mode 100644 index 0000000..0976879 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v1-7bb92b76-2.0.19+7f945d5b6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a-sources.jar new file mode 100644 index 0000000..d2750f3 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a.jar new file mode 100644 index 0000000..7c4089a Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.5.0+c5e2b5c66a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419-sources.jar new file mode 100644 index 0000000..2ea6c84 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419.jar new file mode 100644 index 0000000..b072a30 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-convention-tags-v2-7bb92b76-2.9.2+e60e56d419.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a-sources.jar new file mode 100644 index 0000000..dafd00f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a.jar new file mode 100644 index 0000000..3623f4c Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-crash-report-info-v1-7bb92b76-0.2.29+0af3f5a76a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a-sources.jar new file mode 100644 index 0000000..a582e4a Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a.jar new file mode 100644 index 0000000..8a17c7e Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-attachment-api-v1-7bb92b76-1.1.27+1daea2156a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a-sources.jar new file mode 100644 index 0000000..491aff5 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a.jar new file mode 100644 index 0000000..d0e4495 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-data-generation-api-v1-7bb92b76-20.2.16+16c4ae256a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a-sources.jar new file mode 100644 index 0000000..1aacc65 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a.jar new file mode 100644 index 0000000..7fc6c45 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-dimensions-v1-7bb92b76-4.0.0+6fc22b996a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a-sources.jar new file mode 100644 index 0000000..b771e51 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a.jar new file mode 100644 index 0000000..39a9cf5 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-entity-events-v1-7bb92b76-1.6.12+6fc22b996a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a-sources.jar new file mode 100644 index 0000000..c48418a Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a.jar new file mode 100644 index 0000000..a586821 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-events-interaction-v0-7bb92b76-0.7.12+ba9dae066a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a-sources.jar new file mode 100644 index 0000000..a23e2a1 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a.jar new file mode 100644 index 0000000..c4175ce Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-game-rule-api-v1-7bb92b76-1.0.53+6ced4dd96a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a-sources.jar new file mode 100644 index 0000000..de0a495 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a.jar new file mode 100644 index 0000000..b9ff11d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-gametest-api-v1-7bb92b76-2.0.4+6fc22b996a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a-sources.jar new file mode 100644 index 0000000..90d2aa1 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a.jar new file mode 100644 index 0000000..762f31b Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-api-v1-7bb92b76-11.0.0+afdfc9216a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a-sources.jar new file mode 100644 index 0000000..c42b2d9 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a.jar new file mode 100644 index 0000000..910d2a6 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-item-group-api-v1-7bb92b76-4.1.4+780172706a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719-sources.jar new file mode 100644 index 0000000..40577e7 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719.jar new file mode 100644 index 0000000..e462e21 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a719.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a-sources.jar new file mode 100644 index 0000000..e407db4 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a.jar new file mode 100644 index 0000000..b90eafe Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-key-binding-api-v1-7bb92b76-1.0.47+0af3f5a76a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a-sources.jar new file mode 100644 index 0000000..b3a9ad5 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a.jar new file mode 100644 index 0000000..5ec8fec Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-keybindings-v0-7bb92b76-0.2.45+df3654b36a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a-sources.jar new file mode 100644 index 0000000..a11b73e Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a.jar new file mode 100644 index 0000000..edb7c12 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.3.12+6c1df3606a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19-sources.jar new file mode 100644 index 0000000..7ab8bdb Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19.jar new file mode 100644 index 0000000..0825fd4 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.5.0+01d9a51c19.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519-sources.jar new file mode 100644 index 0000000..7c24d84 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519.jar new file mode 100644 index 0000000..00b0015 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-lifecycle-events-v1-7bb92b76-2.6.0+0865547519.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a-sources.jar new file mode 100644 index 0000000..202f79f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a.jar new file mode 100644 index 0000000..064a292 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v2-7bb92b76-3.0.14+3f89f5a56a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a-sources.jar new file mode 100644 index 0000000..ebdaa6d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a.jar new file mode 100644 index 0000000..f30d683 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-loot-api-v3-7bb92b76-1.0.2+3f89f5a56a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a-sources.jar new file mode 100644 index 0000000..db4bb2f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a.jar new file mode 100644 index 0000000..8ebc8f5 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-message-api-v1-7bb92b76-6.0.13+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a-sources.jar new file mode 100644 index 0000000..2b82e51 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a.jar new file mode 100644 index 0000000..d2044b7 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-model-loading-api-v1-7bb92b76-2.0.0+fe474d6b6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a-sources.jar new file mode 100644 index 0000000..9c462ef Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a.jar new file mode 100644 index 0000000..2564b55 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.2.2+60c3209b6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119-sources.jar new file mode 100644 index 0000000..3aa19cc Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119.jar new file mode 100644 index 0000000..30e5e04 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-networking-api-v1-7bb92b76-4.3.0+c7469b2119.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a-sources.jar new file mode 100644 index 0000000..a34fcf9 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a.jar new file mode 100644 index 0000000..942869d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-object-builder-api-v1-7bb92b76-15.2.0+40875a936a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a-sources.jar new file mode 100644 index 0000000..0302bec Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a.jar new file mode 100644 index 0000000..6b100e6 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-particles-v1-7bb92b76-4.0.2+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a-sources.jar new file mode 100644 index 0000000..63a1be9 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a.jar new file mode 100644 index 0000000..d5a8204 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-recipe-api-v1-7bb92b76-5.0.12+650897126a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a-sources.jar new file mode 100644 index 0000000..4df2fd1 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a.jar new file mode 100644 index 0000000..e324c7d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.1.2+60c3209b6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119-sources.jar new file mode 100644 index 0000000..6c5994d Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119.jar new file mode 100644 index 0000000..b691ce8 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-registry-sync-v0-7bb92b76-5.3.1+e3eddc2119.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a-sources.jar new file mode 100644 index 0000000..c92a215 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a.jar new file mode 100644 index 0000000..84922de Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.0+c705a49c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19-sources.jar new file mode 100644 index 0000000..a144bd1 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19.jar new file mode 100644 index 0000000..ac255cf Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-api-v1-7bb92b76-3.4.1+b4d813fc19.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a-sources.jar new file mode 100644 index 0000000..945c080 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a.jar new file mode 100644 index 0000000..7ddb664 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-indigo-7bb92b76-1.7.0+c705a49c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a-sources.jar new file mode 100644 index 0000000..2bc6dd2 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a.jar new file mode 100644 index 0000000..6137720 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-renderer-registries-v1-7bb92b76-3.2.68+df3654b36a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a-sources.jar new file mode 100644 index 0000000..e8b61dd Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a.jar new file mode 100644 index 0000000..0a43423 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-data-attachment-v1-7bb92b76-0.3.48+73761d2e6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a-sources.jar new file mode 100644 index 0000000..e2dbc23 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a.jar new file mode 100644 index 0000000..9f87950 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-fluids-v1-7bb92b76-3.1.6+1daea2156a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a-sources.jar new file mode 100644 index 0000000..fa90bb8 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a.jar new file mode 100644 index 0000000..d0fe214 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v0-7bb92b76-1.1.71+df3654b36a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a-sources.jar new file mode 100644 index 0000000..6e79659 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a.jar new file mode 100644 index 0000000..d9e08c9 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.0.5+df16efd06a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019-sources.jar new file mode 100644 index 0000000..de1eb96 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019.jar new file mode 100644 index 0000000..a8bc842 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-rendering-v1-7bb92b76-5.1.0+ab4c25a019.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a-sources.jar new file mode 100644 index 0000000..6dce397 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a.jar new file mode 100644 index 0000000..4099dc7 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-conditions-api-v1-7bb92b76-4.3.0+8dc279b16a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a-sources.jar new file mode 100644 index 0000000..a1e3aea Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a.jar new file mode 100644 index 0000000..5676021 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.0+565991296a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19-sources.jar new file mode 100644 index 0000000..21d0c9f Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19.jar new file mode 100644 index 0000000..79ff0a1 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-resource-loader-v0-7bb92b76-1.3.1+5b5275af19.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a-sources.jar new file mode 100644 index 0000000..24d2dc8 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a.jar new file mode 100644 index 0000000..84762b7 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-api-v1-7bb92b76-2.0.24+b55973446a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a-sources.jar new file mode 100644 index 0000000..23724ab Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a.jar new file mode 100644 index 0000000..8329255 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-screen-handler-api-v1-7bb92b76-1.3.86+b55973446a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a-sources.jar new file mode 100644 index 0000000..cdfeb99 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a.jar new file mode 100644 index 0000000..4531cdf Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-sound-api-v1-7bb92b76-1.0.23+6573ed8c6a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a-sources.jar new file mode 100644 index 0000000..7788d80 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a.jar new file mode 100644 index 0000000..d4f3ef2 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transfer-api-v1-7bb92b76-5.1.16+3dccd3436a.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a-sources.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a-sources.jar new file mode 100644 index 0000000..7846cd4 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a-sources.jar differ diff --git a/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a.jar b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a.jar new file mode 100644 index 0000000..92b6d61 Binary files /dev/null and b/fabric/build/loom-cache/remapped_working/remapped.net.fabricmc.fabric-api-fabric-transitive-access-wideners-v1-7bb92b76-6.1.0+1daea2156a.jar differ diff --git a/fabric/build/processIncludeJars/forgeconfigapiport-fabric-21.1.3.jar b/fabric/build/processIncludeJars/forgeconfigapiport-fabric-21.1.3.jar new file mode 100644 index 0000000..96160f5 Binary files /dev/null and b/fabric/build/processIncludeJars/forgeconfigapiport-fabric-21.1.3.jar differ diff --git a/fabric/build/processIncludeJars/maven-artifact-3.8.5.jar b/fabric/build/processIncludeJars/maven-artifact-3.8.5.jar new file mode 100644 index 0000000..f163c93 Binary files /dev/null and b/fabric/build/processIncludeJars/maven-artifact-3.8.5.jar differ diff --git a/fabric/build/processIncludeJars/sable-companion-fabric-1.21.1-1.6.0.jar b/fabric/build/processIncludeJars/sable-companion-fabric-1.21.1-1.6.0.jar new file mode 100644 index 0000000..c899085 Binary files /dev/null and b/fabric/build/processIncludeJars/sable-companion-fabric-1.21.1-1.6.0.jar differ diff --git a/fabric/build/processIncludeJars/veil-fabric-1.21.1-4.0.0.jar b/fabric/build/processIncludeJars/veil-fabric-1.21.1-4.0.0.jar new file mode 100644 index 0000000..b3622b9 Binary files /dev/null and b/fabric/build/processIncludeJars/veil-fabric-1.21.1-4.0.0.jar differ diff --git a/fabric/build/reports/checkstyle/main.html b/fabric/build/reports/checkstyle/main.html new file mode 100644 index 0000000..14ef678 --- /dev/null +++ b/fabric/build/reports/checkstyle/main.html @@ -0,0 +1,73 @@ + + + + Checkstyle Violations + + + +

+ +

Checkstyle Results

+ +

+
+

Summary

+ + + + + + + +
Total files checkedTotal violationsFiles with violations
2500
+
+
+

Violations

+

+ No violations were found. +

+
+
+

+ Generated by Gradle 9.5.0 with Checkstyle 10.24.0. +

+ + diff --git a/fabric/build/reports/checkstyle/main.xml b/fabric/build/reports/checkstyle/main.xml new file mode 100644 index 0000000..5f5ce03 --- /dev/null +++ b/fabric/build/reports/checkstyle/main.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/fabric/build/resources/main/META-INF/accesstransformer.cfg b/fabric/build/resources/main/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..f24e1c9 --- /dev/null +++ b/fabric/build/resources/main/META-INF/accesstransformer.cfg @@ -0,0 +1,67 @@ +public net.minecraft.client.renderer.block.ModelBlockRenderer$Cache +public net.minecraft.server.level.ChunkHolder entityTickingChunkFuture +public net.minecraft.server.level.ChunkHolder tickingChunkFuture +public net.minecraft.server.level.ChunkHolder fullChunkFuture +public net.minecraft.client.renderer.block.BlockRenderDispatcher modelRenderer +public net.minecraft.client.renderer.block.ModelBlockRenderer$AmbientOcclusionFace +public net.minecraft.server.level.ServerChunkCache$MainThreadExecutor +public net.minecraft.client.renderer.LevelRenderer cullingFrustum +public net.minecraft.world.entity.projectile.AbstractHurtingProjectile accelerationPower +public net.minecraft.world.entity.projectile.Projectile Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +public-f net.minecraft.client.renderer.chunk.SectionRenderDispatcher bufferPool +public-f net.minecraft.world.entity.ai.attributes.AttributeSupplier instances +public net.minecraft.server.level.ServerPlayer findRespawnAndUseSpawnBlock(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection updateGlobalBlockEntities(Ljava/util/Collection;)V +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection setCompiled(Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +public net.minecraft.world.entity.Entity removalReason +public net.minecraft.world.entity.Entity levelCallback +public-f net.minecraft.world.entity.Entity getEyePosition(F)Lnet/minecraft/world/phys/Vec3; +public-f net.minecraft.world.entity.Entity setRemoved(Lnet/minecraft/world/entity/Entity$RemovalReason;)V +public net.minecraft.server.level.ChunkLevel ENTITY_TICKING_LEVEL +public net.minecraft.server.level.ChunkLevel BLOCK_TICKING_LEVEL +public net.minecraft.world.entity.decoration.HangingEntity calculateSupportBox()Lnet/minecraft/world/phys/AABB; +public net.minecraft.world.entity.LivingEntity dismountVehicle(Lnet/minecraft/world/entity/Entity;)V +public net.minecraft.world.level.lighting.LevelLightEngine skyEngine +public net.minecraft.world.level.lighting.LevelLightEngine blockEngine +public net.minecraft.server.level.ThreadedLevelLightEngine runUpdate()V +public net.minecraft.server.level.ThreadedLevelLightEngine updateChunkStatus(Lnet/minecraft/world/level/ChunkPos;)V +public net.minecraft.client.renderer.block.ModelBlockRenderer CACHE +public net.minecraft.server.network.PlayerChunkSender sendChunk(Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V +public net.minecraft.server.network.ServerCommonPacketListenerImpl connection +public net.minecraft.client.multiplayer.ClientChunkCache$Storage +public net.minecraft.network.Connection channel +public net.minecraft.client.renderer.RenderStateShard name +public net.minecraft.client.renderer.ShaderInstance samplerLocations +public net.minecraft.world.level.entity.PersistentEntitySectionManager sectionStorage +public net.minecraft.world.level.storage.DimensionDataStorage dataFolder +public net.minecraft.client.renderer.GameRenderer getFov(Lnet/minecraft/client/Camera;FZ)D +public-f net.minecraft.server.level.GenerationChunkHolder rescheduleChunkTask(Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V +public net.minecraft.client.particle.Particle zo +public net.minecraft.client.particle.Particle yo +public net.minecraft.client.particle.Particle xo +public net.minecraft.client.particle.Particle x +public net.minecraft.client.particle.Particle y +public net.minecraft.client.particle.Particle zd +public net.minecraft.client.particle.Particle z +public net.minecraft.client.particle.Particle yd +public net.minecraft.client.particle.Particle xd +public net.minecraft.world.level.ClipContext collisionContext +public net.minecraft.world.level.ClipContext fluid +public net.minecraft.world.level.ClipContext block +public net.minecraft.server.level.ChunkMap$DistanceManager +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +public net.minecraft.server.level.ChunkMap unloadQueue +public net.minecraft.server.level.ChunkMap toDrop +public net.minecraft.server.level.ChunkMap updatingChunkMap +public net.minecraft.server.level.ChunkMap visibleChunkMap +public net.minecraft.server.level.ChunkMap modified +public net.minecraft.server.level.ChunkMap chunkSaveCooldowns +public net.minecraft.server.level.ChunkMap scheduleUnload(JLnet/minecraft/server/level/ChunkHolder;)V +public net.minecraft.server.level.ChunkMap onFullChunkStatusChange(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V +public net.minecraft.server.level.ChunkMap getChunks()Ljava/lang/Iterable; +public net.minecraft.server.level.ChunkMap saveChunkIfNeeded(Lnet/minecraft/server/level/ChunkHolder;)Z +public net.minecraft.server.level.ServerLevel entityManager + diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion new file mode 100644 index 0000000..a9131c7 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion @@ -0,0 +1 @@ +dev.ryanhcode.sable.ActiveSableCompanion \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform new file mode 100644 index 0000000..0f40e4c --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableAssemblyPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform new file mode 100644 index 0000000..4a8cd15 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableChunkEventPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform new file mode 100644 index 0000000..265b9e1 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableEventPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform new file mode 100644 index 0000000..e56f999 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableEventPublishPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform new file mode 100644 index 0000000..6cc92af --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableLoaderPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform new file mode 100644 index 0000000..ad649f4 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SablePlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform new file mode 100644 index 0000000..166f56e --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SablePlotPlatformImpl \ No newline at end of file diff --git a/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform new file mode 100644 index 0000000..f7c39b3 --- /dev/null +++ b/fabric/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableSubLevelRenderPlatformImpl diff --git a/fabric/build/resources/main/architectury.common.json b/fabric/build/resources/main/architectury.common.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/fabric/build/resources/main/architectury.common.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/fabric/build/resources/main/assets/sable/lang/en_us.json b/fabric/build/resources/main/assets/sable/lang/en_us.json new file mode 100644 index 0000000..13042f0 --- /dev/null +++ b/fabric/build/resources/main/assets/sable/lang/en_us.json @@ -0,0 +1,148 @@ +{ + "menu.savingSubLevels": "Saving sub-levels", + + "commands.sable.helper.missing_sub_level_container": "Couldn't find sub-level container for this level!", + "commands.sable.helper.missing_physics_system": "Couldn't find sub-level physics system for this level!", + + "commands.sable.sub_level": "sub-level", + "commands.sable.sub_levels": "%s sub-levels", + + "commands.sable.physics.global": "global", + "commands.sable.physics.local": "local", + + "commands.sable.spawn.success": "Spawned %s", + "commands.sable.spawn.clone.success": "Cloned sublevel", + + "commands.sable.physics.impulse.angular.success": "Applied %s angular impulse to %s of %s", + "commands.sable.physics.impulse.linear.success": "Applied %s linear impulse to %s of %s", + "commands.sable.physics.rotation.add.success": "Added %s rotation to %s of %s", + "commands.sable.physics.rotation.set.success": "Set rotation of %s to %s", + "commands.sable.physics.translation.add.success": "Added %s translation to %s of %s", + "commands.sable.physics.translation.set.success": "Set translation of %s to %s", + + "commands.sable.joint.missing_sublevel_target": "Failed to find sub-level for joint", + "commands.sable.joint.success": "Successfully created joint", + + "commands.sable.sub_level.set_name.success_singular": "Set name of sub-level to %s", + "commands.sable.sub_level.set_name.success_multiple": "Set name of %s sub-levels to %s", + + "commands.sable.sub_level.get_name.success": "Name of sub-level is %s", + "commands.sable.sub_level.get_name.failure_unnamed": "Sub-level has no name", + + "commands.sable.sub_level.clear_name.success_singular": "Cleared name of sub-level", + "commands.sable.sub_level.clear_name.success_multiple": "Cleared name of %s sub-levels", + + "commands.sable.sub_level.teleport_with_orientation.success": "Teleported %s to %.2f, %.2f, %.2f facing %.2f, %.2f", + "commands.sable.sub_level.teleport.success": "Teleported %s to %.2f, %.2f, %.2f", + "commands.sable.sub_level.remove.success": "Removed %s", + "commands.sable.sub_level.assemble.no_blocks": "Couldn't assemble sub-level, no valid blocks found", + "commands.sable.sub_level.assemble.connected.too_many_blocks": "Couldn't assemble sub-level, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.no_blocks": "Couldn't shatter into sub-levels, no valid blocks found", + "commands.sable.sub_level.shatter.connected.too_many_blocks": "Couldn't shatter into sub-levels, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.region.success": "Shattered a region with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.connected.success": "Shattered %s connected blocks into new sub-levels", + "commands.sable.sub_level.shatter.range.success": "Shattered a range with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.radius.success": "Shattered a radius with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.sub_level.success": "Shattered %s into %s new sub-levels", + "commands.sable.sub_level.shatter.sub_level.only_single_block": "Can't shatter single-block sub-levels", + "commands.sable.sub_level.assemble.region.success": "Assembled a region %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.connected.success": "Assembled %s connected blocks to a new sub-level", + "commands.sable.sub_level.assemble.radius.success": "Assembled a radius with %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.range.success": "Assembled a range with %s blocks to a new sub-level", + + "commands.sable.physics.paused.success": "Set physics paused to be %s", + "commands.sable.physics.paused_toggled.success": "Toggled physics paused to be %s", + + "commands.sable.place_schematic.failure": "Couldn't find schematic!", + "commands.sable.place_schematic.success": "Placed schematic!", + + "commands.sable.fail.not_inside_sub_level": "Position outside of sub-level plot", + "commands.sable.fail.no_sub_levels": "No sub-levels found", + "commands.sable.fail.unmodified": "No sub-levels were modified", + "commands.sable.fail.no_axis_for_rotation": "No axis for rotation", + + "commands.sable.info.count": "Found %s sub-levels:", + "commands.sable.info.name": "%s:", + "commands.sable.info.name.tooltip": "Serialization Pointer: %s", + "commands.sable.info.position": " Position: %.2f %.2f %.2f", + "commands.sable.info.orientation": " Orientation: %.2f %.2f %.2f %.2f", + "commands.sable.info.linear_velocity": " Linear Velocity: %.2f %.2f %.2f", + "commands.sable.info.angular_velocity": " Angular Velocity: %.2f %.2f %.2f", + "commands.sable.info.mass": " Mass: %.2f", + "commands.sable.info.world_bounds": " World Bounds: %.2f x %.2f x %.2f", + + "commands.data.sub_level.get": "%s on sub-level %s after scale factor of %s is %s", + "commands.data.sub_level.modified": "Modified sub-level auxiliary data of %s", + "commands.data.sub_level.query": "%s has the following auxiliary sub-level data: %s", + + "argument.sable.body.selector.all": "All sub-levels", + "argument.sable.body.selector.nearest": "Nearest sub-level", + "argument.sable.body.selector.random": "Random sub-level", + "argument.sable.body.selector.viewed": "Viewed sub-level", + "argument.sable.body.selector.latest": "Latest sub-level", + "argument.sable.body.selector.tracking": "Tracking sub-level", + "argument.sable.body.selector.inside": "Inside sub-level", + "argument.sable.body.static_world": "The static world", + + "argument.sable.sub_level.modifier.distance": "Distance to sub-level", + "argument.sable.sub_level.modifier.x": "x position", + "argument.sable.sub_level.modifier.y": "y position", + "argument.sable.sub_level.modifier.z": "z position", + "argument.sable.sub_level.modifier.dx": "Sub-levels between x and x + dx", + "argument.sable.sub_level.modifier.dy": "Sub-levels between y and y + dy", + "argument.sable.sub_level.modifier.dz": "Sub-levels between z and z + dz", + "argument.sable.sub_level.modifier.vx": "x velocity", + "argument.sable.sub_level.modifier.vy": "y velocity", + "argument.sable.sub_level.modifier.vz": "z velocity", + "argument.sable.sub_level.modifier.speed": "Sub-level speed", + "argument.sable.sub_level.modifier.mass": "Sub-level weight", + "argument.sable.sub_level.modifier.volume": "Volume of sub-level bounding box", + "argument.sable.sub_level.modifier.width": "X axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.height": "Y axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.length": "Z axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.limit": "Maximum number of sub-levels to return", + "argument.sable.sub_level.modifier.name": "Sub-level name", + "argument.sable.sub_level.modifier.sort": "Sort the sub-levels by distance", + "argument.sable.unexpected_end_of_input": "Unexpected end of input", + "argument.sable.single_sub_level_required": "Only one sub-level is allowed, but the provided selector allows more than one", + "argument.sable.sub_level.invalid": "Invalid sub-level selector", + "argument.sable.sub_level.expected_end_of_modifier": "Expected end of modifier", + "argument.sable.sub_level.expected_positive_integer": "Expected a positive integer", + "argument.sable.sub_level.expected_positive_decimal": "Expected a positive decimal", + "argument.sable.sub_level.expected_positive_range": "Expected a positive range", + "argument.sable.sub_level.expected_sorting": "Expected sorting type of either nearest or furthest", + + "inspector.sable.sub_level_container.title": "Sub-level Container", + + "attribute.name.player.sub_level_punch_strength": "Push Strength", + "attribute.name.player.sub_level_punch_cooldown": "Push Cooldown", + + "options.sable_menu": "Sub-Level Settings... ", + "options.physics_steps": "Physics Steps", + "options.physics_steps_template": "%s steps / second", + "options.physics_steps.tooltip": "How many times the physics simulation is stepped in every second. Higher values will be significantly more performance intensive, but will have higher accuracy.", + + "sub_level.toast.checkLog": "See log for more details", + "sub_level.toast.loadFailure": "Failed to load sub-level at %s", + "sub_level.toast.saveFailure": "Failed to save sub-level at %s", + "sub_level.toast.physicsFailure": "Physics failure for sub-level at %s", + "sub_level.toast.attemptingRecovery": "Attempting recovery", + + "camera_type.sub_level_view": "Entering Contraption Camera", + "camera_type.sub_level_view_unlocked": "Entering Unlocked Contraption Camera", + + "force_group.sable.gravity": "Gravity", + "force_group.sable.drag": "Drag", + "force_group.sable.levitation": "Levitation", + "force_group.sable.balloon_lift": "Balloon Lift", + "force_group.sable.propulsion": "Propulsion", + "force_group.sable.lift": "Lift", + "force_group.sable.magnetic_force": "Magnetic", + + "schematic.sable.mirror_not_supported": "Cannot mirror schematics containing sub-levels!", + + "death.attack.fall.from_sublevel": "%1$s fell from %2$s", + + "sable.create.mechanical_arm.points_removed_sublevel_and_range": "%1$s selected interaction point(s) removed due to range limitations or not being anchored.", + "sable.create.remove.points_removed_sublevel" : "%1$s selected interaction point(s) removed due to not being anchored" +} diff --git a/fabric/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl b/fabric/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl new file mode 100644 index 0000000..f9a32df --- /dev/null +++ b/fabric/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl @@ -0,0 +1,61 @@ +layout(location = 0) in vec3 QuadPosition; +layout(location = 1) in vec3 SableNormal; +layout(location = 2) in uvec2 SableData; + +layout(std140) uniform SableSprites { + vec4 sableSprites[2 * SABLE_TEXTURE_CACHE_SIZE]; +}; + +uniform mat4 SableTransform; + +vec3 Position; +vec3 Normal; +vec4 Color; +vec2 UV0; +ivec2 UV2; + +void _sable_unpack() { + uint vertexIndex = uint(gl_VertexID) & 0x3u; + + // Packed data format: + // TTTTTTTTTTTTLLLLLLLLZZZZYYYYXXXX + // T = Texture ID + // L = Packed Light + // Z = Relative Z position + // Y = Relative Y position + // X = Relative X position + uint posX = SableData.x & 15u; + uint posY = (SableData.x >> 4) & 15u; + uint posZ = (SableData.x >> 8) & 15u; + uint packedLight = (SableData.x >> 12) & 255u; + uint textureId = SableData.x >> 20u; + + // Packed data format: + // AAAAAAAAYYYYYYYYZZZZZZZZXXXXXXXX + // A = Ambient Occlusion + // Y = Section Y + // Z = Section Z + // X = Section X + uint xOffset = (SableData.y) & 0xFFu; + uint yOffset = (SableData.y >> 8) & 0xFFu; + uint zOffset = (SableData.y >> 16) & 0xFFu; + uint ambientOcclusion = (SableData.y >> (24u + (vertexIndex << 1u))) & 0x3u; + + // 0,0 == 0b00 + // 0,1 == 0b01 + // 1,1 == 0b10 + // 1,0 == 0b11 + uint lower = uint(gl_VertexID) & 1u; + uint upper = (uint(gl_VertexID) >> 1) & 1u; + vec2 uv = vec2(float(upper), float(lower ^ upper)); + uint textureOffset = vertexIndex << 3u; + + vec4 textureU = sableSprites[(textureId << 1u)]; + vec4 textureV = sableSprites[(textureId << 1u) + 1u]; + + Position = (SableTransform * vec4(QuadPosition + vec3(float((xOffset << 4u) + posX), float((yOffset << 4u) + posY), float((zOffset << 4u) + posZ)), 1.0)).xyz; + Normal = (SableTransform * vec4(SableNormal, 0.0)).xyz; + Color = vec4(1.0, 1.0, 1.0, 1.0) * vec4(vec3(1.0 - 0.2 * float(ambientOcclusion)), 1.0); + UV0 = vec2(textureU[vertexIndex], textureV[vertexIndex]); + UV2 = ivec2(packedLight & 0xF0u, (packedLight << 4) & 0xF0u); +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/c/tags/block/end_stones.json b/fabric/build/resources/main/data/c/tags/block/end_stones.json new file mode 100644 index 0000000..146dcd9 --- /dev/null +++ b/fabric/build/resources/main/data/c/tags/block/end_stones.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:end_stone" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/floating_materials/end_stone.json b/fabric/build/resources/main/data/sable/floating_materials/end_stone.json new file mode 100644 index 0000000..b5f5be3 --- /dev/null +++ b/fabric/build/resources/main/data/sable/floating_materials/end_stone.json @@ -0,0 +1,10 @@ +{ + "prevent_self_lift": true, + "scale_friction_with_gravity":true, + "lift_strength": 2, + "transition_speed": 2, + "slow_vertical_friction": 0.4, + "fast_vertical_friction": 0.02, + "slow_horizontal_friction": 0.3, + "fast_horizontal_friction": 0.01 +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json b/fabric/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json new file mode 100644 index 0000000..5addf33 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:bedrock", + + "properties": { + "sable:mass": 1000.0 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/bouncy.json b/fabric/build/resources/main/data/sable/physics_block_properties/bouncy.json new file mode 100644 index 0000000..8da9bbb --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/bouncy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:bouncy", + + "properties": { + "sable:restitution": 0.5 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json b/fabric/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json new file mode 100644 index 0000000..e120d72 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json @@ -0,0 +1,13 @@ +{ + "selector": "minecraft:end_stone_brick_slab", + + "properties": { + "sable:floating_material": "sable:end_stone", + "sable:floating_scale": 0.5 + }, + "overrides": { + "type=double": { + "sable:floating_scale": 1.0 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/end_stones.json b/fabric/build/resources/main/data/sable/physics_block_properties/end_stones.json new file mode 100644 index 0000000..87c896d --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/end_stones.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:end_stones", + + "properties": { + "sable:floating_material": "sable:end_stone" + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/flywheel.json b/fabric/build/resources/main/data/sable/physics_block_properties/flywheel.json new file mode 100644 index 0000000..b7ab63c --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/flywheel.json @@ -0,0 +1,19 @@ +{ + "selector": "create:flywheel", + + "properties": { + "sable:mass":4.0 + }, + + "overrides":{ + "axis=x": { + "sable:inertia": [2.25,1.125,1.125] + }, + "axis=y": { + "sable:inertia": [1.125,2.25,1.125] + }, + "axis=z": { + "sable:inertia": [1.125,1.125,2.25] + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/fragile.json b/fabric/build/resources/main/data/sable/physics_block_properties/fragile.json new file mode 100644 index 0000000..4254f91 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/fragile.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:fragile", + + "properties": { + "sable:fragile": true + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/grindstone.json b/fabric/build/resources/main/data/sable/physics_block_properties/grindstone.json new file mode 100644 index 0000000..150c03f --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/grindstone.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:grindstone", + + "properties": { + "sable:friction": 0.05 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/half_volume.json b/fabric/build/resources/main/data/sable/physics_block_properties/half_volume.json new file mode 100644 index 0000000..7f016a4 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/half_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:half_volume", + + "properties": { + "sable:volume": 0.5 + }, + + "overrides": { + "type=double": { + "sable:volume": 1.0 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/heavy.json b/fabric/build/resources/main/data/sable/physics_block_properties/heavy.json new file mode 100644 index 0000000..7576d35 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:heavy", + + "properties": { + "sable:mass": 2.0 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/light.json b/fabric/build/resources/main/data/sable/physics_block_properties/light.json new file mode 100644 index 0000000..58e4125 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/light.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:light", + + "properties": { + "sable:mass": 0.5 + }, + + "overrides": { + "type=double": { + "sable:mass": 1.0 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/mud.json b/fabric/build/resources/main/data/sable/physics_block_properties/mud.json new file mode 100644 index 0000000..ff67e5e --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/mud.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:mud", + + "properties": { + "sable:friction": 0.25 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/piston.json b/fabric/build/resources/main/data/sable/physics_block_properties/piston.json new file mode 100644 index 0000000..18ec882 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/piston.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:pistons", + + "properties": { + "sable:mass": 1.0 + }, + + "overrides": { + "extended=true": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/quarter_volume.json b/fabric/build/resources/main/data/sable/physics_block_properties/quarter_volume.json new file mode 100644 index 0000000..b5f0cbd --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/quarter_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:quarter_volume", + + "properties": { + "sable:volume": 0.25 + }, + + "overrides": { + "type=double": { + "sable:volume": 0.5 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/slippery.json b/fabric/build/resources/main/data/sable/physics_block_properties/slippery.json new file mode 100644 index 0000000..e1e4f59 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/slippery.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:slippery", + + "properties": { + "sable:friction": 0.0 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/sticky.json b/fabric/build/resources/main/data/sable/physics_block_properties/sticky.json new file mode 100644 index 0000000..d831295 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/sticky.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:frictive", + + "properties": { + "sable:friction": 1.65 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/super_heavy.json b/fabric/build/resources/main/data/sable/physics_block_properties/super_heavy.json new file mode 100644 index 0000000..83392dc --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/super_heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:super_heavy", + + "properties": { + "sable:mass": 4.0 + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/physics_block_properties/super_light.json b/fabric/build/resources/main/data/sable/physics_block_properties/super_light.json new file mode 100644 index 0000000..1281080 --- /dev/null +++ b/fabric/build/resources/main/data/sable/physics_block_properties/super_light.json @@ -0,0 +1,14 @@ +{ + "priority": 1001, + "selector": "#sable:super_light", + + "properties": { + "sable:mass": 0.25 + }, + + "overrides": { + "type=double": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/schematics/vinalilime.nbt b/fabric/build/resources/main/data/sable/schematics/vinalilime.nbt new file mode 100644 index 0000000..bffb43f Binary files /dev/null and b/fabric/build/resources/main/data/sable/schematics/vinalilime.nbt differ diff --git a/fabric/build/resources/main/data/sable/schematics/vostone_2.nbt b/fabric/build/resources/main/data/sable/schematics/vostone_2.nbt new file mode 100644 index 0000000..b612af5 Binary files /dev/null and b/fabric/build/resources/main/data/sable/schematics/vostone_2.nbt differ diff --git a/fabric/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt b/fabric/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt new file mode 100644 index 0000000..e7681ca Binary files /dev/null and b/fabric/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt differ diff --git a/fabric/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt b/fabric/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt new file mode 100644 index 0000000..ad6c3b5 Binary files /dev/null and b/fabric/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt differ diff --git a/fabric/build/resources/main/data/sable/structure/physicstest.gravity.nbt b/fabric/build/resources/main/data/sable/structure/physicstest.gravity.nbt new file mode 100644 index 0000000..4e3e84c Binary files /dev/null and b/fabric/build/resources/main/data/sable/structure/physicstest.gravity.nbt differ diff --git a/fabric/build/resources/main/data/sable/structure/physicstest.snag.nbt b/fabric/build/resources/main/data/sable/structure/physicstest.snag.nbt new file mode 100644 index 0000000..a29e87e Binary files /dev/null and b/fabric/build/resources/main/data/sable/structure/physicstest.snag.nbt differ diff --git a/fabric/build/resources/main/data/sable/tags/block/always_chunk_rendering.json b/fabric/build/resources/main/data/sable/tags/block/always_chunk_rendering.json new file mode 100644 index 0000000..671a331 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/always_chunk_rendering.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + { "id": "computercraft:monitor_normal", "required": false }, + { "id": "computercraft:monitor_advanced", "required": false }, + + { "id": "computercraft:turtle_normal", "required": false }, + { "id": "computercraft:turtle_advanced", "required": false }, + + { "id": "computercraft:computer_normal", "required": false }, + { "id": "computercraft:computer_advanced", "required": false }, + { "id": "computercraft:computer_command", "required": false } + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/bouncy.json b/fabric/build/resources/main/data/sable/tags/block/bouncy.json new file mode 100644 index 0000000..f3c5414 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/bouncy.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:slime_block" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/diode.json b/fabric/build/resources/main/data/sable/tags/block/diode.json new file mode 100644 index 0000000..eebbbce --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/diode.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:repeater", + "minecraft:comparator", + { "id": "create:powered_toggle_latch", "required": false }, + { "id": "create:powered_latch", "required": false }, + { "id": "create:pulse_timer", "required": false }, + { "id": "create:pulse_extender", "required": false }, + { "id": "create:pulse_repeater", "required": false } + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/end_stones.json b/fabric/build/resources/main/data/sable/tags/block/end_stones.json new file mode 100644 index 0000000..ac17a72 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/end_stones.json @@ -0,0 +1,17 @@ +{ + "replace": false, + "values": [ + "#c:end_stones", + "minecraft:end_stone_bricks", + "minecraft:end_stone_brick_stairs", + "minecraft:end_stone_brick_wall", + + { "id": "supplementaries:end_stone_lamp", "required": false }, + + { "id": "architects_palette:choral_end_stone_bricks", "required": false }, + { "id": "architects_palette:cracked_end_stone_bricks", "required": false }, + { "id": "architects_palette:chiseled_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_cracked_end_stone_bricks", "required": false } + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/fragile.json b/fabric/build/resources/main/data/sable/tags/block/fragile.json new file mode 100644 index 0000000..3942c98 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/fragile.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:leaves", + "minecraft:bamboo", + "minecraft:melon", + "minecraft:pumpkin", + "minecraft:cactus", + "minecraft:ice", + "minecraft:frosted_ice", + "minecraft:lily_pad" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/frictive.json b/fabric/build/resources/main/data/sable/tags/block/frictive.json new file mode 100644 index 0000000..684d0c6 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/frictive.json @@ -0,0 +1,16 @@ +{ + "replace": false, + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:honey_block", + "minecraft:cactus", + + { "id": "create:belt", "required": false }, + + { "id": "architects_palette:tread_plate", "required": false }, + { "id": "architects_palette:tread_plate_slab", "required": false }, + { "id": "architects_palette:tread_plate_stairs", "required": false }, + { "id": "architects_palette:tread_plate_wall", "required": false } + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/half_volume.json b/fabric/build/resources/main/data/sable/tags/block/half_volume.json new file mode 100644 index 0000000..4f29698 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/half_volume.json @@ -0,0 +1,22 @@ +{ + "replace": false, + "values": [ + "#minecraft:slabs", + "#minecraft:stairs", + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "quark:feeding_trough", "required": false }, + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:jar", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false } + + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/heavy.json b/fabric/build/resources/main/data/sable/tags/block/heavy.json new file mode 100644 index 0000000..4396b4d --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/heavy.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#c:stones", + "#c:cobblestones", + "minecraft:blackstone", + "minecraft:basalt", + "minecraft:smooth_basalt", + "minecraft:polished_basalt", + "minecraft:obsidian", + "minecraft:crying_obsidian" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/light.json b/fabric/build/resources/main/data/sable/tags/block/light.json new file mode 100644 index 0000000..de8caa4 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/light.json @@ -0,0 +1,72 @@ +{ + "replace": false, + "values": [ + "#minecraft:planks", + "#minecraft:logs", + "#minecraft:slabs", + "#minecraft:stairs", + "minecraft:piston_head", + "minecraft:barrel", + "minecraft:chest", + "#minecraft:bamboo_blocks", + "#c:clusters", + "#c:chests/wooden", + { "id": "create:belt", "required": false }, + { "id": "create:track", "required": false }, + { "id": "create:nixie_tube", "required": false }, + { "id": "create:desk_bell", "required": false }, + { "id": "create:piston_extension_pole", "required": false }, + { "id": "create:turntable", "required": false }, + { "id": "create:andesite_funnel", "required": false }, + { "id": "create:brass_funnel", "required": false }, + { "id": "create:factory_gauge", "required": false }, + { "id": "create:display_link", "required": false }, + { "id": "create:stock_link", "required": false }, + { "id": "create:cardboard_block", "required": false }, + { "id": "create:bound_cardboard_block", "required": false }, + + { "id": "create:andesite_encased_shaft", "required": false }, + { "id": "create:andesite_encased_cogwheel", "required": false }, + { "id": "create:andesite_encased_large_cogwheel", "required": false }, + + { "id": "create:brass_encased_shaft", "required": false }, + { "id": "create:brass_encased_cogwheel", "required": false }, + { "id": "create:brass_encased_large_cogwheel", "required": false }, + + { "id": "create:shaft", "required": false }, + { "id": "create:cogwheel", "required": false }, + { "id": "create:large_cogwheel", "required": false }, + + { "id": "create:hand_crank", "required": false }, + { "id": "#create:valve_handles", "required": false }, + { "id": "#create:seats", "required": false }, + + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:beams", "required": false }, + + { "id": "#woodworks:wooden_boards", "required": false }, + + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hollow_logs", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:presents", "required": false }, + { "id": "#supplementaries:trapped_presents", "required": false }, + + { "id": "#architects_palette:boards", "required": false }, + + { "id": "#storagedrawers:full_drawers", "required": false }, + { "id": "#storagedrawers:trim", "required": false }, + + { "id": "#another_furniture:drawers", "required": false } + ], + "remove": [ + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#quark:wooden_vertical_slabs" + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/pistons.json b/fabric/build/resources/main/data/sable/tags/block/pistons.json new file mode 100644 index 0000000..5570772 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/pistons.json @@ -0,0 +1,6 @@ +{ + "values": [ + "minecraft:piston", + "minecraft:sticky_piston" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/quarter_volume.json b/fabric/build/resources/main/data/sable/tags/block/quarter_volume.json new file mode 100644 index 0000000..ad2762c --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/quarter_volume.json @@ -0,0 +1,99 @@ +{ + "replace": false, + "values": [ + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:moss_carpet", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + "#sable:diode", + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "#quark:posts", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/slippery.json b/fabric/build/resources/main/data/sable/tags/block/slippery.json new file mode 100644 index 0000000..d8480b4 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/slippery.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:ice", + + { "id": "architects_palette:polished_packed_ice", "required": false }, + { "id": "architects_palette:polished_packed_ice_slab", "required": false }, + { "id": "architects_palette:polished_packed_ice_stairs", "required": false }, + { "id": "architects_palette:polished_packed_ice_wall", "required": false }, + { "id": "architects_palette:chiseled_packed_ice", "required": false }, + { "id": "architects_palette:packed_ice_pillar", "required": false } + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/block/super_heavy.json b/fabric/build/resources/main/data/sable/tags/block/super_heavy.json new file mode 100644 index 0000000..95d1e9f --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/super_heavy.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + "#c:storage_blocks", + "#minecraft:anvil", + "minecraft:heavy_core" + ], + "remove": [ + { "id": "create:cardboard_block", "required": false }, + "minecraft:copper_block", + "minecraft:slime_block", + "minecraft:bone_block" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/block/super_light.json b/fabric/build/resources/main/data/sable/tags/block/super_light.json new file mode 100644 index 0000000..73de5e9 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/block/super_light.json @@ -0,0 +1,118 @@ +{ + "replace": false, + "values": [ + "#minecraft:wool", + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:leaves", + "#minecraft:saplings", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:lily_pad", + "minecraft:big_dripleaf", + "minecraft:turtle_egg", + "minecraft:moss_carpet", + "minecraft:snow", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + "#sable:diode", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + { "id": "#create:windmill_sails", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "#farmersdelight:straw_blocks", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:feeding_trough", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "quark:paper_lantern", "required": false }, + { "id": "quark:paper_lantern_sakura", "required": false }, + { "id": "#quark:wooden_vertical_slabs", "required": false }, + { "id": "#quark:posts", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:jar", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false }, + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/create_contraption.json b/fabric/build/resources/main/data/sable/tags/entity_type/create_contraption.json new file mode 100644 index 0000000..f83a24f --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/create_contraption.json @@ -0,0 +1,10 @@ +{ + "replace": false, + "values": [ + { "id": "create:contraption", "required": false }, + { "id": "create:stationary_contraption", "required": false }, + { "id": "create:oriented_contraption", "required": false }, + { "id": "create:gantry_contraption", "required": false }, + { "id": "create:carriage_contraption", "required": false } + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json b/fabric/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json new file mode 100644 index 0000000..131ae63 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + { "id": "exposure:camera_stand", "required": false }, + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json b/fabric/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json new file mode 100644 index 0000000..96d7061 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#sable:super_glue", + { "id": "create:seat", "required": false }, + "#sable:create_contraption" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json b/fabric/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json new file mode 100644 index 0000000..d82b0b6 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json @@ -0,0 +1,27 @@ +{ + "replace": false, + "values": [ + "#sable:create_contraption", + "#sable:super_glue", + "#sable:wall_entities", + { "id": "create:seat", "required": false }, + { "id": "blockbox:seat", "required": false }, + { "id": "botania:mana_burst", "required": false }, + { "id": "botania:corporea_burst", "required": false }, + { "id": "botania:spark", "required": false }, + { "id": "exposure:camera_stand", "required": false }, + "minecraft:snow_golem", + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart", + "minecraft:command_block_minecart", + "minecraft:block_display", + "minecraft:item_display", + "minecraft:text_display", + "minecraft:marker", + "minecraft:leash_knot" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/super_glue.json b/fabric/build/resources/main/data/sable/tags/entity_type/super_glue.json new file mode 100644 index 0000000..7fc40eb --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/super_glue.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + { "id": "create:super_glue", "required": false } + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/entity_type/wall_entities.json b/fabric/build/resources/main/data/sable/tags/entity_type/wall_entities.json new file mode 100644 index 0000000..c36c99c --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/entity_type/wall_entities.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:painting", + "minecraft:item_frame", + "minecraft:glow_item_frame", + { "id": "create:crafting_blueprint", "required": false }, + { "id": "exposure:glass_photograph_frame", "required": false }, + { "id": "exposure:photograph_frame", "required": false }, + { "id": "labels:label", "required": false } + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/data/sable/tags/item/paddles.json b/fabric/build/resources/main/data/sable/tags/item/paddles.json new file mode 100644 index 0000000..6fa1ee7 --- /dev/null +++ b/fabric/build/resources/main/data/sable/tags/item/paddles.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#minecraft:shovels" + ] +} \ No newline at end of file diff --git a/fabric/build/resources/main/fabric.mod.json b/fabric/build/resources/main/fabric.mod.json new file mode 100644 index 0000000..56eb714 --- /dev/null +++ b/fabric/build/resources/main/fabric.mod.json @@ -0,0 +1,52 @@ +{ + "schemaVersion": 1, + "id": "sable", + "version": "1.2.2", + "name": "Sable", + "description": "Interactive moving block structures with physics.", + "authors": [ + "RyanHCode" + ], + "contact": { + "sources": "https://github.com/ryanhcode/sable-companion", + "issues": "https://github.com/ryanhcode/sable/issues" + }, + "accessWidener": "sable.accesswidener", + "license": "PolyForm Shield License 1.0.0", + "icon": "icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "dev.ryanhcode.sable.fabric.SableFabric" + ], + "client": [ + "dev.ryanhcode.sable.fabric.client.SableFabricClient" + ] + }, + "mixins": [ + "sable.mixins.json", + "sable-fabric.mixins.json" + ], + "depends": { + "fabricloader": ">=0.16.9", + "minecraft": "1.21.1", + "java": ">=21", + "veil": ">=4.0.0", + "fabric-command-api-v2": ">=0.110.0+1.21.1", + "fabric-lifecycle-events-v1": ">=0.110.0+1.21.1", + "fabric-resource-loader-v0": ">=0.110.0+1.21.1", + "fabric-convention-tags-v2": ">=0.110.0+1.21.1" + }, + "custom": { + "lithium:options": { + "mixin.entity.collisions.unpushable_cramming": false, + "mixin.world.chunk_access": false, + "mixin.world.chunk_ticking": false, + "mixin.world.tick_scheduler": false + } + }, + "breaks": { + "scalablelux": "*", + "sablecompanion": "<1.6.0" + } +} diff --git a/fabric/build/resources/main/icon.png b/fabric/build/resources/main/icon.png new file mode 100644 index 0000000..5419332 Binary files /dev/null and b/fabric/build/resources/main/icon.png differ diff --git a/fabric/build/resources/main/natives/sable_rapier/LICENSE-RAPIER b/fabric/build/resources/main/natives/sable_rapier/LICENSE-RAPIER new file mode 100644 index 0000000..97f4383 --- /dev/null +++ b/fabric/build/resources/main/natives/sable_rapier/LICENSE-RAPIER @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Sébastien Crozet + + 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 + + http://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. diff --git a/fabric/build/resources/main/natives/sable_rapier/README.md b/fabric/build/resources/main/natives/sable_rapier/README.md new file mode 100644 index 0000000..e774f58 --- /dev/null +++ b/fabric/build/resources/main/natives/sable_rapier/README.md @@ -0,0 +1,2 @@ +The natives in this folder are for Sable's Rapier physics pipeline. +They contain a slightly modified version of Rapier visible at https://github.com/ryanhcode/rapier (view LICENSE-RAPIER). \ No newline at end of file diff --git a/fabric/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z b/fabric/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z new file mode 100644 index 0000000..022e303 Binary files /dev/null and b/fabric/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z differ diff --git a/fabric/build/resources/main/sable-fabric.mixins.json b/fabric/build/resources/main/sable-fabric.mixins.json new file mode 100644 index 0000000..5b12c1b --- /dev/null +++ b/fabric/build/resources/main/sable-fabric.mixins.json @@ -0,0 +1,23 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.fabric.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_outline_render.LevelRendererMixin", + "camera_rotation.CameraMixin", + "compatibility.sodiumextras.EmbyToolsMixin", + "dynamic_directional_shading.SectionCompilerMixin", + "fix_bundle_packet.ClientPacketListenerMixin", + "sound.MovingSoundInstanceDelegateMixin" + ], + "mixins": [ + "assembly.LevelChunkMixin", + "assembly.LevelMixin", + "entities_stick_sublevels.effects.LivingEntityMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/fabric/build/resources/main/sable.accesswidener b/fabric/build/resources/main/sable.accesswidener new file mode 100644 index 0000000..0258ae4 --- /dev/null +++ b/fabric/build/resources/main/sable.accesswidener @@ -0,0 +1,118 @@ +accessWidener v2 named + +accessible class net/minecraft/client/multiplayer/ClientChunkCache$Storage + +accessible field net/minecraft/server/level/ChunkHolder fullChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder tickingChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder entityTickingChunkFuture Ljava/util/concurrent/CompletableFuture; + +accessible class net/minecraft/server/level/ServerChunkCache$ChunkAndHolder +accessible method net/minecraft/server/level/ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V + +accessible field net/minecraft/server/network/ServerCommonPacketListenerImpl connection Lnet/minecraft/network/Connection; + +accessible field net/minecraft/server/level/ChunkMap updatingChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; +accessible field net/minecraft/server/level/ChunkMap visibleChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; + +accessible field net/minecraft/server/level/ChunkLevel ENTITY_TICKING_LEVEL I +accessible field net/minecraft/server/level/ChunkLevel BLOCK_TICKING_LEVEL I +accessible method net/minecraft/server/network/PlayerChunkSender sendChunk (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V + +accessible field net/minecraft/world/level/ClipContext block Lnet/minecraft/world/level/ClipContext$Block; +accessible field net/minecraft/world/level/ClipContext fluid Lnet/minecraft/world/level/ClipContext$Fluid; +accessible field net/minecraft/world/level/ClipContext collisionContext Lnet/minecraft/world/phys/shapes/CollisionContext; + +accessible method net/minecraft/server/level/ChunkMap onFullChunkStatusChange (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V + +accessible field net/minecraft/client/particle/Particle xo D +accessible field net/minecraft/client/particle/Particle yo D +accessible field net/minecraft/client/particle/Particle zo D +accessible field net/minecraft/client/particle/Particle x D +accessible field net/minecraft/client/particle/Particle y D +accessible field net/minecraft/client/particle/Particle z D + + +accessible field net/minecraft/world/level/lighting/LevelLightEngine blockEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible field net/minecraft/world/level/lighting/LevelLightEngine skyEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible method net/minecraft/server/level/ThreadedLevelLightEngine runUpdate ()V + +extendable method net/minecraft/server/level/GenerationChunkHolder rescheduleChunkTask (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + +accessible method net/minecraft/server/level/ThreadedLevelLightEngine updateChunkStatus (Lnet/minecraft/world/level/ChunkPos;)V + +accessible field net/minecraft/client/renderer/block/BlockRenderDispatcher modelRenderer Lnet/minecraft/client/renderer/block/ModelBlockRenderer; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace +accessible field net/minecraft/client/renderer/RenderStateShard name Ljava/lang/String; + +# Assembly +accessible method net/minecraft/world/entity/decoration/HangingEntity calculateSupportBox ()Lnet/minecraft/world/phys/AABB; + +# Directional Shading +accessible field net/minecraft/client/renderer/block/ModelBlockRenderer CACHE Ljava/lang/ThreadLocal; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$Cache + +# UDP Networking +accessible field net/minecraft/network/Connection channel Lio/netty/channel/Channel; + +# Serialization +accessible field net/minecraft/world/level/storage/DimensionDataStorage dataFolder Ljava/io/File; +accessible method net/minecraft/server/level/ChunkMap getChunks ()Ljava/lang/Iterable; +accessible method net/minecraft/server/level/ChunkMap scheduleUnload (JLnet/minecraft/server/level/ChunkHolder;)V +accessible field net/minecraft/server/level/ChunkMap toDrop Lit/unimi/dsi/fastutil/longs/LongSet; +accessible field net/minecraft/server/level/ChunkMap modified Z +accessible field net/minecraft/server/level/ChunkMap unloadQueue Ljava/util/Queue; +accessible method net/minecraft/server/level/ChunkMap saveChunkIfNeeded (Lnet/minecraft/server/level/ChunkHolder;)Z +accessible field net/minecraft/server/level/ChunkMap chunkSaveCooldowns Lit/unimi/dsi/fastutil/longs/Long2LongMap; + +# Shadows +accessible field net/minecraft/client/renderer/ShaderInstance samplerLocations Ljava/util/List; + +# Particles +accessible field net/minecraft/client/particle/Particle xd D +accessible field net/minecraft/client/particle/Particle yd D +accessible field net/minecraft/client/particle/Particle zd D + +# Attributes +accessible field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; +mutable field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; + +# Entity Storage +accessible field net/minecraft/server/level/ServerLevel entityManager Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; +accessible field net/minecraft/world/level/entity/PersistentEntitySectionManager sectionStorage Lnet/minecraft/world/level/entity/EntitySectionStorage; + +# Lithum Compat +accessible class net/minecraft/server/level/ServerChunkCache$MainThreadExecutor + +# Entity Kicking +accessible field net/minecraft/world/entity/Entity levelCallback Lnet/minecraft/world/level/entity/EntityInLevelCallback; + +# Distance Manager +accessible class net/minecraft/server/level/ChunkMap$DistanceManager + +# Gizmo +accessible method net/minecraft/client/renderer/GameRenderer getFov (Lnet/minecraft/client/Camera;FZ)D + +# Sub-Level rendering +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection updateGlobalBlockEntities (Ljava/util/Collection;)V +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection setCompiled (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +accessible field net/minecraft/client/renderer/LevelRenderer cullingFrustum Lnet/minecraft/client/renderer/culling/Frustum; +accessible field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; +mutable field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; + +# Entity Getting +accessible method net/minecraft/world/level/Level getEntities ()Lnet/minecraft/world/level/entity/LevelEntityGetter; + +# Respawning +accessible class net/minecraft/server/level/ServerPlayer$RespawnPosAngle +accessible method net/minecraft/server/level/ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +accessible method net/minecraft/server/level/ServerPlayer findRespawnAndUseSpawnBlock (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; + +# Entity Riding +accessible method net/minecraft/world/entity/LivingEntity dismountVehicle (Lnet/minecraft/world/entity/Entity;)V +accessible field net/minecraft/world/entity/Entity removalReason Lnet/minecraft/world/entity/Entity$RemovalReason; + +extendable method net/minecraft/world/entity/Entity getEyePosition (F)Lnet/minecraft/world/phys/Vec3; +extendable method net/minecraft/world/entity/Entity setRemoved (Lnet/minecraft/world/entity/Entity$RemovalReason;)V + +#Abstract hurting projectile accel +accessible field net/minecraft/world/entity/projectile/AbstractHurtingProjectile accelerationPower D \ No newline at end of file diff --git a/fabric/build/resources/main/sable.mixins.json b/fabric/build/resources/main/sable.mixins.json new file mode 100644 index 0000000..ad2263a --- /dev/null +++ b/fabric/build/resources/main/sable.mixins.json @@ -0,0 +1,223 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_decal_render.LevelRendererMixin", + "camera.camera_rotation.CompassItemPropertyFunctionMixin", + "camera.camera_rotation.EntityMixin", + "camera.camera_rotation.GuiMixin", + "camera.camera_zoom.CameraMixin", + "camera.camera_zoom.MouseHandlerMixin", + "camera.new_camera_types.CameraTypeMixin", + "camera.new_camera_types.GameRendererMixin", + "camera.new_camera_types.MinecraftMixin", + "clip_overwrite.ClientLevelMixin", + "clip_overwrite.GameRendererMixin", + "compatibility.iris.ExtendedShaderMixin", + "config.GameRendererAccessor", + "debug_render.DebugRendererMixin", + "debug_render.DebugScreenOverlayMixin", + "debug_render.LevelRendererMixin", + "dynamic_directional_shading.AmbientOcclusionFaceMixin", + "dynamic_directional_shading.ModelBlockRendererCacheMixin", + "dynamic_directional_shading.ModelBlockRendererMixin", + "entity.entities_stick_sublevels.ClientPacketListenerMixin", + "entity.entities_stick_sublevels.EntityRenderDispatcherMixin", + "entity.entities_stick_sublevels.effects.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.RemotePlayerMixin", + "entity.entities_turn_with_sub_levels.GameRendererMixin", + "entity.entity_leashing.EntityRendererMixin", + "entity.entity_rendering.EntityRendererMixin", + "entity.entity_rendering.LevelRendererMixin", + "entity.entity_rendering.shadows.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.ClientPacketListenerMixin", + "entity.entity_rotations_and_riding.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.EntityRendererMixin", + "entity.entity_rotations_and_riding.LocalPlayerMixin", + "entity.entity_sublevel_collision.CameraMixin", + "entity.entity_swimming.CameraMixin", + "options.OptionsScreenMixin", + "particle.BlockMarkerMixin", + "particle.ClientLevelMixin", + "particle.FlameParticleMixin", + "particle.LevelRendererMixin", + "particle.ParticleEngineMixin", + "particle.ParticleMixin", + "particle.SuspendedParticleMixin", + "particle.TerrainParticleMixin", + "player_freezing.LocalPlayerMixin", + "plot.ClientChunkCacheMixin", + "plot.MinecraftMixin", + "plot.lighting.ClientPacketListenerMixin", + "plot.lighting.RenderChunkRegionMixin", + "punching.MinecraftMixin", + "punching.MultiPlayerGameModeMixin", + "respawn_point.sleeping.LivingEntityRendererMixin", + "sky_light_shadow.LevelRendererMixin", + "stop_rain.LevelRenderMixin", + "sublevel_render.BlockEntityRenderDispatcherMixin", + "sublevel_render.LevelRendererMixin", + "sublevel_render.RenderSectionAccessor", + "sublevel_render.RenderSectionMixin", + "sublevel_render.block_entity_render.LevelRendererMixin", + "sublevel_render.fancy.ProgramMixin", + "sublevel_render.impl.sodium.LevelRendererMixin", + "sublevel_render.impl.sodium.SodiumWorldRendererMixin", + "sublevel_render.impl.vanilla.LevelRendererMixin", + "sublevel_render.impl.vanilla.ViewAreaMixin", + "sublevel_render.impl.vanilla.water_occlusion.LevelRendererMixin", + "sublevel_sounds.AbstractSoundInstanceMixin", + "sublevel_sounds.ChannelAccessor", + "sublevel_sounds.ClientLevelMixin", + "sublevel_sounds.SoundEngineMixin", + "toast.IntegratedServerMixin", + "water_occlusion.CameraMixin", + "water_occlusion.FogRendererMixin", + "water_occlusion.GameRendererMixin" + ], + "mixins": [ + "assembly.AbstractFurnaceBlockEntityMixin", + "block_decal_render.ServerLevelMixin", + "block_placement.BlockPlaceContextMixin", + "block_placement.EntityGetterMixin", + "block_placement.UseOnContextMixin", + "block_properties.BlockStateMixin", + "chunk_container_replacement.LevelChunkSectionMixin", + "climbing_sub_levels.LivingEntityMixin", + "clip_overwrite.BlockGetterMixin", + "clip_overwrite.ClipContextMixin", + "clip_overwrite.EntityMixin", + "clip_overwrite.HitResultMixin", + "command.ArgumentTypeInfosMixin", + "command.DataCommandsMixin", + "command.ExecuteCommandMixin", + "compatibility.computercraft.WirelessNetworkMixin", + "compatibility.exposure.CameraPosesMixin", + "compatibility.exposure.CameraStandEntityMixin", + "compatibility.jade.BlockAccessorImplMixin", + "compatibility.jade.RayTracingMixin", + "compatibility.jadeaddons.CreatePluginMixin", + "compatibility.vista.LODMixin", + "compatibility.vista.ViewFinderAccessMixin", + "compatibility.vista.ViewFinderControllerMixin", + "death_message.CombatTrackerMixin", + "death_message.EntityMixin", + "enchanting_table.EnchantingTableBlockEntityMixin", + "entity.arrows_hit_blocks.AbstractArrowMixin", + "entity.entities_in_blocks.EntityMixin", + "entity.entities_stick_sublevels.EntityMixin", + "entity.entities_stick_sublevels.LivingEntityMixin", + "entity.entities_stick_sublevels.ServerEntityMixin", + "entity.entities_stick_sublevels.effects.EntityMixin", + "entity.entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosRotMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundTeleportEntityPacketMixin", + "entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketMixin", + "entity.entities_stick_sublevels.player.ServerGamePacketListenerImplMixin", + "entity.entities_stick_sublevels.player.ServerPlayerMixin", + "entity.entity_aabb_lookup.LevelsMixin", + "entity.entity_ai.EatBlockGoalMixin", + "entity.entity_collision.CollisionContextMixin", + "entity.entity_collision.EntityMixin", + "entity.entity_interaction.ProjectileUtilMixin", + "entity.entity_kicking.BlockMixin", + "entity.entity_kicking.ServerLevelMixin", + "entity.entity_leashing.LeashableMixin", + "entity.entity_pathfinding.FlyNodeEvaluatorMixin", + "entity.entity_pathfinding.GroundPathNavigationMixin", + "entity.entity_pathfinding.PathfindingContextMixin", + "entity.entity_pathfinding.PathMixin", + "entity.entity_pathfinding.PathNavigationMixin", + "entity.entity_pathfinding.RandomPosMixin", + "entity.entity_pathfinding.WalkNodeEvaluatorMixin", + "entity.entity_rotations_and_riding.BlockMixin", + "entity.entity_rotations_and_riding.EntityMixin", + "entity.entity_rotations_and_riding.EntityTypeMixin", + "entity.entity_rotations_and_riding.LivingEntityMixin", + "entity.entity_rotations_and_riding.PlayerMixin", + "entity.entity_rotations_and_riding.ServerEntityMixin", + "entity.entity_rotations_and_riding.ServerPlayerMixin", + "entity.entity_sublevel_collision.AbstractMinecartMixin", + "entity.entity_sublevel_collision.EntityMixin", + "entity.entity_sublevel_collision.ItemEntityMixin", + "entity.entity_sublevel_collision.LevelMixin", + "entity.entity_sublevel_collision.LivingEntityMixin", + "entity.entity_sublevel_collision.PlayerMixin", + "entity.entity_sublevel_collision.ServerGamePacketListenerImplMixin", + "entity.entity_tracking.TrackedEntityMixin", + "entity.entity_unloading.PersistentEntitySectionManagerMixin", + "entity.falling_block.FallingBlockEntityMixin", + "entity.projectile.ProjectileMixin", + "entity.server_entities_tick.ChunkMapMixin", + "entity.server_entities_tick.ServerLevelMixin", + "entity.sublevels_block_sky.SubLevelsBlockSkyMixin", + "entity.tamed_teleport.TamableAnimalMixin", + "entity.teleport_players.ServerPlayerMixin", + "entity.tnt_jumps.PrimedTntMixin", + "entity.trident.ThrownTridentMixin", + "explosion.ExplosionMixin", + "explosion.ServerLevelMixin", + "extension.EntityMixin", + "fluids_on_sub_levels.FlowingFluidMixin", + "game_test.GameTestInfoMixin", + "game_test.StructureUtilsMixin", + "game_test.TestCommandMixin", + "impact.BeehiveBlockMixin", + "impact.BellBlockMixin", + "impact.TntBlockMixin", + "interaction_distance.EntityMixin", + "interaction_distance.PlayerMixin", + "level_accelerator.ServerChunkCacheAccessor", + "particle.ServerLevelMixin", + "physics.ServerLevelMixin", + "player_freezing.PlayerListMixin", + "player_freezing.PlayerMixin", + "player_freezing.ServerPlayerMixin", + "plot.ChunkMapMixin", + "plot.LevelChunkMixin", + "plot.LevelsMixin", + "plot.PlayerListMixin", + "plot.ServerChunkCacheMixin", + "plot.ServerLevelMixin", + "plot.lighting.BlockAndTintGetterMixin", + "plot.lighting.LevelChunkMixin", + "plot.serialization.ChunkMapMixin", + "plot.serialization.LevelChunkTicksMixin", + "portal.EntityMixin", + "portal.NetherPortalBlockMixin", + "prevent_freezing.BiomeMixin", + "prevent_overgrowth.VineBlockMixin", + "punching.ItemInvoker", + "recoil.ProjectileDispenseBehaviorMixin", + "respawn_point.ServerPlayerMixin", + "respawn_point.sleeping.LivingEntityMixin", + "respawn_point.sleeping.ServerPlayerMixin", + "sculk_vibrations.EuclideanGameEventListenerRegistryMixin", + "sculk_vibrations.GameEventDispatcherMixin", + "sculk_vibrations.VibrationSystemListenerMixin", + "sculk_vibrations.VibrationSystemTickerMixin", + "sign_interaction.SignBlockEntityMixin", + "tracking_points.EntityMixin", + "tracking_points.ServerPlayerMixin", + "udp.ConnectionMixin", + "udp.MinecraftServerMixin", + "udp.PlayerListMixin", + "udp.ServerConnectionListenerMixin", + "voxel_shape_iteration.BitSetDiscreteVoxelShapeAccessor", + "voxel_shape_iteration.DiscreteVoxelShapeAccessor", + "voxel_shape_iteration.VoxelShapeMixin", + "water_occlusion.EntityMixin", + "water_occlusion.LevelsMixin", + "water_occlusion.WaterFluidMixin", + "world_border.LevelMixin", + "world_border.WorldBorderMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId7 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId7 new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId7 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId378 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId378 new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId378 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId6 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId6 new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId6 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId251 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId251 new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId251 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId274 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId274 new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId274 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId271 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId271 new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId271 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId168 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId168 new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId168 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId270 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId270 new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId270 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId299 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId299 new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId299 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId178 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId178 new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId178 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId266 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId266 new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId266 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId283 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId283 new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId283 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId129 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId129 new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId129 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId332 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId332 new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId332 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId121 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId121 new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId121 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId197 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId197 new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId197 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId36 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId36 new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId36 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId219 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId219 new file mode 100644 index 0000000..610565f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId219 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId134 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId134 new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId134 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId204 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId204 new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId204 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId50 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId50 new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId50 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId348 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId348 new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId348 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId210 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId210 new file mode 100644 index 0000000..128c930 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId210 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId243 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId243 new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId243 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId27 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId27 new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId27 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId342 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId342 new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId342 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId248 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId248 new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId248 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId282 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId282 new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId282 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId135 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId135 new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId135 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId102 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId102 new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId102 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId234 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId234 new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId234 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId8 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId8 new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId8 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId310 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId310 new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId310 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId169 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId169 new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId169 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId31 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId31 new file mode 100644 index 0000000..0d85b7b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId31 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId329 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId329 new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId329 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId95 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId95 new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId95 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId256 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId256 new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId256 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId175 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId175 new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId175 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId284 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId284 new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId284 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId53 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId53 new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId53 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId262 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId262 new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId262 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId148 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId148 new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId148 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId186 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId186 new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId186 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId296 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId296 new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId296 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId300 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId300 new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId300 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId199 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId199 new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId199 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId97 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId97 new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId97 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId98 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId98 new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId98 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId202 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId202 new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId202 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId82 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId82 new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId82 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId4 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId4 new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId4 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId159 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId159 new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId159 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId153 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId153 new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId153 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId309 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId309 new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId309 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId16 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId16 new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId16 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId101 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId101 new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId101 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId373 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId373 new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId373 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId379 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId379 new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId379 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId40 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId40 new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId40 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId330 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId330 new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId330 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId48 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId48 new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId48 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId182 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId182 new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId182 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId104 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId104 new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId104 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId1 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId1 new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId1 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId84 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId84 new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId84 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId281 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId281 new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId281 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId351 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId351 new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId351 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId57 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId57 new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId57 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId167 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId167 new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId167 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId288 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId288 new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId288 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId3 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId3 new file mode 100644 index 0000000..5ddaa5a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId3 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId215 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId215 new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId215 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId263 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId263 new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId263 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId88 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId88 new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId88 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId198 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId198 new file mode 100644 index 0000000..afc3c68 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId198 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId224 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId224 new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId224 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId285 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId285 new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId285 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId108 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId108 new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId108 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId118 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId118 new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId118 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId137 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId137 new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId137 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId207 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId207 new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId207 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId208 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId208 new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId208 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId209 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId209 new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId209 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId232 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId267 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId267 new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId267 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId333 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId333 new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId333 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId58 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId58 new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId58 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId237 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId237 new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId237 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId364 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId364 new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId364 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId87 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId87 new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId87 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId125 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId125 new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId125 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId20 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId20 new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId20 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId372 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId372 new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId372 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId56 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId56 new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId56 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId100 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId100 new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId100 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId142 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId142 new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId142 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId160 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId160 new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId160 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId291 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId291 new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId291 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId203 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId203 new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId203 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId314 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId314 new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId314 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePostPhysicsTickEvent.class.uniqueId109 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePostPhysicsTickEvent.class.uniqueId109 new file mode 100644 index 0000000..4b67806 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePostPhysicsTickEvent.class.uniqueId109 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePrePhysicsTickEvent.class.uniqueId193 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePrePhysicsTickEvent.class.uniqueId193 new file mode 100644 index 0000000..19d6290 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSablePrePhysicsTickEvent.class.uniqueId193 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSableSubLevelContainerReadyEvent.class.uniqueId19 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSableSubLevelContainerReadyEvent.class.uniqueId19 new file mode 100644 index 0000000..d0311f2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FabricSableSubLevelContainerReadyEvent.class.uniqueId19 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId106 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId106 new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId106 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId196 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId196 new file mode 100644 index 0000000..392731b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId196 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId316 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId316 new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId316 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId225 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId225 new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId225 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId258 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId258 new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId258 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId322 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId322 new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId322 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId221 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId221 new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId221 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId280 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId280 new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId280 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId42 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId42 new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId42 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId133 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId133 new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId133 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId201 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId201 new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId201 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId39 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId39 new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId39 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId381 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId381 new file mode 100644 index 0000000..bb940e6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId381 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId318 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId318 new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId318 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId15 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId15 new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId15 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId59 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId59 new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId59 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId365 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId365 new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId365 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId346 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId346 new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId346 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId179 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId179 new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId179 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId327 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId327 new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId327 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId370 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId370 new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId370 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId212 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId212 new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId212 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId366 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId366 new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId366 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId302 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId302 new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId302 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId357 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId357 new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId357 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId35 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId35 new file mode 100644 index 0000000..539603e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId35 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId54 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId54 new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId54 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId138 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId138 new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId138 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId352 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId352 new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId352 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId238 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId238 new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId238 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId240 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId240 new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId240 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId293 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId293 new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId293 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId5 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId5 new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId5 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId71 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId71 new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId71 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId227 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId227 new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId227 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId110 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId110 new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId110 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId155 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId155 new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId155 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId114 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId114 new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId114 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId120 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId120 new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId120 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId128 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId128 new file mode 100644 index 0000000..305bf51 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId128 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId140 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId140 new file mode 100644 index 0000000..a792a69 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId140 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId218 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId218 new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId218 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId247 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId247 new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId247 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId26 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId26 new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId26 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId289 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId289 new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId289 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId51 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId51 new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId51 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId260 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId260 new file mode 100644 index 0000000..84c41b1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId260 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId183 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId183 new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId183 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId213 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId213 new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId213 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId261 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId261 new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId261 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId33 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId33 new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId33 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId375 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId375 new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId375 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId55 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId55 new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId55 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId336 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId336 new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId336 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId205 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId205 new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId205 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId22 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId22 new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId22 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId226 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId226 new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId226 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId30 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId30 new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId30 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId320 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId320 new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId320 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId12 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId12 new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId12 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId70 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId70 new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId70 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId191 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId191 new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId191 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId290 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId290 new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId290 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId154 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId154 new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId154 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId157 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId157 new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId157 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId307 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId307 new file mode 100644 index 0000000..40f6084 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId307 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId111 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId111 new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId111 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId362 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId362 new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId362 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId304 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId304 new file mode 100644 index 0000000..78518da Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId304 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId339 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId339 new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId339 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId326 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId326 new file mode 100644 index 0000000..535056a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId326 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId116 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId116 new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId116 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId230 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId230 new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId230 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId246 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId246 new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId246 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId165 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId165 new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId165 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId11 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId11 new file mode 100644 index 0000000..d973816 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId11 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId367 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId367 new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId367 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId164 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId164 new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId164 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId37 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId37 new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId37 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId72 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId72 new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId72 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId145 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId145 new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId145 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId349 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId349 new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId349 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId358 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId38 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId38 new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId38 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId143 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId143 new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId143 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId180 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId180 new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId180 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId363 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId363 new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId363 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId66 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId66 new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId66 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId328 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId328 new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId328 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId211 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId211 new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId211 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId92 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId92 new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId92 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId235 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId235 new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId235 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId340 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId340 new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId340 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId24 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId24 new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId24 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId34 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId34 new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId34 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId14 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId14 new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId14 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId323 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId323 new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId323 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId287 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId287 new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId287 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId126 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId126 new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId126 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId44 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId44 new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId44 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId86 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId86 new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId86 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId64 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId64 new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId64 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId73 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId73 new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId73 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId192 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId192 new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId192 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId60 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId60 new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId60 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId220 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId220 new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId220 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId158 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId158 new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId158 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId10 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId10 new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId10 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId231 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId231 new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId231 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId32 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId32 new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId32 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId124 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId124 new file mode 100644 index 0000000..809312a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId124 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId115 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId115 new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId115 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId376 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId376 new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId376 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId239 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId239 new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId239 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId303 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId303 new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId303 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId117 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId117 new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId117 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId354 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId354 new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId354 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId269 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId269 new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId269 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId177 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId177 new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId177 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId301 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId301 new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId301 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId17 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId17 new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId17 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId61 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId61 new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId61 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId308 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId308 new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId308 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId334 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId334 new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId334 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId377 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId377 new file mode 100644 index 0000000..8544d48 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId377 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId368 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId368 new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId368 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId105 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId105 new file mode 100644 index 0000000..29d44d0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId105 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabric.class.uniqueId355 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabric.class.uniqueId355 new file mode 100644 index 0000000..c74cd9a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabric.class.uniqueId355 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient$1.class.uniqueId257 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient$1.class.uniqueId257 new file mode 100644 index 0000000..14828ce Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient$1.class.uniqueId257 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient.class.uniqueId253 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient.class.uniqueId253 new file mode 100644 index 0000000..4de8256 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableFabricClient.class.uniqueId253 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId29 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId29 new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId29 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId382 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId382 new file mode 100644 index 0000000..539578a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId382 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId278 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId278 new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId278 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId23 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId23 new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId23 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId374 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId374 new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId374 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId107 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId107 new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId107 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId371 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId371 new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId371 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId195 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId195 new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId195 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId43 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId43 new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId43 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId166 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId166 new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId166 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId41 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId41 new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId41 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId74 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId74 new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId74 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId69 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId69 new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId69 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId81 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId81 new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId81 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId347 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId347 new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId347 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId184 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId184 new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId184 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId45 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId45 new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId45 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId292 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId292 new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId292 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId272 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId272 new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId272 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId99 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId99 new file mode 100644 index 0000000..73a84dd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId99 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId187 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId187 new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId187 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId163 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId163 new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId163 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId132 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId132 new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId132 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId185 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId185 new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId185 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId103 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId103 new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId103 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId259 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId259 new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId259 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId75 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId75 new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId75 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId229 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId229 new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId229 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId233 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId233 new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId233 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId311 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId311 new file mode 100644 index 0000000..688d3c1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId311 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId46 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId46 new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId46 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId79 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId79 new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId79 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId112 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId112 new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId112 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId141 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId141 new file mode 100644 index 0000000..312294b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId141 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId149 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId149 new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId149 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId152 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId152 new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId152 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId252 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId252 new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId252 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId264 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId264 new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId264 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId337 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId337 new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId337 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId83 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId241 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId241 new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId241 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId63 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId63 new file mode 100644 index 0000000..5710c4f Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId63 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId13 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId13 new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId13 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId170 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId170 new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId170 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId343 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId343 new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId343 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId359 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId359 new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId359 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId335 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId335 new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId335 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId65 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId65 new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId65 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId228 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId228 new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId228 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId176 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId176 new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId176 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId96 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId96 new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId96 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId161 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId161 new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId161 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId245 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId245 new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId245 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId9 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId9 new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId9 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId321 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId321 new file mode 100644 index 0000000..909752d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId321 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId268 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId268 new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId268 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId151 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId151 new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId151 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId49 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId49 new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId49 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId214 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId214 new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId214 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId341 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId341 new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId341 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId254 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId254 new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId254 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId338 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId338 new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId338 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId275 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId275 new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId275 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId324 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId324 new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId324 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId369 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId369 new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId369 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId172 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId172 new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId172 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId147 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId147 new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId147 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId206 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId206 new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId206 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId217 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId217 new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId217 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId0 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId0 new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId0 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId188 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId188 new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId188 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId62 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId62 new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId62 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId345 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId345 new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId345 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId80 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId80 new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId80 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId265 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId265 new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId265 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId276 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId276 new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId276 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId89 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId89 new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId89 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId173 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId173 new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId173 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId250 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId250 new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId250 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId113 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId113 new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId113 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId295 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId295 new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId295 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId123 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId123 new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId123 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId78 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId78 new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId78 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId91 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId91 new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId91 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId122 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId122 new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId122 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId150 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId150 new file mode 100644 index 0000000..69e65dd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId150 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId52 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId52 new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId52 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId361 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId361 new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId361 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId139 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId139 new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId139 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId194 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId194 new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId194 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId77 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId77 new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId77 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId146 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId146 new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId146 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId249 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId249 new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId249 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId298 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId298 new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId298 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId171 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId171 new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId171 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId350 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId350 new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId350 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId94 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId94 new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId94 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId68 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId68 new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId68 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId319 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId319 new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId319 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId200 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId200 new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId200 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId127 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId127 new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId127 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId356 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId356 new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId356 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId344 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId344 new file mode 100644 index 0000000..198224c Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId344 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId25 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId25 new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId25 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId277 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId277 new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId277 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId315 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId315 new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId315 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId156 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId156 new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId156 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId85 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId85 new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId85 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId136 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId136 new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId136 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId242 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId242 new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId242 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId325 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId325 new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId325 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId223 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId223 new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId223 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId306 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId306 new file mode 100644 index 0000000..5455a00 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId306 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId190 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId190 new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId190 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId21 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId21 new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId21 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId144 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId144 new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId144 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId174 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId174 new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId174 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId286 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId286 new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId286 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId222 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId222 new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId222 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId279 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId279 new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId279 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId189 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId189 new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId189 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId90 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId90 new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId90 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId297 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId297 new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId297 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId360 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId360 new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId360 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId236 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId236 new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId236 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId119 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId119 new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId119 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId294 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId294 new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId294 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId255 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId255 new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId255 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId2 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId2 new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId2 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId93 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId93 new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId93 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId18 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId18 new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId18 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId273 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId273 new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId273 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId130 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId130 new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId130 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId312 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId312 new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId312 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId76 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId76 new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId76 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId47 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId47 new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId47 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId317 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId317 new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId317 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId67 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId67 new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId67 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId216 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId216 new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId216 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId162 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId162 new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId162 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId380 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId380 new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId380 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId181 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId181 new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId181 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId313 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId313 new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId313 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId28 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId28 new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId28 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId131 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId131 new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId131 differ diff --git a/fabric/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId331 b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId331 new file mode 100644 index 0000000..76465da --- /dev/null +++ b/fabric/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId331 @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/fabric/build/tmp/compileJava/previous-compilation-data.bin b/fabric/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000..9be1700 Binary files /dev/null and b/fabric/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/fabric/build/tmp/jar/MANIFEST.MF b/fabric/build/tmp/jar/MANIFEST.MF new file mode 100644 index 0000000..4452818 --- /dev/null +++ b/fabric/build/tmp/jar/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Specification-Title: Sable +Specification-Vendor: RyanHCode +Specification-Version: 1.2.2 +Implementation-Title: fabric +Implementation-Version: 1.2.2 +Implementation-Vendor: RyanHCode +Built-On-Minecraft: 1.21.1 + diff --git a/fabric/build/tmp/remapJar/MANIFEST.MF b/fabric/build/tmp/remapJar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/fabric/build/tmp/remapJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/fabric/build/tmp/remapSourcesJar/MANIFEST.MF b/fabric/build/tmp/remapSourcesJar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/fabric/build/tmp/remapSourcesJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/fabric/build/tmp/sourcesJar/MANIFEST.MF b/fabric/build/tmp/sourcesJar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/fabric/build/tmp/sourcesJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.java new file mode 100644 index 0000000..88aa8d7 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/ResourceReloadDelegate.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.fabric; + +import net.fabricmc.fabric.api.resource.IdentifiableResourceReloadListener; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.server.packs.resources.SimpleJsonResourceReloadListener; +import net.minecraft.util.profiling.ProfilerFiller; + +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; + +public class ResourceReloadDelegate implements IdentifiableResourceReloadListener { + private final ResourceLocation id; + private final SimpleJsonResourceReloadListener delegate; + + public ResourceReloadDelegate(final ResourceLocation id, final SimpleJsonResourceReloadListener delegate) { + this.id = id; + this.delegate = delegate; + } + + @Override + public ResourceLocation getFabricId() { + return this.id; + } + + @Override + public CompletableFuture reload(final PreparationBarrier preparationBarrier, final ResourceManager resourceManager, final ProfilerFiller preparationsProfiler, final ProfilerFiller reloadProfiler, final Executor backgroundExecutor, final Executor gameExecutor) { + return this.delegate.reload(preparationBarrier, resourceManager, preparationsProfiler, reloadProfiler, backgroundExecutor, gameExecutor); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/SableFabric.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/SableFabric.java new file mode 100644 index 0000000..3ca6104 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/SableFabric.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.fabric; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableCommonEvents; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.command.SableCommand; +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifiers; +import dev.ryanhcode.sable.index.SableAttributes; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinitionLoader; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import fuzs.forgeconfigapiport.fabric.api.neoforge.v4.NeoForgeConfigRegistry; +import net.fabricmc.api.ModInitializer; +import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; +import net.fabricmc.fabric.api.event.lifecycle.v1.ServerLifecycleEvents; +import net.fabricmc.fabric.api.resource.ResourceManagerHelper; +import net.minecraft.core.Registry; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.server.packs.PackType; +import net.neoforged.fml.config.ModConfig; + +public final class SableFabric implements ModInitializer { + + @Override + public void onInitialize() { + Sable.init(); + + CommandRegistrationCallback.EVENT.register((dispatcher, registryAccess, environment) -> { + SableCommand.register(dispatcher, registryAccess); + }); + + SubLevelSelectorModifiers.registerModifiers(); + + SableAttributes.PUNCH_STRENGTH = Registry.registerForHolder(BuiltInRegistries.ATTRIBUTE, Sable.sablePath(SableAttributes.PUNCH_STRENGTH_NAME), SableAttributes.PUNCH_STRENGTH_ATTRIBUTE); + SableAttributes.PUNCH_COOLDOWN = Registry.registerForHolder(BuiltInRegistries.ATTRIBUTE, Sable.sablePath(SableAttributes.PUNCH_COOLDOWN_NAME), SableAttributes.PUNCH_COOLDOWN_ATTRIBUTE); + SableAttributes.register(); + + final ResourceManagerHelper helper = ResourceManagerHelper.get(PackType.SERVER_DATA); + helper.registerReloadListener(new ResourceReloadDelegate(PhysicsBlockPropertiesDefinitionLoader.ID, PhysicsBlockPropertiesDefinitionLoader.INSTANCE)); + helper.registerReloadListener(new ResourceReloadDelegate(DimensionPhysicsData.ReloadListener.ID, DimensionPhysicsData.ReloadListener.INSTANCE)); + helper.registerReloadListener(new ResourceReloadDelegate(FloatingBlockMaterialDataHandler.ReloadListener.ID, FloatingBlockMaterialDataHandler.ReloadListener.INSTANCE)); + + ServerLifecycleEvents.SYNC_DATA_PACK_CONTENTS.register((player, joined) -> SableCommonEvents.syncDataPacket(packet -> player.connection.send(packet))); + + NeoForgeConfigRegistry.INSTANCE.register(Sable.MOD_ID, ModConfig.Type.COMMON, SableConfig.SPEC); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/client/SableFabricClient.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/client/SableFabricClient.java new file mode 100644 index 0000000..8a35be0 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/client/SableFabricClient.java @@ -0,0 +1,55 @@ +package dev.ryanhcode.sable.fabric.client; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.SableClientConfig; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.sublevel.render.SubLevelRenderer; +import fuzs.forgeconfigapiport.fabric.api.neoforge.v4.NeoForgeConfigRegistry; +import fuzs.forgeconfigapiport.fabric.api.neoforge.v4.NeoForgeModConfigEvents; +import net.fabricmc.api.ClientModInitializer; +import net.fabricmc.fabric.api.client.networking.v1.ClientPlayConnectionEvents; +import net.fabricmc.fabric.api.resource.IdentifiableResourceReloadListener; +import net.fabricmc.fabric.api.resource.ResourceManagerHelper; +import net.minecraft.resources.ResourceLocation; +import net.minecraft.server.packs.PackType; +import net.minecraft.server.packs.resources.ResourceManager; +import net.minecraft.util.profiling.ProfilerFiller; +import net.neoforged.fml.config.ModConfig; +import org.jetbrains.annotations.NotNull; + +import java.util.concurrent.CompletableFuture; +import java.util.concurrent.Executor; + +public final class SableFabricClient implements ClientModInitializer { + + @Override + public void onInitializeClient() { + SableClient.init(); + + ClientPlayConnectionEvents.DISCONNECT.register((handler, client) -> FloatingBlockMaterialDataHandler.clearMaterials()); + ResourceManagerHelper.get(PackType.CLIENT_RESOURCES).registerReloadListener(new IdentifiableResourceReloadListener() { + @Override + public ResourceLocation getFabricId() { + return Sable.sablePath("sub_level_renderer"); + } + + @Override + public @NotNull CompletableFuture reload(final PreparationBarrier preparationBarrier, final ResourceManager resourceManager, final ProfilerFiller profilerFiller, final ProfilerFiller profilerFiller2, final Executor executor, final Executor executor2) { + return SubLevelRenderer.getDispatcher().reload(preparationBarrier, resourceManager, profilerFiller, profilerFiller2, executor, executor2); + } + }); + + NeoForgeModConfigEvents.loading(Sable.MOD_ID).register(config -> { + if (config.getSpec().equals(SableClientConfig.SPEC)) + SableClientConfig.onUpdate(false); + }); + + NeoForgeModConfigEvents.reloading(Sable.MOD_ID).register(config -> { + if (config.getSpec().equals(SableClientConfig.SPEC)) + SableClientConfig.onUpdate(true); + }); + + NeoForgeConfigRegistry.INSTANCE.register(Sable.MOD_ID, ModConfig.Type.CLIENT, SableClientConfig.SPEC); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.java new file mode 100644 index 0000000..b92a07d --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePostPhysicsTickEvent.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.fabric.event; + +import dev.ryanhcode.sable.api.event.SablePostPhysicsTickEvent; +import net.fabricmc.fabric.api.event.Event; +import net.fabricmc.fabric.api.event.EventFactory; + +/** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is complete with a physics tick. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +@FunctionalInterface +public interface FabricSablePostPhysicsTickEvent extends SablePostPhysicsTickEvent { + Event EVENT = EventFactory.createArrayBacked(SablePostPhysicsTickEvent.class, (events) -> (system, timeStep) -> { + for (final SablePostPhysicsTickEvent event : events) { + event.postPhysicsTick(system, timeStep); + } + }); +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.java new file mode 100644 index 0000000..652f4f5 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSablePrePhysicsTickEvent.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.fabric.event; + +import dev.ryanhcode.sable.api.event.SablePrePhysicsTickEvent; +import net.fabricmc.fabric.api.event.Event; +import net.fabricmc.fabric.api.event.EventFactory; + +/** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is ticking physics. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +@FunctionalInterface +public interface FabricSablePrePhysicsTickEvent extends SablePrePhysicsTickEvent { + Event EVENT = EventFactory.createArrayBacked(SablePrePhysicsTickEvent.class, (events) -> (system, timeStep) -> { + for (final SablePrePhysicsTickEvent event : events) { + event.prePhysicsTick(system, timeStep); + } + }); +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.java new file mode 100644 index 0000000..99dc85f --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/event/FabricSableSubLevelContainerReadyEvent.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.fabric.event; + +import dev.ryanhcode.sable.api.event.SableSubLevelContainerReadyEvent; +import net.fabricmc.fabric.api.event.Event; +import net.fabricmc.fabric.api.event.EventFactory; + +/** + * Fired when Sable has finished initialization for a level and its sub-level container is ready to use. + */ +@FunctionalInterface +public interface FabricSableSubLevelContainerReadyEvent extends SableSubLevelContainerReadyEvent { + Event EVENT = EventFactory.createArrayBacked(SableSubLevelContainerReadyEvent.class, (events) -> (level, container) -> { + for (final SableSubLevelContainerReadyEvent event : events) { + event.onSubLevelContainerReady(level, container); + } + }); +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.java new file mode 100644 index 0000000..55a24ef --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelChunkMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.fabric.mixin.assembly; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import dev.ryanhcode.sable.fabric.mixinterface.LevelExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.chunk.LevelChunk; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(LevelChunk.class) +public class LevelChunkMixin { + + @WrapOperation(method = "setBlockState", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/block/state/BlockState;onPlace(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;Z)V")) + public void cancelOnPlace(final BlockState instance, final Level level, final BlockPos pos, final BlockState state, final boolean isMoving, final Operation original) { + if (!((LevelExtension) level).sable$isIgnoreOnPlace()) { + original.call(instance, level, pos, state, isMoving); + } + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.java new file mode 100644 index 0000000..3120399 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/assembly/LevelMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.fabric.mixin.assembly; + +import dev.ryanhcode.sable.fabric.mixinterface.LevelExtension; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(Level.class) +public class LevelMixin implements LevelExtension { + + @Unique + private boolean sable$ignoreOnPlace; + + @Override + public boolean sable$isIgnoreOnPlace() { + return this.sable$ignoreOnPlace; + } + + @Override + public void sable$setIgnoreOnPlace(final boolean ignore) { + this.sable$ignoreOnPlace = ignore; + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.java new file mode 100644 index 0000000..9ac8dee --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/block_outline_render/LevelRendererMixin.java @@ -0,0 +1,102 @@ +package dev.ryanhcode.sable.fabric.mixin.block_outline_render; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.block_outline_render.SubLevelCamera; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Quaternionf; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Debug; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Transforms block hover outlines for sublevels. + */ +@Debug(export = true) +@Mixin(value = LevelRenderer.class, priority = 400) +// Make sure this applies first so the camera can be modified +public abstract class LevelRendererMixin { + + // Storage vectors to avoid repeated allocation + private final @Unique Quaternionf sable$orientationStorage = new Quaternionf(); + private final @Unique SubLevelCamera sable$sublevelCamera = new SubLevelCamera(); + + @Shadow + @Nullable + private ClientLevel level; + + @Inject(method = "renderLevel", at = @At("HEAD")) + public void modifyCamera(final CallbackInfo ci, @Local(argsOnly = true) final LocalRef cameraRef) { + this.sable$sublevelCamera.setCamera(cameraRef.get()); + this.sable$sublevelCamera.setPose(null); + cameraRef.set(this.sable$sublevelCamera); + } + + @Inject(method = "renderLevel", at = @At("TAIL")) + public void clearCamera(final CallbackInfo ci, @Local(argsOnly = true) final LocalRef cameraRef) { + // This is important to make sure events fired after this mixin still have access to the camera + cameraRef.set(this.sable$sublevelCamera.getRenderCamera()); + this.sable$sublevelCamera.clear(); + } + + @WrapOperation(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;renderHitOutline(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V")) + private void sable$preRenderHitOutline(final LevelRenderer instance, final PoseStack poseStack, final VertexConsumer consumer, final Entity entity, final double camX, final double camY, final double camZ, final BlockPos pos, final BlockState state, final Operation original, @Local(argsOnly = true) final Camera camera) { + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, pos); + + if (subLevel == null) { + original.call(instance, poseStack, consumer, entity, camX, camY, camZ, pos, state); + return; + } + + poseStack.pushPose(); + + final Pose3dc pose = subLevel.renderPose(); + + this.sable$sublevelCamera.setPose(pose); + final Vec3 cameraPosition = this.sable$sublevelCamera.getPosition(); + + final Vector3dc position = pose.position(); + final Vector3dc rotationPoint = pose.rotationPoint(); + final Quaterniondc orientation = pose.orientation(); + final Vector3dc scale = pose.scale(); + + poseStack.translate( + (float) (position.x() - camX), + (float) (position.y() - camY), + (float) (position.z() - camZ) + ); + poseStack.mulPose(this.sable$orientationStorage.set(orientation)); + poseStack.translate( + (float) -(rotationPoint.x() - cameraPosition.x), + (float) -(rotationPoint.y() - cameraPosition.y), + (float) -(rotationPoint.z() - cameraPosition.z) + ); + poseStack.scale((float) scale.x(), (float) scale.y(), (float) scale.z()); + + original.call(instance, poseStack, consumer, entity, cameraPosition.x, cameraPosition.y, cameraPosition.z, pos, state); + + poseStack.popPose(); + + this.sable$sublevelCamera.setPose(null); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.java new file mode 100644 index 0000000..b84b273 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/camera_rotation/CameraMixin.java @@ -0,0 +1,81 @@ +package dev.ryanhcode.sable.fabric.mixin.camera_rotation; + +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.world.entity.Entity; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.joml.Vector3f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Camera.class) +public abstract class CameraMixin { + + @Shadow + @Final + private Quaternionf rotation; + + @Shadow + @Final + private static Vector3f FORWARDS; + + @Shadow + @Final + private static Vector3f UP; + + @Shadow + @Final + private static Vector3f LEFT; + + @Shadow + @Final + private Vector3f left; + + @Shadow + @Final + private Vector3f up; + + @Shadow + @Final + private Vector3f forwards; + + @Shadow + private float yRot; + + @Shadow + private float xRot; + + @Shadow private Entity entity; + + @Shadow @Deprecated protected abstract void setRotation(float f, float g); + + @Redirect(method = "setup", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setRotation(FF)V", ordinal = 1)) + private void sable$redirectSetRotation(final Camera camera, final float f, final float g) { + this.setRotation(this.entity.getViewYRot(f) + 180.0f, -this.entity.getViewXRot(f)); + } + + @Inject(method = "setRotation", at = @At(value = "INVOKE", target = "Lorg/joml/Quaternionf;rotationYXZ(FFF)Lorg/joml/Quaternionf;", shift = At.Shift.AFTER, remap = false)) + public void sable$rotateView(final float f, final float g, final CallbackInfo ci) { + final float pt = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + final Quaterniond ridingOrientation = EntitySubLevelRotationHelper.getEntityOrientation(this.entity, (x) -> ((ClientSubLevel) x).renderPose(), pt, EntitySubLevelRotationHelper.Type.CAMERA); + + if (ridingOrientation != null) { + this.rotation.premul(new Quaternionf(ridingOrientation)); + FORWARDS.rotate(this.rotation, this.forwards); + UP.rotate(this.rotation, this.up); + LEFT.rotate(this.rotation, this.left); + + final Vector3f euler = this.rotation.getEulerAnglesYXZ(new Vector3f()); + this.yRot = (float) Math.toDegrees(euler.y); + this.xRot = (float) Math.toDegrees(euler.x); + } + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.java new file mode 100644 index 0000000..fd9f8c0 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/compatibility/sodiumextras/EmbyToolsMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.fabric.mixin.compatibility.sodiumextras; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import toni.sodiumextras.EmbyTools; + +@Mixin(EmbyTools.class) +public class EmbyToolsMixin { + + /** + * @author Ocelot + * @reason Take into account sub-levels + */ + @Overwrite + public static boolean isEntityWithinDistance(final BlockPos bePos, final Vec3 camVec, final int maxHeight, final int maxDistanceSquare) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, bePos.getX() + 0.5, bePos.getY() + 0.5, bePos.getZ() + 0.5, camVec.x, camVec.y, camVec.z) < maxDistanceSquare; + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.java new file mode 100644 index 0000000..5a5034d --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/dynamic_directional_shading/SectionCompilerMixin.java @@ -0,0 +1,37 @@ +package dev.ryanhcode.sable.fabric.mixin.dynamic_directional_shading; + +import com.mojang.blaze3d.vertex.VertexSorting; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.SectionBufferBuilderPack; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.client.renderer.chunk.RenderChunkRegion; +import net.minecraft.client.renderer.chunk.SectionCompiler; +import net.minecraft.core.SectionPos; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(SectionCompiler.class) +public class SectionCompilerMixin { + + @Inject(method = "compile", at = @At(value = "HEAD")) + private void sable$preCompile(final SectionPos sectionPos, final RenderChunkRegion renderChunkRegion, final VertexSorting vertexSorting, final SectionBufferBuilderPack sectionBufferBuilderPack, final CallbackInfoReturnable cir) { + final ClientLevel level = Minecraft.getInstance().level; + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + final LevelPlot plot = container.getPlot(sectionPos.chunk()); + + ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$setOnSubLevel(plot != null); + } + + @Inject(method = "compile", at = @At("TAIL")) + private void sable$postCompile(final SectionPos sectionPos, final RenderChunkRegion renderChunkRegion, final VertexSorting vertexSorting, final SectionBufferBuilderPack sectionBufferBuilderPack, final CallbackInfoReturnable cir) { + ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$setOnSubLevel(false); + } + +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java new file mode 100644 index 0000000..a08ce32 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.fabric.mixin.entities_stick_sublevels.effects; + +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity { + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * Changes the blockpos offset to use getOnPos + */ + @Redirect(method = "playBlockFallSound", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;")) + private BlockState playBlockFallSound(final Level instance, final BlockPos blockPos) { + return instance.getBlockState(this.getOnPos(0.2f)); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.java new file mode 100644 index 0000000..af972b1 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/fix_bundle_packet/ClientPacketListenerMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.fabric.mixin.fix_bundle_packet; + +import net.minecraft.client.multiplayer.ClientPacketListener; +import net.minecraft.network.PacketListener; +import net.minecraft.network.protocol.Packet; +import net.minecraft.util.thread.BlockableEventLoop; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ClientPacketListener.class) +public class ClientPacketListenerMixin { + + @Redirect(method = "handleBundlePacket", at = @At(value = "INVOKE", target = "Lnet/minecraft/network/protocol/PacketUtils;ensureRunningOnSameThread(Lnet/minecraft/network/protocol/Packet;Lnet/minecraft/network/PacketListener;Lnet/minecraft/util/thread/BlockableEventLoop;)V")) + public void handleOnCorrectThread(final Packet packet, final T processor, final BlockableEventLoop executor) { + // FIXME this sucks, implement actual fix into fabric API + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.java new file mode 100644 index 0000000..e42e812 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixin/sound/MovingSoundInstanceDelegateMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.fabric.mixin.sound; + +import dev.ryanhcode.sable.sound.MovingSoundInstanceDelegate; +import net.minecraft.client.resources.sounds.SoundInstance; +import net.minecraft.client.sounds.AudioStream; +import net.minecraft.client.sounds.SoundBufferLibrary; +import net.minecraft.resources.ResourceLocation; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.concurrent.CompletableFuture; + +@Mixin(MovingSoundInstanceDelegate.class) +public abstract class MovingSoundInstanceDelegateMixin implements SoundInstance { + + @Shadow + public SoundInstance instance; + + @Override + public CompletableFuture getAudioStream(final SoundBufferLibrary loader, final ResourceLocation id, final boolean repeatInstantly) { + return this.instance.getAudioStream(loader, id, repeatInstantly); + } + +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.java new file mode 100644 index 0000000..ba0c913 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/mixinterface/LevelExtension.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.fabric.mixinterface; + +public interface LevelExtension { + + boolean sable$isIgnoreOnPlace(); + + void sable$setIgnoreOnPlace(boolean ignore); +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.java new file mode 100644 index 0000000..d9c97a7 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableAssemblyPlatformImpl.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.fabric.mixinterface.LevelExtension; +import dev.ryanhcode.sable.platform.SableAssemblyPlatform; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableAssemblyPlatformImpl implements SableAssemblyPlatform { + + @Override + public void setIgnoreOnPlace(final Level level, final boolean ignore) { + ((LevelExtension) level).sable$setIgnoreOnPlace(ignore); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.java new file mode 100644 index 0000000..1747e55 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableChunkEventPlatformImpl.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.platform.SableChunkEventPlatform; +import net.fabricmc.fabric.api.client.event.lifecycle.v1.ClientChunkEvents; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.world.level.chunk.LevelChunk; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableChunkEventPlatformImpl implements SableChunkEventPlatform { + + @Override + public void onChunkPacketReplaced(final LevelChunk chunk) { + ClientChunkEvents.CHUNK_LOAD.invoker().onChunkLoad((ClientLevel) chunk.getLevel(), chunk); + } + + @Override + public void onOldChunkInvalid(final LevelChunk chunk) { + ClientChunkEvents.CHUNK_UNLOAD.invoker().onChunkUnload((ClientLevel) chunk.getLevel(), chunk); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.java new file mode 100644 index 0000000..9a51cdd --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPlatformImpl.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.api.event.SablePostPhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SablePrePhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.fabric.event.FabricSablePostPhysicsTickEvent; +import dev.ryanhcode.sable.fabric.event.FabricSablePrePhysicsTickEvent; +import dev.ryanhcode.sable.fabric.event.FabricSableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.platform.SableEventPlatform; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableEventPlatformImpl implements SableEventPlatform { + + @Override + public void onSubLevelContainerReady(final SableSubLevelContainerReadyEvent event) { + FabricSableSubLevelContainerReadyEvent.EVENT.register(event); + } + + @Override + public void onPhysicsTick(final SablePrePhysicsTickEvent event) { + FabricSablePrePhysicsTickEvent.EVENT.register(event); + } + + @Override + public void onPostPhysicsTick(final SablePostPhysicsTickEvent event) { + FabricSablePostPhysicsTickEvent.EVENT.register(event); + } + +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.java new file mode 100644 index 0000000..f42424b --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableEventPublishPlatformImpl.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.fabric.event.FabricSablePostPhysicsTickEvent; +import dev.ryanhcode.sable.fabric.event.FabricSablePrePhysicsTickEvent; +import dev.ryanhcode.sable.fabric.event.FabricSableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.platform.SableEventPublishPlatform; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableEventPublishPlatformImpl implements SableEventPublishPlatform { + + /** + * Called when a sub-level container is ready to use. + * + * @param level The level instance + * @param container The sub-level container that is ready + */ + @Override + public void onSubLevelContainerReady(final Level level, final SubLevelContainer container) { + FabricSableSubLevelContainerReadyEvent.EVENT.invoker().onSubLevelContainerReady(level, container); + } + + /** + * Called when a sub-level container is ready to use. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + @Override + public void prePhysicsTick(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + FabricSablePrePhysicsTickEvent.EVENT.invoker().prePhysicsTick(physicsSystem, timeStep); + } + + /** + * Fired when Sable's {@link SubLevelPhysicsSystem} is complete with a physics tick. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + @Override + public void postPhysicsTick(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + FabricSablePostPhysicsTickEvent.EVENT.invoker().postPhysicsTick(physicsSystem, timeStep); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.java new file mode 100644 index 0000000..c5711e9 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableLoaderPlatformImpl.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.platform.SableLoaderPlatform; +import net.fabricmc.loader.api.FabricLoader; + +public class SableLoaderPlatformImpl implements SableLoaderPlatform { + @Override + public String getModVersion(final String modId) { + return FabricLoader.getInstance() + .getModContainer(modId) + .orElseThrow() + .getMetadata() + .getVersion() + .getFriendlyString(); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.java new file mode 100644 index 0000000..e453983 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlatformImpl.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.platform.SablePlatform; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +@ApiStatus.Internal +public class SablePlatformImpl implements SablePlatform { + + @Override + public boolean isWrappedLevel(@Nullable final Level level) { + return false; + } + + @Override + public boolean isBlockstateLadder(BlockState state, Level level, BlockPos pos, LivingEntity entity) { + return false; //handled already for fabric + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.java new file mode 100644 index 0000000..d9c97f7 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SablePlotPlatformImpl.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.fabric.platform; + +import dev.ryanhcode.sable.platform.SablePlotPlatform; +import net.fabricmc.fabric.impl.attachment.AttachmentTargetImpl; +import net.minecraft.core.RegistryAccess; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.chunk.LevelChunk; + +@SuppressWarnings("UnstableApiUsage") +public class SablePlotPlatformImpl implements SablePlotPlatform { + + @Override + public void readLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + // no-op + } + + @Override + public void readChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + ((AttachmentTargetImpl) chunk).fabric_readAttachmentsFromNbt(tag, registryAccess); + } + + @Override + public void postLoad(final CompoundTag tag, final LevelChunk chunk) { + // no-op + } + + @Override + public void writeLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + // no-op + } + + @Override + public void writeChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + ((AttachmentTargetImpl) chunk).fabric_writeAttachmentsToNbt(tag, registryAccess); + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.java b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.java new file mode 100644 index 0000000..4c7a9ed --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/fabric/platform/SableSubLevelRenderPlatformImpl.java @@ -0,0 +1,37 @@ +package dev.ryanhcode.sable.fabric.platform; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform; +import dev.ryanhcode.sable.sublevel.render.vanilla.SingleBlockSubLevelWrapper; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ItemBlockRenderTypes; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +@ApiStatus.Internal +public class SableSubLevelRenderPlatformImpl implements SableSubLevelRenderPlatform { + + @Override + public void tesselateBlock(final SingleBlockSubLevelWrapper blockAndTintGetter, final BakedModel bakedModel, final BlockState blockState, final BlockPos pos, final PoseStack poseStack, final VertexConsumer vertexConsumer, final RandomSource randomSource, final long seed, final int packedOverlay, @Nullable final RenderType renderType) { + Minecraft.getInstance().getBlockRenderer().modelRenderer.tesselateWithoutAO(blockAndTintGetter, bakedModel, blockState, pos, poseStack, vertexConsumer, true, randomSource, seed, packedOverlay); + } + + @Override + public List getRenderLayers(final SingleBlockSubLevelWrapper blockAndTintGetter, final BakedModel bakedModel, final BlockState blockState, final BlockPos pos, final RandomSource randomSource) { + return List.of(ItemBlockRenderTypes.getChunkRenderType(blockState)); + } + + @Override + public void tryAddFlywheelVisual(final BlockEntity blockEntity) { + // no-op + } +} diff --git a/fabric/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java b/fabric/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java new file mode 100644 index 0000000..784f1e4 --- /dev/null +++ b/fabric/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.plugin; + +import dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin; +import org.objectweb.asm.tree.ClassNode; +import org.spongepowered.asm.mixin.extensibility.IMixinInfo; + +public class SableMixinPlugin extends AbstractSableMixinPlugin { + @Override + public void preApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + super.preApply(targetClassName, targetClass, mixinClassName, mixinInfo); + } + + @Override + public void postApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + super.postApply(targetClassName, targetClass, mixinClassName, mixinInfo); + } +} diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform new file mode 100644 index 0000000..0f40e4c --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableAssemblyPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform new file mode 100644 index 0000000..4a8cd15 --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableChunkEventPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform new file mode 100644 index 0000000..265b9e1 --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableEventPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform new file mode 100644 index 0000000..e56f999 --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableEventPublishPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform new file mode 100644 index 0000000..6cc92af --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableLoaderPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform new file mode 100644 index 0000000..ad649f4 --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SablePlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform new file mode 100644 index 0000000..166f56e --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SablePlotPlatformImpl \ No newline at end of file diff --git a/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform new file mode 100644 index 0000000..f7c39b3 --- /dev/null +++ b/fabric/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.fabric.platform.SableSubLevelRenderPlatformImpl diff --git a/fabric/src/main/resources/fabric.mod.json b/fabric/src/main/resources/fabric.mod.json new file mode 100644 index 0000000..2b988b4 --- /dev/null +++ b/fabric/src/main/resources/fabric.mod.json @@ -0,0 +1,52 @@ +{ + "schemaVersion": 1, + "id": "${mod_id}", + "version": "${version}", + "name": "${mod_name}", + "description": "${description}", + "authors": [ + "${mod_author}" + ], + "contact": { + "sources": "https://github.com/ryanhcode/sable-companion", + "issues": "${issues}" + }, + "accessWidener": "sable.accesswidener", + "license": "${license}", + "icon": "icon.png", + "environment": "*", + "entrypoints": { + "main": [ + "dev.ryanhcode.sable.fabric.SableFabric" + ], + "client": [ + "dev.ryanhcode.sable.fabric.client.SableFabricClient" + ] + }, + "mixins": [ + "${mod_id}.mixins.json", + "${mod_id}-fabric.mixins.json" + ], + "depends": { + "fabricloader": ">=${fabric_loader_version}", + "minecraft": "${minecraft_version}", + "java": ">=${java_version}", + "veil": ">=${veil_version}", + "fabric-command-api-v2": ">=${fabric_version}", + "fabric-lifecycle-events-v1": ">=${fabric_version}", + "fabric-resource-loader-v0": ">=${fabric_version}", + "fabric-convention-tags-v2": ">=${fabric_version}" + }, + "custom": { + "lithium:options": { + "mixin.entity.collisions.unpushable_cramming": false, + "mixin.world.chunk_access": false, + "mixin.world.chunk_ticking": false, + "mixin.world.tick_scheduler": false + } + }, + "breaks": { + "scalablelux": "*", + "sablecompanion": "<${sable_companion_version}" + } +} diff --git a/fabric/src/main/resources/icon.png b/fabric/src/main/resources/icon.png new file mode 100644 index 0000000..5419332 Binary files /dev/null and b/fabric/src/main/resources/icon.png differ diff --git a/fabric/src/main/resources/sable-fabric.mixins.json b/fabric/src/main/resources/sable-fabric.mixins.json new file mode 100644 index 0000000..5b12c1b --- /dev/null +++ b/fabric/src/main/resources/sable-fabric.mixins.json @@ -0,0 +1,23 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.fabric.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_outline_render.LevelRendererMixin", + "camera_rotation.CameraMixin", + "compatibility.sodiumextras.EmbyToolsMixin", + "dynamic_directional_shading.SectionCompilerMixin", + "fix_bundle_packet.ClientPacketListenerMixin", + "sound.MovingSoundInstanceDelegateMixin" + ], + "mixins": [ + "assembly.LevelChunkMixin", + "assembly.LevelMixin", + "entities_stick_sublevels.effects.LivingEntityMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/gradle.properties b/gradle.properties new file mode 100644 index 0000000..2662ba0 --- /dev/null +++ b/gradle.properties @@ -0,0 +1,64 @@ +version=1.2.2 +group=dev.ryanhcode.sable +java_version=21 + +# Mod properties +minecraft_version=1.21.1 +mod_name=Sable +mod_author=RyanHCode +mod_id=sable +credits=Ocelot, Eriksonn, Cyvack, Bee, Kyan, Cake, Rhyguy1 +license=PolyForm Shield License 1.0.0 +description=Interactive moving block structures with physics. +issues=https://github.com/ryanhcode/sable/issues +minecraft_version_range=[1.21.1] + +## This is the version of minecraft that the 'common' project uses, you can find a list of all versions here +## https://projects.neoforged.net/neoforged/neoform +neo_form_version=1.21.1-20240808.144430 + +# The version of ParchmentMC that is used, see https://parchmentmc.org/docs/getting-started#choose-a-version for new versions +parchment_minecraft=1.21 +parchment_version=2024.11.10 + +# Fabric, see https://fabricmc.net/develop/ for new versions +fabric_version=0.110.0+1.21.1 +fabric_loader_version=0.16.9 + +# NeoForge, see https://projects.neoforged.net/neoforged/neoforge for new versions +neoforge_version=21.1.219 +neoforge_loader_version_range=[4,) + +# Dependencies +sable_companion_version=1.6.0 +forgeconfigapiport_version=21.1.3 +veil_version=4.0.0 +imguimc_version=1.1.0 + +## Create +create_version=6.0.10-280 +ponder_version=1.0.82 +flywheel_version=1.0.6 +registrate_version=MC1.21-1.3.0+67 +aeronautics_version=YhZLrAFC +## + +# Various compatability +cc_tweaked_version=1.113.1 +exposure_version=1.9.11 +jade_version=15.10.3 +jade_addons_version=6.1.0 +moonlight_version=1.21-2.29.19 +vista_version=7705557 +backpacks_for_dummies_version=6dBgyYdr +pmweather_version=0.13.10-alpha +sodium_version=mc1.21.1-0.6.13-neoforge +iris_version=1.8.12+1.21.1-neoforge +distant_horizons_version=2.2.1-a-1.21.1 +nml_version=1.4.3 +sodiumextras_version=1.0.8 + +loom.ignoreDependencyLoomVersionValidation=true + +org.gradle.jvmargs=-Xmx4G +org.gradle.parallel=true diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..d997cfc 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..1a70468 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-9.5.0-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100644 index 0000000..0262dcb --- /dev/null +++ b/gradlew @@ -0,0 +1,248 @@ +#!/bin/sh + +# +# Copyright © 2015 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/b631911858264c0b6e4d6603d677ff5218766cee/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + + + +# 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 + if ! command -v java >/dev/null 2>&1 + then + 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 +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..c4bdd3a --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,93 @@ +@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 +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/neoforge/build.gradle b/neoforge/build.gradle new file mode 100644 index 0000000..5225226 --- /dev/null +++ b/neoforge/build.gradle @@ -0,0 +1,106 @@ +plugins { + id 'me.modmuss50.mod-publish-plugin' + id 'multiloader-loader' + id 'net.neoforged.moddev' +} + +neoForge { + version = neoforge_version + // Automatically enable neoforge AccessTransformers if the file exists + def at = project(':common').file('src/main/resources/META-INF/accesstransformer.cfg') + if (at.exists()) { + accessTransformers.from(at.absolutePath) + } + parchment { + minecraftVersion = parchment_minecraft + mappingsVersion = parchment_version + } + runs { + configureEach { + systemProperty("neoforge.enabledGameTestNamespaces", mod_id.toString()) + ideName = "NeoForge ${it.name.capitalize()} (${project.path})" // Unify the run config names with fabric + } + client { + client() + } + server { + server() + } + gameTest { + type = "gameTestServer" + gameDirectory = project.file("build/gametest") + } + + clientMixinExport { + client() + ideName = "NeoForge Client | Mixin Export (${project.path})" + systemProperty("mixin.debug.export", "true") + } + serverMixinExport { + server() + ideName = "NeoForge Server | Mixin Export (${project.path})" + systemProperty("mixin.debug.export", "true") + } + } + mods { + "${mod_id}" { + sourceSet sourceSets.main + } + } +} + +sourceSets.main.resources { srcDir 'src/generated/resources' } + +repositories { + mavenLocal() + + maven { + name = 'NeoForged' + url = 'https://maven.neoforged.net/releases' + } + + maven { + name = "Mortuusars Github Maven" + url = "https://raw.githubusercontent.com/mortuusars/resources/main/maven/" + } +} + +dependencies { + jarJar(api("dev.ryanhcode.sable-companion:sable-companion-common-${project.minecraft_version}:[${project.sable_companion_version},)")) { + version { + prefer project.sable_companion_version + } + } + + compileOnly "maven.modrinth:distanthorizons:$rootProject.distant_horizons_version" + runtimeOnly "maven.modrinth:distanthorizons:$rootProject.distant_horizons_version" + compileOnly "maven.modrinth:backpacks-for-dummies:$rootProject.backpacks_for_dummies_version" + + compileOnly("com.simibubi.create:create-${minecraft_version}:${create_version}") { transitive = false } + runtimeOnly("com.simibubi.create:create-${minecraft_version}:${create_version}") { transitive = false } + compileOnly("net.createmod.ponder:ponder-neoforge:${ponder_version}+mc${minecraft_version}") + runtimeOnly("net.createmod.ponder:ponder-neoforge:${ponder_version}+mc${minecraft_version}") + compileOnly("dev.engine-room.flywheel:flywheel-neoforge-api-${minecraft_version}:${flywheel_version}") + compileOnly("dev.engine-room.flywheel:flywheel-neoforge-${minecraft_version}:${flywheel_version}") + runtimeOnly("dev.engine-room.flywheel:flywheel-neoforge-${minecraft_version}:${flywheel_version}") + compileOnly("com.tterrag.registrate:Registrate:${registrate_version}") + runtimeOnly("com.tterrag.registrate:Registrate:${registrate_version}") + runtimeOnly("maven.modrinth:create-aeronautics:${aeronautics_version}") + + compileOnly("maven.modrinth:protomanlys-weather:${pmweather_version}") + compileOnly("io.github.mortuusars.exposure:exposure-${minecraft_version}-neoforge:${exposure_version}") { transitive = false } + compileOnly("maven.modrinth:jade:${project.jade_version}+neoforge") { transitive = false } + compileOnly("maven.modrinth:jade-addons-forge:${project.jade_addons_version}+neoforge") { transitive = false } + + compileOnly "maven.modrinth:sodium:$sodium_version" + runtimeOnly "maven.modrinth:sodium:$sodium_version" + compileOnly("maven.modrinth:iris:$iris_version") { transitive = false } + compileOnly("maven.modrinth:sodium-extras:neoforge-${minecraft_version}-$sodiumextras_version") { transitive = false } + runtimeOnly("maven.modrinth:sodium-extras:neoforge-${minecraft_version}-$sodiumextras_version") { transitive = false } + + jarJar(api("foundry.veil:veil-neoforge-${project.minecraft_version}:${project.veil_version}") { + exclude group: "maven.modrinth" + exclude group: "me.fallenbreath" + }) + compileOnly("foundry.imguimc:imguimc-neoforge-${project.minecraft_version}:${project.imguimc_version}") +} diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/ActiveSableCompanion.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/Sable.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/Sable.class new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/Sable.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClient.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClient.class new file mode 100644 index 0000000..c666468 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClient.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableClientConfig.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableCommonEvents.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class new file mode 100644 index 0000000..89b8a65 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/SableConfig.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class new file mode 100644 index 0000000..c0e73eb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/annotation/MixinModVersionConstraint.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$AssemblyTransform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$FrontierPredicate.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult$State.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper$GatherResult.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelAssemblyHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper$EntityRot.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/SubLevelHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelActor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class new file mode 100644 index 0000000..1026631 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockEntitySubLevelReactionWheel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class new file mode 100644 index 0000000..aae566b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelAssemblyListener.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class new file mode 100644 index 0000000..c9ed17b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCollisionShape.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class new file mode 100644 index 0000000..af4022d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelCustomCenterOfMass.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class new file mode 100644 index 0000000..733d33c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelDynamicCollider.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class new file mode 100644 index 0000000..610565f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider$LiftProviderGroup.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockSubLevelLiftProvider.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class new file mode 100644 index 0000000..3464c21 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/BlockWithSubLevelCollisionCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntityPropeller.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/block/propeller/BlockEntitySubLevelPropellerActor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SableCommandHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info$Template.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType$Info.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/command/SubLevelArgumentType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/entity/EntitySubLevelUtil.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePostPhysicsTickEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SablePrePhysicsTickEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/event/SableSubLevelContainerReadyEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class new file mode 100644 index 0000000..39e9670 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/LevelReusedVectors.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class new file mode 100644 index 0000000..525fb26 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/math/OrientedBoundingBox3d.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class new file mode 100644 index 0000000..5d66be0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/particle/ParticleSubLevelKickable.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipeline.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class new file mode 100644 index 0000000..434344e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/PhysicsPipelineBody.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class new file mode 100644 index 0000000..1fc791c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback$CollisionResult.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class new file mode 100644 index 0000000..0c9d71d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class new file mode 100644 index 0000000..079f351 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/SableCollisionContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class new file mode 100644 index 0000000..e6138d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/collider/VoxelColliderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class new file mode 100644 index 0000000..10d2d8c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/ConstraintJointAxis.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class new file mode 100644 index 0000000..51c0bfd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintConfiguration.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class new file mode 100644 index 0000000..08fd351 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/PhysicsConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class new file mode 100644 index 0000000..423b5c0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintConfiguration.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class new file mode 100644 index 0000000..8a0954a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/fixed/FixedConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class new file mode 100644 index 0000000..8771605 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintConfiguration.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class new file mode 100644 index 0000000..fd0a104 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/free/FreeConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class new file mode 100644 index 0000000..bce5725 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintConfiguration.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class new file mode 100644 index 0000000..2183483 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/generic/GenericConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class new file mode 100644 index 0000000..2aec611 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintConfiguration.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class new file mode 100644 index 0000000..74ad06a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/constraint/rotary/RotaryConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class new file mode 100644 index 0000000..42b9c14 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroup.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceGroups.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/ForceTotal.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup$PointForce.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/force/QueuedForceGroup.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/handle/RigidBodyHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class new file mode 100644 index 0000000..5d54876 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MassTracker.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/mass/MergedMassTracker.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/ArbitraryPhysicsObject.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class new file mode 100644 index 0000000..f305911 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject$BoxMassData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/box/BoxPhysicsObject.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class new file mode 100644 index 0000000..809312a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle$AttachmentPoint.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopeHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/physics/object/rope/RopePhysicsObject.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$SchematicMapping.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class new file mode 100644 index 0000000..198224c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext$Type.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/schematic/SubLevelSchematicSerializationContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ClientSubLevelContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/KinematicContraption.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class new file mode 100644 index 0000000..190dff9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/ServerSubLevelContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelObserver.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class new file mode 100644 index 0000000..fbcbb69 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/api/sublevel/SubLevelTrackingPlugin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableAssembleCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableCommand.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableConfigCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableJointCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SablePhysicsCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands$NamedSpawnInvoker.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSpawnCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableStorageCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/SableSubLevelCommands.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class new file mode 100644 index 0000000..58bb168 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/Vec3ArgumentAbsolute.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelector.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$FilterPriority.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Modifier.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType$Parser.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifierType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorModifiers.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class new file mode 100644 index 0000000..3b19972 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/SubLevelSelectorType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$DoublePredicate.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter$Factory.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleFilter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$DoubleGetter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter$Factory.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelDoubleRangeFilter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelLimitFilter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelNameFilter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/argument/modifier_type/SubLevelSortModifier.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/command/data_accessor/SubLevelDataAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class new file mode 100644 index 0000000..4d52ba9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/compatibility/SableIrisCompat.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class new file mode 100644 index 0000000..f91726d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/config/SubLevelSettingsScreen.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoScreen.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class new file mode 100644 index 0000000..23e9c30 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/GizmoSelection.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/debug/SableClientGizmoHandler.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class new file mode 100644 index 0000000..5eede4b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableAttributes.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableTags.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class new file mode 100644 index 0000000..c258c3d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/index/SableToasts.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class new file mode 100644 index 0000000..67dcfac Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin$MixinConstraints.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class new file mode 100644 index 0000000..823d3b3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/AbstractSableMixinPlugin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class new file mode 100644 index 0000000..7ef868b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/assembly/AbstractFurnaceBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class new file mode 100644 index 0000000..8ced17b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_decal_render/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/BlockPlaceContextMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/EntityGetterMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_placement/UseOnContextMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class new file mode 100644 index 0000000..61138b0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/block_properties/BlockStateMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/CompassItemPropertyFunctionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_rotation/GuiMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/CameraMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/camera_zoom/MouseHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class new file mode 100644 index 0000000..16c06b8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class new file mode 100644 index 0000000..051093c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/CameraTypeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/GameRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/camera/new_camera_types/MinecraftMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class new file mode 100644 index 0000000..20de185 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/chunk_container_replacement/LevelChunkSectionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/climbing_sub_levels/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/BlockGetterMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClientLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/ClipContextMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/GameRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class new file mode 100644 index 0000000..e191a06 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/clip_overwrite/HitResultMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ArgumentTypeInfosMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/DataCommandsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/command/ExecuteCommandMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/computercraft/WirelessNetworkMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraPosesMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/exposure/CameraStandEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class new file mode 100644 index 0000000..6e3eb14 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/iris/ExtendedShaderMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/BlockAccessorImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jade/RayTracingMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/jadeaddons/CreatePluginMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/LODMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderAccessMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/compatibility/vista/ViewFinderControllerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class new file mode 100644 index 0000000..d4c7c8c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/config/GameRendererAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/CombatTrackerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/death_message/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/DebugScreenOverlayMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class new file mode 100644 index 0000000..b3ab5e4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/debug_render/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class new file mode 100644 index 0000000..cd7230f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/AmbientOcclusionFaceMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class new file mode 100644 index 0000000..74363a0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererCacheMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class new file mode 100644 index 0000000..7d775de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/dynamic_directional_shading/ModelBlockRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/enchanting_table/EnchantingTableBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/arrows_hit_blocks/AbstractArrowMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_in_blocks/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ClientPacketListenerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/EntityRenderDispatcherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/ServerEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/effects/LocalPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class new file mode 100644 index 0000000..8e21133 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class new file mode 100644 index 0000000..17ecb7f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundMoveEntityPacketPosRotMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class new file mode 100644 index 0000000..431bab0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/packet_mixin/ClientboundTeleportEntityPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/LocalPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class new file mode 100644 index 0000000..f7a69e9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/RemotePlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerGamePacketListenerImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entities_turn_with_sub_levels/GameRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class new file mode 100644 index 0000000..68138eb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_aabb_lookup/LevelsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_ai/EatBlockGoalMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class new file mode 100644 index 0000000..766c813 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/CollisionContextMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class new file mode 100644 index 0000000..abdac57 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_collision/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_interaction/ProjectileUtilMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/BlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_kicking/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/EntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_leashing/LeashableMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/FlyNodeEvaluatorMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class new file mode 100644 index 0000000..539603e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/GroundPathNavigationMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathNavigationMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/PathfindingContextMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/RandomPosMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_pathfinding/WalkNodeEvaluatorMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/EntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..628beff Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rendering/shadows/EntityRenderDispatcherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/BlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ClientPacketListenerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRenderDispatcherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/EntityTypeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/LocalPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/PlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_rotations_and_riding/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/AbstractMinecartMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/CameraMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ItemEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class new file mode 100644 index 0000000..6d632ab Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/PlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class new file mode 100644 index 0000000..c2813a6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_sublevel_collision/ServerGamePacketListenerImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_swimming/CameraMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_tracking/TrackedEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/entity_unloading/PersistentEntitySectionManagerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/falling_block/FallingBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/projectile/ProjectileMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ChunkMapMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/server_entities_tick/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class new file mode 100644 index 0000000..a36e468 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/sublevels_block_sky/SubLevelsBlockSkyMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tamed_teleport/TamableAnimalMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class new file mode 100644 index 0000000..312294b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/teleport_players/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/tnt_jumps/PrimedTntMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/entity/trident/ThrownTridentMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ExplosionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/explosion/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class new file mode 100644 index 0000000..cbacd2c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/extension/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/fluids_on_sub_levels/FlowingFluidMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/GameTestInfoMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class new file mode 100644 index 0000000..909752d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/StructureUtilsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/game_test/TestCommandMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class new file mode 100644 index 0000000..c471d1d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BeehiveBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class new file mode 100644 index 0000000..a6c95c5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/BellBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class new file mode 100644 index 0000000..b32c2f4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/impact/TntBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/interaction_distance/PlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class new file mode 100644 index 0000000..8772a57 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/level_accelerator/ServerChunkCacheAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class new file mode 100644 index 0000000..7d6062c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/options/OptionsScreenMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class new file mode 100644 index 0000000..cebd1f9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/BlockMarkerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class new file mode 100644 index 0000000..1c8aba2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ClientLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/FlameParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class new file mode 100644 index 0000000..78518da Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleEngineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class new file mode 100644 index 0000000..535056a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class new file mode 100644 index 0000000..55d95e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/SuspendedParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/particle/TerrainParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class new file mode 100644 index 0000000..3b188b7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/physics/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/LocalPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerListMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/PlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/player_freezing/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ChunkMapMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ClientChunkCacheMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelChunkMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class new file mode 100644 index 0000000..ae91fb9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/LevelsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/MinecraftMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/PlayerListMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerChunkCacheMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class new file mode 100644 index 0000000..d7fce6b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/ServerLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/BlockAndTintGetterMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/ClientPacketListenerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/LevelChunkMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/lighting/RenderChunkRegionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/ChunkMapMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class new file mode 100644 index 0000000..81657ad Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/plot/serialization/LevelChunkTicksMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/portal/NetherPortalBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_freezing/BiomeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/prevent_overgrowth/VineBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class new file mode 100644 index 0000000..f4af1c5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/ItemInvoker.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class new file mode 100644 index 0000000..a09ae3e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MinecraftMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class new file mode 100644 index 0000000..cc00b9e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/punching/MultiPlayerGameModeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/recoil/ProjectileDispenseBehaviorMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/LivingEntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/respawn_point/sleeping/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/EuclideanGameEventListenerRegistryMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/GameEventDispatcherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemListenerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sculk_vibrations/VibrationSystemTickerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sign_interaction/SignBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class new file mode 100644 index 0000000..509cbaa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sky_light_shadow/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/stop_rain/LevelRenderMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/BlockEntityRenderDispatcherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class new file mode 100644 index 0000000..33c3a8b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/RenderSectionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/block_entity_render/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class new file mode 100644 index 0000000..bf9116a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/fancy/ProgramMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/sodium/SodiumWorldRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/ViewAreaMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class new file mode 100644 index 0000000..95c9d01 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_render/impl/vanilla/water_occlusion/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/AbstractSoundInstanceMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class new file mode 100644 index 0000000..32d4f9a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ChannelAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/ClientLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/sublevel_sounds/SoundEngineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/toast/IntegratedServerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/tracking_points/ServerPlayerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin$2.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ConnectionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class new file mode 100644 index 0000000..88c2183 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/MinecraftServerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/PlayerListMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin$2.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/udp/ServerConnectionListenerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..20c380a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/BitSetDiscreteVoxelShapeAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class new file mode 100644 index 0000000..066f4d5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/DiscreteVoxelShapeAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class new file mode 100644 index 0000000..262c341 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/voxel_shape_iteration/VoxelShapeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class new file mode 100644 index 0000000..e8c3768 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/CameraMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class new file mode 100644 index 0000000..51bae22 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class new file mode 100644 index 0000000..6034a80 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/FogRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class new file mode 100644 index 0000000..e2ae5a9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/GameRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class new file mode 100644 index 0000000..920550e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/LevelsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class new file mode 100644 index 0000000..394c68d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/water_occlusion/WaterFluidMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class new file mode 100644 index 0000000..fe54551 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/LevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixin/world_border/WorldBorderMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/CanFallAtleastHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class new file mode 100644 index 0000000..37db6d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/block_outline_render/SubLevelCamera.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper$Type.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/camera_rotation/EntitySubLevelRotationHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class new file mode 100644 index 0000000..d06fd51 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/camera/new_camera_types/SableCameraTypes.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class new file mode 100644 index 0000000..a24bb03 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_collision/TheFasterEntityCollisionContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_rendering/shadows/SubLevelEntityShadowRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/entity_riding_sub_level_vehicle/EntityRidingSubLevelVehicleHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/entity/sublevels_block_sky/SubLevelsBlockSkyMixinHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/sublevel_render/vanilla/VanillaSubLevelBlockEntityRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class new file mode 100644 index 0000000..83ef171 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/FastVoxelShapeIterator.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class new file mode 100644 index 0000000..408d1e8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinhelpers/voxel_shape_iteration/LongArrayDiscreteVoxelShape.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class new file mode 100644 index 0000000..76cd830 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/BlockEntityRenderDispatcherExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class new file mode 100644 index 0000000..6b05ccd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/EntityExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class new file mode 100644 index 0000000..92ca85e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/block_properties/BlockStateExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class new file mode 100644 index 0000000..1331e88 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/camera/camera_zoom/CameraZoomExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/ClipContextExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/clip_overwrite/LevelPoseProviderExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class new file mode 100644 index 0000000..4cac8e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/compatibility/iris/ExtendedShaderExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class new file mode 100644 index 0000000..090e843 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/dynamic_directional_shading/ModelBlockRendererCacheExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class new file mode 100644 index 0000000..54676b9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/EntityStickExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class new file mode 100644 index 0000000..c8fff11 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/LivingEntityStickExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class new file mode 100644 index 0000000..2b7041e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/packet_mixin/PacketActuallyInSubLevelExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class new file mode 100644 index 0000000..9085f85 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entities_stick_sublevels/player/ServerboundMovePlayerPacketExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class new file mode 100644 index 0000000..d1bd1cc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_collision/EntityExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/EntityMovementExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class new file mode 100644 index 0000000..6e19d5f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LevelExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class new file mode 100644 index 0000000..ba06ff1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/entity_sublevel_collision/LivingEntityMovementExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class new file mode 100644 index 0000000..de6dba5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/entity/pathfinding/PathExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/particle/ParticleExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class new file mode 100644 index 0000000..5ac31ca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/physics/ServerLevelSceneExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class new file mode 100644 index 0000000..afc93f1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/player_freezing/PlayerFreezeExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/SubLevelContainerHolder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class new file mode 100644 index 0000000..ce58101 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/ChunkAccessExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class new file mode 100644 index 0000000..405e874 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/plot/serialization/LevelChunkTicksExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class new file mode 100644 index 0000000..02318c4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/respawn_point/ServerPlayerRespawnExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class new file mode 100644 index 0000000..66c5ebe Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/fancy/ProgramExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class new file mode 100644 index 0000000..5e5d783 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/DefaultChunkRendererExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/OcclusionCullerExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class new file mode 100644 index 0000000..11f86ca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/RenderSectionManagerExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/sodium/SodiumWorldRendererExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class new file mode 100644 index 0000000..2b12481 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension$DirtyListener.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class new file mode 100644 index 0000000..2c3f203 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/sublevel_render/vanilla/RenderSectionExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/toast/SableToastableServer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class new file mode 100644 index 0000000..9bfd627 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ConnectionExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class new file mode 100644 index 0000000..5fd8f9e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/udp/ServerConnectionListenerExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class new file mode 100644 index 0000000..87393f4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/voxel_shape_iteration/FastVoxelShapeIterable.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class new file mode 100644 index 0000000..11cde9a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/CameraWaterOcclusionExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class new file mode 100644 index 0000000..eff0ad6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/water_occlusion/WaterOcclusionContainerHolder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class new file mode 100644 index 0000000..75e676c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/mixinterface/world_border/WorldBorderExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForge.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForge.class new file mode 100644 index 0000000..50617f1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForge.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.class new file mode 100644 index 0000000..d363a9b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge$SubLevelFlwRenderState.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge$SubLevelFlwRenderState.class new file mode 100644 index 0000000..839688b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge$SubLevelFlwRenderState.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.class new file mode 100644 index 0000000..413bbba Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.class new file mode 100644 index 0000000..3faf39d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage$DebugVisual.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage$DebugVisual.class new file mode 100644 index 0000000..d24a06d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage$DebugVisual.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.class new file mode 100644 index 0000000..ebcfba8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.class new file mode 100644 index 0000000..c5e4ba3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$IntLayer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$IntLayer.class new file mode 100644 index 0000000..1bb3868 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$IntLayer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Layer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Layer.class new file mode 100644 index 0000000..5054d2e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Layer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Prune.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Prune.class new file mode 100644 index 0000000..9eb2e58 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut$Prune.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.class new file mode 100644 index 0000000..9626022 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.class new file mode 100644 index 0000000..1a7f779 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.class new file mode 100644 index 0000000..84337fa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.class new file mode 100644 index 0000000..b65c69f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.class new file mode 100644 index 0000000..c6806a5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.class new file mode 100644 index 0000000..c7c6b05 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper$1.class new file mode 100644 index 0000000..9ff220a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.class new file mode 100644 index 0000000..eda9915 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.class new file mode 100644 index 0000000..b590fe6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.class new file mode 100644 index 0000000..505218f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.class new file mode 100644 index 0000000..eb0ff08 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.class new file mode 100644 index 0000000..19dba97 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.class new file mode 100644 index 0000000..58f1906 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.class new file mode 100644 index 0000000..d1b9827 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.class new file mode 100644 index 0000000..4471ffd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.class new file mode 100644 index 0000000..d70fe28 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.class new file mode 100644 index 0000000..3a9139a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.class new file mode 100644 index 0000000..32ba314 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.class new file mode 100644 index 0000000..21793ca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.class new file mode 100644 index 0000000..2e4fa51 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.class new file mode 100644 index 0000000..f553944 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.class new file mode 100644 index 0000000..9eb3260 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.class new file mode 100644 index 0000000..c4d1cb1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.class new file mode 100644 index 0000000..8332c2b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.class new file mode 100644 index 0000000..3d86bb0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.class new file mode 100644 index 0000000..a2c50d7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.class new file mode 100644 index 0000000..48c77b3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.class new file mode 100644 index 0000000..186170a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.class new file mode 100644 index 0000000..eee6140 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.class new file mode 100644 index 0000000..6d2b8cc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.class new file mode 100644 index 0000000..9f9692d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.class new file mode 100644 index 0000000..25d37f8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.class new file mode 100644 index 0000000..a9deee1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.class new file mode 100644 index 0000000..1479dc8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.class new file mode 100644 index 0000000..6ddde2e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.class new file mode 100644 index 0000000..0334ec4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.class new file mode 100644 index 0000000..1a20d46 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.class new file mode 100644 index 0000000..f8d54d9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.class new file mode 100644 index 0000000..74c308c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.class new file mode 100644 index 0000000..da32d9d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.class new file mode 100644 index 0000000..c72d0df Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.class new file mode 100644 index 0000000..b6a65cf Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.class new file mode 100644 index 0000000..91662a8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.class new file mode 100644 index 0000000..9a6ccdb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.class new file mode 100644 index 0000000..2c2a136 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.class new file mode 100644 index 0000000..1b26255 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.class new file mode 100644 index 0000000..06cabb1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.class new file mode 100644 index 0000000..7b3a4d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.class new file mode 100644 index 0000000..e3ab465 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.class new file mode 100644 index 0000000..71bc9d4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.class new file mode 100644 index 0000000..3dffe7b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.class new file mode 100644 index 0000000..cd88ffd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.class new file mode 100644 index 0000000..8660b54 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.class new file mode 100644 index 0000000..1bcf27f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.class new file mode 100644 index 0000000..3317719 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.class new file mode 100644 index 0000000..553fa6f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.class new file mode 100644 index 0000000..d3a7a49 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.class new file mode 100644 index 0000000..90a4d92 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.class new file mode 100644 index 0000000..f4f4ed1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.class new file mode 100644 index 0000000..819225a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.class new file mode 100644 index 0000000..2063f57 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.class new file mode 100644 index 0000000..6148b73 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.class new file mode 100644 index 0000000..f86a359 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.class new file mode 100644 index 0000000..817a762 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.class new file mode 100644 index 0000000..3174446 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.class new file mode 100644 index 0000000..c71a4f1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.class new file mode 100644 index 0000000..95fd2e1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.class new file mode 100644 index 0000000..6fcedbf Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.class new file mode 100644 index 0000000..d758e14 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.class new file mode 100644 index 0000000..690be12 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.class new file mode 100644 index 0000000..7118d35 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.class new file mode 100644 index 0000000..3ec2db9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.class new file mode 100644 index 0000000..4411c7f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.class new file mode 100644 index 0000000..963ccb6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.class new file mode 100644 index 0000000..aa266a6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.class new file mode 100644 index 0000000..22030f0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.class new file mode 100644 index 0000000..513939e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.class new file mode 100644 index 0000000..2bf78ef Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.class new file mode 100644 index 0000000..1273535 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.class new file mode 100644 index 0000000..9498e04 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.class new file mode 100644 index 0000000..f383f6e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.class new file mode 100644 index 0000000..18f6a10 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.class new file mode 100644 index 0000000..8f70caf Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.class new file mode 100644 index 0000000..98102ed Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.class new file mode 100644 index 0000000..d273283 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.class new file mode 100644 index 0000000..1dd04e4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.class new file mode 100644 index 0000000..40f7965 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.class new file mode 100644 index 0000000..3af7219 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.class new file mode 100644 index 0000000..3e9c095 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.class new file mode 100644 index 0000000..22cefe2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.class new file mode 100644 index 0000000..3ebba97 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.class new file mode 100644 index 0000000..6c04d96 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.class new file mode 100644 index 0000000..e5399e2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.class new file mode 100644 index 0000000..c9ac022 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.class new file mode 100644 index 0000000..37b318c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.class new file mode 100644 index 0000000..e5083c3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.class new file mode 100644 index 0000000..10ac8a9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.class new file mode 100644 index 0000000..751a6dc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.class new file mode 100644 index 0000000..354887d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.class new file mode 100644 index 0000000..fbdea5c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.class new file mode 100644 index 0000000..c24f130 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.class new file mode 100644 index 0000000..b241368 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.class new file mode 100644 index 0000000..7dd27ad Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.class new file mode 100644 index 0000000..2ef9a2c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.class new file mode 100644 index 0000000..9ede09a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.class new file mode 100644 index 0000000..03bf124 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.class new file mode 100644 index 0000000..db20a1b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.class new file mode 100644 index 0000000..0e7a514 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.class new file mode 100644 index 0000000..0e36e7a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.class new file mode 100644 index 0000000..8d132df Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.class new file mode 100644 index 0000000..241217e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.class new file mode 100644 index 0000000..18b9779 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.class new file mode 100644 index 0000000..bb6676e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.class new file mode 100644 index 0000000..c5ec245 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.class new file mode 100644 index 0000000..f325878 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.class new file mode 100644 index 0000000..6600a46 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.class new file mode 100644 index 0000000..50d0ec7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.class new file mode 100644 index 0000000..d2ad9ae Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin$1.class new file mode 100644 index 0000000..e0688de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.class new file mode 100644 index 0000000..ac8585e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.class new file mode 100644 index 0000000..8d2ebd4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.class new file mode 100644 index 0000000..5fac5db Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.class new file mode 100644 index 0000000..fb05c58 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.class new file mode 100644 index 0000000..b26d47b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.class new file mode 100644 index 0000000..e6351af Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.class new file mode 100644 index 0000000..699c604 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.class new file mode 100644 index 0000000..5626997 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.class new file mode 100644 index 0000000..25a2e9f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.class new file mode 100644 index 0000000..de69185 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.class new file mode 100644 index 0000000..9916c12 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.class new file mode 100644 index 0000000..00caf46 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.class new file mode 100644 index 0000000..9fb4d87 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.class new file mode 100644 index 0000000..ebe90b4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.class new file mode 100644 index 0000000..69e4783 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.class new file mode 100644 index 0000000..7cd266d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.class new file mode 100644 index 0000000..a043ece Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.class new file mode 100644 index 0000000..ccdba76 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.class new file mode 100644 index 0000000..4bb41dc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.class new file mode 100644 index 0000000..2b9b89e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.class new file mode 100644 index 0000000..43b22a5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.class new file mode 100644 index 0000000..409d2ae Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.class new file mode 100644 index 0000000..58c1fbb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.class new file mode 100644 index 0000000..a0a413e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.class new file mode 100644 index 0000000..65b6320 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.class new file mode 100644 index 0000000..22cf08c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.class new file mode 100644 index 0000000..3cfc620 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.class new file mode 100644 index 0000000..41595dc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.class new file mode 100644 index 0000000..8ca22c8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.class new file mode 100644 index 0000000..58b0a3f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.class new file mode 100644 index 0000000..8033dc3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.class new file mode 100644 index 0000000..2fc8e0c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.class new file mode 100644 index 0000000..dd9cbc3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.class new file mode 100644 index 0000000..c302064 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.class new file mode 100644 index 0000000..16afb5d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.class new file mode 100644 index 0000000..ae46318 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.class new file mode 100644 index 0000000..b0caf26 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.class new file mode 100644 index 0000000..2e80950 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.class new file mode 100644 index 0000000..08de5ef Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.class new file mode 100644 index 0000000..4e4e92c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.class new file mode 100644 index 0000000..7fa1c55 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.class new file mode 100644 index 0000000..10d06ce Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.class new file mode 100644 index 0000000..be73961 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class new file mode 100644 index 0000000..48eebdd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.class new file mode 100644 index 0000000..3b762d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.class new file mode 100644 index 0000000..82aae86 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.class new file mode 100644 index 0000000..944b68b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.class new file mode 100644 index 0000000..226fa46 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.class new file mode 100644 index 0000000..60f20de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.class new file mode 100644 index 0000000..ce81b71 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.class new file mode 100644 index 0000000..3754b7f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.class new file mode 100644 index 0000000..2479f67 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.class new file mode 100644 index 0000000..c1a3313 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.class new file mode 100644 index 0000000..6e815f3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.class new file mode 100644 index 0000000..306508f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.class new file mode 100644 index 0000000..d69dd5e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.class new file mode 100644 index 0000000..e827cda Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.class new file mode 100644 index 0000000..a4b6b9e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.class new file mode 100644 index 0000000..5fa39cc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.class new file mode 100644 index 0000000..2f5c57f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.class new file mode 100644 index 0000000..aca04d0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.class new file mode 100644 index 0000000..d46f00a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.class new file mode 100644 index 0000000..884c572 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.class new file mode 100644 index 0000000..64490a9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.class new file mode 100644 index 0000000..dafc4c9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension$SchematicSubLevel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension$SchematicSubLevel.class new file mode 100644 index 0000000..71d9768 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension$SchematicSubLevel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.class new file mode 100644 index 0000000..f149869 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.class new file mode 100644 index 0000000..b15b7d6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension$SubLevelTemplate.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension$SubLevelTemplate.class new file mode 100644 index 0000000..9303518 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension$SubLevelTemplate.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.class new file mode 100644 index 0000000..1f530d8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.class new file mode 100644 index 0000000..a183928 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.class new file mode 100644 index 0000000..da41ac9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.class new file mode 100644 index 0000000..9d059bc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.class new file mode 100644 index 0000000..ae92d16 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.class new file mode 100644 index 0000000..dc1e723 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.class new file mode 100644 index 0000000..cb12756 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.class new file mode 100644 index 0000000..e54ba26 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.class new file mode 100644 index 0000000..b8c4386 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.class new file mode 100644 index 0000000..d3d2450 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.class new file mode 100644 index 0000000..4b654f9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.class new file mode 100644 index 0000000..23908e7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.class new file mode 100644 index 0000000..0f7c70d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSableInterpolationState.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/ClientSubLevelPunchHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SableClientNetworkEventLoop.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class new file mode 100644 index 0000000..b65537b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator$Snapshot.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class new file mode 100644 index 0000000..74d0967 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/client/SubLevelSnapshotInterpolator.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket$Entry.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotDualPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/ClientboundSableSnapshotInfoDualPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class new file mode 100644 index 0000000..459d881 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/PacketReceiveMode.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeBoundsSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundChangeSubLevelNamePacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundEnterGizmoPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFinalizeSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFloatingBlockMaterialPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundFreezePlayerPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundPhysicsPropertyPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundRecentlySplitSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundSableUDPActivationPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStartTrackingSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopMovingSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ClientboundStopTrackingSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundGizmoMoveSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/tcp/ServerboundPunchSubLevelPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class new file mode 100644 index 0000000..14015f7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPAuthenticationPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class new file mode 100644 index 0000000..520b615 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPClientboundKeepAlivePacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class new file mode 100644 index 0000000..a874594 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPEchoPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class new file mode 100644 index 0000000..14e54bd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/packets/udp/SableUDPServerboundAlivePacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class new file mode 100644 index 0000000..0edffaf Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/tcp/SableTCPPackets.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class new file mode 100644 index 0000000..a554055 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/AddressedSableUDPPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class new file mode 100644 index 0000000..9bd51e3 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState$State.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class new file mode 100644 index 0000000..5cab9e8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPAuthenticationState.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class new file mode 100644 index 0000000..31a08cd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketDecoder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class new file mode 100644 index 0000000..e3fd49f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketEncoder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class new file mode 100644 index 0000000..400ca4f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPPacketType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/SableUDPServer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerClient.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/network/udp/handler/SableUDPChannelHandlerServer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/ReactionWheelManager.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class new file mode 100644 index 0000000..5fc6f2e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BeehiveBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class new file mode 100644 index 0000000..85c89f5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/BellBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class new file mode 100644 index 0000000..fb8a141 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/ExplosiveBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/callback/FragileBlockCallback.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class new file mode 100644 index 0000000..2a00017 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class new file mode 100644 index 0000000..5cfd483 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState$2.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class new file mode 100644 index 0000000..ec87fd9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/chunk/VoxelNeighborhoodState.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class new file mode 100644 index 0000000..24e8b4b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler$ReloadListener.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/FloatingBlockMaterialDataHandler.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class new file mode 100644 index 0000000..1b09755 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/PhysicsConfigData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class new file mode 100644 index 0000000..868fab1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet$BlockStateCondition.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class new file mode 100644 index 0000000..733e8f9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/BlockStateConditionSet.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class new file mode 100644 index 0000000..47b40e1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinition.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class new file mode 100644 index 0000000..182b0a6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertiesDefinitionLoader.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class new file mode 100644 index 0000000..d834279 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/block_properties/PhysicsBlockPropertyTypes.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class new file mode 100644 index 0000000..1ceff3c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction$BezierPoint.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class new file mode 100644 index 0000000..7ca0481 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/BezierResourceFunction.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class new file mode 100644 index 0000000..1bce084 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysics.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class new file mode 100644 index 0000000..4a2067b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData$ReloadListener.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/config/dimension_physics/DimensionPhysicsData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockCluster.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockController.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class new file mode 100644 index 0000000..0eb24df Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingBlockMaterial.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/floating_block/FloatingClusterContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class new file mode 100644 index 0000000..43f455b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SableCollisionContextImpl.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class new file mode 100644 index 0000000..10a4b5f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/SubLevelEntityCollisionContext.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/none/StaticPhysicsPipeline.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/Rapier3D.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$1UploadingContraptionChunk.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline$TrackedKinematicContraption.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/RapierPhysicsPipeline.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class new file mode 100644 index 0000000..304a6d0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/box/RapierBoxHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class new file mode 100644 index 0000000..3c4388d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/PhysicsColliderBlockGetter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class new file mode 100644 index 0000000..7a61ffc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderBakery.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class new file mode 100644 index 0000000..1ef4e64 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/collider/RapierVoxelColliderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class new file mode 100644 index 0000000..67de96e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/RapierConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/fixed/RapierFixedConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/free/RapierFreeConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/generic/RapierGenericConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/constraint/rotary/RapierRotaryConstraintHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/physics/impl/rapier/rope/RapierRopeHandle.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class new file mode 100644 index 0000000..fd7340d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableAssemblyPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class new file mode 100644 index 0000000..bd39b56 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableChunkEventPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableEventPublishPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class new file mode 100644 index 0000000..bd5c0b9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableLoaderPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class new file mode 100644 index 0000000..632880e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class new file mode 100644 index 0000000..d9f493d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlatformUtil.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class new file mode 100644 index 0000000..cfed937 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SablePlotPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class new file mode 100644 index 0000000..25fe482 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/platform/SableSubLevelRenderPlatform.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class new file mode 100644 index 0000000..a69da22 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/plugin/SableMixinPlugin.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class new file mode 100644 index 0000000..63104bb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_biome/DynamicBiomeTintRenderTypes.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class new file mode 100644 index 0000000..2e29cfa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShading.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class new file mode 100644 index 0000000..103f9c0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SableDynamicDirectionalShadingPreProcessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class new file mode 100644 index 0000000..6504207 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/dynamic_shade/SubLevelVertexConsumer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegion.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class new file mode 100644 index 0000000..bf9dde7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class new file mode 100644 index 0000000..f58a67e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder$Cube.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class new file mode 100644 index 0000000..0ffdef2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/region/SimpleCulledRenderRegionBuilder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class new file mode 100644 index 0000000..74d1e11 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableDynamicSkyLightShadowPreProcessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/sky_light_shadow/SableSkyLightShadows.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class new file mode 100644 index 0000000..a86d790 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/SableWaterOcclusionPreProcessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class new file mode 100644 index 0000000..fbdaafe Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderRegion.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class new file mode 100644 index 0000000..2a0dfa7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/render/water_occlusion/WaterOcclusionRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/MovingSoundInstanceDelegate.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sound/SoundInstanceDelegated.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ClientSubLevel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/ServerSubLevel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/SubLevel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$CollisionInfo.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision$FirstCollisionInfo.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/entity_collision/SubLevelEntityCollision.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ClientLevelPlot.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/EmbeddedPlotLevelAccessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class new file mode 100644 index 0000000..44816f6 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/HeatDataChunkSection.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/LevelPlot.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class new file mode 100644 index 0000000..6da544f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/PlotChunkHolder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/ServerLevelPlot.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class new file mode 100644 index 0000000..210fbc8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/SubLevelPlayerChunkSender.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class new file mode 100644 index 0000000..9c5f1d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/HeatMapPropagationState.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager$SplitListener.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/plot/heat/SubLevelHeatMapManager.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer$2.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer$SelectedRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/SubLevelRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/FancySubLevelRenderDispatcher.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/ReachAroundSubLevelRenderDispatcher.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SodiumSubLevelRenderDispatcher.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher$BlockEntityRenderer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelRenderDispatcher.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class new file mode 100644 index 0000000..475d584 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache$PackedTexture.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class new file mode 100644 index 0000000..ae5fb75 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/SubLevelTextureCache.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/dispatcher/VanillaSubLevelRenderDispatcher.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class new file mode 100644 index 0000000..e39006f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer$Slice.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class new file mode 100644 index 0000000..6b03900 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/BucketRenderBuffer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class new file mode 100644 index 0000000..392731b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelCommandBuilder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelOcclusionData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelRenderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class new file mode 100644 index 0000000..8a68f11 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class new file mode 100644 index 0000000..4595c49 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection$2.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class new file mode 100644 index 0000000..cd7f3a8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$CompiledSection.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class new file mode 100644 index 0000000..9843ce5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler$RenderSection.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class new file mode 100644 index 0000000..51d80a0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelSectionCompiler.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/FancySubLevelShaderProcessor.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class new file mode 100644 index 0000000..e667cca Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$1.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class new file mode 100644 index 0000000..3c8a374 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$QuadMesh.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class new file mode 100644 index 0000000..74cbc4c Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder$Results.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class new file mode 100644 index 0000000..360b03f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/SubLevelMeshBuilder.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler$Task.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/FancySubLevelTaskScheduler.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class new file mode 100644 index 0000000..753f554 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask$MeshUploader.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class new file mode 100644 index 0000000..67629db Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/fancy/task/SubLevelTask.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SodiumSubLevelRenderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/sodium/SubLevelRenderSectionManager.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class new file mode 100644 index 0000000..de6168d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer$FencedArea.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class new file mode 100644 index 0000000..73989be Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/DSAStagingBuffer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class new file mode 100644 index 0000000..971aa0e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer$StagingBufferType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class new file mode 100644 index 0000000..eb827a9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/staging/StagingBuffer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class new file mode 100644 index 0000000..1e6cd2f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/SingleBlockSubLevelWrapper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaChunkedSubLevelRenderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/render/vanilla/VanillaSingleSubLevelRenderData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class new file mode 100644 index 0000000..14a3c70 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/HoldingSubLevel.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelOccupancySavedData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class new file mode 100644 index 0000000..b62bea4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/SubLevelRemovalReason.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/debug/SubLevelContainerInspector.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class new file mode 100644 index 0000000..71ed48b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/GlobalSavedSubLevelPointer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class new file mode 100644 index 0000000..4bf05c8 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SavedSubLevelPointer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunk.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class new file mode 100644 index 0000000..345b09d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/holding/SubLevelHoldingChunkMap.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelRegionFile.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile$SectorSpanDataBuffer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/region/SubLevelStorageFile.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class new file mode 100644 index 0000000..d23c1f2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelSerializer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/storage/serialization/SubLevelStorage.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelPhysicsSystem.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem$SubLevelUpdateTicket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/SubLevelTrackingSystem.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicket.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/system/ticket/PhysicsChunkTicketManager.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointObserver.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData$TakenLoginPoint.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/SubLevelTrackingPointSavedData.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class new file mode 100644 index 0000000..08861aa Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/tracking_points/TrackingPoint.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class new file mode 100644 index 0000000..de79875 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer$ClientWaterOcclusionRegion.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class new file mode 100644 index 0000000..5e23b7d Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ClientWaterOcclusionContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class new file mode 100644 index 0000000..7514c92 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/ServerWaterOcclusionContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionContainer.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class new file mode 100644 index 0000000..535c57f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/sublevel/water_occlusion/WaterOcclusionRegion.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class new file mode 100644 index 0000000..cd62410 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/BoundedBitVolume3i.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class new file mode 100644 index 0000000..5a8a580 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/LevelAccelerator.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class new file mode 100644 index 0000000..267decd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableBufferUtils.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class new file mode 100644 index 0000000..c2abb1b Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableCodecUtil.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class new file mode 100644 index 0000000..5903e99 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableDistUtil.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class new file mode 100644 index 0000000..539578a Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils$GridQuats.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableMathUtils.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class new file mode 100644 index 0000000..8f7f30e Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SableNBTUtils.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class new file mode 100644 index 0000000..22a8134 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SchematicLoader.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SubLevelInclusiveLevelEntityGetter.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/SublevelRenderOffsetHelper.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class new file mode 100644 index 0000000..fad2235 Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/IteratorBackedFilterIterator.class differ diff --git a/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class new file mode 100644 index 0000000..337387f Binary files /dev/null and b/neoforge/build/classes/java/main/dev/ryanhcode/sable/util/iterator/ListBackedFilterIterator.class differ diff --git a/neoforge/build/generated/jarJar/META-INF/jarjar/metadata.json b/neoforge/build/generated/jarJar/META-INF/jarjar/metadata.json new file mode 100644 index 0000000..97ac89d --- /dev/null +++ b/neoforge/build/generated/jarJar/META-INF/jarjar/metadata.json @@ -0,0 +1,28 @@ +{ + "jars": [ + { + "identifier": { + "group": "dev.ryanhcode.sable-companion", + "artifact": "sable-companion-common-1.21.1" + }, + "version": { + "range": "[1.6.0,)", + "artifactVersion": "1.6.0" + }, + "path": "META-INF/jarjar/sable-companion-common-1.21.1-1.6.0.jar", + "isObfuscated": false + }, + { + "identifier": { + "group": "foundry.veil", + "artifact": "veil-neoforge-1.21.1" + }, + "version": { + "range": "[4.0.0,)", + "artifactVersion": "4.0.0" + }, + "path": "META-INF/jarjar/veil-neoforge-1.21.1-4.0.0.jar", + "isObfuscated": false + } + ] +} diff --git a/neoforge/build/generated/jarJar/META-INF/jarjar/sable-companion-common-1.21.1-1.6.0.jar b/neoforge/build/generated/jarJar/META-INF/jarjar/sable-companion-common-1.21.1-1.6.0.jar new file mode 100644 index 0000000..9fe9df5 Binary files /dev/null and b/neoforge/build/generated/jarJar/META-INF/jarjar/sable-companion-common-1.21.1-1.6.0.jar differ diff --git a/neoforge/build/generated/jarJar/META-INF/jarjar/veil-neoforge-1.21.1-4.0.0.jar b/neoforge/build/generated/jarJar/META-INF/jarjar/veil-neoforge-1.21.1-4.0.0.jar new file mode 100644 index 0000000..37c9342 Binary files /dev/null and b/neoforge/build/generated/jarJar/META-INF/jarjar/veil-neoforge-1.21.1-4.0.0.jar differ diff --git a/neoforge/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h b/neoforge/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h new file mode 100644 index 0000000..76465da --- /dev/null +++ b/neoforge/build/generated/sources/headers/java/main/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2-sources.jar b/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2-sources.jar new file mode 100644 index 0000000..398017a Binary files /dev/null and b/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2-sources.jar differ diff --git a/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2patched.jar b/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2patched.jar new file mode 100644 index 0000000..8cac40b Binary files /dev/null and b/neoforge/build/libs/sable-neoforge-1.21.1-1.2.2patched.jar differ diff --git a/neoforge/build/moddev/artifacts/neoforge-21.1.219-client-extra-aka-minecraft-resources.jar b/neoforge/build/moddev/artifacts/neoforge-21.1.219-client-extra-aka-minecraft-resources.jar new file mode 100644 index 0000000..b26c422 Binary files /dev/null and b/neoforge/build/moddev/artifacts/neoforge-21.1.219-client-extra-aka-minecraft-resources.jar differ diff --git a/neoforge/build/moddev/artifacts/neoforge-21.1.219-merged.jar b/neoforge/build/moddev/artifacts/neoforge-21.1.219-merged.jar new file mode 100644 index 0000000..6a99d33 Binary files /dev/null and b/neoforge/build/moddev/artifacts/neoforge-21.1.219-merged.jar differ diff --git a/neoforge/build/moddev/artifacts/neoforge-21.1.219-sources.jar b/neoforge/build/moddev/artifacts/neoforge-21.1.219-sources.jar new file mode 100644 index 0000000..243e5cc Binary files /dev/null and b/neoforge/build/moddev/artifacts/neoforge-21.1.219-sources.jar differ diff --git a/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar b/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar new file mode 100644 index 0000000..4176f4b Binary files /dev/null and b/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar differ diff --git a/neoforge/build/moddev/clientLegacyClasspath.txt b/neoforge/build/moddev/clientLegacyClasspath.txt new file mode 100644 index 0000000..54d4eeb --- /dev/null +++ b/neoforge/build/moddev/clientLegacyClasspath.txt @@ -0,0 +1,107 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.3\b442a95f09e349927f5a945ecb594455870fcf4f\core-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.3\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\toml-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.errorprone\error_prone_annotations\2.18.0\89b684257096f548fa39a7df9fdaa409d4d4df91\error_prone_annotations-2.18.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\b421526c5f297295adef1c886e5246c39d4ac629\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.j2objc\j2objc-annotations\2.8\c85270e307e7b822f1086b93689124b89768e273\j2objc-annotations-2.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.ibm.icu\icu4j\73.2\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\icu4j-73.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.machinezoo.noexception\noexception\1.7.1\b65330c98e38a1f915fa54a6e5eca496505e3f0a\noexception-1.7.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\blocklist\1.0.10\5c685c5ffa94c4cd39496c7184c1d122e515ecef\blocklist-1.0.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\patchy\2.2.10\da05971b07cbb379d002cf7eaec6a2048211fefc\patchy-2.2.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\text2speech\1.17.9\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\text2speech-1.17.9.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-codec\commons-codec\1.16.0\4e3eb3d79888d76b54e28b350915b5dc3919c9de\commons-codec-1.16.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-logging\commons-logging\1.2\4bfc12adfe4842bf07b657f0369c4cb522955686\commons-logging-1.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\bootstraplauncher\2.0.2\1a2d076cbc33b0520cbacd591224427b2a20047d\bootstraplauncher-2.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\modlauncher\11.0.5\b8f0d49294f733fdb6173931b263553e943dc950\modlauncher-11.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\securejarhandler\3.0.8\c0ef95cecd8699a0449053ac7d9c160748d902cd\securejarhandler-3.0.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\sponge-mixin\0.15.2+mixin.0.8.7\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\sponge-mixin-0.15.2+mixin.0.8.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.jodah\typetools\0.6.3\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\typetools-0.6.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecraftforge\srgutils\0.4.15\ca408b131759478f164e010fae0d73997e125fb5\srgutils-0.4.15.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecrell\terminalconsoleappender\1.3.0\b562e9bb61235c9520e26282cdee71f8f802d1fc\terminalconsoleappender-1.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.accesstransformers\at-modlauncher\10.0.1\5aba50202aceead086bc09fbc2751c9f05cb4890\at-modlauncher-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\earlydisplay\4.0.42\46555dbfff14e9e052f1f693aed14d542a74e111\earlydisplay-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\loader\4.0.42\76e15f98bf676fb44b36c5e776f52a55581ec43a\loader-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarFileSystems\0.4.1\78f59f89defcd032ed788b151ca6a0d40ace796a\JarJarFileSystems-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarMetadata\0.4.1\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\JarJarMetadata-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarSelector\0.4.1\fb3cc7a58af22ad2880adb98af6d518128c47dae\JarJarSelector-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\accesstransformers\10.0.1\fd83b5725f76eae9115e9355fa1c456a6a441400\accesstransformers-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\bus\8.0.5\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\bus-8.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\coremods\7.0.3\9147e6f638b4272b3bd5fc8f92ad37802512c6c\coremods-7.0.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.0\52fe1949be64e3303aabaaa21e315f551db9c9f4\mergetool-2.0.0-api.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.antlr\antlr4-runtime\4.13.1\17125bae1d965624e265ef49552f6465a2bfa307\antlr4-runtime-4.13.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-compress\1.26.0\659feffdd12280201c8aacb8f7be94f9a883c824\commons-compress-1.26.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpclient\4.5.13\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\httpclient-4.5.13.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.4.16\51cf043c87253c9f58b539c9f7e44c8894223850\httpcore-4.4.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.maven\maven-artifact\3.8.5\4433f50c07debefaed0553bd0068f4f48d449313\maven-artifact-3.8.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.checkerframework\checker-qual\3.33.0\de2b60b62da487644fc11f734e73c8b0b431238f\checker-qual-3.33.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.codehaus.plexus\plexus-utils\3.3.0\cf43b5391de623b36fe066a21127baef82c64022\plexus-utils-3.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-reader\3.20.0\8f15415b022a25b473e8e16c28ae913186ffb9c4\jline-reader-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-terminal\3.20.0\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\jline-terminal-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\lwjgl-freetype-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\81091b006dbb43fab04c8c638e9ac87c51b4096d\lwjgl-freetype-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\82028265a0a2ff33523ca75137ada7dc176e5210\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\lwjgl-freetype-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\32334f3fd5270a59bad9939a93115acb6de36dcf\lwjgl-glfw-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\e449e28b4891fc423c54c85fbc5bb0b9efece67a\lwjgl-glfw-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\efa1eb78c5ccd840e9f329717109b5e892d72f8e\lwjgl-glfw-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\f27018dc74f6289574502b46cce55d52817554e2\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\426222fc027602a5f21b9c0fe79cde6a4c7a011f\lwjgl-jemalloc-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\b543467b7ff3c6920539a88ee602d34098628be5\lwjgl-jemalloc-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\f6063b6e0f23be483c5c88d84ce51b39dc69126c\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\lwjgl-openal-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\8e0615235116b9e4160dfe87bec90f5f6378bf72\lwjgl-openal-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\cf83862ae95d98496b26915024c7e666d8ab1c8f\lwjgl-openal-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\lwjgl-openal-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\2f6b0147078396a58979125a4c947664e98293a\lwjgl-opengl-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\65e956d3735a1abdc82eff4baec1b61174697d4b\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\d32d833dcaa2f355a886eaf21f0408b5f03241d\lwjgl-opengl-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\e6c1eec8be8a71951b830a4d69efc01c6531900c\lwjgl-opengl-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\1d9facdf6541de114b0f963be33505b7679c78cb\lwjgl-stb-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\25dd6161988d7e65f71d5065c99902402ee32746\lwjgl-stb-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\a584ab44de569708871f0a79561f4d8c37487f2c\lwjgl-stb-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\b5c874687b9aac1a936501d4ed2c49567fd1b575\lwjgl-stb-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\lwjgl-tinyfd-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a6697981b0449a5087c1d546fc08b4f73e8f98c9\lwjgl-tinyfd-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a88c494f3006eb91a7433b12a3a55a9a6c20788b\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\c336c84ee88cccb495c6ffa112395509e7378e8a\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\lwjgl-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\9e670718e050aeaeea0c2d5b907cffb142f2e58f\lwjgl-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\lwjgl-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\e9aca8c5479b520a2a7f0d542a118140e812c5e8\lwjgl-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.openjdk.nashorn\nashorn-core\15.4\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\nashorn-core-15.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-analysis\9.8\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\asm-analysis-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-commons\9.8\36e4d212970388e5bd2c5180292012502df461bb\asm-commons-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.8\18419ca5b77a2f81097c741e7872e6ab8d2f40d\asm-tree-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-util\9.8\395f1c1f035258511f27bc9b2583d76e4b143f59\asm-util-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.8\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\asm-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +C:\Users\user\IdeaProjects\sable\neoforge\build\moddev\artifacts\neoforge-21.1.219-client-extra-aka-minecraft-resources.jar diff --git a/neoforge/build/moddev/clientLog4j2.xml b/neoforge/build/moddev/clientLog4j2.xml new file mode 100644 index 0000000..0e0e8d1 --- /dev/null +++ b/neoforge/build/moddev/clientLog4j2.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/moddev/clientMixinExportLegacyClasspath.txt b/neoforge/build/moddev/clientMixinExportLegacyClasspath.txt new file mode 100644 index 0000000..54d4eeb --- /dev/null +++ b/neoforge/build/moddev/clientMixinExportLegacyClasspath.txt @@ -0,0 +1,107 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.3\b442a95f09e349927f5a945ecb594455870fcf4f\core-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.3\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\toml-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.errorprone\error_prone_annotations\2.18.0\89b684257096f548fa39a7df9fdaa409d4d4df91\error_prone_annotations-2.18.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\b421526c5f297295adef1c886e5246c39d4ac629\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.j2objc\j2objc-annotations\2.8\c85270e307e7b822f1086b93689124b89768e273\j2objc-annotations-2.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.ibm.icu\icu4j\73.2\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\icu4j-73.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.machinezoo.noexception\noexception\1.7.1\b65330c98e38a1f915fa54a6e5eca496505e3f0a\noexception-1.7.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\blocklist\1.0.10\5c685c5ffa94c4cd39496c7184c1d122e515ecef\blocklist-1.0.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\patchy\2.2.10\da05971b07cbb379d002cf7eaec6a2048211fefc\patchy-2.2.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\text2speech\1.17.9\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\text2speech-1.17.9.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-codec\commons-codec\1.16.0\4e3eb3d79888d76b54e28b350915b5dc3919c9de\commons-codec-1.16.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-logging\commons-logging\1.2\4bfc12adfe4842bf07b657f0369c4cb522955686\commons-logging-1.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\bootstraplauncher\2.0.2\1a2d076cbc33b0520cbacd591224427b2a20047d\bootstraplauncher-2.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\modlauncher\11.0.5\b8f0d49294f733fdb6173931b263553e943dc950\modlauncher-11.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\securejarhandler\3.0.8\c0ef95cecd8699a0449053ac7d9c160748d902cd\securejarhandler-3.0.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\sponge-mixin\0.15.2+mixin.0.8.7\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\sponge-mixin-0.15.2+mixin.0.8.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.jodah\typetools\0.6.3\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\typetools-0.6.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecraftforge\srgutils\0.4.15\ca408b131759478f164e010fae0d73997e125fb5\srgutils-0.4.15.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecrell\terminalconsoleappender\1.3.0\b562e9bb61235c9520e26282cdee71f8f802d1fc\terminalconsoleappender-1.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.accesstransformers\at-modlauncher\10.0.1\5aba50202aceead086bc09fbc2751c9f05cb4890\at-modlauncher-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\earlydisplay\4.0.42\46555dbfff14e9e052f1f693aed14d542a74e111\earlydisplay-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\loader\4.0.42\76e15f98bf676fb44b36c5e776f52a55581ec43a\loader-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarFileSystems\0.4.1\78f59f89defcd032ed788b151ca6a0d40ace796a\JarJarFileSystems-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarMetadata\0.4.1\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\JarJarMetadata-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarSelector\0.4.1\fb3cc7a58af22ad2880adb98af6d518128c47dae\JarJarSelector-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\accesstransformers\10.0.1\fd83b5725f76eae9115e9355fa1c456a6a441400\accesstransformers-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\bus\8.0.5\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\bus-8.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\coremods\7.0.3\9147e6f638b4272b3bd5fc8f92ad37802512c6c\coremods-7.0.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.0\52fe1949be64e3303aabaaa21e315f551db9c9f4\mergetool-2.0.0-api.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.antlr\antlr4-runtime\4.13.1\17125bae1d965624e265ef49552f6465a2bfa307\antlr4-runtime-4.13.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-compress\1.26.0\659feffdd12280201c8aacb8f7be94f9a883c824\commons-compress-1.26.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpclient\4.5.13\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\httpclient-4.5.13.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.4.16\51cf043c87253c9f58b539c9f7e44c8894223850\httpcore-4.4.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.maven\maven-artifact\3.8.5\4433f50c07debefaed0553bd0068f4f48d449313\maven-artifact-3.8.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.checkerframework\checker-qual\3.33.0\de2b60b62da487644fc11f734e73c8b0b431238f\checker-qual-3.33.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.codehaus.plexus\plexus-utils\3.3.0\cf43b5391de623b36fe066a21127baef82c64022\plexus-utils-3.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-reader\3.20.0\8f15415b022a25b473e8e16c28ae913186ffb9c4\jline-reader-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-terminal\3.20.0\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\jline-terminal-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\lwjgl-freetype-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\81091b006dbb43fab04c8c638e9ac87c51b4096d\lwjgl-freetype-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\82028265a0a2ff33523ca75137ada7dc176e5210\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\lwjgl-freetype-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\32334f3fd5270a59bad9939a93115acb6de36dcf\lwjgl-glfw-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\e449e28b4891fc423c54c85fbc5bb0b9efece67a\lwjgl-glfw-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\efa1eb78c5ccd840e9f329717109b5e892d72f8e\lwjgl-glfw-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\f27018dc74f6289574502b46cce55d52817554e2\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\426222fc027602a5f21b9c0fe79cde6a4c7a011f\lwjgl-jemalloc-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\b543467b7ff3c6920539a88ee602d34098628be5\lwjgl-jemalloc-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\f6063b6e0f23be483c5c88d84ce51b39dc69126c\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\lwjgl-openal-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\8e0615235116b9e4160dfe87bec90f5f6378bf72\lwjgl-openal-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\cf83862ae95d98496b26915024c7e666d8ab1c8f\lwjgl-openal-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\lwjgl-openal-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\2f6b0147078396a58979125a4c947664e98293a\lwjgl-opengl-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\65e956d3735a1abdc82eff4baec1b61174697d4b\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\d32d833dcaa2f355a886eaf21f0408b5f03241d\lwjgl-opengl-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\e6c1eec8be8a71951b830a4d69efc01c6531900c\lwjgl-opengl-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\1d9facdf6541de114b0f963be33505b7679c78cb\lwjgl-stb-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\25dd6161988d7e65f71d5065c99902402ee32746\lwjgl-stb-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\a584ab44de569708871f0a79561f4d8c37487f2c\lwjgl-stb-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\b5c874687b9aac1a936501d4ed2c49567fd1b575\lwjgl-stb-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\lwjgl-tinyfd-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a6697981b0449a5087c1d546fc08b4f73e8f98c9\lwjgl-tinyfd-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a88c494f3006eb91a7433b12a3a55a9a6c20788b\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\c336c84ee88cccb495c6ffa112395509e7378e8a\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\lwjgl-3.3.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\9e670718e050aeaeea0c2d5b907cffb142f2e58f\lwjgl-3.3.3-natives-windows-x86.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\lwjgl-3.3.3-natives-windows.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\e9aca8c5479b520a2a7f0d542a118140e812c5e8\lwjgl-3.3.3-natives-windows-arm64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.openjdk.nashorn\nashorn-core\15.4\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\nashorn-core-15.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-analysis\9.8\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\asm-analysis-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-commons\9.8\36e4d212970388e5bd2c5180292012502df461bb\asm-commons-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.8\18419ca5b77a2f81097c741e7872e6ab8d2f40d\asm-tree-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-util\9.8\395f1c1f035258511f27bc9b2583d76e4b143f59\asm-util-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.8\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\asm-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +C:\Users\user\IdeaProjects\sable\neoforge\build\moddev\artifacts\neoforge-21.1.219-client-extra-aka-minecraft-resources.jar diff --git a/neoforge/build/moddev/clientMixinExportLog4j2.xml b/neoforge/build/moddev/clientMixinExportLog4j2.xml new file mode 100644 index 0000000..0e0e8d1 --- /dev/null +++ b/neoforge/build/moddev/clientMixinExportLog4j2.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/moddev/clientMixinExportRunProgramArgs.txt b/neoforge/build/moddev/clientMixinExportRunProgramArgs.txt new file mode 100644 index 0000000..c3a7396 --- /dev/null +++ b/neoforge/build/moddev/clientMixinExportRunProgramArgs.txt @@ -0,0 +1,24 @@ +# Main Class +cpw.mods.bootstraplauncher.BootstrapLauncher + +# NeoForge Run-Type Program Arguments +--launchTarget +forgeclientdev +--version +21.1.219 +--assetIndex +17 +--assetsDir +C:\\Users\\user\\.gradle\\caches\\neoformruntime\\assets +--gameDir +. +--fml.fmlVersion +4.0.42 +--fml.mcVersion +1.21.1 +--fml.neoForgeVersion +21.1.219 +--fml.neoFormVersion +20240808.144430 + +# User Supplied Program Arguments \ No newline at end of file diff --git a/neoforge/build/moddev/clientMixinExportRunVmArgs.txt b/neoforge/build/moddev/clientMixinExportRunVmArgs.txt new file mode 100644 index 0000000..9525d7b --- /dev/null +++ b/neoforge/build/moddev/clientMixinExportRunVmArgs.txt @@ -0,0 +1,19 @@ +-p +C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +--add-modules +ALL-MODULE-PATH +--add-opens +java.base/java.util.jar=cpw.mods.securejarhandler +--add-opens +java.base/java.lang.invoke=cpw.mods.securejarhandler +--add-exports +java.base/sun.security.util=cpw.mods.securejarhandler +--add-exports +jdk.naming.dns/com.sun.jndi.dns=java.naming +-Dlog4j2.configurationFile=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\clientMixinExportLog4j2.xml +-Djava.net.preferIPv6Addresses=system +-DignoreList=mixinextras-neoforge-0.5.0.jar,client-extra,neoforge- +-DlegacyClassPath.file=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\clientMixinExportLegacyClasspath.txt +-Dneoforge.enableGameTest=true +-Dneoforge.enabledGameTestNamespaces=sable +-Dmixin.debug.export=true \ No newline at end of file diff --git a/neoforge/build/moddev/clientRunProgramArgs.txt b/neoforge/build/moddev/clientRunProgramArgs.txt new file mode 100644 index 0000000..c3a7396 --- /dev/null +++ b/neoforge/build/moddev/clientRunProgramArgs.txt @@ -0,0 +1,24 @@ +# Main Class +cpw.mods.bootstraplauncher.BootstrapLauncher + +# NeoForge Run-Type Program Arguments +--launchTarget +forgeclientdev +--version +21.1.219 +--assetIndex +17 +--assetsDir +C:\\Users\\user\\.gradle\\caches\\neoformruntime\\assets +--gameDir +. +--fml.fmlVersion +4.0.42 +--fml.mcVersion +1.21.1 +--fml.neoForgeVersion +21.1.219 +--fml.neoFormVersion +20240808.144430 + +# User Supplied Program Arguments \ No newline at end of file diff --git a/neoforge/build/moddev/clientRunVmArgs.txt b/neoforge/build/moddev/clientRunVmArgs.txt new file mode 100644 index 0000000..5ad285d --- /dev/null +++ b/neoforge/build/moddev/clientRunVmArgs.txt @@ -0,0 +1,18 @@ +-p +C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +--add-modules +ALL-MODULE-PATH +--add-opens +java.base/java.util.jar=cpw.mods.securejarhandler +--add-opens +java.base/java.lang.invoke=cpw.mods.securejarhandler +--add-exports +java.base/sun.security.util=cpw.mods.securejarhandler +--add-exports +jdk.naming.dns/com.sun.jndi.dns=java.naming +-Dlog4j2.configurationFile=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\clientLog4j2.xml +-Djava.net.preferIPv6Addresses=system +-DignoreList=mixinextras-neoforge-0.5.0.jar,client-extra,neoforge- +-DlegacyClassPath.file=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\clientLegacyClasspath.txt +-Dneoforge.enableGameTest=true +-Dneoforge.enabledGameTestNamespaces=sable \ No newline at end of file diff --git a/neoforge/build/moddev/gameTestLegacyClasspath.txt b/neoforge/build/moddev/gameTestLegacyClasspath.txt new file mode 100644 index 0000000..0a8faae --- /dev/null +++ b/neoforge/build/moddev/gameTestLegacyClasspath.txt @@ -0,0 +1,67 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.3\b442a95f09e349927f5a945ecb594455870fcf4f\core-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.3\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\toml-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.errorprone\error_prone_annotations\2.18.0\89b684257096f548fa39a7df9fdaa409d4d4df91\error_prone_annotations-2.18.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\b421526c5f297295adef1c886e5246c39d4ac629\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.j2objc\j2objc-annotations\2.8\c85270e307e7b822f1086b93689124b89768e273\j2objc-annotations-2.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.machinezoo.noexception\noexception\1.7.1\b65330c98e38a1f915fa54a6e5eca496505e3f0a\noexception-1.7.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\bootstraplauncher\2.0.2\1a2d076cbc33b0520cbacd591224427b2a20047d\bootstraplauncher-2.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\modlauncher\11.0.5\b8f0d49294f733fdb6173931b263553e943dc950\modlauncher-11.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\securejarhandler\3.0.8\c0ef95cecd8699a0449053ac7d9c160748d902cd\securejarhandler-3.0.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\54188f271e388e7f313aea995e82f58ce2cdb809\netty-transport-native-epoll-4.1.97.Final-linux-x86_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\5514744c588190ffda076b35a9b8c9f24946a960\netty-transport-native-epoll-4.1.97.Final-linux-aarch_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\sponge-mixin\0.15.2+mixin.0.8.7\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\sponge-mixin-0.15.2+mixin.0.8.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.jodah\typetools\0.6.3\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\typetools-0.6.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecraftforge\srgutils\0.4.15\ca408b131759478f164e010fae0d73997e125fb5\srgutils-0.4.15.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecrell\terminalconsoleappender\1.3.0\b562e9bb61235c9520e26282cdee71f8f802d1fc\terminalconsoleappender-1.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.accesstransformers\at-modlauncher\10.0.1\5aba50202aceead086bc09fbc2751c9f05cb4890\at-modlauncher-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\earlydisplay\4.0.42\46555dbfff14e9e052f1f693aed14d542a74e111\earlydisplay-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\loader\4.0.42\76e15f98bf676fb44b36c5e776f52a55581ec43a\loader-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarFileSystems\0.4.1\78f59f89defcd032ed788b151ca6a0d40ace796a\JarJarFileSystems-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarMetadata\0.4.1\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\JarJarMetadata-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarSelector\0.4.1\fb3cc7a58af22ad2880adb98af6d518128c47dae\JarJarSelector-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\accesstransformers\10.0.1\fd83b5725f76eae9115e9355fa1c456a6a441400\accesstransformers-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\bus\8.0.5\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\bus-8.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\coremods\7.0.3\9147e6f638b4272b3bd5fc8f92ad37802512c6c\coremods-7.0.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.0\52fe1949be64e3303aabaaa21e315f551db9c9f4\mergetool-2.0.0-api.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.antlr\antlr4-runtime\4.13.1\17125bae1d965624e265ef49552f6465a2bfa307\antlr4-runtime-4.13.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.maven\maven-artifact\3.8.5\4433f50c07debefaed0553bd0068f4f48d449313\maven-artifact-3.8.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.checkerframework\checker-qual\3.33.0\de2b60b62da487644fc11f734e73c8b0b431238f\checker-qual-3.33.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.codehaus.plexus\plexus-utils\3.3.0\cf43b5391de623b36fe066a21127baef82c64022\plexus-utils-3.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-reader\3.20.0\8f15415b022a25b473e8e16c28ae913186ffb9c4\jline-reader-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-terminal\3.20.0\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\jline-terminal-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.openjdk.nashorn\nashorn-core\15.4\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\nashorn-core-15.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-analysis\9.8\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\asm-analysis-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-commons\9.8\36e4d212970388e5bd2c5180292012502df461bb\asm-commons-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.8\18419ca5b77a2f81097c741e7872e6ab8d2f40d\asm-tree-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-util\9.8\395f1c1f035258511f27bc9b2583d76e4b143f59\asm-util-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.8\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\asm-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +C:\Users\user\IdeaProjects\sable\neoforge\build\moddev\artifacts\neoforge-21.1.219-client-extra-aka-minecraft-resources.jar diff --git a/neoforge/build/moddev/gameTestLog4j2.xml b/neoforge/build/moddev/gameTestLog4j2.xml new file mode 100644 index 0000000..0e0e8d1 --- /dev/null +++ b/neoforge/build/moddev/gameTestLog4j2.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/moddev/gameTestRunProgramArgs.txt b/neoforge/build/moddev/gameTestRunProgramArgs.txt new file mode 100644 index 0000000..7421347 --- /dev/null +++ b/neoforge/build/moddev/gameTestRunProgramArgs.txt @@ -0,0 +1,18 @@ +# Main Class +cpw.mods.bootstraplauncher.BootstrapLauncher + +# NeoForge Run-Type Program Arguments +--launchTarget +forgeserverdev +--gameDir +. +--fml.fmlVersion +4.0.42 +--fml.mcVersion +1.21.1 +--fml.neoForgeVersion +21.1.219 +--fml.neoFormVersion +20240808.144430 + +# User Supplied Program Arguments \ No newline at end of file diff --git a/neoforge/build/moddev/gameTestRunVmArgs.txt b/neoforge/build/moddev/gameTestRunVmArgs.txt new file mode 100644 index 0000000..91f73c5 --- /dev/null +++ b/neoforge/build/moddev/gameTestRunVmArgs.txt @@ -0,0 +1,19 @@ +-p +C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +--add-modules +ALL-MODULE-PATH +--add-opens +java.base/java.util.jar=cpw.mods.securejarhandler +--add-opens +java.base/java.lang.invoke=cpw.mods.securejarhandler +--add-exports +java.base/sun.security.util=cpw.mods.securejarhandler +--add-exports +jdk.naming.dns/com.sun.jndi.dns=java.naming +-Dlog4j2.configurationFile=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\gameTestLog4j2.xml +-Djava.net.preferIPv6Addresses=system +-DignoreList=mixinextras-neoforge-0.5.0.jar,client-extra,neoforge- +-DlegacyClassPath.file=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\gameTestLegacyClasspath.txt +-Dneoforge.enableGameTest=true +-Dneoforge.gameTestServer=true +-Dneoforge.enabledGameTestNamespaces=sable \ No newline at end of file diff --git a/neoforge/build/moddev/minecraft_assets.properties b/neoforge/build/moddev/minecraft_assets.properties new file mode 100644 index 0000000..a475624 --- /dev/null +++ b/neoforge/build/moddev/minecraft_assets.properties @@ -0,0 +1,3 @@ +#Mon May 11 11:40:40 EEST 2026 +asset_index=17 +assets_root=C\:\\Users\\user\\.gradle\\caches\\neoformruntime\\assets diff --git a/neoforge/build/moddev/serverLegacyClasspath.txt b/neoforge/build/moddev/serverLegacyClasspath.txt new file mode 100644 index 0000000..0a8faae --- /dev/null +++ b/neoforge/build/moddev/serverLegacyClasspath.txt @@ -0,0 +1,67 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.3\b442a95f09e349927f5a945ecb594455870fcf4f\core-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.3\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\toml-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.errorprone\error_prone_annotations\2.18.0\89b684257096f548fa39a7df9fdaa409d4d4df91\error_prone_annotations-2.18.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\b421526c5f297295adef1c886e5246c39d4ac629\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.j2objc\j2objc-annotations\2.8\c85270e307e7b822f1086b93689124b89768e273\j2objc-annotations-2.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.machinezoo.noexception\noexception\1.7.1\b65330c98e38a1f915fa54a6e5eca496505e3f0a\noexception-1.7.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\bootstraplauncher\2.0.2\1a2d076cbc33b0520cbacd591224427b2a20047d\bootstraplauncher-2.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\modlauncher\11.0.5\b8f0d49294f733fdb6173931b263553e943dc950\modlauncher-11.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\securejarhandler\3.0.8\c0ef95cecd8699a0449053ac7d9c160748d902cd\securejarhandler-3.0.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\54188f271e388e7f313aea995e82f58ce2cdb809\netty-transport-native-epoll-4.1.97.Final-linux-x86_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\5514744c588190ffda076b35a9b8c9f24946a960\netty-transport-native-epoll-4.1.97.Final-linux-aarch_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\sponge-mixin\0.15.2+mixin.0.8.7\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\sponge-mixin-0.15.2+mixin.0.8.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.jodah\typetools\0.6.3\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\typetools-0.6.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecraftforge\srgutils\0.4.15\ca408b131759478f164e010fae0d73997e125fb5\srgutils-0.4.15.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecrell\terminalconsoleappender\1.3.0\b562e9bb61235c9520e26282cdee71f8f802d1fc\terminalconsoleappender-1.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.accesstransformers\at-modlauncher\10.0.1\5aba50202aceead086bc09fbc2751c9f05cb4890\at-modlauncher-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\earlydisplay\4.0.42\46555dbfff14e9e052f1f693aed14d542a74e111\earlydisplay-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\loader\4.0.42\76e15f98bf676fb44b36c5e776f52a55581ec43a\loader-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarFileSystems\0.4.1\78f59f89defcd032ed788b151ca6a0d40ace796a\JarJarFileSystems-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarMetadata\0.4.1\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\JarJarMetadata-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarSelector\0.4.1\fb3cc7a58af22ad2880adb98af6d518128c47dae\JarJarSelector-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\accesstransformers\10.0.1\fd83b5725f76eae9115e9355fa1c456a6a441400\accesstransformers-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\bus\8.0.5\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\bus-8.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\coremods\7.0.3\9147e6f638b4272b3bd5fc8f92ad37802512c6c\coremods-7.0.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.0\52fe1949be64e3303aabaaa21e315f551db9c9f4\mergetool-2.0.0-api.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.antlr\antlr4-runtime\4.13.1\17125bae1d965624e265ef49552f6465a2bfa307\antlr4-runtime-4.13.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.maven\maven-artifact\3.8.5\4433f50c07debefaed0553bd0068f4f48d449313\maven-artifact-3.8.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.checkerframework\checker-qual\3.33.0\de2b60b62da487644fc11f734e73c8b0b431238f\checker-qual-3.33.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.codehaus.plexus\plexus-utils\3.3.0\cf43b5391de623b36fe066a21127baef82c64022\plexus-utils-3.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-reader\3.20.0\8f15415b022a25b473e8e16c28ae913186ffb9c4\jline-reader-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-terminal\3.20.0\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\jline-terminal-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.openjdk.nashorn\nashorn-core\15.4\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\nashorn-core-15.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-analysis\9.8\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\asm-analysis-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-commons\9.8\36e4d212970388e5bd2c5180292012502df461bb\asm-commons-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.8\18419ca5b77a2f81097c741e7872e6ab8d2f40d\asm-tree-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-util\9.8\395f1c1f035258511f27bc9b2583d76e4b143f59\asm-util-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.8\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\asm-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +C:\Users\user\IdeaProjects\sable\neoforge\build\moddev\artifacts\neoforge-21.1.219-client-extra-aka-minecraft-resources.jar diff --git a/neoforge/build/moddev/serverLog4j2.xml b/neoforge/build/moddev/serverLog4j2.xml new file mode 100644 index 0000000..0e0e8d1 --- /dev/null +++ b/neoforge/build/moddev/serverLog4j2.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/moddev/serverMixinExportLegacyClasspath.txt b/neoforge/build/moddev/serverMixinExportLegacyClasspath.txt new file mode 100644 index 0000000..0a8faae --- /dev/null +++ b/neoforge/build/moddev/serverMixinExportLegacyClasspath.txt @@ -0,0 +1,67 @@ +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\core\3.8.3\b442a95f09e349927f5a945ecb594455870fcf4f\core-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.electronwill.night-config\toml\3.8.3\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\toml-3.8.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.errorprone\error_prone_annotations\2.18.0\89b684257096f548fa39a7df9fdaa409d4d4df91\error_prone_annotations-2.18.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\listenablefuture\9999.0-empty-to-avoid-conflict-with-guava\b421526c5f297295adef1c886e5246c39d4ac629\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.j2objc\j2objc-annotations\2.8\c85270e307e7b822f1086b93689124b89768e273\j2objc-annotations-2.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.machinezoo.noexception\noexception\1.7.1\b65330c98e38a1f915fa54a6e5eca496505e3f0a\noexception-1.7.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\bootstraplauncher\2.0.2\1a2d076cbc33b0520cbacd591224427b2a20047d\bootstraplauncher-2.0.2.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\modlauncher\11.0.5\b8f0d49294f733fdb6173931b263553e943dc950\modlauncher-11.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\cpw.mods\securejarhandler\3.0.8\c0ef95cecd8699a0449053ac7d9c160748d902cd\securejarhandler-3.0.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\54188f271e388e7f313aea995e82f58ce2cdb809\netty-transport-native-epoll-4.1.97.Final-linux-x86_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-epoll\4.1.97.Final\5514744c588190ffda076b35a9b8c9f24946a960\netty-transport-native-epoll-4.1.97.Final-linux-aarch_64.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.fabricmc\sponge-mixin\0.15.2+mixin.0.8.7\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\sponge-mixin-0.15.2+mixin.0.8.7.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.jodah\typetools\0.6.3\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\typetools-0.6.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecraftforge\srgutils\0.4.15\ca408b131759478f164e010fae0d73997e125fb5\srgutils-0.4.15.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.minecrell\terminalconsoleappender\1.3.0\b562e9bb61235c9520e26282cdee71f8f802d1fc\terminalconsoleappender-1.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.accesstransformers\at-modlauncher\10.0.1\5aba50202aceead086bc09fbc2751c9f05cb4890\at-modlauncher-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\earlydisplay\4.0.42\46555dbfff14e9e052f1f693aed14d542a74e111\earlydisplay-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.fancymodloader\loader\4.0.42\76e15f98bf676fb44b36c5e776f52a55581ec43a\loader-4.0.42.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarFileSystems\0.4.1\78f59f89defcd032ed788b151ca6a0d40ace796a\JarJarFileSystems-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarMetadata\0.4.1\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\JarJarMetadata-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\JarJarSelector\0.4.1\fb3cc7a58af22ad2880adb98af6d518128c47dae\JarJarSelector-0.4.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\accesstransformers\10.0.1\fd83b5725f76eae9115e9355fa1c456a6a441400\accesstransformers-10.0.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\bus\8.0.5\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\bus-8.0.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\coremods\7.0.3\9147e6f638b4272b3bd5fc8f92ad37802512c6c\coremods-7.0.3.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.0\52fe1949be64e3303aabaaa21e315f551db9c9f4\mergetool-2.0.0-api.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.antlr\antlr4-runtime\4.13.1\17125bae1d965624e265ef49552f6465a2bfa307\antlr4-runtime-4.13.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.maven\maven-artifact\3.8.5\4433f50c07debefaed0553bd0068f4f48d449313\maven-artifact-3.8.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.checkerframework\checker-qual\3.33.0\de2b60b62da487644fc11f734e73c8b0b431238f\checker-qual-3.33.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.codehaus.plexus\plexus-utils\3.3.0\cf43b5391de623b36fe066a21127baef82c64022\plexus-utils-3.3.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-reader\3.20.0\8f15415b022a25b473e8e16c28ae913186ffb9c4\jline-reader-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jline\jline-terminal\3.20.0\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\jline-terminal-3.20.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.openjdk.nashorn\nashorn-core\15.4\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\nashorn-core-15.4.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-analysis\9.8\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\asm-analysis-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-commons\9.8\36e4d212970388e5bd2c5180292012502df461bb\asm-commons-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-tree\9.8\18419ca5b77a2f81097c741e7872e6ab8d2f40d\asm-tree-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm-util\9.8\395f1c1f035258511f27bc9b2583d76e4b143f59\asm-util-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.ow2.asm\asm\9.8\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\asm-9.8.jar +C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +C:\Users\user\IdeaProjects\sable\neoforge\build\moddev\artifacts\neoforge-21.1.219-client-extra-aka-minecraft-resources.jar diff --git a/neoforge/build/moddev/serverMixinExportLog4j2.xml b/neoforge/build/moddev/serverMixinExportLog4j2.xml new file mode 100644 index 0000000..0e0e8d1 --- /dev/null +++ b/neoforge/build/moddev/serverMixinExportLog4j2.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/moddev/serverMixinExportRunProgramArgs.txt b/neoforge/build/moddev/serverMixinExportRunProgramArgs.txt new file mode 100644 index 0000000..7421347 --- /dev/null +++ b/neoforge/build/moddev/serverMixinExportRunProgramArgs.txt @@ -0,0 +1,18 @@ +# Main Class +cpw.mods.bootstraplauncher.BootstrapLauncher + +# NeoForge Run-Type Program Arguments +--launchTarget +forgeserverdev +--gameDir +. +--fml.fmlVersion +4.0.42 +--fml.mcVersion +1.21.1 +--fml.neoForgeVersion +21.1.219 +--fml.neoFormVersion +20240808.144430 + +# User Supplied Program Arguments \ No newline at end of file diff --git a/neoforge/build/moddev/serverMixinExportRunVmArgs.txt b/neoforge/build/moddev/serverMixinExportRunVmArgs.txt new file mode 100644 index 0000000..fdfdc00 --- /dev/null +++ b/neoforge/build/moddev/serverMixinExportRunVmArgs.txt @@ -0,0 +1,18 @@ +-p +C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +--add-modules +ALL-MODULE-PATH +--add-opens +java.base/java.util.jar=cpw.mods.securejarhandler +--add-opens +java.base/java.lang.invoke=cpw.mods.securejarhandler +--add-exports +java.base/sun.security.util=cpw.mods.securejarhandler +--add-exports +jdk.naming.dns/com.sun.jndi.dns=java.naming +-Dlog4j2.configurationFile=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\serverMixinExportLog4j2.xml +-Djava.net.preferIPv6Addresses=system +-DignoreList=mixinextras-neoforge-0.5.0.jar,client-extra,neoforge- +-DlegacyClassPath.file=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\serverMixinExportLegacyClasspath.txt +-Dneoforge.enabledGameTestNamespaces=sable +-Dmixin.debug.export=true \ No newline at end of file diff --git a/neoforge/build/moddev/serverRunProgramArgs.txt b/neoforge/build/moddev/serverRunProgramArgs.txt new file mode 100644 index 0000000..7421347 --- /dev/null +++ b/neoforge/build/moddev/serverRunProgramArgs.txt @@ -0,0 +1,18 @@ +# Main Class +cpw.mods.bootstraplauncher.BootstrapLauncher + +# NeoForge Run-Type Program Arguments +--launchTarget +forgeserverdev +--gameDir +. +--fml.fmlVersion +4.0.42 +--fml.mcVersion +1.21.1 +--fml.neoForgeVersion +21.1.219 +--fml.neoFormVersion +20240808.144430 + +# User Supplied Program Arguments \ No newline at end of file diff --git a/neoforge/build/moddev/serverRunVmArgs.txt b/neoforge/build/moddev/serverRunVmArgs.txt new file mode 100644 index 0000000..125862d --- /dev/null +++ b/neoforge/build/moddev/serverRunVmArgs.txt @@ -0,0 +1,17 @@ +-p +C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar;C:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +--add-modules +ALL-MODULE-PATH +--add-opens +java.base/java.util.jar=cpw.mods.securejarhandler +--add-opens +java.base/java.lang.invoke=cpw.mods.securejarhandler +--add-exports +java.base/sun.security.util=cpw.mods.securejarhandler +--add-exports +jdk.naming.dns/com.sun.jndi.dns=java.naming +-Dlog4j2.configurationFile=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\serverLog4j2.xml +-Djava.net.preferIPv6Addresses=system +-DignoreList=mixinextras-neoforge-0.5.0.jar,client-extra,neoforge- +-DlegacyClassPath.file=C:\\Users\\user\\IdeaProjects\\sable\\neoforge\\build\\moddev\\serverLegacyClasspath.txt +-Dneoforge.enabledGameTestNamespaces=sable \ No newline at end of file diff --git a/neoforge/build/reports/checkstyle/main.html b/neoforge/build/reports/checkstyle/main.html new file mode 100644 index 0000000..22c2bfc --- /dev/null +++ b/neoforge/build/reports/checkstyle/main.html @@ -0,0 +1,73 @@ + + + + Checkstyle Violations + + + +

+ +

Checkstyle Results

+ +

+
+

Summary

+ + + + + + + +
Total files checkedTotal violationsFiles with violations
20400
+
+
+

Violations

+

+ No violations were found. +

+
+
+

+ Generated by Gradle 9.5.0 with Checkstyle 10.24.0. +

+ + diff --git a/neoforge/build/reports/checkstyle/main.xml b/neoforge/build/reports/checkstyle/main.xml new file mode 100644 index 0000000..b3dbc25 --- /dev/null +++ b/neoforge/build/reports/checkstyle/main.xml @@ -0,0 +1,411 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/neoforge/build/resources/main/META-INF/accesstransformer.cfg b/neoforge/build/resources/main/META-INF/accesstransformer.cfg new file mode 100644 index 0000000..f24e1c9 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/accesstransformer.cfg @@ -0,0 +1,67 @@ +public net.minecraft.client.renderer.block.ModelBlockRenderer$Cache +public net.minecraft.server.level.ChunkHolder entityTickingChunkFuture +public net.minecraft.server.level.ChunkHolder tickingChunkFuture +public net.minecraft.server.level.ChunkHolder fullChunkFuture +public net.minecraft.client.renderer.block.BlockRenderDispatcher modelRenderer +public net.minecraft.client.renderer.block.ModelBlockRenderer$AmbientOcclusionFace +public net.minecraft.server.level.ServerChunkCache$MainThreadExecutor +public net.minecraft.client.renderer.LevelRenderer cullingFrustum +public net.minecraft.world.entity.projectile.AbstractHurtingProjectile accelerationPower +public net.minecraft.world.entity.projectile.Projectile Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder +public net.minecraft.server.level.ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V +public-f net.minecraft.client.renderer.chunk.SectionRenderDispatcher bufferPool +public-f net.minecraft.world.entity.ai.attributes.AttributeSupplier instances +public net.minecraft.server.level.ServerPlayer findRespawnAndUseSpawnBlock(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection updateGlobalBlockEntities(Ljava/util/Collection;)V +public net.minecraft.client.renderer.chunk.SectionRenderDispatcher$RenderSection setCompiled(Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +public net.minecraft.world.entity.Entity removalReason +public net.minecraft.world.entity.Entity levelCallback +public-f net.minecraft.world.entity.Entity getEyePosition(F)Lnet/minecraft/world/phys/Vec3; +public-f net.minecraft.world.entity.Entity setRemoved(Lnet/minecraft/world/entity/Entity$RemovalReason;)V +public net.minecraft.server.level.ChunkLevel ENTITY_TICKING_LEVEL +public net.minecraft.server.level.ChunkLevel BLOCK_TICKING_LEVEL +public net.minecraft.world.entity.decoration.HangingEntity calculateSupportBox()Lnet/minecraft/world/phys/AABB; +public net.minecraft.world.entity.LivingEntity dismountVehicle(Lnet/minecraft/world/entity/Entity;)V +public net.minecraft.world.level.lighting.LevelLightEngine skyEngine +public net.minecraft.world.level.lighting.LevelLightEngine blockEngine +public net.minecraft.server.level.ThreadedLevelLightEngine runUpdate()V +public net.minecraft.server.level.ThreadedLevelLightEngine updateChunkStatus(Lnet/minecraft/world/level/ChunkPos;)V +public net.minecraft.client.renderer.block.ModelBlockRenderer CACHE +public net.minecraft.server.network.PlayerChunkSender sendChunk(Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V +public net.minecraft.server.network.ServerCommonPacketListenerImpl connection +public net.minecraft.client.multiplayer.ClientChunkCache$Storage +public net.minecraft.network.Connection channel +public net.minecraft.client.renderer.RenderStateShard name +public net.minecraft.client.renderer.ShaderInstance samplerLocations +public net.minecraft.world.level.entity.PersistentEntitySectionManager sectionStorage +public net.minecraft.world.level.storage.DimensionDataStorage dataFolder +public net.minecraft.client.renderer.GameRenderer getFov(Lnet/minecraft/client/Camera;FZ)D +public-f net.minecraft.server.level.GenerationChunkHolder rescheduleChunkTask(Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V +public net.minecraft.client.particle.Particle zo +public net.minecraft.client.particle.Particle yo +public net.minecraft.client.particle.Particle xo +public net.minecraft.client.particle.Particle x +public net.minecraft.client.particle.Particle y +public net.minecraft.client.particle.Particle zd +public net.minecraft.client.particle.Particle z +public net.minecraft.client.particle.Particle yd +public net.minecraft.client.particle.Particle xd +public net.minecraft.world.level.ClipContext collisionContext +public net.minecraft.world.level.ClipContext fluid +public net.minecraft.world.level.ClipContext block +public net.minecraft.server.level.ChunkMap$DistanceManager +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +public net.minecraft.server.level.ChunkMap unloadQueue +public net.minecraft.server.level.ChunkMap toDrop +public net.minecraft.server.level.ChunkMap updatingChunkMap +public net.minecraft.server.level.ChunkMap visibleChunkMap +public net.minecraft.server.level.ChunkMap modified +public net.minecraft.server.level.ChunkMap chunkSaveCooldowns +public net.minecraft.server.level.ChunkMap scheduleUnload(JLnet/minecraft/server/level/ChunkHolder;)V +public net.minecraft.server.level.ChunkMap onFullChunkStatusChange(Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V +public net.minecraft.server.level.ChunkMap getChunks()Ljava/lang/Iterable; +public net.minecraft.server.level.ChunkMap saveChunkIfNeeded(Lnet/minecraft/server/level/ChunkHolder;)Z +public net.minecraft.server.level.ServerLevel entityManager + diff --git a/neoforge/build/resources/main/META-INF/neoforge.mods.toml b/neoforge/build/resources/main/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..33e5135 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/neoforge.mods.toml @@ -0,0 +1,67 @@ +modLoader = "javafml" +loaderVersion = "[4,)" +issueTrackerURL = "https://github.com/ryanhcode/sable/issues" +license = "PolyForm Shield License 1.0.0" + +[[mods]] +modId = "sable" +version = "1.2.2" +displayName = "Sable" +authors = "RyanHCode" +credits = "Ocelot, Eriksonn, Cyvack, Bee, Kyan, Cake, Rhyguy1" +description = '''Interactive moving block structures with physics.''' +logoFile = "icon.png" + +["lithium:options"] +"mixin.entity.collisions.unpushable_cramming" = false +"mixin.world.chunk_access" = false +"mixin.world.chunk_ticking" = false +"mixin.world.tick_scheduler" = false + +[[mixins]] +config = "sable.mixins.json" + +[[mixins]] +config = "sable-neoforge.mixins.json" + +[[dependencies.sable]] +modId = "neoforge" +type = "required" +versionRange = "[21.1.219,)" +ordering = "NONE" +side = "BOTH" + +[[dependencies.sable]] +modId = "minecraft" +type = "required" +versionRange = "[1.21.1]" +ordering = "NONE" +side = "BOTH" + +[[dependencies.sable]] +modId = "flywheel" +type = "optional" +versionRange = "[1.0.6,)" +ordering = "AFTER" +side = "CLIENT" + +[[dependencies.sable]] +modId = "create" +type = "optional" +versionRange = "[6.0.10,6.1.0)" +ordering = "AFTER" +side = "CLIENT" + +[[dependencies.sable]] +modId = "sablecompanion" +type = "incompatible" +versionRange = "(1.6.0,)" +reason = "Sable is out of date" + +[[dependencies.sable]] +modId = "scalablelux" +type = "incompatible" + +[[dependencies.sable]] +modId = "littletiles" +type = "incompatible" diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion new file mode 100644 index 0000000..a9131c7 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.companion.SableCompanion @@ -0,0 +1 @@ +dev.ryanhcode.sable.ActiveSableCompanion \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform new file mode 100644 index 0000000..f3b2937 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableAssemblyPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform new file mode 100644 index 0000000..7280c64 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableChunkEventPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform new file mode 100644 index 0000000..b22613c --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableEventPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform new file mode 100644 index 0000000..d082ff1 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableEventPublishPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform new file mode 100644 index 0000000..e348fcb --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableLoaderPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform new file mode 100644 index 0000000..0637a45 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SablePlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform new file mode 100644 index 0000000..f90e686 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SablePlotPlatformImpl \ No newline at end of file diff --git a/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform new file mode 100644 index 0000000..94b52b9 --- /dev/null +++ b/neoforge/build/resources/main/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableSubLevelRenderPlatformImpl diff --git a/neoforge/build/resources/main/architectury.common.json b/neoforge/build/resources/main/architectury.common.json new file mode 100644 index 0000000..7a73a41 --- /dev/null +++ b/neoforge/build/resources/main/architectury.common.json @@ -0,0 +1,2 @@ +{ +} \ No newline at end of file diff --git a/neoforge/build/resources/main/assets/flywheel/explanation.md b/neoforge/build/resources/main/assets/flywheel/explanation.md new file mode 100644 index 0000000..db24a17 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/explanation.md @@ -0,0 +1,7 @@ +Sable's sub-levels each contain their own lighting sections, and lighting data. + +We need Flywheel shaders to be aware of this, so we change and override the lighting storage, LUT, and shaders to respect an additional "scene ID". + +I'm not happy with the large amounts of duplicated shader code in these overrides, but it's the route we are going with for now. + +Reference https://github.com/Engine-Room/Flywheel/tree/1.21.1/dev for the original shaders and lighting code that these overrides are based on. \ No newline at end of file diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.frag b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.frag new file mode 100644 index 0000000..3224934 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.frag @@ -0,0 +1,31 @@ +#include "flywheel:internal/material.glsl" +#include "flywheel:internal/api_impl.glsl" +#include "flywheel:internal/uniforms/uniforms.glsl" + +in vec4 flw_vertexPos; +in vec4 flw_vertexColor; +in vec2 flw_vertexTexCoord; +flat in ivec2 flw_vertexOverlay; +in vec2 flw_vertexLight; +in vec3 flw_vertexNormal; + +in float flw_distance; + +#ifdef FLW_EMBEDDED +flat in float flw_skyLightScale; +flat in uint flw_vertexLightingSceneId; +in vec4 flw_vertexLightingPos; +#endif + +vec4 flw_sampleColor; + +FlwMaterial flw_material; + +bool flw_fragDiffuse; +vec4 flw_fragColor; +ivec2 flw_fragOverlay; +vec2 flw_fragLight; + +uniform sampler2D flw_diffuseTex; +uniform sampler2D flw_overlayTex; +uniform sampler2D flw_lightTex; diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.glsl new file mode 100644 index 0000000..9bbe87b --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/api_impl.glsl @@ -0,0 +1,26 @@ +struct FlwLightAo { + vec2 light; + float ao; +}; + +/// Get the light at the given world position relative to flw_renderOrigin from the given normal. +/// This may be interpolated for smooth lighting. +bool flw_light(uint scene, vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light); + +/// Fetches the light value at the given block position. +/// Returns false if the light for the given block is not available. +bool flw_lightFetch(uint scene, ivec3 blockPos, out vec2 light); + +// Backwards compatible overloads + +/// Get the light at the given world position relative to flw_renderOrigin from the given normal. +/// This may be interpolated for smooth lighting. +bool flw_light(vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light) { + return flw_light(0u, worldPos, normal, renderOrigin, light); +} + +/// Fetches the light value at the given block position. +/// Returns false if the light for the given block is not available. +bool flw_lightFetch(ivec3 blockPos, out vec2 light) { + return flw_lightFetch(0u, blockPos, light); +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/common.vert b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/common.vert new file mode 100644 index 0000000..022b6db --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/common.vert @@ -0,0 +1,112 @@ +#include "flywheel:internal/fog_distance.glsl" + +#ifdef _FLW_CRUMBLING +out vec2 _flw_crumblingTexCoord; + +const int DOWN = 0; +const int UP = 1; +const int NORTH = 2; +const int SOUTH = 3; +const int WEST = 4; +const int EAST = 5; + +// based on net.minecraftforge.client.ForgeHooksClient.getNearestStable +int getNearestFacing(vec3 normal) { + float maxAlignment = -2; + int face = 2; + + // Calculate the alignment of the normal vector with each axis. + // Note that `-dot(normal, axis) == dot(normal, -axis)`. + vec3 alignment = vec3( + dot(normal, vec3(1., 0., 0.)), + dot(normal, vec3(0., 1., 0.)), + dot(normal, vec3(0., 0., 1.)) + ); + + if (-alignment.y > maxAlignment) { + maxAlignment = -alignment.y; + face = DOWN; + } + if (alignment.y > maxAlignment) { + maxAlignment = alignment.y; + face = UP; + } + if (-alignment.z > maxAlignment) { + maxAlignment = -alignment.z; + face = NORTH; + } + if (alignment.z > maxAlignment) { + maxAlignment = alignment.z; + face = SOUTH; + } + if (-alignment.x > maxAlignment) { + maxAlignment = -alignment.x; + face = WEST; + } + if (alignment.x > maxAlignment) { + maxAlignment = alignment.x; + face = EAST; + } + + return face; +} + +vec2 getCrumblingTexCoord() { + switch (getNearestFacing(flw_vertexNormal)) { + case DOWN: return vec2(flw_vertexPos.x, -flw_vertexPos.z); + case UP: return vec2(flw_vertexPos.x, flw_vertexPos.z); + case NORTH: return vec2(-flw_vertexPos.x, -flw_vertexPos.y); + case SOUTH: return vec2(flw_vertexPos.x, -flw_vertexPos.y); + case WEST: return vec2(-flw_vertexPos.z, -flw_vertexPos.y); + case EAST: return vec2(flw_vertexPos.z, -flw_vertexPos.y); + } + + // default to north + return vec2(-flw_vertexPos.x, -flw_vertexPos.y); +} +#endif + +#ifdef FLW_EMBEDDED +mat4 _flw_modelMatrix; +mat3 _flw_normalMatrix; +uint _flw_lightingSceneId; +float _flw_skyLightScale; +mat4 _flw_lightingSceneMatrix; +flat out uint flw_vertexLightingSceneId; +flat out float flw_skyLightScale; +out vec4 flw_vertexLightingPos; +#endif + +#ifdef _FLW_DEBUG +flat out uvec2 _flw_ids; +#endif + +void _flw_main(in FlwInstance instance, in uint stableInstanceID, in uint baseVertex) { + flw_vertexId = gl_VertexID - baseVertex; + + _flw_layoutVertex(); + flw_instanceVertex(instance); + flw_materialVertex(); + + #ifdef _FLW_CRUMBLING + _flw_crumblingTexCoord = getCrumblingTexCoord(); + #endif + + #ifdef FLW_EMBEDDED + flw_vertexLightingPos = _flw_lightingSceneMatrix * flw_vertexPos; + flw_vertexPos = _flw_modelMatrix * flw_vertexPos; + flw_vertexNormal = _flw_normalMatrix * flw_vertexNormal; + flw_vertexLightingSceneId = _flw_lightingSceneId; + flw_skyLightScale = _flw_skyLightScale; + #endif + + flw_vertexNormal = normalize(flw_vertexNormal); + + flw_distance = fogDistance(flw_vertexPos.xyz, flw_cameraPos, flw_fogShape); + + gl_Position = flw_viewProjection * flw_vertexPos; + + #ifdef _FLW_DEBUG + _flw_ids = uvec2(stableInstanceID, baseVertex); + #endif +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/main.vert b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/main.vert new file mode 100644 index 0000000..ee3a371 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/main.vert @@ -0,0 +1,55 @@ +#include "flywheel:internal/common.vert" +#include "flywheel:internal/packed_material.glsl" +#include "flywheel:internal/indirect/buffer_bindings.glsl" +#include "flywheel:internal/indirect/draw_command.glsl" +#include "flywheel:internal/indirect/light.glsl" +#include "flywheel:internal/indirect/matrices.glsl" + +layout(std430, binding = _FLW_DRAW_INSTANCE_INDEX_BUFFER_BINDING) restrict readonly buffer TargetBuffer { + uint _flw_instanceIndices[]; +}; + +layout(std430, binding = _FLW_DRAW_BUFFER_BINDING) restrict readonly buffer DrawBuffer { + MeshDrawCommand _flw_drawCommands[]; +}; + +#ifdef FLW_EMBEDDED +layout(std430, binding = _FLW_MATRIX_BUFFER_BINDING) restrict buffer MatrixBuffer { + Matrices _flw_matrices[]; +}; +#endif + +uniform uint _flw_baseDraw; + +flat out uvec2 _flw_packedMaterial; + +#if __VERSION__ < 460 +#define flw_baseInstance gl_BaseInstanceARB +#define flw_drawId gl_DrawIDARB +#else +#define flw_baseInstance gl_BaseInstance +#define flw_drawId gl_DrawID +#endif + +void main() { + uint drawIndex = flw_drawId + _flw_baseDraw; + MeshDrawCommand draw = _flw_drawCommands[drawIndex]; + + uint packedMaterialProperties = draw.packedMaterialProperties; + _flw_unpackMaterialProperties(packedMaterialProperties, flw_material); + _flw_packedMaterial = uvec2(draw.packedFogAndCutout, packedMaterialProperties); + + #ifdef FLW_EMBEDDED + _flw_unpackMatrices(_flw_matrices[draw.matrixIndex], _flw_modelMatrix, _flw_normalMatrix, _flw_lightingSceneId, _flw_skyLightScale, _flw_lightingSceneMatrix); + #endif + + #ifdef _FLW_CRUMBLING + uint instanceIndex = flw_baseInstance; + #else + uint instanceIndex = _flw_instanceIndices[flw_baseInstance + gl_InstanceID]; + #endif + + FlwInstance instance = _flw_unpackInstance(instanceIndex); + + _flw_main(instance, instanceIndex, draw.vertexOffset); +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/matrices.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/matrices.glsl new file mode 100644 index 0000000..6c09000 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/indirect/matrices.glsl @@ -0,0 +1,19 @@ +struct Matrices { + mat4 pose; + vec4 normalA; + vec4 normalB; + vec4 normalC; + float skyLightScale; + uint sceneID; + float _padding1; + float _padding2; + mat4 lightingSceneMatrix; +}; + +void _flw_unpackMatrices(in Matrices mats, out mat4 pose, out mat3 normal, out uint lightingSceneId, out float skyLightScale, out mat4 lightingSceneMatrix) { + pose = mats.pose; + normal = mat3(mats.normalA.xyz, mats.normalB.xyz, mats.normalC.xyz); + lightingSceneId = mats.sceneID; + skyLightScale = mats.skyLightScale; + lightingSceneMatrix = mats.lightingSceneMatrix; +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/instancing/main.vert b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/instancing/main.vert new file mode 100644 index 0000000..ae6423b --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/instancing/main.vert @@ -0,0 +1,32 @@ +#include "flywheel:internal/common.vert" +#include "flywheel:internal/packed_material.glsl" +#include "flywheel:internal/instancing/light.glsl" + +uniform uvec2 _flw_packedMaterial; +uniform int _flw_baseInstance = 0; + +#ifdef FLW_EMBEDDED +uniform mat4 _flw_modelMatrixUniform; +uniform mat3 _flw_normalMatrixUniform; +uniform uint _flw_lightingSceneUniform; +uniform float _flw_lightingSkyLightScaleUniform; +uniform mat4 _flw_lightingSceneMatrixUniform; +#endif + +uniform uint _flw_baseVertex; + +void main() { + _flw_unpackMaterialProperties(_flw_packedMaterial.y, flw_material); + + FlwInstance instance = _flw_unpackInstance(_flw_baseInstance + gl_InstanceID); + + #ifdef FLW_EMBEDDED + _flw_modelMatrix = _flw_modelMatrixUniform; + _flw_normalMatrix = _flw_normalMatrixUniform; + _flw_lightingSceneMatrix = _flw_lightingSceneMatrixUniform; + _flw_lightingSceneId = _flw_lightingSceneUniform; + _flw_skyLightScale = _flw_lightingSkyLightScaleUniform; + #endif + + _flw_main(instance, uint(gl_InstanceID), _flw_baseVertex); +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/internal/light_lut.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/light_lut.glsl new file mode 100644 index 0000000..5f83289 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/internal/light_lut.glsl @@ -0,0 +1,427 @@ +const uint _FLW_BLOCKS_PER_SECTION = 18u * 18u * 18u; +const uint _FLW_LIGHT_SIZE_BYTES = _FLW_BLOCKS_PER_SECTION; +const uint _FLW_SOLID_SIZE_BYTES = ((_FLW_BLOCKS_PER_SECTION + 31u) / 32u) * 4u; +const uint _FLW_LIGHT_START_BYTES = _FLW_SOLID_SIZE_BYTES; +const uint _FLW_LIGHT_SECTION_SIZE_BYTES = _FLW_SOLID_SIZE_BYTES + _FLW_LIGHT_SIZE_BYTES; + +const uint _FLW_SOLID_START_INTS = 0u; +const uint _FLW_LIGHT_START_INTS = _FLW_SOLID_SIZE_BYTES / 4u; +const uint _FLW_LIGHT_SECTION_SIZE_INTS = _FLW_LIGHT_SECTION_SIZE_BYTES / 4u; + +const uint _FLW_COMPLETELY_SOLID = 0x7FFFFFFu; +const float _FLW_EPSILON = 1e-5; + +const uint _FLW_LOWER_10_BITS = 0x3FFu; +const uint _FLW_UPPER_10_BITS = 0xFFF00000u; + +const float _FLW_LIGHT_NORMALIZER = 1. / 16.; + +uint _flw_indexLut(uint index); + +uint _flw_indexLight(uint index); + +/// Find the index for the next step in the LUT. +/// @param base The base index in the LUT, should point to the start of a coordinate span. +/// @param coord The coordinate to look for. +/// @param next Output. The index of the next step in the LUT. +/// @return true if the coordinate is not in the span. +bool _flw_nextLut(uint base, int coord, out uint next) { + // The base coordinate. + int start = int(_flw_indexLut(base)); + // The width of the coordinate span. + uint size = _flw_indexLut(base + 1u); + + // Index of the coordinate in the span. + int i = coord - start; + + if (i < 0 || i >= int(size)) { + // We missed. + return true; + } + + next = _flw_indexLut(base + 2u + uint(i)); + + return false; +} + +bool _flw_chunkCoordToSectionIndex(uint sceneId, ivec3 sectionPos, out uint index) { + uint scene; + if (_flw_nextLut(0u, int(sceneId), scene) || scene == 0u) { + return true; + } + + uint first; + if (_flw_nextLut(scene, sectionPos.y, first) || first == 0u) { + return true; + } + + uint second; + if (_flw_nextLut(first, sectionPos.x, second) || second == 0u) { + return true; + } + + uint sectionIndex; + if (_flw_nextLut(second, sectionPos.z, sectionIndex) || sectionIndex == 0u) { + return true; + } + + // The index is written as 1-based so we can properly detect missing sections. + index = sectionIndex - 1u; + + return false; +} + +uvec2 _flw_lightAt(uint sectionOffset, uvec3 blockInSectionPos) { + uint byteOffset = blockInSectionPos.x + blockInSectionPos.z * 18u + blockInSectionPos.y * 18u * 18u; + + uint uintOffset = byteOffset >> 2u; + uint bitOffset = (byteOffset & 3u) << 3; + + uint raw = _flw_indexLight(sectionOffset + _FLW_LIGHT_START_INTS + uintOffset); + uint block = (raw >> bitOffset) & 0xFu; + uint sky = (raw >> (bitOffset + 4u)) & 0xFu; + + return uvec2(block, sky); +} + +bool _flw_isSolid(uint sectionOffset, uvec3 blockInSectionPos) { + uint bitOffset = blockInSectionPos.x + blockInSectionPos.z * 18u + blockInSectionPos.y * 18u * 18u; + + uint uintOffset = bitOffset >> 5u; + uint bitInWordOffset = bitOffset & 31u; + + uint word = _flw_indexLight(sectionOffset + _FLW_SOLID_START_INTS + uintOffset); + + return (word & (1u << bitInWordOffset)) != 0u; +} + +bool flw_lightFetch(uint scene, ivec3 blockPos, out vec2 lightCoord) { + uint lightSectionIndex; + if (_flw_chunkCoordToSectionIndex(scene, blockPos >> 4, lightSectionIndex)) { + return false; + } + // The offset of the section in the light buffer. + uint sectionOffset = lightSectionIndex * _FLW_LIGHT_SECTION_SIZE_INTS; + + uvec3 blockInSectionPos = uvec3((blockPos & 0xF) + 1); + + lightCoord = vec2(_flw_lightAt(sectionOffset, blockInSectionPos)) * _FLW_LIGHT_NORMALIZER; + return true; +} + + +uint _flw_fetchSolid3x3x3(uint sectionOffset, ivec3 blockInSectionPos) { + uint ret = 0u; + + // The formatter does NOT like these macros + // @formatter:off + + #define _FLW_FETCH_SOLID(x, y, z, i) { \ + bool flag = _flw_isSolid(sectionOffset, uvec3(blockInSectionPos + ivec3(x, y, z))); \ + ret |= uint(flag) << i; \ + } + + /// fori y, z, x: unrolled + _FLW_FETCH_SOLID(-1, -1, -1, 0) + _FLW_FETCH_SOLID(0, -1, -1, 1) + _FLW_FETCH_SOLID(1, -1, -1, 2) + + _FLW_FETCH_SOLID(-1, -1, 0, 3) + _FLW_FETCH_SOLID(0, -1, 0, 4) + _FLW_FETCH_SOLID(1, -1, 0, 5) + + _FLW_FETCH_SOLID(-1, -1, 1, 6) + _FLW_FETCH_SOLID(0, -1, 1, 7) + _FLW_FETCH_SOLID(1, -1, 1, 8) + + _FLW_FETCH_SOLID(-1, 0, -1, 9) + _FLW_FETCH_SOLID(0, 0, -1, 10) + _FLW_FETCH_SOLID(1, 0, -1, 11) + + _FLW_FETCH_SOLID(-1, 0, 0, 12) + _FLW_FETCH_SOLID(0, 0, 0, 13) + _FLW_FETCH_SOLID(1, 0, 0, 14) + + _FLW_FETCH_SOLID(-1, 0, 1, 15) + _FLW_FETCH_SOLID(0, 0, 1, 16) + _FLW_FETCH_SOLID(1, 0, 1, 17) + + _FLW_FETCH_SOLID(-1, 1, -1, 18) + _FLW_FETCH_SOLID(0, 1, -1, 19) + _FLW_FETCH_SOLID(1, 1, -1, 20) + + _FLW_FETCH_SOLID(-1, 1, 0, 21) + _FLW_FETCH_SOLID(0, 1, 0, 22) + _FLW_FETCH_SOLID(1, 1, 0, 23) + + _FLW_FETCH_SOLID(-1, 1, 1, 24) + _FLW_FETCH_SOLID(0, 1, 1, 25) + _FLW_FETCH_SOLID(1, 1, 1, 26) + + // @formatter:on + + return ret; +} + +/// Premtively collect all light in a 3x3x3 area centered on our block. +/// Depending on the normal, we won't use all the data, but fetching on demand will have many duplicated fetches. +/// Only fetching what we'll actually use using a bitmask turned out significantly slower, but perhaps a less +/// granular approach could see wins. +/// +/// The output is a 3-component vector packed into a single uint to save +/// memory and ALU ops later on. 10 bits are used for each component. This allows 4 such packed ints to be added +/// together with room to spare before overflowing into the next component. +uint[27] _flw_fetchLight3x3x3(uint sectionOffset, ivec3 blockInSectionPos, uint solidMask) { + uint[27] lights; + + // @formatter:off + #define _FLW_FETCH_LIGHT(_x, _y, _z, i) { \ + uvec2 light = _flw_lightAt(sectionOffset, uvec3(blockInSectionPos + ivec3(_x, _y, _z))); \ + lights[i] = (light.x) | ((light.y) << 10) | (uint((solidMask & (1u << i)) == 0u) << 20); \ + } + + /// fori y, z, x: unrolled + _FLW_FETCH_LIGHT(-1, -1, -1, 0) + _FLW_FETCH_LIGHT(0, -1, -1, 1) + _FLW_FETCH_LIGHT(1, -1, -1, 2) + + _FLW_FETCH_LIGHT(-1, -1, 0, 3) + _FLW_FETCH_LIGHT(0, -1, 0, 4) + _FLW_FETCH_LIGHT(1, -1, 0, 5) + + _FLW_FETCH_LIGHT(-1, -1, 1, 6) + _FLW_FETCH_LIGHT(0, -1, 1, 7) + _FLW_FETCH_LIGHT(1, -1, 1, 8) + + _FLW_FETCH_LIGHT(-1, 0, -1, 9) + _FLW_FETCH_LIGHT(0, 0, -1, 10) + _FLW_FETCH_LIGHT(1, 0, -1, 11) + + _FLW_FETCH_LIGHT(-1, 0, 0, 12) + _FLW_FETCH_LIGHT(0, 0, 0, 13) + _FLW_FETCH_LIGHT(1, 0, 0, 14) + + _FLW_FETCH_LIGHT(-1, 0, 1, 15) + _FLW_FETCH_LIGHT(0, 0, 1, 16) + _FLW_FETCH_LIGHT(1, 0, 1, 17) + + _FLW_FETCH_LIGHT(-1, 1, -1, 18) + _FLW_FETCH_LIGHT(0, 1, -1, 19) + _FLW_FETCH_LIGHT(1, 1, -1, 20) + + _FLW_FETCH_LIGHT(-1, 1, 0, 21) + _FLW_FETCH_LIGHT(0, 1, 0, 22) + _FLW_FETCH_LIGHT(1, 1, 0, 23) + + _FLW_FETCH_LIGHT(-1, 1, 1, 24) + _FLW_FETCH_LIGHT(0, 1, 1, 25) + _FLW_FETCH_LIGHT(1, 1, 1, 26) + + // @formatter:on + + return lights; +} + +#define _flw_index3x3x3(x, y, z) ((x) + (z) * 3u + (y) * 9u) +#define _flw_validCountToAo(validCount) (1. - (4. - (validCount)) * 0.2) + +/// Calculate the light for a direction by averaging the light at the corners of the block. +/// +/// To make this reusable across directions, c00..c11 choose what values relative to each corner to use. +/// e.g. (0, 0, 0) (0, 0, 1) (0, 1, 0) (0, 1, 1) would give you the light coming from -x at each corner. +/// In general, to get the light for a particular direction, you fix the x, y, or z coordinate of the c values, and permutate 0 and 1 for the other two. +/// Fixing the x coordinate to 0 gives you the light from -x, 1 gives you the light from +x. +/// +/// @param lights The light data for the 3x3x3 area. +/// @param interpolant The position within the center block. +/// @param c00..c11 4 offsets to determine which "direction" we are averaging. +/// @param oppositeMask A bitmask telling this function which bit to flip to get the opposite index for a given corner +vec3 _flw_lightForDirection(uint[27] lights, vec3 interpolant, uint c00, uint c01, uint c10, uint c11, uint oppositeMask) { + // Sum up the light and number of valid blocks in each corner for this direction + uint[8] summed; + + // @formatter:off + + #define _FLW_SUM_CORNER(_x, _y, _z, i) { \ + const uint corner = _flw_index3x3x3(_x, _y, _z); \ + summed[i] = lights[c00 + corner] + lights[c01 + corner] + lights[c10 + corner] + lights[c11 + corner]; \ + } + + _FLW_SUM_CORNER(0u, 0u, 0u, 0) + _FLW_SUM_CORNER(1u, 0u, 0u, 1) + _FLW_SUM_CORNER(0u, 0u, 1u, 2) + _FLW_SUM_CORNER(1u, 0u, 1u, 3) + _FLW_SUM_CORNER(0u, 1u, 0u, 4) + _FLW_SUM_CORNER(1u, 1u, 0u, 5) + _FLW_SUM_CORNER(0u, 1u, 1u, 6) + _FLW_SUM_CORNER(1u, 1u, 1u, 7) + + // @formatter:on + + // The final light and number of valid blocks for each corner. + vec3[8] adjusted; + + #ifdef _FLW_INNER_FACE_CORRECTION + // If the current corner has no valid blocks, use the opposite + // corner's light based on which direction we're evaluating. + // Because of how our corners are indexed, moving along one axis is the same as flipping a bit. + #define _FLW_CORNER_INDEX(i) ((summed[i] & _FLW_UPPER_10_BITS) == 0u ? i ^ oppositeMask : i) + #else + #define _FLW_CORNER_INDEX(i) i + #endif + + // Division and branching (to avoid dividing by zero) are both kinda expensive, so use this table for the valid block normalization + const float[5] normalizers = float[](0., 1., 1. / 2., 1. / 3., 1. / 4.); + + // @formatter:off + + #define _FLW_ADJUST_CORNER(i) { \ + uint corner = summed[_FLW_CORNER_INDEX(i)]; \ + uint validCount = corner >> 20u; \ + adjusted[i].xy = vec2(corner & _FLW_LOWER_10_BITS, (corner >> 10u) & _FLW_LOWER_10_BITS) * normalizers[validCount]; \ + adjusted[i].z = float(validCount); \ + } + + _FLW_ADJUST_CORNER(0) + _FLW_ADJUST_CORNER(1) + _FLW_ADJUST_CORNER(2) + _FLW_ADJUST_CORNER(3) + _FLW_ADJUST_CORNER(4) + _FLW_ADJUST_CORNER(5) + _FLW_ADJUST_CORNER(6) + _FLW_ADJUST_CORNER(7) + + // @formatter:on + + // Trilinear interpolation, including valid count + vec3 light00 = mix(adjusted[0], adjusted[1], interpolant.x); + vec3 light01 = mix(adjusted[2], adjusted[3], interpolant.x); + vec3 light10 = mix(adjusted[4], adjusted[5], interpolant.x); + vec3 light11 = mix(adjusted[6], adjusted[7], interpolant.x); + + vec3 light0 = mix(light00, light01, interpolant.z); + vec3 light1 = mix(light10, light11, interpolant.z); + + vec3 light = mix(light0, light1, interpolant.y); + + // Normalize the light coords + light.xy *= _FLW_LIGHT_NORMALIZER; + // Calculate the AO multiplier from the number of valid blocks + light.z = _flw_validCountToAo(light.z); + + return light; +} + +bool flw_light(uint scene, vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light) { + // Always use the section of the block we are contained in to ensure accuracy. + // We don't want to interpolate between sections, but also we might not be able + // to rely on the existence neighboring sections, so don't do any extra rounding here. + ivec3 blockPos = ivec3(floor(worldPos)) + renderOrigin; + + uint lightSectionIndex; + if (_flw_chunkCoordToSectionIndex(scene, blockPos >> 4, lightSectionIndex)) { + return false; + } + // The offset of the section in the light buffer. + uint sectionOffset = lightSectionIndex * _FLW_LIGHT_SECTION_SIZE_INTS; + + // The block's position in the section adjusted into 18x18x18 space + ivec3 blockInSectionPos = (blockPos & 0xF) + 1; + + // Directly trilerp as if sampling a texture + #if _FLW_LIGHT_SMOOTHNESS == 1 + + // The lowest corner of the 2x2x2 area we'll be trilinear interpolating. + // The ugly bit on the end evaluates to -1 or 0 depending on which side of 0.5 we are. + uvec3 lowestCorner = blockInSectionPos + ivec3(floor(fract(worldPos) - 0.5)); + + // The distance our fragment is from the center of the lowest corner. + vec3 interpolant = fract(worldPos - 0.5); + + // Fetch everything for trilinear interpolation + // Hypothetically we could re-order these and do some calculations in-between fetches + // to help with latency hiding, but the compiler should be able to do that for us. + vec2 light000 = vec2(_flw_lightAt(sectionOffset, lowestCorner)); + vec2 light100 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 0, 0))); + vec2 light001 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 0, 1))); + vec2 light101 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 0, 1))); + vec2 light010 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 1, 0))); + vec2 light110 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 1, 0))); + vec2 light011 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 1, 1))); + vec2 light111 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 1, 1))); + + vec2 light00 = mix(light000, light001, interpolant.z); + vec2 light01 = mix(light010, light011, interpolant.z); + vec2 light10 = mix(light100, light101, interpolant.z); + vec2 light11 = mix(light110, light111, interpolant.z); + + vec2 light0 = mix(light00, light01, interpolant.y); + vec2 light1 = mix(light10, light11, interpolant.y); + + light.light = mix(light0, light1, interpolant.x) * _FLW_LIGHT_NORMALIZER; + light.ao = 1.; + + // Lighting and AO accurate to chunk baking + #elif _FLW_LIGHT_SMOOTHNESS == 2 + + uint solid = _flw_fetchSolid3x3x3(sectionOffset, blockInSectionPos); + + if (solid == _FLW_COMPLETELY_SOLID) { + // No point in doing any work if the entire 3x3x3 volume around us is filled. + // Kinda rare but this may happen if our fragment is in the middle of a lot of tinted glass + light.light = vec2(0.); + light.ao = _flw_validCountToAo(0.); + return true; + } + + // Fetch everything in a 3x3x3 area centered around the block. + uint[27] lights = _flw_fetchLight3x3x3(sectionOffset, blockInSectionPos, solid); + + vec3 interpolant = fract(worldPos); + + // Average the light in relevant directions at each corner, skipping directions that would have no influence + + vec3 lightX; + if (normal.x > _FLW_EPSILON) { + lightX = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 0u, 1u), _flw_index3x3x3(1u, 1u, 0u), _flw_index3x3x3(1u, 1u, 1u), 1u); + } else if (normal.x < -_FLW_EPSILON) { + lightX = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(0u, 1u, 1u), 1u); + } else { + lightX = vec3(0.); + } + + vec3 lightZ; + if (normal.z > _FLW_EPSILON) { + lightZ = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(0u, 1u, 1u), _flw_index3x3x3(1u, 0u, 1u), _flw_index3x3x3(1u, 1u, 1u), 2u); + } else if (normal.z < -_FLW_EPSILON) { + lightZ = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 1u, 0u), 2u); + } else { + lightZ = vec3(0.); + } + + vec3 lightY; + if (normal.y > _FLW_EPSILON) { + lightY = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(0u, 1u, 1u), _flw_index3x3x3(1u, 1u, 0u), _flw_index3x3x3(1u, 1u, 1u), 4u); + } else if (normal.y < -_FLW_EPSILON) { + lightY = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 0u, 1u), 4u); + } else { + lightY = vec3(0.); + } + + vec3 n2 = normal * normal; + vec3 lightAo = lightX * n2.x + lightY * n2.y + lightZ * n2.z; + + light.light = lightAo.xy; + light.ao = lightAo.z; + + // Entirely flat lighting, the lowest setting and a fallback in case an invalid option is set + #else + + light.light = vec2(_flw_lightAt(sectionOffset, blockInSectionPos)) * _FLW_LIGHT_NORMALIZER; + light.ao = 1.; + + #endif + + return true; +} + diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/light/flat.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/light/flat.glsl new file mode 100644 index 0000000..a14545a --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/light/flat.glsl @@ -0,0 +1,28 @@ +void flw_shaderLight() { + vec2 embeddedLight; + + uint sceneId = 0; + vec4 vertexLightingPos; + ivec3 renderOrigin; + + #ifdef FLW_EMBEDDED + renderOrigin = flw_renderOrigin; + sceneId = flw_vertexLightingSceneId; + vertexLightingPos = flw_vertexLightingPos; + + if (sceneId != 0) { + renderOrigin = ivec3(0); + } + #else + renderOrigin = flw_renderOrigin; + vertexLightingPos = flw_vertexPos; + #endif + + if (flw_lightFetch(sceneId, ivec3(floor(vertexLightingPos.xyz)) + renderOrigin, embeddedLight)) { + flw_fragLight = max(flw_fragLight, embeddedLight); + } + + #ifdef FLW_EMBEDDED + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth.glsl new file mode 100644 index 0000000..1845944 --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth.glsl @@ -0,0 +1,31 @@ +void flw_shaderLight() { + uint sceneId = 0; + vec4 vertexLightingPos; + ivec3 renderOrigin; + + #ifdef FLW_EMBEDDED + renderOrigin = flw_renderOrigin; + sceneId = flw_vertexLightingSceneId; + vertexLightingPos = flw_vertexLightingPos; + + if (sceneId != 0) { + renderOrigin = ivec3(0); + } + #else + renderOrigin = flw_renderOrigin; + vertexLightingPos = flw_vertexPos; + #endif + + FlwLightAo light; + if (flw_light(sceneId, vertexLightingPos.xyz, flw_vertexNormal, renderOrigin, light)) { + flw_fragLight = max(flw_fragLight, light.light); + + if (flw_material.ambientOcclusion) { + flw_fragColor.rgb *= light.ao; + } + } + + #ifdef FLW_EMBEDDED + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth_when_embedded.glsl b/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth_when_embedded.glsl new file mode 100644 index 0000000..a61460a --- /dev/null +++ b/neoforge/build/resources/main/assets/flywheel/flywheel/light/smooth_when_embedded.glsl @@ -0,0 +1,20 @@ +void flw_shaderLight() { + #ifdef FLW_EMBEDDED + ivec3 renderOrigin = flw_renderOrigin; + + if (flw_vertexLightingSceneId != 0) { + renderOrigin = ivec3(0); + } + + FlwLightAo light; + if (flw_light(flw_vertexLightingSceneId, flw_vertexLightingPos.xyz, flw_vertexNormal, renderOrigin, light)) { + flw_fragLight = max(flw_fragLight, light.light); + + if (flw_material.ambientOcclusion) { + flw_fragColor.rgb *= light.ao; + } + } + + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/build/resources/main/assets/sable/lang/en_us.json b/neoforge/build/resources/main/assets/sable/lang/en_us.json new file mode 100644 index 0000000..13042f0 --- /dev/null +++ b/neoforge/build/resources/main/assets/sable/lang/en_us.json @@ -0,0 +1,148 @@ +{ + "menu.savingSubLevels": "Saving sub-levels", + + "commands.sable.helper.missing_sub_level_container": "Couldn't find sub-level container for this level!", + "commands.sable.helper.missing_physics_system": "Couldn't find sub-level physics system for this level!", + + "commands.sable.sub_level": "sub-level", + "commands.sable.sub_levels": "%s sub-levels", + + "commands.sable.physics.global": "global", + "commands.sable.physics.local": "local", + + "commands.sable.spawn.success": "Spawned %s", + "commands.sable.spawn.clone.success": "Cloned sublevel", + + "commands.sable.physics.impulse.angular.success": "Applied %s angular impulse to %s of %s", + "commands.sable.physics.impulse.linear.success": "Applied %s linear impulse to %s of %s", + "commands.sable.physics.rotation.add.success": "Added %s rotation to %s of %s", + "commands.sable.physics.rotation.set.success": "Set rotation of %s to %s", + "commands.sable.physics.translation.add.success": "Added %s translation to %s of %s", + "commands.sable.physics.translation.set.success": "Set translation of %s to %s", + + "commands.sable.joint.missing_sublevel_target": "Failed to find sub-level for joint", + "commands.sable.joint.success": "Successfully created joint", + + "commands.sable.sub_level.set_name.success_singular": "Set name of sub-level to %s", + "commands.sable.sub_level.set_name.success_multiple": "Set name of %s sub-levels to %s", + + "commands.sable.sub_level.get_name.success": "Name of sub-level is %s", + "commands.sable.sub_level.get_name.failure_unnamed": "Sub-level has no name", + + "commands.sable.sub_level.clear_name.success_singular": "Cleared name of sub-level", + "commands.sable.sub_level.clear_name.success_multiple": "Cleared name of %s sub-levels", + + "commands.sable.sub_level.teleport_with_orientation.success": "Teleported %s to %.2f, %.2f, %.2f facing %.2f, %.2f", + "commands.sable.sub_level.teleport.success": "Teleported %s to %.2f, %.2f, %.2f", + "commands.sable.sub_level.remove.success": "Removed %s", + "commands.sable.sub_level.assemble.no_blocks": "Couldn't assemble sub-level, no valid blocks found", + "commands.sable.sub_level.assemble.connected.too_many_blocks": "Couldn't assemble sub-level, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.no_blocks": "Couldn't shatter into sub-levels, no valid blocks found", + "commands.sable.sub_level.shatter.connected.too_many_blocks": "Couldn't shatter into sub-levels, too many blocks (maximum %s)", + "commands.sable.sub_level.shatter.region.success": "Shattered a region with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.connected.success": "Shattered %s connected blocks into new sub-levels", + "commands.sable.sub_level.shatter.range.success": "Shattered a range with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.radius.success": "Shattered a radius with %s blocks into new sub-levels", + "commands.sable.sub_level.shatter.sub_level.success": "Shattered %s into %s new sub-levels", + "commands.sable.sub_level.shatter.sub_level.only_single_block": "Can't shatter single-block sub-levels", + "commands.sable.sub_level.assemble.region.success": "Assembled a region %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.connected.success": "Assembled %s connected blocks to a new sub-level", + "commands.sable.sub_level.assemble.radius.success": "Assembled a radius with %s blocks to a new sub-level", + "commands.sable.sub_level.assemble.range.success": "Assembled a range with %s blocks to a new sub-level", + + "commands.sable.physics.paused.success": "Set physics paused to be %s", + "commands.sable.physics.paused_toggled.success": "Toggled physics paused to be %s", + + "commands.sable.place_schematic.failure": "Couldn't find schematic!", + "commands.sable.place_schematic.success": "Placed schematic!", + + "commands.sable.fail.not_inside_sub_level": "Position outside of sub-level plot", + "commands.sable.fail.no_sub_levels": "No sub-levels found", + "commands.sable.fail.unmodified": "No sub-levels were modified", + "commands.sable.fail.no_axis_for_rotation": "No axis for rotation", + + "commands.sable.info.count": "Found %s sub-levels:", + "commands.sable.info.name": "%s:", + "commands.sable.info.name.tooltip": "Serialization Pointer: %s", + "commands.sable.info.position": " Position: %.2f %.2f %.2f", + "commands.sable.info.orientation": " Orientation: %.2f %.2f %.2f %.2f", + "commands.sable.info.linear_velocity": " Linear Velocity: %.2f %.2f %.2f", + "commands.sable.info.angular_velocity": " Angular Velocity: %.2f %.2f %.2f", + "commands.sable.info.mass": " Mass: %.2f", + "commands.sable.info.world_bounds": " World Bounds: %.2f x %.2f x %.2f", + + "commands.data.sub_level.get": "%s on sub-level %s after scale factor of %s is %s", + "commands.data.sub_level.modified": "Modified sub-level auxiliary data of %s", + "commands.data.sub_level.query": "%s has the following auxiliary sub-level data: %s", + + "argument.sable.body.selector.all": "All sub-levels", + "argument.sable.body.selector.nearest": "Nearest sub-level", + "argument.sable.body.selector.random": "Random sub-level", + "argument.sable.body.selector.viewed": "Viewed sub-level", + "argument.sable.body.selector.latest": "Latest sub-level", + "argument.sable.body.selector.tracking": "Tracking sub-level", + "argument.sable.body.selector.inside": "Inside sub-level", + "argument.sable.body.static_world": "The static world", + + "argument.sable.sub_level.modifier.distance": "Distance to sub-level", + "argument.sable.sub_level.modifier.x": "x position", + "argument.sable.sub_level.modifier.y": "y position", + "argument.sable.sub_level.modifier.z": "z position", + "argument.sable.sub_level.modifier.dx": "Sub-levels between x and x + dx", + "argument.sable.sub_level.modifier.dy": "Sub-levels between y and y + dy", + "argument.sable.sub_level.modifier.dz": "Sub-levels between z and z + dz", + "argument.sable.sub_level.modifier.vx": "x velocity", + "argument.sable.sub_level.modifier.vy": "y velocity", + "argument.sable.sub_level.modifier.vz": "z velocity", + "argument.sable.sub_level.modifier.speed": "Sub-level speed", + "argument.sable.sub_level.modifier.mass": "Sub-level weight", + "argument.sable.sub_level.modifier.volume": "Volume of sub-level bounding box", + "argument.sable.sub_level.modifier.width": "X axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.height": "Y axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.length": "Z axis size of sub-level bounding box", + "argument.sable.sub_level.modifier.limit": "Maximum number of sub-levels to return", + "argument.sable.sub_level.modifier.name": "Sub-level name", + "argument.sable.sub_level.modifier.sort": "Sort the sub-levels by distance", + "argument.sable.unexpected_end_of_input": "Unexpected end of input", + "argument.sable.single_sub_level_required": "Only one sub-level is allowed, but the provided selector allows more than one", + "argument.sable.sub_level.invalid": "Invalid sub-level selector", + "argument.sable.sub_level.expected_end_of_modifier": "Expected end of modifier", + "argument.sable.sub_level.expected_positive_integer": "Expected a positive integer", + "argument.sable.sub_level.expected_positive_decimal": "Expected a positive decimal", + "argument.sable.sub_level.expected_positive_range": "Expected a positive range", + "argument.sable.sub_level.expected_sorting": "Expected sorting type of either nearest or furthest", + + "inspector.sable.sub_level_container.title": "Sub-level Container", + + "attribute.name.player.sub_level_punch_strength": "Push Strength", + "attribute.name.player.sub_level_punch_cooldown": "Push Cooldown", + + "options.sable_menu": "Sub-Level Settings... ", + "options.physics_steps": "Physics Steps", + "options.physics_steps_template": "%s steps / second", + "options.physics_steps.tooltip": "How many times the physics simulation is stepped in every second. Higher values will be significantly more performance intensive, but will have higher accuracy.", + + "sub_level.toast.checkLog": "See log for more details", + "sub_level.toast.loadFailure": "Failed to load sub-level at %s", + "sub_level.toast.saveFailure": "Failed to save sub-level at %s", + "sub_level.toast.physicsFailure": "Physics failure for sub-level at %s", + "sub_level.toast.attemptingRecovery": "Attempting recovery", + + "camera_type.sub_level_view": "Entering Contraption Camera", + "camera_type.sub_level_view_unlocked": "Entering Unlocked Contraption Camera", + + "force_group.sable.gravity": "Gravity", + "force_group.sable.drag": "Drag", + "force_group.sable.levitation": "Levitation", + "force_group.sable.balloon_lift": "Balloon Lift", + "force_group.sable.propulsion": "Propulsion", + "force_group.sable.lift": "Lift", + "force_group.sable.magnetic_force": "Magnetic", + + "schematic.sable.mirror_not_supported": "Cannot mirror schematics containing sub-levels!", + + "death.attack.fall.from_sublevel": "%1$s fell from %2$s", + + "sable.create.mechanical_arm.points_removed_sublevel_and_range": "%1$s selected interaction point(s) removed due to range limitations or not being anchored.", + "sable.create.remove.points_removed_sublevel" : "%1$s selected interaction point(s) removed due to not being anchored" +} diff --git a/neoforge/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl b/neoforge/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl new file mode 100644 index 0000000..f9a32df --- /dev/null +++ b/neoforge/build/resources/main/assets/sable/pinwheel/shaders/include/fancy_sublevel_vertex.glsl @@ -0,0 +1,61 @@ +layout(location = 0) in vec3 QuadPosition; +layout(location = 1) in vec3 SableNormal; +layout(location = 2) in uvec2 SableData; + +layout(std140) uniform SableSprites { + vec4 sableSprites[2 * SABLE_TEXTURE_CACHE_SIZE]; +}; + +uniform mat4 SableTransform; + +vec3 Position; +vec3 Normal; +vec4 Color; +vec2 UV0; +ivec2 UV2; + +void _sable_unpack() { + uint vertexIndex = uint(gl_VertexID) & 0x3u; + + // Packed data format: + // TTTTTTTTTTTTLLLLLLLLZZZZYYYYXXXX + // T = Texture ID + // L = Packed Light + // Z = Relative Z position + // Y = Relative Y position + // X = Relative X position + uint posX = SableData.x & 15u; + uint posY = (SableData.x >> 4) & 15u; + uint posZ = (SableData.x >> 8) & 15u; + uint packedLight = (SableData.x >> 12) & 255u; + uint textureId = SableData.x >> 20u; + + // Packed data format: + // AAAAAAAAYYYYYYYYZZZZZZZZXXXXXXXX + // A = Ambient Occlusion + // Y = Section Y + // Z = Section Z + // X = Section X + uint xOffset = (SableData.y) & 0xFFu; + uint yOffset = (SableData.y >> 8) & 0xFFu; + uint zOffset = (SableData.y >> 16) & 0xFFu; + uint ambientOcclusion = (SableData.y >> (24u + (vertexIndex << 1u))) & 0x3u; + + // 0,0 == 0b00 + // 0,1 == 0b01 + // 1,1 == 0b10 + // 1,0 == 0b11 + uint lower = uint(gl_VertexID) & 1u; + uint upper = (uint(gl_VertexID) >> 1) & 1u; + vec2 uv = vec2(float(upper), float(lower ^ upper)); + uint textureOffset = vertexIndex << 3u; + + vec4 textureU = sableSprites[(textureId << 1u)]; + vec4 textureV = sableSprites[(textureId << 1u) + 1u]; + + Position = (SableTransform * vec4(QuadPosition + vec3(float((xOffset << 4u) + posX), float((yOffset << 4u) + posY), float((zOffset << 4u) + posZ)), 1.0)).xyz; + Normal = (SableTransform * vec4(SableNormal, 0.0)).xyz; + Color = vec4(1.0, 1.0, 1.0, 1.0) * vec4(vec3(1.0 - 0.2 * float(ambientOcclusion)), 1.0); + UV0 = vec2(textureU[vertexIndex], textureV[vertexIndex]); + UV2 = ivec2(packedLight & 0xF0u, (packedLight << 4) & 0xF0u); +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/c/tags/block/end_stones.json b/neoforge/build/resources/main/data/c/tags/block/end_stones.json new file mode 100644 index 0000000..146dcd9 --- /dev/null +++ b/neoforge/build/resources/main/data/c/tags/block/end_stones.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:end_stone" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/floating_materials/end_stone.json b/neoforge/build/resources/main/data/sable/floating_materials/end_stone.json new file mode 100644 index 0000000..b5f5be3 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/floating_materials/end_stone.json @@ -0,0 +1,10 @@ +{ + "prevent_self_lift": true, + "scale_friction_with_gravity":true, + "lift_strength": 2, + "transition_speed": 2, + "slow_vertical_friction": 0.4, + "fast_vertical_friction": 0.02, + "slow_horizontal_friction": 0.3, + "fast_horizontal_friction": 0.01 +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json b/neoforge/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json new file mode 100644 index 0000000..5addf33 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/bedrock_absurdity.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:bedrock", + + "properties": { + "sable:mass": 1000.0 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/bouncy.json b/neoforge/build/resources/main/data/sable/physics_block_properties/bouncy.json new file mode 100644 index 0000000..8da9bbb --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/bouncy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:bouncy", + + "properties": { + "sable:restitution": 0.5 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json b/neoforge/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json new file mode 100644 index 0000000..e120d72 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/end_stone_brick_slab.json @@ -0,0 +1,13 @@ +{ + "selector": "minecraft:end_stone_brick_slab", + + "properties": { + "sable:floating_material": "sable:end_stone", + "sable:floating_scale": 0.5 + }, + "overrides": { + "type=double": { + "sable:floating_scale": 1.0 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/end_stones.json b/neoforge/build/resources/main/data/sable/physics_block_properties/end_stones.json new file mode 100644 index 0000000..87c896d --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/end_stones.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:end_stones", + + "properties": { + "sable:floating_material": "sable:end_stone" + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/flywheel.json b/neoforge/build/resources/main/data/sable/physics_block_properties/flywheel.json new file mode 100644 index 0000000..b7ab63c --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/flywheel.json @@ -0,0 +1,19 @@ +{ + "selector": "create:flywheel", + + "properties": { + "sable:mass":4.0 + }, + + "overrides":{ + "axis=x": { + "sable:inertia": [2.25,1.125,1.125] + }, + "axis=y": { + "sable:inertia": [1.125,2.25,1.125] + }, + "axis=z": { + "sable:inertia": [1.125,1.125,2.25] + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/fragile.json b/neoforge/build/resources/main/data/sable/physics_block_properties/fragile.json new file mode 100644 index 0000000..4254f91 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/fragile.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:fragile", + + "properties": { + "sable:fragile": true + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/grindstone.json b/neoforge/build/resources/main/data/sable/physics_block_properties/grindstone.json new file mode 100644 index 0000000..150c03f --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/grindstone.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:grindstone", + + "properties": { + "sable:friction": 0.05 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/half_volume.json b/neoforge/build/resources/main/data/sable/physics_block_properties/half_volume.json new file mode 100644 index 0000000..7f016a4 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/half_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:half_volume", + + "properties": { + "sable:volume": 0.5 + }, + + "overrides": { + "type=double": { + "sable:volume": 1.0 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/heavy.json b/neoforge/build/resources/main/data/sable/physics_block_properties/heavy.json new file mode 100644 index 0000000..7576d35 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:heavy", + + "properties": { + "sable:mass": 2.0 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/light.json b/neoforge/build/resources/main/data/sable/physics_block_properties/light.json new file mode 100644 index 0000000..58e4125 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/light.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:light", + + "properties": { + "sable:mass": 0.5 + }, + + "overrides": { + "type=double": { + "sable:mass": 1.0 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/mud.json b/neoforge/build/resources/main/data/sable/physics_block_properties/mud.json new file mode 100644 index 0000000..ff67e5e --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/mud.json @@ -0,0 +1,7 @@ +{ + "selector": "minecraft:mud", + + "properties": { + "sable:friction": 0.25 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/piston.json b/neoforge/build/resources/main/data/sable/physics_block_properties/piston.json new file mode 100644 index 0000000..18ec882 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/piston.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:pistons", + + "properties": { + "sable:mass": 1.0 + }, + + "overrides": { + "extended=true": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/quarter_volume.json b/neoforge/build/resources/main/data/sable/physics_block_properties/quarter_volume.json new file mode 100644 index 0000000..b5f0cbd --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/quarter_volume.json @@ -0,0 +1,13 @@ +{ + "selector": "#sable:quarter_volume", + + "properties": { + "sable:volume": 0.25 + }, + + "overrides": { + "type=double": { + "sable:volume": 0.5 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/slippery.json b/neoforge/build/resources/main/data/sable/physics_block_properties/slippery.json new file mode 100644 index 0000000..e1e4f59 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/slippery.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:slippery", + + "properties": { + "sable:friction": 0.0 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/sticky.json b/neoforge/build/resources/main/data/sable/physics_block_properties/sticky.json new file mode 100644 index 0000000..d831295 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/sticky.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:frictive", + + "properties": { + "sable:friction": 1.65 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/super_heavy.json b/neoforge/build/resources/main/data/sable/physics_block_properties/super_heavy.json new file mode 100644 index 0000000..83392dc --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/super_heavy.json @@ -0,0 +1,7 @@ +{ + "selector": "#sable:super_heavy", + + "properties": { + "sable:mass": 4.0 + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/physics_block_properties/super_light.json b/neoforge/build/resources/main/data/sable/physics_block_properties/super_light.json new file mode 100644 index 0000000..1281080 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/physics_block_properties/super_light.json @@ -0,0 +1,14 @@ +{ + "priority": 1001, + "selector": "#sable:super_light", + + "properties": { + "sable:mass": 0.25 + }, + + "overrides": { + "type=double": { + "sable:mass": 0.5 + } + } +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/schematics/vinalilime.nbt b/neoforge/build/resources/main/data/sable/schematics/vinalilime.nbt new file mode 100644 index 0000000..bffb43f Binary files /dev/null and b/neoforge/build/resources/main/data/sable/schematics/vinalilime.nbt differ diff --git a/neoforge/build/resources/main/data/sable/schematics/vostone_2.nbt b/neoforge/build/resources/main/data/sable/schematics/vostone_2.nbt new file mode 100644 index 0000000..b612af5 Binary files /dev/null and b/neoforge/build/resources/main/data/sable/schematics/vostone_2.nbt differ diff --git a/neoforge/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt b/neoforge/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt new file mode 100644 index 0000000..e7681ca Binary files /dev/null and b/neoforge/build/resources/main/data/sable/structure/assemblytest.brittlebreak.nbt differ diff --git a/neoforge/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt b/neoforge/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt new file mode 100644 index 0000000..ad6c3b5 Binary files /dev/null and b/neoforge/build/resources/main/data/sable/structure/physicstest.continuouscollision.nbt differ diff --git a/neoforge/build/resources/main/data/sable/structure/physicstest.gravity.nbt b/neoforge/build/resources/main/data/sable/structure/physicstest.gravity.nbt new file mode 100644 index 0000000..4e3e84c Binary files /dev/null and b/neoforge/build/resources/main/data/sable/structure/physicstest.gravity.nbt differ diff --git a/neoforge/build/resources/main/data/sable/structure/physicstest.snag.nbt b/neoforge/build/resources/main/data/sable/structure/physicstest.snag.nbt new file mode 100644 index 0000000..a29e87e Binary files /dev/null and b/neoforge/build/resources/main/data/sable/structure/physicstest.snag.nbt differ diff --git a/neoforge/build/resources/main/data/sable/tags/block/always_chunk_rendering.json b/neoforge/build/resources/main/data/sable/tags/block/always_chunk_rendering.json new file mode 100644 index 0000000..671a331 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/always_chunk_rendering.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + { "id": "computercraft:monitor_normal", "required": false }, + { "id": "computercraft:monitor_advanced", "required": false }, + + { "id": "computercraft:turtle_normal", "required": false }, + { "id": "computercraft:turtle_advanced", "required": false }, + + { "id": "computercraft:computer_normal", "required": false }, + { "id": "computercraft:computer_advanced", "required": false }, + { "id": "computercraft:computer_command", "required": false } + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/bouncy.json b/neoforge/build/resources/main/data/sable/tags/block/bouncy.json new file mode 100644 index 0000000..f3c5414 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/bouncy.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "minecraft:slime_block" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/diode.json b/neoforge/build/resources/main/data/sable/tags/block/diode.json new file mode 100644 index 0000000..eebbbce --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/diode.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:repeater", + "minecraft:comparator", + { "id": "create:powered_toggle_latch", "required": false }, + { "id": "create:powered_latch", "required": false }, + { "id": "create:pulse_timer", "required": false }, + { "id": "create:pulse_extender", "required": false }, + { "id": "create:pulse_repeater", "required": false } + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/end_stones.json b/neoforge/build/resources/main/data/sable/tags/block/end_stones.json new file mode 100644 index 0000000..ac17a72 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/end_stones.json @@ -0,0 +1,17 @@ +{ + "replace": false, + "values": [ + "#c:end_stones", + "minecraft:end_stone_bricks", + "minecraft:end_stone_brick_stairs", + "minecraft:end_stone_brick_wall", + + { "id": "supplementaries:end_stone_lamp", "required": false }, + + { "id": "architects_palette:choral_end_stone_bricks", "required": false }, + { "id": "architects_palette:cracked_end_stone_bricks", "required": false }, + { "id": "architects_palette:chiseled_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_end_stone_bricks", "required": false }, + { "id": "architects_palette:heavy_cracked_end_stone_bricks", "required": false } + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/fragile.json b/neoforge/build/resources/main/data/sable/tags/block/fragile.json new file mode 100644 index 0000000..3942c98 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/fragile.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:leaves", + "minecraft:bamboo", + "minecraft:melon", + "minecraft:pumpkin", + "minecraft:cactus", + "minecraft:ice", + "minecraft:frosted_ice", + "minecraft:lily_pad" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/frictive.json b/neoforge/build/resources/main/data/sable/tags/block/frictive.json new file mode 100644 index 0000000..684d0c6 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/frictive.json @@ -0,0 +1,16 @@ +{ + "replace": false, + "values": [ + "minecraft:soul_sand", + "minecraft:soul_soil", + "minecraft:honey_block", + "minecraft:cactus", + + { "id": "create:belt", "required": false }, + + { "id": "architects_palette:tread_plate", "required": false }, + { "id": "architects_palette:tread_plate_slab", "required": false }, + { "id": "architects_palette:tread_plate_stairs", "required": false }, + { "id": "architects_palette:tread_plate_wall", "required": false } + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/half_volume.json b/neoforge/build/resources/main/data/sable/tags/block/half_volume.json new file mode 100644 index 0000000..4f29698 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/half_volume.json @@ -0,0 +1,22 @@ +{ + "replace": false, + "values": [ + "#minecraft:slabs", + "#minecraft:stairs", + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "quark:feeding_trough", "required": false }, + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:jar", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false } + + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/heavy.json b/neoforge/build/resources/main/data/sable/tags/block/heavy.json new file mode 100644 index 0000000..4396b4d --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/heavy.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#c:stones", + "#c:cobblestones", + "minecraft:blackstone", + "minecraft:basalt", + "minecraft:smooth_basalt", + "minecraft:polished_basalt", + "minecraft:obsidian", + "minecraft:crying_obsidian" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/light.json b/neoforge/build/resources/main/data/sable/tags/block/light.json new file mode 100644 index 0000000..de8caa4 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/light.json @@ -0,0 +1,72 @@ +{ + "replace": false, + "values": [ + "#minecraft:planks", + "#minecraft:logs", + "#minecraft:slabs", + "#minecraft:stairs", + "minecraft:piston_head", + "minecraft:barrel", + "minecraft:chest", + "#minecraft:bamboo_blocks", + "#c:clusters", + "#c:chests/wooden", + { "id": "create:belt", "required": false }, + { "id": "create:track", "required": false }, + { "id": "create:nixie_tube", "required": false }, + { "id": "create:desk_bell", "required": false }, + { "id": "create:piston_extension_pole", "required": false }, + { "id": "create:turntable", "required": false }, + { "id": "create:andesite_funnel", "required": false }, + { "id": "create:brass_funnel", "required": false }, + { "id": "create:factory_gauge", "required": false }, + { "id": "create:display_link", "required": false }, + { "id": "create:stock_link", "required": false }, + { "id": "create:cardboard_block", "required": false }, + { "id": "create:bound_cardboard_block", "required": false }, + + { "id": "create:andesite_encased_shaft", "required": false }, + { "id": "create:andesite_encased_cogwheel", "required": false }, + { "id": "create:andesite_encased_large_cogwheel", "required": false }, + + { "id": "create:brass_encased_shaft", "required": false }, + { "id": "create:brass_encased_cogwheel", "required": false }, + { "id": "create:brass_encased_large_cogwheel", "required": false }, + + { "id": "create:shaft", "required": false }, + { "id": "create:cogwheel", "required": false }, + { "id": "create:large_cogwheel", "required": false }, + + { "id": "create:hand_crank", "required": false }, + { "id": "#create:valve_handles", "required": false }, + { "id": "#create:seats", "required": false }, + + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:chain", "required": false }, + { "id": "#decorative_blocks:beams", "required": false }, + + { "id": "#woodworks:wooden_boards", "required": false }, + + { "id": "#quark:vertical_slabs", "required": false }, + { "id": "#quark:hollow_logs", "required": false }, + + { "id": "supplementaries:blackboard", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:presents", "required": false }, + { "id": "#supplementaries:trapped_presents", "required": false }, + + { "id": "#architects_palette:boards", "required": false }, + + { "id": "#storagedrawers:full_drawers", "required": false }, + { "id": "#storagedrawers:trim", "required": false }, + + { "id": "#another_furniture:drawers", "required": false } + ], + "remove": [ + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#quark:wooden_vertical_slabs" + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/pistons.json b/neoforge/build/resources/main/data/sable/tags/block/pistons.json new file mode 100644 index 0000000..5570772 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/pistons.json @@ -0,0 +1,6 @@ +{ + "values": [ + "minecraft:piston", + "minecraft:sticky_piston" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/quarter_volume.json b/neoforge/build/resources/main/data/sable/tags/block/quarter_volume.json new file mode 100644 index 0000000..ad2762c --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/quarter_volume.json @@ -0,0 +1,99 @@ +{ + "replace": false, + "values": [ + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:moss_carpet", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + "#sable:diode", + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "farmersdelight:skillet", "required": false }, + { "id": "farmersdelight:cooking_pot", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "#quark:posts", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "supplementaries:crystal_display", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/slippery.json b/neoforge/build/resources/main/data/sable/tags/block/slippery.json new file mode 100644 index 0000000..d8480b4 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/slippery.json @@ -0,0 +1,13 @@ +{ + "replace": false, + "values": [ + "#minecraft:ice", + + { "id": "architects_palette:polished_packed_ice", "required": false }, + { "id": "architects_palette:polished_packed_ice_slab", "required": false }, + { "id": "architects_palette:polished_packed_ice_stairs", "required": false }, + { "id": "architects_palette:polished_packed_ice_wall", "required": false }, + { "id": "architects_palette:chiseled_packed_ice", "required": false }, + { "id": "architects_palette:packed_ice_pillar", "required": false } + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/block/super_heavy.json b/neoforge/build/resources/main/data/sable/tags/block/super_heavy.json new file mode 100644 index 0000000..95d1e9f --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/super_heavy.json @@ -0,0 +1,14 @@ +{ + "replace": false, + "values": [ + "#c:storage_blocks", + "#minecraft:anvil", + "minecraft:heavy_core" + ], + "remove": [ + { "id": "create:cardboard_block", "required": false }, + "minecraft:copper_block", + "minecraft:slime_block", + "minecraft:bone_block" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/block/super_light.json b/neoforge/build/resources/main/data/sable/tags/block/super_light.json new file mode 100644 index 0000000..73de5e9 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/block/super_light.json @@ -0,0 +1,118 @@ +{ + "replace": false, + "values": [ + "#minecraft:wool", + "#minecraft:wooden_slabs", + "#minecraft:wooden_stairs", + "#minecraft:fences", + "#minecraft:fence_gates", + "#minecraft:trapdoors", + "#minecraft:doors", + "#minecraft:wool_carpets", + "#minecraft:leaves", + "#minecraft:saplings", + "#minecraft:candles", + "#c:glass_panes", + + { "id": "c:ladders", "required": false }, + "minecraft:ladder", + "minecraft:iron_bars", + "#c:fence_gates", + + "minecraft:cocoa", + "minecraft:lily_pad", + "minecraft:big_dripleaf", + "minecraft:turtle_egg", + "minecraft:moss_carpet", + "minecraft:snow", + "minecraft:bamboo", + "minecraft:sea_pickle", + "minecraft:chain", + "minecraft:lightning_rod", + "minecraft:flower_pot", + "minecraft:end_rod", + "minecraft:lantern", + "minecraft:soul_lantern", + + "#sable:diode", + + { "id": "create:clipboard", "required": false }, + { "id": "create:redstone_link", "required": false }, + + { "id": "create:andesite_ladder", "required": false }, + { "id": "create:copper_ladder", "required": false }, + { "id": "create:brass_ladder", "required": false }, + + { "id": "create:andesite_bars", "required": false }, + { "id": "create:copper_bars", "required": false }, + { "id": "create:brass_bars", "required": false }, + + { "id": "create:copycat_step", "required": false }, + { "id": "create:copycat_panel", "required": false }, + { "id": "#create:table_cloths", "required": false }, + { "id": "#create:windmill_sails", "required": false }, + + { "id": "farmersdelight:cutting_board", "required": false }, + { "id": "#farmersdelight:straw_blocks", "required": false }, + + { "id": "decorative_blocks:lattice", "required": false }, + { "id": "decorative_blocks:bar_panel", "required": false }, + { "id": "#decorative_blocks:seats", "required": false }, + { "id": "#decorative_blocks:supports", "required": false }, + { "id": "#decorative_blocks:palisades", "required": false }, + + { "id": "nomansland:tap", "required": false }, + { "id": "nomansland:spike_trap", "required": false }, + { "id": "nomansland:warding_effigy", "required": false }, + + { "id": "quark:gold_bars", "required": false }, + { "id": "quark:feeding_trough", "required": false }, + { "id": "quark:iron_rod", "required": false }, + { "id": "quark:grate", "required": false }, + { "id": "quark:paper_wall", "required": false }, + { "id": "quark:paper_wall_big", "required": false }, + { "id": "quark:paper_wall_sakura", "required": false }, + { "id": "quark:paper_lantern", "required": false }, + { "id": "quark:paper_lantern_sakura", "required": false }, + { "id": "#quark:wooden_vertical_slabs", "required": false }, + { "id": "#quark:posts", "required": false }, + { "id": "#quark:hedges", "required": false }, + + { "id": "supplementaries:stick", "required": false }, + { "id": "supplementaries:blaze_rod", "required": false }, + { "id": "supplementaries:gold_bars", "required": false }, + { "id": "supplementaries:gold_gate", "required": false }, + { "id": "supplementaries:iron_gate", "required": false }, + { "id": "supplementaries:wicker_fence", "required": false }, + { "id": "supplementaries:goblet", "required": false }, + { "id": "supplementaries:hourglass", "required": false }, + { "id": "supplementaries:jar", "required": false }, + { "id": "supplementaries:flower_box", "required": false }, + { "id": "supplementaries:doormat", "required": false }, + { "id": "supplementaries:wind_vane", "required": false }, + { "id": "supplementaries:bamboo_spikes", "required": false }, + { "id": "#supplementaries:flags", "required": false }, + { "id": "#supplementaries:awnings", "required": false }, + { "id": "#supplementaries:globes", "required": false }, + + { "id": "architects_palette:entwine_bars", "required": false }, + { "id": "architects_palette:sunmetal_bars", "required": false }, + { "id": "architects_palette:nether_brass_lantern", "required": false }, + { "id": "architects_palette:nether_brass_chain", "required": false }, + { "id": "architects_palette:hazard_sign", "required": false }, + { "id": "architects_palette:redstone_cage_lantern", "required": false }, + { "id": "architects_palette:glowstone_cage_lantern", "required": false }, + { "id": "architects_palette:algal_cage_lantern", "required": false }, + { "id": "#architects_palette:nubs", "required": false }, + + { "id": "#storagedrawers:half_drawers", "required": false }, + + { "id": "#another_furniture:seats", "required": false }, + { "id": "#another_furniture:shelves", "required": false }, + { "id": "#another_furniture:tables", "required": false }, + { "id": "#another_furniture:shutters", "required": false }, + { "id": "#another_furniture:flower_boxes", "required": false }, + { "id": "#another_furniture:curtains", "required": false }, + { "id": "#another_furniture:lamps", "required": false } + ] +} diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/create_contraption.json b/neoforge/build/resources/main/data/sable/tags/entity_type/create_contraption.json new file mode 100644 index 0000000..f83a24f --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/create_contraption.json @@ -0,0 +1,10 @@ +{ + "replace": false, + "values": [ + { "id": "create:contraption", "required": false }, + { "id": "create:stationary_contraption", "required": false }, + { "id": "create:oriented_contraption", "required": false }, + { "id": "create:gantry_contraption", "required": false }, + { "id": "create:carriage_contraption", "required": false } + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json b/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json new file mode 100644 index 0000000..131ae63 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_when_leaving_plot.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + { "id": "exposure:camera_stand", "required": false }, + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json b/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json new file mode 100644 index 0000000..96d7061 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/destroy_with_sub_level.json @@ -0,0 +1,8 @@ +{ + "replace": false, + "values": [ + "#sable:super_glue", + { "id": "create:seat", "required": false }, + "#sable:create_contraption" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json b/neoforge/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json new file mode 100644 index 0000000..d82b0b6 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/retain_in_sub_level.json @@ -0,0 +1,27 @@ +{ + "replace": false, + "values": [ + "#sable:create_contraption", + "#sable:super_glue", + "#sable:wall_entities", + { "id": "create:seat", "required": false }, + { "id": "blockbox:seat", "required": false }, + { "id": "botania:mana_burst", "required": false }, + { "id": "botania:corporea_burst", "required": false }, + { "id": "botania:spark", "required": false }, + { "id": "exposure:camera_stand", "required": false }, + "minecraft:snow_golem", + "minecraft:armor_stand", + "minecraft:minecart", + "minecraft:hopper_minecart", + "minecraft:chest_minecart", + "minecraft:furnace_minecart", + "minecraft:tnt_minecart", + "minecraft:command_block_minecart", + "minecraft:block_display", + "minecraft:item_display", + "minecraft:text_display", + "minecraft:marker", + "minecraft:leash_knot" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/super_glue.json b/neoforge/build/resources/main/data/sable/tags/entity_type/super_glue.json new file mode 100644 index 0000000..7fc40eb --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/super_glue.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + { "id": "create:super_glue", "required": false } + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/entity_type/wall_entities.json b/neoforge/build/resources/main/data/sable/tags/entity_type/wall_entities.json new file mode 100644 index 0000000..c36c99c --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/entity_type/wall_entities.json @@ -0,0 +1,12 @@ +{ + "replace": false, + "values": [ + "minecraft:painting", + "minecraft:item_frame", + "minecraft:glow_item_frame", + { "id": "create:crafting_blueprint", "required": false }, + { "id": "exposure:glass_photograph_frame", "required": false }, + { "id": "exposure:photograph_frame", "required": false }, + { "id": "labels:label", "required": false } + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/data/sable/tags/item/paddles.json b/neoforge/build/resources/main/data/sable/tags/item/paddles.json new file mode 100644 index 0000000..6fa1ee7 --- /dev/null +++ b/neoforge/build/resources/main/data/sable/tags/item/paddles.json @@ -0,0 +1,6 @@ +{ + "replace": false, + "values": [ + "#minecraft:shovels" + ] +} \ No newline at end of file diff --git a/neoforge/build/resources/main/icon.png b/neoforge/build/resources/main/icon.png new file mode 100644 index 0000000..5419332 Binary files /dev/null and b/neoforge/build/resources/main/icon.png differ diff --git a/neoforge/build/resources/main/natives/sable_rapier/LICENSE-RAPIER b/neoforge/build/resources/main/natives/sable_rapier/LICENSE-RAPIER new file mode 100644 index 0000000..97f4383 --- /dev/null +++ b/neoforge/build/resources/main/natives/sable_rapier/LICENSE-RAPIER @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright 2020 Sébastien Crozet + + 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 + + http://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. diff --git a/neoforge/build/resources/main/natives/sable_rapier/README.md b/neoforge/build/resources/main/natives/sable_rapier/README.md new file mode 100644 index 0000000..e774f58 --- /dev/null +++ b/neoforge/build/resources/main/natives/sable_rapier/README.md @@ -0,0 +1,2 @@ +The natives in this folder are for Sable's Rapier physics pipeline. +They contain a slightly modified version of Rapier visible at https://github.com/ryanhcode/rapier (view LICENSE-RAPIER). \ No newline at end of file diff --git a/neoforge/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z b/neoforge/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z new file mode 100644 index 0000000..022e303 Binary files /dev/null and b/neoforge/build/resources/main/natives/sable_rapier/sable_rapier_binaries.zip.l4z differ diff --git a/neoforge/build/resources/main/sable-neoforge.mixins.json b/neoforge/build/resources/main/sable-neoforge.mixins.json new file mode 100644 index 0000000..a5f64e4 --- /dev/null +++ b/neoforge/build/resources/main/sable-neoforge.mixins.json @@ -0,0 +1,174 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.neoforge.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "mixinextras": { + "minVersion": "0.5.0" + }, + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_entity_visible.LevelRendererMixin", + "block_outline_render.LevelRendererMixin", + "camera_rotation.CameraMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterRendererMixin", + "compatibility.create.belt.BeltRendererMixin", + "compatibility.create.big_outlines_interaction.BigOutlinesMixin", + "compatibility.create.blaze_burner.BlazeBurnerBlockEntityMixin", + "compatibility.create.contraptions.ContraptionControlsRendererMixin", + "compatibility.create.contraptions.ContraptionHandlerClientMixin", + "compatibility.create.contraptions.ContraptionVisualMixin", + "compatibility.create.contraptions.VisualizationEventHandlerMixin", + "compatibility.create.depot.DepotRendererMixin", + "compatibility.create.fluid_handling.PipeConnectionMixin", + "compatibility.create.frogports.ChainConveyorInteractionHandlerMixin", + "compatibility.create.frogports.ChainConveyorRidingHandlerMixin", + "compatibility.create.frogports.FrogportRendererMixin", + "compatibility.create.frogports.FrogportVisualMixin", + "compatibility.create.frogports.SmartBlockEntityRendererMixin", + "compatibility.create.particles.AirFlowParticleMixin", + "compatibility.create.particles.AirParticleMixin", + "compatibility.create.render_fixes.AABBOutlineMixin", + "compatibility.create.render_fixes.BeltRendererMixin", + "compatibility.create.render_fixes.BlockClusterOutlineMixin", + "compatibility.create.render_fixes.ChainConveyorRendererMixin", + "compatibility.create.render_fixes.ChasingAABBOutlineMixin", + "compatibility.create.render_fixes.ChasingAABBOutlinerMixin", + "compatibility.create.render_fixes.FilteringRendererMixin", + "compatibility.create.render_fixes.GhostBlockValueBoxMixin", + "compatibility.create.render_fixes.LineOutlineMixin", + "compatibility.create.render_fixes.LinkRendererMixin", + "compatibility.create.render_fixes.OutlineMixin", + "compatibility.create.render_fixes.PlacementClientMixin", + "compatibility.create.render_fixes.SafeBlockEntityRendererMixin", + "compatibility.create.render_fixes.ValueBoxMixin", + "compatibility.create.schematics.SchematicHandlerMixin", + "compatibility.create.schematics.SchematicRendererMixin", + "compatibility.create.schematics.SchematicTransformMixin", + "compatibility.create.stock_ticker.EntityHatsMixin", + "compatibility.create.tracks.TrackBlockOutlineMixin", + "compatibility.create.tracks.TrackTargetingClientMixin", + "compatibility.create.trains.CarriageContraptionVisualMixin", + "compatibility.create.wand_of_symmetry.SymmetryHandlerMixin", + "compatibility.flywheel.AbstractBlockEntityVisualMixin", + "compatibility.flywheel.BlockEntityStorageMixin", + "compatibility.flywheel.EmbeddedEnvironmentMixin", + "compatibility.flywheel.EngineImplMixin", + "compatibility.flywheel.EnvironmentStorageMixin", + "compatibility.flywheel.LightStorageAccessor", + "compatibility.flywheel.MatrixBufferMixin", + "compatibility.flywheel.RenderDispatcherImplMixin", + "compatibility.flywheel.ShaderSourcesMixin", + "compatibility.flywheel.VisualManagerImplMixin", + "compatibility.pmweather.RadarRendererMixin", + "compatibility.sodiumextras.EmbyToolsMixin", + "dynamic_directional_shading.SectionCompilerMixin", + "sound.MovingSoundInstanceDelegateMixin" + ], + "mixins": [ + "compatibility.backpacks.BackpackPickupEventsMixin", + "compatibility.create.airflow.AirCurrentMixin", + "compatibility.create.airflow.FanProcessingTypeMixin", + "compatibility.create.basin_interactions.BasinBlockEntityMixin", + "compatibility.create.basin_interactions.BasinOperatingBlockEntityMixin", + "compatibility.create.behaviour_compatibility.BlockEntityBehaviourMixin", + "compatibility.create.behaviour_compatibility.block_breaking_behaviour.BlockBreakingMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.block_breaking_behaviour.SawMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.harvester_behaviour.HarvesterMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockEntityMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockEntityUsageMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockMixin", + "compatibility.create.belt.BeltBlockEntityMixin", + "compatibility.create.belt.BeltBlockMixin", + "compatibility.create.belt.BeltMovementHandlerMixin", + "compatibility.create.big_outlines_interaction.BigOutlinesMixin", + "compatibility.create.block_breakers.BlockBreakingKineticBlockEntityDamageMixin", + "compatibility.create.block_breakers.BlockBreakingKineticBlockEntityMixin", + "compatibility.create.blueprint.BlueprintEntityMixin", + "compatibility.create.chain_conveyor.ChainConveyorBlockEntityMixin", + "compatibility.create.chain_conveyor.ChainConveyorBlockMixin", + "compatibility.create.contraptions.AbstractContraptionEntityMixin", + "compatibility.create.contraptions.ContraptionColliderMixin", + "compatibility.create.contraptions.Matrix3dAccessor", + "compatibility.create.crushing_wheel.CrushingWheelBlockMixin", + "compatibility.create.crushing_wheel_entity_processing.CrushingWheelControllerBlockEntityMixin", + "compatibility.create.deployer.DeployerBlockEntityMixin", + "compatibility.create.display_link.ClickToLinkBlockItemMixin", + "compatibility.create.display_link.DisplayLinkBlockEntityMixin", + "compatibility.create.display_link.DisplayLinkBlockMixin", + "compatibility.create.ejector.EjectorBlockEntityMixin", + "compatibility.create.elevator_controls.ElevatorControlsHandlerMixin", + "compatibility.create.entity_falls_on_block.BasinBlockMixin", + "compatibility.create.entity_falls_on_block.BeltMillstoneBlocksMixin", + "compatibility.create.entity_falls_on_block.SawBlockMixin", + "compatibility.create.entity_falls_on_block.SeatBlockMixin", + "compatibility.create.factory_panel.FactoryPanelConnectionHandlerMixin", + "compatibility.create.fans_provide_force.EncasedFanBlockEntityMixin", + "compatibility.create.fluid_handling.OpenEndedPipeMixin", + "compatibility.create.fluid_tank_heating.BoilerDataMixin", + "compatibility.create.flywheel.FlywheelBlockEntityMixin", + "compatibility.create.frogports.ChainConveyorBlockEntityMixin", + "compatibility.create.frogports.ChainConveyorShapeAccessor", + "compatibility.create.frogports.ChainPackageInteractionHandlerMixin", + "compatibility.create.frogports.ChainPackageInteractionPacketMixin", + "compatibility.create.frogports.FrogportBlockEntityMixin", + "compatibility.create.frogports.FrogportBlockMixin", + "compatibility.create.frogports.PackagePortPlacementPacketMixin", + "compatibility.create.frogports.PackagePortTargetMixin", + "compatibility.create.frogports.PackagePortTargetSelectionHandlerMixin", + "compatibility.create.funnels.FunnelBlockMixin", + "compatibility.create.hose_pulley.HosePulleyBlockEntityMixin", + "compatibility.create.hose_pulley.HosePulleyFluidHandlerMixin", + "compatibility.create.impact.AbstractBellBlockAccessor", + "compatibility.create.impact.AbstractBellBlockMixin", + "compatibility.create.inventory_manipulation.CapManipulationBehaviourBaseMixin", + "compatibility.create.inventory_manipulation.ChuteBlockEntityMixin", + "compatibility.create.lectern_controller.LecternControllerBlockEntityMixin", + "compatibility.create.lectern_controller.LecternControllerBlockMixin", + "compatibility.create.mechnical_arm.MechanicalArmBlockEntity", + "compatibility.create.mechnical_arm.MechanicalArmSublevelFailure", + "compatibility.create.nozzle.NozzleBlockEntityAccessor", + "compatibility.create.nozzle.block_entity.NozzleBEFixesMixin", + "compatibility.create.nozzle.block_entity.NozzleHoveringMixin", + "compatibility.create.nozzle.block_entity.ValidNozzledirectionMixin", + "compatibility.create.raycast.RaycastHelperMixin", + "compatibility.create.redstone_contacts.AllBlockEntityTypesMixin", + "compatibility.create.redstone_contacts.RedstoneContactBlockMixin", + "compatibility.create.redstone_links.RedstoneLinkNetworkHandlerMixin", + "compatibility.create.sails_providing_lift.SailBlockMixin", + "compatibility.create.saw.SawBlockEntityMixin", + "compatibility.create.schematics.DeployToolMixin", + "compatibility.create.schematics.SchematicAndQuillHandlerMixin", + "compatibility.create.schematics.SchematicExportMixin", + "compatibility.create.schematics.SchematicLevelMixin", + "compatibility.create.schematics.SchematicPlacePacketMixin", + "compatibility.create.schematics.SchematicPrinterMixin", + "compatibility.create.schematics.SchematicToolBaseMixin", + "compatibility.create.schematics.StructureTemplateMixin", + "compatibility.create.sticker.StickerBlockEntityMixin", + "compatibility.create.sticker.StickerBlockMixin", + "compatibility.create.stock_ticker.StockTickerInteractionHandlerMixin", + "compatibility.create.super_glue.LevelAccessor", + "compatibility.create.super_glue.SuperGlueEntityMixin", + "compatibility.create.super_glue.SuperGlueRemovalPacketMixin", + "compatibility.create.super_glue.SuperGlueSelectionHandlerMixin", + "compatibility.create.toolbox.ToolBoxClientHandlerMixin", + "compatibility.create.toolbox.ToolboxHandlerMixin", + "compatibility.create.tracks.CurvedTrackDestroyPacketMixin", + "compatibility.create.tracks.TrackBlockItemMixin", + "compatibility.create.tracks.TrackBlockMixin", + "compatibility.create.tracks.TrackGraphVisualizerMixin", + "compatibility.create.tracks.TrackPlacementMixin", + "compatibility.create.turntable.TurntableBlockMixin", + "compatibility.create.vertical_gearbox.VerticalGearboxItemMixin", + "compatibility.create.zapper.ZapperItemMixin", + "compatibility.pmweather.AnemometerBlockEntityMixin", + "compatibility.pmweather.AnemometerBlockMixin", + "compatibility.pmweather.PMWeatherMixin", + "entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entity_swimming.EntityMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/neoforge/build/resources/main/sable.accesswidener b/neoforge/build/resources/main/sable.accesswidener new file mode 100644 index 0000000..0258ae4 --- /dev/null +++ b/neoforge/build/resources/main/sable.accesswidener @@ -0,0 +1,118 @@ +accessWidener v2 named + +accessible class net/minecraft/client/multiplayer/ClientChunkCache$Storage + +accessible field net/minecraft/server/level/ChunkHolder fullChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder tickingChunkFuture Ljava/util/concurrent/CompletableFuture; +accessible field net/minecraft/server/level/ChunkHolder entityTickingChunkFuture Ljava/util/concurrent/CompletableFuture; + +accessible class net/minecraft/server/level/ServerChunkCache$ChunkAndHolder +accessible method net/minecraft/server/level/ServerChunkCache$ChunkAndHolder (Lnet/minecraft/world/level/chunk/LevelChunk;Lnet/minecraft/server/level/ChunkHolder;)V + +accessible field net/minecraft/server/network/ServerCommonPacketListenerImpl connection Lnet/minecraft/network/Connection; + +accessible field net/minecraft/server/level/ChunkMap updatingChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; +accessible field net/minecraft/server/level/ChunkMap visibleChunkMap Lit/unimi/dsi/fastutil/longs/Long2ObjectLinkedOpenHashMap; + +accessible field net/minecraft/server/level/ChunkLevel ENTITY_TICKING_LEVEL I +accessible field net/minecraft/server/level/ChunkLevel BLOCK_TICKING_LEVEL I +accessible method net/minecraft/server/network/PlayerChunkSender sendChunk (Lnet/minecraft/server/network/ServerGamePacketListenerImpl;Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/world/level/chunk/LevelChunk;)V + +accessible field net/minecraft/world/level/ClipContext block Lnet/minecraft/world/level/ClipContext$Block; +accessible field net/minecraft/world/level/ClipContext fluid Lnet/minecraft/world/level/ClipContext$Fluid; +accessible field net/minecraft/world/level/ClipContext collisionContext Lnet/minecraft/world/phys/shapes/CollisionContext; + +accessible method net/minecraft/server/level/ChunkMap onFullChunkStatusChange (Lnet/minecraft/world/level/ChunkPos;Lnet/minecraft/server/level/FullChunkStatus;)V + +accessible field net/minecraft/client/particle/Particle xo D +accessible field net/minecraft/client/particle/Particle yo D +accessible field net/minecraft/client/particle/Particle zo D +accessible field net/minecraft/client/particle/Particle x D +accessible field net/minecraft/client/particle/Particle y D +accessible field net/minecraft/client/particle/Particle z D + + +accessible field net/minecraft/world/level/lighting/LevelLightEngine blockEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible field net/minecraft/world/level/lighting/LevelLightEngine skyEngine Lnet/minecraft/world/level/lighting/LightEngine; +accessible method net/minecraft/server/level/ThreadedLevelLightEngine runUpdate ()V + +extendable method net/minecraft/server/level/GenerationChunkHolder rescheduleChunkTask (Lnet/minecraft/server/level/ChunkMap;Lnet/minecraft/world/level/chunk/status/ChunkStatus;)V + +accessible method net/minecraft/server/level/ThreadedLevelLightEngine updateChunkStatus (Lnet/minecraft/world/level/ChunkPos;)V + +accessible field net/minecraft/client/renderer/block/BlockRenderDispatcher modelRenderer Lnet/minecraft/client/renderer/block/ModelBlockRenderer; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$AmbientOcclusionFace +accessible field net/minecraft/client/renderer/RenderStateShard name Ljava/lang/String; + +# Assembly +accessible method net/minecraft/world/entity/decoration/HangingEntity calculateSupportBox ()Lnet/minecraft/world/phys/AABB; + +# Directional Shading +accessible field net/minecraft/client/renderer/block/ModelBlockRenderer CACHE Ljava/lang/ThreadLocal; +accessible class net/minecraft/client/renderer/block/ModelBlockRenderer$Cache + +# UDP Networking +accessible field net/minecraft/network/Connection channel Lio/netty/channel/Channel; + +# Serialization +accessible field net/minecraft/world/level/storage/DimensionDataStorage dataFolder Ljava/io/File; +accessible method net/minecraft/server/level/ChunkMap getChunks ()Ljava/lang/Iterable; +accessible method net/minecraft/server/level/ChunkMap scheduleUnload (JLnet/minecraft/server/level/ChunkHolder;)V +accessible field net/minecraft/server/level/ChunkMap toDrop Lit/unimi/dsi/fastutil/longs/LongSet; +accessible field net/minecraft/server/level/ChunkMap modified Z +accessible field net/minecraft/server/level/ChunkMap unloadQueue Ljava/util/Queue; +accessible method net/minecraft/server/level/ChunkMap saveChunkIfNeeded (Lnet/minecraft/server/level/ChunkHolder;)Z +accessible field net/minecraft/server/level/ChunkMap chunkSaveCooldowns Lit/unimi/dsi/fastutil/longs/Long2LongMap; + +# Shadows +accessible field net/minecraft/client/renderer/ShaderInstance samplerLocations Ljava/util/List; + +# Particles +accessible field net/minecraft/client/particle/Particle xd D +accessible field net/minecraft/client/particle/Particle yd D +accessible field net/minecraft/client/particle/Particle zd D + +# Attributes +accessible field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; +mutable field net/minecraft/world/entity/ai/attributes/AttributeSupplier instances Ljava/util/Map; + +# Entity Storage +accessible field net/minecraft/server/level/ServerLevel entityManager Lnet/minecraft/world/level/entity/PersistentEntitySectionManager; +accessible field net/minecraft/world/level/entity/PersistentEntitySectionManager sectionStorage Lnet/minecraft/world/level/entity/EntitySectionStorage; + +# Lithum Compat +accessible class net/minecraft/server/level/ServerChunkCache$MainThreadExecutor + +# Entity Kicking +accessible field net/minecraft/world/entity/Entity levelCallback Lnet/minecraft/world/level/entity/EntityInLevelCallback; + +# Distance Manager +accessible class net/minecraft/server/level/ChunkMap$DistanceManager + +# Gizmo +accessible method net/minecraft/client/renderer/GameRenderer getFov (Lnet/minecraft/client/Camera;FZ)D + +# Sub-Level rendering +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection updateGlobalBlockEntities (Ljava/util/Collection;)V +accessible method net/minecraft/client/renderer/chunk/SectionRenderDispatcher$RenderSection setCompiled (Lnet/minecraft/client/renderer/chunk/SectionRenderDispatcher$CompiledSection;)V +accessible field net/minecraft/client/renderer/LevelRenderer cullingFrustum Lnet/minecraft/client/renderer/culling/Frustum; +accessible field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; +mutable field net/minecraft/client/renderer/chunk/SectionRenderDispatcher bufferPool Lnet/minecraft/client/renderer/SectionBufferBuilderPool; + +# Entity Getting +accessible method net/minecraft/world/level/Level getEntities ()Lnet/minecraft/world/level/entity/LevelEntityGetter; + +# Respawning +accessible class net/minecraft/server/level/ServerPlayer$RespawnPosAngle +accessible method net/minecraft/server/level/ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +accessible method net/minecraft/server/level/ServerPlayer findRespawnAndUseSpawnBlock (Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;FZZ)Ljava/util/Optional; + +# Entity Riding +accessible method net/minecraft/world/entity/LivingEntity dismountVehicle (Lnet/minecraft/world/entity/Entity;)V +accessible field net/minecraft/world/entity/Entity removalReason Lnet/minecraft/world/entity/Entity$RemovalReason; + +extendable method net/minecraft/world/entity/Entity getEyePosition (F)Lnet/minecraft/world/phys/Vec3; +extendable method net/minecraft/world/entity/Entity setRemoved (Lnet/minecraft/world/entity/Entity$RemovalReason;)V + +#Abstract hurting projectile accel +accessible field net/minecraft/world/entity/projectile/AbstractHurtingProjectile accelerationPower D \ No newline at end of file diff --git a/neoforge/build/resources/main/sable.mixins.json b/neoforge/build/resources/main/sable.mixins.json new file mode 100644 index 0000000..ad2263a --- /dev/null +++ b/neoforge/build/resources/main/sable.mixins.json @@ -0,0 +1,223 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_decal_render.LevelRendererMixin", + "camera.camera_rotation.CompassItemPropertyFunctionMixin", + "camera.camera_rotation.EntityMixin", + "camera.camera_rotation.GuiMixin", + "camera.camera_zoom.CameraMixin", + "camera.camera_zoom.MouseHandlerMixin", + "camera.new_camera_types.CameraTypeMixin", + "camera.new_camera_types.GameRendererMixin", + "camera.new_camera_types.MinecraftMixin", + "clip_overwrite.ClientLevelMixin", + "clip_overwrite.GameRendererMixin", + "compatibility.iris.ExtendedShaderMixin", + "config.GameRendererAccessor", + "debug_render.DebugRendererMixin", + "debug_render.DebugScreenOverlayMixin", + "debug_render.LevelRendererMixin", + "dynamic_directional_shading.AmbientOcclusionFaceMixin", + "dynamic_directional_shading.ModelBlockRendererCacheMixin", + "dynamic_directional_shading.ModelBlockRendererMixin", + "entity.entities_stick_sublevels.ClientPacketListenerMixin", + "entity.entities_stick_sublevels.EntityRenderDispatcherMixin", + "entity.entities_stick_sublevels.effects.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.LocalPlayerMixin", + "entity.entities_stick_sublevels.player.RemotePlayerMixin", + "entity.entities_turn_with_sub_levels.GameRendererMixin", + "entity.entity_leashing.EntityRendererMixin", + "entity.entity_rendering.EntityRendererMixin", + "entity.entity_rendering.LevelRendererMixin", + "entity.entity_rendering.shadows.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.ClientPacketListenerMixin", + "entity.entity_rotations_and_riding.EntityRenderDispatcherMixin", + "entity.entity_rotations_and_riding.EntityRendererMixin", + "entity.entity_rotations_and_riding.LocalPlayerMixin", + "entity.entity_sublevel_collision.CameraMixin", + "entity.entity_swimming.CameraMixin", + "options.OptionsScreenMixin", + "particle.BlockMarkerMixin", + "particle.ClientLevelMixin", + "particle.FlameParticleMixin", + "particle.LevelRendererMixin", + "particle.ParticleEngineMixin", + "particle.ParticleMixin", + "particle.SuspendedParticleMixin", + "particle.TerrainParticleMixin", + "player_freezing.LocalPlayerMixin", + "plot.ClientChunkCacheMixin", + "plot.MinecraftMixin", + "plot.lighting.ClientPacketListenerMixin", + "plot.lighting.RenderChunkRegionMixin", + "punching.MinecraftMixin", + "punching.MultiPlayerGameModeMixin", + "respawn_point.sleeping.LivingEntityRendererMixin", + "sky_light_shadow.LevelRendererMixin", + "stop_rain.LevelRenderMixin", + "sublevel_render.BlockEntityRenderDispatcherMixin", + "sublevel_render.LevelRendererMixin", + "sublevel_render.RenderSectionAccessor", + "sublevel_render.RenderSectionMixin", + "sublevel_render.block_entity_render.LevelRendererMixin", + "sublevel_render.fancy.ProgramMixin", + "sublevel_render.impl.sodium.LevelRendererMixin", + "sublevel_render.impl.sodium.SodiumWorldRendererMixin", + "sublevel_render.impl.vanilla.LevelRendererMixin", + "sublevel_render.impl.vanilla.ViewAreaMixin", + "sublevel_render.impl.vanilla.water_occlusion.LevelRendererMixin", + "sublevel_sounds.AbstractSoundInstanceMixin", + "sublevel_sounds.ChannelAccessor", + "sublevel_sounds.ClientLevelMixin", + "sublevel_sounds.SoundEngineMixin", + "toast.IntegratedServerMixin", + "water_occlusion.CameraMixin", + "water_occlusion.FogRendererMixin", + "water_occlusion.GameRendererMixin" + ], + "mixins": [ + "assembly.AbstractFurnaceBlockEntityMixin", + "block_decal_render.ServerLevelMixin", + "block_placement.BlockPlaceContextMixin", + "block_placement.EntityGetterMixin", + "block_placement.UseOnContextMixin", + "block_properties.BlockStateMixin", + "chunk_container_replacement.LevelChunkSectionMixin", + "climbing_sub_levels.LivingEntityMixin", + "clip_overwrite.BlockGetterMixin", + "clip_overwrite.ClipContextMixin", + "clip_overwrite.EntityMixin", + "clip_overwrite.HitResultMixin", + "command.ArgumentTypeInfosMixin", + "command.DataCommandsMixin", + "command.ExecuteCommandMixin", + "compatibility.computercraft.WirelessNetworkMixin", + "compatibility.exposure.CameraPosesMixin", + "compatibility.exposure.CameraStandEntityMixin", + "compatibility.jade.BlockAccessorImplMixin", + "compatibility.jade.RayTracingMixin", + "compatibility.jadeaddons.CreatePluginMixin", + "compatibility.vista.LODMixin", + "compatibility.vista.ViewFinderAccessMixin", + "compatibility.vista.ViewFinderControllerMixin", + "death_message.CombatTrackerMixin", + "death_message.EntityMixin", + "enchanting_table.EnchantingTableBlockEntityMixin", + "entity.arrows_hit_blocks.AbstractArrowMixin", + "entity.entities_in_blocks.EntityMixin", + "entity.entities_stick_sublevels.EntityMixin", + "entity.entities_stick_sublevels.LivingEntityMixin", + "entity.entities_stick_sublevels.ServerEntityMixin", + "entity.entities_stick_sublevels.effects.EntityMixin", + "entity.entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundMoveEntityPacketPosRotMixin", + "entity.entities_stick_sublevels.packet_mixin.ClientboundTeleportEntityPacketMixin", + "entity.entities_stick_sublevels.player.ServerboundMovePlayerPacketMixin", + "entity.entities_stick_sublevels.player.ServerGamePacketListenerImplMixin", + "entity.entities_stick_sublevels.player.ServerPlayerMixin", + "entity.entity_aabb_lookup.LevelsMixin", + "entity.entity_ai.EatBlockGoalMixin", + "entity.entity_collision.CollisionContextMixin", + "entity.entity_collision.EntityMixin", + "entity.entity_interaction.ProjectileUtilMixin", + "entity.entity_kicking.BlockMixin", + "entity.entity_kicking.ServerLevelMixin", + "entity.entity_leashing.LeashableMixin", + "entity.entity_pathfinding.FlyNodeEvaluatorMixin", + "entity.entity_pathfinding.GroundPathNavigationMixin", + "entity.entity_pathfinding.PathfindingContextMixin", + "entity.entity_pathfinding.PathMixin", + "entity.entity_pathfinding.PathNavigationMixin", + "entity.entity_pathfinding.RandomPosMixin", + "entity.entity_pathfinding.WalkNodeEvaluatorMixin", + "entity.entity_rotations_and_riding.BlockMixin", + "entity.entity_rotations_and_riding.EntityMixin", + "entity.entity_rotations_and_riding.EntityTypeMixin", + "entity.entity_rotations_and_riding.LivingEntityMixin", + "entity.entity_rotations_and_riding.PlayerMixin", + "entity.entity_rotations_and_riding.ServerEntityMixin", + "entity.entity_rotations_and_riding.ServerPlayerMixin", + "entity.entity_sublevel_collision.AbstractMinecartMixin", + "entity.entity_sublevel_collision.EntityMixin", + "entity.entity_sublevel_collision.ItemEntityMixin", + "entity.entity_sublevel_collision.LevelMixin", + "entity.entity_sublevel_collision.LivingEntityMixin", + "entity.entity_sublevel_collision.PlayerMixin", + "entity.entity_sublevel_collision.ServerGamePacketListenerImplMixin", + "entity.entity_tracking.TrackedEntityMixin", + "entity.entity_unloading.PersistentEntitySectionManagerMixin", + "entity.falling_block.FallingBlockEntityMixin", + "entity.projectile.ProjectileMixin", + "entity.server_entities_tick.ChunkMapMixin", + "entity.server_entities_tick.ServerLevelMixin", + "entity.sublevels_block_sky.SubLevelsBlockSkyMixin", + "entity.tamed_teleport.TamableAnimalMixin", + "entity.teleport_players.ServerPlayerMixin", + "entity.tnt_jumps.PrimedTntMixin", + "entity.trident.ThrownTridentMixin", + "explosion.ExplosionMixin", + "explosion.ServerLevelMixin", + "extension.EntityMixin", + "fluids_on_sub_levels.FlowingFluidMixin", + "game_test.GameTestInfoMixin", + "game_test.StructureUtilsMixin", + "game_test.TestCommandMixin", + "impact.BeehiveBlockMixin", + "impact.BellBlockMixin", + "impact.TntBlockMixin", + "interaction_distance.EntityMixin", + "interaction_distance.PlayerMixin", + "level_accelerator.ServerChunkCacheAccessor", + "particle.ServerLevelMixin", + "physics.ServerLevelMixin", + "player_freezing.PlayerListMixin", + "player_freezing.PlayerMixin", + "player_freezing.ServerPlayerMixin", + "plot.ChunkMapMixin", + "plot.LevelChunkMixin", + "plot.LevelsMixin", + "plot.PlayerListMixin", + "plot.ServerChunkCacheMixin", + "plot.ServerLevelMixin", + "plot.lighting.BlockAndTintGetterMixin", + "plot.lighting.LevelChunkMixin", + "plot.serialization.ChunkMapMixin", + "plot.serialization.LevelChunkTicksMixin", + "portal.EntityMixin", + "portal.NetherPortalBlockMixin", + "prevent_freezing.BiomeMixin", + "prevent_overgrowth.VineBlockMixin", + "punching.ItemInvoker", + "recoil.ProjectileDispenseBehaviorMixin", + "respawn_point.ServerPlayerMixin", + "respawn_point.sleeping.LivingEntityMixin", + "respawn_point.sleeping.ServerPlayerMixin", + "sculk_vibrations.EuclideanGameEventListenerRegistryMixin", + "sculk_vibrations.GameEventDispatcherMixin", + "sculk_vibrations.VibrationSystemListenerMixin", + "sculk_vibrations.VibrationSystemTickerMixin", + "sign_interaction.SignBlockEntityMixin", + "tracking_points.EntityMixin", + "tracking_points.ServerPlayerMixin", + "udp.ConnectionMixin", + "udp.MinecraftServerMixin", + "udp.PlayerListMixin", + "udp.ServerConnectionListenerMixin", + "voxel_shape_iteration.BitSetDiscreteVoxelShapeAccessor", + "voxel_shape_iteration.DiscreteVoxelShapeAccessor", + "voxel_shape_iteration.VoxelShapeMixin", + "water_occlusion.EntityMixin", + "water_occlusion.LevelsMixin", + "water_occlusion.WaterFluidMixin", + "world_border.LevelMixin", + "world_border.WorldBorderMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AABBOutlineMixin.class.uniqueId367 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AABBOutlineMixin.class.uniqueId367 new file mode 100644 index 0000000..10ac8a9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AABBOutlineMixin.class.uniqueId367 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId393 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId393 new file mode 100644 index 0000000..9dd7ac1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractArrowMixin.class.uniqueId393 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractBlockEntityVisualMixin.class.uniqueId479 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractBlockEntityVisualMixin.class.uniqueId479 new file mode 100644 index 0000000..41595dc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractBlockEntityVisualMixin.class.uniqueId479 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractContraptionEntityMixin.class.uniqueId240 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractContraptionEntityMixin.class.uniqueId240 new file mode 100644 index 0000000..0334ec4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractContraptionEntityMixin.class.uniqueId240 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId414 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId414 new file mode 100644 index 0000000..415c84e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractMinecartMixin.class.uniqueId414 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId455 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId455 new file mode 100644 index 0000000..81d476b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AbstractSoundInstanceMixin.class.uniqueId455 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId87 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId87 new file mode 100644 index 0000000..9e01165 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ActiveSableCompanion.class.uniqueId87 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirCurrentMixin.class.uniqueId340 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirCurrentMixin.class.uniqueId340 new file mode 100644 index 0000000..58f1906 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirCurrentMixin.class.uniqueId340 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirFlowParticleMixin.class.uniqueId179 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirFlowParticleMixin.class.uniqueId179 new file mode 100644 index 0000000..3ebba97 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirFlowParticleMixin.class.uniqueId179 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirParticleMixin.class.uniqueId96 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirParticleMixin.class.uniqueId96 new file mode 100644 index 0000000..6c04d96 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AirParticleMixin.class.uniqueId96 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockEntityMixin.class.uniqueId86 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockEntityMixin.class.uniqueId86 new file mode 100644 index 0000000..2e80950 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockEntityMixin.class.uniqueId86 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockMixin.class.uniqueId383 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockMixin.class.uniqueId383 new file mode 100644 index 0000000..08de5ef Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AnemometerBlockMixin.class.uniqueId383 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId177 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId177 new file mode 100644 index 0000000..0870f7b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArbitraryPhysicsObject.class.uniqueId177 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId436 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId436 new file mode 100644 index 0000000..524ed52 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ArgumentTypeInfosMixin.class.uniqueId436 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AssemblyTest.class.uniqueId36 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AssemblyTest.class.uniqueId36 new file mode 100644 index 0000000..c6806a5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/AssemblyTest.class.uniqueId36 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BackpackPickupEventsMixin.class.uniqueId52 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BackpackPickupEventsMixin.class.uniqueId52 new file mode 100644 index 0000000..19dba97 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BackpackPickupEventsMixin.class.uniqueId52 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinBlockEntityMixin.class.uniqueId213 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinBlockEntityMixin.class.uniqueId213 new file mode 100644 index 0000000..4471ffd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinBlockEntityMixin.class.uniqueId213 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinOperatingBlockEntityMixin.class.uniqueId281 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinOperatingBlockEntityMixin.class.uniqueId281 new file mode 100644 index 0000000..d70fe28 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BasinOperatingBlockEntityMixin.class.uniqueId281 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockCallback.class.uniqueId335 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockCallback.class.uniqueId335 new file mode 100644 index 0000000..ae92d16 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockCallback.class.uniqueId335 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockEntityMixin.class.uniqueId223 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockEntityMixin.class.uniqueId223 new file mode 100644 index 0000000..3d86bb0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltBlockEntityMixin.class.uniqueId223 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMillstoneBlocksMixin.class.uniqueId34 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMillstoneBlocksMixin.class.uniqueId34 new file mode 100644 index 0000000..8660b54 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMillstoneBlocksMixin.class.uniqueId34 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMovementHandlerMixin.class.uniqueId188 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMovementHandlerMixin.class.uniqueId188 new file mode 100644 index 0000000..48c77b3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltMovementHandlerMixin.class.uniqueId188 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId189 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId189 new file mode 100644 index 0000000..186170a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId189 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId287 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId287 new file mode 100644 index 0000000..751a6dc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BeltRendererMixin.class.uniqueId287 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BigOutlinesMixin.class.uniqueId293 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BigOutlinesMixin.class.uniqueId293 new file mode 100644 index 0000000..eee6140 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BigOutlinesMixin.class.uniqueId293 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId460 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId460 new file mode 100644 index 0000000..aa87308 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BiomeMixin.class.uniqueId460 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlazeBurnerBlockEntityMixin.class.uniqueId200 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlazeBurnerBlockEntityMixin.class.uniqueId200 new file mode 100644 index 0000000..6d2b8cc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlazeBurnerBlockEntityMixin.class.uniqueId200 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId320 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId320 new file mode 100644 index 0000000..939c827 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAccessorImplMixin.class.uniqueId320 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId345 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId345 new file mode 100644 index 0000000..4647b18 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockAndTintGetterMixin.class.uniqueId345 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityDamageMixin.class.uniqueId494 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityDamageMixin.class.uniqueId494 new file mode 100644 index 0000000..9f9692d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityDamageMixin.class.uniqueId494 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityMixin.class.uniqueId322 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityMixin.class.uniqueId322 new file mode 100644 index 0000000..25d37f8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingKineticBlockEntityMixin.class.uniqueId322 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingMovementBehaviourMixin.class.uniqueId361 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingMovementBehaviourMixin.class.uniqueId361 new file mode 100644 index 0000000..32ba314 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockBreakingMovementBehaviourMixin.class.uniqueId361 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockClusterOutlineMixin.class.uniqueId362 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockClusterOutlineMixin.class.uniqueId362 new file mode 100644 index 0000000..354887d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockClusterOutlineMixin.class.uniqueId362 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityBehaviourMixin.class.uniqueId116 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityBehaviourMixin.class.uniqueId116 new file mode 100644 index 0000000..3a9139a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityBehaviourMixin.class.uniqueId116 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId378 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId378 new file mode 100644 index 0000000..2afd0a4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityPropeller.class.uniqueId378 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId117 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId117 new file mode 100644 index 0000000..7f11440 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityRenderDispatcherMixin.class.uniqueId117 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageExtension.class.uniqueId401 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageExtension.class.uniqueId401 new file mode 100644 index 0000000..a183928 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageExtension.class.uniqueId401 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageMixin.class.uniqueId254 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageMixin.class.uniqueId254 new file mode 100644 index 0000000..8ca22c8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntityStorageMixin.class.uniqueId254 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId452 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId452 new file mode 100644 index 0000000..dd0611d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelActor.class.uniqueId452 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId373 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId373 new file mode 100644 index 0000000..f0529c9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockEntitySubLevelPropellerActor.class.uniqueId373 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId174 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId174 new file mode 100644 index 0000000..2c0cf38 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockGetterMixin.class.uniqueId174 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId124 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId124 new file mode 100644 index 0000000..1fc9e00 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId124 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId483 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId483 new file mode 100644 index 0000000..2684f4d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockMixin.class.uniqueId483 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId97 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId97 new file mode 100644 index 0000000..17bba2f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockPlaceContextMixin.class.uniqueId97 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId448 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId448 new file mode 100644 index 0000000..610565f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderContext.class.uniqueId448 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId369 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId369 new file mode 100644 index 0000000..12c03b4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider$LiftProviderGroup.class.uniqueId369 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId478 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId478 new file mode 100644 index 0000000..ee5eb45 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BlockSubLevelLiftProvider.class.uniqueId478 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoilerDataMixin.class.uniqueId197 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoilerDataMixin.class.uniqueId197 new file mode 100644 index 0000000..819225a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoilerDataMixin.class.uniqueId197 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId475 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId475 new file mode 100644 index 0000000..7f20882 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject$BoxMassData.class.uniqueId475 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId222 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId222 new file mode 100644 index 0000000..990dd56 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/BoxPhysicsObject.class.uniqueId222 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId129 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId129 new file mode 100644 index 0000000..eb0ff08 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId129 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId242 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId242 new file mode 100644 index 0000000..dafdb96 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId242 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId326 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId326 new file mode 100644 index 0000000..a122272 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId326 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId408 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId408 new file mode 100644 index 0000000..e822f0f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraMixin.class.uniqueId408 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId30 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId30 new file mode 100644 index 0000000..e4afd78 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraPosesMixin.class.uniqueId30 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId62 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId62 new file mode 100644 index 0000000..d007ad8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CameraStandEntityMixin.class.uniqueId62 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId274 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId274 new file mode 100644 index 0000000..1b1da10 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CanFallAtleastHelper.class.uniqueId274 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CapManipulationBehaviourBaseMixin.class.uniqueId168 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CapManipulationBehaviourBaseMixin.class.uniqueId168 new file mode 100644 index 0000000..f383f6e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CapManipulationBehaviourBaseMixin.class.uniqueId168 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CarriageContraptionVisualMixin.class.uniqueId463 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CarriageContraptionVisualMixin.class.uniqueId463 new file mode 100644 index 0000000..58c1fbb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CarriageContraptionVisualMixin.class.uniqueId463 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorBlockEntityMixin.class.uniqueId72 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorBlockEntityMixin.class.uniqueId72 new file mode 100644 index 0000000..6148b73 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorBlockEntityMixin.class.uniqueId72 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorInteractionHandlerMixin.class.uniqueId54 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorInteractionHandlerMixin.class.uniqueId54 new file mode 100644 index 0000000..f86a359 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorInteractionHandlerMixin.class.uniqueId54 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRendererMixin.class.uniqueId204 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRendererMixin.class.uniqueId204 new file mode 100644 index 0000000..fbdea5c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRendererMixin.class.uniqueId204 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRidingHandlerMixin.class.uniqueId423 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRidingHandlerMixin.class.uniqueId423 new file mode 100644 index 0000000..817a762 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainConveyorRidingHandlerMixin.class.uniqueId423 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainPackageInteractionHandlerMixin.class.uniqueId491 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainPackageInteractionHandlerMixin.class.uniqueId491 new file mode 100644 index 0000000..c71a4f1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChainPackageInteractionHandlerMixin.class.uniqueId491 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChasingAABBOutlineMixin.class.uniqueId74 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChasingAABBOutlineMixin.class.uniqueId74 new file mode 100644 index 0000000..c24f130 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChasingAABBOutlineMixin.class.uniqueId74 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId176 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId176 new file mode 100644 index 0000000..9a9dc2a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId176 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId184 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId184 new file mode 100644 index 0000000..0712db0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId184 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 new file mode 100644 index 0000000..5462613 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChunkMapMixin.class.uniqueId6 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChuteBlockEntityMixin.class.uniqueId473 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChuteBlockEntityMixin.class.uniqueId473 new file mode 100644 index 0000000..18f6a10 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ChuteBlockEntityMixin.class.uniqueId473 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClickToLinkBlockItemMixin.class.uniqueId227 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClickToLinkBlockItemMixin.class.uniqueId227 new file mode 100644 index 0000000..06cabb1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClickToLinkBlockItemMixin.class.uniqueId227 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId65 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId65 new file mode 100644 index 0000000..ef1b795 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientChunkCacheMixin.class.uniqueId65 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId351 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId351 new file mode 100644 index 0000000..72493bc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin$1.class.uniqueId351 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId193 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId193 new file mode 100644 index 0000000..4dd0c84 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId193 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId29 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId29 new file mode 100644 index 0000000..4c5d239 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId29 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId350 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId350 new file mode 100644 index 0000000..1c8aba2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelMixin.class.uniqueId350 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId269 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId269 new file mode 100644 index 0000000..3b311d1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientLevelPlot.class.uniqueId269 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId151 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId151 new file mode 100644 index 0000000..ffc259b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId151 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId170 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId170 new file mode 100644 index 0000000..5102105 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId170 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId397 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId397 new file mode 100644 index 0000000..b3e95b8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientPacketListenerMixin.class.uniqueId397 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId275 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId275 new file mode 100644 index 0000000..43d1802 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSableInterpolationState.class.uniqueId275 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId303 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId303 new file mode 100644 index 0000000..b01fd79 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevel.class.uniqueId303 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId105 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId105 new file mode 100644 index 0000000..a69438a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelContainer.class.uniqueId105 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId462 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId462 new file mode 100644 index 0000000..f0f1ed6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientSubLevelPunchHelper.class.uniqueId462 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId375 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId375 new file mode 100644 index 0000000..7798176 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeBoundsSubLevelPacket.class.uniqueId375 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId349 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId349 new file mode 100644 index 0000000..a8fbbc5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundChangeSubLevelNamePacket.class.uniqueId349 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId458 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId458 new file mode 100644 index 0000000..4b78f6d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundEnterGizmoPacket.class.uniqueId458 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId395 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId395 new file mode 100644 index 0000000..571a222 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFinalizeSubLevelPacket.class.uniqueId395 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId81 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId81 new file mode 100644 index 0000000..1bce3f8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFloatingBlockMaterialPacket.class.uniqueId81 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId365 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId365 new file mode 100644 index 0000000..d71d5bb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundFreezePlayerPacket.class.uniqueId365 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId327 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId327 new file mode 100644 index 0000000..63927b5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundPhysicsPropertyPacket.class.uniqueId327 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId289 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId289 new file mode 100644 index 0000000..fe69be8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundRecentlySplitSubLevelPacket.class.uniqueId289 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId417 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId417 new file mode 100644 index 0000000..7463ec8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket$Entry.class.uniqueId417 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId374 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId374 new file mode 100644 index 0000000..fb46973 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotDualPacket.class.uniqueId374 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId235 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId235 new file mode 100644 index 0000000..acbcfd1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableSnapshotInfoDualPacket.class.uniqueId235 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId127 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId127 new file mode 100644 index 0000000..586cd90 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundSableUDPActivationPacket.class.uniqueId127 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId339 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId339 new file mode 100644 index 0000000..efc2630 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStartTrackingSubLevelPacket.class.uniqueId339 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId145 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId145 new file mode 100644 index 0000000..0c1d1a9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopMovingSubLevelPacket.class.uniqueId145 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId225 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId225 new file mode 100644 index 0000000..e78149b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClientboundStopTrackingSubLevelPacket.class.uniqueId225 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId492 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId492 new file mode 100644 index 0000000..2253876 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextExtension.class.uniqueId492 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId382 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId382 new file mode 100644 index 0000000..9aab61f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ClipContextMixin.class.uniqueId382 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId88 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId88 new file mode 100644 index 0000000..9422bf6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CombatTrackerMixin.class.uniqueId88 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId332 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId332 new file mode 100644 index 0000000..2765e35 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CompassItemPropertyFunctionMixin.class.uniqueId332 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId42 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId42 new file mode 100644 index 0000000..03b41c7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$1.class.uniqueId42 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId60 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId60 new file mode 100644 index 0000000..471fe6b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin$2.class.uniqueId60 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId318 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId318 new file mode 100644 index 0000000..3464e9b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ConnectionMixin.class.uniqueId318 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionColliderMixin.class.uniqueId431 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionColliderMixin.class.uniqueId431 new file mode 100644 index 0000000..1a20d46 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionColliderMixin.class.uniqueId431 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionControlsRendererMixin.class.uniqueId27 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionControlsRendererMixin.class.uniqueId27 new file mode 100644 index 0000000..f8d54d9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionControlsRendererMixin.class.uniqueId27 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionHandlerClientMixin.class.uniqueId504 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionHandlerClientMixin.class.uniqueId504 new file mode 100644 index 0000000..74c308c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionHandlerClientMixin.class.uniqueId504 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionVisualMixin.class.uniqueId451 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionVisualMixin.class.uniqueId451 new file mode 100644 index 0000000..da32d9d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ContraptionVisualMixin.class.uniqueId451 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId211 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId211 new file mode 100644 index 0000000..a27af1c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CreatePluginMixin.class.uniqueId211 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelBlockMixin.class.uniqueId251 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelBlockMixin.class.uniqueId251 new file mode 100644 index 0000000..91662a8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelBlockMixin.class.uniqueId251 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelControllerBlockEntityMixin.class.uniqueId166 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelControllerBlockEntityMixin.class.uniqueId166 new file mode 100644 index 0000000..9a6ccdb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CrushingWheelControllerBlockEntityMixin.class.uniqueId166 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CurvedTrackDestroyPacketMixin.class.uniqueId429 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CurvedTrackDestroyPacketMixin.class.uniqueId429 new file mode 100644 index 0000000..7cd266d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/CurvedTrackDestroyPacketMixin.class.uniqueId429 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId424 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId424 new file mode 100644 index 0000000..f4dc87f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DataCommandsMixin.class.uniqueId424 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId13 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId13 new file mode 100644 index 0000000..ece10f6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugRendererMixin.class.uniqueId13 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId270 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId270 new file mode 100644 index 0000000..76fc258 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DebugScreenOverlayMixin.class.uniqueId270 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployToolMixin.class.uniqueId210 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployToolMixin.class.uniqueId210 new file mode 100644 index 0000000..bb6676e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployToolMixin.class.uniqueId210 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployerBlockEntityMixin.class.uniqueId248 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployerBlockEntityMixin.class.uniqueId248 new file mode 100644 index 0000000..2c2a136 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DeployerBlockEntityMixin.class.uniqueId248 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DepotRendererMixin.class.uniqueId110 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DepotRendererMixin.class.uniqueId110 new file mode 100644 index 0000000..1b26255 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DepotRendererMixin.class.uniqueId110 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId191 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId191 new file mode 100644 index 0000000..4a2067b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData$ReloadListener.class.uniqueId191 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId198 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId198 new file mode 100644 index 0000000..47dab9b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DimensionPhysicsData.class.uniqueId198 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DisplayLinkBlockEntityMixin.class.uniqueId181 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DisplayLinkBlockEntityMixin.class.uniqueId181 new file mode 100644 index 0000000..7b3a4d2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/DisplayLinkBlockEntityMixin.class.uniqueId181 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId388 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId388 new file mode 100644 index 0000000..ac4dcc5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EatBlockGoalMixin.class.uniqueId388 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EjectorBlockEntityMixin.class.uniqueId313 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EjectorBlockEntityMixin.class.uniqueId313 new file mode 100644 index 0000000..71bc9d4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EjectorBlockEntityMixin.class.uniqueId313 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ElevatorControlsHandlerMixin.class.uniqueId234 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ElevatorControlsHandlerMixin.class.uniqueId234 new file mode 100644 index 0000000..3dffe7b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ElevatorControlsHandlerMixin.class.uniqueId234 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId217 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId217 new file mode 100644 index 0000000..7628871 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbeddedPlotLevelAccessor.class.uniqueId217 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId480 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId480 new file mode 100644 index 0000000..10d06ce Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EmbyToolsMixin.class.uniqueId480 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EncasedFanBlockEntityMixin.class.uniqueId187 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EncasedFanBlockEntityMixin.class.uniqueId187 new file mode 100644 index 0000000..d3a7a49 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EncasedFanBlockEntityMixin.class.uniqueId187 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId481 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId481 new file mode 100644 index 0000000..a4edb9c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EnchantingTableBlockEntityMixin.class.uniqueId481 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId84 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId84 new file mode 100644 index 0000000..da0ecd3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityGetterMixin.class.uniqueId84 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityHatsMixin.class.uniqueId271 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityHatsMixin.class.uniqueId271 new file mode 100644 index 0000000..5626997 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityHatsMixin.class.uniqueId271 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId103 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId103 new file mode 100644 index 0000000..ae3c9f2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId103 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId115 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId115 new file mode 100644 index 0000000..9e9f30a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId115 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId17 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId17 new file mode 100644 index 0000000..e0de73a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId17 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId273 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId273 new file mode 100644 index 0000000..71165e6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId273 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 new file mode 100644 index 0000000..3b762d2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId305 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId334 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId334 new file mode 100644 index 0000000..ddda16c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId334 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId354 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId354 new file mode 100644 index 0000000..0f1ce56 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId354 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId357 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId357 new file mode 100644 index 0000000..0c410b5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId357 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId358 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId358 new file mode 100644 index 0000000..006c1e2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId358 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 new file mode 100644 index 0000000..d7e0b8b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId40 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId465 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId465 new file mode 100644 index 0000000..9a6bde4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId465 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId506 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId506 new file mode 100644 index 0000000..e2cbb85 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMixin.class.uniqueId506 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId499 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId499 new file mode 100644 index 0000000..3a90159 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityMovementExtension.class.uniqueId499 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId16 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId16 new file mode 100644 index 0000000..5468e05 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId16 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId194 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId194 new file mode 100644 index 0000000..f5b3063 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRenderDispatcherMixin.class.uniqueId194 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId276 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId276 new file mode 100644 index 0000000..8c6a7a7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId276 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId316 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId316 new file mode 100644 index 0000000..ad52e80 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId316 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 new file mode 100644 index 0000000..eeeee5f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRendererMixin.class.uniqueId353 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId294 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId294 new file mode 100644 index 0000000..f77dffa Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityRidingSubLevelVehicleHelper.class.uniqueId294 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId405 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId405 new file mode 100644 index 0000000..f950981 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper$Type.class.uniqueId405 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId216 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId216 new file mode 100644 index 0000000..d7e7171 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelRotationHelper.class.uniqueId216 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId78 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId78 new file mode 100644 index 0000000..16b1bc5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntitySubLevelUtil.class.uniqueId78 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId330 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId330 new file mode 100644 index 0000000..0372313 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EntityTypeMixin.class.uniqueId330 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId71 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId71 new file mode 100644 index 0000000..9c6ab6c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/EuclideanGameEventListenerRegistryMixin.class.uniqueId71 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId407 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId407 new file mode 100644 index 0000000..ed7641c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExecuteCommandMixin.class.uniqueId407 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId159 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId159 new file mode 100644 index 0000000..bd472ba Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ExplosionMixin.class.uniqueId159 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FactoryPanelConnectionHandlerMixin.class.uniqueId99 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FactoryPanelConnectionHandlerMixin.class.uniqueId99 new file mode 100644 index 0000000..553fa6f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FactoryPanelConnectionHandlerMixin.class.uniqueId99 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId428 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId428 new file mode 100644 index 0000000..ab03447 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FallingBlockEntityMixin.class.uniqueId428 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FanProcessingTypeMixin.class.uniqueId344 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FanProcessingTypeMixin.class.uniqueId344 new file mode 100644 index 0000000..d1b9827 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FanProcessingTypeMixin.class.uniqueId344 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId25 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId25 new file mode 100644 index 0000000..392731b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelCommandBuilder.class.uniqueId25 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId406 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId406 new file mode 100644 index 0000000..d2163e1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelOcclusionData.class.uniqueId406 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId53 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId53 new file mode 100644 index 0000000..61e06ff Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderData.class.uniqueId53 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId157 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId157 new file mode 100644 index 0000000..9a2e388 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelRenderDispatcher.class.uniqueId157 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId66 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId66 new file mode 100644 index 0000000..ed75cee Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelShaderProcessor.class.uniqueId66 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId207 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId207 new file mode 100644 index 0000000..24e2551 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler$Task.class.uniqueId207 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId302 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId302 new file mode 100644 index 0000000..174b205 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FancySubLevelTaskScheduler.class.uniqueId302 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FilteringRendererMixin.class.uniqueId245 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FilteringRendererMixin.class.uniqueId245 new file mode 100644 index 0000000..7dd27ad Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FilteringRendererMixin.class.uniqueId245 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId487 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId487 new file mode 100644 index 0000000..a12a5ea Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlameParticleMixin.class.uniqueId487 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId64 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId64 new file mode 100644 index 0000000..3e4d2de Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockCluster.class.uniqueId64 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId10 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId10 new file mode 100644 index 0000000..8a680fd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockController.class.uniqueId10 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId255 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId255 new file mode 100644 index 0000000..b174793 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockData.class.uniqueId255 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId360 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId360 new file mode 100644 index 0000000..24e8b4b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler$ReloadListener.class.uniqueId360 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId98 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId98 new file mode 100644 index 0000000..00e5d31 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingBlockMaterialDataHandler.class.uniqueId98 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId243 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId243 new file mode 100644 index 0000000..3edaf9b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FloatingClusterContainer.class.uniqueId243 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId83 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId83 new file mode 100644 index 0000000..cdbd2fa Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlowingFluidMixin.class.uniqueId83 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId82 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId82 new file mode 100644 index 0000000..d69dc47 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlyNodeEvaluatorMixin.class.uniqueId82 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge$SubLevelFlwRenderState.class.uniqueId259 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge$SubLevelFlwRenderState.class.uniqueId259 new file mode 100644 index 0000000..839688b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge$SubLevelFlwRenderState.class.uniqueId259 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge.class.uniqueId236 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge.class.uniqueId236 new file mode 100644 index 0000000..413bbba Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FlywheelCompatNeoForge.class.uniqueId236 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId139 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId139 new file mode 100644 index 0000000..2708f24 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceGroups.class.uniqueId139 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId232 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId232 new file mode 100644 index 0000000..f6b04a6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForceTotal.class.uniqueId232 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePostPhysicsTickEvent.class.uniqueId315 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePostPhysicsTickEvent.class.uniqueId315 new file mode 100644 index 0000000..1a7f779 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePostPhysicsTickEvent.class.uniqueId315 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePrePhysicsTickEvent.class.uniqueId466 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePrePhysicsTickEvent.class.uniqueId466 new file mode 100644 index 0000000..84337fa Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSablePrePhysicsTickEvent.class.uniqueId466 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSableSubLevelContainerReadyEvent.class.uniqueId237 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSableSubLevelContainerReadyEvent.class.uniqueId237 new file mode 100644 index 0000000..b65c69f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ForgeSableSubLevelContainerReadyEvent.class.uniqueId237 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId376 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId376 new file mode 100644 index 0000000..1a00fde Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FragileBlockCallback.class.uniqueId376 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportBlockMixin.class.uniqueId241 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportBlockMixin.class.uniqueId241 new file mode 100644 index 0000000..d758e14 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportBlockMixin.class.uniqueId241 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportMixinHelper.class.uniqueId420 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportMixinHelper.class.uniqueId420 new file mode 100644 index 0000000..ce81b71 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FrogportMixinHelper.class.uniqueId420 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FunnelBlockMixin.class.uniqueId111 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FunnelBlockMixin.class.uniqueId111 new file mode 100644 index 0000000..22030f0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/FunnelBlockMixin.class.uniqueId111 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId503 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId503 new file mode 100644 index 0000000..f0ff301 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameEventDispatcherMixin.class.uniqueId503 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId224 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId224 new file mode 100644 index 0000000..b2cf10a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId224 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 new file mode 100644 index 0000000..f3b24de Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId244 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId4 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId4 new file mode 100644 index 0000000..ccc9cf7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameRendererMixin.class.uniqueId4 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId284 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId284 new file mode 100644 index 0000000..0ca72e9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GameTestInfoMixin.class.uniqueId284 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GhostBlockValueBoxMixin.class.uniqueId372 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GhostBlockValueBoxMixin.class.uniqueId372 new file mode 100644 index 0000000..2ef9a2c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GhostBlockValueBoxMixin.class.uniqueId372 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId453 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId453 new file mode 100644 index 0000000..b86f8a4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GizmoScreen.class.uniqueId453 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId333 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId333 new file mode 100644 index 0000000..539603e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GroundPathNavigationMixin.class.uniqueId333 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId140 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId140 new file mode 100644 index 0000000..46442b3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/GuiMixin.class.uniqueId140 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterBlockEntityMixin.class.uniqueId209 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterBlockEntityMixin.class.uniqueId209 new file mode 100644 index 0000000..f553944 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterBlockEntityMixin.class.uniqueId209 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterMovementBehaviourMixin.class.uniqueId385 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterMovementBehaviourMixin.class.uniqueId385 new file mode 100644 index 0000000..2e4fa51 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HarvesterMovementBehaviourMixin.class.uniqueId385 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyBlockEntityMixin.class.uniqueId379 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyBlockEntityMixin.class.uniqueId379 new file mode 100644 index 0000000..513939e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyBlockEntityMixin.class.uniqueId379 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyFluidHandlerMixin.class.uniqueId76 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyFluidHandlerMixin.class.uniqueId76 new file mode 100644 index 0000000..2bf78ef Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/HosePulleyFluidHandlerMixin.class.uniqueId76 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId256 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId256 new file mode 100644 index 0000000..293bae3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/IntegratedServerMixin.class.uniqueId256 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId167 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId167 new file mode 100644 index 0000000..35e0f32 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ItemEntityMixin.class.uniqueId167 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId68 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId68 new file mode 100644 index 0000000..b57b723 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/KinematicContraption.class.uniqueId68 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId146 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId146 new file mode 100644 index 0000000..1e2cfd6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LODMixin.class.uniqueId146 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId312 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId312 new file mode 100644 index 0000000..e6ba0e6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LeashableMixin.class.uniqueId312 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LecternControllerBlockEntityMixin.class.uniqueId92 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LecternControllerBlockEntityMixin.class.uniqueId92 new file mode 100644 index 0000000..8f70caf Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LecternControllerBlockEntityMixin.class.uniqueId92 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId212 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId212 new file mode 100644 index 0000000..ba56ae6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId212 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId425 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId425 new file mode 100644 index 0000000..143bd5b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelChunkMixin.class.uniqueId425 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId48 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId48 new file mode 100644 index 0000000..b5e2956 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPlot.class.uniqueId48 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId422 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId422 new file mode 100644 index 0000000..b89a4f9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelPoseProviderExtension.class.uniqueId422 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId180 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId180 new file mode 100644 index 0000000..93be524 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRenderMixin.class.uniqueId180 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId0 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId0 new file mode 100644 index 0000000..3c9d6ba Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId0 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId160 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId160 new file mode 100644 index 0000000..f20c00c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId160 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId183 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId183 new file mode 100644 index 0000000..561b5ab Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId183 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId231 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId231 new file mode 100644 index 0000000..9055e5f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId231 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId252 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId252 new file mode 100644 index 0000000..b590fe6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId252 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId264 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId264 new file mode 100644 index 0000000..b3ab5e4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId264 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId300 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId300 new file mode 100644 index 0000000..81d0b3d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId300 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId467 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId467 new file mode 100644 index 0000000..505218f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId467 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId486 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId486 new file mode 100644 index 0000000..b3d197b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId486 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId80 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId80 new file mode 100644 index 0000000..c8c94e3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelRendererMixin.class.uniqueId80 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId120 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId120 new file mode 100644 index 0000000..ae91fb9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LevelsMixin.class.uniqueId120 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LineOutlineMixin.class.uniqueId283 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LineOutlineMixin.class.uniqueId283 new file mode 100644 index 0000000..9ede09a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LineOutlineMixin.class.uniqueId283 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LinkRendererMixin.class.uniqueId246 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LinkRendererMixin.class.uniqueId246 new file mode 100644 index 0000000..03bf124 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LinkRendererMixin.class.uniqueId246 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId113 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId113 new file mode 100644 index 0000000..e90c83c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId113 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId239 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId239 new file mode 100644 index 0000000..9edc333 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId239 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId247 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId247 new file mode 100644 index 0000000..3a2c8e4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId247 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId26 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId26 new file mode 100644 index 0000000..57f7aeb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId26 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId262 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId262 new file mode 100644 index 0000000..5f9d9ff Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId262 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId484 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId484 new file mode 100644 index 0000000..3a920bd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityMixin.class.uniqueId484 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId2 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId2 new file mode 100644 index 0000000..0f5fc7b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LivingEntityRendererMixin.class.uniqueId2 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId107 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId107 new file mode 100644 index 0000000..030ddd8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId107 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId148 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId148 new file mode 100644 index 0000000..bf66164 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId148 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId280 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId280 new file mode 100644 index 0000000..c06116c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId280 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId9 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId9 new file mode 100644 index 0000000..b3b702a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/LocalPlayerMixin.class.uniqueId9 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId257 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId257 new file mode 100644 index 0000000..bbd1bf2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker$1.class.uniqueId257 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId445 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId445 new file mode 100644 index 0000000..8a11036 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MassTracker.class.uniqueId445 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmBlockEntity.class.uniqueId49 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmBlockEntity.class.uniqueId49 new file mode 100644 index 0000000..d273283 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmBlockEntity.class.uniqueId49 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmSublevelFailure.class.uniqueId488 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmSublevelFailure.class.uniqueId488 new file mode 100644 index 0000000..1dd04e4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MechanicalArmSublevelFailure.class.uniqueId488 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId44 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId44 new file mode 100644 index 0000000..fe60960 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MergedMassTracker.class.uniqueId44 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId299 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId299 new file mode 100644 index 0000000..91ae4e7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId299 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId489 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId489 new file mode 100644 index 0000000..fb0eb91 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MinecraftMixin.class.uniqueId489 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId471 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId471 new file mode 100644 index 0000000..7e882e4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MouseHandlerMixin.class.uniqueId471 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId51 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId51 new file mode 100644 index 0000000..21ffc01 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegate.class.uniqueId51 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId433 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId433 new file mode 100644 index 0000000..82aae86 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/MovingSoundInstanceDelegateMixin.class.uniqueId433 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId142 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId142 new file mode 100644 index 0000000..6f70d53 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NetherPortalBlockMixin.class.uniqueId142 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleBEFixesMixin.class.uniqueId396 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleBEFixesMixin.class.uniqueId396 new file mode 100644 index 0000000..3af7219 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleBEFixesMixin.class.uniqueId396 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringHelper.class.uniqueId56 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringHelper.class.uniqueId56 new file mode 100644 index 0000000..306508f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringHelper.class.uniqueId56 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringMixin.class.uniqueId35 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringMixin.class.uniqueId35 new file mode 100644 index 0000000..3e9c095 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/NozzleHoveringMixin.class.uniqueId35 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId230 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId230 new file mode 100644 index 0000000..b92da3d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OcclusionCullerExtension.class.uniqueId230 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OpenEndedPipeMixin.class.uniqueId355 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OpenEndedPipeMixin.class.uniqueId355 new file mode 100644 index 0000000..90a4d92 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/OpenEndedPipeMixin.class.uniqueId355 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PMWeatherMixin.class.uniqueId79 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PMWeatherMixin.class.uniqueId79 new file mode 100644 index 0000000..4e4e92c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PMWeatherMixin.class.uniqueId79 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortPlacementPacketMixin.class.uniqueId285 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortPlacementPacketMixin.class.uniqueId285 new file mode 100644 index 0000000..3ec2db9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortPlacementPacketMixin.class.uniqueId285 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetMixin.class.uniqueId18 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetMixin.class.uniqueId18 new file mode 100644 index 0000000..4411c7f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetMixin.class.uniqueId18 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetSelectionHandlerMixin.class.uniqueId19 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetSelectionHandlerMixin.class.uniqueId19 new file mode 100644 index 0000000..963ccb6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PackagePortTargetSelectionHandlerMixin.class.uniqueId19 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId91 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId91 new file mode 100644 index 0000000..78518da Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleEngineMixin.class.uniqueId91 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId500 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId500 new file mode 100644 index 0000000..a7274ae Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleExtension.class.uniqueId500 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId133 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId133 new file mode 100644 index 0000000..535056a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ParticleMixin.class.uniqueId133 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId404 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId404 new file mode 100644 index 0000000..ee60598 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathMixin.class.uniqueId404 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId341 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId341 new file mode 100644 index 0000000..8948721 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathNavigationMixin.class.uniqueId341 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId419 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId419 new file mode 100644 index 0000000..3a06244 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PathfindingContextMixin.class.uniqueId419 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId364 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId364 new file mode 100644 index 0000000..6321ec9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PersistentEntitySectionManagerMixin.class.uniqueId364 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId250 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId250 new file mode 100644 index 0000000..182b0a6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertiesDefinitionLoader.class.uniqueId250 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId468 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId468 new file mode 100644 index 0000000..7bca8ad Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes$PhysicsBlockPropertyType.class.uniqueId468 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId132 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId132 new file mode 100644 index 0000000..0a5d15a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsBlockPropertyTypes.class.uniqueId132 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId24 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId24 new file mode 100644 index 0000000..b6d5041 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicket.class.uniqueId24 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId343 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId343 new file mode 100644 index 0000000..1aea460 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsChunkTicketManager.class.uniqueId343 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId346 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId346 new file mode 100644 index 0000000..e3ae7b6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsPipeline.class.uniqueId346 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsTest.class.uniqueId409 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsTest.class.uniqueId409 new file mode 100644 index 0000000..c7c6b05 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PhysicsTest.class.uniqueId409 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PipeConnectionMixin.class.uniqueId356 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PipeConnectionMixin.class.uniqueId356 new file mode 100644 index 0000000..f4f4ed1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PipeConnectionMixin.class.uniqueId356 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlacementClientMixin.class.uniqueId384 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlacementClientMixin.class.uniqueId384 new file mode 100644 index 0000000..0e7a514 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlacementClientMixin.class.uniqueId384 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId195 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId195 new file mode 100644 index 0000000..8f21eb6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId195 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId392 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId392 new file mode 100644 index 0000000..2f64bd4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId392 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId447 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId447 new file mode 100644 index 0000000..6267b0f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerListMixin.class.uniqueId447 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId125 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId125 new file mode 100644 index 0000000..b625381 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId125 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId164 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId164 new file mode 100644 index 0000000..8fc3ad0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId164 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId265 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId265 new file mode 100644 index 0000000..332ff89 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId265 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId505 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId505 new file mode 100644 index 0000000..266b780 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PlayerMixin.class.uniqueId505 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId22 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId22 new file mode 100644 index 0000000..135f942 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/PrimedTntMixin.class.uniqueId22 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId321 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId321 new file mode 100644 index 0000000..e613fbe Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileDispenseBehaviorMixin.class.uniqueId321 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId128 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId128 new file mode 100644 index 0000000..5bbd256 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileMixin.class.uniqueId128 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId331 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId331 new file mode 100644 index 0000000..ff970f8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ProjectileUtilMixin.class.uniqueId331 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId158 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId158 new file mode 100644 index 0000000..7fed6d3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup$PointForce.class.uniqueId158 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId493 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId493 new file mode 100644 index 0000000..740d0a7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/QueuedForceGroup.class.uniqueId493 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RadarRendererMixin.class.uniqueId55 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RadarRendererMixin.class.uniqueId55 new file mode 100644 index 0000000..7fa1c55 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RadarRendererMixin.class.uniqueId55 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId402 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId402 new file mode 100644 index 0000000..f05404a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RandomPosMixin.class.uniqueId402 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId156 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId156 new file mode 100644 index 0000000..bcb0219 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Rapier3D.class.uniqueId156 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId336 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId336 new file mode 100644 index 0000000..15e3f0e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFixedConstraintHandle.class.uniqueId336 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId421 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId421 new file mode 100644 index 0000000..5560a72 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierFreeConstraintHandle.class.uniqueId421 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId427 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId427 new file mode 100644 index 0000000..3bbb603 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierGenericConstraintHandle.class.uniqueId427 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId368 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId368 new file mode 100644 index 0000000..06661b0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$1UploadingContraptionChunk.class.uniqueId368 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId144 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId144 new file mode 100644 index 0000000..a72f33f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline$TrackedKinematicContraption.class.uniqueId144 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId69 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId69 new file mode 100644 index 0000000..a90c6f2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierPhysicsPipeline.class.uniqueId69 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId57 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId57 new file mode 100644 index 0000000..5269775 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRopeHandle.class.uniqueId57 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId267 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId267 new file mode 100644 index 0000000..499c750 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RapierRotaryConstraintHandle.class.uniqueId267 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId46 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId46 new file mode 100644 index 0000000..a0937d2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RayTracingMixin.class.uniqueId46 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RaycastHelperMixin.class.uniqueId307 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RaycastHelperMixin.class.uniqueId307 new file mode 100644 index 0000000..e5399e2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RaycastHelperMixin.class.uniqueId307 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId165 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId165 new file mode 100644 index 0000000..492a18c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReachAroundSubLevelRenderDispatcher.class.uniqueId165 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId412 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId412 new file mode 100644 index 0000000..8a72a0f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ReactionWheelManager.class.uniqueId412 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneContactBlockEntity.class.uniqueId413 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneContactBlockEntity.class.uniqueId413 new file mode 100644 index 0000000..e827cda Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneContactBlockEntity.class.uniqueId413 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneLinkNetworkHandlerMixin.class.uniqueId147 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneLinkNetworkHandlerMixin.class.uniqueId147 new file mode 100644 index 0000000..e5083c3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RedstoneLinkNetworkHandlerMixin.class.uniqueId147 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId338 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId338 new file mode 100644 index 0000000..9806e46 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderChunkRegionMixin.class.uniqueId338 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderDispatcherImplMixin.class.uniqueId263 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderDispatcherImplMixin.class.uniqueId263 new file mode 100644 index 0000000..16afb5d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderDispatcherImplMixin.class.uniqueId263 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId130 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId130 new file mode 100644 index 0000000..f30d346 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RenderSectionMixin.class.uniqueId130 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId301 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId301 new file mode 100644 index 0000000..d93ca0b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RigidBodyHandle.class.uniqueId301 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId15 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId15 new file mode 100644 index 0000000..809312a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle$AttachmentPoint.class.uniqueId15 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId219 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId219 new file mode 100644 index 0000000..0ebab48 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopeHandle.class.uniqueId219 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId112 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId112 new file mode 100644 index 0000000..f9dcc86 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/RopePhysicsObject.class.uniqueId112 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId59 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId59 new file mode 100644 index 0000000..63b98bc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/Sable.class.uniqueId59 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId186 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId186 new file mode 100644 index 0000000..ee03a6e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands$1.class.uniqueId186 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId306 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId306 new file mode 100644 index 0000000..8a2a087 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableAssembleCommands.class.uniqueId306 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId454 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId454 new file mode 100644 index 0000000..de53b22 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientConfig.class.uniqueId454 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId63 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId63 new file mode 100644 index 0000000..2f1ca99 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientGizmoHandler.class.uniqueId63 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId439 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId439 new file mode 100644 index 0000000..289d9bc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableClientNetworkEventLoop.class.uniqueId439 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId126 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId126 new file mode 100644 index 0000000..cf472a7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommand.class.uniqueId126 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId304 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId304 new file mode 100644 index 0000000..f748195 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommandHelper.class.uniqueId304 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId206 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId206 new file mode 100644 index 0000000..4640ad7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableCommonEvents.class.uniqueId206 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId394 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId394 new file mode 100644 index 0000000..7a4c751 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableConfigCommands.class.uniqueId394 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId507 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId507 new file mode 100644 index 0000000..2499276 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatform.class.uniqueId507 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId149 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId149 new file mode 100644 index 0000000..e54ba26 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPlatformImpl.class.uniqueId149 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId93 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId93 new file mode 100644 index 0000000..1dccd2b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatform.class.uniqueId93 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId185 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId185 new file mode 100644 index 0000000..b8c4386 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableEventPublishPlatformImpl.class.uniqueId185 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage$DebugVisual.class.uniqueId400 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage$DebugVisual.class.uniqueId400 new file mode 100644 index 0000000..d24a06d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage$DebugVisual.class.uniqueId400 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage.class.uniqueId171 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage.class.uniqueId171 new file mode 100644 index 0000000..ebcfba8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableFlywheelLightStorage.class.uniqueId171 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId370 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId370 new file mode 100644 index 0000000..94a066d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableJointCommands.class.uniqueId370 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId238 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId238 new file mode 100644 index 0000000..539578a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils$GridQuats.class.uniqueId238 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId461 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId461 new file mode 100644 index 0000000..ecb26dd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableMathUtils.class.uniqueId461 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForge.class.uniqueId416 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForge.class.uniqueId416 new file mode 100644 index 0000000..50617f1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForge.class.uniqueId416 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForgeClient.class.uniqueId121 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForgeClient.class.uniqueId121 new file mode 100644 index 0000000..d363a9b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableNeoForgeClient.class.uniqueId121 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId178 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId178 new file mode 100644 index 0000000..26ef057 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePhysicsCommands.class.uniqueId178 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId495 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId495 new file mode 100644 index 0000000..ebcb29e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePostPhysicsTickEvent.class.uniqueId495 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId314 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId314 new file mode 100644 index 0000000..59f8d04 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SablePrePhysicsTickEvent.class.uniqueId314 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableRaycastHelper.class.uniqueId67 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableRaycastHelper.class.uniqueId67 new file mode 100644 index 0000000..d69dd5e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableRaycastHelper.class.uniqueId67 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId70 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId70 new file mode 100644 index 0000000..ecef188 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSkyLightShadows.class.uniqueId70 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId226 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId226 new file mode 100644 index 0000000..5671fb1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands$NamedSpawnInvoker.class.uniqueId226 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId173 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId173 new file mode 100644 index 0000000..427ab99 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSpawnCommands.class.uniqueId173 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId469 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId469 new file mode 100644 index 0000000..9bd2806 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableStorageCommands.class.uniqueId469 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId474 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId474 new file mode 100644 index 0000000..04973ca Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelCommands.class.uniqueId474 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId123 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId123 new file mode 100644 index 0000000..c148692 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelContainerReadyEvent.class.uniqueId123 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelRenderPlatformImpl.class.uniqueId295 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelRenderPlatformImpl.class.uniqueId295 new file mode 100644 index 0000000..0f7c70d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableSubLevelRenderPlatformImpl.class.uniqueId295 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId457 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId457 new file mode 100644 index 0000000..6701ce6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTCPPackets.class.uniqueId457 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId12 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId12 new file mode 100644 index 0000000..ab899b6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTags.class.uniqueId12 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper$1.class.uniqueId472 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper$1.class.uniqueId472 new file mode 100644 index 0000000..9ff220a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper$1.class.uniqueId472 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper.class.uniqueId441 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper.class.uniqueId441 new file mode 100644 index 0000000..eda9915 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableTestHelper.class.uniqueId441 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId430 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId430 new file mode 100644 index 0000000..9b00a70 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableToastableServer.class.uniqueId430 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId75 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId75 new file mode 100644 index 0000000..fdf9470 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerClient.class.uniqueId75 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId371 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId371 new file mode 100644 index 0000000..5655a86 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPChannelHandlerServer.class.uniqueId371 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId90 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId90 new file mode 100644 index 0000000..6d27dd8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPPacketDecoder.class.uniqueId90 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId37 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId37 new file mode 100644 index 0000000..bbfca7a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SableUDPServer.class.uniqueId37 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SafeBlockEntityRendererMixin.class.uniqueId377 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SafeBlockEntityRendererMixin.class.uniqueId377 new file mode 100644 index 0000000..0e36e7a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SafeBlockEntityRendererMixin.class.uniqueId377 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SailBlockMixin.class.uniqueId476 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SailBlockMixin.class.uniqueId476 new file mode 100644 index 0000000..241217e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SailBlockMixin.class.uniqueId476 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawBlockEntityMixin.class.uniqueId38 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawBlockEntityMixin.class.uniqueId38 new file mode 100644 index 0000000..18b9779 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawBlockEntityMixin.class.uniqueId38 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawMovementBehaviourMixin.class.uniqueId33 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawMovementBehaviourMixin.class.uniqueId33 new file mode 100644 index 0000000..21793ca Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SawMovementBehaviourMixin.class.uniqueId33 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicAndQuillHandlerMixin.class.uniqueId199 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicAndQuillHandlerMixin.class.uniqueId199 new file mode 100644 index 0000000..c5ec245 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicAndQuillHandlerMixin.class.uniqueId199 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicExportMixin.class.uniqueId106 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicExportMixin.class.uniqueId106 new file mode 100644 index 0000000..f325878 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicExportMixin.class.uniqueId106 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicPlacePacketMixin.class.uniqueId228 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicPlacePacketMixin.class.uniqueId228 new file mode 100644 index 0000000..d2ad9ae Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicPlacePacketMixin.class.uniqueId228 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicToolBaseMixin.class.uniqueId498 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicToolBaseMixin.class.uniqueId498 new file mode 100644 index 0000000..5fac5db Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicToolBaseMixin.class.uniqueId498 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicTransformMixin.class.uniqueId205 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicTransformMixin.class.uniqueId205 new file mode 100644 index 0000000..fb05c58 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SchematicTransformMixin.class.uniqueId205 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId386 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId386 new file mode 100644 index 0000000..be73961 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SectionCompilerMixin.class.uniqueId386 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId21 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId21 new file mode 100644 index 0000000..32c142f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerChunkCacheMixin.class.uniqueId21 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId192 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId192 new file mode 100644 index 0000000..26132b1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$1.class.uniqueId192 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId32 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId32 new file mode 100644 index 0000000..5e8bda2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin$2.class.uniqueId32 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId73 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId73 new file mode 100644 index 0000000..7a69219 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerConnectionListenerMixin.class.uniqueId73 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId114 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId114 new file mode 100644 index 0000000..906bc5a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId114 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId290 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId290 new file mode 100644 index 0000000..7e9ba80 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerEntityMixin.class.uniqueId290 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId95 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId95 new file mode 100644 index 0000000..365a930 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerGamePacketListenerImplMixin.class.uniqueId95 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId363 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId363 new file mode 100644 index 0000000..2d96d21 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId363 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId380 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId380 new file mode 100644 index 0000000..a1eab79 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId380 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId387 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId387 new file mode 100644 index 0000000..d7fce6b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId387 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId426 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId426 new file mode 100644 index 0000000..c46340c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId426 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId47 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId47 new file mode 100644 index 0000000..c5118a8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelMixin.class.uniqueId47 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId131 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId131 new file mode 100644 index 0000000..5af44e5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerLevelPlot.class.uniqueId131 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId109 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId109 new file mode 100644 index 0000000..446ba11 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId109 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId20 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId20 new file mode 100644 index 0000000..d5e35f8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId20 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId208 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId208 new file mode 100644 index 0000000..6313253 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId208 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId282 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId282 new file mode 100644 index 0000000..5cb769e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId282 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId292 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId292 new file mode 100644 index 0000000..63af094 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId292 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId418 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId418 new file mode 100644 index 0000000..cee33fa Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId418 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId508 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId508 new file mode 100644 index 0000000..312294b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerPlayerMixin.class.uniqueId508 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId101 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId101 new file mode 100644 index 0000000..e6b100b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevel.class.uniqueId101 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId272 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId272 new file mode 100644 index 0000000..5710c4f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerSubLevelContainer.class.uniqueId272 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId218 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId218 new file mode 100644 index 0000000..405a129 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundGizmoMoveSubLevelPacket.class.uniqueId218 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId122 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId122 new file mode 100644 index 0000000..254f287 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundMovePlayerPacketMixin.class.uniqueId122 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId28 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId28 new file mode 100644 index 0000000..1865f3a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ServerboundPunchSubLevelPacket.class.uniqueId28 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId391 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId391 new file mode 100644 index 0000000..537ebaa Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SignBlockEntityMixin.class.uniqueId391 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId163 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId163 new file mode 100644 index 0000000..1f45824 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SimpleCulledRenderRegion.class.uniqueId163 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SmartBlockEntityRendererMixin.class.uniqueId399 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SmartBlockEntityRendererMixin.class.uniqueId399 new file mode 100644 index 0000000..aa266a6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SmartBlockEntityRendererMixin.class.uniqueId399 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId446 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId446 new file mode 100644 index 0000000..fdc8ca4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderData.class.uniqueId446 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId43 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId43 new file mode 100644 index 0000000..cf15471 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumSubLevelRenderDispatcher.class.uniqueId43 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId1 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId1 new file mode 100644 index 0000000..ecdabb7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererExtension.class.uniqueId1 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId490 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId490 new file mode 100644 index 0000000..a6bdb23 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SodiumWorldRendererMixin.class.uniqueId490 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId100 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId100 new file mode 100644 index 0000000..46a679c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundEngineMixin.class.uniqueId100 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId260 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId260 new file mode 100644 index 0000000..92255ff Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SoundInstanceDelegated.class.uniqueId260 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId328 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId328 new file mode 100644 index 0000000..502fc96 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StaticPhysicsPipeline.class.uniqueId328 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StickerBlockEntityMixin.class.uniqueId291 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StickerBlockEntityMixin.class.uniqueId291 new file mode 100644 index 0000000..e6351af Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StickerBlockEntityMixin.class.uniqueId291 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StockTickerInteractionHandlerMixin.class.uniqueId14 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StockTickerInteractionHandlerMixin.class.uniqueId14 new file mode 100644 index 0000000..25a2e9f Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StockTickerInteractionHandlerMixin.class.uniqueId14 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureTemplateMixin.class.uniqueId297 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureTemplateMixin.class.uniqueId297 new file mode 100644 index 0000000..b26d47b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureTemplateMixin.class.uniqueId297 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId135 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId135 new file mode 100644 index 0000000..909752d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/StructureUtilsMixin.class.uniqueId135 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId325 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId325 new file mode 100644 index 0000000..b5ca531 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevel.class.uniqueId325 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId161 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId161 new file mode 100644 index 0000000..a143b9c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info$Template.class.uniqueId161 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId381 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId381 new file mode 100644 index 0000000..6b17c13 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType$Info.class.uniqueId381 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId390 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId390 new file mode 100644 index 0000000..64431e2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelArgumentType.class.uniqueId390 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId119 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId119 new file mode 100644 index 0000000..dfe3634 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$AssemblyTransform.class.uniqueId119 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId61 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId61 new file mode 100644 index 0000000..bc557e1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$FrontierPredicate.class.uniqueId61 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId220 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId220 new file mode 100644 index 0000000..c7eefd9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult$State.class.uniqueId220 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId39 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId39 new file mode 100644 index 0000000..0852fab Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper$GatherResult.class.uniqueId39 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId411 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId411 new file mode 100644 index 0000000..0e0fe7a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelAssemblyHelper.class.uniqueId411 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelBlockBreakingUtility.class.uniqueId410 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelBlockBreakingUtility.class.uniqueId410 new file mode 100644 index 0000000..226fa46 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelBlockBreakingUtility.class.uniqueId410 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId442 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId442 new file mode 100644 index 0000000..41c589b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainer.class.uniqueId442 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId496 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId496 new file mode 100644 index 0000000..61ce396 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerHolder.class.uniqueId496 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId150 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId150 new file mode 100644 index 0000000..46fce10 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelContainerInspector.class.uniqueId150 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId502 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId502 new file mode 100644 index 0000000..7e206c3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor$1.class.uniqueId502 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId477 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId477 new file mode 100644 index 0000000..cee8361 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDataAccessor.class.uniqueId477 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId459 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId459 new file mode 100644 index 0000000..e69eb6c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$DoublePredicate.class.uniqueId459 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId403 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId403 new file mode 100644 index 0000000..95db98e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter$Factory.class.uniqueId403 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId443 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId443 new file mode 100644 index 0000000..7784aca Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleFilter.class.uniqueId443 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId266 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId266 new file mode 100644 index 0000000..7213c26 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$DoubleGetter.class.uniqueId266 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId221 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId221 new file mode 100644 index 0000000..0fb43b3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter$Factory.class.uniqueId221 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId432 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId432 new file mode 100644 index 0000000..47f0277 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelDoubleRangeFilter.class.uniqueId432 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId323 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId323 new file mode 100644 index 0000000..921b78c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$CollisionInfo.class.uniqueId323 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId196 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId196 new file mode 100644 index 0000000..36d7821 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision$FirstCollisionInfo.class.uniqueId196 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId277 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId277 new file mode 100644 index 0000000..e775572 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityCollision.class.uniqueId277 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId41 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId41 new file mode 100644 index 0000000..6358e29 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer$1.class.uniqueId41 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId118 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId118 new file mode 100644 index 0000000..09fba8e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelEntityShadowRenderer.class.uniqueId118 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId136 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId136 new file mode 100644 index 0000000..291fe48 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager$SplitListener.class.uniqueId136 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId470 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId470 new file mode 100644 index 0000000..ffe0ed0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHeatMapManager.class.uniqueId470 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId152 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId152 new file mode 100644 index 0000000..ca60de2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper$EntityRot.class.uniqueId152 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId175 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId175 new file mode 100644 index 0000000..5293dfb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHelper.class.uniqueId175 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId342 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId342 new file mode 100644 index 0000000..41d4174 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunk.class.uniqueId342 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId482 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId482 new file mode 100644 index 0000000..69e65dd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelHoldingChunkMap.class.uniqueId482 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId85 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId85 new file mode 100644 index 0000000..91269d2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelInclusiveLevelEntityGetter.class.uniqueId85 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId169 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId169 new file mode 100644 index 0000000..d3a2923 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelLimitFilter.class.uniqueId169 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId162 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId162 new file mode 100644 index 0000000..dd32531 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelNameFilter.class.uniqueId162 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId203 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId203 new file mode 100644 index 0000000..8a1b7b9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelObserver.class.uniqueId203 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId366 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId366 new file mode 100644 index 0000000..af7bf2d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelOccupancySavedData.class.uniqueId366 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId310 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId310 new file mode 100644 index 0000000..50bb4e0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelPhysicsSystem.class.uniqueId310 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId233 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId233 new file mode 100644 index 0000000..1a27d65 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRegionFile.class.uniqueId233 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId309 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId309 new file mode 100644 index 0000000..fa0252b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderData.class.uniqueId309 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId444 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId444 new file mode 100644 index 0000000..223f5bc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher$BlockEntityRenderer.class.uniqueId444 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId497 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId497 new file mode 100644 index 0000000..44225ca Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderDispatcher.class.uniqueId497 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId437 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId437 new file mode 100644 index 0000000..3221994 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderSectionManager.class.uniqueId437 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId435 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId435 new file mode 100644 index 0000000..84e0310 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$1.class.uniqueId435 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId153 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId153 new file mode 100644 index 0000000..b45ac0d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer$2.class.uniqueId153 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId23 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId23 new file mode 100644 index 0000000..35d8843 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer$SelectedRenderer.class.uniqueId23 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId464 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId464 new file mode 100644 index 0000000..e562ef2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelRenderer.class.uniqueId464 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelScanResult.class.uniqueId141 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelScanResult.class.uniqueId141 new file mode 100644 index 0000000..60f20de Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelScanResult.class.uniqueId141 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId202 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId202 new file mode 100644 index 0000000..ea7738e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$SchematicMapping.class.uniqueId202 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId485 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId485 new file mode 100644 index 0000000..198224c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext$Type.class.uniqueId485 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId229 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId229 new file mode 100644 index 0000000..f983058 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSchematicSerializationContext.class.uniqueId229 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId456 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId456 new file mode 100644 index 0000000..cec4671 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector$1.class.uniqueId456 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId288 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId288 new file mode 100644 index 0000000..91d37c7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelector.class.uniqueId288 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId102 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId102 new file mode 100644 index 0000000..7dbffd1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$FilterPriority.class.uniqueId102 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId501 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId501 new file mode 100644 index 0000000..f5df220 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Modifier.class.uniqueId501 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId8 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId8 new file mode 100644 index 0000000..cb43627 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType$Parser.class.uniqueId8 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId214 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId214 new file mode 100644 index 0000000..2d244de Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifierType.class.uniqueId214 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId45 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId45 new file mode 100644 index 0000000..143f82a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSelectorModifiers.class.uniqueId45 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId308 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId308 new file mode 100644 index 0000000..274ee29 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSerializer.class.uniqueId308 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId296 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId296 new file mode 100644 index 0000000..f91726d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSettingsScreen.class.uniqueId296 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId348 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId348 new file mode 100644 index 0000000..41ef1d7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelSortModifier.class.uniqueId348 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId134 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId134 new file mode 100644 index 0000000..2d43a0a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorage.class.uniqueId134 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId154 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId154 new file mode 100644 index 0000000..ea3b3e5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile$SectorSpanDataBuffer.class.uniqueId154 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId155 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId155 new file mode 100644 index 0000000..1f225d9 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelStorageFile.class.uniqueId155 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId253 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId253 new file mode 100644 index 0000000..4895df7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointObserver.class.uniqueId253 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId286 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId286 new file mode 100644 index 0000000..908f2c7 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData$TakenLoginPoint.class.uniqueId286 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId77 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId77 new file mode 100644 index 0000000..e806170 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingPointSavedData.class.uniqueId77 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId104 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId104 new file mode 100644 index 0000000..83bb6c4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket$UpdateTicketType.class.uniqueId104 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId7 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId7 new file mode 100644 index 0000000..ac965ba Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem$SubLevelUpdateTicket.class.uniqueId7 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId190 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId190 new file mode 100644 index 0000000..b77aee0 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelTrackingSystem.class.uniqueId190 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId438 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId438 new file mode 100644 index 0000000..12241dd Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SubLevelsBlockSkyMixinHelper.class.uniqueId438 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId317 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId317 new file mode 100644 index 0000000..a53fd86 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SublevelRenderOffsetHelper.class.uniqueId317 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueRemovalPacketMixin.class.uniqueId89 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueRemovalPacketMixin.class.uniqueId89 new file mode 100644 index 0000000..00caf46 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueRemovalPacketMixin.class.uniqueId89 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueSelectionHandlerMixin.class.uniqueId319 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueSelectionHandlerMixin.class.uniqueId319 new file mode 100644 index 0000000..9fb4d87 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SuperGlueSelectionHandlerMixin.class.uniqueId319 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SymmetryHandlerMixin.class.uniqueId108 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SymmetryHandlerMixin.class.uniqueId108 new file mode 100644 index 0000000..22cf08c Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/SymmetryHandlerMixin.class.uniqueId108 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId50 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId50 new file mode 100644 index 0000000..bcdc326 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TamableAnimalMixin.class.uniqueId50 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId261 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId261 new file mode 100644 index 0000000..0de9cdc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TerrainParticleMixin.class.uniqueId261 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId298 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId298 new file mode 100644 index 0000000..d5ea963 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TestCommandMixin.class.uniqueId298 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId347 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId347 new file mode 100644 index 0000000..960f8d3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ThrownTridentMixin.class.uniqueId347 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolBoxClientHandlerMixin.class.uniqueId389 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolBoxClientHandlerMixin.class.uniqueId389 new file mode 100644 index 0000000..ebe90b4 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolBoxClientHandlerMixin.class.uniqueId389 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolboxHandlerMixin.class.uniqueId201 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolboxHandlerMixin.class.uniqueId201 new file mode 100644 index 0000000..69e4783 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ToolboxHandlerMixin.class.uniqueId201 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockItemMixin.class.uniqueId329 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockItemMixin.class.uniqueId329 new file mode 100644 index 0000000..a043ece Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockItemMixin.class.uniqueId329 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockMixin.class.uniqueId359 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockMixin.class.uniqueId359 new file mode 100644 index 0000000..ccdba76 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockMixin.class.uniqueId359 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockOutlineMixin.class.uniqueId215 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockOutlineMixin.class.uniqueId215 new file mode 100644 index 0000000..4bb41dc Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackBlockOutlineMixin.class.uniqueId215 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackGraphVisualizerMixin.class.uniqueId182 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackGraphVisualizerMixin.class.uniqueId182 new file mode 100644 index 0000000..2b9b89e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackGraphVisualizerMixin.class.uniqueId182 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackPlacementMixin.class.uniqueId94 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackPlacementMixin.class.uniqueId94 new file mode 100644 index 0000000..43b22a5 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackPlacementMixin.class.uniqueId94 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackTargetingClientMixin.class.uniqueId258 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackTargetingClientMixin.class.uniqueId258 new file mode 100644 index 0000000..409d2ae Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackTargetingClientMixin.class.uniqueId258 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId440 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId440 new file mode 100644 index 0000000..d943a6a Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TrackedEntityMixin.class.uniqueId440 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TurntableBlockMixin.class.uniqueId434 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TurntableBlockMixin.class.uniqueId434 new file mode 100644 index 0000000..a0a413e Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/TurntableBlockMixin.class.uniqueId434 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId337 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId337 new file mode 100644 index 0000000..e40bba2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/UseOnContextMixin.class.uniqueId337 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ValueBoxMixin.class.uniqueId249 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ValueBoxMixin.class.uniqueId249 new file mode 100644 index 0000000..8d132df Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ValueBoxMixin.class.uniqueId249 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId449 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId449 new file mode 100644 index 0000000..2f3475d Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaChunkedSubLevelRenderData.class.uniqueId449 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId11 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId11 new file mode 100644 index 0000000..dd15057 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSingleSubLevelRenderData.class.uniqueId11 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId31 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId31 new file mode 100644 index 0000000..c87d8e2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelBlockEntityRenderer.class.uniqueId31 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId5 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId5 new file mode 100644 index 0000000..17ff8bb Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VanillaSubLevelRenderDispatcher.class.uniqueId5 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VerticalGearboxItemMixin.class.uniqueId143 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VerticalGearboxItemMixin.class.uniqueId143 new file mode 100644 index 0000000..65b6320 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VerticalGearboxItemMixin.class.uniqueId143 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId415 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId415 new file mode 100644 index 0000000..b7f1657 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemListenerMixin.class.uniqueId415 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId172 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId172 new file mode 100644 index 0000000..efc148b Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VibrationSystemTickerMixin.class.uniqueId172 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId279 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId279 new file mode 100644 index 0000000..06fa9e8 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewAreaMixin.class.uniqueId279 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId268 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId268 new file mode 100644 index 0000000..057e200 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderAccessMixin.class.uniqueId268 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId3 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId3 new file mode 100644 index 0000000..3c55db2 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ViewFinderControllerMixin.class.uniqueId3 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId352 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId352 new file mode 100644 index 0000000..d6981f6 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VineBlockMixin.class.uniqueId352 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualManagerImplMixin.class.uniqueId138 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualManagerImplMixin.class.uniqueId138 new file mode 100644 index 0000000..b0caf26 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualManagerImplMixin.class.uniqueId138 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualizationEventHandlerMixin.class.uniqueId137 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualizationEventHandlerMixin.class.uniqueId137 new file mode 100644 index 0000000..b6a65cf Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/VisualizationEventHandlerMixin.class.uniqueId137 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId58 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId58 new file mode 100644 index 0000000..f0195c1 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WalkNodeEvaluatorMixin.class.uniqueId58 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId324 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId324 new file mode 100644 index 0000000..5836dde Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WaterOcclusionContainer.class.uniqueId324 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId278 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId278 new file mode 100644 index 0000000..60b33c3 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WirelessNetworkMixin.class.uniqueId278 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId398 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId398 new file mode 100644 index 0000000..5b03c61 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/WorldBorderMixin.class.uniqueId398 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ZapperItemMixin.class.uniqueId450 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ZapperItemMixin.class.uniqueId450 new file mode 100644 index 0000000..3cfc620 Binary files /dev/null and b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/ZapperItemMixin.class.uniqueId450 differ diff --git a/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId311 b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId311 new file mode 100644 index 0000000..76465da --- /dev/null +++ b/neoforge/build/tmp/compileJava/compileTransaction/stash-dir/dev_ryanhcode_sable_physics_impl_rapier_Rapier3D.h.uniqueId311 @@ -0,0 +1,421 @@ +/* DO NOT EDIT THIS FILE - it is machine generated */ +#include +/* Header for class dev_ryanhcode_sable_physics_impl_rapier_Rapier3D */ + +#ifndef _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#define _Included_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D +#ifdef __cplusplus +extern "C" { +#endif +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: initialize + * Signature: (IDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_initialize + (JNIEnv *, jclass, jint, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: tick + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_tick + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: step + * Signature: (ID)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_step + (JNIEnv *, jclass, jint, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createSubLevel + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createSubLevel + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeSubLevel + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeSubLevel + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createBox + * Signature: (IIDDDD[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createBox + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeBox + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeBox + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getPose + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getPose + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setCenterOfMass + * Signature: (IIDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setCenterOfMass + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setLocalBounds + * Signature: (IIIIIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setLocalBounds + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addChunk + * Signature: (IIII[IZI)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jintArray, jboolean, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeChunk + * Signature: (IIIIZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeChunk + (JNIEnv *, jclass, jint, jint, jint, jint, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: changeBlock + * Signature: (IIIII)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_changeBlock + (JNIEnv *, jclass, jint, jint, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: newVoxelCollider + * Signature: (DDDZLdev/ryanhcode/sable/api/physics/callback/BlockSubLevelCollisionCallback;)I + */ +JNIEXPORT jint JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_newVoxelCollider + (JNIEnv *, jclass, jdouble, jdouble, jdouble, jboolean, jobject); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addVoxelColliderBox + * Signature: (I[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addVoxelColliderBox + (JNIEnv *, jclass, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearVoxelColliderBoxes + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearVoxelColliderBoxes + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setMassProperties + * Signature: (IID[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setMassProperties + (JNIEnv *, jclass, jint, jint, jdouble, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: teleportObject + * Signature: (IIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_teleportObject + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpObject + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpObject + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRotaryConstraint + * Signature: (IIIDDDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRotaryConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFixedConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFixedConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addFreeConstraint + * Signature: (IIIDDDDDDDDDD)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addFreeConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addGenericConstraint + * Signature: (IIIDDDDDDDDDDDDDDI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addGenericConstraint + (JNIEnv *, jclass, jint, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintFrame + * Signature: (IJIDDDDDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintFrame + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintContactsEnabled + * Signature: (IJZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintContactsEnabled + (JNIEnv *, jclass, jint, jlong, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getConstraintImpulses + * Signature: (IJ[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getConstraintImpulses + (JNIEnv *, jclass, jint, jlong, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: isConstraintValid + * Signature: (IJ)Z + */ +JNIEXPORT jboolean JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_isConstraintValid + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeConstraint + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeConstraint + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setConstraintMotor + * Signature: (IJIDDDZD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setConstraintMotor + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addLinearAngularVelocities + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addLinearAngularVelocities + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: clearCollisions + * Signature: (I)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_clearCollisions + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForce + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForce + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: applyForceAndTorque + * Signature: (IIDDDDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_applyForceAndTorque + (JNIEnv *, jclass, jint, jint, jdouble, jdouble, jdouble, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getLinearVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getLinearVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: getAngularVelocity + * Signature: (II[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_getAngularVelocity + (JNIEnv *, jclass, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createKinematicContraption + * Signature: (III[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createKinematicContraption + (JNIEnv *, jclass, jint, jint, jint, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeKinematicContraption + * Signature: (II)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeKinematicContraption + (JNIEnv *, jclass, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setKinematicContraptionTransform + * Signature: (II[D[D[D)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setKinematicContraptionTransform + (JNIEnv *, jclass, jint, jint, jdoubleArray, jdoubleArray, jdoubleArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addKinematicContraptionChunkSection + * Signature: (IIIII[I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addKinematicContraptionChunkSection + (JNIEnv *, jclass, jint, jint, jint, jint, jint, jintArray); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: createRope + * Signature: (IDD[DI)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_createRope + (JNIEnv *, jclass, jint, jdouble, jdouble, jdoubleArray, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRope + * Signature: (IJ)J + */ +JNIEXPORT jlong JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeAttachment + * Signature: (IJIDDDZ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeAttachment + (JNIEnv *, jclass, jint, jlong, jint, jdouble, jdouble, jdouble, jboolean); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: addRopePointAtStart + * Signature: (IJDDD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_addRopePointAtStart + (JNIEnv *, jclass, jint, jlong, jdouble, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: removeRopePointAtStart + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_removeRopePointAtStart + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: wakeUpRope + * Signature: (IJ)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_wakeUpRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: setRopeFirstSegmentLength + * Signature: (IJD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_setRopeFirstSegmentLength + (JNIEnv *, jclass, jint, jlong, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: queryRope + * Signature: (IJ)[D + */ +JNIEXPORT jdoubleArray JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_queryRope + (JNIEnv *, jclass, jint, jlong); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configFrequencyAndDamping + * Signature: (DD)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configFrequencyAndDamping + (JNIEnv *, jclass, jdouble, jdouble); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configSolverIterations + * Signature: (III)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configSolverIterations + (JNIEnv *, jclass, jint, jint, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: configMinIslandSize + * Signature: (I)V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_configMinIslandSize + (JNIEnv *, jclass, jint); + +/* + * Class: dev_ryanhcode_sable_physics_impl_rapier_Rapier3D + * Method: dispose + * Signature: ()V + */ +JNIEXPORT void JNICALL Java_dev_ryanhcode_sable_physics_impl_rapier_Rapier3D_dispose + (JNIEnv *, jclass); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/neoforge/build/tmp/compileJava/previous-compilation-data.bin b/neoforge/build/tmp/compileJava/previous-compilation-data.bin new file mode 100644 index 0000000..1dadf52 Binary files /dev/null and b/neoforge/build/tmp/compileJava/previous-compilation-data.bin differ diff --git a/neoforge/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json b/neoforge/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/neoforge/build/tmp/createMinecraftArtifacts/nfrt-problem-report.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/neoforge/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties b/neoforge/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties new file mode 100644 index 0000000..6aa5738 --- /dev/null +++ b/neoforge/build/tmp/createMinecraftArtifacts/nfrt_artifact_manifest.properties @@ -0,0 +1,147 @@ +# +#Mon May 11 13:49:56 EEST 2026 +ca.weblite\:java-objc-bridge\:1.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\ca.weblite\\java-objc-bridge\\1.1\\1227f9e0666314f9de41477e3ec277e542ed7f7b\\java-objc-bridge-1.1.jar +com.electronwill.night-config\:core\:3.8.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.electronwill.night-config\\core\\3.8.3\\b442a95f09e349927f5a945ecb594455870fcf4f\\core-3.8.3.jar +com.electronwill.night-config\:toml\:3.8.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.electronwill.night-config\\toml\\3.8.3\\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\\toml-3.8.3.jar +com.github.oshi\:oshi-core\:6.4.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.github.oshi\\oshi-core\\6.4.10\\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\\oshi-core-6.4.10.jar +com.google.code.findbugs\:jsr305\:3.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.findbugs\\jsr305\\3.0.2\\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\\jsr305-3.0.2.jar +com.google.code.gson\:gson\:2.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.gson\\gson\\2.10.1\\b3add478d4382b78ea20b1671390a858002feb6c\\gson-2.10.1.jar +com.google.errorprone\:error_prone_annotations\:2.18.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.errorprone\\error_prone_annotations\\2.18.0\\89b684257096f548fa39a7df9fdaa409d4d4df91\\error_prone_annotations-2.18.0.jar +com.google.guava\:failureaccess\:1.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\failureaccess\\1.0.1\\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\\failureaccess-1.0.1.jar +com.google.guava\:guava\:32.1.2-jre=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\guava\\32.1.2-jre\\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\\guava-32.1.2-jre.jar +com.google.guava\:listenablefuture\:9999.0-empty-to-avoid-conflict-with-guava=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\listenablefuture\\9999.0-empty-to-avoid-conflict-with-guava\\b421526c5f297295adef1c886e5246c39d4ac629\\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +com.google.j2objc\:j2objc-annotations\:2.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.j2objc\\j2objc-annotations\\2.8\\c85270e307e7b822f1086b93689124b89768e273\\j2objc-annotations-2.8.jar +com.ibm.icu\:icu4j\:73.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.ibm.icu\\icu4j\\73.2\\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\\icu4j-73.2.jar +com.machinezoo.noexception\:noexception\:1.7.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.machinezoo.noexception\\noexception\\1.7.1\\b65330c98e38a1f915fa54a6e5eca496505e3f0a\\noexception-1.7.1.jar +com.mojang\:authlib\:6.0.54=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\authlib\\6.0.54\\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\\authlib-6.0.54.jar +com.mojang\:blocklist\:1.0.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\blocklist\\1.0.10\\5c685c5ffa94c4cd39496c7184c1d122e515ecef\\blocklist-1.0.10.jar +com.mojang\:brigadier\:1.3.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\brigadier\\1.3.10\\d15b53a14cf20fdcaa98f731af5dda654452c010\\brigadier-1.3.10.jar +com.mojang\:datafixerupper\:8.0.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\datafixerupper\\8.0.16\\67d4de6d7f95d89bcf5862995fb854ebaec02a34\\datafixerupper-8.0.16.jar +com.mojang\:logging\:1.2.7=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\logging\\1.2.7\\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\\logging-1.2.7.jar +com.mojang\:patchy\:2.2.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\patchy\\2.2.10\\da05971b07cbb379d002cf7eaec6a2048211fefc\\patchy-2.2.10.jar +com.mojang\:text2speech\:1.17.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\text2speech\\1.17.9\\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\\text2speech-1.17.9.jar +com.nothome\:javaxdelta\:2.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.nothome\\javaxdelta\\2.0.1\\d4f5d077f1b15c6f67595015d69572303ad3f66d\\javaxdelta-2.0.1.jar +commons-codec\:commons-codec\:1.16.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-codec\\commons-codec\\1.16.0\\4e3eb3d79888d76b54e28b350915b5dc3919c9de\\commons-codec-1.16.0.jar +commons-io\:commons-io\:2.15.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-io\\commons-io\\2.15.1\\f11560da189ab563a5c8e351941415430e9304ea\\commons-io-2.15.1.jar +commons-logging\:commons-logging\:1.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-logging\\commons-logging\\1.2\\4bfc12adfe4842bf07b657f0369c4cb522955686\\commons-logging-1.2.jar +cpw.mods\:bootstraplauncher\:2.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar +cpw.mods\:modlauncher\:11.0.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\modlauncher\\11.0.5\\b8f0d49294f733fdb6173931b263553e943dc950\\modlauncher-11.0.5.jar +cpw.mods\:securejarhandler\:3.0.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar +de.siegmar\:fastcsv\:2.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\de.siegmar\\fastcsv\\2.0.0\\b615f26c03edeac966618b93b9ee4f4eed50aae1\\fastcsv-2.0.0.jar +io.codechicken\:DiffPatch\:2.0.0.36\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.codechicken\\DiffPatch\\2.0.0.36\\5b32f9baa0c0371c0dc80a3b88794960af0c6b44\\DiffPatch-2.0.0.36-all.jar +io.github.llamalad7\:mixinextras-neoforge\:0.5.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.github.llamalad7\\mixinextras-neoforge\\0.5.0\\d734b83ce6542bb70ea31755c1595b88992dbe65\\mixinextras-neoforge-0.5.0.jar +io.netty\:netty-buffer\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-buffer\\4.1.97.Final\\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\\netty-buffer-4.1.97.Final.jar +io.netty\:netty-codec\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-codec\\4.1.97.Final\\384ba4d75670befbedb45c4d3b497a93639c206d\\netty-codec-4.1.97.Final.jar +io.netty\:netty-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-common\\4.1.97.Final\\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\\netty-common-4.1.97.Final.jar +io.netty\:netty-handler\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-handler\\4.1.97.Final\\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\\netty-handler-4.1.97.Final.jar +io.netty\:netty-resolver\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-resolver\\4.1.97.Final\\cec8348108dc76c47cf87c669d514be52c922144\\netty-resolver-4.1.97.Final.jar +io.netty\:netty-transport-classes-epoll\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-classes-epoll\\4.1.97.Final\\795da37ded759e862457a82d9d92c4d39ce8ecee\\netty-transport-classes-epoll-4.1.97.Final.jar +io.netty\:netty-transport-native-unix-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-native-unix-common\\4.1.97.Final\\d469d84265ab70095b01b40886cabdd433b6e664\\netty-transport-native-unix-common-4.1.97.Final.jar +io.netty\:netty-transport\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport\\4.1.97.Final\\f37380d23c9bb079bc702910833b2fd532c9abd0\\netty-transport-4.1.97.Final.jar +it.unimi.dsi\:fastutil\:8.3.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.3.1\\ff33b340d60b81f4c1015fa8008bb30ff0a0d53b\\fastutil-8.3.1.jar +it.unimi.dsi\:fastutil\:8.5.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.5.12\\c24946d46824bd528054bface3231d2ecb7e95e8\\fastutil-8.5.12.jar +net.covers1624\:Quack\:0.4.10.101=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.covers1624\\Quack\\0.4.10.101\\970b7f652b5c40c893ef9a4bf13a97a291587d74\\Quack-0.4.10.101.jar +net.fabricmc\:sponge-mixin\:0.15.2+mixin.0.8.7=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.fabricmc\\sponge-mixin\\0.15.2+mixin.0.8.7\\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\\sponge-mixin-0.15.2+mixin.0.8.7.jar +net.java.dev.jna\:jna-platform\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna-platform\\5.14.0\\28934d48aed814f11e4c584da55c49fa7032b31b\\jna-platform-5.14.0.jar +net.java.dev.jna\:jna\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna\\5.14.0\\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\\jna-5.14.0.jar +net.jodah\:typetools\:0.6.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.jodah\\typetools\\0.6.3\\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\\typetools-0.6.3.jar +net.minecraftforge\:mergetool\:1.1.7\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\mergetool\\1.1.7\\3d41564f78f123d64573cae7948014baf3aaba3f\\mergetool-1.1.7-fatjar.jar +net.minecraftforge\:srgutils\:0.4.15=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\srgutils\\0.4.15\\ca408b131759478f164e010fae0d73997e125fb5\\srgutils-0.4.15.jar +net.minecrell\:terminalconsoleappender\:1.3.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecrell\\terminalconsoleappender\\1.3.0\\b562e9bb61235c9520e26282cdee71f8f802d1fc\\terminalconsoleappender-1.3.0.jar +net.neoforged.accesstransformers\:at-modlauncher\:10.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.accesstransformers\\at-modlauncher\\10.0.1\\5aba50202aceead086bc09fbc2751c9f05cb4890\\at-modlauncher-10.0.1.jar +net.neoforged.accesstransformers\:at-parser\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.accesstransformers\\at-parser\\13.0.1\\32c7515f7d07f8099642dab5825cd6cfec86e4e\\at-parser-13.0.1.jar +net.neoforged.fancymodloader\:earlydisplay\:4.0.42=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.fancymodloader\\earlydisplay\\4.0.42\\46555dbfff14e9e052f1f693aed14d542a74e111\\earlydisplay-4.0.42.jar +net.neoforged.fancymodloader\:loader\:4.0.42=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.fancymodloader\\loader\\4.0.42\\76e15f98bf676fb44b36c5e776f52a55581ec43a\\loader-4.0.42.jar +net.neoforged.installertools\:binarypatcher\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\binarypatcher\\4.0.12\\806a085347408d6883b1317959a8b4b6161596cb\\binarypatcher-4.0.12.jar +net.neoforged.installertools\:cli-utils\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\cli-utils\\4.0.12\\b00bf1b512f149f9f16890a966352f680e1b02b8\\cli-utils-4.0.12.jar +net.neoforged.installertools\:installertools\:2.1.2\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\2.1.2\\62740d5aa8f75f4a4d542d363bdda5b64a198f7a\\installertools-2.1.2-fatjar.jar +net.neoforged.installertools\:installertools\:4.0.12\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\4.0.12\\94b6e47c3f51f8ca40f8c54720369a952b821e95\\installertools-4.0.12-fatjar.jar +net.neoforged.javadoctor\:gson-io\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\gson-io\\2.0.17\\40edf7077205615bffe214a9d250c50cd0d13de\\gson-io-2.0.17.jar +net.neoforged.javadoctor\:spec\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\spec\\2.0.17\\fbe5da0da41957dccf9004014781bd8d05d16192\\spec-2.0.17.jar +net.neoforged.jst\:jst-cli-bundle\:2.0.6=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.jst\\jst-cli-bundle\\2.0.6\\41bc2dcac9fe41493bee064a7e07b63a5d08348\\jst-cli-bundle-2.0.6.jar +net.neoforged\:AutoRenamingTool\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\453980338983da2c30a37774d625fd2dac7cea4f\\AutoRenamingTool-2.0.17.jar +net.neoforged\:AutoRenamingTool\:2.0.17\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\9388df4c3589faf10c35d9154cfb2451c83bd717\\AutoRenamingTool-2.0.17-all.jar +net.neoforged\:AutoRenamingTool\:2.0.3\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.3\\d9890c71b4366f886c2b1006782043a6a6816eb6\\AutoRenamingTool-2.0.3-all.jar +net.neoforged\:JarJarFileSystems\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +net.neoforged\:JarJarMetadata\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarMetadata\\0.4.1\\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\\JarJarMetadata-0.4.1.jar +net.neoforged\:JarJarSelector\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarSelector\\0.4.1\\fb3cc7a58af22ad2880adb98af6d518128c47dae\\JarJarSelector-0.4.1.jar +net.neoforged\:accesstransformers\:10.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\accesstransformers\\10.0.1\\fd83b5725f76eae9115e9355fa1c456a6a441400\\accesstransformers-10.0.1.jar +net.neoforged\:accesstransformers\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\accesstransformers\\13.0.1\\5c6200bc80dc1d38b984a106a04d488dddcd642c\\accesstransformers-13.0.1.jar +net.neoforged\:bus\:8.0.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\bus\\8.0.5\\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\\bus-8.0.5.jar +net.neoforged\:coremods\:7.0.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\coremods\\7.0.3\\9147e6f638b4272b3bd5fc8f92ad37802512c6c\\coremods-7.0.3.jar +net.neoforged\:mergetool\:2.0.0\:api=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.0\\52fe1949be64e3303aabaaa21e315f551db9c9f4\\mergetool-2.0.0-api.jar +net.neoforged\:mergetool\:2.0.3\:api=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\1275202cbbb248f49345cf6787ce299afd9a02fb\\mergetool-2.0.3-api.jar +net.neoforged\:mergetool\:2.0.3\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\85c096b0155715275f84922d41462484c9a0285c\\mergetool-2.0.3-fatjar.jar +net.neoforged\:neoforge\:21.1.219\:sources=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\eefeb66da85d5ced69c1d0bc86b8140ddff77c1\\neoforge-21.1.219-sources.jar +net.neoforged\:neoforge\:21.1.219\:universal=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\300c6ecf584eab19b4dca5e69cc2ee68d0d21f1f\\neoforge-21.1.219-universal.jar +net.neoforged\:neoforge\:21.1.219\:userdev=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\9283d40a6b6bf5d096461ce98b73edca4cb4ca11\\neoforge-21.1.219-userdev.jar +net.neoforged\:neoform\:1.21.1-20240808.144430@zip=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoform\\1.21.1-20240808.144430\\811e2bd86fa2cda2812e5e8e51d718ea8bd6d3f4\\neoform-1.21.1-20240808.144430.zip +net.neoforged\:srgutils\:1.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\srgutils\\1.0.0\\b9fe6cdab494983217cbc14cc6f92c8e6c616526\\srgutils-1.0.0.jar +net.sf.jopt-simple\:jopt-simple\:5.0.4=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\5.0.4\\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\\jopt-simple-5.0.4.jar +net.sf.jopt-simple\:jopt-simple\:6.0-alpha-3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\6.0-alpha-3\\2ab1a73e1e22d2b73469362a0908a98644b681d\\jopt-simple-6.0-alpha-3.jar +org.antlr\:antlr4-runtime\:4.13.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.antlr\\antlr4-runtime\\4.13.1\\17125bae1d965624e265ef49552f6465a2bfa307\\antlr4-runtime-4.13.1.jar +org.apache.commons\:commons-compress\:1.18=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.18\\1191f9f2bc0c47a8cce69193feb1ff0a8bcb37d5\\commons-compress-1.18.jar +org.apache.commons\:commons-compress\:1.26.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.26.0\\659feffdd12280201c8aacb8f7be94f9a883c824\\commons-compress-1.26.0.jar +org.apache.commons\:commons-lang3\:3.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.14.0\\1ed471194b02f2c6cb734a0cd6f6f107c673afae\\commons-lang3-3.14.0.jar +org.apache.commons\:commons-lang3\:3.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.9\\122c7cee69b53ed4a7681c03d4ee4c0e2765da5\\commons-lang3-3.9.jar +org.apache.httpcomponents\:httpclient\:4.5.13=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpclient\\4.5.13\\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\\httpclient-4.5.13.jar +org.apache.httpcomponents\:httpcore\:4.4.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpcore\\4.4.16\\51cf043c87253c9f58b539c9f7e44c8894223850\\httpcore-4.4.16.jar +org.apache.logging.log4j\:log4j-api\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-api\\2.22.1\\bea6fede6328fabafd7e68363161a7ea6605abd1\\log4j-api-2.22.1.jar +org.apache.logging.log4j\:log4j-core\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-core\\2.22.1\\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\\log4j-core-2.22.1.jar +org.apache.logging.log4j\:log4j-slf4j2-impl\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-slf4j2-impl\\2.22.1\\d7e6693c2606cb7e7335047d7bb96dec52db5665\\log4j-slf4j2-impl-2.22.1.jar +org.apache.maven\:maven-artifact\:3.8.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.maven\\maven-artifact\\3.8.5\\4433f50c07debefaed0553bd0068f4f48d449313\\maven-artifact-3.8.5.jar +org.checkerframework\:checker-qual\:3.33.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.checkerframework\\checker-qual\\3.33.0\\de2b60b62da487644fc11f734e73c8b0b431238f\\checker-qual-3.33.0.jar +org.codehaus.plexus\:plexus-utils\:3.3.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.codehaus.plexus\\plexus-utils\\3.3.0\\cf43b5391de623b36fe066a21127baef82c64022\\plexus-utils-3.3.0.jar +org.jcraft\:jorbis\:0.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jcraft\\jorbis\\0.0.17\\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\\jorbis-0.0.17.jar +org.jetbrains\:annotations\:24.1.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jetbrains\\annotations\\24.1.0\\7af6a669488450c4a07c2c3254e2151df42d7d04\\annotations-24.1.0.jar +org.jline\:jline-reader\:3.20.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jline\\jline-reader\\3.20.0\\8f15415b022a25b473e8e16c28ae913186ffb9c4\\jline-reader-3.20.0.jar +org.jline\:jline-terminal\:3.20.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jline\\jline-terminal\\3.20.0\\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\\jline-terminal-3.20.0.jar +org.joml\:joml\:1.10.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.joml\\joml\\1.10.5\\22566d58af70ad3d72308bab63b8339906deb649\\joml-1.10.5.jar +org.lwjgl\:lwjgl-freetype\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\\lwjgl-freetype-3.3.3.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\81091b006dbb43fab04c8c638e9ac87c51b4096d\\lwjgl-freetype-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\82028265a0a2ff33523ca75137ada7dc176e5210\\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\\lwjgl-freetype-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-glfw\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\efa1eb78c5ccd840e9f329717109b5e892d72f8e\\lwjgl-glfw-3.3.3.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\e449e28b4891fc423c54c85fbc5bb0b9efece67a\\lwjgl-glfw-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\f27018dc74f6289574502b46cce55d52817554e2\\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\32334f3fd5270a59bad9939a93115acb6de36dcf\\lwjgl-glfw-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\b543467b7ff3c6920539a88ee602d34098628be5\\lwjgl-jemalloc-3.3.3.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\426222fc027602a5f21b9c0fe79cde6a4c7a011f\\lwjgl-jemalloc-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\f6063b6e0f23be483c5c88d84ce51b39dc69126c\\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-openal\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\\lwjgl-openal-3.3.3.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\cf83862ae95d98496b26915024c7e666d8ab1c8f\\lwjgl-openal-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\8e0615235116b9e4160dfe87bec90f5f6378bf72\\lwjgl-openal-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\\lwjgl-openal-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-opengl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\2f6b0147078396a58979125a4c947664e98293a\\lwjgl-opengl-3.3.3.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\e6c1eec8be8a71951b830a4d69efc01c6531900c\\lwjgl-opengl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\65e956d3735a1abdc82eff4baec1b61174697d4b\\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\d32d833dcaa2f355a886eaf21f0408b5f03241d\\lwjgl-opengl-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-stb\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\25dd6161988d7e65f71d5065c99902402ee32746\\lwjgl-stb-3.3.3.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\1d9facdf6541de114b0f963be33505b7679c78cb\\lwjgl-stb-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\a584ab44de569708871f0a79561f4d8c37487f2c\\lwjgl-stb-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\b5c874687b9aac1a936501d4ed2c49567fd1b575\\lwjgl-stb-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\\lwjgl-tinyfd-3.3.3.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a6697981b0449a5087c1d546fc08b4f73e8f98c9\\lwjgl-tinyfd-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a88c494f3006eb91a7433b12a3a55a9a6c20788b\\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\c336c84ee88cccb495c6ffa112395509e7378e8a\\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\\lwjgl-3.3.3.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\\lwjgl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\e9aca8c5479b520a2a7f0d542a118140e812c5e8\\lwjgl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\9e670718e050aeaeea0c2d5b907cffb142f2e58f\\lwjgl-3.3.3-natives-windows-x86.jar +org.lz4\:lz4-java\:1.8.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lz4\\lz4-java\\1.8.0\\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\\lz4-java-1.8.0.jar +org.openjdk.nashorn\:nashorn-core\:15.4=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.openjdk.nashorn\\nashorn-core\\15.4\\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\\nashorn-core-15.4.jar +org.ow2.asm\:asm-analysis\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.5\\490bacc77de7cbc0be1a30bb3471072d705be4a4\\asm-analysis-9.5.jar +org.ow2.asm\:asm-analysis\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar +org.ow2.asm\:asm-commons\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar +org.ow2.asm\:asm-commons\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.9.1\\ab35de4c537184a09339069f1a3b3aacf2289149\\asm-commons-9.9.1.jar +org.ow2.asm\:asm-tree\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar +org.ow2.asm\:asm-tree\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.9.1\\b6b1b3366296163b4b1f540731aad0a2baa484d8\\asm-tree-9.9.1.jar +org.ow2.asm\:asm-util\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.5\\64b5a1fc8c1b15ed2efd6a063e976bc8d3dc5ffe\\asm-util-9.5.jar +org.ow2.asm\:asm-util\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar +org.ow2.asm\:asm\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar +org.ow2.asm\:asm\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.9.1\\2ceea6ab43bcae1979b2a6d85fc0ca429877e5ab\\asm-9.9.1.jar +org.slf4j\:slf4j-api\:2.0.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.slf4j\\slf4j-api\\2.0.9\\7cf2726fdcfbc8610f9a71fb3ed639871f315340\\slf4j-api-2.0.9.jar +org.tukaani\:xz\:1.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.tukaani\\xz\\1.10\\1be8166f89e035a56c6bfc67dbc423996fe577e2\\xz-1.10.jar +org.vineflower\:vineflower\:1.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.vineflower\\vineflower\\1.10.1\\4f48c5947b21f9ebc743e7c80215ee839d3dc668\\vineflower-1.10.1.jar +trove\:trove\:1.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\trove\\trove\\1.0.2\\112b40581ab9a4d3de4636d49985a7f686d181c8\\trove-1.0.2.jar diff --git a/neoforge/build/tmp/downloadAssets/nfrt_artifact_manifest.properties b/neoforge/build/tmp/downloadAssets/nfrt_artifact_manifest.properties new file mode 100644 index 0000000..ece8111 --- /dev/null +++ b/neoforge/build/tmp/downloadAssets/nfrt_artifact_manifest.properties @@ -0,0 +1,147 @@ +# +#Mon May 11 11:40:39 EEST 2026 +ca.weblite\:java-objc-bridge\:1.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\ca.weblite\\java-objc-bridge\\1.1\\1227f9e0666314f9de41477e3ec277e542ed7f7b\\java-objc-bridge-1.1.jar +com.electronwill.night-config\:core\:3.8.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.electronwill.night-config\\core\\3.8.3\\b442a95f09e349927f5a945ecb594455870fcf4f\\core-3.8.3.jar +com.electronwill.night-config\:toml\:3.8.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.electronwill.night-config\\toml\\3.8.3\\90b2fd6efcb4a7d5b9810cf78f9d824994d717f2\\toml-3.8.3.jar +com.github.oshi\:oshi-core\:6.4.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.github.oshi\\oshi-core\\6.4.10\\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\\oshi-core-6.4.10.jar +com.google.code.findbugs\:jsr305\:3.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.findbugs\\jsr305\\3.0.2\\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\\jsr305-3.0.2.jar +com.google.code.gson\:gson\:2.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.code.gson\\gson\\2.10.1\\b3add478d4382b78ea20b1671390a858002feb6c\\gson-2.10.1.jar +com.google.errorprone\:error_prone_annotations\:2.18.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.errorprone\\error_prone_annotations\\2.18.0\\89b684257096f548fa39a7df9fdaa409d4d4df91\\error_prone_annotations-2.18.0.jar +com.google.guava\:failureaccess\:1.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\failureaccess\\1.0.1\\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\\failureaccess-1.0.1.jar +com.google.guava\:guava\:32.1.2-jre=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\guava\\32.1.2-jre\\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\\guava-32.1.2-jre.jar +com.google.guava\:listenablefuture\:9999.0-empty-to-avoid-conflict-with-guava=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.guava\\listenablefuture\\9999.0-empty-to-avoid-conflict-with-guava\\b421526c5f297295adef1c886e5246c39d4ac629\\listenablefuture-9999.0-empty-to-avoid-conflict-with-guava.jar +com.google.j2objc\:j2objc-annotations\:2.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.google.j2objc\\j2objc-annotations\\2.8\\c85270e307e7b822f1086b93689124b89768e273\\j2objc-annotations-2.8.jar +com.ibm.icu\:icu4j\:73.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.ibm.icu\\icu4j\\73.2\\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\\icu4j-73.2.jar +com.machinezoo.noexception\:noexception\:1.7.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.machinezoo.noexception\\noexception\\1.7.1\\b65330c98e38a1f915fa54a6e5eca496505e3f0a\\noexception-1.7.1.jar +com.mojang\:authlib\:6.0.54=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\authlib\\6.0.54\\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\\authlib-6.0.54.jar +com.mojang\:blocklist\:1.0.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\blocklist\\1.0.10\\5c685c5ffa94c4cd39496c7184c1d122e515ecef\\blocklist-1.0.10.jar +com.mojang\:brigadier\:1.3.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\brigadier\\1.3.10\\d15b53a14cf20fdcaa98f731af5dda654452c010\\brigadier-1.3.10.jar +com.mojang\:datafixerupper\:8.0.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\datafixerupper\\8.0.16\\67d4de6d7f95d89bcf5862995fb854ebaec02a34\\datafixerupper-8.0.16.jar +com.mojang\:logging\:1.2.7=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\logging\\1.2.7\\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\\logging-1.2.7.jar +com.mojang\:patchy\:2.2.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\patchy\\2.2.10\\da05971b07cbb379d002cf7eaec6a2048211fefc\\patchy-2.2.10.jar +com.mojang\:text2speech\:1.17.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.mojang\\text2speech\\1.17.9\\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\\text2speech-1.17.9.jar +com.nothome\:javaxdelta\:2.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\com.nothome\\javaxdelta\\2.0.1\\d4f5d077f1b15c6f67595015d69572303ad3f66d\\javaxdelta-2.0.1.jar +commons-codec\:commons-codec\:1.16.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-codec\\commons-codec\\1.16.0\\4e3eb3d79888d76b54e28b350915b5dc3919c9de\\commons-codec-1.16.0.jar +commons-io\:commons-io\:2.15.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-io\\commons-io\\2.15.1\\f11560da189ab563a5c8e351941415430e9304ea\\commons-io-2.15.1.jar +commons-logging\:commons-logging\:1.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\commons-logging\\commons-logging\\1.2\\4bfc12adfe4842bf07b657f0369c4cb522955686\\commons-logging-1.2.jar +cpw.mods\:bootstraplauncher\:2.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\bootstraplauncher\\2.0.2\\1a2d076cbc33b0520cbacd591224427b2a20047d\\bootstraplauncher-2.0.2.jar +cpw.mods\:modlauncher\:11.0.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\modlauncher\\11.0.5\\b8f0d49294f733fdb6173931b263553e943dc950\\modlauncher-11.0.5.jar +cpw.mods\:securejarhandler\:3.0.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\cpw.mods\\securejarhandler\\3.0.8\\c0ef95cecd8699a0449053ac7d9c160748d902cd\\securejarhandler-3.0.8.jar +de.siegmar\:fastcsv\:2.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\de.siegmar\\fastcsv\\2.0.0\\b615f26c03edeac966618b93b9ee4f4eed50aae1\\fastcsv-2.0.0.jar +io.codechicken\:DiffPatch\:2.0.0.36\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.codechicken\\DiffPatch\\2.0.0.36\\5b32f9baa0c0371c0dc80a3b88794960af0c6b44\\DiffPatch-2.0.0.36-all.jar +io.github.llamalad7\:mixinextras-neoforge\:0.5.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.github.llamalad7\\mixinextras-neoforge\\0.5.0\\d734b83ce6542bb70ea31755c1595b88992dbe65\\mixinextras-neoforge-0.5.0.jar +io.netty\:netty-buffer\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-buffer\\4.1.97.Final\\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\\netty-buffer-4.1.97.Final.jar +io.netty\:netty-codec\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-codec\\4.1.97.Final\\384ba4d75670befbedb45c4d3b497a93639c206d\\netty-codec-4.1.97.Final.jar +io.netty\:netty-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-common\\4.1.97.Final\\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\\netty-common-4.1.97.Final.jar +io.netty\:netty-handler\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-handler\\4.1.97.Final\\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\\netty-handler-4.1.97.Final.jar +io.netty\:netty-resolver\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-resolver\\4.1.97.Final\\cec8348108dc76c47cf87c669d514be52c922144\\netty-resolver-4.1.97.Final.jar +io.netty\:netty-transport-classes-epoll\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-classes-epoll\\4.1.97.Final\\795da37ded759e862457a82d9d92c4d39ce8ecee\\netty-transport-classes-epoll-4.1.97.Final.jar +io.netty\:netty-transport-native-unix-common\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport-native-unix-common\\4.1.97.Final\\d469d84265ab70095b01b40886cabdd433b6e664\\netty-transport-native-unix-common-4.1.97.Final.jar +io.netty\:netty-transport\:4.1.97.Final=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\io.netty\\netty-transport\\4.1.97.Final\\f37380d23c9bb079bc702910833b2fd532c9abd0\\netty-transport-4.1.97.Final.jar +it.unimi.dsi\:fastutil\:8.3.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.3.1\\ff33b340d60b81f4c1015fa8008bb30ff0a0d53b\\fastutil-8.3.1.jar +it.unimi.dsi\:fastutil\:8.5.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\it.unimi.dsi\\fastutil\\8.5.12\\c24946d46824bd528054bface3231d2ecb7e95e8\\fastutil-8.5.12.jar +net.covers1624\:Quack\:0.4.10.101=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.covers1624\\Quack\\0.4.10.101\\970b7f652b5c40c893ef9a4bf13a97a291587d74\\Quack-0.4.10.101.jar +net.fabricmc\:sponge-mixin\:0.15.2+mixin.0.8.7=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.fabricmc\\sponge-mixin\\0.15.2+mixin.0.8.7\\2af2f021d8e02a0220dc27a7a72b4666d66d44ca\\sponge-mixin-0.15.2+mixin.0.8.7.jar +net.java.dev.jna\:jna-platform\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna-platform\\5.14.0\\28934d48aed814f11e4c584da55c49fa7032b31b\\jna-platform-5.14.0.jar +net.java.dev.jna\:jna\:5.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.java.dev.jna\\jna\\5.14.0\\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\\jna-5.14.0.jar +net.jodah\:typetools\:0.6.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.jodah\\typetools\\0.6.3\\a01aaa6ddaea9ec07ec4f209487b7a46a526283a\\typetools-0.6.3.jar +net.minecraftforge\:mergetool\:1.1.7\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\mergetool\\1.1.7\\3d41564f78f123d64573cae7948014baf3aaba3f\\mergetool-1.1.7-fatjar.jar +net.minecraftforge\:srgutils\:0.4.15=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecraftforge\\srgutils\\0.4.15\\ca408b131759478f164e010fae0d73997e125fb5\\srgutils-0.4.15.jar +net.minecrell\:terminalconsoleappender\:1.3.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.minecrell\\terminalconsoleappender\\1.3.0\\b562e9bb61235c9520e26282cdee71f8f802d1fc\\terminalconsoleappender-1.3.0.jar +net.neoforged.accesstransformers\:at-modlauncher\:10.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.accesstransformers\\at-modlauncher\\10.0.1\\5aba50202aceead086bc09fbc2751c9f05cb4890\\at-modlauncher-10.0.1.jar +net.neoforged.accesstransformers\:at-parser\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.accesstransformers\\at-parser\\13.0.1\\32c7515f7d07f8099642dab5825cd6cfec86e4e\\at-parser-13.0.1.jar +net.neoforged.fancymodloader\:earlydisplay\:4.0.42=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.fancymodloader\\earlydisplay\\4.0.42\\46555dbfff14e9e052f1f693aed14d542a74e111\\earlydisplay-4.0.42.jar +net.neoforged.fancymodloader\:loader\:4.0.42=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.fancymodloader\\loader\\4.0.42\\76e15f98bf676fb44b36c5e776f52a55581ec43a\\loader-4.0.42.jar +net.neoforged.installertools\:binarypatcher\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\binarypatcher\\4.0.12\\806a085347408d6883b1317959a8b4b6161596cb\\binarypatcher-4.0.12.jar +net.neoforged.installertools\:cli-utils\:4.0.12=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\cli-utils\\4.0.12\\b00bf1b512f149f9f16890a966352f680e1b02b8\\cli-utils-4.0.12.jar +net.neoforged.installertools\:installertools\:2.1.2\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\2.1.2\\62740d5aa8f75f4a4d542d363bdda5b64a198f7a\\installertools-2.1.2-fatjar.jar +net.neoforged.installertools\:installertools\:4.0.12\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.installertools\\installertools\\4.0.12\\94b6e47c3f51f8ca40f8c54720369a952b821e95\\installertools-4.0.12-fatjar.jar +net.neoforged.javadoctor\:gson-io\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\gson-io\\2.0.17\\40edf7077205615bffe214a9d250c50cd0d13de\\gson-io-2.0.17.jar +net.neoforged.javadoctor\:spec\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.javadoctor\\spec\\2.0.17\\fbe5da0da41957dccf9004014781bd8d05d16192\\spec-2.0.17.jar +net.neoforged.jst\:jst-cli-bundle\:2.0.6=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged.jst\\jst-cli-bundle\\2.0.6\\41bc2dcac9fe41493bee064a7e07b63a5d08348\\jst-cli-bundle-2.0.6.jar +net.neoforged\:AutoRenamingTool\:2.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\453980338983da2c30a37774d625fd2dac7cea4f\\AutoRenamingTool-2.0.17.jar +net.neoforged\:AutoRenamingTool\:2.0.17\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.17\\9388df4c3589faf10c35d9154cfb2451c83bd717\\AutoRenamingTool-2.0.17-all.jar +net.neoforged\:AutoRenamingTool\:2.0.3\:all=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\AutoRenamingTool\\2.0.3\\d9890c71b4366f886c2b1006782043a6a6816eb6\\AutoRenamingTool-2.0.3-all.jar +net.neoforged\:JarJarFileSystems\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarFileSystems\\0.4.1\\78f59f89defcd032ed788b151ca6a0d40ace796a\\JarJarFileSystems-0.4.1.jar +net.neoforged\:JarJarMetadata\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarMetadata\\0.4.1\\f8da03683dc81694556dc3e177c5e3bb77ae6fcb\\JarJarMetadata-0.4.1.jar +net.neoforged\:JarJarSelector\:0.4.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\JarJarSelector\\0.4.1\\fb3cc7a58af22ad2880adb98af6d518128c47dae\\JarJarSelector-0.4.1.jar +net.neoforged\:accesstransformers\:10.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\accesstransformers\\10.0.1\\fd83b5725f76eae9115e9355fa1c456a6a441400\\accesstransformers-10.0.1.jar +net.neoforged\:accesstransformers\:13.0.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\accesstransformers\\13.0.1\\5c6200bc80dc1d38b984a106a04d488dddcd642c\\accesstransformers-13.0.1.jar +net.neoforged\:bus\:8.0.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\bus\\8.0.5\\5b2d33285ab5d1554e9798ad98c40d6ea3868bd5\\bus-8.0.5.jar +net.neoforged\:coremods\:7.0.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\coremods\\7.0.3\\9147e6f638b4272b3bd5fc8f92ad37802512c6c\\coremods-7.0.3.jar +net.neoforged\:mergetool\:2.0.0\:api=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.0\\52fe1949be64e3303aabaaa21e315f551db9c9f4\\mergetool-2.0.0-api.jar +net.neoforged\:mergetool\:2.0.3\:api=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\1275202cbbb248f49345cf6787ce299afd9a02fb\\mergetool-2.0.3-api.jar +net.neoforged\:mergetool\:2.0.3\:fatjar=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\mergetool\\2.0.3\\85c096b0155715275f84922d41462484c9a0285c\\mergetool-2.0.3-fatjar.jar +net.neoforged\:neoforge\:21.1.219\:sources=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\eefeb66da85d5ced69c1d0bc86b8140ddff77c1\\neoforge-21.1.219-sources.jar +net.neoforged\:neoforge\:21.1.219\:universal=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\300c6ecf584eab19b4dca5e69cc2ee68d0d21f1f\\neoforge-21.1.219-universal.jar +net.neoforged\:neoforge\:21.1.219\:userdev=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoforge\\21.1.219\\9283d40a6b6bf5d096461ce98b73edca4cb4ca11\\neoforge-21.1.219-userdev.jar +net.neoforged\:neoform\:1.21.1-20240808.144430@zip=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\neoform\\1.21.1-20240808.144430\\811e2bd86fa2cda2812e5e8e51d718ea8bd6d3f4\\neoform-1.21.1-20240808.144430.zip +net.neoforged\:srgutils\:1.0.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.neoforged\\srgutils\\1.0.0\\b9fe6cdab494983217cbc14cc6f92c8e6c616526\\srgutils-1.0.0.jar +net.sf.jopt-simple\:jopt-simple\:5.0.4=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\5.0.4\\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\\jopt-simple-5.0.4.jar +net.sf.jopt-simple\:jopt-simple\:6.0-alpha-3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\net.sf.jopt-simple\\jopt-simple\\6.0-alpha-3\\2ab1a73e1e22d2b73469362a0908a98644b681d\\jopt-simple-6.0-alpha-3.jar +org.antlr\:antlr4-runtime\:4.13.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.antlr\\antlr4-runtime\\4.13.1\\17125bae1d965624e265ef49552f6465a2bfa307\\antlr4-runtime-4.13.1.jar +org.apache.commons\:commons-compress\:1.18=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.18\\1191f9f2bc0c47a8cce69193feb1ff0a8bcb37d5\\commons-compress-1.18.jar +org.apache.commons\:commons-compress\:1.26.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-compress\\1.26.0\\659feffdd12280201c8aacb8f7be94f9a883c824\\commons-compress-1.26.0.jar +org.apache.commons\:commons-lang3\:3.14.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.14.0\\1ed471194b02f2c6cb734a0cd6f6f107c673afae\\commons-lang3-3.14.0.jar +org.apache.commons\:commons-lang3\:3.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.commons\\commons-lang3\\3.9\\122c7cee69b53ed4a7681c03d4ee4c0e2765da5\\commons-lang3-3.9.jar +org.apache.httpcomponents\:httpclient\:4.5.13=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpclient\\4.5.13\\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\\httpclient-4.5.13.jar +org.apache.httpcomponents\:httpcore\:4.4.16=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.httpcomponents\\httpcore\\4.4.16\\51cf043c87253c9f58b539c9f7e44c8894223850\\httpcore-4.4.16.jar +org.apache.logging.log4j\:log4j-api\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-api\\2.22.1\\bea6fede6328fabafd7e68363161a7ea6605abd1\\log4j-api-2.22.1.jar +org.apache.logging.log4j\:log4j-core\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-core\\2.22.1\\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\\log4j-core-2.22.1.jar +org.apache.logging.log4j\:log4j-slf4j2-impl\:2.22.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.logging.log4j\\log4j-slf4j2-impl\\2.22.1\\d7e6693c2606cb7e7335047d7bb96dec52db5665\\log4j-slf4j2-impl-2.22.1.jar +org.apache.maven\:maven-artifact\:3.8.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.apache.maven\\maven-artifact\\3.8.5\\4433f50c07debefaed0553bd0068f4f48d449313\\maven-artifact-3.8.5.jar +org.checkerframework\:checker-qual\:3.33.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.checkerframework\\checker-qual\\3.33.0\\de2b60b62da487644fc11f734e73c8b0b431238f\\checker-qual-3.33.0.jar +org.codehaus.plexus\:plexus-utils\:3.3.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.codehaus.plexus\\plexus-utils\\3.3.0\\cf43b5391de623b36fe066a21127baef82c64022\\plexus-utils-3.3.0.jar +org.jcraft\:jorbis\:0.0.17=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jcraft\\jorbis\\0.0.17\\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\\jorbis-0.0.17.jar +org.jetbrains\:annotations\:24.1.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jetbrains\\annotations\\24.1.0\\7af6a669488450c4a07c2c3254e2151df42d7d04\\annotations-24.1.0.jar +org.jline\:jline-reader\:3.20.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jline\\jline-reader\\3.20.0\\8f15415b022a25b473e8e16c28ae913186ffb9c4\\jline-reader-3.20.0.jar +org.jline\:jline-terminal\:3.20.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.jline\\jline-terminal\\3.20.0\\d0ddcc708ddf527a3454c941b7b9225cc83a15ff\\jline-terminal-3.20.0.jar +org.joml\:joml\:1.10.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.joml\\joml\\1.10.5\\22566d58af70ad3d72308bab63b8339906deb649\\joml-1.10.5.jar +org.lwjgl\:lwjgl-freetype\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\\lwjgl-freetype-3.3.3.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\81091b006dbb43fab04c8c638e9ac87c51b4096d\\lwjgl-freetype-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\82028265a0a2ff33523ca75137ada7dc176e5210\\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-freetype\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-freetype\\3.3.3\\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\\lwjgl-freetype-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-glfw\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\efa1eb78c5ccd840e9f329717109b5e892d72f8e\\lwjgl-glfw-3.3.3.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\e449e28b4891fc423c54c85fbc5bb0b9efece67a\\lwjgl-glfw-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\f27018dc74f6289574502b46cce55d52817554e2\\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-glfw\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-glfw\\3.3.3\\32334f3fd5270a59bad9939a93115acb6de36dcf\\lwjgl-glfw-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\b543467b7ff3c6920539a88ee602d34098628be5\\lwjgl-jemalloc-3.3.3.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\426222fc027602a5f21b9c0fe79cde6a4c7a011f\\lwjgl-jemalloc-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-jemalloc\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-jemalloc\\3.3.3\\f6063b6e0f23be483c5c88d84ce51b39dc69126c\\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-openal\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\\lwjgl-openal-3.3.3.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\cf83862ae95d98496b26915024c7e666d8ab1c8f\\lwjgl-openal-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\8e0615235116b9e4160dfe87bec90f5f6378bf72\\lwjgl-openal-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-openal\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-openal\\3.3.3\\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\\lwjgl-openal-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-opengl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\2f6b0147078396a58979125a4c947664e98293a\\lwjgl-opengl-3.3.3.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\e6c1eec8be8a71951b830a4d69efc01c6531900c\\lwjgl-opengl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\65e956d3735a1abdc82eff4baec1b61174697d4b\\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-opengl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-opengl\\3.3.3\\d32d833dcaa2f355a886eaf21f0408b5f03241d\\lwjgl-opengl-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-stb\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\25dd6161988d7e65f71d5065c99902402ee32746\\lwjgl-stb-3.3.3.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\1d9facdf6541de114b0f963be33505b7679c78cb\\lwjgl-stb-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\a584ab44de569708871f0a79561f4d8c37487f2c\\lwjgl-stb-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-stb\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-stb\\3.3.3\\b5c874687b9aac1a936501d4ed2c49567fd1b575\\lwjgl-stb-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\\lwjgl-tinyfd-3.3.3.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a6697981b0449a5087c1d546fc08b4f73e8f98c9\\lwjgl-tinyfd-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\a88c494f3006eb91a7433b12a3a55a9a6c20788b\\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl-tinyfd\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl-tinyfd\\3.3.3\\c336c84ee88cccb495c6ffa112395509e7378e8a\\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +org.lwjgl\:lwjgl\:3.3.3=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\\lwjgl-3.3.3.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\\lwjgl-3.3.3-natives-windows.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-arm64=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\e9aca8c5479b520a2a7f0d542a118140e812c5e8\\lwjgl-3.3.3-natives-windows-arm64.jar +org.lwjgl\:lwjgl\:3.3.3\:natives-windows-x86=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lwjgl\\lwjgl\\3.3.3\\9e670718e050aeaeea0c2d5b907cffb142f2e58f\\lwjgl-3.3.3-natives-windows-x86.jar +org.lz4\:lz4-java\:1.8.0=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.lz4\\lz4-java\\1.8.0\\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\\lz4-java-1.8.0.jar +org.openjdk.nashorn\:nashorn-core\:15.4=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.openjdk.nashorn\\nashorn-core\\15.4\\f67f5ffaa5f5130cf6fb9b133da00c7df3b532a5\\nashorn-core-15.4.jar +org.ow2.asm\:asm-analysis\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.5\\490bacc77de7cbc0be1a30bb3471072d705be4a4\\asm-analysis-9.5.jar +org.ow2.asm\:asm-analysis\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-analysis\\9.8\\b9747a320844b6cb1eacd90d8ecfd260a16c01d3\\asm-analysis-9.8.jar +org.ow2.asm\:asm-commons\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.8\\36e4d212970388e5bd2c5180292012502df461bb\\asm-commons-9.8.jar +org.ow2.asm\:asm-commons\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-commons\\9.9.1\\ab35de4c537184a09339069f1a3b3aacf2289149\\asm-commons-9.9.1.jar +org.ow2.asm\:asm-tree\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.8\\18419ca5b77a2f81097c741e7872e6ab8d2f40d\\asm-tree-9.8.jar +org.ow2.asm\:asm-tree\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-tree\\9.9.1\\b6b1b3366296163b4b1f540731aad0a2baa484d8\\asm-tree-9.9.1.jar +org.ow2.asm\:asm-util\:9.5=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.5\\64b5a1fc8c1b15ed2efd6a063e976bc8d3dc5ffe\\asm-util-9.5.jar +org.ow2.asm\:asm-util\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm-util\\9.8\\395f1c1f035258511f27bc9b2583d76e4b143f59\\asm-util-9.8.jar +org.ow2.asm\:asm\:9.8=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.8\\dc19ecb3f7889b7860697215cae99c0f9b6f6b4b\\asm-9.8.jar +org.ow2.asm\:asm\:9.9.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.ow2.asm\\asm\\9.9.1\\2ceea6ab43bcae1979b2a6d85fc0ca429877e5ab\\asm-9.9.1.jar +org.slf4j\:slf4j-api\:2.0.9=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.slf4j\\slf4j-api\\2.0.9\\7cf2726fdcfbc8610f9a71fb3ed639871f315340\\slf4j-api-2.0.9.jar +org.tukaani\:xz\:1.10=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.tukaani\\xz\\1.10\\1be8166f89e035a56c6bfc67dbc423996fe577e2\\xz-1.10.jar +org.vineflower\:vineflower\:1.10.1=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\org.vineflower\\vineflower\\1.10.1\\4f48c5947b21f9ebc743e7c80215ee839d3dc668\\vineflower-1.10.1.jar +trove\:trove\:1.0.2=C\:\\Users\\user\\.gradle\\caches\\modules-2\\files-2.1\\trove\\trove\\1.0.2\\112b40581ab9a4d3de4636d49985a7f686d181c8\\trove-1.0.2.jar diff --git a/neoforge/build/tmp/jar/MANIFEST.MF b/neoforge/build/tmp/jar/MANIFEST.MF new file mode 100644 index 0000000..3310cd1 --- /dev/null +++ b/neoforge/build/tmp/jar/MANIFEST.MF @@ -0,0 +1,9 @@ +Manifest-Version: 1.0 +Specification-Title: Sable +Specification-Vendor: RyanHCode +Specification-Version: 1.2.2 +Implementation-Title: neoforge +Implementation-Version: 1.2.2 +Implementation-Vendor: RyanHCode +Built-On-Minecraft: 1.21.1 + diff --git a/neoforge/build/tmp/jarJar/metadata.json b/neoforge/build/tmp/jarJar/metadata.json new file mode 100644 index 0000000..97ac89d --- /dev/null +++ b/neoforge/build/tmp/jarJar/metadata.json @@ -0,0 +1,28 @@ +{ + "jars": [ + { + "identifier": { + "group": "dev.ryanhcode.sable-companion", + "artifact": "sable-companion-common-1.21.1" + }, + "version": { + "range": "[1.6.0,)", + "artifactVersion": "1.6.0" + }, + "path": "META-INF/jarjar/sable-companion-common-1.21.1-1.6.0.jar", + "isObfuscated": false + }, + { + "identifier": { + "group": "foundry.veil", + "artifact": "veil-neoforge-1.21.1" + }, + "version": { + "range": "[4.0.0,)", + "artifactVersion": "4.0.0" + }, + "path": "META-INF/jarjar/veil-neoforge-1.21.1-4.0.0.jar", + "isObfuscated": false + } + ] +} diff --git a/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/ats/accesstransformer.cfg b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/ats/accesstransformer.cfg new file mode 100644 index 0000000..e73e66f --- /dev/null +++ b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/ats/accesstransformer.cfg @@ -0,0 +1,544 @@ +public net.minecraft.advancements.CriteriaTriggers register(Ljava/lang/String;Lnet/minecraft/advancements/CriterionTrigger;)Lnet/minecraft/advancements/CriterionTrigger; # register +default net.minecraft.client.KeyMapping isDown # isDown +public-f net.minecraft.client.Options keyMappings # keyMappings +public net.minecraft.client.Options$FieldAccess +public net.minecraft.client.OptionInstance caption +public net.minecraft.client.OptionInstance toString +public net.minecraft.client.OptionInstance$ValueSet +public net.minecraft.client.gui.Gui$HeartType +protected net.minecraft.client.gui.components.AbstractButton SPRITES +protected net.minecraft.client.gui.components.AbstractSelectionList$Entry list # list +protected net.minecraft.client.gui.components.AbstractSliderButton getSprite()Lnet/minecraft/resources/ResourceLocation; # getSprite +protected net.minecraft.client.gui.components.AbstractSliderButton getHandleSprite()Lnet/minecraft/resources/ResourceLocation; # getHandleSprite +public net.minecraft.client.gui.components.AbstractWidget renderScrollingString(Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIII)V +public net.minecraft.client.gui.components.AbstractWidget renderScrollingString(Lnet/minecraft/client/gui/GuiGraphics;Lnet/minecraft/client/gui/Font;Lnet/minecraft/network/chat/Component;IIIIII)V +public net.minecraft.client.gui.screens.MenuScreens$ScreenConstructor +public net.minecraft.client.gui.screens.Screen renderables # renderables +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen getHumanReadableTitle(Lnet/minecraft/server/packs/repository/Pack;)Lnet/minecraft/network/chat/Component; +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen INFO +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen layout +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen onDone()V +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen MAIN_CONTENT_WIDTH +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen packs +protected net.minecraft.client.gui.screens.worldselection.ExperimentsScreen TITLE +public net.minecraft.client.model.geom.LayerDefinitions OUTER_ARMOR_DEFORMATION # OUTER_ARMOR_DEFORMATION +public net.minecraft.client.model.geom.LayerDefinitions INNER_ARMOR_DEFORMATION # INNER_ARMOR_DEFORMATION +public net.minecraft.client.multiplayer.ClientPacketListener commands # commands +public net.minecraft.client.multiplayer.SessionSearchTrees CREATIVE_NAMES +public net.minecraft.client.multiplayer.SessionSearchTrees CREATIVE_TAGS +public net.minecraft.client.multiplayer.SessionSearchTrees$Key +public net.minecraft.client.multiplayer.SessionSearchTrees$Key ()V +public net.minecraft.client.particle.FireworkParticles$Starter createParticle(DDDDDDLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V # createParticle +public net.minecraft.client.particle.FireworkParticles$Starter createParticleBall(DILit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V # createParticleBall +public net.minecraft.client.particle.FireworkParticles$Starter createParticleShape(D[[DLit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZZ)V # createParticleShape +public net.minecraft.client.particle.FireworkParticles$Starter createParticleBurst(Lit/unimi/dsi/fastutil/ints/IntList;Lit/unimi/dsi/fastutil/ints/IntList;ZZ)V # createParticleBurst +public net.minecraft.client.particle.ParticleEngine register(Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleEngine$SpriteParticleRegistration;)V # register +public net.minecraft.client.particle.ParticleEngine register(Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider;)V # register +public net.minecraft.client.particle.ParticleEngine register(Lnet/minecraft/core/particles/ParticleType;Lnet/minecraft/client/particle/ParticleProvider$Sprite;)V # register +public net.minecraft.client.particle.ParticleEngine$SpriteParticleRegistration +public net.minecraft.client.player.LocalPlayer getPermissionLevel()I # getPermissionLevel +public net.minecraft.client.renderer.GameRenderer loadEffect(Lnet/minecraft/resources/ResourceLocation;)V # loadEffect +public net.minecraft.client.renderer.LevelRenderer shouldShowEntityOutlines()Z # shouldShowEntityOutlines +#group RenderType +public net.minecraft.client.renderer.RenderType * +public net.minecraft.client.renderer.RenderType create(Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;ILnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; +public net.minecraft.client.renderer.RenderType create(Ljava/lang/String;Lcom/mojang/blaze3d/vertex/VertexFormat;Lcom/mojang/blaze3d/vertex/VertexFormat$Mode;IZZLnet/minecraft/client/renderer/RenderType$CompositeState;)Lnet/minecraft/client/renderer/RenderType$CompositeRenderType; # create +public net.minecraft.client.renderer.RenderType$OutlineProperty +public net.minecraft.client.renderer.RenderType$CompositeState +public net.minecraft.client.renderer.RenderStateShard * +protected-f net.minecraft.client.renderer.RenderStateShard$TextureStateShard blur # blur +protected-f net.minecraft.client.renderer.RenderStateShard$TextureStateShard mipmap # mipmap +public net.minecraft.client.renderer.RenderStateShard setupGlintTexturing(F)V +public net.minecraft.client.renderer.RenderStateShard$BooleanStateShard +public net.minecraft.client.renderer.RenderStateShard$ColorLogicStateShard +public net.minecraft.client.renderer.RenderStateShard$CullStateShard +public net.minecraft.client.renderer.RenderStateShard$DepthTestStateShard +public net.minecraft.client.renderer.RenderStateShard$EmptyTextureStateShard +public net.minecraft.client.renderer.RenderStateShard$LayeringStateShard +public net.minecraft.client.renderer.RenderStateShard$LightmapStateShard +public net.minecraft.client.renderer.RenderStateShard$LineStateShard +public net.minecraft.client.renderer.RenderStateShard$MultiTextureStateShard +public net.minecraft.client.renderer.RenderStateShard$OffsetTexturingStateShard +public net.minecraft.client.renderer.RenderStateShard$OutputStateShard +public net.minecraft.client.renderer.RenderStateShard$OverlayStateShard +public net.minecraft.client.renderer.RenderStateShard$ShaderStateShard +public net.minecraft.client.renderer.RenderStateShard$TextureStateShard +public net.minecraft.client.renderer.RenderStateShard$TexturingStateShard +public net.minecraft.client.renderer.RenderStateShard$TransparencyStateShard +public net.minecraft.client.renderer.RenderStateShard$WriteMaskStateShard +#endgroup +default net.minecraft.client.renderer.chunk.RenderChunk wrapped +public net.minecraft.client.renderer.block.model.BlockElement uvsByFace(Lnet/minecraft/core/Direction;)[F # uvsByFace +public net.minecraft.client.renderer.block.model.BlockElement$Deserializer +public net.minecraft.client.renderer.block.model.BlockElement$Deserializer ()V # constructor +public net.minecraft.client.renderer.block.model.BlockElementFace$Deserializer +public net.minecraft.client.renderer.block.model.BlockElementFace$Deserializer ()V # constructor +public net.minecraft.client.renderer.block.model.BlockFaceUV$Deserializer +public net.minecraft.client.renderer.block.model.BlockFaceUV$Deserializer ()V # constructor +public net.minecraft.client.renderer.block.model.BlockModel textureMap # textureMap +public net.minecraft.client.renderer.block.model.BlockModel parent # parent +public net.minecraft.client.renderer.block.model.BlockModel hasAmbientOcclusion # hasAmbientOcclusion +public net.minecraft.client.renderer.block.model.BlockModel bakeFace(Lnet/minecraft/client/renderer/block/model/BlockElement;Lnet/minecraft/client/renderer/block/model/BlockElementFace;Lnet/minecraft/client/renderer/texture/TextureAtlasSprite;Lnet/minecraft/core/Direction;Lnet/minecraft/client/resources/model/ModelState;)Lnet/minecraft/client/renderer/block/model/BakedQuad; # bakeFace +public net.minecraft.client.renderer.block.model.ItemModelGenerator processFrames(ILjava/lang/String;Lnet/minecraft/client/renderer/texture/SpriteContents;)Ljava/util/List; # processFrames +public net.minecraft.client.renderer.block.model.ItemOverride$Deserializer +public net.minecraft.client.renderer.block.model.ItemOverride$Deserializer ()V # constructor +protected net.minecraft.client.renderer.block.model.ItemOverrides ()V # constructor +public net.minecraft.client.renderer.block.model.ItemOverrides$BakedOverride +public net.minecraft.client.renderer.block.model.ItemTransform$Deserializer +public net.minecraft.client.renderer.block.model.ItemTransform$Deserializer ()V # constructor +public net.minecraft.client.renderer.block.model.ItemTransform$Deserializer DEFAULT_ROTATION # DEFAULT_ROTATION +public net.minecraft.client.renderer.block.model.ItemTransform$Deserializer DEFAULT_TRANSLATION # DEFAULT_TRANSLATION +public net.minecraft.client.renderer.block.model.ItemTransform$Deserializer DEFAULT_SCALE # DEFAULT_SCALE +public net.minecraft.client.renderer.block.model.ItemTransforms$Deserializer +public net.minecraft.client.renderer.block.model.ItemTransforms$Deserializer ()V # constructor +public net.minecraft.client.renderer.blockentity.BlockEntityRenderers register(Lnet/minecraft/world/level/block/entity/BlockEntityType;Lnet/minecraft/client/renderer/blockentity/BlockEntityRendererProvider;)V # register +public net.minecraft.client.renderer.blockentity.SkullBlockRenderer SKIN_BY_TYPE # SKIN_BY_TYPE +public net.minecraft.client.renderer.entity.EntityRenderers register(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/client/renderer/entity/EntityRendererProvider;)V # register +public net.minecraft.client.renderer.entity.ItemRenderer renderQuadList(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Ljava/util/List;Lnet/minecraft/world/item/ItemStack;II)V # renderQuadList +public net.minecraft.client.renderer.entity.ItemRenderer renderModelLists(Lnet/minecraft/client/resources/model/BakedModel;Lnet/minecraft/world/item/ItemStack;IILcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;)V # renderModelLists +public net.minecraft.client.renderer.entity.LivingEntityRenderer addLayer(Lnet/minecraft/client/renderer/entity/layers/RenderLayer;)Z # addLayer +public net.minecraft.client.renderer.texture.SpriteContents byMipLevel # byMipLevel +default net.minecraft.client.renderer.texture.SpriteContents animatedTexture # animatedTexture +public net.minecraft.client.renderer.texture.atlas.sources.PalettedPermutations (Ljava/util/List;Lnet/minecraft/resources/ResourceLocation;Ljava/util/Map;)V # constructor +public net.minecraft.client.renderer.texture.atlas.sources.PalettedPermutations$PalettedSpriteSupplier +public net.minecraft.client.renderer.texture.atlas.sources.PalettedPermutations$PalettedSpriteSupplier (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Ljava/util/function/Supplier;Lnet/minecraft/resources/ResourceLocation;)V # constructor +public net.minecraft.client.renderer.texture.atlas.sources.Unstitcher$Region +public net.minecraft.client.renderer.texture.atlas.sources.Unstitcher$Region (Lnet/minecraft/resources/ResourceLocation;DDDD)V # constructor +public net.minecraft.client.renderer.texture.atlas.sources.Unstitcher$RegionInstance +public net.minecraft.client.renderer.texture.atlas.sources.Unstitcher$RegionInstance (Lnet/minecraft/client/renderer/texture/atlas/sources/LazyLoadedImage;Lnet/minecraft/client/renderer/texture/atlas/sources/Unstitcher$Region;DD)V # constructor +public net.minecraft.client.resources.ClientPackSource createVanillaPackSource(Ljava/nio/file/Path;)Lnet/minecraft/server/packs/VanillaPackResources; # createVanillaPackSource +protected net.minecraft.client.resources.TextureAtlasHolder textureAtlas # textureAtlas +public net.minecraft.client.resources.model.SimpleBakedModel$Builder (ZZZLnet/minecraft/client/renderer/block/model/ItemTransforms;Lnet/minecraft/client/renderer/block/model/ItemOverrides;)V # constructor +public net.minecraft.client.sounds.SoundEngine soundManager # soundManager +public net.minecraft.commands.CommandSourceStack source # source +public net.minecraft.commands.arguments.selector.EntitySelectorParser finalizePredicates()V # finalizePredicates +public net.minecraft.commands.arguments.selector.EntitySelectorParser parseOptions()V # parseOptions +public net.minecraft.commands.arguments.selector.options.EntitySelectorOptions register(Ljava/lang/String;Lnet/minecraft/commands/arguments/selector/options/EntitySelectorOptions$Modifier;Ljava/util/function/Predicate;Lnet/minecraft/network/chat/Component;)V # register +protected net.minecraft.core.IdMapper nextId # nextId +protected net.minecraft.core.IdMapper tToId # tToId - internal map +protected net.minecraft.core.IdMapper idToT # idToT - internal index list +public net.minecraft.core.particles.SimpleParticleType (Z)V # constructor +public net.minecraft.data.models.ItemModelGenerators GENERATED_TRIM_MODELS +public net.minecraft.data.models.ItemModelGenerators$TrimModelData +public net.minecraft.data.models.ItemModelGenerators$TrimModelData (Ljava/lang/String;FLjava/util/Map;)V +protected net.minecraft.data.loot.BlockLootSubProvider createSilkTouchOnlyTable(Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; # createSilkTouchOnlyTable +protected net.minecraft.data.loot.BlockLootSubProvider createPotFlowerItemTable(Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; # createPotFlowerItemTable +protected net.minecraft.data.loot.BlockLootSubProvider createSelfDropDispatchTable(Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/storage/loot/predicates/LootItemCondition$Builder;Lnet/minecraft/world/level/storage/loot/entries/LootPoolEntryContainer$Builder;)Lnet/minecraft/world/level/storage/loot/LootTable$Builder; # createSelfDropDispatchTable +protected net.minecraft.data.loot.EntityLootSubProvider canHaveLootTable(Lnet/minecraft/world/entity/EntityType;)Z # canHaveLootTable +protected net.minecraft.data.recipes.RecipeProvider recipePathProvider # recipePathProvider +protected net.minecraft.data.recipes.RecipeProvider advancementPathProvider # advancementPathProvider +protected net.minecraft.data.recipes.RecipeProvider insideOf(Lnet/minecraft/world/level/block/Block;)Lnet/minecraft/advancements/Criterion; # insideOf +protected net.minecraft.data.recipes.RecipeProvider inventoryTrigger([Lnet/minecraft/advancements/critereon/ItemPredicate;)Lnet/minecraft/advancements/Criterion; # inventoryTrigger +protected net.minecraft.data.recipes.RecipeProvider has(Lnet/minecraft/advancements/critereon/MinMaxBounds$Ints;Lnet/minecraft/world/level/ItemLike;)Lnet/minecraft/advancements/Criterion; # has +protected net.minecraft.data.recipes.RecipeProvider getBaseBlock(Lnet/minecraft/data/BlockFamily;Lnet/minecraft/data/BlockFamily$Variant;)Lnet/minecraft/world/level/block/Block; # getBaseBlock +protected net.minecraft.data.recipes.RecipeProvider buttonBuilder(Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # buttonBuilder +protected net.minecraft.data.recipes.RecipeProvider fenceBuilder(Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # fenceBuilder +protected net.minecraft.data.recipes.RecipeProvider fenceGateBuilder(Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # fenceGateBuilder +protected net.minecraft.data.recipes.RecipeProvider signBuilder(Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # signBuilder +protected net.minecraft.data.recipes.RecipeProvider smeltingResultFromBase(Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;)V # smeltingResultFromBase +protected net.minecraft.data.recipes.RecipeProvider cutBuilder(Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/ShapedRecipeBuilder; # cutBuilder +protected net.minecraft.data.recipes.RecipeProvider oreCooking(Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;Ljava/util/List;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;FILjava/lang/String;Ljava/lang/String;)V # oreCooking +protected net.minecraft.data.recipes.RecipeProvider wallBuilder(Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # wallBuilder +protected net.minecraft.data.recipes.RecipeProvider polishedBuilder(Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # polishedBuilder +protected net.minecraft.data.recipes.RecipeProvider pressurePlateBuilder(Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/item/crafting/Ingredient;)Lnet/minecraft/data/recipes/RecipeBuilder; # pressurePlateBuilder +protected net.minecraft.data.recipes.RecipeProvider nineBlockStorageRecipes(Lnet/minecraft/data/recipes/RecipeOutput;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Lnet/minecraft/data/recipes/RecipeCategory;Lnet/minecraft/world/level/ItemLike;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V # nineBlockStorageRecipes +protected net.minecraft.data.recipes.RecipeProvider simpleCookingRecipe(Lnet/minecraft/data/recipes/RecipeOutput;Ljava/lang/String;Lnet/minecraft/world/item/crafting/RecipeSerializer;Lnet/minecraft/world/item/crafting/AbstractCookingRecipe$Factory;ILnet/minecraft/world/level/ItemLike;Lnet/minecraft/world/level/ItemLike;F)V # simpleCookingRecipe +protected net.minecraft.data.recipes.RecipeProvider inventoryTrigger([Lnet/minecraft/advancements/critereon/ItemPredicate$Builder;)Lnet/minecraft/advancements/Criterion; # inventoryTrigger +public net.minecraft.data.recipes.packs.VanillaRecipeProvider COAL_SMELTABLES # COAL_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider IRON_SMELTABLES # IRON_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider COPPER_SMELTABLES # COPPER_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider DIAMOND_SMELTABLES # DIAMOND_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider GOLD_SMELTABLES # GOLD_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider EMERALD_SMELTABLES # EMERALD_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider REDSTONE_SMELTABLES # REDSTONE_SMELTABLES +public net.minecraft.data.recipes.packs.VanillaRecipeProvider LAPIS_SMELTABLES # LAPIS_SMELTABLES +public-f net.minecraft.data.registries.RegistriesDatapackGenerator getName()Ljava/lang/String; # getName +public net.minecraft.data.tags.IntrinsicHolderTagsProvider$IntrinsicTagAppender +protected net.minecraft.data.tags.TagsProvider builders # builders +public-f net.minecraft.data.tags.TagsProvider getName()Ljava/lang/String; # getName +public net.minecraft.data.tags.TagsProvider$TagAppender +public net.minecraft.gametest.framework.GameTestHelper testInfo # testInfo +public net.minecraft.gametest.framework.GameTestInfo sequences # sequences +public net.minecraft.gametest.framework.GameTestSequence (Lnet/minecraft/gametest/framework/GameTestInfo;)V # +protected net.minecraft.resources.RegistryOps (Lcom/mojang/serialization/DynamicOps;Lnet/minecraft/resources/RegistryOps$RegistryInfoLookup;)V # constructor +public net.minecraft.resources.RegistryOps lookupProvider +public net.minecraft.resources.RegistryOps$HolderLookupAdapter +public net.minecraft.resources.RegistryOps$HolderLookupAdapter lookupProvider +public net.minecraft.resources.ResourceLocation validNamespaceChar(C)Z # validNamespaceChar +protected net.minecraft.server.MinecraftServer nextTickTimeNanos # nextTickTimeNanos +public net.minecraft.server.MinecraftServer$ReloadableResources +public net.minecraft.server.MinecraftServer$ReloadableResources (Lnet/minecraft/server/packs/resources/CloseableResourceManager;Lnet/minecraft/server/ReloadableServerResources;)V +public net.minecraft.server.level.ChunkMap getVisibleChunkIfPresent(J)Lnet/minecraft/server/level/ChunkHolder; +public net.minecraft.server.level.ServerChunkCache level # level +public net.minecraft.server.level.ServerLevel getEntities()Lnet/minecraft/world/level/entity/LevelEntityGetter; # getEntities +public net.minecraft.server.level.ServerPlayer checkRidingStatistics(DDD)V # checkRidingStatistics +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle +public net.minecraft.server.level.ServerPlayer$RespawnPosAngle (Lnet/minecraft/world/phys/Vec3;F)V +public net.minecraft.server.packs.FilePackResources (Lnet/minecraft/server/packs/PackLocationInfo;Lnet/minecraft/server/packs/FilePackResources$SharedZipFileAccess;Ljava/lang/String;)V # constructor +public net.minecraft.server.packs.FilePackResources$SharedZipFileAccess +public net.minecraft.server.packs.FilePackResources$SharedZipFileAccess (Ljava/io/File;)V # constructor +public net.minecraft.server.packs.OverlayMetadataSection$OverlayEntry CODEC # CODEC +public net.minecraft.server.packs.repository.BuiltInPackSource fixedResources(Lnet/minecraft/server/packs/PackResources;)Lnet/minecraft/server/packs/repository/Pack$ResourcesSupplier; # fixedResources +public net.minecraft.server.packs.repository.Pack getDeclaredPackVersions(Ljava/lang/String;Lnet/minecraft/server/packs/metadata/pack/PackMetadataSection;)Lnet/minecraft/util/InclusiveRange; # getDeclaredPackVersions +public net.minecraft.server.packs.repository.PackRepository rebuildSelected(Ljava/util/Collection;)Ljava/util/List; # rebuildSelected +public net.minecraft.server.packs.resources.FallbackResourceManager fallbacks # fallbacks +public net.minecraft.util.datafix.fixes.StructuresBecomeConfiguredFix$Conversion +public net.minecraft.util.datafix.fixes.StructuresBecomeConfiguredFix$Conversion (Ljava/util/Map;Ljava/lang/String;)V +public net.minecraft.util.thread.BlockableEventLoop submitAsync(Ljava/lang/Runnable;)Ljava/util/concurrent/CompletableFuture; # submitAsync +public net.minecraft.world.damagesource.CombatTracker INTENTIONAL_GAME_DESIGN_STYLE # INTENTIONAL_GAME_DESIGN_STYLE +public net.minecraft.world.damagesource.CombatTracker getMostSignificantFall()Lnet/minecraft/world/damagesource/CombatEntry; # getMostSignificantFall +public net.minecraft.world.damagesource.CombatTracker getFallMessage(Lnet/minecraft/world/damagesource/CombatEntry;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/network/chat/Component; # getFallMessage +#group public net.minecraft.world.damagesource.DamageSource *() #All methods public, most are already +public net.minecraft.world.damagesource.DamageSource (Lnet/minecraft/core/Holder;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)V # constructor +#endgroup +public net.minecraft.world.damagesource.DamageSources source(Lnet/minecraft/resources/ResourceKey;)Lnet/minecraft/world/damagesource/DamageSource; # source +public net.minecraft.world.damagesource.DamageSources source(Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; # source +public net.minecraft.world.damagesource.DamageSources source(Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/entity/Entity;)Lnet/minecraft/world/damagesource/DamageSource; # source +public net.minecraft.world.damagesource.DamageSources damageTypes # damageTypes +public net.minecraft.world.effect.MobEffect$AttributeTemplate (Lnet/minecraft/resources/ResourceLocation;DLnet/minecraft/world/entity/ai/attributes/AttributeModifier$Operation;)V # constructor +public net.minecraft.world.effect.MobEffect$AttributeTemplate # AttributeTemplate +protected net.minecraft.world.entity.Entity ENTITY_COUNTER # ENTITY_COUNTER +public net.minecraft.world.entity.Entity getEncodeId()Ljava/lang/String; # getEncodeId +public net.minecraft.world.entity.ExperienceOrb value # value +public net.minecraft.world.entity.LivingEntity getCurrentSwingDuration()I # getCurrentSwingDuration +public net.minecraft.world.entity.LivingEntity getHitbox()Lnet/minecraft/world/phys/AABB; # getHitbox +public net.minecraft.world.entity.Mob goalSelector # goalSelector +public net.minecraft.world.entity.Mob targetSelector # targetSelector +public net.minecraft.world.entity.ai.sensing.SensorType (Ljava/util/function/Supplier;)V # constructor +protected net.minecraft.world.entity.item.PrimedTnt explode()V # explode - make it easier to extend TNTEntity with custom explosion logic +protected net.minecraft.world.entity.monster.AbstractSkeleton getStepSound()Lnet/minecraft/sounds/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +protected net.minecraft.world.entity.monster.Skeleton getStepSound()Lnet/minecraft/sounds/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +protected net.minecraft.world.entity.monster.Stray getStepSound()Lnet/minecraft/sounds/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +protected net.minecraft.world.entity.monster.WitherSkeleton getStepSound()Lnet/minecraft/sounds/SoundEvent; # getStepSound - make AbstractSkeletonEntity implementable +public net.minecraft.world.entity.npc.VillagerTrades$DyedArmorForEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$EmeraldForItems +public net.minecraft.world.entity.npc.VillagerTrades$EmeraldsForVillagerTypeItem +public net.minecraft.world.entity.npc.VillagerTrades$EnchantBookForEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$EnchantedItemForEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$FailureItemListing +public net.minecraft.world.entity.npc.VillagerTrades$ItemsAndEmeraldsToItems +public net.minecraft.world.entity.npc.VillagerTrades$ItemsForEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$SuspiciousStewForEmerald +public net.minecraft.world.entity.npc.VillagerTrades$TippedArrowForItemsAndEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$TreasureMapForEmeralds +public net.minecraft.world.entity.npc.VillagerTrades$TypeSpecificTrade +public net.minecraft.world.entity.npc.VillagerTrades$TypeSpecificTrade (Ljava/util/Map;)V +public net.minecraft.world.entity.npc.VillagerType (Ljava/lang/String;)V # constructor +public net.minecraft.world.entity.player.Player closeContainer()V # closeContainer +protected net.minecraft.world.entity.projectile.Projectile (Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V # constructor +public net.minecraft.world.entity.raid.Raid$RaiderType +public net.minecraft.world.entity.schedule.Activity (Ljava/lang/String;)V # constructor +protected net.minecraft.world.entity.vehicle.VehicleEntity getDropItem()Lnet/minecraft/world/item/Item; # getDropItem - make VehicleEntity implementable +protected net.minecraft.world.entity.monster.Zombie conversionTime +public net.minecraft.world.inventory.AnvilMenu repairItemCountCost # repairItemCountCost +public net.minecraft.world.inventory.MenuType (Lnet/minecraft/world/inventory/MenuType$MenuSupplier;Lnet/minecraft/world/flag/FeatureFlagSet;)V # constructor +public net.minecraft.world.inventory.MenuType$MenuSupplier +public net.minecraft.world.item.CreativeModeTab$TabVisibility +public net.minecraft.world.item.CreativeModeTabs COLORED_BLOCKS # COLORED_BLOCKS +public net.minecraft.world.item.CreativeModeTabs SPAWN_EGGS # SPAWN_EGGS +public net.minecraft.world.item.CreativeModeTabs SEARCH # SEARCH +public net.minecraft.world.item.CreativeModeTabs NATURAL_BLOCKS # NATURAL_BLOCKS +public net.minecraft.world.item.CreativeModeTabs BUILDING_BLOCKS # BUILDING_BLOCKS +public net.minecraft.world.item.CreativeModeTabs FUNCTIONAL_BLOCKS # FUNCTIONAL_BLOCKS +public net.minecraft.world.item.CreativeModeTabs COMBAT # COMBAT +public net.minecraft.world.item.CreativeModeTabs OP_BLOCKS # OP_BLOCKS +public net.minecraft.world.item.CreativeModeTabs FOOD_AND_DRINKS # FOOD_AND_DRINKS +public net.minecraft.world.item.CreativeModeTabs TOOLS_AND_UTILITIES # TOOLS_AND_UTILITIES +public net.minecraft.world.item.CreativeModeTabs HOTBAR # HOTBAR +public net.minecraft.world.item.CreativeModeTabs INGREDIENTS # INGREDIENTS +public net.minecraft.world.item.CreativeModeTabs REDSTONE_BLOCKS # REDSTONE_BLOCKS +public net.minecraft.world.item.CreativeModeTabs INVENTORY # INVENTORY +#group public net.minecraft.world.item.Item +public net.minecraft.world.item.DiggerItem (Lnet/minecraft/world/item/Tier;Lnet/minecraft/tags/TagKey;Lnet/minecraft/world/item/Item$Properties;)V # constructor +#endgroup +private-f net.minecraft.world.item.Item components +public net.minecraft.world.item.BucketItem content +public net.minecraft.world.item.SwordItem createToolProperties()Lnet/minecraft/world/item/component/Tool; +public net.minecraft.world.item.Item getPlayerPOVHitResult(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/level/ClipContext$Fluid;)Lnet/minecraft/world/phys/BlockHitResult; # getPlayerPOVHitResult +public net.minecraft.world.item.ItemStack addToTooltip(Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/world/item/Item$TooltipContext;Ljava/util/function/Consumer;Lnet/minecraft/world/item/TooltipFlag;)V +public net.minecraft.world.item.ItemStackLinkedSet TYPE_AND_TAG # TYPE_AND_TAG +public net.minecraft.world.item.context.BlockPlaceContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V # constructor +public net.minecraft.world.item.context.UseOnContext (Lnet/minecraft/world/level/Level;Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/InteractionHand;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/phys/BlockHitResult;)V # constructor +public net.minecraft.world.item.crafting.Ingredient fromValues(Ljava/util/stream/Stream;)Lnet/minecraft/world/item/crafting/Ingredient; # fromValues +public net.minecraft.world.item.crafting.Ingredient$ItemValue +public net.minecraft.world.item.crafting.Ingredient$ItemValue (Lnet/minecraft/world/item/ItemStack;)V # constructor +public net.minecraft.world.item.crafting.Ingredient$TagValue +public net.minecraft.world.item.crafting.Ingredient$TagValue (Lnet/minecraft/tags/TagKey;)V # constructor +public net.minecraft.world.item.crafting.Ingredient$Value +public net.minecraft.world.item.crafting.ShapedRecipe pattern # pattern +public net.minecraft.world.level.GameRules register(Ljava/lang/String;Lnet/minecraft/world/level/GameRules$Category;Lnet/minecraft/world/level/GameRules$Type;)Lnet/minecraft/world/level/GameRules$Key; # register +public net.minecraft.world.level.GameRules$BooleanValue create(Z)Lnet/minecraft/world/level/GameRules$Type; # create +public net.minecraft.world.level.GameRules$BooleanValue create(ZLjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; # create +public net.minecraft.world.level.GameRules$IntegerValue create(ILjava/util/function/BiConsumer;)Lnet/minecraft/world/level/GameRules$Type; # create +public net.minecraft.world.level.GameRules$IntegerValue create(I)Lnet/minecraft/world/level/GameRules$Type; # create +public net.minecraft.world.level.Level oRainLevel # oRainLevel +public net.minecraft.world.level.Level rainLevel # rainLevel +public net.minecraft.world.level.Level oThunderLevel # oThunderLevel +public net.minecraft.world.level.Level thunderLevel # thunderLevel +public net.minecraft.world.level.biome.Biome$ClimateSettings +public net.minecraft.world.level.biome.Biome$ClimateSettings (ZFLnet/minecraft/world/level/biome/Biome$TemperatureModifier;F)V +public net.minecraft.world.level.biome.BiomeGenerationSettings (Ljava/util/Map;Ljava/util/List;)V # constructor +protected net.minecraft.world.level.biome.BiomeGenerationSettings$PlainBuilder features # features +protected net.minecraft.world.level.biome.BiomeGenerationSettings$PlainBuilder carvers # carvers +protected net.minecraft.world.level.biome.BiomeGenerationSettings$PlainBuilder addFeatureStepsUpTo(I)V # addFeatureStepsUpTo +#group protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder * +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder fogColor # fogColor +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder waterColor # waterColor +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder waterFogColor # waterFogColor +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder skyColor # skyColor +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder foliageColorOverride # foliageColorOverride +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder grassColorOverride # grassColorOverride +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder grassColorModifier # grassColorModifier +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder ambientParticle # ambientParticle +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder ambientLoopSoundEvent # ambientLoopSoundEvent +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder ambientMoodSettings # ambientMoodSettings +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder ambientAdditionsSettings # ambientAdditionsSettings +protected net.minecraft.world.level.biome.BiomeSpecialEffects$Builder backgroundMusic # backgroundMusic +#endgroup +protected net.minecraft.world.level.biome.MobSpawnSettings$Builder spawners # spawners +protected net.minecraft.world.level.biome.MobSpawnSettings$Builder mobSpawnCosts # mobSpawnCosts +protected net.minecraft.world.level.biome.MobSpawnSettings$Builder creatureGenerationProbability # creatureGenerationProbability +#group public net.minecraft.world.level.block.Block +public net.minecraft.world.level.block.AttachedStemBlock (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.AzaleaBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BarrierBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BaseCoralFanBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BaseCoralPlantBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BaseCoralPlantTypeBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BaseCoralWallFanBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BigDripleafBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BigDripleafStemBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.BlastFurnaceBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.ButtonBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;ILnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CactusBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CakeBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CandleCakeBlock (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CartographyTableBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CarvedPumpkinBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.ChestBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;Ljava/util/function/Supplier;)V # constructor +public net.minecraft.world.level.block.ChorusFlowerBlock (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.ChorusPlantBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CoralFanBlock (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CoralPlantBlock (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CoralWallFanBlock (Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CraftingTableBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.CropBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.DeadBushBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.DecoratedPotBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.DirtPathBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.DispenserBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.DoorBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EnchantingTableBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EndGatewayBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EndPortalBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EndRodBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EnderChestBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.EquipableCarvedPumpkinBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.FarmBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.FletchingTableBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.FungusBlock (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/Block;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.FurnaceBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.GrindstoneBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.HalfTransparentBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.HangingRootsBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.IronBarsBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.JigsawBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.JukeboxBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.KelpBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.KelpPlantBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.LadderBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.LecternBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.LeverBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.LiquidBlock (Lnet/minecraft/world/level/material/FlowingFluid;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.LoomBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.MangroveRootsBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.NetherWartBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.NyliumBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PinkPetalsBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PipeBlock (FLnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PlayerHeadBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PlayerWallHeadBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PoweredRailBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PressurePlateBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.PumpkinBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RailBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RedstoneTorchBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RedstoneWallTorchBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RepeaterBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RodBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.RootsBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SaplingBlock (Lnet/minecraft/world/level/block/grower/TreeGrower;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.ScaffoldingBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SeaPickleBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SeagrassBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SkullBlock (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SmithingTableBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SmokerBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SnowLayerBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SnowyDirtBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SpawnerBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SpongeBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.StairBlock (Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.StemBlock (Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/resources/ResourceKey;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.StructureBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.StructureVoidBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.SugarCaneBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.TallGrassBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.TorchBlock (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.TransparentBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.TrapDoorBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WallSkullBlock (Lnet/minecraft/world/level/block/SkullBlock$Type;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WallTorchBlock (Lnet/minecraft/core/particles/SimpleParticleType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WaterlilyBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WaterloggedTransparentBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WeatheringCopperDoorBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WeatheringCopperGrateBlock (Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WeatheringCopperTrapDoorBlock (Lnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/WeatheringCopper$WeatherState;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WeightedPressurePlateBlock (ILnet/minecraft/world/level/block/state/properties/BlockSetType;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WetSpongeBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WitherSkullBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WitherWallSkullBlock (Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +public net.minecraft.world.level.block.WoolCarpetBlock (Lnet/minecraft/world/item/DyeColor;Lnet/minecraft/world/level/block/state/BlockBehaviour$Properties;)V # constructor +#endgroup +public net.minecraft.world.level.block.Block popExperience(Lnet/minecraft/server/level/ServerLevel;Lnet/minecraft/core/BlockPos;I)V # popExperience +public net.minecraft.world.level.block.Blocks always(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; # always +public net.minecraft.world.level.block.Blocks never(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; # never +public net.minecraft.world.level.block.Blocks ocelotOrParrot(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/entity/EntityType;)Ljava/lang/Boolean; # ocelotOrParro +public net.minecraft.world.level.block.CropBlock hasSufficientLight(Lnet/minecraft/world/level/LevelReader;Lnet/minecraft/core/BlockPos;)Z # hasSufficientLight +public net.minecraft.world.level.block.FireBlock getBurnOdds(Lnet/minecraft/world/level/block/state/BlockState;)I # getBurnOdds +public net.minecraft.world.level.block.FireBlock getIgniteOdds(Lnet/minecraft/world/level/block/state/BlockState;)I # getIgniteOdds +public net.minecraft.world.level.block.LiquidBlock fluid +public net.minecraft.world.level.block.PointedDripstoneBlock LAVA_TRANSFER_PROBABILITY_PER_RANDOM_TICK # LAVA_TRANSFER_PROBABILITY_PER_RANDOM_TICK +public net.minecraft.world.level.block.PointedDripstoneBlock WATER_TRANSFER_PROBABILITY_PER_RANDOM_TICK # WATER_TRANSFER_PROBABILITY_PER_RANDOM_TICK +public net.minecraft.world.level.block.entity.BlockEntityType$BlockEntitySupplier +public net.minecraft.world.level.block.entity.HopperBlockEntity setCooldown(I)V # setCooldown +public net.minecraft.world.level.block.entity.HopperBlockEntity isOnCustomCooldown()Z # isOnCustomCooldown +public net.minecraft.world.level.block.state.BlockBehaviour propertiesCodec()Lcom/mojang/serialization/codecs/RecordCodecBuilder; +public net.minecraft.world.level.block.state.properties.BlockSetType register(Lnet/minecraft/world/level/block/state/properties/BlockSetType;)Lnet/minecraft/world/level/block/state/properties/BlockSetType; # register +public net.minecraft.world.level.block.state.properties.WoodType register(Lnet/minecraft/world/level/block/state/properties/WoodType;)Lnet/minecraft/world/level/block/state/properties/WoodType; # register +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer barrierNoise # barrierNoise +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer lavaNoise # lavaNoise +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer aquiferCache # aquiferCache +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer aquiferLocationCache # aquiferLocationCache +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer shouldScheduleFluidUpdate # shouldScheduleFluidUpdate +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer minGridX # minGridX +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer minGridY # minGridY +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer minGridZ # minGridZ +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer gridSizeX # gridSizeX +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer gridSizeZ # gridSizeZ +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer similarity(II)D # similarity +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer getIndex(III)I # getIndex +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer gridX(I)I # gridX +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer gridY(I)I # gridY +protected net.minecraft.world.level.levelgen.Aquifer$NoiseBasedAquifer gridZ(I)I # gridZ +protected net.minecraft.world.level.levelgen.Beardifier pieceIterator # pieceIterator +protected net.minecraft.world.level.levelgen.Beardifier junctionIterator # junctionIterator +protected net.minecraft.world.level.levelgen.Beardifier getBuryContribution(DDD)D # getBuryContribution +protected net.minecraft.world.level.levelgen.Beardifier getBeardContribution(IIII)D # getBeardContribution +private-f net.minecraft.world.level.levelgen.DebugLevelSource ALL_BLOCKS # ALL_BLOCKS +private-f net.minecraft.world.level.levelgen.DebugLevelSource GRID_WIDTH # GRID_WIDTH +private-f net.minecraft.world.level.levelgen.DebugLevelSource GRID_HEIGHT # GRID_HEIGHT +public-f net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator +protected net.minecraft.world.level.levelgen.NoiseBasedChunkGenerator iterateNoiseColumn(Lnet/minecraft/world/level/LevelHeightAccessor;Lnet/minecraft/world/level/levelgen/RandomState;IILorg/apache/commons/lang3/mutable/MutableObject;Ljava/util/function/Predicate;)Ljava/util/OptionalInt; # iterateNoiseColumn +#group public net.minecraft.world.level.levelgen.NoiseGeneratorSettings *() +public net.minecraft.world.level.levelgen.NoiseGeneratorSettings caves(Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; # caves +public net.minecraft.world.level.levelgen.NoiseGeneratorSettings end(Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; # end +public net.minecraft.world.level.levelgen.NoiseGeneratorSettings overworld(Lnet/minecraft/data/worldgen/BootstrapContext;ZZ)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; # overworld +public net.minecraft.world.level.levelgen.NoiseGeneratorSettings floatingIslands(Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; # floatingIslands +public net.minecraft.world.level.levelgen.NoiseGeneratorSettings nether(Lnet/minecraft/data/worldgen/BootstrapContext;)Lnet/minecraft/world/level/levelgen/NoiseGeneratorSettings; # nether +#endgroup +public net.minecraft.world.level.levelgen.feature.featuresize.FeatureSizeType (Lcom/mojang/serialization/MapCodec;)V # constructor +public net.minecraft.world.level.levelgen.feature.foliageplacers.FoliagePlacerType (Lcom/mojang/serialization/MapCodec;)V # constructor +public net.minecraft.world.level.levelgen.feature.rootplacers.RootPlacerType (Lcom/mojang/serialization/MapCodec;)V # constructor +public net.minecraft.world.level.levelgen.feature.stateproviders.BlockStateProviderType (Lcom/mojang/serialization/MapCodec;)V # constructor +public net.minecraft.world.level.levelgen.feature.treedecorators.TreeDecoratorType (Lcom/mojang/serialization/MapCodec;)V # constructor +public net.minecraft.world.level.levelgen.feature.trunkplacers.TrunkPlacerType (Lcom/mojang/serialization/MapCodec;)V # constructor +protected net.minecraft.world.level.portal.PortalForcer level # level +public net.minecraft.world.level.saveddata.maps.MapItemSavedData addDecoration(Lnet/minecraft/core/Holder;Lnet/minecraft/world/level/LevelAccessor;Ljava/lang/String;DDDLnet/minecraft/network/chat/Component;)V +public net.minecraft.world.level.saveddata.maps.MapItemSavedData removeDecoration(Ljava/lang/String;)V +public net.minecraft.world.level.storage.LevelResource (Ljava/lang/String;)V # constructor +private-f net.minecraft.world.level.storage.loot.LootPool rolls # rolls +private-f net.minecraft.world.level.storage.loot.LootPool bonusRolls # bonusRolls +public net.minecraft.server.network.ServerConfigurationPacketListenerImpl finishCurrentTask(Lnet/minecraft/server/network/ConfigurationTask$Type;)V +public com.mojang.blaze3d.vertex.VertexFormatElement$Usage$SetupState + +# Below you will find particle constructor ATs +protected net.minecraft.client.particle.AttackSweepParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.BlockMarker (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/block/state/BlockState;)V # constructor +protected net.minecraft.client.particle.BreakingItemParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/world/item/ItemStack;)V # constructor +protected net.minecraft.client.particle.BubbleColumnUpParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.BubbleParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.BubblePopParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.CampfireSmokeParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDZ)V # constructor +protected net.minecraft.client.particle.CritParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.DragonBreathParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.DripParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/material/Fluid;)V # constructor +protected net.minecraft.client.particle.EndRodParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.FallingDustParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDFFFLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.FireworkParticles$OverlayParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +protected net.minecraft.client.particle.FireworkParticles$SparkParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/ParticleEngine;Lnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.FlameParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.FlyStraightTowardsParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDII)V # constructor +protected net.minecraft.client.particle.FlyTowardsPositionParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.GlowParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.GustSeedParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDII)V # constructor +protected net.minecraft.client.particle.HeartParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +protected net.minecraft.client.particle.HugeExplosionSeedParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +protected net.minecraft.client.particle.LavaParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +protected net.minecraft.client.particle.MobAppearanceParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +protected net.minecraft.client.particle.NoteParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDD)V # constructor +protected net.minecraft.client.particle.PlayerCloudParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.ReversePortalParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.SculkChargeParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.SculkChargePopParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.ShriekParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDI)V # constructor +protected net.minecraft.client.particle.SoulParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.SpellParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.SpitParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.SplashParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.SquidInkParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDILnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.SuspendedParticle (Lnet/minecraft/client/multiplayer/ClientLevel;Lnet/minecraft/client/particle/SpriteSet;DDD)V # constructor +protected net.minecraft.client.particle.SuspendedTownParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDD)V # constructor +protected net.minecraft.client.particle.TotemParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.VibrationSignalParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDLnet/minecraft/world/level/gameevent/PositionSource;I)V # constructor +protected net.minecraft.client.particle.WakeParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDDDDDLnet/minecraft/client/particle/SpriteSet;)V # constructor +protected net.minecraft.client.particle.WaterCurrentDownParticle (Lnet/minecraft/client/multiplayer/ClientLevel;DDD)V # constructor +# End of particle constructor ATs group + +# EnchantmentHelper methods needed for adding custom enchantments +public net.minecraft.world.item.enchantment.EnchantmentHelper runIterationOnItem(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentVisitor;)V +public net.minecraft.world.item.enchantment.EnchantmentHelper runIterationOnItem(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/EquipmentSlot;Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V +public net.minecraft.world.item.enchantment.EnchantmentHelper runIterationOnEquipment(Lnet/minecraft/world/entity/LivingEntity;Lnet/minecraft/world/item/enchantment/EnchantmentHelper$EnchantmentInSlotVisitor;)V +public net.minecraft.world.item.enchantment.EnchantmentHelper getComponentType(Lnet/minecraft/world/item/ItemStack;)Lnet/minecraft/core/component/DataComponentType; +public net.minecraft.world.item.enchantment.EnchantmentHelper$EnchantmentInSlotVisitor +public net.minecraft.world.item.enchantment.EnchantmentHelper$EnchantmentVisitor + +# Enchantment methods needed for adding custom enchantments +public net.minecraft.world.item.enchantment.Enchantment modifyItemFilteredCount(Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lorg/apache/commons/lang3/mutable/MutableFloat;)V +public net.minecraft.world.item.enchantment.Enchantment modifyEntityFilteredValue(Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lorg/apache/commons/lang3/mutable/MutableFloat;)V +public net.minecraft.world.item.enchantment.Enchantment modifyDamageFilteredValue(Lnet/minecraft/core/component/DataComponentType;Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/entity/Entity;Lnet/minecraft/world/damagesource/DamageSource;Lorg/apache/commons/lang3/mutable/MutableFloat;)V +public net.minecraft.world.item.enchantment.Enchantment itemContext(Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/item/ItemStack;)Lnet/minecraft/world/level/storage/loot/LootContext; +public net.minecraft.world.item.enchantment.Enchantment locationContext(Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Z)Lnet/minecraft/world/level/storage/loot/LootContext; +public net.minecraft.world.item.enchantment.Enchantment entityContext(Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/level/storage/loot/LootContext; +public net.minecraft.world.item.enchantment.Enchantment blockHitContext(Lnet/minecraft/server/level/ServerLevel;ILnet/minecraft/world/entity/Entity;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/level/block/state/BlockState;)Lnet/minecraft/world/level/storage/loot/LootContext; +public net.minecraft.world.item.enchantment.Enchantment applyEffects(Ljava/util/List;Lnet/minecraft/world/level/storage/loot/LootContext;Ljava/util/function/Consumer;)V +# Made public for mc logo render in mods list +public net.minecraft.client.gui.components.LogoRenderer LOGO_TEXTURE_WIDTH +public net.minecraft.client.gui.components.LogoRenderer LOGO_TEXTURE_HEIGHT + +# Made public for datagenning these loot functions +public net.minecraft.world.level.storage.loot.functions.LootItemConditionalFunction simpleBuilder(Ljava/util/function/Function;)Lnet/minecraft/world/level/storage/loot/functions/LootItemConditionalFunction$Builder; # simpleBuilder +public net.minecraft.world.level.storage.loot.functions.FilteredFunction (Ljava/util/List;Lnet/minecraft/advancements/critereon/ItemPredicate;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V # +public net.minecraft.world.level.storage.loot.functions.ModifyContainerContents (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/ContainerComponentManipulator;Lnet/minecraft/world/level/storage/loot/functions/LootItemFunction;)V # +public net.minecraft.world.level.storage.loot.functions.SetCustomModelDataFunction (Ljava/util/List;Lnet/minecraft/world/level/storage/loot/providers/number/NumberProvider;)V # +public net.minecraft.world.level.storage.loot.functions.SetFireworksFunction (Ljava/util/List;Ljava/util/Optional;Ljava/util/Optional;)V # +public net.minecraft.world.level.storage.loot.functions.SetItemFunction (Ljava/util/List;Lnet/minecraft/core/Holder;)V # +public net.minecraft.world.level.storage.loot.functions.SetWritableBookPagesFunction (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V # +public net.minecraft.world.level.storage.loot.functions.SetWrittenBookPagesFunction (Ljava/util/List;Ljava/util/List;Lnet/minecraft/world/level/storage/loot/functions/ListOperation;)V # +public net.minecraft.world.level.storage.loot.functions.ToggleTooltips (Ljava/util/List;Ljava/util/Map;)V # + +# Splashes file location +public net.minecraft.client.resources.SplashManager SPLASHES_LOCATION + +# Default scoping texture +public net.minecraft.client.gui.Gui SPYGLASS_SCOPE_LOCATION diff --git a/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/console_output.txt b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/console_output.txt new file mode 100644 index 0000000..08c058d --- /dev/null +++ b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/console_output.txt @@ -0,0 +1,240 @@ +-------------------------------------------------------------------------------- + +Command-Line: + - C:\Users\user\.jdks\ms-21.0.8\bin\java.exe + - -jar + - C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged.jst\jst-cli-bundle\2.0.6\41bc2dcac9fe41493bee064a7e07b63a5d08348\jst-cli-bundle-2.0.6.jar + - --problems-report + - C:\Users\user\IdeaProjects\sable\neoforge\build\tmp\neoformruntime\20260511-113858_transformSources\problems.json + - --libraries-list + - ./libraries.txt + - --in-format + - ARCHIVE + - --out-format + - ARCHIVE + - --enable-accesstransformers + - --access-transformer + - ats\accesstransformer.cfg + - --access-transformer + - C:\Users\user\IdeaProjects\sable\common\src\main\resources\META-INF\accesstransformer.cfg + - --enable-parchment + - --parchment-mappings=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.parchmentmc.data\parchment-1.21\2024.11.10\4ad04bf9902dca40a36c40ee658fcfb02e53bb1b\parchment-1.21-2024.11.10.zip + - --parchment-conflict-prefix=p_ + - C:\Users\user\.gradle\caches\neoformruntime\intermediate_results\applyNeoforgePatches_69c0c490f6a5078f928f538fbdb229b45215761d_output.zip + - ./output.zip +-------------------------------------------------------------------------------- + +Loading mapping file C:\Users\user\.gradle\caches\modules-2\files-2.1\org.parchmentmc.data\parchment-1.21\2024.11.10\4ad04bf9902dca40a36c40ee658fcfb02e53bb1b\parchment-1.21-2024.11.10.zip +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.client.GlStateBackup +Failed to create binary representation for type net.neoforged.neoforge.client.GlStateBackup +Failed to create binary representation for type net.neoforged.neoforge.client.GlStateBackup +Failed to create binary representation for type net.neoforged.neoforge.client.GlStateBackup +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.IKeyConflictContext +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.neoforge.client.settings.KeyModifier +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.client.entity.animation.json.AnimationHolder +Failed to create binary representation for type net.neoforged.neoforge.client.entity.animation.json.AnimationHolder +Failed to create binary representation for type net.neoforged.neoforge.client.entity.animation.json.AnimationHolder +Failed to create binary representation for type net.neoforged.neoforge.client.entity.animation.json.AnimationHolder +Failed to create binary representation for type net.neoforged.neoforge.client.entity.animation.json.AnimationHolder +Failed to create binary representation for type net.neoforged.neoforge.client.IArmPoseTransformer +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.common.util.BlockSnapshot +Failed to create binary representation for type net.neoforged.neoforge.client.gui.CreativeTabsScreenPage +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelDataManager +Failed to create binary representation for type net.neoforged.neoforge.client.gui.CreativeTabsScreenPage +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.ExtraFaceData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.common.world.AuxiliaryLightManager +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.common.util.TriState +Failed to create binary representation for type net.neoforged.neoforge.client.RenderTypeGroup +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.common.util.TriState +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.ChunkRenderTypeSet +Failed to create binary representation for type net.neoforged.neoforge.client.model.data.ModelData +Failed to create binary representation for type net.neoforged.neoforge.client.RenderTypeGroup +Failed to create binary representation for type net.neoforged.neoforge.client.RenderTypeGroup +Failed to create binary representation for type net.neoforged.neoforge.client.textures.SpriteContentsConstructor +Failed to create binary representation for type net.neoforged.neoforge.registries.datamaps.DataMapType +Failed to create binary representation for type net.neoforged.neoforge.registries.datamaps.DataMapType +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.common.data.ExistingFileHelper +Failed to create binary representation for type net.neoforged.neoforge.common.conditions.ICondition.IContext +Failed to create binary representation for type net.neoforged.neoforge.network.bundle.PacketAndPayloadAcceptor +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.network.connection.ConnectionType +Failed to create binary representation for type net.neoforged.neoforge.common.damagesource.IScalingFunction +Failed to create binary representation for type net.neoforged.neoforge.common.damagesource.IScalingFunction +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.damagesource.IDeathMessageProvider +Failed to create binary representation for type net.neoforged.neoforge.common.damagesource.IDeathMessageProvider +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.capabilities.ICapabilityInvalidationListener +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.capabilities.ICapabilityInvalidationListener +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.capabilities.EntityCapability +Failed to create binary representation for type net.neoforged.neoforge.capabilities.EntityCapability +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.capabilities.EntityCapability +Failed to create binary representation for type net.neoforged.neoforge.capabilities.EntityCapability +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Failed to create binary representation for type net.neoforged.neoforge.common.EffectCure +Failed to create binary representation for type net.neoforged.neoforge.common.EffectCure +Failed to create binary representation for type net.neoforged.neoforge.common.IMinecartCollisionHandler +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.IMinecartCollisionHandler +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.brewing.IBrewingRecipe +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.ItemAbility +Failed to create binary representation for type net.neoforged.neoforge.common.world.chunk.ForcedChunkManager.TicketTracker +Failed to create binary representation for type net.neoforged.neoforge.common.world.chunk.ForcedChunkManager.TicketTracker +Failed to create binary representation for type net.neoforged.neoforge.common.crafting.ICustomIngredient +Failed to create binary representation for type net.neoforged.neoforge.common.crafting.ICustomIngredient +Failed to create binary representation for type net.neoforged.neoforge.common.crafting.ICustomIngredient +Failed to create binary representation for type net.neoforged.neoforge.common.crafting.ICustomIngredient +Failed to create binary representation for type net.neoforged.fml.common.asm.enumextension.ExtensionInfo +Failed to create binary representation for type net.neoforged.neoforge.common.world.ModifiableBiomeInfo +Failed to create binary representation for type net.neoforged.neoforge.common.world.ModifiableBiomeInfo +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentHolder.AsField +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentHolder.AsField +Failed to create binary representation for type net.neoforged.neoforge.common.world.LevelChunkAuxiliaryLightManager +Failed to create binary representation for type net.neoforged.neoforge.attachment.AttachmentType +Failed to create binary representation for type net.neoforged.neoforge.event.level.AlterGroundEvent.StateProvider +Failed to create binary representation for type net.neoforged.neoforge.event.level.AlterGroundEvent.StateProvider +Failed to create binary representation for type net.neoforged.neoforge.common.world.ModifiableStructureInfo +Failed to create binary representation for type net.neoforged.neoforge.fluids.FluidType +Access transformer PUBLIC LEAVE C:\Users\user\IdeaProjects\sable\common\src\main\resources\META-INF\accesstransformer.cfg:10, targeting net.minecraft.world.entity.projectile.Projectile METHOD Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V did not apply as its target doesn't exist diff --git a/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/libraries.txt b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/libraries.txt new file mode 100644 index 0000000..8249c3d --- /dev/null +++ b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/libraries.txt @@ -0,0 +1,74 @@ +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.github.oshi\oshi-core\6.4.10\b1d8ab82d11d92fd639b56d639f8f46f739dd5fa\oshi-core-6.4.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.gson\gson\2.10.1\b3add478d4382b78ea20b1671390a858002feb6c\gson-2.10.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\failureaccess\1.0.1\1dcf1de382a0bf95a3d8b0849546c88bac1292c9\failureaccess-1.0.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.guava\guava\32.1.2-jre\5e64ec7e056456bef3a4bc4c6fdaef71e8ab6318\guava-32.1.2-jre.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.ibm.icu\icu4j\73.2\61ad4ef7f9131fcf6d25c34b817f90d6da06c9e9\icu4j-73.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\authlib\6.0.54\de8bc95660e1b2fe8793fd427a7a10dcec5b3ea7\authlib-6.0.54.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\blocklist\1.0.10\5c685c5ffa94c4cd39496c7184c1d122e515ecef\blocklist-1.0.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\brigadier\1.3.10\d15b53a14cf20fdcaa98f731af5dda654452c010\brigadier-1.3.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\datafixerupper\8.0.16\67d4de6d7f95d89bcf5862995fb854ebaec02a34\datafixerupper-8.0.16.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\logging\1.2.7\24cb95ffb0e3433fd6e844c04e68009e504ca1c0\logging-1.2.7.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\patchy\2.2.10\da05971b07cbb379d002cf7eaec6a2048211fefc\patchy-2.2.10.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.mojang\text2speech\1.17.9\3cad216e3a7f0c19b4b394388bc9ffc446f13b14\text2speech-1.17.9.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-codec\commons-codec\1.16.0\4e3eb3d79888d76b54e28b350915b5dc3919c9de\commons-codec-1.16.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-io\commons-io\2.15.1\f11560da189ab563a5c8e351941415430e9304ea\commons-io-2.15.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\commons-logging\commons-logging\1.2\4bfc12adfe4842bf07b657f0369c4cb522955686\commons-logging-1.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-buffer\4.1.97.Final\f8f3d8644afa5e6e1a40a3a6aeb9d9aa970ecb4f\netty-buffer-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-codec\4.1.97.Final\384ba4d75670befbedb45c4d3b497a93639c206d\netty-codec-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-common\4.1.97.Final\7cceacaf11df8dc63f23d0fb58e9d4640fc88404\netty-common-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-handler\4.1.97.Final\abb86c6906bf512bf2b797a41cd7d2e8d3cd7c36\netty-handler-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-resolver\4.1.97.Final\cec8348108dc76c47cf87c669d514be52c922144\netty-resolver-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-classes-epoll\4.1.97.Final\795da37ded759e862457a82d9d92c4d39ce8ecee\netty-transport-classes-epoll-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport-native-unix-common\4.1.97.Final\d469d84265ab70095b01b40886cabdd433b6e664\netty-transport-native-unix-common-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\io.netty\netty-transport\4.1.97.Final\f37380d23c9bb079bc702910833b2fd532c9abd0\netty-transport-4.1.97.Final.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\it.unimi.dsi\fastutil\8.5.12\c24946d46824bd528054bface3231d2ecb7e95e8\fastutil-8.5.12.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna-platform\5.14.0\28934d48aed814f11e4c584da55c49fa7032b31b\jna-platform-5.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.java.dev.jna\jna\5.14.0\67bf3eaea4f0718cb376a181a629e5f88fa1c9dd\jna-5.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.sf.jopt-simple\jopt-simple\5.0.4\4fdac2fbe92dfad86aa6e9301736f6b4342a3f5c\jopt-simple-5.0.4.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-compress\1.26.0\659feffdd12280201c8aacb8f7be94f9a883c824\commons-compress-1.26.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-lang3\3.14.0\1ed471194b02f2c6cb734a0cd6f6f107c673afae\commons-lang3-3.14.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpclient\4.5.13\e5f6cae5ca7ecaac1ec2827a9e2d65ae2869cada\httpclient-4.5.13.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.httpcomponents\httpcore\4.4.16\51cf043c87253c9f58b539c9f7e44c8894223850\httpcore-4.4.16.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-api\2.22.1\bea6fede6328fabafd7e68363161a7ea6605abd1\log4j-api-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-core\2.22.1\7183a25510a02ad00cc6a95d3b3d2a7d3c5a8dc4\log4j-core-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.apache.logging.log4j\log4j-slf4j2-impl\2.22.1\d7e6693c2606cb7e7335047d7bb96dec52db5665\log4j-slf4j2-impl-2.22.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jcraft\jorbis\0.0.17\8872d22b293e8f5d7d56ff92be966e6dc28ebdc6\jorbis-0.0.17.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.joml\joml\1.10.5\22566d58af70ad3d72308bab63b8339906deb649\joml-1.10.5.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\a0db6c84a8becc8ca05f9dbfa985edc348a824c7\lwjgl-freetype-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\81091b006dbb43fab04c8c638e9ac87c51b4096d\lwjgl-freetype-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\82028265a0a2ff33523ca75137ada7dc176e5210\lwjgl-freetype-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-freetype\3.3.3\15a8c1de7f51d07a92eae7ce1222557073a0c0c3\lwjgl-freetype-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\efa1eb78c5ccd840e9f329717109b5e892d72f8e\lwjgl-glfw-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\e449e28b4891fc423c54c85fbc5bb0b9efece67a\lwjgl-glfw-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\f27018dc74f6289574502b46cce55d52817554e2\lwjgl-glfw-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-glfw\3.3.3\32334f3fd5270a59bad9939a93115acb6de36dcf\lwjgl-glfw-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\b543467b7ff3c6920539a88ee602d34098628be5\lwjgl-jemalloc-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\426222fc027602a5f21b9c0fe79cde6a4c7a011f\lwjgl-jemalloc-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\ba1f3fed0ee4be0217eaa41c5bbfb4b9b1383c33\lwjgl-jemalloc-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-jemalloc\3.3.3\f6063b6e0f23be483c5c88d84ce51b39dc69126c\lwjgl-jemalloc-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\daada81ceb5fc0c291fbfdd4433cb8d9423577f2\lwjgl-openal-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\cf83862ae95d98496b26915024c7e666d8ab1c8f\lwjgl-openal-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\8e0615235116b9e4160dfe87bec90f5f6378bf72\lwjgl-openal-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-openal\3.3.3\87b8d5050e3adb46bb58fe1cb2669a4a48fce10d\lwjgl-openal-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\2f6b0147078396a58979125a4c947664e98293a\lwjgl-opengl-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\e6c1eec8be8a71951b830a4d69efc01c6531900c\lwjgl-opengl-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\65e956d3735a1abdc82eff4baec1b61174697d4b\lwjgl-opengl-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-opengl\3.3.3\d32d833dcaa2f355a886eaf21f0408b5f03241d\lwjgl-opengl-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\25dd6161988d7e65f71d5065c99902402ee32746\lwjgl-stb-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\1d9facdf6541de114b0f963be33505b7679c78cb\lwjgl-stb-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\a584ab44de569708871f0a79561f4d8c37487f2c\lwjgl-stb-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-stb\3.3.3\b5c874687b9aac1a936501d4ed2c49567fd1b575\lwjgl-stb-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\82d755ca94b102e9ca77283b9e2dc46d1b15fbe5\lwjgl-tinyfd-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a6697981b0449a5087c1d546fc08b4f73e8f98c9\lwjgl-tinyfd-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\a88c494f3006eb91a7433b12a3a55a9a6c20788b\lwjgl-tinyfd-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl-tinyfd\3.3.3\c336c84ee88cccb495c6ffa112395509e7378e8a\lwjgl-tinyfd-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\29589b5f87ed335a6c7e7ee6a5775f81f97ecb84\lwjgl-3.3.3.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\a5ed18a2b82fc91b81f40d717cb1f64c9dcb0540\lwjgl-3.3.3-natives-windows.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\e9aca8c5479b520a2a7f0d542a118140e812c5e8\lwjgl-3.3.3-natives-windows-arm64.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lwjgl\lwjgl\3.3.3\9e670718e050aeaeea0c2d5b907cffb142f2e58f\lwjgl-3.3.3-natives-windows-x86.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.lz4\lz4-java\1.8.0\4b986a99445e49ea5fbf5d149c4b63f6ed6c6780\lz4-java-1.8.0.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.slf4j\slf4j-api\2.0.9\7cf2726fdcfbc8610f9a71fb3ed639871f315340\slf4j-api-2.0.9.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\com.google.code.findbugs\jsr305\3.0.2\25ea2e8b0c338a877313bd4672d3fe056ea78f0d\jsr305-3.0.2.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\ca.weblite\java-objc-bridge\1.1\1227f9e0666314f9de41477e3ec277e542ed7f7b\java-objc-bridge-1.1.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\net.neoforged\mergetool\2.0.3\1275202cbbb248f49345cf6787ce299afd9a02fb\mergetool-2.0.3-api.jar +-e=C:\Users\user\.gradle\caches\modules-2\files-2.1\org.jetbrains\annotations\24.1.0\7af6a669488450c4a07c2c3254e2151df42d7d04\annotations-24.1.0.jar diff --git a/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/problems.json b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/problems.json new file mode 100644 index 0000000..5486207 --- /dev/null +++ b/neoforge/build/tmp/neoformruntime/20260511-113858_transformSources/problems.json @@ -0,0 +1,18 @@ +[ + { + "problemId": { + "id": "missing-target", + "displayName": "Missing Target", + "group": { + "id": "access-transformer", + "displayName": "Access Transformers" + } + }, + "severity": "ERROR", + "location": { + "file": "C:\\Users\\user\\IdeaProjects\\sable\\common\\src\\main\\resources\\META-INF\\accesstransformer.cfg", + "line": 10 + }, + "contextualLabel": "The target net.minecraft.world.entity.projectile.Projectile METHOD Projectile(Lnet/minecraft/world/entity/EntityType;Lnet/minecraft/world/level/Level;)V does not exist." + } +] \ No newline at end of file diff --git a/neoforge/build/tmp/sourcesJar/MANIFEST.MF b/neoforge/build/tmp/sourcesJar/MANIFEST.MF new file mode 100644 index 0000000..59499bc --- /dev/null +++ b/neoforge/build/tmp/sourcesJar/MANIFEST.MF @@ -0,0 +1,2 @@ +Manifest-Version: 1.0 + diff --git a/neoforge/run/.mixin.out/class/dev/engine_room/flywheel/backend/engine/indirect/MatrixBuffer.class b/neoforge/run/.mixin.out/class/dev/engine_room/flywheel/backend/engine/indirect/MatrixBuffer.class new file mode 100644 index 0000000..10752fa Binary files /dev/null and b/neoforge/run/.mixin.out/class/dev/engine_room/flywheel/backend/engine/indirect/MatrixBuffer.class differ diff --git a/neoforge/run/.sable/natives/sable_rapier_x86_64_windows.dll b/neoforge/run/.sable/natives/sable_rapier_x86_64_windows.dll new file mode 100644 index 0000000..8d2267b Binary files /dev/null and b/neoforge/run/.sable/natives/sable_rapier_x86_64_windows.dll differ diff --git a/neoforge/run/command_history.txt b/neoforge/run/command_history.txt new file mode 100644 index 0000000..2d691e2 --- /dev/null +++ b/neoforge/run/command_history.txt @@ -0,0 +1,5 @@ +/gamemode spectator +/gamemode spectatorp +/gamemode spectator +/ +/gamemode creative diff --git a/neoforge/run/config/DistantHorizons.toml b/neoforge/run/config/DistantHorizons.toml new file mode 100644 index 0000000..dd323f6 --- /dev/null +++ b/neoforge/run/config/DistantHorizons.toml @@ -0,0 +1,766 @@ +_version = 2 + +[client] + # + # Should Distant Horizon's config button appear in the options screen next to fov slider? + optionsButton = true + + [client.advanced] + + [client.advanced.lodBuilding] + # + # How should block data be compressed when creating LOD data? + # This setting will only affect new or updated LOD data, + # any data already generated when this setting is changed will be + # unaffected until it is modified or re-loaded. + # + # MERGE_SAME_BLOCKS + # Every block/biome change is recorded in the database. + # This is what DH 2.0 and 2.0.1 all used by default and will store a lot of data. + # Expected Compression Ratio: 1.0 + # + # VISUALLY_EQUAL + # Only visible block/biome changes are recorded in the database. + # Hidden blocks (IE ores) are ignored. + # Expected Compression Ratio: 0.7 + worldCompression = "VISUALLY_EQUAL" + # + # A comma separated list of block resource locations that shouldn't be rendered + # if they are in a 0 sky light underground area. + # Note: air is always included in this list. + ignoredRenderCaveBlockCsv = "minecraft:glow_lichen,minecraft:rail,minecraft:water,minecraft:lava,minecraft:bubble_column" + # + # If true LOD generation for pre-existing chunks will attempt to pull the lighting data + # saved in Minecraft's Region files. + # If false DH will pull in chunks without lighting and re-light them. + # + # Setting this to true will result in faster LOD generation + # for already generated worlds, but is broken by most lighting mods. + # + # Set this to false if LODs are black. + pullLightingForPregeneratedChunks = false + # + # What algorithm should be used to compress new LOD data? + # This setting will only affect new or updated LOD data, + # any data already generated when this setting is changed will be + # unaffected until it needs to be re-written to the database. + # + # UNCOMPRESSED + # Should only be used for testing, is worse in every way vs [LZ4]. + # Expected Compression Ratio: 1.0 + # Estimated average DTO read speed: 1.64 milliseconds + # Estimated average DTO write speed: 12.44 milliseconds + # + # LZ4 + # A good option if you're CPU limited and have plenty of hard drive space. + # Expected Compression Ratio: 0.36 + # Estimated average DTO read speed: 1.85 ms + # Estimated average DTO write speed: 9.46 ms + # + # LZMA2 + # Slow but very good compression. + # Expected Compression Ratio: 0.14 + # Estimated average DTO read speed: 11.89 ms + # Estimated average DTO write speed: 192.01 ms + dataCompression = "LZMA2" + # + # A comma separated list of block resource locations that won't be rendered by DH. + # Note: air is always included in this list. + ignoredRenderBlockCsv = "minecraft:barrier,minecraft:structure_void,minecraft:light,minecraft:tripwire" + # + # Determines how long must pass between LOD chunk updates before another. + # update can occur + # + # Increasing this value will reduce CPU load but may may cause + # LODs to become outdated more frequently or for longer. + minTimeBetweenChunkUpdatesInSeconds = 1 + # + # Normally DH will attempt to skip creating LODs for chunks it's already seen + # and that haven't changed. + # + # However sometimes that logic incorrecly prevents LODs from being updated. + # Disabling this check may fix issues where LODs aren't updated after + # blocks have been changed. + disableUnchangedChunkCheck = false + + [client.advanced.autoUpdater] + # + # If DH should use the nightly (provided by Gitlab), or stable (provided by Modrinth) build. + # If [AUTO] is selected DH will update to new stable releases if the current jar is a stable jar + # and will update to new nightly builds if the current jar is a nightly jar (IE the version number ends in '-dev'). + updateBranch = "AUTO" + # + # Automatically check for updates on game launch? + enableAutoUpdater = true + # + # Should Distant Horizons silently, automatically download and install new versions? + enableSilentUpdates = false + + [client.advanced.multiThreading] + # + # How many threads should be used when building LODs? + # + # These threads run when terrain is generated, when + # certain graphics settings are changed, and when moving around the world. + # + # Multi-threading Note: + # If the total thread count in Distant Horizon's config is more threads than your CPU has cores, + # CPU performance may suffer if Distant Horizons has a lot to load or generate. + # This can be an issue when first loading into a world, when flying, and/or when generating new terrain. + numberOfLodBuilderThreads = 1 + # + # Should only be disabled if deadlock occurs and LODs refuse to update. + # This will cause CPU usage to drastically increase for the Lod Builder threads. + # + # Note that if deadlock did occur restarting MC may be necessary to stop the locked threads. + enableLodBuilderThreadLimiting = true + # + # If this value is less than 1.0, it will be treated as a percentage + # of time each thread can run before going idle. + # + # This can be used to reduce CPU usage if the thread count + # is already set to 1 for the given option, or more finely + # tune CPU performance. + runTimeRatioForWorldGenerationThreads = "0.5" + # + # If this value is less than 1.0, it will be treated as a percentage + # of time each thread can run before going idle. + # + # This can be used to reduce CPU usage if the thread count + # is already set to 1 for the given option, or more finely + # tune CPU performance. + runTimeRatioForLodBuilderThreads = "0.25" + # + # If this value is less than 1.0, it will be treated as a percentage + # of time each thread can run before going idle. + # + # This can be used to reduce CPU usage if the thread count + # is already set to 1 for the given option, or more finely + # tune CPU performance. + runTimeRatioForFileHandlerThreads = "0.5" + # + # If this value is less than 1.0, it will be treated as a percentage + # of time each thread can run before going idle. + # + # This can be used to reduce CPU usage if the thread count + # is already set to 1 for the given option, or more finely + # tune CPU performance. + runTimeRatioForUpdatePropagatorThreads = "0.25" + # + # How many threads should be used when reading/writing LOD data to/from disk? + # + # Increasing this number will cause LODs to load in faster, + # but may cause lag when loading a new world or when + # quickly flying through existing LODs. + # + # Multi-threading Note: + # If the total thread count in Distant Horizon's config is more threads than your CPU has cores, + # CPU performance may suffer if Distant Horizons has a lot to load or generate. + # This can be an issue when first loading into a world, when flying, and/or when generating new terrain. + numberOfFileHandlerThreads = 1 + # + # How many threads should be used when applying LOD updates? + # An LOD update is the operation of down-sampling a high detail LOD + # into a lower detail one. + # + # This config can have a much higher number of threads + # assigned and much lower run time ratio vs other thread pools + # because the amount of time any particular thread may run is relatively low. + # + # This is because LOD updating only only partially thread safe, + # so between 40% and 60% of the time a given thread may end up + # waiting on another thread to finish updating the same LOD it also wants + # to work on. + # + # Multi-threading Note: + # If the total thread count in Distant Horizon's config is more threads than your CPU has cores, + # CPU performance may suffer if Distant Horizons has a lot to load or generate. + # This can be an issue when first loading into a world, when flying, and/or when generating new terrain. + numberOfUpdatePropagatorThreads = 1 + # + # How many threads should be used when generating LOD + # chunks outside the normal render distance? + # + # If you experience stuttering when generating distant LODs, + # decrease this number. + # If you want to increase LOD + # generation speed, increase this number. + # + # Multi-threading Note: + # If the total thread count in Distant Horizon's config is more threads than your CPU has cores, + # CPU performance may suffer if Distant Horizons has a lot to load or generate. + # This can be an issue when first loading into a world, when flying, and/or when generating new terrain. + numberOfWorldGenerationThreads = 1 + + [client.advanced.logging] + # + # If enabled, the mod will log information about the renderer OpenGL process. + # This can be useful for debugging. + logRendererGLEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log performance about the world generation process. + # This can be useful for debugging. + logWorldGenPerformance = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log information about file sub-dimension operations. + # This can be useful for debugging. + logFileSubDimEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, a chat message will be displayed if Java doesn't have enough + # memory allocated to run DH well. + showLowMemoryWarningOnStartup = true + # + # If enabled, a chat message will be displayed when a replay is started + # giving some basic information about how DH will function. + showReplayWarningOnStartup = true + # + # If enabled, the mod will log information about file read/write operations. + # This can be useful for debugging. + logFileReadWriteEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log information about network operations. + # This can be useful for debugging. + logNetworkEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, a chat message will be displayed when a potentially problematic + # mod is installed alongside DH. + showModCompatibilityWarningsOnStartup = true + # + # If enabled, the mod will log information about the renderer buffer process. + # This can be useful for debugging. + logRendererBufferEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log information about the LOD generation process. + # This can be useful for debugging. + logLodBuilderEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log information about the world generation process. + # This can be useful for debugging. + logWorldGenEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + # + # If enabled, the mod will log information about the world generation process. + # This can be useful for debugging. + logWorldGenLoadEvent = "LOG_ERROR_TO_CHAT_AND_INFO_TO_FILE" + + [client.advanced.debugging] + # + # If enabled this will disable (most) vanilla Minecraft rendering. + # + # NOTE: Do not report any issues when this mode is on! + # This setting is only for fun and debugging. + # Mod compatibility is not guaranteed. + lodOnlyMode = false + # + # Stops vertex colors from being passed. + # Useful for debugging shaders + enableWhiteWorld = false + # + # What renderer is active? + # + # DEFAULT: Default lod renderer + # DEBUG: Debug testing renderer + # DISABLED: Disable rendering + rendererMode = "DISABLED" + # + # If enabled the LODs will render as wireframe. + renderWireframe = false + # + # If true the F8 key can be used to cycle through the different debug modes. + # and the F6 key can be used to enable and disable LOD rendering. + enableDebugKeybindings = false + # + # If true overlapping quads will be rendered as bright red for easy identification. + # If false the quads will be rendered normally. + showOverlappingQuadErrors = false + # + # Should specialized colors/rendering modes be used? + # + # OFF: LODs will be drawn with their normal colors. + # SHOW_DETAIL: LODs' color will be based on their detail level. + # SHOW_BLOCK_MATERIAL: LODs' color will be based on their material. + # SHOW_OVERLAPPING_QUADS: LODs will be drawn with total white, but overlapping quads will be drawn with red. + debugRendering = "OFF" + # + # If true OpenGL Buffer garbage collection will be logged + # this also includes the number of live buffers. + logBufferGarbageCollection = false + + [client.advanced.debugging.debugWireframe] + # + # Render LOD section status? + showRenderSectionStatus = false + # + # Render full data update/lock status? + showFullDataUpdateStatus = false + # + # Render queued world gen tasks? + showWorldGenQueue = false + # + # Render Quad Tree Rendering status? + showQuadTreeRenderStatus = false + # + # If enabled, various wireframes for debugging internal functions will be drawn. + # + # NOTE: There WILL be performance hit! + # Additionally, only stuff that's loaded after you enable this + # will render their debug wireframes. + enableRendering = false + + [client.advanced.debugging.openGl] + # + # Requires a reboot to change. + overrideVanillaGLLogger = false + # + # Can be changed if you experience crashing when loading into a world. + # + # Defines the OpenGL context type Distant Horizon's will create. + # Generally this should be left as [CORE] unless there is an issue with your GPU driver. + # Possible values: [CORE],[COMPAT],[ANY] + glProfileMode = "CORE" + # + # Defines how OpenGL errors are handled. + # May incorrectly catch OpenGL errors thrown by other mods. + # + # IGNORE: Do nothing. + # LOG: write an error to the log. + # LOG_THROW: write to the log and throw an exception. + # Warning: this should only be enabled when debugging the LOD renderer + # as it may break Minecraft's renderer when an exception is thrown. + glErrorHandlingMode = "IGNORE" + # + # Can be changed if you experience crashing when loading into a world. + # + # If true Distant Horizon's OpenGL contexts will be created with legacy OpenGL methods disabled. + # Distant Horizons doesn't use any legacy OpenGL methods so normally this should be disabled. + enableGlForwardCompatibilityMode = true + # + # Can be changed if you experience crashing when loading into a world. + # Note: setting to an invalid version may also cause the game to crash. + # + # Leaving this value at causes DH to try all supported GL versions. + # + # Defines the requested OpenGL context major version Distant Horizons will create. + # Possible values (DH requires 3.2 or higher at minimum): + # 4.6, 4.5, 4.4, 4.3, 4.2, 4.1, 4.0 + # 3.3, 3.2 + glContextMajorVersion = 0 + # + # Can be changed if you experience crashing when loading into a world. + # + # If true Distant Horizon's OpenGL contexts will be created with debugging enabled. + # This allows for enhanced debugging but may throw warnings for other mods or active overlay software. + enableGlDebugContext = false + # + # Can be changed if you experience crashing when loading into a world. + # Note: setting to an invalid version may also cause the game to crash. + # + # Defines the requested OpenGL context major version Distant Horizons will create. + # Possible values (DH requires 3.2 or higher at minimum): + # 4.6, 4.5, 4.4, 4.3, 4.2, 4.1, 4.0 + # 3.3, 3.2 + glContextMinorVersion = 0 + + [client.advanced.debugging.exampleConfigScreen] + shortTest = "69" + mapTest = "{}" + byteTest = "8" + longTest = "42069" + listTest = ["option 1", "option 2", "option 3"] + boolTest = false + doubleTest = "420.69" + floatTest = "0.42069" + linkableTest = 420 + intTest = 69420 + stringTest = "Test input box" + + [client.advanced.graphics] + + [client.advanced.graphics.ssao] + # + # Determines how many points in space are sampled for the occlusion test. + # Higher numbers will improve quality and reduce banding, but will increase GPU load. + sampleCount = 6 + # + # Determines how dark the Screen Space Ambient Occlusion effect will be. + strength = "0.2" + # + # The radius, measured in pixels, that blurring is calculated for the SSAO. + # Higher numbers will reduce banding at the cost of GPU performance. + blurRadius = 2 + # + # Increasing the value can reduce banding at the cost of reducing the strength of the effect. + bias = "0.02" + # + # Determines how dark the occlusion shadows can be. + # 0 = totally black at the corners + # 1 = no shadow + minLight = "0.25" + # + # Determines the radius Screen Space Ambient Occlusion is applied, measured in blocks. + radius = "4.0" + # + # Enable Screen Space Ambient Occlusion + enabled = false + + [client.advanced.graphics.advancedGraphics] + # + # If true all beacons near the camera won't be drawn to prevent vanilla overdraw. + # If false all beacons will be rendered. + # + # Generally this should be left as false. It's main purpose is for debugging + # beacon updating/rendering. + disableBeaconDistanceCulling = false + # + # What the value should vanilla Minecraft's texture LodBias be? + # If set to 0 the mod wont overwrite vanilla's default (which so happens to also be 0) + lodBias = "0.0" + # + # How should the sides and bottom of grass block LODs render? + # + # AS_GRASS: all sides of dirt LOD's render using the top (green) color. + # FADE_TO_DIRT: sides fade from grass to dirt. + # AS_DIRT: sides render entirely as dirt. + grassSideRendering = "AS_DIRT" + # + # Determines how far from the camera Distant Horizons will start rendering. + # Measured as a percentage of the vanilla render distance. + # + # Higher values will prevent LODs from rendering behind vanilla blocks at a higher distance, + # but may cause holes to appear in the LODs. + # Holes are most likely to appear when flying through unloaded terrain. + # + # Increasing the vanilla render distance increases the effectiveness of this setting. + overdrawPrevention = "0.4" + # + # How bright LOD colors are. + # + # 0 = black + # 1 = normal + # 2 = near white + brightnessMultiplier = "1.0" + # + # If enabled caves will be culled + # + # NOTE: This feature is under development and + # it is VERY experimental! Please don't report + # any issues related to this feature. + # + # Additional Info: Currently this cull all faces + # with skylight value of 0 in dimensions that + # does not have a ceiling. + enableCaveCulling = true + # + # Identical to the other frustum culling option + # only used when a shader mod is present using the DH API + # and the shadow pass is being rendered. + # + # Disable this if shadows render incorrectly. + disableShadowPassFrustumCulling = false + # + # At what Y value should cave culling start? + # Lower this value if you get walls for areas with 0 light. + caveCullingHeight = 60 + # + # How should LODs be shaded? + # + # AUTO: Uses the same side shading as vanilla Minecraft blocks. + # ENABLED: Simulates Minecraft's block shading for LODs. + # Can be used to force LOD shading when using some shaders. + # DISABLED: All LOD sides will be rendered with the same brightness. + lodShading = "AUTO" + # + # How saturated LOD colors are. + # + # 0 = black and white + # 1 = normal + # 2 = very saturated + saturationMultiplier = "1.0" + # + # This is the earth size ratio when applying the curvature shader effect. + # Note: Enabling this feature may cause rendering bugs. + # + # 0 = flat/disabled + # 1 = 1 to 1 (6,371,000 blocks) + # 100 = 1 to 100 (63,710 blocks) + # 10000 = 1 to 10000 (637.1 blocks) + # + # Note: Due to current limitations, the min value is 50 + # and the max value is 5000. Any values outside this range + # will be set to 0 (disabled). + earthCurveRatio = 0 + # + # If false LODs outside the player's camera + # aren't drawn, increasing GPU performance. + # + # If true all LODs are drawn, even those behind + # the player's camera, decreasing GPU performance. + # + # Disable this if you see LODs disappearing at the corners of your vision. + disableFrustumCulling = true + + [client.advanced.graphics.genericRendering] + # + # If true LOD clouds will be rendered. + enableCloudRendering = false + # + # If true LOD beacon beams will be rendered. + enableBeaconRendering = false + # + # If true non terrain objects will be rendered in DH's terrain. + # This includes beacon beams and clouds. + enableRendering = false + + [client.advanced.graphics.quality] + # + # What is the maximum detail LODs should be drawn at? + # Higher settings will increase memory and GPU usage. + # + # CHUNK: render 1 LOD for each Chunk. + # HALF_CHUNK: render 4 LODs for each Chunk. + # FOUR_BLOCKS: render 16 LODs for each Chunk. + # TWO_BLOCKS: render 64 LODs for each Chunk. + # BLOCK: render 256 LODs for each Chunk (width of one block). + # + # Lowest Quality: CHUNK + # Highest Quality: BLOCK + maxHorizontalResolution = "TWO_BLOCKS" + # + # The radius of the mod's render distance. (measured in chunks) + lodChunkRenderDistanceRadius = 128 + # + # Should the blocks underneath avoided blocks gain the color of the avoided block? + # + # True: a red flower will tint the grass below it red. + # False: skipped blocks will not change color of surface below them. + tintWithAvoidedBlocks = true + # + # This indicates how quickly LODs decrease in quality the further away they are. + # Higher settings will render higher quality fake chunks farther away, + # but will increase memory and GPU usage. + horizontalQuality = "LOWEST" + # + # How should LOD transparency be handled. + # + # COMPLETE: LODs will render transparent. + # FAKE: LODs will be opaque, but shaded to match the blocks underneath. + # DISABLED: LODs will be opaque. + transparency = "DISABLED" + # + # This indicates how well LODs will represent + # overhangs, caves, floating islands, etc. + # Higher options will make the world more accurate, butwill increase memory and GPU usage. + # + # Lowest Quality: HEIGHT_MAP + # Highest Quality: EXTREME + verticalQuality = "HEIGHT_MAP" + # + # What blocks shouldn't be rendered as LODs? + # + # NONE: Represent all blocks in the LODs + # NON_COLLIDING: Only represent solid blocks in the LODs (tall grass, torches, etc. won't count for a LOD's height) + blocksToIgnore = "NON_COLLIDING" + + [client.advanced.graphics.fog] + # + # When should fog be drawn? + # + # USE_OPTIFINE_SETTING: Use whatever Fog setting Optifine is using. + # If Optifine isn't installed this defaults to FOG_ENABLED. + # FOG_ENABLED: Never draw fog on the LODs + # FOG_DISABLED: Always draw fast fog on the LODs + # + # Disabling fog will improve GPU performance. + drawMode = "FOG_DISABLED" + # + # What color should fog use? + # + # USE_WORLD_FOG_COLOR: Use the world's fog color. + # USE_SKY_COLOR: Use the sky's color. + colorMode = "USE_WORLD_FOG_COLOR" + # + # Should Minecraft's fog be disabled? + # + # Note: Other mods may conflict with this setting. + disableVanillaFog = true + + [client.advanced.graphics.fog.advancedFog] + # + # What is the maximum fog thickness? + # + # 0.0: No fog. + # 1.0: Fully opaque fog. + farFogMax = "1.0" + # + # At what distance should the far fog start? + # + # 0.0: Fog starts at the player's position. + # 1.0: Fog starts at the closest edge of the vanilla render distance. + # 1.414: Fog starts at the corner of the vanilla render distance. + farFogStart = "0.4" + # + # What is the minimum fog thickness? + # + # 0.0: No fog. + # 1.0: Fully opaque fog. + farFogMin = "0.0" + # + # How should the fog thickness should be calculated? + # + # LINEAR: Linear based on distance (will ignore 'density') + # EXPONENTIAL: 1/(e^(distance*density)) + # EXPONENTIAL_SQUARED: 1/(e^((distance*density)^2) + farFogFalloff = "EXPONENTIAL_SQUARED" + # + # Used in conjunction with the Fog Falloff. + farFogDensity = "2.5" + # + # Where should the far fog end? + # + # 0.0: Fog ends at player's position. + # 1.0: Fog ends at the closest edge of the vanilla render distance. + # 1.414: Fog ends at the corner of the vanilla render distance. + farFogEnd = "1.0" + + [client.advanced.graphics.fog.advancedFog.heightFog] + # + # What is the minimum fog thickness? + # + # 0.0: No fog. + # 1.0: Fully opaque fog. + heightFogMin = "0.0" + # + # Where should the height fog start? + # + # ABOVE_CAMERA: Height fog starts at the camera and goes towards the sky + # BELOW_CAMERA: Height fog starts at the camera and goes towards the void + # ABOVE_AND_BELOW_CAMERA: Height fog starts from the camera to goes towards both the sky and void + # ABOVE_SET_HEIGHT: Height fog starts from a set height and goes towards the sky + # BELOW_SET_HEIGHT: Height fog starts from a set height and goes towards the void + # ABOVE_AND_BELOW_SET_HEIGHT: Height fog starts from a set height and goes towards both the sky and void + heightFogMode = "ABOVE_AND_BELOW_CAMERA" + # + # If the height fog is calculated around a set height, what is that height position? + heightFogBaseHeight = "70.0" + # + # What is the maximum fog thickness? + # + # 0.0: No fog. + # 1.0: Fully opaque fog. + heightFogMax = "1.0" + # + # How should the height fog thickness should be calculated? + # + # LINEAR: Linear based on height (will ignore 'density') + # EXPONENTIAL: 1/(e^(height*density)) + # EXPONENTIAL_SQUARED: 1/(e^((height*density)^2) + heightFogFalloff = "EXPONENTIAL_SQUARED" + # + # What is the height fog's density? + heightFogDensity = "2.5" + # + # How should height effect the fog thickness? + # Note: height fog is combined with the other fog settings. + # + # BASIC: No special height fog effect. Fog is calculated based on camera distance + # IGNORE_HEIGHT: Ignore height completely. Fog is only calculated with horizontal distance + # ADDITION: heightFog + farFog + # MAX: max(heightFog, farFog) + # MULTIPLY: heightFog * farFog + # INVERSE_MULTIPLY: 1 - (1-heightFog) * (1-farFog) + # LIMITED_ADDITION: farFog + max(farFog, heightFog) + # MULTIPLY_ADDITION: farFog + farFog * heightFog + # INVERSE_MULTIPLY_ADDITION: farFog + 1 - (1-heightFog) * (1-farFog) + # AVERAGE: farFog*0.5 + heightFog*0.5 + # + # Note: height fog settings are ignored if 'BASIC' or 'IGNORE_HEIGHT' are selected. + heightFogMixMode = "BASIC" + # + # Should the start of the height fog be offset? + # + # 0.0: Fog start with no offset. + # 1.0: Fog start with offset of the entire world's height. (Includes depth) + heightFogStart = "0.0" + # + # Should the end of the height fog be offset? + # + # 0.0: Fog end with no offset. + # 1.0: Fog end with offset of the entire world's height. (Include depth) + heightFogEnd = "1.0" + + [client.advanced.graphics.noiseTextureSettings] + # + # Defines how far should the noise texture render before it fades away. (in blocks) + # Set to 0 to disable noise from fading away + noiseDropoff = 1024 + # + # How many steps of noise should be applied to LODs? + noiseSteps = 4 + # + # Should a noise texture be applied to LODs? + # + # This is done to simulate textures and make the LODs appear more detailed. + noiseEnabled = true + # + # How intense should the noise should be? + noiseIntensity = "5.0" + + [client.advanced.worldGenerator] + # + # How detailed should LODs be generated outside the vanilla render distance? + # + # PRE_EXISTING_ONLY + # Only create LOD data for already generated chunks. + # + # + # SURFACE + # Generate the world surface, + # this does NOT include trees, + # or structures. + # + # FEATURES + # Generate everything except structures. + # WARNING: This may cause world generator bugs or instability when paired with certain world generator mods. + distantGeneratorMode = "FEATURES" + # + # How long should a world generator thread run for before timing out? + # Note: If you are experiencing timeout errors it is better to lower your CPU usage first + # via the thread config before changing this value. + worldGenerationTimeoutLengthInSeconds = 180 + # + # Should Distant Horizons slowly generate LODs + # outside the vanilla render distance? + # + # Note: when on a server, distant generation isn't supported + # and will always be disabled. + enableDistantGeneration = false + + [client.advanced.multiplayer] + # + # AKA: Multiverse support. + # + # When matching levels (dimensions) of the same type (overworld, nether, etc.) the + # loaded chunks must be at least this percent the same + # in order to be considered the same world. + # + # Note: If you use portals to enter a dimension at two + # different locations the system will think the dimension + # it is two different levels. + # + # 1.0 (100%) the chunks must be identical. + # 0.5 (50%) the chunks must be half the same. + # 0.0 (0%) disables multi-dimension support, + # only one world will be used per dimension. + # + # If multiverse support is needed start with a value of 0.2 + # and tweak the sensitivity from there.Lower values mean the matching is less strict. + # Higher values mean the matching is more strict. + multiverseSimilarityRequiredPercent = "0.0" + # + # How should multiplayer save folders should be named? + # + # NAME_ONLY: Example: "Minecraft Server" + # IP_ONLY: Example: "192.168.1.40" + # NAME_IP: Example: "Minecraft Server IP 192.168.1.40" + # NAME_IP_PORT: Example: "Minecraft Server IP 192.168.1.40:25565"NAME_IP_PORT_MC_VERSION: Example: "Minecraft Server IP 192.168.1.40:25565 GameVersion 1.16.5" + serverFolderNameMode = "NAME_ONLY" + diff --git a/neoforge/run/config/aeronautics-server.toml b/neoforge/run/config/aeronautics-server.toml new file mode 100644 index 0000000..a874c79 --- /dev/null +++ b/neoforge/run/config/aeronautics-server.toml @@ -0,0 +1,108 @@ +#. +#Parameters related to the physics of Aeronautics blocks +[physics] + #. + #. + #The recoil magnitude used whenever the Mounted Potato Cannon shoots + # Default: 0.20000000298023224 + # Range: 0.0 ~ 3.4028234663852886E38 + recoil_magnitude = 0.20000000298023224 + #. + #Thrust scaling for Propeller Bearings + # Default: 0.20000000298023224 + # Range: 0.0 ~ 3.4028234663852886E38 + propellerBearingThrust = 0.20000000298023224 + #. + #Airflow scaling for Propeller Bearings + # Default: 0.05000000074505806 + # Range: 0.0 ~ 3.4028234663852886E38 + propellerBearingAirflow = 0.05000000074505806 + #. + #Thrust scaling for Wooden Propellers + # Default: 1.0 + # Range: 0.0 ~ 3.4028234663852886E38 + woodenPropellerThrust = 1.0 + #. + #Airflow scaling for Wooden Propellers + # Default: 0.10000000149011612 + # Range: 0.0 ~ 3.4028234663852886E38 + woodenPropellerAirflow = 0.10000000149011612 + #. + #Thrust scaling for Andesite Propellers + # Default: 1.0 + # Range: 0.0 ~ 3.4028234663852886E38 + andesitePropellerThrust = 1.0 + #. + #Airflow scaling for Andesite Propellers + # Default: 0.10000000149011612 + # Range: 0.0 ~ 3.4028234663852886E38 + andesitePropellerAirflow = 0.10000000149011612 + #. + #Thrust scaling for Smart Propellers + # Default: 1.0 + # Range: 0.0 ~ 3.4028234663852886E38 + smartPropellerThrust = 1.0 + #. + #Airflow scaling for Smart Propellers + # Default: 0.10000000149011612 + # Range: 0.0 ~ 3.4028234663852886E38 + smartPropellerAirflow = 0.10000000149011612 + #. + #kpg lifted per cubic meter of Hot Air + # Default: 1.5 + # Range: 0.0 ~ 3.4028234663852886E38 + hotAirStrength = 1.5 + #. + #kpg lifted per cubic meter of Steam + # Default: 1.5 + # Range: 0.0 ~ 3.4028234663852886E38 + steamStrength = 1.5 + +#. +#Parameters and abilities of Aeronautics Blocks +[blocks] + #. + #. + #If Levitite Blend should break adjacent blocks with the appropriate tag + break_blocks_on_levitite_crystallize = true + #. + #The maximum hot air a Hot Air Burner can output + # Default: 500 + # Range: > -2147483648 + hot_air_burner_max = 500 + #. + #The maximum distance a Hot Air Burner is allowed to search to find a balloon + # Default: 80 + # Range: > -2147483648 + hot_air_burner_max_range = 80 + #. + #The maximum steam a Steam Vent can output + # Default: 5000 + # Range: > 0 + steam_vent_hot_air_amount = 5000 + #. + #The maximum distance a Steam Vent is allowed to search to find a balloon + # Default: 80 + # Range: > -2147483648 + steam_vent_max_range = 80 + +#. +#Parameters and abilities of Aeronautics's kinetic mechanisms +[kinetics] + + #. + #. + #Fine tune the kinetic stats of individual components + [kinetics.stressValues.v2] + + #. + #. + #[in Stress Units] + #Configure the individual stress impact of mechanical blocks. Note that this cost is doubled for every speed increase it receives. + [kinetics.stressValues.v2.impact] + smart_propeller = 4.0 + gyroscopic_propeller_bearing = 2.0 + mounted_potato_cannon = 2.0 + propeller_bearing = 2.0 + andesite_propeller = 4.0 + wooden_propeller = 4.0 diff --git a/neoforge/run/config/create-client.toml b/neoforge/run/config/create-client.toml new file mode 100644 index 0000000..528a880 --- /dev/null +++ b/neoforge/run/config/create-client.toml @@ -0,0 +1,147 @@ +#. +#Client-only settings - If you're looking for general settings, look inside your worlds serverconfig folder! +[client] + #. + #Show item descriptions on Shift and controls on Ctrl. + enableTooltips = true + #. + #Display a tooltip when looking at overstressed components. + enableOverstressedTooltip = true + #. + #Log a stack-trace when rendering issues happen within a moving contraption. + explainRenderErrors = false + #. + #Higher density means more spawned particles. + # Default: 0.5 + # Range: 0.0 ~ 1.0 + fanParticleDensity = 0.5 + #. + #[in Blocks] + #Maximum Distance to the player at which items in Blocks' filter slots will be displayed + # Default: 10.0 + # Range: 1.0 ~ 3.4028234663852886E38 + filterItemRenderDistance = 10.0 + #. + #Choose the menu row that the Create config button appears on in the main menu + #Set to 0 to disable the button altogether + # Default: 2 + # Range: 0 ~ 4 + mainMenuConfigButtonRow = 2 + #. + #Offset the Create config button in the main menu by this many pixels on the X axis + #The sign (-/+) of this value determines what side of the row the button appears on (left/right) + # Default: -4 + # Range: > -2147483648 + mainMenuConfigButtonOffsetX = -4 + #. + #Choose the menu row that the Create config button appears on in the in-game menu + #Set to 0 to disable the button altogether + # Default: 3 + # Range: 0 ~ 5 + ingameMenuConfigButtonRow = 3 + #. + #Offset the Create config button in the in-game menu by this many pixels on the X axis + #The sign (-/+) of this value determines what side of the row the button appears on (left/right) + # Default: -4 + # Range: > -2147483648 + ingameMenuConfigButtonOffsetX = -4 + #. + #Setting this to true will prevent Create from sending you a warning when playing with Fabulous graphics enabled + ignoreFabulousWarning = false + #. + #Disable to prevent being rotated while seated on a Moving Contraption + rotateWhenSeated = true + + #. + #Configure your vision range when submerged in Create's custom fluids + [client.fluidFogSettings] + #. + #The vision range through honey will be multiplied by this factor + # Default: 1.0 + # Range: 0.125 ~ 256.0 + honey = 1.0 + #. + #The vision range though chocolate will be multiplied by this factor + # Default: 1.0 + # Range: 0.125 ~ 256.0 + chocolate = 1.0 + + #. + #Settings for the Goggle Overlay + [client.goggleOverlay] + #. + #Offset the overlay from goggle- and hover- information by this many pixels on the respective axis; Use /create overlay + # Default: 20 + # Range: > -2147483648 + overlayOffsetX = 20 + #. + #Offset the overlay from goggle- and hover- information by this many pixels on the respective axis; Use /create overlay + # Default: 0 + # Range: > -2147483648 + overlayOffsetY = 0 + #. + #Enable this to use your custom colors for the Goggle- and Hover- Overlay + customColorsOverlay = false + #. + #The custom background color to use for the Goggle- and Hover- Overlays, if enabled + #[in Hex: #AaRrGgBb] + #[@cui:IntDisplay:#] + # Default: -267386864 + # Range: > -2147483648 + customBackgroundOverlay = -267386864 + #. + #The custom top color of the border gradient to use for the Goggle- and Hover- Overlays, if enabled + #[in Hex: #AaRrGgBb] + #[@cui:IntDisplay:#] + # Default: 1347420415 + # Range: > -2147483648 + customBorderTopOverlay = 1347420415 + #. + #The custom bot color of the border gradient to use for the Goggle- and Hover- Overlays, if enabled + #[in Hex: #AaRrGgBb] + #[@cui:IntDisplay:#] + # Default: 1344798847 + # Range: > -2147483648 + customBorderBotOverlay = 1344798847 + + #. + #Sound settings + [client.sound] + #. + #Make cogs rumble and machines clatter. + enableAmbientSounds = true + #. + #Maximum volume modifier of Ambient noise + # Default: 0.10000000149011612 + # Range: 0.0 ~ 1.0 + ambientVolumeCap = 0.10000000149011612 + + #. + #Mod Integration and Recipe Viewer + [client.recipeViewerIntegration] + #. + #How Recipe Viewer search should interact with Stock Keepers + #Allowed Values: SYNC_BOTH, SYNC_FROM_JEI, SYNC_FROM_STOCK_KEEPER, NONE + syncRecipeViewerSearch = "SYNC_BOTH" + + #. + #Railway related settings + [client.trains] + #. + #How far away the Camera should zoom when seated on a train + # Default: 3.0 + # Range: 0.0 ~ 3.4028234663852886E38 + mountedZoomMultiplier = 3.0 + #. + #Display nodes and edges of a Railway Network while f3 debug mode is active + showTrackGraphOnF3 = false + #. + #Additionally display materials of a Rail Network while f3 debug mode is active + showExtendedTrackGraphOnF3 = false + #. + #Display Track Networks and Trains on supported map mods + showTrainMapOverlay = true + #. + #Track Network Color on maps + #Allowed Values: RED, GREY, WHITE + trainMapColorTheme = "RED" diff --git a/neoforge/run/config/create-common.toml b/neoforge/run/config/create-common.toml new file mode 100644 index 0000000..0e4b102 --- /dev/null +++ b/neoforge/run/config/create-common.toml @@ -0,0 +1,7 @@ +#. +#Modify Create's impact on your terrain +[worldgen] + #. + #. + #Prevents all worldgen added by Create from taking effect + disableWorldGen = false diff --git a/neoforge/run/config/create-server.toml b/neoforge/run/config/create-server.toml new file mode 100644 index 0000000..f2fa830 --- /dev/null +++ b/neoforge/run/config/create-server.toml @@ -0,0 +1,604 @@ +#. +#The Backbone of Create +[infrastructure] + #. + #[in Ticks] + #The amount of time a server waits before sending out tickrate synchronization packets. + #These packets help animations to be more accurate when tps is below 20. + # Default: 20 + # Range: > 5 + tickrateSyncTimer = 20 + +#. +#Packmakers' control panel for internal recipe compat +[recipes] + #. + #. + #Allow the Mechanical Press to process entire stacks at a time. + bulkPressing = false + #. + #Allow the Mechanical Saw to process entire stacks at a time. + bulkCutting = false + #. + #Allow supported potions to be brewed by a Mechanical Mixer + Basin. + allowBrewingInMixer = true + #. + #Allow any shapeless crafting recipes to be processed by a Mechanical Mixer + Basin. + allowShapelessInMixer = true + #. + #Allow any single-ingredient 2x2 or 3x3 crafting recipes to be processed by a Mechanical Press + Basin. + allowShapedSquareInPress = true + #. + #Allow any standard crafting recipes to be processed by Mechanical Crafters. + allowRegularCraftingInCrafter = true + #. + #The Maximum amount of ingredients that can be used to craft Firework Rockets using Mechanical Crafters. + # Default: 9 + # Range: > 1 + maxFireworkIngredientsInCrafter = 9 + #. + #Allow any stonecutting recipes to be processed by a Mechanical Saw. + allowStonecuttingOnSaw = true + #. + #Allow Spouts to interact with Casting Tables and Basins from Tinkers' Construct. + allowCastingBySpout = true + #. + #Display vanilla Log-stripping interactions in JEI. + displayLogStrippingRecipes = true + #. + #The amount of Light sources destroyed before Chromatic Compound turns into Refined Radiance. + # Default: 10 + # Range: > 1 + lightSourceCountForRefinedRadiance = 10 + #. + #Allow the standard in-world Refined Radiance recipes. + enableRefinedRadianceRecipe = true + #. + #Allow the standard in-world Shadow Steel recipe. + enableShadowSteelRecipe = true + +#. +#Parameters and abilities of Create's kinetic mechanisms +[kinetics] + #. + #. + #Disable the Stress mechanic altogether. + disableStress = false + #. + #Maximum length in blocks of mechanical belts. + # Default: 20 + # Range: > 5 + maxBeltLength = 20 + #. + #Maximum length in blocks of chain conveyor connections. + # Default: 32 + # Range: > 5 + maxChainConveyorLength = 32 + #. + #Maximum amount of connections each chain conveyor can have. + # Default: 4 + # Range: > 1 + maxChainConveyorConnections = 4 + #. + #Damage dealt by active Crushing Wheels. + # Default: 4 + # Range: > 0 + crushingDamage = 4 + #. + #[in Revolutions per Minute] + #Maximum allowed rotation speed for any Kinetic Block. + # Default: 256 + # Range: > 64 + maxRotationSpeed = 256 + #. + #Select what mobs should ignore Deployers when attacked by them. + #Allowed Values: ALL, CREEPERS, NONE + ignoreDeployerAttacks = "CREEPERS" + #. + #Game ticks between Kinetic Blocks checking whether their source is still valid. + # Default: 60 + # Range: > 5 + kineticValidationFrequency = 60 + #. + #multiplier used for calculating exhaustion from speed when a crank is turned. + # Default: 0.009999999776482582 + # Range: 0.0 ~ 1.0 + crankHungerMultiplier = 0.009999999776482582 + #. + #Amount of sail-type blocks required for a windmill to assemble successfully. + # Default: 8 + # Range: > 0 + minimumWindmillSails = 8 + #. + #Number of sail-type blocks required to increase windmill speed by 1RPM. + # Default: 8 + # Range: > 1 + windmillSailsPerRPM = 8 + #. + #Max Distance in blocks a Weighted Ejector can throw + # Default: 32 + # Range: > 0 + maxEjectorDistance = 32 + #. + #Time in ticks until the next item launched by an ejector scans blocks for potential collisions + # Default: 120 + # Range: > 10 + ejectorScanInterval = 120 + + #. + #Encased Fan + [kinetics.encasedFan] + #. + #Maximum distance in blocks Fans can push entities. + # Default: 20 + # Range: > 5 + fanPushDistance = 20 + #. + #Maximum distance in blocks from where Fans can pull entities. + # Default: 20 + # Range: > 5 + fanPullDistance = 20 + #. + #Game ticks between Fans checking for anything blocking their air flow. + # Default: 30 + # Range: > 10 + fanBlockCheckRate = 30 + #. + #[in Revolutions per Minute] + #Rotation speed at which the maximum stats of fans are reached. + # Default: 256 + # Range: > 64 + fanRotationArgmax = 256 + #. + #Game ticks required for a Fan-based processing recipe to take effect. + # Default: 150 + # Range: > 0 + fanProcessingTime = 150 + + #. + #Moving Contraptions + [kinetics.contraptions] + #. + #Maximum amount of blocks in a structure movable by Pistons, Bearings or other means. + # Default: 2048 + # Range: > 1 + maxBlocksMoved = 2048 + #. + #Maximum value of a chassis attachment range. + # Default: 16 + # Range: > 1 + maxChassisRange = 16 + #. + #Maximum amount of extension poles behind a Mechanical Piston. + # Default: 64 + # Range: > 1 + maxPistonPoles = 64 + #. + #Max length of rope available off a Rope Pulley. + # Default: 384 + # Range: > 1 + maxRopeLength = 384 + #. + #Maximum allowed distance of two coupled minecarts. + # Default: 32 + # Range: > 1 + maxCartCouplingLength = 32 + #. + #Maximum depth of blocks filled in using a Mechanical Roller. + # Default: 12 + # Range: > 1 + rollerFillDepth = 12 + #. + #Whether minecart contraptions can be picked up in survival mode. + survivalContraptionPickup = true + #. + #Configure how Spawner blocks can be moved by contraptions. + #Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE + movableSpawners = "NO_PICKUP" + #. + #Configure how Budding Amethyst can be moved by contraptions. + #Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE + amethystMovement = "NO_PICKUP" + #. + #Configure how Obsidian blocks can be moved by contraptions. + #Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE + movableObsidian = "UNMOVABLE" + #. + #Configure how Reinforced Deepslate blocks can be moved by contraptions. + #Allowed Values: MOVABLE, NO_PICKUP, UNMOVABLE + movableReinforcedDeepslate = "UNMOVABLE" + #. + #Whether items mined or harvested by contraptions should be placed in their mounted storage. + moveItemsToStorage = true + #. + #Whether harvesters should break crops that aren't fully grown. + harvestPartiallyGrown = false + #. + #Whether harvesters should replant crops after harvesting. + harvesterReplants = true + #. + #Whether minecart contraptions can be placed into container items. + minecartContraptionInContainers = false + #. + #Whether stabilised bearings create a separated entity even on non-rotating contraptions. + #[Technical] + stabiliseStableContraptions = false + #. + #Whether the players hitbox should be expanded to the size of the contraption hitbox. + #[Technical] + syncPlayerPickupHitboxWithContraptionHitbox = false + #. + #Whether to prevent block dropping when contraption is placed inside in-world blocks. + noDropWhenContraptionReplaceBlocks = false + + #. + #Configure speed/capacity levels for requirements and indicators. + [kinetics.stats] + #. + #[in Revolutions per Minute] + #Minimum speed of rotation to be considered 'medium' + # Default: 30.0 + # Range: 0.0 ~ 4096.0 + mediumSpeed = 30.0 + #. + #[in Revolutions per Minute] + #Minimum speed of rotation to be considered 'fast' + # Default: 100.0 + # Range: 0.0 ~ 65535.0 + fastSpeed = 100.0 + #. + #[in Stress Units] + #Minimum stress impact to be considered 'medium' + # Default: 4.0 + # Range: 0.0 ~ 4096.0 + mediumStressImpact = 4.0 + #. + #[in Stress Units] + #Minimum stress impact to be considered 'high' + # Default: 8.0 + # Range: 0.0 ~ 65535.0 + highStressImpact = 8.0 + #. + #[in Stress Units] + #Minimum added Capacity by sources to be considered 'medium' + # Default: 256.0 + # Range: 0.0 ~ 4096.0 + mediumCapacity = 256.0 + #. + #[in Stress Units] + #Minimum added Capacity by sources to be considered 'high' + # Default: 1024.0 + # Range: 0.0 ~ 65535.0 + highCapacity = 1024.0 + + #. + #Fine tune the kinetic stats of individual components + [kinetics.stressValues.v2] + + #. + #. + #[in Stress Units] + #Configure the individual stress impact of mechanical blocks. Note that this cost is doubled for every speed increase it receives. + [kinetics.stressValues.v2.impact] + brass_encased_shaft = 0.0 + turntable = 4.0 + clutch = 0.0 + mechanical_mixer = 4.0 + gearbox = 0.0 + mechanical_bearing = 4.0 + copper_backtank = 4.0 + hose_pulley = 4.0 + display_board = 0.0 + crushing_wheel = 8.0 + adjustable_chain_gearshift = 0.0 + millstone = 4.0 + rotation_speed_controller = 0.0 + sticky_mechanical_piston = 4.0 + mechanical_crafter = 2.0 + deployer = 4.0 + elevator_pulley = 4.0 + stressometer = 0.0 + cogwheel = 0.0 + encased_chain_drive = 0.0 + belt = 0.0 + brass_encased_large_cogwheel = 0.0 + weighted_ejector = 2.0 + chain_conveyor = 1.0 + mechanical_saw = 4.0 + flywheel = 0.0 + mechanical_piston = 4.0 + speedometer = 0.0 + brass_encased_cogwheel = 0.0 + clockwork_bearing = 4.0 + mechanical_press = 8.0 + mechanical_drill = 4.0 + andesite_encased_shaft = 0.0 + netherite_backtank = 4.0 + mechanical_arm = 2.0 + sequenced_gearshift = 0.0 + andesite_encased_large_cogwheel = 0.0 + shaft = 0.0 + cuckoo_clock = 1.0 + gearshift = 0.0 + rope_pulley = 4.0 + andesite_encased_cogwheel = 0.0 + large_cogwheel = 0.0 + encased_fan = 2.0 + mysterious_cuckoo_clock = 1.0 + gantry_shaft = 0.0 + mechanical_pump = 4.0 + + #. + #[in Stress Units] + #Configure how much stress a source can accommodate for. + [kinetics.stressValues.v2.capacity] + steam_engine = 1024.0 + water_wheel = 32.0 + copper_valve_handle = 8.0 + hand_crank = 8.0 + creative_motor = 16384.0 + large_water_wheel = 128.0 + windmill_bearing = 512.0 + +#. +#Create's liquid manipulation tools +[fluids] + #. + #. + #[in Buckets] + #The amount of liquid a tank can hold per block. + # Default: 8 + # Range: > 1 + fluidTankCapacity = 8 + #. + #[in Blocks] + #The maximum height a fluid tank can reach. + # Default: 32 + # Range: > 1 + fluidTankMaxHeight = 32 + #. + #[in Blocks] + #The maximum distance a mechanical pump can push or pull liquids on either side. + # Default: 16 + # Range: > 1 + mechanicalPumpRange = 16 + #. + #[in Blocks] + #The maximum distance a hose pulley can draw fluid blocks from. + # Default: 128 + # Range: > 1 + hosePulleyRange = 128 + #. + #[in Blocks] + #[-1 to disable this behaviour] + #The minimum amount of fluid blocks the hose pulley needs to find before deeming it an infinite source. + # Default: 10000 + # Range: > -1 + hosePulleyBlockThreshold = 10000 + #. + #Whether hose pulleys should continue filling up above-threshold sources. + fillInfinite = false + #. + #Configure which fluids can be drained infinitely. + #Allowed Values: ALLOW_ALL, DENY_ALL, ALLOW_BY_TAG, DENY_BY_TAG + bottomlessFluidMode = "ALLOW_BY_TAG" + #. + #Whether hose pulleys should be allowed to place fluid sources. + fluidFillPlaceFluidSourceBlocks = true + #. + #Whether open-ended pipes should be allowed to place fluid sources. + pipesPlaceFluidSourceBlocks = true + +#. +#Tweaks for logistical components +[logistics] + #. + #. + #The amount of ticks a funnel waits between item transferrals, when it is not re-activated by redstone. + # Default: 8 + # Range: > 1 + defaultExtractionTimer = 8 + #. + #The amount of ticks a portable storage interface waits for transfers until letting contraptions move along. + # Default: 60 + # Range: > 1 + psiTimeout = 60 + #. + #Maximum distance in blocks a Mechanical Arm can reach across. + # Default: 5 + # Range: > 1 + mechanicalArmRange = 5 + #. + #Maximum distance in blocks a Package Port can be placed at from its target. + # Default: 5 + # Range: > 1 + packagePortRange = 5 + #. + #Maximum possible range in blocks of redstone link connections. + # Default: 256 + # Range: > 1 + linkRange = 256 + #. + #Maximum possible distance in blocks between display links and their target. + # Default: 64 + # Range: > 1 + displayLinkRange = 64 + #. + #The total amount of stacks a vault can hold per block in size. + # Default: 20 + # Range: 1 ~ 2048 + vaultCapacity = 20 + #. + #The amount of packages a chain conveyor can carry at a time. + # Default: 20 + # Range: > 1 + chainConveyorCapacity = 20 + #. + #The amount of ticks a brass tunnel waits between distributions. + # Default: 10 + # Range: 1 ~ 10 + brassTunnelTimer = 10 + #. + #The amount of ticks a factory gauge waits between requests. + # Default: 100 + # Range: > 5 + factoryGaugeTimer = 100 + #. + #Whether hostile mobs walking near a seat will start riding it. + seatHostileMobs = true + +#. +#Everything related to Schematic tools +[schematics] + #. + #. + #Whether placing a Schematic directly in Creative Mode should replace world blocks with Air + creativePrintIncludesAir = false + #. + #The amount of Schematics a player can upload until previous ones are overwritten. + # Default: 10 + # Range: > 1 + maxSchematics = 10 + #. + #[in KiloBytes] + #The maximum allowed file size of uploaded Schematics. + # Default: 256 + # Range: > 16 + maxTotalSchematicSize = 256 + #. + #[in Bytes] + #The maximum packet size uploaded Schematics are split into. + # Default: 1024 + # Range: 256 ~ 32767 + maxSchematicPacketSize = 1024 + #. + #Amount of game ticks without new packets arriving until an active schematic upload process is discarded. + # Default: 600 + # Range: > 100 + schematicIdleTimeout = 600 + + #. + #Schematicannon + [schematics.schematicannon] + #. + #Amount of game ticks between shots of the cannon. Higher => Slower + # Default: 10 + # Range: > 1 + schematicannonDelay = 10 + #. + #Amount of blocks a Schematicannon can print per Gunpowder item provided. + # Default: 400 + # Range: > 1 + schematicannonShotsPerGunpowder = 400 + +#. +#Equipment and gadgets added by Create +[equipment] + #. + #. + #The Maximum Distance to an active mirror for the symmetry wand to trigger. + # Default: 50 + # Range: > 10 + maxSymmetryWandRange = 50 + #. + #The Maximum Distance a Block placed by Create's placement assist will have to its interaction point. + # Default: 12 + # Range: > 3 + placementAssistRange = 12 + #. + #The Maximum Distance at which a Toolbox can interact with Players' Inventories. + # Default: 10 + # Range: > 1 + toolboxRange = 10 + #. + #The Maximum volume of Air that can be stored in a backtank = Seconds of underwater breathing + # Default: 900 + # Range: > 1 + airInBacktank = 900 + #. + #The volume of Air added by each level of the backtanks Capacity Enchantment + # Default: 300 + # Range: > 1 + enchantedBacktankCapacity = 300 + #. + #Amount of free Extendo Grip actions provided by one filled Copper Backtank. Set to 0 makes Extendo Grips unbreakable + # Default: 1000 + # Range: > 0 + maxExtendoGripActions = 1000 + #. + #Amount of free Potato Cannon shots provided by one filled Copper Backtank. Set to 0 makes Potato Cannons unbreakable + # Default: 200 + # Range: > 0 + maxPotatoCannonShots = 200 + +#. +#Create's builtin Railway systems +[trains] + #. + #. + #Whether moving Trains can hurt colliding mobs and players. + trainsCauseDamage = true + #. + #Maximum length of track that can be placed as one batch or turn. + # Default: 32 + # Range: 16 ~ 128 + maxTrackPlacementLength = 32 + #. + #Maximum length of a Train Stations' assembly track. + # Default: 128 + # Range: 5 ~ 512 + maxAssemblyLength = 128 + #. + #Maximum amount of bogeys assembled as a single Train. + # Default: 20 + # Range: 1 ~ 200 + maxBogeyCount = 20 + #. + #Relative speed of a manually controlled Train compared to a Scheduled one. + # Default: 0.75 + # Range: 0.0 ~ 3.4028234663852886E38 + manualTrainSpeedModifier = 0.75 + + #. + #Standard Trains + [trains.trainStats] + #. + #[in Blocks/Second] + #The top speed of any assembled Train. + # Default: 28.0 + # Range: 0.0 ~ 3.4028234663852886E38 + trainTopSpeed = 28.0 + #. + #[in Blocks/Second] + #The top speed of Trains during a turn. + # Default: 14.0 + # Range: 0.0 ~ 3.4028234663852886E38 + trainTurningTopSpeed = 14.0 + #. + #[in Blocks/Second²] + #The acceleration of any assembled Train. + # Default: 3.0 + # Range: 0.0 ~ 3.4028234663852886E38 + trainAcceleration = 3.0 + + #. + #Powered Trains + [trains.poweredTrainStats] + #. + #[in Blocks/Second] + #The top speed of powered Trains. + # Default: 40.0 + # Range: 0.0 ~ 3.4028234663852886E38 + poweredTrainTopSpeed = 40.0 + #. + #[in Blocks/Second] + #The top speed of powered Trains during a turn. + # Default: 20.0 + # Range: 0.0 ~ 3.4028234663852886E38 + poweredTrainTurningTopSpeed = 20.0 + #. + #[in Blocks/Second²] + #The acceleration of powered Trains. + # Default: 3.0 + # Range: 0.0 ~ 3.4028234663852886E38 + poweredTrainAcceleration = 3.0 diff --git a/neoforge/run/config/flywheel-client.toml b/neoforge/run/config/flywheel-client.toml new file mode 100644 index 0000000..a0e277a --- /dev/null +++ b/neoforge/run/config/flywheel-client.toml @@ -0,0 +1,14 @@ +#Select the backend to use. Set to "DEFAULT" to let Flywheel decide. +backend = "DEFAULT" +#Enable or disable instance update limiting with distance. +limitUpdates = true +#The number of worker threads to use. Set to -1 to let Flywheel decide. Set to 0 to disable parallelism. Requires a game restart to take effect. +# Default: -1 +# Range: -1 ~ 8 +workerThreads = -1 + +#Config options for Flywheel's built-in backends. +[flw_backends] + #How smooth Flywheel's shader-based lighting should be. May have a large performance impact. + #Allowed Values: FLAT, TRI_LINEAR, SMOOTH, SMOOTH_INNER_FACE_CORRECTED + lightSmoothness = "SMOOTH" diff --git a/neoforge/run/config/fml.toml b/neoforge/run/config/fml.toml new file mode 100644 index 0000000..f126de7 --- /dev/null +++ b/neoforge/run/config/fml.toml @@ -0,0 +1,32 @@ +#Disables File Watcher. Used to automatically update config if its file has been modified. +disableConfigWatcher = false +#Should we control the window. Disabling this disables new GL features and can be bad for mods that rely on them. +earlyWindowControl = true +#Max threads for early initialization parallelism, -1 is based on processor count +maxThreads = -1 +#Enable NeoForge global version checking +versionCheck = true +#Default config path for servers +defaultConfigPath = "defaultconfigs" +#Disables Optimized DFU client-side - already disabled on servers +disableOptimizedDFU = true +#Early window provider +earlyWindowProvider = "fmlearlywindow" +#Early window width +earlyWindowWidth = 854 +#Early window height +earlyWindowHeight = 480 +#Early window framebuffer scale +earlyWindowFBScale = 1 +#Early window starts maximized +earlyWindowMaximized = false +#Skip specific GL versions, may help with buggy graphics card drivers +earlyWindowSkipGLVersions = [] +#Squir? +earlyWindowSquir = false +#Define dependency overrides below +#Dependency overrides can be used to forcibly remove a dependency constraint from a mod or to force a mod to load AFTER another mod +#Using dependency overrides can cause issues. Use at your own risk. +#Example dependency override for the mod with the id 'targetMod': dependency constraints (incompatibility clauses or restrictive version ranges) against mod 'dep1' are removed, and the mod will now load after the mod 'dep2' +#dependencyOverrides.targetMod = ["-dep1", "+dep2"] +dependencyOverrides = {} diff --git a/neoforge/run/config/neoforge-client.toml b/neoforge/run/config/neoforge-client.toml new file mode 100644 index 0000000..d3f2e54 --- /dev/null +++ b/neoforge/run/config/neoforge-client.toml @@ -0,0 +1,8 @@ +#EXPERIMENTAL: Enable the NeoForge block rendering pipeline - fixes the lighting of custom models. +experimentalForgeLightPipelineEnabled = false +#When enabled, NeoForge will show any warnings that occurred during loading. +showLoadWarnings = true +#Set to true to use a combined DEPTH_STENCIL attachment instead of two separate ones. +useCombinedDepthStencilAttachment = false +#A config option mainly for developers. Logs out configuration values that do not have translations when running a client in a development environment. +logUntranslatedConfigurationWarnings = true diff --git a/neoforge/run/config/neoforge-common.toml b/neoforge/run/config/neoforge-common.toml new file mode 100644 index 0000000..9e1ac4c --- /dev/null +++ b/neoforge/run/config/neoforge-common.toml @@ -0,0 +1,8 @@ +#A config option mainly for developers. Logs out modded item tags that do not have translations when running on integrated server. Format desired is tag.item.. for the translation key. Defaults to SILENCED. +#Allowed Values: SILENCED, DEV_SHORT, DEV_VERBOSE, PROD_SHORT, PROD_VERBOSE +logUntranslatedItemTagWarnings = "SILENCED" +#A config option mainly for developers. Logs out modded tags that are using the 'forge' namespace when running on integrated server. Defaults to DEV_SHORT. +#Allowed Values: SILENCED, DEV_SHORT, DEV_VERBOSE, PROD_SHORT, PROD_VERBOSE +logLegacyTagWarnings = "DEV_SHORT" +#Set this to true to enable showing debug information about attributes on an item when advanced tooltips is on. +attributeAdvancedTooltipDebugInfo = true diff --git a/neoforge/run/config/neoforge-server.toml b/neoforge/run/config/neoforge-server.toml new file mode 100644 index 0000000..99d6fcc --- /dev/null +++ b/neoforge/run/config/neoforge-server.toml @@ -0,0 +1,10 @@ +#Set this to true to remove any BlockEntity that throws an error in its update method instead of closing the server and reporting a crash log. BE WARNED THIS COULD SCREW UP EVERYTHING USE SPARINGLY WE ARE NOT RESPONSIBLE FOR DAMAGES. +removeErroringBlockEntities = false +#Set this to true to remove any Entity (Note: Does not include BlockEntities) that throws an error in its tick method instead of closing the server and reporting a crash log. BE WARNED THIS COULD SCREW UP EVERYTHING USE SPARINGLY WE ARE NOT RESPONSIBLE FOR DAMAGES. +removeErroringEntities = false +#Set this to true to check the entire entity's collision bounding box for ladders instead of just the block they are in. Causes noticeable differences in mechanics so default is vanilla behavior. Default: false. +fullBoundingBoxLadders = false +#The permission handler used by the server. Defaults to neoforge:default_handler if no such handler with that name is registered. +permissionHandler = "neoforge:default_handler" +#Set this to true to enable advertising the dedicated server to local LAN clients so that it shows up in the Multiplayer screen automatically. +advertiseDedicatedServerToLan = true diff --git a/neoforge/run/config/offroad-server.toml b/neoforge/run/config/offroad-server.toml new file mode 100644 index 0000000..ed54fd2 --- /dev/null +++ b/neoforge/run/config/offroad-server.toml @@ -0,0 +1,39 @@ +#. +#Parameters and abilities of Offroad Blocks +[blocks] + #. + #. + #The block gathering search radius of the borehead bearing + # Default: 1.5 + # Range: 0.0 ~ 10.0 + borehead_bearing_search_radius = 1.5 + #. + #The amount of ticks it takes for the borehead bearing to recover from an item stall + # Default: 10 + # Range: > 0 + borehead_bearing_stall_recovery_ticks = 10 + #. + #Whether the borehead bearing should stall when it doesn't have enough room to accept a mined block + borehead_bearing_stalling_enabled = true + #. + #The divisor used to determine the max speed of the attached borehead contraption contraption + # Default: 4.0 + # Range: 1.0 ~ 3.4028234663852886E38 + borehead_bearing_rotation_divisor = 4.0 + +#. +#Parameters and abilities of Offroad's kinetic mechanisms +[kinetics] + + #. + #. + #Fine tune the kinetic stats of individual components + [kinetics.stressValues.v2] + + #. + #. + #[in Stress Units] + #Configure the individual stress impact of mechanical blocks. Note that this cost is doubled for every speed increase it receives. + [kinetics.stressValues.v2.impact] + wheel_mount = 16.0 + borehead_bearing = 8.0 diff --git a/neoforge/run/config/ponder-client.toml b/neoforge/run/config/ponder-client.toml new file mode 100644 index 0000000..ee09527 --- /dev/null +++ b/neoforge/run/config/ponder-client.toml @@ -0,0 +1,20 @@ +#. +#Slow down a ponder scene whenever there is text on screen. +comfyReading = false +#. +#Show additional info in the ponder view and reload scene scripts more frequently. +editingMode = false + +#. +#Settings for the Placement Assist +[placementAssist] + #. + #What indicator should be used when showing where the assisted placement ends up relative to your crosshair + #Choose 'NONE' to disable the Indicator altogether + #Allowed Values: TEXTURE, TRIANGLE, NONE + indicatorType = "TEXTURE" + #. + #Change the size of the Indicator by this multiplier + # Default: 1.0 + # Range: 0.0 ~ 3.4028234663852886E38 + indicatorScale = 1.0 diff --git a/neoforge/run/config/sable-client.toml b/neoforge/run/config/sable-client.toml new file mode 100644 index 0000000..b4fa80a --- /dev/null +++ b/neoforge/run/config/sable-client.toml @@ -0,0 +1,17 @@ +#Whether sub-levels should apply block shading dynamically +sub_level_dynamic_shading = true +#Whether sub-levels can occlude the water surface +sub_level_water_occlusion = true +#Whether sub-levels should cast a shadow on the world +sub_level_skylight_shadows = false +#The distance back in game-ticks that the snapshot interpolation should operate +# Default: 1.5 +# Range: 0.0 ~ 100.0 +sub_level_snapshot_interpolation_delay_ticks = 1.5 +#The renderer to use for sub-levels +#Allowed Values: SODIUM_REACHAROUND +sub_level_renderer = "SODIUM_REACHAROUND" +#The zoom sensitivity for sub-level camera types +# Default: 0.2 +# Range: 0.0 ~ 100.0 +sub_level_zoom_sensitivity = 0.2 diff --git a/neoforge/run/config/sable-common-1.toml.bak b/neoforge/run/config/sable-common-1.toml.bak new file mode 100644 index 0000000..ea26db8 --- /dev/null +++ b/neoforge/run/config/sable-common-1.toml.bak @@ -0,0 +1,34 @@ +#Whether sub-levels can split when parts are separated +sub_level_splitting = true +#Sub-level splitting heatmap steps that take place per tick +# Default: 200 +# Range: > 1 +sub_level_splitting_heatmap_steps = 200 +#The minimum y coordinate sub-levels can exist at +# Default: -10000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_min = -10000.0 +#The maximum y coordinate sub-levels can exist at +# Default: 100000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_max = 100000.0 +#The fraction of velocity that is retained when a sub-level is loaded in. A value of 0.0 will indicate that no velocity should be carried over, while a value of 1.0 would carry over 100% of velocity on load. +# Default: 0.9 +# Range: 0.0 ~ 1.0 +sub_level_velocity_retained_on_load = 0.9 +#The strength multiplier applied to sub-level punching impulses +# Default: 2.1 +# Range: 0.0 ~ Infinity +sub_level_punch_strength_multiplier = 2.1 +#The strength multiplier applied to the vertical component of downward sub-level punching impulses (to prevent jumping by punching the ground while standing on something light) +# Default: 0.175 +# Range: 0.0 ~ Infinity +sub_level_punch_downward_strength_multiplier = 0.175 +#The cooldown in ticks between sub-level punches +# Default: 3 +# Range: > 0 +sub_level_punch_cooldown_ticks = 3 +#If the entire Sable UDP Networking pipeline should be disabled. This can improve compatibility with certain mods like Replay mod and certain networking setups, but will have worse performance and latency for networking sub-levels. +disable_udp_pipeline = false +#If Sable should attempt to authenticate with clients and send them sub-level data over UDP +attempt_udp_networking = true diff --git a/neoforge/run/config/sable-common-2.toml.bak b/neoforge/run/config/sable-common-2.toml.bak new file mode 100644 index 0000000..85f6223 --- /dev/null +++ b/neoforge/run/config/sable-common-2.toml.bak @@ -0,0 +1,38 @@ +#Whether sub-levels can split when parts are separated +sub_level_splitting = true +#Sub-level splitting heatmap steps that take place per tick +# Default: 200 +# Range: > 1 +sub_level_splitting_heatmap_steps = 200 +#The distance to network sub-levels to players at +# Default: 320.0 +# Range: 1.0 ~ 1.7976931348623157E308 +sub_level_tracking_range = 320.0 +#The minimum y coordinate sub-levels can exist at +# Default: -10000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_min = -10000.0 +#The maximum y coordinate sub-levels can exist at +# Default: 100000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_max = 100000.0 +#The fraction of velocity that is retained when a sub-level is loaded in. A value of 0.0 will indicate that no velocity should be carried over, while a value of 1.0 would carry over 100% of velocity on load. +# Default: 0.9 +# Range: 0.0 ~ 1.0 +sub_level_velocity_retained_on_load = 0.9 +#The strength multiplier applied to sub-level punching impulses +# Default: 2.1 +# Range: 0.0 ~ Infinity +sub_level_punch_strength_multiplier = 2.1 +#The strength multiplier applied to the vertical component of downward sub-level punching impulses (to prevent jumping by punching the ground while standing on something light) +# Default: 0.175 +# Range: 0.0 ~ Infinity +sub_level_punch_downward_strength_multiplier = 0.175 +#The cooldown in ticks between sub-level punches +# Default: 3 +# Range: > 0 +sub_level_punch_cooldown_ticks = 3 +#If the entire Sable UDP Networking pipeline should be disabled. This can improve compatibility with certain mods like Replay mod and certain networking setups, but will have worse performance and latency for networking sub-levels. +disable_udp_pipeline = false +#If Sable should attempt to authenticate with clients and send them sub-level data over UDP +attempt_udp_networking = true diff --git a/neoforge/run/config/sable-common.toml b/neoforge/run/config/sable-common.toml new file mode 100644 index 0000000..196fa6d --- /dev/null +++ b/neoforge/run/config/sable-common.toml @@ -0,0 +1,38 @@ +#Whether sub-levels can split when parts are separated +sub_level_splitting = true +#Sub-level splitting heatmap steps that take place per tick +# Default: 200 +# Range: > 1 +sub_level_splitting_heatmap_steps = 200 +#The minimum y coordinate sub-levels can exist at +# Default: -10000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_min = -10000.0 +#The maximum y coordinate sub-levels can exist at +# Default: 100000.0 +# Range: -Infinity ~ Infinity +sub_level_remove_max = 100000.0 +#The fraction of velocity that is retained when a sub-level is loaded in. A value of 0.0 will indicate that no velocity should be carried over, while a value of 1.0 would carry over 100% of velocity on load. +# Default: 0.9 +# Range: 0.0 ~ 1.0 +sub_level_velocity_retained_on_load = 0.9 +#The strength multiplier applied to sub-level punching impulses +# Default: 2.1 +# Range: 0.0 ~ Infinity +sub_level_punch_strength_multiplier = 2.1 +#The strength multiplier applied to the vertical component of downward sub-level punching impulses (to prevent jumping by punching the ground while standing on something light) +# Default: 0.175 +# Range: 0.0 ~ Infinity +sub_level_punch_downward_strength_multiplier = 0.175 +#The cooldown in ticks between sub-level punches +# Default: 3 +# Range: > 0 +sub_level_punch_cooldown_ticks = 3 +#If the entire Sable UDP Networking pipeline should be disabled. This can improve compatibility with certain mods like Replay mod and certain networking setups, but will have worse performance and latency for networking sub-levels. +disable_udp_pipeline = false +#If Sable should attempt to authenticate with clients and send them sub-level data over UDP +attempt_udp_networking = true +#The distance to network sub-levels to players at +# Default: 320.0 +# Range: 1.0 ~ 1.7976931348623157E308 +sub_level_tracking_range = 16384.0 diff --git a/neoforge/run/config/simulated-client.toml b/neoforge/run/config/simulated-client.toml new file mode 100644 index 0000000..cbbf8bc --- /dev/null +++ b/neoforge/run/config/simulated-client.toml @@ -0,0 +1,18 @@ +#. +#Settings of Simulated Items +[items] + #. + #. + #When to display physics properties in block tooltips + #Allowed Values: ALWAYS, SHIFT, GOGGLES, SHIFT_GOGGLES, NEVER + displayProperties = "GOGGLES" + #. + #The sensitivity of scrolling when holding a sub-level with the Creative Physics Staff + # Default: 0.6000000238418579 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_scroll_sensitivity = 0.6000000238418579 + #. + #The sensitivity of rotation when holding a sub-level with the Creative Physics Staff + # Default: 0.3499999940395355 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_rotate_sensitivity = 0.3499999940395355 diff --git a/neoforge/run/config/simulated-server.toml b/neoforge/run/config/simulated-server.toml new file mode 100644 index 0000000..f6e45cd --- /dev/null +++ b/neoforge/run/config/simulated-server.toml @@ -0,0 +1,224 @@ +#. +#Parameters and abilities of Simulated's kinetic mechanisms +[kinetics] + + #. + #. + #Fine tune the kinetic stats of individual components + [kinetics.stressValues.v2] + + #. + #. + #[in Stress Units] + #Configure the individual stress impact of mechanical blocks. Note that this cost is doubled for every speed increase it receives. + [kinetics.stressValues.v2.impact] + rope_winch = 4.0 + auger_shaft = 0.5 + torsion_spring = 16.0 + auger_cog = 0.5 + swivel_bearing = 4.0 + + #. + #[in Stress Units] + #Configure how much stress a source can accommodate for. + [kinetics.stressValues.v2.capacity] + light_blue_portable_engine = 64.0 + yellow_portable_engine = 64.0 + gray_portable_engine = 64.0 + black_portable_engine = 64.0 + red_portable_engine = 64.0 + lime_portable_engine = 64.0 + light_gray_portable_engine = 64.0 + pink_portable_engine = 64.0 + green_portable_engine = 64.0 + cyan_portable_engine = 64.0 + torsion_spring = 8.0 + brown_portable_engine = 64.0 + magenta_portable_engine = 64.0 + purple_portable_engine = 64.0 + steering_wheel = 16.0 + white_portable_engine = 64.0 + blue_portable_engine = 64.0 + orange_portable_engine = 64.0 + +#. +#Settings for sub-level assembly +[assembly] + #. + #. + #Maximum amount of blocks in a structure assemble-able by Physics Assemblers, Swivel Bearings, or other means. + # Default: 128000 + # Range: > 1 + maxBlocksMoved = 128000 + #. + #Maximum range in blocks which honey glue may initially be placed + # Default: 48 + # Range: > 1 + honeyGlueRange = 48 + #. + #Maximum range in blocks which merging glue may be placed by items such as slime balls + # Default: 4.0 + # Range: 0.0 ~ 3.4028234663852886E38 + mergingGlueRange = 4.0 + #. + #The amount of ticks that disassembly alignment is allowed to take before failing. + # Default: 20 + # Range: > 5 + maxDisassemblyTicks = 20 + #. + #The maximum amount of degrees a Simulated Contraption is allowed to be tilted to fully disassemble + # Default: 4.0 + # Range: 0.0 ~ 3.4028234663852886E38 + disassemblyDegreeTolerance = 4.0 + #. + #The maximum velocity a Simulated Contraption is allowed to disassemble at in m/s + # Default: 5.0 + # Range: 0.0 ~ 3.4028234663852886E38 + disassemblyMaxVelocity = 5.0 + #. + #The maximum angular velocity a Simulated Contraption is allowed to disassemble at in rad/s + # Default: 1.5707963705062866 + # Range: 0.0 ~ 3.4028234663852886E38 + disassemblyMaxAngularVelocity = 1.5707963705062866 + #. + #Disallow disassembly of Simulated Contraptions in mid-air, requiring them to be within a few chunk sections of terrain + disallowMidAirDisassembly = true + #. + #Whether only the original Physics Assembler can disassemble the Sub-Level it assembled + #Disabling allows *ALL* Physics Assemblers to disassemble any Sub-Level + "Primary Disassembly" = false + +#. +#Parameters related to the physics of Simulated Contraptions +[physics] + #. + #. + #The maximum force two magnets will apply towards each other + # Default: 1000.0 + # Range: 0.0 ~ 3.4028234663852886E38 + redstoneMagnetStrength = 1000.0 + #. + #The maximum force two docking connectors will apply towards each other + # Default: 1000.0 + # Range: 0.0 ~ 3.4028234663852886E38 + dockingConnectorStrength = 1000.0 + #. + #Limit for linear acceleration for a magnet pair + # Default: 500.0 + # Range: 0.0 ~ 3.4028234663852886E38 + redstoneMagnetLinearAccelerationClamping = 500.0 + #. + #Limit for angular acceleration for a magnet pair + # Default: 50.0 + # Range: 0.0 ~ 3.4028234663852886E38 + redstoneMagnetAngularAccelerationClamping = 50.0 + #. + #Limit for linear acceleration for a docking connector pair + # Default: 500.0 + # Range: 0.0 ~ 3.4028234663852886E38 + dockingConnectorLinearAccelerationClamping = 500.0 + #. + #Limit for angular acceleration for a docking connector pair + # Default: 50.0 + # Range: 0.0 ~ 3.4028234663852886E38 + dockingConnectorAngularAccelerationClamping = 50.0 + #. + #The stiffness of locked swivel bearing joints + # Default: 1600.0 + # Range: 0.0 ~ 3.4028234663852886E38 + swivel_stiffness = 1600.0 + #. + #The friction / damping of unlocked swivel bearing joints + # Default: 0.30000001192092896 + # Range: 0.0 ~ 3.4028234663852886E38 + swivel_friction = 0.30000001192092896 + #. + #The damping of locked swivel bearing joints + # Default: 40.0 + # Range: 0.0 ~ 3.4028234663852886E38 + swivel_damping = 40.0 + #. + #The angle tolerance in degrees for docking connectors to link + # Default: 20.0 + # Range: 0.0 ~ 365.0 + docking_connector_angle = 20.0 + #. + #The distance tolerance in blocks for docking connectors to link + # Default: 0.5 + # Range: 0.0 ~ 4.0 + docking_connector_distance = 0.5 + #. + #The maximum force handles are allowed to apply to the contraption they are attached to + # Default: 120.0 + # Range: 0.0 ~ 3.4028234663852886E38 + handleMaxForce = 120.0 + #. + #The linear stiffness of the joint motors used to hold sub-levels by the Creative Physics Staff + # Default: 2650.0 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_linear_stiffness = 2650.0 + #. + #The linear damping of the joint motors used to hold sub-levels by the Creative Physics Staff + # Default: 125.0 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_linear_damping = 125.0 + #. + #The angular stiffness of the joint motors used to hold sub-levels by the Creative Physics Staff + # Default: 10000.0 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_angular_stiffness = 10000.0 + #. + #The angular damping of the joint motors used to hold sub-levels by the Creative Physics Staff + # Default: 850.0 + # Range: 0.0 ~ 3.4028234663852886E38 + physics_staff_angular_damping = 850.0 + +#. +#Parameters and abilities of Simulated Blocks +[blocks] + #. + #. + #Maximum range for the Optical Sensor + # Default: 15 + # Range: > 0 + optical_sensor_max_range = 15 + #. + #Maximum range for the Laser Pointer + # Default: 100 + # Range: > 0 + laser_pointer_max_range = 100 + #. + #Maximum range for rope connections + # Default: 40.0 + # Range: 0.0 ~ 1000.0 + max_rope_range = 40.0 + #. + #Maximum percent the rope mounted on a Rope Winch is allowed to stretch before not accepting input + # Default: 25.0 + # Range: 0.0 ~ 100.0 + max_rope_winch_stretch_allowed = 25.0 + #. + #Steepest angle at which a rope can be grabbed onto using a wrench in degrees + # Default: 85.0 + # Range: 0.0 ~ 90.0 + max_rope_zipline_angle = 85.0 + #. + #The maximum RPM a Swivel Bearing is allowed to rotate at + # Default: 96.0 + # Range: 0.0 ~ 256.0 + max_swivel_bearing_speed = 96.0 + +#. +#Equipment and gadgets added by Simulated +[equipment] + #. + #. + #Amount of free Plunger Launcher shots provided by one filled Backtank. Set to 0 makes Plunger Launchers unbreakable + # Default: 100 + # Range: > 0 + maxPlungerLauncherShots = 100 + #. + #The max range that launched plungers can be from each other + # Default: 64 + # Range: > 0 + maxPlungerLauncherRange = 64 diff --git a/neoforge/run/config/sodium-fingerprint.json b/neoforge/run/config/sodium-fingerprint.json new file mode 100644 index 0000000..8eff91f --- /dev/null +++ b/neoforge/run/config/sodium-fingerprint.json @@ -0,0 +1 @@ +{"v":1,"s":"7963ad0d3e043711be98efad4e435c34b5262ca875c68d4e525a391f0a5851acbd60e5a1537a2e5cee90cd727ee254205f204fe471958c77c79aa895781ae4bc","u":"6933eac6f09fbc44429b670c54c361be7b8d28edf80ee2fd977da0d0e1f9027bcd67dd1fc2083a6a882da7a6e3f59be71a582b57c22d775bb2be1abfe81bbbb9","p":"529a0692c0526d22f36e6d0f1b8d0b975e6a9e198b0cbbcf8a4e0f78623e1ad4fcc2555429e282c0f1218de1c141d78618e6c03afdc972463b1feeae3791d26f","t":1778490144} \ No newline at end of file diff --git a/neoforge/run/config/sodium-mixins.properties b/neoforge/run/config/sodium-mixins.properties new file mode 100644 index 0000000..864cfde --- /dev/null +++ b/neoforge/run/config/sodium-mixins.properties @@ -0,0 +1,6 @@ +# This is the configuration file for Sodium. +# +# You can find information on editing this file and all the available options here: +# https://github.com/CaffeineMC/sodium/wiki/Configuration-File +# +# By default, this file will be empty except for this notice. diff --git a/neoforge/run/config/sodium-options.json b/neoforge/run/config/sodium-options.json new file mode 100644 index 0000000..5294ffe --- /dev/null +++ b/neoforge/run/config/sodium-options.json @@ -0,0 +1,28 @@ +{ + "quality": { + "weather_quality": "DEFAULT", + "leaves_quality": "DEFAULT", + "enable_vignette": false + }, + "advanced": { + "enable_memory_tracing": false, + "use_advanced_staging_buffers": true, + "cpu_render_ahead_limit": 3 + }, + "performance": { + "chunk_builder_threads": 0, + "always_defer_chunk_updates_v2": true, + "animate_only_visible_textures": true, + "use_entity_culling": false, + "use_fog_occlusion": true, + "use_block_face_culling": false, + "use_no_error_g_l_context": true + }, + "notifications": { + "has_cleared_donation_button": false, + "has_seen_donation_prompt": false + }, + "debug": { + "terrain_sorting_enabled": true + } +} \ No newline at end of file diff --git a/neoforge/run/config/sodiumextras-client.toml b/neoforge/run/config/sodiumextras-client.toml new file mode 100644 index 0000000..8236314 --- /dev/null +++ b/neoforge/run/config/sodiumextras-client.toml @@ -0,0 +1,135 @@ + [embeddiumextras.general] + #Set Fullscreen mode + #Borderless let you change between screens more faster and move your mouse across monitors + #Allowed Values: WINDOWED, BORDERLESS, FULLSCREEN + fullscreen = "WINDOWED" + #Configure FPS Display mode + #Complete mode gives you min FPS count and average count + #Allowed Values: OFF, SIMPLE, ADVANCED + fpsDisplay = "ADVANCED" + #Configure FPS Display gravity + #Places counter on specified corner of your screen + #Allowed Values: LEFT, CENTER, RIGHT + fpsDisplayGravity = "LEFT" + #Shows GPU and memory usage onto FPS display + #Allowed Values: OFF, ON, GPU, RAM + fpsDisplaySystem = "OFF" + #Configure FPS Display margin + #Give some space between corner and text + # Default: 12 + # Range: 0 ~ 48 + fpsDisplayMargin = 12 + #Toggle FPS Display shadow + #In case sometimes you can't see the text + fpsDisplayShadow = false + + [embeddiumextras.quality] + #Toggle fog feature + #Fog was a vanilla feature, toggling off may increases performance + fog = false + #Raise clouds + #Modify clouds height perfect for a adaptative world experience + # Default: 192 + # Range: 0 ~ 512 + cloudsHeight = 192 + #Chunks fade in speed + #This option doesn't affect performance, just changes speed + #Allowed Values: OFF, FAST, SLOW + chunkFadeSpeed = "SLOW" + + [embeddiumextras.quality.darkness] + #Configure Darkness Mode + #Each config changes what is considered 'true darkness' + #Allowed Values: PITCH_BLACK, TOTAL_DARKNESS, DARK, DIM, OFF + mode = "OFF" + #Toggle Darkness on Overworld dimension + enableOnOverworld = true + #Toggle Darkness on Nether dimension + enableOnNether = false + #Configure fog brightness on nether when darkness is enabled + # Default: 0.5 + # Range: 0.0 ~ 1.0 + netherFogBright = 0.5 + #Toggle Darkness on End dimension + enableOnEnd = false + #Configure fog brightness on nether when darkness is enabled + # Default: 0.5 + # Range: 0.0 ~ 1.0 + endFogBright = 0.5 + #Toggle Darkness default mode for modded dimensions + valueByDefault = false + #List of all dimensions to use True Darkness + #This option overrides 'valueByDefault' state + dimensionWhitelist = [] + #Toggle darkness when dimension has no SkyLight + enableOnNoSkyLight = false + #Disables all bright sources of darkness like moon or fog + #Only affects darkness effect + enableBlockLightOnly = false + #Toggles if moon phases affects darkness in the overworld + affectedByMoonPhase = true + #Configure max moon brightness level with darkness + # Default: 0.25 + # Range: 0.0 ~ 1.0 + fullMoonBright = 0.25 + #Configure min moon brightness level with darkness + # Default: 0.0 + # Range: 0.0 ~ 1.0 + newMoonBright = 0.0 + + [embeddiumextras.performance] + #Toggles JREI item rendering until searching + #Increases performance a little bit and cleans your screen when you don't want to use it + hideJREI = false + #Toggles Minecraft Fonts shadows + #Depending of the case may increase performance + #Gives a flat style text + fontShadows = true + + [embeddiumextras.performance.distanceCulling.tileEntities] + #Toggles distance culling for Block Entities + #Maybe you use another mod for that :( + enable = false + #Configure horizontal max distance before cull Block entities + #Value is squared, default was 64^2 (or 64x64) + # Default: 4096 + # Range: > 0 + cullingMaxDistanceX = 4096 + #Configure vertical max distance before cull Block entities + #Value is raw + # Default: 32 + # Range: 0 ~ 512 + cullingMaxDistanceY = 32 + #List of all Block Entities to be ignored by distance culling + #Uses ResourceLocation to identify it + #Example 1: "minecraft:chest" - Ignores chests only + #Example 2: "ae2:*" - ignores all Block entities from Applied Energetics 2 + whitelist = ["waterframes:*"] + + [embeddiumextras.performance.distanceCulling.entities] + #Toggles distance culling for entities + #Maybe you use another mod for that :( + enable = false + #Configure horizontal max distance before cull entities + #Value is squared, default was 64^2 (or 64x64) + # Default: 4096 + # Range: > 0 + cullingMaxDistanceX = 4096 + #Configure vertical max distance before cull entities + #Value is raw + # Default: 32 + # Range: 0 ~ 512 + cullingMaxDistanceY = 32 + #List of all Entities to be ignored by distance culling + #Uses ResourceLocation to identify it + #Example 1: "minecraft:bat" - Ignores bats only + #Example 2: "alexsmobs:*" - ignores all entities for alexmobs mod + whitelist = ["minecraft:ghast", "minecraft:ender_dragon", "iceandfire:*", "create:*"] + + [embeddiumextras.others] + #Configure if borderless fullscreen option should be attached to F11 or replace vanilla fullscreen + #Allowed Values: ATTACH, REPLACE, OFF + borderlessAttachModeOnF11 = "OFF" + #Toggles fast language reload + #Embeddedt points it maybe cause troubles to JEI, so ¿why not add it as a toggleable option? + fastLanguageReload = true diff --git a/neoforge/run/crash-reports/crash-2026-05-11_13.12.03-client.txt b/neoforge/run/crash-reports/crash-2026-05-11_13.12.03-client.txt new file mode 100644 index 0000000..b63773e --- /dev/null +++ b/neoforge/run/crash-reports/crash-2026-05-11_13.12.03-client.txt @@ -0,0 +1,247 @@ +---- Minecraft Crash Report ---- + +// ooprs +Please make sure this issue is not caused by Sable before reporting it to other mod authors. +If you cannot reproduce it without Sable, file a report on the issue tracker +https://github.com/ryanhcode/sable/issues + +// Daisy, daisy... + +Time: 2026-05-11 13:12:03 +Description: Narrating screen + +java.lang.IllegalArgumentException: TranslatableContents' arguments must be either a Component, Number, Boolean, or a String. Was given null for gui.narrate.editBox + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.contents.TranslatableContents.(TranslatableContents.java:90) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.Component.translatable(Component.java:160) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,re:computing_frames,re:classloading} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.createNarrationMessage(EditBox.java:106) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.updateWidgetNarration(EditBox.java:636) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList$Entry.updateNarration(ContainerObjectSelectionList.java:251) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList.updateWidgetNarration(ContainerObjectSelectionList.java:113) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarratedWidget(Screen.java:597) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarrationState(Screen.java:573) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.narration.ScreenNarrationCollector.update(ScreenNarrationCollector.java:19) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.runNarration(Screen.java:556) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.handleDelayedNarration(Screen.java:543) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1131) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:veil.debug.mixins.json:accessor.DebugGameRendererAccessor from mod veil,pl:mixin:APP:veil.debug.mixins.json:client.profiler.GameRendererMixin from mod veil,pl:mixin:APP:veil.dynamicbuffer.mixins.json:accessor.DynamicBufferGameRendererAccessor from mod veil,pl:mixin:APP:veil.dynamicbuffer.mixins.json:client.DynamicBufferGameRendererMixin from mod veil,pl:mixin:APP:veil.perspective.mixins.json:accessor.GameRendererAccessor from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineGameRendererMixin from mod veil,pl:mixin:APP:veil.shader.mixins.json:client.ShaderGameRendererMixin from mod veil,pl:mixin:APP:simulated.mixins.json:throttle_lever.GameRendererMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.darkness.GameRendererMixin from mod sodiumextras,pl:mixin:APP:neoforge-DistantHorizons.neoforge.mixins.json:client.MixinGameRenderer from mod distanthorizons,pl:mixin:APP:sodium-common.mixins.json:features.gui.hooks.console.GameRendererMixin from mod sodium,pl:mixin:APP:ponder-common.mixins.json:client.accessor.GameRendererAccessor from mod ponder,pl:mixin:APP:create.mixins.json:client.GameRendererMixin from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:clip_overwrite.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:config.GameRendererAccessor from mod sable,pl:mixin:APP:sable.mixins.json:entity.entities_turn_with_sub_levels.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:water_occlusion.GameRendererMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.runTick(Minecraft.java:1201) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:813) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMainMixin from mod veil,pl:mixin:A,pl:runtimedistcleaner:A} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.NeoForgeClientDevLaunchHandler.runService(NeoForgeClientDevLaunchHandler.java:23) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23128!/:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at net.neoforged.devlaunch.Main.main(Main.java:57) [DevLaunch-1.0.2.jar:?] {} + + +A detailed walkthrough of the error, its code path and all known details is as follows: +--------------------------------------------------------------------------------------- + +-- Head -- +Thread: Render thread +Stacktrace: + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.contents.TranslatableContents.(TranslatableContents.java:90) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.Component.translatable(Component.java:160) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,re:computing_frames,re:classloading} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.createNarrationMessage(EditBox.java:106) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.updateWidgetNarration(EditBox.java:636) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList$Entry.updateNarration(ContainerObjectSelectionList.java:251) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList.updateWidgetNarration(ContainerObjectSelectionList.java:113) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarratedWidget(Screen.java:597) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarrationState(Screen.java:573) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.narration.ScreenNarrationCollector.update(ScreenNarrationCollector.java:19) ~[neoforge-21.1.219.jar%23189!/:?] {re:classloading,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.runNarration(Screen.java:556) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.handleDelayedNarration(Screen.java:543) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:computing_frames,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:ponder-common.mixins.json:client.accessor.ScreenAccessor from mod ponder,pl:mixin:A,pl:runtimedistcleaner:A} +-- Screen details -- +Details: + Screen name: loaderCommon.neoforge.com.seibel.distanthorizons.common.wrappers.gui.ClassicConfigGUI.ConfigScreen +Stacktrace: + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1131) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:accesstransformer:B,pl:runtimedistcleaner:A,re:classloading,pl:accesstransformer:B,pl:mixin:APP:veil.debug.mixins.json:accessor.DebugGameRendererAccessor from mod veil,pl:mixin:APP:veil.debug.mixins.json:client.profiler.GameRendererMixin from mod veil,pl:mixin:APP:veil.dynamicbuffer.mixins.json:accessor.DynamicBufferGameRendererAccessor from mod veil,pl:mixin:APP:veil.dynamicbuffer.mixins.json:client.DynamicBufferGameRendererMixin from mod veil,pl:mixin:APP:veil.perspective.mixins.json:accessor.GameRendererAccessor from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineGameRendererMixin from mod veil,pl:mixin:APP:veil.shader.mixins.json:client.ShaderGameRendererMixin from mod veil,pl:mixin:APP:simulated.mixins.json:throttle_lever.GameRendererMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.darkness.GameRendererMixin from mod sodiumextras,pl:mixin:APP:neoforge-DistantHorizons.neoforge.mixins.json:client.MixinGameRenderer from mod distanthorizons,pl:mixin:APP:sodium-common.mixins.json:features.gui.hooks.console.GameRendererMixin from mod sodium,pl:mixin:APP:ponder-common.mixins.json:client.accessor.GameRendererAccessor from mod ponder,pl:mixin:APP:create.mixins.json:client.GameRendererMixin from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:clip_overwrite.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:config.GameRendererAccessor from mod sable,pl:mixin:APP:sable.mixins.json:entity.entities_turn_with_sub_levels.GameRendererMixin from mod sable,pl:mixin:APP:sable.mixins.json:water_occlusion.GameRendererMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.runTick(Minecraft.java:1201) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:813) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMainMixin from mod veil,pl:mixin:A,pl:runtimedistcleaner:A} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.NeoForgeClientDevLaunchHandler.runService(NeoForgeClientDevLaunchHandler.java:23) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23128!/:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at net.neoforged.devlaunch.Main.main(Main.java:57) [DevLaunch-1.0.2.jar:?] {} + + +-- Uptime -- +Details: + JVM uptime: 438.066s + Wall uptime: 415.853s + High-res time: 434.845s + Client ticks: 7879 ticks / 393.950s +Stacktrace: + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.fillReport(Minecraft.java:2409) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.emergencySaveAndCrash(Minecraft.java:874) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:831) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMinecraftMixin from mod veil,pl:mixin:APP:veil.pipeline.mixins.json:client.PipelineMinecraftMixin from mod veil,pl:mixin:APP:veil.neoforge.mixins.json:client.MinecraftMixin from mod veil,pl:mixin:APP:simulated.mixins.json:handle.MinecraftMixin from mod simulated,pl:mixin:APP:mixins.sodiumextras.json:impl.fps.GpuUsageMixin from mod sodiumextras,pl:mixin:APP:sodium-common.mixins.json:core.MinecraftMixin from mod sodium,pl:mixin:APP:sodium-neoforge.mixins.json:platform.neoforge.EntrypointMixin from mod sodium,pl:mixin:APP:aeronautics.mixins.json:custom_situational_music.MinecraftMixin from mod aeronautics,pl:mixin:APP:flywheel.impl.mixins.json:MinecraftMixin from mod flywheel,pl:mixin:APP:ponder-common.mixins.json:client.WindowResizeMixin from mod ponder,pl:mixin:APP:create.mixins.json:accessor.MinecraftAccessor from mod create,pl:mixin:APP:sable.mixins.json:camera.new_camera_types.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:plot.MinecraftMixin from mod sable,pl:mixin:APP:sable.mixins.json:punching.MinecraftMixin from mod sable,pl:mixin:A,pl:runtimedistcleaner:A} + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[neoforge-21.1.219.jar%23189!/:?] {re:mixin,pl:runtimedistcleaner:A,re:classloading,pl:mixin:APP:veil.debug.mixins.json:client.DebugMainMixin from mod veil,pl:mixin:A,pl:runtimedistcleaner:A} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.NeoForgeClientDevLaunchHandler.runService(NeoForgeClientDevLaunchHandler.java:23) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.42.jar%23146!/:4.0] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23128!/:?] {} + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23128!/:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] {} + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] {} + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] {} + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] {} + at net.neoforged.devlaunch.Main.main(Main.java:57) [DevLaunch-1.0.2.jar:?] {} + + +-- Affected level -- +Details: + All players: 1 total; [LocalPlayer['Dev'/25, l='ClientLevel', x=284.50, y=109.52, z=-0.66]] + Chunk stats: 289, 145 + Level dimension: minecraft:overworld + Level spawn location: World: (0,78,0), Section: (at 0,14,0 in 0,4,0; chunk contains blocks 0,-64,0 to 15,319,15), Region: (0,0; contains chunks 0,0 to 31,31, blocks 0,-64,0 to 511,319,511) + Level time: 3045 game time, 3045 day time + Server brand: neoforge + Server type: Integrated singleplayer server + Tracked entity count: 35 + +-- Last reload -- +Details: + Reload number: 1 + Reload reason: initial + Finished: Yes + Packs: vanilla, mod_resources, mod/sodium, mod/fabric_renderer_api_v1, mod/fabric_api_base, mod/veil, mod/simulated, mod/sodiumextras, mod/distanthorizons, mod/fabric_rendering_data_attachment_v1, mod/aeronautics, mod/aeronautics_bundled, mod/flywheel, mod/ponder, mod/sablecompanion, mod/create, mod/sable, mod/offroad, mod/neoforge, mod/fabric_block_view_api_v2 + +-- System Details -- +Details: + Minecraft Version: 1.21.1 + Minecraft Version ID: 1.21.1 + Operating System: Windows 11 (amd64) version 10.0 + Java Version: 21.0.8, Microsoft + Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), Microsoft + Memory: 4176255288 bytes (3982 MiB) / 5708447744 bytes (5444 MiB) up to 8573157376 bytes (8176 MiB) + CPUs: 8 + Processor Vendor: GenuineIntel + Processor Name: Intel(R) Core(TM) i3-10100 CPU @ 3.60GHz + Identifier: Intel64 Family 6 Model 165 Stepping 3 + Microarchitecture: Comet Lake + Frequency (GHz): 3.60 + Number of physical packages: 1 + Number of physical CPUs: 4 + Number of logical CPUs: 8 + Graphics card #0 name: NVIDIA GeForce GTX 1660 SUPER + Graphics card #0 vendor: NVIDIA + Graphics card #0 VRAM (MiB): 6144.00 + Graphics card #0 deviceId: VideoController1 + Graphics card #0 versionInfo: 32.0.15.9174 + Memory slot #0 capacity (MiB): 16384.00 + Memory slot #0 clockSpeed (GHz): 2.40 + Memory slot #0 type: DDR4 + Memory slot #1 capacity (MiB): 16384.00 + Memory slot #1 clockSpeed (GHz): 2.40 + Memory slot #1 type: DDR4 + Virtual memory max (MiB): 114741.59 + Virtual memory used (MiB): 34559.23 + Swap memory total (MiB): 82048.00 + Swap memory used (MiB): 101.53 + Space in storage for jna.tmpdir (MiB): + Space in storage for org.lwjgl.system.SharedLibraryExtractPath (MiB): + Space in storage for io.netty.native.workdir (MiB): + Space in storage for java.io.tmpdir (MiB): available: 11943.05, total: 476028.00 + Space in storage for workdir (MiB): available: 11943.05, total: 476028.00 + JVM Flags: 0 total; + Launched Version: 21.1.219 + Backend library: LWJGL version 3.3.3+5 + Backend API: NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 591.74, NVIDIA Corporation + Window size: 3440x1440 + GFLW Platform: win32 + GL Caps: Using framebuffer using OpenGL 3.2 + GL debug messages: + Is Modded: Definitely; Client brand changed to 'neoforge'; Server brand changed to 'neoforge' + Universe: 400921fb54442d18 + Type: Integrated Server (map_client.txt) + Graphics mode: fancy + Render Distance: 5/5 chunks + Resource Packs: vanilla, mod_resources, mod/sodium, mod/fabric_renderer_api_v1, mod/fabric_api_base, mod/veil (incompatible), mod/simulated (incompatible), mod/sodiumextras (incompatible), mod/distanthorizons (incompatible), mod/fabric_rendering_data_attachment_v1, mod/aeronautics (incompatible), mod/aeronautics_bundled, mod/flywheel, mod/ponder (incompatible), mod/sablecompanion, mod/create (incompatible), mod/sable, mod/offroad (incompatible), mod/neoforge, mod/fabric_block_view_api_v2 + Current Language: en_us + Locale: ru_RU + System encoding: Cp1251 + File encoding: UTF-8 + CPU: 8x Intel(R) Core(TM) i3-10100 CPU @ 3.60GHz + Server Running: true + Player Count: 1 / 8; [ServerPlayer['Dev'/25, l='ServerLevel[New World]', x=284.50, y=109.52, z=-0.66]] + Active Data Packs: create:dynamic_data, vanilla, mod_data, mod/sodium, mod/fabric_renderer_api_v1, mod/fabric_api_base, mod/veil (incompatible), mod/simulated (incompatible), mod/sodiumextras (incompatible), mod/distanthorizons (incompatible), mod/fabric_rendering_data_attachment_v1, mod/aeronautics (incompatible), mod/aeronautics_bundled, mod/flywheel (incompatible), mod/ponder (incompatible), mod/sablecompanion, mod/create (incompatible), mod/sable, mod/offroad (incompatible), mod/neoforge, mod/fabric_block_view_api_v2 + Available Data Packs: bundle, trade_rebalance, vanilla, mod/aeronautics (incompatible), mod/aeronautics_bundled, mod/create (incompatible), mod/distanthorizons (incompatible), mod/fabric_api_base, mod/fabric_block_view_api_v2, mod/fabric_renderer_api_v1, mod/fabric_rendering_data_attachment_v1, mod/flywheel (incompatible), mod/neoforge, mod/offroad (incompatible), mod/ponder (incompatible), mod/sable, mod/sablecompanion, mod/simulated (incompatible), mod/sodium, mod/sodiumextras (incompatible), mod/veil (incompatible), mod_data, create:dynamic_data + Enabled Feature Flags: minecraft:vanilla + World Generation: Stable + World Seed: 617942709567970749 + ModLauncher: 11.0.5+main.901c6ea8 + ModLauncher launch target: forgeclientdev + ModLauncher services: + sponge-mixin-0.15.2+mixin.0.8.7.jar mixin PLUGINSERVICE + loader-4.0.42.jar slf4jfixer PLUGINSERVICE + loader-4.0.42.jar runtime_enum_extender PLUGINSERVICE + at-modlauncher-10.0.1.jar accesstransformer PLUGINSERVICE + loader-4.0.42.jar runtimedistcleaner PLUGINSERVICE + modlauncher-11.0.5.jar mixin TRANSFORMATIONSERVICE + modlauncher-11.0.5.jar fml TRANSFORMATIONSERVICE + FML Language Providers: + javafml@4.0 + lowcodefml@4.0 + minecraft@4.0 + Mod List: + create-1.21.1-6.0.10-280.jar |Create |create |6.0.10 |Manifest: NOSIGNATURE + dev.eriksonn.aeronautics.aeronautics-neoforge-1.21|Create Aeronautics |aeronautics |1.2.1 |Manifest: NOSIGNATURE + create-aeronautics-YhZLrAFC.jar |Create Aeronautics |aeronautics_bundled |1.2.1 |Manifest: NOSIGNATURE + dev.ryanhcode.offroad.offroad-neoforge-1.21.1-1.2.|Create Offroad |offroad |1.2.1 |Manifest: NOSIGNATURE + dev.simulated_team.simulated.simulated-neoforge-1.|Create Simulated |simulated |1.2.1 |Manifest: NOSIGNATURE + distanthorizons-2.2.1-a-1.21.1.jar |Distant Horizons |distanthorizons |2.2.1-a |Manifest: NOSIGNATURE + flywheel-neoforge-1.21.1-1.0.6.jar |Flywheel |flywheel |1.0.6 |Manifest: NOSIGNATURE + fabric-api-base-0.4.42+d1308ded19.jar |Forgified Fabric API Base |fabric_api_base |0.4.42+d1308ded19 |Manifest: NOSIGNATURE + fabric-block-view-api-v2-1.0.10+9afaaf8c19.jar |Forgified Fabric BlockView API|fabric_block_view_api_v2 |1.0.10+9afaaf8c19 |Manifest: NOSIGNATURE + fabric-renderer-api-v1-3.4.0+9c40919e19.jar |Forgified Fabric Renderer API |fabric_renderer_api_v1 |3.4.0+9c40919e19 |Manifest: NOSIGNATURE + fabric-rendering-data-attachment-v1-0.3.48+73761d2|Forgified Fabric Rendering Dat|fabric_rendering_data_attachme|0.3.48+73761d2e19 |Manifest: NOSIGNATURE + neoforge-21.1.219.jar |Minecraft |minecraft |1.21.1 |Manifest: NOSIGNATURE + neoforge-21.1.219.jar |NeoForge |neoforge |21.1.219 |Manifest: NOSIGNATURE + ponder-neoforge-1.0.82+mc1.21.1.jar |Ponder |ponder |1.0.82+mc1.21.1 |Manifest: NOSIGNATURE + main |Sable |sable |1.2.2 |Manifest: NOSIGNATURE + sable-companion-common-1.21.1-1.6.0.jar |Sable Companion |sablecompanion |1.6.0 |Manifest: NOSIGNATURE + sodium-mc1.21.1-0.6.13-neoforge.jar |Sodium |sodium |0.6.13+mc1.21.1 |Manifest: NOSIGNATURE + sodium-extras-neoforge-1.21.1-1.0.8.jar |Sodium Extras |sodiumextras |1.0.7 |Manifest: NOSIGNATURE + veil-neoforge-1.21.1-4.0.0.jar |Veil |veil |4.0.0 |Manifest: NOSIGNATURE + Flywheel Backend: flywheel:indirect + Crash Report UUID: 6bb8b6ba-c45c-426b-be36-121f564cad9f + FML: 4.0.42 + NeoForge: 21.1.219 \ No newline at end of file diff --git a/neoforge/run/downloads/log.json b/neoforge/run/downloads/log.json new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/logs/2026-05-11-1.log.gz b/neoforge/run/logs/2026-05-11-1.log.gz new file mode 100644 index 0000000..b9370d1 Binary files /dev/null and b/neoforge/run/logs/2026-05-11-1.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-2.log.gz b/neoforge/run/logs/2026-05-11-2.log.gz new file mode 100644 index 0000000..eb08f2e Binary files /dev/null and b/neoforge/run/logs/2026-05-11-2.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-3.log.gz b/neoforge/run/logs/2026-05-11-3.log.gz new file mode 100644 index 0000000..b06b028 Binary files /dev/null and b/neoforge/run/logs/2026-05-11-3.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-4.log.gz b/neoforge/run/logs/2026-05-11-4.log.gz new file mode 100644 index 0000000..dfcb0da Binary files /dev/null and b/neoforge/run/logs/2026-05-11-4.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-5.log.gz b/neoforge/run/logs/2026-05-11-5.log.gz new file mode 100644 index 0000000..6d69a2f Binary files /dev/null and b/neoforge/run/logs/2026-05-11-5.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-6.log.gz b/neoforge/run/logs/2026-05-11-6.log.gz new file mode 100644 index 0000000..91fd4d0 Binary files /dev/null and b/neoforge/run/logs/2026-05-11-6.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-7.log.gz b/neoforge/run/logs/2026-05-11-7.log.gz new file mode 100644 index 0000000..ba1cc75 Binary files /dev/null and b/neoforge/run/logs/2026-05-11-7.log.gz differ diff --git a/neoforge/run/logs/2026-05-11-8.log.gz b/neoforge/run/logs/2026-05-11-8.log.gz new file mode 100644 index 0000000..17b0277 Binary files /dev/null and b/neoforge/run/logs/2026-05-11-8.log.gz differ diff --git a/neoforge/run/logs/debug-1.log.gz b/neoforge/run/logs/debug-1.log.gz new file mode 100644 index 0000000..b9370d1 Binary files /dev/null and b/neoforge/run/logs/debug-1.log.gz differ diff --git a/neoforge/run/logs/debug-2.log.gz b/neoforge/run/logs/debug-2.log.gz new file mode 100644 index 0000000..eb08f2e Binary files /dev/null and b/neoforge/run/logs/debug-2.log.gz differ diff --git a/neoforge/run/logs/debug-3.log.gz b/neoforge/run/logs/debug-3.log.gz new file mode 100644 index 0000000..b141d9e Binary files /dev/null and b/neoforge/run/logs/debug-3.log.gz differ diff --git a/neoforge/run/logs/debug-4.log.gz b/neoforge/run/logs/debug-4.log.gz new file mode 100644 index 0000000..dfcb0da Binary files /dev/null and b/neoforge/run/logs/debug-4.log.gz differ diff --git a/neoforge/run/logs/debug-5.log.gz b/neoforge/run/logs/debug-5.log.gz new file mode 100644 index 0000000..6d69a2f Binary files /dev/null and b/neoforge/run/logs/debug-5.log.gz differ diff --git a/neoforge/run/logs/debug.log b/neoforge/run/logs/debug.log new file mode 100644 index 0000000..526be55 --- /dev/null +++ b/neoforge/run/logs/debug.log @@ -0,0 +1,580 @@ +[11мая2026 13:04:44.734] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--launchTarget, forgeclientdev, --version, 21.1.219, --assetIndex, 17, --assetsDir, C:\\Users\\user\\.gradle\\caches\\neoformruntime\\assets, --gameDir, ., --fml.fmlVersion, 4.0.42, --fml.mcVersion, 1.21.1, --fml.neoForgeVersion, 21.1.219, --fml.neoFormVersion, 20240808.144430] +[11мая2026 13:04:44.740] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: JVM identified as Microsoft OpenJDK 64-Bit Server VM 21.0.8+9-LTS +[11мая2026 13:04:44.744] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 11.0.5+main.901c6ea8 starting: java version 21.0.8 by Microsoft; OS Windows 11 arch amd64 version 10.0 +[11мая2026 13:04:44.950] [main/INFO] [net.neoforged.fml.loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow +[11мая2026 13:04:45.142] [main/INFO] [EARLYDISPLAY/]: Trying GL version 4.6 +[11мая2026 13:04:45.389] [main/INFO] [EARLYDISPLAY/]: Requested GL version 4.6 got version 4.6 +[11мая2026 13:04:45.608] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.7 Source=union:/C:/Users/user/.gradle/caches/modules-2/files-2.1/net.fabricmc/sponge-mixin/0.15.2+mixin.0.8.7/2af2f021d8e02a0220dc27a7a72b4666d66d44ca/sponge-mixin-0.15.2+mixin.0.8.7.jar%23138!/ Service=ModLauncher Env=CLIENT +[11мая2026 13:04:46.127] [pool-2-thread-1/INFO] [EARLYDISPLAY/]: GL info: NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 591.74, NVIDIA Corporation +[11мая2026 13:04:47.133] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: ponder. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\net.createmod.ponder\ponder-neoforge\1.0.82+mc1.21.1\b10a04f40b9d6d33c346fb38df33f10f7e51b713\ponder-neoforge-1.0.82+mc1.21.1.jar +[11мая2026 13:04:47.134] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: library:Registrate.MC1._21._67. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\com.tterrag.registrate\Registrate\MC1.21-1.3.0+67\66ddc4cd56472fea1ea1a24182901e6c92a51c0a\Registrate-MC1.21-1.3.0+67.jar +[11мая2026 13:04:47.136] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: flywheel. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\dev.engine-room.flywheel\flywheel-neoforge-1.21.1\1.0.6\a943872ad0bdd4458d818d8d7dc123fb250eb744\flywheel-neoforge-1.21.1-1.0.6.jar +[11мая2026 13:04:47.136] [main/INFO] [net.neoforged.fml.loading.moddiscovery.locators.JarInJarDependencyLocator/]: Found 12 dependencies adding them to mods collection +[11мая2026 13:04:47.139] [main/INFO] [net.neoforged.fml.loading.moddiscovery.ModDiscoverer/]: + Mod List: + Name Version (Mod Id) + + Create 6.0.10 (create) + Create Aeronautics 1.2.1 (aeronautics) + Create Aeronautics 1.2.1 (aeronautics_bundled) + Create Offroad 1.2.1 (offroad) + Create Simulated 1.2.1 (simulated) + Distant Horizons 2.2.1-a (distanthorizons) + Flywheel 1.0.6 (flywheel) + Forgified Fabric API Base 0.4.42+d1308ded19 (fabric_api_base) + Forgified Fabric BlockView API (v2) 1.0.10+9afaaf8c19 (fabric_block_view_api_v2) + Forgified Fabric Renderer API (v1) 3.4.0+9c40919e19 (fabric_renderer_api_v1) + Forgified Fabric Rendering Data Attachment (v1) 0.3.48+73761d2e19 (fabric_rendering_data_attachment_v1) + Minecraft 1.21.1 (minecraft) + NeoForge 21.1.219 (neoforge) + Ponder 1.0.82+mc1.21.1 (ponder) + Sable 1.2.2 (sable) + Sable Companion 1.6.0 (sablecompanion) + Sodium 0.6.13+mc1.21.1 (sodium) + Sodium Extras 1.0.7 (sodiumextras) + Veil 4.0.0 (veil) +[11мая2026 13:04:48.558] [main/INFO] [mixin/]: Compatibility level set to JAVA_21 +[11мая2026 13:04:48.615] [main/INFO] [cpw.mods.modlauncher.LaunchServiceHandler/MODLAUNCHER]: Launching target 'forgeclientdev' with arguments [--version, 21.1.219, --gameDir, ., --assetsDir, C:\Users\user\.gradle\caches\neoformruntime\assets, --assetIndex, 17] +[11мая2026 13:04:48.697] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.command.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.698] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.debug.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.699] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.dynamicbuffer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.700] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.fix.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.702] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.framebuffer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.703] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.necromancer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.704] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.network.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.706] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.performance.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.707] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.perspective.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.709] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.pipeline.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.711] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.quasar.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.711] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.registry.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.714] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.rendertype.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.714] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.resource.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.716] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.scheduler.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.717] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.shader.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.719] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.neoforge.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.722] [main/WARN] [mixin/]: Reference map 'simulated.refmap.json' for simulated.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.739] [main/INFO] [Sodium/]: Loaded configuration file for Sodium: 43 options available, 0 override(s) found +[11мая2026 13:04:48.748] [main/WARN] [mixin/]: Reference map 'aeronautics.refmap.json' for aeronautics.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.761] [main/WARN] [mixin/]: Reference map 'ponder.refmap.json' for ponder-common.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.775] [main/INFO] [dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin/]: Using Sodium renderer mixins +[11мая2026 13:04:48.777] [main/INFO] [dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin/]: Using Sodium renderer mixins +[11мая2026 13:04:48.779] [main/WARN] [mixin/]: Reference map 'offroad.refmap.json' for offroad.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:49.340] [main/WARN] [mixin/]: Error loading class: net/irisshaders/iris/pipeline/PipelineManager (java.lang.ClassNotFoundException: net.irisshaders.iris.pipeline.PipelineManager) +[11мая2026 13:04:49.341] [main/WARN] [mixin/]: @Mixin target net.irisshaders.iris.pipeline.PipelineManager was not found veil.neoforge.mixins.json:client.perspective.iris.PipelineManagerMixin from mod veil +[11мая2026 13:04:49.450] [main/WARN] [mixin/]: Error loading class: mezz/jei/library/plugins/vanilla/ingredients/ItemStackListFactory (java.lang.ClassNotFoundException: mezz.jei.library.plugins.vanilla.ingredients.ItemStackListFactory) +[11мая2026 13:04:53.271] [main/WARN] [mixin/]: Error loading class: org/jetbrains/annotations/ApiStatus$ScheduledForRemoval (java.lang.ClassNotFoundException: org.jetbrains.annotations.ApiStatus$ScheduledForRemoval) +[11мая2026 13:04:53.657] [main/INFO] [MixinExtras|Service/]: Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.5.0). +[11мая2026 13:04:56.917] [Datafixer Bootstrap/INFO] [com.mojang.datafixers.DataFixerBuilder/]: 229 Datafixer optimizations took 620 milliseconds +[11мая2026 13:05:03.942] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:03.944] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:03.948] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498] +[11мая2026 13:05:03.953] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498] +[11мая2026 13:05:03.955] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:04.199] [Render thread/WARN] [net.minecraft.server.packs.VanillaPackResourcesBuilder/]: Assets URL 'union:/C:/Users/user/IdeaProjects/sable/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar%23189!/assets/.mcassetsroot' uses unexpected schema +[11мая2026 13:05:04.199] [Render thread/WARN] [net.minecraft.server.packs.VanillaPackResourcesBuilder/]: Assets URL 'union:/C:/Users/user/IdeaProjects/sable/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar%23189!/data/.mcassetsroot' uses unexpected schema +[11мая2026 13:05:04.244] [Render thread/INFO] [com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService/]: Environment: Environment[sessionHost=https://sessionserver.mojang.com, servicesHost=https://api.minecraftservices.com, name=PROD] +[11мая2026 13:05:04.261] [Render thread/INFO] [net.minecraft.client.Minecraft/]: Setting user: Dev +[11мая2026 13:05:04.420] [Render thread/INFO] [net.minecraft.client.Minecraft/]: Backend library: LWJGL version 3.3.3+5 +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Vendor: NVIDIA Corporation +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Renderer: NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2 +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Version: 4.6.0 NVIDIA 591.74 +[11мая2026 13:05:04.503] [Render thread/INFO] [Sodium-NvidiaWorkarounds/]: Modifying OpenGL context to apply workarounds for the NVIDIA graphics driver... +[11мая2026 13:05:05.661] [modloading-worker-0/INFO] [Veil/]: Veil is initializing. +[11мая2026 13:05:05.806] [modloading-worker-0/INFO] [net.neoforged.neoforge.common.NeoForgeMod/NEOFORGE-MOD]: NeoForge mod loading, version 21.1.219, for MC 1.21.1 +[11мая2026 13:05:06.174] [modloading-worker-0/INFO] [com.simibubi.create.Create/]: Create 6.0.10 initializing! Commit hash: ac0c444d9828da3453ae8cc65338e8de063286fb +[11мая2026 13:05:08.413] [modloading-worker-0/INFO] [dev.ryanhcode.sable.Sable/]: Sable loaded! +[11мая2026 13:05:08.442] [modloading-worker-0/WARN] [dev.ryanhcode.sable.Sable/]: NOTE: Sable is loaded with Flywheel. Sable contains extensive shader overrides and a full light-storage replacement. Expect this to cause compatibility issues. If issues arise, please report them to the Sable issue tracker (https://github.com/ryanhcode/sable/issues) instead of the Flywheel issue tracker. +[11мая2026 13:05:10.736] [modloading-sync-worker/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:05:10.737] [modloading-sync-worker/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:05:10.821] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:10.961] [Render thread/INFO] [Veil/]: GL Debug supported +[11мая2026 13:05:11.389] [Render thread/INFO] [net.neoforged.neoforge.gametest.GameTestHooks/]: Enabled Gametest Namespaces: [sable] +[11мая2026 13:05:11.792] [Render thread/INFO] [GameRenderer/]: Starting up renderer (forge) +[11мая2026 13:05:11.793] [Render thread/WARN] [GameRenderer/]: Dependency setup is not done yet, skipping renderer this startup event! +[11мая2026 13:05:11.838] [Render thread/INFO] [net.minecraft.server.packs.resources.ReloadableResourceManager/]: Reloading ResourceManager: vanilla, mod_resources, mod/sodium, mod/fabric_renderer_api_v1, mod/fabric_api_base, mod/veil, mod/simulated, mod/sodiumextras, mod/distanthorizons, mod/fabric_rendering_data_attachment_v1, mod/aeronautics, mod/aeronautics_bundled, mod/flywheel, mod/ponder, mod/sablecompanion, mod/create, mod/sable, mod/offroad, mod/neoforge, mod/fabric_block_view_api_v2 +[11мая2026 13:05:11.962] [NeoForge Version Check/INFO] [net.neoforged.fml.VersionChecker/]: [create] Starting version check at https://api.modrinth.com/updates/create/forge_updates.json?neoforge=only +[11мая2026 13:05:11.998] [Worker-Main-2/INFO] [net.minecraft.client.gui.font.providers.UnihexProvider/]: Found unifont_all_no_pua-15.1.05.hex, loading +[11мая2026 13:05:12.667] [Worker-Main-2/INFO] [net.minecraft.client.gui.font.providers.UnihexProvider/]: Found unifont_jp_patch-15.1.05.hex, loading +[11мая2026 13:05:12.692] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Initializing Distant Horizons +[11мая2026 13:05:12.753] [Worker-Main-7/WARN] [DistantHorizons-Initializer/]: Java.awt.headless is false. This means Distant Horizons can't display error and info dialog windows. +[11мая2026 13:05:12.827] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Distant Horizons, Version: 2.2.1-a +[11мая2026 13:05:12.831] [Worker-Main-7/WARN] [com.seibel.distanthorizons.core.jar.JarUtils/]: Unable to get the jar file, trying backup method... Error: URI scheme is not "file" +java.lang.IllegalArgumentException: URI scheme is not "file" + at java.base/java.io.File.(File.java:423) ~[?:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.core.jar.JarUtils.(JarUtils.java:53) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.core.jar.ModJarInfo.(ModJarInfo.java:48) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/loaderCommon.neoforge.com.seibel.distanthorizons.common.AbstractModInitializer.printModInfo(AbstractModInitializer.java:140) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/loaderCommon.neoforge.com.seibel.distanthorizons.common.AbstractModInitializer.onInitializeClient(AbstractModInitializer.java:70) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.neoforge.NeoforgeMain.lambda$new$0(NeoforgeMain.java:62) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.ConsumerEventHandler.invoke(ConsumerEventHandler.java:27) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:360) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:328) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModContainer.acceptEvent(ModContainer.java:158) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModLoader.lambda$dispatchParallelEvent$4(ModLoader.java:172) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModLoader.lambda$dispatchParallelTask$7(ModLoader.java:231) ~[loader-4.0.42.jar%23146!/:4.0] + at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:934) [?:?] + at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:911) [?:?] + at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:483) [?:?] + at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) [?:?] + at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) [?:?] + at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) [?:?] + at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) [?:?] + at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) [?:?] +[11мая2026 13:05:12.965] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Branch: main +[11мая2026 13:05:12.965] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Commit: fd89f569d0e1fd9307fa253f9dfb52c34d15a83f +[11мая2026 13:05:12.967] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Jar Build Source: User +[11мая2026 13:05:13.302] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Distant Horizons Initialized +[11мая2026 13:05:13.307] [Worker-Main-7/INFO] [ConfigBase, distanthorizons/]: Initialising config for DistantHorizons +[11мая2026 13:05:13.403] [NeoForge Version Check/INFO] [net.neoforged.fml.VersionChecker/]: [create] Found status: OUTDATED Current: 6.0.10 Target: 6.0.10+mc1.21.1 +[11мая2026 13:05:13.705] [Worker-Main-7/INFO] [ConfigBase, distanthorizons/]: Config for DistantHorizons initialised +[11мая2026 13:05:14.489] [Worker-Main-3/WARN] [net.minecraft.client.resources.model.ModelBakery/]: Unable to load model: 'minecraft:block' referenced from: simulated:block/rope_connector/block_horizontal: java.io.FileNotFoundException: minecraft:models/block.json +[11мая2026 13:05:16.441] [Render thread/INFO] [Veil/]: Loaded 0 shader modifications +[11мая2026 13:05:16.647] [Render thread/INFO] [Veil/]: Loaded 29 shaders from: pinwheel/shaders/program +[11мая2026 13:05:16.707] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: LOW_IMPACT +[11мая2026 13:05:16.719] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: LOW_IMPACT +[11мая2026 13:05:16.719] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: MEDIUM +[11мая2026 13:05:16.722] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: MEDIUM +[11мая2026 13:05:16.800] [Worker-Main-6/INFO] [PonderIndex/]: Registering Ponder Scenes took 132.7 ms +[11мая2026 13:05:16.807] [Worker-Main-6/INFO] [PonderIndex/]: Registering Ponder Tags took 5.978 ms +[11мая2026 13:05:17.040] [Render thread/WARN] [net.minecraft.client.sounds.SoundEngine/]: Missing sound for event: minecraft:item.goat_horn.play +[11мая2026 13:05:17.040] [Render thread/WARN] [net.minecraft.client.sounds.SoundEngine/]: Missing sound for event: minecraft:entity.goat.screaming.horn_break +[11мая2026 13:05:17.122] [Render thread/INFO] [com.mojang.blaze3d.audio.Library/]: OpenAL initialized on device OpenAL Soft on C34UQ180HC (NVIDIA High Definition Audio) +[11мая2026 13:05:17.123] [Render thread/INFO] [net.minecraft.client.sounds.SoundEngine/SOUNDS]: Sound engine started +[11мая2026 13:05:17.259] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 2048x1024x4 minecraft:textures/atlas/blocks.png-atlas +[11мая2026 13:05:17.296] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x256x4 minecraft:textures/atlas/signs.png-atlas +[11мая2026 13:05:17.297] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x4 minecraft:textures/atlas/shield_patterns.png-atlas +[11мая2026 13:05:17.298] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x4 minecraft:textures/atlas/banner_patterns.png-atlas +[11мая2026 13:05:17.298] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 2048x1024x4 minecraft:textures/atlas/armor_trims.png-atlas +[11мая2026 13:05:17.311] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 128x64x4 minecraft:textures/atlas/decorated_pot.png-atlas +[11мая2026 13:05:17.311] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x256x4 minecraft:textures/atlas/chest.png-atlas +[11мая2026 13:05:17.313] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x4 minecraft:textures/atlas/shulker_boxes.png-atlas +[11мая2026 13:05:17.314] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x4 minecraft:textures/atlas/beds.png-atlas +[11мая2026 13:05:17.403] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x0 minecraft:textures/atlas/particles.png-atlas +[11мая2026 13:05:17.406] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x0 minecraft:textures/atlas/paintings.png-atlas +[11мая2026 13:05:17.407] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x128x0 minecraft:textures/atlas/mob_effects.png-atlas +[11мая2026 13:05:17.408] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 64x64x0 minecraft:textures/atlas/map_decorations.png-atlas +[11мая2026 13:05:17.408] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 1024x512x0 minecraft:textures/atlas/gui.png-atlas +[11мая2026 13:05:17.441] [Render thread/WARN] [net.minecraft.client.renderer.ShaderInstance/]: Shader rendertype_entity_translucent_emissive could not find sampler named Sampler2 in the specified shader program. +[11мая2026 13:05:17.518] [Render thread/INFO] [GameRenderer/]: Shutting down renderer (forge) +[11мая2026 13:05:17.522] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Renderer shutting down. +[11мая2026 13:05:17.526] [Render thread/INFO] [GameRenderer/]: Starting up renderer (forge) +[11мая2026 13:05:17.526] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Renderer starting up. +[11мая2026 13:05:17.532] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Creating GLProxy... If this is the last message you see there must have been an OpenGL error. +[11мая2026 13:05:17.533] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Lod Render OpenGL version [4.6.0 NVIDIA 591.74]. +[11мая2026 13:05:17.534] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: minecraftGlCapabilities: +Your OpenGL support: +openGL version 3.2+: [true] <- REQUIRED +Vertex Attribute Buffer Binding: [true] <- optional improvement +Buffer Storage: [true] <- optional improvement + +[11мая2026 13:05:17.535] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: GPU Vendor [NVIDIA CORPORATION], Preferred upload method is [BUFFER_STORAGE]. +[11мая2026 13:05:17.535] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: GLProxy creation successful. OpenGL smiles upon you this day. +[11мая2026 13:05:17.550] [Render thread/INFO] [Veil/]: Loaded 3 framebuffers +[11мая2026 13:05:17.577] [Render thread/INFO] [Veil/]: Loaded 6 post pipelines +[11мая2026 13:05:17.588] [Render thread/INFO] [Veil/]: Loaded 4 render types +[11мая2026 13:05:17.589] [Render thread/INFO] [Veil/]: Enabled bloom pipeline +[11мая2026 13:05:17.590] [Render thread/INFO] [Veil/]: Loaded 0 quasar particles +[11мая2026 13:05:17.591] [Render thread/INFO] [Veil/]: Loaded 0 templates +[11мая2026 13:05:17.591] [Render thread/INFO] [Veil/]: Loaded 0 modules +[11мая2026 13:05:17.647] [Render thread/INFO] [flywheel/backend/shaders/]: Loaded 77 shader sources in 41,464 ms +[11мая2026 13:05:17.686] [Render thread/INFO] [com.simibubi.create.Create/]: Loaded 58 train hat configurations. +[11мая2026 13:05:17.688] [Render thread/INFO] [net.neoforged.neoforge.client.entity.animation.json.AnimationLoader/]: Loaded 0 entity animations +[11мая2026 13:05:17.880] [Render thread/INFO] [Veil/]: Compiled 58 vanilla shaders in 356.2 ms +[11мая2026 13:05:18.691] [Render thread/INFO] [Veil/]: Finished uploading vanilla shaders +[11мая2026 13:05:21.850] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:21.857] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:21.880] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:21.884] [Render thread/INFO] [net.minecraft.server.MinecraftServer/]: Found new data pack create:dynamic_data, loading it automatically +[11мая2026 13:05:23.230] [Render thread/INFO] [net.minecraft.world.item.crafting.RecipeManager/]: Loaded 2941 recipes +[11мая2026 13:05:23.465] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 2644 advancements +[11мая2026 13:05:26.660] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:26.663] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:26.667] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:26.794] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Starting integrated minecraft server version 1.21.1 +[11мая2026 13:05:26.795] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Generating keypair +[11мая2026 13:05:26.948] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Started DhWorld of type Client_Server +[11мая2026 13:05:27.067] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 0 to minecraft:overworld +[11мая2026 13:05:27.347] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:27.517] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.539] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.562] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.579] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.599] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.606] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.613] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.619] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.693] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@overworld} with saves at [LocalSaveStructure@.\saves\New World (1)\data] +[11мая2026 13:05:27.701] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [overworld]-[.\saves\New World (1)\data]... +[11мая2026 13:05:27.701] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:27.702] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:31.765] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 1 to minecraft:the_end +[11мая2026 13:05:31.818] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:31.838] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.861] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.885] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.898] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.919] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.926] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.933] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.942] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.955] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [the_end]-[.\saves\New World (1)\DIM1\data]... +[11мая2026 13:05:31.955] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:31.956] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:31.962] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@the_end} with saves at [LocalSaveStructure@.\saves\New World (1)\DIM1\data] +[11мая2026 13:05:31.964] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 2 to minecraft:the_nether +[11мая2026 13:05:31.979] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:32.000] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.020] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.043] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.055] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.079] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.086] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.093] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.100] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.111] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [the_nether]-[.\saves\New World (1)\DIM-1\data]... +[11мая2026 13:05:32.111] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:32.112] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:32.117] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@the_nether} with saves at [LocalSaveStructure@.\saves\New World (1)\DIM-1\data] +[11мая2026 13:05:32.122] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Preparing start region for dimension minecraft:overworld +[11мая2026 13:05:32.170] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:32.672] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:33.144] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:33.667] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:34.140] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 18% +[11мая2026 13:05:34.643] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 18% +[11мая2026 13:05:35.137] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:35.635] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:36.137] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:36.671] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 63% +[11мая2026 13:05:36.726] [Server thread/INFO] [net.neoforged.neoforge.server.permission.PermissionAPI/]: Successfully initialized permission handler neoforge:default_handler +[11мая2026 13:05:36.729] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Time elapsed: 4597 ms +[11мая2026 13:05:36.902] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 12, from 10 +[11мая2026 13:05:36.903] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing simulation distance to 6, from 0 +[11мая2026 13:05:38.080] [Render thread/INFO] [dev.ryanhcode.sable.Sable/]: Adding local UDP server channel future +[11мая2026 13:05:38.096] [Render thread/WARN] [io.netty.bootstrap.Bootstrap/]: Unknown channel option 'SO_BROADCAST' for channel '[id: 0xea3530d6]' +[11мая2026 13:05:38.108] [Netty Server IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Server UDP channel active +[11мая2026 13:05:38.167] [Render thread/INFO] [dev.ryanhcode.sable.Sable/]: Starting local client UDP channel future +[11мая2026 13:05:38.173] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Client UDP channel active +[11мая2026 13:05:38.534] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:38.537] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:38.541] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:39.001] [Server thread/INFO] [net.minecraft.server.players.PlayerList/]: Dev[local:E:aabc8e53] logged in with entity id 25 at (9.5, 83.0, -3.5) +[11мая2026 13:05:39.009] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Beginning attempted authentication with player Dev +[11мая2026 13:05:39.097] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:39.100] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev joined the game +[11мая2026 13:05:39.104] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Loading client level [Wrapped{ClientLevel@overworld}]-[overworld]. +[11мая2026 13:05:39.131] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Loaded [0] waiting chunk wrappers. +[11мая2026 13:05:39.296] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:05:39.397] [Render thread/INFO] [flywheel/]: Started 2 worker threads +[11мая2026 13:05:39.710] [Render thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Setting up renderer +[11мая2026 13:05:39.715] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.715] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.716] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.717] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.719] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 16 +[11мая2026 13:05:39.725] [Render thread/INFO] [DistantHorizons-QuadElementBuffer/]: Quad IBO Resizing from [0] to [163840] with type: GL_UNKNOWN(5125) +[11мая2026 13:05:39.743] [Server thread/INFO] [LodWorldGen/]: DH TerraFirmaCraft detection: false +[11мая2026 13:05:39.753] [Server thread/INFO] [LodWorldGen/]: ================WORLD_GEN_STEP_INITING============= +[11мая2026 13:05:39.754] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.BatchGenerator/]: Batch Chunk Generator initialized +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Creating world gen queue +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Created world gen queue +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.GeneratedFullDataSourceProvider/]: Set world gen queue for level [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:05:39.765] [Render thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Renderer setup complete +[11мая2026 13:05:39.777] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.777] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.778] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.779] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.779] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 12 +[11мая2026 13:05:39.784] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.785] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.786] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.786] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.787] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.788] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.789] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.789] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.791] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 8 +[11мая2026 13:05:39.810] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.811] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.812] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.812] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.813] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.814] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.814] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.815] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.820] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.820] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.821] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.821] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.968] [Render thread/INFO] [Veil/]: Multi-Bind supported, using core +[11мая2026 13:05:40.131] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 2 advancements +[11мая2026 13:05:46.947] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev has made the advancement [Applied Kinematics] +[11мая2026 13:05:46.967] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Dev has made the advancement [Applied Kinematics] +[11мая2026 13:05:46.987] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 34 advancements +[11мая2026 13:05:53.741] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:05:53.838] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Spectator Mode] +[11мая2026 13:05:53.857] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Spectator Mode +[11мая2026 13:05:54.611] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Creative Mode] +[11мая2026 13:05:54.647] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Creative Mode +[11мая2026 13:05:54.812] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:05:55.323] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:06:18.094] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.api.internal.SharedApi/]: Distant Horizons overloaded, too many chunks queued for updating. +This may result in holes in your LODs. +Please move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. +Max queue count [500] ([500] per thread). +[11мая2026 13:06:18.105] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Distant Horizons overloaded, too many chunks queued for updating. \nThis may result in holes in your LODs. \nPlease move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. \nMax queue count [500] ([500] per thread). +[11мая2026 13:06:43.581] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:06:45.227] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:06:46.479] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:06:46.515] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:06:46.516] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:06:46.593] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:06:46.594] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:06:46.595] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:06:46.596] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:06:48.255] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.api.internal.SharedApi/]: Distant Horizons overloaded, too many chunks queued for updating. +This may result in holes in your LODs. +Please move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. +Max queue count [500] ([500] per thread). +[11мая2026 13:06:48.256] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Distant Horizons overloaded, too many chunks queued for updating. \nThis may result in holes in your LODs. \nPlease move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. \nMax queue count [500] ([500] per thread). +[11мая2026 13:06:50.690] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:06:50.701] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:06:50.716] [Render thread/INFO] [Sodium/]: Flushed changes to Minecraft configuration +[11мая2026 13:06:51.767] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 2, from 12 +[11мая2026 13:06:51.772] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing simulation distance to 5, from 6 +[11мая2026 13:06:55.673] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:06:55.962] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:07:00.829] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:00.841] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:00.841] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:00.855] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:00.855] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:00.855] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:00.856] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:08.094] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Unknown game mode: spectatorp +[11мая2026 13:07:08.095] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] ...spectatorp<--[HERE] +[11мая2026 13:07:08.951] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Spectator Mode] +[11мая2026 13:07:08.952] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Spectator Mode +[11мая2026 13:07:15.880] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:15.892] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:15.893] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:15.904] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:15.904] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:15.904] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:15.904] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:21.973] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:21.973] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:21.975] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:21.975] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:21.978] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:22.482] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:22.482] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:28.469] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:32.471] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:07:32.474] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:07:32.478] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:36.900] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:36.900] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:36.901] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:37.403] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:37.403] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:41.230] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:41.244] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:41.244] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:41.257] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:41.257] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:41.257] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:41.257] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:18.530] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:08:18.541] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:08:18.541] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:08:18.552] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:08:18.552] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:08:18.552] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:18.552] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:43.407] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:08:43.464] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:08:47.465] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:08:47.487] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:21.784] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:09:21.830] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:24.461] [DH-World Gen Thread[0]/INFO] [DistantHorizons-DhLitWorldGenRegion/]: WorldGen requiring minecraft:structure_starts outside expected range detected. Force passing EMPTY chunk and seeing if it works. +[11мая2026 13:09:25.832] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:09:25.849] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:34.909] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:09:34.922] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:34.922] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:34.934] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:34.934] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:34.935] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:34.935] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:38.793] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:09:38.796] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:09:38.798] [Render thread/INFO] [Sodium/]: Flushed changes to Minecraft configuration +[11мая2026 13:09:39.399] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 5, from 2 +[11мая2026 13:09:39.403] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:09:39.405] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:09:46.780] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:09:46.796] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:46.796] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:46.807] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:46.807] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:46.807] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:46.807] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:00.987] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:00.999] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:01.000] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:01.015] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:01.016] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:01.016] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:01.016] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:08.693] [Render thread/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: MINIMUM +[11мая2026 13:10:08.695] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:08.730] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:08.731] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:08.731] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:08.731] [Render thread/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: MINIMUM +[11мая2026 13:10:12.731] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:12.753] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:14.488] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:10:14.488] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 16 +[11мая2026 13:10:32.529] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:32.541] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:32.542] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:32.553] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:32.553] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:32.554] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:32.554] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:59.629] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:59.640] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:59.640] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:59.662] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:59.664] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:59.664] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:59.664] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:00.280] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Closing world gen queue +[11мая2026 13:11:00.281] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Closing WorldGenerationQueue... +[11мая2026 13:11:00.281] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Awaiting world generator thread pool termination... +[11мая2026 13:11:03.283] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: World generator thread pool shutdown didn't complete after [3] seconds. Some world generator requests may still be running. +[11мая2026 13:11:03.283] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.BatchGenerator/]: BatchGenerator shutting down... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: BatchGenerationEnvironment shutting down... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: Canceling in progress generation event futures... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: BatchGenerationEnvironment shutdown complete. +[11мая2026 13:11:03.283] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Finished closing WorldGenerationQueue +[11мая2026 13:11:03.291] [Server thread/WARN] [net.minecraft.server.MinecraftServer/]: Can't keep up! Is the server overloaded? Running 2962ms or 59 ticks behind +[11мая2026 13:11:10.348] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Unknown or incomplete command, see below for error +[11мая2026 13:11:10.348] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] <--[HERE] +[11мая2026 13:11:12.545] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Creative Mode] +[11мая2026 13:11:12.551] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Creative Mode +[11мая2026 13:11:22.115] [Server thread/WARN] [net.minecraft.server.MinecraftServer/]: Can't keep up! Is the server overloaded? Running 2386ms or 47 ticks behind +[11мая2026 13:11:24.158] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:11:24.171] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:24.171] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:24.274] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:24.275] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:24.275] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:24.275] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:29.073] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:11:29.084] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:29.085] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:29.153] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:29.153] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:29.153] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:29.153] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:47.373] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:11:47.377] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:11:51.379] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:11:51.384] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:11:59.972] [Render thread/ERROR] [net.minecraft.client.Minecraft/FATAL]: Reported exception thrown! +net.minecraft.ReportedException: Narrating screen + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1137) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.runTick(Minecraft.java:1201) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:813) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[neoforge-21.1.219.jar%23189!/:?] + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.NeoForgeClientDevLaunchHandler.runService(NeoForgeClientDevLaunchHandler.java:23) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23128!/:?] + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] + at net.neoforged.devlaunch.Main.main(Main.java:57) [DevLaunch-1.0.2.jar:?] +Caused by: java.lang.IllegalArgumentException: TranslatableContents' arguments must be either a Component, Number, Boolean, or a String. Was given null for gui.narrate.editBox + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.contents.TranslatableContents.(TranslatableContents.java:90) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.Component.translatable(Component.java:160) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.createNarrationMessage(EditBox.java:106) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.updateWidgetNarration(EditBox.java:636) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList$Entry.updateNarration(ContainerObjectSelectionList.java:251) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList.updateWidgetNarration(ContainerObjectSelectionList.java:113) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarratedWidget(Screen.java:597) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarrationState(Screen.java:573) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.narration.ScreenNarrationCollector.update(ScreenNarrationCollector.java:19) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.runNarration(Screen.java:556) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.handleDelayedNarration(Screen.java:543) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1131) ~[neoforge-21.1.219.jar%23189!/:?] + ... 21 more +[11мая2026 13:12:00.430] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level the_end +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@6a023157]. +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@6a023157]. +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:12:00.632] [DH-Parent Update Queue [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [the_end] Thread[0]] terminated. +[11мая2026 13:12:00.640] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@the_end} +[11мая2026 13:12:00.640] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level the_nether +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@18b5e753]. +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@18b5e753]. +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:12:00.842] [DH-Parent Update Queue [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [the_nether] Thread[0]] terminated. +[11мая2026 13:12:00.850] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@the_nether} +[11мая2026 13:12:00.850] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level overworld +[11мая2026 13:12:00.851] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.ClientLevelModule$ClientRenderState/]: Shutting down ClientRenderState +[11мая2026 13:12:00.851] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Shutting down LodRenderer... +[11мая2026 13:12:00.851] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Queuing Renderer Cleanup for main render thread +[11мая2026 13:12:00.865] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Finished shutting down LodRenderer +[11мая2026 13:12:00.865] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Shutting down LodQuadTree... +[11мая2026 13:12:00.870] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Finished shutting down LodQuadTree +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:12:01.072] [DH-Parent Update Queue [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [overworld] Thread[0]] terminated. +[11мая2026 13:12:01.091] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@overworld} +[11мая2026 13:12:01.091] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Closed DhWorld of type Client_Server +[11мая2026 13:12:01.092] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing all [0] database connections... +[11мая2026 13:12:01.413] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Stopping server +[11мая2026 13:12:01.414] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving players +[11мая2026 13:12:01.424] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving worlds +[11мая2026 13:12:01.426] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Client UDP channel inactive +[11мая2026 13:12:01.426] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Closed UDP channel! +[11мая2026 13:12:01.468] [DH-LOD Update Propagator Thread[0]/WARN] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Attempted to insert [FullDataSourceV2DTO] with primary key [7*5,0] on closed repo [jdbc:sqlite:.\saves\New World (1)\data\DistantHorizons.sqlite]. +[11мая2026 13:12:02.491] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:12:02.491] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:12:02.571] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:12:02.571] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:12:02.579] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:12:02.579] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:12:02.593] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (New World (1)): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage: All dimensions are saved +[11мая2026 13:12:02.598] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.717] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.717] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.728] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.728] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Unloading client level [Wrapped{ClientLevel@overworld}]-[overworld]. +[11мая2026 13:12:02.730] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:12:03.097] [Render thread/FATAL] [net.neoforged.neoforge.common.NeoForgeMod/]: Preparing crash report with UUID 4f400ccb-b5f8-4e8b-b359-e2d5e2dc83f1 +[11мая2026 13:12:03.116] [Render thread/FATAL] [net.neoforged.neoforge.common.NeoForgeMod/]: Preparing crash report with UUID 6bb8b6ba-c45c-426b-be36-121f564cad9f diff --git a/neoforge/run/logs/latest.log b/neoforge/run/logs/latest.log new file mode 100644 index 0000000..526be55 --- /dev/null +++ b/neoforge/run/logs/latest.log @@ -0,0 +1,580 @@ +[11мая2026 13:04:44.734] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher running: args [--launchTarget, forgeclientdev, --version, 21.1.219, --assetIndex, 17, --assetsDir, C:\\Users\\user\\.gradle\\caches\\neoformruntime\\assets, --gameDir, ., --fml.fmlVersion, 4.0.42, --fml.mcVersion, 1.21.1, --fml.neoForgeVersion, 21.1.219, --fml.neoFormVersion, 20240808.144430] +[11мая2026 13:04:44.740] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: JVM identified as Microsoft OpenJDK 64-Bit Server VM 21.0.8+9-LTS +[11мая2026 13:04:44.744] [main/INFO] [cpw.mods.modlauncher.Launcher/MODLAUNCHER]: ModLauncher 11.0.5+main.901c6ea8 starting: java version 21.0.8 by Microsoft; OS Windows 11 arch amd64 version 10.0 +[11мая2026 13:04:44.950] [main/INFO] [net.neoforged.fml.loading.ImmediateWindowHandler/]: Loading ImmediateWindowProvider fmlearlywindow +[11мая2026 13:04:45.142] [main/INFO] [EARLYDISPLAY/]: Trying GL version 4.6 +[11мая2026 13:04:45.389] [main/INFO] [EARLYDISPLAY/]: Requested GL version 4.6 got version 4.6 +[11мая2026 13:04:45.608] [main/INFO] [mixin/]: SpongePowered MIXIN Subsystem Version=0.8.7 Source=union:/C:/Users/user/.gradle/caches/modules-2/files-2.1/net.fabricmc/sponge-mixin/0.15.2+mixin.0.8.7/2af2f021d8e02a0220dc27a7a72b4666d66d44ca/sponge-mixin-0.15.2+mixin.0.8.7.jar%23138!/ Service=ModLauncher Env=CLIENT +[11мая2026 13:04:46.127] [pool-2-thread-1/INFO] [EARLYDISPLAY/]: GL info: NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2 GL version 4.6.0 NVIDIA 591.74, NVIDIA Corporation +[11мая2026 13:04:47.133] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: ponder. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\net.createmod.ponder\ponder-neoforge\1.0.82+mc1.21.1\b10a04f40b9d6d33c346fb38df33f10f7e51b713\ponder-neoforge-1.0.82+mc1.21.1.jar +[11мая2026 13:04:47.134] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: library:Registrate.MC1._21._67. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\com.tterrag.registrate\Registrate\MC1.21-1.3.0+67\66ddc4cd56472fea1ea1a24182901e6c92a51c0a\Registrate-MC1.21-1.3.0+67.jar +[11мая2026 13:04:47.136] [main/WARN] [net.neoforged.jarjar.selection.JarSelector/]: Attempted to select a dependency jar for JarJar which was passed in as source: flywheel. Using Mod File: C:\Users\user\.gradle\caches\modules-2\files-2.1\dev.engine-room.flywheel\flywheel-neoforge-1.21.1\1.0.6\a943872ad0bdd4458d818d8d7dc123fb250eb744\flywheel-neoforge-1.21.1-1.0.6.jar +[11мая2026 13:04:47.136] [main/INFO] [net.neoforged.fml.loading.moddiscovery.locators.JarInJarDependencyLocator/]: Found 12 dependencies adding them to mods collection +[11мая2026 13:04:47.139] [main/INFO] [net.neoforged.fml.loading.moddiscovery.ModDiscoverer/]: + Mod List: + Name Version (Mod Id) + + Create 6.0.10 (create) + Create Aeronautics 1.2.1 (aeronautics) + Create Aeronautics 1.2.1 (aeronautics_bundled) + Create Offroad 1.2.1 (offroad) + Create Simulated 1.2.1 (simulated) + Distant Horizons 2.2.1-a (distanthorizons) + Flywheel 1.0.6 (flywheel) + Forgified Fabric API Base 0.4.42+d1308ded19 (fabric_api_base) + Forgified Fabric BlockView API (v2) 1.0.10+9afaaf8c19 (fabric_block_view_api_v2) + Forgified Fabric Renderer API (v1) 3.4.0+9c40919e19 (fabric_renderer_api_v1) + Forgified Fabric Rendering Data Attachment (v1) 0.3.48+73761d2e19 (fabric_rendering_data_attachment_v1) + Minecraft 1.21.1 (minecraft) + NeoForge 21.1.219 (neoforge) + Ponder 1.0.82+mc1.21.1 (ponder) + Sable 1.2.2 (sable) + Sable Companion 1.6.0 (sablecompanion) + Sodium 0.6.13+mc1.21.1 (sodium) + Sodium Extras 1.0.7 (sodiumextras) + Veil 4.0.0 (veil) +[11мая2026 13:04:48.558] [main/INFO] [mixin/]: Compatibility level set to JAVA_21 +[11мая2026 13:04:48.615] [main/INFO] [cpw.mods.modlauncher.LaunchServiceHandler/MODLAUNCHER]: Launching target 'forgeclientdev' with arguments [--version, 21.1.219, --gameDir, ., --assetsDir, C:\Users\user\.gradle\caches\neoformruntime\assets, --assetIndex, 17] +[11мая2026 13:04:48.697] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.command.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.698] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.debug.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.699] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.dynamicbuffer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.700] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.fix.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.702] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.framebuffer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.703] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.necromancer.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.704] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.network.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.706] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.performance.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.707] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.perspective.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.709] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.pipeline.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.711] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.quasar.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.711] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.registry.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.714] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.rendertype.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.714] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.resource.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.716] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.scheduler.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.717] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.shader.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.719] [main/WARN] [mixin/]: Reference map 'veil.refmap.json' for veil.neoforge.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.722] [main/WARN] [mixin/]: Reference map 'simulated.refmap.json' for simulated.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.739] [main/INFO] [Sodium/]: Loaded configuration file for Sodium: 43 options available, 0 override(s) found +[11мая2026 13:04:48.748] [main/WARN] [mixin/]: Reference map 'aeronautics.refmap.json' for aeronautics.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.761] [main/WARN] [mixin/]: Reference map 'ponder.refmap.json' for ponder-common.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:48.775] [main/INFO] [dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin/]: Using Sodium renderer mixins +[11мая2026 13:04:48.777] [main/INFO] [dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin/]: Using Sodium renderer mixins +[11мая2026 13:04:48.779] [main/WARN] [mixin/]: Reference map 'offroad.refmap.json' for offroad.mixins.json could not be read. If this is a development environment you can ignore this message +[11мая2026 13:04:49.340] [main/WARN] [mixin/]: Error loading class: net/irisshaders/iris/pipeline/PipelineManager (java.lang.ClassNotFoundException: net.irisshaders.iris.pipeline.PipelineManager) +[11мая2026 13:04:49.341] [main/WARN] [mixin/]: @Mixin target net.irisshaders.iris.pipeline.PipelineManager was not found veil.neoforge.mixins.json:client.perspective.iris.PipelineManagerMixin from mod veil +[11мая2026 13:04:49.450] [main/WARN] [mixin/]: Error loading class: mezz/jei/library/plugins/vanilla/ingredients/ItemStackListFactory (java.lang.ClassNotFoundException: mezz.jei.library.plugins.vanilla.ingredients.ItemStackListFactory) +[11мая2026 13:04:53.271] [main/WARN] [mixin/]: Error loading class: org/jetbrains/annotations/ApiStatus$ScheduledForRemoval (java.lang.ClassNotFoundException: org.jetbrains.annotations.ApiStatus$ScheduledForRemoval) +[11мая2026 13:04:53.657] [main/INFO] [MixinExtras|Service/]: Initializing MixinExtras via com.llamalad7.mixinextras.service.MixinExtrasServiceImpl(version=0.5.0). +[11мая2026 13:04:56.917] [Datafixer Bootstrap/INFO] [com.mojang.datafixers.DataFixerBuilder/]: 229 Datafixer optimizations took 620 milliseconds +[11мая2026 13:05:03.942] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, destination] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:03.944] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, location] and [teleport, targets] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:03.948] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, destination] and [teleport, targets] with inputs: [Player, 0123, @e, dd12be42-52a9-4a91-a8a1-11c01849e498] +[11мая2026 13:05:03.953] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, targets] and [teleport, destination] with inputs: [Player, 0123, dd12be42-52a9-4a91-a8a1-11c01849e498] +[11мая2026 13:05:03.955] [main/WARN] [net.minecraft.commands.Commands/]: Ambiguity between arguments [teleport, targets, location] and [teleport, targets, destination] with inputs: [0.1 -0.5 .9, 0 0 0] +[11мая2026 13:05:04.199] [Render thread/WARN] [net.minecraft.server.packs.VanillaPackResourcesBuilder/]: Assets URL 'union:/C:/Users/user/IdeaProjects/sable/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar%23189!/assets/.mcassetsroot' uses unexpected schema +[11мая2026 13:05:04.199] [Render thread/WARN] [net.minecraft.server.packs.VanillaPackResourcesBuilder/]: Assets URL 'union:/C:/Users/user/IdeaProjects/sable/neoforge/build/moddev/artifacts/neoforge-21.1.219.jar%23189!/data/.mcassetsroot' uses unexpected schema +[11мая2026 13:05:04.244] [Render thread/INFO] [com.mojang.authlib.yggdrasil.YggdrasilAuthenticationService/]: Environment: Environment[sessionHost=https://sessionserver.mojang.com, servicesHost=https://api.minecraftservices.com, name=PROD] +[11мая2026 13:05:04.261] [Render thread/INFO] [net.minecraft.client.Minecraft/]: Setting user: Dev +[11мая2026 13:05:04.420] [Render thread/INFO] [net.minecraft.client.Minecraft/]: Backend library: LWJGL version 3.3.3+5 +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Vendor: NVIDIA Corporation +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Renderer: NVIDIA GeForce GTX 1660 SUPER/PCIe/SSE2 +[11мая2026 13:05:04.499] [Render thread/INFO] [com.mojang.blaze3d.platform.Window/]: OpenGL Version: 4.6.0 NVIDIA 591.74 +[11мая2026 13:05:04.503] [Render thread/INFO] [Sodium-NvidiaWorkarounds/]: Modifying OpenGL context to apply workarounds for the NVIDIA graphics driver... +[11мая2026 13:05:05.661] [modloading-worker-0/INFO] [Veil/]: Veil is initializing. +[11мая2026 13:05:05.806] [modloading-worker-0/INFO] [net.neoforged.neoforge.common.NeoForgeMod/NEOFORGE-MOD]: NeoForge mod loading, version 21.1.219, for MC 1.21.1 +[11мая2026 13:05:06.174] [modloading-worker-0/INFO] [com.simibubi.create.Create/]: Create 6.0.10 initializing! Commit hash: ac0c444d9828da3453ae8cc65338e8de063286fb +[11мая2026 13:05:08.413] [modloading-worker-0/INFO] [dev.ryanhcode.sable.Sable/]: Sable loaded! +[11мая2026 13:05:08.442] [modloading-worker-0/WARN] [dev.ryanhcode.sable.Sable/]: NOTE: Sable is loaded with Flywheel. Sable contains extensive shader overrides and a full light-storage replacement. Expect this to cause compatibility issues. If issues arise, please report them to the Sable issue tracker (https://github.com/ryanhcode/sable/issues) instead of the Flywheel issue tracker. +[11мая2026 13:05:10.736] [modloading-sync-worker/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:05:10.737] [modloading-sync-worker/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:05:10.821] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:10.961] [Render thread/INFO] [Veil/]: GL Debug supported +[11мая2026 13:05:11.389] [Render thread/INFO] [net.neoforged.neoforge.gametest.GameTestHooks/]: Enabled Gametest Namespaces: [sable] +[11мая2026 13:05:11.792] [Render thread/INFO] [GameRenderer/]: Starting up renderer (forge) +[11мая2026 13:05:11.793] [Render thread/WARN] [GameRenderer/]: Dependency setup is not done yet, skipping renderer this startup event! +[11мая2026 13:05:11.838] [Render thread/INFO] [net.minecraft.server.packs.resources.ReloadableResourceManager/]: Reloading ResourceManager: vanilla, mod_resources, mod/sodium, mod/fabric_renderer_api_v1, mod/fabric_api_base, mod/veil, mod/simulated, mod/sodiumextras, mod/distanthorizons, mod/fabric_rendering_data_attachment_v1, mod/aeronautics, mod/aeronautics_bundled, mod/flywheel, mod/ponder, mod/sablecompanion, mod/create, mod/sable, mod/offroad, mod/neoforge, mod/fabric_block_view_api_v2 +[11мая2026 13:05:11.962] [NeoForge Version Check/INFO] [net.neoforged.fml.VersionChecker/]: [create] Starting version check at https://api.modrinth.com/updates/create/forge_updates.json?neoforge=only +[11мая2026 13:05:11.998] [Worker-Main-2/INFO] [net.minecraft.client.gui.font.providers.UnihexProvider/]: Found unifont_all_no_pua-15.1.05.hex, loading +[11мая2026 13:05:12.667] [Worker-Main-2/INFO] [net.minecraft.client.gui.font.providers.UnihexProvider/]: Found unifont_jp_patch-15.1.05.hex, loading +[11мая2026 13:05:12.692] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Initializing Distant Horizons +[11мая2026 13:05:12.753] [Worker-Main-7/WARN] [DistantHorizons-Initializer/]: Java.awt.headless is false. This means Distant Horizons can't display error and info dialog windows. +[11мая2026 13:05:12.827] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Distant Horizons, Version: 2.2.1-a +[11мая2026 13:05:12.831] [Worker-Main-7/WARN] [com.seibel.distanthorizons.core.jar.JarUtils/]: Unable to get the jar file, trying backup method... Error: URI scheme is not "file" +java.lang.IllegalArgumentException: URI scheme is not "file" + at java.base/java.io.File.(File.java:423) ~[?:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.core.jar.JarUtils.(JarUtils.java:53) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.core.jar.ModJarInfo.(ModJarInfo.java:48) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/loaderCommon.neoforge.com.seibel.distanthorizons.common.AbstractModInitializer.printModInfo(AbstractModInitializer.java:140) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/loaderCommon.neoforge.com.seibel.distanthorizons.common.AbstractModInitializer.onInitializeClient(AbstractModInitializer.java:70) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at TRANSFORMER/distanthorizons@2.2.1-a/com.seibel.distanthorizons.neoforge.NeoforgeMain.lambda$new$0(NeoforgeMain.java:62) ~[distanthorizons-2.2.1-a-1.21.1.jar%23195!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.ConsumerEventHandler.invoke(ConsumerEventHandler.java:27) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:360) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/net.neoforged.bus/net.neoforged.bus.EventBus.post(EventBus.java:328) ~[bus-8.0.5.jar%23150!/:?] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModContainer.acceptEvent(ModContainer.java:158) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModLoader.lambda$dispatchParallelEvent$4(ModLoader.java:172) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.ModLoader.lambda$dispatchParallelTask$7(ModLoader.java:231) ~[loader-4.0.42.jar%23146!/:4.0] + at java.base/java.util.concurrent.CompletableFuture.uniHandle(CompletableFuture.java:934) [?:?] + at java.base/java.util.concurrent.CompletableFuture$UniHandle.tryFire(CompletableFuture.java:911) [?:?] + at java.base/java.util.concurrent.CompletableFuture$Completion.exec(CompletableFuture.java:483) [?:?] + at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:387) [?:?] + at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1312) [?:?] + at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1843) [?:?] + at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1808) [?:?] + at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:188) [?:?] +[11мая2026 13:05:12.965] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Branch: main +[11мая2026 13:05:12.965] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Commit: fd89f569d0e1fd9307fa253f9dfb52c34d15a83f +[11мая2026 13:05:12.967] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: DH Jar Build Source: User +[11мая2026 13:05:13.302] [Worker-Main-7/INFO] [DistantHorizons-AbstractModInitializer/]: Distant Horizons Initialized +[11мая2026 13:05:13.307] [Worker-Main-7/INFO] [ConfigBase, distanthorizons/]: Initialising config for DistantHorizons +[11мая2026 13:05:13.403] [NeoForge Version Check/INFO] [net.neoforged.fml.VersionChecker/]: [create] Found status: OUTDATED Current: 6.0.10 Target: 6.0.10+mc1.21.1 +[11мая2026 13:05:13.705] [Worker-Main-7/INFO] [ConfigBase, distanthorizons/]: Config for DistantHorizons initialised +[11мая2026 13:05:14.489] [Worker-Main-3/WARN] [net.minecraft.client.resources.model.ModelBakery/]: Unable to load model: 'minecraft:block' referenced from: simulated:block/rope_connector/block_horizontal: java.io.FileNotFoundException: minecraft:models/block.json +[11мая2026 13:05:16.441] [Render thread/INFO] [Veil/]: Loaded 0 shader modifications +[11мая2026 13:05:16.647] [Render thread/INFO] [Veil/]: Loaded 29 shaders from: pinwheel/shaders/program +[11мая2026 13:05:16.707] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: LOW_IMPACT +[11мая2026 13:05:16.719] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: LOW_IMPACT +[11мая2026 13:05:16.719] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: MEDIUM +[11мая2026 13:05:16.722] [DH-ApplyConfigPresetTimer/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: MEDIUM +[11мая2026 13:05:16.800] [Worker-Main-6/INFO] [PonderIndex/]: Registering Ponder Scenes took 132.7 ms +[11мая2026 13:05:16.807] [Worker-Main-6/INFO] [PonderIndex/]: Registering Ponder Tags took 5.978 ms +[11мая2026 13:05:17.040] [Render thread/WARN] [net.minecraft.client.sounds.SoundEngine/]: Missing sound for event: minecraft:item.goat_horn.play +[11мая2026 13:05:17.040] [Render thread/WARN] [net.minecraft.client.sounds.SoundEngine/]: Missing sound for event: minecraft:entity.goat.screaming.horn_break +[11мая2026 13:05:17.122] [Render thread/INFO] [com.mojang.blaze3d.audio.Library/]: OpenAL initialized on device OpenAL Soft on C34UQ180HC (NVIDIA High Definition Audio) +[11мая2026 13:05:17.123] [Render thread/INFO] [net.minecraft.client.sounds.SoundEngine/SOUNDS]: Sound engine started +[11мая2026 13:05:17.259] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 2048x1024x4 minecraft:textures/atlas/blocks.png-atlas +[11мая2026 13:05:17.296] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x256x4 minecraft:textures/atlas/signs.png-atlas +[11мая2026 13:05:17.297] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x4 minecraft:textures/atlas/shield_patterns.png-atlas +[11мая2026 13:05:17.298] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x4 minecraft:textures/atlas/banner_patterns.png-atlas +[11мая2026 13:05:17.298] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 2048x1024x4 minecraft:textures/atlas/armor_trims.png-atlas +[11мая2026 13:05:17.311] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 128x64x4 minecraft:textures/atlas/decorated_pot.png-atlas +[11мая2026 13:05:17.311] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x256x4 minecraft:textures/atlas/chest.png-atlas +[11мая2026 13:05:17.313] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x4 minecraft:textures/atlas/shulker_boxes.png-atlas +[11мая2026 13:05:17.314] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x4 minecraft:textures/atlas/beds.png-atlas +[11мая2026 13:05:17.403] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x512x0 minecraft:textures/atlas/particles.png-atlas +[11мая2026 13:05:17.406] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 512x256x0 minecraft:textures/atlas/paintings.png-atlas +[11мая2026 13:05:17.407] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 256x128x0 minecraft:textures/atlas/mob_effects.png-atlas +[11мая2026 13:05:17.408] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 64x64x0 minecraft:textures/atlas/map_decorations.png-atlas +[11мая2026 13:05:17.408] [Render thread/INFO] [net.minecraft.client.renderer.texture.TextureAtlas/]: Created: 1024x512x0 minecraft:textures/atlas/gui.png-atlas +[11мая2026 13:05:17.441] [Render thread/WARN] [net.minecraft.client.renderer.ShaderInstance/]: Shader rendertype_entity_translucent_emissive could not find sampler named Sampler2 in the specified shader program. +[11мая2026 13:05:17.518] [Render thread/INFO] [GameRenderer/]: Shutting down renderer (forge) +[11мая2026 13:05:17.522] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Renderer shutting down. +[11мая2026 13:05:17.526] [Render thread/INFO] [GameRenderer/]: Starting up renderer (forge) +[11мая2026 13:05:17.526] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Renderer starting up. +[11мая2026 13:05:17.532] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Creating GLProxy... If this is the last message you see there must have been an OpenGL error. +[11мая2026 13:05:17.533] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Lod Render OpenGL version [4.6.0 NVIDIA 591.74]. +[11мая2026 13:05:17.534] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: minecraftGlCapabilities: +Your OpenGL support: +openGL version 3.2+: [true] <- REQUIRED +Vertex Attribute Buffer Binding: [true] <- optional improvement +Buffer Storage: [true] <- optional improvement + +[11мая2026 13:05:17.535] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: GPU Vendor [NVIDIA CORPORATION], Preferred upload method is [BUFFER_STORAGE]. +[11мая2026 13:05:17.535] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: GLProxy creation successful. OpenGL smiles upon you this day. +[11мая2026 13:05:17.550] [Render thread/INFO] [Veil/]: Loaded 3 framebuffers +[11мая2026 13:05:17.577] [Render thread/INFO] [Veil/]: Loaded 6 post pipelines +[11мая2026 13:05:17.588] [Render thread/INFO] [Veil/]: Loaded 4 render types +[11мая2026 13:05:17.589] [Render thread/INFO] [Veil/]: Enabled bloom pipeline +[11мая2026 13:05:17.590] [Render thread/INFO] [Veil/]: Loaded 0 quasar particles +[11мая2026 13:05:17.591] [Render thread/INFO] [Veil/]: Loaded 0 templates +[11мая2026 13:05:17.591] [Render thread/INFO] [Veil/]: Loaded 0 modules +[11мая2026 13:05:17.647] [Render thread/INFO] [flywheel/backend/shaders/]: Loaded 77 shader sources in 41,464 ms +[11мая2026 13:05:17.686] [Render thread/INFO] [com.simibubi.create.Create/]: Loaded 58 train hat configurations. +[11мая2026 13:05:17.688] [Render thread/INFO] [net.neoforged.neoforge.client.entity.animation.json.AnimationLoader/]: Loaded 0 entity animations +[11мая2026 13:05:17.880] [Render thread/INFO] [Veil/]: Compiled 58 vanilla shaders in 356.2 ms +[11мая2026 13:05:18.691] [Render thread/INFO] [Veil/]: Finished uploading vanilla shaders +[11мая2026 13:05:21.850] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:21.857] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:21.880] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:21.884] [Render thread/INFO] [net.minecraft.server.MinecraftServer/]: Found new data pack create:dynamic_data, loading it automatically +[11мая2026 13:05:23.230] [Render thread/INFO] [net.minecraft.world.item.crafting.RecipeManager/]: Loaded 2941 recipes +[11мая2026 13:05:23.465] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 2644 advancements +[11мая2026 13:05:26.660] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:26.663] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:26.667] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:26.794] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Starting integrated minecraft server version 1.21.1 +[11мая2026 13:05:26.795] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Generating keypair +[11мая2026 13:05:26.948] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Started DhWorld of type Client_Server +[11мая2026 13:05:27.067] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 0 to minecraft:overworld +[11мая2026 13:05:27.347] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:27.517] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.539] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.562] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.579] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.599] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.606] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.613] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.619] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:05:27.693] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@overworld} with saves at [LocalSaveStructure@.\saves\New World (1)\data] +[11мая2026 13:05:27.701] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [overworld]-[.\saves\New World (1)\data]... +[11мая2026 13:05:27.701] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:27.702] [DH-Full Data Migration Thread: [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:31.765] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 1 to minecraft:the_end +[11мая2026 13:05:31.818] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:31.838] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.861] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.885] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.898] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.919] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.926] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.933] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.942] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:05:31.955] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [the_end]-[.\saves\New World (1)\DIM1\data]... +[11мая2026 13:05:31.955] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:31.956] [DH-Full Data Migration Thread: [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:31.962] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@the_end} with saves at [LocalSaveStructure@.\saves\New World (1)\DIM1\data] +[11мая2026 13:05:31.964] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Assigned physics scene ID 2 to minecraft:the_nether +[11мая2026 13:05:31.979] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:32.000] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0010-sqlite-createInitialDataTables.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.020] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0020-sqlite-createFullDataSourceV2Tables.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.043] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0030-sqlite-changeTableJournaling.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.055] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0031-sqlite-useSqliteWalJournaling.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.079] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0040-sqlite-removeRenderCache.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.086] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0050-sqlite-addApplyToParentIndex.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.093] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0060-sqlite-createChunkHashTable.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.100] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.DatabaseUpdater/]: Running SQL update script: [sqlScripts/0070-sqlite-createBeaconBeamTable.sql], for repo: [.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:05:32.111] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Attempting to migrate data sources for: [the_nether]-[.\saves\New World (1)\DIM-1\data]... +[11мая2026 13:05:32.111] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Found [0] data sources that need migration. +[11мая2026 13:05:32.112] [DH-Full Data Migration Thread: [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: No migration necessary. +[11мая2026 13:05:32.117] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Started DhClientServerLevel for Wrapped{ServerLevel[New World]@the_nether} with saves at [LocalSaveStructure@.\saves\New World (1)\DIM-1\data] +[11мая2026 13:05:32.122] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Preparing start region for dimension minecraft:overworld +[11мая2026 13:05:32.170] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:32.672] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:33.144] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:33.667] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 2% +[11мая2026 13:05:34.140] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 18% +[11мая2026 13:05:34.643] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 18% +[11мая2026 13:05:35.137] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:35.635] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:36.137] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 51% +[11мая2026 13:05:36.671] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Preparing spawn area: 63% +[11мая2026 13:05:36.726] [Server thread/INFO] [net.neoforged.neoforge.server.permission.PermissionAPI/]: Successfully initialized permission handler neoforge:default_handler +[11мая2026 13:05:36.729] [progressListener/INFO] [net.minecraft.server.level.progress.LoggerChunkProgressListener/]: Time elapsed: 4597 ms +[11мая2026 13:05:36.902] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 12, from 10 +[11мая2026 13:05:36.903] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing simulation distance to 6, from 0 +[11мая2026 13:05:38.080] [Render thread/INFO] [dev.ryanhcode.sable.Sable/]: Adding local UDP server channel future +[11мая2026 13:05:38.096] [Render thread/WARN] [io.netty.bootstrap.Bootstrap/]: Unknown channel option 'SO_BROADCAST' for channel '[id: 0xea3530d6]' +[11мая2026 13:05:38.108] [Netty Server IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Server UDP channel active +[11мая2026 13:05:38.167] [Render thread/INFO] [dev.ryanhcode.sable.Sable/]: Starting local client UDP channel future +[11мая2026 13:05:38.173] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Client UDP channel active +[11мая2026 13:05:38.534] [Render thread/INFO] [com.simibubi.create.Create/]: Created 157 recipes which will be injected into the game +[11мая2026 13:05:38.537] [Render thread/INFO] [com.simibubi.create.Create/]: Created 0 tags which will be injected into the game +[11мая2026 13:05:38.541] [Render thread/WARN] [net.minecraft.server.packs.repository.Pack/]: Pack mod/distanthorizons declared support for versions [16, 90000] but declared main format is 7, defaulting to 7 +[11мая2026 13:05:39.001] [Server thread/INFO] [net.minecraft.server.players.PlayerList/]: Dev[local:E:aabc8e53] logged in with entity id 25 at (9.5, 83.0, -3.5) +[11мая2026 13:05:39.009] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Beginning attempted authentication with player Dev +[11мая2026 13:05:39.097] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level load +[11мая2026 13:05:39.100] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev joined the game +[11мая2026 13:05:39.104] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Loading client level [Wrapped{ClientLevel@overworld}]-[overworld]. +[11мая2026 13:05:39.131] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Loaded [0] waiting chunk wrappers. +[11мая2026 13:05:39.296] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:05:39.397] [Render thread/INFO] [flywheel/]: Started 2 worker threads +[11мая2026 13:05:39.710] [Render thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Setting up renderer +[11мая2026 13:05:39.715] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.715] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.716] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.717] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.719] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 16 +[11мая2026 13:05:39.725] [Render thread/INFO] [DistantHorizons-QuadElementBuffer/]: Quad IBO Resizing from [0] to [163840] with type: GL_UNKNOWN(5125) +[11мая2026 13:05:39.743] [Server thread/INFO] [LodWorldGen/]: DH TerraFirmaCraft detection: false +[11мая2026 13:05:39.753] [Server thread/INFO] [LodWorldGen/]: ================WORLD_GEN_STEP_INITING============= +[11мая2026 13:05:39.754] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.BatchGenerator/]: Batch Chunk Generator initialized +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Creating world gen queue +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Created world gen queue +[11мая2026 13:05:39.758] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.GeneratedFullDataSourceProvider/]: Set world gen queue for level [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:05:39.765] [Render thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Renderer setup complete +[11мая2026 13:05:39.777] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.777] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.778] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.779] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.779] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 12 +[11мая2026 13:05:39.784] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.785] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.786] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.786] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.787] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.788] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.789] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.789] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.791] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 8 +[11мая2026 13:05:39.810] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.811] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.812] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.812] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.813] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.814] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.814] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.815] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.820] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:05:39.820] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.821] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:05:39.821] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:05:39.968] [Render thread/INFO] [Veil/]: Multi-Bind supported, using core +[11мая2026 13:05:40.131] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 2 advancements +[11мая2026 13:05:46.947] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Dev has made the advancement [Applied Kinematics] +[11мая2026 13:05:46.967] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Dev has made the advancement [Applied Kinematics] +[11мая2026 13:05:46.987] [Render thread/INFO] [net.minecraft.advancements.AdvancementTree/]: Loaded 34 advancements +[11мая2026 13:05:53.741] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:05:53.838] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Spectator Mode] +[11мая2026 13:05:53.857] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Spectator Mode +[11мая2026 13:05:54.611] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Creative Mode] +[11мая2026 13:05:54.647] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Creative Mode +[11мая2026 13:05:54.812] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:05:55.323] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:06:18.094] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.api.internal.SharedApi/]: Distant Horizons overloaded, too many chunks queued for updating. +This may result in holes in your LODs. +Please move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. +Max queue count [500] ([500] per thread). +[11мая2026 13:06:18.105] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Distant Horizons overloaded, too many chunks queued for updating. \nThis may result in holes in your LODs. \nPlease move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. \nMax queue count [500] ([500] per thread). +[11мая2026 13:06:43.581] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:06:45.227] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:06:46.479] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:06:46.515] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:06:46.516] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:06:46.593] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:06:46.594] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:06:46.595] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:06:46.596] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:06:48.255] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.api.internal.SharedApi/]: Distant Horizons overloaded, too many chunks queued for updating. +This may result in holes in your LODs. +Please move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. +Max queue count [500] ([500] per thread). +[11мая2026 13:06:48.256] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Distant Horizons overloaded, too many chunks queued for updating. \nThis may result in holes in your LODs. \nPlease move through the world slower, decrease your vanilla render distance, slow down your world pre-generator, or increase the Distant Horizons' CPU load config. \nMax queue count [500] ([500] per thread). +[11мая2026 13:06:50.690] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:06:50.701] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:06:50.716] [Render thread/INFO] [Sodium/]: Flushed changes to Minecraft configuration +[11мая2026 13:06:51.767] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 2, from 12 +[11мая2026 13:06:51.772] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing simulation distance to 5, from 6 +[11мая2026 13:06:55.673] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: hidden +[11мая2026 13:06:55.962] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] [Debug]: Hitboxes: shown +[11мая2026 13:07:00.829] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:00.841] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:00.841] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:00.855] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:00.855] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:00.855] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:00.856] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:08.094] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Unknown game mode: spectatorp +[11мая2026 13:07:08.095] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] ...spectatorp<--[HERE] +[11мая2026 13:07:08.951] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Spectator Mode] +[11мая2026 13:07:08.952] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Spectator Mode +[11мая2026 13:07:15.880] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:15.892] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:15.893] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:15.904] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:15.904] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:15.904] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:15.904] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:21.973] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:21.973] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:21.975] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:21.975] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:21.978] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:22.482] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:22.482] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:28.469] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:32.471] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:07:32.474] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:07:32.478] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:36.900] [Render thread/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:36.900] [Render thread/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:36.901] [Render thread/INFO] [Sodium/]: Flushed changes to Sodium configuration +[11мая2026 13:07:37.403] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Updating config cache +[11мая2026 13:07:37.403] [FileWatcher-1-thread-1/INFO] [SodiumExtras/Config]: Cache updated successfully +[11мая2026 13:07:41.230] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:07:41.244] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:41.244] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:07:41.257] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:41.257] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:07:41.257] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:07:41.257] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:18.530] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:08:18.541] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:08:18.541] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:08:18.552] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:08:18.552] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:08:18.552] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:18.552] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:08:43.407] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:08:43.464] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:08:47.465] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:08:47.487] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:21.784] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:09:21.830] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:24.461] [DH-World Gen Thread[0]/INFO] [DistantHorizons-DhLitWorldGenRegion/]: WorldGen requiring minecraft:structure_starts outside expected range detected. Force passing EMPTY chunk and seeing if it works. +[11мая2026 13:09:25.832] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:09:25.849] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:09:34.909] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:09:34.922] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:34.922] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:34.934] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:34.934] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:34.935] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:34.935] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:38.793] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:09:38.796] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:09:38.798] [Render thread/INFO] [Sodium/]: Flushed changes to Minecraft configuration +[11мая2026 13:09:39.399] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Changing view distance to 5, from 2 +[11мая2026 13:09:39.403] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:09:39.405] [Render thread/INFO] [ChunkBuilder/]: Started 2 worker threads +[11мая2026 13:09:46.780] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:09:46.796] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:46.796] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:09:46.807] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:46.807] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:09:46.807] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:09:46.807] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:00.987] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:00.999] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:01.000] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:01.015] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:01.016] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:01.016] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:01.016] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:08.693] [Render thread/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: changing preset to: MINIMUM +[11мая2026 13:10:08.695] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:08.730] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:08.731] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:08.731] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:08.731] [Render thread/INFO] [com.seibel.distanthorizons.core.config.eventHandlers.presets.AbstractPresetConfigEventHandler/]: preset active: MINIMUM +[11мая2026 13:10:12.731] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:10:12.753] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:10:14.488] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35633 +[11мая2026 13:10:14.488] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Loading shader with type: 35632 +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Shader loaded sucessfully. +[11мая2026 13:10:14.489] [Render thread/INFO] [com.seibel.distanthorizons.core.render.glObject.GLProxy/]: Vertex Attribute (GL43+) completed. It contains 1 binding points and a stride size of 16 +[11мая2026 13:10:32.529] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:32.541] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:32.542] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:32.553] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:32.553] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:32.554] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:32.554] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:59.629] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:10:59.640] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:59.640] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:10:59.662] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:59.664] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:10:59.664] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:10:59.664] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:00.280] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Closing world gen queue +[11мая2026 13:11:00.281] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Closing WorldGenerationQueue... +[11мая2026 13:11:00.281] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Awaiting world generator thread pool termination... +[11мая2026 13:11:03.283] [Server thread/WARN] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: World generator thread pool shutdown didn't complete after [3] seconds. Some world generator requests may still be running. +[11мая2026 13:11:03.283] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.BatchGenerator/]: BatchGenerator shutting down... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: BatchGenerationEnvironment shutting down... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: Canceling in progress generation event futures... +[11мая2026 13:11:03.283] [Server thread/INFO] [LodWorldGen/]: BatchGenerationEnvironment shutdown complete. +[11мая2026 13:11:03.283] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.generation.WorldGenerationQueue/]: Finished closing WorldGenerationQueue +[11мая2026 13:11:03.291] [Server thread/WARN] [net.minecraft.server.MinecraftServer/]: Can't keep up! Is the server overloaded? Running 2962ms or 59 ticks behind +[11мая2026 13:11:10.348] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Unknown or incomplete command, see below for error +[11мая2026 13:11:10.348] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] <--[HERE] +[11мая2026 13:11:12.545] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: [Dev: Set own game mode to Creative Mode] +[11мая2026 13:11:12.551] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Set own game mode to Creative Mode +[11мая2026 13:11:22.115] [Server thread/WARN] [net.minecraft.server.MinecraftServer/]: Can't keep up! Is the server overloaded? Running 2386ms or 47 ticks behind +[11мая2026 13:11:24.158] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:11:24.171] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:24.171] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:24.274] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:24.275] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:24.275] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:24.275] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:29.073] [Server thread/INFO] [net.minecraft.client.server.IntegratedServer/]: Saving and pausing game... +[11мая2026 13:11:29.084] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:29.085] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:11:29.153] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:29.153] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:11:29.153] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:29.153] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:11:47.373] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:11:47.377] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:11:51.379] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Disposing render data... +[11мая2026 13:11:51.384] [DH-RenderCacheClearConfigTimer/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Render data cleared, please wait a moment for everything to reload... +[11мая2026 13:11:59.972] [Render thread/ERROR] [net.minecraft.client.Minecraft/FATAL]: Reported exception thrown! +net.minecraft.ReportedException: Narrating screen + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1137) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.runTick(Minecraft.java:1201) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.Minecraft.run(Minecraft.java:813) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.main.Main.main(Main.java:230) ~[neoforge-21.1.219.jar%23189!/:?] + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:136) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:124) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.NeoForgeClientDevLaunchHandler.runService(NeoForgeClientDevLaunchHandler.java:23) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/fml_loader@4.0.42/net.neoforged.fml.loading.targets.CommonLaunchHandler.lambda$launchService$4(CommonLaunchHandler.java:118) ~[loader-4.0.42.jar%23146!/:4.0] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.run(Launcher.java:103) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.Launcher.main(Launcher.java:74) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) [modlauncher-11.0.5.jar%23128!/:?] + at MC-BOOTSTRAP/cpw.mods.modlauncher@11.0.5/cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) [modlauncher-11.0.5.jar%23128!/:?] + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.run(BootstrapLauncher.java:210) [bootstraplauncher-2.0.2.jar:?] + at cpw.mods.bootstraplauncher@2.0.2/cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:69) [bootstraplauncher-2.0.2.jar:?] + at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) ~[?:?] + at java.base/java.lang.reflect.Method.invoke(Method.java:580) ~[?:?] + at net.neoforged.devlaunch.Main.main(Main.java:57) [DevLaunch-1.0.2.jar:?] +Caused by: java.lang.IllegalArgumentException: TranslatableContents' arguments must be either a Component, Number, Boolean, or a String. Was given null for gui.narrate.editBox + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.contents.TranslatableContents.(TranslatableContents.java:90) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.network.chat.Component.translatable(Component.java:160) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.createNarrationMessage(EditBox.java:106) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.EditBox.updateWidgetNarration(EditBox.java:636) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList$Entry.updateNarration(ContainerObjectSelectionList.java:251) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.ContainerObjectSelectionList.updateWidgetNarration(ContainerObjectSelectionList.java:113) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.components.AbstractWidget.updateNarration(AbstractWidget.java:348) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarratedWidget(Screen.java:597) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.updateNarrationState(Screen.java:573) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.narration.ScreenNarrationCollector.update(ScreenNarrationCollector.java:19) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.runNarration(Screen.java:556) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.gui.screens.Screen.handleDelayedNarration(Screen.java:543) ~[neoforge-21.1.219.jar%23189!/:?] + at TRANSFORMER/minecraft@1.21.1/net.minecraft.client.renderer.GameRenderer.render(GameRenderer.java:1131) ~[neoforge-21.1.219.jar%23189!/:?] + ... 21 more +[11мая2026 13:12:00.430] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level the_end +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@6a023157]. +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@6a023157]. +[11мая2026 13:12:00.632] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\DIM1\data\DistantHorizons.sqlite] +[11мая2026 13:12:00.632] [DH-Parent Update Queue [the_end] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [the_end] Thread[0]] terminated. +[11мая2026 13:12:00.640] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@the_end} +[11мая2026 13:12:00.640] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level the_nether +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@18b5e753]. +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@18b5e753]. +[11мая2026 13:12:00.842] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\DIM-1\data\DistantHorizons.sqlite] +[11мая2026 13:12:00.842] [DH-Parent Update Queue [the_nether] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [the_nether] Thread[0]] terminated. +[11мая2026 13:12:00.850] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@the_nether} +[11мая2026 13:12:00.850] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Unloading level overworld +[11мая2026 13:12:00.851] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.ClientLevelModule$ClientRenderState/]: Shutting down ClientRenderState +[11мая2026 13:12:00.851] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Shutting down LodRenderer... +[11мая2026 13:12:00.851] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Queuing Renderer Cleanup for main render thread +[11мая2026 13:12:00.865] [Server thread/INFO] [com.seibel.distanthorizons.core.render.renderer.LodRenderer/]: Finished shutting down LodRenderer +[11мая2026 13:12:00.865] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Shutting down LodQuadTree... +[11мая2026 13:12:00.870] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.render.LodQuadTree/]: Finished shutting down LodQuadTree +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.AbstractDataSourceHandler/]: Closing [GeneratedFullDataSourceProvider] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV1/]: Closing [FullDataSourceProviderV1] for level: [com.seibel.distanthorizons.core.level.DhClientServerLevel@45634608]. +[11мая2026 13:12:01.072] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing database connection: [jdbc:sqlite:.\saves\New World (1)\data\DistantHorizons.sqlite] +[11мая2026 13:12:01.072] [DH-Parent Update Queue [overworld] Thread[0]/INFO] [DistantHorizons-com.seibel.distanthorizons.core.file.fullDatafile.FullDataSourceProviderV2/]: Update thread [DH-Parent Update Queue [overworld] Thread[0]] terminated. +[11мая2026 13:12:01.091] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.level.DhClientServerLevel/]: Closed DhClientServerLevel for Wrapped{ServerLevel[New World]@overworld} +[11мая2026 13:12:01.091] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.world.AbstractDhWorld/]: Closed DhWorld of type Client_Server +[11мая2026 13:12:01.092] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Closing all [0] database connections... +[11мая2026 13:12:01.413] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Stopping server +[11мая2026 13:12:01.414] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving players +[11мая2026 13:12:01.424] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving worlds +[11мая2026 13:12:01.426] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Client UDP channel inactive +[11мая2026 13:12:01.426] [Netty Local Client IO #1/INFO] [dev.ryanhcode.sable.Sable/]: Closed UDP channel! +[11мая2026 13:12:01.468] [DH-LOD Update Propagator Thread[0]/WARN] [DistantHorizons-com.seibel.distanthorizons.core.sql.repo.AbstractDhRepo/]: Attempted to insert [FullDataSourceV2DTO] with primary key [7*5,0] on closed repo [jdbc:sqlite:.\saves\New World (1)\data\DistantHorizons.sqlite]. +[11мая2026 13:12:02.491] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:12:02.491] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:overworld +[11мая2026 13:12:02.571] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:12:02.571] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_end +[11мая2026 13:12:02.579] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: Saving chunks for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:12:02.579] [Server thread/INFO] [dev.ryanhcode.sable.Sable/]: Saving sub-levels for level 'ServerLevel[New World]'/minecraft:the_nether +[11мая2026 13:12:02.593] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (New World (1)): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (DIM1): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage (DIM-1): All chunks are saved +[11мая2026 13:12:02.594] [Server thread/INFO] [net.minecraft.server.MinecraftServer/]: ThreadedAnvilChunkStorage: All dimensions are saved +[11мая2026 13:12:02.598] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.717] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.717] [Server thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.728] [Render thread/INFO] [DistantHorizons-com.seibel.distanthorizons.neoforge.NeoforgeClientProxy/]: level unload +[11мая2026 13:12:02.728] [Render thread/INFO] [com.seibel.distanthorizons.core.api.internal.ClientApi/]: Unloading client level [Wrapped{ClientLevel@overworld}]-[overworld]. +[11мая2026 13:12:02.730] [Render thread/INFO] [ChunkBuilder/]: Stopping worker threads +[11мая2026 13:12:03.097] [Render thread/FATAL] [net.neoforged.neoforge.common.NeoForgeMod/]: Preparing crash report with UUID 4f400ccb-b5f8-4e8b-b359-e2d5e2dc83f1 +[11мая2026 13:12:03.116] [Render thread/FATAL] [net.neoforged.neoforge.common.NeoForgeMod/]: Preparing crash report with UUID 6bb8b6ba-c45c-426b-be36-121f564cad9f diff --git a/neoforge/run/options.txt b/neoforge/run/options.txt new file mode 100644 index 0000000..6fed148 --- /dev/null +++ b/neoforge/run/options.txt @@ -0,0 +1,150 @@ +version:3955 +ao:true +biomeBlendRadius:2 +enableVsync:true +entityDistanceScaling:1.0 +entityShadows:true +forceUnicodeFont:false +japaneseGlyphVariants:false +fov:0.0 +fovEffectScale:1.0 +darknessEffectScale:1.0 +glintSpeed:0.5 +glintStrength:0.75 +prioritizeChunkUpdates:0 +fullscreen:true +gamma:0.5 +graphicsMode:1 +guiScale:3 +maxFps:120 +mipmapLevels:4 +narrator:0 +particles:0 +reducedDebugInfo:false +renderClouds:"true" +renderDistance:5 +simulationDistance:5 +screenEffectScale:1.0 +soundDevice:"" +autoJump:false +operatorItemsTab:false +autoSuggestions:true +chatColors:true +chatLinks:true +chatLinksPrompt:true +discrete_mouse_scroll:false +invertYMouse:false +realmsNotifications:true +showSubtitles:false +directionalAudio:false +touchscreen:false +bobView:true +toggleCrouch:false +toggleSprint:false +darkMojangStudiosBackground:false +hideLightningFlashes:false +hideSplashTexts:false +mouseSensitivity:0.20514862430396327 +damageTiltStrength:1.0 +highContrast:false +narratorHotkey:true +resourcePacks:[] +incompatibleResourcePacks:[] +lastServer: +lang:en_us +chatVisibility:0 +chatOpacity:1.0 +chatLineSpacing:0.0 +textBackgroundOpacity:0.5 +backgroundForChatOnly:true +hideServerAddress:false +advancedItemTooltips:false +pauseOnLostFocus:true +overrideWidth:0 +overrideHeight:0 +chatHeightFocused:1.0 +chatDelay:0.0 +chatHeightUnfocused:0.4375 +chatScale:1.0 +chatWidth:1.0 +notificationDisplayTime:1.0 +useNativeTransport:true +mainHand:"right" +attackIndicator:1 +tutorialStep:none +mouseWheelSensitivity:1.0 +rawMouseInput:true +glDebugVerbosity:1 +skipMultiplayerWarning:false +hideMatchedNames:true +joinedFirstServer:false +hideBundleTutorial:false +syncChunkWrites:true +showAutosaveIndicator:true +allowServerListing:true +onlyShowSecureChat:false +panoramaScrollSpeed:1.0 +telemetryOptInExtra:false +onboardAccessibility:false +menuBackgroundBlurriness:5 +key_key.attack:key.mouse.left +key_key.use:key.mouse.right +key_key.forward:key.keyboard.w +key_key.left:key.keyboard.a +key_key.back:key.keyboard.s +key_key.right:key.keyboard.d +key_key.jump:key.keyboard.space +key_key.sneak:key.keyboard.left.shift +key_key.sprint:key.keyboard.left.control +key_key.drop:key.keyboard.q +key_key.inventory:key.keyboard.e +key_key.chat:key.keyboard.t +key_key.playerlist:key.keyboard.tab +key_key.pickItem:key.mouse.middle +key_key.command:key.keyboard.slash +key_key.socialInteractions:key.keyboard.p +key_key.screenshot:key.keyboard.f2 +key_key.togglePerspective:key.keyboard.f5 +key_key.smoothCamera:key.keyboard.unknown +key_key.fullscreen:key.keyboard.f11 +key_key.spectatorOutlines:key.keyboard.unknown +key_key.swapOffhand:key.keyboard.f +key_key.saveToolbarActivator:key.keyboard.c +key_key.loadToolbarActivator:key.keyboard.x +key_key.advancements:key.keyboard.l +key_key.hotbar.1:key.keyboard.1 +key_key.hotbar.2:key.keyboard.2 +key_key.hotbar.3:key.keyboard.3 +key_key.hotbar.4:key.keyboard.4 +key_key.hotbar.5:key.keyboard.5 +key_key.hotbar.6:key.keyboard.6 +key_key.hotbar.7:key.keyboard.7 +key_key.hotbar.8:key.keyboard.8 +key_key.hotbar.9:key.keyboard.9 +key_simulated.keyinfo.rotate_mode:key.keyboard.tab +key_simulated.keyinfo.scroll_up:key.keyboard.unknown +key_simulated.keyinfo.scroll_down:key.keyboard.unknown +key_key.ponder.ponder:key.keyboard.w +key_create.keyinfo.toolmenu:key.keyboard.left.alt +key_create.keyinfo.toolbelt:key.keyboard.left.alt +key_create.keyinfo.rotate_menu:key.keyboard.unknown +key_create.keyinfo.shift_modifier:key.keyboard.left.shift +key_create.keyinfo.ctrl_modifier:key.keyboard.left.control +key_create.keyinfo.alt_modifier:key.keyboard.left.alt +soundCategory_master:1.0 +soundCategory_music:0.0 +soundCategory_record:1.0 +soundCategory_weather:1.0 +soundCategory_block:1.0 +soundCategory_hostile:1.0 +soundCategory_neutral:1.0 +soundCategory_player:1.0 +soundCategory_ambient:1.0 +soundCategory_voice:1.0 +modelPart_cape:true +modelPart_jacket:true +modelPart_left_sleeve:true +modelPart_right_sleeve:true +modelPart_left_pants_leg:true +modelPart_right_pants_leg:true +modelPart_hat:true diff --git a/neoforge/run/ponders_watched.json b/neoforge/run/ponders_watched.json new file mode 100644 index 0000000..0637a08 --- /dev/null +++ b/neoforge/run/ponders_watched.json @@ -0,0 +1 @@ +[] \ No newline at end of file diff --git a/neoforge/run/saves/New World (1)/DIM-1/data/DistantHorizons.sqlite b/neoforge/run/saves/New World (1)/DIM-1/data/DistantHorizons.sqlite new file mode 100644 index 0000000..f1be49f Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM-1/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World (1)/DIM-1/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World (1)/DIM-1/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM-1/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World (1)/DIM-1/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World (1)/DIM-1/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM-1/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World (1)/DIM-1/data/raids.dat b/neoforge/run/saves/New World (1)/DIM-1/data/raids.dat new file mode 100644 index 0000000..b61c58c Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM-1/data/raids.dat differ diff --git a/neoforge/run/saves/New World (1)/DIM1/data/DistantHorizons.sqlite b/neoforge/run/saves/New World (1)/DIM1/data/DistantHorizons.sqlite new file mode 100644 index 0000000..a4f178a Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM1/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World (1)/DIM1/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World (1)/DIM1/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM1/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World (1)/DIM1/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World (1)/DIM1/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM1/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World (1)/DIM1/data/raids_end.dat b/neoforge/run/saves/New World (1)/DIM1/data/raids_end.dat new file mode 100644 index 0000000..b61c58c Binary files /dev/null and b/neoforge/run/saves/New World (1)/DIM1/data/raids_end.dat differ diff --git a/neoforge/run/saves/New World (1)/advancements/380df991-f603-344c-a090-369bad2a924a.json b/neoforge/run/saves/New World (1)/advancements/380df991-f603-344c-a090-369bad2a924a.json new file mode 100644 index 0000000..9b1de05 --- /dev/null +++ b/neoforge/run/saves/New World (1)/advancements/380df991-f603-344c-a090-369bad2a924a.json @@ -0,0 +1,51 @@ +{ + "create:root": { + "criteria": { + "0": "2026-05-11 13:05:46 +0300" + }, + "done": true + }, + "minecraft:recipes/decorations/crafting_table": { + "criteria": { + "unlock_right_away": "2026-05-11 13:05:39 +0300" + }, + "done": true + }, + "simulated:root": { + "criteria": { + "0": "2026-05-11 13:05:46 +0300" + }, + "done": true + }, + "aeronautics:root": { + "criteria": { + "0": "2026-05-11 13:05:46 +0300" + }, + "done": true + }, + "simulated:applied_kinematics": { + "criteria": { + "0": "2026-05-11 13:05:46 +0300" + }, + "done": true + }, + "simulated:recipes/misc/contraption_diagram": { + "criteria": { + "has_ingredient": "2026-05-11 13:05:46 +0300" + }, + "done": true + }, + "minecraft:adventure/adventuring_time": { + "criteria": { + "minecraft:beach": "2026-05-11 13:06:27 +0300", + "minecraft:desert": "2026-05-11 13:06:34 +0300", + "minecraft:forest": "2026-05-11 13:05:39 +0300", + "minecraft:lukewarm_ocean": "2026-05-11 13:09:34 +0300", + "minecraft:savanna": "2026-05-11 13:06:15 +0300", + "minecraft:warm_ocean": "2026-05-11 13:06:36 +0300", + "minecraft:deep_lukewarm_ocean": "2026-05-11 13:09:42 +0300" + }, + "done": false + }, + "DataVersion": 3955 +} \ No newline at end of file diff --git a/neoforge/run/saves/New World (1)/data/DistantHorizons.sqlite b/neoforge/run/saves/New World (1)/data/DistantHorizons.sqlite new file mode 100644 index 0000000..c4b94cf Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World (1)/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World (1)/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World (1)/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World (1)/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World (1)/data/raids.dat b/neoforge/run/saves/New World (1)/data/raids.dat new file mode 100644 index 0000000..b61c58c Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/raids.dat differ diff --git a/neoforge/run/saves/New World (1)/data/random_sequences.dat b/neoforge/run/saves/New World (1)/data/random_sequences.dat new file mode 100644 index 0000000..e5b5c56 Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/random_sequences.dat differ diff --git a/neoforge/run/saves/New World (1)/data/sable_sub_level_occupancy.dat b/neoforge/run/saves/New World (1)/data/sable_sub_level_occupancy.dat new file mode 100644 index 0000000..6c1b209 Binary files /dev/null and b/neoforge/run/saves/New World (1)/data/sable_sub_level_occupancy.dat differ diff --git a/neoforge/run/saves/New World (1)/entities/r.-1.-1.mca b/neoforge/run/saves/New World (1)/entities/r.-1.-1.mca new file mode 100644 index 0000000..631e316 Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.-1.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.-1.0.mca b/neoforge/run/saves/New World (1)/entities/r.-1.0.mca new file mode 100644 index 0000000..e6fc513 Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.-1.0.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.0.-1.mca b/neoforge/run/saves/New World (1)/entities/r.0.-1.mca new file mode 100644 index 0000000..41c9ba0 Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.0.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.0.0.mca b/neoforge/run/saves/New World (1)/entities/r.0.0.mca new file mode 100644 index 0000000..7894a4d Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.0.0.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.1.-1.mca b/neoforge/run/saves/New World (1)/entities/r.1.-1.mca new file mode 100644 index 0000000..1b9df6d Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.1.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.1.0.mca b/neoforge/run/saves/New World (1)/entities/r.1.0.mca new file mode 100644 index 0000000..053ef95 Binary files /dev/null and b/neoforge/run/saves/New World (1)/entities/r.1.0.mca differ diff --git a/neoforge/run/saves/New World (1)/entities/r.40002.40002.mca b/neoforge/run/saves/New World (1)/entities/r.40002.40002.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World (1)/icon.png b/neoforge/run/saves/New World (1)/icon.png new file mode 100644 index 0000000..5b02b93 Binary files /dev/null and b/neoforge/run/saves/New World (1)/icon.png differ diff --git a/neoforge/run/saves/New World (1)/level.dat b/neoforge/run/saves/New World (1)/level.dat new file mode 100644 index 0000000..7a083f5 Binary files /dev/null and b/neoforge/run/saves/New World (1)/level.dat differ diff --git a/neoforge/run/saves/New World (1)/level.dat_old b/neoforge/run/saves/New World (1)/level.dat_old new file mode 100644 index 0000000..a2872c7 Binary files /dev/null and b/neoforge/run/saves/New World (1)/level.dat_old differ diff --git a/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat b/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat new file mode 100644 index 0000000..0483c59 Binary files /dev/null and b/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat differ diff --git a/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old b/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old new file mode 100644 index 0000000..0483c59 Binary files /dev/null and b/neoforge/run/saves/New World (1)/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old differ diff --git a/neoforge/run/saves/New World (1)/poi/r.-1.-1.mca b/neoforge/run/saves/New World (1)/poi/r.-1.-1.mca new file mode 100644 index 0000000..8c48148 Binary files /dev/null and b/neoforge/run/saves/New World (1)/poi/r.-1.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/poi/r.-1.0.mca b/neoforge/run/saves/New World (1)/poi/r.-1.0.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World (1)/poi/r.0.-1.mca b/neoforge/run/saves/New World (1)/poi/r.0.-1.mca new file mode 100644 index 0000000..5cd5897 Binary files /dev/null and b/neoforge/run/saves/New World (1)/poi/r.0.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/poi/r.0.0.mca b/neoforge/run/saves/New World (1)/poi/r.0.0.mca new file mode 100644 index 0000000..4c3c562 Binary files /dev/null and b/neoforge/run/saves/New World (1)/poi/r.0.0.mca differ diff --git a/neoforge/run/saves/New World (1)/poi/r.1.-1.mca b/neoforge/run/saves/New World (1)/poi/r.1.-1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World (1)/poi/r.1.0.mca b/neoforge/run/saves/New World (1)/poi/r.1.0.mca new file mode 100644 index 0000000..66534ef Binary files /dev/null and b/neoforge/run/saves/New World (1)/poi/r.1.0.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.-1.-1.mca b/neoforge/run/saves/New World (1)/region/r.-1.-1.mca new file mode 100644 index 0000000..0fe878a Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.-1.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.-1.-2.mca b/neoforge/run/saves/New World (1)/region/r.-1.-2.mca new file mode 100644 index 0000000..95433ee Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.-1.-2.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.-1.0.mca b/neoforge/run/saves/New World (1)/region/r.-1.0.mca new file mode 100644 index 0000000..15c3c4c Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.-1.0.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.0.-1.mca b/neoforge/run/saves/New World (1)/region/r.0.-1.mca new file mode 100644 index 0000000..fe67f2c Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.0.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.0.-2.mca b/neoforge/run/saves/New World (1)/region/r.0.-2.mca new file mode 100644 index 0000000..2b91cca Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.0.-2.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.0.0.mca b/neoforge/run/saves/New World (1)/region/r.0.0.mca new file mode 100644 index 0000000..0a19a2e Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.0.0.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.1.-1.mca b/neoforge/run/saves/New World (1)/region/r.1.-1.mca new file mode 100644 index 0000000..36818d5 Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.1.-1.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.1.-2.mca b/neoforge/run/saves/New World (1)/region/r.1.-2.mca new file mode 100644 index 0000000..e701365 Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.1.-2.mca differ diff --git a/neoforge/run/saves/New World (1)/region/r.1.0.mca b/neoforge/run/saves/New World (1)/region/r.1.0.mca new file mode 100644 index 0000000..f74ae9e Binary files /dev/null and b/neoforge/run/saves/New World (1)/region/r.1.0.mca differ diff --git a/neoforge/run/saves/New World (1)/serverconfig/readme.txt b/neoforge/run/saves/New World (1)/serverconfig/readme.txt new file mode 100644 index 0000000..c782a9f --- /dev/null +++ b/neoforge/run/saves/New World (1)/serverconfig/readme.txt @@ -0,0 +1,3 @@ +Any server configs put in this folder will override the corresponding server config from /config/. +If the config being transferred is in a subfolder of the base config folder make sure to include that folder here in the path to the file you are overwriting. +For example if you are overwriting a config with the path /config/ExampleMod/config-server.toml, you would need to put it in serverconfig/ExampleMod/config-server.toml diff --git a/neoforge/run/saves/New World (1)/session.lock b/neoforge/run/saves/New World (1)/session.lock new file mode 100644 index 0000000..0d7e5f8 --- /dev/null +++ b/neoforge/run/saves/New World (1)/session.lock @@ -0,0 +1 @@ +☃ \ No newline at end of file diff --git a/neoforge/run/saves/New World (1)/stats/380df991-f603-344c-a090-369bad2a924a.json b/neoforge/run/saves/New World (1)/stats/380df991-f603-344c-a090-369bad2a924a.json new file mode 100644 index 0000000..b107c9f --- /dev/null +++ b/neoforge/run/saves/New World (1)/stats/380df991-f603-344c-a090-369bad2a924a.json @@ -0,0 +1 @@ +{"stats":{"minecraft:custom":{"minecraft:time_since_rest":2941,"minecraft:sprint_one_cm":98,"minecraft:play_time":2941,"minecraft:time_since_death":2941,"minecraft:walk_one_cm":218,"minecraft:sneak_time":81,"minecraft:total_world_time":7523,"minecraft:fly_one_cm":262588},"minecraft:used":{"simulated:physics_assembler":1,"minecraft:grass_block":176}},"DataVersion":3955} \ No newline at end of file diff --git a/neoforge/run/saves/New World (1)/sublevels/r.0.0.0.slvls b/neoforge/run/saves/New World (1)/sublevels/r.0.0.0.slvls new file mode 100644 index 0000000..08e7df1 Binary files /dev/null and b/neoforge/run/saves/New World (1)/sublevels/r.0.0.0.slvls differ diff --git a/neoforge/run/saves/New World (1)/sublevels/r.0.0.slvlr b/neoforge/run/saves/New World (1)/sublevels/r.0.0.slvlr new file mode 100644 index 0000000..7088f43 Binary files /dev/null and b/neoforge/run/saves/New World (1)/sublevels/r.0.0.slvlr differ diff --git a/neoforge/run/saves/New World (1)/sublevels/r.1.0.0.slvls b/neoforge/run/saves/New World (1)/sublevels/r.1.0.0.slvls new file mode 100644 index 0000000..a77e2aa Binary files /dev/null and b/neoforge/run/saves/New World (1)/sublevels/r.1.0.0.slvls differ diff --git a/neoforge/run/saves/New World (1)/sublevels/r.1.0.slvlr b/neoforge/run/saves/New World (1)/sublevels/r.1.0.slvlr new file mode 100644 index 0000000..08e480c Binary files /dev/null and b/neoforge/run/saves/New World (1)/sublevels/r.1.0.slvlr differ diff --git a/neoforge/run/saves/New World/DIM-1/data/DistantHorizons.sqlite b/neoforge/run/saves/New World/DIM-1/data/DistantHorizons.sqlite new file mode 100644 index 0000000..8a4b109 Binary files /dev/null and b/neoforge/run/saves/New World/DIM-1/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World/DIM-1/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World/DIM-1/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World/DIM-1/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World/DIM-1/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World/DIM-1/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World/DIM-1/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World/DIM-1/data/raids.dat b/neoforge/run/saves/New World/DIM-1/data/raids.dat new file mode 100644 index 0000000..ec253aa Binary files /dev/null and b/neoforge/run/saves/New World/DIM-1/data/raids.dat differ diff --git a/neoforge/run/saves/New World/DIM1/data/DistantHorizons.sqlite b/neoforge/run/saves/New World/DIM1/data/DistantHorizons.sqlite new file mode 100644 index 0000000..ca2e651 Binary files /dev/null and b/neoforge/run/saves/New World/DIM1/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World/DIM1/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World/DIM1/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World/DIM1/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World/DIM1/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World/DIM1/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World/DIM1/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World/DIM1/data/raids_end.dat b/neoforge/run/saves/New World/DIM1/data/raids_end.dat new file mode 100644 index 0000000..ec253aa Binary files /dev/null and b/neoforge/run/saves/New World/DIM1/data/raids_end.dat differ diff --git a/neoforge/run/saves/New World/advancements/380df991-f603-344c-a090-369bad2a924a.json b/neoforge/run/saves/New World/advancements/380df991-f603-344c-a090-369bad2a924a.json new file mode 100644 index 0000000..b6d2a45 --- /dev/null +++ b/neoforge/run/saves/New World/advancements/380df991-f603-344c-a090-369bad2a924a.json @@ -0,0 +1,282 @@ +{ + "minecraft:recipes/decorations/crafting_table": { + "criteria": { + "unlock_right_away": "2026-05-11 12:05:07 +0300" + }, + "done": true + }, + "minecraft:adventure/adventuring_time": { + "criteria": { + "minecraft:lukewarm_ocean": "2026-05-11 12:05:55 +0300", + "minecraft:stony_shore": "2026-05-11 12:05:08 +0300", + "minecraft:plains": "2026-05-11 12:06:19 +0300", + "minecraft:deep_lukewarm_ocean": "2026-05-11 12:06:47 +0300" + }, + "done": false + }, + "create:recipes/misc/crafting/kinetics/mechanical_saw": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/torsion_spring": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/logistics/redstone_link": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/logistics/desk_bell": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_press": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_roller": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/physics_assembler": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:root": { + "criteria": { + "0": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/andesite_door": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/directional_gearshift": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/portable_storage_interface": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_bearing": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:root": { + "criteria": { + "0": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/velocity_sensor": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/laser_pointer": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/gantry_carriage": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/weighted_ejector": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "offroad:recipes/misc/wheel_mount": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/laser_sensor": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/millstone": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "aeronautics:root": { + "criteria": { + "0": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_plough": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/chain_conveyor": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_harvester": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/encased_chain_drive_from_zinc": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/clutch": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/depot": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/encased_chain_drive": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_drill": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/altitude_sensor": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/mechanical_piston": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "create:recipes/misc/crafting/kinetics/gearshift": { + "criteria": { + "has_item": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:recipes/misc/swivel_bearing": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:17 +0300" + }, + "done": true + }, + "simulated:applied_kinematics": { + "criteria": { + "0": "2026-05-11 12:05:21 +0300" + }, + "done": true + }, + "simulated:recipes/misc/contraption_diagram": { + "criteria": { + "has_ingredient": "2026-05-11 12:05:21 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/cherry_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/bamboo_raft": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/spruce_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/birch_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/oak_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/mangrove_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/acacia_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/jungle_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "minecraft:recipes/transportation/dark_oak_boat": { + "criteria": { + "in_water": "2026-05-11 12:05:56 +0300" + }, + "done": true + }, + "DataVersion": 3955 +} \ No newline at end of file diff --git a/neoforge/run/saves/New World/data/DistantHorizons.sqlite b/neoforge/run/saves/New World/data/DistantHorizons.sqlite new file mode 100644 index 0000000..6b431b9 Binary files /dev/null and b/neoforge/run/saves/New World/data/DistantHorizons.sqlite differ diff --git a/neoforge/run/saves/New World/data/aeronautics_unloaded_balloons.dat b/neoforge/run/saves/New World/data/aeronautics_unloaded_balloons.dat new file mode 100644 index 0000000..f27de37 Binary files /dev/null and b/neoforge/run/saves/New World/data/aeronautics_unloaded_balloons.dat differ diff --git a/neoforge/run/saves/New World/data/neoforge_data_attachments.dat b/neoforge/run/saves/New World/data/neoforge_data_attachments.dat new file mode 100644 index 0000000..3a9206e Binary files /dev/null and b/neoforge/run/saves/New World/data/neoforge_data_attachments.dat differ diff --git a/neoforge/run/saves/New World/data/raids.dat b/neoforge/run/saves/New World/data/raids.dat new file mode 100644 index 0000000..ec253aa Binary files /dev/null and b/neoforge/run/saves/New World/data/raids.dat differ diff --git a/neoforge/run/saves/New World/data/random_sequences.dat b/neoforge/run/saves/New World/data/random_sequences.dat new file mode 100644 index 0000000..af5cbe5 Binary files /dev/null and b/neoforge/run/saves/New World/data/random_sequences.dat differ diff --git a/neoforge/run/saves/New World/data/sable_sub_level_occupancy.dat b/neoforge/run/saves/New World/data/sable_sub_level_occupancy.dat new file mode 100644 index 0000000..1caed4e Binary files /dev/null and b/neoforge/run/saves/New World/data/sable_sub_level_occupancy.dat differ diff --git a/neoforge/run/saves/New World/entities/r.-1.-1.mca b/neoforge/run/saves/New World/entities/r.-1.-1.mca new file mode 100644 index 0000000..c7b6da8 Binary files /dev/null and b/neoforge/run/saves/New World/entities/r.-1.-1.mca differ diff --git a/neoforge/run/saves/New World/entities/r.-1.0.mca b/neoforge/run/saves/New World/entities/r.-1.0.mca new file mode 100644 index 0000000..f8e593e Binary files /dev/null and b/neoforge/run/saves/New World/entities/r.-1.0.mca differ diff --git a/neoforge/run/saves/New World/entities/r.-1.1.mca b/neoforge/run/saves/New World/entities/r.-1.1.mca new file mode 100644 index 0000000..7319503 Binary files /dev/null and b/neoforge/run/saves/New World/entities/r.-1.1.mca differ diff --git a/neoforge/run/saves/New World/entities/r.0.-1.mca b/neoforge/run/saves/New World/entities/r.0.-1.mca new file mode 100644 index 0000000..98e018a Binary files /dev/null and b/neoforge/run/saves/New World/entities/r.0.-1.mca differ diff --git a/neoforge/run/saves/New World/entities/r.0.0.mca b/neoforge/run/saves/New World/entities/r.0.0.mca new file mode 100644 index 0000000..763bc10 Binary files /dev/null and b/neoforge/run/saves/New World/entities/r.0.0.mca differ diff --git a/neoforge/run/saves/New World/entities/r.0.1.mca b/neoforge/run/saves/New World/entities/r.0.1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/entities/r.40002.40002.mca b/neoforge/run/saves/New World/entities/r.40002.40002.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/entities/r.40002.40005.mca b/neoforge/run/saves/New World/entities/r.40002.40005.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/entities/r.40002.40006.mca b/neoforge/run/saves/New World/entities/r.40002.40006.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/icon.png b/neoforge/run/saves/New World/icon.png new file mode 100644 index 0000000..e735123 Binary files /dev/null and b/neoforge/run/saves/New World/icon.png differ diff --git a/neoforge/run/saves/New World/level.dat b/neoforge/run/saves/New World/level.dat new file mode 100644 index 0000000..20af09d Binary files /dev/null and b/neoforge/run/saves/New World/level.dat differ diff --git a/neoforge/run/saves/New World/level.dat_old b/neoforge/run/saves/New World/level.dat_old new file mode 100644 index 0000000..f7bf9ad Binary files /dev/null and b/neoforge/run/saves/New World/level.dat_old differ diff --git a/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat b/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat new file mode 100644 index 0000000..b8072f4 Binary files /dev/null and b/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat differ diff --git a/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old b/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old new file mode 100644 index 0000000..0282e5b Binary files /dev/null and b/neoforge/run/saves/New World/playerdata/380df991-f603-344c-a090-369bad2a924a.dat_old differ diff --git a/neoforge/run/saves/New World/poi/r.-1.-1.mca b/neoforge/run/saves/New World/poi/r.-1.-1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.-1.0.mca b/neoforge/run/saves/New World/poi/r.-1.0.mca new file mode 100644 index 0000000..d18105b Binary files /dev/null and b/neoforge/run/saves/New World/poi/r.-1.0.mca differ diff --git a/neoforge/run/saves/New World/poi/r.-1.1.mca b/neoforge/run/saves/New World/poi/r.-1.1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.-2.-1.mca b/neoforge/run/saves/New World/poi/r.-2.-1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.-2.0.mca b/neoforge/run/saves/New World/poi/r.-2.0.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.-2.1.mca b/neoforge/run/saves/New World/poi/r.-2.1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.0.-1.mca b/neoforge/run/saves/New World/poi/r.0.-1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/poi/r.0.0.mca b/neoforge/run/saves/New World/poi/r.0.0.mca new file mode 100644 index 0000000..df0c938 Binary files /dev/null and b/neoforge/run/saves/New World/poi/r.0.0.mca differ diff --git a/neoforge/run/saves/New World/poi/r.0.1.mca b/neoforge/run/saves/New World/poi/r.0.1.mca new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/region/r.-1.-1.mca b/neoforge/run/saves/New World/region/r.-1.-1.mca new file mode 100644 index 0000000..1321a3f Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-1.-1.mca differ diff --git a/neoforge/run/saves/New World/region/r.-1.0.mca b/neoforge/run/saves/New World/region/r.-1.0.mca new file mode 100644 index 0000000..c0bfb49 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-1.0.mca differ diff --git a/neoforge/run/saves/New World/region/r.-1.1.mca b/neoforge/run/saves/New World/region/r.-1.1.mca new file mode 100644 index 0000000..08068e3 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-1.1.mca differ diff --git a/neoforge/run/saves/New World/region/r.-2.-1.mca b/neoforge/run/saves/New World/region/r.-2.-1.mca new file mode 100644 index 0000000..384cb43 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-2.-1.mca differ diff --git a/neoforge/run/saves/New World/region/r.-2.0.mca b/neoforge/run/saves/New World/region/r.-2.0.mca new file mode 100644 index 0000000..d7b3ee8 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-2.0.mca differ diff --git a/neoforge/run/saves/New World/region/r.-2.1.mca b/neoforge/run/saves/New World/region/r.-2.1.mca new file mode 100644 index 0000000..7ea74da Binary files /dev/null and b/neoforge/run/saves/New World/region/r.-2.1.mca differ diff --git a/neoforge/run/saves/New World/region/r.0.-1.mca b/neoforge/run/saves/New World/region/r.0.-1.mca new file mode 100644 index 0000000..02f8065 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.0.-1.mca differ diff --git a/neoforge/run/saves/New World/region/r.0.0.mca b/neoforge/run/saves/New World/region/r.0.0.mca new file mode 100644 index 0000000..a5e4d94 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.0.0.mca differ diff --git a/neoforge/run/saves/New World/region/r.0.1.mca b/neoforge/run/saves/New World/region/r.0.1.mca new file mode 100644 index 0000000..158e8d7 Binary files /dev/null and b/neoforge/run/saves/New World/region/r.0.1.mca differ diff --git a/neoforge/run/saves/New World/serverconfig/readme.txt b/neoforge/run/saves/New World/serverconfig/readme.txt new file mode 100644 index 0000000..c782a9f --- /dev/null +++ b/neoforge/run/saves/New World/serverconfig/readme.txt @@ -0,0 +1,3 @@ +Any server configs put in this folder will override the corresponding server config from /config/. +If the config being transferred is in a subfolder of the base config folder make sure to include that folder here in the path to the file you are overwriting. +For example if you are overwriting a config with the path /config/ExampleMod/config-server.toml, you would need to put it in serverconfig/ExampleMod/config-server.toml diff --git a/neoforge/run/saves/New World/session.lock b/neoforge/run/saves/New World/session.lock new file mode 100644 index 0000000..0d7e5f8 --- /dev/null +++ b/neoforge/run/saves/New World/session.lock @@ -0,0 +1 @@ +☃ \ No newline at end of file diff --git a/neoforge/run/saves/New World/stats/380df991-f603-344c-a090-369bad2a924a.json b/neoforge/run/saves/New World/stats/380df991-f603-344c-a090-369bad2a924a.json new file mode 100644 index 0000000..e2b2376 --- /dev/null +++ b/neoforge/run/saves/New World/stats/380df991-f603-344c-a090-369bad2a924a.json @@ -0,0 +1 @@ +{"stats":{"minecraft:used":{"simulated:physics_assembler":2,"create:andesite_casing":224},"minecraft:custom":{"minecraft:jump":1,"minecraft:time_since_rest":5617,"minecraft:leave_game":3,"minecraft:play_time":5617,"minecraft:sprint_one_cm":98,"minecraft:time_since_death":5617,"minecraft:walk_on_water_one_cm":5625,"minecraft:sneak_time":214,"minecraft:total_world_time":8864,"minecraft:walk_under_water_one_cm":938,"minecraft:fly_one_cm":310098}},"DataVersion":3955} \ No newline at end of file diff --git a/neoforge/run/saves/New World/sublevels/r.-1.-1.slvlr b/neoforge/run/saves/New World/sublevels/r.-1.-1.slvlr new file mode 100644 index 0000000..08e7df1 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.-1.-1.slvlr differ diff --git a/neoforge/run/saves/New World/sublevels/r.-1.0.slvlr b/neoforge/run/saves/New World/sublevels/r.-1.0.slvlr new file mode 100644 index 0000000..08e7df1 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.-1.0.slvlr differ diff --git a/neoforge/run/saves/New World/sublevels/r.-1.1.slvlr b/neoforge/run/saves/New World/sublevels/r.-1.1.slvlr new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/saves/New World/sublevels/r.0.-1.0.slvls b/neoforge/run/saves/New World/sublevels/r.0.-1.0.slvls new file mode 100644 index 0000000..9e4bb67 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.0.-1.0.slvls differ diff --git a/neoforge/run/saves/New World/sublevels/r.0.-1.slvlr b/neoforge/run/saves/New World/sublevels/r.0.-1.slvlr new file mode 100644 index 0000000..6f8dcf4 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.0.-1.slvlr differ diff --git a/neoforge/run/saves/New World/sublevels/r.0.0.0.slvls b/neoforge/run/saves/New World/sublevels/r.0.0.0.slvls new file mode 100644 index 0000000..129e6e8 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.0.0.0.slvls differ diff --git a/neoforge/run/saves/New World/sublevels/r.0.0.slvlr b/neoforge/run/saves/New World/sublevels/r.0.0.slvlr new file mode 100644 index 0000000..79accb7 Binary files /dev/null and b/neoforge/run/saves/New World/sublevels/r.0.0.slvlr differ diff --git a/neoforge/run/saves/New World/sublevels/r.0.1.slvlr b/neoforge/run/saves/New World/sublevels/r.0.1.slvlr new file mode 100644 index 0000000..e69de29 diff --git a/neoforge/run/usercache.json b/neoforge/run/usercache.json new file mode 100644 index 0000000..649a9b1 --- /dev/null +++ b/neoforge/run/usercache.json @@ -0,0 +1 @@ +[{"name":"Dev","uuid":"380df991-f603-344c-a090-369bad2a924a","expiresOn":"2026-06-11 13:05:39 +0300"}] \ No newline at end of file diff --git a/neoforge/run/usernamecache.json b/neoforge/run/usernamecache.json new file mode 100644 index 0000000..ab4a85d --- /dev/null +++ b/neoforge/run/usernamecache.json @@ -0,0 +1,3 @@ +{ + "380df991-f603-344c-a090-369bad2a924a": "Dev" +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForge.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForge.java new file mode 100644 index 0000000..ed31b5e --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForge.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.neoforge; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableCommonEvents; +import dev.ryanhcode.sable.SableConfig; +import dev.ryanhcode.sable.command.SableCommand; +import dev.ryanhcode.sable.command.argument.SubLevelSelectorModifiers; +import dev.ryanhcode.sable.index.SableAttributes; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertiesDefinitionLoader; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import net.minecraft.core.registries.BuiltInRegistries; +import net.minecraft.world.entity.ai.attributes.Attribute; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.CrashReportCallables; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.config.ModConfig; +import net.neoforged.fml.event.lifecycle.FMLCommonSetupEvent; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.AddReloadListenerEvent; +import net.neoforged.neoforge.event.OnDatapackSyncEvent; +import net.neoforged.neoforge.event.RegisterCommandsEvent; +import net.neoforged.neoforge.registries.DeferredRegister; + +@Mod(Sable.MOD_ID) +public final class SableNeoForge { + public SableNeoForge(final ModContainer modContainer, final IEventBus modBus) { + Sable.init(); + + final IEventBus neoBus = NeoForge.EVENT_BUS; + neoBus.addListener(this::registerCommand); + neoBus.addListener(this::registerReloadListeners); + modBus.addListener(this::serverSetup); + neoBus.addListener(this::syncDataPack); + + SubLevelSelectorModifiers.registerModifiers(); + + final DeferredRegister attributes = DeferredRegister.create(BuiltInRegistries.ATTRIBUTE, Sable.MOD_ID); + SableAttributes.PUNCH_STRENGTH = attributes.register(SableAttributes.PUNCH_STRENGTH_NAME, () -> SableAttributes.PUNCH_STRENGTH_ATTRIBUTE); + SableAttributes.PUNCH_COOLDOWN = attributes.register(SableAttributes.PUNCH_COOLDOWN_NAME, () -> SableAttributes.PUNCH_COOLDOWN_ATTRIBUTE); + attributes.register(modBus); + + modContainer.registerConfig(ModConfig.Type.COMMON, SableConfig.SPEC); + + CrashReportCallables.registerHeader(Sable::getCrashHeader); + } + + public void registerReloadListeners(final AddReloadListenerEvent event) { + event.addListener(PhysicsBlockPropertiesDefinitionLoader.INSTANCE); + event.addListener(DimensionPhysicsData.ReloadListener.INSTANCE); + event.addListener(FloatingBlockMaterialDataHandler.ReloadListener.INSTANCE); + } + + private void serverSetup(final FMLCommonSetupEvent event) { + SableAttributes.register(); + } + + private void registerCommand(final RegisterCommandsEvent event) { + SableCommand.register(event.getDispatcher(), event.getBuildContext()); + } + + private void syncDataPack(final OnDatapackSyncEvent event) { + SableCommonEvents.syncDataPacket(packet -> event.getRelevantPlayers().forEach(player -> player.connection.send(packet))); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.java new file mode 100644 index 0000000..7a08f5d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/SableNeoForgeClient.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.neoforge; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.SableClient; +import dev.ryanhcode.sable.SableClientConfig; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import dev.ryanhcode.sable.physics.config.FloatingBlockMaterialDataHandler; +import dev.ryanhcode.sable.sublevel.render.dispatcher.SubLevelRenderDispatcher; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.ModContainer; +import net.neoforged.fml.common.Mod; +import net.neoforged.fml.config.ModConfig; +import net.neoforged.fml.event.config.ModConfigEvent; +import net.neoforged.neoforge.client.event.ClientPlayerNetworkEvent; +import net.neoforged.neoforge.client.event.RegisterClientReloadListenersEvent; +import net.neoforged.neoforge.common.NeoForge; + +@Mod(value = Sable.MOD_ID, dist = Dist.CLIENT) +public final class SableNeoForgeClient { + + public SableNeoForgeClient(final ModContainer modContainer, final IEventBus modBus) { + final IEventBus neoBus = NeoForge.EVENT_BUS; + + SableClient.init(); + + modContainer.registerConfig(ModConfig.Type.CLIENT, SableClientConfig.SPEC); + modBus.addListener(event -> SableClientConfig.onUpdate(false)); + modBus.addListener(event -> SableClientConfig.onUpdate(true)); + neoBus.addListener(event -> { + if (event.getPlayer() != null) { // LoggingOut may fire when logging in + FloatingBlockMaterialDataHandler.clearMaterials(); + } + }); + modBus.addListener(event -> event.registerReloadListener((arg, arg2, arg3, arg4, executor, executor2) -> SubLevelRenderDispatcher.get().reload(arg, arg2, arg3, arg4, executor, executor2))); + + if (FlywheelCompatNeoForge.FLYWHEEL_LOADED) { + Sable.LOGGER.warn("NOTE: Sable is loaded with Flywheel. Sable contains extensive shader overrides and a full light-storage replacement. Expect this to cause compatibility issues. If issues arise, please report them to the Sable issue tracker ({}) instead of the Flywheel issue tracker.", Sable.ISSUE_TRACKER_URL); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.java new file mode 100644 index 0000000..8257476 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/FlywheelCompatNeoForge.java @@ -0,0 +1,98 @@ +package dev.ryanhcode.sable.neoforge.compatibility.flywheel; + +import dev.engine_room.flywheel.lib.visualization.VisualizationHelper; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import foundry.veil.Veil; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.longs.Long2ObjectMaps; +import it.unimi.dsi.fastutil.longs.Long2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectIterator; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; + +import java.util.Objects; +import java.util.UUID; + +public class FlywheelCompatNeoForge { + public static boolean FLYWHEEL_LOADED = Veil.platform().isModLoaded("flywheel"); + + private static final Long2ObjectMap RENDER_POSES = Long2ObjectMaps.synchronize(new Long2ObjectOpenHashMap<>()); + + /** + * Tries to add a flywheel visual for a block-entity. + * Done for single block sub-level renderers, because we're not compiling their sections. + */ + public static void tryAddVisual(final BlockEntity blockEntity) { + VisualizationHelper.tryAddBlockEntity(blockEntity); + } + + public static void preVisualizationFrame(final Level level, final float partialTicks) { + final ClientSubLevelContainer container = (ClientSubLevelContainer) SubLevelContainer.getContainer(level); + + if (container == null) { + RENDER_POSES.clear(); + return; + } + + final ObjectIterator> iter = RENDER_POSES.long2ObjectEntrySet().iterator(); + + while (iter.hasNext()) { + final Long2ObjectMap.Entry entry = iter.next(); + final long pos = entry.getLongKey(); + final SubLevelFlwRenderState poseEntry = entry.getValue(); + + final int plotX = ChunkPos.getX(pos); + final int plotZ = ChunkPos.getZ(pos); + + final SubLevel subLevel = container.getSubLevel(plotX, plotZ); + + if (subLevel == null || !Objects.equals(subLevel.getUniqueId(), poseEntry.subLevelID)) { + iter.remove(); + continue; + } + + // TODO: some other form of removal when we don't have any more flywheel contraption visuals to worry about? + + updateEntry(container, (ClientSubLevel) subLevel, poseEntry, partialTicks); + } + } + + public static SubLevelFlwRenderState getInfo(final long plotCoord) { + return RENDER_POSES.get(plotCoord); + } + + private static void updateEntry(final ClientSubLevelContainer container, final ClientSubLevel clientSubLevel, final SubLevelFlwRenderState poseEntry, final float partialTicks) { + poseEntry.sceneID = container.getLightingSceneId(clientSubLevel); + poseEntry.subLevelID = clientSubLevel.getUniqueId(); + poseEntry.renderPose.set(clientSubLevel.renderPose(partialTicks)); + poseEntry.latestSkyLightScale = clientSubLevel.getLatestSkyLightScale(); + poseEntry.centerChunk = clientSubLevel.getPlot().getCenterChunk(); + } + + public static void createRenderInfo(final Level level, final SubLevel subLevel) { + final ClientSubLevelContainer container = (ClientSubLevelContainer) SubLevelContainer.getContainer(level); + if (container == null) return; + + final ChunkPos plotPos = subLevel.getPlot().plotPos; + final long plotCoord = ChunkPos.asLong(plotPos.x - container.getOrigin().x, plotPos.z - container.getOrigin().y); + + RENDER_POSES.computeIfAbsent(plotCoord, x -> { + final SubLevelFlwRenderState renderState = new SubLevelFlwRenderState(); + updateEntry(container, (ClientSubLevel) subLevel, renderState, 1.0f); + return renderState; + }); + } + + public static class SubLevelFlwRenderState { + public int sceneID; + public final Pose3d renderPose = new Pose3d(); + public UUID subLevelID; + public float latestSkyLightScale; + public ChunkPos centerChunk; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.java new file mode 100644 index 0000000..d3872ac --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelEmbeddingUniforms.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.neoforge.compatibility.flywheel; + +public class SableFlywheelEmbeddingUniforms { + public static final String SCENE_MATRIX = "_flw_lightingSceneMatrixUniform"; + public static final String SCENE = "_flw_lightingSceneUniform"; + public static final String SKY_LIGHT_SCALE = "_flw_lightingSkyLightScaleUniform"; +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.java new file mode 100644 index 0000000..ac4d164 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelLightStorage.java @@ -0,0 +1,462 @@ +package dev.ryanhcode.sable.neoforge.compatibility.flywheel; + +import dev.engine_room.flywheel.api.task.Plan; +import dev.engine_room.flywheel.api.visual.EffectVisual; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.api.visualization.VisualizationManager; +import dev.engine_room.flywheel.backend.BackendDebugFlags; +import dev.engine_room.flywheel.backend.engine.LightStorage; +import dev.engine_room.flywheel.backend.engine.indirect.StagingBuffer; +import dev.engine_room.flywheel.backend.gl.buffer.GlBuffer; +import dev.engine_room.flywheel.lib.instance.InstanceTypes; +import dev.engine_room.flywheel.lib.instance.TransformedInstance; +import dev.engine_room.flywheel.lib.task.SimplePlan; +import dev.engine_room.flywheel.lib.visual.SimpleDynamicVisual; +import dev.engine_room.flywheel.lib.visual.component.HitboxComponent; +import dev.engine_room.flywheel.lib.visual.util.InstanceRecycler; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel.LightStorageAccessor; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import it.unimi.dsi.fastutil.ints.Int2ObjectMap; +import it.unimi.dsi.fastutil.ints.Int2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.ints.IntArrayList; +import it.unimi.dsi.fastutil.longs.Long2IntMap; +import it.unimi.dsi.fastutil.longs.Long2IntOpenHashMap; +import it.unimi.dsi.fastutil.longs.LongOpenHashSet; +import it.unimi.dsi.fastutil.longs.LongSet; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LightTexture; +import net.minecraft.core.SectionPos; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.LevelAccessor; +import org.jetbrains.annotations.Nullable; +import org.lwjgl.system.MemoryUtil; + +import java.util.BitSet; + +public class SableFlywheelLightStorage extends LightStorage { + private static final int INVALID_SECTION = -1; + public static final int STATIC_SCENE_ID = 0; + + private final SableLightLut sableLut; + private final Int2ObjectMap scene2SectionArenaIndexMap; + + private final BitSet changed = new BitSet(); + private final LongSet updatedSections = new LongOpenHashSet(); + private boolean isDebugOn = false; + + @Nullable + private LongSet requestedSections; + + public SableFlywheelLightStorage(final LevelAccessor level) { + super(level); + this.sableLut = new SableLightLut(); + this.scene2SectionArenaIndexMap = new Int2ObjectOpenHashMap<>(); + } + + @Override + public EffectVisual visualize(final VisualizationContext ctx, final float partialTick) { + return new SableFlywheelLightStorage.DebugVisual(ctx, partialTick); + } + + @Override + public Plan createFramePlan() { + return SimplePlan.of(() -> { + if (BackendDebugFlags.LIGHT_STORAGE_VIEW != this.isDebugOn) { + final var visualizationManager = VisualizationManager.get(this.level()); + + // Really should be non-null, but just in case. + if (visualizationManager != null) { + if (BackendDebugFlags.LIGHT_STORAGE_VIEW) { + visualizationManager.effects() + .queueAdd(this); + } else { + visualizationManager.effects() + .queueRemove(this); + } + } + this.isDebugOn = BackendDebugFlags.LIGHT_STORAGE_VIEW; + } + + if (this.updatedSections.isEmpty() && this.requestedSections == null) { + return; + } + + this.updateLightSections(); + }); + } + + /** + * Set the set of requested sections. + *

When set, this will be processed in the next frame plan. It may not be set every frame. + * + * @param sections The set of sections requested by the impl. + */ + @Override + public void sections(final LongSet sections) { + this.requestedSections = sections; + } + + private void updateLightSections() { + this.removeUnusedSections(); + + final ActiveSableCompanion helper = Sable.HELPER; + final ClientLevel level = Minecraft.getInstance().level; + final ClientSubLevelContainer container = SubLevelContainer.getContainer(level); + + final Int2ObjectMap sectionsToCollect; + if (this.requestedSections == null) { + sectionsToCollect = new Int2ObjectOpenHashMap<>(); + } else { + sectionsToCollect = new Int2ObjectOpenHashMap<>(); + + for (final long section : this.requestedSections) { + final SectionPos sectionPos = SectionPos.of(section); + final SubLevel subLevel = helper.getContaining(level, sectionPos); + + int lightingSceneId = 0; + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final int subLevelLightingSceneId = container.getLightingSceneId(clientSubLevel); + + if (subLevelLightingSceneId != -1) { + lightingSceneId = subLevelLightingSceneId; + } + } + + sectionsToCollect.computeIfAbsent(lightingSceneId, x -> new LongOpenHashSet()) + .add(section); + } + } + + for (final int scene : this.scene2SectionArenaIndexMap.keySet()) { + final Long2IntMap section2ArenaIndex = this.scene2SectionArenaIndexMap.get(scene); + final LongSet longs = sectionsToCollect.get(scene); + + if (longs != null) { + longs.removeAll(section2ArenaIndex.keySet()); + } + } + + for (final long updatedSection : this.updatedSections) { + for (int x = -1; x <= 1; ++x) { + for (int y = -1; y <= 1; ++y) { + for (int z = -1; z <= 1; ++z) { + final long section = SectionPos.offset(updatedSection, x, y, z); + + final SectionPos sectionPos = SectionPos.of(section); + final SubLevel subLevel = helper.getContaining(level, sectionPos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final int lightingSceneId = container.getLightingSceneId(clientSubLevel); + + if (lightingSceneId != -1) { + final Long2IntMap map = this.scene2SectionArenaIndexMap.get(lightingSceneId); + + if (map != null && map.containsKey(section)) { + sectionsToCollect.computeIfAbsent(lightingSceneId, ignored -> new LongOpenHashSet()).add(section); + } + + continue; + } + } + + if (this.scene2SectionArenaIndexMap.values().stream().anyMatch(map -> map.containsKey(section))) { + sectionsToCollect.computeIfAbsent(0, ignored -> new LongOpenHashSet()).add(section); + } + } + } + } + } + + for (final Int2ObjectMap.Entry entry : sectionsToCollect.int2ObjectEntrySet()) { + final int scene = entry.getIntKey(); + final LongSet sections = entry.getValue(); + + for (final long section : sections) { + this.collectSection(scene, section); + } + } + + this.updatedSections.clear(); + this.requestedSections = null; + } + + public void onLightUpdate(final long section) { + this.updatedSections.add(section); + } + + public void collectSection(final int scene, final long section) { + final int index = this.indexForSection(scene, section); + + this.changed.set(index); + + final long ptr = this.arena.indexToPointer(index); + + // Zero it out first. This is basically free and makes it easier to handle missing sections later. + MemoryUtil.memSet(ptr, 0, LightStorage.SECTION_SIZE_BYTES); + + ((LightStorageAccessor) this).getCollector().collectSection(ptr, section); + } + + private int indexForSection(final int scene, long section) { + final Long2IntMap map = this.scene2SectionArenaIndexMap.get(scene); + int out = map != null ? map.get(section) : INVALID_SECTION; + + // Need to allocate. + if (out == INVALID_SECTION) { + out = this.arena.alloc(); + this.scene2SectionArenaIndexMap.computeIfAbsent(scene, (ignored) -> { + final Long2IntOpenHashMap newMap = new Long2IntOpenHashMap(); + newMap.defaultReturnValue(INVALID_SECTION); + return newMap; + }).put(section, out); + + final SectionPos sectionPos = SectionPos.of(section); + final SubLevel subLevel = Sable.HELPER.getContainingClient(sectionPos); + + if (subLevel != null) { + final LevelPlot plot = subLevel.getPlot(); + final ChunkPos centerChunk = plot.getCenterChunk(); + section = SectionPos.asLong( + sectionPos.x() - centerChunk.x, + sectionPos.y(), + sectionPos.z() - centerChunk.z + ); + } + + this.beginTrackingSection(scene, section, out); + } + return out; + } + + private void removeUnusedSections() { + if (this.requestedSections == null) { + return; + } + + final ClientLevel world = Minecraft.getInstance().level; + + boolean anyRemoved = false; + + for (final Int2ObjectMap.Entry sceneEntry : this.scene2SectionArenaIndexMap.int2ObjectEntrySet()) { + final int sceneId = sceneEntry.getIntKey(); + final Long2IntMap section2ArenaIndex = sceneEntry.getValue(); + + final var entries = section2ArenaIndex.long2IntEntrySet(); + final var it = entries.iterator(); + while (it.hasNext()) { + final var entry = it.next(); + final var section = entry.getLongKey(); + + if (!this.requestedSections.contains(section)) { + this.arena.free(entry.getIntValue()); + + var localSection = section; + final SectionPos sectionPos = SectionPos.of(section); + final SubLevelContainer container = SubLevelContainer.getContainer(world); + + if (container != null && container.inBounds(sectionPos.x(), sectionPos.z())) { + final int logPlotSize = container.getLogPlotSize(); + final int plotX = (sectionPos.x() >> logPlotSize); + final int plotZ = (sectionPos.z() >> logPlotSize); + + localSection = SectionPos.asLong(sectionPos.x() - ((plotX << logPlotSize) + (1 << (logPlotSize - 1))), + sectionPos.y(), + sectionPos.z() - ((plotZ << logPlotSize) + (1 << (logPlotSize - 1)))); + } + + this.endTrackingSection(sceneId, localSection); + it.remove(); + anyRemoved = true; + } + } + } + + if (anyRemoved) { + this.sableLut.prune(); + ((LightStorageAccessor)this).setNeedsLutRebuild(true); + } + } + + private void beginTrackingSection(final int scene, final long section, final int index) { + this.sableLut.add(scene, section, index); + ((LightStorageAccessor)this).setNeedsLutRebuild(true); + } + + private void endTrackingSection(final int scene, final long section) { + this.sableLut.remove(scene, section); + ((LightStorageAccessor)this).setNeedsLutRebuild(true); + } + + @Override + public void uploadChangedSections(final StagingBuffer staging, final int dstVbo) { + for (int i = this.changed.nextSetBit(0); i >= 0; i = this.changed.nextSetBit(i + 1)) { + staging.enqueueCopy(this.arena.indexToPointer(i), SECTION_SIZE_BYTES, dstVbo, (long) i * SECTION_SIZE_BYTES); + } + this.changed.clear(); + } + + @Override + public void upload(final GlBuffer buffer) { + if (this.changed.isEmpty()) { + return; + } + + buffer.upload(this.arena.indexToPointer(0), (long) this.arena.capacity() * SECTION_SIZE_BYTES); + this.changed.clear(); + } + + @Override + public IntArrayList createLut() { + return this.sableLut.flatten(); + } + + public class DebugVisual implements EffectVisual, SimpleDynamicVisual { + + private final InstanceRecycler boxes; + private final Vec3i renderOrigin; + + public DebugVisual(final VisualizationContext ctx, final float partialTick) { + this.renderOrigin = ctx.renderOrigin(); + this.boxes = new InstanceRecycler<>(() -> ctx.instancerProvider() + .instancer(InstanceTypes.TRANSFORMED, HitboxComponent.BOX_MODEL) + .createInstance()); + } + + @Override + public void beginFrame(final Context ctx) { + this.boxes.resetCount(); + + this.setupSectionBoxes(); + this.setupLutRangeBoxes(); + + this.boxes.discardExtra(); + } + + private void setupSectionBoxes() { + for (final Int2ObjectMap.Entry entry : SableFlywheelLightStorage.this.scene2SectionArenaIndexMap.int2ObjectEntrySet()) { + final int sceneId = entry.getIntKey(); + final Long2IntMap section2ArenaIndex = entry.getValue(); + section2ArenaIndex.keySet() + .forEach(l -> { + final var x = SectionPos.x(l) * 16 - this.renderOrigin.getX(); + final var y = SectionPos.y(l) * 16 - this.renderOrigin.getY(); + final var z = SectionPos.z(l) * 16 - this.renderOrigin.getZ(); + + final var instance = this.boxes.get(); + + // Slightly smaller than a full 16x16x16 section to make it obvious which sections + // are actually represented when many are tiled next to each other. + instance.setIdentityTransform() + .translate(x + 1, y + 1, z + 1) + .scale(14) + .color(255, 255, sceneId * 64) + .light(LightTexture.FULL_BRIGHT) + .setChanged(); + }); + } + + } + + private void setupLutRangeBoxes() { + final var first = SableFlywheelLightStorage.this.sableLut.indices; + + final var base1 = first.base(); + final var size1 = first.size(); + + final float debug1 = base1 * 16 - this.renderOrigin.getY(); + + float min2 = Float.POSITIVE_INFINITY; + float max2 = Float.NEGATIVE_INFINITY; + + float min3 = Float.POSITIVE_INFINITY; + float max3 = Float.NEGATIVE_INFINITY; + + for (int y = 0; y < size1; y++) { + final var second = first.getRaw(y); + + if (second == null) { + continue; + } + + final var base2 = second.base(); + final var size2 = second.size(); + + final float y2 = (base1 + y) * 16 - this.renderOrigin.getY() + 7.5f; + + min2 = Math.min(min2, base2); + max2 = Math.max(max2, base2 + size2); + + float minLocal3 = Float.POSITIVE_INFINITY; + float maxLocal3 = Float.NEGATIVE_INFINITY; + + final float debug2 = base2 * 16 - this.renderOrigin.getX(); + + for (int x = 0; x < size2; x++) { + final var third = second.getRaw(x); + + if (third == null) { + continue; + } + + final var base3 = third.base(); + final var size3 = third.size(); + + final float x2 = (base2 + x) * 16 - this.renderOrigin.getX() + 7.5f; + + min3 = Math.min(min3, base3); + max3 = Math.max(max3, base3 + size3); + + minLocal3 = Math.min(minLocal3, base3); + maxLocal3 = Math.max(maxLocal3, base3 + size3); + + final float debug3 = base3 * 16 - this.renderOrigin.getZ(); + + for (int z = 0; z < size3; z++) { + this.boxes.get() + .setIdentityTransform() + .translate(x2, y2, debug3) + .scale(1, 1, size3 * 16) + .color(0, 0, 255) + .light(LightTexture.FULL_BRIGHT) + .setChanged(); + } + } + + this.boxes.get() + .setIdentityTransform() + .translate(debug2, y2, minLocal3 * 16 - this.renderOrigin.getZ()) + .scale(size2 * 16, 1, (maxLocal3 - minLocal3) * 16) + .color(255, 0, 0) + .light(LightTexture.FULL_BRIGHT) + .setChanged(); + } + + this.boxes.get() + .setIdentityTransform() + .translate(min2 * 16 - this.renderOrigin.getX(), debug1, min3 * 16 - this.renderOrigin.getZ()) + .scale((max2 - min2) * 16, size1 * 16, (max3 - min3) * 16) + .color(0, 255, 0) + .light(LightTexture.FULL_BRIGHT) + .setChanged(); + } + + @Override + public void update(final float partialTick) { + + } + + @Override + public void delete() { + this.boxes.delete(); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.java new file mode 100644 index 0000000..d7560cd --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableFlywheelMatrixBuffer.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.neoforge.compatibility.flywheel; + +public class SableFlywheelMatrixBuffer { + public static final int INFO_SIZE_BYTES = (16 + 12) * Float.BYTES + + Float.BYTES + // sky light scale + Integer.BYTES + // scene ID + 2 * Float.BYTES + // padding + 16 * Float.BYTES; // scene matrix +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.java new file mode 100644 index 0000000..35f5394 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/compatibility/flywheel/SableLightLut.java @@ -0,0 +1,389 @@ +package dev.ryanhcode.sable.neoforge.compatibility.flywheel; + +import it.unimi.dsi.fastutil.ints.IntArrayList; +import net.minecraft.core.SectionPos; +import org.jetbrains.annotations.Nullable; + +import java.util.function.BiConsumer; +import java.util.function.Supplier; + +/** + * A light look-up table based on the Flywheel / RogueLogix LUT scheme, with an extra layer for the lighting scene ID + * First layer is studio, Y, then X, then Z. + */ +public final class SableLightLut { + public final Layer>> indices = new Layer<>(); + + public void add(final int scene, final long position, final int index) { + final var x = SectionPos.x(position); + final var y = SectionPos.y(position); + final var z = SectionPos.z(position); + + this.indices.computeIfAbsent(scene, Layer::new) + .computeIfAbsent(y, Layer::new) + .computeIfAbsent(x, IntLayer::new) + .set(z, index + 1); + } + + public void prune() { + // Maybe this could be done better incrementally? + this.indices.prune((scene) -> scene.prune((middle) -> middle.prune(IntLayer::prune))); + } + + public void remove(final int scene, final long section) { + final var x = SectionPos.x(section); + final var y = SectionPos.y(section); + final var z = SectionPos.z(section); + + final var first = this.indices.get(scene); + + if (first == null) { + return; + } + + final var second = first.get(y); + + if (second == null) { + return; + } + + final var third = second.get(x); + + if (third == null) { + return; + } + + third.clear(z); + } + + public IntArrayList flatten() { + final var out = new IntArrayList(); + this.indices.fillLut(out, (sceneIndices, lut1) -> sceneIndices.fillLut(lut1, + (yIndices, lut2) -> yIndices.fillLut(lut2, IntLayer::fillLut) + )); + return out; + } + + @FunctionalInterface + public interface Prune { + boolean prune(T t); + } + + public static final class Layer { + private boolean hasBase = false; + private int base = 0; + private Object[] nextLayer = new Object[0]; + + public void fillLut(final IntArrayList lut, final BiConsumer inner) { + lut.add(this.base); + lut.add(this.nextLayer.length); + + final int innerIndexBase = lut.size(); + + // Reserve space for the inner indices... + lut.size(innerIndexBase + this.nextLayer.length); + + for (int i = 0; i < this.nextLayer.length; i++) { + final var innerIndices = (T) this.nextLayer[i]; + if (innerIndices == null) { + continue; + } + + final int layerPosition = lut.size(); + + // ...so we can write in their actual positions later. + lut.set(innerIndexBase + i, layerPosition); + + // Append the next layer to the lut. + inner.accept(innerIndices, lut); + } + } + + public int base() { + return this.base; + } + + public int size() { + return this.nextLayer.length; + } + + @Nullable + public T getRaw(final int i) { + if (i < 0) { + return null; + } + + if (i >= this.nextLayer.length) { + return null; + } + + return (T) this.nextLayer[i]; + } + + @Nullable + public T get(final int i) { + if (!this.hasBase) { + return null; + } + + return this.getRaw(i - this.base); + } + + public T computeIfAbsent(final int i, final Supplier ifAbsent) { + if (!this.hasBase) { + // We don't want to default to base 0, so we'll use the first value we get. + this.base = i; + this.hasBase = true; + } + + if (i < this.base) { + this.rebase(i); + } + + final var offset = i - this.base; + + if (offset >= this.nextLayer.length) { + this.resize(offset + 1); + } + + var out = this.nextLayer[offset]; + + if (out == null) { + out = ifAbsent.get(); + this.nextLayer[offset] = out; + } + return (T) out; + } + + /** + * @return {@code true} if the layer is now empty. + */ + public boolean prune(final Prune inner) { + if (!this.hasBase) { + return true; + } + + // Prune the next layer before checking for leading/trailing zeros. + for (var i = 0; i < this.nextLayer.length; i++) { + final var o = this.nextLayer[i]; + if (o != null && inner.prune((T) o)) { + this.nextLayer[i] = null; + } + } + + final var leadingZeros = this.getLeadingZeros(); + + if (leadingZeros == this.nextLayer.length) { + return true; + } + + final var trailingZeros = this.getTrailingZeros(); + + if (leadingZeros == 0 && trailingZeros == 0) { + return false; + } + + final var newIndices = new Object[this.nextLayer.length - leadingZeros - trailingZeros]; + + System.arraycopy(this.nextLayer, leadingZeros, newIndices, 0, newIndices.length); + this.nextLayer = newIndices; + this.base += leadingZeros; + + return false; + } + + private int getLeadingZeros() { + int out = 0; + + for (final Object index : this.nextLayer) { + if (index == null) { + out++; + } else { + break; + } + } + return out; + } + + private int getTrailingZeros() { + int out = 0; + + for (int i = this.nextLayer.length - 1; i >= 0; i--) { + if (this.nextLayer[i] == null) { + out++; + } else { + break; + } + } + return out; + } + + private void resize(final int length) { + final var newIndices = new Object[length]; + System.arraycopy(this.nextLayer, 0, newIndices, 0, this.nextLayer.length); + this.nextLayer = newIndices; + } + + private void rebase(final int newBase) { + final var growth = this.base - newBase; + + final var newIndices = new Object[this.nextLayer.length + growth]; + // Shift the existing elements to the end of the new array to maintain their offset with the new base. + System.arraycopy(this.nextLayer, 0, newIndices, growth, this.nextLayer.length); + + this.nextLayer = newIndices; + this.base = newBase; + } + } + + public static final class IntLayer { + private boolean hasBase = false; + private int base = 0; + private int[] indices = new int[0]; + + public void fillLut(final IntArrayList lut) { + lut.add(this.base); + lut.add(this.indices.length); + + for (final int index : this.indices) { + lut.add(index); + } + } + + public int base() { + return this.base; + } + + public int size() { + return this.indices.length; + } + + public int getRaw(final int i) { + if (i < 0) { + return 0; + } + + if (i >= this.indices.length) { + return 0; + } + + return this.indices[i]; + } + + public int get(final int i) { + if (!this.hasBase) { + return 0; + } + + return this.getRaw(i - this.base); + } + + public void set(final int i, final int index) { + if (!this.hasBase) { + this.base = i; + this.hasBase = true; + } + + if (i < this.base) { + this.rebase(i); + } + + final var offset = i - this.base; + + if (offset >= this.indices.length) { + this.resize(offset + 1); + } + + this.indices[offset] = index; + } + + /** + * @return {@code true} if the layer is now empty. + */ + public boolean prune() { + if (!this.hasBase) { + return true; + } + + final var leadingZeros = this.getLeadingZeros(); + + if (leadingZeros == this.indices.length) { + return true; + } + + final var trailingZeros = this.getTrailingZeros(); + + if (leadingZeros == 0 && trailingZeros == 0) { + return false; + } + + final var newIndices = new int[this.indices.length - leadingZeros - trailingZeros]; + + System.arraycopy(this.indices, leadingZeros, newIndices, 0, newIndices.length); + this.indices = newIndices; + this.base += leadingZeros; + + return false; + } + + private int getTrailingZeros() { + int out = 0; + + for (int i = this.indices.length - 1; i >= 0; i--) { + if (this.indices[i] == 0) { + out++; + } else { + break; + } + } + return out; + } + + private int getLeadingZeros() { + int out = 0; + + for (final int index : this.indices) { + if (index == 0) { + out++; + } else { + break; + } + } + return out; + } + + public void clear(final int i) { + if (!this.hasBase) { + return; + } + + if (i < this.base) { + return; + } + + final var offset = i - this.base; + + if (offset >= this.indices.length) { + return; + } + + this.indices[offset] = 0; + } + + private void resize(final int length) { + final var newIndices = new int[length]; + System.arraycopy(this.indices, 0, newIndices, 0, this.indices.length); + this.indices = newIndices; + } + + private void rebase(final int newBase) { + final var growth = this.base - newBase; + + final var newIndices = new int[this.indices.length + growth]; + System.arraycopy(this.indices, 0, newIndices, growth, this.indices.length); + + this.indices = newIndices; + this.base = newBase; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.java new file mode 100644 index 0000000..1a7f0f8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePostPhysicsTickEvent.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.event; + +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.neoforged.bus.api.Event; + +/** + * Fired when Sable's {@link SubLevelPhysicsSystem} is complete with a physics tick. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +public class ForgeSablePostPhysicsTickEvent extends Event { + private final SubLevelPhysicsSystem physicsSystem; + private final double timeStep; + + public ForgeSablePostPhysicsTickEvent(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + this.physicsSystem = physicsSystem; + this.timeStep = timeStep; + } + + public SubLevelPhysicsSystem getPhysicsSystem() { + return this.physicsSystem; + } + + public double getTimeStep() { + return this.timeStep; + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.java new file mode 100644 index 0000000..339a115 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSablePrePhysicsTickEvent.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.event; + +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.neoforged.bus.api.Event; + +/** + * Fired when Sable's {@link dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem} is ticking physics. + *
+ * Note that multiple physics ticks are completed per game tick, based on the amount of configured sub-steps. + * Logic that needs to influence the physics world should occur on the physics tick, and not the game tick + * due to this reason. + */ +public class ForgeSablePrePhysicsTickEvent extends Event { + private final SubLevelPhysicsSystem physicsSystem; + private final double timeStep; + + public ForgeSablePrePhysicsTickEvent(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + this.physicsSystem = physicsSystem; + this.timeStep = timeStep; + } + + public SubLevelPhysicsSystem getPhysicsSystem() { + return this.physicsSystem; + } + + public double getTimeStep() { + return this.timeStep; + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.java new file mode 100644 index 0000000..627a290 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/event/ForgeSableSubLevelContainerReadyEvent.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.neoforge.event; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import net.minecraft.world.level.Level; +import net.neoforged.bus.api.Event; + +/** + * Fired when Sable has finished initialization for a level and its sub-level container is ready to use. + */ +public class ForgeSableSubLevelContainerReadyEvent extends Event { + private final Level level; + private final SubLevelContainer container; + + public ForgeSableSubLevelContainerReadyEvent(final Level level, final SubLevelContainer container) { + this.level = level; + this.container = container; + } + + public Level getLevel() { + return this.level; + } + + public SubLevelContainer getContainer() { + return this.container; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.java new file mode 100644 index 0000000..79d4472 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/AssemblyTest.java @@ -0,0 +1,92 @@ +package dev.ryanhcode.sable.neoforge.gametest; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelAssemblyHelper; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.gametest.framework.GameTest; +import net.minecraft.gametest.framework.GameTestAssertPosException; +import net.minecraft.gametest.framework.GameTestHelper; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.gametest.GameTestHolder; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.joml.Vector3i; +import org.joml.Vector3ic; + +import java.util.ArrayList; +import java.util.List; + +@GameTestHolder(Sable.MOD_ID) +public final class AssemblyTest { + + @GameTest(template = "brittlebreak") + public static void testBrittleBreaking(final GameTestHelper helper) { + final ServerLevel level = helper.getLevel(); + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer(level); + if (plotContainer == null) { + throw new IllegalStateException("Plot container not found in level"); + } + + final SubLevelPhysicsSystem physicsSystem = plotContainer.physicsSystem(); + if (physicsSystem == null) { + throw new IllegalStateException("Plot container does not have physics"); + } + + final BlockPos min = helper.absolutePos(new BlockPos(0, 1, 0)); + final BlockPos max = helper.absolutePos(new BlockPos(2, 3, 2)); + final BoundingBox3i bounds = new BoundingBox3i( + min.getX(), min.getY(), min.getZ(), + max.getX(), max.getY(), max.getZ() + ); + + final List expectedStates = new ArrayList<>(bounds.volume()); + for (final BlockPos pos : BlockPos.betweenClosed(min, max)) { + expectedStates.add(level.getBlockState(pos)); + } + + final ServerSubLevel subLevel = SubLevelAssemblyHelper.assembleBlocks(level, min, BlockPos.betweenClosed(min, max), bounds); + physicsSystem.getPipeline().teleport(subLevel, + new Vector3d(min.getX() + (1 + max.getX() - min.getX()) / 2.0, + min.getY() + (1 + max.getY() - min.getY()) / 2.0, + min.getZ() + (1 + max.getZ() - min.getZ()) / 2.0), + helper.getTestRotation().rotation().transformation().getNormalizedRotation(new Quaterniond())); + helper.runAtTickTime(10, () -> { + final Level plot = subLevel.getLevel(); + final BoundingBox3ic sublevelBounds = subLevel.getPlot().getBoundingBox(); + final Vector3ic actualSize = sublevelBounds.size(new Vector3i()); + final Vector3ic expectedSize = bounds.size(new Vector3i()); + if (actualSize.equals(expectedSize)) { + int i = 0; + for (final BlockPos pos : BlockPos.betweenClosed(sublevelBounds.minX(), + sublevelBounds.minY(), + sublevelBounds.minZ(), + sublevelBounds.maxX(), + sublevelBounds.maxY(), + sublevelBounds.maxZ())) { + final BlockState expected = expectedStates.get(i); + if (!plot.getBlockState(pos).equals(expected)) { + throw new GameTestAssertPosException("Expected %s".formatted(expected.getBlock().getName().getString()), pos, pos, helper.getTick()); + } + i++; + } + helper.succeed(); + } else { + helper.fail("Expected %dx%dx%d region, got %dx%dx%d".formatted( + expectedSize.x(), + expectedSize.y(), + expectedSize.z(), + actualSize.x(), + actualSize.y(), + actualSize.z())); + } + }); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.java new file mode 100644 index 0000000..3b5a3f6 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/PhysicsTest.java @@ -0,0 +1,133 @@ +package dev.ryanhcode.sable.neoforge.gametest; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.gametest.framework.GameTest; +import net.minecraft.gametest.framework.GameTestAssertPosException; +import net.minecraft.gametest.framework.GameTestHelper; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.Blocks; +import net.neoforged.neoforge.gametest.GameTestHolder; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import static dev.ryanhcode.sable.neoforge.gametest.SableTestHelper.*; + +@GameTestHolder(Sable.MOD_ID) +public final class PhysicsTest { + + @GameTest(template = "continuouscollision") + public static void testContinuousCollision(final GameTestHelper helper) { + final ServerLevel level = helper.getLevel(); + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer(level); + if (plotContainer == null) { + throw new IllegalStateException("Plot container not found in level"); + } + + final SubLevelPhysicsSystem physicsSystem = plotContainer.physicsSystem(); + if (physicsSystem == null) { + throw new IllegalStateException("Plot container does not have physics"); + } + + final ServerSubLevel subLevel = spawnSingleBlockSubLevel(plotContainer, absolutePosition(helper, new Vector3d(2.5, 4, 1.5)), Blocks.GLASS.defaultBlockState()); + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle(subLevel); + final Vector3d impulse = absoluteDirection(helper, new Vector3d(0, 10, 20)); + + helper.startSequence() + .thenExecuteAfter(10, () -> handle.applyLinearImpulse(impulse)) + .thenExecuteFor(40, () -> { + final Vector3d globalPos = subLevel.logicalPose().position(); + final Vector3d localPos = localPosition(helper, globalPos); + if (localPos.z >= 9 || !isInBounds(helper, globalPos)) { + helper.fail("Sublevel passed through wall", BlockPos.containing(localPos.x, localPos.y, localPos.z)); + } + }).thenSucceed(); + } + + // FIXME allow manual tests to run automatically when rapier is set to 64-bit mode + @GameTest(template = "gravity", required = false) + public static void testGravity(final GameTestHelper helper) { + final ServerLevel level = helper.getLevel(); + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer(level); + if (plotContainer == null) { + throw new IllegalStateException("Plot container not found in level"); + } + + final SubLevelPhysicsSystem physicsSystem = plotContainer.physicsSystem(); + if (physicsSystem == null) { + throw new IllegalStateException("Plot container does not have physics"); + } + + final Vector3dc spawnPos = absolutePosition(helper, new Vector3d(2.5, 12, 2.5)); + final ServerSubLevel subLevel = spawnSingleBlockSubLevel(plotContainer, spawnPos, Blocks.DIAMOND_BLOCK.defaultBlockState()); + + helper.runAfterDelay(20, () -> { + if (subLevel.isRemoved()) { + helper.fail("Sublevel was removed"); + return; + } + + final Vector3dc gravity = DimensionPhysicsData.getGravity(helper.getLevel(), spawnPos); + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle(subLevel); + final Vector3dc linearVelocity = handle.getLinearVelocity(new Vector3d()); + + if (!gravity.equals(linearVelocity, 1e-2)) { + final Vector3d localPos = localPosition(helper, spawnPos); + helper.fail("Sublevel velocity didn't follow gravity: Delta: " + gravity.distance(linearVelocity), BlockPos.containing(localPos.x, localPos.y, localPos.z)); + return; + } + + // 1/2 * a * t * t + // t = 1 + final Vector3d expectedDelta = gravity.mul(0.5, new Vector3d()); + final Vector3d delta = subLevel.logicalPose().position().sub(spawnPos, new Vector3d()); + + // FIXME for some reason the sublevels don't have a consistent distance travelled. It seems like they aren't spawned on the first tick? + if (!expectedDelta.equals(delta, 1e-2)) { + final Vector3d localPos = localPosition(helper, spawnPos); + helper.fail("Sublevel position didn't follow gravity. Delta: " + expectedDelta.distance(delta), BlockPos.containing(localPos.x, localPos.y, localPos.z)); + } + + helper.succeed(); + }); + } + + @GameTest(template = "snag", attempts = 10, requiredSuccesses = 10, required = false) + public static void testSnag(final GameTestHelper helper) { + final ServerLevel level = helper.getLevel(); + final ServerSubLevelContainer plotContainer = SubLevelContainer.getContainer(level); + if (plotContainer == null) { + throw new IllegalStateException("Plot container not found in level"); + } + + final SubLevelPhysicsSystem physicsSystem = plotContainer.physicsSystem(); + if (physicsSystem == null) { + throw new IllegalStateException("Plot container does not have physics"); + } + + final Vector3dc spawnPos = absolutePosition(helper, new Vector3d(13, 3.5, 3.5)); + final ServerSubLevel subLevel = spawnSingleBlockSubLevel(plotContainer, spawnPos, Blocks.DIAMOND_BLOCK.defaultBlockState()); + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle(subLevel); + final Vector3d impulse = absoluteDirection(helper, new Vector3d(-60, 0, 0)); + + helper.startSequence() + .thenExecuteAfter(10, () -> handle.applyLinearImpulse(impulse)) + .thenExecuteFor(40, () -> { + final Vector3d globalPos = subLevel.logicalPose().position(); + final Vector3d localPos = localPosition(helper, globalPos); + if (localPos.x <= 9 && isInBounds(helper, globalPos)) { + helper.succeed(); + } + }).thenFail(() -> { + final Vector3dc position = subLevel.logicalPose().position(); + final BlockPos globalPos = BlockPos.containing(position.x(), position.y(), position.z()); + return new GameTestAssertPosException("Sub-level got stuck", globalPos, helper.relativePos(globalPos), helper.getTick()); + }); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.java new file mode 100644 index 0000000..2854610 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/gametest/SableTestHelper.java @@ -0,0 +1,81 @@ +package dev.ryanhcode.sable.neoforge.gametest; + +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.core.BlockPos; +import net.minecraft.gametest.framework.GameTestHelper; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.CommonLevelAccessor; +import net.minecraft.world.level.block.Rotation; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.function.Consumer; + +public final class SableTestHelper { + + public static ServerSubLevel spawnSubLevel(final SubLevelContainer plotContainer, final Vector3dc pos, final Consumer setter) { + final Pose3d pose = new Pose3d(); + pose.position().set(pos); + + final SubLevel subLevel = plotContainer.allocateNewSubLevel(pose); + final LevelPlot plot = subLevel.getPlot(); + + final ChunkPos center = plot.getCenterChunk(); + plot.newEmptyChunk(center); + + setter.accept(plot.getEmbeddedLevelAccessor()); + subLevel.updateLastPose(); + return (ServerSubLevel) subLevel; + } + + public static ServerSubLevel spawnSingleBlockSubLevel(final SubLevelContainer plotContainer, final Vector3dc pos, final BlockState state) { + return spawnSubLevel(plotContainer, pos, accessor -> accessor.setBlock(BlockPos.ZERO, state, 3)); + } + + public static Vector3d absoluteDirection(final GameTestHelper helper, final Vector3dc localDirection) { + return new Vector3d(localDirection).rotateY(-getAngle(helper.getTestRotation())); + } + + public static Vector3d localDirection(final GameTestHelper helper, final Vector3dc globalDirection) { + return new Vector3d(globalDirection).rotateY(getAngle(helper.getTestRotation())); + } + + public static Vector3d absolutePosition(final GameTestHelper helper, final Vector3dc localPosition) { + final BlockPos origin = helper.testInfo.getStructureBlockPos(); + final Vector3d pos = localPosition.sub(0.5, 0.5, 0.5, new Vector3d()).rotateY(-getAngle(helper.getTestRotation())); + return pos.add(origin.getX() + 0.5, origin.getY() + 0.5, origin.getZ() + 0.5); + } + + public static Vector3d localPosition(final GameTestHelper helper, final Vector3dc globalPosition) { + final BlockPos origin = helper.testInfo.getStructureBlockPos(); + final Vector3d pos = globalPosition.sub(origin.getX(), origin.getY(), origin.getZ(), new Vector3d()); + return pos.rotateY(getAngle(helper.getTestRotation())); + } + + public static double getAngle(final Rotation rotation) { + return switch (rotation) { + case NONE -> 0; + case CLOCKWISE_90 -> Math.PI / 2.0; + case CLOCKWISE_180 -> Math.PI; + case COUNTERCLOCKWISE_90 -> -Math.PI / 2.0; + }; + } + + /** + * Checks if the specified global position is within the bounds of the test. + * + * @param helper The game test helper instance + * @param globalPosition The position in global space to check + * @return Whether that position is inside the bounds of the test + */ + public static boolean isInBounds(final GameTestHelper helper, final Vector3dc globalPosition) { + final AABB box = helper.getBounds(); + return box.contains(globalPosition.x(), globalPosition.y(), globalPosition.z()); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.java new file mode 100644 index 0000000..7352df0 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_entity_visible/LevelRendererMixin.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.neoforge.mixin.block_entity_visible; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderDispatcher; +import net.minecraft.client.renderer.blockentity.BlockEntityRenderer; +import net.minecraft.client.renderer.culling.Frustum; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(value = LevelRenderer.class, priority = 2000) +public class LevelRendererMixin { + + /** + * @author RyanH + * @reason Take sub-levels into account for visibility check + */ + @SuppressWarnings("unchecked") + @Redirect(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/neoforged/neoforge/client/ClientHooks;isBlockEntityRendererVisible(Lnet/minecraft/client/renderer/blockentity/BlockEntityRenderDispatcher;Lnet/minecraft/world/level/block/entity/BlockEntity;Lnet/minecraft/client/renderer/culling/Frustum;)Z"), require = 0) + private static boolean isBlockEntityRendererVisible(final BlockEntityRenderDispatcher dispatcher, final BlockEntity blockEntity, final Frustum frustum) { + final BlockEntityRenderer renderer = (BlockEntityRenderer) dispatcher.getRenderer(blockEntity); + + if (renderer == null) return false; + + AABB renderBounds = renderer.getRenderBoundingBox((T) blockEntity); + + final SubLevel subLevel = Sable.HELPER.getContainingClient(renderBounds.getCenter()); + + if (subLevel != null) { + final BoundingBox3d bb = new BoundingBox3d(renderBounds); + renderBounds = bb.transform(subLevel.logicalPose(), bb).toMojang(); + } + + return frustum.isVisible(renderBounds); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.java new file mode 100644 index 0000000..c98dcd2 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/block_outline_render/LevelRendererMixin.java @@ -0,0 +1,114 @@ +package dev.ryanhcode.sable.neoforge.mixin.block_outline_render; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalBooleanRef; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.block_outline_render.SubLevelCamera; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.DeltaTracker; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.joml.Quaterniondc; +import org.joml.Quaternionf; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Transforms block hover outlines for sublevels. + */ +@Mixin(value = LevelRenderer.class, priority = 2000) // This makes sure it applies after normal mixins +public abstract class LevelRendererMixin { + + // Storage vectors to avoid repeated allocation + private final @Unique Quaternionf sable$orientationStorage = new Quaternionf(); + private final @Unique SubLevelCamera sable$sublevelCamera = new SubLevelCamera(); + + @Shadow + @Nullable + private ClientLevel level; + + @WrapOperation(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/neoforged/neoforge/client/ClientHooks;onDrawHighlight(Lnet/minecraft/client/renderer/LevelRenderer;Lnet/minecraft/client/Camera;Lnet/minecraft/world/phys/HitResult;Lnet/minecraft/client/DeltaTracker;Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;)Z")) + private boolean sable$preRenderHitOutline(final LevelRenderer context, final Camera camera, final HitResult target, final DeltaTracker deltaTracker, final PoseStack poseStack, final MultiBufferSource bufferSource, final Operation original, @Share("drawn") final LocalBooleanRef drawnRef) { + if (!(target instanceof final BlockHitResult blockTarget)) { + return original.call(context, camera, target, deltaTracker, poseStack, bufferSource); + } + + final BlockPos blockPos = blockTarget.getBlockPos(); + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(this.level, blockPos); + + if (subLevel == null) { + return original.call(context, camera, target, deltaTracker, poseStack, bufferSource); + } + + poseStack.pushPose(); + + final Pose3dc pose = subLevel.renderPose(); + + this.sable$sublevelCamera.setCamera(camera); + this.sable$sublevelCamera.setPose(pose); + final Vec3 cameraPosition = this.sable$sublevelCamera.getPosition(); + final Vec3 realCameraPosition = camera.getPosition(); + + final Vector3dc position = pose.position(); + final Vector3dc rotationPoint = pose.rotationPoint(); + final Quaterniondc orientation = pose.orientation(); + final Vector3dc scale = pose.scale(); + + poseStack.translate( + (float) (position.x() - realCameraPosition.x), + (float) (position.y() - realCameraPosition.y), + (float) (position.z() - realCameraPosition.z) + ); + poseStack.mulPose(this.sable$orientationStorage.set(orientation)); + poseStack.translate( + (float) -(rotationPoint.x() - cameraPosition.x), + (float) -(rotationPoint.y() - cameraPosition.y), + (float) -(rotationPoint.z() - cameraPosition.z) + ); + poseStack.scale((float) scale.x(), (float) scale.y(), (float) scale.z()); + + drawnRef.set(true); + return original.call(context, this.sable$sublevelCamera, target, deltaTracker, poseStack, bufferSource); + } + + @Inject(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/debug/DebugRenderer;render(Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource$BufferSource;DDD)V")) + public void sable$poseRenderHitOutline(final CallbackInfo ci, @Local final PoseStack poseStack, @Share("drawn") final LocalBooleanRef drawnRef) { + if (drawnRef.get()) { + poseStack.popPose(); + this.sable$sublevelCamera.clear(); + } + } + + @ModifyArg(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;renderHitOutline(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V"), index = 3) + public double modifyX(final double original, @Share("drawn") final LocalBooleanRef drawnRef) { + return drawnRef.get() ? this.sable$sublevelCamera.getPosition().x : original; + } + + @ModifyArg(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;renderHitOutline(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V"), index = 4) + public double modifyY(final double original, @Share("drawn") final LocalBooleanRef drawnRef) { + return drawnRef.get() ? this.sable$sublevelCamera.getPosition().y : original; + } + + @ModifyArg(method = "renderLevel", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;renderHitOutline(Lcom/mojang/blaze3d/vertex/PoseStack;Lcom/mojang/blaze3d/vertex/VertexConsumer;Lnet/minecraft/world/entity/Entity;DDDLnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)V"), index = 5) + public double modifyZ(final double original, @Share("drawn") final LocalBooleanRef drawnRef) { + return drawnRef.get() ? this.sable$sublevelCamera.getPosition().z : original; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.java new file mode 100644 index 0000000..61cc733 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/camera_rotation/CameraMixin.java @@ -0,0 +1,105 @@ +package dev.ryanhcode.sable.neoforge.mixin.camera_rotation; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinhelpers.camera.camera_rotation.EntitySubLevelRotationHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.client.Minecraft; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import net.neoforged.neoforge.client.event.ViewportEvent; +import org.joml.Quaterniond; +import org.joml.Quaternionf; +import org.joml.Vector3f; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(Camera.class) +public abstract class CameraMixin { + + @Shadow + @Final + private static Vector3f FORWARDS; + @Shadow + @Final + private static Vector3f UP; + @Shadow + @Final + private static Vector3f LEFT; + @Shadow + @Final + private Quaternionf rotation; + @Shadow + @Final + private Vector3f left; + + @Shadow + @Final + private Vector3f up; + + @Shadow + @Final + private Vector3f forwards; + + @Shadow + private float yRot; + + @Shadow + private float xRot; + + @Shadow + private Entity entity; + + @Shadow protected abstract void setRotation(float f, float g, float roll); + + @Redirect(method = "setup", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;setRotation(FFF)V", ordinal = 1)) + private void sable$redirectSetRotation(final Camera camera, final float f, final float g, final float roll, @Local final ViewportEvent.ComputeCameraAngles event) { + this.setRotation(event.getYaw() + 180.0f, -event.getPitch(), roll); + } + + @WrapMethod(method = "setPosition(Lnet/minecraft/world/phys/Vec3;)V") + private void sable$setPosition(final Vec3 arg, final Operation original) { + if (this.entity == null) { + original.call(arg); + return; + } + final Level level = this.entity.level(); + + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(level, arg); + if(subLevel == null) { + original.call(arg); + return; + } + + final Pose3dc pose = subLevel.renderPose(); + final Vec3 pos = pose.transformPosition(arg); + original.call(pos); + } + + @Inject(method = "setRotation(FFF)V", at = @At(value = "INVOKE", target = "Lorg/joml/Quaternionf;rotationYXZ(FFF)Lorg/joml/Quaternionf;", shift = At.Shift.AFTER)) + public void sable$rotateView(final float f, final float g, final float roll, final CallbackInfo ci) { + final float pt = Minecraft.getInstance().getTimer().getGameTimeDeltaPartialTick(true); + final Quaterniond ridingOrientation = EntitySubLevelRotationHelper.getEntityOrientation(this.entity, (x) -> ((ClientSubLevel) x).renderPose(), pt, EntitySubLevelRotationHelper.Type.CAMERA); + + if (ridingOrientation != null) { + this.rotation.premul(new Quaternionf(ridingOrientation)); + FORWARDS.rotate(this.rotation, this.forwards); + UP.rotate(this.rotation, this.up); + LEFT.rotate(this.rotation, this.left); + + final Vector3f euler = this.rotation.getEulerAnglesYXZ(new Vector3f()); + this.yRot = -180.0f - (float) Math.toDegrees(euler.y); + this.xRot = (float) -Math.toDegrees(euler.x); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.java new file mode 100644 index 0000000..bebe345 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/backpacks/BackpackPickupEventsMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.backpacks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalBooleanRef; +import com.spydnel.backpacks.events.BackpackPickupEvents; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.phys.Vec3; +import net.neoforged.neoforge.event.entity.player.PlayerInteractEvent; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; +import org.spongepowered.asm.mixin.injection.callback.LocalCapture; + +@Mixin(BackpackPickupEvents.class) +public class BackpackPickupEventsMixin { + + @Inject(method = "onRightClickBlock", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;isUnobstructed(Lnet/minecraft/world/level/block/state/BlockState;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/shapes/CollisionContext;)Z"), locals = LocalCapture.CAPTURE_FAILEXCEPTION) + private static void sable$onRightClickBlock(final PlayerInteractEvent.RightClickBlock event, final CallbackInfo ci, @Local(name = "isAbove") final LocalBooleanRef isAbove) { + final Player player = event.getEntity(); + final BlockPos pos = event.getPos(); + final SubLevel containing = Sable.HELPER.getContaining(player.level(), pos); + if (containing != null) { + final Vec3 world = containing.logicalPose().transformPosition(pos.above().getBottomCenter()); + isAbove.set(world.y - 0.1 > player.getEyeY()); + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.java new file mode 100644 index 0000000..d5f9fca --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/AirCurrentMixin.java @@ -0,0 +1,84 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.airflow; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.fan.AirCurrent; +import com.simibubi.create.content.kinetics.fan.IAirCurrentSource; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.Vec3i; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.lang.ref.WeakReference; + +@Mixin(AirCurrent.class) +public abstract class AirCurrentMixin { + + @Shadow + @Final + public IAirCurrentSource source; + + @Unique + private WeakReference sable$subLevelReference; + + @Inject(method = "tick", at = @At("HEAD")) + public void sable$updateSubLevel(final CallbackInfo ci) { + if (this.sable$subLevelReference == null) { + this.sable$subLevelReference = new WeakReference<>(Sable.HELPER.getContaining(this.source.getAirCurrentWorld(), this.source.getAirCurrentPos())); + } + } + + @Redirect(method = "tickAffectedEntities", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + public AABB sable$reverseProjectEntityBB(final Entity instance) { + final SubLevel subLevel = this.sable$subLevelReference.get(); + if (subLevel != null) { + return new BoundingBox3d(instance.getBoundingBox()).transformInverse(subLevel.logicalPose(), new BoundingBox3d()).toMojang(); + } + + return instance.getBoundingBox(); + } + + @WrapOperation(method = "tickAffectedEntities", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;setDeltaMovement(Lnet/minecraft/world/phys/Vec3;)V")) + public void sable$transformFlowVector(final Entity instance, final Vec3 vec3, final Operation original, @Local final Vec3i flow, @Local(ordinal = 2) final float acceleration, @Local final Vec3 previousMotion, @Local(ordinal = 3) final float maxAcceleration) { + final SubLevel subLevel = this.sable$subLevelReference.get(); + if (subLevel != null) { + final Vector3d nonIntFlow = JOMLConversion.atLowerCornerOf(flow); + subLevel.logicalPose().transformNormal(nonIntFlow); + + final double xIn = Mth.clamp((double) ((float) nonIntFlow.get(0) * acceleration) - previousMotion.x, -maxAcceleration, maxAcceleration); + final double yIn = Mth.clamp((double) ((float) nonIntFlow.get(1) * acceleration) - previousMotion.y, -maxAcceleration, maxAcceleration); + final double zIn = Mth.clamp((double) ((float) nonIntFlow.get(2) * acceleration) - previousMotion.z, -maxAcceleration, maxAcceleration); + + original.call(instance, previousMotion.add(new Vec3(xIn, yIn, zIn).scale(0.125f))); + return; + } + + original.call(instance, vec3); + } + + @Redirect(method = "tickAffectedEntities", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;position()Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$reverseProjectAllPositions(final Entity instance) { + final SubLevel subLevel = this.sable$subLevelReference.get(); + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(instance.position()); + } + + return instance.position(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.java new file mode 100644 index 0000000..28a1223 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/airflow/FanProcessingTypeMixin.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.airflow; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.simibubi.create.content.kinetics.fan.processing.FanProcessingType; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(FanProcessingType.class) +public interface FanProcessingTypeMixin { + @WrapMethod(method = "getAt") + private static FanProcessingType getAt(Level level, BlockPos pos, Operation original) { + ActiveSableCompanion helper = Sable.HELPER; + return helper.runIncludingSubLevels(level, pos.getCenter(), true, helper.getContaining(level, pos), + (subLevel, relativePos) -> original.call(level, relativePos)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.java new file mode 100644 index 0000000..957c20f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinBlockEntityMixin.java @@ -0,0 +1,60 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.basin_interactions; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.processing.basin.BasinBlockEntity; +import com.simibubi.create.content.processing.burner.BlazeBurnerBlock; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(BasinBlockEntity.class) +public class BasinBlockEntityMixin extends BlockEntity { + + @Shadow @Nullable private BlazeBurnerBlock.@Nullable HeatLevel cachedHeatLevel; + + public BasinBlockEntityMixin(final BlockEntityType arg, final BlockPos arg2, final BlockState arg3) { + super(arg, arg2, arg3); + } + + @Inject(method = "getHeatLevel", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/processing/basin/BasinBlockEntity;getHeatLevelOf(Lnet/minecraft/world/level/block/state/BlockState;)Lcom/simibubi/create/content/processing/burner/BlazeBurnerBlock$HeatLevel;", shift = At.Shift.AFTER), cancellable = true) + private void sable$accountForSubLevels(final CallbackInfoReturnable cir) { + if (this.cachedHeatLevel != null && this.cachedHeatLevel != BlazeBurnerBlock.HeatLevel.NONE) { + return; + } + + final Level level = this.getLevel(); + final BlockPos originalPos = this.getBlockPos().below(); + final ActiveSableCompanion helper = Sable.HELPER; + final BlazeBurnerBlock.HeatLevel heatLevel = helper.runIncludingSubLevels(level, originalPos.getCenter(), false, helper.getContaining(level, originalPos), (subLevel, pos) -> { + final BlazeBurnerBlock.HeatLevel internalHeat = BasinBlockEntity.getHeatLevelOf(level.getBlockState(pos)); + + if (internalHeat != BlazeBurnerBlock.HeatLevel.NONE) { + return internalHeat; + } + + return null; + }); + + if (heatLevel != null) { + cir.setReturnValue(heatLevel); + } + } + + @WrapOperation(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockEntity(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity;")) + public BlockEntity sable$accountForSubLevels(final Level level, final BlockPos pos, final Operation original) { + final ActiveSableCompanion helper = Sable.HELPER; + return helper.runIncludingSubLevels(level, pos.getCenter(), true, helper.getContaining(level, pos), (subLevel, internalPos) -> original.call(level, internalPos)); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.java new file mode 100644 index 0000000..d1362ef --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/basin_interactions/BasinOperatingBlockEntityMixin.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.basin_interactions; + +import com.simibubi.create.content.processing.basin.BasinOperatingBlockEntity; +import com.simibubi.create.foundation.blockEntity.behaviour.simple.DeferralBehaviour; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BasinOperatingBlockEntity.class) +public abstract class BasinOperatingBlockEntityMixin { + @Shadow + public DeferralBehaviour basinChecker; + + @Unique + private int sable$forceUpdateTicks = 0; + + @Inject(method = "tick", at = @At("HEAD"), remap = false) + private void sable$forceUpdate(final CallbackInfo ci) { + if (this.sable$forceUpdateTicks == 5) { //only update every 5 ticks + this.basinChecker.scheduleUpdate(); + + this.sable$forceUpdateTicks = 0; + } + + this.sable$forceUpdateTicks++; + } + + @Redirect(method = "getBasin", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockEntity(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity;")) + private BlockEntity sable$accountForSubLevels(final Level level, final BlockPos pos) { + final ActiveSableCompanion helper = Sable.HELPER; + return helper.runIncludingSubLevels(level, pos.getCenter(), true, helper.getContaining(level, pos), (subLevel, internalPos) -> level.getBlockEntity(internalPos)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.java new file mode 100644 index 0000000..9dc6638 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/BlockEntityBehaviourMixin.java @@ -0,0 +1,50 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility; + +import com.simibubi.create.content.kinetics.belt.behaviour.BeltProcessingBehaviour; +import com.simibubi.create.content.kinetics.belt.behaviour.DirectBeltInputBehaviour; +import com.simibubi.create.content.kinetics.belt.behaviour.TransportedItemStackHandlerBehaviour; +import com.simibubi.create.foundation.blockEntity.behaviour.BehaviourType; +import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import com.simibubi.create.foundation.blockEntity.behaviour.edgeInteraction.EdgeInteractionBehaviour; +import com.simibubi.create.foundation.blockEntity.behaviour.inventory.InvManipulationBehaviour; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(BlockEntityBehaviour.class) +public abstract class BlockEntityBehaviourMixin { + + @Shadow + public static T get(final BlockEntity be, final BehaviourType type) { + return null; + } + + @Inject(method = "get(Lnet/minecraft/world/level/BlockGetter;Lnet/minecraft/core/BlockPos;Lcom/simibubi/create/foundation/blockEntity/behaviour/BehaviourType;)Lcom/simibubi/create/foundation/blockEntity/behaviour/BlockEntityBehaviour;", + at = @At(value = "HEAD"), remap = false, cancellable = true) + private static void sable$accountForSubLevels(final BlockGetter reader, final BlockPos pos, final BehaviourType type, final CallbackInfoReturnable cir) { + if (reader instanceof final Level level && BlockEntityBehaviourMixin.sable$checkType(type)) { + final ActiveSableCompanion helper = Sable.HELPER; + final BlockEntity caughtBE = helper.runIncludingSubLevels(level, pos.getCenter(), true, helper.getContaining(level, pos), (subLevel, internalPos) -> level.getBlockEntity(internalPos)); + + if (caughtBE != null) { + cir.setReturnValue(get(caughtBE, type)); + } + } + } + + @Unique + private static boolean sable$checkType(final BehaviourType type) { + return type == BeltProcessingBehaviour.TYPE || type == DirectBeltInputBehaviour.TYPE || + type == TransportedItemStackHandlerBehaviour.TYPE || type == InvManipulationBehaviour.TYPE || + type == EdgeInteractionBehaviour.TYPE; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.java new file mode 100644 index 0000000..321f9bc --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/BlockBreakingMovementBehaviourMixin.java @@ -0,0 +1,94 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.block_breaking_behaviour; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.simibubi.create.api.behaviour.movement.MovementBehaviour; +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import com.simibubi.create.content.kinetics.base.BlockBreakingMovementBehaviour; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.block_breakers.SubLevelBlockBreakingUtility; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BlockBreakingMovementBehaviour.class) +public abstract class BlockBreakingMovementBehaviourMixin implements MovementBehaviour { + + @Shadow + public abstract boolean canBreak(Level world, BlockPos breakingPos, BlockState state); + + @WrapMethod(method = "visitNewPosition") + public void sable$checkPosition(final MovementContext context, final BlockPos pos, final Operation original) { + if (!context.stall) { + original.call(context, pos); + + if (!context.stall) { + final Vec3 localCenter = context.localPos.getCenter(); + final Vec3 sublevelLocalCenter = context.contraption.entity.toGlobalVector(localCenter, 1); + final Vec3 subLevelLocalDir = context.rotation.apply(this.getActiveAreaOffset(context)); + + + final BlockPos breakingPosWSublevel = SubLevelBlockBreakingUtility.findBreakingPos( + (blockPos, state) -> this.canBreak(context.world, blockPos, state), + Sable.HELPER.getContaining(context.world, context.contraption.anchor), + context.world, + subLevelLocalDir, + sublevelLocalCenter, + pos + ); + + original.call(context, breakingPosWSublevel); + } + } + } + + @Inject(method = "tick", at = @At("HEAD"), cancellable = true) + public void sable$testBreakingPosDist(final MovementContext context, final CallbackInfo ci) { + final CompoundTag data = context.data; + if (data.contains("BreakingPos") || data.contains("LastPos")) { + final BlockPos blockPos = NbtUtils.readBlockPos(data, "BreakingPos").orElseGet(() -> NbtUtils.readBlockPos(data, "LastPos").orElse(null)); + + if (blockPos != null) { + final Vec3 localCenter = context.localPos.getCenter(); + + Vec3 sublevelLocalCenter = context.contraption.entity.toGlobalVector(localCenter, 1); + Vec3 targetCenter = blockPos.getCenter(); + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel parentSublevel = helper.getContaining(context.world, context.contraption.anchor); + final SubLevel targetSubLevel = helper.getContaining(context.world, blockPos); + + if (parentSublevel != null) { + sublevelLocalCenter = parentSublevel.logicalPose().transformPosition(sublevelLocalCenter); + } + + if (targetSubLevel != null) { + targetCenter = targetSubLevel.logicalPose().transformPosition(targetCenter); + } + + if (sublevelLocalCenter.distanceToSqr(targetCenter) > 2 * 2) { + data.remove("Progress"); + data.remove("TicksUntilNextProgress"); + data.remove("BreakingPos"); + data.remove("LastPos"); + data.remove("WaitingTicks"); + + context.stall = false; + context.world.destroyBlockProgress(data.getInt("BreakerId"), blockPos, -1); + + ci.cancel(); + } + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.java new file mode 100644 index 0000000..27d73b0 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/block_breaking_behaviour/SawMovementBehaviourMixin.java @@ -0,0 +1,38 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.block_breaking_behaviour; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import com.simibubi.create.content.kinetics.saw.SawMovementBehaviour; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(SawMovementBehaviour.class) +public class SawMovementBehaviourMixin { + @Redirect(method = "dropItemFromCutTree", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + public double sable$fixSpeed(final Vec3 instance, final Vec3 vec3, @Local(argsOnly = true) final MovementContext context) { + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(context.world, instance, vec3)); + } + + @Redirect(method = "dropItemFromCutTree", at = @At(value = "FIELD", target = "Lcom/simibubi/create/content/contraptions/behaviour/MovementContext;relativeMotion:Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$fixRelativeMotion(final MovementContext instance, @Local(argsOnly = true) final MovementContext context, @Local(ordinal = 0) final Vec3 dropPos) { + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel parentSublevel = helper.getContaining(context.world, context.contraption.anchor); + final SubLevel targetSublevel = helper.getContaining(context.world, dropPos); + Vec3 orignalMotion = context.relativeMotion; + + if (parentSublevel != null) { + orignalMotion = parentSublevel.logicalPose().transformNormal(orignalMotion); + } + + if (targetSublevel != null) { + orignalMotion = targetSublevel.logicalPose().transformNormalInverse(orignalMotion); + } + + return orignalMotion; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.java new file mode 100644 index 0000000..72d4de1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_behaviour/HarvesterMovementBehaviourMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.harvester_behaviour; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterMovementBehaviour; +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.behavior_compatibility.harvester_block_entity.DummyMovementContext; +import net.minecraft.core.BlockPos; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(HarvesterMovementBehaviour.class) +public class HarvesterMovementBehaviourMixin { + + @SuppressWarnings("ResultOfMethodCallIgnored") + @WrapMethod(method = "visitNewPosition") + public void sable$checkAllPositions(final MovementContext context, final BlockPos pos, final Operation original) { + if (context instanceof DummyMovementContext) { + original.call(context, pos); + return; + } + + final ActiveSableCompanion helper = Sable.HELPER; + helper.runIncludingSubLevels(context.world, pos.getCenter(), true, helper.getContaining(context.contraption.entity), (sublevel, blockPos) -> { + original.call(context, blockPos); + return null; + }); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.java new file mode 100644 index 0000000..02357aa --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityMixin.java @@ -0,0 +1,71 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.harvester_block_entity; + +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterBlockEntity; +import com.simibubi.create.foundation.blockEntity.CachedRenderBBBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester.HarvesterLerpedSpeed; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester.HarvesterTicker; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.createmod.catnip.animation.LerpedFloat; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Position; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(HarvesterBlockEntity.class) +public abstract class HarvesterBlockEntityMixin extends CachedRenderBBBlockEntity implements HarvesterLerpedSpeed, BlockEntitySubLevelActor { + + @Unique + private final LerpedFloat sable$lerpedSpeed = LerpedFloat.angular(); + + @Unique + private BlockPos sable$previousPos = BlockPos.ZERO; + + public HarvesterBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Override + public void sable$clientTick() { + final double velocity = Sable.HELPER.getVelocity(this.getLevel(), JOMLConversion.atCenterOf(this.getBlockPos())).length(); + this.sable$lerpedSpeed.chase(this.sable$lerpedSpeed.getValue() + (velocity * 5), 20f, LerpedFloat.Chaser.LINEAR); + + this.sable$lerpedSpeed.tickChaser(); + } + + /** + * Server tick + */ + @Override + public void sable$tick(final ServerSubLevel subLevel) { + final ActiveSableCompanion helper = Sable.HELPER; + final Position center = this.getBlockPos().getCenter(); + BlockPos gatheredPos = helper.runIncludingSubLevels(this.level, center, false, helper.getContaining(this), (sublevel, pos) -> { + if (HarvesterTicker.blockEntityBehaviour.isValidCrop(this.level, pos, this.level.getBlockState(pos))) { + return pos; + } + + return null; + }); + + if (gatheredPos == null) { + gatheredPos = BlockPos.containing(helper.projectOutOfSubLevel(this.level, center)); + } + + if (!this.sable$previousPos.equals(gatheredPos)) { + this.sable$previousPos = gatheredPos; + HarvesterTicker.dummyMovementContext.update(this.level, this.getBlockPos(), this.getBlockState(), null); + HarvesterTicker.blockEntityBehaviour.visitNewPosition(HarvesterTicker.dummyMovementContext, this.sable$previousPos); + } + } + + @Override + public LerpedFloat sable$getLerpedFloat() { + return this.sable$lerpedSpeed; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.java new file mode 100644 index 0000000..0cc64ef --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockEntityUsageMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.harvester_block_entity; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterMovementBehaviour; +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.behavior_compatibility.harvester_block_entity.DummyMovementContext; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester.HarvesterTicker; +import net.minecraft.world.item.ItemStack; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(HarvesterMovementBehaviour.class) +public class HarvesterBlockEntityUsageMixin { + + @WrapOperation(method = "lambda$visitNewPosition$0", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/actors/harvester/HarvesterMovementBehaviour;collectOrDropItem(Lcom/simibubi/create/content/contraptions/behaviour/MovementContext;Lnet/minecraft/world/item/ItemStack;)V")) + public void sable$replaceDropItem(final HarvesterMovementBehaviour instance, final MovementContext movementContext, final ItemStack itemStack, final Operation original) { + if (movementContext instanceof DummyMovementContext) { + HarvesterTicker.dropItem(movementContext.world, itemStack, movementContext.localPos); + } else { + original.call(instance, movementContext, itemStack); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.java new file mode 100644 index 0000000..8ba2c3c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterBlockMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.harvester_block_entity; + +import com.simibubi.create.content.contraptions.actors.AttachedActorBlock; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterBlock; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterBlockEntity; +import com.simibubi.create.foundation.block.IBE; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester.HarvesterTicker; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(HarvesterBlock.class) +public abstract class HarvesterBlockMixin extends AttachedActorBlock implements IBE { + protected HarvesterBlockMixin(final Properties properties) { + super(properties); + } + + @Override + public BlockEntityTicker getTicker(final Level level, final BlockState state, final BlockEntityType blockEntityType) { + if (level.isClientSide) { + return new HarvesterTicker(); + } else { + return null; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.java new file mode 100644 index 0000000..d3ff231 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/behaviour_compatibility/harvester_block_entity/HarvesterRendererMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.behaviour_compatibility.harvester_block_entity; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterBlockEntity; +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterRenderer; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester.HarvesterLerpedSpeed; +import net.createmod.catnip.math.AngleHelper; +import net.createmod.catnip.render.SuperByteBuffer; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(HarvesterRenderer.class) +public class HarvesterRendererMixin { + + @WrapOperation(method = "renderSafe(Lcom/simibubi/create/content/contraptions/actors/harvester/HarvesterBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/actors/harvester/HarvesterRenderer;transform(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/Direction;Lnet/createmod/catnip/render/SuperByteBuffer;FLnet/minecraft/world/phys/Vec3;)V")) + public void sable$smoothSpeed(final Level world, final Direction facing, final SuperByteBuffer superBuffer, final float speed, final Vec3 pivot, final Operation original, @Local final HarvesterBlockEntity be, @Local final float pt) { + if (be.getAnimatedSpeed() != 0) { + original.call(world, facing, superBuffer, speed, pivot); + } else { // use our own transformation + final float originOffset = 1.0f / 16.0f; + final Vec3 rotOffset = new Vec3(0, pivot.y * originOffset, pivot.z * originOffset); + + superBuffer.rotateCentered(AngleHelper.rad(AngleHelper.horizontalAngle(facing)), Direction.UP) + .translate(rotOffset.x, rotOffset.y, rotOffset.z) + .rotate(AngleHelper.rad(-((HarvesterLerpedSpeed) be).sable$getLerpedFloat().getValue(pt)), Direction.WEST) + .translate(-rotOffset.x, -rotOffset.y, -rotOffset.z); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.java new file mode 100644 index 0000000..5262634 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockEntityMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.belt; + +import com.simibubi.create.content.kinetics.base.KineticBlockEntity; +import com.simibubi.create.content.kinetics.belt.BeltBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(BeltBlockEntity.class) +public abstract class BeltBlockEntityMixin extends KineticBlockEntity { + + public BeltBlockEntityMixin(final BlockEntityType typeIn, final BlockPos pos, final BlockState state) { + super(typeIn, pos, state); + } + + @Override + public void onSpeedChanged(final float previousSpeed) { + super.onSpeedChanged(previousSpeed); + final SubLevelContainer container = SubLevelContainer.getContainer(this.level); + + if (container instanceof final ServerSubLevelContainer serverSubLevelContainer) { + final SubLevelPhysicsSystem physicsSystem = serverSubLevelContainer.physicsSystem(); + + final BlockPos blockPos = this.getBlockPos(); + physicsSystem.wakeUpObjectsAt(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + + final SubLevel subLevel = Sable.HELPER.getContaining(this); + if (subLevel instanceof final ServerSubLevel serverSubLevel) { + physicsSystem.getPipeline().wakeUp(serverSubLevel); + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.java new file mode 100644 index 0000000..aee1a54 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltBlockMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.belt; + +import com.simibubi.create.content.kinetics.belt.BeltBlock; +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.neoforge.physics.callback.BeltBlockCallback; +import org.spongepowered.asm.mixin.Mixin; + +/** + * Allows belts on Sub-Levels to obtain entities as passengers + */ +@Mixin(BeltBlock.class) +public class BeltBlockMixin implements BlockWithSubLevelCollisionCallback { + + @Override + public BlockSubLevelCollisionCallback sable$getCallback() { + return BeltBlockCallback.INSTANCE; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.java new file mode 100644 index 0000000..35e319c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltMovementHandlerMixin.java @@ -0,0 +1,66 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.belt; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.kinetics.belt.BeltBlockEntity; +import com.simibubi.create.content.kinetics.belt.transport.BeltMovementHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyVariable; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BeltMovementHandler.class) +public class BeltMovementHandlerMixin { + + @WrapOperation(method = "transportEntity", at = { + @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getY()D", ordinal = 0), + @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getY()D", ordinal = 1), + @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getY()D", ordinal = 2) + }) + private static double sable$getLocalEntityY(final Entity instance, final Operation original, @Local(argsOnly = true) final BeltBlockEntity be) { + final SubLevel subLevel = Sable.HELPER.getContaining(be); + + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(instance.position()).y; + } + + return original.call(instance); + } + + @ModifyVariable(method = "transportEntity", at = @At("STORE"), ordinal = 0) + private static double sable$diffCenter(final double originalValue, + @Local(argsOnly = true) final BeltBlockEntity be, + @Local(argsOnly = true) final Entity entity, + @Local(ordinal = 0) final BlockPos pos, + @Local final Direction.Axis axis) { + + final SubLevel subLevel = Sable.HELPER.getContaining(be); + + if (subLevel == null) { + return originalValue; + } + + final Vec3 entityPos = subLevel.logicalPose().transformPositionInverse(entity.position()); + + return axis == Direction.Axis.Z ? (pos.getX() + 0.5 - entityPos.x()) : (pos.getZ() + 0.5 - entityPos.z()); + } + + @Inject(method = "transportEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;maxUpStep()F")) + private static void sable$maxUpStep(final BeltBlockEntity beltBE, final Entity entityIn, final BeltMovementHandler.TransportedEntityInfo info, final CallbackInfo ci, @Local(ordinal = 0) final LocalRef movement) { + final SubLevel subLevel = Sable.HELPER.getContaining(beltBE); + + if (subLevel != null) { + movement.set(subLevel.logicalPose().transformNormal(movement.get())); + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.java new file mode 100644 index 0000000..34a786d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/belt/BeltRendererMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.belt; + +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.belt.BeltBlockEntity; +import com.simibubi.create.content.kinetics.belt.BeltRenderer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.Camera; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Make upright items face the the camera properly on belts + */ +@Mixin(BeltRenderer.class) +public class BeltRendererMixin { + + @ModifyExpressionValue(method = "renderItem", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;getPosition()Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$renderViewEntityPosition(final Vec3 original, @Local(argsOnly = true) final BeltBlockEntity be) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(be); + if (subLevel != null) { + return subLevel.renderPose().transformPositionInverse(original); + } else { + return original; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.java new file mode 100644 index 0000000..e3ef78b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/big_outlines_interaction/BigOutlinesMixin.java @@ -0,0 +1,107 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.big_outlines_interaction; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.foundation.block.BigOutlines; +import com.simibubi.create.foundation.utility.RaycastHelper; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.raycasts.SableRaycastHelper; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.createmod.catnip.animation.AnimationTickHolder; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.VoxelShape; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import java.util.function.Predicate; + +/** + * Makes it so big outline tracing (which affects mc.hitResult) is able to target sublevels + */ +@Mixin(BigOutlines.class) +public class BigOutlinesMixin { + + /** + * Needed to pass the sublevel from the function to its lambda, + * This code is client side only so this should be thread safe + * + */ + @Unique + private static ClientSubLevel sable$predicateSubLevel = null; + + @WrapOperation(method = "pick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$modifyMaxRange(Vec3 worldHitPos, + final Vec3 origin, + final Operation original, + @Local final Minecraft minecraft) { + final ClientSubLevel containing = Sable.HELPER.getContainingClient(worldHitPos); + final float pt = AnimationTickHolder.getPartialTicks(minecraft.level); + + if (containing != null) { + worldHitPos = containing.renderPose(pt).transformPosition(worldHitPos); + } + + return original.call(worldHitPos, origin); + } + + @Redirect(method = "pick", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/foundation/utility/RaycastHelper;rayTraceUntil(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;)Lcom/simibubi/create/foundation/utility/RaycastHelper$PredicateTraceResult;")) + private static RaycastHelper.PredicateTraceResult sable$useSubLevelInclusiveCast(final Vec3 worldOrigin, + final Vec3 worldTarget, + final Predicate predicate, + @Local final Minecraft minecraft) { + return SableRaycastHelper.rayCastUntilWithSublevels(minecraft.level, worldOrigin, worldTarget, (subLevel, pos) -> { + sable$predicateSubLevel = (ClientSubLevel) subLevel; + return predicate.test(pos); + }); + } + + @WrapOperation( + method = "lambda$pick$0", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/world/phys/shapes/VoxelShape;clip(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/BlockHitResult;" + ) + ) + private static BlockHitResult sable$clipUsingLocalSubLevel(final VoxelShape instance, + final Vec3 origin, + final Vec3 target, + final BlockPos blockPos, + final Operation original) { + final float pt = AnimationTickHolder.getPartialTicks(Minecraft.getInstance().level); + + if (sable$predicateSubLevel == null) { + return original.call(instance, origin, target, blockPos); + } else { + final Vec3 localOrigin = sable$predicateSubLevel.renderPose(pt).transformPositionInverse(origin); + final Vec3 localTarget = sable$predicateSubLevel.renderPose(pt).transformPositionInverse(target); + return original.call(instance, localOrigin, localTarget, blockPos); + } + } + + @WrapOperation( + method = "lambda$pick$0", + at = @At( + value = "INVOKE", + target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D" + ) + ) + private static double sable$distanceToWithSubLevel(final Vec3 instance, + final Vec3 origin, + final Operation original) { + final float pt = AnimationTickHolder.getPartialTicks(Minecraft.getInstance().level); + + if (sable$predicateSubLevel == null) { + return original.call(instance, origin); + } else { + final Vec3 localOrigin = sable$predicateSubLevel.renderPose(pt).transformPositionInverse(origin); + return original.call(instance, localOrigin); + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.java new file mode 100644 index 0000000..bb2e3c5 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blaze_burner/BlazeBurnerBlockEntityMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.blaze_burner; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalDoubleRef; +import com.simibubi.create.content.processing.burner.BlazeBurnerBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BlazeBurnerBlockEntity.class) +public abstract class BlazeBurnerBlockEntityMixin extends SmartBlockEntity { + + @Unique + private static Vector3d sable$playerPos = new Vector3d(); + + public BlazeBurnerBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Inject(method = "tickAnimation", at = @At(value = "INVOKE_ASSIGN", target = "Lnet/minecraft/client/player/LocalPlayer;getZ()D")) + private void sable$projectPlayerPosition(final CallbackInfo ci, @Local(name = "x") final LocalDoubleRef x, @Local(name = "z") final LocalDoubleRef z, @Local(name = "player") final LocalPlayer player) { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + if (subLevel != null) { + sable$playerPos.set(x.get(), player.getEyeY(), z.get()); + subLevel.logicalPose().transformPositionInverse(sable$playerPos); + x.set(sable$playerPos.x); + z.set(sable$playerPos.z); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.java new file mode 100644 index 0000000..17245a9 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityDamageMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.block_breakers; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.drill.DrillBlock; +import com.simibubi.create.content.kinetics.saw.SawBlock; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.math.LevelReusedVectors; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LevelExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin({SawBlock.class, DrillBlock.class}) +public class BlockBreakingKineticBlockEntityDamageMixin { + + @WrapOperation(method = "entityInside", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;intersects(Lnet/minecraft/world/phys/AABB;)Z")) + public boolean sable$fixBlockBreakerDamage(final AABB blockAABB, final AABB entityAABB, final Operation original, @Local(argsOnly = true) final Level level) { + final Vector3d jomlCenterPos = JOMLConversion.toJOML(blockAABB.getCenter()); + final SubLevel parentSublevel = Sable.HELPER.getContaining(level, jomlCenterPos); + + if (parentSublevel != null) { + final LevelReusedVectors jomlSink = ((LevelExtension) level).sable$getJOMLSink(); + + final Vector3d entityCenter = JOMLConversion.toJOML(entityAABB.getCenter()); + final Vector3d sideLengths = new Vector3d(entityAABB.getXsize(), entityAABB.getYsize(), entityAABB.getZsize()); + + final OrientedBoundingBox3d burnerBounds = new OrientedBoundingBox3d(parentSublevel.logicalPose().transformPosition(jomlCenterPos), new Vector3d(blockAABB.getXsize()), parentSublevel.logicalPose().orientation(), jomlSink); + final OrientedBoundingBox3d entityBounds = new OrientedBoundingBox3d(entityCenter, sideLengths, JOMLConversion.QUAT_IDENTITY, jomlSink); + + // use the rotated player hit-box for consistency with sub-level collision + jomlSink.entityBoxOrientation.identity(); + final double yaw = SubLevelEntityCollision.getHitBoxYaw(parentSublevel.logicalPose()); + jomlSink.entityBoxOrientation.rotateY(yaw); + entityBounds.setOrientation(jomlSink.entityBoxOrientation); + + if (OrientedBoundingBox3d.sat(burnerBounds, entityBounds).lengthSquared() > 0.0) { + return true; + } + } + + return original.call(blockAABB, entityAABB); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.java new file mode 100644 index 0000000..f39d1ed --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/block_breakers/BlockBreakingKineticBlockEntityMixin.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.block_breakers; + +import com.simibubi.create.content.kinetics.base.BlockBreakingKineticBlockEntity; +import com.simibubi.create.content.kinetics.saw.SawBlock; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.block_breakers.SubLevelBlockBreakingUtility; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes blocks such as drills and saws work between sublevels and the main level + */ +@Mixin(BlockBreakingKineticBlockEntity.class) +public abstract class BlockBreakingKineticBlockEntityMixin extends BlockEntity { + + public BlockBreakingKineticBlockEntityMixin(final BlockEntityType pType, final BlockPos pPos, final BlockState pBlockState) { + super(pType, pPos, pBlockState); + } + + @Shadow + public abstract boolean canBreak(BlockState stateToBreak, float blockHardness); + + @Redirect(remap = false, method = "tick", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/base/BlockBreakingKineticBlockEntity;getBreakingPos()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$preGetBlockToBreak(final BlockBreakingKineticBlockEntity be) { + assert this.level != null; + + final BlockPos breakingPos = this.getBlockPos().relative(this.getBlockState().getValue(BlockStateProperties.FACING)); + final BlockState originalStateToBreak = this.level.getBlockState(breakingPos); + + if (!this.canBreak(originalStateToBreak, originalStateToBreak.getDestroySpeed(this.level, breakingPos))) { + return SubLevelBlockBreakingUtility.findBreakingPos((pos, state) -> this.canBreak(state, state.getDestroySpeed(this.level, pos)), + Sable.HELPER.getContaining(this), + this.getLevel(), + Vec3.atLowerCornerOf(this.getBlockState().getValue(SawBlock.FACING).getNormal()), + this.getBlockPos().getCenter(), + breakingPos); + } else { + return breakingPos; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.java new file mode 100644 index 0000000..d46bfa9 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/blueprint/BlueprintEntityMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.blueprint; + +import com.simibubi.create.content.equipment.blueprint.BlueprintEntity; +import dev.ryanhcode.sable.annotation.MixinModVersionConstraint; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@MixinModVersionConstraint("(,6.0.11)") +@Mixin(BlueprintEntity.class) +public abstract class BlueprintEntityMixin extends Entity { + public BlueprintEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * @author IThundxr + * @reason Switch to Player#canInteractWithEntity, which is patched by sable. + */ + @Overwrite + public boolean canPlayerUse(final Player player) { + return player.canInteractWithEntity(this, 8); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.java new file mode 100644 index 0000000..7183165 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockEntityMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.chain_conveyor; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorPackage; +import net.minecraft.core.BlockPos; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.Map; + +@Mixin(ChainConveyorBlockEntity.class) +public abstract class ChainConveyorBlockEntityMixin { + + @Shadow + public Map connectionStats; + + @Shadow + Map> travellingPackages; + + @Shadow + protected abstract void drop(ChainConveyorPackage box); + + @Inject(method = "removeInvalidConnections", at = @At(value = "INVOKE", target = "Ljava/util/Iterator;remove()V")) + public void dropInvalidPackages(final CallbackInfo ci, @Local(name = "next") final BlockPos next) { + this.connectionStats.remove(next); + + final List packages = this.travellingPackages.remove(next); + if (packages != null && !packages.isEmpty()) { + for (final ChainConveyorPackage box : packages) { + this.drop(box); + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.java new file mode 100644 index 0000000..467d746 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/chain_conveyor/ChainConveyorBlockMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.chain_conveyor; + +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlock; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import dev.ryanhcode.sable.api.block.BlockSubLevelAssemblyListener; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(ChainConveyorBlock.class) +public class ChainConveyorBlockMixin implements BlockSubLevelAssemblyListener { + + @Override + public void beforeMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + if (originLevel.getBlockEntity(oldPos) instanceof final ChainConveyorBlockEntity be) { + // This tells all connected conveyors to re-check and detach if necessary next tick + be.notifyConnectedToValidate(); + } + } + + @Override + public void afterMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + if (resultingLevel.getBlockEntity(newPos) instanceof final ChainConveyorBlockEntity be) { + be.checkInvalid = true; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.java new file mode 100644 index 0000000..a6661e8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/AbstractContraptionEntityMixin.java @@ -0,0 +1,274 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.Contraption; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockSubLevelLiftProvider; +import dev.ryanhcode.sable.api.physics.mass.MassTracker; +import dev.ryanhcode.sable.api.sublevel.KinematicContraption; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.physics.config.block_properties.PhysicsBlockPropertyHelper; +import dev.ryanhcode.sable.physics.floating_block.FloatingBlockCluster; +import dev.ryanhcode.sable.physics.floating_block.FloatingClusterContainer; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import net.createmod.catnip.math.VecHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import net.minecraft.world.phys.Vec3; +import org.joml.Matrix3d; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.Map; + +@Mixin(AbstractContraptionEntity.class) +public abstract class AbstractContraptionEntityMixin extends Entity implements KinematicContraption { + + @Unique + private final Vector3d sable$cachedGlobalPosition = new Vector3d(); + @Unique + private final Object2ObjectMap sable$liftProviderContexts = new Object2ObjectOpenHashMap<>(); + @Unique + private final FloatingClusterContainer sable$floatingClusterContainer = new FloatingClusterContainer(); + @Shadow + protected Contraption contraption; + @Unique + private BoundingBox3i sable$localBounds; + @Unique + private MassTracker sable$massTracker; + @Unique + private boolean sable$added = false; + + public AbstractContraptionEntityMixin(final EntityType arg, final Level arg2) { + super(arg, arg2); + } + + @Shadow + public abstract Vec3 applyRotation(Vec3 localPos, float partialTicks); + + @Shadow + public abstract Vec3 getPrevAnchorVec(); + + @Shadow + public abstract Vec3 getAnchorVec(); + + @Redirect(method = "moveCollidedEntitiesOnDisassembly", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;toLocalVector(Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$applyTransform(final AbstractContraptionEntity instance, final Vec3 localVec, final float partialTicks) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance); + + return instance.toLocalVector(subLevel != null ? subLevel.logicalPose().transformPositionInverse(localVec) : localVec, partialTicks); + } + + @WrapOperation(method = "moveCollidedEntitiesOnDisassembly", at = { + @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;setPos(DDD)V"), + @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;teleportTo(DDD)V") + }) + private void sable$applyTransform(final Entity instance, final double x, final double y, final double z, final Operation original) { + final Vector3d pos = Sable.HELPER.projectOutOfSubLevel(instance.level(), new Vector3d(x, y, z)); + + original.call(instance, pos.x, pos.y, pos.z); + } + + @Inject(method = "tick", at = @At(value = "INVOKE", target = "Ljava/util/Map;entrySet()Ljava/util/Set;"), remap = false) + private void sable$contraptionInitialize(final CallbackInfo ci) { + if (!this.sable$added && this.level() instanceof final ServerLevel serverLevel) { + this.sable$buildProperties(); + this.sable$addToPlot(); + this.sable$addToPipeline(serverLevel); + this.sable$added = true; + } + } + + @Override + public Map sable$liftProviders() { + return this.sable$liftProviderContexts; + } + + /** + * @author RyanH + * @reason Players shouldn't be saved to the same chunks as contraptions in sub-levels + */ + @Overwrite + @Override + public CompoundTag saveWithoutId(final CompoundTag nbt) { + final Vec3 vec = this.position(); + final List passengers = this.getPassengers(); + + for (final Entity entity : passengers) { + // Only part added by sable \/ + if (entity instanceof Player) continue; + + // setPos has world accessing side-effects when removed == null + entity.removalReason = RemovalReason.UNLOADED_TO_CHUNK; + + // Gather passengers into same chunk when saving + final Vec3 prevVec = entity.position(); + entity.setPosRaw(vec.x, prevVec.y, vec.z); + + // Super requires all passengers to not be removed in order to write them to the + // tag + entity.removalReason = null; + } + + final CompoundTag tag = super.saveWithoutId(nbt); + return tag; + } + + @Unique + private void sable$buildProperties() { + for (final Map.Entry entry : this.contraption.getBlocks().entrySet()) { + final BlockPos blockPos = entry.getKey(); + final StructureTemplate.StructureBlockInfo info = entry.getValue(); + final BlockState state = info.state(); + + if (state.isAir()) continue; + + if (this.sable$localBounds == null) { + this.sable$localBounds = new BoundingBox3i(blockPos.getX(), blockPos.getY(), blockPos.getZ(), blockPos.getX(), blockPos.getY(), blockPos.getZ()); + } + + this.sable$localBounds.expandTo(blockPos.getX(), blockPos.getY(), blockPos.getZ()); + + if (state.getBlock() instanceof final BlockSubLevelLiftProvider prov) { + final BlockSubLevelLiftProvider.LiftProviderContext context = new BlockSubLevelLiftProvider.LiftProviderContext(blockPos, state, Vec3.atLowerCornerOf(prov.sable$getNormal(state).getNormal())); + this.sable$liftProviderContexts.put(blockPos, context); + } + if (PhysicsBlockPropertyHelper.getFloatingMaterial(state) != null) + this.sable$floatingClusterContainer.addFloatingBlock(state, new Vector3d(blockPos.getX(), blockPos.getY(), blockPos.getZ())); + } + + assert this.sable$localBounds != null; + this.sable$massTracker = MassTracker.build(this.sable$blockGetter(), this.sable$localBounds); + final Vector3d temp = this.sable$massTracker.getCenterOfMass().negate(new Vector3d()).add(0.5, 0.5, 0.5); + for (final FloatingBlockCluster cluster : this.sable$floatingClusterContainer.clusters) { + cluster.getBlockData().translateOrigin(temp); + } + } + + @Unique + private void sable$addToPlot() { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + + if (subLevel != null) { + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + serverSubLevel.getPlot().addContraption(this); + } + } + + @Unique + private void sable$removeFromPlot() { + final SubLevel subLevel = Sable.HELPER.getContaining(this); + + if (subLevel != null) { + final ServerSubLevel serverSubLevel = (ServerSubLevel) subLevel; + + serverSubLevel.getPlot().removeContraption(this); + } + } + + @Override + public void setRemoved(final RemovalReason removalReason) { + if (this.level() instanceof final ServerLevel serverLevel) { + this.sable$removeFromPlot(); + this.sable$removeFromPipeline(serverLevel); + } + + super.setRemoved(removalReason); + } + + @Unique + private void sable$addToPipeline(final ServerLevel serverLevel) { + final SubLevelPhysicsSystem physics = SubLevelPhysicsSystem.require(serverLevel); + physics.getPipeline().add(this); + } + + @Unique + private void sable$removeFromPipeline(final ServerLevel serverLevel) { + final SubLevelPhysicsSystem physics = SubLevelPhysicsSystem.require(serverLevel); + physics.getPipeline().remove(this); + } + + @Override + public void sable$getLocalBounds(final BoundingBox3i bounds) { + bounds.set(this.sable$localBounds); + } + + @Override + public BlockGetter sable$blockGetter() { + return this.contraption.getContraptionWorld(); + } + + @Override + public MassTracker sable$getMassTracker() { + return this.sable$massTracker; + } + + @Override + public Vector3dc sable$getPosition(final double partialTick) { + Vec3 localVec = JOMLConversion.toMojang(this.sable$massTracker.getCenterOfMass()); + + final Vec3 anchor = this.getPrevAnchorVec().lerp(this.getAnchorVec(), partialTick); + final Vec3 rotationOffset = VecHelper.getCenterOf(BlockPos.ZERO); + localVec = localVec.subtract(rotationOffset); + localVec = this.applyRotation(localVec, (float) partialTick); + localVec = localVec.add(rotationOffset).add(anchor); + + return JOMLConversion.toJOML(localVec, this.sable$cachedGlobalPosition); + } + + @Override + public Quaterniond sable$getOrientation(final double partialTick) { + final Matrix3d matrix = new Matrix3d(); + final Vector3d tempColumn = new Vector3d(); + + for (int i = 0; i < 3; i++) { + matrix.getColumn(i, tempColumn); + + final Vec3 transformed = this.applyRotation(JOMLConversion.toMojang(tempColumn), (float) partialTick); + matrix.setColumn(i, transformed.x, transformed.y, transformed.z); + } + + return matrix.getNormalizedRotation(new Quaterniond()); + } + + @Override + public boolean sable$isValid() { + return !this.isRemoved(); + } + + @Override + public boolean sable$shouldCollide() { + return true; + } + + @Override + public FloatingClusterContainer sable$getFloatingClusterContainer() { + return this.sable$floatingClusterContainer; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.java new file mode 100644 index 0000000..4b77a68 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionColliderMixin.java @@ -0,0 +1,156 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.ContraptionCollider; +import com.simibubi.create.foundation.collision.Matrix3d; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(value = ContraptionCollider.class, remap = false) +public class ContraptionColliderMixin { + + @Unique + private static org.joml.Matrix3d sable$toJOML(final Matrix3d createMatrix) { + final org.joml.Matrix3d jomlMatrix = new org.joml.Matrix3d(); + + final Matrix3dAccessor accessor = ((Matrix3dAccessor) createMatrix); + jomlMatrix.set( + accessor.getM00(), accessor.getM01(), accessor.getM02(), + accessor.getM10(), accessor.getM11(), accessor.getM12(), + accessor.getM20(), accessor.getM21(), accessor.getM22() + ); + + return jomlMatrix; + } + + @Unique + private static Matrix3d sable$toCreate(final org.joml.Matrix3d jomlMatrix) { + final Matrix3d createMatrix = new Matrix3d(); + final Matrix3dAccessor accessor = ((Matrix3dAccessor) createMatrix); + + accessor.setM00(jomlMatrix.m00); + accessor.setM01(jomlMatrix.m01); + accessor.setM02(jomlMatrix.m02); + + accessor.setM10(jomlMatrix.m10); + accessor.setM11(jomlMatrix.m11); + accessor.setM12(jomlMatrix.m12); + + accessor.setM20(jomlMatrix.m20); + accessor.setM21(jomlMatrix.m21); + accessor.setM22(jomlMatrix.m22); + + return createMatrix; + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + private static AABB sable$contraptionBounds(final AbstractContraptionEntity instance, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance); + contraptionSubLevel.set(subLevel); + + if (subLevel != null) { + final BoundingBox3d globalBB = new BoundingBox3d(instance.getBoundingBox()); + globalBB.transform(subLevel.logicalPose(), globalBB); + return globalBB.toMojang(); + } + + return instance.getBoundingBox(); + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;expandTowards(DDD)Lnet/minecraft/world/phys/AABB;")) + private static AABB sable$entityQueryBounds(final AABB instance, final double d, final double e, final double f, @Local(argsOnly = true) final AbstractContraptionEntity contraption, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + + if (subLevel != null) { + final BoundingBox3d globalBB = new BoundingBox3d(contraption.getBoundingBox().inflate(2.0).expandTowards(d, e, f)); + globalBB.transform(subLevel.logicalPose(), globalBB); + return globalBB.toMojang(); + } + + return instance.expandTowards(d, e, f); + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;position()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$contraptionPosition(final AbstractContraptionEntity instance, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + + if (subLevel != null) { + return subLevel.logicalPose().transformPosition(instance.position()); + } + + return instance.position(); + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getPrevPositionVec()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getPrevPositionVec(final AbstractContraptionEntity instance, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + + if (subLevel != null) { + return subLevel.logicalPose().transformPosition(instance.getPrevPositionVec()); + } + + return instance.getPrevPositionVec(); + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getAnchorVec()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getAnchorVec(final AbstractContraptionEntity instance, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + + if (subLevel != null) { + return subLevel.logicalPose().transformPosition(instance.getAnchorVec().add(0.5, 0.5, 0.5)).subtract(0.5, 0.5, 0.5); + } + + return instance.getAnchorVec(); + } + + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity$ContraptionRotationState;asMatrix()Lcom/simibubi/create/foundation/collision/Matrix3d;")) + private static Matrix3d sable$rotationMatrix(final AbstractContraptionEntity.ContraptionRotationState rotationState, @Local(argsOnly = true) final AbstractContraptionEntity contraption, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + if (subLevel != null) { + final Pose3d pose = subLevel.logicalPose(); + final org.joml.Matrix3d jomlMatrix = sable$toJOML(rotationState.asMatrix()); + + jomlMatrix.rotateLocal(pose.orientation()); + return sable$toCreate(jomlMatrix); + } + + return rotationState.asMatrix(); + } + + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;toLocalVector(Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$toLocalVector(final AbstractContraptionEntity instance, final Vec3 localVec, final float partialTicks, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + + if (subLevel != null) { + final Pose3d pose = subLevel.logicalPose(); + return instance.toLocalVector(pose.transformPositionInverse(localVec), partialTicks); + } + + return instance.toLocalVector(localVec, partialTicks); + } + @Redirect(method = "collideEntities", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getContactPointMotion(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getContactPointMotion(final AbstractContraptionEntity instance, final Vec3 globalContactPoint, @Share("subLevel") final LocalRef contraptionSubLevel) { + final SubLevel subLevel = contraptionSubLevel.get(); + if (subLevel != null) { + final Pose3d pose = subLevel.logicalPose(); + final Vec3 localContactPoint = pose.transformPositionInverse(globalContactPoint); + final Vec3 motion = pose.transformNormal(instance.getContactPointMotion(localContactPoint)) + .add(globalContactPoint.subtract(subLevel.lastPose().transformPosition(localContactPoint))); + return motion; + } + + return instance.getContactPointMotion(globalContactPoint); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.java new file mode 100644 index 0000000..8de181d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionControlsRendererMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.contraptions.actors.contraptionControls.ContraptionControlsRenderer; +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import com.simibubi.create.content.contraptions.render.ContraptionMatrices; +import dev.ryanhcode.sable.Sable; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the rendering for the Contraption Controls to take sublevels into account + */ +@Mixin(value = ContraptionControlsRenderer.class, remap = false) +public class ContraptionControlsRendererMixin { + @Redirect(method = "renderInContraption", + at = @At(value = "FIELD", target = "Lcom/simibubi/create/content/contraptions/behaviour/MovementContext;position:Lnet/minecraft/world/phys/Vec3;", ordinal = 1)) + private static Vec3 sable$distanceRemix(final MovementContext instance) { + return Sable.HELPER.projectOutOfSubLevel(instance.world, instance.position); + } + + @Redirect(method = "renderInContraption", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/render/ContraptionMatrices;getViewProjection()Lcom/mojang/blaze3d/vertex/PoseStack;")) + private static PoseStack sable$getViewProjection(final ContraptionMatrices instance) { + return instance.getModelViewProjection(); + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.java new file mode 100644 index 0000000..0604b54 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionHandlerClientMixin.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.ContraptionHandlerClient; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the right click interaction and contraption raytracing in Create to take into account sublevels + */ +@Mixin(ContraptionHandlerClient.class) +public abstract class ContraptionHandlerClientMixin { + + @Redirect(method = "getRayInputs", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$projectDistanceTo1(final Vec3 eyePos, final Vec3 itemPos) { + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, eyePos, itemPos)); + } + + @Redirect(method = "rightClickingOnContraptionsGetsHandledLocally", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$projectDistanceTo2(final Vec3 eyePos, final Vec3 itemPos) { + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, eyePos, itemPos)); + } + + @Redirect(method = "rightClickingOnContraptionsGetsHandledLocally", + at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + private static AABB sable$moveBoundingBoxToProjectedPos(final AbstractContraptionEntity instance){ + final Vec3 projectedPos = Sable.HELPER.projectOutOfSubLevel(instance.level(), instance.getAnchorVec()); + final AABB boundingBox = instance.getBoundingBox(); + + return boundingBox.move(Vec3.ZERO.subtract(boundingBox.getCenter())).move(projectedPos); + } + + @Redirect(method = "rayTraceContraption", + at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;toLocalVector(Lnet/minecraft/world/phys/Vec3;F)Lnet/minecraft/world/phys/Vec3;"), + remap = false) + private static Vec3 sable$projectedContraptionClip(final AbstractContraptionEntity abce, Vec3 localVec, final float partialTicks){ + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel sublevel1 = helper.getContaining(abce.level(), localVec); + final SubLevel contraptionSublevel = helper.getContaining(abce); + + if (contraptionSublevel != sublevel1) { + if (sublevel1 != null) + localVec = sublevel1.logicalPose().transformPosition(localVec); + + if (contraptionSublevel != null) + localVec = contraptionSublevel.logicalPose().transformPositionInverse(localVec); + } + + return abce.toLocalVector(localVec, 1); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.java new file mode 100644 index 0000000..08b56cd --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/ContraptionVisualMixin.java @@ -0,0 +1,98 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.render.ContraptionVisual; +import dev.engine_room.flywheel.api.visualization.VisualEmbedding; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.lib.visual.AbstractEntityVisual; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.EmbeddedEnvironmentExtension; +import net.minecraft.core.Vec3i; +import net.minecraft.util.Mth; +import net.minecraft.world.level.ChunkPos; +import org.joml.Quaternionf; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Fixes the rendering of contraption visuals on sub-levels + */ +@Mixin(ContraptionVisual.class) +public abstract class ContraptionVisualMixin extends AbstractEntityVisual { + + @Shadow + @Final + protected VisualEmbedding embedding; + @Shadow + @Final + private PoseStack contraptionMatrix; + + public ContraptionVisualMixin(final VisualizationContext ctx, final AbstractContraptionEntity entity, final float partialTick) { + super(ctx, entity, partialTick); + } + + @Inject(method = "setEmbeddingMatrices", at = @At(value = "HEAD"), cancellable = true) + private void sable$setEmbeddingMatrices(final float partialTick, final CallbackInfo ci) { + final SubLevelContainer container = SubLevelContainer.getContainer(this.entity.level()); + + if (container == null) + return; + + final ChunkPos chunkPos = this.entity.chunkPosition(); + final boolean inBounds = container.inBounds(chunkPos); + + if (!inBounds) + return; + + final int plotX = (chunkPos.x >> container.getLogPlotSize()) - container.getOrigin().x; + final int plotZ = (chunkPos.z >> container.getLogPlotSize()) - container.getOrigin().y; + + final FlywheelCompatNeoForge.SubLevelFlwRenderState state = FlywheelCompatNeoForge.getInfo(ChunkPos.asLong(plotX, plotZ)); + + if (state == null) return; + + final Vec3i origin = this.renderOrigin(); + + final Vector3d pos = new Vector3d(); + if (this.entity.isPrevPosInvalid()) { + pos.x = this.entity.getX(); + pos.y = this.entity.getY(); + pos.z = this.entity.getZ(); + } else { + pos.x = Mth.lerp(partialTick, this.entity.xo, this.entity.getX()); + pos.y = Mth.lerp(partialTick, this.entity.yo, this.entity.getY()); + pos.z = Mth.lerp(partialTick, this.entity.zo, this.entity.getZ()); + } + + final ChunkPos centerChunk = state.centerChunk; + final PoseStack sceneMatrix = new PoseStack(); + sceneMatrix.translate( + (float) (pos.x - centerChunk.getMinBlockX()), + (float) pos.y, + (float) (pos.z - centerChunk.getMinBlockZ()) + ); + this.entity.applyLocalTransforms(sceneMatrix, partialTick); + + final Pose3dc renderPose = state.renderPose; + renderPose.transformPosition(pos).sub(origin.getX(), origin.getY(), origin.getZ()); + + this.contraptionMatrix.setIdentity(); + this.contraptionMatrix.translate(pos.x, pos.y, pos.z); + this.contraptionMatrix.mulPose(new Quaternionf(renderPose.orientation())); + this.entity.applyLocalTransforms(this.contraptionMatrix, partialTick); + this.embedding.transforms(this.contraptionMatrix.last().pose(), this.contraptionMatrix.last().normal()); + + if (this.embedding instanceof final EmbeddedEnvironmentExtension extension) { + extension.sable$setLightingInfo(sceneMatrix.last().pose(), state.sceneID, state.latestSkyLightScale / 15.0f); + } + ci.cancel(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.java new file mode 100644 index 0000000..427ed19 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/Matrix3dAccessor.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import com.simibubi.create.foundation.collision.Matrix3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(Matrix3d.class) +public interface Matrix3dAccessor { + @Accessor("m00") + double getM00(); + + @Accessor("m00") + void setM00(double value); + + @Accessor("m01") + double getM01(); + + @Accessor("m01") + void setM01(double value); + + @Accessor("m02") + double getM02(); + + @Accessor("m02") + void setM02(double value); + + @Accessor("m10") + double getM10(); + + @Accessor("m10") + void setM10(double value); + + @Accessor("m11") + double getM11(); + + @Accessor("m11") + void setM11(double value); + + @Accessor("m12") + double getM12(); + + @Accessor("m12") + void setM12(double value); + + @Accessor("m20") + double getM20(); + + @Accessor("m20") + void setM20(double value); + + @Accessor("m21") + double getM21(); + + @Accessor("m21") + void setM21(double value); + + @Accessor("m22") + double getM22(); + + @Accessor("m22") + void setM22(double value); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.java new file mode 100644 index 0000000..8128a8e --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/contraptions/VisualizationEventHandlerMixin.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.contraptions; + +import dev.engine_room.flywheel.impl.visualization.VisualizationEventHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(VisualizationEventHandler.class) +public class VisualizationEventHandlerMixin { + + @Inject(method = "onEntityJoinLevel", at = @At("TAIL")) + private static void sable$onEntityJoinLevel(final Level level, final Entity entity, final CallbackInfo ci) { + final SubLevel subLevel = Sable.HELPER.getContaining(entity); + + if (subLevel != null) { + FlywheelCompatNeoForge.createRenderInfo(level, subLevel); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.java new file mode 100644 index 0000000..6dea253 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel/CrushingWheelBlockMixin.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.crushing_wheel; + +import com.simibubi.create.content.kinetics.base.RotatedPillarKineticBlock; +import com.simibubi.create.content.kinetics.crusher.CrushingWheelBlock; +import com.simibubi.create.content.kinetics.crusher.CrushingWheelBlockEntity; +import com.simibubi.create.foundation.block.IBE; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; + +@Mixin(CrushingWheelBlock.class) +public abstract class CrushingWheelBlockMixin extends RotatedPillarKineticBlock implements IBE { + + public CrushingWheelBlockMixin(final Properties arg) { + super(arg); + } + + /** + * @author RyanH + * @reason Take into account sub-levels existing + */ + @Overwrite + public void entityInside(final BlockState state, final Level level, final BlockPos pos, final Entity entityIn) { + final SubLevel subLevel = Sable.HELPER.getContaining(level, pos); + Vec3 entityPos = entityIn.position(); + if (subLevel != null) { + entityPos = subLevel.logicalPose().transformPositionInverse(entityPos); + } + + if (entityPos.y() < pos.getY() + 1.25f || !entityIn.onGround()) + return; + + final float speed = this.getBlockEntityOptional(level, pos).map(CrushingWheelBlockEntity::getSpeed) + .orElse(0f); + + double x = 0; + double z = 0; + + final double entityX = entityPos.x(); + final double entityZ = entityPos.z(); + + if (state.getValue(AXIS) == Direction.Axis.X) { + z = speed / 20f; + x += (pos.getX() + .5f - entityX) * .1f; + } + + if (state.getValue(AXIS) == Direction.Axis.Z) { + x = speed / -20f; + z += (pos.getZ() + .5f - entityZ) * .1f; + } + + Vec3 impulse = new Vec3(x, 0, z); + if (subLevel != null) { + impulse = subLevel.logicalPose().transformNormal(impulse); + } + + entityIn.setDeltaMovement(entityIn.getDeltaMovement().add(impulse)); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.java new file mode 100644 index 0000000..7ee2b01 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/crushing_wheel_entity_processing/CrushingWheelControllerBlockEntityMixin.java @@ -0,0 +1,80 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.crushing_wheel_entity_processing; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.kinetics.crusher.CrushingWheelControllerBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(CrushingWheelControllerBlockEntity.class) +public abstract class CrushingWheelControllerBlockEntityMixin extends SmartBlockEntity { + + @Shadow + public Entity processingEntity; + @Unique + private SubLevel sable$parentSublevel = null; + + public CrushingWheelControllerBlockEntityMixin(final BlockEntityType typeIn, final BlockPos pos, final BlockState state) { + super(typeIn, pos, state); + } + + @Inject(method = "tick", at = @At("HEAD")) + public void sable$initSublevel(final CallbackInfo ci) { + this.sable$parentSublevel = Sable.HELPER.getContaining(this); + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + public AABB sable$pushEntityLocalAABB(final Entity instance, final Operation original) { + final AABB boundingBox = original.call(instance); + if (this.sable$parentSublevel != null) { + final BoundingBox3d bb3d = new BoundingBox3d(boundingBox); + bb3d.transformInverse(this.sable$parentSublevel.logicalPose()); + return bb3d.toMojang(); + } + + return boundingBox; + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getX()D")) + public double sable$pushEntityLocalX(final Entity instance, final Operation original) { + Double x = original.call(instance); + if (this.sable$parentSublevel != null) { + x = this.sable$parentSublevel.logicalPose().transformPositionInverse(instance.position()).x; + } + + return x; + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getY()D")) + public double sable$pushEntityLocalY(final Entity instance, final Operation original) { + Double y = original.call(instance); + if (this.sable$parentSublevel != null) { + y = this.sable$parentSublevel.logicalPose().transformPositionInverse(instance.position()).y; + } + + return y; + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;getZ()D")) + public double sable$pushEntityLocalZ(final Entity instance, final Operation original) { + Double z = original.call(instance); + if (this.sable$parentSublevel != null) { + z = this.sable$parentSublevel.logicalPose().transformPositionInverse(instance.position()).z; + } + + return z; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.java new file mode 100644 index 0000000..1de3fde --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/deployer/DeployerBlockEntityMixin.java @@ -0,0 +1,70 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.deployer; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.deployer.DeployerBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.createmod.catnip.data.Iterate; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.Redirect; + +import javax.annotation.Nullable; + +@Mixin(DeployerBlockEntity.class) +public abstract class DeployerBlockEntityMixin extends SmartBlockEntity { + + public DeployerBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Redirect(method = "start", at = @At(value = "INVOKE", target = "Ljava/lang/Math;min(DD)D")) + private double sable$deployerMin(final double a, final double b, @Local(ordinal = 1) final Vec3 rayOrigin, @Local(ordinal = 0) final BlockHitResult result) { + return Math.min(Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(this.level, result.getLocation(), rayOrigin)), b); + } + + + @ModifyArg(method = "activate", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/deployer/DeployerHandler;activate(Lcom/simibubi/create/content/kinetics/deployer/DeployerFakePlayer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/phys/Vec3;Lcom/simibubi/create/content/kinetics/deployer/DeployerBlockEntity$Mode;)V"), index = 2, remap = false) + private BlockPos sable$checkPositions(final BlockPos pos) { + final Vec3 centerPos = Vec3.atCenterOf(pos); + + ActiveSableCompanion helper = Sable.HELPER; + final BlockPos gatheredPos = helper.runIncludingSubLevels(this.getLevel(), centerPos, true, helper.getContaining(this), this::sable$getState); + + if (gatheredPos != null) + return gatheredPos; + + return pos; + } + + @Unique + @Nullable + private BlockPos sable$getState(final SubLevel subLevel, final BlockPos pos) { + final Level level = this.getLevel(); + assert level != null; + + final BlockState state = level.getBlockState(pos); + + if (!state.isAir()) { + return pos; + } else { + for (final Direction direction : Iterate.directions) { + if (!level.getBlockState(pos.relative(direction)).isAir()) + return pos; + } + } + + return null; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.java new file mode 100644 index 0000000..86e2a9d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/depot/DepotRendererMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.depot; + +import com.llamalad7.mixinextras.injector.ModifyExpressionValue; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.logistics.depot.DepotRenderer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(DepotRenderer.class) +public class DepotRendererMixin { + @ModifyExpressionValue(method = "renderItem", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/Camera;getPosition()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$renderViewEntityPosition(final Vec3 original, @Local(argsOnly = true) final Vec3 position) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(position); + if (subLevel != null) { + return subLevel.renderPose().transformPositionInverse(original); + } else { + return original; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.java new file mode 100644 index 0000000..d08964b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/ClickToLinkBlockItemMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.display_link; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.redstone.displayLink.ClickToLinkBlockItem; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(ClickToLinkBlockItem.class) +public class ClickToLinkBlockItemMixin { + + @WrapOperation(method = "useOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;closerThan(Lnet/minecraft/core/Vec3i;D)Z")) + public boolean sable$accountForSubLevels(final BlockPos instance, final Vec3i pos, final double v, final Operation original, @Local final Level level) { + return Sable.HELPER.distanceSquaredWithSubLevels(level, instance.getX() + 0.5, instance.getY() + 0.5, instance.getZ() + 0.5, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5) < v * v; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.java new file mode 100644 index 0000000..eced13c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockEntityMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.display_link; + +import com.simibubi.create.content.redstone.displayLink.DisplayLinkBlockEntity; +import com.simibubi.create.content.redstone.displayLink.LinkWithBulbBlockEntity; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(DisplayLinkBlockEntity.class) +public abstract class DisplayLinkBlockEntityMixin extends LinkWithBulbBlockEntity { + + private DisplayLinkBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Inject(method = "getTargetPosition", at = @At("TAIL"), cancellable = true) + public void sable$accountForSubLevels(final CallbackInfoReturnable cir) { + final BlockPos target = cir.getReturnValue(); + final int range = AllConfigs.server().logistics.displayLinkRange.get(); + final BlockPos pos = this.getBlockPos(); + if (Sable.HELPER.distanceSquaredWithSubLevels(this.level, pos.getX() + 0.5, pos.getY() + 0.5, pos.getZ() + 0.5, target.getX() + 0.5, target.getY() + 0.5, target.getZ() + 0.5) >= range * range) { + cir.setReturnValue(BlockPos.ZERO); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.java new file mode 100644 index 0000000..fdc9400 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/display_link/DisplayLinkBlockMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.display_link; + +import com.simibubi.create.content.redstone.displayLink.DisplayLinkBlock; +import com.simibubi.create.content.redstone.displayLink.DisplayLinkBlockEntity; +import dev.ryanhcode.sable.api.block.BlockSubLevelAssemblyListener; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(DisplayLinkBlock.class) +public class DisplayLinkBlockMixin implements BlockSubLevelAssemblyListener { + + @SuppressWarnings("AddedMixinMembersNamePattern") + @Override + public void afterMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + if (originLevel.getBlockEntity(oldPos) instanceof final DisplayLinkBlockEntity be && resultingLevel.getBlockEntity(newPos) instanceof final DisplayLinkBlockEntity newBe) { + newBe.target(be.getTargetPosition()); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.java new file mode 100644 index 0000000..0495bbf --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/ejector/EjectorBlockEntityMixin.java @@ -0,0 +1,164 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.ejector; + +import com.simibubi.create.content.logistics.depot.EjectorBlockEntity; +import com.simibubi.create.content.logistics.depot.EntityLauncher; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.ClipContextExtension; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.ejector.SubLevelScanResult; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Makes weighted ejectors apply an impulse to sub-levels above them + */ +@Mixin(EjectorBlockEntity.class) +public abstract class EjectorBlockEntityMixin extends SmartBlockEntity { + + @Unique + private static final int SUB_LEVEL_SCAN_TIME = 2; + @Shadow + private boolean launch; + @Shadow + private EjectorBlockEntity.State state; + @Shadow + private boolean powered; + @Shadow + private EntityLauncher launcher; + @Unique + private int sable$scanTimer = SUB_LEVEL_SCAN_TIME; + @Unique + private int sable$readyTimer = 0; + + public EjectorBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Shadow + public abstract void activate(); + + @Shadow + protected abstract Direction getFacing(); + + @Inject(method = "activateDeferred", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/logistics/depot/EjectorBlockEntity;launchItems()V")) + public void sable$launchSubLevels(final CallbackInfo ci) { + final SubLevelScanResult scanResult = this.sable$lookForLaunchableSubLevels(); + if (scanResult == null) return; + + final ServerSubLevel otherSubLevel = scanResult.serverSubLevel(); + final SubLevelPhysicsSystem physicsSystem = SubLevelContainer.getContainer((ServerLevel) this.level).physicsSystem(); + + final BlockPos blockPos = this.getBlockPos(); + final SubLevel containingSubLevel = Sable.HELPER.getContaining(this.level, blockPos); + + // math to compute the impulse to launch a 1 kpg sub-level to the target + // authored by Eriksonn + final double c = 3.0 * Math.max(1.0, this.launcher.getHorizontalDistance() / 10.0); // velocity constraint [m/s] + final double px = this.launcher.getHorizontalDistance(); + final double py = this.launcher.getVerticalDistance(); + + // TODO: Make this use gravity at the ejector position + final double g = -DimensionPhysicsData.getGravity(this.level).y; + + double vx = c; + if (py > 0) { + vx = Math.min(c, px * Math.sqrt(0.5 * g / py)); + } + + final double vy = vx * py / px + 0.5 * g * px / vx; + + final Vec3 verticalImpulse = new Vec3(0.0, vy, 0.0); + + final Vec3 localHit = Vec3.atLowerCornerOf(this.getFacing().getNormal()).scale(vx) + .add(verticalImpulse); + + final Vec3 globalHitDirection = containingSubLevel != null ? + containingSubLevel.logicalPose().transformNormal(localHit) : + localHit; + + final RigidBodyHandle otherHandle = physicsSystem.getPhysicsHandle(otherSubLevel); + otherHandle.applyImpulseAtPoint(scanResult.result().getBlockPos().getCenter(), otherSubLevel.logicalPose().transformNormalInverse(globalHitDirection)); + + if (containingSubLevel != null) { + final RigidBodyHandle handle = physicsSystem.getPhysicsHandle((ServerSubLevel) containingSubLevel); + handle.applyImpulseAtPoint(blockPos.getCenter(), containingSubLevel.logicalPose().transformNormalInverse(globalHitDirection).scale(-1.0)); + } + } + + private @Nullable SubLevelScanResult sable$lookForLaunchableSubLevels() { + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel containingSubLevel = helper.getContaining(this); + final BlockPos blockPos = this.getBlockPos(); + final ClipContext clipContext = new ClipContext(blockPos.getCenter(), Vec3.upFromBottomCenterOf(blockPos, 1.0), ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, CollisionContext.empty()); + final ClipContextExtension extension = (ClipContextExtension) clipContext; + + // Ignore the main world. We only care about sub-levels. + extension.sable$setIgnoreMainLevel(true); + extension.sable$setIgnoredSubLevel(containingSubLevel); + + final BlockHitResult result = this.level.clip(clipContext); + + if (result.getType() == HitResult.Type.MISS) return null; + + final SubLevel subLevel = helper.getContaining(this.level, result.getLocation()); + if (!(subLevel instanceof final ServerSubLevel serverSubLevel)) { + return null; + } + + return new SubLevelScanResult(result, serverSubLevel); + } + + @Inject(method = "tick", at = @At("HEAD")) + public void sable$tick(final CallbackInfo ci) { + if (this.level.isClientSide && !this.isVirtual()) return; + + this.sable$scanTimer--; + + if (this.sable$scanTimer <= 0) { + this.sable$scanTimer = SUB_LEVEL_SCAN_TIME; + + if (this.state == EjectorBlockEntity.State.RETRACTING || + this.powered || + this.launcher.getHorizontalDistance() == 0) { + this.sable$readyTimer = 0; + return; + } + + final SubLevelScanResult result = this.sable$lookForLaunchableSubLevels(); + + if (result != null) { + this.sable$readyTimer++; + } else { + this.sable$readyTimer = 0; + } + + if (this.sable$readyTimer > 3) { + this.activate(); + this.notifyUpdate(); + this.sable$readyTimer = 0; + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.java new file mode 100644 index 0000000..8b517aa --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/elevator_controls/ElevatorControlsHandlerMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.elevator_controls; + +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.contraptions.elevator.ElevatorControlsHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the range check on Elevator Controls in Create to take into account sub-levels + */ +@Mixin(ElevatorControlsHandler.class) +public class ElevatorControlsHandlerMixin { + + @Redirect(method = "onScroll", + at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/contraptions/AbstractContraptionEntity;getBoundingBox()Lnet/minecraft/world/phys/AABB;")) + private static AABB sable$projectAABB(final AbstractContraptionEntity instance) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance.level(), instance.getBoundingBox().getCenter()); + final AABB projectedBB = instance.getBoundingBox(); + + if (subLevel != null) { + final BoundingBox3d bb = new BoundingBox3d(projectedBB); + return bb.transform(subLevel.logicalPose(), bb).toMojang(); + } + + return projectedBB; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.java new file mode 100644 index 0000000..dc883af --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BasinBlockMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.entity_falls_on_block; + +import com.simibubi.create.content.processing.basin.BasinBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes basins use the standing on position of items instead of their block position for picking them up, as the + * on position of entities will be overwritten by Sable to be inside of the plot of a sub-level an item is resting on + */ +@Mixin(BasinBlock.class) +public class BasinBlockMixin { + + @Redirect(method = "updateEntityAfterFallOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$updateEntityAfterFallOn(final Entity instance) { + return instance.getOnPos(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.java new file mode 100644 index 0000000..b80816c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/BeltMillstoneBlocksMixin.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.entity_falls_on_block; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.AllBlocks; +import com.simibubi.create.content.kinetics.belt.BeltBlock; +import com.simibubi.create.content.kinetics.millstone.MillstoneBlock; +import com.tterrag.registrate.util.entry.BlockEntry; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin({ BeltBlock.class, MillstoneBlock.class }) +public class BeltMillstoneBlocksMixin extends Block { + + public BeltMillstoneBlocksMixin(final Properties pProperties) { + super(pProperties); + } + + @WrapOperation(method = "updateEntityAfterFallOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;blockPosition()Lnet/minecraft/core/BlockPos;")) + public BlockPos sable$checkForSubLevels(final Entity instance, final Operation original) { + final Level level = instance.level(); + + BlockEntry entry; + if ((Object) this instanceof BeltBlock) { + entry = AllBlocks.BELT; + } else { + entry = AllBlocks.MILLSTONE; + } + + final ActiveSableCompanion helper = Sable.HELPER; + final BlockPos gatheredBeltPos = helper.runIncludingSubLevels(level, instance.position(), true, null, (subLevel, internalPos) -> { + if (entry.has(level.getBlockState(internalPos))) { + return internalPos; + } else if (entry.has(level.getBlockState(internalPos.below()))) { + return internalPos.below(); + } + + return null; + }); + + if (gatheredBeltPos != null) { + return gatheredBeltPos; + } + + return original.call(instance); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.java new file mode 100644 index 0000000..79acc1d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SawBlockMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.entity_falls_on_block; + +import com.simibubi.create.content.kinetics.saw.SawBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(SawBlock.class) +public class SawBlockMixin { + + @Redirect(method = "updateEntityAfterFallOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$updateEntityAfterFallOn(final Entity instance) { + return instance.getOnPos(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.java new file mode 100644 index 0000000..a475f1b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/entity_falls_on_block/SeatBlockMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.entity_falls_on_block; + +import com.simibubi.create.content.contraptions.actors.seat.SeatBlock; +import com.simibubi.create.content.processing.basin.BasinBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes seats use the standing on position of entities instead of their block position for sitting them down, as the + * on position of entities will be overwritten by Sable to be inside of the plot of a sub-level an entity is resting on + */ +@Mixin(SeatBlock.class) +public class SeatBlockMixin { + + @Redirect(method = "updateEntityAfterFallOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$updateEntityAfterFallOn(final Entity instance) { + return instance.getOnPos(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.java new file mode 100644 index 0000000..c7b134c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/factory_panel/FactoryPanelConnectionHandlerMixin.java @@ -0,0 +1,20 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.factory_panel; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.logistics.factoryBoard.FactoryPanelConnectionHandler; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(FactoryPanelConnectionHandler.class) +public class FactoryPanelConnectionHandlerMixin { + + @Redirect(method = "clientTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;closerThan(Lnet/minecraft/core/Vec3i;D)Z")) + private static boolean closerThan(final BlockPos instance, final Vec3i pos, final double maxDistance, @Local final Minecraft mc) { + return Sable.HELPER.distanceSquaredWithSubLevels(mc.level, instance.getX(), instance.getY(), instance.getZ(), pos.getX(), pos.getY(), pos.getZ()) < maxDistance * maxDistance; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.java new file mode 100644 index 0000000..98407f4 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fans_provide_force/EncasedFanBlockEntityMixin.java @@ -0,0 +1,61 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.fans_provide_force; + +import com.simibubi.create.content.kinetics.base.KineticBlockEntity; +import com.simibubi.create.content.kinetics.fan.EncasedFanBlock; +import com.simibubi.create.content.kinetics.fan.EncasedFanBlockEntity; +import dev.ryanhcode.sable.api.block.propeller.BlockEntityPropeller; +import dev.ryanhcode.sable.api.block.propeller.BlockEntitySubLevelPropellerActor; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(EncasedFanBlockEntity.class) +public class EncasedFanBlockEntityMixin extends KineticBlockEntity implements BlockEntitySubLevelPropellerActor, BlockEntityPropeller { + + @Unique + private boolean sable$blocked; + + public EncasedFanBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Override + public void sable$tick(final ServerSubLevel subLevel) { + final BlockPos frontPos = this.getBlockPos().relative(this.getBlockState().getValue(EncasedFanBlock.FACING)); + this.sable$blocked = !this.level.getBlockState(frontPos).isAir(); + } + + @Override + public BlockEntityPropeller getPropeller() { + return this; + } + + @Override + public Direction getBlockDirection() { + return this.getBlockState().getValue(EncasedFanBlock.FACING); + } + + protected float sable$getPropSpeed() { + final float rotationSpeed = convertToAngular(this.getSpeed()); + return this.getBlockDirection().getAxisDirection().getStep() * rotationSpeed * (10 / 3); + } + + @Override + public double getAirflow() { + return 0.1f * this.sable$getPropSpeed(); + } + + @Override + public double getThrust() { + return 0.3f * this.sable$getPropSpeed(); + } + + @Override + public boolean isActive() { + return !this.sable$blocked && Math.abs(this.sable$getPropSpeed()) > 0.01f; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.java new file mode 100644 index 0000000..c59c7a0 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/OpenEndedPipeMixin.java @@ -0,0 +1,71 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.fluid_handling; + +import com.simibubi.create.content.fluids.OpenEndedPipe; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.createmod.catnip.math.BlockFace; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(OpenEndedPipe.class) +public abstract class OpenEndedPipeMixin { + @Shadow + private BlockPos outputPos; + + @Shadow + private Level world; + + @Shadow + public abstract BlockPos getPos(); + + @Unique + private BlockPos sable$plotOutputPos; + + @Inject(method = "", at = @At("TAIL"), remap = false) + private void sable$saveCurrentPos(final BlockFace face, final CallbackInfo ci) { + this.sable$plotOutputPos = this.outputPos; + } + + @Redirect(method = "*", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;")) + private BlockState sable$getBlockstateInclSublevels(final Level level, final BlockPos pos) { + this.outputPos = this.sable$plotOutputPos; + + final ActiveSableCompanion helper = Sable.HELPER; + final Vec3 checkPos = Vec3.atCenterOf(this.sable$plotOutputPos); + BlockState gatheredState = helper.runIncludingSubLevels(level, checkPos, true, helper.getContaining(level, checkPos), this::sable$gatherState); + if (gatheredState == null) { + this.outputPos = this.sable$plotOutputPos; + gatheredState = level.getBlockState(this.sable$plotOutputPos); + } + + return gatheredState; + } + + @Unique + private BlockState sable$gatherState(final SubLevel level, final BlockPos b) { + final BlockState checkedState = this.world.getBlockState(b); + if (!checkedState.isAir()) { + this.outputPos = b; + return checkedState; + } + + return null; + } + + @Redirect(method = "provideFluidToSpace", + at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;setBlock(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;I)Z", ordinal = 1)) + private boolean sable$preventInWorldPlace(final Level instance, final BlockPos pPos, final BlockState pNesubleveltate, final int pFlags) { + return instance.setBlock(this.sable$plotOutputPos, pNesubleveltate, 3); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.java new file mode 100644 index 0000000..14db0b9 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_handling/PipeConnectionMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.fluid_handling; + +import com.simibubi.create.content.fluids.PipeConnection; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(PipeConnection.class) +public class PipeConnectionMixin { + @Redirect(method = "isRenderEntityWithinDistance", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$distanceIncludingSubLevels(final Vec3 instance, final Vec3 vec3) { + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, vec3)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.java new file mode 100644 index 0000000..a19e865 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/fluid_tank_heating/BoilerDataMixin.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.fluid_tank_heating; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.fluids.tank.BoilerData; +import com.simibubi.create.content.fluids.tank.FluidTankBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BoilerData.class) +public class BoilerDataMixin { + + @Shadow + public boolean needsHeatLevelUpdate; + + @Unique + private int sable$ticksUntilUpdate = 20; + + + @Inject(method = "tick", at = @At(value = "FIELD", target = "Lcom/simibubi/create/content/fluids/tank/BoilerData;ticksUntilNextSample:I", ordinal = 0)) + public void sable$forceUpdateHeatIfDisconnected(final FluidTankBlockEntity controller, final CallbackInfo ci) { + if (this.sable$ticksUntilUpdate-- <= 0) { + this.sable$ticksUntilUpdate = 20; + this.needsHeatLevelUpdate = true; + } + } + + @WrapOperation(method = "updateTemperature", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/api/boiler/BoilerHeater;findHeat(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/block/state/BlockState;)F")) + public float sable$subLevelHeating(final Level level, final BlockPos pos, final BlockState state, final Operation original) { + final Float originalHeat = original.call(level, pos, state); + if (originalHeat != -1) { + return originalHeat; + } + + final ActiveSableCompanion helper = Sable.HELPER; + final Float gatheredHeat = helper.runIncludingSubLevels(level, pos.getCenter(), false, helper.getContaining(level, pos), (subLevel, internalPos) -> { + final Float internalHeat = original.call(level, internalPos, level.getBlockState(internalPos)); + + if (internalHeat != -1) { + return internalHeat; + } + + return null; + + }); + + if (gatheredHeat != null) { + return gatheredHeat; + } + + return -1; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.java new file mode 100644 index 0000000..4b53a83 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/flywheel/FlywheelBlockEntityMixin.java @@ -0,0 +1,53 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.flywheel; + +import com.simibubi.create.content.kinetics.base.IRotate; +import com.simibubi.create.content.kinetics.base.KineticBlockEntity; +import com.simibubi.create.content.kinetics.flywheel.FlywheelBlockEntity; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelReactionWheel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(FlywheelBlockEntity.class) +public abstract class FlywheelBlockEntityMixin extends KineticBlockEntity implements BlockEntitySubLevelReactionWheel { + + @Unique float sable$smoothedSpeed = 0; + public FlywheelBlockEntityMixin(BlockEntityType arg, BlockPos arg2, BlockState arg3) { + super(arg, arg2, arg3); + } + + @Inject(method = "tick",at = @At("HEAD")) + public void sable$tick(CallbackInfo ci) + { + sable$smoothedSpeed += (speed - sable$smoothedSpeed) / 32f; + } + + @Inject(method = "write",at = @At("TAIL")) + public void sable$write(CompoundTag compound, HolderLookup.Provider registries, boolean clientPacket, CallbackInfo ci) + { + compound.putFloat("SmoothedSpeed",sable$smoothedSpeed); + } + @Inject(method = "read",at = @At("TAIL")) + public void sable$read(CompoundTag compound, HolderLookup.Provider registries, boolean clientPacket, CallbackInfo ci) + { + sable$smoothedSpeed = compound.getFloat("SmoothedSpeed"); + } + + @Override + public void sable$getAngularVelocity(Vector3d v) { + Direction.Axis axis = ((IRotate) getBlockState() + .getBlock()).getRotationAxis(getBlockState()); + Direction dir = Direction.get(Direction.AxisDirection.NEGATIVE,axis); + float angularSpeed = sable$smoothedSpeed * (float)Math.TAU / 60f; + v.set(dir.getStepX(),dir.getStepY(),dir.getStepZ()).mul(angularSpeed); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.java new file mode 100644 index 0000000..7fbcf30 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorBlockEntityMixin.java @@ -0,0 +1,57 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorPackage; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.Map; + +@Mixin(ChainConveyorBlockEntity.class) +public abstract class ChainConveyorBlockEntityMixin extends SmartBlockEntity { + + public ChainConveyorBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @WrapOperation(method = "exportToPort", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/logistics/packagePort/frogport/FrogportBlockEntity;isBackedUp()Z")) + public boolean sable$testSublevelDistance(final FrogportBlockEntity instance, final Operation original, @Local(argsOnly = true) final ChainConveyorPackage chainPackage) { + final Vec3 packagePos = chainPackage.worldPosition; + if (packagePos == null) { + return original.call(instance); + } + + final Vec3 frogPos = instance.getBlockPos().getCenter(); + + final int maxRange = AllConfigs.server().logistics.packagePortRange.get() + 2; + return original.call(instance) || Sable.HELPER.distanceSquaredWithSubLevels(instance.getLevel(), packagePos, frogPos) > maxRange * maxRange; + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorBlockEntity;notifyPortToAnticipate(Lnet/minecraft/core/BlockPos;)V")) + public void sable$testSublevelDistance1(final ChainConveyorBlockEntity instance, final BlockPos blockPos, final Operation original, @Local(name = "portEntry") final Map.Entry entry, @Local final ChainConveyorPackage chainPackage) { + final Vec3 packagePos = chainPackage.worldPosition; + if (packagePos == null) { + original.call(instance, blockPos); + return; + } + + final Vec3 frogPos = this.worldPosition.offset(entry.getKey()).getCenter(); + + final int maxRange = AllConfigs.server().logistics.packagePortRange.get() + 2; + + if (Sable.HELPER.distanceSquaredWithSubLevels(this.getLevel(), packagePos, frogPos) < maxRange * maxRange) { + original.call(instance, blockPos); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.java new file mode 100644 index 0000000..d08ae96 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorInteractionHandlerMixin.java @@ -0,0 +1,90 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorInteractionHandler; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorShape; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.MultiBufferSource; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ChainConveyorInteractionHandler.class) +public class ChainConveyorInteractionHandlerMixin { + + @Shadow + public static BlockPos selectedLift; + + @Shadow + public static ChainConveyorShape selectedShape; + + @Redirect(method = "clientTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$addParticleInternal(final Vec3 instance, final Vec3 vec3) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, vec3); + } + + @Redirect(method = "clientTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;subtract(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;", ordinal = 0)) + private static Vec3 sable$fromSubLiftVec(final Vec3 from, final Vec3 liftVec, @Local(ordinal = 0) final ChainConveyorShape shape) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(liftVec); + + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(from).subtract(liftVec); + } + + return from.subtract(liftVec); + } + + @Redirect(method = "clientTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;subtract(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;", ordinal = 1)) + private static Vec3 sable$toSubLiftVec(final Vec3 to, final Vec3 liftVec, @Local(ordinal = 0) final ChainConveyorShape shape) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(liftVec); + + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(to).subtract(liftVec); + } + + return to.subtract(liftVec); + } + + /** + * @author RyanH + * @reason Take sub-levels into account + */ + @Overwrite + public static void drawCustomBlockSelection(final PoseStack ms, final MultiBufferSource buffer, final Vec3 camera) { + if (selectedLift == null || selectedShape == null) + return; + + final VertexConsumer vb = buffer.getBuffer(RenderType.lines()); + + ms.pushPose(); + + Vec3 pos = Vec3.atLowerCornerOf(selectedLift); + + final SubLevel subLevel = Sable.HELPER.getContainingClient(pos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final Pose3dc renderPose = clientSubLevel.renderPose(); + pos = renderPose.transformPosition(pos); + ms.translate(pos.x() - camera.x, pos.y() - camera.y, pos.z() - camera.z); + ms.mulPose(new Quaternionf(renderPose.orientation())); + } else { + ms.translate(pos.x() - camera.x, pos.y() - camera.y, pos.z() - camera.z); + } + + ((ChainConveyorShapeAccessor) selectedShape).invokeDrawOutline(selectedLift, ms, vb); + ms.popPose(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.java new file mode 100644 index 0000000..a934eea --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorRidingHandlerMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorRidingHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ChainConveyorRidingHandler.class) +public class ChainConveyorRidingHandlerMixin { + + @Redirect(method = "clientTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;subtract(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;", ordinal = 1)) + private static Vec3 sable$fixDiff(final Vec3 targetPosition, final Vec3 playerPosition) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(Minecraft.getInstance().level, JOMLConversion.toJOML(targetPosition)) + .sub(playerPosition.x, playerPosition.y, playerPosition.z)); + } + + @Redirect(method = "updateTargetPosition", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;getLookAngle()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$fixLookAngle(final LocalPlayer instance, @Local(ordinal = 1) final BlockPos connection, @Local final ChainConveyorBlockEntity clbe) { + final SubLevel subLevel = Sable.HELPER.getContaining(clbe); + + if (subLevel != null) { + final Pose3dc pose = subLevel.logicalPose(); + final Vec3 lookAngle = instance.getLookAngle(); + return pose.transformNormalInverse(lookAngle); + } + + return instance.getLookAngle(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.java new file mode 100644 index 0000000..7f8d3cf --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainConveyorShapeAccessor.java @@ -0,0 +1,16 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorShape; +import net.minecraft.core.BlockPos; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(ChainConveyorShape.class) +public interface ChainConveyorShapeAccessor { + + @Invoker + void invokeDrawOutline(BlockPos anchor, PoseStack ms, VertexConsumer vb); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.java new file mode 100644 index 0000000..10517ba --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionHandlerMixin.java @@ -0,0 +1,43 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorPackage; +import com.simibubi.create.content.kinetics.chainConveyor.ChainPackageInteractionHandler; +import com.simibubi.create.foundation.utility.RaycastHelper; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ChainPackageInteractionHandler.class) +public class ChainPackageInteractionHandlerMixin { + + @Redirect(method = "lambda$onUse$0", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;getEyePosition()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getTraceOrigin(final LocalPlayer instance, @Local(argsOnly = true) final ChainConveyorPackage.ChainConveyorPackagePhysicsData data) { + Vec3 origin = instance.getEyePosition(); + + final SubLevel subLevel = Sable.HELPER.getContainingClient(data.targetPos); + if (subLevel != null) { + origin = subLevel.logicalPose().transformPositionInverse(origin); + } + + return origin; + } + + @Redirect(method = "lambda$onUse$0", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/foundation/utility/RaycastHelper;getTraceTarget(Lnet/minecraft/world/entity/player/Player;DLnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getTraceTarget(final Player playerIn, final double range, final Vec3 from, @Local(argsOnly = true) final ChainConveyorPackage.ChainConveyorPackagePhysicsData data) { + Vec3 target = RaycastHelper.getTraceTarget(playerIn, range, playerIn.getEyePosition()); + + final SubLevel subLevel = Sable.HELPER.getContainingClient(data.targetPos); + if (subLevel != null) { + target = subLevel.logicalPose().transformPositionInverse(target); + } + + return target; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.java new file mode 100644 index 0000000..9f9c0ec --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/ChainPackageInteractionPacketMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorPackage; +import com.simibubi.create.content.kinetics.chainConveyor.ChainPackageInteractionPacket; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerPlayer; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ChainPackageInteractionPacket.class) +public class ChainPackageInteractionPacketMixin { + @Shadow @Final private BlockPos selectedConnection; + + @Shadow @Final private float chainPosition; + + @Inject(method = "applySettings(Lnet/minecraft/server/level/ServerPlayer;Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorBlockEntity;)V", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorBlockEntity;addLoopingPackage(Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorPackage;)Z")) + private void sable$initialiseLoopingWorldPosition(final ServerPlayer player, final ChainConveyorBlockEntity be, final CallbackInfo ci, @Local(name = "chainConveyorPackage") final ChainConveyorPackage chainConveyorPackage) { + chainConveyorPackage.worldPosition = be.getPackagePosition(this.chainPosition, null); + } + + @Inject(method = "applySettings(Lnet/minecraft/server/level/ServerPlayer;Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorBlockEntity;)V", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorBlockEntity;addTravellingPackage(Lcom/simibubi/create/content/kinetics/chainConveyor/ChainConveyorPackage;Lnet/minecraft/core/BlockPos;)Z")) + private void sable$initialiseTravellingWorldPosition(final ServerPlayer player, final ChainConveyorBlockEntity be, final CallbackInfo ci, @Local(name = "chainConveyorPackage") final ChainConveyorPackage chainConveyorPackage) { + chainConveyorPackage.worldPosition = be.getPackagePosition(this.chainPosition, this.selectedConnection); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.java new file mode 100644 index 0000000..6f6c3a5 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockEntityMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.logistics.packagePort.PackagePortBlockEntity; +import com.simibubi.create.content.logistics.packagePort.PackagePortTarget; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportBlockEntity; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.frogports.FrogportMixinHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * Makes frogports face the proper way when picking up and depositing cross-sub-level + */ +@Mixin(FrogportBlockEntity.class) +public class FrogportBlockEntityMixin { + + @WrapOperation(method = "getYaw", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/logistics/packagePort/PackagePortTarget;getExactTargetLocation(Lcom/simibubi/create/content/logistics/packagePort/PackagePortBlockEntity;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$getExactTargetLocation(final PackagePortTarget instance, + final PackagePortBlockEntity packagePortBlockEntity, + final LevelAccessor levelAccessor, + final BlockPos blockPos, + final Operation original) { + return FrogportMixinHelper.getExactTargetLocation(instance, packagePortBlockEntity, levelAccessor, blockPos, original); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.java new file mode 100644 index 0000000..8051dac --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportBlockMixin.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportBlock; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(FrogportBlock.class) +public class FrogportBlockMixin { + @WrapOperation(method = "lambda$setPlacedBy$0", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;position()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$projectPlayerPosition(final LivingEntity instance, final Operation original, @Local(argsOnly = true, name = "arg2") final FrogportBlockEntity be) { + final SubLevel subLevel = Sable.HELPER.getContaining(be); + if (subLevel == null) { + return original.call(instance); + } + return subLevel.logicalPose().transformPositionInverse(original.call(instance)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.java new file mode 100644 index 0000000..690ba62 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportRendererMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.logistics.packagePort.PackagePortBlockEntity; +import com.simibubi.create.content.logistics.packagePort.PackagePortTarget; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportRenderer; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.frogports.FrogportMixinHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * Makes frogports face & extend the proper amount when picking up and depositing cross-sub-level + */ +@Mixin(FrogportRenderer.class) +public class FrogportRendererMixin { + + @WrapOperation(method = "renderSafe(Lcom/simibubi/create/content/logistics/packagePort/frogport/FrogportBlockEntity;FLcom/mojang/blaze3d/vertex/PoseStack;Lnet/minecraft/client/renderer/MultiBufferSource;II)V", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/logistics/packagePort/PackagePortTarget;getExactTargetLocation(Lcom/simibubi/create/content/logistics/packagePort/PackagePortBlockEntity;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$getExactTargetLocation(final PackagePortTarget instance, + final PackagePortBlockEntity packagePortBlockEntity, + final LevelAccessor levelAccessor, + final BlockPos blockPos, + final Operation original) { + return FrogportMixinHelper.getExactTargetLocation(instance, packagePortBlockEntity, levelAccessor, blockPos, original); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.java new file mode 100644 index 0000000..a6e1956 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/FrogportVisualMixin.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.logistics.packagePort.PackagePortBlockEntity; +import com.simibubi.create.content.logistics.packagePort.PackagePortTarget; +import com.simibubi.create.content.logistics.packagePort.frogport.FrogportVisual; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.frogports.FrogportMixinHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +/** + * Makes frogports face & extend the proper amount when picking up and depositing cross-sub-level + */ +@Mixin(FrogportVisual.class) +public class FrogportVisualMixin { + + @WrapOperation(method = "animate", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/logistics/packagePort/PackagePortTarget;getExactTargetLocation(Lcom/simibubi/create/content/logistics/packagePort/PackagePortBlockEntity;Lnet/minecraft/world/level/LevelAccessor;Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$getExactTargetLocation(final PackagePortTarget instance, + final PackagePortBlockEntity packagePortBlockEntity, + final LevelAccessor levelAccessor, + final BlockPos blockPos, + final Operation original) { + return FrogportMixinHelper.getExactTargetLocation(instance, packagePortBlockEntity, levelAccessor, blockPos, original); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.java new file mode 100644 index 0000000..1dc224d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortPlacementPacketMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.logistics.packagePort.PackagePortPlacementPacket; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.Position; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Makes the distance check done by Create's {@link PackagePortPlacementPacket} handling take sub-levels into account. + */ +@Mixin(PackagePortPlacementPacket.class) +public class PackagePortPlacementPacketMixin { + + @Redirect(method = "handle", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;closerThan(Lnet/minecraft/core/Position;D)Z")) + private boolean sable$handle(final Vec3 instance, final Position position, final double d, @Local(argsOnly = true) final ServerPlayer player) { + return Sable.HELPER.distanceSquaredWithSubLevels(player.level(), instance, position.x(), position.y(), position.z()) < d * d; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.java new file mode 100644 index 0000000..c18b65a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorBlockEntity; +import com.simibubi.create.content.logistics.packagePort.PackagePortTarget; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(PackagePortTarget.ChainConveyorFrogportTarget.class) +public class PackagePortTargetMixin { + + @Shadow + public float chainPos; + + @Shadow + @Nullable + public BlockPos connection; + + @Inject(method = "export", at = @At(value = "INVOKE", target = "Ljava/util/Set;contains(Ljava/lang/Object;)Z"), cancellable = true) + public void sable$testSublevelDistance(final LevelAccessor level, final BlockPos portPos, final ItemStack box, final boolean simulate, final CallbackInfoReturnable cir, @Local final ChainConveyorBlockEntity cbe) { + final Vec3 targetPos = cbe.getPackagePosition(this.chainPos, this.connection); + + final int maxRange = AllConfigs.server().logistics.packagePortRange.get() + 2; + if (Sable.HELPER.distanceSquaredWithSubLevels((Level) level, targetPos, portPos.getX() + 0.5, portPos.getY() + 0.5, portPos.getZ() + 0.5) > maxRange * maxRange) { + cir.setReturnValue(false); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.java new file mode 100644 index 0000000..4f1f324 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/PackagePortTargetSelectionHandlerMixin.java @@ -0,0 +1,54 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.simibubi.create.content.logistics.packagePort.PackagePortTargetSelectionHandler; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; + +@Mixin(PackagePortTargetSelectionHandler.class) +public class PackagePortTargetSelectionHandlerMixin { + @Shadow + public static boolean isPostbox; + + /** + * @author RyanH + * @reason Take into account sub-level + */ + @Overwrite + public static String validateDiff(final Vec3 nonProjectedTarget, final BlockPos placedPos) { + final ActiveSableCompanion helper = Sable.HELPER; + final Minecraft mc = Minecraft.getInstance(); + final LocalPlayer player = mc.player; + final Level level = player.level(); + + final Vector3d target = helper.projectOutOfSubLevel(level, JOMLConversion.toJOML(nonProjectedTarget)); + final SubLevel frogSubLevel = helper.getContaining(level, placedPos); + + if (frogSubLevel != null) { + frogSubLevel.logicalPose().transformPositionInverse(target); + } + + final Vector3d localDiff = target.sub(placedPos.getX() + 0.5, placedPos.getY(), placedPos.getZ() + 0.5); + if (localDiff.y < 0.0 && !isPostbox) { + return "package_port.cannot_reach_down"; + } + + final double packagePortRange = AllConfigs.server().logistics.packagePortRange.get(); + if (localDiff.lengthSquared() > packagePortRange * packagePortRange) { + return "package_port.too_far"; + } + + return null; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.java new file mode 100644 index 0000000..23b30c1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/frogports/SmartBlockEntityRendererMixin.java @@ -0,0 +1,31 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.frogports; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import com.simibubi.create.foundation.blockEntity.renderer.SmartBlockEntityRenderer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.renderer.entity.EntityRenderDispatcher; +import org.joml.Quaterniondc; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(SmartBlockEntityRenderer.class) +public class SmartBlockEntityRendererMixin { + + @Redirect(method = "renderNameplateOnHover", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/entity/EntityRenderDispatcher;cameraOrientation()Lorg/joml/Quaternionf;")) + private Quaternionf sable$renderNameTag(final EntityRenderDispatcher instance, @Local(argsOnly = true) final T be) { + final SubLevel subLevel = Sable.HELPER.getContaining(be); + + if (subLevel == null) { + return instance.cameraOrientation(); + } + + final Quaterniondc subLevelOrientation = ((ClientSubLevel) subLevel).renderPose().orientation(); + return instance.cameraOrientation().premul(new Quaternionf(subLevelOrientation).conjugate()); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.java new file mode 100644 index 0000000..52ad25f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/funnels/FunnelBlockMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.funnels; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.logistics.funnel.FunnelBlock; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes a Funnel check in Create to take into account sub-levels + */ +@Mixin(FunnelBlock.class) +public class FunnelBlockMixin { + + @Redirect(method = "entityInside", + at = @At(value = "INVOKE", + target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;"), + remap = false) + private Vec3 sable$projectFunnelPos(final Vec3i pos, @Local(argsOnly = true) final Level level) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(level, JOMLConversion.atCenterOf(pos))); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.java new file mode 100644 index 0000000..2aae528 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyBlockEntityMixin.java @@ -0,0 +1,57 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.hose_pulley; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.fluids.hosePulley.HosePulleyBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(HosePulleyBlockEntity.class) +public abstract class HosePulleyBlockEntityMixin extends SmartBlockEntity { + + public HosePulleyBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @WrapOperation(method = "lazyTick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;")) + public BlockState sable$checkForCollisions1(final Level instance, final BlockPos blockPos, final Operation original) { + return this.sable$getBlockState(instance, blockPos, original, true); + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;")) + public BlockState sable$checkForCollisions2(final Level instance, final BlockPos blockPos, final Operation original) { + return this.sable$getBlockState(instance, blockPos, original, false); + } + + @WrapOperation(method = "onSpeedChanged", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;")) + public BlockState sable$checkForCollisions3(final Level instance, final BlockPos blockPos, final Operation original) { + return this.sable$getBlockState(instance, blockPos, original, false); + } + + @Unique + private BlockState sable$getBlockState(final Level level, final BlockPos blockPos, final Operation original, boolean inverseReplaceCheck) { + final ActiveSableCompanion helper = Sable.HELPER; + final BlockState gatheredState = helper.runIncludingSubLevels(level, blockPos.getCenter(), true, helper.getContaining(level, this.getBlockPos()), (sublevel, pos) -> { + final BlockState innerState = original.call(level, pos); + if (inverseReplaceCheck ^ innerState.canBeReplaced()) { + return innerState; + } + + return null; + }); + + if (gatheredState != null) { + return gatheredState; + } + + return original.call(level, blockPos); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.java new file mode 100644 index 0000000..35e0389 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/hose_pulley/HosePulleyFluidHandlerMixin.java @@ -0,0 +1,85 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.hose_pulley; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.fluids.hosePulley.HosePulleyFluidHandler; +import com.simibubi.create.content.fluids.transfer.FluidDrainingBehaviour; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.neoforged.neoforge.fluids.FluidStack; +import net.neoforged.neoforge.fluids.capability.IFluidHandler; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Supplier; + +@Mixin(HosePulleyFluidHandler.class) +public abstract class HosePulleyFluidHandlerMixin { + + @Shadow + private FluidDrainingBehaviour drainer; + + @Shadow + private Supplier rootPosGetter; + @Unique + private BlockPos sable$lastValidPos = null; + + @Inject(method = "drainInternal", at = @At("HEAD")) + public void sable$updateLastValidPos(final int maxDrain, final FluidStack resource, final IFluidHandler.FluidAction action, final CallbackInfoReturnable cir) { + final ActiveSableCompanion helper = Sable.HELPER; + final Level level = this.drainer.getWorld(); + final float distance = 1.5f; + + this.sable$lastValidPos = helper.runIncludingSubLevels(level, this.rootPosGetter.get().getCenter(), true, helper.getContaining(level, this.drainer.getPos()), (sublevel, pos) -> { + if (sable$hasFluid(level, pos)) { + //add some leniency to the fluid gathering, while keeping large jumps (local -> other sublevel etc) possible + if (this.sable$lastValidPos == null || this.sable$lastValidPos.distSqr(pos) > distance * distance) { + return pos; + } + + //no changes needed + return this.sable$lastValidPos; + } + + return null; + }); + } + + @WrapOperation(method = "drainInternal", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/fluids/transfer/FluidDrainingBehaviour;getDrainableFluid(Lnet/minecraft/core/BlockPos;)Lnet/neoforged/neoforge/fluids/FluidStack;")) + public FluidStack sable$modifyGetDrainableFluid(final FluidDrainingBehaviour instance, final BlockPos rootPos, final Operation original) { + if (this.sable$lastValidPos != null) { + return original.call(instance, this.sable$lastValidPos); + } + + return original.call(instance, rootPos); + } + + @WrapOperation(method = "drainInternal", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/fluids/transfer/FluidDrainingBehaviour;pullNext(Lnet/minecraft/core/BlockPos;Z)Z")) + public boolean sable$modifyPullNext(final FluidDrainingBehaviour instance, final BlockPos root, final boolean simulate, final Operation original) { + if (this.sable$lastValidPos != null) { + return original.call(instance, this.sable$lastValidPos, simulate); + } + + return original.call(instance, root, simulate); + } + + @WrapOperation(method = "getFluidInTank", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/fluids/transfer/FluidDrainingBehaviour;getDrainableFluid(Lnet/minecraft/core/BlockPos;)Lnet/neoforged/neoforge/fluids/FluidStack;")) + public FluidStack sable$modifyGetFluidInTank(final FluidDrainingBehaviour instance, final BlockPos rootPos, final Operation original) { + if (this.sable$lastValidPos != null) { + return original.call(instance, this.sable$lastValidPos); + } + + return original.call(instance, rootPos); + } + + @Unique + private static boolean sable$hasFluid(final Level level, final BlockPos pos) { + return !level.getFluidState(pos).isEmpty(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.java new file mode 100644 index 0000000..be83803 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockAccessor.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.impact; + +import com.simibubi.create.content.equipment.bell.AbstractBellBlock; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(AbstractBellBlock.class) +public interface AbstractBellBlockAccessor { + + @Invoker + boolean invokeRing(Level world, BlockPos pos, Direction direction, Player player); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.java new file mode 100644 index 0000000..e765d50 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/impact/AbstractBellBlockMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.impact; + +import com.simibubi.create.content.equipment.bell.AbstractBellBlock; +import dev.ryanhcode.sable.api.block.BlockWithSubLevelCollisionCallback; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.neoforge.physics.callback.AbstractBellBlockCallback; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(AbstractBellBlock.class) +public class AbstractBellBlockMixin implements BlockWithSubLevelCollisionCallback { + + @Override + public BlockSubLevelCollisionCallback sable$getCallback() { + return AbstractBellBlockCallback.INSTANCE; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.java new file mode 100644 index 0000000..542edd3 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/CapManipulationBehaviourBaseMixin.java @@ -0,0 +1,48 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.inventory_manipulation; + +import com.google.common.base.Predicate; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.foundation.blockEntity.behaviour.inventory.CapManipulationBehaviourBase; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import net.createmod.catnip.math.BlockFace; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.neoforged.neoforge.capabilities.BlockCapability; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(CapManipulationBehaviourBase.class) +public class CapManipulationBehaviourBaseMixin { + + @Shadow protected Predicate filter; + + @Shadow protected boolean bypassSided; + + @Unique + private BlockPos sable$caughtPos; + + @Redirect(method = "findNewCapability", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockEntity(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/entity/BlockEntity;")) + public BlockEntity sable$findNewCapOnSubLevel(final Level level, final BlockPos blockPos) { + final ActiveSableCompanion helper = Sable.HELPER; + return helper.runIncludingSubLevels(level, blockPos.getCenter(), true, helper.getContaining(level, blockPos), (subLevel, internalPos) -> { + final BlockEntity caughtBE = level.getBlockEntity(internalPos); + if (this.filter.apply(caughtBE)) { + this.sable$caughtPos = internalPos; + return caughtBE; + } + + return null; + }); + } + + @Redirect(method = "findNewCapability", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getCapability(Lnet/neoforged/neoforge/capabilities/BlockCapability;Lnet/minecraft/core/BlockPos;Ljava/lang/Object;)Ljava/lang/Object;")) + public T sable$redirectPos(final Level instance, final BlockCapability blockCapability, final BlockPos pos, final Object dir, @Local final BlockFace targetBlockFace) { + return instance.getCapability(blockCapability, this.sable$caughtPos, this.bypassSided ? null : targetBlockFace.getFace()); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.java new file mode 100644 index 0000000..ca4eb13 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/inventory_manipulation/ChuteBlockEntityMixin.java @@ -0,0 +1,64 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.inventory_manipulation; + +import com.llamalad7.mixinextras.injector.wrapmethod.WrapMethod; +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.simibubi.create.content.logistics.chute.ChuteBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.neoforge.capabilities.Capabilities; +import net.neoforged.neoforge.items.IItemHandler; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(ChuteBlockEntity.class) +public abstract class ChuteBlockEntityMixin extends SmartBlockEntity { + + public ChuteBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @WrapMethod(method = "grabCapability") + public IItemHandler sable$grabCap(final Direction side, final Operation original) { + final IItemHandler handler = original.call(side); + if (handler != null) { + return handler; + } + + // anything past this, we don't really need a cache... It has the potential to constantly move as it's not local + final Level level = this.getLevel(); + assert level != null; + + final BlockPos checkPos = this.worldPosition.relative(side); + final Direction opposite = side.getOpposite(); + final Vector3d mut = new Vector3d(opposite.getStepX(), opposite.getStepY(), opposite.getStepZ()); + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel parentSublevel = helper.getContaining(level, checkPos); + if (parentSublevel != null) { + parentSublevel.logicalPose().transformNormalInverse(mut); + } + + final Vector3d includSublevelDir = new Vector3d(mut); + return helper.runIncludingSubLevels( + level, + checkPos.getCenter(), + false, + parentSublevel, + (sublevel, pos) -> { + includSublevelDir.set(mut); + if (sublevel != null) { + sublevel.logicalPose().transformNormal(includSublevelDir); + } + + return level.getCapability(Capabilities.ItemHandler.BLOCK, pos, Direction.getNearest(includSublevelDir.x, includSublevelDir.y, includSublevelDir.z)); + } + ); + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.java new file mode 100644 index 0000000..faa0f89 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockEntityMixin.java @@ -0,0 +1,63 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.lectern_controller; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.redstone.link.controller.LecternControllerBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.LecternControllerBlockEntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.UUID; + +@Mixin(LecternControllerBlockEntity.class) +public abstract class LecternControllerBlockEntityMixin extends SmartBlockEntity implements LecternControllerBlockEntityExtension { + + public LecternControllerBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Shadow + protected abstract void stopUsing(Player player); + + @Shadow + private UUID user; + @Unique + private boolean sable$noDrop; + + @Inject(method = "dropController", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;addFreshEntity(Lnet/minecraft/world/entity/Entity;)Z"), cancellable = true) + public void sable$dropController(final BlockState state, final CallbackInfo ci) { + if (!this.sable$noDrop) { + return; + } + + ci.cancel(); + final Entity entity = ((ServerLevel) this.level).getEntity(this.user); + if (entity instanceof final Player player) { + this.stopUsing(player); + } + } + + @Redirect(method = "playerInRange", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$fixDistanceCheck(final Vec3 a, final Vec3 b, @Local(argsOnly = true) final Level level) { + return Sable.HELPER.distanceSquaredWithSubLevels(level, a, b); + } + + @Override + public void sable$setNoDrop() { + this.sable$noDrop = true; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.java new file mode 100644 index 0000000..54390dd --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/lectern_controller/LecternControllerBlockMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.lectern_controller; + +import com.simibubi.create.content.redstone.link.controller.LecternControllerBlock; +import com.simibubi.create.content.redstone.link.controller.LecternControllerBlockEntity; +import dev.ryanhcode.sable.api.block.BlockSubLevelAssemblyListener; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.LecternControllerBlockEntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(LecternControllerBlock.class) +public class LecternControllerBlockMixin implements BlockSubLevelAssemblyListener { + + @Override + public void afterMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + if (originLevel.getBlockEntity(oldPos) instanceof final LecternControllerBlockEntity be) { + ((LecternControllerBlockEntityExtension) be).sable$setNoDrop(); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.java new file mode 100644 index 0000000..402f387 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmBlockEntity.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.mechnical_arm; + +import com.simibubi.create.content.kinetics.mechanicalArm.ArmBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ArmBlockEntity.class) +public abstract class MechanicalArmBlockEntity extends SmartBlockEntity { + + public MechanicalArmBlockEntity(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Inject(method = "isAreaActuallyLoaded", at = @At("HEAD"), cancellable = true) + private void sable$forceMechArmsLoad(final BlockPos center, final int range, final CallbackInfoReturnable cir) { + if (Sable.HELPER.getContaining(this.getLevel(), center) != null) { + cir.setReturnValue(true); + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.java new file mode 100644 index 0000000..fb4ab54 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/mechnical_arm/MechanicalArmSublevelFailure.java @@ -0,0 +1,55 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.mechnical_arm; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.kinetics.mechanicalArm.ArmInteractionPoint; +import com.simibubi.create.content.kinetics.mechanicalArm.ArmInteractionPointHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.createmod.catnip.lang.LangBuilder; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.network.chat.Component; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(ArmInteractionPointHandler.class) +public class MechanicalArmSublevelFailure { + + @Inject(method = "flushSettings", at = @At("HEAD")) + private static void sable$gatherSublevelInformation(final BlockPos pos, final CallbackInfo ci, @Share("parentSublevel") final LocalRef parentSublevel, @Share("pointsRemovedSublevel") final LocalRef pointsRemovedSublevel) { + parentSublevel.set(Sable.HELPER.getContainingClient(pos)); + pointsRemovedSublevel.set(0); + } + + @Inject(method = "flushSettings", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;closerThan(Lnet/minecraft/core/Vec3i;D)Z")) + private static void sable$removeDifferentSublevelPoints(final BlockPos pos, final CallbackInfo ci, @Local(name = "point") final ArmInteractionPoint point, @Share("pointsRemovedSublevel") final LocalRef pointsRemovedSublevel, @Share("parentSublevel") final LocalRef parentSublevel) { + final SubLevel pointsublevel = Sable.HELPER.getContainingClient(point.getPos()); + if (parentSublevel.get() != pointsublevel) { + pointsRemovedSublevel.set(pointsRemovedSublevel.get() + 1); + } + } + + @Redirect(method = "flushSettings", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/lang/LangBuilder;translate(Ljava/lang/String;[Ljava/lang/Object;)Lnet/createmod/catnip/lang/LangBuilder;")) + private static LangBuilder sable$relayRemovedPoints(final LangBuilder instance, final String langKey, final Object[] args, @Local(name = "removed") final int removed, @Share("pointsRemovedSublevel") final LocalRef pointsRemovedSublevel) { + + final Integer arg = (Integer) args[0]; + Component errorComponent = Component.empty(); + if (pointsRemovedSublevel.get() == 0) { + instance.translate(langKey, args); + } else if (arg - pointsRemovedSublevel.get() == 0) { + errorComponent = Component.translatable("sable.create.remove.points_removed_sublevel", removed) + .withStyle(ChatFormatting.RED); + } else { + errorComponent = Component.translatable("sable.create.mechanical_arm.points_removed_sublevel_and_range", removed) + .withStyle(ChatFormatting.RED); + } + + instance.add(errorComponent); + return instance; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.java new file mode 100644 index 0000000..c7e3aca --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/NozzleBlockEntityAccessor.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.nozzle; + +import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(NozzleBlockEntity.class) +public interface NozzleBlockEntityAccessor { + + @Accessor + float getRange(); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.java new file mode 100644 index 0000000..b79517f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleBEFixesMixin.java @@ -0,0 +1,61 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.nozzle.block_entity; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.NozzleBlockEntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.Vec3i; +import net.minecraft.core.particles.ParticleOptions; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(NozzleBlockEntity.class) +public abstract class NozzleBEFixesMixin extends SmartBlockEntity { + + public NozzleBEFixesMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Redirect(remap = false, method = "tick", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$nozzlePosition(final Vec3i pos) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(this.getLevel(), JOMLConversion.atCenterOf(pos))); + } + + @Redirect(remap = false, method = "lazyTick", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$nozzlePositionLazy(final Vec3i pos) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(this.getLevel(), JOMLConversion.atCenterOf(pos))); + } + + @Redirect(method = "canSee", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;"), remap = false) + private Vec3 sable$projectCenter(final Vec3i pos) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(this.getLevel(), JOMLConversion.atCenterOf(pos))); + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/Mth;clamp(III)I")) + public int sable$clampParticlesMore(final int value, final int min, final int max, final Operation original) { + return original.call(value, 3, max); + } + + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;addParticle(Lnet/minecraft/core/particles/ParticleOptions;DDDDDD)V")) + public void sable$checkDirection(final Level instance, final ParticleOptions particleOptions, final double x, final double y, final double z, final double mx, final double my, final double mz, @Local(ordinal = 0) final Vec3 origin, @Local(ordinal = 1) final Vec3 start) { + final Vec3 direction = start.subtract(origin).normalize(); + + final Direction nearest = Direction.getNearest(direction.x, direction.y, direction.z); + if (!((NozzleBlockEntityExtension) this).sable$getValidDirections().contains(nearest)) { + return; + } + + instance.addParticle(particleOptions, x, y, z, mx, my, mz); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.java new file mode 100644 index 0000000..b8bf9c1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/NozzleHoveringMixin.java @@ -0,0 +1,81 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.nozzle.block_entity; + +import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.block.BlockEntitySubLevelActor; +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.physics.force.QueuedForceGroup; +import dev.ryanhcode.sable.api.physics.handle.RigidBodyHandle; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.nozzles.NozzleHoveringHelper; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.createmod.catnip.data.Couple; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(NozzleBlockEntity.class) +public abstract class NozzleHoveringMixin extends SmartBlockEntity implements BlockEntitySubLevelActor { + + @Shadow private boolean pushing; + @Shadow private float range; + @Unique + private List> sable$rayPoints = null; + + public NozzleHoveringMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Inject(method = "", at = @At("TAIL")) + public void sable$generateRays(final BlockEntityType type, final BlockPos pos, final BlockState state, final CallbackInfo ci) { + this.sable$rayPoints = NozzleHoveringHelper.gatherRaycastPoints(state); + } + + @Inject(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/util/RandomSource;nextInt(I)I")) + private void addPhysicsParticles(final CallbackInfo ci) { + final ActiveSableCompanion helper = Sable.HELPER; + if (helper.getContaining(this) != null && this.pushing) { + final Vec3 blockCorner = Vec3.atLowerCornerOf(this.getBlockPos()); + final Couple ray = this.sable$rayPoints.get(this.level.random.nextInt(this.sable$rayPoints.size())); + final Vec3 start = ray.getFirst().add(blockCorner); + final Vec3 end = ray.getSecond().add(blockCorner); + final ClipContext context = new ClipContext( + start, + end, + ClipContext.Block.OUTLINE, + ClipContext.Fluid.ANY, + CollisionContext.empty() + ); + final BlockHitResult clip = this.level.clip(context); + NozzleHoveringHelper.spawnWindHitParticle( + this.level, helper.getContaining(this), clip, + JOMLConversion.toJOML(start), this.range / 40 + ); + } + } + + @Override + public void sable$physicsTick(final ServerSubLevel subLevel, final RigidBodyHandle handle, final double timeStep) { + final Vector3d force = NozzleHoveringHelper.gatherForceFromRays(subLevel, timeStep, this.getLevel(), this.getBlockPos(), (NozzleBlockEntity) (Object) this, this.sable$rayPoints); + + if (force != null) { + final QueuedForceGroup forceGroup = subLevel.getOrCreateQueuedForceGroup(ForceGroups.PROPULSION.get()); + forceGroup.applyAndRecordPointForce(JOMLConversion.toJOML(Vec3.atCenterOf(this.getBlockPos())), force); + } + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.java new file mode 100644 index 0000000..b71c7ea --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/nozzle/block_entity/ValidNozzledirectionMixin.java @@ -0,0 +1,47 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.nozzle.block_entity; + +import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.NozzleBlockEntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.EnumSet; + +@Mixin(NozzleBlockEntity.class) +public abstract class ValidNozzledirectionMixin extends SmartBlockEntity implements NozzleBlockEntityExtension { + + @Unique + private final EnumSet sable$validDirections = EnumSet.noneOf(Direction.class); + + public ValidNozzledirectionMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Override + public EnumSet sable$getValidDirections() { + return this.sable$validDirections; + } + + @Inject(method = "tick", at = @At("HEAD")) + public void sable$updateValidDirections(final CallbackInfo ci) { + this.sable$validDirections.clear(); + + if (this.getLevel() != null) { + for (final Direction value : Direction.values()) { + final BlockState state = this.getLevel().getBlockState(this.getBlockPos().relative(value)); + if (state.canBeReplaced()) { + this.sable$validDirections.add(value); + } + } + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.java new file mode 100644 index 0000000..64a3a48 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirFlowParticleMixin.java @@ -0,0 +1,78 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.particles; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.kinetics.fan.AirFlowParticle; +import com.simibubi.create.content.kinetics.fan.IAirCurrentSource; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.SimpleAnimatedParticle; +import net.minecraft.client.particle.SpriteSet; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(AirFlowParticle.class) +public abstract class AirFlowParticleMixin extends SimpleAnimatedParticle { + + @Unique + Vec3 sable$subLevelOrientation; + @Shadow + @Final + private IAirCurrentSource source; + + protected AirFlowParticleMixin(final ClientLevel arg, final double d, final double e, final double f, final SpriteSet arg2, final float g) { + super(arg, d, e, f, arg2, g); + } + + @Inject(method = "tick", at = @At("HEAD"), cancellable = true) + public void sable$fixAirflowParticle(final CallbackInfo ci) { + if (this.source == null || this.source.getAirCurrent() == null || this.source.getAirCurrent().direction == null) { + this.remove(); + ci.cancel(); + } + } + + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/AABB;contains(DDD)Z", ordinal = 0)) + public boolean sable$reverseProjectPos(final AABB instance, final double x, final double y, final double z) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(this.source.getAirCurrentPos()); + if (subLevel != null) { + return true; + } + + return instance.contains(x, y, z); + } + + @Redirect(method = "tick", at = @At(value = "NEW", target = "(DDD)Lnet/minecraft/world/phys/Vec3;", ordinal = 0)) + public Vec3 sable$reverseProjectPos2(final double x, final double y, final double z) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(this.source.getAirCurrentPos()); + if (subLevel != null) { + return subLevel.logicalPose().transformPositionInverse(new Vec3(x, y, z)); + } + + return new Vec3(x, y, z); + } + + @Inject(method = "tick", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/kinetics/fan/IAirCurrentSource;getAirCurrent()Lcom/simibubi/create/content/kinetics/fan/AirCurrent;", ordinal = 1)) + public void sable$transformNormal(final CallbackInfo ci, @Local(ordinal = 1) final LocalRef motion) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(this.source.getAirCurrentPos()); + + if (subLevel != null) { + if (this.sable$subLevelOrientation == null /*|| !this.source.getAirCurrent().pushing*/) { + this.sable$subLevelOrientation = subLevel.logicalPose().transformNormal(motion.get()); + } + } else { + this.sable$subLevelOrientation = motion.get(); + } + + motion.set(this.sable$subLevelOrientation); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.java new file mode 100644 index 0000000..60a7238 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/particles/AirParticleMixin.java @@ -0,0 +1,105 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.particles; + +import com.simibubi.create.foundation.particle.AirParticle; +import com.simibubi.create.foundation.particle.AirParticleData; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.particle.ParticleSubLevelKickable; +import net.createmod.catnip.math.VecHelper; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.particle.SimpleAnimatedParticle; +import net.minecraft.client.particle.SpriteSet; +import net.minecraft.core.Direction; +import net.minecraft.util.Mth; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(AirParticle.class) +public abstract class AirParticleMixin extends SimpleAnimatedParticle implements ParticleSubLevelKickable { + + @Shadow + private float twirlAngleOffset; + + @Shadow + private float twirlRadius; + + @Shadow + private float drag; + + @Unique + private double sable$originX; + @Unique + private double sable$originZ; + @Unique + private double sable$originY; + @Unique + private double sable$targetY; + @Unique + private double sable$targetX; + @Unique + private double sable$targetZ; + + @Shadow + private Direction.Axis twirlAxis; + + protected AirParticleMixin(final ClientLevel arg, final double d, final double e, final double f, final SpriteSet arg2, final float g) { + super(arg, d, e, f, arg2, g); + } + + @Inject(method = "", at = @At("TAIL")) + private void sable$postInit(final ClientLevel world, final AirParticleData data, final double x, final double y, final double z, final double dx, final double dy, final double dz, final SpriteSet sprite, final CallbackInfo ci) { + this.sable$originX = x; + this.sable$originY = y; + this.sable$originZ = z; + this.sable$targetX = x + dx; + this.sable$targetY = y + dy; + this.sable$targetZ = z + dz; + } + + /** + * @author RyanH + * @reason Fix target / origin handling with sub-levels + */ + @Overwrite + public void tick() { + this.xo = this.x; + this.yo = this.y; + this.zo = this.z; + if (this.age++ >= this.lifetime) { + this.remove(); + return; + } + + final float progress = (float) Math.pow(((float) this.age) / this.lifetime, this.drag); + final float angle = (progress * 2 * 360 + this.twirlAngleOffset) % 360; + final Vec3 twirl = VecHelper.rotate(new Vec3(0, this.twirlRadius, 0), angle, this.twirlAxis); + + final double desiredX = (Mth.lerp(progress, this.sable$originX, this.sable$targetX) + twirl.x); + final double desiredY = (Mth.lerp(progress, this.sable$originY, this.sable$targetY) + twirl.y); + final double desiredZ = (Mth.lerp(progress, this.sable$originZ, this.sable$targetZ) + twirl.z); + final Vector3d desiredVec = Sable.HELPER.projectOutOfSubLevel(this.level, new Vector3d(desiredX, desiredY, desiredZ)); + + this.xd = desiredVec.x - this.x; + this.yd = desiredVec.y - this.y; + this.zd = desiredVec.z - this.z; + + this.setSpriteFromAge(this.sprites); + this.move(this.xd, this.yd, this.zd); + } + + @Override + public boolean sable$shouldKickFromTracking() { + return false; + } + + @Override + public boolean sable$shouldCollideWithTrackingSubLevel() { + return false; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.java new file mode 100644 index 0000000..8e01edf --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/raycast/RaycastHelperMixin.java @@ -0,0 +1,59 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.raycast; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.foundation.utility.RaycastHelper; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.function.Predicate; + +import static dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.raycasts.SableRaycastHelper.rayCastUntilWithSublevels; + +/** + * Fixes Create's {@link RaycastHelper} to take into account sub-levels in raycasts + */ +@Mixin(RaycastHelper.class) +public class RaycastHelperMixin { + + + @Redirect(method = "getTraceTarget", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;add(DDD)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$rotateWithSublevels(final Vec3 instance, final double pX, final double pY, final double pZ, @Local(argsOnly = true) final Player player) { + Vec3 resultTarget = new Vec3(pX, pY, pZ); + + final Entity vehicle = player.getVehicle(); + if (vehicle != null) { + final SubLevel vehicleSubLevel = Sable.HELPER.getContaining(player.level(), vehicle.position()); + + // Rotate the target if the player is in a vehicle + if (vehicleSubLevel != null) { + final Vector3d vec = JOMLConversion.toJOML(resultTarget); + + vehicleSubLevel.logicalPose().orientation().transform(vec); + resultTarget = JOMLConversion.toMojang(vec); + } + } + + return instance.add(resultTarget); + } + + @Inject(method = "rayTraceUntil(Lnet/minecraft/world/entity/player/Player;DLjava/util/function/Predicate;)Lcom/simibubi/create/foundation/utility/RaycastHelper$PredicateTraceResult;", + at = @At(value = "HEAD"), + remap = false, cancellable = true) + private static void sable$rayTraceSublevels(final Player playerIn, final double range, final Predicate predicate, final CallbackInfoReturnable cir) { + final Vec3 start = playerIn.getEyePosition(); + final Vec3 end = RaycastHelper.getTraceTarget(playerIn, range, start); + + cir.setReturnValue(rayCastUntilWithSublevels(playerIn.level(), start, end, predicate)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.java new file mode 100644 index 0000000..24e8ac4 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/AllBlockEntityTypesMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.redstone_contacts; + +import com.simibubi.create.AllBlockEntityTypes; +import com.simibubi.create.AllBlocks; +import com.simibubi.create.foundation.data.CreateRegistrate; +import com.tterrag.registrate.util.entry.BlockEntityEntry; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact.RedstoneContactBlockEntity; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact.RedstoneContactBlockEntityTypeGetter; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(AllBlockEntityTypes.class) +public class AllBlockEntityTypesMixin implements RedstoneContactBlockEntityTypeGetter { + + @Shadow @Final private static CreateRegistrate REGISTRATE; + @Unique + private static final BlockEntityEntry REDSTONE_CONTACT = REGISTRATE + .blockEntity("redstone_contact", RedstoneContactBlockEntity::new) + .validBlock(AllBlocks.REDSTONE_CONTACT) + .register(); + + + @Override + public BlockEntityEntry sable$getRedstoneContactType() { + return REDSTONE_CONTACT; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.java new file mode 100644 index 0000000..2d19354 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_contacts/RedstoneContactBlockMixin.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.redstone_contacts; + +import com.simibubi.create.AllBlockEntityTypes; +import com.simibubi.create.content.redstone.contact.RedstoneContactBlock; +import com.simibubi.create.foundation.block.IBE; +import com.simibubi.create.foundation.block.WrenchableDirectionalBlock; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact.RedstoneContactBlockEntity; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact.RedstoneContactBlockEntityTypeGetter; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +@Mixin(RedstoneContactBlock.class) +public class RedstoneContactBlockMixin extends WrenchableDirectionalBlock implements IBE { + + @Unique + private static final AllBlockEntityTypes sable$cursed = new AllBlockEntityTypes(); + + public RedstoneContactBlockMixin(final Properties properties) { + super(properties); + } + + @Override + public Class getBlockEntityClass() { + return RedstoneContactBlockEntity.class; + } + + @Override + public BlockEntityType getBlockEntityType() { + return ((RedstoneContactBlockEntityTypeGetter) sable$cursed).sable$getRedstoneContactType().get(); + } + + @Override + public BlockEntityTicker getTicker(final Level level, final BlockState p_153213_, final BlockEntityType p_153214_) { + if (!level.isClientSide) { + return IBE.super.getTicker(level, p_153213_, p_153214_); + } else { + return null; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.java new file mode 100644 index 0000000..d11b5f8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/redstone_links/RedstoneLinkNetworkHandlerMixin.java @@ -0,0 +1,51 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.redstone_links; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.redstone.link.IRedstoneLinkable; +import com.simibubi.create.content.redstone.link.RedstoneLinkNetworkHandler; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelAccessor; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Changes the range checks between links in in Create's {@link RedstoneLinkNetworkHandler} to take into account sub-levels + * TODO: Handle movement when signals are active + */ +@Mixin(RedstoneLinkNetworkHandler.class) +public class RedstoneLinkNetworkHandlerMixin { + + @Redirect( + method = "updateNetworkOf", + at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/redstone/link/RedstoneLinkNetworkHandler;withinRange(Lcom/simibubi/create/content/redstone/link/IRedstoneLinkable;Lcom/simibubi/create/content/redstone/link/IRedstoneLinkable;)Z"), + remap = false) + private boolean sable$projectComparisons(final IRedstoneLinkable from, final IRedstoneLinkable to, @Local(argsOnly = true) final LevelAccessor levelAccessor) { + final Level level = (Level) levelAccessor; + + if (from == to) return true; + + final Vector3d fromPos = JOMLConversion.atCenterOf(from.getLocation()); + final Vector3d toPos = JOMLConversion.atCenterOf(to.getLocation()); + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel fromSublevel = helper.getContaining(level, fromPos); + if (fromSublevel != null) { + fromSublevel.logicalPose().transformPosition(fromPos); + } + + final SubLevel toSublevel = helper.getContaining(level, toPos); + if (toSublevel != null) { + toSublevel.logicalPose().transformPosition(toPos); + } + + final int linkRange = AllConfigs.server().logistics.linkRange.get(); + return fromPos.distanceSquared(toPos) < linkRange * linkRange; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.java new file mode 100644 index 0000000..9e0f9b1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/AABBOutlineMixin.java @@ -0,0 +1,54 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.renderers.AABBOutlineRenderingOptions; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.createmod.catnip.outliner.AABBOutline; +import net.createmod.catnip.outliner.Outline; +import net.createmod.catnip.render.SuperRenderTypeBuffer; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(value = AABBOutline.class, remap = false) +public abstract class AABBOutlineMixin extends Outline implements AABBOutlineRenderingOptions { + + @Unique + private boolean sable$renderWithTransform; + + @Shadow + protected AABB bb; + + @Shadow public abstract void render(PoseStack ms, SuperRenderTypeBuffer buffer, Vec3 camera, float pt); + + @Override + public void sable$shouldTransform(final boolean newValue) { + this.sable$renderWithTransform = newValue; + } + + @Inject(method = "render", at = @At(value = "HEAD"), remap = false) + private void sable$pushPose(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci) { + ms.pushPose(); + + if (this.sable$renderWithTransform) { + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(this.bb.getCenter()), ms); + } + } + + @ModifyArg(method = "render", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/outliner/AABBOutline;renderBox(Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/createmod/catnip/render/SuperRenderTypeBuffer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lorg/joml/Vector4f;IZ)V")) + private AABB sable$moveBB(final AABB box) { + return box.move(SublevelRenderOffsetHelper.translation(box.getCenter()).scale(-1.0)); + } + + @Inject(method = "render", at = @At(value = "RETURN"), remap = false) + private void sable$popPose(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci) { + ms.popPose(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.java new file mode 100644 index 0000000..5572129 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BeltRendererMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.simibubi.create.content.kinetics.belt.BeltRenderer; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(BeltRenderer.class) +public class BeltRendererMixin { + + @Redirect(method = "renderItem", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + public double sable$projectDistanceTo(final Vec3 eyePos, final Vec3 itemPos) { + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, eyePos, itemPos)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.java new file mode 100644 index 0000000..12a3dc3 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/BlockClusterOutlineMixin.java @@ -0,0 +1,64 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.createmod.catnip.outliner.BlockClusterOutline; +import net.createmod.catnip.render.SuperRenderTypeBuffer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyVariable; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(BlockClusterOutline.class) +public class BlockClusterOutlineMixin { + + @Unique + private Iterable sable$collection = null; + + @Unique + private Vec3 sable$center = Vec3.ZERO; + + @Inject(method = "", at = @At("TAIL"), remap = false) + private void sable$gatherSublevel(final Iterable selection, final CallbackInfo ci) { + this.sable$collection = selection; + } + + @Inject(method = "render", at = @At("HEAD"), remap = false) + private void sable$projectFromSublevel(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci) { + ms.pushPose(); + for (final BlockPos pos : this.sable$collection) { + final SubLevel sublevel = Sable.HELPER.getContainingClient(pos.getX() + 0.5, pos.getZ() + 0.5); + if (sublevel != null) { + this.sable$center = Vec3.atCenterOf(pos); + SublevelRenderOffsetHelper.posePlotToProjected(sublevel, ms); + break; + } + } + } + + @ModifyVariable(method = "render", at = @At("HEAD"), remap = false, argsOnly = true) + private Vec3 sable$modifyCamera(final Vec3 camera) { + if (this.sable$center == null) { + for (final BlockPos pos : this.sable$collection) { + final SubLevel sublevel = Sable.HELPER.getContainingClient(pos.getX() + 0.5, pos.getZ() + 0.5); + if (sublevel != null) { + this.sable$center = Vec3.atCenterOf(pos); + break; + } + } + } + return camera.add(SublevelRenderOffsetHelper.translation(this.sable$center)); + } + + @Inject(method = "render", at = @At("RETURN"), remap = false) + private void sable$popPose(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci) { + ms.popPose(); + this.sable$center = Vec3.ZERO; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.java new file mode 100644 index 0000000..11ee1cd --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChainConveyorRendererMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.simibubi.create.content.kinetics.chainConveyor.ChainConveyorRenderer; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.core.Position; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ChainConveyorRenderer.class) +public class ChainConveyorRendererMixin { + + @Redirect(method = "renderChains", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;closerThan(Lnet/minecraft/core/Position;D)Z")) + public boolean sable$fixMipDistance(final Vec3 instance, final Position position, final double d) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, position.x(), position.y(), position.z()) < d * d; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.java new file mode 100644 index 0000000..a30c18b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlineMixin.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.createmod.catnip.outliner.AABBOutline; +import net.createmod.catnip.outliner.ChasingAABBOutline; +import net.createmod.catnip.render.SuperRenderTypeBuffer; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.ModifyArg; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(value = ChasingAABBOutline.class, remap = false) +public abstract class ChasingAABBOutlineMixin extends AABBOutline { + + public ChasingAABBOutlineMixin(final AABB bb) { + super(bb); + } + + @Inject(method = "render", at = @At(value = "HEAD"), remap = false) + private void sable$pushPose(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci){ + ms.pushPose(); + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(this.bb.getCenter()), ms); + } + + @ModifyArg(method = "render", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/outliner/ChasingAABBOutline;renderBox(Lcom/mojang/blaze3d/vertex/PoseStack;Lnet/createmod/catnip/render/SuperRenderTypeBuffer;Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/AABB;Lorg/joml/Vector4f;IZ)V")) + private AABB sable$moveBB(final AABB box) { + return box.move(SublevelRenderOffsetHelper.translation(box.getCenter()).scale(-1.0)); + } + + @Inject(method = "render", at = @At(value = "RETURN"), remap = false) + private void sable$popPose(final PoseStack ms, final SuperRenderTypeBuffer buffer, final Vec3 camera, final float pt, final CallbackInfo ci){ + ms.popPose(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.java new file mode 100644 index 0000000..482b1b4 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ChasingAABBOutlinerMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import net.createmod.catnip.outliner.ChasingAABBOutline; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(ChasingAABBOutline.class) +public class ChasingAABBOutlinerMixin { + + @Inject(method = "interpolateBBs", at = @At("HEAD"), remap = false, cancellable = true) + private static void sable$bbDistanceCheck(final AABB current, final AABB target, final float pt, final CallbackInfoReturnable cir) { + if (current.getCenter().distanceTo(target.getCenter()) > 100) + cir.setReturnValue(target); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.java new file mode 100644 index 0000000..92c8ff9 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/FilteringRendererMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.simibubi.create.foundation.blockEntity.behaviour.filtering.FilteringRenderer; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(FilteringRenderer.class) +public class FilteringRendererMixin { + + @Redirect(method = "renderOnBlockEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$distanceToSqr(final Vec3 instance, final Vec3 pVec) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, pVec); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.java new file mode 100644 index 0000000..0517788 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/GhostBlockValueBoxMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.mojang.blaze3d.vertex.PoseStack; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(targets = "net.createmod.catnip.ghostblock.GhostBlockRenderer$TransparentGhostBlockRenderer") +public abstract class GhostBlockValueBoxMixin { + + // Additional pose stack has already been pushed by here + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V", ordinal = 0)) + public void sable$translate(final PoseStack ms, final double pX, final double pY, final double pZ) { + final Vec3 camera = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + + final Vec3 center = new Vec3(pX + camera.x, pY + camera.y, pZ + camera.z); + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(center), ms); + + final Vec3 translation = SublevelRenderOffsetHelper.translation(center); + + ms.translate(pX - translation.x, pY - translation.y, pZ - translation.z); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.java new file mode 100644 index 0000000..28cbe2a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LineOutlineMixin.java @@ -0,0 +1,52 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.engine_room.flywheel.lib.transform.TransformStack; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.createmod.catnip.math.AngleHelper; +import net.createmod.catnip.outliner.LineOutline; +import net.createmod.catnip.outliner.Outline; +import net.minecraft.core.Direction; +import net.minecraft.util.Mth; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.joml.Vector3f; +import org.joml.Vector4f; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(LineOutline.class) +public abstract class LineOutlineMixin extends Outline { + + @Override + public void bufferCuboidLine(final PoseStack poseStack, final VertexConsumer consumer, Vec3 camera, Vector3d start, final Vector3d end, + final float width, final Vector4f color, final int lightmap, final boolean disableNormals) { + final ActiveSableCompanion helper = Sable.HELPER; + final ClientSubLevel startSubLevel = helper.getContainingClient(start); + final ClientSubLevel endSubLevel = helper.getContainingClient(end); + + if (startSubLevel != null) startSubLevel.renderPose().transformPosition(start); + if (endSubLevel != null) endSubLevel.renderPose().transformPosition(end); + + final Vector3f diff = this.diffPosTemp; + diff.set((float) (end.x - start.x), (float) (end.y - start.y), (float) (end.z - start.z)); + + final float length = Mth.sqrt(diff.x() * diff.x() + diff.y() * diff.y() + diff.z() * diff.z()); + final float hAngle = AngleHelper.deg(Mth.atan2(diff.x(), diff.z())); + final float hDistance = Mth.sqrt(diff.x() * diff.x() + diff.z() * diff.z()); + final float vAngle = AngleHelper.deg(Mth.atan2(hDistance, diff.y())) - 90; + + poseStack.pushPose(); + TransformStack.of(poseStack) + .translate(start.x - camera.x, start.y - camera.y, start.z - camera.z) + .rotateYDegrees(hAngle) + .rotateXDegrees(vAngle); + this.bufferCuboidLine(poseStack.last(), consumer, new Vector3f(), Direction.SOUTH, length, width, color, lightmap, + disableNormals); + poseStack.popPose(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.java new file mode 100644 index 0000000..4db7cf6 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/LinkRendererMixin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.simibubi.create.content.redstone.link.LinkRenderer; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(LinkRenderer.class) +public class LinkRendererMixin { + @Redirect(method = "renderOnBlockEntity", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$distanceToSqr(final Vec3 instance, final Vec3 pVec) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, instance, pVec); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.java new file mode 100644 index 0000000..73c6cb8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/OutlineMixin.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import net.createmod.catnip.outliner.Outline; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(Outline.class) +public class OutlineMixin { +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.java new file mode 100644 index 0000000..c57dab5 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/PlacementClientMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.createmod.catnip.placement.PlacementClient; +import net.minecraft.client.Minecraft; +import net.minecraft.core.Vec3i; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(PlacementClient.class) +public class PlacementClientMixin { + + @Redirect(method = "drawDirectionIndicator", + at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;"), + remap = false) + private static Vec3 sable$projectLastTargetedPos(final Vec3i pos) { + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(Minecraft.getInstance().level, JOMLConversion.atCenterOf(pos))); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.java new file mode 100644 index 0000000..c4c2bbf --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/SafeBlockEntityRendererMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.simibubi.create.foundation.blockEntity.renderer.SafeBlockEntityRenderer; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyVariable; + +@Mixin(SafeBlockEntityRenderer.class) +public class SafeBlockEntityRendererMixin { + + @ModifyVariable(method = "shouldCullItem", at = @At("HEAD"), remap = false, argsOnly = true) + public Vec3 sable$projectItemPos(final Vec3 itemPos) { + return Sable.HELPER.projectOutOfSubLevel(Minecraft.getInstance().level, itemPos); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.java new file mode 100644 index 0000000..2786993 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/render_fixes/ValueBoxMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.render_fixes; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.foundation.blockEntity.behaviour.ValueBox; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.minecraft.client.Minecraft; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(ValueBox.class) +public abstract class ValueBoxMixin { + + // Additional pose stack has already been pushed + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V", ordinal = 0)) + public void sable$translate(final PoseStack ms, final double pX, final double pY, final double pZ) { + final Vec3 camera = Minecraft.getInstance().gameRenderer.getMainCamera().getPosition(); + + final Vec3 center = new Vec3(pX + camera.x, pY + camera.y, pZ + camera.z); + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(center), ms); + + final Vec3 translation = SublevelRenderOffsetHelper.translation(center); + + ms.translate(pX - translation.x, pY - translation.y, pZ - translation.z); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.java new file mode 100644 index 0000000..da2c62a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sails_providing_lift/SailBlockMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.sails_providing_lift; + +import com.simibubi.create.content.contraptions.bearing.SailBlock; +import dev.ryanhcode.sable.api.block.BlockSubLevelCustomCenterOfMass; +import dev.ryanhcode.sable.api.block.BlockSubLevelLiftProvider; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.Direction; +import net.minecraft.world.level.BlockGetter; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import org.jetbrains.annotations.NotNull; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(SailBlock.class) +public class SailBlockMixin implements BlockSubLevelLiftProvider, BlockSubLevelCustomCenterOfMass { + @Override + public @NotNull Direction sable$getNormal(final BlockState state) { + return state.getValue(BlockStateProperties.FACING).getOpposite(); + } + + @Override + public Vector3dc getCenterOfMass(final BlockGetter blockGetter, final BlockState state) { + return JOMLConversion.HALF; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.java new file mode 100644 index 0000000..aa0ffda --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/saw/SawBlockEntityMixin.java @@ -0,0 +1,45 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.saw; + +import com.simibubi.create.content.kinetics.base.BlockBreakingKineticBlockEntity; +import com.simibubi.create.content.kinetics.saw.SawBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the velocity applied to items when dropped from a cut tree with a Create {@link SawBlockEntity} + */ +@Mixin(SawBlockEntity.class) +public abstract class SawBlockEntityMixin extends BlockBreakingKineticBlockEntity { + + public SawBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Redirect(method = "dropItemFromCutTree", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;atLowerCornerOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$itemDeltaMovement(final Vec3i vec3i) { + final ActiveSableCompanion helper = Sable.HELPER; + final Vector3d diff = helper.projectOutOfSubLevel(this.level, JOMLConversion.atCenterOf(this.breakingPos)) + .sub(helper.projectOutOfSubLevel(this.level, JOMLConversion.atCenterOf(this.worldPosition))); + + final SubLevel subLevel = helper.getContaining(this); + + // we're spawning the items inside the sub-level, so we need to transform the velocity back into the sub-level + // if we're in one + if (subLevel != null) { + subLevel.logicalPose().transformNormalInverse(diff); + } + + return JOMLConversion.toMojang(diff); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.java new file mode 100644 index 0000000..a85bf66 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/DeployToolMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.schematics.client.tools.DeployTool; +import com.simibubi.create.content.schematics.client.tools.SchematicToolBase; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.renderers.AABBOutlineRenderingOptions; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(DeployTool.class) +public abstract class DeployToolMixin extends SchematicToolBase { + + @WrapOperation(method = "renderTool", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V")) + public void sable$manualTransformBB(final PoseStack instance, final double x, final double y, final double z, final Operation original, @Local(ordinal = 0) final int centerX, @Local(ordinal = 1) final int centerZ, @Local(argsOnly = true) final Vec3 camera) { + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(this.selectedPos), instance); + final Vec3 trans = SublevelRenderOffsetHelper.translation(this.selectedPos.getCenter()); + + original.call(instance, x - trans.x, y - trans.y, z - trans.z); + ((AABBOutlineRenderingOptions) this.schematicHandler.getOutline()).sable$shouldTransform(false); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.java new file mode 100644 index 0000000..3c81966 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicAndQuillHandlerMixin.java @@ -0,0 +1,126 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.AllSpecialTextures; +import com.simibubi.create.content.schematics.client.SchematicAndQuillHandler; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3ic; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.createmod.catnip.outliner.Outliner; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Position; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(SchematicAndQuillHandler.class) +public abstract class SchematicAndQuillHandlerMixin { + + @Shadow + public BlockPos firstPos; + + @Shadow + protected abstract AABB getCurrentSelectionBox(); + + @Shadow + protected abstract Outliner outliner(); + + @Shadow + private Object outlineSlot; + + @Shadow + public BlockPos secondPos; + + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;containing(Lnet/minecraft/core/Position;)Lnet/minecraft/core/BlockPos;")) + private BlockPos sable$containing(Position position) { + if (this.firstPos != null) { + final SubLevel subLevel = Sable.HELPER.getContainingClient(this.firstPos); + + if (subLevel != null) { + position = subLevel.logicalPose().transformPositionInverse(new Vec3(position.x(), position.y(), position.z())); + } + } + + return BlockPos.containing(position); + } + + @WrapOperation(method = "tick", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/BlockHitResult;getBlockPos()Lnet/minecraft/core/BlockPos;")) + public BlockPos sable$preventMovingSelectedOutOfPlot(final BlockHitResult instance, final Operation original) { + if (this.firstPos != null) { //check sublevel and keep us in the plot + final SubLevel selectedSublevel = Sable.HELPER.getContainingClient(this.firstPos); + + Vec3 loc = instance.getBlockPos().getCenter(); + final SubLevel hitSublevel = Sable.HELPER.getContainingClient(loc); + if (hitSublevel != selectedSublevel) { + if (hitSublevel != null) { + loc = hitSublevel.logicalPose().transformPosition(loc); + } + + if (selectedSublevel != null) { + loc = selectedSublevel.logicalPose().transformPositionInverse(loc); + } + } + + return BlockPos.containing(loc); + } + + + return original.call(instance); + } + + @Inject(method = "tick", at = @At("TAIL")) + private void sable$renderSubLevelBoxes(final CallbackInfo ci) { + + final ClientLevel level = Minecraft.getInstance().level; + final ClientSubLevelContainer container = SubLevelContainer.getContainer(level); + + final ActiveSableCompanion helper = Sable.HELPER; + if (this.firstPos != null && container.inBounds(this.firstPos) && + helper.getContaining(level, this.firstPos) == null) { + this.firstPos = null; + } + + if (this.secondPos != null && container.inBounds(this.secondPos) && + helper.getContaining(level, this.secondPos) == null) { + this.secondPos = null; + } + + final AABB currentSelectionBox = this.getCurrentSelectionBox(); + + if (currentSelectionBox != null) { + final BoundingBox3d bounds = new BoundingBox3d(currentSelectionBox); + + final SubLevel containingSubLevel = helper.getContainingClient(bounds.center(new Vector3d())); + if (containingSubLevel != null) { + bounds.transform(containingSubLevel.logicalPose(), bounds); + } + + final Iterable intersecting = helper.getAllIntersecting(level, bounds); + + for (final SubLevel subLevel : intersecting) { + if (subLevel == containingSubLevel) continue; + + final BoundingBox3ic plotBounds = subLevel.getPlot().getBoundingBox(); + + this.outliner().chaseAABB(this.outlineSlot.hashCode() + " sub_level " + subLevel.getUniqueId(), plotBounds.toAABB()) + .colored(0x86a4e3) + .withFaceTextures(AllSpecialTextures.CHECKERED, AllSpecialTextures.HIGHLIGHT_CHECKERED) + .lineWidth(1 / 16f); + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.java new file mode 100644 index 0000000..c0fdec3 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicExportMixin.java @@ -0,0 +1,142 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.schematics.SchematicAndQuillItem; +import com.simibubi.create.content.schematics.SchematicExport; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.schematic.SubLevelSchematicSerializationContext; +import dev.ryanhcode.sable.companion.math.*; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableNBTUtils; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.joml.Vector3i; +import org.joml.Vector3ic; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.nio.file.Path; +import java.util.UUID; + +@Mixin(SchematicExport.class) +public class SchematicExportMixin { + + @Inject(method = "saveSchematic", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;fillFromWorld(Lnet/minecraft/world/level/Level;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/Vec3i;ZLnet/minecraft/world/level/block/Block;)V", shift = At.Shift.BEFORE)) + private static void sable$saveSchematic(final Path dir, + final String fileName, + final boolean overwrite, + final Level level, + final BlockPos first, + final BlockPos second, + final CallbackInfoReturnable cir, + @Share("containingSubLevel") final LocalRef containingSubLevelRef, + @Share("intersectingSubLevels") final LocalRef> intersectingRef + ) { + final BoundingBox3d schematicBounds = new BoundingBox3d(first.getX(), first.getY(), first.getZ(), + second.getX() + 1, second.getY() + 1, second.getZ() + 1); + + final BoundingBox bb = BoundingBox.fromCorners(first, second); + final BlockPos totalOrigin = new BlockPos(bb.minX(), bb.minY(), bb.minZ()); + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel containingSubLevel = helper.getContaining(level, schematicBounds.center(new Vector3d())); + if (containingSubLevel != null) { + final Pose3d containingPose = containingSubLevel.logicalPose(); + schematicBounds.transform(containingPose, schematicBounds); + } + containingSubLevelRef.set(containingSubLevel); + + final Iterable intersecting = helper.getAllIntersecting(level, schematicBounds); + intersectingRef.set(intersecting); + + final SubLevelSchematicSerializationContext context = new SubLevelSchematicSerializationContext(SubLevelSchematicSerializationContext.Type.SAVE, new BoundingBox3i(first, second)); + context.setSetupTransform((block) -> ((BlockPos) block)); + context.setPlaceTransform((block) -> ((BlockPos) block).subtract(totalOrigin)); + + for (final SubLevel subLevel : intersecting) { + if (subLevel == containingSubLevel) continue; + + final BoundingBox3ic plotBounds = subLevel.getPlot().getBoundingBox(); + final BlockPos origin = new BlockPos(plotBounds.minX(), plotBounds.minY(), plotBounds.minZ()); + + Vec3 pos = subLevel.logicalPose().transformPosition(Vec3.atLowerCornerOf(origin)); + final Quaterniond orientation = new Quaterniond(subLevel.logicalPose().orientation()); + + if (containingSubLevel != null) { + final Pose3d containingPose = containingSubLevel.logicalPose(); + pos = containingPose.transformPositionInverse(pos); + orientation.premul(containingPose.orientation().conjugate(new Quaterniond())); + } + + final Vector3d position = JOMLConversion.toJOML(pos.subtract(Vec3.atLowerCornerOf(totalOrigin))); + + context.getMappings().put(subLevel.getUniqueId(), new SubLevelSchematicSerializationContext.SchematicMapping( + position, orientation, UUID.randomUUID(), block -> ((BlockPos)block).offset(origin.multiply(-1)) + )); + } + + SubLevelSchematicSerializationContext.setCurrentContext(context); + } + + @Inject(method = "saveSchematic", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/schematics/SchematicAndQuillItem;clampGlueBoxes(Lnet/minecraft/world/level/Level;Lnet/minecraft/world/phys/AABB;Lnet/minecraft/nbt/CompoundTag;)V", shift = At.Shift.AFTER)) + private static void sable$saveSchematicPost( + final Path dir, + final String fileName, + final boolean overwrite, + final Level level, + final BlockPos first, + final BlockPos second, + final CallbackInfoReturnable cir, + @Local final CompoundTag data, + @Share("containingSubLevel") final LocalRef containingSubLevelRef, + @Share("intersectingSubLevels") final LocalRef> intersectingRef + ) { + final ListTag list = new ListTag(); + + final SubLevel containingSubLevel = containingSubLevelRef.get(); + final SubLevelSchematicSerializationContext context = SubLevelSchematicSerializationContext.getCurrentContext(); + + for (final SubLevel subLevel : intersectingRef.get()) { + if (subLevel == containingSubLevel) continue; + final BoundingBox3ic plotBounds = subLevel.getPlot().getBoundingBox(); + final Vector3ic size = plotBounds.size(new Vector3i()); + final BlockPos origin = new BlockPos(plotBounds.minX(), plotBounds.minY(), plotBounds.minZ()); + final BlockPos bounds = new BlockPos(size.x() + 1, size.y() + 1, size.z() + 1); + + final StructureTemplate structure = new StructureTemplate(); + structure.fillFromWorld(level, origin, bounds, true, Blocks.AIR); + final CompoundTag subLevelData = structure.save(new CompoundTag()); + SchematicAndQuillItem.replaceStructureVoidWithAir(subLevelData); + SchematicAndQuillItem.clampGlueBoxes(level, new AABB(Vec3.atLowerCornerOf(origin), Vec3.atLowerCornerOf(origin.offset(bounds))), subLevelData); + + final SubLevelSchematicSerializationContext.SchematicMapping mapping = context.getMapping(subLevel); + + subLevelData.putUUID("uuid", mapping.newUUID()); + subLevelData.put("position", SableNBTUtils.writeVector3d(mapping.newCorner())); + subLevelData.put("orientation", SableNBTUtils.writeQuaternion(mapping.newOrientation())); + + list.add(subLevelData); + } + + SubLevelSchematicSerializationContext.setCurrentContext(null); + + if (!list.isEmpty()) { + data.put("sub_levels", list); + } + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.java new file mode 100644 index 0000000..d2847db --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicHandlerMixin.java @@ -0,0 +1,54 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.schematics.client.SchematicHandler; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicLevelExtension; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.StructureTemplateExtension; +import net.createmod.catnip.levelWrappers.SchematicLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructurePlaceSettings; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.List; + +@Mixin(SchematicHandler.class) +public class SchematicHandlerMixin { + + @WrapOperation(method = "setupRenderer", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;placeInWorld(Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/util/RandomSource;I)Z")) + private boolean sable$setupRenderer(final StructureTemplate template, + final ServerLevelAccessor serverLevelAccessor, + final BlockPos blockPos, + final BlockPos blockPos2, + final StructurePlaceSettings structurePlaceSettings, + final RandomSource randomSource, + final int i, + final Operation original, + @Local final Level level) { + if (serverLevelAccessor instanceof final SchematicLevel schematicLevel) { + final StructureTemplateExtension extension = (StructureTemplateExtension) template; + final List subLevelTemplates = extension.sable$getSubLevels(); + final SchematicLevelExtension schematicLevelExtension = (SchematicLevelExtension) schematicLevel; + + for (final StructureTemplateExtension.SubLevelTemplate subLevelTemplate : subLevelTemplates) { + final SchematicLevel subSchematicLevel = new SchematicLevel(level); + + subLevelTemplate.template().placeInWorld( + subSchematicLevel, BlockPos.ZERO, BlockPos.ZERO, new StructurePlaceSettings(), level.getRandom(), Block.UPDATE_CLIENTS); + + schematicLevelExtension.sable$getSubLevels() + .add(new SchematicLevelExtension.SchematicSubLevel(subLevelTemplate.uuid(), subLevelTemplate.position(), subLevelTemplate.orientation(), subSchematicLevel)); + } + + } + return original.call(template, serverLevelAccessor, blockPos, blockPos2, structurePlaceSettings, randomSource, i); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.java new file mode 100644 index 0000000..12c980b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicLevelMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicLevelExtension; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.createmod.catnip.levelWrappers.SchematicLevel; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; + +import java.util.List; + +@Mixin(SchematicLevel.class) +public class SchematicLevelMixin implements SchematicLevelExtension { + + @Unique + private final List sable$subLevels = new ObjectArrayList<>(); + + @Override + public List sable$getSubLevels() { + return this.sable$subLevels; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.java new file mode 100644 index 0000000..5456a1b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPlacePacketMixin.java @@ -0,0 +1,173 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.AllDataComponents; +import com.simibubi.create.content.contraptions.StructureTransform; +import com.simibubi.create.content.schematics.SchematicItem; +import com.simibubi.create.content.schematics.SchematicPrinter; +import com.simibubi.create.content.schematics.packet.SchematicPlacePacket; +import com.simibubi.create.foundation.utility.BlockHelper; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelAssemblyHelper; +import dev.ryanhcode.sable.api.physics.PhysicsPipeline; +import dev.ryanhcode.sable.api.schematic.SubLevelSchematicSerializationContext; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3d; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicLevelExtension; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicPrinterExtension; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import it.unimi.dsi.fastutil.Function; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import net.createmod.catnip.levelWrappers.SchematicLevel; +import net.minecraft.ChatFormatting; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.network.chat.Component; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Mirror; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructurePlaceSettings; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.Map; +import java.util.UUID; + +@Mixin(SchematicPlacePacket.class) +public class SchematicPlacePacketMixin { + + @Shadow @Final private ItemStack stack; + + @Inject(method = "handle", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/schematics/SchematicPrinter;loadSchematic(Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/level/Level;Z)V", shift = At.Shift.AFTER), cancellable = true) + private void sable$preHandle(final ServerPlayer player, + final CallbackInfo ci, + @Local final SchematicPrinter printer) { + final Mirror mirror = this.stack.get(AllDataComponents.SCHEMATIC_MIRROR); + + if (mirror != null && mirror != Mirror.NONE) { + final SchematicLevel schematicLevel = ((SchematicPrinterExtension) printer).sable$getSchematicLevel(); + + if (!((SchematicLevelExtension) schematicLevel).sable$getSubLevels().isEmpty()) { + player.sendSystemMessage(Component.translatable("schematic.sable.mirror_not_supported").withStyle(ChatFormatting.RED)); + ci.cancel(); + } + } + } + + @Inject(method = "handle", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/infrastructure/config/AllConfigs;server()Lcom/simibubi/create/infrastructure/config/CServer;")) + private void sable$handle(final ServerPlayer player, + final CallbackInfo ci, + @Local final Level level, + @Local final SchematicPrinter printer + ) { + final SubLevelContainer container = SubLevelContainer.getContainer(level); + final SubLevelPhysicsSystem physicsSystem = ((ServerSubLevelContainer) container).physicsSystem(); + + final SchematicLevel schematicLevel = ((SchematicPrinterExtension) printer).sable$getSchematicLevel(); + final List subLevels = ((SchematicLevelExtension) schematicLevel).sable$getSubLevels(); + final BlockPos minPos = printer.getAnchor(); + + final SubLevelSchematicSerializationContext context = new SubLevelSchematicSerializationContext(SubLevelSchematicSerializationContext.Type.PLACE, null); + + final StructurePlaceSettings settings = SchematicItem.getSettings(this.stack, !player.canUseGameMasterBlocks()); + final StructureTransform transform = new StructureTransform(settings.getRotationPivot(), Direction.Axis.Y, + settings.getRotation(), settings.getMirror()); + context.setSetupTransform((block) -> transform.apply((BlockPos) block)); + context.setPlaceTransform((block) -> ((BlockPos) block).offset(minPos)); + + final Map spawnedSubLevels = new Object2ObjectOpenHashMap<>(); + for (final SchematicLevelExtension.SchematicSubLevel schematicSubLevel : subLevels) { + final Pose3d pose = new Pose3d(); + pose.orientation().set(schematicSubLevel.orientation()); + pose.position().set(schematicSubLevel.position()); + final SubLevel subLevel = container.allocateNewSubLevel(pose); + + final Function blockFunction = block -> ((BlockPos) block).offset(subLevel.getPlot().getCenterBlock()); + + final SubLevelSchematicSerializationContext.SchematicMapping mapping = + new SubLevelSchematicSerializationContext.SchematicMapping(null, null, subLevel.getUniqueId(), blockFunction); + + context.getMappings().put(schematicSubLevel.uuid(), mapping); + spawnedSubLevels.put(schematicSubLevel.uuid(), subLevel); + } + + SubLevelSchematicSerializationContext.setCurrentContext(context); + + for (final SchematicLevelExtension.SchematicSubLevel schematicSubLevel : subLevels) { + final SubLevel subLevel = spawnedSubLevels.get(schematicSubLevel.uuid()); + + schematicSubLevel.position().add(minPos.getX(), minPos.getY(), minPos.getZ()); + final SchematicLevel subSchematicLevel = schematicSubLevel.level(); + final BoundingBox schematicBounds = subSchematicLevel.getBounds(); + + final LevelPlot plot = subLevel.getPlot(); + + final BlockPos centerBlock = plot.getCenterBlock(); + final int minChunkX = (centerBlock.getX() + schematicBounds.minX()) >> 4; + final int minChunkZ = (centerBlock.getZ() + schematicBounds.minZ()) >> 4; + + final int maxChunkX = (centerBlock.getX() + schematicBounds.maxX()) >> 4; + final int maxChunkZ = (centerBlock.getZ() + schematicBounds.maxZ()) >> 4; + + for (int x = minChunkX; x <= maxChunkX; x++) { + for (int z = minChunkZ; z <= maxChunkZ; z++) { + plot.newEmptyChunk(new ChunkPos(x, z)); + } + } + + BlockPos.betweenClosedStream(schematicBounds).forEach(block -> { + final BlockState state = subSchematicLevel.getBlockState(block); + final BlockEntity blockEntity = subSchematicLevel.getBlockEntity(block); + final CompoundTag data = BlockHelper.prepareBlockEntityData(level, state, blockEntity); + BlockHelper.placeSchematicBlock(level, state, centerBlock.offset(block), null, data); + }); + + subLevel.logicalPose().position() + .add(schematicSubLevel.position().sub(subLevel.logicalPose().transformPosition(new Vector3d( + centerBlock.getX(), + centerBlock.getY(), + centerBlock.getZ() + )))); + + final SubLevel containingSubLevel = Sable.HELPER.getContaining(level, subLevel.logicalPose().position()); + final PhysicsPipeline pipeline = physicsSystem.getPipeline(); + + if (containingSubLevel != null && level instanceof final ServerLevel serverLevel) { + SubLevelAssemblyHelper.kickFromContainingSubLevel(serverLevel, physicsSystem, pipeline, (ServerSubLevel) subLevel, containingSubLevel); + subLevel.logicalPose().orientation().premul(containingSubLevel.logicalPose().orientation()); + } + + pipeline.teleport((ServerSubLevel) subLevel, subLevel.logicalPose().position(), subLevel.logicalPose().orientation()); + subLevel.updateLastPose(); + + for (final Entity entity : subSchematicLevel.getEntityList()) { + entity.setPos(entity.position().add(centerBlock.getX(), centerBlock.getY(), centerBlock.getZ())); + level.addFreshEntity(entity); + } + } + } + + @Inject(method = "handle", at = @At(value = "TAIL")) + private void sable$postHandle(final ServerPlayer player, final CallbackInfo ci) { + SubLevelSchematicSerializationContext.setCurrentContext(null); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.java new file mode 100644 index 0000000..e3dc88a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicPrinterMixin.java @@ -0,0 +1,92 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.contraptions.StructureTransform; +import com.simibubi.create.content.schematics.SchematicPrinter; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicLevelExtension; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicPrinterExtension; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.StructureTemplateExtension; +import net.createmod.catnip.levelWrappers.SchematicLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.ServerLevelAccessor; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructurePlaceSettings; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; + +@Mixin(SchematicPrinter.class) +public class SchematicPrinterMixin implements SchematicPrinterExtension { + + + @Shadow private SchematicLevel blockReader; + + @Inject(method = "loadSchematic", at = @At("TAIL")) + private void sable$loadSchematic(final ItemStack blueprint, + final Level originalWorld, + final boolean processNBT, + final CallbackInfo ci, + @Local final StructureTransform transform) { + final List schematicSubLevels = ((SchematicLevelExtension) this.blockReader).sable$getSubLevels(); + for (final SchematicLevelExtension.SchematicSubLevel schematicSubLevel : schematicSubLevels) { + final Vec3 transformedPos = transform.applyWithoutOffset(JOMLConversion.toMojang(schematicSubLevel.position())); + JOMLConversion.toJOML(transformedPos, schematicSubLevel.position()); + + final double radians = switch (transform.rotation) { + case NONE -> 0.0; + case CLOCKWISE_90 -> -Math.PI / 2.0; + case CLOCKWISE_180 -> Math.PI; + case COUNTERCLOCKWISE_90 -> Math.PI / 2.0; + }; + + schematicSubLevel.orientation().rotateLocalY(radians); + } + + } + + @WrapOperation(method = "loadSchematic", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructureTemplate;placeInWorld(Lnet/minecraft/world/level/ServerLevelAccessor;Lnet/minecraft/core/BlockPos;Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/levelgen/structure/templatesystem/StructurePlaceSettings;Lnet/minecraft/util/RandomSource;I)Z")) + private boolean sable$setupRenderer(final StructureTemplate template, + final ServerLevelAccessor serverLevelAccessor, + final BlockPos blockPos, + final BlockPos blockPos2, + final StructurePlaceSettings structurePlaceSettings, + final RandomSource randomSource, + final int i, + final Operation original, + @Local(argsOnly = true) final Level level) { + if (serverLevelAccessor instanceof final SchematicLevel schematicLevel) { + final StructureTemplateExtension extension = (StructureTemplateExtension) template; + final List subLevelTemplates = extension.sable$getSubLevels(); + final SchematicLevelExtension schematicLevelExtension = (SchematicLevelExtension) schematicLevel; + + for (final StructureTemplateExtension.SubLevelTemplate subLevelTemplate : subLevelTemplates) { + final SchematicLevel subSchematicLevel = new SchematicLevel(level); + + subLevelTemplate.template().placeInWorld( + subSchematicLevel, BlockPos.ZERO, BlockPos.ZERO, new StructurePlaceSettings(), level.getRandom(), Block.UPDATE_CLIENTS); + + schematicLevelExtension.sable$getSubLevels() + .add(new SchematicLevelExtension.SchematicSubLevel(subLevelTemplate.uuid(), subLevelTemplate.position(), subLevelTemplate.orientation(), subSchematicLevel)); + } + + } + return original.call(template, serverLevelAccessor, blockPos, blockPos2, structurePlaceSettings, randomSource, i); + } + + @Override + public SchematicLevel sable$getSchematicLevel() { + return this.blockReader; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.java new file mode 100644 index 0000000..6acef9a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicRendererMixin.java @@ -0,0 +1,83 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.schematics.client.SchematicRenderer; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.SchematicLevelExtension; +import net.createmod.catnip.levelWrappers.SchematicLevel; +import net.createmod.catnip.render.ShadedBlockSbbBuilder; +import net.createmod.catnip.render.SuperByteBuffer; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.renderer.block.BlockRenderDispatcher; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.client.renderer.texture.OverlayTexture; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.block.RenderShape; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.BoundingBox; +import net.neoforged.neoforge.client.model.data.ModelData; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(SchematicRenderer.class) +public class SchematicRendererMixin { + + @Final + @Shadow + private BlockPos anchor; + + @SuppressWarnings("removal") + @Inject(method = "drawLayer", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/block/ModelBlockRenderer;clearCache()V", shift = At.Shift.BEFORE)) + private void sable$drawLayer(final RenderType layer, + final CallbackInfoReturnable cir, + @Local final BlockRenderDispatcher dispatcher, + @Local final ModelBlockRenderer renderer, + @Local final RandomSource random, + @Local final SchematicLevel mainRenderWorld, + @Local final PoseStack poseStack, + @Local final BlockPos.MutableBlockPos mutableBlockPos, + @Local final ShadedBlockSbbBuilder sbbBuilder) { + for (final SchematicLevelExtension.SchematicSubLevel subLevel : ((SchematicLevelExtension) mainRenderWorld).sable$getSubLevels()) { + final SchematicLevel renderWorld = subLevel.level(); + final BoundingBox bounds = renderWorld.getBounds(); + renderWorld.renderMode = true; + + poseStack.pushPose(); + poseStack.translate(subLevel.position().x, subLevel.position().y, subLevel.position().z); + poseStack.mulPose(new Quaternionf(subLevel.orientation())); + + for (final BlockPos localPos : BlockPos.betweenClosed(bounds.minX(), bounds.minY(), bounds.minZ(), bounds.maxX(), bounds.maxY(), bounds.maxZ())) { + final BlockPos pos = mutableBlockPos.setWithOffset(localPos, this.anchor); + final BlockState state = renderWorld.getBlockState(pos); + + if (state.getRenderShape() == RenderShape.MODEL) { + final BakedModel model = dispatcher.getBlockModel(state); + final BlockEntity blockEntity = renderWorld.getBlockEntity(localPos); + ModelData modelData = blockEntity != null ? blockEntity.getModelData() : ModelData.EMPTY; + modelData = model.getModelData(renderWorld, pos, state, modelData); + final long seed = state.getSeed(pos); + random.setSeed(seed); + if (model.getRenderTypes(state, random, modelData).contains(layer)) { + poseStack.pushPose(); + poseStack.translate(localPos.getX(), localPos.getY(), localPos.getZ()); + + renderer.tesselateBlock(renderWorld, model, state, pos, poseStack, sbbBuilder, true, + random, seed, OverlayTexture.NO_OVERLAY, modelData, layer); + + poseStack.popPose(); + } + } + } + poseStack.popPose(); + renderWorld.renderMode = false; + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.java new file mode 100644 index 0000000..1ea7789 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicToolBaseMixin.java @@ -0,0 +1,56 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.schematics.client.SchematicTransformation; +import com.simibubi.create.content.schematics.client.tools.SchematicToolBase; +import com.simibubi.create.foundation.utility.RaycastHelper; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.function.Predicate; + +@Mixin(SchematicToolBase.class) +public class SchematicToolBaseMixin { + + @Shadow + protected Vec3 chasingSelectedPos; + + @Shadow + protected Vec3 lastChasingSelectedPos; + + @Inject(method = "updateSelection", at = @At("TAIL")) + public void sable$forceUpdateSelection(final CallbackInfo ci, @Local(ordinal = 0) final Vec3 target) { + ActiveSableCompanion helper = Sable.HELPER; + if (helper.getContainingClient(target) != helper.getContainingClient(this.lastChasingSelectedPos)) { + this.lastChasingSelectedPos = this.chasingSelectedPos = target; + } + } + + @WrapOperation(method = "updateTargetPos", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/foundation/utility/RaycastHelper;rayTraceUntil(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/world/phys/Vec3;Ljava/util/function/Predicate;)Lcom/simibubi/create/foundation/utility/RaycastHelper$PredicateTraceResult;")) + public RaycastHelper.PredicateTraceResult sable$rayTraceSublevels(final Vec3 start, final Vec3 end, final Predicate predicate, final Operation original, @Local final LocalPlayer player, @Local final SchematicTransformation transformation) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(transformation.getAnchor()); + if (subLevel != null) { + final Pose3dc pose = subLevel.renderPose(); + + final Vec3 plotPlayerPos = pose.transformPositionInverse(player.getEyePosition()); + final Vec3 plotStart = transformation.toLocalSpace(plotPlayerPos); + final Vec3 plotEnd = transformation.toLocalSpace(RaycastHelper.getTraceTarget(player, 70, plotPlayerPos)); + + return original.call(plotStart, plotEnd, predicate); + } + + return original.call(start, end, predicate); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.java new file mode 100644 index 0000000..78a4775 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/SchematicTransformMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.schematics.client.SchematicTransformation; +import dev.engine_room.flywheel.lib.transform.PoseTransformStack; +import dev.engine_room.flywheel.lib.transform.Translate; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.createmod.catnip.math.VecHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(SchematicTransformation.class) +public abstract class SchematicTransformMixin { + + @Shadow private Vec3 prevChasingPos; + + @Shadow private Vec3 chasingPos; + + @Shadow public abstract BlockPos getAnchor(); + + @WrapOperation(method = "applyTransformations", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/lib/transform/PoseTransformStack;translate(Lnet/minecraft/world/phys/Vec3;)Ldev/engine_room/flywheel/lib/transform/Translate;", ordinal = 0)) + public Translate sable$transformFromSublevel(final PoseTransformStack instance, final Vec3 vec3, final Operation> original, @Local(argsOnly = true) final Vec3 camera, @Local final float pt, @Local final PoseStack ms) { + final Vec3 center = this.getAnchor().getCenter(); + + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(center), ms); + + return instance.translate(VecHelper.lerp(pt, this.prevChasingPos, this.chasingPos).subtract(SublevelRenderOffsetHelper.translation(center)).subtract(camera)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.java new file mode 100644 index 0000000..a313f4f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/schematics/StructureTemplateMixin.java @@ -0,0 +1,75 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.schematics; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics.StructureTemplateExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.util.SableNBTUtils; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.BlockPos; +import net.minecraft.core.HolderGetter; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.ListTag; +import net.minecraft.nbt.Tag; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Block; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.List; +import java.util.UUID; + +@Mixin(StructureTemplate.class) +public abstract class StructureTemplateMixin implements StructureTemplateExtension { + + @Unique + private final List sable$subLevelTemplates = new ObjectArrayList<>(); + + + @Inject(method = "load", at = @At("TAIL")) + private void sable$load(final HolderGetter holderGetter, final CompoundTag tag, final CallbackInfo ci) { + final ListTag subLevelTags = tag.getList("sub_levels", CompoundTag.TAG_COMPOUND); + + for (final Tag subLevelTag : subLevelTags) { + final CompoundTag subLevelCompound = (CompoundTag) subLevelTag; + final StructureTemplate t = new StructureTemplate(); + + t.load(holderGetter, subLevelCompound); + + final UUID uuid = subLevelCompound.getUUID("uuid"); + final Vector3d position = SableNBTUtils.readVector3d(subLevelCompound.getCompound("position")); + final Quaterniond orientation = SableNBTUtils.readQuaternion(subLevelCompound.getCompound("orientation")); + + this.sable$subLevelTemplates.add(new SubLevelTemplate(uuid, position, orientation, t)); + } + } + + @Inject(method = "fillEntityList", at = @At(value = "INVOKE", target = "Ljava/util/List;clear()V")) + private void fillEntityList(final Level level, + final BlockPos minPos, + final BlockPos maxPos, + final CallbackInfo ci, + @Local final List entities) { + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel schematicSubLevel = helper.getContaining(level, minPos); + + entities.removeIf(entity -> { + final SubLevel entitySubLevel = helper.getContaining(entity); + return !(entitySubLevel == schematicSubLevel || Sable.HELPER.getTrackingSubLevel(entity) == schematicSubLevel); + }); + } + + @Override + public List sable$getSubLevels() { + return this.sable$subLevelTemplates; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.java new file mode 100644 index 0000000..dcefdf2 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockEntityMixin.java @@ -0,0 +1,302 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.sticker; + +import com.simibubi.create.content.contraptions.chassis.StickerBlock; +import com.simibubi.create.content.contraptions.chassis.StickerBlockEntity; +import com.simibubi.create.content.contraptions.glue.SuperGlueEntity; +import com.simibubi.create.content.contraptions.glue.SuperGlueItem; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.constraint.fixed.FixedConstraintConfiguration; +import dev.ryanhcode.sable.api.physics.constraint.fixed.FixedConstraintHandle; +import dev.ryanhcode.sable.api.sublevel.ServerSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.StickerBlockEntityExtension; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.createmod.catnip.platform.CatnipServices; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.HolderLookup; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.joml.Quaterniond; +import org.joml.Quaterniondc; +import org.joml.Vector3d; +import org.joml.Vector3dc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +import java.util.Objects; + +@Mixin(StickerBlockEntity.class) +public abstract class StickerBlockEntityMixin extends SmartBlockEntity implements StickerBlockEntityExtension { + + @Unique + private static final double DISTANCE_TOLERANCE = 0.0625; + + @Unique + private static final double ANGLE_TOLERANCE = 30.0; + + @Unique + private FixedConstraintHandle sable$handle; + @Unique + private BlockPos sable$attachedPos; + @Unique + private Vector3d sable$constraintPos1; + @Unique + private Vector3d sable$constraintPos2; + @Unique + private Quaterniond sable$constraintOrientation; + @Unique + private boolean sable$hadConstraint; + @Unique + private boolean sable$hasConstraint; + + private StickerBlockEntityMixin(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Shadow + public abstract boolean isBlockStateExtended(); + + @Shadow + public abstract void playSound(boolean attach); + + @Override + public void sable$removeConstraint() { + if (this.sable$handle != null) { + this.sable$handle.remove(); + this.sable$handle = null; + } + + this.sable$attachedPos = null; + this.sable$constraintPos1 = null; + this.sable$constraintPos2 = null; + this.sable$constraintOrientation = null; + + this.sable$hasConstraint = false; + this.sendData(); + } + + @Override + public void sable$tickConstraint() { + if (this.isBlockStateExtended()) { + final Direction direction = this.getBlockState().getValue(StickerBlock.FACING); + + if (this.sable$attachedPos != null && !SuperGlueEntity.isValidFace(this.level, this.sable$attachedPos, direction.getOpposite())) { + this.sable$removeConstraint(); + } + + if ((this.sable$handle == null || !this.sable$handle.isValid())) { + if (this.sable$attachedPos != null) { + final ActiveSableCompanion helper = Sable.HELPER; + final ServerSubLevel thisSubLevel = (ServerSubLevel) helper.getContaining(this.level, this.getBlockPos()); + final ServerSubLevel otherSubLevel = (ServerSubLevel) helper.getContaining(this.level, this.sable$attachedPos); + + if (thisSubLevel != otherSubLevel) { + this.sable$applyConstraint(thisSubLevel, otherSubLevel); + } + + return; + } + + this.sable$removeConstraint(); + + final double gridHalfSize = 0.5 * 0.75; + + final Vector3dc rayStartPosition = JOMLConversion.atCenterOf(this.getBlockPos()) + .add(direction.getStepX() * 0.5,direction.getStepY() * 0.5,direction.getStepZ() * 0.5); + + this.sable$tryAttach(rayStartPosition, direction); + + final Vector3d gridRayStartPosition = new Vector3d(); + + // grid for more tolerance + for (int xOffset = -1; xOffset <= 1; xOffset += 2) { + for (int zOffset = -1; zOffset <= 1; zOffset += 2) { + gridRayStartPosition.set(rayStartPosition); + + final Direction secondaryDirection = direction.getAxis().isVertical() ? Direction.NORTH : direction.getClockWise(); + final Direction tertiaryDirection = direction.getAxis().isVertical() ? Direction.EAST : Direction.UP; + + gridRayStartPosition.add(secondaryDirection.getStepX() * xOffset * gridHalfSize, secondaryDirection.getStepY() * xOffset * gridHalfSize, secondaryDirection.getStepZ() * xOffset * gridHalfSize); + gridRayStartPosition.add(tertiaryDirection.getStepX() * zOffset * gridHalfSize, tertiaryDirection.getStepY() * zOffset * gridHalfSize, tertiaryDirection.getStepZ() * zOffset * gridHalfSize); + + this.sable$tryAttach(gridRayStartPosition, direction); + } + } + } + } else { + this.sable$removeConstraint(); + } + } + + /** + * Attempts to attach to a block + */ + @Unique + private void sable$tryAttach(final Vector3dc rayStartPosition, final Direction direction) { + if (this.sable$handle != null || this.sable$hasConstraint) return; + + final int dx = direction.getStepX(); + final int dy = direction.getStepY(); + final int dz = direction.getStepZ(); + final Vec3 start = JOMLConversion.toMojang(rayStartPosition); + final Vec3 end = start.add(dx * DISTANCE_TOLERANCE, dy * DISTANCE_TOLERANCE, dz * DISTANCE_TOLERANCE); + + final BlockHitResult clip = this.level.clip(new ClipContext(start, end, ClipContext.Block.COLLIDER, ClipContext.Fluid.NONE, CollisionContext.empty())); + if (clip.getType() != HitResult.Type.MISS && SuperGlueEntity.isValidFace(this.level, clip.getBlockPos(), direction.getOpposite())) { + final Vec3 hitLocation = clip.getLocation(); + final BlockPos otherPos = clip.getBlockPos(); + final Vector3d from = JOMLConversion.toJOML(start); + final Vector3d to = JOMLConversion.toJOML(hitLocation); + + final ActiveSableCompanion helper = Sable.HELPER; + final ServerSubLevel thisSubLevel = (ServerSubLevel) helper.getContaining(this.level, this.getBlockPos()); + final ServerSubLevel otherSubLevel = (ServerSubLevel) helper.getContaining(this.level, otherPos); + final Quaterniondc first = thisSubLevel != null ? thisSubLevel.logicalPose().orientation() : JOMLConversion.QUAT_IDENTITY; + final Quaterniondc second = otherSubLevel != null ? otherSubLevel.logicalPose().orientation() : JOMLConversion.QUAT_IDENTITY; + + final Direction hitDirection = clip.getDirection().getOpposite(); + + // we want to align both primary axes of the stickers + final Vector3d globalDirectionA = first.transform(new Vector3d(dx, dy, dz)); + final Vector3d globalDirectionB = second.transform(new Vector3d(hitDirection.getStepX(), hitDirection.getStepY(), hitDirection.getStepZ())); + + // get the angle & axis of global alignment + final Vector3d axis = new Vector3d(globalDirectionA).cross(globalDirectionB).normalize(); + final double dot = globalDirectionA.dot(globalDirectionB); + + // prevent NaN or invalid facing directions + if (dot < 1e-6 || dot > 1.0) { + return; + } + + final double angle = Math.acos(dot); + + // tolerance it so we don't snap at extreme angles + if (angle > Math.toRadians(ANGLE_TOLERANCE)) { + return; + } + + // apply constraint + this.sable$attachedPos = otherPos; + this.sable$constraintPos1 = from; + this.sable$constraintPos2 = to; + + // alignment rotation has to be in global space + this.sable$constraintOrientation = new Quaterniond().rotateAxis(-angle, axis) + .mul(second).premul(first.conjugate(new Quaterniond())); + + this.sable$applyConstraint(thisSubLevel, otherSubLevel); + } + } + + @Unique + private void sable$applyConstraint(final ServerSubLevel thisSubLevel, final ServerSubLevel otherSubLevel) { + if (!(this.level instanceof final ServerLevel serverLevel)) { + throw new IllegalStateException("StickerBlockEntity must be on a ServerLevel to apply constraints."); + } + + final FixedConstraintConfiguration constraint = new FixedConstraintConfiguration( + this.sable$constraintPos1, + this.sable$constraintPos2, + this.sable$constraintOrientation); + + final ServerSubLevelContainer container = SubLevelContainer.getContainer(serverLevel); + this.sable$handle = container.physicsSystem().getPipeline().addConstraint(thisSubLevel, otherSubLevel, constraint); + this.sable$hasConstraint = true; + this.sendData(); + } + + @Override + public void remove() { + super.remove(); + this.sable$removeConstraint(); + } + + @Inject(method = "tick", at = @At("HEAD")) + public void tick(final CallbackInfo ci) { + if (this.level.isClientSide()) { + if (this.sable$hadConstraint != this.sable$hasConstraint) { + this.sable$hadConstraint = this.sable$hasConstraint; + if (this.sable$hasConstraint) { + SuperGlueItem.spawnParticles(this.level, this.worldPosition, this.getBlockState().getValue(StickerBlock.FACING), true); + CatnipServices.PLATFORM.executeOnClientOnly(() -> () -> this.playSound(true)); + } else { + CatnipServices.PLATFORM.executeOnClientOnly(() -> () -> this.playSound(false)); + } + } + return; + } + + this.sable$tickConstraint(); + } + + @Inject(method = "write", at = @At("TAIL")) + public void write(final CompoundTag compound, final HolderLookup.Provider registries, final boolean clientPacket, final CallbackInfo ci) { + if (clientPacket) { + compound.putBoolean("SableHasConstraint", this.sable$handle != null); + } else if (this.sable$handle != null) { + final CompoundTag constraint = new CompoundTag(); + final BlockPos blockPos = this.getBlockPos(); + constraint.putInt("ThisX", blockPos.getX()); + constraint.putInt("ThisY", blockPos.getY()); + constraint.putInt("ThisZ", blockPos.getZ()); + + constraint.putInt("X", this.sable$attachedPos.getX()); + constraint.putInt("Y", this.sable$attachedPos.getY()); + constraint.putInt("Z", this.sable$attachedPos.getZ()); + constraint.putDouble("FromX", this.sable$constraintPos1.x); + constraint.putDouble("FromY", this.sable$constraintPos1.y); + constraint.putDouble("FromZ", this.sable$constraintPos1.z); + constraint.putDouble("ToX", this.sable$constraintPos2.x); + constraint.putDouble("ToY", this.sable$constraintPos2.y); + constraint.putDouble("ToZ", this.sable$constraintPos2.z); + constraint.putDouble("QuatX", this.sable$constraintOrientation.x); + constraint.putDouble("QuatY", this.sable$constraintOrientation.y); + constraint.putDouble("QuatZ", this.sable$constraintOrientation.z); + constraint.putDouble("QuatW", this.sable$constraintOrientation.w); + compound.put("SableConstraint", constraint); + } + } + + @Inject(method = "read", at = @At("TAIL")) + public void read(final CompoundTag compound, final HolderLookup.Provider registries, final boolean clientPacket, final CallbackInfo ci) { + if (clientPacket) { + this.sable$hasConstraint = compound.getBoolean("SableHasConstraint"); + } else { + if (compound.contains("SableConstraint", CompoundTag.TAG_COMPOUND)) { + final CompoundTag constraint = compound.getCompound("SableConstraint"); + final BlockPos thisPos = new BlockPos(constraint.getInt("ThisX"), constraint.getInt("ThisY"), constraint.getInt("ThisZ")); + + if (!Objects.equals(this.getBlockPos(), thisPos)) { + this.sable$removeConstraint(); + return; + } + + this.sable$attachedPos = new BlockPos(constraint.getInt("X"), constraint.getInt("Y"), constraint.getInt("Z")); + this.sable$constraintPos1 = new Vector3d(constraint.getDouble("FromX"), constraint.getDouble("FromY"), constraint.getDouble("FromZ")); + this.sable$constraintPos2 = new Vector3d(constraint.getDouble("ToX"), constraint.getDouble("ToY"), constraint.getDouble("ToZ")); + this.sable$constraintOrientation = new Quaterniond(constraint.getDouble("QuatX"), constraint.getDouble("QuatY"), constraint.getDouble("QuatZ"), constraint.getDouble("QuatW")); + } else { + this.sable$attachedPos = null; + this.sable$constraintPos1 = null; + this.sable$constraintPos2 = null; + this.sable$constraintOrientation = null; + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.java new file mode 100644 index 0000000..e6bb394 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/sticker/StickerBlockMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.sticker; + +import com.simibubi.create.content.contraptions.chassis.StickerBlock; +import dev.ryanhcode.sable.api.block.BlockSubLevelAssemblyListener; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.StickerBlockEntityExtension; +import net.minecraft.core.BlockPos; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(StickerBlock.class) +public class StickerBlockMixin implements BlockSubLevelAssemblyListener { + + @SuppressWarnings("AddedMixinMembersNamePattern") + @Override + public void afterMove(final ServerLevel originLevel, final ServerLevel resultingLevel, final BlockState newState, final BlockPos oldPos, final BlockPos newPos) { + if (originLevel.getBlockEntity(oldPos) instanceof final StickerBlockEntityExtension extension) { + extension.sable$removeConstraint(); + } + if (resultingLevel.getBlockEntity(newPos) instanceof final StickerBlockEntityExtension extension) { + extension.sable$removeConstraint(); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.java new file mode 100644 index 0000000..03c35c6 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/EntityHatsMixin.java @@ -0,0 +1,26 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.stock_ticker; + +import com.simibubi.create.content.equipment.hats.EntityHats; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.LivingEntity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(EntityHats.class) +public class EntityHatsMixin { + + @Redirect(method = "getLogisticsHatFor", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/LivingEntity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private static BlockPos sable$getStockTickerPosition(final LivingEntity instance) { + final Entity vehicle = instance.getRootVehicle(); + + if (Sable.HELPER.getContaining(vehicle) != null) { + return vehicle.blockPosition(); + } + + return instance.blockPosition(); + + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.java new file mode 100644 index 0000000..7c31842 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/stock_ticker/StockTickerInteractionHandlerMixin.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.stock_ticker; + +import com.simibubi.create.content.logistics.stockTicker.StockTickerInteractionHandler; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(StockTickerInteractionHandler.class) +public class StockTickerInteractionHandlerMixin { + + @Redirect(method = "getStockTickerPosition", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/Entity;blockPosition()Lnet/minecraft/core/BlockPos;")) + private static BlockPos sable$getStockTickerPosition(final Entity instance) { + final Entity vehicle = instance.getRootVehicle(); + + if (Sable.HELPER.getContaining(vehicle) != null) { + return vehicle.blockPosition(); + } + + return instance.blockPosition(); + + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.java new file mode 100644 index 0000000..836e3ed --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/LevelAccessor.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.super_glue; + +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.entity.LevelEntityGetter; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Invoker; + +@Mixin(Level.class) +public interface LevelAccessor { + + @Invoker + LevelEntityGetter invokeGetEntities(); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.java new file mode 100644 index 0000000..3279277 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueEntityMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.super_glue; + +import com.google.common.collect.Lists; +import com.simibubi.create.content.contraptions.glue.SuperGlueEntity; +import dev.ryanhcode.sable.util.SubLevelInclusiveLevelEntityGetter; +import net.minecraft.util.AbortableIterationConsumer; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.entity.EntityTypeTest; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +import java.util.List; + +@Mixin(value = SuperGlueEntity.class, remap = false) +public class SuperGlueEntityMixin { + + @Redirect(method = "collectCropped", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getEntitiesOfClass(Ljava/lang/Class;Lnet/minecraft/world/phys/AABB;)Ljava/util/List;")) + private static List sable$collectGlueEntities(final Level instance, final Class aClass, final AABB aabb) { + if (((LevelAccessor) instance).invokeGetEntities() instanceof final SubLevelInclusiveLevelEntityGetter getter) { + final List list = Lists.newArrayList(); + getter.getIgnoringSubLevels(EntityTypeTest.forClass(aClass), aabb, (entity) -> { + list.add(entity); + return AbortableIterationConsumer.Continuation.CONTINUE; + }); + return list; + } + + return instance.getEntitiesOfClass(aClass, aabb); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.java new file mode 100644 index 0000000..3855778 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueRemovalPacketMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.super_glue; + +import com.simibubi.create.content.contraptions.glue.SuperGlueRemovalPacket; +import dev.ryanhcode.sable.Sable; +import net.minecraft.server.level.ServerPlayer; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the range check in Create's {@link SuperGlueRemovalPacket} handling to account for sub-levels. + */ +@Mixin(SuperGlueRemovalPacket.class) +public class SuperGlueRemovalPacketMixin { + + @Redirect(method = "handle", at = @At(value = "INVOKE", target = "Lnet/minecraft/server/level/ServerPlayer;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private double sable$distanceSquared(final ServerPlayer instance, final Vec3 vec3) { + return Sable.HELPER.distanceSquaredWithSubLevels(instance.level(), instance.position(), vec3); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.java new file mode 100644 index 0000000..5205c46 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/super_glue/SuperGlueSelectionHandlerMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.super_glue; + +import com.simibubi.create.content.contraptions.glue.SuperGlueEntity; +import com.simibubi.create.content.contraptions.glue.SuperGlueSelectionHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.world.phys.AABB; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * TODO: Instead of projecting the BB outwards, project the ray inwards + */ +@Mixin(SuperGlueSelectionHandler.class) +public class SuperGlueSelectionHandlerMixin { + + @Redirect(method = "tick", + at = @At(value = "INVOKE", + target = "Lcom/simibubi/create/content/contraptions/glue/SuperGlueEntity;getBoundingBox()Lnet/minecraft/world/phys/AABB;", ordinal = 0)) + private AABB sable$projectBoundingBox(final SuperGlueEntity instance) { + final SubLevel subLevel = Sable.HELPER.getContaining(instance); + + if (subLevel != null) { + final BoundingBox3d bb = new BoundingBox3d(instance.getBoundingBox()); + return bb.transform(subLevel.logicalPose(), bb).toMojang(); + } + + return instance.getBoundingBox(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.java new file mode 100644 index 0000000..a437a7d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolBoxClientHandlerMixin.java @@ -0,0 +1,23 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.toolbox; + +import com.simibubi.create.content.equipment.toolbox.ToolboxHandlerClient; +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes the range check in Create's {@link ToolboxHandlerClient} handling to account for sub-levels. + */ +@Mixin(ToolboxHandlerClient.class) +public class ToolBoxClientHandlerMixin { + + @Redirect(method = "*", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/equipment/toolbox/ToolboxHandler;distance(Lnet/minecraft/world/phys/Vec3;Lnet/minecraft/core/BlockPos;)D")) + private static double sable$sublevelDistance(final Vec3 location, final BlockPos p) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, location, p.getX() + 0.5, p.getY(), p.getZ() + 0.5); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.java new file mode 100644 index 0000000..f8c3999 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/toolbox/ToolboxHandlerMixin.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.toolbox; + +import com.simibubi.create.content.equipment.toolbox.ToolboxBlockEntity; +import com.simibubi.create.content.equipment.toolbox.ToolboxHandler; +import dev.ryanhcode.sable.Sable; +import net.createmod.catnip.data.WorldAttached; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.Comparator; +import java.util.List; +import java.util.WeakHashMap; +import java.util.stream.Collectors; + +import static com.simibubi.create.content.equipment.toolbox.ToolboxHandler.getMaxRange; + +/** + * Fixes the range check in Create's {@link ToolboxHandler} handling to account for sub-levels. + */ +@Mixin(ToolboxHandler.class) +public abstract class ToolboxHandlerMixin { + + @Shadow + @Final + public static WorldAttached> toolboxes; + + @Inject(method = "withinRange", at = @At("HEAD"), remap = false, cancellable = true) + private static void sable$withinRangeToolBoxRedirect(final Player player, final ToolboxBlockEntity box, final CallbackInfoReturnable cir) { + if (player.level() != box.getLevel()) + cir.setReturnValue(false); + + final double maxRange = getMaxRange(player); + cir.setReturnValue(ToolboxHandlerMixin.sable$getDistance(player.level(), player.position(), box.getBlockPos()) < maxRange * maxRange); + } + + @Inject(method = "getNearest", at = @At("HEAD"), remap = false, cancellable = true) + private static void sable$getNearestToolBoxRedirect(final LevelAccessor world, final Player player, final int maxAmount, final CallbackInfoReturnable> cir) { + final Vec3 location = player.position(); + final double maxRange = getMaxRange(player); + + cir.setReturnValue(ToolboxHandlerMixin.toolboxes.get(world) + .keySet() + .stream() + .filter(p -> ToolboxHandlerMixin.sable$getDistance(world, location, p) < maxRange * maxRange) + .sorted(Comparator.comparingDouble(p -> ToolboxHandlerMixin.sable$getDistance(world, location, p))) + .limit(maxAmount) + .map(ToolboxHandlerMixin.toolboxes.get(world)::get) + .filter(ToolboxBlockEntity::isFullyInitialized) + .collect(Collectors.toList())); + } + + @Unique + private static double sable$getDistance(final LevelAccessor level, final Vec3 pos, final BlockPos bPos) { + return Sable.HELPER.distanceSquaredWithSubLevels((Level) level, pos, bPos.getX() + 0.5, bPos.getY(), bPos.getZ() + 0.5); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.java new file mode 100644 index 0000000..466fb17 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/CurvedTrackDestroyPacketMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.simibubi.create.content.trains.track.CurvedTrackDestroyPacket; +import com.simibubi.create.content.trains.track.TrackBlockEntity; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(CurvedTrackDestroyPacket.class) +public class CurvedTrackDestroyPacketMixin { + + @Redirect(method = "applySettings(Lnet/minecraft/server/level/ServerPlayer;Lcom/simibubi/create/content/trains/track/TrackBlockEntity;)V", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/trains/track/TrackBlockEntity;getBlockPos()Lnet/minecraft/core/BlockPos;")) + protected BlockPos sable$getWorldBlockPos(final TrackBlockEntity instance) { + return BlockPos.containing(Sable.HELPER.projectOutOfSubLevel(instance.getLevel(), instance.getBlockPos().getCenter())); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.java new file mode 100644 index 0000000..750940f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockItemMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.trains.track.TrackBlockItem; +import com.simibubi.create.content.trains.track.TrackTargetingBlockItem; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.UseOnContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin({ TrackBlockItem.class, TrackTargetingBlockItem.class }) +public class TrackBlockItemMixin { + + @Redirect(method = "useOn", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getLookAngle()Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$getLookAngle(final Player instance, @Local(argsOnly = true) final UseOnContext context) { + final Level level = context.getLevel(); + final BlockPos clickedPos = context.getClickedPos(); + final SubLevel subLevel = Sable.HELPER.getContaining(level, clickedPos); + + Vec3 lookAngle = instance.getLookAngle(); + if (subLevel != null) { + lookAngle = subLevel.logicalPose().transformNormalInverse(lookAngle); + } + + return lookAngle; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.java new file mode 100644 index 0000000..e3dfdce --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockMixin.java @@ -0,0 +1,34 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.trains.track.TrackBlock; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.context.BlockPlaceContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(TrackBlock.class) +public class TrackBlockMixin { + + @Redirect(method = "getStateForPlacement", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getLookAngle()Lnet/minecraft/world/phys/Vec3;")) + public Vec3 sable$getLookAngle(final Player instance, @Local(argsOnly = true) final BlockPlaceContext context) { + final Level level = context.getLevel(); + final BlockPos clickedPos = context.getClickedPos(); + final SubLevel subLevel = Sable.HELPER.getContaining(level, clickedPos); + + Vec3 lookAngle = instance.getLookAngle(); + + if (subLevel != null) { + lookAngle = subLevel.logicalPose().transformNormalInverse(lookAngle); + } + + return lookAngle; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.java new file mode 100644 index 0000000..e374f7d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackBlockOutlineMixin.java @@ -0,0 +1,157 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.Share; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.trains.track.BezierConnection; +import com.simibubi.create.content.trains.track.TrackBlockEntity; +import com.simibubi.create.content.trains.track.TrackBlockOutline; +import dev.engine_room.flywheel.lib.transform.PoseTransformStack; +import dev.engine_room.flywheel.lib.transform.Translate; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import net.createmod.catnip.animation.AnimationTickHolder; +import net.minecraft.client.Minecraft; +import net.minecraft.client.player.LocalPlayer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.Redirect; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(TrackBlockOutline.class) +public class TrackBlockOutlineMixin { + + /** + * Translating the render of curve sections, rotation is not needed + * */ + @WrapOperation(method = "drawCurveSelection", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/lib/transform/PoseTransformStack;translate(DDD)Ldev/engine_room/flywheel/lib/transform/Translate;", ordinal = 0)) + private static Translate sable$translateCurveFactoringSubLevels(final PoseTransformStack ms, + final double x, + final double y, + final double z, + final Operation> original, + @Local(name = "result") final TrackBlockOutline.BezierPointSelection result, + @Local(name = "camera") final Vec3 camera) { + final Level level = Minecraft.getInstance().level; + + if (level == null) { + return original.call(ms, x, y, z); + } + + final Vec3 bezierPos = result.vec(); + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(level, bezierPos); + + if (subLevel == null) { + return original.call(ms, x, y, z); + } + + Vec3 worldPos = subLevel.renderPose().transformPosition(bezierPos); + worldPos = worldPos.subtract(camera); + return ms + .translate(worldPos.x, worldPos.y, worldPos.z) + .rotate(new Quaternionf(subLevel.renderPose().orientation())); + } + + /** + * Translating the render of normal block outlines, rotation is needed here + * */ + @Redirect(method = "drawCustomBlockSelection", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V")) + private static void sable$translateBlockFactoringSubLevels(final PoseStack instance, + final double x, + final double y, + final double z, + @Local(name = "camPos") final Vec3 camPos, + @Local(name = "pos") final BlockPos pos) { + final Level level = Minecraft.getInstance().level; + + if (level == null) { + instance.translate(x, y, z); + return; + } + + final ClientSubLevel subLevel = (ClientSubLevel) Sable.HELPER.getContaining(level, pos); + + if (subLevel == null) { + instance.translate(x, y, z); + return; + } + + final Vec3 localPos = subLevel.renderPose().transformPosition(Vec3.atLowerCornerOf(pos)); + instance.translate(localPos.x - camPos.x, localPos.y - camPos.y, localPos.z - camPos.z); + instance.mulPose(new Quaternionf(subLevel.renderPose().orientation())); + } + + /** + * Provides the subLevel to the other 2 redirects so that the curve can translate its bounds and position to world space + */ + @Inject(method = "pickCurves", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/trains/track/BezierConnection;isPrimary()Z")) + private static void sable$findBlockEntitySubLevel(final CallbackInfo ci, + @Share("currentBlockEntitySubLevel") final LocalRef subLevel, + @Local(name = "be") final TrackBlockEntity be) { + subLevel.set((ClientSubLevel) Sable.HELPER.getContaining(be)); + } + + @Redirect(method = "pickCurves", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/trains/track/BezierConnection;getBounds()Lnet/minecraft/world/phys/AABB;")) + private static AABB sable$getWorldSpaceBounds(final BezierConnection instance, + @Share("currentBlockEntitySubLevel") final LocalRef subLevel, + @Local(name = "bc") final BezierConnection bc) { + if (subLevel.get() == null) { + return instance.getBounds(); + } + + final float partialTicks = AnimationTickHolder.getPartialTicks(Minecraft.getInstance().level); + final BoundingBox3d localBounds = new BoundingBox3d(instance.getBounds()).transform(subLevel.get().renderPose(partialTicks)); + return localBounds.toMojang(); + } + + @Redirect(method = "pickCurves", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/player/LocalPlayer;getEyePosition(F)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getEyePosition(final LocalPlayer entity, final float partialTicks) { + return Sable.HELPER.getEyePositionInterpolated(entity, partialTicks); + } + + @Redirect(method = "pickCurves", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceToSqr(Lnet/minecraft/world/phys/Vec3;)D")) + private static double sable$distanceToHitSquared(final Vec3 vecA, final Vec3 vecB) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, vecA, vecB); + } + + @Redirect(method = "pickCurves", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;subtract(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;", ordinal = 1)) + private static Vec3 sable$getLocalOrigin(final Vec3 origin, + final Vec3 anchor, + @Share("currentBlockEntitySubLevel") final LocalRef subLevel, + @Local(name = "bc") final BezierConnection bc) { + if (subLevel.get() == null) { + return origin.subtract(anchor); + } + + final float partialTicks = AnimationTickHolder.getPartialTicks(Minecraft.getInstance().level); + final Vec3 localOrigin = subLevel.get().renderPose(partialTicks).transformPositionInverse(origin); + return localOrigin.subtract(anchor); + } + + @Redirect(method = "pickCurves", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;subtract(Lnet/minecraft/world/phys/Vec3;)Lnet/minecraft/world/phys/Vec3;", ordinal = 2)) + private static Vec3 sable$getLocalTarget(final Vec3 target, + final Vec3 origin, + @Share("currentBlockEntitySubLevel") final LocalRef subLevel, + @Local(name = "bc") final BezierConnection bc) { + if (subLevel.get() == null) { + return target.subtract(origin); + } + + final float partialTicks = AnimationTickHolder.getPartialTicks(Minecraft.getInstance().level); + final Vec3 localTarget = subLevel.get().renderPose(partialTicks).transformPositionInverse(target); + final Vec3 localOrigin = subLevel.get().renderPose(partialTicks).transformPositionInverse(origin); + return localTarget.subtract(localOrigin); + } + +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.java new file mode 100644 index 0000000..000ae0c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackGraphVisualizerMixin.java @@ -0,0 +1,46 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.simibubi.create.content.trains.graph.*; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.util.Mth; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.objectweb.asm.Opcodes; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; + +@Mixin(TrackGraphVisualizer.class) +public class TrackGraphVisualizerMixin { + + @WrapOperation(method = "debugViewGraph", at = @At(value = "FIELD", target = "Lcom/simibubi/create/content/trains/graph/TrackGraphBounds;box:Lnet/minecraft/world/phys/AABB;", opcode = Opcodes.GETFIELD)) + private static AABB debugViewGraph(final TrackGraphBounds instance, + final Operation original) { + if (instance.box == null) return original.call(instance); + + final Level level = Minecraft.getInstance().level; + if (level == null) return original.call(instance); + + final Vec3 center = instance.box.getCenter(); + final SubLevel containing = Sable.HELPER.getContaining(level, center); + + if (containing == null) return original.call(instance); + + return new BoundingBox3d(instance.box).transform(containing.logicalPose()).toMojang(); + } + + @WrapOperation(method = "debugViewGraph", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + private static double debugViewGraph(final Vec3 location, + final Vec3 camera, + final Operation original) { + final Level level = Minecraft.getInstance().level; + if (level == null) return original.call(location, camera); + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(level, location, camera)); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.java new file mode 100644 index 0000000..6e38589 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackPlacementMixin.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.trains.track.TrackPlacement; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(TrackPlacement.class) +public class TrackPlacementMixin { + + @Redirect(method = "tryConnect", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getLookAngle()Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$getLookAngle(final Player instance, @Local(argsOnly = true) final BlockPos blockPos) { + final Level level = instance.level(); + final BlockPos clickedPos = blockPos; + final SubLevel subLevel = Sable.HELPER.getContaining(level, clickedPos); + + Vec3 lookAngle = instance.getLookAngle(); + if (subLevel != null) { + lookAngle = subLevel.logicalPose().transformNormalInverse(lookAngle); + } + + return lookAngle; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.java new file mode 100644 index 0000000..6d24adc --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/tracks/TrackTargetingClientMixin.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.tracks; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.trains.track.TrackTargetingClient; +import dev.engine_room.flywheel.lib.transform.PoseTransformStack; +import dev.engine_room.flywheel.lib.transform.Translate; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(TrackTargetingClient.class) +public class TrackTargetingClientMixin { + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/lib/transform/PoseTransformStack;translate(Lnet/minecraft/world/phys/Vec3;)Ldev/engine_room/flywheel/lib/transform/Translate;")) + private static Translate sable$manipulateMatrixStack(final PoseTransformStack instance, + final Vec3 vec3, + @Local(ordinal = 0) final Minecraft minecraft, @Local(ordinal = 0) final BlockPos pos, + @Local(argsOnly = true) final Vec3 camera) { + final ClientLevel level = minecraft.level; + final SubLevel subLevel = Sable.HELPER.getContaining(level, pos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final Pose3dc renderPose = clientSubLevel.renderPose(); + final Vec3 renderPos = renderPose.transformPosition(Vec3.atLowerCornerOf(pos)); + final Quaternionf renderOrientation = new Quaternionf(renderPose.orientation()); + return instance.translate(renderPos.x() - camera.x(), renderPos.y() - camera.y(), renderPos.z() - camera.z()).rotate(renderOrientation); + } + + return instance.translate(vec3); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.java new file mode 100644 index 0000000..98c8ab8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/trains/CarriageContraptionVisualMixin.java @@ -0,0 +1,69 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.trains; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.contraptions.render.ContraptionVisual; +import com.simibubi.create.content.trains.entity.CarriageContraptionEntity; +import com.simibubi.create.content.trains.entity.CarriageContraptionVisual; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.lib.transform.PoseTransformStack; +import dev.engine_room.flywheel.lib.transform.Translate; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import net.minecraft.core.Vec3i; +import net.minecraft.util.Mth; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.phys.Vec3; +import org.joml.Quaternionf; +import org.joml.Vector3f; +import org.joml.Vector3fc; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(CarriageContraptionVisual.class) +public abstract class CarriageContraptionVisualMixin extends ContraptionVisual { + + public CarriageContraptionVisualMixin(final VisualizationContext ctx, final CarriageContraptionEntity entity, final float partialTick) { + super(ctx, entity, partialTick); + } + + @Redirect(method = "animate", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/lib/transform/PoseTransformStack;translate(Lorg/joml/Vector3fc;)Ldev/engine_room/flywheel/lib/transform/Translate;")) + private Translate sable$translate(final PoseTransformStack instance, final Vector3fc vector3fc, @Local final Vector3f visualPosition, @Local(argsOnly = true) final float partialTick) { + final Vec3 pos = this.entity.position(); + final SubLevelContainer container = SubLevelContainer.getContainer(this.entity.level()); + + if (container == null) { + instance.translate(vector3fc); + return instance; + } + + final ChunkPos chunkPos = this.entity.chunkPosition(); + final boolean inBounds = container.inBounds(chunkPos); + + if (!inBounds) { + instance.translate(vector3fc); + return instance; + } + + final int plotX = (chunkPos.x >> container.getLogPlotSize()) - container.getOrigin().x; + final int plotZ = (chunkPos.z >> container.getLogPlotSize()) - container.getOrigin().y; + + final FlywheelCompatNeoForge.SubLevelFlwRenderState state = FlywheelCompatNeoForge.getInfo(ChunkPos.asLong(plotX, plotZ)); + + if (state == null) { + instance.translate(vector3fc); + return instance; + } + + final double entityX = Mth.lerp(partialTick, this.entity.xOld, pos.x); + final double entityY = Mth.lerp(partialTick, this.entity.yOld, pos.y); + final double entityZ = Mth.lerp(partialTick, this.entity.zOld, pos.z); + + final Vec3i origin = this.renderOrigin(); + final Vec3 renderPos = state.renderPose.transformPosition(new Vec3(entityX, entityY, entityZ)).subtract(origin.getX(), origin.getY(), origin.getZ()); + + instance.translate(renderPos.x, renderPos.y, renderPos.z); + instance.rotate(new Quaternionf(state.renderPose.orientation())); + return instance; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.java new file mode 100644 index 0000000..b05b9e2 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/turntable/TurntableBlockMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.turntable; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.turntable.TurntableBlock; +import com.simibubi.create.content.kinetics.turntable.TurntableBlockEntity; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(TurntableBlock.class) +public class TurntableBlockMixin { + + @Redirect(method = "lambda$entityInside$0", at = @At(value = "INVOKE", target = "Lnet/createmod/catnip/math/VecHelper;getCenterOf(Lnet/minecraft/core/Vec3i;)Lnet/minecraft/world/phys/Vec3;")) + private static Vec3 sable$fixPos(final Vec3i pos, @Local(argsOnly = true) final TurntableBlockEntity be) { + final Level level = be.getLevel(); + return JOMLConversion.toMojang(Sable.HELPER.projectOutOfSubLevel(level, JOMLConversion.atCenterOf(pos))); + } + + @Redirect(method = "entityInside", at = @At(value = "INVOKE", target = "Lnet/minecraft/core/BlockPos;getY()I")) + private int sable$fixPosY(final BlockPos instance, @Local(argsOnly = true) final Level level) { + return (int) Sable.HELPER.projectOutOfSubLevel(level, JOMLConversion.atLowerCornerOf(instance)).y; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.java new file mode 100644 index 0000000..cca4cc6 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/vertical_gearbox/VerticalGearboxItemMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.vertical_gearbox; + +import com.llamalad7.mixinextras.sugar.Local; +import com.simibubi.create.content.kinetics.gearbox.VerticalGearboxItem; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +/** + * Fixes vertical gearbox placement direction + */ +@Mixin(VerticalGearboxItem.class) +public class VerticalGearboxItemMixin { + + @Redirect(method = "updateCustomBlockEntityTag", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/entity/player/Player;getDirection()Lnet/minecraft/core/Direction;")) + private Direction sable$getDirection(final Player player, @Local(argsOnly = true) final BlockPos pos, @Local(argsOnly = true) final Level level) { + final SubLevel subLevel = Sable.HELPER.getContaining(level, pos); + + if (subLevel != null) { + SubLevelHelper.pushEntityLocal(subLevel, player); + final Direction dir = player.getDirection(); + SubLevelHelper.popEntityLocal(subLevel, player); + + return dir; + } + + return player.getDirection(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.java new file mode 100644 index 0000000..d75a62b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/wand_of_symmetry/SymmetryHandlerMixin.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.wand_of_symmetry; + +import com.llamalad7.mixinextras.sugar.Local; +import com.mojang.blaze3d.vertex.PoseStack; +import com.simibubi.create.content.equipment.symmetryWand.SymmetryHandler; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.util.SublevelRenderOffsetHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(SymmetryHandler.class) +public class SymmetryHandlerMixin { + @Redirect(method = "onRenderWorld", at = @At(value = "INVOKE", target = "Lcom/mojang/blaze3d/vertex/PoseStack;translate(DDD)V", ordinal = 0)) + private static void accountForSublevels(final PoseStack instance, final double f, final double g, final double h, + final @Local(name = "pos") BlockPos pos) { + SublevelRenderOffsetHelper.posePlotToProjected(Sable.HELPER.getContainingClient(pos), instance); + final Vec3 translation = SublevelRenderOffsetHelper.translation(Vec3.atLowerCornerOf(pos)); + + instance.translate(f - translation.x, g - translation.y, h - translation.z); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.java new file mode 100644 index 0000000..6895598 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/create/zapper/ZapperItemMixin.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.create.zapper; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import com.simibubi.create.content.equipment.zapper.ZapperItem; +import dev.ryanhcode.sable.Sable; +import net.minecraft.world.InteractionHand; +import net.minecraft.world.InteractionResultHolder; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.BlockHitResult; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +/** + * Makes the beam dispensed from Create's {@link ZapperItem} appear in the correct location + */ +@Mixin(ZapperItem.class) +public class ZapperItemMixin { + + @Inject(method = "use", at = @At(value = "INVOKE", target = "Lcom/simibubi/create/content/equipment/zapper/ShootableGadgetItemMethods;applyCooldown(Lnet/minecraft/world/entity/player/Player;Lnet/minecraft/world/item/ItemStack;Lnet/minecraft/world/InteractionHand;Ljava/util/function/Predicate;I)V")) + private void sable$projectTargetPos(final Level world, final Player player, final InteractionHand hand, final CallbackInfoReturnable> cir, @Local final LocalRef raytrace) { + final BlockHitResult blockHitResult = raytrace.get(); + + raytrace.set(new BlockHitResult( + Sable.HELPER.projectOutOfSubLevel(world, blockHitResult.getLocation()), + blockHitResult.getDirection(), + blockHitResult.getBlockPos(), + blockHitResult.isInside() + )); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.java new file mode 100644 index 0000000..97c8e3c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/AbstractBlockEntityVisualMixin.java @@ -0,0 +1,33 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.lib.visual.AbstractBlockEntityVisual; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.LevelRenderer; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.BlockAndTintGetter; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(AbstractBlockEntityVisual.class) +public class AbstractBlockEntityVisualMixin { + + @Redirect(method = "relight(Lnet/minecraft/core/BlockPos;[Ldev/engine_room/flywheel/lib/instance/FlatLit;)V", at = @At(value = "INVOKE", target = "Lnet/minecraft/client/renderer/LevelRenderer;getLightColor(Lnet/minecraft/world/level/BlockAndTintGetter;Lnet/minecraft/core/BlockPos;)I")) + private int sable$getLightColor(final BlockAndTintGetter blockAndTintGetter, final BlockPos blockPos) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(Minecraft.getInstance().level); + assert container != null; + final SubLevel subLevel = Sable.HELPER.getContainingClient(blockPos); + + if (subLevel instanceof final ClientSubLevel clientSubLevel) { + final int color = LevelRenderer.getLightColor(blockAndTintGetter, blockPos); + return clientSubLevel.scaleLightColor(color); + } + + return LevelRenderer.getLightColor(blockAndTintGetter, blockPos); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.java new file mode 100644 index 0000000..3e6629c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/BlockEntityStorageMixin.java @@ -0,0 +1,224 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.llamalad7.mixinextras.injector.wrapoperation.WrapOperation; +import com.mojang.blaze3d.vertex.PoseStack; +import dev.engine_room.flywheel.api.visual.BlockEntityVisual; +import dev.engine_room.flywheel.api.visual.LightUpdatedVisual; +import dev.engine_room.flywheel.api.visualization.BlockEntityVisualizer; +import dev.engine_room.flywheel.api.visualization.VisualEmbedding; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.api.visualization.VisualizationManager; +import dev.engine_room.flywheel.impl.visualization.storage.BlockEntityStorage; +import dev.engine_room.flywheel.impl.visualization.storage.Storage; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.sublevel.ClientSubLevelContainer; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.flywheel.SubLevelEmbedding; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.BlockEntityStorageExtension; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.EmbeddedEnvironmentExtension; +import dev.ryanhcode.sable.sublevel.ClientSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.longs.Long2ObjectMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import net.minecraft.core.Vec3i; +import net.minecraft.world.level.ChunkPos; +import net.minecraft.world.level.block.entity.BlockEntity; +import org.joml.*; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.Unique; +import org.spongepowered.asm.mixin.injection.At; + +import java.util.Iterator; +import java.util.Map; + +/** + * Adds compatibility with Flywheel by redirecting the addition of {@link BlockEntityVisual BlockEntityVisuals} to {@link VisualEmbedding VisualEmbeddings} if they reside in a data plot. + */ +@Mixin(value = BlockEntityStorage.class, remap = false) +public abstract class BlockEntityStorageMixin extends Storage implements BlockEntityStorageExtension { + + // Storage for temporary pose values to avoid repeated allocation + @Unique + private final Quaternionf sable$orientationStorage = new Quaternionf(); + @Unique + private final Vector3d sable$localOffsetStorage = new Vector3d(); + /** + * Visual embeddings & info kept for every sub-level + */ + @Unique + private final Map sable$subLevelEmbeddings = new Object2ObjectOpenHashMap<>(); + @Unique + private final Matrix3f sable$normalMatStorage = new Matrix3f(); + @Shadow + @Final + private Long2ObjectMap> posLookup; + @Unique + private VisualizationContext sable$planVisualizationContext; + + @Override + public void sable$setPlanVisualizationContext(final VisualizationContext visualizationContext) { + // TODO: we really shouldn't be storing visualization contexts like this + this.sable$planVisualizationContext = visualizationContext; + } + + @Override + public SubLevelEmbedding sable$getEmbeddingInfo(final SubLevel subLevel) { + if (!(subLevel instanceof final ClientSubLevel clientSubLevel)) { + throw new IllegalArgumentException("SubLevel must be a ClientSubLevel"); + } + + return this.sable$subLevelEmbeddings.get(clientSubLevel); + } + + @Override + public void sable$preFlywheelFrame() { + this.sable$updateSubLevelEmbeddingsFrame(this.sable$planVisualizationContext); + } + + /** + * Updates all sub-level embeddings, removing stale entries and updating transforms + */ + @Unique + private void sable$updateSubLevelEmbeddingsFrame(final VisualizationContext visualizationContext) { + final Iterator> iter = this.sable$subLevelEmbeddings.entrySet().iterator(); + + while (iter.hasNext()) { + final Map.Entry entry = iter.next(); + + final SubLevelEmbedding subLevelEmbedding = entry.getValue(); + final ClientSubLevel subLevel = entry.getKey(); + + if (subLevel.isRemoved()) { + this.sable$onEmbeddingRemoved(subLevel); + iter.remove(); + continue; + } + + if (subLevel.getLatestSkyLightScale() != subLevelEmbedding.latestSkyLightScale()) { + for (final BlockEntity be : subLevelEmbedding.blockEntities()) { + final BlockEntityVisual visual = this.posLookup.get(be.getBlockPos().asLong()); + + if (visual instanceof final LightUpdatedVisual lightUpdatedVisual) { + lightUpdatedVisual.updateLight(0.0f); + } + } + + subLevelEmbedding.setLatestSkyLightScale(subLevel.getLatestSkyLightScale()); + } + + this.sable$updateEmbeddingTransforms(visualizationContext, subLevel, subLevelEmbedding.embedding()); + } + } + + @Unique + private void sable$onEmbeddingRemoved(final ClientSubLevel subLevel) { + final SubLevelEmbedding subLevelEmbedding = this.sable$subLevelEmbeddings.get(subLevel); + + final VisualizationManager manager = VisualizationManager.get(subLevel.getLevel()); + + if (manager != null) { + for (final BlockEntity blockEntity : subLevelEmbedding.blockEntities()) { + manager.blockEntities().queueRemove(blockEntity); + } + } + + subLevelEmbedding.embedding().delete(); + } + + /** + * Updates the transform a {@link VisualEmbedding} to its {@link ClientSubLevel}'s render pose + */ + @Unique + private void sable$updateEmbeddingTransforms(final VisualizationContext visualizationContext, final ClientSubLevel subLevel, final VisualEmbedding embedding) { + final ClientSubLevelContainer container = SubLevelContainer.getContainer(subLevel.getLevel()); + assert container != null; + + final Pose3dc renderPose = subLevel.renderPose(); + final Vector3dc rotationPoint = renderPose.rotationPoint(); + final Vector3dc position = renderPose.position(); + + final Matrix4f transformation = new Matrix4f(); + final Vec3i parentOrigin = visualizationContext.renderOrigin(); + + transformation.setTranslation((float) (position.x() - parentOrigin.getX()), (float) (position.y() - parentOrigin.getY()), (float) (position.z() - parentOrigin.getZ())); + transformation.rotate(this.sable$orientationStorage.set(renderPose.orientation())); + + final Vec3i localOrigin = embedding.renderOrigin(); + final Vector3d localOffset = rotationPoint.sub(localOrigin.getX(), localOrigin.getY(), localOrigin.getZ(), this.sable$localOffsetStorage); + + transformation.translate((float) -localOffset.x, (float) -localOffset.y, (float) -localOffset.z); + + final Matrix3f normal = transformation.normal(this.sable$normalMatStorage); + embedding.transforms(transformation, normal); + + final PoseStack sceneMatrix = new PoseStack(); + final ChunkPos centerChunk = subLevel.getPlot().getCenterChunk(); + sceneMatrix.translate( + (float) (localOrigin.getX() - centerChunk.getMinBlockX()), + (float) localOrigin.getY(), + (float) (localOrigin.getZ() - centerChunk.getMinBlockZ()) + ); + + if (embedding instanceof final EmbeddedEnvironmentExtension embeddedEnvironment) { + embeddedEnvironment.sable$setLightingInfo(sceneMatrix.last().pose(), container.getLightingSceneId(subLevel), subLevel.getLatestSkyLightScale() / 15.0f); + } + } + + @Unique + private VisualEmbedding sable$getOrCreateSubLevelEmbedding(final VisualizationContext visualizationContext, final ClientSubLevel subLevel) { + final SubLevelEmbedding existingSubLevelEmbedding = this.sable$subLevelEmbeddings.get(subLevel); + + if (existingSubLevelEmbedding != null) return existingSubLevelEmbedding.embedding(); + + // Otherwise, we'll create a new embedding + + final VisualEmbedding newEmbedding = visualizationContext.createEmbedding(subLevel.getPlot().getCenterBlock()); + + this.sable$subLevelEmbeddings.put(subLevel, new SubLevelEmbedding(newEmbedding, new ObjectArrayList<>(), subLevel.getLatestSkyLightScale())); + this.sable$updateEmbeddingTransforms(visualizationContext, subLevel, newEmbedding); + + return newEmbedding; + } + + @WrapOperation(method = "createRaw(Ldev/engine_room/flywheel/api/visualization/VisualizationContext;Lnet/minecraft/world/level/block/entity/BlockEntity;F)Ldev/engine_room/flywheel/api/visual/BlockEntityVisual;", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/api/visualization/BlockEntityVisualizer;createVisual(Ldev/engine_room/flywheel/api/visualization/VisualizationContext;Lnet/minecraft/world/level/block/entity/BlockEntity;F)Ldev/engine_room/flywheel/api/visual/BlockEntityVisual;")) + public BlockEntityVisual sable$createVisual(final BlockEntityVisualizer instance, final VisualizationContext visualizationContext, final BlockEntity blockEntity, final float partialTick, final Operation> original) { + final SubLevel subLevel = Sable.HELPER.getContaining(blockEntity); + + if (subLevel == null) { + return original.call(instance, visualizationContext, blockEntity, partialTick); + } + + assert subLevel instanceof ClientSubLevel; + final VisualEmbedding embedding = this.sable$getOrCreateSubLevelEmbedding(visualizationContext, ((ClientSubLevel) subLevel)); + + final BlockEntityVisual newVisual = original.call(instance, embedding, blockEntity, partialTick); + this.sable$subLevelEmbeddings.get(subLevel).blockEntities().add(blockEntity); + + return newVisual; + } + + /** + * When a block entity is removed, we also need to remove it from the list that we're tracking for every sub-level + */ + @Override + public void remove(final BlockEntity blockEntity) { + final ClientSubLevel subLevel = Sable.HELPER.getContainingClient(blockEntity); + + if (subLevel != null && this.sable$subLevelEmbeddings.containsKey(subLevel)) { + this.sable$subLevelEmbeddings.get(subLevel).blockEntities().remove(blockEntity); + } + + super.remove(blockEntity); + } + + @Override + public void recreateAll(final VisualizationContext visualizationContext, final float partialTick) { + this.sable$subLevelEmbeddings.clear(); + super.recreateAll(visualizationContext, partialTick); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.java new file mode 100644 index 0000000..2824ef2 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EmbeddedEnvironmentMixin.java @@ -0,0 +1,67 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.engine.embed.EmbeddedEnvironment; +import dev.engine_room.flywheel.backend.gl.shader.GlProgram; +import dev.engine_room.flywheel.lib.util.ExtraMemoryOps; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.SableFlywheelEmbeddingUniforms; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.SableFlywheelLightStorage; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.EmbeddedEnvironmentExtension; +import org.joml.Matrix4f; +import org.joml.Matrix4fc; +import org.lwjgl.system.MemoryUtil; +import org.spongepowered.asm.mixin.*; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(EmbeddedEnvironment.class) +public class EmbeddedEnvironmentMixin implements EmbeddedEnvironmentExtension { + + @Shadow + @Final + private Matrix4f poseComposed; + + @Unique + private final Matrix4f sable$scene = new Matrix4f(); + + @Unique + private int sable$sceneId = SableFlywheelLightStorage.STATIC_SCENE_ID; + + @Unique + private float sable$skyLightScale = 1.0f; + + @Override + public void sable$setLightingInfo(final Matrix4fc sceneMatrix, final int scene, final float skyLightScale) { + this.sable$scene.set(sceneMatrix); + this.sable$sceneId = scene; + this.sable$skyLightScale = skyLightScale; + } + + @Inject(method = "setupDraw", at = @At("TAIL")) + private void sable$setupDraw(final GlProgram program, final CallbackInfo ci) { + program.setUInt(SableFlywheelEmbeddingUniforms.SCENE, this.sable$sceneId); + program.setFloat(SableFlywheelEmbeddingUniforms.SKY_LIGHT_SCALE, this.sable$skyLightScale); + + if (this.sable$sceneId == 0) { + program.setMat4(SableFlywheelEmbeddingUniforms.SCENE_MATRIX, this.poseComposed); + } else { + program.setMat4(SableFlywheelEmbeddingUniforms.SCENE_MATRIX, this.sable$scene); + } + } + + @Inject(method = "flush", at = @At("TAIL")) + public void sable$flush(final long ptr, final CallbackInfo ci) { + MemoryUtil.memPutFloat(ptr + 28 * Float.BYTES, this.sable$skyLightScale); + MemoryUtil.memPutInt(ptr + 29 * Float.BYTES, this.sable$sceneId); + MemoryUtil.memPutFloat(ptr + 30 * Float.BYTES, 0); + MemoryUtil.memPutFloat(ptr + 31 * Float.BYTES, 0); + + final long sceneMatrixOffset = ptr + 32 * Float.BYTES; + + if (this.sable$sceneId == 0) { + ExtraMemoryOps.putMatrix4f(sceneMatrixOffset, this.poseComposed); + } else { + ExtraMemoryOps.putMatrix4f(sceneMatrixOffset, this.sable$scene); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.java new file mode 100644 index 0000000..8e3c56a --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EngineImplMixin.java @@ -0,0 +1,29 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.engine.DrawManager; +import dev.engine_room.flywheel.backend.engine.EngineImpl; +import dev.engine_room.flywheel.backend.engine.LightStorage; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.SableFlywheelLightStorage; +import net.minecraft.world.level.LevelAccessor; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Mutable; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(EngineImpl.class) +public class EngineImplMixin { + + @Shadow + @Final + @Mutable + private LightStorage lightStorage; + + @Inject(method = "", at = @At("TAIL")) + private void sable$replaceLightStorage(final LevelAccessor level, final DrawManager drawManager, final int maxOriginDistance, final CallbackInfo ci) { + this.lightStorage.delete(); + this.lightStorage = new SableFlywheelLightStorage(level); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.java new file mode 100644 index 0000000..aadff0d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/EnvironmentStorageMixin.java @@ -0,0 +1,18 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.engine.embed.EnvironmentStorage; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.SableFlywheelMatrixBuffer; +import org.spongepowered.asm.mixin.Debug; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; + +@Mixin(EnvironmentStorage.class) +public class EnvironmentStorageMixin { + + @ModifyArg(method = "", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/backend/engine/CpuArena;(JI)V"), index = 0) + private long sable$overrideMatrixSize(final long elementSizeBytes) { + return SableFlywheelMatrixBuffer.INFO_SIZE_BYTES; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.java new file mode 100644 index 0000000..73a8323 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/LightStorageAccessor.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.engine.LightDataCollector; +import dev.engine_room.flywheel.backend.engine.LightStorage; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.gen.Accessor; + +@Mixin(LightStorage.class) +public interface LightStorageAccessor { + + @Accessor + LightDataCollector getCollector(); + + @Accessor + void setNeedsLutRebuild(boolean needsLutRebuild); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.java new file mode 100644 index 0000000..1435ef7 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/MatrixBufferMixin.java @@ -0,0 +1,19 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.engine.indirect.MatrixBuffer; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.SableFlywheelMatrixBuffer; +import org.spongepowered.asm.mixin.Debug; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.ModifyArg; + +@Debug(export = true) +@Mixin(MatrixBuffer.class) +public class MatrixBufferMixin { + + @ModifyArg(method = "", at = @At(value = "INVOKE", target = "Ldev/engine_room/flywheel/backend/engine/indirect/ResizableStorageArray;(J)V"), index = 0) + private long sable$overrideMatrixSize(final long stride) { + return SableFlywheelMatrixBuffer.INFO_SIZE_BYTES; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.java new file mode 100644 index 0000000..0c960cc --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/RenderDispatcherImplMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.api.backend.RenderContext; +import dev.engine_room.flywheel.impl.visualization.VisualManagerImpl; +import dev.engine_room.flywheel.impl.visualization.VisualizationManagerImpl; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.BlockEntityStorageExtension; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(targets = "dev.engine_room.flywheel.impl.visualization.VisualizationManagerImpl$RenderDispatcherImpl") +public class RenderDispatcherImplMixin { + + @Shadow @Final private VisualizationManagerImpl this$0; + + @Inject(method = "onStartLevelRender", at = @At("HEAD")) + private void sable$onStartLevelRender(final RenderContext ctx, final CallbackInfo ci) { + FlywheelCompatNeoForge.preVisualizationFrame(ctx.level(), ctx.partialTick()); + ((BlockEntityStorageExtension) ((VisualManagerImpl) this.this$0.blockEntities()).getStorage()) + .sable$preFlywheelFrame(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.java new file mode 100644 index 0000000..d3aa663 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/ShaderSourcesMixin.java @@ -0,0 +1,8 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.backend.glsl.ShaderSources; +import org.spongepowered.asm.mixin.Mixin; + +@Mixin(ShaderSources.class) +public class ShaderSourcesMixin { +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.java new file mode 100644 index 0000000..c6b68d1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/flywheel/VisualManagerImplMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.flywheel; + +import dev.engine_room.flywheel.api.task.Plan; +import dev.engine_room.flywheel.api.visual.DynamicVisual; +import dev.engine_room.flywheel.api.visualization.VisualManager; +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.engine_room.flywheel.impl.visualization.VisualManagerImpl; +import dev.engine_room.flywheel.impl.visualization.storage.Storage; +import dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel.BlockEntityStorageExtension; +import org.spongepowered.asm.mixin.Final; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +@Mixin(value = VisualManagerImpl.class, remap = false) +public abstract class VisualManagerImplMixin> implements VisualManager { + + @Shadow @Final private S storage; + + @Inject(method = "framePlan", at = @At("HEAD")) + private void sable$preFramePlan(final VisualizationContext visualizationContext, final CallbackInfoReturnable> cir) { + if (this.storage instanceof final BlockEntityStorageExtension extension) { + extension.sable$setPlanVisualizationContext(visualizationContext); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.java new file mode 100644 index 0000000..3637245 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockEntityMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.pmweather; + +import dev.protomanly.pmweather.block.entity.AnemometerBlockEntity; +import dev.protomanly.pmweather.weather.WindEngine; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(AnemometerBlockEntity.class) +public class AnemometerBlockEntityMixin { + + @Redirect(method = "tick", at = @At(value = "INVOKE", target = "Ldev/protomanly/pmweather/weather/WindEngine;getWind(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$redirectGetWind(final BlockPos position, final Level level) { + final Vec3 pos = Sable.HELPER.projectOutOfSubLevel(level, new Vec3(position.getX(), position.getY() + 1, position.getZ())); + return WindEngine.getWind(pos, level); + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.java new file mode 100644 index 0000000..3ca60c5 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/AnemometerBlockMixin.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.pmweather; + +import dev.protomanly.pmweather.block.AnemometerBlock; +import dev.protomanly.pmweather.weather.WindEngine; +import dev.ryanhcode.sable.Sable; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(AnemometerBlock.class) +public class AnemometerBlockMixin { + + @Redirect(method = "useWithoutItem", at = @At(value = "INVOKE", target = "Ldev/protomanly/pmweather/weather/WindEngine;getWind(Lnet/minecraft/core/BlockPos;Lnet/minecraft/world/level/Level;)Lnet/minecraft/world/phys/Vec3;")) + private Vec3 sable$redirectGetWind(final BlockPos position, final Level level) { + final Vec3 pos = Sable.HELPER.projectOutOfSubLevel(level, new Vec3(position.getX(), position.getY() + 1, position.getZ())); + return WindEngine.getWind(pos, level); + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.java new file mode 100644 index 0000000..1e66f55 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/PMWeatherMixin.java @@ -0,0 +1,27 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.pmweather; + +import dev.protomanly.pmweather.PMWeather; +import dev.protomanly.pmweather.weather.WindEngine; +import dev.ryanhcode.sable.api.SubLevelHelper; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import net.neoforged.api.distmarker.Dist; +import net.neoforged.bus.api.IEventBus; +import net.neoforged.fml.javafmlmod.FMLModContainer; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +/** + * Add PMWeather wind to sable + */ +@Mixin(PMWeather.class) +public class PMWeatherMixin { + + @Inject(method = "", at = @At("TAIL")) + private void init(final FMLModContainer container, final IEventBus bus, final Dist dist, final CallbackInfo ci) { + SubLevelHelper.registerWindProvider((position, level) -> { + return JOMLConversion.toJOML(WindEngine.getWind(JOMLConversion.toMojang(position), level)); + }); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.java new file mode 100644 index 0000000..2dfa8d8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/pmweather/RadarRendererMixin.java @@ -0,0 +1,58 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.pmweather; + +import com.llamalad7.mixinextras.sugar.Local; +import dev.protomanly.pmweather.block.entity.RadarBlockEntity; +import dev.protomanly.pmweather.render.RadarRenderer; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec2; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Redirect; + +@Mixin(RadarRenderer.class) +public class RadarRendererMixin { + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;distanceTo(Lnet/minecraft/world/phys/Vec3;)D")) + private double sable$redirectDistanceTo(final Vec3 position, final Vec3 blockEntityPos) { + final ClientLevel level = Minecraft.getInstance().level; + return Math.sqrt(Sable.HELPER.distanceSquaredWithSubLevels(level, position, blockEntityPos)); + } + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Ldev/protomanly/pmweather/block/entity/RadarBlockEntity;getBlockPos()Lnet/minecraft/core/BlockPos;")) + public BlockPos sable$render(final RadarBlockEntity instance) { + final Vec3 globalPos = Sable.HELPER.projectOutOfSubLevel(instance.getLevel(), instance.getBlockPos().getCenter()); + return BlockPos.containing(globalPos); + } + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec3;multiply(DDD)Lnet/minecraft/world/phys/Vec3;", ordinal = 0)) + public Vec3 sable$renderWorldPos(final Vec3 instance, final double x, final double y, final double z, @Local final RadarBlockEntity blockEntity) { + final SubLevel subLevel = Sable.HELPER.getContaining(blockEntity); + + if (subLevel == null) { + return instance.multiply(x, y, z); + } + + final Vec3 globalDir = subLevel.logicalPose().transformNormal(new Vec3(instance.x, 0, instance.z)); + + return new Vec3(globalDir.x, 0.0, globalDir.z).multiply(x, y, z); + } + + @Redirect(method = "render", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/phys/Vec2;normalized()Lnet/minecraft/world/phys/Vec2;", ordinal = 0)) + public Vec2 sable$renderWind(final Vec2 instance, @Local final RadarBlockEntity blockEntity) { + final SubLevel subLevel = Sable.HELPER.getContaining(blockEntity); + + if (subLevel == null) { + return instance.normalized(); + } + + final Vec3 globalDir = subLevel.logicalPose().transformNormal(new Vec3(instance.x, 0.0, instance.y)); + + return new Vec2((float) globalDir.x, (float) globalDir.z).normalized(); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.java new file mode 100644 index 0000000..580c77b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/compatibility/sodiumextras/EmbyToolsMixin.java @@ -0,0 +1,22 @@ +package dev.ryanhcode.sable.neoforge.mixin.compatibility.sodiumextras; + +import dev.ryanhcode.sable.Sable; +import net.minecraft.client.Minecraft; +import net.minecraft.core.BlockPos; +import net.minecraft.world.phys.Vec3; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import toni.sodiumextras.EmbyTools; + +@Mixin(EmbyTools.class) +public class EmbyToolsMixin { + + /** + * @author Ocelot + * @reason Take into account sub-levels + */ + @Overwrite + public static boolean isEntityWithinDistance(final BlockPos bePos, final Vec3 camVec, final int maxHeight, final int maxDistanceSquare) { + return Sable.HELPER.distanceSquaredWithSubLevels(Minecraft.getInstance().level, bePos.getX() + 0.5, bePos.getY() + 0.5, bePos.getZ() + 0.5, camVec.x, camVec.y, camVec.z) < maxDistanceSquare; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.java new file mode 100644 index 0000000..728b270 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/dynamic_directional_shading/SectionCompilerMixin.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.neoforge.mixin.dynamic_directional_shading; + +import com.mojang.blaze3d.vertex.VertexSorting; +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.mixinterface.dynamic_directional_shading.ModelBlockRendererCacheExtension; +import dev.ryanhcode.sable.sublevel.plot.LevelPlot; +import net.minecraft.client.Minecraft; +import net.minecraft.client.multiplayer.ClientLevel; +import net.minecraft.client.renderer.SectionBufferBuilderPack; +import net.minecraft.client.renderer.block.ModelBlockRenderer; +import net.minecraft.client.renderer.chunk.RenderChunkRegion; +import net.minecraft.client.renderer.chunk.SectionCompiler; +import net.minecraft.core.SectionPos; +import net.neoforged.neoforge.client.event.AddSectionGeometryEvent; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfoReturnable; + +import java.util.List; + +@Mixin(SectionCompiler.class) +public class SectionCompilerMixin { + + @Inject(method = "compile(Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/chunk/RenderChunkRegion;Lcom/mojang/blaze3d/vertex/VertexSorting;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Ljava/util/List;)Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results;", at = @At(value = "HEAD")) + private void sable$preCompile(final SectionPos sectionPos, final RenderChunkRegion region, final VertexSorting sorting, final SectionBufferBuilderPack pack, final List list, final CallbackInfoReturnable cir) { + final ClientLevel level = Minecraft.getInstance().level; + final SubLevelContainer container = SubLevelContainer.getContainer(level); + + final LevelPlot plot = container.getPlot(sectionPos.chunk()); + + ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$setOnSubLevel(plot != null); + } + + @Inject(method = "compile(Lnet/minecraft/core/SectionPos;Lnet/minecraft/client/renderer/chunk/RenderChunkRegion;Lcom/mojang/blaze3d/vertex/VertexSorting;Lnet/minecraft/client/renderer/SectionBufferBuilderPack;Ljava/util/List;)Lnet/minecraft/client/renderer/chunk/SectionCompiler$Results;", at = @At("TAIL")) + private void sable$postCompile(final SectionPos arg, final RenderChunkRegion arg2, final VertexSorting arg3, final SectionBufferBuilderPack arg4, final List additionalRenderers, final CallbackInfoReturnable cir) { + ((ModelBlockRendererCacheExtension) ModelBlockRenderer.CACHE.get()).sable$setOnSubLevel(false); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java new file mode 100644 index 0000000..e1f995c --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entities_stick_sublevels/effects/LivingEntityMixin.java @@ -0,0 +1,28 @@ +package dev.ryanhcode.sable.neoforge.mixin.entities_stick_sublevels.effects; + +import com.llamalad7.mixinextras.sugar.Local; +import com.llamalad7.mixinextras.sugar.ref.LocalRef; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.EntityType; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(LivingEntity.class) +public abstract class LivingEntityMixin extends Entity { + public LivingEntityMixin(final EntityType entityType, final Level level) { + super(entityType, level); + } + + /** + * Changes the blockpos offset to use getOnPos + */ + @Inject(method = "playBlockFallSound", at = @At(value = "INVOKE", target = "Lnet/minecraft/world/level/Level;getBlockState(Lnet/minecraft/core/BlockPos;)Lnet/minecraft/world/level/block/state/BlockState;", shift = At.Shift.BEFORE)) + private void playBlockFallSound(final CallbackInfo ci, @Local(ordinal = 0) final LocalRef standingPos) { + standingPos.set(this.getOnPos(0.2f)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.java new file mode 100644 index 0000000..70cd595 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/entity/entity_swimming/EntityMixin.java @@ -0,0 +1,296 @@ +package dev.ryanhcode.sable.neoforge.mixin.entity.entity_swimming; + +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.entity.EntitySubLevelUtil; +import dev.ryanhcode.sable.api.math.LevelReusedVectors; +import dev.ryanhcode.sable.api.math.OrientedBoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.companion.math.Pose3dc; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.EntityMovementExtension; +import dev.ryanhcode.sable.mixinterface.entity.entity_sublevel_collision.LevelExtension; +import dev.ryanhcode.sable.neoforge.mixinhelper.entity.SableInterimCalculation; +import dev.ryanhcode.sable.sublevel.SubLevel; +import dev.ryanhcode.sable.sublevel.entity_collision.SubLevelEntityCollision; +import it.unimi.dsi.fastutil.objects.Object2ObjectArrayMap; +import it.unimi.dsi.fastutil.objects.Object2ObjectMap; +import net.minecraft.core.BlockPos; +import net.minecraft.util.Mth; +import net.minecraft.world.entity.Entity; +import net.minecraft.world.entity.player.Player; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.material.FluidState; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import net.neoforged.neoforge.common.NeoForgeMod; +import net.neoforged.neoforge.common.extensions.IEntityExtension; +import net.neoforged.neoforge.fluids.FluidType; +import org.joml.Quaterniond; +import org.joml.Vector3d; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Overwrite; +import org.spongepowered.asm.mixin.Shadow; +import org.spongepowered.asm.mixin.injection.At; +import org.spongepowered.asm.mixin.injection.Inject; +import org.spongepowered.asm.mixin.injection.callback.CallbackInfo; + +@Mixin(value = Entity.class, priority = 500) +public abstract class EntityMixin implements IEntityExtension { + + @Shadow + public abstract boolean touchingUnloadedChunk(); + + @Shadow + public abstract AABB getBoundingBox(); + + @Shadow + @Deprecated + public abstract boolean isPushedByFluid(); + + @Shadow + private Level level; + + @Shadow + public abstract Vec3 getDeltaMovement(); + + @Shadow + public abstract void setDeltaMovement(Vec3 arg); + + @Shadow + protected abstract void setFluidTypeHeight(FluidType type, double height); + + @Shadow + public abstract BlockPos blockPosition(); + + @Shadow + public abstract Level level(); + + @Shadow + private Vec3 position; + + @Shadow + public abstract Vec3 getEyePosition(); + + @Shadow + private FluidType forgeFluidTypeOnEyes; + + /** + * @author RyanH + * @reason Take into account water on sub-levels. + */ + @Overwrite + public void updateFluidHeightAndDoFluidPushing() { + if (!this.touchingUnloadedChunk()) { + final AABB aabb = this.getBoundingBox().deflate(0.001); + final int i = Mth.floor(aabb.minX); + final int j = Mth.ceil(aabb.maxX); + final int k = Mth.floor(aabb.minY); + final int l = Mth.ceil(aabb.maxY); + final int i1 = Mth.floor(aabb.minZ); + final int j1 = Mth.ceil(aabb.maxZ); + final BlockPos.MutableBlockPos blockpos$mutableblockpos = new BlockPos.MutableBlockPos(); + + Object2ObjectMap interimCalcs = null; + + for (int l1 = i; l1 < j; l1++) { + for (int i2 = k; i2 < l; i2++) { + for (int j2 = i1; j2 < j1; j2++) { + blockpos$mutableblockpos.set(l1, i2, j2); + final FluidState fluidstate = this.level.getFluidState(blockpos$mutableblockpos); + final FluidType fluidType = fluidstate.getFluidType(); + if (!fluidType.isAir()) { + final double d1 = (float) i2 + fluidstate.getHeight(this.level, blockpos$mutableblockpos); + if (d1 >= aabb.minY) { + if (interimCalcs == null) { + interimCalcs = new Object2ObjectArrayMap<>(); + } + + final SableInterimCalculation interim = interimCalcs.computeIfAbsent(fluidType, t -> new SableInterimCalculation()); + interim.fluidHeight = Math.max(d1 - aabb.minY, interim.fluidHeight); + if (this.isPushedByFluid(fluidType)) { + Vec3 vec31 = fluidstate.getFlow(this.level, blockpos$mutableblockpos); + if (interim.fluidHeight < 0.4) { + vec31 = vec31.scale(interim.fluidHeight); + } + + interim.flowVector = interim.flowVector.add(vec31); + interim.blockCount++; + } + } + } + } + } + } + + //#region sable stuff + final ActiveSableCompanion helper = Sable.HELPER; + final BoundingBox3d globalBounds = new BoundingBox3d(aabb); + final BoundingBox3d localBounds = new BoundingBox3d(); + final Iterable intersecting = helper.getAllIntersecting(this.level, globalBounds); + + final BlockPos.MutableBlockPos mutableBlockPos = new BlockPos.MutableBlockPos(); + + final Vector3d playerCenter = new Vector3d(); + final Vector3d playerSize = new Vector3d(); + final Quaterniond playerOrientation = new Quaterniond(); + + for (final SubLevel subLevel : intersecting) { + final Pose3dc pose = subLevel.lastPose(); + globalBounds.transformInverse(pose, localBounds); + + final LevelReusedVectors jomlSink = ((LevelExtension) this.level).sable$getJOMLSink(); + final Quaterniond localPlayerBox = pose.orientation().conjugate(playerOrientation); + + final double yaw = SubLevelEntityCollision.getHitBoxYaw(pose); + localPlayerBox.rotateY(yaw); + + final OrientedBoundingBox3d playerBox = new OrientedBoundingBox3d(pose.transformPositionInverse(globalBounds.center(playerCenter)), globalBounds.size(playerSize), localPlayerBox, jomlSink); + final OrientedBoundingBox3d fluidBox = new OrientedBoundingBox3d(new Vector3d(), new Vector3d(1.0), JOMLConversion.QUAT_IDENTITY, jomlSink); + + final int minX = Mth.floor(localBounds.minX); + final int maxX = Mth.ceil(localBounds.maxX); + final int minY = Mth.floor(localBounds.minY); + final int maxY = Mth.ceil(localBounds.maxY); + final int minZ = Mth.floor(localBounds.minZ); + final int maxZ = Mth.ceil(localBounds.maxZ); + + double minYVertex = Float.MAX_VALUE; + boolean hasComputedMinYVertex = false; + + for (int x = minX; x < maxX; x++) { + for (int y = minY; y < maxY; y++) { + for (int z = minZ; z < maxZ; z++) { + mutableBlockPos.set(x, y, z); + final FluidState fluidState = this.level.getFluidState(mutableBlockPos); + final FluidType fluidType = fluidState.getFluidType(); + + if (!fluidType.isAir()) { + final double fluidLevelY = (float) y + fluidState.getHeight(this.level, mutableBlockPos); + + if (!hasComputedMinYVertex) { + final Vector3d[] vertices = playerBox.vertices(jomlSink.a); + + for (final Vector3d vertex : vertices) { + minYVertex = Math.min(minYVertex, vertex.y); + } + + hasComputedMinYVertex = true; + } + + if (fluidLevelY >= minYVertex) { + fluidBox.getPosition().set(x + 0.5, y + 0.5, z + 0.5); + + if (!(OrientedBoundingBox3d.sat(playerBox, fluidBox).lengthSquared() > 0.0)) + continue; + + if (interimCalcs == null) { + interimCalcs = new Object2ObjectArrayMap<>(); + } + + final SableInterimCalculation interim = interimCalcs.computeIfAbsent(fluidType, t -> new SableInterimCalculation()); + interim.fluidHeight = Math.max(fluidLevelY - minYVertex, interim.fluidHeight); + + if (Sable.HELPER.getTrackingSubLevel((Entity) (Object) this) == null && helper.getContaining((Entity) (Object) this) != subLevel) { + ((EntityMovementExtension) this).sable$setTrackingSubLevel(subLevel); + } + + if (this.isPushedByFluid(fluidType)) { + Vec3 flowVec = fluidState.getFlow(this.level, mutableBlockPos); + + if (interim.fluidHeight < 0.4) { + flowVec = flowVec.scale(interim.fluidHeight); + } + + flowVec = pose.transformNormal(flowVec); + + interim.flowVector = interim.flowVector.add(flowVec); + interim.blockCount++; + } + } + } + } + } + } + } + //#region sable end + + if (interimCalcs != null) { + interimCalcs.forEach((fluidTypex, interimx) -> { + if (interimx.flowVector.length() > 0.0) { + if (interimx.blockCount > 0) { + interimx.flowVector = interimx.flowVector.scale(1.0 / (double) interimx.blockCount); + } + + if (!((Object) this instanceof Player)) { + interimx.flowVector = interimx.flowVector.normalize(); + } + + final Vec3 vec32 = this.getDeltaMovement(); + interimx.flowVector = interimx.flowVector.scale(this.getFluidMotionScale(fluidTypex)); + final double d2 = 0.003; + if (Math.abs(vec32.x) < d2 && Math.abs(vec32.z) < d2 && interimx.flowVector.length() < 0.0045000000000000005) { + interimx.flowVector = interimx.flowVector.normalize().scale(0.0045000000000000005); + } + + this.setDeltaMovement(this.getDeltaMovement().add(interimx.flowVector)); + } + + this.setFluidTypeHeight(fluidTypex, interimx.fluidHeight); + }); + } + } + } + + @Override + public boolean canStartSwimming() { + final Level level = this.level(); + final BlockPos globalBlockPos = this.blockPosition(); + FluidType fluidType = level.getFluidState(globalBlockPos).getFluidType(); + + if (fluidType == Fluids.EMPTY.getFluidType()) { + final Iterable intersecting = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(globalBlockPos).expand(0.5)); + + for (final SubLevel subLevel : intersecting) { + final Pose3dc pose = subLevel.lastPose(); + + final BlockPos localBlockPos = BlockPos.containing(pose.transformPositionInverse(this.position)); + fluidType = level.getFluidState(localBlockPos).getFluidType(); + + if (fluidType != Fluids.EMPTY.getFluidType()) { + break; + } + } + } + + return !this.getEyeInFluidType().isAir() && this.canSwimInFluidType(this.getEyeInFluidType()) && this.canSwimInFluidType(fluidType); + } + + @Inject(method = "updateFluidOnEyes", at = @At(value = "TAIL")) + public void sable$subLevelFluidOnEyes(final CallbackInfo ci) { + if (this.forgeFluidTypeOnEyes != NeoForgeMod.EMPTY_TYPE.value() && this.forgeFluidTypeOnEyes != Fluids.EMPTY.getFluidType()) { + return; + } + + final Vec3 globalEyePos = this.getEyePosition(); + final Iterable intersecting = Sable.HELPER.getAllIntersecting(this.level, new BoundingBox3d(BlockPos.containing(globalEyePos)).expand(0.5)); + + for (final SubLevel subLevel : intersecting) { + final Pose3dc pose = subLevel.lastPose(); + final Vec3 localEyePos = pose.transformPositionInverse(globalEyePos); + final BlockPos blockPos = BlockPos.containing(localEyePos); + + final FluidState fluidState = this.level.getFluidState(blockPos); + final double e = (float) blockPos.getY() + fluidState.getHeight(this.level, blockPos); + + if (e > localEyePos.y) { + this.forgeFluidTypeOnEyes = fluidState.getFluidType(); + + if (this.forgeFluidTypeOnEyes != NeoForgeMod.EMPTY_TYPE.value() && this.forgeFluidTypeOnEyes != Fluids.EMPTY.getFluidType()) { + return; + } + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.java new file mode 100644 index 0000000..56a951f --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixin/sound/MovingSoundInstanceDelegateMixin.java @@ -0,0 +1,25 @@ +package dev.ryanhcode.sable.neoforge.mixin.sound; + +import dev.ryanhcode.sable.sound.MovingSoundInstanceDelegate; +import net.minecraft.client.resources.sounds.Sound; +import net.minecraft.client.resources.sounds.SoundInstance; +import net.minecraft.client.sounds.AudioStream; +import net.minecraft.client.sounds.SoundBufferLibrary; +import org.jetbrains.annotations.NotNull; +import org.spongepowered.asm.mixin.Mixin; +import org.spongepowered.asm.mixin.Shadow; + +import java.util.concurrent.CompletableFuture; + +@Mixin(MovingSoundInstanceDelegate.class) +public abstract class MovingSoundInstanceDelegateMixin implements SoundInstance { + + @Shadow + public SoundInstance instance; + + @Override + public @NotNull CompletableFuture getStream(final SoundBufferLibrary soundBuffers, final Sound sound, final boolean looping) { + return this.instance.getStream(soundBuffers, sound, looping); + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.java new file mode 100644 index 0000000..ecd0d00 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/behavior_compatibility/harvester_block_entity/DummyMovementContext.java @@ -0,0 +1,24 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.behavior_compatibility.harvester_block_entity; + +import com.simibubi.create.content.contraptions.behaviour.MovementContext; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.Blocks; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import org.jetbrains.annotations.Nullable; + +public class DummyMovementContext extends MovementContext { + + public DummyMovementContext() { + super(null, new StructureTemplate.StructureBlockInfo(BlockPos.ZERO, Blocks.AIR.defaultBlockState(), null), null); + } + + public void update(final Level level, final BlockPos pos, final BlockState state, @Nullable final CompoundTag blockEntityData) { + this.world = level; + this.state = state; + this.localPos = pos; + this.blockEntityData = blockEntityData; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.java new file mode 100644 index 0000000..1c5966d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/block_breakers/SubLevelBlockBreakingUtility.java @@ -0,0 +1,97 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.block_breakers; + +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.companion.math.BoundingBox3i; +import dev.ryanhcode.sable.sublevel.SubLevel; +import it.unimi.dsi.fastutil.objects.ObjectArrayList; +import it.unimi.dsi.fastutil.objects.ObjectList; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; +import org.spongepowered.asm.mixin.Unique; + +import java.util.function.BiPredicate; + +/** + * Utility for blocks that break blocks on sub-levels. + */ +public class SubLevelBlockBreakingUtility { + + /** + * Finds the best candidate block for a drill / block breaking block-entity to try breaking. + */ + public static BlockPos findBreakingPos(final BiPredicate canBreak, @Nullable final SubLevel subLevel, final Level level, final Vec3 drillFacingVec, final Vec3 center, final BlockPos breakingPos) { + // move box forward to line up with drill head + final double scaleDown = 2.0 / 16.0; + final BoundingBox3d localMiningBox = new BoundingBox3d(new AABB(center.x - 0.5, + center.y - 0.5, + center.z - 0.5, + center.x + 0.5, + center.y + 0.5, + center.z + 0.5).inflate(-scaleDown).move(drillFacingVec.scale(12.0 / 16.0 - scaleDown))); + + final BoundingBox3d globalMiningBox = new BoundingBox3d(localMiningBox); + + if (subLevel != null) { + globalMiningBox.transform(subLevel.logicalPose(), globalMiningBox); + } + + final BoundingBox3i globalBlockMiningBox = new BoundingBox3i(globalMiningBox); + final BoundingBox3d otherLocalMiningBox = new BoundingBox3d(); + final ObjectList possiblyBreakableBlocks = new ObjectArrayList<>(); + + collectBlocksInBounds(canBreak, level, BlockPos.containing(center), globalBlockMiningBox, possiblyBreakableBlocks); + + for (final SubLevel otherSubLevel : Sable.HELPER.getAllIntersecting(level, new BoundingBox3d(globalMiningBox))) { + if (subLevel == otherSubLevel) continue; // don't mine things on the same sublevel + + globalMiningBox.transformInverse(otherSubLevel.logicalPose(), otherLocalMiningBox); + globalBlockMiningBox.set(otherLocalMiningBox); + + collectBlocksInBounds(canBreak, level, BlockPos.containing(center), globalBlockMiningBox, possiblyBreakableBlocks); + } + + BlockPos closestPosition = breakingPos; + double closestDistanceSqr = Double.MAX_VALUE; + + for (final BlockPos possiblyBreakableBlock : possiblyBreakableBlocks) { + if (Sable.HELPER.getContaining(level, possiblyBreakableBlock) == subLevel) continue; + + final Vec3 blockCenter = Vec3.atCenterOf(possiblyBreakableBlock); + final double distanceSqr = Sable.HELPER.distanceSquaredWithSubLevels(level, center, blockCenter); + + if (distanceSqr < closestDistanceSqr) { + closestDistanceSqr = distanceSqr; + closestPosition = possiblyBreakableBlock; + } + } + + return closestPosition; + } + + @Unique + private static void collectBlocksInBounds(final BiPredicate canBreak, final Level level, final BlockPos drillPos, final BoundingBox3i globalBlockMiningBox, final ObjectList possiblyBreakableBlocks) { + final BlockPos.MutableBlockPos globalBlockPos = new BlockPos.MutableBlockPos(); + + for (int x = globalBlockMiningBox.minX(); x <= globalBlockMiningBox.maxX(); x++) { + for (int z = globalBlockMiningBox.minZ(); z <= globalBlockMiningBox.maxZ(); z++) { + for (int y = globalBlockMiningBox.minY(); y <= globalBlockMiningBox.maxY(); y++) { + globalBlockPos.set(x, y, z); + final BlockState globalBlockState = level.getBlockState(globalBlockPos); + + if (canBreak.test(globalBlockPos, globalBlockState)) { + if (globalBlockPos.equals(drillPos)) { + continue; + } + + possiblyBreakableBlocks.add(globalBlockPos.immutable()); + } + } + } + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.java new file mode 100644 index 0000000..1f8e643 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/ejector/SubLevelScanResult.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.ejector; + +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import net.minecraft.world.phys.BlockHitResult; + +public record SubLevelScanResult(BlockHitResult result, ServerSubLevel serverSubLevel) { +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.java new file mode 100644 index 0000000..8c37408 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/frogports/FrogportMixinHelper.java @@ -0,0 +1,41 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.frogports; + +import com.llamalad7.mixinextras.injector.wrapoperation.Operation; +import com.simibubi.create.content.logistics.packagePort.PackagePortBlockEntity; +import com.simibubi.create.content.logistics.packagePort.PackagePortTarget; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.LevelAccessor; +import net.minecraft.world.phys.Vec3; + +public class FrogportMixinHelper { + + private FrogportMixinHelper() { + } + + public static Vec3 getExactTargetLocation(final PackagePortTarget instance, + final PackagePortBlockEntity packagePortBlockEntity, + final LevelAccessor levelAccessor, + final BlockPos blockPos, + final Operation original) { + final ActiveSableCompanion helper = Sable.HELPER; + final Vec3 originalTarget = original.call(instance, packagePortBlockEntity, levelAccessor, blockPos); + final Level level = packagePortBlockEntity.getLevel(); + final Vec3 globalTarget = helper.projectOutOfSubLevel(level, originalTarget); + + final SubLevel subLevel = helper.getContaining(level, packagePortBlockEntity.getBlockPos()); + + Vec3 localTarget = globalTarget; + + if (subLevel != null) { + localTarget = subLevel.logicalPose().transformPositionInverse(localTarget); + } + + return localTarget; + } + + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.java new file mode 100644 index 0000000..710a463 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterLerpedSpeed.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester; + +import net.createmod.catnip.animation.LerpedFloat; + +public interface HarvesterLerpedSpeed { + + LerpedFloat sable$getLerpedFloat(); + + void sable$clientTick(); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.java new file mode 100644 index 0000000..5724781 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/harvester/HarvesterTicker.java @@ -0,0 +1,36 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.harvester; + +import com.simibubi.create.content.contraptions.actors.harvester.HarvesterMovementBehaviour; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.behavior_compatibility.harvester_block_entity.DummyMovementContext; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.item.ItemEntity; +import net.minecraft.world.item.ItemStack; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.entity.BlockEntityTicker; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.phys.Vec3; + +public class HarvesterTicker implements BlockEntityTicker { + + public static final HarvesterMovementBehaviour blockEntityBehaviour = new HarvesterMovementBehaviour(); + public static final DummyMovementContext dummyMovementContext = new DummyMovementContext(); + + @Override + public void tick(final Level level, final BlockPos arg2, final BlockState arg3, final T be) { + if (!be.hasLevel()) { + be.setLevel(level); + } + + be.sable$clientTick(); + } + + public static void dropItem(final Level level, final ItemStack itemStack, final BlockPos sable$selfPos) { + if (sable$selfPos != null) { + final Vec3 center = sable$selfPos.getCenter(); + + final ItemEntity itemEntity = new ItemEntity(level, center.x, center.y, center.z, itemStack); + level.addFreshEntity(itemEntity); + } + } +} \ No newline at end of file diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.java new file mode 100644 index 0000000..f9fd817 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/MechanicalArmDuck.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.mechanical_arm; + +import java.util.List; + +public interface MechanicalArmDuck { + List sable$getHolders(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.java new file mode 100644 index 0000000..8da116e --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/mechanical_arm/PointHolder.java @@ -0,0 +1,39 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.mechanical_arm; + +import com.simibubi.create.content.kinetics.mechanicalArm.ArmInteractionPoint; +import net.createmod.catnip.nbt.NBTHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.NbtUtils; +import net.minecraft.nbt.Tag; +import org.apache.commons.lang3.mutable.MutableBoolean; + +import java.util.Optional; + +/** + * A point holder to record and gather information from ArmInteractionPoints + * + * @param pos The position of this holder + * @param interactionMode the ArmInteractionPoint mode of this holder + * @param covered Whether this point holder is being covered by an ArmInteractionPoint + */ +public record PointHolder(BlockPos pos, ArmInteractionPoint.Mode interactionMode, MutableBoolean covered) { + + public CompoundTag serialize(final BlockPos anchor) { + final CompoundTag tag = new CompoundTag(); + final Tag pos = NbtUtils.writeBlockPos(this.pos.subtract(anchor)); + + tag.put("pos", pos); + NBTHelper.writeEnum(tag, "mode", this.interactionMode); + + return tag; + } + + public static PointHolder deserialize(final CompoundTag tag, final BlockPos anchor) { + final Optional pos = NbtUtils.readBlockPos(tag, "pos"); + + return pos.map(blockPos -> new PointHolder(blockPos.offset(anchor), NBTHelper.readEnum(tag, "mode", ArmInteractionPoint.Mode.class), new MutableBoolean(false))).orElse(null); + + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.java new file mode 100644 index 0000000..5875619 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/nozzles/NozzleHoveringHelper.java @@ -0,0 +1,247 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.nozzles; + +import com.simibubi.create.AllBlockEntityTypes; +import com.simibubi.create.content.kinetics.fan.EncasedFanBlock; +import com.simibubi.create.content.kinetics.fan.EncasedFanBlockEntity; +import com.simibubi.create.content.kinetics.fan.NozzleBlockEntity; +import com.simibubi.create.infrastructure.config.AllConfigs; +import dev.ryanhcode.sable.ActiveSableCompanion; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.api.physics.force.ForceGroups; +import dev.ryanhcode.sable.api.physics.force.ForceTotal; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixin.compatibility.create.nozzle.NozzleBlockEntityAccessor; +import dev.ryanhcode.sable.physics.config.dimension_physics.DimensionPhysicsData; +import dev.ryanhcode.sable.sublevel.ServerSubLevel; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.createmod.catnip.data.Couple; +import net.createmod.catnip.data.Iterate; +import net.createmod.catnip.math.VecHelper; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.particles.BlockParticleOption; +import net.minecraft.core.particles.ParticleTypes; +import net.minecraft.tags.BlockTags; +import net.minecraft.world.level.ClipContext; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BlockStateProperties; +import net.minecraft.world.level.material.Fluid; +import net.minecraft.world.level.material.Fluids; +import net.minecraft.world.phys.BlockHitResult; +import net.minecraft.world.phys.HitResult; +import net.minecraft.world.phys.Vec3; +import net.minecraft.world.phys.shapes.CollisionContext; +import org.jetbrains.annotations.Nullable; +import org.joml.Vector3d; +import org.joml.Vector3dc; + +import java.util.ArrayList; +import java.util.List; +import java.util.Optional; + +public class NozzleHoveringHelper { + + public static List> gatherRaycastPoints(final BlockState state) { + if (state.hasProperty(BlockStateProperties.FACING)) { + final List> rayPoints = new ArrayList<>(); + + final Direction facing = state.getValue(BlockStateProperties.FACING); + final Direction startingDir; + + if (facing.getAxis() == Direction.Axis.Y) { + startingDir = Direction.NORTH; + } else { + startingDir = facing.getClockWise(); + } + + final int horizontalSamplePoints = 6; + final int theta = 360 / horizontalSamplePoints; + + final double startScaling = 0.8; + final double endScaling = 8; + for (final boolean diagonal : Iterate.trueAndFalse) { + for (int i = 0; i < horizontalSamplePoints; i++) { + Vec3 start = Vec3.atLowerCornerOf(startingDir.getNormal()).scale(startScaling).add(0.5, 0.5, 0.5); + if (diagonal) { + final Direction.Axis axis; + final double angle; + if (facing.getAxis().isHorizontal()) { + axis = Direction.Axis.Y; + angle = 45; + } else { + axis = startingDir.getClockWise().getAxis(); + angle = facing.getAxisDirection().getStep() * 45; + } + + start = VecHelper.rotateCentered(start, angle, axis); + } + + start = VecHelper.rotateCentered(start, theta * i, facing.getAxis()); + final Vec3 end = start.add(start.subtract(0.5, 0.5, 0.5).scale(endScaling)); + rayPoints.add(Couple.create(start, end)); + } + } + + final Vec3 start = Vec3.atLowerCornerOf(facing.getNormal()).scale(startScaling).add(0.5, 0.5, 0.5); + final Vec3 end = start.add(start.subtract(0.5, 0.5, 0.5).scale(endScaling)); + rayPoints.add(Couple.create(start, end)); + + return rayPoints; + } + + return null; + } + + @Nullable + public static Vector3d gatherForceFromRays(final SubLevel parentSublevel, final double timeStep, final Level level, final BlockPos blockStart, final NozzleBlockEntity nbe, final List> rayPoints) { + if (((NozzleBlockEntityAccessor) nbe).getRange() == 0) { + return null; + } + + final Optional be = level.getBlockEntity(blockStart.relative(nbe.getBlockState().getValue(BlockStateProperties.FACING).getOpposite()), AllBlockEntityTypes.ENCASED_FAN.get()); + if (be.isPresent()) { + final EncasedFanBlockEntity fbe = be.get(); + final Vector3d force = new Vector3d(); + + final Couple firstRay = rayPoints.getFirst(); + final double startEndDistance = firstRay.getSecond().subtract(firstRay.getFirst()).length(); + final Vec3 blockCorner = Vec3.atLowerCornerOf(blockStart); + + for (final Couple rayPoint : rayPoints) { + final Vec3 start = blockCorner.add(rayPoint.getFirst()); + final Vec3 end = blockCorner.add(rayPoint.getSecond()); + + final ClipContext context = new ClipContext( + start, + end, + ClipContext.Block.OUTLINE, + ClipContext.Fluid.ANY, + CollisionContext.empty() + ); + + final BlockHitResult clip = level.clip(context); + if (clip.getType() == HitResult.Type.MISS) { + continue; + } + + final ActiveSableCompanion helper = Sable.HELPER; + final SubLevel hitSublevel = helper.getContaining(level, clip.getBlockPos()); + if (hitSublevel == parentSublevel) { + continue; + } + + final Vec3 hitDiff = helper.projectOutOfSubLevel(level, clip.getLocation()) + .subtract(helper.projectOutOfSubLevel(level, start)); + + final double inverseHitPercentage; + if (clip.isInside()) { + inverseHitPercentage = 1; + } else { + final float curveScaling = 2f; //2 == full power at 1/2 distance, 1 == full power at 0 distance + + inverseHitPercentage = Math.clamp(curveScaling - ((hitDiff.length() / startEndDistance) * curveScaling), 0, 1); + } + + final Vec3 modifiedDiff = hitDiff + .normalize() + .scale(inverseHitPercentage) + .scale(1d / rayPoints.size()); + force.add(modifiedDiff.x, modifiedDiff.y, modifiedDiff.z); + + if (hitSublevel instanceof final ServerSubLevel hitServerSubLevel) { + final ForceTotal forceTotal = hitServerSubLevel.getOrCreateQueuedForceGroup(ForceGroups.PROPULSION.get()).getForceTotal(); + final Vector3d impulseLocation = JOMLConversion.toJOML(clip.getLocation()); + final Vector3d impulse = hitServerSubLevel.logicalPose().transformNormalInverse(JOMLConversion.toJOML(modifiedDiff)).mul(-1).mul(getFanMagnitudeCalculation(parentSublevel, level, fbe) * timeStep); + forceTotal.applyImpulseAtPoint(hitServerSubLevel.getMassTracker(), impulseLocation, impulse); + } + } + + if (force.length() > 1e-8) { + force.mul(getFanMagnitudeCalculation(parentSublevel, level, fbe) * timeStep); + parentSublevel.logicalPose().transformNormalInverse(force); + } + + return force; + } + + return null; + } + + private static double getFanMagnitudeCalculation(final SubLevel parentSublevel, final Level level, final EncasedFanBlockEntity fbe) { + final float scale = fbe.getBlockState().getValue(EncasedFanBlock.FACING).getAxisDirection() == Direction.AxisDirection.POSITIVE ? -1 : 1; + final double airPressure = DimensionPhysicsData.getAirPressure(level, parentSublevel.logicalPose().transformPosition(JOMLConversion.atCenterOf(fbe.getBlockPos()))); + + final int magnitude = 5; + final int softScaling = 4; //higher == less impact above 128 RPM + + final float signumBefore = Math.signum(fbe.getSpeed()); + float speed = Math.abs(fbe.getSpeed()); + + final int maxSpeed = AllConfigs.server().kinetics.maxRotationSpeed.get(); + final float halfSpeed = maxSpeed / 2f; + if (speed >= halfSpeed) { + speed = ((speed - halfSpeed) / softScaling) + halfSpeed; + } + + speed *= signumBefore; + return magnitude * scale * speed * airPressure; + } + + public static void spawnWindHitParticle(final Level level, final SubLevel subLevel, final BlockHitResult clip, final Vector3dc origin, final double airSpeed) { + final Vector3d end = JOMLConversion.toJOML(clip.getLocation()); + + if (clip.getType() != HitResult.Type.MISS && origin.distanceSquared(end.x, end.y, end.z) > 1) { + final BlockState hitState = level.getBlockState(clip.getBlockPos()); + final Fluid fluid = level.getFluidState(clip.getBlockPos()).getType(); + + final Vector3d start = new Vector3d(origin); + + if (subLevel != null) { + subLevel.logicalPose().transformPosition(start); + } + final Vector3d normal = new Vector3d(clip.getDirection().getStepX(), clip.getDirection().getStepY(), clip.getDirection().getStepZ()); + final SubLevel other = Sable.HELPER.getContaining(level, clip.getBlockPos()); + if (other != null) { + other.logicalPose().transformNormal(normal); + other.logicalPose().transformPosition(end); + } + + final Vector3d offset = new Vector3d( + level.random.nextDouble() * 2 - 1, + level.random.nextDouble() * 2 - 1, + level.random.nextDouble() * 2 - 1 + ); + projectOntoPlane(offset, normal, 1); + end.add(offset); + final Vector3d delta = end.sub(start, new Vector3d()); + + final Vector3d particleVelocity = projectOntoPlane(new Vector3d(delta), normal, 1); + particleVelocity.mul(airSpeed); + particleVelocity.fma(0.25, normal); + end.fma(0.1, normal); + + if (other != null) + other.logicalPose().orientation().transformInverse(particleVelocity); + + level.addParticle(ParticleTypes.DUST_PLUME, end.x, end.y, end.z, particleVelocity.x, particleVelocity.y, particleVelocity.z); + if (hitState.is(BlockTags.MINEABLE_WITH_SHOVEL)) { + level.addParticle(new BlockParticleOption(ParticleTypes.BLOCK, hitState), end.x, end.y, end.z, particleVelocity.x, particleVelocity.y, particleVelocity.z); + } else if (fluid.isSame(Fluids.WATER)) { + level.addParticle(ParticleTypes.SPLASH, end.x, end.y, end.z, 0, 0, 0); + if (level.getRandom().nextDouble() < 0.2) + level.addParticle(ParticleTypes.BUBBLE, end.x, end.y, end.z, 0, 0, 0); + + } else if (fluid.isSame(Fluids.LAVA)) { + level.addParticle(ParticleTypes.SMOKE, end.x, end.y, end.z, 0, 0, 0); + if (level.getRandom().nextDouble() < 0.2) + level.addParticle(ParticleTypes.LAVA, end.x, end.y, end.z, 0, 0, 0); + + } + } + } + + private static Vector3d projectOntoPlane(final Vector3d x, final Vector3dc planeNormal, final double scale) { + return x.fma(-scale * x.dot(planeNormal), planeNormal); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.java new file mode 100644 index 0000000..fb283ab --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/raycasts/SableRaycastHelper.java @@ -0,0 +1,57 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.raycasts; + +import com.simibubi.create.foundation.utility.RaycastHelper; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.BoundingBox3d; +import dev.ryanhcode.sable.mixinterface.clip_overwrite.LevelPoseProviderExtension; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.level.Level; +import net.minecraft.world.phys.Vec3; +import org.jetbrains.annotations.Nullable; + +import java.util.function.BiPredicate; +import java.util.function.Predicate; + +public class SableRaycastHelper { + + public static RaycastHelper.PredicateTraceResult rayCastUntilWithSublevels(final Level level, final Vec3 start, final Vec3 end, final BiPredicate<@Nullable SubLevel, BlockPos> predicate) { + return rayCastUntilWithSublevels(level, start, end, (pos) -> predicate.test(null, pos), predicate); + } + + public static RaycastHelper.PredicateTraceResult rayCastUntilWithSublevels(final Level level, final Vec3 start, final Vec3 end, final Predicate predicate) { + return rayCastUntilWithSublevels(level, start, end, predicate, (sublevel, pos) -> predicate.test(pos)); + } + + public static RaycastHelper.PredicateTraceResult rayCastUntilWithSublevels(final Level level, final Vec3 start, final Vec3 end, final Predicate predicate, final BiPredicate subLevelPredicate) { + RaycastHelper.PredicateTraceResult closestRay = RaycastHelper.rayTraceUntil(start, end, predicate); + double closestDistance = closestRay.getPos() != null ? Vec3.atCenterOf(closestRay.getPos()).distanceToSqr(start) : Double.MAX_VALUE; + + final Iterable sublevels = Sable.HELPER.getAllIntersecting(level, new BoundingBox3d(start, end)); + + for (final SubLevel subLevel : sublevels) { + final Vec3 plotStart; + final Vec3 plotEnd; + + if (level instanceof final LevelPoseProviderExtension poseProvider) { + plotStart = poseProvider.sable$getPose(subLevel).transformPositionInverse(start); + plotEnd = poseProvider.sable$getPose(subLevel).transformPositionInverse(end); + } else { + plotStart = subLevel.logicalPose().transformPositionInverse(start); + plotEnd = subLevel.logicalPose().transformPositionInverse(end); + } + + final RaycastHelper.PredicateTraceResult plotRay = RaycastHelper.rayTraceUntil(plotStart, plotEnd, (pos) -> subLevelPredicate.test(subLevel, pos)); + + final double plotDistance = plotRay.getPos() != null ? Vec3.atCenterOf(plotRay.getPos()).distanceToSqr(plotStart) : Double.MAX_VALUE; + + if (plotDistance < closestDistance) { + closestRay = plotRay; + closestDistance = plotDistance; + } + } + + return closestRay; + } + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.java new file mode 100644 index 0000000..86203ee --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntity.java @@ -0,0 +1,125 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact; + +import com.simibubi.create.AllBlocks; +import com.simibubi.create.content.contraptions.AbstractContraptionEntity; +import com.simibubi.create.content.redstone.contact.RedstoneContactBlock; +import com.simibubi.create.foundation.blockEntity.SmartBlockEntity; +import com.simibubi.create.foundation.blockEntity.behaviour.BlockEntityBehaviour; +import dev.ryanhcode.sable.Sable; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.sublevel.SubLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.world.level.block.entity.BlockEntityType; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import net.minecraft.world.phys.AABB; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +import java.util.List; + +public class RedstoneContactBlockEntity extends SmartBlockEntity { + + public static final double CONTRAPTION_CHECK_BOUNDS = 1; + + public RedstoneContactBlockEntity(final BlockEntityType type, final BlockPos pos, final BlockState state) { + super(type, pos, state); + } + + @Override + public void addBehaviours(final List behaviours) { + + } + + @Override + public void tick() { + super.tick(); + + if (!this.isRemoved() && this.getLevel() != null) { + final SubLevel parentSublevel = Sable.HELPER.getContaining(this); + + final Direction facing = this.getBlockState().getValue(RedstoneContactBlock.FACING); + final Vector3d facingDir = JOMLConversion.atLowerCornerOf(facing.getNormal()); + if (parentSublevel != null) { // Comparison logic done in world space + parentSublevel.logicalPose().transformNormal(facingDir); + } + + final Vector3d frontWorldPosition = JOMLConversion.atCenterOf(this.getBlockPos().relative(facing)); + if (parentSublevel != null) { + parentSublevel.logicalPose().transformPosition(frontWorldPosition); + } + + final boolean found = this.checkForContactsInWorldOrSubLevel(frontWorldPosition, facing, parentSublevel, facingDir) || + this.checkForContactsInContraption(frontWorldPosition, facingDir); + + if (found != this.getBlockState().getValue(RedstoneContactBlock.POWERED)) { + if (found) { + this.getLevel().setBlockAndUpdate(this.getBlockPos(), this.getBlockState().setValue(RedstoneContactBlock.POWERED, true)); + } else { + this.getLevel().setBlockAndUpdate(this.getBlockPos(), this.getBlockState().setValue(RedstoneContactBlock.POWERED, false)); + } + } + } + } + + private boolean checkForContactsInContraption(final Vector3d frontWorldPosition, final Vector3d facingDir) { + final Vec3 frontMoj = JOMLConversion.toMojang(frontWorldPosition); + final Vec3 min = frontMoj.subtract(CONTRAPTION_CHECK_BOUNDS / 2, CONTRAPTION_CHECK_BOUNDS / 2, CONTRAPTION_CHECK_BOUNDS / 2); + final Vec3 max = min.add(CONTRAPTION_CHECK_BOUNDS, CONTRAPTION_CHECK_BOUNDS, CONTRAPTION_CHECK_BOUNDS); + + final AABB searchBounds = new AABB(min, max); + + final List contraptions = this.getLevel().getEntitiesOfClass(AbstractContraptionEntity.class, searchBounds); + + for (final AbstractContraptionEntity ace : contraptions) { + final Vec3 contactLocalPos = ace.toLocalVector(frontMoj, 1f); + final StructureTemplate.StructureBlockInfo candidateBlock = ace.getContraption().getBlocks().get(BlockPos.containing(contactLocalPos)); + + if (candidateBlock == null) { + continue; + } + + final BlockState otherState = candidateBlock.state(); + if (!(AllBlocks.REDSTONE_CONTACT.has(otherState) || AllBlocks.ELEVATOR_CONTACT.has(otherState))) { + continue; + } + + final Direction otherFacingDirection = otherState.getValue(RedstoneContactBlock.FACING); + Vec3 otherFacingMoj = Vec3.atLowerCornerOf(otherFacingDirection.getNormal()); + otherFacingMoj = ace.applyRotation(otherFacingMoj, 1f); + + final Vector3d otherFacing = JOMLConversion.toJOML(otherFacingMoj); + if (facingDir.dot(otherFacing) < -0.95) { // If facing towards each other + return true; + } + } + return false; + } + + private boolean checkForContactsInWorldOrSubLevel(final Vector3d frontWorldPosition, final Direction facing, final SubLevel parentSublevel, final Vector3d facingDir) { + return Sable.HELPER.findIncludingSubLevels(this.getLevel(), this.getBlockPos().getCenter().relative(facing, 1), true, parentSublevel, (subLevel, pos) -> { + if (subLevel != null) { + //Look for contraptions on this sublevel + final Vector3d localFrontWorldPosition = subLevel.logicalPose().transformPositionInverse(frontWorldPosition, new Vector3d()); + final Vector3d localFacingDir = subLevel.logicalPose().transformNormalInverse(facingDir, new Vector3d()); + if (this.checkForContactsInContraption(localFrontWorldPosition, localFacingDir)) { + return true; + } + } + + final BlockState otherState = this.getLevel().getBlockState(pos); + if (!(AllBlocks.REDSTONE_CONTACT.has(otherState) || AllBlocks.ELEVATOR_CONTACT.has(otherState))) { + return false; + } + + final Direction otherFacing = otherState.getValue(RedstoneContactBlock.FACING); + final Vector3d otherFacingDir = JOMLConversion.atLowerCornerOf(otherFacing.getNormal()); + if (subLevel != null) { + subLevel.logicalPose().transformNormal(otherFacingDir); + } + + return facingDir.dot(otherFacingDir) < -0.99; // If facing towards each other + }); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.java new file mode 100644 index 0000000..2de5035 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/redstone_contact/RedstoneContactBlockEntityTypeGetter.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.redstone_contact; + +import com.tterrag.registrate.util.entry.BlockEntityEntry; + +public interface RedstoneContactBlockEntityTypeGetter { + + BlockEntityEntry sable$getRedstoneContactType(); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.java new file mode 100644 index 0000000..64d3acc --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/create/renderers/AABBOutlineRenderingOptions.java @@ -0,0 +1,5 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.create.renderers; + +public interface AABBOutlineRenderingOptions { + void sable$shouldTransform(boolean newValue); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.java new file mode 100644 index 0000000..b475441 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/compatibility/flywheel/SubLevelEmbedding.java @@ -0,0 +1,42 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.flywheel; + +import dev.engine_room.flywheel.api.visualization.VisualEmbedding; +import net.minecraft.world.level.block.entity.BlockEntity; + +import java.util.List; + +public final class SubLevelEmbedding { + private final VisualEmbedding embedding; + private final List blockEntities; + private int latestSkyLightScale; + + public SubLevelEmbedding(final VisualEmbedding embedding, final List blockEntities, final int latestSkyLightScale) { + this.embedding = embedding; + this.blockEntities = blockEntities; + this.latestSkyLightScale = latestSkyLightScale; + } + + public VisualEmbedding embedding() { + return this.embedding; + } + + public List blockEntities() { + return this.blockEntities; + } + + public int latestSkyLightScale() { + return this.latestSkyLightScale; + } + + public void setLatestSkyLightScale(final int latestSkyLightScale) { + this.latestSkyLightScale = latestSkyLightScale; + } + + @Override + public String toString() { + return "SubLevelEmbedding[" + + "embedding=" + this.embedding + ", " + + "blockEntities=" + this.blockEntities + ", " + + "latestSkyLightScale=" + this.latestSkyLightScale + ']'; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.java new file mode 100644 index 0000000..d3862e1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinhelper/entity/SableInterimCalculation.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.neoforge.mixinhelper.entity; + +import net.minecraft.world.phys.Vec3; + +public class SableInterimCalculation { + public double fluidHeight = 0.0; + public Vec3 flowVector = Vec3.ZERO; + public int blockCount = 0; +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.java new file mode 100644 index 0000000..57567c1 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/ArmTargetUpdater.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create; + +import net.minecraft.world.level.Level; + +public interface ArmTargetUpdater { + + void sable$setLevelReference(Level level); + + void sable$updateAngles(); + +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.java new file mode 100644 index 0000000..b1617b0 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/LecternControllerBlockEntityExtension.java @@ -0,0 +1,6 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create; + +public interface LecternControllerBlockEntityExtension { + + void sable$setNoDrop(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.java new file mode 100644 index 0000000..4359241 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/NozzleBlockEntityExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create; + +import net.minecraft.core.Direction; + +import java.util.EnumSet; + +public interface NozzleBlockEntityExtension { + EnumSet sable$getValidDirections(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.java new file mode 100644 index 0000000..44d73b3 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/StickerBlockEntityExtension.java @@ -0,0 +1,9 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create; + + +public interface StickerBlockEntityExtension { + + void sable$removeConstraint(); + + void sable$tickConstraint(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.java new file mode 100644 index 0000000..a1446f2 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicLevelExtension.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics; + +import net.createmod.catnip.levelWrappers.SchematicLevel; +import org.joml.Quaterniond; +import org.joml.Vector3d; + +import java.util.List; +import java.util.UUID; + +public interface SchematicLevelExtension { + List sable$getSubLevels(); + + record SchematicSubLevel(UUID uuid, Vector3d position, Quaterniond orientation, SchematicLevel level) { } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.java new file mode 100644 index 0000000..865865b --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/SchematicPrinterExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics; + +import net.createmod.catnip.levelWrappers.SchematicLevel; + +public interface SchematicPrinterExtension { + SchematicLevel sable$getSchematicLevel(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.java new file mode 100644 index 0000000..d0e4794 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/create/schematics/StructureTemplateExtension.java @@ -0,0 +1,15 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.create.schematics; + +import net.minecraft.world.level.levelgen.structure.templatesystem.StructureTemplate; +import org.joml.Quaterniond; +import org.joml.Vector3d; + +import java.util.List; +import java.util.UUID; + +public interface StructureTemplateExtension { + + List sable$getSubLevels(); + + record SubLevelTemplate(UUID uuid, Vector3d position, Quaterniond orientation, StructureTemplate template) {} +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.java new file mode 100644 index 0000000..1a1ad09 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/BlockEntityStorageExtension.java @@ -0,0 +1,13 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel; + +import dev.engine_room.flywheel.api.visualization.VisualizationContext; +import dev.ryanhcode.sable.neoforge.mixinhelper.compatibility.flywheel.SubLevelEmbedding; +import dev.ryanhcode.sable.sublevel.SubLevel; + +public interface BlockEntityStorageExtension { + void sable$setPlanVisualizationContext(VisualizationContext visualizationContext); + + SubLevelEmbedding sable$getEmbeddingInfo(SubLevel subLevel); + + void sable$preFlywheelFrame(); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.java new file mode 100644 index 0000000..6afe814 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/mixinterface/compatibility/flywheel/EmbeddedEnvironmentExtension.java @@ -0,0 +1,7 @@ +package dev.ryanhcode.sable.neoforge.mixinterface.compatibility.flywheel; + +import org.joml.Matrix4fc; + +public interface EmbeddedEnvironmentExtension { + void sable$setLightingInfo(Matrix4fc sceneMatrix, int scene, float skyLightScale); +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.java new file mode 100644 index 0000000..bbd8a59 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/AbstractBellBlockCallback.java @@ -0,0 +1,49 @@ +package dev.ryanhcode.sable.neoforge.physics.callback; + +import com.simibubi.create.content.equipment.bell.AbstractBellBlock; +import dev.ryanhcode.sable.companion.math.JOMLConversion; +import dev.ryanhcode.sable.neoforge.mixin.compatibility.create.impact.AbstractBellBlockAccessor; +import dev.ryanhcode.sable.physics.callback.FragileBlockCallback; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.state.BlockState; +import net.minecraft.world.level.block.state.properties.BellAttachType; +import net.minecraft.world.phys.Vec3; +import org.joml.Vector3d; + +public class AbstractBellBlockCallback extends FragileBlockCallback { + public static final AbstractBellBlockCallback INSTANCE = new AbstractBellBlockCallback(); + + public AbstractBellBlockCallback() {} + + @Override + public boolean shouldTriggerFor(final BlockState state) { + return state.getBlock() instanceof AbstractBellBlock; + } + + @Override + public CollisionResult onHit(final ServerLevel level, final BlockPos pos, final BlockState state, final Vector3d hitPos) { + final Vec3 hitDir = pos.getCenter().subtract(hitPos.x, hitPos.y, hitPos.z); + final Direction facing = state.getValue(AbstractBellBlock.FACING); + final BellAttachType attachment = state.getValue(AbstractBellBlock.ATTACHMENT); + + int xMul = Math.abs(facing.getStepX()); + int zMul = Math.abs(facing.getStepZ()); + + if (attachment == BellAttachType.CEILING) { + xMul = 1; + zMul = 1; + } + + final Direction ringDir = Direction.getNearest(hitDir.x * xMul, 0.0, hitDir.z * zMul) + .getOpposite(); + final AbstractBellBlock block = (AbstractBellBlock) state.getBlock(); + + if (block.canRingFrom(state, ringDir, 0.0)) { + ((AbstractBellBlockAccessor) block).invokeRing(level, pos, ringDir, null); + } + + return new CollisionResult(JOMLConversion.ZERO, false); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.java new file mode 100644 index 0000000..01418c6 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/physics/callback/BeltBlockCallback.java @@ -0,0 +1,62 @@ +package dev.ryanhcode.sable.neoforge.physics.callback; + +import com.simibubi.create.content.kinetics.belt.BeltBlock; +import com.simibubi.create.content.kinetics.belt.BeltBlockEntity; +import com.simibubi.create.content.kinetics.belt.BeltSlope; +import dev.ryanhcode.sable.api.physics.callback.BlockSubLevelCollisionCallback; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.core.BlockPos; +import net.minecraft.core.Direction; +import net.minecraft.core.Vec3i; +import net.minecraft.server.level.ServerLevel; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.joml.Vector3d; + +public class BeltBlockCallback implements BlockSubLevelCollisionCallback { + public static BeltBlockCallback INSTANCE = new BeltBlockCallback(); + + private BeltBlockCallback() {} + + @Override + public BlockSubLevelCollisionCallback.CollisionResult sable$onCollision(final BlockPos pos, final Vector3d pos1, final double impactVelocity) { + final SubLevelPhysicsSystem system = SubLevelPhysicsSystem.getCurrentlySteppingSystem(); + final ServerLevel level = system.getLevel(); + + final BlockEntity blockEntity = level.getBlockEntity(pos); + + if (!(blockEntity instanceof final BeltBlockEntity belt)) + return BlockSubLevelCollisionCallback.CollisionResult.NONE; + + final BlockState state = belt.getBlockState(); + final Direction facing = state.getValue(BeltBlock.HORIZONTAL_FACING); + final BeltSlope slope = state.getValue(BeltBlock.SLOPE); + if (slope == BeltSlope.SIDEWAYS) + return BlockSubLevelCollisionCallback.CollisionResult.NONE; + + final Vec3i normal = Direction.get(Direction.AxisDirection.POSITIVE, facing.getAxis()).getNormal(); + float speed = belt.getBeltMovementSpeed() * 20.0f; + + if (facing.getAxis() == Direction.Axis.X) { + speed *= -1.0f; + } + + final Vector3d velocity = new Vector3d(normal.getX() * speed, normal.getY() * speed, normal.getZ() * speed); + + // TODO: do we need up/down force here? we probably should slant the collision boxes +// if (velocity.lengthSquared() > 0.0) { +// if (slope == BeltSlope.UPWARD) { +// velocity.add(0.0, speed, 0.0).normalize(speed); +// } +// if (slope == BeltSlope.DOWNWARD) { +// velocity.add(0.0, -speed, 0.0).normalize(speed); +// } +// } + + if (slope == BeltSlope.HORIZONTAL && pos1.y - belt.getBlockPos().getY() < 0.5) { + velocity.negate(); + } + + return new BlockSubLevelCollisionCallback.CollisionResult(velocity, false); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.java new file mode 100644 index 0000000..176ccca --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableAssemblyPlatformImpl.java @@ -0,0 +1,14 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.platform.SableAssemblyPlatform; +import net.minecraft.world.level.Level; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableAssemblyPlatformImpl implements SableAssemblyPlatform { + + @Override + public void setIgnoreOnPlace(final Level level, final boolean ignore) { + level.captureBlockSnapshots = ignore; + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.java new file mode 100644 index 0000000..bb55f58 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableChunkEventPlatformImpl.java @@ -0,0 +1,21 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.platform.SableChunkEventPlatform; +import net.minecraft.world.level.chunk.LevelChunk; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.event.level.ChunkEvent; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableChunkEventPlatformImpl implements SableChunkEventPlatform { + + @Override + public void onChunkPacketReplaced(final LevelChunk chunk) { + NeoForge.EVENT_BUS.post(new ChunkEvent.Load(chunk, false)); + } + + @Override + public void onOldChunkInvalid(final LevelChunk chunk) { + // no-op + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.java new file mode 100644 index 0000000..3f236a8 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPlatformImpl.java @@ -0,0 +1,30 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.api.event.SablePostPhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SablePrePhysicsTickEvent; +import dev.ryanhcode.sable.api.event.SableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.neoforge.event.ForgeSablePostPhysicsTickEvent; +import dev.ryanhcode.sable.neoforge.event.ForgeSablePrePhysicsTickEvent; +import dev.ryanhcode.sable.neoforge.event.ForgeSableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.platform.SableEventPlatform; +import net.neoforged.neoforge.common.NeoForge; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableEventPlatformImpl implements SableEventPlatform { + + @Override + public void onSubLevelContainerReady(final SableSubLevelContainerReadyEvent event) { + NeoForge.EVENT_BUS.addListener(forgeEvent -> event.onSubLevelContainerReady(forgeEvent.getLevel(), forgeEvent.getContainer())); + } + + @Override + public void onPhysicsTick(final SablePrePhysicsTickEvent event) { + NeoForge.EVENT_BUS.addListener(forgeEvent -> event.prePhysicsTick(forgeEvent.getPhysicsSystem(), forgeEvent.getTimeStep())); + } + + @Override + public void onPostPhysicsTick(final SablePostPhysicsTickEvent event) { + NeoForge.EVENT_BUS.addListener(forgeEvent -> event.postPhysicsTick(forgeEvent.getPhysicsSystem(), forgeEvent.getTimeStep())); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.java new file mode 100644 index 0000000..ce341b7 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableEventPublishPlatformImpl.java @@ -0,0 +1,48 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.api.sublevel.SubLevelContainer; +import dev.ryanhcode.sable.neoforge.event.ForgeSablePostPhysicsTickEvent; +import dev.ryanhcode.sable.neoforge.event.ForgeSablePrePhysicsTickEvent; +import dev.ryanhcode.sable.neoforge.event.ForgeSableSubLevelContainerReadyEvent; +import dev.ryanhcode.sable.platform.SableEventPublishPlatform; +import dev.ryanhcode.sable.sublevel.system.SubLevelPhysicsSystem; +import net.minecraft.world.level.Level; +import net.neoforged.neoforge.common.NeoForge; +import org.jetbrains.annotations.ApiStatus; + +@ApiStatus.Internal +public class SableEventPublishPlatformImpl implements SableEventPublishPlatform { + + /** + * Called when a sub-level container is ready to use. + * + * @param level The level instance + * @param container The sub-level container that is ready + */ + @Override + public void onSubLevelContainerReady(final Level level, final SubLevelContainer container) { + NeoForge.EVENT_BUS.post(new ForgeSableSubLevelContainerReadyEvent(level, container)); + } + + /** + * Called when a sub-level container is ready to use. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + @Override + public void prePhysicsTick(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + NeoForge.EVENT_BUS.post(new ForgeSablePrePhysicsTickEvent(physicsSystem, timeStep)); + } + + /** + * Fired when Sable's {@link SubLevelPhysicsSystem} is complete with a physics tick. + * + * @param physicsSystem the physics system running the physics tick + * @param timeStep the time step of this physics tick [s] + */ + @Override + public void postPhysicsTick(final SubLevelPhysicsSystem physicsSystem, final double timeStep) { + NeoForge.EVENT_BUS.post(new ForgeSablePostPhysicsTickEvent(physicsSystem, timeStep)); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.java new file mode 100644 index 0000000..d06c156 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableLoaderPlatformImpl.java @@ -0,0 +1,11 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.platform.SableLoaderPlatform; +import net.neoforged.fml.loading.LoadingModList; + +public class SableLoaderPlatformImpl implements SableLoaderPlatform { + @Override + public String getModVersion(final String modId) { + return LoadingModList.get().getModFileById(modId).versionString(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.java new file mode 100644 index 0000000..24f433d --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlatformImpl.java @@ -0,0 +1,32 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import dev.ryanhcode.sable.platform.SablePlatform; +import net.createmod.catnip.levelWrappers.WrappedServerLevel; +import net.minecraft.core.BlockPos; +import net.minecraft.world.entity.LivingEntity; +import net.minecraft.world.level.Level; +import net.minecraft.world.level.block.state.BlockBehaviour; +import net.minecraft.world.level.block.state.BlockState; +import net.neoforged.fml.loading.FMLLoader; +import net.neoforged.fml.loading.LoadingModList; +import net.neoforged.neoforge.common.CommonHooks; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +@ApiStatus.Internal +public class SablePlatformImpl implements SablePlatform { + + @Override + public boolean isWrappedLevel(@Nullable final Level level) { + if (FMLLoader.getLoadingModList().getModFileById("create") != null) { + return level instanceof WrappedServerLevel; + } + + return false; + } + + @Override + public boolean isBlockstateLadder(final BlockState state, final Level level, final BlockPos pos, final LivingEntity entity) { + return CommonHooks.isLivingOnLadder(state, level, pos, entity).isPresent(); + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.java new file mode 100644 index 0000000..8f5e8e0 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SablePlotPlatformImpl.java @@ -0,0 +1,59 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import com.mojang.logging.LogUtils; +import dev.ryanhcode.sable.platform.SablePlotPlatform; +import net.minecraft.core.RegistryAccess; +import net.minecraft.nbt.CompoundTag; +import net.minecraft.nbt.Tag; +import net.minecraft.world.level.chunk.LevelChunk; +import net.minecraft.world.level.chunk.status.ChunkType; +import net.neoforged.neoforge.attachment.AttachmentHolder; +import net.neoforged.neoforge.common.NeoForge; +import net.neoforged.neoforge.common.world.LevelChunkAuxiliaryLightManager; +import net.neoforged.neoforge.event.level.ChunkDataEvent; +import org.slf4j.Logger; + +@SuppressWarnings("UnstableApiUsage") +public class SablePlotPlatformImpl implements SablePlotPlatform { + + private static final Logger LOGGER = LogUtils.getLogger(); + + @Override + public void readLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + if (tag.contains(LevelChunkAuxiliaryLightManager.LIGHT_NBT_KEY, Tag.TAG_LIST)) { + chunk.getAuxLightManager(chunk.getPos()).deserializeNBT(registryAccess, tag.getList(LevelChunkAuxiliaryLightManager.LIGHT_NBT_KEY, Tag.TAG_COMPOUND)); + } + } + + @Override + public void readChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + if (tag.contains(AttachmentHolder.ATTACHMENTS_NBT_KEY, Tag.TAG_COMPOUND)) { + chunk.readAttachmentsFromNBT(registryAccess, tag.getCompound(AttachmentHolder.ATTACHMENTS_NBT_KEY)); + } + } + + @Override + public void postLoad(final CompoundTag tag, final LevelChunk chunk) { + NeoForge.EVENT_BUS.post(new ChunkDataEvent.Load(chunk, tag, ChunkType.LEVELCHUNK)); + } + + @Override + public void writeLightData(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + final Tag lightTag = chunk.getAuxLightManager(chunk.getPos()).serializeNBT(registryAccess); + if (lightTag != null) { + tag.put(LevelChunkAuxiliaryLightManager.LIGHT_NBT_KEY, lightTag); + } + } + + @Override + public void writeChunkAttachments(final CompoundTag tag, final RegistryAccess registryAccess, final LevelChunk chunk) { + try { + final CompoundTag capTag = chunk.writeAttachmentsToNBT(registryAccess); + if (capTag != null) { + tag.put(AttachmentHolder.ATTACHMENTS_NBT_KEY, capTag); + } + } catch (final Exception e) { + LOGGER.error("Failed to write chunk attachments. An attachment has likely thrown an exception trying to write state. It will not persist. Report this to the mod author", e); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.java b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.java new file mode 100644 index 0000000..f6228eb --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/neoforge/platform/SableSubLevelRenderPlatformImpl.java @@ -0,0 +1,40 @@ +package dev.ryanhcode.sable.neoforge.platform; + +import com.mojang.blaze3d.vertex.PoseStack; +import com.mojang.blaze3d.vertex.VertexConsumer; +import dev.ryanhcode.sable.neoforge.compatibility.flywheel.FlywheelCompatNeoForge; +import dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform; +import dev.ryanhcode.sable.sublevel.render.vanilla.SingleBlockSubLevelWrapper; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.RenderType; +import net.minecraft.client.resources.model.BakedModel; +import net.minecraft.core.BlockPos; +import net.minecraft.util.RandomSource; +import net.minecraft.world.level.block.entity.BlockEntity; +import net.minecraft.world.level.block.state.BlockState; +import org.jetbrains.annotations.ApiStatus; +import org.jetbrains.annotations.Nullable; + +import java.util.List; + +@ApiStatus.Internal +public class SableSubLevelRenderPlatformImpl implements SableSubLevelRenderPlatform { + + @SuppressWarnings("DataFlowIssue") + @Override + public void tesselateBlock(final SingleBlockSubLevelWrapper blockAndTintGetter, final BakedModel bakedModel, final BlockState blockState, final BlockPos pos, final PoseStack poseStack, final VertexConsumer vertexConsumer, final RandomSource randomSource, final long seed, final int packedOverlay, final @Nullable RenderType renderType) { + Minecraft.getInstance().getBlockRenderer().modelRenderer.tesselateWithoutAO(blockAndTintGetter, bakedModel, blockState, pos, poseStack, vertexConsumer, true, randomSource, seed, packedOverlay, blockAndTintGetter.getLevel().getModelData(pos), renderType); + } + + @Override + public List getRenderLayers(final SingleBlockSubLevelWrapper blockAndTintGetter, final BakedModel bakedModel, final BlockState blockState, final BlockPos pos, final RandomSource randomSource) { + return bakedModel.getRenderTypes(blockState, randomSource, blockAndTintGetter.getModelData(pos)).asList(); + } + + @Override + public void tryAddFlywheelVisual(final BlockEntity blockEntity) { + if (FlywheelCompatNeoForge.FLYWHEEL_LOADED) { + FlywheelCompatNeoForge.tryAddVisual(blockEntity); + } + } +} diff --git a/neoforge/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java b/neoforge/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java new file mode 100644 index 0000000..784f1e4 --- /dev/null +++ b/neoforge/src/main/java/dev/ryanhcode/sable/plugin/SableMixinPlugin.java @@ -0,0 +1,17 @@ +package dev.ryanhcode.sable.plugin; + +import dev.ryanhcode.sable.mixin.AbstractSableMixinPlugin; +import org.objectweb.asm.tree.ClassNode; +import org.spongepowered.asm.mixin.extensibility.IMixinInfo; + +public class SableMixinPlugin extends AbstractSableMixinPlugin { + @Override + public void preApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + super.preApply(targetClassName, targetClass, mixinClassName, mixinInfo); + } + + @Override + public void postApply(final String targetClassName, final ClassNode targetClass, final String mixinClassName, final IMixinInfo mixinInfo) { + super.postApply(targetClassName, targetClass, mixinClassName, mixinInfo); + } +} diff --git a/neoforge/src/main/resources/META-INF/neoforge.mods.toml b/neoforge/src/main/resources/META-INF/neoforge.mods.toml new file mode 100644 index 0000000..c44ee1a --- /dev/null +++ b/neoforge/src/main/resources/META-INF/neoforge.mods.toml @@ -0,0 +1,67 @@ +modLoader = "javafml" +loaderVersion = "${neoforge_loader_version_range}" +issueTrackerURL = "${issues}" +license = "${license}" + +[[mods]] +modId = "${mod_id}" +version = "${version}" +displayName = "${mod_name}" +authors = "${mod_author}" +credits = "${credits}" +description = '''${description}''' +logoFile = "icon.png" + +["lithium:options"] +"mixin.entity.collisions.unpushable_cramming" = false +"mixin.world.chunk_access" = false +"mixin.world.chunk_ticking" = false +"mixin.world.tick_scheduler" = false + +[[mixins]] +config = "sable.mixins.json" + +[[mixins]] +config = "sable-neoforge.mixins.json" + +[[dependencies.sable]] +modId = "neoforge" +type = "required" +versionRange = "[${neoforge_version},)" +ordering = "NONE" +side = "BOTH" + +[[dependencies.sable]] +modId = "minecraft" +type = "required" +versionRange = "${minecraft_version_range}" +ordering = "NONE" +side = "BOTH" + +[[dependencies.sable]] +modId = "flywheel" +type = "optional" +versionRange = "[1.0.6,)" +ordering = "AFTER" +side = "CLIENT" + +[[dependencies.sable]] +modId = "create" +type = "optional" +versionRange = "${create_version_range}" +ordering = "AFTER" +side = "CLIENT" + +[[dependencies.sable]] +modId = "sablecompanion" +type = "incompatible" +versionRange = "(${sable_companion_version},)" +reason = "Sable is out of date" + +[[dependencies.sable]] +modId = "scalablelux" +type = "incompatible" + +[[dependencies.sable]] +modId = "littletiles" +type = "incompatible" diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform new file mode 100644 index 0000000..f3b2937 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableAssemblyPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableAssemblyPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform new file mode 100644 index 0000000..7280c64 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableChunkEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableChunkEventPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform new file mode 100644 index 0000000..b22613c --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableEventPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform new file mode 100644 index 0000000..d082ff1 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableEventPublishPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableEventPublishPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform new file mode 100644 index 0000000..e348fcb --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableLoaderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableLoaderPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform new file mode 100644 index 0000000..0637a45 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SablePlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform new file mode 100644 index 0000000..f90e686 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SablePlotPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SablePlotPlatformImpl \ No newline at end of file diff --git a/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform new file mode 100644 index 0000000..94b52b9 --- /dev/null +++ b/neoforge/src/main/resources/META-INF/services/dev.ryanhcode.sable.platform.SableSubLevelRenderPlatform @@ -0,0 +1 @@ +dev.ryanhcode.sable.neoforge.platform.SableSubLevelRenderPlatformImpl diff --git a/neoforge/src/main/resources/assets/flywheel/explanation.md b/neoforge/src/main/resources/assets/flywheel/explanation.md new file mode 100644 index 0000000..db24a17 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/explanation.md @@ -0,0 +1,7 @@ +Sable's sub-levels each contain their own lighting sections, and lighting data. + +We need Flywheel shaders to be aware of this, so we change and override the lighting storage, LUT, and shaders to respect an additional "scene ID". + +I'm not happy with the large amounts of duplicated shader code in these overrides, but it's the route we are going with for now. + +Reference https://github.com/Engine-Room/Flywheel/tree/1.21.1/dev for the original shaders and lighting code that these overrides are based on. \ No newline at end of file diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.frag b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.frag new file mode 100644 index 0000000..3224934 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.frag @@ -0,0 +1,31 @@ +#include "flywheel:internal/material.glsl" +#include "flywheel:internal/api_impl.glsl" +#include "flywheel:internal/uniforms/uniforms.glsl" + +in vec4 flw_vertexPos; +in vec4 flw_vertexColor; +in vec2 flw_vertexTexCoord; +flat in ivec2 flw_vertexOverlay; +in vec2 flw_vertexLight; +in vec3 flw_vertexNormal; + +in float flw_distance; + +#ifdef FLW_EMBEDDED +flat in float flw_skyLightScale; +flat in uint flw_vertexLightingSceneId; +in vec4 flw_vertexLightingPos; +#endif + +vec4 flw_sampleColor; + +FlwMaterial flw_material; + +bool flw_fragDiffuse; +vec4 flw_fragColor; +ivec2 flw_fragOverlay; +vec2 flw_fragLight; + +uniform sampler2D flw_diffuseTex; +uniform sampler2D flw_overlayTex; +uniform sampler2D flw_lightTex; diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.glsl new file mode 100644 index 0000000..9bbe87b --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/api_impl.glsl @@ -0,0 +1,26 @@ +struct FlwLightAo { + vec2 light; + float ao; +}; + +/// Get the light at the given world position relative to flw_renderOrigin from the given normal. +/// This may be interpolated for smooth lighting. +bool flw_light(uint scene, vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light); + +/// Fetches the light value at the given block position. +/// Returns false if the light for the given block is not available. +bool flw_lightFetch(uint scene, ivec3 blockPos, out vec2 light); + +// Backwards compatible overloads + +/// Get the light at the given world position relative to flw_renderOrigin from the given normal. +/// This may be interpolated for smooth lighting. +bool flw_light(vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light) { + return flw_light(0u, worldPos, normal, renderOrigin, light); +} + +/// Fetches the light value at the given block position. +/// Returns false if the light for the given block is not available. +bool flw_lightFetch(ivec3 blockPos, out vec2 light) { + return flw_lightFetch(0u, blockPos, light); +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/common.vert b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/common.vert new file mode 100644 index 0000000..022b6db --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/common.vert @@ -0,0 +1,112 @@ +#include "flywheel:internal/fog_distance.glsl" + +#ifdef _FLW_CRUMBLING +out vec2 _flw_crumblingTexCoord; + +const int DOWN = 0; +const int UP = 1; +const int NORTH = 2; +const int SOUTH = 3; +const int WEST = 4; +const int EAST = 5; + +// based on net.minecraftforge.client.ForgeHooksClient.getNearestStable +int getNearestFacing(vec3 normal) { + float maxAlignment = -2; + int face = 2; + + // Calculate the alignment of the normal vector with each axis. + // Note that `-dot(normal, axis) == dot(normal, -axis)`. + vec3 alignment = vec3( + dot(normal, vec3(1., 0., 0.)), + dot(normal, vec3(0., 1., 0.)), + dot(normal, vec3(0., 0., 1.)) + ); + + if (-alignment.y > maxAlignment) { + maxAlignment = -alignment.y; + face = DOWN; + } + if (alignment.y > maxAlignment) { + maxAlignment = alignment.y; + face = UP; + } + if (-alignment.z > maxAlignment) { + maxAlignment = -alignment.z; + face = NORTH; + } + if (alignment.z > maxAlignment) { + maxAlignment = alignment.z; + face = SOUTH; + } + if (-alignment.x > maxAlignment) { + maxAlignment = -alignment.x; + face = WEST; + } + if (alignment.x > maxAlignment) { + maxAlignment = alignment.x; + face = EAST; + } + + return face; +} + +vec2 getCrumblingTexCoord() { + switch (getNearestFacing(flw_vertexNormal)) { + case DOWN: return vec2(flw_vertexPos.x, -flw_vertexPos.z); + case UP: return vec2(flw_vertexPos.x, flw_vertexPos.z); + case NORTH: return vec2(-flw_vertexPos.x, -flw_vertexPos.y); + case SOUTH: return vec2(flw_vertexPos.x, -flw_vertexPos.y); + case WEST: return vec2(-flw_vertexPos.z, -flw_vertexPos.y); + case EAST: return vec2(flw_vertexPos.z, -flw_vertexPos.y); + } + + // default to north + return vec2(-flw_vertexPos.x, -flw_vertexPos.y); +} +#endif + +#ifdef FLW_EMBEDDED +mat4 _flw_modelMatrix; +mat3 _flw_normalMatrix; +uint _flw_lightingSceneId; +float _flw_skyLightScale; +mat4 _flw_lightingSceneMatrix; +flat out uint flw_vertexLightingSceneId; +flat out float flw_skyLightScale; +out vec4 flw_vertexLightingPos; +#endif + +#ifdef _FLW_DEBUG +flat out uvec2 _flw_ids; +#endif + +void _flw_main(in FlwInstance instance, in uint stableInstanceID, in uint baseVertex) { + flw_vertexId = gl_VertexID - baseVertex; + + _flw_layoutVertex(); + flw_instanceVertex(instance); + flw_materialVertex(); + + #ifdef _FLW_CRUMBLING + _flw_crumblingTexCoord = getCrumblingTexCoord(); + #endif + + #ifdef FLW_EMBEDDED + flw_vertexLightingPos = _flw_lightingSceneMatrix * flw_vertexPos; + flw_vertexPos = _flw_modelMatrix * flw_vertexPos; + flw_vertexNormal = _flw_normalMatrix * flw_vertexNormal; + flw_vertexLightingSceneId = _flw_lightingSceneId; + flw_skyLightScale = _flw_skyLightScale; + #endif + + flw_vertexNormal = normalize(flw_vertexNormal); + + flw_distance = fogDistance(flw_vertexPos.xyz, flw_cameraPos, flw_fogShape); + + gl_Position = flw_viewProjection * flw_vertexPos; + + #ifdef _FLW_DEBUG + _flw_ids = uvec2(stableInstanceID, baseVertex); + #endif +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/main.vert b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/main.vert new file mode 100644 index 0000000..ee3a371 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/main.vert @@ -0,0 +1,55 @@ +#include "flywheel:internal/common.vert" +#include "flywheel:internal/packed_material.glsl" +#include "flywheel:internal/indirect/buffer_bindings.glsl" +#include "flywheel:internal/indirect/draw_command.glsl" +#include "flywheel:internal/indirect/light.glsl" +#include "flywheel:internal/indirect/matrices.glsl" + +layout(std430, binding = _FLW_DRAW_INSTANCE_INDEX_BUFFER_BINDING) restrict readonly buffer TargetBuffer { + uint _flw_instanceIndices[]; +}; + +layout(std430, binding = _FLW_DRAW_BUFFER_BINDING) restrict readonly buffer DrawBuffer { + MeshDrawCommand _flw_drawCommands[]; +}; + +#ifdef FLW_EMBEDDED +layout(std430, binding = _FLW_MATRIX_BUFFER_BINDING) restrict buffer MatrixBuffer { + Matrices _flw_matrices[]; +}; +#endif + +uniform uint _flw_baseDraw; + +flat out uvec2 _flw_packedMaterial; + +#if __VERSION__ < 460 +#define flw_baseInstance gl_BaseInstanceARB +#define flw_drawId gl_DrawIDARB +#else +#define flw_baseInstance gl_BaseInstance +#define flw_drawId gl_DrawID +#endif + +void main() { + uint drawIndex = flw_drawId + _flw_baseDraw; + MeshDrawCommand draw = _flw_drawCommands[drawIndex]; + + uint packedMaterialProperties = draw.packedMaterialProperties; + _flw_unpackMaterialProperties(packedMaterialProperties, flw_material); + _flw_packedMaterial = uvec2(draw.packedFogAndCutout, packedMaterialProperties); + + #ifdef FLW_EMBEDDED + _flw_unpackMatrices(_flw_matrices[draw.matrixIndex], _flw_modelMatrix, _flw_normalMatrix, _flw_lightingSceneId, _flw_skyLightScale, _flw_lightingSceneMatrix); + #endif + + #ifdef _FLW_CRUMBLING + uint instanceIndex = flw_baseInstance; + #else + uint instanceIndex = _flw_instanceIndices[flw_baseInstance + gl_InstanceID]; + #endif + + FlwInstance instance = _flw_unpackInstance(instanceIndex); + + _flw_main(instance, instanceIndex, draw.vertexOffset); +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/matrices.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/matrices.glsl new file mode 100644 index 0000000..6c09000 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/indirect/matrices.glsl @@ -0,0 +1,19 @@ +struct Matrices { + mat4 pose; + vec4 normalA; + vec4 normalB; + vec4 normalC; + float skyLightScale; + uint sceneID; + float _padding1; + float _padding2; + mat4 lightingSceneMatrix; +}; + +void _flw_unpackMatrices(in Matrices mats, out mat4 pose, out mat3 normal, out uint lightingSceneId, out float skyLightScale, out mat4 lightingSceneMatrix) { + pose = mats.pose; + normal = mat3(mats.normalA.xyz, mats.normalB.xyz, mats.normalC.xyz); + lightingSceneId = mats.sceneID; + skyLightScale = mats.skyLightScale; + lightingSceneMatrix = mats.lightingSceneMatrix; +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/instancing/main.vert b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/instancing/main.vert new file mode 100644 index 0000000..ae6423b --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/instancing/main.vert @@ -0,0 +1,32 @@ +#include "flywheel:internal/common.vert" +#include "flywheel:internal/packed_material.glsl" +#include "flywheel:internal/instancing/light.glsl" + +uniform uvec2 _flw_packedMaterial; +uniform int _flw_baseInstance = 0; + +#ifdef FLW_EMBEDDED +uniform mat4 _flw_modelMatrixUniform; +uniform mat3 _flw_normalMatrixUniform; +uniform uint _flw_lightingSceneUniform; +uniform float _flw_lightingSkyLightScaleUniform; +uniform mat4 _flw_lightingSceneMatrixUniform; +#endif + +uniform uint _flw_baseVertex; + +void main() { + _flw_unpackMaterialProperties(_flw_packedMaterial.y, flw_material); + + FlwInstance instance = _flw_unpackInstance(_flw_baseInstance + gl_InstanceID); + + #ifdef FLW_EMBEDDED + _flw_modelMatrix = _flw_modelMatrixUniform; + _flw_normalMatrix = _flw_normalMatrixUniform; + _flw_lightingSceneMatrix = _flw_lightingSceneMatrixUniform; + _flw_lightingSceneId = _flw_lightingSceneUniform; + _flw_skyLightScale = _flw_lightingSkyLightScaleUniform; + #endif + + _flw_main(instance, uint(gl_InstanceID), _flw_baseVertex); +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/internal/light_lut.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/light_lut.glsl new file mode 100644 index 0000000..5f83289 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/internal/light_lut.glsl @@ -0,0 +1,427 @@ +const uint _FLW_BLOCKS_PER_SECTION = 18u * 18u * 18u; +const uint _FLW_LIGHT_SIZE_BYTES = _FLW_BLOCKS_PER_SECTION; +const uint _FLW_SOLID_SIZE_BYTES = ((_FLW_BLOCKS_PER_SECTION + 31u) / 32u) * 4u; +const uint _FLW_LIGHT_START_BYTES = _FLW_SOLID_SIZE_BYTES; +const uint _FLW_LIGHT_SECTION_SIZE_BYTES = _FLW_SOLID_SIZE_BYTES + _FLW_LIGHT_SIZE_BYTES; + +const uint _FLW_SOLID_START_INTS = 0u; +const uint _FLW_LIGHT_START_INTS = _FLW_SOLID_SIZE_BYTES / 4u; +const uint _FLW_LIGHT_SECTION_SIZE_INTS = _FLW_LIGHT_SECTION_SIZE_BYTES / 4u; + +const uint _FLW_COMPLETELY_SOLID = 0x7FFFFFFu; +const float _FLW_EPSILON = 1e-5; + +const uint _FLW_LOWER_10_BITS = 0x3FFu; +const uint _FLW_UPPER_10_BITS = 0xFFF00000u; + +const float _FLW_LIGHT_NORMALIZER = 1. / 16.; + +uint _flw_indexLut(uint index); + +uint _flw_indexLight(uint index); + +/// Find the index for the next step in the LUT. +/// @param base The base index in the LUT, should point to the start of a coordinate span. +/// @param coord The coordinate to look for. +/// @param next Output. The index of the next step in the LUT. +/// @return true if the coordinate is not in the span. +bool _flw_nextLut(uint base, int coord, out uint next) { + // The base coordinate. + int start = int(_flw_indexLut(base)); + // The width of the coordinate span. + uint size = _flw_indexLut(base + 1u); + + // Index of the coordinate in the span. + int i = coord - start; + + if (i < 0 || i >= int(size)) { + // We missed. + return true; + } + + next = _flw_indexLut(base + 2u + uint(i)); + + return false; +} + +bool _flw_chunkCoordToSectionIndex(uint sceneId, ivec3 sectionPos, out uint index) { + uint scene; + if (_flw_nextLut(0u, int(sceneId), scene) || scene == 0u) { + return true; + } + + uint first; + if (_flw_nextLut(scene, sectionPos.y, first) || first == 0u) { + return true; + } + + uint second; + if (_flw_nextLut(first, sectionPos.x, second) || second == 0u) { + return true; + } + + uint sectionIndex; + if (_flw_nextLut(second, sectionPos.z, sectionIndex) || sectionIndex == 0u) { + return true; + } + + // The index is written as 1-based so we can properly detect missing sections. + index = sectionIndex - 1u; + + return false; +} + +uvec2 _flw_lightAt(uint sectionOffset, uvec3 blockInSectionPos) { + uint byteOffset = blockInSectionPos.x + blockInSectionPos.z * 18u + blockInSectionPos.y * 18u * 18u; + + uint uintOffset = byteOffset >> 2u; + uint bitOffset = (byteOffset & 3u) << 3; + + uint raw = _flw_indexLight(sectionOffset + _FLW_LIGHT_START_INTS + uintOffset); + uint block = (raw >> bitOffset) & 0xFu; + uint sky = (raw >> (bitOffset + 4u)) & 0xFu; + + return uvec2(block, sky); +} + +bool _flw_isSolid(uint sectionOffset, uvec3 blockInSectionPos) { + uint bitOffset = blockInSectionPos.x + blockInSectionPos.z * 18u + blockInSectionPos.y * 18u * 18u; + + uint uintOffset = bitOffset >> 5u; + uint bitInWordOffset = bitOffset & 31u; + + uint word = _flw_indexLight(sectionOffset + _FLW_SOLID_START_INTS + uintOffset); + + return (word & (1u << bitInWordOffset)) != 0u; +} + +bool flw_lightFetch(uint scene, ivec3 blockPos, out vec2 lightCoord) { + uint lightSectionIndex; + if (_flw_chunkCoordToSectionIndex(scene, blockPos >> 4, lightSectionIndex)) { + return false; + } + // The offset of the section in the light buffer. + uint sectionOffset = lightSectionIndex * _FLW_LIGHT_SECTION_SIZE_INTS; + + uvec3 blockInSectionPos = uvec3((blockPos & 0xF) + 1); + + lightCoord = vec2(_flw_lightAt(sectionOffset, blockInSectionPos)) * _FLW_LIGHT_NORMALIZER; + return true; +} + + +uint _flw_fetchSolid3x3x3(uint sectionOffset, ivec3 blockInSectionPos) { + uint ret = 0u; + + // The formatter does NOT like these macros + // @formatter:off + + #define _FLW_FETCH_SOLID(x, y, z, i) { \ + bool flag = _flw_isSolid(sectionOffset, uvec3(blockInSectionPos + ivec3(x, y, z))); \ + ret |= uint(flag) << i; \ + } + + /// fori y, z, x: unrolled + _FLW_FETCH_SOLID(-1, -1, -1, 0) + _FLW_FETCH_SOLID(0, -1, -1, 1) + _FLW_FETCH_SOLID(1, -1, -1, 2) + + _FLW_FETCH_SOLID(-1, -1, 0, 3) + _FLW_FETCH_SOLID(0, -1, 0, 4) + _FLW_FETCH_SOLID(1, -1, 0, 5) + + _FLW_FETCH_SOLID(-1, -1, 1, 6) + _FLW_FETCH_SOLID(0, -1, 1, 7) + _FLW_FETCH_SOLID(1, -1, 1, 8) + + _FLW_FETCH_SOLID(-1, 0, -1, 9) + _FLW_FETCH_SOLID(0, 0, -1, 10) + _FLW_FETCH_SOLID(1, 0, -1, 11) + + _FLW_FETCH_SOLID(-1, 0, 0, 12) + _FLW_FETCH_SOLID(0, 0, 0, 13) + _FLW_FETCH_SOLID(1, 0, 0, 14) + + _FLW_FETCH_SOLID(-1, 0, 1, 15) + _FLW_FETCH_SOLID(0, 0, 1, 16) + _FLW_FETCH_SOLID(1, 0, 1, 17) + + _FLW_FETCH_SOLID(-1, 1, -1, 18) + _FLW_FETCH_SOLID(0, 1, -1, 19) + _FLW_FETCH_SOLID(1, 1, -1, 20) + + _FLW_FETCH_SOLID(-1, 1, 0, 21) + _FLW_FETCH_SOLID(0, 1, 0, 22) + _FLW_FETCH_SOLID(1, 1, 0, 23) + + _FLW_FETCH_SOLID(-1, 1, 1, 24) + _FLW_FETCH_SOLID(0, 1, 1, 25) + _FLW_FETCH_SOLID(1, 1, 1, 26) + + // @formatter:on + + return ret; +} + +/// Premtively collect all light in a 3x3x3 area centered on our block. +/// Depending on the normal, we won't use all the data, but fetching on demand will have many duplicated fetches. +/// Only fetching what we'll actually use using a bitmask turned out significantly slower, but perhaps a less +/// granular approach could see wins. +/// +/// The output is a 3-component vector packed into a single uint to save +/// memory and ALU ops later on. 10 bits are used for each component. This allows 4 such packed ints to be added +/// together with room to spare before overflowing into the next component. +uint[27] _flw_fetchLight3x3x3(uint sectionOffset, ivec3 blockInSectionPos, uint solidMask) { + uint[27] lights; + + // @formatter:off + #define _FLW_FETCH_LIGHT(_x, _y, _z, i) { \ + uvec2 light = _flw_lightAt(sectionOffset, uvec3(blockInSectionPos + ivec3(_x, _y, _z))); \ + lights[i] = (light.x) | ((light.y) << 10) | (uint((solidMask & (1u << i)) == 0u) << 20); \ + } + + /// fori y, z, x: unrolled + _FLW_FETCH_LIGHT(-1, -1, -1, 0) + _FLW_FETCH_LIGHT(0, -1, -1, 1) + _FLW_FETCH_LIGHT(1, -1, -1, 2) + + _FLW_FETCH_LIGHT(-1, -1, 0, 3) + _FLW_FETCH_LIGHT(0, -1, 0, 4) + _FLW_FETCH_LIGHT(1, -1, 0, 5) + + _FLW_FETCH_LIGHT(-1, -1, 1, 6) + _FLW_FETCH_LIGHT(0, -1, 1, 7) + _FLW_FETCH_LIGHT(1, -1, 1, 8) + + _FLW_FETCH_LIGHT(-1, 0, -1, 9) + _FLW_FETCH_LIGHT(0, 0, -1, 10) + _FLW_FETCH_LIGHT(1, 0, -1, 11) + + _FLW_FETCH_LIGHT(-1, 0, 0, 12) + _FLW_FETCH_LIGHT(0, 0, 0, 13) + _FLW_FETCH_LIGHT(1, 0, 0, 14) + + _FLW_FETCH_LIGHT(-1, 0, 1, 15) + _FLW_FETCH_LIGHT(0, 0, 1, 16) + _FLW_FETCH_LIGHT(1, 0, 1, 17) + + _FLW_FETCH_LIGHT(-1, 1, -1, 18) + _FLW_FETCH_LIGHT(0, 1, -1, 19) + _FLW_FETCH_LIGHT(1, 1, -1, 20) + + _FLW_FETCH_LIGHT(-1, 1, 0, 21) + _FLW_FETCH_LIGHT(0, 1, 0, 22) + _FLW_FETCH_LIGHT(1, 1, 0, 23) + + _FLW_FETCH_LIGHT(-1, 1, 1, 24) + _FLW_FETCH_LIGHT(0, 1, 1, 25) + _FLW_FETCH_LIGHT(1, 1, 1, 26) + + // @formatter:on + + return lights; +} + +#define _flw_index3x3x3(x, y, z) ((x) + (z) * 3u + (y) * 9u) +#define _flw_validCountToAo(validCount) (1. - (4. - (validCount)) * 0.2) + +/// Calculate the light for a direction by averaging the light at the corners of the block. +/// +/// To make this reusable across directions, c00..c11 choose what values relative to each corner to use. +/// e.g. (0, 0, 0) (0, 0, 1) (0, 1, 0) (0, 1, 1) would give you the light coming from -x at each corner. +/// In general, to get the light for a particular direction, you fix the x, y, or z coordinate of the c values, and permutate 0 and 1 for the other two. +/// Fixing the x coordinate to 0 gives you the light from -x, 1 gives you the light from +x. +/// +/// @param lights The light data for the 3x3x3 area. +/// @param interpolant The position within the center block. +/// @param c00..c11 4 offsets to determine which "direction" we are averaging. +/// @param oppositeMask A bitmask telling this function which bit to flip to get the opposite index for a given corner +vec3 _flw_lightForDirection(uint[27] lights, vec3 interpolant, uint c00, uint c01, uint c10, uint c11, uint oppositeMask) { + // Sum up the light and number of valid blocks in each corner for this direction + uint[8] summed; + + // @formatter:off + + #define _FLW_SUM_CORNER(_x, _y, _z, i) { \ + const uint corner = _flw_index3x3x3(_x, _y, _z); \ + summed[i] = lights[c00 + corner] + lights[c01 + corner] + lights[c10 + corner] + lights[c11 + corner]; \ + } + + _FLW_SUM_CORNER(0u, 0u, 0u, 0) + _FLW_SUM_CORNER(1u, 0u, 0u, 1) + _FLW_SUM_CORNER(0u, 0u, 1u, 2) + _FLW_SUM_CORNER(1u, 0u, 1u, 3) + _FLW_SUM_CORNER(0u, 1u, 0u, 4) + _FLW_SUM_CORNER(1u, 1u, 0u, 5) + _FLW_SUM_CORNER(0u, 1u, 1u, 6) + _FLW_SUM_CORNER(1u, 1u, 1u, 7) + + // @formatter:on + + // The final light and number of valid blocks for each corner. + vec3[8] adjusted; + + #ifdef _FLW_INNER_FACE_CORRECTION + // If the current corner has no valid blocks, use the opposite + // corner's light based on which direction we're evaluating. + // Because of how our corners are indexed, moving along one axis is the same as flipping a bit. + #define _FLW_CORNER_INDEX(i) ((summed[i] & _FLW_UPPER_10_BITS) == 0u ? i ^ oppositeMask : i) + #else + #define _FLW_CORNER_INDEX(i) i + #endif + + // Division and branching (to avoid dividing by zero) are both kinda expensive, so use this table for the valid block normalization + const float[5] normalizers = float[](0., 1., 1. / 2., 1. / 3., 1. / 4.); + + // @formatter:off + + #define _FLW_ADJUST_CORNER(i) { \ + uint corner = summed[_FLW_CORNER_INDEX(i)]; \ + uint validCount = corner >> 20u; \ + adjusted[i].xy = vec2(corner & _FLW_LOWER_10_BITS, (corner >> 10u) & _FLW_LOWER_10_BITS) * normalizers[validCount]; \ + adjusted[i].z = float(validCount); \ + } + + _FLW_ADJUST_CORNER(0) + _FLW_ADJUST_CORNER(1) + _FLW_ADJUST_CORNER(2) + _FLW_ADJUST_CORNER(3) + _FLW_ADJUST_CORNER(4) + _FLW_ADJUST_CORNER(5) + _FLW_ADJUST_CORNER(6) + _FLW_ADJUST_CORNER(7) + + // @formatter:on + + // Trilinear interpolation, including valid count + vec3 light00 = mix(adjusted[0], adjusted[1], interpolant.x); + vec3 light01 = mix(adjusted[2], adjusted[3], interpolant.x); + vec3 light10 = mix(adjusted[4], adjusted[5], interpolant.x); + vec3 light11 = mix(adjusted[6], adjusted[7], interpolant.x); + + vec3 light0 = mix(light00, light01, interpolant.z); + vec3 light1 = mix(light10, light11, interpolant.z); + + vec3 light = mix(light0, light1, interpolant.y); + + // Normalize the light coords + light.xy *= _FLW_LIGHT_NORMALIZER; + // Calculate the AO multiplier from the number of valid blocks + light.z = _flw_validCountToAo(light.z); + + return light; +} + +bool flw_light(uint scene, vec3 worldPos, vec3 normal, ivec3 renderOrigin, out FlwLightAo light) { + // Always use the section of the block we are contained in to ensure accuracy. + // We don't want to interpolate between sections, but also we might not be able + // to rely on the existence neighboring sections, so don't do any extra rounding here. + ivec3 blockPos = ivec3(floor(worldPos)) + renderOrigin; + + uint lightSectionIndex; + if (_flw_chunkCoordToSectionIndex(scene, blockPos >> 4, lightSectionIndex)) { + return false; + } + // The offset of the section in the light buffer. + uint sectionOffset = lightSectionIndex * _FLW_LIGHT_SECTION_SIZE_INTS; + + // The block's position in the section adjusted into 18x18x18 space + ivec3 blockInSectionPos = (blockPos & 0xF) + 1; + + // Directly trilerp as if sampling a texture + #if _FLW_LIGHT_SMOOTHNESS == 1 + + // The lowest corner of the 2x2x2 area we'll be trilinear interpolating. + // The ugly bit on the end evaluates to -1 or 0 depending on which side of 0.5 we are. + uvec3 lowestCorner = blockInSectionPos + ivec3(floor(fract(worldPos) - 0.5)); + + // The distance our fragment is from the center of the lowest corner. + vec3 interpolant = fract(worldPos - 0.5); + + // Fetch everything for trilinear interpolation + // Hypothetically we could re-order these and do some calculations in-between fetches + // to help with latency hiding, but the compiler should be able to do that for us. + vec2 light000 = vec2(_flw_lightAt(sectionOffset, lowestCorner)); + vec2 light100 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 0, 0))); + vec2 light001 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 0, 1))); + vec2 light101 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 0, 1))); + vec2 light010 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 1, 0))); + vec2 light110 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 1, 0))); + vec2 light011 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(0, 1, 1))); + vec2 light111 = vec2(_flw_lightAt(sectionOffset, lowestCorner + uvec3(1, 1, 1))); + + vec2 light00 = mix(light000, light001, interpolant.z); + vec2 light01 = mix(light010, light011, interpolant.z); + vec2 light10 = mix(light100, light101, interpolant.z); + vec2 light11 = mix(light110, light111, interpolant.z); + + vec2 light0 = mix(light00, light01, interpolant.y); + vec2 light1 = mix(light10, light11, interpolant.y); + + light.light = mix(light0, light1, interpolant.x) * _FLW_LIGHT_NORMALIZER; + light.ao = 1.; + + // Lighting and AO accurate to chunk baking + #elif _FLW_LIGHT_SMOOTHNESS == 2 + + uint solid = _flw_fetchSolid3x3x3(sectionOffset, blockInSectionPos); + + if (solid == _FLW_COMPLETELY_SOLID) { + // No point in doing any work if the entire 3x3x3 volume around us is filled. + // Kinda rare but this may happen if our fragment is in the middle of a lot of tinted glass + light.light = vec2(0.); + light.ao = _flw_validCountToAo(0.); + return true; + } + + // Fetch everything in a 3x3x3 area centered around the block. + uint[27] lights = _flw_fetchLight3x3x3(sectionOffset, blockInSectionPos, solid); + + vec3 interpolant = fract(worldPos); + + // Average the light in relevant directions at each corner, skipping directions that would have no influence + + vec3 lightX; + if (normal.x > _FLW_EPSILON) { + lightX = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 0u, 1u), _flw_index3x3x3(1u, 1u, 0u), _flw_index3x3x3(1u, 1u, 1u), 1u); + } else if (normal.x < -_FLW_EPSILON) { + lightX = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(0u, 1u, 1u), 1u); + } else { + lightX = vec3(0.); + } + + vec3 lightZ; + if (normal.z > _FLW_EPSILON) { + lightZ = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(0u, 1u, 1u), _flw_index3x3x3(1u, 0u, 1u), _flw_index3x3x3(1u, 1u, 1u), 2u); + } else if (normal.z < -_FLW_EPSILON) { + lightZ = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 1u, 0u), 2u); + } else { + lightZ = vec3(0.); + } + + vec3 lightY; + if (normal.y > _FLW_EPSILON) { + lightY = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 1u, 0u), _flw_index3x3x3(0u, 1u, 1u), _flw_index3x3x3(1u, 1u, 0u), _flw_index3x3x3(1u, 1u, 1u), 4u); + } else if (normal.y < -_FLW_EPSILON) { + lightY = _flw_lightForDirection(lights, interpolant, _flw_index3x3x3(0u, 0u, 0u), _flw_index3x3x3(0u, 0u, 1u), _flw_index3x3x3(1u, 0u, 0u), _flw_index3x3x3(1u, 0u, 1u), 4u); + } else { + lightY = vec3(0.); + } + + vec3 n2 = normal * normal; + vec3 lightAo = lightX * n2.x + lightY * n2.y + lightZ * n2.z; + + light.light = lightAo.xy; + light.ao = lightAo.z; + + // Entirely flat lighting, the lowest setting and a fallback in case an invalid option is set + #else + + light.light = vec2(_flw_lightAt(sectionOffset, blockInSectionPos)) * _FLW_LIGHT_NORMALIZER; + light.ao = 1.; + + #endif + + return true; +} + diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/light/flat.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/light/flat.glsl new file mode 100644 index 0000000..a14545a --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/light/flat.glsl @@ -0,0 +1,28 @@ +void flw_shaderLight() { + vec2 embeddedLight; + + uint sceneId = 0; + vec4 vertexLightingPos; + ivec3 renderOrigin; + + #ifdef FLW_EMBEDDED + renderOrigin = flw_renderOrigin; + sceneId = flw_vertexLightingSceneId; + vertexLightingPos = flw_vertexLightingPos; + + if (sceneId != 0) { + renderOrigin = ivec3(0); + } + #else + renderOrigin = flw_renderOrigin; + vertexLightingPos = flw_vertexPos; + #endif + + if (flw_lightFetch(sceneId, ivec3(floor(vertexLightingPos.xyz)) + renderOrigin, embeddedLight)) { + flw_fragLight = max(flw_fragLight, embeddedLight); + } + + #ifdef FLW_EMBEDDED + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth.glsl new file mode 100644 index 0000000..1845944 --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth.glsl @@ -0,0 +1,31 @@ +void flw_shaderLight() { + uint sceneId = 0; + vec4 vertexLightingPos; + ivec3 renderOrigin; + + #ifdef FLW_EMBEDDED + renderOrigin = flw_renderOrigin; + sceneId = flw_vertexLightingSceneId; + vertexLightingPos = flw_vertexLightingPos; + + if (sceneId != 0) { + renderOrigin = ivec3(0); + } + #else + renderOrigin = flw_renderOrigin; + vertexLightingPos = flw_vertexPos; + #endif + + FlwLightAo light; + if (flw_light(sceneId, vertexLightingPos.xyz, flw_vertexNormal, renderOrigin, light)) { + flw_fragLight = max(flw_fragLight, light.light); + + if (flw_material.ambientOcclusion) { + flw_fragColor.rgb *= light.ao; + } + } + + #ifdef FLW_EMBEDDED + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth_when_embedded.glsl b/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth_when_embedded.glsl new file mode 100644 index 0000000..a61460a --- /dev/null +++ b/neoforge/src/main/resources/assets/flywheel/flywheel/light/smooth_when_embedded.glsl @@ -0,0 +1,20 @@ +void flw_shaderLight() { + #ifdef FLW_EMBEDDED + ivec3 renderOrigin = flw_renderOrigin; + + if (flw_vertexLightingSceneId != 0) { + renderOrigin = ivec3(0); + } + + FlwLightAo light; + if (flw_light(flw_vertexLightingSceneId, flw_vertexLightingPos.xyz, flw_vertexNormal, renderOrigin, light)) { + flw_fragLight = max(flw_fragLight, light.light); + + if (flw_material.ambientOcclusion) { + flw_fragColor.rgb *= light.ao; + } + } + + flw_fragLight.y *= flw_skyLightScale; + #endif +} diff --git a/neoforge/src/main/resources/icon.png b/neoforge/src/main/resources/icon.png new file mode 100644 index 0000000..5419332 Binary files /dev/null and b/neoforge/src/main/resources/icon.png differ diff --git a/neoforge/src/main/resources/sable-neoforge.mixins.json b/neoforge/src/main/resources/sable-neoforge.mixins.json new file mode 100644 index 0000000..a5f64e4 --- /dev/null +++ b/neoforge/src/main/resources/sable-neoforge.mixins.json @@ -0,0 +1,174 @@ +{ + "required": true, + "package": "dev.ryanhcode.sable.neoforge.mixin", + "compatibilityLevel": "JAVA_21", + "minVersion": "0.8", + "mixinextras": { + "minVersion": "0.5.0" + }, + "plugin": "dev.ryanhcode.sable.plugin.SableMixinPlugin", + "client": [ + "block_entity_visible.LevelRendererMixin", + "block_outline_render.LevelRendererMixin", + "camera_rotation.CameraMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterRendererMixin", + "compatibility.create.belt.BeltRendererMixin", + "compatibility.create.big_outlines_interaction.BigOutlinesMixin", + "compatibility.create.blaze_burner.BlazeBurnerBlockEntityMixin", + "compatibility.create.contraptions.ContraptionControlsRendererMixin", + "compatibility.create.contraptions.ContraptionHandlerClientMixin", + "compatibility.create.contraptions.ContraptionVisualMixin", + "compatibility.create.contraptions.VisualizationEventHandlerMixin", + "compatibility.create.depot.DepotRendererMixin", + "compatibility.create.fluid_handling.PipeConnectionMixin", + "compatibility.create.frogports.ChainConveyorInteractionHandlerMixin", + "compatibility.create.frogports.ChainConveyorRidingHandlerMixin", + "compatibility.create.frogports.FrogportRendererMixin", + "compatibility.create.frogports.FrogportVisualMixin", + "compatibility.create.frogports.SmartBlockEntityRendererMixin", + "compatibility.create.particles.AirFlowParticleMixin", + "compatibility.create.particles.AirParticleMixin", + "compatibility.create.render_fixes.AABBOutlineMixin", + "compatibility.create.render_fixes.BeltRendererMixin", + "compatibility.create.render_fixes.BlockClusterOutlineMixin", + "compatibility.create.render_fixes.ChainConveyorRendererMixin", + "compatibility.create.render_fixes.ChasingAABBOutlineMixin", + "compatibility.create.render_fixes.ChasingAABBOutlinerMixin", + "compatibility.create.render_fixes.FilteringRendererMixin", + "compatibility.create.render_fixes.GhostBlockValueBoxMixin", + "compatibility.create.render_fixes.LineOutlineMixin", + "compatibility.create.render_fixes.LinkRendererMixin", + "compatibility.create.render_fixes.OutlineMixin", + "compatibility.create.render_fixes.PlacementClientMixin", + "compatibility.create.render_fixes.SafeBlockEntityRendererMixin", + "compatibility.create.render_fixes.ValueBoxMixin", + "compatibility.create.schematics.SchematicHandlerMixin", + "compatibility.create.schematics.SchematicRendererMixin", + "compatibility.create.schematics.SchematicTransformMixin", + "compatibility.create.stock_ticker.EntityHatsMixin", + "compatibility.create.tracks.TrackBlockOutlineMixin", + "compatibility.create.tracks.TrackTargetingClientMixin", + "compatibility.create.trains.CarriageContraptionVisualMixin", + "compatibility.create.wand_of_symmetry.SymmetryHandlerMixin", + "compatibility.flywheel.AbstractBlockEntityVisualMixin", + "compatibility.flywheel.BlockEntityStorageMixin", + "compatibility.flywheel.EmbeddedEnvironmentMixin", + "compatibility.flywheel.EngineImplMixin", + "compatibility.flywheel.EnvironmentStorageMixin", + "compatibility.flywheel.LightStorageAccessor", + "compatibility.flywheel.MatrixBufferMixin", + "compatibility.flywheel.RenderDispatcherImplMixin", + "compatibility.flywheel.ShaderSourcesMixin", + "compatibility.flywheel.VisualManagerImplMixin", + "compatibility.pmweather.RadarRendererMixin", + "compatibility.sodiumextras.EmbyToolsMixin", + "dynamic_directional_shading.SectionCompilerMixin", + "sound.MovingSoundInstanceDelegateMixin" + ], + "mixins": [ + "compatibility.backpacks.BackpackPickupEventsMixin", + "compatibility.create.airflow.AirCurrentMixin", + "compatibility.create.airflow.FanProcessingTypeMixin", + "compatibility.create.basin_interactions.BasinBlockEntityMixin", + "compatibility.create.basin_interactions.BasinOperatingBlockEntityMixin", + "compatibility.create.behaviour_compatibility.BlockEntityBehaviourMixin", + "compatibility.create.behaviour_compatibility.block_breaking_behaviour.BlockBreakingMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.block_breaking_behaviour.SawMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.harvester_behaviour.HarvesterMovementBehaviourMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockEntityMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockEntityUsageMixin", + "compatibility.create.behaviour_compatibility.harvester_block_entity.HarvesterBlockMixin", + "compatibility.create.belt.BeltBlockEntityMixin", + "compatibility.create.belt.BeltBlockMixin", + "compatibility.create.belt.BeltMovementHandlerMixin", + "compatibility.create.big_outlines_interaction.BigOutlinesMixin", + "compatibility.create.block_breakers.BlockBreakingKineticBlockEntityDamageMixin", + "compatibility.create.block_breakers.BlockBreakingKineticBlockEntityMixin", + "compatibility.create.blueprint.BlueprintEntityMixin", + "compatibility.create.chain_conveyor.ChainConveyorBlockEntityMixin", + "compatibility.create.chain_conveyor.ChainConveyorBlockMixin", + "compatibility.create.contraptions.AbstractContraptionEntityMixin", + "compatibility.create.contraptions.ContraptionColliderMixin", + "compatibility.create.contraptions.Matrix3dAccessor", + "compatibility.create.crushing_wheel.CrushingWheelBlockMixin", + "compatibility.create.crushing_wheel_entity_processing.CrushingWheelControllerBlockEntityMixin", + "compatibility.create.deployer.DeployerBlockEntityMixin", + "compatibility.create.display_link.ClickToLinkBlockItemMixin", + "compatibility.create.display_link.DisplayLinkBlockEntityMixin", + "compatibility.create.display_link.DisplayLinkBlockMixin", + "compatibility.create.ejector.EjectorBlockEntityMixin", + "compatibility.create.elevator_controls.ElevatorControlsHandlerMixin", + "compatibility.create.entity_falls_on_block.BasinBlockMixin", + "compatibility.create.entity_falls_on_block.BeltMillstoneBlocksMixin", + "compatibility.create.entity_falls_on_block.SawBlockMixin", + "compatibility.create.entity_falls_on_block.SeatBlockMixin", + "compatibility.create.factory_panel.FactoryPanelConnectionHandlerMixin", + "compatibility.create.fans_provide_force.EncasedFanBlockEntityMixin", + "compatibility.create.fluid_handling.OpenEndedPipeMixin", + "compatibility.create.fluid_tank_heating.BoilerDataMixin", + "compatibility.create.flywheel.FlywheelBlockEntityMixin", + "compatibility.create.frogports.ChainConveyorBlockEntityMixin", + "compatibility.create.frogports.ChainConveyorShapeAccessor", + "compatibility.create.frogports.ChainPackageInteractionHandlerMixin", + "compatibility.create.frogports.ChainPackageInteractionPacketMixin", + "compatibility.create.frogports.FrogportBlockEntityMixin", + "compatibility.create.frogports.FrogportBlockMixin", + "compatibility.create.frogports.PackagePortPlacementPacketMixin", + "compatibility.create.frogports.PackagePortTargetMixin", + "compatibility.create.frogports.PackagePortTargetSelectionHandlerMixin", + "compatibility.create.funnels.FunnelBlockMixin", + "compatibility.create.hose_pulley.HosePulleyBlockEntityMixin", + "compatibility.create.hose_pulley.HosePulleyFluidHandlerMixin", + "compatibility.create.impact.AbstractBellBlockAccessor", + "compatibility.create.impact.AbstractBellBlockMixin", + "compatibility.create.inventory_manipulation.CapManipulationBehaviourBaseMixin", + "compatibility.create.inventory_manipulation.ChuteBlockEntityMixin", + "compatibility.create.lectern_controller.LecternControllerBlockEntityMixin", + "compatibility.create.lectern_controller.LecternControllerBlockMixin", + "compatibility.create.mechnical_arm.MechanicalArmBlockEntity", + "compatibility.create.mechnical_arm.MechanicalArmSublevelFailure", + "compatibility.create.nozzle.NozzleBlockEntityAccessor", + "compatibility.create.nozzle.block_entity.NozzleBEFixesMixin", + "compatibility.create.nozzle.block_entity.NozzleHoveringMixin", + "compatibility.create.nozzle.block_entity.ValidNozzledirectionMixin", + "compatibility.create.raycast.RaycastHelperMixin", + "compatibility.create.redstone_contacts.AllBlockEntityTypesMixin", + "compatibility.create.redstone_contacts.RedstoneContactBlockMixin", + "compatibility.create.redstone_links.RedstoneLinkNetworkHandlerMixin", + "compatibility.create.sails_providing_lift.SailBlockMixin", + "compatibility.create.saw.SawBlockEntityMixin", + "compatibility.create.schematics.DeployToolMixin", + "compatibility.create.schematics.SchematicAndQuillHandlerMixin", + "compatibility.create.schematics.SchematicExportMixin", + "compatibility.create.schematics.SchematicLevelMixin", + "compatibility.create.schematics.SchematicPlacePacketMixin", + "compatibility.create.schematics.SchematicPrinterMixin", + "compatibility.create.schematics.SchematicToolBaseMixin", + "compatibility.create.schematics.StructureTemplateMixin", + "compatibility.create.sticker.StickerBlockEntityMixin", + "compatibility.create.sticker.StickerBlockMixin", + "compatibility.create.stock_ticker.StockTickerInteractionHandlerMixin", + "compatibility.create.super_glue.LevelAccessor", + "compatibility.create.super_glue.SuperGlueEntityMixin", + "compatibility.create.super_glue.SuperGlueRemovalPacketMixin", + "compatibility.create.super_glue.SuperGlueSelectionHandlerMixin", + "compatibility.create.toolbox.ToolBoxClientHandlerMixin", + "compatibility.create.toolbox.ToolboxHandlerMixin", + "compatibility.create.tracks.CurvedTrackDestroyPacketMixin", + "compatibility.create.tracks.TrackBlockItemMixin", + "compatibility.create.tracks.TrackBlockMixin", + "compatibility.create.tracks.TrackGraphVisualizerMixin", + "compatibility.create.tracks.TrackPlacementMixin", + "compatibility.create.turntable.TurntableBlockMixin", + "compatibility.create.vertical_gearbox.VerticalGearboxItemMixin", + "compatibility.create.zapper.ZapperItemMixin", + "compatibility.pmweather.AnemometerBlockEntityMixin", + "compatibility.pmweather.AnemometerBlockMixin", + "compatibility.pmweather.PMWeatherMixin", + "entities_stick_sublevels.effects.LivingEntityMixin", + "entity.entity_swimming.EntityMixin" + ], + "injectors": { + "defaultRequire": 1 + } +} diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..374194c --- /dev/null +++ b/settings.gradle @@ -0,0 +1,51 @@ +pluginManagement { + repositories { + gradlePluginPortal() + mavenCentral() + exclusiveContent { + forRepository { + maven { + name = 'Fabric' + url = uri('https://maven.fabricmc.net') + } + } + filter { + includeGroup('net.fabricmc') + includeGroup('net.fabricmc.unpick') + includeGroup('net.fabricmc.fabric-loom-remap') + } + } + exclusiveContent { + forRepository { + maven { + name = 'Sponge' + url = uri('https://repo.spongepowered.org/repository/maven-public') + } + } + filter { + includeGroupAndSubgroups("org.spongepowered") + } + } + exclusiveContent { + forRepository { + maven { + name = 'Forge' + url = uri('https://maven.minecraftforge.net') + } + } + filter { + includeGroupAndSubgroups('net.minecraftforge') + } + } + } +} + +plugins { + id 'org.gradle.toolchains.foojay-resolver-convention' version '0.8.0' +} + +// This should match the folder name of the project, or else IDEA may complain (see https://youtrack.jetbrains.com/issue/IDEA-317606) +rootProject.name = 'sable' +include('common') +include('fabric') +include('neoforge') diff --git a/wiki/Block Physics Properties.md b/wiki/Block Physics Properties.md new file mode 100644 index 0000000..9d3327d --- /dev/null +++ b/wiki/Block Physics Properties.md @@ -0,0 +1,98 @@ +Sable stores physics-related properties per block-state. +These properties are defined through definition JSONs in datapacks. + +### Available Properties + +The default available properties consist of: +- `sable:mass` - mass of the block in `kpg`. Default `1.0` +- `sable:inertia` - inertia multiplier of the block along each axis in `kpg*m^2`. Is multiplied by the mass of the block before usage. Default `[1/6, 1/6, 1/6]` +- `sable:volume` - the volume of the block in `m^3`. Used for buoyancy calculations. Default `1.0` +- `sable:restitution` - the bounciness of the block from 0-1. Default `0.0` +- `sable:friction` - the friction multiplier of the block. Default `1.0` +- `sable:fragile` - if the block should break upon impact. Default `false` +- `sable:floating_material` - the floating block material to assign. Default `null` +- `sable:floating_scale` - the multiplier for the floating block material. Default `1.0` + +### JSON Structure + +Block physics property definition JSONs can be put in any datapack under the `physics_block_properties` folder. + +```js +// /data/examplemod/physics_block_properties/example_block.json +{ + // The selector can either be a tag, or block ID. + // If a tag is used, all blocks in the tag will be effected. + // Ex. `#examplemod:example_blocks` or `examplemod:example_block` + "selector": "examplemod:example_block" + + // Priority is default 1000. + // Definitions are applied in order of ascending priority + "priority": 1001, + + "properties": { + // Any properties can be defined here + "sable:mass": 2.0 + }, + + "overrides": { + // Override keys are block-state conditions + "lit=true": { + // Any properties can be defined here + // All block-states meeting the condition will be affected + "sable:mass": 3.0 + } + } + +} +``` + + +### Examples + +A block that bounces: + +```js +// /data/examplemod/physics_block_properties/bouncy_block.json +{ + "selector": "examplemod:bouncy_block", + + "properties": { + "sable:restitution": 0.5 + } +} +``` + +A piston that doesn't weigh as much when extended: + +```js +// /data/examplemod/physics_block_properties/piston.json +{ + "selector": "examplemod:piston", + + "properties": { + "sable:mass": 1.0 + }, + + "overrides": { + "extended=true": { + "sable:mass": 0.5 + } + } +} +``` + +### Tags + +Sable contains many block tags in its own built-in datapack for commonly used physics block properties. +It is suggested to put your block into the pre-defined tags, if you do not need custom property definitions: + +- `#sable:super_light` mass = 0.25 +- `#sable:light` mass = 0.5 +- `#sable:heavy` mass = 2.0 +- `#sable:super_heavy` mass = 4.0 + +- `#sable:half_volume` volume = 0.5 +- `#sable:quarter_volume` volume = 0.25 + +- `#sable:slippery` friction = 0.0 +- `#sable:bouncy` restitution = 0.5 \ No newline at end of file diff --git a/wiki/Dimension Physics Data.md b/wiki/Dimension Physics Data.md new file mode 100644 index 0000000..f20ed2c --- /dev/null +++ b/wiki/Dimension Physics Data.md @@ -0,0 +1,104 @@ +Sable allows datapacks to specify custom physics parameters for dimensions. These are loaded from `/data//dimension_physics/.json`. + +### Fields + +**`dimension`** (required): The resource location of the dimension this config applies to. + +**`priority`** (optional, default `1000`): When multiple configs target the same dimension, the one with the highest priority wins. Sable's built-in defaults use priority `0`, so any datapack config overrides them automatically. + +**`base_gravity`** (optional, default `[0.0, -11.0, 0.0]`): Gravitational acceleration as a 3D vector in m/sec². The default pulls straight down at 11 m/s². + +**`base_pressure`** (optional, default `1.0`): The pressure multiplier applied everywhere in the dimension. Set to `0` for a vacuum. If `pressure_function` is also defined, the two combine. + +**`pressure_function`** (optional): A list of bezier control points for controlling air pressure with altitude. Each point has `altitude` (y-level), `value` (pressure at that altitude), and `slope` (rate of change). Omit this field for uniform pressure at `base_pressure`. + +**`universal_drag`** (optional, default `0.09`): A flat drag coefficient applied to all motion in the dimension. + +**`magnetic_north`** (optional, default `[0.0, 0.0, 0.0]`): Direction vector pointing toward magnetic north. `[0, 0, 0]` means no magnetic field. + +### Examples + +A moon dimension with lower gravity, no drag, and no air pressure: +```js +// /data/examplemod/dimension_physics/moon.json +{ + "dimension": "examplemod:moon", + + // Default priority of 1000 + // Higher priority configs "win" + "priority": 1000, + + // Modify the gravity to be low + "base_gravity": [0.0, -4.0, 0.0], + + // No air pressure + "base_pressure": 0.0, + + // No universal drag + "universal_drag": 0.0, + + // No magnetic north + "magnetic_north": [0.0, 0.0, 0.0] +} +``` + + +### Built-in Defaults + +Sable generates these configs for vanilla dimensions. They're shown here, with approximate values, for reference. +The `pressure_function` is a curve approximating an exponential decay, centered around sea level, clamped to at most 1.5 underground, with a 40-meter smooth drop-off at the build limit. + +**Overworld**: +```json +{ + "dimension": "minecraft:overworld", + "priority": 0, + "universal_drag": 0.09, + "base_gravity": [0.0, -11.0, 0.0], + "base_pressure": 1.0, + "pressure_function": [ + { "altitude": -38.366277, "value": 1.5, "slope": -0.006 }, + { "altitude": 63.0, "value": 1.0, "slope": -0.004 }, + { "altitude": 263.0, "value": 0.449329, "slope": -0.001797 }, + { "altitude": 280.0, "value": 0.419786, "slope": -0.001679 }, + { "altitude": 320.0, "value": 0.0, "slope": -0.020989 } + ], + "magnetic_north": [0.0, 0.0, 0.0] +} +``` + +**Nether**: +```json +{ + "dimension": "minecraft:the_nether", + "priority": 0, + "universal_drag": 0.09, + "base_gravity": [0.0, -11.0, 0.0], + "base_pressure": 1.0, + "pressure_function": [ + { "altitude": 0.0, "value": 1.136553, "slope": -0.004546 }, + { "altitude": 32.0, "value": 1.0, "slope": -0.004 }, + { "altitude": 88.0, "value": 0.799315, "slope": -0.003197 }, + { "altitude": 128.0, "value": 0.0, "slope": -0.039966 } + ], + "magnetic_north": [0.0, 0.0, 0.0] +} +``` + +**End**: +```json +{ + "dimension": "minecraft:the_end", + "priority": 0, + "universal_drag": 0.09, + "base_gravity": [0.0, -11.0, 0.0], + "base_pressure": 1.0, + "pressure_function": [ + { "altitude": 0.0, "value": 1.0, "slope": -0.004 }, + { "altitude": 200.0, "value": 0.449329, "slope": -0.001797 }, + { "altitude": 216.0, "value": 0.421473, "slope": -0.001686 }, + { "altitude": 256.0, "value": 0.0, "slope": -0.021074 } + ], + "magnetic_north": [0.0, 0.0, 0.0] +} +``` \ No newline at end of file diff --git a/wiki/Home.md b/wiki/Home.md new file mode 100644 index 0000000..3fb7708 --- /dev/null +++ b/wiki/Home.md @@ -0,0 +1,95 @@ +## Depending on Sable +[![Sable 1.21.1](https://img.shields.io/maven-metadata/v?metadataUrl=https%3A%2F%2Fmaven.ryanhcode.dev%2Freleases%2Fdev%2Fryanhcode%2Fsable%2Fsable-common-1.21.1%2Fmaven-metadata.xml&label=Sable%201.21.1)]([-1.21.1/](https://maven.ryanhcode.dev/releases/dev/ryanhcode/sable/sable-common-1.21.1/)) + +Copy the following segments into your `build.gradle` file depending on the platform: + +### NeoForge + +

+ Click to expand + +```groovy +repositories { + exclusiveContent { // Sable + forRepository { + maven { + url = "https://maven.ryanhcode.dev/releases" + name = "RyanHCode Maven" + } + } + filter { + includeGroup("dev.ryanhcode.sable") + includeGroup("dev.ryanhcode.sable-companion") + } + } +} + +dependencies { + api("dev.ryanhcode.sable:sable-common-${project.minecraft_version}:${project.sable_version}") +} +``` + +
+ +### Fabric + +
+ Click to expand + +```groovy +repositories { + exclusiveContent { // Sable + forRepository { + maven { + url = "https://maven.ryanhcode.dev/releases" + name = "RyanHCode Maven" + } + } + filter { + includeGroup("dev.ryanhcode.sable") + includeGroup("dev.ryanhcode.sable-companion") + } + } +} + +dependencies { + modApi("dev.ryanhcode.sable:sable-fabric-${project.minecraft_version}:${project.sable_version}") +} +``` + +
+ +### Common + +
+ Click to expand + +```groovy +repositories { + exclusiveContent { // Sable + forRepository { + maven { + url = "https://maven.ryanhcode.dev/releases" + name = "RyanHCode Maven" + } + } + filter { + includeGroup("dev.ryanhcode.sable") + includeGroup("dev.ryanhcode.sable-companion") + } + } +} + +dependencies { + api "dev.ryanhcode.sable:sable-common-${project.minecraft_version}:${project.sable_version}" +} +``` + +
+ +### Working with Sable + +- Simple compatability with [Sable Companion](https://github.com/ryanhcode/sable-companion) +- [Working with Entities](https://github.com/ryanhcode/sable/wiki/Working-With-Entities) +- [Block Physics Properties](https://github.com/ryanhcode/sable/wiki/Block-Physics-Properties) +- [Dimension Physics Data](https://github.com/ryanhcode/sable/wiki/Dimension-Physics-Data) \ No newline at end of file diff --git a/wiki/Working with Entities.md b/wiki/Working with Entities.md new file mode 100644 index 0000000..6f0153b --- /dev/null +++ b/wiki/Working with Entities.md @@ -0,0 +1,41 @@ +## "Entity Kicking" + +Sable, by default, will "kick" all entities that are spawned inside the plot of a sub-level to global space. +This teleports the entity to its global position, applies velocity from the sub-level, and transforms the velocity and rotation of the entity out of the sub-level. + +For some entities, such as Paintings or Armor Stands, this behavior is undesired, and the intended outcome is for the entity to stay inside the sub-level. +Sable therefore has tags to customize how entities interact with entity kicking: + +- `#sable:retain_in_sub_level` - Never kick this entity from sub-levels. (ex. Armor Stands, Paintings) +- `#sable:destroy_when_leaving_plot` - Destroy this entity when it is inside a sub-level plot, but exits the bounds containing the sub-level blocks. +- `#sable:destroy_with_sub_level` - Destroy this entity when the sub-level plot containing it is destroyed, instead of kicking it to the global world. (ex. Super Glue from Create) + + +### Examples + +To specify that an entity should stay inside of sub-level plots, and should never be kicked: +```js +// /data/sable/tags/entity_type/retain_in_sub_level.json +{ + "replace": false, + "values": [ + "examplemod:example_entity" + ] +} +``` + +## Tracking +Entities can be *outside* of the plot of a sub-level, but still move with the sub-level (ex. A player standing on a sub-level, or a cow in a pen on a sub-level). When entities are standing on sub-levels, Sable marks them as "tracking" the sub-level. + +Entities that are tracking a sub-level: +- Are networked relative to the sub-level +- Are interpolated relative to the sub-level +- Will move with the sub-level as it rotates and translates + +Players that are tracking a sub-level will additionally log-out and log-in with a position relative to the sub-level through the tracking points system. + +Sable has utilities to check the tracking sub-level of an entity: +```java +Entity entity = ...; +SubLevel subLevel = EntitySubLevelUtil.getTrackingSubLevel(this.entity); +```